diff --git a/.azure-pipelines-preproduction/package-lock.json b/.azure-pipelines-preproduction/package-lock.json index 76413cbb70d4..92f62bbdf1dc 100644 --- a/.azure-pipelines-preproduction/package-lock.json +++ b/.azure-pipelines-preproduction/package-lock.json @@ -5,9 +5,9 @@ "requires": true, "dependencies": { "@azure/avocado": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/@azure/avocado/-/avocado-0.6.2.tgz", - "integrity": "sha512-DU4TD/+U0aXLjz4bGW+vxst4tXm3/HPiOrNh1BcY00rHRnRbR+ZY7AL/nA4+1P6LVPu8msLUXp6HTqqe4QrbHg==", + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/@azure/avocado/-/avocado-0.6.3.tgz", + "integrity": "sha512-OOCdgdwwt/PEYVesm1z1WVCX7YMNySdZX4RFN/+JI6u0nRsi+n3JHfwkytNyhSrwGKBY/OqUEyQcNFQkTw4OFg==", "dev": true, "requires": { "@azure/openapi-markdown": "^0.9.1", @@ -88,19 +88,20 @@ } }, "@azure/rest-api-specs-scripts": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/@azure/rest-api-specs-scripts/-/rest-api-specs-scripts-0.5.7.tgz", - "integrity": "sha512-KbhwZzENz5pB9Me9PxhhuqL7Lru8bmpSOWQ291buvxEYQ+ZwzvHyA0cA8yL5raXZX2IJhslc7ThtcPhAqC0hFw==", + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/@azure/rest-api-specs-scripts/-/rest-api-specs-scripts-0.7.2.tgz", + "integrity": "sha512-2/yMT7qHPXDjbiEzi5IDBjukQ8HUL82NEwT32tHKvKRbACKJ2NemouOPzzJcbogpPzyAW3FfMTR79L0yXEqNcQ==", "dev": true, "requires": { "@azure/avocado": "^0.4.1", "@azure/oad": "^0.7.0", - "@octokit/rest": "^16.25.0", + "@octokit/rest": "^16.42.0", "@ts-common/string-map": "^0.3.0", + "commonmark": "0.27.0", "fs-extra": "^7.0.1", "glob": "^7.1.3", "js-yaml": "^3.13.1", - "oav": "0.19.6", + "oav": "0.21.4", "request": "^2.88.0" }, "dependencies": { @@ -121,6 +122,32 @@ "commonmark": "^0.29.0", "js-yaml": "^3.13.1", "node-object-hash": "^1.4.2" + }, + "dependencies": { + "commonmark": { + "version": "0.29.1", + "resolved": "https://registry.npmjs.org/commonmark/-/commonmark-0.29.1.tgz", + "integrity": "sha512-DafPdNYFXoEhsSiR4O+dJ45UJBfDL4cBTks4B+agKiaWt7qjG0bIhg5xuCE0RqU71ikJcBIf4/sRHh9vYQVF8Q==", + "dev": true, + "requires": { + "entities": "~1.1.1", + "mdurl": "~1.0.1", + "minimist": "~1.2.0", + "string.prototype.repeat": "^0.2.0" + } + } + } + }, + "commonmark": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/commonmark/-/commonmark-0.27.0.tgz", + "integrity": "sha1-2GwmK5YoIelIPGnFR7xYhAwEezQ=", + "dev": true, + "requires": { + "entities": "~ 1.1.1", + "mdurl": "~ 1.0.1", + "minimist": "~ 1.2.0", + "string.prototype.repeat": "^0.2.0" } } } @@ -150,37 +177,104 @@ "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==", "dev": true }, + "@octokit/auth-token": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.4.0.tgz", + "integrity": "sha512-eoOVMjILna7FVQf96iWc3+ZtE/ZT6y8ob8ZzcqKY1ibSQCnu4O/B7pJvzMx5cyZ/RjAff6DAdEb0O0Cjcxidkg==", + "dev": true, + "requires": { + "@octokit/types": "^2.0.0" + } + }, "@octokit/endpoint": { - "version": "5.5.1", - "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-5.5.1.tgz", - "integrity": "sha512-nBFhRUb5YzVTCX/iAK1MgQ4uWo89Gu0TH00qQHoYRCsE12dWcG1OiLd7v2EIo2+tpUKPMOQ62QFy9hy9Vg2ULg==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.0.tgz", + "integrity": "sha512-3nx+MEYoZeD0uJ+7F/gvELLvQJzLXhep2Az0bBSXagbApDvDW0LWwpnAIY/hb0Jwe17A0fJdz0O12dPh05cj7A==", "dev": true, "requires": { "@octokit/types": "^2.0.0", "is-plain-object": "^3.0.0", - "universal-user-agent": "^4.0.0" + "universal-user-agent": "^5.0.0" + }, + "dependencies": { + "universal-user-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-5.0.0.tgz", + "integrity": "sha512-B5TPtzZleXyPrUMKCpEHFmVhMN6EhmJYjG5PQna9s7mXeSqGTLap4OpqLl5FCEFUI3UBmllkETwKf/db66Y54Q==", + "dev": true, + "requires": { + "os-name": "^3.1.0" + } + } + } + }, + "@octokit/plugin-paginate-rest": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-1.1.2.tgz", + "integrity": "sha512-jbsSoi5Q1pj63sC16XIUboklNw+8tL9VOnJsWycWYR78TKss5PVpIPb1TUUcMQ+bBh7cY579cVAWmf5qG+dw+Q==", + "dev": true, + "requires": { + "@octokit/types": "^2.0.1" + } + }, + "@octokit/plugin-request-log": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.0.tgz", + "integrity": "sha512-ywoxP68aOT3zHCLgWZgwUJatiENeHE7xJzYjfz8WI0goynp96wETBF+d95b8g/uL4QmS6owPVlaxiz3wyMAzcw==", + "dev": true + }, + "@octokit/plugin-rest-endpoint-methods": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-2.4.0.tgz", + "integrity": "sha512-EZi/AWhtkdfAYi01obpX0DF7U6b1VRr30QNQ5xSFPITMdLSfhcBqjamE3F+sKcxPbD7eZuMHu3Qkk2V+JGxBDQ==", + "dev": true, + "requires": { + "@octokit/types": "^2.0.1", + "deprecation": "^2.3.1" } }, "@octokit/request": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.3.1.tgz", - "integrity": "sha512-5/X0AL1ZgoU32fAepTfEoggFinO3rxsMLtzhlUX+RctLrusn/CApJuGFCd0v7GMFhF+8UiCsTTfsu7Fh1HnEJg==", + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.4.0.tgz", + "integrity": "sha512-uAJO6GI8z8VHBqtY7VTL9iFy1Y+UTp5ShpI97tY5z0qBfYKE9rZCRsCm23VmF00x+IoNJ7a0nuVITs/+wS9/mg==", "dev": true, "requires": { - "@octokit/endpoint": "^5.5.0", - "@octokit/request-error": "^1.0.1", - "@octokit/types": "^2.0.0", + "@octokit/endpoint": "^6.0.0", + "@octokit/request-error": "^2.0.0", + "@octokit/types": "^2.8.2", "deprecation": "^2.0.0", "is-plain-object": "^3.0.0", "node-fetch": "^2.3.0", "once": "^1.4.0", - "universal-user-agent": "^4.0.0" + "universal-user-agent": "^5.0.0" + }, + "dependencies": { + "@octokit/request-error": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.0.0.tgz", + "integrity": "sha512-rtYicB4Absc60rUv74Rjpzek84UbVHGHJRu4fNVlZ1mCcyUPPuzFfG9Rn6sjHrd95DEsmjSt1Axlc699ZlbDkw==", + "dev": true, + "requires": { + "@octokit/types": "^2.0.0", + "deprecation": "^2.0.0", + "once": "^1.4.0" + } + }, + "universal-user-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-5.0.0.tgz", + "integrity": "sha512-B5TPtzZleXyPrUMKCpEHFmVhMN6EhmJYjG5PQna9s7mXeSqGTLap4OpqLl5FCEFUI3UBmllkETwKf/db66Y54Q==", + "dev": true, + "requires": { + "os-name": "^3.1.0" + } + } } }, "@octokit/request-error": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-1.2.0.tgz", - "integrity": "sha512-DNBhROBYjjV/I9n7A8kVkmQNkqFAMem90dSxqvPq57e2hBr7mNTX98y3R2zDpqMQHVRpBDjsvsfIGgBzy+4PAg==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-1.2.1.tgz", + "integrity": "sha512-+6yDyk1EES6WK+l3viRDElw96MvwfJxCt45GvmjDUKWjYIb3PJZQkq3i46TwGwoPD4h8NmTrENmtyA1FwbmhRA==", "dev": true, "requires": { "@octokit/types": "^2.0.0", @@ -189,11 +283,15 @@ } }, "@octokit/rest": { - "version": "16.35.0", - "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-16.35.0.tgz", - "integrity": "sha512-9ShFqYWo0CLoGYhA1FdtdykJuMzS/9H6vSbbQWDX4pWr4p9v+15MsH/wpd/3fIU+tSxylaNO48+PIHqOkBRx3w==", + "version": "16.43.1", + "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-16.43.1.tgz", + "integrity": "sha512-gfFKwRT/wFxq5qlNjnW2dh+qh74XgTQ2B179UX5K1HYCluioWj8Ndbgqw2PVqa1NnVJkGHp2ovMpVn/DImlmkw==", "dev": true, "requires": { + "@octokit/auth-token": "^2.4.0", + "@octokit/plugin-paginate-rest": "^1.1.1", + "@octokit/plugin-request-log": "^1.0.0", + "@octokit/plugin-rest-endpoint-methods": "2.4.0", "@octokit/request": "^5.2.0", "@octokit/request-error": "^1.0.2", "atob-lite": "^2.0.0", @@ -209,9 +307,9 @@ } }, "@octokit/types": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@octokit/types/-/types-2.0.1.tgz", - "integrity": "sha512-YDYgV6nCzdGdOm7wy43Ce8SQ3M5DMKegB8E5sTB/1xrxOdo2yS/KgUgML2N2ZGD621mkbdrAglwTyA4NDOlFFA==", + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-2.9.0.tgz", + "integrity": "sha512-IzptUpoDsFlXF+AOys+KnfItIVY3EK+eH9Akv+lJYELnMSGkJnIcClt6Cm0QRR4ecsUTsmFJWn10iFgJ9BQqIQ==", "dev": true, "requires": { "@types/node": ">= 8" @@ -428,9 +526,9 @@ "dev": true }, "abab": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.2.tgz", - "integrity": "sha512-2scffjvioEmNz0OyDSLGWDfKCVwaKc6l9Pm9kOIREU13ClXZvHpg/nRL5xyjSSSLhOnXqft2HpsAzNEEA8cFFg==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.3.tgz", + "integrity": "sha512-tsFzPpcttalNjFBCFMqsKYQcWxxen1pgJR56by//QwvJc4/OUS3kPOOttx2tSIfjsylB0pYu7f5D3K1RCxUnUg==", "dev": true }, "abbrev": { @@ -440,9 +538,9 @@ "dev": true }, "acorn": { - "version": "5.7.3", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz", - "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==", + "version": "5.7.4", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.4.tgz", + "integrity": "sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==", "dev": true }, "acorn-globals": { @@ -456,9 +554,9 @@ }, "dependencies": { "acorn": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.3.0.tgz", - "integrity": "sha512-/czfa8BwS88b9gWQVhc8eknunSA2DoJpJyTQkhheIf5E48u1N0R4q/YxxsAeqRrmK9TQ/uYfgLDfZo91UlANIA==", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", + "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", "dev": true } } @@ -470,12 +568,12 @@ "dev": true }, "ajv": { - "version": "6.10.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.2.tgz", - "integrity": "sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw==", + "version": "6.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.0.tgz", + "integrity": "sha512-D6gFiFA0RRLyUbvijN74DWAjXSFxWKaWP7mldxkVhyhAV3+SWA9HEJPHQ2c9soIeTFJqcSdFDGFgdqs1iUU2Hw==", "dev": true, "requires": { - "fast-deep-equal": "^2.0.1", + "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", "json-schema-traverse": "^0.4.1", "uri-js": "^4.2.2" @@ -630,9 +728,9 @@ "dev": true }, "autorest": { - "version": "2.0.4407", - "resolved": "https://registry.npmjs.org/autorest/-/autorest-2.0.4407.tgz", - "integrity": "sha512-keyeMDb/bVNN8hnDd8o08UC2C1OE8HRhubxksljSvKM5osHIJnoKBA1k3kD7MPAJ/+m6UjDQXci3ronxZeYy+Q==", + "version": "2.0.4413", + "resolved": "https://registry.npmjs.org/autorest/-/autorest-2.0.4413.tgz", + "integrity": "sha512-Ttx/O6Yag5q8fpJDvllgf/joLuVPBySkbAqDF7+9jAmscCPQplYjA9H/N12bwkhh+6YR3ugWZHQq3NTN33hkAg==", "dev": true }, "aws-sign2": { @@ -642,9 +740,9 @@ "dev": true }, "aws4": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", - "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==", + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.9.1.tgz", + "integrity": "sha512-wMHVg2EOHaMRxbzgFJ9gtjOOCrI80OHLG14rxi28XwOW8ux6IiEbRCGGGqCtdAIg4FQCbW20k9RsT4y3gJlFug==", "dev": true }, "balanced-match": { @@ -775,9 +873,9 @@ } }, "browser-process-hrtime": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-0.1.3.tgz", - "integrity": "sha512-bRFnI4NnjO6cnyLmOV/7PVoDEMJChlcfN0z4s1YMBY989/SvlfMI1lgCnkFUs53e9gQF+w7qu7XdllSTiSl8Aw==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", + "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", "dev": true }, "browser-stdout": { @@ -909,6 +1007,34 @@ "wrap-ansi": "^5.1.0" } }, + "clone-deep": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", + "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + }, + "dependencies": { + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, "code-point-at": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", @@ -992,9 +1118,9 @@ } }, "commander": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.19.0.tgz", - "integrity": "sha512-6tvAOO+D6OENvRAh524Dh9jcfKTYDQAqvqezbCW82xj5X0pSrcpxtvRKHLG0yBY6SD7PSDrJaj+0AiOcKVd1Xg==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", "dev": true }, "comment-json": { @@ -1057,9 +1183,9 @@ "dev": true }, "core-js": { - "version": "2.6.10", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.10.tgz", - "integrity": "sha512-I39t74+4t+zau64EN1fE5v2W31Adtc/REhzWN+gWRRXg6WH5qAsZm62DHpQ1+Yhe4047T55jvzz7MUqF/dBBlA==", + "version": "2.6.11", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz", + "integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==", "dev": true }, "core-util-is": { @@ -1933,9 +2059,9 @@ "dev": true }, "env-variable": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/env-variable/-/env-variable-0.0.5.tgz", - "integrity": "sha512-zoB603vQReOFvTg5xMl9I1P2PnHsHQQKTEowsKKD7nseUfJq6UWzK+4YtlWUO1nhiQUxe6XMkk+JleSZD1NZFA==", + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/env-variable/-/env-variable-0.0.6.tgz", + "integrity": "sha512-bHz59NlBbtS0NhftmR8+ExBEekE7br0e01jw+kk0NDro7TtZzBYZ5ScGPs3OmwnpyfHTHOtr1Y6uedCdrIldtg==", "dev": true }, "error-ex": { @@ -1991,24 +2117,18 @@ "dev": true }, "escodegen": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.12.0.tgz", - "integrity": "sha512-TuA+EhsanGcme5T3R0L80u4t8CpbXQjegRmf7+FPTJrtCTErXFeelblRgHQa1FofEzqYYJmJ/OqjTwREp9qgmg==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.1.tgz", + "integrity": "sha512-Bmt7NcRySdIfNPfU2ZoXDrrXsG9ZjvDxcAlMfDUgRBjLOWTuIACXPBFJH7Z+cLb40JeQco5toikyc9t9P8E9SQ==", "dev": true, "requires": { - "esprima": "^3.1.3", + "esprima": "^4.0.1", "estraverse": "^4.2.0", "esutils": "^2.0.2", "optionator": "^0.8.1", "source-map": "~0.6.1" }, "dependencies": { - "esprima": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", - "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", - "dev": true - }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -2227,9 +2347,9 @@ "dev": true }, "fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz", + "integrity": "sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==", "dev": true }, "fast-glob": { @@ -2247,9 +2367,9 @@ } }, "fast-json-stable-stringify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", - "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", "dev": true }, "fast-levenshtein": { @@ -2355,9 +2475,9 @@ "dev": true }, "formidable": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/formidable/-/formidable-1.2.1.tgz", - "integrity": "sha512-Fs9VRguL0gqGHkXS5GQiMCr1VhZBxz0JnJs4JmMp/2jL18Fmbzvv7vOFRU+U8TBkHEE/CX1qDXzJplVULgsLeg==", + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/formidable/-/formidable-1.2.2.tgz", + "integrity": "sha512-V8gLm+41I/8kguQ4/o1D3RIHRmhYFG4pnNyonvua+40rqcEmT4+V71yaZ3B457xbbgCsCfjSPi65u/W6vK1U5Q==", "dev": true }, "fragment-cache": { @@ -2498,6 +2618,14 @@ "ignore": "^4.0.3", "pify": "^4.0.1", "slash": "^2.0.0" + }, + "dependencies": { + "slash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", + "dev": true + } } }, "graceful-fs": { @@ -2507,12 +2635,12 @@ "dev": true }, "graphlib": { - "version": "2.1.7", - "resolved": "https://registry.npmjs.org/graphlib/-/graphlib-2.1.7.tgz", - "integrity": "sha512-TyI9jIy2J4j0qgPmOOrHTCtpPqJGN/aurBwc6ZT+bRii+di1I+Wv3obRhVrmBEXet+qkMaEX67dXrwsd3QQM6w==", + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/graphlib/-/graphlib-2.1.8.tgz", + "integrity": "sha512-jcLLfkpoVGmH7/InMC/1hIvOPSUh38oJtGhvrOFGzioE1DZ+0YW16RgmOJhHiuWTvGiJQ9Z1Ik43JvkRPRvE+A==", "dev": true, "requires": { - "lodash": "^4.17.5" + "lodash": "^4.17.15" } }, "growl": { @@ -2522,17 +2650,24 @@ "dev": true }, "handlebars": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.5.1.tgz", - "integrity": "sha512-C29UoFzHe9yM61lOsIlCE5/mQVGrnIOrOq7maQl76L7tYPCgC1og0Ajt6uWnX4ZTxBPnjw+CUvawphwCfJgUnA==", + "version": "4.7.6", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.6.tgz", + "integrity": "sha512-1f2BACcBfiwAfStCKZNrUCgqNZkGsAT7UM3kkYtXuLo0KnaVfjKOyf7PRzB6++aK9STyT1Pd2ZCPe3EGOXleXA==", "dev": true, "requires": { + "minimist": "^1.2.5", "neo-async": "^2.6.0", - "optimist": "^0.6.1", "source-map": "^0.6.1", - "uglify-js": "^3.1.4" + "uglify-js": "^3.1.4", + "wordwrap": "^1.0.0" }, "dependencies": { + "minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -2625,9 +2760,9 @@ "dev": true }, "hosted-git-info": { - "version": "2.8.5", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.5.tgz", - "integrity": "sha512-kssjab8CvdXfcXMXVcvsXum4Hwdq9XGtRD3TteMEvEbq0LXyiNQr6AprqKqfeaDXze7SxWvRxdpwE6ku7ikLkg==", + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", + "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", "dev": true }, "html-encoding-sniffer": { @@ -2989,9 +3124,9 @@ "dev": true }, "js-base64": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.5.1.tgz", - "integrity": "sha512-M7kLczedRMYX4L8Mdh4MzyAMM9O5osx+4FcOQuTvr3A9F2D9S5JXheN0ewNbrvK2UatkTRhL5ejGmGSjNMiZuw==", + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.5.2.tgz", + "integrity": "sha512-Vg8czh0Q7sFBSUMWWArX/miJeBWYBPpdU/3M/DKSaekLMqrqVPaedp+5mZhie/r0lgrcaYBfwXatEew6gwgiQQ==", "dev": true }, "js-xxhash": { @@ -3077,18 +3212,18 @@ } }, "json-refs": { - "version": "3.0.13", - "resolved": "https://registry.npmjs.org/json-refs/-/json-refs-3.0.13.tgz", - "integrity": "sha512-/FJ+BJ6BASjmNsBJHE8qMVj46HTS2Pfq5gI5BQRhyUsdrw9HaHRWSOsOh87deTOyWMtGas5Qr8H6ikrcWHdZbw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/json-refs/-/json-refs-3.0.15.tgz", + "integrity": "sha512-0vOQd9eLNBL18EGl5yYaO44GhixmImes2wiYn9Z3sag3QnehWrYWlB9AFtMxCL2Bj3fyxgDYkxGFEU/chlYssw==", "dev": true, "requires": { - "commander": "~2.19.0", - "graphlib": "^2.1.7", - "js-yaml": "^3.13.0", - "lodash": "^4.17.11", + "commander": "~4.1.1", + "graphlib": "^2.1.8", + "js-yaml": "^3.13.1", + "lodash": "^4.17.15", "native-promise-only": "^0.8.1", "path-loader": "^1.0.10", - "slash": "^2.0.0", + "slash": "^3.0.0", "uri-js": "^4.2.2" } }, @@ -3099,13 +3234,13 @@ "dev": true }, "json-schema-faker": { - "version": "0.5.0-rc23", - "resolved": "https://registry.npmjs.org/json-schema-faker/-/json-schema-faker-0.5.0-rc23.tgz", - "integrity": "sha512-lRzFEnp55TihRzMvUBrtvTlM/aHGhCwfes0/T9bN9OiB2n36/SUFxtMn7anYoES+f95eU3viJ/foXKosCwsiJw==", + "version": "0.5.0-rcv.24", + "resolved": "https://registry.npmjs.org/json-schema-faker/-/json-schema-faker-0.5.0-rcv.24.tgz", + "integrity": "sha512-qwuRwv7dnUdqdwuifb6kJAVUKm0mzi4h/mzvMwDKxyWUzjxFCdVH/g9IfKxvc4M7rvAavr8pcx9uO1PNIIWE0g==", "dev": true, "requires": { "json-schema-ref-parser": "^6.1.0", - "jsonpath-plus": "^1.0.0", + "jsonpath-plus": "^2.0.0", "randexp": "^0.5.3" } }, @@ -3161,9 +3296,9 @@ } }, "jsonpath-plus": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/jsonpath-plus/-/jsonpath-plus-1.1.0.tgz", - "integrity": "sha512-ydqTBOuLcFCUr9e7AxJlKCFgxzEQ03HjnIim0hJSdk2NxD8MOsaMOrRgP6XWEm5q3VuDY5+cRT1DM9vLlGo/qA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/jsonpath-plus/-/jsonpath-plus-2.0.0.tgz", + "integrity": "sha512-ksXaz9+3SIZ5BMxgr7MQueYcR515VRZPuoDhIymUd1JcF6BnVaYJS7k4NJni4EHhvJaOIGGiPqT8+ifsGp6mBw==", "dev": true }, "jsonschema": { @@ -3191,9 +3326,9 @@ } }, "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", "dev": true }, "kuler": { @@ -3231,9 +3366,9 @@ } }, "linq": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/linq/-/linq-3.2.1.tgz", - "integrity": "sha512-BEhjQpbvrKPWlg5m/+PXTHsQoXzzR0UWCvgI8Hm+WtUMtTwPvw9Tay5CWfqsWSVk81wqbHNDFpFXyqBmm4/dqA==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/linq/-/linq-3.2.2.tgz", + "integrity": "sha512-AtVkCFwg7dizILt88ent7Bng1OLAnKMWBOLo9Kh7ZPFK8OcfYGi2FEzmr66QJtV7uBYZVf19AbVs0B14rIUi+w==", "dev": true }, "load-json-file": { @@ -3429,18 +3564,18 @@ "dev": true }, "mime-db": { - "version": "1.40.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", - "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==", + "version": "1.43.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.43.0.tgz", + "integrity": "sha512-+5dsGEEovYbT8UY9yD7eE4XTc4UwJ1jBYlgaQQF38ENsKR3wj/8q8RFZrF9WIZpB2V1ArTVFUva8sAul1NzRzQ==", "dev": true }, "mime-types": { - "version": "2.1.24", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz", - "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==", + "version": "2.1.26", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.26.tgz", + "integrity": "sha512-01paPWYgLrkqAyrlDorC1uDwl2p3qZT7yl806vW7DvDoxwXi46jsjFbg+WdwotBIk6/MbEhO/dh5aZ5sNj/dWQ==", "dev": true, "requires": { - "mime-db": "1.40.0" + "mime-db": "1.43.0" } }, "minimatch": { @@ -3592,9 +3727,9 @@ "dev": true }, "ms-rest": { - "version": "2.5.3", - "resolved": "https://registry.npmjs.org/ms-rest/-/ms-rest-2.5.3.tgz", - "integrity": "sha512-p0CnzrTzEkS8UTEwgCqT2O5YVK9E8KGBBlJVm3hFtMZvf0dmncKYXWFPyUa4PAsfBL7h4jfu39tOIFTu6exntg==", + "version": "2.5.4", + "resolved": "https://registry.npmjs.org/ms-rest/-/ms-rest-2.5.4.tgz", + "integrity": "sha512-VeqCbawxRM6nhw0RKNfj7TWL7SL8PB6MypqwgylXCi+u412uvYoyY/kSmO8n06wyd8nIcnTbYToCmSKFMI1mCg==", "dev": true, "requires": { "duplexer": "^0.1.1", @@ -3715,44 +3850,113 @@ "dev": true }, "oav": { - "version": "0.19.6", - "resolved": "https://registry.npmjs.org/oav/-/oav-0.19.6.tgz", - "integrity": "sha512-JAATj7YPAm7v7ciPNn3MlnHHsd6GrTPyOJRqW6adWzUg2UQ8zor4jJuotNmsCes5Xq01MqbYOnTEwc/U+or2XA==", + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/oav/-/oav-0.21.4.tgz", + "integrity": "sha512-YRuL35ERnSU0cLKjw/MHxVALaDMzVD5Kbu68zoQhOXFPMGMytxofEGVbxis2Bv9Mja2l5wsAF2vfaAjnoEbT7w==", "dev": true, "requires": { - "@azure/openapi-markdown": "^0.9.0", + "@azure/openapi-markdown": "^0.9.2", "@microsoft.azure/autorest-extension-base": "1.0.13", "@ts-common/commonmark-to-markdown": "^1.2.0", "@ts-common/iterator": "^0.3.6", "@ts-common/json": "^0.3.1", - "@ts-common/json-parser": "^0.8.0", + "@ts-common/json-parser": "^0.9.0", "@ts-common/property-set": "^0.1.0", "@ts-common/source-map": "^0.5.0", "@ts-common/string-map": "^0.3.0", - "@ts-common/virtual-fs": "^0.2.0", + "@ts-common/virtual-fs": "^0.3.0", "@types/jsonpath": "^0.2.0", "commonmark": "^0.29.0", "glob": "^5.0.15", "globby": "^9.2.0", + "handlebars": "^4.7.1", "js-yaml": "^3.13.1", "json-pointer": "^0.6.0", "json-refs": "^3.0.13", "jsonpath": "^1.0.1", + "kind-of": "^6.0.3", "linq": "^3.2.0", - "lodash": "^4.17.11", + "lodash": "^4.17.15", "md5-file": "^4.0.0", "moment": "^2.24.0", - "ms-rest": "^2.5.0", + "ms-rest": "^2.5.4", "swagger-parser": "^6.0.5", "uuid": "^3.3.2", "vscode-jsonrpc": "^3.6.2", "winston": "^3.2.1", "yargs": "^6.6.0", - "yasway": "^1.8.4", + "yasway": "^1.9.3", "yuml2svg": "^4.2.1", - "z-schema": "^4.1.0" + "z-schema": "^4.2.2" }, "dependencies": { + "@azure/openapi-markdown": { + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/@azure/openapi-markdown/-/openapi-markdown-0.9.2.tgz", + "integrity": "sha512-EhjABbBzHAPK8K88Ya7yHdIKjcU2WSiclIuXSDqs/mYAUym4Z9o7lvIi0Li+mUhFaLAh2V4+OzdIVUdTzJa0Fg==", + "dev": true, + "requires": { + "@ts-common/commonmark-to-markdown": "^1.2.0", + "@ts-common/iterator": "^0.3.1", + "@ts-common/string-map": "^0.3.0", + "@ts-common/virtual-fs": "^0.3.0", + "commonmark": "^0.28.1", + "js-yaml": "^3.13.1", + "tslib": "^1.9.3" + }, + "dependencies": { + "commonmark": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/commonmark/-/commonmark-0.28.1.tgz", + "integrity": "sha1-Buq41SM4uDn6Gi11rwCF7tGxvq4=", + "dev": true, + "requires": { + "entities": "~ 1.1.1", + "mdurl": "~ 1.0.1", + "minimist": "~ 1.2.0", + "string.prototype.repeat": "^0.2.0" + } + } + } + }, + "@ts-common/json-parser": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/@ts-common/json-parser/-/json-parser-0.9.0.tgz", + "integrity": "sha512-how0z/Ak7Bay+feIYfJFVV8UMw8Ky2Czoo5XwN7QigCOlN4HyW6wSNup4zrZ7t6NUB0002tW/+IOKCH2lAVJOg==", + "dev": true, + "requires": { + "@ts-common/add-position": "0.0.2", + "@ts-common/iterator": "^0.3.5", + "@ts-common/json": "^0.3.1", + "@ts-common/source-map": "^0.5.0", + "@ts-common/string-map": "^0.3.0", + "tslib": "^1.9.3" + } + }, + "@ts-common/virtual-fs": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@ts-common/virtual-fs/-/virtual-fs-0.3.0.tgz", + "integrity": "sha512-ryoXw52FTLhiexoNBA/hcAlW8gxPhrKEuZODgpCiF0wswNJdg/j+rCb9k1VppJdeIJ30b0Wg+2vPsrOrdnYTIw==", + "dev": true, + "requires": { + "@ts-common/fs": "^0.2.0", + "@ts-common/iterator": "^0.3.0", + "@types/async-retry": "^1.4.1", + "@types/node-fetch": "^2.5.5", + "async-retry": "^1.3.1", + "node-fetch": "^2.6.0" + } + }, + "@types/node-fetch": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.5.6.tgz", + "integrity": "sha512-2w0NTwMWF1d3NJMK0Uiq2UNN8htVCyOWOD0jIPjPgC5Ph/YP4dVhs9YxxcMcuLuwAslz0dVEcZQUaqkLs3IzOQ==", + "dev": true, + "requires": { + "@types/node": "*", + "form-data": "^3.0.0" + } + }, "ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", @@ -3768,6 +3972,15 @@ "lodash": "^4.17.14" } }, + "async-retry": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/async-retry/-/async-retry-1.3.1.tgz", + "integrity": "sha512-aiieFW/7h3hY0Bq5d+ktDBejxuwR78vRu9hDUdR8rNhSaQ29VzPL4AoIRG7D/c7tdenwOcKvgPM6tIxB3cB6HA==", + "dev": true, + "requires": { + "retry": "0.12.0" + } + }, "camelcase": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", @@ -3785,6 +3998,17 @@ "wrap-ansi": "^2.0.0" } }, + "form-data": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.0.tgz", + "integrity": "sha512-CKMFDglpbMi6PyN+brwB9Q/GOw0eAnsrEZDgcsH5Krhz5Od/haKHAX0NmQfha2zPPz0JpWzA7GJHGSnvCRLWsg==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + } + }, "get-caller-file": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", @@ -3814,9 +4038,9 @@ } }, "readable-stream": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.4.0.tgz", - "integrity": "sha512-jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", "dev": true, "requires": { "inherits": "^2.0.3", @@ -4061,30 +4285,6 @@ "swagger-schema-official": "2.0.0-bab6bed" } }, - "optimist": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", - "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", - "dev": true, - "requires": { - "minimist": "~0.0.1", - "wordwrap": "~0.0.2" - }, - "dependencies": { - "minimist": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz", - "integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=", - "dev": true - }, - "wordwrap": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", - "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", - "dev": true - } - } - }, "optionator": { "version": "0.8.3", "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", @@ -4307,9 +4507,9 @@ "dev": true }, "psl": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.4.0.tgz", - "integrity": "sha512-HZzqCGPecFLyoRj5HLfuDSKYTJkAfB5thKBIkRHtGjWwY7p1dAyveIbXIq4tO0KYfDF2tHqPUgY9SDnGm00uFw==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", "dev": true }, "pump": { @@ -4329,9 +4529,9 @@ "dev": true }, "qs": { - "version": "6.9.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.1.tgz", - "integrity": "sha512-Cxm7/SS/y/Z3MHWSxXb8lIFqgqBowP5JMlTUFyJN88y0SGQhVmZnqFK/PeuMX9LzUyWsqqhNxIyg0jlzq946yA==", + "version": "6.9.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.3.tgz", + "integrity": "sha512-EbZYNarm6138UKKq46tdx08Yo/q9ZhFoAXAI1meAFd2GtbRDhbZY2WQSICskT0c5q99aFzLG1D4nvTk9tqfXIw==", "dev": true }, "randexp": { @@ -4414,9 +4614,9 @@ } }, "readable-stream": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", "dev": true, "requires": { "core-util-is": "~1.0.0", @@ -4451,9 +4651,9 @@ "dev": true }, "request": { - "version": "2.88.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", - "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", + "version": "2.88.2", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", "dev": true, "requires": { "aws-sign2": "~0.7.0", @@ -4463,7 +4663,7 @@ "extend": "~3.0.2", "forever-agent": "~0.6.1", "form-data": "~2.3.2", - "har-validator": "~5.1.0", + "har-validator": "~5.1.3", "http-signature": "~1.2.0", "is-typedarray": "~1.0.0", "isstream": "~0.1.2", @@ -4473,7 +4673,7 @@ "performance-now": "^2.1.0", "qs": "~6.5.2", "safe-buffer": "^5.1.2", - "tough-cookie": "~2.4.3", + "tough-cookie": "~2.5.0", "tunnel-agent": "^0.6.0", "uuid": "^3.3.2" }, @@ -4530,9 +4730,9 @@ "dev": true }, "resolve": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.12.0.tgz", - "integrity": "sha512-B/dOmuoAik5bKcD6s6nXDCjzUKnaDvdkRyAk6rsmsKLipWj4797iothd7jmmUhWTfinVMU+wc56rYKsit2Qy4w==", + "version": "1.15.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.15.1.tgz", + "integrity": "sha512-84oo6ZTtoTUpjgNEr5SJyzQhzL72gaRodsSfyxC/AXRvwu0Yse9H8eF9IpGo7b8YetZhlI6v7ZQ6bKBFV/6S7w==", "dev": true, "requires": { "path-parse": "^1.0.6" @@ -4633,6 +4833,15 @@ } } }, + "shallow-clone": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", + "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", + "dev": true, + "requires": { + "kind-of": "^6.0.2" + } + }, "shebang-command": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", @@ -4664,9 +4873,9 @@ } }, "slash": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", - "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", "dev": true }, "snapdragon": { @@ -4810,12 +5019,12 @@ "dev": true }, "source-map-resolve": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", - "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", + "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", "dev": true, "requires": { - "atob": "^2.1.1", + "atob": "^2.1.2", "decode-uri-component": "^0.2.0", "resolve-url": "^0.2.1", "source-map-url": "^0.4.0", @@ -5076,6 +5285,13 @@ "z-schema": "^3.24.2" }, "dependencies": { + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true, + "optional": true + }, "z-schema": { "version": "3.25.1", "resolved": "https://registry.npmjs.org/z-schema/-/z-schema-3.25.1.tgz", @@ -5158,21 +5374,13 @@ } }, "tough-cookie": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", - "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", "dev": true, "requires": { - "psl": "^1.1.24", - "punycode": "^1.4.1" - }, - "dependencies": { - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true - } + "psl": "^1.1.28", + "punycode": "^2.1.1" } }, "tr46": { @@ -5263,14 +5471,13 @@ "dev": true }, "uglify-js": { - "version": "3.6.8", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.6.8.tgz", - "integrity": "sha512-XhHJ3S3ZyMwP8kY1Gkugqx3CJh2C3O0y8NPiSxtm1tyD/pktLAkFZsFGpuNfTZddKDQ/bbDBLAd2YyA1pbi8HQ==", + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.9.0.tgz", + "integrity": "sha512-j5wNQBWaql8gr06dOUrfaohHlscboQZ9B8sNsoK5o4sBjm7Ht9dxSbrMXyktQpA16Acaij8AcoozteaPYZON0g==", "dev": true, "optional": true, "requires": { - "commander": "~2.20.3", - "source-map": "~0.6.1" + "commander": "~2.20.3" }, "dependencies": { "commander": { @@ -5279,13 +5486,6 @@ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", "dev": true, "optional": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "optional": true } } }, @@ -5317,9 +5517,9 @@ } }, "universal-user-agent": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-4.0.0.tgz", - "integrity": "sha512-eM8knLpev67iBDizr/YtqkJsF3GK8gzDc6st/WKzrTuPtcsOKW/0IdL4cnMBsU69pOx0otavLWBDGTwg+dB0aA==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-4.0.1.tgz", + "integrity": "sha512-LnST3ebHwVL2aNe4mejI9IQh2HfZ1RLo8Io2HugSif8ekzD1TlWpHpColOB/eh8JHMLkGH3Akqf040I+4ylNxg==", "dev": true, "requires": { "os-name": "^3.1.0" @@ -5405,9 +5605,9 @@ "dev": true }, "uuid": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.3.tgz", - "integrity": "sha512-pW0No1RGHgzlpHJO1nsVrHKpOEIxkGg1xB+v0ZmdNH5OAeAwzAVrCnI2/6Mtx+Uys6iaylxa+D3g4j63IKKjSQ==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", "dev": true }, "validate-npm-package-license": { @@ -5456,12 +5656,12 @@ "dev": true }, "w3c-hr-time": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.1.tgz", - "integrity": "sha1-gqwr/2PZUOqeMYmlimViX+3xkEU=", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", + "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", "dev": true, "requires": { - "browser-process-hrtime": "^0.1.2" + "browser-process-hrtime": "^1.0.0" } }, "webidl-conversions": { @@ -5548,9 +5748,9 @@ } }, "windows-release": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/windows-release/-/windows-release-3.2.0.tgz", - "integrity": "sha512-QTlz2hKLrdqukrsapKsINzqMgOUpQW268eJ0OaOpJN32h272waxR9fkB9VoWRtK7uKHG5EHJcTXQBD8XZVJkFA==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/windows-release/-/windows-release-3.3.0.tgz", + "integrity": "sha512-2HetyTg1Y+R+rUgrKeUEhAG/ZuOmTrI1NBb3ZyAGQMYmOJjBBPe4MTodghRkmLJZHwkuPi02anbeGP+Zf401LQ==", "dev": true, "requires": { "execa": "^1.0.0" @@ -5688,14 +5888,14 @@ } }, "yasway": { - "version": "1.8.6", - "resolved": "https://registry.npmjs.org/yasway/-/yasway-1.8.6.tgz", - "integrity": "sha512-zRzjw9Jemtj+1NwAKjE+rExnG+2fY7KMM6PJRIOb8fO+tzq7EdCdp0iZ+O79F3J+/rOXoqFs+Tqa5oVSJq5m1g==", + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/yasway/-/yasway-1.9.3.tgz", + "integrity": "sha512-yXyP2XFcUljK1/mbQ0lOS815+CtCQr/yjKc9NGNjAbz9sabMACwQtYV66nC4T93P6K83uGxP5QKcmXWC15eVPA==", "dev": true, "requires": { "@ts-common/json": "^0.3.0", "@ts-common/string-map": "^0.3.0", - "@ts-common/z-schema": "^4.1.2", + "clone-deep": "^4.0.1", "debug": "^4.1.1", "faker": "^4.1.0", "istanbul": "^0.4.5", @@ -5707,28 +5907,10 @@ "native-promise-only": "^0.8.1", "path-to-regexp": "^1.7.0", "swagger-methods": "^1.0.8", - "swagger-schema-official": "2.0.0-bab6bed" + "swagger-schema-official": "2.0.0-bab6bed", + "z-schema": "^4.2.2" }, "dependencies": { - "@ts-common/z-schema": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/@ts-common/z-schema/-/z-schema-4.1.2.tgz", - "integrity": "sha512-PDMAza1jpnCpUUSSVf3LBtTyeo5s9xLQlD68gvW3B0j+RbnxYK9CHHCeLOZxBoKviBgr8+tps6ZVmUCcMSmiFw==", - "dev": true, - "requires": { - "commander": "^2.7.1", - "core-js": "^3.2.1", - "lodash.get": "^4.4.2", - "lodash.isequal": "^4.5.0", - "validator": "^11.0.0" - } - }, - "core-js": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.4.0.tgz", - "integrity": "sha512-lQxb4HScV71YugF/X28LtePZj9AB7WqOpcB+YztYxusvhrgZiQXPmCYfPC5LHsw/+ScEtDbXU3xbqH3CjBRmYA==", - "dev": true - }, "debug": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", @@ -5737,12 +5919,6 @@ "requires": { "ms": "^2.1.1" } - }, - "validator": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/validator/-/validator-11.1.0.tgz", - "integrity": "sha512-qiQ5ktdO7CD6C/5/mYV4jku/7qnqzjrxb3C/Q5wR3vGGinHTgJZN/TdFT3ZX4vXhX2R1PXx42fB1cn5W+uJ4lg==", - "dev": true } } }, @@ -5775,6 +5951,13 @@ "validator": "^11.0.0" }, "dependencies": { + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true, + "optional": true + }, "validator": { "version": "11.1.0", "resolved": "https://registry.npmjs.org/validator/-/validator-11.1.0.tgz", diff --git a/.azure-pipelines-preproduction/package.json b/.azure-pipelines-preproduction/package.json index 50d8a883bc17..8028ab1804df 100644 --- a/.azure-pipelines-preproduction/package.json +++ b/.azure-pipelines-preproduction/package.json @@ -10,8 +10,8 @@ "description": "Tests for Azure REST API Specifications", "license": "MIT", "devDependencies": { - "@azure/avocado": "^0.6.2", - "@azure/rest-api-specs-scripts": "^0.5.7", + "@azure/avocado": "^0.6.3", + "@azure/rest-api-specs-scripts": "^0.7.2", "@ts-common/commonmark-to-markdown": "^1.2.0", "@ts-common/fs": "0.2.0", "@ts-common/iterator": "^0.3.6", diff --git a/.azure-pipelines/Avocado.yml b/.azure-pipelines/Avocado.yml index f94462d86452..fbf717fd5160 100644 --- a/.azure-pipelines/Avocado.yml +++ b/.azure-pipelines/Avocado.yml @@ -9,3 +9,4 @@ jobs: verbose: false - script: './node_modules/.bin/avocado' displayName: 'Avocado' + condition: ne(variables['Build.SourceBranch'], 'refs/heads/master') diff --git a/.azure-pipelines/SDKAutomation.yml b/.azure-pipelines/SDKAutomation.yml index 521308755773..6e481cdb9139 100644 --- a/.azure-pipelines/SDKAutomation.yml +++ b/.azure-pipelines/SDKAutomation.yml @@ -2,16 +2,20 @@ trigger: batch: false branches: include: - - "*" + - master + +pr: + autoCancel: false + +variables: + IMAGE: azopenapi.azurecr.io/openapi/sdk-automation:prod + REGISTRY_ENDPOINT: azopenapi-registry jobs: - job: "SDKAutomation" displayName: SDK pool: vmImage: 'Ubuntu 18.04' - container: - image: azopenapi.azurecr.io/openapi/sdk-automation:prod - endpoint: azopenapi-registry timeoutInMinutes: 180 variables: @@ -29,14 +33,14 @@ jobs: SDK_REPO_NAME: azure-sdk-for-js Python: SDK_REPO_NAME: azure-sdk-for-python + Cliextension: + SDK_REPO_NAME: azure-cli-extensions Go: SDK_REPO_NAME: azure-sdk-for-go + Trenton: + SDK_REPO_NAME: azure-sdk-for-trenton steps: - checkout: none - - script: printenv - displayName: Display ENV - - script: git config --global user.email "sdkautomation@microsoft.com" && git config --global user.name "SDK Automation" - displayName: Configure Git - script: | curl \ -s https://api.github.com/repos/$(Build.Repository.Name)/commits/$(Build.SourceVersion)/pulls \ @@ -44,7 +48,28 @@ jobs: | python3 -c "import sys,json; a=json.load(sys.stdin); print(f'##vso[task.setvariable variable=PR_NUMBER]{a[0][\"number\"]}' if len(a)>0 and a[0][\"base\"][\"ref\"]=='master' else '##vso[task.logissue type=error]Last commit $(Build.SourceVersion) doesnot have a related PR')" displayName: Get PR_NUMBER condition: in(variables['Build.Reason'], 'IndividualCI', 'Manual') - - script: sudo chown `id -ng`:`id -ng` . && npm start + - task: Docker@2 + displayName: Login into ACR + inputs: + command: login + containerRegistry: $(REGISTRY_ENDPOINT) + - script: | + docker pull $IMAGE + docker tag $IMAGE sdk-automation:latest + displayName: Pull SDK Automation Image + - script: | + docker run \ + -e BLOB_STORAGE_NAME \ + -e BLOB_STORAGE_KEY \ + -e GITHUB_COMMENT_AUTHOR_NAME \ + -e GITHUBAPP_ID \ + -e GITHUBAPP_PRIVATE_KEY \ + -e NODE_OPTIONS \ + -e BLOB_STORAGE_PREFIX \ + -e SPEC_REPO \ + -e PR_NUMBER \ + -e SDK_REPO_NAME \ + sdk-automation:latest npm start env: BLOB_STORAGE_NAME: $(blob-storage-name) BLOB_STORAGE_KEY: $(blob-storage-key) @@ -52,4 +77,3 @@ jobs: GITHUBAPP_ID: $(githubapp-id) GITHUBAPP_PRIVATE_KEY: $(githubapp-private-key) displayName: SDK Automation - workingDirectory: /z diff --git a/.azure-pipelines/SwaggerToSDK.yml b/.azure-pipelines/SwaggerToSDK.yml index 10c37492cf05..050b16bd3709 100644 --- a/.azure-pipelines/SwaggerToSDK.yml +++ b/.azure-pipelines/SwaggerToSDK.yml @@ -12,6 +12,12 @@ jobs: python: AZURE_SDK_REPO: azure-sdk-for-python AZURE_SDK_PARAMS: '' + cliextension: + AZURE_SDK_REPO: azure-cli-extensions + AZURE_SDK_PARAMS: '' + trenton: + AZURE_SDK_REPO: azure-sdk-for-trenton + AZURE_SDK_PARAMS: '' go: AZURE_SDK_REPO: azure-sdk-for-go AZURE_SDK_PARAMS: '-o latest' diff --git a/.github/assignment.yml b/.github/assignment.yml new file mode 100644 index 000000000000..96970aa5d48f --- /dev/null +++ b/.github/assignment.yml @@ -0,0 +1,155 @@ +--- +- rule: + # data-plane PR + paths: + - "specification/**/data-plane/**" + reviewers: + - anuchandy + - jhendrixMSFT + - lmazuel + - tjprescott + +- rule: + paths: + - "specification/network/**" + reviewers: + - lirenhe + - MyronFanQiu + +- rule: + paths: + - "specification/@(applicationinsights|operationalinsights)/**" + reviewers: + - MyronFanQiu + +- rule: + paths: "specification/compute/**" + reviewers: + - ArcturusZhang + - fengzhou-msft + - yungezz + +- rule: + path: "specification/resources/**" + reviewers: + - raych1 + +- rule: + paths: + - "specification/machinelearningservices/**" + reviewers: + - ArcturusZhang + +- rule: + paths: + - "specification/@(azureactivedirectory|appplatform)/**" + reviewers: + - njuCZ + +- rule: + paths: + - "specification/authorization/**" + reviewers: + - qianwens + - yungezz + +- rule: + paths: + - "specification/datafactory/**" + reviewers: + - qianwens + +- rule: + paths: + - "specification/monitor/**" + reviewers: + - weidongxu-microsoft + - MyronFanQiu + +- rule: + paths: + - "specification/storage/**" + reviewers: + - qianwens + - Juliehzl + +- rule: + paths: "specification/mediaservices/**" + reviewers: + - allenjzhang + +- rule: + paths: + - "specification/@(keyvault|notificationhubs)/**" + - "specification/@(databricks|containerregistry)/**" + reviewers: + - fengzhou-msft + +- rule: + paths: + - "specification/@(containerservice|containerinstance)/**" + reviewers: + - NullMDR + - fengzhou-msft + - yungezz + +- rule: + paths: + - "specification/mixedreality/**" + reviewers: + - leni-msft + +- rule: + paths: + - "specification/portal/**" + reviewers: + - NullMDR + +- rule: + paths: + - "specification/web/**" + reviewers: + - weidongxu-microsoft + +- rule: + paths: + - "documentation/**" + reviewers: + - josefree + - akning-ms + +- rule: + paths: + - "**/package.json" + - ".github/**" + - "**/azure-pipelines.yml" + - ".azure-pipelines/**" + - ".azure-pipelines-preproduction/**" + reviewers: + - akning-ms + - NullMDR + - raych1 + +- rule: + # manager-plane PR + paths: + - "**" + reviewers: + - yungezz + - zikalino + - erich-wang + - NullMDR + - raych1 + - lirenhe + - weidongxu-microsoft + - ArcturusZhang + - xccc-msft + - ChenTanyi + - fengzhou-msft + - njuCZ + - akning-ms + - markcowl + - leni-msft + - qianwens + - allenjzhang + - ruowan diff --git a/.github/sla.yml b/.github/sla.yml index 4e4d541c2572..c0caffeca7cb 100644 --- a/.github/sla.yml +++ b/.github/sla.yml @@ -27,8 +27,6 @@ - scheduleTask: action: sendEmail - repoWhitelist: - - Azure/azure-rest-api-specs scope: pull_request args: booleanFilterExpression: "(WaitForARMFeedback&&!ARMSignedOff&&!ARMChangesRequested&&!ARMReviewInProgress)" diff --git a/CODEOWNERS b/CODEOWNERS index 14e9cb18e880..b9ebec7df9c7 100644 --- a/CODEOWNERS +++ b/CODEOWNERS @@ -34,7 +34,7 @@ /specification/insights/ @gucalder /specification/intune/ @vrmurthy01 /specification/iothub/ @rkmanda -/specification/keyvault/ @schaabs +/specification/keyvault/ @heaths @randallilama @jlichwa /specification/logic/ @pankajsn @tonytang-microsoft-com /specification/machinelearning/ @nonstatic2014 /specification/machinelearningcompute/ @shutchings @@ -47,6 +47,7 @@ /specification/notificationhubs/ @amolr @smithab /specification/operationalinsights/ @sw47 /specification/operationsmanagement/ @dashimi16 +/specification/peering/ @rileymckenna /specification/policyinsights/ @bulentelmaci /specification/postgresql/ @qingqingyuan /specification/powerbidedicated/ @tarostok diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 68da20933d61..99db62225099 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -5,6 +5,9 @@ trigger: include: - master +pr: + autoCancel: false + variables: TRAVIS: 'true' TRAVIS_BRANCH: $(System.PullRequest.TargetBranch) diff --git a/cSpell.json b/cSpell.json index aa948df1ee57..8cf7fe1c77ee 100644 --- a/cSpell.json +++ b/cSpell.json @@ -188,6 +188,12 @@ "Exprired" ] }, + { + "filename": "**/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/integrationRuntime.json", + "words": [ + "Exprired" + ] + }, { "filename": "**/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/TasksCommon.json", "words": [ @@ -220,6 +226,18 @@ "Regenerte" ] }, + { + "filename": "**/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/storage.json", + "words": [ + "Regenerte" + ] + }, + { + "filename": "**/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/storage.json", + "words": [ + "Regenerte" + ] + }, { "filename": "**/specification/adhybridhealthservice/resource-manager/Microsoft.ADHybridHealthService/stable/2014-01-01/ADHybridHealthService.json", "words": [ diff --git a/custom-words.txt b/custom-words.txt index f4ac3a47c96d..d88ed24f7781 100644 --- a/custom-words.txt +++ b/custom-words.txt @@ -32,6 +32,7 @@ adminmanagement ADTO adultscore affinitized +agentpool aggregatedcost AHUB AIAPI @@ -89,6 +90,8 @@ apimusers apimversionsets apitoken APNS +appconfig +appid appinsights applynetworkconfigurationupdates appservice @@ -113,6 +116,8 @@ australiasoutheast authenticatable Authenticode authorizationrules +authprovider +authproviders authsettings authsid autobackup @@ -130,6 +135,7 @@ autopatching autopool autorest autoscale +autoscaler autoscalesettings autoscaling Avro @@ -156,6 +162,7 @@ azureml azuresql azurestack azurestorageaccounts +azuresynapse azuretable azurewebsites backend @@ -171,8 +178,10 @@ bacpac badpassword Baidu bangla +Bahasa baremetal BATCHAI +batchmanaged BAYESIANOPTIMIZATION BCDR BCWG @@ -208,6 +217,7 @@ BMCI BMCIP BMSPO BMSRP +Bokmål Bokmaal Bootstrappers bot's @@ -279,6 +289,7 @@ CNAME cntk CODEGEN codegeneration +codemirror cognitiveservices colls colocation @@ -401,6 +412,7 @@ deletedsecrets deletedstorage deletefailed deleteissuers +deleteprivateendpointconnection deletesas demorun denylist @@ -466,12 +478,14 @@ enableautoscale enablelog enablement enablescheduling +ename endpointkeys endpointname endswith endtime Enein engagementfabric +endzone enquoted entitydocument entitysearch @@ -479,11 +493,13 @@ entrypoint environmentsettings errordetail errored +ErrorMesssage ErrorSchema Español estaba Etag Ethereum +evalue evaluateautoscale eventcategories eventgrid @@ -546,6 +562,7 @@ fsaction Fulfilment Fulltext fullyqualified +functionappsettings galician galleryimages Garda @@ -571,6 +588,8 @@ GETFILESTATUS getissuers getjob getkey +getprivateendpointconnection +getprivatelinkresources getsas getskus getssotoken @@ -634,6 +653,7 @@ hybridconnection hybriddata hybriddatamanager Hyperdrive +Hypernet Hyperscale hyperv Iaas @@ -680,6 +700,7 @@ iothub iothubprovisioningservices iotspaces iotspacesservice +ipam ipconfig ipconfiguration ipconfigurations @@ -687,6 +708,7 @@ ipfilterrules Ipsec ipssl ipgroups +IPAM iscloneable Iscsi iscsiservers @@ -724,6 +746,7 @@ kafkarest Kaliningrad Kbps KECA +kernelspec keyname keyspace keyspaces @@ -747,8 +770,10 @@ kubeconfigs kubenet kubernetes kusto +kvset l'avion labaccounts +labelset labservices Lajolla largefacelists @@ -778,6 +803,8 @@ listissuers listjobs listkeys listprebuilts +listprivateendpointconnections +listprivatelinkresources listsas listsecrets LISTSTATUS @@ -785,6 +812,7 @@ listsyncfunctiontriggerstatus listsyncstatus liveevent liveoutput +livyid loadbalancer localbusinesses localcategories @@ -920,6 +948,7 @@ n'recognition nagios namespace's nanoserver +nbformat Nccl nchar ndjson @@ -953,6 +982,7 @@ nonpaged nonreadable nonstarted Nonsupported +nopublicipaddresses northcentralus northeurope nostore @@ -962,6 +992,7 @@ notstarted nouploadcache nsdname nsku +nsxt ntext ntlm numrecords @@ -1017,6 +1048,7 @@ pageable Parallelise paramref PARAVIRTUAL +partnertopic Passthrough patternanyentities patternrule @@ -1060,6 +1092,7 @@ poolusagemetrics portalsettings postbackup Postgre +Postgres postgresql postrestore powerbi @@ -1115,8 +1148,10 @@ qnormal querylogs querypool querystring +querytriggers Queretaro queueservices +QueueStatus quickbooks quicktest quniform @@ -1127,6 +1162,7 @@ RAGRS RAGZRS randint Rankable +ratelimit ravbhatnagar rawxml rbac @@ -1198,6 +1234,7 @@ reprovisions Reregister Rescan reservationorders +resetapikey resetvpnclientsharedkey Resolvability resourcegraph @@ -1280,6 +1317,7 @@ SECP secureobject securestring securityinsight +seealso serialconsole servererror serverfarm @@ -1361,7 +1399,9 @@ sparql SPDX SQLAG SQLDB +SQLDW SQLMI +SQLRDS sqlvirtualmachine sqlvm Sqoop @@ -1377,6 +1417,7 @@ starttask starttaskfailed starttime stateful +staticsite statusdir stderror stopresize @@ -1455,9 +1496,11 @@ taskcompletion taskcounts taskfailure tasksuccess +Taxii templated templatelink templeton +temporarydisk tensorflow teradata terminatejob @@ -1483,6 +1526,7 @@ tombstoned toolchain toolset tooltips +traceback traceroute trafficmanager trafficmanageranalytics @@ -1505,6 +1549,7 @@ ukwest Ulaanbaatar unallocated unattend +unbilled Unclaim Undelete undeleted @@ -1553,6 +1598,7 @@ unvalidated unwrapkey updatecertificate updatehostname +updateprivateendpointconnection updateproperties upgradeos uploadbatchservicelogs @@ -1568,6 +1614,7 @@ userflows userid userpreference usersetting +usermanaged USQL VAIDK varbinary @@ -1579,6 +1626,7 @@ vaultusages vcenter Vcore Vcores +vcsa Vertica Vfyc vhds @@ -1591,6 +1639,7 @@ virtualmachines virtualnetworkgateways virtualnetworkrules virtualnetworks +Virtustream viruela visualsearch visualstudio @@ -1602,6 +1651,7 @@ vmextension VMILR vmimage vmname +vmotion VMQS vmsizes VMSS @@ -1686,3 +1736,15 @@ MSAZRUSGO hypervcollectors vmwarecollectors updatepolicy +createbsl +deletebsl +getbsl +getactivesessions +disconnectactivesessions +bsls +sessionids +Dsms +cloudManifestFiles +highestcriticalimpact +apiserver +kubeadmin diff --git a/documentation/ci-fix.md b/documentation/ci-fix.md index 707cb739f812..c566c7a67908 100644 --- a/documentation/ci-fix.md +++ b/documentation/ci-fix.md @@ -4,20 +4,90 @@ Here are guides to fix some of the CI failure. ## Spell check -Please add your words to `./custom-words.txt` if you think you have the correct spell +Please add your words to `./custom-words.txt` if you think you have the correct spell. + +If your problem is some existing error name that is not a word and need to supress the error in that file (and don't want to add to custom-words.txt), you can add it to `./cSpell.txt`. ## Prettier check -Please run the following command: +Please run the following command (from an administrator Node.js command prompt if running on Windows): ``` -npm install; npm run prettier-fix +npm install +npm run prettier-fix ``` Or if you want to fix specified service: ``` -npm install; npm run prettier -- --write "specification//**/*.json" +npm install +npm run prettier -- --write "specification//**/*.json" ``` Then please commit and push changes made by prettier. + +## Model Validation + +Run Model Validation locally: +``` +npm install -g oav +oav validate-example +``` +Please see [readme](https://github.com/Azure/oav/blob/master/README.md) for how to install or run tool in details. +Or you can run it in [OpenAPI Hub](https://portal.azure-devex-tools.com/tools/static-validation/static/errors/default) +Refer to [Semantic and Model Violations Reference](https://github.com/Azure/azure-rest-api-specs/blob/master/documentation/Semantic-and-Model-Violations-Reference.md) for detailed description of validations and how-to-fix guidance. + +## Semantic Validation +Run Semantic Validation locally: +``` +npm install -g oav +oav validate-spec +``` +Please see [readme](https://github.com/Azure/oav/blob/master/README.md) for how to install or run tool in details. +Or you can run it in [OpenAPI Hub](https://portal.azure-devex-tools.com/tools/static-validation/static/errors/default) +Refer to [Semantic and Model Violations Reference](https://github.com/Azure/azure-rest-api-specs/blob/master/documentation/Semantic-and-Model-Violations-Reference.md) for detailed description of validations and how-to-fix guidance. + +## Breaking Change Check + +run oad locally (the breaking change is reported by oad tool): +``` +npm install -g oad +oad compare +``` +Please see [readme](https://github.com/Azure/openapi-diff/blob/master/README.md) for how to install or run tool in details. +Or you can run it in [OpenAPI Hub](https://portal.azure-devex-tools.com/tools/diff). +Refer to [Oad Docs](https://github.com/Azure/openapi-diff/tree/master/docs) for detailed description of all oad rules and how-to-fix guidance. + +## Linter Validation + +Run linter locally: +``` +npm install -g autorest +autorest --validation --azure-validator --input-file= +or +autorest --validation --azure-validator + +``` +Please see [readme](https://github.com/Azure/azure-openapi-validator/blob/master/README.md) for how to install or run tool in details. +Or you can run it in [OpenAPI Hub](https://portal.azure-devex-tools.com/tools/linter). +Refer to [openapi-authoring-automated-guidelines](https://github.com/Azure/azure-rest-api-specs/blob/master/documentation/openapi-authoring-automated-guidelines.md) for detailed description of all lint rules and how-to-fix guidance. + +## Avocado + +Run avocado locally: + +``` +npm install -g @azure/avocado + +avocado +``` + +When type avocado in command line, avocado will validate in the current directory. + +Note: When running in Swagger PR pipeline, Avocado only report errors with file updates in the PR, but ignore the errors existing in base. However when running Avocado against local directory, it reports all errors existing in the files. + +- Run all specs: Clone the repo `azure/azure-rest-api-specs` and run "avocado" in folder `azure/azure-rest-api-specs`. +- Run single service specs: create a folder `specification`. and move your service specs folder in `specification`. run "avocado" + +Refer to [Avocado Readme](https://github.com/Azure/avocado/blob/master/README.md) for detailed description of validations and how-to-fix guidance. + diff --git a/documentation/openapi-authoring-automated-guidelines.md b/documentation/openapi-authoring-automated-guidelines.md index 9ea784b53e94..5427d2fc57ce 100644 --- a/documentation/openapi-authoring-automated-guidelines.md +++ b/documentation/openapi-authoring-automated-guidelines.md @@ -43,13 +43,16 @@ We request OpenAPI(Swagger) spec authoring be assigned to engineers who have an | [R3007](#r3007) | [PutGetPatchResponseSchema](#r3007) | ARM and Data plane OpenAPI(swagger) specs | | [R3025](#r3025) | [TrackedResourceGetOperation](#r3025) | ARM OpenAPI(swagger) specs | | [R3026](#r3026) | [TrackedResourcePatchOperation](#r3026) | ARM OpenAPI(swagger) specs | -| [R2059](#r2059) | [UniqueResourcePaths](#r2059) | ARM OpenAPI(swagger) specs | +| [R3030](#R3030) | [PathResourceProviderMatchNamespace](#R3030) | ARM OpenAPI(swagger) specs | | [R2016](#r2016) | [PatchBodyParametersSchema](#r2016) | ARM and Data plane OpenAPI(swagger) specs | | [R2062](#r2062) | [XmsResourceInPutResponse](#r2062) | ARM OpenAPI(swagger) specs | | [R3027](#r3027) | [TrackedResourceListByResourceGroup](#r3027) | ARM OpenAPI(swagger) specs | | [R3028](#r3028) | [TrackedResourceListBySubscription](#r3028) | ARM OpenAPI(swagger) specs | | [R3011](#r3011) | [DescriptionMustNotBeNodeName](#r3011) | ARM and Data plane OpenAPI(swagger) specs | | [R2020](#r2020) | [RequiredPropertiesMissingInResourceModel](#r2020) | ARM OpenAPI(swagger) specs | +| [R3020](#r3020) | [PathResourceProviderNamePascalCase](#r3020) | ARM OpenAPI(swagger) specs | +| [R3021](#r3021) | [PathResouceTypeNameCamelCase](#r3021) | ARM OpenAPI(swagger) specs | +| [R4004](#r4004) | [OperationIdRequired](#r4004) | ARM OpenAPI(swagger) specs | #### ARM Warnings @@ -90,6 +93,10 @@ We request OpenAPI(Swagger) spec authoring be assigned to engineers who have an | [R2009](#r2009) | [ArraySchemaMustHaveItems](#r2009) | ARM and Data plane OpenAPI(swagger) specs | | [R3013](#r3013) | [DeleteMustNotHaveRequestBody](#r3013) | ARM and Data plane OpenAPI(swagger) specs | | [R4001](#r4001) | [XmsParameterLocation](#r4001) | ARM and Data plan OpenAPI(swagger) specs | +| [R3015](#r3015) | [EnumMustHaveType](#r3015) | ARM and Data plan OpenAPI(swagger) specs | +| [R3024](#r3024) | [EnumUniqueValue](#r3024) | ARM and Data plan OpenAPI(swagger) specs | +| [R3029](#r3029) | [EnumMustNotHaveEmptyValue](#r3024) | ARM and Data plan OpenAPI(swagger) specs | +| [R4005](#r4005) | [UniqueXmsEnumName](#r4005) | ARM and Data plane OpenAPI(swagger) specs | #### SDK Warnings @@ -118,7 +125,10 @@ We request OpenAPI(Swagger) spec authoring be assigned to engineers who have an | [R2064](#r2064) | [LROStatusCodesReturnTypeSchema](#r2064) | ARM and Data plane OpenAPI(swagger) specs | | [R2023](#r2023) | [SummaryAndDescriptionMustNotBeSame](#r2023) | ARM and Data plane OpenAPI(swagger) specs | | [R2010](#r2010) | [LongRunningOperationsOptionsValidator](#r2010) | ARM and Data plane OpenAPI(swagger) specs | - +| [R2007](#r2007) | [LongRunningOperationsWithLongRunningExtension](#r2007) | ARM OpenAPI(swagger) specs | +| [R2029](#r2029) | [PageableOperation](#r2029) | ARM and Data plane OpenAPI(swagger) specs | +| [R4006](#r4006) | [DeprecatedXmsCodeGenerationSetting](#r4006) | ARM and Data plane OpenAPI(swagger) specs | + ### Documentation #### Documentation Errors @@ -703,18 +713,18 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) -### R2059 UniqueResourcePaths +### R3030 PathResourceProviderMatchNamespace **Category** : ARM Error **Applies to** : ARM OpenAPI(swagger) specs -**Output Message**: Multiple resource providers are not allowed in a single spec. More than one the resource paths were found: '{0}'. +**Output Message**: The last resource provider '{0}' doesn't match the namespace. -**Description**: Verifies whether more than one resource providers exists in the specification or not. +**Description**: Verifies whether the last resource provider matches namespace or not. E.g the path /providers/Microsoft.Compute/virtualMachines/{vmName}/providers/Microsoft.Insights/extResource/{extType}' is allowed only if Microsoft.Insights matches the namespace (Microsoft.Insights). -**Why the rule is important**: Per the [ARM guidelines](https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/resource-api-reference.md), each OpenAPI(swagger) specification must contain one resource provider. +**Why the rule is important**: Per the [ARM guidelines](https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/resource-api-reference.md), each OpenAPI(swagger) specification must contain one resource provider. So the last resource provider must match with the resource provider namespace. -**How to fix the violation**: One OpenAPI(swagger) specification must have one resource provider. Please create multiple OpenAPI(swagger) specs, each for one provider. Please refer +**How to fix the violation**: One OpenAPI(swagger) specification must locate in proper namespace. Namespace is parent folder. E.g. Microsoft.Insights. Please make sure the last resource provider name matches the namespace name. [Literate Configuration](https://github.com/Azure/autorest/blob/185e337137c990b9cc1b8ebbb272e76eeeef43a1/docs/user/literate-file-formats/configuration.md). **Impact on generated code**: N/A. @@ -1401,10 +1411,14 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul **Applies to** : ARM OpenAPI(swagger) specs -**Output Message**: Top level properties should be one of name, type, id, location, properties, tags, plan, sku, etag, managedBy, identity. Model definition '{0}' has extra properties ['{1}']. +**Output Message**: Top level properties should be one of name, type, id, location, properties, tags, plan, sku, etag, managedBy, identity, systemdata. Model definition '{0}' has extra properties ['{1}']. **Description**: Per [ARM guidelines](https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/resource-api-reference.md), top level properties of a resource should be only ones from the allowed set. +**CreatedAt** : N/A + +**LastModifiedAt** : February 18, 2020 + **Why the rule is important**: [ARM guidelines](https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/resource-api-reference.md). **How to fix the violation**: Consider moving extra properties into "properties" bag of the resource model. @@ -1655,11 +1669,56 @@ Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rul **Output Message**: Properties of a PATCH request body must not be {0}. PATCH operation: '{1}' Model Definition: '{2}' Property: '{3}' **Description**: A request parameter of the Patch Operation must not have a required/default value. +But it's allowed when all required properties are marked as discriminator, because the discriminator must be required. + +**CreatedAt** : N/A + +**LastModifiedAt** : February 18, 2020 **Why the rule is important**: A PATCH operation is used to update properties of a resource. So, If the resource has 'X' number of properties and if you wish to change one of them, then a PATCH request could be sent with a value for that specified property. In other words, all the properties in the PATCH request are updated. Now, if any of the values are marked as required/default, it would force the system to update it always which is not the intention of the PATCH operation. **How to fix the violation**: Ensure that the request parameter of the Patch Operation does not have a required/default value. +**Good Examples**: The following is a good example: +```json +...... +...... + "patch": { + "tags": [ + "SampleTag" + ], + "operationId": "Foo_Update", + "description": "Test Description", + "parameters": [ + { + "name": "foo_patch", + "in": "body", + "schema": { + "$ref": "#/definitions/FooRequestParams" + }, + "description": "foo patch request" + } + ] + } +...... +...... + "definitions": { + "FooRequestParams": { + "properties": { + "prop0": { + "type": "string" + } + }, + "discriminator": "prop0", + "required": [ + "prop0" + ] + } + } +...... +...... +``` + Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) ### R4000 ParameterDescriptionRequired @@ -1837,3 +1896,423 @@ or ``` Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) + + +### R4004 OperationIdRequired + +**Category** : ARM Error + +**Applies to** : ARM OpenAPI(swagger) specs + +**Output Message** : Missing operationId. path:'${operation path}' operation:'${operation}'. + +**Description** : Each operation must haave a unique operationId. + +**CreatedAt** : February 18, 2020 + +**LastModifiedAt** : February 18, 2020 + +**Why this rule is important**: Per [creating-swagger](creating-swagger.md#Paths),The operationId is used to determine the generated method name. + +**How to fix the violation**: Add the right operationId for each operation + +Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) + +### R3020 PathResourceProviderNamePascalCase + +**Category** : ARM Warning + +**Applies to** : ARM and Data Plane OpenAPI(swagger) specs + +**Output Message** : Resource provider naming must follow the pascal case. Path: {your path} + +**Description** : + +Resource provider naming in path SHOULD follow the pascal case. (e.g. Microsoft.Insights/components/proactiveDetectionConfigs) + +For more detail, pls refer to https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#172-casing + +**CreatedAt**: February 18, 2020 + +**LastModifiedAt**: February 18, 2020 + +**How to fix the violation**: + +Rename resource provider as pascal case in path. + +Eg: In this case, you need to replace `Microsoft.computer` with `Microsoft.Computer` to follw pascal case. + + +Invalid: + +``` +paths : { "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.computer/{name}" : { + "get": { + ... + } + "post": { + ... + } + } +} +``` + +Valid: + + +``` +paths : { "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Computer/{name}" : { + "get": { + ... + } + "post": { + ... + } + } +} +``` + +Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) + +### R3021 PathResourceTypeNameCamelCase + +**Category** : ARM Warning + +**Applies to** : ARM and Data Plane OpenAPI(swagger) specs + +**Output Message** : Resource type naming SHOULD follow camel case. Path: {your path} + +**Description** : Resource type or other identifiers (include: namespace, entityTypes) SHOULD follow camel case. (e.g. Microsoft.Insights/components/proactiveDetectionConfigs, not ProactiveDetectionConfig) + +For more detail, pls refer to https://github.com/microsoft/api-guidelines/blob/vNext/Guidelines.md#172-casing + +**CreatedAt**: February 18, 2020 + +**LastModifiedAt**: February 18, 2020 + +**How to fix the violation**: + +Rename resource type or other identifiers as camel case in path. + +Eg: In this case, you need to replace `ResourceGroups` with `resourceGroups` to follw camel case. + + +Invalid: + +``` +paths : { "/subscriptions/{subscriptionId}/ResourceGroups/{resourceGroupName}/providers/Microsoft.Computer/{name}" : { + "get": { + ... + } + "post": { + ... + } + } +} +``` + +Valid: + + +``` +paths : { "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Computer/{name}" : { + "get": { + ... + } + "post": { + ... + } + } +} +``` + +Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) + +### R3024 EnumUniqueValue + +**Category** : SDK Error + +**Applies to** : ARM and Data Plane OpenAPI(swagger) specs + +**Output Message** : Enum must not contain duplicated value (case insentive). + +**Description** : Enum must not contain duplicated value (case insentive). + +**CreatedAt**: February 18, 2020 + +**LastModifiedAt**: February 18, 2020 + +**How to fix the violation**: + +Remove duplicated value in enum. + +Eg: In this case, you need to remove 'Failed' or 'FAILED'. + + +Invalid: + +``` +"enum": [ + "Success", + "Failed", + "FAILED" +] +``` + +Valid: + + +``` +"enum": [ + "Success", + "Failed", +] +``` + +Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) + +### R3015 EnumMustHaveType + +**Category** : SDK Error + +**Applies to** : ARM and Data Plane OpenAPI(swagger) specs + +**Output Message** : Enum must define its type. All values in an enum must adhere to the specified type. + +**Description** : Enum must define type, and type must not be object. Or it will fail SDK auto-generation. + +**CreatedAt**: February 18, 2020 + +**LastModifiedAt**: February 20, 2020 + +**How to fix the violation**: + +Define type in enum. + +Invalid: + +``` +"status":{ + "description":"The state code.", + "enum":[ + "Success", + "Failed" + ], + "readOnly":true, + "x-ms-enum":{ + "name":"RespStatus", + "modelAsString":true + } +} +``` + +Valid: + + +``` +"status":{ + "description":"The state code.", + "enum":[ + "Success", + "Failed" + ], + "readOnly":true, + "type": "string", + "x-ms-enum":{ + "name":"RespStatus", + "modelAsString":true + } +} +``` + +Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) + + +### R3029 EnumMustNotHaveEmptyValue + +**Category** : SDK Error + +**Applies to** : ARM and Data Plane OpenAPI(swagger) specs + +**Output Message** : Enum value must not contain empty value. + +**Description** : Emum must not be empty, or contain special character, like space, tab, etc. It will lead to code generation failure in downstream pipeline. + +**CreatedAt**: February 18, 2020 + +**LastModifiedAt**: February 18, 2020 + +**How to fix the violation**: + +Remove empty string from enum. + +Invalid: + +``` +"enum":[ + "Success", + "Failed", + " " +] +``` + +Valid: + + +``` +"enum":[ + "Success", + "Failed", +] +``` + + +Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) + +### R2007 LongRunningOperationsWithLongRunningExtension + +**Category** : SDK Warning + +**Applies to** : ARM OpenAPI(swagger) specs + +**Output Message** : The operation '{0}' returns 202 status code, which indicates a long running operation, please enable 'x-ms-long-running-operation'. + +**Description** : Per [x-ms-long-running-operation](./swagger-extensions.md#x-ms-long-running-operation) ,The operation which returns 202 status code indicates a long running operation. Every long running operation must have the x-ms-long-running-operation enabled. + +**How to fix the violation**: +Having the "x-ms-long-running-operation" enabled. +Eg: +```json +...... +...... + "put": { + "operationId": "Foo_Create", + "responses": { + "202": { + "description": "" + }, + "x-ms-long-running-operation": true + } + } +...... +...... +``` + +Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) + + +### R2029 PageableOperation + +**Category** : SDK Warning + +**Applies to** : ARM and Data plane OpenAPI(swagger) specs + +**Output Message** : Based on the response model schema, operation '${operationId}' might be pageable. Consider adding the x-ms-pageable extension. + +**Description** : This rule was introduced to check if a pageable operation has x-ms-pageable enabled. + +**How to fix the violation**: +Having the x-ms-pageable enabled if the operation is pageable. +Eg: +```json +...... +...... + "get": { + "operationId": "Foo_List", + "responses": { + "200": { + "description": ". ", + "schema": { + "$ref": "#/definitions/ant" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } +...... +...... +``` + +Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) + +### R4005 UniqueXmsEnumName + +**Category** : SDK Error + +**Applies to** : ARM and Data plane OpenAPI(swagger) specs + +**Output Message** : Must not have duplicate name in x-ms-enum extension , make sure every x-ms-enum name unique. + +**Description** : Must not have duplicate name in x-ms-enum extension. + +**CreatedAt**: March 18, 2020 + +**LastModifiedAt**: March 18, 2020 + +**How to fix the violation**: Update the duplicate x-ms-enum name : + +The following would be invalid: +```json + "State": { + "description": "The state of the configuration store.", + "enum": [ + "Failed", + "Canceled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "DuplicateName", + "modelAsString": true + } + }, + "status": { + "description": "The state code.", + "enum": [ + "Success", + "FAILED" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "name": "DuplicateName", + "modelAsString": true + } + } +} +``` + +Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) + +### R4006 DeprecatedXmsCodeGenerationSetting + +**Category** : SDK Warning + +**Applies to** : ARM and Data plane OpenAPI(swagger) specs + +**Output Message** : The x-ms-code-generation-setting extension is being deprecated. Please remove it and move settings to readme file for code generation. + +**Description** : The x-ms-code-generation-settings is being deprecated. AutoRest (v3) is using settings in readme file for code generation and will stop supporting it inside the swagger file. Please ensure to remove the parameter from swagger spec and move settings to readme. + +**CreatedAt**: March 18, 2020 + +**LastModifiedAt**: March 18, 2020 + +**How to fix the violation**: Since the only value of this extension today is to override the client name, which could be done with a 'title' line in the readme file,you could remove the extension from swagger spec and move settings to readme. + +The following would be invalid: + +```json + "info": { + "version": "2016-05-16", + "x-ms-code-generation-settings": { + "name": "AnalysisServicesManagementClient" + } + } +``` + +Links: [Index](#index) | [Error vs. Warning](#error-vs-warning) | [Automated Rules](#automated-rules) | [ARM](#arm-violations): [Errors](#arm-errors) or [Warnings](#arm-warnings) | [SDK](#sdk-violations): [Errors](#sdk-errors) or [Warnings](#sdk-warnings) + + diff --git a/package-lock.json b/package-lock.json index 9bb5d920da32..680050b75774 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5,9 +5,9 @@ "requires": true, "dependencies": { "@azure/avocado": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/@azure/avocado/-/avocado-0.6.2.tgz", - "integrity": "sha512-DU4TD/+U0aXLjz4bGW+vxst4tXm3/HPiOrNh1BcY00rHRnRbR+ZY7AL/nA4+1P6LVPu8msLUXp6HTqqe4QrbHg==", + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/@azure/avocado/-/avocado-0.6.3.tgz", + "integrity": "sha512-OOCdgdwwt/PEYVesm1z1WVCX7YMNySdZX4RFN/+JI6u0nRsi+n3JHfwkytNyhSrwGKBY/OqUEyQcNFQkTw4OFg==", "dev": true, "requires": { "@azure/openapi-markdown": "^0.9.1", @@ -88,19 +88,20 @@ } }, "@azure/rest-api-specs-scripts": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/@azure/rest-api-specs-scripts/-/rest-api-specs-scripts-0.5.7.tgz", - "integrity": "sha512-KbhwZzENz5pB9Me9PxhhuqL7Lru8bmpSOWQ291buvxEYQ+ZwzvHyA0cA8yL5raXZX2IJhslc7ThtcPhAqC0hFw==", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/@azure/rest-api-specs-scripts/-/rest-api-specs-scripts-0.7.1.tgz", + "integrity": "sha512-HCBbg78O2eMQcaboneXns4LibWQ1vPK6tzh6BqJ+JYBleaVDiuFlvx2Jf8YwWxroxN0QRIh408OdNW3SWQPRQg==", "dev": true, "requires": { "@azure/avocado": "^0.4.1", "@azure/oad": "^0.7.0", - "@octokit/rest": "^16.25.0", + "@octokit/rest": "^16.42.0", "@ts-common/string-map": "^0.3.0", + "commonmark": "0.27.0", "fs-extra": "^7.0.1", "glob": "^7.1.3", "js-yaml": "^3.13.1", - "oav": "0.19.6", + "oav": "0.21.3", "request": "^2.88.0" }, "dependencies": { @@ -121,6 +122,32 @@ "commonmark": "^0.29.0", "js-yaml": "^3.13.1", "node-object-hash": "^1.4.2" + }, + "dependencies": { + "commonmark": { + "version": "0.29.1", + "resolved": "https://registry.npmjs.org/commonmark/-/commonmark-0.29.1.tgz", + "integrity": "sha512-DafPdNYFXoEhsSiR4O+dJ45UJBfDL4cBTks4B+agKiaWt7qjG0bIhg5xuCE0RqU71ikJcBIf4/sRHh9vYQVF8Q==", + "dev": true, + "requires": { + "entities": "~1.1.1", + "mdurl": "~1.0.1", + "minimist": "~1.2.0", + "string.prototype.repeat": "^0.2.0" + } + } + } + }, + "commonmark": { + "version": "0.27.0", + "resolved": "https://registry.npmjs.org/commonmark/-/commonmark-0.27.0.tgz", + "integrity": "sha1-2GwmK5YoIelIPGnFR7xYhAwEezQ=", + "dev": true, + "requires": { + "entities": "~ 1.1.1", + "mdurl": "~ 1.0.1", + "minimist": "~ 1.2.0", + "string.prototype.repeat": "^0.2.0" } } } @@ -150,37 +177,104 @@ "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==", "dev": true }, + "@octokit/auth-token": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.4.0.tgz", + "integrity": "sha512-eoOVMjILna7FVQf96iWc3+ZtE/ZT6y8ob8ZzcqKY1ibSQCnu4O/B7pJvzMx5cyZ/RjAff6DAdEb0O0Cjcxidkg==", + "dev": true, + "requires": { + "@octokit/types": "^2.0.0" + } + }, "@octokit/endpoint": { - "version": "5.5.1", - "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-5.5.1.tgz", - "integrity": "sha512-nBFhRUb5YzVTCX/iAK1MgQ4uWo89Gu0TH00qQHoYRCsE12dWcG1OiLd7v2EIo2+tpUKPMOQ62QFy9hy9Vg2ULg==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.0.tgz", + "integrity": "sha512-3nx+MEYoZeD0uJ+7F/gvELLvQJzLXhep2Az0bBSXagbApDvDW0LWwpnAIY/hb0Jwe17A0fJdz0O12dPh05cj7A==", "dev": true, "requires": { "@octokit/types": "^2.0.0", "is-plain-object": "^3.0.0", - "universal-user-agent": "^4.0.0" + "universal-user-agent": "^5.0.0" + }, + "dependencies": { + "universal-user-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-5.0.0.tgz", + "integrity": "sha512-B5TPtzZleXyPrUMKCpEHFmVhMN6EhmJYjG5PQna9s7mXeSqGTLap4OpqLl5FCEFUI3UBmllkETwKf/db66Y54Q==", + "dev": true, + "requires": { + "os-name": "^3.1.0" + } + } + } + }, + "@octokit/plugin-paginate-rest": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-1.1.2.tgz", + "integrity": "sha512-jbsSoi5Q1pj63sC16XIUboklNw+8tL9VOnJsWycWYR78TKss5PVpIPb1TUUcMQ+bBh7cY579cVAWmf5qG+dw+Q==", + "dev": true, + "requires": { + "@octokit/types": "^2.0.1" + } + }, + "@octokit/plugin-request-log": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.0.tgz", + "integrity": "sha512-ywoxP68aOT3zHCLgWZgwUJatiENeHE7xJzYjfz8WI0goynp96wETBF+d95b8g/uL4QmS6owPVlaxiz3wyMAzcw==", + "dev": true + }, + "@octokit/plugin-rest-endpoint-methods": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-2.4.0.tgz", + "integrity": "sha512-EZi/AWhtkdfAYi01obpX0DF7U6b1VRr30QNQ5xSFPITMdLSfhcBqjamE3F+sKcxPbD7eZuMHu3Qkk2V+JGxBDQ==", + "dev": true, + "requires": { + "@octokit/types": "^2.0.1", + "deprecation": "^2.3.1" } }, "@octokit/request": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.3.1.tgz", - "integrity": "sha512-5/X0AL1ZgoU32fAepTfEoggFinO3rxsMLtzhlUX+RctLrusn/CApJuGFCd0v7GMFhF+8UiCsTTfsu7Fh1HnEJg==", + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.3.4.tgz", + "integrity": "sha512-qyj8G8BxQyXjt9Xu6NvfvOr1E0l35lsXtwm3SopsYg/JWXjlsnwqLc8rsD2OLguEL/JjLfBvrXr4az7z8Lch2A==", "dev": true, "requires": { - "@octokit/endpoint": "^5.5.0", - "@octokit/request-error": "^1.0.1", + "@octokit/endpoint": "^6.0.0", + "@octokit/request-error": "^2.0.0", "@octokit/types": "^2.0.0", "deprecation": "^2.0.0", "is-plain-object": "^3.0.0", "node-fetch": "^2.3.0", "once": "^1.4.0", - "universal-user-agent": "^4.0.0" + "universal-user-agent": "^5.0.0" + }, + "dependencies": { + "@octokit/request-error": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.0.0.tgz", + "integrity": "sha512-rtYicB4Absc60rUv74Rjpzek84UbVHGHJRu4fNVlZ1mCcyUPPuzFfG9Rn6sjHrd95DEsmjSt1Axlc699ZlbDkw==", + "dev": true, + "requires": { + "@octokit/types": "^2.0.0", + "deprecation": "^2.0.0", + "once": "^1.4.0" + } + }, + "universal-user-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-5.0.0.tgz", + "integrity": "sha512-B5TPtzZleXyPrUMKCpEHFmVhMN6EhmJYjG5PQna9s7mXeSqGTLap4OpqLl5FCEFUI3UBmllkETwKf/db66Y54Q==", + "dev": true, + "requires": { + "os-name": "^3.1.0" + } + } } }, "@octokit/request-error": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-1.2.0.tgz", - "integrity": "sha512-DNBhROBYjjV/I9n7A8kVkmQNkqFAMem90dSxqvPq57e2hBr7mNTX98y3R2zDpqMQHVRpBDjsvsfIGgBzy+4PAg==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-1.2.1.tgz", + "integrity": "sha512-+6yDyk1EES6WK+l3viRDElw96MvwfJxCt45GvmjDUKWjYIb3PJZQkq3i46TwGwoPD4h8NmTrENmtyA1FwbmhRA==", "dev": true, "requires": { "@octokit/types": "^2.0.0", @@ -189,11 +283,15 @@ } }, "@octokit/rest": { - "version": "16.34.1", - "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-16.34.1.tgz", - "integrity": "sha512-JUoS12cdktf1fv86rgrjC/RvYLuL+o7p57W7zX1x7ANFJ7OvdV8emvUNkFlcidEaOkYrxK3SoWgQFt3FhNmabA==", + "version": "16.43.1", + "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-16.43.1.tgz", + "integrity": "sha512-gfFKwRT/wFxq5qlNjnW2dh+qh74XgTQ2B179UX5K1HYCluioWj8Ndbgqw2PVqa1NnVJkGHp2ovMpVn/DImlmkw==", "dev": true, "requires": { + "@octokit/auth-token": "^2.4.0", + "@octokit/plugin-paginate-rest": "^1.1.1", + "@octokit/plugin-request-log": "^1.0.0", + "@octokit/plugin-rest-endpoint-methods": "2.4.0", "@octokit/request": "^5.2.0", "@octokit/request-error": "^1.0.2", "atob-lite": "^2.0.0", @@ -209,9 +307,9 @@ } }, "@octokit/types": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@octokit/types/-/types-2.0.1.tgz", - "integrity": "sha512-YDYgV6nCzdGdOm7wy43Ce8SQ3M5DMKegB8E5sTB/1xrxOdo2yS/KgUgML2N2ZGD621mkbdrAglwTyA4NDOlFFA==", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-2.7.0.tgz", + "integrity": "sha512-XGXXXccfWP+YYXNXtW7xS8b/J/EPDWfBXlMQIZWTZ7EcOA3o8ywhZqWcPb8MvbIcPP14duoIgnXpxXevNisRCQ==", "dev": true, "requires": { "@types/node": ">= 8" @@ -428,9 +526,9 @@ "dev": true }, "abab": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.2.tgz", - "integrity": "sha512-2scffjvioEmNz0OyDSLGWDfKCVwaKc6l9Pm9kOIREU13ClXZvHpg/nRL5xyjSSSLhOnXqft2HpsAzNEEA8cFFg==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.3.tgz", + "integrity": "sha512-tsFzPpcttalNjFBCFMqsKYQcWxxen1pgJR56by//QwvJc4/OUS3kPOOttx2tSIfjsylB0pYu7f5D3K1RCxUnUg==", "dev": true }, "abbrev": { @@ -440,9 +538,9 @@ "dev": true }, "acorn": { - "version": "5.7.3", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz", - "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==", + "version": "5.7.4", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.4.tgz", + "integrity": "sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==", "dev": true }, "acorn-globals": { @@ -456,9 +554,9 @@ }, "dependencies": { "acorn": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.3.0.tgz", - "integrity": "sha512-/czfa8BwS88b9gWQVhc8eknunSA2DoJpJyTQkhheIf5E48u1N0R4q/YxxsAeqRrmK9TQ/uYfgLDfZo91UlANIA==", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", + "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", "dev": true } } @@ -470,12 +568,12 @@ "dev": true }, "ajv": { - "version": "6.10.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.2.tgz", - "integrity": "sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw==", + "version": "6.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.0.tgz", + "integrity": "sha512-D6gFiFA0RRLyUbvijN74DWAjXSFxWKaWP7mldxkVhyhAV3+SWA9HEJPHQ2c9soIeTFJqcSdFDGFgdqs1iUU2Hw==", "dev": true, "requires": { - "fast-deep-equal": "^2.0.1", + "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", "json-schema-traverse": "^0.4.1", "uri-js": "^4.2.2" @@ -630,9 +728,9 @@ "dev": true }, "autorest": { - "version": "2.0.4407", - "resolved": "https://registry.npmjs.org/autorest/-/autorest-2.0.4407.tgz", - "integrity": "sha512-keyeMDb/bVNN8hnDd8o08UC2C1OE8HRhubxksljSvKM5osHIJnoKBA1k3kD7MPAJ/+m6UjDQXci3ronxZeYy+Q==", + "version": "2.0.4413", + "resolved": "https://registry.npmjs.org/autorest/-/autorest-2.0.4413.tgz", + "integrity": "sha512-Ttx/O6Yag5q8fpJDvllgf/joLuVPBySkbAqDF7+9jAmscCPQplYjA9H/N12bwkhh+6YR3ugWZHQq3NTN33hkAg==", "dev": true }, "aws-sign2": { @@ -642,9 +740,9 @@ "dev": true }, "aws4": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", - "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==", + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.9.1.tgz", + "integrity": "sha512-wMHVg2EOHaMRxbzgFJ9gtjOOCrI80OHLG14rxi28XwOW8ux6IiEbRCGGGqCtdAIg4FQCbW20k9RsT4y3gJlFug==", "dev": true }, "balanced-match": { @@ -775,9 +873,9 @@ } }, "browser-process-hrtime": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-0.1.3.tgz", - "integrity": "sha512-bRFnI4NnjO6cnyLmOV/7PVoDEMJChlcfN0z4s1YMBY989/SvlfMI1lgCnkFUs53e9gQF+w7qu7XdllSTiSl8Aw==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", + "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", "dev": true }, "browser-stdout": { @@ -909,6 +1007,34 @@ "wrap-ansi": "^5.1.0" } }, + "clone-deep": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", + "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + }, + "dependencies": { + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } + } + }, "code-point-at": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", @@ -992,9 +1118,9 @@ } }, "commander": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.19.0.tgz", - "integrity": "sha512-6tvAOO+D6OENvRAh524Dh9jcfKTYDQAqvqezbCW82xj5X0pSrcpxtvRKHLG0yBY6SD7PSDrJaj+0AiOcKVd1Xg==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", "dev": true }, "comment-json": { @@ -1057,9 +1183,9 @@ "dev": true }, "core-js": { - "version": "2.6.10", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.10.tgz", - "integrity": "sha512-I39t74+4t+zau64EN1fE5v2W31Adtc/REhzWN+gWRRXg6WH5qAsZm62DHpQ1+Yhe4047T55jvzz7MUqF/dBBlA==", + "version": "2.6.11", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz", + "integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==", "dev": true }, "core-util-is": { @@ -1659,9 +1785,9 @@ "dev": true }, "env-variable": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/env-variable/-/env-variable-0.0.5.tgz", - "integrity": "sha512-zoB603vQReOFvTg5xMl9I1P2PnHsHQQKTEowsKKD7nseUfJq6UWzK+4YtlWUO1nhiQUxe6XMkk+JleSZD1NZFA==", + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/env-variable/-/env-variable-0.0.6.tgz", + "integrity": "sha512-bHz59NlBbtS0NhftmR8+ExBEekE7br0e01jw+kk0NDro7TtZzBYZ5ScGPs3OmwnpyfHTHOtr1Y6uedCdrIldtg==", "dev": true }, "error-ex": { @@ -1713,24 +1839,18 @@ "dev": true }, "escodegen": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.12.0.tgz", - "integrity": "sha512-TuA+EhsanGcme5T3R0L80u4t8CpbXQjegRmf7+FPTJrtCTErXFeelblRgHQa1FofEzqYYJmJ/OqjTwREp9qgmg==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.1.tgz", + "integrity": "sha512-Bmt7NcRySdIfNPfU2ZoXDrrXsG9ZjvDxcAlMfDUgRBjLOWTuIACXPBFJH7Z+cLb40JeQco5toikyc9t9P8E9SQ==", "dev": true, "requires": { - "esprima": "^3.1.3", + "esprima": "^4.0.1", "estraverse": "^4.2.0", "esutils": "^2.0.2", "optionator": "^0.8.1", "source-map": "~0.6.1" }, "dependencies": { - "esprima": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", - "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", - "dev": true - }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -1949,9 +2069,9 @@ "dev": true }, "fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz", + "integrity": "sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==", "dev": true }, "fast-glob": { @@ -1969,9 +2089,9 @@ } }, "fast-json-stable-stringify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", - "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", "dev": true }, "fast-levenshtein": { @@ -2077,9 +2197,9 @@ "dev": true }, "formidable": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/formidable/-/formidable-1.2.1.tgz", - "integrity": "sha512-Fs9VRguL0gqGHkXS5GQiMCr1VhZBxz0JnJs4JmMp/2jL18Fmbzvv7vOFRU+U8TBkHEE/CX1qDXzJplVULgsLeg==", + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/formidable/-/formidable-1.2.2.tgz", + "integrity": "sha512-V8gLm+41I/8kguQ4/o1D3RIHRmhYFG4pnNyonvua+40rqcEmT4+V71yaZ3B457xbbgCsCfjSPi65u/W6vK1U5Q==", "dev": true }, "fragment-cache": { @@ -2220,6 +2340,14 @@ "ignore": "^4.0.3", "pify": "^4.0.1", "slash": "^2.0.0" + }, + "dependencies": { + "slash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", + "dev": true + } } }, "graceful-fs": { @@ -2229,12 +2357,12 @@ "dev": true }, "graphlib": { - "version": "2.1.7", - "resolved": "https://registry.npmjs.org/graphlib/-/graphlib-2.1.7.tgz", - "integrity": "sha512-TyI9jIy2J4j0qgPmOOrHTCtpPqJGN/aurBwc6ZT+bRii+di1I+Wv3obRhVrmBEXet+qkMaEX67dXrwsd3QQM6w==", + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/graphlib/-/graphlib-2.1.8.tgz", + "integrity": "sha512-jcLLfkpoVGmH7/InMC/1hIvOPSUh38oJtGhvrOFGzioE1DZ+0YW16RgmOJhHiuWTvGiJQ9Z1Ik43JvkRPRvE+A==", "dev": true, "requires": { - "lodash": "^4.17.5" + "lodash": "^4.17.15" } }, "growl": { @@ -2244,17 +2372,24 @@ "dev": true }, "handlebars": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.5.1.tgz", - "integrity": "sha512-C29UoFzHe9yM61lOsIlCE5/mQVGrnIOrOq7maQl76L7tYPCgC1og0Ajt6uWnX4ZTxBPnjw+CUvawphwCfJgUnA==", + "version": "4.7.6", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.6.tgz", + "integrity": "sha512-1f2BACcBfiwAfStCKZNrUCgqNZkGsAT7UM3kkYtXuLo0KnaVfjKOyf7PRzB6++aK9STyT1Pd2ZCPe3EGOXleXA==", "dev": true, "requires": { + "minimist": "^1.2.5", "neo-async": "^2.6.0", - "optimist": "^0.6.1", "source-map": "^0.6.1", - "uglify-js": "^3.1.4" + "uglify-js": "^3.1.4", + "wordwrap": "^1.0.0" }, "dependencies": { + "minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -2347,9 +2482,9 @@ "dev": true }, "hosted-git-info": { - "version": "2.8.5", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.5.tgz", - "integrity": "sha512-kssjab8CvdXfcXMXVcvsXum4Hwdq9XGtRD3TteMEvEbq0LXyiNQr6AprqKqfeaDXze7SxWvRxdpwE6ku7ikLkg==", + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", + "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", "dev": true }, "html-encoding-sniffer": { @@ -2711,9 +2846,9 @@ "dev": true }, "js-base64": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.5.1.tgz", - "integrity": "sha512-M7kLczedRMYX4L8Mdh4MzyAMM9O5osx+4FcOQuTvr3A9F2D9S5JXheN0ewNbrvK2UatkTRhL5ejGmGSjNMiZuw==", + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.5.2.tgz", + "integrity": "sha512-Vg8czh0Q7sFBSUMWWArX/miJeBWYBPpdU/3M/DKSaekLMqrqVPaedp+5mZhie/r0lgrcaYBfwXatEew6gwgiQQ==", "dev": true }, "js-xxhash": { @@ -2799,18 +2934,18 @@ } }, "json-refs": { - "version": "3.0.13", - "resolved": "https://registry.npmjs.org/json-refs/-/json-refs-3.0.13.tgz", - "integrity": "sha512-/FJ+BJ6BASjmNsBJHE8qMVj46HTS2Pfq5gI5BQRhyUsdrw9HaHRWSOsOh87deTOyWMtGas5Qr8H6ikrcWHdZbw==", + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/json-refs/-/json-refs-3.0.15.tgz", + "integrity": "sha512-0vOQd9eLNBL18EGl5yYaO44GhixmImes2wiYn9Z3sag3QnehWrYWlB9AFtMxCL2Bj3fyxgDYkxGFEU/chlYssw==", "dev": true, "requires": { - "commander": "~2.19.0", - "graphlib": "^2.1.7", - "js-yaml": "^3.13.0", - "lodash": "^4.17.11", + "commander": "~4.1.1", + "graphlib": "^2.1.8", + "js-yaml": "^3.13.1", + "lodash": "^4.17.15", "native-promise-only": "^0.8.1", "path-loader": "^1.0.10", - "slash": "^2.0.0", + "slash": "^3.0.0", "uri-js": "^4.2.2" } }, @@ -2821,13 +2956,13 @@ "dev": true }, "json-schema-faker": { - "version": "0.5.0-rc23", - "resolved": "https://registry.npmjs.org/json-schema-faker/-/json-schema-faker-0.5.0-rc23.tgz", - "integrity": "sha512-lRzFEnp55TihRzMvUBrtvTlM/aHGhCwfes0/T9bN9OiB2n36/SUFxtMn7anYoES+f95eU3viJ/foXKosCwsiJw==", + "version": "0.5.0-rcv.24", + "resolved": "https://registry.npmjs.org/json-schema-faker/-/json-schema-faker-0.5.0-rcv.24.tgz", + "integrity": "sha512-qwuRwv7dnUdqdwuifb6kJAVUKm0mzi4h/mzvMwDKxyWUzjxFCdVH/g9IfKxvc4M7rvAavr8pcx9uO1PNIIWE0g==", "dev": true, "requires": { "json-schema-ref-parser": "^6.1.0", - "jsonpath-plus": "^1.0.0", + "jsonpath-plus": "^2.0.0", "randexp": "^0.5.3" } }, @@ -2883,9 +3018,9 @@ } }, "jsonpath-plus": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/jsonpath-plus/-/jsonpath-plus-1.1.0.tgz", - "integrity": "sha512-ydqTBOuLcFCUr9e7AxJlKCFgxzEQ03HjnIim0hJSdk2NxD8MOsaMOrRgP6XWEm5q3VuDY5+cRT1DM9vLlGo/qA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/jsonpath-plus/-/jsonpath-plus-2.0.0.tgz", + "integrity": "sha512-ksXaz9+3SIZ5BMxgr7MQueYcR515VRZPuoDhIymUd1JcF6BnVaYJS7k4NJni4EHhvJaOIGGiPqT8+ifsGp6mBw==", "dev": true }, "jsonschema": { @@ -2913,9 +3048,9 @@ } }, "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", "dev": true }, "kuler": { @@ -2953,9 +3088,9 @@ } }, "linq": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/linq/-/linq-3.2.1.tgz", - "integrity": "sha512-BEhjQpbvrKPWlg5m/+PXTHsQoXzzR0UWCvgI8Hm+WtUMtTwPvw9Tay5CWfqsWSVk81wqbHNDFpFXyqBmm4/dqA==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/linq/-/linq-3.2.2.tgz", + "integrity": "sha512-AtVkCFwg7dizILt88ent7Bng1OLAnKMWBOLo9Kh7ZPFK8OcfYGi2FEzmr66QJtV7uBYZVf19AbVs0B14rIUi+w==", "dev": true }, "load-json-file": { @@ -3171,18 +3306,18 @@ "dev": true }, "mime-db": { - "version": "1.40.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", - "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==", + "version": "1.43.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.43.0.tgz", + "integrity": "sha512-+5dsGEEovYbT8UY9yD7eE4XTc4UwJ1jBYlgaQQF38ENsKR3wj/8q8RFZrF9WIZpB2V1ArTVFUva8sAul1NzRzQ==", "dev": true }, "mime-types": { - "version": "2.1.24", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz", - "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==", + "version": "2.1.26", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.26.tgz", + "integrity": "sha512-01paPWYgLrkqAyrlDorC1uDwl2p3qZT7yl806vW7DvDoxwXi46jsjFbg+WdwotBIk6/MbEhO/dh5aZ5sNj/dWQ==", "dev": true, "requires": { - "mime-db": "1.40.0" + "mime-db": "1.43.0" } }, "mimic-fn": { @@ -3201,9 +3336,9 @@ } }, "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", "dev": true }, "mixin-deep": { @@ -3480,9 +3615,9 @@ "dev": true }, "ms-rest": { - "version": "2.5.3", - "resolved": "https://registry.npmjs.org/ms-rest/-/ms-rest-2.5.3.tgz", - "integrity": "sha512-p0CnzrTzEkS8UTEwgCqT2O5YVK9E8KGBBlJVm3hFtMZvf0dmncKYXWFPyUa4PAsfBL7h4jfu39tOIFTu6exntg==", + "version": "2.5.4", + "resolved": "https://registry.npmjs.org/ms-rest/-/ms-rest-2.5.4.tgz", + "integrity": "sha512-VeqCbawxRM6nhw0RKNfj7TWL7SL8PB6MypqwgylXCi+u412uvYoyY/kSmO8n06wyd8nIcnTbYToCmSKFMI1mCg==", "dev": true, "requires": { "duplexer": "^0.1.1", @@ -3603,31 +3738,33 @@ "dev": true }, "oav": { - "version": "0.19.6", - "resolved": "https://registry.npmjs.org/oav/-/oav-0.19.6.tgz", - "integrity": "sha512-JAATj7YPAm7v7ciPNn3MlnHHsd6GrTPyOJRqW6adWzUg2UQ8zor4jJuotNmsCes5Xq01MqbYOnTEwc/U+or2XA==", + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/oav/-/oav-0.21.3.tgz", + "integrity": "sha512-awuRELCkelWdrGFpvEwH4Oi4Wwe9fm8677UM36grRMdaLbNOxXkvG4VhywbD7g8fVhk17vahOiXiEQ4iMx0e7A==", "dev": true, "requires": { - "@azure/openapi-markdown": "^0.9.0", + "@azure/openapi-markdown": "^0.9.2", "@microsoft.azure/autorest-extension-base": "1.0.13", "@ts-common/commonmark-to-markdown": "^1.2.0", "@ts-common/iterator": "^0.3.6", "@ts-common/json": "^0.3.1", - "@ts-common/json-parser": "^0.8.0", + "@ts-common/json-parser": "^0.9.0", "@ts-common/property-set": "^0.1.0", "@ts-common/source-map": "^0.5.0", "@ts-common/string-map": "^0.3.0", - "@ts-common/virtual-fs": "^0.2.0", + "@ts-common/virtual-fs": "^0.3.0", "@types/jsonpath": "^0.2.0", "commonmark": "^0.29.0", "glob": "^5.0.15", "globby": "^9.2.0", + "handlebars": "^4.7.1", "js-yaml": "^3.13.1", "json-pointer": "^0.6.0", "json-refs": "^3.0.13", "jsonpath": "^1.0.1", + "kind-of": "^6.0.3", "linq": "^3.2.0", - "lodash": "^4.17.11", + "lodash": "^4.17.15", "md5-file": "^4.0.0", "moment": "^2.24.0", "ms-rest": "^2.5.0", @@ -3636,11 +3773,78 @@ "vscode-jsonrpc": "^3.6.2", "winston": "^3.2.1", "yargs": "^6.6.0", - "yasway": "^1.8.4", + "yasway": "^1.9.3", "yuml2svg": "^4.2.1", - "z-schema": "^4.1.0" + "z-schema": "^4.2.2" }, "dependencies": { + "@azure/openapi-markdown": { + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/@azure/openapi-markdown/-/openapi-markdown-0.9.2.tgz", + "integrity": "sha512-EhjABbBzHAPK8K88Ya7yHdIKjcU2WSiclIuXSDqs/mYAUym4Z9o7lvIi0Li+mUhFaLAh2V4+OzdIVUdTzJa0Fg==", + "dev": true, + "requires": { + "@ts-common/commonmark-to-markdown": "^1.2.0", + "@ts-common/iterator": "^0.3.1", + "@ts-common/string-map": "^0.3.0", + "@ts-common/virtual-fs": "^0.3.0", + "commonmark": "^0.28.1", + "js-yaml": "^3.13.1", + "tslib": "^1.9.3" + }, + "dependencies": { + "commonmark": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/commonmark/-/commonmark-0.28.1.tgz", + "integrity": "sha1-Buq41SM4uDn6Gi11rwCF7tGxvq4=", + "dev": true, + "requires": { + "entities": "~ 1.1.1", + "mdurl": "~ 1.0.1", + "minimist": "~ 1.2.0", + "string.prototype.repeat": "^0.2.0" + } + } + } + }, + "@ts-common/json-parser": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/@ts-common/json-parser/-/json-parser-0.9.0.tgz", + "integrity": "sha512-how0z/Ak7Bay+feIYfJFVV8UMw8Ky2Czoo5XwN7QigCOlN4HyW6wSNup4zrZ7t6NUB0002tW/+IOKCH2lAVJOg==", + "dev": true, + "requires": { + "@ts-common/add-position": "0.0.2", + "@ts-common/iterator": "^0.3.5", + "@ts-common/json": "^0.3.1", + "@ts-common/source-map": "^0.5.0", + "@ts-common/string-map": "^0.3.0", + "tslib": "^1.9.3" + } + }, + "@ts-common/virtual-fs": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@ts-common/virtual-fs/-/virtual-fs-0.3.0.tgz", + "integrity": "sha512-ryoXw52FTLhiexoNBA/hcAlW8gxPhrKEuZODgpCiF0wswNJdg/j+rCb9k1VppJdeIJ30b0Wg+2vPsrOrdnYTIw==", + "dev": true, + "requires": { + "@ts-common/fs": "^0.2.0", + "@ts-common/iterator": "^0.3.0", + "@types/async-retry": "^1.4.1", + "@types/node-fetch": "^2.5.5", + "async-retry": "^1.3.1", + "node-fetch": "^2.6.0" + } + }, + "@types/node-fetch": { + "version": "2.5.5", + "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.5.5.tgz", + "integrity": "sha512-IWwjsyYjGw+em3xTvWVQi5MgYKbRs0du57klfTaZkv/B24AEQ/p/IopNeqIYNy3EsfHOpg8ieQSDomPcsYMHpA==", + "dev": true, + "requires": { + "@types/node": "*", + "form-data": "^3.0.0" + } + }, "ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", @@ -3656,6 +3860,15 @@ "lodash": "^4.17.14" } }, + "async-retry": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/async-retry/-/async-retry-1.3.1.tgz", + "integrity": "sha512-aiieFW/7h3hY0Bq5d+ktDBejxuwR78vRu9hDUdR8rNhSaQ29VzPL4AoIRG7D/c7tdenwOcKvgPM6tIxB3cB6HA==", + "dev": true, + "requires": { + "retry": "0.12.0" + } + }, "camelcase": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", @@ -3673,6 +3886,17 @@ "wrap-ansi": "^2.0.0" } }, + "form-data": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.0.tgz", + "integrity": "sha512-CKMFDglpbMi6PyN+brwB9Q/GOw0eAnsrEZDgcsH5Krhz5Od/haKHAX0NmQfha2zPPz0JpWzA7GJHGSnvCRLWsg==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + } + }, "get-caller-file": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", @@ -3702,9 +3926,9 @@ } }, "readable-stream": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.4.0.tgz", - "integrity": "sha512-jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", "dev": true, "requires": { "inherits": "^2.0.3", @@ -3943,42 +4167,18 @@ "swagger-schema-official": "2.0.0-bab6bed" } }, - "optimist": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", - "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", - "dev": true, - "requires": { - "minimist": "~0.0.1", - "wordwrap": "~0.0.2" - }, - "dependencies": { - "minimist": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz", - "integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=", - "dev": true - }, - "wordwrap": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", - "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", - "dev": true - } - } - }, "optionator": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", - "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", "dev": true, "requires": { "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.4", + "fast-levenshtein": "~2.0.6", "levn": "~0.3.0", "prelude-ls": "~1.1.2", "type-check": "~0.3.2", - "wordwrap": "~1.0.0" + "word-wrap": "~1.2.3" } }, "os-locale": { @@ -4104,9 +4304,9 @@ "dev": true }, "path-to-regexp": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.7.0.tgz", - "integrity": "sha1-Wf3g9DW62suhA6hOnTvGTpa5k30=", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", + "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", "dev": true, "requires": { "isarray": "0.0.1" @@ -4189,9 +4389,9 @@ "dev": true }, "prettier": { - "version": "1.18.2", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-1.18.2.tgz", - "integrity": "sha512-OeHeMc0JhFE9idD4ZdtNibzY0+TPHSpSSb9h8FqtP+YnoZZ1sl8Vc9b1sasjfymH3SonAF4QcA2+mzHPhMvIiw==", + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-1.19.1.tgz", + "integrity": "sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew==", "dev": true }, "process-nextick-args": { @@ -4201,9 +4401,9 @@ "dev": true }, "psl": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.4.0.tgz", - "integrity": "sha512-HZzqCGPecFLyoRj5HLfuDSKYTJkAfB5thKBIkRHtGjWwY7p1dAyveIbXIq4tO0KYfDF2tHqPUgY9SDnGm00uFw==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", "dev": true }, "pump": { @@ -4223,9 +4423,9 @@ "dev": true }, "qs": { - "version": "6.9.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.0.tgz", - "integrity": "sha512-27RP4UotQORTpmNQDX8BHPukOnBP3p1uUJY5UnDhaJB+rMt9iMsok724XL+UHU23bEFOHRMQ2ZhI99qOWUMGFA==", + "version": "6.9.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.3.tgz", + "integrity": "sha512-EbZYNarm6138UKKq46tdx08Yo/q9ZhFoAXAI1meAFd2GtbRDhbZY2WQSICskT0c5q99aFzLG1D4nvTk9tqfXIw==", "dev": true }, "randexp": { @@ -4308,9 +4508,9 @@ } }, "readable-stream": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", "dev": true, "requires": { "core-util-is": "~1.0.0", @@ -4345,9 +4545,9 @@ "dev": true }, "request": { - "version": "2.88.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", - "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", + "version": "2.88.2", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", "dev": true, "requires": { "aws-sign2": "~0.7.0", @@ -4357,7 +4557,7 @@ "extend": "~3.0.2", "forever-agent": "~0.6.1", "form-data": "~2.3.2", - "har-validator": "~5.1.0", + "har-validator": "~5.1.3", "http-signature": "~1.2.0", "is-typedarray": "~1.0.0", "isstream": "~0.1.2", @@ -4367,7 +4567,7 @@ "performance-now": "^2.1.0", "qs": "~6.5.2", "safe-buffer": "^5.1.2", - "tough-cookie": "~2.4.3", + "tough-cookie": "~2.5.0", "tunnel-agent": "^0.6.0", "uuid": "^3.3.2" }, @@ -4424,9 +4624,9 @@ "dev": true }, "resolve": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.12.0.tgz", - "integrity": "sha512-B/dOmuoAik5bKcD6s6nXDCjzUKnaDvdkRyAk6rsmsKLipWj4797iothd7jmmUhWTfinVMU+wc56rYKsit2Qy4w==", + "version": "1.15.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.15.1.tgz", + "integrity": "sha512-84oo6ZTtoTUpjgNEr5SJyzQhzL72gaRodsSfyxC/AXRvwu0Yse9H8eF9IpGo7b8YetZhlI6v7ZQ6bKBFV/6S7w==", "dev": true, "requires": { "path-parse": "^1.0.6" @@ -4527,6 +4727,15 @@ } } }, + "shallow-clone": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", + "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", + "dev": true, + "requires": { + "kind-of": "^6.0.2" + } + }, "shebang-command": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", @@ -4558,9 +4767,9 @@ } }, "slash": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", - "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", "dev": true }, "snapdragon": { @@ -4704,12 +4913,12 @@ "dev": true }, "source-map-resolve": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", - "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", + "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", "dev": true, "requires": { - "atob": "^2.1.1", + "atob": "^2.1.2", "decode-uri-component": "^0.2.0", "resolve-url": "^0.2.1", "source-map-url": "^0.4.0", @@ -4950,6 +5159,13 @@ "z-schema": "^3.24.2" }, "dependencies": { + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true, + "optional": true + }, "z-schema": { "version": "3.25.1", "resolved": "https://registry.npmjs.org/z-schema/-/z-schema-3.25.1.tgz", @@ -5032,21 +5248,13 @@ } }, "tough-cookie": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", - "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", "dev": true, "requires": { - "psl": "^1.1.24", - "punycode": "^1.4.1" - }, - "dependencies": { - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true - } + "psl": "^1.1.28", + "punycode": "^2.1.1" } }, "tr46": { @@ -5137,9 +5345,9 @@ "dev": true }, "uglify-js": { - "version": "3.6.7", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.6.7.tgz", - "integrity": "sha512-4sXQDzmdnoXiO+xvmTzQsfIiwrjUCSA95rSP4SEd8tDb51W2TiDOlL76Hl+Kw0Ie42PSItCW8/t6pBNCF2R48A==", + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.8.1.tgz", + "integrity": "sha512-W7KxyzeaQmZvUFbGj4+YFshhVrMBGSg2IbcYAjGWGvx8DHvJMclbTDMpffdxFUGPBHjIytk7KJUR/KUXstUGDw==", "dev": true, "optional": true, "requires": { @@ -5191,9 +5399,9 @@ } }, "universal-user-agent": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-4.0.0.tgz", - "integrity": "sha512-eM8knLpev67iBDizr/YtqkJsF3GK8gzDc6st/WKzrTuPtcsOKW/0IdL4cnMBsU69pOx0otavLWBDGTwg+dB0aA==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-4.0.1.tgz", + "integrity": "sha512-LnST3ebHwVL2aNe4mejI9IQh2HfZ1RLo8Io2HugSif8ekzD1TlWpHpColOB/eh8JHMLkGH3Akqf040I+4ylNxg==", "dev": true, "requires": { "os-name": "^3.1.0" @@ -5279,9 +5487,9 @@ "dev": true }, "uuid": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.3.tgz", - "integrity": "sha512-pW0No1RGHgzlpHJO1nsVrHKpOEIxkGg1xB+v0ZmdNH5OAeAwzAVrCnI2/6Mtx+Uys6iaylxa+D3g4j63IKKjSQ==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", "dev": true }, "validate-npm-package-license": { @@ -5330,12 +5538,12 @@ "dev": true }, "w3c-hr-time": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.1.tgz", - "integrity": "sha1-gqwr/2PZUOqeMYmlimViX+3xkEU=", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", + "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", "dev": true, "requires": { - "browser-process-hrtime": "^0.1.2" + "browser-process-hrtime": "^1.0.0" } }, "webidl-conversions": { @@ -5422,9 +5630,9 @@ } }, "windows-release": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/windows-release/-/windows-release-3.2.0.tgz", - "integrity": "sha512-QTlz2hKLrdqukrsapKsINzqMgOUpQW268eJ0OaOpJN32h272waxR9fkB9VoWRtK7uKHG5EHJcTXQBD8XZVJkFA==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/windows-release/-/windows-release-3.3.0.tgz", + "integrity": "sha512-2HetyTg1Y+R+rUgrKeUEhAG/ZuOmTrI1NBb3ZyAGQMYmOJjBBPe4MTodghRkmLJZHwkuPi02anbeGP+Zf401LQ==", "dev": true, "requires": { "execa": "^1.0.0" @@ -5454,6 +5662,12 @@ "triple-beam": "^1.2.0" } }, + "word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "dev": true + }, "wordwrap": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", @@ -5517,9 +5731,9 @@ "dev": true }, "yargs": { - "version": "13.3.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.0.tgz", - "integrity": "sha512-2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA==", + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", + "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", "dev": true, "requires": { "cliui": "^5.0.0", @@ -5531,13 +5745,13 @@ "string-width": "^3.0.0", "which-module": "^2.0.0", "y18n": "^4.0.0", - "yargs-parser": "^13.1.1" + "yargs-parser": "^13.1.2" } }, "yargs-parser": { - "version": "13.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.1.tgz", - "integrity": "sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ==", + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", "dev": true, "requires": { "camelcase": "^5.0.0", @@ -5709,14 +5923,14 @@ } }, "yasway": { - "version": "1.8.6", - "resolved": "https://registry.npmjs.org/yasway/-/yasway-1.8.6.tgz", - "integrity": "sha512-zRzjw9Jemtj+1NwAKjE+rExnG+2fY7KMM6PJRIOb8fO+tzq7EdCdp0iZ+O79F3J+/rOXoqFs+Tqa5oVSJq5m1g==", + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/yasway/-/yasway-1.9.3.tgz", + "integrity": "sha512-yXyP2XFcUljK1/mbQ0lOS815+CtCQr/yjKc9NGNjAbz9sabMACwQtYV66nC4T93P6K83uGxP5QKcmXWC15eVPA==", "dev": true, "requires": { "@ts-common/json": "^0.3.0", "@ts-common/string-map": "^0.3.0", - "@ts-common/z-schema": "^4.1.2", + "clone-deep": "^4.0.1", "debug": "^4.1.1", "faker": "^4.1.0", "istanbul": "^0.4.5", @@ -5728,28 +5942,10 @@ "native-promise-only": "^0.8.1", "path-to-regexp": "^1.7.0", "swagger-methods": "^1.0.8", - "swagger-schema-official": "2.0.0-bab6bed" + "swagger-schema-official": "2.0.0-bab6bed", + "z-schema": "^4.2.2" }, "dependencies": { - "@ts-common/z-schema": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/@ts-common/z-schema/-/z-schema-4.1.2.tgz", - "integrity": "sha512-PDMAza1jpnCpUUSSVf3LBtTyeo5s9xLQlD68gvW3B0j+RbnxYK9CHHCeLOZxBoKviBgr8+tps6ZVmUCcMSmiFw==", - "dev": true, - "requires": { - "commander": "^2.7.1", - "core-js": "^3.2.1", - "lodash.get": "^4.4.2", - "lodash.isequal": "^4.5.0", - "validator": "^11.0.0" - } - }, - "core-js": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.3.6.tgz", - "integrity": "sha512-u4oM8SHwmDuh5mWZdDg9UwNVq5s1uqq6ZDLLIs07VY+VJU91i3h4f3K/pgFvtUQPGdeStrZ+odKyfyt4EnKHfA==", - "dev": true - }, "debug": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", @@ -5758,12 +5954,6 @@ "requires": { "ms": "^2.1.1" } - }, - "validator": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/validator/-/validator-11.1.0.tgz", - "integrity": "sha512-qiQ5ktdO7CD6C/5/mYV4jku/7qnqzjrxb3C/Q5wR3vGGinHTgJZN/TdFT3ZX4vXhX2R1PXx42fB1cn5W+uJ4lg==", - "dev": true } } }, @@ -5785,9 +5975,9 @@ } }, "z-schema": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/z-schema/-/z-schema-4.2.1.tgz", - "integrity": "sha512-UWhAk5QzeIhks51TjHa6d4WexEokzbbwT+Dzq9yOBOx9sNnALo4hpYz9CfJ6IUE2cmzB0vWW3KHePYOfw3L4gQ==", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/z-schema/-/z-schema-4.2.2.tgz", + "integrity": "sha512-7bGR7LohxSdlK1EOdvA/OHksvKGE4jTLSjd8dBj9YKT0S43N9pdMZ0Z7GZt9mHrBFhbNTRh3Ky6Eu2MHsPJe8g==", "dev": true, "requires": { "commander": "^2.7.1", @@ -5796,6 +5986,13 @@ "validator": "^11.0.0" }, "dependencies": { + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true, + "optional": true + }, "validator": { "version": "11.1.0", "resolved": "https://registry.npmjs.org/validator/-/validator-11.1.0.tgz", diff --git a/package.json b/package.json index 682934dbd6ed..bfbf5eac4cd8 100644 --- a/package.json +++ b/package.json @@ -10,22 +10,22 @@ "description": "Tests for Azure REST API Specifications", "license": "MIT", "devDependencies": { - "@types/prettier": "^1.18.3", - "@azure/avocado": "^0.6.2", - "@azure/rest-api-specs-scripts": "^0.5.7", + "@azure/avocado": "^0.6.3", + "@azure/rest-api-specs-scripts": "^0.7.1", "@ts-common/commonmark-to-markdown": "^1.2.0", "@ts-common/fs": "0.2.0", "@ts-common/iterator": "^0.3.6", "@types/js-yaml": "^3.12.1", "@types/mocha": "^5.2.6", + "@types/prettier": "^1.18.3", "cspell": "^4.0.30", "js-yaml": "^3.13.1", "json-schema-ref-parser": "^6.1.0", "mocha": "*", + "prettier": "^1.19.1", "ts-node": "^8.1.0", "tslib": "^1.10.0", - "typescript": "3.5.3", - "prettier": "^1.18.2" + "typescript": "3.5.3" }, "homepage": "https://github.com/azure/azure-rest-api-specs", "repository": { diff --git a/preproduction-azure-pipelines.yml b/preproduction-azure-pipelines.yml index d2b59829aad7..0b307b098e70 100644 --- a/preproduction-azure-pipelines.yml +++ b/preproduction-azure-pipelines.yml @@ -2,16 +2,20 @@ name: "Preproduction CI for Azure Rest API specifications" trigger: none +pr: + autoCancel: false + variables: - TRAVIS: 'true' + TRAVIS: "true" TRAVIS_BRANCH: $(System.PullRequest.TargetBranch) TRAVIS_PULL_REQUEST: $(System.PullRequest.PullRequestNumber) TRAVIS_REPO_SLUG: $(Build.Repository.Name) TRAVIS_PULL_REQUEST_SLUG: $(Build.Repository.Name) TRAVIS_PULL_REQUEST_SHA: $(Build.SourceVersion) - PR_ONLY: 'true' - PREPRODUCTION_PIPELINE: 'true' + PR_ONLY: "true" + PREPRODUCTION_PIPELINE: "true" jobs: -- template: .azure-pipelines/BreakingChange.yml -- template: .azure-pipelines/ModelValidation.yml + - template: .azure-pipelines/BreakingChange.yml + - template: .azure-pipelines/ModelValidation.yml + - template: .azure-pipelines/LintDiff.yml diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/advisor.json b/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/advisor.json index a27ec8719e47..7f754143fda4 100644 --- a/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/advisor.json +++ b/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/advisor.json @@ -157,7 +157,9 @@ "description": "Advisor configuration name. Value must be 'default'", "required": true, "type": "string", - "enum": ["default"], + "enum": [ + "default" + ], "x-ms-enum": { "name": "ConfigurationName", "modelAsString": true @@ -262,7 +264,9 @@ "description": "Advisor configuration name. Value must be 'default'", "required": true, "type": "string", - "enum": ["default"], + "enum": [ + "default" + ], "x-ms-enum": { "name": "ConfigurationName", "modelAsString": true @@ -858,13 +862,18 @@ "description": "Advisor Digest configuration entity", "type": "object", "properties": { + "name": { + "description": "Name of digest configuration. Value is case-insensitive and must be unique within a subscription.", + "type": "string" + }, "actionGroupResourceId": { "description": "Action group resource id used by digest.", "type": "string" }, "frequency": { - "description": "Frequency that digest will be triggered. Value must conform to ISO 8601 standard and must be greater than equal to 7 day and less than or equal to 30 days.", - "type": "string" + "format": "int32", + "description": "Frequency that digest will be triggered, in days. Value must be between 7 and 30 days inclusive.", + "type": "integer" }, "categories": { "description": "Categories to send digest for. If categories are not provided, then digest will be sent for all categories.", @@ -887,6 +896,18 @@ "language": { "description": "Language for digest content body. Value must be ISO 639-1 code for one of Azure portal supported languages. Otherwise, it will be converted into one. Default value is English (en).", "type": "string" + }, + "state": { + "description": "State of digest configuration.", + "enum": [ + "Active", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "DigestConfigState", + "modelAsString": true + } } } }, @@ -1032,6 +1053,10 @@ "additionalProperties": { "type": "string" } + }, + "resourceMetadata": { + "$ref": "#/definitions/ResourceMetadata", + "description": "Metadata of resource that was assessed" } } }, @@ -1070,6 +1095,20 @@ } } }, + "ResourceMetadata": { + "description": "Recommendation resource metadata", + "type": "object", + "properties": { + "resourceId": { + "description": "Azure resource Id of the assessed resource", + "type": "string" + }, + "source": { + "description": "Source from which recommendation is generated", + "type": "string" + } + } + }, "OperationEntityListResult": { "description": "The list of Advisor operations.", "type": "object", diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/examples/CreateConfiguration.json b/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/examples/CreateConfiguration.json index 0fca0235a9a8..89c602edafc0 100644 --- a/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/examples/CreateConfiguration.json +++ b/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/examples/CreateConfiguration.json @@ -9,8 +9,9 @@ "exclude": true, "digests": [ { + "name": "digestConfigName", "actionGroupResourceId": "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/microsoft.insights/actionGroups/actionGroupName", - "frequency": "P30D", + "frequency": 30, "categories": [ "HighAvailability", "Security", @@ -18,7 +19,8 @@ "Cost", "OperationalExcellence" ], - "language": "en" + "language": "en", + "state": "Active" } ] } @@ -36,8 +38,9 @@ "exclude": true, "digests": [ { + "name": "digestConfigName", "actionGroupResourceId": "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/microsoft.insights/actionGroups/actionGroupName", - "frequency": "P30D", + "frequency": 30, "categories": [ "HighAvailability", "Security", @@ -45,11 +48,12 @@ "Cost", "OperationalExcellence" ], - "language": "en" + "language": "en", + "state": "Active" } ] } } } } -} \ No newline at end of file +} diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/examples/GetRecommendationDetail.json b/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/examples/GetRecommendationDetail.json index 3d359b754275..505f0a253642 100644 --- a/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/examples/GetRecommendationDetail.json +++ b/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/examples/GetRecommendationDetail.json @@ -10,15 +10,19 @@ "id": "/resourceUri/providers/Microsoft.Advisor/recommendations/recommendationId", "name": "recommendationId", "properties": { - "category": "HighAvailability", + "category": "Security", "impact": "Medium", - "impactedField": "Microsoft.Compute/availabilitySets", + "impactedField": "Microsoft.Compute/virtualMachines", "impactedValue": "armavset", "lastUpdated": "2017-02-24T22:24:43.3216408Z", "risk": "Warning", "shortDescription": { - "problem": "This availability set is not configured for fault tolerance", - "solution": "To ensure high availability add one or more virtual machines to this availability set" + "problem": "Monitoring agent is not installed on your machines", + "solution": "Monitoring agent should be installed on your machines" + }, + "resourceMetadata": { + "resourceId": "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.Compute/virtualMachines/xyz", + "source": "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.Compute/virtualMachines/xyz/providers/Microsoft.Security/assessments/assessmentGuid" } }, "type": "Microsoft.Advisor/recommendations" diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/examples/ListConfigurations.json b/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/examples/ListConfigurations.json index 256e6795202f..338c67ebfaa4 100644 --- a/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/examples/ListConfigurations.json +++ b/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/examples/ListConfigurations.json @@ -17,8 +17,9 @@ "exclude": false, "digests": [ { + "name": "digestConfigName", "actionGroupResourceId": "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/microsoft.insights/actionGroups/actionGroupName", - "frequency": "P30D", + "frequency": 30, "categories": [ "HighAvailability", "Security", @@ -26,7 +27,8 @@ "Cost", "OperationalExcellence" ], - "language": "en" + "language": "en", + "state": "Active" } ] } @@ -36,4 +38,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/examples/ListRecommendations.json b/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/examples/ListRecommendations.json index 2d4ad35f625e..724337f2e708 100644 --- a/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/examples/ListRecommendations.json +++ b/specification/advisor/resource-manager/Microsoft.Advisor/stable/2020-01-01/examples/ListRecommendations.json @@ -10,8 +10,8 @@ "nextLink": "https://management.azure.com/subscriptions/subscriptionId/providers/Microsoft.Advisor/recommendations?api-version=2020-01-01&$top=10&$skiptoken=skiptoken", "value": [ { - "id": "/resourceUri/providers/Microsoft.Advisor/recommendations/recGUID", - "name": "recGUID", + "id": "/resourceUri/providers/Microsoft.Advisor/recommendations/recGUID1", + "name": "recGUID1", "properties": { "category": "HighAvailability", "impact": "Medium", @@ -22,6 +22,30 @@ "shortDescription": { "problem": "This availability set is not configured for fault tolerance", "solution": "To ensure high availability add one or more virtual machines to this availability set" + }, + "resourceMetadata": { + "resourceId": "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.Compute/availabilitysets/abc" + } + }, + "type": "Microsoft.Advisor/recommendations" + }, + { + "id": "/resourceUri/providers/Microsoft.Advisor/recommendations/recGUID2", + "name": "recGUID2", + "properties": { + "category": "Security", + "impact": "Medium", + "impactedField": "Microsoft.Compute/virtualMachines", + "impactedValue": "armavset", + "lastUpdated": "2017-02-24T22:24:43.3216408Z", + "risk": "Warning", + "shortDescription": { + "problem": "Monitoring agent is not installed on your machines", + "solution": "Monitoring agent should be installed on your machines" + }, + "resourceMetadata": { + "resourceId": "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.Compute/virtualMachines/xyz", + "source": "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.Compute/virtualMachines/xyz/providers/Microsoft.Security/assessments/assessmentGuid" } }, "type": "Microsoft.Advisor/recommendations" diff --git a/specification/advisor/resource-manager/readme.go.md b/specification/advisor/resource-manager/readme.go.md index 66a3806db5ad..e615fb396465 100644 --- a/specification/advisor/resource-manager/readme.go.md +++ b/specification/advisor/resource-manager/readme.go.md @@ -13,11 +13,21 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2020-01 - tag: package-2017-04 - tag: package-2017-03 - tag: package-2016-07-preview ``` +### Tag: package-2020-01 and go + +These settings apply only when `--tag=package-2020-01 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2020-01' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2020-01-01/$(namespace) +``` + ### Tag: package-2017-04 and go These settings apply only when `--tag=package-2017-04 --go` is specified on the command line. diff --git a/specification/alertsmanagement/resource-manager/readme.cli.md b/specification/alertsmanagement/resource-manager/readme.cli.md index 045547609823..960d761b0763 100644 --- a/specification/alertsmanagement/resource-manager/readme.cli.md +++ b/specification/alertsmanagement/resource-manager/readme.cli.md @@ -6,26 +6,25 @@ These settings apply only when `--cli` is specified on the command line. cli: namespace: azure.mgmt.alertsmanagement test-scenario: - - name: PutActionRule - - name: Create or update a Smart Detector alert rule - - name: Get a Smart Detector alert rule - - name: GetActionRuleById - - name: List alert rules - - name: GetActionRulesResourceGroupWide - - name: Resolve - - name: Get - - name: Resolve - - name: List Smart Detector alert rules - - name: GetById - - name: Summary - - name: List - - name: GetActionRulesSubscriptionWide - - name: ListAlerts - - name: MonService - - name: Patch alert rules - - name: PatchActionRule - - name: changestate - - name: Resolve - - name: Delete a Smart Detector alert rule - - name: DeleteActionRule + - name: /ActionRules/put/PutActionRule + - name: /SmartDetectorAlertRules/put/Create or update a Smart Detector alert rule + - name: /SmartDetectorAlertRules/get/Get a Smart Detector alert rule + - name: /ActionRules/get/GetActionRuleById + - name: /SmartDetectorAlertRules/get/List alert rules + - name: /ActionRules/get/GetActionRulesResourceGroupWide + - name: /SmartGroups/get/Resolve + - name: /SmartGroups/get/Get + - name: /SmartDetectorAlertRules/get/List Smart Detector alert rules + - name: /Alerts/get/GetById + - name: /Alerts/get/Summary + - name: /SmartGroups/get/List + - name: /ActionRules/get/GetActionRulesSubscriptionWide + - name: /Alerts/get/ListAlerts + - name: /Alerts/get/MonService + - name: /SmartDetectorAlertRules/patch/Patch alert rules + - name: /ActionRules/patch/PatchActionRule + - name: /SmartGroups/post/changestate + - name: /Alerts/post/Resolve + - name: /SmartDetectorAlertRules/delete/Delete a Smart Detector alert rule + - name: /ActionRules/delete/DeleteActionRule ``` diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/definitions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/definitions.json index 724ba4dec0d7..5a2330092a28 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/definitions.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/definitions.json @@ -1,8 +1,8 @@ { "swagger": "2.0", "info": { - "version": "1.0", - "title": "Definitions file" + "title": "Definitions file", + "version": "2018-06-01-preview" }, "paths": {}, "definitions": { diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/examples/ApiManagementServiceDeleteService.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/examples/ApiManagementServiceDeleteService.json index eccd0c8ba3c2..cd7085252076 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/examples/ApiManagementServiceDeleteService.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2018-06-01-preview/examples/ApiManagementServiceDeleteService.json @@ -18,7 +18,7 @@ "location": "West US", "etag": "AAAAAAFfhHY=", "properties": { - "publisherEmail": "sasolank@microsoft.com", + "publisherEmail": "contoso@live.com", "publisherName": "Microsoft", "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", "provisioningState": "Succeeded", diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimanagement.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimanagement.json new file mode 100644 index 000000000000..b963b693b11c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimanagement.json @@ -0,0 +1,718 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on entities like API, Product, and Subscription associated with your Azure API Management deployment.", + "version": "2019-12-01-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": {}, + "definitions": { + "ErrorFieldContract": { + "properties": { + "code": { + "type": "string", + "description": "Property level error code." + }, + "message": { + "type": "string", + "description": "Human-readable representation of property-level error." + }, + "target": { + "type": "string", + "description": "Property name." + } + }, + "description": "Error Field contract." + }, + "ErrorResponse": { + "properties": { + "error": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ErrorResponseBody", + "description": "Properties of the Error Response." + } + }, + "description": "Error Response." + }, + "ErrorResponseBody": { + "properties": { + "code": { + "type": "string", + "description": "Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response." + }, + "message": { + "type": "string", + "description": "Human-readable representation of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ErrorFieldContract" + }, + "description": "The list of invalid fields send in request, in case of validation error." + } + }, + "description": "Error Body contract." + }, + "RegionContract": { + "properties": { + "name": { + "type": "string", + "description": "Region name.", + "readOnly": true + }, + "isMasterRegion": { + "description": "whether Region is the master region.", + "type": "boolean" + }, + "isDeleted": { + "description": "whether Region is deleted.", + "type": "boolean" + } + }, + "description": "Region profile." + }, + "RegionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RegionContract" + }, + "description": "Lists of Regions." + }, + "count": { + "type": "integer", + "format": "int64", + "description": "Total record count number across all pages." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Lists Regions operation response details." + }, + "Resource": { + "description": "The Resource definition.", + "x-ms-azure-resource": true, + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource ID." + }, + "name": { + "type": "string", + "description": "Resource name.", + "readOnly": true + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type for API Management resource." + } + } + } + }, + "parameters": { + "AccessParameter": { + "name": "accessName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "access" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "AccessIdName" + }, + "description": "The identifier of the Access configuration.", + "x-ms-parameter-location": "method" + }, + "ApiIdParameter": { + "name": "apiId", + "in": "path", + "required": true, + "type": "string", + "description": "API identifier. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 80, + "x-ms-parameter-location": "method" + }, + "ApiIdRevParameter": { + "name": "apiId", + "in": "path", + "required": true, + "type": "string", + "description": "API revision identifier. Must be unique in the current API Management service instance. Non-current revision has ;rev=n as a suffix where n is the revision number.", + "minLength": 1, + "maxLength": 256, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Version of the API to be used with the client request." + }, + "ApiVersionSetIdParameter": { + "name": "versionSetId", + "in": "path", + "required": true, + "type": "string", + "description": "Api Version Set identifier. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 80, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "AttachmentIdParameter": { + "name": "attachmentId", + "in": "path", + "required": true, + "type": "string", + "description": "Attachment identifier within an Issue. Must be unique in the current Issue.", + "minLength": 1, + "maxLength": 256, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "AuthenticationServerIdParameter": { + "name": "authsid", + "in": "path", + "required": true, + "type": "string", + "description": "Identifier of the authorization server.", + "minLength": 1, + "maxLength": 80, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "BackendIdParameter": { + "name": "backendId", + "in": "path", + "required": true, + "type": "string", + "description": "Identifier of the Backend entity. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 80, + "x-ms-parameter-location": "method" + }, + "CacheIdParameter": { + "name": "cacheId", + "in": "path", + "required": true, + "type": "string", + "description": "Identifier of the Cache entity. Cache identifier (should be either 'default' or valid Azure region identifier).", + "minLength": 1, + "maxLength": 80, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "CertificateIdParameter": { + "name": "certificateId", + "in": "path", + "required": true, + "type": "string", + "description": "Identifier of the certificate entity. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 80, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "CommentIdParameter": { + "name": "commentId", + "in": "path", + "required": true, + "type": "string", + "description": "Comment identifier within an Issue. Must be unique in the current Issue.", + "minLength": 1, + "maxLength": 256, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "ConfigurationParameter": { + "name": "configurationName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "configuration" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "configurationIdName" + }, + "description": "The identifier of the Git Configuration Operation.", + "x-ms-parameter-location": "method" + }, + "DiagnosticIdParameter": { + "name": "diagnosticId", + "in": "path", + "required": true, + "type": "string", + "description": "Diagnostic identifier. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 80, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "EmailParameter": { + "name": "email", + "in": "path", + "required": true, + "type": "string", + "description": "Email identifier.", + "x-ms-parameter-location": "method" + }, + "GroupIdParameter": { + "name": "groupId", + "in": "path", + "required": true, + "type": "string", + "description": "Group identifier. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 256, + "x-ms-parameter-location": "method" + }, + "IdentityProviderNameParameter": { + "name": "identityProviderName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "facebook", + "google", + "microsoft", + "twitter", + "aad", + "aadB2C" + ], + "x-ms-enum": { + "name": "IdentityProviderType", + "modelAsString": true, + "values": [ + { + "value": "facebook", + "description": "Facebook as Identity provider." + }, + { + "value": "google", + "description": "Google as Identity provider." + }, + { + "value": "microsoft", + "description": "Microsoft Live as Identity provider." + }, + { + "value": "twitter", + "description": "Twitter as Identity provider." + }, + { + "value": "aad", + "description": "Azure Active Directory as Identity provider." + }, + { + "value": "aadB2C", + "description": "Azure Active Directory B2C as Identity provider." + } + ] + }, + "description": "Identity Provider Type identifier.", + "x-ms-parameter-location": "method" + }, + "IfMatchOptionalParameter": { + "name": "If-Match", + "in": "header", + "required": false, + "description": "ETag of the Entity. Not required when creating an entity, but required when updating an entity.", + "type": "string", + "x-ms-parameter-location": "method" + }, + "IfMatchRequiredParameter": { + "name": "If-Match", + "in": "header", + "required": true, + "description": "ETag of the Entity. ETag should match the current entity state from the header response of the GET request or it should be * for unconditional update.", + "type": "string", + "x-ms-parameter-location": "method" + }, + "IssueIdParameter": { + "name": "issueId", + "in": "path", + "required": true, + "type": "string", + "description": "Issue identifier. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 256, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "LocationNameParameter": { + "name": "locationName", + "in": "path", + "required": true, + "type": "string", + "description": "Location in which the API Management service is deployed. This is one of the Azure Regions like West US, East US, South Central US.", + "minLength": 1, + "x-ms-parameter-location": "method" + }, + "LoggerIdParameter": { + "name": "loggerId", + "in": "path", + "required": true, + "type": "string", + "maxLength": 256, + "pattern": "^[^*#&+:<>?]+$", + "description": "Logger identifier. Must be unique in the API Management service instance.", + "x-ms-parameter-location": "method" + }, + "NotificationNameParameter": { + "name": "notificationName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "RequestPublisherNotificationMessage", + "PurchasePublisherNotificationMessage", + "NewApplicationNotificationMessage", + "BCC", + "NewIssuePublisherNotificationMessage", + "AccountClosedPublisher", + "QuotaLimitApproachingPublisherNotificationMessage" + ], + "x-ms-enum": { + "name": "NotificationName", + "modelAsString": true, + "values": [ + { + "value": "RequestPublisherNotificationMessage", + "description": "The following email recipients and users will receive email notifications about subscription requests for API products requiring approval." + }, + { + "value": "PurchasePublisherNotificationMessage", + "description": "The following email recipients and users will receive email notifications about new API product subscriptions." + }, + { + "value": "NewApplicationNotificationMessage", + "description": "The following email recipients and users will receive email notifications when new applications are submitted to the application gallery." + }, + { + "value": "BCC", + "description": "The following recipients will receive blind carbon copies of all emails sent to developers." + }, + { + "value": "NewIssuePublisherNotificationMessage", + "description": "The following email recipients and users will receive email notifications when a new issue or comment is submitted on the developer portal." + }, + { + "value": "AccountClosedPublisher", + "description": "The following email recipients and users will receive email notifications when developer closes his account." + }, + { + "value": "QuotaLimitApproachingPublisherNotificationMessage", + "description": "The following email recipients and users will receive email notifications when subscription usage gets close to usage quota." + } + ] + }, + "description": "Notification Name Identifier.", + "x-ms-parameter-location": "method" + }, + "NotifySubscriptionStateChangeParameter": { + "name": "notify", + "in": "query", + "required": false, + "type": "boolean", + "description": "Notify change in Subscription State. \n - If false, do not send any email notification for change of state of subscription \n - If true, send email notification of change of state of subscription ", + "x-ms-parameter-location": "method" + }, + "OpenIdConnectIdParameter": { + "name": "opid", + "in": "path", + "required": true, + "type": "string", + "description": "Identifier of the OpenID Connect Provider.", + "maxLength": 256, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "OperationIdParameter": { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "Operation identifier within an API. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 80, + "x-ms-parameter-location": "method" + }, + "PolicyExportFormat": { + "name": "format", + "in": "query", + "required": false, + "type": "string", + "description": "Policy Export Format.", + "enum": [ + "xml", + "rawxml" + ], + "x-ms-enum": { + "name": "PolicyExportFormat", + "modelAsString": true, + "values": [ + { + "value": "xml", + "description": "The contents are inline and Content type is an XML document." + }, + { + "value": "rawxml", + "description": "The contents are inline and Content type is a non XML encoded policy document." + } + ] + }, + "default": "xml", + "x-ms-parameter-location": "method" + }, + "PolicyIdParameter": { + "name": "policyId", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "policy" + ], + "description": "The identifier of the Policy.", + "x-ms-enum": { + "modelAsString": true, + "name": "PolicyIdName" + }, + "x-ms-parameter-location": "method" + }, + "ProductIdParameter": { + "name": "productId", + "in": "path", + "required": true, + "type": "string", + "description": "Product identifier. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 256, + "x-ms-parameter-location": "method" + }, + "NamedValueIdParameter": { + "name": "namedValueId", + "in": "path", + "required": true, + "type": "string", + "description": "Identifier of the NamedValue.", + "maxLength": 256, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "QuotaCounterKeyParameter": { + "name": "quotaCounterKey", + "in": "path", + "required": true, + "type": "string", + "description": "Quota counter key identifier.This is the result of expression defined in counter-key attribute of the quota-by-key policy.For Example, if you specify counter-key=\"boo\" in the policy, then it’s accessible by \"boo\" counter key. But if it’s defined as counter-key=\"@(\"b\"+\"a\")\" then it will be accessible by \"ba\" key", + "x-ms-parameter-location": "method" + }, + "QuotaPeriodKeyParameter": { + "name": "quotaPeriodKey", + "in": "path", + "required": true, + "type": "string", + "description": "Quota period key identifier.", + "x-ms-parameter-location": "method" + }, + "ReleaseIdParameter": { + "name": "releaseId", + "in": "path", + "required": true, + "type": "string", + "description": "Release identifier within an API. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 80, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "SchemaIdParameter": { + "name": "schemaId", + "in": "path", + "required": true, + "type": "string", + "description": "Schema identifier within an API. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 80, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "ServiceNameParameter": { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the API Management service.", + "minLength": 1, + "maxLength": 50, + "pattern": "^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$", + "x-ms-parameter-location": "method" + }, + "SkipQueryParameter": { + "name": "$skip", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "Number of records to skip.", + "minimum": 0, + "x-ms-parameter-location": "method" + }, + "SubscriptionEntityIdParameter": { + "name": "sid", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription entity Identifier. The entity represents the association between a user and a product in API Management.", + "maxLength": 256, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "TagIdParameter": { + "name": "tagId", + "in": "path", + "required": true, + "type": "string", + "description": "Tag identifier. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 80, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "TagDescriptionIdParameter": { + "name": "tagDescriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Tag description identifier. Used when creating tagDescription for API/Tag association. Based on API and Tag names.", + "minLength": 1, + "maxLength": 80, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "TemplateNameParameter": { + "name": "templateName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "applicationApprovedNotificationMessage", + "accountClosedDeveloper", + "quotaLimitApproachingDeveloperNotificationMessage", + "newDeveloperNotificationMessage", + "emailChangeIdentityDefault", + "inviteUserNotificationMessage", + "newCommentNotificationMessage", + "confirmSignUpIdentityDefault", + "newIssueNotificationMessage", + "purchaseDeveloperNotificationMessage", + "passwordResetIdentityDefault", + "passwordResetByAdminNotificationMessage", + "rejectDeveloperNotificationMessage", + "requestDeveloperNotificationMessage" + ], + "x-ms-enum": { + "name": "TemplateName", + "modelAsString": true + }, + "description": "Email Template Name Identifier.", + "x-ms-parameter-location": "method" + }, + "TopQueryParameter": { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "Number of records to return.", + "minimum": 1, + "x-ms-parameter-location": "method" + }, + "UserIdParameter": { + "name": "userId", + "in": "path", + "required": true, + "type": "string", + "description": "User identifier. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 80, + "x-ms-parameter-location": "method" + }, + "GatewayIdParameter": { + "name": "gatewayId", + "in": "path", + "required": true, + "type": "string", + "description": "Gateway entity identifier. Must be unique in the current API Management service instance. Must not have value 'managed'", + "minLength": 1, + "maxLength": 80, + "x-ms-parameter-location": "method" + }, + "GatewayHostnameConfigurationIdParameter": { + "name": "hcId", + "in": "path", + "required": true, + "type": "string", + "description": "Gateway hostname configuration identifier. Must be unique in the scope of parent Gateway entity.", + "minLength": 1, + "maxLength": 80, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimapis.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimapis.json new file mode 100644 index 000000000000..4d144129c581 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimapis.json @@ -0,0 +1,4470 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on API entity and their Operations associated with your Azure API Management deployment.", + "version": "2019-12-01-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis": { + "get": { + "tags": [ + "Api" + ], + "operationId": "Api_ListByService", + "description": "Lists all APIs of the API Management service instance.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-create-apis" + }, + "x-ms-examples": { + "ApiManagementListApis": { + "$ref": "./examples/ApiManagementListApis.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| serviceUrl | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| path | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "tags", + "in": "query", + "required": false, + "type": "string", + "description": "Include tags in the response." + }, + { + "name": "expandApiVersionSet", + "in": "query", + "required": false, + "type": "boolean", + "description": "Include full ApiVersionSet resource in response" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Paged Result response of Apis.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ApiContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}": { + "head": { + "tags": [ + "Api" + ], + "operationId": "Api_GetEntityTag", + "description": "Gets the entity state (Etag) version of the API specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApi": { + "$ref": "./examples/ApiManagementHeadApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified API entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Api" + ], + "operationId": "Api_Get", + "description": "Gets the details of the API specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetApiContract": { + "$ref": "./examples/ApiManagementGetApiContract.json" + }, + "ApiManagementGetApiRevisionContract": { + "$ref": "./examples/ApiManagementGetApiRevision.json" + } + }, + "produces": [ + "application/json", + "application/vnd.sun.wadl+xml", + "application/vnd.swagger.doc+json", + "application/wsdl+xml", + "application/vnd.oai.openapi", + "application/vnd.oai.openapi+json" + ], + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified API entity.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Api" + ], + "operationId": "Api_CreateOrUpdate", + "description": "Creates new or updates existing specified API of the API Management service instance.", + "x-ms-examples": { + "ApiManagementCreateApiUsingOai3Import": { + "$ref": "./examples/ApiManagementCreateApiUsingOai3Import.json" + }, + "ApiManagementCreateApiUsingSwaggerImport": { + "$ref": "./examples/ApiManagementCreateApiUsingSwaggerImport.json" + }, + "ApiManagementCreateApiUsingWadlImport": { + "$ref": "./examples/ApiManagementCreateApiUsingWadlImport.json" + }, + "ApiManagementCreateSoapToRestApiUsingWsdlImport": { + "$ref": "./examples/ApiManagementCreateSoapToRestApiUsingWsdlImport.json" + }, + "ApiManagementCreateSoapPassThroughApiUsingWsdlImport": { + "$ref": "./examples/ApiManagementCreateSoapPassThroughApiUsingWsdlImport.json" + }, + "ApiManagementCreateApi": { + "$ref": "./examples/ApiManagementCreateApi.json" + }, + "ApiManagementCreateApiRevisionFromExistingApi": { + "$ref": "./examples/ApiManagementCreateApiRevisionFromExistingApi.json" + }, + "ApiManagementCreateApiNewVersionUsingExistingApi": { + "$ref": "./examples/ApiManagementCreateApiNewVersionUsingExistingApi.json" + }, + "ApiManagementCreateApiClone": { + "$ref": "./examples/ApiManagementCreateApiClone.json" + }, + "ApiManagementCreateApiWithOpenIdConnect": { + "$ref": "./examples/ApiManagementCreateApiWithOpenIdConnect.json" + }, + "ApiManagementCreateApiUsingImportOverrideServiceUrl": { + "$ref": "./examples/ApiManagementCreateApiUsingImportOverrideServiceUrl.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/ApiCreateOrUpdateParameter" + }, + "description": "Create or update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "API was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "202": { + "description": "Request to create or update API was accepted. Location header contains the URL where the status of the long running operation can be checked." + }, + "200": { + "description": "API was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "Api" + ], + "operationId": "Api_Update", + "description": "Updates the specified API of the API Management service instance.", + "x-ms-examples": { + "ApiManagementUpdateApi": { + "$ref": "./examples/ApiManagementUpdateApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/ApiUpdateContract" + }, + "description": "API Update Contract parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The API was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Api" + ], + "operationId": "Api_Delete", + "description": "Deletes the specified API of the API Management service instance.", + "x-ms-examples": { + "ApiManagementDeleteApi": { + "$ref": "./examples/ApiManagementDeleteApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "name": "deleteRevisions", + "in": "query", + "required": false, + "type": "boolean", + "description": "Delete all revisions of the Api." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The API was successfully deleted." + }, + "204": { + "description": "The API was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/revisions": { + "get": { + "tags": [ + "ApiRevision" + ], + "operationId": "ApiRevision_ListByService", + "description": "Lists all revisions of an API.", + "x-ms-examples": { + "ApiManagementListApiRevisions": { + "$ref": "./examples/ApiManagementListApiRevisions.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| apiRevision | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation returns a list of revision details.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiRevisionCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ApiRevisionContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/releases": { + "get": { + "tags": [ + "ApiRelease" + ], + "operationId": "ApiRelease_ListByService", + "description": "Lists all releases of an API. An API release is created when making an API Revision current. Releases are also used to rollback to previous revisions. Results will be paged and can be constrained by the $top and $skip parameters.", + "x-ms-examples": { + "ApiManagementListApiReleases": { + "$ref": "./examples/ApiManagementListApiReleases.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| notes | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation returns a list of API Releases.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiReleaseCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ApiReleaseContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/releases/{releaseId}": { + "head": { + "tags": [ + "ApiRelease" + ], + "operationId": "ApiRelease_GetEntityTag", + "description": "Returns the etag of an API release.", + "x-ms-examples": { + "ApiManagementHeadApiRelease": { + "$ref": "./examples/ApiManagementHeadApiRelease.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ReleaseIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Gets the entity state (Etag) version of the api release as specified by its identifier.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiRelease" + ], + "operationId": "ApiRelease_Get", + "description": "Returns the details of an API release.", + "x-ms-examples": { + "ApiManagementGetApiRelease": { + "$ref": "./examples/ApiManagementGetApiRelease.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ReleaseIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation returns the details of an API Release.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiReleaseContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiRelease" + ], + "operationId": "ApiRelease_CreateOrUpdate", + "description": "Creates a new Release for the API.", + "x-ms-examples": { + "ApiManagementCreateApiRelease": { + "$ref": "./examples/ApiManagementCreateApiRelease.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ReleaseIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/ApiReleaseContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Release was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiReleaseContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Release was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiReleaseContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "ApiRelease" + ], + "operationId": "ApiRelease_Update", + "description": "Updates the details of the release of the API specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateApiRelease": { + "$ref": "./examples/ApiManagementUpdateApiRelease.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ReleaseIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/ApiReleaseContract" + }, + "description": "API Release Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Release successfully updated" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiRelease" + ], + "operationId": "ApiRelease_Delete", + "description": "Deletes the specified release in the API.", + "x-ms-examples": { + "ApiManagementDeleteApiRelease": { + "$ref": "./examples/ApiManagementDeleteApiRelease.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ReleaseIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "API release successfully removed" + }, + "204": { + "description": "API release successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations": { + "get": { + "tags": [ + "ApiOperation" + ], + "operationId": "ApiOperation_ListByApi", + "description": "Lists a collection of the operations for the specified API.", + "x-ms-examples": { + "ApiManagementListApiOperations": { + "$ref": "./examples/ApiManagementListApiOperations.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| method | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| urlTemplate | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "tags", + "in": "query", + "required": false, + "type": "string", + "description": "Include tags in the response." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A collection of operation summary entities at the API level.", + "schema": { + "$ref": "./definitions.json#/definitions/OperationCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/OperationContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}": { + "head": { + "tags": [ + "ApiOperation" + ], + "operationId": "ApiOperation_GetEntityTag", + "description": "Gets the entity state (Etag) version of the API operation specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiOperation": { + "$ref": "./examples/ApiManagementHeadApiOperation.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified API operation entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiOperation" + ], + "operationId": "ApiOperation_Get", + "description": "Gets the details of the API Operation specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetApiOperation": { + "$ref": "./examples/ApiManagementGetApiOperation.json" + }, + "ApiManagementGetApiOperationPetStore": { + "$ref": "./examples/ApiManagementGetApiOperationPetStore.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Operation entity.", + "schema": { + "$ref": "./definitions.json#/definitions/OperationContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiOperation" + ], + "operationId": "ApiOperation_CreateOrUpdate", + "description": "Creates a new operation in the API or updates an existing one.", + "x-ms-examples": { + "ApiManagementCreateApiOperation": { + "$ref": "./examples/ApiManagementCreateApiOperation.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/OperationContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Operation was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/OperationContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Operation was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/OperationContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "ApiOperation" + ], + "operationId": "ApiOperation_Update", + "description": "Updates the details of the operation in the API specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateApiOperation": { + "$ref": "./examples/ApiManagementUpdateApiOperation.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/OperationUpdateContract" + }, + "description": "API Operation Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The operation was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiOperation" + ], + "operationId": "ApiOperation_Delete", + "description": "Deletes the specified operation in the API.", + "x-ms-examples": { + "ApiManagementDeleteApiOperation": { + "$ref": "./examples/ApiManagementDeleteApiOperation.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "API operation successfully removed" + }, + "204": { + "description": "API operation successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}/policies": { + "get": { + "tags": [ + "ApiOperationPolicy" + ], + "operationId": "ApiOperationPolicy_ListByOperation", + "description": "Get the list of policy configuration at the API Operation level.", + "x-ms-examples": { + "ApiManagementListApiOperationPolicies": { + "$ref": "./examples/ApiManagementListApiOperationPolicies.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Api Operations Policy Collection.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}/policies/{policyId}": { + "head": { + "tags": [ + "ApiOperationPolicy" + ], + "operationId": "ApiOperationPolicy_GetEntityTag", + "description": "Gets the entity state (Etag) version of the API operation policy specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiOperationPolicy": { + "$ref": "./examples/ApiManagementHeadApiOperationPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified API operation policy entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiOperationPolicy" + ], + "operationId": "ApiOperationPolicy_Get", + "description": "Get the policy configuration at the API Operation level.", + "x-ms-examples": { + "ApiManagementGetApiOperationPolicy": { + "$ref": "./examples/ApiManagementGetApiOperationPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyExportFormat" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Api Operation Policy information.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiOperationPolicy" + ], + "operationId": "ApiOperationPolicy_CreateOrUpdate", + "description": "Creates or updates policy configuration for the API Operation level.", + "x-ms-examples": { + "ApiManagementCreateApiOperationPolicy": { + "$ref": "./examples/ApiManagementCreateApiOperationPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "description": "The policy contents to apply." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Api Operation policy configuration was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Api Operation policy configuration of the tenant was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiOperationPolicy" + ], + "operationId": "ApiOperationPolicy_Delete", + "description": "Deletes the policy configuration at the Api Operation.", + "x-ms-examples": { + "ApiManagementDeleteApiOperationPolicy": { + "$ref": "./examples/ApiManagementDeleteApiOperationPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Policy successfully removed" + }, + "204": { + "description": "Policy successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}/tags": { + "get": { + "tags": [ + "ApiOperationTag" + ], + "operationId": "Tag_ListByOperation", + "description": "Lists all Tags associated with the Operation.", + "x-ms-examples": { + "ApiManagementListApiOperationTags": { + "$ref": "./examples/ApiManagementListApiOperationTags.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation returns a collection of tags associated with the Operation entity.", + "schema": { + "$ref": "./definitions.json#/definitions/TagCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/TagContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}/tags/{tagId}": { + "head": { + "tags": [ + "ApiOperationTag" + ], + "operationId": "Tag_GetEntityStateByOperation", + "description": "Gets the entity state version of the tag specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiOperationTag": { + "$ref": "./examples/ApiManagementHeadApiOperationTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Empty response body, ETag header entity state version.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiOperationTag" + ], + "operationId": "Tag_GetByOperation", + "description": "Get tag associated with the Operation.", + "x-ms-examples": { + "ApiManagementGetApiOperationTag": { + "$ref": "./examples/ApiManagementGetApiOperationTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Gets the details of the tag specified by its identifier.", + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiOperationTag" + ], + "operationId": "Tag_AssignToOperation", + "description": "Assign tag to the Operation.", + "x-ms-examples": { + "ApiManagementCreateApiOperationTag": { + "$ref": "./examples/ApiManagementCreateApiOperationTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Tag was assigned to the Operation.", + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + } + }, + "200": { + "description": "Tag is already assigned to the Operation.", + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiOperationTag" + ], + "operationId": "Tag_DetachFromOperation", + "description": "Detach the tag from the Operation.", + "x-ms-examples": { + "ApiManagementDeleteApiOperationTag": { + "$ref": "./examples/ApiManagementDeleteApiOperationTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Tag was successfully removed from Operation" + }, + "204": { + "description": "Tag successfully removed by previous request or does not exist in Operation" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/products": { + "get": { + "tags": [ + "ApiProduct" + ], + "operationId": "ApiProduct_ListByApis", + "description": "Lists all Products, which the API is part of.", + "x-ms-examples": { + "ApiManagementListApiProducts": { + "$ref": "./examples/ApiManagementListApiProducts.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation returns a collection of products which have the Api entity.", + "schema": { + "$ref": "./definitions.json#/definitions/ProductCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ProductContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/policies": { + "get": { + "tags": [ + "ApiPolicy" + ], + "operationId": "ApiPolicy_ListByApi", + "description": "Get the policy configuration at the API level.", + "x-ms-examples": { + "ApiManagementListApiPolicies": { + "$ref": "./examples/ApiManagementListApiPolicies.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Apis Policy Collection.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/policies/{policyId}": { + "head": { + "tags": [ + "ApiPolicy" + ], + "operationId": "ApiPolicy_GetEntityTag", + "description": "Gets the entity state (Etag) version of the API policy specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiPolicy": { + "$ref": "./examples/ApiManagementHeadApiPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified API Policy entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiPolicy" + ], + "operationId": "ApiPolicy_Get", + "description": "Get the policy configuration at the API level.", + "x-ms-examples": { + "ApiManagementGetApiPolicy": { + "$ref": "./examples/ApiManagementGetApiPolicy.json" + } + }, + "produces": [ + "application/json", + "application/vnd.ms-azure-apim.policy+xml", + "application/vnd.ms-azure-apim.policy.raw+xml" + ], + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyExportFormat" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Api Policy information.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiPolicy" + ], + "operationId": "ApiPolicy_CreateOrUpdate", + "description": "Creates or updates policy configuration for the API.", + "x-ms-examples": { + "ApiManagementCreateApiPolicy": { + "$ref": "./examples/ApiManagementCreateApiPolicy.json" + }, + "ApiManagementCreateApiPolicyNonXmlEncoded": { + "$ref": "./examples/ApiManagementCreateApiPolicyNonXmlEncoded.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "description": "The policy contents to apply." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Api policy configuration was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Api policy configuration of the tenant was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiPolicy" + ], + "operationId": "ApiPolicy_Delete", + "description": "Deletes the policy configuration at the Api.", + "x-ms-examples": { + "ApiManagementDeleteApiPolicy": { + "$ref": "./examples/ApiManagementDeleteApiPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the policy configuration at the API level." + }, + "204": { + "description": "Successfully deleted the policy configuration at the API level." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/schemas": { + "get": { + "tags": [ + "ApiSchema" + ], + "operationId": "ApiSchema_ListByApi", + "description": "Get the schema configuration at the API level.", + "x-ms-examples": { + "ApiManagementListApiSchemas": { + "$ref": "./examples/ApiManagementListApiSchemas.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| contentType | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Apis Schema Collection.", + "schema": { + "$ref": "./definitions.json#/definitions/SchemaCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/schemas/{schemaId}": { + "head": { + "tags": [ + "ApiSchema" + ], + "operationId": "ApiSchema_GetEntityTag", + "description": "Gets the entity state (Etag) version of the schema specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiSchema": { + "$ref": "./examples/ApiManagementHeadApiSchema.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SchemaIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified schema entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiSchema" + ], + "operationId": "ApiSchema_Get", + "description": "Get the schema configuration at the API level.", + "x-ms-examples": { + "ApiManagementGetApiSchema": { + "$ref": "./examples/ApiManagementGetApiSchema.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SchemaIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Api Schema information.", + "schema": { + "$ref": "./definitions.json#/definitions/SchemaContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiSchema" + ], + "operationId": "ApiSchema_CreateOrUpdate", + "description": "Creates or updates schema configuration for the API.", + "x-ms-examples": { + "ApiManagementCreateApiSchema": { + "$ref": "./examples/ApiManagementCreateApiSchema.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SchemaIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/SchemaContract" + }, + "description": "The schema contents to apply." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Request to create or update Api schema configuration was accepted. Location header contains the URL where the status of the long running operation can be checked." + }, + "201": { + "description": "Api schema configuration was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/SchemaContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Api schema configuration of the tenant was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/SchemaContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "delete": { + "tags": [ + "ApiSchema" + ], + "operationId": "ApiSchema_Delete", + "description": "Deletes the schema configuration at the Api.", + "x-ms-examples": { + "ApiManagementDeleteApiSchema": { + "$ref": "./examples/ApiManagementDeleteApiSchema.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SchemaIdParameter" + }, + { + "name": "force", + "in": "query", + "required": false, + "type": "boolean", + "description": "If true removes all references to the schema before deleting it." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the schema configuration at the API level." + }, + "204": { + "description": "Successfully deleted the schema configuration at the API level." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/diagnostics": { + "get": { + "tags": [ + "ApiDiagnostic" + ], + "operationId": "ApiDiagnostic_ListByService", + "description": "Lists all diagnostics of an API.", + "x-ms-examples": { + "ApiManagementListApiDiagnostics": { + "$ref": "./examples/ApiManagementListApiDiagnostics.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Paged Result response of diagnostics for an API.", + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/DiagnosticContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/diagnostics/{diagnosticId}": { + "head": { + "tags": [ + "ApiDiagnostic" + ], + "operationId": "ApiDiagnostic_GetEntityTag", + "description": "Gets the entity state (Etag) version of the Diagnostic for an API specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiDiagnostic": { + "$ref": "./examples/ApiManagementHeadApiDiagnostic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/DiagnosticIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation completed successfully.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiDiagnostic" + ], + "operationId": "ApiDiagnostic_Get", + "description": "Gets the details of the Diagnostic for an API specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetApiDiagnostic": { + "$ref": "./examples/ApiManagementGetApiDiagnostic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/DiagnosticIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Diagnostic entity.", + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiDiagnostic" + ], + "operationId": "ApiDiagnostic_CreateOrUpdate", + "description": "Creates a new Diagnostic for an API or updates an existing one.", + "x-ms-examples": { + "ApiManagementCreateApiDiagnostic": { + "$ref": "./examples/ApiManagementCreateApiDiagnostic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/DiagnosticIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Diagnostic was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Diagnostic was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "ApiDiagnostic" + ], + "operationId": "ApiDiagnostic_Update", + "description": "Updates the details of the Diagnostic for an API specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateApiDiagnostic": { + "$ref": "./examples/ApiManagementUpdateApiDiagnostic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/DiagnosticIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticContract" + }, + "description": "Diagnostic Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The Diagnostic was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiDiagnostic" + ], + "operationId": "ApiDiagnostic_Delete", + "description": "Deletes the specified Diagnostic from an API.", + "x-ms-examples": { + "ApiManagementDeleteApiDiagnostic": { + "$ref": "./examples/ApiManagementDeleteApiDiagnostic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/DiagnosticIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Diagnostic successfully removed" + }, + "204": { + "description": "Diagnostic successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues": { + "get": { + "tags": [ + "ApiIssue" + ], + "operationId": "ApiIssue_ListByService", + "description": "Lists all issues associated with the specified API.", + "x-ms-examples": { + "ApiManagementListApiIssues": { + "$ref": "./examples/ApiManagementListApiIssues.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| userId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| state | filter | eq | |
" + }, + { + "name": "expandCommentsAttachments", + "in": "query", + "required": false, + "type": "boolean", + "description": "Expand the comment attachments. " + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Paged Result response of issues for the API.", + "schema": { + "$ref": "./definitions.json#/definitions/IssueCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/IssueContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues/{issueId}": { + "head": { + "tags": [ + "ApiIssue" + ], + "operationId": "ApiIssue_GetEntityTag", + "description": "Gets the entity state (Etag) version of the Issue for an API specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiIssue": { + "$ref": "./examples/ApiManagementHeadApiIssue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation completed successfully.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiIssue" + ], + "operationId": "ApiIssue_Get", + "description": "Gets the details of the Issue for an API specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetApiIssue": { + "$ref": "./examples/ApiManagementGetApiIssue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "name": "expandCommentsAttachments", + "in": "query", + "required": false, + "type": "boolean", + "description": "Expand the comment attachments. " + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Issue entity.", + "schema": { + "$ref": "./definitions.json#/definitions/IssueContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiIssue" + ], + "operationId": "ApiIssue_CreateOrUpdate", + "description": "Creates a new Issue for an API or updates an existing one.", + "x-ms-examples": { + "ApiManagementCreateApiIssue": { + "$ref": "./examples/ApiManagementCreateApiIssue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/IssueContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "New api issue successfully added", + "schema": { + "$ref": "./definitions.json#/definitions/IssueContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Api issue successfully updated", + "schema": { + "$ref": "./definitions.json#/definitions/IssueContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "ApiIssue" + ], + "operationId": "ApiIssue_Update", + "description": "Updates an existing issue for an API.", + "x-ms-examples": { + "ApiManagementUpdateApiIssue": { + "$ref": "./examples/ApiManagementUpdateApiIssue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/IssueUpdateContract" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Api issue updated successfully" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiIssue" + ], + "operationId": "ApiIssue_Delete", + "description": "Deletes the specified Issue from an API.", + "x-ms-examples": { + "ApiManagementDeleteApiIssue": { + "$ref": "./examples/ApiManagementDeleteApiIssue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Issue successfully removed" + }, + "204": { + "description": "Issue successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues/{issueId}/comments": { + "get": { + "tags": [ + "ApiIssueComment" + ], + "operationId": "ApiIssueComment_ListByService", + "description": "Lists all comments for the Issue associated with the specified API.", + "x-ms-examples": { + "ApiManagementListApiIssueComments": { + "$ref": "./examples/ApiManagementListApiIssueComments.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| userId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Paged Result response of issue comments for the API.", + "schema": { + "$ref": "./definitions.json#/definitions/IssueCommentCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/IssueCommentContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues/{issueId}/comments/{commentId}": { + "head": { + "tags": [ + "ApiIssueComment" + ], + "operationId": "ApiIssueComment_GetEntityTag", + "description": "Gets the entity state (Etag) version of the issue Comment for an API specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiIssueComment": { + "$ref": "./examples/ApiManagementHeadApiIssueComment.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CommentIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation completed successfully.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiIssueComment" + ], + "operationId": "ApiIssueComment_Get", + "description": "Gets the details of the issue Comment for an API specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetApiIssueComment": { + "$ref": "./examples/ApiManagementGetApiIssueComment.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CommentIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified issue Comment entity.", + "schema": { + "$ref": "./definitions.json#/definitions/IssueCommentContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiIssueComment" + ], + "operationId": "ApiIssueComment_CreateOrUpdate", + "description": "Creates a new Comment for the Issue in an API or updates an existing one.", + "x-ms-examples": { + "ApiManagementCreateApiIssueComment": { + "$ref": "./examples/ApiManagementCreateApiIssueComment.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CommentIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/IssueCommentContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "New api issue comment successfully added", + "schema": { + "$ref": "./definitions.json#/definitions/IssueCommentContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Api issue comment successfully updated", + "schema": { + "$ref": "./definitions.json#/definitions/IssueCommentContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiIssueComment" + ], + "operationId": "ApiIssueComment_Delete", + "description": "Deletes the specified comment from an Issue.", + "x-ms-examples": { + "ApiManagementDeleteApiIssueComment": { + "$ref": "./examples/ApiManagementDeleteApiIssueComment.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CommentIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Comment successfully removed" + }, + "204": { + "description": "Comment successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues/{issueId}/attachments": { + "get": { + "tags": [ + "ApiIssueAttachment" + ], + "operationId": "ApiIssueAttachment_ListByService", + "description": "Lists all attachments for the Issue associated with the specified API.", + "x-ms-examples": { + "ApiManagementListApiIssueAttachments": { + "$ref": "./examples/ApiManagementListApiIssueAttachments.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| userId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Paged Result response of issue attachments for the API.", + "schema": { + "$ref": "./definitions.json#/definitions/IssueAttachmentCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/IssueAttachmentContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues/{issueId}/attachments/{attachmentId}": { + "head": { + "tags": [ + "ApiIssueAttachment" + ], + "operationId": "ApiIssueAttachment_GetEntityTag", + "description": "Gets the entity state (Etag) version of the issue Attachment for an API specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiIssueAttachment": { + "$ref": "./examples/ApiManagementHeadApiIssueAttachment.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AttachmentIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation completed successfully.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiIssueAttachment" + ], + "operationId": "ApiIssueAttachment_Get", + "description": "Gets the details of the issue Attachment for an API specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetApiIssueAttachment": { + "$ref": "./examples/ApiManagementGetApiIssueAttachment.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AttachmentIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified issue Attachment entity.", + "schema": { + "$ref": "./definitions.json#/definitions/IssueAttachmentContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiIssueAttachment" + ], + "operationId": "ApiIssueAttachment_CreateOrUpdate", + "description": "Creates a new Attachment for the Issue in an API or updates an existing one.", + "x-ms-examples": { + "ApiManagementCreateApiIssueAttachment": { + "$ref": "./examples/ApiManagementCreateApiIssueAttachment.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AttachmentIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/IssueAttachmentContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "New api issue attachment successfully added", + "schema": { + "$ref": "./definitions.json#/definitions/IssueAttachmentContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Api issue attachment successfully updated", + "schema": { + "$ref": "./definitions.json#/definitions/IssueAttachmentContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiIssueAttachment" + ], + "operationId": "ApiIssueAttachment_Delete", + "description": "Deletes the specified comment from an Issue.", + "x-ms-examples": { + "ApiManagementDeleteApiIssueAttachment": { + "$ref": "./examples/ApiManagementDeleteApiIssueAttachment.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AttachmentIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Attachment successfully removed" + }, + "204": { + "description": "Attachment successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/tagDescriptions": { + "get": { + "tags": [ + "ApiTagDescription" + ], + "operationId": "ApiTagDescription_ListByService", + "description": "Lists all Tags descriptions in scope of API. Model similar to swagger - tagDescription is defined on API level but tag may be assigned to the Operations", + "x-ms-examples": { + "ApiManagementListApiTagDescriptions": { + "$ref": "./examples/ApiManagementListApiTagDescriptions.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation returns a collection of tagDescriptions associated with the Api entity.", + "schema": { + "$ref": "./definitions.json#/definitions/TagDescriptionCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/TagDescriptionContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/tagDescriptions/{tagDescriptionId}": { + "head": { + "tags": [ + "ApiTagDescription" + ], + "operationId": "ApiTagDescription_GetEntityTag", + "description": "Gets the entity state version of the tag specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiTagDescription": { + "$ref": "./examples/ApiManagementHeadApiTagDescription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagDescriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Empty response body, ETag header entity state version.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiTagDescription" + ], + "operationId": "ApiTagDescription_Get", + "description": "Get Tag description in scope of API", + "x-ms-examples": { + "ApiManagementGetApiTagDescription": { + "$ref": "./examples/ApiManagementGetApiTagDescription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagDescriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Gets the description of the tag specified by its identifier in scope if the Api.", + "schema": { + "$ref": "./definitions.json#/definitions/TagDescriptionContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiTagDescription" + ], + "operationId": "ApiTagDescription_CreateOrUpdate", + "description": "Create/Update tag description in scope of the Api.", + "x-ms-examples": { + "ApiManagementCreateApiTagDescription": { + "$ref": "./examples/ApiManagementCreateApiTagDescription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagDescriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/TagDescriptionCreateParameters" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Tag Description was created for the Api.", + "schema": { + "$ref": "./definitions.json#/definitions/TagDescriptionContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Tag Description was updated for the Api.", + "schema": { + "$ref": "./definitions.json#/definitions/TagDescriptionContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiTagDescription" + ], + "operationId": "ApiTagDescription_Delete", + "description": "Delete tag description for the Api.", + "x-ms-examples": { + "ApiManagementDeleteApiTagDescription": { + "$ref": "./examples/ApiManagementDeleteApiTagDescription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagDescriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Tag description successfully removed" + }, + "204": { + "description": "Tag description successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/tags": { + "get": { + "tags": [ + "ApiTag" + ], + "operationId": "Tag_ListByApi", + "description": "Lists all Tags associated with the API.", + "x-ms-examples": { + "ApiManagementListApiTags": { + "$ref": "./examples/ApiManagementListApiTags.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation returns a collection of tags associated with the Api entity.", + "schema": { + "$ref": "./definitions.json#/definitions/TagCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/TagContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/tags/{tagId}": { + "head": { + "tags": [ + "ApiTag" + ], + "operationId": "Tag_GetEntityStateByApi", + "description": "Gets the entity state version of the tag specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiTag": { + "$ref": "./examples/ApiManagementHeadApiTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Empty response body, ETag header entity state version.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiTag" + ], + "operationId": "Tag_GetByApi", + "description": "Get tag associated with the API.", + "x-ms-examples": { + "ApiManagementGetApiTag": { + "$ref": "./examples/ApiManagementGetApiTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Gets the details of the tag specified by its identifier.", + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiTag" + ], + "operationId": "Tag_AssignToApi", + "description": "Assign tag to the Api.", + "x-ms-examples": { + "ApiManagementCreateApiTag": { + "$ref": "./examples/ApiManagementCreateApiTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Tag was assigned to the Api.", + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Tag is already assigned to the Api.", + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiTag" + ], + "operationId": "Tag_DetachFromApi", + "description": "Detach the tag from the Api.", + "x-ms-examples": { + "ApiManagementDeleteApiTag": { + "$ref": "./examples/ApiManagementDeleteApiTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "API/Tag association successfully removed" + }, + "204": { + "description": "API/Tag association successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operationsByTags": { + "get": { + "tags": [ + "ApiOperationsByTag" + ], + "operationId": "Operation_ListByTags", + "description": "Lists a collection of operations associated with tags.", + "x-ms-examples": { + "ApiManagementListApiOperationsByTags": { + "$ref": "./examples/ApiManagementListApiOperationsByTags.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| apiName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| method | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| urlTemplate | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "includeNotTaggedOperations", + "in": "query", + "required": false, + "type": "boolean", + "description": "Include not tagged Operations." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of TagResource entities.", + "schema": { + "$ref": "./definitions.json#/definitions/TagResourceCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/TagResourceContract" + } + } + }, + "x-ms-paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}?export=true": { + "get": { + "tags": [ + "Apis" + ], + "operationId": "ApiExport_Get", + "description": "Gets the details of the API specified by its identifier in the format specified to the Storage Blob with SAS Key valid for 5 minutes.", + "x-ms-examples": { + "ApiManagementGetApiExportInOpenApi2dot0": { + "$ref": "./examples/ApiManagementGetApiExportInOpenApi2dot0.json" + }, + "ApiManagementGetApiExportInOpenApi3dot0": { + "$ref": "./examples/ApiManagementGetApiExportInOpenApi3dot0.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "name": "format", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "swagger-link", + "wadl-link", + "wsdl-link", + "openapi-link", + "openapi+json-link" + ], + "x-ms-enum": { + "name": "ExportFormat", + "modelAsString": true, + "values": [ + { + "value": "swagger-link", + "description": "Export the Api Definition in OpenApi Specification 2.0 format to the Storage Blob.", + "name": "Swagger" + }, + { + "value": "wsdl-link", + "description": "Export the Api Definition in WSDL Schema to Storage Blob. This is only supported for APIs of Type `soap`", + "name": "Wsdl" + }, + { + "value": "wadl-link", + "description": "Export the Api Definition in WADL Schema to Storage Blob.", + "name": "Wadl" + }, + { + "value": "openapi-link", + "description": "Export the Api Definition in OpenApi Specification 3.0 to Storage Blob.", + "name": "Openapi" + }, + { + "value": "openapi+json-link", + "description": "Export the Api Definition in OpenApi Specification 3.0 as JSON document to Storage Blob.", + "name": "OpenapiJson" + } + ] + }, + "description": "Format in which to export the Api Details to the Storage Blob with Sas Key valid for 5 minutes." + }, + { + "name": "export", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "true" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "ExportApi" + }, + "description": "Query parameter required to export the API details." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response contains a stream with a full set of API metadata and includes API entity with an embedded array of operation entities.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimapisByTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimapisByTags.json new file mode 100644 index 000000000000..cdb1ee2d4e0f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimapisByTags.json @@ -0,0 +1,106 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing retrieve a collection of Apis associated with a tag in Azure API Management deployment.", + "version": "2019-12-01-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apisByTags": { + "get": { + "tags": [ + "ApisByTag" + ], + "operationId": "Api_ListByTags", + "description": "Lists a collection of apis associated with tags.", + "x-ms-examples": { + "ApiManagementListApisByTags": { + "$ref": "./examples/ApiManagementListApisByTags.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Supported operators | Supported functions |\n|-------------|------------------------|-----------------------------------|\n\r\n|name | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith|\n|displayName | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith|\n|apiRevision | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith|\n|path | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith|\n|description | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith|\n|serviceUrl | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith|\n|isCurrent | eq | |\n" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "includeNotTaggedApis", + "in": "query", + "required": false, + "type": "boolean", + "description": "Include not tagged APIs." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of TagResource entities.", + "schema": { + "$ref": "./definitions.json#/definitions/TagResourceCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/TagResourceContract" + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimapiversionsets.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimapiversionsets.json new file mode 100644 index 000000000000..77e771aebfa4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimapiversionsets.json @@ -0,0 +1,367 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on the ApiVersionSet entity associated with your Azure API Management deployment. Using this entity you create and manage API Version Sets that are used to group APIs for consistent versioning.", + "version": "2019-12-01-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apiVersionSets": { + "get": { + "tags": [ + "ApiVersionSet" + ], + "operationId": "ApiVersionSet_ListByService", + "description": "Lists a collection of API Version Sets in the specified service instance.", + "x-ms-examples": { + "ApiManagementListApiVersionSets": { + "$ref": "./examples/ApiManagementListApiVersionSets.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Api Version Set entities.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiVersionSetCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ApiVersionSetContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apiVersionSets/{versionSetId}": { + "head": { + "tags": [ + "ApiVersionSet" + ], + "operationId": "ApiVersionSet_GetEntityTag", + "description": "Gets the entity state (Etag) version of the Api Version Set specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiVersionSet": { + "$ref": "./examples/ApiManagementHeadApiVersionSet.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionSetIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified Api Version Set entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiVersionSet" + ], + "operationId": "ApiVersionSet_Get", + "description": "Gets the details of the Api Version Set specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetApiVersionSet": { + "$ref": "./examples/ApiManagementGetApiVersionSet.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionSetIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Gets the specified Api Version Set entity.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiVersionSetContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiVersionSet" + ], + "operationId": "ApiVersionSet_CreateOrUpdate", + "description": "Creates or Updates a Api Version Set.", + "x-ms-examples": { + "ApiManagementCreateApiVersionSet": { + "$ref": "./examples/ApiManagementCreateApiVersionSet.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionSetIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/ApiVersionSetContract" + }, + "description": "Create or update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Api Version Set was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiVersionSetContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Api Version Set was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiVersionSetContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "ApiVersionSet" + ], + "operationId": "ApiVersionSet_Update", + "description": "Updates the details of the Api VersionSet specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateApiVersionSet": { + "$ref": "./examples/ApiManagementUpdateApiVersionSet.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionSetIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/ApiVersionSetUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The Api Version Set details were successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiVersionSets" + ], + "operationId": "ApiVersionSet_Delete", + "description": "Deletes specific Api Version Set.", + "x-ms-examples": { + "ApiManagementDeleteApiVersionSet": { + "$ref": "./examples/ApiManagementDeleteApiVersionSet.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionSetIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The ApiVersion Set details were successfully deleted." + }, + "204": { + "description": "The ApiVersion Set details were successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimauthorizationservers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimauthorizationservers.json new file mode 100644 index 000000000000..21dc77a26941 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimauthorizationservers.json @@ -0,0 +1,412 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for managing OAuth2 servers configuration in your Azure API Management deployment. OAuth 2.0 can be used to authorize developer accounts for Azure API Management. For more information refer to [How to OAuth2](https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-oauth2).", + "version": "2019-12-01-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/authorizationServers": { + "get": { + "tags": [ + "AuthorizationServer" + ], + "operationId": "AuthorizationServer_ListByService", + "description": "Lists a collection of authorization servers defined within a service instance.", + "x-ms-examples": { + "ApiManagementListAuthorizationServers": { + "$ref": "./examples/ApiManagementListAuthorizationServers.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A Collection of the Authorization Server entities for the specified API Management service instance.", + "schema": { + "$ref": "./definitions.json#/definitions/AuthorizationServerCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/AuthorizationServerContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/authorizationServers/{authsid}": { + "head": { + "tags": [ + "AuthorizationServer" + ], + "operationId": "AuthorizationServer_GetEntityTag", + "description": "Gets the entity state (Etag) version of the authorizationServer specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadAuthorizationServer": { + "$ref": "./examples/ApiManagementHeadAuthorizationServer.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AuthenticationServerIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified authorization server entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "AuthorizationServer" + ], + "operationId": "AuthorizationServer_Get", + "description": "Gets the details of the authorization server specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetAuthorizationServer": { + "$ref": "./examples/ApiManagementGetAuthorizationServer.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AuthenticationServerIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Gets the details of the specified authorization server.", + "schema": { + "$ref": "./definitions.json#/definitions/AuthorizationServerContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "AuthorizationServer" + ], + "operationId": "AuthorizationServer_CreateOrUpdate", + "description": "Creates new authorization server or updates an existing authorization server.", + "x-ms-examples": { + "ApiManagementCreateAuthorizationServer": { + "$ref": "./examples/ApiManagementCreateAuthorizationServer.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AuthenticationServerIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/AuthorizationServerContract" + }, + "description": "Create or update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Authorization server was successfully registered.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/AuthorizationServerContract" + } + }, + "200": { + "description": "Authorization server is already registered.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/AuthorizationServerContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "AuthorizationServer" + ], + "operationId": "AuthorizationServer_Update", + "description": "Updates the details of the authorization server specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateAuthorizationServer": { + "$ref": "./examples/ApiManagementUpdateAuthorizationServer.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AuthenticationServerIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/AuthorizationServerUpdateContract" + }, + "description": "OAuth2 Server settings Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The authorization server settings were successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "AuthorizationServer" + ], + "operationId": "AuthorizationServer_Delete", + "description": "Deletes specific authorization server instance.", + "x-ms-examples": { + "ApiManagementDeleteAuthorizationServer": { + "$ref": "./examples/ApiManagementDeleteAuthorizationServer.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AuthenticationServerIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The authorization server settings were successfully deleted." + }, + "204": { + "description": "The authorization server settings were successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/authorizationServers/{authsid}/listSecrets": { + "post": { + "tags": [ + "AuthorizationServer" + ], + "operationId": "AuthorizationServer_ListSecrets", + "description": "Gets the client secret details of the authorization server.", + "x-ms-examples": { + "ApiManagementListSecretsAuthorizationServer": { + "$ref": "./examples/ApiManagementListSecretsAuthorizationServer.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AuthenticationServerIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the client secret.", + "schema": { + "$ref": "./definitions.json#/definitions/ClientSecretContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimbackends.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimbackends.json new file mode 100644 index 000000000000..d3260f326e3c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimbackends.json @@ -0,0 +1,421 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Backend entity in Azure API Management deployment. The Backend entity in API Management represents a backend service that is configured to skip certification chain validation when using a self-signed certificate to test mutual certificate authentication.", + "version": "2019-12-01-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/backends": { + "get": { + "tags": [ + "Backend" + ], + "operationId": "Backend_ListByService", + "description": "Lists a collection of backends in the specified service instance.", + "x-ms-examples": { + "ApiManagementListBackends": { + "$ref": "./examples/ApiManagementListBackends.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| title | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| url | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Backend entities.", + "schema": { + "$ref": "./definitions.json#/definitions/BackendCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/BackendContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/backends/{backendId}": { + "head": { + "tags": [ + "Backend" + ], + "operationId": "Backend_GetEntityTag", + "description": "Gets the entity state (Etag) version of the backend specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadBackend": { + "$ref": "./examples/ApiManagementHeadBackend.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/BackendIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified backend entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Backend" + ], + "operationId": "Backend_Get", + "description": "Gets the details of the backend specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetBackend": { + "$ref": "./examples/ApiManagementGetBackend.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/BackendIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Backend entity.", + "schema": { + "$ref": "./definitions.json#/definitions/BackendContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Backend" + ], + "operationId": "Backend_CreateOrUpdate", + "description": "Creates or Updates a backend.", + "x-ms-examples": { + "ApiManagementCreateBackendServiceFabric": { + "$ref": "./examples/ApiManagementCreateBackendServiceFabric.json" + }, + "ApiManagementCreateBackendProxyBackend": { + "$ref": "./examples/ApiManagementCreateBackendProxyBackend.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/BackendIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/BackendContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Backend was successfully created.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/BackendContract" + } + }, + "200": { + "description": "The existing backend was successfully updated.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/BackendContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Backend" + ], + "operationId": "Backend_Update", + "description": "Updates an existing backend.", + "x-ms-examples": { + "ApiManagementUpdateBackend": { + "$ref": "./examples/ApiManagementUpdateBackend.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/BackendIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/BackendUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The existing backend was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Backend" + ], + "operationId": "Backend_Delete", + "description": "Deletes the specified backend.", + "x-ms-examples": { + "ApiManagementDeleteBackend": { + "$ref": "./examples/ApiManagementDeleteBackend.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/BackendIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The backend was successfully deleted." + }, + "204": { + "description": "The backend was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/backends/{backendId}/reconnect": { + "post": { + "tags": [ + "BackendReconnect" + ], + "operationId": "Backend_Reconnect", + "description": "Notifies the APIM proxy to create a new connection to the backend after the specified timeout. If no timeout was specified, timeout of 2 minutes is used.", + "x-ms-examples": { + "ApiManagementBackendReconnect": { + "$ref": "./examples/ApiManagementBackendReconnect.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/BackendIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "./definitions.json#/definitions/BackendReconnectContract" + }, + "description": "Reconnect request parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Reconnect request accepted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimcaches.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimcaches.json new file mode 100644 index 000000000000..f0e081da3b05 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimcaches.json @@ -0,0 +1,363 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Cache entity in your Azure API Management deployment. Azure API Management also allows for caching responses in an external Azure Cache for Redis. For more information refer to [External Redis Cache in ApiManagement](https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-cache-external).", + "version": "2019-12-01-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/caches": { + "get": { + "tags": [ + "Cache" + ], + "operationId": "Cache_ListByService", + "description": "Lists a collection of all external Caches in the specified service instance.", + "x-ms-examples": { + "ApiManagementListCaches": { + "$ref": "./examples/ApiManagementListCaches.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Returns a collection of Cache entity.", + "schema": { + "$ref": "./definitions.json#/definitions/CacheCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/caches/{cacheId}": { + "head": { + "tags": [ + "Cache" + ], + "operationId": "Cache_GetEntityTag", + "description": "Gets the entity state (Etag) version of the Cache specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadCache": { + "$ref": "./examples/ApiManagementHeadCache.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CacheIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified Cache entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Cache" + ], + "operationId": "Cache_Get", + "description": "Gets the details of the Cache specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetCache": { + "$ref": "./examples/ApiManagementGetCache.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CacheIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Cache entity.", + "schema": { + "$ref": "./definitions.json#/definitions/CacheContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Cache" + ], + "operationId": "Cache_CreateOrUpdate", + "description": "Creates or updates an External Cache to be used in Api Management instance.", + "externalDocs": { + "description": "Use an external cache in Azure API Management", + "url": "https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-cache-external" + }, + "x-ms-examples": { + "ApiManagementCreateCache": { + "$ref": "./examples/ApiManagementCreateCache.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CacheIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/CacheContract" + }, + "description": "Create or Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "The new Cache was successfully added.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/CacheContract" + } + }, + "200": { + "description": "The Cache details were successfully updated.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/CacheContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Cache" + ], + "operationId": "Cache_Update", + "description": "Updates the details of the cache specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateCache": { + "$ref": "./examples/ApiManagementUpdateCache.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CacheIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/CacheUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The cache details were successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Cache" + ], + "operationId": "Cache_Delete", + "description": "Deletes specific Cache.", + "x-ms-examples": { + "ApiManagementDeleteCache": { + "$ref": "./examples/ApiManagementDeleteCache.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CacheIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The Cache was successfully deleted." + }, + "204": { + "description": "The Cache was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimcertificates.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimcertificates.json new file mode 100644 index 000000000000..4296c76eb446 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimcertificates.json @@ -0,0 +1,319 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Certificate entity in your Azure API Management deployment. Certificates can be used to setup mutual authentication with your Backend in API Management. For more information refer to [How to secure backend using Mutual Auth Certificate](https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-mutual-certificates).", + "version": "2019-12-01-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/certificates": { + "get": { + "tags": [ + "Certificate" + ], + "operationId": "Certificate_ListByService", + "description": "Lists a collection of all certificates in the specified service instance.", + "x-ms-examples": { + "ApiManagementListCertificates": { + "$ref": "./examples/ApiManagementListCertificates.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| subject | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| thumbprint | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| expirationDate | filter | ge, le, eq, ne, gt, lt | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Returns a collection of Certificate entity.", + "schema": { + "$ref": "./definitions.json#/definitions/CertificateCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/CertificateContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/certificates/{certificateId}": { + "head": { + "tags": [ + "Certificate" + ], + "operationId": "Certificate_GetEntityTag", + "description": "Gets the entity state (Etag) version of the certificate specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadCertificate": { + "$ref": "./examples/ApiManagementHeadCertificate.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CertificateIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified certificate entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Certificate" + ], + "operationId": "Certificate_Get", + "description": "Gets the details of the certificate specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetCertificate": { + "$ref": "./examples/ApiManagementGetCertificate.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CertificateIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Certificate entity.", + "schema": { + "$ref": "./definitions.json#/definitions/CertificateContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Certificate" + ], + "operationId": "Certificate_CreateOrUpdate", + "description": "Creates or updates the certificate being used for authentication with the backend.", + "externalDocs": { + "description": "How to secure back-end services using client certificate authentication in Azure API Management", + "url": "https://azure.microsoft.com/en-us/documentation/articles/api-management-howto-mutual-certificates/" + }, + "x-ms-examples": { + "ApiManagementCreateCertificate": { + "$ref": "./examples/ApiManagementCreateCertificate.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CertificateIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/CertificateCreateOrUpdateParameters" + }, + "description": "Create or Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "The new certificate was successfully added.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/CertificateContract" + } + }, + "200": { + "description": "The certificate details were successfully updated.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/CertificateContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Certificate" + ], + "operationId": "Certificate_Delete", + "description": "Deletes specific certificate.", + "x-ms-examples": { + "ApiManagementDeleteCertificate": { + "$ref": "./examples/ApiManagementDeleteCertificate.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CertificateIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The certificate was successfully deleted." + }, + "204": { + "description": "The certificate was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimdeployment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimdeployment.json new file mode 100644 index 000000000000..d2c39f3c94fe --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimdeployment.json @@ -0,0 +1,1551 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs to manage Azure API Management deployment.", + "version": "2019-12-01-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": { + "/providers/Microsoft.ApiManagement/operations": { + "get": { + "tags": [ + "ApiManagementOperations" + ], + "description": "Lists all of the available REST API operations of the Microsoft.ApiManagement provider.", + "operationId": "ApiManagementOperations_List", + "x-ms-examples": { + "ApiManagementListOperations": { + "$ref": "./examples/ApiManagementListOperations.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of operations.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/skus": { + "get": { + "tags": [ + "ApiManagementServiceSkus" + ], + "summary": "Gets available SKUs for API Management service", + "description": "Gets all available SKU for a given API Management service", + "operationId": "ApiManagementServiceSkus_ListAvailableServiceSkus", + "x-ms-examples": { + "ApiManagementListSKUs-Dedicated": { + "$ref": "./examples/ApiManagementListSKUs-Dedicated.json" + }, + "ApiManagementListSKUs-Consumption": { + "$ref": "./examples/ApiManagementListSKUs-Consumption.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of SKUs.", + "schema": { + "$ref": "#/definitions/ResourceSkuResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/restore": { + "post": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_Restore", + "description": "Restores a backup of an API Management service created using the ApiManagementService_Backup operation on the current service. This is a long running operation and could take several minutes to complete.", + "x-ms-examples": { + "ApiManagementRestoreService": { + "$ref": "./examples/ApiManagementRestoreService.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApiManagementServiceBackupRestoreParameters" + }, + "description": "Parameters supplied to the Restore API Management service from backup operation." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully restored the backup onto the API Management service.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceResource" + } + }, + "202": { + "description": "Accepted: Location header contains the URL where the status of the long running operation can be checked." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/backup": { + "post": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_Backup", + "description": "Creates a backup of the API Management service to the given Azure Storage Account. This is long running operation and could take several minutes to complete.", + "x-ms-examples": { + "ApiManagementCreateBackup": { + "$ref": "./examples/ApiManagementCreateBackup.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApiManagementServiceBackupRestoreParameters" + }, + "description": "Parameters supplied to the ApiManagementService_Backup operation." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully backed up the API Management service to the storage account.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceResource" + } + }, + "202": { + "description": "Accepted: Location header contains the URL where the status of the long running operation can be checked." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}": { + "put": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_CreateOrUpdate", + "description": "Creates or updates an API Management service. This is long running operation and could take several minutes to complete.", + "x-ms-examples": { + "ApiManagementCreateService": { + "$ref": "./examples/ApiManagementCreateService.json" + }, + "ApiManagementCreateMultiRegionServiceWithCustomHostname": { + "$ref": "./examples/ApiManagementCreateMultiRegionServiceWithCustomHostname.json" + }, + "ApiManagementCreateServiceHavingMsi": { + "$ref": "./examples/ApiManagementCreateServiceHavingMsi.json" + }, + "ApiManagementCreateServiceWithSystemCertificates": { + "$ref": "./examples/ApiManagementCreateServiceWithSystemCertificates.json" + }, + "ApiManagementCreateServiceWithUserAssignedIdentity": { + "$ref": "./examples/ApiManagementCreateServiceWithUserAssignedIdentity.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApiManagementServiceResource" + }, + "description": "Parameters supplied to the CreateOrUpdate API Management service operation." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The service was successfully set up.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceResource" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/ApiManagementServiceResource" + } + }, + "202": { + "description": "Accepted the configuration change when updating the service." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_Update", + "description": "Updates an existing API Management service.", + "x-ms-examples": { + "ApiManagementUpdateServiceDisableTls10": { + "$ref": "./examples/ApiManagementUpdateServiceDisableTls10.json" + }, + "ApiManagementUpdateServicePublisherDetails": { + "$ref": "./examples/ApiManagementUpdateServicePublisherDetails.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApiManagementServiceUpdateParameters" + }, + "description": "Parameters supplied to the CreateOrUpdate API Management service operation." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The service was successfully updated.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceResource" + } + }, + "202": { + "description": "The service update request was Accepted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_Get", + "description": "Gets an API Management service resource description.", + "x-ms-examples": { + "ApiManagementServiceGetService": { + "$ref": "./examples/ApiManagementServiceGetService.json" + }, + "ApiManagementServiceGetServiceHavingMsi": { + "$ref": "./examples/ApiManagementServiceGetServiceHavingMsi.json" + }, + "ApiManagementServiceGetMultiRegionInternalVnet": { + "$ref": "./examples/ApiManagementServiceGetMultiRegionInternalVnet.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully got the API Management Service Resource.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_Delete", + "description": "Deletes an existing API Management service.", + "x-ms-examples": { + "ApiManagementServiceDeleteService": { + "$ref": "./examples/ApiManagementServiceDeleteService.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Service was successfully deleted." + }, + "202": { + "description": "The service delete request was Accepted.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceResource" + } + }, + "204": { + "description": "The service does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service": { + "get": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_ListByResourceGroup", + "description": "List all API Management services within a resource group.", + "x-ms-examples": { + "ApiManagementListServiceBySubscriptionAndResourceGroup": { + "$ref": "./examples/ApiManagementListServiceBySubscriptionAndResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The API Management service list.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ApiManagement/service": { + "get": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_List", + "description": "Lists all API Management services within an Azure subscription.", + "x-ms-examples": { + "ApiManagementListServiceBySubscription": { + "$ref": "./examples/ApiManagementListServiceBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The API Management service list.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/getssotoken": { + "post": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_GetSsoToken", + "description": "Gets the Single-Sign-On token for the API Management Service which is valid for 5 Minutes.", + "x-ms-examples": { + "ApiManagementServiceGetSsoToken": { + "$ref": "./examples/ApiManagementServiceGetSsoToken.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK if successful with the SSO Redirect URI.", + "schema": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApiManagementServiceGetSsoTokenResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ApiManagement/checkNameAvailability": { + "post": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_CheckNameAvailability", + "description": "Checks availability and correctness of a name for an API Management service.", + "x-ms-examples": { + "ApiManagementServiceCheckNameAvailability": { + "$ref": "./examples/ApiManagementServiceCheckNameAvailability.json" + } + }, + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApiManagementServiceCheckNameAvailabilityParameters" + }, + "description": "Parameters supplied to the CheckNameAvailability operation." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The result of check name availability.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceNameAvailabilityResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/applynetworkconfigurationupdates": { + "post": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_ApplyNetworkConfigurationUpdates", + "description": "Updates the Microsoft.ApiManagement resource running in the Virtual network to pick the updated network settings.", + "x-ms-examples": { + "ApiManagementApplyNetworkConfigurationUpdates": { + "$ref": "./examples/ApiManagementApplyNetworkConfigurationUpdates.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/ApiManagementServiceApplyNetworkConfigurationParameters" + }, + "description": "Parameters supplied to the Apply Network Configuration operation. If the parameters are empty, all the regions in which the Api Management service is deployed will be updated sequentially without incurring downtime in the region." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted: Location header contains the URL where the status of the long running operation can be checked." + }, + "200": { + "description": "Network configuration updates were successfully applied on the Api Management service.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "ResourceSkuResults": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceSkuResult" + }, + "description": "The list of skus available for the service." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of API Management service Skus." + } + }, + "required": [ + "value" + ], + "description": "The API Management service SKUs operation response." + }, + "ResourceSkuResult": { + "properties": { + "resourceType": { + "readOnly": true, + "type": "string", + "description": "The type of resource the SKU applies to." + }, + "sku": { + "$ref": "#/definitions/ResourceSku", + "readOnly": true, + "description": "Specifies API Management SKU." + }, + "capacity": { + "$ref": "#/definitions/ResourceSkuCapacity", + "readOnly": true, + "description": "Specifies the number of API Management units." + } + }, + "description": "Describes an available API Management service SKU." + }, + "ResourceSkuCapacity": { + "properties": { + "minimum": { + "type": "integer", + "readOnly": true, + "format": "int32", + "description": "The minimum capacity." + }, + "maximum": { + "type": "integer", + "readOnly": true, + "format": "int32", + "description": "The maximum capacity that can be set." + }, + "default": { + "type": "integer", + "readOnly": true, + "format": "int32", + "description": "The default capacity." + }, + "scaleType": { + "type": "string", + "readOnly": true, + "description": "The scale type applicable to the sku.", + "enum": [ + "automatic", + "manual", + "none" + ], + "x-ms-enum": { + "name": "ResourceSkuCapacityScaleType", + "modelAsString": true, + "values": [ + { + "value": "automatic", + "description": "Supported scale type automatic." + }, + { + "value": "manual", + "description": "Supported scale type manual." + }, + { + "value": "none", + "description": "Scaling not supported." + } + ] + } + } + }, + "description": "Describes scaling information of a SKU." + }, + "ResourceSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of the Sku.", + "externalDocs": { + "url": "https://azure.microsoft.com/en-us/pricing/details/api-management/" + }, + "enum": [ + "Developer", + "Standard", + "Premium", + "Basic", + "Consumption" + ], + "x-ms-enum": { + "name": "SkuType", + "modelAsString": true, + "values": [ + { + "value": "Developer", + "description": "Developer SKU of Api Management." + }, + { + "value": "Standard", + "description": "Standard SKU of Api Management." + }, + { + "value": "Premium", + "description": "Premium SKU of Api Management." + }, + { + "value": "Basic", + "description": "Basic SKU of Api Management." + }, + { + "value": "Consumption", + "description": "Consumption SKU of Api Management." + } + ] + } + } + }, + "description": "Describes an available API Management SKU." + }, + "CertificateInformation": { + "properties": { + "expiry": { + "type": "string", + "format": "date-time", + "description": "Expiration date of the certificate. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard." + }, + "thumbprint": { + "type": "string", + "description": "Thumbprint of the certificate." + }, + "subject": { + "type": "string", + "description": "Subject of the certificate." + } + }, + "required": [ + "expiry", + "thumbprint", + "subject" + ], + "description": "SSL certificate information." + }, + "CertificateConfiguration": { + "properties": { + "encodedCertificate": { + "type": "string", + "description": "Base64 Encoded certificate." + }, + "certificatePassword": { + "type": "string", + "description": "Certificate Password." + }, + "storeName": { + "description": "The System.Security.Cryptography.x509certificates.StoreName certificate store location. Only Root and CertificateAuthority are valid locations.", + "type": "string", + "enum": [ + "CertificateAuthority", + "Root" + ] + }, + "certificate": { + "$ref": "#/definitions/CertificateInformation", + "description": "Certificate information." + } + }, + "required": [ + "storeName" + ], + "description": "Certificate configuration which consist of non-trusted intermediates and root certificates." + }, + "HostnameConfiguration": { + "properties": { + "type": { + "type": "string", + "description": "Hostname type.", + "enum": [ + "Proxy", + "Portal", + "Management", + "Scm", + "DeveloperPortal" + ], + "x-ms-enum": { + "name": "HostnameType", + "modelAsString": true + } + }, + "hostName": { + "type": "string", + "description": "Hostname to configure on the Api Management service." + }, + "keyVaultId": { + "type": "string", + "description": "Url to the KeyVault Secret containing the Ssl Certificate. If absolute Url containing version is provided, auto-update of ssl certificate will not work. This requires Api Management service to be configured with MSI. The secret should be of type *application/x-pkcs12*" + }, + "encodedCertificate": { + "type": "string", + "description": "Base64 Encoded certificate." + }, + "certificatePassword": { + "type": "string", + "description": "Certificate Password." + }, + "defaultSslBinding": { + "type": "boolean", + "description": "Specify true to setup the certificate associated with this Hostname as the Default SSL Certificate. If a client does not send the SNI header, then this will be the certificate that will be challenged. The property is useful if a service has multiple custom hostname enabled and it needs to decide on the default ssl certificate. The setting only applied to Proxy Hostname Type.", + "default": false + }, + "negotiateClientCertificate": { + "type": "boolean", + "description": "Specify true to always negotiate client certificate on the hostname. Default Value is false.", + "default": false + }, + "certificate": { + "$ref": "#/definitions/CertificateInformation", + "description": "Certificate information." + } + }, + "required": [ + "type", + "hostName" + ], + "description": "Custom hostname configuration." + }, + "VirtualNetworkConfiguration": { + "properties": { + "vnetid": { + "readOnly": true, + "type": "string", + "description": "The virtual network ID. This is typically a GUID. Expect a null GUID by default." + }, + "subnetname": { + "readOnly": true, + "type": "string", + "description": "The name of the subnet." + }, + "subnetResourceId": { + "type": "string", + "pattern": "^/subscriptions/[^/]*/resourceGroups/[^/]*/providers/Microsoft.(ClassicNetwork|Network)/virtualNetworks/[^/]*/subnets/[^/]*$", + "description": "The full resource ID of a subnet in a virtual network to deploy the API Management service in." + } + }, + "description": "Configuration of a virtual network to which API Management service is deployed." + }, + "AdditionalLocation": { + "properties": { + "location": { + "type": "string", + "description": "The location name of the additional region among Azure Data center regions." + }, + "sku": { + "$ref": "#/definitions/ApiManagementServiceSkuProperties", + "description": "SKU properties of the API Management service." + }, + "publicIPAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "Public Static Load Balanced IP addresses of the API Management service in the additional location. Available only for Basic, Standard and Premium SKU." + }, + "privateIPAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "Private Static Load Balanced IP addresses of the API Management service which is deployed in an Internal Virtual Network in a particular additional location. Available only for Basic, Standard and Premium SKU." + }, + "virtualNetworkConfiguration": { + "$ref": "#/definitions/VirtualNetworkConfiguration", + "description": "Virtual network configuration for the location." + }, + "gatewayRegionalUrl": { + "type": "string", + "description": "Gateway URL of the API Management service in the Region.", + "readOnly": true + }, + "disableGateway": { + "type": "boolean", + "description": "Property only valid for an Api Management service deployed in multiple locations. This can be used to disable the gateway in this additional location.", + "default": false + } + }, + "required": [ + "location", + "sku" + ], + "description": "Description of an additional API Management resource location." + }, + "ApiManagementServiceBackupRestoreParameters": { + "properties": { + "storageAccount": { + "type": "string", + "description": "Azure Cloud Storage account (used to place/retrieve the backup) name." + }, + "accessKey": { + "type": "string", + "description": "Azure Cloud Storage account (used to place/retrieve the backup) access key." + }, + "containerName": { + "type": "string", + "description": "Azure Cloud Storage blob container name used to place/retrieve the backup." + }, + "backupName": { + "type": "string", + "description": "The name of the backup file to create." + } + }, + "required": [ + "storageAccount", + "accessKey", + "containerName", + "backupName" + ], + "description": "Parameters supplied to the Backup/Restore of an API Management service operation." + }, + "ApiManagementServiceProperties": { + "properties": { + "publisherEmail": { + "type": "string", + "description": "Publisher email.", + "maxLength": 100 + }, + "publisherName": { + "type": "string", + "description": "Publisher name.", + "maxLength": 100 + } + }, + "allOf": [ + { + "$ref": "#/definitions/ApiManagementServiceBaseProperties" + } + ], + "required": [ + "publisherEmail", + "publisherName" + ], + "description": "Properties of an API Management service resource description." + }, + "ApiManagementServiceUpdateProperties": { + "properties": { + "publisherEmail": { + "type": "string", + "description": "Publisher email.", + "maxLength": 100 + }, + "publisherName": { + "type": "string", + "description": "Publisher name.", + "maxLength": 100 + } + }, + "allOf": [ + { + "$ref": "#/definitions/ApiManagementServiceBaseProperties" + } + ], + "description": "Properties of an API Management service resource description." + }, + "ApiManagementServiceBaseProperties": { + "properties": { + "notificationSenderEmail": { + "type": "string", + "description": "Email address from which the notification will be sent.", + "maxLength": 100 + }, + "provisioningState": { + "type": "string", + "description": "The current provisioning state of the API Management service which can be one of the following: Created/Activating/Succeeded/Updating/Failed/Stopped/Terminating/TerminationFailed/Deleted.", + "readOnly": true + }, + "targetProvisioningState": { + "type": "string", + "description": "The provisioning state of the API Management service, which is targeted by the long running operation started on the service.", + "readOnly": true + }, + "createdAtUtc": { + "type": "string", + "format": "date-time", + "description": "Creation UTC date of the API Management service.The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.", + "readOnly": true + }, + "gatewayUrl": { + "type": "string", + "description": "Gateway URL of the API Management service.", + "readOnly": true + }, + "gatewayRegionalUrl": { + "type": "string", + "description": "Gateway URL of the API Management service in the Default Region.", + "readOnly": true + }, + "portalUrl": { + "type": "string", + "description": "Publisher portal endpoint Url of the API Management service.", + "readOnly": true + }, + "managementApiUrl": { + "type": "string", + "description": "Management API endpoint URL of the API Management service.", + "readOnly": true + }, + "scmUrl": { + "type": "string", + "description": "SCM endpoint URL of the API Management service.", + "readOnly": true + }, + "developerPortalUrl": { + "type": "string", + "description": "DEveloper Portal endpoint URL of the API Management service.", + "readOnly": true + }, + "hostnameConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/HostnameConfiguration" + }, + "description": "Custom hostname configuration of the API Management service." + }, + "publicIPAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "Public Static Load Balanced IP addresses of the API Management service in Primary region. Available only for Basic, Standard and Premium SKU." + }, + "privateIPAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "Private Static Load Balanced IP addresses of the API Management service in Primary region which is deployed in an Internal Virtual Network. Available only for Basic, Standard and Premium SKU." + }, + "virtualNetworkConfiguration": { + "$ref": "#/definitions/VirtualNetworkConfiguration", + "description": "Virtual network configuration of the API Management service." + }, + "additionalLocations": { + "type": "array", + "items": { + "$ref": "#/definitions/AdditionalLocation" + }, + "description": "Additional datacenter locations of the API Management service." + }, + "customProperties": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Custom properties of the API Management service.
Setting `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168` will disable the cipher TLS_RSA_WITH_3DES_EDE_CBC_SHA for all TLS(1.0, 1.1 and 1.2).
Setting `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11` can be used to disable just TLS 1.1.
Setting `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10` can be used to disable TLS 1.0 on an API Management service.
Setting `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11` can be used to disable just TLS 1.1 for communications with backends.
Setting `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10` can be used to disable TLS 1.0 for communications with backends.
Setting `Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2` can be used to enable HTTP2 protocol on an API Management service.
Not specifying any of these properties on PATCH operation will reset omitted properties' values to their defaults. For all the settings except Http2 the default value is `True` if the service was created on or before April 1st 2018 and `False` otherwise. Http2 setting's default value is `False`.

You can disable any of next ciphers by using settings `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.[cipher_name]`: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA256, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA. For example, `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA256`:`false`. The default value is `true` for them. Note: next ciphers can't be disabled since they are required by Azure CloudService internal components: TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_GCM_SHA384" + }, + "certificates": { + "type": "array", + "items": { + "$ref": "#/definitions/CertificateConfiguration" + }, + "description": "List of Certificates that need to be installed in the API Management service. Max supported certificates that can be installed is 10." + }, + "enableClientCertificate": { + "type": "boolean", + "description": "Property only meant to be used for Consumption SKU Service. This enforces a client certificate to be presented on each request to the gateway. This also enables the ability to authenticate the certificate in the policy on the gateway.", + "default": false + }, + "disableGateway": { + "type": "boolean", + "description": "Property only valid for an Api Management service deployed in multiple locations. This can be used to disable the gateway in master region.", + "default": false + }, + "virtualNetworkType": { + "type": "string", + "description": "The type of VPN in which API Management service needs to be configured in. None (Default Value) means the API Management service is not part of any Virtual Network, External means the API Management deployment is set up inside a Virtual Network having an Internet Facing Endpoint, and Internal means that API Management deployment is setup inside a Virtual Network having an Intranet Facing Endpoint only.", + "default": "None", + "enum": [ + "None", + "External", + "Internal" + ], + "x-ms-enum": { + "name": "VirtualNetworkType", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "The service is not part of any Virtual Network." + }, + { + "value": "External", + "description": "The service is part of Virtual Network and it is accessible from Internet." + }, + { + "value": "Internal", + "description": "The service is part of Virtual Network and it is only accessible from within the virtual network." + } + ] + } + }, + "apiVersionConstraint": { + "$ref": "#/definitions/ApiVersionConstraint", + "description": "Control Plane Apis version constraint for the API Management service." + } + }, + "description": "Base Properties of an API Management service resource description." + }, + "ApiVersionConstraint": { + "properties": { + "minApiVersion": { + "type": "string", + "description": "Limit control plane API calls to API Management service with version equal to or newer than this value.", + "example": "2019-01-01" + } + }, + "description": "Control Plane Apis version constraint for the API Management service." + }, + "ApiManagementServiceSkuProperties": { + "properties": { + "name": { + "type": "string", + "description": "Name of the Sku.", + "externalDocs": { + "url": "https://azure.microsoft.com/en-us/pricing/details/api-management/" + }, + "enum": [ + "Developer", + "Standard", + "Premium", + "Basic", + "Consumption" + ], + "x-ms-enum": { + "name": "SkuType", + "modelAsString": true, + "values": [ + { + "value": "Developer", + "description": "Developer SKU of Api Management." + }, + { + "value": "Standard", + "description": "Standard SKU of Api Management." + }, + { + "value": "Premium", + "description": "Premium SKU of Api Management." + }, + { + "value": "Basic", + "description": "Basic SKU of Api Management." + }, + { + "value": "Consumption", + "description": "Consumption SKU of Api Management." + } + ] + } + }, + "capacity": { + "type": "integer", + "format": "int32", + "description": "Capacity of the SKU (number of deployed units of the SKU). For Consumption SKU capacity must be specified as 0." + } + }, + "required": [ + "name", + "capacity" + ], + "description": "API Management service resource SKU properties." + }, + "ApiManagementServiceResource": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApiManagementServiceProperties", + "description": "Properties of the API Management service." + }, + "sku": { + "$ref": "#/definitions/ApiManagementServiceSkuProperties", + "description": "SKU properties of the API Management service." + }, + "identity": { + "$ref": "#/definitions/ApiManagementServiceIdentity", + "description": "Managed service identity of the Api Management service." + }, + "location": { + "type": "string", + "description": "Resource location.", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "etag": { + "type": "string", + "description": "ETag of the resource.", + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/ApimResource" + } + ], + "required": [ + "location", + "sku", + "properties" + ], + "description": "A single API Management service resource in List or Get response." + }, + "ApimResource": { + "description": "The Resource definition.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource ID." + }, + "name": { + "type": "string", + "description": "Resource name.", + "readOnly": true + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type for API Management resource is set to Microsoft.ApiManagement." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "x-ms-azure-resource": true + }, + "ApiManagementServiceUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApiManagementServiceUpdateProperties", + "description": "Properties of the API Management service." + }, + "sku": { + "$ref": "#/definitions/ApiManagementServiceSkuProperties", + "description": "SKU properties of the API Management service." + }, + "identity": { + "$ref": "#/definitions/ApiManagementServiceIdentity", + "description": "Managed service identity of the Api Management service." + }, + "etag": { + "type": "string", + "description": "ETag of the resource.", + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/ApimResource" + } + ], + "description": "Parameter supplied to Update Api Management Service." + }, + "ApiManagementServiceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiManagementServiceResource" + }, + "description": "Result of the List API Management services operation." + }, + "nextLink": { + "type": "string", + "description": "Link to the next set of results. Not empty if Value contains incomplete list of API Management services." + } + }, + "required": [ + "value" + ], + "description": "The response of the List API Management services operation." + }, + "ApiManagementServiceGetSsoTokenResult": { + "properties": { + "redirectUri": { + "type": "string", + "description": "Redirect URL to the Publisher Portal containing the SSO token." + } + }, + "description": "The response of the GetSsoToken operation." + }, + "ApiManagementServiceCheckNameAvailabilityParameters": { + "properties": { + "name": { + "type": "string", + "description": "The name to check for availability." + } + }, + "required": [ + "name" + ], + "description": "Parameters supplied to the CheckNameAvailability operation." + }, + "ApiManagementServiceNameAvailabilityResult": { + "properties": { + "nameAvailable": { + "type": "boolean", + "description": "True if the name is available and can be used to create a new API Management service; otherwise false.", + "readOnly": true + }, + "message": { + "type": "string", + "description": "If reason == invalid, provide the user with the reason why the given name is invalid, and provide the resource naming requirements so that the user can select a valid name. If reason == AlreadyExists, explain that is already in use, and direct them to select a different name.", + "readOnly": true + }, + "reason": { + "type": "string", + "description": "Invalid indicates the name provided does not match the resource provider’s naming requirements (incorrect length, unsupported characters, etc.) AlreadyExists indicates that the name is already in use and is therefore unavailable.", + "enum": [ + "Valid", + "Invalid", + "AlreadyExists" + ], + "x-ms-enum": { + "name": "NameAvailabilityReason", + "modelAsString": false + } + } + }, + "description": "Response of the CheckNameAvailability operation." + }, + "ApiManagementServiceApplyNetworkConfigurationParameters": { + "properties": { + "location": { + "type": "string", + "description": "Location of the Api Management service to update for a multi-region service. For a service deployed in a single region, this parameter is not required." + } + }, + "description": "Parameter supplied to the Apply Network configuration operation." + }, + "ApiManagementServiceIdentity": { + "description": "Identity properties of the Api Management service resource.", + "properties": { + "type": { + "type": "string", + "description": "The type of identity used for the resource. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the service.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ApimIdentityType", + "modelAsString": true + } + }, + "principalId": { + "type": "string", + "format": "uuid", + "readOnly": true, + "description": "The principal id of the identity." + }, + "tenantId": { + "type": "string", + "format": "uuid", + "readOnly": true, + "description": "The client tenant id of the identity." + }, + "userAssignedIdentities": { + "description": "The list of user identities associated with the resource. The user identity \r\ndictionary key references will be ARM resource ids in the form: \r\n'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/\r\n providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserIdentityProperties" + } + } + }, + "required": [ + "type" + ] + }, + "UserIdentityProperties": { + "type": "object", + "properties": { + "principalId": { + "description": "The principal id of user assigned identity.", + "type": "string" + }, + "clientId": { + "description": "The client id of user assigned identity.", + "type": "string" + } + } + }, + "Operation": { + "description": "REST API operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "The object that describes the operation.", + "properties": { + "provider": { + "description": "Friendly name of the resource provider", + "type": "string" + }, + "operation": { + "description": "Operation type: read, write, delete, listKeys/action, etc.", + "type": "string" + }, + "resource": { + "description": "Resource type on which the operation is performed.", + "type": "string" + }, + "description": { + "description": "Friendly name of the operation", + "type": "string" + } + } + }, + "origin": { + "type": "string", + "description": "The operation origin." + }, + "properties": { + "type": "object", + "x-ms-client-flatten": true, + "description": "The operation properties." + } + } + }, + "OperationListResult": { + "description": "Result of the request to list REST API operations. It contains a list of operations and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of operations supported by the resource provider." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + } + }, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimdiagnostics.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimdiagnostics.json new file mode 100644 index 000000000000..ecc6ece44743 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimdiagnostics.json @@ -0,0 +1,367 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Diagnostic entity associated with your Azure API Management deployment. Diagnostics are used to log requests/responses in the APIM proxy.", + "version": "2019-12-01-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/diagnostics": { + "get": { + "tags": [ + "Diagnostic" + ], + "operationId": "Diagnostic_ListByService", + "description": "Lists all diagnostics of the API Management service instance.", + "x-ms-examples": { + "ApiManagementListDiagnostics": { + "$ref": "./examples/ApiManagementListDiagnostics.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Paged Result response of diagnostics.", + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/DiagnosticContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/diagnostics/{diagnosticId}": { + "head": { + "tags": [ + "Diagnostic" + ], + "operationId": "Diagnostic_GetEntityTag", + "description": "Gets the entity state (Etag) version of the Diagnostic specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadDiagnostic": { + "$ref": "./examples/ApiManagementHeadDiagnostic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/DiagnosticIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Gets the entity tag of the diagnostic", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Diagnostic" + ], + "operationId": "Diagnostic_Get", + "description": "Gets the details of the Diagnostic specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetDiagnostic": { + "$ref": "./examples/ApiManagementGetDiagnostic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/DiagnosticIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Diagnostic entity.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Diagnostic" + ], + "operationId": "Diagnostic_CreateOrUpdate", + "description": "Creates a new Diagnostic or updates an existing one.", + "x-ms-examples": { + "ApiManagementCreateDiagnostic": { + "$ref": "./examples/ApiManagementCreateDiagnostic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/DiagnosticIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Diagnostic was successfully created.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticContract" + } + }, + "200": { + "description": "Diagnostic successfully updated", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Diagnostic" + ], + "operationId": "Diagnostic_Update", + "description": "Updates the details of the Diagnostic specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateDiagnostic": { + "$ref": "./examples/ApiManagementUpdateDiagnostic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/DiagnosticIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticContract" + }, + "description": "Diagnostic Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The Diagnostic was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Diagnostic" + ], + "operationId": "Diagnostic_Delete", + "description": "Deletes the specified Diagnostic.", + "x-ms-examples": { + "ApiManagementDeleteDiagnostic": { + "$ref": "./examples/ApiManagementDeleteDiagnostic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/DiagnosticIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The Diagnostic was successfully deleted." + }, + "204": { + "description": "The Diagnostic was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimemailtemplates.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimemailtemplates.json new file mode 100644 index 000000000000..c7a4faec4aae --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimemailtemplates.json @@ -0,0 +1,354 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Email Templates associated with your Azure API Management deployment.", + "version": "2019-12-01-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/templates": { + "get": { + "tags": [ + "EmailTemplate" + ], + "operationId": "EmailTemplate_ListByService", + "description": "Lists a collection of properties defined within a service instance.", + "x-ms-examples": { + "ApiManagementListEmailTemplates": { + "$ref": "./examples/ApiManagementListEmailTemplates.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A Collection of the Email Template for the specified API Management service instance.", + "schema": { + "$ref": "./definitions.json#/definitions/EmailTemplateCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/templates/{templateName}": { + "head": { + "tags": [ + "EmailTemplates" + ], + "operationId": "EmailTemplate_GetEntityTag", + "description": "Gets the entity state (Etag) version of the email template specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadEmailTemplate": { + "$ref": "./examples/ApiManagementHeadEmailTemplate.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TemplateNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified email template entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "EmailTemplates" + ], + "operationId": "EmailTemplate_Get", + "description": "Gets the details of the email template specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetEmailTemplate": { + "$ref": "./examples/ApiManagementGetEmailTemplate.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TemplateNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Email template.", + "schema": { + "$ref": "./definitions.json#/definitions/EmailTemplateContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "EmailTemplates" + ], + "operationId": "EmailTemplate_CreateOrUpdate", + "description": "Updates an Email Template.", + "x-ms-examples": { + "ApiManagementCreateEmailTemplate": { + "$ref": "./examples/ApiManagementCreateEmailTemplate.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TemplateNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/EmailTemplateUpdateParameters" + }, + "description": "Email Template update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Email Template was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/EmailTemplateContract" + } + }, + "200": { + "description": "Email Template was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/EmailTemplateContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "EmailTemplates" + ], + "operationId": "EmailTemplate_Update", + "description": "Updates the specific Email Template.", + "x-ms-examples": { + "ApiManagementUpdateEmailTemplate": { + "$ref": "./examples/ApiManagementUpdateEmailTemplate.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TemplateNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/EmailTemplateUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Email Template was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "EmailTemplates" + ], + "operationId": "EmailTemplate_Delete", + "description": "Reset the Email Template to default template provided by the API Management service instance.", + "x-ms-examples": { + "ApiManagementDeleteEmailTemplate": { + "$ref": "./examples/ApiManagementDeleteEmailTemplate.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TemplateNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Email Template was successfully reset to default." + }, + "204": { + "description": "Email Template was successfully reset to default." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimgateways.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimgateways.json new file mode 100644 index 000000000000..b0903265df21 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimgateways.json @@ -0,0 +1,997 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Gateway entity in Azure API Management deployment.", + "version": "2019-12-01-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways": { + "get": { + "tags": [ + "Gateway" + ], + "operationId": "Gateway_ListByService", + "description": "Lists a collection of gateways registered with service instance.", + "x-ms-examples": { + "ApiManagementListGateways": { + "$ref": "./examples/ApiManagementListGateways.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Gateway entities.", + "schema": { + "$ref": "./definitions.json#/definitions/GatewayCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}": { + "head": { + "tags": [ + "Gateway" + ], + "operationId": "Gateway_GetEntityTag", + "description": "Gets the entity state (Etag) version of the Gateway specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadGateway": { + "$ref": "./examples/ApiManagementHeadGateway.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified Gateway entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Gateway" + ], + "operationId": "Gateway_Get", + "description": "Gets the details of the Gateway specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetGateway": { + "$ref": "./examples/ApiManagementGetGateway.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Gateway entity.", + "schema": { + "$ref": "./definitions.json#/definitions/GatewayContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Gateway" + ], + "operationId": "Gateway_CreateOrUpdate", + "description": "Creates or updates a Gateway to be used in Api Management instance.", + "x-ms-examples": { + "ApiManagementCreateGateway": { + "$ref": "./examples/ApiManagementCreateGateway.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayContract" + } + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "The new Gateway was successfully added.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayContract" + } + }, + "200": { + "description": "The Gateway details were successfully updated.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Gateway" + ], + "operationId": "Gateway_Update", + "description": "Updates the details of the gateway specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateGateway": { + "$ref": "./examples/ApiManagementUpdateGateway.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayContract" + } + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The gateway details were successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Gateway" + ], + "operationId": "Gateway_Delete", + "description": "Deletes specific Gateway.", + "x-ms-examples": { + "ApiManagementDeleteGateway": { + "$ref": "./examples/ApiManagementDeleteGateway.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The Gateway was successfully deleted." + }, + "204": { + "description": "The Gateway was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}/listKeys": { + "post": { + "tags": [ + "GatewayListKeys" + ], + "operationId": "Gateway_ListKeys", + "description": "Retrieves gateway keys.", + "x-ms-examples": { + "ApiManagementGatewayKeys": { + "$ref": "./examples/ApiManagementGatewayListKeys.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Gateway keys.", + "schema": { + "$ref": "./definitions.json#/definitions/GatewayKeysContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}/regenerateKey": { + "post": { + "tags": [ + "GatewayRegenerateKey" + ], + "operationId": "Gateway_RegenerateKey", + "description": "Regenerates specified gateway key invalidating any tokens created with it.", + "x-ms-examples": { + "ApiManagementGatewayRegeneratePrimaryKey": { + "$ref": "./examples/ApiManagementGatewayRegenerateKey.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayKeyRegenerationRequestContract" + } + } + ], + "responses": { + "204": { + "description": "Key successfully regenerated" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}/generateToken": { + "post": { + "tags": [ + "GatewayGenerateToken" + ], + "operationId": "Gateway_GenerateToken", + "description": "Gets the Shared Access Authorization Token for the gateway.", + "x-ms-examples": { + "ApiManagementGatewayToken": { + "$ref": "./examples/ApiManagementGatewayGenerateToken.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayTokenRequestContract" + } + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the authorization token for the gateway.", + "schema": { + "$ref": "./definitions.json#/definitions/GatewayTokenContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}/hostnameConfigurations": { + "get": { + "tags": [ + "GatewayHostnameConfiguration" + ], + "operationId": "GatewayHostnameConfiguration_ListByService", + "description": "Lists the collection of hostname configurations for the specified gateway.", + "x-ms-examples": { + "ApiManagementListGatewayHostnameConfigurations": { + "$ref": "./examples/ApiManagementListGatewayHostnameConfigurations.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Collection of hostname configuration entities.", + "schema": { + "$ref": "./definitions.json#/definitions/GatewayHostnameConfigurationCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}/hostnameConfigurations/{hcId}": { + "head": { + "tags": [ + "GatewayHostnameConfiguration" + ], + "operationId": "GatewayHostnameConfiguration_GetEntityTag", + "description": "Checks that hostname configuration entity specified by identifier exists for specified Gateway entity.", + "x-ms-examples": { + "ApiManagementHeadGatewayHostnameConfiguration": { + "$ref": "./examples/ApiManagementHeadGatewayHostnameConfiguration.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayHostnameConfigurationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified Gateway entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "GatewayHostnameConfiguration" + ], + "operationId": "GatewayHostnameConfiguration_Get", + "description": "Gets the details of the Gateway hostname configuration specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetGateway": { + "$ref": "./examples/ApiManagementGetGatewayHostnameConfiguration.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayHostnameConfigurationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Gateway entity.", + "schema": { + "$ref": "./definitions.json#/definitions/GatewayHostnameConfigurationContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "GatewayHostnameConfiguration" + ], + "operationId": "GatewayHostnameConfiguration_CreateOrUpdate", + "description": "Creates of updates hostname configuration for a Gateway.", + "x-ms-examples": { + "ApiManagementCreateGatewayHostnameConfiguration": { + "$ref": "./examples/ApiManagementCreateGatewayHostnameConfiguration.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayHostnameConfigurationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayHostnameConfigurationContract" + } + } + ], + "responses": { + "201": { + "description": "The new Gateway hostname configuration was successfully created.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayHostnameConfigurationContract" + } + }, + "200": { + "description": "The Gateway hostname configuration details were successfully updated.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayHostnameConfigurationContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "GatewayHostnameConfiguration" + ], + "operationId": "GatewayHostnameConfiguration_Delete", + "description": "Deletes the specified hostname configuration from the specified Gateway.", + "x-ms-examples": { + "ApiManagementDeleteGatewayHostnameConfiguration": { + "$ref": "./examples/ApiManagementDeleteGatewayHostnameConfiguration.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayHostnameConfigurationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Hostname configuration was successfully removed from Gateway" + }, + "204": { + "description": "Hostname configuration successfully removed by previous request or does not exist in Gateway" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}/apis": { + "get": { + "tags": [ + "GatewayApi" + ], + "operationId": "GatewayApi_ListByService", + "description": "Lists a collection of the APIs associated with a gateway.", + "x-ms-examples": { + "ApiManagementListGatewayApis": { + "$ref": "./examples/ApiManagementListGatewayApis.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains a collection of Api entities in the gateway.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}/apis/{apiId}": { + "head": { + "tags": [ + "GatewayApi" + ], + "operationId": "GatewayApi_GetEntityTag", + "description": "Checks that API entity specified by identifier is associated with the Gateway entity.", + "x-ms-examples": { + "ApiManagementHeadGatewayApi": { + "$ref": "./examples/ApiManagementHeadGatewayApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified Gateway entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "GatewayApi" + ], + "operationId": "GatewayApi_CreateOrUpdate", + "description": "Adds an API to the specified Gateway.", + "x-ms-examples": { + "ApiManagementCreateGatewayApi": { + "$ref": "./examples/ApiManagementCreateGatewayApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "./definitions.json#/definitions/AssociationContract" + } + } + ], + "responses": { + "201": { + "description": "The API was successfully added to the Gateway.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiContract" + } + }, + "200": { + "description": "The specified API is already added to the Gateway.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "GatewayApi" + ], + "operationId": "GatewayApi_Delete", + "description": "Deletes the specified API from the specified Gateway.", + "x-ms-examples": { + "ApiManagementDeleteGatewayApi": { + "$ref": "./examples/ApiManagementDeleteGatewayApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "API was successfully removed from Gateway" + }, + "204": { + "description": "API successfully removed by previous request or does not exist in Gateway" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimgroups.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimgroups.json new file mode 100644 index 000000000000..2225a172bf36 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimgroups.json @@ -0,0 +1,581 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Group entity in your Azure API Management deployment. Groups are used to manage the visibility of products to developers. Each API Management service instance comes with the following immutable system groups whose membership is automatically managed by API Management. - **Administrators** - Azure subscription administrators are members of this group. - **Developers** - Authenticated developer portal users fall into this group. - **Guests** - Unauthenticated developer portal users are placed into this group. In addition to these system groups, administrators can create custom groups or [leverage external groups in associated Azure Active Directory tenants](https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-aad#how-to-add-an-external-azure-active-directory-group). Custom and external groups can be used alongside system groups in giving developers visibility and access to API products. For example, you could create one custom group for developers affiliated with a specific partner organization and allow them access to the APIs from a product containing relevant APIs only. A user can be a member of more than one group.", + "version": "2019-12-01-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/groups": { + "get": { + "tags": [ + "Group" + ], + "operationId": "Group_ListByService", + "description": "Lists a collection of groups defined within a service instance.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-create-groups" + }, + "x-ms-examples": { + "ApiManagementListGroups": { + "$ref": "./examples/ApiManagementListGroups.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| aadObjectId | filter | eq | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Group entities.", + "schema": { + "$ref": "./definitions.json#/definitions/GroupCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/GroupContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/groups/{groupId}": { + "head": { + "tags": [ + "Group" + ], + "operationId": "Group_GetEntityTag", + "description": "Gets the entity state (Etag) version of the group specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadGroup": { + "$ref": "./examples/ApiManagementHeadGroup.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified group entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Group" + ], + "operationId": "Group_Get", + "description": "Gets the details of the group specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetGroup": { + "$ref": "./examples/ApiManagementGetGroup.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Group entity.", + "schema": { + "$ref": "./definitions.json#/definitions/GroupContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Group" + ], + "operationId": "Group_CreateOrUpdate", + "description": "Creates or Updates a group.", + "x-ms-examples": { + "ApiManagementCreateGroup": { + "$ref": "./examples/ApiManagementCreateGroup.json" + }, + "ApiManagementCreateGroupExternal": { + "$ref": "./examples/ApiManagementCreateGroupExternal.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/GroupCreateParameters" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Group was created successfully.", + "schema": { + "$ref": "./definitions.json#/definitions/GroupContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Group already exists.", + "schema": { + "$ref": "./definitions.json#/definitions/GroupContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Group" + ], + "operationId": "Group_Update", + "description": "Updates the details of the group specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateGroup": { + "$ref": "./examples/ApiManagementUpdateGroup.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/GroupUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The group details were successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Group" + ], + "operationId": "Group_Delete", + "description": "Deletes specific group of the API Management service instance.", + "x-ms-examples": { + "ApiManagementDeleteGroup": { + "$ref": "./examples/ApiManagementDeleteGroup.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The group was successfully deleted." + }, + "204": { + "description": "The group was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/groups/{groupId}/users": { + "get": { + "tags": [ + "GroupUser" + ], + "operationId": "GroupUser_List", + "description": "Lists a collection of user entities associated with the group.", + "x-ms-examples": { + "ApiManagementListGroupUsers": { + "$ref": "./examples/ApiManagementListGroupUsers.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| firstName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| lastName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| email | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| registrationDate | filter | ge, le, eq, ne, gt, lt | |
| note | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of user entities associated with the group.", + "schema": { + "$ref": "./definitions.json#/definitions/UserCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/UserContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/groups/{groupId}/users/{userId}": { + "head": { + "tags": [ + "GroupUser" + ], + "operationId": "GroupUser_CheckEntityExists", + "description": "Checks that user entity specified by identifier is associated with the group entity.", + "x-ms-examples": { + "ApiManagementHeadGroupUser": { + "$ref": "./examples/ApiManagementHeadGroupUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Entity exists" + }, + "404": { + "description": "Entity does not exists." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "GroupUser" + ], + "operationId": "GroupUser_Create", + "description": "Add existing user to existing group", + "x-ms-examples": { + "ApiManagementCreateGroupUser": { + "$ref": "./examples/ApiManagementCreateGroupUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "The user was successfully added to the group.", + "schema": { + "$ref": "./definitions.json#/definitions/UserContract" + } + }, + "200": { + "description": "The specified user is already a member of the specified group.", + "schema": { + "$ref": "./definitions.json#/definitions/UserContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "GroupUser" + ], + "operationId": "GroupUser_Delete", + "description": "Remove existing user from existing group.", + "x-ms-examples": { + "ApiManagementDeleteGroupUser": { + "$ref": "./examples/ApiManagementDeleteGroupUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The user was successfully removed from the group." + }, + "204": { + "description": "The user was successfully removed from the group." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimidentityprovider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimidentityprovider.json new file mode 100644 index 000000000000..e8b8934300eb --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimidentityprovider.json @@ -0,0 +1,401 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Identity Provider entity associated with your Azure API Management deployment. Setting up an external Identity Provider for authentication can help you manage the developer portal logins using the OAuth2 flow.", + "version": "2019-12-01-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/identityProviders": { + "get": { + "tags": [ + "IdentityProvider" + ], + "operationId": "IdentityProvider_ListByService", + "description": "Lists a collection of Identity Provider configured in the specified service instance.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-aad#how-to-authorize-developer-accounts-using-azure-active-directory" + }, + "x-ms-examples": { + "ApiManagementListIdentityProviders": { + "$ref": "./examples/ApiManagementListIdentityProviders.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Identity Providers.", + "schema": { + "$ref": "./definitions.json#/definitions/IdentityProviderList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/identityProviders/{identityProviderName}": { + "head": { + "tags": [ + "IdentityProvider" + ], + "operationId": "IdentityProvider_GetEntityTag", + "description": "Gets the entity state (Etag) version of the identityProvider specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadIdentityProvider": { + "$ref": "./examples/ApiManagementHeadIdentityProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IdentityProviderNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified identity provider entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "IdentityProvider" + ], + "operationId": "IdentityProvider_Get", + "description": "Gets the configuration details of the identity Provider configured in specified service instance.", + "x-ms-examples": { + "ApiManagementGetIdentityProvider": { + "$ref": "./examples/ApiManagementGetIdentityProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IdentityProviderNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified IdentityProvider entity configuration details.", + "schema": { + "$ref": "./definitions.json#/definitions/IdentityProviderContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "IdentityProvider" + ], + "operationId": "IdentityProvider_CreateOrUpdate", + "description": "Creates or Updates the IdentityProvider configuration.", + "x-ms-examples": { + "ApiManagementCreateIdentityProvider": { + "$ref": "./examples/ApiManagementCreateIdentityProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IdentityProviderNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/IdentityProviderCreateContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "IdentityProvider configuration were successfully created.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/IdentityProviderContract" + } + }, + "200": { + "description": "The existing Identity Provider was successfully updated.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/IdentityProviderContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "IdentityProvider" + ], + "operationId": "IdentityProvider_Update", + "description": "Updates an existing IdentityProvider configuration.", + "x-ms-examples": { + "ApiManagementUpdateIdentityProvider": { + "$ref": "./examples/ApiManagementUpdateIdentityProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IdentityProviderNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/IdentityProviderUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The existing identity provider configuration was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "IdentityProvider" + ], + "operationId": "IdentityProvider_Delete", + "description": "Deletes the specified identity provider configuration.", + "x-ms-examples": { + "ApiManagementDeleteIdentityProvider": { + "$ref": "./examples/ApiManagementDeleteIdentityProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IdentityProviderNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The identity provider configuration was successfully deleted." + }, + "204": { + "description": "The identity provider configuration was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/identityProviders/{identityProviderName}/listSecrets": { + "post": { + "tags": [ + "IdentityProvider" + ], + "operationId": "IdentityProvider_ListSecrets", + "description": "Gets the client secret details of the Identity Provider.", + "x-ms-examples": { + "ApiManagementListSecretsIdentityProvider": { + "$ref": "./examples/ApiManagementListSecretsIdentityProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IdentityProviderNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the client secret.", + "schema": { + "$ref": "./definitions.json#/definitions/ClientSecretContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimissues.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimissues.json new file mode 100644 index 000000000000..dae0bd79749a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimissues.json @@ -0,0 +1,150 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use this REST API to get all the issues across an Azure Api Management service.", + "version": "2019-12-01-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/issues": { + "get": { + "tags": [ + "Issue" + ], + "operationId": "Issue_ListByService", + "description": "Lists a collection of issues in the specified service instance.", + "x-ms-examples": { + "ApiManagementListIssues": { + "$ref": "./examples/ApiManagementListIssues.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| apiId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| title | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| authorName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| state | filter | eq | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Issue entities.", + "schema": { + "$ref": "./definitions.json#/definitions/IssueCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/IssueContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/issues/{issueId}": { + "get": { + "tags": [ + "Issue" + ], + "operationId": "Issue_Get", + "description": "Gets API Management issue details", + "x-ms-examples": { + "ApiManagementGetIssue": { + "$ref": "./examples/ApiManagementGetIssue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Get the details of the issue.", + "schema": { + "$ref": "./definitions.json#/definitions/IssueContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimloggers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimloggers.json new file mode 100644 index 000000000000..319975aa93a6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimloggers.json @@ -0,0 +1,380 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on logger entity Azure API Management deployment.The Logger entity in API Management represents an event sink that you can use to log API Management events. Currently the Logger entity supports logging API Management events to Azure EventHub.", + "version": "2019-12-01-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/loggers": { + "get": { + "tags": [ + "Logger" + ], + "operationId": "Logger_ListByService", + "description": "Lists a collection of loggers in the specified service instance.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-log-event-hubs" + }, + "x-ms-examples": { + "ApiManagementListLoggers": { + "$ref": "./examples/ApiManagementListLoggers.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| loggerType | filter | eq | |
| resourceId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Logger entities.", + "schema": { + "$ref": "./definitions.json#/definitions/LoggerCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/LoggerContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/loggers/{loggerId}": { + "head": { + "tags": [ + "Logger" + ], + "operationId": "Logger_GetEntityTag", + "description": "Gets the entity state (Etag) version of the logger specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadLogger": { + "$ref": "./examples/ApiManagementHeadLogger.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/LoggerIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified logger entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Logger" + ], + "operationId": "Logger_Get", + "description": "Gets the details of the logger specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetLogger": { + "$ref": "./examples/ApiManagementGetLogger.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/LoggerIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Logger entity.", + "schema": { + "$ref": "./definitions.json#/definitions/LoggerContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Logger" + ], + "operationId": "Logger_CreateOrUpdate", + "description": "Creates or Updates a logger.", + "x-ms-examples": { + "ApiManagementCreateEHLogger": { + "$ref": "./examples/ApiManagementCreateEHLogger.json" + }, + "ApiManagementCreateAILogger": { + "$ref": "./examples/ApiManagementCreateAILogger.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/LoggerIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/LoggerContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Logger was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/LoggerContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "The existing logger was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/LoggerContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Logger" + ], + "operationId": "Logger_Update", + "description": "Updates an existing logger.", + "x-ms-examples": { + "ApiManagementUpdateLogger": { + "$ref": "./examples/ApiManagementUpdateLogger.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/LoggerIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/LoggerUpdateContract" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The existing logger was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Logger" + ], + "operationId": "Logger_Delete", + "description": "Deletes the specified logger.", + "x-ms-examples": { + "ApiManagementDeleteLogger": { + "$ref": "./examples/ApiManagementDeleteLogger.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/LoggerIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "name": "force", + "in": "query", + "required": false, + "type": "boolean", + "description": "Force deletion even if diagnostic is attached." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The logger was successfully deleted." + }, + "204": { + "description": "The logger was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimnamedvalues.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimnamedvalues.json new file mode 100644 index 000000000000..c8919167aee0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimnamedvalues.json @@ -0,0 +1,441 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on NamedValue entity associated with your Azure API Management deployment. API Management policies are a powerful capability of the system that allow the publisher to change the behavior of the API through configuration. Policies are a collection of statements that are executed sequentially on the request or response of an API. Policy statements can be constructed using literal text values, policy expressions, and NamedValues. Each API Management service instance has a NamedValues collection of key/value pairs that are global to the service instance. These NamedValues can be used to manage constant string values across all API configuration and policies.", + "version": "2019-12-01-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/namedValues": { + "get": { + "tags": [ + "NamedValue" + ], + "operationId": "NamedValue_ListByService", + "description": "Lists a collection of NamedValues defined within a service instance.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-properties" + }, + "x-ms-examples": { + "ApiManagementListNamedValues": { + "$ref": "./examples/ApiManagementListNamedValues.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| tags | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith, any, all |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A Collection of the NamedValue entities for the specified API Management service instance.", + "schema": { + "$ref": "./definitions.json#/definitions/NamedValueCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/NamedValueContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/namedValues/{namedValueId}": { + "head": { + "tags": [ + "NamedValue" + ], + "operationId": "NamedValue_GetEntityTag", + "description": "Gets the entity state (Etag) version of the NamedValue specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadNamedValue": { + "$ref": "./examples/ApiManagementHeadNamedValue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NamedValueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified NamedValue entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "NamedValue" + ], + "operationId": "NamedValue_Get", + "description": "Gets the details of the NamedValue specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetNamedValue": { + "$ref": "./examples/ApiManagementGetNamedValue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NamedValueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified NamedValue entity.", + "schema": { + "$ref": "./definitions.json#/definitions/NamedValueContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "NamedValue" + ], + "operationId": "NamedValue_CreateOrUpdate", + "description": "Creates or updates a NamedValue.", + "x-ms-examples": { + "ApiManagementCreateNamedValue": { + "$ref": "./examples/ApiManagementCreateNamedValue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NamedValueIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/NamedValueCreateContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Request to create or update NamedValue was accepted. Location header contains the URL where the status of the long running operation can be checked." + }, + "201": { + "description": "NamedValue was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/NamedValueContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "NamedValue was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/NamedValueContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "NamedValue" + ], + "operationId": "NamedValue_Update", + "description": "Updates the specific NamedValue.", + "x-ms-examples": { + "ApiManagementUpdateNamedValue": { + "$ref": "./examples/ApiManagementUpdateNamedValue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NamedValueIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/NamedValueUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Request to update NamedValue was accepted. Location header contains the URL where the status of the long running operation can be checked." + }, + "204": { + "description": "NamedValue was successfully updated." + }, + "200": { + "description": "NamedValue was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/NamedValueContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "delete": { + "tags": [ + "NamedValue" + ], + "operationId": "NamedValue_Delete", + "description": "Deletes specific NamedValue from the API Management service instance.", + "x-ms-examples": { + "ApiManagementDeleteNamedValue": { + "$ref": "./examples/ApiManagementDeleteNamedValue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NamedValueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "NamedValue was successfully deleted." + }, + "204": { + "description": "NamedValue was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/namedValues/{namedValueId}/listValue": { + "post": { + "tags": [ + "NamedValue" + ], + "operationId": "NamedValue_ListValue", + "description": "Gets the secret value of the NamedValue.", + "x-ms-examples": { + "ApiManagementListSecretsSubscription": { + "$ref": "./examples/ApiManagementListSecretsNamedValue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NamedValueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains secret value.", + "schema": { + "$ref": "./definitions.json#/definitions/PropertyValueContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimnetworkstatus.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimnetworkstatus.json new file mode 100644 index 000000000000..0fc15bd8eefd --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimnetworkstatus.json @@ -0,0 +1,212 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for getting the network connectivity status of your Azure API Management deployment. When the API Management service is deployed inside a Virtual Network, it needs to have access to other Azure resources it depends on. This also gives details about the DNS Servers visible to Azure API Management deployment.", + "version": "2019-12-01-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/networkstatus": { + "get": { + "tags": [ + "NetworkStatus" + ], + "operationId": "NetworkStatus_ListByService", + "description": "Gets the Connectivity Status to the external resources on which the Api Management service depends from inside the Cloud Service. This also returns the DNS Servers as visible to the CloudService.", + "x-ms-examples": { + "ApiManagementServiceGetNetworkStatus": { + "$ref": "./examples/ApiManagementServiceGetNetworkStatus.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Gets the list Network status details for all regions in which service is deployed.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkStatusContractByLocation" + }, + "description": "List of Network Status values." + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/locations/{locationName}/networkstatus": { + "get": { + "tags": [ + "NetworkStatus" + ], + "operationId": "NetworkStatus_ListByLocation", + "description": "Gets the Connectivity Status to the external resources on which the Api Management service depends from inside the Cloud Service. This also returns the DNS Servers as visible to the CloudService.", + "x-ms-examples": { + "ApiManagementServiceGetNetworkStatusByLocation": { + "$ref": "./examples/ApiManagementServiceGetNetworkStatusByLocation.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/LocationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Gets the Network status details.", + "schema": { + "$ref": "#/definitions/NetworkStatusContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "ConnectivityStatusContract": { + "properties": { + "name": { + "type": "string", + "description": "The hostname of the resource which the service depends on. This can be the database, storage or any other azure resource on which the service depends upon.", + "minLength": 1 + }, + "status": { + "type": "string", + "enum": [ + "initializing", + "success", + "failure" + ], + "x-ms-enum": { + "name": "ConnectivityStatusType", + "modelAsString": true + }, + "description": "Resource Connectivity Status Type identifier." + }, + "error": { + "type": "string", + "description": "Error details of the connectivity to the resource." + }, + "lastUpdated": { + "type": "string", + "format": "date-time", + "description": "The date when the resource connectivity status was last updated. This status should be updated every 15 minutes. If this status has not been updated, then it means that the service has lost network connectivity to the resource, from inside the Virtual Network.The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "lastStatusChange": { + "type": "string", + "format": "date-time", + "description": "The date when the resource connectivity status last Changed from success to failure or vice-versa. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + } + }, + "required": [ + "name", + "status", + "lastUpdated", + "lastStatusChange" + ], + "description": "Details about connectivity to a resource." + }, + "NetworkStatusContractByLocation": { + "properties": { + "location": { + "type": "string", + "description": "Location of service", + "minLength": 1 + }, + "networkStatus": { + "$ref": "#/definitions/NetworkStatusContract", + "description": "Network status in Location" + } + }, + "description": "Network Status in the Location" + }, + "NetworkStatusContract": { + "properties": { + "dnsServers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Gets the list of DNS servers IPV4 addresses." + }, + "connectivityStatus": { + "type": "array", + "items": { + "$ref": "#/definitions/ConnectivityStatusContract" + }, + "description": "Gets the list of Connectivity Status to the Resources on which the service depends upon." + } + }, + "required": [ + "dnsServers", + "connectivityStatus" + ], + "description": "Network Status details." + } + }, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimnotifications.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimnotifications.json new file mode 100644 index 000000000000..d71b56db90aa --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimnotifications.json @@ -0,0 +1,564 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on who is going to receive notifications associated with your Azure API Management deployment.", + "version": "2019-12-01-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications": { + "get": { + "tags": [ + "Notification" + ], + "operationId": "Notification_ListByService", + "description": "Lists a collection of properties defined within a service instance.", + "x-ms-examples": { + "ApiManagementListNotifications": { + "$ref": "./examples/ApiManagementListNotifications.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A Collection of the Notification for the specified API Management service instance.", + "schema": { + "$ref": "./definitions.json#/definitions/NotificationCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications/{notificationName}": { + "get": { + "tags": [ + "Notification" + ], + "operationId": "Notification_Get", + "description": "Gets the details of the Notification specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetNotification": { + "$ref": "./examples/ApiManagementGetNotification.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Notification.", + "schema": { + "$ref": "./definitions.json#/definitions/NotificationContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Notification" + ], + "operationId": "Notification_CreateOrUpdate", + "description": "Create or Update API Management publisher notification.", + "x-ms-examples": { + "ApiManagementCreateNotification": { + "$ref": "./examples/ApiManagementCreateNotification.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Notification was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/NotificationContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications/{notificationName}/recipientUsers": { + "get": { + "tags": [ + "NotificationRecipientUser" + ], + "operationId": "NotificationRecipientUser_ListByNotification", + "description": "Gets the list of the Notification Recipient User subscribed to the notification.", + "x-ms-examples": { + "ApiManagementListNotificationRecipientUsers": { + "$ref": "./examples/ApiManagementListNotificationRecipientUsers.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the Recipient User collection for the notification.", + "schema": { + "$ref": "./definitions.json#/definitions/RecipientUserCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications/{notificationName}/recipientUsers/{userId}": { + "head": { + "tags": [ + "NotificationRecipientUser" + ], + "operationId": "NotificationRecipientUser_CheckEntityExists", + "description": "Determine if the Notification Recipient User is subscribed to the notification.", + "x-ms-examples": { + "ApiManagementHeadNotificationRecipientUser": { + "$ref": "./examples/ApiManagementHeadNotificationRecipientUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The User is subscribed to receive the notification." + }, + "404": { + "description": "Entity does not exists." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "NotificationRecipientUser" + ], + "operationId": "NotificationRecipientUser_CreateOrUpdate", + "description": "Adds the API Management User to the list of Recipients for the Notification.", + "x-ms-examples": { + "ApiManagementCreateNotificationRecipientUser": { + "$ref": "./examples/ApiManagementCreateNotificationRecipientUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Recipient User was successfully added to the notification list.", + "schema": { + "$ref": "./definitions.json#/definitions/RecipientUserContract" + } + }, + "200": { + "description": "Recipient User is already part of the notification list.", + "schema": { + "$ref": "./definitions.json#/definitions/RecipientUserContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "NotificationRecipientUser" + ], + "operationId": "NotificationRecipientUser_Delete", + "description": "Removes the API Management user from the list of Notification.", + "x-ms-examples": { + "ApiManagementDeleteNotificationRecipientUser": { + "$ref": "./examples/ApiManagementDeleteNotificationRecipientUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Recipient User was successfully removed from the notification list." + }, + "204": { + "description": "Recipient User was successfully removed from the notification list." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications/{notificationName}/recipientEmails": { + "get": { + "tags": [ + "NotificationRecipientEmail" + ], + "operationId": "NotificationRecipientEmail_ListByNotification", + "description": "Gets the list of the Notification Recipient Emails subscribed to a notification.", + "x-ms-examples": { + "ApiManagementListNotificationRecipientEmails": { + "$ref": "./examples/ApiManagementListNotificationRecipientEmails.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the Recipient Email collection subscribed to the notification.", + "schema": { + "$ref": "./definitions.json#/definitions/RecipientEmailCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications/{notificationName}/recipientEmails/{email}": { + "head": { + "tags": [ + "NotificationRecipientEmail" + ], + "operationId": "NotificationRecipientEmail_CheckEntityExists", + "description": "Determine if Notification Recipient Email subscribed to the notification.", + "x-ms-examples": { + "ApiManagementHeadNotificationRecipientEmail": { + "$ref": "./examples/ApiManagementHeadNotificationRecipientEmail.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/EmailParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The Users is subscribed to receive the notification." + }, + "404": { + "description": "The Users is not subscribed to receive the notification." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "NotificationRecipientEmail" + ], + "operationId": "NotificationRecipientEmail_CreateOrUpdate", + "description": "Adds the Email address to the list of Recipients for the Notification.", + "x-ms-examples": { + "ApiManagementCreateNotificationRecipientEmail": { + "$ref": "./examples/ApiManagementCreateNotificationRecipientEmail.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/EmailParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Recipient Email was successfully added to the notification list.", + "schema": { + "$ref": "./definitions.json#/definitions/RecipientEmailContract" + } + }, + "200": { + "description": "Recipient Email is already part of the notification list.", + "schema": { + "$ref": "./definitions.json#/definitions/RecipientEmailContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "NotificationRecipientEmail" + ], + "operationId": "NotificationRecipientEmail_Delete", + "description": "Removes the email from the list of Notification.", + "x-ms-examples": { + "ApiManagementDeleteNotificationRecipientEmail": { + "$ref": "./examples/ApiManagementDeleteNotificationRecipientEmail.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/EmailParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Recipient Email was successfully removed to the notification list." + }, + "204": { + "description": "Recipient Email was successfully removed to the notification list." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimopenidconnectproviders.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimopenidconnectproviders.json new file mode 100644 index 000000000000..1d34efe1d3d1 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimopenidconnectproviders.json @@ -0,0 +1,412 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on OpenId Connect Provider entity associated with your Azure API Management deployment. API Management allows you to access APIs secured with token from [OpenID Connect Provider ](http://openid.net/connect/) to be accessed from the Developer Console.", + "version": "2019-12-01-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/openidConnectProviders": { + "get": { + "tags": [ + "OpenidConnectProvider" + ], + "operationId": "OpenIdConnectProvider_ListByService", + "description": "Lists of all the OpenId Connect Providers.", + "x-ms-examples": { + "ApiManagementListOpenIdConnectProviders": { + "$ref": "./examples/ApiManagementListOpenIdConnectProviders.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists of all the OpenId Connect Providers.", + "schema": { + "$ref": "./definitions.json#/definitions/OpenIdConnectProviderCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/OpenidConnectProviderContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/openidConnectProviders/{opid}": { + "head": { + "tags": [ + "OpenidConnectProvider" + ], + "operationId": "OpenIdConnectProvider_GetEntityTag", + "description": "Gets the entity state (Etag) version of the openIdConnectProvider specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadOpenIdConnectProvider": { + "$ref": "./examples/ApiManagementHeadOpenIdConnectProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OpenIdConnectIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified openidConnectProvider entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "OpenidConnectProvider" + ], + "operationId": "OpenIdConnectProvider_Get", + "description": "Gets specific OpenID Connect Provider.", + "x-ms-examples": { + "ApiManagementGetOpenIdConnectProvider": { + "$ref": "./examples/ApiManagementGetOpenIdConnectProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OpenIdConnectIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified OpenId Connect Provider entity.", + "schema": { + "$ref": "./definitions.json#/definitions/OpenidConnectProviderContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "OpenidConnectProvider" + ], + "operationId": "OpenIdConnectProvider_CreateOrUpdate", + "description": "Creates or updates the OpenID Connect Provider.", + "x-ms-examples": { + "ApiManagementCreateOpenIdConnectProvider": { + "$ref": "./examples/ApiManagementCreateOpenIdConnectProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OpenIdConnectIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/OpenidConnectProviderContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "OpenIdConnect Provider was successfully created.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/OpenidConnectProviderContract" + } + }, + "200": { + "description": "OpenIdConnect Provider was successfully updated.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/OpenidConnectProviderContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "OpenidConnectProvider" + ], + "operationId": "OpenIdConnectProvider_Update", + "description": "Updates the specific OpenID Connect Provider.", + "x-ms-examples": { + "ApiManagementUpdateOpenIdConnectProvider": { + "$ref": "./examples/ApiManagementUpdateOpenIdConnectProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OpenIdConnectIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/OpenidConnectProviderUpdateContract" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "OpenId Connect Provider was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "OpenidConnectProvider" + ], + "operationId": "OpenIdConnectProvider_Delete", + "description": "Deletes specific OpenID Connect Provider of the API Management service instance.", + "x-ms-examples": { + "ApiManagementDeleteOpenIdConnectProvider": { + "$ref": "./examples/ApiManagementDeleteOpenIdConnectProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OpenIdConnectIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OpenId Connect Provider was successfully deleted." + }, + "204": { + "description": "OpenId Connect Provider was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/openidConnectProviders/{opid}/listSecrets": { + "post": { + "tags": [ + "OpenidConnectProvider" + ], + "operationId": "OpenIdConnectProvider_ListSecrets", + "description": "Gets the client secret details of the OpenID Connect Provider.", + "x-ms-examples": { + "ApiManagementListSecretsOpenidConnectProvider": { + "$ref": "./examples/ApiManagementListSecretsOpenIdConnectProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OpenIdConnectIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the client secret.", + "schema": { + "$ref": "./definitions.json#/definitions/ClientSecretContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimpolicies.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimpolicies.json new file mode 100644 index 000000000000..aff8f2a4f46f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimpolicies.json @@ -0,0 +1,304 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Global Policies in Azure API Management deployment.", + "version": "2019-12-01-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/policies": { + "get": { + "tags": [ + "Policy" + ], + "operationId": "Policy_ListByService", + "description": "Lists all the Global Policy definitions of the Api Management service.", + "x-ms-examples": { + "ApiManagementListPolicies": { + "$ref": "./examples/ApiManagementListPolicies.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Returns an array of Policy Contracts.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/policies/{policyId}": { + "head": { + "tags": [ + "Policy" + ], + "operationId": "Policy_GetEntityTag", + "description": "Gets the entity state (Etag) version of the Global policy definition in the Api Management service.", + "x-ms-examples": { + "ApiManagementHeadPolicy": { + "$ref": "./examples/ApiManagementHeadPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Policy" + ], + "operationId": "Policy_Get", + "description": "Get the Global policy definition of the Api Management service.", + "x-ms-examples": { + "ApiManagementGetPolicy": { + "$ref": "./examples/ApiManagementGetPolicy.json" + }, + "ApiManagementGetPolicyFormat": { + "$ref": "./examples/ApiManagementGetPolicyFormat.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyExportFormat" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Get the Global policy definition of the Api Management service.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Policy" + ], + "operationId": "Policy_CreateOrUpdate", + "description": "Creates or updates the global policy configuration of the Api Management service.", + "x-ms-examples": { + "ApiManagementCreatePolicy": { + "$ref": "./examples/ApiManagementCreatePolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "description": "The policy contents to apply." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Global policy configuration was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Global policy configuration of the Api Management service was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Policy" + ], + "operationId": "Policy_Delete", + "description": "Deletes the global policy configuration of the Api Management Service.", + "x-ms-examples": { + "ApiManagementDeletePolicy": { + "$ref": "./examples/ApiManagementDeletePolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Policy was successfully removed" + }, + "204": { + "description": "Policy successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimpolicydescriptions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimpolicydescriptions.json new file mode 100644 index 000000000000..17e7dde0c1cb --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimpolicydescriptions.json @@ -0,0 +1,100 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing retrieving a collection of policy snippets available in Azure API Management deployment.", + "version": "2019-12-01-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/policyDescriptions": { + "get": { + "tags": [ + "PolicyDescription" + ], + "operationId": "PolicyDescription_ListByService", + "description": "Lists all policy descriptions.", + "x-ms-examples": { + "ApiManagementListPolicyDescriptions": { + "$ref": "./examples/ApiManagementListPolicyDescriptions.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "scope", + "in": "query", + "required": false, + "type": "string", + "description": "Policy scope.", + "enum": [ + "Tenant", + "Product", + "Api", + "Operation", + "All" + ], + "x-ms-enum": { + "name": "PolicyScopeContract", + "modelAsString": false + } + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Returns an array of policy descriptions.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyDescriptionCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimportalsettings.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimportalsettings.json new file mode 100644 index 000000000000..f0a3d19cde17 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimportalsettings.json @@ -0,0 +1,657 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on PortalSettings entity associated with your Azure API Management deployment. Using this entity you can manage settings for a Developer Portal.", + "version": "2019-12-01-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/portalsettings/signin": { + "head": { + "tags": [ + "SignInSettings" + ], + "operationId": "SignInSettings_GetEntityTag", + "description": "Gets the entity state (Etag) version of the SignInSettings.", + "x-ms-examples": { + "ApiManagementHeadSignInSettings": { + "$ref": "./examples/ApiManagementHeadSignInSettings.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation completed successfully.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "SignInSettings" + ], + "operationId": "SignInSettings_Get", + "description": "Get Sign In Settings for the Portal", + "x-ms-examples": { + "ApiManagementPortalSettingsGetSignIn": { + "$ref": "./examples/ApiManagementPortalSettingsGetSignIn.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Sign-In settings.", + "schema": { + "$ref": "./definitions.json#/definitions/PortalSigninSettings" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "SignInSettings" + ], + "operationId": "SignInSettings_Update", + "description": "Update Sign-In settings.", + "x-ms-examples": { + "ApiManagementPortalSettingsUpdateSignIn": { + "$ref": "./examples/ApiManagementPortalSettingsUpdateSignIn.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/PortalSigninSettings" + }, + "description": "Update Sign-In settings." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Sign-In settings was updated successfully." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "SignInSettings" + ], + "operationId": "SignInSettings_CreateOrUpdate", + "description": "Create or Update Sign-In settings.", + "x-ms-examples": { + "ApiManagementPortalSettingsUpdateSignIn": { + "$ref": "./examples/ApiManagementPortalSettingsPutSignIn.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/PortalSigninSettings" + }, + "description": "Create or update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Sign-In settings was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/PortalSigninSettings" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/portalsettings/signup": { + "head": { + "tags": [ + "SignUpSettings" + ], + "operationId": "SignUpSettings_GetEntityTag", + "description": "Gets the entity state (Etag) version of the SignUpSettings.", + "x-ms-examples": { + "ApiManagementHeadSignUpSettings": { + "$ref": "./examples/ApiManagementHeadSignUpSettings.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation completed successfully.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "SignUpSettings" + ], + "operationId": "SignUpSettings_Get", + "description": "Get Sign Up Settings for the Portal", + "x-ms-examples": { + "ApiManagementPortalSettingsGetSignUp": { + "$ref": "./examples/ApiManagementPortalSettingsGetSignUp.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Sign-Up settings.", + "schema": { + "$ref": "./definitions.json#/definitions/PortalSignupSettings" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "SignUpSettings" + ], + "operationId": "SignUpSettings_Update", + "description": "Update Sign-Up settings.", + "x-ms-examples": { + "ApiManagementPortalSettingsUpdateSignUp": { + "$ref": "./examples/ApiManagementPortalSettingsUpdateSignUp.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/PortalSignupSettings" + }, + "description": "Update Sign-Up settings." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Sign-Up settings was updated successfully." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "SignUpSettings" + ], + "operationId": "SignUpSettings_CreateOrUpdate", + "description": "Create or Update Sign-Up settings.", + "x-ms-examples": { + "ApiManagementPortalSettingsUpdateSignUp": { + "$ref": "./examples/ApiManagementPortalSettingsPutSignUp.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/PortalSignupSettings" + }, + "description": "Create or update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Sign-Up settings was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/PortalSignupSettings" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/portalsettings/delegation": { + "head": { + "tags": [ + "DelegationSettings" + ], + "operationId": "DelegationSettings_GetEntityTag", + "description": "Gets the entity state (Etag) version of the DelegationSettings.", + "x-ms-examples": { + "ApiManagementHeadDelegationSettings": { + "$ref": "./examples/ApiManagementHeadDelegationSettings.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation completed successfully.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "DelegationSettings" + ], + "operationId": "DelegationSettings_Get", + "description": "Get Delegation Settings for the Portal.", + "x-ms-examples": { + "ApiManagementPortalSettingsGetDelegation": { + "$ref": "./examples/ApiManagementPortalSettingsGetDelegation.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delegation settings.", + "schema": { + "$ref": "./definitions.json#/definitions/PortalDelegationSettings" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "DelegationSettings" + ], + "operationId": "DelegationSettings_Update", + "description": "Update Delegation settings.", + "x-ms-examples": { + "ApiManagementPortalSettingsUpdateDelegation": { + "$ref": "./examples/ApiManagementPortalSettingsUpdateDelegation.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/PortalDelegationSettings" + }, + "description": "Update Delegation settings." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delegation settings was updated successfully." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "DelegationSettings" + ], + "operationId": "DelegationSettings_CreateOrUpdate", + "description": "Create or Update Delegation settings.", + "x-ms-examples": { + "ApiManagementPortalSettingsUpdateDelegation": { + "$ref": "./examples/ApiManagementPortalSettingsPutDelegation.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/PortalDelegationSettings" + }, + "description": "Create or update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delegation settings was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/PortalDelegationSettings" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/portalsettings/delegation/listSecrets": { + "post": { + "tags": [ + "DelegationSettings" + ], + "operationId": "DelegationSettings_ListSecrets", + "description": "Gets the secret validation key of the DelegationSettings.", + "x-ms-examples": { + "ApiManagementListSecretsPortalSettings": { + "$ref": "./examples/ApiManagementListSecretsPortalSettingsValidationKey.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the validation key.", + "schema": { + "$ref": "./definitions.json#/definitions/PortalSettingValidationKeyContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimproducts.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimproducts.json new file mode 100644 index 000000000000..1e5c03373f40 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimproducts.json @@ -0,0 +1,1399 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Product entity associated with your Azure API Management deployment. The Product entity represents a product in API Management. Products include one or more APIs and their associated terms of use. Once a product is published, developers can subscribe to the product and begin to use the product’s APIs.", + "version": "2019-12-01-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products": { + "get": { + "tags": [ + "Product" + ], + "operationId": "Product_ListByService", + "description": "Lists a collection of products in the specified service instance.", + "x-ms-examples": { + "ApiManagementListProducts": { + "$ref": "./examples/ApiManagementListProducts.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| terms | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| state | filter | eq | |
| groups | expand | | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "expandGroups", + "in": "query", + "required": false, + "type": "boolean", + "description": "When set to true, the response contains an array of groups that have visibility to the product. The default is false." + }, + { + "name": "tags", + "in": "query", + "required": false, + "type": "string", + "description": "Products which are part of a specific tag." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A Collection of the Product entities for the specified API Management service instance.", + "schema": { + "$ref": "./definitions.json#/definitions/ProductCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ProductContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}": { + "head": { + "tags": [ + "Product" + ], + "operationId": "Product_GetEntityTag", + "description": "Gets the entity state (Etag) version of the product specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadProduct": { + "$ref": "./examples/ApiManagementHeadProduct.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified Product entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Product" + ], + "operationId": "Product_Get", + "description": "Gets the details of the product specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetProduct": { + "$ref": "./examples/ApiManagementGetProduct.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Product entity.", + "schema": { + "$ref": "./definitions.json#/definitions/ProductContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Product" + ], + "operationId": "Product_CreateOrUpdate", + "description": "Creates or Updates a product.", + "x-ms-examples": { + "ApiManagementCreateProduct": { + "$ref": "./examples/ApiManagementCreateProduct.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/ProductContract" + }, + "description": "Create or update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Product was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/ProductContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Product was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/ProductContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Product" + ], + "operationId": "Product_Update", + "description": "Update existing product details.", + "x-ms-examples": { + "ApiManagementUpdateProduct": { + "$ref": "./examples/ApiManagementUpdateProduct.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/ProductUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Product details was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Product" + ], + "operationId": "Product_Delete", + "description": "Delete product.", + "x-ms-examples": { + "ApiManagementDeleteProduct": { + "$ref": "./examples/ApiManagementDeleteProduct.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "name": "deleteSubscriptions", + "in": "query", + "required": false, + "type": "boolean", + "description": "Delete existing subscriptions associated with the product or not." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Product was successfully removed." + }, + "204": { + "description": "Product was successfully removed by previous request or does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/apis": { + "get": { + "tags": [ + "ProductApi" + ], + "operationId": "ProductApi_ListByProduct", + "description": "Lists a collection of the APIs associated with a product.", + "x-ms-examples": { + "ApiManagementListProductApis": { + "$ref": "./examples/ApiManagementListProductApis.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| serviceUrl | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| path | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains a collection of Api entities in the product.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ApiContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/apis/{apiId}": { + "head": { + "tags": [ + "ProductApi" + ], + "operationId": "ProductApi_CheckEntityExists", + "description": "Checks that API entity specified by identifier is associated with the Product entity.", + "x-ms-examples": { + "ApiManagementHeadProductApi": { + "$ref": "./examples/ApiManagementHeadProductApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Entity exists" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ProductApi" + ], + "operationId": "ProductApi_CreateOrUpdate", + "description": "Adds an API to the specified product.", + "x-ms-examples": { + "ApiManagementCreateProductApi": { + "$ref": "./examples/ApiManagementCreateProductApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "The API was successfully added to the product.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiContract" + } + }, + "200": { + "description": "The specified API is already added to the product.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ProductApi" + ], + "operationId": "ProductApi_Delete", + "description": "Deletes the specified API from the specified product.", + "x-ms-examples": { + "ApiManagementDeleteProductApi": { + "$ref": "./examples/ApiManagementDeleteProductApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "API was successfully removed from product" + }, + "204": { + "description": "API successfully removed by previous request or does not exist in product" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/groups": { + "get": { + "tags": [ + "ProductGroup" + ], + "operationId": "ProductGroup_ListByProduct", + "description": "Lists the collection of developer groups associated with the specified product.", + "x-ms-examples": { + "ApiManagementListProductGroups": { + "$ref": "./examples/ApiManagementListProductGroups.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | |
| displayName | filter | eq, ne | |
| description | filter | eq, ne | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Group entities.", + "schema": { + "$ref": "./definitions.json#/definitions/GroupCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/GroupContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/groups/{groupId}": { + "head": { + "tags": [ + "ProductGroup" + ], + "operationId": "ProductGroup_CheckEntityExists", + "description": "Checks that Group entity specified by identifier is associated with the Product entity.", + "x-ms-examples": { + "ApiManagementHeadProductGroup": { + "$ref": "./examples/ApiManagementHeadProductGroup.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The Group is associated with the Product." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ProductGroup" + ], + "operationId": "ProductGroup_CreateOrUpdate", + "description": "Adds the association between the specified developer group with the specified product.", + "x-ms-examples": { + "ApiManagementCreateProductGroup": { + "$ref": "./examples/ApiManagementCreateProductGroup.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "The group was successfully associated with the product.", + "schema": { + "$ref": "./definitions.json#/definitions/GroupContract" + } + }, + "200": { + "description": "The specified group is already associated with the product.", + "schema": { + "$ref": "./definitions.json#/definitions/GroupContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ProductGroup" + ], + "operationId": "ProductGroup_Delete", + "description": "Deletes the association between the specified group and product.", + "x-ms-examples": { + "ApiManagementDeleteProductGroup": { + "$ref": "./examples/ApiManagementDeleteProductGroup.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The group was successfully disassociated with the product." + }, + "204": { + "description": "The group was successfully disassociated with the product." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/subscriptions": { + "get": { + "tags": [ + "ProductSubscription" + ], + "operationId": "ProductSubscriptions_List", + "description": "Lists the collection of subscriptions to the specified product.", + "x-ms-examples": { + "ApiManagementListProductSubscriptions": { + "$ref": "./examples/ApiManagementListProductSubscriptions.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| stateComment | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| ownerId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| scope | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| userId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| productId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| state | filter | eq | |
| user | expand | | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of subscription entities.", + "schema": { + "$ref": "./definitions.json#/definitions/SubscriptionCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/SubscriptionContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/policies": { + "get": { + "tags": [ + "ProductPolicy" + ], + "operationId": "ProductPolicy_ListByProduct", + "description": "Get the policy configuration at the Product level.", + "x-ms-examples": { + "ApiManagementListProductPolicies": { + "$ref": "./examples/ApiManagementListProductPolicies.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Product Policy information.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/policies/{policyId}": { + "head": { + "tags": [ + "ProductPolicy" + ], + "operationId": "ProductPolicy_GetEntityTag", + "description": "Get the ETag of the policy configuration at the Product level.", + "x-ms-examples": { + "ApiManagementHeadProductPolicy": { + "$ref": "./examples/ApiManagementHeadProductPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Product Policy Etag information.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ProductPolicy" + ], + "operationId": "ProductPolicy_Get", + "description": "Get the policy configuration at the Product level.", + "x-ms-examples": { + "ApiManagementGetProductPolicy": { + "$ref": "./examples/ApiManagementGetProductPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyExportFormat" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Product Policy information.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ProductPolicy" + ], + "operationId": "ProductPolicy_CreateOrUpdate", + "description": "Creates or updates policy configuration for the Product.", + "x-ms-examples": { + "ApiManagementCreateProductPolicy": { + "$ref": "./examples/ApiManagementCreateProductPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "description": "The policy contents to apply." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Product policy configuration was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Product policy configuration of the tenant was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ProductPolicy" + ], + "operationId": "ProductPolicy_Delete", + "description": "Deletes the policy configuration at the Product.", + "x-ms-examples": { + "ApiManagementDeleteProductPolicy": { + "$ref": "./examples/ApiManagementDeleteProductPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the policy configuration at the Product level." + }, + "204": { + "description": "Successfully deleted the policy configuration at the Product level." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/tags": { + "get": { + "tags": [ + "ProductTag" + ], + "operationId": "Tag_ListByProduct", + "description": "Lists all Tags associated with the Product.", + "x-ms-examples": { + "ApiManagementListProductTags": { + "$ref": "./examples/ApiManagementListProductTags.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation returns a collection of tags associated with the Product entity.", + "schema": { + "$ref": "./definitions.json#/definitions/TagCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/TagContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/tags/{tagId}": { + "head": { + "tags": [ + "ProductTag" + ], + "operationId": "Tag_GetEntityStateByProduct", + "description": "Gets the entity state version of the tag specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadProductTag": { + "$ref": "./examples/ApiManagementHeadProductTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Empty response body, ETag header entity state version.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ProductTag" + ], + "operationId": "Tag_GetByProduct", + "description": "Get tag associated with the Product.", + "x-ms-examples": { + "ApiManagementGetProductTag": { + "$ref": "./examples/ApiManagementGetProductTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Gets the details of the tag specified by its identifier.", + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ProductTag" + ], + "operationId": "Tag_AssignToProduct", + "description": "Assign tag to the Product.", + "x-ms-examples": { + "ApiManagementCreateProductTag": { + "$ref": "./examples/ApiManagementCreateProductTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Tag was assigned to the Product.", + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + } + }, + "200": { + "description": "Tag is already assigned to the Product.", + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ProductTag" + ], + "operationId": "Tag_DetachFromProduct", + "description": "Detach the tag from the Product.", + "x-ms-examples": { + "ApiManagementDeleteProductTag": { + "$ref": "./examples/ApiManagementDeleteProductTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully detached the tag from the Product." + }, + "204": { + "description": "Successfully detached the tag from the Product." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimproductsByTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimproductsByTags.json new file mode 100644 index 000000000000..b48a9442ece4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimproductsByTags.json @@ -0,0 +1,106 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations to retrieve Products by Tags in Azure API Management deployment.", + "version": "2019-12-01-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/productsByTags": { + "get": { + "tags": [ + "ProductsByTag" + ], + "operationId": "Product_ListByTags", + "description": "Lists a collection of products associated with tags.", + "x-ms-examples": { + "ApiManagementListProductsByTags": { + "$ref": "./examples/ApiManagementListProductsByTags.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| terms | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| state | filter | eq | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "includeNotTaggedProducts", + "in": "query", + "required": false, + "type": "boolean", + "description": "Include not tagged Products." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of TagResource entities.", + "schema": { + "$ref": "./definitions.json#/definitions/TagResourceCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/TagResourceContract" + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimquotas.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimquotas.json new file mode 100644 index 000000000000..bc963ac6c6a0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimquotas.json @@ -0,0 +1,242 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Quota entity associated with your Azure API Management deployment. To configure call rate limit and quota policies refer to [how to configure call rate limit and quota](https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-product-with-rules#a-namepolicies-ato-configure-call-rate-limit-and-quota-policies).", + "version": "2019-12-01-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/quotas/{quotaCounterKey}": { + "get": { + "tags": [ + "QuotaByCounterKeys" + ], + "operationId": "QuotaByCounterKeys_ListByService", + "description": "Lists a collection of current quota counter periods associated with the counter-key configured in the policy on the specified service instance. The api does not support paging yet.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-product-with-rules#a-namepolicies-ato-configure-call-rate-limit-and-quota-policies", + "description": "Document describing how to configure the quota policies." + }, + "x-ms-examples": { + "ApiManagementGetQuotaCounterKeys": { + "$ref": "./examples/ApiManagementGetQuotaCounterKeys.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/QuotaCounterKeyParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of the quota counter values.", + "schema": { + "$ref": "./definitions.json#/definitions/QuotaCounterCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "QuotaByCounterKeys" + ], + "operationId": "QuotaByCounterKeys_Update", + "description": "Updates all the quota counter values specified with the existing quota counter key to a value in the specified service instance. This should be used for reset of the quota counter values.", + "x-ms-examples": { + "ApiManagementUpdateQuotaCounterKey": { + "$ref": "./examples/ApiManagementUpdateQuotaCounterKey.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/QuotaCounterKeyParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/QuotaCounterValueContractProperties" + }, + "description": "The value of the quota counter to be applied to all quota counter periods." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Quota counter period was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/quotas/{quotaCounterKey}/periods/{quotaPeriodKey}": { + "get": { + "tags": [ + "QuotaByPeriodKeys" + ], + "operationId": "QuotaByPeriodKeys_Get", + "description": "Gets the value of the quota counter associated with the counter-key in the policy for the specific period in service instance.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-product-with-rules#a-namepolicies-ato-configure-call-rate-limit-and-quota-policies", + "description": "Document describing how to configure the quota policies." + }, + "x-ms-examples": { + "ApiManagementGetQuotaCounterKeysByQuotaPeriod": { + "$ref": "./examples/ApiManagementGetQuotaCounterKeysByQuotaPeriod.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/QuotaCounterKeyParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/QuotaPeriodKeyParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the Quota counter details for the specified period.", + "schema": { + "$ref": "./definitions.json#/definitions/QuotaCounterContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "QuotaByPeriodKeys" + ], + "operationId": "QuotaByPeriodKeys_Update", + "description": "Updates an existing quota counter value in the specified service instance.", + "x-ms-examples": { + "ApiManagementUpdateQuotaCounterKeyByQuotaPeriod": { + "$ref": "./examples/ApiManagementUpdateQuotaCounterKeyByQuotaPeriod.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/QuotaCounterKeyParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/QuotaPeriodKeyParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/QuotaCounterValueContractProperties" + }, + "description": "The value of the Quota counter to be applied on the specified period." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The quota counter value was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimregions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimregions.json new file mode 100644 index 000000000000..6ddc91b450da --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimregions.json @@ -0,0 +1,85 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations in Azure API Management deployment.", + "version": "2019-12-01-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/regions": { + "get": { + "tags": [ + "Region" + ], + "operationId": "Region_ListByService", + "description": "Lists all azure regions in which the service exists.", + "x-ms-examples": { + "ApiManagementListRegions": { + "$ref": "./examples/ApiManagementListRegions.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists of Regions in which the service is deployed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/RegionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimreports.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimreports.json new file mode 100644 index 000000000000..7c36098ced38 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimreports.json @@ -0,0 +1,514 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs to get the analytics reports associated with your Azure API Management deployment.", + "version": "2019-12-01-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/reports/byApi": { + "get": { + "tags": [ + "Reports" + ], + "operationId": "Reports_ListByApi", + "description": "Lists report records by API.", + "x-ms-examples": { + "ApiManagementGetReportsByApi": { + "$ref": "./examples/ApiManagementGetReportsByApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "description": "The filter to apply on the operation." + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "$orderby", + "in": "query", + "required": false, + "type": "string", + "description": "OData order by query option." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Report record.", + "schema": { + "$ref": "./definitions.json#/definitions/ReportCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ReportRecordContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/reports/byUser": { + "get": { + "tags": [ + "Reports" + ], + "operationId": "Reports_ListByUser", + "description": "Lists report records by User.", + "x-ms-examples": { + "ApiManagementGetReportsByUser": { + "$ref": "./examples/ApiManagementGetReportsByUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| timestamp | filter | ge, le | |
| displayName | select, orderBy | | |
| userId | select, filter | eq | |
| apiRegion | filter | eq | |
| productId | filter | eq | |
| subscriptionId | filter | eq | |
| apiId | filter | eq | |
| operationId | filter | eq | |
| callCountSuccess | select, orderBy | | |
| callCountBlocked | select, orderBy | | |
| callCountFailed | select, orderBy | | |
| callCountOther | select, orderBy | | |
| callCountTotal | select, orderBy | | |
| bandwidth | select, orderBy | | |
| cacheHitsCount | select | | |
| cacheMissCount | select | | |
| apiTimeAvg | select, orderBy | | |
| apiTimeMin | select | | |
| apiTimeMax | select | | |
| serviceTimeAvg | select | | |
| serviceTimeMin | select | | |
| serviceTimeMax | select | | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "$orderby", + "in": "query", + "required": false, + "type": "string", + "description": "OData order by query option." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Report record.", + "schema": { + "$ref": "./definitions.json#/definitions/ReportCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ReportRecordContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/reports/byOperation": { + "get": { + "tags": [ + "Reports" + ], + "operationId": "Reports_ListByOperation", + "description": "Lists report records by API Operations.", + "x-ms-examples": { + "ApiManagementGetReportsByOperation": { + "$ref": "./examples/ApiManagementGetReportsByOperation.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| timestamp | filter | ge, le | |
| displayName | select, orderBy | | |
| apiRegion | filter | eq | |
| userId | filter | eq | |
| productId | filter | eq | |
| subscriptionId | filter | eq | |
| apiId | filter | eq | |
| operationId | select, filter | eq | |
| callCountSuccess | select, orderBy | | |
| callCountBlocked | select, orderBy | | |
| callCountFailed | select, orderBy | | |
| callCountOther | select, orderBy | | |
| callCountTotal | select, orderBy | | |
| bandwidth | select, orderBy | | |
| cacheHitsCount | select | | |
| cacheMissCount | select | | |
| apiTimeAvg | select, orderBy | | |
| apiTimeMin | select | | |
| apiTimeMax | select | | |
| serviceTimeAvg | select | | |
| serviceTimeMin | select | | |
| serviceTimeMax | select | | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "$orderby", + "in": "query", + "required": false, + "type": "string", + "description": "OData order by query option." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Report record.", + "schema": { + "$ref": "./definitions.json#/definitions/ReportCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ReportRecordContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/reports/byProduct": { + "get": { + "tags": [ + "Reports" + ], + "operationId": "Reports_ListByProduct", + "description": "Lists report records by Product.", + "x-ms-examples": { + "ApiManagementGetReportsByProduct": { + "$ref": "./examples/ApiManagementGetReportsByProduct.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| timestamp | filter | ge, le | |
| displayName | select, orderBy | | |
| apiRegion | filter | eq | |
| userId | filter | eq | |
| productId | select, filter | eq | |
| subscriptionId | filter | eq | |
| callCountSuccess | select, orderBy | | |
| callCountBlocked | select, orderBy | | |
| callCountFailed | select, orderBy | | |
| callCountOther | select, orderBy | | |
| callCountTotal | select, orderBy | | |
| bandwidth | select, orderBy | | |
| cacheHitsCount | select | | |
| cacheMissCount | select | | |
| apiTimeAvg | select, orderBy | | |
| apiTimeMin | select | | |
| apiTimeMax | select | | |
| serviceTimeAvg | select | | |
| serviceTimeMin | select | | |
| serviceTimeMax | select | | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "$orderby", + "in": "query", + "required": false, + "type": "string", + "description": "OData order by query option." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Report record.", + "schema": { + "$ref": "./definitions.json#/definitions/ReportCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ReportRecordContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/reports/byGeo": { + "get": { + "tags": [ + "Reports" + ], + "operationId": "Reports_ListByGeo", + "description": "Lists report records by geography.", + "x-ms-examples": { + "ApiManagementGetReportsByGeo": { + "$ref": "./examples/ApiManagementGetReportsByGeo.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| timestamp | filter | ge, le | |
| country | select | | |
| region | select | | |
| zip | select | | |
| apiRegion | filter | eq | |
| userId | filter | eq | |
| productId | filter | eq | |
| subscriptionId | filter | eq | |
| apiId | filter | eq | |
| operationId | filter | eq | |
| callCountSuccess | select | | |
| callCountBlocked | select | | |
| callCountFailed | select | | |
| callCountOther | select | | |
| bandwidth | select, orderBy | | |
| cacheHitsCount | select | | |
| cacheMissCount | select | | |
| apiTimeAvg | select | | |
| apiTimeMin | select | | |
| apiTimeMax | select | | |
| serviceTimeAvg | select | | |
| serviceTimeMin | select | | |
| serviceTimeMax | select | | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Report record.", + "schema": { + "$ref": "./definitions.json#/definitions/ReportCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ReportRecordContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/reports/bySubscription": { + "get": { + "tags": [ + "Reports" + ], + "operationId": "Reports_ListBySubscription", + "description": "Lists report records by subscription.", + "x-ms-examples": { + "ApiManagementGetReportsBySubscription": { + "$ref": "./examples/ApiManagementGetReportsBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| timestamp | filter | ge, le | |
| displayName | select, orderBy | | |
| apiRegion | filter | eq | |
| userId | select, filter | eq | |
| productId | select, filter | eq | |
| subscriptionId | select, filter | eq | |
| callCountSuccess | select, orderBy | | |
| callCountBlocked | select, orderBy | | |
| callCountFailed | select, orderBy | | |
| callCountOther | select, orderBy | | |
| callCountTotal | select, orderBy | | |
| bandwidth | select, orderBy | | |
| cacheHitsCount | select | | |
| cacheMissCount | select | | |
| apiTimeAvg | select, orderBy | | |
| apiTimeMin | select | | |
| apiTimeMax | select | | |
| serviceTimeAvg | select | | |
| serviceTimeMin | select | | |
| serviceTimeMax | select | | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "$orderby", + "in": "query", + "required": false, + "type": "string", + "description": "OData order by query option." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Report record.", + "schema": { + "$ref": "./definitions.json#/definitions/ReportCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ReportRecordContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/reports/byTime": { + "get": { + "tags": [ + "Reports" + ], + "operationId": "Reports_ListByTime", + "description": "Lists report records by Time.", + "x-ms-examples": { + "ApiManagementGetReportsByTime": { + "$ref": "./examples/ApiManagementGetReportsByTime.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| timestamp | filter, select | ge, le | |
| interval | select | | |
| apiRegion | filter | eq | |
| userId | filter | eq | |
| productId | filter | eq | |
| subscriptionId | filter | eq | |
| apiId | filter | eq | |
| operationId | filter | eq | |
| callCountSuccess | select | | |
| callCountBlocked | select | | |
| callCountFailed | select | | |
| callCountOther | select | | |
| bandwidth | select, orderBy | | |
| cacheHitsCount | select | | |
| cacheMissCount | select | | |
| apiTimeAvg | select | | |
| apiTimeMin | select | | |
| apiTimeMax | select | | |
| serviceTimeAvg | select | | |
| serviceTimeMin | select | | |
| serviceTimeMax | select | | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "$orderby", + "in": "query", + "required": false, + "type": "string", + "description": "OData order by query option." + }, + { + "name": "interval", + "in": "query", + "required": true, + "type": "string", + "format": "duration", + "description": "By time interval. Interval must be multiple of 15 minutes and may not be zero. The value should be in ISO 8601 format (http://en.wikipedia.org/wiki/ISO_8601#Durations).This code can be used to convert TimeSpan to a valid interval string: XmlConvert.ToString(new TimeSpan(hours, minutes, seconds))." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Report record.", + "schema": { + "$ref": "./definitions.json#/definitions/ReportCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ReportRecordContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/reports/byRequest": { + "get": { + "tags": [ + "Reports" + ], + "operationId": "Reports_ListByRequest", + "description": "Lists report records by Request.", + "x-ms-examples": { + "ApiManagementGetReportsByRequest": { + "$ref": "./examples/ApiManagementGetReportsByRequest.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| timestamp | filter | ge, le | |
| apiId | filter | eq | |
| operationId | filter | eq | |
| productId | filter | eq | |
| userId | filter | eq | |
| apiRegion | filter | eq | |
| subscriptionId | filter | eq | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Report record.", + "schema": { + "$ref": "./definitions.json#/definitions/RequestReportCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-odata": "./definitions.json#/definitions/RequestReportRecordContract" + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimsubscriptions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimsubscriptions.json new file mode 100644 index 000000000000..e65c6fed7c63 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimsubscriptions.json @@ -0,0 +1,502 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Subscription entity associated with your Azure API Management deployment. The Subscription entity represents the association between a user and a product in API Management. Products contain one or more APIs, and once a product is published, developers can subscribe to the product and begin to use the product’s APIs.", + "version": "2019-12-01-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/subscriptions": { + "get": { + "tags": [ + "Subscription" + ], + "operationId": "Subscription_List", + "description": "Lists all subscriptions of the API Management service instance.", + "x-ms-examples": { + "ApiManagementListSubscriptions": { + "$ref": "./examples/ApiManagementListSubscriptions.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| stateComment | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| ownerId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| scope | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| userId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| productId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| state | filter | eq | |
| user | expand | | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A collection of the Subscription entities for the specified API Management service instance.", + "schema": { + "$ref": "./definitions.json#/definitions/SubscriptionCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/SubscriptionContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/subscriptions/{sid}": { + "head": { + "tags": [ + "Subscription" + ], + "operationId": "Subscription_GetEntityTag", + "description": "Gets the entity state (Etag) version of the apimanagement subscription specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadSubscription": { + "$ref": "./examples/ApiManagementHeadSubscription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionEntityIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified apimanagement subscription entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Subscription" + ], + "operationId": "Subscription_Get", + "description": "Gets the specified Subscription entity.", + "x-ms-examples": { + "ApiManagementGetSubscription": { + "$ref": "./examples/ApiManagementGetSubscription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionEntityIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Subscription entity.", + "schema": { + "$ref": "./definitions.json#/definitions/SubscriptionContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Subscription" + ], + "operationId": "Subscription_CreateOrUpdate", + "description": "Creates or updates the subscription of specified user to the specified product.", + "x-ms-examples": { + "ApiManagementCreateSubscription": { + "$ref": "./examples/ApiManagementCreateSubscription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionEntityIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/SubscriptionCreateParameters" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/NotifySubscriptionStateChangeParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "The user was successfully subscribed to the product.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/SubscriptionContract" + } + }, + "200": { + "description": "The user already subscribed to the product.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/SubscriptionContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Subscription" + ], + "operationId": "Subscription_Update", + "description": "Updates the details of a subscription specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateSubscription": { + "$ref": "./examples/ApiManagementUpdateSubscription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionEntityIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/SubscriptionUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/NotifySubscriptionStateChangeParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The subscription details were successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Subscription" + ], + "operationId": "Subscription_Delete", + "description": "Deletes the specified subscription.", + "x-ms-examples": { + "ApiManagementDeleteSubscription": { + "$ref": "./examples/ApiManagementDeleteSubscription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionEntityIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The subscription details were successfully deleted." + }, + "204": { + "description": "The subscription details were successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/subscriptions/{sid}/regeneratePrimaryKey": { + "post": { + "tags": [ + "Subscription" + ], + "operationId": "Subscription_RegeneratePrimaryKey", + "description": "Regenerates primary key of existing subscription of the API Management service instance.", + "x-ms-examples": { + "ApiManagementSubscriptionRegeneratePrimaryKey": { + "$ref": "./examples/ApiManagementSubscriptionRegeneratePrimaryKey.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionEntityIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The primary key was successfully regenerated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/subscriptions/{sid}/regenerateSecondaryKey": { + "post": { + "tags": [ + "Subscription" + ], + "operationId": "Subscription_RegenerateSecondaryKey", + "description": "Regenerates secondary key of existing subscription of the API Management service instance.", + "x-ms-examples": { + "ApiManagementSubscriptionRegenerateSecondaryKey": { + "$ref": "./examples/ApiManagementSubscriptionRegenerateSecondaryKey.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionEntityIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The secondary key was successfully regenerated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/subscriptions/{sid}/listSecrets": { + "post": { + "tags": [ + "Subscription" + ], + "operationId": "Subscription_ListSecrets", + "description": "Gets the subscription keys.", + "x-ms-examples": { + "ApiManagementListSecretsSubscription": { + "$ref": "./examples/ApiManagementListSecretsSubscription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionEntityIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains subscription keys.", + "schema": { + "$ref": "./definitions.json#/definitions/SubscriptionKeysContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimtagresources.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimtagresources.json new file mode 100644 index 000000000000..3cc19f16cb05 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimtagresources.json @@ -0,0 +1,99 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for querying APIs. Operations and Products by tags in your Azure API Management deployment.", + "version": "2019-12-01-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tagResources": { + "get": { + "tags": [ + "TagResource" + ], + "operationId": "TagResource_ListByService", + "description": "Lists a collection of resources associated with tags.", + "x-ms-examples": { + "ApiManagementListTagResources": { + "$ref": "./examples/ApiManagementListTagResources.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| aid | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| apiName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| apiRevision | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| path | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| serviceUrl | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| method | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| urlTemplate | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| terms | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| state | filter | eq | |
| isCurrent | filter | eq | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of TagResource entities.", + "schema": { + "$ref": "./definitions.json#/definitions/TagResourceCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/TagResourceContract" + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimtags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimtags.json new file mode 100644 index 000000000000..f68fe9ad2a81 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimtags.json @@ -0,0 +1,374 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Tag entity in your Azure API Management deployment. Tags can be assigned to APIs, Operations and Products.", + "version": "2019-12-01-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tags": { + "get": { + "tags": [ + "Tag" + ], + "operationId": "Tag_ListByService", + "description": "Lists a collection of tags defined within a service instance.", + "x-ms-examples": { + "ApiManagementListTags": { + "$ref": "./examples/ApiManagementListTags.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "scope", + "in": "query", + "required": false, + "type": "string", + "description": "Scope like 'apis', 'products' or 'apis/{apiId}" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Tag entities.", + "schema": { + "$ref": "./definitions.json#/definitions/TagCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/TagContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tags/{tagId}": { + "head": { + "tags": [ + "Tag" + ], + "operationId": "Tag_GetEntityState", + "description": "Gets the entity state version of the tag specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadTag": { + "$ref": "./examples/ApiManagementHeadTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Empty response body, ETag header entity state version.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Tag" + ], + "operationId": "Tag_Get", + "description": "Gets the details of the tag specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetTag": { + "$ref": "./examples/ApiManagementGetTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Tag entity.", + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Tag" + ], + "operationId": "Tag_CreateOrUpdate", + "description": "Creates a tag.", + "x-ms-examples": { + "ApiManagementCreateTag": { + "$ref": "./examples/ApiManagementCreateTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/TagCreateUpdateParameters" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Tag was created successfully.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + } + }, + "200": { + "description": "Tag already exists.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Tag" + ], + "operationId": "Tag_Update", + "description": "Updates the details of the tag specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateTag": { + "$ref": "./examples/ApiManagementUpdateTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/TagCreateUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The tag details were successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Tag" + ], + "operationId": "Tag_Delete", + "description": "Deletes specific tag of the API Management service instance.", + "x-ms-examples": { + "ApiManagementDeleteTag": { + "$ref": "./examples/ApiManagementDeleteTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Tag successfully removed" + }, + "204": { + "description": "Tag successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimtenant.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimtenant.json new file mode 100644 index 000000000000..7dc999f6a6ee --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimtenant.json @@ -0,0 +1,740 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on tenant entity associated with your Azure API Management deployment. Using this entity you can manage properties and configuration that apply to the entire API Management service instance.", + "version": "2019-12-01-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{accessName}": { + "head": { + "tags": [ + "TenantAccess" + ], + "operationId": "TenantAccess_GetEntityTag", + "description": "Tenant access metadata", + "x-ms-examples": { + "ApiManagementHeadTenantAccess": { + "$ref": "./examples/ApiManagementHeadTenantAccess.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AccessParameter" + } + ], + "responses": { + "200": { + "description": "Operation completed successfully.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "TenantAccess" + ], + "operationId": "TenantAccess_Get", + "description": "Get tenant access information details without secrets.", + "x-ms-examples": { + "ApiManagementGetTenantAccess": { + "$ref": "./examples/ApiManagementGetTenantAccess.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AccessParameter" + } + ], + "responses": { + "200": { + "description": "Tenant Access information.", + "schema": { + "$ref": "./definitions.json#/definitions/AccessInformationContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "TenantAccess" + ], + "operationId": "TenantAccess_Update", + "description": "Update tenant access information details.", + "x-ms-examples": { + "ApiManagementUpdateTenantAccess": { + "$ref": "./examples/ApiManagementUpdateTenantAccess.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/AccessInformationUpdateParameters" + }, + "description": "Parameters supplied to retrieve the Tenant Access Information." + }, + { + "$ref": "./apimanagement.json#/parameters/AccessParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Tenant's access information updated successfully." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{accessName}/regeneratePrimaryKey": { + "post": { + "tags": [ + "TenantAccess" + ], + "operationId": "TenantAccess_RegeneratePrimaryKey", + "description": "Regenerate primary access key", + "x-ms-examples": { + "ApiManagementTenantAccessRegenerateKey": { + "$ref": "./examples/ApiManagementTenantAccessRegenerateKey.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AccessParameter" + } + ], + "responses": { + "204": { + "description": "The primary key was successfully regenerated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{accessName}/regenerateSecondaryKey": { + "post": { + "tags": [ + "TenantAccess" + ], + "operationId": "TenantAccess_RegenerateSecondaryKey", + "description": "Regenerate secondary access key", + "x-ms-examples": { + "ApiManagementTenantAccessRegenerateKey": { + "$ref": "./examples/ApiManagementTenantAccessRegenerateKey.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AccessParameter" + } + ], + "responses": { + "204": { + "description": "The secondary key was successfully regenerated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{accessName}/listSecrets": { + "post": { + "tags": [ + "TenantAccess" + ], + "operationId": "TenantAccess_ListSecrets", + "description": "Get tenant access information details.", + "x-ms-examples": { + "ApiManagementListSecretsTenantAccess": { + "$ref": "./examples/ApiManagementListSecretsTenantAccess.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AccessParameter" + } + ], + "responses": { + "200": { + "description": "Tenant Access information.", + "schema": { + "$ref": "./definitions.json#/definitions/AccessInformationContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{accessName}/git": { + "get": { + "tags": [ + "TenantAccessGit" + ], + "operationId": "TenantAccessGit_Get", + "description": "Gets the Git access configuration for the tenant. Without secrets.", + "x-ms-examples": { + "ApiManagementGetTenantAccess": { + "$ref": "./examples/ApiManagementGetTenantAccess.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AccessParameter" + } + ], + "responses": { + "200": { + "description": "Git Access Information for the Service.", + "schema": { + "$ref": "./definitions.json#/definitions/AccessInformationContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{accessName}/git/regeneratePrimaryKey": { + "post": { + "tags": [ + "TenantAccessGit" + ], + "operationId": "TenantAccessGit_RegeneratePrimaryKey", + "description": "Regenerate primary access key for GIT.", + "x-ms-examples": { + "ApiManagementTenantAccessRegenerateKey": { + "$ref": "./examples/ApiManagementTenantAccessRegenerateKey.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AccessParameter" + } + ], + "responses": { + "204": { + "description": "The primary key was successfully regenerated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{accessName}/git/regenerateSecondaryKey": { + "post": { + "tags": [ + "TenantAccessGit" + ], + "operationId": "TenantAccessGit_RegenerateSecondaryKey", + "description": "Regenerate secondary access key for GIT.", + "x-ms-examples": { + "ApiManagementTenantAccessRegenerateKey": { + "$ref": "./examples/ApiManagementTenantAccessRegenerateKey.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AccessParameter" + } + ], + "responses": { + "204": { + "description": "The secondary key was successfully regenerated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{accessName}/git/listSecrets": { + "post": { + "tags": [ + "TenantAccessGit" + ], + "operationId": "TenantAccessGit_ListSecrets", + "description": "Gets the Git access configuration for the tenant.", + "x-ms-examples": { + "ApiManagementListSecretsTenantAccess": { + "$ref": "./examples/ApiManagementListSecretsTenantAccess.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AccessParameter" + } + ], + "responses": { + "200": { + "description": "Git Access Information for the Service.", + "schema": { + "$ref": "./definitions.json#/definitions/AccessInformationContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{configurationName}/deploy": { + "post": { + "tags": [ + "TenantConfiguration" + ], + "operationId": "TenantConfiguration_Deploy", + "description": "This operation applies changes from the specified Git branch to the configuration database. This is a long running operation and could take several minutes to complete.", + "externalDocs": { + "description": "To deploy any service configuration changes to the API Management service instance", + "url": "https://azure.microsoft.com/en-us/documentation/articles/api-management-configuration-repository-git/#to-deploy-any-service-configuration-changes-to-the-api-management-service-instance" + }, + "x-ms-examples": { + "ApiManagementTenantConfigurationDeploy": { + "$ref": "./examples/ApiManagementTenantConfigurationDeploy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/DeployConfigurationParameters" + }, + "description": "Deploy Configuration parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ConfigurationParameter" + } + ], + "responses": { + "202": { + "description": "Accepted: Location header contains the URL where the status of the long running operation can be checked." + }, + "200": { + "description": "Result of applying changes from Git branch to database.", + "schema": { + "$ref": "./definitions.json#/definitions/OperationResultContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{configurationName}/save": { + "post": { + "tags": [ + "TenantConfiguration" + ], + "operationId": "TenantConfiguration_Save", + "description": "This operation creates a commit with the current configuration snapshot to the specified branch in the repository. This is a long running operation and could take several minutes to complete.", + "externalDocs": { + "description": "To save the service configuration to the Git repository", + "url": "https://azure.microsoft.com/en-us/documentation/articles/api-management-configuration-repository-git/#to-save-the-service-configuration-to-the-git-repository" + }, + "x-ms-examples": { + "ApiManagementTenantConfigurationSave": { + "$ref": "./examples/ApiManagementTenantConfigurationSave.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/SaveConfigurationParameter" + }, + "description": "Save Configuration parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ConfigurationParameter" + } + ], + "responses": { + "202": { + "description": "Accepted: Location header contains the URL where the status of the long running operation can be checked." + }, + "200": { + "description": "Result of creating a commit in the repository.", + "schema": { + "$ref": "./definitions.json#/definitions/OperationResultContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{configurationName}/validate": { + "post": { + "tags": [ + "TenantConfiguration" + ], + "operationId": "TenantConfiguration_Validate", + "description": "This operation validates the changes in the specified Git branch. This is a long running operation and could take several minutes to complete.", + "x-ms-examples": { + "ApiManagementTenantConfigurationValidate": { + "$ref": "./examples/ApiManagementTenantConfigurationValidate.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/DeployConfigurationParameters" + }, + "description": "Validate Configuration parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ConfigurationParameter" + } + ], + "responses": { + "202": { + "description": "Accepted: Location header contains the URL where the status of the long running operation can be checked." + }, + "200": { + "description": "Result of validating the changes in the specified Git branch.", + "schema": { + "$ref": "./definitions.json#/definitions/OperationResultContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{configurationName}/syncState": { + "get": { + "tags": [ + "TenantConfigurationSyncState" + ], + "operationId": "TenantConfiguration_GetSyncState", + "description": "Gets the status of the most recent synchronization between the configuration database and the Git repository.", + "x-ms-examples": { + "ApiManagementTenantAccessSyncState": { + "$ref": "./examples/ApiManagementTenantAccessSyncState.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ConfigurationParameter" + } + ], + "responses": { + "200": { + "description": "Sync state result.", + "schema": { + "$ref": "./definitions.json#/definitions/TenantConfigurationSyncStateContract" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimusers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimusers.json new file mode 100644 index 000000000000..f721a13e6389 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/apimusers.json @@ -0,0 +1,702 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on User entity in Azure API Management deployment. The User entity in API Management represents the developers that call the APIs of the products to which they are subscribed.", + "version": "2019-12-01-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users": { + "get": { + "tags": [ + "User" + ], + "operationId": "User_ListByService", + "description": "Lists a collection of registered users in the specified service instance.", + "x-ms-examples": { + "ApiManagementListUsers": { + "$ref": "./examples/ApiManagementListUsers.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| firstName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| lastName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| email | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| state | filter | eq | |
| registrationDate | filter | ge, le, eq, ne, gt, lt | |
| note | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| groups | expand | | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "expandGroups", + "in": "query", + "type": "boolean", + "description": "Detailed Group in response." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of User entities.", + "schema": { + "$ref": "./definitions.json#/definitions/UserCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/UserContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}": { + "head": { + "tags": [ + "User" + ], + "operationId": "User_GetEntityTag", + "description": "Gets the entity state (Etag) version of the user specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadUser": { + "$ref": "./examples/ApiManagementHeadUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified user entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "User" + ], + "operationId": "User_Get", + "description": "Gets the details of the user specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetUser": { + "$ref": "./examples/ApiManagementGetUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Gets the specified user entity.", + "schema": { + "$ref": "./definitions.json#/definitions/UserContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "User" + ], + "operationId": "User_CreateOrUpdate", + "description": "Creates or Updates a user.", + "x-ms-examples": { + "ApiManagementCreateUser": { + "$ref": "./examples/ApiManagementCreateUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/UserCreateParameters" + }, + "description": "Create or update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "User was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/UserContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "User was successfully updated.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/UserContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "User" + ], + "operationId": "User_Update", + "description": "Updates the details of the user specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateUser": { + "$ref": "./examples/ApiManagementUpdateUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/UserUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The user details were successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "User" + ], + "operationId": "User_Delete", + "description": "Deletes specific user.", + "x-ms-examples": { + "ApiManagementDeleteUser": { + "$ref": "./examples/ApiManagementDeleteUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "name": "deleteSubscriptions", + "in": "query", + "required": false, + "type": "boolean", + "description": "Whether to delete user's subscription or not." + }, + { + "name": "notify", + "in": "query", + "required": false, + "type": "boolean", + "description": "Send an Account Closed Email notification to the User." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The user details were successfully deleted." + }, + "204": { + "description": "The user details were successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}/generateSsoUrl": { + "post": { + "tags": [ + "Users" + ], + "operationId": "User_GenerateSsoUrl", + "description": "Retrieves a redirection URL containing an authentication token for signing a given user into the developer portal.", + "x-ms-examples": { + "ApiManagementUserGenerateSsoUrl": { + "$ref": "./examples/ApiManagementUserGenerateSsoUrl.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the single sign-on URL.", + "schema": { + "x-ms-client-flatten": true, + "$ref": "./definitions.json#/definitions/GenerateSsoUrlResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}/groups": { + "get": { + "tags": [ + "UserGroup" + ], + "operationId": "UserGroup_List", + "description": "Lists all user groups.", + "x-ms-examples": { + "ApiManagementListUserGroups": { + "$ref": "./examples/ApiManagementListUserGroups.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Group entities.", + "schema": { + "$ref": "./definitions.json#/definitions/GroupCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/GroupContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}/subscriptions": { + "get": { + "tags": [ + "UserSubscription" + ], + "operationId": "UserSubscription_List", + "description": "Lists the collection of subscriptions of the specified user.", + "x-ms-examples": { + "ApiManagementListUserSubscriptions": { + "$ref": "./examples/ApiManagementListUserSubscriptions.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| stateComment | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| ownerId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| scope | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| userId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| productId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Subscription entities.", + "schema": { + "$ref": "./definitions.json#/definitions/SubscriptionCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/SubscriptionContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}/identities": { + "get": { + "tags": [ + "UserIdentity" + ], + "operationId": "UserIdentities_List", + "description": "List of all user identities.", + "x-ms-examples": { + "ApiManagementListUserIdentities": { + "$ref": "./examples/ApiManagementListUserIdentities.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists of User Identities.", + "schema": { + "$ref": "./definitions.json#/definitions/UserIdentityCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}/token": { + "post": { + "tags": [ + "UserToken" + ], + "operationId": "User_GetSharedAccessToken", + "description": "Gets the Shared Access Authorization Token for the User.", + "x-ms-examples": { + "ApiManagementUserToken": { + "$ref": "./examples/ApiManagementUserToken.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/UserTokenParameters" + }, + "description": "Create Authorization Token parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the authorization token for the user.", + "schema": { + "x-ms-client-flatten": true, + "$ref": "./definitions.json#/definitions/UserTokenResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}/confirmations/password/send": { + "post": { + "tags": [ + "UserConfirmationPasswordSend" + ], + "operationId": "UserConfirmationPassword_Send", + "description": "Sends confirmation", + "x-ms-examples": { + "ApiManagementUserConfirmationPasswordSend": { + "$ref": "./examples/ApiManagementUserConfirmationPasswordSend.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Notification successfully sent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/definitions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/definitions.json new file mode 100644 index 000000000000..3ce3a7c7b67b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/definitions.json @@ -0,0 +1,5561 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-12-01-preview", + "description": "A spec file containing all the definitions", + "title": "Definitions file" + }, + "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": {}, + "definitions": { + "AccessInformationContract": { + "properties": { + "id": { + "type": "string", + "description": "Identifier." + }, + "primaryKey": { + "type": "string", + "description": "Primary access key. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value." + }, + "secondaryKey": { + "type": "string", + "description": "Secondary access key. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value." + }, + "enabled": { + "type": "boolean", + "description": "Determines whether direct access is enabled." + } + }, + "description": "Tenant access information contract of the API Management service." + }, + "AccessInformationUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AccessInformationUpdateParameterProperties", + "description": "Tenant access information update parameter properties." + } + }, + "description": "Tenant access information update parameters." + }, + "AccessInformationUpdateParameterProperties": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Determines whether direct access is enabled." + } + }, + "description": "Tenant access information update parameters of the API Management service" + }, + "ApiCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiContract" + }, + "description": "Page values.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Next page link if any.", + "readOnly": true + } + }, + "description": "Paged Api list representation." + }, + "ApiContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApiContractProperties", + "description": "Api entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Api details." + }, + "ApiContractProperties": { + "properties": { + "sourceApiId": { + "type": "string", + "description": "API identifier of the source API." + }, + "displayName": { + "type": "string", + "description": "API name. Must be 1 to 300 characters long.", + "minLength": 1, + "maxLength": 300 + }, + "serviceUrl": { + "type": "string", + "description": "Absolute URL of the backend service implementing this API. Cannot be more than 2000 characters long.", + "minLength": 0, + "maxLength": 2000 + }, + "path": { + "type": "string", + "description": "Relative URL uniquely identifying this API and all of its resource paths within the API Management service instance. It is appended to the API endpoint base URL specified during the service instance creation to form a public URL for this API.", + "minLength": 0, + "maxLength": 400 + }, + "protocols": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "http", + "https" + ], + "x-ms-enum": { + "name": "Protocol", + "modelAsString": false + } + }, + "description": "Describes on which protocols the operations in this API can be invoked." + }, + "apiVersionSet": { + "description": "Version set details", + "$ref": "#/definitions/ApiVersionSetContractDetails" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ApiEntityBaseContract" + } + ], + "required": [ + "path" + ], + "description": "Api Entity Properties" + }, + "ApiCreateOrUpdateParameter": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApiCreateOrUpdateProperties", + "description": "Api entity create of update properties." + } + }, + "description": "API Create or Update Parameters." + }, + "ApiCreateOrUpdateProperties": { + "properties": { + "value": { + "type": "string", + "description": "Content value when Importing an API." + }, + "format": { + "type": "string", + "description": "Format of the Content in which the API is getting imported.", + "enum": [ + "wadl-xml", + "wadl-link-json", + "swagger-json", + "swagger-link-json", + "wsdl", + "wsdl-link", + "openapi", + "openapi+json", + "openapi-link", + "openapi+json-link" + ], + "x-ms-enum": { + "name": "ContentFormat", + "modelAsString": true, + "values": [ + { + "value": "wadl-xml", + "description": "The contents are inline and Content type is a WADL document." + }, + { + "value": "wadl-link-json", + "description": "The WADL document is hosted on a publicly accessible internet address." + }, + { + "value": "swagger-json", + "description": "The contents are inline and Content Type is a OpenApi 2.0 Document." + }, + { + "value": "swagger-link-json", + "description": "The Open Api 2.0 document is hosted on a publicly accessible internet address." + }, + { + "value": "wsdl", + "description": "The contents are inline and the document is a WSDL/Soap document." + }, + { + "value": "wsdl-link", + "description": "The WSDL document is hosted on a publicly accessible internet address." + }, + { + "value": "openapi", + "description": "The contents are inline and Content Type is a OpenApi 3.0 Document in YAML format." + }, + { + "value": "openapi+json", + "description": "The contents are inline and Content Type is a OpenApi 3.0 Document in JSON format." + }, + { + "value": "openapi-link", + "description": "The Open Api 3.0 document is hosted on a publicly accessible internet address." + }, + { + "value": "openapi+json-link", + "description": "The Open Api 3.0 Json document is hosted on a publicly accessible internet address." + } + ] + } + }, + "wsdlSelector": { + "type": "object", + "description": "Criteria to limit import of WSDL to a subset of the document.", + "properties": { + "wsdlServiceName": { + "type": "string", + "description": "Name of service to import from WSDL" + }, + "wsdlEndpointName": { + "type": "string", + "description": "Name of endpoint(port) to import from WSDL" + } + } + }, + "apiType": { + "type": "string", + "description": "Type of Api to create. \n * `http` creates a SOAP to REST API \n * `soap` creates a SOAP pass-through API .", + "enum": [ + "http", + "soap" + ], + "x-ms-client-name": "SoapApiType", + "x-ms-enum": { + "name": "SoapApiType", + "modelAsString": true, + "values": [ + { + "value": "http", + "description": "Imports a SOAP API having a RESTful front end.", + "name": "SoapToRest" + }, + { + "value": "soap", + "description": "Imports the Soap API having a SOAP front end.", + "name": "SoapPassThrough" + } + ] + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/ApiContractProperties" + } + ], + "description": "Api Create or Update Properties." + }, + "ApiEntityBaseContract": { + "properties": { + "description": { + "type": "string", + "description": "Description of the API. May include HTML formatting tags." + }, + "authenticationSettings": { + "$ref": "#/definitions/AuthenticationSettingsContract", + "description": "Collection of authentication settings included into this API." + }, + "subscriptionKeyParameterNames": { + "$ref": "#/definitions/SubscriptionKeyParameterNamesContract", + "description": "Protocols over which API is made available." + }, + "type": { + "type": "string", + "description": "Type of API.", + "enum": [ + "http", + "soap" + ], + "x-ms-client-name": "ApiType", + "x-ms-enum": { + "name": "ApiType", + "modelAsString": true + } + }, + "apiRevision": { + "type": "string", + "description": "Describes the Revision of the Api. If no value is provided, default revision 1 is created", + "minLength": 1, + "maxLength": 100 + }, + "apiVersion": { + "type": "string", + "description": "Indicates the Version identifier of the API if the API is versioned", + "maxLength": 100 + }, + "isCurrent": { + "type": "boolean", + "description": "Indicates if API revision is current api revision." + }, + "isOnline": { + "type": "boolean", + "description": "Indicates if API revision is accessible via the gateway.", + "readOnly": true + }, + "apiRevisionDescription": { + "type": "string", + "description": "Description of the Api Revision.", + "maxLength": 256 + }, + "apiVersionDescription": { + "type": "string", + "description": "Description of the Api Version.", + "maxLength": 256 + }, + "apiVersionSetId": { + "type": "string", + "description": "A resource identifier for the related ApiVersionSet." + }, + "subscriptionRequired": { + "type": "boolean", + "description": "Specifies whether an API or Product subscription is required for accessing the API." + } + }, + "description": "API base contract details." + }, + "ApiExportResult": { + "properties": { + "id": { + "type": "string", + "description": "ResourceId of the API which was exported." + }, + "format": { + "type": "string", + "enum": [ + "swagger-link-json", + "wadl-link-json", + "wsdl-link+xml", + "openapi-link" + ], + "x-ms-client-name": "ExportResultFormat", + "x-ms-enum": { + "name": "ExportResultFormat", + "modelAsString": true, + "values": [ + { + "value": "swagger-link-json", + "description": "The Api Definition is exported in OpenApi Specification 2.0 format to the Storage Blob.", + "name": "Swagger" + }, + { + "value": "wsdl-link+xml", + "description": "The Api Definition is exported in WSDL Schema to Storage Blob. This is only supported for APIs of Type `soap`", + "name": "Wsdl" + }, + { + "value": "wadl-link-json", + "description": "Export the Api Definition in WADL Schema to Storage Blob.", + "name": "Wadl" + }, + { + "value": "openapi-link", + "description": "Export the Api Definition in OpenApi Specification 3.0 to Storage Blob.", + "name": "OpenApi" + } + ] + }, + "description": "Format in which the Api Details are exported to the Storage Blob with Sas Key valid for 5 minutes." + }, + "value": { + "type": "object", + "description": "The object defining the schema of the exported Api Detail", + "properties": { + "link": { + "type": "string", + "description": "Link to the Storage Blob containing the result of the export operation. The Blob Uri is only valid for 5 minutes." + } + } + } + }, + "description": "API Export result." + }, + "ApiReleaseCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiReleaseContract" + }, + "description": "Page values.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Next page link if any.", + "readOnly": true + } + }, + "description": "Paged ApiRelease list representation." + }, + "ApiReleaseContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApiReleaseContractProperties", + "description": "ApiRelease entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "ApiRelease details." + }, + "ApiReleaseContractProperties": { + "properties": { + "apiId": { + "type": "string", + "description": "Identifier of the API the release belongs to." + }, + "createdDateTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The time the API was released. The date conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard." + }, + "updatedDateTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The time the API release was updated." + }, + "notes": { + "type": "string", + "description": "Release Notes" + } + }, + "description": "API Release details" + }, + "ApiRevisionCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiRevisionContract" + }, + "description": "Page values.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Next page link if any.", + "readOnly": true + } + }, + "description": "Paged Api Revision list representation." + }, + "ApiRevisionContract": { + "properties": { + "apiId": { + "type": "string", + "readOnly": true, + "description": "Identifier of the API Revision." + }, + "apiRevision": { + "type": "string", + "minLength": 1, + "maxLength": 100, + "readOnly": true, + "description": "Revision number of API." + }, + "createdDateTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The time the API Revision was created. The date conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard." + }, + "updatedDateTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The time the API Revision were updated. The date conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard." + }, + "description": { + "type": "string", + "readOnly": true, + "maxLength": 256, + "description": "Description of the API Revision." + }, + "privateUrl": { + "type": "string", + "readOnly": true, + "description": "Gateway URL for accessing the non-current API Revision." + }, + "isOnline": { + "type": "boolean", + "readOnly": true, + "description": "Indicates if API revision is the current api revision." + }, + "isCurrent": { + "type": "boolean", + "readOnly": true, + "description": "Indicates if API revision is accessible via the gateway." + } + }, + "description": "Summary of revision metadata." + }, + "ApiRevisionInfoContract": { + "description": "Object used to create an API Revision or Version based on an existing API Revision", + "properties": { + "sourceApiId": { + "type": "string", + "description": "Resource identifier of API to be used to create the revision from." + }, + "apiVersionName": { + "type": "string", + "maxLength": 100, + "description": "Version identifier for the new API Version." + }, + "apiRevisionDescription": { + "type": "string", + "maxLength": 256, + "description": "Description of new API Revision." + }, + "apiVersionSet": { + "description": "Version set details", + "$ref": "#/definitions/ApiVersionSetContractDetails" + } + } + }, + "ApiTagResourceContractProperties": { + "properties": { + "id": { + "type": "string", + "description": "API identifier in the form /apis/{apiId}." + }, + "name": { + "type": "string", + "description": "API name.", + "minLength": 1, + "maxLength": 300 + }, + "serviceUrl": { + "type": "string", + "description": "Absolute URL of the backend service implementing this API.", + "minLength": 1, + "maxLength": 2000 + }, + "path": { + "type": "string", + "description": "Relative URL uniquely identifying this API and all of its resource paths within the API Management service instance. It is appended to the API endpoint base URL specified during the service instance creation to form a public URL for this API.", + "minLength": 0, + "maxLength": 400 + }, + "protocols": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "http", + "https" + ], + "x-ms-enum": { + "name": "Protocol", + "modelAsString": false + } + }, + "description": "Describes on which protocols the operations in this API can be invoked." + } + }, + "allOf": [ + { + "$ref": "./definitions.json#/definitions/ApiEntityBaseContract" + } + ], + "description": "API contract properties for the Tag Resources." + }, + "ApiUpdateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApiContractUpdateProperties", + "description": "Properties of the API entity that can be updated." + } + }, + "description": "API update contract details." + }, + "ApiContractUpdateProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "API name.", + "minLength": 1, + "maxLength": 300 + }, + "serviceUrl": { + "type": "string", + "description": "Absolute URL of the backend service implementing this API.", + "minLength": 1, + "maxLength": 2000 + }, + "path": { + "type": "string", + "description": "Relative URL uniquely identifying this API and all of its resource paths within the API Management service instance. It is appended to the API endpoint base URL specified during the service instance creation to form a public URL for this API.", + "minLength": 0, + "maxLength": 400 + }, + "protocols": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "http", + "https" + ], + "x-ms-enum": { + "name": "Protocol", + "modelAsString": false + } + }, + "description": "Describes on which protocols the operations in this API can be invoked." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ApiEntityBaseContract" + } + ], + "description": "API update contract properties." + }, + "ApiVersionSetCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiVersionSetContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Api Version Set list representation." + }, + "ApiVersionSetContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApiVersionSetContractProperties", + "description": "Api VersionSet contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Api Version Set Contract details." + }, + "ApiVersionSetContractDetails": { + "description": "An API Version Set contains the common configuration for a set of API Versions relating ", + "properties": { + "id": { + "type": "string", + "description": "Identifier for existing API Version Set. Omit this value to create a new Version Set." + }, + "name": { + "type": "string", + "description": "The display Name of the API Version Set." + }, + "description": { + "type": "string", + "description": "Description of API Version Set." + }, + "versioningScheme": { + "type": "string", + "description": "An value that determines where the API Version identifer will be located in a HTTP request.", + "enum": [ + "Segment", + "Query", + "Header" + ] + }, + "versionQueryName": { + "type": "string", + "description": "Name of query parameter that indicates the API Version if versioningScheme is set to `query`." + }, + "versionHeaderName": { + "type": "string", + "description": "Name of HTTP header parameter that indicates the API Version if versioningScheme is set to `header`." + } + } + }, + "ApiVersionSetContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Name of API Version Set", + "minLength": 1, + "maxLength": 100 + }, + "versioningScheme": { + "type": "string", + "description": "An value that determines where the API Version identifer will be located in a HTTP request.", + "enum": [ + "Segment", + "Query", + "Header" + ], + "x-ms-enum": { + "name": "versioningScheme", + "modelAsString": true, + "values": [ + { + "value": "Segment", + "description": "The API Version is passed in a path segment." + }, + { + "value": "Query", + "description": "The API Version is passed in a query parameter." + }, + { + "value": "Header", + "description": "The API Version is passed in a HTTP header." + } + ] + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/ApiVersionSetEntityBase" + } + ], + "required": [ + "displayName", + "versioningScheme" + ], + "description": "Properties of an API Version Set." + }, + "ApiVersionSetEntityBase": { + "properties": { + "description": { + "type": "string", + "description": "Description of API Version Set." + }, + "versionQueryName": { + "type": "string", + "description": "Name of query parameter that indicates the API Version if versioningScheme is set to `query`.", + "minLength": 1, + "maxLength": 100 + }, + "versionHeaderName": { + "type": "string", + "description": "Name of HTTP header parameter that indicates the API Version if versioningScheme is set to `header`.", + "minLength": 1, + "maxLength": 100 + } + }, + "description": "Api Version set base parameters" + }, + "ApiVersionSetUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApiVersionSetUpdateParametersProperties", + "description": "Parameters to update or create an Api Version Set Contract." + } + }, + "description": "Parameters to update or create an Api Version Set Contract." + }, + "ApiVersionSetUpdateParametersProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Name of API Version Set", + "minLength": 1, + "maxLength": 100 + }, + "versioningScheme": { + "type": "string", + "description": "An value that determines where the API Version identifer will be located in a HTTP request.", + "enum": [ + "Segment", + "Query", + "Header" + ], + "x-ms-enum": { + "name": "versioningScheme", + "modelAsString": true, + "values": [ + { + "value": "Segment", + "description": "The API Version is passed in a path segment." + }, + { + "value": "Query", + "description": "The API Version is passed in a query parameter." + }, + { + "value": "Header", + "description": "The API Version is passed in a HTTP header." + } + ] + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/ApiVersionSetEntityBase" + } + ], + "description": "Properties used to create or update an API Version Set." + }, + "AuthenticationSettingsContract": { + "properties": { + "oAuth2": { + "$ref": "#/definitions/OAuth2AuthenticationSettingsContract", + "description": "OAuth2 Authentication settings" + }, + "openid": { + "$ref": "#/definitions/OpenIdAuthenticationSettingsContract", + "description": "OpenID Connect Authentication Settings" + } + }, + "description": "API Authentication Settings." + }, + "AuthorizationServerCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AuthorizationServerContract" + }, + "description": "Page values." + }, + "count": { + "type": "integer", + "format": "int64", + "description": "Total record count number across all pages." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged OAuth2 Authorization Servers list representation." + }, + "AuthorizationServerContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AuthorizationServerContractProperties", + "description": "Properties of the External OAuth authorization server Contract." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "External OAuth authorization server settings." + }, + "AuthorizationServerContractBaseProperties": { + "properties": { + "description": { + "type": "string", + "description": "Description of the authorization server. Can contain HTML formatting tags." + }, + "authorizationMethods": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "HEAD", + "OPTIONS", + "TRACE", + "GET", + "POST", + "PUT", + "PATCH", + "DELETE" + ], + "x-ms-enum": { + "name": "AuthorizationMethod", + "modelAsString": false + } + }, + "description": "HTTP verbs supported by the authorization endpoint. GET must be always present. POST is optional." + }, + "clientAuthenticationMethod": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Basic", + "Body" + ], + "x-ms-enum": { + "name": "ClientAuthenticationMethod", + "modelAsString": true, + "values": [ + { + "value": "Basic", + "description": "Basic Client Authentication method." + }, + { + "value": "Body", + "description": "Body based Authentication method." + } + ] + } + }, + "description": "Method of authentication supported by the token endpoint of this authorization server. Possible values are Basic and/or Body. When Body is specified, client credentials and other parameters are passed within the request body in the application/x-www-form-urlencoded format." + }, + "tokenBodyParameters": { + "type": "array", + "items": { + "$ref": "#/definitions/TokenBodyParameterContract" + }, + "description": "Additional parameters required by the token endpoint of this authorization server represented as an array of JSON objects with name and value string properties, i.e. {\"name\" : \"name value\", \"value\": \"a value\"}." + }, + "tokenEndpoint": { + "type": "string", + "description": "OAuth token endpoint. Contains absolute URI to entity being referenced.", + "externalDocs": { + "url": "http://tools.ietf.org/html/rfc6749#section-3.1" + } + }, + "supportState": { + "type": "boolean", + "description": "If true, authorization server will include state parameter from the authorization request to its response. Client may use state parameter to raise protocol security.", + "externalDocs": { + "url": "http://tools.ietf.org/html/rfc6749#section-3.1" + } + }, + "defaultScope": { + "type": "string", + "description": "Access token scope that is going to be requested by default. Can be overridden at the API level. Should be provided in the form of a string containing space-delimited values.", + "externalDocs": { + "url": "http://tools.ietf.org/html/rfc6749#section-3.3" + } + }, + "bearerTokenSendingMethods": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "authorizationHeader", + "query" + ], + "x-ms-enum": { + "name": "BearerTokenSendingMethod", + "modelAsString": true + } + }, + "description": "Specifies the mechanism by which access token is passed to the API. ", + "externalDocs": { + "url": "http://tools.ietf.org/html/rfc6749#section-4" + } + }, + "resourceOwnerUsername": { + "type": "string", + "description": "Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner username." + }, + "resourceOwnerPassword": { + "type": "string", + "description": "Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner password." + } + }, + "description": "External OAuth authorization server Update settings contract." + }, + "AuthorizationServerContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "User-friendly authorization server name.", + "minLength": 1, + "maxLength": 50 + }, + "clientRegistrationEndpoint": { + "type": "string", + "description": "Optional reference to a page where client or app registration for this authorization server is performed. Contains absolute URL to entity being referenced." + }, + "authorizationEndpoint": { + "type": "string", + "description": "OAuth authorization endpoint. See http://tools.ietf.org/html/rfc6749#section-3.2." + }, + "grantTypes": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "authorizationCode", + "implicit", + "resourceOwnerPassword", + "clientCredentials" + ], + "x-ms-enum": { + "name": "GrantType", + "modelAsString": true, + "values": [ + { + "value": "authorizationCode", + "description": "Authorization Code Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.1." + }, + { + "value": "implicit", + "description": "Implicit Code Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.2." + }, + { + "value": "resourceOwnerPassword", + "description": "Resource Owner Password Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.3." + }, + { + "value": "clientCredentials", + "description": "Client Credentials Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.4." + } + ] + } + }, + "description": "Form of an authorization grant, which the client uses to request the access token.", + "externalDocs": { + "url": "http://tools.ietf.org/html/rfc6749#section-4" + } + }, + "clientId": { + "type": "string", + "description": "Client or app id registered with this authorization server." + }, + "clientSecret": { + "x-ms-secret": true, + "type": "string", + "description": "Client or app secret registered with this authorization server. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value." + } + }, + "allOf": [ + { + "$ref": "#/definitions/AuthorizationServerContractBaseProperties" + } + ], + "required": [ + "displayName", + "clientRegistrationEndpoint", + "authorizationEndpoint", + "clientId", + "grantTypes" + ], + "description": "External OAuth authorization server settings Properties." + }, + "AuthorizationServerUpdateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AuthorizationServerUpdateContractProperties", + "description": "Properties of the External OAuth authorization server update Contract." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "External OAuth authorization server settings." + }, + "AuthorizationServerUpdateContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "User-friendly authorization server name.", + "minLength": 1, + "maxLength": 50 + }, + "clientRegistrationEndpoint": { + "type": "string", + "description": "Optional reference to a page where client or app registration for this authorization server is performed. Contains absolute URL to entity being referenced." + }, + "authorizationEndpoint": { + "type": "string", + "description": "OAuth authorization endpoint. See http://tools.ietf.org/html/rfc6749#section-3.2." + }, + "grantTypes": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "authorizationCode", + "implicit", + "resourceOwnerPassword", + "clientCredentials" + ], + "x-ms-enum": { + "name": "GrantType", + "modelAsString": true, + "values": [ + { + "value": "authorizationCode", + "description": "Authorization Code Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.1." + }, + { + "value": "implicit", + "description": "Implicit Code Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.2." + }, + { + "value": "resourceOwnerPassword", + "description": "Resource Owner Password Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.3." + }, + { + "value": "clientCredentials", + "description": "Client Credentials Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.4." + } + ] + } + }, + "description": "Form of an authorization grant, which the client uses to request the access token.", + "externalDocs": { + "url": "http://tools.ietf.org/html/rfc6749#section-4" + } + }, + "clientId": { + "type": "string", + "description": "Client or app id registered with this authorization server." + }, + "clientSecret": { + "x-ms-secret": true, + "type": "string", + "description": "Client or app secret registered with this authorization server. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value." + } + }, + "allOf": [ + { + "$ref": "#/definitions/AuthorizationServerContractBaseProperties" + } + ], + "description": "External OAuth authorization server Update settings contract." + }, + "BackendAuthorizationHeaderCredentials": { + "properties": { + "scheme": { + "type": "string", + "description": "Authentication Scheme name.", + "minLength": 1, + "maxLength": 100 + }, + "parameter": { + "type": "string", + "description": "Authentication Parameter value.", + "minLength": 1, + "maxLength": 300 + } + }, + "required": [ + "scheme", + "parameter" + ], + "description": "Authorization header information." + }, + "BackendBaseParameters": { + "properties": { + "title": { + "type": "string", + "description": "Backend Title.", + "minLength": 1, + "maxLength": 300 + }, + "description": { + "type": "string", + "description": "Backend Description.", + "minLength": 1, + "maxLength": 2000 + }, + "resourceId": { + "type": "string", + "description": "Management Uri of the Resource in External System. This url can be the Arm Resource Id of Logic Apps, Function Apps or Api Apps.", + "minLength": 1, + "maxLength": 2000 + }, + "properties": { + "$ref": "#/definitions/BackendProperties", + "description": "Backend Properties contract" + }, + "credentials": { + "$ref": "#/definitions/BackendCredentialsContract", + "description": "Backend Credentials Contract Properties" + }, + "proxy": { + "$ref": "#/definitions/BackendProxyContract", + "description": "Backend Proxy Contract Properties" + }, + "tls": { + "$ref": "#/definitions/BackendTlsProperties", + "description": "Backend TLS Properties" + } + }, + "description": "Backend entity base Parameter set." + }, + "BackendCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BackendContract" + }, + "description": "Backend values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Backend list representation." + }, + "BackendContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BackendContractProperties", + "description": "Backend entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Backend details." + }, + "BackendContractProperties": { + "properties": { + "url": { + "type": "string", + "description": "Runtime Url of the Backend.", + "minLength": 1, + "maxLength": 2000 + }, + "protocol": { + "type": "string", + "enum": [ + "http", + "soap" + ], + "x-ms-enum": { + "name": "BackendProtocol", + "modelAsString": true, + "values": [ + { + "value": "http", + "description": "The Backend is a RESTful service." + }, + { + "value": "soap", + "description": "The Backend is a SOAP service." + } + ] + }, + "description": "Backend communication protocol." + } + }, + "allOf": [ + { + "$ref": "#/definitions/BackendBaseParameters" + } + ], + "required": [ + "url", + "protocol" + ], + "description": "Parameters supplied to the Create Backend operation." + }, + "BackendCredentialsContract": { + "properties": { + "certificate": { + "type": "array", + "items": { + "type": "string" + }, + "maxItems": 32, + "description": "List of Client Certificate Thumbprint." + }, + "query": { + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + }, + "description": "Query Parameter description." + }, + "header": { + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + }, + "description": "Header Parameter description." + }, + "authorization": { + "description": "Authorization header authentication", + "$ref": "#/definitions/BackendAuthorizationHeaderCredentials" + } + }, + "description": "Details of the Credentials used to connect to Backend." + }, + "BackendProperties": { + "properties": { + "serviceFabricCluster": { + "$ref": "#/definitions/BackendServiceFabricClusterProperties", + "description": "Backend Service Fabric Cluster Properties" + } + }, + "description": "Properties specific to the Backend Type." + }, + "BackendProxyContract": { + "externalDocs": { + "url": "https://msdn.microsoft.com/en-us/library/system.net.webproxy(v=vs.110).aspx", + "description": "Backend entity uses these details to connect to a WebProxy." + }, + "properties": { + "url": { + "type": "string", + "description": "WebProxy Server AbsoluteUri property which includes the entire URI stored in the Uri instance, including all fragments and query strings.", + "minLength": 1, + "maxLength": 2000 + }, + "username": { + "type": "string", + "description": "Username to connect to the WebProxy server" + }, + "password": { + "type": "string", + "description": "Password to connect to the WebProxy Server" + } + }, + "required": [ + "url" + ], + "description": "Details of the Backend WebProxy Server to use in the Request to Backend." + }, + "BackendReconnectContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BackendReconnectProperties", + "description": "Reconnect request properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Reconnect request parameters." + }, + "BackendReconnectProperties": { + "properties": { + "after": { + "type": "string", + "format": "duration", + "description": "Duration in ISO8601 format after which reconnect will be initiated. Minimum duration of the Reconnect is PT2M." + } + }, + "description": "Properties to control reconnect requests." + }, + "BackendServiceFabricClusterProperties": { + "properties": { + "clientCertificatethumbprint": { + "description": "The client certificate thumbprint for the management endpoint.", + "type": "string" + }, + "maxPartitionResolutionRetries": { + "description": "Maximum number of retries while attempting resolve the partition.", + "format": "int32", + "type": "integer" + }, + "managementEndpoints": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The cluster management endpoint." + }, + "serverCertificateThumbprints": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Thumbprints of certificates cluster management service uses for tls communication" + }, + "serverX509Names": { + "type": "array", + "items": { + "$ref": "#/definitions/X509CertificateName" + }, + "description": "Server X509 Certificate Names Collection" + } + }, + "required": [ + "managementEndpoints", + "clientCertificatethumbprint" + ], + "description": "Properties of the Service Fabric Type Backend." + }, + "BackendTlsProperties": { + "properties": { + "validateCertificateChain": { + "description": "Flag indicating whether SSL certificate chain validation should be done when using self-signed certificates for this backend host.", + "type": "boolean", + "default": true + }, + "validateCertificateName": { + "description": "Flag indicating whether SSL certificate name validation should be done when using self-signed certificates for this backend host.", + "type": "boolean", + "default": true + } + }, + "description": "Properties controlling TLS Certificate Validation." + }, + "BackendUpdateParameterProperties": { + "properties": { + "url": { + "type": "string", + "description": "Runtime Url of the Backend.", + "minLength": 1, + "maxLength": 2000 + }, + "protocol": { + "type": "string", + "enum": [ + "http", + "soap" + ], + "x-ms-enum": { + "name": "BackendProtocol", + "modelAsString": true, + "values": [ + { + "value": "http", + "description": "The Backend is a RESTful service." + }, + { + "value": "soap", + "description": "The Backend is a SOAP service." + } + ] + }, + "description": "Backend communication protocol." + } + }, + "allOf": [ + { + "$ref": "#/definitions/BackendBaseParameters" + } + ], + "description": "Parameters supplied to the Update Backend operation." + }, + "BackendUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BackendUpdateParameterProperties", + "description": "Backend entity update contract properties." + } + }, + "description": "Backend update parameters." + }, + "BearerTokenSendingMethodsContract": { + "type": "string", + "description": "Form of an authorization grant, which the client uses to request the access token.", + "enum": [ + "authorizationHeader", + "query" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "bearerTokenSendingMethods", + "values": [ + { + "value": "authorizationHeader", + "description": "Access token will be transmitted in the Authorization header using Bearer schema" + }, + { + "value": "query", + "description": "Access token will be transmitted as query parameters." + } + ] + } + }, + "BodyDiagnosticSettings": { + "properties": { + "bytes": { + "type": "integer", + "format": "int32", + "maximum": 8192, + "description": "Number of request body bytes to log." + } + }, + "description": "Body logging settings." + }, + "CacheCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/CacheContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Caches list representation." + }, + "CacheContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CacheContractProperties", + "description": "Cache properties details." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Cache details." + }, + "CacheContractProperties": { + "properties": { + "description": { + "type": "string", + "description": "Cache description", + "maxLength": 2000 + }, + "connectionString": { + "type": "string", + "description": "Runtime connection string to cache", + "maxLength": 300 + }, + "resourceId": { + "type": "string", + "description": "Original uri of entity in external system cache points to", + "maxLength": 2000 + } + }, + "required": [ + "connectionString" + ], + "description": "Properties of the Cache contract." + }, + "CacheUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CacheUpdateProperties", + "description": "Cache update properties details." + } + }, + "description": "Cache update details." + }, + "CacheUpdateProperties": { + "properties": { + "description": { + "type": "string", + "description": "Cache description", + "maxLength": 2000 + }, + "connectionString": { + "type": "string", + "description": "Runtime connection string to cache", + "maxLength": 300 + }, + "resourceId": { + "type": "string", + "description": "Original uri of entity in external system cache points to", + "maxLength": 2000 + } + }, + "description": "Parameters supplied to the Update Cache operation." + }, + "CertificateCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/CertificateContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Certificates list representation." + }, + "CertificateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CertificateContractProperties", + "description": "Certificate properties details." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Certificate details." + }, + "CertificateContractProperties": { + "properties": { + "subject": { + "type": "string", + "description": "Subject attribute of the certificate." + }, + "thumbprint": { + "type": "string", + "description": "Thumbprint of the certificate." + }, + "expirationDate": { + "type": "string", + "format": "date-time", + "description": "Expiration date of the certificate. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + } + }, + "required": [ + "subject", + "thumbprint", + "expirationDate" + ], + "description": "Properties of the Certificate contract." + }, + "CertificateCreateOrUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CertificateCreateOrUpdateProperties", + "description": "Certificate create or update properties details." + } + }, + "description": "Certificate create or update details." + }, + "CertificateCreateOrUpdateProperties": { + "properties": { + "data": { + "type": "string", + "description": "Base 64 encoded certificate using the application/x-pkcs12 representation." + }, + "password": { + "type": "string", + "description": "Password for the Certificate" + } + }, + "required": [ + "data", + "password" + ], + "description": "Parameters supplied to the CreateOrUpdate certificate operation." + }, + "DeployConfigurationParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DeployConfigurationParameterProperties", + "description": "Deploy Configuration Parameter contract properties." + } + }, + "description": "Deploy Tenant Configuration Contract." + }, + "DeployConfigurationParameterProperties": { + "properties": { + "branch": { + "type": "string", + "description": "The name of the Git branch from which the configuration is to be deployed to the configuration database." + }, + "force": { + "type": "boolean", + "description": "The value enforcing deleting subscriptions to products that are deleted in this update." + } + }, + "required": [ + "branch" + ], + "description": "Parameters supplied to the Deploy Configuration operation." + }, + "DiagnosticCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DiagnosticContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Diagnostic list representation." + }, + "DiagnosticContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DiagnosticContractProperties", + "description": "Diagnostic entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Diagnostic details." + }, + "DiagnosticContractProperties": { + "properties": { + "alwaysLog": { + "type": "string", + "enum": [ + "allErrors" + ], + "x-ms-enum": { + "name": "AlwaysLog", + "modelAsString": true, + "values": [ + { + "value": "allErrors", + "description": "Always log all erroneous request regardless of sampling settings." + } + ] + }, + "description": "Specifies for what type of messages sampling settings should not apply." + }, + "loggerId": { + "type": "string", + "description": "Resource Id of a target logger." + }, + "sampling": { + "$ref": "#/definitions/SamplingSettings", + "description": "Sampling settings for Diagnostic." + }, + "frontend": { + "$ref": "#/definitions/PipelineDiagnosticSettings", + "description": "Diagnostic settings for incoming/outgoing HTTP messages to the Gateway." + }, + "backend": { + "$ref": "#/definitions/PipelineDiagnosticSettings", + "description": "Diagnostic settings for incoming/outgoing HTTP messages to the Backend" + }, + "logClientIp": { + "type": "boolean", + "description": "Log the ClientIP. Default is false." + }, + "httpCorrelationProtocol": { + "type": "string", + "enum": [ + "None", + "Legacy", + "W3C" + ], + "x-ms-enum": { + "name": "HttpCorrelationProtocol", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "Do not read and inject correlation headers." + }, + { + "value": "Legacy", + "description": "Inject Request-Id and Request-Context headers with request correlation data. See https://github.com/dotnet/corefx/blob/master/src/System.Diagnostics.DiagnosticSource/src/HttpCorrelationProtocol.md." + }, + { + "value": "W3C", + "description": "Inject Trace Context headers. See https://w3c.github.io/trace-context." + } + ] + }, + "description": "Sets correlation protocol to use for Application Insights diagnostics." + }, + "verbosity": { + "type": "string", + "enum": [ + "verbose", + "information", + "error" + ], + "x-ms-enum": { + "name": "Verbosity", + "modelAsString": true, + "values": [ + { + "value": "verbose", + "description": "All the traces emitted by trace policies will be sent to the logger attached to this diagnostic instance." + }, + { + "value": "information", + "description": "Traces with 'severity' set to 'information' and 'error' will be sent to the logger attached to this diagnostic instance." + }, + { + "value": "error", + "description": "Only traces with 'severity' set to 'error' will be sent to the logger attached to this diagnostic instance." + } + ] + }, + "description": "The verbosity level applied to traces emitted by trace policies." + } + }, + "required": [ + "loggerId" + ], + "description": "Diagnostic Entity Properties" + }, + "EmailTemplateCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EmailTemplateContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged email template list representation." + }, + "EmailTemplateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/EmailTemplateContractProperties", + "description": "Email Template entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Email Template details." + }, + "EmailTemplateContractProperties": { + "properties": { + "subject": { + "type": "string", + "description": "Subject of the Template.", + "minLength": 1, + "maxLength": 1000 + }, + "body": { + "type": "string", + "description": "Email Template Body. This should be a valid XDocument", + "minLength": 1 + }, + "title": { + "type": "string", + "description": "Title of the Template." + }, + "description": { + "type": "string", + "description": "Description of the Email Template." + }, + "isDefault": { + "type": "boolean", + "description": "Whether the template is the default template provided by Api Management or has been edited.", + "readOnly": true + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/definitions/EmailTemplateParametersContractProperties" + }, + "description": "Email Template Parameter values." + } + }, + "required": [ + "body", + "subject" + ], + "description": "Email Template Contract properties." + }, + "EmailTemplateParametersContractProperties": { + "properties": { + "name": { + "type": "string", + "description": "Template parameter name.", + "minLength": 1, + "maxLength": 256, + "pattern": "^[A-Za-z0-9-._]+$" + }, + "title": { + "type": "string", + "description": "Template parameter title.", + "minLength": 1, + "maxLength": 4096 + }, + "description": { + "type": "string", + "description": "Template parameter description.", + "minLength": 1, + "maxLength": 256, + "pattern": "^[A-Za-z0-9-._]+$" + } + }, + "description": "Email Template Parameter contract." + }, + "EmailTemplateUpdateParameterProperties": { + "properties": { + "subject": { + "type": "string", + "description": "Subject of the Template.", + "minLength": 1, + "maxLength": 1000 + }, + "title": { + "type": "string", + "description": "Title of the Template." + }, + "description": { + "type": "string", + "description": "Description of the Email Template." + }, + "body": { + "type": "string", + "description": "Email Template Body. This should be a valid XDocument", + "minLength": 1 + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/definitions/EmailTemplateParametersContractProperties" + }, + "description": "Email Template Parameter values." + } + }, + "description": "Email Template Update Contract properties." + }, + "EmailTemplateUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/EmailTemplateUpdateParameterProperties", + "description": "Email Template Update contract properties." + } + }, + "description": "Email Template update Parameters." + }, + "GenerateSsoUrlResult": { + "properties": { + "value": { + "type": "string", + "description": "Redirect Url containing the SSO URL value." + } + }, + "description": "Generate SSO Url operations response details." + }, + "GroupCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GroupContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Group list representation." + }, + "GroupContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GroupContractProperties", + "description": "Group entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Contract details." + }, + "GroupContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Group name.", + "maxLength": 300, + "minLength": 1 + }, + "description": { + "type": "string", + "description": "Group description. Can contain HTML formatting tags.", + "maxLength": 1000 + }, + "builtIn": { + "readOnly": true, + "type": "boolean", + "description": "true if the group is one of the three system groups (Administrators, Developers, or Guests); otherwise false." + }, + "type": { + "type": "string", + "description": "Group type.", + "enum": [ + "custom", + "system", + "external" + ], + "x-ms-enum": { + "name": "GroupType", + "modelAsString": false + } + }, + "externalId": { + "type": "string", + "description": "For external groups, this property contains the id of the group from the external identity provider, e.g. for Azure Active Directory `aad://.onmicrosoft.com/groups/`; otherwise the value is null." + } + }, + "required": [ + "displayName" + ], + "description": "Group contract Properties." + }, + "GroupCreateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GroupCreateParametersProperties", + "description": "Properties supplied to Create Group operation." + } + }, + "description": "Parameters supplied to the Create Group operation." + }, + "GroupCreateParametersProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Group name.", + "maxLength": 300, + "minLength": 1 + }, + "description": { + "type": "string", + "description": "Group description." + }, + "type": { + "type": "string", + "description": "Group type.", + "enum": [ + "custom", + "system", + "external" + ], + "x-ms-enum": { + "name": "GroupType", + "modelAsString": false + } + }, + "externalId": { + "type": "string", + "description": "Identifier of the external groups, this property contains the id of the group from the external identity provider, e.g. for Azure Active Directory `aad://.onmicrosoft.com/groups/`; otherwise the value is null." + } + }, + "required": [ + "displayName" + ], + "description": "Parameters supplied to the Create Group operation." + }, + "GroupUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GroupUpdateParametersProperties", + "description": "Group entity update contract properties." + } + }, + "description": "Parameters supplied to the Update Group operation." + }, + "GroupUpdateParametersProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Group name.", + "maxLength": 300, + "minLength": 1 + }, + "description": { + "type": "string", + "description": "Group description." + }, + "type": { + "type": "string", + "description": "Group type.", + "enum": [ + "custom", + "system", + "external" + ], + "x-ms-enum": { + "name": "GroupType", + "modelAsString": false + } + }, + "externalId": { + "type": "string", + "description": "Identifier of the external groups, this property contains the id of the group from the external identity provider, e.g. for Azure Active Directory `aad://.onmicrosoft.com/groups/`; otherwise the value is null." + } + }, + "description": "Parameters supplied to the Update Group operation." + }, + "HttpMessageDiagnostic": { + "properties": { + "headers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Array of HTTP Headers to log." + }, + "body": { + "$ref": "#/definitions/BodyDiagnosticSettings", + "description": "Body logging settings." + } + }, + "description": "Http message diagnostic settings." + }, + "IdentityProviderBaseParameters": { + "properties": { + "type": { + "type": "string", + "enum": [ + "facebook", + "google", + "microsoft", + "twitter", + "aad", + "aadB2C" + ], + "x-ms-enum": { + "name": "IdentityProviderType", + "modelAsString": true, + "values": [ + { + "value": "facebook", + "description": "Facebook as Identity provider." + }, + { + "value": "google", + "description": "Google as Identity provider." + }, + { + "value": "microsoft", + "description": "Microsoft Live as Identity provider." + }, + { + "value": "twitter", + "description": "Twitter as Identity provider." + }, + { + "value": "aad", + "description": "Azure Active Directory as Identity provider." + }, + { + "value": "aadB2C", + "description": "Azure Active Directory B2C as Identity provider." + } + ] + }, + "description": "Identity Provider Type identifier." + }, + "signinTenant": { + "type": "string", + "description": "The TenantId to use instead of Common when logging into Active Directory" + }, + "allowedTenants": { + "type": "array", + "items": { + "type": "string" + }, + "maxItems": 32, + "description": "List of Allowed Tenants when configuring Azure Active Directory login." + }, + "authority": { + "type": "string", + "description": "OpenID Connect discovery endpoint hostname for AAD or AAD B2C." + }, + "signupPolicyName": { + "type": "string", + "description": "Signup Policy Name. Only applies to AAD B2C Identity Provider.", + "minLength": 1 + }, + "signinPolicyName": { + "type": "string", + "description": "Signin Policy Name. Only applies to AAD B2C Identity Provider.", + "minLength": 1 + }, + "profileEditingPolicyName": { + "type": "string", + "description": "Profile Editing Policy Name. Only applies to AAD B2C Identity Provider.", + "minLength": 1 + }, + "passwordResetPolicyName": { + "type": "string", + "description": "Password Reset Policy Name. Only applies to AAD B2C Identity Provider.", + "minLength": 1 + } + }, + "description": "Identity Provider Base Parameter Properties." + }, + "IdentityProviderCreateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IdentityProviderCreateContractProperties", + "description": "Identity Provider contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Identity Provider details." + }, + "IdentityProviderCreateContractProperties": { + "properties": { + "clientId": { + "type": "string", + "description": "Client Id of the Application in the external Identity Provider. It is App ID for Facebook login, Client ID for Google login, App ID for Microsoft.", + "minLength": 1 + }, + "clientSecret": { + "x-ms-secret": true, + "type": "string", + "description": "Client secret of the Application in external Identity Provider, used to authenticate login request. For example, it is App Secret for Facebook login, API Key for Google login, Public Key for Microsoft. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value.", + "minLength": 1 + } + }, + "allOf": [ + { + "$ref": "#/definitions/IdentityProviderBaseParameters" + } + ], + "required": [ + "clientId", + "clientSecret" + ], + "description": "The external Identity Providers like Facebook, Google, Microsoft, Twitter or Azure Active Directory which can be used to enable access to the API Management service developer portal for all users." + }, + "IdentityProviderContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IdentityProviderContractProperties", + "description": "Identity Provider contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Identity Provider details." + }, + "IdentityProviderContractProperties": { + "properties": { + "clientId": { + "type": "string", + "description": "Client Id of the Application in the external Identity Provider. It is App ID for Facebook login, Client ID for Google login, App ID for Microsoft.", + "minLength": 1 + }, + "clientSecret": { + "x-ms-secret": true, + "type": "string", + "description": "Client secret of the Application in external Identity Provider, used to authenticate login request. For example, it is App Secret for Facebook login, API Key for Google login, Public Key for Microsoft. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value.", + "minLength": 1 + } + }, + "allOf": [ + { + "$ref": "#/definitions/IdentityProviderBaseParameters" + } + ], + "required": [ + "clientId" + ], + "description": "The external Identity Providers like Facebook, Google, Microsoft, Twitter or Azure Active Directory which can be used to enable access to the API Management service developer portal for all users." + }, + "IdentityProviderList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/IdentityProviderContract" + }, + "description": "Identity Provider configuration values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "List of all the Identity Providers configured on the service instance." + }, + "IdentityProviderUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IdentityProviderUpdateProperties", + "description": "Identity Provider update properties." + } + }, + "description": "Parameters supplied to update Identity Provider" + }, + "IdentityProviderUpdateProperties": { + "properties": { + "clientId": { + "type": "string", + "description": "Client Id of the Application in the external Identity Provider. It is App ID for Facebook login, Client ID for Google login, App ID for Microsoft.", + "minLength": 1 + }, + "clientSecret": { + "x-ms-secret": true, + "type": "string", + "description": "Client secret of the Application in external Identity Provider, used to authenticate login request. For example, it is App Secret for Facebook login, API Key for Google login, Public Key for Microsoft.", + "minLength": 1 + } + }, + "allOf": [ + { + "$ref": "#/definitions/IdentityProviderBaseParameters" + } + ], + "description": "Parameters supplied to the Update Identity Provider operation." + }, + "IssueAttachmentCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/IssueAttachmentContract" + }, + "description": "Issue Attachment values.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Next page link if any.", + "readOnly": true + } + }, + "description": "Paged Issue Attachment list representation." + }, + "IssueAttachmentContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IssueAttachmentContractProperties", + "description": "Properties of the Issue Attachment." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Issue Attachment Contract details." + }, + "IssueAttachmentContractProperties": { + "properties": { + "title": { + "type": "string", + "description": "Filename by which the binary data will be saved." + }, + "contentFormat": { + "type": "string", + "description": "Either 'link' if content is provided via an HTTP link or the MIME type of the Base64-encoded binary data provided in the 'content' property." + }, + "content": { + "type": "string", + "description": "An HTTP link or Base64-encoded binary data." + } + }, + "required": [ + "title", + "contentFormat", + "content" + ], + "description": "Issue Attachment contract Properties." + }, + "IssueCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/IssueContract" + }, + "description": "Issue values.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Next page link if any.", + "readOnly": true + } + }, + "description": "Paged Issue list representation." + }, + "IssueCommentCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/IssueCommentContract" + }, + "description": "Issue Comment values.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Next page link if any.", + "readOnly": true + } + }, + "description": "Paged Issue Comment list representation." + }, + "IssueCommentContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IssueCommentContractProperties", + "description": "Properties of the Issue Comment." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Issue Comment Contract details." + }, + "IssueCommentContractProperties": { + "properties": { + "text": { + "type": "string", + "description": "Comment text." + }, + "createdDate": { + "type": "string", + "format": "date-time", + "description": "Date and time when the comment was created." + }, + "userId": { + "type": "string", + "description": "A resource identifier for the user who left the comment." + } + }, + "required": [ + "text", + "userId" + ], + "description": "Issue Comment contract Properties." + }, + "IssueContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IssueContractProperties", + "description": "Properties of the Issue." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Issue Contract details." + }, + "IssueContractBaseProperties": { + "properties": { + "createdDate": { + "type": "string", + "format": "date-time", + "description": "Date and time when the issue was created." + }, + "state": { + "type": "string", + "description": "Status of the issue.", + "enum": [ + "proposed", + "open", + "removed", + "resolved", + "closed" + ], + "x-ms-enum": { + "name": "State", + "modelAsString": true, + "values": [ + { + "value": "proposed", + "description": "The issue is proposed." + }, + { + "value": "open", + "description": "The issue is opened." + }, + { + "value": "removed", + "description": "The issue was removed." + }, + { + "value": "resolved", + "description": "The issue is now resolved." + }, + { + "value": "closed", + "description": "The issue was closed." + } + ] + } + }, + "apiId": { + "type": "string", + "description": "A resource identifier for the API the issue was created for." + } + }, + "description": "Issue contract Base Properties." + }, + "IssueContractProperties": { + "properties": { + "title": { + "type": "string", + "description": "The issue title." + }, + "description": { + "type": "string", + "description": "Text describing the issue." + }, + "userId": { + "type": "string", + "description": "A resource identifier for the user created the issue." + } + }, + "required": [ + "title", + "description", + "userId" + ], + "allOf": [ + { + "$ref": "#/definitions/IssueContractBaseProperties" + } + ], + "description": "Issue contract Properties." + }, + "IssueUpdateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IssueUpdateContractProperties", + "description": "Issue entity Update contract properties." + } + }, + "description": "Issue update Parameters." + }, + "IssueUpdateContractProperties": { + "properties": { + "title": { + "type": "string", + "description": "The issue title." + }, + "description": { + "type": "string", + "description": "Text describing the issue." + }, + "userId": { + "type": "string", + "description": "A resource identifier for the user created the issue." + } + }, + "allOf": [ + { + "$ref": "#/definitions/IssueContractBaseProperties" + } + ], + "description": "Issue contract Update Properties." + }, + "LoggerCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LoggerContract" + }, + "description": "Logger values." + }, + "count": { + "type": "integer", + "format": "int64", + "description": "Total record count number across all pages." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Logger list representation." + }, + "LoggerContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LoggerContractProperties", + "description": "Logger entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Logger details." + }, + "LoggerContractProperties": { + "properties": { + "loggerType": { + "type": "string", + "description": "Logger type.", + "enum": [ + "azureEventHub", + "applicationInsights" + ], + "x-ms-enum": { + "name": "LoggerType", + "modelAsString": true, + "values": [ + { + "value": "azureEventHub", + "description": "Azure Event Hub as log destination." + }, + { + "value": "applicationInsights", + "description": "Azure Application Insights as log destination." + } + ] + } + }, + "description": { + "type": "string", + "description": "Logger description.", + "maxLength": 256 + }, + "credentials": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The name and SendRule connection string of the event hub for azureEventHub logger.\nInstrumentation key for applicationInsights logger.", + "example": { + "name": "apim", + "connectionString": "Endpoint=sb://contoso-ns.servicebus.windows.net/;SharedAccessKeyName=Sender;SharedAccessKey=..." + } + }, + "isBuffered": { + "type": "boolean", + "description": "Whether records are buffered in the logger before publishing. Default is assumed to be true." + }, + "resourceId": { + "type": "string", + "description": "Azure Resource Id of a log target (either Azure Event Hub resource or Azure Application Insights resource)." + } + }, + "required": [ + "loggerType", + "credentials" + ], + "description": "The Logger entity in API Management represents an event sink that you can use to log API Management events. Currently the Logger entity supports logging API Management events to Azure Event Hubs." + }, + "LoggerUpdateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LoggerUpdateParameters", + "description": "Logger entity update contract properties." + } + }, + "description": "Logger update contract." + }, + "LoggerUpdateParameters": { + "properties": { + "loggerType": { + "type": "string", + "description": "Logger type.", + "enum": [ + "azureEventHub", + "applicationInsights" + ], + "x-ms-enum": { + "name": "LoggerType", + "modelAsString": true, + "values": [ + { + "value": "azureEventHub", + "description": "Azure Event Hub as log destination." + }, + { + "value": "applicationInsights", + "description": "Azure Application Insights as log destination." + } + ] + } + }, + "description": { + "type": "string", + "description": "Logger description." + }, + "credentials": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Logger credentials." + }, + "isBuffered": { + "type": "boolean", + "description": "Whether records are buffered in the logger before publishing. Default is assumed to be true." + } + }, + "description": "Parameters supplied to the Update Logger operation." + }, + "NotificationCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NotificationContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Notification list representation." + }, + "NotificationContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NotificationContractProperties", + "description": "Notification entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Notification details." + }, + "NotificationContractProperties": { + "properties": { + "title": { + "type": "string", + "description": "Title of the Notification.", + "minLength": 1, + "maxLength": 1000 + }, + "description": { + "type": "string", + "description": "Description of the Notification." + }, + "recipients": { + "$ref": "#/definitions/RecipientsContractProperties", + "description": "Recipient Parameter values." + } + }, + "required": [ + "title" + ], + "description": "Notification Contract properties." + }, + "OAuth2AuthenticationSettingsContract": { + "properties": { + "authorizationServerId": { + "type": "string", + "description": "OAuth authorization server identifier." + }, + "scope": { + "type": "string", + "description": "operations scope." + } + }, + "description": "API OAuth2 Authentication settings details." + }, + "OpenIdAuthenticationSettingsContract": { + "properties": { + "openidProviderId": { + "type": "string", + "description": "OAuth authorization server identifier." + }, + "bearerTokenSendingMethods": { + "description": "How to send token to the server.", + "type": "array", + "items": { + "$ref": "#/definitions/BearerTokenSendingMethodsContract" + } + } + }, + "description": "API OAuth2 Authentication settings details." + }, + "OpenIdConnectProviderCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/OpenidConnectProviderContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged OpenIdProviders list representation." + }, + "OpenidConnectProviderContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OpenidConnectProviderContractProperties", + "description": "OpenId Connect Provider contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "OpenId Connect Provider details." + }, + "OpenidConnectProviderContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "User-friendly OpenID Connect Provider name.", + "maxLength": 50 + }, + "description": { + "type": "string", + "description": "User-friendly description of OpenID Connect Provider." + }, + "metadataEndpoint": { + "type": "string", + "description": "Metadata endpoint URI." + }, + "clientId": { + "type": "string", + "description": "Client ID of developer console which is the client application." + }, + "clientSecret": { + "x-ms-secret": true, + "type": "string", + "description": "Client Secret of developer console which is the client application." + } + }, + "required": [ + "displayName", + "metadataEndpoint", + "clientId" + ], + "description": "OpenID Connect Providers Contract." + }, + "OpenidConnectProviderUpdateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OpenidConnectProviderUpdateContractProperties", + "description": "OpenId Connect Provider Update contract properties." + } + }, + "description": "Parameters supplied to the Update OpenID Connect Provider operation." + }, + "OpenidConnectProviderUpdateContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "User-friendly OpenID Connect Provider name.", + "maxLength": 50 + }, + "description": { + "type": "string", + "description": "User-friendly description of OpenID Connect Provider." + }, + "metadataEndpoint": { + "type": "string", + "description": "Metadata endpoint URI." + }, + "clientId": { + "type": "string", + "description": "Client ID of developer console which is the client application." + }, + "clientSecret": { + "x-ms-secret": true, + "type": "string", + "description": "Client Secret of developer console which is the client application." + } + }, + "description": "Parameters supplied to the Update OpenID Connect Provider operation." + }, + "OperationCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/OperationContract" + }, + "description": "Page values.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Next page link if any.", + "readOnly": true + } + }, + "description": "Paged Operation list representation." + }, + "OperationContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OperationContractProperties", + "description": "Properties of the Operation Contract." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Api Operation details." + }, + "OperationContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Operation Name.", + "minLength": 1, + "maxLength": 300 + }, + "method": { + "type": "string", + "description": "A Valid HTTP Operation Method. Typical Http Methods like GET, PUT, POST but not limited by only them.", + "externalDocs": { + "description": "As defined by RFC.", + "url": "http://www.rfc-editor.org/rfc/rfc7230.txt" + } + }, + "urlTemplate": { + "type": "string", + "description": "Relative URL template identifying the target resource for this operation. May include parameters. Example: /customers/{cid}/orders/{oid}/?date={date}", + "minLength": 1, + "maxLength": 1000 + } + }, + "allOf": [ + { + "$ref": "#/definitions/OperationEntityBaseContract" + } + ], + "required": [ + "displayName", + "method", + "urlTemplate" + ], + "description": "Operation Contract Properties" + }, + "OperationEntityBaseContract": { + "properties": { + "templateParameters": { + "type": "array", + "items": { + "$ref": "#/definitions/ParameterContract" + }, + "description": "Collection of URL template parameters." + }, + "description": { + "type": "string", + "description": "Description of the operation. May include HTML formatting tags.", + "maxLength": 1000 + }, + "request": { + "$ref": "#/definitions/RequestContract", + "description": "An entity containing request details." + }, + "responses": { + "type": "array", + "items": { + "$ref": "#/definitions/ResponseContract" + }, + "description": "Array of Operation responses." + }, + "policies": { + "type": "string", + "description": "Operation Policies" + } + }, + "description": "Api Operation Entity Base Contract details." + }, + "OperationResultContract": { + "properties": { + "id": { + "type": "string", + "description": "Operation result identifier." + }, + "status": { + "type": "string", + "description": "Status of an async operation.", + "enum": [ + "Started", + "InProgress", + "Succeeded", + "Failed" + ], + "x-ms-enum": { + "name": "AsyncOperationStatus", + "modelAsString": false + } + }, + "started": { + "type": "string", + "format": "date-time", + "description": "Start time of an async operation. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "updated": { + "type": "string", + "format": "date-time", + "description": "Last update time of an async operation. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "resultInfo": { + "type": "string", + "description": "Optional result info." + }, + "error": { + "$ref": "./apimanagement.json#/definitions/ErrorResponseBody", + "description": "Error Body Contract" + }, + "actionLog": { + "type": "array", + "items": { + "$ref": "#/definitions/OperationResultLogItemContract" + }, + "readOnly": true, + "description": "This property if only provided as part of the TenantConfiguration_Validate operation. It contains the log the entities which will be updated/created/deleted as part of the TenantConfiguration_Deploy operation." + } + }, + "description": "Operation Result." + }, + "OperationResultLogItemContract": { + "properties": { + "objectType": { + "type": "string", + "description": "The type of entity contract." + }, + "action": { + "type": "string", + "description": "Action like create/update/delete." + }, + "objectKey": { + "type": "string", + "description": "Identifier of the entity being created/updated/deleted." + } + }, + "description": "Log of the entity being created, updated or deleted." + }, + "OperationTagResourceContractProperties": { + "properties": { + "id": { + "type": "string", + "description": "Identifier of the operation in form /operations/{operationId}." + }, + "name": { + "type": "string", + "description": "Operation name.", + "readOnly": true + }, + "apiName": { + "type": "string", + "description": "Api Name.", + "readOnly": true + }, + "apiRevision": { + "type": "string", + "description": "Api Revision.", + "readOnly": true + }, + "apiVersion": { + "type": "string", + "description": "Api Version.", + "readOnly": true + }, + "description": { + "type": "string", + "description": "Operation Description.", + "readOnly": true + }, + "method": { + "type": "string", + "description": "A Valid HTTP Operation Method. Typical Http Methods like GET, PUT, POST but not limited by only them.", + "externalDocs": { + "description": "As defined by RFC.", + "url": "http://www.rfc-editor.org/rfc/rfc7230.txt" + }, + "readOnly": true + }, + "urlTemplate": { + "type": "string", + "description": "Relative URL template identifying the target resource for this operation. May include parameters. Example: /customers/{cid}/orders/{oid}/?date={date}", + "readOnly": true + } + }, + "description": "Operation Entity contract Properties." + }, + "OperationUpdateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OperationUpdateContractProperties", + "description": "Properties of the API Operation entity that can be updated." + } + }, + "description": "Api Operation Update Contract details." + }, + "OperationUpdateContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Operation Name.", + "minLength": 1, + "maxLength": 300 + }, + "method": { + "type": "string", + "description": "A Valid HTTP Operation Method. Typical Http Methods like GET, PUT, POST but not limited by only them.", + "externalDocs": { + "description": "As defined by RFC.", + "url": "http://www.rfc-editor.org/rfc/rfc7230.txt" + } + }, + "urlTemplate": { + "type": "string", + "description": "Relative URL template identifying the target resource for this operation. May include parameters. Example: /customers/{cid}/orders/{oid}/?date={date}", + "minLength": 1, + "maxLength": 1000 + } + }, + "allOf": [ + { + "$ref": "#/definitions/OperationEntityBaseContract" + } + ], + "description": "Operation Update Contract Properties." + }, + "ParameterContract": { + "properties": { + "name": { + "type": "string", + "description": "Parameter name." + }, + "description": { + "type": "string", + "description": "Parameter description." + }, + "type": { + "type": "string", + "description": "Parameter type." + }, + "defaultValue": { + "type": "string", + "description": "Default parameter value." + }, + "required": { + "type": "boolean", + "description": "Specifies whether parameter is required or not." + }, + "values": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Parameter values." + } + }, + "required": [ + "name", + "type" + ], + "description": "Operation parameters details." + }, + "PipelineDiagnosticSettings": { + "properties": { + "request": { + "$ref": "#/definitions/HttpMessageDiagnostic", + "description": "Diagnostic settings for request." + }, + "response": { + "$ref": "#/definitions/HttpMessageDiagnostic", + "description": "Diagnostic settings for response." + } + }, + "description": "Diagnostic settings for incoming/outgoing HTTP messages to the Gateway." + }, + "PolicyCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PolicyContract" + }, + "description": "Policy Contract value." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "The response of the list policy operation." + }, + "PolicyContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PolicyContractProperties", + "description": "Properties of the Policy." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Policy Contract details." + }, + "PolicyContractProperties": { + "properties": { + "value": { + "type": "string", + "description": "Contents of the Policy as defined by the format." + }, + "format": { + "type": "string", + "description": "Format of the policyContent.", + "enum": [ + "xml", + "xml-link", + "rawxml", + "rawxml-link" + ], + "x-ms-enum": { + "name": "PolicyContentFormat", + "modelAsString": true, + "values": [ + { + "value": "xml", + "description": "The contents are inline and Content type is an XML document." + }, + { + "value": "xml-link", + "description": "The policy XML document is hosted on a http endpoint accessible from the API Management service." + }, + { + "value": "rawxml", + "description": "The contents are inline and Content type is a non XML encoded policy document." + }, + { + "value": "rawxml-link", + "description": "The policy document is not Xml encoded and is hosted on a http endpoint accessible from the API Management service." + } + ] + }, + "default": "xml" + } + }, + "required": [ + "value" + ], + "description": "Policy contract Properties." + }, + "PolicyDescriptionContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PolicyDescriptionContractProperties", + "description": "Policy description contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Policy description details." + }, + "PolicyDescriptionContractProperties": { + "properties": { + "description": { + "type": "string", + "description": "Policy description.", + "readOnly": true + }, + "scope": { + "type": "integer", + "description": "Binary OR value of the Snippet scope.", + "readOnly": true + } + }, + "description": "Policy description properties." + }, + "PolicyDescriptionCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PolicyDescriptionContract" + }, + "description": "Descriptions of APIM policies." + }, + "count": { + "type": "integer", + "format": "int64", + "description": "Total record count number." + } + }, + "description": "Descriptions of APIM policies." + }, + "PortalDelegationSettings": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PortalDelegationSettingsProperties", + "description": "Delegation settings contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Delegation settings for a developer portal." + }, + "PortalDelegationSettingsProperties": { + "properties": { + "url": { + "type": "string", + "description": "A delegation Url." + }, + "validationKey": { + "x-ms-secret": true, + "type": "string", + "description": "A base64-encoded validation key to validate, that a request is coming from Azure API Management." + }, + "subscriptions": { + "$ref": "#/definitions/SubscriptionsDelegationSettingsProperties", + "description": "Subscriptions delegation settings." + }, + "userRegistration": { + "$ref": "#/definitions/RegistrationDelegationSettingsProperties", + "description": "User registration delegation settings." + } + }, + "description": "Delegation settings contract properties." + }, + "PortalSigninSettingProperties": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Redirect Anonymous users to the Sign-In page." + } + }, + "description": "Sign-in settings contract properties." + }, + "PortalSigninSettings": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PortalSigninSettingProperties", + "description": "Sign-in settings contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Sign-In settings for the Developer Portal." + }, + "PortalSignupSettings": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PortalSignupSettingsProperties", + "description": "Sign-up settings contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Sign-Up settings for a developer portal." + }, + "PortalSignupSettingsProperties": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Allow users to sign up on a developer portal." + }, + "termsOfService": { + "type": "object", + "$ref": "#/definitions/TermsOfServiceProperties", + "description": "Terms of service contract properties." + } + }, + "description": "Sign-up settings contract properties." + }, + "ProductCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ProductContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Products list representation." + }, + "ProductContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProductContractProperties", + "description": "Product entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Product details." + }, + "ProductContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Product name.", + "minLength": 1, + "maxLength": 300 + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProductEntityBaseParameters" + } + ], + "required": [ + "displayName" + ], + "description": "Product profile." + }, + "ProductEntityBaseParameters": { + "properties": { + "description": { + "type": "string", + "description": "Product description. May include HTML formatting tags.", + "minLength": 1, + "maxLength": 1000 + }, + "terms": { + "type": "string", + "description": "Product terms of use. Developers trying to subscribe to the product will be presented and required to accept these terms before they can complete the subscription process." + }, + "subscriptionRequired": { + "description": "Whether a product subscription is required for accessing APIs included in this product. If true, the product is referred to as \"protected\" and a valid subscription key is required for a request to an API included in the product to succeed. If false, the product is referred to as \"open\" and requests to an API included in the product can be made without a subscription key. If property is omitted when creating a new product it's value is assumed to be true.", + "type": "boolean" + }, + "approvalRequired": { + "description": "whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of false.", + "type": "boolean" + }, + "subscriptionsLimit": { + "type": "integer", + "format": "int32", + "description": "Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of false." + }, + "state": { + "type": "string", + "description": "whether product is published or not. Published products are discoverable by users of developer portal. Non published products are visible only to administrators. Default state of Product is notPublished.", + "enum": [ + "notPublished", + "published" + ], + "x-ms-enum": { + "name": "ProductState", + "modelAsString": false + } + } + }, + "description": "Product Entity Base Parameters" + }, + "ProductTagResourceContractProperties": { + "properties": { + "id": { + "type": "string", + "description": "Identifier of the product in the form of /products/{productId}" + }, + "name": { + "type": "string", + "description": "Product name.", + "minLength": 1, + "maxLength": 300 + } + }, + "allOf": [ + { + "$ref": "./definitions.json#/definitions/ProductEntityBaseParameters" + } + ], + "required": [ + "name" + ], + "description": "Product profile." + }, + "ProductUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProductUpdateProperties", + "description": "Product entity Update contract properties." + } + }, + "description": "Product Update parameters." + }, + "ProductUpdateProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Product name.", + "maxLength": 300, + "minLength": 1 + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProductEntityBaseParameters" + } + ], + "description": "Parameters supplied to the Update Product operation." + }, + "NamedValueCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NamedValueContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged NamedValue list representation." + }, + "NamedValueCreateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NamedValueCreateContractProperties", + "description": "NamedValue entity contract properties for PUT operation." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "NamedValue details." + }, + "NamedValueCreateContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Unique name of NamedValue. It may contain only letters, digits, period, dash, and underscore characters.", + "minLength": 1, + "maxLength": 256, + "pattern": "^[A-Za-z0-9-._]+$" + }, + "value": { + "type": "string", + "description": "Value of the NamedValue. Can contain policy expressions. It may not be empty or consist only of whitespace. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value.", + "minLength": 1, + "maxLength": 4096 + } + }, + "allOf": [ + { + "$ref": "#/definitions/NamedValueEntityBaseParameters" + } + ], + "required": [ + "displayName", + "value" + ], + "description": "NamedValue Contract properties." + }, + "NamedValueContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NamedValueContractProperties", + "description": "NamedValue entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "NamedValue details." + }, + "NamedValueContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Unique name of NamedValue. It may contain only letters, digits, period, dash, and underscore characters.", + "minLength": 1, + "maxLength": 256, + "pattern": "^[A-Za-z0-9-._]+$" + }, + "value": { + "type": "string", + "description": "Value of the NamedValue. Can contain policy expressions. It may not be empty or consist only of whitespace. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value.", + "minLength": 1, + "maxLength": 4096 + } + }, + "allOf": [ + { + "$ref": "#/definitions/NamedValueEntityBaseParameters" + } + ], + "required": [ + "displayName" + ], + "description": "NamedValue Contract properties." + }, + "NamedValueEntityBaseParameters": { + "properties": { + "tags": { + "type": "array", + "items": { + "type": "string" + }, + "maxItems": 32, + "description": "Optional tags that when provided can be used to filter the NamedValue list." + }, + "secret": { + "description": "Determines whether the value is a secret and should be encrypted or not. Default value is false.", + "type": "boolean" + } + }, + "description": "NamedValue Entity Base Parameters set." + }, + "NamedValueUpdateParameterProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Unique name of NamedValue. It may contain only letters, digits, period, dash, and underscore characters.", + "minLength": 1, + "maxLength": 256, + "pattern": "^[A-Za-z0-9-._]+$" + }, + "value": { + "type": "string", + "description": "Value of the NamedValue. Can contain policy expressions. It may not be empty or consist only of whitespace.", + "minLength": 1, + "maxLength": 4096 + } + }, + "allOf": [ + { + "$ref": "#/definitions/NamedValueEntityBaseParameters" + } + ], + "description": "NamedValue Contract properties." + }, + "NamedValueUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NamedValueUpdateParameterProperties", + "description": "NamedValue entity Update contract properties." + } + }, + "description": "NamedValue update Parameters." + }, + "QuotaCounterCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/QuotaCounterContract" + }, + "description": "Quota counter values." + }, + "count": { + "type": "integer", + "format": "int64", + "description": "Total record count number across all pages." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Quota Counter list representation." + }, + "QuotaCounterContract": { + "properties": { + "counterKey": { + "type": "string", + "description": "The Key value of the Counter. Must not be empty.", + "minLength": 1 + }, + "periodKey": { + "type": "string", + "description": "Identifier of the Period for which the counter was collected. Must not be empty.", + "minLength": 1 + }, + "periodStartTime": { + "type": "string", + "format": "date-time", + "description": "The date of the start of Counter Period. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "periodEndTime": { + "type": "string", + "format": "date-time", + "description": "The date of the end of Counter Period. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "value": { + "$ref": "#/definitions/QuotaCounterValueContractProperties", + "description": "Quota Value Properties" + } + }, + "required": [ + "counterKey", + "periodKey", + "periodStartTime", + "periodEndTime" + ], + "description": "Quota counter details." + }, + "QuotaCounterValueContract": { + "properties": { + "value": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/QuotaCounterValueContractProperties", + "description": "Quota counter Value Properties." + } + }, + "description": "Quota counter value details." + }, + "QuotaCounterValueContractProperties": { + "properties": { + "callsCount": { + "type": "integer", + "format": "int32", + "description": "Number of times Counter was called." + }, + "kbTransferred": { + "type": "number", + "format": "double", + "description": "Data Transferred in KiloBytes." + } + }, + "description": "Quota counter value details." + }, + "RecipientEmailCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RecipientEmailContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Recipient User list representation." + }, + "RecipientEmailContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RecipientEmailContractProperties", + "description": "Recipient Email contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Recipient Email details." + }, + "RecipientEmailContractProperties": { + "properties": { + "email": { + "type": "string", + "description": "User Email subscribed to notification." + } + }, + "description": "Recipient Email Contract Properties." + }, + "RecipientsContractProperties": { + "properties": { + "emails": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of Emails subscribed for the notification." + }, + "users": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of Users subscribed for the notification." + } + }, + "description": "Notification Parameter contract." + }, + "RecipientUserCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RecipientUserContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Recipient User list representation." + }, + "RecipientUserContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RecipientUsersContractProperties", + "description": "Recipient User entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Recipient User details." + }, + "RecipientUsersContractProperties": { + "properties": { + "userId": { + "type": "string", + "description": "API Management UserId subscribed to notification." + } + }, + "description": "Recipient User Contract Properties." + }, + "RegistrationDelegationSettingsProperties": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Enable or disable delegation for user registration." + } + }, + "description": "User registration delegation settings properties." + }, + "ReportCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ReportRecordContract" + }, + "description": "Page values." + }, + "count": { + "type": "integer", + "format": "int64", + "description": "Total record count number across all pages." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Report records list representation." + }, + "ReportRecordContract": { + "properties": { + "name": { + "type": "string", + "description": "Name depending on report endpoint specifies product, API, operation or developer name." + }, + "timestamp": { + "type": "string", + "format": "date-time", + "description": "Start of aggregation period. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "interval": { + "type": "string", + "description": "Length of aggregation period. Interval must be multiple of 15 minutes and may not be zero. The value should be in ISO 8601 format (http://en.wikipedia.org/wiki/ISO_8601#Durations)." + }, + "country": { + "type": "string", + "description": "Country to which this record data is related." + }, + "region": { + "type": "string", + "description": "Country region to which this record data is related." + }, + "zip": { + "type": "string", + "description": "Zip code to which this record data is related." + }, + "userId": { + "readOnly": true, + "type": "string", + "description": "User identifier path. /users/{userId}" + }, + "productId": { + "readOnly": true, + "type": "string", + "description": "Product identifier path. /products/{productId}" + }, + "apiId": { + "type": "string", + "description": "API identifier path. /apis/{apiId}" + }, + "operationId": { + "type": "string", + "description": "Operation identifier path. /apis/{apiId}/operations/{operationId}" + }, + "apiRegion": { + "type": "string", + "description": "API region identifier." + }, + "subscriptionId": { + "type": "string", + "description": "Subscription identifier path. /subscriptions/{subscriptionId}" + }, + "callCountSuccess": { + "type": "integer", + "format": "int32", + "description": "Number of successful calls. This includes calls returning HttpStatusCode <= 301 and HttpStatusCode.NotModified and HttpStatusCode.TemporaryRedirect" + }, + "callCountBlocked": { + "type": "integer", + "format": "int32", + "description": "Number of calls blocked due to invalid credentials. This includes calls returning HttpStatusCode.Unauthorized and HttpStatusCode.Forbidden and HttpStatusCode.TooManyRequests" + }, + "callCountFailed": { + "type": "integer", + "format": "int32", + "description": "Number of calls failed due to proxy or backend errors. This includes calls returning HttpStatusCode.BadRequest(400) and any Code between HttpStatusCode.InternalServerError (500) and 600" + }, + "callCountOther": { + "type": "integer", + "format": "int32", + "description": "Number of other calls." + }, + "callCountTotal": { + "type": "integer", + "format": "int32", + "description": "Total number of calls." + }, + "bandwidth": { + "type": "integer", + "format": "int64", + "description": "Bandwidth consumed." + }, + "cacheHitCount": { + "type": "integer", + "format": "int32", + "description": "Number of times when content was served from cache policy." + }, + "cacheMissCount": { + "type": "integer", + "format": "int32", + "description": "Number of times content was fetched from backend." + }, + "apiTimeAvg": { + "type": "number", + "format": "double", + "description": "Average time it took to process request." + }, + "apiTimeMin": { + "type": "number", + "format": "double", + "description": "Minimum time it took to process request." + }, + "apiTimeMax": { + "type": "number", + "format": "double", + "description": "Maximum time it took to process request." + }, + "serviceTimeAvg": { + "type": "number", + "format": "double", + "description": "Average time it took to process request on backend." + }, + "serviceTimeMin": { + "type": "number", + "format": "double", + "description": "Minimum time it took to process request on backend." + }, + "serviceTimeMax": { + "type": "number", + "format": "double", + "description": "Maximum time it took to process request on backend." + } + }, + "description": "Report data." + }, + "RepresentationContract": { + "properties": { + "contentType": { + "type": "string", + "description": "Specifies a registered or custom content type for this representation, e.g. application/xml." + }, + "sample": { + "type": "string", + "description": "An example of the representation." + }, + "schemaId": { + "type": "string", + "description": "Schema identifier. Applicable only if 'contentType' value is neither 'application/x-www-form-urlencoded' nor 'multipart/form-data'." + }, + "typeName": { + "type": "string", + "description": "Type name defined by the schema. Applicable only if 'contentType' value is neither 'application/x-www-form-urlencoded' nor 'multipart/form-data'." + }, + "formParameters": { + "type": "array", + "items": { + "$ref": "#/definitions/ParameterContract" + }, + "description": "Collection of form parameters. Required if 'contentType' value is either 'application/x-www-form-urlencoded' or 'multipart/form-data'.." + } + }, + "required": [ + "contentType" + ], + "description": "Operation request/response representation details." + }, + "RequestContract": { + "properties": { + "description": { + "type": "string", + "description": "Operation request description." + }, + "queryParameters": { + "type": "array", + "items": { + "$ref": "#/definitions/ParameterContract" + }, + "description": "Collection of operation request query parameters." + }, + "headers": { + "type": "array", + "items": { + "$ref": "#/definitions/ParameterContract" + }, + "description": "Collection of operation request headers." + }, + "representations": { + "type": "array", + "items": { + "$ref": "#/definitions/RepresentationContract" + }, + "description": "Collection of operation request representations." + } + }, + "description": "Operation request details." + }, + "RequestReportCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RequestReportRecordContract" + }, + "description": "Page values." + }, + "count": { + "type": "integer", + "format": "int64", + "description": "Total record count number across all pages." + } + }, + "description": "Paged Report records list representation." + }, + "RequestReportRecordContract": { + "properties": { + "apiId": { + "type": "string", + "description": "API identifier path. /apis/{apiId}" + }, + "operationId": { + "type": "string", + "description": "Operation identifier path. /apis/{apiId}/operations/{operationId}" + }, + "productId": { + "readOnly": true, + "type": "string", + "description": "Product identifier path. /products/{productId}" + }, + "userId": { + "readOnly": true, + "type": "string", + "description": "User identifier path. /users/{userId}" + }, + "method": { + "type": "string", + "description": "The HTTP method associated with this request.." + }, + "url": { + "type": "string", + "description": "The full URL associated with this request." + }, + "ipAddress": { + "type": "string", + "description": "The client IP address associated with this request." + }, + "backendResponseCode": { + "type": "string", + "description": "The HTTP status code received by the gateway as a result of forwarding this request to the backend." + }, + "responseCode": { + "type": "integer", + "format": "int32", + "description": "The HTTP status code returned by the gateway." + }, + "responseSize": { + "type": "integer", + "format": "int32", + "description": "The size of the response returned by the gateway." + }, + "timestamp": { + "type": "string", + "format": "date-time", + "description": "The date and time when this request was received by the gateway in ISO 8601 format." + }, + "cache": { + "type": "string", + "description": "Specifies if response cache was involved in generating the response. If the value is none, the cache was not used. If the value is hit, cached response was returned. If the value is miss, the cache was used but lookup resulted in a miss and request was fulfilled by the backend." + }, + "apiTime": { + "type": "number", + "format": "double", + "description": "The total time it took to process this request." + }, + "serviceTime": { + "type": "number", + "format": "double", + "description": "he time it took to forward this request to the backend and get the response back." + }, + "apiRegion": { + "type": "string", + "description": "Azure region where the gateway that processed this request is located." + }, + "subscriptionId": { + "type": "string", + "description": "Subscription identifier path. /subscriptions/{subscriptionId}" + }, + "requestId": { + "type": "string", + "description": "Request Identifier." + }, + "requestSize": { + "type": "integer", + "format": "int32", + "description": "The size of this request.." + } + }, + "description": "Request Report data." + }, + "ResponseContract": { + "properties": { + "statusCode": { + "type": "integer", + "format": "int32", + "description": "Operation response HTTP status code." + }, + "description": { + "type": "string", + "description": "Operation response description." + }, + "representations": { + "type": "array", + "items": { + "$ref": "#/definitions/RepresentationContract" + }, + "description": "Collection of operation response representations." + }, + "headers": { + "type": "array", + "items": { + "$ref": "#/definitions/ParameterContract" + }, + "description": "Collection of operation response headers." + } + }, + "required": [ + "statusCode" + ], + "description": "Operation response details." + }, + "SamplingSettings": { + "properties": { + "samplingType": { + "type": "string", + "description": "Sampling type.", + "enum": [ + "fixed" + ], + "x-ms-enum": { + "name": "SamplingType", + "modelAsString": true, + "values": [ + { + "value": "fixed", + "description": "Fixed-rate sampling." + } + ] + } + }, + "percentage": { + "type": "number", + "format": "double", + "minimum": 0, + "maximum": 100, + "description": "Rate of sampling for fixed-rate sampling." + } + }, + "description": "Sampling settings for Diagnostic." + }, + "SaveConfigurationParameter": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SaveConfigurationParameterProperties", + "description": "Properties of the Save Configuration Parameters." + } + }, + "description": "Save Tenant Configuration Contract details." + }, + "SaveConfigurationParameterProperties": { + "properties": { + "branch": { + "type": "string", + "description": "The name of the Git branch in which to commit the current configuration snapshot." + }, + "force": { + "type": "boolean", + "description": "The value if true, the current configuration database is committed to the Git repository, even if the Git repository has newer changes that would be overwritten." + } + }, + "required": [ + "branch" + ], + "description": "Parameters supplied to the Save Tenant Configuration operation." + }, + "SchemaCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SchemaContract" + }, + "description": "Api Schema Contract value.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Next page link if any.", + "readOnly": true + } + }, + "description": "The response of the list schema operation." + }, + "SchemaContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SchemaContractProperties", + "description": "Properties of the Schema." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Schema Contract details." + }, + "SchemaContractProperties": { + "properties": { + "contentType": { + "type": "string", + "description": "Must be a valid a media type used in a Content-Type header as defined in the RFC 2616. Media type of the schema document (e.g. application/json, application/xml).
- `Swagger` Schema use `application/vnd.ms-azure-apim.swagger.definitions+json`
- `WSDL` Schema use `application/vnd.ms-azure-apim.xsd+xml`
- `OpenApi` Schema use `application/vnd.oai.openapi.components+json`
- `WADL Schema` use `application/vnd.ms-azure-apim.wadl.grammars+xml`." + }, + "document": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SchemaDocumentProperties", + "description": "Create or update Properties of the Schema Document." + } + }, + "required": [ + "contentType" + ], + "description": "API Schema create or update contract Properties." + }, + "SchemaDocumentProperties": { + "properties": { + "value": { + "type": "string", + "description": "Json escaped string defining the document representing the Schema. Used for schemas other than Swagger/OpenAPI." + }, + "definitions": { + "type": "object", + "description": "Types definitions. Used for Swagger/OpenAPI schemas only, null otherwise." + } + }, + "description": "Schema Document Properties." + }, + "SubscriptionCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SubscriptionContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Subscriptions list representation." + }, + "SubscriptionContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SubscriptionContractProperties", + "description": "Subscription contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Subscription details." + }, + "SubscriptionContractProperties": { + "properties": { + "ownerId": { + "type": "string", + "description": "The user resource identifier of the subscription owner. The value is a valid relative URL in the format of /users/{userId} where {userId} is a user identifier." + }, + "scope": { + "type": "string", + "description": "Scope like /products/{productId} or /apis or /apis/{apiId}." + }, + "displayName": { + "type": "string", + "description": "The name of the subscription, or null if the subscription has no name.", + "minLength": 0, + "maxLength": 100 + }, + "state": { + "type": "string", + "description": "Subscription state. Possible states are * active – the subscription is active, * suspended – the subscription is blocked, and the subscriber cannot call any APIs of the product, * submitted – the subscription request has been made by the developer, but has not yet been approved or rejected, * rejected – the subscription request has been denied by an administrator, * cancelled – the subscription has been cancelled by the developer or administrator, * expired – the subscription reached its expiration date and was deactivated.", + "enum": [ + "suspended", + "active", + "expired", + "submitted", + "rejected", + "cancelled" + ], + "x-ms-enum": { + "name": "SubscriptionState", + "modelAsString": false + } + }, + "createdDate": { + "type": "string", + "format": "date-time", + "description": "Subscription creation date. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n", + "readOnly": true + }, + "startDate": { + "type": "string", + "format": "date-time", + "description": "Subscription activation date. The setting is for audit purposes only and the subscription is not automatically activated. The subscription lifecycle can be managed by using the `state` property. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "expirationDate": { + "type": "string", + "format": "date-time", + "description": "Subscription expiration date. The setting is for audit purposes only and the subscription is not automatically expired. The subscription lifecycle can be managed by using the `state` property. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "endDate": { + "type": "string", + "format": "date-time", + "description": "Date when subscription was cancelled or expired. The setting is for audit purposes only and the subscription is not automatically cancelled. The subscription lifecycle can be managed by using the `state` property. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "notificationDate": { + "type": "string", + "format": "date-time", + "description": "Upcoming subscription expiration notification date. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "primaryKey": { + "x-ms-secret": true, + "type": "string", + "description": "Subscription primary key. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value.", + "minLength": 1, + "maxLength": 256 + }, + "secondaryKey": { + "x-ms-secret": true, + "type": "string", + "description": "Subscription secondary key. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value.", + "minLength": 1, + "maxLength": 256 + }, + "stateComment": { + "type": "string", + "description": "Optional subscription comment added by an administrator." + }, + "allowTracing": { + "type": "boolean", + "description": "Determines whether tracing is enabled", + "x-apim-code-nillable": true + } + }, + "required": [ + "scope", + "state" + ], + "description": "Subscription details." + }, + "SubscriptionCreateParameterProperties": { + "properties": { + "ownerId": { + "type": "string", + "description": "User (user id path) for whom subscription is being created in form /users/{userId}" + }, + "scope": { + "type": "string", + "description": "Scope like /products/{productId} or /apis or /apis/{apiId}." + }, + "displayName": { + "type": "string", + "description": "Subscription name.", + "minLength": 1, + "maxLength": 100 + }, + "primaryKey": { + "type": "string", + "description": "Primary subscription key. If not specified during request key will be generated automatically.", + "minLength": 1, + "maxLength": 256 + }, + "secondaryKey": { + "type": "string", + "description": "Secondary subscription key. If not specified during request key will be generated automatically.", + "minLength": 1, + "maxLength": 256 + }, + "state": { + "type": "string", + "description": "Initial subscription state. If no value is specified, subscription is created with Submitted state. Possible states are * active – the subscription is active, * suspended – the subscription is blocked, and the subscriber cannot call any APIs of the product, * submitted – the subscription request has been made by the developer, but has not yet been approved or rejected, * rejected – the subscription request has been denied by an administrator, * cancelled – the subscription has been cancelled by the developer or administrator, * expired – the subscription reached its expiration date and was deactivated.", + "enum": [ + "suspended", + "active", + "expired", + "submitted", + "rejected", + "cancelled" + ], + "x-ms-enum": { + "name": "SubscriptionState", + "modelAsString": false + } + }, + "allowTracing": { + "type": "boolean", + "description": "Determines whether tracing can be enabled" + } + }, + "required": [ + "scope", + "displayName" + ], + "description": "Parameters supplied to the Create subscription operation." + }, + "SubscriptionCreateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SubscriptionCreateParameterProperties", + "description": "Subscription contract properties." + } + }, + "description": "Subscription create details." + }, + "SubscriptionKeyParameterNamesContract": { + "properties": { + "header": { + "type": "string", + "description": "Subscription key header name." + }, + "query": { + "type": "string", + "description": "Subscription key query string parameter name." + } + }, + "description": "Subscription key parameter names details.", + "example": { + "subscriptionKeyParameterNames": { + "query": "customQueryParameterName", + "header": "customHeaderParameterName" + } + } + }, + "SubscriptionsDelegationSettingsProperties": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Enable or disable delegation for subscriptions." + } + }, + "description": "Subscriptions delegation settings properties." + }, + "SubscriptionUpdateParameterProperties": { + "properties": { + "ownerId": { + "type": "string", + "description": "User identifier path: /users/{userId}" + }, + "scope": { + "type": "string", + "description": "Scope like /products/{productId} or /apis or /apis/{apiId}" + }, + "expirationDate": { + "type": "string", + "format": "date-time", + "description": "Subscription expiration date. The setting is for audit purposes only and the subscription is not automatically expired. The subscription lifecycle can be managed by using the `state` property. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard." + }, + "displayName": { + "type": "string", + "description": "Subscription name." + }, + "primaryKey": { + "type": "string", + "description": "Primary subscription key.", + "minLength": 1, + "maxLength": 256 + }, + "secondaryKey": { + "type": "string", + "description": "Secondary subscription key.", + "minLength": 1, + "maxLength": 256 + }, + "state": { + "type": "string", + "description": "Subscription state. Possible states are * active – the subscription is active, * suspended – the subscription is blocked, and the subscriber cannot call any APIs of the product, * submitted – the subscription request has been made by the developer, but has not yet been approved or rejected, * rejected – the subscription request has been denied by an administrator, * cancelled – the subscription has been cancelled by the developer or administrator, * expired – the subscription reached its expiration date and was deactivated.", + "enum": [ + "suspended", + "active", + "expired", + "submitted", + "rejected", + "cancelled" + ], + "x-ms-enum": { + "name": "SubscriptionState", + "modelAsString": false + } + }, + "stateComment": { + "type": "string", + "description": "Comments describing subscription state change by the administrator." + }, + "allowTracing": { + "type": "boolean", + "description": "Determines whether tracing can be enabled" + } + }, + "description": "Parameters supplied to the Update subscription operation." + }, + "SubscriptionUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SubscriptionUpdateParameterProperties", + "description": "Subscription Update contract properties." + } + }, + "description": "Subscription update details." + }, + "TagCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TagContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Tag list representation." + }, + "TagContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/TagContractProperties", + "description": "Tag entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Tag Contract details." + }, + "TagContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Tag name.", + "maxLength": 160, + "minLength": 1 + } + }, + "required": [ + "displayName" + ], + "description": "Tag contract Properties." + }, + "TagCreateUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/TagContractProperties", + "description": "Properties supplied to Create Tag operation." + } + }, + "description": "Parameters supplied to Create/Update Tag operations." + }, + "TagDescriptionBaseProperties": { + "properties": { + "description": { + "type": "string", + "description": "Description of the Tag." + }, + "externalDocsUrl": { + "type": "string", + "description": "Absolute URL of external resources describing the tag.", + "maxLength": 2000 + }, + "externalDocsDescription": { + "type": "string", + "description": "Description of the external resources describing the tag." + } + }, + "description": "Parameters supplied to the Create TagDescription operation." + }, + "TagDescriptionCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TagDescriptionContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged TagDescription list representation." + }, + "TagDescriptionContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/TagDescriptionContractProperties", + "description": "TagDescription entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Contract details." + }, + "TagDescriptionContractProperties": { + "properties": { + "tagId": { + "type": "string", + "description": "Identifier of the tag in the form of /tags/{tagId}" + }, + "displayName": { + "type": "string", + "description": "Tag name.", + "maxLength": 160, + "minLength": 1 + } + }, + "allOf": [ + { + "$ref": "#/definitions/TagDescriptionBaseProperties" + } + ], + "description": "TagDescription contract Properties." + }, + "TagDescriptionCreateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/TagDescriptionBaseProperties", + "description": "Properties supplied to Create TagDescription operation." + } + }, + "description": "Parameters supplied to the Create TagDescription operation." + }, + "TagResourceCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TagResourceContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Tag list representation." + }, + "TagResourceContract": { + "properties": { + "tag": { + "$ref": "#/definitions/TagTagResourceContractProperties", + "description": "Tag associated with the resource." + }, + "api": { + "$ref": "#/definitions/ApiTagResourceContractProperties", + "description": "Api associated with the tag." + }, + "operation": { + "$ref": "#/definitions/OperationTagResourceContractProperties", + "description": "Operation associated with the tag." + }, + "product": { + "$ref": "#/definitions/ProductTagResourceContractProperties", + "description": "Product associated with the tag." + } + }, + "required": [ + "tag" + ], + "description": "TagResource contract properties." + }, + "TagTagResourceContractProperties": { + "properties": { + "id": { + "type": "string", + "description": "Tag identifier" + }, + "name": { + "type": "string", + "description": "Tag Name", + "minLength": 1, + "maxLength": 160 + } + }, + "description": "Contract defining the Tag property in the Tag Resource Contract" + }, + "TenantConfigurationSyncStateContract": { + "properties": { + "branch": { + "type": "string", + "description": "The name of Git branch." + }, + "commitId": { + "type": "string", + "description": "The latest commit Id." + }, + "isExport": { + "type": "boolean", + "description": "value indicating if last sync was save (true) or deploy (false) operation." + }, + "isSynced": { + "type": "boolean", + "description": "value indicating if last synchronization was later than the configuration change." + }, + "isGitEnabled": { + "type": "boolean", + "description": "value indicating whether Git configuration access is enabled." + }, + "syncDate": { + "type": "string", + "format": "date-time", + "description": "The date of the latest synchronization. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "configurationChangeDate": { + "type": "string", + "format": "date-time", + "description": "The date of the latest configuration change. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + } + }, + "description": "Tenant Configuration Synchronization State." + }, + "TermsOfServiceProperties": { + "properties": { + "text": { + "type": "string", + "description": "A terms of service text." + }, + "enabled": { + "type": "boolean", + "description": "Display terms of service during a sign-up process." + }, + "consentRequired": { + "type": "boolean", + "description": "Ask user for consent to the terms of service." + } + }, + "description": "Terms of service contract properties." + }, + "TokenBodyParameterContract": { + "properties": { + "name": { + "type": "string", + "description": "body parameter name." + }, + "value": { + "type": "string", + "description": "body parameter value." + } + }, + "required": [ + "name", + "value" + ], + "description": "OAuth acquire token request body parameter (www-url-form-encoded)." + }, + "UserCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/UserContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Users list representation." + }, + "UserContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/UserContractProperties", + "description": "User entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "User details." + }, + "UserContractProperties": { + "properties": { + "firstName": { + "type": "string", + "description": "First name." + }, + "lastName": { + "type": "string", + "description": "Last name." + }, + "email": { + "type": "string", + "description": "Email address." + }, + "registrationDate": { + "type": "string", + "format": "date-time", + "description": "Date of user registration. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "groups": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./definitions.json#/definitions/GroupContractProperties" + }, + "description": "Collection of groups user is part of." + } + }, + "allOf": [ + { + "$ref": "#/definitions/UserEntityBaseParameters" + } + ], + "description": "User profile." + }, + "UserCreateParameterProperties": { + "properties": { + "email": { + "type": "string", + "description": "Email address. Must not be empty and must be unique within the service instance.", + "minLength": 1, + "maxLength": 254 + }, + "firstName": { + "type": "string", + "description": "First name.", + "minLength": 1, + "maxLength": 100 + }, + "lastName": { + "type": "string", + "description": "Last name.", + "minLength": 1, + "maxLength": 100 + }, + "password": { + "type": "string", + "description": "User Password. If no value is provided, a default password is generated." + }, + "appType": { + "type": "string", + "description": "Determines the type of application which send the create user request. Default is old publisher portal.", + "enum": [ + "developerPortal" + ], + "x-ms-enum": { + "name": "AppType", + "modelAsString": true, + "values": [ + { + "value": "developerPortal", + "description": "User create request was sent by new developer portal." + } + ] + } + }, + "confirmation": { + "type": "string", + "description": "Determines the type of confirmation e-mail that will be sent to the newly created user.", + "enum": [ + "signup", + "invite" + ], + "x-ms-enum": { + "name": "Confirmation", + "modelAsString": true, + "values": [ + { + "value": "signup", + "description": "Send an e-mail to the user confirming they have successfully signed up." + }, + { + "value": "invite", + "description": "Send an e-mail inviting the user to sign-up and complete registration." + } + ] + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/UserEntityBaseParameters" + } + ], + "required": [ + "email", + "firstName", + "lastName" + ], + "description": "Parameters supplied to the Create User operation." + }, + "UserCreateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/UserCreateParameterProperties", + "description": "User entity create contract properties." + } + }, + "description": "User create details." + }, + "UserEntityBaseParameters": { + "properties": { + "state": { + "type": "string", + "description": "Account state. Specifies whether the user is active or not. Blocked users are unable to sign into the developer portal or call any APIs of subscribed products. Default state is Active.", + "enum": [ + "active", + "blocked", + "pending", + "deleted" + ], + "default": "active", + "x-ms-enum": { + "name": "UserState", + "modelAsString": true, + "values": [ + { + "value": "active", + "description": "User state is active." + }, + { + "value": "blocked", + "description": "User is blocked. Blocked users cannot authenticate at developer portal or call API." + }, + { + "value": "pending", + "description": "User account is pending. Requires identity confirmation before it can be made active." + }, + { + "value": "deleted", + "description": "User account is closed. All identities and related entities are removed." + } + ] + } + }, + "note": { + "type": "string", + "description": "Optional note about a user set by the administrator." + }, + "identities": { + "type": "array", + "items": { + "$ref": "#/definitions/UserIdentityContract" + }, + "description": "Collection of user identities." + } + }, + "description": "User Entity Base Parameters set." + }, + "UserIdentityCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/UserIdentityContract" + }, + "description": "User Identity values." + }, + "count": { + "type": "integer", + "format": "int64", + "description": "Total record count number across all pages." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "List of Users Identity list representation." + }, + "UserIdentityContract": { + "properties": { + "provider": { + "type": "string", + "description": "Identity provider name." + }, + "id": { + "type": "string", + "description": "Identifier value within provider." + } + }, + "description": "User identity details." + }, + "UserTokenParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/UserTokenParameterProperties", + "description": "User Token Parameter contract properties." + } + }, + "description": "Get User Token parameters." + }, + "UserTokenParameterProperties": { + "properties": { + "keyType": { + "type": "string", + "description": "The Key to be used to generate token for user.", + "enum": [ + "primary", + "secondary" + ], + "default": "primary", + "x-ms-enum": { + "name": "KeyType", + "modelAsString": false + } + }, + "expiry": { + "type": "string", + "format": "date-time", + "description": "The Expiry time of the Token. Maximum token expiry time is set to 30 days. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + } + }, + "required": [ + "keyType", + "expiry" + ], + "description": "Parameters supplied to the Get User Token operation." + }, + "UserTokenResult": { + "properties": { + "value": { + "type": "string", + "description": "Shared Access Authorization token for the User." + } + }, + "description": "Get User Token response details." + }, + "UserUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/UserUpdateParametersProperties", + "description": "User entity update contract properties." + } + }, + "description": "User update parameters." + }, + "UserUpdateParametersProperties": { + "properties": { + "email": { + "type": "string", + "description": "Email address. Must not be empty and must be unique within the service instance.", + "minLength": 1, + "maxLength": 254 + }, + "password": { + "type": "string", + "description": "User Password." + }, + "firstName": { + "type": "string", + "description": "First name.", + "minLength": 1, + "maxLength": 100 + }, + "lastName": { + "type": "string", + "description": "Last name.", + "minLength": 1, + "maxLength": 100 + } + }, + "allOf": [ + { + "$ref": "#/definitions/UserEntityBaseParameters" + } + ], + "description": "Parameters supplied to the Update User operation." + }, + "X509CertificateName": { + "properties": { + "name": { + "description": "Common Name of the Certificate.", + "type": "string" + }, + "issuerCertificateThumbprint": { + "description": "Thumbprint for the Issuer of the Certificate.", + "type": "string" + } + }, + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-windows-cluster-x509-security" + }, + "description": "Properties of server X509Names." + }, + "ClientSecretContract": { + "properties": { + "clientSecret": { + "type": "string", + "description": "Client or app secret used in IdentityProviders, Aad, OpenID or OAuth." + } + }, + "description": "Client or app secret used in IdentityProviders, Aad, OpenID or OAuth." + }, + "PropertyValueContract": { + "properties": { + "value": { + "type": "string", + "description": "This is secret value of the NamedValue entity." + } + }, + "description": "Client or app secret used in IdentityProviders, Aad, OpenID or OAuth." + }, + "PortalSettingValidationKeyContract": { + "properties": { + "validationKey": { + "type": "string", + "description": "This is secret value of the validation key in portal settings." + } + }, + "description": "Client or app secret used in IdentityProviders, Aad, OpenID or OAuth." + }, + "SubscriptionKeysContract": { + "properties": { + "primaryKey": { + "type": "string", + "description": "Subscription primary key.", + "minLength": 1, + "maxLength": 256 + }, + "secondaryKey": { + "type": "string", + "description": "Subscription secondary key.", + "minLength": 1, + "maxLength": 256 + } + }, + "description": "Subscription keys." + }, + "GatewayCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GatewayContract" + }, + "description": "Page values.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Next page link if any.", + "readOnly": true + } + }, + "description": "Paged Gateway list representation." + }, + "GatewayContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GatewayContractProperties", + "description": "Gateway details." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Gateway details." + }, + "GatewayContractProperties": { + "properties": { + "locationData": { + "$ref": "#/definitions/ResourceLocationDataContract", + "description": "Gateway location." + }, + "description": { + "type": "string", + "description": "Gateway description", + "maxLength": 1000 + } + }, + "description": "Properties of the Gateway contract." + }, + "ResourceLocationDataContract": { + "properties": { + "name": { + "type": "string", + "description": "A canonical name for the geographic or physical location.", + "maxLength": 256 + }, + "city": { + "type": "string", + "description": "The city or locality where the resource is located.", + "maxLength": 256 + }, + "district": { + "type": "string", + "description": "The district, state, or province where the resource is located.", + "maxLength": 256 + }, + "countryOrRegion": { + "type": "string", + "description": "The country or region where the resource is located.", + "maxLength": 256 + } + }, + "required": [ + "name" + ], + "description": "Resource location data properties." + }, + "GatewayKeysContract": { + "properties": { + "primary": { + "type": "string", + "description": "Primary gateway key." + }, + "secondary": { + "type": "string", + "description": "Secondary gateway key." + } + }, + "description": "Gateway authentication keys." + }, + "GatewayTokenRequestContract": { + "properties": { + "keyType": { + "type": "string", + "description": "The Key to be used to generate gateway token.", + "enum": [ + "primary", + "secondary" + ], + "default": "primary", + "x-ms-enum": { + "name": "KeyType", + "modelAsString": false + } + }, + "expiry": { + "type": "string", + "format": "date-time", + "description": "The Expiry time of the Token. Maximum token expiry time is set to 30 days. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + } + }, + "required": [ + "keyType", + "expiry" + ], + "description": "Gateway token request contract properties." + }, + "GatewayTokenContract": { + "properties": { + "value": { + "type": "string", + "description": "Shared Access Authentication token value for the Gateway." + } + }, + "description": "Gateway access token." + }, + "GatewayKeyRegenerationRequestContract": { + "properties": { + "keyType": { + "type": "string", + "description": "The Key being regenerated.", + "enum": [ + "primary", + "secondary" + ], + "x-ms-enum": { + "name": "KeyType", + "modelAsString": false + } + } + }, + "required": [ + "keyType" + ], + "description": "Gateway key regeneration request contract properties." + }, + "GatewayHostnameConfigurationCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GatewayHostnameConfigurationContract" + }, + "description": "Page values.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Next page link if any.", + "readOnly": true + } + }, + "description": "Paged Gateway hostname configuration list representation." + }, + "GatewayHostnameConfigurationContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GatewayHostnameConfigurationContractProperties", + "description": "Gateway hostname configuration details." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Gateway hostname configuration details." + }, + "GatewayHostnameConfigurationContractProperties": { + "properties": { + "hostname": { + "type": "string", + "description": "Hostname value. Supports valid domain name, partial or full wildcard" + }, + "certificateId": { + "type": "string", + "description": "Identifier of Certificate entity that will be used for TLS connection establishment" + }, + "negotiateClientCertificate": { + "type": "boolean", + "description": "Determines whether gateway requests client certificate" + } + }, + "description": "Gateway hostname configuration details." + }, + "AssociationContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "properties": { + "provisioningState": { + "type": "string", + "description": "Provisioning state.", + "enum": [ + "created" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": false + } + } + }, + "description": "Association entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Association entity details." + } + }, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementApplyNetworkConfigurationUpdates.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementApplyNetworkConfigurationUpdates.json new file mode 100644 index 000000000000..34a67eef95e2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementApplyNetworkConfigurationUpdates.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "parameters": { + "location": "west us" + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2019-12-01-preview" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "UID": "52ed5986-717b-45b4-b17c-3df8db372cff" + }, + "location": "East Asia", + "etag": "AAAAAAAXX6Y=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "Contoso", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2015-09-22T01:50:34.7921566Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [], + "publicIPAddresses": [ + "207.46.155.24" + ], + "virtualNetworkConfiguration": { + "subnetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/eastUsVirtualNetwork/subnets/apimSubnet" + }, + "virtualNetworkType": "External" + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementBackendReconnect.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementBackendReconnect.json new file mode 100644 index 000000000000..8c444e763d0d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementBackendReconnect.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "backendId": "proxybackend", + "parameters": { + "properties": { + "after": "PT3S" + } + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateAILogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateAILogger.json new file mode 100644 index 000000000000..8c62492fcfa7 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateAILogger.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "loggerId": "loggerId", + "parameters": { + "properties": { + "loggerType": "applicationInsights", + "description": "adding a new logger", + "credentials": { + "instrumentationKey": "11................a1" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/loggerId", + "type": "Microsoft.ApiManagement/service/loggers", + "name": "loggerId", + "properties": { + "loggerType": "applicationInsights", + "description": null, + "credentials": { + "instrumentationKey": "{{5a.......2a}}" + }, + "isBuffered": false, + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/microsoft.insights/components/airesource" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/loggerId", + "type": "Microsoft.ApiManagement/service/loggers", + "name": "loggerId", + "properties": { + "loggerType": "applicationInsights", + "description": null, + "credentials": { + "instrumentationKey": "{{5a.......2a}}" + }, + "isBuffered": false + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApi.json new file mode 100644 index 000000000000..82912cd840be --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApi.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "tempgroup", + "parameters": { + "properties": { + "description": "apidescription5200", + "authenticationSettings": { + "oAuth2": { + "authorizationServerId": "authorizationServerId2283", + "scope": "oauth2scope2580" + } + }, + "subscriptionKeyParameterNames": { + "header": "header4520", + "query": "query3037" + }, + "displayName": "apiname1463", + "serviceUrl": "http://newechoapi.cloudapp.net/api", + "path": "newapiPath", + "protocols": [ + "https", + "http" + ] + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/apiid9419", + "type": "Microsoft.ApiManagement/service/apis", + "name": "apiid9419", + "properties": { + "displayName": "apiname1463", + "apiRevision": "1", + "description": "apidescription5200", + "serviceUrl": "http://newechoapi.cloudapp.net/api", + "path": "newapiPath", + "protocols": [ + "http", + "https" + ], + "authenticationSettings": { + "oAuth2": { + "authorizationServerId": "authorizationServerId2283", + "scope": "oauth2scope2580" + } + }, + "subscriptionKeyParameterNames": { + "header": "header4520", + "query": "query3037" + }, + "isCurrent": true, + "isOnline": true + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2019-12-01-preview&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/apiid9419", + "type": "Microsoft.ApiManagement/service/apis", + "name": "apiid9419", + "properties": { + "displayName": "apiname1463", + "apiRevision": "1", + "description": "apidescription5200", + "serviceUrl": "http://newechoapi.cloudapp.net/api", + "path": "newapiPath", + "protocols": [ + "http", + "https" + ], + "authenticationSettings": { + "oAuth2": { + "authorizationServerId": "authorizationServerId2283", + "scope": "oauth2scope2580" + } + }, + "subscriptionKeyParameterNames": { + "header": "header4520", + "query": "query3037" + }, + "isCurrent": true, + "isOnline": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiClone.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiClone.json new file mode 100644 index 000000000000..6d1a8eb8cc9e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiClone.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "echo-api2", + "parameters": { + "properties": { + "displayName": "Echo API2", + "description": "Copy of Existing Echo Api including Operations.", + "subscriptionRequired": true, + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "echo2", + "protocols": [ + "http", + "https" + ], + "isCurrent": true, + "sourceApiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/58a4aeac497000007d040001" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echoapi2", + "type": "Microsoft.ApiManagement/service/apis", + "name": "echoapi2", + "properties": { + "displayName": "Echo API2", + "apiRevision": "1", + "description": "Copy of Existing Echo Api including Operations.", + "subscriptionRequired": true, + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "echo2", + "protocols": [ + "http", + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2019-12-01-preview&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echoapi2", + "type": "Microsoft.ApiManagement/service/apis", + "name": "echoapi2", + "properties": { + "displayName": "Echo API2", + "apiRevision": "1", + "description": "Copy of Existing Echo Api including Operations.", + "subscriptionRequired": true, + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "echo2", + "protocols": [ + "http", + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiDiagnostic.json new file mode 100644 index 000000000000..cc4557e6b563 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiDiagnostic.json @@ -0,0 +1,160 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "diagnosticId": "applicationinsights", + "apiId": "57d1f7558aa04f15146d9d8a", + "parameters": { + "properties": { + "alwaysLog": "allErrors", + "loggerId": "/loggers/applicationinsights", + "sampling": { + "samplingType": "fixed", + "percentage": 50 + }, + "frontend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + }, + "backend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/diagnostics/applicationinsights", + "type": "Microsoft.ApiManagement/service/apis/diagnostics", + "name": "applicationinsights", + "properties": { + "alwaysLog": "allErrors", + "loggerId": "/loggers/applicationinsights", + "sampling": { + "samplingType": "fixed", + "percentage": 50 + }, + "frontend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + }, + "backend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/diagnostics/applicationinsights", + "type": "Microsoft.ApiManagement/service/apis/diagnostics", + "name": "applicationinsights", + "properties": { + "alwaysLog": "allErrors", + "loggerId": "/loggers/applicationinsights", + "sampling": { + "samplingType": "fixed", + "percentage": 50 + }, + "frontend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + }, + "backend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiIssue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiIssue.json new file mode 100644 index 000000000000..acfab14de146 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiIssue.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "apiId": "57d1f7558aa04f15146d9d8a", + "parameters": { + "properties": { + "title": "New API issue", + "description": "New API issue description", + "createdDate": "2018-02-01T22:21:20.467Z", + "state": "open", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc", + "type": "Microsoft.ApiManagement/service/apis/issues", + "name": "57d2ef278aa04f0ad01d6cdc", + "properties": { + "title": "New API issue", + "description": "New API issue description", + "createdDate": "2018-02-01T22:21:20.467Z", + "state": "open", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc", + "type": "Microsoft.ApiManagement/service/apis/issues", + "name": "57d2ef278aa04f0ad01d6cdc", + "properties": { + "title": "New API issue", + "description": "New API issue description", + "createdDate": "2018-02-01T22:21:20.467Z", + "state": "open", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiIssueAttachment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiIssueAttachment.json new file mode 100644 index 000000000000..f5ce31e15844 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiIssueAttachment.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "apiId": "57d1f7558aa04f15146d9d8a", + "attachmentId": "57d2ef278aa04f0888cba3f3", + "parameters": { + "properties": { + "title": "Issue attachment.", + "contentFormat": "image/jpeg", + "content": "IEJhc2U2NA==" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc/attachments/57d2ef278aa04f0888cba3f3", + "type": "Microsoft.ApiManagement/service/apis/issues/attachments", + "name": "57d2ef278aa04f0888cba3f3", + "properties": { + "title": "Issue attachment.", + "contentFormat": "link", + "content": "https://.../image.jpg" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc/attachments/57d2ef278aa04f0888cba3f3", + "type": "Microsoft.ApiManagement/service/apis/issues/attachments", + "name": "57d2ef278aa04f0888cba3f3", + "properties": { + "title": "Issue attachment.", + "contentFormat": "link", + "content": "https://.../image.jpg" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiIssueComment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiIssueComment.json new file mode 100644 index 000000000000..4916dc805c02 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiIssueComment.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "apiId": "57d1f7558aa04f15146d9d8a", + "commentId": "599e29ab193c3c0bd0b3e2fb", + "parameters": { + "properties": { + "text": "Issue comment.", + "createdDate": "2018-02-01T22:21:20.467Z", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc/comments/599e29ab193c3c0bd0b3e2fb", + "type": "Microsoft.ApiManagement/service/apis/issues/comments", + "name": "599e29ab193c3c0bd0b3e2fb", + "properties": { + "text": "Issue comment.", + "createdDate": "2018-02-01T22:21:20.467Z", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc/comments/599e29ab193c3c0bd0b3e2fb", + "type": "Microsoft.ApiManagement/service/apis/issues/comments", + "name": "599e29ab193c3c0bd0b3e2fb", + "properties": { + "text": "Issue comment.", + "createdDate": "2018-02-01T22:21:20.467Z", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiNewVersionUsingExistingApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiNewVersionUsingExistingApi.json new file mode 100644 index 000000000000..4f10d35bfa90 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiNewVersionUsingExistingApi.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "echoapiv3", + "parameters": { + "properties": { + "displayName": "Echo API2", + "description": "Create Echo API into a new Version using Existing Version Set and Copy all Operations.", + "subscriptionRequired": true, + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "echo2", + "protocols": [ + "http", + "https" + ], + "isCurrent": true, + "apiVersion": "v4", + "sourceApiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echoPath", + "apiVersionSetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/aa9c59e6-c0cd-4258-9356-9ca7d2f0b458" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echoapiv3", + "type": "Microsoft.ApiManagement/service/apis", + "name": "echoapiv3", + "properties": { + "displayName": "Echo API2", + "apiRevision": "1", + "description": "Create Echo API into a new Version using Existing Version Set and Copy all Operations.", + "subscriptionRequired": true, + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "echo2", + "protocols": [ + "http", + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true, + "apiVersion": "v4", + "apiVersionSetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/aa9c59e6-c0cd-4258-9356-9ca7d2f0b458", + "apiVersionSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/aa9c59e6-c0cd-4258-9356-9ca7d2f0b458", + "name": "Echo API2", + "versioningScheme": "Segment" + } + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2019-12-01-preview&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echoapiv3", + "type": "Microsoft.ApiManagement/service/apis", + "name": "echoapiv3", + "properties": { + "displayName": "Echo API2", + "apiRevision": "1", + "description": "Create Echo API into a new Version using Existing Version Set and Copy all Operations.", + "subscriptionRequired": true, + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "echo2", + "protocols": [ + "http", + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true, + "apiVersion": "v4", + "apiVersionSetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/aa9c59e6-c0cd-4258-9356-9ca7d2f0b458", + "apiVersionSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/aa9c59e6-c0cd-4258-9356-9ca7d2f0b458", + "name": "Echo API2", + "versioningScheme": "Segment" + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiOperation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiOperation.json new file mode 100644 index 000000000000..fb51a6ce53b6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiOperation.json @@ -0,0 +1,130 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "PetStoreTemplate2", + "operationId": "newoperations", + "parameters": { + "properties": { + "displayName": "createUser2", + "method": "POST", + "urlTemplate": "/user1", + "templateParameters": [], + "description": "This can only be done by the logged in user.", + "request": { + "description": "Created user object", + "queryParameters": [], + "headers": [], + "representations": [ + { + "contentType": "application/json", + "schemaId": "592f6c1d0af5840ca8897f0c", + "typeName": "User" + } + ] + }, + "responses": [ + { + "statusCode": 200, + "description": "successful operation", + "representations": [ + { + "contentType": "application/xml" + }, + { + "contentType": "application/json" + } + ], + "headers": [] + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/PetStoreTemplate2/operations/newoperations", + "type": "Microsoft.ApiManagement/service/apis/operations", + "name": "newoperations", + "properties": { + "displayName": "createUser2", + "method": "POST", + "urlTemplate": "/user1", + "templateParameters": [], + "description": "This can only be done by the logged in user.", + "request": { + "description": "Created user object", + "queryParameters": [], + "headers": [], + "representations": [ + { + "contentType": "application/json", + "schemaId": "592f6c1d0af5840ca8897f0c", + "typeName": "User" + } + ] + }, + "responses": [ + { + "statusCode": 200, + "description": "successful operation", + "representations": [ + { + "contentType": "application/xml" + }, + { + "contentType": "application/json" + } + ], + "headers": [] + } + ] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/PetStoreTemplate2/operations/newoperations", + "type": "Microsoft.ApiManagement/service/apis/operations", + "name": "newoperations", + "properties": { + "displayName": "createUser2", + "method": "POST", + "urlTemplate": "/user1", + "templateParameters": [], + "description": "This can only be done by the logged in user.", + "request": { + "description": "Created user object", + "queryParameters": [], + "headers": [], + "representations": [ + { + "contentType": "application/json", + "schemaId": "592f6c1d0af5840ca8897f0c", + "typeName": "User" + } + ] + }, + "responses": [ + { + "statusCode": 200, + "description": "successful operation", + "representations": [ + { + "contentType": "application/xml" + }, + { + "contentType": "application/json" + } + ], + "headers": [] + } + ] + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiOperationPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiOperationPolicy.json new file mode 100644 index 000000000000..bf28325dfa5d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiOperationPolicy.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "5600b57e7e8880006a040001", + "operationId": "5600b57e7e8880006a080001", + "policyId": "policy", + "If-Match": "*", + "parameters": { + "properties": { + "format": "xml", + "value": " " + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5600b57e7e8880006a040001/operations/5600b57e7e8880006a080001/policies/policy", + "type": "Microsoft.ApiManagement/service/apis/operations/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5600b57e7e8880006a040001/operations/5600b57e7e8880006a080001/policies/policy", + "type": "Microsoft.ApiManagement/service/apis/operations/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiOperationTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiOperationTag.json new file mode 100644 index 000000000000..461f65b700d9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiOperationTag.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "5931a75ae4bbd512a88c680b", + "operationId": "5931a75ae4bbd512a88c680a", + "tagId": "tagId1" + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/tagId1", + "type": "Microsoft.ApiManagement/service/tags", + "name": "tagId1", + "properties": { + "displayName": "tag1" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/tagId1", + "type": "Microsoft.ApiManagement/service/tags", + "name": "tagId1", + "properties": { + "displayName": "tag1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiPolicy.json new file mode 100644 index 000000000000..eadf07fb348e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiPolicy.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "5600b57e7e8880006a040001", + "policyId": "policy", + "If-Match": "*", + "parameters": { + "properties": { + "format": "xml", + "value": " " + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5600b57e7e8880006a040001/policies/policy", + "type": "Microsoft.ApiManagement/service/apis/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5600b57e7e8880006a040001/policies/policy", + "type": "Microsoft.ApiManagement/service/apis/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiPolicyNonXmlEncoded.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiPolicyNonXmlEncoded.json new file mode 100644 index 000000000000..e3d6e8b71dd0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiPolicyNonXmlEncoded.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "5600b57e7e8880006a040001", + "policyId": "policy", + "If-Match": "*", + "parameters": { + "properties": { + "value": "\r\n \r\n \r\n \r\n \"@(context.Request.Headers.FirstOrDefault(h => h.Ke==\"Via\"))\" \r\n \r\n \r\n ", + "format": "rawxml" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/4c1a3bc6-89f9-46fe-a175-5d8984b25095/resourcegroups/Api-DF-West-US/providers/Microsoft.ApiManagement/service/samirmsiservice2/apis/echo-api/operations/create-resource/policies/policy", + "type": "Microsoft.ApiManagement/service/apis/operations/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \"@(context.Request.Headers.FirstOrDefault(h => h.Ke==\"Via\"))\" \r\n \r\n \r\n" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/4c1a3bc6-89f9-46fe-a175-5d8984b25095/resourcegroups/Api-DF-West-US/providers/Microsoft.ApiManagement/service/samirmsiservice2/apis/echo-api/operations/create-resource/policies/policy", + "type": "Microsoft.ApiManagement/service/apis/operations/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \"@(context.Request.Headers.FirstOrDefault(h => h.Ke==\"Via\"))\" \r\n \r\n \r\n" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiRelease.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiRelease.json new file mode 100644 index 000000000000..225a02a7f285 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiRelease.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "a1", + "releaseId": "testrev", + "parameters": { + "properties": { + "apiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1", + "notes": "yahooagain" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1/releases/testrev", + "type": "Microsoft.ApiManagement/service/apis/releases", + "name": "testrev", + "properties": { + "apiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1", + "createdDateTime": "2018-02-08T20:52:00.65Z", + "updatedDateTime": "2018-02-08T20:52:00.65Z", + "notes": "yahooagain" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1/releases/testrev", + "type": "Microsoft.ApiManagement/service/apis/releases", + "name": "testrev", + "properties": { + "apiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1", + "createdDateTime": "2018-02-08T20:52:00.65Z", + "updatedDateTime": "2018-02-08T20:52:00.65Z", + "notes": "yahooagain" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiRevisionFromExistingApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiRevisionFromExistingApi.json new file mode 100644 index 000000000000..e206b6c5f73c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiRevisionFromExistingApi.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "echo-api;rev=3", + "parameters": { + "properties": { + "path": "echo", + "serviceUrl": "http://echoapi.cloudapp.net/apiv3", + "sourceApiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api", + "apiRevisionDescription": "Creating a Revision of an existing API" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api;rev=3", + "type": "Microsoft.ApiManagement/service/apis", + "name": "echo-api;rev=3", + "properties": { + "displayName": "Echo API", + "apiRevision": "3", + "subscriptionRequired": true, + "serviceUrl": "http://echoapi.cloudapp.net/apiv3", + "path": "echo", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "apiRevisionDescription": "Creating a Revision of an existing API" + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2019-12-01-preview&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api;rev=3", + "type": "Microsoft.ApiManagement/service/apis", + "name": "echo-api;rev=3", + "properties": { + "displayName": "Echo API", + "apiRevision": "3", + "subscriptionRequired": true, + "serviceUrl": "http://echoapi.cloudapp.net/apiv3", + "path": "echo", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "apiRevisionDescription": "Creating a Revision of an existing API" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiSchema.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiSchema.json new file mode 100644 index 000000000000..2a1a82daec83 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiSchema.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "59d6bb8f1f7fab13dc67ec9b", + "schemaId": "ec12520d-9d48-4e7b-8f39-698ca2ac63f1", + "parameters": { + "properties": { + "contentType": "application/vnd.ms-azure-apim.xsd+xml", + "document": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/59d6bb8f1f7fab13dc67ec9b/schemas/ec12520d-9d48-4e7b-8f39-698ca2ac63f1?api-version=2019-12-01-preview&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/59d6bb8f1f7fab13dc67ec9b/schemas/ec12520d-9d48-4e7b-8f39-698ca2ac63f1", + "type": "Microsoft.ApiManagement/service/apis/schemas", + "name": "ec12520d-9d48-4e7b-8f39-698ca2ac63f1", + "properties": { + "contentType": "application/vnd.ms-azure-apim.xsd+xml", + "document": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/59d6bb8f1f7fab13dc67ec9b/schemas/ec12520d-9d48-4e7b-8f39-698ca2ac63f1", + "type": "Microsoft.ApiManagement/service/apis/schemas", + "name": "ec12520d-9d48-4e7b-8f39-698ca2ac63f1", + "properties": { + "contentType": "application/vnd.ms-azure-apim.xsd+xml", + "document": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiTag.json new file mode 100644 index 000000000000..f9d73ab20656 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiTag.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "5931a75ae4bbd512a88c680b", + "tagId": "tagId1" + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/tagId1", + "type": "Microsoft.ApiManagement/service/tags", + "name": "tagId1", + "properties": { + "displayName": "tag1" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/tagId1", + "type": "Microsoft.ApiManagement/service/tags", + "name": "tagId1", + "properties": { + "displayName": "tag1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiTagDescription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiTagDescription.json new file mode 100644 index 000000000000..c762aada1b9d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiTagDescription.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "5931a75ae4bbd512a88c680b", + "tagDescriptionId": "tagId1", + "parameters": { + "properties": { + "description": "Some description that will be displayed for operation's tag if the tag is assigned to operation of the API", + "externalDocsUrl": "http://some.url/additionaldoc", + "externalDocsDescription": "Description of the external docs resource" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5931a75ae4bbd512a88c680b/tagDescriptions/tagId1", + "type": "Microsoft.ApiManagement/service/apis/tagDescriptions", + "name": "tagId1", + "properties": { + "tagId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/tagId1", + "displayName": "tag1", + "description": "Some description that will be displayed for operation's tag if the tag is assigned to operation of the API", + "externalDocsDescription": "some additional info", + "externalDocsUrl": "http://some_url.com" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5931a75ae4bbd512a88c680b/tagDescriptions/tagId1", + "type": "Microsoft.ApiManagement/service/apis/tagDescriptions", + "name": "tagId1", + "properties": { + "tagId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/tagId1", + "displayName": "tag1", + "description": "Some description that will be displayed for operation's tag if the tag is assigned to operation of the API", + "externalDocsDescription": "some additional info", + "externalDocsUrl": "http://some_url.com" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiUsingImportOverrideServiceUrl.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiUsingImportOverrideServiceUrl.json new file mode 100644 index 000000000000..1fc35e02f106 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiUsingImportOverrideServiceUrl.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "apidocs", + "parameters": { + "properties": { + "format": "swagger-link", + "value": "http://apimpimportviaurl.azurewebsites.net/api/apidocs/", + "path": "petstoreapi123", + "serviceUrl": "http://petstore.swagger.wordnik.com/api" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/apidocs", + "type": "Microsoft.ApiManagement/service/apis", + "name": "apidocs", + "properties": { + "displayName": "Swagger Sample App", + "apiRevision": "1", + "description": "This is a sample server Petstore server. You can find out more about Swagger \n at http://swagger.wordnik.com or on irc.freenode.net, #swagger. For this sample,\n you can use the api key \"special-key\" to test the authorization filters", + "serviceUrl": "http://petstore.swagger.wordnik.com/api", + "path": "petstoreapi123", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/apidocs?api-version=2019-12-01-preview&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/apidocs", + "type": "Microsoft.ApiManagement/service/apis", + "name": "apidocs", + "properties": { + "displayName": "Swagger Sample App", + "apiRevision": "1", + "description": "This is a sample server Petstore server. You can find out more about Swagger \n at http://swagger.wordnik.com or on irc.freenode.net, #swagger. For this sample,\n you can use the api key \"special-key\" to test the authorization filters", + "serviceUrl": "http://petstore.swagger.wordnik.com/api", + "path": "petstoreapi123", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiUsingOai3Import.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiUsingOai3Import.json new file mode 100644 index 000000000000..35a560f52055 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiUsingOai3Import.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "petstore", + "parameters": { + "properties": { + "format": "openapi-link", + "value": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml", + "path": "petstore" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/petstoreapi", + "type": "Microsoft.ApiManagement/service/apis", + "name": "petstoreapi", + "properties": { + "displayName": "Swagger Petstore", + "apiRevision": "1", + "serviceUrl": "http://petstore.swagger.io/v1", + "path": "petstore", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2019-12-01-preview&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/petstoreapi", + "type": "Microsoft.ApiManagement/service/apis", + "name": "petstoreapi", + "properties": { + "displayName": "Swagger Petstore", + "apiRevision": "1", + "serviceUrl": "http://petstore.swagger.io/v1", + "path": "petstore", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiUsingSwaggerImport.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiUsingSwaggerImport.json new file mode 100644 index 000000000000..3a228e329e0f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiUsingSwaggerImport.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "petstore", + "parameters": { + "properties": { + "format": "swagger-link-json", + "value": "http://petstore.swagger.io/v2/swagger.json", + "path": "petstore" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/petstoreapi", + "type": "Microsoft.ApiManagement/service/apis", + "name": "petstoreapi", + "properties": { + "displayName": "Swagger Petstore", + "apiRevision": "1", + "description": "This is a sample server Petstore server. You can find out more about Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net, #swagger](http://swagger.io/irc/). For this sample, you can use the api key `special-key` to test the authorization filters.", + "serviceUrl": "http://petstore.swagger.io/v2", + "path": "petstore", + "protocols": [ + "http" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2019-12-01-preview&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/petstoreapi", + "type": "Microsoft.ApiManagement/service/apis", + "name": "petstoreapi", + "properties": { + "displayName": "Swagger Petstore", + "apiRevision": "1", + "description": "This is a sample server Petstore server. You can find out more about Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net, #swagger](http://swagger.io/irc/). For this sample, you can use the api key `special-key` to test the authorization filters.", + "serviceUrl": "http://petstore.swagger.io/v2", + "path": "petstore", + "protocols": [ + "http" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiUsingWadlImport.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiUsingWadlImport.json new file mode 100644 index 000000000000..0cfd8911a78d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiUsingWadlImport.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "petstore", + "parameters": { + "properties": { + "format": "wadl-link-json", + "value": "https://developer.cisco.com/media/wae-release-6-2-api-reference/wae-collector-rest-api/application.wadl", + "path": "collector" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/collectorwadl", + "type": "Microsoft.ApiManagement/service/apis", + "name": "collectorwadl", + "properties": { + "displayName": "http://localhost:8080/collector-northbound", + "apiRevision": "1", + "description": "", + "serviceUrl": "http://localhost:8080/collector-northbound", + "path": "collector", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2019-12-01-preview&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/collectorwadl", + "type": "Microsoft.ApiManagement/service/apis", + "name": "collectorwadl", + "properties": { + "displayName": "http://localhost:8080/collector-northbound", + "apiRevision": "1", + "description": "", + "serviceUrl": "http://localhost:8080/collector-northbound", + "path": "collector", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiVersionSet.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiVersionSet.json new file mode 100644 index 000000000000..266a39aabeee --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiVersionSet.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "versionSetId": "api1", + "parameters": { + "properties": { + "displayName": "api set 1", + "versioningScheme": "Segment", + "description": "Version configuration" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/api1", + "type": "Microsoft.ApiManagement/service/api-version-sets", + "name": "api1", + "properties": { + "displayName": "api set 1", + "versioningScheme": "Segment", + "description": "Version configuration" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/api1", + "type": "Microsoft.ApiManagement/service/api-version-sets", + "name": "api1", + "properties": { + "displayName": "api set 1", + "versioningScheme": "Segment", + "description": "Version configuration" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiWithOpenIdConnect.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiWithOpenIdConnect.json new file mode 100644 index 000000000000..5116d3c6ef6a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateApiWithOpenIdConnect.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "tempgroup", + "parameters": { + "properties": { + "displayName": "Swagger Petstore", + "description": "This is a sample server Petstore server. You can find out more about Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net, #swagger](http://swagger.io/irc/). For this sample, you can use the api key `special-key` to test the authorization filters.", + "serviceUrl": "http://petstore.swagger.io/v2", + "path": "petstore", + "protocols": [ + "https" + ], + "authenticationSettings": { + "openid": { + "openidProviderId": "testopenid", + "bearerTokenSendingMethods": [ + "authorizationHeader" + ] + } + }, + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/58da4c4ccdae970a08121230", + "type": "Microsoft.ApiManagement/service/apis", + "name": "58da4c4ccdae970a08121230", + "properties": { + "displayName": "Swagger Petstore", + "apiRevision": "1", + "description": "This is a sample server Petstore server. You can find out more about Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net, #swagger](http://swagger.io/irc/). For this sample, you can use the api key `special-key` to test the authorization filters.", + "serviceUrl": "http://petstore.swagger.io/v2", + "path": "petstore", + "protocols": [ + "https" + ], + "authenticationSettings": { + "openid": { + "openidProviderId": "testopenid", + "bearerTokenSendingMethods": [ + "authorizationHeader" + ] + } + }, + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2019-12-01-preview&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/58da4c4ccdae970a08121230", + "type": "Microsoft.ApiManagement/service/apis", + "name": "58da4c4ccdae970a08121230", + "properties": { + "displayName": "Swagger Petstore", + "apiRevision": "1", + "description": "This is a sample server Petstore server. You can find out more about Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net, #swagger](http://swagger.io/irc/). For this sample, you can use the api key `special-key` to test the authorization filters.", + "serviceUrl": "http://petstore.swagger.io/v2", + "path": "petstore", + "protocols": [ + "https" + ], + "authenticationSettings": { + "openid": { + "openidProviderId": "testopenid", + "bearerTokenSendingMethods": [ + "authorizationHeader" + ] + } + }, + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateAuthorizationServer.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateAuthorizationServer.json new file mode 100644 index 000000000000..1b77b3fbc21a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateAuthorizationServer.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "authsid": "newauthServer", + "parameters": { + "properties": { + "displayName": "test2", + "description": "test server", + "clientRegistrationEndpoint": "https://www.contoso.com/apps", + "authorizationEndpoint": "https://www.contoso.com/oauth2/auth", + "authorizationMethods": [ + "GET" + ], + "tokenEndpoint": "https://www.contoso.com/oauth2/token", + "supportState": true, + "defaultScope": "read write", + "grantTypes": [ + "authorizationCode", + "implicit" + ], + "bearerTokenSendingMethods": [ + "authorizationHeader" + ], + "clientId": "1", + "clientSecret": "2", + "resourceOwnerUsername": "un", + "resourceOwnerPassword": "pwd" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/authorizationServers/newauthServer", + "type": "Microsoft.ApiManagement/service/authorizationServers", + "name": "newauthServer", + "properties": { + "displayName": "test2", + "description": "test server", + "clientRegistrationEndpoint": "https://www.contoso.com/apps", + "authorizationEndpoint": "https://www.contoso.com/oauth2/auth", + "authorizationMethods": [ + "GET" + ], + "tokenEndpoint": "https://www.contoso.com/oauth2/token", + "supportState": true, + "defaultScope": "read write", + "grantTypes": [ + "authorizationCode", + "implicit" + ], + "bearerTokenSendingMethods": [ + "authorizationHeader" + ], + "clientId": "1", + "resourceOwnerUsername": "un", + "resourceOwnerPassword": "pwd" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/authorizationServers/newauthServer", + "type": "Microsoft.ApiManagement/service/authorizationServers", + "name": "newauthServer", + "properties": { + "displayName": "test2", + "description": "test server", + "clientRegistrationEndpoint": "https://www.contoso.com/apps", + "authorizationEndpoint": "https://www.contoso.com/oauth2/auth", + "authorizationMethods": [ + "GET" + ], + "tokenEndpoint": "https://www.contoso.com/oauth2/token", + "supportState": true, + "defaultScope": "read write", + "grantTypes": [ + "authorizationCode", + "implicit" + ], + "bearerTokenSendingMethods": [ + "authorizationHeader" + ], + "clientId": "1", + "resourceOwnerUsername": "un", + "resourceOwnerPassword": "pwd" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateBackendProxyBackend.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateBackendProxyBackend.json new file mode 100644 index 000000000000..ab590416f16f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateBackendProxyBackend.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "backendId": "proxybackend", + "parameters": { + "properties": { + "description": "description5308", + "url": "https://backendname2644/", + "protocol": "http", + "tls": { + "validateCertificateChain": true, + "validateCertificateName": true + }, + "proxy": { + "url": "http://192.168.1.1:8080", + "username": "Contoso\\admin", + "password": "opensesame" + }, + "credentials": { + "query": { + "sv": [ + "xx", + "bb", + "cc" + ] + }, + "header": { + "x-my-1": [ + "val1", + "val2" + ] + }, + "authorization": { + "scheme": "Basic", + "parameter": "opensesma" + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/backends/proxybackend", + "type": "Microsoft.ApiManagement/service/backends", + "name": "proxybackend", + "properties": { + "description": "description5308", + "url": "https://backendname2644/", + "protocol": "http", + "credentials": { + "query": { + "sv": [ + "xx", + "bb", + "cc" + ] + }, + "header": { + "x-my-1": [ + "val1", + "val2" + ] + }, + "authorization": { + "scheme": "Basic", + "parameter": "opensesma" + } + }, + "proxy": { + "url": "http://192.168.1.1:8080", + "username": "Contoso\\admin", + "password": "opensesame" + }, + "tls": { + "validateCertificateChain": false, + "validateCertificateName": false + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/backends/proxybackend", + "type": "Microsoft.ApiManagement/service/backends", + "name": "proxybackend", + "properties": { + "description": "description5308", + "url": "https://backendname2644/", + "protocol": "http", + "credentials": { + "query": { + "sv": [ + "xx", + "bb", + "cc" + ] + }, + "header": { + "x-my-1": [ + "val1", + "val2" + ] + }, + "authorization": { + "scheme": "Basic", + "parameter": "opensesma" + } + }, + "proxy": { + "url": "http://192.168.1.1:8080", + "username": "Contoso\\admin", + "password": "opensesame" + }, + "tls": { + "validateCertificateChain": false, + "validateCertificateName": false + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateBackendServiceFabric.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateBackendServiceFabric.json new file mode 100644 index 000000000000..bea1ad78adc1 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateBackendServiceFabric.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "backendId": "sfbackend", + "parameters": { + "properties": { + "description": "Service Fabric Test App 1", + "protocol": "http", + "url": "fabric:/mytestapp/mytestservice", + "properties": { + "serviceFabricCluster": { + "managementEndpoints": [ + "https://somecluster.com" + ], + "clientCertificatethumbprint": "EBA029198AA3E76EF0D70482626E5BCF148594A6", + "serverX509Names": [ + { + "name": "ServerCommonName1", + "issuerCertificateThumbprint": "IssuerCertificateThumbprint1" + } + ], + "maxPartitionResolutionRetries": 5 + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/backends/sfbackend", + "type": "Microsoft.ApiManagement/service/backends", + "name": "sfbackend", + "properties": { + "description": "Service Fabric Test App 1", + "url": "fabric:/mytestapp/mytestservice", + "protocol": "http", + "properties": { + "serviceFabricCluster": { + "managementEndpoints": [ + "https://somecluster.com" + ], + "clientCertificatethumbprint": "EBA029198AA3E76EF0D70482626E5BCF148594A6", + "serverX509Names": [ + { + "name": "ServerCommonName1", + "issuerCertificateThumbprint": "IssuerCertificateThumbprint1" + } + ], + "maxPartitionResolutionRetries": 5 + } + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/backends/sfbackend", + "type": "Microsoft.ApiManagement/service/backends", + "name": "sfbackend", + "properties": { + "description": "Service Fabric Test App 1", + "url": "fabric:/mytestapp/mytestservice", + "protocol": "http", + "properties": { + "serviceFabricCluster": { + "managementEndpoints": [ + "https://somecluster.com" + ], + "clientCertificatethumbprint": "EBA029198AA3E76EF0D70482626E5BCF148594A6", + "serverX509Names": [ + { + "name": "ServerCommonName1", + "issuerCertificateThumbprint": "IssuerCertificateThumbprint1" + } + ], + "maxPartitionResolutionRetries": 5 + } + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateBackup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateBackup.json new file mode 100644 index 000000000000..f24dcfc0719c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateBackup.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "parameters": { + "storageAccount": "teststorageaccount", + "accessKey": "**************************************************", + "containerName": "backupContainer", + "backupName": "apimService1backup_2017_03_19" + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2019-12-01-preview" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "UID": "52ed5986-717b-45b4-b17c-3df8db372cff" + }, + "location": "East Asia", + "etag": "AAAAAAAXX6Y=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "Contoso", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2015-09-22T01:50:34.7921566Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [], + "publicIPAddresses": [ + "207.46.155.24" + ], + "virtualNetworkType": "None" + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateCache.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateCache.json new file mode 100644 index 000000000000..764f0c5d8da7 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateCache.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "cacheId": "westindia", + "parameters": { + "properties": { + "connectionString": "contoso5.redis.cache.windows.net,ssl=true,password=...", + "description": "Redis cache instances in West India", + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/contoso5" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/caches/westindia", + "type": "Microsoft.ApiManagement/service/caches", + "name": "westindia", + "properties": { + "connectionString": "{{5c68d535a40f7e61103cd285}}}", + "description": "Redis cache instances in West India", + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/contoso5" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/caches/westindia", + "type": "Microsoft.ApiManagement/service/caches", + "name": "westindia", + "properties": { + "connectionString": "{{5c68d535a40f7e61103cd285}}}", + "description": "Redis cache instances in West India", + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/contoso5" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateCertificate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateCertificate.json new file mode 100644 index 000000000000..f820f9895a29 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateCertificate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "certificateId": "tempcert", + "parameters": { + "properties": { + "data": "****************Base 64 Encoded Certificate *******************************", + "password": "****Certificate Password******" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/tempcert", + "type": "Microsoft.ApiManagement/service/certificates", + "name": "tempcert", + "properties": { + "subject": "CN=contoso.com", + "thumbprint": "*******************3", + "expirationDate": "2018-03-17T21:55:07+00:00" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/tempcert", + "type": "Microsoft.ApiManagement/service/certificates", + "name": "tempcert", + "properties": { + "subject": "CN=contoso.com", + "thumbprint": "*******************3", + "expirationDate": "2018-03-17T21:55:07+00:00" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateDiagnostic.json new file mode 100644 index 000000000000..02ff2a5fcde9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateDiagnostic.json @@ -0,0 +1,159 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "diagnosticId": "applicationinsights", + "parameters": { + "properties": { + "alwaysLog": "allErrors", + "loggerId": "/loggers/azuremonitor", + "sampling": { + "samplingType": "fixed", + "percentage": 50 + }, + "frontend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + }, + "backend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/diagnostics/applicationinsights", + "type": "Microsoft.ApiManagement/service/diagnostics", + "name": "applicationinsights", + "properties": { + "alwaysLog": "allErrors", + "loggerId": "/loggers/azuremonitor", + "sampling": { + "samplingType": "fixed", + "percentage": 50 + }, + "frontend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + }, + "backend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/diagnostics/applicationinsights", + "type": "Microsoft.ApiManagement/service/diagnostics", + "name": "applicationinsights", + "properties": { + "alwaysLog": "allErrors", + "loggerId": "/loggers/applicationinsights", + "sampling": { + "samplingType": "fixed", + "percentage": 50 + }, + "frontend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + }, + "backend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateEHLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateEHLogger.json new file mode 100644 index 000000000000..e32cd83071a6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateEHLogger.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "loggerId": "loggerId", + "parameters": { + "properties": { + "loggerType": "azureEventHub", + "description": "adding a new logger", + "credentials": { + "name": "hydraeventhub", + "connectionString": "Endpoint=sb://hydraeventhub-ns.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=********=" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/loggerId", + "type": "Microsoft.ApiManagement/service/loggers", + "name": "loggerId", + "properties": { + "loggerType": "azureEventHub", + "description": "adding a new logger", + "credentials": { + "name": "hydraeventhub", + "connectionString": "{{59544ef2e4bbd50d9468c617}}" + }, + "isBuffered": true, + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.EventHub/namespaces/hydraeventhub-ns" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/loggerId", + "type": "Microsoft.ApiManagement/service/loggers", + "name": "loggerId", + "properties": { + "loggerType": "azureEventHub", + "description": "adding a new logger", + "credentials": { + "name": "hydraeventhub", + "connectionString": "{{59544ef2e4bbd50d9468c617}}" + }, + "isBuffered": true, + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.EventHub/namespaces/hydraeventhub-ns" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateEmailTemplate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateEmailTemplate.json new file mode 100644 index 000000000000..d77883de0095 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateEmailTemplate.json @@ -0,0 +1,96 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "templateName": "newIssueNotificationMessage", + "parameters": { + "properties": { + "subject": "Your request for $IssueName was successfully received." + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/templates/NewIssueNotificationMessage", + "type": "Microsoft.ApiManagement/service/templates", + "name": "NewIssueNotificationMessage", + "properties": { + "subject": "Your request for $IssueName was successfully received.", + "body": "\r\n\r\n \r\n \r\n

Dear $DevFirstName $DevLastName,

\r\n

Thank you for contacting us. Our API team will review your issue and get back to you soon.

\r\n

\r\n Click this link to view or edit your request.\r\n

\r\n

Best,

\r\n

The $OrganizationName API Team

\r\n \r\n", + "title": "New issue received", + "description": "This email is sent to developers after they create a new topic on the Issues page of the developer portal.", + "isDefault": false, + "parameters": [ + { + "name": "DevFirstName", + "title": "Developer first name" + }, + { + "name": "DevLastName", + "title": "Developer last name" + }, + { + "name": "IssueId", + "title": "Issue id" + }, + { + "name": "IssueName", + "title": "Issue name" + }, + { + "name": "OrganizationName", + "title": "Organization name" + }, + { + "name": "DevPortalUrl", + "title": "Developer portal URL" + } + ] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/templates/NewIssueNotificationMessage", + "type": "Microsoft.ApiManagement/service/templates", + "name": "NewIssueNotificationMessage", + "properties": { + "subject": "Your request for $IssueName was successfully received.", + "body": "\r\n\r\n \r\n \r\n

Dear $DevFirstName $DevLastName,

\r\n

Thank you for contacting us. Our API team will review your issue and get back to you soon.

\r\n

\r\n Click this link to view or edit your request.\r\n

\r\n

Best,

\r\n

The $OrganizationName API Team

\r\n \r\n", + "title": "New issue received", + "description": "This email is sent to developers after they create a new topic on the Issues page of the developer portal.", + "isDefault": false, + "parameters": [ + { + "name": "DevFirstName", + "title": "Developer first name" + }, + { + "name": "DevLastName", + "title": "Developer last name" + }, + { + "name": "IssueId", + "title": "Issue id" + }, + { + "name": "IssueName", + "title": "Issue name" + }, + { + "name": "OrganizationName", + "title": "Organization name" + }, + { + "name": "DevPortalUrl", + "title": "Developer portal URL" + } + ] + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateGateway.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateGateway.json new file mode 100644 index 000000000000..50de5fc7db64 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateGateway.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "gw1", + "parameters": { + "properties": { + "description": "my gateway 1", + "locationData": { + "name": "my location" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1", + "type": "Microsoft.ApiManagement/service/gateways", + "name": "a1", + "properties": { + "description": "my gateway 1", + "locationData": { + "name": "my location" + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1", + "type": "Microsoft.ApiManagement/service/gateways", + "name": "a1", + "properties": { + "description": "my gateway 1", + "locationData": { + "name": "my location" + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateGatewayApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateGatewayApi.json new file mode 100644 index 000000000000..34206d796703 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateGatewayApi.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "gw1", + "apiId": "echo-api", + "parameters": { + "properties": { + "provisioningState": "created" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/apis/echo-api", + "type": "Microsoft.ApiManagement/service/gateways/apis", + "name": "echo-api", + "properties": { + "displayName": "EchoApi", + "apiRevision": "1", + "serviceUrl": "https://contoso.com/apis/echo", + "path": "", + "protocols": [ + "http", + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/apis/echo-api", + "type": "Microsoft.ApiManagement/service/gateways/apis", + "name": "echo-api", + "properties": { + "displayName": "EchoApi", + "apiRevision": "1", + "serviceUrl": "https://contoso.com/apis/echo", + "path": "", + "protocols": [ + "http", + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateGatewayHostnameConfiguration.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateGatewayHostnameConfiguration.json new file mode 100644 index 000000000000..8e1fbf4294df --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateGatewayHostnameConfiguration.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "gw1", + "hcId": "default", + "parameters": { + "properties": { + "hostname": "*", + "certificateId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/cert1", + "negotiateClientCertificate": false + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/hostnameConfigurations/default", + "type": "Microsoft.ApiManagement/service/gateways/hostnameConfigurations", + "name": "default", + "properties": { + "hostname": "*", + "certificateId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/cert1", + "negotiateClientCertificate": false + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/hostnameConfigurations/default", + "type": "Microsoft.ApiManagement/service/gateways/hostnameConfigurations", + "name": "default", + "properties": { + "hostname": "*", + "certificateId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/cert1", + "negotiateClientCertificate": false + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateGroup.json new file mode 100644 index 000000000000..89d6059dac30 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateGroup.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "groupId": "tempgroup", + "parameters": { + "properties": { + "displayName": "temp group" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/tempgroup", + "type": "Microsoft.ApiManagement/service/groups", + "name": "tempgroup", + "properties": { + "displayName": "temp group", + "type": "custom" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/tempgroup", + "type": "Microsoft.ApiManagement/service/groups", + "name": "tempgroup", + "properties": { + "displayName": "temp group", + "type": "custom" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateGroupExternal.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateGroupExternal.json new file mode 100644 index 000000000000..949645d8627b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateGroupExternal.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "groupId": "aadGroup", + "parameters": { + "properties": { + "displayName": "NewGroup (samiraad.onmicrosoft.com)", + "description": "new group to test", + "type": "external", + "externalId": "aad://samiraad.onmicrosoft.com/groups/83cf2753-5831-4675-bc0e-2f8dc067c58d" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/aadGroup", + "type": "Microsoft.ApiManagement/service/groups", + "name": "aadGroup", + "properties": { + "displayName": "NewGroup (samiraad.onmicrosoft.com)", + "description": "new group to test", + "type": "external", + "externalId": "aad://samiraad.onmicrosoft.com/groups/83cf2753-5831-4675-bc0e-2f8dc067c58d" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/aadGroup", + "type": "Microsoft.ApiManagement/service/groups", + "name": "aadGroup", + "properties": { + "displayName": "NewGroup (samiraad.onmicrosoft.com)", + "description": "new group to test", + "type": "external", + "externalId": "aad://samiraad.onmicrosoft.com/groups/83cf2753-5831-4675-bc0e-2f8dc067c58d" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateGroupUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateGroupUser.json new file mode 100644 index 000000000000..057d83a84656 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateGroupUser.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "groupId": "tempgroup", + "userId": "59307d350af58404d8a26300" + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/59307d350af58404d8a26300", + "type": "Microsoft.ApiManagement/service/groups/users", + "name": "59307d350af58404d8a26300", + "properties": { + "firstName": "test", + "lastName": "user", + "email": "testuser1@live.com", + "state": "active", + "registrationDate": "2017-06-01T20:46:45.437Z", + "groups": [], + "identities": [] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/59307d350af58404d8a26300", + "type": "Microsoft.ApiManagement/service/groups/users", + "name": "59307d350af58404d8a26300", + "properties": { + "firstName": "test", + "lastName": "user", + "email": "testuser1@live.com", + "state": "active", + "registrationDate": "2017-06-01T20:46:45.437Z", + "groups": [], + "identities": [] + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateIdentityProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateIdentityProvider.json new file mode 100644 index 000000000000..086635f4456d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateIdentityProvider.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "identityProviderName": "facebook", + "parameters": { + "properties": { + "clientId": "facebookid", + "clientSecret": "facebookapplicationsecret" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/identityProviders/Facebook", + "type": "Microsoft.ApiManagement/service/identityProviders", + "name": "Facebook", + "properties": { + "clientId": "facebookid", + "type": "facebook" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/identityProviders/Facebook", + "type": "Microsoft.ApiManagement/service/identityProviders", + "name": "Facebook", + "properties": { + "clientId": "facebookid", + "type": "facebook" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateMultiRegionServiceWithCustomHostname.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateMultiRegionServiceWithCustomHostname.json new file mode 100644 index 000000000000..36ccb5f6a242 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateMultiRegionServiceWithCustomHostname.json @@ -0,0 +1,256 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "parameters": { + "properties": { + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "gateway1.msitesting.net", + "encodedCertificate": "****** Base 64 Encoded Certificate ************", + "certificatePassword": "Password", + "defaultSslBinding": true + }, + { + "type": "Management", + "hostName": "mgmt.msitesting.net", + "encodedCertificate": "****** Base 64 Encoded Certificate ************", + "certificatePassword": "Password" + }, + { + "type": "Portal", + "hostName": "portal1.msitesting.net", + "encodedCertificate": "****** Base 64 Encoded Certificate ************", + "certificatePassword": "Password" + } + ], + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "additionalLocations": [ + { + "location": "East US", + "sku": { + "name": "Premium", + "capacity": 1 + }, + "disableGateway": true + } + ], + "virtualNetworkType": "None", + "apiVersionConstraint": { + "minApiVersion": "2019-01-01" + } + }, + "sku": { + "name": "Premium", + "capacity": 1 + }, + "location": "West US", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + } + } + }, + "responses": { + "201": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/bXVsdGlob3N0bmFtZW11bHRpcmVnaW9uc2VydmljZV9BY3RfZjFiOTZhMjc=?api-version=2019-12-01-preview" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "West US", + "etag": "AAAAAAACXoo=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Created", + "targetProvisioningState": "Activating", + "createdAtUtc": "2019-12-18T08:04:26.9492661Z", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": false + }, + { + "type": "Proxy", + "hostName": "gateway1.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989XXXXXXXXXXXXXXXXF1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": true + }, + { + "type": "Management", + "hostName": "mgmt.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989XXXXXXXXXXXXXXXXF1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": false + }, + { + "type": "Portal", + "hostName": "portal1.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989XXXXXXXXXXXXXXXXF1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": false + } + ], + "additionalLocations": [ + { + "location": "East US", + "sku": { + "name": "Premium", + "capacity": 1 + }, + "disableGateway": true + } + ], + "virtualNetworkType": "None", + "disableGateway": false, + "apiVersionConstraint": { + "minApiVersion": "2019-01-01" + } + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "West US", + "etag": "AAAAAAACXok=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2019-12-18T06:26:20.3348609Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "gatewayRegionalUrl": "https://apimService1-westus-01.regional.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": false + }, + { + "type": "Proxy", + "hostName": "gateway1.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989XXXXXXXXXXXXXXXXF1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": true + }, + { + "type": "Management", + "hostName": "mgmt.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989XXXXXXXXXXXXXXXXF1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": false + }, + { + "type": "Portal", + "hostName": "portal1.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989XXXXXXXXXXXXXXXXF1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": false + } + ], + "publicIPAddresses": [ + "13.91.32.113" + ], + "additionalLocations": [ + { + "location": "East US", + "sku": { + "name": "Premium", + "capacity": 1 + }, + "publicIPAddresses": [ + "23.101.138.153" + ], + "gatewayRegionalUrl": "https://apimService1-eastus-01.regional.azure-api.net", + "disableGateway": true + } + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2": "False" + }, + "virtualNetworkType": "None", + "disableGateway": false, + "apiVersionConstraint": { + "minApiVersion": "2019-01-01" + } + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/bXVsdGlob3N0bmFtZW11bHRpcmVnaW9uc2VydmljZV9BY3RfZjFiOTZhMjc=?api-version=2019-12-01-preview" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateNamedValue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateNamedValue.json new file mode 100644 index 000000000000..9bbb3ce929d1 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateNamedValue.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "namedValueId": "testprop2", + "parameters": { + "properties": { + "displayName": "prop3name", + "value": "propValue", + "tags": [ + "foo", + "bar" + ], + "secret": false + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/namedValues/testprop2?api-version=2019-12-01-preview&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/namedValues/testprop2", + "type": "Microsoft.ApiManagement/service/namedValues", + "name": "testprop2", + "properties": { + "displayName": "prop3name", + "value": "propValue", + "tags": [ + "foo", + "bar" + ], + "secret": false + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/namedValues/testprop2", + "type": "Microsoft.ApiManagement/service/namedValues", + "name": "testprop2", + "properties": { + "displayName": "prop3name", + "value": "propValue", + "tags": [ + "foo", + "bar" + ], + "secret": false + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateNotification.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateNotification.json new file mode 100644 index 000000000000..e107765005ed --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateNotification.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage", + "type": "Microsoft.ApiManagement/service/notifications", + "name": "RequestPublisherNotificationMessage", + "properties": { + "title": "Subscription requests (requiring approval)", + "description": "The following email recipients and users will receive email notifications about subscription requests for API products requiring approval.", + "recipients": { + "emails": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/recipientEmails/contoso@live.com", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/recipientEmails/foobar!live", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/recipientEmails/foobar@live.com" + ], + "users": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/576823d0a40f7e74ec07d642" + ] + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateNotificationRecipientEmail.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateNotificationRecipientEmail.json new file mode 100644 index 000000000000..c4b65e832a72 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateNotificationRecipientEmail.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage", + "email": "foobar@live.com" + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/foobar@live.com", + "type": "Microsoft.ApiManagement/service/notifications/recipientEmails", + "name": "foobar@live.com", + "properties": { + "email": "foobar@live.com" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/foobar@live.com", + "type": "Microsoft.ApiManagement/service/notifications/recipientEmails", + "name": "foobar@live.com", + "properties": { + "email": "foobar@live.com" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateNotificationRecipientUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateNotificationRecipientUser.json new file mode 100644 index 000000000000..660ae0eb62cb --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateNotificationRecipientUser.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage", + "userId": "576823d0a40f7e74ec07d642" + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientUsers/576823d0a40f7e74ec07d642", + "type": "Microsoft.ApiManagement/service/notifications/recipientUsers", + "name": "576823d0a40f7e74ec07d642", + "properties": { + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/576823d0a40f7e74ec07d642" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientUsers/576823d0a40f7e74ec07d642", + "type": "Microsoft.ApiManagement/service/notifications/recipientUsers", + "name": "576823d0a40f7e74ec07d642", + "properties": { + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/576823d0a40f7e74ec07d642" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateOpenIdConnectProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateOpenIdConnectProvider.json new file mode 100644 index 000000000000..a56bd85f12f4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateOpenIdConnectProvider.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "opid": "templateOpenIdConnect3", + "parameters": { + "properties": { + "displayName": "templateoidprovider3", + "metadataEndpoint": "https://oidprovider-template3.net", + "clientId": "oidprovidertemplate3", + "clientSecret": "x" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/openidConnectProviders/templateOpenIdConnect3", + "type": "Microsoft.ApiManagement/service/openidconnectproviders", + "name": "templateOpenIdConnect3", + "properties": { + "displayName": "templateoidprovider3", + "metadataEndpoint": "https://oidprovider-template3.net", + "clientId": "oidprovidertemplate3" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/openidConnectProviders/templateOpenIdConnect3", + "type": "Microsoft.ApiManagement/service/openidconnectproviders", + "name": "templateOpenIdConnect3", + "properties": { + "displayName": "templateoidprovider3", + "metadataEndpoint": "https://oidprovider-template3.net", + "clientId": "oidprovidertemplate3" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreatePolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreatePolicy.json new file mode 100644 index 000000000000..afca6d6bfa91 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreatePolicy.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "policyId": "policy", + "parameters": { + "properties": { + "format": "xml", + "value": "\r\n \r\n \r\n \r\n \r\n \r\n" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/policies/policy", + "type": "Microsoft.ApiManagement/service/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/policies/policy", + "type": "Microsoft.ApiManagement/service/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateProduct.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateProduct.json new file mode 100644 index 000000000000..1d0eda791797 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateProduct.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "productId": "testproduct", + "parameters": { + "properties": { + "displayName": "Test Template ProductName 4" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/testproduct", + "type": "Microsoft.ApiManagement/service/products", + "name": "testproduct", + "properties": { + "displayName": "Test Template ProductName 4", + "subscriptionRequired": true, + "approvalRequired": false, + "state": "notPublished" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/testproduct", + "type": "Microsoft.ApiManagement/service/products", + "name": "testproduct", + "properties": { + "displayName": "Test Template ProductName 4", + "subscriptionRequired": true, + "approvalRequired": false, + "state": "notPublished" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateProductApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateProductApi.json new file mode 100644 index 000000000000..d72042a3db96 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateProductApi.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "productId": "testproduct", + "apiId": "echo-api" + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5931a75ae4bbd512a88c680b", + "type": "Microsoft.ApiManagement/service/apis", + "name": "5931a75ae4bbd512a88c680b", + "properties": { + "displayName": "EchoApi", + "apiRevision": "1", + "serviceUrl": "https://contoso.com/apis/echo", + "path": "", + "protocols": [ + "http", + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5931a75ae4bbd512a88c680b", + "type": "Microsoft.ApiManagement/service/apis", + "name": "5931a75ae4bbd512a88c680b", + "properties": { + "displayName": "EchoApi", + "apiRevision": "1", + "serviceUrl": "https://contoso.com/apis/echo", + "path": "", + "protocols": [ + "http", + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateProductGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateProductGroup.json new file mode 100644 index 000000000000..b57901284e11 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateProductGroup.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "productId": "testproduct", + "groupId": "templateGroup" + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/templateGroup", + "type": "Microsoft.ApiManagement/service/products/groups", + "name": "templateGroup", + "properties": { + "displayName": "Template Group", + "description": "group created via Template", + "builtIn": false, + "type": "custom" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/templateGroup", + "type": "Microsoft.ApiManagement/service/products/groups", + "name": "templateGroup", + "properties": { + "displayName": "Template Group", + "description": "group created via Template", + "builtIn": false, + "type": "custom" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateProductPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateProductPolicy.json new file mode 100644 index 000000000000..759a622fd94f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateProductPolicy.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "productId": "5702e97e5157a50f48dce801", + "policyId": "policy", + "parameters": { + "properties": { + "format": "xml", + "value": "\r\n \r\n \r\n \r\n @( string.Join(\",\", DateTime.UtcNow, context.Deployment.ServiceName, context.RequestId, context.Request.IpAddress, context.Operation.Name) ) \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5702e97e5157a50f48dce801/policies/policy", + "type": "Microsoft.ApiManagement/service/products/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n @( string.Join(\",\", DateTime.UtcNow, context.Deployment.ServiceName, context.RequestId, context.Request.IpAddress, context.Operation.Name) ) \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5702e97e5157a50f48dce801/policies/policy", + "type": "Microsoft.ApiManagement/service/products/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n @( string.Join(\",\", DateTime.UtcNow, context.Deployment.ServiceName, context.RequestId, context.Request.IpAddress, context.Operation.Name) ) \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateProductTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateProductTag.json new file mode 100644 index 000000000000..d0c91fdfe3c5 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateProductTag.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "productId": "5931a75ae4bbd512a88c680b", + "tagId": "tagId1" + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/tagId1", + "type": "Microsoft.ApiManagement/service/tags", + "name": "tagId1", + "properties": { + "displayName": "tag1" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/tagId1", + "type": "Microsoft.ApiManagement/service/tags", + "name": "tagId1", + "properties": { + "displayName": "tag1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateService.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateService.json new file mode 100644 index 000000000000..2af0d82caa6d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateService.json @@ -0,0 +1,124 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "parameters": { + "properties": { + "publisherEmail": "foo@contoso.com", + "publisherName": "foo" + }, + "sku": { + "name": "Developer", + "capacity": 1 + }, + "location": "South Central US", + "tags": { + "Name": "Contoso", + "Test": "User" + } + } + }, + "responses": { + "201": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2019-12-01-preview" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "Name": "Contoso", + "Test": "User" + }, + "location": "South Central US", + "etag": "AAAAAAAp3P0=", + "properties": { + "publisherEmail": "foo@contoso.com", + "publisherName": "foo", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Created", + "targetProvisioningState": "Activating", + "createdAtUtc": "2019-12-18T06:10:56.0327105Z", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true + } + ], + "virtualNetworkType": "None", + "disableGateway": false, + "apiVersionConstraint": {} + }, + "sku": { + "name": "Developer", + "capacity": 1 + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "Name": "Contoso", + "Test": "User" + }, + "location": "South Central US", + "etag": "AAAAAAAp3T4=", + "properties": { + "publisherEmail": "foo@contoso.com", + "publisherName": "foo", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2019-12-18T06:10:56.0327105Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "gatewayRegionalUrl": "https://apimService1-southcentralus-01.regional.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true + } + ], + "publicIPAddresses": [ + "23.102.171.124" + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2": "False" + }, + "virtualNetworkType": "None", + "disableGateway": false, + "apiVersionConstraint": {} + }, + "sku": { + "name": "Developer", + "capacity": 1 + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/c2RrdGVzdGFwaW0xNTkxX0FjdF9jZTkyMmNmOQ==?api-version=2019-12-01-preview" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateServiceHavingMsi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateServiceHavingMsi.json new file mode 100644 index 000000000000..8fb2e7b79560 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateServiceHavingMsi.json @@ -0,0 +1,119 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "parameters": { + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk" + }, + "sku": { + "name": "Consumption", + "capacity": 0 + }, + "identity": { + "type": "SystemAssigned" + }, + "location": "West US", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + } + } + }, + "responses": { + "201": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2019-12-01-preview" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "West US", + "etag": "AAAAAAAAWiE=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Created", + "targetProvisioningState": "Activating", + "createdAtUtc": "2019-04-11T16:29:29.9711098Z", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true + } + ], + "virtualNetworkType": "None" + }, + "sku": { + "name": "Consumption", + "capacity": 0 + }, + "identity": { + "type": "SystemAssigned", + "principalId": "dfb9a757-df69-4966-a8d0-711a9cd8ffb4", + "tenantId": "XXXXXX-86f1-41af-91ab-2d7cd011db47" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "West US", + "etag": "AAAAAAAAWiU=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2019-04-11T16:29:29.9711098Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true + } + ], + "virtualNetworkType": "None", + "enableClientCertificate": false + }, + "sku": { + "name": "Consumption", + "capacity": 0 + }, + "identity": { + "type": "SystemAssigned", + "principalId": "dfb9a757-df69-4966-a8d0-711a9cd8ffb4", + "tenantId": "XXXXXX-86f1-41af-91ab-2d7cd011db47" + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2019-12-01-preview" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateServiceWithSystemCertificates.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateServiceWithSystemCertificates.json new file mode 100644 index 000000000000..2435006f15eb --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateServiceWithSystemCertificates.json @@ -0,0 +1,154 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "parameters": { + "properties": { + "certificates": [ + { + "encodedCertificate": "*******Base64 encoded Certificate******************", + "certificatePassword": "Password", + "storeName": "CertificateAuthority" + } + ], + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk" + }, + "sku": { + "name": "Basic", + "capacity": 1 + }, + "location": "Central US", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + } + } + }, + "responses": { + "201": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/bXVsdGlob3N0bmFtZW11bHRpcmVnaW9uc2VydmljZV9BY3RfZjFiOTZhMjc=?api-version=2019-12-01-preview" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "Central US", + "etag": "AAAAAAAp3TM=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Created", + "targetProvisioningState": "Activating", + "createdAtUtc": "2019-12-18T06:33:28.0906918Z", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true + } + ], + "virtualNetworkType": "None", + "certificates": [ + { + "storeName": "CertificateAuthority", + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989652CABCF585ACBFCB9C2C91F1D174FDB3A2", + "subject": "CN=*.msitesting.net" + } + } + ], + "disableGateway": false, + "apiVersionConstraint": {} + }, + "sku": { + "name": "Basic", + "capacity": 1 + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "Central US", + "etag": "AAAAAAAp3UM=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2019-12-18T06:33:28.0906918Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "gatewayRegionalUrl": "https://apimService1-centralus-01.regional.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true + } + ], + "publicIPAddresses": [ + "40.113.223.117" + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2": "False" + }, + "virtualNetworkType": "None", + "certificates": [ + { + "storeName": "CertificateAuthority", + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989652CABCF585ACBFCB9C2C91F1D174FDB3A2", + "subject": "CN=*.msitesting.net" + } + } + ], + "disableGateway": false, + "apiVersionConstraint": {} + }, + "sku": { + "name": "Basic", + "capacity": 1 + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/bXVsdGlob3N0bmFtZW11bHRpcmVnaW9uc2VydmljZV9BY3RfZjFiOTZhMjc=?api-version=2019-12-01-preview" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateServiceWithUserAssignedIdentity.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateServiceWithUserAssignedIdentity.json new file mode 100644 index 000000000000..eaebda541b0a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateServiceWithUserAssignedIdentity.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "parameters": { + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk" + }, + "sku": { + "name": "Consumption", + "capacity": 0 + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/apimService1": {} + } + }, + "location": "West US", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + } + } + }, + "responses": { + "201": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2019-12-01-preview" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "West US", + "etag": "AAAAAAAFzyQ=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Created", + "targetProvisioningState": "Activating", + "createdAtUtc": "2020-03-12T01:05:33.4573398Z", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true + } + ], + "virtualNetworkType": "None" + }, + "sku": { + "name": "Consumption", + "capacity": 0 + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/apimService1": {} + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "West US", + "etag": "AAAAAAAFzyk=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2020-03-12T01:05:33.4573398Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true + } + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2": "False" + }, + "virtualNetworkType": "None", + "disableGateway": false + }, + "sku": { + "name": "Consumption", + "capacity": 0 + }, + "identity": { + "type": "UserAssigned", + "tenantId": "XXXXX-86f1-41af-XXXX-2d7cd011db47", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/apimService1": { + "principalId": "XXXXX-6e62-4649-9f54-a119fc1ba85e", + "clientId": "5a2c6b8e-0905-XXXX-a772-993c9418137f" + } + } + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2019-12-01-preview" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateSoapPassThroughApiUsingWsdlImport.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateSoapPassThroughApiUsingWsdlImport.json new file mode 100644 index 000000000000..4554e7633243 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateSoapPassThroughApiUsingWsdlImport.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "soapApi", + "parameters": { + "properties": { + "format": "wsdl-link", + "value": "http://www.webservicex.net/CurrencyConvertor.asmx?WSDL", + "path": "currency", + "apiType": "soap", + "wsdlSelector": { + "wsdlServiceName": "CurrencyConvertor", + "wsdlEndpointName": "CurrencyConvertorSoap" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/soapApi", + "type": "Microsoft.ApiManagement/service/apis", + "name": "soapApi", + "properties": { + "displayName": "CurrencyConvertor", + "apiRevision": "1", + "serviceUrl": "http://www.webservicex.net", + "path": "currency", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "type": "soap", + "isCurrent": true + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2019-12-01-preview&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/soapApi", + "type": "Microsoft.ApiManagement/service/apis", + "name": "soapApi", + "properties": { + "displayName": "CurrencyConvertor", + "apiRevision": "1", + "serviceUrl": "http://www.webservicex.net", + "path": "currency", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "type": "soap", + "isCurrent": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateSoapToRestApiUsingWsdlImport.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateSoapToRestApiUsingWsdlImport.json new file mode 100644 index 000000000000..130752189700 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateSoapToRestApiUsingWsdlImport.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "soapApi", + "parameters": { + "properties": { + "format": "wsdl-link", + "value": "http://www.webservicex.net/CurrencyConvertor.asmx?WSDL", + "path": "currency", + "wsdlSelector": { + "wsdlServiceName": "CurrencyConvertor", + "wsdlEndpointName": "CurrencyConvertorSoap" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/soapApi", + "type": "Microsoft.ApiManagement/service/apis", + "name": "soapApi", + "properties": { + "displayName": "CurrencyConvertor", + "apiRevision": "1", + "serviceUrl": "http://www.webservicex.net", + "path": "currency", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2019-12-01-preview&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/soapApi", + "type": "Microsoft.ApiManagement/service/apis", + "name": "soapApi", + "properties": { + "displayName": "CurrencyConvertor", + "apiRevision": "1", + "serviceUrl": "http://www.webservicex.net", + "path": "currency", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateSubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateSubscription.json new file mode 100644 index 000000000000..d2745708ae03 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateSubscription.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "sid": "testsub", + "parameters": { + "properties": { + "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57127d485157a511ace86ae7", + "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b59475ff190048060002", + "displayName": "testsub" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/subscriptions/testsub", + "type": "Microsoft.ApiManagement/service/subscriptions", + "name": "testsub", + "properties": { + "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57127d485157a511ace86ae7", + "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b59475ff190048060002", + "displayName": "testsub", + "state": "submitted", + "createdDate": "2017-06-02T23:34:03.1055076Z" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/subscriptions/testsub", + "type": "Microsoft.ApiManagement/service/subscriptions", + "name": "testsub", + "properties": { + "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57127d485157a511ace86ae7", + "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b59475ff190048060002", + "displayName": "testsub", + "state": "submitted", + "createdDate": "2017-06-02T23:34:03.1055076Z" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateTag.json new file mode 100644 index 000000000000..01f07522a87f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateTag.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "tagId": "tagId1", + "parameters": { + "properties": { + "displayName": "tag1" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/tagId1", + "type": "Microsoft.ApiManagement/service/tags", + "name": "tagId1", + "properties": { + "displayName": "tag1" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/tagId1", + "type": "Microsoft.ApiManagement/service/tags", + "name": "tagId1", + "properties": { + "displayName": "tag1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateUser.json new file mode 100644 index 000000000000..f6e1e6eed216 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementCreateUser.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512288c680b", + "parameters": { + "properties": { + "firstName": "foo", + "lastName": "bar", + "email": "foobar@outlook.com", + "confirmation": "signup" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/5931a75ae4bbd512288c680b", + "type": "Microsoft.ApiManagement/service/users", + "name": "5931a75ae4bbd512288c680b", + "properties": { + "firstName": "foo", + "lastName": "bar", + "email": "foobar@outlook.com", + "state": "active", + "registrationDate": "2018-01-07T21:21:29.16Z", + "groups": [], + "identities": [ + { + "provider": "Basic", + "id": "foobar@outlook.com" + } + ] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/5931a75ae4bbd512288c680b", + "type": "Microsoft.ApiManagement/service/users", + "name": "5931a75ae4bbd512288c680b", + "properties": { + "firstName": "foo", + "lastName": "bar", + "email": "foobar@outlook.com", + "state": "active", + "registrationDate": "2018-01-07T21:21:29.16Z", + "groups": [], + "identities": [ + { + "provider": "Basic", + "id": "foobar@outlook.com" + } + ] + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApi.json new file mode 100644 index 000000000000..e3d0d4ad9086 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApi.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "echo-api", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiDiagnostic.json new file mode 100644 index 000000000000..738e9fd8b6ec --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiDiagnostic.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "diagnosticId": "applicationinsights", + "apiId": "57d1f7558aa04f15146d9d8a", + "If-Match": "*" + }, + "responses": { + "204": {}, + "200": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiIssue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiIssue.json new file mode 100644 index 000000000000..053e9dbe5b8a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiIssue.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "apiId": "57d1f7558aa04f15146d9d8a", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiIssueAttachment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiIssueAttachment.json new file mode 100644 index 000000000000..721978313950 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiIssueAttachment.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "apiId": "57d1f7558aa04f15146d9d8a", + "attachmentId": "57d2ef278aa04f0888cba3f3", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiIssueComment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiIssueComment.json new file mode 100644 index 000000000000..48046197757a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiIssueComment.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "apiId": "57d1f7558aa04f15146d9d8a", + "commentId": "599e29ab193c3c0bd0b3e2fb", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiOperation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiOperation.json new file mode 100644 index 000000000000..f202638e367a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiOperation.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "operationId": "57d2ef278aa04f0ad01d6cdc", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiOperationPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiOperationPolicy.json new file mode 100644 index 000000000000..ead51e469e70 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiOperationPolicy.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "testapi", + "operationId": "testoperation", + "policyId": "policy", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiOperationTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiOperationTag.json new file mode 100644 index 000000000000..64db4b0a44f6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiOperationTag.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "59d5b28d1f7fab116c282650", + "operationId": "59d5b28d1f7fab116c282651", + "tagId": "59d5b28e1f7fab116402044e", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiPolicy.json new file mode 100644 index 000000000000..a7d083ac1824 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiPolicy.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "loggerId", + "policyId": "policy", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiRelease.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiRelease.json new file mode 100644 index 000000000000..2bd9b88285c7 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiRelease.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "5a5fcc09124a7fa9b89f2f1d", + "releaseId": "testrev", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiSchema.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiSchema.json new file mode 100644 index 000000000000..fb1d6974eb61 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiSchema.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "59d5b28d1f7fab116c282650", + "schemaId": "59d5b28e1f7fab116402044e", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiTag.json new file mode 100644 index 000000000000..2828b690846a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiTag.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "59d5b28d1f7fab116c282650", + "tagId": "59d5b28e1f7fab116402044e", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiTagDescription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiTagDescription.json new file mode 100644 index 000000000000..15b9e329033b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiTagDescription.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "59d5b28d1f7fab116c282650", + "tagDescriptionId": "59d5b28e1f7fab116402044e", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiVersionSet.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiVersionSet.json new file mode 100644 index 000000000000..a1928e64f95c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteApiVersionSet.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "versionSetId": "a1", + "If-Match": "*" + }, + "responses": { + "204": {}, + "200": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteAuthorizationServer.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteAuthorizationServer.json new file mode 100644 index 000000000000..09fc5b58fd05 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteAuthorizationServer.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "authsid": "newauthServer2", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteBackend.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteBackend.json new file mode 100644 index 000000000000..21955d4081ed --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteBackend.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "backendId": "sfbackend", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteCache.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteCache.json new file mode 100644 index 000000000000..30f830e19170 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteCache.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "cacheId": "southindia", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteCertificate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteCertificate.json new file mode 100644 index 000000000000..9d0e90b1bbb5 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteCertificate.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "certificateId": "tempcert", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteDiagnostic.json new file mode 100644 index 000000000000..fa06cf14d0cf --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteDiagnostic.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "diagnosticId": "applicationinsights", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteEmailTemplate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteEmailTemplate.json new file mode 100644 index 000000000000..786858413d42 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteEmailTemplate.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "templateName": "newIssueNotificationMessage", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteGateway.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteGateway.json new file mode 100644 index 000000000000..51105639f040 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteGateway.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "gw1", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteGatewayApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteGatewayApi.json new file mode 100644 index 000000000000..c64e35176668 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteGatewayApi.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "gw1", + "apiId": "echo-api", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteGatewayHostnameConfiguration.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteGatewayHostnameConfiguration.json new file mode 100644 index 000000000000..d6cc5a2f894a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteGatewayHostnameConfiguration.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "gw1", + "hcId": "default", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteGroup.json new file mode 100644 index 000000000000..40177e42f113 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteGroup.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "groupId": "aadGroup", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteGroupUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteGroupUser.json new file mode 100644 index 000000000000..d0b7874210e1 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteGroupUser.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "groupId": "templategroup", + "userId": "59307d350af58404d8a26300", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteIdentityProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteIdentityProvider.json new file mode 100644 index 000000000000..f298f837212a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteIdentityProvider.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "identityProviderName": "aad", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteLogger.json new file mode 100644 index 000000000000..1cc999338f0a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteLogger.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "loggerId": "loggerId", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteNamedValue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteNamedValue.json new file mode 100644 index 000000000000..250c6e39f832 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteNamedValue.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "namedValueId": "testprop2", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteNotificationRecipientEmail.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteNotificationRecipientEmail.json new file mode 100644 index 000000000000..503253e9ed92 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteNotificationRecipientEmail.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage", + "email": "contoso@live.com" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteNotificationRecipientUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteNotificationRecipientUser.json new file mode 100644 index 000000000000..386f57875ffc --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteNotificationRecipientUser.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage", + "userId": "576823d0a40f7e74ec07d642" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteOpenIdConnectProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteOpenIdConnectProvider.json new file mode 100644 index 000000000000..4d7d44ca422d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteOpenIdConnectProvider.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "opid": "templateOpenIdConnect3", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeletePolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeletePolicy.json new file mode 100644 index 000000000000..11d4c25b510f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeletePolicy.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "policyId": "policy", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteProduct.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteProduct.json new file mode 100644 index 000000000000..3d0dd08d8b08 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteProduct.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "productId": "testproduct", + "deleteSubscriptions": true, + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteProductApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteProductApi.json new file mode 100644 index 000000000000..9e8e3056812c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteProductApi.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "productId": "testproduct", + "apiId": "echo-api", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteProductGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteProductGroup.json new file mode 100644 index 000000000000..51db48dbf241 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteProductGroup.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "productId": "testproduct", + "groupId": "templateGroup", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteProductPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteProductPolicy.json new file mode 100644 index 000000000000..ac1581871a52 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteProductPolicy.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "productId": "testproduct", + "policyId": "policy", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteProductTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteProductTag.json new file mode 100644 index 000000000000..71ce0621c6d4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteProductTag.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "productId": "59d5b28d1f7fab116c282650", + "tagId": "59d5b28e1f7fab116402044e", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteSubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteSubscription.json new file mode 100644 index 000000000000..830a40e65a08 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteSubscription.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "sid": "testsub", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteTag.json new file mode 100644 index 000000000000..305f10188580 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteTag.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "tagId": "tagId1", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteUser.json new file mode 100644 index 000000000000..e69922e60ac8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementDeleteUser.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512288c680b", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGatewayGenerateToken.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGatewayGenerateToken.json new file mode 100644 index 000000000000..4cddff66fe3c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGatewayGenerateToken.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "gw1", + "parameters": { + "keyType": "primary", + "expiry": "2020-04-21T00:44:24.2845269Z" + } + }, + "responses": { + "200": { + "body": { + "value": "gw1&201904210044&9A1GR1f5WIhFvFmzQG+xxxxxxxxxxx/kBeu87DWad3tkasUXuvPL+MgzlwUHyg==" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGatewayListKeys.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGatewayListKeys.json new file mode 100644 index 000000000000..2e83fcab3f00 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGatewayListKeys.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "gw1" + }, + "responses": { + "200": { + "body": { + "primary": "primary_key_value", + "secondary": "secondary_key_value" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGatewayRegenerateKey.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGatewayRegenerateKey.json new file mode 100644 index 000000000000..4c512b91f977 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGatewayRegenerateKey.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "gwId", + "parameters": { + "keyType": "primary" + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiContract.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiContract.json new file mode 100644 index 000000000000..b38e6469d258 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiContract.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "57d1f7558aa04f15146d9d8a" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a", + "type": "Microsoft.ApiManagement/service/apis", + "name": "57d1f7558aa04f15146d9d8a", + "properties": { + "displayName": "Service", + "apiRevision": "1", + "serviceUrl": "https://api.plexonline.com/DataSource/Service.asmx", + "path": "schulte", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "type": "soap", + "isCurrent": true, + "isOnline": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiDiagnostic.json new file mode 100644 index 000000000000..7b716a1e435d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiDiagnostic.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "diagnosticId": "applicationinsights", + "apiId": "57d1f7558aa04f15146d9d8a" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api/diagnostics/applicationinsights", + "type": "Microsoft.ApiManagement/service/apis/diagnostics", + "name": "applicationinsights", + "properties": { + "alwaysLog": "allErrors", + "httpCorrelationProtocol": "Legacy", + "logClientIp": true, + "loggerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/aisamplingtest", + "sampling": { + "samplingType": "fixed", + "percentage": 100 + }, + "frontend": { + "request": { + "headers": [], + "body": { + "bytes": 100 + } + }, + "response": { + "headers": [], + "body": { + "bytes": 100 + } + } + }, + "backend": { + "request": { + "headers": [], + "body": { + "bytes": 100 + } + }, + "response": { + "headers": [], + "body": { + "bytes": 100 + } + } + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiExportInOpenApi2dot0.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiExportInOpenApi2dot0.json new file mode 100644 index 000000000000..260a8e289303 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiExportInOpenApi2dot0.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "echo-api", + "format": "swagger-link", + "export": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api", + "format": "swagger-link-json", + "value": { + "link": "https://apimgmtstkjpszxxxxxxx.blob.core.windows.net/api-export/Swagger Petstore Extensive.json?sv=2015-07-08&sr=b&sig=mxhLsFuOonu8EXIjyFPV%2FnDra0qTIoip7N7MuU%2BTFsA%3D&se=2019-04-10T22:41:31Z&sp=r" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiExportInOpenApi3dot0.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiExportInOpenApi3dot0.json new file mode 100644 index 000000000000..44d9c634bd5c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiExportInOpenApi3dot0.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "aid9676", + "format": "openapi-link", + "export": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/aid9676", + "format": "openapi-link", + "value": { + "link": "https: //apimgmtstkjpszxxxxxxx.blob.core.windows.net/api-export/Swagger Petstore.yaml?sv=2015-07-08&sr=b&sig=qqtR1y5iTbz5P7USBduqB5vriIU4gmiGqe0lKVV8j9k%3D&se=2019-04-10T22:40:57Z&sp=r" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiIssue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiIssue.json new file mode 100644 index 000000000000..3e9c9d15f591 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiIssue.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "issueId": "57d2ef278aa04f0ad01d6cdc" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc", + "type": "Microsoft.ApiManagement/service/apis/issues", + "name": "57d2ef278aa04f0ad01d6cdc", + "properties": { + "title": "New API issue", + "description": "New API issue description", + "createdDate": "2018-02-01T22:21:20.467Z", + "state": "open", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1", + "apiId": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiIssueAttachment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiIssueAttachment.json new file mode 100644 index 000000000000..9163da05a2b1 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiIssueAttachment.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "attachmentId": "57d2ef278aa04f0888cba3f3" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc/attachments/57d2ef278aa04f0888cba3f3", + "type": "Microsoft.ApiManagement/service/apis/issues/attachments", + "name": "57d2ef278aa04f0888cba3f3", + "properties": { + "title": "Issue attachment.", + "contentFormat": "link", + "content": "https://.../image.jpg" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiIssueComment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiIssueComment.json new file mode 100644 index 000000000000..b1bf57c1b2a9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiIssueComment.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "commentId": "599e29ab193c3c0bd0b3e2fb" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc/comments/599e29ab193c3c0bd0b3e2fb", + "type": "Microsoft.ApiManagement/service/apis/issues/comments", + "name": "599e29ab193c3c0bd0b3e2fb", + "properties": { + "text": "Issue comment.", + "createdDate": "2018-02-01T22:21:20.467Z", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiOperation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiOperation.json new file mode 100644 index 000000000000..bc6562e2e2cc --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiOperation.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "operationId": "57d2ef278aa04f0ad01d6cdc" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d2ef278aa04f0888cba3f3/operations/57d2ef278aa04f0ad01d6cdc", + "type": "Microsoft.ApiManagement/service/apis/operations", + "name": "57d2ef278aa04f0ad01d6cdc", + "properties": { + "displayName": "CancelOrder", + "method": "POST", + "urlTemplate": "/?soapAction=http://tempuri.org/IFazioService/CancelOrder", + "templateParameters": [], + "request": { + "description": "IFazioService_CancelOrder_InputMessage", + "queryParameters": [], + "headers": [], + "representations": [ + { + "contentType": "text/xml", + "sample": "\r\n\r\n \r\n \r\n 1\r\n \r\n \r\n", + "schemaId": "6980a395-f08b-4a59-8295-1440cbd909b8", + "typeName": "CancelOrder" + } + ] + }, + "responses": [ + { + "statusCode": 200, + "description": "IFazioService_CancelOrder_OutputMessage", + "representations": [ + { + "contentType": "text/xml", + "sample": "\r\n\r\n \r\n \r\n 1\r\n \r\n \r\n", + "schemaId": "6980a395-f08b-4a59-8295-1440cbd909b8", + "typeName": "CancelOrderResponse" + } + ], + "headers": [] + } + ] + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiOperationPetStore.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiOperationPetStore.json new file mode 100644 index 000000000000..1d80026b57f6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiOperationPetStore.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "swagger-petstore", + "operationId": "loginUser" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/swagger-petstore/operations/loginUser", + "type": "Microsoft.ApiManagement/service/apis/operations", + "name": "loginUser", + "properties": { + "displayName": "Logs user into the system", + "method": "GET", + "urlTemplate": "/user/login?username={username}&password={password}", + "templateParameters": [ + { + "name": "username", + "description": "The user name for login", + "type": "string", + "required": true, + "values": [] + }, + { + "name": "password", + "description": "The password for login in clear text", + "type": "string", + "required": true, + "values": [] + } + ], + "description": "", + "request": { + "queryParameters": [], + "headers": [], + "representations": [] + }, + "responses": [ + { + "statusCode": 200, + "description": "successful operation", + "representations": [ + { + "contentType": "application/xml", + "schemaId": "5ba91a35f373b513a0bf31c6", + "typeName": "UserLoginGet200ApplicationXmlResponse" + }, + { + "contentType": "application/json", + "schemaId": "5ba91a35f373b513a0bf31c6", + "typeName": "UserLoginGet200ApplicationJsonResponse" + } + ], + "headers": [ + { + "name": "X-Rate-Limit", + "description": "calls per hour allowed by the user", + "type": "integer", + "values": [] + }, + { + "name": "X-Expires-After", + "description": "date in UTC when token expires", + "type": "string", + "values": [] + } + ] + }, + { + "statusCode": 400, + "description": "Invalid username/password supplied", + "representations": [ + { + "contentType": "application/xml" + }, + { + "contentType": "application/json" + } + ], + "headers": [] + } + ] + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiOperationPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiOperationPolicy.json new file mode 100644 index 000000000000..06f034bdbe93 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiOperationPolicy.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "5600b539c53f5b0062040001", + "operationId": "5600b53ac53f5b0062080006", + "policyId": "policy" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5600b539c53f5b0062040001/operations/5600b53ac53f5b0062080006/policies/policy", + "type": "Microsoft.ApiManagement/service/apis/operations/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n This is a sample\r\n \r\n \r\n \r\n \r\n" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiOperationTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiOperationTag.json new file mode 100644 index 000000000000..f30a0bf545de --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiOperationTag.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "59d6bb8f1f7fab13dc67ec9b", + "operationId": "59d6bb8f1f7fab13dc67ec9a", + "tagId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/59306a29e4bbd510dc24e5f9", + "type": "Microsoft.ApiManagement/service/tags", + "name": "59306a29e4bbd510dc24e5f9", + "properties": { + "displayName": "tag1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiPolicy.json new file mode 100644 index 000000000000..2d2d59f3391c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiPolicy.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "5600b59475ff190048040001", + "policyId": "policy" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5600b59475ff190048040001/policies/policy", + "type": "Microsoft.ApiManagement/service/apis/policies", + "name": "policy", + "properties": { + "value": "\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n@{\r\n\tRandom Random = new Random();\r\n\t\t\t\tconst string Chars = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz \"; \r\n return string.Join(\",\", DateTime.UtcNow, new string(\r\n Enumerable.Repeat(Chars, Random.Next(2150400))\r\n .Select(s => s[Random.Next(s.Length)])\r\n .ToArray()));\r\n } \r\n \r\n \r\n \r\n" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiRelease.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiRelease.json new file mode 100644 index 000000000000..765e141f2989 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiRelease.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "a1", + "releaseId": "5a7cb545298324c53224a799" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1/releases/5a7cb545298324c53224a799", + "type": "Microsoft.ApiManagement/service/apis/releases", + "name": "5a7cb545298324c53224a799", + "properties": { + "apiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1", + "createdDateTime": "2018-02-08T20:38:29.173Z", + "updatedDateTime": "2018-02-08T20:38:29.173Z", + "notes": "yahoo" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiRevision.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiRevision.json new file mode 100644 index 000000000000..3e557b30c37a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiRevision.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "echo-api;rev=3" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api;rev=3", + "type": "Microsoft.ApiManagement/service/apis", + "name": "echo-api;rev=3", + "properties": { + "displayName": "Service", + "apiRevision": "3", + "serviceUrl": "https://api.plexonline.com/DataSource/Service.asmx", + "path": "schulte", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "apiRevisionDescription": "fixed bug in contract" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiSchema.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiSchema.json new file mode 100644 index 000000000000..29fd2e1b7bd7 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiSchema.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "59d6bb8f1f7fab13dc67ec9b", + "schemaId": "ec12520d-9d48-4e7b-8f39-698ca2ac63f1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/59d6bb8f1f7fab13dc67ec9b/schemas/ec12520d-9d48-4e7b-8f39-698ca2ac63f1", + "type": "Microsoft.ApiManagement/service/apis/schemas", + "name": "ec12520d-9d48-4e7b-8f39-698ca2ac63f1", + "properties": { + "contentType": "application/vnd.ms-azure-apim.xsd+xml", + "document": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiTag.json new file mode 100644 index 000000000000..0b4d2e4ca9b1 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiTag.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "59d6bb8f1f7fab13dc67ec9b", + "tagId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/59306a29e4bbd510dc24e5f9", + "type": "Microsoft.ApiManagement/service/tags", + "name": "59306a29e4bbd510dc24e5f9", + "properties": { + "displayName": "tag1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiTagDescription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiTagDescription.json new file mode 100644 index 000000000000..c6493f634e91 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiTagDescription.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "59d6bb8f1f7fab13dc67ec9b", + "tagDescriptionId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/59d6bb8f1f7fab13dc67ec9b/tagDescriptions/59306a29e4bbd510dc24e5f9", + "type": "Microsoft.ApiManagement/service/apis/tagDescriptions", + "name": "59306a29e4bbd510dc24e5f9", + "properties": { + "tagId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/59306a29e4bbd510dc24e5f9", + "displayName": "tag1", + "description": null, + "externalDocsDescription": "some additional info", + "externalDocsUrl": "http://some_url.com" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiVersionSet.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiVersionSet.json new file mode 100644 index 000000000000..e2ab2342de8e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetApiVersionSet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "versionSetId": "vs1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/vs1", + "type": "Microsoft.ApiManagement/service/api-version-sets", + "name": "vs1", + "properties": { + "displayName": "Version Set 1", + "versioningScheme": "Segment", + "description": "Version configuration" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetAuthorizationServer.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetAuthorizationServer.json new file mode 100644 index 000000000000..a420efb97664 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetAuthorizationServer.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "authsid": "newauthServer2" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/authorizationServers/newauthServer2", + "type": "Microsoft.ApiManagement/service/authorizationServers", + "name": "newauthServer2", + "properties": { + "displayName": "test3", + "description": "test server", + "clientRegistrationEndpoint": "https://www.contoso.com/apps", + "authorizationEndpoint": "https://www.contoso.com/oauth2/auth", + "authorizationMethods": [ + "GET" + ], + "clientAuthenticationMethod": [ + "Basic" + ], + "tokenEndpoint": "https://www.contoso.com/oauth2/token", + "supportState": true, + "defaultScope": "read write", + "grantTypes": [ + "authorizationCode", + "implicit" + ], + "bearerTokenSendingMethods": [ + "authorizationHeader" + ], + "clientId": "1", + "resourceOwnerUsername": "un", + "resourceOwnerPassword": "pwd" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetBackend.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetBackend.json new file mode 100644 index 000000000000..c4e10cb32134 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetBackend.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "backendId": "sfbackend" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/backends/sfbackend", + "type": "Microsoft.ApiManagement/service/backends", + "name": "sfbackend", + "properties": { + "description": "Service Fabric Test App 1", + "url": "fabric:/mytestapp/mytestservice", + "protocol": "http", + "properties": { + "serviceFabricCluster": { + "managementEndpoints": [ + "https://somecluster.com" + ], + "clientCertificatethumbprint": "EBA029198AA3E76EF0D70482626E5BCF148594A6", + "serverX509Names": [ + { + "name": "ServerCommonName1", + "issuerCertificateThumbprint": "IssuerCertificateThumbprint1" + } + ], + "maxPartitionResolutionRetries": 5 + } + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetCache.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetCache.json new file mode 100644 index 000000000000..4b59a7b459cf --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetCache.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "cacheId": "westindia" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/caches/westindia", + "type": "Microsoft.ApiManagement/service/caches", + "name": "westindia", + "properties": { + "connectionString": "{{5c68d535a40f7e61103cd285}}}", + "description": "Redis cache instances in West India", + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/contoso5" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetCertificate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetCertificate.json new file mode 100644 index 000000000000..24eaffa13481 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetCertificate.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "certificateId": "templateCert1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/templateCert1", + "type": "Microsoft.ApiManagement/service/certificates", + "name": "templateCert1", + "properties": { + "subject": "CN=mutual-authcert", + "thumbprint": "EBA**********************8594A6", + "expirationDate": "2017-04-23T17:03:41Z" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetDiagnostic.json new file mode 100644 index 000000000000..211f54efe1e0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetDiagnostic.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "diagnosticId": "applicationinsights" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/diagnostics/applicationinsights", + "type": "Microsoft.ApiManagement/service/diagnostics", + "name": "applicationinsights", + "properties": { + "alwaysLog": "allErrors", + "httpCorrelationProtocol": "Legacy", + "logClientIp": true, + "loggerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/aisamplingtest", + "sampling": { + "samplingType": "fixed", + "percentage": 100 + }, + "frontend": { + "request": { + "headers": [], + "body": { + "bytes": 100 + } + }, + "response": { + "headers": [], + "body": { + "bytes": 100 + } + } + }, + "backend": { + "request": { + "headers": [], + "body": { + "bytes": 100 + } + }, + "response": { + "headers": [], + "body": { + "bytes": 100 + } + } + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetEmailTemplate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetEmailTemplate.json new file mode 100644 index 000000000000..fd31b9c0e9a1 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetEmailTemplate.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "templateName": "newIssueNotificationMessage" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/templates/NewIssueNotificationMessage", + "type": "Microsoft.ApiManagement/service/templates", + "name": "NewIssueNotificationMessage", + "properties": { + "subject": "Your request $IssueName was received", + "body": "\r\n\r\n \r\n \r\n

Dear $DevFirstName $DevLastName,

\r\n

Thank you for contacting us. Our API team will review your issue and get back to you soon.

\r\n

\r\n Click this link to view or edit your request.\r\n

\r\n

Best,

\r\n

The $OrganizationName API Team

\r\n \r\n", + "title": "New issue received", + "description": "This email is sent to developers after they create a new topic on the Issues page of the developer portal.", + "isDefault": true, + "parameters": [ + { + "name": "DevFirstName", + "title": "Developer first name" + }, + { + "name": "DevLastName", + "title": "Developer last name" + }, + { + "name": "IssueId", + "title": "Issue id" + }, + { + "name": "IssueName", + "title": "Issue name" + }, + { + "name": "OrganizationName", + "title": "Organization name" + }, + { + "name": "DevPortalUrl", + "title": "Developer portal URL" + } + ] + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetGateway.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetGateway.json new file mode 100644 index 000000000000..f43fb9a7c22b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetGateway.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "gw1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1", + "type": "Microsoft.ApiManagement/service/gateways", + "name": "a1", + "properties": { + "description": "my gateway 1", + "locationData": { + "name": "my location" + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetGatewayHostnameConfiguration.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetGatewayHostnameConfiguration.json new file mode 100644 index 000000000000..2710e041a5b0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetGatewayHostnameConfiguration.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "gw1", + "hcId": "default" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/hostnameConfigurations/default", + "type": "Microsoft.ApiManagement/service/gateways/hostnameConfigurations", + "name": "default", + "properties": { + "hostname": "*", + "certificateId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/cert1", + "negotiateClientCertificate": false + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetGroup.json new file mode 100644 index 000000000000..1281accfea01 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetGroup.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "groupId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/59306a29e4bbd510dc24e5f9", + "type": "Microsoft.ApiManagement/service/groups", + "name": "59306a29e4bbd510dc24e5f9", + "properties": { + "displayName": "AwesomeGroup (samiraad.onmicrosoft.com)", + "description": "awesome group of people", + "builtIn": false, + "type": "external", + "externalId": "aad://samiraad.onmicrosoft.com/groups/3773adf4-032e-4d25-9988-eaff9ca72eca" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetIdentityProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetIdentityProvider.json new file mode 100644 index 000000000000..e97715789d30 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetIdentityProvider.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "identityProviderName": "aadB2C" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/identityProviders/AadB2C", + "type": "Microsoft.ApiManagement/service/identityProviders", + "name": "AadB2C", + "properties": { + "clientId": "f02dafe2-b8b8-48ec-a38e-27e5c16c51e5", + "type": "aadB2C", + "authority": "login.microsoftonline.com", + "signinTenant": "contosoaadb2c.onmicrosoft.com", + "allowedTenants": [ + "contosoaadb2c.onmicrosoft.com", + "contoso2aadb2c.onmicrosoft.com" + ], + "signupPolicyName": "B2C_1_policy-signup", + "signinPolicyName": "B2C_1_policy-signin" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetIssue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetIssue.json new file mode 100644 index 000000000000..83859c03e2c1 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetIssue.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "issueId": "57d2ef278aa04f0ad01d6cdc" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/issues/57d2ef278aa04f0ad01d6cdc", + "type": "Microsoft.ApiManagement/service/issues", + "name": "57d2ef278aa04f0ad01d6cdc", + "properties": { + "title": "New API issue", + "description": "New API issue description", + "createdDate": "2018-02-01T22:21:20.467Z", + "state": "open", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1", + "apiId": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetLogger.json new file mode 100644 index 000000000000..25868626e81e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetLogger.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "loggerId": "templateLogger" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/kloudapilogger1", + "type": "Microsoft.ApiManagement/service/loggers", + "name": "kloudapilogger1", + "properties": { + "loggerType": "azureEventHub", + "description": "testeventhub3again", + "credentials": { + "name": "testeventhub4", + "connectionString": "Endpoint=sb://eventhubapim.servicebus.windows.net/;SharedAccessKeyName=Sender;SharedAccessKey=************" + }, + "isBuffered": true, + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.EventHub/namespaces/eventhubapim" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetNamedValue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetNamedValue.json new file mode 100644 index 000000000000..e359bd17431c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetNamedValue.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "namedValueId": "testarmTemplateproperties2" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/namedValues/testarmTemplateproperties2", + "type": "Microsoft.ApiManagement/service/namedValues", + "name": "testarmTemplateproperties2", + "properties": { + "displayName": "propName", + "value": "propValue", + "tags": [ + "foo", + "bar" + ], + "secret": false + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetNotification.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetNotification.json new file mode 100644 index 000000000000..e107765005ed --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetNotification.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage", + "type": "Microsoft.ApiManagement/service/notifications", + "name": "RequestPublisherNotificationMessage", + "properties": { + "title": "Subscription requests (requiring approval)", + "description": "The following email recipients and users will receive email notifications about subscription requests for API products requiring approval.", + "recipients": { + "emails": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/recipientEmails/contoso@live.com", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/recipientEmails/foobar!live", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/recipientEmails/foobar@live.com" + ], + "users": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/576823d0a40f7e74ec07d642" + ] + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetOpenIdConnectProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetOpenIdConnectProvider.json new file mode 100644 index 000000000000..fa84070e6eee --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetOpenIdConnectProvider.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "opid": "templateOpenIdConnect2" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/openidConnectProviders/templateOpenIdConnect2", + "type": "Microsoft.ApiManagement/service/openidconnectproviders", + "name": "templateOpenIdConnect2", + "properties": { + "displayName": "templateoidprovider2", + "description": "open id provider template2", + "metadataEndpoint": "https://oidprovider-template2.net", + "clientId": "oidprovidertemplate2" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetPolicy.json new file mode 100644 index 000000000000..80fb8f7c83bd --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetPolicy.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "policyId": "policy" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/policies/policy", + "type": "Microsoft.ApiManagement/service/policies", + "name": "policy", + "properties": { + "value": "\r\n\r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetPolicyFormat.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetPolicyFormat.json new file mode 100644 index 000000000000..67d8f951becc --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetPolicyFormat.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "policyId": "policy", + "format": "rawxml" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/policies/policy", + "type": "Microsoft.ApiManagement/service/policies", + "name": "policy", + "properties": { + "format": "rawxml", + "value": "\r\n\r\n\t\r\n\t\t\r\n\t\t\t@{\n var guidBinary = new byte[16];\n Array.Copy(Guid.NewGuid().ToByteArray(), 0, guidBinary, 0, 10);\n long time = DateTime.Now.Ticks;\n byte[] bytes = new byte[6];\n unchecked\n {\n bytes[5] = (byte)(time >> 40);\n bytes[4] = (byte)(time >> 32);\n bytes[3] = (byte)(time >> 24);\n bytes[2] = (byte)(time >> 16);\n bytes[1] = (byte)(time >> 8);\n bytes[0] = (byte)(time);\n }\n Array.Copy(bytes, 0, guidBinary, 10, 6);\n return new Guid(guidBinary).ToString();\n }\n \r\n\t\t\r\n\t\r\n\t\r\n\t\t\r\n\t\r\n\t\r\n\t\r\n" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetProduct.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetProduct.json new file mode 100644 index 000000000000..4366629da77d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetProduct.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "productId": "unlimited" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/unlimited", + "type": "Microsoft.ApiManagement/service/products", + "name": "unlimited", + "properties": { + "displayName": "Unlimited", + "description": "Subscribers have completely unlimited access to the API. Administrator approval is required.", + "subscriptionRequired": true, + "approvalRequired": true, + "subscriptionsLimit": 1, + "state": "published" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetProductPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetProductPolicy.json new file mode 100644 index 000000000000..3c6aa1e68efe --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetProductPolicy.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "productId": "kjoshiarmTemplateProduct4", + "policyId": "policy" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/kjoshiarmTemplateProduct4/policies/policy", + "type": "Microsoft.ApiManagement/service/products/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetProductTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetProductTag.json new file mode 100644 index 000000000000..79271ea9b2ed --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetProductTag.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "productId": "59d6bb8f1f7fab13dc67ec9b", + "tagId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/59306a29e4bbd510dc24e5f9", + "type": "Microsoft.ApiManagement/service/tags", + "name": "59306a29e4bbd510dc24e5f9", + "properties": { + "displayName": "tag1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetQuotaCounterKeys.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetQuotaCounterKeys.json new file mode 100644 index 000000000000..da769eae7ce2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetQuotaCounterKeys.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "quotaCounterKey": "ba" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "counterKey": "ba", + "periodKey": "0_P3Y6M4DT12H30M5S", + "periodStartTime": "2014-08-04T04:24:35Z", + "periodEndTime": "2018-02-08T16:54:40Z", + "value": { + "callsCount": 5, + "kbTransferred": 2.5830078125 + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetQuotaCounterKeysByQuotaPeriod.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetQuotaCounterKeysByQuotaPeriod.json new file mode 100644 index 000000000000..1a2ba660c92b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetQuotaCounterKeysByQuotaPeriod.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "quotaCounterKey": "ba", + "quotaPeriodKey": "0_P3Y6M4DT12H30M5S" + }, + "responses": { + "200": { + "body": { + "counterKey": "ba", + "periodKey": "0_P3Y6M4DT12H30M5S", + "periodStartTime": "2014-08-04T04:24:35Z", + "periodEndTime": "2018-02-08T16:54:40Z", + "value": { + "callsCount": 0, + "kbTransferred": 2.5625 + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetReportsByApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetReportsByApi.json new file mode 100644 index 000000000000..51bc0bd8ba1d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetReportsByApi.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "$filter": "timestamp ge datetime'2017-06-01T00:00:00' and timestamp le datetime'2017-06-04T00:00:00'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Echo API", + "apiId": "/apis/5600b59475ff190048040001", + "callCountSuccess": 0, + "callCountBlocked": 0, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 0, + "bandwidth": 0, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 0, + "apiTimeMin": 0, + "apiTimeMax": 0, + "serviceTimeAvg": 0, + "serviceTimeMin": 0, + "serviceTimeMax": 0 + }, + { + "name": "httpbin", + "apiId": "/apis/57a03a13e4bbd5119c8b19e9", + "callCountSuccess": 13, + "callCountBlocked": 1, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 14, + "bandwidth": 11019, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 1015.7607923076923, + "apiTimeMin": 330.3206, + "apiTimeMax": 1819.2173, + "serviceTimeAvg": 957.094776923077, + "serviceTimeMin": 215.24, + "serviceTimeMax": 1697.3612 + } + ], + "count": 2, + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetReportsByGeo.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetReportsByGeo.json new file mode 100644 index 000000000000..c6de1b9208cc --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetReportsByGeo.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "$filter": "timestamp ge datetime'2017-06-01T00:00:00' and timestamp le datetime'2017-06-04T00:00:00'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "country": "US", + "region": "WA", + "zip": "98052", + "callCountSuccess": 13, + "callCountBlocked": 1, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 14, + "bandwidth": 11019, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 1015.7607923076923, + "apiTimeMin": 330.3206, + "apiTimeMax": 1819.2173, + "serviceTimeAvg": 957.094776923077, + "serviceTimeMin": 215.24, + "serviceTimeMax": 1697.3612 + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetReportsByOperation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetReportsByOperation.json new file mode 100644 index 000000000000..4273284e9c2b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetReportsByOperation.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "$filter": "timestamp ge datetime'2017-06-01T00:00:00' and timestamp le datetime'2017-06-04T00:00:00'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "get", + "apiId": "/apis/57a03a13e4bbd5119c8b19e9", + "operationId": "/apis/57a03a13e4bbd5119c8b19e9/operations/57a03a1dd8d14f0a780d7d14", + "callCountSuccess": 13, + "callCountBlocked": 1, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 14, + "bandwidth": 11019, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 1015.7607923076923, + "apiTimeMin": 330.3206, + "apiTimeMax": 1819.2173, + "serviceTimeAvg": 957.094776923077, + "serviceTimeMin": 215.24, + "serviceTimeMax": 1697.3612 + }, + { + "name": "GetWeatherInformation", + "apiId": "/apis/57c999d1e4bbd50c988cb2c3", + "operationId": "/apis/57c999d1e4bbd50c988cb2c3/operations/57c999d1e4bbd50df889c93e", + "callCountSuccess": 0, + "callCountBlocked": 0, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 0, + "bandwidth": 0, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 0, + "apiTimeMin": 0, + "apiTimeMax": 0, + "serviceTimeAvg": 0, + "serviceTimeMin": 0, + "serviceTimeMax": 0 + }, + { + "name": "GetCityForecastByZIP", + "apiId": "/apis/57c999d1e4bbd50c988cb2c3", + "operationId": "/apis/57c999d1e4bbd50c988cb2c3/operations/57c999d1e4bbd50df889c93f", + "callCountSuccess": 0, + "callCountBlocked": 0, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 0, + "bandwidth": 0, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 0, + "apiTimeMin": 0, + "apiTimeMax": 0, + "serviceTimeAvg": 0, + "serviceTimeMin": 0, + "serviceTimeMax": 0 + } + ], + "count": 3, + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetReportsByProduct.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetReportsByProduct.json new file mode 100644 index 000000000000..6380f6cf4f7e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetReportsByProduct.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "$filter": "timestamp ge datetime'2017-06-01T00:00:00' and timestamp le datetime'2017-06-04T00:00:00'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Starter", + "productId": "/products/5600b59475ff190048060001", + "callCountSuccess": 0, + "callCountBlocked": 0, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 0, + "bandwidth": 0, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 0, + "apiTimeMin": 0, + "apiTimeMax": 0, + "serviceTimeAvg": 0, + "serviceTimeMin": 0, + "serviceTimeMax": 0 + }, + { + "name": "Unlimited", + "productId": "/products/5600b59475ff190048060002", + "callCountSuccess": 13, + "callCountBlocked": 1, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 14, + "bandwidth": 11019, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 1015.7607923076923, + "apiTimeMin": 330.3206, + "apiTimeMax": 1819.2173, + "serviceTimeAvg": 957.094776923077, + "serviceTimeMin": 215.24, + "serviceTimeMax": 1697.3612 + } + ], + "count": 2, + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetReportsByRequest.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetReportsByRequest.json new file mode 100644 index 000000000000..93ea62dd9d4f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetReportsByRequest.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "$filter": "timestamp ge datetime'2017-06-01T00:00:00' and timestamp le datetime'2017-06-04T00:00:00'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "apiId": "/apis/5931a75ae4bbd512a88c680b", + "operationId": "/apis/5931a75ae4bbd512a88c680b/operations/-", + "productId": "/products/-", + "userId": "/users/1", + "method": "GET", + "url": "https://apimService1.azure-api.net/echo/resource?param1=sample", + "ipAddress": "207.xx.155.xx", + "responseCode": 404, + "responseSize": 405, + "timestamp": "2017-06-03T00:17:00.1649134Z", + "cache": "none", + "apiTime": 221.1544, + "serviceTime": 0.0, + "apiRegion": "East Asia", + "subscriptionId": "/subscriptions/5600b59475ff190048070002", + "requestId": "63e7119c-26aa-433c-96d7-f6f3267ff52f", + "requestSize": 0 + }, + { + "apiId": "/apis/5931a75ae4bbd512a88c680b", + "operationId": "/apis/5931a75ae4bbd512a88c680b/operations/-", + "productId": "/products/-", + "userId": "/users/1", + "method": "POST", + "url": "https://apimService1.azure-api.net/echo/resource", + "ipAddress": "207.xx.155.xx", + "responseCode": 404, + "responseSize": 403, + "timestamp": "2017-06-03T00:17:20.5255131Z", + "cache": "none", + "apiTime": 6.6754000000000007, + "serviceTime": 0.0, + "apiRegion": "East Asia", + "subscriptionId": "/subscriptions/5600b59475ff190048070002", + "requestId": "e581b7f7-c9ec-4fc6-8ab9-3855d9b00b04", + "requestSize": 0 + } + ], + "count": 2 + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetReportsBySubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetReportsBySubscription.json new file mode 100644 index 000000000000..ae5e01fda52b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetReportsBySubscription.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "$filter": "timestamp ge datetime'2017-06-01T00:00:00' and timestamp le datetime'2017-06-04T00:00:00'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "", + "userId": "/users/1", + "productId": "/products/5600b59475ff190048060001", + "subscriptionId": "/subscriptions/5600b59475ff190048070001", + "callCountSuccess": 0, + "callCountBlocked": 0, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 0, + "bandwidth": 0, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 0, + "apiTimeMin": 0, + "apiTimeMax": 0, + "serviceTimeAvg": 0, + "serviceTimeMin": 0, + "serviceTimeMax": 0 + }, + { + "name": "", + "userId": "/users/1", + "productId": "/products/5600b59475ff190048060002", + "subscriptionId": "/subscriptions/5600b59475ff190048070002", + "callCountSuccess": 13, + "callCountBlocked": 1, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 14, + "bandwidth": 11019, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 1015.7607923076923, + "apiTimeMin": 330.3206, + "apiTimeMax": 1819.2173, + "serviceTimeAvg": 957.094776923077, + "serviceTimeMin": 215.24, + "serviceTimeMax": 1697.3612 + }, + { + "name": "", + "userId": "/users/1", + "productId": "/products/5702e97e5157a50f48dce801", + "subscriptionId": "/subscriptions/5702e97e5157a50a9c733303", + "callCountSuccess": 0, + "callCountBlocked": 0, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 0, + "bandwidth": 0, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 0, + "apiTimeMin": 0, + "apiTimeMax": 0, + "serviceTimeAvg": 0, + "serviceTimeMin": 0, + "serviceTimeMax": 0 + } + ], + "count": 3, + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetReportsByTime.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetReportsByTime.json new file mode 100644 index 000000000000..48aba398c078 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetReportsByTime.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "$filter": "timestamp ge datetime'2017-06-01T00:00:00' and timestamp le datetime'2017-06-04T00:00:00'", + "interval": "PT15M" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timestamp": "2017-06-03T00:15:00Z", + "interval": "PT15M", + "callCountSuccess": 4, + "callCountBlocked": 0, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 4, + "bandwidth": 3243, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 1337.46335, + "apiTimeMin": 885.0839000000001, + "apiTimeMax": 1819.2173, + "serviceTimeAvg": 1255.917425, + "serviceTimeMin": 882.8264, + "serviceTimeMax": 1697.3612 + }, + { + "timestamp": "2017-06-03T00:30:00Z", + "interval": "PT15M", + "callCountSuccess": 9, + "callCountBlocked": 1, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 10, + "bandwidth": 7776, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 872.7818777777778, + "apiTimeMin": 330.3206, + "apiTimeMax": 1093.8407, + "serviceTimeAvg": 824.2847111111112, + "serviceTimeMin": 215.24, + "serviceTimeMax": 973.2262000000001 + } + ], + "count": 2, + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetReportsByUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetReportsByUser.json new file mode 100644 index 000000000000..eb8a163e5190 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetReportsByUser.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "$filter": "timestamp ge datetime'2017-06-01T00:00:00' and timestamp le datetime'2017-06-04T00:00:00'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Administrator", + "userId": "/users/1", + "callCountSuccess": 13, + "callCountBlocked": 1, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 14, + "bandwidth": 11019, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 1015.7607923076923, + "apiTimeMin": 330.3206, + "apiTimeMax": 1819.2173, + "serviceTimeAvg": 957.094776923077, + "serviceTimeMin": 215.24, + "serviceTimeMax": 1697.3612 + }, + { + "name": "Samir Solanki", + "userId": "/users/56eaec62baf08b06e46d27fd", + "callCountSuccess": 0, + "callCountBlocked": 0, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 0, + "bandwidth": 0, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 0, + "apiTimeMin": 0, + "apiTimeMax": 0, + "serviceTimeAvg": 0, + "serviceTimeMin": 0, + "serviceTimeMax": 0 + }, + { + "name": "Anonymous", + "userId": "/users/54c800b332965a0035030000", + "callCountSuccess": 0, + "callCountBlocked": 0, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 0, + "bandwidth": 0, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 0, + "apiTimeMin": 0, + "apiTimeMax": 0, + "serviceTimeAvg": 0, + "serviceTimeMin": 0, + "serviceTimeMax": 0 + } + ], + "count": 3, + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetSubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetSubscription.json new file mode 100644 index 000000000000..37eaf2e80340 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetSubscription.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "sid": "5931a769d8d14f0ad8ce13b8" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/subscriptions/5931a769d8d14f0ad8ce13b8", + "type": "Microsoft.ApiManagement/service/subscriptions", + "name": "5931a769d8d14f0ad8ce13b8", + "properties": { + "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/5931a75ae4bbd512a88c680b", + "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b59475ff190048060002", + "displayName": "Unlimited", + "state": "submitted", + "createdDate": "2017-06-02T17:59:06.223Z" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetTag.json new file mode 100644 index 000000000000..f444f460df18 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetTag.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "tagId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/59306a29e4bbd510dc24e5f9", + "type": "Microsoft.ApiManagement/service/tags", + "name": "59306a29e4bbd510dc24e5f9", + "properties": { + "displayName": "tag1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetTenantAccess.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetTenantAccess.json new file mode 100644 index 000000000000..cbd349461814 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetTenantAccess.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "accessName": "access" + }, + "responses": { + "200": { + "body": { + "id": "5600b59375ff190048030003", + "enabled": true + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetUser.json new file mode 100644 index 000000000000..c5d2b3eba0c6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementGetUser.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512a88c680b" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/5931a75ae4bbd512a88c680b", + "type": "Microsoft.ApiManagement/service/users", + "name": "5931a75ae4bbd512a88c680b", + "properties": { + "firstName": "foo", + "lastName": "bar", + "email": "foobar@outlook.com", + "state": "active", + "registrationDate": "2017-06-02T17:58:50.357Z", + "identities": [ + { + "provider": "Microsoft", + "id": "*************" + } + ] + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApi.json new file mode 100644 index 000000000000..2ad4855c35a9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApi.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "57d1f7558aa04f15146d9d8a" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiDiagnostic.json new file mode 100644 index 000000000000..11a65682f6c7 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiDiagnostic.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "diagnosticId": "applicationinsights", + "apiId": "57d1f7558aa04f15146d9d8a" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiIssue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiIssue.json new file mode 100644 index 000000000000..a50498b45d67 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiIssue.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "issueId": "57d2ef278aa04f0ad01d6cdc" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiIssueAttachment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiIssueAttachment.json new file mode 100644 index 000000000000..1c1eb8255a29 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiIssueAttachment.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "attachmentId": "57d2ef278aa04f0888cba3f3" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiIssueComment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiIssueComment.json new file mode 100644 index 000000000000..e0ac74b4ee17 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiIssueComment.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "commentId": "599e29ab193c3c0bd0b3e2fb" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiOperation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiOperation.json new file mode 100644 index 000000000000..bc5fd2917911 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiOperation.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "operationId": "57d2ef278aa04f0ad01d6cdc" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiOperationPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiOperationPolicy.json new file mode 100644 index 000000000000..1b8c75575883 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiOperationPolicy.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "5600b539c53f5b0062040001", + "operationId": "5600b53ac53f5b0062080006", + "policyId": "policy" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiOperationTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiOperationTag.json new file mode 100644 index 000000000000..0baa2ade393a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiOperationTag.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "59d6bb8f1f7fab13dc67ec9b", + "operationId": "59d6bb8f1f7fab13dc67ec9a", + "tagId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "headers": { + "Etag": "AAAAAAAACCI=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiPolicy.json new file mode 100644 index 000000000000..821c13e2587b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiPolicy.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "57d1f7558aa04f15146d9d8a", + "policyId": "policy" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiRelease.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiRelease.json new file mode 100644 index 000000000000..e48f01fb5cdb --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiRelease.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "a1", + "releaseId": "5a7cb545298324c53224a799" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiSchema.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiSchema.json new file mode 100644 index 000000000000..3402480a5603 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiSchema.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "57d1f7558aa04f15146d9d8a", + "schemaId": "ec12520d-9d48-4e7b-8f39-698ca2ac63f1" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiTag.json new file mode 100644 index 000000000000..a1edf2c77e33 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiTag.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "59d6bb8f1f7fab13dc67ec9b", + "tagId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "headers": { + "Etag": "AAAAAAAACCI=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiTagDescription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiTagDescription.json new file mode 100644 index 000000000000..940163715158 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiTagDescription.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "59d6bb8f1f7fab13dc67ec9b", + "tagDescriptionId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "headers": { + "Etag": "AAAAAAAACCI=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiVersionSet.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiVersionSet.json new file mode 100644 index 000000000000..1f44cbe42d10 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadApiVersionSet.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "versionSetId": "vs1" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadAuthorizationServer.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadAuthorizationServer.json new file mode 100644 index 000000000000..aa343eeb3f4d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadAuthorizationServer.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "authsid": "newauthServer2" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadBackend.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadBackend.json new file mode 100644 index 000000000000..a3de5ad832af --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadBackend.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "backendId": "sfbackend" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadCache.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadCache.json new file mode 100644 index 000000000000..97d10de5262b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadCache.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "cacheId": "default" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadCertificate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadCertificate.json new file mode 100644 index 000000000000..d98d73ec1b9a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadCertificate.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "certificateId": "templateCert1" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadDelegationSettings.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadDelegationSettings.json new file mode 100644 index 000000000000..eb8310f6d40a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadDelegationSettings.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadDiagnostic.json new file mode 100644 index 000000000000..cf30eb3d4956 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadDiagnostic.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "diagnosticId": "applicationinsights" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadEmailTemplate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadEmailTemplate.json new file mode 100644 index 000000000000..fc4d1b3c3d30 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadEmailTemplate.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "templateName": "newIssueNotificationMessage" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadGateway.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadGateway.json new file mode 100644 index 000000000000..636f39b48033 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadGateway.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "mygateway" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadGatewayApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadGatewayApi.json new file mode 100644 index 000000000000..530f7473ed0a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadGatewayApi.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "gw1", + "apiId": "api1" + }, + "responses": { + "200": { + "headers": { + "Etag": "AAAAAAAACCI=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadGatewayHostnameConfiguration.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadGatewayHostnameConfiguration.json new file mode 100644 index 000000000000..1ad3d4841a4f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadGatewayHostnameConfiguration.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "gw1", + "hcId": "default" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadGroup.json new file mode 100644 index 000000000000..8e845b6e0997 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadGroup.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "groupId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadGroupUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadGroupUser.json new file mode 100644 index 000000000000..74fe35bf3e40 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadGroupUser.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "groupId": "59306a29e4bbd510dc24e5f9", + "userId": "5931a75ae4bbd512a88c680b" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadIdentityProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadIdentityProvider.json new file mode 100644 index 000000000000..c2ef069078ea --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadIdentityProvider.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "identityProviderName": "aadB2C" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadLogger.json new file mode 100644 index 000000000000..80efc0033cc3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadLogger.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "loggerId": "templateLogger" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadNamedValue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadNamedValue.json new file mode 100644 index 000000000000..bfb9d05aaee3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadNamedValue.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "namedValueId": "testarmTemplateproperties2" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadNotificationRecipientEmail.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadNotificationRecipientEmail.json new file mode 100644 index 000000000000..1e2dbec7d10f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadNotificationRecipientEmail.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage", + "email": "contoso@live.com" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadNotificationRecipientUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadNotificationRecipientUser.json new file mode 100644 index 000000000000..921b850d632f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadNotificationRecipientUser.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage", + "userId": "576823d0a40f7e74ec07d642" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadOpenIdConnectProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadOpenIdConnectProvider.json new file mode 100644 index 000000000000..2d3659fa2ff6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadOpenIdConnectProvider.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "opid": "templateOpenIdConnect2" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadPolicy.json new file mode 100644 index 000000000000..553063cd50d1 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadPolicy.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "policyId": "policy" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadProduct.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadProduct.json new file mode 100644 index 000000000000..40851b9051b8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadProduct.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "productId": "unlimited" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadProductApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadProductApi.json new file mode 100644 index 000000000000..cd3f39a32c4f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadProductApi.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "productId": "5931a75ae4bbd512a88c680b", + "apiId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadProductGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadProductGroup.json new file mode 100644 index 000000000000..d233e28a7586 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadProductGroup.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "productId": "5931a75ae4bbd512a88c680b", + "groupId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadProductPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadProductPolicy.json new file mode 100644 index 000000000000..da2b7e528d92 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadProductPolicy.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "productId": "unlimited", + "policyId": "policy" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadProductTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadProductTag.json new file mode 100644 index 000000000000..dfc468e7d084 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadProductTag.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "productId": "59306a29e4bbd510dc24e5f8", + "tagId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "headers": { + "Etag": "AAAAAAAACCI=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadSignInSettings.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadSignInSettings.json new file mode 100644 index 000000000000..eb8310f6d40a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadSignInSettings.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadSignUpSettings.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadSignUpSettings.json new file mode 100644 index 000000000000..eb8310f6d40a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadSignUpSettings.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadSubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadSubscription.json new file mode 100644 index 000000000000..4e893def9057 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadSubscription.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "sid": "5931a769d8d14f0ad8ce13b8" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadTag.json new file mode 100644 index 000000000000..cf2c6301bf28 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadTag.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "tagId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "headers": { + "Etag": "AAAAAAAACCI=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadTenantAccess.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadTenantAccess.json new file mode 100644 index 000000000000..f7d3684dd649 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadTenantAccess.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "accessName": "access" + }, + "responses": { + "200": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadUser.json new file mode 100644 index 000000000000..f1e476d367a0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementHeadUser.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512a88c680b" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiDiagnostics.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiDiagnostics.json new file mode 100644 index 000000000000..a84a00b7c5f8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiDiagnostics.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "echo-api" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api/diagnostics/applicationinsights", + "type": "Microsoft.ApiManagement/service/apis/diagnostics", + "name": "applicationinsights", + "properties": { + "alwaysLog": "allErrors", + "httpCorrelationProtocol": "Legacy", + "logClientIp": true, + "loggerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/aisamplingtest", + "sampling": { + "samplingType": "fixed", + "percentage": 100 + }, + "frontend": { + "request": { + "headers": [], + "body": { + "bytes": 100 + } + }, + "response": { + "headers": [], + "body": { + "bytes": 100 + } + } + }, + "backend": { + "request": { + "headers": [], + "body": { + "bytes": 100 + } + }, + "response": { + "headers": [], + "body": { + "bytes": 100 + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiIssueAttachments.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiIssueAttachments.json new file mode 100644 index 000000000000..9d9e1e0590c4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiIssueAttachments.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "57d1f7558aa04f15146d9d8a", + "issueId": "57d2ef278aa04f0ad01d6cdc" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc/attachments/57d2ef278aa04f0888cba3f3", + "type": "Microsoft.ApiManagement/service/apis/issues/attachments", + "name": "57d2ef278aa04f0888cba3f3", + "properties": { + "title": "Issue attachment.", + "contentFormat": "link", + "content": "https://.../image.jpg" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiIssueComments.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiIssueComments.json new file mode 100644 index 000000000000..0cf4c4078801 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiIssueComments.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "57d1f7558aa04f15146d9d8a", + "issueId": "57d2ef278aa04f0ad01d6cdc" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc/comments/599e29ab193c3c0bd0b3e2fb", + "type": "Microsoft.ApiManagement/service/apis/issues/comments", + "name": "599e29ab193c3c0bd0b3e2fb", + "properties": { + "text": "Issue comment.", + "createdDate": "2018-02-01T22:21:20.467Z", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiIssues.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiIssues.json new file mode 100644 index 000000000000..c0934b462135 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiIssues.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "57d1f7558aa04f15146d9d8a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc", + "type": "Microsoft.ApiManagement/service/apis/issues", + "name": "57d2ef278aa04f0ad01d6cdc", + "properties": { + "title": "New API issue", + "description": "New API issue description", + "createdDate": "2018-02-01T22:21:20.467Z", + "state": "open", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1", + "apiId": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiOperationPolicies.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiOperationPolicies.json new file mode 100644 index 000000000000..0be1d60e8e0e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiOperationPolicies.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "599e2953193c3c0bd0b3e2fa", + "operationId": "599e29ab193c3c0bd0b3e2fb" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/599e2953193c3c0bd0b3e2fa/operations/599e29ab193c3c0bd0b3e2fb/policies/policy", + "type": "Microsoft.ApiManagement/service/apis/operations/policies", + "name": "policy", + "properties": { + "value": "\r\n\r\n \r\n \r\n \r\n \r\n xxx\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiOperationTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiOperationTags.json new file mode 100644 index 000000000000..a1e0878db57e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiOperationTags.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "operationId": "57d2ef278aa04f0888cba3f6" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/5600b539c53f5b0062060002", + "type": "Microsoft.ApiManagement/service/tags", + "name": "5600b539c53f5b0062060002", + "properties": { + "displayName": "tag1" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiOperations.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiOperations.json new file mode 100644 index 000000000000..5c1c3f03026c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiOperations.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "operationId": "57d2ef278aa04f0ad01d6cdc" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d2ef278aa04f0888cba3f3/operations/57d2ef278aa04f0ad01d6cdc", + "type": "Microsoft.ApiManagement/service/apis/operations", + "name": "57d2ef278aa04f0ad01d6cdc", + "properties": { + "displayName": "CancelOrder", + "method": "POST", + "urlTemplate": "/?soapAction=http://tempuri.org/IFazioService/CancelOrder" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d2ef278aa04f0888cba3f3/operations/57d2ef278aa04f0ad01d6cda", + "type": "Microsoft.ApiManagement/service/apis/operations", + "name": "57d2ef278aa04f0ad01d6cda", + "properties": { + "displayName": "GetMostRecentOrder", + "method": "POST", + "urlTemplate": "/?soapAction=http://tempuri.org/IFazioService/GetMostRecentOrder" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d2ef278aa04f0888cba3f3/operations/57d2ef278aa04f0ad01d6cd9", + "type": "Microsoft.ApiManagement/service/apis/operations", + "name": "57d2ef278aa04f0ad01d6cd9", + "properties": { + "displayName": "GetOpenOrders", + "method": "POST", + "urlTemplate": "/?soapAction=http://tempuri.org/IFazioService/GetOpenOrders" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d2ef278aa04f0888cba3f3/operations/57d2ef278aa04f0ad01d6cdb", + "type": "Microsoft.ApiManagement/service/apis/operations", + "name": "57d2ef278aa04f0ad01d6cdb", + "properties": { + "displayName": "GetOrder", + "method": "POST", + "urlTemplate": "/?soapAction=http://tempuri.org/IFazioService/GetOrder" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d2ef278aa04f0888cba3f3/operations/57d2ef278aa04f0ad01d6cd8", + "type": "Microsoft.ApiManagement/service/apis/operations", + "name": "57d2ef278aa04f0ad01d6cd8", + "properties": { + "displayName": "submitOrder", + "method": "POST", + "urlTemplate": "/?soapAction=http://tempuri.org/IFazioService/submitOrder" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiOperationsByTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiOperationsByTags.json new file mode 100644 index 000000000000..f7a21353d70b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiOperationsByTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "a1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "tag": { + "id": "/tags/apitag123", + "name": "awesomeTag" + }, + "operation": { + "id": "/apis/echo-api/operations/create-resource", + "apiName": "Echo API", + "apiRevision": "1", + "name": "Create resource", + "method": "POST", + "urlTemplate": "/resource", + "description": "A demonstration of a POST call based on the echo backend above. The request body is expected to contain JSON-formatted data (see example below). A policy is used to automatically transform any request sent in JSON directly to XML. In a real-world scenario this could be used to enable modern clients to speak to a legacy backend." + } + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiPolicies.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiPolicies.json new file mode 100644 index 000000000000..c00bfbbfb3d3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiPolicies.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "5600b59475ff190048040001" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5600b59475ff190048040001/policies/policy", + "type": "Microsoft.ApiManagement/service/apis/policies", + "name": "policy", + "properties": { + "value": "\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n@{\r\n\tRandom Random = new Random();\r\n\t\t\t\tconst string Chars = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz \"; \r\n return string.Join(\",\", DateTime.UtcNow, new string(\r\n Enumerable.Repeat(Chars, Random.Next(2150400))\r\n .Select(s => s[Random.Next(s.Length)])\r\n .ToArray()));\r\n } \r\n \r\n \r\n \r\n" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiProducts.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiProducts.json new file mode 100644 index 000000000000..ed2144c69ef7 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiProducts.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b539c53f5b0062060002", + "type": "Microsoft.ApiManagement/service/apis/products", + "name": "5600b539c53f5b0062060002", + "properties": { + "displayName": "Unlimited", + "description": "Subscribers have completely unlimited access to the API. Administrator approval is required.", + "subscriptionRequired": true, + "approvalRequired": true, + "subscriptionsLimit": 1, + "state": "published" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiReleases.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiReleases.json new file mode 100644 index 000000000000..9327f0e110f9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiReleases.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "a1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1/releases/5a7cb545298324c53224a799", + "type": "Microsoft.ApiManagement/service/apis/releases", + "name": "5a7cb545298324c53224a799", + "properties": { + "createdDateTime": "2018-02-08T20:38:29.173Z", + "updatedDateTime": "2018-02-08T20:38:29.173Z", + "notes": "yahoo" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiRevisions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiRevisions.json new file mode 100644 index 000000000000..c45a5df12434 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiRevisions.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "apiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1;rev=1", + "apiRevision": "1", + "createdDateTime": "2018-02-01T22:21:20.467Z", + "updatedDateTime": "2018-02-01T22:21:20.467Z", + "isOnline": true, + "isCurrent": true + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiSchemas.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiSchemas.json new file mode 100644 index 000000000000..97e3c5312f65 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiSchemas.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "59d5b28d1f7fab116c282650" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/59d5b28d1f7fab116c282650/schemas/59d5b28e1f7fab116402044e", + "type": "Microsoft.ApiManagement/service/apis/schemas", + "name": "59d5b28e1f7fab116402044e", + "properties": { + "contentType": "application/vnd.ms-azure-apim.swagger.definitions+json" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiTagDescriptions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiTagDescriptions.json new file mode 100644 index 000000000000..0e7c0048c4b8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiTagDescriptions.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tagDescriptions/5600b539c53f5b0062060002", + "type": "Microsoft.ApiManagement/service/tags", + "name": "5600b539c53f5b0062060002", + "properties": { + "tagId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/5600b539c53f5b0062060002", + "displayName": "tag1", + "externalDocsDescription": "some additional info", + "externalDocsUrl": "http://some_url.com" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiTags.json new file mode 100644 index 000000000000..b9fbbec3d0fd --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiTags.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/5600b539c53f5b0062060002", + "type": "Microsoft.ApiManagement/service/tags", + "name": "5600b539c53f5b0062060002", + "properties": { + "displayName": "tag1" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiVersionSets.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiVersionSets.json new file mode 100644 index 000000000000..770ac9ccfe6e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApiVersionSets.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/vs1", + "type": "Microsoft.ApiManagement/service/api-version-sets", + "name": "vs1", + "properties": { + "displayName": "api set 1", + "versioningScheme": "Segment", + "description": "Version configuration" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/vs2", + "type": "Microsoft.ApiManagement/service/api-version-sets", + "name": "vs2", + "properties": { + "displayName": "api set 2", + "versioningScheme": "Query", + "description": "Version configuration 2" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApis.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApis.json new file mode 100644 index 000000000000..e119bae872ac --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApis.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1", + "type": "Microsoft.ApiManagement/service/apis", + "name": "a1", + "properties": { + "displayName": "api1", + "apiRevision": "1", + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "api1", + "protocols": [ + "https" + ], + "isCurrent": true, + "apiVersionSetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/c48f96c9-1385-4e2d-b410-5ab591ce0fc4" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5a73933b8f27f7cc82a2d533", + "type": "Microsoft.ApiManagement/service/apis", + "name": "5a73933b8f27f7cc82a2d533", + "properties": { + "displayName": "api1", + "apiRevision": "1", + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "api1", + "protocols": [ + "https" + ], + "isCurrent": true, + "apiVersion": "v1", + "apiVersionSetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/c48f96c9-1385-4e2d-b410-5ab591ce0fc4" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api", + "type": "Microsoft.ApiManagement/service/apis", + "name": "echo-api", + "properties": { + "displayName": "Echo API", + "apiRevision": "1", + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "echo", + "protocols": [ + "https" + ], + "isCurrent": true + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5a7390baa5816a110435aee0", + "type": "Microsoft.ApiManagement/service/apis", + "name": "5a7390baa5816a110435aee0", + "properties": { + "displayName": "Swagger Petstore Extensive", + "apiRevision": "1", + "description": "A sample API that uses a petstore as an example to demonstrate features in the swagger-2.0 specification", + "serviceUrl": "http://petstore.swagger.wordnik.com/api", + "path": "vvv", + "protocols": [ + "https" + ], + "isCurrent": true + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApisByTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApisByTags.json new file mode 100644 index 000000000000..156c5c2e1e58 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListApisByTags.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "tag": { + "id": "/tags/apitag123", + "name": "awesomeTag" + }, + "api": { + "id": "/apis/echo-api", + "name": "Echo API", + "apiRevision": "1", + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "echo", + "isCurrent": true + } + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListAuthorizationServers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListAuthorizationServers.json new file mode 100644 index 000000000000..d481cddc024a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListAuthorizationServers.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/authorizationServers/newauthServer", + "type": "Microsoft.ApiManagement/service/authorizationServers", + "name": "newauthServer", + "properties": { + "displayName": "test2", + "description": "test server", + "clientRegistrationEndpoint": "https://www.contoso.com/apps", + "authorizationEndpoint": "https://www.contoso.com/oauth2/auth", + "authorizationMethods": [ + "GET" + ], + "tokenEndpoint": "https://www.contoso.com/oauth2/token", + "supportState": true, + "defaultScope": "read write", + "grantTypes": [ + "authorizationCode", + "implicit" + ], + "bearerTokenSendingMethods": [ + "authorizationHeader" + ], + "clientId": "1", + "resourceOwnerUsername": "un", + "resourceOwnerPassword": "pwd" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/authorizationServers/newauthServer2", + "type": "Microsoft.ApiManagement/service/authorizationServers", + "name": "newauthServer2", + "properties": { + "displayName": "test3", + "description": "test server", + "clientRegistrationEndpoint": "https://www.contoso.com/apps", + "authorizationEndpoint": "https://www.contoso.com/oauth2/auth", + "authorizationMethods": [ + "GET" + ], + "clientAuthenticationMethod": [ + "Basic" + ], + "tokenEndpoint": "https://www.contoso.com/oauth2/token", + "supportState": true, + "defaultScope": "read write", + "grantTypes": [ + "authorizationCode", + "implicit" + ], + "bearerTokenSendingMethods": [ + "authorizationHeader" + ], + "clientId": "1", + "resourceOwnerUsername": "un", + "resourceOwnerPassword": "pwd" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListBackends.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListBackends.json new file mode 100644 index 000000000000..8a4364a87e8e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListBackends.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/backends/proxybackend", + "type": "Microsoft.ApiManagement/service/backends", + "name": "proxybackend", + "properties": { + "description": "description5308", + "url": "https://backendname2644/", + "protocol": "http", + "credentials": { + "query": { + "sv": [ + "xx", + "bb", + "cc" + ] + }, + "header": { + "x-my-1": [ + "val1", + "val2" + ] + }, + "authorization": { + "scheme": "Basic", + "parameter": "opensesma" + } + }, + "proxy": { + "url": "http://192.168.1.1:8080", + "username": "Contoso\\admin", + "password": "opensesame" + }, + "tls": { + "validateCertificateChain": false, + "validateCertificateName": false + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/backends/sfbackend", + "type": "Microsoft.ApiManagement/service/backends", + "name": "sfbackend", + "properties": { + "description": "Service Fabric Test App 1", + "url": "fabric:/mytestapp/mytestservice", + "protocol": "http", + "properties": { + "serviceFabricCluster": { + "managementEndpoints": [ + "https://somecluster.com" + ], + "clientCertificatethumbprint": "EBA029198AA3E76EF0D70482626E5BCF148594A6", + "serverX509Names": [ + { + "name": "ServerCommonName1", + "issuerCertificateThumbprint": "IssuerCertificateThumbprint1" + } + ], + "maxPartitionResolutionRetries": 5 + } + } + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListCaches.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListCaches.json new file mode 100644 index 000000000000..f7d65ce93ccb --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListCaches.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "serviceName": "apimService1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/caches/westindia", + "type": "Microsoft.ApiManagement/service/caches", + "name": "westindia", + "properties": { + "connectionString": "{{5c68d535a40f7e61103cd285}}}", + "description": "Redis cache instances in West India", + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/contoso5" + } + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListCertificates.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListCertificates.json new file mode 100644 index 000000000000..dccacd4a0e02 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListCertificates.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "serviceName": "apimService1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/kjoshiarmtemplateCert1", + "type": "Microsoft.ApiManagement/service/certificates", + "name": "templateCert1", + "properties": { + "subject": "CN=mutual-authcert", + "thumbprint": "EBA************************48594A6", + "expirationDate": "2017-04-23T17:03:41Z" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListDiagnostics.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListDiagnostics.json new file mode 100644 index 000000000000..08381a392189 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListDiagnostics.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/diagnostics/applicationinsights", + "type": "Microsoft.ApiManagement/service/diagnostics", + "name": "applicationinsights", + "properties": { + "alwaysLog": "allErrors", + "httpCorrelationProtocol": "Legacy", + "verbosity": "information", + "logClientIp": true, + "loggerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/aisamplingtest", + "sampling": { + "samplingType": "fixed", + "percentage": 100 + }, + "frontend": { + "request": { + "headers": [], + "body": { + "bytes": 0 + } + }, + "response": { + "headers": [], + "body": { + "bytes": 0 + } + } + }, + "backend": { + "request": { + "headers": [], + "body": { + "bytes": 0 + } + }, + "response": { + "headers": [], + "body": { + "bytes": 0 + } + } + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/diagnostics/azuremonitor", + "type": "Microsoft.ApiManagement/service/diagnostics", + "name": "azuremonitor", + "properties": { + "logClientIp": true, + "loggerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/azuremonitor", + "sampling": { + "samplingType": "fixed", + "percentage": 100 + } + } + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListEmailTemplates.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListEmailTemplates.json new file mode 100644 index 000000000000..543256edd047 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListEmailTemplates.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "serviceName": "apimService1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/templates/ApplicationApprovedNotificationMessage", + "type": "Microsoft.ApiManagement/service/templates", + "name": "ApplicationApprovedNotificationMessage", + "properties": { + "subject": "Your application $AppName is published in the application gallery", + "body": "\r\n\r\n \r\n \r\n

Dear $DevFirstName $DevLastName,

\r\n

\r\n We are happy to let you know that your request to publish the $AppName application in the application gallery has been approved. Your application has been published and can be viewed here.\r\n

\r\n

Best,

\r\n

The $OrganizationName API Team

\r\n \r\n", + "title": "Application gallery submission approved", + "description": "Developers who submitted their application for publication in the application gallery on the developer portal receive this email after their submission is approved.", + "isDefault": true, + "parameters": [ + { + "name": "AppId", + "title": "Application id" + }, + { + "name": "AppName", + "title": "Application name" + }, + { + "name": "DevFirstName", + "title": "Developer first name" + }, + { + "name": "DevLastName", + "title": "Developer last name" + }, + { + "name": "OrganizationName", + "title": "Organization name" + }, + { + "name": "DevPortalUrl", + "title": "Developer portal URL" + } + ] + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListGatewayApis.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListGatewayApis.json new file mode 100644 index 000000000000..7ec98f57a178 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListGatewayApis.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "gw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/apis/57681820a40f7eb6c49f6aca", + "type": "Microsoft.ApiManagement/service/gateways/apis", + "name": "57681820a40f7eb6c49f6aca", + "properties": { + "displayName": "api_57681820a40f7eb6c49f6acb", + "apiRevision": "1", + "description": "description_57681820a40f7eb6c49f6acc", + "serviceUrl": "http://contoso/57681820a40f7eb6c49f6acd", + "path": "suffix_57681820a40f7eb6c49f6ace", + "protocols": [ + "https" + ], + "isCurrent": true + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListGatewayHostnameConfigurations.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListGatewayHostnameConfigurations.json new file mode 100644 index 000000000000..a8350e469688 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListGatewayHostnameConfigurations.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "gw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/hostnameConfigurations/default", + "type": "Microsoft.ApiManagement/service/gateways/hostnameConfigurations", + "name": "default", + "properties": { + "hostname": "*", + "certificateId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/cert1", + "negotiateClientCertificate": false + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/hostnameConfigurations/hostname1", + "type": "Microsoft.ApiManagement/service/gateways/hostnameConfigurations", + "name": "default", + "properties": { + "hostname": "foo.bar.com", + "certificateId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/cert2", + "negotiateClientCertificate": true + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListGateways.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListGateways.json new file mode 100644 index 000000000000..3152a0f24311 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListGateways.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1", + "type": "Microsoft.ApiManagement/service/gateways", + "name": "a1", + "properties": { + "description": "my gateway 1", + "locationData": { + "name": "my location 1" + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw2", + "type": "Microsoft.ApiManagement/service/gateways", + "name": "5a73933b8f27f7cc82a2d533", + "properties": { + "description": "my gateway 2", + "locationData": { + "name": "my location 2" + } + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListGroupUsers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListGroupUsers.json new file mode 100644 index 000000000000..d0699227a70d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListGroupUsers.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "groupId": "57d2ef278aa04f0888cba3f3" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/kjoshiarmTemplateUser1", + "type": "Microsoft.ApiManagement/service/groups/users", + "name": "armTemplateUser1", + "properties": { + "firstName": "user1", + "lastName": "lastname1", + "email": "user1@live.com", + "state": "active", + "registrationDate": "2017-05-31T18:54:41.447Z", + "note": "note for user 1", + "identities": [ + { + "provider": "Basic", + "id": "user1@live.com" + } + ] + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListGroups.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListGroups.json new file mode 100644 index 000000000000..01d667feac40 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListGroups.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/5600b59375ff190048020001", + "type": "Microsoft.ApiManagement/service/groups", + "name": "5600b59375ff190048020001", + "properties": { + "displayName": "Administrators", + "description": "Administrators is a built-in group. Its membership is managed by the system. Microsoft Azure subscription administrators fall into this group.", + "builtIn": true, + "type": "system" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/59306a29e4bbd510dc24e5f9", + "type": "Microsoft.ApiManagement/service/groups", + "name": "59306a29e4bbd510dc24e5f9", + "properties": { + "displayName": "AwesomeGroup (samiraad.onmicrosoft.com)", + "description": "awesome group of people", + "builtIn": false, + "type": "external", + "externalId": "aad://samiraad.onmicrosoft.com/groups/3773adf4-032e-4d25-9988-eaff9ca72eca" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/5600b59375ff190048020002", + "type": "Microsoft.ApiManagement/service/groups", + "name": "5600b59375ff190048020002", + "properties": { + "displayName": "Developers", + "description": "Developers is a built-in group. Its membership is managed by the system. Signed-in users fall into this group.", + "builtIn": true, + "type": "system" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/5600b59375ff190048020003", + "type": "Microsoft.ApiManagement/service/groups", + "name": "5600b59375ff190048020003", + "properties": { + "displayName": "Guests", + "description": "Guests is a built-in group. Its membership is managed by the system. Unauthenticated users visiting the developer portal fall into this group.", + "builtIn": true, + "type": "system" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListIdentityProviders.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListIdentityProviders.json new file mode 100644 index 000000000000..68e2a72eb850 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListIdentityProviders.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/identityProviders/Google", + "type": "Microsoft.ApiManagement/service/identityProviders", + "name": "Google", + "properties": { + "clientId": "googleId", + "type": "google" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/identityProviders/Aad", + "type": "Microsoft.ApiManagement/service/identityProviders", + "name": "Aad", + "properties": { + "clientId": "aadapplicationid", + "type": "aad", + "allowedTenants": [ + "samiraad.onmicrosoft.com" + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/identityProviders/AadB2C", + "type": "Microsoft.ApiManagement/service/identityProviders", + "name": "AadB2C", + "properties": { + "clientId": "aadb2clientId", + "type": "aadB2C", + "allowedTenants": [ + "samirtestbc.onmicrosoft.com" + ], + "signupPolicyName": "B2C_1_Signup_Default", + "signinPolicyName": "B2C_1_Signin_Default" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListIssues.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListIssues.json new file mode 100644 index 000000000000..79d2867f6f35 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListIssues.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/issues/57d2ef278aa04f0ad01d6cdc", + "type": "Microsoft.ApiManagement/service/issues", + "name": "57d2ef278aa04f0ad01d6cdc", + "properties": { + "title": "New API issue", + "description": "New API issue description", + "createdDate": "2018-02-01T22:21:20.467Z", + "state": "open", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1", + "apiId": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListLoggers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListLoggers.json new file mode 100644 index 000000000000..ebd92cdde73f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListLoggers.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "serviceName": "apimService1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/buffered111", + "type": "Microsoft.ApiManagement/service/loggers", + "name": "buffered111", + "properties": { + "loggerType": "azureEventHub", + "description": "Sample description", + "credentials": { + "connectionString": "Endpoint=sb://apimaccounts.servicebus.windows.net/;SharedAccessKeyName=Send;SharedAccessKey=*******************h=****" + }, + "isBuffered": true, + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.EventHub/namespaces/apimaccounts" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/loggerId", + "type": "Microsoft.ApiManagement/service/loggers", + "name": "loggerId", + "properties": { + "loggerType": "azureEventHub", + "description": "adding a new logger", + "credentials": { + "name": "hydraeventhub", + "connectionString": "{{Logger-Credentials-59544ef2e4bbd50d9468c618}}" + }, + "isBuffered": true, + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.EventHub/namespaces/hydraeventhub-ns" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListNamedValues.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListNamedValues.json new file mode 100644 index 000000000000..5703f3a5b00d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListNamedValues.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/namedValues/592f1174cc83890dc4f32686", + "type": "Microsoft.ApiManagement/service/namedValues", + "name": "592f1174cc83890dc4f32686", + "properties": { + "displayName": "Logger-Credentials-592f1174cc83890dc4f32687", + "value": "propValue", + "secret": false + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/namedValues/testarmTemplateproperties2", + "type": "Microsoft.ApiManagement/service/namedValues", + "name": "testarmTemplateproperties2", + "properties": { + "displayName": "propName", + "tags": [ + "foo", + "bar" + ], + "secret": true + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListNotificationRecipientEmails.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListNotificationRecipientEmails.json new file mode 100644 index 000000000000..17b01ada5757 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListNotificationRecipientEmails.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/contoso@live.com", + "type": "Microsoft.ApiManagement/service/notifications/recipientEmails", + "name": "contoso@live.com", + "properties": { + "email": "contoso@live.com" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/foobar!live", + "type": "Microsoft.ApiManagement/service/notifications/recipientEmails", + "name": "foobar!live", + "properties": { + "email": "foobar!live" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/foobar@live.com", + "type": "Microsoft.ApiManagement/service/notifications/recipientEmails", + "name": "foobar@live.com", + "properties": { + "email": "foobar@live.com" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListNotificationRecipientUsers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListNotificationRecipientUsers.json new file mode 100644 index 000000000000..f6069ad3668b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListNotificationRecipientUsers.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientUsers/576823d0a40f7e74ec07d642", + "type": "Microsoft.ApiManagement/service/notifications/recipientUsers", + "name": "576823d0a40f7e74ec07d642", + "properties": { + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/576823d0a40f7e74ec07d642" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListNotifications.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListNotifications.json new file mode 100644 index 000000000000..3cf0f7224136 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListNotifications.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage", + "type": "Microsoft.ApiManagement/service/notifications", + "name": "RequestPublisherNotificationMessage", + "properties": { + "title": "Subscription requests (requiring approval)", + "description": "The following email recipients and users will receive email notifications about subscription requests for API products requiring approval.", + "recipients": { + "emails": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/contoso@live.com", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/foobar!live", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/foobar@live.com" + ], + "users": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/576823d0a40f7e74ec07d642" + ] + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/PurchasePublisherNotificationMessage", + "type": "Microsoft.ApiManagement/service/notifications", + "name": "PurchasePublisherNotificationMessage", + "properties": { + "title": "New subscriptions", + "description": "The following email recipients and users will receive email notifications about new API product subscriptions.", + "recipients": { + "emails": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/contoso@live.com" + ], + "users": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + ] + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/NewApplicationNotificationMessage", + "type": "Microsoft.ApiManagement/service/notifications", + "name": "NewApplicationNotificationMessage", + "properties": { + "title": "Application gallery requests", + "description": "The following email recipients and users will receive email notifications when new applications are submitted to the application gallery.", + "recipients": { + "emails": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/contoso@live.com" + ], + "users": [] + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/BCC", + "type": "Microsoft.ApiManagement/service/notifications", + "name": "BCC", + "properties": { + "title": "BCC", + "description": "The following recipients will receive blind carbon copies of all emails sent to developers.", + "recipients": { + "emails": [], + "users": [] + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/NewIssuePublisherNotificationMessage", + "type": "Microsoft.ApiManagement/service/notifications", + "name": "NewIssuePublisherNotificationMessage", + "properties": { + "title": "New issue or comment", + "description": "The following email recipients and users will receive email notifications when a new issue or comment is submitted on the developer portal.", + "recipients": { + "emails": [], + "users": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + ] + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/AccountClosedPublisher", + "type": "Microsoft.ApiManagement/service/notifications", + "name": "AccountClosedPublisher", + "properties": { + "title": "Close account message", + "description": "The following email recipients and users will receive email notifications when developer closes his account", + "recipients": { + "emails": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/contoso@live.com" + ], + "users": [] + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/QuotaLimitApproachingPublisherNotificationMessage", + "type": "Microsoft.ApiManagement/service/notifications", + "name": "QuotaLimitApproachingPublisherNotificationMessage", + "properties": { + "title": "Approaching subscription quota limit", + "description": "The following email recipients and users will receive email notifications when subscription usage gets close to usage quota.", + "recipients": { + "emails": [], + "users": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + ] + } + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListOpenIdConnectProviders.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListOpenIdConnectProviders.json new file mode 100644 index 000000000000..4b3f295a1f78 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListOpenIdConnectProviders.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "serviceName": "apimService1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/openidConnectProviders/templateOpenIdConnect2", + "type": "Microsoft.ApiManagement/service/openidconnectproviders", + "name": "templateOpenIdConnect2", + "properties": { + "displayName": "templateoidprovider2", + "description": "open id provider template2", + "metadataEndpoint": "https://oidprovider-template2.net", + "clientId": "oidprovidertemplate2" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListOperations.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListOperations.json new file mode 100644 index 000000000000..86e006f1bfb6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListOperations.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2019-12-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.ApiManagement/service/write", + "display": { + "provider": "Microsoft API Management", + "resource": "Service", + "operation": "Create a new instance of API Management Service", + "description": "Create a new instance of API Management Service" + } + }, + { + "name": "Microsoft.ApiManagement/service/read", + "display": { + "provider": "Microsoft API Management", + "resource": "Service", + "operation": "Read metadata for an API Management Service instance", + "description": "Read metadata for an API Management Service instance" + } + }, + { + "name": "Microsoft.ApiManagement/service/delete", + "display": { + "provider": "Microsoft API Management", + "resource": "Service", + "operation": "Delete API Management Service instance", + "description": "Delete API Management Service instance" + } + }, + { + "origin": "system", + "name": "Microsoft.ApiManagement/service/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft API Management", + "resource": "Service", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for API Management service" + } + }, + { + "name": "Microsoft.ApiManagement/service/tenant/operationResults/read", + "display": { + "provider": "Microsoft API Management", + "resource": "Results of async operations", + "operation": "Get operation results or Get operation result", + "description": "Get list of operation results or Get result of a specific operation" + } + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListPolicies.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListPolicies.json new file mode 100644 index 000000000000..a4fb164f0450 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListPolicies.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/policies/policy", + "type": "Microsoft.ApiManagement/service/policies", + "name": "policy", + "properties": { + "value": "\r\n\r\n \r\n \r\n \r\n \r\n \r\n" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListPolicyDescriptions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListPolicyDescriptions.json new file mode 100644 index 000000000000..28ee69a1b32f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListPolicyDescriptions.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "scope": "Api" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/policyDescriptions/authentication-basic", + "type": "Microsoft.ApiManagement/service/policyDescriptions", + "name": "authentication-basic", + "properties": { + "description": "Authenticate with the backend service using Basic authentication. Use in the inbound section at API scope.", + "scope": 268435471 + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/policyDescriptions/authentication-certificate", + "type": "Microsoft.ApiManagement/service/policyDescriptions", + "name": "authentication-certificate", + "properties": { + "description": "Authenticate with the backend service using a client certificate. Use in the inbound section at API scope.", + "scope": 268435471 + } + } + ], + "count": 2 + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListProductApis.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListProductApis.json new file mode 100644 index 000000000000..b8434e9b6b6b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListProductApis.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "productId": "5768181ea40f7eb6c49f6ac7" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5768181ea40f7eb6c49f6ac7/apis/57681820a40f7eb6c49f6aca", + "type": "Microsoft.ApiManagement/service/products/apis", + "name": "57681820a40f7eb6c49f6aca", + "properties": { + "displayName": "api_57681820a40f7eb6c49f6acb", + "apiRevision": "1", + "description": "description_57681820a40f7eb6c49f6acc", + "serviceUrl": "http://contoso/57681820a40f7eb6c49f6acd", + "path": "suffix_57681820a40f7eb6c49f6ace", + "protocols": [ + "https" + ], + "isCurrent": true + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListProductGroups.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListProductGroups.json new file mode 100644 index 000000000000..ef7c02676ebd --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListProductGroups.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "productId": "5600b57e7e8880006a060002" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b57e7e8880006a060002/groups/5600b57e7e8880006a020001", + "type": "Microsoft.ApiManagement/service/products/groups", + "name": "5600b57e7e8880006a020001", + "properties": { + "displayName": "Administrators", + "description": "Administrators is a built-in group. Its membership is managed by the system. Microsoft Azure subscription administrators fall into this group.", + "builtIn": true, + "type": "system" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b57e7e8880006a060002/groups/5600b57e7e8880006a020002", + "type": "Microsoft.ApiManagement/service/products/groups", + "name": "5600b57e7e8880006a020002", + "properties": { + "displayName": "Developers", + "description": "Developers is a built-in group. Its membership is managed by the system. Signed-in users fall into this group.", + "builtIn": true, + "type": "system" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b57e7e8880006a060002/groups/5600b57e7e8880006a020003", + "type": "Microsoft.ApiManagement/service/products/groups", + "name": "5600b57e7e8880006a020003", + "properties": { + "displayName": "Guests", + "description": "Guests is a built-in group. Its membership is managed by the system. Unauthenticated users visiting the developer portal fall into this group.", + "builtIn": true, + "type": "system" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListProductPolicies.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListProductPolicies.json new file mode 100644 index 000000000000..6c0a5da3f3f1 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListProductPolicies.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "productId": "armTemplateProduct4" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/armTemplateProduct4/policies/policy", + "type": "Microsoft.ApiManagement/service/products/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListProductSubscriptions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListProductSubscriptions.json new file mode 100644 index 000000000000..2ab995fe274a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListProductSubscriptions.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "productId": "5600b57e7e8880006a060002" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b57e7e8880006a060002/subscriptions/5600b57e7e8880006a070002", + "type": "Microsoft.ApiManagement/service/products/subscriptions", + "name": "5600b57e7e8880006a070002", + "properties": { + "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1", + "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b57e7e8880006a060002", + "state": "active", + "createdDate": "2015-09-22T01:57:18.723Z" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListProductTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListProductTags.json new file mode 100644 index 000000000000..e2639edbb958 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListProductTags.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "productId": "57d2ef278aa04f0888cba3f1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/5600b539c53f5b0062060002", + "type": "Microsoft.ApiManagement/service/tags", + "name": "5600b539c53f5b0062060002", + "properties": { + "displayName": "tag1" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListProducts.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListProducts.json new file mode 100644 index 000000000000..05b9bc2460ea --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListProducts.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/kjoshiarmtemplateCert1", + "type": "Microsoft.ApiManagement/service/products", + "name": "kjoshiarmtemplateCert1", + "properties": { + "displayName": "Dev", + "description": "Development Product", + "subscriptionRequired": false, + "state": "published" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/starter", + "type": "Microsoft.ApiManagement/service/products", + "name": "starter", + "properties": { + "displayName": "Starter", + "description": "Subscribers will be able to run 5 calls/minute up to a maximum of 100 calls/week.", + "terms": "", + "subscriptionRequired": true, + "approvalRequired": false, + "subscriptionsLimit": 1, + "state": "published" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/unlimited", + "type": "Microsoft.ApiManagement/service/products", + "name": "unlimited", + "properties": { + "displayName": "Unlimited", + "description": "Subscribers have completely unlimited access to the API. Administrator approval is required.", + "subscriptionRequired": true, + "approvalRequired": true, + "subscriptionsLimit": 1, + "state": "published" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListProductsByTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListProductsByTags.json new file mode 100644 index 000000000000..4172bd14c11a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListProductsByTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "tag": { + "id": "/tags/apitag123", + "name": "awesomeTag" + }, + "product": { + "id": "/products/starter", + "name": "Starter", + "description": "Subscribers will be able to run 5 calls/minute up to a maximum of 100 calls/week.", + "terms": "", + "subscriptionRequired": true, + "approvalRequired": false, + "subscriptionsLimit": 1, + "state": "published" + } + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListRegions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListRegions.json new file mode 100644 index 000000000000..daf66b7c5f71 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListRegions.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "West US", + "isMasterRegion": true, + "isDeleted": false + } + ], + "count": 1, + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListSKUs-Consumption.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListSKUs-Consumption.json new file mode 100644 index 000000000000..9b9b18211760 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListSKUs-Consumption.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2019-12-01-preview", + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "Microsoft.ApiManagement/service", + "sku": { + "name": "Consumption" + }, + "capacity": null + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListSKUs-Dedicated.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListSKUs-Dedicated.json new file mode 100644 index 000000000000..5ab52f797e16 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListSKUs-Dedicated.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2019-12-01-preview", + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "Microsoft.ApiManagement/service", + "sku": { + "name": "Developer" + }, + "capacity": { + "minimum": 1, + "maximum": 1, + "default": 1, + "scaleType": "none" + } + }, + { + "resourceType": "Microsoft.ApiManagement/service", + "sku": { + "name": "Basic" + }, + "capacity": { + "minimum": 1, + "maximum": 2, + "default": 1, + "scaleType": "manual" + } + }, + { + "resourceType": "Microsoft.ApiManagement/service", + "sku": { + "name": "Standard" + }, + "capacity": { + "minimum": 1, + "maximum": 4, + "default": 1, + "scaleType": "automatic" + } + }, + { + "resourceType": "Microsoft.ApiManagement/service", + "sku": { + "name": "Premium" + }, + "capacity": { + "minimum": 1, + "maximum": 10, + "default": 1, + "scaleType": "automatic" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListSecretsAuthorizationServer.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListSecretsAuthorizationServer.json new file mode 100644 index 000000000000..c9b93d234452 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListSecretsAuthorizationServer.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "authsid": "newauthServer2" + }, + "responses": { + "200": { + "body": { + "clientSecret": "2" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListSecretsIdentityProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListSecretsIdentityProvider.json new file mode 100644 index 000000000000..367b5f5c68ec --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListSecretsIdentityProvider.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "identityProviderName": "aadB2C" + }, + "responses": { + "200": { + "body": { + "clientSecret": "XXXXXXX" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListSecretsNamedValue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListSecretsNamedValue.json new file mode 100644 index 000000000000..b89eab4486d6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListSecretsNamedValue.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "namedValueId": "testarmTemplateproperties2" + }, + "responses": { + "200": { + "body": { + "value": "propValue" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListSecretsOpenIdConnectProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListSecretsOpenIdConnectProvider.json new file mode 100644 index 000000000000..f0a33e9a7c5b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListSecretsOpenIdConnectProvider.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "opid": "templateOpenIdConnect2" + }, + "responses": { + "200": { + "body": { + "clientSecret": "oidsecretproviderTemplate2" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListSecretsPortalSettingsValidationKey.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListSecretsPortalSettingsValidationKey.json new file mode 100644 index 000000000000..425030ae6837 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListSecretsPortalSettingsValidationKey.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "validationKey": "nVF7aKIvr9mV/RM5lOD0sYoi8ThXTRHQP7o66hvUmjCDkPKR3qxPu/otJcNciz2aQdqPuzJH3ECG4TU2yZjQ7Q==" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListSecretsSubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListSecretsSubscription.json new file mode 100644 index 000000000000..63213a32d493 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListSecretsSubscription.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "sid": "5931a769d8d14f0ad8ce13b8" + }, + "responses": { + "200": { + "body": { + "primaryKey": "6de0a3b2da204e459148d2f6785873f0", + "secondaryKey": "c6de00b451f64ea780db1eb8dcf30b62" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListSecretsTenantAccess.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListSecretsTenantAccess.json new file mode 100644 index 000000000000..2d4c685a094c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListSecretsTenantAccess.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "accessName": "access" + }, + "responses": { + "200": { + "body": { + "id": "5600b59375ff190048030003", + "primaryKey": "qr5nbjNoZkgtLojXgU+OA/ntYMgko3XPSVyt+ObwR1sqp2ZkM9tGhwxkeEz7bfAuPS5ss61b2S3ZrZmqa9v3Mw==", + "secondaryKey": "2dCJv1CasJl286SZiKxyBFDiIYCUdbwM1YrFNDcFMXCjCKbFzomrGkv+exAbnV5E3DEk91VP4jbeJ2eV/qtejA==", + "enabled": true + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListServiceBySubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListServiceBySubscription.json new file mode 100644 index 000000000000..d0c62ab45dc8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListServiceBySubscription.json @@ -0,0 +1,164 @@ +{ + "parameters": { + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService3", + "name": "apimService3", + "type": "Microsoft.ApiManagement/service", + "tags": {}, + "location": "West US", + "etag": "AAAAAAAXXAQ=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "contoso", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2017-05-27T15:33:55.5426123Z", + "gatewayUrl": "https://apimService3.azure-api.net", + "portalUrl": "https://apimService3.portal.azure-api.net", + "managementApiUrl": "https://apimService3.management.azure-api.net", + "scmUrl": "https://apimService3.scm.azure-api.net", + "hostnameConfigurations": [], + "publicIPAddresses": [ + "13.88.16.64" + ], + "additionalLocations": [ + { + "location": "West Europe", + "sku": { + "name": "Premium", + "capacity": 1 + }, + "publicIPAddresses": [ + "52.233.184.197" + ] + } + ], + "virtualNetworkType": "None" + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.ApiManagement/service/apimService2", + "name": "apimService2", + "type": "Microsoft.ApiManagement/service", + "tags": {}, + "location": "West US", + "etag": "AAAAAAAXW4U=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "MS", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2017-05-26T23:55:31.1405115Z", + "gatewayUrl": "https://apimService2.azure-api.net", + "portalUrl": "https://apimService2.portal.azure-api.net", + "managementApiUrl": "https://apimService2.management.azure-api.net", + "scmUrl": "https://apimService2.scm.azure-api.net", + "hostnameConfigurations": [], + "publicIPAddresses": [ + "13.64.237.151" + ], + "virtualNetworkType": "None" + }, + "sku": { + "name": "Developer", + "capacity": 1 + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService5", + "name": "apimService5", + "type": "Microsoft.ApiManagement/service", + "tags": {}, + "location": "West US", + "etag": "AAAAAAAXW5c=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "contoso", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2017-05-26T18:13:02.0196315Z", + "gatewayUrl": "https://apimService5.azure-api.net", + "portalUrl": "https://apimService5.portal.azure-api.net", + "managementApiUrl": "https://apimService5.management.azure-api.net", + "scmUrl": "https://apimService5.scm.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "proxytemplatehostname1.contoso.com", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "DE57B67BA63D21E925DA8BEFA436E6B7553A4C19", + "subject": "CN=proxytemplatehostname1.contoso.com" + } + }, + { + "type": "Proxy", + "hostName": "proxytemplatehostname2.contoso.com", + "negotiateClientCertificate": true, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "DE57B67BA63D21E925DA8BEFA436E6B7553A4C19", + "subject": "CN=proxytemplatehostname2.contoso.com" + } + }, + { + "type": "Proxy", + "hostName": "proxytemplatehostname3.azure-api.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "918D7785B926AC5AEE66322778A147BCE7237CF3", + "subject": "CN=proxytemplatehostname3.contoso.com" + } + }, + { + "type": "Proxy", + "hostName": "proxytemplatehostname4.azure-api.net", + "negotiateClientCertificate": true, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "918D7785B926AC5AEE66322778A147BCE7237CF3", + "subject": "CN=proxytemplatehostname4.contoso.com" + } + }, + { + "type": "Portal", + "hostName": "portaltemplatehostname1.contoso.com", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "DE57B67BA63D21E925DA8BEFA436E6B7553A4C19", + "subject": "CN=portaltemplatehostname1.contoso.com" + } + } + ], + "publicIPAddresses": [ + "13.93.167.166" + ], + "virtualNetworkType": "None" + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListServiceBySubscriptionAndResourceGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListServiceBySubscriptionAndResourceGroup.json new file mode 100644 index 000000000000..2007fb115482 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListServiceBySubscriptionAndResourceGroup.json @@ -0,0 +1,162 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService3", + "name": "apimService3", + "type": "Microsoft.ApiManagement/service", + "tags": {}, + "location": "West US", + "etag": "AAAAAAAXXAQ=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "contoso", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2017-05-27T15:33:55.5426123Z", + "gatewayUrl": "https://apimService3.azure-api.net", + "portalUrl": "https://apimService3.portal.azure-api.net", + "managementApiUrl": "https://apimService3.management.azure-api.net", + "scmUrl": "https://apimService3.scm.azure-api.net", + "hostnameConfigurations": [], + "publicIPAddresses": [ + "13.88.16.64" + ], + "additionalLocations": [ + { + "location": "West Europe", + "sku": { + "name": "Premium", + "capacity": 1 + }, + "publicIPAddresses": [ + "52.233.184.197" + ] + } + ], + "virtualNetworkType": "None" + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService2", + "name": "apimService2", + "type": "Microsoft.ApiManagement/service", + "tags": {}, + "location": "West US", + "etag": "AAAAAAAXW4U=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "MS", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2017-05-26T23:55:31.1405115Z", + "gatewayUrl": "https://apimService2.azure-api.net", + "portalUrl": "https://apimService2.portal.azure-api.net", + "managementApiUrl": "https://apimService2.management.azure-api.net", + "scmUrl": "https://apimService2.scm.azure-api.net", + "hostnameConfigurations": [], + "publicIPAddresses": [ + "13.64.237.151" + ], + "virtualNetworkType": "None" + }, + "sku": { + "name": "Developer", + "capacity": 1 + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService5", + "name": "apimService5", + "type": "Microsoft.ApiManagement/service", + "tags": {}, + "location": "West US", + "etag": "AAAAAAAXW5c=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "contoso", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2017-05-26T18:13:02.0196315Z", + "gatewayUrl": "https://apimService5.azure-api.net", + "portalUrl": "https://apimService5.portal.azure-api.net", + "managementApiUrl": "https://apimService5.management.azure-api.net", + "scmUrl": "https://apimService5.scm.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "proxytemplatehostname1.contoso.com", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "DE57B67BA63D21E925DA8BEFA436E6B7553A4C19", + "subject": "CN=proxytemplatehostname1.contoso.com" + } + }, + { + "type": "Proxy", + "hostName": "proxytemplatehostname2.contoso.com", + "negotiateClientCertificate": true, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "DE57B67BA63D21E925DA8BEFA436E6B7553A4C19", + "subject": "CN=proxytemplatehostname2.contoso.com" + } + }, + { + "type": "Proxy", + "hostName": "proxytemplatehostname3.azure-api.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "918D7785B926AC5AEE66322778A147BCE7237CF3", + "subject": "CN=proxytemplatehostname3.contoso.com" + } + }, + { + "type": "Proxy", + "hostName": "proxytemplatehostname4.azure-api.net", + "negotiateClientCertificate": true, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "918D7785B926AC5AEE66322778A147BCE7237CF3", + "subject": "CN=proxytemplatehostname4.contoso.com" + } + }, + { + "type": "Portal", + "hostName": "portaltemplatehostname1.contoso.com", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "DE57B67BA63D21E925DA8BEFA436E6B7553A4C19", + "subject": "CN=portaltemplatehostname1.contoso.com" + } + } + ], + "publicIPAddresses": [ + "13.93.167.166" + ], + "virtualNetworkType": "None" + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListSubscriptions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListSubscriptions.json new file mode 100644 index 000000000000..ccfe07ed8183 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListSubscriptions.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/subscriptions/5600b59475ff190048070001", + "type": "Microsoft.ApiManagement/service/subscriptions", + "name": "5600b59475ff190048070001", + "properties": { + "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1", + "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b59475ff190048060001", + "state": "active", + "createdDate": "2015-09-22T01:57:40.3Z" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/subscriptions/56eaed3dbaf08b06e46d27fe", + "type": "Microsoft.ApiManagement/service/subscriptions", + "name": "56eaed3dbaf08b06e46d27fe", + "properties": { + "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/56eaec62baf08b06e46d27fd", + "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b59475ff190048060001", + "displayName": "Starter", + "state": "active", + "createdDate": "2016-03-17T17:45:33.837Z", + "startDate": "2016-03-17T00:00:00Z", + "expirationDate": "2016-04-01T00:00:00Z", + "notificationDate": "2016-03-20T00:00:00Z" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/subscriptions/5931a769d8d14f0ad8ce13b8", + "type": "Microsoft.ApiManagement/service/subscriptions", + "name": "5931a769d8d14f0ad8ce13b8", + "properties": { + "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/5931a75ae4bbd512a88c680b", + "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b59475ff190048060002", + "displayName": "Unlimited", + "state": "submitted", + "createdDate": "2017-06-02T17:59:06.223Z" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListTagResources.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListTagResources.json new file mode 100644 index 000000000000..c36a70fba4ab --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListTagResources.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "tag": { + "id": "/tags/apitag123", + "name": "awesomeTag" + }, + "operation": { + "id": "/apis/echo-api/operations/create-resource", + "apiName": "Echo API", + "apiRevision": "1", + "name": "Create resource", + "method": "POST", + "urlTemplate": "/resource", + "description": "A demonstration of a POST call based on the echo backend above. The request body is expected to contain JSON-formatted data (see example below). A policy is used to automatically transform any request sent in JSON directly to XML. In a real-world scenario this could be used to enable modern clients to speak to a legacy backend." + } + }, + { + "tag": { + "id": "/tags/apitag123", + "name": "awesomeTag" + }, + "api": { + "id": "/apis/echo-api", + "name": "Echo API", + "apiRevision": "1", + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "echo", + "isCurrent": true + } + }, + { + "tag": { + "id": "/tags/apitag123", + "name": "awesomeTag" + }, + "product": { + "id": "/products/starter", + "name": "Starter", + "description": "Subscribers will be able to run 5 calls/minute up to a maximum of 100 calls/week.", + "terms": "", + "subscriptionRequired": true, + "approvalRequired": false, + "subscriptionsLimit": 1, + "state": "published" + } + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListTags.json new file mode 100644 index 000000000000..5dcef8d23d30 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListTags.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/5600b59375ff190048020001", + "type": "Microsoft.ApiManagement/service/tags", + "name": "5600b59375ff190048020001", + "properties": { + "displayName": "tag1" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/5600b59375ff190048020002", + "type": "Microsoft.ApiManagement/service/tags", + "name": "5600b59375ff190048020002", + "properties": { + "displayName": "tag2" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListUserGroups.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListUserGroups.json new file mode 100644 index 000000000000..9860bfd9ed25 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListUserGroups.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "userId": "57681833a40f7eb6c49f6acf" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57681833a40f7eb6c49f6acf/groups/5600b57e7e8880006a020002", + "type": "Microsoft.ApiManagement/service/users/groups", + "name": "5600b57e7e8880006a020002", + "properties": { + "displayName": "Developers", + "description": "Developers is a built-in group. Its membership is managed by the system. Signed-in users fall into this group.", + "builtIn": true, + "type": "system" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListUserIdentities.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListUserIdentities.json new file mode 100644 index 000000000000..82cde4c035e5 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListUserIdentities.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "userId": "57f2af53bb17172280f44057" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "provider": "Microsoft", + "id": "086cf9********55ab" + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListUserSubscriptions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListUserSubscriptions.json new file mode 100644 index 000000000000..902b3330aeb5 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListUserSubscriptions.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "userId": "57681833a40f7eb6c49f6acf" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57681833a40f7eb6c49f6acf/subscriptions/57681850a40f7eb6c49f6ae3", + "type": "Microsoft.ApiManagement/service/users/subscriptions", + "name": "57681850a40f7eb6c49f6ae3", + "properties": { + "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57681833a40f7eb6c49f6acf", + "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5768181ea40f7eb6c49f6ac7", + "displayName": "57681850a40f7eb6c49f6ae5", + "state": "active", + "createdDate": "2016-06-20T16:22:39.547Z", + "startDate": "2016-06-20T00:00:00Z" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57681833a40f7eb6c49f6acf/subscriptions/57681850a40f7eb6c49f6b2b", + "type": "Microsoft.ApiManagement/service/users/subscriptions", + "name": "57681850a40f7eb6c49f6b2b", + "properties": { + "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57681833a40f7eb6c49f6acf", + "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5768181ea40f7eb6c49f6ac7", + "displayName": "57681850a40f7eb6c49f6b2d", + "state": "active", + "createdDate": "2016-06-20T16:22:41.103Z", + "startDate": "2016-06-20T00:00:00Z" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListUsers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListUsers.json new file mode 100644 index 000000000000..87768de71d4c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementListUsers.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "serviceName": "apimService1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1", + "type": "Microsoft.ApiManagement/service/users", + "name": "1", + "properties": { + "firstName": "Administrator", + "lastName": "", + "email": "admin@live.com", + "state": "active", + "registrationDate": "2015-09-22T01:57:39.677Z", + "identities": [ + { + "provider": "Azure", + "id": "admin@live.com" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/56eaec62baf08b06e46d27fd", + "type": "Microsoft.ApiManagement/service/users", + "name": "56eaec62baf08b06e46d27fd", + "properties": { + "firstName": "foo", + "lastName": "bar", + "email": "foo.bar.83@gmail.com", + "state": "active", + "registrationDate": "2016-03-17T17:41:56.327Z", + "identities": [ + { + "provider": "Basic", + "id": "foo.bar.83@gmail.com" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/5931a75ae4bbd512a88c680b", + "type": "Microsoft.ApiManagement/service/users", + "name": "5931a75ae4bbd512a88c680b", + "properties": { + "firstName": "foo", + "lastName": "bar", + "email": "foobar@outlook.com", + "state": "active", + "registrationDate": "2017-06-02T17:58:50.357Z", + "identities": [ + { + "provider": "Microsoft", + "id": "*************" + } + ] + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementPortalSettingsGetDelegation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementPortalSettingsGetDelegation.json new file mode 100644 index 000000000000..0bbf85b5dde9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementPortalSettingsGetDelegation.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/portalsettings/delegation", + "type": "Microsoft.ApiManagement/service/portalsettings", + "name": "delegation", + "properties": { + "url": "http://contoso.com/delegation", + "subscriptions": { + "enabled": true + }, + "userRegistration": { + "enabled": true + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementPortalSettingsGetSignIn.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementPortalSettingsGetSignIn.json new file mode 100644 index 000000000000..e8bf67e9baf5 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementPortalSettingsGetSignIn.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/portalsettings/signin", + "type": "Microsoft.ApiManagement/service/portalsettings", + "name": "signin", + "properties": { + "enabled": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementPortalSettingsGetSignUp.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementPortalSettingsGetSignUp.json new file mode 100644 index 000000000000..30636dc47da9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementPortalSettingsGetSignUp.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/portalsettings/signup", + "type": "Microsoft.ApiManagement/service/portalsettings", + "name": "signup", + "properties": { + "enabled": true, + "termsOfService": { + "text": "Terms of service text.", + "enabled": true, + "consentRequired": true + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementPortalSettingsPutDelegation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementPortalSettingsPutDelegation.json new file mode 100644 index 000000000000..60d4fd41b926 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementPortalSettingsPutDelegation.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512288c680b", + "If-Match": "*", + "parameters": { + "properties": { + "url": "http://contoso.com/delegation", + "validationKey": "nVF7aKIvr9mV/RM5lOD0sYoi8ThXTRHQP7o66hvUmjCDkPKR3qxPu/otJcNciz2aQdqPuzJH3ECG4TU2yZjQ7Q==", + "subscriptions": { + "enabled": true + }, + "userRegistration": { + "enabled": true + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/portalsettings/delegation", + "type": "Microsoft.ApiManagement/service/portalsettings", + "name": "delegation", + "properties": { + "url": "http://contoso.com/delegation", + "subscriptions": { + "enabled": true + }, + "userRegistration": { + "enabled": true + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementPortalSettingsPutSignIn.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementPortalSettingsPutSignIn.json new file mode 100644 index 000000000000..2184472bb225 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementPortalSettingsPutSignIn.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512288c680b", + "If-Match": "*", + "parameters": { + "properties": { + "enabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/portalsettings/signin", + "type": "Microsoft.ApiManagement/service/portalsettings", + "name": "signin", + "properties": { + "enabled": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementPortalSettingsPutSignUp.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementPortalSettingsPutSignUp.json new file mode 100644 index 000000000000..895d139cbc49 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementPortalSettingsPutSignUp.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512288c680b", + "If-Match": "*", + "parameters": { + "properties": { + "enabled": true, + "termsOfService": { + "enabled": true, + "text": "Terms of service text.", + "consentRequired": true + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/portalsettings/signup", + "type": "Microsoft.ApiManagement/service/portalsettings", + "name": "signup", + "properties": { + "enabled": true, + "termsOfService": { + "text": "Terms of service text.", + "enabled": true, + "consentRequired": true + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementPortalSettingsUpdateDelegation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementPortalSettingsUpdateDelegation.json new file mode 100644 index 000000000000..434918be8e9f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementPortalSettingsUpdateDelegation.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512288c680b", + "If-Match": "*", + "parameters": { + "properties": { + "url": "http://contoso.com/delegation", + "validationKey": "nVF7aKIvr9mV/RM5lOD0sYoi8ThXTRHQP7o66hvUmjCDkPKR3qxPu/otJcNciz2aQdqPuzJH3ECG4TU2yZjQ7Q==", + "subscriptions": { + "enabled": true + }, + "userRegistration": { + "enabled": true + } + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementPortalSettingsUpdateSignIn.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementPortalSettingsUpdateSignIn.json new file mode 100644 index 000000000000..e5efc84d50a5 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementPortalSettingsUpdateSignIn.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512288c680b", + "If-Match": "*", + "parameters": { + "properties": { + "enabled": true + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementPortalSettingsUpdateSignUp.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementPortalSettingsUpdateSignUp.json new file mode 100644 index 000000000000..0edd1fab2bd0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementPortalSettingsUpdateSignUp.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512288c680b", + "If-Match": "*", + "parameters": { + "properties": { + "enabled": true, + "termsOfService": { + "enabled": true, + "text": "Terms of service text.", + "consentRequired": true + } + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementRestoreService.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementRestoreService.json new file mode 100644 index 000000000000..f24dcfc0719c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementRestoreService.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "parameters": { + "storageAccount": "teststorageaccount", + "accessKey": "**************************************************", + "containerName": "backupContainer", + "backupName": "apimService1backup_2017_03_19" + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2019-12-01-preview" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "UID": "52ed5986-717b-45b4-b17c-3df8db372cff" + }, + "location": "East Asia", + "etag": "AAAAAAAXX6Y=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "Contoso", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2015-09-22T01:50:34.7921566Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [], + "publicIPAddresses": [ + "207.46.155.24" + ], + "virtualNetworkType": "None" + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementServiceCheckNameAvailability.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementServiceCheckNameAvailability.json new file mode 100644 index 000000000000..7ce54587fca6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementServiceCheckNameAvailability.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "parameters": { + "name": "apimService1" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true, + "reason": "Valid", + "message": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementServiceDeleteService.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementServiceDeleteService.json new file mode 100644 index 000000000000..2aa2abfb46bf --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementServiceDeleteService.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/TGV2eTExMDZtMDJfVGVybV9jMmZlY2QwMA==?api-version=2019-12-01-preview" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": {}, + "location": "West US", + "etag": "AAAAAAFfhHY=", + "properties": { + "publisherEmail": "contoso@live.com", + "publisherName": "Microsoft", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "Deleting", + "createdAtUtc": "2016-12-20T19:41:21.5823069Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "gatewayRegionalUrl": "https://apimService1-westus-01.regional.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [], + "publicIPAddresses": [ + "40.XX.XXX.168" + ], + "virtualNetworkConfiguration": { + "subnetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/BlockVNETSamir/subnets/default" + }, + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2": "False" + }, + "virtualNetworkType": "External" + }, + "sku": { + "name": "Developer", + "capacity": 1 + } + } + }, + "204": {}, + "200": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementServiceGetMultiRegionInternalVnet.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementServiceGetMultiRegionInternalVnet.json new file mode 100644 index 000000000000..94c785ddb8f6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementServiceGetMultiRegionInternalVnet.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimservice1", + "name": "apimservice1", + "type": "Microsoft.ApiManagement/service", + "tags": {}, + "location": "West US", + "etag": "AAAAAADqC0c=", + "properties": { + "publisherEmail": "abcs@contoso.com", + "publisherName": "contoso publisher", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2019-12-02T01:42:09.1268424Z", + "gatewayUrl": "https://apimservice1.azure-api.net", + "gatewayRegionalUrl": "https://apimservice1-westus-01.regional.azure-api.net", + "portalUrl": "https://apimservice1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", + "managementApiUrl": "https://apimservice1.management.azure-api.net", + "scmUrl": "https://apimservice1.scm.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": false + }, + { + "type": "Proxy", + "hostName": "apimgatewaytest.preview.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2019-08-16T16:51:34+00:00", + "thumbprint": "B4330123DBAXXXXXXXXX1F35E84493476", + "subject": "CN=*.preview.net" + }, + "defaultSslBinding": true + } + ], + "publicIPAddresses": [ + "137.XXX.11.74" + ], + "privateIPAddresses": [ + "172.XX.0.5" + ], + "additionalLocations": [ + { + "location": "West US 2", + "sku": { + "name": "Premium", + "capacity": 1 + }, + "publicIPAddresses": [ + "40.XXX.79.187" + ], + "privateIPAddresses": [ + "10.0.X.6" + ], + "virtualNetworkConfiguration": { + "subnetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/APIMVNet/subnets/apim-internal-sub" + }, + "gatewayRegionalUrl": "https://apimservice1-westus2-01.regional.azure-api.net", + "disableGateway": false + } + ], + "virtualNetworkConfiguration": { + "subnetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/apim-appGateway-vnet/subnets/apim-subnet" + }, + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False" + }, + "virtualNetworkType": "Internal", + "disableGateway": false, + "apiVersionConstraint": {} + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementServiceGetNetworkStatus.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementServiceGetNetworkStatus.json new file mode 100644 index 000000000000..0724c41bbcb5 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementServiceGetNetworkStatus.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "location": "West Europe", + "networkStatus": { + "dnsServers": [ + "100.78.90.70" + ], + "connectivityStatus": [ + { + "name": "apimgmtsttgzqxxxxxcrsc.blob.core.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2019-12-18T12:04:43.6997938Z", + "lastStatusChange": "2019-01-24T21:47:53.851895Z" + }, + { + "name": "apimgmtsttgzqxxxxxcrsc.file.core.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2019-12-18T12:04:44.0439771Z", + "lastStatusChange": "2019-05-02T21:22:50.6835366Z" + }, + { + "name": "apimgmtsttgzqxxxxxcrsc.queue.core.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2019-12-18T12:04:44.8564232Z", + "lastStatusChange": "2019-05-02T20:53:26.6260794Z" + }, + { + "name": "apimgmtsttgzqxxxxxcrsc.table.core.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2019-12-18T12:04:44.0439771Z", + "lastStatusChange": "2019-05-02T20:53:21.6729263Z" + }, + { + "name": "ftmrcxxx.database.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2019-12-18T12:04:44.1845483Z", + "lastStatusChange": "2019-05-02T21:02:00.9466899Z" + }, + { + "name": "https://prod3.metrics.nsatc.net:1886/RecoveryService", + "status": "failure", + "error": "Failed to connect to https://prod3.metrics.nsatc.net:1886/RecoveryService with error Unable to connect to the remote server", + "lastUpdated": "2019-12-18T12:04:30.1214083Z", + "lastStatusChange": "2019-01-24T22:00:04.2450462Z" + }, + { + "name": "https://westeurope.prod.warm.ingestion.msftcloudes.com", + "status": "success", + "error": "", + "lastUpdated": "2019-12-18T12:04:43.8251399Z", + "lastStatusChange": "2019-12-18T11:14:43.3860126Z" + }, + { + "name": "LocalGatewayRedis", + "status": "success", + "error": "", + "lastUpdated": "2019-12-18T12:04:50.6376685Z", + "lastStatusChange": "2019-12-18T11:14:44.4966742Z" + }, + { + "name": "prod.warmpath.msftcloudes.com", + "status": "success", + "error": "", + "lastUpdated": "2019-12-18T12:04:44.4345454Z", + "lastStatusChange": "2019-05-08T00:09:58.031766Z" + }, + { + "name": "Scm", + "status": "success", + "error": "", + "lastUpdated": "2019-12-18T12:04:58.4815899Z", + "lastStatusChange": "2019-12-18T11:24:48.4795085Z" + }, + { + "name": "smtpi-db3.msn.com:25028", + "status": "failure", + "error": "Connection smtpi-db3.msn.com:25028 failed with Error Unable to connect to the remote server", + "lastUpdated": "2019-12-18T12:04:30.1526431Z", + "lastStatusChange": "2019-12-18T11:23:05.7709057Z" + } + ] + } + } + ] + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementServiceGetNetworkStatusByLocation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementServiceGetNetworkStatusByLocation.json new file mode 100644 index 000000000000..1340e6d04948 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementServiceGetNetworkStatusByLocation.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "locationName": "North Central US" + }, + "responses": { + "200": { + "body": { + "dnsServers": [ + "100.78.90.70" + ], + "connectivityStatus": [ + { + "name": "apimgmtst6mtxxxxxxxx.blob.core.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2018-06-13T22:41:07.3844516Z", + "lastStatusChange": "2018-06-13T20:31:06.6590782Z" + }, + { + "name": "apimgmtst6mtxxxxxxxx.file.core.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2018-06-13T22:41:08.6657305Z", + "lastStatusChange": "2018-06-13T20:31:06.8934611Z" + }, + { + "name": "apimgmtst6mtxxxxxxxx.table.core.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2018-06-13T22:41:08.7594708Z", + "lastStatusChange": "2018-06-13T20:31:06.7529128Z" + }, + { + "name": "https://prod3.metrics.nsatc.net:1886/RecoveryService", + "status": "success", + "error": "", + "lastUpdated": "2018-06-13T22:41:08.6969746Z", + "lastStatusChange": "2018-06-13T20:31:07.1125257Z" + }, + { + "name": "n20fxxx.database.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2018-06-13T22:41:09.5094848Z", + "lastStatusChange": "2018-06-13T20:31:07.0968711Z" + }, + { + "name": "Scm", + "status": "success", + "error": "", + "lastUpdated": "2018-06-13T22:41:29.4358865Z", + "lastStatusChange": "2018-06-13T20:41:09.8627827Z" + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementServiceGetService.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementServiceGetService.json new file mode 100644 index 000000000000..08d4ac2d028b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementServiceGetService.json @@ -0,0 +1,115 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "West US", + "etag": "AAAAAAACXok=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2019-12-18T06:26:20.3348609Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "gatewayRegionalUrl": "https://apimService1-westus-01.regional.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": false + }, + { + "type": "Proxy", + "hostName": "gateway1.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989652CABCF585ACBFCB9C2C91F1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": true + }, + { + "type": "Management", + "hostName": "mgmt.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989652CABCF585ACBFCB9C2C91F1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": false + }, + { + "type": "Portal", + "hostName": "portal1.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989652CABCF585ACBFCB9C2C91F1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": false + } + ], + "publicIPAddresses": [ + "13.91.32.113" + ], + "additionalLocations": [ + { + "location": "East US", + "sku": { + "name": "Premium", + "capacity": 1 + }, + "publicIPAddresses": [ + "23.101.138.153" + ], + "gatewayRegionalUrl": "https://apimService1-eastus-01.regional.azure-api.net", + "disableGateway": true + } + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2": "False" + }, + "virtualNetworkType": "None", + "disableGateway": false, + "apiVersionConstraint": { + "minApiVersion": "2019-01-01" + } + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementServiceGetServiceHavingMsi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementServiceGetServiceHavingMsi.json new file mode 100644 index 000000000000..8181d20bb0e9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementServiceGetServiceHavingMsi.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": {}, + "location": "West Europe", + "etag": "AAAAAAAENfI=", + "properties": { + "publisherEmail": "foo@contoso.com", + "publisherName": "Contoso", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2016-04-12T00:20:15.6018952Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "gatewayRegionalUrl": "https://apimService1-westeurope-01.regional.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": false + }, + { + "type": "Proxy", + "hostName": "proxy.msitesting.net", + "keyVaultId": "https://samir-msi-keyvault.vault.azure.net/secrets/msicertificate", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2020-12-18T11:11:47+00:00", + "thumbprint": "9833D531D7A45XXXXXA85908BD3692E0BD3F", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": true + } + ], + "publicIPAddresses": [ + "13.94.xxx.188" + ], + "virtualNetworkConfiguration": { + "subnetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/dfVirtualNetwork/subnets/backendSubnet" + }, + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2": "False" + }, + "virtualNetworkType": "External", + "disableGateway": false + }, + "sku": { + "name": "Premium", + "capacity": 1 + }, + "identity": { + "type": "SystemAssigned, UserAssigned", + "principalId": "ca1d33f7-xxxx-42ec-xxxx-d526a1ee953a", + "tenantId": "72f988bf-xxxx-41af-xxxx-2d7cd011db47", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/apimService1": { + "principalId": "95194df2-9208-xxxx-xxxx-a10d2af9b5a3", + "clientId": "aaff9c7d-xxxx-4db2-xxxx-ab0e3e7806cf" + } + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementServiceGetSsoToken.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementServiceGetSsoToken.json new file mode 100644 index 000000000000..256bc5feafc2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementServiceGetSsoToken.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "redirectUri": "https://apimService1.portal.azure-api.net:443/signin-sso?token=1%26201705301929%26eIkr3%2fnfaLs1GVJ0OVbzkJjAcwPFkEZAPM8VUXvXPf7cJ6lWsB9oUwsk2zln9x0KLkn21txCPJWWheSPq7SNeA%3d%3d" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementSubscriptionRegeneratePrimaryKey.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementSubscriptionRegeneratePrimaryKey.json new file mode 100644 index 000000000000..984aeaada18b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementSubscriptionRegeneratePrimaryKey.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "sid": "testsub" + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementSubscriptionRegenerateSecondaryKey.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementSubscriptionRegenerateSecondaryKey.json new file mode 100644 index 000000000000..984aeaada18b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementSubscriptionRegenerateSecondaryKey.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "sid": "testsub" + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementTenantAccessRegenerateKey.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementTenantAccessRegenerateKey.json new file mode 100644 index 000000000000..1b9b2e4d19a6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementTenantAccessRegenerateKey.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "accessName": "access" + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementTenantAccessSyncState.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementTenantAccessSyncState.json new file mode 100644 index 000000000000..43c339e7b1a3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementTenantAccessSyncState.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "configurationName": "configuration" + }, + "responses": { + "200": { + "body": { + "branch": "master", + "commitId": "44c29c27a876372e2ea18d9c381cc493a6a89fc5", + "isExport": true, + "isSynced": false, + "isGitEnabled": true, + "syncDate": "2016-10-24T19:17:14.3641403Z", + "configurationChangeDate": "2017-06-03T00:41:30.9670873Z" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementTenantConfigurationDeploy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementTenantConfigurationDeploy.json new file mode 100644 index 000000000000..0f912920fa94 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementTenantConfigurationDeploy.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "configurationName": "configuration", + "parameters": { + "properties": { + "branch": "master" + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tenant/operationResults/5a1af4ae2a6d2e0b688d7517?api-version=2019-12-01-preview" + } + }, + "200": { + "body": { + "id": "5a1af4ae2a6d2e0b688d7517", + "status": "Failed", + "started": "2017-11-26T17:06:54.303Z", + "updated": "2017-11-26T17:07:21.777Z", + "error": { + "code": "ValidationError", + "message": "File not found: 'api-management/configuration.json'" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementTenantConfigurationSave.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementTenantConfigurationSave.json new file mode 100644 index 000000000000..f61dc6faa091 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementTenantConfigurationSave.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "configurationName": "configuration", + "parameters": { + "properties": { + "branch": "master" + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tenant/operationResults/5a1af57d2a6d2e0b688d751b?api-version=2019-12-01-preview" + } + }, + "200": { + "body": { + "id": "5cae98acb597440f487b0d78", + "status": "Succeeded", + "started": "2019-04-11T01:30:20.883Z", + "updated": "2019-04-11T01:30:41.623Z", + "resultInfo": "The configuration was successfully saved to master as commit 709678560f72e689e469cf98ba9ba6d1b7736893.", + "error": null, + "actionLog": [] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementTenantConfigurationValidate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementTenantConfigurationValidate.json new file mode 100644 index 000000000000..c1732cd5d44c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementTenantConfigurationValidate.json @@ -0,0 +1,172 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "configurationName": "configuration", + "parameters": { + "properties": { + "branch": "master" + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tenant/operationResults/5a1af64e2a6d2e0b688d751e?api-version=2019-12-01-preview" + } + }, + "200": { + "body": { + "id": "5a1af64e2a6d2e0b688d751e", + "status": "Succeeded", + "started": "2019-04-11T01:30:51.767Z", + "updated": "2019-04-11T01:30:57.653Z", + "resultInfo": "Validation is successfull", + "actionLog": [ + { + "objectType": "ApiSpecificationContract", + "action": "Updated", + "objectKey": "57914cb351f68a16889be190;rev=1" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "5768181ea40f7eb6c49f6ac7" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "576819c9a40f7e86289fb3e3" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "576819f1a40f7e86289fb6de" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681a67a40f7e72b4132522" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681a73a40f7e72b413281d" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681a7ea40f7e72b4132b18" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681b88a40f7ea0f017f099" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681b9fa40f7ea0f017f682" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681bb5a40f7ea0f017fc6b" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681bcaa40f7ea0f0180254" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681bdfa40f7ea0f018083d" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681bf5a40f7ea0f0180e26" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681c0ea40f7ea0f018140f" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681c26a40f7ea0f01819f8" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681c83a40f7e85f44db237" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681cb2a40f7e85f44dbcd0" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681ce3a40f7e85f44dc769" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681d1fa40f7e85f44dd202" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681d60a40f7e85f44ddc9b" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681db4a40f7e85f44de735" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681e11a40f7e85f44df1ce" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681e73a40f7e85f44dfc67" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681f06a40f7e74ec07785c" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "5768211fa40f7e74ec07a74a" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "576823cfa40f7e74ec07d63a" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "5600b57e7e8880006a060001" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "5600b57e7e8880006a060002" + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateApi.json new file mode 100644 index 000000000000..5cdb0c2da3cd --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateApi.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "echo-api", + "If-Match": "*", + "parameters": { + "properties": { + "displayName": "Echo API New", + "serviceUrl": "http://echoapi.cloudapp.net/api2", + "path": "newecho" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateApiDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateApiDiagnostic.json new file mode 100644 index 000000000000..76cff343c91a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateApiDiagnostic.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "diagnosticId": "applicationinsights", + "apiId": "57d1f7558aa04f15146d9d8a", + "If-Match": "*", + "parameters": { + "properties": { + "alwaysLog": "allErrors", + "loggerId": "/loggers/applicationinsights", + "sampling": { + "samplingType": "fixed", + "percentage": 50 + }, + "frontend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + }, + "backend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + } + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateApiIssue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateApiIssue.json new file mode 100644 index 000000000000..85c5047e3762 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateApiIssue.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "apiId": "57d1f7558aa04f15146d9d8a", + "If-Match": "*", + "parameters": { + "properties": { + "state": "closed" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateApiOperation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateApiOperation.json new file mode 100644 index 000000000000..2e617951aba6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateApiOperation.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "echo-api", + "operationId": "operationId", + "If-Match": "*", + "parameters": { + "properties": { + "displayName": "Retrieve resource", + "method": "GET", + "urlTemplate": "/resource", + "templateParameters": [], + "request": { + "queryParameters": [ + { + "name": "param1", + "description": "A sample parameter that is required and has a default value of \"sample\".", + "type": "string", + "defaultValue": "sample", + "required": true, + "values": [ + "sample" + ] + } + ] + }, + "responses": [ + { + "statusCode": 200, + "description": "Returned in all cases.", + "representations": [], + "headers": [] + }, + { + "statusCode": 500, + "description": "Server Error.", + "representations": [], + "headers": [] + } + ] + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateApiRelease.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateApiRelease.json new file mode 100644 index 000000000000..e6b8d926094f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateApiRelease.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "apiId": "a1", + "releaseId": "testrev", + "If-Match": "*", + "parameters": { + "properties": { + "apiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1", + "notes": "yahooagain" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateApiVersionSet.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateApiVersionSet.json new file mode 100644 index 000000000000..aefe5b45fb75 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateApiVersionSet.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "versionSetId": "api1", + "If-Match": "*", + "parameters": { + "properties": { + "displayName": "api set 1", + "versioningScheme": "Segment", + "description": "Version configuration" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateAuthorizationServer.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateAuthorizationServer.json new file mode 100644 index 000000000000..95222bbd08f8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateAuthorizationServer.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "authsid": "newauthServer", + "If-Match": "*", + "parameters": { + "properties": { + "clientId": "update", + "clientSecret": "updated" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateBackend.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateBackend.json new file mode 100644 index 000000000000..bc022a37348c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateBackend.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "backendId": "proxybackend", + "If-Match": "*", + "parameters": { + "properties": { + "description": "description5308", + "tls": { + "validateCertificateChain": false, + "validateCertificateName": true + } + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateCache.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateCache.json new file mode 100644 index 000000000000..ef40d5b05d95 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateCache.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "cacheId": "westindia", + "If-Match": "*", + "parameters": { + "properties": { + "description": "Update Cache in west India" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateDiagnostic.json new file mode 100644 index 000000000000..f089d180c3c0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateDiagnostic.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "diagnosticId": "applicationinsights", + "If-Match": "*", + "parameters": { + "properties": { + "alwaysLog": "allErrors", + "loggerId": "/loggers/applicationinsights", + "sampling": { + "samplingType": "fixed", + "percentage": 50 + }, + "frontend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + }, + "backend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + } + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateEmailTemplate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateEmailTemplate.json new file mode 100644 index 000000000000..34de5784e4e7 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateEmailTemplate.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "templateName": "applicationApprovedNotificationMessage", + "If-Match": "*", + "parameters": { + "properties": { + "subject": "Your application $AppName is published in the gallery", + "body": "\r\n\r\n \r\n \r\n

Dear $DevFirstName $DevLastName,

\r\n

\r\n We are happy to let you know that your request to publish the $AppName application in the gallery has been approved. Your application has been published and can be viewed here.\r\n

\r\n

Best,

\r\n

The $OrganizationName API Team

\r\n \r\n" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateGateway.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateGateway.json new file mode 100644 index 000000000000..02776b5515e0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateGateway.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "gatewayId": "gw1", + "If-Match": "*", + "parameters": { + "properties": { + "description": "my gateway 1", + "locationData": { + "name": "my location" + } + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateGroup.json new file mode 100644 index 000000000000..09117bd160ab --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateGroup.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "groupId": "tempgroup", + "If-Match": "*", + "parameters": { + "properties": { + "displayName": "temp group" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateIdentityProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateIdentityProvider.json new file mode 100644 index 000000000000..e20623e86f9c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateIdentityProvider.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "identityProviderName": "facebook", + "If-Match": "*", + "parameters": { + "properties": { + "clientId": "updatedfacebookid", + "clientSecret": "updatedfacebooksecret" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateLogger.json new file mode 100644 index 000000000000..e6f1cf6a5e54 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateLogger.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "loggerId": "loggerId", + "If-Match": "*", + "parameters": { + "properties": { + "credentials": { + "name": "hydraeventhub", + "connectionString": "Endpoint=sb://hydraeventhub-ns.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=********=" + } + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateNamedValue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateNamedValue.json new file mode 100644 index 000000000000..c6ae610b7698 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateNamedValue.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "namedValueId": "testprop2", + "If-Match": "*", + "parameters": { + "properties": { + "displayName": "prop3name", + "value": "propValue", + "tags": [ + "foo", + "bar2" + ], + "secret": false + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/namedValues/testprop2?api-version=2019-12-01-preview&asyncId=5c730e343244df1b9cb56e85&asyncCode=204" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/namedValues/testprop2", + "type": "Microsoft.ApiManagement/service/namedValues", + "properties": { + "displayName": "prop3name", + "value": "propValue", + "tags": [ + "foo", + "bar2" + ], + "secret": false + } + } + }, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateOpenIdConnectProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateOpenIdConnectProvider.json new file mode 100644 index 000000000000..9deda1decf83 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateOpenIdConnectProvider.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "opid": "templateOpenIdConnect2", + "If-Match": "*", + "parameters": { + "properties": { + "clientSecret": "updatedsecret" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateProduct.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateProduct.json new file mode 100644 index 000000000000..e63b8edbbd5d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateProduct.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "productId": "testproduct", + "If-Match": "*", + "parameters": { + "properties": { + "displayName": "Test Template ProductName 4" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateQuotaCounterKey.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateQuotaCounterKey.json new file mode 100644 index 000000000000..7764e10571dd --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateQuotaCounterKey.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "quotaCounterKey": "ba", + "parameters": { + "callsCount": 0, + "kbTransferred": 2.5630078125 + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateQuotaCounterKeyByQuotaPeriod.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateQuotaCounterKeyByQuotaPeriod.json new file mode 100644 index 000000000000..af0a9fcff821 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateQuotaCounterKeyByQuotaPeriod.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "quotaCounterKey": "ba", + "quotaPeriodKey": "0_P3Y6M4DT12H30M5S", + "parameters": { + "callsCount": 0, + "kbTransferred": 0 + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateServiceDisableTls10.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateServiceDisableTls10.json new file mode 100644 index 000000000000..bb40397851e6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateServiceDisableTls10.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "parameters": { + "properties": { + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "false" + } + } + } + }, + "responses": { + "202": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "TestExpiration": "Thu, 29 Jun 2017 18:50:40 GMT" + }, + "location": "West US", + "etag": "AAAAAAAYRPs=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "Contoso", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2017-06-29T17:50:42.3191122Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [], + "publicIPAddresses": [ + "40.86.176.232" + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False" + }, + "virtualNetworkType": "None" + }, + "sku": { + "name": "Standard", + "capacity": 1 + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "Owner": "sasolank", + "UID": "4f5025fe-0669-4e2e-8320-5199466e5eb3", + "Reserved": "", + "TestExpiration": "Thu, 29 Jun 2017 18:50:40 GMT", + "Pool": "Manual", + "TestSuiteExpiration": "Thu, 29 Jun 2017 18:51:46 GMT" + }, + "location": "West US", + "etag": "AAAAAAAYRPs=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "Contoso", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2017-06-29T17:50:42.3191122Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [], + "publicIPAddresses": [ + "40.86.176.232" + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False" + }, + "virtualNetworkType": "None" + }, + "sku": { + "name": "Standard", + "capacity": 1 + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateServicePublisherDetails.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateServicePublisherDetails.json new file mode 100644 index 000000000000..0561db33629e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateServicePublisherDetails.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "parameters": { + "properties": { + "publisherEmail": "foobar@live.com", + "publisherName": "Contoso Vnext" + } + } + }, + "responses": { + "202": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "TestExpiration": "Thu, 29 Jun 2017 18:50:40 GMT" + }, + "location": "West US", + "etag": "AAAAAAAYRPs=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "Contoso", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2017-06-29T17:50:42.3191122Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [], + "publicIPAddresses": [ + "40.86.176.232" + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False" + }, + "virtualNetworkType": "None" + }, + "sku": { + "name": "Standard", + "capacity": 1 + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "Owner": "sasolank", + "UID": "4f5025fe-0669-4e2e-8320-5199466e5eb3", + "Reserved": "", + "TestExpiration": "Thu, 29 Jun 2017 18:50:40 GMT", + "Pool": "Manual", + "TestSuiteExpiration": "Thu, 29 Jun 2017 18:51:46 GMT" + }, + "location": "West US", + "etag": "AAAAAAAYRPs=", + "properties": { + "publisherEmail": "foobar@live.com", + "publisherName": "Contoso Vnext", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2017-06-29T17:50:42.3191122Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [], + "publicIPAddresses": [ + "40.86.176.232" + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False" + }, + "virtualNetworkType": "None" + }, + "sku": { + "name": "Standard", + "capacity": 1 + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateSubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateSubscription.json new file mode 100644 index 000000000000..611184189ba5 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateSubscription.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "sid": "testsub", + "If-Match": "*", + "parameters": { + "properties": { + "displayName": "testsub" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateTag.json new file mode 100644 index 000000000000..bbd249124cf0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateTag.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "tagId": "temptag", + "If-Match": "*", + "parameters": { + "properties": { + "displayName": "temp tag" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateTenantAccess.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateTenantAccess.json new file mode 100644 index 000000000000..e0c5b60be01d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateTenantAccess.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "If-Match": "*", + "accessName": "access", + "parameters": { + "properties": { + "enabled": true + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateUser.json new file mode 100644 index 000000000000..e1f92eda0366 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUpdateUser.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512288c680b", + "If-Match": "*", + "parameters": { + "properties": { + "firstName": "foo", + "lastName": "bar", + "email": "foobar@outlook.com" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUserConfirmationPasswordSend.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUserConfirmationPasswordSend.json new file mode 100644 index 000000000000..dc4ea32b5b41 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUserConfirmationPasswordSend.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "userId": "57127d485157a511ace86ae7" + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUserGenerateSsoUrl.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUserGenerateSsoUrl.json new file mode 100644 index 000000000000..3ba39034ce33 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUserGenerateSsoUrl.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "userId": "57127d485157a511ace86ae7" + }, + "responses": { + "200": { + "body": { + "value": "https://apimService1.portal.azure-api.net/signin-sso?token=57127d485157a511ace86ae7%26201706051624%267VY18MlwAom***********2bYr2bDQHg21OzQsNakExQ%3d%3d" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUserToken.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUserToken.json new file mode 100644 index 000000000000..56e955bdea89 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/preview/2019-12-01-preview/examples/ApiManagementUserToken.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01-preview", + "subscriptionId": "subid", + "userId": "userId1718", + "parameters": { + "properties": { + "keyType": "primary", + "expiry": "2019-04-21T00:44:24.2845269Z" + } + } + }, + "responses": { + "200": { + "body": { + "value": "userId1718&201904210044&9A1GR1f5WIhFvFmzQG+xxxxxxxxxxx/kBeu87DWad3tkasUXuvPL+MgzlwUHyg==" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/apimapis.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/apimapis.json index 921c722c09d6..c0f21de3eeb0 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/apimapis.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/apimapis.json @@ -4381,7 +4381,8 @@ "swagger-link", "wadl-link", "wsdl-link", - "openapi-link" + "openapi-link", + "openapi+json-link" ], "x-ms-enum": { "name": "ExportFormat", @@ -4406,6 +4407,11 @@ "value": "openapi-link", "description": "Export the Api Definition in OpenApi Specification 3.0 to Storage Blob.", "name": "Openapi" + }, + { + "value": "openapi+json-link", + "description": "Export the Api Definition in OpenApi Specification 3.0 as JSON document to Storage Blob.", + "name": "OpenapiJson" } ] }, diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/apimdeployment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/apimdeployment.json index 010d8afc44b0..151f0d9ae4bf 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/apimdeployment.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/apimdeployment.json @@ -1021,6 +1021,11 @@ "description": "Management API endpoint URL of the API Management service.", "readOnly": true }, + "developerPortalUrl": { + "type": "string", + "description": "Developer Portal endpoint URL of the API Management service.", + "readOnly": true + }, "scmUrl": { "type": "string", "description": "SCM endpoint URL of the API Management service.", diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/definitions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/definitions.json index 013e94209e92..a4f4ef653186 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/definitions.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/definitions.json @@ -190,7 +190,8 @@ "wsdl-link", "openapi", "openapi+json", - "openapi-link" + "openapi-link", + "openapi+json-link" ], "x-ms-enum": { "name": "ContentFormat", @@ -231,6 +232,10 @@ { "value": "openapi-link", "description": "The Open Api 3.0 document is hosted on a publicly accessible internet address." + }, + { + "value": "openapi+json-link", + "description": "The Open Api 3.0 Json document is hosted on a publicly accessible internet address." } ] } @@ -1782,6 +1787,60 @@ "enableHttpCorrelationHeaders": { "type": "boolean", "description": "Whether to process Correlation Headers coming to Api Management Service. Only applicable to Application Insights diagnostics. Default is true." + }, + "httpCorrelationProtocol": { + "type": "string", + "enum": [ + "None", + "Legacy", + "W3C" + ], + "x-ms-enum": { + "name": "HttpCorrelationProtocol", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "Do not read and inject correlation headers." + }, + { + "value": "Legacy", + "description": "Inject Request-Id and Request-Context headers with request correlation data. See https://github.com/dotnet/corefx/blob/master/src/System.Diagnostics.DiagnosticSource/src/HttpCorrelationProtocol.md." + }, + { + "value": "W3C", + "description": "Inject Trace Context headers. See https://w3c.github.io/trace-context." + } + ] + }, + "description": "Sets correlation protocol to use for Application Insights diagnostics." + }, + "verbosity": { + "type": "string", + "enum": [ + "verbose", + "information", + "error" + ], + "x-ms-enum": { + "name": "Verbosity", + "modelAsString": true, + "values": [ + { + "value": "verbose", + "description": "All the traces emitted by trace policies will be sent to the logger attached to this diagnostic instance." + }, + { + "value": "information", + "description": "Traces with 'severity' set to 'information' and 'error' will be sent to the logger attached to this diagnostic instance." + }, + { + "value": "error", + "description": "Only traces with 'severity' set to 'error' will be sent to the logger attached to this diagnostic instance." + } + ] + }, + "description": "The verbosity level applied to traces emitted by trace policies." } }, "required": [ @@ -4905,6 +4964,23 @@ "type": "string", "description": "User Password. If no value is provided, a default password is generated." }, + "appType": { + "type": "string", + "description": "Determines the type of application which send the create user request. Default is old publisher portal.", + "enum": [ + "developerPortal" + ], + "x-ms-enum": { + "name": "AppType", + "modelAsString": true, + "values": [ + { + "value": "developerPortal", + "description": "User create request was sent by new developer portal." + } + ] + } + }, "confirmation": { "type": "string", "description": "Determines the type of confirmation e-mail that will be sent to the newly created user.", diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementCreateService.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementCreateService.json index 8e81610b48d8..9dcd0eef7cb4 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementCreateService.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementCreateService.json @@ -27,7 +27,7 @@ "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2019-01-01" }, "body": { - "id": "/subscriptions/subid/resourceGroups/sdktestrg9348/providers/Microsoft.ApiManagement/service/apimService1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", "name": "apimService1", "type": "Microsoft.ApiManagement/service", "tags": { @@ -62,7 +62,7 @@ }, "200": { "body": { - "id": "/subscriptions/subid/resourceGroups/sdktestrg9348/providers/Microsoft.ApiManagement/service/apimService1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", "name": "apimService1", "type": "Microsoft.ApiManagement/service", "tags": { @@ -82,6 +82,7 @@ "gatewayUrl": "https://apimService1.azure-api.net", "gatewayRegionalUrl": "https://apimService1-centralus-01.regional.azure-api.net", "portalUrl": "https://apimService1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", "managementApiUrl": "https://apimService1.management.azure-api.net", "scmUrl": "https://apimService1.scm.azure-api.net", "hostnameConfigurations": [ @@ -115,7 +116,7 @@ }, "202": { "headers": { - "location": "https://management.azure.com/subscriptions/subid/resourceGroups/sdktestrg9348/providers/Microsoft.ApiManagement/service/apimService1/operationresults/c2RrdGVzdGFwaW0xNTkxX0FjdF9jZTkyMmNmOQ==?api-version=2019-01-01" + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/c2RrdGVzdGFwaW0xNTkxX0FjdF9jZTkyMmNmOQ==?api-version=2019-01-01" } } } diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementCreateServiceWithSystemCertificates.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementCreateServiceWithSystemCertificates.json index f9470a62d7f3..90b53a323ac4 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementCreateServiceWithSystemCertificates.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementCreateServiceWithSystemCertificates.json @@ -92,6 +92,7 @@ "gatewayUrl": "https://apimService1.azure-api.net", "gatewayRegionalUrl": "https://apimService1-centralus-01.regional.azure-api.net", "portalUrl": "https://apimService1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", "managementApiUrl": "https://apimService1.management.azure-api.net", "scmUrl": "https://apimService1.scm.azure-api.net", "hostnameConfigurations": [ diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementListServiceBySubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementListServiceBySubscription.json index 691d11538394..278e43af6f7b 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementListServiceBySubscription.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementListServiceBySubscription.json @@ -23,6 +23,7 @@ "createdAtUtc": "2017-05-27T15:33:55.5426123Z", "gatewayUrl": "https://apimService3.azure-api.net", "portalUrl": "https://apimService3.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", "managementApiUrl": "https://apimService3.management.azure-api.net", "scmUrl": "https://apimService3.scm.azure-api.net", "hostnameConfigurations": [], @@ -64,6 +65,7 @@ "createdAtUtc": "2017-05-26T23:55:31.1405115Z", "gatewayUrl": "https://apimService2.azure-api.net", "portalUrl": "https://apimService2.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", "managementApiUrl": "https://apimService2.management.azure-api.net", "scmUrl": "https://apimService2.scm.azure-api.net", "hostnameConfigurations": [], @@ -93,6 +95,7 @@ "createdAtUtc": "2017-05-26T18:13:02.0196315Z", "gatewayUrl": "https://apimService5.azure-api.net", "portalUrl": "https://apimService5.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", "managementApiUrl": "https://apimService5.management.azure-api.net", "scmUrl": "https://apimService5.scm.azure-api.net", "hostnameConfigurations": [ diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementRestoreService.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementRestoreService.json index ea769d7ffb93..698f943e988b 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementRestoreService.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementRestoreService.json @@ -35,6 +35,7 @@ "createdAtUtc": "2015-09-22T01:50:34.7921566Z", "gatewayUrl": "https://apimService1.azure-api.net", "portalUrl": "https://apimService1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", "managementApiUrl": "https://apimService1.management.azure-api.net", "scmUrl": "https://apimService1.scm.azure-api.net", "hostnameConfigurations": [], diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementServiceDeleteService.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementServiceDeleteService.json index 5c5ef318f903..35471b9cc4cf 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementServiceDeleteService.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementServiceDeleteService.json @@ -18,7 +18,7 @@ "location": "West US", "etag": "AAAAAAFfhHY=", "properties": { - "publisherEmail": "sasolank@microsoft.com", + "publisherEmail": "contoso@live.com", "publisherName": "Microsoft", "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", "provisioningState": "Succeeded", @@ -27,6 +27,7 @@ "gatewayUrl": "https://apimService1.azure-api.net", "gatewayRegionalUrl": "https://apimService1-westus-01.regional.azure-api.net", "portalUrl": "https://apimService1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", "managementApiUrl": "https://apimService1.management.azure-api.net", "scmUrl": "https://apimService1.scm.azure-api.net", "hostnameConfigurations": [], diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementServiceGetMultiRegionInternalVnet.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementServiceGetMultiRegionInternalVnet.json index 03f450550fac..6ff358b3c1c6 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementServiceGetMultiRegionInternalVnet.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementServiceGetMultiRegionInternalVnet.json @@ -24,6 +24,7 @@ "gatewayUrl": "https://apimservice1.azure-api.net", "gatewayRegionalUrl": "https://apimservice1-westus-01.regional.azure-api.net", "portalUrl": "https://apimservice1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", "managementApiUrl": "https://apimservice1.management.azure-api.net", "scmUrl": "https://apimservice1.scm.azure-api.net", "hostnameConfigurations": [ diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementServiceGetService.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementServiceGetService.json index 782f3982977e..913e296f64ef 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementServiceGetService.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementServiceGetService.json @@ -12,76 +12,66 @@ "name": "apimService1", "type": "Microsoft.ApiManagement/service", "tags": {}, - "location": "Central US", - "etag": "AAAAAAAYP5M=", + "location": "West Europe", + "etag": "AAAAAAAENfI=", "properties": { "publisherEmail": "contoso@microsoft.com", - "publisherName": "admin", - "notificationSenderEmail": "contoso@live.com", + "publisherName": "Microsoft", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", "provisioningState": "Succeeded", "targetProvisioningState": "", - "createdAtUtc": "2017-06-28T23:01:33.0667959Z", + "createdAtUtc": "2016-04-12T00:20:15.6018952Z", "gatewayUrl": "https://apimService1.azure-api.net", - "gatewayRegionalUrl": "https://apimService1-centralus-01.regional.azure-api.net", + "gatewayRegionalUrl": "https://apimService1-westeurope-01.regional.azure-api.net", "portalUrl": "https://apimService1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", "managementApiUrl": "https://apimService1.management.azure-api.net", "scmUrl": "https://apimService1.scm.azure-api.net", "hostnameConfigurations": [ { "type": "Proxy", - "hostName": "proxyhostname4.contoso.net", - "negotiateClientCertificate": false, - "defaultSslBinding": true, - "certificate": { - "expiry": "2018-03-17T21:55:07+00:00", - "thumbprint": "918D7785B926AC5AEE66322778A147BCE7237CF3", - "subject": "CN=*.contoso.net" - } + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false }, { "type": "Proxy", - "hostName": "proxyhostname9.contoso.net", - "negotiateClientCertificate": false, - "defaultSslBinding": true, - "certificate": { - "expiry": "2018-03-17T21:55:07+00:00", - "thumbprint": "918D7785B926AC5AEE66322778A147BCE7237CF3", - "subject": "CN=*.contoso.net" - } - }, - { - "type": "Portal", - "hostName": "portalhostname2.contoso.net", + "hostName": "proxy.contoso.net", + "keyVaultId": "https://contoso.vault.azure.net/secrets/msicertificate", "negotiateClientCertificate": false, - "defaultSslBinding": false, "certificate": { - "expiry": "2018-03-17T21:55:07+00:00", - "thumbprint": "918D7785B926AC5AEE66322778A147BCE7237CF3", + "expiry": "2020-12-18T11:11:47+00:00", + "thumbprint": "9833D5CXXXXXXXXF2A85908BD3692E0BD3F", "subject": "CN=*.contoso.net" - } + }, + "defaultSslBinding": true } ], "publicIPAddresses": [ - "52.173.22.222" + "13.94.XXX.188" ], - "additionalLocations": [ - { - "location": "West US", - "sku": { - "name": "Premium", - "capacity": 1 - }, - "publicIPAddresses": [ - "40.78.99.244" - ], - "gatewayRegionalUrl": "https://apimService1-westus-01.regional.azure-api.net" - } - ], - "virtualNetworkType": "None" + "virtualNetworkConfiguration": { + "subnetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/APIMVNet/subnets/apim-internal-sub" + }, + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2": "False" + }, + "virtualNetworkType": "External" }, "sku": { "name": "Premium", "capacity": 1 + }, + "identity": { + "type": "SystemAssigned", + "principalId": "ca1d33f7-3cf9-42ec-b3e9-d526a1ee953a", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47" } } } diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementServiceGetServiceHavingMsi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementServiceGetServiceHavingMsi.json index fa494a5a91af..43d130aabb46 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementServiceGetServiceHavingMsi.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementServiceGetServiceHavingMsi.json @@ -23,6 +23,7 @@ "gatewayUrl": "https://apimService1.azure-api.net", "gatewayRegionalUrl": "https://apimService1-westus-01.regional.azure-api.net", "portalUrl": "https://apimService1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", "managementApiUrl": "https://apimService1.management.azure-api.net", "scmUrl": "https://apimService1.scm.azure-api.net", "hostnameConfigurations": [ diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementUpdateServiceDisableTls10.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementUpdateServiceDisableTls10.json index 5563fa1f6e7d..f6ddf1ecd696 100644 --- a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementUpdateServiceDisableTls10.json +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/examples/ApiManagementUpdateServiceDisableTls10.json @@ -31,6 +31,7 @@ "createdAtUtc": "2017-06-29T17:50:42.3191122Z", "gatewayUrl": "https://apimService1.azure-api.net", "portalUrl": "https://apimService1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", "managementApiUrl": "https://apimService1.management.azure-api.net", "scmUrl": "https://apimService1.scm.azure-api.net", "hostnameConfigurations": [], @@ -71,6 +72,7 @@ "createdAtUtc": "2017-06-29T17:50:42.3191122Z", "gatewayUrl": "https://apimService1.azure-api.net", "portalUrl": "https://apimService1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", "managementApiUrl": "https://apimService1.management.azure-api.net", "scmUrl": "https://apimService1.scm.azure-api.net", "hostnameConfigurations": [], diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimanagement.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimanagement.json new file mode 100644 index 000000000000..c7000c981ff8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimanagement.json @@ -0,0 +1,718 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on entities like API, Product, and Subscription associated with your Azure API Management deployment.", + "version": "2019-12-01" + }, + "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": {}, + "definitions": { + "ErrorFieldContract": { + "properties": { + "code": { + "type": "string", + "description": "Property level error code." + }, + "message": { + "type": "string", + "description": "Human-readable representation of property-level error." + }, + "target": { + "type": "string", + "description": "Property name." + } + }, + "description": "Error Field contract." + }, + "ErrorResponse": { + "properties": { + "error": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ErrorResponseBody", + "description": "Properties of the Error Response." + } + }, + "description": "Error Response." + }, + "ErrorResponseBody": { + "properties": { + "code": { + "type": "string", + "description": "Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response." + }, + "message": { + "type": "string", + "description": "Human-readable representation of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ErrorFieldContract" + }, + "description": "The list of invalid fields send in request, in case of validation error." + } + }, + "description": "Error Body contract." + }, + "RegionContract": { + "properties": { + "name": { + "type": "string", + "description": "Region name.", + "readOnly": true + }, + "isMasterRegion": { + "description": "whether Region is the master region.", + "type": "boolean" + }, + "isDeleted": { + "description": "whether Region is deleted.", + "type": "boolean" + } + }, + "description": "Region profile." + }, + "RegionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RegionContract" + }, + "description": "Lists of Regions." + }, + "count": { + "type": "integer", + "format": "int64", + "description": "Total record count number across all pages." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Lists Regions operation response details." + }, + "Resource": { + "description": "The Resource definition.", + "x-ms-azure-resource": true, + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource ID." + }, + "name": { + "type": "string", + "description": "Resource name.", + "readOnly": true + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type for API Management resource." + } + } + } + }, + "parameters": { + "AccessParameter": { + "name": "accessName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "access" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "AccessIdName" + }, + "description": "The identifier of the Access configuration.", + "x-ms-parameter-location": "method" + }, + "ApiIdParameter": { + "name": "apiId", + "in": "path", + "required": true, + "type": "string", + "description": "API identifier. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 80, + "x-ms-parameter-location": "method" + }, + "ApiIdRevParameter": { + "name": "apiId", + "in": "path", + "required": true, + "type": "string", + "description": "API revision identifier. Must be unique in the current API Management service instance. Non-current revision has ;rev=n as a suffix where n is the revision number.", + "minLength": 1, + "maxLength": 256, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Version of the API to be used with the client request." + }, + "ApiVersionSetIdParameter": { + "name": "versionSetId", + "in": "path", + "required": true, + "type": "string", + "description": "Api Version Set identifier. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 80, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "AttachmentIdParameter": { + "name": "attachmentId", + "in": "path", + "required": true, + "type": "string", + "description": "Attachment identifier within an Issue. Must be unique in the current Issue.", + "minLength": 1, + "maxLength": 256, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "AuthenticationServerIdParameter": { + "name": "authsid", + "in": "path", + "required": true, + "type": "string", + "description": "Identifier of the authorization server.", + "minLength": 1, + "maxLength": 80, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "BackendIdParameter": { + "name": "backendId", + "in": "path", + "required": true, + "type": "string", + "description": "Identifier of the Backend entity. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 80, + "x-ms-parameter-location": "method" + }, + "CacheIdParameter": { + "name": "cacheId", + "in": "path", + "required": true, + "type": "string", + "description": "Identifier of the Cache entity. Cache identifier (should be either 'default' or valid Azure region identifier).", + "minLength": 1, + "maxLength": 80, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "CertificateIdParameter": { + "name": "certificateId", + "in": "path", + "required": true, + "type": "string", + "description": "Identifier of the certificate entity. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 80, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "CommentIdParameter": { + "name": "commentId", + "in": "path", + "required": true, + "type": "string", + "description": "Comment identifier within an Issue. Must be unique in the current Issue.", + "minLength": 1, + "maxLength": 256, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "ConfigurationParameter": { + "name": "configurationName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "configuration" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "configurationIdName" + }, + "description": "The identifier of the Git Configuration Operation.", + "x-ms-parameter-location": "method" + }, + "DiagnosticIdParameter": { + "name": "diagnosticId", + "in": "path", + "required": true, + "type": "string", + "description": "Diagnostic identifier. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 80, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "EmailParameter": { + "name": "email", + "in": "path", + "required": true, + "type": "string", + "description": "Email identifier.", + "x-ms-parameter-location": "method" + }, + "GroupIdParameter": { + "name": "groupId", + "in": "path", + "required": true, + "type": "string", + "description": "Group identifier. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 256, + "x-ms-parameter-location": "method" + }, + "IdentityProviderNameParameter": { + "name": "identityProviderName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "facebook", + "google", + "microsoft", + "twitter", + "aad", + "aadB2C" + ], + "x-ms-enum": { + "name": "IdentityProviderType", + "modelAsString": true, + "values": [ + { + "value": "facebook", + "description": "Facebook as Identity provider." + }, + { + "value": "google", + "description": "Google as Identity provider." + }, + { + "value": "microsoft", + "description": "Microsoft Live as Identity provider." + }, + { + "value": "twitter", + "description": "Twitter as Identity provider." + }, + { + "value": "aad", + "description": "Azure Active Directory as Identity provider." + }, + { + "value": "aadB2C", + "description": "Azure Active Directory B2C as Identity provider." + } + ] + }, + "description": "Identity Provider Type identifier.", + "x-ms-parameter-location": "method" + }, + "IfMatchOptionalParameter": { + "name": "If-Match", + "in": "header", + "required": false, + "description": "ETag of the Entity. Not required when creating an entity, but required when updating an entity.", + "type": "string", + "x-ms-parameter-location": "method" + }, + "IfMatchRequiredParameter": { + "name": "If-Match", + "in": "header", + "required": true, + "description": "ETag of the Entity. ETag should match the current entity state from the header response of the GET request or it should be * for unconditional update.", + "type": "string", + "x-ms-parameter-location": "method" + }, + "IssueIdParameter": { + "name": "issueId", + "in": "path", + "required": true, + "type": "string", + "description": "Issue identifier. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 256, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "LocationNameParameter": { + "name": "locationName", + "in": "path", + "required": true, + "type": "string", + "description": "Location in which the API Management service is deployed. This is one of the Azure Regions like West US, East US, South Central US.", + "minLength": 1, + "x-ms-parameter-location": "method" + }, + "LoggerIdParameter": { + "name": "loggerId", + "in": "path", + "required": true, + "type": "string", + "maxLength": 256, + "pattern": "^[^*#&+:<>?]+$", + "description": "Logger identifier. Must be unique in the API Management service instance.", + "x-ms-parameter-location": "method" + }, + "NotificationNameParameter": { + "name": "notificationName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "RequestPublisherNotificationMessage", + "PurchasePublisherNotificationMessage", + "NewApplicationNotificationMessage", + "BCC", + "NewIssuePublisherNotificationMessage", + "AccountClosedPublisher", + "QuotaLimitApproachingPublisherNotificationMessage" + ], + "x-ms-enum": { + "name": "NotificationName", + "modelAsString": true, + "values": [ + { + "value": "RequestPublisherNotificationMessage", + "description": "The following email recipients and users will receive email notifications about subscription requests for API products requiring approval." + }, + { + "value": "PurchasePublisherNotificationMessage", + "description": "The following email recipients and users will receive email notifications about new API product subscriptions." + }, + { + "value": "NewApplicationNotificationMessage", + "description": "The following email recipients and users will receive email notifications when new applications are submitted to the application gallery." + }, + { + "value": "BCC", + "description": "The following recipients will receive blind carbon copies of all emails sent to developers." + }, + { + "value": "NewIssuePublisherNotificationMessage", + "description": "The following email recipients and users will receive email notifications when a new issue or comment is submitted on the developer portal." + }, + { + "value": "AccountClosedPublisher", + "description": "The following email recipients and users will receive email notifications when developer closes his account." + }, + { + "value": "QuotaLimitApproachingPublisherNotificationMessage", + "description": "The following email recipients and users will receive email notifications when subscription usage gets close to usage quota." + } + ] + }, + "description": "Notification Name Identifier.", + "x-ms-parameter-location": "method" + }, + "NotifySubscriptionStateChangeParameter": { + "name": "notify", + "in": "query", + "required": false, + "type": "boolean", + "description": "Notify change in Subscription State. \n - If false, do not send any email notification for change of state of subscription \n - If true, send email notification of change of state of subscription ", + "x-ms-parameter-location": "method" + }, + "OpenIdConnectIdParameter": { + "name": "opid", + "in": "path", + "required": true, + "type": "string", + "description": "Identifier of the OpenID Connect Provider.", + "maxLength": 256, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "OperationIdParameter": { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "Operation identifier within an API. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 80, + "x-ms-parameter-location": "method" + }, + "PolicyExportFormat": { + "name": "format", + "in": "query", + "required": false, + "type": "string", + "description": "Policy Export Format.", + "enum": [ + "xml", + "rawxml" + ], + "x-ms-enum": { + "name": "PolicyExportFormat", + "modelAsString": true, + "values": [ + { + "value": "xml", + "description": "The contents are inline and Content type is an XML document." + }, + { + "value": "rawxml", + "description": "The contents are inline and Content type is a non XML encoded policy document." + } + ] + }, + "default": "xml", + "x-ms-parameter-location": "method" + }, + "PolicyIdParameter": { + "name": "policyId", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "policy" + ], + "description": "The identifier of the Policy.", + "x-ms-enum": { + "modelAsString": true, + "name": "PolicyIdName" + }, + "x-ms-parameter-location": "method" + }, + "ProductIdParameter": { + "name": "productId", + "in": "path", + "required": true, + "type": "string", + "description": "Product identifier. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 256, + "x-ms-parameter-location": "method" + }, + "NamedValueIdParameter": { + "name": "namedValueId", + "in": "path", + "required": true, + "type": "string", + "description": "Identifier of the NamedValue.", + "maxLength": 256, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "QuotaCounterKeyParameter": { + "name": "quotaCounterKey", + "in": "path", + "required": true, + "type": "string", + "description": "Quota counter key identifier.This is the result of expression defined in counter-key attribute of the quota-by-key policy.For Example, if you specify counter-key=\"boo\" in the policy, then it’s accessible by \"boo\" counter key. But if it’s defined as counter-key=\"@(\"b\"+\"a\")\" then it will be accessible by \"ba\" key", + "x-ms-parameter-location": "method" + }, + "QuotaPeriodKeyParameter": { + "name": "quotaPeriodKey", + "in": "path", + "required": true, + "type": "string", + "description": "Quota period key identifier.", + "x-ms-parameter-location": "method" + }, + "ReleaseIdParameter": { + "name": "releaseId", + "in": "path", + "required": true, + "type": "string", + "description": "Release identifier within an API. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 80, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "SchemaIdParameter": { + "name": "schemaId", + "in": "path", + "required": true, + "type": "string", + "description": "Schema identifier within an API. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 80, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "ServiceNameParameter": { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the API Management service.", + "minLength": 1, + "maxLength": 50, + "pattern": "^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$", + "x-ms-parameter-location": "method" + }, + "SkipQueryParameter": { + "name": "$skip", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "Number of records to skip.", + "minimum": 0, + "x-ms-parameter-location": "method" + }, + "SubscriptionEntityIdParameter": { + "name": "sid", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription entity Identifier. The entity represents the association between a user and a product in API Management.", + "maxLength": 256, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "TagIdParameter": { + "name": "tagId", + "in": "path", + "required": true, + "type": "string", + "description": "Tag identifier. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 80, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "TagDescriptionIdParameter": { + "name": "tagDescriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Tag description identifier. Used when creating tagDescription for API/Tag association. Based on API and Tag names.", + "minLength": 1, + "maxLength": 80, + "pattern": "^[^*#&+:<>?]+$", + "x-ms-parameter-location": "method" + }, + "TemplateNameParameter": { + "name": "templateName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "applicationApprovedNotificationMessage", + "accountClosedDeveloper", + "quotaLimitApproachingDeveloperNotificationMessage", + "newDeveloperNotificationMessage", + "emailChangeIdentityDefault", + "inviteUserNotificationMessage", + "newCommentNotificationMessage", + "confirmSignUpIdentityDefault", + "newIssueNotificationMessage", + "purchaseDeveloperNotificationMessage", + "passwordResetIdentityDefault", + "passwordResetByAdminNotificationMessage", + "rejectDeveloperNotificationMessage", + "requestDeveloperNotificationMessage" + ], + "x-ms-enum": { + "name": "TemplateName", + "modelAsString": true + }, + "description": "Email Template Name Identifier.", + "x-ms-parameter-location": "method" + }, + "TopQueryParameter": { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "Number of records to return.", + "minimum": 1, + "x-ms-parameter-location": "method" + }, + "UserIdParameter": { + "name": "userId", + "in": "path", + "required": true, + "type": "string", + "description": "User identifier. Must be unique in the current API Management service instance.", + "minLength": 1, + "maxLength": 80, + "x-ms-parameter-location": "method" + }, + "GatewayIdParameter": { + "name": "gatewayId", + "in": "path", + "required": true, + "type": "string", + "description": "Gateway entity identifier. Must be unique in the current API Management service instance. Must not have value 'managed'", + "minLength": 1, + "maxLength": 80, + "x-ms-parameter-location": "method" + }, + "GatewayHostnameConfigurationIdParameter": { + "name": "hcId", + "in": "path", + "required": true, + "type": "string", + "description": "Gateway hostname configuration identifier. Must be unique in the scope of parent Gateway entity.", + "minLength": 1, + "maxLength": 80, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimapis.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimapis.json new file mode 100644 index 000000000000..9a765712e354 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimapis.json @@ -0,0 +1,4470 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on API entity and their Operations associated with your Azure API Management deployment.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis": { + "get": { + "tags": [ + "Api" + ], + "operationId": "Api_ListByService", + "description": "Lists all APIs of the API Management service instance.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-create-apis" + }, + "x-ms-examples": { + "ApiManagementListApis": { + "$ref": "./examples/ApiManagementListApis.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| serviceUrl | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| path | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "tags", + "in": "query", + "required": false, + "type": "string", + "description": "Include tags in the response." + }, + { + "name": "expandApiVersionSet", + "in": "query", + "required": false, + "type": "boolean", + "description": "Include full ApiVersionSet resource in response" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Paged Result response of Apis.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ApiContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}": { + "head": { + "tags": [ + "Api" + ], + "operationId": "Api_GetEntityTag", + "description": "Gets the entity state (Etag) version of the API specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApi": { + "$ref": "./examples/ApiManagementHeadApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified API entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Api" + ], + "operationId": "Api_Get", + "description": "Gets the details of the API specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetApiContract": { + "$ref": "./examples/ApiManagementGetApiContract.json" + }, + "ApiManagementGetApiRevisionContract": { + "$ref": "./examples/ApiManagementGetApiRevision.json" + } + }, + "produces": [ + "application/json", + "application/vnd.sun.wadl+xml", + "application/vnd.swagger.doc+json", + "application/wsdl+xml", + "application/vnd.oai.openapi", + "application/vnd.oai.openapi+json" + ], + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified API entity.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Api" + ], + "operationId": "Api_CreateOrUpdate", + "description": "Creates new or updates existing specified API of the API Management service instance.", + "x-ms-examples": { + "ApiManagementCreateApiUsingOai3Import": { + "$ref": "./examples/ApiManagementCreateApiUsingOai3Import.json" + }, + "ApiManagementCreateApiUsingSwaggerImport": { + "$ref": "./examples/ApiManagementCreateApiUsingSwaggerImport.json" + }, + "ApiManagementCreateApiUsingWadlImport": { + "$ref": "./examples/ApiManagementCreateApiUsingWadlImport.json" + }, + "ApiManagementCreateSoapToRestApiUsingWsdlImport": { + "$ref": "./examples/ApiManagementCreateSoapToRestApiUsingWsdlImport.json" + }, + "ApiManagementCreateSoapPassThroughApiUsingWsdlImport": { + "$ref": "./examples/ApiManagementCreateSoapPassThroughApiUsingWsdlImport.json" + }, + "ApiManagementCreateApi": { + "$ref": "./examples/ApiManagementCreateApi.json" + }, + "ApiManagementCreateApiRevisionFromExistingApi": { + "$ref": "./examples/ApiManagementCreateApiRevisionFromExistingApi.json" + }, + "ApiManagementCreateApiNewVersionUsingExistingApi": { + "$ref": "./examples/ApiManagementCreateApiNewVersionUsingExistingApi.json" + }, + "ApiManagementCreateApiClone": { + "$ref": "./examples/ApiManagementCreateApiClone.json" + }, + "ApiManagementCreateApiWithOpenIdConnect": { + "$ref": "./examples/ApiManagementCreateApiWithOpenIdConnect.json" + }, + "ApiManagementCreateApiUsingImportOverrideServiceUrl": { + "$ref": "./examples/ApiManagementCreateApiUsingImportOverrideServiceUrl.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/ApiCreateOrUpdateParameter" + }, + "description": "Create or update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "API was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "202": { + "description": "Request to create or update API was accepted. Location header contains the URL where the status of the long running operation can be checked." + }, + "200": { + "description": "API was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "Api" + ], + "operationId": "Api_Update", + "description": "Updates the specified API of the API Management service instance.", + "x-ms-examples": { + "ApiManagementUpdateApi": { + "$ref": "./examples/ApiManagementUpdateApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/ApiUpdateContract" + }, + "description": "API Update Contract parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The API was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Api" + ], + "operationId": "Api_Delete", + "description": "Deletes the specified API of the API Management service instance.", + "x-ms-examples": { + "ApiManagementDeleteApi": { + "$ref": "./examples/ApiManagementDeleteApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "name": "deleteRevisions", + "in": "query", + "required": false, + "type": "boolean", + "description": "Delete all revisions of the Api." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The API was successfully deleted." + }, + "204": { + "description": "The API was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/revisions": { + "get": { + "tags": [ + "ApiRevision" + ], + "operationId": "ApiRevision_ListByService", + "description": "Lists all revisions of an API.", + "x-ms-examples": { + "ApiManagementListApiRevisions": { + "$ref": "./examples/ApiManagementListApiRevisions.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| apiRevision | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation returns a list of revision details.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiRevisionCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ApiRevisionContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/releases": { + "get": { + "tags": [ + "ApiRelease" + ], + "operationId": "ApiRelease_ListByService", + "description": "Lists all releases of an API. An API release is created when making an API Revision current. Releases are also used to rollback to previous revisions. Results will be paged and can be constrained by the $top and $skip parameters.", + "x-ms-examples": { + "ApiManagementListApiReleases": { + "$ref": "./examples/ApiManagementListApiReleases.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| notes | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation returns a list of API Releases.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiReleaseCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ApiReleaseContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/releases/{releaseId}": { + "head": { + "tags": [ + "ApiRelease" + ], + "operationId": "ApiRelease_GetEntityTag", + "description": "Returns the etag of an API release.", + "x-ms-examples": { + "ApiManagementHeadApiRelease": { + "$ref": "./examples/ApiManagementHeadApiRelease.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ReleaseIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Gets the entity state (Etag) version of the api release as specified by its identifier.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiRelease" + ], + "operationId": "ApiRelease_Get", + "description": "Returns the details of an API release.", + "x-ms-examples": { + "ApiManagementGetApiRelease": { + "$ref": "./examples/ApiManagementGetApiRelease.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ReleaseIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation returns the details of an API Release.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiReleaseContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiRelease" + ], + "operationId": "ApiRelease_CreateOrUpdate", + "description": "Creates a new Release for the API.", + "x-ms-examples": { + "ApiManagementCreateApiRelease": { + "$ref": "./examples/ApiManagementCreateApiRelease.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ReleaseIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/ApiReleaseContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Release was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiReleaseContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Release was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiReleaseContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "ApiRelease" + ], + "operationId": "ApiRelease_Update", + "description": "Updates the details of the release of the API specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateApiRelease": { + "$ref": "./examples/ApiManagementUpdateApiRelease.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ReleaseIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/ApiReleaseContract" + }, + "description": "API Release Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Release successfully updated" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiRelease" + ], + "operationId": "ApiRelease_Delete", + "description": "Deletes the specified release in the API.", + "x-ms-examples": { + "ApiManagementDeleteApiRelease": { + "$ref": "./examples/ApiManagementDeleteApiRelease.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ReleaseIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "API release successfully removed" + }, + "204": { + "description": "API release successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations": { + "get": { + "tags": [ + "ApiOperation" + ], + "operationId": "ApiOperation_ListByApi", + "description": "Lists a collection of the operations for the specified API.", + "x-ms-examples": { + "ApiManagementListApiOperations": { + "$ref": "./examples/ApiManagementListApiOperations.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| method | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| urlTemplate | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "tags", + "in": "query", + "required": false, + "type": "string", + "description": "Include tags in the response." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A collection of operation summary entities at the API level.", + "schema": { + "$ref": "./definitions.json#/definitions/OperationCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/OperationContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}": { + "head": { + "tags": [ + "ApiOperation" + ], + "operationId": "ApiOperation_GetEntityTag", + "description": "Gets the entity state (Etag) version of the API operation specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiOperation": { + "$ref": "./examples/ApiManagementHeadApiOperation.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified API operation entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiOperation" + ], + "operationId": "ApiOperation_Get", + "description": "Gets the details of the API Operation specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetApiOperation": { + "$ref": "./examples/ApiManagementGetApiOperation.json" + }, + "ApiManagementGetApiOperationPetStore": { + "$ref": "./examples/ApiManagementGetApiOperationPetStore.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Operation entity.", + "schema": { + "$ref": "./definitions.json#/definitions/OperationContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiOperation" + ], + "operationId": "ApiOperation_CreateOrUpdate", + "description": "Creates a new operation in the API or updates an existing one.", + "x-ms-examples": { + "ApiManagementCreateApiOperation": { + "$ref": "./examples/ApiManagementCreateApiOperation.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/OperationContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Operation was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/OperationContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Operation was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/OperationContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "ApiOperation" + ], + "operationId": "ApiOperation_Update", + "description": "Updates the details of the operation in the API specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateApiOperation": { + "$ref": "./examples/ApiManagementUpdateApiOperation.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/OperationUpdateContract" + }, + "description": "API Operation Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The operation was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiOperation" + ], + "operationId": "ApiOperation_Delete", + "description": "Deletes the specified operation in the API.", + "x-ms-examples": { + "ApiManagementDeleteApiOperation": { + "$ref": "./examples/ApiManagementDeleteApiOperation.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "API operation successfully removed" + }, + "204": { + "description": "API operation successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}/policies": { + "get": { + "tags": [ + "ApiOperationPolicy" + ], + "operationId": "ApiOperationPolicy_ListByOperation", + "description": "Get the list of policy configuration at the API Operation level.", + "x-ms-examples": { + "ApiManagementListApiOperationPolicies": { + "$ref": "./examples/ApiManagementListApiOperationPolicies.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Api Operations Policy Collection.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}/policies/{policyId}": { + "head": { + "tags": [ + "ApiOperationPolicy" + ], + "operationId": "ApiOperationPolicy_GetEntityTag", + "description": "Gets the entity state (Etag) version of the API operation policy specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiOperationPolicy": { + "$ref": "./examples/ApiManagementHeadApiOperationPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified API operation policy entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiOperationPolicy" + ], + "operationId": "ApiOperationPolicy_Get", + "description": "Get the policy configuration at the API Operation level.", + "x-ms-examples": { + "ApiManagementGetApiOperationPolicy": { + "$ref": "./examples/ApiManagementGetApiOperationPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyExportFormat" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Api Operation Policy information.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiOperationPolicy" + ], + "operationId": "ApiOperationPolicy_CreateOrUpdate", + "description": "Creates or updates policy configuration for the API Operation level.", + "x-ms-examples": { + "ApiManagementCreateApiOperationPolicy": { + "$ref": "./examples/ApiManagementCreateApiOperationPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "description": "The policy contents to apply." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Api Operation policy configuration was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Api Operation policy configuration of the tenant was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiOperationPolicy" + ], + "operationId": "ApiOperationPolicy_Delete", + "description": "Deletes the policy configuration at the Api Operation.", + "x-ms-examples": { + "ApiManagementDeleteApiOperationPolicy": { + "$ref": "./examples/ApiManagementDeleteApiOperationPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Policy successfully removed" + }, + "204": { + "description": "Policy successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}/tags": { + "get": { + "tags": [ + "ApiOperationTag" + ], + "operationId": "Tag_ListByOperation", + "description": "Lists all Tags associated with the Operation.", + "x-ms-examples": { + "ApiManagementListApiOperationTags": { + "$ref": "./examples/ApiManagementListApiOperationTags.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation returns a collection of tags associated with the Operation entity.", + "schema": { + "$ref": "./definitions.json#/definitions/TagCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/TagContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}/tags/{tagId}": { + "head": { + "tags": [ + "ApiOperationTag" + ], + "operationId": "Tag_GetEntityStateByOperation", + "description": "Gets the entity state version of the tag specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiOperationTag": { + "$ref": "./examples/ApiManagementHeadApiOperationTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Empty response body, ETag header entity state version.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiOperationTag" + ], + "operationId": "Tag_GetByOperation", + "description": "Get tag associated with the Operation.", + "x-ms-examples": { + "ApiManagementGetApiOperationTag": { + "$ref": "./examples/ApiManagementGetApiOperationTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Gets the details of the tag specified by its identifier.", + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiOperationTag" + ], + "operationId": "Tag_AssignToOperation", + "description": "Assign tag to the Operation.", + "x-ms-examples": { + "ApiManagementCreateApiOperationTag": { + "$ref": "./examples/ApiManagementCreateApiOperationTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Tag was assigned to the Operation.", + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + } + }, + "200": { + "description": "Tag is already assigned to the Operation.", + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiOperationTag" + ], + "operationId": "Tag_DetachFromOperation", + "description": "Detach the tag from the Operation.", + "x-ms-examples": { + "ApiManagementDeleteApiOperationTag": { + "$ref": "./examples/ApiManagementDeleteApiOperationTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OperationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Tag was successfully removed from Operation" + }, + "204": { + "description": "Tag successfully removed by previous request or does not exist in Operation" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/products": { + "get": { + "tags": [ + "ApiProduct" + ], + "operationId": "ApiProduct_ListByApis", + "description": "Lists all Products, which the API is part of.", + "x-ms-examples": { + "ApiManagementListApiProducts": { + "$ref": "./examples/ApiManagementListApiProducts.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation returns a collection of products which have the Api entity.", + "schema": { + "$ref": "./definitions.json#/definitions/ProductCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ProductContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/policies": { + "get": { + "tags": [ + "ApiPolicy" + ], + "operationId": "ApiPolicy_ListByApi", + "description": "Get the policy configuration at the API level.", + "x-ms-examples": { + "ApiManagementListApiPolicies": { + "$ref": "./examples/ApiManagementListApiPolicies.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Apis Policy Collection.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/policies/{policyId}": { + "head": { + "tags": [ + "ApiPolicy" + ], + "operationId": "ApiPolicy_GetEntityTag", + "description": "Gets the entity state (Etag) version of the API policy specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiPolicy": { + "$ref": "./examples/ApiManagementHeadApiPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified API Policy entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiPolicy" + ], + "operationId": "ApiPolicy_Get", + "description": "Get the policy configuration at the API level.", + "x-ms-examples": { + "ApiManagementGetApiPolicy": { + "$ref": "./examples/ApiManagementGetApiPolicy.json" + } + }, + "produces": [ + "application/json", + "application/vnd.ms-azure-apim.policy+xml", + "application/vnd.ms-azure-apim.policy.raw+xml" + ], + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyExportFormat" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Api Policy information.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiPolicy" + ], + "operationId": "ApiPolicy_CreateOrUpdate", + "description": "Creates or updates policy configuration for the API.", + "x-ms-examples": { + "ApiManagementCreateApiPolicy": { + "$ref": "./examples/ApiManagementCreateApiPolicy.json" + }, + "ApiManagementCreateApiPolicyNonXmlEncoded": { + "$ref": "./examples/ApiManagementCreateApiPolicyNonXmlEncoded.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "description": "The policy contents to apply." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Api policy configuration was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Api policy configuration of the tenant was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiPolicy" + ], + "operationId": "ApiPolicy_Delete", + "description": "Deletes the policy configuration at the Api.", + "x-ms-examples": { + "ApiManagementDeleteApiPolicy": { + "$ref": "./examples/ApiManagementDeleteApiPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the policy configuration at the API level." + }, + "204": { + "description": "Successfully deleted the policy configuration at the API level." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/schemas": { + "get": { + "tags": [ + "ApiSchema" + ], + "operationId": "ApiSchema_ListByApi", + "description": "Get the schema configuration at the API level.", + "x-ms-examples": { + "ApiManagementListApiSchemas": { + "$ref": "./examples/ApiManagementListApiSchemas.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| contentType | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Apis Schema Collection.", + "schema": { + "$ref": "./definitions.json#/definitions/SchemaCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/schemas/{schemaId}": { + "head": { + "tags": [ + "ApiSchema" + ], + "operationId": "ApiSchema_GetEntityTag", + "description": "Gets the entity state (Etag) version of the schema specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiSchema": { + "$ref": "./examples/ApiManagementHeadApiSchema.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SchemaIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified schema entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiSchema" + ], + "operationId": "ApiSchema_Get", + "description": "Get the schema configuration at the API level.", + "x-ms-examples": { + "ApiManagementGetApiSchema": { + "$ref": "./examples/ApiManagementGetApiSchema.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SchemaIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Api Schema information.", + "schema": { + "$ref": "./definitions.json#/definitions/SchemaContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiSchema" + ], + "operationId": "ApiSchema_CreateOrUpdate", + "description": "Creates or updates schema configuration for the API.", + "x-ms-examples": { + "ApiManagementCreateApiSchema": { + "$ref": "./examples/ApiManagementCreateApiSchema.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SchemaIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/SchemaContract" + }, + "description": "The schema contents to apply." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Request to create or update Api schema configuration was accepted. Location header contains the URL where the status of the long running operation can be checked." + }, + "201": { + "description": "Api schema configuration was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/SchemaContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Api schema configuration of the tenant was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/SchemaContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "delete": { + "tags": [ + "ApiSchema" + ], + "operationId": "ApiSchema_Delete", + "description": "Deletes the schema configuration at the Api.", + "x-ms-examples": { + "ApiManagementDeleteApiSchema": { + "$ref": "./examples/ApiManagementDeleteApiSchema.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SchemaIdParameter" + }, + { + "name": "force", + "in": "query", + "required": false, + "type": "boolean", + "description": "If true removes all references to the schema before deleting it." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the schema configuration at the API level." + }, + "204": { + "description": "Successfully deleted the schema configuration at the API level." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/diagnostics": { + "get": { + "tags": [ + "ApiDiagnostic" + ], + "operationId": "ApiDiagnostic_ListByService", + "description": "Lists all diagnostics of an API.", + "x-ms-examples": { + "ApiManagementListApiDiagnostics": { + "$ref": "./examples/ApiManagementListApiDiagnostics.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Paged Result response of diagnostics for an API.", + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/DiagnosticContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/diagnostics/{diagnosticId}": { + "head": { + "tags": [ + "ApiDiagnostic" + ], + "operationId": "ApiDiagnostic_GetEntityTag", + "description": "Gets the entity state (Etag) version of the Diagnostic for an API specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiDiagnostic": { + "$ref": "./examples/ApiManagementHeadApiDiagnostic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/DiagnosticIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation completed successfully.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiDiagnostic" + ], + "operationId": "ApiDiagnostic_Get", + "description": "Gets the details of the Diagnostic for an API specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetApiDiagnostic": { + "$ref": "./examples/ApiManagementGetApiDiagnostic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/DiagnosticIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Diagnostic entity.", + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiDiagnostic" + ], + "operationId": "ApiDiagnostic_CreateOrUpdate", + "description": "Creates a new Diagnostic for an API or updates an existing one.", + "x-ms-examples": { + "ApiManagementCreateApiDiagnostic": { + "$ref": "./examples/ApiManagementCreateApiDiagnostic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/DiagnosticIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Diagnostic was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Diagnostic was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "ApiDiagnostic" + ], + "operationId": "ApiDiagnostic_Update", + "description": "Updates the details of the Diagnostic for an API specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateApiDiagnostic": { + "$ref": "./examples/ApiManagementUpdateApiDiagnostic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/DiagnosticIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticContract" + }, + "description": "Diagnostic Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The Diagnostic was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiDiagnostic" + ], + "operationId": "ApiDiagnostic_Delete", + "description": "Deletes the specified Diagnostic from an API.", + "x-ms-examples": { + "ApiManagementDeleteApiDiagnostic": { + "$ref": "./examples/ApiManagementDeleteApiDiagnostic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/DiagnosticIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Diagnostic successfully removed" + }, + "204": { + "description": "Diagnostic successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues": { + "get": { + "tags": [ + "ApiIssue" + ], + "operationId": "ApiIssue_ListByService", + "description": "Lists all issues associated with the specified API.", + "x-ms-examples": { + "ApiManagementListApiIssues": { + "$ref": "./examples/ApiManagementListApiIssues.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| userId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| state | filter | eq | |
" + }, + { + "name": "expandCommentsAttachments", + "in": "query", + "required": false, + "type": "boolean", + "description": "Expand the comment attachments. " + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Paged Result response of issues for the API.", + "schema": { + "$ref": "./definitions.json#/definitions/IssueCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/IssueContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues/{issueId}": { + "head": { + "tags": [ + "ApiIssue" + ], + "operationId": "ApiIssue_GetEntityTag", + "description": "Gets the entity state (Etag) version of the Issue for an API specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiIssue": { + "$ref": "./examples/ApiManagementHeadApiIssue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation completed successfully.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiIssue" + ], + "operationId": "ApiIssue_Get", + "description": "Gets the details of the Issue for an API specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetApiIssue": { + "$ref": "./examples/ApiManagementGetApiIssue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "name": "expandCommentsAttachments", + "in": "query", + "required": false, + "type": "boolean", + "description": "Expand the comment attachments. " + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Issue entity.", + "schema": { + "$ref": "./definitions.json#/definitions/IssueContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiIssue" + ], + "operationId": "ApiIssue_CreateOrUpdate", + "description": "Creates a new Issue for an API or updates an existing one.", + "x-ms-examples": { + "ApiManagementCreateApiIssue": { + "$ref": "./examples/ApiManagementCreateApiIssue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/IssueContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "New api issue successfully added", + "schema": { + "$ref": "./definitions.json#/definitions/IssueContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Api issue successfully updated", + "schema": { + "$ref": "./definitions.json#/definitions/IssueContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "ApiIssue" + ], + "operationId": "ApiIssue_Update", + "description": "Updates an existing issue for an API.", + "x-ms-examples": { + "ApiManagementUpdateApiIssue": { + "$ref": "./examples/ApiManagementUpdateApiIssue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/IssueUpdateContract" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Api issue updated successfully" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiIssue" + ], + "operationId": "ApiIssue_Delete", + "description": "Deletes the specified Issue from an API.", + "x-ms-examples": { + "ApiManagementDeleteApiIssue": { + "$ref": "./examples/ApiManagementDeleteApiIssue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Issue successfully removed" + }, + "204": { + "description": "Issue successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues/{issueId}/comments": { + "get": { + "tags": [ + "ApiIssueComment" + ], + "operationId": "ApiIssueComment_ListByService", + "description": "Lists all comments for the Issue associated with the specified API.", + "x-ms-examples": { + "ApiManagementListApiIssueComments": { + "$ref": "./examples/ApiManagementListApiIssueComments.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| userId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Paged Result response of issue comments for the API.", + "schema": { + "$ref": "./definitions.json#/definitions/IssueCommentCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/IssueCommentContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues/{issueId}/comments/{commentId}": { + "head": { + "tags": [ + "ApiIssueComment" + ], + "operationId": "ApiIssueComment_GetEntityTag", + "description": "Gets the entity state (Etag) version of the issue Comment for an API specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiIssueComment": { + "$ref": "./examples/ApiManagementHeadApiIssueComment.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CommentIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation completed successfully.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiIssueComment" + ], + "operationId": "ApiIssueComment_Get", + "description": "Gets the details of the issue Comment for an API specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetApiIssueComment": { + "$ref": "./examples/ApiManagementGetApiIssueComment.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CommentIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified issue Comment entity.", + "schema": { + "$ref": "./definitions.json#/definitions/IssueCommentContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiIssueComment" + ], + "operationId": "ApiIssueComment_CreateOrUpdate", + "description": "Creates a new Comment for the Issue in an API or updates an existing one.", + "x-ms-examples": { + "ApiManagementCreateApiIssueComment": { + "$ref": "./examples/ApiManagementCreateApiIssueComment.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CommentIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/IssueCommentContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "New api issue comment successfully added", + "schema": { + "$ref": "./definitions.json#/definitions/IssueCommentContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Api issue comment successfully updated", + "schema": { + "$ref": "./definitions.json#/definitions/IssueCommentContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiIssueComment" + ], + "operationId": "ApiIssueComment_Delete", + "description": "Deletes the specified comment from an Issue.", + "x-ms-examples": { + "ApiManagementDeleteApiIssueComment": { + "$ref": "./examples/ApiManagementDeleteApiIssueComment.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CommentIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Comment successfully removed" + }, + "204": { + "description": "Comment successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues/{issueId}/attachments": { + "get": { + "tags": [ + "ApiIssueAttachment" + ], + "operationId": "ApiIssueAttachment_ListByService", + "description": "Lists all attachments for the Issue associated with the specified API.", + "x-ms-examples": { + "ApiManagementListApiIssueAttachments": { + "$ref": "./examples/ApiManagementListApiIssueAttachments.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| userId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Paged Result response of issue attachments for the API.", + "schema": { + "$ref": "./definitions.json#/definitions/IssueAttachmentCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/IssueAttachmentContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/issues/{issueId}/attachments/{attachmentId}": { + "head": { + "tags": [ + "ApiIssueAttachment" + ], + "operationId": "ApiIssueAttachment_GetEntityTag", + "description": "Gets the entity state (Etag) version of the issue Attachment for an API specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiIssueAttachment": { + "$ref": "./examples/ApiManagementHeadApiIssueAttachment.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AttachmentIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation completed successfully.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiIssueAttachment" + ], + "operationId": "ApiIssueAttachment_Get", + "description": "Gets the details of the issue Attachment for an API specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetApiIssueAttachment": { + "$ref": "./examples/ApiManagementGetApiIssueAttachment.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AttachmentIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified issue Attachment entity.", + "schema": { + "$ref": "./definitions.json#/definitions/IssueAttachmentContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiIssueAttachment" + ], + "operationId": "ApiIssueAttachment_CreateOrUpdate", + "description": "Creates a new Attachment for the Issue in an API or updates an existing one.", + "x-ms-examples": { + "ApiManagementCreateApiIssueAttachment": { + "$ref": "./examples/ApiManagementCreateApiIssueAttachment.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AttachmentIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/IssueAttachmentContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "New api issue attachment successfully added", + "schema": { + "$ref": "./definitions.json#/definitions/IssueAttachmentContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Api issue attachment successfully updated", + "schema": { + "$ref": "./definitions.json#/definitions/IssueAttachmentContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiIssueAttachment" + ], + "operationId": "ApiIssueAttachment_Delete", + "description": "Deletes the specified comment from an Issue.", + "x-ms-examples": { + "ApiManagementDeleteApiIssueAttachment": { + "$ref": "./examples/ApiManagementDeleteApiIssueAttachment.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AttachmentIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Attachment successfully removed" + }, + "204": { + "description": "Attachment successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/tagDescriptions": { + "get": { + "tags": [ + "ApiTagDescription" + ], + "operationId": "ApiTagDescription_ListByService", + "description": "Lists all Tags descriptions in scope of API. Model similar to swagger - tagDescription is defined on API level but tag may be assigned to the Operations", + "x-ms-examples": { + "ApiManagementListApiTagDescriptions": { + "$ref": "./examples/ApiManagementListApiTagDescriptions.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation returns a collection of tagDescriptions associated with the Api entity.", + "schema": { + "$ref": "./definitions.json#/definitions/TagDescriptionCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/TagDescriptionContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/tagDescriptions/{tagDescriptionId}": { + "head": { + "tags": [ + "ApiTagDescription" + ], + "operationId": "ApiTagDescription_GetEntityTag", + "description": "Gets the entity state version of the tag specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiTagDescription": { + "$ref": "./examples/ApiManagementHeadApiTagDescription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagDescriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Empty response body, ETag header entity state version.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiTagDescription" + ], + "operationId": "ApiTagDescription_Get", + "description": "Get Tag description in scope of API", + "x-ms-examples": { + "ApiManagementGetApiTagDescription": { + "$ref": "./examples/ApiManagementGetApiTagDescription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagDescriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Gets the description of the tag specified by its identifier in scope if the Api.", + "schema": { + "$ref": "./definitions.json#/definitions/TagDescriptionContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiTagDescription" + ], + "operationId": "ApiTagDescription_CreateOrUpdate", + "description": "Create/Update tag description in scope of the Api.", + "x-ms-examples": { + "ApiManagementCreateApiTagDescription": { + "$ref": "./examples/ApiManagementCreateApiTagDescription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagDescriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/TagDescriptionCreateParameters" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Tag Description was created for the Api.", + "schema": { + "$ref": "./definitions.json#/definitions/TagDescriptionContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Tag Description was updated for the Api.", + "schema": { + "$ref": "./definitions.json#/definitions/TagDescriptionContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiTagDescription" + ], + "operationId": "ApiTagDescription_Delete", + "description": "Delete tag description for the Api.", + "x-ms-examples": { + "ApiManagementDeleteApiTagDescription": { + "$ref": "./examples/ApiManagementDeleteApiTagDescription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagDescriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Tag description successfully removed" + }, + "204": { + "description": "Tag description successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/tags": { + "get": { + "tags": [ + "ApiTag" + ], + "operationId": "Tag_ListByApi", + "description": "Lists all Tags associated with the API.", + "x-ms-examples": { + "ApiManagementListApiTags": { + "$ref": "./examples/ApiManagementListApiTags.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation returns a collection of tags associated with the Api entity.", + "schema": { + "$ref": "./definitions.json#/definitions/TagCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/TagContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/tags/{tagId}": { + "head": { + "tags": [ + "ApiTag" + ], + "operationId": "Tag_GetEntityStateByApi", + "description": "Gets the entity state version of the tag specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiTag": { + "$ref": "./examples/ApiManagementHeadApiTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Empty response body, ETag header entity state version.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiTag" + ], + "operationId": "Tag_GetByApi", + "description": "Get tag associated with the API.", + "x-ms-examples": { + "ApiManagementGetApiTag": { + "$ref": "./examples/ApiManagementGetApiTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Gets the details of the tag specified by its identifier.", + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiTag" + ], + "operationId": "Tag_AssignToApi", + "description": "Assign tag to the Api.", + "x-ms-examples": { + "ApiManagementCreateApiTag": { + "$ref": "./examples/ApiManagementCreateApiTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Tag was assigned to the Api.", + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Tag is already assigned to the Api.", + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiTag" + ], + "operationId": "Tag_DetachFromApi", + "description": "Detach the tag from the Api.", + "x-ms-examples": { + "ApiManagementDeleteApiTag": { + "$ref": "./examples/ApiManagementDeleteApiTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "API/Tag association successfully removed" + }, + "204": { + "description": "API/Tag association successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operationsByTags": { + "get": { + "tags": [ + "ApiOperationsByTag" + ], + "operationId": "Operation_ListByTags", + "description": "Lists a collection of operations associated with tags.", + "x-ms-examples": { + "ApiManagementListApiOperationsByTags": { + "$ref": "./examples/ApiManagementListApiOperationsByTags.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| apiName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| method | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| urlTemplate | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "includeNotTaggedOperations", + "in": "query", + "required": false, + "type": "boolean", + "description": "Include not tagged Operations." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of TagResource entities.", + "schema": { + "$ref": "./definitions.json#/definitions/TagResourceCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/TagResourceContract" + } + } + }, + "x-ms-paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}?export=true": { + "get": { + "tags": [ + "Apis" + ], + "operationId": "ApiExport_Get", + "description": "Gets the details of the API specified by its identifier in the format specified to the Storage Blob with SAS Key valid for 5 minutes.", + "x-ms-examples": { + "ApiManagementGetApiExportInOpenApi2dot0": { + "$ref": "./examples/ApiManagementGetApiExportInOpenApi2dot0.json" + }, + "ApiManagementGetApiExportInOpenApi3dot0": { + "$ref": "./examples/ApiManagementGetApiExportInOpenApi3dot0.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "name": "format", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "swagger-link", + "wadl-link", + "wsdl-link", + "openapi-link", + "openapi+json-link" + ], + "x-ms-enum": { + "name": "ExportFormat", + "modelAsString": true, + "values": [ + { + "value": "swagger-link", + "description": "Export the Api Definition in OpenApi Specification 2.0 format to the Storage Blob.", + "name": "Swagger" + }, + { + "value": "wsdl-link", + "description": "Export the Api Definition in WSDL Schema to Storage Blob. This is only supported for APIs of Type `soap`", + "name": "Wsdl" + }, + { + "value": "wadl-link", + "description": "Export the Api Definition in WADL Schema to Storage Blob.", + "name": "Wadl" + }, + { + "value": "openapi-link", + "description": "Export the Api Definition in OpenApi Specification 3.0 to Storage Blob.", + "name": "Openapi" + }, + { + "value": "openapi+json-link", + "description": "Export the Api Definition in OpenApi Specification 3.0 as JSON document to Storage Blob.", + "name": "OpenapiJson" + } + ] + }, + "description": "Format in which to export the Api Details to the Storage Blob with Sas Key valid for 5 minutes." + }, + { + "name": "export", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "true" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "ExportApi" + }, + "description": "Query parameter required to export the API details." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response contains a stream with a full set of API metadata and includes API entity with an embedded array of operation entities.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiExportResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimapisByTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimapisByTags.json new file mode 100644 index 000000000000..d258f00b3b84 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimapisByTags.json @@ -0,0 +1,106 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing retrieve a collection of Apis associated with a tag in Azure API Management deployment.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apisByTags": { + "get": { + "tags": [ + "ApisByTag" + ], + "operationId": "Api_ListByTags", + "description": "Lists a collection of apis associated with tags.", + "x-ms-examples": { + "ApiManagementListApisByTags": { + "$ref": "./examples/ApiManagementListApisByTags.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Supported operators | Supported functions |\n|-------------|------------------------|-----------------------------------|\n\r\n|name | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith|\n|displayName | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith|\n|apiRevision | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith|\n|path | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith|\n|description | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith|\n|serviceUrl | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith|\n|isCurrent | eq | |\n" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "includeNotTaggedApis", + "in": "query", + "required": false, + "type": "boolean", + "description": "Include not tagged APIs." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of TagResource entities.", + "schema": { + "$ref": "./definitions.json#/definitions/TagResourceCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/TagResourceContract" + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimapiversionsets.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimapiversionsets.json new file mode 100644 index 000000000000..10836b0067fe --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimapiversionsets.json @@ -0,0 +1,367 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on the ApiVersionSet entity associated with your Azure API Management deployment. Using this entity you create and manage API Version Sets that are used to group APIs for consistent versioning.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apiVersionSets": { + "get": { + "tags": [ + "ApiVersionSet" + ], + "operationId": "ApiVersionSet_ListByService", + "description": "Lists a collection of API Version Sets in the specified service instance.", + "x-ms-examples": { + "ApiManagementListApiVersionSets": { + "$ref": "./examples/ApiManagementListApiVersionSets.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Api Version Set entities.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiVersionSetCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ApiVersionSetContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apiVersionSets/{versionSetId}": { + "head": { + "tags": [ + "ApiVersionSet" + ], + "operationId": "ApiVersionSet_GetEntityTag", + "description": "Gets the entity state (Etag) version of the Api Version Set specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadApiVersionSet": { + "$ref": "./examples/ApiManagementHeadApiVersionSet.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionSetIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified Api Version Set entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ApiVersionSet" + ], + "operationId": "ApiVersionSet_Get", + "description": "Gets the details of the Api Version Set specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetApiVersionSet": { + "$ref": "./examples/ApiManagementGetApiVersionSet.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionSetIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Gets the specified Api Version Set entity.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiVersionSetContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ApiVersionSet" + ], + "operationId": "ApiVersionSet_CreateOrUpdate", + "description": "Creates or Updates a Api Version Set.", + "x-ms-examples": { + "ApiManagementCreateApiVersionSet": { + "$ref": "./examples/ApiManagementCreateApiVersionSet.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionSetIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/ApiVersionSetContract" + }, + "description": "Create or update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Api Version Set was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiVersionSetContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Api Version Set was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiVersionSetContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "ApiVersionSet" + ], + "operationId": "ApiVersionSet_Update", + "description": "Updates the details of the Api VersionSet specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateApiVersionSet": { + "$ref": "./examples/ApiManagementUpdateApiVersionSet.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionSetIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/ApiVersionSetUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The Api Version Set details were successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiVersionSets" + ], + "operationId": "ApiVersionSet_Delete", + "description": "Deletes specific Api Version Set.", + "x-ms-examples": { + "ApiManagementDeleteApiVersionSet": { + "$ref": "./examples/ApiManagementDeleteApiVersionSet.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionSetIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The ApiVersion Set details were successfully deleted." + }, + "204": { + "description": "The ApiVersion Set details were successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimauthorizationservers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimauthorizationservers.json new file mode 100644 index 000000000000..a2f12fb89edf --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimauthorizationservers.json @@ -0,0 +1,412 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for managing OAuth2 servers configuration in your Azure API Management deployment. OAuth 2.0 can be used to authorize developer accounts for Azure API Management. For more information refer to [How to OAuth2](https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-oauth2).", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/authorizationServers": { + "get": { + "tags": [ + "AuthorizationServer" + ], + "operationId": "AuthorizationServer_ListByService", + "description": "Lists a collection of authorization servers defined within a service instance.", + "x-ms-examples": { + "ApiManagementListAuthorizationServers": { + "$ref": "./examples/ApiManagementListAuthorizationServers.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A Collection of the Authorization Server entities for the specified API Management service instance.", + "schema": { + "$ref": "./definitions.json#/definitions/AuthorizationServerCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/AuthorizationServerContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/authorizationServers/{authsid}": { + "head": { + "tags": [ + "AuthorizationServer" + ], + "operationId": "AuthorizationServer_GetEntityTag", + "description": "Gets the entity state (Etag) version of the authorizationServer specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadAuthorizationServer": { + "$ref": "./examples/ApiManagementHeadAuthorizationServer.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AuthenticationServerIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified authorization server entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "AuthorizationServer" + ], + "operationId": "AuthorizationServer_Get", + "description": "Gets the details of the authorization server specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetAuthorizationServer": { + "$ref": "./examples/ApiManagementGetAuthorizationServer.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AuthenticationServerIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Gets the details of the specified authorization server.", + "schema": { + "$ref": "./definitions.json#/definitions/AuthorizationServerContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "AuthorizationServer" + ], + "operationId": "AuthorizationServer_CreateOrUpdate", + "description": "Creates new authorization server or updates an existing authorization server.", + "x-ms-examples": { + "ApiManagementCreateAuthorizationServer": { + "$ref": "./examples/ApiManagementCreateAuthorizationServer.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AuthenticationServerIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/AuthorizationServerContract" + }, + "description": "Create or update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Authorization server was successfully registered.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/AuthorizationServerContract" + } + }, + "200": { + "description": "Authorization server is already registered.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/AuthorizationServerContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "AuthorizationServer" + ], + "operationId": "AuthorizationServer_Update", + "description": "Updates the details of the authorization server specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateAuthorizationServer": { + "$ref": "./examples/ApiManagementUpdateAuthorizationServer.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AuthenticationServerIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/AuthorizationServerUpdateContract" + }, + "description": "OAuth2 Server settings Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The authorization server settings were successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "AuthorizationServer" + ], + "operationId": "AuthorizationServer_Delete", + "description": "Deletes specific authorization server instance.", + "x-ms-examples": { + "ApiManagementDeleteAuthorizationServer": { + "$ref": "./examples/ApiManagementDeleteAuthorizationServer.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AuthenticationServerIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The authorization server settings were successfully deleted." + }, + "204": { + "description": "The authorization server settings were successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/authorizationServers/{authsid}/listSecrets": { + "post": { + "tags": [ + "AuthorizationServer" + ], + "operationId": "AuthorizationServer_ListSecrets", + "description": "Gets the client secret details of the authorization server.", + "x-ms-examples": { + "ApiManagementListSecretsAuthorizationServer": { + "$ref": "./examples/ApiManagementListSecretsAuthorizationServer.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AuthenticationServerIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the client secret.", + "schema": { + "$ref": "./definitions.json#/definitions/ClientSecretContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimbackends.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimbackends.json new file mode 100644 index 000000000000..db1988b2971e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimbackends.json @@ -0,0 +1,421 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Backend entity in Azure API Management deployment. The Backend entity in API Management represents a backend service that is configured to skip certification chain validation when using a self-signed certificate to test mutual certificate authentication.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/backends": { + "get": { + "tags": [ + "Backend" + ], + "operationId": "Backend_ListByService", + "description": "Lists a collection of backends in the specified service instance.", + "x-ms-examples": { + "ApiManagementListBackends": { + "$ref": "./examples/ApiManagementListBackends.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| title | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| url | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Backend entities.", + "schema": { + "$ref": "./definitions.json#/definitions/BackendCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/BackendContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/backends/{backendId}": { + "head": { + "tags": [ + "Backend" + ], + "operationId": "Backend_GetEntityTag", + "description": "Gets the entity state (Etag) version of the backend specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadBackend": { + "$ref": "./examples/ApiManagementHeadBackend.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/BackendIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified backend entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Backend" + ], + "operationId": "Backend_Get", + "description": "Gets the details of the backend specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetBackend": { + "$ref": "./examples/ApiManagementGetBackend.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/BackendIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Backend entity.", + "schema": { + "$ref": "./definitions.json#/definitions/BackendContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Backend" + ], + "operationId": "Backend_CreateOrUpdate", + "description": "Creates or Updates a backend.", + "x-ms-examples": { + "ApiManagementCreateBackendServiceFabric": { + "$ref": "./examples/ApiManagementCreateBackendServiceFabric.json" + }, + "ApiManagementCreateBackendProxyBackend": { + "$ref": "./examples/ApiManagementCreateBackendProxyBackend.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/BackendIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/BackendContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Backend was successfully created.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/BackendContract" + } + }, + "200": { + "description": "The existing backend was successfully updated.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/BackendContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Backend" + ], + "operationId": "Backend_Update", + "description": "Updates an existing backend.", + "x-ms-examples": { + "ApiManagementUpdateBackend": { + "$ref": "./examples/ApiManagementUpdateBackend.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/BackendIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/BackendUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The existing backend was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Backend" + ], + "operationId": "Backend_Delete", + "description": "Deletes the specified backend.", + "x-ms-examples": { + "ApiManagementDeleteBackend": { + "$ref": "./examples/ApiManagementDeleteBackend.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/BackendIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The backend was successfully deleted." + }, + "204": { + "description": "The backend was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/backends/{backendId}/reconnect": { + "post": { + "tags": [ + "BackendReconnect" + ], + "operationId": "Backend_Reconnect", + "description": "Notifies the APIM proxy to create a new connection to the backend after the specified timeout. If no timeout was specified, timeout of 2 minutes is used.", + "x-ms-examples": { + "ApiManagementBackendReconnect": { + "$ref": "./examples/ApiManagementBackendReconnect.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/BackendIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "./definitions.json#/definitions/BackendReconnectContract" + }, + "description": "Reconnect request parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Reconnect request accepted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimcaches.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimcaches.json new file mode 100644 index 000000000000..96c03f0aa95b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimcaches.json @@ -0,0 +1,363 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Cache entity in your Azure API Management deployment. Azure API Management also allows for caching responses in an external Azure Cache for Redis. For more information refer to [External Redis Cache in ApiManagement](https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-cache-external).", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/caches": { + "get": { + "tags": [ + "Cache" + ], + "operationId": "Cache_ListByService", + "description": "Lists a collection of all external Caches in the specified service instance.", + "x-ms-examples": { + "ApiManagementListCaches": { + "$ref": "./examples/ApiManagementListCaches.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Returns a collection of Cache entity.", + "schema": { + "$ref": "./definitions.json#/definitions/CacheCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/caches/{cacheId}": { + "head": { + "tags": [ + "Cache" + ], + "operationId": "Cache_GetEntityTag", + "description": "Gets the entity state (Etag) version of the Cache specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadCache": { + "$ref": "./examples/ApiManagementHeadCache.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CacheIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified Cache entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Cache" + ], + "operationId": "Cache_Get", + "description": "Gets the details of the Cache specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetCache": { + "$ref": "./examples/ApiManagementGetCache.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CacheIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Cache entity.", + "schema": { + "$ref": "./definitions.json#/definitions/CacheContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Cache" + ], + "operationId": "Cache_CreateOrUpdate", + "description": "Creates or updates an External Cache to be used in Api Management instance.", + "externalDocs": { + "description": "Use an external cache in Azure API Management", + "url": "https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-cache-external" + }, + "x-ms-examples": { + "ApiManagementCreateCache": { + "$ref": "./examples/ApiManagementCreateCache.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CacheIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/CacheContract" + }, + "description": "Create or Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "The new Cache was successfully added.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/CacheContract" + } + }, + "200": { + "description": "The Cache details were successfully updated.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/CacheContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Cache" + ], + "operationId": "Cache_Update", + "description": "Updates the details of the cache specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateCache": { + "$ref": "./examples/ApiManagementUpdateCache.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CacheIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/CacheUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The cache details were successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Cache" + ], + "operationId": "Cache_Delete", + "description": "Deletes specific Cache.", + "x-ms-examples": { + "ApiManagementDeleteCache": { + "$ref": "./examples/ApiManagementDeleteCache.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CacheIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The Cache was successfully deleted." + }, + "204": { + "description": "The Cache was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimcertificates.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimcertificates.json new file mode 100644 index 000000000000..feea7a9cd650 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimcertificates.json @@ -0,0 +1,319 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Certificate entity in your Azure API Management deployment. Certificates can be used to setup mutual authentication with your Backend in API Management. For more information refer to [How to secure backend using Mutual Auth Certificate](https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-mutual-certificates).", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/certificates": { + "get": { + "tags": [ + "Certificate" + ], + "operationId": "Certificate_ListByService", + "description": "Lists a collection of all certificates in the specified service instance.", + "x-ms-examples": { + "ApiManagementListCertificates": { + "$ref": "./examples/ApiManagementListCertificates.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| subject | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| thumbprint | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| expirationDate | filter | ge, le, eq, ne, gt, lt | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Returns a collection of Certificate entity.", + "schema": { + "$ref": "./definitions.json#/definitions/CertificateCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/CertificateContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/certificates/{certificateId}": { + "head": { + "tags": [ + "Certificate" + ], + "operationId": "Certificate_GetEntityTag", + "description": "Gets the entity state (Etag) version of the certificate specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadCertificate": { + "$ref": "./examples/ApiManagementHeadCertificate.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CertificateIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified certificate entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Certificate" + ], + "operationId": "Certificate_Get", + "description": "Gets the details of the certificate specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetCertificate": { + "$ref": "./examples/ApiManagementGetCertificate.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CertificateIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Certificate entity.", + "schema": { + "$ref": "./definitions.json#/definitions/CertificateContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Certificate" + ], + "operationId": "Certificate_CreateOrUpdate", + "description": "Creates or updates the certificate being used for authentication with the backend.", + "externalDocs": { + "description": "How to secure back-end services using client certificate authentication in Azure API Management", + "url": "https://azure.microsoft.com/en-us/documentation/articles/api-management-howto-mutual-certificates/" + }, + "x-ms-examples": { + "ApiManagementCreateCertificate": { + "$ref": "./examples/ApiManagementCreateCertificate.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CertificateIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/CertificateCreateOrUpdateParameters" + }, + "description": "Create or Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "The new certificate was successfully added.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/CertificateContract" + } + }, + "200": { + "description": "The certificate details were successfully updated.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/CertificateContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Certificate" + ], + "operationId": "Certificate_Delete", + "description": "Deletes specific certificate.", + "x-ms-examples": { + "ApiManagementDeleteCertificate": { + "$ref": "./examples/ApiManagementDeleteCertificate.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/CertificateIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The certificate was successfully deleted." + }, + "204": { + "description": "The certificate was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimdeployment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimdeployment.json new file mode 100644 index 000000000000..ce8c693b268c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimdeployment.json @@ -0,0 +1,1551 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs to manage Azure API Management deployment.", + "version": "2019-12-01" + }, + "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": { + "/providers/Microsoft.ApiManagement/operations": { + "get": { + "tags": [ + "ApiManagementOperations" + ], + "description": "Lists all of the available REST API operations of the Microsoft.ApiManagement provider.", + "operationId": "ApiManagementOperations_List", + "x-ms-examples": { + "ApiManagementListOperations": { + "$ref": "./examples/ApiManagementListOperations.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of operations.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/skus": { + "get": { + "tags": [ + "ApiManagementServiceSkus" + ], + "summary": "Gets available SKUs for API Management service", + "description": "Gets all available SKU for a given API Management service", + "operationId": "ApiManagementServiceSkus_ListAvailableServiceSkus", + "x-ms-examples": { + "ApiManagementListSKUs-Dedicated": { + "$ref": "./examples/ApiManagementListSKUs-Dedicated.json" + }, + "ApiManagementListSKUs-Consumption": { + "$ref": "./examples/ApiManagementListSKUs-Consumption.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of SKUs.", + "schema": { + "$ref": "#/definitions/ResourceSkuResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/restore": { + "post": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_Restore", + "description": "Restores a backup of an API Management service created using the ApiManagementService_Backup operation on the current service. This is a long running operation and could take several minutes to complete.", + "x-ms-examples": { + "ApiManagementRestoreService": { + "$ref": "./examples/ApiManagementRestoreService.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApiManagementServiceBackupRestoreParameters" + }, + "description": "Parameters supplied to the Restore API Management service from backup operation." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully restored the backup onto the API Management service.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceResource" + } + }, + "202": { + "description": "Accepted: Location header contains the URL where the status of the long running operation can be checked." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/backup": { + "post": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_Backup", + "description": "Creates a backup of the API Management service to the given Azure Storage Account. This is long running operation and could take several minutes to complete.", + "x-ms-examples": { + "ApiManagementCreateBackup": { + "$ref": "./examples/ApiManagementCreateBackup.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApiManagementServiceBackupRestoreParameters" + }, + "description": "Parameters supplied to the ApiManagementService_Backup operation." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully backed up the API Management service to the storage account.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceResource" + } + }, + "202": { + "description": "Accepted: Location header contains the URL where the status of the long running operation can be checked." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}": { + "put": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_CreateOrUpdate", + "description": "Creates or updates an API Management service. This is long running operation and could take several minutes to complete.", + "x-ms-examples": { + "ApiManagementCreateService": { + "$ref": "./examples/ApiManagementCreateService.json" + }, + "ApiManagementCreateMultiRegionServiceWithCustomHostname": { + "$ref": "./examples/ApiManagementCreateMultiRegionServiceWithCustomHostname.json" + }, + "ApiManagementCreateServiceHavingMsi": { + "$ref": "./examples/ApiManagementCreateServiceHavingMsi.json" + }, + "ApiManagementCreateServiceWithSystemCertificates": { + "$ref": "./examples/ApiManagementCreateServiceWithSystemCertificates.json" + }, + "ApiManagementCreateServiceWithUserAssignedIdentity": { + "$ref": "./examples/ApiManagementCreateServiceWithUserAssignedIdentity.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApiManagementServiceResource" + }, + "description": "Parameters supplied to the CreateOrUpdate API Management service operation." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The service was successfully set up.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceResource" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/ApiManagementServiceResource" + } + }, + "202": { + "description": "Accepted the configuration change when updating the service." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_Update", + "description": "Updates an existing API Management service.", + "x-ms-examples": { + "ApiManagementUpdateServiceDisableTls10": { + "$ref": "./examples/ApiManagementUpdateServiceDisableTls10.json" + }, + "ApiManagementUpdateServicePublisherDetails": { + "$ref": "./examples/ApiManagementUpdateServicePublisherDetails.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApiManagementServiceUpdateParameters" + }, + "description": "Parameters supplied to the CreateOrUpdate API Management service operation." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The service was successfully updated.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceResource" + } + }, + "202": { + "description": "The service update request was Accepted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_Get", + "description": "Gets an API Management service resource description.", + "x-ms-examples": { + "ApiManagementServiceGetService": { + "$ref": "./examples/ApiManagementServiceGetService.json" + }, + "ApiManagementServiceGetServiceHavingMsi": { + "$ref": "./examples/ApiManagementServiceGetServiceHavingMsi.json" + }, + "ApiManagementServiceGetMultiRegionInternalVnet": { + "$ref": "./examples/ApiManagementServiceGetMultiRegionInternalVnet.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully got the API Management Service Resource.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_Delete", + "description": "Deletes an existing API Management service.", + "x-ms-examples": { + "ApiManagementServiceDeleteService": { + "$ref": "./examples/ApiManagementServiceDeleteService.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Service was successfully deleted." + }, + "202": { + "description": "The service delete request was Accepted.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceResource" + } + }, + "204": { + "description": "The service does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service": { + "get": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_ListByResourceGroup", + "description": "List all API Management services within a resource group.", + "x-ms-examples": { + "ApiManagementListServiceBySubscriptionAndResourceGroup": { + "$ref": "./examples/ApiManagementListServiceBySubscriptionAndResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The API Management service list.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ApiManagement/service": { + "get": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_List", + "description": "Lists all API Management services within an Azure subscription.", + "x-ms-examples": { + "ApiManagementListServiceBySubscription": { + "$ref": "./examples/ApiManagementListServiceBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The API Management service list.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/getssotoken": { + "post": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_GetSsoToken", + "description": "Gets the Single-Sign-On token for the API Management Service which is valid for 5 Minutes.", + "x-ms-examples": { + "ApiManagementServiceGetSsoToken": { + "$ref": "./examples/ApiManagementServiceGetSsoToken.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK if successful with the SSO Redirect URI.", + "schema": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApiManagementServiceGetSsoTokenResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ApiManagement/checkNameAvailability": { + "post": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_CheckNameAvailability", + "description": "Checks availability and correctness of a name for an API Management service.", + "x-ms-examples": { + "ApiManagementServiceCheckNameAvailability": { + "$ref": "./examples/ApiManagementServiceCheckNameAvailability.json" + } + }, + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApiManagementServiceCheckNameAvailabilityParameters" + }, + "description": "Parameters supplied to the CheckNameAvailability operation." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The result of check name availability.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceNameAvailabilityResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/applynetworkconfigurationupdates": { + "post": { + "tags": [ + "ApiManagementService" + ], + "operationId": "ApiManagementService_ApplyNetworkConfigurationUpdates", + "description": "Updates the Microsoft.ApiManagement resource running in the Virtual network to pick the updated network settings.", + "x-ms-examples": { + "ApiManagementApplyNetworkConfigurationUpdates": { + "$ref": "./examples/ApiManagementApplyNetworkConfigurationUpdates.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/ApiManagementServiceApplyNetworkConfigurationParameters" + }, + "description": "Parameters supplied to the Apply Network Configuration operation. If the parameters are empty, all the regions in which the Api Management service is deployed will be updated sequentially without incurring downtime in the region." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted: Location header contains the URL where the status of the long running operation can be checked." + }, + "200": { + "description": "Network configuration updates were successfully applied on the Api Management service.", + "schema": { + "$ref": "#/definitions/ApiManagementServiceResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "ResourceSkuResults": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceSkuResult" + }, + "description": "The list of skus available for the service." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of API Management service Skus." + } + }, + "required": [ + "value" + ], + "description": "The API Management service SKUs operation response." + }, + "ResourceSkuResult": { + "properties": { + "resourceType": { + "readOnly": true, + "type": "string", + "description": "The type of resource the SKU applies to." + }, + "sku": { + "$ref": "#/definitions/ResourceSku", + "readOnly": true, + "description": "Specifies API Management SKU." + }, + "capacity": { + "$ref": "#/definitions/ResourceSkuCapacity", + "readOnly": true, + "description": "Specifies the number of API Management units." + } + }, + "description": "Describes an available API Management service SKU." + }, + "ResourceSkuCapacity": { + "properties": { + "minimum": { + "type": "integer", + "readOnly": true, + "format": "int32", + "description": "The minimum capacity." + }, + "maximum": { + "type": "integer", + "readOnly": true, + "format": "int32", + "description": "The maximum capacity that can be set." + }, + "default": { + "type": "integer", + "readOnly": true, + "format": "int32", + "description": "The default capacity." + }, + "scaleType": { + "type": "string", + "readOnly": true, + "description": "The scale type applicable to the sku.", + "enum": [ + "automatic", + "manual", + "none" + ], + "x-ms-enum": { + "name": "ResourceSkuCapacityScaleType", + "modelAsString": true, + "values": [ + { + "value": "automatic", + "description": "Supported scale type automatic." + }, + { + "value": "manual", + "description": "Supported scale type manual." + }, + { + "value": "none", + "description": "Scaling not supported." + } + ] + } + } + }, + "description": "Describes scaling information of a SKU." + }, + "ResourceSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of the Sku.", + "externalDocs": { + "url": "https://azure.microsoft.com/en-us/pricing/details/api-management/" + }, + "enum": [ + "Developer", + "Standard", + "Premium", + "Basic", + "Consumption" + ], + "x-ms-enum": { + "name": "SkuType", + "modelAsString": true, + "values": [ + { + "value": "Developer", + "description": "Developer SKU of Api Management." + }, + { + "value": "Standard", + "description": "Standard SKU of Api Management." + }, + { + "value": "Premium", + "description": "Premium SKU of Api Management." + }, + { + "value": "Basic", + "description": "Basic SKU of Api Management." + }, + { + "value": "Consumption", + "description": "Consumption SKU of Api Management." + } + ] + } + } + }, + "description": "Describes an available API Management SKU." + }, + "CertificateInformation": { + "properties": { + "expiry": { + "type": "string", + "format": "date-time", + "description": "Expiration date of the certificate. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard." + }, + "thumbprint": { + "type": "string", + "description": "Thumbprint of the certificate." + }, + "subject": { + "type": "string", + "description": "Subject of the certificate." + } + }, + "required": [ + "expiry", + "thumbprint", + "subject" + ], + "description": "SSL certificate information." + }, + "CertificateConfiguration": { + "properties": { + "encodedCertificate": { + "type": "string", + "description": "Base64 Encoded certificate." + }, + "certificatePassword": { + "type": "string", + "description": "Certificate Password." + }, + "storeName": { + "description": "The System.Security.Cryptography.x509certificates.StoreName certificate store location. Only Root and CertificateAuthority are valid locations.", + "type": "string", + "enum": [ + "CertificateAuthority", + "Root" + ] + }, + "certificate": { + "$ref": "#/definitions/CertificateInformation", + "description": "Certificate information." + } + }, + "required": [ + "storeName" + ], + "description": "Certificate configuration which consist of non-trusted intermediates and root certificates." + }, + "HostnameConfiguration": { + "properties": { + "type": { + "type": "string", + "description": "Hostname type.", + "enum": [ + "Proxy", + "Portal", + "Management", + "Scm", + "DeveloperPortal" + ], + "x-ms-enum": { + "name": "HostnameType", + "modelAsString": true + } + }, + "hostName": { + "type": "string", + "description": "Hostname to configure on the Api Management service." + }, + "keyVaultId": { + "type": "string", + "description": "Url to the KeyVault Secret containing the Ssl Certificate. If absolute Url containing version is provided, auto-update of ssl certificate will not work. This requires Api Management service to be configured with MSI. The secret should be of type *application/x-pkcs12*" + }, + "encodedCertificate": { + "type": "string", + "description": "Base64 Encoded certificate." + }, + "certificatePassword": { + "type": "string", + "description": "Certificate Password." + }, + "defaultSslBinding": { + "type": "boolean", + "description": "Specify true to setup the certificate associated with this Hostname as the Default SSL Certificate. If a client does not send the SNI header, then this will be the certificate that will be challenged. The property is useful if a service has multiple custom hostname enabled and it needs to decide on the default ssl certificate. The setting only applied to Proxy Hostname Type.", + "default": false + }, + "negotiateClientCertificate": { + "type": "boolean", + "description": "Specify true to always negotiate client certificate on the hostname. Default Value is false.", + "default": false + }, + "certificate": { + "$ref": "#/definitions/CertificateInformation", + "description": "Certificate information." + } + }, + "required": [ + "type", + "hostName" + ], + "description": "Custom hostname configuration." + }, + "VirtualNetworkConfiguration": { + "properties": { + "vnetid": { + "readOnly": true, + "type": "string", + "description": "The virtual network ID. This is typically a GUID. Expect a null GUID by default." + }, + "subnetname": { + "readOnly": true, + "type": "string", + "description": "The name of the subnet." + }, + "subnetResourceId": { + "type": "string", + "pattern": "^/subscriptions/[^/]*/resourceGroups/[^/]*/providers/Microsoft.(ClassicNetwork|Network)/virtualNetworks/[^/]*/subnets/[^/]*$", + "description": "The full resource ID of a subnet in a virtual network to deploy the API Management service in." + } + }, + "description": "Configuration of a virtual network to which API Management service is deployed." + }, + "AdditionalLocation": { + "properties": { + "location": { + "type": "string", + "description": "The location name of the additional region among Azure Data center regions." + }, + "sku": { + "$ref": "#/definitions/ApiManagementServiceSkuProperties", + "description": "SKU properties of the API Management service." + }, + "publicIPAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "Public Static Load Balanced IP addresses of the API Management service in the additional location. Available only for Basic, Standard and Premium SKU." + }, + "privateIPAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "Private Static Load Balanced IP addresses of the API Management service which is deployed in an Internal Virtual Network in a particular additional location. Available only for Basic, Standard and Premium SKU." + }, + "virtualNetworkConfiguration": { + "$ref": "#/definitions/VirtualNetworkConfiguration", + "description": "Virtual network configuration for the location." + }, + "gatewayRegionalUrl": { + "type": "string", + "description": "Gateway URL of the API Management service in the Region.", + "readOnly": true + }, + "disableGateway": { + "type": "boolean", + "description": "Property only valid for an Api Management service deployed in multiple locations. This can be used to disable the gateway in this additional location.", + "default": false + } + }, + "required": [ + "location", + "sku" + ], + "description": "Description of an additional API Management resource location." + }, + "ApiManagementServiceBackupRestoreParameters": { + "properties": { + "storageAccount": { + "type": "string", + "description": "Azure Cloud Storage account (used to place/retrieve the backup) name." + }, + "accessKey": { + "type": "string", + "description": "Azure Cloud Storage account (used to place/retrieve the backup) access key." + }, + "containerName": { + "type": "string", + "description": "Azure Cloud Storage blob container name used to place/retrieve the backup." + }, + "backupName": { + "type": "string", + "description": "The name of the backup file to create." + } + }, + "required": [ + "storageAccount", + "accessKey", + "containerName", + "backupName" + ], + "description": "Parameters supplied to the Backup/Restore of an API Management service operation." + }, + "ApiManagementServiceProperties": { + "properties": { + "publisherEmail": { + "type": "string", + "description": "Publisher email.", + "maxLength": 100 + }, + "publisherName": { + "type": "string", + "description": "Publisher name.", + "maxLength": 100 + } + }, + "allOf": [ + { + "$ref": "#/definitions/ApiManagementServiceBaseProperties" + } + ], + "required": [ + "publisherEmail", + "publisherName" + ], + "description": "Properties of an API Management service resource description." + }, + "ApiManagementServiceUpdateProperties": { + "properties": { + "publisherEmail": { + "type": "string", + "description": "Publisher email.", + "maxLength": 100 + }, + "publisherName": { + "type": "string", + "description": "Publisher name.", + "maxLength": 100 + } + }, + "allOf": [ + { + "$ref": "#/definitions/ApiManagementServiceBaseProperties" + } + ], + "description": "Properties of an API Management service resource description." + }, + "ApiManagementServiceBaseProperties": { + "properties": { + "notificationSenderEmail": { + "type": "string", + "description": "Email address from which the notification will be sent.", + "maxLength": 100 + }, + "provisioningState": { + "type": "string", + "description": "The current provisioning state of the API Management service which can be one of the following: Created/Activating/Succeeded/Updating/Failed/Stopped/Terminating/TerminationFailed/Deleted.", + "readOnly": true + }, + "targetProvisioningState": { + "type": "string", + "description": "The provisioning state of the API Management service, which is targeted by the long running operation started on the service.", + "readOnly": true + }, + "createdAtUtc": { + "type": "string", + "format": "date-time", + "description": "Creation UTC date of the API Management service.The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.", + "readOnly": true + }, + "gatewayUrl": { + "type": "string", + "description": "Gateway URL of the API Management service.", + "readOnly": true + }, + "gatewayRegionalUrl": { + "type": "string", + "description": "Gateway URL of the API Management service in the Default Region.", + "readOnly": true + }, + "portalUrl": { + "type": "string", + "description": "Publisher portal endpoint Url of the API Management service.", + "readOnly": true + }, + "managementApiUrl": { + "type": "string", + "description": "Management API endpoint URL of the API Management service.", + "readOnly": true + }, + "scmUrl": { + "type": "string", + "description": "SCM endpoint URL of the API Management service.", + "readOnly": true + }, + "developerPortalUrl": { + "type": "string", + "description": "DEveloper Portal endpoint URL of the API Management service.", + "readOnly": true + }, + "hostnameConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/HostnameConfiguration" + }, + "description": "Custom hostname configuration of the API Management service." + }, + "publicIPAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "Public Static Load Balanced IP addresses of the API Management service in Primary region. Available only for Basic, Standard and Premium SKU." + }, + "privateIPAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "Private Static Load Balanced IP addresses of the API Management service in Primary region which is deployed in an Internal Virtual Network. Available only for Basic, Standard and Premium SKU." + }, + "virtualNetworkConfiguration": { + "$ref": "#/definitions/VirtualNetworkConfiguration", + "description": "Virtual network configuration of the API Management service." + }, + "additionalLocations": { + "type": "array", + "items": { + "$ref": "#/definitions/AdditionalLocation" + }, + "description": "Additional datacenter locations of the API Management service." + }, + "customProperties": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Custom properties of the API Management service.
Setting `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168` will disable the cipher TLS_RSA_WITH_3DES_EDE_CBC_SHA for all TLS(1.0, 1.1 and 1.2).
Setting `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11` can be used to disable just TLS 1.1.
Setting `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10` can be used to disable TLS 1.0 on an API Management service.
Setting `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11` can be used to disable just TLS 1.1 for communications with backends.
Setting `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10` can be used to disable TLS 1.0 for communications with backends.
Setting `Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2` can be used to enable HTTP2 protocol on an API Management service.
Not specifying any of these properties on PATCH operation will reset omitted properties' values to their defaults. For all the settings except Http2 the default value is `True` if the service was created on or before April 1st 2018 and `False` otherwise. Http2 setting's default value is `False`.

You can disable any of next ciphers by using settings `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.[cipher_name]`: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA256, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA. For example, `Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA256`:`false`. The default value is `true` for them. Note: next ciphers can't be disabled since they are required by Azure CloudService internal components: TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_GCM_SHA384" + }, + "certificates": { + "type": "array", + "items": { + "$ref": "#/definitions/CertificateConfiguration" + }, + "description": "List of Certificates that need to be installed in the API Management service. Max supported certificates that can be installed is 10." + }, + "enableClientCertificate": { + "type": "boolean", + "description": "Property only meant to be used for Consumption SKU Service. This enforces a client certificate to be presented on each request to the gateway. This also enables the ability to authenticate the certificate in the policy on the gateway.", + "default": false + }, + "disableGateway": { + "type": "boolean", + "description": "Property only valid for an Api Management service deployed in multiple locations. This can be used to disable the gateway in master region.", + "default": false + }, + "virtualNetworkType": { + "type": "string", + "description": "The type of VPN in which API Management service needs to be configured in. None (Default Value) means the API Management service is not part of any Virtual Network, External means the API Management deployment is set up inside a Virtual Network having an Internet Facing Endpoint, and Internal means that API Management deployment is setup inside a Virtual Network having an Intranet Facing Endpoint only.", + "default": "None", + "enum": [ + "None", + "External", + "Internal" + ], + "x-ms-enum": { + "name": "VirtualNetworkType", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "The service is not part of any Virtual Network." + }, + { + "value": "External", + "description": "The service is part of Virtual Network and it is accessible from Internet." + }, + { + "value": "Internal", + "description": "The service is part of Virtual Network and it is only accessible from within the virtual network." + } + ] + } + }, + "apiVersionConstraint": { + "$ref": "#/definitions/ApiVersionConstraint", + "description": "Control Plane Apis version constraint for the API Management service." + } + }, + "description": "Base Properties of an API Management service resource description." + }, + "ApiVersionConstraint": { + "properties": { + "minApiVersion": { + "type": "string", + "description": "Limit control plane API calls to API Management service with version equal to or newer than this value.", + "example": "2019-01-01" + } + }, + "description": "Control Plane Apis version constraint for the API Management service." + }, + "ApiManagementServiceSkuProperties": { + "properties": { + "name": { + "type": "string", + "description": "Name of the Sku.", + "externalDocs": { + "url": "https://azure.microsoft.com/en-us/pricing/details/api-management/" + }, + "enum": [ + "Developer", + "Standard", + "Premium", + "Basic", + "Consumption" + ], + "x-ms-enum": { + "name": "SkuType", + "modelAsString": true, + "values": [ + { + "value": "Developer", + "description": "Developer SKU of Api Management." + }, + { + "value": "Standard", + "description": "Standard SKU of Api Management." + }, + { + "value": "Premium", + "description": "Premium SKU of Api Management." + }, + { + "value": "Basic", + "description": "Basic SKU of Api Management." + }, + { + "value": "Consumption", + "description": "Consumption SKU of Api Management." + } + ] + } + }, + "capacity": { + "type": "integer", + "format": "int32", + "description": "Capacity of the SKU (number of deployed units of the SKU). For Consumption SKU capacity must be specified as 0." + } + }, + "required": [ + "name", + "capacity" + ], + "description": "API Management service resource SKU properties." + }, + "ApiManagementServiceResource": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApiManagementServiceProperties", + "description": "Properties of the API Management service." + }, + "sku": { + "$ref": "#/definitions/ApiManagementServiceSkuProperties", + "description": "SKU properties of the API Management service." + }, + "identity": { + "$ref": "#/definitions/ApiManagementServiceIdentity", + "description": "Managed service identity of the Api Management service." + }, + "location": { + "type": "string", + "description": "Resource location.", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "etag": { + "type": "string", + "description": "ETag of the resource.", + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/ApimResource" + } + ], + "required": [ + "location", + "sku", + "properties" + ], + "description": "A single API Management service resource in List or Get response." + }, + "ApimResource": { + "description": "The Resource definition.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource ID." + }, + "name": { + "type": "string", + "description": "Resource name.", + "readOnly": true + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type for API Management resource is set to Microsoft.ApiManagement." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "x-ms-azure-resource": true + }, + "ApiManagementServiceUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApiManagementServiceUpdateProperties", + "description": "Properties of the API Management service." + }, + "sku": { + "$ref": "#/definitions/ApiManagementServiceSkuProperties", + "description": "SKU properties of the API Management service." + }, + "identity": { + "$ref": "#/definitions/ApiManagementServiceIdentity", + "description": "Managed service identity of the Api Management service." + }, + "etag": { + "type": "string", + "description": "ETag of the resource.", + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/ApimResource" + } + ], + "description": "Parameter supplied to Update Api Management Service." + }, + "ApiManagementServiceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiManagementServiceResource" + }, + "description": "Result of the List API Management services operation." + }, + "nextLink": { + "type": "string", + "description": "Link to the next set of results. Not empty if Value contains incomplete list of API Management services." + } + }, + "required": [ + "value" + ], + "description": "The response of the List API Management services operation." + }, + "ApiManagementServiceGetSsoTokenResult": { + "properties": { + "redirectUri": { + "type": "string", + "description": "Redirect URL to the Publisher Portal containing the SSO token." + } + }, + "description": "The response of the GetSsoToken operation." + }, + "ApiManagementServiceCheckNameAvailabilityParameters": { + "properties": { + "name": { + "type": "string", + "description": "The name to check for availability." + } + }, + "required": [ + "name" + ], + "description": "Parameters supplied to the CheckNameAvailability operation." + }, + "ApiManagementServiceNameAvailabilityResult": { + "properties": { + "nameAvailable": { + "type": "boolean", + "description": "True if the name is available and can be used to create a new API Management service; otherwise false.", + "readOnly": true + }, + "message": { + "type": "string", + "description": "If reason == invalid, provide the user with the reason why the given name is invalid, and provide the resource naming requirements so that the user can select a valid name. If reason == AlreadyExists, explain that is already in use, and direct them to select a different name.", + "readOnly": true + }, + "reason": { + "type": "string", + "description": "Invalid indicates the name provided does not match the resource provider’s naming requirements (incorrect length, unsupported characters, etc.) AlreadyExists indicates that the name is already in use and is therefore unavailable.", + "enum": [ + "Valid", + "Invalid", + "AlreadyExists" + ], + "x-ms-enum": { + "name": "NameAvailabilityReason", + "modelAsString": false + } + } + }, + "description": "Response of the CheckNameAvailability operation." + }, + "ApiManagementServiceApplyNetworkConfigurationParameters": { + "properties": { + "location": { + "type": "string", + "description": "Location of the Api Management service to update for a multi-region service. For a service deployed in a single region, this parameter is not required." + } + }, + "description": "Parameter supplied to the Apply Network configuration operation." + }, + "ApiManagementServiceIdentity": { + "description": "Identity properties of the Api Management service resource.", + "properties": { + "type": { + "type": "string", + "description": "The type of identity used for the resource. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the service.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ApimIdentityType", + "modelAsString": true + } + }, + "principalId": { + "type": "string", + "format": "uuid", + "readOnly": true, + "description": "The principal id of the identity." + }, + "tenantId": { + "type": "string", + "format": "uuid", + "readOnly": true, + "description": "The client tenant id of the identity." + }, + "userAssignedIdentities": { + "description": "The list of user identities associated with the resource. The user identity \r\ndictionary key references will be ARM resource ids in the form: \r\n'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/\r\n providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserIdentityProperties" + } + } + }, + "required": [ + "type" + ] + }, + "UserIdentityProperties": { + "type": "object", + "properties": { + "principalId": { + "description": "The principal id of user assigned identity.", + "type": "string" + }, + "clientId": { + "description": "The client id of user assigned identity.", + "type": "string" + } + } + }, + "Operation": { + "description": "REST API operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "The object that describes the operation.", + "properties": { + "provider": { + "description": "Friendly name of the resource provider", + "type": "string" + }, + "operation": { + "description": "Operation type: read, write, delete, listKeys/action, etc.", + "type": "string" + }, + "resource": { + "description": "Resource type on which the operation is performed.", + "type": "string" + }, + "description": { + "description": "Friendly name of the operation", + "type": "string" + } + } + }, + "origin": { + "type": "string", + "description": "The operation origin." + }, + "properties": { + "type": "object", + "x-ms-client-flatten": true, + "description": "The operation properties." + } + } + }, + "OperationListResult": { + "description": "Result of the request to list REST API operations. It contains a list of operations and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of operations supported by the resource provider." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + } + }, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimdiagnostics.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimdiagnostics.json new file mode 100644 index 000000000000..6cb67423b422 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimdiagnostics.json @@ -0,0 +1,367 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Diagnostic entity associated with your Azure API Management deployment. Diagnostics are used to log requests/responses in the APIM proxy.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/diagnostics": { + "get": { + "tags": [ + "Diagnostic" + ], + "operationId": "Diagnostic_ListByService", + "description": "Lists all diagnostics of the API Management service instance.", + "x-ms-examples": { + "ApiManagementListDiagnostics": { + "$ref": "./examples/ApiManagementListDiagnostics.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Paged Result response of diagnostics.", + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/DiagnosticContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/diagnostics/{diagnosticId}": { + "head": { + "tags": [ + "Diagnostic" + ], + "operationId": "Diagnostic_GetEntityTag", + "description": "Gets the entity state (Etag) version of the Diagnostic specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadDiagnostic": { + "$ref": "./examples/ApiManagementHeadDiagnostic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/DiagnosticIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Gets the entity tag of the diagnostic", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Diagnostic" + ], + "operationId": "Diagnostic_Get", + "description": "Gets the details of the Diagnostic specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetDiagnostic": { + "$ref": "./examples/ApiManagementGetDiagnostic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/DiagnosticIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Diagnostic entity.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Diagnostic" + ], + "operationId": "Diagnostic_CreateOrUpdate", + "description": "Creates a new Diagnostic or updates an existing one.", + "x-ms-examples": { + "ApiManagementCreateDiagnostic": { + "$ref": "./examples/ApiManagementCreateDiagnostic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/DiagnosticIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Diagnostic was successfully created.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticContract" + } + }, + "200": { + "description": "Diagnostic successfully updated", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Diagnostic" + ], + "operationId": "Diagnostic_Update", + "description": "Updates the details of the Diagnostic specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateDiagnostic": { + "$ref": "./examples/ApiManagementUpdateDiagnostic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/DiagnosticIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/DiagnosticContract" + }, + "description": "Diagnostic Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The Diagnostic was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Diagnostic" + ], + "operationId": "Diagnostic_Delete", + "description": "Deletes the specified Diagnostic.", + "x-ms-examples": { + "ApiManagementDeleteDiagnostic": { + "$ref": "./examples/ApiManagementDeleteDiagnostic.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/DiagnosticIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The Diagnostic was successfully deleted." + }, + "204": { + "description": "The Diagnostic was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimemailtemplates.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimemailtemplates.json new file mode 100644 index 000000000000..143854511ac8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimemailtemplates.json @@ -0,0 +1,354 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Email Templates associated with your Azure API Management deployment.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/templates": { + "get": { + "tags": [ + "EmailTemplate" + ], + "operationId": "EmailTemplate_ListByService", + "description": "Lists a collection of properties defined within a service instance.", + "x-ms-examples": { + "ApiManagementListEmailTemplates": { + "$ref": "./examples/ApiManagementListEmailTemplates.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A Collection of the Email Template for the specified API Management service instance.", + "schema": { + "$ref": "./definitions.json#/definitions/EmailTemplateCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/templates/{templateName}": { + "head": { + "tags": [ + "EmailTemplates" + ], + "operationId": "EmailTemplate_GetEntityTag", + "description": "Gets the entity state (Etag) version of the email template specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadEmailTemplate": { + "$ref": "./examples/ApiManagementHeadEmailTemplate.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TemplateNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified email template entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "EmailTemplates" + ], + "operationId": "EmailTemplate_Get", + "description": "Gets the details of the email template specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetEmailTemplate": { + "$ref": "./examples/ApiManagementGetEmailTemplate.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TemplateNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Email template.", + "schema": { + "$ref": "./definitions.json#/definitions/EmailTemplateContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "EmailTemplates" + ], + "operationId": "EmailTemplate_CreateOrUpdate", + "description": "Updates an Email Template.", + "x-ms-examples": { + "ApiManagementCreateEmailTemplate": { + "$ref": "./examples/ApiManagementCreateEmailTemplate.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TemplateNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/EmailTemplateUpdateParameters" + }, + "description": "Email Template update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Email Template was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/EmailTemplateContract" + } + }, + "200": { + "description": "Email Template was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/EmailTemplateContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "EmailTemplates" + ], + "operationId": "EmailTemplate_Update", + "description": "Updates the specific Email Template.", + "x-ms-examples": { + "ApiManagementUpdateEmailTemplate": { + "$ref": "./examples/ApiManagementUpdateEmailTemplate.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TemplateNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/EmailTemplateUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Email Template was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "EmailTemplates" + ], + "operationId": "EmailTemplate_Delete", + "description": "Reset the Email Template to default template provided by the API Management service instance.", + "x-ms-examples": { + "ApiManagementDeleteEmailTemplate": { + "$ref": "./examples/ApiManagementDeleteEmailTemplate.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TemplateNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Email Template was successfully reset to default." + }, + "204": { + "description": "Email Template was successfully reset to default." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimgateways.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimgateways.json new file mode 100644 index 000000000000..a89f6dbfecf2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimgateways.json @@ -0,0 +1,997 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Gateway entity in Azure API Management deployment.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways": { + "get": { + "tags": [ + "Gateway" + ], + "operationId": "Gateway_ListByService", + "description": "Lists a collection of gateways registered with service instance.", + "x-ms-examples": { + "ApiManagementListGateways": { + "$ref": "./examples/ApiManagementListGateways.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Gateway entities.", + "schema": { + "$ref": "./definitions.json#/definitions/GatewayCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}": { + "head": { + "tags": [ + "Gateway" + ], + "operationId": "Gateway_GetEntityTag", + "description": "Gets the entity state (Etag) version of the Gateway specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadGateway": { + "$ref": "./examples/ApiManagementHeadGateway.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified Gateway entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Gateway" + ], + "operationId": "Gateway_Get", + "description": "Gets the details of the Gateway specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetGateway": { + "$ref": "./examples/ApiManagementGetGateway.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Gateway entity.", + "schema": { + "$ref": "./definitions.json#/definitions/GatewayContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Gateway" + ], + "operationId": "Gateway_CreateOrUpdate", + "description": "Creates or updates a Gateway to be used in Api Management instance.", + "x-ms-examples": { + "ApiManagementCreateGateway": { + "$ref": "./examples/ApiManagementCreateGateway.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayContract" + } + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "The new Gateway was successfully added.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayContract" + } + }, + "200": { + "description": "The Gateway details were successfully updated.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Gateway" + ], + "operationId": "Gateway_Update", + "description": "Updates the details of the gateway specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateGateway": { + "$ref": "./examples/ApiManagementUpdateGateway.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayContract" + } + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The gateway details were successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Gateway" + ], + "operationId": "Gateway_Delete", + "description": "Deletes specific Gateway.", + "x-ms-examples": { + "ApiManagementDeleteGateway": { + "$ref": "./examples/ApiManagementDeleteGateway.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The Gateway was successfully deleted." + }, + "204": { + "description": "The Gateway was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}/listKeys": { + "post": { + "tags": [ + "GatewayListKeys" + ], + "operationId": "Gateway_ListKeys", + "description": "Retrieves gateway keys.", + "x-ms-examples": { + "ApiManagementGatewayKeys": { + "$ref": "./examples/ApiManagementGatewayListKeys.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Gateway keys.", + "schema": { + "$ref": "./definitions.json#/definitions/GatewayKeysContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}/regenerateKey": { + "post": { + "tags": [ + "GatewayRegenerateKey" + ], + "operationId": "Gateway_RegenerateKey", + "description": "Regenerates specified gateway key invalidating any tokens created with it.", + "x-ms-examples": { + "ApiManagementGatewayRegeneratePrimaryKey": { + "$ref": "./examples/ApiManagementGatewayRegenerateKey.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayKeyRegenerationRequestContract" + } + } + ], + "responses": { + "204": { + "description": "Key successfully regenerated" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}/generateToken": { + "post": { + "tags": [ + "GatewayGenerateToken" + ], + "operationId": "Gateway_GenerateToken", + "description": "Gets the Shared Access Authorization Token for the gateway.", + "x-ms-examples": { + "ApiManagementGatewayToken": { + "$ref": "./examples/ApiManagementGatewayGenerateToken.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayTokenRequestContract" + } + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the authorization token for the gateway.", + "schema": { + "$ref": "./definitions.json#/definitions/GatewayTokenContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}/hostnameConfigurations": { + "get": { + "tags": [ + "GatewayHostnameConfiguration" + ], + "operationId": "GatewayHostnameConfiguration_ListByService", + "description": "Lists the collection of hostname configurations for the specified gateway.", + "x-ms-examples": { + "ApiManagementListGatewayHostnameConfigurations": { + "$ref": "./examples/ApiManagementListGatewayHostnameConfigurations.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Collection of hostname configuration entities.", + "schema": { + "$ref": "./definitions.json#/definitions/GatewayHostnameConfigurationCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}/hostnameConfigurations/{hcId}": { + "head": { + "tags": [ + "GatewayHostnameConfiguration" + ], + "operationId": "GatewayHostnameConfiguration_GetEntityTag", + "description": "Checks that hostname configuration entity specified by identifier exists for specified Gateway entity.", + "x-ms-examples": { + "ApiManagementHeadGatewayHostnameConfiguration": { + "$ref": "./examples/ApiManagementHeadGatewayHostnameConfiguration.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayHostnameConfigurationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified Gateway entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "GatewayHostnameConfiguration" + ], + "operationId": "GatewayHostnameConfiguration_Get", + "description": "Gets the details of the Gateway hostname configuration specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetGateway": { + "$ref": "./examples/ApiManagementGetGatewayHostnameConfiguration.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayHostnameConfigurationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Gateway entity.", + "schema": { + "$ref": "./definitions.json#/definitions/GatewayHostnameConfigurationContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "GatewayHostnameConfiguration" + ], + "operationId": "GatewayHostnameConfiguration_CreateOrUpdate", + "description": "Creates of updates hostname configuration for a Gateway.", + "x-ms-examples": { + "ApiManagementCreateGatewayHostnameConfiguration": { + "$ref": "./examples/ApiManagementCreateGatewayHostnameConfiguration.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayHostnameConfigurationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayHostnameConfigurationContract" + } + } + ], + "responses": { + "201": { + "description": "The new Gateway hostname configuration was successfully created.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayHostnameConfigurationContract" + } + }, + "200": { + "description": "The Gateway hostname configuration details were successfully updated.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/GatewayHostnameConfigurationContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "GatewayHostnameConfiguration" + ], + "operationId": "GatewayHostnameConfiguration_Delete", + "description": "Deletes the specified hostname configuration from the specified Gateway.", + "x-ms-examples": { + "ApiManagementDeleteGatewayHostnameConfiguration": { + "$ref": "./examples/ApiManagementDeleteGatewayHostnameConfiguration.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayHostnameConfigurationIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Hostname configuration was successfully removed from Gateway" + }, + "204": { + "description": "Hostname configuration successfully removed by previous request or does not exist in Gateway" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}/apis": { + "get": { + "tags": [ + "GatewayApi" + ], + "operationId": "GatewayApi_ListByService", + "description": "Lists a collection of the APIs associated with a gateway.", + "x-ms-examples": { + "ApiManagementListGatewayApis": { + "$ref": "./examples/ApiManagementListGatewayApis.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains a collection of Api entities in the gateway.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/gateways/{gatewayId}/apis/{apiId}": { + "head": { + "tags": [ + "GatewayApi" + ], + "operationId": "GatewayApi_GetEntityTag", + "description": "Checks that API entity specified by identifier is associated with the Gateway entity.", + "x-ms-examples": { + "ApiManagementHeadGatewayApi": { + "$ref": "./examples/ApiManagementHeadGatewayApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified Gateway entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "GatewayApi" + ], + "operationId": "GatewayApi_CreateOrUpdate", + "description": "Adds an API to the specified Gateway.", + "x-ms-examples": { + "ApiManagementCreateGatewayApi": { + "$ref": "./examples/ApiManagementCreateGatewayApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "./definitions.json#/definitions/AssociationContract" + } + } + ], + "responses": { + "201": { + "description": "The API was successfully added to the Gateway.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiContract" + } + }, + "200": { + "description": "The specified API is already added to the Gateway.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "GatewayApi" + ], + "operationId": "GatewayApi_Delete", + "description": "Deletes the specified API from the specified Gateway.", + "x-ms-examples": { + "ApiManagementDeleteGatewayApi": { + "$ref": "./examples/ApiManagementDeleteGatewayApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GatewayIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "API was successfully removed from Gateway" + }, + "204": { + "description": "API successfully removed by previous request or does not exist in Gateway" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimgroups.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimgroups.json new file mode 100644 index 000000000000..94be1d63a606 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimgroups.json @@ -0,0 +1,581 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Group entity in your Azure API Management deployment. Groups are used to manage the visibility of products to developers. Each API Management service instance comes with the following immutable system groups whose membership is automatically managed by API Management. - **Administrators** - Azure subscription administrators are members of this group. - **Developers** - Authenticated developer portal users fall into this group. - **Guests** - Unauthenticated developer portal users are placed into this group. In addition to these system groups, administrators can create custom groups or [leverage external groups in associated Azure Active Directory tenants](https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-aad#how-to-add-an-external-azure-active-directory-group). Custom and external groups can be used alongside system groups in giving developers visibility and access to API products. For example, you could create one custom group for developers affiliated with a specific partner organization and allow them access to the APIs from a product containing relevant APIs only. A user can be a member of more than one group.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/groups": { + "get": { + "tags": [ + "Group" + ], + "operationId": "Group_ListByService", + "description": "Lists a collection of groups defined within a service instance.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-create-groups" + }, + "x-ms-examples": { + "ApiManagementListGroups": { + "$ref": "./examples/ApiManagementListGroups.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| aadObjectId | filter | eq | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Group entities.", + "schema": { + "$ref": "./definitions.json#/definitions/GroupCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/GroupContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/groups/{groupId}": { + "head": { + "tags": [ + "Group" + ], + "operationId": "Group_GetEntityTag", + "description": "Gets the entity state (Etag) version of the group specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadGroup": { + "$ref": "./examples/ApiManagementHeadGroup.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified group entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Group" + ], + "operationId": "Group_Get", + "description": "Gets the details of the group specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetGroup": { + "$ref": "./examples/ApiManagementGetGroup.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Group entity.", + "schema": { + "$ref": "./definitions.json#/definitions/GroupContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Group" + ], + "operationId": "Group_CreateOrUpdate", + "description": "Creates or Updates a group.", + "x-ms-examples": { + "ApiManagementCreateGroup": { + "$ref": "./examples/ApiManagementCreateGroup.json" + }, + "ApiManagementCreateGroupExternal": { + "$ref": "./examples/ApiManagementCreateGroupExternal.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/GroupCreateParameters" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Group was created successfully.", + "schema": { + "$ref": "./definitions.json#/definitions/GroupContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Group already exists.", + "schema": { + "$ref": "./definitions.json#/definitions/GroupContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Group" + ], + "operationId": "Group_Update", + "description": "Updates the details of the group specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateGroup": { + "$ref": "./examples/ApiManagementUpdateGroup.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/GroupUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The group details were successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Group" + ], + "operationId": "Group_Delete", + "description": "Deletes specific group of the API Management service instance.", + "x-ms-examples": { + "ApiManagementDeleteGroup": { + "$ref": "./examples/ApiManagementDeleteGroup.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The group was successfully deleted." + }, + "204": { + "description": "The group was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/groups/{groupId}/users": { + "get": { + "tags": [ + "GroupUser" + ], + "operationId": "GroupUser_List", + "description": "Lists a collection of user entities associated with the group.", + "x-ms-examples": { + "ApiManagementListGroupUsers": { + "$ref": "./examples/ApiManagementListGroupUsers.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| firstName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| lastName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| email | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| registrationDate | filter | ge, le, eq, ne, gt, lt | |
| note | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of user entities associated with the group.", + "schema": { + "$ref": "./definitions.json#/definitions/UserCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/UserContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/groups/{groupId}/users/{userId}": { + "head": { + "tags": [ + "GroupUser" + ], + "operationId": "GroupUser_CheckEntityExists", + "description": "Checks that user entity specified by identifier is associated with the group entity.", + "x-ms-examples": { + "ApiManagementHeadGroupUser": { + "$ref": "./examples/ApiManagementHeadGroupUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Entity exists" + }, + "404": { + "description": "Entity does not exists." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "GroupUser" + ], + "operationId": "GroupUser_Create", + "description": "Add existing user to existing group", + "x-ms-examples": { + "ApiManagementCreateGroupUser": { + "$ref": "./examples/ApiManagementCreateGroupUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "The user was successfully added to the group.", + "schema": { + "$ref": "./definitions.json#/definitions/UserContract" + } + }, + "200": { + "description": "The specified user is already a member of the specified group.", + "schema": { + "$ref": "./definitions.json#/definitions/UserContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "GroupUser" + ], + "operationId": "GroupUser_Delete", + "description": "Remove existing user from existing group.", + "x-ms-examples": { + "ApiManagementDeleteGroupUser": { + "$ref": "./examples/ApiManagementDeleteGroupUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The user was successfully removed from the group." + }, + "204": { + "description": "The user was successfully removed from the group." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimidentityprovider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimidentityprovider.json new file mode 100644 index 000000000000..5ab15241ebec --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimidentityprovider.json @@ -0,0 +1,401 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Identity Provider entity associated with your Azure API Management deployment. Setting up an external Identity Provider for authentication can help you manage the developer portal logins using the OAuth2 flow.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/identityProviders": { + "get": { + "tags": [ + "IdentityProvider" + ], + "operationId": "IdentityProvider_ListByService", + "description": "Lists a collection of Identity Provider configured in the specified service instance.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-aad#how-to-authorize-developer-accounts-using-azure-active-directory" + }, + "x-ms-examples": { + "ApiManagementListIdentityProviders": { + "$ref": "./examples/ApiManagementListIdentityProviders.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Identity Providers.", + "schema": { + "$ref": "./definitions.json#/definitions/IdentityProviderList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/identityProviders/{identityProviderName}": { + "head": { + "tags": [ + "IdentityProvider" + ], + "operationId": "IdentityProvider_GetEntityTag", + "description": "Gets the entity state (Etag) version of the identityProvider specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadIdentityProvider": { + "$ref": "./examples/ApiManagementHeadIdentityProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IdentityProviderNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified identity provider entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "IdentityProvider" + ], + "operationId": "IdentityProvider_Get", + "description": "Gets the configuration details of the identity Provider configured in specified service instance.", + "x-ms-examples": { + "ApiManagementGetIdentityProvider": { + "$ref": "./examples/ApiManagementGetIdentityProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IdentityProviderNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified IdentityProvider entity configuration details.", + "schema": { + "$ref": "./definitions.json#/definitions/IdentityProviderContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "IdentityProvider" + ], + "operationId": "IdentityProvider_CreateOrUpdate", + "description": "Creates or Updates the IdentityProvider configuration.", + "x-ms-examples": { + "ApiManagementCreateIdentityProvider": { + "$ref": "./examples/ApiManagementCreateIdentityProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IdentityProviderNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/IdentityProviderCreateContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "IdentityProvider configuration were successfully created.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/IdentityProviderContract" + } + }, + "200": { + "description": "The existing Identity Provider was successfully updated.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/IdentityProviderContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "IdentityProvider" + ], + "operationId": "IdentityProvider_Update", + "description": "Updates an existing IdentityProvider configuration.", + "x-ms-examples": { + "ApiManagementUpdateIdentityProvider": { + "$ref": "./examples/ApiManagementUpdateIdentityProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IdentityProviderNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/IdentityProviderUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The existing identity provider configuration was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "IdentityProvider" + ], + "operationId": "IdentityProvider_Delete", + "description": "Deletes the specified identity provider configuration.", + "x-ms-examples": { + "ApiManagementDeleteIdentityProvider": { + "$ref": "./examples/ApiManagementDeleteIdentityProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IdentityProviderNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The identity provider configuration was successfully deleted." + }, + "204": { + "description": "The identity provider configuration was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/identityProviders/{identityProviderName}/listSecrets": { + "post": { + "tags": [ + "IdentityProvider" + ], + "operationId": "IdentityProvider_ListSecrets", + "description": "Gets the client secret details of the Identity Provider.", + "x-ms-examples": { + "ApiManagementListSecretsIdentityProvider": { + "$ref": "./examples/ApiManagementListSecretsIdentityProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IdentityProviderNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the client secret.", + "schema": { + "$ref": "./definitions.json#/definitions/ClientSecretContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimissues.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimissues.json new file mode 100644 index 000000000000..d85bf5904ee8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimissues.json @@ -0,0 +1,150 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use this REST API to get all the issues across an Azure Api Management service.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/issues": { + "get": { + "tags": [ + "Issue" + ], + "operationId": "Issue_ListByService", + "description": "Lists a collection of issues in the specified service instance.", + "x-ms-examples": { + "ApiManagementListIssues": { + "$ref": "./examples/ApiManagementListIssues.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| apiId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| title | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| authorName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| state | filter | eq | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Issue entities.", + "schema": { + "$ref": "./definitions.json#/definitions/IssueCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/IssueContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/issues/{issueId}": { + "get": { + "tags": [ + "Issue" + ], + "operationId": "Issue_Get", + "description": "Gets API Management issue details", + "x-ms-examples": { + "ApiManagementGetIssue": { + "$ref": "./examples/ApiManagementGetIssue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IssueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Get the details of the issue.", + "schema": { + "$ref": "./definitions.json#/definitions/IssueContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimloggers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimloggers.json new file mode 100644 index 000000000000..b79ba7080322 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimloggers.json @@ -0,0 +1,380 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on logger entity Azure API Management deployment.The Logger entity in API Management represents an event sink that you can use to log API Management events. Currently the Logger entity supports logging API Management events to Azure EventHub.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/loggers": { + "get": { + "tags": [ + "Logger" + ], + "operationId": "Logger_ListByService", + "description": "Lists a collection of loggers in the specified service instance.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-log-event-hubs" + }, + "x-ms-examples": { + "ApiManagementListLoggers": { + "$ref": "./examples/ApiManagementListLoggers.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| loggerType | filter | eq | |
| resourceId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Logger entities.", + "schema": { + "$ref": "./definitions.json#/definitions/LoggerCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/LoggerContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/loggers/{loggerId}": { + "head": { + "tags": [ + "Logger" + ], + "operationId": "Logger_GetEntityTag", + "description": "Gets the entity state (Etag) version of the logger specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadLogger": { + "$ref": "./examples/ApiManagementHeadLogger.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/LoggerIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified logger entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Logger" + ], + "operationId": "Logger_Get", + "description": "Gets the details of the logger specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetLogger": { + "$ref": "./examples/ApiManagementGetLogger.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/LoggerIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Logger entity.", + "schema": { + "$ref": "./definitions.json#/definitions/LoggerContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Logger" + ], + "operationId": "Logger_CreateOrUpdate", + "description": "Creates or Updates a logger.", + "x-ms-examples": { + "ApiManagementCreateEHLogger": { + "$ref": "./examples/ApiManagementCreateEHLogger.json" + }, + "ApiManagementCreateAILogger": { + "$ref": "./examples/ApiManagementCreateAILogger.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/LoggerIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/LoggerContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Logger was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/LoggerContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "The existing logger was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/LoggerContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Logger" + ], + "operationId": "Logger_Update", + "description": "Updates an existing logger.", + "x-ms-examples": { + "ApiManagementUpdateLogger": { + "$ref": "./examples/ApiManagementUpdateLogger.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/LoggerIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/LoggerUpdateContract" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The existing logger was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Logger" + ], + "operationId": "Logger_Delete", + "description": "Deletes the specified logger.", + "x-ms-examples": { + "ApiManagementDeleteLogger": { + "$ref": "./examples/ApiManagementDeleteLogger.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/LoggerIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "name": "force", + "in": "query", + "required": false, + "type": "boolean", + "description": "Force deletion even if diagnostic is attached." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The logger was successfully deleted." + }, + "204": { + "description": "The logger was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimnamedvalues.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimnamedvalues.json new file mode 100644 index 000000000000..0127d85f3154 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimnamedvalues.json @@ -0,0 +1,441 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on NamedValue entity associated with your Azure API Management deployment. API Management policies are a powerful capability of the system that allow the publisher to change the behavior of the API through configuration. Policies are a collection of statements that are executed sequentially on the request or response of an API. Policy statements can be constructed using literal text values, policy expressions, and NamedValues. Each API Management service instance has a NamedValues collection of key/value pairs that are global to the service instance. These NamedValues can be used to manage constant string values across all API configuration and policies.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/namedValues": { + "get": { + "tags": [ + "NamedValue" + ], + "operationId": "NamedValue_ListByService", + "description": "Lists a collection of NamedValues defined within a service instance.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-properties" + }, + "x-ms-examples": { + "ApiManagementListNamedValues": { + "$ref": "./examples/ApiManagementListNamedValues.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| tags | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith, any, all |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A Collection of the NamedValue entities for the specified API Management service instance.", + "schema": { + "$ref": "./definitions.json#/definitions/NamedValueCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/NamedValueContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/namedValues/{namedValueId}": { + "head": { + "tags": [ + "NamedValue" + ], + "operationId": "NamedValue_GetEntityTag", + "description": "Gets the entity state (Etag) version of the NamedValue specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadNamedValue": { + "$ref": "./examples/ApiManagementHeadNamedValue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NamedValueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified NamedValue entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "NamedValue" + ], + "operationId": "NamedValue_Get", + "description": "Gets the details of the NamedValue specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetNamedValue": { + "$ref": "./examples/ApiManagementGetNamedValue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NamedValueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified NamedValue entity.", + "schema": { + "$ref": "./definitions.json#/definitions/NamedValueContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "NamedValue" + ], + "operationId": "NamedValue_CreateOrUpdate", + "description": "Creates or updates a NamedValue.", + "x-ms-examples": { + "ApiManagementCreateNamedValue": { + "$ref": "./examples/ApiManagementCreateNamedValue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NamedValueIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/NamedValueCreateContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Request to create or update NamedValue was accepted. Location header contains the URL where the status of the long running operation can be checked." + }, + "201": { + "description": "NamedValue was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/NamedValueContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "NamedValue was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/NamedValueContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "NamedValue" + ], + "operationId": "NamedValue_Update", + "description": "Updates the specific NamedValue.", + "x-ms-examples": { + "ApiManagementUpdateNamedValue": { + "$ref": "./examples/ApiManagementUpdateNamedValue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NamedValueIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/NamedValueUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Request to update NamedValue was accepted. Location header contains the URL where the status of the long running operation can be checked." + }, + "204": { + "description": "NamedValue was successfully updated." + }, + "200": { + "description": "NamedValue was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/NamedValueContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "delete": { + "tags": [ + "NamedValue" + ], + "operationId": "NamedValue_Delete", + "description": "Deletes specific NamedValue from the API Management service instance.", + "x-ms-examples": { + "ApiManagementDeleteNamedValue": { + "$ref": "./examples/ApiManagementDeleteNamedValue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NamedValueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "NamedValue was successfully deleted." + }, + "204": { + "description": "NamedValue was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/namedValues/{namedValueId}/listValue": { + "post": { + "tags": [ + "NamedValue" + ], + "operationId": "NamedValue_ListValue", + "description": "Gets the secret value of the NamedValue.", + "x-ms-examples": { + "ApiManagementListSecretsSubscription": { + "$ref": "./examples/ApiManagementListSecretsNamedValue.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NamedValueIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains secret value.", + "schema": { + "$ref": "./definitions.json#/definitions/PropertyValueContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimnetworkstatus.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimnetworkstatus.json new file mode 100644 index 000000000000..8c6685f66278 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimnetworkstatus.json @@ -0,0 +1,212 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for getting the network connectivity status of your Azure API Management deployment. When the API Management service is deployed inside a Virtual Network, it needs to have access to other Azure resources it depends on. This also gives details about the DNS Servers visible to Azure API Management deployment.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/networkstatus": { + "get": { + "tags": [ + "NetworkStatus" + ], + "operationId": "NetworkStatus_ListByService", + "description": "Gets the Connectivity Status to the external resources on which the Api Management service depends from inside the Cloud Service. This also returns the DNS Servers as visible to the CloudService.", + "x-ms-examples": { + "ApiManagementServiceGetNetworkStatus": { + "$ref": "./examples/ApiManagementServiceGetNetworkStatus.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Gets the list Network status details for all regions in which service is deployed.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkStatusContractByLocation" + }, + "description": "List of Network Status values." + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/locations/{locationName}/networkstatus": { + "get": { + "tags": [ + "NetworkStatus" + ], + "operationId": "NetworkStatus_ListByLocation", + "description": "Gets the Connectivity Status to the external resources on which the Api Management service depends from inside the Cloud Service. This also returns the DNS Servers as visible to the CloudService.", + "x-ms-examples": { + "ApiManagementServiceGetNetworkStatusByLocation": { + "$ref": "./examples/ApiManagementServiceGetNetworkStatusByLocation.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/LocationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Gets the Network status details.", + "schema": { + "$ref": "#/definitions/NetworkStatusContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "ConnectivityStatusContract": { + "properties": { + "name": { + "type": "string", + "description": "The hostname of the resource which the service depends on. This can be the database, storage or any other azure resource on which the service depends upon.", + "minLength": 1 + }, + "status": { + "type": "string", + "enum": [ + "initializing", + "success", + "failure" + ], + "x-ms-enum": { + "name": "ConnectivityStatusType", + "modelAsString": true + }, + "description": "Resource Connectivity Status Type identifier." + }, + "error": { + "type": "string", + "description": "Error details of the connectivity to the resource." + }, + "lastUpdated": { + "type": "string", + "format": "date-time", + "description": "The date when the resource connectivity status was last updated. This status should be updated every 15 minutes. If this status has not been updated, then it means that the service has lost network connectivity to the resource, from inside the Virtual Network.The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "lastStatusChange": { + "type": "string", + "format": "date-time", + "description": "The date when the resource connectivity status last Changed from success to failure or vice-versa. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + } + }, + "required": [ + "name", + "status", + "lastUpdated", + "lastStatusChange" + ], + "description": "Details about connectivity to a resource." + }, + "NetworkStatusContractByLocation": { + "properties": { + "location": { + "type": "string", + "description": "Location of service", + "minLength": 1 + }, + "networkStatus": { + "$ref": "#/definitions/NetworkStatusContract", + "description": "Network status in Location" + } + }, + "description": "Network Status in the Location" + }, + "NetworkStatusContract": { + "properties": { + "dnsServers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Gets the list of DNS servers IPV4 addresses." + }, + "connectivityStatus": { + "type": "array", + "items": { + "$ref": "#/definitions/ConnectivityStatusContract" + }, + "description": "Gets the list of Connectivity Status to the Resources on which the service depends upon." + } + }, + "required": [ + "dnsServers", + "connectivityStatus" + ], + "description": "Network Status details." + } + }, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimnotifications.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimnotifications.json new file mode 100644 index 000000000000..591923264656 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimnotifications.json @@ -0,0 +1,564 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on who is going to receive notifications associated with your Azure API Management deployment.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications": { + "get": { + "tags": [ + "Notification" + ], + "operationId": "Notification_ListByService", + "description": "Lists a collection of properties defined within a service instance.", + "x-ms-examples": { + "ApiManagementListNotifications": { + "$ref": "./examples/ApiManagementListNotifications.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A Collection of the Notification for the specified API Management service instance.", + "schema": { + "$ref": "./definitions.json#/definitions/NotificationCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications/{notificationName}": { + "get": { + "tags": [ + "Notification" + ], + "operationId": "Notification_Get", + "description": "Gets the details of the Notification specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetNotification": { + "$ref": "./examples/ApiManagementGetNotification.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Notification.", + "schema": { + "$ref": "./definitions.json#/definitions/NotificationContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Notification" + ], + "operationId": "Notification_CreateOrUpdate", + "description": "Create or Update API Management publisher notification.", + "x-ms-examples": { + "ApiManagementCreateNotification": { + "$ref": "./examples/ApiManagementCreateNotification.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Notification was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/NotificationContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications/{notificationName}/recipientUsers": { + "get": { + "tags": [ + "NotificationRecipientUser" + ], + "operationId": "NotificationRecipientUser_ListByNotification", + "description": "Gets the list of the Notification Recipient User subscribed to the notification.", + "x-ms-examples": { + "ApiManagementListNotificationRecipientUsers": { + "$ref": "./examples/ApiManagementListNotificationRecipientUsers.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the Recipient User collection for the notification.", + "schema": { + "$ref": "./definitions.json#/definitions/RecipientUserCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications/{notificationName}/recipientUsers/{userId}": { + "head": { + "tags": [ + "NotificationRecipientUser" + ], + "operationId": "NotificationRecipientUser_CheckEntityExists", + "description": "Determine if the Notification Recipient User is subscribed to the notification.", + "x-ms-examples": { + "ApiManagementHeadNotificationRecipientUser": { + "$ref": "./examples/ApiManagementHeadNotificationRecipientUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The User is subscribed to receive the notification." + }, + "404": { + "description": "Entity does not exists." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "NotificationRecipientUser" + ], + "operationId": "NotificationRecipientUser_CreateOrUpdate", + "description": "Adds the API Management User to the list of Recipients for the Notification.", + "x-ms-examples": { + "ApiManagementCreateNotificationRecipientUser": { + "$ref": "./examples/ApiManagementCreateNotificationRecipientUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Recipient User was successfully added to the notification list.", + "schema": { + "$ref": "./definitions.json#/definitions/RecipientUserContract" + } + }, + "200": { + "description": "Recipient User is already part of the notification list.", + "schema": { + "$ref": "./definitions.json#/definitions/RecipientUserContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "NotificationRecipientUser" + ], + "operationId": "NotificationRecipientUser_Delete", + "description": "Removes the API Management user from the list of Notification.", + "x-ms-examples": { + "ApiManagementDeleteNotificationRecipientUser": { + "$ref": "./examples/ApiManagementDeleteNotificationRecipientUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Recipient User was successfully removed from the notification list." + }, + "204": { + "description": "Recipient User was successfully removed from the notification list." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications/{notificationName}/recipientEmails": { + "get": { + "tags": [ + "NotificationRecipientEmail" + ], + "operationId": "NotificationRecipientEmail_ListByNotification", + "description": "Gets the list of the Notification Recipient Emails subscribed to a notification.", + "x-ms-examples": { + "ApiManagementListNotificationRecipientEmails": { + "$ref": "./examples/ApiManagementListNotificationRecipientEmails.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the Recipient Email collection subscribed to the notification.", + "schema": { + "$ref": "./definitions.json#/definitions/RecipientEmailCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/notifications/{notificationName}/recipientEmails/{email}": { + "head": { + "tags": [ + "NotificationRecipientEmail" + ], + "operationId": "NotificationRecipientEmail_CheckEntityExists", + "description": "Determine if Notification Recipient Email subscribed to the notification.", + "x-ms-examples": { + "ApiManagementHeadNotificationRecipientEmail": { + "$ref": "./examples/ApiManagementHeadNotificationRecipientEmail.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/EmailParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The Users is subscribed to receive the notification." + }, + "404": { + "description": "The Users is not subscribed to receive the notification." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "NotificationRecipientEmail" + ], + "operationId": "NotificationRecipientEmail_CreateOrUpdate", + "description": "Adds the Email address to the list of Recipients for the Notification.", + "x-ms-examples": { + "ApiManagementCreateNotificationRecipientEmail": { + "$ref": "./examples/ApiManagementCreateNotificationRecipientEmail.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/EmailParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Recipient Email was successfully added to the notification list.", + "schema": { + "$ref": "./definitions.json#/definitions/RecipientEmailContract" + } + }, + "200": { + "description": "Recipient Email is already part of the notification list.", + "schema": { + "$ref": "./definitions.json#/definitions/RecipientEmailContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "NotificationRecipientEmail" + ], + "operationId": "NotificationRecipientEmail_Delete", + "description": "Removes the email from the list of Notification.", + "x-ms-examples": { + "ApiManagementDeleteNotificationRecipientEmail": { + "$ref": "./examples/ApiManagementDeleteNotificationRecipientEmail.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/NotificationNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/EmailParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Recipient Email was successfully removed to the notification list." + }, + "204": { + "description": "Recipient Email was successfully removed to the notification list." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimopenidconnectproviders.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimopenidconnectproviders.json new file mode 100644 index 000000000000..6e8a91da0798 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimopenidconnectproviders.json @@ -0,0 +1,412 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on OpenId Connect Provider entity associated with your Azure API Management deployment. API Management allows you to access APIs secured with token from [OpenID Connect Provider ](http://openid.net/connect/) to be accessed from the Developer Console.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/openidConnectProviders": { + "get": { + "tags": [ + "OpenidConnectProvider" + ], + "operationId": "OpenIdConnectProvider_ListByService", + "description": "Lists of all the OpenId Connect Providers.", + "x-ms-examples": { + "ApiManagementListOpenIdConnectProviders": { + "$ref": "./examples/ApiManagementListOpenIdConnectProviders.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists of all the OpenId Connect Providers.", + "schema": { + "$ref": "./definitions.json#/definitions/OpenIdConnectProviderCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/OpenidConnectProviderContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/openidConnectProviders/{opid}": { + "head": { + "tags": [ + "OpenidConnectProvider" + ], + "operationId": "OpenIdConnectProvider_GetEntityTag", + "description": "Gets the entity state (Etag) version of the openIdConnectProvider specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadOpenIdConnectProvider": { + "$ref": "./examples/ApiManagementHeadOpenIdConnectProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OpenIdConnectIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified openidConnectProvider entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "OpenidConnectProvider" + ], + "operationId": "OpenIdConnectProvider_Get", + "description": "Gets specific OpenID Connect Provider.", + "x-ms-examples": { + "ApiManagementGetOpenIdConnectProvider": { + "$ref": "./examples/ApiManagementGetOpenIdConnectProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OpenIdConnectIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified OpenId Connect Provider entity.", + "schema": { + "$ref": "./definitions.json#/definitions/OpenidConnectProviderContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "OpenidConnectProvider" + ], + "operationId": "OpenIdConnectProvider_CreateOrUpdate", + "description": "Creates or updates the OpenID Connect Provider.", + "x-ms-examples": { + "ApiManagementCreateOpenIdConnectProvider": { + "$ref": "./examples/ApiManagementCreateOpenIdConnectProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OpenIdConnectIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/OpenidConnectProviderContract" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "OpenIdConnect Provider was successfully created.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/OpenidConnectProviderContract" + } + }, + "200": { + "description": "OpenIdConnect Provider was successfully updated.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/OpenidConnectProviderContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "OpenidConnectProvider" + ], + "operationId": "OpenIdConnectProvider_Update", + "description": "Updates the specific OpenID Connect Provider.", + "x-ms-examples": { + "ApiManagementUpdateOpenIdConnectProvider": { + "$ref": "./examples/ApiManagementUpdateOpenIdConnectProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OpenIdConnectIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/OpenidConnectProviderUpdateContract" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "OpenId Connect Provider was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "OpenidConnectProvider" + ], + "operationId": "OpenIdConnectProvider_Delete", + "description": "Deletes specific OpenID Connect Provider of the API Management service instance.", + "x-ms-examples": { + "ApiManagementDeleteOpenIdConnectProvider": { + "$ref": "./examples/ApiManagementDeleteOpenIdConnectProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OpenIdConnectIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OpenId Connect Provider was successfully deleted." + }, + "204": { + "description": "OpenId Connect Provider was successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/openidConnectProviders/{opid}/listSecrets": { + "post": { + "tags": [ + "OpenidConnectProvider" + ], + "operationId": "OpenIdConnectProvider_ListSecrets", + "description": "Gets the client secret details of the OpenID Connect Provider.", + "x-ms-examples": { + "ApiManagementListSecretsOpenidConnectProvider": { + "$ref": "./examples/ApiManagementListSecretsOpenIdConnectProvider.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/OpenIdConnectIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the client secret.", + "schema": { + "$ref": "./definitions.json#/definitions/ClientSecretContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimpolicies.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimpolicies.json new file mode 100644 index 000000000000..36b610f0ccd3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimpolicies.json @@ -0,0 +1,304 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Global Policies in Azure API Management deployment.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/policies": { + "get": { + "tags": [ + "Policy" + ], + "operationId": "Policy_ListByService", + "description": "Lists all the Global Policy definitions of the Api Management service.", + "x-ms-examples": { + "ApiManagementListPolicies": { + "$ref": "./examples/ApiManagementListPolicies.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Returns an array of Policy Contracts.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/policies/{policyId}": { + "head": { + "tags": [ + "Policy" + ], + "operationId": "Policy_GetEntityTag", + "description": "Gets the entity state (Etag) version of the Global policy definition in the Api Management service.", + "x-ms-examples": { + "ApiManagementHeadPolicy": { + "$ref": "./examples/ApiManagementHeadPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Policy" + ], + "operationId": "Policy_Get", + "description": "Get the Global policy definition of the Api Management service.", + "x-ms-examples": { + "ApiManagementGetPolicy": { + "$ref": "./examples/ApiManagementGetPolicy.json" + }, + "ApiManagementGetPolicyFormat": { + "$ref": "./examples/ApiManagementGetPolicyFormat.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyExportFormat" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Get the Global policy definition of the Api Management service.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Policy" + ], + "operationId": "Policy_CreateOrUpdate", + "description": "Creates or updates the global policy configuration of the Api Management service.", + "x-ms-examples": { + "ApiManagementCreatePolicy": { + "$ref": "./examples/ApiManagementCreatePolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "description": "The policy contents to apply." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Global policy configuration was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Global policy configuration of the Api Management service was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Policy" + ], + "operationId": "Policy_Delete", + "description": "Deletes the global policy configuration of the Api Management Service.", + "x-ms-examples": { + "ApiManagementDeletePolicy": { + "$ref": "./examples/ApiManagementDeletePolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Policy was successfully removed" + }, + "204": { + "description": "Policy successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimpolicydescriptions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimpolicydescriptions.json new file mode 100644 index 000000000000..834258a44cd4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimpolicydescriptions.json @@ -0,0 +1,100 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing retrieving a collection of policy snippets available in Azure API Management deployment.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/policyDescriptions": { + "get": { + "tags": [ + "PolicyDescription" + ], + "operationId": "PolicyDescription_ListByService", + "description": "Lists all policy descriptions.", + "x-ms-examples": { + "ApiManagementListPolicyDescriptions": { + "$ref": "./examples/ApiManagementListPolicyDescriptions.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "scope", + "in": "query", + "required": false, + "type": "string", + "description": "Policy scope.", + "enum": [ + "Tenant", + "Product", + "Api", + "Operation", + "All" + ], + "x-ms-enum": { + "name": "PolicyScopeContract", + "modelAsString": false + } + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Returns an array of policy descriptions.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyDescriptionCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimportalsettings.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimportalsettings.json new file mode 100644 index 000000000000..abf6b6644e29 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimportalsettings.json @@ -0,0 +1,657 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on PortalSettings entity associated with your Azure API Management deployment. Using this entity you can manage settings for a Developer Portal.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/portalsettings/signin": { + "head": { + "tags": [ + "SignInSettings" + ], + "operationId": "SignInSettings_GetEntityTag", + "description": "Gets the entity state (Etag) version of the SignInSettings.", + "x-ms-examples": { + "ApiManagementHeadSignInSettings": { + "$ref": "./examples/ApiManagementHeadSignInSettings.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation completed successfully.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "SignInSettings" + ], + "operationId": "SignInSettings_Get", + "description": "Get Sign In Settings for the Portal", + "x-ms-examples": { + "ApiManagementPortalSettingsGetSignIn": { + "$ref": "./examples/ApiManagementPortalSettingsGetSignIn.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Sign-In settings.", + "schema": { + "$ref": "./definitions.json#/definitions/PortalSigninSettings" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "SignInSettings" + ], + "operationId": "SignInSettings_Update", + "description": "Update Sign-In settings.", + "x-ms-examples": { + "ApiManagementPortalSettingsUpdateSignIn": { + "$ref": "./examples/ApiManagementPortalSettingsUpdateSignIn.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/PortalSigninSettings" + }, + "description": "Update Sign-In settings." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Sign-In settings was updated successfully." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "SignInSettings" + ], + "operationId": "SignInSettings_CreateOrUpdate", + "description": "Create or Update Sign-In settings.", + "x-ms-examples": { + "ApiManagementPortalSettingsUpdateSignIn": { + "$ref": "./examples/ApiManagementPortalSettingsPutSignIn.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/PortalSigninSettings" + }, + "description": "Create or update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Sign-In settings was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/PortalSigninSettings" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/portalsettings/signup": { + "head": { + "tags": [ + "SignUpSettings" + ], + "operationId": "SignUpSettings_GetEntityTag", + "description": "Gets the entity state (Etag) version of the SignUpSettings.", + "x-ms-examples": { + "ApiManagementHeadSignUpSettings": { + "$ref": "./examples/ApiManagementHeadSignUpSettings.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation completed successfully.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "SignUpSettings" + ], + "operationId": "SignUpSettings_Get", + "description": "Get Sign Up Settings for the Portal", + "x-ms-examples": { + "ApiManagementPortalSettingsGetSignUp": { + "$ref": "./examples/ApiManagementPortalSettingsGetSignUp.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Sign-Up settings.", + "schema": { + "$ref": "./definitions.json#/definitions/PortalSignupSettings" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "SignUpSettings" + ], + "operationId": "SignUpSettings_Update", + "description": "Update Sign-Up settings.", + "x-ms-examples": { + "ApiManagementPortalSettingsUpdateSignUp": { + "$ref": "./examples/ApiManagementPortalSettingsUpdateSignUp.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/PortalSignupSettings" + }, + "description": "Update Sign-Up settings." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Sign-Up settings was updated successfully." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "SignUpSettings" + ], + "operationId": "SignUpSettings_CreateOrUpdate", + "description": "Create or Update Sign-Up settings.", + "x-ms-examples": { + "ApiManagementPortalSettingsUpdateSignUp": { + "$ref": "./examples/ApiManagementPortalSettingsPutSignUp.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/PortalSignupSettings" + }, + "description": "Create or update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Sign-Up settings was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/PortalSignupSettings" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/portalsettings/delegation": { + "head": { + "tags": [ + "DelegationSettings" + ], + "operationId": "DelegationSettings_GetEntityTag", + "description": "Gets the entity state (Etag) version of the DelegationSettings.", + "x-ms-examples": { + "ApiManagementHeadDelegationSettings": { + "$ref": "./examples/ApiManagementHeadDelegationSettings.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation completed successfully.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "DelegationSettings" + ], + "operationId": "DelegationSettings_Get", + "description": "Get Delegation Settings for the Portal.", + "x-ms-examples": { + "ApiManagementPortalSettingsGetDelegation": { + "$ref": "./examples/ApiManagementPortalSettingsGetDelegation.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delegation settings.", + "schema": { + "$ref": "./definitions.json#/definitions/PortalDelegationSettings" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "DelegationSettings" + ], + "operationId": "DelegationSettings_Update", + "description": "Update Delegation settings.", + "x-ms-examples": { + "ApiManagementPortalSettingsUpdateDelegation": { + "$ref": "./examples/ApiManagementPortalSettingsUpdateDelegation.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/PortalDelegationSettings" + }, + "description": "Update Delegation settings." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delegation settings was updated successfully." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "DelegationSettings" + ], + "operationId": "DelegationSettings_CreateOrUpdate", + "description": "Create or Update Delegation settings.", + "x-ms-examples": { + "ApiManagementPortalSettingsUpdateDelegation": { + "$ref": "./examples/ApiManagementPortalSettingsPutDelegation.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/PortalDelegationSettings" + }, + "description": "Create or update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delegation settings was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/PortalDelegationSettings" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/portalsettings/delegation/listSecrets": { + "post": { + "tags": [ + "DelegationSettings" + ], + "operationId": "DelegationSettings_ListSecrets", + "description": "Gets the secret validation key of the DelegationSettings.", + "x-ms-examples": { + "ApiManagementListSecretsPortalSettings": { + "$ref": "./examples/ApiManagementListSecretsPortalSettingsValidationKey.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the validation key.", + "schema": { + "$ref": "./definitions.json#/definitions/PortalSettingValidationKeyContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimproducts.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimproducts.json new file mode 100644 index 000000000000..2133252b0379 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimproducts.json @@ -0,0 +1,1399 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Product entity associated with your Azure API Management deployment. The Product entity represents a product in API Management. Products include one or more APIs and their associated terms of use. Once a product is published, developers can subscribe to the product and begin to use the product’s APIs.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products": { + "get": { + "tags": [ + "Product" + ], + "operationId": "Product_ListByService", + "description": "Lists a collection of products in the specified service instance.", + "x-ms-examples": { + "ApiManagementListProducts": { + "$ref": "./examples/ApiManagementListProducts.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| terms | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| state | filter | eq | |
| groups | expand | | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "expandGroups", + "in": "query", + "required": false, + "type": "boolean", + "description": "When set to true, the response contains an array of groups that have visibility to the product. The default is false." + }, + { + "name": "tags", + "in": "query", + "required": false, + "type": "string", + "description": "Products which are part of a specific tag." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A Collection of the Product entities for the specified API Management service instance.", + "schema": { + "$ref": "./definitions.json#/definitions/ProductCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ProductContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}": { + "head": { + "tags": [ + "Product" + ], + "operationId": "Product_GetEntityTag", + "description": "Gets the entity state (Etag) version of the product specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadProduct": { + "$ref": "./examples/ApiManagementHeadProduct.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified Product entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Product" + ], + "operationId": "Product_Get", + "description": "Gets the details of the product specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetProduct": { + "$ref": "./examples/ApiManagementGetProduct.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Product entity.", + "schema": { + "$ref": "./definitions.json#/definitions/ProductContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Product" + ], + "operationId": "Product_CreateOrUpdate", + "description": "Creates or Updates a product.", + "x-ms-examples": { + "ApiManagementCreateProduct": { + "$ref": "./examples/ApiManagementCreateProduct.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/ProductContract" + }, + "description": "Create or update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Product was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/ProductContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Product was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/ProductContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Product" + ], + "operationId": "Product_Update", + "description": "Update existing product details.", + "x-ms-examples": { + "ApiManagementUpdateProduct": { + "$ref": "./examples/ApiManagementUpdateProduct.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/ProductUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Product details was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Product" + ], + "operationId": "Product_Delete", + "description": "Delete product.", + "x-ms-examples": { + "ApiManagementDeleteProduct": { + "$ref": "./examples/ApiManagementDeleteProduct.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "name": "deleteSubscriptions", + "in": "query", + "required": false, + "type": "boolean", + "description": "Delete existing subscriptions associated with the product or not." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Product was successfully removed." + }, + "204": { + "description": "Product was successfully removed by previous request or does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/apis": { + "get": { + "tags": [ + "ProductApi" + ], + "operationId": "ProductApi_ListByProduct", + "description": "Lists a collection of the APIs associated with a product.", + "x-ms-examples": { + "ApiManagementListProductApis": { + "$ref": "./examples/ApiManagementListProductApis.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| serviceUrl | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| path | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains a collection of Api entities in the product.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ApiContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/apis/{apiId}": { + "head": { + "tags": [ + "ProductApi" + ], + "operationId": "ProductApi_CheckEntityExists", + "description": "Checks that API entity specified by identifier is associated with the Product entity.", + "x-ms-examples": { + "ApiManagementHeadProductApi": { + "$ref": "./examples/ApiManagementHeadProductApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Entity exists" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ProductApi" + ], + "operationId": "ProductApi_CreateOrUpdate", + "description": "Adds an API to the specified product.", + "x-ms-examples": { + "ApiManagementCreateProductApi": { + "$ref": "./examples/ApiManagementCreateProductApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "The API was successfully added to the product.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiContract" + } + }, + "200": { + "description": "The specified API is already added to the product.", + "schema": { + "$ref": "./definitions.json#/definitions/ApiContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ProductApi" + ], + "operationId": "ProductApi_Delete", + "description": "Deletes the specified API from the specified product.", + "x-ms-examples": { + "ApiManagementDeleteProductApi": { + "$ref": "./examples/ApiManagementDeleteProductApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiIdRevParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "API was successfully removed from product" + }, + "204": { + "description": "API successfully removed by previous request or does not exist in product" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/groups": { + "get": { + "tags": [ + "ProductGroup" + ], + "operationId": "ProductGroup_ListByProduct", + "description": "Lists the collection of developer groups associated with the specified product.", + "x-ms-examples": { + "ApiManagementListProductGroups": { + "$ref": "./examples/ApiManagementListProductGroups.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | |
| displayName | filter | eq, ne | |
| description | filter | eq, ne | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Group entities.", + "schema": { + "$ref": "./definitions.json#/definitions/GroupCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/GroupContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/groups/{groupId}": { + "head": { + "tags": [ + "ProductGroup" + ], + "operationId": "ProductGroup_CheckEntityExists", + "description": "Checks that Group entity specified by identifier is associated with the Product entity.", + "x-ms-examples": { + "ApiManagementHeadProductGroup": { + "$ref": "./examples/ApiManagementHeadProductGroup.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The Group is associated with the Product." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ProductGroup" + ], + "operationId": "ProductGroup_CreateOrUpdate", + "description": "Adds the association between the specified developer group with the specified product.", + "x-ms-examples": { + "ApiManagementCreateProductGroup": { + "$ref": "./examples/ApiManagementCreateProductGroup.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "The group was successfully associated with the product.", + "schema": { + "$ref": "./definitions.json#/definitions/GroupContract" + } + }, + "200": { + "description": "The specified group is already associated with the product.", + "schema": { + "$ref": "./definitions.json#/definitions/GroupContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ProductGroup" + ], + "operationId": "ProductGroup_Delete", + "description": "Deletes the association between the specified group and product.", + "x-ms-examples": { + "ApiManagementDeleteProductGroup": { + "$ref": "./examples/ApiManagementDeleteProductGroup.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/GroupIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The group was successfully disassociated with the product." + }, + "204": { + "description": "The group was successfully disassociated with the product." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/subscriptions": { + "get": { + "tags": [ + "ProductSubscription" + ], + "operationId": "ProductSubscriptions_List", + "description": "Lists the collection of subscriptions to the specified product.", + "x-ms-examples": { + "ApiManagementListProductSubscriptions": { + "$ref": "./examples/ApiManagementListProductSubscriptions.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| stateComment | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| ownerId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| scope | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| userId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| productId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| state | filter | eq | |
| user | expand | | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of subscription entities.", + "schema": { + "$ref": "./definitions.json#/definitions/SubscriptionCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/SubscriptionContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/policies": { + "get": { + "tags": [ + "ProductPolicy" + ], + "operationId": "ProductPolicy_ListByProduct", + "description": "Get the policy configuration at the Product level.", + "x-ms-examples": { + "ApiManagementListProductPolicies": { + "$ref": "./examples/ApiManagementListProductPolicies.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Product Policy information.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/policies/{policyId}": { + "head": { + "tags": [ + "ProductPolicy" + ], + "operationId": "ProductPolicy_GetEntityTag", + "description": "Get the ETag of the policy configuration at the Product level.", + "x-ms-examples": { + "ApiManagementHeadProductPolicy": { + "$ref": "./examples/ApiManagementHeadProductPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Product Policy Etag information.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ProductPolicy" + ], + "operationId": "ProductPolicy_Get", + "description": "Get the policy configuration at the Product level.", + "x-ms-examples": { + "ApiManagementGetProductPolicy": { + "$ref": "./examples/ApiManagementGetProductPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyExportFormat" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Product Policy information.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ProductPolicy" + ], + "operationId": "ProductPolicy_CreateOrUpdate", + "description": "Creates or updates policy configuration for the Product.", + "x-ms-examples": { + "ApiManagementCreateProductPolicy": { + "$ref": "./examples/ApiManagementCreateProductPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "description": "The policy contents to apply." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Product policy configuration was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "Product policy configuration of the tenant was successfully updated.", + "schema": { + "$ref": "./definitions.json#/definitions/PolicyContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ProductPolicy" + ], + "operationId": "ProductPolicy_Delete", + "description": "Deletes the policy configuration at the Product.", + "x-ms-examples": { + "ApiManagementDeleteProductPolicy": { + "$ref": "./examples/ApiManagementDeleteProductPolicy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/PolicyIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the policy configuration at the Product level." + }, + "204": { + "description": "Successfully deleted the policy configuration at the Product level." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/tags": { + "get": { + "tags": [ + "ProductTag" + ], + "operationId": "Tag_ListByProduct", + "description": "Lists all Tags associated with the Product.", + "x-ms-examples": { + "ApiManagementListProductTags": { + "$ref": "./examples/ApiManagementListProductTags.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation returns a collection of tags associated with the Product entity.", + "schema": { + "$ref": "./definitions.json#/definitions/TagCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/TagContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/products/{productId}/tags/{tagId}": { + "head": { + "tags": [ + "ProductTag" + ], + "operationId": "Tag_GetEntityStateByProduct", + "description": "Gets the entity state version of the tag specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadProductTag": { + "$ref": "./examples/ApiManagementHeadProductTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Empty response body, ETag header entity state version.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "ProductTag" + ], + "operationId": "Tag_GetByProduct", + "description": "Get tag associated with the Product.", + "x-ms-examples": { + "ApiManagementGetProductTag": { + "$ref": "./examples/ApiManagementGetProductTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Gets the details of the tag specified by its identifier.", + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ProductTag" + ], + "operationId": "Tag_AssignToProduct", + "description": "Assign tag to the Product.", + "x-ms-examples": { + "ApiManagementCreateProductTag": { + "$ref": "./examples/ApiManagementCreateProductTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Tag was assigned to the Product.", + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + } + }, + "200": { + "description": "Tag is already assigned to the Product.", + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ProductTag" + ], + "operationId": "Tag_DetachFromProduct", + "description": "Detach the tag from the Product.", + "x-ms-examples": { + "ApiManagementDeleteProductTag": { + "$ref": "./examples/ApiManagementDeleteProductTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ProductIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully detached the tag from the Product." + }, + "204": { + "description": "Successfully detached the tag from the Product." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimproductsByTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimproductsByTags.json new file mode 100644 index 000000000000..981f7aaf5d7c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimproductsByTags.json @@ -0,0 +1,106 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations to retrieve Products by Tags in Azure API Management deployment.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/productsByTags": { + "get": { + "tags": [ + "ProductsByTag" + ], + "operationId": "Product_ListByTags", + "description": "Lists a collection of products associated with tags.", + "x-ms-examples": { + "ApiManagementListProductsByTags": { + "$ref": "./examples/ApiManagementListProductsByTags.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| terms | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| state | filter | eq | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "includeNotTaggedProducts", + "in": "query", + "required": false, + "type": "boolean", + "description": "Include not tagged Products." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of TagResource entities.", + "schema": { + "$ref": "./definitions.json#/definitions/TagResourceCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/TagResourceContract" + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimquotas.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimquotas.json new file mode 100644 index 000000000000..2aa6ffd5883d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimquotas.json @@ -0,0 +1,242 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Quota entity associated with your Azure API Management deployment. To configure call rate limit and quota policies refer to [how to configure call rate limit and quota](https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-product-with-rules#a-namepolicies-ato-configure-call-rate-limit-and-quota-policies).", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/quotas/{quotaCounterKey}": { + "get": { + "tags": [ + "QuotaByCounterKeys" + ], + "operationId": "QuotaByCounterKeys_ListByService", + "description": "Lists a collection of current quota counter periods associated with the counter-key configured in the policy on the specified service instance. The api does not support paging yet.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-product-with-rules#a-namepolicies-ato-configure-call-rate-limit-and-quota-policies", + "description": "Document describing how to configure the quota policies." + }, + "x-ms-examples": { + "ApiManagementGetQuotaCounterKeys": { + "$ref": "./examples/ApiManagementGetQuotaCounterKeys.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/QuotaCounterKeyParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of the quota counter values.", + "schema": { + "$ref": "./definitions.json#/definitions/QuotaCounterCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "QuotaByCounterKeys" + ], + "operationId": "QuotaByCounterKeys_Update", + "description": "Updates all the quota counter values specified with the existing quota counter key to a value in the specified service instance. This should be used for reset of the quota counter values.", + "x-ms-examples": { + "ApiManagementUpdateQuotaCounterKey": { + "$ref": "./examples/ApiManagementUpdateQuotaCounterKey.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/QuotaCounterKeyParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/QuotaCounterValueContractProperties" + }, + "description": "The value of the quota counter to be applied to all quota counter periods." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Quota counter period was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/quotas/{quotaCounterKey}/periods/{quotaPeriodKey}": { + "get": { + "tags": [ + "QuotaByPeriodKeys" + ], + "operationId": "QuotaByPeriodKeys_Get", + "description": "Gets the value of the quota counter associated with the counter-key in the policy for the specific period in service instance.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/azure/api-management/api-management-howto-product-with-rules#a-namepolicies-ato-configure-call-rate-limit-and-quota-policies", + "description": "Document describing how to configure the quota policies." + }, + "x-ms-examples": { + "ApiManagementGetQuotaCounterKeysByQuotaPeriod": { + "$ref": "./examples/ApiManagementGetQuotaCounterKeysByQuotaPeriod.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/QuotaCounterKeyParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/QuotaPeriodKeyParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the Quota counter details for the specified period.", + "schema": { + "$ref": "./definitions.json#/definitions/QuotaCounterContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "QuotaByPeriodKeys" + ], + "operationId": "QuotaByPeriodKeys_Update", + "description": "Updates an existing quota counter value in the specified service instance.", + "x-ms-examples": { + "ApiManagementUpdateQuotaCounterKeyByQuotaPeriod": { + "$ref": "./examples/ApiManagementUpdateQuotaCounterKeyByQuotaPeriod.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/QuotaCounterKeyParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/QuotaPeriodKeyParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/QuotaCounterValueContractProperties" + }, + "description": "The value of the Quota counter to be applied on the specified period." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The quota counter value was successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimregions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimregions.json new file mode 100644 index 000000000000..4beef75dbe2a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimregions.json @@ -0,0 +1,85 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations in Azure API Management deployment.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/regions": { + "get": { + "tags": [ + "Region" + ], + "operationId": "Region_ListByService", + "description": "Lists all azure regions in which the service exists.", + "x-ms-examples": { + "ApiManagementListRegions": { + "$ref": "./examples/ApiManagementListRegions.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists of Regions in which the service is deployed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/RegionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimreports.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimreports.json new file mode 100644 index 000000000000..461f343ec801 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimreports.json @@ -0,0 +1,514 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs to get the analytics reports associated with your Azure API Management deployment.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/reports/byApi": { + "get": { + "tags": [ + "Reports" + ], + "operationId": "Reports_ListByApi", + "description": "Lists report records by API.", + "x-ms-examples": { + "ApiManagementGetReportsByApi": { + "$ref": "./examples/ApiManagementGetReportsByApi.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "description": "The filter to apply on the operation." + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "$orderby", + "in": "query", + "required": false, + "type": "string", + "description": "OData order by query option." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Report record.", + "schema": { + "$ref": "./definitions.json#/definitions/ReportCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ReportRecordContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/reports/byUser": { + "get": { + "tags": [ + "Reports" + ], + "operationId": "Reports_ListByUser", + "description": "Lists report records by User.", + "x-ms-examples": { + "ApiManagementGetReportsByUser": { + "$ref": "./examples/ApiManagementGetReportsByUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| timestamp | filter | ge, le | |
| displayName | select, orderBy | | |
| userId | select, filter | eq | |
| apiRegion | filter | eq | |
| productId | filter | eq | |
| subscriptionId | filter | eq | |
| apiId | filter | eq | |
| operationId | filter | eq | |
| callCountSuccess | select, orderBy | | |
| callCountBlocked | select, orderBy | | |
| callCountFailed | select, orderBy | | |
| callCountOther | select, orderBy | | |
| callCountTotal | select, orderBy | | |
| bandwidth | select, orderBy | | |
| cacheHitsCount | select | | |
| cacheMissCount | select | | |
| apiTimeAvg | select, orderBy | | |
| apiTimeMin | select | | |
| apiTimeMax | select | | |
| serviceTimeAvg | select | | |
| serviceTimeMin | select | | |
| serviceTimeMax | select | | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "$orderby", + "in": "query", + "required": false, + "type": "string", + "description": "OData order by query option." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Report record.", + "schema": { + "$ref": "./definitions.json#/definitions/ReportCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ReportRecordContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/reports/byOperation": { + "get": { + "tags": [ + "Reports" + ], + "operationId": "Reports_ListByOperation", + "description": "Lists report records by API Operations.", + "x-ms-examples": { + "ApiManagementGetReportsByOperation": { + "$ref": "./examples/ApiManagementGetReportsByOperation.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| timestamp | filter | ge, le | |
| displayName | select, orderBy | | |
| apiRegion | filter | eq | |
| userId | filter | eq | |
| productId | filter | eq | |
| subscriptionId | filter | eq | |
| apiId | filter | eq | |
| operationId | select, filter | eq | |
| callCountSuccess | select, orderBy | | |
| callCountBlocked | select, orderBy | | |
| callCountFailed | select, orderBy | | |
| callCountOther | select, orderBy | | |
| callCountTotal | select, orderBy | | |
| bandwidth | select, orderBy | | |
| cacheHitsCount | select | | |
| cacheMissCount | select | | |
| apiTimeAvg | select, orderBy | | |
| apiTimeMin | select | | |
| apiTimeMax | select | | |
| serviceTimeAvg | select | | |
| serviceTimeMin | select | | |
| serviceTimeMax | select | | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "$orderby", + "in": "query", + "required": false, + "type": "string", + "description": "OData order by query option." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Report record.", + "schema": { + "$ref": "./definitions.json#/definitions/ReportCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ReportRecordContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/reports/byProduct": { + "get": { + "tags": [ + "Reports" + ], + "operationId": "Reports_ListByProduct", + "description": "Lists report records by Product.", + "x-ms-examples": { + "ApiManagementGetReportsByProduct": { + "$ref": "./examples/ApiManagementGetReportsByProduct.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| timestamp | filter | ge, le | |
| displayName | select, orderBy | | |
| apiRegion | filter | eq | |
| userId | filter | eq | |
| productId | select, filter | eq | |
| subscriptionId | filter | eq | |
| callCountSuccess | select, orderBy | | |
| callCountBlocked | select, orderBy | | |
| callCountFailed | select, orderBy | | |
| callCountOther | select, orderBy | | |
| callCountTotal | select, orderBy | | |
| bandwidth | select, orderBy | | |
| cacheHitsCount | select | | |
| cacheMissCount | select | | |
| apiTimeAvg | select, orderBy | | |
| apiTimeMin | select | | |
| apiTimeMax | select | | |
| serviceTimeAvg | select | | |
| serviceTimeMin | select | | |
| serviceTimeMax | select | | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "$orderby", + "in": "query", + "required": false, + "type": "string", + "description": "OData order by query option." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Report record.", + "schema": { + "$ref": "./definitions.json#/definitions/ReportCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ReportRecordContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/reports/byGeo": { + "get": { + "tags": [ + "Reports" + ], + "operationId": "Reports_ListByGeo", + "description": "Lists report records by geography.", + "x-ms-examples": { + "ApiManagementGetReportsByGeo": { + "$ref": "./examples/ApiManagementGetReportsByGeo.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| timestamp | filter | ge, le | |
| country | select | | |
| region | select | | |
| zip | select | | |
| apiRegion | filter | eq | |
| userId | filter | eq | |
| productId | filter | eq | |
| subscriptionId | filter | eq | |
| apiId | filter | eq | |
| operationId | filter | eq | |
| callCountSuccess | select | | |
| callCountBlocked | select | | |
| callCountFailed | select | | |
| callCountOther | select | | |
| bandwidth | select, orderBy | | |
| cacheHitsCount | select | | |
| cacheMissCount | select | | |
| apiTimeAvg | select | | |
| apiTimeMin | select | | |
| apiTimeMax | select | | |
| serviceTimeAvg | select | | |
| serviceTimeMin | select | | |
| serviceTimeMax | select | | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Report record.", + "schema": { + "$ref": "./definitions.json#/definitions/ReportCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ReportRecordContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/reports/bySubscription": { + "get": { + "tags": [ + "Reports" + ], + "operationId": "Reports_ListBySubscription", + "description": "Lists report records by subscription.", + "x-ms-examples": { + "ApiManagementGetReportsBySubscription": { + "$ref": "./examples/ApiManagementGetReportsBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| timestamp | filter | ge, le | |
| displayName | select, orderBy | | |
| apiRegion | filter | eq | |
| userId | select, filter | eq | |
| productId | select, filter | eq | |
| subscriptionId | select, filter | eq | |
| callCountSuccess | select, orderBy | | |
| callCountBlocked | select, orderBy | | |
| callCountFailed | select, orderBy | | |
| callCountOther | select, orderBy | | |
| callCountTotal | select, orderBy | | |
| bandwidth | select, orderBy | | |
| cacheHitsCount | select | | |
| cacheMissCount | select | | |
| apiTimeAvg | select, orderBy | | |
| apiTimeMin | select | | |
| apiTimeMax | select | | |
| serviceTimeAvg | select | | |
| serviceTimeMin | select | | |
| serviceTimeMax | select | | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "$orderby", + "in": "query", + "required": false, + "type": "string", + "description": "OData order by query option." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Report record.", + "schema": { + "$ref": "./definitions.json#/definitions/ReportCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ReportRecordContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/reports/byTime": { + "get": { + "tags": [ + "Reports" + ], + "operationId": "Reports_ListByTime", + "description": "Lists report records by Time.", + "x-ms-examples": { + "ApiManagementGetReportsByTime": { + "$ref": "./examples/ApiManagementGetReportsByTime.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| timestamp | filter, select | ge, le | |
| interval | select | | |
| apiRegion | filter | eq | |
| userId | filter | eq | |
| productId | filter | eq | |
| subscriptionId | filter | eq | |
| apiId | filter | eq | |
| operationId | filter | eq | |
| callCountSuccess | select | | |
| callCountBlocked | select | | |
| callCountFailed | select | | |
| callCountOther | select | | |
| bandwidth | select, orderBy | | |
| cacheHitsCount | select | | |
| cacheMissCount | select | | |
| apiTimeAvg | select | | |
| apiTimeMin | select | | |
| apiTimeMax | select | | |
| serviceTimeAvg | select | | |
| serviceTimeMin | select | | |
| serviceTimeMax | select | | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "$orderby", + "in": "query", + "required": false, + "type": "string", + "description": "OData order by query option." + }, + { + "name": "interval", + "in": "query", + "required": true, + "type": "string", + "format": "duration", + "description": "By time interval. Interval must be multiple of 15 minutes and may not be zero. The value should be in ISO 8601 format (http://en.wikipedia.org/wiki/ISO_8601#Durations).This code can be used to convert TimeSpan to a valid interval string: XmlConvert.ToString(new TimeSpan(hours, minutes, seconds))." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Report record.", + "schema": { + "$ref": "./definitions.json#/definitions/ReportCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/ReportRecordContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/reports/byRequest": { + "get": { + "tags": [ + "Reports" + ], + "operationId": "Reports_ListByRequest", + "description": "Lists report records by Request.", + "x-ms-examples": { + "ApiManagementGetReportsByRequest": { + "$ref": "./examples/ApiManagementGetReportsByRequest.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| timestamp | filter | ge, le | |
| apiId | filter | eq | |
| operationId | filter | eq | |
| productId | filter | eq | |
| userId | filter | eq | |
| apiRegion | filter | eq | |
| subscriptionId | filter | eq | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Report record.", + "schema": { + "$ref": "./definitions.json#/definitions/RequestReportCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-odata": "./definitions.json#/definitions/RequestReportRecordContract" + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimsubscriptions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimsubscriptions.json new file mode 100644 index 000000000000..3c7cad660af8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimsubscriptions.json @@ -0,0 +1,502 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Subscription entity associated with your Azure API Management deployment. The Subscription entity represents the association between a user and a product in API Management. Products contain one or more APIs, and once a product is published, developers can subscribe to the product and begin to use the product’s APIs.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/subscriptions": { + "get": { + "tags": [ + "Subscription" + ], + "operationId": "Subscription_List", + "description": "Lists all subscriptions of the API Management service instance.", + "x-ms-examples": { + "ApiManagementListSubscriptions": { + "$ref": "./examples/ApiManagementListSubscriptions.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| stateComment | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| ownerId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| scope | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| userId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| productId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| state | filter | eq | |
| user | expand | | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A collection of the Subscription entities for the specified API Management service instance.", + "schema": { + "$ref": "./definitions.json#/definitions/SubscriptionCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/SubscriptionContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/subscriptions/{sid}": { + "head": { + "tags": [ + "Subscription" + ], + "operationId": "Subscription_GetEntityTag", + "description": "Gets the entity state (Etag) version of the apimanagement subscription specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadSubscription": { + "$ref": "./examples/ApiManagementHeadSubscription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionEntityIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified apimanagement subscription entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Subscription" + ], + "operationId": "Subscription_Get", + "description": "Gets the specified Subscription entity.", + "x-ms-examples": { + "ApiManagementGetSubscription": { + "$ref": "./examples/ApiManagementGetSubscription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionEntityIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Subscription entity.", + "schema": { + "$ref": "./definitions.json#/definitions/SubscriptionContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Subscription" + ], + "operationId": "Subscription_CreateOrUpdate", + "description": "Creates or updates the subscription of specified user to the specified product.", + "x-ms-examples": { + "ApiManagementCreateSubscription": { + "$ref": "./examples/ApiManagementCreateSubscription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionEntityIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/SubscriptionCreateParameters" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/NotifySubscriptionStateChangeParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "The user was successfully subscribed to the product.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/SubscriptionContract" + } + }, + "200": { + "description": "The user already subscribed to the product.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/SubscriptionContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Subscription" + ], + "operationId": "Subscription_Update", + "description": "Updates the details of a subscription specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateSubscription": { + "$ref": "./examples/ApiManagementUpdateSubscription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionEntityIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/SubscriptionUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/NotifySubscriptionStateChangeParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The subscription details were successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Subscription" + ], + "operationId": "Subscription_Delete", + "description": "Deletes the specified subscription.", + "x-ms-examples": { + "ApiManagementDeleteSubscription": { + "$ref": "./examples/ApiManagementDeleteSubscription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionEntityIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The subscription details were successfully deleted." + }, + "204": { + "description": "The subscription details were successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/subscriptions/{sid}/regeneratePrimaryKey": { + "post": { + "tags": [ + "Subscription" + ], + "operationId": "Subscription_RegeneratePrimaryKey", + "description": "Regenerates primary key of existing subscription of the API Management service instance.", + "x-ms-examples": { + "ApiManagementSubscriptionRegeneratePrimaryKey": { + "$ref": "./examples/ApiManagementSubscriptionRegeneratePrimaryKey.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionEntityIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The primary key was successfully regenerated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/subscriptions/{sid}/regenerateSecondaryKey": { + "post": { + "tags": [ + "Subscription" + ], + "operationId": "Subscription_RegenerateSecondaryKey", + "description": "Regenerates secondary key of existing subscription of the API Management service instance.", + "x-ms-examples": { + "ApiManagementSubscriptionRegenerateSecondaryKey": { + "$ref": "./examples/ApiManagementSubscriptionRegenerateSecondaryKey.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionEntityIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The secondary key was successfully regenerated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/subscriptions/{sid}/listSecrets": { + "post": { + "tags": [ + "Subscription" + ], + "operationId": "Subscription_ListSecrets", + "description": "Gets the subscription keys.", + "x-ms-examples": { + "ApiManagementListSecretsSubscription": { + "$ref": "./examples/ApiManagementListSecretsSubscription.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionEntityIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains subscription keys.", + "schema": { + "$ref": "./definitions.json#/definitions/SubscriptionKeysContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimtagresources.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimtagresources.json new file mode 100644 index 000000000000..525afd07bd08 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimtagresources.json @@ -0,0 +1,99 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for querying APIs. Operations and Products by tags in your Azure API Management deployment.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tagResources": { + "get": { + "tags": [ + "TagResource" + ], + "operationId": "TagResource_ListByService", + "description": "Lists a collection of resources associated with tags.", + "x-ms-examples": { + "ApiManagementListTagResources": { + "$ref": "./examples/ApiManagementListTagResources.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| aid | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| apiName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| apiRevision | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| path | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| serviceUrl | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| method | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| urlTemplate | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| terms | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| state | filter | eq | |
| isCurrent | filter | eq | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of TagResource entities.", + "schema": { + "$ref": "./definitions.json#/definitions/TagResourceCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/TagResourceContract" + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimtags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimtags.json new file mode 100644 index 000000000000..ea44d76261a8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimtags.json @@ -0,0 +1,374 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on Tag entity in your Azure API Management deployment. Tags can be assigned to APIs, Operations and Products.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tags": { + "get": { + "tags": [ + "Tag" + ], + "operationId": "Tag_ListByService", + "description": "Lists a collection of tags defined within a service instance.", + "x-ms-examples": { + "ApiManagementListTags": { + "$ref": "./examples/ApiManagementListTags.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "scope", + "in": "query", + "required": false, + "type": "string", + "description": "Scope like 'apis', 'products' or 'apis/{apiId}" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Tag entities.", + "schema": { + "$ref": "./definitions.json#/definitions/TagCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/TagContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tags/{tagId}": { + "head": { + "tags": [ + "Tag" + ], + "operationId": "Tag_GetEntityState", + "description": "Gets the entity state version of the tag specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadTag": { + "$ref": "./examples/ApiManagementHeadTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Empty response body, ETag header entity state version.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Tag" + ], + "operationId": "Tag_Get", + "description": "Gets the details of the tag specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetTag": { + "$ref": "./examples/ApiManagementGetTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the specified Tag entity.", + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Tag" + ], + "operationId": "Tag_CreateOrUpdate", + "description": "Creates a tag.", + "x-ms-examples": { + "ApiManagementCreateTag": { + "$ref": "./examples/ApiManagementCreateTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/TagCreateUpdateParameters" + }, + "description": "Create parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Tag was created successfully.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + } + }, + "200": { + "description": "Tag already exists.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/TagContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Tag" + ], + "operationId": "Tag_Update", + "description": "Updates the details of the tag specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateTag": { + "$ref": "./examples/ApiManagementUpdateTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/TagCreateUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The tag details were successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Tag" + ], + "operationId": "Tag_Delete", + "description": "Deletes specific tag of the API Management service instance.", + "x-ms-examples": { + "ApiManagementDeleteTag": { + "$ref": "./examples/ApiManagementDeleteTag.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/TagIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Tag successfully removed" + }, + "204": { + "description": "Tag successfully removed by previous request or does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimtenant.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimtenant.json new file mode 100644 index 000000000000..7a03e8b28249 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimtenant.json @@ -0,0 +1,740 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on tenant entity associated with your Azure API Management deployment. Using this entity you can manage properties and configuration that apply to the entire API Management service instance.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{accessName}": { + "head": { + "tags": [ + "TenantAccess" + ], + "operationId": "TenantAccess_GetEntityTag", + "description": "Tenant access metadata", + "x-ms-examples": { + "ApiManagementHeadTenantAccess": { + "$ref": "./examples/ApiManagementHeadTenantAccess.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AccessParameter" + } + ], + "responses": { + "200": { + "description": "Operation completed successfully.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "TenantAccess" + ], + "operationId": "TenantAccess_Get", + "description": "Get tenant access information details without secrets.", + "x-ms-examples": { + "ApiManagementGetTenantAccess": { + "$ref": "./examples/ApiManagementGetTenantAccess.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AccessParameter" + } + ], + "responses": { + "200": { + "description": "Tenant Access information.", + "schema": { + "$ref": "./definitions.json#/definitions/AccessInformationContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "TenantAccess" + ], + "operationId": "TenantAccess_Update", + "description": "Update tenant access information details.", + "x-ms-examples": { + "ApiManagementUpdateTenantAccess": { + "$ref": "./examples/ApiManagementUpdateTenantAccess.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/AccessInformationUpdateParameters" + }, + "description": "Parameters supplied to retrieve the Tenant Access Information." + }, + { + "$ref": "./apimanagement.json#/parameters/AccessParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Tenant's access information updated successfully." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{accessName}/regeneratePrimaryKey": { + "post": { + "tags": [ + "TenantAccess" + ], + "operationId": "TenantAccess_RegeneratePrimaryKey", + "description": "Regenerate primary access key", + "x-ms-examples": { + "ApiManagementTenantAccessRegenerateKey": { + "$ref": "./examples/ApiManagementTenantAccessRegenerateKey.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AccessParameter" + } + ], + "responses": { + "204": { + "description": "The primary key was successfully regenerated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{accessName}/regenerateSecondaryKey": { + "post": { + "tags": [ + "TenantAccess" + ], + "operationId": "TenantAccess_RegenerateSecondaryKey", + "description": "Regenerate secondary access key", + "x-ms-examples": { + "ApiManagementTenantAccessRegenerateKey": { + "$ref": "./examples/ApiManagementTenantAccessRegenerateKey.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AccessParameter" + } + ], + "responses": { + "204": { + "description": "The secondary key was successfully regenerated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{accessName}/listSecrets": { + "post": { + "tags": [ + "TenantAccess" + ], + "operationId": "TenantAccess_ListSecrets", + "description": "Get tenant access information details.", + "x-ms-examples": { + "ApiManagementListSecretsTenantAccess": { + "$ref": "./examples/ApiManagementListSecretsTenantAccess.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AccessParameter" + } + ], + "responses": { + "200": { + "description": "Tenant Access information.", + "schema": { + "$ref": "./definitions.json#/definitions/AccessInformationContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{accessName}/git": { + "get": { + "tags": [ + "TenantAccessGit" + ], + "operationId": "TenantAccessGit_Get", + "description": "Gets the Git access configuration for the tenant. Without secrets.", + "x-ms-examples": { + "ApiManagementGetTenantAccess": { + "$ref": "./examples/ApiManagementGetTenantAccess.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AccessParameter" + } + ], + "responses": { + "200": { + "description": "Git Access Information for the Service.", + "schema": { + "$ref": "./definitions.json#/definitions/AccessInformationContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{accessName}/git/regeneratePrimaryKey": { + "post": { + "tags": [ + "TenantAccessGit" + ], + "operationId": "TenantAccessGit_RegeneratePrimaryKey", + "description": "Regenerate primary access key for GIT.", + "x-ms-examples": { + "ApiManagementTenantAccessRegenerateKey": { + "$ref": "./examples/ApiManagementTenantAccessRegenerateKey.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AccessParameter" + } + ], + "responses": { + "204": { + "description": "The primary key was successfully regenerated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{accessName}/git/regenerateSecondaryKey": { + "post": { + "tags": [ + "TenantAccessGit" + ], + "operationId": "TenantAccessGit_RegenerateSecondaryKey", + "description": "Regenerate secondary access key for GIT.", + "x-ms-examples": { + "ApiManagementTenantAccessRegenerateKey": { + "$ref": "./examples/ApiManagementTenantAccessRegenerateKey.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AccessParameter" + } + ], + "responses": { + "204": { + "description": "The secondary key was successfully regenerated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{accessName}/git/listSecrets": { + "post": { + "tags": [ + "TenantAccessGit" + ], + "operationId": "TenantAccessGit_ListSecrets", + "description": "Gets the Git access configuration for the tenant.", + "x-ms-examples": { + "ApiManagementListSecretsTenantAccess": { + "$ref": "./examples/ApiManagementListSecretsTenantAccess.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/AccessParameter" + } + ], + "responses": { + "200": { + "description": "Git Access Information for the Service.", + "schema": { + "$ref": "./definitions.json#/definitions/AccessInformationContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{configurationName}/deploy": { + "post": { + "tags": [ + "TenantConfiguration" + ], + "operationId": "TenantConfiguration_Deploy", + "description": "This operation applies changes from the specified Git branch to the configuration database. This is a long running operation and could take several minutes to complete.", + "externalDocs": { + "description": "To deploy any service configuration changes to the API Management service instance", + "url": "https://azure.microsoft.com/en-us/documentation/articles/api-management-configuration-repository-git/#to-deploy-any-service-configuration-changes-to-the-api-management-service-instance" + }, + "x-ms-examples": { + "ApiManagementTenantConfigurationDeploy": { + "$ref": "./examples/ApiManagementTenantConfigurationDeploy.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/DeployConfigurationParameters" + }, + "description": "Deploy Configuration parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ConfigurationParameter" + } + ], + "responses": { + "202": { + "description": "Accepted: Location header contains the URL where the status of the long running operation can be checked." + }, + "200": { + "description": "Result of applying changes from Git branch to database.", + "schema": { + "$ref": "./definitions.json#/definitions/OperationResultContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{configurationName}/save": { + "post": { + "tags": [ + "TenantConfiguration" + ], + "operationId": "TenantConfiguration_Save", + "description": "This operation creates a commit with the current configuration snapshot to the specified branch in the repository. This is a long running operation and could take several minutes to complete.", + "externalDocs": { + "description": "To save the service configuration to the Git repository", + "url": "https://azure.microsoft.com/en-us/documentation/articles/api-management-configuration-repository-git/#to-save-the-service-configuration-to-the-git-repository" + }, + "x-ms-examples": { + "ApiManagementTenantConfigurationSave": { + "$ref": "./examples/ApiManagementTenantConfigurationSave.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/SaveConfigurationParameter" + }, + "description": "Save Configuration parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ConfigurationParameter" + } + ], + "responses": { + "202": { + "description": "Accepted: Location header contains the URL where the status of the long running operation can be checked." + }, + "200": { + "description": "Result of creating a commit in the repository.", + "schema": { + "$ref": "./definitions.json#/definitions/OperationResultContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{configurationName}/validate": { + "post": { + "tags": [ + "TenantConfiguration" + ], + "operationId": "TenantConfiguration_Validate", + "description": "This operation validates the changes in the specified Git branch. This is a long running operation and could take several minutes to complete.", + "x-ms-examples": { + "ApiManagementTenantConfigurationValidate": { + "$ref": "./examples/ApiManagementTenantConfigurationValidate.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/DeployConfigurationParameters" + }, + "description": "Validate Configuration parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ConfigurationParameter" + } + ], + "responses": { + "202": { + "description": "Accepted: Location header contains the URL where the status of the long running operation can be checked." + }, + "200": { + "description": "Result of validating the changes in the specified Git branch.", + "schema": { + "$ref": "./definitions.json#/definitions/OperationResultContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/tenant/{configurationName}/syncState": { + "get": { + "tags": [ + "TenantConfigurationSyncState" + ], + "operationId": "TenantConfiguration_GetSyncState", + "description": "Gets the status of the most recent synchronization between the configuration database and the Git repository.", + "x-ms-examples": { + "ApiManagementTenantAccessSyncState": { + "$ref": "./examples/ApiManagementTenantAccessSyncState.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ConfigurationParameter" + } + ], + "responses": { + "200": { + "description": "Sync state result.", + "schema": { + "$ref": "./definitions.json#/definitions/TenantConfigurationSyncStateContract" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimusers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimusers.json new file mode 100644 index 000000000000..c290fb30f0a0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/apimusers.json @@ -0,0 +1,702 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApiManagementClient", + "description": "Use these REST APIs for performing operations on User entity in Azure API Management deployment. The User entity in API Management represents the developers that call the APIs of the products to which they are subscribed.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users": { + "get": { + "tags": [ + "User" + ], + "operationId": "User_ListByService", + "description": "Lists a collection of registered users in the specified service instance.", + "x-ms-examples": { + "ApiManagementListUsers": { + "$ref": "./examples/ApiManagementListUsers.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| firstName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| lastName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| email | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| state | filter | eq | |
| registrationDate | filter | ge, le, eq, ne, gt, lt | |
| note | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| groups | expand | | |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "name": "expandGroups", + "in": "query", + "type": "boolean", + "description": "Detailed Group in response." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of User entities.", + "schema": { + "$ref": "./definitions.json#/definitions/UserCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/UserContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}": { + "head": { + "tags": [ + "User" + ], + "operationId": "User_GetEntityTag", + "description": "Gets the entity state (Etag) version of the user specified by its identifier.", + "x-ms-examples": { + "ApiManagementHeadUser": { + "$ref": "./examples/ApiManagementHeadUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Specified user entity exists and current entity state version is present in the ETag header.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "User" + ], + "operationId": "User_Get", + "description": "Gets the details of the user specified by its identifier.", + "x-ms-examples": { + "ApiManagementGetUser": { + "$ref": "./examples/ApiManagementGetUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Gets the specified user entity.", + "schema": { + "$ref": "./definitions.json#/definitions/UserContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "User" + ], + "operationId": "User_CreateOrUpdate", + "description": "Creates or Updates a user.", + "x-ms-examples": { + "ApiManagementCreateUser": { + "$ref": "./examples/ApiManagementCreateUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/UserCreateParameters" + }, + "description": "Create or update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchOptionalParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "User was successfully created.", + "schema": { + "$ref": "./definitions.json#/definitions/UserContract" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "200": { + "description": "User was successfully updated.", + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + }, + "schema": { + "$ref": "./definitions.json#/definitions/UserContract" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "User" + ], + "operationId": "User_Update", + "description": "Updates the details of the user specified by its identifier.", + "x-ms-examples": { + "ApiManagementUpdateUser": { + "$ref": "./examples/ApiManagementUpdateUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/UserUpdateParameters" + }, + "description": "Update parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The user details were successfully updated." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "User" + ], + "operationId": "User_Delete", + "description": "Deletes specific user.", + "x-ms-examples": { + "ApiManagementDeleteUser": { + "$ref": "./examples/ApiManagementDeleteUser.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "name": "deleteSubscriptions", + "in": "query", + "required": false, + "type": "boolean", + "description": "Whether to delete user's subscription or not." + }, + { + "name": "notify", + "in": "query", + "required": false, + "type": "boolean", + "description": "Send an Account Closed Email notification to the User." + }, + { + "$ref": "./apimanagement.json#/parameters/IfMatchRequiredParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The user details were successfully deleted." + }, + "204": { + "description": "The user details were successfully deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}/generateSsoUrl": { + "post": { + "tags": [ + "Users" + ], + "operationId": "User_GenerateSsoUrl", + "description": "Retrieves a redirection URL containing an authentication token for signing a given user into the developer portal.", + "x-ms-examples": { + "ApiManagementUserGenerateSsoUrl": { + "$ref": "./examples/ApiManagementUserGenerateSsoUrl.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the single sign-on URL.", + "schema": { + "x-ms-client-flatten": true, + "$ref": "./definitions.json#/definitions/GenerateSsoUrlResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}/groups": { + "get": { + "tags": [ + "UserGroup" + ], + "operationId": "UserGroup_List", + "description": "Lists all user groups.", + "x-ms-examples": { + "ApiManagementListUserGroups": { + "$ref": "./examples/ApiManagementListUserGroups.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| description | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Group entities.", + "schema": { + "$ref": "./definitions.json#/definitions/GroupCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/GroupContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}/subscriptions": { + "get": { + "tags": [ + "UserSubscription" + ], + "operationId": "UserSubscription_List", + "description": "Lists the collection of subscriptions of the specified user.", + "x-ms-examples": { + "ApiManagementListUserSubscriptions": { + "$ref": "./examples/ApiManagementListUserSubscriptions.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Usage | Supported operators | Supported functions |
|-------------|-------------|-------------|-------------|
| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| displayName | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| stateComment | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| ownerId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| scope | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| userId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
| productId | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith |
" + }, + { + "$ref": "./apimanagement.json#/parameters/TopQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SkipQueryParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists a collection of Subscription entities.", + "schema": { + "$ref": "./definitions.json#/definitions/SubscriptionCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "./definitions.json#/definitions/SubscriptionContract" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}/identities": { + "get": { + "tags": [ + "UserIdentity" + ], + "operationId": "UserIdentities_List", + "description": "List of all user identities.", + "x-ms-examples": { + "ApiManagementListUserIdentities": { + "$ref": "./examples/ApiManagementListUserIdentities.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Lists of User Identities.", + "schema": { + "$ref": "./definitions.json#/definitions/UserIdentityCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}/token": { + "post": { + "tags": [ + "UserToken" + ], + "operationId": "User_GetSharedAccessToken", + "description": "Gets the Shared Access Authorization Token for the User.", + "x-ms-examples": { + "ApiManagementUserToken": { + "$ref": "./examples/ApiManagementUserToken.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./definitions.json#/definitions/UserTokenParameters" + }, + "description": "Create Authorization Token parameters." + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The response body contains the authorization token for the user.", + "schema": { + "x-ms-client-flatten": true, + "$ref": "./definitions.json#/definitions/UserTokenResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}/confirmations/password/send": { + "post": { + "tags": [ + "UserConfirmationPasswordSend" + ], + "operationId": "UserConfirmationPassword_Send", + "description": "Sends confirmation", + "x-ms-examples": { + "ApiManagementUserConfirmationPasswordSend": { + "$ref": "./examples/ApiManagementUserConfirmationPasswordSend.json" + } + }, + "parameters": [ + { + "$ref": "./apimanagement.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ServiceNameParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/UserIdParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./apimanagement.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Notification successfully sent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./apimanagement.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": {}, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/definitions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/definitions.json new file mode 100644 index 000000000000..490ae700e22e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/definitions.json @@ -0,0 +1,5561 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-12-01", + "description": "A spec file containing all the definitions", + "title": "Definitions file" + }, + "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": {}, + "definitions": { + "AccessInformationContract": { + "properties": { + "id": { + "type": "string", + "description": "Identifier." + }, + "primaryKey": { + "type": "string", + "description": "Primary access key. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value." + }, + "secondaryKey": { + "type": "string", + "description": "Secondary access key. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value." + }, + "enabled": { + "type": "boolean", + "description": "Determines whether direct access is enabled." + } + }, + "description": "Tenant access information contract of the API Management service." + }, + "AccessInformationUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AccessInformationUpdateParameterProperties", + "description": "Tenant access information update parameter properties." + } + }, + "description": "Tenant access information update parameters." + }, + "AccessInformationUpdateParameterProperties": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Determines whether direct access is enabled." + } + }, + "description": "Tenant access information update parameters of the API Management service" + }, + "ApiCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiContract" + }, + "description": "Page values.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Next page link if any.", + "readOnly": true + } + }, + "description": "Paged Api list representation." + }, + "ApiContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApiContractProperties", + "description": "Api entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Api details." + }, + "ApiContractProperties": { + "properties": { + "sourceApiId": { + "type": "string", + "description": "API identifier of the source API." + }, + "displayName": { + "type": "string", + "description": "API name. Must be 1 to 300 characters long.", + "minLength": 1, + "maxLength": 300 + }, + "serviceUrl": { + "type": "string", + "description": "Absolute URL of the backend service implementing this API. Cannot be more than 2000 characters long.", + "minLength": 0, + "maxLength": 2000 + }, + "path": { + "type": "string", + "description": "Relative URL uniquely identifying this API and all of its resource paths within the API Management service instance. It is appended to the API endpoint base URL specified during the service instance creation to form a public URL for this API.", + "minLength": 0, + "maxLength": 400 + }, + "protocols": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "http", + "https" + ], + "x-ms-enum": { + "name": "Protocol", + "modelAsString": false + } + }, + "description": "Describes on which protocols the operations in this API can be invoked." + }, + "apiVersionSet": { + "description": "Version set details", + "$ref": "#/definitions/ApiVersionSetContractDetails" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ApiEntityBaseContract" + } + ], + "required": [ + "path" + ], + "description": "Api Entity Properties" + }, + "ApiCreateOrUpdateParameter": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApiCreateOrUpdateProperties", + "description": "Api entity create of update properties." + } + }, + "description": "API Create or Update Parameters." + }, + "ApiCreateOrUpdateProperties": { + "properties": { + "value": { + "type": "string", + "description": "Content value when Importing an API." + }, + "format": { + "type": "string", + "description": "Format of the Content in which the API is getting imported.", + "enum": [ + "wadl-xml", + "wadl-link-json", + "swagger-json", + "swagger-link-json", + "wsdl", + "wsdl-link", + "openapi", + "openapi+json", + "openapi-link", + "openapi+json-link" + ], + "x-ms-enum": { + "name": "ContentFormat", + "modelAsString": true, + "values": [ + { + "value": "wadl-xml", + "description": "The contents are inline and Content type is a WADL document." + }, + { + "value": "wadl-link-json", + "description": "The WADL document is hosted on a publicly accessible internet address." + }, + { + "value": "swagger-json", + "description": "The contents are inline and Content Type is a OpenApi 2.0 Document." + }, + { + "value": "swagger-link-json", + "description": "The Open Api 2.0 document is hosted on a publicly accessible internet address." + }, + { + "value": "wsdl", + "description": "The contents are inline and the document is a WSDL/Soap document." + }, + { + "value": "wsdl-link", + "description": "The WSDL document is hosted on a publicly accessible internet address." + }, + { + "value": "openapi", + "description": "The contents are inline and Content Type is a OpenApi 3.0 Document in YAML format." + }, + { + "value": "openapi+json", + "description": "The contents are inline and Content Type is a OpenApi 3.0 Document in JSON format." + }, + { + "value": "openapi-link", + "description": "The Open Api 3.0 document is hosted on a publicly accessible internet address." + }, + { + "value": "openapi+json-link", + "description": "The Open Api 3.0 Json document is hosted on a publicly accessible internet address." + } + ] + } + }, + "wsdlSelector": { + "type": "object", + "description": "Criteria to limit import of WSDL to a subset of the document.", + "properties": { + "wsdlServiceName": { + "type": "string", + "description": "Name of service to import from WSDL" + }, + "wsdlEndpointName": { + "type": "string", + "description": "Name of endpoint(port) to import from WSDL" + } + } + }, + "apiType": { + "type": "string", + "description": "Type of Api to create. \n * `http` creates a SOAP to REST API \n * `soap` creates a SOAP pass-through API .", + "enum": [ + "http", + "soap" + ], + "x-ms-client-name": "SoapApiType", + "x-ms-enum": { + "name": "SoapApiType", + "modelAsString": true, + "values": [ + { + "value": "http", + "description": "Imports a SOAP API having a RESTful front end.", + "name": "SoapToRest" + }, + { + "value": "soap", + "description": "Imports the Soap API having a SOAP front end.", + "name": "SoapPassThrough" + } + ] + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/ApiContractProperties" + } + ], + "description": "Api Create or Update Properties." + }, + "ApiEntityBaseContract": { + "properties": { + "description": { + "type": "string", + "description": "Description of the API. May include HTML formatting tags." + }, + "authenticationSettings": { + "$ref": "#/definitions/AuthenticationSettingsContract", + "description": "Collection of authentication settings included into this API." + }, + "subscriptionKeyParameterNames": { + "$ref": "#/definitions/SubscriptionKeyParameterNamesContract", + "description": "Protocols over which API is made available." + }, + "type": { + "type": "string", + "description": "Type of API.", + "enum": [ + "http", + "soap" + ], + "x-ms-client-name": "ApiType", + "x-ms-enum": { + "name": "ApiType", + "modelAsString": true + } + }, + "apiRevision": { + "type": "string", + "description": "Describes the Revision of the Api. If no value is provided, default revision 1 is created", + "minLength": 1, + "maxLength": 100 + }, + "apiVersion": { + "type": "string", + "description": "Indicates the Version identifier of the API if the API is versioned", + "maxLength": 100 + }, + "isCurrent": { + "type": "boolean", + "description": "Indicates if API revision is current api revision." + }, + "isOnline": { + "type": "boolean", + "description": "Indicates if API revision is accessible via the gateway.", + "readOnly": true + }, + "apiRevisionDescription": { + "type": "string", + "description": "Description of the Api Revision.", + "maxLength": 256 + }, + "apiVersionDescription": { + "type": "string", + "description": "Description of the Api Version.", + "maxLength": 256 + }, + "apiVersionSetId": { + "type": "string", + "description": "A resource identifier for the related ApiVersionSet." + }, + "subscriptionRequired": { + "type": "boolean", + "description": "Specifies whether an API or Product subscription is required for accessing the API." + } + }, + "description": "API base contract details." + }, + "ApiExportResult": { + "properties": { + "id": { + "type": "string", + "description": "ResourceId of the API which was exported." + }, + "format": { + "type": "string", + "enum": [ + "swagger-link-json", + "wadl-link-json", + "wsdl-link+xml", + "openapi-link" + ], + "x-ms-client-name": "ExportResultFormat", + "x-ms-enum": { + "name": "ExportResultFormat", + "modelAsString": true, + "values": [ + { + "value": "swagger-link-json", + "description": "The Api Definition is exported in OpenApi Specification 2.0 format to the Storage Blob.", + "name": "Swagger" + }, + { + "value": "wsdl-link+xml", + "description": "The Api Definition is exported in WSDL Schema to Storage Blob. This is only supported for APIs of Type `soap`", + "name": "Wsdl" + }, + { + "value": "wadl-link-json", + "description": "Export the Api Definition in WADL Schema to Storage Blob.", + "name": "Wadl" + }, + { + "value": "openapi-link", + "description": "Export the Api Definition in OpenApi Specification 3.0 to Storage Blob.", + "name": "OpenApi" + } + ] + }, + "description": "Format in which the Api Details are exported to the Storage Blob with Sas Key valid for 5 minutes." + }, + "value": { + "type": "object", + "description": "The object defining the schema of the exported Api Detail", + "properties": { + "link": { + "type": "string", + "description": "Link to the Storage Blob containing the result of the export operation. The Blob Uri is only valid for 5 minutes." + } + } + } + }, + "description": "API Export result." + }, + "ApiReleaseCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiReleaseContract" + }, + "description": "Page values.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Next page link if any.", + "readOnly": true + } + }, + "description": "Paged ApiRelease list representation." + }, + "ApiReleaseContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApiReleaseContractProperties", + "description": "ApiRelease entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "ApiRelease details." + }, + "ApiReleaseContractProperties": { + "properties": { + "apiId": { + "type": "string", + "description": "Identifier of the API the release belongs to." + }, + "createdDateTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The time the API was released. The date conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard." + }, + "updatedDateTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The time the API release was updated." + }, + "notes": { + "type": "string", + "description": "Release Notes" + } + }, + "description": "API Release details" + }, + "ApiRevisionCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiRevisionContract" + }, + "description": "Page values.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Next page link if any.", + "readOnly": true + } + }, + "description": "Paged Api Revision list representation." + }, + "ApiRevisionContract": { + "properties": { + "apiId": { + "type": "string", + "readOnly": true, + "description": "Identifier of the API Revision." + }, + "apiRevision": { + "type": "string", + "minLength": 1, + "maxLength": 100, + "readOnly": true, + "description": "Revision number of API." + }, + "createdDateTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The time the API Revision was created. The date conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard." + }, + "updatedDateTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The time the API Revision were updated. The date conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard." + }, + "description": { + "type": "string", + "readOnly": true, + "maxLength": 256, + "description": "Description of the API Revision." + }, + "privateUrl": { + "type": "string", + "readOnly": true, + "description": "Gateway URL for accessing the non-current API Revision." + }, + "isOnline": { + "type": "boolean", + "readOnly": true, + "description": "Indicates if API revision is the current api revision." + }, + "isCurrent": { + "type": "boolean", + "readOnly": true, + "description": "Indicates if API revision is accessible via the gateway." + } + }, + "description": "Summary of revision metadata." + }, + "ApiRevisionInfoContract": { + "description": "Object used to create an API Revision or Version based on an existing API Revision", + "properties": { + "sourceApiId": { + "type": "string", + "description": "Resource identifier of API to be used to create the revision from." + }, + "apiVersionName": { + "type": "string", + "maxLength": 100, + "description": "Version identifier for the new API Version." + }, + "apiRevisionDescription": { + "type": "string", + "maxLength": 256, + "description": "Description of new API Revision." + }, + "apiVersionSet": { + "description": "Version set details", + "$ref": "#/definitions/ApiVersionSetContractDetails" + } + } + }, + "ApiTagResourceContractProperties": { + "properties": { + "id": { + "type": "string", + "description": "API identifier in the form /apis/{apiId}." + }, + "name": { + "type": "string", + "description": "API name.", + "minLength": 1, + "maxLength": 300 + }, + "serviceUrl": { + "type": "string", + "description": "Absolute URL of the backend service implementing this API.", + "minLength": 1, + "maxLength": 2000 + }, + "path": { + "type": "string", + "description": "Relative URL uniquely identifying this API and all of its resource paths within the API Management service instance. It is appended to the API endpoint base URL specified during the service instance creation to form a public URL for this API.", + "minLength": 0, + "maxLength": 400 + }, + "protocols": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "http", + "https" + ], + "x-ms-enum": { + "name": "Protocol", + "modelAsString": false + } + }, + "description": "Describes on which protocols the operations in this API can be invoked." + } + }, + "allOf": [ + { + "$ref": "./definitions.json#/definitions/ApiEntityBaseContract" + } + ], + "description": "API contract properties for the Tag Resources." + }, + "ApiUpdateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApiContractUpdateProperties", + "description": "Properties of the API entity that can be updated." + } + }, + "description": "API update contract details." + }, + "ApiContractUpdateProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "API name.", + "minLength": 1, + "maxLength": 300 + }, + "serviceUrl": { + "type": "string", + "description": "Absolute URL of the backend service implementing this API.", + "minLength": 1, + "maxLength": 2000 + }, + "path": { + "type": "string", + "description": "Relative URL uniquely identifying this API and all of its resource paths within the API Management service instance. It is appended to the API endpoint base URL specified during the service instance creation to form a public URL for this API.", + "minLength": 0, + "maxLength": 400 + }, + "protocols": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "http", + "https" + ], + "x-ms-enum": { + "name": "Protocol", + "modelAsString": false + } + }, + "description": "Describes on which protocols the operations in this API can be invoked." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ApiEntityBaseContract" + } + ], + "description": "API update contract properties." + }, + "ApiVersionSetCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiVersionSetContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Api Version Set list representation." + }, + "ApiVersionSetContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApiVersionSetContractProperties", + "description": "Api VersionSet contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Api Version Set Contract details." + }, + "ApiVersionSetContractDetails": { + "description": "An API Version Set contains the common configuration for a set of API Versions relating ", + "properties": { + "id": { + "type": "string", + "description": "Identifier for existing API Version Set. Omit this value to create a new Version Set." + }, + "name": { + "type": "string", + "description": "The display Name of the API Version Set." + }, + "description": { + "type": "string", + "description": "Description of API Version Set." + }, + "versioningScheme": { + "type": "string", + "description": "An value that determines where the API Version identifer will be located in a HTTP request.", + "enum": [ + "Segment", + "Query", + "Header" + ] + }, + "versionQueryName": { + "type": "string", + "description": "Name of query parameter that indicates the API Version if versioningScheme is set to `query`." + }, + "versionHeaderName": { + "type": "string", + "description": "Name of HTTP header parameter that indicates the API Version if versioningScheme is set to `header`." + } + } + }, + "ApiVersionSetContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Name of API Version Set", + "minLength": 1, + "maxLength": 100 + }, + "versioningScheme": { + "type": "string", + "description": "An value that determines where the API Version identifer will be located in a HTTP request.", + "enum": [ + "Segment", + "Query", + "Header" + ], + "x-ms-enum": { + "name": "versioningScheme", + "modelAsString": true, + "values": [ + { + "value": "Segment", + "description": "The API Version is passed in a path segment." + }, + { + "value": "Query", + "description": "The API Version is passed in a query parameter." + }, + { + "value": "Header", + "description": "The API Version is passed in a HTTP header." + } + ] + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/ApiVersionSetEntityBase" + } + ], + "required": [ + "displayName", + "versioningScheme" + ], + "description": "Properties of an API Version Set." + }, + "ApiVersionSetEntityBase": { + "properties": { + "description": { + "type": "string", + "description": "Description of API Version Set." + }, + "versionQueryName": { + "type": "string", + "description": "Name of query parameter that indicates the API Version if versioningScheme is set to `query`.", + "minLength": 1, + "maxLength": 100 + }, + "versionHeaderName": { + "type": "string", + "description": "Name of HTTP header parameter that indicates the API Version if versioningScheme is set to `header`.", + "minLength": 1, + "maxLength": 100 + } + }, + "description": "Api Version set base parameters" + }, + "ApiVersionSetUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApiVersionSetUpdateParametersProperties", + "description": "Parameters to update or create an Api Version Set Contract." + } + }, + "description": "Parameters to update or create an Api Version Set Contract." + }, + "ApiVersionSetUpdateParametersProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Name of API Version Set", + "minLength": 1, + "maxLength": 100 + }, + "versioningScheme": { + "type": "string", + "description": "An value that determines where the API Version identifer will be located in a HTTP request.", + "enum": [ + "Segment", + "Query", + "Header" + ], + "x-ms-enum": { + "name": "versioningScheme", + "modelAsString": true, + "values": [ + { + "value": "Segment", + "description": "The API Version is passed in a path segment." + }, + { + "value": "Query", + "description": "The API Version is passed in a query parameter." + }, + { + "value": "Header", + "description": "The API Version is passed in a HTTP header." + } + ] + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/ApiVersionSetEntityBase" + } + ], + "description": "Properties used to create or update an API Version Set." + }, + "AuthenticationSettingsContract": { + "properties": { + "oAuth2": { + "$ref": "#/definitions/OAuth2AuthenticationSettingsContract", + "description": "OAuth2 Authentication settings" + }, + "openid": { + "$ref": "#/definitions/OpenIdAuthenticationSettingsContract", + "description": "OpenID Connect Authentication Settings" + } + }, + "description": "API Authentication Settings." + }, + "AuthorizationServerCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AuthorizationServerContract" + }, + "description": "Page values." + }, + "count": { + "type": "integer", + "format": "int64", + "description": "Total record count number across all pages." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged OAuth2 Authorization Servers list representation." + }, + "AuthorizationServerContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AuthorizationServerContractProperties", + "description": "Properties of the External OAuth authorization server Contract." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "External OAuth authorization server settings." + }, + "AuthorizationServerContractBaseProperties": { + "properties": { + "description": { + "type": "string", + "description": "Description of the authorization server. Can contain HTML formatting tags." + }, + "authorizationMethods": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "HEAD", + "OPTIONS", + "TRACE", + "GET", + "POST", + "PUT", + "PATCH", + "DELETE" + ], + "x-ms-enum": { + "name": "AuthorizationMethod", + "modelAsString": false + } + }, + "description": "HTTP verbs supported by the authorization endpoint. GET must be always present. POST is optional." + }, + "clientAuthenticationMethod": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Basic", + "Body" + ], + "x-ms-enum": { + "name": "ClientAuthenticationMethod", + "modelAsString": true, + "values": [ + { + "value": "Basic", + "description": "Basic Client Authentication method." + }, + { + "value": "Body", + "description": "Body based Authentication method." + } + ] + } + }, + "description": "Method of authentication supported by the token endpoint of this authorization server. Possible values are Basic and/or Body. When Body is specified, client credentials and other parameters are passed within the request body in the application/x-www-form-urlencoded format." + }, + "tokenBodyParameters": { + "type": "array", + "items": { + "$ref": "#/definitions/TokenBodyParameterContract" + }, + "description": "Additional parameters required by the token endpoint of this authorization server represented as an array of JSON objects with name and value string properties, i.e. {\"name\" : \"name value\", \"value\": \"a value\"}." + }, + "tokenEndpoint": { + "type": "string", + "description": "OAuth token endpoint. Contains absolute URI to entity being referenced.", + "externalDocs": { + "url": "http://tools.ietf.org/html/rfc6749#section-3.1" + } + }, + "supportState": { + "type": "boolean", + "description": "If true, authorization server will include state parameter from the authorization request to its response. Client may use state parameter to raise protocol security.", + "externalDocs": { + "url": "http://tools.ietf.org/html/rfc6749#section-3.1" + } + }, + "defaultScope": { + "type": "string", + "description": "Access token scope that is going to be requested by default. Can be overridden at the API level. Should be provided in the form of a string containing space-delimited values.", + "externalDocs": { + "url": "http://tools.ietf.org/html/rfc6749#section-3.3" + } + }, + "bearerTokenSendingMethods": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "authorizationHeader", + "query" + ], + "x-ms-enum": { + "name": "BearerTokenSendingMethod", + "modelAsString": true + } + }, + "description": "Specifies the mechanism by which access token is passed to the API. ", + "externalDocs": { + "url": "http://tools.ietf.org/html/rfc6749#section-4" + } + }, + "resourceOwnerUsername": { + "type": "string", + "description": "Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner username." + }, + "resourceOwnerPassword": { + "type": "string", + "description": "Can be optionally specified when resource owner password grant type is supported by this authorization server. Default resource owner password." + } + }, + "description": "External OAuth authorization server Update settings contract." + }, + "AuthorizationServerContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "User-friendly authorization server name.", + "minLength": 1, + "maxLength": 50 + }, + "clientRegistrationEndpoint": { + "type": "string", + "description": "Optional reference to a page where client or app registration for this authorization server is performed. Contains absolute URL to entity being referenced." + }, + "authorizationEndpoint": { + "type": "string", + "description": "OAuth authorization endpoint. See http://tools.ietf.org/html/rfc6749#section-3.2." + }, + "grantTypes": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "authorizationCode", + "implicit", + "resourceOwnerPassword", + "clientCredentials" + ], + "x-ms-enum": { + "name": "GrantType", + "modelAsString": true, + "values": [ + { + "value": "authorizationCode", + "description": "Authorization Code Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.1." + }, + { + "value": "implicit", + "description": "Implicit Code Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.2." + }, + { + "value": "resourceOwnerPassword", + "description": "Resource Owner Password Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.3." + }, + { + "value": "clientCredentials", + "description": "Client Credentials Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.4." + } + ] + } + }, + "description": "Form of an authorization grant, which the client uses to request the access token.", + "externalDocs": { + "url": "http://tools.ietf.org/html/rfc6749#section-4" + } + }, + "clientId": { + "type": "string", + "description": "Client or app id registered with this authorization server." + }, + "clientSecret": { + "x-ms-secret": true, + "type": "string", + "description": "Client or app secret registered with this authorization server. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value." + } + }, + "allOf": [ + { + "$ref": "#/definitions/AuthorizationServerContractBaseProperties" + } + ], + "required": [ + "displayName", + "clientRegistrationEndpoint", + "authorizationEndpoint", + "clientId", + "grantTypes" + ], + "description": "External OAuth authorization server settings Properties." + }, + "AuthorizationServerUpdateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AuthorizationServerUpdateContractProperties", + "description": "Properties of the External OAuth authorization server update Contract." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "External OAuth authorization server settings." + }, + "AuthorizationServerUpdateContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "User-friendly authorization server name.", + "minLength": 1, + "maxLength": 50 + }, + "clientRegistrationEndpoint": { + "type": "string", + "description": "Optional reference to a page where client or app registration for this authorization server is performed. Contains absolute URL to entity being referenced." + }, + "authorizationEndpoint": { + "type": "string", + "description": "OAuth authorization endpoint. See http://tools.ietf.org/html/rfc6749#section-3.2." + }, + "grantTypes": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "authorizationCode", + "implicit", + "resourceOwnerPassword", + "clientCredentials" + ], + "x-ms-enum": { + "name": "GrantType", + "modelAsString": true, + "values": [ + { + "value": "authorizationCode", + "description": "Authorization Code Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.1." + }, + { + "value": "implicit", + "description": "Implicit Code Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.2." + }, + { + "value": "resourceOwnerPassword", + "description": "Resource Owner Password Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.3." + }, + { + "value": "clientCredentials", + "description": "Client Credentials Grant flow as described https://tools.ietf.org/html/rfc6749#section-4.4." + } + ] + } + }, + "description": "Form of an authorization grant, which the client uses to request the access token.", + "externalDocs": { + "url": "http://tools.ietf.org/html/rfc6749#section-4" + } + }, + "clientId": { + "type": "string", + "description": "Client or app id registered with this authorization server." + }, + "clientSecret": { + "x-ms-secret": true, + "type": "string", + "description": "Client or app secret registered with this authorization server. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value." + } + }, + "allOf": [ + { + "$ref": "#/definitions/AuthorizationServerContractBaseProperties" + } + ], + "description": "External OAuth authorization server Update settings contract." + }, + "BackendAuthorizationHeaderCredentials": { + "properties": { + "scheme": { + "type": "string", + "description": "Authentication Scheme name.", + "minLength": 1, + "maxLength": 100 + }, + "parameter": { + "type": "string", + "description": "Authentication Parameter value.", + "minLength": 1, + "maxLength": 300 + } + }, + "required": [ + "scheme", + "parameter" + ], + "description": "Authorization header information." + }, + "BackendBaseParameters": { + "properties": { + "title": { + "type": "string", + "description": "Backend Title.", + "minLength": 1, + "maxLength": 300 + }, + "description": { + "type": "string", + "description": "Backend Description.", + "minLength": 1, + "maxLength": 2000 + }, + "resourceId": { + "type": "string", + "description": "Management Uri of the Resource in External System. This url can be the Arm Resource Id of Logic Apps, Function Apps or Api Apps.", + "minLength": 1, + "maxLength": 2000 + }, + "properties": { + "$ref": "#/definitions/BackendProperties", + "description": "Backend Properties contract" + }, + "credentials": { + "$ref": "#/definitions/BackendCredentialsContract", + "description": "Backend Credentials Contract Properties" + }, + "proxy": { + "$ref": "#/definitions/BackendProxyContract", + "description": "Backend Proxy Contract Properties" + }, + "tls": { + "$ref": "#/definitions/BackendTlsProperties", + "description": "Backend TLS Properties" + } + }, + "description": "Backend entity base Parameter set." + }, + "BackendCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BackendContract" + }, + "description": "Backend values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Backend list representation." + }, + "BackendContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BackendContractProperties", + "description": "Backend entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Backend details." + }, + "BackendContractProperties": { + "properties": { + "url": { + "type": "string", + "description": "Runtime Url of the Backend.", + "minLength": 1, + "maxLength": 2000 + }, + "protocol": { + "type": "string", + "enum": [ + "http", + "soap" + ], + "x-ms-enum": { + "name": "BackendProtocol", + "modelAsString": true, + "values": [ + { + "value": "http", + "description": "The Backend is a RESTful service." + }, + { + "value": "soap", + "description": "The Backend is a SOAP service." + } + ] + }, + "description": "Backend communication protocol." + } + }, + "allOf": [ + { + "$ref": "#/definitions/BackendBaseParameters" + } + ], + "required": [ + "url", + "protocol" + ], + "description": "Parameters supplied to the Create Backend operation." + }, + "BackendCredentialsContract": { + "properties": { + "certificate": { + "type": "array", + "items": { + "type": "string" + }, + "maxItems": 32, + "description": "List of Client Certificate Thumbprint." + }, + "query": { + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + }, + "description": "Query Parameter description." + }, + "header": { + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + }, + "description": "Header Parameter description." + }, + "authorization": { + "description": "Authorization header authentication", + "$ref": "#/definitions/BackendAuthorizationHeaderCredentials" + } + }, + "description": "Details of the Credentials used to connect to Backend." + }, + "BackendProperties": { + "properties": { + "serviceFabricCluster": { + "$ref": "#/definitions/BackendServiceFabricClusterProperties", + "description": "Backend Service Fabric Cluster Properties" + } + }, + "description": "Properties specific to the Backend Type." + }, + "BackendProxyContract": { + "externalDocs": { + "url": "https://msdn.microsoft.com/en-us/library/system.net.webproxy(v=vs.110).aspx", + "description": "Backend entity uses these details to connect to a WebProxy." + }, + "properties": { + "url": { + "type": "string", + "description": "WebProxy Server AbsoluteUri property which includes the entire URI stored in the Uri instance, including all fragments and query strings.", + "minLength": 1, + "maxLength": 2000 + }, + "username": { + "type": "string", + "description": "Username to connect to the WebProxy server" + }, + "password": { + "type": "string", + "description": "Password to connect to the WebProxy Server" + } + }, + "required": [ + "url" + ], + "description": "Details of the Backend WebProxy Server to use in the Request to Backend." + }, + "BackendReconnectContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BackendReconnectProperties", + "description": "Reconnect request properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Reconnect request parameters." + }, + "BackendReconnectProperties": { + "properties": { + "after": { + "type": "string", + "format": "duration", + "description": "Duration in ISO8601 format after which reconnect will be initiated. Minimum duration of the Reconnect is PT2M." + } + }, + "description": "Properties to control reconnect requests." + }, + "BackendServiceFabricClusterProperties": { + "properties": { + "clientCertificatethumbprint": { + "description": "The client certificate thumbprint for the management endpoint.", + "type": "string" + }, + "maxPartitionResolutionRetries": { + "description": "Maximum number of retries while attempting resolve the partition.", + "format": "int32", + "type": "integer" + }, + "managementEndpoints": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The cluster management endpoint." + }, + "serverCertificateThumbprints": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Thumbprints of certificates cluster management service uses for tls communication" + }, + "serverX509Names": { + "type": "array", + "items": { + "$ref": "#/definitions/X509CertificateName" + }, + "description": "Server X509 Certificate Names Collection" + } + }, + "required": [ + "managementEndpoints", + "clientCertificatethumbprint" + ], + "description": "Properties of the Service Fabric Type Backend." + }, + "BackendTlsProperties": { + "properties": { + "validateCertificateChain": { + "description": "Flag indicating whether SSL certificate chain validation should be done when using self-signed certificates for this backend host.", + "type": "boolean", + "default": true + }, + "validateCertificateName": { + "description": "Flag indicating whether SSL certificate name validation should be done when using self-signed certificates for this backend host.", + "type": "boolean", + "default": true + } + }, + "description": "Properties controlling TLS Certificate Validation." + }, + "BackendUpdateParameterProperties": { + "properties": { + "url": { + "type": "string", + "description": "Runtime Url of the Backend.", + "minLength": 1, + "maxLength": 2000 + }, + "protocol": { + "type": "string", + "enum": [ + "http", + "soap" + ], + "x-ms-enum": { + "name": "BackendProtocol", + "modelAsString": true, + "values": [ + { + "value": "http", + "description": "The Backend is a RESTful service." + }, + { + "value": "soap", + "description": "The Backend is a SOAP service." + } + ] + }, + "description": "Backend communication protocol." + } + }, + "allOf": [ + { + "$ref": "#/definitions/BackendBaseParameters" + } + ], + "description": "Parameters supplied to the Update Backend operation." + }, + "BackendUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BackendUpdateParameterProperties", + "description": "Backend entity update contract properties." + } + }, + "description": "Backend update parameters." + }, + "BearerTokenSendingMethodsContract": { + "type": "string", + "description": "Form of an authorization grant, which the client uses to request the access token.", + "enum": [ + "authorizationHeader", + "query" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "bearerTokenSendingMethods", + "values": [ + { + "value": "authorizationHeader", + "description": "Access token will be transmitted in the Authorization header using Bearer schema" + }, + { + "value": "query", + "description": "Access token will be transmitted as query parameters." + } + ] + } + }, + "BodyDiagnosticSettings": { + "properties": { + "bytes": { + "type": "integer", + "format": "int32", + "maximum": 8192, + "description": "Number of request body bytes to log." + } + }, + "description": "Body logging settings." + }, + "CacheCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/CacheContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Caches list representation." + }, + "CacheContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CacheContractProperties", + "description": "Cache properties details." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Cache details." + }, + "CacheContractProperties": { + "properties": { + "description": { + "type": "string", + "description": "Cache description", + "maxLength": 2000 + }, + "connectionString": { + "type": "string", + "description": "Runtime connection string to cache", + "maxLength": 300 + }, + "resourceId": { + "type": "string", + "description": "Original uri of entity in external system cache points to", + "maxLength": 2000 + } + }, + "required": [ + "connectionString" + ], + "description": "Properties of the Cache contract." + }, + "CacheUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CacheUpdateProperties", + "description": "Cache update properties details." + } + }, + "description": "Cache update details." + }, + "CacheUpdateProperties": { + "properties": { + "description": { + "type": "string", + "description": "Cache description", + "maxLength": 2000 + }, + "connectionString": { + "type": "string", + "description": "Runtime connection string to cache", + "maxLength": 300 + }, + "resourceId": { + "type": "string", + "description": "Original uri of entity in external system cache points to", + "maxLength": 2000 + } + }, + "description": "Parameters supplied to the Update Cache operation." + }, + "CertificateCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/CertificateContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Certificates list representation." + }, + "CertificateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CertificateContractProperties", + "description": "Certificate properties details." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Certificate details." + }, + "CertificateContractProperties": { + "properties": { + "subject": { + "type": "string", + "description": "Subject attribute of the certificate." + }, + "thumbprint": { + "type": "string", + "description": "Thumbprint of the certificate." + }, + "expirationDate": { + "type": "string", + "format": "date-time", + "description": "Expiration date of the certificate. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + } + }, + "required": [ + "subject", + "thumbprint", + "expirationDate" + ], + "description": "Properties of the Certificate contract." + }, + "CertificateCreateOrUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CertificateCreateOrUpdateProperties", + "description": "Certificate create or update properties details." + } + }, + "description": "Certificate create or update details." + }, + "CertificateCreateOrUpdateProperties": { + "properties": { + "data": { + "type": "string", + "description": "Base 64 encoded certificate using the application/x-pkcs12 representation." + }, + "password": { + "type": "string", + "description": "Password for the Certificate" + } + }, + "required": [ + "data", + "password" + ], + "description": "Parameters supplied to the CreateOrUpdate certificate operation." + }, + "DeployConfigurationParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DeployConfigurationParameterProperties", + "description": "Deploy Configuration Parameter contract properties." + } + }, + "description": "Deploy Tenant Configuration Contract." + }, + "DeployConfigurationParameterProperties": { + "properties": { + "branch": { + "type": "string", + "description": "The name of the Git branch from which the configuration is to be deployed to the configuration database." + }, + "force": { + "type": "boolean", + "description": "The value enforcing deleting subscriptions to products that are deleted in this update." + } + }, + "required": [ + "branch" + ], + "description": "Parameters supplied to the Deploy Configuration operation." + }, + "DiagnosticCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DiagnosticContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Diagnostic list representation." + }, + "DiagnosticContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DiagnosticContractProperties", + "description": "Diagnostic entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Diagnostic details." + }, + "DiagnosticContractProperties": { + "properties": { + "alwaysLog": { + "type": "string", + "enum": [ + "allErrors" + ], + "x-ms-enum": { + "name": "AlwaysLog", + "modelAsString": true, + "values": [ + { + "value": "allErrors", + "description": "Always log all erroneous request regardless of sampling settings." + } + ] + }, + "description": "Specifies for what type of messages sampling settings should not apply." + }, + "loggerId": { + "type": "string", + "description": "Resource Id of a target logger." + }, + "sampling": { + "$ref": "#/definitions/SamplingSettings", + "description": "Sampling settings for Diagnostic." + }, + "frontend": { + "$ref": "#/definitions/PipelineDiagnosticSettings", + "description": "Diagnostic settings for incoming/outgoing HTTP messages to the Gateway." + }, + "backend": { + "$ref": "#/definitions/PipelineDiagnosticSettings", + "description": "Diagnostic settings for incoming/outgoing HTTP messages to the Backend" + }, + "logClientIp": { + "type": "boolean", + "description": "Log the ClientIP. Default is false." + }, + "httpCorrelationProtocol": { + "type": "string", + "enum": [ + "None", + "Legacy", + "W3C" + ], + "x-ms-enum": { + "name": "HttpCorrelationProtocol", + "modelAsString": true, + "values": [ + { + "value": "None", + "description": "Do not read and inject correlation headers." + }, + { + "value": "Legacy", + "description": "Inject Request-Id and Request-Context headers with request correlation data. See https://github.com/dotnet/corefx/blob/master/src/System.Diagnostics.DiagnosticSource/src/HttpCorrelationProtocol.md." + }, + { + "value": "W3C", + "description": "Inject Trace Context headers. See https://w3c.github.io/trace-context." + } + ] + }, + "description": "Sets correlation protocol to use for Application Insights diagnostics." + }, + "verbosity": { + "type": "string", + "enum": [ + "verbose", + "information", + "error" + ], + "x-ms-enum": { + "name": "Verbosity", + "modelAsString": true, + "values": [ + { + "value": "verbose", + "description": "All the traces emitted by trace policies will be sent to the logger attached to this diagnostic instance." + }, + { + "value": "information", + "description": "Traces with 'severity' set to 'information' and 'error' will be sent to the logger attached to this diagnostic instance." + }, + { + "value": "error", + "description": "Only traces with 'severity' set to 'error' will be sent to the logger attached to this diagnostic instance." + } + ] + }, + "description": "The verbosity level applied to traces emitted by trace policies." + } + }, + "required": [ + "loggerId" + ], + "description": "Diagnostic Entity Properties" + }, + "EmailTemplateCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EmailTemplateContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged email template list representation." + }, + "EmailTemplateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/EmailTemplateContractProperties", + "description": "Email Template entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Email Template details." + }, + "EmailTemplateContractProperties": { + "properties": { + "subject": { + "type": "string", + "description": "Subject of the Template.", + "minLength": 1, + "maxLength": 1000 + }, + "body": { + "type": "string", + "description": "Email Template Body. This should be a valid XDocument", + "minLength": 1 + }, + "title": { + "type": "string", + "description": "Title of the Template." + }, + "description": { + "type": "string", + "description": "Description of the Email Template." + }, + "isDefault": { + "type": "boolean", + "description": "Whether the template is the default template provided by Api Management or has been edited.", + "readOnly": true + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/definitions/EmailTemplateParametersContractProperties" + }, + "description": "Email Template Parameter values." + } + }, + "required": [ + "body", + "subject" + ], + "description": "Email Template Contract properties." + }, + "EmailTemplateParametersContractProperties": { + "properties": { + "name": { + "type": "string", + "description": "Template parameter name.", + "minLength": 1, + "maxLength": 256, + "pattern": "^[A-Za-z0-9-._]+$" + }, + "title": { + "type": "string", + "description": "Template parameter title.", + "minLength": 1, + "maxLength": 4096 + }, + "description": { + "type": "string", + "description": "Template parameter description.", + "minLength": 1, + "maxLength": 256, + "pattern": "^[A-Za-z0-9-._]+$" + } + }, + "description": "Email Template Parameter contract." + }, + "EmailTemplateUpdateParameterProperties": { + "properties": { + "subject": { + "type": "string", + "description": "Subject of the Template.", + "minLength": 1, + "maxLength": 1000 + }, + "title": { + "type": "string", + "description": "Title of the Template." + }, + "description": { + "type": "string", + "description": "Description of the Email Template." + }, + "body": { + "type": "string", + "description": "Email Template Body. This should be a valid XDocument", + "minLength": 1 + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/definitions/EmailTemplateParametersContractProperties" + }, + "description": "Email Template Parameter values." + } + }, + "description": "Email Template Update Contract properties." + }, + "EmailTemplateUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/EmailTemplateUpdateParameterProperties", + "description": "Email Template Update contract properties." + } + }, + "description": "Email Template update Parameters." + }, + "GenerateSsoUrlResult": { + "properties": { + "value": { + "type": "string", + "description": "Redirect Url containing the SSO URL value." + } + }, + "description": "Generate SSO Url operations response details." + }, + "GroupCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GroupContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Group list representation." + }, + "GroupContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GroupContractProperties", + "description": "Group entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Contract details." + }, + "GroupContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Group name.", + "maxLength": 300, + "minLength": 1 + }, + "description": { + "type": "string", + "description": "Group description. Can contain HTML formatting tags.", + "maxLength": 1000 + }, + "builtIn": { + "readOnly": true, + "type": "boolean", + "description": "true if the group is one of the three system groups (Administrators, Developers, or Guests); otherwise false." + }, + "type": { + "type": "string", + "description": "Group type.", + "enum": [ + "custom", + "system", + "external" + ], + "x-ms-enum": { + "name": "GroupType", + "modelAsString": false + } + }, + "externalId": { + "type": "string", + "description": "For external groups, this property contains the id of the group from the external identity provider, e.g. for Azure Active Directory `aad://.onmicrosoft.com/groups/`; otherwise the value is null." + } + }, + "required": [ + "displayName" + ], + "description": "Group contract Properties." + }, + "GroupCreateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GroupCreateParametersProperties", + "description": "Properties supplied to Create Group operation." + } + }, + "description": "Parameters supplied to the Create Group operation." + }, + "GroupCreateParametersProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Group name.", + "maxLength": 300, + "minLength": 1 + }, + "description": { + "type": "string", + "description": "Group description." + }, + "type": { + "type": "string", + "description": "Group type.", + "enum": [ + "custom", + "system", + "external" + ], + "x-ms-enum": { + "name": "GroupType", + "modelAsString": false + } + }, + "externalId": { + "type": "string", + "description": "Identifier of the external groups, this property contains the id of the group from the external identity provider, e.g. for Azure Active Directory `aad://.onmicrosoft.com/groups/`; otherwise the value is null." + } + }, + "required": [ + "displayName" + ], + "description": "Parameters supplied to the Create Group operation." + }, + "GroupUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GroupUpdateParametersProperties", + "description": "Group entity update contract properties." + } + }, + "description": "Parameters supplied to the Update Group operation." + }, + "GroupUpdateParametersProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Group name.", + "maxLength": 300, + "minLength": 1 + }, + "description": { + "type": "string", + "description": "Group description." + }, + "type": { + "type": "string", + "description": "Group type.", + "enum": [ + "custom", + "system", + "external" + ], + "x-ms-enum": { + "name": "GroupType", + "modelAsString": false + } + }, + "externalId": { + "type": "string", + "description": "Identifier of the external groups, this property contains the id of the group from the external identity provider, e.g. for Azure Active Directory `aad://.onmicrosoft.com/groups/`; otherwise the value is null." + } + }, + "description": "Parameters supplied to the Update Group operation." + }, + "HttpMessageDiagnostic": { + "properties": { + "headers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Array of HTTP Headers to log." + }, + "body": { + "$ref": "#/definitions/BodyDiagnosticSettings", + "description": "Body logging settings." + } + }, + "description": "Http message diagnostic settings." + }, + "IdentityProviderBaseParameters": { + "properties": { + "type": { + "type": "string", + "enum": [ + "facebook", + "google", + "microsoft", + "twitter", + "aad", + "aadB2C" + ], + "x-ms-enum": { + "name": "IdentityProviderType", + "modelAsString": true, + "values": [ + { + "value": "facebook", + "description": "Facebook as Identity provider." + }, + { + "value": "google", + "description": "Google as Identity provider." + }, + { + "value": "microsoft", + "description": "Microsoft Live as Identity provider." + }, + { + "value": "twitter", + "description": "Twitter as Identity provider." + }, + { + "value": "aad", + "description": "Azure Active Directory as Identity provider." + }, + { + "value": "aadB2C", + "description": "Azure Active Directory B2C as Identity provider." + } + ] + }, + "description": "Identity Provider Type identifier." + }, + "signinTenant": { + "type": "string", + "description": "The TenantId to use instead of Common when logging into Active Directory" + }, + "allowedTenants": { + "type": "array", + "items": { + "type": "string" + }, + "maxItems": 32, + "description": "List of Allowed Tenants when configuring Azure Active Directory login." + }, + "authority": { + "type": "string", + "description": "OpenID Connect discovery endpoint hostname for AAD or AAD B2C." + }, + "signupPolicyName": { + "type": "string", + "description": "Signup Policy Name. Only applies to AAD B2C Identity Provider.", + "minLength": 1 + }, + "signinPolicyName": { + "type": "string", + "description": "Signin Policy Name. Only applies to AAD B2C Identity Provider.", + "minLength": 1 + }, + "profileEditingPolicyName": { + "type": "string", + "description": "Profile Editing Policy Name. Only applies to AAD B2C Identity Provider.", + "minLength": 1 + }, + "passwordResetPolicyName": { + "type": "string", + "description": "Password Reset Policy Name. Only applies to AAD B2C Identity Provider.", + "minLength": 1 + } + }, + "description": "Identity Provider Base Parameter Properties." + }, + "IdentityProviderCreateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IdentityProviderCreateContractProperties", + "description": "Identity Provider contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Identity Provider details." + }, + "IdentityProviderCreateContractProperties": { + "properties": { + "clientId": { + "type": "string", + "description": "Client Id of the Application in the external Identity Provider. It is App ID for Facebook login, Client ID for Google login, App ID for Microsoft.", + "minLength": 1 + }, + "clientSecret": { + "x-ms-secret": true, + "type": "string", + "description": "Client secret of the Application in external Identity Provider, used to authenticate login request. For example, it is App Secret for Facebook login, API Key for Google login, Public Key for Microsoft. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value.", + "minLength": 1 + } + }, + "allOf": [ + { + "$ref": "#/definitions/IdentityProviderBaseParameters" + } + ], + "required": [ + "clientId", + "clientSecret" + ], + "description": "The external Identity Providers like Facebook, Google, Microsoft, Twitter or Azure Active Directory which can be used to enable access to the API Management service developer portal for all users." + }, + "IdentityProviderContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IdentityProviderContractProperties", + "description": "Identity Provider contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Identity Provider details." + }, + "IdentityProviderContractProperties": { + "properties": { + "clientId": { + "type": "string", + "description": "Client Id of the Application in the external Identity Provider. It is App ID for Facebook login, Client ID for Google login, App ID for Microsoft.", + "minLength": 1 + }, + "clientSecret": { + "x-ms-secret": true, + "type": "string", + "description": "Client secret of the Application in external Identity Provider, used to authenticate login request. For example, it is App Secret for Facebook login, API Key for Google login, Public Key for Microsoft. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value.", + "minLength": 1 + } + }, + "allOf": [ + { + "$ref": "#/definitions/IdentityProviderBaseParameters" + } + ], + "required": [ + "clientId" + ], + "description": "The external Identity Providers like Facebook, Google, Microsoft, Twitter or Azure Active Directory which can be used to enable access to the API Management service developer portal for all users." + }, + "IdentityProviderList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/IdentityProviderContract" + }, + "description": "Identity Provider configuration values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "List of all the Identity Providers configured on the service instance." + }, + "IdentityProviderUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IdentityProviderUpdateProperties", + "description": "Identity Provider update properties." + } + }, + "description": "Parameters supplied to update Identity Provider" + }, + "IdentityProviderUpdateProperties": { + "properties": { + "clientId": { + "type": "string", + "description": "Client Id of the Application in the external Identity Provider. It is App ID for Facebook login, Client ID for Google login, App ID for Microsoft.", + "minLength": 1 + }, + "clientSecret": { + "x-ms-secret": true, + "type": "string", + "description": "Client secret of the Application in external Identity Provider, used to authenticate login request. For example, it is App Secret for Facebook login, API Key for Google login, Public Key for Microsoft.", + "minLength": 1 + } + }, + "allOf": [ + { + "$ref": "#/definitions/IdentityProviderBaseParameters" + } + ], + "description": "Parameters supplied to the Update Identity Provider operation." + }, + "IssueAttachmentCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/IssueAttachmentContract" + }, + "description": "Issue Attachment values.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Next page link if any.", + "readOnly": true + } + }, + "description": "Paged Issue Attachment list representation." + }, + "IssueAttachmentContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IssueAttachmentContractProperties", + "description": "Properties of the Issue Attachment." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Issue Attachment Contract details." + }, + "IssueAttachmentContractProperties": { + "properties": { + "title": { + "type": "string", + "description": "Filename by which the binary data will be saved." + }, + "contentFormat": { + "type": "string", + "description": "Either 'link' if content is provided via an HTTP link or the MIME type of the Base64-encoded binary data provided in the 'content' property." + }, + "content": { + "type": "string", + "description": "An HTTP link or Base64-encoded binary data." + } + }, + "required": [ + "title", + "contentFormat", + "content" + ], + "description": "Issue Attachment contract Properties." + }, + "IssueCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/IssueContract" + }, + "description": "Issue values.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Next page link if any.", + "readOnly": true + } + }, + "description": "Paged Issue list representation." + }, + "IssueCommentCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/IssueCommentContract" + }, + "description": "Issue Comment values.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Next page link if any.", + "readOnly": true + } + }, + "description": "Paged Issue Comment list representation." + }, + "IssueCommentContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IssueCommentContractProperties", + "description": "Properties of the Issue Comment." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Issue Comment Contract details." + }, + "IssueCommentContractProperties": { + "properties": { + "text": { + "type": "string", + "description": "Comment text." + }, + "createdDate": { + "type": "string", + "format": "date-time", + "description": "Date and time when the comment was created." + }, + "userId": { + "type": "string", + "description": "A resource identifier for the user who left the comment." + } + }, + "required": [ + "text", + "userId" + ], + "description": "Issue Comment contract Properties." + }, + "IssueContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IssueContractProperties", + "description": "Properties of the Issue." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Issue Contract details." + }, + "IssueContractBaseProperties": { + "properties": { + "createdDate": { + "type": "string", + "format": "date-time", + "description": "Date and time when the issue was created." + }, + "state": { + "type": "string", + "description": "Status of the issue.", + "enum": [ + "proposed", + "open", + "removed", + "resolved", + "closed" + ], + "x-ms-enum": { + "name": "State", + "modelAsString": true, + "values": [ + { + "value": "proposed", + "description": "The issue is proposed." + }, + { + "value": "open", + "description": "The issue is opened." + }, + { + "value": "removed", + "description": "The issue was removed." + }, + { + "value": "resolved", + "description": "The issue is now resolved." + }, + { + "value": "closed", + "description": "The issue was closed." + } + ] + } + }, + "apiId": { + "type": "string", + "description": "A resource identifier for the API the issue was created for." + } + }, + "description": "Issue contract Base Properties." + }, + "IssueContractProperties": { + "properties": { + "title": { + "type": "string", + "description": "The issue title." + }, + "description": { + "type": "string", + "description": "Text describing the issue." + }, + "userId": { + "type": "string", + "description": "A resource identifier for the user created the issue." + } + }, + "required": [ + "title", + "description", + "userId" + ], + "allOf": [ + { + "$ref": "#/definitions/IssueContractBaseProperties" + } + ], + "description": "Issue contract Properties." + }, + "IssueUpdateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IssueUpdateContractProperties", + "description": "Issue entity Update contract properties." + } + }, + "description": "Issue update Parameters." + }, + "IssueUpdateContractProperties": { + "properties": { + "title": { + "type": "string", + "description": "The issue title." + }, + "description": { + "type": "string", + "description": "Text describing the issue." + }, + "userId": { + "type": "string", + "description": "A resource identifier for the user created the issue." + } + }, + "allOf": [ + { + "$ref": "#/definitions/IssueContractBaseProperties" + } + ], + "description": "Issue contract Update Properties." + }, + "LoggerCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LoggerContract" + }, + "description": "Logger values." + }, + "count": { + "type": "integer", + "format": "int64", + "description": "Total record count number across all pages." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Logger list representation." + }, + "LoggerContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LoggerContractProperties", + "description": "Logger entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Logger details." + }, + "LoggerContractProperties": { + "properties": { + "loggerType": { + "type": "string", + "description": "Logger type.", + "enum": [ + "azureEventHub", + "applicationInsights" + ], + "x-ms-enum": { + "name": "LoggerType", + "modelAsString": true, + "values": [ + { + "value": "azureEventHub", + "description": "Azure Event Hub as log destination." + }, + { + "value": "applicationInsights", + "description": "Azure Application Insights as log destination." + } + ] + } + }, + "description": { + "type": "string", + "description": "Logger description.", + "maxLength": 256 + }, + "credentials": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The name and SendRule connection string of the event hub for azureEventHub logger.\nInstrumentation key for applicationInsights logger.", + "example": { + "name": "apim", + "connectionString": "Endpoint=sb://contoso-ns.servicebus.windows.net/;SharedAccessKeyName=Sender;SharedAccessKey=..." + } + }, + "isBuffered": { + "type": "boolean", + "description": "Whether records are buffered in the logger before publishing. Default is assumed to be true." + }, + "resourceId": { + "type": "string", + "description": "Azure Resource Id of a log target (either Azure Event Hub resource or Azure Application Insights resource)." + } + }, + "required": [ + "loggerType", + "credentials" + ], + "description": "The Logger entity in API Management represents an event sink that you can use to log API Management events. Currently the Logger entity supports logging API Management events to Azure Event Hubs." + }, + "LoggerUpdateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LoggerUpdateParameters", + "description": "Logger entity update contract properties." + } + }, + "description": "Logger update contract." + }, + "LoggerUpdateParameters": { + "properties": { + "loggerType": { + "type": "string", + "description": "Logger type.", + "enum": [ + "azureEventHub", + "applicationInsights" + ], + "x-ms-enum": { + "name": "LoggerType", + "modelAsString": true, + "values": [ + { + "value": "azureEventHub", + "description": "Azure Event Hub as log destination." + }, + { + "value": "applicationInsights", + "description": "Azure Application Insights as log destination." + } + ] + } + }, + "description": { + "type": "string", + "description": "Logger description." + }, + "credentials": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Logger credentials." + }, + "isBuffered": { + "type": "boolean", + "description": "Whether records are buffered in the logger before publishing. Default is assumed to be true." + } + }, + "description": "Parameters supplied to the Update Logger operation." + }, + "NotificationCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NotificationContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Notification list representation." + }, + "NotificationContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NotificationContractProperties", + "description": "Notification entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Notification details." + }, + "NotificationContractProperties": { + "properties": { + "title": { + "type": "string", + "description": "Title of the Notification.", + "minLength": 1, + "maxLength": 1000 + }, + "description": { + "type": "string", + "description": "Description of the Notification." + }, + "recipients": { + "$ref": "#/definitions/RecipientsContractProperties", + "description": "Recipient Parameter values." + } + }, + "required": [ + "title" + ], + "description": "Notification Contract properties." + }, + "OAuth2AuthenticationSettingsContract": { + "properties": { + "authorizationServerId": { + "type": "string", + "description": "OAuth authorization server identifier." + }, + "scope": { + "type": "string", + "description": "operations scope." + } + }, + "description": "API OAuth2 Authentication settings details." + }, + "OpenIdAuthenticationSettingsContract": { + "properties": { + "openidProviderId": { + "type": "string", + "description": "OAuth authorization server identifier." + }, + "bearerTokenSendingMethods": { + "description": "How to send token to the server.", + "type": "array", + "items": { + "$ref": "#/definitions/BearerTokenSendingMethodsContract" + } + } + }, + "description": "API OAuth2 Authentication settings details." + }, + "OpenIdConnectProviderCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/OpenidConnectProviderContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged OpenIdProviders list representation." + }, + "OpenidConnectProviderContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OpenidConnectProviderContractProperties", + "description": "OpenId Connect Provider contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "OpenId Connect Provider details." + }, + "OpenidConnectProviderContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "User-friendly OpenID Connect Provider name.", + "maxLength": 50 + }, + "description": { + "type": "string", + "description": "User-friendly description of OpenID Connect Provider." + }, + "metadataEndpoint": { + "type": "string", + "description": "Metadata endpoint URI." + }, + "clientId": { + "type": "string", + "description": "Client ID of developer console which is the client application." + }, + "clientSecret": { + "x-ms-secret": true, + "type": "string", + "description": "Client Secret of developer console which is the client application." + } + }, + "required": [ + "displayName", + "metadataEndpoint", + "clientId" + ], + "description": "OpenID Connect Providers Contract." + }, + "OpenidConnectProviderUpdateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OpenidConnectProviderUpdateContractProperties", + "description": "OpenId Connect Provider Update contract properties." + } + }, + "description": "Parameters supplied to the Update OpenID Connect Provider operation." + }, + "OpenidConnectProviderUpdateContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "User-friendly OpenID Connect Provider name.", + "maxLength": 50 + }, + "description": { + "type": "string", + "description": "User-friendly description of OpenID Connect Provider." + }, + "metadataEndpoint": { + "type": "string", + "description": "Metadata endpoint URI." + }, + "clientId": { + "type": "string", + "description": "Client ID of developer console which is the client application." + }, + "clientSecret": { + "x-ms-secret": true, + "type": "string", + "description": "Client Secret of developer console which is the client application." + } + }, + "description": "Parameters supplied to the Update OpenID Connect Provider operation." + }, + "OperationCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/OperationContract" + }, + "description": "Page values.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Next page link if any.", + "readOnly": true + } + }, + "description": "Paged Operation list representation." + }, + "OperationContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OperationContractProperties", + "description": "Properties of the Operation Contract." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Api Operation details." + }, + "OperationContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Operation Name.", + "minLength": 1, + "maxLength": 300 + }, + "method": { + "type": "string", + "description": "A Valid HTTP Operation Method. Typical Http Methods like GET, PUT, POST but not limited by only them.", + "externalDocs": { + "description": "As defined by RFC.", + "url": "http://www.rfc-editor.org/rfc/rfc7230.txt" + } + }, + "urlTemplate": { + "type": "string", + "description": "Relative URL template identifying the target resource for this operation. May include parameters. Example: /customers/{cid}/orders/{oid}/?date={date}", + "minLength": 1, + "maxLength": 1000 + } + }, + "allOf": [ + { + "$ref": "#/definitions/OperationEntityBaseContract" + } + ], + "required": [ + "displayName", + "method", + "urlTemplate" + ], + "description": "Operation Contract Properties" + }, + "OperationEntityBaseContract": { + "properties": { + "templateParameters": { + "type": "array", + "items": { + "$ref": "#/definitions/ParameterContract" + }, + "description": "Collection of URL template parameters." + }, + "description": { + "type": "string", + "description": "Description of the operation. May include HTML formatting tags.", + "maxLength": 1000 + }, + "request": { + "$ref": "#/definitions/RequestContract", + "description": "An entity containing request details." + }, + "responses": { + "type": "array", + "items": { + "$ref": "#/definitions/ResponseContract" + }, + "description": "Array of Operation responses." + }, + "policies": { + "type": "string", + "description": "Operation Policies" + } + }, + "description": "Api Operation Entity Base Contract details." + }, + "OperationResultContract": { + "properties": { + "id": { + "type": "string", + "description": "Operation result identifier." + }, + "status": { + "type": "string", + "description": "Status of an async operation.", + "enum": [ + "Started", + "InProgress", + "Succeeded", + "Failed" + ], + "x-ms-enum": { + "name": "AsyncOperationStatus", + "modelAsString": false + } + }, + "started": { + "type": "string", + "format": "date-time", + "description": "Start time of an async operation. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "updated": { + "type": "string", + "format": "date-time", + "description": "Last update time of an async operation. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "resultInfo": { + "type": "string", + "description": "Optional result info." + }, + "error": { + "$ref": "./apimanagement.json#/definitions/ErrorResponseBody", + "description": "Error Body Contract" + }, + "actionLog": { + "type": "array", + "items": { + "$ref": "#/definitions/OperationResultLogItemContract" + }, + "readOnly": true, + "description": "This property if only provided as part of the TenantConfiguration_Validate operation. It contains the log the entities which will be updated/created/deleted as part of the TenantConfiguration_Deploy operation." + } + }, + "description": "Operation Result." + }, + "OperationResultLogItemContract": { + "properties": { + "objectType": { + "type": "string", + "description": "The type of entity contract." + }, + "action": { + "type": "string", + "description": "Action like create/update/delete." + }, + "objectKey": { + "type": "string", + "description": "Identifier of the entity being created/updated/deleted." + } + }, + "description": "Log of the entity being created, updated or deleted." + }, + "OperationTagResourceContractProperties": { + "properties": { + "id": { + "type": "string", + "description": "Identifier of the operation in form /operations/{operationId}." + }, + "name": { + "type": "string", + "description": "Operation name.", + "readOnly": true + }, + "apiName": { + "type": "string", + "description": "Api Name.", + "readOnly": true + }, + "apiRevision": { + "type": "string", + "description": "Api Revision.", + "readOnly": true + }, + "apiVersion": { + "type": "string", + "description": "Api Version.", + "readOnly": true + }, + "description": { + "type": "string", + "description": "Operation Description.", + "readOnly": true + }, + "method": { + "type": "string", + "description": "A Valid HTTP Operation Method. Typical Http Methods like GET, PUT, POST but not limited by only them.", + "externalDocs": { + "description": "As defined by RFC.", + "url": "http://www.rfc-editor.org/rfc/rfc7230.txt" + }, + "readOnly": true + }, + "urlTemplate": { + "type": "string", + "description": "Relative URL template identifying the target resource for this operation. May include parameters. Example: /customers/{cid}/orders/{oid}/?date={date}", + "readOnly": true + } + }, + "description": "Operation Entity contract Properties." + }, + "OperationUpdateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OperationUpdateContractProperties", + "description": "Properties of the API Operation entity that can be updated." + } + }, + "description": "Api Operation Update Contract details." + }, + "OperationUpdateContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Operation Name.", + "minLength": 1, + "maxLength": 300 + }, + "method": { + "type": "string", + "description": "A Valid HTTP Operation Method. Typical Http Methods like GET, PUT, POST but not limited by only them.", + "externalDocs": { + "description": "As defined by RFC.", + "url": "http://www.rfc-editor.org/rfc/rfc7230.txt" + } + }, + "urlTemplate": { + "type": "string", + "description": "Relative URL template identifying the target resource for this operation. May include parameters. Example: /customers/{cid}/orders/{oid}/?date={date}", + "minLength": 1, + "maxLength": 1000 + } + }, + "allOf": [ + { + "$ref": "#/definitions/OperationEntityBaseContract" + } + ], + "description": "Operation Update Contract Properties." + }, + "ParameterContract": { + "properties": { + "name": { + "type": "string", + "description": "Parameter name." + }, + "description": { + "type": "string", + "description": "Parameter description." + }, + "type": { + "type": "string", + "description": "Parameter type." + }, + "defaultValue": { + "type": "string", + "description": "Default parameter value." + }, + "required": { + "type": "boolean", + "description": "Specifies whether parameter is required or not." + }, + "values": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Parameter values." + } + }, + "required": [ + "name", + "type" + ], + "description": "Operation parameters details." + }, + "PipelineDiagnosticSettings": { + "properties": { + "request": { + "$ref": "#/definitions/HttpMessageDiagnostic", + "description": "Diagnostic settings for request." + }, + "response": { + "$ref": "#/definitions/HttpMessageDiagnostic", + "description": "Diagnostic settings for response." + } + }, + "description": "Diagnostic settings for incoming/outgoing HTTP messages to the Gateway." + }, + "PolicyCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PolicyContract" + }, + "description": "Policy Contract value." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "The response of the list policy operation." + }, + "PolicyContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PolicyContractProperties", + "description": "Properties of the Policy." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Policy Contract details." + }, + "PolicyContractProperties": { + "properties": { + "value": { + "type": "string", + "description": "Contents of the Policy as defined by the format." + }, + "format": { + "type": "string", + "description": "Format of the policyContent.", + "enum": [ + "xml", + "xml-link", + "rawxml", + "rawxml-link" + ], + "x-ms-enum": { + "name": "PolicyContentFormat", + "modelAsString": true, + "values": [ + { + "value": "xml", + "description": "The contents are inline and Content type is an XML document." + }, + { + "value": "xml-link", + "description": "The policy XML document is hosted on a http endpoint accessible from the API Management service." + }, + { + "value": "rawxml", + "description": "The contents are inline and Content type is a non XML encoded policy document." + }, + { + "value": "rawxml-link", + "description": "The policy document is not Xml encoded and is hosted on a http endpoint accessible from the API Management service." + } + ] + }, + "default": "xml" + } + }, + "required": [ + "value" + ], + "description": "Policy contract Properties." + }, + "PolicyDescriptionContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PolicyDescriptionContractProperties", + "description": "Policy description contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Policy description details." + }, + "PolicyDescriptionContractProperties": { + "properties": { + "description": { + "type": "string", + "description": "Policy description.", + "readOnly": true + }, + "scope": { + "type": "integer", + "description": "Binary OR value of the Snippet scope.", + "readOnly": true + } + }, + "description": "Policy description properties." + }, + "PolicyDescriptionCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PolicyDescriptionContract" + }, + "description": "Descriptions of APIM policies." + }, + "count": { + "type": "integer", + "format": "int64", + "description": "Total record count number." + } + }, + "description": "Descriptions of APIM policies." + }, + "PortalDelegationSettings": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PortalDelegationSettingsProperties", + "description": "Delegation settings contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Delegation settings for a developer portal." + }, + "PortalDelegationSettingsProperties": { + "properties": { + "url": { + "type": "string", + "description": "A delegation Url." + }, + "validationKey": { + "x-ms-secret": true, + "type": "string", + "description": "A base64-encoded validation key to validate, that a request is coming from Azure API Management." + }, + "subscriptions": { + "$ref": "#/definitions/SubscriptionsDelegationSettingsProperties", + "description": "Subscriptions delegation settings." + }, + "userRegistration": { + "$ref": "#/definitions/RegistrationDelegationSettingsProperties", + "description": "User registration delegation settings." + } + }, + "description": "Delegation settings contract properties." + }, + "PortalSigninSettingProperties": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Redirect Anonymous users to the Sign-In page." + } + }, + "description": "Sign-in settings contract properties." + }, + "PortalSigninSettings": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PortalSigninSettingProperties", + "description": "Sign-in settings contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Sign-In settings for the Developer Portal." + }, + "PortalSignupSettings": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PortalSignupSettingsProperties", + "description": "Sign-up settings contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Sign-Up settings for a developer portal." + }, + "PortalSignupSettingsProperties": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Allow users to sign up on a developer portal." + }, + "termsOfService": { + "type": "object", + "$ref": "#/definitions/TermsOfServiceProperties", + "description": "Terms of service contract properties." + } + }, + "description": "Sign-up settings contract properties." + }, + "ProductCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ProductContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Products list representation." + }, + "ProductContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProductContractProperties", + "description": "Product entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Product details." + }, + "ProductContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Product name.", + "minLength": 1, + "maxLength": 300 + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProductEntityBaseParameters" + } + ], + "required": [ + "displayName" + ], + "description": "Product profile." + }, + "ProductEntityBaseParameters": { + "properties": { + "description": { + "type": "string", + "description": "Product description. May include HTML formatting tags.", + "minLength": 1, + "maxLength": 1000 + }, + "terms": { + "type": "string", + "description": "Product terms of use. Developers trying to subscribe to the product will be presented and required to accept these terms before they can complete the subscription process." + }, + "subscriptionRequired": { + "description": "Whether a product subscription is required for accessing APIs included in this product. If true, the product is referred to as \"protected\" and a valid subscription key is required for a request to an API included in the product to succeed. If false, the product is referred to as \"open\" and requests to an API included in the product can be made without a subscription key. If property is omitted when creating a new product it's value is assumed to be true.", + "type": "boolean" + }, + "approvalRequired": { + "description": "whether subscription approval is required. If false, new subscriptions will be approved automatically enabling developers to call the product’s APIs immediately after subscribing. If true, administrators must manually approve the subscription before the developer can any of the product’s APIs. Can be present only if subscriptionRequired property is present and has a value of false.", + "type": "boolean" + }, + "subscriptionsLimit": { + "type": "integer", + "format": "int32", + "description": "Whether the number of subscriptions a user can have to this product at the same time. Set to null or omit to allow unlimited per user subscriptions. Can be present only if subscriptionRequired property is present and has a value of false." + }, + "state": { + "type": "string", + "description": "whether product is published or not. Published products are discoverable by users of developer portal. Non published products are visible only to administrators. Default state of Product is notPublished.", + "enum": [ + "notPublished", + "published" + ], + "x-ms-enum": { + "name": "ProductState", + "modelAsString": false + } + } + }, + "description": "Product Entity Base Parameters" + }, + "ProductTagResourceContractProperties": { + "properties": { + "id": { + "type": "string", + "description": "Identifier of the product in the form of /products/{productId}" + }, + "name": { + "type": "string", + "description": "Product name.", + "minLength": 1, + "maxLength": 300 + } + }, + "allOf": [ + { + "$ref": "./definitions.json#/definitions/ProductEntityBaseParameters" + } + ], + "required": [ + "name" + ], + "description": "Product profile." + }, + "ProductUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProductUpdateProperties", + "description": "Product entity Update contract properties." + } + }, + "description": "Product Update parameters." + }, + "ProductUpdateProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Product name.", + "maxLength": 300, + "minLength": 1 + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProductEntityBaseParameters" + } + ], + "description": "Parameters supplied to the Update Product operation." + }, + "NamedValueCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NamedValueContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged NamedValue list representation." + }, + "NamedValueCreateContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NamedValueCreateContractProperties", + "description": "NamedValue entity contract properties for PUT operation." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "NamedValue details." + }, + "NamedValueCreateContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Unique name of NamedValue. It may contain only letters, digits, period, dash, and underscore characters.", + "minLength": 1, + "maxLength": 256, + "pattern": "^[A-Za-z0-9-._]+$" + }, + "value": { + "type": "string", + "description": "Value of the NamedValue. Can contain policy expressions. It may not be empty or consist only of whitespace. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value.", + "minLength": 1, + "maxLength": 4096 + } + }, + "allOf": [ + { + "$ref": "#/definitions/NamedValueEntityBaseParameters" + } + ], + "required": [ + "displayName", + "value" + ], + "description": "NamedValue Contract properties." + }, + "NamedValueContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NamedValueContractProperties", + "description": "NamedValue entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "NamedValue details." + }, + "NamedValueContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Unique name of NamedValue. It may contain only letters, digits, period, dash, and underscore characters.", + "minLength": 1, + "maxLength": 256, + "pattern": "^[A-Za-z0-9-._]+$" + }, + "value": { + "type": "string", + "description": "Value of the NamedValue. Can contain policy expressions. It may not be empty or consist only of whitespace. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value.", + "minLength": 1, + "maxLength": 4096 + } + }, + "allOf": [ + { + "$ref": "#/definitions/NamedValueEntityBaseParameters" + } + ], + "required": [ + "displayName" + ], + "description": "NamedValue Contract properties." + }, + "NamedValueEntityBaseParameters": { + "properties": { + "tags": { + "type": "array", + "items": { + "type": "string" + }, + "maxItems": 32, + "description": "Optional tags that when provided can be used to filter the NamedValue list." + }, + "secret": { + "description": "Determines whether the value is a secret and should be encrypted or not. Default value is false.", + "type": "boolean" + } + }, + "description": "NamedValue Entity Base Parameters set." + }, + "NamedValueUpdateParameterProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Unique name of NamedValue. It may contain only letters, digits, period, dash, and underscore characters.", + "minLength": 1, + "maxLength": 256, + "pattern": "^[A-Za-z0-9-._]+$" + }, + "value": { + "type": "string", + "description": "Value of the NamedValue. Can contain policy expressions. It may not be empty or consist only of whitespace.", + "minLength": 1, + "maxLength": 4096 + } + }, + "allOf": [ + { + "$ref": "#/definitions/NamedValueEntityBaseParameters" + } + ], + "description": "NamedValue Contract properties." + }, + "NamedValueUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NamedValueUpdateParameterProperties", + "description": "NamedValue entity Update contract properties." + } + }, + "description": "NamedValue update Parameters." + }, + "QuotaCounterCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/QuotaCounterContract" + }, + "description": "Quota counter values." + }, + "count": { + "type": "integer", + "format": "int64", + "description": "Total record count number across all pages." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Quota Counter list representation." + }, + "QuotaCounterContract": { + "properties": { + "counterKey": { + "type": "string", + "description": "The Key value of the Counter. Must not be empty.", + "minLength": 1 + }, + "periodKey": { + "type": "string", + "description": "Identifier of the Period for which the counter was collected. Must not be empty.", + "minLength": 1 + }, + "periodStartTime": { + "type": "string", + "format": "date-time", + "description": "The date of the start of Counter Period. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "periodEndTime": { + "type": "string", + "format": "date-time", + "description": "The date of the end of Counter Period. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "value": { + "$ref": "#/definitions/QuotaCounterValueContractProperties", + "description": "Quota Value Properties" + } + }, + "required": [ + "counterKey", + "periodKey", + "periodStartTime", + "periodEndTime" + ], + "description": "Quota counter details." + }, + "QuotaCounterValueContract": { + "properties": { + "value": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/QuotaCounterValueContractProperties", + "description": "Quota counter Value Properties." + } + }, + "description": "Quota counter value details." + }, + "QuotaCounterValueContractProperties": { + "properties": { + "callsCount": { + "type": "integer", + "format": "int32", + "description": "Number of times Counter was called." + }, + "kbTransferred": { + "type": "number", + "format": "double", + "description": "Data Transferred in KiloBytes." + } + }, + "description": "Quota counter value details." + }, + "RecipientEmailCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RecipientEmailContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Recipient User list representation." + }, + "RecipientEmailContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RecipientEmailContractProperties", + "description": "Recipient Email contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Recipient Email details." + }, + "RecipientEmailContractProperties": { + "properties": { + "email": { + "type": "string", + "description": "User Email subscribed to notification." + } + }, + "description": "Recipient Email Contract Properties." + }, + "RecipientsContractProperties": { + "properties": { + "emails": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of Emails subscribed for the notification." + }, + "users": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of Users subscribed for the notification." + } + }, + "description": "Notification Parameter contract." + }, + "RecipientUserCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RecipientUserContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Recipient User list representation." + }, + "RecipientUserContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RecipientUsersContractProperties", + "description": "Recipient User entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Recipient User details." + }, + "RecipientUsersContractProperties": { + "properties": { + "userId": { + "type": "string", + "description": "API Management UserId subscribed to notification." + } + }, + "description": "Recipient User Contract Properties." + }, + "RegistrationDelegationSettingsProperties": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Enable or disable delegation for user registration." + } + }, + "description": "User registration delegation settings properties." + }, + "ReportCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ReportRecordContract" + }, + "description": "Page values." + }, + "count": { + "type": "integer", + "format": "int64", + "description": "Total record count number across all pages." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Report records list representation." + }, + "ReportRecordContract": { + "properties": { + "name": { + "type": "string", + "description": "Name depending on report endpoint specifies product, API, operation or developer name." + }, + "timestamp": { + "type": "string", + "format": "date-time", + "description": "Start of aggregation period. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "interval": { + "type": "string", + "description": "Length of aggregation period. Interval must be multiple of 15 minutes and may not be zero. The value should be in ISO 8601 format (http://en.wikipedia.org/wiki/ISO_8601#Durations)." + }, + "country": { + "type": "string", + "description": "Country to which this record data is related." + }, + "region": { + "type": "string", + "description": "Country region to which this record data is related." + }, + "zip": { + "type": "string", + "description": "Zip code to which this record data is related." + }, + "userId": { + "readOnly": true, + "type": "string", + "description": "User identifier path. /users/{userId}" + }, + "productId": { + "readOnly": true, + "type": "string", + "description": "Product identifier path. /products/{productId}" + }, + "apiId": { + "type": "string", + "description": "API identifier path. /apis/{apiId}" + }, + "operationId": { + "type": "string", + "description": "Operation identifier path. /apis/{apiId}/operations/{operationId}" + }, + "apiRegion": { + "type": "string", + "description": "API region identifier." + }, + "subscriptionId": { + "type": "string", + "description": "Subscription identifier path. /subscriptions/{subscriptionId}" + }, + "callCountSuccess": { + "type": "integer", + "format": "int32", + "description": "Number of successful calls. This includes calls returning HttpStatusCode <= 301 and HttpStatusCode.NotModified and HttpStatusCode.TemporaryRedirect" + }, + "callCountBlocked": { + "type": "integer", + "format": "int32", + "description": "Number of calls blocked due to invalid credentials. This includes calls returning HttpStatusCode.Unauthorized and HttpStatusCode.Forbidden and HttpStatusCode.TooManyRequests" + }, + "callCountFailed": { + "type": "integer", + "format": "int32", + "description": "Number of calls failed due to proxy or backend errors. This includes calls returning HttpStatusCode.BadRequest(400) and any Code between HttpStatusCode.InternalServerError (500) and 600" + }, + "callCountOther": { + "type": "integer", + "format": "int32", + "description": "Number of other calls." + }, + "callCountTotal": { + "type": "integer", + "format": "int32", + "description": "Total number of calls." + }, + "bandwidth": { + "type": "integer", + "format": "int64", + "description": "Bandwidth consumed." + }, + "cacheHitCount": { + "type": "integer", + "format": "int32", + "description": "Number of times when content was served from cache policy." + }, + "cacheMissCount": { + "type": "integer", + "format": "int32", + "description": "Number of times content was fetched from backend." + }, + "apiTimeAvg": { + "type": "number", + "format": "double", + "description": "Average time it took to process request." + }, + "apiTimeMin": { + "type": "number", + "format": "double", + "description": "Minimum time it took to process request." + }, + "apiTimeMax": { + "type": "number", + "format": "double", + "description": "Maximum time it took to process request." + }, + "serviceTimeAvg": { + "type": "number", + "format": "double", + "description": "Average time it took to process request on backend." + }, + "serviceTimeMin": { + "type": "number", + "format": "double", + "description": "Minimum time it took to process request on backend." + }, + "serviceTimeMax": { + "type": "number", + "format": "double", + "description": "Maximum time it took to process request on backend." + } + }, + "description": "Report data." + }, + "RepresentationContract": { + "properties": { + "contentType": { + "type": "string", + "description": "Specifies a registered or custom content type for this representation, e.g. application/xml." + }, + "sample": { + "type": "string", + "description": "An example of the representation." + }, + "schemaId": { + "type": "string", + "description": "Schema identifier. Applicable only if 'contentType' value is neither 'application/x-www-form-urlencoded' nor 'multipart/form-data'." + }, + "typeName": { + "type": "string", + "description": "Type name defined by the schema. Applicable only if 'contentType' value is neither 'application/x-www-form-urlencoded' nor 'multipart/form-data'." + }, + "formParameters": { + "type": "array", + "items": { + "$ref": "#/definitions/ParameterContract" + }, + "description": "Collection of form parameters. Required if 'contentType' value is either 'application/x-www-form-urlencoded' or 'multipart/form-data'.." + } + }, + "required": [ + "contentType" + ], + "description": "Operation request/response representation details." + }, + "RequestContract": { + "properties": { + "description": { + "type": "string", + "description": "Operation request description." + }, + "queryParameters": { + "type": "array", + "items": { + "$ref": "#/definitions/ParameterContract" + }, + "description": "Collection of operation request query parameters." + }, + "headers": { + "type": "array", + "items": { + "$ref": "#/definitions/ParameterContract" + }, + "description": "Collection of operation request headers." + }, + "representations": { + "type": "array", + "items": { + "$ref": "#/definitions/RepresentationContract" + }, + "description": "Collection of operation request representations." + } + }, + "description": "Operation request details." + }, + "RequestReportCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RequestReportRecordContract" + }, + "description": "Page values." + }, + "count": { + "type": "integer", + "format": "int64", + "description": "Total record count number across all pages." + } + }, + "description": "Paged Report records list representation." + }, + "RequestReportRecordContract": { + "properties": { + "apiId": { + "type": "string", + "description": "API identifier path. /apis/{apiId}" + }, + "operationId": { + "type": "string", + "description": "Operation identifier path. /apis/{apiId}/operations/{operationId}" + }, + "productId": { + "readOnly": true, + "type": "string", + "description": "Product identifier path. /products/{productId}" + }, + "userId": { + "readOnly": true, + "type": "string", + "description": "User identifier path. /users/{userId}" + }, + "method": { + "type": "string", + "description": "The HTTP method associated with this request.." + }, + "url": { + "type": "string", + "description": "The full URL associated with this request." + }, + "ipAddress": { + "type": "string", + "description": "The client IP address associated with this request." + }, + "backendResponseCode": { + "type": "string", + "description": "The HTTP status code received by the gateway as a result of forwarding this request to the backend." + }, + "responseCode": { + "type": "integer", + "format": "int32", + "description": "The HTTP status code returned by the gateway." + }, + "responseSize": { + "type": "integer", + "format": "int32", + "description": "The size of the response returned by the gateway." + }, + "timestamp": { + "type": "string", + "format": "date-time", + "description": "The date and time when this request was received by the gateway in ISO 8601 format." + }, + "cache": { + "type": "string", + "description": "Specifies if response cache was involved in generating the response. If the value is none, the cache was not used. If the value is hit, cached response was returned. If the value is miss, the cache was used but lookup resulted in a miss and request was fulfilled by the backend." + }, + "apiTime": { + "type": "number", + "format": "double", + "description": "The total time it took to process this request." + }, + "serviceTime": { + "type": "number", + "format": "double", + "description": "he time it took to forward this request to the backend and get the response back." + }, + "apiRegion": { + "type": "string", + "description": "Azure region where the gateway that processed this request is located." + }, + "subscriptionId": { + "type": "string", + "description": "Subscription identifier path. /subscriptions/{subscriptionId}" + }, + "requestId": { + "type": "string", + "description": "Request Identifier." + }, + "requestSize": { + "type": "integer", + "format": "int32", + "description": "The size of this request.." + } + }, + "description": "Request Report data." + }, + "ResponseContract": { + "properties": { + "statusCode": { + "type": "integer", + "format": "int32", + "description": "Operation response HTTP status code." + }, + "description": { + "type": "string", + "description": "Operation response description." + }, + "representations": { + "type": "array", + "items": { + "$ref": "#/definitions/RepresentationContract" + }, + "description": "Collection of operation response representations." + }, + "headers": { + "type": "array", + "items": { + "$ref": "#/definitions/ParameterContract" + }, + "description": "Collection of operation response headers." + } + }, + "required": [ + "statusCode" + ], + "description": "Operation response details." + }, + "SamplingSettings": { + "properties": { + "samplingType": { + "type": "string", + "description": "Sampling type.", + "enum": [ + "fixed" + ], + "x-ms-enum": { + "name": "SamplingType", + "modelAsString": true, + "values": [ + { + "value": "fixed", + "description": "Fixed-rate sampling." + } + ] + } + }, + "percentage": { + "type": "number", + "format": "double", + "minimum": 0, + "maximum": 100, + "description": "Rate of sampling for fixed-rate sampling." + } + }, + "description": "Sampling settings for Diagnostic." + }, + "SaveConfigurationParameter": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SaveConfigurationParameterProperties", + "description": "Properties of the Save Configuration Parameters." + } + }, + "description": "Save Tenant Configuration Contract details." + }, + "SaveConfigurationParameterProperties": { + "properties": { + "branch": { + "type": "string", + "description": "The name of the Git branch in which to commit the current configuration snapshot." + }, + "force": { + "type": "boolean", + "description": "The value if true, the current configuration database is committed to the Git repository, even if the Git repository has newer changes that would be overwritten." + } + }, + "required": [ + "branch" + ], + "description": "Parameters supplied to the Save Tenant Configuration operation." + }, + "SchemaCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SchemaContract" + }, + "description": "Api Schema Contract value.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Next page link if any.", + "readOnly": true + } + }, + "description": "The response of the list schema operation." + }, + "SchemaContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SchemaContractProperties", + "description": "Properties of the Schema." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Schema Contract details." + }, + "SchemaContractProperties": { + "properties": { + "contentType": { + "type": "string", + "description": "Must be a valid a media type used in a Content-Type header as defined in the RFC 2616. Media type of the schema document (e.g. application/json, application/xml).
- `Swagger` Schema use `application/vnd.ms-azure-apim.swagger.definitions+json`
- `WSDL` Schema use `application/vnd.ms-azure-apim.xsd+xml`
- `OpenApi` Schema use `application/vnd.oai.openapi.components+json`
- `WADL Schema` use `application/vnd.ms-azure-apim.wadl.grammars+xml`." + }, + "document": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SchemaDocumentProperties", + "description": "Create or update Properties of the Schema Document." + } + }, + "required": [ + "contentType" + ], + "description": "API Schema create or update contract Properties." + }, + "SchemaDocumentProperties": { + "properties": { + "value": { + "type": "string", + "description": "Json escaped string defining the document representing the Schema. Used for schemas other than Swagger/OpenAPI." + }, + "definitions": { + "type": "object", + "description": "Types definitions. Used for Swagger/OpenAPI schemas only, null otherwise." + } + }, + "description": "Schema Document Properties." + }, + "SubscriptionCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SubscriptionContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Subscriptions list representation." + }, + "SubscriptionContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SubscriptionContractProperties", + "description": "Subscription contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Subscription details." + }, + "SubscriptionContractProperties": { + "properties": { + "ownerId": { + "type": "string", + "description": "The user resource identifier of the subscription owner. The value is a valid relative URL in the format of /users/{userId} where {userId} is a user identifier." + }, + "scope": { + "type": "string", + "description": "Scope like /products/{productId} or /apis or /apis/{apiId}." + }, + "displayName": { + "type": "string", + "description": "The name of the subscription, or null if the subscription has no name.", + "minLength": 0, + "maxLength": 100 + }, + "state": { + "type": "string", + "description": "Subscription state. Possible states are * active – the subscription is active, * suspended – the subscription is blocked, and the subscriber cannot call any APIs of the product, * submitted – the subscription request has been made by the developer, but has not yet been approved or rejected, * rejected – the subscription request has been denied by an administrator, * cancelled – the subscription has been cancelled by the developer or administrator, * expired – the subscription reached its expiration date and was deactivated.", + "enum": [ + "suspended", + "active", + "expired", + "submitted", + "rejected", + "cancelled" + ], + "x-ms-enum": { + "name": "SubscriptionState", + "modelAsString": false + } + }, + "createdDate": { + "type": "string", + "format": "date-time", + "description": "Subscription creation date. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n", + "readOnly": true + }, + "startDate": { + "type": "string", + "format": "date-time", + "description": "Subscription activation date. The setting is for audit purposes only and the subscription is not automatically activated. The subscription lifecycle can be managed by using the `state` property. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "expirationDate": { + "type": "string", + "format": "date-time", + "description": "Subscription expiration date. The setting is for audit purposes only and the subscription is not automatically expired. The subscription lifecycle can be managed by using the `state` property. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "endDate": { + "type": "string", + "format": "date-time", + "description": "Date when subscription was cancelled or expired. The setting is for audit purposes only and the subscription is not automatically cancelled. The subscription lifecycle can be managed by using the `state` property. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "notificationDate": { + "type": "string", + "format": "date-time", + "description": "Upcoming subscription expiration notification date. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "primaryKey": { + "x-ms-secret": true, + "type": "string", + "description": "Subscription primary key. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value.", + "minLength": 1, + "maxLength": 256 + }, + "secondaryKey": { + "x-ms-secret": true, + "type": "string", + "description": "Subscription secondary key. This property will not be filled on 'GET' operations! Use '/listSecrets' POST request to get the value.", + "minLength": 1, + "maxLength": 256 + }, + "stateComment": { + "type": "string", + "description": "Optional subscription comment added by an administrator." + }, + "allowTracing": { + "type": "boolean", + "description": "Determines whether tracing is enabled", + "x-apim-code-nillable": true + } + }, + "required": [ + "scope", + "state" + ], + "description": "Subscription details." + }, + "SubscriptionCreateParameterProperties": { + "properties": { + "ownerId": { + "type": "string", + "description": "User (user id path) for whom subscription is being created in form /users/{userId}" + }, + "scope": { + "type": "string", + "description": "Scope like /products/{productId} or /apis or /apis/{apiId}." + }, + "displayName": { + "type": "string", + "description": "Subscription name.", + "minLength": 1, + "maxLength": 100 + }, + "primaryKey": { + "type": "string", + "description": "Primary subscription key. If not specified during request key will be generated automatically.", + "minLength": 1, + "maxLength": 256 + }, + "secondaryKey": { + "type": "string", + "description": "Secondary subscription key. If not specified during request key will be generated automatically.", + "minLength": 1, + "maxLength": 256 + }, + "state": { + "type": "string", + "description": "Initial subscription state. If no value is specified, subscription is created with Submitted state. Possible states are * active – the subscription is active, * suspended – the subscription is blocked, and the subscriber cannot call any APIs of the product, * submitted – the subscription request has been made by the developer, but has not yet been approved or rejected, * rejected – the subscription request has been denied by an administrator, * cancelled – the subscription has been cancelled by the developer or administrator, * expired – the subscription reached its expiration date and was deactivated.", + "enum": [ + "suspended", + "active", + "expired", + "submitted", + "rejected", + "cancelled" + ], + "x-ms-enum": { + "name": "SubscriptionState", + "modelAsString": false + } + }, + "allowTracing": { + "type": "boolean", + "description": "Determines whether tracing can be enabled" + } + }, + "required": [ + "scope", + "displayName" + ], + "description": "Parameters supplied to the Create subscription operation." + }, + "SubscriptionCreateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SubscriptionCreateParameterProperties", + "description": "Subscription contract properties." + } + }, + "description": "Subscription create details." + }, + "SubscriptionKeyParameterNamesContract": { + "properties": { + "header": { + "type": "string", + "description": "Subscription key header name." + }, + "query": { + "type": "string", + "description": "Subscription key query string parameter name." + } + }, + "description": "Subscription key parameter names details.", + "example": { + "subscriptionKeyParameterNames": { + "query": "customQueryParameterName", + "header": "customHeaderParameterName" + } + } + }, + "SubscriptionsDelegationSettingsProperties": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Enable or disable delegation for subscriptions." + } + }, + "description": "Subscriptions delegation settings properties." + }, + "SubscriptionUpdateParameterProperties": { + "properties": { + "ownerId": { + "type": "string", + "description": "User identifier path: /users/{userId}" + }, + "scope": { + "type": "string", + "description": "Scope like /products/{productId} or /apis or /apis/{apiId}" + }, + "expirationDate": { + "type": "string", + "format": "date-time", + "description": "Subscription expiration date. The setting is for audit purposes only and the subscription is not automatically expired. The subscription lifecycle can be managed by using the `state` property. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard." + }, + "displayName": { + "type": "string", + "description": "Subscription name." + }, + "primaryKey": { + "type": "string", + "description": "Primary subscription key.", + "minLength": 1, + "maxLength": 256 + }, + "secondaryKey": { + "type": "string", + "description": "Secondary subscription key.", + "minLength": 1, + "maxLength": 256 + }, + "state": { + "type": "string", + "description": "Subscription state. Possible states are * active – the subscription is active, * suspended – the subscription is blocked, and the subscriber cannot call any APIs of the product, * submitted – the subscription request has been made by the developer, but has not yet been approved or rejected, * rejected – the subscription request has been denied by an administrator, * cancelled – the subscription has been cancelled by the developer or administrator, * expired – the subscription reached its expiration date and was deactivated.", + "enum": [ + "suspended", + "active", + "expired", + "submitted", + "rejected", + "cancelled" + ], + "x-ms-enum": { + "name": "SubscriptionState", + "modelAsString": false + } + }, + "stateComment": { + "type": "string", + "description": "Comments describing subscription state change by the administrator." + }, + "allowTracing": { + "type": "boolean", + "description": "Determines whether tracing can be enabled" + } + }, + "description": "Parameters supplied to the Update subscription operation." + }, + "SubscriptionUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SubscriptionUpdateParameterProperties", + "description": "Subscription Update contract properties." + } + }, + "description": "Subscription update details." + }, + "TagCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TagContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Tag list representation." + }, + "TagContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/TagContractProperties", + "description": "Tag entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Tag Contract details." + }, + "TagContractProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "Tag name.", + "maxLength": 160, + "minLength": 1 + } + }, + "required": [ + "displayName" + ], + "description": "Tag contract Properties." + }, + "TagCreateUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/TagContractProperties", + "description": "Properties supplied to Create Tag operation." + } + }, + "description": "Parameters supplied to Create/Update Tag operations." + }, + "TagDescriptionBaseProperties": { + "properties": { + "description": { + "type": "string", + "description": "Description of the Tag." + }, + "externalDocsUrl": { + "type": "string", + "description": "Absolute URL of external resources describing the tag.", + "maxLength": 2000 + }, + "externalDocsDescription": { + "type": "string", + "description": "Description of the external resources describing the tag." + } + }, + "description": "Parameters supplied to the Create TagDescription operation." + }, + "TagDescriptionCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TagDescriptionContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged TagDescription list representation." + }, + "TagDescriptionContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/TagDescriptionContractProperties", + "description": "TagDescription entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Contract details." + }, + "TagDescriptionContractProperties": { + "properties": { + "tagId": { + "type": "string", + "description": "Identifier of the tag in the form of /tags/{tagId}" + }, + "displayName": { + "type": "string", + "description": "Tag name.", + "maxLength": 160, + "minLength": 1 + } + }, + "allOf": [ + { + "$ref": "#/definitions/TagDescriptionBaseProperties" + } + ], + "description": "TagDescription contract Properties." + }, + "TagDescriptionCreateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/TagDescriptionBaseProperties", + "description": "Properties supplied to Create TagDescription operation." + } + }, + "description": "Parameters supplied to the Create TagDescription operation." + }, + "TagResourceCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TagResourceContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Tag list representation." + }, + "TagResourceContract": { + "properties": { + "tag": { + "$ref": "#/definitions/TagTagResourceContractProperties", + "description": "Tag associated with the resource." + }, + "api": { + "$ref": "#/definitions/ApiTagResourceContractProperties", + "description": "Api associated with the tag." + }, + "operation": { + "$ref": "#/definitions/OperationTagResourceContractProperties", + "description": "Operation associated with the tag." + }, + "product": { + "$ref": "#/definitions/ProductTagResourceContractProperties", + "description": "Product associated with the tag." + } + }, + "required": [ + "tag" + ], + "description": "TagResource contract properties." + }, + "TagTagResourceContractProperties": { + "properties": { + "id": { + "type": "string", + "description": "Tag identifier" + }, + "name": { + "type": "string", + "description": "Tag Name", + "minLength": 1, + "maxLength": 160 + } + }, + "description": "Contract defining the Tag property in the Tag Resource Contract" + }, + "TenantConfigurationSyncStateContract": { + "properties": { + "branch": { + "type": "string", + "description": "The name of Git branch." + }, + "commitId": { + "type": "string", + "description": "The latest commit Id." + }, + "isExport": { + "type": "boolean", + "description": "value indicating if last sync was save (true) or deploy (false) operation." + }, + "isSynced": { + "type": "boolean", + "description": "value indicating if last synchronization was later than the configuration change." + }, + "isGitEnabled": { + "type": "boolean", + "description": "value indicating whether Git configuration access is enabled." + }, + "syncDate": { + "type": "string", + "format": "date-time", + "description": "The date of the latest synchronization. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "configurationChangeDate": { + "type": "string", + "format": "date-time", + "description": "The date of the latest configuration change. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + } + }, + "description": "Tenant Configuration Synchronization State." + }, + "TermsOfServiceProperties": { + "properties": { + "text": { + "type": "string", + "description": "A terms of service text." + }, + "enabled": { + "type": "boolean", + "description": "Display terms of service during a sign-up process." + }, + "consentRequired": { + "type": "boolean", + "description": "Ask user for consent to the terms of service." + } + }, + "description": "Terms of service contract properties." + }, + "TokenBodyParameterContract": { + "properties": { + "name": { + "type": "string", + "description": "body parameter name." + }, + "value": { + "type": "string", + "description": "body parameter value." + } + }, + "required": [ + "name", + "value" + ], + "description": "OAuth acquire token request body parameter (www-url-form-encoded)." + }, + "UserCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/UserContract" + }, + "description": "Page values." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "Paged Users list representation." + }, + "UserContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/UserContractProperties", + "description": "User entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "User details." + }, + "UserContractProperties": { + "properties": { + "firstName": { + "type": "string", + "description": "First name." + }, + "lastName": { + "type": "string", + "description": "Last name." + }, + "email": { + "type": "string", + "description": "Email address." + }, + "registrationDate": { + "type": "string", + "format": "date-time", + "description": "Date of user registration. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + }, + "groups": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./definitions.json#/definitions/GroupContractProperties" + }, + "description": "Collection of groups user is part of." + } + }, + "allOf": [ + { + "$ref": "#/definitions/UserEntityBaseParameters" + } + ], + "description": "User profile." + }, + "UserCreateParameterProperties": { + "properties": { + "email": { + "type": "string", + "description": "Email address. Must not be empty and must be unique within the service instance.", + "minLength": 1, + "maxLength": 254 + }, + "firstName": { + "type": "string", + "description": "First name.", + "minLength": 1, + "maxLength": 100 + }, + "lastName": { + "type": "string", + "description": "Last name.", + "minLength": 1, + "maxLength": 100 + }, + "password": { + "type": "string", + "description": "User Password. If no value is provided, a default password is generated." + }, + "appType": { + "type": "string", + "description": "Determines the type of application which send the create user request. Default is old publisher portal.", + "enum": [ + "developerPortal" + ], + "x-ms-enum": { + "name": "AppType", + "modelAsString": true, + "values": [ + { + "value": "developerPortal", + "description": "User create request was sent by new developer portal." + } + ] + } + }, + "confirmation": { + "type": "string", + "description": "Determines the type of confirmation e-mail that will be sent to the newly created user.", + "enum": [ + "signup", + "invite" + ], + "x-ms-enum": { + "name": "Confirmation", + "modelAsString": true, + "values": [ + { + "value": "signup", + "description": "Send an e-mail to the user confirming they have successfully signed up." + }, + { + "value": "invite", + "description": "Send an e-mail inviting the user to sign-up and complete registration." + } + ] + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/UserEntityBaseParameters" + } + ], + "required": [ + "email", + "firstName", + "lastName" + ], + "description": "Parameters supplied to the Create User operation." + }, + "UserCreateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/UserCreateParameterProperties", + "description": "User entity create contract properties." + } + }, + "description": "User create details." + }, + "UserEntityBaseParameters": { + "properties": { + "state": { + "type": "string", + "description": "Account state. Specifies whether the user is active or not. Blocked users are unable to sign into the developer portal or call any APIs of subscribed products. Default state is Active.", + "enum": [ + "active", + "blocked", + "pending", + "deleted" + ], + "default": "active", + "x-ms-enum": { + "name": "UserState", + "modelAsString": true, + "values": [ + { + "value": "active", + "description": "User state is active." + }, + { + "value": "blocked", + "description": "User is blocked. Blocked users cannot authenticate at developer portal or call API." + }, + { + "value": "pending", + "description": "User account is pending. Requires identity confirmation before it can be made active." + }, + { + "value": "deleted", + "description": "User account is closed. All identities and related entities are removed." + } + ] + } + }, + "note": { + "type": "string", + "description": "Optional note about a user set by the administrator." + }, + "identities": { + "type": "array", + "items": { + "$ref": "#/definitions/UserIdentityContract" + }, + "description": "Collection of user identities." + } + }, + "description": "User Entity Base Parameters set." + }, + "UserIdentityCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/UserIdentityContract" + }, + "description": "User Identity values." + }, + "count": { + "type": "integer", + "format": "int64", + "description": "Total record count number across all pages." + }, + "nextLink": { + "type": "string", + "description": "Next page link if any." + } + }, + "description": "List of Users Identity list representation." + }, + "UserIdentityContract": { + "properties": { + "provider": { + "type": "string", + "description": "Identity provider name." + }, + "id": { + "type": "string", + "description": "Identifier value within provider." + } + }, + "description": "User identity details." + }, + "UserTokenParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/UserTokenParameterProperties", + "description": "User Token Parameter contract properties." + } + }, + "description": "Get User Token parameters." + }, + "UserTokenParameterProperties": { + "properties": { + "keyType": { + "type": "string", + "description": "The Key to be used to generate token for user.", + "enum": [ + "primary", + "secondary" + ], + "default": "primary", + "x-ms-enum": { + "name": "KeyType", + "modelAsString": false + } + }, + "expiry": { + "type": "string", + "format": "date-time", + "description": "The Expiry time of the Token. Maximum token expiry time is set to 30 days. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + } + }, + "required": [ + "keyType", + "expiry" + ], + "description": "Parameters supplied to the Get User Token operation." + }, + "UserTokenResult": { + "properties": { + "value": { + "type": "string", + "description": "Shared Access Authorization token for the User." + } + }, + "description": "Get User Token response details." + }, + "UserUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/UserUpdateParametersProperties", + "description": "User entity update contract properties." + } + }, + "description": "User update parameters." + }, + "UserUpdateParametersProperties": { + "properties": { + "email": { + "type": "string", + "description": "Email address. Must not be empty and must be unique within the service instance.", + "minLength": 1, + "maxLength": 254 + }, + "password": { + "type": "string", + "description": "User Password." + }, + "firstName": { + "type": "string", + "description": "First name.", + "minLength": 1, + "maxLength": 100 + }, + "lastName": { + "type": "string", + "description": "Last name.", + "minLength": 1, + "maxLength": 100 + } + }, + "allOf": [ + { + "$ref": "#/definitions/UserEntityBaseParameters" + } + ], + "description": "Parameters supplied to the Update User operation." + }, + "X509CertificateName": { + "properties": { + "name": { + "description": "Common Name of the Certificate.", + "type": "string" + }, + "issuerCertificateThumbprint": { + "description": "Thumbprint for the Issuer of the Certificate.", + "type": "string" + } + }, + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-windows-cluster-x509-security" + }, + "description": "Properties of server X509Names." + }, + "ClientSecretContract": { + "properties": { + "clientSecret": { + "type": "string", + "description": "Client or app secret used in IdentityProviders, Aad, OpenID or OAuth." + } + }, + "description": "Client or app secret used in IdentityProviders, Aad, OpenID or OAuth." + }, + "PropertyValueContract": { + "properties": { + "value": { + "type": "string", + "description": "This is secret value of the NamedValue entity." + } + }, + "description": "Client or app secret used in IdentityProviders, Aad, OpenID or OAuth." + }, + "PortalSettingValidationKeyContract": { + "properties": { + "validationKey": { + "type": "string", + "description": "This is secret value of the validation key in portal settings." + } + }, + "description": "Client or app secret used in IdentityProviders, Aad, OpenID or OAuth." + }, + "SubscriptionKeysContract": { + "properties": { + "primaryKey": { + "type": "string", + "description": "Subscription primary key.", + "minLength": 1, + "maxLength": 256 + }, + "secondaryKey": { + "type": "string", + "description": "Subscription secondary key.", + "minLength": 1, + "maxLength": 256 + } + }, + "description": "Subscription keys." + }, + "GatewayCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GatewayContract" + }, + "description": "Page values.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Next page link if any.", + "readOnly": true + } + }, + "description": "Paged Gateway list representation." + }, + "GatewayContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GatewayContractProperties", + "description": "Gateway details." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Gateway details." + }, + "GatewayContractProperties": { + "properties": { + "locationData": { + "$ref": "#/definitions/ResourceLocationDataContract", + "description": "Gateway location." + }, + "description": { + "type": "string", + "description": "Gateway description", + "maxLength": 1000 + } + }, + "description": "Properties of the Gateway contract." + }, + "ResourceLocationDataContract": { + "properties": { + "name": { + "type": "string", + "description": "A canonical name for the geographic or physical location.", + "maxLength": 256 + }, + "city": { + "type": "string", + "description": "The city or locality where the resource is located.", + "maxLength": 256 + }, + "district": { + "type": "string", + "description": "The district, state, or province where the resource is located.", + "maxLength": 256 + }, + "countryOrRegion": { + "type": "string", + "description": "The country or region where the resource is located.", + "maxLength": 256 + } + }, + "required": [ + "name" + ], + "description": "Resource location data properties." + }, + "GatewayKeysContract": { + "properties": { + "primary": { + "type": "string", + "description": "Primary gateway key." + }, + "secondary": { + "type": "string", + "description": "Secondary gateway key." + } + }, + "description": "Gateway authentication keys." + }, + "GatewayTokenRequestContract": { + "properties": { + "keyType": { + "type": "string", + "description": "The Key to be used to generate gateway token.", + "enum": [ + "primary", + "secondary" + ], + "default": "primary", + "x-ms-enum": { + "name": "KeyType", + "modelAsString": false + } + }, + "expiry": { + "type": "string", + "format": "date-time", + "description": "The Expiry time of the Token. Maximum token expiry time is set to 30 days. The date conforms to the following format: `yyyy-MM-ddTHH:mm:ssZ` as specified by the ISO 8601 standard.\n" + } + }, + "required": [ + "keyType", + "expiry" + ], + "description": "Gateway token request contract properties." + }, + "GatewayTokenContract": { + "properties": { + "value": { + "type": "string", + "description": "Shared Access Authentication token value for the Gateway." + } + }, + "description": "Gateway access token." + }, + "GatewayKeyRegenerationRequestContract": { + "properties": { + "keyType": { + "type": "string", + "description": "The Key being regenerated.", + "enum": [ + "primary", + "secondary" + ], + "x-ms-enum": { + "name": "KeyType", + "modelAsString": false + } + } + }, + "required": [ + "keyType" + ], + "description": "Gateway key regeneration request contract properties." + }, + "GatewayHostnameConfigurationCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GatewayHostnameConfigurationContract" + }, + "description": "Page values.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Next page link if any.", + "readOnly": true + } + }, + "description": "Paged Gateway hostname configuration list representation." + }, + "GatewayHostnameConfigurationContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GatewayHostnameConfigurationContractProperties", + "description": "Gateway hostname configuration details." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Gateway hostname configuration details." + }, + "GatewayHostnameConfigurationContractProperties": { + "properties": { + "hostname": { + "type": "string", + "description": "Hostname value. Supports valid domain name, partial or full wildcard" + }, + "certificateId": { + "type": "string", + "description": "Identifier of Certificate entity that will be used for TLS connection establishment" + }, + "negotiateClientCertificate": { + "type": "boolean", + "description": "Determines whether gateway requests client certificate" + } + }, + "description": "Gateway hostname configuration details." + }, + "AssociationContract": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "properties": { + "provisioningState": { + "type": "string", + "description": "Provisioning state.", + "enum": [ + "created" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": false + } + } + }, + "description": "Association entity contract properties." + } + }, + "allOf": [ + { + "$ref": "./apimanagement.json#/definitions/Resource" + } + ], + "description": "Association entity details." + } + }, + "parameters": {} +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementApplyNetworkConfigurationUpdates.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementApplyNetworkConfigurationUpdates.json new file mode 100644 index 000000000000..1d9eb86172ab --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementApplyNetworkConfigurationUpdates.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "parameters": { + "location": "west us" + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2019-12-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "UID": "52ed5986-717b-45b4-b17c-3df8db372cff" + }, + "location": "East Asia", + "etag": "AAAAAAAXX6Y=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "Contoso", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2015-09-22T01:50:34.7921566Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [], + "publicIPAddresses": [ + "207.46.155.24" + ], + "virtualNetworkConfiguration": { + "subnetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/eastUsVirtualNetwork/subnets/apimSubnet" + }, + "virtualNetworkType": "External" + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementBackendReconnect.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementBackendReconnect.json new file mode 100644 index 000000000000..ef84823bcd09 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementBackendReconnect.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "backendId": "proxybackend", + "parameters": { + "properties": { + "after": "PT3S" + } + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateAILogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateAILogger.json new file mode 100644 index 000000000000..ad1d38c31abe --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateAILogger.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "loggerId": "loggerId", + "parameters": { + "properties": { + "loggerType": "applicationInsights", + "description": "adding a new logger", + "credentials": { + "instrumentationKey": "11................a1" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/loggerId", + "type": "Microsoft.ApiManagement/service/loggers", + "name": "loggerId", + "properties": { + "loggerType": "applicationInsights", + "description": null, + "credentials": { + "instrumentationKey": "{{5a.......2a}}" + }, + "isBuffered": false, + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/microsoft.insights/components/airesource" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/loggerId", + "type": "Microsoft.ApiManagement/service/loggers", + "name": "loggerId", + "properties": { + "loggerType": "applicationInsights", + "description": null, + "credentials": { + "instrumentationKey": "{{5a.......2a}}" + }, + "isBuffered": false + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApi.json new file mode 100644 index 000000000000..c1ad48276acf --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApi.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "tempgroup", + "parameters": { + "properties": { + "description": "apidescription5200", + "authenticationSettings": { + "oAuth2": { + "authorizationServerId": "authorizationServerId2283", + "scope": "oauth2scope2580" + } + }, + "subscriptionKeyParameterNames": { + "header": "header4520", + "query": "query3037" + }, + "displayName": "apiname1463", + "serviceUrl": "http://newechoapi.cloudapp.net/api", + "path": "newapiPath", + "protocols": [ + "https", + "http" + ] + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/apiid9419", + "type": "Microsoft.ApiManagement/service/apis", + "name": "apiid9419", + "properties": { + "displayName": "apiname1463", + "apiRevision": "1", + "description": "apidescription5200", + "serviceUrl": "http://newechoapi.cloudapp.net/api", + "path": "newapiPath", + "protocols": [ + "http", + "https" + ], + "authenticationSettings": { + "oAuth2": { + "authorizationServerId": "authorizationServerId2283", + "scope": "oauth2scope2580" + } + }, + "subscriptionKeyParameterNames": { + "header": "header4520", + "query": "query3037" + }, + "isCurrent": true, + "isOnline": true + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2019-12-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/apiid9419", + "type": "Microsoft.ApiManagement/service/apis", + "name": "apiid9419", + "properties": { + "displayName": "apiname1463", + "apiRevision": "1", + "description": "apidescription5200", + "serviceUrl": "http://newechoapi.cloudapp.net/api", + "path": "newapiPath", + "protocols": [ + "http", + "https" + ], + "authenticationSettings": { + "oAuth2": { + "authorizationServerId": "authorizationServerId2283", + "scope": "oauth2scope2580" + } + }, + "subscriptionKeyParameterNames": { + "header": "header4520", + "query": "query3037" + }, + "isCurrent": true, + "isOnline": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiClone.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiClone.json new file mode 100644 index 000000000000..9f97b4d34826 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiClone.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "echo-api2", + "parameters": { + "properties": { + "displayName": "Echo API2", + "description": "Copy of Existing Echo Api including Operations.", + "subscriptionRequired": true, + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "echo2", + "protocols": [ + "http", + "https" + ], + "isCurrent": true, + "sourceApiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/58a4aeac497000007d040001" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echoapi2", + "type": "Microsoft.ApiManagement/service/apis", + "name": "echoapi2", + "properties": { + "displayName": "Echo API2", + "apiRevision": "1", + "description": "Copy of Existing Echo Api including Operations.", + "subscriptionRequired": true, + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "echo2", + "protocols": [ + "http", + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2019-12-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echoapi2", + "type": "Microsoft.ApiManagement/service/apis", + "name": "echoapi2", + "properties": { + "displayName": "Echo API2", + "apiRevision": "1", + "description": "Copy of Existing Echo Api including Operations.", + "subscriptionRequired": true, + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "echo2", + "protocols": [ + "http", + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiDiagnostic.json new file mode 100644 index 000000000000..f5e479f8ed67 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiDiagnostic.json @@ -0,0 +1,160 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "diagnosticId": "applicationinsights", + "apiId": "57d1f7558aa04f15146d9d8a", + "parameters": { + "properties": { + "alwaysLog": "allErrors", + "loggerId": "/loggers/applicationinsights", + "sampling": { + "samplingType": "fixed", + "percentage": 50 + }, + "frontend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + }, + "backend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/diagnostics/applicationinsights", + "type": "Microsoft.ApiManagement/service/apis/diagnostics", + "name": "applicationinsights", + "properties": { + "alwaysLog": "allErrors", + "loggerId": "/loggers/applicationinsights", + "sampling": { + "samplingType": "fixed", + "percentage": 50 + }, + "frontend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + }, + "backend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/diagnostics/applicationinsights", + "type": "Microsoft.ApiManagement/service/apis/diagnostics", + "name": "applicationinsights", + "properties": { + "alwaysLog": "allErrors", + "loggerId": "/loggers/applicationinsights", + "sampling": { + "samplingType": "fixed", + "percentage": 50 + }, + "frontend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + }, + "backend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiIssue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiIssue.json new file mode 100644 index 000000000000..6a37a846cef9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiIssue.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "apiId": "57d1f7558aa04f15146d9d8a", + "parameters": { + "properties": { + "title": "New API issue", + "description": "New API issue description", + "createdDate": "2018-02-01T22:21:20.467Z", + "state": "open", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc", + "type": "Microsoft.ApiManagement/service/apis/issues", + "name": "57d2ef278aa04f0ad01d6cdc", + "properties": { + "title": "New API issue", + "description": "New API issue description", + "createdDate": "2018-02-01T22:21:20.467Z", + "state": "open", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc", + "type": "Microsoft.ApiManagement/service/apis/issues", + "name": "57d2ef278aa04f0ad01d6cdc", + "properties": { + "title": "New API issue", + "description": "New API issue description", + "createdDate": "2018-02-01T22:21:20.467Z", + "state": "open", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiIssueAttachment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiIssueAttachment.json new file mode 100644 index 000000000000..47e402ef52e9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiIssueAttachment.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "apiId": "57d1f7558aa04f15146d9d8a", + "attachmentId": "57d2ef278aa04f0888cba3f3", + "parameters": { + "properties": { + "title": "Issue attachment.", + "contentFormat": "image/jpeg", + "content": "IEJhc2U2NA==" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc/attachments/57d2ef278aa04f0888cba3f3", + "type": "Microsoft.ApiManagement/service/apis/issues/attachments", + "name": "57d2ef278aa04f0888cba3f3", + "properties": { + "title": "Issue attachment.", + "contentFormat": "link", + "content": "https://.../image.jpg" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc/attachments/57d2ef278aa04f0888cba3f3", + "type": "Microsoft.ApiManagement/service/apis/issues/attachments", + "name": "57d2ef278aa04f0888cba3f3", + "properties": { + "title": "Issue attachment.", + "contentFormat": "link", + "content": "https://.../image.jpg" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiIssueComment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiIssueComment.json new file mode 100644 index 000000000000..13ad9e3a84f4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiIssueComment.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "apiId": "57d1f7558aa04f15146d9d8a", + "commentId": "599e29ab193c3c0bd0b3e2fb", + "parameters": { + "properties": { + "text": "Issue comment.", + "createdDate": "2018-02-01T22:21:20.467Z", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc/comments/599e29ab193c3c0bd0b3e2fb", + "type": "Microsoft.ApiManagement/service/apis/issues/comments", + "name": "599e29ab193c3c0bd0b3e2fb", + "properties": { + "text": "Issue comment.", + "createdDate": "2018-02-01T22:21:20.467Z", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc/comments/599e29ab193c3c0bd0b3e2fb", + "type": "Microsoft.ApiManagement/service/apis/issues/comments", + "name": "599e29ab193c3c0bd0b3e2fb", + "properties": { + "text": "Issue comment.", + "createdDate": "2018-02-01T22:21:20.467Z", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiNewVersionUsingExistingApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiNewVersionUsingExistingApi.json new file mode 100644 index 000000000000..28d0480ecb4b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiNewVersionUsingExistingApi.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "echoapiv3", + "parameters": { + "properties": { + "displayName": "Echo API2", + "description": "Create Echo API into a new Version using Existing Version Set and Copy all Operations.", + "subscriptionRequired": true, + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "echo2", + "protocols": [ + "http", + "https" + ], + "isCurrent": true, + "apiVersion": "v4", + "sourceApiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echoPath", + "apiVersionSetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/aa9c59e6-c0cd-4258-9356-9ca7d2f0b458" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echoapiv3", + "type": "Microsoft.ApiManagement/service/apis", + "name": "echoapiv3", + "properties": { + "displayName": "Echo API2", + "apiRevision": "1", + "description": "Create Echo API into a new Version using Existing Version Set and Copy all Operations.", + "subscriptionRequired": true, + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "echo2", + "protocols": [ + "http", + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true, + "apiVersion": "v4", + "apiVersionSetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/aa9c59e6-c0cd-4258-9356-9ca7d2f0b458", + "apiVersionSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/aa9c59e6-c0cd-4258-9356-9ca7d2f0b458", + "name": "Echo API2", + "versioningScheme": "Segment" + } + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2019-12-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echoapiv3", + "type": "Microsoft.ApiManagement/service/apis", + "name": "echoapiv3", + "properties": { + "displayName": "Echo API2", + "apiRevision": "1", + "description": "Create Echo API into a new Version using Existing Version Set and Copy all Operations.", + "subscriptionRequired": true, + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "echo2", + "protocols": [ + "http", + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true, + "apiVersion": "v4", + "apiVersionSetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/aa9c59e6-c0cd-4258-9356-9ca7d2f0b458", + "apiVersionSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/aa9c59e6-c0cd-4258-9356-9ca7d2f0b458", + "name": "Echo API2", + "versioningScheme": "Segment" + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiOperation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiOperation.json new file mode 100644 index 000000000000..aa583d1e4a53 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiOperation.json @@ -0,0 +1,130 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "PetStoreTemplate2", + "operationId": "newoperations", + "parameters": { + "properties": { + "displayName": "createUser2", + "method": "POST", + "urlTemplate": "/user1", + "templateParameters": [], + "description": "This can only be done by the logged in user.", + "request": { + "description": "Created user object", + "queryParameters": [], + "headers": [], + "representations": [ + { + "contentType": "application/json", + "schemaId": "592f6c1d0af5840ca8897f0c", + "typeName": "User" + } + ] + }, + "responses": [ + { + "statusCode": 200, + "description": "successful operation", + "representations": [ + { + "contentType": "application/xml" + }, + { + "contentType": "application/json" + } + ], + "headers": [] + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/PetStoreTemplate2/operations/newoperations", + "type": "Microsoft.ApiManagement/service/apis/operations", + "name": "newoperations", + "properties": { + "displayName": "createUser2", + "method": "POST", + "urlTemplate": "/user1", + "templateParameters": [], + "description": "This can only be done by the logged in user.", + "request": { + "description": "Created user object", + "queryParameters": [], + "headers": [], + "representations": [ + { + "contentType": "application/json", + "schemaId": "592f6c1d0af5840ca8897f0c", + "typeName": "User" + } + ] + }, + "responses": [ + { + "statusCode": 200, + "description": "successful operation", + "representations": [ + { + "contentType": "application/xml" + }, + { + "contentType": "application/json" + } + ], + "headers": [] + } + ] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/PetStoreTemplate2/operations/newoperations", + "type": "Microsoft.ApiManagement/service/apis/operations", + "name": "newoperations", + "properties": { + "displayName": "createUser2", + "method": "POST", + "urlTemplate": "/user1", + "templateParameters": [], + "description": "This can only be done by the logged in user.", + "request": { + "description": "Created user object", + "queryParameters": [], + "headers": [], + "representations": [ + { + "contentType": "application/json", + "schemaId": "592f6c1d0af5840ca8897f0c", + "typeName": "User" + } + ] + }, + "responses": [ + { + "statusCode": 200, + "description": "successful operation", + "representations": [ + { + "contentType": "application/xml" + }, + { + "contentType": "application/json" + } + ], + "headers": [] + } + ] + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiOperationPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiOperationPolicy.json new file mode 100644 index 000000000000..c3f682a88c54 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiOperationPolicy.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "5600b57e7e8880006a040001", + "operationId": "5600b57e7e8880006a080001", + "policyId": "policy", + "If-Match": "*", + "parameters": { + "properties": { + "format": "xml", + "value": " " + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5600b57e7e8880006a040001/operations/5600b57e7e8880006a080001/policies/policy", + "type": "Microsoft.ApiManagement/service/apis/operations/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5600b57e7e8880006a040001/operations/5600b57e7e8880006a080001/policies/policy", + "type": "Microsoft.ApiManagement/service/apis/operations/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiOperationTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiOperationTag.json new file mode 100644 index 000000000000..540e98b5904a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiOperationTag.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "5931a75ae4bbd512a88c680b", + "operationId": "5931a75ae4bbd512a88c680a", + "tagId": "tagId1" + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/tagId1", + "type": "Microsoft.ApiManagement/service/tags", + "name": "tagId1", + "properties": { + "displayName": "tag1" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/tagId1", + "type": "Microsoft.ApiManagement/service/tags", + "name": "tagId1", + "properties": { + "displayName": "tag1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiPolicy.json new file mode 100644 index 000000000000..ee6f7a0b6f06 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiPolicy.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "5600b57e7e8880006a040001", + "policyId": "policy", + "If-Match": "*", + "parameters": { + "properties": { + "format": "xml", + "value": " " + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5600b57e7e8880006a040001/policies/policy", + "type": "Microsoft.ApiManagement/service/apis/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5600b57e7e8880006a040001/policies/policy", + "type": "Microsoft.ApiManagement/service/apis/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiPolicyNonXmlEncoded.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiPolicyNonXmlEncoded.json new file mode 100644 index 000000000000..d3ead917d1b0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiPolicyNonXmlEncoded.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "5600b57e7e8880006a040001", + "policyId": "policy", + "If-Match": "*", + "parameters": { + "properties": { + "value": "\r\n \r\n \r\n \r\n \"@(context.Request.Headers.FirstOrDefault(h => h.Ke==\"Via\"))\" \r\n \r\n \r\n ", + "format": "rawxml" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/4c1a3bc6-89f9-46fe-a175-5d8984b25095/resourcegroups/Api-DF-West-US/providers/Microsoft.ApiManagement/service/samirmsiservice2/apis/echo-api/operations/create-resource/policies/policy", + "type": "Microsoft.ApiManagement/service/apis/operations/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \"@(context.Request.Headers.FirstOrDefault(h => h.Ke==\"Via\"))\" \r\n \r\n \r\n" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/4c1a3bc6-89f9-46fe-a175-5d8984b25095/resourcegroups/Api-DF-West-US/providers/Microsoft.ApiManagement/service/samirmsiservice2/apis/echo-api/operations/create-resource/policies/policy", + "type": "Microsoft.ApiManagement/service/apis/operations/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \"@(context.Request.Headers.FirstOrDefault(h => h.Ke==\"Via\"))\" \r\n \r\n \r\n" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiRelease.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiRelease.json new file mode 100644 index 000000000000..43078347afb2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiRelease.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "a1", + "releaseId": "testrev", + "parameters": { + "properties": { + "apiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1", + "notes": "yahooagain" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1/releases/testrev", + "type": "Microsoft.ApiManagement/service/apis/releases", + "name": "testrev", + "properties": { + "apiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1", + "createdDateTime": "2018-02-08T20:52:00.65Z", + "updatedDateTime": "2018-02-08T20:52:00.65Z", + "notes": "yahooagain" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1/releases/testrev", + "type": "Microsoft.ApiManagement/service/apis/releases", + "name": "testrev", + "properties": { + "apiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1", + "createdDateTime": "2018-02-08T20:52:00.65Z", + "updatedDateTime": "2018-02-08T20:52:00.65Z", + "notes": "yahooagain" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiRevisionFromExistingApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiRevisionFromExistingApi.json new file mode 100644 index 000000000000..8f6b4fd05da2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiRevisionFromExistingApi.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "echo-api;rev=3", + "parameters": { + "properties": { + "path": "echo", + "serviceUrl": "http://echoapi.cloudapp.net/apiv3", + "sourceApiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api", + "apiRevisionDescription": "Creating a Revision of an existing API" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api;rev=3", + "type": "Microsoft.ApiManagement/service/apis", + "name": "echo-api;rev=3", + "properties": { + "displayName": "Echo API", + "apiRevision": "3", + "subscriptionRequired": true, + "serviceUrl": "http://echoapi.cloudapp.net/apiv3", + "path": "echo", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "apiRevisionDescription": "Creating a Revision of an existing API" + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2019-12-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api;rev=3", + "type": "Microsoft.ApiManagement/service/apis", + "name": "echo-api;rev=3", + "properties": { + "displayName": "Echo API", + "apiRevision": "3", + "subscriptionRequired": true, + "serviceUrl": "http://echoapi.cloudapp.net/apiv3", + "path": "echo", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "apiRevisionDescription": "Creating a Revision of an existing API" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiSchema.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiSchema.json new file mode 100644 index 000000000000..d8e372bb5405 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiSchema.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "59d6bb8f1f7fab13dc67ec9b", + "schemaId": "ec12520d-9d48-4e7b-8f39-698ca2ac63f1", + "parameters": { + "properties": { + "contentType": "application/vnd.ms-azure-apim.xsd+xml", + "document": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/59d6bb8f1f7fab13dc67ec9b/schemas/ec12520d-9d48-4e7b-8f39-698ca2ac63f1?api-version=2019-12-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/59d6bb8f1f7fab13dc67ec9b/schemas/ec12520d-9d48-4e7b-8f39-698ca2ac63f1", + "type": "Microsoft.ApiManagement/service/apis/schemas", + "name": "ec12520d-9d48-4e7b-8f39-698ca2ac63f1", + "properties": { + "contentType": "application/vnd.ms-azure-apim.xsd+xml", + "document": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/59d6bb8f1f7fab13dc67ec9b/schemas/ec12520d-9d48-4e7b-8f39-698ca2ac63f1", + "type": "Microsoft.ApiManagement/service/apis/schemas", + "name": "ec12520d-9d48-4e7b-8f39-698ca2ac63f1", + "properties": { + "contentType": "application/vnd.ms-azure-apim.xsd+xml", + "document": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiTag.json new file mode 100644 index 000000000000..83c7ca9ac303 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiTag.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "5931a75ae4bbd512a88c680b", + "tagId": "tagId1" + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/tagId1", + "type": "Microsoft.ApiManagement/service/tags", + "name": "tagId1", + "properties": { + "displayName": "tag1" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/tagId1", + "type": "Microsoft.ApiManagement/service/tags", + "name": "tagId1", + "properties": { + "displayName": "tag1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiTagDescription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiTagDescription.json new file mode 100644 index 000000000000..abce73e357a7 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiTagDescription.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "5931a75ae4bbd512a88c680b", + "tagDescriptionId": "tagId1", + "parameters": { + "properties": { + "description": "Some description that will be displayed for operation's tag if the tag is assigned to operation of the API", + "externalDocsUrl": "http://some.url/additionaldoc", + "externalDocsDescription": "Description of the external docs resource" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5931a75ae4bbd512a88c680b/tagDescriptions/tagId1", + "type": "Microsoft.ApiManagement/service/apis/tagDescriptions", + "name": "tagId1", + "properties": { + "tagId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/tagId1", + "displayName": "tag1", + "description": "Some description that will be displayed for operation's tag if the tag is assigned to operation of the API", + "externalDocsDescription": "some additional info", + "externalDocsUrl": "http://some_url.com" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5931a75ae4bbd512a88c680b/tagDescriptions/tagId1", + "type": "Microsoft.ApiManagement/service/apis/tagDescriptions", + "name": "tagId1", + "properties": { + "tagId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/tagId1", + "displayName": "tag1", + "description": "Some description that will be displayed for operation's tag if the tag is assigned to operation of the API", + "externalDocsDescription": "some additional info", + "externalDocsUrl": "http://some_url.com" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiUsingImportOverrideServiceUrl.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiUsingImportOverrideServiceUrl.json new file mode 100644 index 000000000000..495f08091b3e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiUsingImportOverrideServiceUrl.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "apidocs", + "parameters": { + "properties": { + "format": "swagger-link", + "value": "http://apimpimportviaurl.azurewebsites.net/api/apidocs/", + "path": "petstoreapi123", + "serviceUrl": "http://petstore.swagger.wordnik.com/api" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/apidocs", + "type": "Microsoft.ApiManagement/service/apis", + "name": "apidocs", + "properties": { + "displayName": "Swagger Sample App", + "apiRevision": "1", + "description": "This is a sample server Petstore server. You can find out more about Swagger \n at http://swagger.wordnik.com or on irc.freenode.net, #swagger. For this sample,\n you can use the api key \"special-key\" to test the authorization filters", + "serviceUrl": "http://petstore.swagger.wordnik.com/api", + "path": "petstoreapi123", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/apidocs?api-version=2019-12-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/apidocs", + "type": "Microsoft.ApiManagement/service/apis", + "name": "apidocs", + "properties": { + "displayName": "Swagger Sample App", + "apiRevision": "1", + "description": "This is a sample server Petstore server. You can find out more about Swagger \n at http://swagger.wordnik.com or on irc.freenode.net, #swagger. For this sample,\n you can use the api key \"special-key\" to test the authorization filters", + "serviceUrl": "http://petstore.swagger.wordnik.com/api", + "path": "petstoreapi123", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiUsingOai3Import.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiUsingOai3Import.json new file mode 100644 index 000000000000..160488451be1 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiUsingOai3Import.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "petstore", + "parameters": { + "properties": { + "format": "openapi-link", + "value": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore.yaml", + "path": "petstore" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/petstoreapi", + "type": "Microsoft.ApiManagement/service/apis", + "name": "petstoreapi", + "properties": { + "displayName": "Swagger Petstore", + "apiRevision": "1", + "serviceUrl": "http://petstore.swagger.io/v1", + "path": "petstore", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2019-12-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/petstoreapi", + "type": "Microsoft.ApiManagement/service/apis", + "name": "petstoreapi", + "properties": { + "displayName": "Swagger Petstore", + "apiRevision": "1", + "serviceUrl": "http://petstore.swagger.io/v1", + "path": "petstore", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiUsingSwaggerImport.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiUsingSwaggerImport.json new file mode 100644 index 000000000000..31d94e580b3a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiUsingSwaggerImport.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "petstore", + "parameters": { + "properties": { + "format": "swagger-link-json", + "value": "http://petstore.swagger.io/v2/swagger.json", + "path": "petstore" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/petstoreapi", + "type": "Microsoft.ApiManagement/service/apis", + "name": "petstoreapi", + "properties": { + "displayName": "Swagger Petstore", + "apiRevision": "1", + "description": "This is a sample server Petstore server. You can find out more about Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net, #swagger](http://swagger.io/irc/). For this sample, you can use the api key `special-key` to test the authorization filters.", + "serviceUrl": "http://petstore.swagger.io/v2", + "path": "petstore", + "protocols": [ + "http" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2019-12-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/petstoreapi", + "type": "Microsoft.ApiManagement/service/apis", + "name": "petstoreapi", + "properties": { + "displayName": "Swagger Petstore", + "apiRevision": "1", + "description": "This is a sample server Petstore server. You can find out more about Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net, #swagger](http://swagger.io/irc/). For this sample, you can use the api key `special-key` to test the authorization filters.", + "serviceUrl": "http://petstore.swagger.io/v2", + "path": "petstore", + "protocols": [ + "http" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiUsingWadlImport.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiUsingWadlImport.json new file mode 100644 index 000000000000..59d3323074ae --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiUsingWadlImport.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "petstore", + "parameters": { + "properties": { + "format": "wadl-link-json", + "value": "https://developer.cisco.com/media/wae-release-6-2-api-reference/wae-collector-rest-api/application.wadl", + "path": "collector" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/collectorwadl", + "type": "Microsoft.ApiManagement/service/apis", + "name": "collectorwadl", + "properties": { + "displayName": "http://localhost:8080/collector-northbound", + "apiRevision": "1", + "description": "", + "serviceUrl": "http://localhost:8080/collector-northbound", + "path": "collector", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2019-12-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/collectorwadl", + "type": "Microsoft.ApiManagement/service/apis", + "name": "collectorwadl", + "properties": { + "displayName": "http://localhost:8080/collector-northbound", + "apiRevision": "1", + "description": "", + "serviceUrl": "http://localhost:8080/collector-northbound", + "path": "collector", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiVersionSet.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiVersionSet.json new file mode 100644 index 000000000000..bcad907ca8d9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiVersionSet.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "versionSetId": "api1", + "parameters": { + "properties": { + "displayName": "api set 1", + "versioningScheme": "Segment", + "description": "Version configuration" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/api1", + "type": "Microsoft.ApiManagement/service/api-version-sets", + "name": "api1", + "properties": { + "displayName": "api set 1", + "versioningScheme": "Segment", + "description": "Version configuration" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/api1", + "type": "Microsoft.ApiManagement/service/api-version-sets", + "name": "api1", + "properties": { + "displayName": "api set 1", + "versioningScheme": "Segment", + "description": "Version configuration" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiWithOpenIdConnect.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiWithOpenIdConnect.json new file mode 100644 index 000000000000..706e971aaf2d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateApiWithOpenIdConnect.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "tempgroup", + "parameters": { + "properties": { + "displayName": "Swagger Petstore", + "description": "This is a sample server Petstore server. You can find out more about Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net, #swagger](http://swagger.io/irc/). For this sample, you can use the api key `special-key` to test the authorization filters.", + "serviceUrl": "http://petstore.swagger.io/v2", + "path": "petstore", + "protocols": [ + "https" + ], + "authenticationSettings": { + "openid": { + "openidProviderId": "testopenid", + "bearerTokenSendingMethods": [ + "authorizationHeader" + ] + } + }, + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/58da4c4ccdae970a08121230", + "type": "Microsoft.ApiManagement/service/apis", + "name": "58da4c4ccdae970a08121230", + "properties": { + "displayName": "Swagger Petstore", + "apiRevision": "1", + "description": "This is a sample server Petstore server. You can find out more about Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net, #swagger](http://swagger.io/irc/). For this sample, you can use the api key `special-key` to test the authorization filters.", + "serviceUrl": "http://petstore.swagger.io/v2", + "path": "petstore", + "protocols": [ + "https" + ], + "authenticationSettings": { + "openid": { + "openidProviderId": "testopenid", + "bearerTokenSendingMethods": [ + "authorizationHeader" + ] + } + }, + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2019-12-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/58da4c4ccdae970a08121230", + "type": "Microsoft.ApiManagement/service/apis", + "name": "58da4c4ccdae970a08121230", + "properties": { + "displayName": "Swagger Petstore", + "apiRevision": "1", + "description": "This is a sample server Petstore server. You can find out more about Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net, #swagger](http://swagger.io/irc/). For this sample, you can use the api key `special-key` to test the authorization filters.", + "serviceUrl": "http://petstore.swagger.io/v2", + "path": "petstore", + "protocols": [ + "https" + ], + "authenticationSettings": { + "openid": { + "openidProviderId": "testopenid", + "bearerTokenSendingMethods": [ + "authorizationHeader" + ] + } + }, + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateAuthorizationServer.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateAuthorizationServer.json new file mode 100644 index 000000000000..df26fe584663 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateAuthorizationServer.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "authsid": "newauthServer", + "parameters": { + "properties": { + "displayName": "test2", + "description": "test server", + "clientRegistrationEndpoint": "https://www.contoso.com/apps", + "authorizationEndpoint": "https://www.contoso.com/oauth2/auth", + "authorizationMethods": [ + "GET" + ], + "tokenEndpoint": "https://www.contoso.com/oauth2/token", + "supportState": true, + "defaultScope": "read write", + "grantTypes": [ + "authorizationCode", + "implicit" + ], + "bearerTokenSendingMethods": [ + "authorizationHeader" + ], + "clientId": "1", + "clientSecret": "2", + "resourceOwnerUsername": "un", + "resourceOwnerPassword": "pwd" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/authorizationServers/newauthServer", + "type": "Microsoft.ApiManagement/service/authorizationServers", + "name": "newauthServer", + "properties": { + "displayName": "test2", + "description": "test server", + "clientRegistrationEndpoint": "https://www.contoso.com/apps", + "authorizationEndpoint": "https://www.contoso.com/oauth2/auth", + "authorizationMethods": [ + "GET" + ], + "tokenEndpoint": "https://www.contoso.com/oauth2/token", + "supportState": true, + "defaultScope": "read write", + "grantTypes": [ + "authorizationCode", + "implicit" + ], + "bearerTokenSendingMethods": [ + "authorizationHeader" + ], + "clientId": "1", + "resourceOwnerUsername": "un", + "resourceOwnerPassword": "pwd" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/authorizationServers/newauthServer", + "type": "Microsoft.ApiManagement/service/authorizationServers", + "name": "newauthServer", + "properties": { + "displayName": "test2", + "description": "test server", + "clientRegistrationEndpoint": "https://www.contoso.com/apps", + "authorizationEndpoint": "https://www.contoso.com/oauth2/auth", + "authorizationMethods": [ + "GET" + ], + "tokenEndpoint": "https://www.contoso.com/oauth2/token", + "supportState": true, + "defaultScope": "read write", + "grantTypes": [ + "authorizationCode", + "implicit" + ], + "bearerTokenSendingMethods": [ + "authorizationHeader" + ], + "clientId": "1", + "resourceOwnerUsername": "un", + "resourceOwnerPassword": "pwd" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateBackendProxyBackend.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateBackendProxyBackend.json new file mode 100644 index 000000000000..101062eb227b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateBackendProxyBackend.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "backendId": "proxybackend", + "parameters": { + "properties": { + "description": "description5308", + "url": "https://backendname2644/", + "protocol": "http", + "tls": { + "validateCertificateChain": true, + "validateCertificateName": true + }, + "proxy": { + "url": "http://192.168.1.1:8080", + "username": "Contoso\\admin", + "password": "opensesame" + }, + "credentials": { + "query": { + "sv": [ + "xx", + "bb", + "cc" + ] + }, + "header": { + "x-my-1": [ + "val1", + "val2" + ] + }, + "authorization": { + "scheme": "Basic", + "parameter": "opensesma" + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/backends/proxybackend", + "type": "Microsoft.ApiManagement/service/backends", + "name": "proxybackend", + "properties": { + "description": "description5308", + "url": "https://backendname2644/", + "protocol": "http", + "credentials": { + "query": { + "sv": [ + "xx", + "bb", + "cc" + ] + }, + "header": { + "x-my-1": [ + "val1", + "val2" + ] + }, + "authorization": { + "scheme": "Basic", + "parameter": "opensesma" + } + }, + "proxy": { + "url": "http://192.168.1.1:8080", + "username": "Contoso\\admin", + "password": "opensesame" + }, + "tls": { + "validateCertificateChain": false, + "validateCertificateName": false + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/backends/proxybackend", + "type": "Microsoft.ApiManagement/service/backends", + "name": "proxybackend", + "properties": { + "description": "description5308", + "url": "https://backendname2644/", + "protocol": "http", + "credentials": { + "query": { + "sv": [ + "xx", + "bb", + "cc" + ] + }, + "header": { + "x-my-1": [ + "val1", + "val2" + ] + }, + "authorization": { + "scheme": "Basic", + "parameter": "opensesma" + } + }, + "proxy": { + "url": "http://192.168.1.1:8080", + "username": "Contoso\\admin", + "password": "opensesame" + }, + "tls": { + "validateCertificateChain": false, + "validateCertificateName": false + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateBackendServiceFabric.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateBackendServiceFabric.json new file mode 100644 index 000000000000..b3a993542af8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateBackendServiceFabric.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "backendId": "sfbackend", + "parameters": { + "properties": { + "description": "Service Fabric Test App 1", + "protocol": "http", + "url": "fabric:/mytestapp/mytestservice", + "properties": { + "serviceFabricCluster": { + "managementEndpoints": [ + "https://somecluster.com" + ], + "clientCertificatethumbprint": "EBA029198AA3E76EF0D70482626E5BCF148594A6", + "serverX509Names": [ + { + "name": "ServerCommonName1", + "issuerCertificateThumbprint": "IssuerCertificateThumbprint1" + } + ], + "maxPartitionResolutionRetries": 5 + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/backends/sfbackend", + "type": "Microsoft.ApiManagement/service/backends", + "name": "sfbackend", + "properties": { + "description": "Service Fabric Test App 1", + "url": "fabric:/mytestapp/mytestservice", + "protocol": "http", + "properties": { + "serviceFabricCluster": { + "managementEndpoints": [ + "https://somecluster.com" + ], + "clientCertificatethumbprint": "EBA029198AA3E76EF0D70482626E5BCF148594A6", + "serverX509Names": [ + { + "name": "ServerCommonName1", + "issuerCertificateThumbprint": "IssuerCertificateThumbprint1" + } + ], + "maxPartitionResolutionRetries": 5 + } + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/backends/sfbackend", + "type": "Microsoft.ApiManagement/service/backends", + "name": "sfbackend", + "properties": { + "description": "Service Fabric Test App 1", + "url": "fabric:/mytestapp/mytestservice", + "protocol": "http", + "properties": { + "serviceFabricCluster": { + "managementEndpoints": [ + "https://somecluster.com" + ], + "clientCertificatethumbprint": "EBA029198AA3E76EF0D70482626E5BCF148594A6", + "serverX509Names": [ + { + "name": "ServerCommonName1", + "issuerCertificateThumbprint": "IssuerCertificateThumbprint1" + } + ], + "maxPartitionResolutionRetries": 5 + } + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateBackup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateBackup.json new file mode 100644 index 000000000000..55936485b01b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateBackup.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "parameters": { + "storageAccount": "teststorageaccount", + "accessKey": "**************************************************", + "containerName": "backupContainer", + "backupName": "apimService1backup_2017_03_19" + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2019-12-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "West US", + "etag": "AAAAAAACXok=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2019-12-18T06:26:20.3348609Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "gatewayRegionalUrl": "https://apimService1-westus-01.regional.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": false + }, + { + "type": "Proxy", + "hostName": "gateway1.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989XXXXXXXXXXXXXXXXB9C2C91F1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": true + }, + { + "type": "Management", + "hostName": "mgmt.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989XXXXXXXXXXXXXXXXB9C2C91F1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": false + }, + { + "type": "Portal", + "hostName": "portal1.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989XXXXXXXXXXXXXXXXB9C2C91F1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": false + } + ], + "publicIPAddresses": [ + "13.91.32.113" + ], + "additionalLocations": [ + { + "location": "East US", + "sku": { + "name": "Premium", + "capacity": 1 + }, + "publicIPAddresses": [ + "23.101.138.153" + ], + "gatewayRegionalUrl": "https://apimService1-eastus-01.regional.azure-api.net", + "disableGateway": true + } + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2": "False" + }, + "virtualNetworkType": "None", + "disableGateway": false, + "apiVersionConstraint": { + "minApiVersion": "2019-01-01" + } + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateCache.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateCache.json new file mode 100644 index 000000000000..90407481dc0f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateCache.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "cacheId": "westindia", + "parameters": { + "properties": { + "connectionString": "contoso5.redis.cache.windows.net,ssl=true,password=...", + "description": "Redis cache instances in West India", + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/contoso5" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/caches/westindia", + "type": "Microsoft.ApiManagement/service/caches", + "name": "westindia", + "properties": { + "connectionString": "{{5c68d535a40f7e61103cd285}}}", + "description": "Redis cache instances in West India", + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/contoso5" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/caches/westindia", + "type": "Microsoft.ApiManagement/service/caches", + "name": "westindia", + "properties": { + "connectionString": "{{5c68d535a40f7e61103cd285}}}", + "description": "Redis cache instances in West India", + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/contoso5" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateCertificate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateCertificate.json new file mode 100644 index 000000000000..7d4c3549e2af --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateCertificate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "certificateId": "tempcert", + "parameters": { + "properties": { + "data": "****************Base 64 Encoded Certificate *******************************", + "password": "****Certificate Password******" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/tempcert", + "type": "Microsoft.ApiManagement/service/certificates", + "name": "tempcert", + "properties": { + "subject": "CN=contoso.com", + "thumbprint": "*******************3", + "expirationDate": "2018-03-17T21:55:07+00:00" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/tempcert", + "type": "Microsoft.ApiManagement/service/certificates", + "name": "tempcert", + "properties": { + "subject": "CN=contoso.com", + "thumbprint": "*******************3", + "expirationDate": "2018-03-17T21:55:07+00:00" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateDiagnostic.json new file mode 100644 index 000000000000..2605ca652178 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateDiagnostic.json @@ -0,0 +1,159 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "diagnosticId": "applicationinsights", + "parameters": { + "properties": { + "alwaysLog": "allErrors", + "loggerId": "/loggers/azuremonitor", + "sampling": { + "samplingType": "fixed", + "percentage": 50 + }, + "frontend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + }, + "backend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/diagnostics/applicationinsights", + "type": "Microsoft.ApiManagement/service/diagnostics", + "name": "applicationinsights", + "properties": { + "alwaysLog": "allErrors", + "loggerId": "/loggers/azuremonitor", + "sampling": { + "samplingType": "fixed", + "percentage": 50 + }, + "frontend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + }, + "backend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/diagnostics/applicationinsights", + "type": "Microsoft.ApiManagement/service/diagnostics", + "name": "applicationinsights", + "properties": { + "alwaysLog": "allErrors", + "loggerId": "/loggers/applicationinsights", + "sampling": { + "samplingType": "fixed", + "percentage": 50 + }, + "frontend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + }, + "backend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateEHLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateEHLogger.json new file mode 100644 index 000000000000..8ddd5cd06dbb --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateEHLogger.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "loggerId": "loggerId", + "parameters": { + "properties": { + "loggerType": "azureEventHub", + "description": "adding a new logger", + "credentials": { + "name": "hydraeventhub", + "connectionString": "Endpoint=sb://hydraeventhub-ns.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=********=" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/loggerId", + "type": "Microsoft.ApiManagement/service/loggers", + "name": "loggerId", + "properties": { + "loggerType": "azureEventHub", + "description": "adding a new logger", + "credentials": { + "name": "hydraeventhub", + "connectionString": "{{59544ef2e4bbd50d9468c617}}" + }, + "isBuffered": true, + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.EventHub/namespaces/hydraeventhub-ns" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/loggerId", + "type": "Microsoft.ApiManagement/service/loggers", + "name": "loggerId", + "properties": { + "loggerType": "azureEventHub", + "description": "adding a new logger", + "credentials": { + "name": "hydraeventhub", + "connectionString": "{{59544ef2e4bbd50d9468c617}}" + }, + "isBuffered": true, + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.EventHub/namespaces/hydraeventhub-ns" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateEmailTemplate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateEmailTemplate.json new file mode 100644 index 000000000000..1ea54ce7637f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateEmailTemplate.json @@ -0,0 +1,96 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "templateName": "newIssueNotificationMessage", + "parameters": { + "properties": { + "subject": "Your request for $IssueName was successfully received." + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/templates/NewIssueNotificationMessage", + "type": "Microsoft.ApiManagement/service/templates", + "name": "NewIssueNotificationMessage", + "properties": { + "subject": "Your request for $IssueName was successfully received.", + "body": "\r\n\r\n \r\n \r\n

Dear $DevFirstName $DevLastName,

\r\n

Thank you for contacting us. Our API team will review your issue and get back to you soon.

\r\n

\r\n Click this link to view or edit your request.\r\n

\r\n

Best,

\r\n

The $OrganizationName API Team

\r\n \r\n", + "title": "New issue received", + "description": "This email is sent to developers after they create a new topic on the Issues page of the developer portal.", + "isDefault": false, + "parameters": [ + { + "name": "DevFirstName", + "title": "Developer first name" + }, + { + "name": "DevLastName", + "title": "Developer last name" + }, + { + "name": "IssueId", + "title": "Issue id" + }, + { + "name": "IssueName", + "title": "Issue name" + }, + { + "name": "OrganizationName", + "title": "Organization name" + }, + { + "name": "DevPortalUrl", + "title": "Developer portal URL" + } + ] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/templates/NewIssueNotificationMessage", + "type": "Microsoft.ApiManagement/service/templates", + "name": "NewIssueNotificationMessage", + "properties": { + "subject": "Your request for $IssueName was successfully received.", + "body": "\r\n\r\n \r\n \r\n

Dear $DevFirstName $DevLastName,

\r\n

Thank you for contacting us. Our API team will review your issue and get back to you soon.

\r\n

\r\n Click this link to view or edit your request.\r\n

\r\n

Best,

\r\n

The $OrganizationName API Team

\r\n \r\n", + "title": "New issue received", + "description": "This email is sent to developers after they create a new topic on the Issues page of the developer portal.", + "isDefault": false, + "parameters": [ + { + "name": "DevFirstName", + "title": "Developer first name" + }, + { + "name": "DevLastName", + "title": "Developer last name" + }, + { + "name": "IssueId", + "title": "Issue id" + }, + { + "name": "IssueName", + "title": "Issue name" + }, + { + "name": "OrganizationName", + "title": "Organization name" + }, + { + "name": "DevPortalUrl", + "title": "Developer portal URL" + } + ] + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGateway.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGateway.json new file mode 100644 index 000000000000..cc83e2b4e3c2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGateway.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "gw1", + "parameters": { + "properties": { + "description": "my gateway 1", + "locationData": { + "name": "my location" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1", + "type": "Microsoft.ApiManagement/service/gateways", + "name": "a1", + "properties": { + "description": "my gateway 1", + "locationData": { + "name": "my location" + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1", + "type": "Microsoft.ApiManagement/service/gateways", + "name": "a1", + "properties": { + "description": "my gateway 1", + "locationData": { + "name": "my location" + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGatewayApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGatewayApi.json new file mode 100644 index 000000000000..29b9573e9333 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGatewayApi.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "gw1", + "apiId": "echo-api", + "parameters": { + "properties": { + "provisioningState": "created" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/apis/echo-api", + "type": "Microsoft.ApiManagement/service/gateways/apis", + "name": "echo-api", + "properties": { + "displayName": "EchoApi", + "apiRevision": "1", + "serviceUrl": "https://contoso.com/apis/echo", + "path": "", + "protocols": [ + "http", + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/apis/echo-api", + "type": "Microsoft.ApiManagement/service/gateways/apis", + "name": "echo-api", + "properties": { + "displayName": "EchoApi", + "apiRevision": "1", + "serviceUrl": "https://contoso.com/apis/echo", + "path": "", + "protocols": [ + "http", + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGatewayHostnameConfiguration.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGatewayHostnameConfiguration.json new file mode 100644 index 000000000000..e06f423962b1 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGatewayHostnameConfiguration.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "gw1", + "hcId": "default", + "parameters": { + "properties": { + "hostname": "*", + "certificateId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/cert1", + "negotiateClientCertificate": false + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/hostnameConfigurations/default", + "type": "Microsoft.ApiManagement/service/gateways/hostnameConfigurations", + "name": "default", + "properties": { + "hostname": "*", + "certificateId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/cert1", + "negotiateClientCertificate": false + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/hostnameConfigurations/default", + "type": "Microsoft.ApiManagement/service/gateways/hostnameConfigurations", + "name": "default", + "properties": { + "hostname": "*", + "certificateId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/cert1", + "negotiateClientCertificate": false + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGroup.json new file mode 100644 index 000000000000..1a724d31cfe7 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGroup.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "groupId": "tempgroup", + "parameters": { + "properties": { + "displayName": "temp group" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/tempgroup", + "type": "Microsoft.ApiManagement/service/groups", + "name": "tempgroup", + "properties": { + "displayName": "temp group", + "type": "custom" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/tempgroup", + "type": "Microsoft.ApiManagement/service/groups", + "name": "tempgroup", + "properties": { + "displayName": "temp group", + "type": "custom" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGroupExternal.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGroupExternal.json new file mode 100644 index 000000000000..99ac6e2d6b7c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGroupExternal.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "groupId": "aadGroup", + "parameters": { + "properties": { + "displayName": "NewGroup (samiraad.onmicrosoft.com)", + "description": "new group to test", + "type": "external", + "externalId": "aad://samiraad.onmicrosoft.com/groups/83cf2753-5831-4675-bc0e-2f8dc067c58d" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/aadGroup", + "type": "Microsoft.ApiManagement/service/groups", + "name": "aadGroup", + "properties": { + "displayName": "NewGroup (samiraad.onmicrosoft.com)", + "description": "new group to test", + "type": "external", + "externalId": "aad://samiraad.onmicrosoft.com/groups/83cf2753-5831-4675-bc0e-2f8dc067c58d" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/aadGroup", + "type": "Microsoft.ApiManagement/service/groups", + "name": "aadGroup", + "properties": { + "displayName": "NewGroup (samiraad.onmicrosoft.com)", + "description": "new group to test", + "type": "external", + "externalId": "aad://samiraad.onmicrosoft.com/groups/83cf2753-5831-4675-bc0e-2f8dc067c58d" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGroupUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGroupUser.json new file mode 100644 index 000000000000..3aed4e9e63e3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateGroupUser.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "groupId": "tempgroup", + "userId": "59307d350af58404d8a26300" + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/59307d350af58404d8a26300", + "type": "Microsoft.ApiManagement/service/groups/users", + "name": "59307d350af58404d8a26300", + "properties": { + "firstName": "test", + "lastName": "user", + "email": "testuser1@live.com", + "state": "active", + "registrationDate": "2017-06-01T20:46:45.437Z", + "groups": [], + "identities": [] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/59307d350af58404d8a26300", + "type": "Microsoft.ApiManagement/service/groups/users", + "name": "59307d350af58404d8a26300", + "properties": { + "firstName": "test", + "lastName": "user", + "email": "testuser1@live.com", + "state": "active", + "registrationDate": "2017-06-01T20:46:45.437Z", + "groups": [], + "identities": [] + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateIdentityProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateIdentityProvider.json new file mode 100644 index 000000000000..5db8adf402fd --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateIdentityProvider.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "identityProviderName": "facebook", + "parameters": { + "properties": { + "clientId": "facebookid", + "clientSecret": "facebookapplicationsecret" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/identityProviders/Facebook", + "type": "Microsoft.ApiManagement/service/identityProviders", + "name": "Facebook", + "properties": { + "clientId": "facebookid", + "type": "facebook" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/identityProviders/Facebook", + "type": "Microsoft.ApiManagement/service/identityProviders", + "name": "Facebook", + "properties": { + "clientId": "facebookid", + "type": "facebook" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateMultiRegionServiceWithCustomHostname.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateMultiRegionServiceWithCustomHostname.json new file mode 100644 index 000000000000..61456995b4b1 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateMultiRegionServiceWithCustomHostname.json @@ -0,0 +1,256 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "parameters": { + "properties": { + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "gateway1.msitesting.net", + "encodedCertificate": "****** Base 64 Encoded Certificate ************", + "certificatePassword": "Password", + "defaultSslBinding": true + }, + { + "type": "Management", + "hostName": "mgmt.msitesting.net", + "encodedCertificate": "****** Base 64 Encoded Certificate ************", + "certificatePassword": "Password" + }, + { + "type": "Portal", + "hostName": "portal1.msitesting.net", + "encodedCertificate": "****** Base 64 Encoded Certificate ************", + "certificatePassword": "Password" + } + ], + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "additionalLocations": [ + { + "location": "East US", + "sku": { + "name": "Premium", + "capacity": 1 + }, + "disableGateway": true + } + ], + "virtualNetworkType": "None", + "apiVersionConstraint": { + "minApiVersion": "2019-01-01" + } + }, + "sku": { + "name": "Premium", + "capacity": 1 + }, + "location": "West US", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + } + } + }, + "responses": { + "201": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/bXVsdGlob3N0bmFtZW11bHRpcmVnaW9uc2VydmljZV9BY3RfZjFiOTZhMjc=?api-version=2019-12-01" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "West US", + "etag": "AAAAAAACXoo=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Created", + "targetProvisioningState": "Activating", + "createdAtUtc": "2019-12-18T08:04:26.9492661Z", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": false + }, + { + "type": "Proxy", + "hostName": "gateway1.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989XXXXXXXXXXXXXXXXF1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": true + }, + { + "type": "Management", + "hostName": "mgmt.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989XXXXXXXXXXXXXXXXF1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": false + }, + { + "type": "Portal", + "hostName": "portal1.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989XXXXXXXXXXXXXXXXF1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": false + } + ], + "additionalLocations": [ + { + "location": "East US", + "sku": { + "name": "Premium", + "capacity": 1 + }, + "disableGateway": true + } + ], + "virtualNetworkType": "None", + "disableGateway": false, + "apiVersionConstraint": { + "minApiVersion": "2019-01-01" + } + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "West US", + "etag": "AAAAAAACXok=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2019-12-18T06:26:20.3348609Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "gatewayRegionalUrl": "https://apimService1-westus-01.regional.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": false + }, + { + "type": "Proxy", + "hostName": "gateway1.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989XXXXXXXXXXXXXXXXF1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": true + }, + { + "type": "Management", + "hostName": "mgmt.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989XXXXXXXXXXXXXXXXF1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": false + }, + { + "type": "Portal", + "hostName": "portal1.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989XXXXXXXXXXXXXXXXF1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": false + } + ], + "publicIPAddresses": [ + "13.91.32.113" + ], + "additionalLocations": [ + { + "location": "East US", + "sku": { + "name": "Premium", + "capacity": 1 + }, + "publicIPAddresses": [ + "23.101.138.153" + ], + "gatewayRegionalUrl": "https://apimService1-eastus-01.regional.azure-api.net", + "disableGateway": true + } + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2": "False" + }, + "virtualNetworkType": "None", + "disableGateway": false, + "apiVersionConstraint": { + "minApiVersion": "2019-01-01" + } + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/bXVsdGlob3N0bmFtZW11bHRpcmVnaW9uc2VydmljZV9BY3RfZjFiOTZhMjc=?api-version=2019-12-01" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateNamedValue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateNamedValue.json new file mode 100644 index 000000000000..19be0feebcc8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateNamedValue.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "namedValueId": "testprop2", + "parameters": { + "properties": { + "displayName": "prop3name", + "value": "propValue", + "tags": [ + "foo", + "bar" + ], + "secret": false + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/namedValues/testprop2?api-version=2019-12-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/namedValues/testprop2", + "type": "Microsoft.ApiManagement/service/namedValues", + "name": "testprop2", + "properties": { + "displayName": "prop3name", + "value": "propValue", + "tags": [ + "foo", + "bar" + ], + "secret": false + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/namedValues/testprop2", + "type": "Microsoft.ApiManagement/service/namedValues", + "name": "testprop2", + "properties": { + "displayName": "prop3name", + "value": "propValue", + "tags": [ + "foo", + "bar" + ], + "secret": false + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateNotification.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateNotification.json new file mode 100644 index 000000000000..4a367d3b4e1d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateNotification.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage", + "type": "Microsoft.ApiManagement/service/notifications", + "name": "RequestPublisherNotificationMessage", + "properties": { + "title": "Subscription requests (requiring approval)", + "description": "The following email recipients and users will receive email notifications about subscription requests for API products requiring approval.", + "recipients": { + "emails": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/recipientEmails/contoso@live.com", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/recipientEmails/foobar!live", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/recipientEmails/foobar@live.com" + ], + "users": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/576823d0a40f7e74ec07d642" + ] + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateNotificationRecipientEmail.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateNotificationRecipientEmail.json new file mode 100644 index 000000000000..4faab613a7bb --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateNotificationRecipientEmail.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage", + "email": "foobar@live.com" + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/foobar@live.com", + "type": "Microsoft.ApiManagement/service/notifications/recipientEmails", + "name": "foobar@live.com", + "properties": { + "email": "foobar@live.com" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/foobar@live.com", + "type": "Microsoft.ApiManagement/service/notifications/recipientEmails", + "name": "foobar@live.com", + "properties": { + "email": "foobar@live.com" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateNotificationRecipientUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateNotificationRecipientUser.json new file mode 100644 index 000000000000..e22905720839 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateNotificationRecipientUser.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage", + "userId": "576823d0a40f7e74ec07d642" + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientUsers/576823d0a40f7e74ec07d642", + "type": "Microsoft.ApiManagement/service/notifications/recipientUsers", + "name": "576823d0a40f7e74ec07d642", + "properties": { + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/576823d0a40f7e74ec07d642" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientUsers/576823d0a40f7e74ec07d642", + "type": "Microsoft.ApiManagement/service/notifications/recipientUsers", + "name": "576823d0a40f7e74ec07d642", + "properties": { + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/576823d0a40f7e74ec07d642" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateOpenIdConnectProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateOpenIdConnectProvider.json new file mode 100644 index 000000000000..98050d34ffd4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateOpenIdConnectProvider.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "opid": "templateOpenIdConnect3", + "parameters": { + "properties": { + "displayName": "templateoidprovider3", + "metadataEndpoint": "https://oidprovider-template3.net", + "clientId": "oidprovidertemplate3", + "clientSecret": "x" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/openidConnectProviders/templateOpenIdConnect3", + "type": "Microsoft.ApiManagement/service/openidconnectproviders", + "name": "templateOpenIdConnect3", + "properties": { + "displayName": "templateoidprovider3", + "metadataEndpoint": "https://oidprovider-template3.net", + "clientId": "oidprovidertemplate3" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/openidConnectProviders/templateOpenIdConnect3", + "type": "Microsoft.ApiManagement/service/openidconnectproviders", + "name": "templateOpenIdConnect3", + "properties": { + "displayName": "templateoidprovider3", + "metadataEndpoint": "https://oidprovider-template3.net", + "clientId": "oidprovidertemplate3" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreatePolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreatePolicy.json new file mode 100644 index 000000000000..76086d34b6f3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreatePolicy.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "policyId": "policy", + "parameters": { + "properties": { + "format": "xml", + "value": "\r\n \r\n \r\n \r\n \r\n \r\n" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/policies/policy", + "type": "Microsoft.ApiManagement/service/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/policies/policy", + "type": "Microsoft.ApiManagement/service/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProduct.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProduct.json new file mode 100644 index 000000000000..925d35d19c91 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProduct.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "testproduct", + "parameters": { + "properties": { + "displayName": "Test Template ProductName 4" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/testproduct", + "type": "Microsoft.ApiManagement/service/products", + "name": "testproduct", + "properties": { + "displayName": "Test Template ProductName 4", + "subscriptionRequired": true, + "approvalRequired": false, + "state": "notPublished" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/testproduct", + "type": "Microsoft.ApiManagement/service/products", + "name": "testproduct", + "properties": { + "displayName": "Test Template ProductName 4", + "subscriptionRequired": true, + "approvalRequired": false, + "state": "notPublished" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProductApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProductApi.json new file mode 100644 index 000000000000..30b77c382eff --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProductApi.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "testproduct", + "apiId": "echo-api" + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5931a75ae4bbd512a88c680b", + "type": "Microsoft.ApiManagement/service/apis", + "name": "5931a75ae4bbd512a88c680b", + "properties": { + "displayName": "EchoApi", + "apiRevision": "1", + "serviceUrl": "https://contoso.com/apis/echo", + "path": "", + "protocols": [ + "http", + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5931a75ae4bbd512a88c680b", + "type": "Microsoft.ApiManagement/service/apis", + "name": "5931a75ae4bbd512a88c680b", + "properties": { + "displayName": "EchoApi", + "apiRevision": "1", + "serviceUrl": "https://contoso.com/apis/echo", + "path": "", + "protocols": [ + "http", + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProductGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProductGroup.json new file mode 100644 index 000000000000..a2b80c8400ee --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProductGroup.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "testproduct", + "groupId": "templateGroup" + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/templateGroup", + "type": "Microsoft.ApiManagement/service/products/groups", + "name": "templateGroup", + "properties": { + "displayName": "Template Group", + "description": "group created via Template", + "builtIn": false, + "type": "custom" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/templateGroup", + "type": "Microsoft.ApiManagement/service/products/groups", + "name": "templateGroup", + "properties": { + "displayName": "Template Group", + "description": "group created via Template", + "builtIn": false, + "type": "custom" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProductPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProductPolicy.json new file mode 100644 index 000000000000..4b94a9f824c7 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProductPolicy.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "5702e97e5157a50f48dce801", + "policyId": "policy", + "parameters": { + "properties": { + "format": "xml", + "value": "\r\n \r\n \r\n \r\n @( string.Join(\",\", DateTime.UtcNow, context.Deployment.ServiceName, context.RequestId, context.Request.IpAddress, context.Operation.Name) ) \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5702e97e5157a50f48dce801/policies/policy", + "type": "Microsoft.ApiManagement/service/products/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n @( string.Join(\",\", DateTime.UtcNow, context.Deployment.ServiceName, context.RequestId, context.Request.IpAddress, context.Operation.Name) ) \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5702e97e5157a50f48dce801/policies/policy", + "type": "Microsoft.ApiManagement/service/products/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n @( string.Join(\",\", DateTime.UtcNow, context.Deployment.ServiceName, context.RequestId, context.Request.IpAddress, context.Operation.Name) ) \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProductTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProductTag.json new file mode 100644 index 000000000000..276d5f1dba96 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateProductTag.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "5931a75ae4bbd512a88c680b", + "tagId": "tagId1" + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/tagId1", + "type": "Microsoft.ApiManagement/service/tags", + "name": "tagId1", + "properties": { + "displayName": "tag1" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/tagId1", + "type": "Microsoft.ApiManagement/service/tags", + "name": "tagId1", + "properties": { + "displayName": "tag1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateService.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateService.json new file mode 100644 index 000000000000..4b3802e9e064 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateService.json @@ -0,0 +1,124 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "parameters": { + "properties": { + "publisherEmail": "foo@contoso.com", + "publisherName": "foo" + }, + "sku": { + "name": "Developer", + "capacity": 1 + }, + "location": "South Central US", + "tags": { + "Name": "Contoso", + "Test": "User" + } + } + }, + "responses": { + "201": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2019-12-01" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "Name": "Contoso", + "Test": "User" + }, + "location": "South Central US", + "etag": "AAAAAAAp3P0=", + "properties": { + "publisherEmail": "foo@contoso.com", + "publisherName": "foo", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Created", + "targetProvisioningState": "Activating", + "createdAtUtc": "2019-12-18T06:10:56.0327105Z", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true + } + ], + "virtualNetworkType": "None", + "disableGateway": false, + "apiVersionConstraint": {} + }, + "sku": { + "name": "Developer", + "capacity": 1 + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "Name": "Contoso", + "Test": "User" + }, + "location": "South Central US", + "etag": "AAAAAAAp3T4=", + "properties": { + "publisherEmail": "foo@contoso.com", + "publisherName": "foo", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2019-12-18T06:10:56.0327105Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "gatewayRegionalUrl": "https://apimService1-southcentralus-01.regional.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true + } + ], + "publicIPAddresses": [ + "23.102.171.124" + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2": "False" + }, + "virtualNetworkType": "None", + "disableGateway": false, + "apiVersionConstraint": {} + }, + "sku": { + "name": "Developer", + "capacity": 1 + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/c2RrdGVzdGFwaW0xNTkxX0FjdF9jZTkyMmNmOQ==?api-version=2019-12-01" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateServiceHavingMsi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateServiceHavingMsi.json new file mode 100644 index 000000000000..fe5899f40fe5 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateServiceHavingMsi.json @@ -0,0 +1,119 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "parameters": { + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk" + }, + "sku": { + "name": "Consumption", + "capacity": 0 + }, + "identity": { + "type": "SystemAssigned" + }, + "location": "West US", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + } + } + }, + "responses": { + "201": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2019-12-01" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "West US", + "etag": "AAAAAAAAWiE=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Created", + "targetProvisioningState": "Activating", + "createdAtUtc": "2019-04-11T16:29:29.9711098Z", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true + } + ], + "virtualNetworkType": "None" + }, + "sku": { + "name": "Consumption", + "capacity": 0 + }, + "identity": { + "type": "SystemAssigned", + "principalId": "dfb9a757-df69-4966-a8d0-711a9cd8ffb4", + "tenantId": "XXXXXX-86f1-41af-91ab-2d7cd011db47" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "West US", + "etag": "AAAAAAAAWiU=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2019-04-11T16:29:29.9711098Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true + } + ], + "virtualNetworkType": "None", + "enableClientCertificate": false + }, + "sku": { + "name": "Consumption", + "capacity": 0 + }, + "identity": { + "type": "SystemAssigned", + "principalId": "dfb9a757-df69-4966-a8d0-711a9cd8ffb4", + "tenantId": "XXXXXX-86f1-41af-91ab-2d7cd011db47" + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2019-12-01" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateServiceWithSystemCertificates.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateServiceWithSystemCertificates.json new file mode 100644 index 000000000000..f3bdc427f2fb --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateServiceWithSystemCertificates.json @@ -0,0 +1,154 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "parameters": { + "properties": { + "certificates": [ + { + "encodedCertificate": "*******Base64 encoded Certificate******************", + "certificatePassword": "Password", + "storeName": "CertificateAuthority" + } + ], + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk" + }, + "sku": { + "name": "Basic", + "capacity": 1 + }, + "location": "Central US", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + } + } + }, + "responses": { + "201": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/bXVsdGlob3N0bmFtZW11bHRpcmVnaW9uc2VydmljZV9BY3RfZjFiOTZhMjc=?api-version=2019-12-01" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "Central US", + "etag": "AAAAAAAp3TM=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Created", + "targetProvisioningState": "Activating", + "createdAtUtc": "2019-12-18T06:33:28.0906918Z", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true + } + ], + "virtualNetworkType": "None", + "certificates": [ + { + "storeName": "CertificateAuthority", + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989652CABCF585ACBFCB9C2C91F1D174FDB3A2", + "subject": "CN=*.msitesting.net" + } + } + ], + "disableGateway": false, + "apiVersionConstraint": {} + }, + "sku": { + "name": "Basic", + "capacity": 1 + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "Central US", + "etag": "AAAAAAAp3UM=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2019-12-18T06:33:28.0906918Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "gatewayRegionalUrl": "https://apimService1-centralus-01.regional.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true + } + ], + "publicIPAddresses": [ + "40.113.223.117" + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2": "False" + }, + "virtualNetworkType": "None", + "certificates": [ + { + "storeName": "CertificateAuthority", + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989652CABCF585ACBFCB9C2C91F1D174FDB3A2", + "subject": "CN=*.msitesting.net" + } + } + ], + "disableGateway": false, + "apiVersionConstraint": {} + }, + "sku": { + "name": "Basic", + "capacity": 1 + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/bXVsdGlob3N0bmFtZW11bHRpcmVnaW9uc2VydmljZV9BY3RfZjFiOTZhMjc=?api-version=2019-12-01" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateServiceWithUserAssignedIdentity.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateServiceWithUserAssignedIdentity.json new file mode 100644 index 000000000000..74ac51a762a4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateServiceWithUserAssignedIdentity.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "parameters": { + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk" + }, + "sku": { + "name": "Consumption", + "capacity": 0 + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/apimService1": {} + } + }, + "location": "West US", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + } + } + }, + "responses": { + "201": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2019-12-01" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "West US", + "etag": "AAAAAAAFzyQ=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Created", + "targetProvisioningState": "Activating", + "createdAtUtc": "2020-03-12T01:05:33.4573398Z", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true + } + ], + "virtualNetworkType": "None" + }, + "sku": { + "name": "Consumption", + "capacity": 0 + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/apimService1": {} + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "West US", + "etag": "AAAAAAAFzyk=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2020-03-12T01:05:33.4573398Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true + } + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2": "False" + }, + "virtualNetworkType": "None", + "disableGateway": false + }, + "sku": { + "name": "Consumption", + "capacity": 0 + }, + "identity": { + "type": "UserAssigned", + "tenantId": "XXXXX-86f1-41af-XXXX-2d7cd011db47", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/apimService1": { + "principalId": "XXXXX-6e62-4649-9f54-a119fc1ba85e", + "clientId": "5a2c6b8e-0905-XXXX-a772-993c9418137f" + } + } + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2019-12-01" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateSoapPassThroughApiUsingWsdlImport.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateSoapPassThroughApiUsingWsdlImport.json new file mode 100644 index 000000000000..e8c292d513e2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateSoapPassThroughApiUsingWsdlImport.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "soapApi", + "parameters": { + "properties": { + "format": "wsdl-link", + "value": "http://www.webservicex.net/CurrencyConvertor.asmx?WSDL", + "path": "currency", + "apiType": "soap", + "wsdlSelector": { + "wsdlServiceName": "CurrencyConvertor", + "wsdlEndpointName": "CurrencyConvertorSoap" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/soapApi", + "type": "Microsoft.ApiManagement/service/apis", + "name": "soapApi", + "properties": { + "displayName": "CurrencyConvertor", + "apiRevision": "1", + "serviceUrl": "http://www.webservicex.net", + "path": "currency", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "type": "soap", + "isCurrent": true + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2019-12-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/soapApi", + "type": "Microsoft.ApiManagement/service/apis", + "name": "soapApi", + "properties": { + "displayName": "CurrencyConvertor", + "apiRevision": "1", + "serviceUrl": "http://www.webservicex.net", + "path": "currency", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "type": "soap", + "isCurrent": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateSoapToRestApiUsingWsdlImport.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateSoapToRestApiUsingWsdlImport.json new file mode 100644 index 000000000000..abb37fd5b35a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateSoapToRestApiUsingWsdlImport.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "soapApi", + "parameters": { + "properties": { + "format": "wsdl-link", + "value": "http://www.webservicex.net/CurrencyConvertor.asmx?WSDL", + "path": "currency", + "wsdlSelector": { + "wsdlServiceName": "CurrencyConvertor", + "wsdlEndpointName": "CurrencyConvertorSoap" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/soapApi", + "type": "Microsoft.ApiManagement/service/apis", + "name": "soapApi", + "properties": { + "displayName": "CurrencyConvertor", + "apiRevision": "1", + "serviceUrl": "http://www.webservicex.net", + "path": "currency", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + }, + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/tempgroup?api-version=2019-12-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=201" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/soapApi", + "type": "Microsoft.ApiManagement/service/apis", + "name": "soapApi", + "properties": { + "displayName": "CurrencyConvertor", + "apiRevision": "1", + "serviceUrl": "http://www.webservicex.net", + "path": "currency", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "isCurrent": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateSubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateSubscription.json new file mode 100644 index 000000000000..1dad61c8a705 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateSubscription.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "sid": "testsub", + "parameters": { + "properties": { + "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57127d485157a511ace86ae7", + "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b59475ff190048060002", + "displayName": "testsub" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/subscriptions/testsub", + "type": "Microsoft.ApiManagement/service/subscriptions", + "name": "testsub", + "properties": { + "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57127d485157a511ace86ae7", + "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b59475ff190048060002", + "displayName": "testsub", + "state": "submitted", + "createdDate": "2017-06-02T23:34:03.1055076Z" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/subscriptions/testsub", + "type": "Microsoft.ApiManagement/service/subscriptions", + "name": "testsub", + "properties": { + "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57127d485157a511ace86ae7", + "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b59475ff190048060002", + "displayName": "testsub", + "state": "submitted", + "createdDate": "2017-06-02T23:34:03.1055076Z" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateTag.json new file mode 100644 index 000000000000..2057e10f1bc1 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateTag.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "tagId": "tagId1", + "parameters": { + "properties": { + "displayName": "tag1" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/tagId1", + "type": "Microsoft.ApiManagement/service/tags", + "name": "tagId1", + "properties": { + "displayName": "tag1" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/tagId1", + "type": "Microsoft.ApiManagement/service/tags", + "name": "tagId1", + "properties": { + "displayName": "tag1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateUser.json new file mode 100644 index 000000000000..e8189d5d05ad --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementCreateUser.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512288c680b", + "parameters": { + "properties": { + "firstName": "foo", + "lastName": "bar", + "email": "foobar@outlook.com", + "confirmation": "signup" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/5931a75ae4bbd512288c680b", + "type": "Microsoft.ApiManagement/service/users", + "name": "5931a75ae4bbd512288c680b", + "properties": { + "firstName": "foo", + "lastName": "bar", + "email": "foobar@outlook.com", + "state": "active", + "registrationDate": "2018-01-07T21:21:29.16Z", + "groups": [], + "identities": [ + { + "provider": "Basic", + "id": "foobar@outlook.com" + } + ] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/5931a75ae4bbd512288c680b", + "type": "Microsoft.ApiManagement/service/users", + "name": "5931a75ae4bbd512288c680b", + "properties": { + "firstName": "foo", + "lastName": "bar", + "email": "foobar@outlook.com", + "state": "active", + "registrationDate": "2018-01-07T21:21:29.16Z", + "groups": [], + "identities": [ + { + "provider": "Basic", + "id": "foobar@outlook.com" + } + ] + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApi.json new file mode 100644 index 000000000000..d8aa29f9281b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApi.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "echo-api", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiDiagnostic.json new file mode 100644 index 000000000000..c9ed67d16225 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiDiagnostic.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "diagnosticId": "applicationinsights", + "apiId": "57d1f7558aa04f15146d9d8a", + "If-Match": "*" + }, + "responses": { + "204": {}, + "200": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiIssue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiIssue.json new file mode 100644 index 000000000000..d983b39d2964 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiIssue.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "apiId": "57d1f7558aa04f15146d9d8a", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiIssueAttachment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiIssueAttachment.json new file mode 100644 index 000000000000..7a9625dd0d42 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiIssueAttachment.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "apiId": "57d1f7558aa04f15146d9d8a", + "attachmentId": "57d2ef278aa04f0888cba3f3", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiIssueComment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiIssueComment.json new file mode 100644 index 000000000000..a2915479edce --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiIssueComment.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "apiId": "57d1f7558aa04f15146d9d8a", + "commentId": "599e29ab193c3c0bd0b3e2fb", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiOperation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiOperation.json new file mode 100644 index 000000000000..0cceb035d673 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiOperation.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "operationId": "57d2ef278aa04f0ad01d6cdc", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiOperationPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiOperationPolicy.json new file mode 100644 index 000000000000..1431094a3124 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiOperationPolicy.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "testapi", + "operationId": "testoperation", + "policyId": "policy", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiOperationTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiOperationTag.json new file mode 100644 index 000000000000..95c360a2da08 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiOperationTag.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "59d5b28d1f7fab116c282650", + "operationId": "59d5b28d1f7fab116c282651", + "tagId": "59d5b28e1f7fab116402044e", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiPolicy.json new file mode 100644 index 000000000000..bdf429bf117e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiPolicy.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "loggerId", + "policyId": "policy", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiRelease.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiRelease.json new file mode 100644 index 000000000000..4dd8653da7d3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiRelease.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "5a5fcc09124a7fa9b89f2f1d", + "releaseId": "testrev", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiSchema.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiSchema.json new file mode 100644 index 000000000000..2593d688885d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiSchema.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "59d5b28d1f7fab116c282650", + "schemaId": "59d5b28e1f7fab116402044e", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiTag.json new file mode 100644 index 000000000000..6ae6d5b1f9f9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiTag.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "59d5b28d1f7fab116c282650", + "tagId": "59d5b28e1f7fab116402044e", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiTagDescription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiTagDescription.json new file mode 100644 index 000000000000..d26baf354d61 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiTagDescription.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "59d5b28d1f7fab116c282650", + "tagDescriptionId": "59d5b28e1f7fab116402044e", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiVersionSet.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiVersionSet.json new file mode 100644 index 000000000000..7af79f6fd4b6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteApiVersionSet.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "versionSetId": "a1", + "If-Match": "*" + }, + "responses": { + "204": {}, + "200": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteAuthorizationServer.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteAuthorizationServer.json new file mode 100644 index 000000000000..469403ea5930 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteAuthorizationServer.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "authsid": "newauthServer2", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteBackend.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteBackend.json new file mode 100644 index 000000000000..f5cb1b955148 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteBackend.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "backendId": "sfbackend", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteCache.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteCache.json new file mode 100644 index 000000000000..81d6a3b12d74 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteCache.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "cacheId": "southindia", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteCertificate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteCertificate.json new file mode 100644 index 000000000000..779f900f5e3d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteCertificate.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "certificateId": "tempcert", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteDiagnostic.json new file mode 100644 index 000000000000..f33a517ffaff --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteDiagnostic.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "diagnosticId": "applicationinsights", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteEmailTemplate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteEmailTemplate.json new file mode 100644 index 000000000000..e050b47d9e29 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteEmailTemplate.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "templateName": "newIssueNotificationMessage", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGateway.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGateway.json new file mode 100644 index 000000000000..6a8e8eda4f42 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGateway.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "gw1", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGatewayApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGatewayApi.json new file mode 100644 index 000000000000..fe4d70f46bcf --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGatewayApi.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "gw1", + "apiId": "echo-api", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGatewayHostnameConfiguration.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGatewayHostnameConfiguration.json new file mode 100644 index 000000000000..da2bbe50e057 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGatewayHostnameConfiguration.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "gw1", + "hcId": "default", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGroup.json new file mode 100644 index 000000000000..16263544b2a3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGroup.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "groupId": "aadGroup", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGroupUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGroupUser.json new file mode 100644 index 000000000000..aa3cbc810647 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteGroupUser.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "groupId": "templategroup", + "userId": "59307d350af58404d8a26300", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteIdentityProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteIdentityProvider.json new file mode 100644 index 000000000000..6360982d5097 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteIdentityProvider.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "identityProviderName": "aad", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteLogger.json new file mode 100644 index 000000000000..d262f1ed9572 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteLogger.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "loggerId": "loggerId", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteNamedValue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteNamedValue.json new file mode 100644 index 000000000000..5b9993502098 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteNamedValue.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "namedValueId": "testprop2", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteNotificationRecipientEmail.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteNotificationRecipientEmail.json new file mode 100644 index 000000000000..2e83472d5cdc --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteNotificationRecipientEmail.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage", + "email": "contoso@live.com" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteNotificationRecipientUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteNotificationRecipientUser.json new file mode 100644 index 000000000000..ea223206cbf9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteNotificationRecipientUser.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage", + "userId": "576823d0a40f7e74ec07d642" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteOpenIdConnectProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteOpenIdConnectProvider.json new file mode 100644 index 000000000000..88b279edd160 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteOpenIdConnectProvider.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "opid": "templateOpenIdConnect3", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeletePolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeletePolicy.json new file mode 100644 index 000000000000..e76c2b9e981c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeletePolicy.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "policyId": "policy", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProduct.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProduct.json new file mode 100644 index 000000000000..41ecc63ac8a4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProduct.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "testproduct", + "deleteSubscriptions": true, + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProductApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProductApi.json new file mode 100644 index 000000000000..4ec6d81eaef5 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProductApi.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "testproduct", + "apiId": "echo-api", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProductGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProductGroup.json new file mode 100644 index 000000000000..bea27ba3f6c2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProductGroup.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "testproduct", + "groupId": "templateGroup", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProductPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProductPolicy.json new file mode 100644 index 000000000000..73a7961c69b9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProductPolicy.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "testproduct", + "policyId": "policy", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProductTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProductTag.json new file mode 100644 index 000000000000..c732ced9fd0c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteProductTag.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "59d5b28d1f7fab116c282650", + "tagId": "59d5b28e1f7fab116402044e", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteSubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteSubscription.json new file mode 100644 index 000000000000..4fbc3b8f47b7 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteSubscription.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "sid": "testsub", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteTag.json new file mode 100644 index 000000000000..0a1157f28786 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteTag.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "tagId": "tagId1", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteUser.json new file mode 100644 index 000000000000..09ca673e7bc7 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementDeleteUser.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512288c680b", + "If-Match": "*" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGatewayGenerateToken.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGatewayGenerateToken.json new file mode 100644 index 000000000000..656c58069347 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGatewayGenerateToken.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "gw1", + "parameters": { + "keyType": "primary", + "expiry": "2020-04-21T00:44:24.2845269Z" + } + }, + "responses": { + "200": { + "body": { + "value": "gw1&201904210044&9A1GR1f5WIhFvFmzQG+xxxxxxxxxxx/kBeu87DWad3tkasUXuvPL+MgzlwUHyg==" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGatewayListKeys.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGatewayListKeys.json new file mode 100644 index 000000000000..1aec559093c2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGatewayListKeys.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "gw1" + }, + "responses": { + "200": { + "body": { + "primary": "primary_key_value", + "secondary": "secondary_key_value" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGatewayRegenerateKey.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGatewayRegenerateKey.json new file mode 100644 index 000000000000..31accff0af2f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGatewayRegenerateKey.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "gwId", + "parameters": { + "keyType": "primary" + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiContract.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiContract.json new file mode 100644 index 000000000000..8bf50b120ad7 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiContract.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d1f7558aa04f15146d9d8a" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a", + "type": "Microsoft.ApiManagement/service/apis", + "name": "57d1f7558aa04f15146d9d8a", + "properties": { + "displayName": "Service", + "apiRevision": "1", + "serviceUrl": "https://api.plexonline.com/DataSource/Service.asmx", + "path": "schulte", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "type": "soap", + "isCurrent": true, + "isOnline": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiDiagnostic.json new file mode 100644 index 000000000000..ffb2b5124f10 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiDiagnostic.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "diagnosticId": "applicationinsights", + "apiId": "57d1f7558aa04f15146d9d8a" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api/diagnostics/applicationinsights", + "type": "Microsoft.ApiManagement/service/apis/diagnostics", + "name": "applicationinsights", + "properties": { + "alwaysLog": "allErrors", + "httpCorrelationProtocol": "Legacy", + "logClientIp": true, + "loggerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/aisamplingtest", + "sampling": { + "samplingType": "fixed", + "percentage": 100 + }, + "frontend": { + "request": { + "headers": [], + "body": { + "bytes": 100 + } + }, + "response": { + "headers": [], + "body": { + "bytes": 100 + } + } + }, + "backend": { + "request": { + "headers": [], + "body": { + "bytes": 100 + } + }, + "response": { + "headers": [], + "body": { + "bytes": 100 + } + } + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiExportInOpenApi2dot0.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiExportInOpenApi2dot0.json new file mode 100644 index 000000000000..e88432cf14c8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiExportInOpenApi2dot0.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "echo-api", + "format": "swagger-link", + "export": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api", + "format": "swagger-link-json", + "value": { + "link": "https://apimgmtstkjpszxxxxxxx.blob.core.windows.net/api-export/Swagger Petstore Extensive.json?sv=2015-07-08&sr=b&sig=mxhLsFuOonu8EXIjyFPV%2FnDra0qTIoip7N7MuU%2BTFsA%3D&se=2019-04-10T22:41:31Z&sp=r" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiExportInOpenApi3dot0.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiExportInOpenApi3dot0.json new file mode 100644 index 000000000000..e6b7652738a8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiExportInOpenApi3dot0.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "aid9676", + "format": "openapi-link", + "export": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/aid9676", + "format": "openapi-link", + "value": { + "link": "https: //apimgmtstkjpszxxxxxxx.blob.core.windows.net/api-export/Swagger Petstore.yaml?sv=2015-07-08&sr=b&sig=qqtR1y5iTbz5P7USBduqB5vriIU4gmiGqe0lKVV8j9k%3D&se=2019-04-10T22:40:57Z&sp=r" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiIssue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiIssue.json new file mode 100644 index 000000000000..46e55421000c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiIssue.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "issueId": "57d2ef278aa04f0ad01d6cdc" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc", + "type": "Microsoft.ApiManagement/service/apis/issues", + "name": "57d2ef278aa04f0ad01d6cdc", + "properties": { + "title": "New API issue", + "description": "New API issue description", + "createdDate": "2018-02-01T22:21:20.467Z", + "state": "open", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1", + "apiId": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiIssueAttachment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiIssueAttachment.json new file mode 100644 index 000000000000..658bf7f60014 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiIssueAttachment.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "attachmentId": "57d2ef278aa04f0888cba3f3" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc/attachments/57d2ef278aa04f0888cba3f3", + "type": "Microsoft.ApiManagement/service/apis/issues/attachments", + "name": "57d2ef278aa04f0888cba3f3", + "properties": { + "title": "Issue attachment.", + "contentFormat": "link", + "content": "https://.../image.jpg" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiIssueComment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiIssueComment.json new file mode 100644 index 000000000000..fb788a6c3ac6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiIssueComment.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "commentId": "599e29ab193c3c0bd0b3e2fb" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc/comments/599e29ab193c3c0bd0b3e2fb", + "type": "Microsoft.ApiManagement/service/apis/issues/comments", + "name": "599e29ab193c3c0bd0b3e2fb", + "properties": { + "text": "Issue comment.", + "createdDate": "2018-02-01T22:21:20.467Z", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiOperation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiOperation.json new file mode 100644 index 000000000000..5c0464b76ab0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiOperation.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "operationId": "57d2ef278aa04f0ad01d6cdc" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d2ef278aa04f0888cba3f3/operations/57d2ef278aa04f0ad01d6cdc", + "type": "Microsoft.ApiManagement/service/apis/operations", + "name": "57d2ef278aa04f0ad01d6cdc", + "properties": { + "displayName": "CancelOrder", + "method": "POST", + "urlTemplate": "/?soapAction=http://tempuri.org/IFazioService/CancelOrder", + "templateParameters": [], + "request": { + "description": "IFazioService_CancelOrder_InputMessage", + "queryParameters": [], + "headers": [], + "representations": [ + { + "contentType": "text/xml", + "sample": "\r\n\r\n \r\n \r\n 1\r\n \r\n \r\n", + "schemaId": "6980a395-f08b-4a59-8295-1440cbd909b8", + "typeName": "CancelOrder" + } + ] + }, + "responses": [ + { + "statusCode": 200, + "description": "IFazioService_CancelOrder_OutputMessage", + "representations": [ + { + "contentType": "text/xml", + "sample": "\r\n\r\n \r\n \r\n 1\r\n \r\n \r\n", + "schemaId": "6980a395-f08b-4a59-8295-1440cbd909b8", + "typeName": "CancelOrderResponse" + } + ], + "headers": [] + } + ] + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiOperationPetStore.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiOperationPetStore.json new file mode 100644 index 000000000000..36c0d5d08e06 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiOperationPetStore.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "swagger-petstore", + "operationId": "loginUser" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/swagger-petstore/operations/loginUser", + "type": "Microsoft.ApiManagement/service/apis/operations", + "name": "loginUser", + "properties": { + "displayName": "Logs user into the system", + "method": "GET", + "urlTemplate": "/user/login?username={username}&password={password}", + "templateParameters": [ + { + "name": "username", + "description": "The user name for login", + "type": "string", + "required": true, + "values": [] + }, + { + "name": "password", + "description": "The password for login in clear text", + "type": "string", + "required": true, + "values": [] + } + ], + "description": "", + "request": { + "queryParameters": [], + "headers": [], + "representations": [] + }, + "responses": [ + { + "statusCode": 200, + "description": "successful operation", + "representations": [ + { + "contentType": "application/xml", + "schemaId": "5ba91a35f373b513a0bf31c6", + "typeName": "UserLoginGet200ApplicationXmlResponse" + }, + { + "contentType": "application/json", + "schemaId": "5ba91a35f373b513a0bf31c6", + "typeName": "UserLoginGet200ApplicationJsonResponse" + } + ], + "headers": [ + { + "name": "X-Rate-Limit", + "description": "calls per hour allowed by the user", + "type": "integer", + "values": [] + }, + { + "name": "X-Expires-After", + "description": "date in UTC when token expires", + "type": "string", + "values": [] + } + ] + }, + { + "statusCode": 400, + "description": "Invalid username/password supplied", + "representations": [ + { + "contentType": "application/xml" + }, + { + "contentType": "application/json" + } + ], + "headers": [] + } + ] + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiOperationPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiOperationPolicy.json new file mode 100644 index 000000000000..26ca96ba015e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiOperationPolicy.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "5600b539c53f5b0062040001", + "operationId": "5600b53ac53f5b0062080006", + "policyId": "policy" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5600b539c53f5b0062040001/operations/5600b53ac53f5b0062080006/policies/policy", + "type": "Microsoft.ApiManagement/service/apis/operations/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n This is a sample\r\n \r\n \r\n \r\n \r\n" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiOperationTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiOperationTag.json new file mode 100644 index 000000000000..055fd572cb51 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiOperationTag.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "59d6bb8f1f7fab13dc67ec9b", + "operationId": "59d6bb8f1f7fab13dc67ec9a", + "tagId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/59306a29e4bbd510dc24e5f9", + "type": "Microsoft.ApiManagement/service/tags", + "name": "59306a29e4bbd510dc24e5f9", + "properties": { + "displayName": "tag1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiPolicy.json new file mode 100644 index 000000000000..995a504b5642 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiPolicy.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "5600b59475ff190048040001", + "policyId": "policy" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5600b59475ff190048040001/policies/policy", + "type": "Microsoft.ApiManagement/service/apis/policies", + "name": "policy", + "properties": { + "value": "\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n@{\r\n\tRandom Random = new Random();\r\n\t\t\t\tconst string Chars = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz \"; \r\n return string.Join(\",\", DateTime.UtcNow, new string(\r\n Enumerable.Repeat(Chars, Random.Next(2150400))\r\n .Select(s => s[Random.Next(s.Length)])\r\n .ToArray()));\r\n } \r\n \r\n \r\n \r\n" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiRelease.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiRelease.json new file mode 100644 index 000000000000..798233bf70fd --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiRelease.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "a1", + "releaseId": "5a7cb545298324c53224a799" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1/releases/5a7cb545298324c53224a799", + "type": "Microsoft.ApiManagement/service/apis/releases", + "name": "5a7cb545298324c53224a799", + "properties": { + "apiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1", + "createdDateTime": "2018-02-08T20:38:29.173Z", + "updatedDateTime": "2018-02-08T20:38:29.173Z", + "notes": "yahoo" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiRevision.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiRevision.json new file mode 100644 index 000000000000..38b114917cdc --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiRevision.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "echo-api;rev=3" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api;rev=3", + "type": "Microsoft.ApiManagement/service/apis", + "name": "echo-api;rev=3", + "properties": { + "displayName": "Service", + "apiRevision": "3", + "serviceUrl": "https://api.plexonline.com/DataSource/Service.asmx", + "path": "schulte", + "protocols": [ + "https" + ], + "subscriptionKeyParameterNames": { + "header": "Ocp-Apim-Subscription-Key", + "query": "subscription-key" + }, + "apiRevisionDescription": "fixed bug in contract" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiSchema.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiSchema.json new file mode 100644 index 000000000000..802a8f21adb3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiSchema.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "59d6bb8f1f7fab13dc67ec9b", + "schemaId": "ec12520d-9d48-4e7b-8f39-698ca2ac63f1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/59d6bb8f1f7fab13dc67ec9b/schemas/ec12520d-9d48-4e7b-8f39-698ca2ac63f1", + "type": "Microsoft.ApiManagement/service/apis/schemas", + "name": "ec12520d-9d48-4e7b-8f39-698ca2ac63f1", + "properties": { + "contentType": "application/vnd.ms-azure-apim.xsd+xml", + "document": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiTag.json new file mode 100644 index 000000000000..024bafe1811b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiTag.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "59d6bb8f1f7fab13dc67ec9b", + "tagId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/59306a29e4bbd510dc24e5f9", + "type": "Microsoft.ApiManagement/service/tags", + "name": "59306a29e4bbd510dc24e5f9", + "properties": { + "displayName": "tag1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiTagDescription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiTagDescription.json new file mode 100644 index 000000000000..ff6ccf9f4da6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiTagDescription.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "59d6bb8f1f7fab13dc67ec9b", + "tagDescriptionId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/59d6bb8f1f7fab13dc67ec9b/tagDescriptions/59306a29e4bbd510dc24e5f9", + "type": "Microsoft.ApiManagement/service/apis/tagDescriptions", + "name": "59306a29e4bbd510dc24e5f9", + "properties": { + "tagId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/59306a29e4bbd510dc24e5f9", + "displayName": "tag1", + "description": null, + "externalDocsDescription": "some additional info", + "externalDocsUrl": "http://some_url.com" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiVersionSet.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiVersionSet.json new file mode 100644 index 000000000000..e8a8553e1e5d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetApiVersionSet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "versionSetId": "vs1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/vs1", + "type": "Microsoft.ApiManagement/service/api-version-sets", + "name": "vs1", + "properties": { + "displayName": "Version Set 1", + "versioningScheme": "Segment", + "description": "Version configuration" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetAuthorizationServer.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetAuthorizationServer.json new file mode 100644 index 000000000000..42ab274b2e7b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetAuthorizationServer.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "authsid": "newauthServer2" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/authorizationServers/newauthServer2", + "type": "Microsoft.ApiManagement/service/authorizationServers", + "name": "newauthServer2", + "properties": { + "displayName": "test3", + "description": "test server", + "clientRegistrationEndpoint": "https://www.contoso.com/apps", + "authorizationEndpoint": "https://www.contoso.com/oauth2/auth", + "authorizationMethods": [ + "GET" + ], + "clientAuthenticationMethod": [ + "Basic" + ], + "tokenEndpoint": "https://www.contoso.com/oauth2/token", + "supportState": true, + "defaultScope": "read write", + "grantTypes": [ + "authorizationCode", + "implicit" + ], + "bearerTokenSendingMethods": [ + "authorizationHeader" + ], + "clientId": "1", + "resourceOwnerUsername": "un", + "resourceOwnerPassword": "pwd" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetBackend.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetBackend.json new file mode 100644 index 000000000000..55925d6ed8df --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetBackend.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "backendId": "sfbackend" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/backends/sfbackend", + "type": "Microsoft.ApiManagement/service/backends", + "name": "sfbackend", + "properties": { + "description": "Service Fabric Test App 1", + "url": "fabric:/mytestapp/mytestservice", + "protocol": "http", + "properties": { + "serviceFabricCluster": { + "managementEndpoints": [ + "https://somecluster.com" + ], + "clientCertificatethumbprint": "EBA029198AA3E76EF0D70482626E5BCF148594A6", + "serverX509Names": [ + { + "name": "ServerCommonName1", + "issuerCertificateThumbprint": "IssuerCertificateThumbprint1" + } + ], + "maxPartitionResolutionRetries": 5 + } + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetCache.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetCache.json new file mode 100644 index 000000000000..1cf3b2ac7be9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetCache.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "cacheId": "westindia" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/caches/westindia", + "type": "Microsoft.ApiManagement/service/caches", + "name": "westindia", + "properties": { + "connectionString": "{{5c68d535a40f7e61103cd285}}}", + "description": "Redis cache instances in West India", + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/contoso5" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetCertificate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetCertificate.json new file mode 100644 index 000000000000..fcbbbb35e154 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetCertificate.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "certificateId": "templateCert1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/templateCert1", + "type": "Microsoft.ApiManagement/service/certificates", + "name": "templateCert1", + "properties": { + "subject": "CN=mutual-authcert", + "thumbprint": "EBA**********************8594A6", + "expirationDate": "2017-04-23T17:03:41Z" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetDiagnostic.json new file mode 100644 index 000000000000..6d3f0580b7ff --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetDiagnostic.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "diagnosticId": "applicationinsights" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/diagnostics/applicationinsights", + "type": "Microsoft.ApiManagement/service/diagnostics", + "name": "applicationinsights", + "properties": { + "alwaysLog": "allErrors", + "httpCorrelationProtocol": "Legacy", + "logClientIp": true, + "loggerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/aisamplingtest", + "sampling": { + "samplingType": "fixed", + "percentage": 100 + }, + "frontend": { + "request": { + "headers": [], + "body": { + "bytes": 100 + } + }, + "response": { + "headers": [], + "body": { + "bytes": 100 + } + } + }, + "backend": { + "request": { + "headers": [], + "body": { + "bytes": 100 + } + }, + "response": { + "headers": [], + "body": { + "bytes": 100 + } + } + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetEmailTemplate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetEmailTemplate.json new file mode 100644 index 000000000000..164f5c26af6a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetEmailTemplate.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "templateName": "newIssueNotificationMessage" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/templates/NewIssueNotificationMessage", + "type": "Microsoft.ApiManagement/service/templates", + "name": "NewIssueNotificationMessage", + "properties": { + "subject": "Your request $IssueName was received", + "body": "\r\n\r\n \r\n \r\n

Dear $DevFirstName $DevLastName,

\r\n

Thank you for contacting us. Our API team will review your issue and get back to you soon.

\r\n

\r\n Click this link to view or edit your request.\r\n

\r\n

Best,

\r\n

The $OrganizationName API Team

\r\n \r\n", + "title": "New issue received", + "description": "This email is sent to developers after they create a new topic on the Issues page of the developer portal.", + "isDefault": true, + "parameters": [ + { + "name": "DevFirstName", + "title": "Developer first name" + }, + { + "name": "DevLastName", + "title": "Developer last name" + }, + { + "name": "IssueId", + "title": "Issue id" + }, + { + "name": "IssueName", + "title": "Issue name" + }, + { + "name": "OrganizationName", + "title": "Organization name" + }, + { + "name": "DevPortalUrl", + "title": "Developer portal URL" + } + ] + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetGateway.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetGateway.json new file mode 100644 index 000000000000..c760ce7fa429 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetGateway.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "gw1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1", + "type": "Microsoft.ApiManagement/service/gateways", + "name": "a1", + "properties": { + "description": "my gateway 1", + "locationData": { + "name": "my location" + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetGatewayHostnameConfiguration.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetGatewayHostnameConfiguration.json new file mode 100644 index 000000000000..43ed55ae0ecd --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetGatewayHostnameConfiguration.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "gw1", + "hcId": "default" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/hostnameConfigurations/default", + "type": "Microsoft.ApiManagement/service/gateways/hostnameConfigurations", + "name": "default", + "properties": { + "hostname": "*", + "certificateId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/cert1", + "negotiateClientCertificate": false + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetGroup.json new file mode 100644 index 000000000000..73ce437e2515 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetGroup.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "groupId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/59306a29e4bbd510dc24e5f9", + "type": "Microsoft.ApiManagement/service/groups", + "name": "59306a29e4bbd510dc24e5f9", + "properties": { + "displayName": "AwesomeGroup (samiraad.onmicrosoft.com)", + "description": "awesome group of people", + "builtIn": false, + "type": "external", + "externalId": "aad://samiraad.onmicrosoft.com/groups/3773adf4-032e-4d25-9988-eaff9ca72eca" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetIdentityProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetIdentityProvider.json new file mode 100644 index 000000000000..450389f5bd86 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetIdentityProvider.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "identityProviderName": "aadB2C" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/identityProviders/AadB2C", + "type": "Microsoft.ApiManagement/service/identityProviders", + "name": "AadB2C", + "properties": { + "clientId": "f02dafe2-b8b8-48ec-a38e-27e5c16c51e5", + "type": "aadB2C", + "authority": "login.microsoftonline.com", + "signinTenant": "contosoaadb2c.onmicrosoft.com", + "allowedTenants": [ + "contosoaadb2c.onmicrosoft.com", + "contoso2aadb2c.onmicrosoft.com" + ], + "signupPolicyName": "B2C_1_policy-signup", + "signinPolicyName": "B2C_1_policy-signin" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetIssue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetIssue.json new file mode 100644 index 000000000000..55d3821d55c1 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetIssue.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "issueId": "57d2ef278aa04f0ad01d6cdc" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/issues/57d2ef278aa04f0ad01d6cdc", + "type": "Microsoft.ApiManagement/service/issues", + "name": "57d2ef278aa04f0ad01d6cdc", + "properties": { + "title": "New API issue", + "description": "New API issue description", + "createdDate": "2018-02-01T22:21:20.467Z", + "state": "open", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1", + "apiId": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetLogger.json new file mode 100644 index 000000000000..4ce92563e2bc --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetLogger.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "loggerId": "templateLogger" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/kloudapilogger1", + "type": "Microsoft.ApiManagement/service/loggers", + "name": "kloudapilogger1", + "properties": { + "loggerType": "azureEventHub", + "description": "testeventhub3again", + "credentials": { + "name": "testeventhub4", + "connectionString": "Endpoint=sb://eventhubapim.servicebus.windows.net/;SharedAccessKeyName=Sender;SharedAccessKey=************" + }, + "isBuffered": true, + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.EventHub/namespaces/eventhubapim" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetNamedValue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetNamedValue.json new file mode 100644 index 000000000000..df382d2de96d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetNamedValue.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "namedValueId": "testarmTemplateproperties2" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/namedValues/testarmTemplateproperties2", + "type": "Microsoft.ApiManagement/service/namedValues", + "name": "testarmTemplateproperties2", + "properties": { + "displayName": "propName", + "value": "propValue", + "tags": [ + "foo", + "bar" + ], + "secret": false + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetNotification.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetNotification.json new file mode 100644 index 000000000000..4a367d3b4e1d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetNotification.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage", + "type": "Microsoft.ApiManagement/service/notifications", + "name": "RequestPublisherNotificationMessage", + "properties": { + "title": "Subscription requests (requiring approval)", + "description": "The following email recipients and users will receive email notifications about subscription requests for API products requiring approval.", + "recipients": { + "emails": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/recipientEmails/contoso@live.com", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/recipientEmails/foobar!live", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/recipientEmails/foobar@live.com" + ], + "users": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/576823d0a40f7e74ec07d642" + ] + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetOpenIdConnectProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetOpenIdConnectProvider.json new file mode 100644 index 000000000000..45245354590e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetOpenIdConnectProvider.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "opid": "templateOpenIdConnect2" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/openidConnectProviders/templateOpenIdConnect2", + "type": "Microsoft.ApiManagement/service/openidconnectproviders", + "name": "templateOpenIdConnect2", + "properties": { + "displayName": "templateoidprovider2", + "description": "open id provider template2", + "metadataEndpoint": "https://oidprovider-template2.net", + "clientId": "oidprovidertemplate2" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetPolicy.json new file mode 100644 index 000000000000..822bfbdb3e20 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetPolicy.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "policyId": "policy" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/policies/policy", + "type": "Microsoft.ApiManagement/service/policies", + "name": "policy", + "properties": { + "value": "\r\n\r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetPolicyFormat.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetPolicyFormat.json new file mode 100644 index 000000000000..517d609d8886 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetPolicyFormat.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "policyId": "policy", + "format": "rawxml" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/policies/policy", + "type": "Microsoft.ApiManagement/service/policies", + "name": "policy", + "properties": { + "format": "rawxml", + "value": "\r\n\r\n\t\r\n\t\t\r\n\t\t\t@{\n var guidBinary = new byte[16];\n Array.Copy(Guid.NewGuid().ToByteArray(), 0, guidBinary, 0, 10);\n long time = DateTime.Now.Ticks;\n byte[] bytes = new byte[6];\n unchecked\n {\n bytes[5] = (byte)(time >> 40);\n bytes[4] = (byte)(time >> 32);\n bytes[3] = (byte)(time >> 24);\n bytes[2] = (byte)(time >> 16);\n bytes[1] = (byte)(time >> 8);\n bytes[0] = (byte)(time);\n }\n Array.Copy(bytes, 0, guidBinary, 10, 6);\n return new Guid(guidBinary).ToString();\n }\n \r\n\t\t\r\n\t\r\n\t\r\n\t\t\r\n\t\r\n\t\r\n\t\r\n" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetProduct.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetProduct.json new file mode 100644 index 000000000000..ccff9156c0ed --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetProduct.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "unlimited" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/unlimited", + "type": "Microsoft.ApiManagement/service/products", + "name": "unlimited", + "properties": { + "displayName": "Unlimited", + "description": "Subscribers have completely unlimited access to the API. Administrator approval is required.", + "subscriptionRequired": true, + "approvalRequired": true, + "subscriptionsLimit": 1, + "state": "published" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetProductPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetProductPolicy.json new file mode 100644 index 000000000000..c42f28d0033c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetProductPolicy.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "kjoshiarmTemplateProduct4", + "policyId": "policy" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/kjoshiarmTemplateProduct4/policies/policy", + "type": "Microsoft.ApiManagement/service/products/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetProductTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetProductTag.json new file mode 100644 index 000000000000..16148b03e91c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetProductTag.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "59d6bb8f1f7fab13dc67ec9b", + "tagId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/59306a29e4bbd510dc24e5f9", + "type": "Microsoft.ApiManagement/service/tags", + "name": "59306a29e4bbd510dc24e5f9", + "properties": { + "displayName": "tag1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetQuotaCounterKeys.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetQuotaCounterKeys.json new file mode 100644 index 000000000000..0653b0403b26 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetQuotaCounterKeys.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "quotaCounterKey": "ba" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "counterKey": "ba", + "periodKey": "0_P3Y6M4DT12H30M5S", + "periodStartTime": "2014-08-04T04:24:35Z", + "periodEndTime": "2018-02-08T16:54:40Z", + "value": { + "callsCount": 5, + "kbTransferred": 2.5830078125 + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetQuotaCounterKeysByQuotaPeriod.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetQuotaCounterKeysByQuotaPeriod.json new file mode 100644 index 000000000000..f2ef112d1381 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetQuotaCounterKeysByQuotaPeriod.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "quotaCounterKey": "ba", + "quotaPeriodKey": "0_P3Y6M4DT12H30M5S" + }, + "responses": { + "200": { + "body": { + "counterKey": "ba", + "periodKey": "0_P3Y6M4DT12H30M5S", + "periodStartTime": "2014-08-04T04:24:35Z", + "periodEndTime": "2018-02-08T16:54:40Z", + "value": { + "callsCount": 0, + "kbTransferred": 2.5625 + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByApi.json new file mode 100644 index 000000000000..e95c28e735d0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByApi.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "$filter": "timestamp ge datetime'2017-06-01T00:00:00' and timestamp le datetime'2017-06-04T00:00:00'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Echo API", + "apiId": "/apis/5600b59475ff190048040001", + "callCountSuccess": 0, + "callCountBlocked": 0, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 0, + "bandwidth": 0, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 0, + "apiTimeMin": 0, + "apiTimeMax": 0, + "serviceTimeAvg": 0, + "serviceTimeMin": 0, + "serviceTimeMax": 0 + }, + { + "name": "httpbin", + "apiId": "/apis/57a03a13e4bbd5119c8b19e9", + "callCountSuccess": 13, + "callCountBlocked": 1, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 14, + "bandwidth": 11019, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 1015.7607923076923, + "apiTimeMin": 330.3206, + "apiTimeMax": 1819.2173, + "serviceTimeAvg": 957.094776923077, + "serviceTimeMin": 215.24, + "serviceTimeMax": 1697.3612 + } + ], + "count": 2, + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByGeo.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByGeo.json new file mode 100644 index 000000000000..49e7e07a3913 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByGeo.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "$filter": "timestamp ge datetime'2017-06-01T00:00:00' and timestamp le datetime'2017-06-04T00:00:00'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "country": "US", + "region": "WA", + "zip": "98052", + "callCountSuccess": 13, + "callCountBlocked": 1, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 14, + "bandwidth": 11019, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 1015.7607923076923, + "apiTimeMin": 330.3206, + "apiTimeMax": 1819.2173, + "serviceTimeAvg": 957.094776923077, + "serviceTimeMin": 215.24, + "serviceTimeMax": 1697.3612 + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByOperation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByOperation.json new file mode 100644 index 000000000000..2a9d7064d1f3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByOperation.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "$filter": "timestamp ge datetime'2017-06-01T00:00:00' and timestamp le datetime'2017-06-04T00:00:00'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "get", + "apiId": "/apis/57a03a13e4bbd5119c8b19e9", + "operationId": "/apis/57a03a13e4bbd5119c8b19e9/operations/57a03a1dd8d14f0a780d7d14", + "callCountSuccess": 13, + "callCountBlocked": 1, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 14, + "bandwidth": 11019, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 1015.7607923076923, + "apiTimeMin": 330.3206, + "apiTimeMax": 1819.2173, + "serviceTimeAvg": 957.094776923077, + "serviceTimeMin": 215.24, + "serviceTimeMax": 1697.3612 + }, + { + "name": "GetWeatherInformation", + "apiId": "/apis/57c999d1e4bbd50c988cb2c3", + "operationId": "/apis/57c999d1e4bbd50c988cb2c3/operations/57c999d1e4bbd50df889c93e", + "callCountSuccess": 0, + "callCountBlocked": 0, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 0, + "bandwidth": 0, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 0, + "apiTimeMin": 0, + "apiTimeMax": 0, + "serviceTimeAvg": 0, + "serviceTimeMin": 0, + "serviceTimeMax": 0 + }, + { + "name": "GetCityForecastByZIP", + "apiId": "/apis/57c999d1e4bbd50c988cb2c3", + "operationId": "/apis/57c999d1e4bbd50c988cb2c3/operations/57c999d1e4bbd50df889c93f", + "callCountSuccess": 0, + "callCountBlocked": 0, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 0, + "bandwidth": 0, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 0, + "apiTimeMin": 0, + "apiTimeMax": 0, + "serviceTimeAvg": 0, + "serviceTimeMin": 0, + "serviceTimeMax": 0 + } + ], + "count": 3, + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByProduct.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByProduct.json new file mode 100644 index 000000000000..630133ed867a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByProduct.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "$filter": "timestamp ge datetime'2017-06-01T00:00:00' and timestamp le datetime'2017-06-04T00:00:00'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Starter", + "productId": "/products/5600b59475ff190048060001", + "callCountSuccess": 0, + "callCountBlocked": 0, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 0, + "bandwidth": 0, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 0, + "apiTimeMin": 0, + "apiTimeMax": 0, + "serviceTimeAvg": 0, + "serviceTimeMin": 0, + "serviceTimeMax": 0 + }, + { + "name": "Unlimited", + "productId": "/products/5600b59475ff190048060002", + "callCountSuccess": 13, + "callCountBlocked": 1, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 14, + "bandwidth": 11019, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 1015.7607923076923, + "apiTimeMin": 330.3206, + "apiTimeMax": 1819.2173, + "serviceTimeAvg": 957.094776923077, + "serviceTimeMin": 215.24, + "serviceTimeMax": 1697.3612 + } + ], + "count": 2, + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByRequest.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByRequest.json new file mode 100644 index 000000000000..b670d169f40b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByRequest.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "$filter": "timestamp ge datetime'2017-06-01T00:00:00' and timestamp le datetime'2017-06-04T00:00:00'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "apiId": "/apis/5931a75ae4bbd512a88c680b", + "operationId": "/apis/5931a75ae4bbd512a88c680b/operations/-", + "productId": "/products/-", + "userId": "/users/1", + "method": "GET", + "url": "https://apimService1.azure-api.net/echo/resource?param1=sample", + "ipAddress": "207.xx.155.xx", + "responseCode": 404, + "responseSize": 405, + "timestamp": "2017-06-03T00:17:00.1649134Z", + "cache": "none", + "apiTime": 221.1544, + "serviceTime": 0.0, + "apiRegion": "East Asia", + "subscriptionId": "/subscriptions/5600b59475ff190048070002", + "requestId": "63e7119c-26aa-433c-96d7-f6f3267ff52f", + "requestSize": 0 + }, + { + "apiId": "/apis/5931a75ae4bbd512a88c680b", + "operationId": "/apis/5931a75ae4bbd512a88c680b/operations/-", + "productId": "/products/-", + "userId": "/users/1", + "method": "POST", + "url": "https://apimService1.azure-api.net/echo/resource", + "ipAddress": "207.xx.155.xx", + "responseCode": 404, + "responseSize": 403, + "timestamp": "2017-06-03T00:17:20.5255131Z", + "cache": "none", + "apiTime": 6.6754000000000007, + "serviceTime": 0.0, + "apiRegion": "East Asia", + "subscriptionId": "/subscriptions/5600b59475ff190048070002", + "requestId": "e581b7f7-c9ec-4fc6-8ab9-3855d9b00b04", + "requestSize": 0 + } + ], + "count": 2 + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsBySubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsBySubscription.json new file mode 100644 index 000000000000..f75c8f550110 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsBySubscription.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "$filter": "timestamp ge datetime'2017-06-01T00:00:00' and timestamp le datetime'2017-06-04T00:00:00'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "", + "userId": "/users/1", + "productId": "/products/5600b59475ff190048060001", + "subscriptionId": "/subscriptions/5600b59475ff190048070001", + "callCountSuccess": 0, + "callCountBlocked": 0, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 0, + "bandwidth": 0, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 0, + "apiTimeMin": 0, + "apiTimeMax": 0, + "serviceTimeAvg": 0, + "serviceTimeMin": 0, + "serviceTimeMax": 0 + }, + { + "name": "", + "userId": "/users/1", + "productId": "/products/5600b59475ff190048060002", + "subscriptionId": "/subscriptions/5600b59475ff190048070002", + "callCountSuccess": 13, + "callCountBlocked": 1, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 14, + "bandwidth": 11019, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 1015.7607923076923, + "apiTimeMin": 330.3206, + "apiTimeMax": 1819.2173, + "serviceTimeAvg": 957.094776923077, + "serviceTimeMin": 215.24, + "serviceTimeMax": 1697.3612 + }, + { + "name": "", + "userId": "/users/1", + "productId": "/products/5702e97e5157a50f48dce801", + "subscriptionId": "/subscriptions/5702e97e5157a50a9c733303", + "callCountSuccess": 0, + "callCountBlocked": 0, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 0, + "bandwidth": 0, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 0, + "apiTimeMin": 0, + "apiTimeMax": 0, + "serviceTimeAvg": 0, + "serviceTimeMin": 0, + "serviceTimeMax": 0 + } + ], + "count": 3, + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByTime.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByTime.json new file mode 100644 index 000000000000..a9dc75e37c26 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByTime.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "$filter": "timestamp ge datetime'2017-06-01T00:00:00' and timestamp le datetime'2017-06-04T00:00:00'", + "interval": "PT15M" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timestamp": "2017-06-03T00:15:00Z", + "interval": "PT15M", + "callCountSuccess": 4, + "callCountBlocked": 0, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 4, + "bandwidth": 3243, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 1337.46335, + "apiTimeMin": 885.0839000000001, + "apiTimeMax": 1819.2173, + "serviceTimeAvg": 1255.917425, + "serviceTimeMin": 882.8264, + "serviceTimeMax": 1697.3612 + }, + { + "timestamp": "2017-06-03T00:30:00Z", + "interval": "PT15M", + "callCountSuccess": 9, + "callCountBlocked": 1, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 10, + "bandwidth": 7776, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 872.7818777777778, + "apiTimeMin": 330.3206, + "apiTimeMax": 1093.8407, + "serviceTimeAvg": 824.2847111111112, + "serviceTimeMin": 215.24, + "serviceTimeMax": 973.2262000000001 + } + ], + "count": 2, + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByUser.json new file mode 100644 index 000000000000..deade91b9d06 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetReportsByUser.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "$filter": "timestamp ge datetime'2017-06-01T00:00:00' and timestamp le datetime'2017-06-04T00:00:00'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Administrator", + "userId": "/users/1", + "callCountSuccess": 13, + "callCountBlocked": 1, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 14, + "bandwidth": 11019, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 1015.7607923076923, + "apiTimeMin": 330.3206, + "apiTimeMax": 1819.2173, + "serviceTimeAvg": 957.094776923077, + "serviceTimeMin": 215.24, + "serviceTimeMax": 1697.3612 + }, + { + "name": "Samir Solanki", + "userId": "/users/56eaec62baf08b06e46d27fd", + "callCountSuccess": 0, + "callCountBlocked": 0, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 0, + "bandwidth": 0, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 0, + "apiTimeMin": 0, + "apiTimeMax": 0, + "serviceTimeAvg": 0, + "serviceTimeMin": 0, + "serviceTimeMax": 0 + }, + { + "name": "Anonymous", + "userId": "/users/54c800b332965a0035030000", + "callCountSuccess": 0, + "callCountBlocked": 0, + "callCountFailed": 0, + "callCountOther": 0, + "callCountTotal": 0, + "bandwidth": 0, + "cacheHitCount": 0, + "cacheMissCount": 0, + "apiTimeAvg": 0, + "apiTimeMin": 0, + "apiTimeMax": 0, + "serviceTimeAvg": 0, + "serviceTimeMin": 0, + "serviceTimeMax": 0 + } + ], + "count": 3, + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetSubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetSubscription.json new file mode 100644 index 000000000000..84d2974d6d83 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetSubscription.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "sid": "5931a769d8d14f0ad8ce13b8" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/subscriptions/5931a769d8d14f0ad8ce13b8", + "type": "Microsoft.ApiManagement/service/subscriptions", + "name": "5931a769d8d14f0ad8ce13b8", + "properties": { + "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/5931a75ae4bbd512a88c680b", + "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b59475ff190048060002", + "displayName": "Unlimited", + "state": "submitted", + "createdDate": "2017-06-02T17:59:06.223Z" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetTag.json new file mode 100644 index 000000000000..e4072fabff76 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetTag.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "tagId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/59306a29e4bbd510dc24e5f9", + "type": "Microsoft.ApiManagement/service/tags", + "name": "59306a29e4bbd510dc24e5f9", + "properties": { + "displayName": "tag1" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetTenantAccess.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetTenantAccess.json new file mode 100644 index 000000000000..8350fc3b43cd --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetTenantAccess.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "accessName": "access" + }, + "responses": { + "200": { + "body": { + "id": "5600b59375ff190048030003", + "enabled": true + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetUser.json new file mode 100644 index 000000000000..24ef2e280dd4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementGetUser.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512a88c680b" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/5931a75ae4bbd512a88c680b", + "type": "Microsoft.ApiManagement/service/users", + "name": "5931a75ae4bbd512a88c680b", + "properties": { + "firstName": "foo", + "lastName": "bar", + "email": "foobar@outlook.com", + "state": "active", + "registrationDate": "2017-06-02T17:58:50.357Z", + "identities": [ + { + "provider": "Microsoft", + "id": "*************" + } + ] + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApi.json new file mode 100644 index 000000000000..85bccbd8d42b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApi.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d1f7558aa04f15146d9d8a" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiDiagnostic.json new file mode 100644 index 000000000000..00f32f58942f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiDiagnostic.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "diagnosticId": "applicationinsights", + "apiId": "57d1f7558aa04f15146d9d8a" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiIssue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiIssue.json new file mode 100644 index 000000000000..7e44ad77d5c7 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiIssue.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "issueId": "57d2ef278aa04f0ad01d6cdc" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiIssueAttachment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiIssueAttachment.json new file mode 100644 index 000000000000..a1e9ce4e31c9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiIssueAttachment.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "attachmentId": "57d2ef278aa04f0888cba3f3" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiIssueComment.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiIssueComment.json new file mode 100644 index 000000000000..b9fe83eabc80 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiIssueComment.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "commentId": "599e29ab193c3c0bd0b3e2fb" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiOperation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiOperation.json new file mode 100644 index 000000000000..fdda0be096f3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiOperation.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "operationId": "57d2ef278aa04f0ad01d6cdc" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiOperationPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiOperationPolicy.json new file mode 100644 index 000000000000..da51270cfaa3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiOperationPolicy.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "5600b539c53f5b0062040001", + "operationId": "5600b53ac53f5b0062080006", + "policyId": "policy" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiOperationTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiOperationTag.json new file mode 100644 index 000000000000..8a6d8cef277a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiOperationTag.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "59d6bb8f1f7fab13dc67ec9b", + "operationId": "59d6bb8f1f7fab13dc67ec9a", + "tagId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "headers": { + "Etag": "AAAAAAAACCI=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiPolicy.json new file mode 100644 index 000000000000..4bb689e7da45 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiPolicy.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d1f7558aa04f15146d9d8a", + "policyId": "policy" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiRelease.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiRelease.json new file mode 100644 index 000000000000..e31510a42aa4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiRelease.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "a1", + "releaseId": "5a7cb545298324c53224a799" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiSchema.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiSchema.json new file mode 100644 index 000000000000..4dab8a4ce1ea --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiSchema.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d1f7558aa04f15146d9d8a", + "schemaId": "ec12520d-9d48-4e7b-8f39-698ca2ac63f1" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiTag.json new file mode 100644 index 000000000000..7ded5d9c5359 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiTag.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "59d6bb8f1f7fab13dc67ec9b", + "tagId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "headers": { + "Etag": "AAAAAAAACCI=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiTagDescription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiTagDescription.json new file mode 100644 index 000000000000..bb2529d1e87b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiTagDescription.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "59d6bb8f1f7fab13dc67ec9b", + "tagDescriptionId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "headers": { + "Etag": "AAAAAAAACCI=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiVersionSet.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiVersionSet.json new file mode 100644 index 000000000000..387a30f214ee --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadApiVersionSet.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "versionSetId": "vs1" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadAuthorizationServer.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadAuthorizationServer.json new file mode 100644 index 000000000000..1126b19c9525 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadAuthorizationServer.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "authsid": "newauthServer2" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadBackend.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadBackend.json new file mode 100644 index 000000000000..8d44e882d591 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadBackend.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "backendId": "sfbackend" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadCache.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadCache.json new file mode 100644 index 000000000000..b76b7e9a21a3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadCache.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "cacheId": "default" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadCertificate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadCertificate.json new file mode 100644 index 000000000000..15d35ca4af2d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadCertificate.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "certificateId": "templateCert1" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadDelegationSettings.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadDelegationSettings.json new file mode 100644 index 000000000000..36930e9eecc3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadDelegationSettings.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadDiagnostic.json new file mode 100644 index 000000000000..709448b49070 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadDiagnostic.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "diagnosticId": "applicationinsights" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadEmailTemplate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadEmailTemplate.json new file mode 100644 index 000000000000..e2fa0844a970 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadEmailTemplate.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "templateName": "newIssueNotificationMessage" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGateway.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGateway.json new file mode 100644 index 000000000000..430a5dfb0db0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGateway.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "mygateway" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGatewayApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGatewayApi.json new file mode 100644 index 000000000000..9591eba34b53 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGatewayApi.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "gw1", + "apiId": "api1" + }, + "responses": { + "200": { + "headers": { + "Etag": "AAAAAAAACCI=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGatewayHostnameConfiguration.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGatewayHostnameConfiguration.json new file mode 100644 index 000000000000..e61e9633bb49 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGatewayHostnameConfiguration.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "gw1", + "hcId": "default" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGroup.json new file mode 100644 index 000000000000..b0cc989b7e1d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGroup.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "groupId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGroupUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGroupUser.json new file mode 100644 index 000000000000..4a1acb756409 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadGroupUser.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "groupId": "59306a29e4bbd510dc24e5f9", + "userId": "5931a75ae4bbd512a88c680b" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadIdentityProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadIdentityProvider.json new file mode 100644 index 000000000000..436349ed4f48 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadIdentityProvider.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "identityProviderName": "aadB2C" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadLogger.json new file mode 100644 index 000000000000..86a44a82ffcc --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadLogger.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "loggerId": "templateLogger" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadNamedValue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadNamedValue.json new file mode 100644 index 000000000000..3f6295792b85 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadNamedValue.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "namedValueId": "testarmTemplateproperties2" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadNotificationRecipientEmail.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadNotificationRecipientEmail.json new file mode 100644 index 000000000000..28d3d872456c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadNotificationRecipientEmail.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage", + "email": "contoso@live.com" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadNotificationRecipientUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadNotificationRecipientUser.json new file mode 100644 index 000000000000..cfc970b46b4c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadNotificationRecipientUser.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage", + "userId": "576823d0a40f7e74ec07d642" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadOpenIdConnectProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadOpenIdConnectProvider.json new file mode 100644 index 000000000000..09faa8db96c6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadOpenIdConnectProvider.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "opid": "templateOpenIdConnect2" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadPolicy.json new file mode 100644 index 000000000000..60000cc050ed --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadPolicy.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "policyId": "policy" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProduct.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProduct.json new file mode 100644 index 000000000000..9270e85d7a25 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProduct.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "unlimited" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProductApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProductApi.json new file mode 100644 index 000000000000..1b7c8837cd2d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProductApi.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "5931a75ae4bbd512a88c680b", + "apiId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProductGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProductGroup.json new file mode 100644 index 000000000000..f8a9fe5ce67f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProductGroup.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "5931a75ae4bbd512a88c680b", + "groupId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProductPolicy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProductPolicy.json new file mode 100644 index 000000000000..b81de558e60b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProductPolicy.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "unlimited", + "policyId": "policy" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProductTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProductTag.json new file mode 100644 index 000000000000..d1feedd77266 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadProductTag.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "59306a29e4bbd510dc24e5f8", + "tagId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "headers": { + "Etag": "AAAAAAAACCI=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadSignInSettings.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadSignInSettings.json new file mode 100644 index 000000000000..36930e9eecc3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadSignInSettings.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadSignUpSettings.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadSignUpSettings.json new file mode 100644 index 000000000000..36930e9eecc3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadSignUpSettings.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadSubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadSubscription.json new file mode 100644 index 000000000000..04b01db486cd --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadSubscription.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "sid": "5931a769d8d14f0ad8ce13b8" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadTag.json new file mode 100644 index 000000000000..77299ad98953 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadTag.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "tagId": "59306a29e4bbd510dc24e5f9" + }, + "responses": { + "200": { + "headers": { + "Etag": "AAAAAAAACCI=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadTenantAccess.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadTenantAccess.json new file mode 100644 index 000000000000..f90a86381063 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadTenantAccess.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "accessName": "access" + }, + "responses": { + "200": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadUser.json new file mode 100644 index 000000000000..b5f5a865b5cb --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementHeadUser.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512a88c680b" + }, + "responses": { + "200": { + "headers": { + "etag": "AAAAAAAAAAa=" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiDiagnostics.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiDiagnostics.json new file mode 100644 index 000000000000..563cac91f5b0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiDiagnostics.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "echo-api" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api/diagnostics/applicationinsights", + "type": "Microsoft.ApiManagement/service/apis/diagnostics", + "name": "applicationinsights", + "properties": { + "alwaysLog": "allErrors", + "httpCorrelationProtocol": "Legacy", + "logClientIp": true, + "loggerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/aisamplingtest", + "sampling": { + "samplingType": "fixed", + "percentage": 100 + }, + "frontend": { + "request": { + "headers": [], + "body": { + "bytes": 100 + } + }, + "response": { + "headers": [], + "body": { + "bytes": 100 + } + } + }, + "backend": { + "request": { + "headers": [], + "body": { + "bytes": 100 + } + }, + "response": { + "headers": [], + "body": { + "bytes": 100 + } + } + } + } + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiIssueAttachments.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiIssueAttachments.json new file mode 100644 index 000000000000..02da761d7375 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiIssueAttachments.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d1f7558aa04f15146d9d8a", + "issueId": "57d2ef278aa04f0ad01d6cdc" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc/attachments/57d2ef278aa04f0888cba3f3", + "type": "Microsoft.ApiManagement/service/apis/issues/attachments", + "name": "57d2ef278aa04f0888cba3f3", + "properties": { + "title": "Issue attachment.", + "contentFormat": "link", + "content": "https://.../image.jpg" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiIssueComments.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiIssueComments.json new file mode 100644 index 000000000000..23b11effb7ae --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiIssueComments.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d1f7558aa04f15146d9d8a", + "issueId": "57d2ef278aa04f0ad01d6cdc" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc/comments/599e29ab193c3c0bd0b3e2fb", + "type": "Microsoft.ApiManagement/service/apis/issues/comments", + "name": "599e29ab193c3c0bd0b3e2fb", + "properties": { + "text": "Issue comment.", + "createdDate": "2018-02-01T22:21:20.467Z", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiIssues.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiIssues.json new file mode 100644 index 000000000000..5d4360156978 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiIssues.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d1f7558aa04f15146d9d8a" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a/issues/57d2ef278aa04f0ad01d6cdc", + "type": "Microsoft.ApiManagement/service/apis/issues", + "name": "57d2ef278aa04f0ad01d6cdc", + "properties": { + "title": "New API issue", + "description": "New API issue description", + "createdDate": "2018-02-01T22:21:20.467Z", + "state": "open", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1", + "apiId": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiOperationPolicies.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiOperationPolicies.json new file mode 100644 index 000000000000..febe80801b74 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiOperationPolicies.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "599e2953193c3c0bd0b3e2fa", + "operationId": "599e29ab193c3c0bd0b3e2fb" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/599e2953193c3c0bd0b3e2fa/operations/599e29ab193c3c0bd0b3e2fb/policies/policy", + "type": "Microsoft.ApiManagement/service/apis/operations/policies", + "name": "policy", + "properties": { + "value": "\r\n\r\n \r\n \r\n \r\n \r\n xxx\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiOperationTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiOperationTags.json new file mode 100644 index 000000000000..d31cfd84379b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiOperationTags.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "operationId": "57d2ef278aa04f0888cba3f6" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/5600b539c53f5b0062060002", + "type": "Microsoft.ApiManagement/service/tags", + "name": "5600b539c53f5b0062060002", + "properties": { + "displayName": "tag1" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiOperations.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiOperations.json new file mode 100644 index 000000000000..ad214d6a082d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiOperations.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3", + "operationId": "57d2ef278aa04f0ad01d6cdc" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d2ef278aa04f0888cba3f3/operations/57d2ef278aa04f0ad01d6cdc", + "type": "Microsoft.ApiManagement/service/apis/operations", + "name": "57d2ef278aa04f0ad01d6cdc", + "properties": { + "displayName": "CancelOrder", + "method": "POST", + "urlTemplate": "/?soapAction=http://tempuri.org/IFazioService/CancelOrder" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d2ef278aa04f0888cba3f3/operations/57d2ef278aa04f0ad01d6cda", + "type": "Microsoft.ApiManagement/service/apis/operations", + "name": "57d2ef278aa04f0ad01d6cda", + "properties": { + "displayName": "GetMostRecentOrder", + "method": "POST", + "urlTemplate": "/?soapAction=http://tempuri.org/IFazioService/GetMostRecentOrder" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d2ef278aa04f0888cba3f3/operations/57d2ef278aa04f0ad01d6cd9", + "type": "Microsoft.ApiManagement/service/apis/operations", + "name": "57d2ef278aa04f0ad01d6cd9", + "properties": { + "displayName": "GetOpenOrders", + "method": "POST", + "urlTemplate": "/?soapAction=http://tempuri.org/IFazioService/GetOpenOrders" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d2ef278aa04f0888cba3f3/operations/57d2ef278aa04f0ad01d6cdb", + "type": "Microsoft.ApiManagement/service/apis/operations", + "name": "57d2ef278aa04f0ad01d6cdb", + "properties": { + "displayName": "GetOrder", + "method": "POST", + "urlTemplate": "/?soapAction=http://tempuri.org/IFazioService/GetOrder" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d2ef278aa04f0888cba3f3/operations/57d2ef278aa04f0ad01d6cd8", + "type": "Microsoft.ApiManagement/service/apis/operations", + "name": "57d2ef278aa04f0ad01d6cd8", + "properties": { + "displayName": "submitOrder", + "method": "POST", + "urlTemplate": "/?soapAction=http://tempuri.org/IFazioService/submitOrder" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiOperationsByTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiOperationsByTags.json new file mode 100644 index 000000000000..91f2bdb4e634 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiOperationsByTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "a1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "tag": { + "id": "/tags/apitag123", + "name": "awesomeTag" + }, + "operation": { + "id": "/apis/echo-api/operations/create-resource", + "apiName": "Echo API", + "apiRevision": "1", + "name": "Create resource", + "method": "POST", + "urlTemplate": "/resource", + "description": "A demonstration of a POST call based on the echo backend above. The request body is expected to contain JSON-formatted data (see example below). A policy is used to automatically transform any request sent in JSON directly to XML. In a real-world scenario this could be used to enable modern clients to speak to a legacy backend." + } + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiPolicies.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiPolicies.json new file mode 100644 index 000000000000..3ecee3bd6354 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiPolicies.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "5600b59475ff190048040001" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5600b59475ff190048040001/policies/policy", + "type": "Microsoft.ApiManagement/service/apis/policies", + "name": "policy", + "properties": { + "value": "\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n@{\r\n\tRandom Random = new Random();\r\n\t\t\t\tconst string Chars = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz \"; \r\n return string.Join(\",\", DateTime.UtcNow, new string(\r\n Enumerable.Repeat(Chars, Random.Next(2150400))\r\n .Select(s => s[Random.Next(s.Length)])\r\n .ToArray()));\r\n } \r\n \r\n \r\n \r\n" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiProducts.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiProducts.json new file mode 100644 index 000000000000..4adab5c251d0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiProducts.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b539c53f5b0062060002", + "type": "Microsoft.ApiManagement/service/apis/products", + "name": "5600b539c53f5b0062060002", + "properties": { + "displayName": "Unlimited", + "description": "Subscribers have completely unlimited access to the API. Administrator approval is required.", + "subscriptionRequired": true, + "approvalRequired": true, + "subscriptionsLimit": 1, + "state": "published" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiReleases.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiReleases.json new file mode 100644 index 000000000000..f52383b2b410 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiReleases.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "a1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1/releases/5a7cb545298324c53224a799", + "type": "Microsoft.ApiManagement/service/apis/releases", + "name": "5a7cb545298324c53224a799", + "properties": { + "createdDateTime": "2018-02-08T20:38:29.173Z", + "updatedDateTime": "2018-02-08T20:38:29.173Z", + "notes": "yahoo" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiRevisions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiRevisions.json new file mode 100644 index 000000000000..6ef1385dd6cd --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiRevisions.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "apiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1;rev=1", + "apiRevision": "1", + "createdDateTime": "2018-02-01T22:21:20.467Z", + "updatedDateTime": "2018-02-01T22:21:20.467Z", + "isOnline": true, + "isCurrent": true + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiSchemas.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiSchemas.json new file mode 100644 index 000000000000..476b00f20293 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiSchemas.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "59d5b28d1f7fab116c282650" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/59d5b28d1f7fab116c282650/schemas/59d5b28e1f7fab116402044e", + "type": "Microsoft.ApiManagement/service/apis/schemas", + "name": "59d5b28e1f7fab116402044e", + "properties": { + "contentType": "application/vnd.ms-azure-apim.swagger.definitions+json" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiTagDescriptions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiTagDescriptions.json new file mode 100644 index 000000000000..845a12dc8b9e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiTagDescriptions.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tagDescriptions/5600b539c53f5b0062060002", + "type": "Microsoft.ApiManagement/service/tags", + "name": "5600b539c53f5b0062060002", + "properties": { + "tagId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/5600b539c53f5b0062060002", + "displayName": "tag1", + "externalDocsDescription": "some additional info", + "externalDocsUrl": "http://some_url.com" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiTags.json new file mode 100644 index 000000000000..efd5943eccba --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiTags.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "57d2ef278aa04f0888cba3f3" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/5600b539c53f5b0062060002", + "type": "Microsoft.ApiManagement/service/tags", + "name": "5600b539c53f5b0062060002", + "properties": { + "displayName": "tag1" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiVersionSets.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiVersionSets.json new file mode 100644 index 000000000000..1dbf8e99a755 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApiVersionSets.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/vs1", + "type": "Microsoft.ApiManagement/service/api-version-sets", + "name": "vs1", + "properties": { + "displayName": "api set 1", + "versioningScheme": "Segment", + "description": "Version configuration" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/vs2", + "type": "Microsoft.ApiManagement/service/api-version-sets", + "name": "vs2", + "properties": { + "displayName": "api set 2", + "versioningScheme": "Query", + "description": "Version configuration 2" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApis.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApis.json new file mode 100644 index 000000000000..ac4646c73025 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApis.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1", + "type": "Microsoft.ApiManagement/service/apis", + "name": "a1", + "properties": { + "displayName": "api1", + "apiRevision": "1", + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "api1", + "protocols": [ + "https" + ], + "isCurrent": true, + "apiVersionSetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/c48f96c9-1385-4e2d-b410-5ab591ce0fc4" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5a73933b8f27f7cc82a2d533", + "type": "Microsoft.ApiManagement/service/apis", + "name": "5a73933b8f27f7cc82a2d533", + "properties": { + "displayName": "api1", + "apiRevision": "1", + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "api1", + "protocols": [ + "https" + ], + "isCurrent": true, + "apiVersion": "v1", + "apiVersionSetId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apiVersionSets/c48f96c9-1385-4e2d-b410-5ab591ce0fc4" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/echo-api", + "type": "Microsoft.ApiManagement/service/apis", + "name": "echo-api", + "properties": { + "displayName": "Echo API", + "apiRevision": "1", + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "echo", + "protocols": [ + "https" + ], + "isCurrent": true + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/5a7390baa5816a110435aee0", + "type": "Microsoft.ApiManagement/service/apis", + "name": "5a7390baa5816a110435aee0", + "properties": { + "displayName": "Swagger Petstore Extensive", + "apiRevision": "1", + "description": "A sample API that uses a petstore as an example to demonstrate features in the swagger-2.0 specification", + "serviceUrl": "http://petstore.swagger.wordnik.com/api", + "path": "vvv", + "protocols": [ + "https" + ], + "isCurrent": true + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApisByTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApisByTags.json new file mode 100644 index 000000000000..320df65cab33 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListApisByTags.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "tag": { + "id": "/tags/apitag123", + "name": "awesomeTag" + }, + "api": { + "id": "/apis/echo-api", + "name": "Echo API", + "apiRevision": "1", + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "echo", + "isCurrent": true + } + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListAuthorizationServers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListAuthorizationServers.json new file mode 100644 index 000000000000..00f73d60ca6a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListAuthorizationServers.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/authorizationServers/newauthServer", + "type": "Microsoft.ApiManagement/service/authorizationServers", + "name": "newauthServer", + "properties": { + "displayName": "test2", + "description": "test server", + "clientRegistrationEndpoint": "https://www.contoso.com/apps", + "authorizationEndpoint": "https://www.contoso.com/oauth2/auth", + "authorizationMethods": [ + "GET" + ], + "tokenEndpoint": "https://www.contoso.com/oauth2/token", + "supportState": true, + "defaultScope": "read write", + "grantTypes": [ + "authorizationCode", + "implicit" + ], + "bearerTokenSendingMethods": [ + "authorizationHeader" + ], + "clientId": "1", + "resourceOwnerUsername": "un", + "resourceOwnerPassword": "pwd" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/authorizationServers/newauthServer2", + "type": "Microsoft.ApiManagement/service/authorizationServers", + "name": "newauthServer2", + "properties": { + "displayName": "test3", + "description": "test server", + "clientRegistrationEndpoint": "https://www.contoso.com/apps", + "authorizationEndpoint": "https://www.contoso.com/oauth2/auth", + "authorizationMethods": [ + "GET" + ], + "clientAuthenticationMethod": [ + "Basic" + ], + "tokenEndpoint": "https://www.contoso.com/oauth2/token", + "supportState": true, + "defaultScope": "read write", + "grantTypes": [ + "authorizationCode", + "implicit" + ], + "bearerTokenSendingMethods": [ + "authorizationHeader" + ], + "clientId": "1", + "resourceOwnerUsername": "un", + "resourceOwnerPassword": "pwd" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListBackends.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListBackends.json new file mode 100644 index 000000000000..2ff24b60f824 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListBackends.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/backends/proxybackend", + "type": "Microsoft.ApiManagement/service/backends", + "name": "proxybackend", + "properties": { + "description": "description5308", + "url": "https://backendname2644/", + "protocol": "http", + "credentials": { + "query": { + "sv": [ + "xx", + "bb", + "cc" + ] + }, + "header": { + "x-my-1": [ + "val1", + "val2" + ] + }, + "authorization": { + "scheme": "Basic", + "parameter": "opensesma" + } + }, + "proxy": { + "url": "http://192.168.1.1:8080", + "username": "Contoso\\admin", + "password": "opensesame" + }, + "tls": { + "validateCertificateChain": false, + "validateCertificateName": false + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/backends/sfbackend", + "type": "Microsoft.ApiManagement/service/backends", + "name": "sfbackend", + "properties": { + "description": "Service Fabric Test App 1", + "url": "fabric:/mytestapp/mytestservice", + "protocol": "http", + "properties": { + "serviceFabricCluster": { + "managementEndpoints": [ + "https://somecluster.com" + ], + "clientCertificatethumbprint": "EBA029198AA3E76EF0D70482626E5BCF148594A6", + "serverX509Names": [ + { + "name": "ServerCommonName1", + "issuerCertificateThumbprint": "IssuerCertificateThumbprint1" + } + ], + "maxPartitionResolutionRetries": 5 + } + } + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListCaches.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListCaches.json new file mode 100644 index 000000000000..df971f34e974 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListCaches.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "serviceName": "apimService1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/caches/westindia", + "type": "Microsoft.ApiManagement/service/caches", + "name": "westindia", + "properties": { + "connectionString": "{{5c68d535a40f7e61103cd285}}}", + "description": "Redis cache instances in West India", + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cache/Redis/contoso5" + } + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListCertificates.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListCertificates.json new file mode 100644 index 000000000000..f5b805259669 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListCertificates.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "serviceName": "apimService1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/kjoshiarmtemplateCert1", + "type": "Microsoft.ApiManagement/service/certificates", + "name": "templateCert1", + "properties": { + "subject": "CN=mutual-authcert", + "thumbprint": "EBA************************48594A6", + "expirationDate": "2017-04-23T17:03:41Z" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListDiagnostics.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListDiagnostics.json new file mode 100644 index 000000000000..046cd506e79c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListDiagnostics.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/diagnostics/applicationinsights", + "type": "Microsoft.ApiManagement/service/diagnostics", + "name": "applicationinsights", + "properties": { + "alwaysLog": "allErrors", + "httpCorrelationProtocol": "Legacy", + "verbosity": "information", + "logClientIp": true, + "loggerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/aisamplingtest", + "sampling": { + "samplingType": "fixed", + "percentage": 100 + }, + "frontend": { + "request": { + "headers": [], + "body": { + "bytes": 0 + } + }, + "response": { + "headers": [], + "body": { + "bytes": 0 + } + } + }, + "backend": { + "request": { + "headers": [], + "body": { + "bytes": 0 + } + }, + "response": { + "headers": [], + "body": { + "bytes": 0 + } + } + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/diagnostics/azuremonitor", + "type": "Microsoft.ApiManagement/service/diagnostics", + "name": "azuremonitor", + "properties": { + "logClientIp": true, + "loggerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/azuremonitor", + "sampling": { + "samplingType": "fixed", + "percentage": 100 + } + } + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListEmailTemplates.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListEmailTemplates.json new file mode 100644 index 000000000000..3432a1106c27 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListEmailTemplates.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "serviceName": "apimService1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/templates/ApplicationApprovedNotificationMessage", + "type": "Microsoft.ApiManagement/service/templates", + "name": "ApplicationApprovedNotificationMessage", + "properties": { + "subject": "Your application $AppName is published in the application gallery", + "body": "\r\n\r\n \r\n \r\n

Dear $DevFirstName $DevLastName,

\r\n

\r\n We are happy to let you know that your request to publish the $AppName application in the application gallery has been approved. Your application has been published and can be viewed here.\r\n

\r\n

Best,

\r\n

The $OrganizationName API Team

\r\n \r\n", + "title": "Application gallery submission approved", + "description": "Developers who submitted their application for publication in the application gallery on the developer portal receive this email after their submission is approved.", + "isDefault": true, + "parameters": [ + { + "name": "AppId", + "title": "Application id" + }, + { + "name": "AppName", + "title": "Application name" + }, + { + "name": "DevFirstName", + "title": "Developer first name" + }, + { + "name": "DevLastName", + "title": "Developer last name" + }, + { + "name": "OrganizationName", + "title": "Organization name" + }, + { + "name": "DevPortalUrl", + "title": "Developer portal URL" + } + ] + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGatewayApis.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGatewayApis.json new file mode 100644 index 000000000000..5855ffa8c177 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGatewayApis.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "gw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/apis/57681820a40f7eb6c49f6aca", + "type": "Microsoft.ApiManagement/service/gateways/apis", + "name": "57681820a40f7eb6c49f6aca", + "properties": { + "displayName": "api_57681820a40f7eb6c49f6acb", + "apiRevision": "1", + "description": "description_57681820a40f7eb6c49f6acc", + "serviceUrl": "http://contoso/57681820a40f7eb6c49f6acd", + "path": "suffix_57681820a40f7eb6c49f6ace", + "protocols": [ + "https" + ], + "isCurrent": true + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGatewayHostnameConfigurations.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGatewayHostnameConfigurations.json new file mode 100644 index 000000000000..c47c50573eb1 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGatewayHostnameConfigurations.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "gw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/hostnameConfigurations/default", + "type": "Microsoft.ApiManagement/service/gateways/hostnameConfigurations", + "name": "default", + "properties": { + "hostname": "*", + "certificateId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/cert1", + "negotiateClientCertificate": false + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1/hostnameConfigurations/hostname1", + "type": "Microsoft.ApiManagement/service/gateways/hostnameConfigurations", + "name": "default", + "properties": { + "hostname": "foo.bar.com", + "certificateId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/certificates/cert2", + "negotiateClientCertificate": true + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGateways.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGateways.json new file mode 100644 index 000000000000..5a149618b1fc --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGateways.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw1", + "type": "Microsoft.ApiManagement/service/gateways", + "name": "a1", + "properties": { + "description": "my gateway 1", + "locationData": { + "name": "my location 1" + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/gateways/gw2", + "type": "Microsoft.ApiManagement/service/gateways", + "name": "5a73933b8f27f7cc82a2d533", + "properties": { + "description": "my gateway 2", + "locationData": { + "name": "my location 2" + } + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGroupUsers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGroupUsers.json new file mode 100644 index 000000000000..baf2caf452a0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGroupUsers.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "groupId": "57d2ef278aa04f0888cba3f3" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/kjoshiarmTemplateUser1", + "type": "Microsoft.ApiManagement/service/groups/users", + "name": "armTemplateUser1", + "properties": { + "firstName": "user1", + "lastName": "lastname1", + "email": "user1@live.com", + "state": "active", + "registrationDate": "2017-05-31T18:54:41.447Z", + "note": "note for user 1", + "identities": [ + { + "provider": "Basic", + "id": "user1@live.com" + } + ] + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGroups.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGroups.json new file mode 100644 index 000000000000..86e460480a91 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListGroups.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/5600b59375ff190048020001", + "type": "Microsoft.ApiManagement/service/groups", + "name": "5600b59375ff190048020001", + "properties": { + "displayName": "Administrators", + "description": "Administrators is a built-in group. Its membership is managed by the system. Microsoft Azure subscription administrators fall into this group.", + "builtIn": true, + "type": "system" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/59306a29e4bbd510dc24e5f9", + "type": "Microsoft.ApiManagement/service/groups", + "name": "59306a29e4bbd510dc24e5f9", + "properties": { + "displayName": "AwesomeGroup (samiraad.onmicrosoft.com)", + "description": "awesome group of people", + "builtIn": false, + "type": "external", + "externalId": "aad://samiraad.onmicrosoft.com/groups/3773adf4-032e-4d25-9988-eaff9ca72eca" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/5600b59375ff190048020002", + "type": "Microsoft.ApiManagement/service/groups", + "name": "5600b59375ff190048020002", + "properties": { + "displayName": "Developers", + "description": "Developers is a built-in group. Its membership is managed by the system. Signed-in users fall into this group.", + "builtIn": true, + "type": "system" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/groups/5600b59375ff190048020003", + "type": "Microsoft.ApiManagement/service/groups", + "name": "5600b59375ff190048020003", + "properties": { + "displayName": "Guests", + "description": "Guests is a built-in group. Its membership is managed by the system. Unauthenticated users visiting the developer portal fall into this group.", + "builtIn": true, + "type": "system" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListIdentityProviders.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListIdentityProviders.json new file mode 100644 index 000000000000..b61782e8f681 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListIdentityProviders.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/identityProviders/Google", + "type": "Microsoft.ApiManagement/service/identityProviders", + "name": "Google", + "properties": { + "clientId": "googleId", + "type": "google" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/identityProviders/Aad", + "type": "Microsoft.ApiManagement/service/identityProviders", + "name": "Aad", + "properties": { + "clientId": "aadapplicationid", + "type": "aad", + "allowedTenants": [ + "samiraad.onmicrosoft.com" + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/identityProviders/AadB2C", + "type": "Microsoft.ApiManagement/service/identityProviders", + "name": "AadB2C", + "properties": { + "clientId": "aadb2clientId", + "type": "aadB2C", + "allowedTenants": [ + "samirtestbc.onmicrosoft.com" + ], + "signupPolicyName": "B2C_1_Signup_Default", + "signinPolicyName": "B2C_1_Signin_Default" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListIssues.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListIssues.json new file mode 100644 index 000000000000..b40f61a3a41c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListIssues.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/issues/57d2ef278aa04f0ad01d6cdc", + "type": "Microsoft.ApiManagement/service/issues", + "name": "57d2ef278aa04f0ad01d6cdc", + "properties": { + "title": "New API issue", + "description": "New API issue description", + "createdDate": "2018-02-01T22:21:20.467Z", + "state": "open", + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1", + "apiId": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/57d1f7558aa04f15146d9d8a" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListLoggers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListLoggers.json new file mode 100644 index 000000000000..732924de4216 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListLoggers.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "serviceName": "apimService1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/buffered111", + "type": "Microsoft.ApiManagement/service/loggers", + "name": "buffered111", + "properties": { + "loggerType": "azureEventHub", + "description": "Sample description", + "credentials": { + "connectionString": "Endpoint=sb://apimaccounts.servicebus.windows.net/;SharedAccessKeyName=Send;SharedAccessKey=*******************h=****" + }, + "isBuffered": true, + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.EventHub/namespaces/apimaccounts" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/loggers/loggerId", + "type": "Microsoft.ApiManagement/service/loggers", + "name": "loggerId", + "properties": { + "loggerType": "azureEventHub", + "description": "adding a new logger", + "credentials": { + "name": "hydraeventhub", + "connectionString": "{{Logger-Credentials-59544ef2e4bbd50d9468c618}}" + }, + "isBuffered": true, + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.EventHub/namespaces/hydraeventhub-ns" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListNamedValues.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListNamedValues.json new file mode 100644 index 000000000000..9ffa921acc1c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListNamedValues.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/namedValues/592f1174cc83890dc4f32686", + "type": "Microsoft.ApiManagement/service/namedValues", + "name": "592f1174cc83890dc4f32686", + "properties": { + "displayName": "Logger-Credentials-592f1174cc83890dc4f32687", + "value": "propValue", + "secret": false + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/namedValues/testarmTemplateproperties2", + "type": "Microsoft.ApiManagement/service/namedValues", + "name": "testarmTemplateproperties2", + "properties": { + "displayName": "propName", + "tags": [ + "foo", + "bar" + ], + "secret": true + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListNotificationRecipientEmails.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListNotificationRecipientEmails.json new file mode 100644 index 000000000000..13e7d42c04bb --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListNotificationRecipientEmails.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/contoso@live.com", + "type": "Microsoft.ApiManagement/service/notifications/recipientEmails", + "name": "contoso@live.com", + "properties": { + "email": "contoso@live.com" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/foobar!live", + "type": "Microsoft.ApiManagement/service/notifications/recipientEmails", + "name": "foobar!live", + "properties": { + "email": "foobar!live" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/foobar@live.com", + "type": "Microsoft.ApiManagement/service/notifications/recipientEmails", + "name": "foobar@live.com", + "properties": { + "email": "foobar@live.com" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListNotificationRecipientUsers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListNotificationRecipientUsers.json new file mode 100644 index 000000000000..42a21332bcd8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListNotificationRecipientUsers.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "notificationName": "RequestPublisherNotificationMessage" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientUsers/576823d0a40f7e74ec07d642", + "type": "Microsoft.ApiManagement/service/notifications/recipientUsers", + "name": "576823d0a40f7e74ec07d642", + "properties": { + "userId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/576823d0a40f7e74ec07d642" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListNotifications.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListNotifications.json new file mode 100644 index 000000000000..ac3a6a632311 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListNotifications.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage", + "type": "Microsoft.ApiManagement/service/notifications", + "name": "RequestPublisherNotificationMessage", + "properties": { + "title": "Subscription requests (requiring approval)", + "description": "The following email recipients and users will receive email notifications about subscription requests for API products requiring approval.", + "recipients": { + "emails": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/contoso@live.com", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/foobar!live", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/foobar@live.com" + ], + "users": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/576823d0a40f7e74ec07d642" + ] + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/PurchasePublisherNotificationMessage", + "type": "Microsoft.ApiManagement/service/notifications", + "name": "PurchasePublisherNotificationMessage", + "properties": { + "title": "New subscriptions", + "description": "The following email recipients and users will receive email notifications about new API product subscriptions.", + "recipients": { + "emails": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/contoso@live.com" + ], + "users": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + ] + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/NewApplicationNotificationMessage", + "type": "Microsoft.ApiManagement/service/notifications", + "name": "NewApplicationNotificationMessage", + "properties": { + "title": "Application gallery requests", + "description": "The following email recipients and users will receive email notifications when new applications are submitted to the application gallery.", + "recipients": { + "emails": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/contoso@live.com" + ], + "users": [] + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/BCC", + "type": "Microsoft.ApiManagement/service/notifications", + "name": "BCC", + "properties": { + "title": "BCC", + "description": "The following recipients will receive blind carbon copies of all emails sent to developers.", + "recipients": { + "emails": [], + "users": [] + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/NewIssuePublisherNotificationMessage", + "type": "Microsoft.ApiManagement/service/notifications", + "name": "NewIssuePublisherNotificationMessage", + "properties": { + "title": "New issue or comment", + "description": "The following email recipients and users will receive email notifications when a new issue or comment is submitted on the developer portal.", + "recipients": { + "emails": [], + "users": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + ] + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/AccountClosedPublisher", + "type": "Microsoft.ApiManagement/service/notifications", + "name": "AccountClosedPublisher", + "properties": { + "title": "Close account message", + "description": "The following email recipients and users will receive email notifications when developer closes his account", + "recipients": { + "emails": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/RequestPublisherNotificationMessage/recipientEmails/contoso@live.com" + ], + "users": [] + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/notifications/QuotaLimitApproachingPublisherNotificationMessage", + "type": "Microsoft.ApiManagement/service/notifications", + "name": "QuotaLimitApproachingPublisherNotificationMessage", + "properties": { + "title": "Approaching subscription quota limit", + "description": "The following email recipients and users will receive email notifications when subscription usage gets close to usage quota.", + "recipients": { + "emails": [], + "users": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1" + ] + } + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListOpenIdConnectProviders.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListOpenIdConnectProviders.json new file mode 100644 index 000000000000..4ee94af64e29 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListOpenIdConnectProviders.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "serviceName": "apimService1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/openidConnectProviders/templateOpenIdConnect2", + "type": "Microsoft.ApiManagement/service/openidconnectproviders", + "name": "templateOpenIdConnect2", + "properties": { + "displayName": "templateoidprovider2", + "description": "open id provider template2", + "metadataEndpoint": "https://oidprovider-template2.net", + "clientId": "oidprovidertemplate2" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListOperations.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListOperations.json new file mode 100644 index 000000000000..7b956348db16 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListOperations.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.ApiManagement/service/write", + "display": { + "provider": "Microsoft API Management", + "resource": "Service", + "operation": "Create a new instance of API Management Service", + "description": "Create a new instance of API Management Service" + } + }, + { + "name": "Microsoft.ApiManagement/service/read", + "display": { + "provider": "Microsoft API Management", + "resource": "Service", + "operation": "Read metadata for an API Management Service instance", + "description": "Read metadata for an API Management Service instance" + } + }, + { + "name": "Microsoft.ApiManagement/service/delete", + "display": { + "provider": "Microsoft API Management", + "resource": "Service", + "operation": "Delete API Management Service instance", + "description": "Delete API Management Service instance" + } + }, + { + "origin": "system", + "name": "Microsoft.ApiManagement/service/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft API Management", + "resource": "Service", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for API Management service" + } + }, + { + "name": "Microsoft.ApiManagement/service/tenant/operationResults/read", + "display": { + "provider": "Microsoft API Management", + "resource": "Results of async operations", + "operation": "Get operation results or Get operation result", + "description": "Get list of operation results or Get result of a specific operation" + } + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListPolicies.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListPolicies.json new file mode 100644 index 000000000000..1f5872f376d5 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListPolicies.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/policies/policy", + "type": "Microsoft.ApiManagement/service/policies", + "name": "policy", + "properties": { + "value": "\r\n\r\n \r\n \r\n \r\n \r\n \r\n" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListPolicyDescriptions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListPolicyDescriptions.json new file mode 100644 index 000000000000..63c634464738 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListPolicyDescriptions.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "scope": "Api" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/policyDescriptions/authentication-basic", + "type": "Microsoft.ApiManagement/service/policyDescriptions", + "name": "authentication-basic", + "properties": { + "description": "Authenticate with the backend service using Basic authentication. Use in the inbound section at API scope.", + "scope": 268435471 + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/policyDescriptions/authentication-certificate", + "type": "Microsoft.ApiManagement/service/policyDescriptions", + "name": "authentication-certificate", + "properties": { + "description": "Authenticate with the backend service using a client certificate. Use in the inbound section at API scope.", + "scope": 268435471 + } + } + ], + "count": 2 + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductApis.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductApis.json new file mode 100644 index 000000000000..292538cd099d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductApis.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "5768181ea40f7eb6c49f6ac7" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5768181ea40f7eb6c49f6ac7/apis/57681820a40f7eb6c49f6aca", + "type": "Microsoft.ApiManagement/service/products/apis", + "name": "57681820a40f7eb6c49f6aca", + "properties": { + "displayName": "api_57681820a40f7eb6c49f6acb", + "apiRevision": "1", + "description": "description_57681820a40f7eb6c49f6acc", + "serviceUrl": "http://contoso/57681820a40f7eb6c49f6acd", + "path": "suffix_57681820a40f7eb6c49f6ace", + "protocols": [ + "https" + ], + "isCurrent": true + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductGroups.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductGroups.json new file mode 100644 index 000000000000..8cdef2e9f242 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductGroups.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "5600b57e7e8880006a060002" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b57e7e8880006a060002/groups/5600b57e7e8880006a020001", + "type": "Microsoft.ApiManagement/service/products/groups", + "name": "5600b57e7e8880006a020001", + "properties": { + "displayName": "Administrators", + "description": "Administrators is a built-in group. Its membership is managed by the system. Microsoft Azure subscription administrators fall into this group.", + "builtIn": true, + "type": "system" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b57e7e8880006a060002/groups/5600b57e7e8880006a020002", + "type": "Microsoft.ApiManagement/service/products/groups", + "name": "5600b57e7e8880006a020002", + "properties": { + "displayName": "Developers", + "description": "Developers is a built-in group. Its membership is managed by the system. Signed-in users fall into this group.", + "builtIn": true, + "type": "system" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b57e7e8880006a060002/groups/5600b57e7e8880006a020003", + "type": "Microsoft.ApiManagement/service/products/groups", + "name": "5600b57e7e8880006a020003", + "properties": { + "displayName": "Guests", + "description": "Guests is a built-in group. Its membership is managed by the system. Unauthenticated users visiting the developer portal fall into this group.", + "builtIn": true, + "type": "system" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductPolicies.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductPolicies.json new file mode 100644 index 000000000000..ba70650fe628 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductPolicies.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "armTemplateProduct4" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/armTemplateProduct4/policies/policy", + "type": "Microsoft.ApiManagement/service/products/policies", + "name": "policy", + "properties": { + "value": "\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductSubscriptions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductSubscriptions.json new file mode 100644 index 000000000000..78e28dbbafc3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductSubscriptions.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "5600b57e7e8880006a060002" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b57e7e8880006a060002/subscriptions/5600b57e7e8880006a070002", + "type": "Microsoft.ApiManagement/service/products/subscriptions", + "name": "5600b57e7e8880006a070002", + "properties": { + "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1", + "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b57e7e8880006a060002", + "state": "active", + "createdDate": "2015-09-22T01:57:18.723Z" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductTags.json new file mode 100644 index 000000000000..00748365ad71 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductTags.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "57d2ef278aa04f0888cba3f1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/5600b539c53f5b0062060002", + "type": "Microsoft.ApiManagement/service/tags", + "name": "5600b539c53f5b0062060002", + "properties": { + "displayName": "tag1" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProducts.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProducts.json new file mode 100644 index 000000000000..b84407644598 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProducts.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/kjoshiarmtemplateCert1", + "type": "Microsoft.ApiManagement/service/products", + "name": "kjoshiarmtemplateCert1", + "properties": { + "displayName": "Dev", + "description": "Development Product", + "subscriptionRequired": false, + "state": "published" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/starter", + "type": "Microsoft.ApiManagement/service/products", + "name": "starter", + "properties": { + "displayName": "Starter", + "description": "Subscribers will be able to run 5 calls/minute up to a maximum of 100 calls/week.", + "terms": "", + "subscriptionRequired": true, + "approvalRequired": false, + "subscriptionsLimit": 1, + "state": "published" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/unlimited", + "type": "Microsoft.ApiManagement/service/products", + "name": "unlimited", + "properties": { + "displayName": "Unlimited", + "description": "Subscribers have completely unlimited access to the API. Administrator approval is required.", + "subscriptionRequired": true, + "approvalRequired": true, + "subscriptionsLimit": 1, + "state": "published" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductsByTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductsByTags.json new file mode 100644 index 000000000000..b933f1a7f3be --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListProductsByTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "tag": { + "id": "/tags/apitag123", + "name": "awesomeTag" + }, + "product": { + "id": "/products/starter", + "name": "Starter", + "description": "Subscribers will be able to run 5 calls/minute up to a maximum of 100 calls/week.", + "terms": "", + "subscriptionRequired": true, + "approvalRequired": false, + "subscriptionsLimit": 1, + "state": "published" + } + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListRegions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListRegions.json new file mode 100644 index 000000000000..89a874935a99 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListRegions.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "West US", + "isMasterRegion": true, + "isDeleted": false + } + ], + "count": 1, + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSKUs-Consumption.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSKUs-Consumption.json new file mode 100644 index 000000000000..20a41f3a310f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSKUs-Consumption.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "Microsoft.ApiManagement/service", + "sku": { + "name": "Consumption" + }, + "capacity": null + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSKUs-Dedicated.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSKUs-Dedicated.json new file mode 100644 index 000000000000..14e604edbb44 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSKUs-Dedicated.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "Microsoft.ApiManagement/service", + "sku": { + "name": "Developer" + }, + "capacity": { + "minimum": 1, + "maximum": 1, + "default": 1, + "scaleType": "none" + } + }, + { + "resourceType": "Microsoft.ApiManagement/service", + "sku": { + "name": "Basic" + }, + "capacity": { + "minimum": 1, + "maximum": 2, + "default": 1, + "scaleType": "manual" + } + }, + { + "resourceType": "Microsoft.ApiManagement/service", + "sku": { + "name": "Standard" + }, + "capacity": { + "minimum": 1, + "maximum": 4, + "default": 1, + "scaleType": "automatic" + } + }, + { + "resourceType": "Microsoft.ApiManagement/service", + "sku": { + "name": "Premium" + }, + "capacity": { + "minimum": 1, + "maximum": 10, + "default": 1, + "scaleType": "automatic" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsAuthorizationServer.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsAuthorizationServer.json new file mode 100644 index 000000000000..155ae58fbb3a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsAuthorizationServer.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "authsid": "newauthServer2" + }, + "responses": { + "200": { + "body": { + "clientSecret": "2" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsIdentityProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsIdentityProvider.json new file mode 100644 index 000000000000..234938c21985 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsIdentityProvider.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "identityProviderName": "aadB2C" + }, + "responses": { + "200": { + "body": { + "clientSecret": "XXXXXXX" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsNamedValue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsNamedValue.json new file mode 100644 index 000000000000..9e190440257c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsNamedValue.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "namedValueId": "testarmTemplateproperties2" + }, + "responses": { + "200": { + "body": { + "value": "propValue" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsOpenIdConnectProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsOpenIdConnectProvider.json new file mode 100644 index 000000000000..cff64b91fd20 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsOpenIdConnectProvider.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "opid": "templateOpenIdConnect2" + }, + "responses": { + "200": { + "body": { + "clientSecret": "oidsecretproviderTemplate2" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsPortalSettingsValidationKey.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsPortalSettingsValidationKey.json new file mode 100644 index 000000000000..a35a30f8d338 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsPortalSettingsValidationKey.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "validationKey": "nVF7aKIvr9mV/RM5lOD0sYoi8ThXTRHQP7o66hvUmjCDkPKR3qxPu/otJcNciz2aQdqPuzJH3ECG4TU2yZjQ7Q==" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsSubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsSubscription.json new file mode 100644 index 000000000000..382995492868 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsSubscription.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "sid": "5931a769d8d14f0ad8ce13b8" + }, + "responses": { + "200": { + "body": { + "primaryKey": "6de0a3b2da204e459148d2f6785873f0", + "secondaryKey": "c6de00b451f64ea780db1eb8dcf30b62" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsTenantAccess.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsTenantAccess.json new file mode 100644 index 000000000000..330d498ca16d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSecretsTenantAccess.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "accessName": "access" + }, + "responses": { + "200": { + "body": { + "id": "5600b59375ff190048030003", + "primaryKey": "qr5nbjNoZkgtLojXgU+OA/ntYMgko3XPSVyt+ObwR1sqp2ZkM9tGhwxkeEz7bfAuPS5ss61b2S3ZrZmqa9v3Mw==", + "secondaryKey": "2dCJv1CasJl286SZiKxyBFDiIYCUdbwM1YrFNDcFMXCjCKbFzomrGkv+exAbnV5E3DEk91VP4jbeJ2eV/qtejA==", + "enabled": true + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListServiceBySubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListServiceBySubscription.json new file mode 100644 index 000000000000..2afc23c8a233 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListServiceBySubscription.json @@ -0,0 +1,164 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService3", + "name": "apimService3", + "type": "Microsoft.ApiManagement/service", + "tags": {}, + "location": "West US", + "etag": "AAAAAAAXXAQ=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "contoso", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2017-05-27T15:33:55.5426123Z", + "gatewayUrl": "https://apimService3.azure-api.net", + "portalUrl": "https://apimService3.portal.azure-api.net", + "managementApiUrl": "https://apimService3.management.azure-api.net", + "scmUrl": "https://apimService3.scm.azure-api.net", + "hostnameConfigurations": [], + "publicIPAddresses": [ + "13.88.16.64" + ], + "additionalLocations": [ + { + "location": "West Europe", + "sku": { + "name": "Premium", + "capacity": 1 + }, + "publicIPAddresses": [ + "52.233.184.197" + ] + } + ], + "virtualNetworkType": "None" + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.ApiManagement/service/apimService2", + "name": "apimService2", + "type": "Microsoft.ApiManagement/service", + "tags": {}, + "location": "West US", + "etag": "AAAAAAAXW4U=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "MS", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2017-05-26T23:55:31.1405115Z", + "gatewayUrl": "https://apimService2.azure-api.net", + "portalUrl": "https://apimService2.portal.azure-api.net", + "managementApiUrl": "https://apimService2.management.azure-api.net", + "scmUrl": "https://apimService2.scm.azure-api.net", + "hostnameConfigurations": [], + "publicIPAddresses": [ + "13.64.237.151" + ], + "virtualNetworkType": "None" + }, + "sku": { + "name": "Developer", + "capacity": 1 + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService5", + "name": "apimService5", + "type": "Microsoft.ApiManagement/service", + "tags": {}, + "location": "West US", + "etag": "AAAAAAAXW5c=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "contoso", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2017-05-26T18:13:02.0196315Z", + "gatewayUrl": "https://apimService5.azure-api.net", + "portalUrl": "https://apimService5.portal.azure-api.net", + "managementApiUrl": "https://apimService5.management.azure-api.net", + "scmUrl": "https://apimService5.scm.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "proxytemplatehostname1.contoso.com", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "DE57B67BA63D21E925DA8BEFA436E6B7553A4C19", + "subject": "CN=proxytemplatehostname1.contoso.com" + } + }, + { + "type": "Proxy", + "hostName": "proxytemplatehostname2.contoso.com", + "negotiateClientCertificate": true, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "DE57B67BA63D21E925DA8BEFA436E6B7553A4C19", + "subject": "CN=proxytemplatehostname2.contoso.com" + } + }, + { + "type": "Proxy", + "hostName": "proxytemplatehostname3.azure-api.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "918D7785B926AC5AEE66322778A147BCE7237CF3", + "subject": "CN=proxytemplatehostname3.contoso.com" + } + }, + { + "type": "Proxy", + "hostName": "proxytemplatehostname4.azure-api.net", + "negotiateClientCertificate": true, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "918D7785B926AC5AEE66322778A147BCE7237CF3", + "subject": "CN=proxytemplatehostname4.contoso.com" + } + }, + { + "type": "Portal", + "hostName": "portaltemplatehostname1.contoso.com", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2018-03-17T21:55:07+00:00", + "thumbprint": "DE57B67BA63D21E925DA8BEFA436E6B7553A4C19", + "subject": "CN=portaltemplatehostname1.contoso.com" + } + } + ], + "publicIPAddresses": [ + "13.93.167.166" + ], + "virtualNetworkType": "None" + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListServiceBySubscriptionAndResourceGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListServiceBySubscriptionAndResourceGroup.json new file mode 100644 index 000000000000..259dddfdace5 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListServiceBySubscriptionAndResourceGroup.json @@ -0,0 +1,121 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "Pool": "Perf", + "UID": "98f4a706-98c7-4aec-8e39-51ab2e4aaf22" + }, + "location": "West US", + "etag": "AAAAAAAhNiA=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "contoso", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2019-10-13T01:36:27.1706097Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "gatewayRegionalUrl": "https://apimService1-westus-01.regional.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true + } + ], + "publicIPAddresses": [ + "104.42.221.195" + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2": "False" + }, + "virtualNetworkType": "None", + "disableGateway": false, + "apiVersionConstraint": {} + }, + "sku": { + "name": "Standard", + "capacity": 1 + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService2", + "name": "apimService2", + "type": "Microsoft.ApiManagement/service", + "tags": { + "Pool": "Endurance", + "UID": "07d6dd0e-111f-4b5c-81f3-87e5501d0408" + }, + "location": "West US", + "etag": "AAAAAAAhNh4=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "contoso", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2019-10-13T01:36:27.4003514Z", + "gatewayUrl": "https://apimService2.azure-api.net", + "gatewayRegionalUrl": "https://apimService2-westus-01.regional.azure-api.net", + "portalUrl": "https://apimService2.portal.azure-api.net", + "developerPortalUrl": "https://apimService2.developer.azure-api.net", + "managementApiUrl": "https://apimService2.management.azure-api.net", + "scmUrl": "https://apimService2.scm.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService2.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": true + } + ], + "publicIPAddresses": [ + "104.42.220.196" + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2": "False" + }, + "virtualNetworkType": "None", + "disableGateway": false, + "apiVersionConstraint": {} + }, + "sku": { + "name": "Standard", + "capacity": 1 + } + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSubscriptions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSubscriptions.json new file mode 100644 index 000000000000..45ac0e309787 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListSubscriptions.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/subscriptions/5600b59475ff190048070001", + "type": "Microsoft.ApiManagement/service/subscriptions", + "name": "5600b59475ff190048070001", + "properties": { + "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1", + "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b59475ff190048060001", + "state": "active", + "createdDate": "2015-09-22T01:57:40.3Z" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/subscriptions/56eaed3dbaf08b06e46d27fe", + "type": "Microsoft.ApiManagement/service/subscriptions", + "name": "56eaed3dbaf08b06e46d27fe", + "properties": { + "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/56eaec62baf08b06e46d27fd", + "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b59475ff190048060001", + "displayName": "Starter", + "state": "active", + "createdDate": "2016-03-17T17:45:33.837Z", + "startDate": "2016-03-17T00:00:00Z", + "expirationDate": "2016-04-01T00:00:00Z", + "notificationDate": "2016-03-20T00:00:00Z" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/subscriptions/5931a769d8d14f0ad8ce13b8", + "type": "Microsoft.ApiManagement/service/subscriptions", + "name": "5931a769d8d14f0ad8ce13b8", + "properties": { + "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/5931a75ae4bbd512a88c680b", + "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5600b59475ff190048060002", + "displayName": "Unlimited", + "state": "submitted", + "createdDate": "2017-06-02T17:59:06.223Z" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListTagResources.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListTagResources.json new file mode 100644 index 000000000000..f74d05edb72b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListTagResources.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "tag": { + "id": "/tags/apitag123", + "name": "awesomeTag" + }, + "operation": { + "id": "/apis/echo-api/operations/create-resource", + "apiName": "Echo API", + "apiRevision": "1", + "name": "Create resource", + "method": "POST", + "urlTemplate": "/resource", + "description": "A demonstration of a POST call based on the echo backend above. The request body is expected to contain JSON-formatted data (see example below). A policy is used to automatically transform any request sent in JSON directly to XML. In a real-world scenario this could be used to enable modern clients to speak to a legacy backend." + } + }, + { + "tag": { + "id": "/tags/apitag123", + "name": "awesomeTag" + }, + "api": { + "id": "/apis/echo-api", + "name": "Echo API", + "apiRevision": "1", + "serviceUrl": "http://echoapi.cloudapp.net/api", + "path": "echo", + "isCurrent": true + } + }, + { + "tag": { + "id": "/tags/apitag123", + "name": "awesomeTag" + }, + "product": { + "id": "/products/starter", + "name": "Starter", + "description": "Subscribers will be able to run 5 calls/minute up to a maximum of 100 calls/week.", + "terms": "", + "subscriptionRequired": true, + "approvalRequired": false, + "subscriptionsLimit": 1, + "state": "published" + } + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListTags.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListTags.json new file mode 100644 index 000000000000..ff37f4df7ec8 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListTags.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/5600b59375ff190048020001", + "type": "Microsoft.ApiManagement/service/tags", + "name": "5600b59375ff190048020001", + "properties": { + "displayName": "tag1" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tags/5600b59375ff190048020002", + "type": "Microsoft.ApiManagement/service/tags", + "name": "5600b59375ff190048020002", + "properties": { + "displayName": "tag2" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListUserGroups.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListUserGroups.json new file mode 100644 index 000000000000..29649b225a8f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListUserGroups.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "57681833a40f7eb6c49f6acf" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57681833a40f7eb6c49f6acf/groups/5600b57e7e8880006a020002", + "type": "Microsoft.ApiManagement/service/users/groups", + "name": "5600b57e7e8880006a020002", + "properties": { + "displayName": "Developers", + "description": "Developers is a built-in group. Its membership is managed by the system. Signed-in users fall into this group.", + "builtIn": true, + "type": "system" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListUserIdentities.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListUserIdentities.json new file mode 100644 index 000000000000..78ea66398d60 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListUserIdentities.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "57f2af53bb17172280f44057" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "provider": "Microsoft", + "id": "086cf9********55ab" + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListUserSubscriptions.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListUserSubscriptions.json new file mode 100644 index 000000000000..8e6ae3b3ecc2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListUserSubscriptions.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "57681833a40f7eb6c49f6acf" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57681833a40f7eb6c49f6acf/subscriptions/57681850a40f7eb6c49f6ae3", + "type": "Microsoft.ApiManagement/service/users/subscriptions", + "name": "57681850a40f7eb6c49f6ae3", + "properties": { + "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57681833a40f7eb6c49f6acf", + "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5768181ea40f7eb6c49f6ac7", + "displayName": "57681850a40f7eb6c49f6ae5", + "state": "active", + "createdDate": "2016-06-20T16:22:39.547Z", + "startDate": "2016-06-20T00:00:00Z" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57681833a40f7eb6c49f6acf/subscriptions/57681850a40f7eb6c49f6b2b", + "type": "Microsoft.ApiManagement/service/users/subscriptions", + "name": "57681850a40f7eb6c49f6b2b", + "properties": { + "ownerId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/57681833a40f7eb6c49f6acf", + "scope": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/products/5768181ea40f7eb6c49f6ac7", + "displayName": "57681850a40f7eb6c49f6b2d", + "state": "active", + "createdDate": "2016-06-20T16:22:41.103Z", + "startDate": "2016-06-20T00:00:00Z" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListUsers.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListUsers.json new file mode 100644 index 000000000000..84d3756a891f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementListUsers.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "serviceName": "apimService1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/1", + "type": "Microsoft.ApiManagement/service/users", + "name": "1", + "properties": { + "firstName": "Administrator", + "lastName": "", + "email": "admin@live.com", + "state": "active", + "registrationDate": "2015-09-22T01:57:39.677Z", + "identities": [ + { + "provider": "Azure", + "id": "admin@live.com" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/56eaec62baf08b06e46d27fd", + "type": "Microsoft.ApiManagement/service/users", + "name": "56eaec62baf08b06e46d27fd", + "properties": { + "firstName": "foo", + "lastName": "bar", + "email": "foo.bar.83@gmail.com", + "state": "active", + "registrationDate": "2016-03-17T17:41:56.327Z", + "identities": [ + { + "provider": "Basic", + "id": "foo.bar.83@gmail.com" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/5931a75ae4bbd512a88c680b", + "type": "Microsoft.ApiManagement/service/users", + "name": "5931a75ae4bbd512a88c680b", + "properties": { + "firstName": "foo", + "lastName": "bar", + "email": "foobar@outlook.com", + "state": "active", + "registrationDate": "2017-06-02T17:58:50.357Z", + "identities": [ + { + "provider": "Microsoft", + "id": "*************" + } + ] + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsGetDelegation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsGetDelegation.json new file mode 100644 index 000000000000..e86d6bca1dda --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsGetDelegation.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/portalsettings/delegation", + "type": "Microsoft.ApiManagement/service/portalsettings", + "name": "delegation", + "properties": { + "url": "http://contoso.com/delegation", + "subscriptions": { + "enabled": true + }, + "userRegistration": { + "enabled": true + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsGetSignIn.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsGetSignIn.json new file mode 100644 index 000000000000..7ddbe5ac44c2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsGetSignIn.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/portalsettings/signin", + "type": "Microsoft.ApiManagement/service/portalsettings", + "name": "signin", + "properties": { + "enabled": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsGetSignUp.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsGetSignUp.json new file mode 100644 index 000000000000..b72738f3050e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsGetSignUp.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/portalsettings/signup", + "type": "Microsoft.ApiManagement/service/portalsettings", + "name": "signup", + "properties": { + "enabled": true, + "termsOfService": { + "text": "Terms of service text.", + "enabled": true, + "consentRequired": true + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsPutDelegation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsPutDelegation.json new file mode 100644 index 000000000000..c055028f1af6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsPutDelegation.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512288c680b", + "If-Match": "*", + "parameters": { + "properties": { + "url": "http://contoso.com/delegation", + "validationKey": "nVF7aKIvr9mV/RM5lOD0sYoi8ThXTRHQP7o66hvUmjCDkPKR3qxPu/otJcNciz2aQdqPuzJH3ECG4TU2yZjQ7Q==", + "subscriptions": { + "enabled": true + }, + "userRegistration": { + "enabled": true + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/portalsettings/delegation", + "type": "Microsoft.ApiManagement/service/portalsettings", + "name": "delegation", + "properties": { + "url": "http://contoso.com/delegation", + "subscriptions": { + "enabled": true + }, + "userRegistration": { + "enabled": true + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsPutSignIn.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsPutSignIn.json new file mode 100644 index 000000000000..f171cfa71f2e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsPutSignIn.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512288c680b", + "If-Match": "*", + "parameters": { + "properties": { + "enabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/portalsettings/signin", + "type": "Microsoft.ApiManagement/service/portalsettings", + "name": "signin", + "properties": { + "enabled": true + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsPutSignUp.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsPutSignUp.json new file mode 100644 index 000000000000..40e2693f9f25 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsPutSignUp.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512288c680b", + "If-Match": "*", + "parameters": { + "properties": { + "enabled": true, + "termsOfService": { + "enabled": true, + "text": "Terms of service text.", + "consentRequired": true + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/portalsettings/signup", + "type": "Microsoft.ApiManagement/service/portalsettings", + "name": "signup", + "properties": { + "enabled": true, + "termsOfService": { + "text": "Terms of service text.", + "enabled": true, + "consentRequired": true + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsUpdateDelegation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsUpdateDelegation.json new file mode 100644 index 000000000000..79de717780ff --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsUpdateDelegation.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512288c680b", + "If-Match": "*", + "parameters": { + "properties": { + "url": "http://contoso.com/delegation", + "validationKey": "nVF7aKIvr9mV/RM5lOD0sYoi8ThXTRHQP7o66hvUmjCDkPKR3qxPu/otJcNciz2aQdqPuzJH3ECG4TU2yZjQ7Q==", + "subscriptions": { + "enabled": true + }, + "userRegistration": { + "enabled": true + } + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsUpdateSignIn.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsUpdateSignIn.json new file mode 100644 index 000000000000..37ab432fc876 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsUpdateSignIn.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512288c680b", + "If-Match": "*", + "parameters": { + "properties": { + "enabled": true + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsUpdateSignUp.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsUpdateSignUp.json new file mode 100644 index 000000000000..3543d865f71e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementPortalSettingsUpdateSignUp.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512288c680b", + "If-Match": "*", + "parameters": { + "properties": { + "enabled": true, + "termsOfService": { + "enabled": true, + "text": "Terms of service text.", + "consentRequired": true + } + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementRestoreService.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementRestoreService.json new file mode 100644 index 000000000000..55936485b01b --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementRestoreService.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "parameters": { + "storageAccount": "teststorageaccount", + "accessKey": "**************************************************", + "containerName": "backupContainer", + "backupName": "apimService1backup_2017_03_19" + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/dGVjaGVkX01hbmFnZVJvbGVfNWRiNGI3Ng==?api-version=2019-12-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "West US", + "etag": "AAAAAAACXok=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2019-12-18T06:26:20.3348609Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "gatewayRegionalUrl": "https://apimService1-westus-01.regional.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": false + }, + { + "type": "Proxy", + "hostName": "gateway1.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989XXXXXXXXXXXXXXXXB9C2C91F1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": true + }, + { + "type": "Management", + "hostName": "mgmt.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989XXXXXXXXXXXXXXXXB9C2C91F1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": false + }, + { + "type": "Portal", + "hostName": "portal1.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989XXXXXXXXXXXXXXXXB9C2C91F1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": false + } + ], + "publicIPAddresses": [ + "13.91.32.113" + ], + "additionalLocations": [ + { + "location": "East US", + "sku": { + "name": "Premium", + "capacity": 1 + }, + "publicIPAddresses": [ + "23.101.138.153" + ], + "gatewayRegionalUrl": "https://apimService1-eastus-01.regional.azure-api.net", + "disableGateway": true + } + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2": "False" + }, + "virtualNetworkType": "None", + "disableGateway": false, + "apiVersionConstraint": { + "minApiVersion": "2019-01-01" + } + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceCheckNameAvailability.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceCheckNameAvailability.json new file mode 100644 index 000000000000..b7bcad0dba80 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceCheckNameAvailability.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "parameters": { + "name": "apimService1" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true, + "reason": "Valid", + "message": "" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceDeleteService.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceDeleteService.json new file mode 100644 index 000000000000..7a960b693eac --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceDeleteService.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/operationresults/TGV2eTExMDZtMDJfVGVybV9jMmZlY2QwMA==?api-version=2019-12-01" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": {}, + "location": "West US", + "etag": "AAAAAAFfhHY=", + "properties": { + "publisherEmail": "contoso@live.com", + "publisherName": "Microsoft", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "Deleting", + "createdAtUtc": "2016-12-20T19:41:21.5823069Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "gatewayRegionalUrl": "https://apimService1-westus-01.regional.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [], + "publicIPAddresses": [ + "40.XX.XXX.168" + ], + "virtualNetworkConfiguration": { + "subnetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/BlockVNETSamir/subnets/default" + }, + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2": "False" + }, + "virtualNetworkType": "External" + }, + "sku": { + "name": "Developer", + "capacity": 1 + } + } + }, + "204": {}, + "200": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetMultiRegionInternalVnet.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetMultiRegionInternalVnet.json new file mode 100644 index 000000000000..cd4cb522b684 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetMultiRegionInternalVnet.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimservice1", + "name": "apimservice1", + "type": "Microsoft.ApiManagement/service", + "tags": {}, + "location": "West US", + "etag": "AAAAAADqC0c=", + "properties": { + "publisherEmail": "abcs@contoso.com", + "publisherName": "contoso publisher", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2019-12-02T01:42:09.1268424Z", + "gatewayUrl": "https://apimservice1.azure-api.net", + "gatewayRegionalUrl": "https://apimservice1-westus-01.regional.azure-api.net", + "portalUrl": "https://apimservice1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", + "managementApiUrl": "https://apimservice1.management.azure-api.net", + "scmUrl": "https://apimservice1.scm.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": false + }, + { + "type": "Proxy", + "hostName": "apimgatewaytest.preview.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2019-08-16T16:51:34+00:00", + "thumbprint": "B4330123DBAXXXXXXXXX1F35E84493476", + "subject": "CN=*.preview.net" + }, + "defaultSslBinding": true + } + ], + "publicIPAddresses": [ + "137.XXX.11.74" + ], + "privateIPAddresses": [ + "172.XX.0.5" + ], + "additionalLocations": [ + { + "location": "West US 2", + "sku": { + "name": "Premium", + "capacity": 1 + }, + "publicIPAddresses": [ + "40.XXX.79.187" + ], + "privateIPAddresses": [ + "10.0.X.6" + ], + "virtualNetworkConfiguration": { + "subnetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/APIMVNet/subnets/apim-internal-sub" + }, + "gatewayRegionalUrl": "https://apimservice1-westus2-01.regional.azure-api.net", + "disableGateway": false + } + ], + "virtualNetworkConfiguration": { + "subnetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/apim-appGateway-vnet/subnets/apim-subnet" + }, + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False" + }, + "virtualNetworkType": "Internal", + "disableGateway": false, + "apiVersionConstraint": {} + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetNetworkStatus.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetNetworkStatus.json new file mode 100644 index 000000000000..13dff7c0c483 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetNetworkStatus.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "location": "West Europe", + "networkStatus": { + "dnsServers": [ + "100.78.90.70" + ], + "connectivityStatus": [ + { + "name": "apimgmtsttgzqxxxxxcrsc.blob.core.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2019-12-18T12:04:43.6997938Z", + "lastStatusChange": "2019-01-24T21:47:53.851895Z" + }, + { + "name": "apimgmtsttgzqxxxxxcrsc.file.core.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2019-12-18T12:04:44.0439771Z", + "lastStatusChange": "2019-05-02T21:22:50.6835366Z" + }, + { + "name": "apimgmtsttgzqxxxxxcrsc.queue.core.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2019-12-18T12:04:44.8564232Z", + "lastStatusChange": "2019-05-02T20:53:26.6260794Z" + }, + { + "name": "apimgmtsttgzqxxxxxcrsc.table.core.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2019-12-18T12:04:44.0439771Z", + "lastStatusChange": "2019-05-02T20:53:21.6729263Z" + }, + { + "name": "ftmrcxxx.database.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2019-12-18T12:04:44.1845483Z", + "lastStatusChange": "2019-05-02T21:02:00.9466899Z" + }, + { + "name": "https://prod3.metrics.nsatc.net:1886/RecoveryService", + "status": "failure", + "error": "Failed to connect to https://prod3.metrics.nsatc.net:1886/RecoveryService with error Unable to connect to the remote server", + "lastUpdated": "2019-12-18T12:04:30.1214083Z", + "lastStatusChange": "2019-01-24T22:00:04.2450462Z" + }, + { + "name": "https://westeurope.prod.warm.ingestion.msftcloudes.com", + "status": "success", + "error": "", + "lastUpdated": "2019-12-18T12:04:43.8251399Z", + "lastStatusChange": "2019-12-18T11:14:43.3860126Z" + }, + { + "name": "LocalGatewayRedis", + "status": "success", + "error": "", + "lastUpdated": "2019-12-18T12:04:50.6376685Z", + "lastStatusChange": "2019-12-18T11:14:44.4966742Z" + }, + { + "name": "prod.warmpath.msftcloudes.com", + "status": "success", + "error": "", + "lastUpdated": "2019-12-18T12:04:44.4345454Z", + "lastStatusChange": "2019-05-08T00:09:58.031766Z" + }, + { + "name": "Scm", + "status": "success", + "error": "", + "lastUpdated": "2019-12-18T12:04:58.4815899Z", + "lastStatusChange": "2019-12-18T11:24:48.4795085Z" + }, + { + "name": "smtpi-db3.msn.com:25028", + "status": "failure", + "error": "Connection smtpi-db3.msn.com:25028 failed with Error Unable to connect to the remote server", + "lastUpdated": "2019-12-18T12:04:30.1526431Z", + "lastStatusChange": "2019-12-18T11:23:05.7709057Z" + } + ] + } + } + ] + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetNetworkStatusByLocation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetNetworkStatusByLocation.json new file mode 100644 index 000000000000..4dcb637744d4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetNetworkStatusByLocation.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "locationName": "North Central US" + }, + "responses": { + "200": { + "body": { + "dnsServers": [ + "100.78.90.70" + ], + "connectivityStatus": [ + { + "name": "apimgmtst6mtxxxxxxxx.blob.core.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2018-06-13T22:41:07.3844516Z", + "lastStatusChange": "2018-06-13T20:31:06.6590782Z" + }, + { + "name": "apimgmtst6mtxxxxxxxx.file.core.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2018-06-13T22:41:08.6657305Z", + "lastStatusChange": "2018-06-13T20:31:06.8934611Z" + }, + { + "name": "apimgmtst6mtxxxxxxxx.table.core.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2018-06-13T22:41:08.7594708Z", + "lastStatusChange": "2018-06-13T20:31:06.7529128Z" + }, + { + "name": "https://prod3.metrics.nsatc.net:1886/RecoveryService", + "status": "success", + "error": "", + "lastUpdated": "2018-06-13T22:41:08.6969746Z", + "lastStatusChange": "2018-06-13T20:31:07.1125257Z" + }, + { + "name": "n20fxxx.database.windows.net", + "status": "success", + "error": "", + "lastUpdated": "2018-06-13T22:41:09.5094848Z", + "lastStatusChange": "2018-06-13T20:31:07.0968711Z" + }, + { + "name": "Scm", + "status": "success", + "error": "", + "lastUpdated": "2018-06-13T22:41:29.4358865Z", + "lastStatusChange": "2018-06-13T20:41:09.8627827Z" + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetService.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetService.json new file mode 100644 index 000000000000..bd3b962a65a3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetService.json @@ -0,0 +1,115 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "location": "West US", + "etag": "AAAAAAACXok=", + "properties": { + "publisherEmail": "apim@autorestsdk.com", + "publisherName": "autorestsdk", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2019-12-18T06:26:20.3348609Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "gatewayRegionalUrl": "https://apimService1-westus-01.regional.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": false + }, + { + "type": "Proxy", + "hostName": "gateway1.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989652CABCF585ACBFCB9C2C91F1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": true + }, + { + "type": "Management", + "hostName": "mgmt.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989652CABCF585ACBFCB9C2C91F1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": false + }, + { + "type": "Portal", + "hostName": "portal1.msitesting.net", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2036-01-01T07:00:00+00:00", + "thumbprint": "8E989652CABCF585ACBFCB9C2C91F1D174FDB3A2", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": false + } + ], + "publicIPAddresses": [ + "13.91.32.113" + ], + "additionalLocations": [ + { + "location": "East US", + "sku": { + "name": "Premium", + "capacity": 1 + }, + "publicIPAddresses": [ + "23.101.138.153" + ], + "gatewayRegionalUrl": "https://apimService1-eastus-01.regional.azure-api.net", + "disableGateway": true + } + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2": "False" + }, + "virtualNetworkType": "None", + "disableGateway": false, + "apiVersionConstraint": { + "minApiVersion": "2019-01-01" + } + }, + "sku": { + "name": "Premium", + "capacity": 1 + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetServiceHavingMsi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetServiceHavingMsi.json new file mode 100644 index 000000000000..eb2dc24a72f9 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetServiceHavingMsi.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": {}, + "location": "West Europe", + "etag": "AAAAAAAENfI=", + "properties": { + "publisherEmail": "foo@contoso.com", + "publisherName": "Contoso", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2016-04-12T00:20:15.6018952Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "gatewayRegionalUrl": "https://apimService1-westeurope-01.regional.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "developerPortalUrl": "https://apimService1.developer.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [ + { + "type": "Proxy", + "hostName": "apimService1.azure-api.net", + "negotiateClientCertificate": false, + "defaultSslBinding": false + }, + { + "type": "Proxy", + "hostName": "proxy.msitesting.net", + "keyVaultId": "https://samir-msi-keyvault.vault.azure.net/secrets/msicertificate", + "negotiateClientCertificate": false, + "certificate": { + "expiry": "2020-12-18T11:11:47+00:00", + "thumbprint": "9833D531D7A45XXXXXA85908BD3692E0BD3F", + "subject": "CN=*.msitesting.net" + }, + "defaultSslBinding": true + } + ], + "publicIPAddresses": [ + "13.94.xxx.188" + ], + "virtualNetworkConfiguration": { + "subnetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/dfVirtualNetwork/subnets/backendSubnet" + }, + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11": "True", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Ssl30": "False", + "Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2": "False" + }, + "virtualNetworkType": "External", + "disableGateway": false + }, + "sku": { + "name": "Premium", + "capacity": 1 + }, + "identity": { + "type": "SystemAssigned, UserAssigned", + "principalId": "ca1d33f7-xxxx-42ec-xxxx-d526a1ee953a", + "tenantId": "72f988bf-xxxx-41af-xxxx-2d7cd011db47", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/apimService1": { + "principalId": "95194df2-9208-xxxx-xxxx-a10d2af9b5a3", + "clientId": "aaff9c7d-xxxx-4db2-xxxx-ab0e3e7806cf" + } + } + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetSsoToken.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetSsoToken.json new file mode 100644 index 000000000000..725e3d7c0269 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementServiceGetSsoToken.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "redirectUri": "https://apimService1.portal.azure-api.net:443/signin-sso?token=1%26201705301929%26eIkr3%2fnfaLs1GVJ0OVbzkJjAcwPFkEZAPM8VUXvXPf7cJ6lWsB9oUwsk2zln9x0KLkn21txCPJWWheSPq7SNeA%3d%3d" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementSubscriptionRegeneratePrimaryKey.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementSubscriptionRegeneratePrimaryKey.json new file mode 100644 index 000000000000..f6684622edb6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementSubscriptionRegeneratePrimaryKey.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "sid": "testsub" + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementSubscriptionRegenerateSecondaryKey.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementSubscriptionRegenerateSecondaryKey.json new file mode 100644 index 000000000000..f6684622edb6 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementSubscriptionRegenerateSecondaryKey.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "sid": "testsub" + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantAccessRegenerateKey.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantAccessRegenerateKey.json new file mode 100644 index 000000000000..5873bde3a578 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantAccessRegenerateKey.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "accessName": "access" + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantAccessSyncState.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantAccessSyncState.json new file mode 100644 index 000000000000..b0fc99b7ebe3 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantAccessSyncState.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "configurationName": "configuration" + }, + "responses": { + "200": { + "body": { + "branch": "master", + "commitId": "44c29c27a876372e2ea18d9c381cc493a6a89fc5", + "isExport": true, + "isSynced": false, + "isGitEnabled": true, + "syncDate": "2016-10-24T19:17:14.3641403Z", + "configurationChangeDate": "2017-06-03T00:41:30.9670873Z" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantConfigurationDeploy.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantConfigurationDeploy.json new file mode 100644 index 000000000000..c85deb17a62d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantConfigurationDeploy.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "configurationName": "configuration", + "parameters": { + "properties": { + "branch": "master" + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tenant/operationResults/5a1af4ae2a6d2e0b688d7517?api-version=2019-12-01" + } + }, + "200": { + "body": { + "id": "5a1af4ae2a6d2e0b688d7517", + "status": "Failed", + "started": "2017-11-26T17:06:54.303Z", + "updated": "2017-11-26T17:07:21.777Z", + "error": { + "code": "ValidationError", + "message": "File not found: 'api-management/configuration.json'" + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantConfigurationSave.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantConfigurationSave.json new file mode 100644 index 000000000000..def0d09d07b4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantConfigurationSave.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "configurationName": "configuration", + "parameters": { + "properties": { + "branch": "master" + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tenant/operationResults/5a1af57d2a6d2e0b688d751b?api-version=2019-12-01" + } + }, + "200": { + "body": { + "id": "5cae98acb597440f487b0d78", + "status": "Succeeded", + "started": "2019-04-11T01:30:20.883Z", + "updated": "2019-04-11T01:30:41.623Z", + "resultInfo": "The configuration was successfully saved to master as commit 709678560f72e689e469cf98ba9ba6d1b7736893.", + "error": null, + "actionLog": [] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantConfigurationValidate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantConfigurationValidate.json new file mode 100644 index 000000000000..96e075ef59e7 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementTenantConfigurationValidate.json @@ -0,0 +1,172 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "configurationName": "configuration", + "parameters": { + "properties": { + "branch": "master" + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/tenant/operationResults/5a1af64e2a6d2e0b688d751e?api-version=2019-12-01" + } + }, + "200": { + "body": { + "id": "5a1af64e2a6d2e0b688d751e", + "status": "Succeeded", + "started": "2019-04-11T01:30:51.767Z", + "updated": "2019-04-11T01:30:57.653Z", + "resultInfo": "Validation is successfull", + "actionLog": [ + { + "objectType": "ApiSpecificationContract", + "action": "Updated", + "objectKey": "57914cb351f68a16889be190;rev=1" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "5768181ea40f7eb6c49f6ac7" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "576819c9a40f7e86289fb3e3" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "576819f1a40f7e86289fb6de" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681a67a40f7e72b4132522" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681a73a40f7e72b413281d" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681a7ea40f7e72b4132b18" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681b88a40f7ea0f017f099" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681b9fa40f7ea0f017f682" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681bb5a40f7ea0f017fc6b" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681bcaa40f7ea0f0180254" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681bdfa40f7ea0f018083d" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681bf5a40f7ea0f0180e26" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681c0ea40f7ea0f018140f" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681c26a40f7ea0f01819f8" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681c83a40f7e85f44db237" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681cb2a40f7e85f44dbcd0" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681ce3a40f7e85f44dc769" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681d1fa40f7e85f44dd202" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681d60a40f7e85f44ddc9b" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681db4a40f7e85f44de735" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681e11a40f7e85f44df1ce" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681e73a40f7e85f44dfc67" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "57681f06a40f7e74ec07785c" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "5768211fa40f7e74ec07a74a" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "576823cfa40f7e74ec07d63a" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "5600b57e7e8880006a060001" + }, + { + "objectType": "ProductSpecificationContract", + "action": "Updated", + "objectKey": "5600b57e7e8880006a060002" + } + ] + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApi.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApi.json new file mode 100644 index 000000000000..089a39404373 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApi.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "echo-api", + "If-Match": "*", + "parameters": { + "properties": { + "displayName": "Echo API New", + "serviceUrl": "http://echoapi.cloudapp.net/api2", + "path": "newecho" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiDiagnostic.json new file mode 100644 index 000000000000..34ec8191ee8f --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiDiagnostic.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "diagnosticId": "applicationinsights", + "apiId": "57d1f7558aa04f15146d9d8a", + "If-Match": "*", + "parameters": { + "properties": { + "alwaysLog": "allErrors", + "loggerId": "/loggers/applicationinsights", + "sampling": { + "samplingType": "fixed", + "percentage": 50 + }, + "frontend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + }, + "backend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + } + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiIssue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiIssue.json new file mode 100644 index 000000000000..82056fe126b5 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiIssue.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "issueId": "57d2ef278aa04f0ad01d6cdc", + "apiId": "57d1f7558aa04f15146d9d8a", + "If-Match": "*", + "parameters": { + "properties": { + "state": "closed" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiOperation.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiOperation.json new file mode 100644 index 000000000000..2651ff2b92c2 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiOperation.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "echo-api", + "operationId": "operationId", + "If-Match": "*", + "parameters": { + "properties": { + "displayName": "Retrieve resource", + "method": "GET", + "urlTemplate": "/resource", + "templateParameters": [], + "request": { + "queryParameters": [ + { + "name": "param1", + "description": "A sample parameter that is required and has a default value of \"sample\".", + "type": "string", + "defaultValue": "sample", + "required": true, + "values": [ + "sample" + ] + } + ] + }, + "responses": [ + { + "statusCode": 200, + "description": "Returned in all cases.", + "representations": [], + "headers": [] + }, + { + "statusCode": 500, + "description": "Server Error.", + "representations": [], + "headers": [] + } + ] + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiRelease.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiRelease.json new file mode 100644 index 000000000000..89f88d2f0431 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiRelease.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "apiId": "a1", + "releaseId": "testrev", + "If-Match": "*", + "parameters": { + "properties": { + "apiId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/a1", + "notes": "yahooagain" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiVersionSet.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiVersionSet.json new file mode 100644 index 000000000000..470a29f46e5a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateApiVersionSet.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "versionSetId": "api1", + "If-Match": "*", + "parameters": { + "properties": { + "displayName": "api set 1", + "versioningScheme": "Segment", + "description": "Version configuration" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateAuthorizationServer.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateAuthorizationServer.json new file mode 100644 index 000000000000..e5f30ca5d35e --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateAuthorizationServer.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "authsid": "newauthServer", + "If-Match": "*", + "parameters": { + "properties": { + "clientId": "update", + "clientSecret": "updated" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateBackend.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateBackend.json new file mode 100644 index 000000000000..aecab766a724 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateBackend.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "backendId": "proxybackend", + "If-Match": "*", + "parameters": { + "properties": { + "description": "description5308", + "tls": { + "validateCertificateChain": false, + "validateCertificateName": true + } + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateCache.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateCache.json new file mode 100644 index 000000000000..d947123af871 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateCache.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "cacheId": "westindia", + "If-Match": "*", + "parameters": { + "properties": { + "description": "Update Cache in west India" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateDiagnostic.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateDiagnostic.json new file mode 100644 index 000000000000..b3dc0d5c634c --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateDiagnostic.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "diagnosticId": "applicationinsights", + "If-Match": "*", + "parameters": { + "properties": { + "alwaysLog": "allErrors", + "loggerId": "/loggers/applicationinsights", + "sampling": { + "samplingType": "fixed", + "percentage": 50 + }, + "frontend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + }, + "backend": { + "request": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + }, + "response": { + "headers": [ + "Content-type" + ], + "body": { + "bytes": 512 + } + } + } + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateEmailTemplate.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateEmailTemplate.json new file mode 100644 index 000000000000..d1c232e77a05 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateEmailTemplate.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "templateName": "applicationApprovedNotificationMessage", + "If-Match": "*", + "parameters": { + "properties": { + "subject": "Your application $AppName is published in the gallery", + "body": "\r\n\r\n \r\n \r\n

Dear $DevFirstName $DevLastName,

\r\n

\r\n We are happy to let you know that your request to publish the $AppName application in the gallery has been approved. Your application has been published and can be viewed here.\r\n

\r\n

Best,

\r\n

The $OrganizationName API Team

\r\n \r\n" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateGateway.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateGateway.json new file mode 100644 index 000000000000..3dc6dcc30e96 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateGateway.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "gatewayId": "gw1", + "If-Match": "*", + "parameters": { + "properties": { + "description": "my gateway 1", + "locationData": { + "name": "my location" + } + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateGroup.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateGroup.json new file mode 100644 index 000000000000..c2b6dfcac83d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateGroup.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "groupId": "tempgroup", + "If-Match": "*", + "parameters": { + "properties": { + "displayName": "temp group" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateIdentityProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateIdentityProvider.json new file mode 100644 index 000000000000..79cbfaad8b0a --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateIdentityProvider.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "identityProviderName": "facebook", + "If-Match": "*", + "parameters": { + "properties": { + "clientId": "updatedfacebookid", + "clientSecret": "updatedfacebooksecret" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateLogger.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateLogger.json new file mode 100644 index 000000000000..a2198ff06113 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateLogger.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "loggerId": "loggerId", + "If-Match": "*", + "parameters": { + "properties": { + "credentials": { + "name": "hydraeventhub", + "connectionString": "Endpoint=sb://hydraeventhub-ns.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=********=" + } + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateNamedValue.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateNamedValue.json new file mode 100644 index 000000000000..875a34adcfa0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateNamedValue.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "namedValueId": "testprop2", + "If-Match": "*", + "parameters": { + "properties": { + "displayName": "prop3name", + "value": "propValue", + "tags": [ + "foo", + "bar2" + ], + "secret": false + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/namedValues/testprop2?api-version=2019-12-01&asyncId=5c730e343244df1b9cb56e85&asyncCode=204" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/namedValues/testprop2", + "type": "Microsoft.ApiManagement/service/namedValues", + "properties": { + "displayName": "prop3name", + "value": "propValue", + "tags": [ + "foo", + "bar2" + ], + "secret": false + } + } + }, + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateOpenIdConnectProvider.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateOpenIdConnectProvider.json new file mode 100644 index 000000000000..daefba143640 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateOpenIdConnectProvider.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "opid": "templateOpenIdConnect2", + "If-Match": "*", + "parameters": { + "properties": { + "clientSecret": "updatedsecret" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateProduct.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateProduct.json new file mode 100644 index 000000000000..e18a4e623344 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateProduct.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "productId": "testproduct", + "If-Match": "*", + "parameters": { + "properties": { + "displayName": "Test Template ProductName 4" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateQuotaCounterKey.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateQuotaCounterKey.json new file mode 100644 index 000000000000..e912200c09ab --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateQuotaCounterKey.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "quotaCounterKey": "ba", + "parameters": { + "callsCount": 0, + "kbTransferred": 2.5630078125 + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateQuotaCounterKeyByQuotaPeriod.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateQuotaCounterKeyByQuotaPeriod.json new file mode 100644 index 000000000000..5e43c0fb4956 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateQuotaCounterKeyByQuotaPeriod.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "quotaCounterKey": "ba", + "quotaPeriodKey": "0_P3Y6M4DT12H30M5S", + "parameters": { + "callsCount": 0, + "kbTransferred": 0 + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateServiceDisableTls10.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateServiceDisableTls10.json new file mode 100644 index 000000000000..d11fca486730 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateServiceDisableTls10.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "parameters": { + "properties": { + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "false" + } + } + } + }, + "responses": { + "202": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "TestExpiration": "Thu, 29 Jun 2017 18:50:40 GMT" + }, + "location": "West US", + "etag": "AAAAAAAYRPs=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "Contoso", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2017-06-29T17:50:42.3191122Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [], + "publicIPAddresses": [ + "40.86.176.232" + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False" + }, + "virtualNetworkType": "None" + }, + "sku": { + "name": "Standard", + "capacity": 1 + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "Owner": "sasolank", + "UID": "4f5025fe-0669-4e2e-8320-5199466e5eb3", + "Reserved": "", + "TestExpiration": "Thu, 29 Jun 2017 18:50:40 GMT", + "Pool": "Manual", + "TestSuiteExpiration": "Thu, 29 Jun 2017 18:51:46 GMT" + }, + "location": "West US", + "etag": "AAAAAAAYRPs=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "Contoso", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2017-06-29T17:50:42.3191122Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [], + "publicIPAddresses": [ + "40.86.176.232" + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False" + }, + "virtualNetworkType": "None" + }, + "sku": { + "name": "Standard", + "capacity": 1 + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateServicePublisherDetails.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateServicePublisherDetails.json new file mode 100644 index 000000000000..49006089a137 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateServicePublisherDetails.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "parameters": { + "properties": { + "publisherEmail": "foobar@live.com", + "publisherName": "Contoso Vnext" + } + } + }, + "responses": { + "202": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "TestExpiration": "Thu, 29 Jun 2017 18:50:40 GMT" + }, + "location": "West US", + "etag": "AAAAAAAYRPs=", + "properties": { + "publisherEmail": "admin@live.com", + "publisherName": "Contoso", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2017-06-29T17:50:42.3191122Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [], + "publicIPAddresses": [ + "40.86.176.232" + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False" + }, + "virtualNetworkType": "None" + }, + "sku": { + "name": "Standard", + "capacity": 1 + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1", + "name": "apimService1", + "type": "Microsoft.ApiManagement/service", + "tags": { + "Owner": "sasolank", + "UID": "4f5025fe-0669-4e2e-8320-5199466e5eb3", + "Reserved": "", + "TestExpiration": "Thu, 29 Jun 2017 18:50:40 GMT", + "Pool": "Manual", + "TestSuiteExpiration": "Thu, 29 Jun 2017 18:51:46 GMT" + }, + "location": "West US", + "etag": "AAAAAAAYRPs=", + "properties": { + "publisherEmail": "foobar@live.com", + "publisherName": "Contoso Vnext", + "notificationSenderEmail": "apimgmt-noreply@mail.windowsazure.com", + "provisioningState": "Succeeded", + "targetProvisioningState": "", + "createdAtUtc": "2017-06-29T17:50:42.3191122Z", + "gatewayUrl": "https://apimService1.azure-api.net", + "portalUrl": "https://apimService1.portal.azure-api.net", + "managementApiUrl": "https://apimService1.management.azure-api.net", + "scmUrl": "https://apimService1.scm.azure-api.net", + "hostnameConfigurations": [], + "publicIPAddresses": [ + "40.86.176.232" + ], + "customProperties": { + "Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10": "False" + }, + "virtualNetworkType": "None" + }, + "sku": { + "name": "Standard", + "capacity": 1 + } + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateSubscription.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateSubscription.json new file mode 100644 index 000000000000..df1350c11170 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateSubscription.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "sid": "testsub", + "If-Match": "*", + "parameters": { + "properties": { + "displayName": "testsub" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateTag.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateTag.json new file mode 100644 index 000000000000..2f303b4499db --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateTag.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "tagId": "temptag", + "If-Match": "*", + "parameters": { + "properties": { + "displayName": "temp tag" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateTenantAccess.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateTenantAccess.json new file mode 100644 index 000000000000..f5557f535861 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateTenantAccess.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "If-Match": "*", + "accessName": "access", + "parameters": { + "properties": { + "enabled": true + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateUser.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateUser.json new file mode 100644 index 000000000000..2940dd294984 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUpdateUser.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "5931a75ae4bbd512288c680b", + "If-Match": "*", + "parameters": { + "properties": { + "firstName": "foo", + "lastName": "bar", + "email": "foobar@outlook.com" + } + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUserConfirmationPasswordSend.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUserConfirmationPasswordSend.json new file mode 100644 index 000000000000..d70945f936e4 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUserConfirmationPasswordSend.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "57127d485157a511ace86ae7" + }, + "responses": { + "204": {} + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUserGenerateSsoUrl.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUserGenerateSsoUrl.json new file mode 100644 index 000000000000..eedfa578f37d --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUserGenerateSsoUrl.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "57127d485157a511ace86ae7" + }, + "responses": { + "200": { + "body": { + "value": "https://apimService1.portal.azure-api.net/signin-sso?token=57127d485157a511ace86ae7%26201706051624%267VY18MlwAom***********2bYr2bDQHg21OzQsNakExQ%3d%3d" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUserToken.json b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUserToken.json new file mode 100644 index 000000000000..725308f3c6d0 --- /dev/null +++ b/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-12-01/examples/ApiManagementUserToken.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "apimService1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "userId": "userId1718", + "parameters": { + "properties": { + "keyType": "primary", + "expiry": "2019-04-21T00:44:24.2845269Z" + } + } + }, + "responses": { + "200": { + "body": { + "value": "userId1718&201904210044&9A1GR1f5WIhFvFmzQG+xxxxxxxxxxx/kBeu87DWad3tkasUXuvPL+MgzlwUHyg==" + } + } + } +} diff --git a/specification/apimanagement/resource-manager/readme.go.md b/specification/apimanagement/resource-manager/readme.go.md index c385a5132a60..13dd80276077 100644 --- a/specification/apimanagement/resource-manager/readme.go.md +++ b/specification/apimanagement/resource-manager/readme.go.md @@ -13,6 +13,8 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2019-12 + - tag: package-preview-2019-12 - tag: package-2019-01 - tag: package-2018-06-preview - tag: package-2018-01 @@ -21,6 +23,24 @@ batch: - tag: package-2016-07 ``` +### Tag: package-2019-12 and go + +These settings apply only when `--tag=package-2019-12 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2019-12' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2019-12-01/$(namespace) +``` + +### Tag: package-preview-2019-12 and go + +These settings apply only when `--tag=package-preview-2019-12 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-preview-2019-12' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2019-12-01-preview/$(namespace) +``` + ### Tag: package-2019-01 and go These settings apply only when `--tag=package-2019-01 --go` is specified on the command line. diff --git a/specification/apimanagement/resource-manager/readme.java.md b/specification/apimanagement/resource-manager/readme.java.md index 05b9c45f8911..3151673d46c4 100644 --- a/specification/apimanagement/resource-manager/readme.java.md +++ b/specification/apimanagement/resource-manager/readme.java.md @@ -16,6 +16,7 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-apimanagement ``` yaml $(java) && $(multiapi) batch: + - tag: package-2019-12 - tag: package-2019-01 - tag: package-2018-06-preview - tag: package-2018-01 @@ -24,6 +25,19 @@ batch: - tag: package-2016-07 ``` +### Tag: package-2019-12 and java + +These settings apply only when `--tag=package-2019-12 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2019-12' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.apimanagement.v2019_12_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/apimanagement/mgmt-v2019_12_01 +regenerate-manager: true +generate-interface: true +``` + ### Tag: package-2019-01 and java These settings apply only when `--tag=package-2019-01 --java` is specified on the command line. diff --git a/specification/apimanagement/resource-manager/readme.md b/specification/apimanagement/resource-manager/readme.md index 9b993c661a68..8898b1f52777 100644 --- a/specification/apimanagement/resource-manager/readme.md +++ b/specification/apimanagement/resource-manager/readme.md @@ -28,15 +28,98 @@ These are the global settings for the ApiManagement API. title: ApiManagementClient description: ApiManagement Client openapi-type: arm -tag: package-2019-01 +tag: package-2019-12 ``` +### Tag: package-2019-12 + +These settings apply only when `--tag=package-2019-12` is specified on the command line. + +``` yaml $(tag) == 'package-2019-12' +input-file: + - Microsoft.ApiManagement/stable/2019-12-01/apimanagement.json + - Microsoft.ApiManagement/stable/2019-12-01/apimapis.json + - Microsoft.ApiManagement/stable/2019-12-01/apimapisByTags.json + - Microsoft.ApiManagement/stable/2019-12-01/apimapiversionsets.json + - Microsoft.ApiManagement/stable/2019-12-01/apimauthorizationservers.json + - Microsoft.ApiManagement/stable/2019-12-01/apimbackends.json + - Microsoft.ApiManagement/stable/2019-12-01/apimcaches.json + - Microsoft.ApiManagement/stable/2019-12-01/apimcertificates.json + - Microsoft.ApiManagement/stable/2019-12-01/apimdeployment.json + - Microsoft.ApiManagement/stable/2019-12-01/apimdiagnostics.json + - Microsoft.ApiManagement/stable/2019-12-01/apimemailtemplates.json + - Microsoft.ApiManagement/stable/2019-12-01/apimgateways.json + - Microsoft.ApiManagement/stable/2019-12-01/apimgroups.json + - Microsoft.ApiManagement/stable/2019-12-01/apimidentityprovider.json + - Microsoft.ApiManagement/stable/2019-12-01/apimissues.json + - Microsoft.ApiManagement/stable/2019-12-01/apimloggers.json + - Microsoft.ApiManagement/stable/2019-12-01/apimnamedvalues.json + - Microsoft.ApiManagement/stable/2019-12-01/apimnetworkstatus.json + - Microsoft.ApiManagement/stable/2019-12-01/apimnotifications.json + - Microsoft.ApiManagement/stable/2019-12-01/apimopenidconnectproviders.json + - Microsoft.ApiManagement/stable/2019-12-01/apimpolicies.json + - Microsoft.ApiManagement/stable/2019-12-01/apimpolicydescriptions.json + - Microsoft.ApiManagement/stable/2019-12-01/apimportalsettings.json + - Microsoft.ApiManagement/stable/2019-12-01/apimproducts.json + - Microsoft.ApiManagement/stable/2019-12-01/apimproductsByTags.json + - Microsoft.ApiManagement/stable/2019-12-01/apimquotas.json + - Microsoft.ApiManagement/stable/2019-12-01/apimregions.json + - Microsoft.ApiManagement/stable/2019-12-01/apimreports.json + - Microsoft.ApiManagement/stable/2019-12-01/apimsubscriptions.json + - Microsoft.ApiManagement/stable/2019-12-01/apimtagresources.json + - Microsoft.ApiManagement/stable/2019-12-01/apimtags.json + - Microsoft.ApiManagement/stable/2019-12-01/apimtenant.json + - Microsoft.ApiManagement/stable/2019-12-01/apimusers.json + - Microsoft.ApiManagement/stable/2019-12-01/definitions.json +``` +### Tag: package-preview-2019-12 + +These settings apply only when `--tag=package-preview-2019-12` is specified on the command line. + +``` yaml $(tag) == 'package-preview-2019-12' +input-file: + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimanagement.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimapis.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimapisByTags.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimapiversionsets.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimauthorizationservers.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimbackends.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimcaches.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimcertificates.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimdeployment.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimdiagnostics.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimemailtemplates.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimgateways.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimgroups.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimidentityprovider.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimissues.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimloggers.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimnetworkstatus.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimnotifications.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimopenidconnectproviders.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimpolicies.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimpolicydescriptions.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimportalsettings.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimproducts.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimproductsByTags.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimnamedvalues.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimquotas.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimregions.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimreports.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimsubscriptions.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimtagresources.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimtags.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimtenant.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/apimusers.json + - Microsoft.ApiManagement/preview/2019-12-01-preview/definitions.json +``` + ### Tag: package-2019-01 These settings apply only when `--tag=package-2019-01` is specified on the command line. -```yaml $(tag) == 'package-2019-01' +``` yaml $(tag) == 'package-2019-01' input-file: - Microsoft.ApiManagement/stable/2019-01-01/apimanagement.json - Microsoft.ApiManagement/stable/2019-01-01/apimapis.json @@ -72,6 +155,7 @@ input-file: - Microsoft.ApiManagement/stable/2019-01-01/apimusers.json - Microsoft.ApiManagement/stable/2019-01-01/definitions.json ``` + ### Tag: package-2018-06-preview These settings apply only when `--tag=package-2018-06-preview` is specified on the command line. @@ -288,7 +372,7 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.java.md](./readme.java.md) -## Multi-API/Profile support for AutoRest v3 generators +## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. @@ -300,6 +384,74 @@ 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/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 @@ -439,11 +591,10 @@ input-file: ``` -If there are files that should not be in the `all-api-versions` set, +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/data-plane/Microsoft.AppConfiguration/stable/1.0/appconfiguration.json b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/appconfiguration.json new file mode 100644 index 000000000000..e81498f64d44 --- /dev/null +++ b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/appconfiguration.json @@ -0,0 +1,1347 @@ +{ + "swagger": "2.0", + "info": { + "version": "1.0", + "title": "Azure App Configuration" + }, + "schemes": [ + "https" + ], + "paths": { + "/keys": { + "get": { + "tags": [ + "Keys" + ], + "summary": "Gets a list of keys.", + "operationId": "GetKeys", + "consumes": [], + "produces": [ + "application/vnd.microsoft.appconfig.keyset+json", + "application/json", + "application/problem+json" + ], + "parameters": [ + { + "name": "name", + "in": "query", + "description": "A filter for the name of the returned keys.", + "type": "string" + }, + { + "$ref": "#/parameters/SyncTokens" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "name": "After", + "in": "query", + "description": "Instructs the server to return elements that appear after the element referred to by the specified token.", + "type": "string" + }, + { + "name": "Accept-Datetime", + "in": "header", + "description": "Requests the server to respond with the state of the resource at the specified time.", + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/KeyListResult" + }, + "headers": { + "Sync-Token": { + "description": "Enables real-time consistency between requests by providing the returned value in the next request made to the server.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "GetKeys": { + "$ref": "./examples/GetKeys.json" + } + }, + "x-ms-pageable": { + "itemName": "items", + "nextLinkName": "@nextLink" + } + }, + "head": { + "tags": [ + "Keys" + ], + "summary": "Requests the headers and status of the given resource.", + "operationId": "CheckKeys", + "consumes": [], + "produces": [], + "parameters": [ + { + "name": "name", + "in": "query", + "description": "A filter for the name of the returned keys.", + "type": "string" + }, + { + "$ref": "#/parameters/SyncTokens" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "name": "After", + "in": "query", + "description": "Instructs the server to return elements that appear after the element referred to by the specified token.", + "type": "string" + }, + { + "name": "Accept-Datetime", + "in": "header", + "description": "Requests the server to respond with the state of the resource at the specified time.", + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "headers": { + "Sync-Token": { + "description": "Enables real-time consistency between requests by providing the returned value in the next request made to the server.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed" + } + }, + "x-ms-examples": { + "CheckKeys": { + "$ref": "./examples/CheckKeys.json" + } + } + } + }, + "/kv": { + "get": { + "tags": [ + "KeyValues" + ], + "summary": "Gets a list of key-values.", + "operationId": "GetKeyValues", + "consumes": [], + "produces": [ + "application/vnd.microsoft.appconfig.kvset+json", + "application/json", + "application/problem+json" + ], + "parameters": [ + { + "name": "key", + "in": "query", + "description": "A filter used to match keys.", + "type": "string" + }, + { + "name": "label", + "in": "query", + "description": "A filter used to match labels", + "type": "string" + }, + { + "$ref": "#/parameters/SyncTokens" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "name": "After", + "in": "query", + "description": "Instructs the server to return elements that appear after the element referred to by the specified token.", + "type": "string" + }, + { + "name": "Accept-Datetime", + "in": "header", + "description": "Requests the server to respond with the state of the resource at the specified time.", + "type": "string" + }, + { + "name": "$Select", + "in": "query", + "description": "Used to select what fields are present in the returned resource(s).", + "type": "array", + "items": { + "type": "string", + "enum": [ + "key", + "label", + "content_type", + "value", + "last_modified", + "tags", + "locked", + "etag" + ] + }, + "collectionFormat": "csv" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/KeyValueListResult" + }, + "headers": { + "Sync-Token": { + "description": "Enables real-time consistency between requests by providing the returned value in the next request made to the server.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "GetKeyValues": { + "$ref": "./examples/GetKeyValues.json" + } + }, + "x-ms-pageable": { + "itemName": "items", + "nextLinkName": "@nextLink" + } + }, + "head": { + "tags": [ + "KeyValues" + ], + "summary": "Requests the headers and status of the given resource.", + "operationId": "CheckKeyValues", + "consumes": [], + "produces": [], + "parameters": [ + { + "name": "key", + "in": "query", + "description": "A filter used to match keys.", + "type": "string" + }, + { + "name": "label", + "in": "query", + "description": "A filter used to match labels", + "type": "string" + }, + { + "$ref": "#/parameters/SyncTokens" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "name": "After", + "in": "query", + "description": "Instructs the server to return elements that appear after the element referred to by the specified token.", + "type": "string" + }, + { + "name": "Accept-Datetime", + "in": "header", + "description": "Requests the server to respond with the state of the resource at the specified time.", + "type": "string" + }, + { + "name": "$Select", + "in": "query", + "description": "Used to select what fields are present in the returned resource(s).", + "type": "array", + "items": { + "type": "string", + "enum": [ + "key", + "label", + "content_type", + "value", + "last_modified", + "tags", + "locked", + "etag" + ] + }, + "collectionFormat": "csv" + } + ], + "responses": { + "200": { + "description": "Success", + "headers": { + "Sync-Token": { + "description": "Enables real-time consistency between requests by providing the returned value in the next request made to the server.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed" + } + }, + "x-ms-examples": { + "CheckKeyValues": { + "$ref": "./examples/CheckKeyValues.json" + } + } + } + }, + "/kv/{key}": { + "get": { + "tags": [ + "KeyValues" + ], + "summary": "Gets a single key-value.", + "operationId": "GetKeyValue", + "consumes": [], + "produces": [ + "application/vnd.microsoft.appconfig.kv+json", + "application/json", + "application/problem+json" + ], + "parameters": [ + { + "name": "key", + "in": "path", + "description": "The key of the key-value to retrieve.", + "required": true, + "type": "string" + }, + { + "name": "label", + "in": "query", + "description": "The label of the key-value to retrieve.", + "type": "string" + }, + { + "$ref": "#/parameters/SyncTokens" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "name": "Accept-Datetime", + "in": "header", + "description": "Requests the server to respond with the state of the resource at the specified time.", + "type": "string" + }, + { + "name": "If-Match", + "in": "header", + "description": "Used to perform an operation only if the targeted resource's etag matches the value provided.", + "type": "string" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Used to perform an operation only if the targeted resource's etag does not match the value provided.", + "type": "string" + }, + { + "name": "$Select", + "in": "query", + "description": "Used to select what fields are present in the returned resource(s).", + "type": "array", + "items": { + "type": "string", + "enum": [ + "key", + "label", + "content_type", + "value", + "last_modified", + "tags", + "locked", + "etag" + ] + }, + "collectionFormat": "csv" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/KeyValue" + }, + "headers": { + "Sync-Token": { + "description": "Enables real-time consistency between requests by providing the returned value in the next request made to the server.", + "type": "string" + }, + "ETag": { + "description": "An identifier representing the returned state of the resource.", + "type": "string" + }, + "Last-Modified": { + "description": "A UTC datetime that specifies the last time the resource was modified.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "GetKeyValue": { + "$ref": "./examples/GetKeyValue.json" + }, + "GetKeyValue_IfMatch": { + "$ref": "./examples/GetKeyValue_IfMatch.json" + }, + "GetKeyValue_IfNoneMatch": { + "$ref": "./examples/GetKeyValue_IfNoneMatch.json" + } + } + }, + "put": { + "tags": [ + "KeyValues" + ], + "summary": "Creates a key-value.", + "operationId": "PutKeyValue", + "consumes": [ + "application/vnd.microsoft.appconfig.kv+json", + "application/vnd.microsoft.appconfig.kvset+json", + "application/json", + "text/json", + "application/*+json", + "application/json-patch+json" + ], + "produces": [ + "application/vnd.microsoft.appconfig.kv+json", + "application/json", + "application/problem+json" + ], + "parameters": [ + { + "name": "key", + "in": "path", + "description": "The key of the key-value to create.", + "required": true, + "type": "string" + }, + { + "name": "label", + "in": "query", + "description": "The label of the key-value to create.", + "type": "string" + }, + { + "name": "entity", + "in": "body", + "description": "The key-value to create.", + "schema": { + "$ref": "#/definitions/KeyValue" + } + }, + { + "$ref": "#/parameters/SyncTokens" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "name": "If-Match", + "in": "header", + "description": "Used to perform an operation only if the targeted resource's etag matches the value provided.", + "type": "string" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Used to perform an operation only if the targeted resource's etag does not match the value provided.", + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/KeyValue" + }, + "headers": { + "Sync-Token": { + "description": "Enables real-time consistency between requests by providing the returned value in the next request made to the server.", + "type": "string" + }, + "ETag": { + "description": "An identifier representing the returned state of the resource.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "PutKeyValue": { + "$ref": "./examples/PutKeyValue.json" + }, + "PutKeyValue_IfMatch": { + "$ref": "./examples/PutKeyValue_IfMatch.json" + } + } + }, + "delete": { + "tags": [ + "KeyValues" + ], + "summary": "Deletes a key-value.", + "operationId": "DeleteKeyValue", + "consumes": [], + "produces": [ + "application/vnd.microsoft.appconfig.kv+json", + "application/json", + "application/problem+json" + ], + "parameters": [ + { + "name": "key", + "in": "path", + "description": "The key of the key-value to delete.", + "required": true, + "type": "string" + }, + { + "name": "label", + "in": "query", + "description": "The label of the key-value to delete.", + "type": "string" + }, + { + "$ref": "#/parameters/SyncTokens" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "name": "If-Match", + "in": "header", + "description": "Used to perform an operation only if the targeted resource's etag matches the value provided.", + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/KeyValue" + }, + "headers": { + "Sync-Token": { + "description": "Enables real-time consistency between requests by providing the returned value in the next request made to the server.", + "type": "string" + }, + "ETag": { + "description": "An identifier representing the returned state of the resource.", + "type": "string" + } + } + }, + "204": { + "description": "Success", + "headers": { + "Sync-Token": { + "description": "Enables real-time consistency between requests by providing the returned value in the next request made to the server.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "DeleteKeyValue": { + "$ref": "./examples/DeleteKeyValue.json" + }, + "DeleteKeyValue_IfMatch": { + "$ref": "./examples/DeleteKeyValue_IfMatch.json" + } + } + }, + "head": { + "tags": [ + "KeyValues" + ], + "summary": "Requests the headers and status of the given resource.", + "operationId": "CheckKeyValue", + "consumes": [], + "produces": [], + "parameters": [ + { + "name": "key", + "in": "path", + "description": "The key of the key-value to retrieve.", + "required": true, + "type": "string" + }, + { + "name": "label", + "in": "query", + "description": "The label of the key-value to retrieve.", + "type": "string" + }, + { + "$ref": "#/parameters/SyncTokens" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "name": "Accept-Datetime", + "in": "header", + "description": "Requests the server to respond with the state of the resource at the specified time.", + "type": "string" + }, + { + "name": "If-Match", + "in": "header", + "description": "Used to perform an operation only if the targeted resource's etag matches the value provided.", + "type": "string" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Used to perform an operation only if the targeted resource's etag does not match the value provided.", + "type": "string" + }, + { + "name": "$Select", + "in": "query", + "description": "Used to select what fields are present in the returned resource(s).", + "type": "array", + "items": { + "type": "string", + "enum": [ + "key", + "label", + "content_type", + "value", + "last_modified", + "tags", + "locked", + "etag" + ] + }, + "collectionFormat": "csv" + } + ], + "responses": { + "200": { + "description": "Success", + "headers": { + "Sync-Token": { + "description": "Enables real-time consistency between requests by providing the returned value in the next request made to the server.", + "type": "string" + }, + "ETag": { + "description": "An identifier representing the returned state of the resource.", + "type": "string" + }, + "Last-Modified": { + "description": "A UTC datetime that specifies the last time the resource was modified.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed" + } + }, + "x-ms-examples": { + "CheckKeyValue": { + "$ref": "./examples/CheckKeyValue.json" + }, + "CheckKeyValue_IfMatch": { + "$ref": "./examples/CheckKeyValue_IfMatch.json" + }, + "CheckKeyValue_IfNoneMatch": { + "$ref": "./examples/CheckKeyValue_IfNoneMatch.json" + } + } + } + }, + "/labels": { + "get": { + "tags": [ + "Labels" + ], + "summary": "Gets a list of labels.", + "operationId": "GetLabels", + "consumes": [], + "produces": [ + "application/vnd.microsoft.appconfig.labelset+json", + "application/json", + "application/problem+json" + ], + "parameters": [ + { + "name": "name", + "in": "query", + "description": "A filter for the name of the returned labels.", + "type": "string" + }, + { + "$ref": "#/parameters/SyncTokens" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "name": "After", + "in": "query", + "description": "Instructs the server to return elements that appear after the element referred to by the specified token.", + "type": "string" + }, + { + "name": "Accept-Datetime", + "in": "header", + "description": "Requests the server to respond with the state of the resource at the specified time.", + "type": "string" + }, + { + "name": "$Select", + "in": "query", + "description": "Used to select what fields are present in the returned resource(s).", + "type": "array", + "items": { + "type": "string", + "enum": [ + "name" + ] + }, + "collectionFormat": "csv" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/LabelListResult" + }, + "headers": { + "Sync-Token": { + "description": "Enables real-time consistency between requests by providing the returned value in the next request made to the server.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "GetLabels": { + "$ref": "./examples/GetLabels.json" + } + }, + "x-ms-pageable": { + "itemName": "items", + "nextLinkName": "@nextLink" + } + }, + "head": { + "tags": [ + "Labels" + ], + "summary": "Requests the headers and status of the given resource.", + "operationId": "CheckLabels", + "consumes": [], + "produces": [], + "parameters": [ + { + "name": "name", + "in": "query", + "description": "A filter for the name of the returned labels.", + "type": "string" + }, + { + "$ref": "#/parameters/SyncTokens" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "name": "After", + "in": "query", + "description": "Instructs the server to return elements that appear after the element referred to by the specified token.", + "type": "string" + }, + { + "name": "Accept-Datetime", + "in": "header", + "description": "Requests the server to respond with the state of the resource at the specified time.", + "type": "string" + }, + { + "name": "$Select", + "in": "query", + "description": "Used to select what fields are present in the returned resource(s).", + "type": "array", + "items": { + "type": "string", + "enum": [ + "name" + ] + }, + "collectionFormat": "csv" + } + ], + "responses": { + "200": { + "description": "Success", + "headers": { + "Sync-Token": { + "description": "Enables real-time consistency between requests by providing the returned value in the next request made to the server.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed" + } + }, + "x-ms-examples": { + "CheckLabels": { + "$ref": "./examples/CheckLabels.json" + } + } + } + }, + "/locks/{key}": { + "put": { + "tags": [ + "Locks" + ], + "summary": "Locks a key-value.", + "operationId": "PutLock", + "consumes": [], + "produces": [ + "application/vnd.microsoft.appconfig.kv+json", + "application/json", + "application/problem+json" + ], + "parameters": [ + { + "name": "key", + "in": "path", + "description": "The key of the key-value to lock.", + "required": true, + "type": "string" + }, + { + "name": "label", + "in": "query", + "description": "The label, if any, of the key-value to lock.", + "type": "string" + }, + { + "$ref": "#/parameters/SyncTokens" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "name": "If-Match", + "in": "header", + "description": "Used to perform an operation only if the targeted resource's etag matches the value provided.", + "type": "string" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Used to perform an operation only if the targeted resource's etag does not match the value provided.", + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/KeyValue" + }, + "headers": { + "Sync-Token": { + "description": "Enables real-time consistency between requests by providing the returned value in the next request made to the server.", + "type": "string" + }, + "ETag": { + "description": "An identifier representing the returned state of the resource.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "PutLock": { + "$ref": "./examples/PutLock.json" + }, + "PutLock_IfMatch": { + "$ref": "./examples/PutLock_IfMatch.json" + } + } + }, + "delete": { + "tags": [ + "Locks" + ], + "summary": "Unlocks a key-value.", + "operationId": "DeleteLock", + "consumes": [], + "produces": [ + "application/vnd.microsoft.appconfig.kv+json", + "application/json", + "application/problem+json" + ], + "parameters": [ + { + "name": "key", + "in": "path", + "description": "The key of the key-value to unlock.", + "required": true, + "type": "string" + }, + { + "name": "label", + "in": "query", + "description": "The label, if any, of the key-value to unlock.", + "type": "string" + }, + { + "$ref": "#/parameters/SyncTokens" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "name": "If-Match", + "in": "header", + "description": "Used to perform an operation only if the targeted resource's etag matches the value provided.", + "type": "string" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "Used to perform an operation only if the targeted resource's etag does not match the value provided.", + "type": "string" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/KeyValue" + }, + "headers": { + "Sync-Token": { + "description": "Enables real-time consistency between requests by providing the returned value in the next request made to the server.", + "type": "string" + }, + "ETag": { + "description": "An identifier representing the returned state of the resource.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "DeleteLock": { + "$ref": "./examples/DeleteLock.json" + }, + "DeleteLock_IfMatch": { + "$ref": "./examples/DeleteLock_IfMatch.json" + } + } + } + }, + "/revisions": { + "get": { + "tags": [ + "Revisions" + ], + "summary": "Gets a list of key-value revisions.", + "operationId": "GetRevisions", + "consumes": [], + "produces": [ + "application/vnd.microsoft.appconfig.kvset+json", + "application/json", + "application/problem+json" + ], + "parameters": [ + { + "name": "key", + "in": "query", + "description": "A filter used to match keys.", + "type": "string" + }, + { + "name": "label", + "in": "query", + "description": "A filter used to match labels", + "type": "string" + }, + { + "$ref": "#/parameters/SyncTokens" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "name": "After", + "in": "query", + "description": "Instructs the server to return elements that appear after the element referred to by the specified token.", + "type": "string" + }, + { + "name": "Accept-Datetime", + "in": "header", + "description": "Requests the server to respond with the state of the resource at the specified time.", + "type": "string" + }, + { + "name": "$Select", + "in": "query", + "description": "Used to select what fields are present in the returned resource(s).", + "type": "array", + "items": { + "type": "string", + "enum": [ + "key", + "label", + "content_type", + "value", + "last_modified", + "tags", + "locked", + "etag" + ] + }, + "collectionFormat": "csv" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/KeyValueListResult" + }, + "headers": { + "Sync-Token": { + "description": "Enables real-time consistency between requests by providing the returned value in the next request made to the server.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "GetRevisions": { + "$ref": "./examples/GetRevisions.json" + } + }, + "x-ms-pageable": { + "itemName": "items", + "nextLinkName": "@nextLink" + } + }, + "head": { + "tags": [ + "Revisions" + ], + "summary": "Requests the headers and status of the given resource.", + "operationId": "CheckRevisions", + "consumes": [], + "produces": [], + "parameters": [ + { + "name": "key", + "in": "query", + "description": "A filter used to match keys.", + "type": "string" + }, + { + "name": "label", + "in": "query", + "description": "A filter used to match labels", + "type": "string" + }, + { + "$ref": "#/parameters/SyncTokens" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "name": "After", + "in": "query", + "description": "Instructs the server to return elements that appear after the element referred to by the specified token.", + "type": "string" + }, + { + "name": "Accept-Datetime", + "in": "header", + "description": "Requests the server to respond with the state of the resource at the specified time.", + "type": "string" + }, + { + "name": "$Select", + "in": "query", + "description": "Used to select what fields are present in the returned resource(s).", + "type": "array", + "items": { + "type": "string", + "enum": [ + "key", + "label", + "content_type", + "value", + "last_modified", + "tags", + "locked", + "etag" + ] + }, + "collectionFormat": "csv" + } + ], + "responses": { + "200": { + "description": "Success", + "headers": { + "Sync-Token": { + "description": "Enables real-time consistency between requests by providing the returned value in the next request made to the server.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed" + } + }, + "x-ms-examples": { + "CheckRevisions": { + "$ref": "./examples/CheckRevisions.json" + } + } + } + } + }, + "definitions": { + "Key": { + "type": "object", + "properties": { + "name": { + "type": "string", + "readOnly": true + } + } + }, + "KeyValue": { + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "label": { + "type": "string" + }, + "content_type": { + "type": "string" + }, + "value": { + "type": "string" + }, + "last_modified": { + "format": "date-time", + "type": "string" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "locked": { + "type": "boolean" + }, + "etag": { + "type": "string" + } + } + }, + "Label": { + "type": "object", + "properties": { + "name": { + "type": "string", + "readOnly": true + } + } + }, + "Error": { + "description": "Azure App Configuration error object.", + "properties": { + "type": { + "description": "The type of the error.", + "type": "string" + }, + "title": { + "description": "A brief summary of the error.", + "type": "string" + }, + "name": { + "description": "The name of the parameter that resulted in the error.", + "type": "string" + }, + "detail": { + "description": "A detailed description of the error.", + "type": "string" + }, + "status": { + "description": "The HTTP status code that the error maps to.", + "type": "integer" + } + }, + "readOnly": true + }, + "KeyListResult": { + "description": "The result of a list request.", + "type": "object", + "properties": { + "items": { + "description": "The collection value.", + "type": "array", + "items": { + "$ref": "#/definitions/Key" + } + }, + "@nextLink": { + "description": "The URI that can be used to request the next set of paged results.", + "type": "string" + } + } + }, + "KeyValueListResult": { + "description": "The result of a list request.", + "type": "object", + "properties": { + "items": { + "description": "The collection value.", + "type": "array", + "items": { + "$ref": "#/definitions/KeyValue" + } + }, + "@nextLink": { + "description": "The URI that can be used to request the next set of paged results.", + "type": "string" + } + } + }, + "LabelListResult": { + "description": "The result of a list request.", + "type": "object", + "properties": { + "items": { + "description": "The collection value.", + "type": "array", + "items": { + "$ref": "#/definitions/Label" + } + }, + "@nextLink": { + "description": "The URI that can be used to request the next set of paged results.", + "type": "string" + } + } + } + }, + "parameters": { + "SyncTokens": { + "name": "Sync-Token", + "in": "header", + "description": "Used to guarantee real-time consistency between requests.", + "type": "string" + }, + "ApiVersion": { + "name": "api-version", + "in": "query", + "description": "The API version to be used with the HTTP request.", + "required": true, + "type": "string" + }, + "Endpoint": { + "name": "endpoint", + "in": "path", + "description": "The endpoint of the App Configuration instance to send requests to.", + "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/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/CheckKeyValue.json b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/CheckKeyValue.json new file mode 100644 index 000000000000..e4091585c90f --- /dev/null +++ b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/CheckKeyValue.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "endpoint": "https://{exampleAppConfigurationName}.azconfig.io", + "api-version": "1.0", + "key": "Message" + }, + "responses": { + "200": { + "headers": { + "Content-Type": "application/vnd.microsoft.appconfig.kv+json", + "ETag": "W/\"7XpB48ET4VAlB9068ft6fKMyA3m\"", + "Last-Modified": "Tue, 27 Aug 2019 16:52:32 GMT", + "Sync-Token": "zAJw6V16=NjotMSM3ODk3NjM=;sn=789763" + } + } + } +} diff --git a/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/CheckKeyValue_IfMatch.json b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/CheckKeyValue_IfMatch.json new file mode 100644 index 000000000000..5869285ca89a --- /dev/null +++ b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/CheckKeyValue_IfMatch.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "endpoint": "https://{exampleAppConfigurationName}.azconfig.io", + "api-version": "1.0", + "key": "Message", + "If-Match": "\"L10qpBghN693OaxydgTkLmrBbV5\"" + }, + "responses": { + "200": { + "headers": { + "Content-Type": "application/vnd.microsoft.appconfig.kv+json", + "ETag": "W/\"L10qpBghN693OaxydgTkLmrBbV5\"", + "Last-Modified": "Tue, 27 Aug 2019 16:52:32 GMT", + "Sync-Token": "zAJw6V16=NjotMSM3ODk3NjM=;sn=789763" + } + } + } +} diff --git a/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/CheckKeyValue_IfNoneMatch.json b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/CheckKeyValue_IfNoneMatch.json new file mode 100644 index 000000000000..e1f38be05186 --- /dev/null +++ b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/CheckKeyValue_IfNoneMatch.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "endpoint": "https://{exampleAppConfigurationName}.azconfig.io", + "api-version": "1.0", + "key": "Message", + "If-None-Match": "L10qpBghN693OaxydgTkLmrBbV5" + }, + "responses": { + "200": { + "headers": { + "Content-Type": "application/vnd.microsoft.appconfig.kv+json", + "ETag": "W/\"7XpB48ET4VAlB9068ft6fKMyA3m\"", + "Last-Modified": "Tue, 27 Aug 2019 16:52:32 GMT", + "Sync-Token": "zAJw6V16=NjotMSM3ODk3NjM=;sn=789763" + } + } + } +} diff --git a/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/CheckKeyValues.json b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/CheckKeyValues.json new file mode 100644 index 000000000000..cc1f7b790220 --- /dev/null +++ b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/CheckKeyValues.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "endpoint": "https://{exampleAppConfigurationName}.azconfig.io", + "api-version": "1.0" + }, + "responses": { + "200": { + "headers": { + "Content-Type": "application/vnd.microsoft.appconfig.kvset+json" + } + } + } +} diff --git a/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/CheckKeys.json b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/CheckKeys.json new file mode 100644 index 000000000000..9e9508f43eba --- /dev/null +++ b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/CheckKeys.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "endpoint": "https://{exampleAppConfigurationName}.azconfig.io", + "api-version": "1.0" + }, + "responses": { + "200": { + "headers": { + "Content-Type": "application/vnd.microsoft.appconfig.keyset+json" + } + } + } +} diff --git a/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/CheckLabels.json b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/CheckLabels.json new file mode 100644 index 000000000000..3195f29dd2f0 --- /dev/null +++ b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/CheckLabels.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "endpoint": "https://{exampleAppConfigurationName}.azconfig.io", + "api-version": "1.0" + }, + "responses": { + "200": { + "headers": { + "Content-Type": "application/vnd.microsoft.appconfig.labelset+json" + } + } + } +} diff --git a/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/CheckRevisions.json b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/CheckRevisions.json new file mode 100644 index 000000000000..cc1f7b790220 --- /dev/null +++ b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/CheckRevisions.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "endpoint": "https://{exampleAppConfigurationName}.azconfig.io", + "api-version": "1.0" + }, + "responses": { + "200": { + "headers": { + "Content-Type": "application/vnd.microsoft.appconfig.kvset+json" + } + } + } +} diff --git a/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/DeleteKeyValue.json b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/DeleteKeyValue.json new file mode 100644 index 000000000000..d454edcce5d3 --- /dev/null +++ b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/DeleteKeyValue.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "endpoint": "https://{exampleAppConfigurationName}.azconfig.io", + "api-version": "1.0", + "key": "Message" + }, + "responses": { + "200": { + "headers": { + "Content-Type": "application/vnd.microsoft.appconfig.kv+json", + "ETag": "W/\"7XpB48ET4VAlB9068ft6fKMyA3m\"", + "Last-Modified": "Tue, 27 Aug 2019 16:52:32 GMT", + "Sync-Token": "zAJw6V16=NjotMSM3ODk3NjM=;sn=789763" + }, + "body": { + "etag": "7XpB48ET4VAlB9068ft6fKMyA3m", + "key": "Message", + "label": null, + "content_type": null, + "value": "Hello World!", + "tags": {}, + "locked": false, + "last_modified": "2019-08-27T16:52:32+00:00" + } + }, + "204": {} + } +} diff --git a/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/DeleteKeyValue_IfMatch.json b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/DeleteKeyValue_IfMatch.json new file mode 100644 index 000000000000..826341d6130f --- /dev/null +++ b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/DeleteKeyValue_IfMatch.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "endpoint": "https://{exampleAppConfigurationName}.azconfig.io", + "api-version": "1.0", + "key": "Message", + "If-Match": "\"L10qpBghN693OaxydgTkLmrBbV5\"" + }, + "responses": { + "200": { + "headers": { + "Content-Type": "application/vnd.microsoft.appconfig.kv+json", + "ETag": "W/\"L10qpBghN693OaxydgTkLmrBbV5\"", + "Last-Modified": "Tue, 27 Aug 2019 16:52:32 GMT", + "Sync-Token": "zAJw6V16=NjotMSM3ODk3NjM=;sn=789763" + }, + "body": { + "etag": "L10qpBghN693OaxydgTkLmrBbV5", + "key": "Message", + "label": null, + "content_type": null, + "value": "Hello World!", + "tags": {}, + "locked": false, + "last_modified": "2019-08-27T16:52:32+00:00" + } + }, + "204": {} + } +} diff --git a/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/DeleteLock.json b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/DeleteLock.json new file mode 100644 index 000000000000..0a293666e22e --- /dev/null +++ b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/DeleteLock.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "endpoint": "https://{exampleAppConfigurationName}.azconfig.io", + "api-version": "1.0", + "key": "Message" + }, + "responses": { + "200": { + "headers": { + "Content-Type": "application/vnd.microsoft.appconfig.kv+json", + "ETag": "W/\"0BGYCoQ6iNdp5NtQ7N8shrobo6s\"", + "Last-Modified": "Tue, 27 Aug 2019 16:52:32 GMT", + "Sync-Token": "zAJw6V16=NjotMSM3ODk3NjM=;sn=789763" + }, + "body": { + "etag": "0BGYCoQ6iNdp5NtQ7N8shrobo6s", + "key": "Message", + "label": null, + "content_type": null, + "value": "Hello World!", + "tags": {}, + "locked": false, + "last_modified": "2019-08-27T16:52:32+00:00" + } + } + } +} diff --git a/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/DeleteLock_IfMatch.json b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/DeleteLock_IfMatch.json new file mode 100644 index 000000000000..61b904beae94 --- /dev/null +++ b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/DeleteLock_IfMatch.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "endpoint": "https://{exampleAppConfigurationName}.azconfig.io", + "api-version": "1.0", + "key": "Message", + "If-Match": "\"L10qpBghN693OaxydgTkLmrBbV5\"" + }, + "responses": { + "200": { + "headers": { + "Content-Type": "application/vnd.microsoft.appconfig.kv+json", + "ETag": "W/\"L10qpBghN693OaxydgTkLmrBbV5\"", + "Last-Modified": "Tue, 27 Aug 2019 16:52:32 GMT", + "Sync-Token": "zAJw6V16=NjotMSM3ODk3NjM=;sn=789763" + }, + "body": { + "etag": "L10qpBghN693OaxydgTkLmrBbV5", + "key": "Message", + "label": null, + "content_type": null, + "value": "Hello World!", + "tags": {}, + "locked": false, + "last_modified": "2019-08-27T16:52:32+00:00" + } + } + } +} diff --git a/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/GetKeyValue.json b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/GetKeyValue.json new file mode 100644 index 000000000000..216c6f2d47b5 --- /dev/null +++ b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/GetKeyValue.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "endpoint": "https://{exampleAppConfigurationName}.azconfig.io", + "api-version": "1.0", + "key": "Message" + }, + "responses": { + "200": { + "headers": { + "Content-Type": "application/vnd.microsoft.appconfig.kv+json", + "ETag": "W/\"7XpB48ET4VAlB9068ft6fKMyA3m\"", + "Last-Modified": "Tue, 27 Aug 2019 16:52:32 GMT", + "Sync-Token": "zAJw6V16=NjotMSM3ODk3NjM=;sn=789763" + }, + "body": { + "etag": "7XpB48ET4VAlB9068ft6fKMyA3m", + "key": "Message", + "label": null, + "content_type": null, + "value": "Hello World!", + "tags": {}, + "locked": false, + "last_modified": "2019-08-27T16:52:32+00:00" + } + } + } +} diff --git a/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/GetKeyValue_IfMatch.json b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/GetKeyValue_IfMatch.json new file mode 100644 index 000000000000..61b904beae94 --- /dev/null +++ b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/GetKeyValue_IfMatch.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "endpoint": "https://{exampleAppConfigurationName}.azconfig.io", + "api-version": "1.0", + "key": "Message", + "If-Match": "\"L10qpBghN693OaxydgTkLmrBbV5\"" + }, + "responses": { + "200": { + "headers": { + "Content-Type": "application/vnd.microsoft.appconfig.kv+json", + "ETag": "W/\"L10qpBghN693OaxydgTkLmrBbV5\"", + "Last-Modified": "Tue, 27 Aug 2019 16:52:32 GMT", + "Sync-Token": "zAJw6V16=NjotMSM3ODk3NjM=;sn=789763" + }, + "body": { + "etag": "L10qpBghN693OaxydgTkLmrBbV5", + "key": "Message", + "label": null, + "content_type": null, + "value": "Hello World!", + "tags": {}, + "locked": false, + "last_modified": "2019-08-27T16:52:32+00:00" + } + } + } +} diff --git a/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/GetKeyValue_IfNoneMatch.json b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/GetKeyValue_IfNoneMatch.json new file mode 100644 index 000000000000..576887464fb4 --- /dev/null +++ b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/GetKeyValue_IfNoneMatch.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "endpoint": "https://{exampleAppConfigurationName}.azconfig.io", + "api-version": "1.0", + "key": "Message", + "If-None-Match": "L10qpBghN693OaxydgTkLmrBbV5" + }, + "responses": { + "200": { + "headers": { + "Content-Type": "application/vnd.microsoft.appconfig.kv+json", + "ETag": "W/\"7XpB48ET4VAlB9068ft6fKMyA3m\"", + "Last-Modified": "Tue, 27 Aug 2019 16:52:32 GMT", + "Sync-Token": "zAJw6V16=NjotMSM3ODk3NjM=;sn=789763" + }, + "body": { + "etag": "7XpB48ET4VAlB9068ft6fKMyA3m", + "key": "Message", + "label": null, + "content_type": null, + "value": "Hello World!", + "tags": {}, + "locked": false, + "last_modified": "2019-08-27T16:52:32+00:00" + } + } + } +} diff --git a/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/GetKeyValues.json b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/GetKeyValues.json new file mode 100644 index 000000000000..3d0cd3ab0c96 --- /dev/null +++ b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/GetKeyValues.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "endpoint": "https://{exampleAppConfigurationName}.azconfig.io", + "api-version": "1.0" + }, + "responses": { + "200": { + "headers": { + "Content-Type": "application/vnd.microsoft.appconfig.kvset+json" + }, + "body": { + "items": [ + { + "etag": "CTgHR5UrDKNj2nsoGWDOipST9Pv", + "key": "Background", + "label": "Asset1", + "content_type": null, + "value": "blue", + "tags": {}, + "locked": false, + "last_modified": "2019-03-04T17:12:23+00:00" + }, + { + "etag": "UTSN1zePHbBQ0npbRB6elGRRuH7", + "key": "MaxLogFiles", + "label": "Asset1", + "content_type": null, + "value": "50", + "tags": {}, + "locked": false, + "last_modified": "2019-03-04T17:12:23+00:00" + }, + { + "etag": "7XpB48ET4VAlB9068ft6fKMyA3m", + "key": "Message", + "label": null, + "content_type": null, + "value": "Hello World", + "tags": {}, + "locked": false, + "last_modified": "2019-06-20T16:52:23+00:00" + }, + { + "etag": "fAFm4jkGNB1hsIr4o0S5hnhCCvY", + "key": "WebDemo:Settings:BackgroundColor", + "label": null, + "content_type": null, + "value": "blue", + "tags": {}, + "locked": false, + "last_modified": "2019-06-20T15:48:01+00:00" + } + ] + } + } + } +} diff --git a/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/GetKeys.json b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/GetKeys.json new file mode 100644 index 000000000000..ce3031487d22 --- /dev/null +++ b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/GetKeys.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "endpoint": "https://{exampleAppConfigurationName}.azconfig.io", + "api-version": "1.0" + }, + "responses": { + "200": { + "headers": { + "Content-Type": "application/vnd.microsoft.appconfig.keyset+json" + }, + "body": { + "items": [ + { + "name": "MaxRequests" + }, + { + "name": "RequestTimeout" + } + ] + } + } + } +} diff --git a/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/GetLabels.json b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/GetLabels.json new file mode 100644 index 000000000000..1e0a2445a70d --- /dev/null +++ b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/GetLabels.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "endpoint": "https://{exampleAppConfigurationName}.azconfig.io", + "api-version": "1.0" + }, + "responses": { + "200": { + "headers": { + "Content-Type": "application/vnd.microsoft.appconfig.labelset+json" + }, + "body": { + "items": [ + { + "name": null + }, + { + "name": "Asset1" + }, + { + "name": "Asset1/devCi" + }, + { + "name": "Asset1/devCi/branch1" + }, + { + "name": "WestUs" + } + ] + } + } + } +} diff --git a/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/GetRevisions.json b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/GetRevisions.json new file mode 100644 index 000000000000..f4ca1ccf46ae --- /dev/null +++ b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/GetRevisions.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "endpoint": "https://{exampleAppConfigurationName}.azconfig.io", + "api-version": "1.0" + }, + "responses": { + "200": { + "headers": { + "Content-Type": "application/vnd.microsoft.appconfig.kvset+json" + }, + "body": { + "items": [ + { + "etag": "0BGYCoQ6iNdp5NtQ7N8shrobo6s", + "key": "Message", + "label": null, + "content_type": null, + "value": "Hello World!", + "tags": {}, + "locked": false, + "last_modified": "2019-08-27T16:52:32+00:00" + }, + { + "etag": "L10qpBghN693OaxydgTkLmrBbV4", + "key": "Message", + "label": null, + "content_type": null, + "value": "A new message.", + "tags": {}, + "locked": false, + "last_modified": "2019-08-27T16:52:20+00:00" + }, + { + "etag": "tnIHBkDYQwtdNMLoWtr5aybkKwL", + "key": "Message", + "label": null, + "content_type": null, + "value": "Hello World!", + "tags": {}, + "locked": false, + "last_modified": "2019-08-27T16:50:47+00:00" + } + ] + } + } + } +} diff --git a/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/PutKeyValue.json b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/PutKeyValue.json new file mode 100644 index 000000000000..83b231e011f3 --- /dev/null +++ b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/PutKeyValue.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "endpoint": "https://{exampleAppConfigurationName}.azconfig.io", + "api-version": "1.0", + "key": "Message" + }, + "responses": { + "200": { + "headers": { + "Content-Type": "application/vnd.microsoft.appconfig.kv+json", + "ETag": "W/\"tnIHBkDYQwtdNMLoWtr5aybkKwL\"", + "Last-Modified": "Tue, 27 Aug 2019 16:52:32 GMT", + "Sync-Token": "zAJw6V16=NjotMSM3ODk3NjM=;sn=789763" + }, + "body": { + "etag": "tnIHBkDYQwtdNMLoWtr5aybkKwL", + "key": "Message", + "label": null, + "content_type": null, + "value": "Hello World!", + "tags": {}, + "locked": false, + "last_modified": "2019-08-27T16:52:32+00:00" + } + } + } +} diff --git a/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/PutKeyValue_IfMatch.json b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/PutKeyValue_IfMatch.json new file mode 100644 index 000000000000..61b904beae94 --- /dev/null +++ b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/PutKeyValue_IfMatch.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "endpoint": "https://{exampleAppConfigurationName}.azconfig.io", + "api-version": "1.0", + "key": "Message", + "If-Match": "\"L10qpBghN693OaxydgTkLmrBbV5\"" + }, + "responses": { + "200": { + "headers": { + "Content-Type": "application/vnd.microsoft.appconfig.kv+json", + "ETag": "W/\"L10qpBghN693OaxydgTkLmrBbV5\"", + "Last-Modified": "Tue, 27 Aug 2019 16:52:32 GMT", + "Sync-Token": "zAJw6V16=NjotMSM3ODk3NjM=;sn=789763" + }, + "body": { + "etag": "L10qpBghN693OaxydgTkLmrBbV5", + "key": "Message", + "label": null, + "content_type": null, + "value": "Hello World!", + "tags": {}, + "locked": false, + "last_modified": "2019-08-27T16:52:32+00:00" + } + } + } +} diff --git a/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/PutLock.json b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/PutLock.json new file mode 100644 index 000000000000..20b2710f0a2d --- /dev/null +++ b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/PutLock.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "endpoint": "https://{exampleAppConfigurationName}.azconfig.io", + "api-version": "1.0", + "key": "Message" + }, + "responses": { + "200": { + "headers": { + "Content-Type": "application/vnd.microsoft.appconfig.kv+json", + "ETag": "W/\"L10qpBghN693OaxydgTkLmrBbV4\"", + "Last-Modified": "Tue, 27 Aug 2019 16:52:32 GMT", + "Sync-Token": "zAJw6V16=NjotMSM3ODk3NjM=;sn=789763" + }, + "body": { + "etag": "L10qpBghN693OaxydgTkLmrBbV4", + "key": "Message", + "label": null, + "content_type": null, + "value": "Hello World!", + "tags": {}, + "locked": true, + "last_modified": "2019-08-27T16:52:32+00:00" + } + } + } +} diff --git a/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/PutLock_IfMatch.json b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/PutLock_IfMatch.json new file mode 100644 index 000000000000..2678730e0c6b --- /dev/null +++ b/specification/appconfiguration/data-plane/Microsoft.AppConfiguration/stable/1.0/examples/PutLock_IfMatch.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "endpoint": "https://{exampleAppConfigurationName}.azconfig.io", + "api-version": "1.0", + "key": "Message", + "If-Match": "\"L10qpBghN693OaxydgTkLmrBbV5\"" + }, + "responses": { + "200": { + "headers": { + "Content-Type": "application/vnd.microsoft.appconfig.kv+json", + "ETag": "W/\"L10qpBghN693OaxydgTkLmrBbV5\"", + "Last-Modified": "Tue, 27 Aug 2019 16:52:32 GMT", + "Sync-Token": "zAJw6V16=NjotMSM3ODk3NjM=;sn=789763" + }, + "body": { + "etag": "L10qpBghN693OaxydgTkLmrBbV5", + "key": "Message", + "label": null, + "content_type": null, + "value": "Hello World!", + "tags": {}, + "locked": true, + "last_modified": "2019-08-27T16:52:32+00:00" + } + } + } +} diff --git a/specification/appconfiguration/data-plane/readme.md b/specification/appconfiguration/data-plane/readme.md new file mode 100644 index 000000000000..9af33b0fa2cf --- /dev/null +++ b/specification/appconfiguration/data-plane/readme.md @@ -0,0 +1,108 @@ +# AppConfiguration + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for AppConfiguration. + +--- + +## Getting Started + +To build the SDK for AppConfiguration, 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 the AppConfiguration API. + +``` yaml +# common +openapi-type: data-plane +tag: package-1-0 +``` + +### Tag: package-2019-07 + +These settings apply only when `--tag=package-1-0` is specified on the command line. + +``` yaml $(tag) == 'package-1-0' +input-file: +- Microsoft.AppConfiguration/stable/1.0/appconfiguration.json +``` + +--- + +## 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 +``` + +## 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 + namespace: Microsoft.Azure.AppConfiguration + sync-methods: None + output-folder: $(csharp-sdks-folder)/AppConfiguration/preview/Microsoft.Azure.AppConfiguration/src/Generated + clear-output-folder: true + add-credentials: true +``` +## Suppression + +``` yaml +directive: + - suppress: DefinitionsPropertiesNamesCamelCase + from: appconfiguration.json + where: $.definitions.KeyValue.properties.content_type + reason: Existing property names. The service uses snake casing for json properties. + - suppress: DefinitionsPropertiesNamesCamelCase + from: appconfiguration.json + where: $.definitions.KeyValue.properties.last_modified + reason: Existing property names. The service uses snake casing for json properties. + - suppress: XmsParameterLocation + from: appconfiguration.json + where: $.parameters.SyncTokens + reason: The latest sync token should be used on every request. It is more proper to be globally stored per client rather than passed in for individual requests. +``` +## 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/1.0/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/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/appconfiguration.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/appconfiguration.json new file mode 100644 index 000000000000..875ac3226401 --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/appconfiguration.json @@ -0,0 +1,1595 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-11-01-preview", + "title": "AppConfigurationManagementClient" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.AppConfiguration/configurationStores": { + "get": { + "tags": [ + "ConfigurationStores" + ], + "description": "Lists the configuration stores for a given subscription.", + "operationId": "ConfigurationStores_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "$skipToken", + "in": "query", + "description": "A skip token is used to continue retrieving items after an operation returns a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skipToken parameter that specifies a starting point to use for subsequent calls.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ConfigurationStoreListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "ConfigurationStores_List": { + "$ref": "./examples/ConfigurationStoresList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppConfiguration/configurationStores": { + "get": { + "tags": [ + "ConfigurationStores" + ], + "description": "Lists the configuration stores for a given resource group.", + "operationId": "ConfigurationStores_ListByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "$skipToken", + "in": "query", + "description": "A skip token is used to continue retrieving items after an operation returns a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skipToken parameter that specifies a starting point to use for subsequent calls.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ConfigurationStoreListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "ConfigurationStores_ListByResourceGroup": { + "$ref": "./examples/ConfigurationStoresListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppConfiguration/configurationStores/{configStoreName}": { + "get": { + "tags": [ + "ConfigurationStores" + ], + "description": "Gets the properties of the specified configuration store.", + "operationId": "ConfigurationStores_Get", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ConfigStoreNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ConfigurationStore" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "ConfigurationStores_Get": { + "$ref": "./examples/ConfigurationStoresGet.json" + } + } + }, + "put": { + "tags": [ + "ConfigurationStores" + ], + "description": "Creates a configuration store with the specified parameters.", + "operationId": "ConfigurationStores_Create", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ConfigStoreNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "configStoreCreationParameters", + "in": "body", + "description": "The parameters for creating a configuration store.", + "required": true, + "schema": { + "$ref": "#/definitions/ConfigurationStore" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ConfigurationStore" + } + }, + "201": { + "description": "The request was successfully accepted; the operation will complete asynchronously. The provisioning state of the resource should indicate the current state of the resource.", + "schema": { + "$ref": "#/definitions/ConfigurationStore" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "ConfigurationStores_Create": { + "$ref": "./examples/ConfigurationStoresCreate.json" + }, + "ConfigurationStores_Create_WithIdentity": { + "$ref": "./examples/ConfigurationStoresCreateWithIdentity.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "ConfigurationStores" + ], + "description": "Deletes a configuration store.", + "operationId": "ConfigurationStores_Delete", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ConfigStoreNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "202": { + "description": "The request was successful; the operation will complete asynchronously." + }, + "204": { + "description": "No Content - the specified resource was not found." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "ConfigurationStores_Delete": { + "$ref": "./examples/ConfigurationStoresDelete.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "ConfigurationStores" + ], + "description": "Updates a configuration store with the specified parameters.", + "operationId": "ConfigurationStores_Update", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ConfigStoreNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "configStoreUpdateParameters", + "in": "body", + "description": "The parameters for updating a configuration store.", + "required": true, + "schema": { + "$ref": "#/definitions/ConfigurationStoreUpdateParameters" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ConfigurationStore" + } + }, + "201": { + "description": "The request was successfully accepted; the operation will complete asynchronously. The provisioning state of the resource should indicate the current state of the resource.", + "schema": { + "$ref": "#/definitions/ConfigurationStore" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "ConfigurationStores_Update": { + "$ref": "./examples/ConfigurationStoresUpdate.json" + }, + "ConfigurationStores_Update_WithIdentity": { + "$ref": "./examples/ConfigurationStoresUpdateWithIdentity.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.AppConfiguration/checkNameAvailability": { + "post": { + "tags": [ + "Operations" + ], + "description": "Checks whether the configuration store name is available for use.", + "operationId": "Operations_CheckNameAvailability", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "checkNameAvailabilityParameters", + "in": "body", + "description": "The object containing information for the availability request.", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityParameters" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/NameAvailabilityStatus" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "ConfigurationStores_CheckNameAvailable": { + "$ref": "./examples/CheckNameAvailable.json" + }, + "ConfigurationStores_CheckNameNotAvailable": { + "$ref": "./examples/CheckNameNotAvailable.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppConfiguration/configurationStores/{configStoreName}/ListKeys": { + "post": { + "tags": [ + "ConfigurationStores" + ], + "description": "Lists the access key for the specified configuration store.", + "operationId": "ConfigurationStores_ListKeys", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ConfigStoreNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "$skipToken", + "in": "query", + "description": "A skip token is used to continue retrieving items after an operation returns a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skipToken parameter that specifies a starting point to use for subsequent calls.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ApiKeyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "ConfigurationStores_ListKeys": { + "$ref": "./examples/ConfigurationStoresListKeys.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppConfiguration/configurationStores/{configStoreName}/RegenerateKey": { + "post": { + "tags": [ + "ConfigurationStores" + ], + "description": "Regenerates an access key for the specified configuration store.", + "operationId": "ConfigurationStores_RegenerateKey", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ConfigStoreNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "regenerateKeyParameters", + "in": "body", + "description": "The parameters for regenerating an access key.", + "required": true, + "schema": { + "$ref": "#/definitions/RegenerateKeyParameters" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/ApiKey" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "ConfigurationStores_RegenerateKey": { + "$ref": "./examples/ConfigurationStoresRegenerateKey.json" + } + } + } + }, + "/providers/Microsoft.AppConfiguration/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists the operations available from this provider.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "$skipToken", + "in": "query", + "description": "A skip token is used to continue retrieving items after an operation returns a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skipToken parameter that specifies a starting point to use for subsequent calls.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/OperationDefinitionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": {}, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppConfiguration/configurationStores/{configStoreName}/listKeyValue": { + "post": { + "tags": [ + "ConfigurationStores" + ], + "description": "Lists a configuration store key-value.", + "operationId": "ConfigurationStores_ListKeyValue", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ConfigStoreNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "listKeyValueParameters", + "in": "body", + "description": "The parameters for retrieving a key-value.", + "required": true, + "schema": { + "$ref": "#/definitions/ListKeyValueParameters" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/KeyValue" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "ConfigurationStores_ListKeyValue": { + "$ref": "./examples/ConfigurationStoresListKeyValue.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppConfiguration/configurationStores/{configStoreName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_ListByConfigurationStore", + "description": "Lists all private endpoint connections for a configuration store.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ConfigStoreNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "PrivateEndpointConnection_List": { + "$ref": "./examples/ConfigurationStoresListPrivateEndpointConnections.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppConfiguration/configurationStores/{configStoreName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Get", + "description": "Gets the specified private endpoint connection associated with the configuration store.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ConfigStoreNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "Private endpoint connection name", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "PrivateEndpointConnection_GetConnection": { + "$ref": "./examples/ConfigurationStoresGetPrivateEndpointConnection.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_CreateOrUpdate", + "description": "Update the state of the specified private endpoint connection associated with the configuration store.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ConfigStoreNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "Private endpoint connection name", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnection", + "in": "body", + "description": "The private endpoint connection properties.", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "201": { + "description": "The request was successfully accepted; the operation will complete asynchronously. The provisioning state of the resource should indicate the current state of the resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "PrivateEndpointConnection_CreateOrUpdate": { + "$ref": "./examples/ConfigurationStoresCreatePrivateEndpointConnection.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Deletes a private endpoint connection.", + "operationId": "PrivateEndpointConnections_Delete", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ConfigStoreNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "Private endpoint connection name", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "202": { + "description": "The request was successful; the operation will complete asynchronously." + }, + "204": { + "description": "No Content - the specified resource was not found." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "PrivateEndpointConnections_Delete": { + "$ref": "./examples/ConfigurationStoresDeletePrivateEndpointConnection.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppConfiguration/configurationStores/{configStoreName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "operationId": "PrivateLinkResources_ListByConfigurationStore", + "description": "Gets the private link resources that need to be created for a configuration store.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ConfigStoreNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "PrivateLinkResources_ListGroupIds": { + "$ref": "./examples/PrivateLinkResourcesListByConfigurationStore.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppConfiguration/configurationStores/{configStoreName}/privateLinkResources/{groupName}": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "operationId": "PrivateLinkResources_Get", + "description": "Gets a private link resource that need to be created for a configuration store.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ConfigStoreNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "groupName", + "in": "path", + "description": "The name of the private link resource group.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/Error" + } + } + }, + "x-ms-examples": { + "PrivateLinkResources_Get": { + "$ref": "./examples/PrivateLinkResourceGet.json" + } + } + } + } + }, + "definitions": { + "ConfigurationStoreListResult": { + "description": "The result of a request to list configuration stores.", + "type": "object", + "properties": { + "value": { + "description": "The collection value.", + "type": "array", + "items": { + "$ref": "#/definitions/ConfigurationStore" + } + }, + "nextLink": { + "description": "The URI that can be used to request the next set of paged results.", + "type": "string" + } + } + }, + "ConfigurationStore": { + "description": "The configuration store along with all resource properties. The Configuration Store will have all information to begin utilizing it.", + "required": [ + "location", + "sku" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "identity": { + "$ref": "#/definitions/ResourceIdentity", + "description": "The managed identity information, if configured." + }, + "properties": { + "$ref": "#/definitions/ConfigurationStoreProperties", + "description": "The properties of a configuration store.", + "x-ms-client-flatten": true + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The sku of the configuration store." + } + } + }, + "ConfigurationStoreProperties": { + "description": "The properties of a configuration store.", + "type": "object", + "properties": { + "provisioningState": { + "description": "The provisioning state of the configuration store.", + "enum": [ + "Creating", + "Updating", + "Deleting", + "Succeeded", + "Failed", + "Canceled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "creationDate": { + "format": "date-time", + "description": "The creation date of configuration store.", + "type": "string", + "readOnly": true + }, + "endpoint": { + "description": "The DNS endpoint where the configuration store API will be available.", + "type": "string", + "readOnly": true + }, + "encryption": { + "$ref": "#/definitions/EncryptionProperties", + "description": "The encryption settings of the configuration store." + } + } + }, + "EncryptionProperties": { + "type": "object", + "description": "The encryption settings for a configuration store.", + "properties": { + "keyVaultProperties": { + "$ref": "#/definitions/KeyVaultProperties", + "description": "Key vault properties." + } + } + }, + "KeyVaultProperties": { + "type": "object", + "description": "Settings concerning key vault encryption for a configuration store.", + "properties": { + "keyIdentifier": { + "description": "The URI of the key vault key used to encrypt data.", + "type": "string" + }, + "identityClientId": { + "description": "The client id of the identity which will be used to access key vault.", + "type": "string" + } + } + }, + "ConfigurationStoreUpdateParameters": { + "description": "The parameters for updating a configuration store.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/ConfigurationStorePropertiesUpdateParameters", + "description": "The properties for updating a configuration store.", + "x-ms-client-flatten": true + }, + "identity": { + "$ref": "#/definitions/ResourceIdentity", + "description": "The managed identity information for the configuration store." + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The SKU of the configuration store." + }, + "tags": { + "description": "The ARM resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "ConfigurationStorePropertiesUpdateParameters": { + "description": "The properties for updating a configuration store.", + "type": "object", + "properties": { + "encryption": { + "$ref": "#/definitions/EncryptionProperties", + "description": "The encryption settings of the configuration store." + } + } + }, + "CheckNameAvailabilityParameters": { + "description": "Parameters used for checking whether a resource name is available.", + "required": [ + "name", + "type" + ], + "type": "object", + "properties": { + "name": { + "description": "The name to check for availability.", + "type": "string" + }, + "type": { + "description": "The resource type to check for name availability.", + "enum": [ + "Microsoft.AppConfiguration/configurationStores" + ], + "type": "string", + "x-ms-enum": { + "name": "ConfigurationResourceType", + "modelAsString": true + } + } + } + }, + "NameAvailabilityStatus": { + "description": "The result of a request to check the availability of a resource name.", + "type": "object", + "properties": { + "nameAvailable": { + "description": "The value indicating whether the resource name is available.", + "type": "boolean", + "readOnly": true + }, + "message": { + "description": "If any, the error message that provides more detail for the reason that the name is not available.", + "type": "string", + "readOnly": true + }, + "reason": { + "description": "If any, the reason that the name is not available.", + "type": "string", + "readOnly": true + } + } + }, + "ApiKeyListResult": { + "description": "The result of a request to list API keys.", + "type": "object", + "properties": { + "value": { + "description": "The collection value.", + "type": "array", + "items": { + "$ref": "#/definitions/ApiKey" + } + }, + "nextLink": { + "description": "The URI that can be used to request the next set of paged results.", + "type": "string" + } + } + }, + "ApiKey": { + "description": "An API key used for authenticating with a configuration store endpoint.", + "type": "object", + "properties": { + "id": { + "description": "The key ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "A name for the key describing its usage.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "The value of the key that is used for authentication purposes.", + "type": "string", + "readOnly": true + }, + "connectionString": { + "description": "A connection string that can be used by supporting clients for authentication.", + "type": "string", + "readOnly": true + }, + "lastModified": { + "format": "date-time", + "description": "The last time any of the key's properties were modified.", + "type": "string", + "readOnly": true + }, + "readOnly": { + "description": "Whether this key can only be used for read operations.", + "type": "boolean", + "readOnly": true + } + } + }, + "RegenerateKeyParameters": { + "description": "The parameters used to regenerate an API key.", + "type": "object", + "properties": { + "id": { + "description": "The id of the key to regenerate.", + "type": "string" + } + } + }, + "ListKeyValueParameters": { + "description": "The parameters used to list a configuration store key-value", + "required": [ + "key" + ], + "type": "object", + "properties": { + "key": { + "description": "The key to retrieve.", + "type": "string" + }, + "label": { + "description": "The label of the key.", + "type": "string" + } + } + }, + "KeyValue": { + "description": "The result of a request to retrieve a key-value from the specified configuration store.", + "type": "object", + "properties": { + "key": { + "description": "The primary identifier of a key-value.\r\nThe key is used in unison with the label to uniquely identify a key-value.", + "type": "string", + "readOnly": true + }, + "label": { + "description": "A value used to group key-values.\r\nThe label is used in unison with the key to uniquely identify a key-value.", + "type": "string", + "readOnly": true + }, + "value": { + "description": "The value of the key-value.", + "type": "string", + "readOnly": true + }, + "contentType": { + "description": "The content type of the key-value's value.\r\nProviding a proper content-type can enable transformations of values when they are retrieved by applications.", + "type": "string", + "readOnly": true + }, + "eTag": { + "description": "An ETag indicating the state of a key-value within a configuration store.", + "type": "string", + "readOnly": true + }, + "lastModified": { + "format": "date-time", + "description": "The last time a modifying operation was performed on the given key-value.", + "type": "string", + "readOnly": true + }, + "locked": { + "description": "A value indicating whether the key-value is locked.\r\nA locked key-value may not be modified until it is unlocked.", + "type": "boolean", + "readOnly": true + }, + "tags": { + "description": "A dictionary of tags that can help identify what a key-value may be applicable for.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "readOnly": true + } + } + }, + "OperationDefinitionListResult": { + "description": "The result of a request to list configuration store operations.", + "type": "object", + "properties": { + "value": { + "description": "The collection value.", + "type": "array", + "items": { + "$ref": "#/definitions/OperationDefinition" + } + }, + "nextLink": { + "description": "The URI that can be used to request the next set of paged results.", + "type": "string" + } + } + }, + "OperationDefinition": { + "description": "The definition of a configuration store operation.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}.", + "type": "string" + }, + "display": { + "$ref": "#/definitions/OperationDefinitionDisplay", + "description": "The display information for the configuration store operation." + } + } + }, + "OperationDefinitionDisplay": { + "description": "The display information for a configuration store operation.", + "type": "object", + "properties": { + "provider": { + "description": "The resource provider name: Microsoft App Configuration.\"", + "type": "string", + "readOnly": true + }, + "resource": { + "description": "The resource on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "The operation that users can perform.", + "type": "string" + }, + "description": { + "description": "The description for the operation.", + "type": "string" + } + } + }, + "ResourceIdentity": { + "type": "object", + "description": "An identity that can be associated with a resource.", + "properties": { + "type": { + "description": "The type of managed identity used. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user-assigned identities. The type 'None' will remove any identities.", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned" + ], + "type": "string", + "x-ms-enum": { + "name": "IdentityType", + "modelAsString": true + } + }, + "userAssignedIdentities": { + "description": "The list of user-assigned identities associated with the resource. The user-assigned identity dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserIdentity" + } + }, + "principalId": { + "description": "The principal id of the identity. This property will only be provided for a system-assigned identity.", + "type": "string", + "readOnly": true + }, + "tenantId": { + "description": "The tenant id associated with the resource's identity. This property will only be provided for a system-assigned identity.", + "type": "string", + "readOnly": true + } + } + }, + "UserIdentity": { + "type": "object", + "description": "A resource identity that is managed by the user of the service.", + "properties": { + "principalId": { + "description": "The principal ID of the user-assigned identity.", + "type": "string", + "readOnly": true + }, + "clientId": { + "description": "The client ID of the user-assigned identity.", + "type": "string", + "readOnly": true + } + } + }, + "Sku": { + "type": "object", + "required": [ + "name" + ], + "properties": { + "name": { + "description": "The SKU name of the configuration store.", + "type": "string" + } + }, + "description": "Describes a configuration store SKU." + }, + "Error": { + "description": "AppConfiguration error object.", + "properties": { + "code": { + "description": "Error code.", + "type": "string" + }, + "message": { + "description": "Error message.", + "type": "string" + } + } + }, + "Resource": { + "description": "An Azure resource.", + "required": [ + "location" + ], + "properties": { + "id": { + "description": "The resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of the resource.", + "type": "string", + "readOnly": true + }, + "location": { + "description": "The location of the resource. This cannot be changed after the resource is created.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "tags": { + "description": "The tags of the resource.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "x-ms-azure-resource": true + }, + "PrivateEndpointConnectionListResult": { + "type": "object", + "description": "A list of private endpoint connections", + "properties": { + "value": { + "description": "The collection value.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "nextLink": { + "description": "The URI that can be used to request the next set of paged results.", + "type": "string" + } + } + }, + "PrivateEndpointConnection": { + "description": "A private endpoint connection", + "type": "object", + "properties": { + "id": { + "description": "The resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of the resource.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "The properties of a private endpoint.", + "x-ms-client-flatten": true + } + }, + "x-ms-azure-resource": true + }, + "PrivateEndpointConnectionProperties": { + "type": "object", + "description": "Properties of a private endpoint connection.", + "properties": { + "provisioningState": { + "enum": [ + "Creating", + "Updating", + "Deleting", + "Succeeded", + "Failed", + "Canceled" + ], + "type": "string", + "readOnly": true, + "description": "The provisioning status of the private endpoint connection.", + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "The resource of private endpoint." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between service consumer and provider." + } + }, + "required": [ + "privateLinkServiceConnectionState" + ] + }, + "PrivateEndpoint": { + "type": "object", + "description": "Private endpoint which a connection belongs to.", + "properties": { + "id": { + "description": "The resource Id for private endpoint", + "type": "string" + } + } + }, + "PrivateLinkServiceConnectionState": { + "description": "The state of a private link service connection.", + "type": "object", + "properties": { + "status": { + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ], + "type": "string", + "description": "The private link service connection status.", + "x-ms-enum": { + "name": "ConnectionStatus", + "modelAsString": true + } + }, + "description": { + "type": "string", + "description": "The private link service connection description." + }, + "actionsRequired": { + "enum": [ + "None", + "Recreate" + ], + "type": "string", + "readOnly": true, + "description": "Any action that is required beyond basic workflow (approve/ reject/ disconnect)", + "x-ms-enum": { + "name": "ActionsRequired", + "modelAsString": true + } + } + } + }, + "PrivateLinkResourceListResult": { + "type": "object", + "description": "A list of private link resources.", + "properties": { + "value": { + "description": "The collection value.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + }, + "nextLink": { + "description": "The URI that can be used to request the next set of paged results.", + "type": "string" + } + } + }, + "PrivateLinkResource": { + "type": "object", + "description": "A resource that supports private link capabilities.", + "properties": { + "id": { + "description": "The resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of the resource.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Private link resource properties.", + "x-ms-client-flatten": true + } + } + }, + "PrivateLinkResourceProperties": { + "type": "object", + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + }, + "description": "Properties of a private link resource." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "The Microsoft Azure subscription ID.", + "required": true, + "type": "string" + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group to which the container registry belongs.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ConfigStoreNameParameter": { + "name": "configStoreName", + "in": "path", + "description": "The name of the configuration store.", + "required": true, + "type": "string", + "maxLength": 50, + "minLength": 5, + "pattern": "^[a-zA-Z0-9_-]*$", + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "The client API version.", + "required": true, + "type": "string" + } + }, + "securityDefinitions": { + "azure_auth": { + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/CheckNameAvailable.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/CheckNameAvailable.json new file mode 100644 index 000000000000..21ecef2c2ac9 --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/CheckNameAvailable.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "api-version": "2019-11-01-preview", + "checkNameAvailabilityParameters": { + "name": "contoso", + "type": "Microsoft.AppConfiguration/configurationStores" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true, + "message": "The specified name is available.", + "reason": null + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/CheckNameNotAvailable.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/CheckNameNotAvailable.json new file mode 100644 index 000000000000..a45865518bd4 --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/CheckNameNotAvailable.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "api-version": "2019-11-01-preview", + "checkNameAvailabilityParameters": { + "name": "contoso", + "type": "Microsoft.AppConfiguration/configurationStores" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "AlreadyExists", + "message": "The specified name is already in use." + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresCreate.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresCreate.json new file mode 100644 index 000000000000..e167cae4c1e2 --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresCreate.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "api-version": "2019-11-01-preview", + "configStoreCreationParameters": { + "location": "westus", + "sku": { + "name": "Standard" + }, + "tags": { + "myTag": "myTagValue" + } + } + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.AppConfiguration/configurationStores", + "properties": { + "provisioningState": "Succeeded", + "creationDate": "2018-04-24T16:30:55+00:00", + "endpoint": "https://contoso.azconfig.io", + "encryption": { + "keyVaultProperties": { + "keyIdentifier": null, + "identityClientId": null + } + } + }, + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", + "name": "contoso", + "location": "westus", + "tags": { + "myTag": "myTagValue" + } + } + }, + "201": { + "body": { + "type": "Microsoft.AppConfiguration/configurationStores", + "properties": { + "provisioningState": "Creating", + "creationDate": "2018-04-24T16:30:55+00:00", + "endpoint": "https://contoso.azconfig.io", + "encryption": { + "keyVaultProperties": { + "keyIdentifier": null, + "identityClientId": null + } + } + }, + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", + "name": "contoso", + "location": "westus", + "tags": { + "myTag": "myTagValue" + } + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresCreatePrivateEndpointConnection.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresCreatePrivateEndpointConnection.json new file mode 100644 index 000000000000..3274f96ae0c7 --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresCreatePrivateEndpointConnection.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "privateEndpointConnectionName": "myConnection", + "api-version": "2019-11-01-preview", + "privateEndpointConnection": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso/privateEndpointConnections/myConnection", + "name": "myConnection", + "type": "Microsoft.AppConfiguration/configurationStores/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/peexample01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso/privateEndpointConnections/myConnection", + "name": "myConnection", + "type": "Microsoft.AppConfiguration/configurationStores/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/peexample01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresCreateWithIdentity.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresCreateWithIdentity.json new file mode 100644 index 000000000000..44fbe46621c5 --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresCreateWithIdentity.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "api-version": "2019-11-01-preview", + "configStoreCreationParameters": { + "location": "westus", + "sku": { + "name": "Standard" + }, + "tags": { + "myTag": "myTagValue" + }, + "identity": { + "type": "SystemAssigned, UserAssigned", + "userAssignedIdentities": { + "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourcegroups/myResourceGroup1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity2": {} + } + } + } + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.AppConfiguration/configurationStores", + "properties": { + "provisioningState": "Succeeded", + "creationDate": "2018-04-24T16:30:55+00:00", + "endpoint": "https://contoso.azconfig.io", + "encryption": { + "keyVaultProperties": { + "keyIdentifier": null, + "identityClientId": null + } + } + }, + "sku": { + "name": "Standard" + }, + "identity": { + "principalId": "AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA", + "tenantId": "BBBBBBBB-BBBB-BBBB-BBBB-BBBBBBBBBBBB", + "type": "SystemAssigned, UserAssigned", + "userAssignedIdentities": { + "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourcegroups/myResourceGroup1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity2": { + "clientId": "CCCCCCCC-CCCC-CCCC-CCCC-CCCCCCCCCCCC", + "principalId": "DDDDDDDD-DDDD-DDDD-DDDD-DDDDDDDDDDDD" + } + } + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", + "name": "contoso", + "location": "westus", + "tags": { + "myTag": "myTagValue" + } + } + }, + "201": { + "body": { + "type": "Microsoft.AppConfiguration/configurationStores", + "properties": { + "provisioningState": "Creating", + "creationDate": "2018-04-24T16:30:55+00:00", + "endpoint": "https://contoso.azconfig.io", + "encryption": { + "keyVaultProperties": { + "keyIdentifier": null, + "identityClientId": null + } + } + }, + "sku": { + "name": "Standard" + }, + "identity": { + "principalId": "AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA", + "tenantId": "BBBBBBBB-BBBB-BBBB-BBBB-BBBBBBBBBBBB", + "type": "SystemAssigned, UserAssigned", + "userAssignedIdentities": { + "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourcegroups/myResourceGroup1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity2": { + "clientId": "CCCCCCCC-CCCC-CCCC-CCCC-CCCCCCCCCCCC", + "principalId": "DDDDDDDD-DDDD-DDDD-DDDD-DDDDDDDDDDDD" + } + } + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", + "name": "contoso", + "location": "westus", + "tags": { + "myTag": "myTagValue" + } + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresDelete.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresDelete.json new file mode 100644 index 000000000000..6665f5125d56 --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresDeletePrivateEndpointConnection.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresDeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..c139f97fb1f5 --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresDeletePrivateEndpointConnection.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "privateEndpointConnectionName": "myConnection", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresGet.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresGet.json new file mode 100644 index 000000000000..cf2f127f1a63 --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.AppConfiguration/configurationStores", + "properties": { + "provisioningState": "Succeeded", + "creationDate": "2018-04-24T16:30:55+00:00", + "endpoint": "https://contoso.azconfig.io", + "encryption": { + "keyVaultProperties": { + "keyIdentifier": null, + "identityClientId": null + } + } + }, + "sku": { + "name": "Standard" + }, + "identity": { + "principalId": "AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA", + "tenantId": "BBBBBBBB-BBBB-BBBB-BBBB-BBBBBBBBBBBB", + "type": "SystemAssigned" + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", + "name": "contoso", + "location": "westus", + "tags": {} + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresGetPrivateEndpointConnection.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresGetPrivateEndpointConnection.json new file mode 100644 index 000000000000..764891809936 --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresGetPrivateEndpointConnection.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "privateEndpointConnectionName": "myConnection", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso/privateEndpointConnections/myConnection", + "name": "myConnection", + "type": "Microsoft.AppConfiguration/configurationStores/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/peexample01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresList.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresList.json new file mode 100644 index 000000000000..c445586d33c3 --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresList.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "type": "Microsoft.AppConfiguration/configurationStores", + "properties": { + "provisioningState": "Succeeded", + "creationDate": "2018-04-24T16:30:55+00:00", + "endpoint": "https://contoso.azconfig.io", + "encryption": { + "keyVaultProperties": { + "keyIdentifier": null, + "identityClientId": null + } + } + }, + "sku": { + "name": "Standard" + }, + "identity": { + "principalId": "AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA", + "tenantId": "BBBBBBBB-BBBB-BBBB-BBBB-BBBBBBBBBBBB", + "type": "SystemAssigned" + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", + "name": "contoso", + "location": "westus", + "tags": {} + }, + { + "type": "Microsoft.AppConfiguration/configurationStores", + "properties": { + "provisioningState": "Succeeded", + "creationDate": "2018-04-24T23:06:59+00:00", + "endpoint": "https://contoso2.azconfig.io", + "encryption": { + "keyVaultProperties": { + "keyIdentifier": null, + "identityClientId": null + } + } + }, + "sku": { + "name": "Standard" + }, + "identity": { + "principalId": "CCCCCCCC-CCCC-CCCC-CCCC-CCCCCCCCCCCC", + "tenantId": "BBBBBBBB-BBBB-BBBB-BBBB-BBBBBBBBBBBB", + "type": "SystemAssigned" + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso2", + "name": "contoso2", + "location": "westus", + "tags": {} + } + ] + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresListByResourceGroup.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresListByResourceGroup.json new file mode 100644 index 000000000000..cfb5b11382be --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresListByResourceGroup.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "type": "Microsoft.AppConfiguration/configurationStores", + "properties": { + "provisioningState": "Succeeded", + "creationDate": "2018-04-24T16:30:55+00:00", + "endpoint": "https://contoso.azconfig.io", + "encryption": { + "keyVaultProperties": { + "keyIdentifier": null, + "identityClientId": null + } + } + }, + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", + "name": "contoso", + "location": "westus", + "tags": {} + }, + { + "type": "Microsoft.AppConfiguration/configurationStores", + "properties": { + "provisioningState": "Succeeded", + "creationDate": "2018-04-24T23:06:59+00:00", + "endpoint": "https://contoso2.azconfig.io", + "encryption": { + "keyVaultProperties": { + "keyIdentifier": null, + "identityClientId": null + } + } + }, + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso2", + "name": "contoso2", + "location": "westus", + "tags": {} + } + ] + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresListKeyValue.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresListKeyValue.json new file mode 100644 index 000000000000..3fa301ed86f0 --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresListKeyValue.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "fayeh", + "api-version": "2019-11-01-preview", + "listKeyValueParameters": { + "key": "MaxRequests", + "label": "dev" + } + }, + "responses": { + "200": { + "body": { + "key": "MaxRequests", + "label": "dev", + "value": "100", + "contentType": "", + "eTag": "4f6dd610dd5e4deebc7fbaef685fb903", + "lastModified": "2017-12-05T02:41:26+00:00", + "locked": false, + "tags": { + "t1": "value1", + "t2": "value2" + } + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresListKeys.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresListKeys.json new file mode 100644 index 000000000000..e0014260de92 --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresListKeys.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "439AD01B4BE67DB1", + "name": "Primary", + "value": "000000000000000000000000000000000000000000000000000000", + "connectionString": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", + "lastModified": "2018-04-24T16:30:54+00:00", + "readOnly": false + }, + { + "id": "CB45E100456857B9", + "name": "Secondary", + "value": "000000000000000000000000000000000000000000000000000000", + "connectionString": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", + "lastModified": "2018-04-24T16:30:54+00:00", + "readOnly": false + }, + { + "id": "B3AC55B7E71431A9", + "name": "Primary Read Only", + "value": "000000000000000000000000000000000000000000000000000000", + "connectionString": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", + "lastModified": "2018-04-24T16:30:54+00:00", + "readOnly": true + }, + { + "id": "E2AF6A9A89DCC177", + "name": "Secondary Read Only", + "value": "000000000000000000000000000000000000000000000000000000", + "connectionString": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", + "lastModified": "2018-04-24T16:30:54+00:00", + "readOnly": true + } + ] + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresListPrivateEndpointConnections.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresListPrivateEndpointConnections.json new file mode 100644 index 000000000000..9332c923948e --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresListPrivateEndpointConnections.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso/privateEndpointConnections/myConnection", + "name": "myConnection", + "type": "Microsoft.AppConfiguration/configurationStores/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/peexample01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + ] + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresRegenerateKey.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresRegenerateKey.json new file mode 100644 index 000000000000..c5e9017522ee --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresRegenerateKey.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "api-version": "2019-11-01-preview", + "regenerateKeyParameters": { + "id": "439AD01B4BE67DB1" + } + }, + "responses": { + "200": { + "body": { + "id": "439AD01B4BE67DB1", + "name": "Primary", + "value": "000000000000000000000000000000000000000000000000000000", + "connectionString": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", + "lastModified": "2018-04-26T22:59:24.2370906+00:00", + "readOnly": false + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresUpdate.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresUpdate.json new file mode 100644 index 000000000000..dd945689d19d --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresUpdate.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "api-version": "2019-11-01-preview", + "configStoreUpdateParameters": { + "tags": { + "Category": "Marketing" + }, + "sku": { + "name": "Standard" + } + } + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.AppConfiguration/configurationStores", + "properties": { + "provisioningState": "Succeeded", + "creationDate": "2018-04-24T16:30:55+00:00", + "endpoint": "https://contoso.azconfig.io", + "encryption": { + "keyVaultProperties": { + "keyIdentifier": null, + "identityClientId": null + } + } + }, + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", + "name": "contoso", + "location": "westus", + "tags": { + "Category": "Marketing" + } + } + }, + "201": { + "body": { + "type": "Microsoft.AppConfiguration/configurationStores", + "properties": { + "provisioningState": "Updating", + "creationDate": "2018-04-24T16:30:55+00:00", + "endpoint": "https://contoso.azconfig.io", + "encryption": { + "keyVaultProperties": { + "keyIdentifier": null, + "identityClientId": null + } + } + }, + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", + "name": "contoso", + "location": "westus", + "tags": { + "Category": "Marketing" + } + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresUpdateWithIdentity.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresUpdateWithIdentity.json new file mode 100644 index 000000000000..5ef16d741c7d --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/ConfigurationStoresUpdateWithIdentity.json @@ -0,0 +1,96 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "api-version": "2019-11-01-preview", + "configStoreUpdateParameters": { + "tags": { + "Category": "Marketing" + }, + "sku": { + "name": "Standard" + }, + "identity": { + "type": "SystemAssigned, UserAssigned", + "userAssignedIdentities": { + "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourcegroups/myResourceGroup1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity2": {} + } + } + } + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.AppConfiguration/configurationStores", + "properties": { + "provisioningState": "Succeeded", + "creationDate": "2018-04-24T16:30:55+00:00", + "endpoint": "https://contoso.azconfig.io", + "encryption": { + "keyVaultProperties": { + "keyIdentifier": null, + "identityClientId": null + } + } + }, + "sku": { + "name": "Standard" + }, + "identity": { + "principalId": "AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA", + "tenantId": "BBBBBBBB-BBBB-BBBB-BBBB-BBBBBBBBBBBB", + "type": "SystemAssigned, UserAssigned", + "userAssignedIdentities": { + "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourcegroups/myResourceGroup1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity2": { + "clientId": "CCCCCCCC-CCCC-CCCC-CCCC-CCCCCCCCCCCC", + "principalId": "DDDDDDDD-DDDD-DDDD-DDDD-DDDDDDDDDDDD" + } + } + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", + "name": "contoso", + "location": "westus", + "tags": { + "Category": "Marketing" + } + } + }, + "201": { + "body": { + "type": "Microsoft.AppConfiguration/configurationStores", + "properties": { + "provisioningState": "Updating", + "creationDate": "2018-04-24T16:30:55+00:00", + "endpoint": "https://contoso.azconfig.io", + "encryption": { + "keyVaultProperties": { + "keyIdentifier": null, + "identityClientId": null + } + } + }, + "sku": { + "name": "Standard" + }, + "identity": { + "principalId": "AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA", + "tenantId": "BBBBBBBB-BBBB-BBBB-BBBB-BBBBBBBBBBBB", + "type": "SystemAssigned, UserAssigned", + "userAssignedIdentities": { + "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourcegroups/myResourceGroup1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity2": { + "clientId": "CCCCCCCC-CCCC-CCCC-CCCC-CCCCCCCCCCCC", + "principalId": "DDDDDDDD-DDDD-DDDD-DDDD-DDDDDDDDDDDD" + } + } + }, + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", + "name": "contoso", + "location": "westus", + "tags": { + "Category": "Marketing" + } + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/PrivateLinkResourceGet.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/PrivateLinkResourceGet.json new file mode 100644 index 000000000000..0f52593d85c9 --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/PrivateLinkResourceGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "api-version": "2019-11-01-preview", + "groupName": "configurationStores" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso/privateLinkResources/configurationStores", + "name": "configurationStores", + "type": "Microsoft.AppConfiguraiton/configurationStores/privateLinkResources", + "properties": { + "groupId": "configurationStores", + "requiredMembers": [ + "configurationStores" + ] + } + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/PrivateLinkResourcesListByConfigurationStore.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/PrivateLinkResourcesListByConfigurationStore.json new file mode 100644 index 000000000000..e652e2399b97 --- /dev/null +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/preview/2019-11-01-preview/examples/PrivateLinkResourcesListByConfigurationStore.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "c80fb759-c965-4c6a-9110-9b2b2d038882", + "resourceGroupName": "myResourceGroup", + "configStoreName": "contoso", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso/privateLinkResources/configurationStores", + "name": "configurationStores", + "type": "Microsoft.AppConfiguraiton/configurationStores/privateLinkResources", + "properties": { + "groupId": "configurationStores", + "requiredMembers": [ + "configurationStores" + ] + } + } + ] + } + } + } +} diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresCreate.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresCreate.json index 2920e1843a1d..e321e0cbe41e 100644 --- a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresCreate.json +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresCreate.json @@ -7,7 +7,7 @@ "configStoreCreationParameters": { "location": "westus", "sku": { - "name": "Free" + "name": "Standard" }, "tags": { "myTag": "myTagValue" @@ -24,7 +24,7 @@ "endpoint": "https://contoso.azconfig.io" }, "sku": { - "name": "Free" + "name": "Standard" }, "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", "name": "contoso", @@ -43,7 +43,7 @@ "endpoint": "https://contoso.azconfig.io" }, "sku": { - "name": "Free" + "name": "Standard" }, "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", "name": "contoso", diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresCreateWithIdentity.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresCreateWithIdentity.json index 3cbc337a1050..6e0499da6823 100644 --- a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresCreateWithIdentity.json +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresCreateWithIdentity.json @@ -7,7 +7,7 @@ "configStoreCreationParameters": { "location": "westus", "sku": { - "name": "Free" + "name": "Standard" }, "tags": { "myTag": "myTagValue" @@ -30,7 +30,7 @@ "endpoint": "https://contoso.azconfig.io" }, "sku": { - "name": "Free" + "name": "Standard" }, "identity": { "principalId": "AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA", @@ -60,7 +60,7 @@ "endpoint": "https://contoso.azconfig.io" }, "sku": { - "name": "Free" + "name": "Standard" }, "identity": { "principalId": "AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA", diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresGet.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresGet.json index d7ebe442f94c..4a224773c768 100644 --- a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresGet.json +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresGet.json @@ -15,7 +15,7 @@ "endpoint": "https://contoso.azconfig.io" }, "sku": { - "name": "Free" + "name": "Standard" }, "identity": { "principalId": "AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA", diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresList.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresList.json index cf2acb8b5872..ec7dd6e4c3d1 100644 --- a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresList.json +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresList.json @@ -15,7 +15,7 @@ "endpoint": "https://contoso.azconfig.io" }, "sku": { - "name": "Free" + "name": "Standard" }, "identity": { "principalId": "AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA", @@ -35,7 +35,7 @@ "endpoint": "https://contoso2.azconfig.io" }, "sku": { - "name": "Free" + "name": "Standard" }, "identity": { "principalId": "CCCCCCCC-CCCC-CCCC-CCCC-CCCCCCCCCCCC", diff --git a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresListByResourceGroup.json b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresListByResourceGroup.json index cbbcd48ce240..80ca3dbf46e3 100644 --- a/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresListByResourceGroup.json +++ b/specification/appconfiguration/resource-manager/Microsoft.AppConfiguration/stable/2019-10-01/examples/ConfigurationStoresListByResourceGroup.json @@ -16,7 +16,7 @@ "endpoint": "https://contoso.azconfig.io" }, "sku": { - "name": "Free" + "name": "Standard" }, "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso", "name": "contoso", @@ -31,7 +31,7 @@ "endpoint": "https://contoso2.azconfig.io" }, "sku": { - "name": "Free" + "name": "Standard" }, "id": "/subscriptions/c80fb759-c965-4c6a-9110-9b2b2d038882/resourceGroups/myResourceGroup/providers/Microsoft.AppConfiguration/configurationStores/contoso2", "name": "contoso2", diff --git a/specification/appconfiguration/resource-manager/readme.cli.md b/specification/appconfiguration/resource-manager/readme.cli.md index 53fe766e5128..14cf5c954049 100644 --- a/specification/appconfiguration/resource-manager/readme.cli.md +++ b/specification/appconfiguration/resource-manager/readme.cli.md @@ -8,11 +8,56 @@ cli: namespace: azure.mgmt.appconfiguration package-name: azure-mgmt-appconfiguration debug: true - test-setup: - - name: ConfigurationStores_Create - - name: ConfigurationStores_Get - - name: ConfigurationStores_CheckNameAvailable - - name: ConfigurationStores_ListKeys - - name: ConfigurationStores_List + test-scenario: + - name: /ConfigurationStores/put/ConfigurationStores_Create + - name: /ConfigurationStores/put/ConfigurationStores_Create_WithIdentity + disabled: true + - name: /PrivateEndpointConnections/put/PrivateEndpointConnection_CreateOrUpdate + disabled: true + - name: /PrivateEndpointConnections/get/PrivateEndpointConnection_GetConnection + disabled: true + - name: /PrivateLinkResources/get/PrivateLinkResources_Get + disabled: true + - name: /PrivateEndpointConnections/get/PrivateEndpointConnection_List + disabled: true + - name: /PrivateLinkResources/get/PrivateLinkResources_ListGroupIds + disabled: true + - name: /ConfigurationStores/get/ConfigurationStores_Get + - name: /ConfigurationStores/get/ConfigurationStores_ListByResourceGroup + - name: /ConfigurationStores/get/ConfigurationStores_List + - name: /ConfigurationStores/post/ConfigurationStores_RegenerateKey + disabled: true + - name: /ConfigurationStores/post/ConfigurationStores_ListKeyValue + disabled: true + - name: /ConfigurationStores/post/ConfigurationStores_ListKeys + - name: /ConfigurationStores/patch/ConfigurationStores_Update + disabled: true + - name: /ConfigurationStores/patch/ConfigurationStores_Update_WithIdentity + disabled: true + - name: /Operations/post/ConfigurationStores_CheckNameNotAvailable + disabled: true + - name: /Operations/post/ConfigurationStores_CheckNameAvailable + disabled: true + - name: /PrivateEndpointConnections/delete/PrivateEndpointConnections_Delete + disabled: true + - name: /ConfigurationStores/delete/ConfigurationStores_Delete + cli-directive: + - select: 'parameter' + where: + parameter: '(configStoreCreationParameters|regenerateKeyParameters|checkNameAvailabilityParameters)' + hidden: 'true' + - select: 'operation' + where: + operationGroup: 'ConfigurationStores' + operation: 'update' + hidden: 'true' + - select: 'parameter' + where: + parameter: 'configStoreName' + name: 'name' + - select: 'operationGroup' + where: + operationGroup: 'Operations' + name: 'stores' ``` diff --git a/specification/appconfiguration/resource-manager/readme.go.md b/specification/appconfiguration/resource-manager/readme.go.md index 41fb855cee50..2571d89226d2 100644 --- a/specification/appconfiguration/resource-manager/readme.go.md +++ b/specification/appconfiguration/resource-manager/readme.go.md @@ -13,10 +13,20 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2019-11-01-preview - tag: package-2019-10-01 - tag: package-2019-02-01-preview ``` +### Tag: package-2019-11-01-preview and go + +These settings apply only when `--tag=package-2019-11-01-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2019-11-01-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2019-11-01-preview/$(namespace) +``` + ### Tag: package-2019-10-01 and go These settings apply only when `--tag=package-2019-10-01 --go` is specified on the command line. diff --git a/specification/appconfiguration/resource-manager/readme.md b/specification/appconfiguration/resource-manager/readme.md index e777b26ca55e..de29d229eefa 100644 --- a/specification/appconfiguration/resource-manager/readme.md +++ b/specification/appconfiguration/resource-manager/readme.md @@ -26,7 +26,16 @@ These are the global settings for the AppConfiguration API. ``` yaml openapi-type: arm -tag: package-2019-10-01 +tag: package-2019-11-01-preview +``` + +### Tag: package-2019-11-01-preview + +These settings apply only when `--tag=package-2019-11-01-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2019-11-01-preview' +input-file: +- Microsoft.AppConfiguration/preview/2019-11-01-preview/appconfiguration.json ``` ### Tag: package-2019-02-01-preview @@ -122,6 +131,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(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 diff --git a/specification/appconfiguration/resource-manager/readme.python.md b/specification/appconfiguration/resource-manager/readme.python.md index 4b37490f2f0a..1a125d702381 100644 --- a/specification/appconfiguration/resource-manager/readme.python.md +++ b/specification/appconfiguration/resource-manager/readme.python.md @@ -4,7 +4,7 @@ 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 @@ -15,13 +15,28 @@ python: package-version: 0.1.0 clear-output-folder: true ``` -``` yaml $(python) && $(python-mode) == 'update' + +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-appconfiguration +no-namespace-folders: true +package-version: 0.1.0 +``` + +``` yaml $(python-mode) == 'update' python: no-namespace-folders: true output-folder: $(python-sdks-folder)/appconfiguration/azure-mgmt-appconfiguration/azure/mgmt/appconfiguration +no-namespace-folders: true +output-folder: $(python-sdks-folder)/appconfiguration/azure-mgmt-appconfiguration/azure/mgmt/appconfiguration ``` -``` yaml $(python) && $(python-mode) == 'create' +``` yaml $(python-mode) == 'create' python: basic-setup-py: true output-folder: $(python-sdks-folder)/appconfiguration/azure-mgmt-appconfiguration +basic-setup-py: true +output-folder: $(python-sdks-folder)/appconfiguration/azure-mgmt-appconfiguration ``` diff --git a/specification/applicationinsights/data-plane/Microsoft.Insights/preview/2018-04-20/examples/metadata-get.json b/specification/applicationinsights/data-plane/Microsoft.Insights/preview/2018-04-20/examples/metadata-get.json new file mode 100644 index 000000000000..765523a9ae47 --- /dev/null +++ b/specification/applicationinsights/data-plane/Microsoft.Insights/preview/2018-04-20/examples/metadata-get.json @@ -0,0 +1,206 @@ +{ + "title": "Get Metadata", + "description": "A metadata request that returns the app schema and other information", + "parameters": { + "subscriptionId": "72993b69-db12-44fc-9a66-9c2005c30513", + "resourceGroupName": "Fabrikam", + "applicationName": "FabrikamProd", + "apiVersion": "2018-04-20" + }, + "responses": { + "200": { + "body": { + "tables": [ + { + "id": "t/requests", + "name": "requests", + "timespanColumn": "timestamp", + "columns": [ + { + "name": "timestamp", + "type": "datetime" + }, + { + "name": "id", + "type": "string" + }, + { + "name": "source", + "type": "string" + }, + { + "name": "name", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "url", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "success", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "resultCode", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "duration", + "type": "real" + }, + { + "name": "performanceBucket", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "itemType", + "type": "string" + }, + { + "name": "customDimensions", + "type": "dynamic", + "isPreferredFacet": true + }, + { + "name": "customMeasurements", + "type": "dynamic" + }, + { + "name": "operation_Name", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "operation_Id", + "type": "string" + }, + { + "name": "operation_ParentId", + "type": "string" + }, + { + "name": "operation_SyntheticSource", + "type": "string" + }, + { + "name": "session_Id", + "type": "string" + }, + { + "name": "user_Id", + "type": "string" + }, + { + "name": "user_AuthenticatedId", + "type": "string" + }, + { + "name": "user_AccountId", + "type": "string" + }, + { + "name": "application_Version", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "client_Type", + "type": "string" + }, + { + "name": "client_Model", + "type": "string" + }, + { + "name": "client_OS", + "type": "string" + }, + { + "name": "client_IP", + "type": "string" + }, + { + "name": "client_City", + "type": "string" + }, + { + "name": "client_StateOrProvince", + "type": "string" + }, + { + "name": "client_CountryOrRegion", + "type": "string" + }, + { + "name": "client_Browser", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "cloud_RoleName", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "cloud_RoleInstance", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "appId", + "type": "string" + }, + { + "name": "appName", + "type": "string" + }, + { + "name": "iKey", + "type": "string" + }, + { + "name": "sdkVersion", + "type": "string" + }, + { + "name": "itemId", + "type": "string" + }, + { + "name": "itemCount", + "type": "int" + } + ] + } + ], + "tableGroups": [ + { + "id": "ai/StandardSchema", + "name": "StandardSchema", + "source": "ai", + "tables": [ + "t/requests" + ] + } + ], + "applications": [ + { + "id": "cf58dcfd-0683-487c-bc84-048789bca8e5", + "name": "FabrikamProd", + "resourceId": "/subscriptions/72993b69-db12-44fc-9a66-9c2005c30513/resourceGroups/Fabrikam/providers/microsoft.insights/components/FabrikamProd", + "tables": [], + "region": "southcentralus", + "tableGroups": [ + "ai/StandardSchema" + ] + } + ] + } + } + } +} diff --git a/specification/applicationinsights/data-plane/Microsoft.Insights/preview/2018-04-20/examples/metadata-post.json b/specification/applicationinsights/data-plane/Microsoft.Insights/preview/2018-04-20/examples/metadata-post.json new file mode 100644 index 000000000000..5cc55bb0da46 --- /dev/null +++ b/specification/applicationinsights/data-plane/Microsoft.Insights/preview/2018-04-20/examples/metadata-post.json @@ -0,0 +1,206 @@ +{ + "title": "Post Metadata", + "description": "A metadata request that returns the app schema and other information", + "parameters": { + "subscriptionId": "72993b69-db12-44fc-9a66-9c2005c30513", + "resourceGroupName": "Fabrikam", + "applicationName": "FabrikamProd", + "apiVersion": "2018-04-20" + }, + "responses": { + "200": { + "body": { + "tables": [ + { + "id": "t/requests", + "name": "requests", + "timespanColumn": "timestamp", + "columns": [ + { + "name": "timestamp", + "type": "datetime" + }, + { + "name": "id", + "type": "string" + }, + { + "name": "source", + "type": "string" + }, + { + "name": "name", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "url", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "success", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "resultCode", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "duration", + "type": "real" + }, + { + "name": "performanceBucket", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "itemType", + "type": "string" + }, + { + "name": "customDimensions", + "type": "dynamic", + "isPreferredFacet": true + }, + { + "name": "customMeasurements", + "type": "dynamic" + }, + { + "name": "operation_Name", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "operation_Id", + "type": "string" + }, + { + "name": "operation_ParentId", + "type": "string" + }, + { + "name": "operation_SyntheticSource", + "type": "string" + }, + { + "name": "session_Id", + "type": "string" + }, + { + "name": "user_Id", + "type": "string" + }, + { + "name": "user_AuthenticatedId", + "type": "string" + }, + { + "name": "user_AccountId", + "type": "string" + }, + { + "name": "application_Version", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "client_Type", + "type": "string" + }, + { + "name": "client_Model", + "type": "string" + }, + { + "name": "client_OS", + "type": "string" + }, + { + "name": "client_IP", + "type": "string" + }, + { + "name": "client_City", + "type": "string" + }, + { + "name": "client_StateOrProvince", + "type": "string" + }, + { + "name": "client_CountryOrRegion", + "type": "string" + }, + { + "name": "client_Browser", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "cloud_RoleName", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "cloud_RoleInstance", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "appId", + "type": "string" + }, + { + "name": "appName", + "type": "string" + }, + { + "name": "iKey", + "type": "string" + }, + { + "name": "sdkVersion", + "type": "string" + }, + { + "name": "itemId", + "type": "string" + }, + { + "name": "itemCount", + "type": "int" + } + ] + } + ], + "tableGroups": [ + { + "id": "ai/StandardSchema", + "name": "StandardSchema", + "source": "ai", + "tables": [ + "t/requests" + ] + } + ], + "applications": [ + { + "id": "cf58dcfd-0683-487c-bc84-048789bca8e5", + "name": "FabrikamProd", + "resourceId": "/subscriptions/72993b69-db12-44fc-9a66-9c2005c30513/resourceGroups/Fabrikam/providers/microsoft.insights/components/FabrikamProd", + "tables": [], + "region": "southcentralus", + "tableGroups": [ + "ai/StandardSchema" + ] + } + ] + } + } + } +} diff --git a/specification/applicationinsights/data-plane/Microsoft.Insights/preview/2018-04-20/swagger.json b/specification/applicationinsights/data-plane/Microsoft.Insights/preview/2018-04-20/swagger.json index 05a0090a8034..40df5f1ff2d4 100644 --- a/specification/applicationinsights/data-plane/Microsoft.Insights/preview/2018-04-20/swagger.json +++ b/specification/applicationinsights/data-plane/Microsoft.Insights/preview/2018-04-20/swagger.json @@ -131,6 +131,84 @@ } } }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Insights/components/{applicationName}/metadata": { + "post": { + "operationId": "Post_Metadata", + "summary": "Gets metadata information", + "description": "Retrieve the metadata information for the app, including its schema, etc.", + "x-ms-examples": { + "metadataPost": { + "$ref": "examples/metadata-post.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "Successful response", + "schema": { + "$ref": "#/definitions/metadataResults" + } + }, + "default": { + "description": "An error response object.", + "schema": { + "$ref": "#/definitions/errorResponse" + } + } + } + }, + "get": { + "operationId": "Get_Metadata", + "summary": "Gets metadata information", + "description": "Retrieve the metadata information for the app, including its schema, etc.", + "x-ms-examples": { + "metadataGet": { + "$ref": "examples/metadata-get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "Successful response", + "schema": { + "$ref": "#/definitions/metadataResults" + } + }, + "default": { + "description": "An error response object.", + "schema": { + "$ref": "#/definitions/errorResponse" + } + } + } + } + }, "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Insights/components/{applicationName}/metrics/{metricId}": { "get": { "operationId": "Metrics_Get", @@ -408,14 +486,6 @@ } }, "parameters": { - "appId": { - "name": "appId", - "description": "ID of the application. This is Application ID from the API Access settings blade in the Azure portal.", - "in": "path", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, "metricId": { "name": "metricId", "in": "path", @@ -977,6 +1047,7 @@ } }, "additionalProperties": { + "description": "Additional properties that can be provided on the metric result info", "type": "object" } }, @@ -1180,7 +1251,10 @@ "description": "Client info of the event", "$ref": "#/definitions/eventsClientInfo" } - } + }, + "required": [ + "type" + ] }, "eventsTraceResult": { "x-ms-discriminator-value": "trace", @@ -2019,6 +2093,241 @@ } } }, + "metadataResults": { + "title": "A metadata response.", + "description": "The metadata result for the app, including available tables, etc.", + "type": "object", + "properties": { + "tableGroups": { + "description": "The list of groups of tables on the app.", + "type": "array", + "items": { + "$ref": "#/definitions/metadataTableGroup" + }, + "uniqueItems": true + }, + "tables": { + "description": "The list of tables and columns that comprise the schema of the app.", + "type": "array", + "items": { + "$ref": "#/definitions/metadataTable" + }, + "uniqueItems": true + }, + "functions": { + "description": "The list of functions stored on the app.", + "type": "array", + "items": { + "$ref": "#/definitions/metadataFunction" + }, + "uniqueItems": true + }, + "applications": { + "description": "The list of Application Insights apps that were referenced in the metadata request.", + "type": "array", + "items": { + "$ref": "#/definitions/metadataApplication" + }, + "uniqueItems": true + } + } + }, + "metadataTableGroup": { + "title": "A group of tables.", + "description": "The table grouping can be either an Application Insights schema or a Log Analytics solution.", + "type": "object", + "properties": { + "id": { + "description": "The ID of the table group", + "type": "string" + }, + "name": { + "description": "The name of the table group", + "type": "string" + }, + "source": { + "description": "The source of the table group, can be either AI or OMS for Log Analytics workspaces", + "type": "string" + }, + "displayName": { + "description": "The display name of the table group", + "type": "string" + }, + "description": { + "description": "The description of the table group", + "type": "string" + }, + "tables": { + "description": "The list of tables contained in the table group", + "type": "array", + "items": { + "type": "string" + } + } + }, + "required": [ + "id", + "name" + ] + }, + "metadataTable": { + "title": "A data table that takes part in a schema of an Application Insights app.", + "description": "Tables are part of the app schema, and contain a list of columns and a reference to other relevant metadata items.", + "type": "object", + "properties": { + "id": { + "description": "The ID of the table", + "type": "string" + }, + "name": { + "description": "The name of the table", + "type": "string" + }, + "description": { + "description": "The description of the table", + "type": "string" + }, + "timespanColumn": { + "description": "The column associated with the timespan query parameter for the table", + "type": "string" + }, + "columns": { + "description": "The list of columns defined on the table", + "type": "array", + "items": { + "properties": { + "name": { + "description": "The name of the column", + "type": "string" + }, + "description": { + "description": "The description of the column", + "type": "string" + }, + "type": { + "description": "The data type of the column", + "type": "string", + "enum": [ + "bool", + "datetime", + "dynamic", + "int", + "long", + "real", + "string" + ], + "x-ms-enum": { + "name": "MetadataColumnDataType", + "modelAsString": true + } + }, + "isPreferredFacet": { + "description": "A flag indicating this column is a preferred facet", + "type": "boolean" + }, + "source": { + "description": "an indication of the source of the column, used only when multiple apps have conflicting definition for the column", + "type": "object" + } + }, + "required": [ + "name", + "type" + ] + } + } + }, + "required": [ + "id", + "name" + ] + }, + "metadataFunction": { + "title": "A stored function.", + "description": "Functions are stored Kusto queries that can be specified as part of queries by using their name.", + "type": "object", + "properties": { + "id": { + "description": "The ID of the function.", + "type": "string" + }, + "name": { + "description": "The name of the function, to be used in queries.", + "type": "string" + }, + "parameters": { + "description": "The parameters/arguments of the function, if any.", + "type": "string" + }, + "displayName": { + "description": "The display name of the function.", + "type": "string" + }, + "description": { + "description": "The description of the function.", + "type": "string" + }, + "body": { + "description": "The KQL body of the function.", + "type": "string" + } + }, + "required": [ + "id", + "name", + "body" + ] + }, + "metadataApplication": { + "title": "An Application Insights application.", + "description": "Application Insights apps that were part of the metadata request and that the user has access to.", + "type": "object", + "properties": { + "id": { + "description": "The ID of the Application Insights app.", + "type": "string" + }, + "resourceId": { + "description": "The ARM resource ID of the Application Insights app.", + "type": "string" + }, + "name": { + "description": "The name of the Application Insights app.", + "type": "string" + }, + "region": { + "description": "The Azure region of the Application Insights app.", + "type": "string" + }, + "tables": { + "description": "The list of custom tables for the Application Insights app.", + "type": "array", + "items": { + "type": "string" + } + }, + "functions": { + "description": "The list of stored functions on the Application Insights app", + "type": "array", + "items": { + "type": "string" + } + }, + "tableGroups": { + "description": "The list of table groups on the Application Insights app", + "type": "array", + "items": { + "type": "string" + } + } + }, + "required": [ + "id", + "resourceId", + "name", + "region" + ] + }, "errorDetail": { "title": "Error details.", "type": "object", diff --git a/specification/applicationinsights/data-plane/Microsoft.Insights/preview/v1/AppInsights.json b/specification/applicationinsights/data-plane/Microsoft.Insights/preview/v1/AppInsights.json index e53ba9f6fe61..f6ebd4cb640c 100644 --- a/specification/applicationinsights/data-plane/Microsoft.Insights/preview/v1/AppInsights.json +++ b/specification/applicationinsights/data-plane/Microsoft.Insights/preview/v1/AppInsights.json @@ -377,6 +377,66 @@ } } } + }, + "/apps/{appId}/metadata": { + "post": { + "operationId": "Post_Metadata", + "summary": "Gets metadata information", + "description": "Retrieve the metadata information for the app, including its schema, etc.", + "x-ms-examples": { + "metadataPost": { + "$ref": "examples/metadata-post.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/appId" + } + ], + "responses": { + "200": { + "description": "Successful response", + "schema": { + "$ref": "#/definitions/metadataResults" + } + }, + "default": { + "description": "An error response object.", + "schema": { + "$ref": "#/definitions/errorResponse" + } + } + } + }, + "get": { + "operationId": "Get_Metadata", + "summary": "Gets metadata information", + "description": "Retrieve the metadata information for the app, including its schema, etc.", + "x-ms-examples": { + "metadataGet": { + "$ref": "examples/metadata-get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/appId" + } + ], + "responses": { + "200": { + "description": "Successful response", + "schema": { + "$ref": "#/definitions/metadataResults" + } + }, + "default": { + "description": "An error response object.", + "schema": { + "$ref": "#/definitions/errorResponse" + } + } + } + } } }, "parameters": { @@ -914,6 +974,7 @@ } }, "additionalProperties": { + "description": "Additional properties that can be provided on the metric result info", "type": "object" } }, @@ -1117,7 +1178,10 @@ "description": "Client info of the event", "$ref": "#/definitions/eventsClientInfo" } - } + }, + "required": [ + "type" + ] }, "eventsTraceResult": { "x-ms-discriminator-value": "trace", @@ -1956,6 +2020,241 @@ } } }, + "metadataResults": { + "title": "A metadata response.", + "description": "The metadata result for the app, including available tables, etc.", + "type": "object", + "properties": { + "tableGroups": { + "description": "The list of groups of tables on the app.", + "type": "array", + "items": { + "$ref": "#/definitions/metadataTableGroup" + }, + "uniqueItems": true + }, + "tables": { + "description": "The list of tables and columns that comprise the schema of the app.", + "type": "array", + "items": { + "$ref": "#/definitions/metadataTable" + }, + "uniqueItems": true + }, + "functions": { + "description": "The list of functions stored on the app.", + "type": "array", + "items": { + "$ref": "#/definitions/metadataFunction" + }, + "uniqueItems": true + }, + "applications": { + "description": "The list of Application Insights apps that were referenced in the metadata request.", + "type": "array", + "items": { + "$ref": "#/definitions/metadataApplication" + }, + "uniqueItems": true + } + } + }, + "metadataTableGroup": { + "title": "A group of tables.", + "description": "The table grouping can be either an Application Insights schema or a Log Analytics solution.", + "type": "object", + "properties": { + "id": { + "description": "The ID of the table group", + "type": "string" + }, + "name": { + "description": "The name of the table group", + "type": "string" + }, + "source": { + "description": "The source of the table group, can be either AI or OMS for Log Analytics workspaces", + "type": "string" + }, + "displayName": { + "description": "The display name of the table group", + "type": "string" + }, + "description": { + "description": "The description of the table group", + "type": "string" + }, + "tables": { + "description": "The list of tables contained in the table group", + "type": "array", + "items": { + "type": "string" + } + } + }, + "required": [ + "id", + "name" + ] + }, + "metadataTable": { + "title": "A data table that takes part in a schema of an Application Insights app.", + "description": "Tables are part of the app schema, and contain a list of columns and a reference to other relevant metadata items.", + "type": "object", + "properties": { + "id": { + "description": "The ID of the table", + "type": "string" + }, + "name": { + "description": "The name of the table", + "type": "string" + }, + "description": { + "description": "The description of the table", + "type": "string" + }, + "timespanColumn": { + "description": "The column associated with the timespan query parameter for the table", + "type": "string" + }, + "columns": { + "description": "The list of columns defined on the table", + "type": "array", + "items": { + "properties": { + "name": { + "description": "The name of the column", + "type": "string" + }, + "description": { + "description": "The description of the column", + "type": "string" + }, + "type": { + "description": "The data type of the column", + "type": "string", + "enum": [ + "bool", + "datetime", + "dynamic", + "int", + "long", + "real", + "string" + ], + "x-ms-enum": { + "name": "MetadataColumnDataType", + "modelAsString": true + } + }, + "isPreferredFacet": { + "description": "A flag indicating this column is a preferred facet", + "type": "boolean" + }, + "source": { + "description": "an indication of the source of the column, used only when multiple apps have conflicting definition for the column", + "type": "object" + } + }, + "required": [ + "name", + "type" + ] + } + } + }, + "required": [ + "id", + "name" + ] + }, + "metadataFunction": { + "title": "A stored function.", + "description": "Functions are stored Kusto queries that can be specified as part of queries by using their name.", + "type": "object", + "properties": { + "id": { + "description": "The ID of the function.", + "type": "string" + }, + "name": { + "description": "The name of the function, to be used in queries.", + "type": "string" + }, + "parameters": { + "description": "The parameters/arguments of the function, if any.", + "type": "string" + }, + "displayName": { + "description": "The display name of the function.", + "type": "string" + }, + "description": { + "description": "The description of the function.", + "type": "string" + }, + "body": { + "description": "The KQL body of the function.", + "type": "string" + } + }, + "required": [ + "id", + "name", + "body" + ] + }, + "metadataApplication": { + "title": "An Application Insights application.", + "description": "Application Insights apps that were part of the metadata request and that the user has access to.", + "type": "object", + "properties": { + "id": { + "description": "The ID of the Application Insights app.", + "type": "string" + }, + "resourceId": { + "description": "The ARM resource ID of the Application Insights app.", + "type": "string" + }, + "name": { + "description": "The name of the Application Insights app.", + "type": "string" + }, + "region": { + "description": "The Azure region of the Application Insights app.", + "type": "string" + }, + "tables": { + "description": "The list of custom tables for the Application Insights app.", + "type": "array", + "items": { + "type": "string" + } + }, + "functions": { + "description": "The list of stored functions on the Application Insights app", + "type": "array", + "items": { + "type": "string" + } + }, + "tableGroups": { + "description": "The list of table groups on the Application Insights app", + "type": "array", + "items": { + "type": "string" + } + } + }, + "required": [ + "id", + "resourceId", + "name", + "region" + ] + }, "errorDetail": { "title": "Error details.", "type": "object", diff --git a/specification/applicationinsights/data-plane/Microsoft.Insights/preview/v1/examples/metadata-get.json b/specification/applicationinsights/data-plane/Microsoft.Insights/preview/v1/examples/metadata-get.json new file mode 100644 index 000000000000..03a4f88318a9 --- /dev/null +++ b/specification/applicationinsights/data-plane/Microsoft.Insights/preview/v1/examples/metadata-get.json @@ -0,0 +1,204 @@ +{ + "title": "Get Metadata", + "description": "A metadata request that returns the app schema and other information", + "parameters": { + "appId": "cf58dcfd-0683-487c-bc84-048789bca8e5", + "apiVersion": "2018-04-20" + }, + "responses": { + "200": { + "body": { + "tables": [ + { + "id": "t/requests", + "name": "requests", + "timespanColumn": "timestamp", + "columns": [ + { + "name": "timestamp", + "type": "datetime" + }, + { + "name": "id", + "type": "string" + }, + { + "name": "source", + "type": "string" + }, + { + "name": "name", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "url", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "success", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "resultCode", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "duration", + "type": "real" + }, + { + "name": "performanceBucket", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "itemType", + "type": "string" + }, + { + "name": "customDimensions", + "type": "dynamic", + "isPreferredFacet": true + }, + { + "name": "customMeasurements", + "type": "dynamic" + }, + { + "name": "operation_Name", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "operation_Id", + "type": "string" + }, + { + "name": "operation_ParentId", + "type": "string" + }, + { + "name": "operation_SyntheticSource", + "type": "string" + }, + { + "name": "session_Id", + "type": "string" + }, + { + "name": "user_Id", + "type": "string" + }, + { + "name": "user_AuthenticatedId", + "type": "string" + }, + { + "name": "user_AccountId", + "type": "string" + }, + { + "name": "application_Version", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "client_Type", + "type": "string" + }, + { + "name": "client_Model", + "type": "string" + }, + { + "name": "client_OS", + "type": "string" + }, + { + "name": "client_IP", + "type": "string" + }, + { + "name": "client_City", + "type": "string" + }, + { + "name": "client_StateOrProvince", + "type": "string" + }, + { + "name": "client_CountryOrRegion", + "type": "string" + }, + { + "name": "client_Browser", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "cloud_RoleName", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "cloud_RoleInstance", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "appId", + "type": "string" + }, + { + "name": "appName", + "type": "string" + }, + { + "name": "iKey", + "type": "string" + }, + { + "name": "sdkVersion", + "type": "string" + }, + { + "name": "itemId", + "type": "string" + }, + { + "name": "itemCount", + "type": "int" + } + ] + } + ], + "tableGroups": [ + { + "id": "ai/StandardSchema", + "name": "StandardSchema", + "source": "ai", + "tables": [ + "t/requests" + ] + } + ], + "applications": [ + { + "id": "cf58dcfd-0683-487c-bc84-048789bca8e5", + "name": "FabrikamProd", + "resourceId": "/subscriptions/72993b69-db12-44fc-9a66-9c2005c30513/resourceGroups/Fabrikam/providers/microsoft.insights/components/FabrikamProd", + "tables": [], + "region": "southcentralus", + "tableGroups": [ + "ai/StandardSchema" + ] + } + ] + } + } + } +} diff --git a/specification/applicationinsights/data-plane/Microsoft.Insights/preview/v1/examples/metadata-post.json b/specification/applicationinsights/data-plane/Microsoft.Insights/preview/v1/examples/metadata-post.json new file mode 100644 index 000000000000..ed17f7f2e957 --- /dev/null +++ b/specification/applicationinsights/data-plane/Microsoft.Insights/preview/v1/examples/metadata-post.json @@ -0,0 +1,204 @@ +{ + "title": "Post Metadata", + "description": "A metadata request that returns the app schema and other information", + "parameters": { + "appId": "cf58dcfd-0683-487c-bc84-048789bca8e5", + "apiVersion": "2018-04-20" + }, + "responses": { + "200": { + "body": { + "tables": [ + { + "id": "t/requests", + "name": "requests", + "timespanColumn": "timestamp", + "columns": [ + { + "name": "timestamp", + "type": "datetime" + }, + { + "name": "id", + "type": "string" + }, + { + "name": "source", + "type": "string" + }, + { + "name": "name", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "url", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "success", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "resultCode", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "duration", + "type": "real" + }, + { + "name": "performanceBucket", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "itemType", + "type": "string" + }, + { + "name": "customDimensions", + "type": "dynamic", + "isPreferredFacet": true + }, + { + "name": "customMeasurements", + "type": "dynamic" + }, + { + "name": "operation_Name", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "operation_Id", + "type": "string" + }, + { + "name": "operation_ParentId", + "type": "string" + }, + { + "name": "operation_SyntheticSource", + "type": "string" + }, + { + "name": "session_Id", + "type": "string" + }, + { + "name": "user_Id", + "type": "string" + }, + { + "name": "user_AuthenticatedId", + "type": "string" + }, + { + "name": "user_AccountId", + "type": "string" + }, + { + "name": "application_Version", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "client_Type", + "type": "string" + }, + { + "name": "client_Model", + "type": "string" + }, + { + "name": "client_OS", + "type": "string" + }, + { + "name": "client_IP", + "type": "string" + }, + { + "name": "client_City", + "type": "string" + }, + { + "name": "client_StateOrProvince", + "type": "string" + }, + { + "name": "client_CountryOrRegion", + "type": "string" + }, + { + "name": "client_Browser", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "cloud_RoleName", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "cloud_RoleInstance", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "appId", + "type": "string" + }, + { + "name": "appName", + "type": "string" + }, + { + "name": "iKey", + "type": "string" + }, + { + "name": "sdkVersion", + "type": "string" + }, + { + "name": "itemId", + "type": "string" + }, + { + "name": "itemCount", + "type": "int" + } + ] + } + ], + "tableGroups": [ + { + "id": "ai/StandardSchema", + "name": "StandardSchema", + "source": "ai", + "tables": [ + "t/requests" + ] + } + ], + "applications": [ + { + "id": "cf58dcfd-0683-487c-bc84-048789bca8e5", + "name": "FabrikamProd", + "resourceId": "/subscriptions/72993b69-db12-44fc-9a66-9c2005c30513/resourceGroups/Fabrikam/providers/microsoft.insights/components/FabrikamProd", + "tables": [], + "region": "southcentralus", + "tableGroups": [ + "ai/StandardSchema" + ] + } + ] + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/componentProactiveDetection_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/componentProactiveDetection_API.json index 60b21037da39..0402072c012c 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/componentProactiveDetection_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/componentProactiveDetection_API.json @@ -40,13 +40,13 @@ "operationId": "ProactiveDetectionConfigurations_List", "parameters": [ { - "$ref": "#/parameters/ResourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "#/parameters/ResourceNameParameter" @@ -73,13 +73,13 @@ "operationId": "ProactiveDetectionConfigurations_Get", "parameters": [ { - "$ref": "#/parameters/ResourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "#/parameters/ResourceNameParameter" @@ -107,13 +107,13 @@ "operationId": "ProactiveDetectionConfigurations_Update", "parameters": [ { - "$ref": "#/parameters/ResourceGroupNameParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "#/parameters/ResourceNameParameter" @@ -268,28 +268,6 @@ } }, "parameters": { - "SubscriptionIdParameter": { - "name": "subscriptionId", - "in": "path", - "required": true, - "type": "string", - "description": "The Azure subscription ID." - }, - "ApiVersionParameter": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "Client Api Version." - }, - "ResourceGroupNameParameter": { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group.", - "x-ms-parameter-location": "method" - }, "ResourceNameParameter": { "name": "resourceName", "in": "path", diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/components_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/components_API.json new file mode 100644 index 000000000000..fc10d313cfce --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/components_API.json @@ -0,0 +1,697 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApplicationInsightsManagementClient", + "description": "Azure Application Insights client for Components.", + "version": "2018-05-01-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.Insights/components": { + "get": { + "description": "Gets a list of all Application Insights components within a subscription.", + "operationId": "Components_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A list containing 0 or more Application Insights component definitions.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponentListResult" + } + } + }, + "x-ms-examples": { + "ComponentsList.json": { + "$ref": "./examples/ComponentsList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components": { + "get": { + "description": "Gets a list of Application Insights components within a resource group.", + "operationId": "Components_ListByResourceGroup", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A list containing 0 or more Application Insights component definitions.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponentListResult" + } + } + }, + "x-ms-examples": { + "ComponentListByResourceGroup": { + "$ref": "./examples/ComponentsListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}": { + "delete": { + "description": "Deletes an Application Insights component.", + "operationId": "Components_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "Successful request when deleting an Application Insights component." + }, + "204": { + "description": "The specified component does not exist." + } + }, + "x-ms-examples": { + "ComponentsDelete": { + "$ref": "./examples/ComponentsDelete.json" + } + } + }, + "get": { + "description": "Returns an Application Insights component.", + "operationId": "Components_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "An Application Insights Component definition.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponent" + } + } + }, + "x-ms-examples": { + "ComponentGet": { + "$ref": "./examples/ComponentsGet.json" + } + } + }, + "put": { + "description": "Creates (or updates) an Application Insights component. Note: You cannot specify a different value for InstrumentationKey nor AppId in the Put operation.", + "operationId": "Components_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "InsightProperties", + "description": "Properties that need to be specified to create an Application Insights component.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponent" + } + } + ], + "responses": { + "200": { + "description": "Successful request when creating or updating an Application Insights component. The updated component is returned.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponent" + } + }, + "201": { + "description": "Updating the Application Insights component's tags was successful. Component tags are updated and returned with the rest of the Component's object properties.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponent" + } + } + }, + "x-ms-examples": { + "ComponentCreate": { + "$ref": "./examples/ComponentsCreate.json" + }, + "ComponentUpdate": { + "$ref": "./examples/ComponentsUpdate.json" + } + } + }, + "patch": { + "description": "Updates an existing component's tags. To update other fields use the CreateOrUpdate method.", + "operationId": "Components_UpdateTags", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "ComponentTags", + "description": "Updated tag information to set into the component instance.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TagsResource" + } + } + ], + "responses": { + "200": { + "description": "Updating the Application Insights component's tags was successful. Component tags are updated and returned with the rest of the Component's object properties.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponent" + } + }, + "201": { + "description": "Updating the Application Insights component's tags was successful. Component tags are updated and returned with the rest of the Component's object properties.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponent" + } + } + }, + "x-ms-examples": { + "ComponentUpdateTagsOnly": { + "$ref": "./examples/ComponentsUpdateTagsOnly.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/purge": { + "post": { + "description": "Purges data in an Application Insights component by a set of user-defined filters.\n\nIn order to manage system resources, purge requests are throttled at 50 requests per hour. You should batch the execution of purge requests by sending a single command whose predicate includes all user identities that require purging. Use the in operator to specify multiple identities. You should run the query prior to using for a purge request to verify that the results are expected.", + "operationId": "Components_Purge", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "$ref": "#/parameters/ComponentPurgeParameter" + } + ], + "responses": { + "202": { + "description": "Accepted request for purging an Application Insights component.", + "schema": { + "$ref": "#/definitions/ComponentPurgeResponse" + } + } + }, + "x-ms-examples": { + "ComponentPurge": { + "$ref": "./examples/ComponentsPurge.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/operations/{purgeId}": { + "get": { + "description": "Get status for an ongoing purge operation.", + "operationId": "Components_GetPurgeStatus", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "$ref": "#/parameters/ComponentPurgeIdParameter" + } + ], + "responses": { + "200": { + "description": "Returns status of purge operation in body of response. e.g.: running, completed.", + "schema": { + "$ref": "#/definitions/ComponentPurgeStatusResponse" + } + } + }, + "x-ms-examples": { + "ComponentPurge": { + "$ref": "./examples/ComponentsPurgeStatus.json" + } + } + } + } + }, + "definitions": { + "ComponentsResource": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Azure resource Id" + }, + "name": { + "type": "string", + "description": "Azure resource name", + "readOnly": true + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Azure resource type" + }, + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "required": [ + "location" + ], + "x-ms-azure-resource": true, + "description": "An azure resource object" + }, + "TagsResource": { + "properties": { + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "description": "A container holding only the Tags for a resource, allowing the user to update the tags on a WebTest instance." + }, + "ApplicationInsightsComponent": { + "properties": { + "kind": { + "type": "string", + "description": "The kind of application that this component refers to, used to customize UI. This value is a freeform string, values should typically be one of the following: web, ios, other, store, java, phone." + }, + "properties": { + "x-ms-client-flatten": true, + "description": "Properties that define an Application Insights component resource.", + "$ref": "#/definitions/ApplicationInsightsComponentProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ComponentsResource" + } + ], + "required": [ + "kind" + ], + "description": "An Application Insights component definition." + }, + "ApplicationInsightsComponentProperties": { + "description": "Properties that define an Application Insights component resource.", + "properties": { + "ApplicationId": { + "type": "string", + "description": "The unique ID of your application. This field mirrors the 'Name' field and cannot be changed.", + "readOnly": true + }, + "AppId": { + "type": "string", + "readOnly": true, + "description": "Application Insights Unique ID for your Application." + }, + "Application_Type": { + "type": "string", + "description": "Type of application being monitored.", + "default": "web", + "enum": [ + "web", + "other" + ], + "x-ms-enum": { + "name": "ApplicationType", + "modelAsString": true + }, + "x-ms-mutability": [ + "create", + "read" + ] + }, + "Flow_Type": { + "type": "string", + "description": "Used by the Application Insights system to determine what kind of flow this component was created by. This is to be set to 'Bluefield' when creating/updating a component via the REST API.", + "default": "Bluefield", + "enum": [ + "Bluefield" + ], + "x-ms-enum": { + "name": "FlowType", + "modelAsString": true + } + }, + "Request_Source": { + "type": "string", + "description": "Describes what tool created this Application Insights component. Customers using this API should set this to the default 'rest'.", + "default": "rest", + "enum": [ + "rest" + ], + "x-ms-enum": { + "name": "RequestSource", + "modelAsString": true + } + }, + "InstrumentationKey": { + "type": "string", + "readOnly": true, + "description": "Application Insights Instrumentation key. A read-only value that applications can use to identify the destination for all telemetry sent to Azure Application Insights. This value will be supplied upon construction of each new Application Insights component." + }, + "CreationDate": { + "type": "string", + "readOnly": true, + "description": "Creation Date for the Application Insights component, in ISO 8601 format.", + "format": "date-time" + }, + "TenantId": { + "type": "string", + "readOnly": true, + "description": "Azure Tenant Id." + }, + "HockeyAppId": { + "type": "string", + "description": "The unique application ID created when a new application is added to HockeyApp, used for communications with HockeyApp.", + "externalDocs": { + "url": "https://aka.ms/ewjuel" + } + }, + "HockeyAppToken": { + "type": "string", + "description": "Token used to authenticate communications with between Application Insights and HockeyApp.", + "readOnly": true, + "externalDocs": { + "url": "https://aka.ms/sls76s" + } + }, + "provisioningState": { + "type": "string", + "description": "Current state of this component: whether or not is has been provisioned within the resource group it is defined. Users cannot change this value but are able to read from it. Values will include Succeeded, Deploying, Canceled, and Failed.", + "readOnly": true + }, + "SamplingPercentage": { + "type": "number", + "format": "double", + "description": "Percentage of the data produced by the application being monitored that is being sampled for Application Insights telemetry.", + "externalDocs": { + "url": "https://aka.ms/sl0yqd" + } + }, + "ConnectionString": { + "type": "string", + "readOnly": true, + "description": "Application Insights component connection string." + }, + "RetentionInDays": { + "type": "integer", + "description": "Retention period in days.", + "default": 90 + }, + "DisableIpMasking": { + "type": "boolean", + "description": "Disable IP masking." + }, + "ImmediatePurgeDataOn30Days": { + "type": "boolean", + "description": "Purge data immediately after 30 days." + }, + "PrivateLinkScopedResources": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkScopedResource" + }, + "description": "List of linked private link scope resources." + }, + "publicNetworkAccessForIngestion": { + "description": "The network access type for accessing Application Insights ingestion.", + "$ref": "#/definitions/PublicNetworkAccessType" + }, + "publicNetworkAccessForQuery": { + "description": "The network access type for accessing Application Insights query.", + "$ref": "#/definitions/PublicNetworkAccessType" + } + }, + "required": [ + "Application_Type" + ] + }, + "PrivateLinkScopedResource": { + "properties": { + "ResourceId": { + "type": "string", + "description": "The full resource Id of the private link scope resource." + }, + "ScopeId": { + "type": "string", + "description": "The private link scope unique Identifier." + } + }, + "description": "The private link scope resource reference." + }, + "ApplicationInsightsComponentListResult": { + "description": "Describes the list of Application Insights Resources.", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "array", + "description": "List of Application Insights component definitions.", + "items": { + "$ref": "#/definitions/ApplicationInsightsComponent" + } + }, + "nextLink": { + "type": "string", + "description": "The URI to get the next set of Application Insights component definitions if too many components where returned in the result set." + } + } + }, + "ComponentPurgeBody": { + "description": "Describes the body of a purge request for an App Insights component", + "required": [ + "table", + "filters" + ], + "properties": { + "table": { + "type": "string", + "description": "Table from which to purge data." + }, + "filters": { + "type": "array", + "description": "The set of columns and filters (queries) to run over them to purge the resulting data.", + "items": { + "$ref": "#/definitions/ComponentPurgeBodyFilters" + } + } + } + }, + "ComponentPurgeBodyFilters": { + "description": "User-defined filters to return data which will be purged from the table.", + "properties": { + "column": { + "description": "The column of the table over which the given query should run", + "type": "string" + }, + "operator": { + "description": "A query operator to evaluate over the provided column and value(s). Supported operators are ==, =~, in, in~, >, >=, <, <=, between, and have the same behavior as they would in a KQL query.", + "type": "string" + }, + "value": { + "description": "the value for the operator to function over. This can be a number (e.g., > 100), a string (timestamp >= '2017-09-01') or array of values." + }, + "key": { + "description": "When filtering over custom dimensions, this key will be used as the name of the custom dimension.", + "type": "string" + } + } + }, + "ComponentPurgeResponse": { + "description": "Response containing operationId for a specific purge action.", + "properties": { + "operationId": { + "description": "Id to use when querying for status for a particular purge operation.", + "type": "string" + } + }, + "required": [ + "operationId" + ] + }, + "ComponentPurgeStatusResponse": { + "description": "Response containing status for a specific purge operation.", + "properties": { + "status": { + "description": "Status of the operation represented by the requested Id.", + "type": "string", + "enum": [ + "pending", + "completed" + ], + "x-ms-enum": { + "name": "PurgeState", + "modelAsString": true + } + } + }, + "required": [ + "status" + ] + }, + "PublicNetworkAccessType": { + "type": "string", + "description": "The network access type for operating on the Application Insights Component. By default it is Enabled", + "default": "Enabled", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccessType", + "modelAsString": true, + "values": [ + { + "value": "Enabled", + "description": "Enables connectivity to Application Insights through public DNS." + }, + { + "value": "Disabled", + "description": "Disables public connectivity to Application Insights through public DNS." + } + ] + } + } + }, + "parameters": { + "ResourceNameParameter": { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Application Insights component resource.", + "x-ms-parameter-location": "method" + }, + "ComponentPurgeParameter": { + "name": "body", + "in": "body", + "description": "Describes the body of a request to purge data in a single table of an Application Insights component", + "required": true, + "schema": { + "$ref": "#/definitions/ComponentPurgeBody" + }, + "x-ms-parameter-location": "method" + }, + "ComponentPurgeIdParameter": { + "name": "purgeId", + "in": "path", + "required": true, + "type": "string", + "description": "In a purge status request, this is the Id of the operation the status of which is returned.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ComponentsCreate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ComponentsCreate.json new file mode 100644 index 000000000000..17a28fdee20e --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ComponentsCreate.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "api-version": "2018-05-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-component", + "InsightProperties": { + "location": "South Central US", + "kind": "web", + "properties": { + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": "", + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 100.0, + "RetentionInDays": 90, + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "ImmediatePurgeDataOn30Days": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": "", + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 100.0, + "RetentionInDays": 90, + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "ImmediatePurgeDataOn30Days": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ComponentsDelete.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ComponentsDelete.json new file mode 100644 index 000000000000..523972ebd3d7 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ComponentsDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2018-05-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-component" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ComponentsGet.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ComponentsGet.json new file mode 100644 index 000000000000..3ace22b9672d --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ComponentsGet.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2018-05-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-component" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": "", + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 100.0, + "RetentionInDays": 90, + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "ImmediatePurgeDataOn30Days": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ComponentsList.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ComponentsList.json new file mode 100644 index 000000000000..281a057d8188 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ComponentsList.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2018-05-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": "", + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "16526d1a-dfba-4362-a9e9-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "dc5931c7-a7ad-4ad0-89d6-123456789abc", + "CreationDate": "2017-02-14T12:24:05.0041213+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 75.0, + "RetentionInDays": 90, + "ConnectionString": "InstrumentationKey=dc5931c7-a7ad-4ad0-89d6-123456789abc", + "DisableIpMasking": false, + "ImmediatePurgeDataOn30Days": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/my-other-resource-group/providers/Microsoft.Insights/components/my-other-component", + "name": "my-other-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": "", + "kind": "web", + "properties": { + "ApplicationId": "my-other-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 30.0, + "RetentionInDays": 90, + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "ImmediatePurgeDataOn30Days": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ComponentsListByResourceGroup.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ComponentsListByResourceGroup.json new file mode 100644 index 000000000000..cee24e3764c9 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ComponentsListByResourceGroup.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2018-05-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": "", + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "16526d1a-dfba-4362-a9e9-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "dc5931c7-a7ad-4ad0-89d6-123456789abc", + "CreationDate": "2017-02-14T12:24:05.0041213+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 100.0, + "RetentionInDays": 90, + "ConnectionString": "InstrumentationKey=dc5931c7-a7ad-4ad0-89d6-123456789abc", + "DisableIpMasking": false, + "ImmediatePurgeDataOn30Days": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/my-other-resource-group/providers/Microsoft.Insights/components/my-other-component", + "name": "my-other-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": "", + "kind": "web", + "properties": { + "ApplicationId": "my-other-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 50.0, + "RetentionInDays": 90, + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "ImmediatePurgeDataOn30Days": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ComponentsPurge.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ComponentsPurge.json new file mode 100644 index 000000000000..181a3fffda45 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ComponentsPurge.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "resourceGroupName": "OIAutoRest5123", + "resourceName": "aztest5048", + "api-version": "2015-03-20", + "subscriptionId": "00000000-0000-0000-0000-00000000000", + "body": { + "table": "Heartbeat", + "filters": [ + { + "column": "TimeGenerated", + "operator": ">", + "value": "2017-09-01T00:00:00" + } + ] + } + }, + "responses": { + "202": { + "headers": { + "x-ms-status-location": "https://management.azure.com/subscriptions/b96161de-b34a-480f-7343-59b099299283/resourceGroups/example/providers/microsoft.insights/components/test/operations/purge-970318e7-b859-4edb-8903-83b1b54d0b74?api-version=2018-05-01-preview" + }, + "body": { + "operationId": "7d7cf277-9113-4ab3-8359-d0364b74d01d" + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ComponentsPurgeStatus.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ComponentsPurgeStatus.json new file mode 100644 index 000000000000..43af39e5e253 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ComponentsPurgeStatus.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "resourceGroupName": "OIAutoRest5123", + "resourceName": "aztest5048", + "api-version": "2018-05-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000", + "purgeId": "purge-970318e7-b859-4edb-8903-83b1b54d0b74" + }, + "responses": { + "200": { + "body": { + "status": "completed" + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ComponentsUpdate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ComponentsUpdate.json new file mode 100644 index 000000000000..b9df659a3d3f --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ComponentsUpdate.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "api-version": "2018-05-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-component", + "InsightProperties": { + "location": "South Central US", + "kind": "web", + "tags": { + "ApplicationGatewayType": "Internal-Only", + "BillingEntity": "Self" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": { + "ApplicationGatewayType": "Internal-Only", + "BillingEntity": "Self" + }, + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 100.0, + "RetentionInDays": 90, + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "ImmediatePurgeDataOn30Days": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": { + "ApplicationGatewayType": "Internal-Only", + "BillingEntity": "Self" + }, + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 100.0, + "RetentionInDays": 90, + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "ImmediatePurgeDataOn30Days": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ComponentsUpdateTagsOnly.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ComponentsUpdateTagsOnly.json new file mode 100644 index 000000000000..9d8d07877055 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ComponentsUpdateTagsOnly.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "api-version": "2018-05-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-component", + "ComponentTags": { + "tags": { + "ApplicationGatewayType": "Internal-Only", + "BillingEntity": "Self", + "Color": "AzureBlue", + "CustomField_01": "Custom text in some random field named randomly", + "NodeType": "Edge" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": { + "ApplicationGatewayType": "Internal-Only", + "BillingEntity": "Self", + "Color": "AzureBlue", + "CustomField_01": "Custom text in some random field named randomly", + "NodeType": "Edge" + }, + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 100.0, + "RetentionInDays": 90, + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "ImmediatePurgeDataOn30Days": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": { + "ApplicationGatewayType": "Internal-Only", + "BillingEntity": "Self", + "Color": "AzureBlue", + "CustomField_01": "Custom text in some random field named randomly", + "NodeType": "Edge" + }, + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 100.0, + "RetentionInDays": 90, + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "ImmediatePurgeDataOn30Days": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ProactiveDetectionConfigurationUpdate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ProactiveDetectionConfigurationUpdate.json index fe45f18b7301..67b1b1f8ba85 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ProactiveDetectionConfigurationUpdate.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2018-05-01/examples/ProactiveDetectionConfigurationUpdate.json @@ -9,7 +9,6 @@ "name": "slowpageloadtime", "location": "South Central US", "properties": { - "Name": "slowpageloadtime", "Enabled": true, "SendEmailsToSubscriptionOwners": true, "CustomEmails": [ diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/components_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/components_API.json new file mode 100644 index 000000000000..71cb6350a36c --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/components_API.json @@ -0,0 +1,690 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApplicationInsightsManagementClient", + "description": "Azure Application Insights client for Components", + "version": "2020-02-02-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.Insights/components": { + "get": { + "description": "Gets a list of all Application Insights components within a subscription.", + "operationId": "Components_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A list containing 0 or more Application Insights component definitions.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponentListResult" + } + } + }, + "x-ms-examples": { + "ComponentsList.json": { + "$ref": "./examples/ComponentsList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components": { + "get": { + "description": "Gets a list of Application Insights components within a resource group.", + "operationId": "Components_ListByResourceGroup", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A list containing 0 or more Application Insights component definitions.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponentListResult" + } + } + }, + "x-ms-examples": { + "ComponentListByResourceGroup": { + "$ref": "./examples/ComponentsListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}": { + "delete": { + "description": "Deletes an Application Insights component.", + "operationId": "Components_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "Successful request when deleting an Application Insights component." + }, + "204": { + "description": "The specified component does not exist." + } + }, + "x-ms-examples": { + "ComponentsDelete": { + "$ref": "./examples/ComponentsDelete.json" + } + } + }, + "get": { + "description": "Returns an Application Insights component.", + "operationId": "Components_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + } + ], + "responses": { + "200": { + "description": "An Application Insights Component definition.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponent" + } + } + }, + "x-ms-examples": { + "ComponentGet": { + "$ref": "./examples/ComponentsGet.json" + } + } + }, + "put": { + "description": "Creates (or updates) an Application Insights component. Note: You cannot specify a different value for InstrumentationKey nor AppId in the Put operation.", + "operationId": "Components_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "InsightProperties", + "description": "Properties that need to be specified to create an Application Insights component.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponent" + } + } + ], + "responses": { + "200": { + "description": "Successful request when creating or updating an Application Insights component. The updated component is returned.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponent" + } + } + }, + "x-ms-examples": { + "ComponentCreate": { + "$ref": "./examples/ComponentsCreate.json" + }, + "ComponentUpdate": { + "$ref": "./examples/ComponentsUpdate.json" + } + } + }, + "patch": { + "description": "Updates an existing component's tags. To update other fields use the CreateOrUpdate method.", + "operationId": "Components_UpdateTags", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "name": "ComponentTags", + "description": "Updated tag information to set into the component instance.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TagsResource" + } + } + ], + "responses": { + "200": { + "description": "Updating the Application Insights component's tags was successful. Component tags are updated and returned with the rest of the Component's object properties.", + "schema": { + "$ref": "#/definitions/ApplicationInsightsComponent" + } + } + }, + "x-ms-examples": { + "ComponentUpdateTagsOnly": { + "$ref": "./examples/ComponentsUpdateTagsOnly.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/purge": { + "post": { + "description": "Purges data in an Application Insights component by a set of user-defined filters.\n\nIn order to manage system resources, purge requests are throttled at 50 requests per hour. You should batch the execution of purge requests by sending a single command whose predicate includes all user identities that require purging. Use the in operator to specify multiple identities. You should run the query prior to using for a purge request to verify that the results are expected.", + "operationId": "Components_Purge", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "$ref": "#/parameters/ComponentPurgeParameter" + } + ], + "responses": { + "202": { + "description": "Accepted request for purging an Application Insights component.", + "schema": { + "$ref": "#/definitions/ComponentPurgeResponse" + } + } + }, + "x-ms-examples": { + "ComponentPurge": { + "$ref": "./examples/ComponentsPurge.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/operations/{purgeId}": { + "get": { + "description": "Get status for an ongoing purge operation.", + "operationId": "Components_GetPurgeStatus", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "$ref": "#/parameters/ComponentPurgeIdParameter" + } + ], + "responses": { + "200": { + "description": "Returns status of purge operation in body of response. e.g.: running, completed.", + "schema": { + "$ref": "#/definitions/ComponentPurgeStatusResponse" + } + } + }, + "x-ms-examples": { + "ComponentPurge": { + "$ref": "./examples/ComponentsPurgeStatus.json" + } + } + } + } + }, + "definitions": { + "ComponentsResource": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Azure resource Id" + }, + "name": { + "type": "string", + "description": "Azure resource name", + "readOnly": true + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Azure resource type" + }, + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "required": [ + "location" + ], + "x-ms-azure-resource": true, + "description": "An azure resource object" + }, + "TagsResource": { + "properties": { + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "description": "A container holding only the Tags for a resource, allowing the user to update the tags on a WebTest instance." + }, + "ApplicationInsightsComponent": { + "properties": { + "kind": { + "type": "string", + "description": "The kind of application that this component refers to, used to customize UI. This value is a freeform string, values should typically be one of the following: web, ios, other, store, java, phone." + }, + "properties": { + "x-ms-client-flatten": true, + "description": "Properties that define an Application Insights component resource.", + "$ref": "#/definitions/ApplicationInsightsComponentProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ComponentsResource" + } + ], + "required": [ + "kind" + ], + "description": "An Application Insights component definition." + }, + "ApplicationInsightsComponentProperties": { + "description": "Properties that define an Application Insights component resource.", + "properties": { + "ApplicationId": { + "type": "string", + "description": "The unique ID of your application. This field mirrors the 'Name' field and cannot be changed.", + "readOnly": true + }, + "AppId": { + "type": "string", + "readOnly": true, + "description": "Application Insights Unique ID for your Application." + }, + "Application_Type": { + "type": "string", + "description": "Type of application being monitored.", + "default": "web", + "enum": [ + "web", + "other" + ], + "x-ms-enum": { + "name": "ApplicationType", + "modelAsString": true + }, + "x-ms-mutability": [ + "create", + "read" + ] + }, + "Flow_Type": { + "type": "string", + "description": "Used by the Application Insights system to determine what kind of flow this component was created by. This is to be set to 'Bluefield' when creating/updating a component via the REST API.", + "default": "Bluefield", + "enum": [ + "Bluefield" + ], + "x-ms-enum": { + "name": "FlowType", + "modelAsString": true + } + }, + "Request_Source": { + "type": "string", + "description": "Describes what tool created this Application Insights component. Customers using this API should set this to the default 'rest'.", + "default": "rest", + "enum": [ + "rest" + ], + "x-ms-enum": { + "name": "RequestSource", + "modelAsString": true + } + }, + "InstrumentationKey": { + "type": "string", + "readOnly": true, + "description": "Application Insights Instrumentation key. A read-only value that applications can use to identify the destination for all telemetry sent to Azure Application Insights. This value will be supplied upon construction of each new Application Insights component." + }, + "CreationDate": { + "type": "string", + "readOnly": true, + "description": "Creation Date for the Application Insights component, in ISO 8601 format.", + "format": "date-time" + }, + "TenantId": { + "type": "string", + "readOnly": true, + "description": "Azure Tenant Id." + }, + "HockeyAppId": { + "type": "string", + "description": "The unique application ID created when a new application is added to HockeyApp, used for communications with HockeyApp.", + "externalDocs": { + "url": "https://aka.ms/ewjuel" + } + }, + "HockeyAppToken": { + "type": "string", + "description": "Token used to authenticate communications with between Application Insights and HockeyApp.", + "readOnly": true, + "externalDocs": { + "url": "https://aka.ms/sls76s" + } + }, + "provisioningState": { + "type": "string", + "description": "Current state of this component: whether or not is has been provisioned within the resource group it is defined. Users cannot change this value but are able to read from it. Values will include Succeeded, Deploying, Canceled, and Failed.", + "readOnly": true + }, + "SamplingPercentage": { + "type": "number", + "format": "double", + "description": "Percentage of the data produced by the application being monitored that is being sampled for Application Insights telemetry.", + "externalDocs": { + "url": "https://aka.ms/sl0yqd" + } + }, + "ConnectionString": { + "type": "string", + "readOnly": true, + "description": "Application Insights component connection string." + }, + "RetentionInDays": { + "type": "integer", + "description": "Retention period in days.", + "readOnly": true + }, + "DisableIpMasking": { + "type": "boolean", + "description": "Disable IP masking." + }, + "ImmediatePurgeDataOn30Days": { + "type": "boolean", + "description": "Purge data immediately after 30 days." + }, + "WorkspaceResourceId": { + "type": "string", + "description": "ResourceId of the log analytics workspace which the data will be ingested to." + }, + "PrivateLinkScopedResources": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkScopedResource" + }, + "description": "List of linked private link scope resources." + }, + "publicNetworkAccessForIngestion": { + "description": "The network access type for accessing Application Insights ingestion.", + "$ref": "#/definitions/PublicNetworkAccessType" + }, + "publicNetworkAccessForQuery": { + "description": "The network access type for accessing Application Insights query.", + "$ref": "#/definitions/PublicNetworkAccessType" + } + }, + "required": [ + "Application_Type", + "WorkspaceResourceId" + ] + }, + "PrivateLinkScopedResource": { + "properties": { + "ResourceId": { + "type": "string", + "description": "The full resource Id of the private link scope resource." + }, + "ScopeId": { + "type": "string", + "description": "The private link scope unique Identifier." + } + }, + "description": "The private link scope resource reference." + }, + "ApplicationInsightsComponentListResult": { + "description": "Describes the list of Application Insights Resources.", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "array", + "description": "List of Application Insights component definitions.", + "items": { + "$ref": "#/definitions/ApplicationInsightsComponent" + } + }, + "nextLink": { + "type": "string", + "description": "The URI to get the next set of Application Insights component definitions if too many components where returned in the result set." + } + } + }, + "ComponentPurgeBody": { + "description": "Describes the body of a purge request for an App Insights component", + "required": [ + "table", + "filters" + ], + "properties": { + "table": { + "type": "string", + "description": "Table from which to purge data." + }, + "filters": { + "type": "array", + "description": "The set of columns and filters (queries) to run over them to purge the resulting data.", + "items": { + "$ref": "#/definitions/ComponentPurgeBodyFilters" + } + } + } + }, + "ComponentPurgeBodyFilters": { + "description": "User-defined filters to return data which will be purged from the table.", + "properties": { + "column": { + "description": "The column of the table over which the given query should run", + "type": "string" + }, + "operator": { + "description": "A query operator to evaluate over the provided column and value(s). Supported operators are ==, =~, in, in~, >, >=, <, <=, between, and have the same behavior as they would in a KQL query.", + "type": "string" + }, + "value": { + "description": "the value for the operator to function over. This can be a number (e.g., > 100), a string (timestamp >= '2017-09-01') or array of values." + }, + "key": { + "description": "When filtering over custom dimensions, this key will be used as the name of the custom dimension.", + "type": "string" + } + } + }, + "ComponentPurgeResponse": { + "description": "Response containing operationId for a specific purge action.", + "properties": { + "operationId": { + "description": "Id to use when querying for status for a particular purge operation.", + "type": "string" + } + }, + "required": [ + "operationId" + ] + }, + "ComponentPurgeStatusResponse": { + "description": "Response containing status for a specific purge operation.", + "properties": { + "status": { + "description": "Status of the operation represented by the requested Id.", + "type": "string", + "enum": [ + "pending", + "completed" + ], + "x-ms-enum": { + "name": "PurgeState", + "modelAsString": true + } + } + }, + "required": [ + "status" + ] + }, + "PublicNetworkAccessType": { + "type": "string", + "description": "The network access type for operating on the Application Insights Component. By default it is Enabled", + "default": "Enabled", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccessType", + "modelAsString": true, + "values": [ + { + "value": "Enabled", + "description": "Enables connectivity to Application Insights through public DNS." + }, + { + "value": "Disabled", + "description": "Disables public connectivity to Application Insights through public DNS." + } + ] + } + } + }, + "parameters": { + "ResourceNameParameter": { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Application Insights component resource.", + "x-ms-parameter-location": "method" + }, + "ComponentPurgeParameter": { + "name": "body", + "in": "body", + "description": "Describes the body of a request to purge data in a single table of an Application Insights component", + "required": true, + "schema": { + "$ref": "#/definitions/ComponentPurgeBody" + }, + "x-ms-parameter-location": "method" + }, + "ComponentPurgeIdParameter": { + "name": "purgeId", + "in": "path", + "required": true, + "type": "string", + "description": "In a purge status request, this is the Id of the operation the status of which is returned.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsCreate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsCreate.json new file mode 100644 index 000000000000..b60e0da5861a --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsCreate.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2020-02-02-preview", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-component", + "InsightProperties": { + "location": "South Central US", + "kind": "web", + "properties": { + "Application_Type": "web", + "Flow_Type": "Bluefield", + "WorkspaceResourceId": "/subscriptions/subid/resourcegroups/my-resource-group/providers/microsoft.operationalinsights/workspaces/my-workspace", + "Request_Source": "rest" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": "", + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 100.0, + "WorkspaceResourceId": "/subscriptions/subid/resourcegroups/my-resource-group/providers/microsoft.operationalinsights/workspaces/my-workspace", + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsDelete.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsDelete.json new file mode 100644 index 000000000000..ad8c111fcdba --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-02-02-preview", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-component" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsGet.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsGet.json new file mode 100644 index 000000000000..8dc5e137725f --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsGet.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2020-02-02-preview", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-component" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": "", + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 100.0, + "WorkspaceResourceId": "/subscriptions/subid/resourcegroups/my-resource-group/providers/microsoft.operationalinsights/workspaces/my-workspace", + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsList.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsList.json new file mode 100644 index 000000000000..1a0e3d80e2eb --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsList.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2020-02-02-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": "", + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "16526d1a-dfba-4362-a9e9-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "dc5931c7-a7ad-4ad0-89d6-123456789abc", + "CreationDate": "2017-02-14T12:24:05.0041213+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 75.0, + "WorkspaceResourceId": "/subscriptions/subid/resourcegroups/my-resource-group/providers/microsoft.operationalinsights/workspaces/my-workspace", + "ConnectionString": "InstrumentationKey=dc5931c7-a7ad-4ad0-89d6-123456789abc", + "DisableIpMasking": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/my-other-resource-group/providers/Microsoft.Insights/components/my-other-component", + "name": "my-other-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": "", + "kind": "web", + "properties": { + "ApplicationId": "my-other-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 30.0, + "WorkspaceResourceId": "/subscriptions/subid/resourcegroups/my-resource-group/providers/microsoft.operationalinsights/workspaces/my-workspace", + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsListByResourceGroup.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsListByResourceGroup.json new file mode 100644 index 000000000000..93423a2b9955 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsListByResourceGroup.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2020-02-02-preview", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": "", + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "16526d1a-dfba-4362-a9e9-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "dc5931c7-a7ad-4ad0-89d6-123456789abc", + "CreationDate": "2017-02-14T12:24:05.0041213+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 100.0, + "WorkspaceResourceId": "/subscriptions/subid/resourcegroups/my-resource-group/providers/microsoft.operationalinsights/workspaces/my-workspace", + "ConnectionString": "InstrumentationKey=dc5931c7-a7ad-4ad0-89d6-123456789abc", + "DisableIpMasking": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/my-other-resource-group/providers/Microsoft.Insights/components/my-other-component", + "name": "my-other-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": "", + "kind": "web", + "properties": { + "ApplicationId": "my-other-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 50.0, + "WorkspaceResourceId": "/subscriptions/subid/resourcegroups/my-resource-group/providers/microsoft.operationalinsights/workspaces/my-workspace", + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsPurge.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsPurge.json new file mode 100644 index 000000000000..7d4def360af2 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsPurge.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "resourceGroupName": "OIAutoRest5123", + "resourceName": "aztest5048", + "api-version": "2020-02-02-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000", + "body": { + "table": "Heartbeat", + "filters": [ + { + "column": "TimeGenerated", + "operator": ">", + "value": "2017-09-01T00:00:00" + } + ] + } + }, + "responses": { + "202": { + "headers": { + "x-ms-status-location": "https://management.azure.com/subscriptions/b96161de-b34a-480f-7343-59b099299283/resourceGroups/example/providers/microsoft.insights/components/test/operations/purge-970318e7-b859-4edb-8903-83b1b54d0b74?api-version=2015-05-01" + }, + "body": { + "operationId": "7d7cf277-9113-4ab3-8359-d0364b74d01d" + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsPurgeStatus.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsPurgeStatus.json new file mode 100644 index 000000000000..c288ee449b8e --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsPurgeStatus.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "resourceGroupName": "OIAutoRest5123", + "resourceName": "aztest5048", + "api-version": "2020-02-02-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000", + "purgeId": "purge-970318e7-b859-4edb-8903-83b1b54d0b74" + }, + "responses": { + "200": { + "body": { + "status": "completed" + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsUpdate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsUpdate.json new file mode 100644 index 000000000000..e02186407ca7 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsUpdate.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2020-02-02-preview", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-component", + "InsightProperties": { + "location": "South Central US", + "kind": "web", + "tags": { + "ApplicationGatewayType": "Internal-Only", + "BillingEntity": "Self" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": { + "ApplicationGatewayType": "Internal-Only", + "BillingEntity": "Self" + }, + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 100.0, + "WorkspaceResourceId": "/subscriptions/subid/resourcegroups/my-resource-group/providers/microsoft.operationalinsights/workspaces/my-workspace", + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsUpdateTagsOnly.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsUpdateTagsOnly.json new file mode 100644 index 000000000000..806476c3cf96 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-02-02-preview/examples/ComponentsUpdateTagsOnly.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2020-02-02-preview", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "resourceName": "my-component", + "ComponentTags": { + "tags": { + "ApplicationGatewayType": "Internal-Only", + "BillingEntity": "Self", + "Color": "AzureBlue", + "CustomField_01": "Custom text in some random field named randomly", + "NodeType": "Edge" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/Microsoft.Insights/components/my-component", + "name": "my-component", + "type": "Microsoft.Insights/components", + "location": "South Central US", + "tags": { + "ApplicationGatewayType": "Internal-Only", + "BillingEntity": "Self", + "Color": "AzureBlue", + "CustomField_01": "Custom text in some random field named randomly", + "NodeType": "Edge" + }, + "kind": "web", + "properties": { + "ApplicationId": "my-component", + "AppId": "887f4bfd-b5fd-40d7-9fc3-123456789abc", + "Application_Type": "web", + "Flow_Type": "Bluefield", + "Request_Source": "rest", + "InstrumentationKey": "bc095013-3cf2-45ac-ab47-123456789abc", + "CreationDate": "2017-01-24T01:05:38.5934061+00:00", + "TenantId": "f438d567-7177-4fe1-a5e3-123456789abc", + "HockeyAppId": "", + "HockeyAppToken": "", + "provisioningState": "Succeeded", + "SamplingPercentage": 100.0, + "WorkspaceResourceId": "/subscriptions/subid/resourcegroups/my-resource-group/providers/microsoft.operationalinsights/workspaces/my-workspace", + "ConnectionString": "InstrumentationKey=bc095013-3cf2-45ac-ab47-123456789abc", + "DisableIpMasking": false, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/componentLinkedStorageAccounts_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/componentLinkedStorageAccounts_API.json new file mode 100644 index 000000000000..22fcf9bfa10f --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/componentLinkedStorageAccounts_API.json @@ -0,0 +1,296 @@ +{ + "swagger": "2.0", + "info": { + "title": "ApplicationInsightsComponentLinkedStorageAccountsClient", + "description": "Azure Application Insights client for setting linked storage account.", + "version": "2020-03-01-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}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/components/{resourceName}/linkedStorageAccounts/{storageType}": { + "get": { + "description": "Returns the current linked storage settings for an Application Insights component.", + "operationId": "ComponentLinkedStorageAccounts_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "$ref": "#/parameters/StorageTypeParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "An Application Insights component linked storage accounts.", + "schema": { + "$ref": "#/definitions/ComponentLinkedStorageAccounts" + } + } + }, + "x-ms-examples": { + "ComponentLinkedStorageAccountsGet": { + "$ref": "./examples/ComponentLinkedStorageAccountsGet.json" + } + } + }, + "put": { + "description": "Replace current linked storage account for an Application Insights component.", + "operationId": "ComponentLinkedStorageAccounts_CreateAndUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "$ref": "#/parameters/StorageTypeParameter" + }, + { + "name": "LinkedStorageAccountsProperties", + "description": "Properties that need to be specified to update linked storage accounts for an Application Insights component.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ComponentLinkedStorageAccounts" + } + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Successful request when updating linked storage accounts for an Application Insights component. The updated linked storage account is returned.", + "schema": { + "$ref": "#/definitions/ComponentLinkedStorageAccounts" + } + } + }, + "x-ms-examples": { + "ComponentLinkedStorageAccountsCreateAndUpdate": { + "$ref": "./examples/ComponentLinkedStorageAccountsCreateAndUpdate.json" + } + } + }, + "patch": { + "description": "Update linked storage accounts for an Application Insights component.", + "operationId": "ComponentLinkedStorageAccounts_Update", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "$ref": "#/parameters/StorageTypeParameter" + }, + { + "name": "LinkedStorageAccountsProperties", + "description": "Properties that need to be specified to update a linked storage accounts for an Application Insights component.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ComponentLinkedStorageAccountsPatch" + } + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Successful request when updating linked storage accounts for an Application Insights component. The updated linked storage account is returned.", + "schema": { + "$ref": "#/definitions/ComponentLinkedStorageAccounts" + } + } + }, + "x-ms-examples": { + "ComponentLinkedStorageAccountsUpdate": { + "$ref": "./examples/ComponentLinkedStorageAccountsUpdate.json" + } + } + }, + "delete": { + "description": "Delete linked storage accounts for an Application Insights component.", + "operationId": "ComponentLinkedStorageAccounts_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceNameParameter" + }, + { + "$ref": "#/parameters/StorageTypeParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Successful request when deleting linked storage accounts for an Application Insights component." + }, + "204": { + "description": "Successful request when deleting linked storage accounts for an Application Insights component." + } + }, + "x-ms-examples": { + "ComponentLinkedStorageAccountsDelete": { + "$ref": "./examples/ComponentLinkedStorageAccountsDelete.json" + } + } + } + } + }, + "definitions": { + "ErrorResponse": { + "description": "Error response indicates Insights service is not able to process the incoming request. The reason is provided in the error message.", + "type": "object", + "properties": { + "code": { + "description": "Error code.", + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + } + }, + "ComponentLinkedStorageAccounts": { + "description": "An Application Insights component linked storage accounts", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/LinkedStorageAccountsProperties", + "description": "The properties of the linked storage accounts.", + "x-ms-client-flatten": true + } + } + }, + "ComponentLinkedStorageAccountsPatch": { + "description": "An Application Insights component linked storage accounts patch", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/LinkedStorageAccountsProperties", + "description": "The properties of the linked storage accounts.", + "x-ms-client-flatten": true + } + } + }, + "LinkedStorageAccountsProperties": { + "type": "object", + "description": "An Application Insights component linked storage account", + "properties": { + "linkedStorageAccount": { + "type": "string", + "description": "Linked storage account resource ID" + } + } + } + }, + "parameters": { + "ResourceNameParameter": { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Application Insights component resource.", + "x-ms-parameter-location": "method" + }, + "StorageTypeParameter": { + "name": "storageType", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "ServiceProfiler" + ], + "x-ms-enum": { + "name": "StorageType", + "modelAsString": true + }, + "description": "The type of the Application Insights component data source for the linked storage account.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/examples/ComponentLinkedStorageAccountsCreateAndUpdate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/examples/ComponentLinkedStorageAccountsCreateAndUpdate.json new file mode 100644 index 000000000000..8283ea527f45 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/examples/ComponentLinkedStorageAccountsCreateAndUpdate.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-03-01-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4918", + "resourceGroupName": "someResourceGroupName", + "resourceName": "myComponent", + "storageType": "ServiceProfiler", + "LinkedStorageAccountsProperties": { + "properties": { + "linkedStorageAccount": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4918/resourceGroups/someResourceGroupName/providers/Microsoft.Storage/storageAccounts/storageaccountname" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4918/resourceGroups/someResourceGroupNameproviders/microsoft.insights/components/myComponent/linkedStorageAccounts/serviceprofiler", + "name": "serviceprofile", + "type": "microsoft.insights/components/linkedStorageAccounts", + "properties": { + "linkedStorageAccount": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4918/resourceGroups/someResourceGroupName/providers/Microsoft.Storage/storageAccounts/storageaccountname" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/examples/ComponentLinkedStorageAccountsDelete.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/examples/ComponentLinkedStorageAccountsDelete.json new file mode 100644 index 000000000000..1dfd3f4e1e99 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/examples/ComponentLinkedStorageAccountsDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4918", + "resourceGroupName": "someResourceGroupName", + "resourceName": "myComponent", + "storageType": "ServiceProfiler" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/examples/ComponentLinkedStorageAccountsGet.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/examples/ComponentLinkedStorageAccountsGet.json new file mode 100644 index 000000000000..dedc1b4aa6f0 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/examples/ComponentLinkedStorageAccountsGet.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2020-03-01-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4918", + "resourceGroupName": "someResourceGroupName", + "resourceName": "myComponent", + "storageType": "ServiceProfiler" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4918/resourceGroups/someResourceGroupName/providers/microsoft.insights/components/myComponent/linkedStorageAccounts/serviceprofiler", + "name": "serviceprofile", + "type": "microsoft.insights/components/linkedStorageAccounts", + "properties": { + "linkedStorageAccount": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4918/resourceGroups/someResourceGroupName/providers/Microsoft.Storage/storageAccounts/storageaccountname" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/examples/ComponentLinkedStorageAccountsUpdate.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/examples/ComponentLinkedStorageAccountsUpdate.json new file mode 100644 index 000000000000..e73f9d2db797 --- /dev/null +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/preview/2020-03-01-preview/examples/ComponentLinkedStorageAccountsUpdate.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-03-01-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4918", + "resourceGroupName": "someResourceGroupName", + "resourceName": "myComponent", + "storageType": "ServiceProfiler", + "LinkedStorageAccountsProperties": { + "properties": { + "linkedStorageAccount": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4918/resourceGroups/someResourceGroupName/providers/Microsoft.Storage/storageAccounts/storageaccountname" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4918/resourceGroups/someResourceGroupName/providers/microsoft.insights/components/myComponent/linkedStorageAccounts/serviceprofiler", + "name": "serviceprofile", + "type": "microsoft.insights/components/linkedStorageAccounts", + "properties": { + "linkedStorageAccount": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4918/resourceGroups/someResourceGroupName/providers/Microsoft.Storage/storageAccounts/storageaccountname" + } + } + } + } +} diff --git a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/components_API.json b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/components_API.json index 57efc81be161..507d3910d1b1 100644 --- a/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/components_API.json +++ b/specification/applicationinsights/resource-manager/Microsoft.Insights/stable/2015-05-01/components_API.json @@ -504,12 +504,33 @@ "ImmediatePurgeDataOn30Days": { "type": "boolean", "description": "Purge data immediately after 30 days." + }, + "PrivateLinkScopedResources": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkScopedResource" + }, + "description": "List of linked private link scope resources." } }, "required": [ "Application_Type" ] }, + "PrivateLinkScopedResource": { + "properties": { + "ResourceId": { + "type": "string", + "description": "The full resource Id of the private link scope resource." + }, + "ScopeId": { + "type": "string", + "description": "The private link scope unique Identifier." + } + }, + "description": "The private link scope resource reference." + }, "ApplicationInsightsComponentListResult": { "description": "Describes the list of Application Insights Resources.", "required": [ diff --git a/specification/applicationinsights/resource-manager/readme.cli.md b/specification/applicationinsights/resource-manager/readme.cli.md new file mode 100644 index 000000000000..83a1230535f3 --- /dev/null +++ b/specification/applicationinsights/resource-manager/readme.cli.md @@ -0,0 +1,44 @@ + +# Az.Aks +This directory contains the Cli common model for the Aks service. + +> Metadata + +``` yaml +# Migrated from Powershell's readme +cli: + naming: + cli: + glossary: + - 'insights' + cli-directive: + - select: 'operation' + where: + operationGroup: 'components' + operation: '^(delete|purge|getPurgeStatus)$' + removed: true + - select: 'operation' + where: + operationGroup: 'APIkeys' + operation: 'create|delete' + removed: true + - select: 'operation' + where: + operationGorup: 'components' + operation: 'updateTags' + removed: true + - select: 'operationGroup' + where: + operationGroup: 'components' + name: 'app_insights' + - select: 'operation' + where: + operationGroup: 'components' + operation: 'get|createOrUpdate' + hidden: true + - select: 'operation' + where: + operatoinGroup: 'APIKeys' + operation: 'get' + hidden: true +``` \ No newline at end of file diff --git a/specification/applicationinsights/resource-manager/readme.md b/specification/applicationinsights/resource-manager/readme.md index 491dab42f372..558182cc4ce0 100644 --- a/specification/applicationinsights/resource-manager/readme.md +++ b/specification/applicationinsights/resource-manager/readme.md @@ -293,6 +293,7 @@ These settings apply only when `--tag=package-2018-05-01-preview` is specified o ``` yaml $(tag) == 'package-2018-05-01-preview' input-file: - Microsoft.Insights/preview/2018-05-01/componentProactiveDetection_API.json +- Microsoft.Insights/preview/2018-05-01/components_API.json ``` ### Tag: package-2019-09-01-preview @@ -305,6 +306,46 @@ input-file: - Microsoft.Insights/preview/2019-09-01-preview/QueryPacks_API.json ``` +### Tag: package-2020-02-02-preview + +These settings apply only when `--tag=package-2020-02-02-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2020-02-02-preview' +input-file: +- Microsoft.Insights/preview/2020-02-02-preview/components_API.json +``` + +### Tag: package-2020-03-01-preview + +These settings apply only when `--tag=package-2020-03-01-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2020-03-01-preview' +input-file: +- Microsoft.Insights/preview/2020-03-01-preview/componentLinkedStorageAccounts_API.json +``` + +### Tag: package-2020-04 + +These settings apply only when `--tag=package-2020-04` is specified on the command line. For Dotnet SDK generation. + +``` yaml $(tag) == 'package-2020-04' +input-file: +- Microsoft.Insights/stable/2015-05-01/aiOperations_API.json +- Microsoft.Insights/stable/2015-05-01/componentAnnotations_API.json +- Microsoft.Insights/stable/2015-05-01/componentApiKeys_API.json +- Microsoft.Insights/stable/2015-05-01/componentContinuousExport_API.json +- Microsoft.Insights/stable/2015-05-01/componentFeaturesAndPricing_API.json +- Microsoft.Insights/stable/2015-05-01/componentProactiveDetection_API.json +- Microsoft.Insights/stable/2015-05-01/componentWorkItemConfigs_API.json +- Microsoft.Insights/stable/2015-05-01/favorites_API.json +- Microsoft.Insights/stable/2015-05-01/webTestLocations_API.json +- Microsoft.Insights/stable/2015-05-01/webTests_API.json +- Microsoft.Insights/stable/2015-05-01/analyticsItems_API.json +- Microsoft.Insights/stable/2015-05-01/workbooks_API.json +- Microsoft.Insights/preview/2020-02-02-preview/components_API.json +- Microsoft.Insights/preview/2020-03-01-preview/componentLinkedStorageAccounts_API.json +``` + --- # Code Generation @@ -318,6 +359,8 @@ This is not used by Autorest itself. swagger-to-sdk: - repo: azure-sdk-for-net - repo: azure-sdk-for-python + after_scripts: + - python ./scripts/multiapi_init_gen.py --default-api-version=2020-03-01-preview azure-mgmt-applicationinsights - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-js @@ -328,6 +371,10 @@ swagger-to-sdk: See configuration in [readme.go.md](./readme.go.md) +## Python + +See configuration in [readme.python.md](./readme.python.md) + ## C# These settings apply only when `--csharp` is specified on the command line. @@ -416,8 +463,11 @@ input-file: - $(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/componentProactiveDetection_API.json + - $(this-folder)/Microsoft.Insights/preview/2018-05-01/components_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 + - $(this-folder)/Microsoft.Insights/preview/2020-03-01-preview/componentLinkedStorageAccounts_API.json ``` diff --git a/specification/applicationinsights/resource-manager/readme.python.md b/specification/applicationinsights/resource-manager/readme.python.md index 6fb710f291aa..97df9d6f8c3b 100644 --- a/specification/applicationinsights/resource-manager/readme.python.md +++ b/specification/applicationinsights/resource-manager/readme.python.md @@ -1,27 +1,111 @@ ## Python +## 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 $(python) +```yaml $(python) python-mode: create python: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION payload-flattening-threshold: 2 - namespace: azure.mgmt.applicationinsights package-name: azure-mgmt-applicationinsights - package-version: 0.2.0 clear-output-folder: true + no-namespace-folders: true +``` +### Python multi-api + +``` yaml $(python) && $(multiapi) +batch: + - tag: package-2015-05 + - tag: package-2017-10 + - tag: package-2018-05-01-preview + - tag: package-2018-06-17-preview + - tag: package-2019-09-01-preview + - tag: package-2019-10-17-preview + - tag: package-2020-02-02-preview + - tag: package-2020-03-01-preview ``` -``` yaml $(python) && $(python-mode) == 'update' + +### Tag: package-2015-05 and python + +These settings apply only when `--tag=package-2015-05 --python` is specified on the command line. + +``` yaml $(tag) == 'package-2015-05' && $(python) python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/applicationinsights/azure-mgmt-applicationinsights/azure/mgmt/applicationinsights + namespace: azure.mgmt.applicationinsights.v2015_05_01 + output-folder: $(python-sdks-folder)/applicationinsights/azure-mgmt-applicationinsights/azure/mgmt/applicationinsights/v2015_05_01 +``` + +### Tag: package-2017-10 and python + +These settings apply only when `--tag=package-2017-10 --python` is specified on the command line. + +``` yaml $(tag) == 'package-2017-10' && $(python) +python: + namespace: azure.mgmt.applicationinsights.v2017_10_01 + output-folder: $(python-sdks-folder)/applicationinsights/azure-mgmt-applicationinsights/azure/mgmt/applicationinsights/v2017_10_01 ``` -``` yaml $(python) && $(python-mode) == 'create' + +### Tag: package-2018-06-17-preview and python + +These settings apply only when `--tag=package-2018-06-17-preview --python` is specified on the command line. + +``` yaml $(tag) == 'package-2018-06-17-preview' && $(python) python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/applicationinsights/azure-mgmt-applicationinsights + namespace: azure.mgmt.applicationinsights.v2018_06_17_preview + output-folder: $(python-sdks-folder)/applicationinsights/azure-mgmt-applicationinsights/azure/mgmt/applicationinsights/v2018_06_17_preview ``` + +### Tag: package-2019-10-17-preview and python + +These settings apply only when `--tag=package-2019-10-17-preview --python` is specified on the command line. + +```yaml $(tag) == 'package-2019-10-17-preview' && $(python) +python: + namespace: azure.mgmt.applicationinsights.v2019_10_17_preview + output-folder: $(python-sdks-folder)/applicationinsights/azure-mgmt-applicationinsights/azure/mgmt/applicationinsights/v2019_10_17_preview +``` + +### Tag: package-2018-05-01-preview and python + +These settings apply only when `--tag=package-2018-05-01-preview --python` is specified on the command line. + +``` yaml $(tag) == 'package-2018-05-01-preview' && $(python) +python: + namespace: azure.mgmt.applicationinsights.v2018_05_01_preview + output-folder: $(python-sdks-folder)/applicationinsights/azure-mgmt-applicationinsights/azure/mgmt/applicationinsights/v2018_05_01_preview +``` + +### Tag: package-2019-09-01-preview and python + +These settings apply only when `--tag=package-2019-09-01-preview --python` is specified on the command line. + +``` yaml $(tag) == 'package-2019-09-01-preview' && $(python) +python: + namespace: azure.mgmt.applicationinsights.v2019_09_01_preview + output-folder: $(python-sdks-folder)/applicationinsights/azure-mgmt-applicationinsights/azure/mgmt/applicationinsights/v2019_09_01_preview +``` + +### Tag: package-2020-02-02-preview and python + +These settings apply only when `--tag=package-2020-02-02-preview --python` is specified on the command line. + +``` yaml $(tag) == 'package-2020-02-02-preview' && $(python) +python: + namespace: azure.mgmt.applicationinsights.v2020_02_02_preview + output-folder: $(python-sdks-folder)/applicationinsights/azure-mgmt-applicationinsights/azure/mgmt/applicationinsights/v2020_02_02_preview +``` + +### Tag: package-2020-03-01-preview and python + +These settings apply only when `--tag=package-2020-03-01-preview --python` is specified on the command line. + +``` yaml $(tag) == 'package-2020-03-01-preview' && $(python) +python: + namespace: azure.mgmt.applicationinsights.v2020_03_01_preview + output-folder: $(python-sdks-folder)/applicationinsights/azure-mgmt-applicationinsights/azure/mgmt/applicationinsights/v2020_03_01_preview +``` + + + diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/appplatform.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/appplatform.json index dd653a2a7d6f..ac38d29130d5 100644 --- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/appplatform.json +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/appplatform.json @@ -88,7 +88,7 @@ ], "responses": { "201": { - "description": "Created. The response describes the new Service and contains a Location header to query the operation result.", + "description": "Created. The response describes the new Service and contains a Location header to query the\r\noperation result.", "schema": { "$ref": "#/definitions/ServiceResource" } @@ -197,7 +197,7 @@ } }, "202": { - "description": "Accepted. The response indicates the exiting Service is now updating and contains a Location header to query the operation result.", + "description": "Accepted. The response indicates the exiting Service is now updating and contains a Location\r\nheader to query the operation result.", "schema": { "$ref": "#/definitions/ServiceResource" } @@ -400,13 +400,6 @@ "description": "Get an App and its properties.", "operationId": "Apps_Get", "parameters": [ - { - "name": "syncStatus", - "in": "query", - "description": "Indicates whether sync status", - "required": false, - "type": "string" - }, { "$ref": "#/parameters/ApiVersionParameter" }, @@ -421,6 +414,13 @@ }, { "$ref": "#/parameters/AppNameParameter" + }, + { + "name": "syncStatus", + "in": "query", + "description": "Indicates whether sync status", + "required": false, + "type": "string" } ], "responses": { @@ -743,8 +743,497 @@ } }, "x-ms-examples": { - "Bindings_Get": { - "$ref": "./examples/Bindings_Get.json" + "Bindings_Get": { + "$ref": "./examples/Bindings_Get.json" + } + } + }, + "put": { + "tags": [ + "AppPlatform" + ], + "description": "Create a new Binding or update an exiting Binding.", + "operationId": "Bindings_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + }, + { + "$ref": "#/parameters/BindingNameParameter" + }, + { + "name": "bindingResource", + "in": "body", + "description": "Parameters for the create or update operation", + "required": true, + "schema": { + "$ref": "#/definitions/BindingResource" + } + } + ], + "responses": { + "200": { + "description": "Success. The response describes the created or updated Binding.", + "schema": { + "$ref": "#/definitions/BindingResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Bindings_CreateOrUpdate": { + "$ref": "./examples/Bindings_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "AppPlatform" + ], + "description": "Operation to delete a Binding.", + "operationId": "Bindings_Delete", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + }, + { + "$ref": "#/parameters/BindingNameParameter" + } + ], + "responses": { + "204": { + "description": "Success. The response indicates the resource doesn't exist." + }, + "200": { + "description": "Success. The response indicates the resource is deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Bindings_Delete": { + "$ref": "./examples/Bindings_Delete.json" + } + } + }, + "patch": { + "tags": [ + "AppPlatform" + ], + "description": "Operation to update an exiting Binding.", + "operationId": "Bindings_Update", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + }, + { + "$ref": "#/parameters/BindingNameParameter" + }, + { + "name": "bindingResource", + "in": "body", + "description": "Parameters for the update operation", + "required": true, + "schema": { + "$ref": "#/definitions/BindingResource" + } + } + ], + "responses": { + "200": { + "description": "Success. The response describes the updated Binding.", + "schema": { + "$ref": "#/definitions/BindingResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Bindings_Update": { + "$ref": "./examples/Bindings_Update.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/apps/{appName}/bindings": { + "get": { + "tags": [ + "AppPlatform" + ], + "description": "Handles requests to list all resources in an App.", + "operationId": "Bindings_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of Bindings in the App.", + "schema": { + "$ref": "#/definitions/BindingResourceCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Bindings_List": { + "$ref": "./examples/Bindings_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/certificates/{certificateName}": { + "get": { + "tags": [ + "AppPlatform" + ], + "description": "Get the certificate resource.", + "operationId": "Certificates_Get", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/CertificateNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describe the certificate.", + "schema": { + "$ref": "#/definitions/CertificateResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Certificates_Get": { + "$ref": "./examples/Certificates_Get.json" + } + } + }, + "put": { + "tags": [ + "AppPlatform" + ], + "description": "Create or update certificate resource.", + "operationId": "Certificates_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/CertificateNameParameter" + }, + { + "name": "certificateResource", + "in": "body", + "description": "Parameters for the create or update operation", + "required": true, + "schema": { + "$ref": "#/definitions/CertificateResource" + } + } + ], + "responses": { + "200": { + "description": "Success. The response describe the existed certificate updated.", + "schema": { + "$ref": "#/definitions/CertificateResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Certificates_CreateOrUpdate": { + "$ref": "./examples/Certificates_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "AppPlatform" + ], + "description": "Delete the certificate resource.", + "operationId": "Certificates_Delete", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/CertificateNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response indicates the certificate deleted." + }, + "204": { + "description": "No content. The response indicates the certificate doesn't exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Certificates_Delete": { + "$ref": "./examples/Certificates_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/certificates": { + "get": { + "tags": [ + "AppPlatform" + ], + "description": "List all the certificates of one user.", + "operationId": "Certificates_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describe the custom domain resource list of one application.", + "schema": { + "$ref": "#/definitions/CertificateResourceCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Certificates_List": { + "$ref": "./examples/Certificates_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.AppPlatform/locations/{location}/checkNameAvailability": { + "post": { + "tags": [ + "AppPlatform" + ], + "description": "Checks that the resource name is valid and is not already in use.", + "operationId": "Services_CheckNameAvailability", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "location", + "in": "path", + "description": "the region", + "required": true, + "type": "string" + }, + { + "name": "availabilityParameters", + "in": "body", + "description": "Parameters supplied to the operation.", + "required": true, + "schema": { + "$ref": "#/definitions/NameAvailabilityParameters" + } + } + ], + "responses": { + "200": { + "description": "Success. The response describes the name availability.", + "schema": { + "$ref": "#/definitions/NameAvailability" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Services_CheckNameAvailability": { + "$ref": "./examples/Services_CheckNameAvailability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/apps/{appName}/domains/{domainName}": { + "get": { + "tags": [ + "AppPlatform" + ], + "description": "Get the custom domain of one lifecycle application.", + "operationId": "CustomDomains_Get", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + }, + { + "$ref": "#/parameters/CustomDomainNameParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describe the custom domain.", + "schema": { + "$ref": "#/definitions/CustomDomainResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "CustomDomains_Get": { + "$ref": "./examples/CustomDomains_Get.json" } } }, @@ -752,8 +1241,8 @@ "tags": [ "AppPlatform" ], - "description": "Create a new Binding or update an exiting Binding.", - "operationId": "Bindings_CreateOrUpdate", + "description": "Create or update custom domain of one lifecycle application.", + "operationId": "CustomDomains_CreateOrUpdate", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -771,23 +1260,23 @@ "$ref": "#/parameters/AppNameParameter" }, { - "$ref": "#/parameters/BindingNameParameter" + "$ref": "#/parameters/CustomDomainNameParameter" }, { - "name": "bindingResource", + "name": "domainResource", "in": "body", "description": "Parameters for the create or update operation", "required": true, "schema": { - "$ref": "#/definitions/BindingResource" + "$ref": "#/definitions/CustomDomainResource" } } ], "responses": { "200": { - "description": "Success. The response describes the created or updated Binding.", + "description": "Success. The response describe the existed custom domain updated.", "schema": { - "$ref": "#/definitions/BindingResource" + "$ref": "#/definitions/CustomDomainResource" } }, "default": { @@ -798,8 +1287,8 @@ } }, "x-ms-examples": { - "Bindings_CreateOrUpdate": { - "$ref": "./examples/Bindings_CreateOrUpdate.json" + "CustomDomains_CreateOrUpdate": { + "$ref": "./examples/CustomDomains_CreateOrUpdate.json" } } }, @@ -807,8 +1296,8 @@ "tags": [ "AppPlatform" ], - "description": "Operation to delete a Binding.", - "operationId": "Bindings_Delete", + "description": "Delete the custom domain of one lifecycle application.", + "operationId": "CustomDomains_Delete", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -826,15 +1315,15 @@ "$ref": "#/parameters/AppNameParameter" }, { - "$ref": "#/parameters/BindingNameParameter" + "$ref": "#/parameters/CustomDomainNameParameter" } ], "responses": { - "204": { - "description": "Success. The response indicates the resource doesn't exist." - }, "200": { - "description": "Success. The response indicates the resource is deleted." + "description": "Success. The response indicates the custom domain deleted." + }, + "204": { + "description": "No content. The response indicates the custom domain doesn't exist." }, "default": { "description": "Error response describing why the operation failed.", @@ -844,8 +1333,8 @@ } }, "x-ms-examples": { - "Bindings_Delete": { - "$ref": "./examples/Bindings_Delete.json" + "CustomDomains_Delete": { + "$ref": "./examples/CustomDomains_Delete.json" } } }, @@ -853,8 +1342,8 @@ "tags": [ "AppPlatform" ], - "description": "Operation to update an exiting Binding.", - "operationId": "Bindings_Update", + "description": "Update custom domain of one lifecycle application.", + "operationId": "CustomDomains_Patch", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -872,23 +1361,23 @@ "$ref": "#/parameters/AppNameParameter" }, { - "$ref": "#/parameters/BindingNameParameter" + "$ref": "#/parameters/CustomDomainNameParameter" }, { - "name": "bindingResource", + "name": "domainResource", "in": "body", - "description": "Parameters for the update operation", + "description": "Parameters for the create or update operation", "required": true, "schema": { - "$ref": "#/definitions/BindingResource" + "$ref": "#/definitions/CustomDomainResource" } } ], "responses": { "200": { - "description": "Success. The response describes the updated Binding.", + "description": "Success. The response describe the existed custom domain updated.", "schema": { - "$ref": "#/definitions/BindingResource" + "$ref": "#/definitions/CustomDomainResource" } }, "default": { @@ -899,19 +1388,19 @@ } }, "x-ms-examples": { - "Bindings_Update": { - "$ref": "./examples/Bindings_Update.json" + "CustomDomains_Patch": { + "$ref": "./examples/CustomDomains_Patch.json" } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/apps/{appName}/bindings": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/apps/{appName}/domains": { "get": { "tags": [ "AppPlatform" ], - "description": "Handles requests to list all resources in an App.", - "operationId": "Bindings_List", + "description": "List the custom domains of one lifecycle application.", + "operationId": "CustomDomains_List", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -931,9 +1420,9 @@ ], "responses": { "200": { - "description": "Success. The response describes the list of Bindings in the App.", + "description": "Success. The response describe the custom domain resource list of one application.", "schema": { - "$ref": "#/definitions/BindingResourceCollection" + "$ref": "#/definitions/CustomDomainResourceCollection" } }, "default": { @@ -947,27 +1436,20 @@ "nextLinkName": "nextLink" }, "x-ms-examples": { - "Bindings_List": { - "$ref": "./examples/Bindings_List.json" + "CustomDomains_List": { + "$ref": "./examples/CustomDomains_List.json" } } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.AppPlatform/locations/{location}/checkNameAvailability": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.AppPlatform/Spring/{serviceName}/apps/{appName}/domains/validate": { "post": { "tags": [ "AppPlatform" ], - "description": "Checks that the resource name is valid and is not already in use.", - "operationId": "Services_CheckNameAvailability", + "description": "Check the resource name is valid as well as not in use.", + "operationId": "CustomDomains_Validate", "parameters": [ - { - "name": "location", - "in": "path", - "description": "the region", - "required": true, - "type": "string" - }, { "$ref": "#/parameters/ApiVersionParameter" }, @@ -975,20 +1457,28 @@ "$ref": "#/parameters/SubscriptionIdParameter" }, { - "name": "availabilityParameters", + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServiceNameParameter" + }, + { + "$ref": "#/parameters/AppNameParameter" + }, + { + "name": "validatePayload", "in": "body", - "description": "Parameters supplied to the operation.", "required": true, "schema": { - "$ref": "#/definitions/NameAvailabilityParameters" + "$ref": "#/definitions/CustomDomainValidatePayload" } } ], "responses": { "200": { - "description": "Success. The response describes the name availability.", + "description": "Success. The response describe the name is available.", "schema": { - "$ref": "#/definitions/NameAvailability" + "$ref": "#/definitions/CustomDomainValidateResult" } }, "default": { @@ -999,8 +1489,8 @@ } }, "x-ms-examples": { - "Services_CheckNameAvailability": { - "$ref": "./examples/Services_CheckNameAvailability.json" + "CustomDomains_Validate": { + "$ref": "./examples/CustomDomains_Validate.json" } } } @@ -1237,18 +1727,6 @@ "description": "Handles requests to list all resources in an App.", "operationId": "Deployments_List", "parameters": [ - { - "name": "version", - "in": "query", - "description": "Version of the deployments to be listed", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "multi", - "uniqueItems": false - }, { "$ref": "#/parameters/ApiVersionParameter" }, @@ -1263,6 +1741,18 @@ }, { "$ref": "#/parameters/AppNameParameter" + }, + { + "name": "version", + "in": "query", + "description": "Version of the deployments to be listed", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "uniqueItems": false } ], "responses": { @@ -1297,18 +1787,6 @@ "description": "List deployments for a certain service", "operationId": "Deployments_ListClusterAllDeployments", "parameters": [ - { - "name": "version", - "in": "query", - "description": "Version of the deployments to be listed", - "required": false, - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "multi", - "uniqueItems": false - }, { "$ref": "#/parameters/ApiVersionParameter" }, @@ -1320,6 +1798,18 @@ }, { "$ref": "#/parameters/ServiceNameParameter" + }, + { + "name": "version", + "in": "query", + "description": "Version of the deployments to be listed", + "required": false, + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "uniqueItems": false } ], "responses": { @@ -2043,6 +2533,10 @@ "$ref": "#/definitions/AppResourceProperties", "description": "Properties of the App resource", "x-ms-client-flatten": false + }, + "location": { + "description": "The GEO location of the application, always the same with its parent resource", + "type": "string" } } }, @@ -2088,6 +2582,14 @@ "description": "Name of the active deployment of the App", "type": "string" }, + "fqdn": { + "description": "Fully qualified dns Name.", + "type": "string" + }, + "httpsOnly": { + "description": "Indicate if only https is allowed.", + "type": "boolean" + }, "createdTime": { "format": "date-time", "description": "Date time when the resource is created", @@ -2256,6 +2758,101 @@ } } }, + "CertificateResource": { + "description": "Certificate resource payload.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/CertificateProperties", + "description": "Properties of the certificate resource payload.", + "x-ms-client-flatten": false + } + } + }, + "CertificateProperties": { + "description": "Certificate resource payload.", + "required": [ + "vaultUri", + "keyVaultCertName" + ], + "type": "object", + "properties": { + "thumbprint": { + "description": "The thumbprint of certificate.", + "type": "string", + "readOnly": true + }, + "vaultUri": { + "description": "The vault uri of user key vault.", + "type": "string" + }, + "keyVaultCertName": { + "description": "The certificate name of key vault.", + "type": "string" + }, + "certVersion": { + "description": "The certificate version of key vault.", + "type": "string" + }, + "issuer": { + "description": "The issuer of certificate.", + "type": "string", + "readOnly": true + }, + "issuedDate": { + "description": "The issue date of certificate.", + "type": "string", + "readOnly": true + }, + "expirationDate": { + "description": "The expiration date of certificate.", + "type": "string", + "readOnly": true + }, + "activateDate": { + "description": "The activate date of certificate.", + "type": "string", + "readOnly": true + }, + "subjectName": { + "description": "The subject name of certificate.", + "type": "string", + "readOnly": true + }, + "dnsNames": { + "description": "The domain list of certificate.", + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "CertificateResourceCollection": { + "description": "Collection compose of certificate resources list and a possible link for next page.", + "type": "object", + "properties": { + "value": { + "description": "The certificate resources list.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/CertificateResource" + } + }, + "nextLink": { + "description": "The link to next page of certificate list.", + "type": "string" + } + } + }, "NameAvailabilityParameters": { "description": "Name availability parameters payload", "required": [ @@ -2293,6 +2890,85 @@ }, "readOnly": true }, + "CustomDomainResource": { + "description": "Custom domain resource payload.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/CustomDomainProperties", + "description": "Properties of the custom domain resource.", + "x-ms-client-flatten": false + } + } + }, + "CustomDomainProperties": { + "description": "Custom domain of app resource payload.", + "type": "object", + "properties": { + "thumbprint": { + "description": "The thumbprint of bound certificate.", + "type": "string" + }, + "appName": { + "description": "The app name of domain.", + "type": "string" + }, + "certName": { + "description": "The bound certificate name of domain.", + "type": "string" + } + } + }, + "CustomDomainResourceCollection": { + "description": "Collection compose of a custom domain resources list and a possible link for next page.", + "type": "object", + "properties": { + "value": { + "description": "The custom domain resources list.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/CustomDomainResource" + } + }, + "nextLink": { + "description": "The link to next page of custom domain list.", + "type": "string" + } + } + }, + "CustomDomainValidatePayload": { + "description": "Custom domain validate payload.", + "required": [ + "name" + ], + "type": "object", + "properties": { + "name": { + "description": "Name to be validated", + "type": "string" + } + } + }, + "CustomDomainValidateResult": { + "description": "Validation result for custom domain.", + "type": "object", + "properties": { + "isValid": { + "description": "Indicates if domain name is valid.", + "type": "boolean" + }, + "message": { + "description": "Message of why domain name is invalid.", + "type": "string" + } + } + }, "DeploymentResource": { "description": "Deployment resource payload", "type": "object", @@ -2322,6 +2998,10 @@ "type": "string", "readOnly": true }, + "deploymentSettings": { + "$ref": "#/definitions/DeploymentSettings", + "description": "Deployment settings of the Deployment" + }, "provisioningState": { "description": "Provisioning state of the Deployment", "enum": [ @@ -2337,10 +3017,6 @@ "modelAsString": true } }, - "deploymentSettings": { - "$ref": "#/definitions/DeploymentSettings", - "description": "Deployment settings of the Deployment" - }, "status": { "description": "Status of the Deployment", "enum": [ @@ -2819,6 +3495,22 @@ "required": true, "type": "string", "x-ms-parameter-location": "method" + }, + "CustomDomainNameParameter": { + "name": "domainName", + "in": "path", + "description": "The name of the custom domain resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "CertificateNameParameter": { + "name": "certificateName", + "in": "path", + "description": "The name of the certificate resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" } }, "securityDefinitions": { diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Apps_CreateOrUpdate.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Apps_CreateOrUpdate.json index 3953ce2d62dd..8145e8e44747 100644 --- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Apps_CreateOrUpdate.json +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Apps_CreateOrUpdate.json @@ -4,6 +4,8 @@ "properties": { "public": true, "activeDeploymentName": "mydeployment1", + "fqdn": "myapp.mydomain.com", + "httpsOnly": false, "temporaryDisk": { "sizeInGB": 2, "mountPath": "mytemporarydisk" @@ -12,7 +14,8 @@ "sizeInGB": 2, "mountPath": "mypersistentdisk" } - } + }, + "location": "eastus" }, "api-version": "2019-05-01-preview", "subscriptionId": "00000000-0000-0000-0000-000000000000", @@ -28,6 +31,8 @@ "url": "myapp.myservice.azuremicroservices.io", "provisioningState": "Succeeded", "activeDeploymentName": "mydeployment1", + "fqdn": "myapp.mydomain.com", + "httpsOnly": false, "temporaryDisk": { "sizeInGB": 2, "mountPath": "mytemporarydisk" @@ -39,6 +44,7 @@ } }, "type": "Microsoft.AppPlatform/Spring/apps", + "location": "eastus", "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp", "name": "myapp" } @@ -50,6 +56,8 @@ "url": "myapp.myservice.azuremicroservices.io", "provisioningState": "Creating", "activeDeploymentName": "mydeployment1", + "fqdn": "myapp.mydomain.com", + "httpsOnly": false, "temporaryDisk": { "sizeInGB": 2, "mountPath": "mytemporarydisk" @@ -61,6 +69,7 @@ } }, "type": "Microsoft.AppPlatform/Spring/apps", + "location": "eastus", "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp", "name": "myapp" } diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Apps_Get.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Apps_Get.json index 68283a0f5fcc..abdcd6fbd998 100644 --- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Apps_Get.json +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Apps_Get.json @@ -14,6 +14,8 @@ "url": "myapp.myservice.azuremicroservices.io", "provisioningState": "Succeeded", "activeDeploymentName": "mydeployment1", + "fqdn": "myapp.mydomain.com", + "httpsOnly": false, "temporaryDisk": { "sizeInGB": 2, "mountPath": "mytemporarydisk" @@ -25,6 +27,7 @@ } }, "type": "Microsoft.AppPlatform/Spring/apps", + "location": "eastus", "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp", "name": "myapp" } diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Apps_List.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Apps_List.json index 723ee8f81eaa..0e9002ad0c77 100644 --- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Apps_List.json +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Apps_List.json @@ -15,6 +15,8 @@ "url": "myapp.myservice.azuremicroservices.io", "provisioningState": "Succeeded", "activeDeploymentName": "mydeployment1", + "fqdn": "myapp.mydomain.com", + "httpsOnly": false, "temporaryDisk": { "sizeInGB": 2, "mountPath": "mytemporarydisk" @@ -26,6 +28,7 @@ } }, "type": "Microsoft.AppPlatform/Spring/apps", + "location": "eastus", "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp", "name": "myapp" } diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Apps_Update.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Apps_Update.json index 61098e74fccf..2ad43819f26f 100644 --- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Apps_Update.json +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Apps_Update.json @@ -4,6 +4,8 @@ "properties": { "public": true, "activeDeploymentName": "mydeployment1", + "fqdn": "myapp.mydomain.com", + "httpsOnly": false, "temporaryDisk": { "sizeInGB": 2, "mountPath": "mytemporarydisk" @@ -12,7 +14,8 @@ "sizeInGB": 2, "mountPath": "mypersistentdisk" } - } + }, + "location": "eastus" }, "api-version": "2019-05-01-preview", "subscriptionId": "00000000-0000-0000-0000-000000000000", @@ -28,6 +31,8 @@ "url": "myapp.myservice.azuremicroservices.io", "provisioningState": "Succeeded", "activeDeploymentName": "mydeployment1", + "fqdn": "myapp.mydomain.com", + "httpsOnly": false, "temporaryDisk": { "sizeInGB": 2, "mountPath": "mytemporarydisk" @@ -39,6 +44,7 @@ } }, "type": "Microsoft.AppPlatform/Spring/apps", + "location": "eastus", "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp", "name": "myapp" } @@ -50,6 +56,8 @@ "url": "myapp.myservice.azuremicroservices.io", "provisioningState": "Updating", "activeDeploymentName": "mydeployment1", + "fqdn": "myapp.mydomain.com", + "httpsOnly": false, "temporaryDisk": { "sizeInGB": 2, "mountPath": "mytemporarydisk" @@ -61,6 +69,7 @@ } }, "type": "Microsoft.AppPlatform/Spring/apps", + "location": "eastus", "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp", "name": "myapp" } diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Certificates_CreateOrUpdate.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Certificates_CreateOrUpdate.json new file mode 100644 index 000000000000..b25bf2082651 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Certificates_CreateOrUpdate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "certificateResource": { + "properties": { + "vaultUri": "https://myvault.vault.azure.net", + "keyVaultCertName": "mycert", + "certVersion": "08a219d06d874795a96db47e06fbb01e" + } + }, + "api-version": "2019-05-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "certificateName": "mycertificate" + }, + "responses": { + "200": { + "body": { + "properties": { + "thumbprint": "934367bf1c97033f877db0f15cb1b586957d3133", + "vaultUri": "https://myvault.vault.azure.net", + "keyVaultCertName": "mycert", + "certVersion": "08a219d06d874795a96db47e06fbb01e", + "issuer": "mydomain.com", + "issuedDate": "2019-02-20T07:40:42Z", + "expirationDate": "2019-02-21T07:40:42Z", + "activateDate": "2019-02-22T07:40:42Z", + "subjectName": "mysubjectname", + "dnsNames": [ + "mydomain.com", + "mydomain.net", + "mydomain.io" + ] + }, + "type": "Microsoft.AppPlatform/Spring/certificates", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/certificates/mycertificate", + "name": "mycertificate" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Certificates_Delete.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Certificates_Delete.json new file mode 100644 index 000000000000..6c22ffd192b4 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Certificates_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-05-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "certificateName": "mycertificate" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Certificates_Get.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Certificates_Get.json new file mode 100644 index 000000000000..7b39fefc11bf --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Certificates_Get.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2019-05-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "certificateName": "mycertificate" + }, + "responses": { + "200": { + "body": { + "properties": { + "thumbprint": "934367bf1c97033f877db0f15cb1b586957d3133", + "vaultUri": "https://myvault.vault.azure.net", + "keyVaultCertName": "mycert", + "certVersion": "08a219d06d874795a96db47e06fbb01e", + "issuer": "mydomain.com", + "issuedDate": "2019-02-20T07:40:42Z", + "expirationDate": "2019-02-21T07:40:42Z", + "activateDate": "2019-02-22T07:40:42Z", + "subjectName": "mysubjectname", + "dnsNames": [ + "mydomain.com", + "mydomain.net", + "mydomain.io" + ] + }, + "type": "Microsoft.AppPlatform/Spring/certificates", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/certificates/mycertificate", + "name": "mycertificate" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Certificates_List.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Certificates_List.json new file mode 100644 index 000000000000..7e234639163e --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Certificates_List.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2019-05-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myService" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "thumbprint": "934367bf1c97033f877db0f15cb1b586957d3133", + "vaultUri": "https://myvault.vault.azure.net", + "keyVaultCertName": "mycert", + "certVersion": "08a219d06d874795a96db47e06fbb01e", + "issuer": "mydomain.com", + "issuedDate": "2019-02-20T07:40:42Z", + "expirationDate": "2019-02-21T07:40:42Z", + "activateDate": "2019-02-22T07:40:42Z", + "subjectName": "mysubjectname", + "dnsNames": [ + "mydomain.com", + "mydomain.net", + "mydomain.io" + ] + }, + "type": "Microsoft.AppPlatform/Spring/certificates", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/certificates/mycertificate", + "name": "mycertificate" + } + ], + "nextLink": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/certificates?$page=2" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_CreateOrUpdate.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_CreateOrUpdate.json new file mode 100644 index 000000000000..213fb3296173 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_CreateOrUpdate.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "domainResource": { + "properties": { + "thumbprint": "934367bf1c97033f877db0f15cb1b586957d3133", + "appName": "myapp", + "certName": "mycert" + } + }, + "api-version": "2019-05-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp", + "domainName": "mydomain.com" + }, + "responses": { + "200": { + "body": { + "properties": { + "thumbprint": "934367bf1c97033f877db0f15cb1b586957d3133", + "appName": "myapp", + "certName": "mycert" + }, + "type": "Microsoft.AppPlatform/Spring/apps/domains", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/domains/mydomain.com", + "name": "mydomain.com" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_Delete.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_Delete.json new file mode 100644 index 000000000000..3aa0a88d3b06 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-05-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp", + "domainName": "mydomain.com" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_Get.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_Get.json new file mode 100644 index 000000000000..767c3f6ab672 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_Get.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2019-05-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp", + "domainName": "mydomain.com" + }, + "responses": { + "200": { + "body": { + "properties": { + "thumbprint": "934367bf1c97033f877db0f15cb1b586957d3133", + "appName": "myapp", + "certName": "mycert" + }, + "type": "Microsoft.AppPlatform/Spring/apps/domains", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/domains/mydomain.com", + "name": "mydomain.com" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_List.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_List.json new file mode 100644 index 000000000000..5bce55c10283 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_List.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-05-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "thumbprint": "934367bf1c97033f877db0f15cb1b586957d3133", + "appName": "myapp", + "certName": "mycert" + }, + "type": "Microsoft.AppPlatform/Spring/apps/domains", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/domains/mydomain.com", + "name": "mydomain.com" + } + ], + "nextLink": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/domains?$page=2" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_Patch.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_Patch.json new file mode 100644 index 000000000000..213fb3296173 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_Patch.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "domainResource": { + "properties": { + "thumbprint": "934367bf1c97033f877db0f15cb1b586957d3133", + "appName": "myapp", + "certName": "mycert" + } + }, + "api-version": "2019-05-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp", + "domainName": "mydomain.com" + }, + "responses": { + "200": { + "body": { + "properties": { + "thumbprint": "934367bf1c97033f877db0f15cb1b586957d3133", + "appName": "myapp", + "certName": "mycert" + }, + "type": "Microsoft.AppPlatform/Spring/apps/domains", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.AppPlatform/Spring/myservice/apps/myapp/domains/mydomain.com", + "name": "mydomain.com" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_Validate.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_Validate.json new file mode 100644 index 000000000000..ee7e015c7316 --- /dev/null +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/CustomDomains_Validate.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "validatePayload": { + "name": "mydomain.io" + }, + "api-version": "2019-05-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "serviceName": "myservice", + "appName": "myapp" + }, + "responses": { + "200": { + "body": { + "isValid": false, + "message": "Certificate is invalid, please check if it is a self signed cert or if it contains a suitable dns name" + } + } + } +} diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_CreateOrUpdate.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_CreateOrUpdate.json index ffd1595b373f..d1d902e57925 100644 --- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_CreateOrUpdate.json +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_CreateOrUpdate.json @@ -39,7 +39,6 @@ "artifactSelector": "sub-module-1" }, "appName": "myapp", - "provisioningState": "Updating", "deploymentSettings": { "cpu": 1, "memoryInGB": 3, @@ -50,6 +49,7 @@ }, "runtimeVersion": "Java_8" }, + "provisioningState": "Updating", "status": "Compiling", "active": false, "instances": [ @@ -75,7 +75,6 @@ "artifactSelector": "sub-module-1" }, "appName": "myapp", - "provisioningState": "Succeeded", "deploymentSettings": { "cpu": 1, "memoryInGB": 3, @@ -86,6 +85,7 @@ }, "runtimeVersion": "Java_8" }, + "provisioningState": "Succeeded", "status": "Running", "active": false, "instances": [ diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_Get.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_Get.json index 62c9eb162cfe..e574a0dea582 100644 --- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_Get.json +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_Get.json @@ -18,7 +18,6 @@ "artifactSelector": "sub-module-1" }, "appName": "myapp", - "provisioningState": "Succeeded", "deploymentSettings": { "cpu": 1, "memoryInGB": 3, @@ -29,6 +28,7 @@ }, "runtimeVersion": "Java_8" }, + "provisioningState": "Succeeded", "status": "Running", "active": false, "instances": [ diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_List.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_List.json index d5760260e674..221113ccf649 100644 --- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_List.json +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_List.json @@ -19,7 +19,6 @@ "artifactSelector": "sub-module-1" }, "appName": "myapp", - "provisioningState": "Succeeded", "deploymentSettings": { "cpu": 1, "memoryInGB": 3, @@ -30,6 +29,7 @@ }, "runtimeVersion": "Java_8" }, + "provisioningState": "Succeeded", "status": "Running", "active": false, "instances": [ diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_ListClusterAllDeployments.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_ListClusterAllDeployments.json index d5760260e674..221113ccf649 100644 --- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_ListClusterAllDeployments.json +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_ListClusterAllDeployments.json @@ -19,7 +19,6 @@ "artifactSelector": "sub-module-1" }, "appName": "myapp", - "provisioningState": "Succeeded", "deploymentSettings": { "cpu": 1, "memoryInGB": 3, @@ -30,6 +29,7 @@ }, "runtimeVersion": "Java_8" }, + "provisioningState": "Succeeded", "status": "Running", "active": false, "instances": [ diff --git a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_Update.json b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_Update.json index 6cb1ff97128e..4a778752688a 100644 --- a/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_Update.json +++ b/specification/appplatform/resource-manager/Microsoft.AppPlatform/preview/2019-05-01-preview/examples/Deployments_Update.json @@ -29,7 +29,6 @@ "artifactSelector": "sub-module-1" }, "appName": "myapp", - "provisioningState": "Succeeded", "deploymentSettings": { "cpu": 1, "memoryInGB": 3, @@ -40,6 +39,7 @@ }, "runtimeVersion": "Java_8" }, + "provisioningState": "Succeeded", "status": "Running", "active": false, "instances": [ @@ -65,7 +65,6 @@ "artifactSelector": "sub-module-1" }, "appName": "myapp", - "provisioningState": "Updating", "deploymentSettings": { "cpu": 1, "memoryInGB": 3, @@ -76,6 +75,7 @@ }, "runtimeVersion": "Java_8" }, + "provisioningState": "Updating", "status": "Running", "active": false, "instances": [ diff --git a/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/attestation.json b/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/attestation.json index ef1c4cb174af..302dcc6c8392 100644 --- a/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/attestation.json +++ b/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/attestation.json @@ -1,26 +1,25 @@ { - "swagger": "2.0", - "info": { - "title": "AttestationClient", - "description": "Describes the interface for the per-tenant enclave service.", - "version": "2018-09-01-preview" - - }, - "x-ms-parameterized-host": { - "hostTemplate": "{tenantBaseUrl}", - "useSchemePrefix": false, - "parameters": [ - { - "name": "tenantBaseUrl", - "x-ms-parameter-location": "client", - "description": "The tenant name, for example https://mytenant.attest.azure.net.", - "required": true, - "type": "string", - "in": "path", - "x-ms-skip-url-encoding": true - } - ] - }, + "swagger": "2.0", + "info": { + "title": "AttestationClient", + "description": "Describes the interface for the per-tenant enclave service.", + "version": "2018-09-01-preview" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{tenantBaseUrl}", + "useSchemePrefix": false, + "parameters": [ + { + "name": "tenantBaseUrl", + "x-ms-parameter-location": "client", + "description": "The tenant name, for example https://mytenant.attest.azure.net.", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + ] + }, "consumes": [ "application/json" ], @@ -38,370 +37,535 @@ } } }, - "paths": { - "/operations/policy/updatepolicy": { - "post": { - "tags": [ - "policy" - ], - "summary": "Accepts a new policy document and returns a JWT which expresses used in preparation to set attestation policy.", - "operationId": "Policy_PrepareToSet", - "consumes": [ "text/plain" ], - "produces": [ "text/plain", "application/json" ], - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/TeeKind" - }, - { - "name": "PolicyJws", - "in": "body", - "description": "JSON Web Signature (See RFC7515) expressing the new policy", - "required": true, - "x-ms-client-flatten": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Success - Returns a JWT signed by the metadata signing key that contains the hash of the supplied policy to be set.", - "schema": { - "type": "string" - } - }, - "400": { - "description": "Bad request", - "schema": { - "$ref": "#/definitions/CloudError" - } - }, - "401": { - "description": "Request is unauthorized", - "schema": { - "type": "string" - } - }, - "default": { - "description": "Error response describing why the operation failed", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "UpdatePolicy": { - "$ref": "./examples/UpdatePolicy.json" - } - } + "paths": { + "/operations/policy/updatepolicy": { + "post": { + "tags": [ + "Policy" + ], + "summary": "Accepts a new policy document and returns a JWT which expresses used in preparation to set attestation policy.", + "operationId": "Policy_PrepareToSet", + "consumes": [ + "text/plain" + ], + "produces": [ + "text/plain", + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TeeKind" + }, + { + "name": "PolicyJws", + "in": "body", + "description": "JSON Web Signature (See RFC7515) expressing the new policy", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Success - Returns a JWT signed by the metadata signing key that contains the hash of the supplied policy to be set.", + "schema": { + "type": "string" } + }, + "400": { + "description": "Bad request", + "schema": { + "$ref": "#/definitions/CloudError" + } + }, + "401": { + "description": "Request is unauthorized", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } }, - "/operations/policy/current": { - "get": { - "tags": [ - "policy" - ], - "summary": "Retrieves the current policy for a given kind of TEE.", - "operationId": "Policy_Get", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/TeeKind" - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/AttestationPolicy" - } - }, - "400": { - "description": "Bad request", - "schema": { - "$ref": "#/definitions/CloudError" - } - }, - "401": { - "description": "Request is unauthorized", - "schema": { - "type": "string" - } - }, - "default": { - "description": "Error response describing why the operation failed", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Get Policy": { - "$ref": "./examples/Get_Policy.json" - } - } - }, - "put": { - "tags": [ - "policy" - ], - "summary": "Sets the policy for a given kind of TEE.", - "operationId": "Policy_Set", - "consumes": [ "text/plain" ], - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/TeeKind" - }, - { - "name": "newAttestationPolicy", - "in": "body", - "description": "JWT Expressing the new policy", - "required": true, - "x-ms-client-flatten": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Success" - }, - "400": { - "description": "Bad request", - "schema": { - "$ref": "#/definitions/CloudError" - } - }, - "401": { - "description": "Request is unauthorized", - "schema": { - "type": "string" - } - }, - "default": { - "description": "Error response describing why the operation failed", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Set Policy": { - "$ref": "./examples/Set_Policy.json" - } - } - }, - "post": { - "tags": [ - "policy" - ], - "summary": "Resets the attestation policy for the specified tenant and reverts to the default policy.", - "operationId": "Policy_Reset", - "consumes": [ "text/plain" ], - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/TeeKind" - }, - { - "name": "PolicyJws", - "in": "body", - "description": "JSON Web Signature with an empty policy document", - "required": true, - "x-ms-client-flatten": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Success - Returns a JWT signed by the metadata signing key that contains the hash of the supplied policy to be set.", - "schema": { - "type": "string" - } - }, - "400": { - "description": "Bad request", - "schema": { - "$ref": "#/definitions/CloudError" - } - }, - "401": { - "description": "Request is unauthorized", - "schema": { - "type": "string" - } - }, - "default": { - "description": "Error response describing why the operation failed", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Reset Policy": { - "$ref": "./examples/Reset_Policy.json" - } - } + "x-ms-examples": { + "UpdatePolicy": { + "$ref": "./examples/UpdatePolicy.json" + } + } + } + }, + "/operations/policy/current": { + "get": { + "tags": [ + "Policy" + ], + "summary": "Retrieves the current policy for a given kind of TEE.", + "operationId": "Policy_Get", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TeeKind" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/AttestationPolicy" + } + }, + "400": { + "description": "Bad request", + "schema": { + "$ref": "#/definitions/CloudError" } + }, + "401": { + "description": "Request is unauthorized", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } }, - "/certs": { - "get": { - "tags": [ - "attestation" - ], - "summary": "Retrieves the OpenID Configuration data for the Azure Attestation Service", - "description": "Retrieves attestation signing keys in use by the attestation service", - "operationId": "Certs_Get", - "consumes": [ - "application/json" - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "type": "object" - } - }, - "400": { - "description": "Error processing the request", - "schema": { - "$ref": "#/definitions/CloudError" - } - }, - "default": { - "description": "Error response describing why the operation failed", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Reset Policy": { - "$ref": "./examples/Get_Certs.json" - } - } + "x-ms-examples": { + "Get Policy": { + "$ref": "./examples/Get_Policy.json" + } + } + }, + "put": { + "tags": [ + "Policy" + ], + "summary": "Sets the policy for a given kind of TEE.", + "operationId": "Policy_Set", + "consumes": [ + "text/plain" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TeeKind" + }, + { + "name": "newAttestationPolicy", + "in": "body", + "description": "JWT Expressing the new policy", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Success" + }, + "400": { + "description": "Bad request", + "schema": { + "$ref": "#/definitions/CloudError" } + }, + "401": { + "description": "Request is unauthorized", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } }, - "/.well-known/openid-configuration": { - "get": { - "tags": [ - "attestation" - ], - "summary": "Retrieves the OpenID Configuration data for the Azure Attestation Service", - "description": "Retrieves metadata about the attestation signing keys in use by the attestation service", - "operationId": "MetadataConfiguration_Get", - "consumes": [ - "application/json" - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "type": "object" - } - }, - "400": { - "description": "Error processing the request", - "schema": { - "$ref": "#/definitions/CloudError" - } - }, - "default": { - "description": "Error response describing why the operation failed", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-examples": { - "Reset Policy": { - "$ref": "./examples/Get_MetadataConfiguration.json" - } - } + "x-ms-examples": { + "Set Policy": { + "$ref": "./examples/Set_Policy.json" + } + } + }, + "post": { + "tags": [ + "Policy" + ], + "summary": "Resets the attestation policy for the specified tenant and reverts to the default policy.", + "operationId": "Policy_Reset", + "consumes": [ + "text/plain" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/TeeKind" + }, + { + "name": "PolicyJws", + "in": "body", + "description": "JSON Web Signature with an empty policy document", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Success - Returns a JWT signed by the metadata signing key that contains the hash of the supplied policy to be set.", + "schema": { + "type": "string" + } + }, + "400": { + "description": "Bad request", + "schema": { + "$ref": "#/definitions/CloudError" + } + }, + "401": { + "description": "Request is unauthorized", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { + "Reset Policy": { + "$ref": "./examples/Reset_Policy.json" + } } + } }, - "definitions": { - "CloudError": { - "x-ms-external": true, - "properties": { - "error": { - "$ref": "#/definitions/CloudErrorBody" + "/operations/policy/certificates": { + "get": { + "tags": [ + "Policy Management Certificates" + ], + "summary": "Retrieves the set of certificates used to express policy for the current tenant.", + "operationId": "PolicyCertificates_Get", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "An RFC7519 JSON Web Token structure containing an RFC7517 JsonWebKeySet which contains the certificates used to validate policy changes", + "schema": { + "type": "string" + } + }, + "400": { + "description": "Bad request", + "schema": { + "$ref": "#/definitions/CloudError" } + }, + "401": { + "description": "Request is unauthorized", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } }, - "description": "An error response from Attestation." + "x-ms-examples": { + "Get PolicyCertificates": { + "$ref": "./examples/Get_PolicyCertificates.json" + } + } + }, + "put": { + "tags": [ + "Policy Management Certificates" + ], + "summary": "Adds a new attestation policy certificate to the set of policy management certificates.", + "operationId": "PolicyCertificates_Add", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "policyCertificateToAdd", + "in": "body", + "description": "An RFC7519 JSON Web Token containing a claim named \"aas-policyCertificate\" whose value is an RFC7517 JSON Web Key which specifies a new key to add. The RFC7519 JWT must be signed with one of the existing signing certificates", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "An RFC7519 JSON Web Token structure containing an RFC7517 JsonWebKeySet which contains the certificates used to validate policy changes", + "schema": { + "type": "string" + } + }, + "400": { + "description": "Bad request", + "schema": { + "$ref": "#/definitions/CloudError" + } + }, + "401": { + "description": "Request is unauthorized", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } }, - "CloudErrorBody": { - "x-ms-external": true, - "properties": { - "code": { - "type": "string", - "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." - }, - "message": { - "type": "string", - "description": "A message describing the error, intended to be suitable for displaying in a user interface." + "x-ms-examples": { + "Add PolicyCertificate": { + "$ref": "./examples/Add_PolicyCertificate.json" + } + } + }, + "post": { + "tags": [ + "Policy Management Certificates" + ], + "summary": "Removes the specified policy management certificate. Note that the final policy management certificate cannot be removed.", + "operationId": "PolicyCertificates_Remove", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "policyCertificateToRemove", + "in": "body", + "description": "An RFC7519 JSON Web Token containing a claim named \"aas-policyCertificate\" whose value is an RFC7517 JSON Web Key which specifies a new key to update. The RFC7519 JWT must be signed with one of the existing signing certificates", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "An RFC7519 JSON Web Token structure containing an RFC7517 JsonWebKeySet which contains the certificates used to validate policy changes", + "schema": { + "type": "string" } + }, + "400": { + "description": "Bad request", + "schema": { + "$ref": "#/definitions/CloudError" + } + }, + "401": { + "description": "Request is unauthorized", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } }, - "description": "An error response from Attestation." + "x-ms-examples": { + "Remove PolicyCertificate": { + "$ref": "./examples/Remove_PolicyCertificate.json" + } + } + } + }, + "/certs": { + "get": { + "tags": [ + "Attestation Provider" + ], + "summary": "Retrieves the OpenID Configuration data for the Azure Attestation Service", + "description": "Retrieves attestation signing keys in use by the attestation service", + "operationId": "SigningCertificates_Get", + "responses": { + "200": { + "description": "Success", + "schema": { + "type": "object" + } + }, + "400": { + "description": "Error processing the request", + "schema": { + "$ref": "#/definitions/CloudError" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" + } + } }, - "AttestationPolicy": { - "type": "object", - "properties": { - "policy": { - "description": "String-encoded attestation policy document.", - "type": "string" + "x-ms-examples": { + "Reset Policy": { + "$ref": "./examples/Get_Certs.json" + } + } + } + }, + "/.well-known/openid-configuration": { + "get": { + "tags": [ + "Attestation Provider" + ], + "summary": "Retrieves the OpenID Configuration data for the Azure Attestation Service", + "description": "Retrieves metadata about the attestation signing keys in use by the attestation service", + "operationId": "MetadataConfiguration_Get", + "responses": { + "200": { + "description": "Success", + "schema": { + "type": "object" + } + }, + "400": { + "description": "Error processing the request", + "schema": { + "$ref": "#/definitions/CloudError" } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/CloudError" } + } + }, + "x-ms-examples": { + "Reset Policy": { + "$ref": "./examples/Get_MetadataConfiguration.json" + } + } + } + } + }, + "definitions": { + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody" } + }, + "description": "An error response from Attestation." }, - "parameters": { - "ApiVersionParameter": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "Client API version.", - "enum": ["2018-09-01-preview"] + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." }, - "TeeKind": { - "description": "Specifies the trusted execution environment to be used to validate the evidence", - "name": "tee", - "in": "query", - "type": "string", - "required": true, - "x-ms-parameter-location": "method", - "x-ms-enum": { - "name": "TeeKind", - "modelAsString": true, - "values": - [ - { "value": "SgxEnclave", "description": "Intel Software Guard eXtensions" }, - { "value": "OpenEnclave", "description": "OpenEnclave extensions to SGX" }, - { "value": "CyResComponent", "description": "IoT Edge validation" }, - { "value": "AzureGuest", "description": "Azure Guest Attestation" } - ] - }, - "enum": [ - "SgxEnclave", - "OpenEnclave", - "CyResComponent", - "AzureGuest" - ] + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for displaying in a user interface." + } + }, + "description": "An error response from Attestation." + }, + "AttestationPolicy": { + "type": "object", + "properties": { + "policy": { + "description": "String-encoded attestation policy document.", + "type": "string" } + } + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version.", + "enum": [ + "2018-09-01-preview" + ] + }, + "TeeKind": { + "description": "Specifies the trusted execution environment to be used to validate the evidence", + "name": "tee", + "in": "query", + "type": "string", + "required": true, + "x-ms-parameter-location": "method", + "x-ms-enum": { + "name": "TeeKind", + "modelAsString": true, + "values": [ + { + "value": "SgxEnclave", + "description": "Intel Software Guard eXtensions" + }, + { + "value": "OpenEnclave", + "description": "OpenEnclave extensions to SGX" + }, + { + "value": "CyResComponent", + "description": "IoT Edge validation" + }, + { + "value": "VSMEnclave", + "description": "VSM Enclave Attestation" + } + ] + }, + "enum": [ + "SgxEnclave", + "OpenEnclave", + "CyResComponent", + "VSMEnclave" + ] } + } } diff --git a/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/Add_PolicyCertificate.json b/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/Add_PolicyCertificate.json new file mode 100644 index 000000000000..539fc3cc97b8 --- /dev/null +++ b/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/Add_PolicyCertificate.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "tenantBaseUrl": "'https://mytest.attest.azure.net'", + "api-version": "2018-09-01-preview", + "policyCertificateToAdd": "eyAiYWxnIjoiUlMyNTYiLCAieDVjIjogWyJNSUlEVFRDQ0FqV2dBd0lCQWdJSUlESkJoZVZUV1I4d0RRWUpLb1pJaHZjTkFRRUxCUUF3SWpFZ01CNEdBMVVFQXd3WFZHVnpkRk5wWjI1cGJtZERaWEowYVdacFkyRjBaVEl3SGhjTk1qQXdNakEwTURBd01EQXdXaGNOTWpJd01qQTBNREF3TURBd1dqQWlNU0F3SGdZRFZRUUREQmRVWlhOMFUybG5ibWx1WjBObGNuUnBabWxqWVhSbE1qQ0NBU0l3RFFZSktvWklodmNOQVFFQkJRQURnZ0VQQURDQ0FRb0NnZ0VCQU1NbFhMYW11WjRYVXc2NHlJeElPczV3L25VdE5CeU95SzVpV3JVbE5RRmhxZ2lEdVNmN1gwVnpuZEhHVnNGS0ZJbFN0eGh4M3o1MHZEOTR4WEo1T2RZSm1vbzV4WjZxcEZwUndEVDNVTkhwTGVZZy8zeGQ2OHNlbEpxOHBUaDlpLytPTXZvdGdxTkt1NVcvWUVEMHNLWlgxRzdUUDdBK0d0V2VzSmJyQ3k5SGxidmNBZlJpdlV6cjBiUVFrYjd3TnZzRjBHMXZvcm5veDFqVmFoUHJSaDI1OWJsNmxGRURpMXJSOHN3TU5wNXB6RjNDOEltWmZ3NVNIcmxKNitvci83MmVvTDNhSVovWmlOZUczNU9IcSsrWjVFNkFQdFdzVTBZcVpQVDdGR1FqVllHeXBwUldISEVOK08zVlJ3eHRJSVJ6WjZMV2Z1RVJPVDBROVJUUCtHc0NBd0VBQWFPQmhqQ0JnekJSQmdOVkhTTUVTakJJZ0JUSEdVODN3MklKc0ZOdi80QlcvOWZlSXNZVWVhRW1wQ1F3SWpFZ01CNEdBMVVFQXd3WFZHVnpkRk5wWjI1cGJtZERaWEowYVdacFkyRjBaVEtDQ0NBeVFZWGxVMWtmTUIwR0ExVWREZ1FXQkJUSEdVODN3MklKc0ZOdi80QlcvOWZlSXNZVWVUQVBCZ05WSFJNQkFmOEVCVEFEQVFIL01BMEdDU3FHU0liM0RRRUJDd1VBQTRJQkFRQ2RrdDNacEVjQ2NtbWtveUNDbVgwcEJTSE51czh5THB4V3FZeG51UHI0ZzVKS2hXNWpFamVDNExEeCtkYjk3Z0kyZVdCNFQrRnRoSHlXdkE1OFlUZWRKZ3BLWUh2S2t0clRDWHdMemJvcThhM1h3bTQ5OHY2aUlSN09STG1MUng4dWdoK0p6eFZVKzZSRGNKRTJvbHVhcnlpdjhuYU1pRlhkVFVpVGYxVnZEWTh0YS9rSi9tVVpadTcvbUI3WEx6YUJRQUhYSU42SVozbFdxLzRWV3dZR2Z5aERPWTBSSHJWRzQ0NUdLckhuS2ZOcjNvSTJXeU9KL21JbUtDdTdTcmJ5Vm9HcituR0NvUUNtaVlLRVg1T0ZlVkY2Q1BOV3BxaURvOW50UWJURDltdVJsY0U3WG4rRFJuQ2xTSmhBdmJKVmV2MG1KQTVOZk1FSStDVW5RSXFQIl19.eyJhYXMtcG9saWN5Q2VydGlmaWNhdGUiOiB7Imt0eSI6IlJTQSIsICJ4NWMiOlsiTUlJRE1EQ0NBaGlnQXdJQkFnSUlJb08vb3RONENFOHdEUVlKS29aSWh2Y05BUUVMQlFBd0dURVhNQlVHQTFVRUF3d09UbVYzUTJWeWRHbG1hV05oZEdVd0hoY05NakF3TWpBME1EQXdNREF3V2hjTk1qSXdNakEwTURBd01EQXdXakFaTVJjd0ZRWURWUVFEREE1T1pYZERaWEowYVdacFkyRjBaVENDQVNJd0RRWUpLb1pJaHZjTkFRRUJCUUFEZ2dFUEFEQ0NBUW9DZ2dFQkFLVHAxRytjajdiZHRYZUNDTzFJWHFpUDE4aW1MOFFUOVhUaE50ZFh2NXNtaWtLTU1UMjRuU3ArSGYxazI2bzZPSEpVUVhMQ0Q4ZkduUFZiVnRVOUd1WFNuWERXSHJwdnFtK3JBRmhhS1FkV2trWmt3eHlycFVhZjNLM3RDeWhrUVdtMHJpMHNTNGhRZUtOWDJNRE5GbmFrUUJWTXdWVXplK1BoMi94OTcraHdWRFozK3NWclJId1J0Q254b2ZPL2VSQkNkTFI1dUdxYXQzM1R2cjU4dWg3NHNVckpJSktzbXZweFZ1djk0RkgzQlFybVFOeXV2MEV0ekoycmx6NDAxZ2ZuUStHS05jQzA2bTRuczdhb09EMDRTWkFrdVhXZlMrTGw2bE83MlJQSlk4YXNiRVVkamNBOHZraEJ5K24wYlNkV2wrZVFKck9XQndpY08xVjJjK0VDQXdFQUFhTjhNSG93U0FZRFZSMGpCRUV3UDRBVTh3VUh0dlJwMEdHRXdJL3BhcGt3WkkyM2tOMmhIYVFiTUJreEZ6QVZCZ05WQkFNTURrNWxkME5sY25ScFptbGpZWFJsZ2dnaWc3K2kwM2dJVHpBZEJnTlZIUTRFRmdRVTh3VUh0dlJwMEdHRXdJL3BhcGt3WkkyM2tOMHdEd1lEVlIwVEFRSC9CQVV3QXdFQi96QU5CZ2txaGtpRzl3MEJBUXNGQUFPQ0FRRUFNckljZXQvZDlFWlZ5cXRVZjZaVWMxU2hKS3NYOFpacGYwdEg5VEVmdVhZdUpkUUh4cnhIeEZYSEE5SXFPYzc2L1l3WFVQT0VuYzVSUHNUTUU2d2RUYzJMTnhPaFBKMGtFT09XTWcxN2ZWUXM4eXJZMnhJeCs0U3pYMWQ5T3p0d0ZuazV6SnpJQ3R1dEtzTXRqS0hQbmh3N24xbTN5K2dLbDloSnRiRXdxNDVIZmxMWnBkZlc2bmlmTUNIMHdTS0xnNXdLRldOZUxKSy90ZFUzUjBDcmIxVHhJaWVGb2hVV1NJY3NFS1hWeXo1a3psdzVSV3JWWWJueGhVWmhibmhYVkNjajVyNzVIWlV3cXpOazBVYWViTFJVb3BYbzVacExuR3JTWFpod3AxRU05bHR3eGF0bC90Y3VQejNQM0QvRmVnU1dvS1dETEZXZzlrN1N3b2VyaGc9PSJdfX0.MB8bvwXkPE8YCgpsIKqfa7np_7UDD1tBabrFrnSXz-asCVGxN4PY49mFR2DN2phdhWYk-i7DTx2x3Kt6FGZ9s4A-d8AyjPzsEsIHYpvGlyE4ML35Nu0PUH25_1Xa7paPOiiOgzjP86bwlUp1R06TOmztbXyfEvSC2p8Gql5REFkRHUXSmSaG1cFPpFjpSPLRyiYD5nUb8CZgH6U4fbSZMSoVnQwzXx10AIFM0e5mLccQVu0T1KRgQiAsWI4UhVGthymhDgUlWnROxGh2mPitDYF6p18FekCVCBuiyo4GiD8l2RBpJU5xOm6_CYIPREhtKKWlMEgrYXUd2WcA4rcomQ" + }, + "responses": { + "200": { + "body": "eyJhbGciOiAiUlMyNTYiLCAiamt1IjogImh0dHA6Ly9sb2NhbGhvc3QuOjg4ODgvb3BlcmF0aW9ucy9SZXRyaWV2ZUF0dGVzdGF0aW9uU2lnbmluZ0NlcnRpZmljYXRlcy9kZWZhdWx0Y2VydHMiLCAia2lkIjogInJPV1JGdXlnTWp5RGRrUXJtRFpBZ2xSNHhmc2FzUXI0Yms0THMzdjlscEU9IiwgInR5cCI6ICJKV1QifQ.eyJhYXMtcG9saWN5Q2VydGlmaWNhdGVzIjogeyJrZXlzIjogW3siYWxnIjogIlJTMjU2IiwgImt0eSI6ICJSU0EiLCAidXNlIjogInNpZyIsICJ4NWMiOiBbIk1JSURUVENDQWpXZ0F3SUJBZ0lJQm1PWFB1eFB3Tjh3RFFZSktvWklodmNOQVFFTEJRQXdJakVnTUI0R0ExVUVBd3dYVkdWemRGTnBaMjVwYm1kRFpYSjBhV1pwWTJGMFpUUXdIaGNOTWpBd01qQTBNREF3TURBd1doY05Nakl3TWpBME1EQXdNREF3V2pBaU1TQXdIZ1lEVlFRRERCZFVaWE4wVTJsbmJtbHVaME5sY25ScFptbGpZWFJsTkRDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFBRGdnRVBBRENDQVFvQ2dnRUJBSllGanFuOXVSSFhaSDNQNXVLVGNDSjN1eXNnQ3F3cHpjTG42ZWhqcEVscjFRb3ZYNjdBZWtVeFpBSklhYVBGYXAwd0ZQdStiMWsyY1BIQWx3T1FUYjd2SXFSU2NzRnlnSEFMcVhja1VCR0g2aE1wbDRUZ2JaOGFGSStsV2R1YjFvNytLN2YwTmdwMjVhU2FiZVVramhHTzFKbFpmRktpWkhFUEdodkttQ3lXSzJ2ZVluY3JpOEJCSzMxL2QyTWdJL0RnUVRRZmZ3Y3JFY3Vkb2ZiT0U2a3NqVHBwM2RKdXY2aE5xMGY3VHVhWktIVnZRZVlvcTJXYk9PTVlIeGpyNGpCOGowcEYvdVgyWWI5ZDBQK05YWmFVSi96ekJBbDVCRDRuY1NsL25FZkM2RUIwU2lDOForNFZKZ1ozYzN3N0o5UHBnUk56dDFxV0RwQVFuM2hyNTU4Q0F3RUFBYU9CaGpDQmd6QlJCZ05WSFNNRVNqQklnQlNENGNRZWhYczdaaTZxTlg3U0JIS2FoZU4zZjZFbXBDUXdJakVnTUI0R0ExVUVBd3dYVkdWemRGTnBaMjVwYm1kRFpYSjBhV1pwWTJGMFpUU0NDQVpqbHo3c1Q4RGZNQjBHQTFVZERnUVdCQlNENGNRZWhYczdaaTZxTlg3U0JIS2FoZU4zZnpBUEJnTlZIUk1CQWY4RUJUQURBUUgvTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFBWnNMa3d3QXRRcWcwSGZIVFFiZHZrWDhGNFlrcGpoaTk5c0VzeVlRZVVqVUtFbjlXdmxYNGtRdzFsNmFNa1Zwa3llWXFHU1hSRWZzMTZETTF0RjlFSHZYd29OSlJHbDBvM2ZzL1lKSEFEK3VoUlkyZEhycEtibm9QTlF0V1UzOXZKcDRnc055K1BIdHBhQkMwclZ6MzVkS0xJK1lvZytXMHdzbHovN1pGUkh0N3B3RHcxN3J1WVQzMC82d2FQbzc1LzlmUzNlMno4SXlwaHBLbDFPMThFQVE5YU9laTR0SGR0NG5DOEJ5MUFQUmEzV1ZkNUNZN3Y3RlJVMDlMUGJySE1uc3U5SXBSd2hmRWk5N0ZVN1Q3MW5Qb2RQNDMrbHZoV011anJ2ZWVjbmlGazBUUmhzbGdRYUVzZHI2SVJoMHY0K3JkZ213ZkRCdGxXaEZYQ2R5NzEiXX0sIHsiYWxnIjogIlJTMjU2IiwgImt0eSI6ICJSU0EiLCAidXNlIjogInNpZyIsICJ4NWMiOiBbIk1JSURUVENDQWpXZ0F3SUJBZ0lJSURKQmhlVlRXUjh3RFFZSktvWklodmNOQVFFTEJRQXdJakVnTUI0R0ExVUVBd3dYVkdWemRGTnBaMjVwYm1kRFpYSjBhV1pwWTJGMFpUSXdIaGNOTWpBd01qQTBNREF3TURBd1doY05Nakl3TWpBME1EQXdNREF3V2pBaU1TQXdIZ1lEVlFRRERCZFVaWE4wVTJsbmJtbHVaME5sY25ScFptbGpZWFJsTWpDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFBRGdnRVBBRENDQVFvQ2dnRUJBTU1sWExhbXVaNFhVdzY0eUl4SU9zNXcvblV0TkJ5T3lLNWlXclVsTlFGaHFnaUR1U2Y3WDBWem5kSEdWc0ZLRklsU3R4aHgzejUwdkQ5NHhYSjVPZFlKbW9vNXhaNnFwRnBSd0RUM1VOSHBMZVlnLzN4ZDY4c2VsSnE4cFRoOWkvK09Ndm90Z3FOS3U1Vy9ZRUQwc0taWDFHN1RQN0ErR3RXZXNKYnJDeTlIbGJ2Y0FmUml2VXpyMGJRUWtiN3dOdnNGMEcxdm9ybm94MWpWYWhQclJoMjU5Ymw2bEZFRGkxclI4c3dNTnA1cHpGM0M4SW1aZnc1U0hybEo2K29yLzcyZW9MM2FJWi9aaU5lRzM1T0hxKytaNUU2QVB0V3NVMFlxWlBUN0ZHUWpWWUd5cHBSV0hIRU4rTzNWUnd4dElJUnpaNkxXZnVFUk9UMFE5UlRQK0dzQ0F3RUFBYU9CaGpDQmd6QlJCZ05WSFNNRVNqQklnQlRIR1U4M3cySUpzRk52LzRCVy85ZmVJc1lVZWFFbXBDUXdJakVnTUI0R0ExVUVBd3dYVkdWemRGTnBaMjVwYm1kRFpYSjBhV1pwWTJGMFpUS0NDQ0F5UVlYbFUxa2ZNQjBHQTFVZERnUVdCQlRIR1U4M3cySUpzRk52LzRCVy85ZmVJc1lVZVRBUEJnTlZIUk1CQWY4RUJUQURBUUgvTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFDZGt0M1pwRWNDY21ta295Q0NtWDBwQlNITnVzOHlMcHhXcVl4bnVQcjRnNUpLaFc1akVqZUM0TER4K2RiOTdnSTJlV0I0VCtGdGhIeVd2QTU4WVRlZEpncEtZSHZLa3RyVENYd0x6Ym9xOGEzWHdtNDk4djZpSVI3T1JMbUxSeDh1Z2grSnp4VlUrNlJEY0pFMm9sdWFyeWl2OG5hTWlGWGRUVWlUZjFWdkRZOHRhL2tKL21VWlp1Ny9tQjdYTHphQlFBSFhJTjZJWjNsV3EvNFZXd1lHZnloRE9ZMFJIclZHNDQ1R0tySG5LZk5yM29JMld5T0ovbUltS0N1N1NyYnlWb0dyK25HQ29RQ21pWUtFWDVPRmVWRjZDUE5XcHFpRG85bnRRYlREOW11UmxjRTdYbitEUm5DbFNKaEF2YkpWZXYwbUpBNU5mTUVJK0NVblFJcVAiXX0sIHsiYWxnIjogIlJTMjU2IiwgImt0eSI6ICJSU0EiLCAidXNlIjogInNpZyIsICJ4NWMiOiBbIk1JSURUVENDQWpXZ0F3SUJBZ0lJSzA4TUgydC9NaWN3RFFZSktvWklodmNOQVFFTEJRQXdJakVnTUI0R0ExVUVBd3dYVkdWemRGTnBaMjVwYm1kRFpYSjBhV1pwWTJGMFpUTXdIaGNOTWpBd01qQTBNREF3TURBd1doY05Nakl3TWpBME1EQXdNREF3V2pBaU1TQXdIZ1lEVlFRRERCZFVaWE4wVTJsbmJtbHVaME5sY25ScFptbGpZWFJsTXpDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFBRGdnRVBBRENDQVFvQ2dnRUJBSjV6VlAzcVZiZmlybjRyM01ia2pDSEdTRlBGaURFemsxTWFhazdnU1ZzeFdCTkdNdEpRN291YUVVNVd2cXNPM2xDSWVGVm1uS210NzVvejA3Q2NpTjc1SjFFWXhVV0dyVmg1d0tKcVhDT2RkUVcwNUxmU0hOcGFZUk8zR3RPNU1JZjFkaTRQRUxkdEZ0Qng1TDd2Q2ZhNGx4cTJTN0pVTnMwMThOZk9UQ3dBZTMvNFR1YTRaa2xBdmpmaGtoZyt3cnkzN2RsaElLaEpQU2IvcUhHM2xXWVp3aFAyekZMcjlFbUVZdEJ3cFhRM3IwbUlDc3d0TnAxSWJiQ2s3SW9VZzR1SUtxU3htK2tCRGJOdFJmdWZpOXlWNTlYZXhIbUVNQXdOS24yLzcxMFpJbFNUazRJVmtYaDhSelpybVVhRkM2ajl0bytqbi9HNk9ZL2xxMmtnbXlzQ0F3RUFBYU9CaGpDQmd6QlJCZ05WSFNNRVNqQklnQlFzeUlNZmduWUZweWVoY0tLdWZSdHRYZ1hCTWFFbXBDUXdJakVnTUI0R0ExVUVBd3dYVkdWemRGTnBaMjVwYm1kRFpYSjBhV1pwWTJGMFpUT0NDQ3RQREI5cmZ6SW5NQjBHQTFVZERnUVdCQlFzeUlNZmduWUZweWVoY0tLdWZSdHRYZ1hCTVRBUEJnTlZIUk1CQWY4RUJUQURBUUgvTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFCVUtJNnFhMGNKQjRZcEI2N01RUnQrMlQvSE5hNWxzc0pyNmxGMjRLaXRsUk9RUDZVdVk5SlpHdzM3ekVsSkUvUVNPdDFXVG5waUNnRHFqSzB2Z3hjV0hZSG1IenVNRjBnK1ZpNGZqZXRRbGRjQWhqSmh4cGJlWGJBVk4xUGlxcDZDUUg1MGo5THpaZzkxc2NmdlBpdldDNE9TUzRsQzMwOTlFN3RYZ3p6VzRJa1dGclh0dXlOb0lNQVRkZzljOEFlVmN4cU1WYUpDT2pyTmpOTmNRbzArWldMcVlaTExKUmdnVzFBL1pwUzJ1aW9iTGVHenRpT1hkR3JWV2RaUVNTOFBKQkQ2TWhUN2V3RnErTkpUdjA5R0cxelZiL3lHNGs2dlFIWWV5MmExRGlQbzFldHZLTzJLT2RKSE9hYWJuanZ3L2xsLys3VDZtOGJDb3VvQ0RhQzQiXX0sIHsiYWxnIjogIlJTMjU2IiwgImt0eSI6ICJSU0EiLCAidXNlIjogInNpZyIsICJ4NWMiOiBbIk1JSURUVENDQWpXZ0F3SUJBZ0lJS0VWMmVYeXBOazR3RFFZSktvWklodmNOQVFFTEJRQXdJakVnTUI0R0ExVUVBd3dYVkdWemRGTnBaMjVwYm1kRFpYSjBhV1pwWTJGMFpURXdIaGNOTWpBd01qQTBNREF3TURBd1doY05Nakl3TWpBME1EQXdNREF3V2pBaU1TQXdIZ1lEVlFRRERCZFVaWE4wVTJsbmJtbHVaME5sY25ScFptbGpZWFJsTVRDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFBRGdnRVBBRENDQVFvQ2dnRUJBTHhnN0E1NlBHSGxWTFBjSTJUdVFTUnBjWEVpdUtSK2xhKzdORXdZbHhZZ0FSdy9zMXdtNnZpU2J6VkpPa3ZuNk9NakpMNkVnQkVpcmlJd25aSXBuNktHWjNKVTBrM0pmdTNzTFk2N3pFa045cHpQaDRLVlEzeDJzU085YVVvaDdMUDhmZEJCdkRlajBONEZNK1FQd3VGUms0VzNCWlVocm1EeE5DY21aa2gzVDV5TkQ0QklZVDhZVGNtR28ydnM1c0lXenZ4U1BhMWxoc0h6WisvVmg4OU5qdkdRaVdyQ3pGUlR5NVduNVdPWDBvN2w3dXJ6WTlQZ0xwMENCcTQ4d24yZUNmSWtOVHIwM1BCcE5lK1EyMmc5eDE5VUF1dWFkZnBBQWFpdTdHZDVydmRXZE5tM2dWc05XTU1PR29zR0RhNG5aSXY1MFI2VGRzWlYwZ0greDljQ0F3RUFBYU9CaGpDQmd6QlJCZ05WSFNNRVNqQklnQlFhWU5IMWhmbWNuZzJ5SnlOVG5salo3TllHWXFFbXBDUXdJakVnTUI0R0ExVUVBd3dYVkdWemRGTnBaMjVwYm1kRFpYSjBhV1pwWTJGMFpUR0NDQ2hGZG5sOHFUWk9NQjBHQTFVZERnUVdCQlFhWU5IMWhmbWNuZzJ5SnlOVG5salo3TllHWWpBUEJnTlZIUk1CQWY4RUJUQURBUUgvTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFBd3lwTmE1N0xEb25pQzZ5U1VFd1FTcUlZa3lJOG5NMWpWaktFd29HdlJiOXRBeWhWdTFqRllDNXJiTW1saGFNUGFqWUtWdHhoUDg0TEM4ZHNpVlVKUFNhdUd3L1JwODhQK2pnUm5Kb0tnRXV3c2xFSk41Y1drQTJwdkxaUHpmcy9oNVJOWitOeGdaelMyTlNiNjEyTitFYjRWWXJsZGxPZmdXSG1DUTdNa3BLZTZrODFpcU8yWnN2bHhtWlY0WUh4WlRESVhWU2h3YXpYSnJLZzREVlFZb0J2Q2U0cldJVmNKTzF6c2tIVWRhcHlCS0VveFlFd09RUzY1enJsM0hpR3lKelNpR1gxM0dlWTRDaDRScjJ3NWlYem8vTWZRYnVaUE1VMmovUU5pOS9TajJOMHI3bG9VRXVVbEdTRGs1OWs2cDF4aWRydllzcHZjWVlqY1Y1VmEiXX0sIHsiYWxnIjogIlJTMjU2IiwgImt0eSI6ICJSU0EiLCAidXNlIjogInNpZyIsICJ4NWMiOiBbIk1JSURNRENDQWhpZ0F3SUJBZ0lJSW9PL290TjRDRTh3RFFZSktvWklodmNOQVFFTEJRQXdHVEVYTUJVR0ExVUVBd3dPVG1WM1EyVnlkR2xtYVdOaGRHVXdIaGNOTWpBd01qQTBNREF3TURBd1doY05Nakl3TWpBME1EQXdNREF3V2pBWk1SY3dGUVlEVlFRRERBNU9aWGREWlhKMGFXWnBZMkYwWlRDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFBRGdnRVBBRENDQVFvQ2dnRUJBS1RwMUcrY2o3YmR0WGVDQ08xSVhxaVAxOGltTDhRVDlYVGhOdGRYdjVzbWlrS01NVDI0blNwK0hmMWsyNm82T0hKVVFYTENEOGZHblBWYlZ0VTlHdVhTblhEV0hycHZxbStyQUZoYUtRZFdra1prd3h5cnBVYWYzSzN0Q3loa1FXbTByaTBzUzRoUWVLTlgyTURORm5ha1FCVk13VlV6ZStQaDIveDk3K2h3VkRaMytzVnJSSHdSdENueG9mTy9lUkJDZExSNXVHcWF0MzNUdnI1OHVoNzRzVXJKSUpLc212cHhWdXY5NEZIM0JRcm1RTnl1djBFdHpKMnJsejQwMWdmblErR0tOY0MwNm00bnM3YW9PRDA0U1pBa3VYV2ZTK0xsNmxPNzJSUEpZOGFzYkVVZGpjQTh2a2hCeStuMGJTZFdsK2VRSnJPV0J3aWNPMVYyYytFQ0F3RUFBYU44TUhvd1NBWURWUjBqQkVFd1A0QVU4d1VIdHZScDBHR0V3SS9wYXBrd1pJMjNrTjJoSGFRYk1Ca3hGekFWQmdOVkJBTU1EazVsZDBObGNuUnBabWxqWVhSbGdnZ2lnNytpMDNnSVR6QWRCZ05WSFE0RUZnUVU4d1VIdHZScDBHR0V3SS9wYXBrd1pJMjNrTjB3RHdZRFZSMFRBUUgvQkFVd0F3RUIvekFOQmdrcWhraUc5dzBCQVFzRkFBT0NBUUVBTXJJY2V0L2Q5RVpWeXF0VWY2WlVjMVNoSktzWDhaWnBmMHRIOVRFZnVYWXVKZFFIeHJ4SHhGWEhBOUlxT2M3Ni9Zd1hVUE9FbmM1UlBzVE1FNndkVGMyTE54T2hQSjBrRU9PV01nMTdmVlFzOHlyWTJ4SXgrNFN6WDFkOU96dHdGbms1ekp6SUN0dXRLc010aktIUG5odzduMW0zeStnS2w5aEp0YkV3cTQ1SGZsTFpwZGZXNm5pZk1DSDB3U0tMZzV3S0ZXTmVMSksvdGRVM1IwQ3JiMVR4SWllRm9oVVdTSWNzRUtYVnl6NWt6bHc1UldyVllibnhoVVpoYm5oWFZDY2o1cjc1SFpVd3F6TmswVWFlYkxSVW9wWG81WnBMbkdyU1haaHdwMUVNOWx0d3hhdGwvdGN1UHozUDNEL0ZlZ1NXb0tXRExGV2c5azdTd29lcmhnPT0iXX1dfSwgImV4cCI6IDE1ODA4MjUyMTIsICJpYXQiOiAxNTgwODIxNjEyLCAiaXNzIjogImh0dHA6Ly9sb2NhbGhvc3QuOjgwODAiLCAibmJmIjogMTU4MDgyMTYxMn0.l3mvIYE_-A5iLqUIQhXadadnc0Tt8dr1IpDiRIUELPXEF5TAalwJYSRoWPA6etdlPDU2eQyT0NPVfUKLU2xLobOg5ZwXGbVmE-DPGyqT93gl1CFv2fFkUJe8Vha7NT7O7s8MflB2RwJtGs9i1duuB_yGyt7DxGrE1bT-g_RcUH8" + }, + "400": { + "body": { + "error": { + "code": "400", + "message": "error message" + } + } + }, + "401": { + "description": "Request is unauthorized", + "body": "" + } + } +} diff --git a/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/Get_Certs.json b/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/Get_Certs.json index 4f025f9bb19b..53470d40927b 100644 --- a/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/Get_Certs.json +++ b/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/Get_Certs.json @@ -8,20 +8,20 @@ "body": { "keys": [ { - "x5c": [ - "MIIDazCCAlOgAwIBAgIQR8q7RtYeX6RHhpcFE6HNGDANBgkqhkiG9w0BAQsFADA/MT0wOwYDVQQDEzRodHRwczovL3Rlc3RhdHRlc3RhdGlvbjk5MzQudXMudGVzdC5hdHRlc3QuYXp1cmUubmV0MB4XDTE5MTIxMDAwNDY0OFoXDTIwMTIxMDAwNDY0OFowPzE9MDsGA1UEAxM0aHR0cHM6Ly90ZXN0YXR0ZXN0YXRpb245OTM0LnVzLnRlc3QuYXR0ZXN0LmF6dXJlLm5ldDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAK2v9qLRt313zyzvF3dbPK6AcVO61RhTpRpnlnttwsGIK9A03Rb2bhJLrNsEOHvAPLgSPQWYNrNoeO/X9f9N2w18oZ9ReUIFOj0L0V/trOTYhJJ42f4zsCFz6iX8klqY1vE29y8YL+beqvjXg/8aLaTgs48I+R0coEuJECNADqIL8TCn+UzP1o2tTiH7EKGEG8qpiWRyC25Yl59EITpKrn78v/VMDF6RWkx5uetYDWBXeHi0l48k1lo38BOVOXhJPJvuCKeTSF1Oew7yTsR1QrVviOsnexOTAPtvINYXkLnDzbguNbTfs5FS3RzV017M7kcL3XC+x4B7HkrpvYKUuzsCAwEAAaNjMGEwDgYDVR0PAQH/BAQDAgIEMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFIvByEw07sUvWMMQwiVoU5kDb09eMB8GA1UdIwQYMBaAFIvByEw07sUvWMMQwiVoU5kDb09eMA0GCSqGSIb3DQEBCwUAA4IBAQBM+itN5ZPTA7aRzzfnRNVIoixVrege/jPd5r9caHAQdhdOYy/TOxtpTkxYuP+pvlh/8e3F1zV/72iLjZCUYVQQLTRJ9BenF/AA4YJA2y/48UNHm9c+RauUB/KaxfMUolMQ9rkhGYxMBYhq1N3BitJ0m4WlPVzA0eVf1+UMARocasDUDkfmzAj4MAnee9oIBYOLaHe4La5DrLR7MV5v85rkP5Ed/oqznkyKcDT/OPSE3zwVy18BW6GskeLQ+kaTK/7MZM7nnsHO86Wpvjr4EkZZViupIlj/yQED6vWWnR41mCEN/P3MSoKYK1OQtdyhr0sow+CNSjZxz0ndWj7U6Rq1" - ], - "kid": "fAFUDjo0GcezSay/DP2z+LcPe4g/yjCUUAg88BXbDGw=", - "kty": "RSA" + "x5c": [ + "MIIDazCCAlOgAwIBAgIQR8q7RtYeX6RHhpcFE6HNGDANBgkqhkiG9w0BAQsFADA/MT0wOwYDVQQDEzRodHRwczovL3Rlc3RhdHRlc3RhdGlvbjk5MzQudXMudGVzdC5hdHRlc3QuYXp1cmUubmV0MB4XDTE5MTIxMDAwNDY0OFoXDTIwMTIxMDAwNDY0OFowPzE9MDsGA1UEAxM0aHR0cHM6Ly90ZXN0YXR0ZXN0YXRpb245OTM0LnVzLnRlc3QuYXR0ZXN0LmF6dXJlLm5ldDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAK2v9qLRt313zyzvF3dbPK6AcVO61RhTpRpnlnttwsGIK9A03Rb2bhJLrNsEOHvAPLgSPQWYNrNoeO/X9f9N2w18oZ9ReUIFOj0L0V/trOTYhJJ42f4zsCFz6iX8klqY1vE29y8YL+beqvjXg/8aLaTgs48I+R0coEuJECNADqIL8TCn+UzP1o2tTiH7EKGEG8qpiWRyC25Yl59EITpKrn78v/VMDF6RWkx5uetYDWBXeHi0l48k1lo38BOVOXhJPJvuCKeTSF1Oew7yTsR1QrVviOsnexOTAPtvINYXkLnDzbguNbTfs5FS3RzV017M7kcL3XC+x4B7HkrpvYKUuzsCAwEAAaNjMGEwDgYDVR0PAQH/BAQDAgIEMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFIvByEw07sUvWMMQwiVoU5kDb09eMB8GA1UdIwQYMBaAFIvByEw07sUvWMMQwiVoU5kDb09eMA0GCSqGSIb3DQEBCwUAA4IBAQBM+itN5ZPTA7aRzzfnRNVIoixVrege/jPd5r9caHAQdhdOYy/TOxtpTkxYuP+pvlh/8e3F1zV/72iLjZCUYVQQLTRJ9BenF/AA4YJA2y/48UNHm9c+RauUB/KaxfMUolMQ9rkhGYxMBYhq1N3BitJ0m4WlPVzA0eVf1+UMARocasDUDkfmzAj4MAnee9oIBYOLaHe4La5DrLR7MV5v85rkP5Ed/oqznkyKcDT/OPSE3zwVy18BW6GskeLQ+kaTK/7MZM7nnsHO86Wpvjr4EkZZViupIlj/yQED6vWWnR41mCEN/P3MSoKYK1OQtdyhr0sow+CNSjZxz0ndWj7U6Rq1" + ], + "kid": "fAFUDjo0GcezSay/DP2z+LcPe4g/yjCUUAg88BXbDGw=", + "kty": "RSA" }, { - "x5c": [ - "MIIDcDCCAligAwIBAgIQAMxeVti2SRWf2t71dDYmaTANBgkqhkiG9w0BAQsFADA1MTMwMQYDVQQDEypBdHRlc3RhdGlvblNlcnZpY2UtTG9jYWxUZXN0LVJlcG9ydFNpZ25pbmcwHhcNMTkwNDI0MTYwMjUwWhcNMjEwNDI0MTYxMjUwWjA1MTMwMQYDVQQDEypBdHRlc3RhdGlvblNlcnZpY2UtTG9jYWxUZXN0LVJlcG9ydFNpZ25pbmcwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCww8VBqpnKDXo6W+DJbYOXP3BPIFFQi8XnHC59fIco08l7XLwr6mCY+Zzh9qInAENV7fzRJPt4hluCLoUb1vmTY9VdrvSgR5fX4nALJ4FuCFOeLzsxD+5+jP6L0KOT+Lz/3K5s26QaWv4SCNhEz2vI2ffO31AC5w4qfvV+QTK0pI8t9NoW0Afldd7F0E2UowFLHtwVV4lVBtGszvFiIo4X/NpRkj/8e4/0cQdmFlQFFtP/xKg9XP25EZTHrvsmLHSl3tG1F31Om9qsakkL4plTxaOosn71GzyU6BWIh8ZQgSszyTrY8qw0h8KNAot2v3RQrNVYWAxugYVnHhPspofXAgMBAAGjfDB6MA4GA1UdDwEB/wQEAwIFoDAJBgNVHRMEAjAAMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjAfBgNVHSMEGDAWgBRQCw4UHmsEwWMJKvERNt2nUVnaIDAdBgNVHQ4EFgQUUAsOFB5rBMFjCSrxETbdp1FZ2iAwDQYJKoZIhvcNAQELBQADggEBAJogTjVhZvG85eig5Qkqt72Hpm4YR9d06UYrwo8nQKoRLsOWW01ySOn7phGvb3dxEyXQmTe10U2x1X1gsGFqnXETXGX11oHnDCWtPk4hK+uVI3Uv2qlX1134nUGoicZb2nRicyUSh8+VHY0ZuOmUs95v+HEMIsEM12AbwWZRKB0+MTAW+4cXSR9LTxRm1pwLS+wKd4A2PYi4TLuO6erZBhZ4BbvmsQtdOaulsUJYWvF72fX+jGQF4WS3qiuN4QaI6Tm/ga3Dcgdfd2oBHePTkxLE252zxlKGZ8kx/WdOuVm/1F24e0fC5M67vlFJvq9VB9I+ElMcGponp8REzQamAIU=" - ], - "kid": "81dsh2B8UUKHZ2JXSOQn-VwfQMU", - "kty": "RSA" + "x5c": [ + "MIIDcDCCAligAwIBAgIQAMxeVti2SRWf2t71dDYmaTANBgkqhkiG9w0BAQsFADA1MTMwMQYDVQQDEypBdHRlc3RhdGlvblNlcnZpY2UtTG9jYWxUZXN0LVJlcG9ydFNpZ25pbmcwHhcNMTkwNDI0MTYwMjUwWhcNMjEwNDI0MTYxMjUwWjA1MTMwMQYDVQQDEypBdHRlc3RhdGlvblNlcnZpY2UtTG9jYWxUZXN0LVJlcG9ydFNpZ25pbmcwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCww8VBqpnKDXo6W+DJbYOXP3BPIFFQi8XnHC59fIco08l7XLwr6mCY+Zzh9qInAENV7fzRJPt4hluCLoUb1vmTY9VdrvSgR5fX4nALJ4FuCFOeLzsxD+5+jP6L0KOT+Lz/3K5s26QaWv4SCNhEz2vI2ffO31AC5w4qfvV+QTK0pI8t9NoW0Afldd7F0E2UowFLHtwVV4lVBtGszvFiIo4X/NpRkj/8e4/0cQdmFlQFFtP/xKg9XP25EZTHrvsmLHSl3tG1F31Om9qsakkL4plTxaOosn71GzyU6BWIh8ZQgSszyTrY8qw0h8KNAot2v3RQrNVYWAxugYVnHhPspofXAgMBAAGjfDB6MA4GA1UdDwEB/wQEAwIFoDAJBgNVHRMEAjAAMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjAfBgNVHSMEGDAWgBRQCw4UHmsEwWMJKvERNt2nUVnaIDAdBgNVHQ4EFgQUUAsOFB5rBMFjCSrxETbdp1FZ2iAwDQYJKoZIhvcNAQELBQADggEBAJogTjVhZvG85eig5Qkqt72Hpm4YR9d06UYrwo8nQKoRLsOWW01ySOn7phGvb3dxEyXQmTe10U2x1X1gsGFqnXETXGX11oHnDCWtPk4hK+uVI3Uv2qlX1134nUGoicZb2nRicyUSh8+VHY0ZuOmUs95v+HEMIsEM12AbwWZRKB0+MTAW+4cXSR9LTxRm1pwLS+wKd4A2PYi4TLuO6erZBhZ4BbvmsQtdOaulsUJYWvF72fX+jGQF4WS3qiuN4QaI6Tm/ga3Dcgdfd2oBHePTkxLE252zxlKGZ8kx/WdOuVm/1F24e0fC5M67vlFJvq9VB9I+ElMcGponp8REzQamAIU=" + ], + "kid": "81dsh2B8UUKHZ2JXSOQn-VwfQMU", + "kty": "RSA" } - ] + ] } }, "400": { diff --git a/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/Get_MetadataConfiguration.json b/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/Get_MetadataConfiguration.json index b02fafa04c45..1690d9417d6f 100644 --- a/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/Get_MetadataConfiguration.json +++ b/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/Get_MetadataConfiguration.json @@ -11,20 +11,20 @@ "none" ], "id_token_signing_alg_values_supported": [ - "RS256" + "RS256" ], "revocation_endpoint": "https://mytest.attest.azure.net/revoke", "jwks_uri": "https://mytest.attest.azure.net/certs", "claims_supported": [ - "is-debuggable", - "sgx-mrsigner", - "sgx-mrenclave", - "product-id", - "svn", - "tee", - "device_id", - "component_0_id", - "expected_components" + "is-debuggable", + "sgx-mrsigner", + "sgx-mrenclave", + "product-id", + "svn", + "tee", + "device_id", + "component_0_id", + "expected_components" ] } }, diff --git a/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/Get_Policy.json b/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/Get_Policy.json index fb0da08d47a4..0142b955f43a 100644 --- a/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/Get_Policy.json +++ b/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/Get_Policy.json @@ -20,7 +20,7 @@ }, "401": { "description": "Request is unauthorized", - "body": "" + "body": "" } } } diff --git a/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/Get_PolicyCertificates.json b/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/Get_PolicyCertificates.json new file mode 100644 index 000000000000..df170a7dcbd7 --- /dev/null +++ b/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/Get_PolicyCertificates.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "tenantBaseUrl": "'https://mytest.attest.azure.net'", + "api-version": "2018-09-01-preview" + }, + "responses": { + "200": { + "body": "eyJhbGciOiAiUlMyNTYiLCAiamt1IjogImh0dHA6Ly9sb2NhbGhvc3QuOjg4ODgvb3BlcmF0aW9ucy9SZXRyaWV2ZUF0dGVzdGF0aW9uU2lnbmluZ0NlcnRpZmljYXRlcy9kZWZhdWx0Y2VydHMiLCAia2lkIjogImJTSi95T0wrVzFUbEJEUzNQVjN0bGNvblpCcy9TNVI2NDJLTUMzUlVJUkE9IiwgInR5cCI6ICJKV1QifQ.eyJhYXMtcG9saWN5Q2VydGlmaWNhdGVzIjogeyJrZXlzIjogW3siYWxnIjogIlJTMjU2IiwgImt0eSI6ICJSU0EiLCAidXNlIjogInNpZyIsICJ4NWMiOiBbIk1JSURUVENDQWpXZ0F3SUJBZ0lJQlQ0Yk4vTEp5WkV3RFFZSktvWklodmNOQVFFTEJRQXdJakVnTUI0R0ExVUVBd3dYVkdWemRGTnBaMjVwYm1kRFpYSjBhV1pwWTJGMFpUSXdIaGNOTWpBd01qQTBNREF3TURBd1doY05Nakl3TWpBME1EQXdNREF3V2pBaU1TQXdIZ1lEVlFRRERCZFVaWE4wVTJsbmJtbHVaME5sY25ScFptbGpZWFJsTWpDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFBRGdnRVBBRENDQVFvQ2dnRUJBSmQ5enZ0MXl2d2g1LzJzSmovM1lTbG1IdXEzSkdqcHpjMTMyOWVKUEtvM09Zak1lM1dUcWNrRE9kV1BwS0EyVVBULzdVSW9ZdzdqdUNtcU5ZYjErMDBZY0x2bFhQdTBRTnMwSFo2cVh6bHhoRGNQVWlGTFNneDROQmVneFplM0h6SUlkY3VMR2l4Q0w5Z2szR1dKUDNrZEV2Wkl6N3VjQ08rUFl5Z1BIaXl2Q2xjVDRHZUkvZi8zbmp4RzJWQ2VuZE91UFJaT2ZyNDJ6dTJBWlExalhxN1d2U1VPODZiVnNRSmtHZWRMUFcwMFFzeVRNZzZMODhucUxPa05JU0hkSTdkOVdiZXVwSE1LL01ENHpzclRMa3Z5VTlTZFRoSGlPNGt2Tmd0a3JjUDdDaTNTUWlkTThrVUx0YTVsZUxaWUZ6YzIva0dDU0JybkwxVWErUy9DUndNQ0F3RUFBYU9CaGpDQmd6QlJCZ05WSFNNRVNqQklnQlJIaExVNlNCelU4VytjSlV0TVlJb2FMTjVEOWFFbXBDUXdJakVnTUI0R0ExVUVBd3dYVkdWemRGTnBaMjVwYm1kRFpYSjBhV1pwWTJGMFpUS0NDQVUrR3pmeXljbVJNQjBHQTFVZERnUVdCQlJIaExVNlNCelU4VytjSlV0TVlJb2FMTjVEOVRBUEJnTlZIUk1CQWY4RUJUQURBUUgvTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFCTmpyZkI5K1I2VFZCNEJYUGQ4czlJajVNaXUrc3FzNmVLWW9VYXd3ZnNDT0xieVhOcnR2M1dEYXZBVUJTeVZVeHZiYWdSQzNDK29jcHQxV0tjMitJZFZzT3k1MGNjWldmY2pvNWtCMHVLRmNxcmVXVTlQUWRuMnRsRVlqZzdONGtNcXB4VlJnNGduMUpGRmZIampDbmZodkFTM3IvcE8vc3pLNXF2c0JpMzdPbkJ3OFRMbGw5eUdFekRGQld4Y2RjRGNDNnlGZGFMMENwZ3lQcFdSOXlsR2VDU0ZFeDM4bFRkSEpFa0EzQkJ2bnM3S2dubUs0YzdBV2piWm4zNjl4c3BKNmp6dGZnS1lzTkpZUGNpT3pBV2FlSVdNK3IrdXl6UDhab2hnbFh1V0ViT0FUaDBxL3RydmVLb2VoeGZPN1A3VldnZ0VwZUNVczVmUTJTOU9wUk4iXX0sIHsiYWxnIjogIlJTMjU2IiwgImt0eSI6ICJSU0EiLCAidXNlIjogInNpZyIsICJ4NWMiOiBbIk1JSURUVENDQWpXZ0F3SUJBZ0lJTEZjK25MZTg4dDB3RFFZSktvWklodmNOQVFFTEJRQXdJakVnTUI0R0ExVUVBd3dYVkdWemRGTnBaMjVwYm1kRFpYSjBhV1pwWTJGMFpUTXdIaGNOTWpBd01qQTBNREF3TURBd1doY05Nakl3TWpBME1EQXdNREF3V2pBaU1TQXdIZ1lEVlFRRERCZFVaWE4wVTJsbmJtbHVaME5sY25ScFptbGpZWFJsTXpDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFBRGdnRVBBRENDQVFvQ2dnRUJBSkpFbTVSdHowVmJickV5S1hGWWlxaDFpT2hWSGE3R3IzMklDS1JiVmdkOHFmL1dMMkg1c25NV0IzVElLcGphT0NwZWkyekw0SjJqU3JqZks0ODFvK2dFRklkajhlZEVRNUY0L1VjWngrK1hXQnVHNDcxdnJnYmVFODRISTI2OGR0d1RWZjBLd3FnVHhPaHlpMUlWaWExRGJkaTJDODhkMFF0Rm9QdDlTYXZEdS9ubHA2dTdZaVlPZjhLd2c0Y0QxUDI4Z25qRktwRVVYVnhpTThxTlNxbE5IUjB0byt2UmovQzVpbWFYcnVpaFdZQUZpVzZLNE9UYWdnN2NTQzRnRGZvWWJTM1NLM3ZNYitQbG9BTTB2YlB3MW0zeW5PUlZ3UFpmQXRjVFEyVjYzNmFCcU8xVzZRMUJSeVRCSVJMdXNtYS9oekk2bkZ5VW90ZUpIMlZLT0U4Q0F3RUFBYU9CaGpDQmd6QlJCZ05WSFNNRVNqQklnQlEzdGxISWgyZnlOTSttR25FY0ltd0xnLzZxaXFFbXBDUXdJakVnTUI0R0ExVUVBd3dYVkdWemRGTnBaMjVwYm1kRFpYSjBhV1pwWTJGMFpUT0NDQ3hYUHB5M3ZQTGRNQjBHQTFVZERnUVdCQlEzdGxISWgyZnlOTSttR25FY0ltd0xnLzZxaWpBUEJnTlZIUk1CQWY4RUJUQURBUUgvTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFCTWVTYWNKcXduZXJkV2Q5UVAxVjJTZTk4UFVGL2ozanRZNFNGM3hUOXpMbmpVM0MrYldraHlJaW5rSWRGa0xiTVErMGVyY0kwWHhuZWFOaU9LMWhTWlR4V1NrcjBIOG44R0hIbitNbkZ5R1o4NkhCS3QzOCtCdkxVRTR5Wm94bk5Cb3dxcTdLN09iaWtydVJYQk5VSzdwMlV3MmppM2UyOCtWNnhxV2luc0Q2QzNmRitGbVEzdzdyUFM4Y0FhaVNxT0JTRGtxTWJ2U0tORitLekwzWjNxUStMblVGSVFjNDJtSlJLOWIra3ZZeXR5YWJxN3J2MTQwZmFqMkpQN3JsSFNSVmdjWWxmWUVNeW1PUHludjNVYWZ2YkcxT1JwbkVqOUNwNlMrR0d5TmF1cS9XdlVuQlZ0VE1qZ09GN1hPczE2WnRla3hJN1hqVWN6QUxUZjdhVlUiXX0sIHsiYWxnIjogIlJTMjU2IiwgImt0eSI6ICJSU0EiLCAidXNlIjogInNpZyIsICJ4NWMiOiBbIk1JSURUVENDQWpXZ0F3SUJBZ0lJVGl3eEJLZDdpYll3RFFZSktvWklodmNOQVFFTEJRQXdJakVnTUI0R0ExVUVBd3dYVkdWemRGTnBaMjVwYm1kRFpYSjBhV1pwWTJGMFpURXdIaGNOTWpBd01qQTBNREF3TURBd1doY05Nakl3TWpBME1EQXdNREF3V2pBaU1TQXdIZ1lEVlFRRERCZFVaWE4wVTJsbmJtbHVaME5sY25ScFptbGpZWFJsTVRDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFBRGdnRVBBRENDQVFvQ2dnRUJBSUZ2ejQzK281TWFybkltOG9ZWC9EWmlqV3lFUXdCVnZnN0FlODBRTHZQZEhCcFAwWVZyWlpHQ3cxK1djVzNObm9JK0JJd0lYQyt4aWg3VkpheTd2VUxRUks0bFR2d0c0a1lvWExEa1ZsbXRNK3ZEdXRXamFxVkJqVWpwdEkxOWVOMVNhZzJWQ09qNWdMOXplRWhOakYxVU5wRG92VVdBa3BaZGNmZGw4d0kyUGljajVwNFVLVEJ6UzE5SDQ3Z0l2WC82aHpxa1RmQ2kyV2lobVl3YWlRRFpuTXZvRG9WcVF1QTExMUpXaHh3a3V0NENMTDJBdTZ2UmpqS3Z5MU9DT01zWDFnaTdZaDJ6QloxZ0Jnc1had2ZOdEZWalEvdWNEazJBOEd0MG9KK05mS05hMDlWbFkrdUVuSFMzbzFDZ0JOZTNBc3lGUzZpM1hOam9QSE15MVdjQ0F3RUFBYU9CaGpDQmd6QlJCZ05WSFNNRVNqQklnQlI1czE0Tk9CVVRpWmNVRTVwQ2U5WUl3bzhtcjZFbXBDUXdJakVnTUI0R0ExVUVBd3dYVkdWemRGTnBaMjVwYm1kRFpYSjBhV1pwWTJGMFpUR0NDRTRzTVFTbmU0bTJNQjBHQTFVZERnUVdCQlI1czE0Tk9CVVRpWmNVRTVwQ2U5WUl3bzhtcnpBUEJnTlZIUk1CQWY4RUJUQURBUUgvTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFBWUVaY1YweUR6eVIwdTVGZlk5YjQwdVlmVldheE5hb2ltTnpOTkgwYis1b1FTUGpta0gwQ3VWK01ZdHovRmhLUkFRaThLS1dVd0lQZGpMVVhoV3hONXo2VUlWbWtodmxZYk5hM0pPNEdRSjg5WmQvdGVGWHphUHZjZ1MyeUI1cG0xLzRpdjhCVVQwelRrMWlCcUwrWTg2dlEwaFFCeEFGb3QzSjREYTZZTy93elRWMFl4M25kQmZ2SDduaTc3M0pTSXBXMm5YUndJRWRRSysrZ2srSnJCby9EZWp6NXU2Vkc1STlaZ3VrNWUyRWlSamFsNUNRbERCcEFreFIrVSs2WlpyMzI1WlFCTG5pVi8ySnV4dDhsREZVTWNWbm9tUHR6WUUwVUllSS9lRnpGd283S3JHOFpNOUpudThybzZqQ2x4YmN3NWREcyt4c280SlV6VFJuM1giXX0sIHsiYWxnIjogIlJTMjU2IiwgImt0eSI6ICJSU0EiLCAidXNlIjogInNpZyIsICJ4NWMiOiBbIk1JSURUVENDQWpXZ0F3SUJBZ0lJZGhwaGxkUGNDM0F3RFFZSktvWklodmNOQVFFTEJRQXdJakVnTUI0R0ExVUVBd3dYVkdWemRGTnBaMjVwYm1kRFpYSjBhV1pwWTJGMFpUUXdIaGNOTWpBd01qQTBNREF3TURBd1doY05Nakl3TWpBME1EQXdNREF3V2pBaU1TQXdIZ1lEVlFRRERCZFVaWE4wVTJsbmJtbHVaME5sY25ScFptbGpZWFJsTkRDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFBRGdnRVBBRENDQVFvQ2dnRUJBSXRkRnBLVk5tWnFYbzZKbUFlQlNjVkU1azlMUUtxeWNhTDlwY1BwQUFlTkRKbGtNMEJITGNxa0hHWHdFTVNndjFteU9MYmFRSUNlaFBWTm16ZUVrMXdoZ1phRi9ZVXVPUytTaVIrU1RvbStIVFMwdTBsdE9tak1TK2xMeWVQbVduNis0T2s5US9ZNWFnVzZUaHpHb0VNa21zOFNHRnZyS0x6NEFnd3lkSG9MYjE1ZFczNjE2QzY5OHJhc3JyYzI1VHU5MzJTZ2hhKys4UlBDWkg1QU8wa01xTkRIeWFCbDZGbEp5TUxpRFRDeXJjUEFrZGJpL2Y1UGMrYVhJRzFUcnhCaGsrdkREQ3ByQmtFOUdsRGhaaTVSc2dIWm1oVHovY1kxNmxCM2ZnRjIzem0yaTNaWkdKOWpscy9CWEk3RHc3Vkxqb0Z0eFQreWdoTTgvcWFaMERFQ0F3RUFBYU9CaGpDQmd6QlJCZ05WSFNNRVNqQklnQlJBcW5LMXJ0OFQ0Uzg4cDhjK1ptQ1NmQ0hFUjZFbXBDUXdJakVnTUI0R0ExVUVBd3dYVkdWemRGTnBaMjVwYm1kRFpYSjBhV1pwWTJGMFpUU0NDSFlhWVpYVDNBdHdNQjBHQTFVZERnUVdCQlJBcW5LMXJ0OFQ0Uzg4cDhjK1ptQ1NmQ0hFUnpBUEJnTlZIUk1CQWY4RUJUQURBUUgvTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFBRUNZZTdCdk9OYUVuZm5rNGozcmJqODRvMitoUWFGazVIUVpEVWpRSkNLRExpZ1NBdVBacnVzVkhmcnAxdU9qRGJSWDJXL1JPMzJHMWtSSDc3MnNKaW1hQUZIQ1F0LzlDUDUzbFZoUENubWV6VnhPRkRZdnR4emxkajhhNk9kOWZ3dHp4eVEvQXMzUEpyck9lWFVMamgydkphUE9SZVdBOHpZOVRXSW9aTEkveDFXZG5BeXVtQ3dSTlRWQ0s1Rjlxb24vZGdnYUJwMzBEUGFUdkFxa3lxREhheEZjZmhiYXRDYnU1dGV6aGh3emxyK2s1NkZVVUlpM1hOelRObU1GcUp4cFMycHhVQ0ZFQ3pFN0lEZmVPLzdXL3pzYTJVM1UrVDc3Nzl0WG15UHQ3VXRMYkVYNy9NWGVYZjFIb3ZyWm1VdUY1dFhvM2UrdWpCMmthVzFTd0kiXX1dfSwgImV4cCI6IDE1ODA4MjM2NTQsICJpYXQiOiAxNTgwODIwMDU0LCAiaXNzIjogImh0dHA6Ly9sb2NhbGhvc3QuOjgwODAiLCAibmJmIjogMTU4MDgyMDA1NH0.RaFh8Yx6c_7nwH4ujZRE3aMbkt4u_togfc7xC7cFWjnZY-rYG6W93WC0ypqhw3pg6Fa3tJWUtiGM9rG3EN6ogFxQn10bKwUqEZoQal2xAIZdj2NLA8Xdo5LVCWoTOLJa5rUqGQb56vGTREqcuHzdcD7a6s3I8y5-Hd3HTeskDcI" + }, + "400": { + "body": { + "error": { + "code": "400", + "message": "error message" + } + } + }, + "401": { + "description": "Request is unauthorized", + "body": "" + } + } +} diff --git a/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/Remove_PolicyCertificate.json b/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/Remove_PolicyCertificate.json new file mode 100644 index 000000000000..9dbebafcc28b --- /dev/null +++ b/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/Remove_PolicyCertificate.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "tenantBaseUrl": "'https://mytest.attest.azure.net'", + "api-version": "2018-09-01-preview", + "policyCertificateToRemove": "eyAiYWxnIjoiUlMyNTYiLCAieDVjIjogWyJNSUlEVFRDQ0FqV2dBd0lCQWdJSU40eUdrS3c5L0U4d0RRWUpLb1pJaHZjTkFRRUxCUUF3SWpFZ01CNEdBMVVFQXd3WFZHVnpkRk5wWjI1cGJtZERaWEowYVdacFkyRjBaVEl3SGhjTk1qQXdNakEwTURBd01EQXdXaGNOTWpJd01qQTBNREF3TURBd1dqQWlNU0F3SGdZRFZRUUREQmRVWlhOMFUybG5ibWx1WjBObGNuUnBabWxqWVhSbE1qQ0NBU0l3RFFZSktvWklodmNOQVFFQkJRQURnZ0VQQURDQ0FRb0NnZ0VCQUtXWHIwc09KS1AyQm9TSHNyNXkvT1l1bVFwblVDaFRpcGtEVTB6Y1pJeFlZUElQbk9hL3dYT0RVazJocFd4NDZsTWxPcmtGMFdTUDA0NnRHN1g3TGluOVpGQ1ZMeFZ2M0V5WkJZbkxqNGpmWHUzWEtZalRmSlJyVzFrR1RRS1lzVGJub0s1bWh1NG1HUjJpeFByUUIyR0xxeVBxQzZYVjZISXNBUFBYdEpRWEFrMW9wMWkrOTJRNFIwM0EzTFhEY1RLdHRhckFrZzJmK2R2Ym1rcGJRSVJTQk1lZHNaZGMvdi8vYnVsWUgrQ0VNZVZxT1BkaFRCUjNBTHQxdGtTQ0VzN2Y1V0s4bUF4RzM1Q3daRkdORjVWSG5PeENXNTBJalFqUGJMWFRwMS9ad3g0V21obVBzb2V1OEo0UlZpZGpjYmRQRk81dHB3SnZFMGVzZEZoQXlNY0NBd0VBQWFPQmhqQ0JnekJSQmdOVkhTTUVTakJJZ0JUdlArbDQxZU0va3pheDJlNTlFSmp6TE1LTGJhRW1wQ1F3SWpFZ01CNEdBMVVFQXd3WFZHVnpkRk5wWjI1cGJtZERaWEowYVdacFkyRjBaVEtDQ0RlTWhwQ3NQZnhQTUIwR0ExVWREZ1FXQkJUdlArbDQxZU0va3pheDJlNTlFSmp6TE1LTGJUQVBCZ05WSFJNQkFmOEVCVEFEQVFIL01BMEdDU3FHU0liM0RRRUJDd1VBQTRJQkFRQ2hOWUJweUs5UndLSVNHUWZQdFVYM2VPWTlvVEtvS1NXUjMzdCtwUVYwSGszZXg5U0dRVFZFNkVnaFduRXRqQUdIWVNSY0txc0xOclduS0MvVnJoSGNneE1ianVhSHNaR1dDREhXSGhrMEk4RWZrSWdzV1NRNDZPdlZTRUgrY2laSmhXaCt1RUZmK3RnalJsdHhSS1hZNU4wSVJRQW92Qno1UWN4alFYcnJZelZGT1htSWZjeVJhT2lUOVJRUW5wWG1NYnR2b25FYjQrR1FOWG53Rll4dWs2Nk5yamhuT1ZWRm9YU2plN1h3WXpPZ0dxY0ljUURQbnROeFlpU3UrYzYyKzV3WjduaUJlRzlVVDJLQVI4Sm9nSXduRGJOa1F6ZE5QWEhoUTJ1V24rMG9Ec0lDL1lvN0RHMW44WFBJeHJtR00xOHpVWENmSjI1c1VKV2ZlSGx4Il19.eyJhYXMtcG9saWN5Q2VydGlmaWNhdGUiOiB7Imt0eSI6IlJTQSIsICJ4NWMiOlsiTUlJRFRUQ0NBaldnQXdJQkFnSUlYcTd4SENIT0VmTXdEUVlKS29aSWh2Y05BUUVMQlFBd0lqRWdNQjRHQTFVRUF3d1hWR1Z6ZEZOcFoyNXBibWREWlhKMGFXWnBZMkYwWlRNd0hoY05NakF3TWpBME1EQXdNREF3V2hjTk1qSXdNakEwTURBd01EQXdXakFpTVNBd0hnWURWUVFEREJkVVpYTjBVMmxuYm1sdVowTmxjblJwWm1sallYUmxNekNDQVNJd0RRWUpLb1pJaHZjTkFRRUJCUUFEZ2dFUEFEQ0NBUW9DZ2dFQkFMUTNvanZxcEFNVmllWTJoUW9YeWdYR3NnWWhMUi9nN1laQUhOOXEyMGt3dHEwOEdUNkVzaFNtZDV0b2srQThtUFNwSGFCZmJaRmx0SVF4N2dqUktVcXlkMWJmeU1Ddjh6Tm5nSWhFVGxWdzhDMjdXNmtIT1NITWFjQkNKR2FNSDF1blVjajNCNDlUL0U0bDRpWDUwK0NIYUdTOTNOaGliVENka3VOMlcwbW53VnU1RlZsSjRpd0txNUxMdXMrRklOSGVEOVRVRlVUZDFLV1NzMFduMHNvZlFQVks0dFU0d1lWQTQwZ1JRNGV3ZlpFbGlFbHE5Z2J1Y2VqcHZxNG0vL0ZtQWJ0SW5STjdoMU53M1ZrYUR0Vm5nVGVUeGhISHIra3FMVmUzK1dWMDJCYjFZL012QWNZZjV1Nm5aYmRGTnNzYUR2M1BqYVArYVJUYnBsTjhCdWNDQXdFQUFhT0JoakNCZ3pCUkJnTlZIU01FU2pCSWdCU1hFZWNuUExFOUVVaVBSVk1kWFNRNmV0YWQ4S0VtcENRd0lqRWdNQjRHQTFVRUF3d1hWR1Z6ZEZOcFoyNXBibWREWlhKMGFXWnBZMkYwWlRPQ0NGNnU4UndoemhIek1CMEdBMVVkRGdRV0JCU1hFZWNuUExFOUVVaVBSVk1kWFNRNmV0YWQ4REFQQmdOVkhSTUJBZjhFQlRBREFRSC9NQTBHQ1NxR1NJYjNEUUVCQ3dVQUE0SUJBUUJNUnRrbUl6dlZpNm1TSEJmSW1ZOTdWV25IMm5IWVlwTzY0QnVhditRdHo5YlFPNTJieE5DekI5ZmJLZ1hjLzEzbUpEdndaWWFLRnNpSXV2SEwvUTlDTERYL3dmTDljZkZrRGttTkFGUysvSll1dVVja3NUOFdraWRYc3FKNWd1V3NzMmdsM1lrSEFQLzBZd1k2QVhFOGpFeHdJZDgySFduT2ZVNCtlcXUwOEZNYkNTdFRuZ2FJSVNUOGpESFNNQUJCOENKRUViM0pXTDJDUzJWK2NqR3Z3cUNFWXh5Vy9aN0JsZThzTnVFZG80d2l2WFNiYTF4L201VU9pREtud3pQTzQxNWNudDM1WjRpaE4yVVVCdEJwZGtqZytURVh2TWQ4QmNOblcrcEFMYXI2WU0vR0FWTzA5VE16SmZSeit0Q1BVUDNJQTlVUHV5dWFXNlFub2o3biJdfX0.E7_ofG66BPwims3yq0_nvgs1Hj5vY0Ko6cx9r7V9MxKEXYkmOCwH-y6uru5-GwZCVyb2xuU-vaExOHax0z72-disRSXSAUZk5wVgv99ZgSIdeGYq4gX6J4AkjgSe0FmzhKE--cGix6XhKH8XVRWXcp5UPv0Z5uejkIqQkIc7RpvftG-JAqqQQg5o3kLkK6jYMUQtYJHwxxpBA6PO7Z-bDJuiWkUJXFAWordn-yAWqNSPk8wEGDEnupTtyt4b6AFSJSqWCIt_IvqxR9O7QIy9mgnGj5kyVgV8O0xcRRsnZgfFdjc839UG92gyIw7SR0yQ0ELzXxc_7Suhf9y6Oyp4rg" + }, + "responses": { + "200": { + "body": "eyJhbGciOiAiUlMyNTYiLCAiamt1IjogImh0dHA6Ly9sb2NhbGhvc3QuOjg4ODgvb3BlcmF0aW9ucy9SZXRyaWV2ZUF0dGVzdGF0aW9uU2lnbmluZ0NlcnRpZmljYXRlcy9kZWZhdWx0Y2VydHMiLCAia2lkIjogImsvaExrYXUvSWRzSmZ0dVlZMUxDVXVXUDZKMUV4Yjk1MFJwSDZnM0c3ems9IiwgInR5cCI6ICJKV1QifQ.eyJhYXMtcG9saWN5Q2VydGlmaWNhdGVzIjogeyJrZXlzIjogW3siYWxnIjogIlJTMjU2IiwgImt0eSI6ICJSU0EiLCAidXNlIjogInNpZyIsICJ4NWMiOiBbIk1JSURUVENDQWpXZ0F3SUJBZ0lJQWxuOGp0NjJWQUF3RFFZSktvWklodmNOQVFFTEJRQXdJakVnTUI0R0ExVUVBd3dYVkdWemRGTnBaMjVwYm1kRFpYSjBhV1pwWTJGMFpURXdIaGNOTWpBd01qQTBNREF3TURBd1doY05Nakl3TWpBME1EQXdNREF3V2pBaU1TQXdIZ1lEVlFRRERCZFVaWE4wVTJsbmJtbHVaME5sY25ScFptbGpZWFJsTVRDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFBRGdnRVBBRENDQVFvQ2dnRUJBTEowVkprNldxNk9QdGZJOVFjaWlRb3VTdjA5ejd6Rjg5L2xXSXVPMWdleVk2VWEzZjYxenVDTXovc1hjY2gvZVVna2pGcUlNaUhmN3dOU0pDQTRoWnZlT0dpanZydXMxcm1zSFcxaDFzOHdZWGx1MzhibnAzRnl2T0cwR0lhS3JqanRXbUtVSXpFekgwQ2dwNG5rN0R1SmRPT284SDY0a1BZNVE3cUVPU2NTUkQycVhGMDRpWGZmK3VOMk5xOHl2T1Q2TkN1azRsc0tVMUQxWHZWcENJTnVqSXpiY0prTHU3QzJMUmM4eE10RFJ0WEM2dldqanRVVUNpcFRZQlhzRnZoV3pRUVVXUmFYUnNQaXc2cEh3bDJsYko1cnBabWxVSWJ4RTFKZU5PNnlOVFZ0UTltVVlsU3Y0aVJGektpTWJqbDFpekp2cllQNGRrbXZVV2ZZMDRNQ0F3RUFBYU9CaGpDQmd6QlJCZ05WSFNNRVNqQklnQlI4UTRpaitpNUFwQXZxK0NQWEtJemd6cTBiSmFFbXBDUXdJakVnTUI0R0ExVUVBd3dYVkdWemRGTnBaMjVwYm1kRFpYSjBhV1pwWTJGMFpUR0NDQUpaL0k3ZXRsUUFNQjBHQTFVZERnUVdCQlI4UTRpaitpNUFwQXZxK0NQWEtJemd6cTBiSlRBUEJnTlZIUk1CQWY4RUJUQURBUUgvTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFBVzFicDZiL0hGZm45c3lWMmFpOEJrMTRFRDVpZURXaHAxMXBuaTA3eUU1WXRqdzNiUFIweThNYWF2WmF3dnlnL1EyTjJwaFU4dnVkeDRBeTc5YVdlZUsramNiQzF3RnhrUnNsWU1JSWFsdVJSUHNVbXhLMTFQc3F6eXBMdnlQZjM5UjZ0NWczOSs5OEtleVp5M000NE5OSGxjNkZ0djBQV3hIN2NRRVlXR0t1b0RuL3ByMjRjaFFwZnRCVTMvTFdSaU56a3l5bFBZTjE3b3ZUcnROUDlNbTdGd0JwTE80U0VWYTRsR3R3ZlJVV1RhZHp4ellISTUyN2ZDZW5QWDhML1lDTmZsaVhXaHFicWJXRU5pVExTaG5xQTBWV1JQcTdYMXpaM2p1ZmlzMWFKbXQ5dkNZQk05OWkySUVyV0hjNGhyYWRlaitjejU4bmE4TSt0K08rYVUiXX0sIHsiYWxnIjogIlJTMjU2IiwgImt0eSI6ICJSU0EiLCAidXNlIjogInNpZyIsICJ4NWMiOiBbIk1JSURUVENDQWpXZ0F3SUJBZ0lJTjR5R2tLdzkvRTh3RFFZSktvWklodmNOQVFFTEJRQXdJakVnTUI0R0ExVUVBd3dYVkdWemRGTnBaMjVwYm1kRFpYSjBhV1pwWTJGMFpUSXdIaGNOTWpBd01qQTBNREF3TURBd1doY05Nakl3TWpBME1EQXdNREF3V2pBaU1TQXdIZ1lEVlFRRERCZFVaWE4wVTJsbmJtbHVaME5sY25ScFptbGpZWFJsTWpDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFBRGdnRVBBRENDQVFvQ2dnRUJBS1dYcjBzT0pLUDJCb1NIc3I1eS9PWXVtUXBuVUNoVGlwa0RVMHpjWkl4WVlQSVBuT2Evd1hPRFVrMmhwV3g0NmxNbE9ya0YwV1NQMDQ2dEc3WDdMaW45WkZDVkx4VnYzRXlaQlluTGo0amZYdTNYS1lqVGZKUnJXMWtHVFFLWXNUYm5vSzVtaHU0bUdSMml4UHJRQjJHTHF5UHFDNlhWNkhJc0FQUFh0SlFYQWsxb3AxaSs5MlE0UjAzQTNMWERjVEt0dGFyQWtnMmYrZHZibWtwYlFJUlNCTWVkc1pkYy92Ly9idWxZSCtDRU1lVnFPUGRoVEJSM0FMdDF0a1NDRXM3ZjVXSzhtQXhHMzVDd1pGR05GNVZIbk94Q1c1MElqUWpQYkxYVHAxL1p3eDRXbWhtUHNvZXU4SjRSVmlkamNiZFBGTzV0cHdKdkUwZXNkRmhBeU1jQ0F3RUFBYU9CaGpDQmd6QlJCZ05WSFNNRVNqQklnQlR2UCtsNDFlTS9remF4MmU1OUVKanpMTUtMYmFFbXBDUXdJakVnTUI0R0ExVUVBd3dYVkdWemRGTnBaMjVwYm1kRFpYSjBhV1pwWTJGMFpUS0NDRGVNaHBDc1BmeFBNQjBHQTFVZERnUVdCQlR2UCtsNDFlTS9remF4MmU1OUVKanpMTUtMYlRBUEJnTlZIUk1CQWY4RUJUQURBUUgvTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFDaE5ZQnB5SzlSd0tJU0dRZlB0VVgzZU9ZOW9US29LU1dSMzN0K3BRVjBIazNleDlTR1FUVkU2RWdoV25FdGpBR0hZU1JjS3FzTE5yV25LQy9WcmhIY2d4TWJqdWFIc1pHV0NESFdIaGswSThFZmtJZ3NXU1E0Nk92VlNFSCtjaVpKaFdoK3VFRmYrdGdqUmx0eFJLWFk1TjBJUlFBb3ZCejVRY3hqUVhycll6VkZPWG1JZmN5UmFPaVQ5UlFRbnBYbU1idHZvbkViNCtHUU5YbndGWXh1azY2TnJqaG5PVlZGb1hTamU3WHdZek9nR3FjSWNRRFBudE54WWlTdStjNjIrNXdaN25pQmVHOVVUMktBUjhKb2dJd25EYk5rUXpkTlBYSGhRMnVXbiswb0RzSUMvWW83REcxbjhYUEl4cm1HTTE4elVYQ2ZKMjVzVUpXZmVIbHgiXX0sIHsiYWxnIjogIlJTMjU2IiwgImt0eSI6ICJSU0EiLCAidXNlIjogInNpZyIsICJ4NWMiOiBbIk1JSURUVENDQWpXZ0F3SUJBZ0lJUi9xbVV5ekwvUnd3RFFZSktvWklodmNOQVFFTEJRQXdJakVnTUI0R0ExVUVBd3dYVkdWemRGTnBaMjVwYm1kRFpYSjBhV1pwWTJGMFpUUXdIaGNOTWpBd01qQTBNREF3TURBd1doY05Nakl3TWpBME1EQXdNREF3V2pBaU1TQXdIZ1lEVlFRRERCZFVaWE4wVTJsbmJtbHVaME5sY25ScFptbGpZWFJsTkRDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFBRGdnRVBBRENDQVFvQ2dnRUJBS2JOWEJvVFEyMjRsdFQ3bmJNdlZvMmtlZ0FEWHB5Q3FKeG5CNzNEbkU5cWJxaHAwMWNxaDZLT0tZamdiYlNvZ1Jmd0V1MElkc3BqZ2Z6N1VwU0Fjdk9XcDd4ckswa3JVZ0RveXVnVmtWY29OdEY1dnd5eHFQQWZrazJENnluWXpKTCtrQzl2dTVUU054S1ZMQWdJMnl1QW82NDdjQXkxRDdEWWpZT0pISytObXdNYkhFTldJNFh5VEd1L1FHeHZSbmNvaUhGbUNrK3RoYVdEaTl2U3BwV2ZoR01CMExTV1RXOXhrQVc4WVdLREhlbzN2YjIvV3REYUU0M2s4RUZuMFBrcGxzdlQveFpjMDMrZCtkdU5HY1NYNlJsdkp5WVlaNXRkdFFPYWlTck90SU50MytHZ1oyL1hEVlBJNS93a0JhTFk3Yy92YWxHYXFvbVF3dkNucmdjQ0F3RUFBYU9CaGpDQmd6QlJCZ05WSFNNRVNqQklnQlJvbVU3Vk9hTlIwNUVFQmlFTG10bG91REJlajZFbXBDUXdJakVnTUI0R0ExVUVBd3dYVkdWemRGTnBaMjVwYm1kRFpYSjBhV1pwWTJGMFpUU0NDRWY2cGxNc3kvMGNNQjBHQTFVZERnUVdCQlJvbVU3Vk9hTlIwNUVFQmlFTG10bG91REJlanpBUEJnTlZIUk1CQWY4RUJUQURBUUgvTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFDTTdBNXRQMkRldUwwNXQyeFpMdVBtZEx4a1RsNlBzNWJvbXNLZUwveDNrWFJDTjRwbVZPUGNZY09LaURxV3NmSnl3b205S2RtUVJqdzBCVVBTemhvOGZmeEM4ZmZxRFcyYTljNzV5WjVLSDBXenA1TnpFT28zZStlY2xEZDIwYmEzVDUrMEZYOExMTmFybEUvSGhzS1pUa05PeVpDQlJWNTA5anZOdlpYYW5odC9IWGlRUU8xTzkvYXd4OUpvSExhb08yZmY1ODdSZlE5NkovTUlPQk1pTGx2bTZiK2hSaVdCTVVBbHdUNUdlSTVCd1ZmUkJNNm1qOE8raVkrNkJRQ1AydXJnVGh1NHRtTEU4NWlwNUhQcUxZYjFxUkV6SEVmRVFyaFRFNU1mVHA3Rmd3THJWMlUyNnVmbktBNlBoZkJib0NsZ21abE5xdnFDYStraW1meWUiXX1dfSwgImV4cCI6IDE1ODA4MjU4MzAsICJpYXQiOiAxNTgwODIyMjMwLCAiaXNzIjogImh0dHA6Ly9sb2NhbGhvc3QuOjgwODAiLCAibmJmIjogMTU4MDgyMjIzMH0.sge6kefSMKfd5tZNwPjpPyqFy2__HvcCkJdxAyP5hx7JrZPnXNSe5gObEf2X2mswjNitMG5ttxvwZFMG-uC62gVzRL6I3utlgq6UbgHKgUq9Pq1cJeU0fCreHA6nHhKytoYuDwUSY_QuHsdDafhaS5qsmBQRfMGwdtdAVOkGIx0" + }, + "400": { + "body": { + "error": { + "code": "400", + "message": "error message" + } + } + }, + "401": { + "description": "Request is unauthorized", + "body": "" + } + } +} diff --git a/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/Reset_Policy.json b/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/Reset_Policy.json index dc1b591b21d4..b4ab4fac002f 100644 --- a/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/Reset_Policy.json +++ b/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/Reset_Policy.json @@ -7,8 +7,8 @@ }, "responses": { "200": { - "body": "eyJhbGciOiAiUlMyNTYiLCAiamt1IjogImh0dHA6Ly9sb2NhbGhvc3Q6ODA4MC9jZXJ0cyIsICJraWQiOiAieWtJd00rcnRNcnhFZkZJVHY2TGZjVG03eWszUkxXRXBkN1lsZmJyTk1JST0iLCAidHlwIjogIkpXVCJ9.eyJhYXMtcG9saWN5SGFzaCI6ICJ2MG9QNG9KWkVKWnh4SXhFNmJiVVAxa1JSbWVfZXgtUHV4NlF0c1U4STdNIiwgImV4cCI6IDE1NzM4NjI5NzQsICJpYXQiOiAxNTczODU5Mzc0LCAiaXNzIjogImh0dHA6Ly9sb2NhbGhvc3Q6ODA4MCIsICJuYmYiOiAxNTczODU5Mzc0fQ.FTMpKwZHJa5l9_Mdxl60FtSDOr9kLRDYw3UAofMXJ-eOEvm4FdNM69YHR6Oy_i1uUEnVDAnMHhR0APTXgKqoR7gDxxfJG_RgiQqsTmQ-ucmXNL2Ck--sH3bz9OfIocPYSN0FBWiq6fgG6iX_oMX1hs-ENsF7B3jSp1nVL8NWtWk" - }, + "body": "eyJhbGciOiAiUlMyNTYiLCAiamt1IjogImh0dHA6Ly9sb2NhbGhvc3Q6ODA4MC9jZXJ0cyIsICJraWQiOiAieWtJd00rcnRNcnhFZkZJVHY2TGZjVG03eWszUkxXRXBkN1lsZmJyTk1JST0iLCAidHlwIjogIkpXVCJ9.eyJhYXMtcG9saWN5SGFzaCI6ICJ2MG9QNG9KWkVKWnh4SXhFNmJiVVAxa1JSbWVfZXgtUHV4NlF0c1U4STdNIiwgImV4cCI6IDE1NzM4NjI5NzQsICJpYXQiOiAxNTczODU5Mzc0LCAiaXNzIjogImh0dHA6Ly9sb2NhbGhvc3Q6ODA4MCIsICJuYmYiOiAxNTczODU5Mzc0fQ.FTMpKwZHJa5l9_Mdxl60FtSDOr9kLRDYw3UAofMXJ-eOEvm4FdNM69YHR6Oy_i1uUEnVDAnMHhR0APTXgKqoR7gDxxfJG_RgiQqsTmQ-ucmXNL2Ck--sH3bz9OfIocPYSN0FBWiq6fgG6iX_oMX1hs-ENsF7B3jSp1nVL8NWtWk" + }, "400": { "body": { "error": { @@ -19,7 +19,7 @@ }, "401": { "description": "Request is unauthorized", - "body": "" + "body": "" } } } diff --git a/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/Set_Policy.json b/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/Set_Policy.json index dfa783bcea50..fe207243c8ee 100644 --- a/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/Set_Policy.json +++ b/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/Set_Policy.json @@ -11,15 +11,15 @@ }, "400": { "body": { - "error": { - "code": "400", - "message": "error message" - } + "error": { + "code": "400", + "message": "error message" + } } }, "401": { "description": "Request is unauthorized", - "body": "" + "body": "" } } } diff --git a/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/UpdatePolicy.json b/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/UpdatePolicy.json index eec66be114fd..3720a201b975 100644 --- a/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/UpdatePolicy.json +++ b/specification/attestation/data-plane/Microsoft.Attestation/preview/2018-09-01-preview/examples/UpdatePolicy.json @@ -3,12 +3,12 @@ "tenantBaseUrl": "'https://mytest.attest.azure.net'", "api-version": "2018-09-01-preview", "tee": "SgxEnclave", - "PolicyJws": "eyJhbGciOiJub25lIn0.eyJBdHRlc3RhdGlvblBvbGljeSI6ICJ7XHJcbiAgICBcIiR2ZXJzaW9uXCI6IDEsXHJcbiAgICBcIiRhbGxvdy1kZWJ1Z2dhYmxlXCIgOiB0cnVlLFxyXG4gICAgXCIkY2xhaW1zXCI6W1xyXG4gICAgICAgIFwiaXMtZGVidWdnYWJsZVwiICxcclxuICAgICAgICBcInNneC1tcnNpZ25lclwiLFxyXG4gICAgICAgIFwic2d4LW1yZW5jbGF2ZVwiLFxyXG4gICAgICAgIFwicHJvZHVjdC1pZFwiLFxyXG4gICAgICAgIFwic3ZuXCIsXHJcbiAgICAgICAgXCJ0ZWVcIixcclxuICAgICAgICBcIk5vdERlYnVnZ2FibGVcIlxyXG4gICAgXSxcclxuICAgIFwiTm90RGVidWdnYWJsZVwiOiB7XCJ5ZXNcIjp7XCIkaXMtZGVidWdnYWJsZVwiOnRydWUsIFwiJG1hbmRhdG9yeVwiOnRydWUsIFwiJHZpc2libGVcIjpmYWxzZX19LFxyXG4gICAgXCJpcy1kZWJ1Z2dhYmxlXCIgOiBcIiRpcy1kZWJ1Z2dhYmxlXCIsXHJcbiAgICBcInNneC1tcnNpZ25lclwiIDogXCIkc2d4LW1yc2lnbmVyXCIsXHJcbiAgICBcInNneC1tcmVuY2xhdmVcIiA6IFwiJHNneC1tcmVuY2xhdmVcIixcclxuICAgIFwicHJvZHVjdC1pZFwiIDogXCIkcHJvZHVjdC1pZFwiLFxyXG4gICAgXCJzdm5cIiA6IFwiJHN2blwiLFxyXG4gICAgXCJ0ZWVcIiA6IFwiJHRlZVwiXHJcbn0ifQ." + "PolicyJws": "eyJhbGciOiJub25lIn0.eyJBdHRlc3RhdGlvblBvbGljeSI6ICJ7XHJcbiAgICBcIiR2ZXJzaW9uXCI6IDEsXHJcbiAgICBcIiRhbGxvdy1kZWJ1Z2dhYmxlXCIgOiB0cnVlLFxyXG4gICAgXCIkY2xhaW1zXCI6W1xyXG4gICAgICAgIFwiaXMtZGVidWdnYWJsZVwiICxcclxuICAgICAgICBcInNneC1tcnNpZ25lclwiLFxyXG4gICAgICAgIFwic2d4LW1yZW5jbGF2ZVwiLFxyXG4gICAgICAgIFwicHJvZHVjdC1pZFwiLFxyXG4gICAgICAgIFwic3ZuXCIsXHJcbiAgICAgICAgXCJ0ZWVcIixcclxuICAgICAgICBcIk5vdERlYnVnZ2FibGVcIlxyXG4gICAgXSxcclxuICAgIFwiTm90RGVidWdnYWJsZVwiOiB7XCJ5ZXNcIjp7XCIkaXMtZGVidWdnYWJsZVwiOnRydWUsIFwiJG1hbmRhdG9yeVwiOnRydWUsIFwiJHZpc2libGVcIjpmYWxzZX19LFxyXG4gICAgXCJpcy1kZWJ1Z2dhYmxlXCIgOiBcIiRpcy1kZWJ1Z2dhYmxlXCIsXHJcbiAgICBcInNneC1tcnNpZ25lclwiIDogXCIkc2d4LW1yc2lnbmVyXCIsXHJcbiAgICBcInNneC1tcmVuY2xhdmVcIiA6IFwiJHNneC1tcmVuY2xhdmVcIixcclxuICAgIFwicHJvZHVjdC1pZFwiIDogXCIkcHJvZHVjdC1pZFwiLFxyXG4gICAgXCJzdm5cIiA6IFwiJHN2blwiLFxyXG4gICAgXCJ0ZWVcIiA6IFwiJHRlZVwiXHJcbn0ifQ." }, "responses": { "200": { - "body": "eyJhbGciOiAiUlMyNTYiLCAiamt1IjogImh0dHA6Ly9sb2NhbGhvc3Q6ODA4MC9jZXJ0cyIsICJraWQiOiAieWtJd00rcnRNcnhFZkZJVHY2TGZjVG03eWszUkxXRXBkN1lsZmJyTk1JST0iLCAidHlwIjogIkpXVCJ9.eyJhYXMtcG9saWN5SGFzaCI6ICJ2MG9QNG9KWkVKWnh4SXhFNmJiVVAxa1JSbWVfZXgtUHV4NlF0c1U4STdNIiwgImV4cCI6IDE1NzM4NjI5NzQsICJpYXQiOiAxNTczODU5Mzc0LCAiaXNzIjogImh0dHA6Ly9sb2NhbGhvc3Q6ODA4MCIsICJuYmYiOiAxNTczODU5Mzc0fQ.FTMpKwZHJa5l9_Mdxl60FtSDOr9kLRDYw3UAofMXJ-eOEvm4FdNM69YHR6Oy_i1uUEnVDAnMHhR0APTXgKqoR7gDxxfJG_RgiQqsTmQ-ucmXNL2Ck--sH3bz9OfIocPYSN0FBWiq6fgG6iX_oMX1hs-ENsF7B3jSp1nVL8NWtWk" - }, + "body": "eyJhbGciOiAiUlMyNTYiLCAiamt1IjogImh0dHA6Ly9sb2NhbGhvc3Q6ODA4MC9jZXJ0cyIsICJraWQiOiAieWtJd00rcnRNcnhFZkZJVHY2TGZjVG03eWszUkxXRXBkN1lsZmJyTk1JST0iLCAidHlwIjogIkpXVCJ9.eyJhYXMtcG9saWN5SGFzaCI6ICJ2MG9QNG9KWkVKWnh4SXhFNmJiVVAxa1JSbWVfZXgtUHV4NlF0c1U4STdNIiwgImV4cCI6IDE1NzM4NjI5NzQsICJpYXQiOiAxNTczODU5Mzc0LCAiaXNzIjogImh0dHA6Ly9sb2NhbGhvc3Q6ODA4MCIsICJuYmYiOiAxNTczODU5Mzc0fQ.FTMpKwZHJa5l9_Mdxl60FtSDOr9kLRDYw3UAofMXJ-eOEvm4FdNM69YHR6Oy_i1uUEnVDAnMHhR0APTXgKqoR7gDxxfJG_RgiQqsTmQ-ucmXNL2Ck--sH3bz9OfIocPYSN0FBWiq6fgG6iX_oMX1hs-ENsF7B3jSp1nVL8NWtWk" + }, "400": { "body": { "error": { @@ -19,7 +19,7 @@ }, "401": { "description": "Request is unauthorized", - "body": "" + "body": "" } } } diff --git a/specification/attestation/data-plane/readme.md b/specification/attestation/data-plane/readme.md index 1963b714e4da..f382f8bb7b01 100644 --- a/specification/attestation/data-plane/readme.md +++ b/specification/attestation/data-plane/readme.md @@ -22,18 +22,11 @@ Following are the settings for using this specification with [AutoRest](https:// ### Suppression -``` yaml -directive: - - suppress: R3023 - from: attestation.json - reason: This is the attestation data plane APIs, this rule is not applicable -``` - ### Basic Information These are the global settings for the Attestation APIs. ``` yaml -openapi-type: arm +openapi-type: data-plane tag: package-2018-09-preview ``` diff --git a/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/attestation.json b/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/attestation.json index bbee9ff59cd9..3813af740c8c 100644 --- a/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/attestation.json +++ b/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/attestation.json @@ -63,7 +63,7 @@ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Attestation/attestationProviders/{providerName}": { "get": { "tags": [ - "AttestationProvider" + "AttestationProviders" ], "operationId": "AttestationProviders_Get", "description": "Get the status of Attestation Provider.", @@ -107,7 +107,7 @@ }, "put": { "tags": [ - "AttestationProvider" + "AttestationProviders" ], "operationId": "AttestationProviders_Create", "description": "Creates or updates the Attestation Provider.", @@ -136,6 +136,7 @@ { "name": "creationParams", "in": "body", + "required": true, "description": "Client supplied parameters.", "schema": { "$ref": "#/definitions/AttestationServiceCreationParams" @@ -164,9 +165,63 @@ } } }, + "patch": { + "tags": [ + "AttestationProviders" + ], + "operationId": "AttestationProviders_Update", + "description": "Updates the Attestation Provider.", + "x-ms-examples": { + "AttestationProviders_Update": { + "$ref": "./examples/Update_AttestationProvider.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "providerName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the attestation service" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "updateParams", + "in": "body", + "required": true, + "description": "Client supplied parameters.", + "schema": { + "$ref": "#/definitions/AttestationServicePatchParams" + }, + "x-ms-parameter-location": "method" + } + ], + "responses": { + "200": { + "description": "Updated attestation service", + "schema": { + "$ref": "#/definitions/AttestationProvider" + } + }, + "default": { + "description": "Error result from Attestation service", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, "delete": { "tags": [ - "AttestationProvider" + "AttestationProviders" ], "operationId": "AttestationProviders_Delete", "description": "Delete Attestation Service.", @@ -344,7 +399,7 @@ ], "allOf": [ { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" } ], "properties": { @@ -363,6 +418,10 @@ "status" ], "properties": { + "trustModel": { + "type": "string", + "description": "Trust model for the attestation service instance." + }, "status": { "type": "string", "description": "Status of attestation service.", @@ -417,8 +476,46 @@ } } }, + "AttestationServicePatchParams": { + "description": "Parameters for patching an attestation service instance", + "x-ms-azure-resource": true, + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The tags that will be assigned to the attestation service instance." + } + } + }, "AttestationServiceCreationParams": { - "description": "Client supplied parameters passed to attestation service.", + "description": "Parameters for creating an attestation service instance", + "required": [ + "location", + "properties" + ], + "x-ms-azure-resource": true, + "properties": { + "location": { + "type": "string", + "description": "The supported Azure location where the attestation service instance should be created." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The tags that will be assigned to the attestation service instance." + }, + "properties": { + "$ref": "#/definitions/AttestationServiceCreationSpecificParams", + "description": "Properties of the attestation service instance" + } + } + }, + "AttestationServiceCreationSpecificParams": { + "description": "Client supplied parameters used to create a new attestation service instance.", "properties": { "attestationPolicy": { "type": "string", diff --git a/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/examples/Create_AttestationProvider.json b/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/examples/Create_AttestationProvider.json index e222f28aa981..582915a46a9e 100644 --- a/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/examples/Create_AttestationProvider.json +++ b/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/examples/Create_AttestationProvider.json @@ -3,29 +3,43 @@ "resourceGroupName": "MyResourceGroup", "subscriptionId": "00000000-0000-0000-0000-000000000000", "api-version": "2018-09-01-preview", - "providerName": "MyAttestationProvider", + "providerName": "myattestationprovider", "creationParams": "test" }, "responses": { "200": { "body": { - "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MyResourceGroup/providers/Microsoft.Attestation/attestationProviders/MyAttestationProvider", - "name": "MyAttestationProvider", + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MyResourceGroup/providers/Microsoft.Attestation/attestationProviders/myattestationprovider", + "name": "myattestationprovider", "type": "Microsoft.Attestation/attestationProviders", + "location": "East US", + "tags": { + "Property1": "Value1", + "Property2": "Value2", + "Property3": "Value3" + }, "properties": { + "trustModel": "Isolated", "status": "Ready", - "attestUri": "https://sample-attestation.attestation.azure.net" + "attestUri": "https://superservice.attestation.azure.net" } } }, "201": { "body": { - "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MyResourceGroup/providers/Microsoft.Attestation/attestationProviders/MyAttestationProvider", - "name": "MyAttestationProvider", + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MyResourceGroup/providers/Microsoft.Attestation/attestationProviders/myattestationprovider", + "name": "myattestationprovider", "type": "Microsoft.Attestation/attestationProviders", + "location": "East US", + "tags": { + "Property1": "Value1", + "Property2": "Value2", + "Property3": "Value3" + }, "properties": { + "trustModel": "Isolated", "status": "Ready", - "attestUri": "https://sample-attestation.attestation.azure.net" + "attestUri": "https://superservice.attestation.azure.net" } } } diff --git a/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/examples/Delete_AttestationProvider.json b/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/examples/Delete_AttestationProvider.json index 3659e54a0f78..0d6c4bfa5158 100644 --- a/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/examples/Delete_AttestationProvider.json +++ b/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/examples/Delete_AttestationProvider.json @@ -1,9 +1,10 @@ { "parameters": { - "resourceGroupName": "MyResourceGroup", + "resourceGroupName": "sample-resource-group", + "serviceName": "sampleservicename", "subscriptionId": "00000000-0000-0000-0000-000000000000", "api-version": "2018-09-01-preview", - "providerName": "MyAttestationProvider" + "providerName": "myattestationprovider" }, "responses": { "202": { diff --git a/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/examples/Get_AttestationProvider.json b/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/examples/Get_AttestationProvider.json index 4df31a7c93e9..2b5f58020741 100644 --- a/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/examples/Get_AttestationProvider.json +++ b/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/examples/Get_AttestationProvider.json @@ -3,16 +3,24 @@ "resourceGroupName": "MyResourceGroup", "subscriptionId": "00000000-0000-0000-0000-000000000000", "api-version": "2018-09-01-preview", - "providerName": "MyAttestationProvider" + "providerName": "myattestationprovider" }, "responses": { "200": { "body": { - "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MyResourceGroup/providers/Microsoft.Attestation/attestationProviders/MyAttestationProvider", - "name": "MyAttestationProvider", + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MyResourceGroup/providers/Microsoft.Attestation/attestationProviders/myattestationprovider", + "name": "myattestationprovider", "type": "Microsoft.Attestation/attestationProviders", + "location": "East US", + "tags": { + "Property1": "Value1", + "Property2": "Value2", + "Property3": "Value3" + }, "properties": { - "status": "Ready" + "trustModel": "Isolated", + "status": "Ready", + "attestUri": "https://superservice.attestation.azure.net" } } } diff --git a/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/examples/Get_AttestationProvidersList.json b/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/examples/Get_AttestationProvidersList.json index 4ab27be179e5..045f93991e77 100644 --- a/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/examples/Get_AttestationProvidersList.json +++ b/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/examples/Get_AttestationProvidersList.json @@ -8,9 +8,10 @@ "body": { "value": [ { - "id": "subscriptions/6c96b33e-f5b8-40a6-9011-5cb1c58b0915/resourceGroups/testrg1/providers/Microsoft.Attestation/attestationProviders/MyAttestationProvider", - "name": "MyAttestationProvider", + "id": "subscriptions/6c96b33e-f5b8-40a6-9011-5cb1c58b0915/resourceGroups/testrg1/providers/Microsoft.Attestation/attestationProviders/myattestationprovider", + "name": "myattestationprovider", "type": "Microsoft.Attestation/attestationProviders", + "location": "East US", "properties": { "status": "Ready" } @@ -19,6 +20,7 @@ "id": "subscriptions/6c96b33e-f5b8-40a6-9011-5cb1c58b0915/resourceGroups/testrg2/providers/Microsoft.Attestation/attestationProviders/codes2", "name": "codes2", "type": "Microsoft.Attestation/attestationProviders", + "location": "East US", "properties": { "status": "Ready" } diff --git a/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/examples/Get_AttestationProvidersListByResourceGroup.json b/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/examples/Get_AttestationProvidersListByResourceGroup.json index 7e19bb3bcb1b..9be2ab2ed038 100644 --- a/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/examples/Get_AttestationProvidersListByResourceGroup.json +++ b/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/examples/Get_AttestationProvidersListByResourceGroup.json @@ -9,9 +9,10 @@ "body": { "value": [ { - "id": "subscriptions/6c96b33e-f5b8-40a6-9011-5cb1c58b0915/resourceGroups/testrg1/providers/Microsoft.Attestation/attestationProviders/MyAttestationProvider", - "name": "MyAttestationProvider", + "id": "subscriptions/6c96b33e-f5b8-40a6-9011-5cb1c58b0915/resourceGroups/testrg1/providers/Microsoft.Attestation/attestationProviders/myattestationprovider", + "name": "myattestationprovider", "type": "Microsoft.Attestation/attestationProviders", + "location": "East US", "properties": { "status": "Ready" } @@ -20,6 +21,7 @@ "id": "subscriptions/6c96b33e-f5b8-40a6-9011-5cb1c58b0915/resourceGroups/testrg1/providers/Microsoft.Attestation/attestationProviders/codes2", "name": "codes2", "type": "Microsoft.Attestation/attestationProviders", + "location": "East US", "properties": { "status": "Ready" } diff --git a/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/examples/Update_AttestationProvider.json b/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/examples/Update_AttestationProvider.json new file mode 100644 index 000000000000..1c49d1af4165 --- /dev/null +++ b/specification/attestation/resource-manager/Microsoft.Attestation/preview/2018-09-01-preview/examples/Update_AttestationProvider.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "resourceGroupName": "MyResourceGroup", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2018-09-01-preview", + "providerName": "myattestationprovider", + "updateParams": { + "tags": { + "Property1": "Value1", + "Property2": "Value2", + "Property3": "Value3" + } + } + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MyResourceGroup/providers/Microsoft.Attestation/attestationProviders/myattestationprovider", + "name": "myattestationprovider", + "type": "Microsoft.Attestation/attestationProviders", + "location": "East US", + "tags": { + "Property1": "Value1", + "Property2": "Value2", + "Property3": "Value3" + }, + "properties": { + "trustModel": "Isolated", + "status": "Ready", + "attestUri": "https://superservice.attestation.azure.net" + } + } + } + } +} diff --git a/specification/attestation/resource-manager/readme.az.md b/specification/attestation/resource-manager/readme.az.md new file mode 100644 index 000000000000..15a808946ef8 --- /dev/null +++ b/specification/attestation/resource-manager/readme.az.md @@ -0,0 +1,10 @@ +## Azure CLI + +These settings apply only when `--az` is specified on the command line. + +``` yaml $(az) +az: + extensions: attestation + package-name: azure-mgmt-attestation + namespace: azure.mgmt.attestation +``` diff --git a/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateEndpointConnectionDelete.json b/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateEndpointConnectionDelete.json new file mode 100644 index 000000000000..0a12a7daefb3 --- /dev/null +++ b/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateEndpointConnectionDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "automationAccountName": "ddb1", + "api-version": "2020-01-13-preview", + "privateEndpointConnectionName": "privateEndpointConnectionName" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateEndpointConnectionGet.json b/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateEndpointConnectionGet.json new file mode 100644 index 000000000000..063308a536f8 --- /dev/null +++ b/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateEndpointConnectionGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "automationAccountName": "ddb1", + "api-version": "2020-01-13-preview", + "privateEndpointConnectionName": "privateEndpointConnectionName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1/providers/Microsoft.Automation/automationAccounts/ddb1/privateEndpointConnections/privateEndpointConnectionName", + "name": "privateEndpointConnectionName", + "type": "Microsoft.Automation/automationAccounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1Network/providers/Microsoft.Network/privateEndpoints/privateEndpointName" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateEndpointConnectionListGet.json b/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateEndpointConnectionListGet.json new file mode 100644 index 000000000000..d369f2f02cf0 --- /dev/null +++ b/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateEndpointConnectionListGet.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "automationAccountName": "ddb1", + "api-version": "2020-01-13-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Automation/automationAccounts/ddb1/privateEndpointConnections/privateEndpointConnectionName", + "name": "privateEndpointConnectionName", + "type": "Microsoft.Automation/automationAccounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1Network/providers/Microsoft.Network/privateEndpoints/privateEndpointName" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Automation/automationAccounts/ddb1/privateEndpointConnections/privateEndpointConnectionName2", + "name": "privateEndpointConnectionName", + "type": "Microsoft.Automation/automationAccounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1Network/providers/Microsoft.Network/privateEndpoints/privateEndpointName2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + } +} diff --git a/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateEndpointConnectionUpdate.json b/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateEndpointConnectionUpdate.json new file mode 100644 index 000000000000..ab7309b28b43 --- /dev/null +++ b/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateEndpointConnectionUpdate.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "automationAccountName": "ddb1", + "api-version": "2020-01-13-preview", + "privateEndpointConnectionName": "privateEndpointConnectionName", + "parameters": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1/providers/Microsoft.Automation/automationAccounts/ddb1/privateEndpointConnections/privateEndpointConnectionName", + "name": "privateEndpointConnectionName", + "type": "Microsoft.Automation/automationAccounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg1Network/providers/Microsoft.Network/privateEndpoints/privateEndpointName" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + }, + "202": {} + } +} diff --git a/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateLinkResourceGet.json b/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateLinkResourceGet.json new file mode 100644 index 000000000000..9f0d825a6fcb --- /dev/null +++ b/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateLinkResourceGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "automationAccountName": "ddb1", + "api-version": "2020-01-13-preview", + "groupName": "sql" + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Automation/automationAccounts/ddb1/privateLinkResources/sql", + "name": "sql", + "type": "Microsoft.Automation/automationAccounts/privateLinkResources", + "properties": { + "groupId": "sql", + "requiredMembers": [ + "ddb1", + "ddb1-westus" + ] + } + } + } + } +} diff --git a/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateLinkResourceListGet.json b/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateLinkResourceListGet.json new file mode 100644 index 000000000000..cac55a5b8014 --- /dev/null +++ b/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/examples/PrivateLinkResourceListGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg1", + "automationAccountName": "ddb1", + "api-version": "2020-01-13-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.Automation/automationAccounts/ddb1/privateLinkResources/sql", + "name": "sql", + "type": "Microsoft.Automation/automationAccounts/privateLinkResources", + "properties": { + "groupId": "sql", + "requiredMembers": [ + "ddb1", + "ddb1-westus" + ] + } + } + ] + } + } + } +} diff --git a/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/privateEndpointConnection.json b/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/privateEndpointConnection.json new file mode 100644 index 000000000000..e64fc7f3e707 --- /dev/null +++ b/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/privateEndpointConnection.json @@ -0,0 +1,311 @@ +{ + "swagger": "2.0", + "info": { + "title": "AutomationManagement", + "version": "2020-01-13-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Automation/automationAccounts/{automationAccountName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "List all private endpoint connections on a Automation account.", + "operationId": "PrivateEndpointConnections_ListByAutomationAccount", + "x-ms-pageable": { + "nextLinkName": null + }, + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/AutomationAccountNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private endpoint connections.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/PrivateEndpointConnectionListGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Automation/automationAccounts/{automationAccountName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Gets a private endpoint connection.", + "operationId": "PrivateEndpointConnections_Get", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/AutomationAccountNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/PrivateEndpointConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Approve or reject a private endpoint connection with a given name.", + "operationId": "PrivateEndpointConnections_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/AutomationAccountNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + ], + "responses": { + "200": { + "description": "Successfully approved or rejected private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "202": { + "description": "Accepted. The private endpoint connection update will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Approve or reject a private endpoint connection with a given name.": { + "$ref": "./examples/PrivateEndpointConnectionUpdate.json" + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Deletes a private endpoint connection with a given name.", + "operationId": "PrivateEndpointConnections_Delete", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/AutomationAccountNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + } + ], + "responses": { + "202": { + "description": "Accepted. The private endpoint connection delete will complete asynchronously." + }, + "204": { + "description": "Private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes a private endpoint connection with a given name.": { + "$ref": "./examples/PrivateEndpointConnectionDelete.json" + } + } + } + } + }, + "definitions": { + "ErrorResponse": { + "properties": { + "code": { + "description": "Error code.", + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + }, + "description": "Error Response." + }, + "PrivateEndpointConnectionListResult": { + "description": "A list of private endpoint connections", + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "Array of private endpoint connections", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + } + }, + "PrivateEndpointConnection": { + "description": "A private endpoint connection", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ] + }, + "PrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionStateProperty", + "description": "Connection State of the Private Endpoint Connection." + } + } + }, + "PrivateEndpointProperty": { + "type": "object", + "description": "Private endpoint which the connection belongs to.", + "properties": { + "id": { + "type": "string", + "description": "Resource id of the private endpoint." + } + } + }, + "PrivateLinkServiceConnectionStateProperty": { + "type": "object", + "description": "Connection State of the Private Endpoint Connection.", + "properties": { + "status": { + "type": "string", + "description": "The private link service connection status." + }, + "description": { + "type": "string", + "description": "The private link service connection description." + }, + "actionsRequired": { + "type": "string", + "description": "Any action that is required beyond basic workflow (approve/ reject/ disconnect)", + "readOnly": true + } + } + } + }, + "parameters": { + "PrivateEndpointConnectionNameParameter": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The name of the private endpoint connection." + } + } +} diff --git a/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/privateLinkResources.json b/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/privateLinkResources.json new file mode 100644 index 000000000000..cb88076c1c14 --- /dev/null +++ b/specification/automation/resource-manager/Microsoft.Automation/preview/2020-01-13-preview/privateLinkResources.json @@ -0,0 +1,175 @@ +{ + "swagger": "2.0", + "info": { + "title": "AutomationManagement", + "version": "2020-01-13-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Automation/automationAccounts/{automationAccountName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "description": "Gets the private link resources that need to be created for Automation account.", + "operationId": "PrivateLinkResources_Automation", + "x-ms-pageable": { + "nextLinkName": null + }, + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/AutomationAccountNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/PrivateLinkResourceListGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Automation/automationAccounts/{automationAccountName}/privateLinkResources/{groupName}": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "description": "Gets the private link resources that need to be created for a Automation account.", + "operationId": "PrivateLinkResources_Get", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/AutomationAccountNameParameter" + }, + { + "$ref": "#/parameters/GroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified private link resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/PrivateLinkResourceGet.json" + } + } + } + } + }, + "definitions": { + "PrivateLinkResourceListResult": { + "description": "A list of private link resources", + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + } + }, + "PrivateLinkResource": { + "description": "A private link resource", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ] + }, + "PrivateLinkResourceProperties": { + "description": "Properties of a private link resource.", + "type": "object", + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + } + }, + "parameters": { + "GroupNameParameter": { + "name": "groupName", + "in": "path", + "description": "The name of the private link resource.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string" + } + } +} diff --git a/specification/automation/resource-manager/readme.cli.md b/specification/automation/resource-manager/readme.cli.md new file mode 100644 index 000000000000..b506e9f82761 --- /dev/null +++ b/specification/automation/resource-manager/readme.cli.md @@ -0,0 +1,178 @@ +## CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +cli: + cli-name: automation + package-name: azure-mgmt-automation + namespace: azure.mgmt.automation + test-scenario: + - name: Create or update automation account + - name: Create job + - name: Create or update a module + - name: Create or update webhook + - name: Create runbook as draft + - name: Create or update runbook and publish it + - name: Create or update watcher + - name: Create or update a schedule + - name: Create or update a variable + - name: Create a credential + - name: Create or update connection + - name: Create or update a certificate + - name: Create a job schedule + - name: Create or Update Configuration + - name: Create or update a source control + - name: Create or update a python 2 package + - name: Create or update a DSC Compilation job + - name: Create or update connection type + - name: Create node configuration + - name: Create or update runbook draft + - name: Create test job + - name: Create software update configuration + - name: Create or update a source control sync job + - name: Get a sync job stream identified by sync job stream id. + - name: Get a list of sync job streams identified by sync job id + - name: Get a source control sync job by job id + - name: Get software update configuration machine run + - name: Get test job stream + - name: Get software update configuration runs by Id + - name: Get a list of fields of a given type + - name: Get software update configuration by name + - name: Get a DSC Compilation job stream by job stream id + - name: Get a hybrid worker group + - name: Get a list of source control sync jobs + - name: List job streams by job name + - name: Get Activity in a module + - name: Get content of node + - name: Get a list of fields of a given type + - name: Get a list of fields of a given type across all accessible modules + - name: Get runbook draft content + - name: Get test job + - name: List DSC Compilation job streams + - name: Get a DSC node configuration + - name: Get DSC Configuration content + - name: Get Dsc node report data by node id and report id. + - name: Get job stream + - name: Get connection type + - name: Get a DSC Compilation job + - name: Get a python 2 package + - name: Get a source control + - name: Get a DSC Configuration + - name: List software update configuration machine runs for a specific software update configuration run + - name: List software update configuration machine runs + - name: List activities by a module + - name: Get a job schedule + - name: Get runbook content + - name: Get a certificate + - name: Get Job Runbook Content + - name: Get runbook draft + - name: Get a connection + - name: Get a credential + - name: Get node's status counts + - name: Get node's node configuration counts + - name: List software update configuration machine run with status equal to 'Failed' + - name: List software update configuration machine runs + - name: List DSC reports by node id. + - name: Get a variable + - name: Get a schedule + - name: Get the agent registration information + - name: List software update configurations Targeting a specific azure virtual machine + - name: List software update configurations + - name: Get runbook + - name: List job streams by job name + - name: Get watcher + - name: Get webhook + - name: Get Job Output + - name: List hybrid worker groups by Automation Account + - name: Get a module + - name: Get a node + - name: Get job + - name: List Paged DSC node configurations by Automation Account with name filter + - name: List DSC node configurations by Automation Account + - name: List Paged DSC node configurations by Automation Account with no filter + - name: List python 2 packages by automation account + - name: Get connection types, first 100 + - name: List DSC Compilation job in Automation Account + - name: Get connection types, next 100 + - name: Get the linked workspace of an automation account + - name: Get DSC Configuration + - name: List Paged DSC Configurations with name filter + - name: List sourceControls + - name: List Paged DSC Configurations with no filter + - name: List certificates + - name: List all job schedules by automation account + - name: List credentials by automation account, next 100 + - name: List credentials by automation account, first 100 + - name: List connections by automation account, next 100 + - name: List connections by automation account, first 100 + - name: Get statistics of an automation account + - name: List variables, First 100 + - name: List variables, Next 100 + - name: List schedules by automation account, first 100 + - name: List schedules by automation account, next 100 + - name: List watchers by Automation Account + - name: List runbooks by automation account + - name: List webhooks by Automation Account + - name: List modules by automation account + - name: Get usages of an automation account + - name: List Paged DSC nodes by Automation Account with version filter + - name: List Paged DSC nodes by Automation Account with name filter + - name: List Paged DSC nodes by Automation Account with no filters + - name: List DSC nodes by Automation Account + - name: List Paged DSC nodes by Automation Account with node status filter + - name: List Paged DSC nodes by Automation Account with Node Configuration Custom filter + - name: List Paged DSC nodes by Automation Account where Node Configurations are not assigned filter + - name: List Paged DSC nodes with filters separated by 'and' + - name: List jobs by automation account + - name: Get automation account + - name: List automation accounts by resource group + - name: List automation accounts by resource group + - name: Regenerate registration key + - name: Update hybrid worker group + - name: Suspend test job + - name: Resume test job + - name: Stop test job + - name: Undo draft edit to last known published state + - name: Update a module + - name: Update a source control + - name: Create or Update Configuration + - name: Update a certificate + - name: Publish runbook draft + - name: Update a credential + - name: Update a connection + - name: Start Watcher + - name: Start Watcher + - name: Update a variable + - name: Update a schedule + - name: Update runbook + - name: Update watcher + - name: Suspend job + - name: Update webhook + - name: Generate webhook uri + - name: Resume job + - name: Update a module + - name: Stop job + - name: Update a node + - name: Get lists of an automation account + - name: Update an automation account + - name: Delete software update configuration + - name: Delete a hybrid worker group + - name: Delete a DSC node configuration + - name: Delete an existing connection type + - name: Delete a python 2 package + - name: Delete a source control + - name: Delete DSC Configuration + - name: Delete a job schedule + - name: Delete a certificate + - name: Delete a credential + - name: Delete an existing connection + - name: Delete schedule + - name: Delete a variable + - name: Delete webhook + - name: Delete a runbook + - name: Delete watcher + - name: Delete a module + - name: Delete a DSC Node + - name: Delete automation account +``` \ No newline at end of file diff --git a/specification/automation/resource-manager/readme.md b/specification/automation/resource-manager/readme.md index 94ff48b474e3..e3416d6946aa 100644 --- a/specification/automation/resource-manager/readme.md +++ b/specification/automation/resource-manager/readme.md @@ -156,6 +156,43 @@ input-file: - Microsoft.Automation/stable/2018-06-30/python2package.json ``` +### Tag: package-2020-01-13-preview + +These settings apply only when `--tag=package-2020-01-13-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2020-01-13-preview' +input-file: +- Microsoft.Automation/stable/2015-10-31/account.json +- Microsoft.Automation/stable/2015-10-31/certificate.json +- Microsoft.Automation/stable/2015-10-31/connection.json +- Microsoft.Automation/stable/2015-10-31/connectionType.json +- Microsoft.Automation/stable/2015-10-31/credential.json +- Microsoft.Automation/stable/2015-10-31/dscConfiguration.json +- Microsoft.Automation/stable/2015-10-31/hybridRunbookWorkerGroup.json +- Microsoft.Automation/stable/2015-10-31/jobSchedule.json +- Microsoft.Automation/stable/2015-10-31/linkedWorkspace.json +- Microsoft.Automation/stable/2015-10-31/module.json +- Microsoft.Automation/stable/2015-10-31/schedule.json +- Microsoft.Automation/stable/2015-10-31/variable.json +- Microsoft.Automation/stable/2015-10-31/webhook.json +- Microsoft.Automation/stable/2015-10-31/watcher.json +- Microsoft.Automation/preview/2017-05-15-preview/softwareUpdateConfiguration.json +- Microsoft.Automation/preview/2017-05-15-preview/softwareUpdateConfigurationRun.json +- Microsoft.Automation/preview/2017-05-15-preview/softwareUpdateConfigurationMachineRun.json +- Microsoft.Automation/preview/2017-05-15-preview/sourceControl.json +- Microsoft.Automation/preview/2017-05-15-preview/sourceControlSyncJob.json +- Microsoft.Automation/preview/2017-05-15-preview/sourceControlSyncJobStreams.json +- Microsoft.Automation/preview/2017-05-15-preview/job.json +- Microsoft.Automation/stable/2018-01-15/dscNode.json +- Microsoft.Automation/stable/2018-01-15/dscCompilationJob.json +- Microsoft.Automation/stable/2018-01-15/dscNodeConfiguration.json +- Microsoft.Automation/stable/2018-01-15/dscNodeCounts.json +- Microsoft.Automation/stable/2018-06-30/runbook.json +- Microsoft.Automation/stable/2018-06-30/python2package.json +- Microsoft.Automation/preview/2020-01-13-preview/privateEndpointConnection.json +- Microsoft.Automation/preview/2020-01-13-preview/privateLinkResources.json +``` + --- ## Suppression ``` yaml @@ -306,6 +343,8 @@ input-file: - $(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 ``` diff --git a/specification/azsadmin/resource-manager/azurebridge/Microsoft.AzureBridge.Admin/preview/2016-01-01/Activation.json b/specification/azsadmin/resource-manager/azurebridge/Microsoft.AzureBridge.Admin/preview/2016-01-01/Activation.json index 44cf34f46206..40fcb50e2a3f 100644 --- a/specification/azsadmin/resource-manager/azurebridge/Microsoft.AzureBridge.Admin/preview/2016-01-01/Activation.json +++ b/specification/azsadmin/resource-manager/azurebridge/Microsoft.AzureBridge.Admin/preview/2016-01-01/Activation.json @@ -5,7 +5,7 @@ "title": "AzureBridgeAdminClient", "description": "AzureBridge Admin Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/azurebridge/Microsoft.AzureBridge.Admin/preview/2016-01-01/AzureBridge.json b/specification/azsadmin/resource-manager/azurebridge/Microsoft.AzureBridge.Admin/preview/2016-01-01/AzureBridge.json index 4e87b9374e78..7006ed80e3eb 100644 --- a/specification/azsadmin/resource-manager/azurebridge/Microsoft.AzureBridge.Admin/preview/2016-01-01/AzureBridge.json +++ b/specification/azsadmin/resource-manager/azurebridge/Microsoft.AzureBridge.Admin/preview/2016-01-01/AzureBridge.json @@ -5,7 +5,7 @@ "title": "AzureBridgeAdminClient", "description": "AzureBridge Admin Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/azurebridge/Microsoft.AzureBridge.Admin/preview/2016-01-01/DownloadedProduct.json b/specification/azsadmin/resource-manager/azurebridge/Microsoft.AzureBridge.Admin/preview/2016-01-01/DownloadedProduct.json index 6c45f1db8852..443b8e82072e 100644 --- a/specification/azsadmin/resource-manager/azurebridge/Microsoft.AzureBridge.Admin/preview/2016-01-01/DownloadedProduct.json +++ b/specification/azsadmin/resource-manager/azurebridge/Microsoft.AzureBridge.Admin/preview/2016-01-01/DownloadedProduct.json @@ -5,7 +5,7 @@ "title": "AzureBridgeAdminClient", "description": "AzureBridge Admin Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/azurebridge/Microsoft.AzureBridge.Admin/preview/2016-01-01/Product.json b/specification/azsadmin/resource-manager/azurebridge/Microsoft.AzureBridge.Admin/preview/2016-01-01/Product.json index 7e1811d9ebf2..d3f9266f56b7 100644 --- a/specification/azsadmin/resource-manager/azurebridge/Microsoft.AzureBridge.Admin/preview/2016-01-01/Product.json +++ b/specification/azsadmin/resource-manager/azurebridge/Microsoft.AzureBridge.Admin/preview/2016-01-01/Product.json @@ -5,7 +5,7 @@ "title": "AzureBridgeAdminClient", "description": "AzureBridge Admin Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/preview/2018-09-01/Backup.json b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/preview/2018-09-01/Backup.json index c54145fac66e..578460a3f5cd 100644 --- a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/preview/2018-09-01/Backup.json +++ b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/preview/2018-09-01/Backup.json @@ -5,7 +5,7 @@ "title": "BackupManagementClient", "description": "The Admin Backup Management Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], @@ -181,6 +181,20 @@ "required": true, "type": "string", "x-ms-parameter-location": "method" + }, + "TopParameter": { + "description": "OData top parameter.", + "name": "$top", + "in": "query", + "type": "string", + "x-ms-parameter-location": "method" + }, + "SkipParameter": { + "description": "OData skip parameter.", + "name": "$skip", + "in": "query", + "type": "string", + "x-ms-parameter-location": "method" } }, "securityDefinitions": { diff --git a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/preview/2018-09-01/BackupLocations.json b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/preview/2018-09-01/BackupLocations.json index 67766a5f7f40..2b28908cb974 100644 --- a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/preview/2018-09-01/BackupLocations.json +++ b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/preview/2018-09-01/BackupLocations.json @@ -5,7 +5,7 @@ "title": "BackupManagementClient", "description": "The Admin Backup Management Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], @@ -16,7 +16,7 @@ "application/json" ], "paths": { - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations": { "get": { "x-ms-examples": { "Returns the list of backup locations.": { @@ -37,6 +37,12 @@ }, { "$ref": "Backup.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "Backup.json#/parameters/TopParameter" + }, + { + "$ref": "Backup.json#/parameters/SkipParameter" } ], "responses": { @@ -52,7 +58,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations/{location}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations/{location}": { "get": { "x-ms-examples": { "Returns a specific backup location based on name.": { @@ -129,10 +135,13 @@ } } }, - "x-ms-long-running-operation": true + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations/{location}/createBackup": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations/{location}/createBackup": { "post": { "x-ms-examples": { "Back up a specific location.": { @@ -140,6 +149,9 @@ } }, "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, "description": "Back up a specific location.", "tags": [ "BackupLocations" diff --git a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/preview/2018-09-01/Backups.json b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/preview/2018-09-01/Backups.json index 5870d5e9f5e5..a8ca7a93d59b 100644 --- a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/preview/2018-09-01/Backups.json +++ b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/preview/2018-09-01/Backups.json @@ -5,7 +5,7 @@ "title": "BackupManagementClient", "description": "The Admin Backup Management Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], @@ -16,7 +16,7 @@ "application/json" ], "paths": { - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations/{location}/backups": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations/{location}/backups": { "get": { "x-ms-examples": { "Returns a list of backups from a location.": { @@ -40,6 +40,12 @@ }, { "$ref": "Backup.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "Backup.json#/parameters/TopParameter" + }, + { + "$ref": "Backup.json#/parameters/SkipParameter" } ], "responses": { @@ -55,7 +61,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations/{location}/backups/{backup}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations/{location}/backups/{backup}": { "get": { "x-ms-examples": { "Returns a backup from a location based on name.": { @@ -94,7 +100,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations/{location}/backups/{backup}/restore": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations/{location}/backups/{backup}/restore": { "post": { "x-ms-examples": { "Restore a backup.": { @@ -137,7 +143,10 @@ "description": "ACCEPTED" } }, - "x-ms-long-running-operation": true + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } } } }, diff --git a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/Backup.json b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/Backup.json deleted file mode 100644 index 00d064f2489d..000000000000 --- a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/Backup.json +++ /dev/null @@ -1,204 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "version": "2016-05-01", - "title": "BackupManagementClient", - "description": "The Admin Backup Management Client." - }, - "host": "adminmanagement.local.azurestack.external", - "schemes": [ - "https" - ], - "produces": [ - "application/json" - ], - "consumes": [ - "application/json" - ], - "paths": { - "/providers/Microsoft.Backup.Admin/operations": { - "get": { - "x-ms-examples": { - "Returns the list of support REST operations.": { - "$ref": "./examples/Operations/List.json" - } - }, - "description": "Returns the list of support REST operations.", - "tags": [ - "Backup" - ], - "operationId": "Operations_List", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/OperationList" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - } - }, - "definitions": { - "Resource": { - "description": "Base Resource Object", - "type": "object", - "properties": { - "id": { - "description": "URI of the resource.", - "type": "string", - "readOnly": true - }, - "name": { - "description": "Name of the resource.", - "type": "string", - "readOnly": true - }, - "type": { - "description": "Type of resource.", - "type": "string", - "readOnly": true - }, - "location": { - "description": "Location of the resource.", - "type": "string", - "readOnly": false - }, - "tags": { - "description": "List of key value pairs.", - "type": "object", - "readOnly": false, - "additionalProperties": { - "type": "string" - } - } - }, - "x-ms-azure-resource": true - }, - "Operation": { - "description": "Describes the supported REST operation.", - "properties": { - "name": { - "description": "The name of the operation being performed on this particular object. This name should match the name that appears in RBAC or the event service.", - "type": "string", - "readOnly": true - }, - "display": { - "description": "Contains the localized display information for this particular operation / action.", - "$ref": "#/definitions/Display", - "readOnly": true - } - } - }, - "Display": { - "description": "Contains the localized display information for this particular operation / action.", - "properties": { - "provider": { - "description": "The localized friendly form of the resource provider name – it is expected to also include the publisher/company responsible. It should use Title Casing and begin with \"Microsoft\" for 1st party services. e.g. \"Microsoft Monitoring Insights\" or \"Microsoft Compute.\"", - "type": "string", - "readOnly": true - }, - "resource": { - "description": "The localized, friendly version of the resource type related to this action or operation; the resource type should match the public documentation for the resource provider.", - "type": "string", - "readOnly": true - }, - "operation": { - "description": "The localized, friendly name for the operation. Use the name as it will displayed to the user.", - "type": "string", - "readOnly": true - }, - "description": { - "description": "The localized, friendly description for the operation. The description will be displayed to the user. It should be thorough and concise for used in both tooltips and detailed views.", - "type": "string", - "readOnly": true - } - } - }, - "OperationList": { - "description": "List of Operations", - "properties": { - "value": { - "description": "Array of operations", - "type": "array", - "items": { - "$ref": "#/definitions/Operation" - }, - "readOnly": true - }, - "nextLink": { - "description": "URI to the next page of operations.", - "type": "string", - "readOnly": true - } - } - }, - "LongRunningOperationStatus": { - "description": "Status of a long running operation.", - "type": "object", - "properties": { - "code": { - "description": "Operation result code.", - "type": "string", - "readOnly": true - }, - "message": { - "description": "Description of the operation status.", - "type": "string", - "readOnly": true - } - } - } - }, - "parameters": { - "SubscriptionIdParameter": { - "name": "subscriptionId", - "in": "path", - "description": "Subscription credentials that uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.", - "required": true, - "type": "string" - }, - "ApiVersionParameter": { - "name": "api-version", - "in": "query", - "description": "Client API version.", - "required": true, - "type": "string", - "default": "2016-05-01" - }, - "ResourceGroupParameter": { - "name": "resourceGroupName", - "in": "path", - "description": "Name of the resource group.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - } - }, - "securityDefinitions": { - "azure_auth": { - "type": "oauth2", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", - "flow": "implicit", - "description": "Authorization uses an Azure Active Directory OAuth2 flow.", - "scopes": { - "user_impersonation": "impersonate your user account" - } - } - }, - "security": [ - { - "azure_auth": [ - "user_impersonation" - ] - } - ] -} diff --git a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/BackupLocations.json b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/BackupLocations.json deleted file mode 100644 index 9106ae82ff87..000000000000 --- a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/BackupLocations.json +++ /dev/null @@ -1,317 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "version": "2016-05-01", - "title": "BackupManagementClient", - "description": "The Admin Backup Management Client." - }, - "host": "adminmanagement.local.azurestack.external", - "schemes": [ - "https" - ], - "produces": [ - "application/json" - ], - "consumes": [ - "application/json" - ], - "paths": { - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations": { - "get": { - "x-ms-examples": { - "Returns the list of backup locations.": { - "$ref": "./examples/BackupLocations/List.json" - } - }, - "description": "Returns the list of backup locations.", - "tags": [ - "BackupLocations" - ], - "operationId": "BackupLocations_List", - "parameters": [ - { - "$ref": "Backup.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "Backup.json#/parameters/ResourceGroupParameter" - }, - { - "$ref": "Backup.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/BackupLocationList" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations/{location}": { - "get": { - "x-ms-examples": { - "Returns a specific backup location based on name.": { - "$ref": "./examples/BackupLocations/Get.json" - } - }, - "description": "Returns a specific backup location based on name.", - "tags": [ - "BackupLocations" - ], - "operationId": "BackupLocations_Get", - "parameters": [ - { - "$ref": "Backup.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "Backup.json#/parameters/ResourceGroupParameter" - }, - { - "$ref": "#/parameters/BackupLocationParameter" - }, - { - "$ref": "Backup.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/BackupLocation" - } - }, - "404": { - "description": "NOT FOUND" - } - } - }, - "put": { - "x-ms-examples": { - "Update new backup location.": { - "$ref": "./examples/BackupLocations/Update.json" - } - }, - "description": "Update a backup location.", - "tags": [ - "BackupLocations" - ], - "operationId": "BackupLocations_Update", - "parameters": [ - { - "$ref": "Backup.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "Backup.json#/parameters/ResourceGroupParameter" - }, - { - "$ref": "#/parameters/BackupLocationParameter" - }, - { - "$ref": "Backup.json#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/BackupLocationObjectParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/BackupLocation" - } - }, - "202": { - "description": "ACCEPTED", - "schema": { - "$ref": "#/definitions/BackupLocation" - } - }, - "404": { - "description": "NOT FOUND" - } - }, - "x-ms-long-running-operation": true - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations/{location}/createBackup": { - "post": { - "x-ms-examples": { - "Back up a specific location.": { - "$ref": "./examples/BackupLocations/Backup.json" - } - }, - "x-ms-long-running-operation": true, - "description": "Back up a specific location.", - "tags": [ - "BackupLocations" - ], - "operationId": "BackupLocations_CreateBackup", - "parameters": [ - { - "$ref": "Backup.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "Backup.json#/parameters/ResourceGroupParameter" - }, - { - "$ref": "#/parameters/BackupLocationParameter" - }, - { - "$ref": "Backup.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "Backups.json#/definitions/Backup" - } - }, - "202": { - "description": "ACCEPTED", - "schema": { - "$ref": "Backups.json#/definitions/Backup" - } - } - } - } - } - }, - "definitions": { - "BackupLocation": { - "description": "Information about the backup location.", - "type": "object", - "properties": { - "properties": { - "description": "Properties of a backup location.", - "$ref": "#/definitions/BackupLocationModel", - "x-ms-client-flatten": true - } - }, - "allOf": [ - { - "$ref": "Backup.json#/definitions/Resource" - } - ] - }, - "BackupLocationModel": { - "type": "object", - "description": "Properties of a backup location.", - "properties": { - "externalStoreDefault": { - "description": "Information about an external storage location.", - "$ref": "#/definitions/ExternalStore", - "x-ms-client-flatten": true - } - } - }, - "ExternalStore": { - "type": "object", - "description": "Information about an external storage location.", - "properties": { - "path": { - "description": "Path to the update location", - "type": "string" - }, - "userName": { - "description": "Username to access the location.", - "type": "string" - }, - "password": { - "description": "Password to access the location.", - "type": "string" - }, - "encryptionKeyBase64": { - "description": "Encryption key.", - "type": "string" - }, - "backupFrequencyInHours": { - "description": "The interval, in hours, for the frequency that the scheduler takes a backup.", - "type": "integer" - }, - "availableCapacity": { - "description": "Free space at the backup location.", - "type": "string" - }, - "isBackupSchedulerEnabled": { - "description": "True if the backup scheduler is enabled.", - "type": "boolean" - }, - "nextBackupTime": { - "description": "The scheduled time of the next backup.", - "type": "string", - "format": "date-time" - }, - "lastBackupTime": { - "description": "Time of backup.", - "type": "string", - "format": "date-time" - }, - "backupRetentionPeriodInDays": { - "description": "The retention period, in days, for backs in the storage location.", - "type": "integer" - } - } - }, - "BackupLocationList": { - "type": "object", - "description": "List of backup locations.", - "properties": { - "value": { - "description": "List of backup locations.", - "type": "array", - "items": { - "$ref": "#/definitions/BackupLocation" - } - }, - "nextLink": { - "description": "URI to the next page.", - "type": "string" - } - } - } - }, - "parameters": { - "BackupLocationParameter": { - "name": "location", - "in": "path", - "description": "Name of the backup location.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "BackupLocationObjectParameter": { - "name": "backup", - "in": "body", - "description": "Backup location object.", - "required": true, - "schema": { - "$ref": "#/definitions/BackupLocation" - }, - "x-ms-parameter-location": "method" - } - }, - "securityDefinitions": { - "azure_auth": { - "type": "oauth2", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", - "flow": "implicit", - "description": "Authorization uses an Azure Active Directory OAuth2 flow.", - "scopes": { - "user_impersonation": "impersonate your user account" - } - } - }, - "security": [ - { - "azure_auth": [ - "user_impersonation" - ] - } - ] -} diff --git a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/Backups.json b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/Backups.json deleted file mode 100644 index 473c9fb5f481..000000000000 --- a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/Backups.json +++ /dev/null @@ -1,310 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "version": "2016-05-01", - "title": "BackupManagementClient", - "description": "The Admin Backup Management Client." - }, - "host": "adminmanagement.local.azurestack.external", - "schemes": [ - "https" - ], - "produces": [ - "application/json" - ], - "consumes": [ - "application/json" - ], - "paths": { - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations/{location}/backups": { - "get": { - "x-ms-examples": { - "Returns a list of backups from a location.": { - "$ref": "./examples/Backups/List.json" - } - }, - "description": "Returns a list of backups from a location.", - "tags": [ - "Backups" - ], - "operationId": "Backups_List", - "parameters": [ - { - "$ref": "Backup.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "Backup.json#/parameters/ResourceGroupParameter" - }, - { - "$ref": "BackupLocations.json#/parameters/BackupLocationParameter" - }, - { - "$ref": "Backup.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/BackupList" - } - }, - "404": { - "description": "NOT FOUND" - } - }, - "x-ms-pageable": { - "nextLinkName": null - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations/{location}/backups/{backup}": { - "get": { - "x-ms-examples": { - "Returns a backup from a location based on name.": { - "$ref": "./examples/Backups/Get.json" - } - }, - "description": "Returns a backup from a location based on name.", - "tags": [ - "Backups" - ], - "operationId": "Backups_Get", - "parameters": [ - { - "$ref": "Backup.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "Backup.json#/parameters/ResourceGroupParameter" - }, - { - "$ref": "BackupLocations.json#/parameters/BackupLocationParameter" - }, - { - "$ref": "#/parameters/BackupParameter" - }, - { - "$ref": "Backup.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/Backup" - } - }, - "404": { - "description": "NOT FOUND" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Backup.Admin/backupLocations/{location}/backups/{backup}/restore": { - "post": { - "x-ms-examples": { - "Restore a backup.": { - "$ref": "./examples/Backups/Restore.json" - } - }, - "description": "Restore a backup.", - "tags": [ - "Backups" - ], - "operationId": "Backups_Restore", - "parameters": [ - { - "$ref": "Backup.json#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "BackupLocations.json#/parameters/BackupLocationParameter" - }, - { - "$ref": "Backup.json#/parameters/ResourceGroupParameter" - }, - { - "$ref": "#/parameters/BackupParameter" - }, - { - "$ref": "Backup.json#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK" - }, - "202": { - "description": "ACCEPTED" - }, - "404": { - "description": "NOT FOUND" - } - }, - "x-ms-long-running-operation": true - } - } - }, - "definitions": { - "Backup": { - "description": "Information related to a backup.", - "type": "object", - "properties": { - "properties": { - "description": "Properties for a backup.", - "$ref": "#/definitions/BackupModel", - "x-ms-client-flatten": true - } - }, - "allOf": [ - { - "$ref": "Backup.json#/definitions/Resource" - } - ] - }, - "BackupModel": { - "description": "Properties for a backup.", - "properties": { - "backupInfo": { - "description": "Holds information for a backup.", - "x-ms-client-flatten": true, - "$ref": "#/definitions/BackupInfo" - } - } - }, - "BackupInfo": { - "type": "object", - "description": "Holds information for a backup.", - "properties": { - "backupDataVersion": { - "description": "Version of the backup data.", - "type": "string", - "readOnly": true - }, - "backupId": { - "description": "Unique GUID for the backup.", - "type": "string", - "readOnly": true - }, - "roleStatus": { - "description": "Backup status for each role.", - "$ref": "#/definitions/RoleOperationStatusList", - "readOnly": true - }, - "status": { - "description": "Current status of the backup.", - "$ref": "#/definitions/OperationStatus", - "readOnly": true - }, - "createdDateTime": { - "description": "Creation time of the backup.", - "type": "string", - "format": "date-time", - "readOnly": true - }, - "timeTakenToCreate": { - "description": "Duration to create the backup.", - "type": "string", - "readOnly": true - }, - "deploymentID": { - "description": "Deployment Id of the stamp.", - "type": "string", - "readOnly": true - }, - "stampVersion": { - "description": "Current version.", - "type": "string", - "readOnly": true - }, - "oemVersion": { - "description": "OEM version.", - "type": "string", - "readOnly": true - } - } - }, - "OperationStatus": { - "description": "Status of an operation.", - "type": "string", - "enum": [ - "Creating", - "Queued", - "Running", - "Deleted", - "Failed", - "PartialSucceeded", - "Succeeded" - ], - "x-ms-enum": { - "name": "OperationStatus", - "modelAsString": false - } - }, - "RoleOperationStatusList": { - "description": "object", - "type": "array", - "items": { - "$ref": "#/definitions/RoleOperationStatus" - } - }, - "RoleOperationStatus": { - "description": "Backup status for a role.", - "type": "object", - "properties": { - "roleName": { - "description": "Name of the role.", - "type": "string" - }, - "status": { - "description": "Status of the role.", - "$ref": "#/definitions/OperationStatus" - } - } - }, - "BackupList": { - "type": "object", - "description": "List of backups.", - "properties": { - "value": { - "description": "List of backups.", - "type": "array", - "items": { - "$ref": "#/definitions/Backup" - } - }, - "nextLink": { - "description": "URI to the next page.", - "type": "string" - } - } - } - }, - "parameters": { - "BackupParameter": { - "name": "backup", - "in": "path", - "description": "Name of the backup.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - } - }, - "securityDefinitions": { - "azure_auth": { - "type": "oauth2", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", - "flow": "implicit", - "description": "Authorization uses an Azure Active Directory OAuth2 flow.", - "scopes": { - "user_impersonation": "impersonate your user account" - } - } - }, - "security": [ - { - "azure_auth": [ - "user_impersonation" - ] - } - ] -} diff --git a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/BackupLocations/Backup.json b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/BackupLocations/Backup.json deleted file mode 100644 index 4af9dafe6c33..000000000000 --- a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/BackupLocations/Backup.json +++ /dev/null @@ -1,144 +0,0 @@ -{ - "parameters": { - "subscriptionId": "11111111-2222-3333-4444-555555555555", - "resourceGroupName": "System.local", - "location": "local", - "api-version": "2016-05-01" - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/resourceGroups/system.local/providers/Microsoft.Backup.Admin/backupLocations/local/backups/290b4726-a9a1-40ba-a837-895a1173dc73", - "name": "290b4726-a9a1-40ba-a837-895a1173dc73", - "type": "Microsoft.Backup.Admin/backupLocations/backups", - "location": "local", - "tags": {}, - "properties": { - "backupInfo": { - "backupId": "290b4726-a9a1-40ba-a837-895a1173dc73", - "roleStatus": [ - { - "roleName": "NRP", - "status": "Succeeded" - }, - { - "roleName": "SRP", - "status": "Succeeded" - }, - { - "roleName": "CRP", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultInternalControlPlane", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultInternalDataPlane", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultControlPlane", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultDataPlane", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultNamingService", - "status": "Succeeded" - }, - { - "roleName": "WAS", - "status": "Succeeded" - }, - { - "roleName": "ECE", - "status": "Succeeded" - }, - { - "roleName": "CA", - "status": "Succeeded" - }, - { - "roleName": "ACS", - "status": "Succeeded" - } - ], - "status": "Succeeded", - "createdDateTime": "2018-02-16T23:01:56.2015457Z", - "timeTakenToCreate": "PT4M54.5150429S" - } - } - } - }, - "202": { - "body": { - "id": "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/resourceGroups/system.local/providers/Microsoft.Backup.Admin/backupLocations/local/backups/290b4726-a9a1-40ba-a837-895a1173dc73", - "name": "290b4726-a9a1-40ba-a837-895a1173dc73", - "type": "Microsoft.Backup.Admin/backupLocations/backups", - "location": "local", - "tags": {}, - "properties": { - "backupInfo": { - "backupId": "290b4726-a9a1-40ba-a837-895a1173dc73", - "roleStatus": [ - { - "roleName": "NRP", - "status": "Succeeded" - }, - { - "roleName": "SRP", - "status": "Succeeded" - }, - { - "roleName": "CRP", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultInternalControlPlane", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultInternalDataPlane", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultControlPlane", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultDataPlane", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultNamingService", - "status": "Succeeded" - }, - { - "roleName": "WAS", - "status": "Succeeded" - }, - { - "roleName": "ECE", - "status": "Succeeded" - }, - { - "roleName": "CA", - "status": "Succeeded" - }, - { - "roleName": "ACS", - "status": "Succeeded" - } - ], - "status": "Succeeded", - "createdDateTime": "2018-02-16T23:01:56.2015457Z", - "timeTakenToCreate": "PT4M54.5150429S" - } - } - } - } - } -} diff --git a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/BackupLocations/Get.json b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/BackupLocations/Get.json deleted file mode 100644 index 5aaefbf84e1e..000000000000 --- a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/BackupLocations/Get.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "parameters": { - "subscriptionId": "11111111-2222-3333-4444-555555555555", - "resourceGroupName": "System.local", - "location": "local", - "api-version": "2016-05-01" - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/resourceGroups/System.local/providers/Microsoft.Backup.Admin/backupLocations/local", - "name": "local", - "type": "Microsoft.Backup.Admin/backupLocations", - "location": "local", - "tags": {}, - "properties": { - "externalStoreDefault": { - "path": "\\\\\\\\100.68.88.192\\\\C$\\\\backup_test", - "userName": "AzureStack\\\\Administrator", - "availableCapacity": "10GB", - "isBackupSchedulerEnabled": false - } - } - } - }, - "404": {} - } -} diff --git a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/BackupLocations/List.json b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/BackupLocations/List.json deleted file mode 100644 index ca868479ec5f..000000000000 --- a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/BackupLocations/List.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "parameters": { - "subscriptionId": "11111111-2222-3333-4444-555555555555", - "resourceGroupName": "System.local", - "api-version": "2016-05-01" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/resourceGroups/System.local/providers/Microsoft.Backup.Admin/backupLocations/local", - "name": "local", - "type": "Microsoft.Backup.Admin/backupLocations", - "location": "local", - "tags": {}, - "properties": { - "externalStoreDefault": { - "path": "\\\\\\\\100.68.88.192\\\\C$\\\\backup_test", - "userName": "AzureStack\\\\Administrator", - "availableCapacity": "10GB", - "isBackupSchedulerEnabled": false - } - } - } - ] - } - } - } -} diff --git a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/BackupLocations/Update.json b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/BackupLocations/Update.json deleted file mode 100644 index 9c14a0c5360a..000000000000 --- a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/BackupLocations/Update.json +++ /dev/null @@ -1,63 +0,0 @@ -{ - "parameters": { - "subscriptionId": "11111111-2222-3333-4444-555555555555", - "resourceGroupName": "System.local", - "location": "local", - "backup": { - "properties": { - "externalStoreDefault": { - "path": "\\\\192.168.1.1\\Share", - "userName": "UserName", - "password": "secretPassword", - "encryptionKeyBase64": "YVVOa0J3S2xTamhHZ1lyRU9wQ1pKQ0xWanhjaHlkaU5ZQnNDeHRPTGFQenJKdWZsRGtYT25oYmlaa1RMVWFKeQ==", - "availableCapacity": "10GB", - "isBackupSchedulerEnabled": false - } - }, - "location": "local", - "tags": {} - }, - "api-version": "2016-05-01" - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/resourcegroups/System.local/providers/Microsoft.Backup.Admin/backupLocations/local", - "name": "local", - "type": "Microsoft.Backup.Admin/backupLocations", - "location": "local", - "tags": {}, - "properties": { - "externalStoreDefault": { - "path": "\\\\192.168.1.1\\Share", - "userName": "UserName", - "password": "", - "encryptionKeyBase64": "", - "availableCapacity": "10GB", - "isBackupSchedulerEnabled": false - } - } - } - }, - "202": { - "body": { - "id": "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/resourcegroups/System.local/providers/Microsoft.Backup.Admin/backupLocations/local", - "name": "local", - "type": "Microsoft.Backup.Admin/backupLocations", - "location": "local", - "tags": {}, - "properties": { - "externalStoreDefault": { - "path": "\\\\192.168.1.1\\Share", - "userName": "UserName", - "password": "", - "encryptionKeyBase64": "", - "availableCapacity": "10GB", - "isBackupSchedulerEnabled": false - } - } - } - }, - "404": {} - } -} diff --git a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/Backups/Get.json b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/Backups/Get.json deleted file mode 100644 index 8e7a67e2033c..000000000000 --- a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/Backups/Get.json +++ /dev/null @@ -1,83 +0,0 @@ -{ - "parameters": { - "subscriptionId": "11111111-2222-3333-4444-555555555555", - "resourceGroupName": "System.local", - "location": "local", - "backup": "de038ae0-294d-468d-90a1-fbe5ae028ce2", - "api-version": "2016-05-01" - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/System.local/providers/Microsoft.Backup.Admin/backupLocations/local/backups/de038ae0-294d-468d-90a1-fbe5ae028ce2", - "name": "de038ae0-294d-468d-90a1-fbe5ae028ce2", - "type": "Microsoft.Backup.Admin/backupLocations/backups", - "location": "local", - "tags": {}, - "properties": { - "backupInfo": { - "backupDataVersion": "", - "backupId": "de038ae0-294d-468d-90a1-fbe5ae028ce2", - "roleStatus": [ - { - "roleName": "NRP", - "status": "Succeeded" - }, - { - "roleName": "SRP", - "status": "Succeeded" - }, - { - "roleName": "CRP", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultInternalControlPlane", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultInternalDataPlane", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultControlPlane", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultDataPlane", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultNamingService", - "status": "Succeeded" - }, - { - "roleName": "WAS", - "status": "Succeeded" - }, - { - "roleName": "ECE", - "status": "Succeeded" - }, - { - "roleName": "CA", - "status": "Succeeded" - }, - { - "roleName": "ACS", - "status": "Succeeded" - } - ], - "status": "Succeeded", - "createdDateTime": "2018-02-16T16:06:10.1160531Z", - "timeTakenToCreate": "PT5M1.5611298S", - "stampVersion": "", - "oemVersion": "", - "deploymentID": "" - } - } - } - }, - "404": {} - } -} diff --git a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/Backups/List.json b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/Backups/List.json deleted file mode 100644 index e9a6530d6d79..000000000000 --- a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/Backups/List.json +++ /dev/null @@ -1,87 +0,0 @@ -{ - "parameters": { - "subscriptionId": "11111111-2222-3333-4444-555555555555", - "resourceGroupName": "System.local", - "location": "local", - "api-version": "2016-05-01" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/System.local/providers/Microsoft.Backup.Admin/backupLocations/local/backups/de038ae0-294d-468d-90a1-fbe5ae028ce2", - "name": "de038ae0-294d-468d-90a1-fbe5ae028ce2", - "type": "Microsoft.Backup.Admin/backupLocations/backups", - "location": "local", - "tags": {}, - "properties": { - "backupInfo": { - "backupDataVersion": "", - "backupId": "de038ae0-294d-468d-90a1-fbe5ae028ce2", - "roleStatus": [ - { - "roleName": "NRP", - "status": "Succeeded" - }, - { - "roleName": "SRP", - "status": "Succeeded" - }, - { - "roleName": "CRP", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultInternalControlPlane", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultInternalDataPlane", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultControlPlane", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultDataPlane", - "status": "Succeeded" - }, - { - "roleName": "KeyVaultNamingService", - "status": "Succeeded" - }, - { - "roleName": "WAS", - "status": "Succeeded" - }, - { - "roleName": "ECE", - "status": "Succeeded" - }, - { - "roleName": "CA", - "status": "Succeeded" - }, - { - "roleName": "ACS", - "status": "Succeeded" - } - ], - "status": "Succeeded", - "createdDateTime": "2018-02-16T16:06:10.1160531Z", - "timeTakenToCreate": "PT5M1.5611298S", - "stampVersion": "", - "oemVersion": "", - "deploymentID": "" - } - } - } - ], - "nextLink": null - } - }, - "404": {} - } -} diff --git a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/Backups/Restore.json b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/Backups/Restore.json deleted file mode 100644 index bf9ad301b24e..000000000000 --- a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/Backups/Restore.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "parameters": { - "subscriptionId": "11111111-2222-3333-4444-555555555555", - "resourceGroupName": "System.local", - "location": "local", - "backup": "de038ae0-294d-468d-90a1-fbe5ae028ce2", - "api-version": "2016-05-01" - }, - "responses": { - "200": {}, - "202": {}, - "404": {} - } -} diff --git a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/Operations/List.json b/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/Operations/List.json deleted file mode 100644 index 9a6f651b6097..000000000000 --- a/specification/azsadmin/resource-manager/backup/Microsoft.Backup.Admin/stable/2016-05-01/examples/Operations/List.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "parameters": { - "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", - "location": "local", - "api-version": "2016-05-01" - }, - "responses": { - "200": { - "body": { - "value": [], - "nextLink": null - } - } - } -} diff --git a/specification/azsadmin/resource-manager/backup/readme.md b/specification/azsadmin/resource-manager/backup/readme.md index 75cdc00310dc..75d721d5948e 100644 --- a/specification/azsadmin/resource-manager/backup/readme.md +++ b/specification/azsadmin/resource-manager/backup/readme.md @@ -24,7 +24,7 @@ These are the global settings for the Backup Admin API. title: BackupAdminClient description: Backup Admin Client openapi-type: arm -tag: package-2016-05-01 +tag: package-2018-09-01 ``` ### Tag: package-2018-09-01 @@ -38,17 +38,6 @@ input-file: - Microsoft.Backup.Admin/preview/2018-09-01/Backups.json ``` -### Tag: package-2016-05-01 - -These settings apply only when `--tag=package-2016-05-01` is specified on the command line. - -``` yaml $(tag) == 'package-2016-05-01' -input-file: - - Microsoft.Backup.Admin/stable/2016-05-01/Backup.json - - Microsoft.Backup.Admin/stable/2016-05-01/BackupLocations.json - - Microsoft.Backup.Admin/stable/2016-05-01/Backups.json -``` - --- # Code Generation @@ -64,11 +53,10 @@ csharp: clear-output-folder: true ``` -## Multi-API/Profile support for AutoRest v3 generators +## 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! +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 @@ -79,17 +67,13 @@ input-file: - $(this-folder)/Microsoft.Backup.Admin/preview/2018-09-01/Backup.json - $(this-folder)/Microsoft.Backup.Admin/preview/2018-09-01/BackupLocations.json - $(this-folder)/Microsoft.Backup.Admin/preview/2018-09-01/Backups.json - - $(this-folder)/Microsoft.Backup.Admin/stable/2016-05-01/Backup.json - - $(this-folder)/Microsoft.Backup.Admin/stable/2016-05-01/BackupLocations.json - - $(this-folder)/Microsoft.Backup.Admin/stable/2016-05-01/Backups.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. +``` +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 -``` +#exclude-file: +# - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json +``` \ No newline at end of file diff --git a/specification/azsadmin/resource-manager/commerce/Microsoft.Commerce.Admin/preview/2015-06-01-preview/Commerce.json b/specification/azsadmin/resource-manager/commerce/Microsoft.Commerce.Admin/preview/2015-06-01-preview/Commerce.json index d58bef0c94ab..c34915e2be14 100644 --- a/specification/azsadmin/resource-manager/commerce/Microsoft.Commerce.Admin/preview/2015-06-01-preview/Commerce.json +++ b/specification/azsadmin/resource-manager/commerce/Microsoft.Commerce.Admin/preview/2015-06-01-preview/Commerce.json @@ -5,7 +5,7 @@ "title": "CommerceManagementClient", "description": "The Admin Commerce Management Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/Compute.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/Compute.json index e7051cf62731..7a3968f659a9 100644 --- a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/Compute.json +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/Compute.json @@ -4,7 +4,7 @@ "version": "2015-12-01-preview", "title": "Compute Admin Client" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], @@ -93,6 +93,10 @@ "description": "The name of the operation being performed on this particular object. This name should match the name that appears in RBAC or the event service.", "type": "string" }, + "isDataAction": { + "description": "Gets or sets a value indicating whether the operation is a data action or not.", + "type": "boolean" + }, "display": { "description": "Contains the localized display information for this particular operation or action.", "$ref": "#/definitions/Display" diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/PlatformImages.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/PlatformImages.json index 213406c49850..eeeac1dc49a7 100644 --- a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/PlatformImages.json +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/PlatformImages.json @@ -4,7 +4,7 @@ "version": "2015-12-01-preview", "title": "Compute Admin Client" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/Quotas.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/Quotas.json index 04ca1bb59baf..046fa9229b43 100644 --- a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/Quotas.json +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/Quotas.json @@ -4,7 +4,7 @@ "version": "2015-12-01-preview", "title": "Compute Admin Client" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/VMExtensions.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/VMExtensions.json index 3c739a075da8..e3ddfb5dadba 100644 --- a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/VMExtensions.json +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/VMExtensions.json @@ -4,7 +4,7 @@ "version": "2015-12-01-preview", "title": "Compute Admin Client" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/examples/Operations/List.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/examples/Operations/List.json index ebf801d8904d..023347b494d8 100644 --- a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/examples/Operations/List.json +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2015-12-01-preview/examples/Operations/List.json @@ -3,6 +3,159 @@ "api-version": "2015-12-01-preview" }, "responses": { - "200": {} + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Compute.Admin/register/action", + "display": { + "provider": "Microsoft.Compute.Admin", + "resource": "Compute Admin Resource Provider", + "operation": "Registers the Compute Admin Resource Provider", + "description": "Registers the subscription for the compute admin resource provider which enables platform image and extension syndication operations" + } + }, + { + "name": "Microsoft.Compute.Admin/operations/read", + "display": { + "provider": "Microsoft.Compute.Admin", + "resource": "Available Compute Admin Operations", + "operation": "List Available Compute Admin Operations", + "description": "Lists operations available on Microsoft.Compute.Admin resource provider." + } + }, + { + "name": "Microsoft.Compute.Admin/locations/quotas/read", + "display": { + "provider": "Microsoft.Compute.Admin", + "resource": "Quotas", + "operation": "Read Quotas", + "description": "Lists quotas" + } + }, + { + "name": "Microsoft.Compute.Admin/locations/quotas/write", + "display": { + "provider": "Microsoft.Compute.Admin", + "resource": "Quotas", + "operation": "Create or Update Quotas", + "description": "Create or Update any Quota" + } + }, + { + "name": "Microsoft.Compute.Admin/locations/quotas/delete", + "display": { + "provider": "Microsoft.Compute.Admin", + "resource": "Quotas", + "operation": "Delete Quota", + "description": "Delete any Quota" + } + }, + { + "name": "Microsoft.Compute.Admin/locations/artifactTypes/read", + "display": { + "provider": "Microsoft.Compute.Admin", + "resource": "Syndication Artifacts", + "operation": "Read Syndication Artifacts", + "description": "List all syndication artifacts of a particular type" + } + }, + { + "name": "Microsoft.Compute.Admin/locations/artifactTypes/publishers/offers/skus/versions/read", + "display": { + "provider": "Microsoft.Compute.Admin", + "resource": "PlatformImage", + "operation": "Read PlatformImage", + "description": "Read PlatformImage for particular Publisher,Offer,Sku,and Version" + } + }, + { + "name": "Microsoft.Compute.Admin/locations/artifactTypes/publishers/offers/skus/versions/write", + "display": { + "provider": "Microsoft.Compute.Admin", + "resource": "PlatformImage", + "operation": "Create Or Update PlatformImage", + "description": "Create or Update any PlatformImage" + } + }, + { + "name": "Microsoft.Compute.Admin/locations/artifactTypes/publishers/offers/skus/versions/delete", + "display": { + "provider": "Microsoft.Compute.Admin", + "resource": "PlatformImage", + "operation": "Delete PlatformImage", + "description": "Delete any PlatformImage" + } + }, + { + "name": "Microsoft.Compute.Admin/locations/artifactTypes/publishers/types/versions/read", + "display": { + "provider": "Microsoft.Compute.Admin", + "resource": "VMExtension", + "operation": "Read VMExtension", + "description": "Read any VMExtension" + } + }, + { + "name": "Microsoft.Compute.Admin/locations/artifactTypes/publishers/types/versions/write", + "display": { + "provider": "Microsoft.Compute.Admin", + "resource": "VMExtension", + "operation": "Create or Update VMExtension", + "description": "Create or Update any VMExtension" + } + }, + { + "name": "Microsoft.Compute.Admin/locations/artifactTypes/publishers/types/versions/delete", + "display": { + "provider": "Microsoft.Compute.Admin", + "resource": "VMExtension", + "operation": "Delete VMExtension", + "description": "Delete any VMExtension" + } + }, + { + "name": "Microsoft.Compute.Admin/locations/Disks/read", + "isDataAction": false, + "display": { + "provider": "Microsoft Compute Admin", + "resource": "Disks", + "operation": "Get Disk", + "description": "Get the properties of a Disk" + } + }, + { + "name": "Microsoft.Compute.Admin/locations/DiskMigrationJobs/read", + "isDataAction": false, + "display": { + "provider": "Microsoft Compute Admin", + "resource": "DiskMigrationJobs", + "operation": "Get disk migration job", + "description": "Get the properties of a disk migration job" + } + }, + { + "name": "Microsoft.Compute.Admin/locations/DiskMigrationJobs/write", + "isDataAction": false, + "display": { + "provider": "Microsoft Compute Admin", + "resource": "DiskMigrationJobs", + "operation": "Create or Update a disk migration job", + "description": "Create or Update a disk migration job" + } + }, + { + "name": "Microsoft.Compute.Admin/locations/DiskMigrationJobs/cancel/action", + "isDataAction": false, + "display": { + "provider": "Microsoft Compute Admin", + "resource": "DiskMigrationJobs", + "operation": "Cancel a disk migration job", + "description": "Cancel a disk migration job" + } + } + ] + } + } } } diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2018-02-09/Quotas.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2018-02-09/Quotas.json index f41c5a492c77..e8517f1d54e0 100644 --- a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2018-02-09/Quotas.json +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2018-02-09/Quotas.json @@ -4,7 +4,7 @@ "version": "2018-02-09", "title": "Compute Admin Client" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2018-07-30-preview/DiskMigrationJobs.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2018-07-30-preview/DiskMigrationJobs.json index a07e54ee1d4d..2456dcf23c55 100644 --- a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2018-07-30-preview/DiskMigrationJobs.json +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2018-07-30-preview/DiskMigrationJobs.json @@ -5,7 +5,7 @@ "title": "ComputeDiskAdminManagementClient", "description": "The Admin Compute Disk Management Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], @@ -114,6 +114,12 @@ { "$ref": "DiskMigrationJobs.json#/parameters/TargetShareParameter" }, + { + "$ref": "DiskMigrationJobs.json#/parameters/TargetScaleUnitParameter" + }, + { + "$ref": "DiskMigrationJobs.json#/parameters/TargetVolumeLabelParameter" + }, { "$ref": "DiskMigrationJobs.json#/parameters/DiskListParameter" }, @@ -378,7 +384,23 @@ "description": "The target share name.", "name": "targetShare", "in": "query", - "required": true, + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "TargetScaleUnitParameter": { + "description": "The target scale unit name.", + "name": "targetScaleUnit", + "in": "query", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "TargetVolumeLabelParameter": { + "description": "The target volume label.", + "name": "targetVolumeLabel", + "in": "query", + "required": false, "type": "string", "x-ms-parameter-location": "method" }, diff --git a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2018-07-30-preview/Disks.json b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2018-07-30-preview/Disks.json index 7d23fb1ee031..b0bfd8aa99e9 100644 --- a/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2018-07-30-preview/Disks.json +++ b/specification/azsadmin/resource-manager/compute/Microsoft.Compute.Admin/preview/2018-07-30-preview/Disks.json @@ -5,7 +5,7 @@ "title": "ComputeDiskAdminManagementClient", "description": "The Admin Compute Disk Management Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], @@ -44,6 +44,12 @@ { "$ref": "Disks.json#/parameters/SourceSharePathParameter" }, + { + "$ref": "Disks.json#/parameters/SourceScaleUnitParameter" + }, + { + "$ref": "Disks.json#/parameters/SourceVolumeLabelParameter" + }, { "$ref": "Disks.json#/parameters/DiskCountParameter" }, @@ -267,13 +273,29 @@ "x-ms-parameter-location": "method" }, "SourceSharePathParameter": { - "description": "The source share which the resource belongs to.", + "description": "The share which the resource belongs to.", "name": "sharePath", "in": "query", "required": false, "type": "string", "x-ms-parameter-location": "method" }, + "SourceScaleUnitParameter": { + "description": "The scale unit which the resource belongs to.", + "name": "scaleUnit", + "in": "query", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SourceVolumeLabelParameter": { + "description": "The volume label of the volume which the resource belongs to.", + "name": "volumeLabel", + "in": "query", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, "DiskCountParameter": { "description": "The maximum number of disks to return.", "name": "count", diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ActionPlan.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ActionPlan.json index 0f24730ed82f..f374728e2b99 100644 --- a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ActionPlan.json +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ActionPlan.json @@ -5,7 +5,7 @@ "title": "DeploymentAdminClient", "description": "Deployment Admin Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ActionPlanOperation.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ActionPlanOperation.json index 9de1d44fcdc7..574331ae41c9 100644 --- a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ActionPlanOperation.json +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ActionPlanOperation.json @@ -5,7 +5,7 @@ "title": "DeploymentAdminClient", "description": "Deployment Admin Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/Deployment.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/Deployment.json index 8d0057c40a0b..9dc085092803 100644 --- a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/Deployment.json +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/Deployment.json @@ -5,7 +5,7 @@ "title": "DeploymentAdminClient", "description": "Deployment Admin Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/FileContainer.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/FileContainer.json index 282c10ba7140..a8885fc7244d 100644 --- a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/FileContainer.json +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/FileContainer.json @@ -5,7 +5,7 @@ "title": "DeploymentAdminClient", "description": "Deployment Admin Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ProductDeployment.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ProductDeployment.json index 7402634f6765..2d066392edfe 100644 --- a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ProductDeployment.json +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ProductDeployment.json @@ -5,7 +5,7 @@ "title": "DeploymentAdminClient", "description": "Deployment Admin Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ProductPackage.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ProductPackage.json index 472aecdd40a0..150376191118 100644 --- a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ProductPackage.json +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ProductPackage.json @@ -5,7 +5,7 @@ "title": "DeploymentAdminClient", "description": "Deployment Admin Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ProductSecret.json b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ProductSecret.json index 3d2c2693a1d9..2b4950722d0d 100644 --- a/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ProductSecret.json +++ b/specification/azsadmin/resource-manager/deployment/Microsoft.Deployment.Admin/preview/2019-01-01/ProductSecret.json @@ -5,7 +5,7 @@ "title": "DeploymentAdminClient", "description": "Deployment Admin Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/ApplicationOperationResults.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/ApplicationOperationResults.json index 4fe463eee510..bad99dc348d3 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/ApplicationOperationResults.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/ApplicationOperationResults.json @@ -5,7 +5,7 @@ "title": "FabricAdminClient", "version": "2016-05-01" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], @@ -93,9 +93,6 @@ "schema": { "$ref": "#/definitions/ApplicationOperationResultList" } - }, - "404": { - "description": "NOT FOUND" } }, "x-ms-pageable": { diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/ComputeOperationResults.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/ComputeOperationResults.json index a73c01e385f5..6105e4ac42d7 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/ComputeOperationResults.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/ComputeOperationResults.json @@ -5,7 +5,7 @@ "title": "FabricAdminClient", "version": "2016-05-01" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], @@ -93,9 +93,6 @@ "schema": { "$ref": "#/definitions/ComputeOperationResultList" } - }, - "404": { - "description": "NOT FOUND" } }, "x-ms-pageable": { diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/EdgeGateway.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/EdgeGateway.json index 09c8edea9ec8..a1834367332e 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/EdgeGateway.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/EdgeGateway.json @@ -5,7 +5,7 @@ "title": "FabricAdminClient", "version": "2016-05-01" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/EdgeGatewayPool.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/EdgeGatewayPool.json index 6f165415bf0e..76e785e3c70c 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/EdgeGatewayPool.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/EdgeGatewayPool.json @@ -5,7 +5,7 @@ "title": "FabricAdminClient", "version": "2016-05-01" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/Fabric.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/Fabric.json index 76c9c6ce499d..c5f330cd75d5 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/Fabric.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/Fabric.json @@ -5,7 +5,7 @@ "title": "FabricAdminClient", "description": "The Admin Fabric Management Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/FabricLocation.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/FabricLocation.json index d38b6a95054d..5a08a6105b36 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/FabricLocation.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/FabricLocation.json @@ -5,7 +5,7 @@ "title": "FabricAdminClient", "version": "2016-05-01" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/FileShare.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/FileShare.json index e68576ec1971..7726d7c276c8 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/FileShare.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/FileShare.json @@ -5,7 +5,7 @@ "title": "FabricAdminClient", "version": "2016-05-01" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/InfraRole.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/InfraRole.json index 1db19aea1201..5b6f57e438bd 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/InfraRole.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/InfraRole.json @@ -5,7 +5,7 @@ "title": "FabricAdminClient", "version": "2016-05-01" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/InfraRoleInstance.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/InfraRoleInstance.json index 9865c8bedfdd..47169eafcfaa 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/InfraRoleInstance.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/InfraRoleInstance.json @@ -5,7 +5,7 @@ "title": "FabricAdminClient", "version": "2016-05-01" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/IpPool.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/IpPool.json index 7baf92a8d9df..326a35036a54 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/IpPool.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/IpPool.json @@ -5,7 +5,7 @@ "title": "FabricAdminClient", "version": "2016-05-01" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/LogicalNetwork.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/LogicalNetwork.json index 44719f878030..6ecedab00acc 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/LogicalNetwork.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/LogicalNetwork.json @@ -5,7 +5,7 @@ "title": "FabricAdminClient", "version": "2016-05-01" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/LogicalSubnet.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/LogicalSubnet.json index 641cba94b954..0ed459edc4aa 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/LogicalSubnet.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/LogicalSubnet.json @@ -5,7 +5,7 @@ "title": "FabricAdminClient", "version": "2016-05-01" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/MacAddressPool.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/MacAddressPool.json index 3c1845337126..994c71a6f276 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/MacAddressPool.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/MacAddressPool.json @@ -5,7 +5,7 @@ "title": "FabricAdminClient", "version": "2016-05-01" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/NetworkOperationResults.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/NetworkOperationResults.json index 4966c26906c7..a7e8784666b8 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/NetworkOperationResults.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/NetworkOperationResults.json @@ -5,7 +5,7 @@ "title": "FabricAdminClient", "version": "2016-05-01" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/ScaleUnit.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/ScaleUnit.json index b61bb0c6bbfb..3b5e5924312c 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/ScaleUnit.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/ScaleUnit.json @@ -5,7 +5,7 @@ "title": "FabricAdminClient", "version": "2016-05-01" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/ScaleUnitNode.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/ScaleUnitNode.json index a3288db8c73b..09971721d26e 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/ScaleUnitNode.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/ScaleUnitNode.json @@ -5,7 +5,7 @@ "title": "FabricAdminClient", "version": "2016-05-01" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/SlbMuxInstance.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/SlbMuxInstance.json index d8a9eff07e72..a3e01482abbb 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/SlbMuxInstance.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/SlbMuxInstance.json @@ -5,7 +5,7 @@ "title": "FabricAdminClient", "version": "2016-05-01" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/StorageOperationResults.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/StorageOperationResults.json index 489b9db089c2..33b277d2287d 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/StorageOperationResults.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/StorageOperationResults.json @@ -5,7 +5,7 @@ "title": "FabricAdminClient", "version": "2016-05-01" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/StoragePool.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/StoragePool.json index 962cb681f7be..fe5634b3a485 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/StoragePool.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/StoragePool.json @@ -5,7 +5,7 @@ "title": "FabricAdminClient", "version": "2016-05-01" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/StorageSystem.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/StorageSystem.json index 6f11e6406417..864808d3adae 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/StorageSystem.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/StorageSystem.json @@ -5,7 +5,7 @@ "title": "FabricAdminClient", "version": "2016-05-01" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/Volume.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/Volume.json index aa038f7f618b..192614f0c06a 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/Volume.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/Volume.json @@ -5,7 +5,7 @@ "title": "FabricAdminClient", "version": "2016-05-01" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/examples/ApplicationOperationResult/List.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/examples/ApplicationOperationResult/List.json index 12fc8f2be5c9..99f6e0f7c7b1 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/examples/ApplicationOperationResult/List.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/examples/ApplicationOperationResult/List.json @@ -17,15 +17,10 @@ { "properties": { "provisioningState": "Failed" - }, - "error": { - "code": "OperationBlockedDueToUpdateInProgress", - "message": "The operation cannot be performed at the present time, because there is an Azure Stack update in progress. Wait until the Azure Stack update is complete and then try your operation again." } } ] } - }, - "404": {} + } } } diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/examples/ComputeOperationResult/List.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/examples/ComputeOperationResult/List.json index 12fc8f2be5c9..99f6e0f7c7b1 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/examples/ComputeOperationResult/List.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/examples/ComputeOperationResult/List.json @@ -17,15 +17,10 @@ { "properties": { "provisioningState": "Failed" - }, - "error": { - "code": "OperationBlockedDueToUpdateInProgress", - "message": "The operation cannot be performed at the present time, because there is an Azure Stack update in progress. Wait until the Azure Stack update is complete and then try your operation again." } } ] } - }, - "404": {} + } } } diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/examples/IpPool/Create.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/examples/IpPool/Create.json index a6768c14461a..929420506a6a 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/examples/IpPool/Create.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/examples/IpPool/Create.json @@ -16,10 +16,18 @@ "200": { "body": { "properties": { - "provisioningState": "Succeeded" + "startIpAddress": "192.168.1.1", + "endIpAddress": "192.168.1.254" } } }, - "202": {} + "202": { + "body": { + "properties": { + "startIpAddress": "192.168.1.1", + "endIpAddress": "192.168.1.254" + } + } + } } } diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/examples/NetworkOperationResult/List.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/examples/NetworkOperationResult/List.json index 12fc8f2be5c9..37f449fb71d0 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/examples/NetworkOperationResult/List.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/examples/NetworkOperationResult/List.json @@ -17,10 +17,6 @@ { "properties": { "provisioningState": "Failed" - }, - "error": { - "code": "OperationBlockedDueToUpdateInProgress", - "message": "The operation cannot be performed at the present time, because there is an Azure Stack update in progress. Wait until the Azure Stack update is complete and then try your operation again." } } ] diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/examples/StorageOperationResult/List.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/examples/StorageOperationResult/List.json index 12fc8f2be5c9..37f449fb71d0 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/examples/StorageOperationResult/List.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/examples/StorageOperationResult/List.json @@ -17,10 +17,6 @@ { "properties": { "provisioningState": "Failed" - }, - "error": { - "code": "OperationBlockedDueToUpdateInProgress", - "message": "The operation cannot be performed at the present time, because there is an Azure Stack update in progress. Wait until the Azure Stack update is complete and then try your operation again." } } ] diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2018-10-01/Drive.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2018-10-01/Drive.json index bd3f9ca72ad5..372c62f926b2 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2018-10-01/Drive.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2018-10-01/Drive.json @@ -5,7 +5,7 @@ "title": "FabricAdminClient", "version": "2018-10-01" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2018-10-01/StorageSubSystem.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2018-10-01/StorageSubSystem.json index d42f6fbd0f0a..5cbd44d07ee9 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2018-10-01/StorageSubSystem.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2018-10-01/StorageSubSystem.json @@ -5,7 +5,7 @@ "title": "FabricAdminClient", "version": "2018-10-01" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2018-10-01/Volume.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2018-10-01/Volume.json index 5e0ff0ee01e1..99cd2b6d1eb9 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2018-10-01/Volume.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2018-10-01/Volume.json @@ -5,7 +5,7 @@ "title": "FabricAdminClient", "version": "2018-10-01" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2019-05-01/Drive.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2019-05-01/Drive.json index 66248bd6bff5..a49309035b87 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2019-05-01/Drive.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2019-05-01/Drive.json @@ -5,7 +5,7 @@ "title": "FabricAdminClient", "version": "2019-05-01" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2019-05-01/NasCluster.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2019-05-01/NasCluster.json new file mode 100644 index 000000000000..e93aa4081d80 --- /dev/null +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2019-05-01/NasCluster.json @@ -0,0 +1,207 @@ +{ + "swagger": "2.0", + "info": { + "description": "Nas Cluster operation endpoints and objects.", + "title": "FabricAdminClient", + "version": "2019-05-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Fabric.Admin/fabricLocations/{location}/nasClusters/{nasCluster}": { + "get": { + "x-ms-examples": { + "Return the requested a nas cluster.": { + "$ref": "./examples/NasCluster/Get.json" + } + }, + "tags": [ + "NasClusters" + ], + "description": "Return the requested nas cluster.", + "operationId": "NasClusters_Get", + "parameters": [ + { + "$ref": "../2016-05-01/Fabric.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../2016-05-01/Fabric.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "../2016-05-01/Fabric.json#/parameters/LocationParameter" + }, + { + "$ref": "#/parameters/NasClusterParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NasCluster" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Fabric.Admin/fabricLocations/{location}/nasClusters": { + "get": { + "x-ms-examples": { + "Returns a list of all storage nas clusters at a location.": { + "$ref": "./examples/NasCluster/List.json" + } + }, + "tags": [ + "NasClusters" + ], + "description": "Returns a list of all nas clusters at a location.", + "operationId": "NasClusters_List", + "parameters": [ + { + "$ref": "../2016-05-01/Fabric.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../2016-05-01/Fabric.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "../2016-05-01/Fabric.json#/parameters/LocationParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "../2016-05-01/Fabric.json#/parameters/FilterParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/NasClusterList" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/NasCluster" + } + } + }, + "definitions": { + "NasCluster": { + "description": "Representation of a nas cluster resource.", + "type": "object", + "properties": { + "properties": { + "description": "Properties of a nas cluster.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/NasClusterModel" + } + }, + "allOf": [ + { + "$ref": "../2016-05-01/Fabric.json#/definitions/Resource" + } + ] + }, + "NasClusterModel": { + "description": "Properties of a nas cluster.", + "type": "object", + "properties": { + "clusterName": { + "description": "Name of nas cluster", + "type": "string", + "readOnly": true + }, + "portalUri": { + "description": "The portal Uri of Nas Cluster", + "type": "string", + "readOnly": true + }, + "size": { + "description": "The size of Nas Cluster in bytes", + "format": "int64", + "type": "integer", + "readOnly": true + }, + "sizeRemaining": { + "description": "The remaining size of Nas Cluster in bytes", + "format": "int64", + "type": "integer", + "readOnly": true + } + } + }, + "NasClusterList": { + "description": "Pageable list of nas clusters.", + "type": "object", + "properties": { + "value": { + "description": "List of nas clusters.", + "type": "array", + "items": { + "$ref": "#/definitions/NasCluster" + } + }, + "nextLink": { + "description": "URI to the next page.", + "type": "string" + } + } + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "Client API Version.", + "required": true, + "type": "string", + "default": "2019-05-01" + }, + "NasClusterParameter": { + "name": "nasCluster", + "description": "Name of the nas cluster.", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + }, + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Authorization uses an Azure Active Directory OAuth2 flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2019-05-01/Volume.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2019-05-01/Volume.json index 5b9034456929..316cfe034ae4 100644 --- a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2019-05-01/Volume.json +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2019-05-01/Volume.json @@ -5,7 +5,7 @@ "title": "FabricAdminClient", "version": "2019-05-01" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2019-05-01/examples/NasCluster/Get.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2019-05-01/examples/NasCluster/Get.json new file mode 100644 index 000000000000..ba17aab46318 --- /dev/null +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2019-05-01/examples/NasCluster/Get.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2019-05-01", + "subscriptionId": "72526b2b-4b61-4700-8f0c-7bb7ae9b6a2d", + "resourceGroupName": "System.redmond", + "location": "redmond", + "nasCluster": "bc489b66-faa7-41f0-bee7-bcba258f10fb" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/72526b2b-4b61-4700-8f0c-7bb7ae9b6a2d/resourceGroups/System.redmond/providers/Microsoft.Fabric.Admin/fabricLocations/redmond/nasClusters/bc489b66-faa7-41f0-bee7-bcba258f10fb", + "name": "redmond/bc489b66-faa7-41f0-bee7-bcba258f10fb", + "type": "Microsoft.Fabric.Admin/fabricLocations/nasClusters", + "location": "redmond", + "tags": {}, + "properties": { + "size": 193273528320, + "sizeRemaining": 20185522176, + "clusterName": "IsilonR430", + "portalUri": "https://100.85.198.239:8080/" + } + } + } + } +} diff --git a/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2019-05-01/examples/NasCluster/List.json b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2019-05-01/examples/NasCluster/List.json new file mode 100644 index 000000000000..fb2283a82cc9 --- /dev/null +++ b/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2019-05-01/examples/NasCluster/List.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2019-05-01", + "subscriptionId": "72526b2b-4b61-4700-8f0c-7bb7ae9b6a2d", + "resourceGroupName": "System.redmond", + "location": "redmond" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/72526b2b-4b61-4700-8f0c-7bb7ae9b6a2d/resourceGroups/System.redmond/providers/Microsoft.Fabric.Admin/fabricLocations/redmond/nasClusters/bc489b66-faa7-41f0-bee7-bcba258f10fb", + "name": "redmond/bc489b66-faa7-41f0-bee7-bcba258f10fb", + "type": "Microsoft.Fabric.Admin/fabricLocations/nasClusters", + "location": "redmond", + "tags": {}, + "properties": { + "size": 193273528320, + "sizeRemaining": 20185522176, + "clusterName": "IsilonR430", + "portalUri": "https://100.85.198.239:8080/" + } + } + ] + } + } + } +} diff --git a/specification/azsadmin/resource-manager/fabric/readme.md b/specification/azsadmin/resource-manager/fabric/readme.md index 606cf1b9bb7b..66c605b587f4 100644 --- a/specification/azsadmin/resource-manager/fabric/readme.md +++ b/specification/azsadmin/resource-manager/fabric/readme.md @@ -114,6 +114,7 @@ input-file: - "Microsoft.Fabric.Admin/preview/2018-10-01/StorageSubSystem.json" - "Microsoft.Fabric.Admin/preview/2019-05-01/Drive.json" - "Microsoft.Fabric.Admin/preview/2019-05-01/Volume.json" + - "Microsoft.Fabric.Admin/preview/2019-05-01/NasCluster.json" ``` ## Suppression @@ -185,6 +186,7 @@ input-file: - $(this-folder)/Microsoft.Fabric.Admin/preview/2018-10-01/Volume.json - $(this-folder)/Microsoft.Fabric.Admin/preview/2019-05-01/Drive.json - $(this-folder)/Microsoft.Fabric.Admin/preview/2019-05-01/Volume.json + - $(this-folder)/Microsoft.Fabric.Admin/preview/2019-05-01/NasCluster.json ``` diff --git a/specification/azsadmin/resource-manager/gallery/Microsoft.Gallery.Admin/preview/2015-04-01/Gallery.json b/specification/azsadmin/resource-manager/gallery/Microsoft.Gallery.Admin/preview/2015-04-01/Gallery.json index db84e1cfe080..4d73bc999c64 100644 --- a/specification/azsadmin/resource-manager/gallery/Microsoft.Gallery.Admin/preview/2015-04-01/Gallery.json +++ b/specification/azsadmin/resource-manager/gallery/Microsoft.Gallery.Admin/preview/2015-04-01/Gallery.json @@ -5,7 +5,7 @@ "title": "GalleryManagementClient", "description": "The Admin Gallery Management Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/gallery/Microsoft.Gallery.Admin/preview/2015-04-01/GalleryItem.json b/specification/azsadmin/resource-manager/gallery/Microsoft.Gallery.Admin/preview/2015-04-01/GalleryItem.json index 7a69e8aa17d7..7c4c055353b9 100644 --- a/specification/azsadmin/resource-manager/gallery/Microsoft.Gallery.Admin/preview/2015-04-01/GalleryItem.json +++ b/specification/azsadmin/resource-manager/gallery/Microsoft.Gallery.Admin/preview/2015-04-01/GalleryItem.json @@ -5,7 +5,7 @@ "title": "GalleryManagementClient", "description": "The Admin Gallery Management Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/infrastructureinsights/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/Alert.json b/specification/azsadmin/resource-manager/infrastructureinsights/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/Alert.json index 1f405b787540..6bfd9fb785ce 100644 --- a/specification/azsadmin/resource-manager/infrastructureinsights/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/Alert.json +++ b/specification/azsadmin/resource-manager/infrastructureinsights/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/Alert.json @@ -5,7 +5,7 @@ "title": "InfrastructureInsightsManagementClient", "version": "2016-05-01" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/infrastructureinsights/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/InfrastructureInsights.json b/specification/azsadmin/resource-manager/infrastructureinsights/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/InfrastructureInsights.json index 2bf034cbfaca..da54c9b89749 100644 --- a/specification/azsadmin/resource-manager/infrastructureinsights/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/InfrastructureInsights.json +++ b/specification/azsadmin/resource-manager/infrastructureinsights/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/InfrastructureInsights.json @@ -5,7 +5,7 @@ "title": "InfrastructureInsightsManagementClient", "description": "The Admin Infrastructure Insights Management Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/infrastructureinsights/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/RegionHealth.json b/specification/azsadmin/resource-manager/infrastructureinsights/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/RegionHealth.json index 288fdbacf753..2bf426bd5de2 100644 --- a/specification/azsadmin/resource-manager/infrastructureinsights/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/RegionHealth.json +++ b/specification/azsadmin/resource-manager/infrastructureinsights/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/RegionHealth.json @@ -5,7 +5,7 @@ "title": "InfrastructureInsightsManagementClient", "version": "2016-05-01" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/infrastructureinsights/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/ResourceHealth.json b/specification/azsadmin/resource-manager/infrastructureinsights/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/ResourceHealth.json index ced83170af43..8c9855cb68be 100644 --- a/specification/azsadmin/resource-manager/infrastructureinsights/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/ResourceHealth.json +++ b/specification/azsadmin/resource-manager/infrastructureinsights/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/ResourceHealth.json @@ -5,7 +5,7 @@ "title": "InfrastructureInsightsManagementClient", "version": "2016-05-01" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/infrastructureinsights/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/ServiceHealth.json b/specification/azsadmin/resource-manager/infrastructureinsights/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/ServiceHealth.json index a1049299ac6b..3456542bb7e1 100644 --- a/specification/azsadmin/resource-manager/infrastructureinsights/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/ServiceHealth.json +++ b/specification/azsadmin/resource-manager/infrastructureinsights/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/ServiceHealth.json @@ -5,7 +5,7 @@ "title": "InfrastructureInsightsManagementClient", "version": "2016-05-01" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/infrastructureinsights/readme.azsautogen.md b/specification/azsadmin/resource-manager/infrastructureinsights/readme.azsautogen.md new file mode 100644 index 000000000000..f0222d2c36dc --- /dev/null +++ b/specification/azsadmin/resource-manager/infrastructureinsights/readme.azsautogen.md @@ -0,0 +1,12 @@ +# AutoRest v3 generators + +> see https://aka.ms/autorest + +``` yaml +input-file: + - $(this-folder)/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/InfrastructureInsights.json + - $(this-folder)/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/Alert.json + - $(this-folder)/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/RegionHealth.json + - $(this-folder)/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/ResourceHealth.json + - $(this-folder)/Microsoft.InfrastructureInsights.Admin/preview/2016-05-01/ServiceHealth.json +``` \ No newline at end of file diff --git a/specification/azsadmin/resource-manager/infrastructureinsights/readme.md b/specification/azsadmin/resource-manager/infrastructureinsights/readme.md index 27c9a298d00f..090ab2c84dcc 100644 --- a/specification/azsadmin/resource-manager/infrastructureinsights/readme.md +++ b/specification/azsadmin/resource-manager/infrastructureinsights/readme.md @@ -60,9 +60,11 @@ csharp: clear-output-folder: true ``` -## Multi-API/Profile support for AutoRest v3 generators +## Multi-API/Profile support for AutoRest v3 generators -AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. +AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. + +> see https://aka.ms/autorest This block is updated by an automatic script. Edits may be lost! @@ -80,11 +82,10 @@ input-file: ``` -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 -``` +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/azsadmin/resource-manager/keyvault/Microsoft.KeyVault.Admin/preview/2017-02-01-preview/KeyVault.json b/specification/azsadmin/resource-manager/keyvault/Microsoft.KeyVault.Admin/preview/2017-02-01-preview/KeyVault.json index 4a2e7c4b2c11..b6df4f04c822 100644 --- a/specification/azsadmin/resource-manager/keyvault/Microsoft.KeyVault.Admin/preview/2017-02-01-preview/KeyVault.json +++ b/specification/azsadmin/resource-manager/keyvault/Microsoft.KeyVault.Admin/preview/2017-02-01-preview/KeyVault.json @@ -5,7 +5,7 @@ "title": "KeyVaultManagementClient", "description": "The Admin KeyVault Management Client." }, - "host": "management.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/keyvault/Microsoft.KeyVault.Admin/preview/2017-02-01-preview/Quotas.json b/specification/azsadmin/resource-manager/keyvault/Microsoft.KeyVault.Admin/preview/2017-02-01-preview/Quotas.json index 072d5e04865d..d1c246d815d7 100644 --- a/specification/azsadmin/resource-manager/keyvault/Microsoft.KeyVault.Admin/preview/2017-02-01-preview/Quotas.json +++ b/specification/azsadmin/resource-manager/keyvault/Microsoft.KeyVault.Admin/preview/2017-02-01-preview/Quotas.json @@ -5,7 +5,7 @@ "title": "KeyVaultManagementClient", "description": "The Admin KeyVault Management Client." }, - "host": "management.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/LoadBalancers.json b/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/LoadBalancers.json index 2c0ff732b329..98f7b7a58b50 100644 --- a/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/LoadBalancers.json +++ b/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/LoadBalancers.json @@ -5,7 +5,7 @@ "title": "NetworkAdminManagementClient", "version": "2015-06-15" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/Network.json b/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/Network.json index 78c9add8cc90..39d33b1b0bb2 100644 --- a/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/Network.json +++ b/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/Network.json @@ -5,7 +5,7 @@ "title": "NetworkAdminManagementClient", "version": "2015-06-15" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], @@ -80,7 +80,7 @@ "get": { "x-ms-examples": { "Returns the list of supported locations.": { - "$ref": "./examples/Operations/List.json" + "$ref": "./examples/Locations/List.json" } }, "description": "Returns the list of supported locations", diff --git a/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/PublicIpAddresses.json b/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/PublicIpAddresses.json index aea83c54c90e..32e5f07c938b 100644 --- a/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/PublicIpAddresses.json +++ b/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/PublicIpAddresses.json @@ -5,7 +5,7 @@ "title": "NetworkAdminManagementClient", "version": "2015-06-15" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], @@ -19,14 +19,14 @@ "/subscriptions/{subscriptionId}/providers/Microsoft.Network.Admin/adminPublicIpAddresses": { "get": { "x-ms-examples": { - "List of public ip addresses": { + "List of public IP addresses": { "$ref": "./examples/PublicIpAddresses/List.json" } }, "tags": [ "PublicIpAddresses" ], - "description": "List of public ip addresses.", + "description": "List of public IP addresses.", "operationId": "PublicIPAddresses_List", "parameters": [ { diff --git a/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/Quotas.json b/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/Quotas.json index 6f6c6149af9f..adb8d7713fc4 100644 --- a/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/Quotas.json +++ b/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/Quotas.json @@ -5,7 +5,7 @@ "title": "NetworkAdminManagementClient", "version": "2015-06-15" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/VirtualNetworks.json b/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/VirtualNetworks.json index 30d4037ff6de..1a3b6d5806cd 100644 --- a/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/VirtualNetworks.json +++ b/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/VirtualNetworks.json @@ -5,7 +5,7 @@ "title": "NetworkAdminManagementClient", "version": "2015-06-15" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/examples/Operations/List.json b/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/examples/Operations/List.json index 7715ca4d7950..6a8d41f2669a 100644 --- a/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/examples/Operations/List.json +++ b/specification/azsadmin/resource-manager/network/Microsoft.Network.Admin/preview/2015-06-15/examples/Operations/List.json @@ -6,8 +6,104 @@ "responses": { "200": { "body": { - "value": [], - "nextLink": "" + "value": [ + { + "display": { + "provider": "Microsoft.Network.Admin", + "resource": "AdminOverview", + "operation": "AdminOverview", + "description": "Summary Overview of Network Resources across subscriptions." + }, + "name": "Microsoft.Network.Admin/adminOverview/read" + }, + { + "display": { + "provider": "Microsoft.Network.Admin", + "resource": "VirtualNetwork", + "operation": "VirtualNetwork", + "description": "Gets a list of tenant virtual networks across all subscriptions." + }, + "name": "Microsoft.Network.Admin/adminVirtualNetworks/read" + }, + { + "display": { + "provider": "Microsoft.Network.Admin", + "resource": "LoadBalancer", + "operation": "LoadBalancer", + "description": "Gets information about all load balancers across subscriptions." + }, + "name": "Microsoft.Network.Admin/adminLoadBalancers/read" + }, + { + "display": { + "provider": "Microsoft.Network.Admin", + "resource": "PublicIpAddresses", + "operation": "PublicIpAddresses", + "description": "Lists public IP Addresses created by tenants across all subscriptions." + }, + "name": "Microsoft.Network.Admin/adminPublicIpAddresses/read" + }, + { + "display": { + "provider": "Microsoft.Network.Admin", + "resource": "Subscription", + "operation": "RegisterSubscription", + "description": "RegistersTheSubscription" + }, + "name": "Microsoft.Network.Admin/register/action" + }, + { + "display": { + "provider": "Microsoft.Network.Admin", + "resource": "QuotaOperation", + "operation": "ReadQuota", + "description": "Read action on Quota resources" + }, + "name": "Microsoft.Network.Admin/locations/quotas/read" + }, + { + "display": { + "provider": "Microsoft.Network.Admin", + "resource": "QuotaOperation", + "operation": "WriteQuota", + "description": "Write action on Quota resources" + }, + "name": "Microsoft.Network.Admin/locations/quotas/write" + }, + { + "display": { + "provider": "Microsoft.Network.Admin", + "resource": "QuotaOperation", + "operation": "DeleteQuota", + "description": "Delete action on Quota resources" + }, + "name": "Microsoft.Network.Admin/locations/quotas/delete" + }, + { + "display": { + "provider": "Microsoft.Network.Admin" + }, + "name": "Microsoft.Network.Admin/operations/read" + }, + { + "display": { + "provider": "Microsoft.Network.Admin" + }, + "name": "Microsoft.Network.Admin/locations/read" + }, + { + "display": { + "provider": "Microsoft.Network.Admin" + }, + "name": "Microsoft.Network.Admin/locations/operations/read" + }, + { + "display": { + "provider": "Microsoft.Network.Admin" + }, + "name": "Microsoft.Network.Admin/locations/operationResults/read" + } + ] } } } diff --git a/specification/azsadmin/resource-manager/network/readme.md b/specification/azsadmin/resource-manager/network/readme.md index 82e85487c204..cdf14bc0b3bd 100644 --- a/specification/azsadmin/resource-manager/network/readme.md +++ b/specification/azsadmin/resource-manager/network/readme.md @@ -27,17 +27,13 @@ openapi-type: arm tag: package-2015-06-15 ``` -### Tag: package-2015-06-15 - -These settings apply only when `--tag=package-2015-06-15` is specified on the command line. - -``` yaml $(tag) == 'package-2015-06-15' +``` yaml input-file: - - "Microsoft.Network.Admin/preview/2015-06-15/Network.json" - - "Microsoft.Network.Admin/preview/2015-06-15/LoadBalancers.json" - - "Microsoft.Network.Admin/preview/2015-06-15/PublicIpAddresses.json" - - "Microsoft.Network.Admin/preview/2015-06-15/Quotas.json" - - "Microsoft.Network.Admin/preview/2015-06-15/VirtualNetworks.json" + - Microsoft.Network.Admin/preview/2015-06-15/Network.json + - Microsoft.Network.Admin/preview/2015-06-15/LoadBalancers.json + - Microsoft.Network.Admin/preview/2015-06-15/PublicIpAddresses.json + - Microsoft.Network.Admin/preview/2015-06-15/Quotas.json + - Microsoft.Network.Admin/preview/2015-06-15/VirtualNetworks.json ``` --- @@ -58,7 +54,7 @@ csharp: clear-output-folder: true ``` -## Multi-API/Profile support for AutoRest v3 generators +## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. @@ -78,11 +74,11 @@ input-file: ``` -If there are files that should not be in the `all-api-versions` set, +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: + +#exclude-file: # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` - diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/acquisitions.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/acquisitions.json index 0adabf8037e1..8d7705b67751 100644 --- a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/acquisitions.json +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/acquisitions.json @@ -5,7 +5,7 @@ "title": "StorageManagementClient", "description": "The Admin Storage Management Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/Operations/List.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/Operations/List.json index 05aede9aac06..f82831a862ce 100644 --- a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/Operations/List.json +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/examples/Operations/List.json @@ -5,7 +5,134 @@ "responses": { "200": { "body": { - "value": [] + "value": [ + { + "name": "Microsoft.Storage.Admin/locations/quotas/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Quotas", + "operation": "List/Get Storage Quota(s)", + "description": "Gets a list of all Storage quota resources in the specified location." + } + }, + { + "name": "Microsoft.Storage.Admin/locations/quotas/write", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Quotas", + "operation": "Create/Update Storage Quota", + "description": "Creates a Storage quota resource or modifies the quota values in the specified location." + } + }, + { + "name": "Microsoft.Storage.Admin/locations/quotas/delete", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Quotas", + "operation": "Delete Storage Quota", + "description": "Deletes the given Storage quota resource from the specified location." + } + }, + { + "name": "Microsoft.Storage.Admin/operations/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Operations", + "operation": "List Available Operations", + "description": "Lists operations available on storage resource provider" + } + }, + { + "name": "Microsoft.Storage.Admin/locations/settings/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Settings", + "operation": "Get Storage Settings(s)", + "description": "Returns the settings of storage resource provider." + } + }, + { + "name": "Microsoft.Storage.Admin/locations/settings/write", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Settings", + "operation": "Update Storage Settings", + "description": "Modifies the Storage settings." + } + }, + { + "name": "Microsoft.Storage.Admin/locations/acquisitions/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Page Blob Acquisition", + "operation": "List/Get Storage Page Blob Acquisition(s)", + "description": "Gets or lists page blob acquisitions." + } + }, + { + "name": "Microsoft.Storage.Admin/locations/storageAccounts/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Accounts", + "operation": "List/Get Storage Account(s)", + "description": "Returns the list of storage accounts or gets the properties for the specified storage account." + } + }, + { + "name": "Microsoft.Storage.Admin/locations/storageAccounts/undelete/action", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Accounts", + "operation": "Undelete Storage Account", + "description": "Tries to recover a deleted storage account." + } + }, + { + "name": "Microsoft.Storage.Admin/locations/reclaimstoragecapacity/action", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Accounts", + "operation": "Forces Storage Accounts Garbage Collection", + "description": "Forces garbage collection of all deleted storage accounts, regardless of the retention period setting." + } + }, + { + "name": "Microsoft.Storage.Admin/StorageServices/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Services", + "operation": "List/Get Storage Service(s)", + "description": "List/Get Storage Service(s)" + } + }, + { + "name": "Microsoft.Storage.Admin/StorageServices/write", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Services", + "operation": "Create/Update Storage Service", + "description": "Create/Update Storage Service" + } + }, + { + "name": "Microsoft.Storage.Admin/locations/AsyncOperations/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Admin Async Operations", + "operation": "Query Async Operation Status", + "description": "Query Async Operation Status" + } + }, + { + "name": "Microsoft.Storage.Admin/storageservices/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Storage", + "resource": "Storage Services", + "operation": "Get list of Microsoft Storage Services Metrics definitions", + "description": "Get list of Microsoft Storage Services Metrics definitions" + } + } + ] } } } diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/quotas.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/quotas.json index 7155df97cde7..6a7bfc79d548 100644 --- a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/quotas.json +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/quotas.json @@ -5,7 +5,7 @@ "title": "StorageManagementClient", "description": "The Admin Storage Management Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/settings.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/settings.json index 3f9431507cc3..9f8a9e4bc325 100644 --- a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/settings.json +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/settings.json @@ -5,7 +5,7 @@ "title": "StorageManagementClient", "description": "The Admin Storage Management Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/storage.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/storage.json index a8039c32be30..7f09a86f4239 100644 --- a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/storage.json +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/storage.json @@ -5,7 +5,7 @@ "title": "StorageManagementClient", "description": "The Admin Storage Management Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/storageaccounts.json b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/storageaccounts.json index 58bf10a44dd3..ec8df91cef15 100644 --- a/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/storageaccounts.json +++ b/specification/azsadmin/resource-manager/storage/Microsoft.Storage.Admin/preview/2019-08-08/storageaccounts.json @@ -5,7 +5,7 @@ "title": "StorageManagementClient", "description": "The Admin Storage Management Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/AcquiredPlan.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/AcquiredPlan.json index b6468c92f599..04acfa702958 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/AcquiredPlan.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/AcquiredPlan.json @@ -5,7 +5,7 @@ "title": "SubscriptionsManagementClient", "description": "The Admin Subscriptions Management Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], @@ -146,7 +146,7 @@ "$ref": "Subscriptions.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/NewAcquiredPlanParameter" + "$ref": "#/parameters/AcquiredPlanDefinitionParameter" } ], "responses": { @@ -268,8 +268,8 @@ "type": "string", "x-ms-parameter-location": "method" }, - "NewAcquiredPlanParameter": { - "name": "newAcquiredPlan", + "AcquiredPlanDefinitionParameter": { + "name": "acquiredPlanDefinition", "in": "body", "description": "The new acquired plan.", "required": true, diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/DelegatedProvider.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/DelegatedProvider.json index 87d8aa58c438..a9eeb6578fb2 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/DelegatedProvider.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/DelegatedProvider.json @@ -5,7 +5,7 @@ "title": "SubscriptionsManagementClient", "description": "The Admin Subscriptions Management Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], @@ -76,7 +76,7 @@ "200": { "description": "OK", "schema": { - "$ref": "Subscriptions.json#/definitions/Subscription" + "$ref": "Subscriptions.json#/definitions/SubscriptionDefinition" } } } diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/DelegatedProviderOffer.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/DelegatedProviderOffer.json index 5972341c0599..11d3af7323ad 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/DelegatedProviderOffer.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/DelegatedProviderOffer.json @@ -5,7 +5,7 @@ "title": "SubscriptionsManagementClient", "description": "The Admin Subscriptions Management Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/DirectoryTenant.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/DirectoryTenant.json index 82620bea3d15..0c672375780e 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/DirectoryTenant.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/DirectoryTenant.json @@ -5,7 +5,7 @@ "title": "SubscriptionsManagementClient", "description": "The Admin Subscriptions Management Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], @@ -146,7 +146,7 @@ "$ref": "Subscriptions.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/NewDirectoryTenantParameter" + "$ref": "#/parameters/DirectoryTenantDefinitionParameter" } ], "responses": { @@ -220,9 +220,9 @@ "in": "path", "x-ms-parameter-location": "method" }, - "NewDirectoryTenantParameter": { + "DirectoryTenantDefinitionParameter": { "description": "New directory tenant properties.", - "name": "newTenant", + "name": "tenantDefinition", "required": true, "in": "body", "schema": { diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Location.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Location.json index c71901bf8c87..434d8d0351fb 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Location.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Location.json @@ -5,7 +5,7 @@ "title": "SubscriptionsManagementClient", "description": "The Admin Subscriptions Management Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Manifest.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Manifest.json index aa38af5eefcb..7745eb8e3f9b 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Manifest.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Manifest.json @@ -5,7 +5,7 @@ "title": "SubscriptionsManagementClient", "description": "The Admin Subscriptions Management Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Offer.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Offer.json index 5202360887df..7bc9a7d831c5 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Offer.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Offer.json @@ -5,7 +5,7 @@ "title": "SubscriptionsManagementClient", "description": "The Admin Subscriptions Management Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], @@ -49,7 +49,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Subscriptions.Admin/offers": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Subscriptions.Admin/offers": { "get": { "x-ms-examples": { "Get the list of offers under a resource group.": { @@ -85,7 +85,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Subscriptions.Admin/offers/{offer}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Subscriptions.Admin/offers/{offer}": { "get": { "x-ms-examples": { "Get the specified offer.": { @@ -145,7 +145,7 @@ "$ref": "Subscriptions.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/NewOfferParameter" + "$ref": "#/parameters/OfferDefinitionParameter" } ], "responses": { @@ -198,7 +198,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Subscriptions.Admin/offers/{offer}/metrics": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Subscriptions.Admin/offers/{offer}/metrics": { "get": { "x-ms-examples": { "Get the offer metrics.": { @@ -234,7 +234,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Subscriptions.Admin/offers/{offer}/metricDefinitions": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Subscriptions.Admin/offers/{offer}/metricDefinitions": { "get": { "x-ms-examples": { "Get the metric definitions.": { @@ -270,7 +270,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Subscriptions.Admin/offers/{offer}/link": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Subscriptions.Admin/offers/{offer}/link": { "post": { "x-ms-examples": { "Links a plan to an offer.": { @@ -309,7 +309,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Subscriptions.Admin/offers/{offer}/unlink": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Subscriptions.Admin/offers/{offer}/unlink": { "post": { "x-ms-examples": { "Unlink a plan from an offer.": { @@ -508,9 +508,9 @@ } }, "parameters": { - "NewOfferParameter": { + "OfferDefinitionParameter": { "description": "New offer.", - "name": "newOffer", + "name": "offerDefinition", "in": "body", "required": true, "schema": { diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/OfferDelegation.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/OfferDelegation.json index 067597e32dd3..5835126620fc 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/OfferDelegation.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/OfferDelegation.json @@ -5,7 +5,7 @@ "title": "SubscriptionsManagementClient", "description": "The Admin Subscriptions Management Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], @@ -121,7 +121,7 @@ "$ref": "Subscriptions.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/NewOfferDelegationParameter" + "$ref": "#/parameters/OfferDelegationDefinitionParameter" } ], "responses": { @@ -231,9 +231,9 @@ "type": "string", "x-ms-parameter-location": "method" }, - "NewOfferDelegationParameter": { + "OfferDelegationDefinitionParameter": { "description": "New offer delegation parameter.", - "name": "newOfferDelegation", + "name": "offerDelegationDefinition", "in": "body", "required": true, "schema": { diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Plan.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Plan.json index 13be44918952..b07d900df529 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Plan.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Plan.json @@ -5,7 +5,7 @@ "title": "SubscriptionsManagementClient", "description": "The Admin Subscriptions Management Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], @@ -49,7 +49,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Subscriptions.Admin/plans": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Subscriptions.Admin/plans": { "get": { "x-ms-examples": { "Get the list of plans under a resource group.": { @@ -85,7 +85,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Subscriptions.Admin/plans/{plan}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Subscriptions.Admin/plans/{plan}": { "get": { "x-ms-examples": { "Get the specified plan.": { @@ -145,7 +145,7 @@ "$ref": "Subscriptions.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/NewPlanParameter" + "$ref": "#/parameters/PlanDefinitionParameter" } ], "responses": { @@ -346,9 +346,9 @@ } }, "parameters": { - "NewPlanParameter": { + "PlanDefinitionParameter": { "description": "New plan.", - "name": "newPlan", + "name": "planDefinition", "in": "body", "required": true, "schema": { diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Quota.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Quota.json index 7e97868241e2..d1e97460e3cb 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Quota.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Quota.json @@ -5,7 +5,7 @@ "title": "SubscriptionsManagementClient", "description": "The Admin Subscriptions Management Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Subscriptions.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Subscriptions.json index 9add0b5d584a..144731619848 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Subscriptions.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/Subscriptions.json @@ -5,7 +5,7 @@ "title": "SubscriptionsManagementClient", "description": "The Admin Subscriptions Management Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], @@ -238,7 +238,7 @@ "x-ms-pageable": { "nextLinkName": null }, - "x-ms-odata": "#/definitions/Subscription" + "x-ms-odata": "#/definitions/SubscriptionDefinition" } }, "/subscriptions/{subscriptionId}/providers/Microsoft.Subscriptions.Admin/checkNameAvailability": { @@ -274,7 +274,7 @@ } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Subscriptions.Admin/subscriptions/{subscription}": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Subscriptions.Admin/subscriptions/{targetSubscriptionId}": { "get": { "x-ms-examples": { "Get a specified subscription.": { @@ -291,7 +291,7 @@ "$ref": "#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/SubscriptionParameter" + "$ref": "#/parameters/TargetSubscriptionIdParameter" }, { "$ref": "#/parameters/ApiVersionParameter" @@ -301,7 +301,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/Subscription" + "$ref": "#/definitions/SubscriptionDefinition" } } } @@ -322,10 +322,10 @@ "$ref": "#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/SubscriptionParameter" + "$ref": "#/parameters/TargetSubscriptionIdParameter" }, { - "$ref": "#/parameters/NewSubscriptionParameter" + "$ref": "#/parameters/SubscriptionDefinitionParameter" }, { "$ref": "#/parameters/ApiVersionParameter" @@ -335,13 +335,13 @@ "201": { "description": "Created", "schema": { - "$ref": "#/definitions/Subscription" + "$ref": "#/definitions/SubscriptionDefinition" } }, "200": { "description": "OK", "schema": { - "$ref": "#/definitions/Subscription" + "$ref": "#/definitions/SubscriptionDefinition" } } } @@ -362,7 +362,7 @@ "$ref": "#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/SubscriptionParameter" + "$ref": "#/parameters/TargetSubscriptionIdParameter" }, { "$ref": "#/parameters/ApiVersionParameter" @@ -767,8 +767,8 @@ } } }, - "Subscription": { - "description": "List of supported operations.", + "SubscriptionDefinition": { + "description": "Subscription object properties.", "type": "object", "properties": { "delegatedProviderSubscriptionId": { @@ -820,7 +820,7 @@ "type": "array", "description": "Subscription definition.", "items": { - "$ref": "#/definitions/Subscription" + "$ref": "#/definitions/SubscriptionDefinition" } }, "nextLink": { @@ -1215,20 +1215,20 @@ "required": true, "x-ms-parameter-location": "method" }, - "SubscriptionParameter": { - "description": "Subscription parameter.", - "name": "subscription", + "TargetSubscriptionIdParameter": { + "description": "The target subscription ID.", + "name": "targetSubscriptionId", "in": "path", "type": "string", "required": true, "x-ms-parameter-location": "method" }, - "NewSubscriptionParameter": { + "SubscriptionDefinitionParameter": { "description": "Subscription parameter.", - "name": "newSubscription", + "name": "subscriptionDefinition", "in": "body", "schema": { - "$ref": "#/definitions/Subscription" + "$ref": "#/definitions/SubscriptionDefinition" }, "required": true, "x-ms-parameter-location": "method" diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/AcquiredPlan/Create.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/AcquiredPlan/Create.json index 3629ea547bcc..09af66ca6cf8 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/AcquiredPlan/Create.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/AcquiredPlan/Create.json @@ -5,7 +5,7 @@ "api-version": "2015-11-01", "targetSubscriptionId": "8158498d-27b1-4ccf-9aa1-de0f925731e6", "planAcquisitionId": "718c7f7c-4868-479a-98ce-5caaa8f158c8", - "newAcquiredPlan": { + "acquiredPlanDefinition": { "properties": { "acquisitionId": "718c7f7c-4868-479a-98ce-5caaa8f158c8", "id": "/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/providers/Microsoft.Subscriptions/subscriptions/8158498d-27b1-4ccf-9aa1-de0f925731e6/acquiredPlans/718c7f7c-4868-479a-98ce-5caaa8f158c8", diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/DirectoryTenant/Create.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/DirectoryTenant/Create.json index 78c1da71c188..89ba4e050b7c 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/DirectoryTenant/Create.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/DirectoryTenant/Create.json @@ -4,7 +4,7 @@ "location": "local", "api-version": "2015-11-01", "tenant": "azurestackci05.onmicrosoft.in", - "newTenant": "eb90516e-65d7-4bf6-8537-8322e9172832", + "tenantDefinition": "eb90516e-65d7-4bf6-8537-8322e9172832", "resourceGroupName": "system.local" }, "responses": { diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Offer/Create.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Offer/Create.json index a81a46bd97e9..8f73119a60ca 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Offer/Create.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Offer/Create.json @@ -5,7 +5,7 @@ "api-version": "2015-11-01", "offer": "sampleoffer1", "resourceGroupName": "RG1", - "newOffer": { + "offerDefinition": { "properties": { "name": "testOffer1", "displayName": "Test Offer", diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/OfferDelegation/Create.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/OfferDelegation/Create.json index 8b65b440a217..7efb2b09b1e1 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/OfferDelegation/Create.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/OfferDelegation/Create.json @@ -6,7 +6,7 @@ "resourceGroupName": "cnur9852subscrrg374", "offer": "cnur9852tenantoffer374", "offerDelegationName": "testOfferDelegation", - "newOfferDelegation": "newDelegationName" + "offerDelegationDefinition": "newDelegationName" }, "responses": { "200": { diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Plan/Create.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Plan/Create.json index 61e372ba6245..3eeaed973ed1 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Plan/Create.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Plan/Create.json @@ -5,7 +5,7 @@ "api-version": "2015-11-01", "resourceGroupName": "plans", "plan": "testplan", - "newPlan": { + "planDefinition": { "properties": { "description": "test plan", "displayName": "testplans", diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/CheckIdentityHealth.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/CheckIdentityHealth.json index e6620268b6ca..79b1d17af5eb 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/CheckIdentityHealth.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/CheckIdentityHealth.json @@ -9,7 +9,7 @@ "body": { "reportStartTimeUtc": "2017-08-01T00:00:00.00Z", "reportEndTimeUtc": "2017-08-01T00:00:00.00Z", - "status": "", + "status": "Unknown", "directoryTenants": [ { "tenantId": "", diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/Create.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/Create.json index 9483e0fb3aad..f41b199e3eeb 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/Create.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/Create.json @@ -1,10 +1,11 @@ { "parameters": { "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "targetSubscriptionId": "c79389af-4480-48cc-8fa2-ee8ced8e843d", "location": "local", "api-version": "2015-11-01", "subscription": "test", - "newSubscription": { + "subscriptionDefinition": { "properties": { "delegatedProviderSubscriptionId": "d16dfcf0-44cc-4498-9937-08b94159d27b", "displayName": "Test Subscription", diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/Delete.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/Delete.json index 27950c5e6166..e3007779f242 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/Delete.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/Delete.json @@ -1,5 +1,6 @@ { "parameters": { + "targetSubscriptionId": "c79389af-4480-48cc-8fa2-ee8ced8e843d", "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", "location": "local", "api-version": "2015-11-01", diff --git a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/Get.json b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/Get.json index 4c078bbbd22d..e6d44d1815e6 100644 --- a/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/Get.json +++ b/specification/azsadmin/resource-manager/subscriptions/Microsoft.Subscriptions.Admin/preview/2015-11-01/examples/Subscriptions/Get.json @@ -1,6 +1,7 @@ { "parameters": { "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "targetSubscriptionId": "c79389af-4480-48cc-8fa2-ee8ced8e843d", "location": "local", "api-version": "2015-11-01", "subscription": "test" diff --git a/specification/azsadmin/resource-manager/subscriptions/readme.azsautogen.md b/specification/azsadmin/resource-manager/subscriptions/readme.azsautogen.md new file mode 100644 index 000000000000..e8ff380981cf --- /dev/null +++ b/specification/azsadmin/resource-manager/subscriptions/readme.azsautogen.md @@ -0,0 +1,114 @@ +# Subscriptions Admin + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for Subscriptions Admin. + +--- +## Getting Started +To build the SDK for Subscriptions Admin, 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 the Subscriptions API. + +``` yaml +title: SubscriptionsAdminClient +description: Subscriptions Admin Client +openapi-type: arm +tag: package-2015-11-01 +``` + + +## Suppression +``` yaml +directive: + - suppress: XmsResourceInPutResponse + reason: Subscription and Location are not modelled as ARM resources in azure for legacy reasons. In Azure stack as well, Subscription and Location are not modelled as ARM resource for azure consistency + where: + - $.paths["/subscriptions/{subscriptionId}/providers/Microsoft.Subscriptions.Admin/subscriptions/{subscription}"].put + - $.paths["/subscriptions/{subscriptionId}/providers/Microsoft.Subscriptions.Admin/subscriptions/{targetSubscriptionId}/acquiredPlans/{planAcquisitionId}"].put + - $.paths["/subscriptions/{subscriptionId}/providers/Microsoft.Subscriptions.Admin/locations/{location}"].put + + - suppress: SubscriptionIdParameterInOperations + reason: Subscription is the main resource in the API spec and it should not be masked in global parameters. + where: + - $.paths[\"/subscriptions/{subscriptionId}\"].get.parameters[0] + - $.paths[\"/subscriptions/{subscriptionId}\"].put.parameters[0] + - $.paths[\"/subscriptions/{subscriptionId}\"].delete.parameters[0] + + - suppress: BodyTopLevelProperties + reason: Subscription is not modelled as ARM resource in azure for legacy reasons. In Azure stack as well, Subscription is not modelled as ARM resource for azure consistency. + where: + - $.definitions.Subscription.properties + - $.definitions.PlanAcquisition.properties + - $.definitions.Location.properties + + - suppress: RequiredPropertiesMissingInResourceModel + reason: Subscription is not modelled as ARM resource in azure for legacy reasons. In Azure stack as well, Subscription is not modelled as ARM resource for azure consistency. + where: + - $.definitions.Subscription + - $.definitions.PlanAcquisition + - $.definitions.Location + + - suppress: OperationIdNounVerb + reason: Subscriptions is both the name of the module and the operation action name. + where: + - $.paths["/subscriptions/{subscriptionId}/providers/Microsoft.Subscriptions.Admin/moveSubscriptions"].post.operationId + - $.paths["/subscriptions/{subscriptionId}/providers/Microsoft.Subscriptions.Admin/validateMoveSubscriptions"].post.operationId +``` + +--- +# Code Generation + +## C# + +``` yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + namespace: Microsoft.AzureStack.Management.Subscriptions.Admin + payload-flattening-threshold: 1 + output-folder: $(csharp-sdks-folder)/Generated + 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 +# 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.Subscriptions.Admin/preview/2015-11-01/Subscriptions.json + - $(this-folder)/Microsoft.Subscriptions.Admin/preview/2015-11-01/AcquiredPlan.json + - $(this-folder)/Microsoft.Subscriptions.Admin/preview/2015-11-01/DelegatedProvider.json + - $(this-folder)/Microsoft.Subscriptions.Admin/preview/2015-11-01/DelegatedProviderOffer.json + - $(this-folder)/Microsoft.Subscriptions.Admin/preview/2015-11-01/DirectoryTenant.json + - $(this-folder)/Microsoft.Subscriptions.Admin/preview/2015-11-01/Location.json + - $(this-folder)/Microsoft.Subscriptions.Admin/preview/2015-11-01/Manifest.json + - $(this-folder)/Microsoft.Subscriptions.Admin/preview/2015-11-01/Offer.json + - $(this-folder)/Microsoft.Subscriptions.Admin/preview/2015-11-01/OfferDelegation.json + - $(this-folder)/Microsoft.Subscriptions.Admin/preview/2015-11-01/Plan.json + - $(this-folder)/Microsoft.Subscriptions.Admin/preview/2015-11-01/Quota.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/azsadmin/resource-manager/subscriptions/readme.md b/specification/azsadmin/resource-manager/subscriptions/readme.md index b6d75aaad964..4909aff7c0fd 100644 --- a/specification/azsadmin/resource-manager/subscriptions/readme.md +++ b/specification/azsadmin/resource-manager/subscriptions/readme.md @@ -64,6 +64,7 @@ directive: where: - $.paths["/subscriptions/{subscriptionId}/providers/Microsoft.Subscriptions.Admin/moveSubscriptions"].post.operationId - $.paths["/subscriptions/{subscriptionId}/providers/Microsoft.Subscriptions.Admin/validateMoveSubscriptions"].post.operationId + ``` ### Tag: package-2015-11-01 @@ -99,13 +100,14 @@ csharp: output-folder: $(csharp-sdks-folder)/Generated 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 */ +``` yaml # include the azure profile definitions from the standard location require: $(this-folder)/../../../../profiles/readme.md @@ -122,14 +124,12 @@ input-file: - $(this-folder)/Microsoft.Subscriptions.Admin/preview/2015-11-01/OfferDelegation.json - $(this-folder)/Microsoft.Subscriptions.Admin/preview/2015-11-01/Plan.json - $(this-folder)/Microsoft.Subscriptions.Admin/preview/2015-11-01/Quota.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: +#exclude-file: # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` - diff --git a/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/Update.json b/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/Update.json index 34e7c0263594..0ff986279345 100644 --- a/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/Update.json +++ b/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/Update.json @@ -5,7 +5,7 @@ "title": "UpdateAdminClient", "description": "The Update Admin Management Client." }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/UpdateLocations.json b/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/UpdateLocations.json index 95a4080e8810..c40ab71d298d 100644 --- a/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/UpdateLocations.json +++ b/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/UpdateLocations.json @@ -5,7 +5,7 @@ "title": "UpdateAdminClient", "version": "2016-05-01" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], @@ -16,7 +16,7 @@ "application/json" ], "paths": { - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/": { "get": { "x-ms-examples": { "Get the list of update locations.": { @@ -52,7 +52,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}": { "get": { "x-ms-examples": { "Get an update location based on name.": { diff --git a/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/UpdateRuns.json b/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/UpdateRuns.json index 139e3f2c4a32..fabb4bcb7f4c 100644 --- a/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/UpdateRuns.json +++ b/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/UpdateRuns.json @@ -5,7 +5,7 @@ "title": "UpdateAdminClient", "version": "2016-05-01" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], @@ -16,7 +16,7 @@ "application/json" ], "paths": { - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}/updates/{updateName}/updateRuns": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}/updates/{updateName}/updateRuns": { "get": { "x-ms-examples": { "Get the list of update runs.": { @@ -58,7 +58,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}/updates/{updateName}/updateRuns/{runName}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}/updates/{updateName}/updateRuns/{runName}": { "get": { "x-ms-examples": { "Get an update run.": { @@ -100,7 +100,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}/updateRuns": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}/updateRuns": { "get": { "x-ms-examples": { "Get the list of update runs.": { @@ -139,7 +139,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}/updateRuns/{runName}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}/updateRuns/{runName}": { "get": { "x-ms-examples": { "Get an update run.": { @@ -178,7 +178,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}/updates/{updateName}/updateRuns/{runName}/rerun": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}/updates/{updateName}/updateRuns/{runName}/rerun": { "post": { "x-ms-examples": { "Rerun an update.": { diff --git a/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/Updates.json b/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/Updates.json index b1416f114472..1225b865c1ed 100644 --- a/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/Updates.json +++ b/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/Updates.json @@ -5,7 +5,7 @@ "title": "UpdateAdminClient", "version": "2016-05-01" }, - "host": "adminmanagement.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], @@ -16,7 +16,7 @@ "application/json" ], "paths": { - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}/updates": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}/updates": { "get": { "x-ms-examples": { "Get the list of updates at an update locations.": { @@ -55,7 +55,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}/updates/{updateName}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}/updates/{updateName}": { "get": { "x-ms-examples": { "Get a specific update at an update location.": { @@ -94,7 +94,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}/updates/{updateName}/Apply": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Update.Admin/updateLocations/{updateLocation}/updates/{updateName}/Apply": { "post": { "x-ms-examples": { "Apply a specific update at an update location.": { diff --git a/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/examples/Updates/Get.json b/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/examples/Updates/Get.json index 888e4c73c839..d7bbc4fd51b2 100644 --- a/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/examples/Updates/Get.json +++ b/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/examples/Updates/Get.json @@ -15,7 +15,6 @@ "location": "redmond", "tags": {}, "properties": { - "dateAvailable": "0001-01-01T00:00:00.0000000Z", "installedDate": "2018-03-03T08:09:12.8824552Z", "description": "MAS Update 1.0.180302.1", "state": "Installed", @@ -23,11 +22,8 @@ "minVersionRequired": "1.0.180103.2", "packagePath": "\\\\SU1FileServer\\SU1_Infrastructure_2\\Updates\\Packages\\Microsoft1.0.180302.1", "packageSizeInMb": 2144, - "updateName": "MAS - 1.0.180302.1", "version": "1.0.180302.1", - "updateOemFile": "", - "publisher": "Microsoft", - "packageType": "Microsoft" + "publisher": "Microsoft" } } } diff --git a/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/examples/Updates/List.json b/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/examples/Updates/List.json index 0b1c72764eeb..c9d422dac525 100644 --- a/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/examples/Updates/List.json +++ b/specification/azsadmin/resource-manager/update/Microsoft.Update.Admin/preview/2016-05-01/examples/Updates/List.json @@ -16,7 +16,6 @@ "location": "redmond ", "tags": {}, "properties": { - "dateAvailable": "0001-01-01T00:00:00.0000000Z", "installedDate": "2018-03-03T08:09:12.8824552Z", "description": "MAS Update 1.0.180302.1", "state": "Installed", @@ -24,11 +23,8 @@ "minVersionRequired": "1.0.180103.2", "packagePath": "\\\\SU1FileServer\\SU1_Infrastructure_2\\Updates\\Packages\\Microsoft1.0.180302.1", "packageSizeInMb": 2144, - "updateName": "MAS - 1.0.180302.1", "version": "1.0.180302.1", - "updateOemFile": "", - "publisher": "Microsoft", - "packageType": "Microsoft" + "publisher": "Microsoft" } } ], diff --git a/specification/azsadmin/resource-manager/update/readme.azsautogen.md b/specification/azsadmin/resource-manager/update/readme.azsautogen.md new file mode 100644 index 000000000000..9707ee20776d --- /dev/null +++ b/specification/azsadmin/resource-manager/update/readme.azsautogen.md @@ -0,0 +1,73 @@ +# Update Admin + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for Update Admin. + +--- +## Getting Started +To build the SDK for Update Admin, 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 the Update API. + +``` yaml +title: UpdateAdminClient +description: Update Admin Client +openapi-type: arm +tag: package-2016-05-01 +``` + +--- +# Code Generation + +## 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 + namespace: Microsoft.AzureStack.Management.Update.Admin + payload-flattening-threshold: 1 + output-folder: $(csharp-sdks-folder)/Generated + 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 +# 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.Update.Admin/preview/2016-05-01/Update.json + - $(this-folder)/Microsoft.Update.Admin/preview/2016-05-01/Updates.json + - $(this-folder)/Microsoft.Update.Admin/preview/2016-05-01/UpdateLocations.json + - $(this-folder)/Microsoft.Update.Admin/preview/2016-05-01/UpdateRuns.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/azsadmin/resource-manager/update/readme.md b/specification/azsadmin/resource-manager/update/readme.md index f03971bc99a0..8ffadfe459b3 100644 --- a/specification/azsadmin/resource-manager/update/readme.md +++ b/specification/azsadmin/resource-manager/update/readme.md @@ -57,13 +57,13 @@ csharp: clear-output-folder: true ``` -## Multi-API/Profile support for AutoRest v3 generators +## 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 */ +``` yaml # include the azure profile definitions from the standard location require: $(this-folder)/../../../../profiles/readme.md @@ -76,11 +76,10 @@ input-file: ``` -If there are files that should not be in the `all-api-versions` set, +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: +#exclude-file: # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` - diff --git a/specification/azsadmin/resource-manager/user-subscriptions/Microsoft.Subscriptions/preview/2015-11-01/Offer.json b/specification/azsadmin/resource-manager/user-subscriptions/Microsoft.Subscriptions/preview/2015-11-01/Offer.json index afa844ed7f40..32cdcdec9cd1 100644 --- a/specification/azsadmin/resource-manager/user-subscriptions/Microsoft.Subscriptions/preview/2015-11-01/Offer.json +++ b/specification/azsadmin/resource-manager/user-subscriptions/Microsoft.Subscriptions/preview/2015-11-01/Offer.json @@ -5,7 +5,7 @@ "title": "SubscriptionClient", "description": "The User Subscription Management Client." }, - "host": "management.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azsadmin/resource-manager/user-subscriptions/Microsoft.Subscriptions/preview/2015-11-01/Subscriptions.json b/specification/azsadmin/resource-manager/user-subscriptions/Microsoft.Subscriptions/preview/2015-11-01/Subscriptions.json index 136704995de5..e47cd5146f23 100644 --- a/specification/azsadmin/resource-manager/user-subscriptions/Microsoft.Subscriptions/preview/2015-11-01/Subscriptions.json +++ b/specification/azsadmin/resource-manager/user-subscriptions/Microsoft.Subscriptions/preview/2015-11-01/Subscriptions.json @@ -5,7 +5,7 @@ "title": "SubscriptionClient", "description": "The User Subscription Management Client." }, - "host": "management.local.azurestack.external", + "host": "management.azure.com", "schemes": [ "https" ], diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoAttachedDatabaseConfigurationsCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoAttachedDatabaseConfigurationsCreateOrUpdate.json new file mode 100644 index 000000000000..7c75b164d32d --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoAttachedDatabaseConfigurationsCreateOrUpdate.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "attachedDatabaseConfigurationName": "attachedDatabaseConfigurations1", + "api-version": "2019-11-09", + "parameters": { + "location": "westus", + "properties": { + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader", + "databaseName": "db1", + "defaultPrincipalsModificationKind": "Union" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/attachedDatabaseConfigurations/attachedDatabaseConfigurations1", + "name": "KustoClusterRPTest4/attachedDatabaseConfigurations1", + "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations", + "location": "westus", + "properties": { + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader", + "databaseName": "db1", + "defaultPrincipalsModificationKind": "Union", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/attachedDatabaseConfigurations/attachedDatabaseConfigurations1", + "name": "KustoClusterRPTest4/attachedDatabaseConfigurations1", + "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations", + "location": "westus", + "properties": { + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader", + "databaseName": "db1", + "defaultPrincipalsModificationKind": "Union", + "provisioningState": "Creating" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/attachedDatabaseConfigurations/attachedDatabaseConfigurations1", + "name": "KustoClusterRPTest4/attachedDatabaseConfigurations1", + "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations", + "location": "westus", + "properties": { + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader", + "databaseName": "db1", + "defaultPrincipalsModificationKind": "Union", + "provisioningState": "Creating" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoAttachedDatabaseConfigurationsDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoAttachedDatabaseConfigurationsDelete.json new file mode 100644 index 000000000000..70d242346303 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoAttachedDatabaseConfigurationsDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "attachedDatabaseConfigurationName": "attachedDatabaseConfigurations1", + "api-version": "2019-11-09" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoAttachedDatabaseConfigurationsGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoAttachedDatabaseConfigurationsGet.json new file mode 100644 index 000000000000..13694bb304ba --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoAttachedDatabaseConfigurationsGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "attachedDatabaseConfigurationName": "attachedDatabaseConfigurations1", + "api-version": "2019-11-09" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/AttachedDatabaseConfigurations/attachedDatabaseConfigurations1", + "name": "KustoClusterRPTest4/attachedDatabaseConfigurations1", + "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations", + "location": "westus", + "properties": { + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "databaseName": "*", + "defaultPrincipalsModificationKind": "Union", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoAttachedDatabaseConfigurationsListByCluster.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoAttachedDatabaseConfigurationsListByCluster.json new file mode 100644 index 000000000000..0f24190b0f4f --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoAttachedDatabaseConfigurationsListByCluster.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2019-11-09" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/AttachedDatabaseConfigurations/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations", + "location": "westus", + "properties": { + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader", + "databaseName": "db1", + "defaultPrincipalsModificationKind": "Union", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/AttachedDatabaseConfigurations/KustoDatabase9", + "name": "KustoClusterRPTest4/KustoDatabase9", + "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations", + "location": "westus", + "properties": { + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader", + "databaseName": "db1", + "defaultPrincipalsModificationKind": "Union", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClusterDetachFollowerDatabases.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClusterDetachFollowerDatabases.json new file mode 100644 index 000000000000..c4556e78aaf6 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClusterDetachFollowerDatabases.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2019-11-09", + "followerDatabaseToRemove": { + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/clusters/leader4", + "attachedDatabaseConfigurationName": "myAttachedDatabaseConfiguration" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClusterListFollowerDatabases.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClusterListFollowerDatabases.json new file mode 100644 index 000000000000..6b3cf2bc9cfc --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClusterListFollowerDatabases.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2019-11-09" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "attachedDatabaseConfigurationName": "attachedDbConfiguration", + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/clusters/follower1", + "databaseName": "*" + }, + { + "attachedDatabaseConfigurationName": "attachedDbConfiguration2", + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/clusters/follower4", + "databaseName": "db1" + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClusterPrincipalAssignmentsCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClusterPrincipalAssignmentsCheckNameAvailability.json new file mode 100644 index 000000000000..bc646be4a25d --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClusterPrincipalAssignmentsCheckNameAvailability.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "api-version": "2019-11-09", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "principalAssignmentName": { + "name": "kustoprincipal1", + "type": "Microsoft.Kusto/clusters/principalAssignments" + } + }, + "responses": { + "200": { + "body": { + "name": "kustoprincipal1", + "nameAvailable": false, + "message": "Name 'kustoprincipal1' is already taken. Please specify a different name" + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClusterPrincipalAssignmentsCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClusterPrincipalAssignmentsCreateOrUpdate.json new file mode 100644 index 000000000000..f668b91f8a07 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClusterPrincipalAssignmentsCreateOrUpdate.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "principalAssignmentName": "kustoprincipal1", + "api-version": "2019-11-09", + "parameters": { + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/kustoprincipal1", + "type": "Microsoft.Kusto/Clusters/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/kustoprincipal1", + "type": "Microsoft.Kusto/Clusters/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClusterPrincipalAssignmentsDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClusterPrincipalAssignmentsDelete.json new file mode 100644 index 000000000000..c6b7da68452b --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClusterPrincipalAssignmentsDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "principalAssignmentName": "kustoprincipal1", + "api-version": "2019-11-09" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClusterPrincipalAssignmentsGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClusterPrincipalAssignmentsGet.json new file mode 100644 index 000000000000..6af00e09fc43 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClusterPrincipalAssignmentsGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "principalAssignmentName": "kustoprincipal1", + "api-version": "2019-11-09" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/kustoprincipal1", + "type": "Microsoft.Kusto/Clusters/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClusterPrincipalAssignmentsList.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClusterPrincipalAssignmentsList.json new file mode 100644 index 000000000000..4667171d4fad --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClusterPrincipalAssignmentsList.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "Kustodatabase8", + "api-version": "2019-11-09" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1", + "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal2", + "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersCheckNameAvailability.json new file mode 100644 index 000000000000..5198047e8309 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersCheckNameAvailability.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "api-version": "2019-11-09", + "location": "wus", + "clusterName": { + "name": "kuskusprod", + "type": "Microsoft.Kusto/clusters" + } + }, + "responses": { + "200": { + "body": { + "name": "kuskusprod", + "nameAvailable": false, + "message": "Name 'kuskusprod' is already taken. Please specify a different name" + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersCreateOrUpdate.json new file mode 100644 index 000000000000..d80f6c2c21c2 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersCreateOrUpdate.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2019-11-09", + "parameters": { + "location": "westus", + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "enableStreamingIngest": true, + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "enableStreamingIngest": true, + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + } + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "identity": { + "type": "SystemAssigned", + "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4", + "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c", + "userAssignedIdentities": {} + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "enableStreamingIngest": true, + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + } + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "identity": { + "type": "SystemAssigned", + "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4", + "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c", + "userAssignedIdentities": {} + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersDelete.json new file mode 100644 index 000000000000..fbf0e38e79fc --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2019-11-09" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersDiagnoseVirtualNetwork.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersDiagnoseVirtualNetwork.json new file mode 100644 index 000000000000..e10f6d33ead4 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersDiagnoseVirtualNetwork.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2019-11-09" + }, + "responses": { + "200": { + "body": { + "findings": [ + "Outbound dependency 'Storage:443' might not be satisfied (Outbound)" + ] + } + }, + "202": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersGet.json new file mode 100644 index 000000000000..1542233cbbb3 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2019-11-09" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "enableStreamingIngest": true, + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + } + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "identity": { + "type": "SystemAssigned", + "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4", + "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c", + "userAssignedIdentities": {} + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersList.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersList.json new file mode 100644 index 000000000000..453a9efe1ba5 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersList.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "api-version": "2019-11-09" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + } + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + } + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest3", + "name": "KustoClusterRPTest3", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded" + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersListByResourceGroup.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersListByResourceGroup.json new file mode 100644 index 000000000000..efc1aba35a40 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersListByResourceGroup.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "api-version": "2019-11-09" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + } + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + } + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest3", + "name": "KustoClusterRPTest3", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded" + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersListResourceSkus.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersListResourceSkus.json new file mode 100644 index 000000000000..e029a22a91f1 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersListResourceSkus.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2019-11-09" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "clusters", + "sku": { + "name": "Standard_D13_v2", + "tier": "Standard" + }, + "capacity": { + "minimum": 2, + "maximum": 100, + "default": 2, + "scaleType": "automatic" + } + }, + { + "resourceType": "clusters", + "sku": { + "name": "Standard_D14_v2", + "tier": "Standard" + }, + "capacity": { + "minimum": 2, + "maximum": 100, + "default": 2, + "scaleType": "automatic" + } + }, + { + "resourceType": "clusters", + "sku": { + "name": "Standard_L8s", + "tier": "Standard" + }, + "capacity": { + "minimum": 2, + "maximum": 100, + "default": 2, + "scaleType": "automatic" + } + }, + { + "resourceType": "clusters", + "sku": { + "name": "Standard_L16s", + "tier": "Standard" + }, + "capacity": { + "minimum": 2, + "maximum": 100, + "default": 2, + "scaleType": "automatic" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersListSkus.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersListSkus.json new file mode 100644 index 000000000000..927446c25c14 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersListSkus.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "api-version": "2019-11-09" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Standard_D13_v2", + "tier": "Standard", + "locations": [ + "West US", + "West Europe" + ], + "locationInfo": [ + { + "location": "West US", + "zones": [ + "1", + "2", + "3" + ] + }, + { + "location": "West Europe", + "zones": [] + } + ] + }, + { + "name": "Standard_D14_v2", + "tier": "Standard", + "locations": [ + "West US", + "West Europe" + ], + "locationInfo": [ + { + "location": "West US", + "zones": [ + "1", + "2", + "3" + ] + }, + { + "location": "West Europe", + "zones": [] + } + ] + }, + { + "name": "L8", + "tier": "Standard", + "locations": [ + "West US", + "West Europe" + ], + "locationInfo": [ + { + "location": "West US", + "zones": [ + "1", + "2", + "3" + ] + }, + { + "location": "West Europe", + "zones": [] + } + ] + }, + { + "name": "L16", + "tier": "Standard", + "locations": [ + "West US", + "West Europe" + ], + "locationInfo": [ + { + "location": "West US", + "zones": [ + "1", + "2", + "3" + ] + }, + { + "location": "West Europe", + "zones": [] + } + ] + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersStart.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersStart.json new file mode 100644 index 000000000000..3a037e05e28c --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersStart.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2019-11-09" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersStop.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersStop.json new file mode 100644 index 000000000000..3a037e05e28c --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersStop.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2019-11-09" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersUpdate.json new file mode 100644 index 000000000000..e8dc5b266181 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoClustersUpdate.json @@ -0,0 +1,105 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2019-11-09", + "parameters": { + "location": "westus", + "properties": { + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + } + } + }, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "enableStreamingIngest": true + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "enableStreamingIngest": true, + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + } + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "identity": { + "type": "SystemAssigned", + "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4", + "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c", + "userAssignedIdentities": {} + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "enableStreamingIngest": true, + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + } + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "identity": { + "type": "SystemAssigned", + "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4", + "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c", + "userAssignedIdentities": {} + } + } + }, + "202": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "enableStreamingIngest": true + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "identity": { + "type": "SystemAssigned", + "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4", + "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c", + "userAssignedIdentities": {} + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDataConnectionValidation.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDataConnectionValidation.json new file mode 100644 index 000000000000..055bd53137e1 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDataConnectionValidation.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "KustoDatabase8", + "api-version": "2019-11-09", + "parameters": { + "dataConnectionName": "DataConnections8", + "properties": { + "kind": "EventHub", + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + }, + "responses": { + "200": { + "body": [ + { + "errorMessage": "event hub namespace does not exist" + }, + { + "errorMessage": "database does not exist" + } + ] + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDataConnectionsCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDataConnectionsCheckNameAvailability.json new file mode 100644 index 000000000000..33ac5baa2429 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDataConnectionsCheckNameAvailability.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2019-11-09", + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoProd", + "databaseName": "KustoDatabase8", + "dataConnectionName": { + "name": "DataConnections8", + "type": "Microsoft.Kusto/clusters/databases/dataConnections" + } + }, + "responses": { + "200": { + "body": { + "name": "DataConnections8", + "nameAvailable": false, + "message": "Name 'DataConnections8' is already taken. Please specify a different name.", + "reason": "AlreadyExists" + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDataConnectionsCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDataConnectionsCreateOrUpdate.json new file mode 100644 index 000000000000..d9a9b59ac931 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDataConnectionsCreateOrUpdate.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "KustoDatabase8", + "api-version": "2019-11-09", + "dataConnectionName": "DataConnections8", + "parameters": { + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDataConnectionsDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDataConnectionsDelete.json new file mode 100644 index 000000000000..e2c7a7cb5b1f --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDataConnectionsDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "KustoDatabase8", + "api-version": "2019-11-09", + "dataConnectionName": "kustoeventhubconnection1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDataConnectionsGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDataConnectionsGet.json new file mode 100644 index 000000000000..7276657ec4ef --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDataConnectionsGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "KustoDatabase8", + "api-version": "2019-11-09", + "dataConnectionName": "DataConnections8" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDataConnectionsListByDatabase.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDataConnectionsListByDatabase.json new file mode 100644 index 000000000000..e5cbff51b1fd --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDataConnectionsListByDatabase.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "KustoDatabase8", + "api-version": "2019-11-09" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/KustoDataConnection8", + "name": "KustoClusterRPTest4/KustoDatabase8/KustoDataConnection8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase9/DataConnections/KustoDataConnection9", + "name": "KustoClusterRPTest4/KustoDatabase9/KustoDataConnection9", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns2/eventhubs/eventhubTest2", + "consumerGroup": "testConsumerGroup2" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDataConnectionsUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDataConnectionsUpdate.json new file mode 100644 index 000000000000..d9a9b59ac931 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDataConnectionsUpdate.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "KustoDatabase8", + "api-version": "2019-11-09", + "dataConnectionName": "DataConnections8", + "parameters": { + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabaseAddPrincipals.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabaseAddPrincipals.json new file mode 100644 index 000000000000..c7de614bddd6 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabaseAddPrincipals.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "databaseName1", + "api-version": "2019-11-09", + "databasePrincipalsToAdd": { + "value": [ + { + "name": "Some User", + "role": "Admin", + "type": "User", + "fqn": "aaduser=some_guid", + "email": "user@microsoft.com", + "appId": "" + }, + { + "name": "Kusto", + "role": "Viewer", + "type": "Group", + "fqn": "aadgroup=some_guid", + "email": "kusto@microsoft.com", + "appId": "" + }, + { + "name": "SomeApp", + "role": "Admin", + "type": "App", + "fqn": "aadapp=some_guid_app_id", + "email": "", + "appId": "some_guid_app_id" + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Some User", + "role": "Admin", + "type": "User", + "fqn": "aaduser=some_guid", + "email": "user@microsoft.com", + "appId": "" + }, + { + "name": "Kusto", + "role": "Viewer", + "type": "Group", + "fqn": "aadgroup=some_guid", + "email": "kusto@microsoft.com", + "appId": "" + }, + { + "name": "SomeApp", + "role": "Admin", + "type": "App", + "fqn": "aadapp=some_guid_app_id", + "email": "", + "appId": "some_guid_app_id" + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabaseListPrincipals.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabaseListPrincipals.json new file mode 100644 index 000000000000..1eb220b2f859 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabaseListPrincipals.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "databaseName1", + "api-version": "2019-11-09" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Some User", + "role": "Admin", + "type": "User", + "fqn": "aaduser=some_guid", + "email": "user@microsoft.com", + "appId": "" + }, + { + "name": "Kusto", + "role": "Viewer", + "type": "Group", + "fqn": "aadgroup=some_guid", + "email": "kusto@microsoft.com", + "appId": "" + }, + { + "name": "SomeApp", + "role": "Admin", + "type": "App", + "fqn": "aadapp=some_guid_app_id", + "email": "", + "appId": "some_guid_app_id" + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasePrincipalAssignmentsCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasePrincipalAssignmentsCheckNameAvailability.json new file mode 100644 index 000000000000..e6f287da9463 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasePrincipalAssignmentsCheckNameAvailability.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "api-version": "2019-11-09", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "Kustodatabase8", + "principalAssignmentName": { + "name": "kustoprincipal1", + "type": "Microsoft.Kusto/clusters/databases/principalAssignments" + } + }, + "responses": { + "200": { + "body": { + "name": "kustoprincipal1", + "nameAvailable": false, + "message": "Name 'kustoprincipal1' is already taken. Please specify a different name" + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasePrincipalAssignmentsCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasePrincipalAssignmentsCreateOrUpdate.json new file mode 100644 index 000000000000..59d9c4834454 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasePrincipalAssignmentsCreateOrUpdate.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "Kustodatabase8", + "principalAssignmentName": "kustoprincipal1", + "api-version": "2019-11-09", + "parameters": { + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1", + "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1", + "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasePrincipalAssignmentsDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasePrincipalAssignmentsDelete.json new file mode 100644 index 000000000000..1bdc89a25c8f --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasePrincipalAssignmentsDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "Kustodatabase8", + "principalAssignmentName": "kustoprincipal1", + "api-version": "2019-11-09" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasePrincipalAssignmentsGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasePrincipalAssignmentsGet.json new file mode 100644 index 000000000000..41fa5202b178 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasePrincipalAssignmentsGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "Kustodatabase8", + "principalAssignmentName": "kustoprincipal1", + "api-version": "2019-11-09" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1", + "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasePrincipalAssignmentsList.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasePrincipalAssignmentsList.json new file mode 100644 index 000000000000..4667171d4fad --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasePrincipalAssignmentsList.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "Kustodatabase8", + "api-version": "2019-11-09" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1", + "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal2", + "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabaseRemovePrincipals.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabaseRemovePrincipals.json new file mode 100644 index 000000000000..a14cebead6e9 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabaseRemovePrincipals.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "databaseName1", + "api-version": "2019-11-09", + "databasePrincipalsToRemove": { + "value": [ + { + "name": "Some User", + "role": "Admin", + "type": "User", + "fqn": "aaduser=some_guid", + "email": "user@microsoft.com", + "appId": "" + }, + { + "name": "Kusto", + "role": "Viewer", + "type": "Group", + "fqn": "aadgroup=some_guid", + "email": "kusto@microsoft.com", + "appId": "" + }, + { + "name": "SomeApp", + "role": "Admin", + "type": "App", + "fqn": "aadapp=some_guid_app_id", + "email": "", + "appId": "some_guid_app_id" + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Some User", + "role": "Admin", + "type": "User", + "fqn": "aaduser=some_guid", + "email": "user@microsoft.com", + "appId": "" + }, + { + "name": "Kusto", + "role": "Viewer", + "type": "Group", + "fqn": "aadgroup=some_guid", + "email": "kusto@microsoft.com", + "appId": "" + }, + { + "name": "SomeApp", + "role": "Admin", + "type": "App", + "fqn": "aadapp=some_guid_app_id", + "email": "", + "appId": "some_guid_app_id" + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasesCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasesCheckNameAvailability.json new file mode 100644 index 000000000000..04d05575f173 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasesCheckNameAvailability.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "api-version": "2019-11-09", + "resourceGroupName": "kustorptest", + "clusterName": "kustoProd", + "resourceName": { + "name": "kuskus", + "type": "Microsoft.Kusto/clusters/databases" + } + }, + "responses": { + "200": { + "body": { + "name": "kuskus", + "nameAvailable": false, + "message": "Name 'kuskus' is already taken. Please specify a different name" + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasesCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasesCreateOrUpdate.json new file mode 100644 index 000000000000..05f936adf26d --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasesCreateOrUpdate.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "KustoDatabase8", + "api-version": "2019-11-09", + "parameters": { + "location": "westus", + "properties": { + "softDeletePeriod": "P1D" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/Databases", + "kind": "ReadWrite", + "location": "westus", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/Databases", + "location": "westus", + "kind": "ReadWrite", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/Databases", + "location": "westus", + "kind": "ReadWrite", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasesDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasesDelete.json new file mode 100644 index 000000000000..44de91434533 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasesDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "KustoDatabase8", + "api-version": "2019-11-09" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasesGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasesGet.json new file mode 100644 index 000000000000..d3013730aa7d --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasesGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "KustoDatabase8", + "api-version": "2019-11-09" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/Databases", + "kind": "ReadWrite", + "location": "westus", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasesListByCluster.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasesListByCluster.json new file mode 100644 index 000000000000..36d131008906 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasesListByCluster.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2019-11-09" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/Databases", + "location": "westus", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase9", + "name": "KustoClusterRPTest4/KustoDatabase9", + "type": "Microsoft.Kusto/Clusters/Databases", + "location": "westus", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasesUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasesUpdate.json new file mode 100644 index 000000000000..17ccaeca8f3c --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoDatabasesUpdate.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "KustoDatabase8", + "api-version": "2019-11-09", + "parameters": { + "properties": { + "softDeletePeriod": "P1D" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/Databases", + "kind": "ReadWrite", + "location": "westus", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/Databases", + "kind": "ReadWrite", + "location": "westus", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/Databases", + "location": "westus", + "kind": "ReadWrite", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoOperationsList.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoOperationsList.json new file mode 100644 index 000000000000..5cd8be5ee6f5 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/examples/KustoOperationsList.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2019-29-11" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "operationName", + "display": { + "provider": "providerName", + "resource": "resourceName", + "operation": "operationName", + "description": "operation description" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/kusto.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/kusto.json new file mode 100644 index 000000000000..7e70bb6c6537 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2019-11-09/kusto.json @@ -0,0 +1,4036 @@ +{ + "swagger": "2.0", + "info": { + "title": "KustoManagementClient", + "version": "2019-11-09" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}": { + "get": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_Get", + "x-ms-examples": { + "KustoClustersGet": { + "$ref": "./examples/KustoClustersGet.json" + } + }, + "description": "Gets a Kusto cluster.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Kusto cluster.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_CreateOrUpdate", + "x-ms-examples": { + "KustoClustersCreateOrUpdate": { + "$ref": "./examples/KustoClustersCreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Create or update a Kusto cluster.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Cluster" + }, + "description": "The Kusto cluster parameters supplied to the CreateOrUpdate operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the Cluster.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "201": { + "description": "Successfully created the cluster.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_Update", + "x-ms-examples": { + "KustoClustersUpdate": { + "$ref": "./examples/KustoClustersUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Update a Kusto cluster.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterUpdate" + }, + "description": "The Kusto cluster parameters supplied to the Update operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the Cluster.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "201": { + "description": "Successfully updated the cluster.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "202": { + "description": "Successfully updated the cluster.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_Delete", + "x-ms-examples": { + "KustoClustersDelete": { + "$ref": "./examples/KustoClustersDelete.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Deletes a Kusto cluster.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- cluster deleted successfully." + }, + "202": { + "description": "Accepted the delete cluster request." + }, + "204": { + "description": "NoContent -- cluster does not exist in the subscription." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/stop": { + "post": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_Stop", + "x-ms-examples": { + "KustoClustersStop": { + "$ref": "./examples/KustoClustersStop.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Stops a Kusto cluster.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/start": { + "post": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_Start", + "x-ms-examples": { + "KustoClustersStart": { + "$ref": "./examples/KustoClustersStart.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Starts a Kusto cluster.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Accepted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/checkPrincipalAssignmentNameAvailability": { + "post": { + "tags": [ + "ClusterPrincipalAssignments" + ], + "operationId": "ClusterPrincipalAssignments_CheckNameAvailability", + "x-ms-examples": { + "KustoClusterPrincipalAssignmentsCheckNameAvailability": { + "$ref": "./examples/KustoClusterPrincipalAssignmentsCheckNameAvailability.json" + } + }, + "description": "Checks that the principal assignment name is valid and is not already in use.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "principalAssignmentName", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterPrincipalAssignmentCheckNameRequest" + }, + "description": "The name of the principal assignment." + } + ], + "responses": { + "200": { + "description": "OK -- Operation to check the kusto resource name availability was successful.", + "schema": { + "$ref": "#/definitions/CheckNameResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/principalAssignments/{principalAssignmentName}": { + "get": { + "tags": [ + "ClusterPrincipalAssignments" + ], + "operationId": "ClusterPrincipalAssignments_Get", + "x-ms-examples": { + "KustoClusterPrincipalAssignmentsGet": { + "$ref": "./examples/KustoClusterPrincipalAssignmentsGet.json" + } + }, + "description": "Gets a Kusto cluster principalAssignment.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/PrincipalAssignmentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Kusto cluster principal assignment object.", + "schema": { + "$ref": "#/definitions/ClusterPrincipalAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "ClusterPrincipalAssignments" + ], + "operationId": "ClusterPrincipalAssignments_CreateOrUpdate", + "x-ms-examples": { + "KustoClusterPrincipalAssignmentsCreateOrUpdate": { + "$ref": "./examples/KustoClusterPrincipalAssignmentsCreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Create a Kusto cluster principalAssignment.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/PrincipalAssignmentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterPrincipalAssignment" + }, + "description": "The Kusto cluster principalAssignment's parameters supplied for the operation." + } + ], + "responses": { + "200": { + "description": "Successfully updated the PrincipalAssignment.", + "schema": { + "$ref": "#/definitions/ClusterPrincipalAssignment" + } + }, + "201": { + "description": "Successfully created the principalAssignment.", + "schema": { + "$ref": "#/definitions/ClusterPrincipalAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "ClusterPrincipalAssignments" + ], + "operationId": "ClusterPrincipalAssignments_Delete", + "x-ms-examples": { + "KustoClusterPrincipalAssignmentsDelete": { + "$ref": "./examples/KustoClusterPrincipalAssignmentsDelete.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Deletes a Kusto cluster principalAssignment.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/PrincipalAssignmentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- principalAssignments deleted successfully." + }, + "202": { + "description": "Accepted the delete principalAssignments request." + }, + "204": { + "description": "NoContent -- principalAssignments does not exist in the subscription." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/principalAssignments": { + "get": { + "tags": [ + "ClusterPrincipalAssignments" + ], + "operationId": "ClusterPrincipalAssignments_List", + "x-ms-examples": { + "KustoPrincipalAssignmentsList": { + "$ref": "./examples/KustoClusterPrincipalAssignmentsList.json" + } + }, + "description": "Lists all Kusto cluster principalAssignments.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/ClusterPrincipalAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/listFollowerDatabases": { + "post": { + "tags": [ + "Clusters" + ], + "description": "Returns a list of databases that are owned by this cluster and were followed by another cluster.", + "operationId": "Clusters_ListFollowerDatabases", + "x-ms-examples": { + "KustoClusterListFollowerDatabases": { + "$ref": "./examples/KustoClusterListFollowerDatabases.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of followed databases.", + "schema": { + "$ref": "#/definitions/FollowerDatabaseListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/detachFollowerDatabases": { + "post": { + "tags": [ + "Clusters" + ], + "description": "Detaches all followers of a database owned by this cluster.", + "operationId": "Clusters_DetachFollowerDatabases", + "x-ms-examples": { + "KustoClusterDetachFollowerDatabases": { + "$ref": "./examples/KustoClusterDetachFollowerDatabases.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "followerDatabaseToRemove", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FollowerDatabaseDefinition" + }, + "description": "The follower databases properties to remove." + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/diagnoseVirtualNetwork": { + "post": { + "tags": [ + "Clusters" + ], + "description": "Diagnoses network connectivity status for external resources on which the service is dependent on.", + "operationId": "Clusters_DiagnoseVirtualNetwork", + "x-ms-examples": { + "KustoClusterDiagnoseVirtualNetwork": { + "$ref": "./examples/KustoClustersDiagnoseVirtualNetwork.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/DiagnoseVirtualNetworkResult" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters": { + "get": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_ListByResourceGroup", + "x-ms-examples": { + "KustoClustersListByResourceGroup": { + "$ref": "./examples/KustoClustersListByResourceGroup.json" + } + }, + "description": "Lists all Kusto clusters within a resource group.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/ClusterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Kusto/clusters": { + "get": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_List", + "x-ms-examples": { + "KustoClustersList": { + "$ref": "./examples/KustoClustersList.json" + } + }, + "description": "Lists all Kusto clusters within a subscription.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/ClusterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Kusto/skus": { + "get": { + "description": "Lists eligible SKUs for Kusto resource provider.", + "x-ms-examples": { + "KustoClustersListSkus": { + "$ref": "./examples/KustoClustersListSkus.json" + } + }, + "operationId": "Clusters_ListSkus", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/SkuDescriptionList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Kusto/locations/{location}/checkNameAvailability": { + "post": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_CheckNameAvailability", + "x-ms-examples": { + "KustoClustersCheckNameAvailability": { + "$ref": "./examples/KustoClustersCheckNameAvailability.json" + } + }, + "description": "Checks that the cluster name is valid and is not already in use.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "location", + "in": "path", + "description": "Azure location.", + "required": true, + "type": "string" + }, + { + "name": "clusterName", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterCheckNameRequest" + }, + "description": "The name of the cluster." + } + ], + "responses": { + "200": { + "description": "OK -- Operation to check the kusto resource name availability was successful.", + "schema": { + "$ref": "#/definitions/CheckNameResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/checkNameAvailability": { + "post": { + "tags": [ + "Databases" + ], + "operationId": "Databases_CheckNameAvailability", + "x-ms-examples": { + "KustoDatabaseCheckNameAvailability": { + "$ref": "./examples/KustoDatabasesCheckNameAvailability.json" + } + }, + "description": "Checks that the database name is valid and is not already in use.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceName", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameRequest" + }, + "description": "The name of the resource." + } + ], + "responses": { + "200": { + "description": "OK -- Operation to check the kusto resource name availability was successful.", + "schema": { + "$ref": "#/definitions/CheckNameResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/skus": { + "get": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_ListSkusByResource", + "x-ms-examples": { + "KustoClustersListResourceSkus": { + "$ref": "./examples/KustoClustersListResourceSkus.json" + } + }, + "description": "Returns the SKUs available for the provided resource.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/ListResourceSkusResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases": { + "get": { + "tags": [ + "Databases" + ], + "description": "Returns the list of databases of the given Kusto cluster.", + "operationId": "Databases_ListByCluster", + "x-ms-examples": { + "KustoDatabasesListByCluster": { + "$ref": "./examples/KustoDatabasesListByCluster.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of databases.", + "schema": { + "$ref": "#/definitions/DatabaseListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}": { + "get": { + "tags": [ + "Databases" + ], + "description": "Returns a database.", + "operationId": "Databases_Get", + "x-ms-examples": { + "KustoDatabasesGet": { + "$ref": "./examples/KustoDatabasesGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Databases" + ], + "description": "Creates or updates a database.", + "operationId": "Databases_CreateOrUpdate", + "x-ms-examples": { + "KustoDatabasesCreateOrUpdate": { + "$ref": "./examples/KustoDatabasesCreateOrUpdate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Database" + }, + "description": "The database parameters supplied to the CreateOrUpdate operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "201": { + "description": "Successfully created the database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "202": { + "description": "Accepted the create database request.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Databases" + ], + "description": "Updates a database.", + "operationId": "Databases_Update", + "x-ms-examples": { + "KustoDatabasesUpdate": { + "$ref": "./examples/KustoDatabasesUpdate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Database" + }, + "description": "The database parameters supplied to the Update operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "201": { + "description": "Successfully updated the database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "202": { + "description": "Accepted the update database request.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Databases" + ], + "description": "Deletes the database with the given name.", + "operationId": "Databases_Delete", + "x-ms-examples": { + "KustoDatabasesDelete": { + "$ref": "./examples/KustoDatabasesDelete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the database." + }, + "202": { + "description": "Accepted." + }, + "204": { + "description": "The specified database does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/checkPrincipalAssignmentNameAvailability": { + "post": { + "tags": [ + "DatabasePrincipalAssignments" + ], + "operationId": "DatabasePrincipalAssignments_CheckNameAvailability", + "x-ms-examples": { + "KustoDatabaseCheckNameAvailability": { + "$ref": "./examples/KustoDatabasePrincipalAssignmentsCheckNameAvailability.json" + } + }, + "description": "Checks that the database principal assignment is valid and is not already in use.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "principalAssignmentName", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabasePrincipalAssignmentCheckNameRequest" + }, + "description": "The name of the resource." + } + ], + "responses": { + "200": { + "description": "OK -- Operation to check the kusto resource name availability was successful.", + "schema": { + "$ref": "#/definitions/CheckNameResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/principalAssignments/{principalAssignmentName}": { + "get": { + "tags": [ + "DatabasePrincipalAssignments" + ], + "operationId": "DatabasePrincipalAssignments_Get", + "x-ms-examples": { + "KustoDatabasePrincipalAssignmentsGet": { + "$ref": "./examples/KustoDatabasePrincipalAssignmentsGet.json" + } + }, + "description": "Gets a Kusto cluster database principalAssignment.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/PrincipalAssignmentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Kusto cluster database principal assignment object.", + "schema": { + "$ref": "#/definitions/DatabasePrincipalAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "DatabasePrincipalAssignments" + ], + "operationId": "DatabasePrincipalAssignments_CreateOrUpdate", + "x-ms-examples": { + "KustoDatabasePrincipalAssignmentsCreateOrUpdate": { + "$ref": "./examples/KustoDatabasePrincipalAssignmentsCreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Creates a Kusto cluster database principalAssignment.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/PrincipalAssignmentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabasePrincipalAssignment" + }, + "description": "The Kusto principalAssignments parameters supplied for the operation." + } + ], + "responses": { + "200": { + "description": "Successfully updated the PrincipalAssignments.", + "schema": { + "$ref": "#/definitions/DatabasePrincipalAssignment" + } + }, + "201": { + "description": "Successfully created the principalAssignments.", + "schema": { + "$ref": "#/definitions/DatabasePrincipalAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "DatabasePrincipalAssignments" + ], + "operationId": "DatabasePrincipalAssignments_Delete", + "x-ms-examples": { + "KustoDatabasePrincipalAssignmentsDelete": { + "$ref": "./examples/KustoDatabasePrincipalAssignmentsDelete.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Deletes a Kusto principalAssignment.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/PrincipalAssignmentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- principalAssignments deleted successfully." + }, + "202": { + "description": "Accepted the delete principalAssignments request." + }, + "204": { + "description": "NoContent -- principalAssignments does not exist in the subscription." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/principalAssignments": { + "get": { + "tags": [ + "DatabasePrincipalAssignments" + ], + "operationId": "DatabasePrincipalAssignments_List", + "x-ms-examples": { + "KustoPrincipalAssignmentsList": { + "$ref": "./examples/KustoDatabasePrincipalAssignmentsList.json" + } + }, + "description": "Lists all Kusto cluster database principalAssignments.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/DatabasePrincipalAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/listPrincipals": { + "post": { + "tags": [ + "Databases" + ], + "description": "Returns a list of database principals of the given Kusto cluster and database.", + "operationId": "Databases_ListPrincipals", + "x-ms-examples": { + "KustoDatabaseListPrincipals": { + "$ref": "./examples/KustoDatabaseListPrincipals.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of database principals.", + "schema": { + "$ref": "#/definitions/DatabasePrincipalListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/addPrincipals": { + "post": { + "tags": [ + "Databases" + ], + "operationId": "Databases_AddPrincipals", + "x-ms-examples": { + "KustoDatabaseAddPrincipals": { + "$ref": "./examples/KustoDatabaseAddPrincipals.json" + } + }, + "description": "Add Database principals permissions.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "databasePrincipalsToAdd", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabasePrincipalListRequest" + }, + "description": "List of database principals to add." + } + ], + "responses": { + "200": { + "description": "OK -- Successfully added the list of database principals. Returns the updated list of principals.", + "schema": { + "$ref": "#/definitions/DatabasePrincipalListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/attachedDatabaseConfigurations": { + "get": { + "tags": [ + "AttachedDatabaseConfigurations" + ], + "description": "Returns the list of attached database configurations of the given Kusto cluster.", + "operationId": "AttachedDatabaseConfigurations_ListByCluster", + "x-ms-examples": { + "KustoAttachedDatabaseConfigurationsListByCluster": { + "$ref": "./examples/KustoAttachedDatabaseConfigurationsListByCluster.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of attached database configurations.", + "schema": { + "$ref": "#/definitions/AttachedDatabaseConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/attachedDatabaseConfigurations/{attachedDatabaseConfigurationName}": { + "get": { + "tags": [ + "AttachedDatabaseConfigurations" + ], + "description": "Returns an attached database configuration.", + "operationId": "AttachedDatabaseConfigurations_Get", + "x-ms-examples": { + "AttachedDatabaseConfigurationsGet": { + "$ref": "./examples/KustoAttachedDatabaseConfigurationsGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/AttachedDatabaseConfigurationNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified attached database configuration.", + "schema": { + "$ref": "#/definitions/AttachedDatabaseConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "AttachedDatabaseConfigurations" + ], + "description": "Creates or updates an attached database configuration.", + "operationId": "AttachedDatabaseConfigurations_CreateOrUpdate", + "x-ms-examples": { + "AttachedDatabaseConfigurationsCreateOrUpdate": { + "$ref": "./examples/KustoAttachedDatabaseConfigurationsCreateOrUpdate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/AttachedDatabaseConfigurationNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AttachedDatabaseConfiguration" + }, + "description": "The database parameters supplied to the CreateOrUpdate operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the database.", + "schema": { + "$ref": "#/definitions/AttachedDatabaseConfiguration" + } + }, + "201": { + "description": "Successfully created the database.", + "schema": { + "$ref": "#/definitions/AttachedDatabaseConfiguration" + } + }, + "202": { + "description": "Accepted the create database request.", + "schema": { + "$ref": "#/definitions/AttachedDatabaseConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "AttachedDatabaseConfigurations" + ], + "description": "Deletes the attached database configuration with the given name.", + "operationId": "AttachedDatabaseConfigurations_Delete", + "x-ms-examples": { + "AttachedDatabaseConfigurationsDelete": { + "$ref": "./examples/KustoAttachedDatabaseConfigurationsDelete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/AttachedDatabaseConfigurationNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the database." + }, + "202": { + "description": "Accepted." + }, + "204": { + "description": "The specified database does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/removePrincipals": { + "post": { + "tags": [ + "Databases" + ], + "operationId": "Databases_RemovePrincipals", + "x-ms-examples": { + "KustoDatabaseRemovePrincipals": { + "$ref": "./examples/KustoDatabaseRemovePrincipals.json" + } + }, + "description": "Remove Database principals permissions.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "databasePrincipalsToRemove", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabasePrincipalListRequest" + }, + "description": "List of database principals to remove." + } + ], + "responses": { + "200": { + "description": "OK -- Successfully removed the list of database principals. Returns the updated list of principals.", + "schema": { + "$ref": "#/definitions/DatabasePrincipalListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/dataConnections": { + "get": { + "tags": [ + "DataConnections" + ], + "description": "Returns the list of data connections of the given Kusto database.", + "operationId": "DataConnections_ListByDatabase", + "x-ms-examples": { + "KustoDatabasesListByCluster": { + "$ref": "./examples/KustoDataConnectionsListByDatabase.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of data connections.", + "schema": { + "$ref": "#/definitions/DataConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/dataConnectionValidation": { + "post": { + "tags": [ + "DataConnections" + ], + "operationId": "DataConnections_dataConnectionValidation", + "x-ms-examples": { + "KustoDataConnectionValidation": { + "$ref": "./examples/KustoDataConnectionValidation.json" + } + }, + "description": "Checks that the data connection parameters are valid.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataConnectionValidation" + }, + "description": "The data connection parameters supplied to the CreateOrUpdate operation." + } + ], + "responses": { + "200": { + "description": "OK -- Operation to check the kusto resource name availability was successful.", + "schema": { + "$ref": "#/definitions/DataConnectionValidationListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/checkNameAvailability": { + "post": { + "tags": [ + "DataConnections" + ], + "operationId": "DataConnections_CheckNameAvailability", + "x-ms-examples": { + "KustoDataConnectionsCheckNameAvailability": { + "$ref": "./examples/KustoDataConnectionsCheckNameAvailability.json" + } + }, + "description": "Checks that the data connection name is valid and is not already in use.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "dataConnectionName", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataConnectionCheckNameRequest" + }, + "description": "The name of the data connection." + } + ], + "responses": { + "200": { + "description": "OK -- Operation to check the Kusto resource name availability was successful.", + "schema": { + "$ref": "#/definitions/CheckNameResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/dataConnections/{dataConnectionName}": { + "get": { + "tags": [ + "DataConnections" + ], + "description": "Returns a data connection.", + "operationId": "DataConnections_Get", + "x-ms-examples": { + "KustoDataConnectionsGet": { + "$ref": "./examples/KustoDataConnectionsGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/DataConnectionNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified data connection.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "DataConnections" + ], + "description": "Creates or updates a data connection.", + "operationId": "DataConnections_CreateOrUpdate", + "x-ms-examples": { + "KustoDataConnectionsCreateOrUpdate": { + "$ref": "./examples/KustoDataConnectionsCreateOrUpdate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/DataConnectionNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataConnection" + }, + "description": "The data connection parameters supplied to the CreateOrUpdate operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the data connection.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "201": { + "description": "Successfully created the data connection.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "202": { + "description": "Accepted the create data connection request.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "DataConnections" + ], + "description": "Updates a data connection.", + "operationId": "DataConnections_Update", + "x-ms-examples": { + "KustoDataConnectionsUpdate": { + "$ref": "./examples/KustoDataConnectionsUpdate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/DataConnectionNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataConnection" + }, + "description": "The data connection parameters supplied to the Update operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the data connection.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "201": { + "description": "Successfully updated the data connection.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "202": { + "description": "Accepted the update data connection request.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "DataConnections" + ], + "description": "Deletes the data connection with the given name.", + "operationId": "DataConnections_Delete", + "x-ms-examples": { + "KustoDataConnectionsDelete": { + "$ref": "./examples/KustoDataConnectionsDelete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/DataConnectionNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the data connection." + }, + "202": { + "description": "Accepted." + }, + "204": { + "description": "The specified data connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/providers/Microsoft.Kusto/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "x-ms-examples": { + "KustoOperationsList": { + "$ref": "./examples/KustoOperationsList.json" + } + }, + "description": "Lists available operations for the Microsoft.Kusto provider.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the list of available operations.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ClusterProperties": { + "properties": { + "state": { + "type": "string", + "readOnly": true, + "description": "The state of the resource.", + "enum": [ + "Creating", + "Unavailable", + "Running", + "Deleting", + "Deleted", + "Stopping", + "Stopped", + "Starting", + "Updating" + ], + "x-ms-enum": { + "name": "State", + "modelAsString": true + } + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioned state of the resource.", + "enum": [ + "Running", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Moving" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "uri": { + "type": "string", + "readOnly": true, + "description": "The cluster URI." + }, + "dataIngestionUri": { + "type": "string", + "readOnly": true, + "description": "The cluster data ingestion URI." + }, + "stateReason": { + "type": "string", + "readOnly": true, + "description": "The reason for the cluster's current state." + }, + "trustedExternalTenants": { + "type": "array", + "items": { + "$ref": "#/definitions/TrustedExternalTenant" + }, + "description": "The cluster's external tenants." + }, + "optimizedAutoscale": { + "type": "object", + "$ref": "#/definitions/OptimizedAutoscale", + "description": "Optimized auto scale definition." + }, + "enableDiskEncryption": { + "description": "A boolean value that indicates if the cluster's disks are encrypted.", + "type": "boolean" + }, + "enableStreamingIngest": { + "description": "A boolean value that indicates if the streaming ingest is enabled.", + "default": false, + "type": "boolean" + }, + "virtualNetworkConfiguration": { + "type": "object", + "$ref": "#/definitions/VirtualNetworkConfiguration", + "description": "Virtual network definition." + }, + "keyVaultProperties": { + "type": "object", + "$ref": "#/definitions/KeyVaultProperties", + "description": "KeyVault properties for the cluster encryption." + } + }, + "description": "Class representing the Kusto cluster properties." + }, + "TrustedExternalTenant": { + "properties": { + "value": { + "type": "string", + "description": "GUID representing an external tenant." + } + }, + "description": "Represents a tenant ID that is trusted by the cluster." + }, + "AzureResourceSku": { + "properties": { + "resourceType": { + "type": "string", + "description": "Resource Namespace and Type." + }, + "sku": { + "$ref": "#/definitions/AzureSku", + "description": "The SKU details." + }, + "capacity": { + "$ref": "#/definitions/AzureCapacity", + "description": "The number of instances of the cluster." + } + }, + "description": "Azure resource SKU definition." + }, + "AzureCapacity": { + "type": "object", + "required": [ + "minimum", + "maximum", + "default", + "scaleType" + ], + "properties": { + "scaleType": { + "description": "Scale type.", + "type": "string", + "enum": [ + "automatic", + "manual", + "none" + ], + "x-ms-enum": { + "name": "AzureScaleType", + "modelAsString": true + } + }, + "minimum": { + "description": "Minimum allowed capacity.", + "type": "integer" + }, + "maximum": { + "description": "Maximum allowed capacity.", + "type": "integer" + }, + "default": { + "description": "The default capacity that would be used.", + "type": "integer" + } + }, + "description": "Azure capacity definition." + }, + "SkuDescriptionList": { + "description": "The list of the EngagementFabric SKU descriptions", + "type": "object", + "properties": { + "value": { + "description": "SKU descriptions", + "type": "array", + "items": { + "$ref": "#/definitions/SkuDescription" + }, + "readOnly": true + } + } + }, + "SkuDescription": { + "description": "The Kusto SKU description of given resource type", + "type": "object", + "properties": { + "resourceType": { + "description": "The resource type", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the SKU", + "type": "string", + "readOnly": true + }, + "tier": { + "description": "The tier of the SKU", + "type": "string", + "readOnly": true + }, + "locations": { + "description": "The set of locations that the SKU is available", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "locationInfo": { + "description": "Locations and zones", + "type": "array", + "items": { + "$ref": "#/definitions/SkuLocationInfoItem" + }, + "readOnly": true + }, + "restrictions": { + "description": "The restrictions because of which SKU cannot be used", + "type": "array", + "items": { + "type": "object" + }, + "readOnly": true + } + } + }, + "SkuLocationInfoItem": { + "description": "The locations and zones info for SKU.", + "type": "object", + "required": [ + "location" + ], + "properties": { + "location": { + "description": "The available location of the SKU.", + "type": "string" + }, + "zones": { + "description": "The available zone of the SKU.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "AzureSku": { + "type": "object", + "required": [ + "name", + "tier" + ], + "properties": { + "name": { + "description": "SKU name.", + "type": "string", + "enum": [ + "Standard_DS13_v2+1TB_PS", + "Standard_DS13_v2+2TB_PS", + "Standard_DS14_v2+3TB_PS", + "Standard_DS14_v2+4TB_PS", + "Standard_D13_v2", + "Standard_D14_v2", + "Standard_L8s", + "Standard_L16s", + "Standard_D11_v2", + "Standard_D12_v2", + "Standard_L4s", + "Dev(No SLA)_Standard_D11_v2" + ], + "x-ms-enum": { + "name": "AzureSkuName", + "modelAsString": true + } + }, + "capacity": { + "description": "The number of instances of the cluster.", + "type": "integer" + }, + "tier": { + "description": "SKU tier.", + "type": "string", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "AzureSkuTier", + "modelAsString": true + } + } + }, + "description": "Azure SKU definition." + }, + "Zones": { + "description": "An array represents the availability zones of the cluster.", + "type": "array", + "items": { + "type": "string" + } + }, + "OptimizedAutoscale": { + "type": "object", + "required": [ + "version", + "isEnabled", + "minimum", + "maximum" + ], + "properties": { + "version": { + "description": "The version of the template defined, for instance 1.", + "type": "integer" + }, + "isEnabled": { + "description": "A boolean value that indicate if the optimized autoscale feature is enabled or not.", + "type": "boolean" + }, + "minimum": { + "description": "Minimum allowed instances count.", + "type": "integer" + }, + "maximum": { + "description": "Maximum allowed instances count.", + "type": "integer" + } + }, + "description": "A class that contains the optimized auto scale definition." + }, + "VirtualNetworkConfiguration": { + "type": "object", + "required": [ + "subnetId", + "enginePublicIpId", + "dataManagementPublicIpId" + ], + "properties": { + "subnetId": { + "description": "The subnet resource id.", + "type": "string" + }, + "enginePublicIpId": { + "description": "Engine service's public IP address resource id.", + "type": "string" + }, + "dataManagementPublicIpId": { + "description": "Data management's service public IP address resource id.", + "type": "string" + } + }, + "description": "A class that contains virtual network definition." + }, + "DatabaseStatistics": { + "type": "object", + "readOnly": true, + "properties": { + "size": { + "type": "number", + "description": "The database size - the total size of compressed data and index in bytes." + } + }, + "description": "A class that contains database statistics information." + }, + "AttachedDatabaseConfigurationProperties": { + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioned state of the resource.", + "enum": [ + "Running", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Moving" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "databaseName": { + "type": "string", + "description": "The name of the database which you would like to attach, use * if you want to follow all current and future databases." + }, + "clusterResourceId": { + "type": "string", + "description": "The resource id of the cluster where the databases you would like to attach reside." + }, + "attachedDatabaseNames": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "The list of databases from the clusterResourceId which are currently attached to the cluster." + }, + "defaultPrincipalsModificationKind": { + "type": "string", + "enum": [ + "Union", + "Replace", + "None" + ], + "x-ms-enum": { + "name": "DefaultPrincipalsModificationKind", + "modelAsString": true + }, + "description": "The default principals modification kind" + } + }, + "description": "Class representing the an attached database configuration properties of kind specific.", + "required": [ + "databaseName", + "clusterResourceId", + "defaultPrincipalsModificationKind" + ] + }, + "ReadWriteDatabaseProperties": { + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioned state of the resource.", + "enum": [ + "Running", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Moving" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "softDeletePeriod": { + "type": "string", + "format": "duration", + "description": "The time the data should be kept before it stops being accessible to queries in TimeSpan." + }, + "hotCachePeriod": { + "type": "string", + "format": "duration", + "description": "The time the data should be kept in cache for fast queries in TimeSpan." + }, + "statistics": { + "$ref": "#/definitions/DatabaseStatistics", + "description": "The statistics of the database." + }, + "isFollowed": { + "type": "string", + "readOnly": true, + "description": "Indicates whether the database is followed." + } + }, + "description": "Class representing the Kusto database properties." + }, + "ReadOnlyFollowingDatabaseProperties": { + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioned state of the resource.", + "enum": [ + "Running", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Moving" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "softDeletePeriod": { + "type": "string", + "readOnly": true, + "format": "duration", + "description": "The time the data should be kept before it stops being accessible to queries in TimeSpan." + }, + "hotCachePeriod": { + "type": "string", + "format": "duration", + "description": "The time the data should be kept in cache for fast queries in TimeSpan." + }, + "statistics": { + "$ref": "#/definitions/DatabaseStatistics", + "description": "The statistics of the database." + }, + "leaderClusterResourceId": { + "type": "string", + "readOnly": true, + "description": "The name of the leader cluster" + }, + "attachedDatabaseConfigurationName": { + "type": "string", + "readOnly": true, + "description": "The name of the attached database configuration cluster" + }, + "principalsModificationKind": { + "type": "string", + "readOnly": true, + "enum": [ + "Union", + "Replace", + "None" + ], + "x-ms-enum": { + "name": "PrincipalsModificationKind", + "modelAsString": true + }, + "description": "The principals modification kind of the database" + } + }, + "description": "Class representing the Kusto database properties." + }, + "EventHubConnectionProperties": { + "properties": { + "eventHubResourceId": { + "type": "string", + "description": "The resource ID of the event hub to be used to create a data connection." + }, + "consumerGroup": { + "type": "string", + "description": "The event hub consumer group." + }, + "tableName": { + "type": "string", + "description": "The table where the data should be ingested. Optionally the table information can be added to each message." + }, + "mappingRuleName": { + "type": "string", + "description": "The mapping rule to be used to ingest the data. Optionally the mapping information can be added to each message." + }, + "dataFormat": { + "$ref": "#/definitions/EventHubDataFormat", + "description": "The data format of the message. Optionally the data format can be added to each message." + }, + "eventSystemProperties": { + "type": "array", + "items": { + "type": "string" + }, + "description": "System properties of the event hub" + }, + "compression": { + "$ref": "#/definitions/Compression", + "description": "The event hub messages compression type" + } + }, + "required": [ + "eventHubResourceId", + "consumerGroup" + ], + "description": "Class representing the Kusto event hub connection properties." + }, + "IotHubConnectionProperties": { + "properties": { + "iotHubResourceId": { + "type": "string", + "description": "The resource ID of the Iot hub to be used to create a data connection." + }, + "consumerGroup": { + "type": "string", + "description": "The iot hub consumer group." + }, + "tableName": { + "type": "string", + "description": "The table where the data should be ingested. Optionally the table information can be added to each message." + }, + "mappingRuleName": { + "type": "string", + "description": "The mapping rule to be used to ingest the data. Optionally the mapping information can be added to each message." + }, + "dataFormat": { + "$ref": "#/definitions/IotHubDataFormat", + "description": "The data format of the message. Optionally the data format can be added to each message." + }, + "eventSystemProperties": { + "type": "array", + "items": { + "type": "string" + }, + "description": "System properties of the iot hub" + }, + "sharedAccessPolicyName": { + "type": "string", + "description": "The name of the share access policy" + } + }, + "required": [ + "iotHubResourceId", + "consumerGroup", + "sharedAccessPolicyName" + ], + "description": "Class representing the Kusto Iot hub connection properties." + }, + "EventHubDataFormat": { + "description": "The data format of the message. Optionally the data format can be added to each message.", + "type": "string", + "enum": [ + "MULTIJSON", + "JSON", + "CSV", + "TSV", + "SCSV", + "SOHSV", + "PSV", + "TXT", + "RAW", + "SINGLEJSON", + "AVRO", + "TSVE", + "PARQUET", + "ORC" + ], + "x-ms-enum": { + "name": "eventHubDataFormat", + "modelAsString": true + } + }, + "IotHubDataFormat": { + "description": "The data format of the message. Optionally the data format can be added to each message.", + "type": "string", + "enum": [ + "MULTIJSON", + "JSON", + "CSV", + "TSV", + "SCSV", + "SOHSV", + "PSV", + "TXT", + "RAW", + "SINGLEJSON", + "AVRO", + "TSVE", + "PARQUET", + "ORC" + ], + "x-ms-enum": { + "name": "iotHubDataFormat", + "modelAsString": true + } + }, + "EventGridDataFormat": { + "description": "The data format of the message. Optionally the data format can be added to each message.", + "type": "string", + "enum": [ + "MULTIJSON", + "JSON", + "CSV", + "TSV", + "SCSV", + "SOHSV", + "PSV", + "TXT", + "RAW", + "SINGLEJSON", + "AVRO", + "TSVE", + "PARQUET", + "ORC" + ], + "x-ms-enum": { + "name": "eventGridDataFormat", + "modelAsString": true + } + }, + "Compression": { + "description": "The compression type", + "type": "string", + "enum": [ + "None", + "GZip" + ], + "x-ms-enum": { + "name": "compression", + "modelAsString": true + } + }, + "EventGridConnectionProperties": { + "properties": { + "storageAccountResourceId": { + "type": "string", + "description": "The resource ID of the storage account where the data resides." + }, + "eventHubResourceId": { + "type": "string", + "description": "The resource ID where the event grid is configured to send events." + }, + "consumerGroup": { + "type": "string", + "description": "The event hub consumer group." + }, + "tableName": { + "type": "string", + "description": "The table where the data should be ingested. Optionally the table information can be added to each message." + }, + "mappingRuleName": { + "type": "string", + "description": "The mapping rule to be used to ingest the data. Optionally the mapping information can be added to each message." + }, + "dataFormat": { + "$ref": "#/definitions/EventGridDataFormat", + "description": "The data format of the message. Optionally the data format can be added to each message." + } + }, + "required": [ + "storageAccountResourceId", + "eventHubResourceId", + "consumerGroup", + "tableName", + "dataFormat" + ], + "description": "Class representing the Kusto event grid connection properties." + }, + "Cluster": { + "required": [ + "sku" + ], + "properties": { + "sku": { + "$ref": "#/definitions/AzureSku", + "description": "The SKU of the cluster." + }, + "zones": { + "$ref": "#/definitions/Zones", + "description": "The availability zones of the cluster." + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the cluster, if configured." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterProperties", + "description": "The cluster properties." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "description": "Class representing a Kusto cluster." + }, + "ClusterUpdate": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Resource tags." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "sku": { + "$ref": "#/definitions/AzureSku", + "description": "The SKU of the cluster." + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the cluster, if configured." + }, + "properties": { + "x-ms-client-flatten": true, + "description": "The cluster properties.", + "$ref": "#/definitions/ClusterProperties" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "Class representing an update to a Kusto cluster." + }, + "AttachedDatabaseConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AttachedDatabaseConfiguration" + }, + "description": "The list of attached database configurations." + } + }, + "description": "The list attached database configurations operation response." + }, + "AttachedDatabaseConfiguration": { + "properties": { + "location": { + "type": "string", + "description": "Resource location." + }, + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of the attached database configuration.", + "$ref": "#/definitions/AttachedDatabaseConfigurationProperties" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Class representing an attached database configuration." + }, + "Database": { + "required": [ + "kind" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location." + }, + "kind": { + "description": "Kind of the database", + "enum": [ + "ReadWrite", + "ReadOnlyFollowing" + ], + "type": "string", + "x-ms-enum": { + "name": "Kind", + "modelAsString": true + } + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Class representing a Kusto database.", + "discriminator": "kind" + }, + "ReadWriteDatabase": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The database properties.", + "$ref": "#/definitions/ReadWriteDatabaseProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Database" + } + ], + "description": "Class representing a read write database.", + "x-ms-discriminator-value": "ReadWrite" + }, + "ReadOnlyFollowingDatabase": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The database properties.", + "$ref": "#/definitions/ReadOnlyFollowingDatabaseProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Database" + } + ], + "description": "Class representing a read only following database.", + "x-ms-discriminator-value": "ReadOnlyFollowing" + }, + "DatabasePrincipal": { + "type": "object", + "required": [ + "name", + "role", + "type" + ], + "properties": { + "role": { + "description": "Database principal role.", + "type": "string", + "enum": [ + "Admin", + "Ingestor", + "Monitor", + "User", + "UnrestrictedViewers", + "Viewer" + ], + "x-ms-enum": { + "name": "DatabasePrincipalRole", + "modelAsString": true + } + }, + "name": { + "description": "Database principal name.", + "type": "string" + }, + "type": { + "description": "Database principal type.", + "type": "string", + "enum": [ + "App", + "Group", + "User" + ], + "x-ms-enum": { + "name": "DatabasePrincipalType", + "modelAsString": true + } + }, + "fqn": { + "description": "Database principal fully qualified name.", + "type": "string" + }, + "email": { + "description": "Database principal email if exists.", + "type": "string" + }, + "appId": { + "description": "Application id - relevant only for application principal type.", + "type": "string" + }, + "tenantName": { + "type": "string", + "readOnly": true, + "description": "The tenant name of the principal" + } + }, + "description": "A class representing database principal entity." + }, + "DatabasePrincipalProperties": { + "type": "object", + "required": [ + "principalId", + "role", + "principalType" + ], + "properties": { + "principalId": { + "description": "The principal ID assigned to the database principal. It can be a user email, application ID, or security group name.", + "type": "string" + }, + "role": { + "description": "Database principal role.", + "type": "string", + "enum": [ + "Admin", + "Ingestor", + "Monitor", + "User", + "UnrestrictedViewers", + "Viewer" + ], + "x-ms-enum": { + "name": "DatabasePrincipalRole", + "modelAsString": true + } + }, + "tenantId": { + "type": "string", + "description": "The tenant id of the principal" + }, + "principalType": { + "description": "Principal type.", + "type": "string", + "enum": [ + "App", + "Group", + "User" + ], + "x-ms-enum": { + "name": "PrincipalType", + "modelAsString": true + } + }, + "tenantName": { + "type": "string", + "readOnly": true, + "description": "The tenant name of the principal" + }, + "principalName": { + "type": "string", + "readOnly": true, + "description": "The principal name" + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioned state of the resource.", + "enum": [ + "Running", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Moving" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + } + }, + "description": "A class representing database principal property." + }, + "ClusterPrincipalProperties": { + "type": "object", + "required": [ + "principalId", + "role", + "principalType" + ], + "properties": { + "principalId": { + "description": "The principal ID assigned to the cluster principal. It can be a user email, application ID, or security group name.", + "type": "string" + }, + "role": { + "description": "Cluster principal role.", + "type": "string", + "enum": [ + "AllDatabasesAdmin", + "AllDatabasesViewer" + ], + "x-ms-enum": { + "name": "ClusterPrincipalRole", + "modelAsString": true + } + }, + "tenantId": { + "type": "string", + "description": "The tenant id of the principal" + }, + "principalType": { + "description": "Principal type.", + "type": "string", + "enum": [ + "App", + "Group", + "User" + ], + "x-ms-enum": { + "name": "PrincipalType", + "modelAsString": true + } + }, + "tenantName": { + "type": "string", + "readOnly": true, + "description": "The tenant name of the principal" + }, + "principalName": { + "type": "string", + "readOnly": true, + "description": "The principal name" + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioned state of the resource.", + "enum": [ + "Running", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Moving" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + } + }, + "description": "A class representing cluster principal property." + }, + "DatabasePrincipalAssignment": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DatabasePrincipalProperties", + "description": "The database principal." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Class representing a database principal assignment." + }, + "ClusterPrincipalAssignment": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterPrincipalProperties", + "description": "The cluster principal." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Class representing a cluster principal assignment." + }, + "ClusterListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Cluster" + }, + "description": "The list of Kusto clusters." + } + }, + "description": "The list Kusto clusters operation response." + }, + "DatabaseListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Database" + }, + "description": "The list of Kusto databases." + } + }, + "description": "The list Kusto databases operation response." + }, + "DatabasePrincipalAssignmentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DatabasePrincipalAssignment" + }, + "description": "The list of Kusto database principal assignments." + } + }, + "description": "The list Kusto database principal assignments operation response." + }, + "ClusterPrincipalAssignmentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ClusterPrincipalAssignment" + }, + "description": "The list of Kusto cluster principal assignments." + } + }, + "description": "The list Kusto cluster principal assignments operation response." + }, + "DatabasePrincipalListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DatabasePrincipal" + }, + "description": "The list of Kusto database principals." + } + }, + "description": "The list Kusto database principals operation response." + }, + "FollowerDatabaseListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FollowerDatabaseDefinition" + }, + "description": "The list of follower database result." + } + }, + "description": "The list Kusto database principals operation response." + }, + "DataConnection": { + "required": [ + "kind" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location." + }, + "kind": { + "description": "Kind of the endpoint for the data connection", + "enum": [ + "EventHub", + "EventGrid", + "IotHub" + ], + "type": "string", + "x-ms-enum": { + "name": "Kind", + "modelAsString": true + } + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Class representing an data connection.", + "discriminator": "kind" + }, + "DataConnectionValidationResult": { + "type": "object", + "properties": { + "errorMessage": { + "type": "string", + "description": "A message which indicates a problem in data connection validation." + } + }, + "description": "The result returned from a data connection validation request." + }, + "DatabasePrincipalListRequest": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DatabasePrincipal" + }, + "description": "The list of Kusto database principals." + } + }, + "description": "The list Kusto database principals operation request." + }, + "FollowerDatabaseDefinition": { + "type": "object", + "required": [ + "clusterResourceId", + "attachedDatabaseConfigurationName" + ], + "properties": { + "clusterResourceId": { + "type": "string", + "description": "Resource id of the cluster that follows a database owned by this cluster." + }, + "attachedDatabaseConfigurationName": { + "type": "string", + "description": "Resource name of the attached database configuration in the follower cluster." + }, + "databaseName": { + "type": "string", + "readOnly": true, + "description": "The database name owned by this cluster that was followed. * in case following all databases." + } + }, + "description": "A class representing follower database request." + }, + "DiagnoseVirtualNetworkResult": { + "properties": { + "findings": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of network connectivity diagnostic finding" + } + } + }, + "DataConnectionValidation": { + "properties": { + "dataConnectionName": { + "type": "string", + "description": "The name of the data connection." + }, + "properties": { + "$ref": "#/definitions/DataConnection", + "description": "The data connection properties to validate." + } + }, + "description": "Class representing an data connection validation." + }, + "EventHubDataConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The Event Hub data connection properties to validate.", + "$ref": "#/definitions/EventHubConnectionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/DataConnection" + } + ], + "description": "Class representing an event hub data connection.", + "x-ms-discriminator-value": "EventHub" + }, + "IotHubDataConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The Iot Hub data connection properties.", + "$ref": "#/definitions/IotHubConnectionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/DataConnection" + } + ], + "description": "Class representing an iot hub data connection.", + "x-ms-discriminator-value": "IotHub" + }, + "EventGridDataConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of the Event Grid data connection.", + "$ref": "#/definitions/EventGridConnectionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/DataConnection" + } + ], + "description": "Class representing an Event Grid data connection.", + "x-ms-discriminator-value": "EventGrid" + }, + "DataConnectionValidationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DataConnectionValidationResult" + }, + "description": "The list of Kusto data connection validation errors." + } + }, + "description": "The list Kusto data connection validation result." + }, + "DataConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DataConnection" + }, + "description": "The list of Kusto data connections." + } + }, + "description": "The list Kusto data connections operation response." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody", + "description": "An error response from Kusto." + } + }, + "description": "An error response from Kusto." + }, + "ClusterCheckNameRequest": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Cluster name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Kusto/clusters" + ], + "x-ms-enum": { + "name": "Type", + "modelAsString": false + }, + "description": "The type of resource, Microsoft.Kusto/clusters." + } + }, + "required": [ + "name", + "type" + ], + "description": "The result returned from a cluster check name availability request." + }, + "CheckNameRequest": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Resource name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Kusto/clusters/databases", + "Microsoft.Kusto/clusters/attachedDatabaseConfigurations" + ], + "x-ms-enum": { + "name": "Type", + "modelAsString": false + }, + "description": "The type of resource, for instance Microsoft.Kusto/clusters/databases." + } + }, + "required": [ + "name", + "type" + ], + "description": "The result returned from a database check name availability request." + }, + "ClusterPrincipalAssignmentCheckNameRequest": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Principal Assignment resource name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Kusto/clusters/principalAssignments" + ], + "x-ms-enum": { + "name": "Type", + "modelAsString": false + }, + "description": "The type of resource, Microsoft.Kusto/clusters/principalAssignments." + } + }, + "required": [ + "name", + "type" + ], + "description": "A principal assignment check name availability request." + }, + "DataConnectionCheckNameRequest": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Data Connection name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Kusto/clusters/databases/dataConnections" + ], + "x-ms-enum": { + "name": "Type", + "modelAsString": false + }, + "description": "The type of resource, Microsoft.Kusto/clusters/databases/dataConnections." + } + }, + "required": [ + "name", + "type" + ], + "description": "A data connection check name availability request." + }, + "DatabasePrincipalAssignmentCheckNameRequest": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Principal Assignment resource name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Kusto/clusters/databases/principalAssignments" + ], + "x-ms-enum": { + "name": "Type", + "modelAsString": false + }, + "description": "The type of resource, Microsoft.Kusto/clusters/databases/principalAssignments." + } + }, + "required": [ + "name", + "type" + ], + "description": "A principal assignment check name availability request." + }, + "CheckNameResult": { + "type": "object", + "properties": { + "nameAvailable": { + "type": "boolean", + "description": "Specifies a Boolean value that indicates if the name is available." + }, + "name": { + "type": "string", + "description": "The name that was checked." + }, + "message": { + "type": "string", + "description": "Message indicating an unavailable name due to a conflict, or a description of the naming rules that are violated." + }, + "reason": { + "type": "string", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "x-ms-enum": { + "name": "reason", + "modelAsString": true + }, + "description": "Message providing the reason why the given name is invalid." + } + }, + "description": "The result returned from a check name availability request." + }, + "ListResourceSkusResult": { + "description": "List of available SKUs for a Kusto Cluster.", + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureResourceSku" + }, + "description": "The collection of available SKUs for an existing resource." + } + } + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for displaying in a user interface." + }, + "target": { + "type": "string", + "description": "The target of the particular error. For example, the name of the property in error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "description": "A list of additional details about the error." + } + }, + "description": "An error response from Kusto." + }, + "OperationListResult": { + "title": "Result of the request to list REST API operations. It contains a list of operations and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "title": "The list of operations supported by the resource provider." + }, + "nextLink": { + "type": "string", + "title": "The URL to get the next set of operation list results if there are any." + } + } + }, + "Operation": { + "title": "A REST API operation", + "type": "object", + "properties": { + "name": { + "title": "The operation name.", + "description": "This is of the format {provider}/{resource}/{operation}.", + "type": "string" + }, + "display": { + "title": "The object that describes the operation.", + "properties": { + "provider": { + "title": "Friendly name of the resource provider.", + "type": "string" + }, + "operation": { + "title": "The operation type.", + "description": "For example: read, write, delete.", + "type": "string" + }, + "resource": { + "title": "The resource type on which the operation is performed.", + "type": "string" + }, + "description": { + "title": "The friendly name of the operation.", + "type": "string" + } + } + }, + "origin": { + "title": "The intended executor of the operation.", + "type": "string" + }, + "properties": { + "title": "Properties of the operation.", + "type": "object", + "x-ms-client-flatten": true + } + } + }, + "Identity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of resource identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of resource." + }, + "type": { + "type": "string", + "description": "The identity type.", + "enum": [ + "None", + "SystemAssigned" + ], + "x-ms-enum": { + "name": "IdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "description": "The list of user identities associated with the Kusto cluster. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "required": [ + "type" + ], + "description": "Identity for the resource." + }, + "KeyVaultProperties": { + "description": "Properties of the key vault.", + "required": [ + "keyName", + "keyVersion", + "keyVaultUri" + ], + "properties": { + "keyName": { + "type": "string", + "description": "The name of the key vault key.", + "x-ms-client-name": "KeyName" + }, + "keyVersion": { + "type": "string", + "description": "The version of the key vault key.", + "x-ms-client-name": "KeyVersion" + }, + "keyVaultUri": { + "type": "string", + "description": "The Uri of the key vault.", + "x-ms-client-name": "KeyVaultUri" + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Gets subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API Version." + }, + "ClusterNameParameter": { + "name": "clusterName", + "in": "path", + "description": "The name of the Kusto cluster.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "AttachedDatabaseConfigurationNameParameter": { + "name": "attachedDatabaseConfigurationName", + "in": "path", + "description": "The name of the attached database configuration.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ResourceGroupParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group containing the Kusto cluster.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "DatabaseNameParameter": { + "name": "databaseName", + "in": "path", + "description": "The name of the database in the Kusto cluster.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "DataConnectionNameParameter": { + "name": "dataConnectionName", + "in": "path", + "description": "The name of the data connection.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "PrincipalAssignmentNameParameter": { + "name": "principalAssignmentName", + "in": "path", + "description": "The name of the Kusto principalAssignment.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + }, + "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" + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoAttachedDatabaseConfigurationsCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoAttachedDatabaseConfigurationsCreateOrUpdate.json new file mode 100644 index 000000000000..032ec96f12a0 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoAttachedDatabaseConfigurationsCreateOrUpdate.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "attachedDatabaseConfigurationName": "attachedDatabaseConfigurations1", + "api-version": "2020-02-15", + "parameters": { + "location": "westus", + "properties": { + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader", + "databaseName": "db1", + "defaultPrincipalsModificationKind": "Union" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/attachedDatabaseConfigurations/attachedDatabaseConfigurations1", + "name": "KustoClusterRPTest4/attachedDatabaseConfigurations1", + "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations", + "location": "westus", + "properties": { + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader", + "databaseName": "db1", + "defaultPrincipalsModificationKind": "Union", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/attachedDatabaseConfigurations/attachedDatabaseConfigurations1", + "name": "KustoClusterRPTest4/attachedDatabaseConfigurations1", + "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations", + "location": "westus", + "properties": { + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader", + "databaseName": "db1", + "defaultPrincipalsModificationKind": "Union", + "provisioningState": "Creating" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/attachedDatabaseConfigurations/attachedDatabaseConfigurations1", + "name": "KustoClusterRPTest4/attachedDatabaseConfigurations1", + "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations", + "location": "westus", + "properties": { + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader", + "databaseName": "db1", + "defaultPrincipalsModificationKind": "Union", + "provisioningState": "Creating" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoAttachedDatabaseConfigurationsDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoAttachedDatabaseConfigurationsDelete.json new file mode 100644 index 000000000000..b75e864846b3 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoAttachedDatabaseConfigurationsDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "attachedDatabaseConfigurationName": "attachedDatabaseConfigurations1", + "api-version": "2020-02-15" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoAttachedDatabaseConfigurationsGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoAttachedDatabaseConfigurationsGet.json new file mode 100644 index 000000000000..5d0b38669a54 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoAttachedDatabaseConfigurationsGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "attachedDatabaseConfigurationName": "attachedDatabaseConfigurations1", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/AttachedDatabaseConfigurations/attachedDatabaseConfigurations1", + "name": "KustoClusterRPTest4/attachedDatabaseConfigurations1", + "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations", + "location": "westus", + "properties": { + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "databaseName": "*", + "defaultPrincipalsModificationKind": "Union", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoAttachedDatabaseConfigurationsListByCluster.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoAttachedDatabaseConfigurationsListByCluster.json new file mode 100644 index 000000000000..1640a6fb48eb --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoAttachedDatabaseConfigurationsListByCluster.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/AttachedDatabaseConfigurations/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations", + "location": "westus", + "properties": { + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader", + "databaseName": "db1", + "defaultPrincipalsModificationKind": "Union", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/AttachedDatabaseConfigurations/KustoDatabase9", + "name": "KustoClusterRPTest4/KustoDatabase9", + "type": "Microsoft.Kusto/Clusters/AttachedDatabaseConfigurations", + "location": "westus", + "properties": { + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterLeader", + "databaseName": "db1", + "defaultPrincipalsModificationKind": "Union", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterAddLanguageExtensions.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterAddLanguageExtensions.json new file mode 100644 index 000000000000..f7b438b3704e --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterAddLanguageExtensions.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2020-02-15", + "languageExtensionsToAdd": { + "value": [ + { + "languageExtensionName": "PYTHON" + }, + { + "languageExtensionName": "R" + } + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterDetachFollowerDatabases.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterDetachFollowerDatabases.json new file mode 100644 index 000000000000..8ee2863113ef --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterDetachFollowerDatabases.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2020-02-15", + "followerDatabaseToRemove": { + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/clusters/leader4", + "attachedDatabaseConfigurationName": "myAttachedDatabaseConfiguration" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterListFollowerDatabases.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterListFollowerDatabases.json new file mode 100644 index 000000000000..428916d153c2 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterListFollowerDatabases.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "attachedDatabaseConfigurationName": "attachedDbConfiguration", + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/clusters/follower1", + "databaseName": "*" + }, + { + "attachedDatabaseConfigurationName": "attachedDbConfiguration2", + "clusterResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/clusters/follower4", + "databaseName": "db1" + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterListLanguageExtensions.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterListLanguageExtensions.json new file mode 100644 index 000000000000..1c7920445825 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterListLanguageExtensions.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "languageExtensionName": "PYTHON" + }, + { + "languageExtensionName": "R" + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsCheckNameAvailability.json new file mode 100644 index 000000000000..09b10f72e619 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsCheckNameAvailability.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "principalAssignmentName": { + "name": "kustoprincipal1", + "type": "Microsoft.Kusto/clusters/principalAssignments" + }, + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "name": "kustoprincipal1", + "nameAvailable": false, + "message": "Name 'kustoprincipal1' is already taken. Please specify a different name" + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsCreateOrUpdate.json new file mode 100644 index 000000000000..f4124a9b8721 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsCreateOrUpdate.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "principalAssignmentName": "kustoprincipal1", + "api-version": "2020-02-15", + "parameters": { + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/kustoprincipal1", + "type": "Microsoft.Kusto/Clusters/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/kustoprincipal1", + "type": "Microsoft.Kusto/Clusters/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsDelete.json new file mode 100644 index 000000000000..b2e069bd900a --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "principalAssignmentName": "kustoprincipal1", + "api-version": "2020-02-15" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsGet.json new file mode 100644 index 000000000000..e77e66be82db --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "principalAssignmentName": "kustoprincipal1", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/kustoprincipal1", + "type": "Microsoft.Kusto/Clusters/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsList.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsList.json new file mode 100644 index 000000000000..46ceefc8b90e --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterPrincipalAssignmentsList.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "Kustodatabase8", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1", + "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal2", + "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterRemoveLanguageExtensions.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterRemoveLanguageExtensions.json new file mode 100644 index 000000000000..da6f93dd0dc2 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClusterRemoveLanguageExtensions.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2020-02-15", + "languageExtensionsToRemove": { + "value": [ + { + "languageExtensionName": "PYTHON" + }, + { + "languageExtensionName": "R" + } + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersCheckNameAvailability.json new file mode 100644 index 000000000000..c3a14ad41382 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersCheckNameAvailability.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "api-version": "2020-02-15", + "location": "wus", + "clusterName": { + "name": "kuskusprod", + "type": "Microsoft.Kusto/clusters" + } + }, + "responses": { + "200": { + "body": { + "name": "kuskusprod", + "nameAvailable": false, + "message": "Name 'kuskusprod' is already taken. Please specify a different name" + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersCreateOrUpdate.json new file mode 100644 index 000000000000..0ddcdb588603 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersCreateOrUpdate.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2020-02-15", + "parameters": { + "location": "westus", + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "enableStreamingIngest": true, + "enablePurge": true, + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "enableStreamingIngest": true, + "enablePurge": true, + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + } + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "identity": { + "type": "SystemAssigned", + "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4", + "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c", + "userAssignedIdentities": {} + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "enableStreamingIngest": true, + "enablePurge": true, + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + } + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "identity": { + "type": "SystemAssigned", + "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4", + "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c", + "userAssignedIdentities": {} + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersDelete.json new file mode 100644 index 000000000000..498d485fdf7b --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2020-02-15" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersDiagnoseVirtualNetwork.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersDiagnoseVirtualNetwork.json new file mode 100644 index 000000000000..c46672779ffd --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersDiagnoseVirtualNetwork.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "findings": [ + "Outbound dependency 'Storage:443' might not be satisfied (Outbound)" + ] + } + }, + "202": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersGet.json new file mode 100644 index 000000000000..3dd856deb200 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersGet.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "enableStreamingIngest": true, + "enablePurge": false, + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + } + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "identity": { + "type": "SystemAssigned", + "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4", + "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c", + "userAssignedIdentities": {} + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersList.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersList.json new file mode 100644 index 000000000000..77e787c18d18 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersList.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + } + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + } + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest3", + "name": "KustoClusterRPTest3", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded" + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersListByResourceGroup.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersListByResourceGroup.json new file mode 100644 index 000000000000..d568019b13ae --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersListByResourceGroup.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + } + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + } + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest3", + "name": "KustoClusterRPTest3", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded" + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersListResourceSkus.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersListResourceSkus.json new file mode 100644 index 000000000000..5b93af3b7158 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersListResourceSkus.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "clusters", + "sku": { + "name": "Standard_D13_v2", + "tier": "Standard" + }, + "capacity": { + "minimum": 2, + "maximum": 100, + "default": 2, + "scaleType": "automatic" + } + }, + { + "resourceType": "clusters", + "sku": { + "name": "Standard_D14_v2", + "tier": "Standard" + }, + "capacity": { + "minimum": 2, + "maximum": 100, + "default": 2, + "scaleType": "automatic" + } + }, + { + "resourceType": "clusters", + "sku": { + "name": "Standard_L8s", + "tier": "Standard" + }, + "capacity": { + "minimum": 2, + "maximum": 100, + "default": 2, + "scaleType": "automatic" + } + }, + { + "resourceType": "clusters", + "sku": { + "name": "Standard_L16s", + "tier": "Standard" + }, + "capacity": { + "minimum": 2, + "maximum": 100, + "default": 2, + "scaleType": "automatic" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersListSkus.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersListSkus.json new file mode 100644 index 000000000000..93104d1b236b --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersListSkus.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Standard_D13_v2", + "tier": "Standard", + "locations": [ + "West US", + "West Europe" + ], + "locationInfo": [ + { + "location": "West US", + "zones": [ + "1", + "2", + "3" + ] + }, + { + "location": "West Europe", + "zones": [] + } + ] + }, + { + "name": "Standard_D14_v2", + "tier": "Standard", + "locations": [ + "West US", + "West Europe" + ], + "locationInfo": [ + { + "location": "West US", + "zones": [ + "1", + "2", + "3" + ] + }, + { + "location": "West Europe", + "zones": [] + } + ] + }, + { + "name": "L8", + "tier": "Standard", + "locations": [ + "West US", + "West Europe" + ], + "locationInfo": [ + { + "location": "West US", + "zones": [ + "1", + "2", + "3" + ] + }, + { + "location": "West Europe", + "zones": [] + } + ] + }, + { + "name": "L16", + "tier": "Standard", + "locations": [ + "West US", + "West Europe" + ], + "locationInfo": [ + { + "location": "West US", + "zones": [ + "1", + "2", + "3" + ] + }, + { + "location": "West Europe", + "zones": [] + } + ] + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersStart.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersStart.json new file mode 100644 index 000000000000..89c9da5f4b5e --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersStart.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2020-02-15" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersStop.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersStop.json new file mode 100644 index 000000000000..89c9da5f4b5e --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersStop.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2020-02-15" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersUpdate.json new file mode 100644 index 000000000000..2c870ec034fd --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoClustersUpdate.json @@ -0,0 +1,107 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2020-02-15", + "parameters": { + "location": "westus" + }, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "enableStreamingIngest": true, + "enablePurge": true, + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "enableStreamingIngest": true, + "enablePurge": true, + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + } + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "identity": { + "type": "SystemAssigned", + "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4", + "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c", + "userAssignedIdentities": {} + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "enableStreamingIngest": true, + "enablePurge": true, + "keyVaultProperties": { + "keyVaultUri": "https://dummy.keyvault.com", + "keyName": "keyName", + "keyVersion": "keyVersion" + } + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "identity": { + "type": "SystemAssigned", + "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4", + "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c", + "userAssignedIdentities": {} + } + } + }, + "202": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4", + "name": "KustoClusterRPTest4", + "type": "Microsoft.Kusto/Clusters", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "enableStreamingIngest": true, + "enablePurge": true + }, + "sku": { + "name": "Standard_L8s", + "capacity": 2, + "tier": "Standard" + }, + "identity": { + "type": "SystemAssigned", + "tenantId": "b932977f-6277-4ab7-a2cd-5bd21f07aaf4", + "principalId": "faabad1f-4876-463c-af9d-6ba2d2d2394c", + "userAssignedIdentities": {} + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionValidation.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionValidation.json new file mode 100644 index 000000000000..1465771cab96 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionValidation.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "KustoDatabase8", + "api-version": "2020-02-15", + "parameters": { + "dataConnectionName": "DataConnections8", + "properties": { + "kind": "EventHub", + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + }, + "responses": { + "200": { + "body": [ + { + "errorMessage": "event hub namespace does not exist" + }, + { + "errorMessage": "database does not exist" + } + ] + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsCheckNameAvailability.json new file mode 100644 index 000000000000..020b25b0fd50 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsCheckNameAvailability.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2020-02-15", + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoProd", + "databaseName": "KustoDatabase8", + "dataConnectionName": { + "name": "DataConnections8", + "type": "Microsoft.Kusto/clusters/databases/dataConnections" + } + }, + "responses": { + "200": { + "body": { + "name": "DataConnections8", + "nameAvailable": false, + "message": "Name 'DataConnections8' is already taken. Please specify a different name.", + "reason": "AlreadyExists" + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsCreateOrUpdate.json new file mode 100644 index 000000000000..0e9aec30c518 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsCreateOrUpdate.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "KustoDatabase8", + "api-version": "2020-02-15", + "dataConnectionName": "DataConnections8", + "parameters": { + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsDelete.json new file mode 100644 index 000000000000..d12d685ccafa --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "KustoDatabase8", + "api-version": "2020-02-15", + "dataConnectionName": "kustoeventhubconnection1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsGet.json new file mode 100644 index 000000000000..b32b1cefeea8 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "KustoDatabase8", + "api-version": "2020-02-15", + "dataConnectionName": "DataConnections8" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsListByDatabase.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsListByDatabase.json new file mode 100644 index 000000000000..a8e786180da4 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsListByDatabase.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "KustoDatabase8", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/KustoDataConnection8", + "name": "KustoClusterRPTest4/KustoDatabase8/KustoDataConnection8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase9/DataConnections/KustoDataConnection9", + "name": "KustoClusterRPTest4/KustoDatabase9/KustoDataConnection9", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns2/eventhubs/eventhubTest2", + "consumerGroup": "testConsumerGroup2" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsUpdate.json new file mode 100644 index 000000000000..0e9aec30c518 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDataConnectionsUpdate.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "KustoDatabase8", + "api-version": "2020-02-15", + "dataConnectionName": "DataConnections8", + "parameters": { + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8/DataConnections/DataConnections8", + "name": "KustoClusterRPTest4/KustoDatabase8/DataConnections8", + "type": "Microsoft.Kusto/Clusters/Databases/DataConnections", + "location": "westus", + "kind": "EventHub", + "properties": { + "eventHubResourceId": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.EventHub/namespaces/eventhubTestns1/eventhubs/eventhubTest1", + "consumerGroup": "testConsumerGroup1" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabaseAddPrincipals.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabaseAddPrincipals.json new file mode 100644 index 000000000000..cdf63446194c --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabaseAddPrincipals.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "databaseName1", + "api-version": "2020-02-15", + "databasePrincipalsToAdd": { + "value": [ + { + "name": "Some User", + "role": "Admin", + "type": "User", + "fqn": "aaduser=some_guid", + "email": "user@microsoft.com", + "appId": "" + }, + { + "name": "Kusto", + "role": "Viewer", + "type": "Group", + "fqn": "aadgroup=some_guid", + "email": "kusto@microsoft.com", + "appId": "" + }, + { + "name": "SomeApp", + "role": "Admin", + "type": "App", + "fqn": "aadapp=some_guid_app_id", + "email": "", + "appId": "some_guid_app_id" + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Some User", + "role": "Admin", + "type": "User", + "fqn": "aaduser=some_guid", + "email": "user@microsoft.com", + "appId": "" + }, + { + "name": "Kusto", + "role": "Viewer", + "type": "Group", + "fqn": "aadgroup=some_guid", + "email": "kusto@microsoft.com", + "appId": "" + }, + { + "name": "SomeApp", + "role": "Admin", + "type": "App", + "fqn": "aadapp=some_guid_app_id", + "email": "", + "appId": "some_guid_app_id" + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabaseListPrincipals.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabaseListPrincipals.json new file mode 100644 index 000000000000..96330ed3a794 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabaseListPrincipals.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "databaseName1", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Some User", + "role": "Admin", + "type": "User", + "fqn": "aaduser=some_guid", + "email": "user@microsoft.com", + "appId": "" + }, + { + "name": "Kusto", + "role": "Viewer", + "type": "Group", + "fqn": "aadgroup=some_guid", + "email": "kusto@microsoft.com", + "appId": "" + }, + { + "name": "SomeApp", + "role": "Admin", + "type": "App", + "fqn": "aadapp=some_guid_app_id", + "email": "", + "appId": "some_guid_app_id" + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsCheckNameAvailability.json new file mode 100644 index 000000000000..6c33147e40da --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsCheckNameAvailability.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "Kustodatabase8", + "principalAssignmentName": { + "name": "kustoprincipal1", + "type": "Microsoft.Kusto/clusters/databases/principalAssignments" + }, + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "name": "kustoprincipal1", + "nameAvailable": false, + "message": "Name 'kustoprincipal1' is already taken. Please specify a different name" + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsCreateOrUpdate.json new file mode 100644 index 000000000000..f31f3e85ab49 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsCreateOrUpdate.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "Kustodatabase8", + "principalAssignmentName": "kustoprincipal1", + "api-version": "2020-02-15", + "parameters": { + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1", + "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1", + "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsDelete.json new file mode 100644 index 000000000000..a625d8427a78 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "Kustodatabase8", + "principalAssignmentName": "kustoprincipal1", + "api-version": "2020-02-15" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsGet.json new file mode 100644 index 000000000000..725149ddf37f --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "Kustodatabase8", + "principalAssignmentName": "kustoprincipal1", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1", + "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsList.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsList.json new file mode 100644 index 000000000000..46ceefc8b90e --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasePrincipalAssignmentsList.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "kustoclusterrptest4", + "databaseName": "Kustodatabase8", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal1", + "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/kustoclusterrptest4/Databases/Kustodatabase8/PrincipalAssignments/kustoprincipal1", + "name": "kustoclusterrptest4/Kustodatabase8/kustoprincipal2", + "type": "Microsoft.Kusto/Clusters/Databases/PrincipalAssignments", + "properties": { + "role": "Admin", + "principalId": "87654321-1234-1234-1234-123456789123", + "principalType": "App", + "tenantId": "12345678-1234-1234-1234-123456789123", + "tenantName": "tenantName", + "principalName": "TestApp", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabaseRemovePrincipals.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabaseRemovePrincipals.json new file mode 100644 index 000000000000..32bbf1c9fa1c --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabaseRemovePrincipals.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "databaseName1", + "api-version": "2020-02-15", + "databasePrincipalsToRemove": { + "value": [ + { + "name": "Some User", + "role": "Admin", + "type": "User", + "fqn": "aaduser=some_guid", + "email": "user@microsoft.com", + "appId": "" + }, + { + "name": "Kusto", + "role": "Viewer", + "type": "Group", + "fqn": "aadgroup=some_guid", + "email": "kusto@microsoft.com", + "appId": "" + }, + { + "name": "SomeApp", + "role": "Admin", + "type": "App", + "fqn": "aadapp=some_guid_app_id", + "email": "", + "appId": "some_guid_app_id" + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Some User", + "role": "Admin", + "type": "User", + "fqn": "aaduser=some_guid", + "email": "user@microsoft.com", + "appId": "" + }, + { + "name": "Kusto", + "role": "Viewer", + "type": "Group", + "fqn": "aadgroup=some_guid", + "email": "kusto@microsoft.com", + "appId": "" + }, + { + "name": "SomeApp", + "role": "Admin", + "type": "App", + "fqn": "aadapp=some_guid_app_id", + "email": "", + "appId": "some_guid_app_id" + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesCheckNameAvailability.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesCheckNameAvailability.json new file mode 100644 index 000000000000..b0934aa707e7 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesCheckNameAvailability.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "api-version": "2020-02-15", + "resourceGroupName": "kustorptest", + "clusterName": "kustoProd", + "resourceName": { + "name": "kustoresourcename1", + "type": "Microsoft.Kusto/clusters/databases" + } + }, + "responses": { + "200": { + "body": { + "name": "kustoresourcename1", + "nameAvailable": false, + "message": "Name 'kuskus' is already taken. Please specify a different name" + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesCreateOrUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesCreateOrUpdate.json new file mode 100644 index 000000000000..dabdaeccd13e --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesCreateOrUpdate.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "KustoDatabase8", + "api-version": "2020-02-15", + "parameters": { + "location": "westus", + "properties": { + "softDeletePeriod": "P1D" + }, + "kind": "ReadWrite" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/Databases", + "kind": "ReadWrite", + "location": "westus", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/Databases", + "location": "westus", + "kind": "ReadWrite", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/Databases", + "location": "westus", + "kind": "ReadWrite", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesDelete.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesDelete.json new file mode 100644 index 000000000000..34a4d8cddd72 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "KustoDatabase8", + "api-version": "2020-02-15" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesGet.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesGet.json new file mode 100644 index 000000000000..9ceceb81e750 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "KustoDatabase8", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/Databases", + "kind": "ReadWrite", + "location": "westus", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesListByCluster.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesListByCluster.json new file mode 100644 index 000000000000..3876612de72d --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesListByCluster.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/Databases", + "location": "westus", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase9", + "name": "KustoClusterRPTest4/KustoDatabase9", + "type": "Microsoft.Kusto/Clusters/Databases", + "location": "westus", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesUpdate.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesUpdate.json new file mode 100644 index 000000000000..50082dcd98ab --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoDatabasesUpdate.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789098", + "resourceGroupName": "kustorptest", + "clusterName": "KustoClusterRPTest4", + "databaseName": "KustoDatabase8", + "api-version": "2020-02-15", + "parameters": { + "properties": { + "softDeletePeriod": "P1D" + }, + "kind": "ReadWrite" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/Databases", + "kind": "ReadWrite", + "location": "westus", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/Databases", + "kind": "ReadWrite", + "location": "westus", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-123456789098/resourceGroups/kustorptest/providers/Microsoft.Kusto/Clusters/KustoClusterRPTest4/Databases/KustoDatabase8", + "name": "KustoClusterRPTest4/KustoDatabase8", + "type": "Microsoft.Kusto/Clusters/Databases", + "location": "westus", + "kind": "ReadWrite", + "properties": { + "softDeletePeriod": "P1D", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoOperationsList.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoOperationsList.json new file mode 100644 index 000000000000..ad5bf9d072d8 --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/examples/KustoOperationsList.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2020-02-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "operationName", + "display": { + "provider": "providerName", + "resource": "resourceName", + "operation": "operationName", + "description": "operation description" + } + } + ] + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/kusto.json b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/kusto.json new file mode 100644 index 000000000000..9f6452aaae4a --- /dev/null +++ b/specification/azure-kusto/resource-manager/Microsoft.Kusto/stable/2020-02-15/kusto.json @@ -0,0 +1,4238 @@ +{ + "swagger": "2.0", + "info": { + "title": "KustoManagementClient", + "version": "2020-02-15" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}": { + "get": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_Get", + "x-ms-examples": { + "KustoClustersGet": { + "$ref": "./examples/KustoClustersGet.json" + } + }, + "description": "Gets a Kusto cluster.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Kusto cluster.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_CreateOrUpdate", + "x-ms-examples": { + "KustoClustersCreateOrUpdate": { + "$ref": "./examples/KustoClustersCreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Create or update a Kusto cluster.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Cluster" + }, + "description": "The Kusto cluster parameters supplied to the CreateOrUpdate operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the Cluster.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "201": { + "description": "Successfully created the cluster.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_Update", + "x-ms-examples": { + "KustoClustersUpdate": { + "$ref": "./examples/KustoClustersUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Update a Kusto cluster.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterUpdate" + }, + "description": "The Kusto cluster parameters supplied to the Update operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the Cluster.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "201": { + "description": "Successfully updated the cluster.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "202": { + "description": "Successfully updated the cluster.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_Delete", + "x-ms-examples": { + "KustoClustersDelete": { + "$ref": "./examples/KustoClustersDelete.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Deletes a Kusto cluster.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- cluster deleted successfully." + }, + "202": { + "description": "Accepted the delete cluster request." + }, + "204": { + "description": "NoContent -- cluster does not exist in the subscription." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/stop": { + "post": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_Stop", + "x-ms-examples": { + "KustoClustersStop": { + "$ref": "./examples/KustoClustersStop.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Stops a Kusto cluster.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/start": { + "post": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_Start", + "x-ms-examples": { + "KustoClustersStart": { + "$ref": "./examples/KustoClustersStart.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Starts a Kusto cluster.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Accepted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/checkPrincipalAssignmentNameAvailability": { + "post": { + "tags": [ + "ClusterPrincipalAssignments" + ], + "operationId": "ClusterPrincipalAssignments_CheckNameAvailability", + "x-ms-examples": { + "KustoClusterPrincipalAssignmentsCheckNameAvailability": { + "$ref": "./examples/KustoClusterPrincipalAssignmentsCheckNameAvailability.json" + } + }, + "description": "Checks that the principal assignment name is valid and is not already in use.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "principalAssignmentName", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterPrincipalAssignmentCheckNameRequest" + }, + "description": "The name of the principal assignment." + } + ], + "responses": { + "200": { + "description": "OK -- Operation to check the kusto resource name availability was successful.", + "schema": { + "$ref": "#/definitions/CheckNameResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/principalAssignments/{principalAssignmentName}": { + "get": { + "tags": [ + "ClusterPrincipalAssignments" + ], + "operationId": "ClusterPrincipalAssignments_Get", + "x-ms-examples": { + "KustoClusterPrincipalAssignmentsGet": { + "$ref": "./examples/KustoClusterPrincipalAssignmentsGet.json" + } + }, + "description": "Gets a Kusto cluster principalAssignment.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/PrincipalAssignmentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Kusto cluster principal assignment object.", + "schema": { + "$ref": "#/definitions/ClusterPrincipalAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "ClusterPrincipalAssignments" + ], + "operationId": "ClusterPrincipalAssignments_CreateOrUpdate", + "x-ms-examples": { + "KustoClusterPrincipalAssignmentsCreateOrUpdate": { + "$ref": "./examples/KustoClusterPrincipalAssignmentsCreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Create a Kusto cluster principalAssignment.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/PrincipalAssignmentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterPrincipalAssignment" + }, + "description": "The Kusto cluster principalAssignment's parameters supplied for the operation." + } + ], + "responses": { + "200": { + "description": "Successfully updated the PrincipalAssignment.", + "schema": { + "$ref": "#/definitions/ClusterPrincipalAssignment" + } + }, + "201": { + "description": "Successfully created the principalAssignment.", + "schema": { + "$ref": "#/definitions/ClusterPrincipalAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "ClusterPrincipalAssignments" + ], + "operationId": "ClusterPrincipalAssignments_Delete", + "x-ms-examples": { + "KustoClusterPrincipalAssignmentsDelete": { + "$ref": "./examples/KustoClusterPrincipalAssignmentsDelete.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Deletes a Kusto cluster principalAssignment.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/PrincipalAssignmentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- principalAssignments deleted successfully." + }, + "202": { + "description": "Accepted the delete principalAssignments request." + }, + "204": { + "description": "NoContent -- principalAssignments does not exist in the subscription." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/principalAssignments": { + "get": { + "tags": [ + "ClusterPrincipalAssignments" + ], + "operationId": "ClusterPrincipalAssignments_List", + "x-ms-examples": { + "KustoPrincipalAssignmentsList": { + "$ref": "./examples/KustoClusterPrincipalAssignmentsList.json" + } + }, + "description": "Lists all Kusto cluster principalAssignments.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/ClusterPrincipalAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/listFollowerDatabases": { + "post": { + "tags": [ + "Clusters" + ], + "description": "Returns a list of databases that are owned by this cluster and were followed by another cluster.", + "operationId": "Clusters_ListFollowerDatabases", + "x-ms-examples": { + "KustoClusterListFollowerDatabases": { + "$ref": "./examples/KustoClusterListFollowerDatabases.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of followed databases.", + "schema": { + "$ref": "#/definitions/FollowerDatabaseListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/detachFollowerDatabases": { + "post": { + "tags": [ + "Clusters" + ], + "description": "Detaches all followers of a database owned by this cluster.", + "operationId": "Clusters_DetachFollowerDatabases", + "x-ms-examples": { + "KustoClusterDetachFollowerDatabases": { + "$ref": "./examples/KustoClusterDetachFollowerDatabases.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "followerDatabaseToRemove", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FollowerDatabaseDefinition" + }, + "description": "The follower databases properties to remove." + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/diagnoseVirtualNetwork": { + "post": { + "tags": [ + "Clusters" + ], + "description": "Diagnoses network connectivity status for external resources on which the service is dependent on.", + "operationId": "Clusters_DiagnoseVirtualNetwork", + "x-ms-examples": { + "KustoClusterDiagnoseVirtualNetwork": { + "$ref": "./examples/KustoClustersDiagnoseVirtualNetwork.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/DiagnoseVirtualNetworkResult" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters": { + "get": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_ListByResourceGroup", + "x-ms-examples": { + "KustoClustersListByResourceGroup": { + "$ref": "./examples/KustoClustersListByResourceGroup.json" + } + }, + "description": "Lists all Kusto clusters within a resource group.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/ClusterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Kusto/clusters": { + "get": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_List", + "x-ms-examples": { + "KustoClustersList": { + "$ref": "./examples/KustoClustersList.json" + } + }, + "description": "Lists all Kusto clusters within a subscription.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/ClusterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Kusto/skus": { + "get": { + "description": "Lists eligible SKUs for Kusto resource provider.", + "x-ms-examples": { + "KustoClustersListSkus": { + "$ref": "./examples/KustoClustersListSkus.json" + } + }, + "operationId": "Clusters_ListSkus", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/SkuDescriptionList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Kusto/locations/{location}/checkNameAvailability": { + "post": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_CheckNameAvailability", + "x-ms-examples": { + "KustoClustersCheckNameAvailability": { + "$ref": "./examples/KustoClustersCheckNameAvailability.json" + } + }, + "description": "Checks that the cluster name is valid and is not already in use.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "location", + "in": "path", + "description": "Azure location.", + "required": true, + "type": "string" + }, + { + "name": "clusterName", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterCheckNameRequest" + }, + "description": "The name of the cluster." + } + ], + "responses": { + "200": { + "description": "OK -- Operation to check the kusto resource name availability was successful.", + "schema": { + "$ref": "#/definitions/CheckNameResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/checkNameAvailability": { + "post": { + "tags": [ + "Databases" + ], + "operationId": "Databases_CheckNameAvailability", + "x-ms-examples": { + "KustoDatabaseCheckNameAvailability": { + "$ref": "./examples/KustoDatabasesCheckNameAvailability.json" + } + }, + "description": "Checks that the database name is valid and is not already in use.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceName", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameRequest" + }, + "description": "The name of the resource." + } + ], + "responses": { + "200": { + "description": "OK -- Operation to check the kusto resource name availability was successful.", + "schema": { + "$ref": "#/definitions/CheckNameResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/skus": { + "get": { + "tags": [ + "Clusters" + ], + "operationId": "Clusters_ListSkusByResource", + "x-ms-examples": { + "KustoClustersListResourceSkus": { + "$ref": "./examples/KustoClustersListResourceSkus.json" + } + }, + "description": "Returns the SKUs available for the provided resource.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/ListResourceSkusResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases": { + "get": { + "tags": [ + "Databases" + ], + "description": "Returns the list of databases of the given Kusto cluster.", + "operationId": "Databases_ListByCluster", + "x-ms-examples": { + "KustoDatabasesListByCluster": { + "$ref": "./examples/KustoDatabasesListByCluster.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of databases.", + "schema": { + "$ref": "#/definitions/DatabaseListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}": { + "get": { + "tags": [ + "Databases" + ], + "description": "Returns a database.", + "operationId": "Databases_Get", + "x-ms-examples": { + "KustoDatabasesGet": { + "$ref": "./examples/KustoDatabasesGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "Databases" + ], + "description": "Creates or updates a database.", + "operationId": "Databases_CreateOrUpdate", + "x-ms-examples": { + "KustoDatabasesCreateOrUpdate": { + "$ref": "./examples/KustoDatabasesCreateOrUpdate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Database" + }, + "description": "The database parameters supplied to the CreateOrUpdate operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "201": { + "description": "Successfully created the database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "202": { + "description": "Accepted the create database request.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Databases" + ], + "description": "Updates a database.", + "operationId": "Databases_Update", + "x-ms-examples": { + "KustoDatabasesUpdate": { + "$ref": "./examples/KustoDatabasesUpdate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Database" + }, + "description": "The database parameters supplied to the Update operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "201": { + "description": "Successfully updated the database.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "202": { + "description": "Accepted the update database request.", + "schema": { + "$ref": "#/definitions/Database" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Databases" + ], + "description": "Deletes the database with the given name.", + "operationId": "Databases_Delete", + "x-ms-examples": { + "KustoDatabasesDelete": { + "$ref": "./examples/KustoDatabasesDelete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the database." + }, + "202": { + "description": "Accepted." + }, + "204": { + "description": "The specified database does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/checkPrincipalAssignmentNameAvailability": { + "post": { + "tags": [ + "DatabasePrincipalAssignments" + ], + "operationId": "DatabasePrincipalAssignments_CheckNameAvailability", + "x-ms-examples": { + "KustoDatabaseCheckNameAvailability": { + "$ref": "./examples/KustoDatabasePrincipalAssignmentsCheckNameAvailability.json" + } + }, + "description": "Checks that the database principal assignment is valid and is not already in use.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "principalAssignmentName", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabasePrincipalAssignmentCheckNameRequest" + }, + "description": "The name of the resource." + } + ], + "responses": { + "200": { + "description": "OK -- Operation to check the kusto resource name availability was successful.", + "schema": { + "$ref": "#/definitions/CheckNameResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/principalAssignments/{principalAssignmentName}": { + "get": { + "tags": [ + "DatabasePrincipalAssignments" + ], + "operationId": "DatabasePrincipalAssignments_Get", + "x-ms-examples": { + "KustoDatabasePrincipalAssignmentsGet": { + "$ref": "./examples/KustoDatabasePrincipalAssignmentsGet.json" + } + }, + "description": "Gets a Kusto cluster database principalAssignment.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/PrincipalAssignmentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Kusto cluster database principal assignment object.", + "schema": { + "$ref": "#/definitions/DatabasePrincipalAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "DatabasePrincipalAssignments" + ], + "operationId": "DatabasePrincipalAssignments_CreateOrUpdate", + "x-ms-examples": { + "KustoDatabasePrincipalAssignmentsCreateOrUpdate": { + "$ref": "./examples/KustoDatabasePrincipalAssignmentsCreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Creates a Kusto cluster database principalAssignment.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/PrincipalAssignmentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabasePrincipalAssignment" + }, + "description": "The Kusto principalAssignments parameters supplied for the operation." + } + ], + "responses": { + "200": { + "description": "Successfully updated the PrincipalAssignments.", + "schema": { + "$ref": "#/definitions/DatabasePrincipalAssignment" + } + }, + "201": { + "description": "Successfully created the principalAssignments.", + "schema": { + "$ref": "#/definitions/DatabasePrincipalAssignment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "DatabasePrincipalAssignments" + ], + "operationId": "DatabasePrincipalAssignments_Delete", + "x-ms-examples": { + "KustoDatabasePrincipalAssignmentsDelete": { + "$ref": "./examples/KustoDatabasePrincipalAssignmentsDelete.json" + } + }, + "x-ms-long-running-operation": true, + "description": "Deletes a Kusto principalAssignment.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/PrincipalAssignmentNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- principalAssignments deleted successfully." + }, + "202": { + "description": "Accepted the delete principalAssignments request." + }, + "204": { + "description": "NoContent -- principalAssignments does not exist in the subscription." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/principalAssignments": { + "get": { + "tags": [ + "DatabasePrincipalAssignments" + ], + "operationId": "DatabasePrincipalAssignments_List", + "x-ms-examples": { + "KustoPrincipalAssignmentsList": { + "$ref": "./examples/KustoDatabasePrincipalAssignmentsList.json" + } + }, + "description": "Lists all Kusto cluster database principalAssignments.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/DatabasePrincipalAssignmentListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/listPrincipals": { + "post": { + "tags": [ + "Databases" + ], + "description": "Returns a list of database principals of the given Kusto cluster and database.", + "operationId": "Databases_ListPrincipals", + "x-ms-examples": { + "KustoDatabaseListPrincipals": { + "$ref": "./examples/KustoDatabaseListPrincipals.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of database principals.", + "schema": { + "$ref": "#/definitions/DatabasePrincipalListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/addPrincipals": { + "post": { + "tags": [ + "Databases" + ], + "operationId": "Databases_AddPrincipals", + "x-ms-examples": { + "KustoDatabaseAddPrincipals": { + "$ref": "./examples/KustoDatabaseAddPrincipals.json" + } + }, + "description": "Add Database principals permissions.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "databasePrincipalsToAdd", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabasePrincipalListRequest" + }, + "description": "List of database principals to add." + } + ], + "responses": { + "200": { + "description": "OK -- Successfully added the list of database principals. Returns the updated list of principals.", + "schema": { + "$ref": "#/definitions/DatabasePrincipalListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/attachedDatabaseConfigurations": { + "get": { + "tags": [ + "AttachedDatabaseConfigurations" + ], + "description": "Returns the list of attached database configurations of the given Kusto cluster.", + "operationId": "AttachedDatabaseConfigurations_ListByCluster", + "x-ms-examples": { + "KustoAttachedDatabaseConfigurationsListByCluster": { + "$ref": "./examples/KustoAttachedDatabaseConfigurationsListByCluster.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of attached database configurations.", + "schema": { + "$ref": "#/definitions/AttachedDatabaseConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/attachedDatabaseConfigurations/{attachedDatabaseConfigurationName}": { + "get": { + "tags": [ + "AttachedDatabaseConfigurations" + ], + "description": "Returns an attached database configuration.", + "operationId": "AttachedDatabaseConfigurations_Get", + "x-ms-examples": { + "AttachedDatabaseConfigurationsGet": { + "$ref": "./examples/KustoAttachedDatabaseConfigurationsGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/AttachedDatabaseConfigurationNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified attached database configuration.", + "schema": { + "$ref": "#/definitions/AttachedDatabaseConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "AttachedDatabaseConfigurations" + ], + "description": "Creates or updates an attached database configuration.", + "operationId": "AttachedDatabaseConfigurations_CreateOrUpdate", + "x-ms-examples": { + "AttachedDatabaseConfigurationsCreateOrUpdate": { + "$ref": "./examples/KustoAttachedDatabaseConfigurationsCreateOrUpdate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/AttachedDatabaseConfigurationNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AttachedDatabaseConfiguration" + }, + "description": "The database parameters supplied to the CreateOrUpdate operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the database.", + "schema": { + "$ref": "#/definitions/AttachedDatabaseConfiguration" + } + }, + "201": { + "description": "Successfully created the database.", + "schema": { + "$ref": "#/definitions/AttachedDatabaseConfiguration" + } + }, + "202": { + "description": "Accepted the create database request.", + "schema": { + "$ref": "#/definitions/AttachedDatabaseConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "AttachedDatabaseConfigurations" + ], + "description": "Deletes the attached database configuration with the given name.", + "operationId": "AttachedDatabaseConfigurations_Delete", + "x-ms-examples": { + "AttachedDatabaseConfigurationsDelete": { + "$ref": "./examples/KustoAttachedDatabaseConfigurationsDelete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/AttachedDatabaseConfigurationNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the database." + }, + "202": { + "description": "Accepted." + }, + "204": { + "description": "The specified database does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/removePrincipals": { + "post": { + "tags": [ + "Databases" + ], + "operationId": "Databases_RemovePrincipals", + "x-ms-examples": { + "KustoDatabaseRemovePrincipals": { + "$ref": "./examples/KustoDatabaseRemovePrincipals.json" + } + }, + "description": "Remove Database principals permissions.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "databasePrincipalsToRemove", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabasePrincipalListRequest" + }, + "description": "List of database principals to remove." + } + ], + "responses": { + "200": { + "description": "OK -- Successfully removed the list of database principals. Returns the updated list of principals.", + "schema": { + "$ref": "#/definitions/DatabasePrincipalListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/dataConnections": { + "get": { + "tags": [ + "DataConnections" + ], + "description": "Returns the list of data connections of the given Kusto database.", + "operationId": "DataConnections_ListByDatabase", + "x-ms-examples": { + "KustoDatabasesListByCluster": { + "$ref": "./examples/KustoDataConnectionsListByDatabase.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of data connections.", + "schema": { + "$ref": "#/definitions/DataConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/dataConnectionValidation": { + "post": { + "tags": [ + "DataConnections" + ], + "operationId": "DataConnections_dataConnectionValidation", + "x-ms-examples": { + "KustoDataConnectionValidation": { + "$ref": "./examples/KustoDataConnectionValidation.json" + } + }, + "description": "Checks that the data connection parameters are valid.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataConnectionValidation" + }, + "description": "The data connection parameters supplied to the CreateOrUpdate operation." + } + ], + "responses": { + "200": { + "description": "OK -- Operation to check the kusto resource name availability was successful.", + "schema": { + "$ref": "#/definitions/DataConnectionValidationListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/checkNameAvailability": { + "post": { + "tags": [ + "DataConnections" + ], + "operationId": "DataConnections_CheckNameAvailability", + "x-ms-examples": { + "KustoDataConnectionsCheckNameAvailability": { + "$ref": "./examples/KustoDataConnectionsCheckNameAvailability.json" + } + }, + "description": "Checks that the data connection name is valid and is not already in use.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "dataConnectionName", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataConnectionCheckNameRequest" + }, + "description": "The name of the data connection." + } + ], + "responses": { + "200": { + "description": "OK -- Operation to check the Kusto resource name availability was successful.", + "schema": { + "$ref": "#/definitions/CheckNameResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/dataConnections/{dataConnectionName}": { + "get": { + "tags": [ + "DataConnections" + ], + "description": "Returns a data connection.", + "operationId": "DataConnections_Get", + "x-ms-examples": { + "KustoDataConnectionsGet": { + "$ref": "./examples/KustoDataConnectionsGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/DataConnectionNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified data connection.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "DataConnections" + ], + "description": "Creates or updates a data connection.", + "operationId": "DataConnections_CreateOrUpdate", + "x-ms-examples": { + "KustoDataConnectionsCreateOrUpdate": { + "$ref": "./examples/KustoDataConnectionsCreateOrUpdate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/DataConnectionNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataConnection" + }, + "description": "The data connection parameters supplied to the CreateOrUpdate operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the data connection.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "201": { + "description": "Successfully created the data connection.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "202": { + "description": "Accepted the create data connection request.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "DataConnections" + ], + "description": "Updates a data connection.", + "operationId": "DataConnections_Update", + "x-ms-examples": { + "KustoDataConnectionsUpdate": { + "$ref": "./examples/KustoDataConnectionsUpdate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/DataConnectionNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataConnection" + }, + "description": "The data connection parameters supplied to the Update operation." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the data connection.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "201": { + "description": "Successfully updated the data connection.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "202": { + "description": "Accepted the update data connection request.", + "schema": { + "$ref": "#/definitions/DataConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "DataConnections" + ], + "description": "Deletes the data connection with the given name.", + "operationId": "DataConnections_Delete", + "x-ms-examples": { + "KustoDataConnectionsDelete": { + "$ref": "./examples/KustoDataConnectionsDelete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/DataConnectionNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the data connection." + }, + "202": { + "description": "Accepted." + }, + "204": { + "description": "The specified data connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/providers/Microsoft.Kusto/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "x-ms-examples": { + "KustoOperationsList": { + "$ref": "./examples/KustoOperationsList.json" + } + }, + "description": "Lists available operations for the Microsoft.Kusto provider.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the list of available operations.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/listLanguageExtensions": { + "post": { + "tags": [ + "Clusters" + ], + "description": "Returns a list of language extensions that can run within KQL queries.", + "operationId": "Clusters_ListLanguageExtensions", + "x-ms-examples": { + "KustoClusterListLanguageExtensions": { + "$ref": "./examples/KustoClusterListLanguageExtensions.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of language extensions.", + "schema": { + "$ref": "#/definitions/LanguageExtensionsList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/addLanguageExtensions": { + "post": { + "tags": [ + "Clusters" + ], + "description": "Add a list of language extensions that can run within KQL queries.", + "operationId": "Clusters_AddLanguageExtensions", + "x-ms-examples": { + "KustoClusterAddLanguageExtensions": { + "$ref": "./examples/KustoClusterAddLanguageExtensions.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "languageExtensionsToAdd", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LanguageExtensionsList" + }, + "description": "The language extensions to add." + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/removeLanguageExtensions": { + "post": { + "tags": [ + "Clusters" + ], + "description": "Remove a list of language extensions that can run within KQL queries.", + "operationId": "Clusters_RemoveLanguageExtensions", + "x-ms-examples": { + "KustoClusterRemoveLanguageExtensions": { + "$ref": "./examples/KustoClusterRemoveLanguageExtensions.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "languageExtensionsToRemove", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LanguageExtensionsList" + }, + "description": "The language extensions to remove." + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "ClusterProperties": { + "properties": { + "state": { + "type": "string", + "readOnly": true, + "description": "The state of the resource.", + "enum": [ + "Creating", + "Unavailable", + "Running", + "Deleting", + "Deleted", + "Stopping", + "Stopped", + "Starting", + "Updating" + ], + "x-ms-enum": { + "name": "State", + "modelAsString": true + } + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioned state of the resource.", + "enum": [ + "Running", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Moving" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "uri": { + "type": "string", + "readOnly": true, + "description": "The cluster URI." + }, + "dataIngestionUri": { + "type": "string", + "readOnly": true, + "description": "The cluster data ingestion URI." + }, + "stateReason": { + "type": "string", + "readOnly": true, + "description": "The reason for the cluster's current state." + }, + "trustedExternalTenants": { + "type": "array", + "items": { + "$ref": "#/definitions/TrustedExternalTenant" + }, + "description": "The cluster's external tenants." + }, + "optimizedAutoscale": { + "type": "object", + "$ref": "#/definitions/OptimizedAutoscale", + "description": "Optimized auto scale definition." + }, + "enableDiskEncryption": { + "description": "A boolean value that indicates if the cluster's disks are encrypted.", + "type": "boolean" + }, + "enableStreamingIngest": { + "description": "A boolean value that indicates if the streaming ingest is enabled.", + "default": false, + "type": "boolean" + }, + "virtualNetworkConfiguration": { + "type": "object", + "$ref": "#/definitions/VirtualNetworkConfiguration", + "description": "Virtual network definition." + }, + "keyVaultProperties": { + "type": "object", + "$ref": "#/definitions/KeyVaultProperties", + "description": "KeyVault properties for the cluster encryption." + }, + "enablePurge": { + "description": "A boolean value that indicates if the purge operations are enabled.", + "default": false, + "type": "boolean" + }, + "languageExtensions": { + "type": "object", + "$ref": "#/definitions/LanguageExtensionsList", + "description": "List of the cluster's language extensions." + } + }, + "description": "Class representing the Kusto cluster properties." + }, + "TrustedExternalTenant": { + "properties": { + "value": { + "type": "string", + "description": "GUID representing an external tenant." + } + }, + "description": "Represents a tenant ID that is trusted by the cluster." + }, + "AzureResourceSku": { + "properties": { + "resourceType": { + "type": "string", + "description": "Resource Namespace and Type." + }, + "sku": { + "$ref": "#/definitions/AzureSku", + "description": "The SKU details." + }, + "capacity": { + "$ref": "#/definitions/AzureCapacity", + "description": "The number of instances of the cluster." + } + }, + "description": "Azure resource SKU definition." + }, + "AzureCapacity": { + "type": "object", + "required": [ + "minimum", + "maximum", + "default", + "scaleType" + ], + "properties": { + "scaleType": { + "description": "Scale type.", + "type": "string", + "enum": [ + "automatic", + "manual", + "none" + ], + "x-ms-enum": { + "name": "AzureScaleType", + "modelAsString": true + } + }, + "minimum": { + "description": "Minimum allowed capacity.", + "type": "integer" + }, + "maximum": { + "description": "Maximum allowed capacity.", + "type": "integer" + }, + "default": { + "description": "The default capacity that would be used.", + "type": "integer" + } + }, + "description": "Azure capacity definition." + }, + "SkuDescriptionList": { + "description": "The list of the EngagementFabric SKU descriptions", + "type": "object", + "properties": { + "value": { + "description": "SKU descriptions", + "type": "array", + "items": { + "$ref": "#/definitions/SkuDescription" + }, + "readOnly": true + } + } + }, + "SkuDescription": { + "description": "The Kusto SKU description of given resource type", + "type": "object", + "properties": { + "resourceType": { + "description": "The resource type", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the SKU", + "type": "string", + "readOnly": true + }, + "tier": { + "description": "The tier of the SKU", + "type": "string", + "readOnly": true + }, + "locations": { + "description": "The set of locations that the SKU is available", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "locationInfo": { + "description": "Locations and zones", + "type": "array", + "items": { + "$ref": "#/definitions/SkuLocationInfoItem" + }, + "readOnly": true + }, + "restrictions": { + "description": "The restrictions because of which SKU cannot be used", + "type": "array", + "items": { + "type": "object" + }, + "readOnly": true + } + } + }, + "SkuLocationInfoItem": { + "description": "The locations and zones info for SKU.", + "type": "object", + "required": [ + "location" + ], + "properties": { + "location": { + "description": "The available location of the SKU.", + "type": "string" + }, + "zones": { + "description": "The available zone of the SKU.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "AzureSku": { + "type": "object", + "required": [ + "name", + "tier" + ], + "properties": { + "name": { + "description": "SKU name.", + "type": "string", + "enum": [ + "Standard_DS13_v2+1TB_PS", + "Standard_DS13_v2+2TB_PS", + "Standard_DS14_v2+3TB_PS", + "Standard_DS14_v2+4TB_PS", + "Standard_D13_v2", + "Standard_D14_v2", + "Standard_L8s", + "Standard_L16s", + "Standard_D11_v2", + "Standard_D12_v2", + "Standard_L4s", + "Dev(No SLA)_Standard_D11_v2", + "Standard_E2a_v4", + "Standard_E4a_v4", + "Standard_E8a_v4", + "Standard_E16a_v4", + "Standard_E8as_v4+1TB_PS", + "Standard_E8as_v4+2TB_PS", + "Standard_E16as_v4+3TB_PS", + "Standard_E16as_v4+4TB_PS", + "Dev(No SLA)_Standard_E2a_v4" + ], + "x-ms-enum": { + "name": "AzureSkuName", + "modelAsString": true + } + }, + "capacity": { + "description": "The number of instances of the cluster.", + "type": "integer" + }, + "tier": { + "description": "SKU tier.", + "type": "string", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "AzureSkuTier", + "modelAsString": true + } + } + }, + "description": "Azure SKU definition." + }, + "Zones": { + "description": "An array represents the availability zones of the cluster.", + "type": "array", + "items": { + "type": "string" + } + }, + "OptimizedAutoscale": { + "type": "object", + "required": [ + "version", + "isEnabled", + "minimum", + "maximum" + ], + "properties": { + "version": { + "description": "The version of the template defined, for instance 1.", + "type": "integer" + }, + "isEnabled": { + "description": "A boolean value that indicate if the optimized autoscale feature is enabled or not.", + "type": "boolean" + }, + "minimum": { + "description": "Minimum allowed instances count.", + "type": "integer" + }, + "maximum": { + "description": "Maximum allowed instances count.", + "type": "integer" + } + }, + "description": "A class that contains the optimized auto scale definition." + }, + "VirtualNetworkConfiguration": { + "type": "object", + "required": [ + "subnetId", + "enginePublicIpId", + "dataManagementPublicIpId" + ], + "properties": { + "subnetId": { + "description": "The subnet resource id.", + "type": "string" + }, + "enginePublicIpId": { + "description": "Engine service's public IP address resource id.", + "type": "string" + }, + "dataManagementPublicIpId": { + "description": "Data management's service public IP address resource id.", + "type": "string" + } + }, + "description": "A class that contains virtual network definition." + }, + "DatabaseStatistics": { + "type": "object", + "readOnly": true, + "properties": { + "size": { + "type": "number", + "description": "The database size - the total size of compressed data and index in bytes." + } + }, + "description": "A class that contains database statistics information." + }, + "AttachedDatabaseConfigurationProperties": { + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioned state of the resource.", + "enum": [ + "Running", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Moving" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "databaseName": { + "type": "string", + "description": "The name of the database which you would like to attach, use * if you want to follow all current and future databases." + }, + "clusterResourceId": { + "type": "string", + "description": "The resource id of the cluster where the databases you would like to attach reside." + }, + "attachedDatabaseNames": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "The list of databases from the clusterResourceId which are currently attached to the cluster." + }, + "defaultPrincipalsModificationKind": { + "type": "string", + "enum": [ + "Union", + "Replace", + "None" + ], + "x-ms-enum": { + "name": "DefaultPrincipalsModificationKind", + "modelAsString": true + }, + "description": "The default principals modification kind" + } + }, + "description": "Class representing the an attached database configuration properties of kind specific.", + "required": [ + "databaseName", + "clusterResourceId", + "defaultPrincipalsModificationKind" + ] + }, + "ReadWriteDatabaseProperties": { + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioned state of the resource.", + "enum": [ + "Running", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Moving" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "softDeletePeriod": { + "type": "string", + "format": "duration", + "description": "The time the data should be kept before it stops being accessible to queries in TimeSpan." + }, + "hotCachePeriod": { + "type": "string", + "format": "duration", + "description": "The time the data should be kept in cache for fast queries in TimeSpan." + }, + "statistics": { + "$ref": "#/definitions/DatabaseStatistics", + "description": "The statistics of the database." + }, + "isFollowed": { + "type": "string", + "readOnly": true, + "description": "Indicates whether the database is followed." + } + }, + "description": "Class representing the Kusto database properties." + }, + "ReadOnlyFollowingDatabaseProperties": { + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioned state of the resource.", + "enum": [ + "Running", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Moving" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "softDeletePeriod": { + "type": "string", + "readOnly": true, + "format": "duration", + "description": "The time the data should be kept before it stops being accessible to queries in TimeSpan." + }, + "hotCachePeriod": { + "type": "string", + "format": "duration", + "description": "The time the data should be kept in cache for fast queries in TimeSpan." + }, + "statistics": { + "$ref": "#/definitions/DatabaseStatistics", + "description": "The statistics of the database." + }, + "leaderClusterResourceId": { + "type": "string", + "readOnly": true, + "description": "The name of the leader cluster" + }, + "attachedDatabaseConfigurationName": { + "type": "string", + "readOnly": true, + "description": "The name of the attached database configuration cluster" + }, + "principalsModificationKind": { + "type": "string", + "readOnly": true, + "enum": [ + "Union", + "Replace", + "None" + ], + "x-ms-enum": { + "name": "PrincipalsModificationKind", + "modelAsString": true + }, + "description": "The principals modification kind of the database" + } + }, + "description": "Class representing the Kusto database properties." + }, + "EventHubConnectionProperties": { + "properties": { + "eventHubResourceId": { + "type": "string", + "description": "The resource ID of the event hub to be used to create a data connection." + }, + "consumerGroup": { + "type": "string", + "description": "The event hub consumer group." + }, + "tableName": { + "type": "string", + "description": "The table where the data should be ingested. Optionally the table information can be added to each message." + }, + "mappingRuleName": { + "type": "string", + "description": "The mapping rule to be used to ingest the data. Optionally the mapping information can be added to each message." + }, + "dataFormat": { + "$ref": "#/definitions/EventHubDataFormat", + "description": "The data format of the message. Optionally the data format can be added to each message." + }, + "eventSystemProperties": { + "type": "array", + "items": { + "type": "string" + }, + "description": "System properties of the event hub" + }, + "compression": { + "$ref": "#/definitions/Compression", + "description": "The event hub messages compression type" + } + }, + "required": [ + "eventHubResourceId", + "consumerGroup" + ], + "description": "Class representing the Kusto event hub connection properties." + }, + "IotHubConnectionProperties": { + "properties": { + "iotHubResourceId": { + "type": "string", + "description": "The resource ID of the Iot hub to be used to create a data connection." + }, + "consumerGroup": { + "type": "string", + "description": "The iot hub consumer group." + }, + "tableName": { + "type": "string", + "description": "The table where the data should be ingested. Optionally the table information can be added to each message." + }, + "mappingRuleName": { + "type": "string", + "description": "The mapping rule to be used to ingest the data. Optionally the mapping information can be added to each message." + }, + "dataFormat": { + "$ref": "#/definitions/IotHubDataFormat", + "description": "The data format of the message. Optionally the data format can be added to each message." + }, + "eventSystemProperties": { + "type": "array", + "items": { + "type": "string" + }, + "description": "System properties of the iot hub" + }, + "sharedAccessPolicyName": { + "type": "string", + "description": "The name of the share access policy" + } + }, + "required": [ + "iotHubResourceId", + "consumerGroup", + "sharedAccessPolicyName" + ], + "description": "Class representing the Kusto Iot hub connection properties." + }, + "EventHubDataFormat": { + "description": "The data format of the message. Optionally the data format can be added to each message.", + "type": "string", + "enum": [ + "MULTIJSON", + "JSON", + "CSV", + "TSV", + "SCSV", + "SOHSV", + "PSV", + "TXT", + "RAW", + "SINGLEJSON", + "AVRO", + "TSVE", + "PARQUET", + "ORC" + ], + "x-ms-enum": { + "name": "eventHubDataFormat", + "modelAsString": true + } + }, + "IotHubDataFormat": { + "description": "The data format of the message. Optionally the data format can be added to each message.", + "type": "string", + "enum": [ + "MULTIJSON", + "JSON", + "CSV", + "TSV", + "SCSV", + "SOHSV", + "PSV", + "TXT", + "RAW", + "SINGLEJSON", + "AVRO", + "TSVE", + "PARQUET", + "ORC" + ], + "x-ms-enum": { + "name": "iotHubDataFormat", + "modelAsString": true + } + }, + "EventGridDataFormat": { + "description": "The data format of the message. Optionally the data format can be added to each message.", + "type": "string", + "enum": [ + "MULTIJSON", + "JSON", + "CSV", + "TSV", + "SCSV", + "SOHSV", + "PSV", + "TXT", + "RAW", + "SINGLEJSON", + "AVRO", + "TSVE", + "PARQUET", + "ORC" + ], + "x-ms-enum": { + "name": "eventGridDataFormat", + "modelAsString": true + } + }, + "Compression": { + "description": "The compression type", + "type": "string", + "enum": [ + "None", + "GZip" + ], + "x-ms-enum": { + "name": "compression", + "modelAsString": true + } + }, + "EventGridConnectionProperties": { + "properties": { + "storageAccountResourceId": { + "type": "string", + "description": "The resource ID of the storage account where the data resides." + }, + "eventHubResourceId": { + "type": "string", + "description": "The resource ID where the event grid is configured to send events." + }, + "consumerGroup": { + "type": "string", + "description": "The event hub consumer group." + }, + "tableName": { + "type": "string", + "description": "The table where the data should be ingested. Optionally the table information can be added to each message." + }, + "mappingRuleName": { + "type": "string", + "description": "The mapping rule to be used to ingest the data. Optionally the mapping information can be added to each message." + }, + "dataFormat": { + "$ref": "#/definitions/EventGridDataFormat", + "description": "The data format of the message. Optionally the data format can be added to each message." + } + }, + "required": [ + "storageAccountResourceId", + "eventHubResourceId", + "consumerGroup", + "tableName", + "dataFormat" + ], + "description": "Class representing the Kusto event grid connection properties." + }, + "Cluster": { + "required": [ + "sku" + ], + "properties": { + "sku": { + "$ref": "#/definitions/AzureSku", + "description": "The SKU of the cluster." + }, + "zones": { + "$ref": "#/definitions/Zones", + "description": "The availability zones of the cluster." + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the cluster, if configured." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterProperties", + "description": "The cluster properties." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "description": "Class representing a Kusto cluster." + }, + "ClusterUpdate": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Resource tags." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "sku": { + "$ref": "#/definitions/AzureSku", + "description": "The SKU of the cluster." + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the cluster, if configured." + }, + "properties": { + "x-ms-client-flatten": true, + "description": "The cluster properties.", + "$ref": "#/definitions/ClusterProperties" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "Class representing an update to a Kusto cluster." + }, + "AttachedDatabaseConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AttachedDatabaseConfiguration" + }, + "description": "The list of attached database configurations." + } + }, + "description": "The list attached database configurations operation response." + }, + "AttachedDatabaseConfiguration": { + "properties": { + "location": { + "type": "string", + "description": "Resource location." + }, + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of the attached database configuration.", + "$ref": "#/definitions/AttachedDatabaseConfigurationProperties" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Class representing an attached database configuration." + }, + "Database": { + "required": [ + "kind" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location." + }, + "kind": { + "description": "Kind of the database", + "enum": [ + "ReadWrite", + "ReadOnlyFollowing" + ], + "type": "string", + "x-ms-enum": { + "name": "Kind", + "modelAsString": true + } + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Class representing a Kusto database.", + "discriminator": "kind" + }, + "ReadWriteDatabase": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The database properties.", + "$ref": "#/definitions/ReadWriteDatabaseProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Database" + } + ], + "description": "Class representing a read write database.", + "x-ms-discriminator-value": "ReadWrite" + }, + "ReadOnlyFollowingDatabase": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The database properties.", + "$ref": "#/definitions/ReadOnlyFollowingDatabaseProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Database" + } + ], + "description": "Class representing a read only following database.", + "x-ms-discriminator-value": "ReadOnlyFollowing" + }, + "DatabasePrincipal": { + "type": "object", + "required": [ + "name", + "role", + "type" + ], + "properties": { + "role": { + "description": "Database principal role.", + "type": "string", + "enum": [ + "Admin", + "Ingestor", + "Monitor", + "User", + "UnrestrictedViewers", + "Viewer" + ], + "x-ms-enum": { + "name": "DatabasePrincipalRole", + "modelAsString": true + } + }, + "name": { + "description": "Database principal name.", + "type": "string" + }, + "type": { + "description": "Database principal type.", + "type": "string", + "enum": [ + "App", + "Group", + "User" + ], + "x-ms-enum": { + "name": "DatabasePrincipalType", + "modelAsString": true + } + }, + "fqn": { + "description": "Database principal fully qualified name.", + "type": "string" + }, + "email": { + "description": "Database principal email if exists.", + "type": "string" + }, + "appId": { + "description": "Application id - relevant only for application principal type.", + "type": "string" + }, + "tenantName": { + "type": "string", + "readOnly": true, + "description": "The tenant name of the principal" + } + }, + "description": "A class representing database principal entity." + }, + "DatabasePrincipalProperties": { + "type": "object", + "required": [ + "principalId", + "role", + "principalType" + ], + "properties": { + "principalId": { + "description": "The principal ID assigned to the database principal. It can be a user email, application ID, or security group name.", + "type": "string" + }, + "role": { + "description": "Database principal role.", + "type": "string", + "enum": [ + "Admin", + "Ingestor", + "Monitor", + "User", + "UnrestrictedViewers", + "Viewer" + ], + "x-ms-enum": { + "name": "DatabasePrincipalRole", + "modelAsString": true + } + }, + "tenantId": { + "type": "string", + "description": "The tenant id of the principal" + }, + "principalType": { + "description": "Principal type.", + "type": "string", + "enum": [ + "App", + "Group", + "User" + ], + "x-ms-enum": { + "name": "PrincipalType", + "modelAsString": true + } + }, + "tenantName": { + "type": "string", + "readOnly": true, + "description": "The tenant name of the principal" + }, + "principalName": { + "type": "string", + "readOnly": true, + "description": "The principal name" + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioned state of the resource.", + "enum": [ + "Running", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Moving" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + } + }, + "description": "A class representing database principal property." + }, + "ClusterPrincipalProperties": { + "type": "object", + "required": [ + "principalId", + "role", + "principalType" + ], + "properties": { + "principalId": { + "description": "The principal ID assigned to the cluster principal. It can be a user email, application ID, or security group name.", + "type": "string" + }, + "role": { + "description": "Cluster principal role.", + "type": "string", + "enum": [ + "AllDatabasesAdmin", + "AllDatabasesViewer" + ], + "x-ms-enum": { + "name": "ClusterPrincipalRole", + "modelAsString": true + } + }, + "tenantId": { + "type": "string", + "description": "The tenant id of the principal" + }, + "principalType": { + "description": "Principal type.", + "type": "string", + "enum": [ + "App", + "Group", + "User" + ], + "x-ms-enum": { + "name": "PrincipalType", + "modelAsString": true + } + }, + "tenantName": { + "type": "string", + "readOnly": true, + "description": "The tenant name of the principal" + }, + "principalName": { + "type": "string", + "readOnly": true, + "description": "The principal name" + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioned state of the resource.", + "enum": [ + "Running", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Moving" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + } + }, + "description": "A class representing cluster principal property." + }, + "DatabasePrincipalAssignment": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DatabasePrincipalProperties", + "description": "The database principal." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Class representing a database principal assignment." + }, + "ClusterPrincipalAssignment": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterPrincipalProperties", + "description": "The cluster principal." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Class representing a cluster principal assignment." + }, + "ClusterListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Cluster" + }, + "description": "The list of Kusto clusters." + } + }, + "description": "The list Kusto clusters operation response." + }, + "DatabaseListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Database" + }, + "description": "The list of Kusto databases." + } + }, + "description": "The list Kusto databases operation response." + }, + "DatabasePrincipalAssignmentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DatabasePrincipalAssignment" + }, + "description": "The list of Kusto database principal assignments." + } + }, + "description": "The list Kusto database principal assignments operation response." + }, + "ClusterPrincipalAssignmentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ClusterPrincipalAssignment" + }, + "description": "The list of Kusto cluster principal assignments." + } + }, + "description": "The list Kusto cluster principal assignments operation response." + }, + "DatabasePrincipalListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DatabasePrincipal" + }, + "description": "The list of Kusto database principals." + } + }, + "description": "The list Kusto database principals operation response." + }, + "FollowerDatabaseListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FollowerDatabaseDefinition" + }, + "description": "The list of follower database result." + } + }, + "description": "The list Kusto database principals operation response." + }, + "DataConnection": { + "required": [ + "kind" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location." + }, + "kind": { + "description": "Kind of the endpoint for the data connection", + "enum": [ + "EventHub", + "EventGrid", + "IotHub" + ], + "type": "string", + "x-ms-enum": { + "name": "Kind", + "modelAsString": true + } + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Class representing an data connection.", + "discriminator": "kind" + }, + "DataConnectionValidationResult": { + "type": "object", + "properties": { + "errorMessage": { + "type": "string", + "description": "A message which indicates a problem in data connection validation." + } + }, + "description": "The result returned from a data connection validation request." + }, + "DatabasePrincipalListRequest": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DatabasePrincipal" + }, + "description": "The list of Kusto database principals." + } + }, + "description": "The list Kusto database principals operation request." + }, + "FollowerDatabaseDefinition": { + "type": "object", + "required": [ + "clusterResourceId", + "attachedDatabaseConfigurationName" + ], + "properties": { + "clusterResourceId": { + "type": "string", + "description": "Resource id of the cluster that follows a database owned by this cluster." + }, + "attachedDatabaseConfigurationName": { + "type": "string", + "description": "Resource name of the attached database configuration in the follower cluster." + }, + "databaseName": { + "type": "string", + "readOnly": true, + "description": "The database name owned by this cluster that was followed. * in case following all databases." + } + }, + "description": "A class representing follower database request." + }, + "DiagnoseVirtualNetworkResult": { + "properties": { + "findings": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of network connectivity diagnostic finding" + } + } + }, + "DataConnectionValidation": { + "properties": { + "dataConnectionName": { + "type": "string", + "description": "The name of the data connection." + }, + "properties": { + "$ref": "#/definitions/DataConnection", + "description": "The data connection properties to validate." + } + }, + "description": "Class representing an data connection validation." + }, + "EventHubDataConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The Event Hub data connection properties to validate.", + "$ref": "#/definitions/EventHubConnectionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/DataConnection" + } + ], + "description": "Class representing an event hub data connection.", + "x-ms-discriminator-value": "EventHub" + }, + "IotHubDataConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The Iot Hub data connection properties.", + "$ref": "#/definitions/IotHubConnectionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/DataConnection" + } + ], + "description": "Class representing an iot hub data connection.", + "x-ms-discriminator-value": "IotHub" + }, + "EventGridDataConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of the Event Grid data connection.", + "$ref": "#/definitions/EventGridConnectionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/DataConnection" + } + ], + "description": "Class representing an Event Grid data connection.", + "x-ms-discriminator-value": "EventGrid" + }, + "DataConnectionValidationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DataConnectionValidationResult" + }, + "description": "The list of Kusto data connection validation errors." + } + }, + "description": "The list Kusto data connection validation result." + }, + "DataConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DataConnection" + }, + "description": "The list of Kusto data connections." + } + }, + "description": "The list Kusto data connections operation response." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody", + "description": "An error response from Kusto." + } + }, + "description": "An error response from Kusto." + }, + "ClusterCheckNameRequest": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Cluster name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Kusto/clusters" + ], + "x-ms-enum": { + "name": "Type", + "modelAsString": false + }, + "description": "The type of resource, Microsoft.Kusto/clusters." + } + }, + "required": [ + "name", + "type" + ], + "description": "The result returned from a cluster check name availability request." + }, + "CheckNameRequest": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Resource name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Kusto/clusters/databases", + "Microsoft.Kusto/clusters/attachedDatabaseConfigurations" + ], + "x-ms-enum": { + "name": "Type", + "modelAsString": false + }, + "description": "The type of resource, for instance Microsoft.Kusto/clusters/databases." + } + }, + "required": [ + "name", + "type" + ], + "description": "The result returned from a database check name availability request." + }, + "ClusterPrincipalAssignmentCheckNameRequest": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Principal Assignment resource name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Kusto/clusters/principalAssignments" + ], + "x-ms-enum": { + "name": "Type", + "modelAsString": false + }, + "description": "The type of resource, Microsoft.Kusto/clusters/principalAssignments." + } + }, + "required": [ + "name", + "type" + ], + "description": "A principal assignment check name availability request." + }, + "DataConnectionCheckNameRequest": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Data Connection name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Kusto/clusters/databases/dataConnections" + ], + "x-ms-enum": { + "name": "Type", + "modelAsString": false + }, + "description": "The type of resource, Microsoft.Kusto/clusters/databases/dataConnections." + } + }, + "required": [ + "name", + "type" + ], + "description": "A data connection check name availability request." + }, + "DatabasePrincipalAssignmentCheckNameRequest": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Principal Assignment resource name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Kusto/clusters/databases/principalAssignments" + ], + "x-ms-enum": { + "name": "Type", + "modelAsString": false + }, + "description": "The type of resource, Microsoft.Kusto/clusters/databases/principalAssignments." + } + }, + "required": [ + "name", + "type" + ], + "description": "A principal assignment check name availability request." + }, + "CheckNameResult": { + "type": "object", + "properties": { + "nameAvailable": { + "type": "boolean", + "description": "Specifies a Boolean value that indicates if the name is available." + }, + "name": { + "type": "string", + "description": "The name that was checked." + }, + "message": { + "type": "string", + "description": "Message indicating an unavailable name due to a conflict, or a description of the naming rules that are violated." + }, + "reason": { + "type": "string", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "x-ms-enum": { + "name": "reason", + "modelAsString": true + }, + "description": "Message providing the reason why the given name is invalid." + } + }, + "description": "The result returned from a check name availability request." + }, + "ListResourceSkusResult": { + "description": "List of available SKUs for a Kusto Cluster.", + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureResourceSku" + }, + "description": "The collection of available SKUs for an existing resource." + } + } + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for displaying in a user interface." + }, + "target": { + "type": "string", + "description": "The target of the particular error. For example, the name of the property in error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "description": "A list of additional details about the error." + } + }, + "description": "An error response from Kusto." + }, + "OperationListResult": { + "title": "Result of the request to list REST API operations. It contains a list of operations and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "title": "The list of operations supported by the resource provider." + }, + "nextLink": { + "type": "string", + "title": "The URL to get the next set of operation list results if there are any." + } + } + }, + "Operation": { + "title": "A REST API operation", + "type": "object", + "properties": { + "name": { + "title": "The operation name.", + "description": "This is of the format {provider}/{resource}/{operation}.", + "type": "string" + }, + "display": { + "title": "The object that describes the operation.", + "properties": { + "provider": { + "title": "Friendly name of the resource provider.", + "type": "string" + }, + "operation": { + "title": "The operation type.", + "description": "For example: read, write, delete.", + "type": "string" + }, + "resource": { + "title": "The resource type on which the operation is performed.", + "type": "string" + }, + "description": { + "title": "The friendly name of the operation.", + "type": "string" + } + } + }, + "origin": { + "title": "The intended executor of the operation.", + "type": "string" + }, + "properties": { + "title": "Properties of the operation.", + "type": "object", + "x-ms-client-flatten": true + } + } + }, + "Identity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of resource identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of resource." + }, + "type": { + "type": "string", + "description": "The identity type.", + "enum": [ + "None", + "SystemAssigned" + ], + "x-ms-enum": { + "name": "IdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "description": "The list of user identities associated with the Kusto cluster. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "required": [ + "type" + ], + "description": "Identity for the resource." + }, + "KeyVaultProperties": { + "description": "Properties of the key vault.", + "required": [ + "keyName", + "keyVersion", + "keyVaultUri" + ], + "properties": { + "keyName": { + "type": "string", + "description": "The name of the key vault key.", + "x-ms-client-name": "KeyName" + }, + "keyVersion": { + "type": "string", + "description": "The version of the key vault key.", + "x-ms-client-name": "KeyVersion" + }, + "keyVaultUri": { + "type": "string", + "description": "The Uri of the key vault.", + "x-ms-client-name": "KeyVaultUri" + } + } + }, + "LanguageExtensionName": { + "description": "Language extension that can run within KQL query.", + "type": "string", + "enum": [ + "PYTHON", + "R" + ], + "x-ms-enum": { + "name": "languageExtensionName", + "modelAsString": true + } + }, + "LanguageExtension": { + "type": "object", + "description": "The language extension object.", + "properties": { + "languageExtensionName": { + "$ref": "#/definitions/LanguageExtensionName", + "description": "The language extension name." + } + } + }, + "LanguageExtensionsList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LanguageExtension" + }, + "description": "The list of language extensions." + } + }, + "description": "The list of language extension objects." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Gets subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API Version." + }, + "ClusterNameParameter": { + "name": "clusterName", + "in": "path", + "description": "The name of the Kusto cluster.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "AttachedDatabaseConfigurationNameParameter": { + "name": "attachedDatabaseConfigurationName", + "in": "path", + "description": "The name of the attached database configuration.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ResourceGroupParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group containing the Kusto cluster.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "DatabaseNameParameter": { + "name": "databaseName", + "in": "path", + "description": "The name of the database in the Kusto cluster.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "DataConnectionNameParameter": { + "name": "dataConnectionName", + "in": "path", + "description": "The name of the data connection.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "PrincipalAssignmentNameParameter": { + "name": "principalAssignmentName", + "in": "path", + "description": "The name of the Kusto principalAssignment.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + }, + "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" + } + } + } +} diff --git a/specification/azure-kusto/resource-manager/readme.az.md b/specification/azure-kusto/resource-manager/readme.az.md new file mode 100644 index 000000000000..57ab1d5b9c1c --- /dev/null +++ b/specification/azure-kusto/resource-manager/readme.az.md @@ -0,0 +1,26 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +``` yaml $(az) +az: + extensions: kusto + namespace: azure.mgmt.kusto + package-name: azure-mgmt-kusto +az-output-folder: $(azure-cli-extension-folder)/src/kusto +python-sdk-output-folder: "$(az-output-folder)/azext_kusto/vendored_sdks/kusto" + +cli: + cli-directive: + - where: + group: 'DataConnections' + op: 'CreateOrUpdate|Update' + param: 'parameters' + poly-resource: true + - where: + group: 'DataConnections' + op: 'dataConnectionValidation' + param: 'properties' + poly-resource: true + +``` diff --git a/specification/azure-kusto/resource-manager/readme.cli.md b/specification/azure-kusto/resource-manager/readme.cli.md index 6ecf12a9e8c1..4cecfda46a2a 100644 --- a/specification/azure-kusto/resource-manager/readme.cli.md +++ b/specification/azure-kusto/resource-manager/readme.cli.md @@ -41,4 +41,10 @@ cli: - name: KustoDataConnectionsDelete - name: KustoDatabasesDelete - name: KustoClustersDelete + - name: KustoDatabasePrincipalAssignmentsGet + - name: KustoDatabasePrincipalAssignmentsCreateOrUpdate + - name: KustoDatabasePrincipalAssignmentsDelete + - name: KustoClusterPrincipalAssignmentsGet + - name: KustoClusterPrincipalAssignmentsCreateOrUpdate + - name: KustoClusterPrincipalAssignmentsDelete ``` diff --git a/specification/azure-kusto/resource-manager/readme.go.md b/specification/azure-kusto/resource-manager/readme.go.md index 11d57503dc16..15474d8a5833 100644 --- a/specification/azure-kusto/resource-manager/readme.go.md +++ b/specification/azure-kusto/resource-manager/readme.go.md @@ -17,6 +17,8 @@ batch: - tag: package-2019-01-21 - tag: package-2019-05-15 - tag: package-2019-09-07 + - tag: package-2019-11-09 + - tag: package-2020-02-15 ``` ### Tag: package-2018-09-07-preview and go @@ -54,3 +56,21 @@ Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2019-11-09' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2019-11-09/$(namespace) +``` + +### Tag: package-2020-02-15 and go + +These settings apply only when `--tag=package-2020-02-15 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2020-02-15' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2020-02-15/$(namespace) +``` diff --git a/specification/azure-kusto/resource-manager/readme.java.md b/specification/azure-kusto/resource-manager/readme.java.md new file mode 100644 index 000000000000..d8a5cd934f22 --- /dev/null +++ b/specification/azure-kusto/resource-manager/readme.java.md @@ -0,0 +1,85 @@ +## Java + +These settings apply only when `--java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(java) +azure-arm: true +fluent: true +namespace: com.microsoft.azure.management.kusto +license-header: MICROSOFT_MIT_NO_CODEGEN +payload-flattening-threshold: 1 +output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-kusto +``` + +### Java multi-api + +``` yaml $(java) && $(multiapi) +batch: + - tag: package-2019-11-09 +``` + +### Tag: package-2018-09-07-preview and java + +These settings apply only when `--tag=package-2018-09-07-preview --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2018-09-07-preview' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.kusto.v2018_09_07_preview + output-folder: $(azure-libraries-for-java-folder)/sdk/kusto/mgmt-v2018_09_07_preview +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2019-01-21 and java + +These settings apply only when `--tag=package-2019-01-21 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2019-01-21' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.kusto.v2019_01_21 + output-folder: $(azure-libraries-for-java-folder)/sdk/kusto/mgmt-v2019_01_21 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2019-05-15 and java + +These settings apply only when `--tag=package-2019-05-15 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2019-05-15' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.kusto.v2019_05_15 + output-folder: $(azure-libraries-for-java-folder)/sdk/kusto/mgmt-v2019_05_15 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2019-09-07 and java + +These settings apply only when `--tag=package-2019-09-07 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2019-09-07' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.kusto.v2019_09_07 + output-folder: $(azure-libraries-for-java-folder)/sdk/kusto/mgmt-v2019_09_07 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2019-11-09 and java + +These settings apply only when `--tag=package-2019-11-09 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2019-11-09' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.kusto.v2019_11_09 + output-folder: $(azure-libraries-for-java-folder)/sdk/kusto/mgmt-v2019_11_09 +regenerate-manager: true +generate-interface: true +``` \ No newline at end of file diff --git a/specification/azure-kusto/resource-manager/readme.md b/specification/azure-kusto/resource-manager/readme.md index ef739944f2eb..ef252e846aa8 100644 --- a/specification/azure-kusto/resource-manager/readme.md +++ b/specification/azure-kusto/resource-manager/readme.md @@ -28,12 +28,25 @@ These are the global settings for the Kusto API. title: KustoManagementClient description: 'The Azure Kusto management API provides a RESTful set of web services that interact with Azure Kusto services to manage your clusters and databases. The API enables you to create, update, and delete clusters and databases.' openapi-type: arm -tag: package-2019-09-07 -directive: - - suppress: R2016 - from: kusto.json - where: $.definitions.DataConnection.required - reason: Implements kind which is required also in patch +tag: package-2020-02-15 +``` + +### Tag: package-2020-02-15 + +These settings apply only when `--tag=package-2020-02-15` is specified on the command line. + +``` yaml $(tag) == 'package-2020-02-15' +input-file: + - Microsoft.Kusto/stable/2020-02-15/kusto.json +``` + +### Tag: package-2019-11-09 + +These settings apply only when `--tag=package-2019-11-09` is specified on the command line. + +``` yaml $(tag) == 'package-2019-11-09' +input-file: + - Microsoft.Kusto/stable/2019-11-09/kusto.json ``` ### Tag: package-2019-09-07 @@ -149,6 +162,7 @@ swagger-to-sdk: - repo: azure-sdk-for-python - repo: azure-sdk-for-go - repo: azure-sdk-for-java + - repo: azure-cli-extensions ``` ## C# @@ -167,79 +181,7 @@ csharp: ## Java -These settings apply only when `--java` is specified on the command line. -Please also specify `--azure-libraries-for-java-folder=`. - -``` yaml $(java) -azure-arm: true -fluent: true -namespace: com.microsoft.azure.management.kusto -license-header: MICROSOFT_MIT_NO_CODEGEN -payload-flattening-threshold: 1 -output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-kusto -``` - -### Java multi-api - -``` yaml $(java) && $(multiapi) -batch: - - tag: package-2018-09-07-preview - - tag: package-2019-01-21 - - tag: package-2019-05-15 - - tag: package-2019-09-07 -``` - -### Tag: package-2018-09-07-preview and java - -These settings apply only when `--tag=package-2018-09-07-preview --java` is specified on the command line. -Please also specify `--azure-libraries-for-java=`. - -``` yaml $(tag) == 'package-2018-09-07-preview' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.kusto.v2018_09_07_preview - output-folder: $(azure-libraries-for-java-folder)/sdk/kusto/mgmt-v2018_09_07_preview -regenerate-manager: true -generate-interface: true -``` - -### Tag: package-2019-01-21 and java - -These settings apply only when `--tag=package-2019-01-21 --java` is specified on the command line. -Please also specify `--azure-libraries-for-java=`. - -``` yaml $(tag) == 'package-2019-01-21' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.kusto.v2019_01_21 - output-folder: $(azure-libraries-for-java-folder)/sdk/kusto/mgmt-v2019_01_21 -regenerate-manager: true -generate-interface: true -``` - -### Tag: package-2019-05-15 and java - -These settings apply only when `--tag=package-2019-05-15 --java` is specified on the command line. -Please also specify `--azure-libraries-for-java=`. - -``` yaml $(tag) == 'package-2019-05-15' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.kusto.v2019_05_15 - output-folder: $(azure-libraries-for-java-folder)/sdk/kusto/mgmt-v2019_05_15 -regenerate-manager: true -generate-interface: true -``` - -### Tag: package-2019-09-07 and java - -These settings apply only when `--tag=package-2019-09-07 --java` is specified on the command line. -Please also specify `--azure-libraries-for-java=`. - -``` yaml $(tag) == 'package-2019-09-07' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.kusto.v2019_09_07 - output-folder: $(azure-libraries-for-java-folder)/sdk/kusto/mgmt-v2019_09_07 -regenerate-manager: true -generate-interface: true -``` +See configuration in [readme.java.md](./readme.java.md) ## Multi-API/Profile support for AutoRest v3 generators @@ -253,6 +195,8 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(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 @@ -273,6 +217,14 @@ uncomment the `exclude-file` section below and add the file paths. ``` yaml directive: + - suppress: R2016 + from: kusto.json + where: $.definitions.DataConnection.required + reason: Discriminator kind is required also in patch + - suppress: R2016 + from: kusto.json + where: $.definitions.Database.required + reason: Discriminator kind is required also in patch - suppress: ListInOperationName from: kusto.json where: '$.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Kusto/clusters/{clusterName}/databases/{databaseName}/addPrincipals"].post.operationId' diff --git a/specification/azure-kusto/resource-manager/readme.typescript.md b/specification/azure-kusto/resource-manager/readme.typescript.md index c61a03a02d5f..5f0eff880c2b 100644 --- a/specification/azure-kusto/resource-manager/readme.typescript.md +++ b/specification/azure-kusto/resource-manager/readme.typescript.md @@ -7,7 +7,7 @@ Please also specify `--typescript-sdks-folder=`. -```yaml $(tag) == 'package-2017-03-01-preview' && $(go) -output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2017-03-01-preview/$(namespace) -``` +```yaml $(tag) == 'package-2019-07-24' && $(go) +namespace: Microsoft.AzureData +output-folder: $(go-sdks-folder)/services/preview/$(namespace)/mgmt/2019-07-24-preview/$(namespace) +``` \ No newline at end of file diff --git a/specification/azuredata/resource-manager/readme.md b/specification/azuredata/resource-manager/readme.md index a785db2a1117..4ecacc7c3f4c 100644 --- a/specification/azuredata/resource-manager/readme.md +++ b/specification/azuredata/resource-manager/readme.md @@ -24,18 +24,27 @@ For other options on installation see [Installing AutoRest](https://aka.ms/autor These are the global settings for the azuredata. -```yaml +``` yaml openapi-type: arm -tag: package-2017-03-01-preview +tag: package-preview-2019-07 ``` + +### Tag: package-preview-2019-07 + +These settings apply only when `--tag=package-preview-2019-07` is specified on the command line. + +```yaml $(tag) == 'package-preview-2019-07' +input-file: + - Microsoft.AzureData/preview/2019-07-24-preview/azuredata.json +``` ### Tag: package-2017-03-01-preview -These settings apply only when `--tag=package-2017-03-01-preview` is specified on the command line. +These settings apply only when `--tag=package-2019-07-24` is specified on the command line. -```yaml $(tag) == 'package-2017-03-01-preview' +``` yaml $(tag) == 'package-2017-03-01-preview' input-file: - - Microsoft.AzureData/preview/2017-03-01-preview/azuredata.json + - Microsoft.AzureData/preview/2019-07-24-preview/azuredata.json ``` --- @@ -47,7 +56,7 @@ input-file: This section describes what SDK should be generated by the automatic system. This is not used by Autorest itself. -```yaml $(swagger-to-sdk) +``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-python - repo: azure-sdk-for-java @@ -79,7 +88,7 @@ See configuration in [readme.typescript.md](./readme.typescript.md) See configuration in [readme.csharp.md](./readme.csharp.md) -## Multi-API/Profile support for AutoRest v3 generators +## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. @@ -91,15 +100,14 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: - - $(this-folder)/Microsoft.AzureData/preview/2017-03-01-preview/azuredata.json + - $(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, +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/azuredata/resource-manager/readme.python.md b/specification/azuredata/resource-manager/readme.python.md index bf6a13faa44e..dfc534e650b1 100644 --- a/specification/azuredata/resource-manager/readme.python.md +++ b/specification/azuredata/resource-manager/readme.python.md @@ -10,7 +10,7 @@ python: payload-flattening-threshold: 2 namespace: Microsoft.AzureData package-name: azuredata - package-version: 2017-03-01-preview + package-version: 2019-07-24 clear-output-folder: true ``` @@ -18,4 +18,4 @@ python: python: no-namespace-folders: true output-folder: $(python-sdks-folder)/azure-mgmt/azuredata -``` +``` \ No newline at end of file diff --git a/specification/azuredata/resource-manager/readme.ruby.md b/specification/azuredata/resource-manager/readme.ruby.md index 29cb0b76fa8f..93221f0c2e2d 100644 --- a/specification/azuredata/resource-manager/readme.ruby.md +++ b/specification/azuredata/resource-manager/readme.ruby.md @@ -4,16 +4,16 @@ These settings apply only when `--ruby` is specified on the command line. ```yaml package-name: azure_mgmt_azuredata -package-version: 2017-03-01-preview +package-version: 2019-07-24 azure-arm: true ``` -### Tag: package-2017-03-01-preview and ruby +### Tag: package-2019-07-24 and ruby -These settings apply only when `--tag=package-2017-03-01-preview --ruby` is specified on the command line. +These settings apply only when `--tag=package-2019-07-24 --ruby` is specified on the command line. Please also specify `--ruby-sdks-folder=`. -```yaml $(tag) == 'package-2017-03-01-preview' && $(ruby) +```yaml $(tag) == 'package-2019-07-24' && $(ruby) namespace: Microsoft.AzureData output-folder: $(ruby-sdks-folder)/azuredata -``` +``` \ No newline at end of file diff --git a/specification/azurestack/resource-manager/Microsoft.AzureStack/stable/2017-06-01/AzureStack.json b/specification/azurestack/resource-manager/Microsoft.AzureStack/stable/2017-06-01/AzureStack.json index 29848118296c..6afb591f359f 100644 --- a/specification/azurestack/resource-manager/Microsoft.AzureStack/stable/2017-06-01/AzureStack.json +++ b/specification/azurestack/resource-manager/Microsoft.AzureStack/stable/2017-06-01/AzureStack.json @@ -44,6 +44,86 @@ "nextLinkName": "nextLink" } } + }, + "/providers/Microsoft.AzureStack/cloudManifestFiles": { + "get": { + "x-ms-examples": { + "Returns the properties of a cloud specific manifest file with latest version.": { + "$ref": "examples/CloudManifestFile/List.json" + } + }, + "tags": [ + "AzureStack" + ], + "description": "Returns a cloud specific manifest JSON file with latest version.", + "operationId": "CloudManifestFile_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CloudManifestFileResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.AzureStack/cloudManifestFiles/{verificationVersion}": { + "get": { + "x-ms-examples": { + "Returns the properties of a cloud specific manifest file.": { + "$ref": "examples/CloudManifestFile/Get.json" + } + }, + "tags": [ + "AzureStack" + ], + "description": "Returns a cloud specific manifest JSON file.", + "operationId": "CloudManifestFile_Get", + "parameters": [ + { + "name": "verificationVersion", + "in": "path", + "description": "Signing verification key version.", + "required": true, + "type": "string" + }, + { + "name": "versionCreationDate", + "in": "query", + "description": "Signing verification key version creation date.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CloudManifestFileResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } } }, "definitions": { @@ -191,6 +271,68 @@ } } }, + "CloudManifestFileResponse": { + "description": "Cloud specific manifest GET response.", + "type": "object", + "properties": { + "properties": { + "description": "Cloud specific manifest data.", + "$ref": "#/definitions/CloudManifestFileProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ] + }, + "CloudManifestFileProperties": { + "description": "Cloud specific manifest JSON properties.", + "type": "object", + "properties": { + "deploymentData": { + "description": "Cloud specific manifest data.", + "$ref": "#/definitions/CloudManifestFileDeploymentData" + }, + "signature": { + "description": "Signature of the cloud specific manifest data.", + "type": "string" + } + } + }, + "CloudManifestFileDeploymentData": { + "description": "Cloud specific manifest data for AzureStack deployment.", + "type": "object", + "properties": { + "externalDsmsCertificates": { + "description": "Dsms external certificates.", + "type": "string" + }, + "customCloudVerificationKey": { + "description": "Signing verification public key.", + "type": "string" + }, + "customEnvironmentEndpoints": { + "description": "Environment endpoints.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CloudManifestFileEnvironmentEndpoints" + } + } + }, + "CloudManifestFileEnvironmentEndpoints": { + "description": "Cloud specific environment endpoints for AzureStack deployment.", + "type": "object", + "properties": { + "customCloudArmEndpoint": { + "description": "ARM endpoint.", + "type": "string" + }, + "externalDsmsEndpoint": { + "description": "Dsms endpoint.", + "type": "string" + } + } + }, "ErrorDetails": { "description": "The details of the error.", "properties": { diff --git a/specification/azurestack/resource-manager/Microsoft.AzureStack/stable/2017-06-01/examples/CloudManifestFile/Get.json b/specification/azurestack/resource-manager/Microsoft.AzureStack/stable/2017-06-01/examples/CloudManifestFile/Get.json new file mode 100644 index 000000000000..7552a85e4d63 --- /dev/null +++ b/specification/azurestack/resource-manager/Microsoft.AzureStack/stable/2017-06-01/examples/CloudManifestFile/Get.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "verificationVersion": "latest", + "api-version": "2017-06-01" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.AzureStack/cloudManifestFiles/latest", + "name": "latest", + "type": "Microsoft.AzureStack/cloudManifestFiles", + "properties": { + "deploymentData": { + "externalDsmsCertificates": "", + "customCloudVerificationKey": "", + "customEnvironmentEndpoints": { + "customCloudArmEndpoint": "https://management.azure.microsoft.scloud/", + "externalDsmsEndpoint": "https://global-dsms.dsms.core.microsoft.scloud/dsms/issuercertificates" + } + }, + "signature": "" + } + } + } + } +} diff --git a/specification/azurestack/resource-manager/Microsoft.AzureStack/stable/2017-06-01/examples/CloudManifestFile/List.json b/specification/azurestack/resource-manager/Microsoft.AzureStack/stable/2017-06-01/examples/CloudManifestFile/List.json new file mode 100644 index 000000000000..3c07c3d46355 --- /dev/null +++ b/specification/azurestack/resource-manager/Microsoft.AzureStack/stable/2017-06-01/examples/CloudManifestFile/List.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2017-06-01" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.AzureStack/cloudManifestFiles/latest", + "name": "latest", + "type": "Microsoft.AzureStack/cloudManifestFiles", + "properties": { + "deploymentData": { + "externalDsmsCertificates": "", + "customCloudVerificationKey": "", + "customEnvironmentEndpoints": { + "customCloudArmEndpoint": "https://management.azure.microsoft.scloud/", + "externalDsmsEndpoint": "https://global-dsms.dsms.core.microsoft.scloud/dsms/issuercertificates" + } + }, + "signature": "" + } + } + } + } +} diff --git a/specification/azurestack/resource-manager/Microsoft.AzureStack/stable/2017-06-01/examples/Operation/List.json b/specification/azurestack/resource-manager/Microsoft.AzureStack/stable/2017-06-01/examples/Operation/List.json index 11a9af187566..03cb6984d239 100644 --- a/specification/azurestack/resource-manager/Microsoft.AzureStack/stable/2017-06-01/examples/Operation/List.json +++ b/specification/azurestack/resource-manager/Microsoft.AzureStack/stable/2017-06-01/examples/Operation/List.json @@ -105,6 +105,16 @@ }, "origin": "user,system" }, + { + "name": "Microsoft.AzureStack/cloudManifestFiles/read", + "display": { + "provider": "Azure Stack Resource Provider.", + "resource": "Azure Stack Cloud Manifest File", + "operation": "Read Resource Provider Operations", + "description": "Gets the cloud specific manifest file." + }, + "origin": "user,system" + }, { "name": "Microsoft.AzureStack/Operations/read", "display": { diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/BatchService.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/BatchService.json new file mode 100644 index 000000000000..4cb90f36b1e5 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/BatchService.json @@ -0,0 +1,16637 @@ +{ + "swagger": "2.0", + "info": { + "title": "BatchService", + "version": "2020-03-01.11.0", + "description": "A client for issuing REST requests to the Azure Batch service.", + "x-ms-code-generation-settings": { + "name": "BatchServiceClient" + } + }, + "x-ms-parameterized-host": { + "hostTemplate": "{batchUrl}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/batchUrl" + } + ] + }, + "schemes": [ + "https" + ], + "consumes": [ + "application/json; odata=minimalmetadata" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + }, + { + "api_key": [] + } + ], + "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" + } + }, + "api_key": { + "type": "apiKey", + "name": "Authorization", + "in": "header" + } + }, + "paths": { + "/applications": { + "get": { + "tags": [ + "Applications" + ], + "x-ms-pageable": { + "nextLinkName": "odata.nextLink" + }, + "operationId": "Application_List", + "x-ms-examples": { + "List applications": { + "$ref": "./examples/ApplicationList.json" + } + }, + "summary": "Lists all of the applications available in the specified Account.", + "description": "This operation returns only Applications and versions that are available for use on Compute Nodes; that is, that can be used in an Package reference. For administrator information about applications and versions that are not yet available to Compute Nodes, use the Azure portal or the Azure Resource Manager API.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "maxresults", + "x-ms-client-name": "maxResults", + "default": 1000, + "minimum": 1, + "maximum": 1000, + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The maximum number of items to return in the response. A maximum of 1000 applications can be returned.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + } + }, + "description": "A response containing the list of applications.", + "schema": { + "$ref": "#/definitions/ApplicationListResult" + } + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/applications/{applicationId}": { + "get": { + "tags": [ + "Applications" + ], + "operationId": "Application_Get", + "x-ms-examples": { + "Get applications": { + "$ref": "./examples/ApplicationGet.json" + } + }, + "summary": "Gets information about the specified Application.", + "description": "This operation returns only Applications and versions that are available for use on Compute Nodes; that is, that can be used in an Package reference. For administrator information about Applications and versions that are not yet available to Compute Nodes, use the Azure portal or the Azure Resource Manager API.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "applicationId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Application." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + } + }, + "description": "A response containing the application.", + "schema": { + "$ref": "#/definitions/ApplicationSummary" + } + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/poolusagemetrics": { + "get": { + "tags": [ + "Pools" + ], + "x-ms-pageable": { + "nextLinkName": "odata.nextLink" + }, + "operationId": "Pool_ListUsageMetrics", + "x-ms-examples": { + "Pool list usage metrics": { + "$ref": "./examples/PoolListUsageMetrics.json" + } + }, + "summary": "Lists the usage metrics, aggregated by Pool across individual time intervals, for the specified Account.", + "description": "If you do not specify a $filter clause including a poolId, the response includes all Pools that existed in the Account in the time range of the returned aggregation intervals. If you do not specify a $filter clause including a startTime or endTime these filters default to the start and end times of the last aggregation interval currently available; that is, only the last aggregation interval is returned.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "starttime", + "x-ms-client-name": "startTime", + "in": "query", + "required": false, + "type": "string", + "format": "date-time", + "description": "The earliest time from which to include metrics. This must be at least two and a half hours before the current time. If not specified this defaults to the start time of the last aggregation interval currently available.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "endtime", + "x-ms-client-name": "endTime", + "in": "query", + "required": false, + "type": "string", + "format": "date-time", + "description": "The latest time from which to include metrics. This must be at least two hours before the current time. If not specified this defaults to the end time of the last aggregation interval currently available.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-account-usage-metrics.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "maxresults", + "x-ms-client-name": "maxResults", + "default": 1000, + "minimum": 1, + "maximum": 1000, + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The maximum number of items to return in the response. A maximum of 1000 results will be returned.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + } + }, + "description": "A response containing the list of Pool usage details.", + "schema": { + "$ref": "#/definitions/PoolListUsageMetricsResult" + } + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/supportedimages": { + "get": { + "tags": [ + "Accounts" + ], + "x-ms-pageable": { + "nextLinkName": "odata.nextLink" + }, + "operationId": "Account_ListSupportedImages", + "x-ms-examples": { + "Account list node agent skus": { + "$ref": "./examples/AccountListSupportedImages.json" + } + }, + "summary": "Lists all Virtual Machine Images supported by the Azure Batch service.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-support-images.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "maxresults", + "x-ms-client-name": "maxResults", + "default": 1000, + "minimum": 1, + "maximum": 1000, + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The maximum number of items to return in the response. A maximum of 1000 results will be returned.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + } + }, + "description": "A response containing the list of supported Virtual Machine Images.", + "schema": { + "$ref": "#/definitions/AccountListSupportedImagesResult" + } + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/nodecounts": { + "get": { + "x-ms-pageable": { + "nextLinkName": "odata.nextLink" + }, + "tags": [ + "Accounts" + ], + "operationId": "Account_ListPoolNodeCounts", + "description": "Gets the number of Compute Nodes in each state, grouped by Pool.", + "x-ms-examples": { + "NodeCountsPayload": { + "$ref": "./examples/AccountListPoolNodeCounts.json" + } + }, + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "maxresults", + "x-ms-client-name": "maxResults", + "default": 10, + "minimum": 1, + "maximum": 10, + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The maximum number of items to return in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + } + }, + "description": "The response contains the number of Compute Nodes in each Compute Node state, grouped by Pool.", + "schema": { + "$ref": "#/definitions/PoolNodeCountsListResult" + } + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/lifetimepoolstats": { + "get": { + "tags": [ + "Pools" + ], + "operationId": "Pool_GetAllLifetimeStatistics", + "x-ms-examples": { + "Pool get lifetime statistics": { + "$ref": "./examples/PoolGetLifetimeStatistics.json" + } + }, + "summary": "Gets lifetime summary statistics for all of the Pools in the specified Account.", + "description": "Statistics are aggregated across all Pools that have ever existed in the Account, from Account creation to the last update time of the statistics. The statistics may not be immediately available. The Batch service performs periodic roll-up of statistics. The typical delay is about 30 minutes.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + } + }, + "description": "A response containing the Pool statistics for the lifetime of the Batch Account.", + "schema": { + "$ref": "#/definitions/PoolStatistics" + } + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/lifetimejobstats": { + "get": { + "tags": [ + "Jobs" + ], + "operationId": "Job_GetAllLifetimeStatistics", + "x-ms-examples": { + "Job get lifetime statistics": { + "$ref": "./examples/JobGetLifetimeStatistics.json" + } + }, + "summary": "Gets lifetime summary statistics for all of the Jobs in the specified Account.", + "description": "Statistics are aggregated across all Jobs that have ever existed in the Account, from Account creation to the last update time of the statistics. The statistics may not be immediately available. The Batch service performs periodic roll-up of statistics. The typical delay is about 30 minutes.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + } + }, + "description": "A response containing the Job statistics for the lifetime of the Batch Account.", + "schema": { + "$ref": "#/definitions/JobStatistics" + } + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/certificates": { + "post": { + "tags": [ + "Certificates" + ], + "operationId": "Certificate_Add", + "x-ms-examples": { + "Certificate add": { + "$ref": "./examples/CertificateAdd.json" + } + }, + "summary": "Adds a Certificate to the specified Account.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "certificate", + "in": "body", + "description": "The Certificate to be added.", + "required": true, + "schema": { + "$ref": "#/definitions/CertificateAddParameter" + } + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + }, + "get": { + "tags": [ + "Certificates" + ], + "x-ms-pageable": { + "nextLinkName": "odata.nextLink" + }, + "operationId": "Certificate_List", + "x-ms-examples": { + "Certificate list": { + "$ref": "./examples/CertificateList.json" + } + }, + "summary": "Lists all of the Certificates that have been added to the specified Account.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-certificates.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $select clause.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "maxresults", + "x-ms-client-name": "maxResults", + "default": 1000, + "minimum": 1, + "maximum": 1000, + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The maximum number of items to return in the response. A maximum of 1000 Certificates can be returned.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + } + }, + "description": "A response containing the list of Certificates.", + "schema": { + "$ref": "#/definitions/CertificateListResult" + } + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/certificates(thumbprintAlgorithm={thumbprintAlgorithm},thumbprint={thumbprint})/canceldelete": { + "post": { + "tags": [ + "Certificates" + ], + "operationId": "Certificate_CancelDeletion", + "x-ms-examples": { + "Certificate cancel delete": { + "$ref": "./examples/CertificateCancelDelete.json" + } + }, + "summary": "Cancels a failed deletion of a Certificate from the specified Account.", + "description": "If you try to delete a Certificate that is being used by a Pool or Compute Node, the status of the Certificate changes to deleteFailed. If you decide that you want to continue using the Certificate, you can use this operation to set the status of the Certificate back to active. If you intend to delete the Certificate, you do not need to run this operation after the deletion failed. You must make sure that the Certificate is not being used by any resources, and then you can try again to delete the Certificate.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "thumbprintAlgorithm", + "in": "path", + "required": true, + "type": "string", + "description": "The algorithm used to derive the thumbprint parameter. This must be sha1." + }, + { + "name": "thumbprint", + "in": "path", + "required": true, + "type": "string", + "description": "The thumbprint of the Certificate being deleted." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/certificates(thumbprintAlgorithm={thumbprintAlgorithm},thumbprint={thumbprint})": { + "delete": { + "tags": [ + "Certificates" + ], + "operationId": "Certificate_Delete", + "x-ms-examples": { + "Certificate delete": { + "$ref": "./examples/CertificateDelete.json" + } + }, + "summary": "Deletes a Certificate from the specified Account.", + "description": "You cannot delete a Certificate if a resource (Pool or Compute Node) is using it. Before you can delete a Certificate, you must therefore make sure that the Certificate is not associated with any existing Pools, the Certificate is not installed on any Nodes (even if you remove a Certificate from a Pool, it is not removed from existing Compute Nodes in that Pool until they restart), and no running Tasks depend on the Certificate. If you try to delete a Certificate that is in use, the deletion fails. The Certificate status changes to deleteFailed. You can use Cancel Delete Certificate to set the status back to active if you decide that you want to continue using the Certificate.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "thumbprintAlgorithm", + "in": "path", + "required": true, + "type": "string", + "description": "The algorithm used to derive the thumbprint parameter. This must be sha1." + }, + { + "name": "thumbprint", + "in": "path", + "required": true, + "type": "string", + "description": "The thumbprint of the Certificate to be deleted." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + }, + "get": { + "tags": [ + "Certificates" + ], + "operationId": "Certificate_Get", + "x-ms-examples": { + "Certificate get": { + "$ref": "./examples/CertificateGet.json" + } + }, + "description": "Gets information about the specified Certificate.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "thumbprintAlgorithm", + "in": "path", + "required": true, + "type": "string", + "description": "The algorithm used to derive the thumbprint parameter. This must be sha1." + }, + { + "name": "thumbprint", + "in": "path", + "required": true, + "type": "string", + "description": "The thumbprint of the Certificate to get." + }, + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $select clause.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + } + }, + "description": "A response containing the Certificate.", + "schema": { + "$ref": "#/definitions/Certificate" + } + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/jobs/{jobId}/tasks/{taskId}/files/{filePath}": { + "delete": { + "tags": [ + "Files" + ], + "operationId": "File_DeleteFromTask", + "x-ms-examples": { + "File delete from task": { + "$ref": "./examples/FileDeleteFromTask.json" + } + }, + "summary": "Deletes the specified Task file from the Compute Node where the Task ran.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "jobId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Job that contains the Task." + }, + { + "name": "taskId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Task whose file you want to delete." + }, + { + "name": "filePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path to the Task file or directory that you want to delete." + }, + { + "name": "recursive", + "in": "query", + "required": false, + "type": "boolean", + "description": "Whether to delete children of a directory. If the filePath parameter represents a directory instead of a file, you can set recursive to true to delete the directory and all of the files and subdirectories in it. If recursive is false then the directory must be empty or deletion will fail." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + }, + "get": { + "tags": [ + "Files" + ], + "operationId": "File_GetFromTask", + "x-ms-examples": { + "Get File From Task": { + "$ref": "./examples/FileGetFromTask.json" + } + }, + "description": "Returns the content of the specified Task file.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "jobId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Job that contains the Task." + }, + { + "name": "taskId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Task whose file you want to retrieve." + }, + { + "name": "filePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path to the Task file that you want to get the content of." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-range", + "in": "header", + "required": false, + "type": "string", + "description": "The byte range to be retrieved. The default is to retrieve the entire file. The format is bytes=startRange-endRange.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Modified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "produces": [ + "application/json", + "application/octet-stream" + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "ocp-creation-time": { + "description": "The file creation time.", + "type": "string", + "format": "date-time-rfc1123" + }, + "ocp-batch-file-isdirectory": { + "description": "Whether the object represents a directory.", + "type": "boolean" + }, + "ocp-batch-file-url": { + "description": "The URL of the file.", + "type": "string" + }, + "ocp-batch-file-mode": { + "description": "The file mode attribute in octal format.", + "type": "string" + }, + "Content-Type": { + "description": "The content type of the file.", + "type": "string" + }, + "Content-Length": { + "description": "The length of the file.", + "type": "integer", + "format": "int64" + } + }, + "description": "A response containing the file content.", + "schema": { + "type": "object", + "format": "file" + } + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + }, + "head": { + "tags": [ + "Files" + ], + "operationId": "File_GetPropertiesFromTask", + "x-ms-examples": { + "File get properties from task": { + "$ref": "./examples/FileGetPropertiesFromTask.json" + } + }, + "description": "Gets the properties of the specified Task file.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "jobId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Job that contains the Task." + }, + { + "name": "taskId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Task whose file you want to get the properties of." + }, + { + "name": "filePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path to the Task file that you want to get the properties of." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Modified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "ocp-creation-time": { + "description": "The file creation time.", + "type": "string", + "format": "date-time-rfc1123" + }, + "ocp-batch-file-isdirectory": { + "description": "Whether the object represents a directory.", + "type": "boolean" + }, + "ocp-batch-file-url": { + "description": "The URL of the file.", + "type": "string" + }, + "ocp-batch-file-mode": { + "description": "The file mode attribute in octal format.", + "type": "string" + }, + "Content-Type": { + "description": "The content type of the file.", + "type": "string" + }, + "Content-Length": { + "description": "The length of the file.", + "type": "integer", + "format": "int64" + } + }, + "description": "A response containing the file properties." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/pools/{poolId}/nodes/{nodeId}/files/{filePath}": { + "delete": { + "tags": [ + "Files" + ], + "operationId": "File_DeleteFromComputeNode", + "x-ms-examples": { + "File delete from node": { + "$ref": "./examples/FileDeleteFromNode.json" + } + }, + "summary": "Deletes the specified file from the Compute Node.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "poolId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Pool that contains the Compute Node." + }, + { + "name": "nodeId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Compute Node from which you want to delete the file." + }, + { + "name": "filePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path to the file or directory that you want to delete." + }, + { + "name": "recursive", + "in": "query", + "required": false, + "type": "boolean", + "description": "Whether to delete children of a directory. If the filePath parameter represents a directory instead of a file, you can set recursive to true to delete the directory and all of the files and subdirectories in it. If recursive is false then the directory must be empty or deletion will fail." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + }, + "get": { + "tags": [ + "Files" + ], + "operationId": "File_GetFromComputeNode", + "x-ms-examples": { + "Get File From Compute Node": { + "$ref": "./examples/FileGetFromNode.json" + } + }, + "description": "Returns the content of the specified Compute Node file.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "poolId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Pool that contains the Compute Node." + }, + { + "name": "nodeId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Compute Node that contains the file." + }, + { + "name": "filePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path to the Compute Node file that you want to get the content of." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-range", + "in": "header", + "required": false, + "type": "string", + "description": "The byte range to be retrieved. The default is to retrieve the entire file. The format is bytes=startRange-endRange.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Modified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "produces": [ + "application/json", + "application/octet-stream" + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "ocp-creation-time": { + "description": "The file creation time.", + "type": "string", + "format": "date-time-rfc1123" + }, + "ocp-batch-file-isdirectory": { + "description": "Whether the object represents a directory.", + "type": "boolean" + }, + "ocp-batch-file-url": { + "description": "The URL of the file.", + "type": "string" + }, + "ocp-batch-file-mode": { + "description": "The file mode attribute in octal format.", + "type": "string" + }, + "Content-Type": { + "description": "The content type of the file.", + "type": "string" + }, + "Content-Length": { + "description": "The length of the file.", + "type": "integer", + "format": "int64" + } + }, + "description": "The file content.", + "schema": { + "type": "object", + "format": "file" + } + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + }, + "head": { + "tags": [ + "Files" + ], + "operationId": "File_GetPropertiesFromComputeNode", + "x-ms-examples": { + "File get properties from node": { + "$ref": "./examples/FileGetPropertiesFromNode.json" + } + }, + "description": "Gets the properties of the specified Compute Node file.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "poolId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Pool that contains the Compute Node." + }, + { + "name": "nodeId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Compute Node that contains the file." + }, + { + "name": "filePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path to the Compute Node file that you want to get the properties of." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Modified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "ocp-creation-time": { + "description": "The file creation time.", + "type": "string", + "format": "date-time-rfc1123" + }, + "ocp-batch-file-isdirectory": { + "description": "Whether the object represents a directory.", + "type": "boolean" + }, + "ocp-batch-file-url": { + "description": "The URL of the file.", + "type": "string" + }, + "ocp-batch-file-mode": { + "description": "The file mode attribute in octal format.", + "type": "string" + }, + "Content-Type": { + "description": "The content type of the file.", + "type": "string" + }, + "Content-Length": { + "description": "The length of the file.", + "type": "integer", + "format": "int64" + } + }, + "description": "A response containing the file properties." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/jobs/{jobId}/tasks/{taskId}/files": { + "get": { + "tags": [ + "Files" + ], + "x-ms-pageable": { + "nextLinkName": "odata.nextLink" + }, + "operationId": "File_ListFromTask", + "x-ms-examples": { + "File list from task": { + "$ref": "./examples/FileListFromTask.json" + } + }, + "summary": "Lists the files in a Task's directory on its Compute Node.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "jobId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Job that contains the Task." + }, + { + "name": "taskId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Task whose files you want to list." + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-task-files.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "recursive", + "in": "query", + "required": false, + "type": "boolean", + "description": "Whether to list children of the Task directory. This parameter can be used in combination with the filter parameter to list specific type of files." + }, + { + "name": "maxresults", + "x-ms-client-name": "maxResults", + "default": 1000, + "minimum": 1, + "maximum": 1000, + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The maximum number of items to return in the response. A maximum of 1000 files can be returned.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + } + }, + "description": "A response containing the list of files.", + "schema": { + "$ref": "#/definitions/NodeFileListResult" + } + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/pools/{poolId}/nodes/{nodeId}/files": { + "get": { + "tags": [ + "Files" + ], + "x-ms-pageable": { + "nextLinkName": "odata.nextLink" + }, + "operationId": "File_ListFromComputeNode", + "x-ms-examples": { + "File list from node": { + "$ref": "./examples/FileListFromNode.json" + } + }, + "summary": "Lists all of the files in Task directories on the specified Compute Node.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "poolId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Pool that contains the Compute Node." + }, + { + "name": "nodeId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Compute Node whose files you want to list." + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-compute-node-files.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "recursive", + "in": "query", + "required": false, + "type": "boolean", + "description": "Whether to list children of a directory." + }, + { + "name": "maxresults", + "x-ms-client-name": "maxResults", + "default": 1000, + "minimum": 1, + "maximum": 1000, + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The maximum number of items to return in the response. A maximum of 1000 files can be returned.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + } + }, + "description": "A response containing the list of files.", + "schema": { + "$ref": "#/definitions/NodeFileListResult" + } + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/jobschedules/{jobScheduleId}": { + "head": { + "tags": [ + "JobSchedules" + ], + "operationId": "JobSchedule_Exists", + "x-ms-examples": { + "Check Job Schedule Exists": { + "$ref": "./examples/JobScheduleExists.json" + } + }, + "summary": "Checks the specified Job Schedule exists.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "jobScheduleId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Job Schedule which you want to check." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service exactly matches the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service does not match the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Modified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + } + }, + "description": "A response containing headers related to the Job Schedule, if it exists." + }, + "404": { + "description": "The Job Schedule does not exist." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + }, + "delete": { + "tags": [ + "JobSchedules" + ], + "operationId": "JobSchedule_Delete", + "x-ms-examples": { + "JobSchedule delete": { + "$ref": "./examples/JobScheduleDelete.json" + } + }, + "summary": "Deletes a Job Schedule from the specified Account.", + "description": "When you delete a Job Schedule, this also deletes all Jobs and Tasks under that schedule. When Tasks are deleted, all the files in their working directories on the Compute Nodes are also deleted (the retention period is ignored). The Job Schedule statistics are no longer accessible once the Job Schedule is deleted, though they are still counted towards Account lifetime statistics.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "jobScheduleId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Job Schedule to delete." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service exactly matches the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service does not match the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Modified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + }, + "get": { + "tags": [ + "JobSchedules" + ], + "operationId": "JobSchedule_Get", + "x-ms-examples": { + "JobSchedule get": { + "$ref": "./examples/JobScheduleGet.json" + } + }, + "description": "Gets information about the specified Job Schedule.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "jobScheduleId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Job Schedule to get." + }, + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $select clause.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $expand clause.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service exactly matches the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service does not match the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Modified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + } + }, + "description": "A response containing the Job Schedule.", + "schema": { + "$ref": "#/definitions/CloudJobSchedule" + } + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + }, + "patch": { + "tags": [ + "JobSchedules" + ], + "operationId": "JobSchedule_Patch", + "x-ms-examples": { + "JobSchedule patch": { + "$ref": "./examples/JobSchedulePatch.json" + } + }, + "summary": "Updates the properties of the specified Job Schedule.", + "description": "This replaces only the Job Schedule properties specified in the request. For example, if the schedule property is not specified with this request, then the Batch service will keep the existing schedule. Changes to a Job Schedule only impact Jobs created by the schedule after the update has taken place; currently running Jobs are unaffected.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "jobScheduleId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Job Schedule to update." + }, + { + "name": "jobSchedulePatchParameter", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/JobSchedulePatchParameter" + }, + "description": "The parameters for the request." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service exactly matches the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service does not match the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Modified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + }, + "put": { + "tags": [ + "JobSchedules" + ], + "operationId": "JobSchedule_Update", + "x-ms-examples": { + "JobSchedule update": { + "$ref": "./examples/JobScheduleUpdate.json" + } + }, + "summary": "Updates the properties of the specified Job Schedule.", + "description": "This fully replaces all the updatable properties of the Job Schedule. For example, if the schedule property is not specified with this request, then the Batch service will remove the existing schedule. Changes to a Job Schedule only impact Jobs created by the schedule after the update has taken place; currently running Jobs are unaffected.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "jobScheduleId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Job Schedule to update." + }, + { + "name": "jobScheduleUpdateParameter", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/JobScheduleUpdateParameter" + }, + "description": "The parameters for the request." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service exactly matches the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service does not match the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Modified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/jobschedules/{jobScheduleId}/disable": { + "post": { + "tags": [ + "JobSchedules" + ], + "operationId": "JobSchedule_Disable", + "x-ms-examples": { + "JobSchedule disable": { + "$ref": "./examples/JobScheduleDisable.json" + } + }, + "summary": "Disables a Job Schedule.", + "description": "No new Jobs will be created until the Job Schedule is enabled again.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "jobScheduleId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Job Schedule to disable." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service exactly matches the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service does not match the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Modified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/jobschedules/{jobScheduleId}/enable": { + "post": { + "tags": [ + "JobSchedules" + ], + "operationId": "JobSchedule_Enable", + "x-ms-examples": { + "JobSchedule enable": { + "$ref": "./examples/JobScheduleEnable.json" + } + }, + "summary": "Enables a Job Schedule.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "jobScheduleId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Job Schedule to enable." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service exactly matches the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service does not match the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Modified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/jobschedules/{jobScheduleId}/terminate": { + "post": { + "tags": [ + "JobSchedules" + ], + "operationId": "JobSchedule_Terminate", + "x-ms-examples": { + "JobSchedule terminate": { + "$ref": "./examples/JobScheduleTerminate.json" + } + }, + "summary": "Terminates a Job Schedule.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "jobScheduleId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Job Schedule to terminates." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service exactly matches the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service does not match the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Modified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/jobschedules": { + "post": { + "tags": [ + "JobSchedules" + ], + "operationId": "JobSchedule_Add", + "x-ms-examples": { + "Add a basic JobSchedule": { + "$ref": "./examples/JobScheduleAdd_Basic.json" + }, + "Add a complex JobScheduleAdd": { + "$ref": "./examples/JobScheduleAdd_Complex.json" + } + }, + "summary": "Adds a Job Schedule to the specified Account.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "cloudJobSchedule", + "in": "body", + "description": "The Job Schedule to be added.", + "required": true, + "schema": { + "$ref": "#/definitions/JobScheduleAddParameter" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + }, + "get": { + "tags": [ + "JobSchedules" + ], + "x-ms-pageable": { + "nextLinkName": "odata.nextLink" + }, + "operationId": "JobSchedule_List", + "x-ms-examples": { + "JobSchedule list": { + "$ref": "./examples/JobScheduleList.json" + } + }, + "summary": "Lists all of the Job Schedules in the specified Account.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-job-schedules.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $select clause.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $expand clause.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "maxresults", + "x-ms-client-name": "maxResults", + "default": 1000, + "minimum": 1, + "maximum": 1000, + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The maximum number of items to return in the response. A maximum of 1000 Job Schedules can be returned.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + } + }, + "description": "A response containing the list of Job Schedules.", + "schema": { + "$ref": "#/definitions/CloudJobScheduleListResult" + } + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/jobs/{jobId}": { + "delete": { + "tags": [ + "Jobs" + ], + "operationId": "Job_Delete", + "x-ms-examples": { + "Delete Job": { + "$ref": "./examples/JobDelete.json" + } + }, + "summary": "Deletes a Job.", + "description": "Deleting a Job also deletes all Tasks that are part of that Job, and all Job statistics. This also overrides the retention period for Task data; that is, if the Job contains Tasks which are still retained on Compute Nodes, the Batch services deletes those Tasks' working directories and all their contents. When a Delete Job request is received, the Batch service sets the Job to the deleting state. All update operations on a Job that is in deleting state will fail with status code 409 (Conflict), with additional information indicating that the Job is being deleted.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "jobId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Job to delete." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service exactly matches the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service does not match the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Modified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + }, + "get": { + "tags": [ + "Jobs" + ], + "operationId": "Job_Get", + "x-ms-examples": { + "Job get": { + "$ref": "./examples/JobGet.json" + } + }, + "summary": "Gets information about the specified Job.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "jobId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Job." + }, + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $select clause.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $expand clause.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service exactly matches the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service does not match the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Modified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + } + }, + "description": "A response containing the Job.", + "schema": { + "$ref": "#/definitions/CloudJob" + } + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + }, + "patch": { + "tags": [ + "Jobs" + ], + "operationId": "Job_Patch", + "x-ms-examples": { + "Job patch": { + "$ref": "./examples/JobPatch.json" + } + }, + "summary": "Updates the properties of the specified Job.", + "description": "This replaces only the Job properties specified in the request. For example, if the Job has constraints, and a request does not specify the constraints element, then the Job keeps the existing constraints.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "jobId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Job whose properties you want to update." + }, + { + "name": "jobPatchParameter", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/JobPatchParameter" + }, + "description": "The parameters for the request." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service exactly matches the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service does not match the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Modified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + }, + "put": { + "tags": [ + "Jobs" + ], + "operationId": "Job_Update", + "x-ms-examples": { + "Job update": { + "$ref": "./examples/JobUpdate.json" + } + }, + "summary": "Updates the properties of the specified Job.", + "description": "This fully replaces all the updatable properties of the Job. For example, if the Job has constraints associated with it and if constraints is not specified with this request, then the Batch service will remove the existing constraints.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "jobId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Job whose properties you want to update." + }, + { + "name": "jobUpdateParameter", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/JobUpdateParameter" + }, + "description": "The parameters for the request." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service exactly matches the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service does not match the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Modified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/jobs/{jobId}/disable": { + "post": { + "tags": [ + "Jobs" + ], + "operationId": "Job_Disable", + "x-ms-examples": { + "Job disable": { + "$ref": "./examples/JobDisable.json" + } + }, + "summary": "Disables the specified Job, preventing new Tasks from running.", + "description": "The Batch Service immediately moves the Job to the disabling state. Batch then uses the disableTasks parameter to determine what to do with the currently running Tasks of the Job. The Job remains in the disabling state until the disable operation is completed and all Tasks have been dealt with according to the disableTasks option; the Job then moves to the disabled state. No new Tasks are started under the Job until it moves back to active state. If you try to disable a Job that is in any state other than active, disabling, or disabled, the request fails with status code 409.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "jobId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Job to disable." + }, + { + "name": "jobDisableParameter", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/JobDisableParameter" + }, + "description": "The parameters for the request." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service exactly matches the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service does not match the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Modified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/jobs/{jobId}/enable": { + "post": { + "tags": [ + "Jobs" + ], + "operationId": "Job_Enable", + "x-ms-examples": { + "Job enable": { + "$ref": "./examples/JobEnable.json" + } + }, + "summary": "Enables the specified Job, allowing new Tasks to run.", + "description": "When you call this API, the Batch service sets a disabled Job to the enabling state. After the this operation is completed, the Job moves to the active state, and scheduling of new Tasks under the Job resumes. The Batch service does not allow a Task to remain in the active state for more than 180 days. Therefore, if you enable a Job containing active Tasks which were added more than 180 days ago, those Tasks will not run.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "jobId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Job to enable." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service exactly matches the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service does not match the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Modified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/jobs/{jobId}/terminate": { + "post": { + "tags": [ + "Jobs" + ], + "operationId": "Job_Terminate", + "x-ms-examples": { + "Job terminate": { + "$ref": "./examples/JobTerminate.json" + } + }, + "summary": "Terminates the specified Job, marking it as completed.", + "description": "When a Terminate Job request is received, the Batch service sets the Job to the terminating state. The Batch service then terminates any running Tasks associated with the Job and runs any required Job release Tasks. Then the Job moves into the completed state. If there are any Tasks in the Job in the active state, they will remain in the active state. Once a Job is terminated, new Tasks cannot be added and any remaining active Tasks will not be scheduled.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "jobId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Job to terminate." + }, + { + "name": "jobTerminateParameter", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/JobTerminateParameter" + }, + "description": "The parameters for the request." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service exactly matches the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service does not match the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Modified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/jobs": { + "post": { + "tags": [ + "Jobs" + ], + "operationId": "Job_Add", + "x-ms-examples": { + "Add a basic job": { + "$ref": "./examples/JobAdd_Basic.json" + }, + "Add a complex job": { + "$ref": "./examples/JobAdd_Complex.json" + } + }, + "summary": "Adds a Job to the specified Account.", + "description": "The Batch service supports two ways to control the work done as part of a Job. In the first approach, the user specifies a Job Manager Task. The Batch service launches this Task when it is ready to start the Job. The Job Manager Task controls all other Tasks that run under this Job, by using the Task APIs. In the second approach, the user directly controls the execution of Tasks under an active Job, by using the Task APIs. Also note: when naming Jobs, avoid including sensitive information such as user names or secret project names. This information may appear in telemetry logs accessible to Microsoft Support engineers.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "job", + "in": "body", + "description": "The Job to be added.", + "required": true, + "schema": { + "$ref": "#/definitions/JobAddParameter" + } + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + }, + "get": { + "tags": [ + "Jobs" + ], + "x-ms-pageable": { + "nextLinkName": "odata.nextLink" + }, + "operationId": "Job_List", + "x-ms-examples": { + "Job list": { + "$ref": "./examples/JobList.json" + } + }, + "summary": "Lists all of the Jobs in the specified Account.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-jobs.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $select clause.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $expand clause.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "maxresults", + "x-ms-client-name": "maxResults", + "default": 1000, + "minimum": 1, + "maximum": 1000, + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The maximum number of items to return in the response. A maximum of 1000 Jobs can be returned.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + } + }, + "description": "A response containing the list of Jobs.", + "schema": { + "$ref": "#/definitions/CloudJobListResult" + } + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/jobschedules/{jobScheduleId}/jobs": { + "get": { + "tags": [ + "Jobs" + ], + "x-ms-pageable": { + "nextLinkName": "odata.nextLink" + }, + "x-ms-examples": { + "List Job Under Job Schedule": { + "$ref": "./examples/JobListFromJobSchedule.json" + } + }, + "operationId": "Job_ListFromJobSchedule", + "summary": "Lists the Jobs that have been created under the specified Job Schedule.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "jobScheduleId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Job Schedule from which you want to get a list of Jobs." + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-jobs-in-a-job-schedule.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $select clause.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $expand clause.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "maxresults", + "x-ms-client-name": "maxResults", + "default": 1000, + "minimum": 1, + "maximum": 1000, + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The maximum number of items to return in the response. A maximum of 1000 Jobs can be returned.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + } + }, + "description": "A response containing the list of Jobs.", + "schema": { + "$ref": "#/definitions/CloudJobListResult" + } + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/jobs/{jobId}/jobpreparationandreleasetaskstatus": { + "get": { + "tags": [ + "Jobs" + ], + "x-ms-pageable": { + "nextLinkName": "odata.nextLink" + }, + "operationId": "Job_ListPreparationAndReleaseTaskStatus", + "x-ms-examples": { + "Job list preparation and release task status": { + "$ref": "./examples/JobListPreparationAndReleaseTaskStatus.json" + } + }, + "summary": "Lists the execution status of the Job Preparation and Job Release Task for the specified Job across the Compute Nodes where the Job has run.", + "description": "This API returns the Job Preparation and Job Release Task status on all Compute Nodes that have run the Job Preparation or Job Release Task. This includes Compute Nodes which have since been removed from the Pool. If this API is invoked on a Job which has no Job Preparation or Job Release Task, the Batch service returns HTTP status code 409 (Conflict) with an error code of JobPreparationTaskNotSpecified.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "jobId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Job." + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-job-preparation-and-release-status.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $select clause.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "maxresults", + "x-ms-client-name": "maxResults", + "default": 1000, + "minimum": 1, + "maximum": 1000, + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The maximum number of items to return in the response. A maximum of 1000 Tasks can be returned.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + } + }, + "description": "A response containing a list of Job Preparation and Job Release Task statuses.", + "schema": { + "$ref": "#/definitions/CloudJobListPreparationAndReleaseTaskStatusResult" + } + }, + "default": { + "description": "The error from the Batch service. If this API is invoked on a Job which has no Job Preparation or Job Release Task, the Batch service returns HTTP status code 409.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/jobs/{jobId}/taskcounts": { + "get": { + "tags": [ + "Jobs" + ], + "operationId": "Job_GetTaskCounts", + "x-ms-examples": { + "Job get task counts": { + "$ref": "./examples/JobGetTaskCounts.json" + } + }, + "summary": "Gets the Task counts for the specified Job.", + "description": "Task counts provide a count of the Tasks by active, running or completed Task state, and a count of Tasks which succeeded or failed. Tasks in the preparing state are counted as running.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "jobId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Job." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + } + }, + "description": "A response containing the Task counts for the specified Job.", + "schema": { + "$ref": "#/definitions/TaskCounts" + } + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/pools": { + "post": { + "tags": [ + "Pools" + ], + "operationId": "Pool_Add", + "x-ms-examples": { + "Add a CloudServiceConfiguration pool": { + "$ref": "./examples/PoolAdd_CloudServiceConfiguration.json" + }, + "Add a VirtualMachineConfiguration pool": { + "$ref": "./examples/PoolAdd_VirtualMachineConfiguration.json" + }, + "Add a VirtualMachineConfiguration pool with containers": { + "$ref": "./examples/PoolAdd_VirtualMachineConfigurationWithContainers.json" + }, + "Add a pool with mount drive specified": { + "$ref": "./examples/PoolAdd_MountConfiguration.json" + } + }, + "summary": "Adds a Pool to the specified Account.", + "description": "When naming Pools, avoid including sensitive information such as user names or secret project names. This information may appear in telemetry logs accessible to Microsoft Support engineers.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "pool", + "in": "body", + "description": "The Pool to be added.", + "required": true, + "schema": { + "$ref": "#/definitions/PoolAddParameter" + } + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + }, + "get": { + "tags": [ + "Pools" + ], + "x-ms-pageable": { + "nextLinkName": "odata.nextLink" + }, + "operationId": "Pool_List", + "x-ms-examples": { + "Pool list": { + "$ref": "./examples/PoolList_Basic.json" + } + }, + "summary": "Lists all of the Pools in the specified Account.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-pools.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $select clause.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $expand clause.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "maxresults", + "x-ms-client-name": "maxResults", + "default": 1000, + "minimum": 1, + "maximum": 1000, + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The maximum number of items to return in the response. A maximum of 1000 Pools can be returned.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + } + }, + "description": "A response containing the list of Pools.", + "schema": { + "$ref": "#/definitions/CloudPoolListResult" + } + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/pools/{poolId}": { + "delete": { + "tags": [ + "Pools" + ], + "operationId": "Pool_Delete", + "x-ms-examples": { + "Pool delete": { + "$ref": "./examples/PoolDelete.json" + } + }, + "summary": "Deletes a Pool from the specified Account.", + "description": "When you request that a Pool be deleted, the following actions occur: the Pool state is set to deleting; any ongoing resize operation on the Pool are stopped; the Batch service starts resizing the Pool to zero Compute Nodes; any Tasks running on existing Compute Nodes are terminated and requeued (as if a resize Pool operation had been requested with the default requeue option); finally, the Pool is removed from the system. Because running Tasks are requeued, the user can rerun these Tasks by updating their Job to target a different Pool. The Tasks can then run on the new Pool. If you want to override the requeue behavior, then you should call resize Pool explicitly to shrink the Pool to zero size before deleting the Pool. If you call an Update, Patch or Delete API on a Pool in the deleting state, it will fail with HTTP status code 409 with error code PoolBeingDeleted.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "poolId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Pool to delete." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service exactly matches the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service does not match the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Modified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + }, + "head": { + "tags": [ + "Pools" + ], + "operationId": "Pool_Exists", + "x-ms-examples": { + "Check Pool Exists": { + "$ref": "./examples/PoolExists.json" + } + }, + "description": "Gets basic properties of a Pool.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "poolId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Pool to get." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service exactly matches the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service does not match the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Modified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + } + }, + "description": "A response containing headers related to the Pool, if it exists." + }, + "404": { + "description": "The Pool does not exist." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + }, + "get": { + "tags": [ + "Pools" + ], + "operationId": "Pool_Get", + "x-ms-examples": { + "Pool get": { + "$ref": "./examples/PoolGet_Basic.json" + } + }, + "description": "Gets information about the specified Pool.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "poolId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Pool to get." + }, + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $select clause.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $expand clause.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service exactly matches the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service does not match the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Modified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + } + }, + "description": "A response containing the Pool.", + "schema": { + "$ref": "#/definitions/CloudPool" + } + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + }, + "patch": { + "tags": [ + "Pools" + ], + "operationId": "Pool_Patch", + "x-ms-examples": { + "Patch the Pool": { + "$ref": "./examples/PoolPatch.json" + } + }, + "summary": "Updates the properties of the specified Pool.", + "description": "This only replaces the Pool properties specified in the request. For example, if the Pool has a StartTask associated with it, and a request does not specify a StartTask element, then the Pool keeps the existing StartTask.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "poolId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Pool to update." + }, + { + "name": "poolPatchParameter", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PoolPatchParameter" + }, + "description": "The parameters for the request." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service exactly matches the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service does not match the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Modified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/pools/{poolId}/disableautoscale": { + "post": { + "tags": [ + "Pools" + ], + "operationId": "Pool_DisableAutoScale", + "x-ms-examples": { + "Disable pool autoscale": { + "$ref": "./examples/PoolDisableAutoScale.json" + } + }, + "summary": "Disables automatic scaling for a Pool.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "poolId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Pool on which to disable automatic scaling." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/pools/{poolId}/enableautoscale": { + "post": { + "tags": [ + "Pools" + ], + "operationId": "Pool_EnableAutoScale", + "x-ms-examples": { + "Pool enable autoscale": { + "$ref": "./examples/PoolEnableAutoscale.json" + } + }, + "summary": "Enables automatic scaling for a Pool.", + "description": "You cannot enable automatic scaling on a Pool if a resize operation is in progress on the Pool. If automatic scaling of the Pool is currently disabled, you must specify a valid autoscale formula as part of the request. If automatic scaling of the Pool is already enabled, you may specify a new autoscale formula and/or a new evaluation interval. You cannot call this API for the same Pool more than once every 30 seconds.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "poolId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Pool on which to enable automatic scaling." + }, + { + "name": "poolEnableAutoScaleParameter", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PoolEnableAutoScaleParameter" + }, + "description": "The parameters for the request." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service exactly matches the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service does not match the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Modified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/pools/{poolId}/evaluateautoscale": { + "post": { + "tags": [ + "Pools" + ], + "operationId": "Pool_EvaluateAutoScale", + "x-ms-examples": { + "Pool evaluate autoscale": { + "$ref": "./examples/PoolEvaluateAutoscale.json" + } + }, + "summary": "Gets the result of evaluating an automatic scaling formula on the Pool.", + "description": "This API is primarily for validating an autoscale formula, as it simply returns the result without applying the formula to the Pool. The Pool must have auto scaling enabled in order to evaluate a formula.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "poolId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Pool on which to evaluate the automatic scaling formula." + }, + { + "name": "poolEvaluateAutoScaleParameter", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PoolEvaluateAutoScaleParameter" + }, + "description": "The parameters for the request." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "A response containing the results of the autoscale evaluation.", + "schema": { + "$ref": "#/definitions/AutoScaleRun" + } + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/pools/{poolId}/resize": { + "post": { + "tags": [ + "Pools" + ], + "operationId": "Pool_Resize", + "x-ms-examples": { + "Pool resize": { + "$ref": "./examples/PoolResize.json" + } + }, + "summary": "Changes the number of Compute Nodes that are assigned to a Pool.", + "description": "You can only resize a Pool when its allocation state is steady. If the Pool is already resizing, the request fails with status code 409. When you resize a Pool, the Pool's allocation state changes from steady to resizing. You cannot resize Pools which are configured for automatic scaling. If you try to do this, the Batch service returns an error 409. If you resize a Pool downwards, the Batch service chooses which Compute Nodes to remove. To remove specific Compute Nodes, use the Pool remove Compute Nodes API instead.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "poolId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Pool to resize." + }, + { + "name": "poolResizeParameter", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PoolResizeParameter" + }, + "description": "The parameters for the request." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service exactly matches the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service does not match the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Modified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/pools/{poolId}/stopresize": { + "post": { + "tags": [ + "Pools" + ], + "operationId": "Pool_StopResize", + "x-ms-examples": { + "Pool stop resize": { + "$ref": "./examples/PoolStopResize.json" + } + }, + "summary": "Stops an ongoing resize operation on the Pool.", + "description": "This does not restore the Pool to its previous state before the resize operation: it only stops any further changes being made, and the Pool maintains its current state. After stopping, the Pool stabilizes at the number of Compute Nodes it was at when the stop operation was done. During the stop operation, the Pool allocation state changes first to stopping and then to steady. A resize operation need not be an explicit resize Pool request; this API can also be used to halt the initial sizing of the Pool when it is created.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "poolId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Pool whose resizing you want to stop." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service exactly matches the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service does not match the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Modified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service. If you call this API on a Pool which is not in the resizing state, the request fails with HTTP status code 409.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/pools/{poolId}/updateproperties": { + "post": { + "tags": [ + "Pools" + ], + "operationId": "Pool_UpdateProperties", + "x-ms-examples": { + "Pool update": { + "$ref": "./examples/PoolUpdate.json" + } + }, + "summary": "Updates the properties of the specified Pool.", + "description": "This fully replaces all the updatable properties of the Pool. For example, if the Pool has a StartTask associated with it and if StartTask is not specified with this request, then the Batch service will remove the existing StartTask.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "poolId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Pool to update." + }, + { + "name": "poolUpdatePropertiesParameter", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PoolUpdatePropertiesParameter" + }, + "description": "The parameters for the request." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/pools/{poolId}/removenodes": { + "post": { + "tags": [ + "ComputeNodes" + ], + "operationId": "Pool_RemoveNodes", + "x-ms-examples": { + "Pool remove nodes": { + "$ref": "./examples/PoolRemoveNodes.json" + } + }, + "summary": "Removes Compute Nodes from the specified Pool.", + "description": "This operation can only run when the allocation state of the Pool is steady. When this operation runs, the allocation state changes from steady to resizing.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "poolId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Pool from which you want to remove Compute Nodes." + }, + { + "name": "nodeRemoveParameter", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NodeRemoveParameter" + }, + "description": "The parameters for the request." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service exactly matches the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service does not match the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Modified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/jobs/{jobId}/tasks": { + "post": { + "tags": [ + "Tasks" + ], + "operationId": "Task_Add", + "x-ms-examples": { + "Add a basic task": { + "$ref": "./examples/TaskAdd_Basic.json" + }, + "Add a task with exit conditions": { + "$ref": "./examples/TaskAdd_ExitConditions.json" + }, + "Add a task with container settings": { + "$ref": "./examples/TaskAdd_ContainerSettings.json" + } + }, + "summary": "Adds a Task to the specified Job.", + "description": "The maximum lifetime of a Task from addition to completion is 180 days. If a Task has not completed within 180 days of being added it will be terminated by the Batch service and left in whatever state it was in at that time.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "jobId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Job to which the Task is to be added." + }, + { + "name": "task", + "in": "body", + "description": "The Task to be added.", + "required": true, + "schema": { + "$ref": "#/definitions/TaskAddParameter" + } + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + }, + "get": { + "tags": [ + "Tasks" + ], + "x-ms-pageable": { + "nextLinkName": "odata.nextLink" + }, + "operationId": "Task_List", + "x-ms-examples": { + "Task list": { + "$ref": "./examples/TaskList.json" + } + }, + "summary": "Lists all of the Tasks that are associated with the specified Job.", + "description": "For multi-instance Tasks, information such as affinityId, executionInfo and nodeInfo refer to the primary Task. Use the list subtasks API to retrieve information about subtasks.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "jobId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Job." + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-tasks.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $select clause.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $expand clause.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "maxresults", + "x-ms-client-name": "maxResults", + "default": 1000, + "minimum": 1, + "maximum": 1000, + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The maximum number of items to return in the response. A maximum of 1000 Tasks can be returned.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + } + }, + "description": "A response containing the list of Tasks.", + "schema": { + "$ref": "#/definitions/CloudTaskListResult" + } + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/jobs/{jobId}/addtaskcollection": { + "post": { + "tags": [ + "Tasks" + ], + "operationId": "Task_AddCollection", + "x-ms-examples": { + "Add a basic collection of tasks": { + "$ref": "./examples/TaskAddCollection_Basic.json" + }, + "Add a complex collection of tasks": { + "$ref": "./examples/TaskAddCollection_Complex.json" + } + }, + "summary": "Adds a collection of Tasks to the specified Job.", + "description": "Note that each Task must have a unique ID. The Batch service may not return the results for each Task in the same order the Tasks were submitted in this request. If the server times out or the connection is closed during the request, the request may have been partially or fully processed, or not at all. In such cases, the user should re-issue the request. Note that it is up to the user to correctly handle failures when re-issuing a request. For example, you should use the same Task IDs during a retry so that if the prior operation succeeded, the retry will not create extra Tasks unexpectedly. If the response contains any Tasks which failed to add, a client can retry the request. In a retry, it is most efficient to resubmit only Tasks that failed to add, and to omit Tasks that were successfully added on the first attempt. The maximum lifetime of a Task from addition to completion is 180 days. If a Task has not completed within 180 days of being added it will be terminated by the Batch service and left in whatever state it was in at that time.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "jobId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Job to which the Task collection is to be added." + }, + { + "name": "taskCollection", + "in": "body", + "description": "The Tasks to be added.", + "required": true, + "schema": { + "$ref": "#/definitions/TaskAddCollectionParameter" + } + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/TaskAddCollectionResult" + }, + "description": "A response containing the results of the add Task collection operation." + }, + "default": { + "description": "Unexpected error", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/jobs/{jobId}/tasks/{taskId}": { + "delete": { + "tags": [ + "Tasks" + ], + "operationId": "Task_Delete", + "x-ms-examples": { + "Task delete": { + "$ref": "./examples/TaskDelete.json" + } + }, + "summary": "Deletes a Task from the specified Job.", + "description": "When a Task is deleted, all of the files in its directory on the Compute Node where it ran are also deleted (regardless of the retention time). For multi-instance Tasks, the delete Task operation applies synchronously to the primary task; subtasks and their files are then deleted asynchronously in the background.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "jobId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Job from which to delete the Task." + }, + { + "name": "taskId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Task to delete." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service exactly matches the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service does not match the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Modified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + }, + "get": { + "tags": [ + "Tasks" + ], + "operationId": "Task_Get", + "x-ms-examples": { + "Task get": { + "$ref": "./examples/TaskGet.json" + } + }, + "summary": "Gets information about the specified Task.", + "description": "For multi-instance Tasks, information such as affinityId, executionInfo and nodeInfo refer to the primary Task. Use the list subtasks API to retrieve information about subtasks.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "jobId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Job that contains the Task." + }, + { + "name": "taskId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Task to get information about." + }, + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $select clause.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $expand clause.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service exactly matches the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service does not match the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Modified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "A response containing the Task.", + "schema": { + "$ref": "#/definitions/CloudTask" + } + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + }, + "put": { + "tags": [ + "Tasks" + ], + "operationId": "Task_Update", + "x-ms-examples": { + "Task update": { + "$ref": "./examples/TaskUpdate.json" + } + }, + "description": "Updates the properties of the specified Task.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "jobId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Job containing the Task." + }, + { + "name": "taskId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Task to update." + }, + { + "name": "taskUpdateParameter", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TaskUpdateParameter" + }, + "description": "The parameters for the request." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service exactly matches the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service does not match the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Modified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/jobs/{jobId}/tasks/{taskId}/subtasksinfo": { + "get": { + "tags": [ + "Tasks" + ], + "operationId": "Task_ListSubtasks", + "x-ms-examples": { + "Task list subtasks": { + "$ref": "./examples/TaskListSubtasks.json" + } + }, + "summary": "Lists all of the subtasks that are associated with the specified multi-instance Task.", + "description": "If the Task is not a multi-instance Task then this returns an empty collection.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "jobId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Job." + }, + { + "name": "taskId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Task." + }, + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $select clause.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + } + }, + "description": "A response containing the list of subtasks.", + "schema": { + "$ref": "#/definitions/CloudTaskListSubtasksResult" + } + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/jobs/{jobId}/tasks/{taskId}/terminate": { + "post": { + "tags": [ + "Tasks" + ], + "operationId": "Task_Terminate", + "x-ms-examples": { + "Task terminate": { + "$ref": "./examples/TaskTerminate.json" + } + }, + "summary": "Terminates the specified Task.", + "description": "When the Task has been terminated, it moves to the completed state. For multi-instance Tasks, the terminate Task operation applies synchronously to the primary task; subtasks are then terminated asynchronously in the background.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "jobId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Job containing the Task." + }, + { + "name": "taskId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Task to terminate." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service exactly matches the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service does not match the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Modified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/jobs/{jobId}/tasks/{taskId}/reactivate": { + "post": { + "tags": [ + "Tasks" + ], + "operationId": "Task_Reactivate", + "x-ms-examples": { + "Task reactivate": { + "$ref": "./examples/TaskReactivate.json" + } + }, + "summary": "Reactivates a Task, allowing it to run again even if its retry count has been exhausted.", + "description": "Reactivation makes a Task eligible to be retried again up to its maximum retry count. The Task's state is changed to active. As the Task is no longer in the completed state, any previous exit code or failure information is no longer available after reactivation. Each time a Task is reactivated, its retry count is reset to 0. Reactivation will fail for Tasks that are not completed or that previously completed successfully (with an exit code of 0). Additionally, it will fail if the Job has completed (or is terminating or deleting).", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "jobId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Job containing the Task." + }, + { + "name": "taskId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Task to reactivate." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service exactly matches the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service does not match the value specified by the client.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Modified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/pools/{poolId}/nodes/{nodeId}/users": { + "post": { + "tags": [ + "ComputeNodes" + ], + "operationId": "ComputeNode_AddUser", + "x-ms-examples": { + "Node add user": { + "$ref": "./examples/NodeAddUser.json" + } + }, + "summary": "Adds a user Account to the specified Compute Node.", + "description": "You can add a user Account to a Compute Node only when it is in the idle or running state.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "poolId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Pool that contains the Compute Node." + }, + { + "name": "nodeId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the machine on which you want to create a user Account." + }, + { + "name": "user", + "in": "body", + "description": "The user Account to be created.", + "required": true, + "schema": { + "$ref": "#/definitions/ComputeNodeUser" + } + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/pools/{poolId}/nodes/{nodeId}/users/{userName}": { + "delete": { + "tags": [ + "ComputeNodes" + ], + "operationId": "ComputeNode_DeleteUser", + "x-ms-examples": { + "Node delete user": { + "$ref": "./examples/NodeDeleteUser.json" + } + }, + "summary": "Deletes a user Account from the specified Compute Node.", + "description": "You can delete a user Account to a Compute Node only when it is in the idle or running state.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "poolId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Pool that contains the Compute Node." + }, + { + "name": "nodeId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the machine on which you want to delete a user Account." + }, + { + "name": "userName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the user Account to delete." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + }, + "put": { + "tags": [ + "ComputeNodes" + ], + "operationId": "ComputeNode_UpdateUser", + "x-ms-examples": { + "Node update user": { + "$ref": "./examples/NodeUpdateUser.json" + } + }, + "summary": "Updates the password and expiration time of a user Account on the specified Compute Node.", + "description": "This operation replaces of all the updatable properties of the Account. For example, if the expiryTime element is not specified, the current value is replaced with the default value, not left unmodified. You can update a user Account on a Compute Node only when it is in the idle or running state.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "poolId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Pool that contains the Compute Node." + }, + { + "name": "nodeId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the machine on which you want to update a user Account." + }, + { + "name": "userName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the user Account to update." + }, + { + "name": "nodeUpdateUserParameter", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NodeUpdateUserParameter" + }, + "description": "The parameters for the request." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/pools/{poolId}/nodes/{nodeId}": { + "get": { + "tags": [ + "ComputeNodes" + ], + "operationId": "ComputeNode_Get", + "x-ms-examples": { + "Node get": { + "$ref": "./examples/NodeGet_Basic.json" + } + }, + "summary": "Gets information about the specified Compute Node.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "poolId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Pool that contains the Compute Node." + }, + { + "name": "nodeId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Compute Node that you want to get information about." + }, + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $select clause.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + } + }, + "description": "A response containing the Compute Node.", + "schema": { + "$ref": "#/definitions/ComputeNode" + } + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/pools/{poolId}/nodes/{nodeId}/reboot": { + "post": { + "tags": [ + "ComputeNodes" + ], + "operationId": "ComputeNode_Reboot", + "x-ms-examples": { + "Node reboot": { + "$ref": "./examples/NodeReboot.json" + } + }, + "summary": "Restarts the specified Compute Node.", + "description": "You can restart a Compute Node only if it is in an idle or running state.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "poolId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Pool that contains the Compute Node." + }, + { + "name": "nodeId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Compute Node that you want to restart." + }, + { + "name": "nodeRebootParameter", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/NodeRebootParameter" + }, + "description": "The parameters for the request." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/pools/{poolId}/nodes/{nodeId}/reimage": { + "post": { + "tags": [ + "ComputeNodes" + ], + "operationId": "ComputeNode_Reimage", + "x-ms-examples": { + "Node reimage": { + "$ref": "./examples/NodeReimage.json" + } + }, + "summary": "Reinstalls the operating system on the specified Compute Node.", + "description": "You can reinstall the operating system on a Compute Node only if it is in an idle or running state. This API can be invoked only on Pools created with the cloud service configuration property.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "poolId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Pool that contains the Compute Node." + }, + { + "name": "nodeId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Compute Node that you want to restart." + }, + { + "name": "nodeReimageParameter", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/NodeReimageParameter" + }, + "description": "The parameters for the request." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/pools/{poolId}/nodes/{nodeId}/disablescheduling": { + "post": { + "tags": [ + "ComputeNodes" + ], + "operationId": "ComputeNode_DisableScheduling", + "x-ms-examples": { + "Node disable scheduling": { + "$ref": "./examples/NodeDisableScheduling.json" + } + }, + "summary": "Disables Task scheduling on the specified Compute Node.", + "description": "You can disable Task scheduling on a Compute Node only if its current scheduling state is enabled.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "poolId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Pool that contains the Compute Node." + }, + { + "name": "nodeId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Compute Node on which you want to disable Task scheduling." + }, + { + "name": "nodeDisableSchedulingParameter", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/NodeDisableSchedulingParameter" + }, + "description": "The parameters for the request." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/pools/{poolId}/nodes/{nodeId}/enablescheduling": { + "post": { + "tags": [ + "ComputeNodes" + ], + "operationId": "ComputeNode_EnableScheduling", + "x-ms-examples": { + "Node enable scheduling": { + "$ref": "./examples/NodeEnableScheduling.json" + } + }, + "summary": "Enables Task scheduling on the specified Compute Node.", + "description": "You can enable Task scheduling on a Compute Node only if its current scheduling state is disabled", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "poolId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Pool that contains the Compute Node." + }, + { + "name": "nodeId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Compute Node on which you want to enable Task scheduling." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + }, + "DataServiceId": { + "description": "The OData ID of the resource to which the request applied.", + "type": "string" + } + }, + "description": "The request to the Batch service was successful." + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/pools/{poolId}/nodes/{nodeId}/remoteloginsettings": { + "get": { + "tags": [ + "ComputeNodes" + ], + "operationId": "ComputeNode_GetRemoteLoginSettings", + "x-ms-examples": { + "Node get remote login settings": { + "$ref": "./examples/NodeGetRemoteLoginSettings.json" + } + }, + "summary": "Gets the settings required for remote login to a Compute Node.", + "description": "Before you can remotely login to a Compute Node using the remote login settings, you must create a user Account on the Compute Node. This API can be invoked only on Pools created with the virtual machine configuration property. For Pools created with a cloud service configuration, see the GetRemoteDesktop API.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "poolId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Pool that contains the Compute Node." + }, + { + "name": "nodeId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Compute Node for which to obtain the remote login settings." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + } + }, + "description": "A response containing the login settings.", + "schema": { + "$ref": "#/definitions/ComputeNodeGetRemoteLoginSettingsResult" + } + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/pools/{poolId}/nodes/{nodeId}/rdp": { + "get": { + "tags": [ + "ComputeNodes" + ], + "operationId": "ComputeNode_GetRemoteDesktop", + "x-ms-examples": { + "Get RDP file of the compute node": { + "$ref": "./examples/NodeGetRemoteDesktop.json" + } + }, + "summary": "Gets the Remote Desktop Protocol file for the specified Compute Node.", + "description": "Before you can access a Compute Node by using the RDP file, you must create a user Account on the Compute Node. This API can only be invoked on Pools created with a cloud service configuration. For Pools created with a virtual machine configuration, see the GetRemoteLoginSettings API.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "poolId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Pool that contains the Compute Node." + }, + { + "name": "nodeId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Compute Node for which you want to get the Remote Desktop Protocol file." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "produces": [ + "application/json", + "application/octet-stream" + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + } + }, + "description": "A response containing the RDP information.", + "schema": { + "type": "object", + "format": "file" + } + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/pools/{poolId}/nodes/{nodeId}/uploadbatchservicelogs": { + "post": { + "tags": [ + "ComputeNodes" + ], + "operationId": "ComputeNode_UploadBatchServiceLogs", + "summary": "Upload Azure Batch service log files from the specified Compute Node to Azure Blob Storage.", + "description": "This is for gathering Azure Batch service log files in an automated fashion from Compute Nodes if you are experiencing an error and wish to escalate to Azure support. The Azure Batch service log files should be shared with Azure support to aid in debugging issues with the Batch service.", + "x-ms-examples": { + "Upload BatchService Logs": { + "$ref": "./examples/NodeUploadBatchServiceLogs.json" + } + }, + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "poolId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Pool that contains the Compute Node." + }, + { + "name": "nodeId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Compute Node from which you want to upload the Azure Batch service log files." + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "uploadBatchServiceLogsConfiguration", + "in": "body", + "description": "The Azure Batch service log files upload configuration.", + "required": true, + "schema": { + "$ref": "#/definitions/UploadBatchServiceLogsConfiguration" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + } + }, + "description": "The request to the Batch service was successful.", + "schema": { + "$ref": "#/definitions/UploadBatchServiceLogsResult" + } + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + }, + "/pools/{poolId}/nodes": { + "get": { + "tags": [ + "ComputeNodes" + ], + "x-ms-pageable": { + "nextLinkName": "odata.nextLink" + }, + "operationId": "ComputeNode_List", + "x-ms-examples": { + "Node list": { + "$ref": "./examples/NodeList.json" + } + }, + "summary": "Lists the Compute Nodes in the specified Pool.", + "x-ms-request-id": "request-id", + "parameters": [ + { + "name": "poolId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the Pool from which you want to list Compute Nodes." + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#list-nodes-in-a-pool.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "An OData $select clause.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "maxresults", + "x-ms-client-name": "maxResults", + "default": 1000, + "minimum": 1, + "maximum": 1000, + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The maximum number of items to return in the response. A maximum of 1000 Compute Nodes can be returned.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "timeout", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "default": 30, + "description": "The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.", + "x-ms-parameter-grouping": { + "postfix": "Options" + }, + "x-ms-client-request-id": true + }, + { + "name": "return-client-request-id", + "default": false, + "in": "header", + "required": false, + "type": "boolean", + "description": "Whether the server should return the client-request-id in the response.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "name": "ocp-date", + "in": "header", + "required": false, + "type": "string", + "format": "date-time-rfc1123", + "description": "The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.", + "x-ms-parameter-grouping": { + "postfix": "Options" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "headers": { + "client-request-id": { + "description": "The client-request-id provided by the client during the request. This will be returned only if the return-client-request-id parameter was set to true.", + "type": "string", + "format": "uuid" + }, + "request-id": { + "description": "A unique identifier for the request that was made to the Batch service. If a request is consistently failing and you have verified that the request is properly formulated, you may use this value to report the error to Microsoft. In your report, include the value of this request ID, the approximate time that the request was made, the Batch Account against which the request was made, and the region that Account resides in.", + "type": "string", + "format": "uuid" + }, + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Modified-Since, If-Unmodified-Since, If-Match or If-None-Match headers.", + "type": "string" + }, + "Last-Modified": { + "description": "The time at which the resource was last modified.", + "type": "string", + "format": "date-time-rfc1123" + } + }, + "description": "A response containing the list of Compute Nodes.", + "schema": { + "$ref": "#/definitions/ComputeNodeListResult" + } + }, + "default": { + "description": "The error from the Batch service.", + "schema": { + "$ref": "#/definitions/BatchError" + } + } + } + } + } + }, + "definitions": { + "PoolUsageMetrics": { + "properties": { + "poolId": { + "type": "string", + "title": "The ID of the Pool whose metrics are aggregated in this entry." + }, + "startTime": { + "type": "string", + "format": "date-time", + "title": "The start time of the aggregation interval covered by this entry." + }, + "endTime": { + "type": "string", + "format": "date-time", + "title": "The end time of the aggregation interval covered by this entry." + }, + "vmSize": { + "type": "string", + "title": "The size of virtual machines in the Pool. All VMs in a Pool are the same size.", + "description": "For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes)." + }, + "totalCoreHours": { + "type": "number", + "format": "double", + "title": "The total core hours used in the Pool during this aggregation interval." + } + }, + "required": [ + "poolId", + "startTime", + "endTime", + "vmSize", + "totalCoreHours" + ], + "title": "Usage metrics for a Pool across an aggregation interval." + }, + "PoolListUsageMetricsResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PoolUsageMetrics" + }, + "title": "The Pool usage metrics data." + }, + "odata.nextLink": { + "type": "string", + "title": "The URL to get the next set of results." + } + }, + "title": "The result of a listing the usage metrics for an Account." + }, + "ImageInformation": { + "properties": { + "nodeAgentSKUId": { + "type": "string", + "title": "The ID of the Compute Node agent SKU which the Image supports." + }, + "imageReference": { + "$ref": "#/definitions/ImageReference", + "title": "The reference to the Azure Virtual Machine's Marketplace Image." + }, + "osType": { + "type": "string", + "title": "The type of operating system (e.g. Windows or Linux) of the Image.", + "enum": [ + "linux", + "windows" + ], + "x-ms-enum": { + "name": "OSType", + "modelAsString": false, + "values": [ + { + "value": "linux", + "description": "The Linux operating system." + }, + { + "value": "windows", + "description": "The Windows operating system." + } + ] + } + }, + "capabilities": { + "type": "array", + "items": { + "type": "string" + }, + "title": "The capabilities or features which the Image supports.", + "description": "Not every capability of the Image is listed. Capabilities in this list are considered of special interest and are generally related to integration with other features in the Azure Batch service." + }, + "batchSupportEndOfLife": { + "type": "string", + "format": "date-time", + "title": "The time when the Azure Batch service will stop accepting create Pool requests for the Image." + }, + "verificationType": { + "type": "string", + "title": "Whether the Azure Batch service actively verifies that the Image is compatible with the associated Compute Node agent SKU.", + "enum": [ + "verified", + "unverified" + ], + "x-ms-enum": { + "name": "VerificationType", + "modelAsString": false, + "values": [ + { + "value": "verified", + "description": "The Image is guaranteed to be compatible with the associated Compute Node agent SKU and all Batch features have been confirmed to work as expected." + }, + { + "value": "unverified", + "description": "The associated Compute Node agent SKU should have binary compatibility with the Image, but specific functionality has not been verified." + } + ] + } + } + }, + "required": [ + "imageReference", + "verificationType", + "osType", + "nodeAgentSKUId" + ], + "title": "A reference to the Azure Virtual Machines Marketplace Image and additional information about the Image." + }, + "AuthenticationTokenSettings": { + "properties": { + "access": { + "type": "array", + "items": { + "type": "string", + "x-nullable": false, + "enum": [ + "job" + ], + "x-ms-enum": { + "name": "AccessScope", + "modelAsString": false, + "values": [ + { + "value": "job", + "description": "Grants access to perform all operations on the Job containing the Task." + } + ] + } + }, + "title": "The Batch resources to which the token grants access.", + "description": "The authentication token grants access to a limited set of Batch service operations. Currently the only supported value for the access property is 'job', which grants access to all operations related to the Job which contains the Task." + } + }, + "title": "The settings for an authentication token that the Task can use to perform Batch service operations." + }, + "AccountListSupportedImagesResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ImageInformation" + }, + "title": "The list of supported Virtual Machine Images." + }, + "odata.nextLink": { + "type": "string", + "title": "The URL to get the next set of results." + } + }, + "title": "The result of listing the supported Virtual Machine Images." + }, + "UsageStatistics": { + "properties": { + "startTime": { + "type": "string", + "format": "date-time", + "title": "The start time of the time range covered by the statistics." + }, + "lastUpdateTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the statistics were last updated. All statistics are limited to the range between startTime and lastUpdateTime." + }, + "dedicatedCoreTime": { + "type": "string", + "format": "duration", + "title": "The aggregated wall-clock time of the dedicated Compute Node cores being part of the Pool." + } + }, + "required": [ + "startTime", + "lastUpdateTime", + "dedicatedCoreTime" + ], + "title": "Statistics related to Pool usage information." + }, + "ResourceStatistics": { + "properties": { + "startTime": { + "type": "string", + "format": "date-time", + "title": "The start time of the time range covered by the statistics." + }, + "lastUpdateTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the statistics were last updated. All statistics are limited to the range between startTime and lastUpdateTime." + }, + "avgCPUPercentage": { + "type": "number", + "format": "double", + "title": "The average CPU usage across all Compute Nodes in the Pool (percentage per node)." + }, + "avgMemoryGiB": { + "type": "number", + "format": "double", + "title": "The average memory usage in GiB across all Compute Nodes in the Pool." + }, + "peakMemoryGiB": { + "type": "number", + "format": "double", + "title": "The peak memory usage in GiB across all Compute Nodes in the Pool." + }, + "avgDiskGiB": { + "type": "number", + "format": "double", + "title": "The average used disk space in GiB across all Compute Nodes in the Pool." + }, + "peakDiskGiB": { + "type": "number", + "format": "double", + "title": "The peak used disk space in GiB across all Compute Nodes in the Pool." + }, + "diskReadIOps": { + "type": "integer", + "format": "int64", + "title": "The total number of disk read operations across all Compute Nodes in the Pool." + }, + "diskWriteIOps": { + "type": "integer", + "format": "int64", + "title": "The total number of disk write operations across all Compute Nodes in the Pool." + }, + "diskReadGiB": { + "type": "number", + "format": "double", + "title": "The total amount of data in GiB of disk reads across all Compute Nodes in the Pool." + }, + "diskWriteGiB": { + "type": "number", + "format": "double", + "title": "The total amount of data in GiB of disk writes across all Compute Nodes in the Pool." + }, + "networkReadGiB": { + "type": "number", + "format": "double", + "title": "The total amount of data in GiB of network reads across all Compute Nodes in the Pool." + }, + "networkWriteGiB": { + "type": "number", + "format": "double", + "title": "The total amount of data in GiB of network writes across all Compute Nodes in the Pool." + } + }, + "required": [ + "startTime", + "lastUpdateTime", + "avgCPUPercentage", + "avgMemoryGiB", + "peakMemoryGiB", + "avgDiskGiB", + "peakDiskGiB", + "diskReadIOps", + "diskWriteIOps", + "diskReadGiB", + "diskWriteGiB", + "networkReadGiB", + "networkWriteGiB" + ], + "title": "Statistics related to resource consumption by Compute Nodes in a Pool." + }, + "PoolStatistics": { + "properties": { + "url": { + "type": "string", + "title": "The URL for the statistics." + }, + "startTime": { + "type": "string", + "format": "date-time", + "title": "The start time of the time range covered by the statistics." + }, + "lastUpdateTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the statistics were last updated. All statistics are limited to the range between startTime and lastUpdateTime." + }, + "usageStats": { + "$ref": "#/definitions/UsageStatistics", + "title": "Statistics related to Pool usage, such as the amount of core-time used." + }, + "resourceStats": { + "$ref": "#/definitions/ResourceStatistics", + "title": "Statistics related to resource consumption by Compute Nodes in the Pool." + } + }, + "required": [ + "url", + "startTime", + "lastUpdateTime" + ], + "title": "Contains utilization and resource usage statistics for the lifetime of a Pool." + }, + "JobStatistics": { + "properties": { + "url": { + "type": "string", + "title": "The URL of the statistics." + }, + "startTime": { + "type": "string", + "format": "date-time", + "title": "The start time of the time range covered by the statistics." + }, + "lastUpdateTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the statistics were last updated. All statistics are limited to the range between startTime and lastUpdateTime." + }, + "userCPUTime": { + "type": "string", + "format": "duration", + "title": "The total user mode CPU time (summed across all cores and all Compute Nodes) consumed by all Tasks in the Job." + }, + "kernelCPUTime": { + "type": "string", + "format": "duration", + "title": "The total kernel mode CPU time (summed across all cores and all Compute Nodes) consumed by all Tasks in the Job." + }, + "wallClockTime": { + "type": "string", + "format": "duration", + "title": "The total wall clock time of all Tasks in the Job.", + "description": " The wall clock time is the elapsed time from when the Task started running on a Compute Node to when it finished (or to the last time the statistics were updated, if the Task had not finished by then). If a Task was retried, this includes the wall clock time of all the Task retries." + }, + "readIOps": { + "type": "integer", + "format": "int64", + "title": "The total number of disk read operations made by all Tasks in the Job." + }, + "writeIOps": { + "type": "integer", + "format": "int64", + "title": "The total number of disk write operations made by all Tasks in the Job." + }, + "readIOGiB": { + "type": "number", + "format": "double", + "title": "The total amount of data in GiB read from disk by all Tasks in the Job." + }, + "writeIOGiB": { + "type": "number", + "format": "double", + "title": "The total amount of data in GiB written to disk by all Tasks in the Job." + }, + "numSucceededTasks": { + "type": "integer", + "format": "int64", + "title": "The total number of Tasks successfully completed in the Job during the given time range.", + "description": "A Task completes successfully if it returns exit code 0." + }, + "numFailedTasks": { + "type": "integer", + "format": "int64", + "title": "The total number of Tasks in the Job that failed during the given time range.", + "description": "A Task fails if it exhausts its maximum retry count without returning exit code 0." + }, + "numTaskRetries": { + "type": "integer", + "format": "int64", + "title": "The total number of retries on all the Tasks in the Job during the given time range." + }, + "waitTime": { + "type": "string", + "format": "duration", + "title": "The total wait time of all Tasks in the Job.", + "description": "The wait time for a Task is defined as the elapsed time between the creation of the Task and the start of Task execution. (If the Task is retried due to failures, the wait time is the time to the most recent Task execution.) This value is only reported in the Account lifetime statistics; it is not included in the Job statistics." + } + }, + "required": [ + "url", + "startTime", + "lastUpdateTime", + "userCPUTime", + "kernelCPUTime", + "wallClockTime", + "readIOps", + "writeIOps", + "readIOGiB", + "writeIOGiB", + "numSucceededTasks", + "numFailedTasks", + "numTaskRetries", + "waitTime" + ], + "title": "Resource usage statistics for a Job." + }, + "NameValuePair": { + "properties": { + "name": { + "type": "string", + "title": "The name in the name-value pair." + }, + "value": { + "type": "string", + "title": "The value in the name-value pair." + } + }, + "title": "Represents a name-value pair." + }, + "DeleteCertificateError": { + "properties": { + "code": { + "type": "string", + "title": "An identifier for the Certificate deletion error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "title": "A message describing the Certificate deletion error, intended to be suitable for display in a user interface." + }, + "values": { + "type": "array", + "items": { + "$ref": "#/definitions/NameValuePair" + }, + "title": "A list of additional error details related to the Certificate deletion error.", + "description": "This list includes details such as the active Pools and Compute Nodes referencing this Certificate. However, if a large number of resources reference the Certificate, the list contains only about the first hundred." + } + }, + "title": "An error encountered by the Batch service when deleting a Certificate." + }, + "Certificate": { + "properties": { + "thumbprint": { + "type": "string", + "title": "The X.509 thumbprint of the Certificate. This is a sequence of up to 40 hex digits." + }, + "thumbprintAlgorithm": { + "type": "string", + "title": "The algorithm used to derive the thumbprint." + }, + "url": { + "type": "string", + "title": "The URL of the Certificate." + }, + "state": { + "title": "The current state of the Certificate.", + "$ref": "#/definitions/CertificateState" + }, + "stateTransitionTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the Certificate entered its current state." + }, + "previousState": { + "title": "The previous state of the Certificate.", + "description": "This property is not set if the Certificate is in its initial active state.", + "$ref": "#/definitions/CertificateState" + }, + "previousStateTransitionTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the Certificate entered its previous state.", + "description": "This property is not set if the Certificate is in its initial Active state." + }, + "publicData": { + "type": "string", + "title": "The public part of the Certificate as a base-64 encoded .cer file." + }, + "deleteCertificateError": { + "$ref": "#/definitions/DeleteCertificateError", + "title": "The error that occurred on the last attempt to delete this Certificate.", + "description": "This property is set only if the Certificate is in the DeleteFailed state." + } + }, + "description": "A Certificate that can be installed on Compute Nodes and can be used to authenticate operations on the machine." + }, + "ApplicationPackageReference": { + "properties": { + "applicationId": { + "type": "string", + "title": "The ID of the application to deploy." + }, + "version": { + "type": "string", + "title": "The version of the application to deploy. If omitted, the default version is deployed.", + "description": "If this is omitted on a Pool, and no default version is specified for this application, the request fails with the error code InvalidApplicationPackageReferences and HTTP status code 409. If this is omitted on a Task, and no default version is specified for this application, the Task fails with a pre-processing error." + } + }, + "required": [ + "applicationId" + ], + "title": "A reference to an Package to be deployed to Compute Nodes." + }, + "ApplicationSummary": { + "properties": { + "id": { + "type": "string", + "title": "A string that uniquely identifies the application within the Account." + }, + "displayName": { + "type": "string", + "title": "The display name for the application." + }, + "versions": { + "type": "array", + "title": "The list of available versions of the application.", + "items": { + "type": "string" + } + } + }, + "required": [ + "id", + "displayName", + "versions" + ], + "title": "Contains information about an application in an Azure Batch Account." + }, + "CertificateAddParameter": { + "properties": { + "thumbprint": { + "type": "string", + "title": "The X.509 thumbprint of the Certificate. This is a sequence of up to 40 hex digits (it may include spaces but these are removed)." + }, + "thumbprintAlgorithm": { + "type": "string", + "title": "The algorithm used to derive the thumbprint. This must be sha1." + }, + "data": { + "type": "string", + "title": "The base64-encoded contents of the Certificate. The maximum size is 10KB." + }, + "certificateFormat": { + "type": "string", + "title": "The format of the Certificate data.", + "enum": [ + "pfx", + "cer" + ], + "x-ms-enum": { + "name": "CertificateFormat", + "modelAsString": false, + "values": [ + { + "value": "pfx", + "description": "The Certificate is a PFX (PKCS#12) formatted Certificate or Certificate chain." + }, + { + "value": "cer", + "description": "The Certificate is a base64-encoded X.509 Certificate." + } + ] + } + }, + "password": { + "type": "string", + "title": "The password to access the Certificate's private key.", + "description": "This must be omitted if the Certificate format is cer." + } + }, + "required": [ + "thumbprint", + "thumbprintAlgorithm", + "data" + ], + "title": "A Certificate that can be installed on Compute Nodes and can be used to authenticate operations on the machine." + }, + "CertificateListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Certificate" + }, + "title": "The list of Certificates." + }, + "odata.nextLink": { + "type": "string", + "title": "The URL to get the next set of results." + } + }, + "title": "The result of listing the Certificates in the Account." + }, + "FileProperties": { + "properties": { + "creationTime": { + "type": "string", + "format": "date-time", + "title": "The file creation time.", + "description": "The creation time is not returned for files on Linux Compute Nodes." + }, + "lastModified": { + "type": "string", + "format": "date-time", + "title": "The time at which the file was last modified." + }, + "contentLength": { + "type": "integer", + "format": "int64", + "title": "The length of the file." + }, + "contentType": { + "type": "string", + "title": "The content type of the file." + }, + "fileMode": { + "type": "string", + "title": "The file mode attribute in octal format.", + "description": "The file mode is returned only for files on Linux Compute Nodes." + } + }, + "required": [ + "lastModified", + "contentLength" + ], + "title": "The properties of a file on a Compute Node." + }, + "NodeFile": { + "properties": { + "name": { + "type": "string", + "title": "The file path." + }, + "url": { + "type": "string", + "title": "The URL of the file." + }, + "isDirectory": { + "type": "boolean", + "title": "Whether the object represents a directory." + }, + "properties": { + "$ref": "#/definitions/FileProperties", + "title": "The file properties." + } + }, + "title": "Information about a file or directory on a Compute Node." + }, + "NodeFileListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NodeFile" + }, + "title": "The list of files." + }, + "odata.nextLink": { + "type": "string", + "title": "The URL to get the next set of results." + } + }, + "title": "The result of listing the files on a Compute Node, or the files associated with a Task on a Compute Node." + }, + "Schedule": { + "properties": { + "doNotRunUntil": { + "type": "string", + "format": "date-time", + "title": "The earliest time at which any Job may be created under this Job Schedule.", + "description": "If you do not specify a doNotRunUntil time, the schedule becomes ready to create Jobs immediately." + }, + "doNotRunAfter": { + "type": "string", + "format": "date-time", + "title": "A time after which no Job will be created under this Job Schedule. The schedule will move to the completed state as soon as this deadline is past and there is no active Job under this Job Schedule.", + "description": "If you do not specify a doNotRunAfter time, and you are creating a recurring Job Schedule, the Job Schedule will remain active until you explicitly terminate it." + }, + "startWindow": { + "type": "string", + "format": "duration", + "title": "The time interval, starting from the time at which the schedule indicates a Job should be created, within which a Job must be created.", + "description": "If a Job is not created within the startWindow interval, then the 'opportunity' is lost; no Job will be created until the next recurrence of the schedule. If the schedule is recurring, and the startWindow is longer than the recurrence interval, then this is equivalent to an infinite startWindow, because the Job that is 'due' in one recurrenceInterval is not carried forward into the next recurrence interval. The default is infinite. The minimum value is 1 minute. If you specify a lower value, the Batch service rejects the schedule with an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request)." + }, + "recurrenceInterval": { + "type": "string", + "format": "duration", + "title": "The time interval between the start times of two successive Jobs under the Job Schedule. A Job Schedule can have at most one active Job under it at any given time.", + "description": "Because a Job Schedule can have at most one active Job under it at any given time, if it is time to create a new Job under a Job Schedule, but the previous Job is still running, the Batch service will not create the new Job until the previous Job finishes. If the previous Job does not finish within the startWindow period of the new recurrenceInterval, then no new Job will be scheduled for that interval. For recurring Jobs, you should normally specify a jobManagerTask in the jobSpecification. If you do not use jobManagerTask, you will need an external process to monitor when Jobs are created, add Tasks to the Jobs and terminate the Jobs ready for the next recurrence. The default is that the schedule does not recur: one Job is created, within the startWindow after the doNotRunUntil time, and the schedule is complete as soon as that Job finishes. The minimum value is 1 minute. If you specify a lower value, the Batch service rejects the schedule with an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request)." + } + }, + "title": "The schedule according to which Jobs will be created" + }, + "JobConstraints": { + "properties": { + "maxWallClockTime": { + "type": "string", + "format": "duration", + "title": "The maximum elapsed time that the Job may run, measured from the time the Job is created.", + "description": "If the Job does not complete within the time limit, the Batch service terminates it and any Tasks that are still running. In this case, the termination reason will be MaxWallClockTimeExpiry. If this property is not specified, there is no time limit on how long the Job may run." + }, + "maxTaskRetryCount": { + "type": "integer", + "format": "int32", + "title": "The maximum number of times each Task may be retried. The Batch service retries a Task if its exit code is nonzero.", + "description": "Note that this value specifically controls the number of retries. The Batch service will try each Task once, and may then retry up to this limit. For example, if the maximum retry count is 3, Batch tries a Task up to 4 times (one initial try and 3 retries). If the maximum retry count is 0, the Batch service does not retry Tasks. If the maximum retry count is -1, the Batch service retries Tasks without limit. The default value is 0 (no retries)." + } + }, + "title": "The execution constraints for a Job." + }, + "JobNetworkConfiguration": { + "properties": { + "subnetId": { + "type": "string", + "title": "The ARM resource identifier of the virtual network subnet which Compute Nodes running Tasks from the Job will join for the duration of the Task. This will only work with a VirtualMachineConfiguration Pool.", + "description": "The virtual network must be in the same region and subscription as the Azure Batch Account. The specified subnet should have enough free IP addresses to accommodate the number of Compute Nodes which will run Tasks from the Job. This can be up to the number of Compute Nodes in the Pool. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet so that Azure Batch service can schedule Tasks on the Nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the Nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the Compute Nodes to unusable. This is of the form /subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication from the Azure Batch service. For Pools created with a Virtual Machine configuration, enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. Port 443 is also required to be open for outbound connections for communications to Azure Storage. For more details see: https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration", + "externalDocs": { + "url": "https://azure.microsoft.com/en-us/documentation/articles/role-based-access-built-in-roles/#classic-virtual-machine-contributor", + "description": "Setting up RBAC for Azure Batch VNETs" + } + } + }, + "required": [ + "subnetId" + ], + "title": "The network configuration for the Job." + }, + "TaskContainerSettings": { + "properties": { + "containerRunOptions": { + "type": "string", + "title": "Additional options to the container create command.", + "description": "These additional options are supplied as arguments to the \"docker create\" command, in addition to those controlled by the Batch Service." + }, + "imageName": { + "type": "string", + "title": "The Image to use to create the container in which the Task will run.", + "description": "This is the full Image reference, as would be specified to \"docker pull\". If no tag is provided as part of the Image name, the tag \":latest\" is used as a default." + }, + "registry": { + "$ref": "#/definitions/ContainerRegistry", + "title": "The private registry which contains the container Image.", + "description": "This setting can be omitted if was already provided at Pool creation." + }, + "workingDirectory": { + "type": "string", + "title": "The location of the container Task working directory.", + "description": "The default is 'taskWorkingDirectory'.", + "enum": [ + "taskWorkingDirectory", + "containerImageDefault" + ], + "x-ms-enum": { + "name": "ContainerWorkingDirectory", + "modelAsString": false, + "values": [ + { + "value": "taskWorkingDirectory", + "description": "Use the standard Batch service Task working directory, which will contain the Task Resource Files populated by Batch." + }, + { + "value": "containerImageDefault", + "description": "Use the working directory defined in the container Image. Beware that this directory will not contain the Resource Files downloaded by Batch." + } + ] + } + } + }, + "required": [ + "imageName" + ], + "title": "The container settings for a Task." + }, + "ResourceFile": { + "properties": { + "autoStorageContainerName": { + "type": "string", + "title": "The storage container name in the auto storage Account.", + "description": "The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified." + }, + "storageContainerUrl": { + "type": "string", + "title": "The URL of the blob container within Azure Blob Storage.", + "description": "The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified. This URL must be readable and listable using anonymous access; that is, the Batch service does not present any credentials when downloading blobs from the container. There are two ways to get such a URL for a container in Azure storage: include a Shared Access Signature (SAS) granting read and list permissions on the container, or set the ACL for the container to allow public access." + }, + "httpUrl": { + "type": "string", + "title": "The URL of the file to download.", + "description": "The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified. If the URL points to Azure Blob Storage, it must be readable using anonymous access; that is, the Batch service does not present any credentials when downloading the blob. There are two ways to get such a URL for a blob in Azure storage: include a Shared Access Signature (SAS) granting read permissions on the blob, or set the ACL for the blob or its container to allow public access." + }, + "blobPrefix": { + "type": "string", + "title": "The blob prefix to use when downloading blobs from an Azure Storage container. Only the blobs whose names begin with the specified prefix will be downloaded.", + "description": "The property is valid only when autoStorageContainerName or storageContainerUrl is used. This prefix can be a partial filename or a subdirectory. If a prefix is not specified, all the files in the container will be downloaded." + }, + "filePath": { + "type": "string", + "title": "The location on the Compute Node to which to download the file(s), relative to the Task's working directory.", + "description": "If the httpUrl property is specified, the filePath is required and describes the path which the file will be downloaded to, including the filename. Otherwise, if the autoStorageContainerName or storageContainerUrl property is specified, filePath is optional and is the directory to download the files to. In the case where filePath is used as a directory, any directory structure already associated with the input data will be retained in full and appended to the specified filePath directory. The specified relative path cannot break out of the Task's working directory (for example by using '..')." + }, + "fileMode": { + "type": "string", + "title": "The file permission mode attribute in octal format.", + "description": "This property applies only to files being downloaded to Linux Compute Nodes. It will be ignored if it is specified for a resourceFile which will be downloaded to a Windows Compute Node. If this property is not specified for a Linux Compute Node, then a default value of 0770 is applied to the file." + } + }, + "title": "A single file or multiple files to be downloaded to a Compute Node." + }, + "EnvironmentSetting": { + "properties": { + "name": { + "type": "string", + "title": "The name of the environment variable." + }, + "value": { + "type": "string", + "title": "The value of the environment variable." + } + }, + "required": [ + "name" + ], + "title": "An environment variable to be set on a Task process." + }, + "ExitConditions": { + "properties": { + "exitCodes": { + "type": "array", + "items": { + "$ref": "#/definitions/ExitCodeMapping" + }, + "title": "A list of individual Task exit codes and how the Batch service should respond to them." + }, + "exitCodeRanges": { + "type": "array", + "items": { + "$ref": "#/definitions/ExitCodeRangeMapping" + }, + "title": "A list of Task exit code ranges and how the Batch service should respond to them." + }, + "preProcessingError": { + "$ref": "#/definitions/ExitOptions", + "title": "How the Batch service should respond if the Task fails to start due to an error." + }, + "fileUploadError": { + "$ref": "#/definitions/ExitOptions", + "title": "How the Batch service should respond if a file upload error occurs.", + "description": "If the Task exited with an exit code that was specified via exitCodes or exitCodeRanges, and then encountered a file upload error, then the action specified by the exit code takes precedence." + }, + "default": { + "$ref": "#/definitions/ExitOptions", + "title": "How the Batch service should respond if the Task fails with an exit condition not covered by any of the other properties.", + "description": "This value is used if the Task exits with any nonzero exit code not listed in the exitCodes or exitCodeRanges collection, with a pre-processing error if the preProcessingError property is not present, or with a file upload error if the fileUploadError property is not present. If you want non-default behavior on exit code 0, you must list it explicitly using the exitCodes or exitCodeRanges collection." + } + }, + "title": "Specifies how the Batch service should respond when the Task completes." + }, + "ExitCodeMapping": { + "properties": { + "code": { + "type": "integer", + "format": "int32", + "title": "A process exit code." + }, + "exitOptions": { + "$ref": "#/definitions/ExitOptions", + "title": "How the Batch service should respond if the Task exits with this exit code." + } + }, + "title": "How the Batch service should respond if a Task exits with a particular exit code.", + "required": [ + "code", + "exitOptions" + ] + }, + "ExitCodeRangeMapping": { + "properties": { + "start": { + "type": "integer", + "format": "int32", + "title": "The first exit code in the range." + }, + "end": { + "type": "integer", + "format": "int32", + "title": "The last exit code in the range." + }, + "exitOptions": { + "$ref": "#/definitions/ExitOptions", + "title": "How the Batch service should respond if the Task exits with an exit code in the range start to end (inclusive)." + } + }, + "title": "A range of exit codes and how the Batch service should respond to exit codes within that range.", + "required": [ + "start", + "end", + "exitOptions" + ] + }, + "ExitOptions": { + "properties": { + "jobAction": { + "type": "string", + "title": "An action to take on the Job containing the Task, if the Task completes with the given exit condition and the Job's onTaskFailed property is 'performExitOptionsJobAction'.", + "description": "The default is none for exit code 0 and terminate for all other exit conditions. If the Job's onTaskFailed property is noaction, then specifying this property returns an error and the add Task request fails with an invalid property value error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).", + "enum": [ + "none", + "disable", + "terminate" + ], + "x-ms-enum": { + "name": "JobAction", + "modelAsString": false, + "values": [ + { + "value": "none", + "description": "Take no action." + }, + { + "value": "disable", + "description": "Disable the Job. This is equivalent to calling the disable Job API, with a disableTasks value of requeue." + }, + { + "value": "terminate", + "description": "Terminate the Job. The terminateReason in the Job's executionInfo is set to \"TaskFailed\"." + } + ] + } + }, + "dependencyAction": { + "type": "string", + "title": "An action that the Batch service performs on Tasks that depend on this Task.", + "description": "Possible values are 'satisfy' (allowing dependent tasks to progress) and 'block' (dependent tasks continue to wait). Batch does not yet support cancellation of dependent tasks.", + "enum": [ + "satisfy", + "block" + ], + "x-ms-enum": { + "name": "DependencyAction", + "modelAsString": false, + "values": [ + { + "value": "satisfy", + "description": "Satisfy tasks waiting on this task; once all dependencies are satisfied, the task will be scheduled to run." + }, + { + "value": "block", + "description": "Blocks tasks waiting on this task, preventing them from being scheduled." + } + ] + } + } + }, + "title": "Specifies how the Batch service responds to a particular exit condition." + }, + "AutoUserSpecification": { + "properties": { + "scope": { + "type": "string", + "title": "The scope for the auto user", + "description": "The default value is pool. If the pool is running Windows a value of Task should be specified if stricter isolation between tasks is required. For example, if the task mutates the registry in a way which could impact other tasks, or if certificates have been specified on the pool which should not be accessible by normal tasks but should be accessible by StartTasks.", + "enum": [ + "task", + "pool" + ], + "x-ms-enum": { + "name": "AutoUserScope", + "modelAsString": false, + "values": [ + { + "value": "task", + "description": "Specifies that the service should create a new user for the Task." + }, + { + "value": "pool", + "description": "Specifies that the Task runs as the common auto user Account which is created on every Compute Node in a Pool." + } + ] + } + }, + "elevationLevel": { + "title": "The elevation level of the auto user.", + "description": "The default value is nonAdmin.", + "$ref": "#/definitions/ElevationLevel" + } + }, + "title": "Specifies the parameters for the auto user that runs a Task on the Batch service." + }, + "UserIdentity": { + "properties": { + "username": { + "type": "string", + "x-ms-client-name": "userName", + "title": "The name of the user identity under which the Task is run.", + "description": "The userName and autoUser properties are mutually exclusive; you must specify one but not both." + }, + "autoUser": { + "$ref": "#/definitions/AutoUserSpecification", + "title": "The auto user under which the Task is run.", + "description": "The userName and autoUser properties are mutually exclusive; you must specify one but not both." + } + }, + "title": "The definition of the user identity under which the Task is run.", + "description": "Specify either the userName or autoUser property, but not both." + }, + "LinuxUserConfiguration": { + "properties": { + "uid": { + "type": "integer", + "format": "int32", + "title": "The user ID of the user Account.", + "description": "The uid and gid properties must be specified together or not at all. If not specified the underlying operating system picks the uid." + }, + "gid": { + "type": "integer", + "format": "int32", + "title": "The group ID for the user Account.", + "description": "The uid and gid properties must be specified together or not at all. If not specified the underlying operating system picks the gid." + }, + "sshPrivateKey": { + "type": "string", + "title": "The SSH private key for the user Account.", + "description": "The private key must not be password protected. The private key is used to automatically configure asymmetric-key based authentication for SSH between Compute Nodes in a Linux Pool when the Pool's enableInterNodeCommunication property is true (it is ignored if enableInterNodeCommunication is false). It does this by placing the key pair into the user's .ssh directory. If not specified, password-less SSH is not configured between Compute Nodes (no modification of the user's .ssh directory is done)." + } + }, + "title": "Properties used to create a user Account on a Linux Compute Node." + }, + "WindowsUserConfiguration": { + "properties": { + "loginMode": { + "type": "string", + "title": "The login mode for the user", + "description": "The default value for VirtualMachineConfiguration Pools is 'batch' and for CloudServiceConfiguration Pools is 'interactive'.", + "enum": [ + "batch", + "interactive" + ], + "x-ms-enum": { + "name": "LoginMode", + "modelAsString": false, + "values": [ + { + "value": "batch", + "description": "The LOGON32_LOGON_BATCH Win32 login mode. The batch login mode is recommended for long running parallel processes." + }, + { + "value": "interactive", + "description": "The LOGON32_LOGON_INTERACTIVE Win32 login mode. UAC is enabled on Windows VirtualMachineConfiguration Pools. If this option is used with an elevated user identity in a Windows VirtualMachineConfiguration Pool, the user session will not be elevated unless the application executed by the Task command line is configured to always require administrative privilege or to always require maximum privilege." + } + ] + } + } + }, + "title": "Properties used to create a user Account on a Windows Compute Node." + }, + "UserAccount": { + "properties": { + "name": { + "type": "string", + "title": "The name of the user Account." + }, + "password": { + "type": "string", + "title": "The password for the user Account." + }, + "elevationLevel": { + "title": "The elevation level of the user Account.", + "description": "The default value is nonAdmin.", + "$ref": "#/definitions/ElevationLevel" + }, + "linuxUserConfiguration": { + "title": "The Linux-specific user configuration for the user Account.", + "description": "This property is ignored if specified on a Windows Pool. If not specified, the user is created with the default options.", + "$ref": "#/definitions/LinuxUserConfiguration" + }, + "windowsUserConfiguration": { + "title": "The Windows-specific user configuration for the user Account.", + "description": "This property can only be specified if the user is on a Windows Pool. If not specified and on a Windows Pool, the user is created with the default options.", + "$ref": "#/definitions/WindowsUserConfiguration" + } + }, + "required": [ + "name", + "password" + ], + "title": "Properties used to create a user used to execute Tasks on an Azure Batch Compute Node." + }, + "TaskConstraints": { + "properties": { + "maxWallClockTime": { + "type": "string", + "format": "duration", + "title": "The maximum elapsed time that the Task may run, measured from the time the Task starts. If the Task does not complete within the time limit, the Batch service terminates it.", + "description": "If this is not specified, there is no time limit on how long the Task may run." + }, + "retentionTime": { + "type": "string", + "format": "duration", + "title": "The minimum time to retain the Task directory on the Compute Node where it ran, from the time it completes execution. After this time, the Batch service may delete the Task directory and all its contents.", + "description": "The default is 7 days, i.e. the Task directory will be retained for 7 days unless the Compute Node is removed or the Job is deleted." + }, + "maxTaskRetryCount": { + "type": "integer", + "format": "int32", + "title": "The maximum number of times the Task may be retried. The Batch service retries a Task if its exit code is nonzero.", + "description": "Note that this value specifically controls the number of retries for the Task executable due to a nonzero exit code. The Batch service will try the Task once, and may then retry up to this limit. For example, if the maximum retry count is 3, Batch tries the Task up to 4 times (one initial try and 3 retries). If the maximum retry count is 0, the Batch service does not retry the Task after the first attempt. If the maximum retry count is -1, the Batch service retries the Task without limit." + } + }, + "title": "Execution constraints to apply to a Task." + }, + "JobManagerTask": { + "properties": { + "id": { + "type": "string", + "title": "A string that uniquely identifies the Job Manager Task within the Job.", + "description": "The ID can contain any combination of alphanumeric characters including hyphens and underscores and cannot contain more than 64 characters." + }, + "displayName": { + "type": "string", + "title": "The display name of the Job Manager Task.", + "description": "It need not be unique and can contain any Unicode characters up to a maximum length of 1024." + }, + "commandLine": { + "type": "string", + "title": "The command line of the Job Manager Task.", + "description": "The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables)." + }, + "containerSettings": { + "$ref": "#/definitions/TaskContainerSettings", + "title": "The settings for the container under which the Job Manager Task runs.", + "description": "If the Pool that will run this Task has containerConfiguration set, this must be set as well. If the Pool that will run this Task doesn't have containerConfiguration set, this must not be set. When this is specified, all directories recursively below the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on the node) are mapped into the container, all Task environment variables are mapped into the container, and the Task command line is executed in the container. Files produced in the container outside of AZ_BATCH_NODE_ROOT_DIR might not be reflected to the host disk, meaning that Batch file APIs will not be able to access those files." + }, + "resourceFiles": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceFile" + }, + "title": "A list of files that the Batch service will download to the Compute Node before running the command line.", + "description": "Files listed under this element are located in the Task's working directory. There is a maximum size for the list of resource files. When the max size is exceeded, the request will fail and the response error code will be RequestEntityTooLarge. If this occurs, the collection of ResourceFiles must be reduced in size. This can be achieved using .zip files, Application Packages, or Docker Containers." + }, + "outputFiles": { + "type": "array", + "items": { + "$ref": "#/definitions/OutputFile" + }, + "title": "A list of files that the Batch service will upload from the Compute Node after running the command line.", + "description": "For multi-instance Tasks, the files will only be uploaded from the Compute Node on which the primary Task is executed." + }, + "environmentSettings": { + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentSetting" + }, + "title": "A list of environment variable settings for the Job Manager Task." + }, + "constraints": { + "$ref": "#/definitions/TaskConstraints", + "title": "Constraints that apply to the Job Manager Task." + }, + "killJobOnCompletion": { + "type": "boolean", + "title": "Whether completion of the Job Manager Task signifies completion of the entire Job.", + "description": "If true, when the Job Manager Task completes, the Batch service marks the Job as complete. If any Tasks are still running at this time (other than Job Release), those Tasks are terminated. If false, the completion of the Job Manager Task does not affect the Job status. In this case, you should either use the onAllTasksComplete attribute to terminate the Job, or have a client or user terminate the Job explicitly. An example of this is if the Job Manager creates a set of Tasks but then takes no further role in their execution. The default value is true. If you are using the onAllTasksComplete and onTaskFailure attributes to control Job lifetime, and using the Job Manager Task only to create the Tasks for the Job (not to monitor progress), then it is important to set killJobOnCompletion to false." + }, + "userIdentity": { + "$ref": "#/definitions/UserIdentity", + "title": "The user identity under which the Job Manager Task runs.", + "description": "If omitted, the Task runs as a non-administrative user unique to the Task." + }, + "runExclusive": { + "type": "boolean", + "title": "Whether the Job Manager Task requires exclusive use of the Compute Node where it runs.", + "description": "If true, no other Tasks will run on the same Node for as long as the Job Manager is running. If false, other Tasks can run simultaneously with the Job Manager on a Compute Node. The Job Manager Task counts normally against the Compute Node's concurrent Task limit, so this is only relevant if the Compute Node allows multiple concurrent Tasks. The default value is true." + }, + "applicationPackageReferences": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationPackageReference" + }, + "title": "A list of Application Packages that the Batch service will deploy to the Compute Node before running the command line.", + "description": "Application Packages are downloaded and deployed to a shared directory, not the Task working directory. Therefore, if a referenced Application Package is already on the Compute Node, and is up to date, then it is not re-downloaded; the existing copy on the Compute Node is used. If a referenced Application Package cannot be installed, for example because the package has been deleted or because download failed, the Task fails." + }, + "authenticationTokenSettings": { + "title": "The settings for an authentication token that the Task can use to perform Batch service operations.", + "description": "If this property is set, the Batch service provides the Task with an authentication token which can be used to authenticate Batch service operations without requiring an Account access key. The token is provided via the AZ_BATCH_AUTHENTICATION_TOKEN environment variable. The operations that the Task can carry out using the token depend on the settings. For example, a Task can request Job permissions in order to add other Tasks to the Job, or check the status of the Job or of other Tasks under the Job.", + "$ref": "#/definitions/AuthenticationTokenSettings" + }, + "allowLowPriorityNode": { + "type": "boolean", + "title": "Whether the Job Manager Task may run on a low-priority Compute Node.", + "description": "The default value is true." + } + }, + "required": [ + "id", + "commandLine" + ], + "title": "Specifies details of a Job Manager Task.", + "description": "The Job Manager Task is automatically started when the Job is created. The Batch service tries to schedule the Job Manager Task before any other Tasks in the Job. When shrinking a Pool, the Batch service tries to preserve Nodes where Job Manager Tasks are running for as long as possible (that is, Compute Nodes running 'normal' Tasks are removed before Compute Nodes running Job Manager Tasks). When a Job Manager Task fails and needs to be restarted, the system tries to schedule it at the highest priority. If there are no idle Compute Nodes available, the system may terminate one of the running Tasks in the Pool and return it to the queue in order to make room for the Job Manager Task to restart. Note that a Job Manager Task in one Job does not have priority over Tasks in other Jobs. Across Jobs, only Job level priorities are observed. For example, if a Job Manager in a priority 0 Job needs to be restarted, it will not displace Tasks of a priority 1 Job. Batch will retry Tasks when a recovery operation is triggered on a Node. Examples of recovery operations include (but are not limited to) when an unhealthy Node is rebooted or a Compute Node disappeared due to host failure. Retries due to recovery operations are independent of and are not counted against the maxTaskRetryCount. Even if the maxTaskRetryCount is 0, an internal retry due to a recovery operation may occur. Because of this, all Tasks should be idempotent. This means Tasks need to tolerate being interrupted and restarted without causing any corruption or duplicate data. The best practice for long running Tasks is to use some form of checkpointing." + }, + "JobPreparationTask": { + "properties": { + "id": { + "type": "string", + "title": "A string that uniquely identifies the Job Preparation Task within the Job.", + "description": "The ID can contain any combination of alphanumeric characters including hyphens and underscores and cannot contain more than 64 characters. If you do not specify this property, the Batch service assigns a default value of 'jobpreparation'. No other Task in the Job can have the same ID as the Job Preparation Task. If you try to submit a Task with the same id, the Batch service rejects the request with error code TaskIdSameAsJobPreparationTask; if you are calling the REST API directly, the HTTP status code is 409 (Conflict)." + }, + "commandLine": { + "type": "string", + "title": "The command line of the Job Preparation Task.", + "description": "The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables)." + }, + "containerSettings": { + "$ref": "#/definitions/TaskContainerSettings", + "title": "The settings for the container under which the Job Preparation Task runs.", + "description": "When this is specified, all directories recursively below the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on the node) are mapped into the container, all Task environment variables are mapped into the container, and the Task command line is executed in the container. Files produced in the container outside of AZ_BATCH_NODE_ROOT_DIR might not be reflected to the host disk, meaning that Batch file APIs will not be able to access those files." + }, + "resourceFiles": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceFile" + }, + "title": "A list of files that the Batch service will download to the Compute Node before running the command line.", + "description": "Files listed under this element are located in the Task's working directory. There is a maximum size for the list of resource files. When the max size is exceeded, the request will fail and the response error code will be RequestEntityTooLarge. If this occurs, the collection of ResourceFiles must be reduced in size. This can be achieved using .zip files, Application Packages, or Docker Containers." + }, + "environmentSettings": { + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentSetting" + }, + "title": "A list of environment variable settings for the Job Preparation Task." + }, + "constraints": { + "$ref": "#/definitions/TaskConstraints", + "title": "Constraints that apply to the Job Preparation Task." + }, + "waitForSuccess": { + "type": "boolean", + "title": "Whether the Batch service should wait for the Job Preparation Task to complete successfully before scheduling any other Tasks of the Job on the Compute Node. A Job Preparation Task has completed successfully if it exits with exit code 0.", + "description": "If true and the Job Preparation Task fails on a Node, the Batch service retries the Job Preparation Task up to its maximum retry count (as specified in the constraints element). If the Task has still not completed successfully after all retries, then the Batch service will not schedule Tasks of the Job to the Node. The Node remains active and eligible to run Tasks of other Jobs. If false, the Batch service will not wait for the Job Preparation Task to complete. In this case, other Tasks of the Job can start executing on the Compute Node while the Job Preparation Task is still running; and even if the Job Preparation Task fails, new Tasks will continue to be scheduled on the Compute Node. The default value is true." + }, + "userIdentity": { + "$ref": "#/definitions/UserIdentity", + "title": "The user identity under which the Job Preparation Task runs.", + "description": "If omitted, the Task runs as a non-administrative user unique to the Task on Windows Compute Nodes, or a non-administrative user unique to the Pool on Linux Compute Nodes." + }, + "rerunOnNodeRebootAfterSuccess": { + "type": "boolean", + "title": "Whether the Batch service should rerun the Job Preparation Task after a Compute Node reboots.", + "description": "The Job Preparation Task is always rerun if a Compute Node is reimaged, or if the Job Preparation Task did not complete (e.g. because the reboot occurred while the Task was running). Therefore, you should always write a Job Preparation Task to be idempotent and to behave correctly if run multiple times. The default value is true." + } + }, + "required": [ + "commandLine" + ], + "title": "A Job Preparation Task to run before any Tasks of the Job on any given Compute Node.", + "description": "You can use Job Preparation to prepare a Node to run Tasks for the Job. Activities commonly performed in Job Preparation include: Downloading common resource files used by all the Tasks in the Job. The Job Preparation Task can download these common resource files to the shared location on the Node. (AZ_BATCH_NODE_ROOT_DIR\\shared), or starting a local service on the Node so that all Tasks of that Job can communicate with it. If the Job Preparation Task fails (that is, exhausts its retry count before exiting with exit code 0), Batch will not run Tasks of this Job on the Node. The Compute Node remains ineligible to run Tasks of this Job until it is reimaged. The Compute Node remains active and can be used for other Jobs. The Job Preparation Task can run multiple times on the same Node. Therefore, you should write the Job Preparation Task to handle re-execution. If the Node is rebooted, the Job Preparation Task is run again on the Compute Node before scheduling any other Task of the Job, if rerunOnNodeRebootAfterSuccess is true or if the Job Preparation Task did not previously complete. If the Node is reimaged, the Job Preparation Task is run again before scheduling any Task of the Job. Batch will retry Tasks when a recovery operation is triggered on a Node. Examples of recovery operations include (but are not limited to) when an unhealthy Node is rebooted or a Compute Node disappeared due to host failure. Retries due to recovery operations are independent of and are not counted against the maxTaskRetryCount. Even if the maxTaskRetryCount is 0, an internal retry due to a recovery operation may occur. Because of this, all Tasks should be idempotent. This means Tasks need to tolerate being interrupted and restarted without causing any corruption or duplicate data. The best practice for long running Tasks is to use some form of checkpointing." + }, + "JobReleaseTask": { + "properties": { + "id": { + "type": "string", + "title": "A string that uniquely identifies the Job Release Task within the Job.", + "description": "The ID can contain any combination of alphanumeric characters including hyphens and underscores and cannot contain more than 64 characters. If you do not specify this property, the Batch service assigns a default value of 'jobrelease'. No other Task in the Job can have the same ID as the Job Release Task. If you try to submit a Task with the same id, the Batch service rejects the request with error code TaskIdSameAsJobReleaseTask; if you are calling the REST API directly, the HTTP status code is 409 (Conflict)." + }, + "commandLine": { + "type": "string", + "title": "The command line of the Job Release Task.", + "description": "The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables)." + }, + "containerSettings": { + "$ref": "#/definitions/TaskContainerSettings", + "title": "The settings for the container under which the Job Release Task runs.", + "description": "When this is specified, all directories recursively below the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on the node) are mapped into the container, all Task environment variables are mapped into the container, and the Task command line is executed in the container. Files produced in the container outside of AZ_BATCH_NODE_ROOT_DIR might not be reflected to the host disk, meaning that Batch file APIs will not be able to access those files." + }, + "resourceFiles": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceFile" + }, + "title": "A list of files that the Batch service will download to the Compute Node before running the command line. There is a maximum size for the list of resource files. When the max size is exceeded, the request will fail and the response error code will be RequestEntityTooLarge. If this occurs, the collection of ResourceFiles must be reduced in size. This can be achieved using .zip files, Application Packages, or Docker Containers.", + "description": "Files listed under this element are located in the Task's working directory." + }, + "environmentSettings": { + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentSetting" + }, + "title": "A list of environment variable settings for the Job Release Task." + }, + "maxWallClockTime": { + "type": "string", + "format": "duration", + "title": "The maximum elapsed time that the Job Release Task may run on a given Compute Node, measured from the time the Task starts. If the Task does not complete within the time limit, the Batch service terminates it. The default value is 15 minutes. You may not specify a timeout longer than 15 minutes. If you do, the Batch service rejects it with an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request)." + }, + "retentionTime": { + "type": "string", + "format": "duration", + "title": "The minimum time to retain the Task directory for the Job Release Task on the Compute Node. After this time, the Batch service may delete the Task directory and all its contents.", + "description": "The default is 7 days, i.e. the Task directory will be retained for 7 days unless the Compute Node is removed or the Job is deleted." + }, + "userIdentity": { + "$ref": "#/definitions/UserIdentity", + "title": "The user identity under which the Job Release Task runs.", + "description": "If omitted, the Task runs as a non-administrative user unique to the Task." + } + }, + "required": [ + "commandLine" + ], + "title": "A Job Release Task to run on Job completion on any Compute Node where the Job has run.", + "description": "The Job Release Task runs when the Job ends, because of one of the following: The user calls the Terminate Job API, or the Delete Job API while the Job is still active, the Job's maximum wall clock time constraint is reached, and the Job is still active, or the Job's Job Manager Task completed, and the Job is configured to terminate when the Job Manager completes. The Job Release Task runs on each Node where Tasks of the Job have run and the Job Preparation Task ran and completed. If you reimage a Node after it has run the Job Preparation Task, and the Job ends without any further Tasks of the Job running on that Node (and hence the Job Preparation Task does not re-run), then the Job Release Task does not run on that Compute Node. If a Node reboots while the Job Release Task is still running, the Job Release Task runs again when the Compute Node starts up. The Job is not marked as complete until all Job Release Tasks have completed. The Job Release Task runs in the background. It does not occupy a scheduling slot; that is, it does not count towards the maxTasksPerNode limit specified on the Pool." + }, + "TaskSchedulingPolicy": { + "properties": { + "nodeFillType": { + "type": "string", + "title": "How Tasks are distributed across Compute Nodes in a Pool.", + "description": "If not specified, the default is spread.", + "enum": [ + "spread", + "pack" + ], + "x-ms-enum": { + "name": "ComputeNodeFillType", + "modelAsString": false, + "values": [ + { + "value": "spread", + "description": "Tasks should be assigned evenly across all Compute Nodes in the Pool." + }, + { + "value": "pack", + "description": "As many Tasks as possible (maxTasksPerNode) should be assigned to each Compute Node in the Pool before any Tasks are assigned to the next Compute Node in the Pool." + } + ] + } + } + }, + "required": [ + "nodeFillType" + ], + "title": "Specifies how Tasks should be distributed across Compute Nodes." + }, + "StartTask": { + "properties": { + "commandLine": { + "type": "string", + "title": "The command line of the StartTask.", + "description": "The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables)." + }, + "containerSettings": { + "$ref": "#/definitions/TaskContainerSettings", + "title": "The settings for the container under which the StartTask runs.", + "description": "When this is specified, all directories recursively below the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on the node) are mapped into the container, all Task environment variables are mapped into the container, and the Task command line is executed in the container. Files produced in the container outside of AZ_BATCH_NODE_ROOT_DIR might not be reflected to the host disk, meaning that Batch file APIs will not be able to access those files." + }, + "resourceFiles": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceFile" + }, + "title": "A list of files that the Batch service will download to the Compute Node before running the command line. There is a maximum size for the list of resource files. When the max size is exceeded, the request will fail and the response error code will be RequestEntityTooLarge. If this occurs, the collection of ResourceFiles must be reduced in size. This can be achieved using .zip files, Application Packages, or Docker Containers.", + "description": "Files listed under this element are located in the Task's working directory." + }, + "environmentSettings": { + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentSetting" + }, + "title": "A list of environment variable settings for the StartTask." + }, + "userIdentity": { + "$ref": "#/definitions/UserIdentity", + "title": "The user identity under which the StartTask runs.", + "description": "If omitted, the Task runs as a non-administrative user unique to the Task." + }, + "maxTaskRetryCount": { + "type": "integer", + "format": "int32", + "title": "The maximum number of times the Task may be retried.", + "description": "The Batch service retries a Task if its exit code is nonzero. Note that this value specifically controls the number of retries. The Batch service will try the Task once, and may then retry up to this limit. For example, if the maximum retry count is 3, Batch tries the Task up to 4 times (one initial try and 3 retries). If the maximum retry count is 0, the Batch service does not retry the Task. If the maximum retry count is -1, the Batch service retries the Task without limit." + }, + "waitForSuccess": { + "type": "boolean", + "title": "Whether the Batch service should wait for the StartTask to complete successfully (that is, to exit with exit code 0) before scheduling any Tasks on the Compute Node.", + "description": "If true and the StartTask fails on a Node, the Batch service retries the StartTask up to its maximum retry count (maxTaskRetryCount). If the Task has still not completed successfully after all retries, then the Batch service marks the Node unusable, and will not schedule Tasks to it. This condition can be detected via the Compute Node state and failure info details. If false, the Batch service will not wait for the StartTask to complete. In this case, other Tasks can start executing on the Compute Node while the StartTask is still running; and even if the StartTask fails, new Tasks will continue to be scheduled on the Compute Node. The default is true." + } + }, + "required": [ + "commandLine" + ], + "title": "A Task which is run when a Node joins a Pool in the Azure Batch service, or when the Compute Node is rebooted or reimaged.", + "description": "Batch will retry Tasks when a recovery operation is triggered on a Node. Examples of recovery operations include (but are not limited to) when an unhealthy Node is rebooted or a Compute Node disappeared due to host failure. Retries due to recovery operations are independent of and are not counted against the maxTaskRetryCount. Even if the maxTaskRetryCount is 0, an internal retry due to a recovery operation may occur. Because of this, all Tasks should be idempotent. This means Tasks need to tolerate being interrupted and restarted without causing any corruption or duplicate data. The best practice for long running Tasks is to use some form of checkpointing. In some cases the StartTask may be re-run even though the Compute Node was not rebooted. Special care should be taken to avoid StartTasks which create breakaway process or install/launch services from the StartTask working directory, as this will block Batch from being able to re-run the StartTask." + }, + "CertificateReference": { + "properties": { + "thumbprint": { + "type": "string", + "title": "The thumbprint of the Certificate." + }, + "thumbprintAlgorithm": { + "type": "string", + "title": "The algorithm with which the thumbprint is associated. This must be sha1." + }, + "storeLocation": { + "type": "string", + "title": "The location of the Certificate store on the Compute Node into which to install the Certificate.", + "description": "The default value is currentuser. This property is applicable only for Pools configured with Windows Compute Nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows Image reference). For Linux Compute Nodes, the Certificates are stored in a directory inside the Task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the Task to query for this location. For Certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and Certificates are placed in that directory.", + "enum": [ + "currentuser", + "localmachine" + ], + "x-ms-enum": { + "name": "CertificateStoreLocation", + "modelAsString": false, + "values": [ + { + "value": "currentuser", + "description": "Certificates should be installed to the CurrentUser Certificate store.", + "name": "currentUser" + }, + { + "value": "localmachine", + "description": "Certificates should be installed to the LocalMachine Certificate store.", + "name": "localMachine" + } + ] + } + }, + "storeName": { + "type": "string", + "title": "The name of the Certificate store on the Compute Node into which to install the Certificate.", + "description": "This property is applicable only for Pools configured with Windows Compute Nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows Image reference). Common store names include: My, Root, CA, Trust, Disallowed, TrustedPeople, TrustedPublisher, AuthRoot, AddressBook, but any custom store name can also be used. The default value is My." + }, + "visibility": { + "type": "array", + "items": { + "type": "string", + "x-nullable": false, + "enum": [ + "starttask", + "task", + "remoteuser" + ], + "x-ms-enum": { + "name": "CertificateVisibility", + "modelAsString": false, + "values": [ + { + "value": "starttask", + "description": "The Certificate should be visible to the user account under which the StartTask is run. Note that if AutoUser Scope is Pool for both the StartTask and a Task, this certificate will be visible to the Task as well.", + "name": "startTask" + }, + { + "value": "task", + "description": "The Certificate should be visible to the user accounts under which Job Tasks are run." + }, + { + "value": "remoteuser", + "description": "The Certificate should be visible to the user accounts under which users remotely access the Compute Node.", + "name": "remoteUser" + } + ] + } + }, + "title": "Which user Accounts on the Compute Node should have access to the private data of the Certificate.", + "description": "You can specify more than one visibility in this collection. The default is all Accounts." + } + }, + "required": [ + "thumbprint", + "thumbprintAlgorithm" + ], + "title": "A reference to a Certificate to be installed on Compute Nodes in a Pool." + }, + "MetadataItem": { + "properties": { + "name": { + "type": "string", + "title": "The name of the metadata item." + }, + "value": { + "type": "string", + "title": "The value of the metadata item." + } + }, + "required": [ + "name", + "value" + ], + "title": "A name-value pair associated with a Batch service resource.", + "description": "The Batch service does not assign any meaning to this metadata; it is solely for the use of user code." + }, + "PoolSpecification": { + "properties": { + "displayName": { + "type": "string", + "title": "The display name for the Pool.", + "description": "The display name need not be unique and can contain any Unicode characters up to a maximum length of 1024." + }, + "vmSize": { + "type": "string", + "title": "The size of the virtual machines in the Pool. All virtual machines in a Pool are the same size.", + "description": "For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes)." + }, + "cloudServiceConfiguration": { + "$ref": "#/definitions/CloudServiceConfiguration", + "title": "The cloud service configuration for the Pool.", + "description": "This property must be specified if the Pool needs to be created with Azure PaaS VMs. This property and virtualMachineConfiguration are mutually exclusive and one of the properties must be specified. If neither is specified then the Batch service returns an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request). This property cannot be specified if the Batch Account was created with its poolAllocationMode property set to 'UserSubscription'." + }, + "virtualMachineConfiguration": { + "$ref": "#/definitions/VirtualMachineConfiguration", + "title": "The virtual machine configuration for the Pool.", + "description": "This property must be specified if the Pool needs to be created with Azure IaaS VMs. This property and cloudServiceConfiguration are mutually exclusive and one of the properties must be specified. If neither is specified then the Batch service returns an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request)." + }, + "maxTasksPerNode": { + "type": "integer", + "format": "int32", + "title": "The maximum number of Tasks that can run concurrently on a single Compute Node in the Pool.", + "description": "The default value is 1. The maximum value is the smaller of 4 times the number of cores of the vmSize of the Pool or 256." + }, + "taskSchedulingPolicy": { + "$ref": "#/definitions/TaskSchedulingPolicy", + "title": "How Tasks are distributed across Compute Nodes in a Pool.", + "description": "If not specified, the default is spread." + }, + "resizeTimeout": { + "type": "string", + "format": "duration", + "title": "The timeout for allocation of Compute Nodes to the Pool.", + "description": "This timeout applies only to manual scaling; it has no effect when enableAutoScale is set to true. The default value is 15 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service rejects the request with an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request)." + }, + "targetDedicatedNodes": { + "type": "integer", + "format": "int32", + "title": "The desired number of dedicated Compute Nodes in the Pool.", + "description": "This property must not be specified if enableAutoScale is set to true. If enableAutoScale is set to false, then you must set either targetDedicatedNodes, targetLowPriorityNodes, or both." + }, + "targetLowPriorityNodes": { + "type": "integer", + "format": "int32", + "title": "The desired number of low-priority Compute Nodes in the Pool.", + "description": "This property must not be specified if enableAutoScale is set to true. If enableAutoScale is set to false, then you must set either targetDedicatedNodes, targetLowPriorityNodes, or both." + }, + "enableAutoScale": { + "type": "boolean", + "title": "Whether the Pool size should automatically adjust over time.", + "description": "If false, at least one of targetDedicateNodes and targetLowPriorityNodes must be specified. If true, the autoScaleFormula element is required. The Pool automatically resizes according to the formula. The default value is false." + }, + "autoScaleFormula": { + "type": "string", + "title": "The formula for the desired number of Compute Nodes in the Pool.", + "description": "This property must not be specified if enableAutoScale is set to false. It is required if enableAutoScale is set to true. The formula is checked for validity before the Pool is created. If the formula is not valid, the Batch service rejects the request with detailed error information." + }, + "autoScaleEvaluationInterval": { + "type": "string", + "format": "duration", + "title": "The time interval at which to automatically adjust the Pool size according to the autoscale formula.", + "description": "The default value is 15 minutes. The minimum and maximum value are 5 minutes and 168 hours respectively. If you specify a value less than 5 minutes or greater than 168 hours, the Batch service rejects the request with an invalid property value error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request)." + }, + "enableInterNodeCommunication": { + "type": "boolean", + "title": "Whether the Pool permits direct communication between Compute Nodes.", + "description": "Enabling inter-node communication limits the maximum size of the Pool due to deployment restrictions on the Compute Nodes of the Pool. This may result in the Pool not reaching its desired size. The default value is false." + }, + "networkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration", + "title": "The network configuration for the Pool." + }, + "startTask": { + "$ref": "#/definitions/StartTask", + "title": "A Task to run on each Compute Node as it joins the Pool. The Task runs when the Compute Node is added to the Pool or when the Compute Node is restarted." + }, + "certificateReferences": { + "type": "array", + "items": { + "$ref": "#/definitions/CertificateReference" + }, + "title": "A list of Certificates to be installed on each Compute Node in the Pool.", + "description": "For Windows Nodes, the Batch service installs the Certificates to the specified Certificate store and location. For Linux Compute Nodes, the Certificates are stored in a directory inside the Task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the Task to query for this location. For Certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and Certificates are placed in that directory." + }, + "applicationPackageReferences": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationPackageReference" + }, + "title": "The list of Packages to be installed on each Compute Node in the Pool.", + "description": "Changes to Package references affect all new Nodes joining the Pool, but do not affect Compute Nodes that are already in the Pool until they are rebooted or reimaged. There is a maximum of 10 Package references on any given Pool." + }, + "applicationLicenses": { + "type": "array", + "items": { + "type": "string" + }, + "title": "The list of application licenses the Batch service will make available on each Compute Node in the Pool.", + "description": "The list of application licenses must be a subset of available Batch service application licenses. If a license is requested which is not supported, Pool creation will fail. The permitted licenses available on the Pool are 'maya', 'vray', '3dsmax', 'arnold'. An additional charge applies for each application license added to the Pool." + }, + "userAccounts": { + "type": "array", + "items": { + "$ref": "#/definitions/UserAccount" + }, + "title": "The list of user Accounts to be created on each Compute Node in the Pool." + }, + "metadata": { + "type": "array", + "items": { + "$ref": "#/definitions/MetadataItem" + }, + "title": "A list of name-value pairs associated with the Pool as metadata.", + "description": "The Batch service does not assign any meaning to metadata; it is solely for the use of user code." + }, + "mountConfiguration": { + "type": "array", + "items": { + "$ref": "#/definitions/MountConfiguration" + }, + "title": "A list of file systems to mount on each node in the pool.", + "description": "This supports Azure Files, NFS, CIFS/SMB, and Blobfuse." + } + }, + "required": [ + "vmSize" + ], + "title": "Specification for creating a new Pool." + }, + "AutoPoolSpecification": { + "properties": { + "autoPoolIdPrefix": { + "type": "string", + "title": "A prefix to be added to the unique identifier when a Pool is automatically created.", + "description": "The Batch service assigns each auto Pool a unique identifier on creation. To distinguish between Pools created for different purposes, you can specify this element to add a prefix to the ID that is assigned. The prefix can be up to 20 characters long." + }, + "poolLifetimeOption": { + "type": "string", + "title": "The minimum lifetime of created auto Pools, and how multiple Jobs on a schedule are assigned to Pools.", + "enum": [ + "jobschedule", + "job" + ], + "x-ms-enum": { + "name": "PoolLifetimeOption", + "modelAsString": false, + "values": [ + { + "value": "jobschedule", + "description": "The Pool exists for the lifetime of the Job Schedule. The Batch Service creates the Pool when it creates the first Job on the schedule. You may apply this option only to Job Schedules, not to Jobs.", + "name": "jobSchedule" + }, + { + "value": "job", + "description": "The Pool exists for the lifetime of the Job to which it is dedicated. The Batch service creates the Pool when it creates the Job. If the 'job' option is applied to a Job Schedule, the Batch service creates a new auto Pool for every Job created on the schedule." + } + ] + } + }, + "keepAlive": { + "type": "boolean", + "title": "Whether to keep an auto Pool alive after its lifetime expires.", + "description": "If false, the Batch service deletes the Pool once its lifetime (as determined by the poolLifetimeOption setting) expires; that is, when the Job or Job Schedule completes. If true, the Batch service does not delete the Pool automatically. It is up to the user to delete auto Pools created with this option." + }, + "pool": { + "$ref": "#/definitions/PoolSpecification", + "title": "The Pool specification for the auto Pool." + } + }, + "required": [ + "poolLifetimeOption" + ], + "title": "Specifies characteristics for a temporary 'auto pool'. The Batch service will create this auto Pool when the Job is submitted." + }, + "PoolInformation": { + "properties": { + "poolId": { + "type": "string", + "title": "The ID of an existing Pool. All the Tasks of the Job will run on the specified Pool.", + "description": "You must ensure that the Pool referenced by this property exists. If the Pool does not exist at the time the Batch service tries to schedule a Job, no Tasks for the Job will run until you create a Pool with that id. Note that the Batch service will not reject the Job request; it will simply not run Tasks until the Pool exists. You must specify either the Pool ID or the auto Pool specification, but not both." + }, + "autoPoolSpecification": { + "$ref": "#/definitions/AutoPoolSpecification", + "title": "Characteristics for a temporary 'auto pool'. The Batch service will create this auto Pool when the Job is submitted.", + "description": "If auto Pool creation fails, the Batch service moves the Job to a completed state, and the Pool creation error is set in the Job's scheduling error property. The Batch service manages the lifetime (both creation and, unless keepAlive is specified, deletion) of the auto Pool. Any user actions that affect the lifetime of the auto Pool while the Job is active will result in unexpected behavior. You must specify either the Pool ID or the auto Pool specification, but not both." + } + }, + "title": "Specifies how a Job should be assigned to a Pool." + }, + "JobSpecification": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "title": "The priority of Jobs created under this schedule.", + "description": "Priority values can range from -1000 to 1000, with -1000 being the lowest priority and 1000 being the highest priority. The default value is 0. This priority is used as the default for all Jobs under the Job Schedule. You can update a Job's priority after it has been created using by using the update Job API." + }, + "displayName": { + "type": "string", + "title": "The display name for Jobs created under this schedule.", + "description": "The name need not be unique and can contain any Unicode characters up to a maximum length of 1024." + }, + "usesTaskDependencies": { + "type": "boolean", + "title": "Whether Tasks in the Job can define dependencies on each other. The default is false." + }, + "onAllTasksComplete": { + "title": "The action the Batch service should take when all Tasks in a Job created under this schedule are in the completed state.", + "description": "Note that if a Job contains no Tasks, then all Tasks are considered complete. This option is therefore most commonly used with a Job Manager task; if you want to use automatic Job termination without a Job Manager, you should initially set onAllTasksComplete to noaction and update the Job properties to set onAllTasksComplete to terminatejob once you have finished adding Tasks. The default is noaction.", + "$ref": "#/definitions/OnAllTasksComplete" + }, + "onTaskFailure": { + "title": "The action the Batch service should take when any Task fails in a Job created under this schedule. A Task is considered to have failed if it have failed if has a failureInfo. A failureInfo is set if the Task completes with a non-zero exit code after exhausting its retry count, or if there was an error starting the Task, for example due to a resource file download error.", + "description": "The default is noaction.", + "$ref": "#/definitions/OnTaskFailure" + }, + "networkConfiguration": { + "$ref": "#/definitions/JobNetworkConfiguration", + "title": "The network configuration for the Job." + }, + "constraints": { + "$ref": "#/definitions/JobConstraints", + "title": "The execution constraints for Jobs created under this schedule." + }, + "jobManagerTask": { + "$ref": "#/definitions/JobManagerTask", + "title": "The details of a Job Manager Task to be launched when a Job is started under this schedule.", + "description": "If the Job does not specify a Job Manager Task, the user must explicitly add Tasks to the Job using the Task API. If the Job does specify a Job Manager Task, the Batch service creates the Job Manager Task when the Job is created, and will try to schedule the Job Manager Task before scheduling other Tasks in the Job." + }, + "jobPreparationTask": { + "$ref": "#/definitions/JobPreparationTask", + "title": "The Job Preparation Task for Jobs created under this schedule.", + "description": "If a Job has a Job Preparation Task, the Batch service will run the Job Preparation Task on a Node before starting any Tasks of that Job on that Compute Node." + }, + "jobReleaseTask": { + "$ref": "#/definitions/JobReleaseTask", + "title": "The Job Release Task for Jobs created under this schedule.", + "description": "The primary purpose of the Job Release Task is to undo changes to Nodes made by the Job Preparation Task. Example activities include deleting local files, or shutting down services that were started as part of Job preparation. A Job Release Task cannot be specified without also specifying a Job Preparation Task for the Job. The Batch service runs the Job Release Task on the Compute Nodes that have run the Job Preparation Task." + }, + "commonEnvironmentSettings": { + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentSetting" + }, + "title": "A list of common environment variable settings. These environment variables are set for all Tasks in Jobs created under this schedule (including the Job Manager, Job Preparation and Job Release Tasks).", + "description": "Individual Tasks can override an environment setting specified here by specifying the same setting name with a different value." + }, + "poolInfo": { + "$ref": "#/definitions/PoolInformation", + "title": "The Pool on which the Batch service runs the Tasks of Jobs created under this schedule." + }, + "metadata": { + "type": "array", + "items": { + "$ref": "#/definitions/MetadataItem" + }, + "title": "A list of name-value pairs associated with each Job created under this schedule as metadata.", + "description": "The Batch service does not assign any meaning to metadata; it is solely for the use of user code." + } + }, + "required": [ + "poolInfo" + ], + "title": "Specifies details of the Jobs to be created on a schedule." + }, + "RecentJob": { + "properties": { + "id": { + "type": "string", + "title": "The ID of the Job." + }, + "url": { + "type": "string", + "title": "The URL of the Job." + } + }, + "title": "Information about the most recent Job to run under the Job Schedule." + }, + "JobScheduleExecutionInformation": { + "properties": { + "nextRunTime": { + "type": "string", + "format": "date-time", + "title": "The next time at which a Job will be created under this schedule.", + "description": "This property is meaningful only if the schedule is in the active state when the time comes around. For example, if the schedule is disabled, no Job will be created at nextRunTime unless the Job is enabled before then." + }, + "recentJob": { + "$ref": "#/definitions/RecentJob", + "title": "Information about the most recent Job under the Job Schedule.", + "description": "This property is present only if the at least one Job has run under the schedule." + }, + "endTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the schedule ended.", + "description": "This property is set only if the Job Schedule is in the completed state." + } + }, + "title": "Contains information about Jobs that have been and will be run under a Job Schedule." + }, + "JobScheduleStatistics": { + "properties": { + "url": { + "type": "string", + "title": "The URL of the statistics." + }, + "startTime": { + "type": "string", + "format": "date-time", + "title": "The start time of the time range covered by the statistics." + }, + "lastUpdateTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the statistics were last updated. All statistics are limited to the range between startTime and lastUpdateTime." + }, + "userCPUTime": { + "type": "string", + "format": "duration", + "title": "The total user mode CPU time (summed across all cores and all Compute Nodes) consumed by all Tasks in all Jobs created under the schedule." + }, + "kernelCPUTime": { + "type": "string", + "format": "duration", + "title": "The total kernel mode CPU time (summed across all cores and all Compute Nodes) consumed by all Tasks in all Jobs created under the schedule." + }, + "wallClockTime": { + "type": "string", + "format": "duration", + "title": "The total wall clock time of all the Tasks in all the Jobs created under the schedule.", + "description": "The wall clock time is the elapsed time from when the Task started running on a Compute Node to when it finished (or to the last time the statistics were updated, if the Task had not finished by then). If a Task was retried, this includes the wall clock time of all the Task retries." + }, + "readIOps": { + "type": "integer", + "format": "int64", + "title": "The total number of disk read operations made by all Tasks in all Jobs created under the schedule." + }, + "writeIOps": { + "type": "integer", + "format": "int64", + "title": "The total number of disk write operations made by all Tasks in all Jobs created under the schedule." + }, + "readIOGiB": { + "type": "number", + "format": "double", + "title": "The total gibibytes read from disk by all Tasks in all Jobs created under the schedule." + }, + "writeIOGiB": { + "type": "number", + "format": "double", + "title": "The total gibibytes written to disk by all Tasks in all Jobs created under the schedule." + }, + "numSucceededTasks": { + "type": "integer", + "format": "int64", + "title": "The total number of Tasks successfully completed during the given time range in Jobs created under the schedule. A Task completes successfully if it returns exit code 0." + }, + "numFailedTasks": { + "type": "integer", + "format": "int64", + "title": "The total number of Tasks that failed during the given time range in Jobs created under the schedule. A Task fails if it exhausts its maximum retry count without returning exit code 0." + }, + "numTaskRetries": { + "type": "integer", + "format": "int64", + "title": "The total number of retries during the given time range on all Tasks in all Jobs created under the schedule." + }, + "waitTime": { + "type": "string", + "format": "duration", + "title": "The total wait time of all Tasks in all Jobs created under the schedule. The wait time for a Task is defined as the elapsed time between the creation of the Task and the start of Task execution. (If the Task is retried due to failures, the wait time is the time to the most recent Task execution.)", + "description": "This value is only reported in the Account lifetime statistics; it is not included in the Job statistics." + } + }, + "required": [ + "url", + "startTime", + "lastUpdateTime", + "userCPUTime", + "kernelCPUTime", + "wallClockTime", + "readIOps", + "writeIOps", + "readIOGiB", + "writeIOGiB", + "numSucceededTasks", + "numFailedTasks", + "numTaskRetries", + "waitTime" + ], + "title": "Resource usage statistics for a Job Schedule." + }, + "CloudJobSchedule": { + "properties": { + "id": { + "type": "string", + "title": "A string that uniquely identifies the schedule within the Account." + }, + "displayName": { + "type": "string", + "title": "The display name for the schedule." + }, + "url": { + "type": "string", + "title": "The URL of the Job Schedule." + }, + "eTag": { + "type": "string", + "title": "The ETag of the Job Schedule.", + "description": "This is an opaque string. You can use it to detect whether the Job Schedule has changed between requests. In particular, you can be pass the ETag with an Update Job Schedule request to specify that your changes should take effect only if nobody else has modified the schedule in the meantime." + }, + "lastModified": { + "type": "string", + "format": "date-time", + "title": "The last modified time of the Job Schedule.", + "description": "This is the last time at which the schedule level data, such as the Job specification or recurrence information, changed. It does not factor in job-level changes such as new Jobs being created or Jobs changing state." + }, + "creationTime": { + "type": "string", + "format": "date-time", + "title": "The creation time of the Job Schedule." + }, + "state": { + "title": "The current state of the Job Schedule.", + "$ref": "#/definitions/JobScheduleState" + }, + "stateTransitionTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the Job Schedule entered the current state." + }, + "previousState": { + "title": "The previous state of the Job Schedule.", + "description": "This property is not present if the Job Schedule is in its initial active state.", + "$ref": "#/definitions/JobScheduleState" + }, + "previousStateTransitionTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the Job Schedule entered its previous state.", + "description": "This property is not present if the Job Schedule is in its initial active state." + }, + "schedule": { + "$ref": "#/definitions/Schedule", + "title": "The schedule according to which Jobs will be created." + }, + "jobSpecification": { + "$ref": "#/definitions/JobSpecification", + "title": "The details of the Jobs to be created on this schedule." + }, + "executionInfo": { + "$ref": "#/definitions/JobScheduleExecutionInformation", + "title": "Information about Jobs that have been and will be run under this schedule." + }, + "metadata": { + "type": "array", + "items": { + "$ref": "#/definitions/MetadataItem" + }, + "title": "A list of name-value pairs associated with the schedule as metadata.", + "description": "The Batch service does not assign any meaning to metadata; it is solely for the use of user code." + }, + "stats": { + "$ref": "#/definitions/JobScheduleStatistics", + "title": "The lifetime resource usage statistics for the Job Schedule. The statistics may not be immediately available. The Batch service performs periodic roll-up of statistics. The typical delay is about 30 minutes." + } + }, + "title": "A Job Schedule that allows recurring Jobs by specifying when to run Jobs and a specification used to create each Job." + }, + "JobScheduleAddParameter": { + "properties": { + "id": { + "type": "string", + "title": "A string that uniquely identifies the schedule within the Account.", + "description": "The ID can contain any combination of alphanumeric characters including hyphens and underscores, and cannot contain more than 64 characters. The ID is case-preserving and case-insensitive (that is, you may not have two IDs within an Account that differ only by case)." + }, + "displayName": { + "type": "string", + "title": "The display name for the schedule.", + "description": "The display name need not be unique and can contain any Unicode characters up to a maximum length of 1024." + }, + "schedule": { + "$ref": "#/definitions/Schedule", + "title": "The schedule according to which Jobs will be created." + }, + "jobSpecification": { + "$ref": "#/definitions/JobSpecification", + "title": "The details of the Jobs to be created on this schedule." + }, + "metadata": { + "type": "array", + "items": { + "$ref": "#/definitions/MetadataItem" + }, + "title": "A list of name-value pairs associated with the schedule as metadata.", + "description": "The Batch service does not assign any meaning to metadata; it is solely for the use of user code." + } + }, + "required": [ + "id", + "schedule", + "jobSpecification" + ], + "title": "A Job Schedule that allows recurring Jobs by specifying when to run Jobs and a specification used to create each Job." + }, + "CloudJobScheduleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudJobSchedule" + }, + "title": "The list of Job Schedules." + }, + "odata.nextLink": { + "type": "string", + "title": "The URL to get the next set of results." + } + }, + "title": "The result of listing the Job Schedules in an Account." + }, + "JobSchedulingError": { + "properties": { + "category": { + "title": "The category of the Job scheduling error.", + "$ref": "#/definitions/ErrorCategory" + }, + "code": { + "type": "string", + "title": "An identifier for the Job scheduling error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "title": "A message describing the Job scheduling error, intended to be suitable for display in a user interface." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/NameValuePair" + }, + "title": "A list of additional error details related to the scheduling error." + } + }, + "required": [ + "category" + ], + "title": "An error encountered by the Batch service when scheduling a Job." + }, + "JobExecutionInformation": { + "properties": { + "startTime": { + "type": "string", + "format": "date-time", + "title": "The start time of the Job.", + "description": "This is the time at which the Job was created." + }, + "endTime": { + "type": "string", + "format": "date-time", + "title": "The completion time of the Job.", + "description": "This property is set only if the Job is in the completed state." + }, + "poolId": { + "type": "string", + "title": "The ID of the Pool to which this Job is assigned.", + "description": "This element contains the actual Pool where the Job is assigned. When you get Job details from the service, they also contain a poolInfo element, which contains the Pool configuration data from when the Job was added or updated. That poolInfo element may also contain a poolId element. If it does, the two IDs are the same. If it does not, it means the Job ran on an auto Pool, and this property contains the ID of that auto Pool." + }, + "schedulingError": { + "$ref": "#/definitions/JobSchedulingError", + "title": "Details of any error encountered by the service in starting the Job.", + "description": "This property is not set if there was no error starting the Job." + }, + "terminateReason": { + "type": "string", + "title": "A string describing the reason the Job ended.", + "description": "This property is set only if the Job is in the completed state. If the Batch service terminates the Job, it sets the reason as follows: JMComplete - the Job Manager Task completed, and killJobOnCompletion was set to true. MaxWallClockTimeExpiry - the Job reached its maxWallClockTime constraint. TerminateJobSchedule - the Job ran as part of a schedule, and the schedule terminated. AllTasksComplete - the Job's onAllTasksComplete attribute is set to terminatejob, and all Tasks in the Job are complete. TaskFailed - the Job's onTaskFailure attribute is set to performExitOptionsJobAction, and a Task in the Job failed with an exit condition that specified a jobAction of terminatejob. Any other string is a user-defined reason specified in a call to the 'Terminate a Job' operation." + } + }, + "required": [ + "startTime" + ], + "title": "Contains information about the execution of a Job in the Azure Batch service." + }, + "CloudJob": { + "properties": { + "id": { + "type": "string", + "title": "A string that uniquely identifies the Job within the Account.", + "description": "The ID is case-preserving and case-insensitive (that is, you may not have two IDs within an Account that differ only by case)." + }, + "displayName": { + "type": "string", + "title": "The display name for the Job." + }, + "usesTaskDependencies": { + "type": "boolean", + "title": "Whether Tasks in the Job can define dependencies on each other. The default is false." + }, + "url": { + "type": "string", + "title": "The URL of the Job." + }, + "eTag": { + "type": "string", + "title": "The ETag of the Job.", + "description": "This is an opaque string. You can use it to detect whether the Job has changed between requests. In particular, you can be pass the ETag when updating a Job to specify that your changes should take effect only if nobody else has modified the Job in the meantime." + }, + "lastModified": { + "type": "string", + "format": "date-time", + "title": "The last modified time of the Job.", + "description": "This is the last time at which the Job level data, such as the Job state or priority, changed. It does not factor in task-level changes such as adding new Tasks or Tasks changing state." + }, + "creationTime": { + "type": "string", + "format": "date-time", + "title": "The creation time of the Job." + }, + "state": { + "title": "The current state of the Job.", + "$ref": "#/definitions/JobState" + }, + "stateTransitionTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the Job entered its current state." + }, + "previousState": { + "title": "The previous state of the Job.", + "description": "This property is not set if the Job is in its initial Active state.", + "$ref": "#/definitions/JobState" + }, + "previousStateTransitionTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the Job entered its previous state.", + "description": "This property is not set if the Job is in its initial Active state." + }, + "priority": { + "type": "integer", + "format": "int32", + "title": "The priority of the Job.", + "description": "Priority values can range from -1000 to 1000, with -1000 being the lowest priority and 1000 being the highest priority. The default value is 0." + }, + "constraints": { + "$ref": "#/definitions/JobConstraints", + "title": "The execution constraints for the Job." + }, + "jobManagerTask": { + "$ref": "#/definitions/JobManagerTask", + "title": "Details of a Job Manager Task to be launched when the Job is started." + }, + "jobPreparationTask": { + "$ref": "#/definitions/JobPreparationTask", + "title": "The Job Preparation Task.", + "description": "The Job Preparation Task is a special Task run on each Compute Node before any other Task of the Job." + }, + "jobReleaseTask": { + "$ref": "#/definitions/JobReleaseTask", + "title": "The Job Release Task.", + "description": "The Job Release Task is a special Task run at the end of the Job on each Compute Node that has run any other Task of the Job." + }, + "commonEnvironmentSettings": { + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentSetting" + }, + "title": "The list of common environment variable settings. These environment variables are set for all Tasks in the Job (including the Job Manager, Job Preparation and Job Release Tasks).", + "description": "Individual Tasks can override an environment setting specified here by specifying the same setting name with a different value." + }, + "poolInfo": { + "$ref": "#/definitions/PoolInformation", + "title": "The Pool settings associated with the Job." + }, + "onAllTasksComplete": { + "title": "The action the Batch service should take when all Tasks in the Job are in the completed state.", + "description": "The default is noaction.", + "$ref": "#/definitions/OnAllTasksComplete" + }, + "onTaskFailure": { + "title": "The action the Batch service should take when any Task in the Job fails.", + "description": "A Task is considered to have failed if has a failureInfo. A failureInfo is set if the Task completes with a non-zero exit code after exhausting its retry count, or if there was an error starting the Task, for example due to a resource file download error. The default is noaction.", + "$ref": "#/definitions/OnTaskFailure" + }, + "networkConfiguration": { + "$ref": "#/definitions/JobNetworkConfiguration", + "title": "The network configuration for the Job." + }, + "metadata": { + "type": "array", + "items": { + "$ref": "#/definitions/MetadataItem" + }, + "title": "A list of name-value pairs associated with the Job as metadata.", + "description": "The Batch service does not assign any meaning to metadata; it is solely for the use of user code." + }, + "executionInfo": { + "$ref": "#/definitions/JobExecutionInformation", + "title": "The execution information for the Job." + }, + "stats": { + "$ref": "#/definitions/JobStatistics", + "title": "Resource usage statistics for the entire lifetime of the Job.", + "description": "This property is populated only if the CloudJob was retrieved with an expand clause including the 'stats' attribute; otherwise it is null. The statistics may not be immediately available. The Batch service performs periodic roll-up of statistics. The typical delay is about 30 minutes." + } + }, + "title": "An Azure Batch Job." + }, + "JobAddParameter": { + "properties": { + "id": { + "type": "string", + "title": "A string that uniquely identifies the Job within the Account.", + "description": "The ID can contain any combination of alphanumeric characters including hyphens and underscores, and cannot contain more than 64 characters. The ID is case-preserving and case-insensitive (that is, you may not have two IDs within an Account that differ only by case)." + }, + "displayName": { + "type": "string", + "title": "The display name for the Job.", + "description": "The display name need not be unique and can contain any Unicode characters up to a maximum length of 1024." + }, + "priority": { + "type": "integer", + "format": "int32", + "title": "The priority of the Job.", + "description": "Priority values can range from -1000 to 1000, with -1000 being the lowest priority and 1000 being the highest priority. The default value is 0." + }, + "constraints": { + "$ref": "#/definitions/JobConstraints", + "description": "The execution constraints for the Job." + }, + "jobManagerTask": { + "$ref": "#/definitions/JobManagerTask", + "title": "Details of a Job Manager Task to be launched when the Job is started.", + "description": "If the Job does not specify a Job Manager Task, the user must explicitly add Tasks to the Job. If the Job does specify a Job Manager Task, the Batch service creates the Job Manager Task when the Job is created, and will try to schedule the Job Manager Task before scheduling other Tasks in the Job. The Job Manager Task's typical purpose is to control and/or monitor Job execution, for example by deciding what additional Tasks to run, determining when the work is complete, etc. (However, a Job Manager Task is not restricted to these activities - it is a fully-fledged Task in the system and perform whatever actions are required for the Job.) For example, a Job Manager Task might download a file specified as a parameter, analyze the contents of that file and submit additional Tasks based on those contents." + }, + "jobPreparationTask": { + "$ref": "#/definitions/JobPreparationTask", + "title": "The Job Preparation Task.", + "description": "If a Job has a Job Preparation Task, the Batch service will run the Job Preparation Task on a Node before starting any Tasks of that Job on that Compute Node." + }, + "jobReleaseTask": { + "$ref": "#/definitions/JobReleaseTask", + "title": "The Job Release Task.", + "description": "A Job Release Task cannot be specified without also specifying a Job Preparation Task for the Job. The Batch service runs the Job Release Task on the Nodes that have run the Job Preparation Task. The primary purpose of the Job Release Task is to undo changes to Compute Nodes made by the Job Preparation Task. Example activities include deleting local files, or shutting down services that were started as part of Job preparation." + }, + "commonEnvironmentSettings": { + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentSetting" + }, + "title": "The list of common environment variable settings. These environment variables are set for all Tasks in the Job (including the Job Manager, Job Preparation and Job Release Tasks).", + "description": "Individual Tasks can override an environment setting specified here by specifying the same setting name with a different value." + }, + "poolInfo": { + "$ref": "#/definitions/PoolInformation", + "title": "The Pool on which the Batch service runs the Job's Tasks." + }, + "onAllTasksComplete": { + "title": "The action the Batch service should take when all Tasks in the Job are in the completed state.", + "description": "Note that if a Job contains no Tasks, then all Tasks are considered complete. This option is therefore most commonly used with a Job Manager task; if you want to use automatic Job termination without a Job Manager, you should initially set onAllTasksComplete to noaction and update the Job properties to set onAllTasksComplete to terminatejob once you have finished adding Tasks. The default is noaction.", + "$ref": "#/definitions/OnAllTasksComplete" + }, + "onTaskFailure": { + "title": "The action the Batch service should take when any Task in the Job fails.", + "description": "A Task is considered to have failed if has a failureInfo. A failureInfo is set if the Task completes with a non-zero exit code after exhausting its retry count, or if there was an error starting the Task, for example due to a resource file download error. The default is noaction.", + "$ref": "#/definitions/OnTaskFailure" + }, + "metadata": { + "type": "array", + "items": { + "$ref": "#/definitions/MetadataItem" + }, + "title": "A list of name-value pairs associated with the Job as metadata.", + "description": "The Batch service does not assign any meaning to metadata; it is solely for the use of user code." + }, + "usesTaskDependencies": { + "type": "boolean", + "title": "Whether Tasks in the Job can define dependencies on each other. The default is false." + }, + "networkConfiguration": { + "$ref": "#/definitions/JobNetworkConfiguration", + "title": "The network configuration for the Job." + } + }, + "required": [ + "id", + "poolInfo" + ], + "title": "An Azure Batch Job to add." + }, + "CloudJobListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudJob" + }, + "title": "The list of Jobs." + }, + "odata.nextLink": { + "type": "string", + "title": "The URL to get the next set of results." + } + }, + "title": "The result of listing the Jobs in an Account." + }, + "TaskContainerExecutionInformation": { + "properties": { + "containerId": { + "type": "string", + "title": "The ID of the container." + }, + "state": { + "type": "string", + "title": "The state of the container.", + "description": "This is the state of the container according to the Docker service. It is equivalent to the status field returned by \"docker inspect\"." + }, + "error": { + "type": "string", + "title": "Detailed error information about the container.", + "description": "This is the detailed error string from the Docker service, if available. It is equivalent to the error field returned by \"docker inspect\"." + } + }, + "title": "Contains information about the container which a Task is executing." + }, + "TaskFailureInformation": { + "properties": { + "category": { + "title": "The category of the Task error.", + "$ref": "#/definitions/ErrorCategory" + }, + "code": { + "type": "string", + "title": "An identifier for the Task error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "title": "A message describing the Task error, intended to be suitable for display in a user interface." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/NameValuePair" + }, + "title": "A list of additional details related to the error." + } + }, + "required": [ + "category" + ], + "title": "Information about a Task failure." + }, + "JobPreparationTaskExecutionInformation": { + "properties": { + "startTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the Task started running.", + "description": "If the Task has been restarted or retried, this is the most recent time at which the Task started running." + }, + "endTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the Job Preparation Task completed.", + "description": "This property is set only if the Task is in the Completed state." + }, + "state": { + "type": "string", + "title": "The current state of the Job Preparation Task on the Compute Node.", + "enum": [ + "running", + "completed" + ], + "x-ms-enum": { + "name": "JobPreparationTaskState", + "modelAsString": false, + "values": [ + { + "value": "running", + "description": "The Task is currently running (including retrying)." + }, + { + "value": "completed", + "description": "The Task has exited with exit code 0, or the Task has exhausted its retry limit, or the Batch service was unable to start the Task due to Task preparation errors (such as resource file download failures)." + } + ] + } + }, + "taskRootDirectory": { + "type": "string", + "title": "The root directory of the Job Preparation Task on the Compute Node. You can use this path to retrieve files created by the Task, such as log files." + }, + "taskRootDirectoryUrl": { + "type": "string", + "title": "The URL to the root directory of the Job Preparation Task on the Compute Node." + }, + "exitCode": { + "type": "integer", + "format": "int32", + "title": "The exit code of the program specified on the Task command line.", + "description": "This parameter is returned only if the Task is in the completed state. The exit code for a process reflects the specific convention implemented by the application developer for that process. If you use the exit code value to make decisions in your code, be sure that you know the exit code convention used by the application process. Note that the exit code may also be generated by the Compute Node operating system, such as when a process is forcibly terminated." + }, + "containerInfo": { + "$ref": "#/definitions/TaskContainerExecutionInformation", + "title": "Information about the container under which the Task is executing.", + "description": "This property is set only if the Task runs in a container context." + }, + "failureInfo": { + "$ref": "#/definitions/TaskFailureInformation", + "title": "Information describing the Task failure, if any.", + "description": "This property is set only if the Task is in the completed state and encountered a failure." + }, + "retryCount": { + "type": "integer", + "format": "int32", + "title": "The number of times the Task has been retried by the Batch service. Task application failures (non-zero exit code) are retried, pre-processing errors (the Task could not be run) and file upload errors are not retried. The Batch service will retry the Task up to the limit specified by the constraints.", + "description": "Task application failures (non-zero exit code) are retried, pre-processing errors (the Task could not be run) and file upload errors are not retried. The Batch service will retry the Task up to the limit specified by the constraints." + }, + "lastRetryTime": { + "type": "string", + "format": "date-time", + "title": "The most recent time at which a retry of the Job Preparation Task started running.", + "description": "This property is set only if the Task was retried (i.e. retryCount is nonzero). If present, this is typically the same as startTime, but may be different if the Task has been restarted for reasons other than retry; for example, if the Compute Node was rebooted during a retry, then the startTime is updated but the lastRetryTime is not." + }, + "result": { + "$ref": "#/definitions/TaskExecutionResult", + "title": "The result of the Task execution.", + "description": "If the value is 'failed', then the details of the failure can be found in the failureInfo property." + } + }, + "required": [ + "startTime", + "retryCount", + "state" + ], + "title": "Contains information about the execution of a Job Preparation Task on a Compute Node." + }, + "JobReleaseTaskExecutionInformation": { + "properties": { + "startTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the Task started running.", + "description": "If the Task has been restarted or retried, this is the most recent time at which the Task started running." + }, + "endTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the Job Release Task completed.", + "description": "This property is set only if the Task is in the Completed state." + }, + "state": { + "type": "string", + "title": "The current state of the Job Release Task on the Compute Node.", + "enum": [ + "running", + "completed" + ], + "x-ms-enum": { + "name": "JobReleaseTaskState", + "modelAsString": false, + "values": [ + { + "value": "running", + "description": "The Task is currently running (including retrying)." + }, + { + "value": "completed", + "description": "The Task has exited with exit code 0, or the Task has exhausted its retry limit, or the Batch service was unable to start the Task due to Task preparation errors (such as resource file download failures)." + } + ] + } + }, + "taskRootDirectory": { + "type": "string", + "title": "The root directory of the Job Release Task on the Compute Node. You can use this path to retrieve files created by the Task, such as log files." + }, + "taskRootDirectoryUrl": { + "type": "string", + "title": "The URL to the root directory of the Job Release Task on the Compute Node." + }, + "exitCode": { + "type": "integer", + "format": "int32", + "title": "The exit code of the program specified on the Task command line.", + "description": "This parameter is returned only if the Task is in the completed state. The exit code for a process reflects the specific convention implemented by the application developer for that process. If you use the exit code value to make decisions in your code, be sure that you know the exit code convention used by the application process. Note that the exit code may also be generated by the Compute Node operating system, such as when a process is forcibly terminated." + }, + "containerInfo": { + "$ref": "#/definitions/TaskContainerExecutionInformation", + "title": "Information about the container under which the Task is executing.", + "description": "This property is set only if the Task runs in a container context." + }, + "failureInfo": { + "$ref": "#/definitions/TaskFailureInformation", + "title": "Information describing the Task failure, if any.", + "description": "This property is set only if the Task is in the completed state and encountered a failure." + }, + "result": { + "$ref": "#/definitions/TaskExecutionResult", + "title": "The result of the Task execution.", + "description": "If the value is 'failed', then the details of the failure can be found in the failureInfo property." + } + }, + "required": [ + "startTime", + "state" + ], + "title": "Contains information about the execution of a Job Release Task on a Compute Node." + }, + "JobPreparationAndReleaseTaskExecutionInformation": { + "properties": { + "poolId": { + "type": "string", + "title": "The ID of the Pool containing the Compute Node to which this entry refers." + }, + "nodeId": { + "type": "string", + "title": "The ID of the Compute Node to which this entry refers." + }, + "nodeUrl": { + "type": "string", + "title": "The URL of the Compute Node to which this entry refers." + }, + "jobPreparationTaskExecutionInfo": { + "$ref": "#/definitions/JobPreparationTaskExecutionInformation", + "title": "Information about the execution status of the Job Preparation Task on this Compute Node." + }, + "jobReleaseTaskExecutionInfo": { + "$ref": "#/definitions/JobReleaseTaskExecutionInformation", + "title": "Information about the execution status of the Job Release Task on this Compute Node.", + "description": "This property is set only if the Job Release Task has run on the Compute Node." + } + }, + "title": "The status of the Job Preparation and Job Release Tasks on a Compute Node." + }, + "CloudJobListPreparationAndReleaseTaskStatusResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/JobPreparationAndReleaseTaskExecutionInformation" + }, + "title": "A list of Job Preparation and Job Release Task execution information." + }, + "odata.nextLink": { + "type": "string", + "title": "The URL to get the next set of results." + } + }, + "title": "The result of listing the status of the Job Preparation and Job Release Tasks for a Job." + }, + "TaskCounts": { + "properties": { + "active": { + "type": "integer", + "format": "int32", + "title": "The number of Tasks in the active state." + }, + "running": { + "type": "integer", + "format": "int32", + "title": "The number of Tasks in the running or preparing state." + }, + "completed": { + "type": "integer", + "format": "int32", + "title": "The number of Tasks in the completed state." + }, + "succeeded": { + "type": "integer", + "format": "int32", + "title": "The number of Tasks which succeeded. A Task succeeds if its result (found in the executionInfo property) is 'success'." + }, + "failed": { + "type": "integer", + "format": "int32", + "title": "The number of Tasks which failed. A Task fails if its result (found in the executionInfo property) is 'failure'." + } + }, + "required": [ + "active", + "running", + "completed", + "succeeded", + "failed" + ], + "title": "The Task counts for a Job." + }, + "AutoScaleRunError": { + "properties": { + "code": { + "type": "string", + "title": "An identifier for the autoscale error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "title": "A message describing the autoscale error, intended to be suitable for display in a user interface." + }, + "values": { + "type": "array", + "items": { + "$ref": "#/definitions/NameValuePair" + }, + "title": "A list of additional error details related to the autoscale error." + } + }, + "title": "An error that occurred when executing or evaluating a Pool autoscale formula." + }, + "AutoScaleRun": { + "properties": { + "timestamp": { + "type": "string", + "format": "date-time", + "title": "The time at which the autoscale formula was last evaluated." + }, + "results": { + "type": "string", + "title": "The final values of all variables used in the evaluation of the autoscale formula.", + "description": "Each variable value is returned in the form $variable=value, and variables are separated by semicolons." + }, + "error": { + "$ref": "#/definitions/AutoScaleRunError", + "title": "Details of the error encountered evaluating the autoscale formula on the Pool, if the evaluation was unsuccessful." + } + }, + "required": [ + "timestamp" + ], + "title": "The results and errors from an execution of a Pool autoscale formula." + }, + "ResizeError": { + "properties": { + "code": { + "type": "string", + "title": "An identifier for the Pool resize error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "title": "A message describing the Pool resize error, intended to be suitable for display in a user interface." + }, + "values": { + "type": "array", + "items": { + "$ref": "#/definitions/NameValuePair" + }, + "title": "A list of additional error details related to the Pool resize error." + } + }, + "title": "An error that occurred when resizing a Pool." + }, + "CloudServiceConfiguration": { + "properties": { + "osFamily": { + "type": "string", + "title": "The Azure Guest OS family to be installed on the virtual machines in the Pool.", + "description": "Possible values are:\n2 - OS Family 2, equivalent to Windows Server 2008 R2 SP1.\n3 - OS Family 3, equivalent to Windows Server 2012.\n4 - OS Family 4, equivalent to Windows Server 2012 R2.\n5 - OS Family 5, equivalent to Windows Server 2016.\n6 - OS Family 6, equivalent to Windows Server 2019. For more information, see Azure Guest OS Releases (https://azure.microsoft.com/documentation/articles/cloud-services-guestos-update-matrix/#releases)." + }, + "osVersion": { + "type": "string", + "title": "The Azure Guest OS version to be installed on the virtual machines in the Pool.", + "description": "The default value is * which specifies the latest operating system version for the specified OS family." + } + }, + "required": [ + "osFamily" + ], + "title": "The configuration for Compute Nodes in a Pool based on the Azure Cloud Services platform." + }, + "ImageReference": { + "properties": { + "publisher": { + "type": "string", + "title": "The publisher of the Azure Virtual Machines Marketplace Image.", + "description": "For example, Canonical or MicrosoftWindowsServer." + }, + "offer": { + "type": "string", + "title": "The offer type of the Azure Virtual Machines Marketplace Image.", + "description": "For example, UbuntuServer or WindowsServer." + }, + "sku": { + "type": "string", + "title": "The SKU of the Azure Virtual Machines Marketplace Image.", + "description": "For example, 18.04-LTS or 2019-Datacenter." + }, + "version": { + "type": "string", + "title": "The version of the Azure Virtual Machines Marketplace Image.", + "description": "A value of 'latest' can be specified to select the latest version of an Image. If omitted, the default is 'latest'." + }, + "virtualMachineImageId": { + "type": "string", + "title": "The ARM resource identifier of the Shared Image Gallery Image. Compute Nodes in the Pool will be created using this Image Id. This is of the form/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageDefinitionName}/versions/{versionId}.", + "description": "This property is mutually exclusive with other ImageReference properties. For Virtual Machine Image it must be in the same region and subscription as the Azure Batch account. The Shared Image Gallery Image must have replicas in the same region as the Azure Batch account. For information about the firewall settings for the Batch Compute Node agent to communicate with the Batch service see https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration." + } + }, + "title": "A reference to an Azure Virtual Machines Marketplace Image or a custom Azure Virtual Machine Image. To get the list of all Azure Marketplace Image references verified by Azure Batch, see the 'List supported Images' operation." + }, + "WindowsConfiguration": { + "properties": { + "enableAutomaticUpdates": { + "type": "boolean", + "title": "Whether automatic updates are enabled on the virtual machine.", + "description": "If omitted, the default value is true." + } + }, + "title": "Windows operating system settings to apply to the virtual machine." + }, + "DataDisk": { + "properties": { + "lun": { + "type": "integer", + "format": "int32", + "title": "The logical unit number.", + "description": "The lun is used to uniquely identify each data disk. If attaching multiple disks, each should have a distinct lun." + }, + "caching": { + "$ref": "#/definitions/CachingType", + "title": "The type of caching to be enabled for the data disks.", + "description": "The default value for caching is readwrite. For information about the caching options see: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/." + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "title": "The initial disk size in gigabytes." + }, + "storageAccountType": { + "title": "The storage Account type to be used for the data disk.", + "description": "If omitted, the default is \"standard_lrs\".", + "$ref": "#/definitions/StorageAccountType" + } + }, + "required": [ + "lun", + "diskSizeGB" + ], + "title": "Settings which will be used by the data disks associated to Compute Nodes in the Pool. When using attached data disks, you need to mount and format the disks from within a VM to use them." + }, + "StorageAccountType": { + "type": "string", + "title": "The storage Account type for use in creating data disks.", + "enum": [ + "standard_lrs", + "premium_lrs" + ], + "x-ms-enum": { + "name": "StorageAccountType", + "modelAsString": false, + "values": [ + { + "value": "standard_lrs", + "description": "The data disk should use standard locally redundant storage.", + "name": "StandardLRS" + }, + { + "value": "premium_lrs", + "description": "The data disk should use premium locally redundant storage.", + "name": "PremiumLRS" + } + ] + } + }, + "CachingType": { + "type": "string", + "title": "The type of caching to enable for the disk.", + "description": "The default value for caching is none. For information about the caching options see: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/.", + "enum": [ + "none", + "readonly", + "readwrite" + ], + "x-ms-enum": { + "name": "CachingType", + "modelAsString": false, + "values": [ + { + "value": "none", + "description": "The caching mode for the disk is not enabled." + }, + { + "value": "readonly", + "description": "The caching mode for the disk is read only.", + "name": "readOnly" + }, + { + "value": "readwrite", + "description": "The caching mode for the disk is read and write.", + "name": "readWrite" + } + ] + } + }, + "VirtualMachineConfiguration": { + "properties": { + "imageReference": { + "$ref": "#/definitions/ImageReference", + "title": "A reference to the Azure Virtual Machines Marketplace Image or the custom Virtual Machine Image to use." + }, + "nodeAgentSKUId": { + "type": "string", + "title": "The SKU of the Batch Compute Node agent to be provisioned on Compute Nodes in the Pool.", + "description": "The Batch Compute Node agent is a program that runs on each Compute Node in the Pool, and provides the command-and-control interface between the Compute Node and the Batch service. There are different implementations of the Compute Node agent, known as SKUs, for different operating systems. You must specify a Compute Node agent SKU which matches the selected Image reference. To get the list of supported Compute Node agent SKUs along with their list of verified Image references, see the 'List supported Compute Node agent SKUs' operation." + }, + "windowsConfiguration": { + "$ref": "#/definitions/WindowsConfiguration", + "title": "Windows operating system settings on the virtual machine.", + "description": "This property must not be specified if the imageReference property specifies a Linux OS Image." + }, + "dataDisks": { + "type": "array", + "items": { + "$ref": "#/definitions/DataDisk" + }, + "title": "The configuration for data disks attached to the Compute Nodes in the Pool.", + "description": "This property must be specified if the Compute Nodes in the Pool need to have empty data disks attached to them. This cannot be updated. Each Compute Node gets its own disk (the disk is not a file share). Existing disks cannot be attached, each attached disk is empty. When the Compute Node is removed from the Pool, the disk and all data associated with it is also deleted. The disk is not formatted after being attached, it must be formatted before use - for more information see https://docs.microsoft.com/en-us/azure/virtual-machines/linux/classic/attach-disk#initialize-a-new-data-disk-in-linux and https://docs.microsoft.com/en-us/azure/virtual-machines/windows/attach-disk-ps#add-an-empty-data-disk-to-a-virtual-machine." + }, + "licenseType": { + "type": "string", + "title": "The type of on-premises license to be used when deploying the operating system.", + "description": "This only applies to Images that contain the Windows operating system, and should only be used when you hold valid on-premises licenses for the Compute Nodes which will be deployed. If omitted, no on-premises licensing discount is applied. Values are:\n\n Windows_Server - The on-premises license is for Windows Server.\n Windows_Client - The on-premises license is for Windows Client.\n" + }, + "containerConfiguration": { + "$ref": "#/definitions/ContainerConfiguration", + "title": "The container configuration for the Pool.", + "description": "If specified, setup is performed on each Compute Node in the Pool to allow Tasks to run in containers. All regular Tasks and Job manager Tasks run on this Pool must specify the containerSettings property, and all other Tasks may specify it." + }, + "diskEncryptionConfiguration": { + "$ref": "#/definitions/DiskEncryptionConfiguration", + "title": "The disk encryption configuration for the pool.", + "description": "If specified, encryption is performed on each node in the pool during node provisioning." + } + }, + "required": [ + "nodeAgentSKUId", + "imageReference" + ], + "title": "The configuration for Compute Nodes in a Pool based on the Azure Virtual Machines infrastructure." + }, + "ContainerRegistry": { + "properties": { + "registryServer": { + "type": "string", + "title": "The registry URL.", + "description": "If omitted, the default is \"docker.io\"." + }, + "username": { + "type": "string", + "x-ms-client-name": "userName", + "title": "The user name to log into the registry server." + }, + "password": { + "type": "string", + "title": "The password to log into the registry server." + } + }, + "required": [ + "username", + "password" + ], + "title": "A private container registry." + }, + "ContainerConfiguration": { + "properties": { + "type": { + "type": "string", + "title": "The container technology to be used.", + "enum": [ + "dockerCompatible" + ], + "x-ms-enum": { + "name": "ContainerType", + "modelAsString": false, + "values": [ + { + "value": "dockerCompatible", + "description": "A Docker compatible container technology will be used to launch the containers." + } + ] + } + }, + "containerImageNames": { + "type": "array", + "items": { + "type": "string" + }, + "title": "The collection of container Image names.", + "description": "This is the full Image reference, as would be specified to \"docker pull\". An Image will be sourced from the default Docker registry unless the Image is fully qualified with an alternative registry." + }, + "containerRegistries": { + "type": "array", + "items": { + "$ref": "#/definitions/ContainerRegistry" + }, + "title": "Additional private registries from which containers can be pulled.", + "description": "If any Images must be downloaded from a private registry which requires credentials, then those credentials must be provided here." + } + }, + "required": [ + "type" + ], + "title": "The configuration for container-enabled Pools." + }, + "DiskEncryptionConfiguration": { + "properties": { + "targets": { + "type": "array", + "items": { + "type": "string", + "x-nullable": false, + "title": "A disk to encrypt.", + "enum": [ + "osdisk", + "temporarydisk" + ], + "x-ms-enum": { + "name": "DiskEncryptionTarget", + "modelAsString": false, + "values": [ + { + "value": "osdisk", + "description": "The OS Disk on the compute node is encrypted.", + "name": "OsDisk" + }, + { + "value": "temporarydisk", + "description": "The temporary disk on the compute node is encrypted. On Linux this encryption applies to other partitions (such as those on mounted data disks) when encryption occurs at boot time.", + "name": "TemporaryDisk" + } + ] + } + }, + "title": "The list of disk targets Batch Service will encrypt on the compute node.", + "description": "If omitted, no disks on the compute nodes in the pool will be encrypted. On Linux pool, only \"TemporaryDisk\" is supported; on Windows pool, \"OsDisk\" and \"TemporaryDisk\" must be specified." + } + }, + "description": "The disk encryption configuration applied on compute nodes in the pool. Disk encryption configuration is not supported on Linux pool created with Shared Image Gallery Image." + }, + "IPAddressProvisioningType": { + "type": "string", + "title": "The provisioning type for Public IP Addresses for the Pool.", + "enum": [ + "batchmanaged", + "usermanaged", + "nopublicipaddresses" + ], + "x-ms-enum": { + "name": "IPAddressProvisioningType", + "modelAsString": false, + "values": [ + { + "value": "batchmanaged", + "description": "A public IP will be created and managed by Batch. There may be multiple public IPs depending on the size of the Pool.", + "name": "batchManaged" + }, + { + "value": "usermanaged", + "description": "Public IPs are provided by the user and will be used to provision the Compute Nodes.", + "name": "userManaged" + }, + { + "value": "nopublicipaddresses", + "description": "No public IP Address will be created.", + "name": "noPublicIPAddresses" + } + ] + } + }, + "PublicIPAddressConfiguration": { + "properties": { + "provision": { + "$ref": "#/definitions/IPAddressProvisioningType", + "title": "The provisioning type for Public IP Addresses for the Pool.", + "description": "The default value is BatchManaged." + }, + "ipAddressIds": { + "type": "array", + "items": { + "type": "string" + }, + "title": "The list of public IPs which the Batch service will use when provisioning Compute Nodes.", + "description": "The number of IPs specified here limits the maximum size of the Pool - 50 dedicated nodes or 20 low-priority nodes can be allocated for each public IP. For example, a pool needing 150 dedicated VMs would need at least 3 public IPs specified. Each element of this collection is of the form: /subscriptions/{subscription}/resourceGroups/{group}/providers/Microsoft.Network/publicIPAddresses/{ip}." + } + }, + "description": "The public IP Address configuration of the networking configuration of a Pool." + }, + "NetworkConfiguration": { + "properties": { + "subnetId": { + "type": "string", + "title": "The ARM resource identifier of the virtual network subnet which the Compute Nodes of the Pool will join. This is of the form /subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}.", + "description": "The virtual network must be in the same region and subscription as the Azure Batch Account. The specified subnet should have enough free IP addresses to accommodate the number of Compute Nodes in the Pool. If the subnet doesn't have enough free IP addresses, the Pool will partially allocate Nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule Tasks on the Nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the Nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the Compute Nodes to unusable. For Pools created with virtualMachineConfiguration only ARM virtual networks ('Microsoft.Network/virtualNetworks') are supported, but for Pools created with cloudServiceConfiguration both ARM and classic virtual networks are supported. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication. For Pools created with a virtual machine configuration, enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. For Pools created with a cloud service configuration, enable ports 10100, 20100, and 30100. Also enable outbound connections to Azure Storage on port 443. For more details see: https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration", + "externalDocs": { + "url": "https://azure.microsoft.com/en-us/documentation/articles/role-based-access-built-in-roles/#classic-virtual-machine-contributor", + "description": "Setting up RBAC for Azure Batch VNETs" + } + }, + "dynamicVNetAssignmentScope": { + "type": "string", + "title": "The scope of dynamic vnet assignment.", + "enum": [ + "none", + "job" + ], + "x-ms-enum": { + "name": "DynamicVNetAssignmentScope", + "modelAsString": false, + "values": [ + { + "value": "none", + "description": "No dynamic VNet assignment is enabled." + }, + { + "value": "job", + "description": "Dynamic VNet assignment is done per-job." + } + ] + } + }, + "endpointConfiguration": { + "$ref": "#/definitions/PoolEndpointConfiguration", + "title": "The configuration for endpoints on Compute Nodes in the Batch Pool.", + "description": "Pool endpoint configuration is only supported on Pools with the virtualMachineConfiguration property." + }, + "publicIPAddressConfiguration": { + "$ref": "#/definitions/PublicIPAddressConfiguration", + "title": "The Public IPAddress configuration for Compute Nodes in the Batch Pool.", + "description": "Public IP configuration property is only supported on Pools with the virtualMachineConfiguration property." + } + }, + "description": "The network configuration for a Pool." + }, + "CloudPool": { + "properties": { + "id": { + "type": "string", + "title": "A string that uniquely identifies the Pool within the Account.", + "description": "The ID can contain any combination of alphanumeric characters including hyphens and underscores, and cannot contain more than 64 characters. The ID is case-preserving and case-insensitive (that is, you may not have two IDs within an Account that differ only by case)." + }, + "displayName": { + "type": "string", + "title": "The display name for the Pool.", + "description": "The display name need not be unique and can contain any Unicode characters up to a maximum length of 1024." + }, + "url": { + "type": "string", + "title": "The URL of the Pool." + }, + "eTag": { + "type": "string", + "title": "The ETag of the Pool.", + "description": "This is an opaque string. You can use it to detect whether the Pool has changed between requests. In particular, you can be pass the ETag when updating a Pool to specify that your changes should take effect only if nobody else has modified the Pool in the meantime." + }, + "lastModified": { + "type": "string", + "format": "date-time", + "title": "The last modified time of the Pool.", + "description": "This is the last time at which the Pool level data, such as the targetDedicatedNodes or enableAutoscale settings, changed. It does not factor in node-level changes such as a Compute Node changing state." + }, + "creationTime": { + "type": "string", + "format": "date-time", + "title": "The creation time of the Pool." + }, + "state": { + "type": "string", + "title": "The current state of the Pool.", + "enum": [ + "active", + "deleting" + ], + "x-ms-enum": { + "name": "PoolState", + "modelAsString": false, + "values": [ + { + "value": "active", + "description": "The Pool is available to run Tasks subject to the availability of Compute Nodes." + }, + { + "value": "deleting", + "description": "The user has requested that the Pool be deleted, but the delete operation has not yet completed." + } + ] + } + }, + "stateTransitionTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the Pool entered its current state." + }, + "allocationState": { + "type": "string", + "title": "Whether the Pool is resizing.", + "enum": [ + "steady", + "resizing", + "stopping" + ], + "x-ms-enum": { + "name": "AllocationState", + "modelAsString": false, + "values": [ + { + "value": "steady", + "description": "The Pool is not resizing. There are no changes to the number of Compute Nodes in the Pool in progress. A Pool enters this state when it is created and when no operations are being performed on the Pool to change the number of Compute Nodes." + }, + { + "value": "resizing", + "description": "The Pool is resizing; that is, Compute Nodes are being added to or removed from the Pool." + }, + { + "value": "stopping", + "description": "The Pool was resizing, but the user has requested that the resize be stopped, but the stop request has not yet been completed." + } + ] + } + }, + "allocationStateTransitionTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the Pool entered its current allocation state." + }, + "vmSize": { + "type": "string", + "title": "The size of virtual machines in the Pool. All virtual machines in a Pool are the same size.", + "description": "For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes)." + }, + "cloudServiceConfiguration": { + "$ref": "#/definitions/CloudServiceConfiguration", + "title": "The cloud service configuration for the Pool.", + "description": "This property and virtualMachineConfiguration are mutually exclusive and one of the properties must be specified. This property cannot be specified if the Batch Account was created with its poolAllocationMode property set to 'UserSubscription'." + }, + "virtualMachineConfiguration": { + "$ref": "#/definitions/VirtualMachineConfiguration", + "title": "The virtual machine configuration for the Pool.", + "description": "This property and cloudServiceConfiguration are mutually exclusive and one of the properties must be specified." + }, + "resizeTimeout": { + "type": "string", + "format": "duration", + "title": "The timeout for allocation of Compute Nodes to the Pool.", + "description": "This is the timeout for the most recent resize operation. (The initial sizing when the Pool is created counts as a resize.) The default value is 15 minutes." + }, + "resizeErrors": { + "type": "array", + "items": { + "$ref": "#/definitions/ResizeError" + }, + "title": "A list of errors encountered while performing the last resize on the Pool.", + "description": "This property is set only if one or more errors occurred during the last Pool resize, and only when the Pool allocationState is Steady." + }, + "currentDedicatedNodes": { + "type": "integer", + "format": "int32", + "title": "The number of dedicated Compute Nodes currently in the Pool." + }, + "currentLowPriorityNodes": { + "type": "integer", + "format": "int32", + "title": "The number of low-priority Compute Nodes currently in the Pool.", + "description": "Low-priority Compute Nodes which have been preempted are included in this count." + }, + "targetDedicatedNodes": { + "type": "integer", + "format": "int32", + "title": "The desired number of dedicated Compute Nodes in the Pool." + }, + "targetLowPriorityNodes": { + "type": "integer", + "format": "int32", + "title": "The desired number of low-priority Compute Nodes in the Pool." + }, + "enableAutoScale": { + "type": "boolean", + "title": "Whether the Pool size should automatically adjust over time.", + "description": "If false, at least one of targetDedicateNodes and targetLowPriorityNodes must be specified. If true, the autoScaleFormula property is required and the Pool automatically resizes according to the formula. The default value is false." + }, + "autoScaleFormula": { + "type": "string", + "title": "A formula for the desired number of Compute Nodes in the Pool.", + "description": "This property is set only if the Pool automatically scales, i.e. enableAutoScale is true." + }, + "autoScaleEvaluationInterval": { + "type": "string", + "format": "duration", + "title": "The time interval at which to automatically adjust the Pool size according to the autoscale formula.", + "description": "This property is set only if the Pool automatically scales, i.e. enableAutoScale is true." + }, + "autoScaleRun": { + "$ref": "#/definitions/AutoScaleRun", + "title": "The results and errors from the last execution of the autoscale formula.", + "description": "This property is set only if the Pool automatically scales, i.e. enableAutoScale is true." + }, + "enableInterNodeCommunication": { + "type": "boolean", + "title": "Whether the Pool permits direct communication between Compute Nodes.", + "description": "This imposes restrictions on which Compute Nodes can be assigned to the Pool. Specifying this value can reduce the chance of the requested number of Compute Nodes to be allocated in the Pool." + }, + "networkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration", + "title": "The network configuration for the Pool." + }, + "startTask": { + "$ref": "#/definitions/StartTask", + "title": "A Task specified to run on each Compute Node as it joins the Pool." + }, + "certificateReferences": { + "type": "array", + "items": { + "$ref": "#/definitions/CertificateReference" + }, + "title": "The list of Certificates to be installed on each Compute Node in the Pool.", + "description": "For Windows Nodes, the Batch service installs the Certificates to the specified Certificate store and location. For Linux Compute Nodes, the Certificates are stored in a directory inside the Task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the Task to query for this location. For Certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and Certificates are placed in that directory." + }, + "applicationPackageReferences": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationPackageReference" + }, + "title": "The list of Packages to be installed on each Compute Node in the Pool.", + "description": "Changes to Package references affect all new Nodes joining the Pool, but do not affect Compute Nodes that are already in the Pool until they are rebooted or reimaged. There is a maximum of 10 Package references on any given Pool." + }, + "applicationLicenses": { + "type": "array", + "items": { + "type": "string" + }, + "title": "The list of application licenses the Batch service will make available on each Compute Node in the Pool.", + "description": "The list of application licenses must be a subset of available Batch service application licenses. If a license is requested which is not supported, Pool creation will fail." + }, + "maxTasksPerNode": { + "type": "integer", + "format": "int32", + "title": "The maximum number of Tasks that can run concurrently on a single Compute Node in the Pool.", + "description": "The default value is 1. The maximum value is the smaller of 4 times the number of cores of the vmSize of the Pool or 256." + }, + "taskSchedulingPolicy": { + "$ref": "#/definitions/TaskSchedulingPolicy", + "title": "How Tasks are distributed across Compute Nodes in a Pool.", + "description": "If not specified, the default is spread." + }, + "userAccounts": { + "type": "array", + "items": { + "$ref": "#/definitions/UserAccount" + }, + "title": "The list of user Accounts to be created on each Compute Node in the Pool." + }, + "metadata": { + "type": "array", + "items": { + "$ref": "#/definitions/MetadataItem" + }, + "title": "A list of name-value pairs associated with the Pool as metadata." + }, + "stats": { + "$ref": "#/definitions/PoolStatistics", + "title": "Utilization and resource usage statistics for the entire lifetime of the Pool.", + "description": "This property is populated only if the CloudPool was retrieved with an expand clause including the 'stats' attribute; otherwise it is null. The statistics may not be immediately available. The Batch service performs periodic roll-up of statistics. The typical delay is about 30 minutes." + }, + "mountConfiguration": { + "type": "array", + "items": { + "$ref": "#/definitions/MountConfiguration" + }, + "title": "A list of file systems to mount on each node in the pool.", + "description": "This supports Azure Files, NFS, CIFS/SMB, and Blobfuse." + } + }, + "title": "A Pool in the Azure Batch service." + }, + "PoolAddParameter": { + "properties": { + "id": { + "type": "string", + "title": "A string that uniquely identifies the Pool within the Account.", + "description": "The ID can contain any combination of alphanumeric characters including hyphens and underscores, and cannot contain more than 64 characters. The ID is case-preserving and case-insensitive (that is, you may not have two Pool IDs within an Account that differ only by case)." + }, + "displayName": { + "type": "string", + "title": "The display name for the Pool.", + "description": "The display name need not be unique and can contain any Unicode characters up to a maximum length of 1024." + }, + "vmSize": { + "type": "string", + "title": "The size of virtual machines in the Pool. All virtual machines in a Pool are the same size.", + "description": "For information about available sizes of virtual machines for Cloud Services Pools (pools created with cloudServiceConfiguration), see Sizes for Cloud Services (https://azure.microsoft.com/documentation/articles/cloud-services-sizes-specs/). Batch supports all Cloud Services VM sizes except ExtraSmall, A1V2 and A2V2. For information about available VM sizes for Pools using Images from the Virtual Machines Marketplace (pools created with virtualMachineConfiguration) see Sizes for Virtual Machines (Linux) (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) or Sizes for Virtual Machines (Windows) (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/). Batch supports all Azure VM sizes except STANDARD_A0 and those with premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series)." + }, + "cloudServiceConfiguration": { + "$ref": "#/definitions/CloudServiceConfiguration", + "title": "The cloud service configuration for the Pool.", + "description": "This property and virtualMachineConfiguration are mutually exclusive and one of the properties must be specified. This property cannot be specified if the Batch Account was created with its poolAllocationMode property set to 'UserSubscription'." + }, + "virtualMachineConfiguration": { + "$ref": "#/definitions/VirtualMachineConfiguration", + "title": "The virtual machine configuration for the Pool.", + "description": "This property and cloudServiceConfiguration are mutually exclusive and one of the properties must be specified." + }, + "resizeTimeout": { + "type": "string", + "format": "duration", + "title": "The timeout for allocation of Compute Nodes to the Pool.", + "description": "This timeout applies only to manual scaling; it has no effect when enableAutoScale is set to true. The default value is 15 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service returns an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request)." + }, + "targetDedicatedNodes": { + "type": "integer", + "format": "int32", + "title": "The desired number of dedicated Compute Nodes in the Pool.", + "description": "This property must not be specified if enableAutoScale is set to true. If enableAutoScale is set to false, then you must set either targetDedicatedNodes, targetLowPriorityNodes, or both." + }, + "targetLowPriorityNodes": { + "type": "integer", + "format": "int32", + "title": "The desired number of low-priority Compute Nodes in the Pool.", + "description": "This property must not be specified if enableAutoScale is set to true. If enableAutoScale is set to false, then you must set either targetDedicatedNodes, targetLowPriorityNodes, or both." + }, + "enableAutoScale": { + "type": "boolean", + "title": "Whether the Pool size should automatically adjust over time.", + "description": "If false, at least one of targetDedicateNodes and targetLowPriorityNodes must be specified. If true, the autoScaleFormula property is required and the Pool automatically resizes according to the formula. The default value is false." + }, + "autoScaleFormula": { + "type": "string", + "title": "A formula for the desired number of Compute Nodes in the Pool.", + "description": "This property must not be specified if enableAutoScale is set to false. It is required if enableAutoScale is set to true. The formula is checked for validity before the Pool is created. If the formula is not valid, the Batch service rejects the request with detailed error information. For more information about specifying this formula, see 'Automatically scale Compute Nodes in an Azure Batch Pool' (https://azure.microsoft.com/documentation/articles/batch-automatic-scaling/)." + }, + "autoScaleEvaluationInterval": { + "type": "string", + "format": "duration", + "title": "The time interval at which to automatically adjust the Pool size according to the autoscale formula.", + "description": "The default value is 15 minutes. The minimum and maximum value are 5 minutes and 168 hours respectively. If you specify a value less than 5 minutes or greater than 168 hours, the Batch service returns an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request)." + }, + "enableInterNodeCommunication": { + "type": "boolean", + "title": "Whether the Pool permits direct communication between Compute Nodes.", + "description": "Enabling inter-node communication limits the maximum size of the Pool due to deployment restrictions on the Compute Nodes of the Pool. This may result in the Pool not reaching its desired size. The default value is false." + }, + "networkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration", + "title": "The network configuration for the Pool." + }, + "startTask": { + "$ref": "#/definitions/StartTask", + "title": "A Task specified to run on each Compute Node as it joins the Pool.", + "description": "The Task runs when the Compute Node is added to the Pool or when the Compute Node is restarted." + }, + "certificateReferences": { + "type": "array", + "items": { + "$ref": "#/definitions/CertificateReference" + }, + "title": "The list of Certificates to be installed on each Compute Node in the Pool.", + "description": "For Windows Nodes, the Batch service installs the Certificates to the specified Certificate store and location. For Linux Compute Nodes, the Certificates are stored in a directory inside the Task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the Task to query for this location. For Certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and Certificates are placed in that directory." + }, + "applicationPackageReferences": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationPackageReference" + }, + "title": "The list of Packages to be installed on each Compute Node in the Pool.", + "description": "Changes to Package references affect all new Nodes joining the Pool, but do not affect Compute Nodes that are already in the Pool until they are rebooted or reimaged. There is a maximum of 10 Package references on any given Pool." + }, + "applicationLicenses": { + "type": "array", + "items": { + "type": "string" + }, + "title": "The list of application licenses the Batch service will make available on each Compute Node in the Pool.", + "description": "The list of application licenses must be a subset of available Batch service application licenses. If a license is requested which is not supported, Pool creation will fail." + }, + "maxTasksPerNode": { + "type": "integer", + "format": "int32", + "title": "The maximum number of Tasks that can run concurrently on a single Compute Node in the Pool.", + "description": "The default value is 1. The maximum value is the smaller of 4 times the number of cores of the vmSize of the Pool or 256." + }, + "taskSchedulingPolicy": { + "$ref": "#/definitions/TaskSchedulingPolicy", + "title": "How Tasks are distributed across Compute Nodes in a Pool.", + "description": "If not specified, the default is spread." + }, + "userAccounts": { + "type": "array", + "items": { + "$ref": "#/definitions/UserAccount" + }, + "title": "The list of user Accounts to be created on each Compute Node in the Pool." + }, + "metadata": { + "type": "array", + "items": { + "$ref": "#/definitions/MetadataItem" + }, + "title": "A list of name-value pairs associated with the Pool as metadata.", + "description": "The Batch service does not assign any meaning to metadata; it is solely for the use of user code." + }, + "mountConfiguration": { + "type": "array", + "items": { + "$ref": "#/definitions/MountConfiguration" + }, + "title": "Mount storage using specified file system for the entire lifetime of the pool.", + "description": "Mount the storage using Azure fileshare, NFS, CIFS or Blobfuse based file system." + } + }, + "required": [ + "id", + "vmSize" + ], + "title": "A Pool in the Azure Batch service to add." + }, + "ApplicationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationSummary" + }, + "title": "The list of applications available in the Account." + }, + "odata.nextLink": { + "type": "string", + "title": "The URL to get the next set of results." + } + }, + "title": "The result of listing the applications available in an Account." + }, + "CloudPoolListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudPool" + }, + "title": "The list of Pools." + }, + "odata.nextLink": { + "type": "string", + "title": "The URL to get the next set of results." + } + }, + "title": "The result of listing the Pools in an Account." + }, + "AffinityInformation": { + "properties": { + "affinityId": { + "type": "string", + "title": "An opaque string representing the location of a Compute Node or a Task that has run previously.", + "description": "You can pass the affinityId of a Node to indicate that this Task needs to run on that Compute Node. Note that this is just a soft affinity. If the target Compute Node is busy or unavailable at the time the Task is scheduled, then the Task will be scheduled elsewhere." + } + }, + "required": [ + "affinityId" + ], + "title": "A locality hint that can be used by the Batch service to select a Compute Node on which to start a Task." + }, + "TaskExecutionInformation": { + "properties": { + "startTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the Task started running.", + "description": "'Running' corresponds to the running state, so if the Task specifies resource files or Packages, then the start time reflects the time at which the Task started downloading or deploying these. If the Task has been restarted or retried, this is the most recent time at which the Task started running. This property is present only for Tasks that are in the running or completed state." + }, + "endTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the Task completed.", + "description": "This property is set only if the Task is in the Completed state." + }, + "exitCode": { + "type": "integer", + "format": "int32", + "title": "The exit code of the program specified on the Task command line.", + "description": "This property is set only if the Task is in the completed state. In general, the exit code for a process reflects the specific convention implemented by the application developer for that process. If you use the exit code value to make decisions in your code, be sure that you know the exit code convention used by the application process. However, if the Batch service terminates the Task (due to timeout, or user termination via the API) you may see an operating system-defined exit code." + }, + "containerInfo": { + "$ref": "#/definitions/TaskContainerExecutionInformation", + "title": "Information about the container under which the Task is executing.", + "description": "This property is set only if the Task runs in a container context." + }, + "failureInfo": { + "$ref": "#/definitions/TaskFailureInformation", + "title": "Information describing the Task failure, if any.", + "description": "This property is set only if the Task is in the completed state and encountered a failure." + }, + "retryCount": { + "type": "integer", + "format": "int32", + "title": "The number of times the Task has been retried by the Batch service.", + "description": "Task application failures (non-zero exit code) are retried, pre-processing errors (the Task could not be run) and file upload errors are not retried. The Batch service will retry the Task up to the limit specified by the constraints." + }, + "lastRetryTime": { + "type": "string", + "format": "date-time", + "title": "The most recent time at which a retry of the Task started running.", + "description": "This element is present only if the Task was retried (i.e. retryCount is nonzero). If present, this is typically the same as startTime, but may be different if the Task has been restarted for reasons other than retry; for example, if the Compute Node was rebooted during a retry, then the startTime is updated but the lastRetryTime is not." + }, + "requeueCount": { + "type": "integer", + "format": "int32", + "title": "The number of times the Task has been requeued by the Batch service as the result of a user request.", + "description": "When the user removes Compute Nodes from a Pool (by resizing/shrinking the pool) or when the Job is being disabled, the user can specify that running Tasks on the Compute Nodes be requeued for execution. This count tracks how many times the Task has been requeued for these reasons." + }, + "lastRequeueTime": { + "type": "string", + "format": "date-time", + "title": "The most recent time at which the Task has been requeued by the Batch service as the result of a user request.", + "description": "This property is set only if the requeueCount is nonzero." + }, + "result": { + "$ref": "#/definitions/TaskExecutionResult", + "title": "The result of the Task execution.", + "description": "If the value is 'failed', then the details of the failure can be found in the failureInfo property." + } + }, + "required": [ + "requeueCount", + "retryCount" + ], + "title": "Information about the execution of a Task." + }, + "ComputeNodeInformation": { + "properties": { + "affinityId": { + "type": "string", + "title": "An identifier for the Node on which the Task ran, which can be passed when adding a Task to request that the Task be scheduled on this Compute Node." + }, + "nodeUrl": { + "type": "string", + "title": "The URL of the Compute Node on which the Task ran. " + }, + "poolId": { + "type": "string", + "title": "The ID of the Pool on which the Task ran." + }, + "nodeId": { + "type": "string", + "title": "The ID of the Compute Node on which the Task ran." + }, + "taskRootDirectory": { + "type": "string", + "title": "The root directory of the Task on the Compute Node." + }, + "taskRootDirectoryUrl": { + "type": "string", + "title": "The URL to the root directory of the Task on the Compute Node." + } + }, + "title": "Information about the Compute Node on which a Task ran." + }, + "NodeAgentInformation": { + "properties": { + "version": { + "type": "string", + "title": "The version of the Batch Compute Node agent running on the Compute Node.", + "description": "This version number can be checked against the Compute Node agent release notes located at https://github.com/Azure/Batch/blob/master/changelogs/nodeagent/CHANGELOG.md." + }, + "lastUpdateTime": { + "type": "string", + "format": "date-time", + "title": "The time when the Compute Node agent was updated on the Compute Node.", + "description": "This is the most recent time that the Compute Node agent was updated to a new version." + } + }, + "required": [ + "version", + "lastUpdateTime" + ], + "title": "Information about the Compute Node agent.", + "description": "The Batch Compute Node agent is a program that runs on each Compute Node in the Pool and provides Batch capability on the Compute Node." + }, + "MultiInstanceSettings": { + "properties": { + "numberOfInstances": { + "type": "integer", + "format": "int32", + "title": "The number of Compute Nodes required by the Task.", + "description": "If omitted, the default is 1." + }, + "coordinationCommandLine": { + "type": "string", + "title": "The command line to run on all the Compute Nodes to enable them to coordinate when the primary runs the main Task command.", + "description": "A typical coordination command line launches a background service and verifies that the service is ready to process inter-node messages." + }, + "commonResourceFiles": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceFile" + }, + "title": "A list of files that the Batch service will download before running the coordination command line.", + "description": "The difference between common resource files and Task resource files is that common resource files are downloaded for all subtasks including the primary, whereas Task resource files are downloaded only for the primary. Also note that these resource files are not downloaded to the Task working directory, but instead are downloaded to the Task root directory (one directory above the working directory). There is a maximum size for the list of resource files. When the max size is exceeded, the request will fail and the response error code will be RequestEntityTooLarge. If this occurs, the collection of ResourceFiles must be reduced in size. This can be achieved using .zip files, Application Packages, or Docker Containers." + } + }, + "required": [ + "coordinationCommandLine" + ], + "title": "Settings which specify how to run a multi-instance Task.", + "description": "Multi-instance Tasks are commonly used to support MPI Tasks. In the MPI case, if any of the subtasks fail (for example due to exiting with a non-zero exit code) the entire multi-instance Task fails. The multi-instance Task is then terminated and retried, up to its retry limit." + }, + "TaskStatistics": { + "properties": { + "url": { + "type": "string", + "title": "The URL of the statistics." + }, + "startTime": { + "type": "string", + "format": "date-time", + "title": "The start time of the time range covered by the statistics." + }, + "lastUpdateTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the statistics were last updated. All statistics are limited to the range between startTime and lastUpdateTime." + }, + "userCPUTime": { + "type": "string", + "format": "duration", + "title": "The total user mode CPU time (summed across all cores and all Compute Nodes) consumed by the Task." + }, + "kernelCPUTime": { + "type": "string", + "format": "duration", + "title": "The total kernel mode CPU time (summed across all cores and all Compute Nodes) consumed by the Task." + }, + "wallClockTime": { + "type": "string", + "format": "duration", + "title": "The total wall clock time of the Task.", + "description": "The wall clock time is the elapsed time from when the Task started running on a Compute Node to when it finished (or to the last time the statistics were updated, if the Task had not finished by then). If the Task was retried, this includes the wall clock time of all the Task retries." + }, + "readIOps": { + "type": "integer", + "format": "int64", + "title": "The total number of disk read operations made by the Task." + }, + "writeIOps": { + "type": "integer", + "format": "int64", + "title": "The total number of disk write operations made by the Task." + }, + "readIOGiB": { + "type": "number", + "format": "double", + "title": "The total gibibytes read from disk by the Task." + }, + "writeIOGiB": { + "type": "number", + "format": "double", + "title": "The total gibibytes written to disk by the Task." + }, + "waitTime": { + "type": "string", + "format": "duration", + "title": "The total wait time of the Task. The wait time for a Task is defined as the elapsed time between the creation of the Task and the start of Task execution. (If the Task is retried due to failures, the wait time is the time to the most recent Task execution.)" + } + }, + "required": [ + "url", + "startTime", + "lastUpdateTime", + "userCPUTime", + "kernelCPUTime", + "wallClockTime", + "readIOps", + "writeIOps", + "readIOGiB", + "writeIOGiB", + "waitTime" + ], + "title": "Resource usage statistics for a Task." + }, + "TaskDependencies": { + "properties": { + "taskIds": { + "type": "array", + "items": { + "type": "string" + }, + "title": "The list of Task IDs that this Task depends on. All Tasks in this list must complete successfully before the dependent Task can be scheduled.", + "description": "The taskIds collection is limited to 64000 characters total (i.e. the combined length of all Task IDs). If the taskIds collection exceeds the maximum length, the Add Task request fails with error code TaskDependencyListTooLong. In this case consider using Task ID ranges instead." + }, + "taskIdRanges": { + "type": "array", + "items": { + "$ref": "#/definitions/TaskIdRange" + }, + "title": "The list of Task ID ranges that this Task depends on. All Tasks in all ranges must complete successfully before the dependent Task can be scheduled." + } + }, + "title": "Specifies any dependencies of a Task. Any Task that is explicitly specified or within a dependency range must complete before the dependant Task will be scheduled." + }, + "TaskIdRange": { + "properties": { + "start": { + "type": "integer", + "format": "int32", + "title": "The first Task ID in the range." + }, + "end": { + "type": "integer", + "format": "int32", + "title": "The last Task ID in the range." + } + }, + "title": "A range of Task IDs that a Task can depend on. All Tasks with IDs in the range must complete successfully before the dependent Task can be scheduled.", + "description": "The start and end of the range are inclusive. For example, if a range has start 9 and end 12, then it represents Tasks '9', '10', '11' and '12'.", + "required": [ + "start", + "end" + ] + }, + "CloudTask": { + "properties": { + "id": { + "type": "string", + "title": "A string that uniquely identifies the Task within the Job.", + "description": "The ID can contain any combination of alphanumeric characters including hyphens and underscores, and cannot contain more than 64 characters." + }, + "displayName": { + "type": "string", + "title": "A display name for the Task.", + "description": "The display name need not be unique and can contain any Unicode characters up to a maximum length of 1024." + }, + "url": { + "type": "string", + "title": "The URL of the Task." + }, + "eTag": { + "type": "string", + "title": "The ETag of the Task.", + "description": "This is an opaque string. You can use it to detect whether the Task has changed between requests. In particular, you can be pass the ETag when updating a Task to specify that your changes should take effect only if nobody else has modified the Task in the meantime." + }, + "lastModified": { + "type": "string", + "format": "date-time", + "title": "The last modified time of the Task." + }, + "creationTime": { + "type": "string", + "format": "date-time", + "title": "The creation time of the Task." + }, + "exitConditions": { + "$ref": "#/definitions/ExitConditions", + "description": "How the Batch service should respond when the Task completes." + }, + "state": { + "title": "The current state of the Task.", + "$ref": "#/definitions/TaskState" + }, + "stateTransitionTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the Task entered its current state." + }, + "previousState": { + "title": "The previous state of the Task.", + "description": "This property is not set if the Task is in its initial Active state.", + "$ref": "#/definitions/TaskState" + }, + "previousStateTransitionTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the Task entered its previous state.", + "description": "This property is not set if the Task is in its initial Active state." + }, + "commandLine": { + "type": "string", + "title": "The command line of the Task.", + "description": "For multi-instance Tasks, the command line is executed as the primary Task, after the primary Task and all subtasks have finished executing the coordination command line. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables)." + }, + "containerSettings": { + "$ref": "#/definitions/TaskContainerSettings", + "title": "The settings for the container under which the Task runs.", + "description": "If the Pool that will run this Task has containerConfiguration set, this must be set as well. If the Pool that will run this Task doesn't have containerConfiguration set, this must not be set. When this is specified, all directories recursively below the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on the node) are mapped into the container, all Task environment variables are mapped into the container, and the Task command line is executed in the container. Files produced in the container outside of AZ_BATCH_NODE_ROOT_DIR might not be reflected to the host disk, meaning that Batch file APIs will not be able to access those files." + }, + "resourceFiles": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceFile" + }, + "title": "A list of files that the Batch service will download to the Compute Node before running the command line.", + "description": "For multi-instance Tasks, the resource files will only be downloaded to the Compute Node on which the primary Task is executed. There is a maximum size for the list of resource files. When the max size is exceeded, the request will fail and the response error code will be RequestEntityTooLarge. If this occurs, the collection of ResourceFiles must be reduced in size. This can be achieved using .zip files, Application Packages, or Docker Containers." + }, + "outputFiles": { + "type": "array", + "items": { + "$ref": "#/definitions/OutputFile" + }, + "title": "A list of files that the Batch service will upload from the Compute Node after running the command line.", + "description": "For multi-instance Tasks, the files will only be uploaded from the Compute Node on which the primary Task is executed." + }, + "environmentSettings": { + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentSetting" + }, + "title": "A list of environment variable settings for the Task." + }, + "affinityInfo": { + "$ref": "#/definitions/AffinityInformation", + "title": "A locality hint that can be used by the Batch service to select a Compute Node on which to start the new Task." + }, + "constraints": { + "$ref": "#/definitions/TaskConstraints", + "title": "The execution constraints that apply to this Task." + }, + "userIdentity": { + "$ref": "#/definitions/UserIdentity", + "title": "The user identity under which the Task runs.", + "description": "If omitted, the Task runs as a non-administrative user unique to the Task." + }, + "executionInfo": { + "$ref": "#/definitions/TaskExecutionInformation", + "title": "Information about the execution of the Task." + }, + "nodeInfo": { + "$ref": "#/definitions/ComputeNodeInformation", + "title": "Information about the Compute Node on which the Task ran." + }, + "multiInstanceSettings": { + "$ref": "#/definitions/MultiInstanceSettings", + "title": "An object that indicates that the Task is a multi-instance Task, and contains information about how to run the multi-instance Task." + }, + "stats": { + "$ref": "#/definitions/TaskStatistics", + "title": "Resource usage statistics for the Task." + }, + "dependsOn": { + "$ref": "#/definitions/TaskDependencies", + "title": "The Tasks that this Task depends on.", + "description": "This Task will not be scheduled until all Tasks that it depends on have completed successfully. If any of those Tasks fail and exhaust their retry counts, this Task will never be scheduled." + }, + "applicationPackageReferences": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationPackageReference" + }, + "title": "A list of Packages that the Batch service will deploy to the Compute Node before running the command line.", + "description": "Application packages are downloaded and deployed to a shared directory, not the Task working directory. Therefore, if a referenced package is already on the Node, and is up to date, then it is not re-downloaded; the existing copy on the Compute Node is used. If a referenced Package cannot be installed, for example because the package has been deleted or because download failed, the Task fails." + }, + "authenticationTokenSettings": { + "title": "The settings for an authentication token that the Task can use to perform Batch service operations.", + "description": "If this property is set, the Batch service provides the Task with an authentication token which can be used to authenticate Batch service operations without requiring an Account access key. The token is provided via the AZ_BATCH_AUTHENTICATION_TOKEN environment variable. The operations that the Task can carry out using the token depend on the settings. For example, a Task can request Job permissions in order to add other Tasks to the Job, or check the status of the Job or of other Tasks under the Job.", + "$ref": "#/definitions/AuthenticationTokenSettings" + } + }, + "title": "An Azure Batch Task.", + "description": "Batch will retry Tasks when a recovery operation is triggered on a Node. Examples of recovery operations include (but are not limited to) when an unhealthy Node is rebooted or a Compute Node disappeared due to host failure. Retries due to recovery operations are independent of and are not counted against the maxTaskRetryCount. Even if the maxTaskRetryCount is 0, an internal retry due to a recovery operation may occur. Because of this, all Tasks should be idempotent. This means Tasks need to tolerate being interrupted and restarted without causing any corruption or duplicate data. The best practice for long running Tasks is to use some form of checkpointing." + }, + "TaskAddParameter": { + "properties": { + "id": { + "type": "string", + "title": "A string that uniquely identifies the Task within the Job.", + "description": "The ID can contain any combination of alphanumeric characters including hyphens and underscores, and cannot contain more than 64 characters. The ID is case-preserving and case-insensitive (that is, you may not have two IDs within a Job that differ only by case)." + }, + "displayName": { + "type": "string", + "title": "A display name for the Task.", + "description": "The display name need not be unique and can contain any Unicode characters up to a maximum length of 1024." + }, + "commandLine": { + "type": "string", + "title": "The command line of the Task.", + "description": "For multi-instance Tasks, the command line is executed as the primary Task, after the primary Task and all subtasks have finished executing the coordination command line. The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. If the command line refers to file paths, it should use a relative path (relative to the Task working directory), or use the Batch provided environment variable (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables)." + }, + "containerSettings": { + "$ref": "#/definitions/TaskContainerSettings", + "title": "The settings for the container under which the Task runs.", + "description": "If the Pool that will run this Task has containerConfiguration set, this must be set as well. If the Pool that will run this Task doesn't have containerConfiguration set, this must not be set. When this is specified, all directories recursively below the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on the node) are mapped into the container, all Task environment variables are mapped into the container, and the Task command line is executed in the container. Files produced in the container outside of AZ_BATCH_NODE_ROOT_DIR might not be reflected to the host disk, meaning that Batch file APIs will not be able to access those files." + }, + "exitConditions": { + "$ref": "#/definitions/ExitConditions", + "description": "How the Batch service should respond when the Task completes." + }, + "resourceFiles": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceFile" + }, + "title": "A list of files that the Batch service will download to the Compute Node before running the command line.", + "description": "For multi-instance Tasks, the resource files will only be downloaded to the Compute Node on which the primary Task is executed. There is a maximum size for the list of resource files. When the max size is exceeded, the request will fail and the response error code will be RequestEntityTooLarge. If this occurs, the collection of ResourceFiles must be reduced in size. This can be achieved using .zip files, Application Packages, or Docker Containers." + }, + "outputFiles": { + "type": "array", + "items": { + "$ref": "#/definitions/OutputFile" + }, + "title": "A list of files that the Batch service will upload from the Compute Node after running the command line.", + "description": "For multi-instance Tasks, the files will only be uploaded from the Compute Node on which the primary Task is executed." + }, + "environmentSettings": { + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentSetting" + }, + "title": "A list of environment variable settings for the Task." + }, + "affinityInfo": { + "$ref": "#/definitions/AffinityInformation", + "title": "A locality hint that can be used by the Batch service to select a Compute Node on which to start the new Task." + }, + "constraints": { + "$ref": "#/definitions/TaskConstraints", + "title": "The execution constraints that apply to this Task.", + "description": "If you do not specify constraints, the maxTaskRetryCount is the maxTaskRetryCount specified for the Job, the maxWallClockTime is infinite, and the retentionTime is 7 days." + }, + "userIdentity": { + "$ref": "#/definitions/UserIdentity", + "title": "The user identity under which the Task runs.", + "description": "If omitted, the Task runs as a non-administrative user unique to the Task." + }, + "multiInstanceSettings": { + "$ref": "#/definitions/MultiInstanceSettings", + "title": "An object that indicates that the Task is a multi-instance Task, and contains information about how to run the multi-instance Task." + }, + "dependsOn": { + "$ref": "#/definitions/TaskDependencies", + "title": "The Tasks that this Task depends on.", + "description": "This Task will not be scheduled until all Tasks that it depends on have completed successfully. If any of those Tasks fail and exhaust their retry counts, this Task will never be scheduled. If the Job does not have usesTaskDependencies set to true, and this element is present, the request fails with error code TaskDependenciesNotSpecifiedOnJob." + }, + "applicationPackageReferences": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationPackageReference" + }, + "title": "A list of Packages that the Batch service will deploy to the Compute Node before running the command line.", + "description": "Application packages are downloaded and deployed to a shared directory, not the Task working directory. Therefore, if a referenced package is already on the Node, and is up to date, then it is not re-downloaded; the existing copy on the Compute Node is used. If a referenced Package cannot be installed, for example because the package has been deleted or because download failed, the Task fails." + }, + "authenticationTokenSettings": { + "title": "The settings for an authentication token that the Task can use to perform Batch service operations.", + "description": "If this property is set, the Batch service provides the Task with an authentication token which can be used to authenticate Batch service operations without requiring an Account access key. The token is provided via the AZ_BATCH_AUTHENTICATION_TOKEN environment variable. The operations that the Task can carry out using the token depend on the settings. For example, a Task can request Job permissions in order to add other Tasks to the Job, or check the status of the Job or of other Tasks under the Job.", + "$ref": "#/definitions/AuthenticationTokenSettings" + } + }, + "required": [ + "id", + "commandLine" + ], + "title": "An Azure Batch Task to add.", + "description": "Batch will retry Tasks when a recovery operation is triggered on a Node. Examples of recovery operations include (but are not limited to) when an unhealthy Node is rebooted or a Compute Node disappeared due to host failure. Retries due to recovery operations are independent of and are not counted against the maxTaskRetryCount. Even if the maxTaskRetryCount is 0, an internal retry due to a recovery operation may occur. Because of this, all Tasks should be idempotent. This means Tasks need to tolerate being interrupted and restarted without causing any corruption or duplicate data. The best practice for long running Tasks is to use some form of checkpointing." + }, + "TaskAddCollectionParameter": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TaskAddParameter" + }, + "maxItems": 100, + "title": "The collection of Tasks to add. The maximum count of Tasks is 100.", + "description": "The total serialized size of this collection must be less than 1MB. If it is greater than 1MB (for example if each Task has 100's of resource files or environment variables), the request will fail with code 'RequestBodyTooLarge' and should be retried again with fewer Tasks." + } + }, + "required": [ + "value" + ], + "title": "A collection of Azure Batch Tasks to add." + }, + "TaskAddResult": { + "properties": { + "status": { + "type": "string", + "title": "The status of the add Task request.", + "enum": [ + "success", + "clienterror", + "servererror" + ], + "x-ms-enum": { + "name": "TaskAddStatus", + "modelAsString": false, + "values": [ + { + "value": "success", + "description": "The Task was added successfully." + }, + { + "value": "clienterror", + "description": "The Task failed to add due to a client error and should not be retried without modifying the request as appropriate.", + "name": "clientError" + }, + { + "value": "servererror", + "description": "Task failed to add due to a server error and can be retried without modification.", + "name": "serverError" + } + ] + } + }, + "taskId": { + "type": "string", + "title": "The ID of the Task for which this is the result." + }, + "eTag": { + "type": "string", + "title": "The ETag of the Task, if the Task was successfully added.", + "description": "You can use this to detect whether the Task has changed between requests. In particular, you can be pass the ETag with an Update Task request to specify that your changes should take effect only if nobody else has modified the Job in the meantime." + }, + "lastModified": { + "type": "string", + "format": "date-time", + "title": "The last modified time of the Task." + }, + "location": { + "type": "string", + "title": "The URL of the Task, if the Task was successfully added." + }, + "error": { + "$ref": "#/definitions/BatchError", + "title": "The error encountered while attempting to add the Task." + } + }, + "required": [ + "status", + "taskId" + ], + "title": "Result for a single Task added as part of an add Task collection operation." + }, + "TaskAddCollectionResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TaskAddResult" + }, + "title": "The results of the add Task collection operation." + } + }, + "title": "The result of adding a collection of Tasks to a Job." + }, + "SubtaskInformation": { + "properties": { + "id": { + "type": "integer", + "format": "int32", + "title": "The ID of the subtask." + }, + "nodeInfo": { + "$ref": "#/definitions/ComputeNodeInformation", + "title": "Information about the Compute Node on which the subtask ran." + }, + "startTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the subtask started running. If the subtask has been restarted or retried, this is the most recent time at which the subtask started running." + }, + "endTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the subtask completed.", + "description": "This property is set only if the subtask is in the Completed state." + }, + "exitCode": { + "type": "integer", + "format": "int32", + "title": "The exit code of the program specified on the subtask command line.", + "description": "This property is set only if the subtask is in the completed state. In general, the exit code for a process reflects the specific convention implemented by the application developer for that process. If you use the exit code value to make decisions in your code, be sure that you know the exit code convention used by the application process. However, if the Batch service terminates the subtask (due to timeout, or user termination via the API) you may see an operating system-defined exit code." + }, + "containerInfo": { + "$ref": "#/definitions/TaskContainerExecutionInformation", + "title": "Information about the container under which the Task is executing.", + "description": "This property is set only if the Task runs in a container context." + }, + "failureInfo": { + "$ref": "#/definitions/TaskFailureInformation", + "title": "Information describing the Task failure, if any.", + "description": "This property is set only if the Task is in the completed state and encountered a failure." + }, + "state": { + "title": "The current state of the subtask.", + "$ref": "#/definitions/SubtaskState" + }, + "stateTransitionTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the subtask entered its current state." + }, + "previousState": { + "title": "The previous state of the subtask.", + "description": "This property is not set if the subtask is in its initial running state.", + "$ref": "#/definitions/SubtaskState" + }, + "previousStateTransitionTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the subtask entered its previous state.", + "description": "This property is not set if the subtask is in its initial running state." + }, + "result": { + "$ref": "#/definitions/TaskExecutionResult", + "title": "The result of the Task execution.", + "description": "If the value is 'failed', then the details of the failure can be found in the failureInfo property." + } + }, + "title": "Information about an Azure Batch subtask." + }, + "CloudTaskListSubtasksResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SubtaskInformation" + }, + "title": "The list of subtasks." + } + }, + "title": "The result of listing the subtasks of a Task." + }, + "CloudTaskListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudTask" + }, + "title": "The list of Tasks." + }, + "odata.nextLink": { + "type": "string", + "title": "The URL to get the next set of results." + } + }, + "title": "The result of listing the Tasks in a Job." + }, + "TaskInformation": { + "properties": { + "taskUrl": { + "type": "string", + "title": "The URL of the Task." + }, + "jobId": { + "type": "string", + "title": "The ID of the Job to which the Task belongs." + }, + "taskId": { + "type": "string", + "title": "The ID of the Task." + }, + "subtaskId": { + "type": "integer", + "format": "int32", + "title": "The ID of the subtask if the Task is a multi-instance Task." + }, + "taskState": { + "title": "The current state of the Task.", + "$ref": "#/definitions/TaskState" + }, + "executionInfo": { + "$ref": "#/definitions/TaskExecutionInformation", + "title": "Information about the execution of the Task." + } + }, + "required": [ + "taskState" + ], + "title": "Information about a Task running on a Compute Node." + }, + "StartTaskInformation": { + "properties": { + "state": { + "type": "string", + "title": "The state of the StartTask on the Compute Node.", + "enum": [ + "running", + "completed" + ], + "x-ms-enum": { + "name": "StartTaskState", + "modelAsString": false, + "values": [ + { + "value": "running", + "description": "The StartTask is currently running." + }, + { + "value": "completed", + "description": "The StartTask has exited with exit code 0, or the StartTask has failed and the retry limit has reached, or the StartTask process did not run due to Task preparation errors (such as resource file download failures)." + } + ] + } + }, + "startTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the StartTask started running.", + "description": "This value is reset every time the Task is restarted or retried (that is, this is the most recent time at which the StartTask started running)." + }, + "endTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the StartTask stopped running.", + "description": "This is the end time of the most recent run of the StartTask, if that run has completed (even if that run failed and a retry is pending). This element is not present if the StartTask is currently running." + }, + "exitCode": { + "type": "integer", + "format": "int32", + "title": "The exit code of the program specified on the StartTask command line.", + "description": "This property is set only if the StartTask is in the completed state. In general, the exit code for a process reflects the specific convention implemented by the application developer for that process. If you use the exit code value to make decisions in your code, be sure that you know the exit code convention used by the application process. However, if the Batch service terminates the StartTask (due to timeout, or user termination via the API) you may see an operating system-defined exit code." + }, + "containerInfo": { + "$ref": "#/definitions/TaskContainerExecutionInformation", + "title": "Information about the container under which the Task is executing.", + "description": "This property is set only if the Task runs in a container context." + }, + "failureInfo": { + "$ref": "#/definitions/TaskFailureInformation", + "title": "Information describing the Task failure, if any.", + "description": "This property is set only if the Task is in the completed state and encountered a failure." + }, + "retryCount": { + "type": "integer", + "format": "int32", + "title": "The number of times the Task has been retried by the Batch service.", + "description": "Task application failures (non-zero exit code) are retried, pre-processing errors (the Task could not be run) and file upload errors are not retried. The Batch service will retry the Task up to the limit specified by the constraints." + }, + "lastRetryTime": { + "type": "string", + "format": "date-time", + "title": "The most recent time at which a retry of the Task started running.", + "description": "This element is present only if the Task was retried (i.e. retryCount is nonzero). If present, this is typically the same as startTime, but may be different if the Task has been restarted for reasons other than retry; for example, if the Compute Node was rebooted during a retry, then the startTime is updated but the lastRetryTime is not." + }, + "result": { + "$ref": "#/definitions/TaskExecutionResult", + "title": "The result of the Task execution.", + "description": "If the value is 'failed', then the details of the failure can be found in the failureInfo property." + } + }, + "required": [ + "state", + "startTime", + "retryCount" + ], + "title": "Information about a StartTask running on a Compute Node." + }, + "ComputeNodeError": { + "properties": { + "code": { + "type": "string", + "title": "An identifier for the Compute Node error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "title": "A message describing the Compute Node error, intended to be suitable for display in a user interface." + }, + "errorDetails": { + "type": "array", + "items": { + "$ref": "#/definitions/NameValuePair" + }, + "title": "The list of additional error details related to the Compute Node error." + } + }, + "title": "An error encountered by a Compute Node." + }, + "ComputeNode": { + "properties": { + "id": { + "type": "string", + "title": "The ID of the Compute Node.", + "description": "Every Compute Node that is added to a Pool is assigned a unique ID. Whenever a Compute Node is removed from a Pool, all of its local files are deleted, and the ID is reclaimed and could be reused for new Compute Nodes." + }, + "url": { + "type": "string", + "title": "The URL of the Compute Node." + }, + "state": { + "type": "string", + "title": "The current state of the Compute Node.", + "description": "The low-priority Compute Node has been preempted. Tasks which were running on the Compute Node when it was preempted will be rescheduled when another Compute Node becomes available.", + "enum": [ + "idle", + "rebooting", + "reimaging", + "running", + "unusable", + "creating", + "starting", + "waitingforstarttask", + "starttaskfailed", + "unknown", + "leavingpool", + "offline", + "preempted" + ], + "x-ms-enum": { + "name": "ComputeNodeState", + "modelAsString": false, + "values": [ + { + "value": "idle", + "description": "The Compute Node is not currently running a Task." + }, + { + "value": "rebooting", + "description": "The Compute Node is rebooting." + }, + { + "value": "reimaging", + "description": "The Compute Node is reimaging." + }, + { + "value": "running", + "description": "The Compute Node is running one or more Tasks (other than a StartTask)." + }, + { + "value": "unusable", + "description": "The Compute Node cannot be used for Task execution due to errors." + }, + { + "value": "creating", + "description": "The Batch service has obtained the underlying virtual machine from Azure Compute, but it has not yet started to join the Pool." + }, + { + "value": "starting", + "description": "The Batch service is starting on the underlying virtual machine." + }, + { + "value": "waitingforstarttask", + "description": "The StartTask has started running on the Compute Node, but waitForSuccess is set and the StartTask has not yet completed.", + "name": "waitingForStartTask" + }, + { + "value": "starttaskfailed", + "description": "The StartTask has failed on the Compute Node (and exhausted all retries), and waitForSuccess is set. The Compute Node is not usable for running Tasks.", + "name": "startTaskFailed" + }, + { + "value": "unknown", + "description": "The Batch service has lost contact with the Compute Node, and does not know its true state." + }, + { + "value": "leavingpool", + "description": "The Compute Node is leaving the Pool, either because the user explicitly removed it or because the Pool is resizing or autoscaling down.", + "name": "leavingPool" + }, + { + "value": "offline", + "description": "The Compute Node is not currently running a Task, and scheduling of new Tasks to the Compute Node is disabled." + }, + { + "value": "preempted", + "description": "The low-priority Compute Node has been preempted. Tasks which were running on the Compute Node when it was preempted will be rescheduled when another Compute Node becomes available." + } + ] + } + }, + "schedulingState": { + "type": "string", + "title": "Whether the Compute Node is available for Task scheduling.", + "enum": [ + "enabled", + "disabled" + ], + "x-ms-enum": { + "name": "SchedulingState", + "modelAsString": false, + "values": [ + { + "value": "enabled", + "description": "Tasks can be scheduled on the Compute Node." + }, + { + "value": "disabled", + "description": "No new Tasks will be scheduled on the Compute Node. Tasks already running on the Compute Node may still run to completion. All Compute Nodes start with scheduling enabled." + } + ] + } + }, + "stateTransitionTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the Compute Node entered its current state." + }, + "lastBootTime": { + "type": "string", + "format": "date-time", + "title": "The last time at which the Compute Node was started.", + "description": "This property may not be present if the Compute Node state is unusable." + }, + "allocationTime": { + "type": "string", + "format": "date-time", + "title": "The time at which this Compute Node was allocated to the Pool.", + "description": "This is the time when the Compute Node was initially allocated and doesn't change once set. It is not updated when the Compute Node is service healed or preempted." + }, + "ipAddress": { + "type": "string", + "title": "The IP address that other Nodes can use to communicate with this Compute Node.", + "description": "Every Compute Node that is added to a Pool is assigned a unique IP address. Whenever a Compute Node is removed from a Pool, all of its local files are deleted, and the IP address is reclaimed and could be reused for new Compute Nodes." + }, + "affinityId": { + "type": "string", + "title": "An identifier which can be passed when adding a Task to request that the Task be scheduled on this Compute Node.", + "description": "Note that this is just a soft affinity. If the target Compute Node is busy or unavailable at the time the Task is scheduled, then the Task will be scheduled elsewhere." + }, + "vmSize": { + "type": "string", + "title": "The size of the virtual machine hosting the Compute Node.", + "description": "For information about available sizes of virtual machines in Pools, see Choose a VM size for Compute Nodes in an Azure Batch Pool (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes)." + }, + "totalTasksRun": { + "type": "integer", + "format": "int32", + "title": "The total number of Job Tasks completed on the Compute Node. This includes Job Manager Tasks and normal Tasks, but not Job Preparation, Job Release or Start Tasks." + }, + "runningTasksCount": { + "type": "integer", + "format": "int32", + "title": "The total number of currently running Job Tasks on the Compute Node. This includes Job Manager Tasks and normal Tasks, but not Job Preparation, Job Release or Start Tasks." + }, + "totalTasksSucceeded": { + "type": "integer", + "format": "int32", + "title": "The total number of Job Tasks which completed successfully (with exitCode 0) on the Compute Node. This includes Job Manager Tasks and normal Tasks, but not Job Preparation, Job Release or Start Tasks." + }, + "recentTasks": { + "type": "array", + "items": { + "$ref": "#/definitions/TaskInformation" + }, + "title": "A list of Tasks whose state has recently changed.", + "description": "This property is present only if at least one Task has run on this Compute Node since it was assigned to the Pool." + }, + "startTask": { + "$ref": "#/definitions/StartTask", + "title": "The Task specified to run on the Compute Node as it joins the Pool." + }, + "startTaskInfo": { + "$ref": "#/definitions/StartTaskInformation", + "title": "Runtime information about the execution of the StartTask on the Compute Node." + }, + "certificateReferences": { + "type": "array", + "items": { + "$ref": "#/definitions/CertificateReference" + }, + "title": "The list of Certificates installed on the Compute Node.", + "description": "For Windows Nodes, the Batch service installs the Certificates to the specified Certificate store and location. For Linux Compute Nodes, the Certificates are stored in a directory inside the Task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the Task to query for this location. For Certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and Certificates are placed in that directory." + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/definitions/ComputeNodeError" + }, + "title": "The list of errors that are currently being encountered by the Compute Node." + }, + "isDedicated": { + "type": "boolean", + "title": "Whether this Compute Node is a dedicated Compute Node. If false, the Compute Node is a low-priority Compute Node." + }, + "endpointConfiguration": { + "$ref": "#/definitions/ComputeNodeEndpointConfiguration", + "title": "The endpoint configuration for the Compute Node." + }, + "nodeAgentInfo": { + "$ref": "#/definitions/NodeAgentInformation", + "title": "Information about the Compute Node agent version and the time the Compute Node upgraded to a new version." + } + }, + "title": "A Compute Node in the Batch service." + }, + "PoolEndpointConfiguration": { + "properties": { + "inboundNATPools": { + "type": "array", + "items": { + "$ref": "#/definitions/InboundNATPool" + }, + "title": "A list of inbound NAT Pools that can be used to address specific ports on an individual Compute Node externally.", + "description": "The maximum number of inbound NAT Pools per Batch Pool is 5. If the maximum number of inbound NAT Pools is exceeded the request fails with HTTP status code 400." + } + }, + "required": [ + "inboundNATPools" + ], + "title": "The endpoint configuration for a Pool." + }, + "InboundNATPool": { + "properties": { + "name": { + "type": "string", + "title": "The name of the endpoint.", + "description": "The name must be unique within a Batch Pool, can contain letters, numbers, underscores, periods, and hyphens. Names must start with a letter or number, must end with a letter, number, or underscore, and cannot exceed 77 characters. If any invalid values are provided the request fails with HTTP status code 400." + }, + "protocol": { + "$ref": "#/definitions/InboundEndpointProtocol", + "title": "The protocol of the endpoint." + }, + "backendPort": { + "type": "integer", + "format": "int32", + "title": "The port number on the Compute Node.", + "description": "This must be unique within a Batch Pool. Acceptable values are between 1 and 65535 except for 22, 3389, 29876 and 29877 as these are reserved. If any reserved values are provided the request fails with HTTP status code 400." + }, + "frontendPortRangeStart": { + "type": "integer", + "format": "int32", + "title": "The first port number in the range of external ports that will be used to provide inbound access to the backendPort on individual Compute Nodes.", + "description": "Acceptable values range between 1 and 65534 except ports from 50000 to 55000 which are reserved. All ranges within a Pool must be distinct and cannot overlap. Each range must contain at least 40 ports. If any reserved or overlapping values are provided the request fails with HTTP status code 400." + }, + "frontendPortRangeEnd": { + "type": "integer", + "format": "int32", + "title": "The last port number in the range of external ports that will be used to provide inbound access to the backendPort on individual Compute Nodes.", + "description": "Acceptable values range between 1 and 65534 except ports from 50000 to 55000 which are reserved by the Batch service. All ranges within a Pool must be distinct and cannot overlap. Each range must contain at least 40 ports. If any reserved or overlapping values are provided the request fails with HTTP status code 400." + }, + "networkSecurityGroupRules": { + "type": "array", + "title": "A list of network security group rules that will be applied to the endpoint.", + "description": "The maximum number of rules that can be specified across all the endpoints on a Batch Pool is 25. If no network security group rules are specified, a default rule will be created to allow inbound access to the specified backendPort. If the maximum number of network security group rules is exceeded the request fails with HTTP status code 400.", + "items": { + "$ref": "#/definitions/NetworkSecurityGroupRule" + } + } + }, + "required": [ + "name", + "protocol", + "backendPort", + "frontendPortRangeStart", + "frontendPortRangeEnd" + ], + "title": "A inbound NAT Pool that can be used to address specific ports on Compute Nodes in a Batch Pool externally." + }, + "NetworkSecurityGroupRule": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "title": "The priority for this rule.", + "description": "Priorities within a Pool must be unique and are evaluated in order of priority. The lower the number the higher the priority. For example, rules could be specified with order numbers of 150, 250, and 350. The rule with the order number of 150 takes precedence over the rule that has an order of 250. Allowed priorities are 150 to 4096. If any reserved or duplicate values are provided the request fails with HTTP status code 400." + }, + "access": { + "type": "string", + "title": "The action that should be taken for a specified IP address, subnet range or tag.", + "enum": [ + "allow", + "deny" + ], + "x-ms-enum": { + "name": "NetworkSecurityGroupRuleAccess", + "modelAsString": false, + "values": [ + { + "value": "allow", + "description": "Allow access." + }, + { + "value": "deny", + "description": "Deny access." + } + ] + } + }, + "sourceAddressPrefix": { + "type": "string", + "title": "The source address prefix or tag to match for the rule.", + "description": "Valid values are a single IP address (i.e. 10.10.10.10), IP subnet (i.e. 192.168.1.0/24), default tag, or * (for all addresses). If any other values are provided the request fails with HTTP status code 400." + }, + "sourcePortRanges": { + "type": "array", + "items": { + "type": "string" + }, + "title": "The source port ranges to match for the rule.", + "description": "Valid values are '*' (for all ports 0 - 65535), a specific port (i.e. 22), or a port range (i.e. 100-200). The ports must be in the range of 0 to 65535. Each entry in this collection must not overlap any other entry (either a range or an individual port). If any other values are provided the request fails with HTTP status code 400. The default value is '*'." + } + }, + "required": [ + "priority", + "access", + "sourceAddressPrefix" + ], + "title": "A network security group rule to apply to an inbound endpoint." + }, + "ComputeNodeEndpointConfiguration": { + "properties": { + "inboundEndpoints": { + "type": "array", + "items": { + "$ref": "#/definitions/InboundEndpoint" + }, + "title": "The list of inbound endpoints that are accessible on the Compute Node." + } + }, + "required": [ + "inboundEndpoints" + ], + "title": "The endpoint configuration for the Compute Node." + }, + "InboundEndpoint": { + "properties": { + "name": { + "type": "string", + "title": "The name of the endpoint." + }, + "protocol": { + "$ref": "#/definitions/InboundEndpointProtocol", + "title": "The protocol of the endpoint." + }, + "publicIPAddress": { + "type": "string", + "title": "The public IP address of the Compute Node." + }, + "publicFQDN": { + "type": "string", + "title": "The public fully qualified domain name for the Compute Node." + }, + "frontendPort": { + "type": "integer", + "format": "int32", + "title": "The public port number of the endpoint." + }, + "backendPort": { + "type": "integer", + "format": "int32", + "title": "The backend port number of the endpoint." + } + }, + "required": [ + "name", + "protocol", + "publicIPAddress", + "publicFQDN", + "frontendPort", + "backendPort" + ], + "title": "An inbound endpoint on a Compute Node." + }, + "ComputeNodeListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ComputeNode" + }, + "title": "The list of Compute Nodes." + }, + "odata.nextLink": { + "type": "string", + "title": "The URL to get the next set of results." + } + }, + "title": "The result of listing the Compute Nodes in a Pool." + }, + "ComputeNodeUser": { + "properties": { + "name": { + "type": "string", + "title": "The user name of the Account." + }, + "isAdmin": { + "type": "boolean", + "title": "Whether the Account should be an administrator on the Compute Node.", + "description": "The default value is false." + }, + "expiryTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the Account should expire.", + "description": "If omitted, the default is 1 day from the current time. For Linux Compute Nodes, the expiryTime has a precision up to a day." + }, + "password": { + "type": "string", + "title": "The password of the Account.", + "description": "The password is required for Windows Compute Nodes (those created with 'cloudServiceConfiguration', or created with 'virtualMachineConfiguration' using a Windows Image reference). For Linux Compute Nodes, the password can optionally be specified along with the sshPublicKey property." + }, + "sshPublicKey": { + "type": "string", + "title": "The SSH public key that can be used for remote login to the Compute Node.", + "description": "The public key should be compatible with OpenSSH encoding and should be base 64 encoded. This property can be specified only for Linux Compute Nodes. If this is specified for a Windows Compute Node, then the Batch service rejects the request; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request)." + } + }, + "required": [ + "name" + ], + "title": "A user Account for RDP or SSH access on a Compute Node." + }, + "ComputeNodeGetRemoteLoginSettingsResult": { + "properties": { + "remoteLoginIPAddress": { + "type": "string", + "title": "The IP address used for remote login to the Compute Node." + }, + "remoteLoginPort": { + "type": "integer", + "format": "int32", + "title": "The port used for remote login to the Compute Node." + } + }, + "required": [ + "remoteLoginIPAddress", + "remoteLoginPort" + ], + "title": "The remote login settings for a Compute Node." + }, + "JobSchedulePatchParameter": { + "properties": { + "schedule": { + "$ref": "#/definitions/Schedule", + "title": "The schedule according to which Jobs will be created.", + "description": "If you do not specify this element, the existing schedule is left unchanged." + }, + "jobSpecification": { + "$ref": "#/definitions/JobSpecification", + "title": "The details of the Jobs to be created on this schedule.", + "description": "Updates affect only Jobs that are started after the update has taken place. Any currently active Job continues with the older specification." + }, + "metadata": { + "type": "array", + "items": { + "$ref": "#/definitions/MetadataItem" + }, + "title": "A list of name-value pairs associated with the Job Schedule as metadata.", + "description": "If you do not specify this element, existing metadata is left unchanged." + } + }, + "title": "The set of changes to be made to a Job Schedule." + }, + "JobScheduleUpdateParameter": { + "properties": { + "schedule": { + "$ref": "#/definitions/Schedule", + "title": "The schedule according to which Jobs will be created.", + "description": "If you do not specify this element, it is equivalent to passing the default schedule: that is, a single Job scheduled to run immediately." + }, + "jobSpecification": { + "$ref": "#/definitions/JobSpecification", + "title": "Details of the Jobs to be created on this schedule.", + "description": "Updates affect only Jobs that are started after the update has taken place. Any currently active Job continues with the older specification." + }, + "metadata": { + "type": "array", + "items": { + "$ref": "#/definitions/MetadataItem" + }, + "title": "A list of name-value pairs associated with the Job Schedule as metadata.", + "description": "If you do not specify this element, it takes the default value of an empty list; in effect, any existing metadata is deleted." + } + }, + "required": [ + "schedule", + "jobSpecification" + ], + "title": "The set of changes to be made to a Job Schedule." + }, + "JobDisableParameter": { + "properties": { + "disableTasks": { + "type": "string", + "title": "What to do with active Tasks associated with the Job.", + "enum": [ + "requeue", + "terminate", + "wait" + ], + "x-ms-enum": { + "name": "DisableJobOption", + "modelAsString": false, + "values": [ + { + "value": "requeue", + "description": "Terminate running Tasks and requeue them. The Tasks will run again when the Job is enabled." + }, + { + "value": "terminate", + "description": "Terminate running Tasks. The Tasks will be completed with failureInfo indicating that they were terminated, and will not run again." + }, + { + "value": "wait", + "description": "Allow currently running Tasks to complete." + } + ] + } + } + }, + "required": [ + "disableTasks" + ], + "title": "Options when disabling a Job." + }, + "JobTerminateParameter": { + "properties": { + "terminateReason": { + "type": "string", + "title": "The text you want to appear as the Job's TerminateReason. The default is 'UserTerminate'." + } + }, + "title": "Options when terminating a Job." + }, + "JobPatchParameter": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "title": "The priority of the Job.", + "description": "Priority values can range from -1000 to 1000, with -1000 being the lowest priority and 1000 being the highest priority. If omitted, the priority of the Job is left unchanged." + }, + "onAllTasksComplete": { + "title": "The action the Batch service should take when all Tasks in the Job are in the completed state.", + "description": "If omitted, the completion behavior is left unchanged. You may not change the value from terminatejob to noaction - that is, once you have engaged automatic Job termination, you cannot turn it off again. If you try to do this, the request fails with an 'invalid property value' error response; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).", + "$ref": "#/definitions/OnAllTasksComplete" + }, + "constraints": { + "$ref": "#/definitions/JobConstraints", + "title": "The execution constraints for the Job.", + "description": "If omitted, the existing execution constraints are left unchanged." + }, + "poolInfo": { + "$ref": "#/definitions/PoolInformation", + "title": "The Pool on which the Batch service runs the Job's Tasks.", + "description": "You may change the Pool for a Job only when the Job is disabled. The Patch Job call will fail if you include the poolInfo element and the Job is not disabled. If you specify an autoPoolSpecification in the poolInfo, only the keepAlive property of the autoPoolSpecification can be updated, and then only if the autoPoolSpecification has a poolLifetimeOption of Job (other job properties can be updated as normal). If omitted, the Job continues to run on its current Pool." + }, + "metadata": { + "type": "array", + "items": { + "$ref": "#/definitions/MetadataItem" + }, + "title": "A list of name-value pairs associated with the Job as metadata.", + "description": "If omitted, the existing Job metadata is left unchanged." + } + }, + "title": "The set of changes to be made to a Job." + }, + "JobUpdateParameter": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "title": "The priority of the Job.", + "description": "Priority values can range from -1000 to 1000, with -1000 being the lowest priority and 1000 being the highest priority. If omitted, it is set to the default value 0." + }, + "constraints": { + "$ref": "#/definitions/JobConstraints", + "title": "The execution constraints for the Job.", + "description": "If omitted, the constraints are cleared." + }, + "poolInfo": { + "$ref": "#/definitions/PoolInformation", + "title": "The Pool on which the Batch service runs the Job's Tasks.", + "description": "You may change the Pool for a Job only when the Job is disabled. The Update Job call will fail if you include the poolInfo element and the Job is not disabled. If you specify an autoPoolSpecification in the poolInfo, only the keepAlive property of the autoPoolSpecification can be updated, and then only if the autoPoolSpecification has a poolLifetimeOption of Job (other job properties can be updated as normal)." + }, + "metadata": { + "type": "array", + "items": { + "$ref": "#/definitions/MetadataItem" + }, + "title": "A list of name-value pairs associated with the Job as metadata.", + "description": "If omitted, it takes the default value of an empty list; in effect, any existing metadata is deleted." + }, + "onAllTasksComplete": { + "title": "The action the Batch service should take when all Tasks in the Job are in the completed state.", + "description": "If omitted, the completion behavior is set to noaction. If the current value is terminatejob, this is an error because a Job's completion behavior may not be changed from terminatejob to noaction. You may not change the value from terminatejob to noaction - that is, once you have engaged automatic Job termination, you cannot turn it off again. If you try to do this, the request fails and Batch returns status code 400 (Bad Request) and an 'invalid property value' error response. If you do not specify this element in a PUT request, it is equivalent to passing noaction. This is an error if the current value is terminatejob.", + "$ref": "#/definitions/OnAllTasksComplete" + } + }, + "required": [ + "poolInfo" + ], + "title": "The set of changes to be made to a Job." + }, + "PoolEnableAutoScaleParameter": { + "properties": { + "autoScaleFormula": { + "type": "string", + "title": "The formula for the desired number of Compute Nodes in the Pool.", + "description": "The formula is checked for validity before it is applied to the Pool. If the formula is not valid, the Batch service rejects the request with detailed error information. For more information about specifying this formula, see Automatically scale Compute Nodes in an Azure Batch Pool (https://azure.microsoft.com/en-us/documentation/articles/batch-automatic-scaling)." + }, + "autoScaleEvaluationInterval": { + "type": "string", + "format": "duration", + "title": "The time interval at which to automatically adjust the Pool size according to the autoscale formula.", + "description": "The default value is 15 minutes. The minimum and maximum value are 5 minutes and 168 hours respectively. If you specify a value less than 5 minutes or greater than 168 hours, the Batch service rejects the request with an invalid property value error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request). If you specify a new interval, then the existing autoscale evaluation schedule will be stopped and a new autoscale evaluation schedule will be started, with its starting time being the time when this request was issued." + } + }, + "title": "Options for enabling automatic scaling on a Pool." + }, + "PoolEvaluateAutoScaleParameter": { + "properties": { + "autoScaleFormula": { + "type": "string", + "title": "The formula for the desired number of Compute Nodes in the Pool.", + "description": "The formula is validated and its results calculated, but it is not applied to the Pool. To apply the formula to the Pool, 'Enable automatic scaling on a Pool'. For more information about specifying this formula, see Automatically scale Compute Nodes in an Azure Batch Pool (https://azure.microsoft.com/en-us/documentation/articles/batch-automatic-scaling)." + } + }, + "required": [ + "autoScaleFormula" + ], + "title": "Options for evaluating an automatic scaling formula on a Pool." + }, + "PoolResizeParameter": { + "properties": { + "targetDedicatedNodes": { + "type": "integer", + "format": "int32", + "title": "The desired number of dedicated Compute Nodes in the Pool." + }, + "targetLowPriorityNodes": { + "type": "integer", + "format": "int32", + "title": "The desired number of low-priority Compute Nodes in the Pool." + }, + "resizeTimeout": { + "type": "string", + "format": "duration", + "title": "The timeout for allocation of Nodes to the Pool or removal of Compute Nodes from the Pool.", + "description": "The default value is 15 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service returns an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request)." + }, + "nodeDeallocationOption": { + "title": "Determines what to do with a Compute Node and its running task(s) if the Pool size is decreasing.", + "description": "The default value is requeue.", + "$ref": "#/definitions/ComputeNodeDeallocationOption" + } + }, + "title": "Options for changing the size of a Pool." + }, + "PoolUpdatePropertiesParameter": { + "properties": { + "startTask": { + "$ref": "#/definitions/StartTask", + "title": "A Task to run on each Compute Node as it joins the Pool. The Task runs when the Compute Node is added to the Pool or when the Compute Node is restarted.", + "description": "If this element is present, it overwrites any existing StartTask. If omitted, any existing StartTask is removed from the Pool." + }, + "certificateReferences": { + "type": "array", + "items": { + "$ref": "#/definitions/CertificateReference" + }, + "title": "A list of Certificates to be installed on each Compute Node in the Pool.", + "description": "This list replaces any existing Certificate references configured on the Pool. If you specify an empty collection, any existing Certificate references are removed from the Pool. For Windows Nodes, the Batch service installs the Certificates to the specified Certificate store and location. For Linux Compute Nodes, the Certificates are stored in a directory inside the Task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the Task to query for this location. For Certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and Certificates are placed in that directory." + }, + "applicationPackageReferences": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationPackageReference" + }, + "title": "The list of Application Packages to be installed on each Compute Node in the Pool.", + "description": "The list replaces any existing Application Package references on the Pool. Changes to Application Package references affect all new Compute Nodes joining the Pool, but do not affect Compute Nodes that are already in the Pool until they are rebooted or reimaged. There is a maximum of 10 Application Package references on any given Pool. If omitted, or if you specify an empty collection, any existing Application Packages references are removed from the Pool. A maximum of 10 references may be specified on a given Pool." + }, + "metadata": { + "type": "array", + "items": { + "$ref": "#/definitions/MetadataItem" + }, + "title": "A list of name-value pairs associated with the Pool as metadata.", + "description": "This list replaces any existing metadata configured on the Pool. If omitted, or if you specify an empty collection, any existing metadata is removed from the Pool." + } + }, + "required": [ + "certificateReferences", + "metadata", + "applicationPackageReferences" + ], + "title": "The set of changes to be made to a Pool." + }, + "PoolPatchParameter": { + "properties": { + "startTask": { + "$ref": "#/definitions/StartTask", + "title": "A Task to run on each Compute Node as it joins the Pool. The Task runs when the Compute Node is added to the Pool or when the Compute Node is restarted.", + "description": "If this element is present, it overwrites any existing StartTask. If omitted, any existing StartTask is left unchanged." + }, + "certificateReferences": { + "type": "array", + "items": { + "$ref": "#/definitions/CertificateReference" + }, + "title": "A list of Certificates to be installed on each Compute Node in the Pool.", + "description": "If this element is present, it replaces any existing Certificate references configured on the Pool. If omitted, any existing Certificate references are left unchanged. For Windows Nodes, the Batch service installs the Certificates to the specified Certificate store and location. For Linux Compute Nodes, the Certificates are stored in a directory inside the Task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the Task to query for this location. For Certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and Certificates are placed in that directory." + }, + "applicationPackageReferences": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationPackageReference" + }, + "title": "A list of Packages to be installed on each Compute Node in the Pool.", + "description": "Changes to Package references affect all new Nodes joining the Pool, but do not affect Compute Nodes that are already in the Pool until they are rebooted or reimaged. If this element is present, it replaces any existing Package references. If you specify an empty collection, then all Package references are removed from the Pool. If omitted, any existing Package references are left unchanged." + }, + "metadata": { + "type": "array", + "items": { + "$ref": "#/definitions/MetadataItem" + }, + "title": "A list of name-value pairs associated with the Pool as metadata.", + "description": "If this element is present, it replaces any existing metadata configured on the Pool. If you specify an empty collection, any metadata is removed from the Pool. If omitted, any existing metadata is left unchanged." + } + }, + "title": "The set of changes to be made to a Pool." + }, + "TaskUpdateParameter": { + "properties": { + "constraints": { + "$ref": "#/definitions/TaskConstraints", + "title": "Constraints that apply to this Task.", + "description": "If omitted, the Task is given the default constraints. For multi-instance Tasks, updating the retention time applies only to the primary Task and not subtasks." + } + }, + "title": "The set of changes to be made to a Task." + }, + "NodeUpdateUserParameter": { + "properties": { + "password": { + "type": "string", + "title": "The password of the Account.", + "description": "The password is required for Windows Compute Nodes (those created with 'cloudServiceConfiguration', or created with 'virtualMachineConfiguration' using a Windows Image reference). For Linux Compute Nodes, the password can optionally be specified along with the sshPublicKey property. If omitted, any existing password is removed." + }, + "expiryTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the Account should expire.", + "description": "If omitted, the default is 1 day from the current time. For Linux Compute Nodes, the expiryTime has a precision up to a day." + }, + "sshPublicKey": { + "type": "string", + "title": "The SSH public key that can be used for remote login to the Compute Node.", + "description": "The public key should be compatible with OpenSSH encoding and should be base 64 encoded. This property can be specified only for Linux Compute Nodes. If this is specified for a Windows Compute Node, then the Batch service rejects the request; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request). If omitted, any existing SSH public key is removed." + } + }, + "title": "The set of changes to be made to a user Account on a Compute Node." + }, + "NodeRebootParameter": { + "properties": { + "nodeRebootOption": { + "type": "string", + "title": "When to reboot the Compute Node and what to do with currently running Tasks.", + "description": "The default value is requeue.", + "enum": [ + "requeue", + "terminate", + "taskcompletion", + "retaineddata" + ], + "x-ms-enum": { + "name": "ComputeNodeRebootOption", + "modelAsString": false, + "values": [ + { + "value": "requeue", + "description": "Terminate running Task processes and requeue the Tasks. The Tasks will run again when a Compute Node is available. Restart the Compute Node as soon as Tasks have been terminated." + }, + { + "value": "terminate", + "description": "Terminate running Tasks. The Tasks will be completed with failureInfo indicating that they were terminated, and will not run again. Restart the Compute Node as soon as Tasks have been terminated." + }, + { + "value": "taskcompletion", + "description": "Allow currently running Tasks to complete. Schedule no new Tasks while waiting. Restart the Compute Node when all Tasks have completed.", + "name": "taskCompletion" + }, + { + "value": "retaineddata", + "description": "Allow currently running Tasks to complete, then wait for all Task data retention periods to expire. Schedule no new Tasks while waiting. Restart the Compute Node when all Task retention periods have expired.", + "name": "retainedData" + } + ] + } + } + }, + "title": "Options for rebooting a Compute Node." + }, + "NodeReimageParameter": { + "properties": { + "nodeReimageOption": { + "type": "string", + "title": "When to reimage the Compute Node and what to do with currently running Tasks.", + "description": "The default value is requeue.", + "enum": [ + "requeue", + "terminate", + "taskcompletion", + "retaineddata" + ], + "x-ms-enum": { + "name": "ComputeNodeReimageOption", + "modelAsString": false, + "values": [ + { + "value": "requeue", + "description": "Terminate running Task processes and requeue the Tasks. The Tasks will run again when a Compute Node is available. Reimage the Compute Node as soon as Tasks have been terminated." + }, + { + "value": "terminate", + "description": "Terminate running Tasks. The Tasks will be completed with failureInfo indicating that they were terminated, and will not run again. Reimage the Compute Node as soon as Tasks have been terminated." + }, + { + "value": "taskcompletion", + "description": "Allow currently running Tasks to complete. Schedule no new Tasks while waiting. Reimage the Compute Node when all Tasks have completed.", + "name": "taskCompletion" + }, + { + "value": "retaineddata", + "description": "Allow currently running Tasks to complete, then wait for all Task data retention periods to expire. Schedule no new Tasks while waiting. Reimage the Compute Node when all Task retention periods have expired.", + "name": "retainedData" + } + ] + } + } + }, + "title": "Options for reimaging a Compute Node." + }, + "NodeDisableSchedulingParameter": { + "properties": { + "nodeDisableSchedulingOption": { + "type": "string", + "title": "What to do with currently running Tasks when disabling Task scheduling on the Compute Node.", + "description": "The default value is requeue.", + "enum": [ + "requeue", + "terminate", + "taskcompletion" + ], + "x-ms-enum": { + "name": "DisableComputeNodeSchedulingOption", + "modelAsString": false, + "values": [ + { + "value": "requeue", + "description": "Terminate running Task processes and requeue the Tasks. The Tasks may run again on other Compute Nodes, or when Task scheduling is re-enabled on this Compute Node. Enter offline state as soon as Tasks have been terminated." + }, + { + "value": "terminate", + "description": "Terminate running Tasks. The Tasks will be completed with failureInfo indicating that they were terminated, and will not run again. Enter offline state as soon as Tasks have been terminated." + }, + { + "value": "taskcompletion", + "description": "Allow currently running Tasks to complete. Schedule no new Tasks while waiting. Enter offline state when all Tasks have completed.", + "name": "taskCompletion" + } + ] + } + } + }, + "title": "Options for disabling scheduling on a Compute Node." + }, + "NodeRemoveParameter": { + "properties": { + "nodeList": { + "type": "array", + "maxItems": 100, + "items": { + "type": "string" + }, + "title": "A list containing the IDs of the Compute Nodes to be removed from the specified Pool." + }, + "resizeTimeout": { + "type": "string", + "format": "duration", + "title": "The timeout for removal of Compute Nodes to the Pool.", + "description": "The default value is 15 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service returns an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request)." + }, + "nodeDeallocationOption": { + "title": "Determines what to do with a Compute Node and its running task(s) after it has been selected for deallocation.", + "description": "The default value is requeue.", + "$ref": "#/definitions/ComputeNodeDeallocationOption" + } + }, + "required": [ + "nodeList" + ], + "title": "Options for removing Compute Nodes from a Pool." + }, + "OutputFile": { + "properties": { + "filePattern": { + "type": "string", + "title": "A pattern indicating which file(s) to upload.", + "description": "Both relative and absolute paths are supported. Relative paths are relative to the Task working directory. The following wildcards are supported: * matches 0 or more characters (for example pattern abc* would match abc or abcdef), ** matches any directory, ? matches any single character, [abc] matches one character in the brackets, and [a-c] matches one character in the range. Brackets can include a negation to match any character not specified (for example [!abc] matches any character but a, b, or c). If a file name starts with \".\" it is ignored by default but may be matched by specifying it explicitly (for example *.gif will not match .a.gif, but .*.gif will). A simple example: **\\*.txt matches any file that does not start in '.' and ends with .txt in the Task working directory or any subdirectory. If the filename contains a wildcard character it can be escaped using brackets (for example abc[*] would match a file named abc*). Note that both \\ and / are treated as directory separators on Windows, but only / is on Linux. Environment variables (%var% on Windows or $var on Linux) are expanded prior to the pattern being applied." + }, + "destination": { + "title": "The destination for the output file(s).", + "$ref": "#/definitions/OutputFileDestination" + }, + "uploadOptions": { + "title": "Additional options for the upload operation, including under what conditions to perform the upload.", + "$ref": "#/definitions/OutputFileUploadOptions" + } + }, + "required": [ + "filePattern", + "destination", + "uploadOptions" + ], + "title": "A specification for uploading files from an Azure Batch Compute Node to another location after the Batch service has finished executing the Task process." + }, + "OutputFileDestination": { + "properties": { + "container": { + "title": "A location in Azure blob storage to which files are uploaded.", + "$ref": "#/definitions/OutputFileBlobContainerDestination" + } + }, + "title": "The destination to which a file should be uploaded." + }, + "OutputFileBlobContainerDestination": { + "properties": { + "path": { + "type": "string", + "title": "The destination blob or virtual directory within the Azure Storage container.", + "description": "If filePattern refers to a specific file (i.e. contains no wildcards), then path is the name of the blob to which to upload that file. If filePattern contains one or more wildcards (and therefore may match multiple files), then path is the name of the blob virtual directory (which is prepended to each blob name) to which to upload the file(s). If omitted, file(s) are uploaded to the root of the container with a blob name matching their file name." + }, + "containerUrl": { + "type": "string", + "title": "The URL of the container within Azure Blob Storage to which to upload the file(s).", + "description": "The URL must include a Shared Access Signature (SAS) granting write permissions to the container." + } + }, + "required": [ + "containerUrl" + ], + "title": "Specifies a file upload destination within an Azure blob storage container." + }, + "OutputFileUploadOptions": { + "properties": { + "uploadCondition": { + "title": "The conditions under which the Task output file or set of files should be uploaded.", + "description": "The default is taskcompletion.", + "$ref": "#/definitions/OutputFileUploadCondition" + } + }, + "required": [ + "uploadCondition" + ], + "title": "Details about an output file upload operation, including under what conditions to perform the upload." + }, + "ErrorMessage": { + "properties": { + "lang": { + "type": "string", + "title": "The language code of the error message" + }, + "value": { + "type": "string", + "title": "The text of the message." + } + }, + "title": "An error message received in an Azure Batch error response." + }, + "BatchErrorDetail": { + "properties": { + "key": { + "type": "string", + "title": "An identifier specifying the meaning of the Value property." + }, + "value": { + "type": "string", + "title": "The additional information included with the error response." + } + }, + "title": "An item of additional information included in an Azure Batch error response." + }, + "BatchError": { + "properties": { + "code": { + "type": "string", + "title": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "$ref": "#/definitions/ErrorMessage", + "title": "A message describing the error, intended to be suitable for display in a user interface." + }, + "values": { + "type": "array", + "items": { + "$ref": "#/definitions/BatchErrorDetail" + }, + "title": "A collection of key-value pairs containing additional details about the error." + } + }, + "title": "An error response received from the Azure Batch service." + }, + "CertificateState": { + "type": "string", + "title": "The state of the Certificate.", + "enum": [ + "active", + "deleting", + "deletefailed" + ], + "x-ms-enum": { + "name": "CertificateState", + "modelAsString": false, + "values": [ + { + "value": "active", + "description": "The Certificate is available for use in Pools." + }, + { + "value": "deleting", + "description": "The user has requested that the Certificate be deleted, but the delete operation has not yet completed. You may not reference the Certificate when creating or updating Pools." + }, + { + "value": "deletefailed", + "description": "The user requested that the Certificate be deleted, but there are Pools that still have references to the Certificate, or it is still installed on one or more Nodes. (The latter can occur if the Certificate has been removed from the Pool, but the Compute Node has not yet restarted. Compute Nodes refresh their Certificates only when they restart.) You may use the cancel Certificate delete operation to cancel the delete, or the delete Certificate operation to retry the delete.", + "name": "deleteFailed" + } + ] + } + }, + "ElevationLevel": { + "type": "string", + "title": "The elevation level of the user.", + "enum": [ + "nonadmin", + "admin" + ], + "x-ms-enum": { + "name": "ElevationLevel", + "modelAsString": false, + "values": [ + { + "value": "nonadmin", + "description": "The user is a standard user without elevated access.", + "name": "nonAdmin" + }, + { + "value": "admin", + "description": "The user is a user with elevated access and operates with full Administrator permissions." + } + ] + } + }, + "JobScheduleState": { + "type": "string", + "title": "The state of the Job Schedule.", + "enum": [ + "active", + "completed", + "disabled", + "terminating", + "deleting" + ], + "x-ms-enum": { + "name": "JobScheduleState", + "modelAsString": false, + "values": [ + { + "value": "active", + "description": "The Job Schedule is active and will create Jobs as per its schedule." + }, + { + "value": "completed", + "description": "The Job Schedule has terminated, either by reaching its end time or by the user terminating it explicitly." + }, + { + "value": "disabled", + "description": "The user has disabled the Job Schedule. The scheduler will not initiate any new Jobs will on this schedule, but any existing active Job will continue to run." + }, + { + "value": "terminating", + "description": "The Job Schedule has no more work to do, or has been explicitly terminated by the user, but the termination operation is still in progress. The scheduler will not initiate any new Jobs for this Job Schedule, nor is any existing Job active." + }, + { + "value": "deleting", + "description": "The user has requested that the Job Schedule be deleted, but the delete operation is still in progress. The scheduler will not initiate any new Jobs for this Job Schedule, and will delete any existing Jobs and Tasks under the Job Schedule, including any active Job. The Job Schedule will be deleted when all Jobs and Tasks under the Job Schedule have been deleted." + } + ] + } + }, + "JobState": { + "type": "string", + "title": "The state of the Job.", + "enum": [ + "active", + "disabling", + "disabled", + "enabling", + "terminating", + "completed", + "deleting" + ], + "x-ms-enum": { + "name": "JobState", + "modelAsString": false, + "values": [ + { + "value": "active", + "description": "The Job is available to have Tasks scheduled." + }, + { + "value": "disabling", + "description": "A user has requested that the Job be disabled, but the disable operation is still in progress (for example, waiting for Tasks to terminate)." + }, + { + "value": "disabled", + "description": "A user has disabled the Job. No Tasks are running, and no new Tasks will be scheduled." + }, + { + "value": "enabling", + "description": "A user has requested that the Job be enabled, but the enable operation is still in progress." + }, + { + "value": "terminating", + "description": "The Job is about to complete, either because a Job Manager Task has completed or because the user has terminated the Job, but the terminate operation is still in progress (for example, because Job Release Tasks are running)." + }, + { + "value": "completed", + "description": "All Tasks have terminated, and the system will not accept any more Tasks or any further changes to the Job." + }, + { + "value": "deleting", + "description": "A user has requested that the Job be deleted, but the delete operation is still in progress (for example, because the system is still terminating running Tasks)." + } + ] + } + }, + "OnAllTasksComplete": { + "type": "string", + "title": "The action the Batch service should take when all Tasks in the Job are in the completed state.", + "enum": [ + "noaction", + "terminatejob" + ], + "x-ms-enum": { + "name": "OnAllTasksComplete", + "modelAsString": false, + "values": [ + { + "value": "noaction", + "description": "Do nothing. The Job remains active unless terminated or disabled by some other means.", + "name": "noAction" + }, + { + "value": "terminatejob", + "description": "Terminate the Job. The Job's terminateReason is set to 'AllTasksComplete'.", + "name": "terminateJob" + } + ] + } + }, + "OnTaskFailure": { + "type": "string", + "title": "The action the Batch service should take when any Task in the Job fails.", + "description": "A Task is considered to have failed if has a failureInfo. A failureInfo is set if the Task completes with a non-zero exit code after exhausting its retry count, or if there was an error starting the Task, for example due to a resource file download error. The default is noaction.", + "enum": [ + "noaction", + "performexitoptionsjobaction" + ], + "x-ms-enum": { + "name": "OnTaskFailure", + "modelAsString": false, + "values": [ + { + "value": "noaction", + "description": "Do nothing. The Job remains active unless terminated or disabled by some other means.", + "name": "noAction" + }, + { + "value": "performexitoptionsjobaction", + "description": "Take the action associated with the Task exit condition in the Task's exitConditions collection. (This may still result in no action being taken, if that is what the Task specifies.)", + "name": "performExitOptionsJobAction" + } + ] + } + }, + "ErrorCategory": { + "type": "string", + "title": "The category of the error.", + "enum": [ + "usererror", + "servererror" + ], + "x-ms-enum": { + "name": "ErrorCategory", + "modelAsString": false, + "values": [ + { + "value": "usererror", + "description": "The error is due to a user issue, such as misconfiguration.", + "name": "userError" + }, + { + "value": "servererror", + "description": "The error is due to an internal server issue.", + "name": "serverError" + } + ] + } + }, + "TaskState": { + "type": "string", + "title": "The state of the Task.", + "enum": [ + "active", + "preparing", + "running", + "completed" + ], + "x-ms-enum": { + "name": "TaskState", + "modelAsString": false, + "values": [ + { + "value": "active", + "description": "The Task is queued and able to run, but is not currently assigned to a Compute Node. A Task enters this state when it is created, when it is enabled after being disabled, or when it is awaiting a retry after a failed run." + }, + { + "value": "preparing", + "description": "The Task has been assigned to a Compute Node, but is waiting for a required Job Preparation Task to complete on the Compute Node. If the Job Preparation Task succeeds, the Task will move to running. If the Job Preparation Task fails, the Task will return to active and will be eligible to be assigned to a different Compute Node." + }, + { + "value": "running", + "description": "The Task is running on a Compute Node. This includes task-level preparation such as downloading resource files or deploying Packages specified on the Task - it does not necessarily mean that the Task command line has started executing." + }, + { + "value": "completed", + "description": "The Task is no longer eligible to run, usually because the Task has finished successfully, or the Task has finished unsuccessfully and has exhausted its retry limit. A Task is also marked as completed if an error occurred launching the Task, or when the Task has been terminated." + } + ] + } + }, + "SubtaskState": { + "type": "string", + "title": "The state of the subtask.", + "enum": [ + "preparing", + "running", + "completed" + ], + "x-ms-enum": { + "name": "SubtaskState", + "modelAsString": false, + "values": [ + { + "value": "preparing", + "description": "The Task has been assigned to a Compute Node, but is waiting for a required Job Preparation Task to complete on the Compute Node. If the Job Preparation Task succeeds, the Task will move to running. If the Job Preparation Task fails, the Task will return to active and will be eligible to be assigned to a different Compute Node." + }, + { + "value": "running", + "description": "The Task is running on a Compute Node. This includes task-level preparation such as downloading resource files or deploying Packages specified on the Task - it does not necessarily mean that the Task command line has started executing." + }, + { + "value": "completed", + "description": "The Task is no longer eligible to run, usually because the Task has finished successfully, or the Task has finished unsuccessfully and has exhausted its retry limit. A Task is also marked as completed if an error occurred launching the Task, or when the Task has been terminated." + } + ] + } + }, + "ComputeNodeDeallocationOption": { + "type": "string", + "title": "Determines what to do with a Compute Node and its running task(s) after it has been selected for deallocation.", + "description": "The default value is requeue.", + "enum": [ + "requeue", + "terminate", + "taskcompletion", + "retaineddata" + ], + "x-ms-enum": { + "name": "ComputeNodeDeallocationOption", + "modelAsString": false, + "values": [ + { + "value": "requeue", + "description": "Terminate running Task processes and requeue the Tasks. The Tasks will run again when a Compute Node is available. Remove Compute Nodes as soon as Tasks have been terminated." + }, + { + "value": "terminate", + "description": "Terminate running Tasks. The Tasks will be completed with failureInfo indicating that they were terminated, and will not run again. Remove Compute Nodes as soon as Tasks have been terminated." + }, + { + "value": "taskcompletion", + "description": "Allow currently running Tasks to complete. Schedule no new Tasks while waiting. Remove Compute Nodes when all Tasks have completed.", + "name": "taskCompletion" + }, + { + "value": "retaineddata", + "description": "Allow currently running Tasks to complete, then wait for all Task data retention periods to expire. Schedule no new Tasks while waiting. Remove Compute Nodes when all Task retention periods have expired.", + "name": "retainedData" + } + ] + } + }, + "OutputFileUploadCondition": { + "type": "string", + "title": "The conditions under which a Task output file or set of files should be uploaded.", + "enum": [ + "tasksuccess", + "taskfailure", + "taskcompletion" + ], + "x-ms-enum": { + "name": "OutputFileUploadCondition", + "modelAsString": false, + "values": [ + { + "value": "tasksuccess", + "description": "Upload the file(s) only after the Task process exits with an exit code of 0.", + "name": "taskSuccess" + }, + { + "value": "taskfailure", + "description": "Upload the file(s) only after the Task process exits with a nonzero exit code.", + "name": "taskFailure" + }, + { + "value": "taskcompletion", + "description": "Upload the file(s) after the Task process exits, no matter what the exit code was.", + "name": "taskCompletion" + } + ] + } + }, + "TaskExecutionResult": { + "type": "string", + "title": "The result of Task execution.", + "enum": [ + "success", + "failure" + ], + "x-ms-enum": { + "name": "TaskExecutionResult", + "modelAsString": false, + "values": [ + { + "value": "success", + "description": "The Task ran successfully.", + "name": "success" + }, + { + "value": "failure", + "description": "There was an error during processing of the Task. The failure may have occurred before the Task process was launched, while the Task process was executing, or after the Task process exited.", + "name": "failure" + } + ] + } + }, + "InboundEndpointProtocol": { + "type": "string", + "title": "The protocol of the endpoint.", + "enum": [ + "tcp", + "udp" + ], + "x-ms-enum": { + "name": "InboundEndpointProtocol", + "modelAsString": false, + "values": [ + { + "value": "tcp", + "description": "Use TCP for the endpoint.", + "name": "tcp" + }, + { + "value": "udp", + "description": "Use UDP for the endpoint.", + "name": "udp" + } + ] + } + }, + "UploadBatchServiceLogsConfiguration": { + "properties": { + "containerUrl": { + "type": "string", + "title": "The URL of the container within Azure Blob Storage to which to upload the Batch Service log file(s).", + "description": "The URL must include a Shared Access Signature (SAS) granting write permissions to the container. The SAS duration must allow enough time for the upload to finish. The start time for SAS is optional and recommended to not be specified." + }, + "startTime": { + "type": "string", + "format": "date-time", + "title": "The start of the time range from which to upload Batch Service log file(s).", + "description": "Any log file containing a log message in the time range will be uploaded. This means that the operation might retrieve more logs than have been requested since the entire log file is always uploaded, but the operation should not retrieve fewer logs than have been requested." + }, + "endTime": { + "type": "string", + "format": "date-time", + "title": "The end of the time range from which to upload Batch Service log file(s).", + "description": "Any log file containing a log message in the time range will be uploaded. This means that the operation might retrieve more logs than have been requested since the entire log file is always uploaded, but the operation should not retrieve fewer logs than have been requested. If omitted, the default is to upload all logs available after the startTime." + } + }, + "required": [ + "containerUrl", + "startTime" + ], + "title": "The Azure Batch service log files upload configuration for a Compute Node." + }, + "UploadBatchServiceLogsResult": { + "properties": { + "virtualDirectoryName": { + "type": "string", + "title": "The virtual directory within Azure Blob Storage container to which the Batch Service log file(s) will be uploaded.", + "description": "The virtual directory name is part of the blob name for each log file uploaded, and it is built based poolId, nodeId and a unique identifier." + }, + "numberOfFilesUploaded": { + "type": "integer", + "format": "int32", + "title": "The number of log files which will be uploaded." + } + }, + "required": [ + "virtualDirectoryName", + "numberOfFilesUploaded" + ], + "title": "The result of uploading Batch service log files from a specific Compute Node." + }, + "PoolNodeCountsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PoolNodeCounts" + }, + "description": "A list of Compute Node counts by Pool." + }, + "odata.nextLink": { + "type": "string", + "title": "The URL to get the next set of results." + } + }, + "title": "The result of listing the Compute Node counts in the Account." + }, + "PoolNodeCounts": { + "properties": { + "poolId": { + "type": "string", + "title": "The ID of the Pool." + }, + "dedicated": { + "$ref": "#/definitions/NodeCounts", + "title": "The number of dedicated Compute Nodes in each state." + }, + "lowPriority": { + "$ref": "#/definitions/NodeCounts", + "title": "The number of low priority Compute Nodes in each state." + } + }, + "required": [ + "poolId" + ], + "title": "The number of Compute Nodes in each state for a Pool." + }, + "NodeCounts": { + "properties": { + "creating": { + "type": "integer", + "format": "int32", + "title": "The number of Compute Nodes in the creating state." + }, + "idle": { + "type": "integer", + "format": "int32", + "title": "The number of Compute Nodes in the idle state." + }, + "offline": { + "type": "integer", + "format": "int32", + "title": "The number of Compute Nodes in the offline state." + }, + "preempted": { + "type": "integer", + "format": "int32", + "title": "The number of Compute Nodes in the preempted state." + }, + "rebooting": { + "type": "integer", + "format": "int32", + "title": "The count of Compute Nodes in the rebooting state." + }, + "reimaging": { + "type": "integer", + "format": "int32", + "title": "The number of Compute Nodes in the reimaging state." + }, + "running": { + "type": "integer", + "format": "int32", + "title": "The number of Compute Nodes in the running state." + }, + "starting": { + "type": "integer", + "format": "int32", + "title": "The number of Compute Nodes in the starting state." + }, + "startTaskFailed": { + "type": "integer", + "format": "int32", + "title": "The number of Compute Nodes in the startTaskFailed state." + }, + "leavingPool": { + "type": "integer", + "format": "int32", + "title": "The number of Compute Nodes in the leavingPool state." + }, + "unknown": { + "type": "integer", + "format": "int32", + "title": "The number of Compute Nodes in the unknown state." + }, + "unusable": { + "type": "integer", + "format": "int32", + "title": "The number of Compute Nodes in the unusable state." + }, + "waitingForStartTask": { + "type": "integer", + "format": "int32", + "title": "The number of Compute Nodes in the waitingForStartTask state." + }, + "total": { + "type": "integer", + "format": "int32", + "title": "The total number of Compute Nodes." + } + }, + "required": [ + "creating", + "idle", + "offline", + "preempted", + "rebooting", + "reimaging", + "running", + "starting", + "startTaskFailed", + "leavingPool", + "unknown", + "unusable", + "waitingForStartTask", + "total" + ], + "title": "The number of Compute Nodes in each Compute Node state." + }, + "MountConfiguration": { + "properties": { + "azureBlobFileSystemConfiguration": { + "$ref": "#/definitions/AzureBlobFileSystemConfiguration", + "title": "The Azure Storage Container to mount using blob FUSE on each node.", + "description": "This property is mutually exclusive with all other properties." + }, + "nfsMountConfiguration": { + "$ref": "#/definitions/NFSMountConfiguration", + "title": "The NFS file system to mount on each node.", + "description": "This property is mutually exclusive with all other properties." + }, + "cifsMountConfiguration": { + "$ref": "#/definitions/CIFSMountConfiguration", + "title": "The CIFS/SMB file system to mount on each node.", + "description": "This property is mutually exclusive with all other properties." + }, + "azureFileShareConfiguration": { + "$ref": "#/definitions/AzureFileShareConfiguration", + "title": "The Azure File Share to mount on each node.", + "description": "This property is mutually exclusive with all other properties." + } + }, + "title": "The file system to mount on each node." + }, + "AzureBlobFileSystemConfiguration": { + "properties": { + "accountName": { + "type": "string", + "title": "The Azure Storage Account name." + }, + "containerName": { + "type": "string", + "title": "The Azure Blob Storage Container name." + }, + "accountKey": { + "type": "string", + "title": "The Azure Storage Account key.", + "description": "This property is mutually exclusive with sasKey and one must be specified." + }, + "sasKey": { + "type": "string", + "title": "The Azure Storage SAS token.", + "description": "This property is mutually exclusive with accountKey and one must be specified." + }, + "blobfuseOptions": { + "type": "string", + "title": "Additional command line options to pass to the mount command.", + "description": "These are 'net use' options in Windows and 'mount' options in Linux." + }, + "relativeMountPath": { + "type": "string", + "title": "The relative path on the compute node where the file system will be mounted", + "description": "All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable." + } + }, + "required": [ + "accountName", + "containerName", + "relativeMountPath" + ], + "title": "Information used to connect to an Azure Storage Container using Blobfuse." + }, + "NFSMountConfiguration": { + "properties": { + "source": { + "type": "string", + "title": "The URI of the file system to mount." + }, + "relativeMountPath": { + "type": "string", + "title": "The relative path on the compute node where the file system will be mounted", + "description": "All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable." + }, + "mountOptions": { + "type": "string", + "title": "Additional command line options to pass to the mount command.", + "description": "These are 'net use' options in Windows and 'mount' options in Linux." + } + }, + "required": [ + "source", + "relativeMountPath" + ], + "title": "Information used to connect to an NFS file system." + }, + "CIFSMountConfiguration": { + "properties": { + "username": { + "type": "string", + "title": "The user to use for authentication against the CIFS file system." + }, + "source": { + "type": "string", + "title": "The URI of the file system to mount." + }, + "relativeMountPath": { + "type": "string", + "title": "The relative path on the compute node where the file system will be mounted", + "description": "All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable." + }, + "mountOptions": { + "type": "string", + "title": "Additional command line options to pass to the mount command.", + "description": "These are 'net use' options in Windows and 'mount' options in Linux." + }, + "password": { + "type": "string", + "title": "The password to use for authentication against the CIFS file system." + } + }, + "required": [ + "username", + "source", + "password", + "relativeMountPath" + ], + "title": "Information used to connect to a CIFS file system." + }, + "AzureFileShareConfiguration": { + "properties": { + "accountName": { + "type": "string", + "title": "The Azure Storage account name." + }, + "azureFileUrl": { + "type": "string", + "title": "The Azure Files URL.", + "description": "This is of the form 'https://{account}.file.core.windows.net/'." + }, + "accountKey": { + "type": "string", + "title": "The Azure Storage account key." + }, + "relativeMountPath": { + "type": "string", + "title": "The relative path on the compute node where the file system will be mounted", + "description": "All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable." + }, + "mountOptions": { + "type": "string", + "title": "Additional command line options to pass to the mount command.", + "description": "These are 'net use' options in Windows and 'mount' options in Linux." + } + }, + "required": [ + "accountName", + "azureFileUrl", + "accountKey", + "relativeMountPath" + ], + "title": "Information used to connect to an Azure Fileshare." + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API Version." + }, + "batchUrl": { + "name": "batchUrl", + "x-ms-parameter-location": "client", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true, + "description": "The base URL for all Azure Batch service requests." + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/AccountListPoolNodeCounts.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/AccountListPoolNodeCounts.json new file mode 100644 index 000000000000..4591aa187647 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/AccountListPoolNodeCounts.json @@ -0,0 +1,121 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "poolId": "pool1", + "dedicated": { + "creating": 0, + "idle": 0, + "leavingPool": 0, + "offline": 0, + "preempted": 0, + "rebooting": 0, + "reimaging": 0, + "running": 0, + "starting": 0, + "startTaskFailed": 0, + "unknown": 0, + "unusable": 0, + "waitingForStartTask": 0, + "total": 0 + }, + "lowPriority": { + "creating": 0, + "idle": 0, + "leavingPool": 0, + "offline": 0, + "preempted": 0, + "rebooting": 0, + "reimaging": 0, + "running": 2, + "starting": 1, + "startTaskFailed": 0, + "unknown": 0, + "unusable": 0, + "waitingForStartTask": 0, + "total": 3 + } + }, + { + "poolId": "pool2", + "dedicated": { + "creating": 0, + "idle": 1, + "leavingPool": 0, + "offline": 3, + "preempted": 0, + "rebooting": 0, + "reimaging": 0, + "running": 0, + "starting": 0, + "startTaskFailed": 0, + "unknown": 0, + "unusable": 0, + "waitingForStartTask": 0, + "total": 4 + }, + "lowPriority": { + "creating": 0, + "idle": 0, + "leavingPool": 0, + "offline": 0, + "preempted": 0, + "rebooting": 0, + "reimaging": 0, + "running": 0, + "starting": 0, + "startTaskFailed": 0, + "unknown": 0, + "unusable": 0, + "waitingForStartTask": 0, + "total": 0 + } + }, + { + "poolId": "pool3", + "dedicated": { + "creating": 0, + "idle": 5, + "leavingPool": 0, + "offline": 0, + "preempted": 0, + "rebooting": 0, + "reimaging": 4, + "running": 0, + "starting": 0, + "startTaskFailed": 0, + "unknown": 0, + "unusable": 0, + "waitingForStartTask": 0, + "total": 9 + }, + "lowPriority": { + "creating": 7, + "idle": 0, + "leavingPool": 0, + "offline": 0, + "preempted": 0, + "rebooting": 0, + "reimaging": 0, + "running": 4, + "starting": 0, + "startTaskFailed": 0, + "unknown": 0, + "unusable": 0, + "waitingForStartTask": 0, + "total": 11 + } + } + ] + } + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/AccountListSupportedImages.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/AccountListSupportedImages.json new file mode 100644 index 000000000000..c9e9b87352a7 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/AccountListSupportedImages.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "nodeAgentSKUId": "batch.node.centos 7", + "imageReference": { + "publisher": "OpenLogic", + "offer": "CentOS", + "sku": "7.2", + "version": "latest" + }, + "verificationType": "verified", + "capabilities": [ + "DockerCompatible", + "NvidiaTeslaDriverInstalled" + ], + "osType": "linux" + }, + { + "nodeAgentSKUId": "batch.node.centos 7", + "imageReference": { + "publisher": "OpenLogic", + "offer": "CentOS", + "sku": "7.1", + "version": "latest" + }, + "verificationType": "unverified", + "osType": "linux", + "batchSupportEndOfLife": "2019-11-01T00:00:00.0Z" + }, + { + "nodeAgentSKUId": "batch.node.debian 8", + "imageReference": { + "publisher": "Credativ", + "offer": "Debian", + "sku": "8", + "version": "latest" + }, + "verificationType": "verified", + "osType": "linux" + }, + { + "nodeAgentSKUId": "batch.node.windows amd64", + "imageReference": { + "publisher": "MicrosoftWindowsServer", + "offer": "WindowsServer", + "sku": "2012-R2-Datacenter", + "version": "latest" + }, + "verificationType": "verified", + "osType": "windows" + }, + { + "nodeAgentSKUId": "batch.node.windows amd64", + "imageReference": { + "publisher": "MicrosoftWindowsServer", + "offer": "WindowsServer", + "sku": "2012-Datacenter", + "version": "latest" + }, + "verificationType": "verified", + "osType": "windows" + } + ] + } + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/ApplicationGet.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/ApplicationGet.json new file mode 100644 index 000000000000..89901c9c19c7 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/ApplicationGet.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "applicationId": "my_application_id" + }, + "responses": { + "200": { + "body": { + "id": "my_application_id", + "versions": [ + "v1.0" + ], + "displayName": "my_display_name" + } + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/ApplicationList.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/ApplicationList.json new file mode 100644 index 000000000000..4d0c21d32ddf --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/ApplicationList.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "my_application_id", + "versions": [ + "v1.0" + ], + "displayName": "my_display_name" + } + ] + } + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/CertificateAdd.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/CertificateAdd.json new file mode 100644 index 000000000000..43badf092110 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/CertificateAdd.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "certificate": { + "thumbprintAlgorithm": "sha1", + "thumbprint": "0123456789abcdef0123456789abcdef01234567", + "data": "#####...", + "certificateFormat": "pfx", + "password": "certpassword" + } + }, + "responses": { + "201": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/CertificateCancelDelete.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/CertificateCancelDelete.json new file mode 100644 index 000000000000..5a26439110fc --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/CertificateCancelDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "thumbprintAlgorithm": "sha1", + "thumbprint": "0123456789abcdef0123456789abcdef01234567", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "204": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/CertificateDelete.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/CertificateDelete.json new file mode 100644 index 000000000000..34c2323fbdd7 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/CertificateDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "thumbprintAlgorithm": "sha1", + "thumbprint": "0123456789abcdef0123456789abcdef01234567", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "202": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/CertificateGet.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/CertificateGet.json new file mode 100644 index 000000000000..8bd190258b81 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/CertificateGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "thumbprintAlgorithm": "sha1", + "thumbprint": "0123456789abcdef0123456789abcdef01234567", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": { + "body": { + "thumbprint": "0123456789abcdef0123456789abcdef01234567", + "thumbprintAlgorithm": "sha1", + "url": "https://account.region.batch.azure.com/certificates(thumbprintAlgorithm=sha1,thumbprint=0123456789abcdef0123456789abcdef01234567)", + "state": "deletefailed", + "stateTransitionTime": "2014-07-31T21:12:58.236Z", + "previousState": "deleting", + "previousStateTransitionTime": "2014-07-31T21:11:58.236Z", + "publicData": "#####...", + "deleteCertificateError": { + "code": "PoolsReferencingCertificate", + "message": "The specified certificate is being used by the below mentioned pool(s)", + "values": [ + { + "name": "Pools", + "value": "mypool1" + } + ] + } + } + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/CertificateList.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/CertificateList.json new file mode 100644 index 000000000000..2b8fa4d5953d --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/CertificateList.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "thumbprint": "0123456789abcdef0123456789abcdef01234567", + "thumbprintAlgorithm": "sha1", + "url": "https://account.region.batch.azure.com/certificates(thumbprintAlgorithm=sha1,thumbprint=0123456789abcdef0123456789abcdef01234567)", + "state": "deletefailed", + "stateTransitionTime": "2014-07-31T21:12:58.236Z", + "previousState": "deleting", + "previousStateTransitionTime": "2014-07-31T21:11:58.236Z", + "publicData": "#####...", + "deleteCertificateError": { + "code": "PoolsReferencingCertificate", + "message": "The specified certificate is being used by the below mentioned pool(s)", + "values": [ + { + "name": "Pools", + "value": "mypool1" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/FileDeleteFromNode.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/FileDeleteFromNode.json new file mode 100644 index 000000000000..5c4720cb8453 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/FileDeleteFromNode.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "poolId": "poolId", + "nodeId": "tvm-1695681911_1-20161122t193202z", + "filePath": "workitems\\jobId\\job-1\\task1\\wd\\testFile.txt", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "recursive": false + }, + "responses": { + "200": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/FileDeleteFromTask.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/FileDeleteFromTask.json new file mode 100644 index 000000000000..55f2d73ffa50 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/FileDeleteFromTask.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobId": "jobId", + "taskId": "task1", + "filePath": "wd\\testFile.txt", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "recursive": false + }, + "responses": { + "200": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/FileGetFromNode.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/FileGetFromNode.json new file mode 100644 index 000000000000..a955d283a9c4 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/FileGetFromNode.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "poolId": "poolId", + "nodeId": "nodeId", + "filePath": "workitems\\jobId\\job-1\\task1\\wd\\testFile.txt", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": { + "ocp-creation-time": "Fri, 17 Feb 2017 00:00:00 GMT", + "Last-Modified": "Fri, 17 Feb 2017 00:00:00 GMT", + "ocp-batch-file-isdirectory": "false", + "Content-Length": "17", + "Content-Type": "application/octet-stream", + "body": "This is actually a byte stream. This request/response is being presented as a string for readability in the example" + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/FileGetFromTask.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/FileGetFromTask.json new file mode 100644 index 000000000000..5148507c5793 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/FileGetFromTask.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobId": "jobId", + "taskId": "task1", + "filePath": "wd\\testFile.txt", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": { + "ocp-creation-time": "Fri, 17 Feb 2017 00:00:00 GMT", + "Last-Modified": "Fri, 17 Feb 2017 00:00:00 GMT", + "ocp-batch-file-isdirectory": "false", + "Content-Length": "17", + "Content-Type": "application/octet-stream", + "body": "This is actually a byte stream. This request/response is being presented as a string for readability in the example" + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/FileGetPropertiesFromNode.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/FileGetPropertiesFromNode.json new file mode 100644 index 000000000000..aa477636134d --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/FileGetPropertiesFromNode.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "poolId": "poolId", + "nodeId": "nodeId", + "filePath": "workitems\\jobId\\job-1\\task1\\wd\\testFile.txt", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": { + "ocp-creation-time": "Fri, 17 Feb 2017 00:00:00 GMT", + "Last-Modified": "Fri, 17 Feb 2017 00:00:00 GMT", + "ocp-batch-file-isdirectory": "false", + "Content-Length": "17", + "Content-Type": "application/octet-stream" + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/FileGetPropertiesFromTask.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/FileGetPropertiesFromTask.json new file mode 100644 index 000000000000..009c6529c237 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/FileGetPropertiesFromTask.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobId": "jobId", + "taskId": "taskId", + "filePath": "wd\\testFile.txt", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": { + "ocp-creation-time": "Fri, 17 Feb 2017 00:00:00 GMT", + "Last-Modified": "Fri, 17 Feb 2017 00:00:00 GMT", + "ocp-batch-file-isdirectory": "false", + "Content-Length": "17", + "Content-Type": "application/octet-stream" + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/FileListFromNode.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/FileListFromNode.json new file mode 100644 index 000000000000..3dc350f63a2a --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/FileListFromNode.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "poolId": "poolId", + "nodeId": "tvm-1695681911_1-20161122t193202z", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "recursive": false + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "shared", + "url": "https://account.region.batch.azure.com/pools/poolId/nodes/tvm-2167304207_2-20140919t215614z/files/shared", + "isDirectory": true + }, + { + "name": "startup\\ProcessEnv.cmd", + "url": "https://account.region.batch.azure.com/pools/poolId/nodes/tvm-2167304207_2-20140919t215614z/files/startup\\ProcessEnv.cmd", + "isDirectory": false, + "properties": { + "creationTime": "2014-09-19T21:56:17.679195Z", + "lastModified": "2014-09-19T21:56:17.679195Z", + "contentLength": 1813, + "contentType": "application/octet-stream" + } + }, + { + "name": "startup\\stderr.txt", + "url": "https://account.region.batch.azure.com/pools/poolId/nodes/tvm-2167304207_2-20140919t215614z/files/startup\\stderr.txt", + "isDirectory": false, + "properties": { + "creationTime": "2014-09-19T21:56:17.5590855Z", + "lastModified": "2014-09-19T21:56:17.5590855Z", + "contentLength": 0, + "contentType": "application/octet-stream" + } + } + ] + } + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/FileListFromTask.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/FileListFromTask.json new file mode 100644 index 000000000000..d9a541a363d1 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/FileListFromTask.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobId": "jobId", + "taskId": "taskId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "recursive": false + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "startup\\ProcessEnv.cmd", + "url": "https://account.region.batch.azure.com/jobs/jobId/tasks/taskId/files/startup\\ProcessEnv.cmd", + "isDirectory": false, + "properties": { + "creationTime": "2014-09-19T21:56:17.679195Z", + "lastModified": "2014-09-19T21:56:17.679195Z", + "contentLength": 1813, + "contentType": "application/octet-stream" + } + }, + { + "name": "startup\\stderr.txt", + "url": "https://account.region.batch.azure.com/jobs/jobId/tasks/taskId/files/startup\\stderr.txt", + "isDirectory": false, + "properties": { + "creationTime": "2014-09-19T21:56:17.5590855Z", + "lastModified": "2014-09-19T21:56:17.5590855Z", + "contentLength": 0, + "contentType": "application/octet-stream" + } + } + ] + } + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobAdd_Basic.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobAdd_Basic.json new file mode 100644 index 000000000000..76a87f08a597 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobAdd_Basic.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "job": { + "id": "jobId", + "priority": 0, + "poolInfo": { + "poolId": "poolId" + } + } + }, + "responses": { + "201": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobAdd_Complex.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobAdd_Complex.json new file mode 100644 index 000000000000..27c8a480da56 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobAdd_Complex.json @@ -0,0 +1,120 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "job": { + "id": "jobId", + "priority": 100, + "constraints": { + "maxWallClockTime": "PT1H", + "maxTaskRetryCount": -1 + }, + "jobManagerTask": { + "id": "taskId", + "commandLine": "myprogram.exe", + "resourceFiles": [ + { + "httpUrl": "http://mystorage1.blob.core.windows.net/scripts/myprogram.exe?sas", + "filePath": "myprogram.exe" + }, + { + "storageContainerUrl": "http://mystorage1.blob.core.windows.net/data?sas", + "filePath": "datafolder" + } + ], + "environmentSettings": [ + { + "name": "myvariable", + "value": "myvalue" + } + ], + "constraints": { + "maxWallClockTime": "PT1H", + "maxTaskRetryCount": 0, + "retentionTime": "PT1H" + }, + "killJobOnCompletion": false, + "userIdentity": { + "autoUser": { + "scope": "task", + "elevationLevel": "admin" + } + }, + "runExclusive": true + }, + "poolInfo": { + "autoPoolSpecification": { + "autoPoolIdPrefix": "mypool", + "poolLifetimeOption": "job", + "pool": { + "vmSize": "small", + "cloudServiceConfiguration": { + "osFamily": "4", + "osVersion": "*" + }, + "resizeTimeout": "PT15M", + "targetDedicatedNodes": 3, + "targetLowPriorityNodes": 0, + "maxTasksPerNode": 2, + "taskSchedulingPolicy": { + "nodeFillType": "spread" + }, + "enableAutoScale": false, + "enableInterNodeCommunication": true, + "startTask": { + "commandLine": "myprogram2.exe", + "resourceFiles": [ + { + "httpUrl": "http://mystorage1.blob.core.windows.net/scripts/myprogram2.exe?sas", + "filePath": "myprogram2.exe" + } + ], + "environmentSettings": [ + { + "name": "myvariable", + "value": "myvalue" + } + ], + "userIdentity": { + "autoUser": { + "scope": "task", + "elevationLevel": "admin" + } + }, + "maxTaskRetryCount": 2, + "waitForSuccess": true + }, + "certificateReferences": [ + { + "thumbprint": "0123456789abcdef0123456789abcdef01234567", + "thumbprintAlgorithm": "sha1", + "storeLocation": "localmachine", + "storeName": "Root", + "visibility": [ + "task" + ] + } + ], + "metadata": [ + { + "name": "myproperty", + "value": "myvalue" + } + ] + } + } + }, + "metadata": [ + { + "name": "myproperty", + "value": "myvalue" + } + ] + } + }, + "responses": { + "201": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobDelete.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobDelete.json new file mode 100644 index 000000000000..efb88cc5bcce --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobId": "jobId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "202": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobDisable.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobDisable.json new file mode 100644 index 000000000000..d2376477bfba --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobDisable.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobId": "jobId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "jobDisableParameter": { + "disableTasks": "terminate" + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobEnable.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobEnable.json new file mode 100644 index 000000000000..efb88cc5bcce --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobEnable.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobId": "jobId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "202": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobGet.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobGet.json new file mode 100644 index 000000000000..ac721666ba78 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobGet.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobId": "jobId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": { + "body": { + "id": "jobId", + "url": "https://account.region.batch.azure.com/jobs/jobId", + "eTag": "0x8D4100FC49F0278", + "lastModified": "2016-11-19T00:05:27.5391608Z", + "creationTime": "2016-11-19T00:05:25.311915Z", + "state": "completed", + "stateTransitionTime": "2016-11-19T00:05:27.578581Z", + "previousState": "active", + "previousStateTransitionTime": "2016-11-19T00:05:27.2137716Z", + "priority": 0, + "usesTaskDependencies": false, + "constraints": { + "maxWallClockTime": "P10675199DT2H48M5.4775807S", + "maxTaskRetryCount": 0 + }, + "poolInfo": { + "poolId": "poolId" + }, + "executionInfo": { + "startTime": "2016-11-19T00:05:25.3309105Z", + "endTime": "2016-11-19T00:05:27.578581Z", + "poolId": "poolId", + "terminateReason": "UserTerminate" + }, + "onAllTasksComplete": "noaction", + "onTaskFailure": "noaction" + } + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobGetLifetimeStatistics.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobGetLifetimeStatistics.json new file mode 100644 index 000000000000..405a2ee392bf --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobGetLifetimeStatistics.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": { + "body": { + "url": "https://account.region.batch.core.windows.net/lifetimejobstats", + "startTime": "2014-08-01T18:30:00.4345729Z", + "lastUpdateTime": "2014-08-04T18:30:00.4345729Z", + "userCPUTime": "PT0S", + "kernelCPUTime": "PT0S", + "wallClockTime": "PT0S", + "readIOps": 0, + "writeIOps": 0, + "readIOGiB": 10.0, + "writeIOGiB": 5.0, + "numSucceededTasks": 0, + "numFailedTasks": 0, + "numTaskRetries": 0, + "waitTime": "PT0S" + } + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobGetTaskCounts.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobGetTaskCounts.json new file mode 100644 index 000000000000..89a798fb0fef --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobGetTaskCounts.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobId": "jobId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": { + "body": { + "active": 5, + "running": 7, + "completed": 4, + "succeeded": 2, + "failed": 2 + } + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobList.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobList.json new file mode 100644 index 000000000000..4140ad069687 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobList.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "jobId", + "url": "https://account.region.batch.azure.com/jobs/jobId", + "eTag": "0x8D4100FC46D5BF4", + "lastModified": "2016-11-19T00:05:27.2137716Z", + "creationTime": "2016-11-19T00:05:25.311915Z", + "state": "active", + "stateTransitionTime": "2016-11-19T00:05:27.2137716Z", + "previousState": "disabled", + "previousStateTransitionTime": "2016-11-19T00:05:26.88777Z", + "priority": 0, + "usesTaskDependencies": false, + "constraints": { + "maxWallClockTime": "P10675199DT2H48M5.4775807S", + "maxTaskRetryCount": 0 + }, + "poolInfo": { + "poolId": "poolId" + }, + "executionInfo": { + "startTime": "2016-11-19T00:05:25.3309105Z", + "poolId": "poolId" + }, + "onAllTasksComplete": "noaction", + "onTaskFailure": "noaction" + } + ] + } + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobListFromJobSchedule.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobListFromJobSchedule.json new file mode 100644 index 000000000000..853ce5b6796b --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobListFromJobSchedule.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobScheduleId": "jobScheduleId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "jobId", + "url": "https://account.region.batch.azure.com/jobs/jobId", + "eTag": "0x8D4100FC46D5BF4", + "lastModified": "2016-11-19T00:05:27.2137716Z", + "creationTime": "2016-11-19T00:05:25.311915Z", + "state": "active", + "stateTransitionTime": "2016-11-19T00:05:27.2137716Z", + "previousState": "disabled", + "previousStateTransitionTime": "2016-11-19T00:05:26.88777Z", + "priority": 0, + "usesTaskDependencies": false, + "constraints": { + "maxWallClockTime": "P10675199DT2H48M5.4775807S", + "maxTaskRetryCount": 0 + }, + "poolInfo": { + "poolId": "poolId" + }, + "executionInfo": { + "startTime": "2016-11-19T00:05:25.3309105Z", + "poolId": "poolId" + }, + "onAllTasksComplete": "noaction", + "onTaskFailure": "noaction" + } + ] + } + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobListPreparationAndReleaseTaskStatus.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobListPreparationAndReleaseTaskStatus.json new file mode 100644 index 000000000000..dc89f6b51890 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobListPreparationAndReleaseTaskStatus.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobId": "jobId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "poolId": "poolId", + "nodeId": "tvm-2167304207_1-20140905t174658z", + "nodeUrl": "https://account.region.batch.azure.com/pools/poolId/nodes/tvm-2167304207_1-20140905t174658z", + "jobPreparationTaskExecutionInfo": { + "state": "completed", + "startTime": "2015-05-01T10:20:31Z", + "endTime": "2015-05-02T20:12:42Z", + "taskRootDirectory": "tasks/myjob/job-1/myjobpreptask", + "taskRootDirectoryUrl": "https://account.region.batch.azure.com/pools/poolId/nodes/tvm-2167304207_1-20140905t174658z/files/tasks/myjob/job-1/myjobpreptask", + "exitCode": 0, + "retryCount": 0 + }, + "jobReleaseTaskExecutionInfo": { + "state": "completed", + "startTime": "2015-05-01T10:20:31Z", + "endTime": "2015-05-02T20:12:42Z", + "taskRootDirectory": "tasks/myjob/job-1/myjobreleasetask", + "taskRootDirectoryUrl": "https://account.region.batch.azure.com/pools/poolId/nodes/tvm-2167304207_1-20140905t174658z/files/tasks/myjob/job-1/myjobreleasetask", + "exitCode": 0 + } + } + ], + "odata.nextLink": "https://account.region.batch.azure.com/jobs/myjob/jobpreparationandreleasestatus?$skipToken=tvm-2167304207_1-20140905t174658z&api-version=2019-08-01.10.0" + } + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobPatch.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobPatch.json new file mode 100644 index 000000000000..e7f50e034ed8 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobPatch.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobId": "jobId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "jobPatchParameter": { + "priority": 100, + "constraints": { + "maxWallClockTime": "PT1H", + "maxTaskRetryCount": -1 + }, + "poolInfo": { + "poolId": "poolId" + } + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobScheduleAdd_Basic.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobScheduleAdd_Basic.json new file mode 100644 index 000000000000..54ea9a95fd66 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobScheduleAdd_Basic.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "cloudJobSchedule": { + "id": "jobScheduleId", + "schedule": { + "recurrenceInterval": "PT5M" + }, + "jobSpecification": { + "poolInfo": { + "poolId": "poolId" + } + } + } + }, + "responses": { + "201": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobScheduleAdd_Complex.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobScheduleAdd_Complex.json new file mode 100644 index 000000000000..d22f1b0dd441 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobScheduleAdd_Complex.json @@ -0,0 +1,128 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "cloudJobSchedule": { + "id": "jobScheduleId", + "schedule": { + "doNotRunUntil": "2014-09-10T02:30:00.000Z", + "doNotRunAfter": "2014-09-10T06:30:00.000Z", + "startWindow": "PT1M", + "recurrenceInterval": "PT5M" + }, + "jobSpecification": { + "priority": 100, + "constraints": { + "maxWallClockTime": "PT1H", + "maxTaskRetryCount": -1 + }, + "jobManagerTask": { + "id": "mytask1", + "commandLine": "myprogram.exe", + "resourceFiles": [ + { + "httpUrl": "http://mystorage1.blob.core.windows.net/scripts/myprogram.exe?sas", + "filePath": "myprogram.exe" + }, + { + "httpUrl": "http://mystorage1.blob.core.windows.net/scripts/test.txt?sas", + "filePath": "test.txt" + } + ], + "environmentSettings": [ + { + "name": "myvariable", + "value": "myvalue" + } + ], + "constraints": { + "maxWallClockTime": "PT1H", + "maxTaskRetryCount": 0, + "retentionTime": "PT1H" + }, + "killJobOnCompletion": true, + "userIdentity": { + "autoUser": { + "scope": "task", + "elevationLevel": "nonadmin" + } + }, + "runExclusive": true + }, + "poolInfo": { + "autoPoolSpecification": { + "autoPoolIdPrefix": "mypool", + "poolLifetimeOption": "jobschedule", + "pool": { + "vmSize": "small", + "cloudServiceConfiguration": { + "osFamily": "4", + "osVersion": "*" + }, + "resizeTimeout": "PT15M", + "targetDedicatedNodes": 3, + "targetLowPriorityNodes": 0, + "maxTasksPerNode": 2, + "taskSchedulingPolicy": { + "nodeFillType": "spread" + }, + "enableAutoScale": false, + "enableInterNodeCommunication": true, + "startTask": { + "commandLine": "myprogram2.exe", + "resourceFiles": [ + { + "httpUrl": "http://mystorage1.blob.core.windows.net/scripts/myprogram2.exe?sas", + "filePath": "myprogram2.exe" + } + ], + "environmentSettings": [ + { + "name": "myvariable", + "value": "myvalue" + } + ], + "userIdentity": { + "autoUser": { + "scope": "task", + "elevationLevel": "admin" + } + }, + "maxTaskRetryCount": 2, + "waitForSuccess": true + }, + "certificateReferences": [ + { + "thumbprint": "0123456789abcdef0123456789abcdef01234567", + "thumbprintAlgorithm": "sha1", + "storeLocation": "localmachine", + "storeName": "Root", + "visibility": [ + "task" + ] + } + ], + "metadata": [ + { + "name": "myproperty", + "value": "myvalue" + } + ] + } + } + } + }, + "metadata": [ + { + "name": "myproperty", + "value": "myvalue" + } + ] + } + }, + "responses": { + "201": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobScheduleDelete.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobScheduleDelete.json new file mode 100644 index 000000000000..61b57238375c --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobScheduleDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobScheduleId": "jobScheduleId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "202": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobScheduleDisable.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobScheduleDisable.json new file mode 100644 index 000000000000..2dd14a6aac6f --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobScheduleDisable.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobScheduleId": "jobScheduleId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "204": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobScheduleEnable.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobScheduleEnable.json new file mode 100644 index 000000000000..2dd14a6aac6f --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobScheduleEnable.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobScheduleId": "jobScheduleId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "204": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobScheduleExists.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobScheduleExists.json new file mode 100644 index 000000000000..f41f1c884c0d --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobScheduleExists.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobScheduleId": "jobScheduleId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": {}, + "404": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobScheduleGet.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobScheduleGet.json new file mode 100644 index 000000000000..382699ea5393 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobScheduleGet.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobScheduleId": "jobScheduleId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": { + "body": { + "id": "jobScheduleId", + "url": "https://account.region.batch.azure.com/jobschedules/jobScheduleId", + "eTag": "0x8D40FFD2E848323", + "lastModified": "2016-11-18T21:52:24.7661347Z", + "creationTime": "2016-11-18T21:52:22.5431125Z", + "state": "completed", + "stateTransitionTime": "2016-11-18T21:52:24.8371778Z", + "previousState": "active", + "previousStateTransitionTime": "2016-11-18T21:52:24.0064874Z", + "jobSpecification": { + "priority": 0, + "usesTaskDependencies": false, + "onAllTasksComplete": "noaction", + "onTaskFailure": "noaction", + "constraints": { + "maxWallClockTime": "P10675199DT2H48M5.4775807S", + "maxTaskRetryCount": 0 + }, + "poolInfo": { + "poolId": "testPool" + } + }, + "executionInfo": { + "recentJob": { + "url": "https://account.region.batch.azure.com/jobschedules/jobScheduleId:job-1", + "id": "jobScheduleId:job-1" + }, + "endTime": "2016-11-18T21:52:24.8371778Z" + } + } + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobScheduleList.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobScheduleList.json new file mode 100644 index 000000000000..2d4874c0029f --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobScheduleList.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "jobSchedule1", + "url": "https://account.region.batch.azure.com/jobschedules/jobSchedule1", + "eTag": "0x8D40FFD2E10996A", + "lastModified": "2016-11-18T21:52:24.0064874Z", + "creationTime": "2016-11-18T21:52:22.5431125Z", + "state": "active", + "stateTransitionTime": "2016-11-18T21:52:24.0064874Z", + "previousState": "disabled", + "previousStateTransitionTime": "2016-11-18T21:52:23.6471782Z", + "jobSpecification": { + "priority": 0, + "usesTaskDependencies": false, + "onAllTasksComplete": "noaction", + "onTaskFailure": "noaction", + "constraints": { + "maxWallClockTime": "P10675199DT2H48M5.4775807S", + "maxTaskRetryCount": 0 + }, + "poolInfo": { + "poolId": "poolId" + } + }, + "executionInfo": { + "recentJob": { + "url": "https://account.region.batch.azure.com/jobs/jobSchedule1:job-1", + "id": "jobSchedule1:job-1" + } + } + }, + { + "id": "jobSchedule2", + "url": "https://account.region.batch.azure.com/jobschedules/jobSchedule2", + "eTag": "0x8D40FFCFF760B51", + "lastModified": "2016-11-18T21:51:05.8184017Z", + "creationTime": "2016-11-18T21:51:05.8184017Z", + "state": "active", + "stateTransitionTime": "2016-11-18T21:51:05.8184017Z", + "schedule": { + "doNotRunUntil": "2020-01-01T12:30:00Z" + }, + "jobSpecification": { + "priority": 0, + "usesTaskDependencies": false, + "onAllTasksComplete": "noaction", + "onTaskFailure": "noaction", + "constraints": { + "maxWallClockTime": "P10675199DT2H48M5.4775807S", + "maxTaskRetryCount": 0 + }, + "poolInfo": { + "poolId": "testPool2" + } + }, + "executionInfo": { + "nextRunTime": "2020-01-01T12:30:00Z" + } + } + ] + } + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobSchedulePatch.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobSchedulePatch.json new file mode 100644 index 000000000000..9d21bbb7e022 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobSchedulePatch.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobScheduleId": "jobScheduleId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "jobSchedulePatchParameter": { + "schedule": { + "doNotRunUntil": "2025-01-01T12:30:00Z" + }, + "jobSpecification": { + "priority": 0, + "usesTaskDependencies": false, + "constraints": { + "maxWallClockTime": "P10675199DT2H48M5.4775807S", + "maxTaskRetryCount": 0 + }, + "poolInfo": { + "poolId": "poolId" + } + } + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobScheduleTerminate.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobScheduleTerminate.json new file mode 100644 index 000000000000..61b57238375c --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobScheduleTerminate.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobScheduleId": "jobScheduleId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "202": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobScheduleUpdate.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobScheduleUpdate.json new file mode 100644 index 000000000000..4381edba20ed --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobScheduleUpdate.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobScheduleId": "jobScheduleId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "jobScheduleUpdateParameter": { + "schedule": { + "doNotRunUntil": "2025-01-01T12:30:00Z" + }, + "jobSpecification": { + "priority": 0, + "usesTaskDependencies": false, + "constraints": { + "maxWallClockTime": "P10675199DT2H48M5.4775807S", + "maxTaskRetryCount": 0 + }, + "poolInfo": { + "poolId": "poolId" + } + } + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobTerminate.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobTerminate.json new file mode 100644 index 000000000000..9ce95c08e928 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobTerminate.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobId": "jobId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "jobTerminateParameter": { + "terminateReason": "User supplied termination reason" + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobUpdate.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobUpdate.json new file mode 100644 index 000000000000..92f88f370163 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/JobUpdate.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobId": "jobId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "jobUpdateParameter": { + "priority": 100, + "constraints": { + "maxWallClockTime": "PT1H", + "maxTaskRetryCount": -1 + }, + "poolInfo": { + "poolId": "poolId" + } + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeAddUser.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeAddUser.json new file mode 100644 index 000000000000..2dbcb39a090b --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeAddUser.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "poolId": "poolId", + "nodeId": "tvm-1695681911_1-20161121t182739z", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "user": { + "name": "userName", + "isAdmin": false, + "expiryTime": "2017-08-01T00:00:00Z", + "password": "Password" + } + }, + "responses": { + "201": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeDeleteUser.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeDeleteUser.json new file mode 100644 index 000000000000..9c3c0d2bf201 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeDeleteUser.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "poolId": "poolId", + "nodeId": "tvm-1695681911_1-20161121t182739z", + "userName": "userName", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeDisableScheduling.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeDisableScheduling.json new file mode 100644 index 000000000000..4b965fcaa5e1 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeDisableScheduling.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "poolId": "poolId", + "nodeId": "tvm-1695681911_1-20161122t193202z", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "nodeDisableSchedulingParameter": { + "nodeDisableSchedulingOption": "terminate" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeEnableScheduling.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeEnableScheduling.json new file mode 100644 index 000000000000..7b9607e580a4 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeEnableScheduling.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "poolId": "poolId", + "nodeId": "tvm-1695681911_1-20161122t193202z", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeGetRemoteDesktop.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeGetRemoteDesktop.json new file mode 100644 index 000000000000..3819b9de0358 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeGetRemoteDesktop.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "poolId": "poolId", + "nodeId": "tvm-1695681911_1-20161121t182739z", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": { + "body": "This is actually a byte stream. This request/response is being presented as a string for readability in the example" + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeGetRemoteLoginSettings.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeGetRemoteLoginSettings.json new file mode 100644 index 000000000000..ce99ea41c920 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeGetRemoteLoginSettings.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "poolId": "poolId", + "nodeId": "tvm-1695681911_1-20161121t182739z", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": { + "body": { + "remoteLoginIPAddress": "1.1.1.1", + "remoteLoginPort": 50000 + } + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeGet_Basic.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeGet_Basic.json new file mode 100644 index 000000000000..72b9ea4f00c2 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeGet_Basic.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "poolId": "poolId", + "nodeId": "tvm-1695681911_2-20161122t193202z", + "api-version": "2019-08-01.10.0", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": { + "body": { + "id": "tvm-1695681911_2-20161122t193202z", + "url": "https://account.region.batch.azure.com/pools/poolId/nodes/tvm-1695681911_2-20161122t193202z", + "state": "idle", + "schedulingState": "enabled", + "stateTransitionTime": "2016-11-22T19:37:31.4285526Z", + "lastBootTime": "2016-11-22T19:37:28.623369Z", + "allocationTime": "2016-11-22T19:32:02.8155319Z", + "ipAddress": "1.1.1.1", + "affinityId": "TVM:tvm-1695681911_2-20161122t193202z", + "vmSize": "small", + "totalTasksRun": 0, + "totalTasksSucceeded": 0, + "runningTasksCount": 0, + "isDedicated": true, + "startTask": { + "commandLine": "cmd /c echo hello", + "userIdentity": { + "autoUser": { + "scope": "task", + "elevationLevel": "nonadmin" + } + }, + "maxTaskRetryCount": 0, + "waitForSuccess": false + }, + "startTaskInfo": { + "state": "completed", + "startTime": "2016-11-22T19:37:31.4285526Z", + "endTime": "2016-11-22T19:37:31.838028Z", + "exitCode": 0, + "retryCount": 0 + }, + "nodeAgentInfo": { + "version": "1.2.0.0", + "lastUpdateTime": "2016-11-22T19:37:28.623369Z" + } + } + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeList.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeList.json new file mode 100644 index 000000000000..b37e956fc4fe --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeList.json @@ -0,0 +1,131 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "poolId": "poolId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "tvm-1695681911_1-20161122t193202z", + "url": "https://account.region.batch.azure.com/pools/poolId/nodes/tvm-1695681911_1-20161122t193202z", + "state": "idle", + "schedulingState": "enabled", + "stateTransitionTime": "2016-11-22T22:22:27.2236818Z", + "lastBootTime": "2016-11-22T22:22:24.4634125Z", + "allocationTime": "2016-11-22T19:32:02.8155319Z", + "ipAddress": "1.1.1.1", + "affinityId": "TVM:tvm-1695681911_1-20161122t193202z", + "vmSize": "small", + "totalTasksRun": 0, + "totalTasksSucceeded": 0, + "runningTasksCount": 0, + "isDedicated": true, + "startTask": { + "commandLine": "cmd /c echo hello", + "userIdentity": { + "autoUser": { + "scope": "task", + "elevationLevel": "nonadmin" + } + }, + "maxTaskRetryCount": 0, + "waitForSuccess": false + }, + "startTaskInfo": { + "state": "completed", + "startTime": "2016-11-22T22:22:27.2236818Z", + "endTime": "2016-11-22T22:22:27.567189Z", + "exitCode": 0, + "retryCount": 0 + }, + "nodeAgentInfo": { + "version": "1.2.0.0", + "lastUpdateTime": "2016-11-22T22:22:24.4634125Z" + } + }, + { + "id": "tvm-1695681911_2-20161122t193202z", + "url": "https://account.region.batch.azure.com/pools/poolId/nodes/tvm-1695681911_2-20161122t193202z", + "state": "idle", + "schedulingState": "enabled", + "stateTransitionTime": "2016-11-22T19:37:31.4285526Z", + "lastBootTime": "2016-11-22T19:37:28.623369Z", + "allocationTime": "2016-11-22T19:32:02.8155319Z", + "ipAddress": "1.1.1.1", + "affinityId": "TVM:tvm-1695681911_2-20161122t193202z", + "vmSize": "small", + "totalTasksRun": 0, + "totalTasksSucceeded": 0, + "runningTasksCount": 0, + "isDedicated": true, + "startTask": { + "commandLine": "cmd /c echo hello", + "userIdentity": { + "autoUser": { + "scope": "task", + "elevationLevel": "nonadmin" + } + }, + "maxTaskRetryCount": 0, + "waitForSuccess": false + }, + "startTaskInfo": { + "state": "completed", + "startTime": "2016-11-22T19:37:31.4285526Z", + "endTime": "2016-11-22T19:37:31.838028Z", + "exitCode": 0, + "retryCount": 0 + }, + "nodeAgentInfo": { + "version": "1.2.0.0", + "lastUpdateTime": "2016-11-22T22:22:24.4634125Z" + } + }, + { + "id": "tvm-1695681911_3-20161122t193202z", + "url": "https://account.region.batch.azure.com/pools/poolId/nodes/tvm-1695681911_3-20161122t193202z", + "state": "idle", + "schedulingState": "enabled", + "stateTransitionTime": "2016-11-22T19:36:51.0013378Z", + "lastBootTime": "2016-11-22T19:36:48.21721Z", + "allocationTime": "2016-11-22T19:32:02.8155319Z", + "ipAddress": "1.1.1.1", + "affinityId": "TVM:tvm-1695681911_3-20161122t193202z", + "vmSize": "small", + "totalTasksRun": 0, + "totalTasksSucceeded": 0, + "runningTasksCount": 0, + "isDedicated": true, + "startTask": { + "commandLine": "cmd /c echo hello", + "userIdentity": { + "autoUser": { + "scope": "task", + "elevationLevel": "nonadmin" + } + }, + "maxTaskRetryCount": 0, + "waitForSuccess": false + }, + "startTaskInfo": { + "state": "completed", + "startTime": "2016-11-22T19:36:51.0013378Z", + "endTime": "2016-11-22T19:36:51.2363447Z", + "exitCode": 0, + "retryCount": 0 + }, + "nodeAgentInfo": { + "version": "1.2.0.0", + "lastUpdateTime": "2016-11-22T22:22:24.4634125Z" + } + } + ] + } + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeReboot.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeReboot.json new file mode 100644 index 000000000000..08203231735b --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeReboot.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "poolId": "poolId", + "nodeId": "tvm-1695681911_1-20161122t193202z", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "nodeRebootParameter": { + "nodeRebootOption": "terminate" + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeReimage.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeReimage.json new file mode 100644 index 000000000000..e8f4c68e3fe7 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeReimage.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "poolId": "poolId", + "nodeId": "tvm-1695681911_1-20161122t193202z", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "nodeReimageParameter": { + "nodeReimageOption": "terminate" + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeUpdateUser.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeUpdateUser.json new file mode 100644 index 000000000000..50a27f9f2848 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeUpdateUser.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "poolId": "poolId", + "nodeId": "tvm-1695681911_1-20161121t182739z", + "userName": "userName", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "nodeUpdateUserParameter": { + "password": "12345", + "expiryTime": "2016-11-27T00:45:48.7320857Z" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeUploadBatchServiceLogs.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeUploadBatchServiceLogs.json new file mode 100644 index 000000000000..b42b6b733935 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/NodeUploadBatchServiceLogs.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "poolId": "poolId", + "nodeId": "tvm-1695681911_1-20161121t182739z", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "uploadBatchServiceLogsConfiguration": { + "containerUrl": "https://somestorageacct.blob.core.windows.net/batch-compute-node-logs?se=2017-12-09T18%3A51%3A00Z&sp=w&sv=2016-05-31&sr=c&sig", + "startTime": "2017-11-27T00:00:00Z" + } + }, + "responses": { + "200": { + "body": { + "virtualDirectoryName": "poolId/tvm-1695681911-1-20161121t182739z/0795539d-82fe-48e3-bbff-2964905b6de0", + "numberOfFilesUploaded": 8 + } + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolAdd_CloudServiceConfiguration.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolAdd_CloudServiceConfiguration.json new file mode 100644 index 000000000000..acc39d97c943 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolAdd_CloudServiceConfiguration.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "pool": { + "id": "poolId", + "vmSize": "small", + "cloudServiceConfiguration": { + "osFamily": "4" + }, + "resizeTimeout": "PT15M", + "targetDedicatedNodes": 5, + "targetLowPriorityNodes": 0, + "maxTasksPerNode": 3, + "taskSchedulingPolicy": { + "nodeFillType": "spread" + }, + "enableAutoScale": false, + "enableInterNodeCommunication": true, + "metadata": [ + { + "name": "myproperty", + "value": "myvalue" + } + ] + } + }, + "responses": { + "201": { + "request-id": "00000000-0000-0000-0000-000000000000", + "ETag": "0x8D45765A6A2DC04", + "Last-Modified": "Fri, 17 Feb 2017 00:00:00 GMT" + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolAdd_MountConfiguration.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolAdd_MountConfiguration.json new file mode 100644 index 000000000000..904c395240b4 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolAdd_MountConfiguration.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-data": "Fri, 17 Feb 2017 00:00:00 GMT", + "pool": { + "id": "pool2", + "vmSize": "standard_a1", + "virtualMachineConfiguration": { + "imageReference": { + "publisher": "Canonical", + "offer": "UbuntuServer", + "sku": "16.04.0-LTS" + }, + "nodeAgentSKUId": "batch.node.ubuntu 16.04" + }, + "mountConfiguration": [ + { + "azureBlobFileSystemConfiguration": { + "accountName": "accountName", + "containerName": "blobContainerName", + "accountKey": "accountKey", + "relativeMountPath": "bfusepath" + } + }, + { + "azureFileShareConfiguration": { + "accountName": "accountName", + "azureFileUrl": "https://myaccount.file.core.windows.net/fileshare", + "accountKey": "accountKey", + "relativeMountPath": "filesharepath", + "mountOptions": "mount options ver=1.0" + } + }, + { + "nfsMountConfiguration": { + "source": "somesource nfs url", + "relativeMountPath": "mountpath", + "mountOptions": "mount options ver=1.0" + } + }, + { + "cifsMountConfiguration": { + "username": "accountName", + "password": "password", + "source": "//myaccount.file.core.windows.net/file", + "relativeMountPath": "mountpath", + "mountOptions": "mount options ver=1.0" + } + } + ], + "resizeTimeout": "PT15M", + "targetDedicatedNodes": 5, + "targetLowPriorityNodes": 0, + "maxTasksPerNode": 3, + "taskSchedulingPolicy": { + "nodeFillType": "spread" + }, + "enableAutoScale": false + } + }, + "responses": { + "201": { + "request-id": "00000000-0000-0000-0000-000000000000", + "ETag": "0x8D45765A6A2DC04", + "Last-Modified": "Fri, 17 Feb 2017 00:00:00 GMT" + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolAdd_VirtualMachineConfiguration.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolAdd_VirtualMachineConfiguration.json new file mode 100644 index 000000000000..870ea6d10f7e --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolAdd_VirtualMachineConfiguration.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "pool": { + "id": "pool2", + "vmSize": "standard_a1", + "virtualMachineConfiguration": { + "imageReference": { + "publisher": "Canonical", + "offer": "UbuntuServer", + "sku": "16.04.0-LTS" + }, + "nodeAgentSKUId": "batch.node.ubuntu 16.04" + }, + "resizeTimeout": "PT15M", + "targetDedicatedNodes": 5, + "targetLowPriorityNodes": 0, + "maxTasksPerNode": 3, + "taskSchedulingPolicy": { + "nodeFillType": "spread" + }, + "enableAutoScale": false, + "enableInterNodeCommunication": true, + "metadata": [ + { + "name": "myproperty", + "value": "myvalue" + } + ] + } + }, + "responses": { + "201": { + "request-id": "00000000-0000-0000-0000-000000000000", + "ETag": "0x8D45765A6A2DC04", + "Last-Modified": "Fri, 17 Feb 2017 00:00:00 GMT" + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolAdd_VirtualMachineConfigurationWithContainers.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolAdd_VirtualMachineConfigurationWithContainers.json new file mode 100644 index 000000000000..471ffe2ebb55 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolAdd_VirtualMachineConfigurationWithContainers.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "pool": { + "id": "pool2", + "vmSize": "standard_a1", + "virtualMachineConfiguration": { + "imageReference": { + "publisher": "Canonical", + "offer": "UbuntuServer", + "sku": "16.04.0-LTS" + }, + "nodeAgentSKUId": "batch.node.ubuntu 16.04", + "containerConfiguration": { + "type": "dockerCompatible", + "containerImageNames": [ + "busybox" + ] + } + }, + "resizeTimeout": "PT15M", + "targetDedicatedNodes": 5, + "targetLowPriorityNodes": 0, + "maxTasksPerNode": 3, + "taskSchedulingPolicy": { + "nodeFillType": "spread" + }, + "enableAutoScale": false + } + }, + "responses": { + "201": { + "request-id": "00000000-0000-0000-0000-000000000000", + "ETag": "0x8D45765A6A2DC04", + "Last-Modified": "Fri, 17 Feb 2017 00:00:00 GMT" + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolDelete.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolDelete.json new file mode 100644 index 000000000000..6d55c3c47372 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "poolId": "poolId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "202": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolDisableAutoScale.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolDisableAutoScale.json new file mode 100644 index 000000000000..ffb6ba2b31b0 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolDisableAutoScale.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "poolId": "poolId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolEnableAutoscale.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolEnableAutoscale.json new file mode 100644 index 000000000000..f04251501d79 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolEnableAutoscale.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "poolId": "poolId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "poolEnableAutoScaleParameter": { + "autoScaleFormula": "$TargetDedicated=0", + "autoScaleEvaluationInterval": "PT8M" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolEvaluateAutoscale.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolEvaluateAutoscale.json new file mode 100644 index 000000000000..58e71301c449 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolEvaluateAutoscale.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "poolId": "poolId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "poolEvaluateAutoScaleParameter": { + "autoScaleFormula": "$TargetDedicated=1" + } + }, + "responses": { + "200": { + "body": { + "timestamp": "2016-11-22T19:39:28.5246331Z", + "results": "$TargetDedicated=1;$NodeDeallocationOption=requeue" + } + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolExists.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolExists.json new file mode 100644 index 000000000000..c10ff8f72b2b --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolExists.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "poolId": "poolId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": {}, + "404": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolGetLifetimeStatistics.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolGetLifetimeStatistics.json new file mode 100644 index 000000000000..5340f9d18894 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolGetLifetimeStatistics.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": { + "body": { + "url": "https://account.region.batch.core.windows.net/lifetimepoolstats", + "startTime": "2014-08-01T18:30:00.4345729Z", + "lastUpdateTime": "2014-08-04T18:30:00.4345729Z", + "usageStats": { + "startTime": "2014-08-01T18:30:00.4345729Z", + "lastUpdateTime": "2014-08-04T18:30:00.4345729Z", + "dedicatedCoreTime": "PT0S" + }, + "resourceStats": { + "startTime": "2014-08-01T18:30:00.4345729Z", + "lastUpdateTime": "2014-08-04T18:30:00.4345729Z", + "avgCPUPercentage": 40.0, + "avgMemoryGiB": 2.0, + "peakMemoryGiB": 4.0, + "avgDiskGiB": 125.0, + "peakDiskGiB": 240.0, + "diskReadIOps": 0, + "diskWriteIOps": 0, + "diskReadGiB": 10.0, + "diskWriteGiB": 1.0, + "networkReadGiB": 20.0, + "networkWriteGiB": 25.0 + } + } + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolGet_Basic.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolGet_Basic.json new file mode 100644 index 000000000000..3b5732a75c7f --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolGet_Basic.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "poolId": "pool", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": { + "body": { + "id": "pool", + "url": "https://account.region.batch.azure.com/pools/pool", + "eTag": "0x8D413091E739A56", + "lastModified": "2016-11-22T18:55:25.2608598Z", + "creationTime": "2016-11-22T18:55:24.2632496Z", + "state": "active", + "stateTransitionTime": "2016-11-22T18:55:24.2632496Z", + "allocationState": "steady", + "allocationStateTransitionTime": "2016-11-22T18:55:24.8154041Z", + "vmSize": "standard_a1", + "resizeTimeout": "PT15M", + "currentDedicatedNodes": 0, + "currentLowPriorityNodes": 0, + "targetDedicatedNodes": 0, + "targetLowPriorityNodes": 0, + "enableAutoScale": false, + "enableInterNodeCommunication": false, + "startTask": { + "commandLine": "/bin/bash -c 'echo start task'", + "userIdentity": { + "autoUser": { + "scope": "task", + "elevationLevel": "nonadmin" + } + }, + "maxTaskRetryCount": 0, + "waitForSuccess": false + }, + "maxTasksPerNode": 1, + "taskSchedulingPolicy": { + "nodeFillType": "spread" + }, + "virtualMachineConfiguration": { + "imageReference": { + "publisher": "Canonical", + "offer": "UbuntuServer", + "sku": "16.04.0-LTS", + "version": "latest" + }, + "nodeAgentSKUId": "batch.node.ubuntu 16.04" + } + } + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolListUsageMetrics.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolListUsageMetrics.json new file mode 100644 index 000000000000..8388fbf9d710 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolListUsageMetrics.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "startTime": "2013-04-01T00:00:00Z", + "endTime": "2013-04-01T00:30:00Z", + "poolId": "p1", + "vmSize": "a1", + "totalCoreHours": 39.384838 + }, + { + "startTime": "2013-04-01T00:30:00Z", + "endTime": "2013-04-01T01:00:00Z", + "poolId": "p2", + "vmSize": "a8", + "totalCoreHours": 3039.384838 + } + ] + } + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolList_Basic.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolList_Basic.json new file mode 100644 index 000000000000..4b273d031029 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolList_Basic.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "testPool", + "url": "https://accountname.region.batch.azure.com/pools/testPool", + "eTag": "0x8D4123BEF87D233", + "lastModified": "2016-11-21T18:26:39.7108787Z", + "creationTime": "2016-11-21T18:26:39.7108787Z", + "state": "active", + "stateTransitionTime": "2016-11-21T18:26:39.7108787Z", + "allocationState": "steady", + "allocationStateTransitionTime": "2016-11-21T18:27:40.287803Z", + "vmSize": "small", + "resizeTimeout": "PT15M", + "currentDedicatedNodes": 3, + "currentLowPriorityNodes": 0, + "targetDedicatedNodes": 3, + "targetLowPriorityNodes": 0, + "enableAutoScale": false, + "enableInterNodeCommunication": false, + "startTask": { + "commandLine": "cmd /c echo hello", + "userIdentity": { + "autoUser": { + "scope": "task", + "elevationLevel": "nonadmin" + } + }, + "maxTaskRetryCount": 0, + "waitForSuccess": false + }, + "maxTasksPerNode": 1, + "taskSchedulingPolicy": { + "nodeFillType": "spread" + }, + "cloudServiceConfiguration": { + "osFamily": "4", + "osVersion": "*" + } + } + ] + } + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolPatch.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolPatch.json new file mode 100644 index 000000000000..7bb1453fc5a2 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolPatch.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "poolId": "poolId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "poolPatchParameter": { + "startTask": { + "commandLine": "/bin/bash -c 'echo start task'" + } + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolRemoveNodes.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolRemoveNodes.json new file mode 100644 index 000000000000..e785e9d5b8cc --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolRemoveNodes.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "poolId": "poolId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "nodeRemoveParameter": { + "nodeList": [ + "tvm-1695681911_1-20161122t224741z", + "tvm-1695681911_2-20161122t224741z" + ] + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolResize.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolResize.json new file mode 100644 index 000000000000..453ad670f7ac --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolResize.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "poolId": "resizePool", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "poolResizeParameter": { + "targetDedicatedNodes": 1, + "targetLowPriorityNodes": 0 + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolStopResize.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolStopResize.json new file mode 100644 index 000000000000..6d55c3c47372 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolStopResize.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "poolId": "poolId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "202": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolUpdate.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolUpdate.json new file mode 100644 index 000000000000..6f2f5bde4e86 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/PoolUpdate.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "poolId": "poolId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "poolUpdatePropertiesParameter": { + "startTask": { + "commandLine": "/bin/bash -c 'echo start task'" + }, + "certificateReferences": [], + "applicationPackageReferences": [], + "metadata": [] + } + }, + "responses": { + "204": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskAddCollection_Basic.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskAddCollection_Basic.json new file mode 100644 index 000000000000..441c32588adb --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskAddCollection_Basic.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobId": "jobId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "taskCollection": { + "value": [ + { + "id": "simple1", + "commandLine": "cmd /c dir /s" + }, + { + "id": "simple2", + "commandLine": "cmd /c dir /s" + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "status": "success", + "taskId": "simple1", + "eTag": "0x8D3D623CD661246", + "lastModified": "2016-09-06T07:02:44.7589958Z", + "location": "https://account.region.batch.azure.com/jobs/jobId/tasks/simple1" + }, + { + "status": "success", + "taskId": "simple2", + "eTag": "0x8D3D623CD7072CC", + "lastModified": "2016-09-06T07:02:44.8270028Z", + "location": "https://account.region.batch.azure.com/jobs/jobId/tasks/simple2" + } + ] + } + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskAddCollection_Complex.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskAddCollection_Complex.json new file mode 100644 index 000000000000..cbf4547d1dc3 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskAddCollection_Complex.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobId": "jobId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "taskCollection": { + "value": [ + { + "id": "complex1", + "commandLine": "cmd /c dir /s", + "resourceFiles": [ + { + "autoStorageContainerName": "containerName", + "filePath": "data" + } + ], + "environmentSettings": [ + { + "name": "env1", + "value": "value1" + }, + { + "name": "env2", + "value": "value2" + } + ], + "affinityInfo": { + "affinityId": "affinityId" + }, + "constraints": { + "maxWallClockTime": "P1D", + "retentionTime": "P2D", + "maxTaskRetryCount": 5 + }, + "multiInstanceSettings": { + "numberOfInstances": 3, + "coordinationCommandLine": "cmd /c echo coordinating", + "commonResourceFiles": [ + { + "httpUrl": "https://common.blob.core.windows.net/", + "filePath": "common.exe" + } + ] + } + }, + { + "id": "simple3", + "commandLine": "cmd /c dir /s" + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "taskId": "simple3", + "status": "success", + "eTag": "0x8D3D623CE295629", + "lastModified": "2016-09-06T07:02:46.0386857Z", + "location": "https://account.region.batch.azure.com/jobs/jobId/tasks/simple3" + }, + { + "taskId": "complex1", + "status": "success", + "eTag": "0x8D3D623CE29A412", + "lastModified": "2016-09-06T07:02:46.0406802Z", + "location": "https://account.region.batch.azure.com/jobs/jobId/tasks/complex1" + } + ] + } + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskAdd_Basic.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskAdd_Basic.json new file mode 100644 index 000000000000..58baf28af916 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskAdd_Basic.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobId": "jobId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "task": { + "id": "task1", + "commandLine": "cmd /c echo task1" + } + }, + "responses": { + "201": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskAdd_ContainerSettings.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskAdd_ContainerSettings.json new file mode 100644 index 000000000000..fe9ef95233bf --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskAdd_ContainerSettings.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobId": "jobId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "task": { + "id": "taskId", + "commandLine": "bash -c 'echo hello'", + "containerSettings": { + "imageName": "ubuntu", + "containerRunOptions": "--rm" + }, + "userIdentity": { + "autoUser": { + "scope": "task", + "elevationLevel": "nonadmin" + } + } + } + }, + "responses": { + "201": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskAdd_ExitConditions.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskAdd_ExitConditions.json new file mode 100644 index 000000000000..60e606c7c17b --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskAdd_ExitConditions.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobId": "jobId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "task": { + "id": "taskId", + "commandLine": "cmd /c exit 3", + "exitConditions": { + "exitCodeRanges": [ + { + "start": 2, + "end": 4, + "exitOptions": { + "jobAction": "terminate" + } + } + ] + }, + "userIdentity": { + "autoUser": { + "scope": "task", + "elevationLevel": "nonadmin" + } + } + } + }, + "responses": { + "201": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskDelete.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskDelete.json new file mode 100644 index 000000000000..815e09c4b7aa --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobId": "jobId", + "taskId": "taskId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskGet.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskGet.json new file mode 100644 index 000000000000..c78aba329a8d --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskGet.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobId": "jobId", + "taskId": "taskId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": { + "body": { + "id": "testTask", + "url": "https://account.region.batch.azure.com/jobs/jobId/tasks/taskId", + "eTag": "0x8D3D62350711C55", + "creationTime": "2016-09-06T06:59:15.1161429Z", + "lastModified": "2016-09-06T06:59:15.1161429Z", + "state": "active", + "stateTransitionTime": "2016-09-06T06:59:15.1161429Z", + "commandLine": "cmd /c hostname", + "userIdentity": { + "autoUser": { + "scope": "task", + "elevationLevel": "nonadmin" + } + }, + "multiInstanceSettings": { + "numberOfInstances": 3, + "coordinationCommandLine": "cmd /c echo coordinating" + }, + "constraints": { + "maxWallClockTime": "P10675199DT2H48M5.4775807S", + "retentionTime": "P10675199DT2H48M5.4775807S", + "maxTaskRetryCount": 0 + }, + "executionInfo": { + "retryCount": 0, + "requeueCount": 0 + } + } + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskList.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskList.json new file mode 100644 index 000000000000..0a6857c07b1e --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskList.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobId": "jobId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "task1", + "url": "https://account.region.batch.azure.com/jobs/jobId/tasks/task1", + "eTag": "0x8D4125FD1A825A4", + "creationTime": "2016-11-21T22:43:31.4733476Z", + "lastModified": "2016-11-21T22:43:31.4733476Z", + "state": "active", + "stateTransitionTime": "2016-11-21T22:43:31.4733476Z", + "commandLine": "cmd /c echo task1", + "userIdentity": { + "autoUser": { + "scope": "task", + "elevationLevel": "nonadmin" + } + }, + "constraints": { + "maxWallClockTime": "P10675199DT2H48M5.4775807S", + "retentionTime": "P10675199DT2H48M5.4775807S", + "maxTaskRetryCount": 0 + }, + "executionInfo": { + "retryCount": 0, + "requeueCount": 0 + } + }, + { + "id": "task2", + "url": "https://account.region.batch.azure.com/jobs/jobId/tasks/task2", + "eTag": "0x8D4125FD2153345", + "creationTime": "2016-11-21T22:43:31.6736345Z", + "lastModified": "2016-11-21T22:43:32.1880389Z", + "state": "active", + "stateTransitionTime": "2016-11-21T22:43:31.6736345Z", + "commandLine": "cmd /c echo task2", + "userIdentity": { + "autoUser": { + "scope": "task", + "elevationLevel": "nonadmin" + } + }, + "constraints": { + "maxWallClockTime": "P10675199DT2H48M5.4775807S", + "retentionTime": "P10675199DT2H48M5.4775807S", + "maxTaskRetryCount": 3 + }, + "executionInfo": { + "retryCount": 0, + "requeueCount": 0 + } + } + ] + } + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskListSubtasks.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskListSubtasks.json new file mode 100644 index 000000000000..59c8c9c1c84a --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskListSubtasks.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobId": "jobId", + "taskId": "taskId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": 1, + "startTime": "2016-09-06T06:59:16.3139271Z", + "endTime": "2016-09-06T06:59:20.0242024Z", + "state": "completed", + "stateTransitionTime": "2016-09-06T06:59:20.0242024Z", + "previousState": "running", + "previousStateTransitionTime": "2016-09-06T06:59:16.3139271Z", + "exitCode": 0, + "nodeInfo": { + "affinityId": "TVM:tvm-2544493925_3-20160905t051718z", + "nodeUrl": "https://account.region.batch.azure.com/pools/poolId/nodes/tvm-2544493925_3-20160905t051718z", + "poolId": "mpiPool", + "nodeId": "tvm-2544493925_3-20160905t051718z", + "taskRootDirectory": "\\workitems\\jobId\\job-1\\taskId\\1", + "taskRootDirectoryUrl": "https://account.region.batch.azure.com/pools/poolId/nodes/tvm-2544493925_3-20160905t051718z/files//workitems/jobId/job-1/taskId/1" + } + }, + { + "id": 2, + "startTime": "2016-09-06T06:59:16.9702844Z", + "state": "running", + "stateTransitionTime": "2016-09-06T06:59:16.9702844Z", + "nodeInfo": { + "affinityId": "TVM:tvm-2544493925_2-20160905t051718z", + "nodeUrl": "https://account.region.batch.azure.com/pools/poolId/nodes/tvm-2544493925_2-20160905t051718z", + "poolId": "mpiPool", + "nodeId": "tvm-2544493925_2-20160905t051718z", + "taskRootDirectory": "\\workitems\\jobId\\job-1\\taskId\\2", + "taskRootDirectoryUrl": "https://account.region.batch.azure.com/pools/poolId/nodes/tvm-2544493925_2-20160905t051718z/files//workitems/jobId/job-1/taskId/2" + } + } + ] + } + } + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskReactivate.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskReactivate.json new file mode 100644 index 000000000000..037b719d7619 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskReactivate.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobId": "jobId", + "taskId": "taskId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "204": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskTerminate.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskTerminate.json new file mode 100644 index 000000000000..037b719d7619 --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskTerminate.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobId": "jobId", + "taskId": "taskId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT" + }, + "responses": { + "204": {} + } +} diff --git a/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskUpdate.json b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskUpdate.json new file mode 100644 index 000000000000..fd020a4359ec --- /dev/null +++ b/specification/batch/data-plane/Microsoft.Batch/stable/2020-03-01.11.0/examples/TaskUpdate.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "batchUrl": "account.region.batch.azure.com", + "api-version": "2019-08-01.10.0", + "jobId": "jobId", + "taskId": "taskId", + "client-request-id": "00000000-0000-0000-0000-000000000000", + "ocp-date": "Fri, 17 Feb 2017 00:00:00 GMT", + "taskUpdateParameter": { + "constraints": { + "maxWallClockTime": "PT1H", + "maxTaskRetryCount": 3, + "retentionTime": "PT1H" + } + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/batch/data-plane/readme.go.md b/specification/batch/data-plane/readme.go.md index 97a9240d60c4..3f970038d20a 100644 --- a/specification/batch/data-plane/readme.go.md +++ b/specification/batch/data-plane/readme.go.md @@ -19,11 +19,21 @@ batch: - tag: package-2018-12.8.0 - tag: package-2019-06.9.0 - tag: package-2019-08.10.0 + - tag: package-2020-03.11.0 +``` + +### Tag: package-2020-03.11.0 and go + +These settings apply only when `--tag=package-2020-03.11.0 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag)=='package-2020-03.11.0' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/2020-03-01.11.0/$(namespace) ``` ### Tag: package-2019-08.10.0 and go -These settings apply only when `--tag=package-2019-06.9.0 --go` is specified on the command line. +These settings apply only when `--tag=package-2019-08.10.0 --go` is specified on the command line. Please also specify `--go-sdk-folder=`. ``` yaml $(tag)=='package-2019-08.10.0' && $(go) diff --git a/specification/batch/data-plane/readme.md b/specification/batch/data-plane/readme.md index 399ab6d11296..adfd75a18255 100644 --- a/specification/batch/data-plane/readme.md +++ b/specification/batch/data-plane/readme.md @@ -26,7 +26,16 @@ These are the global settings for the Batch API. ``` yaml openapi-type: data-plane -tag: package-2019-08.10.0 +tag: package-2020-03.11.0 +``` + +### Tag: package-2020-03.11.0 + +These settings apply only when `--tag=package-2020-03.11.0` is specified on the command line. + +``` yaml $(tag) == 'package-2020-03.11.0' +input-file: +- Microsoft.Batch/stable/2020-03-01.11.0/BatchService.json ``` ### Tag: package-2019-08.10.0 @@ -351,6 +360,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.Batch/stable/2020-03-01.11.0/BatchService.json - $(this-folder)/Microsoft.Batch/stable/2019-08-01.10.0/BatchService.json - $(this-folder)/Microsoft.Batch/stable/2019-06-01.9.0/BatchService.json - $(this-folder)/Microsoft.Batch/stable/2018-12-01.8.0/BatchService.json diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/BatchManagement.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/BatchManagement.json new file mode 100644 index 000000000000..3e929c5056f6 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/BatchManagement.json @@ -0,0 +1,5075 @@ +{ + "swagger": "2.0", + "info": { + "title": "BatchManagement", + "version": "2020-03-01", + "x-ms-code-generation-settings": { + "name": "BatchManagementClient" + } + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}": { + "put": { + "tags": [ + "BatchAccount" + ], + "operationId": "BatchAccount_Create", + "x-ms-examples": { + "BatchAccountCreate_Default": { + "$ref": "./examples/BatchAccountCreate_Default.json" + }, + "BatchAccountCreate_BYOS": { + "$ref": "./examples/BatchAccountCreate_BYOS.json" + }, + "PrivateBatchAccountCreate": { + "$ref": "./examples/PrivateBatchAccountCreate.json" + } + }, + "description": "Creates a new Batch account with the specified parameters. Existing accounts cannot be updated with this API and should instead be updated with the Update Batch Account API.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-z0-9]+$", + "minLength": 3, + "maxLength": 24, + "description": "A name for the Batch account which must be unique within the region. Batch account names must be between 3 and 24 characters in length and must use only numbers and lowercase letters. This name is used as part of the DNS name that is used to access the Batch service in the region in which the account is created. For example: http://accountname.region.batch.azure.com/." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BatchAccountCreateParameters" + }, + "description": "Additional parameters for account creation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the Batch account entity.", + "schema": { + "$ref": "#/definitions/BatchAccount" + } + }, + "202": { + "description": "The operation will be completed asynchronously.", + "headers": { + "Location": { + "description": "The URL of the resource used to check the status of the asynchronous operation.", + "type": "string" + }, + "Retry-After": { + "description": "Suggested delay to check the status of the asynchronous operation. The value is an integer that specifies the delay in seconds.", + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "BatchAccount" + ], + "operationId": "BatchAccount_Update", + "x-ms-examples": { + "BatchAccountUpdate": { + "$ref": "./examples/BatchAccountUpdate.json" + } + }, + "description": "Updates the properties of an existing Batch account.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BatchAccountUpdateParameters" + }, + "description": "Additional parameters for account update." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the Batch account entity.", + "schema": { + "$ref": "#/definitions/BatchAccount" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "BatchAccount" + ], + "operationId": "BatchAccount_Delete", + "x-ms-examples": { + "BatchAccountDelete": { + "$ref": "./examples/BatchAccountDelete.json" + } + }, + "description": "Deletes the specified Batch account.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful." + }, + "202": { + "description": "The operation will be completed asynchronously.", + "headers": { + "Location": { + "description": "The URL of the resource used to check the status of the asynchronous operation.", + "type": "string" + }, + "Retry-After": { + "description": "Suggested delay to check the status of the asynchronous operation. The value is an integer that specifies the delay in seconds.", + "type": "integer", + "format": "int32" + } + } + }, + "204": { + "description": "NoContent -- account does not exist in the subscription." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "BatchAccount" + ], + "operationId": "BatchAccount_Get", + "x-ms-examples": { + "BatchAccountGet": { + "$ref": "./examples/BatchAccountGet.json" + }, + "PrivateBatchAccountGet": { + "$ref": "./examples/PrivateBatchAccountGet.json" + } + }, + "description": "Gets information about the specified Batch account.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the Batch account entity.", + "schema": { + "$ref": "#/definitions/BatchAccount" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Batch/batchAccounts": { + "get": { + "tags": [ + "BatchAccount" + ], + "operationId": "BatchAccount_List", + "x-ms-examples": { + "BatchAccountList": { + "$ref": "./examples/BatchAccountList.json" + } + }, + "description": "Gets information about the Batch accounts associated with the subscription.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains a list of Batch account entities associated with the subscription.", + "schema": { + "$ref": "#/definitions/BatchAccountListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts": { + "get": { + "tags": [ + "BatchAccount" + ], + "operationId": "BatchAccount_ListByResourceGroup", + "x-ms-examples": { + "BatchAccountListByResourceGroup": { + "$ref": "./examples/BatchAccountListByResourceGroup.json" + } + }, + "description": "Gets information about the Batch accounts associated with the specified resource group.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains a list of Batch account entities associated with the resource group.", + "schema": { + "$ref": "#/definitions/BatchAccountListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/syncAutoStorageKeys": { + "post": { + "tags": [ + "BatchAccount" + ], + "operationId": "BatchAccount_SynchronizeAutoStorageKeys", + "x-ms-examples": { + "BatchAccountSynchronizeAutoStorageKeys": { + "$ref": "./examples/BatchAccountSynchronizeAutoStorageKeys.json" + } + }, + "description": "Synchronizes access keys for the auto-storage account configured for the specified Batch account.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The operation was successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/regenerateKeys": { + "post": { + "tags": [ + "BatchAccount" + ], + "operationId": "BatchAccount_RegenerateKey", + "x-ms-examples": { + "BatchAccountRegenerateKey": { + "$ref": "./examples/BatchAccountRegenerateKey.json" + } + }, + "description": "Regenerates the specified account key for the Batch account.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BatchAccountRegenerateKeyParameters" + }, + "description": "The type of key to regenerate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the Batch account keys.", + "schema": { + "$ref": "#/definitions/BatchAccountKeys" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/listKeys": { + "post": { + "tags": [ + "BatchAccount" + ], + "operationId": "BatchAccount_GetKeys", + "x-ms-examples": { + "BatchAccountGetKeys": { + "$ref": "./examples/BatchAccountGetKeys.json" + } + }, + "summary": "Gets the account keys for the specified Batch account.", + "description": "This operation applies only to Batch accounts created with a poolAllocationMode of 'BatchService'. If the Batch account was created with a poolAllocationMode of 'UserSubscription', clients cannot use access to keys to authenticate, and must use Azure Active Directory instead. In this case, getting the keys will fail.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the keys of the Batch account.", + "schema": { + "$ref": "#/definitions/BatchAccountKeys" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}/versions/{versionName}/activate": { + "post": { + "tags": [ + "ApplicationPackage" + ], + "operationId": "ApplicationPackage_Activate", + "x-ms-examples": { + "ApplicationPackageActivate": { + "$ref": "./examples/ApplicationPackageActivate.json" + } + }, + "description": "Activates the specified application package. This should be done after the `ApplicationPackage` was created and uploaded. This needs to be done before an `ApplicationPackage` can be used on Pools or Tasks.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/ApplicationNameParameter" + }, + { + "$ref": "#/parameters/VersionNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ActivateApplicationPackageParameters" + }, + "description": "The parameters for the request." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the application package entity.", + "schema": { + "$ref": "#/definitions/ApplicationPackage" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}": { + "put": { + "tags": [ + "Application" + ], + "operationId": "Application_Create", + "x-ms-examples": { + "ApplicationCreate": { + "$ref": "./examples/ApplicationCreate.json" + } + }, + "description": "Adds an application to the specified Batch account.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/ApplicationNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/Application" + }, + "description": "The parameters for the request." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the application entity.", + "schema": { + "$ref": "#/definitions/Application" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "Application" + ], + "operationId": "Application_Delete", + "x-ms-examples": { + "ApplicationDelete": { + "$ref": "./examples/ApplicationDelete.json" + } + }, + "description": "Deletes an application.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/ApplicationNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful." + }, + "204": { + "description": "The operation was successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "get": { + "tags": [ + "Application" + ], + "operationId": "Application_Get", + "x-ms-examples": { + "ApplicationGet": { + "$ref": "./examples/ApplicationGet.json" + } + }, + "description": "Gets information about the specified application.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/ApplicationNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the application entity.", + "schema": { + "$ref": "#/definitions/Application" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "Application" + ], + "operationId": "Application_Update", + "x-ms-examples": { + "ApplicationUpdate": { + "$ref": "./examples/ApplicationUpdate.json" + } + }, + "description": "Updates settings for the specified application.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/ApplicationNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Application" + }, + "description": "The parameters for the request." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the application entity.", + "schema": { + "$ref": "#/definitions/Application" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}/versions/{versionName}": { + "put": { + "tags": [ + "ApplicationPackage" + ], + "operationId": "ApplicationPackage_Create", + "x-ms-examples": { + "ApplicationPackageCreate": { + "$ref": "./examples/ApplicationPackageCreate.json" + } + }, + "description": "Creates an application package record. The record contains the SAS where the package should be uploaded to. Once it is uploaded the `ApplicationPackage` needs to be activated using `ApplicationPackageActive` before it can be used.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/ApplicationNameParameter" + }, + { + "$ref": "#/parameters/VersionNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/ApplicationPackage" + }, + "description": "The parameters for the request." + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the application package entity.", + "schema": { + "$ref": "#/definitions/ApplicationPackage" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "ApplicationPackage" + ], + "operationId": "ApplicationPackage_Delete", + "x-ms-examples": { + "ApplicationPackageDelete": { + "$ref": "./examples/ApplicationPackageDelete.json" + } + }, + "description": "Deletes an application package record and its associated binary file.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/ApplicationNameParameter" + }, + { + "$ref": "#/parameters/VersionNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful." + }, + "204": { + "description": "The operation was successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "get": { + "tags": [ + "ApplicationPackage" + ], + "operationId": "ApplicationPackage_Get", + "x-ms-examples": { + "ApplicationPackageGet": { + "$ref": "./examples/ApplicationPackageGet.json" + } + }, + "description": "Gets information about the specified application package.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/ApplicationNameParameter" + }, + { + "$ref": "#/parameters/VersionNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the application package entity.", + "schema": { + "$ref": "#/definitions/ApplicationPackage" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications": { + "get": { + "tags": [ + "Application" + ], + "operationId": "Application_List", + "x-ms-examples": { + "ApplicationList": { + "$ref": "./examples/ApplicationList.json" + } + }, + "description": "Lists all of the applications in the specified account.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The maximum number of items to return in the response." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains a list of the application entities associated with the specified account.", + "schema": { + "$ref": "#/definitions/ListApplicationsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}/versions": { + "get": { + "tags": [ + "ApplicationPackage" + ], + "operationId": "ApplicationPackage_List", + "x-ms-examples": { + "ApplicationList": { + "$ref": "./examples/ApplicationPackageList.json" + } + }, + "description": "Lists all of the application packages in the specified application.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/ApplicationNameParameter" + }, + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The maximum number of items to return in the response." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains a list of the application package entities associated with the specified application.", + "schema": { + "$ref": "#/definitions/ListApplicationPackagesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Batch/locations/{locationName}/quotas": { + "get": { + "tags": [ + "Location" + ], + "operationId": "Location_GetQuotas", + "x-ms-examples": { + "LocationGetQuotas": { + "$ref": "./examples/LocationGetQuotas.json" + } + }, + "description": "Gets the Batch service quotas for the specified subscription at the given location.", + "parameters": [ + { + "name": "locationName", + "in": "path", + "required": true, + "type": "string", + "description": "The region for which to retrieve Batch service quotas." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the Batch service quotas for the subscription in the specified location.", + "schema": { + "$ref": "#/definitions/BatchLocationQuota" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/providers/Microsoft.Batch/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "description": "Lists available operations for the Microsoft.Batch provider", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the list of available operations.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Batch/locations/{locationName}/checkNameAvailability": { + "post": { + "operationId": "Location_CheckNameAvailability", + "description": "Checks whether the Batch account name is available in the specified region.", + "x-ms-examples": { + "LocationCheckNameAvailability_Available": { + "$ref": "./examples/LocationCheckNameAvailability_Available.json" + }, + "LocationCheckNameAvailability_AlreadyExists": { + "$ref": "./examples/LocationCheckNameAvailability_AlreadyExists.json" + } + }, + "parameters": [ + { + "name": "locationName", + "in": "path", + "required": true, + "type": "string", + "description": "The desired region for the name check." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityParameters" + }, + "description": "Properties needed to check the availability of a name." + } + ], + "responses": { + "200": { + "description": "Success. Returns details about whether a Batch account name is available.", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/certificates": { + "get": { + "tags": [ + "Certificate" + ], + "operationId": "Certificate_ListByBatchAccount", + "description": "Lists all of the certificates in the specified account.", + "x-ms-examples": { + "ListCertificates": { + "$ref": "./examples/CertificateList.json" + }, + "ListCertificates - Filter and Select": { + "$ref": "./examples/CertificateListWithFilter.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The maximum number of items to return in the response." + }, + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "Comma separated list of properties that should be returned. e.g. \"properties/provisioningState\". Only top level properties under properties/ are valid for selection." + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "OData filter expression. Valid properties for filtering are \"properties/provisioningState\", \"properties/provisioningStateTransitionTime\", \"name\"." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains a list of certificates associated with the account.", + "schema": { + "$ref": "#/definitions/ListCertificatesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/certificates/{certificateName}": { + "put": { + "tags": [ + "Certificate" + ], + "operationId": "Certificate_Create", + "description": "Creates a new certificate inside the specified account.", + "x-ms-examples": { + "CreateCertificate - Minimal Pfx": { + "$ref": "./examples/CertificateCreate_Minimal.json" + }, + "CreateCertificate - Minimal Cer": { + "$ref": "./examples/CertificateCreate_MinimalCer.json" + }, + "CreateCertificate - Full": { + "$ref": "./examples/CertificateCreate_Full.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/CertificateNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CertificateCreateOrUpdateParameters" + }, + "description": "Additional parameters for certificate creation." + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "The entity state (ETag) version of the certificate to update. A value of \"*\" can be used to apply the operation only if the certificate already exists. If omitted, this operation will always be applied." + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "Set to '*' to allow a new certificate to be created, but to prevent updating an existing certificate. Other values will be ignored." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the certificate entity.", + "schema": { + "$ref": "#/definitions/Certificate" + }, + "headers": { + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Match or If-None-Match headers.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Certificate" + ], + "operationId": "Certificate_Update", + "description": "Updates the properties of an existing certificate.", + "x-ms-examples": { + "UpdateCertificate": { + "$ref": "./examples/CertificateUpdate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/CertificateNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CertificateCreateOrUpdateParameters" + }, + "description": "Certificate entity to update." + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "The entity state (ETag) version of the certificate to update. This value can be omitted or set to \"*\" to apply the operation unconditionally." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the certificate entity.", + "schema": { + "$ref": "#/definitions/Certificate" + }, + "headers": { + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Match or If-None-Match headers.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "Certificate" + ], + "operationId": "Certificate_Delete", + "description": "Deletes the specified certificate.", + "x-ms-examples": { + "CertificateDelete": { + "$ref": "./examples/CertificateDelete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/CertificateNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful." + }, + "204": { + "description": "The operation was successful." + }, + "202": { + "description": "The operation will be completed asynchronously.", + "headers": { + "Location": { + "description": "The URL of the resource used to check the status of the asynchronous operation.", + "type": "string" + }, + "Retry-After": { + "description": "Suggested delay to check the status of the asynchronous operation. The value is an integer that represents the seconds.", + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Certificate" + ], + "operationId": "Certificate_Get", + "description": "Gets information about the specified certificate.", + "x-ms-examples": { + "Get Certificate": { + "$ref": "./examples/CertificateGet.json" + }, + "Get Certificate with Deletion Error": { + "$ref": "./examples/CertificateGetWithDeletionError.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/CertificateNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the certificate entity.", + "schema": { + "$ref": "#/definitions/Certificate" + }, + "headers": { + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Match or If-None-Match headers.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/certificates/{certificateName}/cancelDelete": { + "post": { + "tags": [ + "Certificate" + ], + "operationId": "Certificate_CancelDeletion", + "summary": "Cancels a failed deletion of a certificate from the specified account.", + "description": "If you try to delete a certificate that is being used by a pool or compute node, the status of the certificate changes to deleteFailed. If you decide that you want to continue using the certificate, you can use this operation to set the status of the certificate back to active. If you intend to delete the certificate, you do not need to run this operation after the deletion failed. You must make sure that the certificate is not being used by any resources, and then you can try again to delete the certificate.", + "x-ms-examples": { + "CertificateCancelDeletion": { + "$ref": "./examples/CertificateCancelDeletion.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/CertificateNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the certificate entity.", + "schema": { + "$ref": "#/definitions/Certificate" + }, + "headers": { + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Match or If-None-Match headers.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResource" + ], + "operationId": "PrivateLinkResource_ListByBatchAccount", + "description": "Lists all of the private link resources in the specified account.", + "x-ms-examples": { + "ListPrivateLinkResource": { + "$ref": "./examples/PrivateLinkResourcesList.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The maximum number of items to return in the response." + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains a list of private link resources associated with the account.", + "schema": { + "$ref": "#/definitions/ListPrivateLinkResourcesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/privateLinkResources/{privateLinkResourceName}": { + "get": { + "tags": [ + "PrivateLinkResource" + ], + "operationId": "PrivateLinkResource_Get", + "description": "Gets information about the specified private link resource.", + "x-ms-examples": { + "GetPrivateLinkResource": { + "$ref": "./examples/PrivateLinkResourceGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/PrivateLinkResourceNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the private link resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnection" + ], + "operationId": "PrivateEndpointConnection_ListByBatchAccount", + "description": "Lists all of the private endpoint connections in the specified account.", + "x-ms-examples": { + "ListPrivateEndpointConnections": { + "$ref": "./examples/PrivateEndpointConnectionsList.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The maximum number of items to return in the response." + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains a list of private link resources associated with the account.", + "schema": { + "$ref": "#/definitions/ListPrivateEndpointConnectionsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnection" + ], + "operationId": "PrivateEndpointConnection_Get", + "description": "Gets information about the specified private endpoint connection.", + "x-ms-examples": { + "GetPrivateEndpointConnection": { + "$ref": "./examples/PrivateEndpointConnectionGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "patch": { + "tags": [ + "PrivateEndpointConnection" + ], + "operationId": "PrivateEndpointConnection_Update", + "description": "Updates the properties of an existing private endpoint connection.", + "x-ms-examples": { + "UpdatePrivateEndpointConnection": { + "$ref": "./examples/PrivateEndpointConnectionUpdate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "PrivateEndpointConnection properties that should be updated. Properties that are supplied will be updated, any property not supplied will be unchanged." + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "The state (ETag) version of the private endpoint connection to update. This value can be omitted or set to \"*\" to apply the operation unconditionally." + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the PrivateEndpointConnection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "headers": { + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Match or If-None-Match headers.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools": { + "get": { + "tags": [ + "Pool" + ], + "operationId": "Pool_ListByBatchAccount", + "description": "Lists all of the pools in the specified account.", + "x-ms-examples": { + "ListPool": { + "$ref": "./examples/PoolList.json" + }, + "ListPoolWithFilter": { + "$ref": "./examples/PoolListWithFilter.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "The maximum number of items to return in the response." + }, + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "Comma separated list of properties that should be returned. e.g. \"properties/provisioningState\". Only top level properties under properties/ are valid for selection." + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "OData filter expression. Valid properties for filtering are:\n\n name\n properties/allocationState\n properties/allocationStateTransitionTime\n properties/creationTime\n properties/provisioningState\n properties/provisioningStateTransitionTime\n properties/lastModified\n properties/vmSize\n properties/interNodeCommunication\n properties/scaleSettings/autoScale\n properties/scaleSettings/fixedScale" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains a list of certificates associated with the account.", + "schema": { + "$ref": "#/definitions/ListPoolsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools/{poolName}": { + "put": { + "tags": [ + "Pool" + ], + "operationId": "Pool_Create", + "description": "Creates a new pool inside the specified account.", + "x-ms-examples": { + "CreatePool - Minimal CloudServiceConfiguration": { + "$ref": "./examples/PoolCreate_MinimalCloudServiceConfiguration.json" + }, + "CreatePool - Minimal VirtualMachineConfiguration": { + "$ref": "./examples/PoolCreate_MinimalVirtualMachineConfiguration.json" + }, + "CreatePool - Full Example": { + "$ref": "./examples/PoolCreate_FullExample.json" + }, + "CreatePool - Custom Image": { + "$ref": "./examples/PoolCreate_CustomImage.json" + }, + "CreatePool - Public IPs": { + "$ref": "./examples/PoolCreate_PublicIPs.json" + }, + "CreatePool - Full VirtualMachineConfiguration": { + "$ref": "./examples/PoolCreate_VirtualMachineConfiguration.json" + }, + "CreatePool - No public IP": { + "$ref": "./examples/PoolCreate_NoPublicIPAddresses.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/PoolNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Pool" + }, + "description": "Additional parameters for pool creation." + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "The entity state (ETag) version of the pool to update. A value of \"*\" can be used to apply the operation only if the pool already exists. If omitted, this operation will always be applied." + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "Set to '*' to allow a new pool to be created, but to prevent updating an existing pool. Other values will be ignored." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the pool entity.", + "schema": { + "$ref": "#/definitions/Pool" + }, + "headers": { + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Match or If-None-Match headers.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Pool" + ], + "operationId": "Pool_Update", + "description": "Updates the properties of an existing pool.", + "x-ms-examples": { + "UpdatePool - Resize Pool": { + "$ref": "./examples/PoolUpdate_ResizePool.json" + }, + "UpdatePool - Enable Autoscale": { + "$ref": "./examples/PoolUpdate_EnableAutoScale.json" + }, + "UpdatePool - Remove Start Task": { + "$ref": "./examples/PoolUpdate_RemoveStartTask.json" + }, + "UpdatePool - Other Properties": { + "$ref": "./examples/PoolUpdate_OtherProperties.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/PoolNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Pool" + }, + "description": "Pool properties that should be updated. Properties that are supplied will be updated, any property not supplied will be unchanged." + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "The entity state (ETag) version of the pool to update. This value can be omitted or set to \"*\" to apply the operation unconditionally." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the pool entity.", + "schema": { + "$ref": "#/definitions/Pool" + }, + "headers": { + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Match or If-None-Match headers.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "Pool" + ], + "operationId": "Pool_Delete", + "description": "Deletes the specified pool.", + "x-ms-examples": { + "DeletePool": { + "$ref": "./examples/PoolDelete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/PoolNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful." + }, + "204": { + "description": "The operation was successful." + }, + "202": { + "description": "The operation will be completed asynchronously.", + "headers": { + "Location": { + "description": "The URL of the resource used to check the status of the asynchronous operation.", + "type": "string" + }, + "Retry-After": { + "description": "Suggested delay to check the status of the asynchronous operation. The value is an integer that represents the seconds.", + "type": "integer", + "format": "int32" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Pool" + ], + "operationId": "Pool_Get", + "description": "Gets information about the specified pool.", + "x-ms-examples": { + "GetPool": { + "$ref": "./examples/PoolGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/PoolNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the pool entity.", + "schema": { + "$ref": "#/definitions/Pool" + }, + "headers": { + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Match or If-None-Match headers.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools/{poolName}/disableAutoScale": { + "post": { + "tags": [ + "Pool" + ], + "operationId": "Pool_DisableAutoScale", + "description": "Disables automatic scaling for a pool.", + "x-ms-examples": { + "Disable AutoScale": { + "$ref": "./examples/PoolDisableAutoScale.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/PoolNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the pool entity.", + "schema": { + "$ref": "#/definitions/Pool" + }, + "headers": { + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Match or If-None-Match headers.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools/{poolName}/stopResize": { + "post": { + "tags": [ + "Pool" + ], + "operationId": "Pool_StopResize", + "summary": "Stops an ongoing resize operation on the pool.", + "description": "This does not restore the pool to its previous state before the resize operation: it only stops any further changes being made, and the pool maintains its current state. After stopping, the pool stabilizes at the number of nodes it was at when the stop operation was done. During the stop operation, the pool allocation state changes first to stopping and then to steady. A resize operation need not be an explicit resize pool request; this API can also be used to halt the initial sizing of the pool when it is created.", + "x-ms-examples": { + "StopPoolResize": { + "$ref": "./examples/PoolStopResize.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/PoolNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the pool entity.", + "schema": { + "$ref": "#/definitions/Pool" + }, + "headers": { + "ETag": { + "description": "The ETag HTTP response header. This is an opaque string. You can use it to detect whether the resource has changed between requests. In particular, you can pass the ETag to one of the If-Match or If-None-Match headers.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "AutoStorageBaseProperties": { + "properties": { + "storageAccountId": { + "type": "string", + "description": "The resource ID of the storage account to be used for auto-storage account." + } + }, + "required": [ + "storageAccountId" + ], + "description": "The properties related to the auto-storage account." + }, + "BatchAccountUpdateProperties": { + "properties": { + "autoStorage": { + "$ref": "#/definitions/AutoStorageBaseProperties", + "description": "The properties related to the auto-storage account." + }, + "encryption": { + "title": "The encryption configuration for the Batch account.", + "$ref": "#/definitions/EncryptionProperties" + } + }, + "description": "The properties of a Batch account." + }, + "BatchAccountCreateProperties": { + "properties": { + "autoStorage": { + "$ref": "#/definitions/AutoStorageBaseProperties", + "description": "The properties related to the auto-storage account." + }, + "poolAllocationMode": { + "title": "The allocation mode to use for creating pools in the Batch account.", + "description": "The pool allocation mode also affects how clients may authenticate to the Batch Service API. If the mode is BatchService, clients may authenticate using access keys or Azure Active Directory. If the mode is UserSubscription, clients must use Azure Active Directory. The default is BatchService.", + "$ref": "#/definitions/PoolAllocationMode" + }, + "keyVaultReference": { + "$ref": "#/definitions/KeyVaultReference", + "description": "A reference to the Azure key vault associated with the Batch account." + }, + "publicNetworkAccess": { + "title": "The network access type for accessing Azure Batch account.", + "description": "If not specified, the default value is 'enabled'.", + "$ref": "#/definitions/PublicNetworkAccessType" + }, + "encryption": { + "title": "The encryption configuration for the Batch account.", + "$ref": "#/definitions/EncryptionProperties" + } + }, + "description": "The properties of a Batch account." + }, + "BatchAccountCreateParameters": { + "properties": { + "location": { + "type": "string", + "description": "The region in which to create the account." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The user-specified tags associated with the account." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BatchAccountCreateProperties", + "description": "The properties of the Batch account." + } + }, + "required": [ + "location" + ], + "description": "Parameters supplied to the Create operation." + }, + "KeyVaultReference": { + "properties": { + "id": { + "type": "string", + "description": "The resource ID of the Azure key vault associated with the Batch account." + }, + "url": { + "type": "string", + "description": "The URL of the Azure key vault associated with the Batch account." + } + }, + "required": [ + "id", + "url" + ], + "description": "Identifies the Azure key vault associated with a Batch account." + }, + "AutoStorageProperties": { + "properties": { + "lastKeySync": { + "type": "string", + "format": "date-time", + "description": "The UTC time at which storage keys were last synchronized with the Batch account." + } + }, + "required": [ + "lastKeySync" + ], + "allOf": [ + { + "$ref": "#/definitions/AutoStorageBaseProperties" + } + ], + "description": "Contains information about the auto-storage account associated with a Batch account." + }, + "VirtualMachineFamilyCoreQuota": { + "properties": { + "name": { + "readOnly": true, + "x-nullable": false, + "type": "string", + "description": "The Virtual Machine family name." + }, + "coreQuota": { + "readOnly": true, + "x-nullable": false, + "type": "integer", + "format": "int32", + "description": "The core quota for the VM family for the Batch account." + } + }, + "description": "A VM Family and its associated core quota for the Batch account." + }, + "BatchAccountProperties": { + "properties": { + "accountEndpoint": { + "type": "string", + "readOnly": true, + "description": "The account endpoint used to interact with the Batch service." + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "x-nullable": false, + "description": "The provisioned state of the resource", + "enum": [ + "Invalid", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Cancelled" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": false, + "values": [ + { + "value": "Invalid", + "description": "The account is in an invalid state." + }, + { + "value": "Creating", + "description": "The account is being created." + }, + { + "value": "Deleting", + "description": "The account is being deleted." + }, + { + "value": "Succeeded", + "description": "The account has been created and is ready for use." + }, + { + "value": "Failed", + "description": "The last operation for the account is failed." + }, + { + "value": "Cancelled", + "description": "The last operation for the account is cancelled." + } + ] + } + }, + "poolAllocationMode": { + "readOnly": true, + "x-nullable": false, + "title": "The allocation mode to use for creating pools in the Batch account.", + "$ref": "#/definitions/PoolAllocationMode" + }, + "keyVaultReference": { + "title": "A reference to the Azure key vault associated with the Batch account.", + "readOnly": true, + "$ref": "#/definitions/KeyVaultReference" + }, + "publicNetworkAccess": { + "readOnly": true, + "x-nullable": true, + "title": "The network interface type for accessing Azure Batch service and Batch account operations.", + "description": "If not specified, the default value is 'enabled'.", + "$ref": "#/definitions/PublicNetworkAccessType" + }, + "privateEndpointConnections": { + "readOnly": true, + "x-nullable": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "List of private endpoint connections associated with the Batch account" + }, + "autoStorage": { + "title": "The properties and status of any auto-storage account associated with the Batch account.", + "readOnly": true, + "$ref": "#/definitions/AutoStorageProperties" + }, + "encryption": { + "title": "The encryption configuration for the Batch account.", + "readOnly": true, + "$ref": "#/definitions/EncryptionProperties" + }, + "dedicatedCoreQuota": { + "readOnly": true, + "x-nullable": true, + "type": "integer", + "format": "int32", + "title": "The dedicated core quota for the Batch account.", + "description": "For accounts with PoolAllocationMode set to UserSubscription, quota is managed on the subscription so this value is not returned." + }, + "lowPriorityCoreQuota": { + "readOnly": true, + "x-nullable": true, + "type": "integer", + "format": "int32", + "title": "The low-priority core quota for the Batch account.", + "description": "For accounts with PoolAllocationMode set to UserSubscription, quota is managed on the subscription so this value is not returned." + }, + "dedicatedCoreQuotaPerVMFamily": { + "readOnly": true, + "x-nullable": true, + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineFamilyCoreQuota" + }, + "description": "A list of the dedicated core quota per Virtual Machine family for the Batch account. For accounts with PoolAllocationMode set to UserSubscription, quota is managed on the subscription so this value is not returned." + }, + "dedicatedCoreQuotaPerVMFamilyEnforced": { + "readOnly": true, + "x-nullable": false, + "type": "boolean", + "title": "A value indicating whether the core quota for the Batch Account is enforced per Virtual Machine family or not.", + "description": "Batch is transitioning its core quota system for dedicated cores to be enforced per Virtual Machine family. During this transitional phase, the dedicated core quota per Virtual Machine family may not yet be enforced. If this flag is false, dedicated core quota is enforced via the old dedicatedCoreQuota property on the account and does not consider Virtual Machine family. If this flag is true, dedicated core quota is enforced via the dedicatedCoreQuotaPerVMFamily property on the account, and the old dedicatedCoreQuota does not apply." + }, + "poolQuota": { + "readOnly": true, + "x-nullable": false, + "type": "integer", + "format": "int32", + "title": "The pool quota for the Batch account." + }, + "activeJobAndJobScheduleQuota": { + "readOnly": true, + "x-nullable": false, + "type": "integer", + "format": "int32", + "title": "The active job and job schedule quota for the Batch account." + } + }, + "description": "Account specific properties." + }, + "BatchAccount": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BatchAccountProperties", + "description": "The properties associated with the account." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Contains information about an Azure Batch account." + }, + "BatchAccountUpdateParameters": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The user-specified tags associated with the account." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BatchAccountUpdateProperties", + "description": "The properties of the account." + } + }, + "description": "Parameters for updating an Azure Batch account." + }, + "BatchAccountListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BatchAccount" + }, + "description": "The collection of Batch accounts returned by the listing operation." + }, + "nextLink": { + "type": "string", + "description": "The continuation token." + } + }, + "description": "Values returned by the List operation." + }, + "EncryptionProperties": { + "properties": { + "keySource": { + "type": "string", + "description": "Type of the key source.", + "enum": [ + "Microsoft.Batch", + "Microsoft.KeyVault" + ], + "x-ms-enum": { + "name": "KeySource", + "modelAsString": false, + "values": [ + { + "value": "Microsoft.Batch", + "description": "Batch creates and manages the encryption keys used to protect the account data." + }, + { + "value": "Microsoft.KeyVault", + "description": "The encryption keys used to protect the account data are stored in an external key vault." + } + ] + } + }, + "keyVaultProperties": { + "$ref": "#/definitions/KeyVaultProperties", + "description": "Additional details when using Microsoft.KeyVault" + } + } + }, + "KeyVaultProperties": { + "properties": { + "keyIdentifier": { + "type": "string", + "description": "Full path to the versioned secret. Example https://mykeyvault.vault.azure.net/keys/testkey/6e34a81fef704045975661e297a4c053" + } + } + }, + "BatchAccountRegenerateKeyParameters": { + "properties": { + "keyName": { + "type": "string", + "description": "The type of account key to regenerate.", + "enum": [ + "Primary", + "Secondary" + ], + "x-ms-enum": { + "name": "AccountKeyType", + "modelAsString": false, + "values": [ + { + "value": "Primary", + "description": "The primary account key." + }, + { + "value": "Secondary", + "description": "The secondary account key." + } + ] + } + } + }, + "required": [ + "keyName" + ], + "description": "Parameters supplied to the RegenerateKey operation." + }, + "BatchAccountKeys": { + "properties": { + "accountName": { + "type": "string", + "readOnly": true, + "description": "The Batch account name." + }, + "primary": { + "type": "string", + "readOnly": true, + "description": "The primary key associated with the account." + }, + "secondary": { + "type": "string", + "readOnly": true, + "description": "The secondary key associated with the account." + } + }, + "description": "A set of Azure Batch account keys." + }, + "ActivateApplicationPackageParameters": { + "properties": { + "format": { + "type": "string", + "description": "The format of the application package binary file." + } + }, + "required": [ + "format" + ], + "description": "Parameters for an activating an application package." + }, + "Application": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationProperties", + "description": "The properties associated with the Application." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "description": "Contains information about an application in a Batch account." + }, + "ApplicationProperties": { + "properties": { + "displayName": { + "type": "string", + "description": "The display name for the application." + }, + "allowUpdates": { + "type": "boolean", + "description": "A value indicating whether packages within the application may be overwritten using the same version string." + }, + "defaultVersion": { + "type": "string", + "description": "The package to use if a client requests the application but does not specify a version. This property can only be set to the name of an existing package." + } + }, + "description": "The properties associated with the Application." + }, + "ApplicationPackage": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationPackageProperties", + "description": "The properties associated with the Application Package." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "description": "An application package which represents a particular version of an application." + }, + "ApplicationPackageProperties": { + "properties": { + "state": { + "type": "string", + "readOnly": true, + "description": "The current state of the application package.", + "enum": [ + "Pending", + "Active" + ], + "x-ms-enum": { + "name": "PackageState", + "modelAsString": false, + "values": [ + { + "value": "Pending", + "description": "The application package has been created but has not yet been activated." + }, + { + "value": "Active", + "description": "The application package is ready for use." + } + ] + } + }, + "format": { + "type": "string", + "readOnly": true, + "description": "The format of the application package, if the package is active." + }, + "storageUrl": { + "type": "string", + "readOnly": true, + "description": "The URL for the application package in Azure Storage." + }, + "storageUrlExpiry": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The UTC time at which the Azure Storage URL will expire." + }, + "lastActivationTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The time at which the package was last activated, if the package is active." + } + }, + "description": "Properties of an application package" + }, + "ListApplicationsResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Application" + }, + "description": "The list of applications." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "The result of performing list applications." + }, + "ListApplicationPackagesResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationPackage" + }, + "description": "The list of application packages." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "The result of performing list application packages." + }, + "BatchLocationQuota": { + "properties": { + "accountQuota": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The number of Batch accounts that may be created under the subscription in the specified region." + } + }, + "description": "Quotas associated with a Batch region for a particular subscription." + }, + "Resource": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the resource." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the resource." + }, + "location": { + "readOnly": true, + "type": "string", + "description": "The location of the resource." + }, + "tags": { + "readOnly": true, + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The tags of the resource." + } + }, + "description": "A definition of an Azure resource.", + "x-ms-azure-resource": true + }, + "ProxyResource": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the resource." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "The ETag of the resource, used for concurrency statements." + } + }, + "description": "A definition of an Azure resource.", + "x-ms-azure-resource": true + }, + "PublicNetworkAccessType": { + "type": "string", + "description": "The network access type for operating on the resources in the Batch account.", + "default": "Enabled", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccessType", + "modelAsString": false, + "values": [ + { + "value": "Enabled", + "description": "Enables connectivity to Azure Batch through public DNS." + }, + { + "value": "Disabled", + "description": "Disables public connectivity and enables private connectivity to Azure Batch Service through private endpoint resource." + } + ] + } + }, + "PoolAllocationMode": { + "type": "string", + "description": "The allocation mode for creating pools in the Batch account.", + "enum": [ + "BatchService", + "UserSubscription" + ], + "x-ms-enum": { + "name": "PoolAllocationMode", + "modelAsString": false, + "values": [ + { + "value": "BatchService", + "description": "Pools will be allocated in subscriptions owned by the Batch service." + }, + { + "value": "UserSubscription", + "description": "Pools will be allocated in a subscription owned by the user." + } + ] + } + }, + "CertificateBaseProperties": { + "properties": { + "thumbprintAlgorithm": { + "type": "string", + "title": "The algorithm of the certificate thumbprint.", + "description": "This must match the first portion of the certificate name. Currently required to be 'SHA1'." + }, + "thumbprint": { + "type": "string", + "title": "The thumbprint of the certificate.", + "description": "This must match the thumbprint from the name." + }, + "format": { + "type": "string", + "x-nullable": false, + "description": "The format of the certificate - either Pfx or Cer. If omitted, the default is Pfx.", + "enum": [ + "Pfx", + "Cer" + ], + "x-ms-enum": { + "name": "CertificateFormat", + "modelAsString": false, + "values": [ + { + "value": "Pfx", + "description": "The certificate is a PFX (PKCS#12) formatted certificate or certificate chain." + }, + { + "value": "Cer", + "description": "The certificate is a base64-encoded X.509 certificate." + } + ] + } + } + } + }, + "CertificateProperties": { + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "x-nullable": false, + "title": "The provisioned state of the resource", + "enum": [ + "Succeeded", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "CertificateProvisioningState", + "modelAsString": false, + "values": [ + { + "value": "Succeeded", + "description": "The certificate is available for use in pools." + }, + { + "value": "Deleting", + "description": "The user has requested that the certificate be deleted, but the delete operation has not yet completed. You may not reference the certificate when creating or updating pools." + }, + { + "value": "Failed", + "description": "The user requested that the certificate be deleted, but there are pools that still have references to the certificate, or it is still installed on one or more compute nodes. (The latter can occur if the certificate has been removed from the pool, but the node has not yet restarted. Nodes refresh their certificates only when they restart.) You may use the cancel certificate delete operation to cancel the delete, or the delete certificate operation to retry the delete." + } + ] + } + }, + "provisioningStateTransitionTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the certificate entered its current state.", + "readOnly": true + }, + "previousProvisioningState": { + "type": "string", + "readOnly": true, + "x-nullable": false, + "description": "The previous provisioned state of the resource", + "enum": [ + "Succeeded", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "CertificateProvisioningState", + "modelAsString": false, + "values": [ + { + "value": "Succeeded", + "description": "The certificate is available for use in pools." + }, + { + "value": "Deleting", + "description": "The user has requested that the certificate be deleted, but the delete operation has not yet completed. You may not reference the certificate when creating or updating pools." + }, + { + "value": "Failed", + "description": "The user requested that the certificate be deleted, but there are pools that still have references to the certificate, or it is still installed on one or more compute nodes. (The latter can occur if the certificate has been removed from the pool, but the node has not yet restarted. Nodes refresh their certificates only when they restart.) You may use the cancel certificate delete operation to cancel the delete, or the delete certificate operation to retry the delete." + } + ] + } + }, + "previousProvisioningStateTransitionTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the certificate entered its previous state.", + "readOnly": true + }, + "publicData": { + "type": "string", + "readOnly": true, + "description": "The public key of the certificate." + }, + "deleteCertificateError": { + "readOnly": true, + "$ref": "#/definitions/DeleteCertificateError", + "title": "The error which occurred while deleting the certificate", + "description": "This is only returned when the certificate provisioningState is 'Failed'." + } + }, + "allOf": [ + { + "$ref": "#/definitions/CertificateBaseProperties" + } + ], + "description": "Certificate properties." + }, + "CertificateCreateOrUpdateProperties": { + "allOf": [ + { + "$ref": "#/definitions/CertificateBaseProperties" + } + ], + "properties": { + "data": { + "type": "string", + "title": "The base64-encoded contents of the certificate.", + "description": "The maximum size is 10KB." + }, + "password": { + "type": "string", + "title": "The password to access the certificate's private key.", + "description": "This must not be specified if the certificate format is Cer." + } + }, + "description": "Certificate properties for create operations", + "required": [ + "data" + ] + }, + "Certificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CertificateProperties", + "description": "The properties associated with the certificate." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "description": "Contains information about a certificate." + }, + "CertificateCreateOrUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CertificateCreateOrUpdateProperties", + "description": "The properties associated with the certificate." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "description": "Contains information about a certificate." + }, + "ListCertificatesResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Certificate" + }, + "description": "The collection of returned certificates." + }, + "nextLink": { + "type": "string", + "description": "The continuation token." + } + }, + "description": "Values returned by the List operation." + }, + "DeleteCertificateError": { + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + }, + "target": { + "type": "string", + "description": "The target of the particular error. For example, the name of the property in error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/DeleteCertificateError" + }, + "description": "A list of additional details about the error." + } + }, + "required": [ + "code", + "message" + ], + "description": "An error response from the Batch service." + }, + "PrivateLinkResource": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "The properties associated with the private link resource." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "description": "Contains information about a private link resource." + }, + "PrivateLinkResourceProperties": { + "properties": { + "groupId": { + "type": "string", + "title": "The group id of the private link resource.", + "description": "The group id is used to establish the private link connection.", + "readOnly": true + }, + "requiredMembers": { + "type": "array", + "items": { + "type": "string" + }, + "title": "The list of required members that are used to establish the private link connection.", + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "title": "The list of required zone names for the private DNS resource name", + "readOnly": true + } + }, + "description": "Private link resource properties." + }, + "PrivateEndpointConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "The properties associated with the private endpoint connection." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "description": "Contains information about a private link resource." + }, + "PrivateEndpointConnectionProperties": { + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "x-nullable": false, + "title": "The provisioning state of the private endpoint connection.", + "enum": [ + "Succeeded", + "Updating", + "Failed" + ], + "x-ms-enum": { + "name": "PrivateEndpointConnectionProvisioningState", + "modelAsString": false, + "values": [ + { + "value": "Succeeded", + "description": "The connection status is final and is ready for use if Status is Approved." + }, + { + "value": "Updating", + "description": "The user has requested that the connection status be updated, but the update operation has not yet completed. You may not reference the connection when connecting the Batch account." + }, + { + "value": "Failed", + "description": "The user requested that the connection be updated and it failed. You may retry the update operation." + } + ] + } + }, + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "title": "The ARM resource identifier of the private endpoint." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "title": "The private link service connection state of the private endpoint connection." + } + }, + "description": "Private endpoint connection properties." + }, + "PrivateEndpoint": { + "properties": { + "id": { + "type": "string", + "title": "The ARM resource identifier of the private endpoint. This is of the form /subscriptions/{subscription}/resourceGroups/{group}/providers/Microsoft.Network/privateEndpoints/{privateEndpoint}.", + "readOnly": true + } + }, + "description": "The private endpoint of the private endpoint connection." + }, + "PrivateLinkServiceConnectionState": { + "properties": { + "status": { + "$ref": "#/definitions/PrivateLinkServiceConnectionStatus", + "title": "The status for the private endpoint connection of Batch account" + }, + "description": { + "type": "string", + "title": "Description of the private Connection state" + }, + "actionRequired": { + "type": "string", + "title": "Action required on the private connection state", + "readOnly": true + } + }, + "required": [ + "status" + ], + "description": "The private link service connection state of the private endpoint connection" + }, + "PrivateLinkServiceConnectionStatus": { + "type": "string", + "title": "The status of the Batch private endpoint connection", + "enum": [ + "Approved", + "Pending", + "Rejected", + "Disconnected" + ], + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStatus", + "modelAsString": false, + "values": [ + { + "value": "Approved", + "description": "The private endpoint connection is approved and can be used to access Batch account" + }, + { + "value": "Pending", + "description": "The private endpoint connection is pending and cannot be used to access Batch account" + }, + { + "value": "Rejected", + "description": "The private endpoint connection is rejected and cannot be used to access Batch account" + }, + { + "value": "Disconnected", + "description": "The private endpoint connection is disconnected and cannot be used to access Batch account" + } + ] + } + }, + "Pool": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PoolProperties", + "description": "The properties associated with the pool." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "description": "Contains information about a pool." + }, + "PoolProperties": { + "properties": { + "displayName": { + "type": "string", + "title": "The display name for the pool.", + "description": "The display name need not be unique and can contain any Unicode characters up to a maximum length of 1024." + }, + "lastModified": { + "type": "string", + "format": "date-time", + "title": "The last modified time of the pool.", + "description": "This is the last time at which the pool level data, such as the targetDedicatedNodes or autoScaleSettings, changed. It does not factor in node-level changes such as a compute node changing state.", + "readOnly": true + }, + "creationTime": { + "type": "string", + "format": "date-time", + "title": "The creation time of the pool.", + "readOnly": true + }, + "provisioningState": { + "type": "string", + "title": "The current state of the pool.", + "enum": [ + "Succeeded", + "Deleting" + ], + "x-ms-enum": { + "name": "PoolProvisioningState", + "modelAsString": false, + "values": [ + { + "value": "Succeeded", + "description": "The pool is available to run tasks subject to the availability of compute nodes." + }, + { + "value": "Deleting", + "description": "The user has requested that the pool be deleted, but the delete operation has not yet completed." + } + ] + }, + "readOnly": true + }, + "provisioningStateTransitionTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the pool entered its current state.", + "readOnly": true + }, + "allocationState": { + "type": "string", + "title": "Whether the pool is resizing.", + "enum": [ + "Steady", + "Resizing", + "Stopping" + ], + "x-ms-enum": { + "name": "AllocationState", + "modelAsString": false, + "values": [ + { + "value": "Steady", + "description": "The pool is not resizing. There are no changes to the number of nodes in the pool in progress. A pool enters this state when it is created and when no operations are being performed on the pool to change the number of nodes." + }, + { + "value": "Resizing", + "description": "The pool is resizing; that is, compute nodes are being added to or removed from the pool." + }, + { + "value": "Stopping", + "description": "The pool was resizing, but the user has requested that the resize be stopped, but the stop request has not yet been completed." + } + ] + }, + "readOnly": true + }, + "allocationStateTransitionTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the pool entered its current allocation state.", + "readOnly": true + }, + "vmSize": { + "type": "string", + "title": "The size of virtual machines in the pool. All VMs in a pool are the same size.", + "description": "For information about available sizes of virtual machines for Cloud Services pools (pools created with cloudServiceConfiguration), see Sizes for Cloud Services (https://azure.microsoft.com/documentation/articles/cloud-services-sizes-specs/). Batch supports all Cloud Services VM sizes except ExtraSmall. For information about available VM sizes for pools using images from the Virtual Machines Marketplace (pools created with virtualMachineConfiguration) see Sizes for Virtual Machines (Linux) (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) or Sizes for Virtual Machines (Windows) (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/). Batch supports all Azure VM sizes except STANDARD_A0 and those with premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series)." + }, + "deploymentConfiguration": { + "$ref": "#/definitions/DeploymentConfiguration", + "title": "This property describes how the pool nodes will be deployed - using Cloud Services or Virtual Machines.", + "description": "Using CloudServiceConfiguration specifies that the nodes should be creating using Azure Cloud Services (PaaS), while VirtualMachineConfiguration uses Azure Virtual Machines (IaaS)." + }, + "currentDedicatedNodes": { + "type": "integer", + "format": "int32", + "title": "The number of compute nodes currently in the pool.", + "readOnly": true + }, + "currentLowPriorityNodes": { + "type": "integer", + "format": "int32", + "title": "The number of low priority compute nodes currently in the pool.", + "readOnly": true + }, + "scaleSettings": { + "$ref": "#/definitions/ScaleSettings", + "title": "Settings which configure the number of nodes in the pool." + }, + "autoScaleRun": { + "$ref": "#/definitions/AutoScaleRun", + "title": "The results and errors from the last execution of the autoscale formula.", + "description": "This property is set only if the pool automatically scales, i.e. autoScaleSettings are used.", + "readOnly": true + }, + "interNodeCommunication": { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "InterNodeCommunicationState", + "modelAsString": false, + "values": [ + { + "value": "Enabled", + "description": "Enable network communication between virtual machines." + }, + { + "value": "Disabled", + "description": "Disable network communication between virtual machines." + } + ] + }, + "title": "Whether the pool permits direct communication between nodes.", + "description": "This imposes restrictions on which nodes can be assigned to the pool. Enabling this value can reduce the chance of the requested number of nodes to be allocated in the pool. If not specified, this value defaults to 'Disabled'." + }, + "networkConfiguration": { + "$ref": "#/definitions/NetworkConfiguration", + "title": "The network configuration for the pool." + }, + "maxTasksPerNode": { + "type": "integer", + "format": "int32", + "title": "The maximum number of tasks that can run concurrently on a single compute node in the pool.", + "description": "The default value is 1. The maximum value is the smaller of 4 times the number of cores of the vmSize of the pool or 256." + }, + "taskSchedulingPolicy": { + "$ref": "#/definitions/TaskSchedulingPolicy", + "title": "How tasks are distributed across compute nodes in a pool.", + "description": "If not specified, the default is spread." + }, + "userAccounts": { + "type": "array", + "items": { + "$ref": "#/definitions/UserAccount" + }, + "title": "The list of user accounts to be created on each node in the pool." + }, + "metadata": { + "type": "array", + "items": { + "$ref": "#/definitions/MetadataItem" + }, + "title": "A list of name-value pairs associated with the pool as metadata.", + "description": "The Batch service does not assign any meaning to metadata; it is solely for the use of user code." + }, + "startTask": { + "$ref": "#/definitions/StartTask", + "title": "A task specified to run on each compute node as it joins the pool.", + "description": "In an PATCH (update) operation, this property can be set to an empty object to remove the start task from the pool." + }, + "certificates": { + "type": "array", + "items": { + "$ref": "#/definitions/CertificateReference" + }, + "title": "The list of certificates to be installed on each compute node in the pool.", + "description": "For Windows compute nodes, the Batch service installs the certificates to the specified certificate store and location. For Linux compute nodes, the certificates are stored in a directory inside the task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the task to query for this location. For certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and certificates are placed in that directory." + }, + "applicationPackages": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationPackageReference" + }, + "title": "The list of application packages to be installed on each compute node in the pool.", + "description": "Changes to application package references affect all new compute nodes joining the pool, but do not affect compute nodes that are already in the pool until they are rebooted or reimaged. There is a maximum of 10 application package references on any given pool." + }, + "applicationLicenses": { + "type": "array", + "items": { + "type": "string" + }, + "title": "The list of application licenses the Batch service will make available on each compute node in the pool.", + "description": "The list of application licenses must be a subset of available Batch service application licenses. If a license is requested which is not supported, pool creation will fail." + }, + "resizeOperationStatus": { + "$ref": "#/definitions/ResizeOperationStatus", + "title": "Contains details about the current or last completed resize operation.", + "readOnly": true + }, + "mountConfiguration": { + "type": "array", + "items": { + "$ref": "#/definitions/MountConfiguration" + }, + "title": "A list of file systems to mount on each node in the pool.", + "description": "This supports Azure Files, NFS, CIFS/SMB, and Blobfuse." + } + }, + "description": "Pool properties." + }, + "DeploymentConfiguration": { + "properties": { + "cloudServiceConfiguration": { + "$ref": "#/definitions/CloudServiceConfiguration", + "title": "The cloud service configuration for the pool.", + "description": "This property and virtualMachineConfiguration are mutually exclusive and one of the properties must be specified. This property cannot be specified if the Batch account was created with its poolAllocationMode property set to 'UserSubscription'." + }, + "virtualMachineConfiguration": { + "$ref": "#/definitions/VirtualMachineConfiguration", + "title": "The virtual machine configuration for the pool.", + "description": "This property and cloudServiceConfiguration are mutually exclusive and one of the properties must be specified." + } + }, + "title": "Deployment configuration properties." + }, + "ScaleSettings": { + "properties": { + "fixedScale": { + "$ref": "#/definitions/FixedScaleSettings", + "title": "Fixed scale settings for the pool.", + "description": "This property and autoScale are mutually exclusive and one of the properties must be specified." + }, + "autoScale": { + "$ref": "#/definitions/AutoScaleSettings", + "title": "AutoScale settings for the pool.", + "description": "This property and fixedScale are mutually exclusive and one of the properties must be specified." + } + }, + "title": "Scale settings for the pool", + "description": "Defines the desired size of the pool. This can either be 'fixedScale' where the requested targetDedicatedNodes is specified, or 'autoScale' which defines a formula which is periodically reevaluated. If this property is not specified, the pool will have a fixed scale with 0 targetDedicatedNodes." + }, + "AutoScaleSettings": { + "properties": { + "formula": { + "type": "string", + "title": "A formula for the desired number of compute nodes in the pool.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/azure/batch/batch-automatic-scaling", + "description": "Create an automatic scaling formula for scaling compute nodes in a Batch pool" + } + }, + "evaluationInterval": { + "type": "string", + "format": "duration", + "title": "The time interval at which to automatically adjust the pool size according to the autoscale formula.", + "description": "If omitted, the default value is 15 minutes (PT15M)." + } + }, + "required": [ + "formula" + ], + "title": "AutoScale settings for the pool." + }, + "FixedScaleSettings": { + "properties": { + "resizeTimeout": { + "type": "string", + "format": "duration", + "title": "The timeout for allocation of compute nodes to the pool.", + "description": "The default value is 15 minutes. Timeout values use ISO 8601 format. For example, use PT10M for 10 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service rejects the request with an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request)." + }, + "targetDedicatedNodes": { + "type": "integer", + "format": "int32", + "title": "The desired number of dedicated compute nodes in the pool.", + "description": "At least one of targetDedicatedNodes, targetLowPriorityNodes must be set." + }, + "targetLowPriorityNodes": { + "type": "integer", + "format": "int32", + "title": "The desired number of low-priority compute nodes in the pool.", + "description": "At least one of targetDedicatedNodes, targetLowPriorityNodes must be set." + }, + "nodeDeallocationOption": { + "title": "Determines what to do with a node and its running task(s) if the pool size is decreasing.", + "description": "If omitted, the default value is Requeue.", + "$ref": "#/definitions/ComputeNodeDeallocationOption" + } + }, + "title": "Fixed scale settings for the pool." + }, + "ComputeNodeDeallocationOption": { + "type": "string", + "title": "Determines what to do with a node and its running task(s) after it has been selected for deallocation.", + "enum": [ + "Requeue", + "Terminate", + "TaskCompletion", + "RetainedData" + ], + "x-ms-enum": { + "name": "ComputeNodeDeallocationOption", + "modelAsString": false, + "values": [ + { + "value": "Requeue", + "description": "Terminate running task processes and requeue the tasks. The tasks will run again when a node is available. Remove nodes as soon as tasks have been terminated." + }, + { + "value": "Terminate", + "description": "Terminate running tasks. The tasks will be completed with failureInfo indicating that they were terminated, and will not run again. Remove nodes as soon as tasks have been terminated." + }, + { + "value": "TaskCompletion", + "description": "Allow currently running tasks to complete. Schedule no new tasks while waiting. Remove nodes when all tasks have completed." + }, + { + "value": "RetainedData", + "description": "Allow currently running tasks to complete, then wait for all task data retention periods to expire. Schedule no new tasks while waiting. Remove nodes when all task retention periods have expired." + } + ] + } + }, + "CertificateReference": { + "properties": { + "id": { + "type": "string", + "title": "The fully qualified ID of the certificate to install on the pool. This must be inside the same batch account as the pool." + }, + "storeLocation": { + "type": "string", + "title": "The location of the certificate store on the compute node into which to install the certificate.", + "description": "The default value is currentUser. This property is applicable only for pools configured with Windows nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows image reference). For Linux compute nodes, the certificates are stored in a directory inside the task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the task to query for this location. For certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and certificates are placed in that directory.", + "enum": [ + "CurrentUser", + "LocalMachine" + ], + "x-ms-enum": { + "name": "CertificateStoreLocation", + "modelAsString": false, + "values": [ + { + "value": "CurrentUser", + "description": "Certificates should be installed to the CurrentUser certificate store." + }, + { + "value": "LocalMachine", + "description": "Certificates should be installed to the LocalMachine certificate store." + } + ] + } + }, + "storeName": { + "type": "string", + "title": "The name of the certificate store on the compute node into which to install the certificate.", + "description": "This property is applicable only for pools configured with Windows nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows image reference). Common store names include: My, Root, CA, Trust, Disallowed, TrustedPeople, TrustedPublisher, AuthRoot, AddressBook, but any custom store name can also be used. The default value is My." + }, + "visibility": { + "type": "array", + "items": { + "type": "string", + "x-nullable": false, + "enum": [ + "StartTask", + "Task", + "RemoteUser" + ], + "x-ms-enum": { + "name": "CertificateVisibility", + "modelAsString": false, + "values": [ + { + "value": "StartTask", + "description": "The certificate should be visible to the user account under which the start task is run. Note that if AutoUser Scope is Pool for both the StartTask and a Task, this certificate will be visible to the Task as well." + }, + { + "value": "Task", + "description": "The certificate should be visible to the user accounts under which job tasks are run." + }, + { + "value": "RemoteUser", + "description": "The certificate should be visible to the user accounts under which users remotely access the node." + } + ] + } + }, + "title": "Which user accounts on the compute node should have access to the private data of the certificate." + } + }, + "required": [ + "id" + ], + "title": "A reference to a certificate to be installed on compute nodes in a pool. This must exist inside the same account as the pool." + }, + "ApplicationPackageReference": { + "properties": { + "id": { + "type": "string", + "title": "The ID of the application package to install. This must be inside the same batch account as the pool. This can either be a reference to a specific version or the default version if one exists." + }, + "version": { + "type": "string", + "title": "The version of the application to deploy. If omitted, the default version is deployed.", + "description": "If this is omitted, and no default version is specified for this application, the request fails with the error code InvalidApplicationPackageReferences. If you are calling the REST API directly, the HTTP status code is 409." + } + }, + "title": "Link to an application package inside the batch account", + "required": [ + "id" + ] + }, + "ResizeError": { + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ResizeError" + }, + "title": "Additional details about the error." + } + }, + "title": "An error that occurred when resizing a pool.", + "required": [ + "code", + "message" + ] + }, + "AutoScaleRunError": { + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/AutoScaleRunError" + }, + "title": "Additional details about the error." + } + }, + "title": "An error that occurred when autoscaling a pool.", + "required": [ + "code", + "message" + ] + }, + "AutoScaleRun": { + "properties": { + "evaluationTime": { + "type": "string", + "format": "date-time", + "title": "The time at which the autoscale formula was last evaluated." + }, + "results": { + "type": "string", + "title": "The final values of all variables used in the evaluation of the autoscale formula.", + "description": "Each variable value is returned in the form $variable=value, and variables are separated by semicolons." + }, + "error": { + "$ref": "#/definitions/AutoScaleRunError", + "title": "Details of the error encountered evaluating the autoscale formula on the pool, if the evaluation was unsuccessful." + } + }, + "required": [ + "evaluationTime" + ], + "title": "The results and errors from an execution of a pool autoscale formula." + }, + "VirtualMachineConfiguration": { + "properties": { + "imageReference": { + "$ref": "#/definitions/ImageReference", + "title": "A reference to the Azure Virtual Machines Marketplace Image or the custom Virtual Machine Image to use." + }, + "nodeAgentSkuId": { + "type": "string", + "title": "The SKU of the Batch node agent to be provisioned on compute nodes in the pool.", + "description": "The Batch node agent is a program that runs on each node in the pool, and provides the command-and-control interface between the node and the Batch service. There are different implementations of the node agent, known as SKUs, for different operating systems. You must specify a node agent SKU which matches the selected image reference. To get the list of supported node agent SKUs along with their list of verified image references, see the 'List supported node agent SKUs' operation." + }, + "windowsConfiguration": { + "$ref": "#/definitions/WindowsConfiguration", + "title": "Windows operating system settings on the virtual machine.", + "description": "This property must not be specified if the imageReference specifies a Linux OS image." + }, + "dataDisks": { + "type": "array", + "items": { + "$ref": "#/definitions/DataDisk" + }, + "title": "The configuration for data disks attached to the compute nodes in the pool.", + "description": "This property must be specified if the compute nodes in the pool need to have empty data disks attached to them." + }, + "licenseType": { + "type": "string", + "title": "The type of on-premises license to be used when deploying the operating system.", + "description": "This only applies to images that contain the Windows operating system, and should only be used when you hold valid on-premises licenses for the nodes which will be deployed. If omitted, no on-premises licensing discount is applied. Values are:\n\n Windows_Server - The on-premises license is for Windows Server.\n Windows_Client - The on-premises license is for Windows Client.\n" + }, + "containerConfiguration": { + "$ref": "#/definitions/ContainerConfiguration", + "title": "The container configuration for the pool.", + "description": "If specified, setup is performed on each node in the pool to allow tasks to run in containers. All regular tasks and job manager tasks run on this pool must specify the containerSettings property, and all other tasks may specify it." + }, + "diskEncryptionConfiguration": { + "$ref": "#/definitions/DiskEncryptionConfiguration", + "title": "The disk encryption configuration for the pool.", + "description": "If specified, encryption is performed on each node in the pool during node provisioning." + } + }, + "required": [ + "imageReference", + "nodeAgentSkuId" + ], + "title": "The configuration for compute nodes in a pool based on the Azure Virtual Machines infrastructure." + }, + "ContainerRegistry": { + "properties": { + "registryServer": { + "type": "string", + "title": "The registry URL.", + "description": "If omitted, the default is \"docker.io\"." + }, + "username": { + "type": "string", + "x-ms-client-name": "userName", + "title": "The user name to log into the registry server." + }, + "password": { + "type": "string", + "title": "The password to log into the registry server." + } + }, + "required": [ + "username", + "password" + ], + "title": "A private container registry." + }, + "DiskEncryptionConfiguration": { + "properties": { + "targets": { + "type": "array", + "items": { + "type": "string", + "x-nullable": false, + "title": "The disks to encrypt on each compute node.", + "description": "If omitted, no disks on the compute nodes in the pool will be encrypted.", + "enum": [ + "OsDisk", + "TemporaryDisk" + ], + "x-ms-enum": { + "name": "DiskEncryptionTarget", + "modelAsString": false, + "values": [ + { + "value": "OsDisk", + "description": "The OS Disk on the compute node is encrypted.", + "name": "OsDisk" + }, + { + "value": "TemporaryDisk", + "description": "The temporary disk on the compute node is encrypted. On Linux this encryption applies to other partitions (such as those on mounted data disks) when encryption occurs at boot time.", + "name": "TemporaryDisk" + } + ] + } + }, + "title": "The list of disk targets Batch Service will encrypt on the compute node", + "description": "On Linux pool, only \"TemporaryDisk\" is supported; on Windows pool, \"OsDisk\" and \"TemporaryDisk\" must be specified." + } + }, + "description": "The disk encryption configuration applied on compute nodes in the pool. Disk encryption configuration is not supported on Linux pool created with Virtual Machine Image or Shared Image Gallery Image." + }, + "ContainerConfiguration": { + "properties": { + "type": { + "type": "string", + "title": "The container technology to be used.", + "enum": [ + "DockerCompatible" + ], + "x-ms-enum": { + "name": "ContainerType", + "modelAsString": false, + "values": [ + { + "value": "DockerCompatible", + "description": "A Docker compatible container technology will be used to launch the containers." + } + ] + } + }, + "containerImageNames": { + "type": "array", + "items": { + "type": "string" + }, + "title": "The collection of container image names.", + "description": "This is the full image reference, as would be specified to \"docker pull\". An image will be sourced from the default Docker registry unless the image is fully qualified with an alternative registry." + }, + "containerRegistries": { + "type": "array", + "items": { + "$ref": "#/definitions/ContainerRegistry" + }, + "title": "Additional private registries from which containers can be pulled.", + "description": "If any images must be downloaded from a private registry which requires credentials, then those credentials must be provided here." + } + }, + "required": [ + "type" + ], + "title": "The configuration for container-enabled pools." + }, + "WindowsConfiguration": { + "properties": { + "enableAutomaticUpdates": { + "type": "boolean", + "title": "Whether automatic updates are enabled on the virtual machine.", + "description": "If omitted, the default value is true." + } + }, + "title": "Windows operating system settings to apply to the virtual machine." + }, + "ImageReference": { + "properties": { + "publisher": { + "type": "string", + "title": "The publisher of the Azure Virtual Machines Marketplace image.", + "description": "For example, Canonical or MicrosoftWindowsServer." + }, + "offer": { + "type": "string", + "title": "The offer type of the Azure Virtual Machines Marketplace image.", + "description": "For example, UbuntuServer or WindowsServer." + }, + "sku": { + "type": "string", + "title": "The SKU of the Azure Virtual Machines Marketplace image.", + "description": "For example, 18.04-LTS or 2019-Datacenter." + }, + "version": { + "type": "string", + "title": "The version of the Azure Virtual Machines Marketplace image.", + "description": "A value of 'latest' can be specified to select the latest version of an image. If omitted, the default is 'latest'." + }, + "id": { + "type": "string", + "title": "The ARM resource identifier of the Shared Image Gallery Image. Compute Nodes in the Pool will be created using this Image Id. This is of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageDefinitionName}/versions/{versionId}.", + "description": "This property is mutually exclusive with other properties. The Shared Image Gallery image must have replicas in the same region as the Azure Batch account. For information about the firewall settings for the Batch node agent to communicate with the Batch service see https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration." + } + }, + "title": "A reference to an Azure Virtual Machines Marketplace image or the Azure Image resource of a custom Virtual Machine. To get the list of all imageReferences verified by Azure Batch, see the 'List supported node agent SKUs' operation." + }, + "DataDisk": { + "properties": { + "lun": { + "type": "integer", + "format": "int32", + "title": "The logical unit number.", + "description": "The lun is used to uniquely identify each data disk. If attaching multiple disks, each should have a distinct lun." + }, + "caching": { + "$ref": "#/definitions/CachingType", + "title": "The type of caching to be enabled for the data disks.", + "description": "Values are:\n\n none - The caching mode for the disk is not enabled.\n readOnly - The caching mode for the disk is read only.\n readWrite - The caching mode for the disk is read and write.\n\n The default value for caching is none. For information about the caching options see: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/." + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "title": "The initial disk size in GB when creating new data disk." + }, + "storageAccountType": { + "title": "The storage account type to be used for the data disk.", + "description": "If omitted, the default is \"Standard_LRS\". Values are:\n\n Standard_LRS - The data disk should use standard locally redundant storage.\n Premium_LRS - The data disk should use premium locally redundant storage.", + "$ref": "#/definitions/StorageAccountType" + } + }, + "required": [ + "lun", + "diskSizeGB" + ], + "description": "Settings which will be used by the data disks associated to Compute Nodes in the Pool. When using attached data disks, you need to mount and format the disks from within a VM to use them." + }, + "TaskSchedulingPolicy": { + "properties": { + "nodeFillType": { + "type": "string", + "title": "How tasks should be distributed across compute nodes.", + "enum": [ + "Spread", + "Pack" + ], + "x-ms-enum": { + "name": "ComputeNodeFillType", + "modelAsString": false, + "values": [ + { + "value": "Spread", + "description": "Tasks should be assigned evenly across all nodes in the pool." + }, + { + "value": "Pack", + "description": "As many tasks as possible (maxTasksPerNode) should be assigned to each node in the pool before any tasks are assigned to the next node in the pool." + } + ] + } + } + }, + "required": [ + "nodeFillType" + ], + "title": "Specifies how tasks should be distributed across compute nodes." + }, + "LinuxUserConfiguration": { + "properties": { + "uid": { + "type": "integer", + "format": "int32", + "title": "The user ID of the user account.", + "description": "The uid and gid properties must be specified together or not at all. If not specified the underlying operating system picks the uid." + }, + "gid": { + "type": "integer", + "format": "int32", + "title": "The group ID for the user account.", + "description": "The uid and gid properties must be specified together or not at all. If not specified the underlying operating system picks the gid." + }, + "sshPrivateKey": { + "type": "string", + "title": "The SSH private key for the user account.", + "description": "The private key must not be password protected. The private key is used to automatically configure asymmetric-key based authentication for SSH between nodes in a Linux pool when the pool's enableInterNodeCommunication property is true (it is ignored if enableInterNodeCommunication is false). It does this by placing the key pair into the user's .ssh directory. If not specified, password-less SSH is not configured between nodes (no modification of the user's .ssh directory is done)." + } + }, + "title": "Properties used to create a user account on a Linux node." + }, + "WindowsUserConfiguration": { + "properties": { + "loginMode": { + "type": "string", + "title": "Login mode for user", + "description": "Specifies login mode for the user. The default value for VirtualMachineConfiguration pools is interactive mode and for CloudServiceConfiguration pools is batch mode.", + "enum": [ + "Batch", + "Interactive" + ], + "x-ms-enum": { + "name": "LoginMode", + "modelAsString": false, + "values": [ + { + "value": "Batch", + "description": "The LOGON32_LOGON_BATCH Win32 login mode. The batch login mode is recommended for long running parallel processes." + }, + { + "value": "Interactive", + "description": "The LOGON32_LOGON_INTERACTIVE Win32 login mode. Some applications require having permissions associated with the interactive login mode. If this is the case for an application used in your task, then this option is recommended." + } + ] + } + } + }, + "title": "Properties used to create a user account on a Windows node." + }, + "UserAccount": { + "properties": { + "name": { + "type": "string", + "title": "The name of the user account." + }, + "password": { + "type": "string", + "title": "The password for the user account." + }, + "elevationLevel": { + "title": "The elevation level of the user account.", + "description": "nonAdmin - The auto user is a standard user without elevated access. admin - The auto user is a user with elevated access and operates with full Administrator permissions. The default value is nonAdmin.", + "$ref": "#/definitions/ElevationLevel" + }, + "linuxUserConfiguration": { + "title": "The Linux-specific user configuration for the user account.", + "description": "This property is ignored if specified on a Windows pool. If not specified, the user is created with the default options.", + "$ref": "#/definitions/LinuxUserConfiguration" + }, + "windowsUserConfiguration": { + "title": "The Windows-specific user configuration for the user account.", + "description": "This property can only be specified if the user is on a Windows pool. If not specified and on a Windows pool, the user is created with the default options.", + "$ref": "#/definitions/WindowsUserConfiguration" + } + }, + "required": [ + "name", + "password" + ], + "title": "Properties used to create a user on an Azure Batch node." + }, + "StartTask": { + "properties": { + "commandLine": { + "type": "string", + "title": "The command line of the start task.", + "description": "The command line does not run under a shell, and therefore cannot take advantage of shell features such as environment variable expansion. If you want to take advantage of such features, you should invoke the shell in the command line, for example using \"cmd /c MyCommand\" in Windows or \"/bin/sh -c MyCommand\" in Linux. Required if any other properties of the startTask are specified." + }, + "resourceFiles": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceFile" + }, + "title": "A list of files that the Batch service will download to the compute node before running the command line." + }, + "environmentSettings": { + "type": "array", + "items": { + "$ref": "#/definitions/EnvironmentSetting" + }, + "title": "A list of environment variable settings for the start task." + }, + "userIdentity": { + "$ref": "#/definitions/UserIdentity", + "title": "The user identity under which the start task runs.", + "description": "If omitted, the task runs as a non-administrative user unique to the task." + }, + "maxTaskRetryCount": { + "type": "integer", + "format": "int32", + "title": "The maximum number of times the task may be retried.", + "description": "The Batch service retries a task if its exit code is nonzero. Note that this value specifically controls the number of retries. The Batch service will try the task once, and may then retry up to this limit. For example, if the maximum retry count is 3, Batch tries the task up to 4 times (one initial try and 3 retries). If the maximum retry count is 0, the Batch service does not retry the task. If the maximum retry count is -1, the Batch service retries the task without limit." + }, + "waitForSuccess": { + "type": "boolean", + "title": "Whether the Batch service should wait for the start task to complete successfully (that is, to exit with exit code 0) before scheduling any tasks on the compute node.", + "description": "If true and the start task fails on a compute node, the Batch service retries the start task up to its maximum retry count (maxTaskRetryCount). If the task has still not completed successfully after all retries, then the Batch service marks the compute node unusable, and will not schedule tasks to it. This condition can be detected via the node state and scheduling error detail. If false, the Batch service will not wait for the start task to complete. In this case, other tasks can start executing on the compute node while the start task is still running; and even if the start task fails, new tasks will continue to be scheduled on the node. The default is true." + }, + "containerSettings": { + "$ref": "#/definitions/TaskContainerSettings", + "title": "The settings for the container under which the start task runs.", + "description": "When this is specified, all directories recursively below the AZ_BATCH_NODE_ROOT_DIR (the root of Azure Batch directories on the node) are mapped into the container, all task environment variables are mapped into the container, and the task command line is executed in the container." + } + }, + "title": "A task which is run when a compute node joins a pool in the Azure Batch service, or when the compute node is rebooted or reimaged.", + "description": "In some cases the start task may be re-run even though the node was not rebooted. Due to this, start tasks should be idempotent and exit gracefully if the setup they're performing has already been done. Special care should be taken to avoid start tasks which create breakaway process or install/launch services from the start task working directory, as this will block Batch from being able to re-run the start task." + }, + "TaskContainerSettings": { + "properties": { + "containerRunOptions": { + "type": "string", + "title": "Additional options to the container create command.", + "description": "These additional options are supplied as arguments to the \"docker create\" command, in addition to those controlled by the Batch Service." + }, + "imageName": { + "type": "string", + "title": "The image to use to create the container in which the task will run.", + "description": "This is the full image reference, as would be specified to \"docker pull\". If no tag is provided as part of the image name, the tag \":latest\" is used as a default." + }, + "registry": { + "$ref": "#/definitions/ContainerRegistry", + "title": "The private registry which contains the container image.", + "description": "This setting can be omitted if was already provided at pool creation." + }, + "workingDirectory": { + "type": "string", + "title": "A flag to indicate where the container task working directory is. The default is 'taskWorkingDirectory'.", + "enum": [ + "TaskWorkingDirectory", + "ContainerImageDefault" + ], + "x-ms-enum": { + "name": "ContainerWorkingDirectory", + "modelAsString": false, + "values": [ + { + "value": "TaskWorkingDirectory", + "description": "Use the standard Batch service task working directory, which will contain the Task resource files populated by Batch." + }, + { + "value": "ContainerImageDefault", + "description": "Using container image defined working directory. Beware that this directory will not contain the resource files downloaded by Batch." + } + ] + } + } + }, + "required": [ + "imageName" + ], + "title": "The container settings for a task." + }, + "ResourceFile": { + "properties": { + "autoStorageContainerName": { + "type": "string", + "title": "The storage container name in the auto storage account.", + "description": "The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified." + }, + "storageContainerUrl": { + "type": "string", + "title": "The URL of the blob container within Azure Blob Storage.", + "description": "The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified. This URL must be readable and listable using anonymous access; that is, the Batch service does not present any credentials when downloading the blob. There are two ways to get such a URL for a blob in Azure storage: include a Shared Access Signature (SAS) granting read and list permissions on the blob, or set the ACL for the blob or its container to allow public access." + }, + "httpUrl": { + "type": "string", + "title": "The URL of the file to download.", + "description": "The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified. If the URL is Azure Blob Storage, it must be readable using anonymous access; that is, the Batch service does not present any credentials when downloading the blob. There are two ways to get such a URL for a blob in Azure storage: include a Shared Access Signature (SAS) granting read permissions on the blob, or set the ACL for the blob or its container to allow public access." + }, + "blobPrefix": { + "type": "string", + "title": "The blob prefix to use when downloading blobs from an Azure Storage container. Only the blobs whose names begin with the specified prefix will be downloaded.", + "description": "The property is valid only when autoStorageContainerName or storageContainerUrl is used. This prefix can be a partial filename or a subdirectory. If a prefix is not specified, all the files in the container will be downloaded." + }, + "filePath": { + "type": "string", + "title": "The location on the compute node to which to download the file, relative to the task's working directory.", + "description": "If the httpUrl property is specified, the filePath is required and describes the path which the file will be downloaded to, including the filename. Otherwise, if the autoStorageContainerName or storageContainerUrl property is specified, filePath is optional and is the directory to download the files to. In the case where filePath is used as a directory, any directory structure already associated with the input data will be retained in full and appended to the specified filePath directory. The specified relative path cannot break out of the task's working directory (for example by using '..')." + }, + "fileMode": { + "type": "string", + "title": "The file permission mode attribute in octal format.", + "description": "This property applies only to files being downloaded to Linux compute nodes. It will be ignored if it is specified for a resourceFile which will be downloaded to a Windows node. If this property is not specified for a Linux node, then a default value of 0770 is applied to the file." + } + }, + "title": "A single file or multiple files to be downloaded to a compute node." + }, + "EnvironmentSetting": { + "properties": { + "name": { + "type": "string", + "title": "The name of the environment variable." + }, + "value": { + "type": "string", + "title": "The value of the environment variable." + } + }, + "required": [ + "name" + ], + "title": "An environment variable to be set on a task process." + }, + "UserIdentity": { + "properties": { + "userName": { + "type": "string", + "title": "The name of the user identity under which the task is run.", + "description": "The userName and autoUser properties are mutually exclusive; you must specify one but not both." + }, + "autoUser": { + "$ref": "#/definitions/AutoUserSpecification", + "title": "The auto user under which the task is run.", + "description": "The userName and autoUser properties are mutually exclusive; you must specify one but not both." + } + }, + "title": "The definition of the user identity under which the task is run.", + "description": "Specify either the userName or autoUser property, but not both." + }, + "AutoUserSpecification": { + "properties": { + "scope": { + "type": "string", + "title": "The scope for the auto user", + "description": "The default value is Pool. If the pool is running Windows a value of Task should be specified if stricter isolation between tasks is required. For example, if the task mutates the registry in a way which could impact other tasks, or if certificates have been specified on the pool which should not be accessible by normal tasks but should be accessible by start tasks.", + "enum": [ + "Task", + "Pool" + ], + "x-ms-enum": { + "name": "AutoUserScope", + "modelAsString": false, + "values": [ + { + "value": "Task", + "description": "Specifies that the service should create a new user for the task." + }, + { + "value": "Pool", + "description": "Specifies that the task runs as the common auto user account which is created on every node in a pool." + } + ] + } + }, + "elevationLevel": { + "title": "The elevation level of the auto user.", + "description": "The default value is nonAdmin.", + "$ref": "#/definitions/ElevationLevel" + } + }, + "title": "Specifies the parameters for the auto user that runs a task on the Batch service." + }, + "ElevationLevel": { + "type": "string", + "title": "The elevation level of the user.", + "enum": [ + "NonAdmin", + "Admin" + ], + "x-ms-enum": { + "name": "ElevationLevel", + "modelAsString": false, + "values": [ + { + "value": "NonAdmin", + "description": "The user is a standard user without elevated access." + }, + { + "value": "Admin", + "description": "The user is a user with elevated access and operates with full Administrator permissions." + } + ] + } + }, + "StorageAccountType": { + "type": "string", + "title": "The storage account type for use in creating data disks.", + "enum": [ + "Standard_LRS", + "Premium_LRS" + ], + "x-ms-enum": { + "name": "StorageAccountType", + "modelAsString": false, + "values": [ + { + "value": "Standard_LRS", + "description": "The data disk should use standard locally redundant storage." + }, + { + "value": "Premium_LRS", + "description": "The data disk should use premium locally redundant storage." + } + ] + } + }, + "CachingType": { + "type": "string", + "title": "The type of caching to enable for the disk.", + "enum": [ + "None", + "ReadOnly", + "ReadWrite" + ], + "x-ms-enum": { + "name": "CachingType", + "modelAsString": false, + "values": [ + { + "value": "None", + "description": "The caching mode for the disk is not enabled." + }, + { + "value": "ReadOnly", + "description": "The caching mode for the disk is read only." + }, + { + "value": "ReadWrite", + "description": "The caching mode for the disk is read and write." + } + ] + } + }, + "IPAddressProvisioningType": { + "type": "string", + "title": "The provisioning type for Public IP Addresses for the Batch Pool.", + "enum": [ + "BatchManaged", + "UserManaged", + "NoPublicIPAddresses" + ], + "x-ms-enum": { + "name": "IPAddressProvisioningType", + "modelAsString": false, + "values": [ + { + "value": "BatchManaged", + "description": "A public IP will be created and managed by Batch. There may be multiple public IPs depending on the size of the Pool." + }, + { + "value": "UserManaged", + "description": "Public IPs are provided by the user and will be used to provision the Compute Nodes." + }, + { + "value": "NoPublicIPAddresses", + "description": "No public IP Address will be created for the Compute Nodes in the Pool." + } + ] + } + }, + "PublicIPAddressConfiguration": { + "properties": { + "provision": { + "$ref": "#/definitions/IPAddressProvisioningType", + "title": "The provisioning type for Public IP Addresses for the pool", + "description": "The default value is BatchManaged" + }, + "ipAddressIds": { + "type": "array", + "items": { + "type": "string" + }, + "title": "The list of public IPs which the Batch service will use when provisioning Compute Nodes.", + "description": "The number of IPs specified here limits the maximum size of the Pool - 50 dedicated nodes or 20 low-priority nodes can be allocated for each public IP. For example, a pool needing 150 dedicated VMs would need at least 3 public IPs specified. Each element of this collection is of the form: /subscriptions/{subscription}/resourceGroups/{group}/providers/Microsoft.Network/publicIPAddresses/{ip}." + } + }, + "description": "The public IP Address configuration of the networking configuration of a Pool." + }, + "NetworkConfiguration": { + "properties": { + "subnetId": { + "type": "string", + "title": "The ARM resource identifier of the virtual network subnet which the compute nodes of the pool will join. This is of the form /subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}.", + "description": "The virtual network must be in the same region and subscription as the Azure Batch account. The specified subnet should have enough free IP addresses to accommodate the number of nodes in the pool. If the subnet doesn't have enough free IP addresses, the pool will partially allocate compute nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule tasks on the compute nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the compute nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the compute nodes to unusable. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication. For pools created with a virtual machine configuration, enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. For pools created with a cloud service configuration, enable ports 10100, 20100, and 30100. Also enable outbound connections to Azure Storage on port 443. For cloudServiceConfiguration pools, only 'classic' VNETs are supported. For more details see: https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration", + "externalDocs": { + "url": "https://azure.microsoft.com/en-us/documentation/articles/role-based-access-built-in-roles/#classic-virtual-machine-contributor", + "description": "Setting up RBAC for Azure Batch VNets" + } + }, + "endpointConfiguration": { + "$ref": "#/definitions/PoolEndpointConfiguration", + "title": "The configuration for endpoints on compute nodes in the Batch pool.", + "description": "Pool endpoint configuration is only supported on pools with the virtualMachineConfiguration property." + }, + "publicIPAddressConfiguration": { + "$ref": "#/definitions/PublicIPAddressConfiguration", + "title": "The Public IPAddress configuration for Compute Nodes in the Batch Pool.", + "description": "This property is only supported on Pools with the virtualMachineConfiguration property." + } + }, + "description": "The network configuration for a pool." + }, + "CloudServiceConfiguration": { + "properties": { + "osFamily": { + "type": "string", + "title": "The Azure Guest OS family to be installed on the virtual machines in the pool.", + "description": "Possible values are: 2 - OS Family 2, equivalent to Windows Server 2008 R2 SP1. 3 - OS Family 3, equivalent to Windows Server 2012. 4 - OS Family 4, equivalent to Windows Server 2012 R2. 5 - OS Family 5, equivalent to Windows Server 2016. 6 - OS Family 6, equivalent to Windows Server 2019. For more information, see Azure Guest OS Releases (https://azure.microsoft.com/documentation/articles/cloud-services-guestos-update-matrix/#releases)." + }, + "osVersion": { + "type": "string", + "title": "The Azure Guest OS version to be installed on the virtual machines in the pool.", + "description": "The default value is * which specifies the latest operating system version for the specified OS family." + } + }, + "required": [ + "osFamily" + ], + "title": "The configuration for nodes in a pool based on the Azure Cloud Services platform." + }, + "MetadataItem": { + "properties": { + "name": { + "type": "string", + "title": "The name of the metadata item." + }, + "value": { + "type": "string", + "title": "The value of the metadata item." + } + }, + "required": [ + "name", + "value" + ], + "title": "A name-value pair associated with a Batch service resource.", + "description": "The Batch service does not assign any meaning to this metadata; it is solely for the use of user code." + }, + "ResizeOperationStatus": { + "properties": { + "targetDedicatedNodes": { + "type": "integer", + "format": "int32", + "title": "The desired number of dedicated compute nodes in the pool." + }, + "targetLowPriorityNodes": { + "type": "integer", + "format": "int32", + "title": "The desired number of low-priority compute nodes in the pool." + }, + "resizeTimeout": { + "type": "string", + "format": "duration", + "title": "The timeout for allocation of compute nodes to the pool or removal of compute nodes from the pool.", + "description": "The default value is 15 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service returns an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request)." + }, + "nodeDeallocationOption": { + "title": "Determines what to do with a node and its running task(s) if the pool size is decreasing.", + "description": "The default value is requeue.", + "$ref": "#/definitions/ComputeNodeDeallocationOption" + }, + "startTime": { + "type": "string", + "format": "date-time", + "title": "The time when this resize operation was started." + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/definitions/ResizeError" + }, + "title": "Details of any errors encountered while performing the last resize on the pool.", + "description": "This property is set only if an error occurred during the last pool resize, and only when the pool allocationState is Steady." + } + }, + "title": "Details about the current or last completed resize operation.", + "description": "Describes either the current operation (if the pool AllocationState is Resizing) or the previously completed operation (if the AllocationState is Steady)." + }, + "PoolEndpointConfiguration": { + "properties": { + "inboundNatPools": { + "type": "array", + "items": { + "$ref": "#/definitions/InboundNatPool" + }, + "title": "A list of inbound NAT pools that can be used to address specific ports on an individual compute node externally.", + "description": "The maximum number of inbound NAT pools per Batch pool is 5. If the maximum number of inbound NAT pools is exceeded the request fails with HTTP status code 400." + } + }, + "required": [ + "inboundNatPools" + ], + "title": "The endpoint configuration for a pool." + }, + "InboundNatPool": { + "properties": { + "name": { + "type": "string", + "title": "The name of the endpoint.", + "description": "The name must be unique within a Batch pool, can contain letters, numbers, underscores, periods, and hyphens. Names must start with a letter or number, must end with a letter, number, or underscore, and cannot exceed 77 characters. If any invalid values are provided the request fails with HTTP status code 400." + }, + "protocol": { + "type": "string", + "title": "The protocol of the endpoint.", + "enum": [ + "TCP", + "UDP" + ], + "x-ms-enum": { + "name": "InboundEndpointProtocol", + "modelAsString": false, + "values": [ + { + "value": "TCP", + "description": "Use TCP for the endpoint." + }, + { + "value": "UDP", + "description": "Use UDP for the endpoint." + } + ] + } + }, + "backendPort": { + "type": "integer", + "format": "int32", + "title": "The port number on the compute node.", + "description": "This must be unique within a Batch pool. Acceptable values are between 1 and 65535 except for 22, 3389, 29876 and 29877 as these are reserved. If any reserved values are provided the request fails with HTTP status code 400." + }, + "frontendPortRangeStart": { + "type": "integer", + "format": "int32", + "title": "The first port number in the range of external ports that will be used to provide inbound access to the backendPort on individual compute nodes.", + "description": "Acceptable values range between 1 and 65534 except ports from 50000 to 55000 which are reserved. All ranges within a pool must be distinct and cannot overlap. If any reserved or overlapping values are provided the request fails with HTTP status code 400." + }, + "frontendPortRangeEnd": { + "type": "integer", + "format": "int32", + "title": "The last port number in the range of external ports that will be used to provide inbound access to the backendPort on individual compute nodes.", + "description": "Acceptable values range between 1 and 65534 except ports from 50000 to 55000 which are reserved by the Batch service. All ranges within a pool must be distinct and cannot overlap. If any reserved or overlapping values are provided the request fails with HTTP status code 400." + }, + "networkSecurityGroupRules": { + "type": "array", + "title": "A list of network security group rules that will be applied to the endpoint.", + "description": "The maximum number of rules that can be specified across all the endpoints on a Batch pool is 25. If no network security group rules are specified, a default rule will be created to allow inbound access to the specified backendPort. If the maximum number of network security group rules is exceeded the request fails with HTTP status code 400.", + "items": { + "$ref": "#/definitions/NetworkSecurityGroupRule" + } + } + }, + "required": [ + "name", + "protocol", + "backendPort", + "frontendPortRangeStart", + "frontendPortRangeEnd" + ], + "title": "A inbound NAT pool that can be used to address specific ports on compute nodes in a Batch pool externally." + }, + "NetworkSecurityGroupRule": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "title": "The priority for this rule.", + "description": "Priorities within a pool must be unique and are evaluated in order of priority. The lower the number the higher the priority. For example, rules could be specified with order numbers of 150, 250, and 350. The rule with the order number of 150 takes precedence over the rule that has an order of 250. Allowed priorities are 150 to 4096. If any reserved or duplicate values are provided the request fails with HTTP status code 400." + }, + "access": { + "type": "string", + "title": "The action that should be taken for a specified IP address, subnet range or tag.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "NetworkSecurityGroupRuleAccess", + "modelAsString": false, + "values": [ + { + "value": "Allow", + "description": "Allow access." + }, + { + "value": "Deny", + "description": "Deny access." + } + ] + } + }, + "sourceAddressPrefix": { + "type": "string", + "title": "The source address prefix or tag to match for the rule.", + "description": "Valid values are a single IP address (i.e. 10.10.10.10), IP subnet (i.e. 192.168.1.0/24), default tag, or * (for all addresses). If any other values are provided the request fails with HTTP status code 400." + }, + "sourcePortRanges": { + "type": "array", + "items": { + "type": "string" + }, + "title": "The source port ranges to match for the rule.", + "description": "Valid values are '*' (for all ports 0 - 65535) or arrays of ports or port ranges (i.e. 100-200). The ports should in the range of 0 to 65535 and the port ranges or ports can't overlap. If any other values are provided the request fails with HTTP status code 400. Default value will be *." + } + }, + "required": [ + "priority", + "access", + "sourceAddressPrefix" + ], + "title": "A network security group rule to apply to an inbound endpoint." + }, + "ListPrivateLinkResourcesResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + }, + "description": "The collection of returned private link resources." + }, + "nextLink": { + "type": "string", + "description": "The continuation token." + } + }, + "description": "Values returned by the List operation." + }, + "ListPrivateEndpointConnectionsResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The collection of returned private endpoint connection." + }, + "nextLink": { + "type": "string", + "description": "The continuation token." + } + }, + "description": "Values returned by the List operation." + }, + "ListPoolsResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Pool" + }, + "description": "The collection of returned pools." + }, + "nextLink": { + "type": "string", + "description": "The continuation token." + } + }, + "description": "Values returned by the List operation." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody" + } + }, + "description": "An error response from the Batch service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + }, + "target": { + "type": "string", + "description": "The target of the particular error. For example, the name of the property in error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "description": "A list of additional details about the error." + } + }, + "description": "An error response from the Batch service." + }, + "Operation": { + "title": "A REST API operation", + "type": "object", + "properties": { + "name": { + "title": "The operation name.", + "description": "This is of the format {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "title": "The object that describes the operation.", + "properties": { + "provider": { + "title": "Friendly name of the resource provider.", + "type": "string" + }, + "operation": { + "title": "The operation type.", + "description": "For example: read, write, delete, or listKeys/action", + "type": "string" + }, + "resource": { + "title": "The resource type on which the operation is performed.", + "type": "string" + }, + "description": { + "title": "The friendly name of the operation", + "type": "string" + } + } + }, + "origin": { + "title": "The intended executor of the operation.", + "type": "string" + }, + "properties": { + "title": "Properties of the operation.", + "type": "object" + } + } + }, + "OperationListResult": { + "title": "Result of the request to list REST API operations. It contains a list of operations and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "title": "The list of operations supported by the resource provider." + }, + "nextLink": { + "type": "string", + "title": "The URL to get the next set of operation list results if there are any." + } + } + }, + "CheckNameAvailabilityParameters": { + "properties": { + "name": { + "type": "string", + "description": "The name to check for availability" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Batch/batchAccounts" + ], + "x-ms-enum": { + "name": "ResourceType", + "modelAsString": false, + "values": [ + { + "value": "Microsoft.Batch/batchAccounts", + "description": "The Batch account resource type.", + "name": "BatchAccounts" + } + ] + }, + "description": "The resource type." + } + }, + "required": [ + "name", + "type" + ], + "description": "Parameters for a check name availability request." + }, + "CheckNameAvailabilityResult": { + "properties": { + "nameAvailable": { + "readOnly": true, + "type": "boolean", + "description": "Gets a boolean value that indicates whether the name is available for you to use. If true, the name is available. If false, the name has already been taken or invalid and cannot be used." + }, + "reason": { + "readOnly": true, + "type": "string", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "x-ms-enum": { + "name": "NameAvailabilityReason", + "modelAsString": false, + "values": [ + { + "value": "Invalid", + "description": "The requested name is invalid." + }, + { + "value": "AlreadyExists", + "description": "The requested name is already in use." + } + ] + }, + "description": "Gets the reason that a Batch account name could not be used. The Reason element is only returned if NameAvailable is false." + }, + "message": { + "readOnly": true, + "type": "string", + "description": "Gets an error message explaining the Reason value in more detail." + } + }, + "description": "The CheckNameAvailability operation response." + }, + "MountConfiguration": { + "properties": { + "azureBlobFileSystemConfiguration": { + "$ref": "#/definitions/AzureBlobFileSystemConfiguration", + "title": "The Azure Storage Container to mount using blob FUSE on each node.", + "description": "This property is mutually exclusive with all other properties." + }, + "nfsMountConfiguration": { + "$ref": "#/definitions/NFSMountConfiguration", + "title": "The NFS file system to mount on each node.", + "description": "This property is mutually exclusive with all other properties." + }, + "cifsMountConfiguration": { + "$ref": "#/definitions/CIFSMountConfiguration", + "title": "The CIFS/SMB file system to mount on each node.", + "description": "This property is mutually exclusive with all other properties." + }, + "azureFileShareConfiguration": { + "$ref": "#/definitions/AzureFileShareConfiguration", + "title": "The Azure File Share to mount on each node.", + "description": "This property is mutually exclusive with all other properties." + } + }, + "title": "The file system to mount on each node." + }, + "AzureBlobFileSystemConfiguration": { + "properties": { + "accountName": { + "type": "string", + "title": "The Azure Storage Account name." + }, + "containerName": { + "type": "string", + "title": "The Azure Blob Storage Container name." + }, + "accountKey": { + "type": "string", + "title": "The Azure Storage Account key.", + "description": "This property is mutually exclusive with sasKey and one must be specified." + }, + "sasKey": { + "type": "string", + "title": "The Azure Storage SAS token.", + "description": "This property is mutually exclusive with accountKey and one must be specified." + }, + "blobfuseOptions": { + "type": "string", + "title": "Additional command line options to pass to the mount command.", + "description": "These are 'net use' options in Windows and 'mount' options in Linux." + }, + "relativeMountPath": { + "type": "string", + "title": "The relative path on the compute node where the file system will be mounted", + "description": "All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable." + } + }, + "required": [ + "accountName", + "containerName", + "relativeMountPath" + ], + "title": "Information used to connect to an Azure Storage Container using Blobfuse." + }, + "NFSMountConfiguration": { + "properties": { + "source": { + "type": "string", + "title": "The URI of the file system to mount." + }, + "relativeMountPath": { + "type": "string", + "title": "The relative path on the compute node where the file system will be mounted", + "description": "All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable." + }, + "mountOptions": { + "type": "string", + "title": "Additional command line options to pass to the mount command.", + "description": "These are 'net use' options in Windows and 'mount' options in Linux." + } + }, + "required": [ + "source", + "relativeMountPath" + ], + "title": "Information used to connect to an NFS file system." + }, + "CIFSMountConfiguration": { + "properties": { + "username": { + "type": "string", + "title": "The user to use for authentication against the CIFS file system." + }, + "source": { + "type": "string", + "title": "The URI of the file system to mount." + }, + "relativeMountPath": { + "type": "string", + "title": "The relative path on the compute node where the file system will be mounted", + "description": "All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable." + }, + "mountOptions": { + "type": "string", + "title": "Additional command line options to pass to the mount command.", + "description": "These are 'net use' options in Windows and 'mount' options in Linux." + }, + "password": { + "type": "string", + "title": "The password to use for authentication against the CIFS file system." + } + }, + "required": [ + "username", + "source", + "password", + "relativeMountPath" + ], + "title": "Information used to connect to a CIFS file system." + }, + "AzureFileShareConfiguration": { + "properties": { + "accountName": { + "type": "string", + "title": "The Azure Storage account name." + }, + "azureFileUrl": { + "type": "string", + "title": "The Azure Files URL.", + "description": "This is of the form 'https://{account}.file.core.windows.net/'." + }, + "accountKey": { + "type": "string", + "title": "The Azure Storage account key." + }, + "relativeMountPath": { + "type": "string", + "title": "The relative path on the compute node where the file system will be mounted", + "description": "All file systems are mounted relative to the Batch mounts directory, accessible via the AZ_BATCH_NODE_MOUNTS_DIR environment variable." + }, + "mountOptions": { + "type": "string", + "title": "Additional command line options to pass to the mount command.", + "description": "These are 'net use' options in Windows and 'mount' options in Linux." + } + }, + "required": [ + "accountName", + "azureFileUrl", + "accountKey", + "relativeMountPath" + ], + "title": "Information used to connect to an Azure Fileshare." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000)" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to be used with the HTTP request." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group that contains the Batch account.", + "x-ms-parameter-location": "method" + }, + "AccountNameParameter": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9]+$", + "minLength": 3, + "maxLength": 24, + "description": "The name of the Batch account.", + "x-ms-parameter-location": "method" + }, + "CertificateNameParameter": { + "name": "certificateName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[\\w]+-[\\w]+$", + "minLength": 5, + "maxLength": 45, + "description": "The identifier for the certificate. This must be made up of algorithm and thumbprint separated by a dash, and must match the certificate data in the request. For example SHA1-a3d1c5.", + "x-ms-parameter-location": "method" + }, + "PoolNameParameter": { + "name": "poolName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9_-]+$", + "minLength": 1, + "maxLength": 64, + "description": "The pool name. This must be unique within the account.", + "x-ms-parameter-location": "method" + }, + "PrivateLinkResourceNameParameter": { + "name": "privateLinkResourceName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9_-]+$", + "minLength": 1, + "maxLength": 64, + "description": "The private link resource name. This must be unique within the account.", + "x-ms-parameter-location": "method" + }, + "PrivateEndpointConnectionNameParameter": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9_-]+$", + "minLength": 1, + "maxLength": 64, + "description": "The private endpoint connection name. This must be unique within the account.", + "x-ms-parameter-location": "method" + }, + "ApplicationNameParameter": { + "name": "applicationName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9_-]+$", + "minLength": 1, + "maxLength": 64, + "description": "The name of the application. This must be unique within the account.", + "x-ms-parameter-location": "method" + }, + "VersionNameParameter": { + "name": "versionName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9_-][a-zA-Z0-9_.-]*$", + "minLength": 1, + "maxLength": 64, + "description": "The version of the application.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/ApplicationCreate.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/ApplicationCreate.json new file mode 100644 index 000000000000..8976d27b3d44 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/ApplicationCreate.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "accountName": "sampleacct", + "resourceGroupName": "default-azurebatch-japaneast", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "applicationName": "app1", + "parameters": { + "properties": { + "allowUpdates": false, + "displayName": "myAppName" + } + } + }, + "responses": { + "200": { + "headers": { + "ETag": "W/\"0x8D64F8EBB3DC411\"" + }, + "body": { + "type": "Microsoft.Batch/batchAccounts/applications", + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/applications/app1", + "name": "app1", + "etag": "W/\"0x8D64F8EBB3DC411\"", + "properties": { + "allowUpdates": false, + "displayName": "myAppName" + } + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/ApplicationDelete.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/ApplicationDelete.json new file mode 100644 index 000000000000..7602b5944ca0 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/ApplicationDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "sampleacct", + "resourceGroupName": "default-azurebatch-japaneast", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "applicationName": "app1" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/ApplicationGet.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/ApplicationGet.json new file mode 100644 index 000000000000..0dc566ab4bca --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/ApplicationGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "accountName": "sampleacct", + "resourceGroupName": "default-azurebatch-japaneast", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "applicationName": "app1" + }, + "responses": { + "200": { + "headers": { + "ETag": "W/\"0x8D64F915BDF7F00\"" + }, + "body": { + "type": "Microsoft.Batch/batchAccounts/applications", + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/applications/app1", + "name": "app1", + "etag": "W/\"0x8D64F915BDF7F00\"", + "properties": { + "allowUpdates": true, + "displayName": "Sample Application" + } + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/ApplicationList.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/ApplicationList.json new file mode 100644 index 000000000000..9d690ab48044 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/ApplicationList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "accountName": "sampleacct", + "resourceGroupName": "default-azurebatch-japaneast", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "type": "Microsoft.Batch/batchAccounts/applications", + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/applications/app1", + "name": "app1", + "etag": "W/\"0x8D64F91A9089879\"", + "properties": { + "allowUpdates": false, + "defaultVersion": "1" + } + }, + { + "type": "Microsoft.Batch/batchAccounts/applications", + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/applications/app2", + "name": "app1", + "etag": "W/\"0x8D64F91A9089879\"", + "properties": { + "allowUpdates": false, + "defaultVersion": "2.0", + "displayName": "myAppName" + } + } + ] + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/ApplicationPackageActivate.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/ApplicationPackageActivate.json new file mode 100644 index 000000000000..42cb102333e0 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/ApplicationPackageActivate.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "accountName": "sampleacct", + "resourceGroupName": "default-azurebatch-japaneast", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "applicationName": "app1", + "versionName": "1", + "parameters": { + "format": "zip" + } + }, + "responses": { + "200": { + "headers": { + "ETag": "W/\"0x8D64FEC83A3B436\"" + }, + "body": { + "type": "Microsoft.Batch/batchAccounts/applications/versions", + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/applications/app1/versions/1", + "name": "1", + "etag": "W/\"0x8D64FEC83A3B436\"", + "properties": { + "state": "Active", + "format": "zip", + "lastActivationTime": "2017-06-27T18:48:09.9330991Z" + } + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/ApplicationPackageCreate.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/ApplicationPackageCreate.json new file mode 100644 index 000000000000..33737066737d --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/ApplicationPackageCreate.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "accountName": "sampleacct", + "resourceGroupName": "default-azurebatch-japaneast", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "applicationName": "app1", + "versionName": "1" + }, + "responses": { + "200": { + "headers": { + "ETag": "W/\"0x8D64FEC83A3B436\"" + }, + "body": { + "type": "Microsoft.Batch/batchAccounts/applications/versions", + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/applications/app1/versions/1", + "name": "1", + "etag": "W/\"0x8D64FEC83A3B436\"", + "properties": { + "storageUrl": "http://mystorage1.blob.core.windows.net/myapp?mysas", + "storageUrlExpiry": "2017-06-27T18:48:09.9330991Z", + "state": "Pending" + } + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/ApplicationPackageDelete.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/ApplicationPackageDelete.json new file mode 100644 index 000000000000..3997f763d416 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/ApplicationPackageDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "accountName": "sampleacct", + "resourceGroupName": "default-azurebatch-japaneast", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "applicationName": "app1", + "versionName": "1" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/ApplicationPackageGet.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/ApplicationPackageGet.json new file mode 100644 index 000000000000..3faec16d44c9 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/ApplicationPackageGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "accountName": "sampleacct", + "resourceGroupName": "default-azurebatch-japaneast", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "applicationName": "app1", + "versionName": "1" + }, + "responses": { + "200": { + "headers": { + "ETag": "W/\"0x8D64FEC83A3B436\"" + }, + "body": { + "type": "Microsoft.Batch/batchAccounts/applications/versions", + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/applications/app1/versions/1", + "name": "1", + "etag": "W/\"0x8D64FEC83A3B436\"", + "properties": { + "state": "Active", + "format": "zip", + "lastActivationTime": "2017-06-27T18:48:09.9330991Z" + } + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/ApplicationPackageList.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/ApplicationPackageList.json new file mode 100644 index 000000000000..08bcd0e68d63 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/ApplicationPackageList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "accountName": "sampleacct", + "resourceGroupName": "default-azurebatch-japaneast", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "applicationName": "app1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "type": "Microsoft.Batch/batchAccounts/applications/versions", + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/applications/app1/versions/1.0", + "name": "1.0", + "etag": "W/\"0x8D64FF0B9F47F67\"", + "properties": { + "state": "Pending" + } + }, + { + "type": "Microsoft.Batch/batchAccounts/applications/versions", + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/applications/app1/versions/2.0", + "name": "2.0", + "etag": "W/\"0x8D64FF0B9F47F67\"", + "properties": { + "state": "Active", + "format": "zip", + "lastActivationTime": "2017-06-27T18:48:09.9330991Z" + } + } + ] + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/ApplicationUpdate.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/ApplicationUpdate.json new file mode 100644 index 000000000000..39b81f41ce43 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/ApplicationUpdate.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "accountName": "sampleacct", + "resourceGroupName": "default-azurebatch-japaneast", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "applicationName": "app1", + "parameters": { + "properties": { + "allowUpdates": true, + "displayName": "myAppName", + "defaultVersion": "2" + } + } + }, + "responses": { + "200": { + "headers": { + "ETag": "W/\"0x8D64F915BDF7F00\"" + }, + "body": { + "type": "Microsoft.Batch/batchAccounts/applications", + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/applications/app1", + "name": "app1", + "etag": "W/\"0x8D64F915BDF7F00\"", + "properties": { + "allowUpdates": true, + "displayName": "myAppName", + "defaultVersion": "2" + } + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/BatchAccountCreate_BYOS.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/BatchAccountCreate_BYOS.json new file mode 100644 index 000000000000..e42a4491798a --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/BatchAccountCreate_BYOS.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "accountName": "sampleacct", + "resourceGroupName": "default-azurebatch-japaneast", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "parameters": { + "location": "japaneast", + "properties": { + "autoStorage": { + "storageAccountId": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Storage/storageAccounts/samplestorage" + }, + "poolAllocationMode": "UserSubscription", + "keyVaultReference": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.KeyVault/vaults/sample", + "url": "http://sample.vault.azure.net/" + } + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "sampleacct", + "location": "japaneast", + "properties": { + "accountEndpoint": "sampleacct.japaneast.batch.azure.com", + "provisioningState": "Succeeded", + "poolAllocationMode": "UserSubscription", + "dedicatedCoreQuota": 20, + "lowPriorityCoreQuota": 20, + "poolQuota": 20, + "activeJobAndJobScheduleQuota": 20, + "autoStorage": { + "storageAccountId": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Storage/storageAccounts/samplestorage", + "lastKeySync": "2016-03-10T23:48:38.9878479Z" + }, + "keyVaultReference": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.KeyVault/vaults/sample", + "url": "http://sample.vault.azure.net/" + }, + "publicNetworkAccess": "Enabled" + }, + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct", + "type": "Microsoft.Batch/batchAccounts" + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/BatchAccountCreate_Default.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/BatchAccountCreate_Default.json new file mode 100644 index 000000000000..dc6ca25695cb --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/BatchAccountCreate_Default.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "accountName": "sampleacct", + "resourceGroupName": "default-azurebatch-japaneast", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "parameters": { + "location": "japaneast", + "properties": { + "autoStorage": { + "storageAccountId": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Storage/storageAccounts/samplestorage" + } + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "sampleacct", + "location": "japaneast", + "properties": { + "accountEndpoint": "sampleacct.japaneast.batch.azure.com", + "provisioningState": "Succeeded", + "poolAllocationMode": "BatchService", + "dedicatedCoreQuota": 20, + "lowPriorityCoreQuota": 20, + "poolQuota": 20, + "activeJobAndJobScheduleQuota": 20, + "autoStorage": { + "storageAccountId": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Storage/storageAccounts/samplestorage", + "lastKeySync": "2016-03-10T23:48:38.9878479Z" + }, + "publicNetworkAccess": "Enabled" + }, + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct", + "type": "Microsoft.Batch/batchAccounts" + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/BatchAccountDelete.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/BatchAccountDelete.json new file mode 100644 index 000000000000..ffe269192c70 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/BatchAccountDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "sampleacct", + "resourceGroupName": "default-azurebatch-japaneast", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/BatchAccountGet.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/BatchAccountGet.json new file mode 100644 index 000000000000..0a2b2157d36c --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/BatchAccountGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "accountName": "sampleacct", + "resourceGroupName": "default-azurebatch-japaneast", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "sampleacct", + "location": "japaneast", + "properties": { + "accountEndpoint": "sampleacct.japaneast.batch.azure.com", + "provisioningState": "Succeeded", + "poolAllocationMode": "BatchService", + "dedicatedCoreQuota": 20, + "lowPriorityCoreQuota": 20, + "poolQuota": 20, + "activeJobAndJobScheduleQuota": 20, + "autoStorage": { + "storageAccountId": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Storage/storageAccounts/samplestorage", + "lastKeySync": "2016-03-10T23:48:38.9878479Z" + }, + "publicNetworkAccess": "Enabled" + }, + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct", + "type": "Microsoft.Batch/batchAccounts" + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/BatchAccountGetKeys.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/BatchAccountGetKeys.json new file mode 100644 index 000000000000..77bdf18b0885 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/BatchAccountGetKeys.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "accountName": "sampleacct", + "resourceGroupName": "default-azurebatch-japaneast", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "accountName": "sampleacct", + "primary": "AAAA==", + "secondary": "BBBB==" + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/BatchAccountList.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/BatchAccountList.json new file mode 100644 index 000000000000..bb122897d193 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/BatchAccountList.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "sampleacct", + "location": "japaneast", + "properties": { + "accountEndpoint": "sampleacct.japaneast.batch.azure.com", + "provisioningState": "Succeeded", + "poolAllocationMode": "BatchService", + "dedicatedCoreQuota": 20, + "lowPriorityCoreQuota": 20, + "poolQuota": 20, + "activeJobAndJobScheduleQuota": 20, + "autoStorage": { + "storageAccountId": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Storage/storageAccounts/samplestorage", + "lastKeySync": "2016-03-10T23:48:38.9878479Z" + }, + "publicNetworkAccess": "Enabled" + }, + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct", + "type": "Microsoft.Batch/batchAccounts" + } + ] + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/BatchAccountListByResourceGroup.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/BatchAccountListByResourceGroup.json new file mode 100644 index 000000000000..7045a6d9bcb0 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/BatchAccountListByResourceGroup.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "resourceGroupName": "default-azurebatch-japaneast", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "sampleacct", + "location": "japaneast", + "properties": { + "accountEndpoint": "sampleacct.japaneast.batch.azure.com", + "provisioningState": "Succeeded", + "poolAllocationMode": "BatchService", + "dedicatedCoreQuota": 20, + "lowPriorityCoreQuota": 20, + "poolQuota": 20, + "activeJobAndJobScheduleQuota": 20, + "autoStorage": { + "storageAccountId": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Storage/storageAccounts/samplestorage", + "lastKeySync": "2016-03-10T23:48:38.9878479Z" + }, + "publicNetworkAccess": "Enabled" + }, + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct", + "type": "Microsoft.Batch/batchAccounts" + } + ] + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/BatchAccountRegenerateKey.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/BatchAccountRegenerateKey.json new file mode 100644 index 000000000000..66ac532afcb7 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/BatchAccountRegenerateKey.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "accountName": "sampleacct", + "resourceGroupName": "default-azurebatch-japaneast", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "parameters": { + "keyName": "Primary" + } + }, + "responses": { + "200": { + "body": { + "accountName": "sampleacct", + "primary": "AAAA==", + "secondary": "BBBB==" + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/BatchAccountSynchronizeAutoStorageKeys.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/BatchAccountSynchronizeAutoStorageKeys.json new file mode 100644 index 000000000000..c0c0cbfa3d8e --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/BatchAccountSynchronizeAutoStorageKeys.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "accountName": "sampleacct", + "resourceGroupName": "default-azurebatch-japaneast", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "204": {} + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/BatchAccountUpdate.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/BatchAccountUpdate.json new file mode 100644 index 000000000000..ac2c0a375930 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/BatchAccountUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "sampleacct", + "resourceGroupName": "default-azurebatch-japaneast", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "parameters": { + "properties": { + "autoStorage": { + "storageAccountId": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Storage/storageAccounts/samplestorage" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "sampleacct", + "location": "japaneast", + "properties": { + "accountEndpoint": "sampleacct.japaneast.batch.azure.com", + "provisioningState": "Succeeded", + "poolAllocationMode": "BatchService", + "dedicatedCoreQuota": 20, + "lowPriorityCoreQuota": 20, + "poolQuota": 20, + "activeJobAndJobScheduleQuota": 20, + "autoStorage": { + "storageAccountId": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Storage/storageAccounts/samplestorage", + "lastKeySync": "2016-03-10T23:48:38.9878479Z" + }, + "publicNetworkAccess": "Enabled" + }, + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct", + "type": "Microsoft.Batch/batchAccounts" + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/CertificateCancelDeletion.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/CertificateCancelDeletion.json new file mode 100644 index 000000000000..909a33cf107e --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/CertificateCancelDeletion.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "accountName": "sampleacct", + "resourceGroupName": "default-azurebatch-japaneast", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "certificateName": "sha1-0a0e4f50d51beadeac1d35afc5116098e7902e6e" + }, + "responses": { + "200": { + "headers": { + "ETag": "W/\"0x8D4EDD513C3EDBB\"" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/samplecct/certificates/sha1-0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "name": "sha1-0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "type": "Microsoft.Batch/batchAccounts/certificates", + "etag": "W/\"0x8D4EDD513C3EDBB\"", + "properties": { + "thumbprintAlgorithm": "sha1", + "thumbprint": "0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "provisioningState": "Succeeded", + "provisioningStateTransitionTime": "2017-07-21T01:47:38.4420202Z", + "previousProvisioningState": "Failed", + "previousProvisioningStateTransitionTime": "2017-07-21T00:22:54.3299195Z", + "format": "Pfx", + "publicData": "MIICrjCCAZagAwI..." + } + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/CertificateCreate_Full.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/CertificateCreate_Full.json new file mode 100644 index 000000000000..0f9148a3ccdd --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/CertificateCreate_Full.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "sampleacct", + "resourceGroupName": "default-azurebatch-japaneast", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "certificateName": "sha1-0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "parameters": { + "properties": { + "thumbprintAlgorithm": "sha1", + "thumbprint": "0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "data": "MIIJsgIBAzCCCW4GCSqGSIb3DQE...", + "password": "KG0UY40e...", + "format": "Pfx" + } + } + }, + "responses": { + "200": { + "headers": { + "ETag": "W/\"0x8D4EDD5118668F7\"" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/samplecct/certificates/sha1-0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "name": "sha1-0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "type": "Microsoft.Batch/batchAccounts/certificates", + "etag": "W/\"0x8D4EDD5118668F7\"", + "properties": { + "thumbprintAlgorithm": "sha1", + "thumbprint": "0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "provisioningState": "Succeeded", + "provisioningStateTransitionTime": "2017-07-21T01:47:38.4420202Z", + "format": "Pfx", + "publicData": "MIICrjCCAZagAwI..." + } + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/CertificateCreate_Minimal.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/CertificateCreate_Minimal.json new file mode 100644 index 000000000000..95189a81572d --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/CertificateCreate_Minimal.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "accountName": "sampleacct", + "resourceGroupName": "default-azurebatch-japaneast", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "certificateName": "sha1-0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "parameters": { + "properties": { + "data": "MIIJsgIBAzCCCW4GCSqGSIb3DQE...", + "password": "KG0UY40e..." + } + } + }, + "responses": { + "200": { + "headers": { + "ETag": "W/\"0x8D4EDD5118668F7\"" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/samplecct/certificates/sha1-0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "name": "sha1-0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "type": "Microsoft.Batch/batchAccounts/certificates", + "etag": "W/\"0x8D4EDD5118668F7\"", + "properties": { + "thumbprintAlgorithm": "sha1", + "thumbprint": "0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "provisioningState": "Succeeded", + "provisioningStateTransitionTime": "2017-07-21T01:47:38.4420202Z", + "format": "Pfx", + "publicData": "MIICrjCCAZagAwI..." + } + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/CertificateCreate_MinimalCer.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/CertificateCreate_MinimalCer.json new file mode 100644 index 000000000000..e8f380c612c0 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/CertificateCreate_MinimalCer.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "accountName": "sampleacct", + "resourceGroupName": "default-azurebatch-japaneast", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "certificateName": "sha1-0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "parameters": { + "properties": { + "data": "MIICrjCCAZagAwI...", + "format": "Cer" + } + } + }, + "responses": { + "200": { + "headers": { + "ETag": "W/\"0x8D4EDD5118668F7\"" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/samplecct/certificates/sha1-0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "name": "sha1-0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "type": "Microsoft.Batch/batchAccounts/certificates", + "etag": "W/\"0x8D4EDD5118668F7\"", + "properties": { + "thumbprintAlgorithm": "sha1", + "thumbprint": "0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "provisioningState": "Succeeded", + "provisioningStateTransitionTime": "2017-07-21T01:47:38.4420202Z", + "format": "Cer", + "publicData": "MIICrjCCAZagAwI..." + } + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/CertificateDelete.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/CertificateDelete.json new file mode 100644 index 000000000000..473e5977e30b --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/CertificateDelete.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "default-azurebatch-japaneast", + "accountName": "sampleacct", + "certificateName": "sha1-0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "api-version": "2020-03-01" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Retry-After": "15", + "Location": "https://management.azure.com/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/certificateOperationResults/sha1-0a0e4f50d51beadeac1d35afc5116098e7902e6e-8D4EDFF164A11C9?api-version=2020-03-01" + } + }, + "204": {} + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/CertificateGet.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/CertificateGet.json new file mode 100644 index 000000000000..ef7f7c18be89 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/CertificateGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "default-azurebatch-japaneast", + "accountName": "sampleacct", + "certificateName": "sha1-0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": { + "ETag": "W/\"0x8D4EDD5118668F7\"" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/samplecct/certificates/sha1-0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "name": "sha1-0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "type": "Microsoft.Batch/batchAccounts/certificates", + "etag": "W/\"0x8D4EDD5118668F7\"", + "properties": { + "thumbprintAlgorithm": "sha1", + "thumbprint": "0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "provisioningState": "Succeeded", + "provisioningStateTransitionTime": "2017-07-21T01:47:38.4420202Z", + "format": "Pfx", + "publicData": "MIICrjCCAZagAwI..." + } + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/CertificateGetWithDeletionError.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/CertificateGetWithDeletionError.json new file mode 100644 index 000000000000..b2763f3918d7 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/CertificateGetWithDeletionError.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "default-azurebatch-japaneast", + "accountName": "sampleacct", + "certificateName": "sha1-0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": { + "ETag": "W/\"0x8D4EDD5118668F7\"" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/samplecct/certificates/sha1-0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "name": "sha1-0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "type": "Microsoft.Batch/batchAccounts/certificates", + "etag": "W/\"0x8D4EDD5118668F7\"", + "properties": { + "thumbprintAlgorithm": "sha1", + "thumbprint": "0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "provisioningState": "Failed", + "provisioningStateTransitionTime": "2017-07-21T01:47:38.4420202Z", + "previousProvisioningState": "Deleting", + "previousProvisioningStateTransitionTime": "2017-07-21T00:15:25.5625498Z", + "format": "Pfx", + "publicData": "MIICrjCCAZagAwI...", + "deleteCertificateError": { + "code": "NodesReferencingCertificate", + "message": "The specified certificate is being used by the below mentioned node(s)\nRequestId:2dc78afc-b15b-42d2-8c85-39cb61a0799e\nTime:2017-08-28T10:22:52.8633406Z", + "target": "BatchAccount", + "details": [ + { + "code": "Nodes", + "message": "node1, node3" + } + ] + } + } + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/CertificateList.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/CertificateList.json new file mode 100644 index 000000000000..28b17a8f7ea5 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/CertificateList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "default-azurebatch-japaneast", + "accountName": "sampleacct", + "api-version": "2020-03-01", + "maxResults": "1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/samplecct/certificates/sha1-0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "name": "sha1-0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "type": "Microsoft.Batch/batchAccounts/certificates", + "etag": "W/\"0x8D4EDD5118668F7\"", + "properties": { + "thumbprintAlgorithm": "sha1", + "thumbprint": "0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "provisioningState": "Succeeded", + "provisioningStateTransitionTime": "2017-07-21T01:47:38.4420202Z", + "format": "Pfx", + "publicData": "MIICrjCCAZagAwI..." + } + } + ], + "nextLink": "https://management.azure.com/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/samplecct/certificates?api-version=2020-03-01&$skiptoken=NPK%3D28%3A2857p428pug%2022F53A7734C947B8NRK%3D45%3Asha1-c23dc7f22edc793856a7506fe66397ccb4a33b46SM%3D5%3AFalse" + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/CertificateListWithFilter.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/CertificateListWithFilter.json new file mode 100644 index 000000000000..63d3a357e3fe --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/CertificateListWithFilter.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "default-azurebatch-japaneast", + "accountName": "sampleacct", + "api-version": "2020-03-01", + "$filter": "properties/provisioningStateTransitionTime gt '2017-05-01' or properties/provisioningState eq 'Failed'", + "$select": "properties/format,properties/provisioningState" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/samplecct/certificates/sha1-0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "name": "sha1-0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "type": "Microsoft.Batch/batchAccounts/certificates", + "etag": "W/\"0x8D4EDD5118668F7\"", + "properties": { + "provisioningState": "Failed", + "format": "Pfx" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/samplecct/certificates/sha1-aeb228ffb0bf67a793d61dce263ebd16949f15a1", + "name": "sha1-aeb228ffb0bf67a793d61dce263ebd16949f15a1", + "type": "Microsoft.Batch/batchAccounts/certificates", + "etag": "W/\"0x8D4EDD5118572E0\"", + "properties": { + "provisioningState": "Failed", + "format": "Cer" + } + } + ] + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/CertificateUpdate.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/CertificateUpdate.json new file mode 100644 index 000000000000..95189a81572d --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/CertificateUpdate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "accountName": "sampleacct", + "resourceGroupName": "default-azurebatch-japaneast", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "certificateName": "sha1-0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "parameters": { + "properties": { + "data": "MIIJsgIBAzCCCW4GCSqGSIb3DQE...", + "password": "KG0UY40e..." + } + } + }, + "responses": { + "200": { + "headers": { + "ETag": "W/\"0x8D4EDD5118668F7\"" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/samplecct/certificates/sha1-0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "name": "sha1-0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "type": "Microsoft.Batch/batchAccounts/certificates", + "etag": "W/\"0x8D4EDD5118668F7\"", + "properties": { + "thumbprintAlgorithm": "sha1", + "thumbprint": "0a0e4f50d51beadeac1d35afc5116098e7902e6e", + "provisioningState": "Succeeded", + "provisioningStateTransitionTime": "2017-07-21T01:47:38.4420202Z", + "format": "Pfx", + "publicData": "MIICrjCCAZagAwI..." + } + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/LocationCheckNameAvailability_AlreadyExists.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/LocationCheckNameAvailability_AlreadyExists.json new file mode 100644 index 000000000000..660d8c60b4ad --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/LocationCheckNameAvailability_AlreadyExists.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "locationName": "japaneast", + "parameters": { + "name": "existingaccountname", + "type": "Microsoft.Batch/batchAccounts" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "AlreadyExists", + "message": "An account named 'existingaccountname' is already in use." + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/LocationCheckNameAvailability_Available.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/LocationCheckNameAvailability_Available.json new file mode 100644 index 000000000000..54498588eddd --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/LocationCheckNameAvailability_Available.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "locationName": "japaneast", + "parameters": { + "name": "newaccountname", + "type": "Microsoft.Batch/batchAccounts" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/LocationGetQuotas.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/LocationGetQuotas.json new file mode 100644 index 000000000000..7c28a0bdaa15 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/LocationGetQuotas.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "locationName": "japaneast" + }, + "responses": { + "200": { + "body": { + "accountQuota": 1 + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolCreate_CustomImage.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolCreate_CustomImage.json new file mode 100644 index 000000000000..4d5e045771a6 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolCreate_CustomImage.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "default-azurebatch-japaneast", + "accountName": "sampleacct", + "poolName": "testpool", + "api-version": "2020-03-01", + "parameters": { + "properties": { + "vmSize": "STANDARD_D4", + "deploymentConfiguration": { + "virtualMachineConfiguration": { + "imageReference": { + "id": "/subscriptions/subid/resourceGroups/networking-group/providers/Microsoft.Compute/images/image-123" + }, + "nodeAgentSkuId": "batch.node.ubuntu 18.04" + } + } + } + } + }, + "responses": { + "200": { + "headers": { + "ETag": "W/\"0x8D4EDFEBFADF4AB\"" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool", + "name": "testpool", + "type": "Microsoft.Batch/batchAccounts/pools", + "etag": "W/\"0x8D4EDFEBFADF4AB\"", + "properties": { + "lastModified": "2017-08-28T10:22:55.9407275Z", + "creationTime": "2017-08-28T10:22:55.9407275Z", + "provisioningState": "Succeeded", + "provisioningStateTransitionTime": "2017-08-28T10:22:55.9407275Z", + "allocationState": "Steady", + "allocationStateTransitionTime": "2017-08-28T10:22:55.9407275Z", + "vmSize": "STANDARD_D4", + "interNodeCommunication": "Disabled", + "maxTasksPerNode": 1, + "taskSchedulingPolicy": { + "nodeFillType": "Spread" + }, + "deploymentConfiguration": { + "virtualMachineConfiguration": { + "imageReference": { + "id": "/subscriptions/subid/resourceGroups/networking-group/providers/Microsoft.Compute/images/image-123" + }, + "nodeAgentSkuId": "batch.node.ubuntu 18.04" + } + }, + "scaleSettings": { + "fixedScale": { + "targetDedicatedNodes": 0, + "targetLowPriorityNodes": 0 + } + }, + "currentDedicatedNodes": 0, + "currentLowPriorityNodes": 0 + } + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolCreate_FullExample.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolCreate_FullExample.json new file mode 100644 index 000000000000..dd3336ce56c7 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolCreate_FullExample.json @@ -0,0 +1,285 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "default-azurebatch-japaneast", + "accountName": "sampleacct", + "poolName": "testpool", + "api-version": "2020-03-01", + "parameters": { + "properties": { + "displayName": "my-pool-name", + "vmSize": "STANDARD_D4", + "interNodeCommunication": "Enabled", + "maxTasksPerNode": 13, + "taskSchedulingPolicy": { + "nodeFillType": "Pack" + }, + "deploymentConfiguration": { + "cloudServiceConfiguration": { + "osFamily": "4", + "osVersion": "WA-GUEST-OS-4.45_201708-01" + } + }, + "networkConfiguration": { + "subnetId": "/subscriptions/subid/resourceGroups/rg1234/providers/Microsoft.Network/virtualNetworks/network1234/subnets/subnet123", + "publicIPAddressConfiguration": { + "provision": "UserManaged", + "ipAddressIds": [ + "/subscriptions/subid1/resourceGroups/rg13/providers/Microsoft.Network/publicIPAddresses/ip135", + "/subscriptions/subid2/resourceGroups/rg24/providers/Microsoft.Network/publicIPAddresses/ip268" + ] + }, + "endpointConfiguration": { + "inboundNatPools": [ + { + "name": "testnat", + "protocol": "TCP", + "backendPort": 12001, + "frontendPortRangeStart": 15000, + "frontendPortRangeEnd": 15100, + "networkSecurityGroupRules": [ + { + "access": "Allow", + "sourceAddressPrefix": "192.100.12.45", + "priority": 150, + "sourcePortRanges": [ + "*" + ] + }, + { + "access": "Deny", + "sourceAddressPrefix": "*", + "priority": 3500, + "sourcePortRanges": [ + "*" + ] + } + ] + } + ] + } + }, + "scaleSettings": { + "fixedScale": { + "targetDedicatedNodes": 6, + "targetLowPriorityNodes": 28, + "resizeTimeout": "PT8M", + "nodeDeallocationOption": "TaskCompletion" + } + }, + "metadata": [ + { + "name": "metadata-1", + "value": "value-1" + }, + { + "name": "metadata-2", + "value": "value-2" + } + ], + "startTask": { + "commandLine": "cmd /c SET", + "resourceFiles": [ + { + "httpUrl": "https://testaccount.blob.core.windows.net/example-blob-file", + "filePath": "c:\\temp\\gohere", + "fileMode": "777" + } + ], + "environmentSettings": [ + { + "name": "MYSET", + "value": "1234" + } + ], + "userIdentity": { + "autoUser": { + "scope": "Pool", + "elevationLevel": "Admin" + } + }, + "maxTaskRetryCount": 6, + "waitForSuccess": true + }, + "userAccounts": [ + { + "name": "username1", + "password": "examplepassword", + "elevationLevel": "Admin", + "linuxUserConfiguration": { + "sshPrivateKey": "sshprivatekeyvalue", + "uid": 1234, + "gid": 4567 + } + } + ], + "applicationPackages": [ + { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool/applications/app_1234", + "version": "asdf" + } + ], + "certificates": [ + { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool/certificates/sha1-1234567", + "storeLocation": "LocalMachine", + "storeName": "MY", + "visibility": [ + "RemoteUser" + ] + } + ], + "applicationLicenses": [ + "app-license0", + "app-license1" + ] + } + } + }, + "responses": { + "200": { + "headers": { + "ETag": "W/\"0x8D4EDFEBFADF4AB\"" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool", + "name": "testpool", + "type": "Microsoft.Batch/batchAccounts/pools", + "etag": "W/\"0x8D4EDFEBFADF4AB\"", + "properties": { + "lastModified": "2017-08-28T10:22:55.9407275Z", + "creationTime": "2017-08-28T10:22:55.9407275Z", + "provisioningState": "Succeeded", + "provisioningStateTransitionTime": "2017-08-28T10:22:55.9407275Z", + "allocationState": "Resizing", + "allocationStateTransitionTime": "2017-08-28T10:22:55.9407275Z", + "vmSize": "STANDARD_D4", + "interNodeCommunication": "Enabled", + "maxTasksPerNode": 13, + "taskSchedulingPolicy": { + "nodeFillType": "Pack" + }, + "deploymentConfiguration": { + "cloudServiceConfiguration": { + "osFamily": "4", + "osVersion": "WA-GUEST-OS-4.45_201708-01" + } + }, + "scaleSettings": { + "fixedScale": { + "targetDedicatedNodes": 6, + "targetLowPriorityNodes": 28, + "resizeTimeout": "PT8M", + "nodeDeallocationOption": "TaskCompletion" + } + }, + "networkConfiguration": { + "subnetId": "/subscriptions/subid/resourceGroups/rg1234/providers/Microsoft.Network/virtualNetworks/network1234/subnets/subnet123", + "publicIPAddressConfiguration": { + "provision": "UserManaged", + "ipAddressIds": [ + "/subscriptions/subid1/resourceGroups/rg13/providers/Microsoft.Network/publicIPAddresses/ip135", + "/subscriptions/subid2/resourceGroups/rg24/providers/Microsoft.Network/publicIPAddresses/ip268" + ] + }, + "endpointConfiguration": { + "inboundNatPools": [ + { + "name": "testnat", + "protocol": "TCP", + "backendPort": 12001, + "frontendPortRangeStart": 15000, + "frontendPortRangeEnd": 15100, + "networkSecurityGroupRules": [ + { + "access": "Allow", + "sourceAddressPrefix": "192.100.12.45", + "priority": 150, + "sourcePortRanges": [ + "*" + ] + }, + { + "access": "Deny", + "sourceAddressPrefix": "*", + "priority": 3500, + "sourcePortRanges": [ + "*" + ] + } + ] + } + ] + } + }, + "metadata": [ + { + "name": "metadata-1", + "value": "value-1" + }, + { + "name": "metadata-2", + "value": "value-2" + } + ], + "startTask": { + "commandLine": "cmd /c SET", + "resourceFiles": [ + { + "httpUrl": "https://testaccount.blob.core.windows.net/example-blob-file", + "filePath": "c:\\temp\\gohere", + "fileMode": "777" + } + ], + "environmentSettings": [ + { + "name": "MYSET", + "value": "1234" + } + ], + "userIdentity": { + "autoUser": { + "scope": "Pool", + "elevationLevel": "Admin" + } + }, + "maxTaskRetryCount": 6, + "waitForSuccess": true + }, + "userAccounts": [ + { + "name": "username1", + "elevationLevel": "Admin", + "linuxUserConfiguration": { + "uid": 1234, + "gid": 4567 + } + } + ], + "applicationPackages": [ + { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool/applications/app_1234", + "version": "asdf" + } + ], + "certificates": [ + { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool/certificates/sha1-1234567", + "storeLocation": "LocalMachine", + "storeName": "MY", + "visibility": [ + "RemoteUser" + ] + } + ], + "applicationLicenses": [ + "app-license0", + "app-license1" + ], + "currentDedicatedNodes": 0, + "currentLowPriorityNodes": 0 + } + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolCreate_MinimalCloudServiceConfiguration.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolCreate_MinimalCloudServiceConfiguration.json new file mode 100644 index 000000000000..5c947d3cf15f --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolCreate_MinimalCloudServiceConfiguration.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "default-azurebatch-japaneast", + "accountName": "sampleacct", + "poolName": "testpool", + "api-version": "2020-03-01", + "parameters": { + "properties": { + "vmSize": "STANDARD_D4", + "deploymentConfiguration": { + "cloudServiceConfiguration": { + "osFamily": "5" + } + }, + "scaleSettings": { + "fixedScale": { + "targetDedicatedNodes": 3 + } + } + } + } + }, + "responses": { + "200": { + "headers": { + "ETag": "W/\"0x8D4EDFEBFADF4AB\"" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool", + "name": "testpool", + "type": "Microsoft.Batch/batchAccounts/pools", + "etag": "W/\"0x8D4EDFEBFADF4AB\"", + "properties": { + "lastModified": "2017-08-28T10:22:55.9407275Z", + "creationTime": "2017-08-28T10:22:55.9407275Z", + "provisioningState": "Succeeded", + "provisioningStateTransitionTime": "2017-08-28T10:22:55.9407275Z", + "allocationState": "Resizing", + "allocationStateTransitionTime": "2017-08-28T10:22:55.9407275Z", + "vmSize": "STANDARD_D4", + "interNodeCommunication": "Disabled", + "maxTasksPerNode": 1, + "taskSchedulingPolicy": { + "nodeFillType": "Spread" + }, + "deploymentConfiguration": { + "cloudServiceConfiguration": { + "osFamily": "5", + "osVersion": "*" + } + }, + "scaleSettings": { + "fixedScale": { + "targetDedicatedNodes": 3, + "targetLowPriorityNodes": 0, + "resizeTimeout": "PT15M" + } + }, + "currentDedicatedNodes": 0, + "currentLowPriorityNodes": 0, + "resizeOperationStatus": { + "startTime": "2017-08-28T10:22:55.9407275Z", + "targetDedicatedNodes": 3, + "nodeDeallocationOption": "Requeue", + "resizeTimeout": "PT15M" + } + } + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolCreate_MinimalVirtualMachineConfiguration.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolCreate_MinimalVirtualMachineConfiguration.json new file mode 100644 index 000000000000..7d235d235a0a --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolCreate_MinimalVirtualMachineConfiguration.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "default-azurebatch-japaneast", + "accountName": "sampleacct", + "poolName": "testpool", + "api-version": "2020-03-01", + "parameters": { + "properties": { + "vmSize": "STANDARD_D4", + "deploymentConfiguration": { + "virtualMachineConfiguration": { + "imageReference": { + "publisher": "Canonical", + "offer": "UbuntuServer", + "sku": "18.04-LTS", + "version": "latest" + }, + "nodeAgentSkuId": "batch.node.ubuntu 18.04" + } + }, + "scaleSettings": { + "autoScale": { + "formula": "$TargetDedicatedNodes=1", + "evaluationInterval": "PT5M" + } + } + } + } + }, + "responses": { + "200": { + "headers": { + "ETag": "W/\"0x8D4EDFEBFADF4AB\"" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool", + "name": "testpool", + "type": "Microsoft.Batch/batchAccounts/pools", + "etag": "W/\"0x8D4EDFEBFADF4AB\"", + "properties": { + "lastModified": "2017-08-28T10:22:55.9407275Z", + "creationTime": "2017-08-28T10:22:55.9407275Z", + "provisioningState": "Succeeded", + "provisioningStateTransitionTime": "2017-08-28T10:22:55.9407275Z", + "allocationState": "Resizing", + "allocationStateTransitionTime": "2017-08-28T10:22:55.9407275Z", + "vmSize": "STANDARD_D4", + "interNodeCommunication": "Disabled", + "maxTasksPerNode": 1, + "taskSchedulingPolicy": { + "nodeFillType": "Spread" + }, + "deploymentConfiguration": { + "virtualMachineConfiguration": { + "imageReference": { + "publisher": "Canonical", + "offer": "UbuntuServer", + "sku": "18.04-LTS", + "version": "latest" + }, + "nodeAgentSkuId": "batch.node.ubuntu 18.04" + } + }, + "scaleSettings": { + "autoScale": { + "formula": "$TargetDedicatedNodes=1", + "evaluationInterval": "PT5M" + } + }, + "currentDedicatedNodes": 0, + "currentLowPriorityNodes": 0 + } + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolCreate_NoPublicIPAddresses.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolCreate_NoPublicIPAddresses.json new file mode 100644 index 000000000000..27a87c152df5 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolCreate_NoPublicIPAddresses.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "default-azurebatch-japaneast", + "accountName": "sampleacct", + "poolName": "testpool", + "api-version": "2020-03-01", + "parameters": { + "properties": { + "vmSize": "STANDARD_D4", + "networkConfiguration": { + "subnetId": "/subscriptions/subid/resourceGroups/rg1234/providers/Microsoft.Network/virtualNetworks/network1234/subnets/subnet123", + "publicIPAddressConfiguration": { + "provision": "NoPublicIPAddresses" + } + }, + "deploymentConfiguration": { + "virtualMachineConfiguration": { + "imageReference": { + "id": "/subscriptions/subid/resourceGroups/networking-group/providers/Microsoft.Compute/images/image-123" + }, + "nodeAgentSkuId": "batch.node.ubuntu 18.04" + } + } + } + } + }, + "responses": { + "200": { + "headers": { + "ETag": "W/\"0x8D4EDFEBFADF4AB\"" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool", + "name": "testpool", + "type": "Microsoft.Batch/batchAccounts/pools", + "etag": "W/\"0x8D4EDFEBFADF4AB\"", + "properties": { + "lastModified": "2017-08-28T10:22:55.9407275Z", + "creationTime": "2017-08-28T10:22:55.9407275Z", + "provisioningState": "Succeeded", + "provisioningStateTransitionTime": "2017-08-28T10:22:55.9407275Z", + "allocationState": "Steady", + "allocationStateTransitionTime": "2017-08-28T10:22:55.9407275Z", + "vmSize": "STANDARD_D4", + "interNodeCommunication": "Disabled", + "maxTasksPerNode": 1, + "taskSchedulingPolicy": { + "nodeFillType": "Spread" + }, + "networkConfiguration": { + "subnetId": "/subscriptions/subid/resourceGroups/rg1234/providers/Microsoft.Network/virtualNetworks/network1234/subnets/subnet123", + "publicIPAddressConfiguration": { + "provision": "NoPublicIPAddresses" + } + }, + "deploymentConfiguration": { + "virtualMachineConfiguration": { + "imageReference": { + "id": "/subscriptions/subid/resourceGroups/networking-group/providers/Microsoft.Compute/images/image-123" + }, + "nodeAgentSkuId": "batch.node.ubuntu 18.04" + } + }, + "scaleSettings": { + "fixedScale": { + "targetDedicatedNodes": 0, + "targetLowPriorityNodes": 0 + } + }, + "currentDedicatedNodes": 0, + "currentLowPriorityNodes": 0 + } + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolCreate_PublicIPs.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolCreate_PublicIPs.json new file mode 100644 index 000000000000..e7a035386ae6 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolCreate_PublicIPs.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "default-azurebatch-japaneast", + "accountName": "sampleacct", + "poolName": "testpool", + "api-version": "2020-03-01", + "parameters": { + "properties": { + "vmSize": "STANDARD_D4", + "networkConfiguration": { + "subnetId": "/subscriptions/subid/resourceGroups/rg1234/providers/Microsoft.Network/virtualNetworks/network1234/subnets/subnet123", + "publicIPAddressConfiguration": { + "provision": "UserManaged", + "ipAddressIds": [ + "/subscriptions/subid1/resourceGroups/rg13/providers/Microsoft.Network/publicIPAddresses/ip135" + ] + } + }, + "deploymentConfiguration": { + "virtualMachineConfiguration": { + "imageReference": { + "id": "/subscriptions/subid/resourceGroups/networking-group/providers/Microsoft.Compute/images/image-123" + }, + "nodeAgentSkuId": "batch.node.ubuntu 18.04" + } + } + } + } + }, + "responses": { + "200": { + "headers": { + "ETag": "W/\"0x8D4EDFEBFADF4AB\"" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool", + "name": "testpool", + "type": "Microsoft.Batch/batchAccounts/pools", + "etag": "W/\"0x8D4EDFEBFADF4AB\"", + "properties": { + "lastModified": "2017-08-28T10:22:55.9407275Z", + "creationTime": "2017-08-28T10:22:55.9407275Z", + "provisioningState": "Succeeded", + "provisioningStateTransitionTime": "2017-08-28T10:22:55.9407275Z", + "allocationState": "Steady", + "allocationStateTransitionTime": "2017-08-28T10:22:55.9407275Z", + "vmSize": "STANDARD_D4", + "interNodeCommunication": "Disabled", + "maxTasksPerNode": 1, + "taskSchedulingPolicy": { + "nodeFillType": "Spread" + }, + "networkConfiguration": { + "subnetId": "/subscriptions/subid/resourceGroups/rg1234/providers/Microsoft.Network/virtualNetworks/network1234/subnets/subnet123", + "publicIPAddressConfiguration": { + "provision": "UserManaged", + "ipAddressIds": [ + "/subscriptions/subid1/resourceGroups/rg13/providers/Microsoft.Network/publicIPAddresses/ip135" + ] + } + }, + "deploymentConfiguration": { + "virtualMachineConfiguration": { + "imageReference": { + "id": "/subscriptions/subid/resourceGroups/networking-group/providers/Microsoft.Compute/images/image-123" + }, + "nodeAgentSkuId": "batch.node.ubuntu 18.04" + } + }, + "scaleSettings": { + "fixedScale": { + "targetDedicatedNodes": 0, + "targetLowPriorityNodes": 0 + } + }, + "currentDedicatedNodes": 0, + "currentLowPriorityNodes": 0 + } + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolCreate_VirtualMachineConfiguration.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolCreate_VirtualMachineConfiguration.json new file mode 100644 index 000000000000..bb318cdc73da --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolCreate_VirtualMachineConfiguration.json @@ -0,0 +1,189 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "default-azurebatch-japaneast", + "accountName": "sampleacct", + "poolName": "testpool", + "api-version": "2020-03-01", + "parameters": { + "properties": { + "vmSize": "STANDARD_D4", + "deploymentConfiguration": { + "virtualMachineConfiguration": { + "imageReference": { + "publisher": "MicrosoftWindowsServer", + "offer": "WindowsServer", + "sku": "2016-Datacenter-SmallDisk", + "version": "latest" + }, + "nodeAgentSkuId": "batch.node.windows amd64", + "windowsConfiguration": { + "enableAutomaticUpdates": false + }, + "licenseType": "Windows_Server", + "dataDisks": [ + { + "lun": 0, + "caching": "ReadWrite", + "diskSizeGB": 30, + "storageAccountType": "Premium_LRS" + }, + { + "lun": 1, + "caching": "None", + "diskSizeGB": 200, + "storageAccountType": "Standard_LRS" + } + ], + "diskEncryptionConfiguration": { + "targets": [ + "OsDisk", + "TemporaryDisk" + ] + } + } + }, + "networkConfiguration": { + "endpointConfiguration": { + "inboundNatPools": [ + { + "name": "testnat", + "protocol": "TCP", + "backendPort": 12001, + "frontendPortRangeStart": 15000, + "frontendPortRangeEnd": 15100, + "networkSecurityGroupRules": [ + { + "access": "Allow", + "sourceAddressPrefix": "192.100.12.45", + "priority": 150, + "sourcePortRanges": [ + "1", + "2" + ] + }, + { + "access": "Deny", + "sourceAddressPrefix": "*", + "priority": 3500, + "sourcePortRanges": [ + "*" + ] + } + ] + } + ] + } + }, + "scaleSettings": { + "autoScale": { + "formula": "$TargetDedicatedNodes=1", + "evaluationInterval": "PT5M" + } + } + } + } + }, + "responses": { + "200": { + "headers": { + "ETag": "W/\"0x8D4EDFEBFADF4AB\"" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool", + "name": "testpool", + "type": "Microsoft.Batch/batchAccounts/pools", + "etag": "W/\"0x8D4EDFEBFADF4AB\"", + "properties": { + "lastModified": "2017-08-28T10:22:55.9407275Z", + "creationTime": "2017-08-28T10:22:55.9407275Z", + "provisioningState": "Succeeded", + "provisioningStateTransitionTime": "2017-08-28T10:22:55.9407275Z", + "allocationState": "Resizing", + "allocationStateTransitionTime": "2017-08-28T10:22:55.9407275Z", + "vmSize": "STANDARD_D4", + "interNodeCommunication": "Disabled", + "maxTasksPerNode": 1, + "taskSchedulingPolicy": { + "nodeFillType": "Spread" + }, + "deploymentConfiguration": { + "virtualMachineConfiguration": { + "imageReference": { + "publisher": "MicrosoftWindowsServer", + "offer": "WindowsServer", + "sku": "2016-Datacenter-SmallDisk", + "version": "latest" + }, + "nodeAgentSkuId": "batch.node.windows amd64", + "windowsConfiguration": { + "enableAutomaticUpdates": false + }, + "licenseType": "Windows_Server", + "dataDisks": [ + { + "lun": 0, + "caching": "ReadWrite", + "diskSizeGB": 30, + "storageAccountType": "Premium_LRS" + }, + { + "lun": 1, + "caching": "None", + "diskSizeGB": 200, + "storageAccountType": "Standard_LRS" + } + ], + "diskEncryptionConfiguration": { + "targets": [ + "OsDisk", + "TemporaryDisk" + ] + } + } + }, + "networkConfiguration": { + "endpointConfiguration": { + "inboundNatPools": [ + { + "name": "testnat", + "protocol": "TCP", + "backendPort": 12001, + "frontendPortRangeStart": 15000, + "frontendPortRangeEnd": 15100, + "networkSecurityGroupRules": [ + { + "access": "Allow", + "sourceAddressPrefix": "192.100.12.45", + "priority": 150, + "sourcePortRanges": [ + "1", + "2" + ] + }, + { + "access": "Deny", + "sourceAddressPrefix": "*", + "priority": 3500, + "sourcePortRanges": [ + "*" + ] + } + ] + } + ] + } + }, + "scaleSettings": { + "autoScale": { + "formula": "$TargetDedicatedNodes=1", + "evaluationInterval": "PT5M" + } + }, + "currentDedicatedNodes": 0, + "currentLowPriorityNodes": 0 + } + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolDelete.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolDelete.json new file mode 100644 index 000000000000..d00668962d21 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolDelete.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "default-azurebatch-japaneast", + "accountName": "sampleacct", + "poolName": "testpool", + "api-version": "2020-03-01" + }, + "responses": { + "200": {}, + "204": {}, + "202": { + "headers": { + "Retry-After": "15", + "Location": "https://management.azure.com/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/poolOperationResults/delete-testpool-8D4EDFF164A11C9?api-version=2020-03-01" + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolDisableAutoScale.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolDisableAutoScale.json new file mode 100644 index 000000000000..a67af951cf92 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolDisableAutoScale.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "default-azurebatch-japaneast", + "accountName": "sampleacct", + "poolName": "testpool", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": { + "ETag": "W/\"0x8D4EDFEBFADF4AB\"" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool", + "name": "testpool", + "type": "Microsoft.Batch/batchAccounts/pools", + "etag": "W/\"0x8D4EDFEBFADF4AB\"", + "properties": { + "lastModified": "2017-08-28T10:22:55.9407275Z", + "creationTime": "2017-08-28T10:22:55.9407275Z", + "provisioningState": "Succeeded", + "provisioningStateTransitionTime": "2017-08-28T10:22:55.9407275Z", + "allocationState": "Resizing", + "allocationStateTransitionTime": "2017-08-28T10:22:55.9407275Z", + "vmSize": "STANDARD_D4", + "interNodeCommunication": "Disabled", + "maxTasksPerNode": 1, + "taskSchedulingPolicy": { + "nodeFillType": "Spread" + }, + "deploymentConfiguration": { + "virtualMachineConfiguration": { + "imageReference": { + "publisher": "Canonical", + "offer": "UbuntuServer", + "sku": "18.04-LTS", + "version": "latest" + }, + "nodeAgentSkuId": "batch.node.ubuntu 18.04" + } + }, + "scaleSettings": { + "fixedScale": { + "targetDedicatedNodes": 3, + "targetLowPriorityNodes": 0, + "resizeTimeout": "PT15M" + } + }, + "currentDedicatedNodes": 0, + "currentLowPriorityNodes": 0 + } + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolGet.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolGet.json new file mode 100644 index 000000000000..5c7491150ce5 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolGet.json @@ -0,0 +1,155 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "default-azurebatch-japaneast", + "accountName": "sampleacct", + "poolName": "testpool", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": { + "ETag": "W/\"0x8D4EDFEBFADF4AB\"" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool", + "name": "testpool", + "type": "Microsoft.Batch/batchAccounts/pools", + "etag": "W/\"0x8D4EDFEBFADF4AB\"", + "properties": { + "lastModified": "2017-08-28T10:22:55.9407275Z", + "creationTime": "2017-08-28T10:22:55.9407275Z", + "provisioningState": "Succeeded", + "provisioningStateTransitionTime": "2017-08-28T10:22:55.9407275Z", + "allocationState": "Resizing", + "allocationStateTransitionTime": "2017-08-28T10:22:55.9407275Z", + "vmSize": "STANDARD_D4", + "interNodeCommunication": "Enabled", + "maxTasksPerNode": 13, + "taskSchedulingPolicy": { + "nodeFillType": "Pack" + }, + "deploymentConfiguration": { + "cloudServiceConfiguration": { + "osFamily": "4", + "osVersion": "WA-GUEST-OS-4.45_201708-01" + } + }, + "scaleSettings": { + "fixedScale": { + "targetDedicatedNodes": 6, + "targetLowPriorityNodes": 28, + "resizeTimeout": "PT8M" + } + }, + "networkConfiguration": { + "subnetId": "/subscriptions/subid/resourceGroups/rg1234/providers/Microsoft.Network/virtualNetworks/network1234/subnets/subnet123", + "endpointConfiguration": { + "inboundNatPools": [ + { + "name": "testnat", + "protocol": "TCP", + "backendPort": 12001, + "frontendPortRangeStart": 15000, + "frontendPortRangeEnd": 15100, + "networkSecurityGroupRules": [ + { + "access": "Allow", + "sourceAddressPrefix": "192.100.12.45", + "priority": 150, + "sourcePortRanges": [ + "123", + "22" + ] + }, + { + "access": "Deny", + "sourceAddressPrefix": "*", + "priority": 3500, + "sourcePortRanges": [ + "*" + ] + } + ] + } + ] + } + }, + "metadata": [ + { + "name": "metadata-1", + "value": "value-1" + }, + { + "name": "metadata-2", + "value": "value-2" + } + ], + "startTask": { + "commandLine": "cmd /c SET", + "resourceFiles": [ + { + "httpUrl": "https://testaccount.blob.core.windows.net/example-blob-file", + "filePath": "c:\\temp\\gohere", + "fileMode": "777" + } + ], + "environmentSettings": [ + { + "name": "MYSET", + "value": "1234" + } + ], + "userIdentity": { + "autoUser": { + "scope": "Pool", + "elevationLevel": "Admin" + } + }, + "maxTaskRetryCount": 6, + "waitForSuccess": true + }, + "userAccounts": [ + { + "name": "username1", + "elevationLevel": "Admin", + "linuxUserConfiguration": { + "uid": 1234, + "gid": 4567 + } + } + ], + "applicationPackages": [ + { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool/applications/app_1234", + "version": "asdf" + } + ], + "certificates": [ + { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool/certificates/sha1-1234567", + "storeLocation": "LocalMachine", + "storeName": "MY", + "visibility": [ + "RemoteUser" + ] + } + ], + "applicationLicenses": [ + "app-license0", + "app-license1" + ], + "currentDedicatedNodes": 0, + "currentLowPriorityNodes": 0, + "resizeOperationStatus": { + "startTime": "2017-08-28T10:22:55.9407275Z", + "targetDedicatedNodes": 6, + "targetLowPriorityNodes": 28, + "nodeDeallocationOption": "TaskCompletion", + "resizeTimeout": "PT8M" + } + } + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolList.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolList.json new file mode 100644 index 000000000000..71c129578b86 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolList.json @@ -0,0 +1,161 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "default-azurebatch-japaneast", + "accountName": "sampleacct", + "poolName": "testpool", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool", + "name": "testpool", + "type": "Microsoft.Batch/batchAccounts/pools", + "etag": "W/\"0x8D4EDFEBFADF4AB\"", + "properties": { + "lastModified": "2017-08-28T10:22:55.9407275Z", + "creationTime": "2017-08-28T10:22:55.9407275Z", + "provisioningState": "Succeeded", + "provisioningStateTransitionTime": "2017-08-28T10:22:55.9407275Z", + "allocationState": "Steady", + "allocationStateTransitionTime": "2017-08-28T10:22:55.9407275Z", + "vmSize": "STANDARD_D4", + "interNodeCommunication": "Enabled", + "maxTasksPerNode": 13, + "taskSchedulingPolicy": { + "nodeFillType": "Pack" + }, + "deploymentConfiguration": { + "cloudServiceConfiguration": { + "osFamily": "4", + "osVersion": "WA-GUEST-OS-4.45_201708-01" + } + }, + "scaleSettings": { + "fixedScale": { + "targetDedicatedNodes": 6, + "targetLowPriorityNodes": 28, + "resizeTimeout": "PT8M" + } + }, + "networkConfiguration": { + "subnetId": "/subscriptions/subid/resourceGroups/rg1234/providers/Microsoft.Network/virtualNetworks/network1234/subnets/subnet123", + "endpointConfiguration": { + "inboundNatPools": [ + { + "name": "testnat", + "protocol": "TCP", + "backendPort": 12001, + "frontendPortRangeStart": 15000, + "frontendPortRangeEnd": 15100, + "networkSecurityGroupRules": [ + { + "access": "Allow", + "sourceAddressPrefix": "192.100.12.45", + "priority": 150, + "sourcePortRanges": [ + "*" + ] + }, + { + "access": "Deny", + "sourceAddressPrefix": "*", + "priority": 3500, + "sourcePortRanges": [ + "*" + ] + } + ] + } + ] + } + }, + "metadata": [ + { + "name": "metadata-1", + "value": "value-1" + }, + { + "name": "metadata-2", + "value": "value-2" + } + ], + "startTask": { + "commandLine": "cmd /c SET", + "resourceFiles": [ + { + "httpUrl": "https://testaccount.blob.core.windows.net/example-blob-file", + "filePath": "c:\\temp\\gohere", + "fileMode": "777" + } + ], + "environmentSettings": [ + { + "name": "MYSET", + "value": "1234" + } + ], + "userIdentity": { + "autoUser": { + "scope": "Pool", + "elevationLevel": "Admin" + } + }, + "maxTaskRetryCount": 6, + "waitForSuccess": true + }, + "userAccounts": [ + { + "name": "username1", + "elevationLevel": "Admin", + "linuxUserConfiguration": { + "uid": 1234, + "gid": 4567 + } + } + ], + "applicationPackages": [ + { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool/applications/app_1234", + "version": "asdf" + } + ], + "certificates": [ + { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool/certificates/sha1-1234567", + "storeLocation": "LocalMachine", + "storeName": "MY", + "visibility": [ + "RemoteUser" + ] + } + ], + "applicationLicenses": [ + "app-license0", + "app-license1" + ], + "currentDedicatedNodes": 0, + "currentLowPriorityNodes": 0, + "resizeOperationStatus": { + "startTime": "2017-08-28T10:22:55.9407275Z", + "targetDedicatedNodes": 6, + "targetLowPriorityNodes": 28, + "nodeDeallocationOption": "TaskCompletion", + "resizeTimeout": "PT8M", + "errors": [ + { + "code": "AllocationTimedout", + "message": "Desired number of dedicated nodes could not be allocated as the resize timeout was reached" + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolListWithFilter.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolListWithFilter.json new file mode 100644 index 000000000000..f6f56009577a --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolListWithFilter.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "default-azurebatch-japaneast", + "accountName": "sampleacct", + "poolName": "testpool", + "api-version": "2020-03-01", + "$filter": "startswith(name, 'po') or (properties/allocationState eq 'Steady' and properties/provisioningStateTransitionTime lt datetime'2017-02-02')", + "$select": "properties/allocationState,properties/provisioningStateTransitionTime,properties/currentDedicatedNodes,properties/currentLowPriorityNodes", + "maxResults": "50" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool", + "name": "testpool", + "type": "Microsoft.Batch/batchAccounts/pools", + "etag": "W/\"0x8D4EDFEBFADF4AB\"", + "properties": { + "provisioningStateTransitionTime": "2017-08-28T10:22:55.9407275Z", + "allocationState": "Steady", + "currentDedicatedNodes": 0, + "currentLowPriorityNodes": 2 + } + }, + { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/pooltest", + "name": "pooltest", + "type": "Microsoft.Batch/batchAccounts/pools", + "etag": "W/\"0x8D4EDFEBFADF4AB\"", + "properties": { + "provisioningStateTransitionTime": "2017-08-26T10:22:55.9407275Z", + "allocationState": "Resizing", + "currentDedicatedNodes": 4, + "currentLowPriorityNodes": 0 + } + } + ] + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolStopResize.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolStopResize.json new file mode 100644 index 000000000000..2fdd72600ef0 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolStopResize.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "default-azurebatch-japaneast", + "accountName": "sampleacct", + "poolName": "testpool", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": { + "ETag": "W/\"0x8D4EDFEBFADF4AB\"" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool", + "name": "testpool", + "type": "Microsoft.Batch/batchAccounts/pools", + "etag": "W/\"0x8D4EDFEBFADF4AB\"", + "properties": { + "lastModified": "2017-08-28T10:22:55.9407275Z", + "creationTime": "2017-08-28T10:22:55.9407275Z", + "provisioningState": "Succeeded", + "provisioningStateTransitionTime": "2017-08-28T10:22:55.9407275Z", + "allocationState": "Steady", + "allocationStateTransitionTime": "2017-08-28T10:22:55.9407275Z", + "vmSize": "STANDARD_D4", + "interNodeCommunication": "Disabled", + "maxTasksPerNode": 1, + "taskSchedulingPolicy": { + "nodeFillType": "Spread" + }, + "deploymentConfiguration": { + "virtualMachineConfiguration": { + "imageReference": { + "publisher": "Canonical", + "offer": "UbuntuServer", + "sku": "18.04-LTS", + "version": "latest" + }, + "nodeAgentSkuId": "batch.node.ubuntu 18.04" + } + }, + "scaleSettings": { + "fixedScale": { + "targetDedicatedNodes": 3, + "targetLowPriorityNodes": 0, + "resizeTimeout": "PT15M" + } + }, + "resizeOperationStatus": { + "startTime": "2017-08-28T10:22:55.9407275Z", + "targetDedicatedNodes": 1, + "nodeDeallocationOption": "Requeue", + "resizeTimeout": "PT10M" + }, + "currentDedicatedNodes": 0, + "currentLowPriorityNodes": 0 + } + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolUpdate_EnableAutoScale.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolUpdate_EnableAutoScale.json new file mode 100644 index 000000000000..d86f740018cb --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolUpdate_EnableAutoScale.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "default-azurebatch-japaneast", + "accountName": "sampleacct", + "poolName": "testpool", + "api-version": "2020-03-01", + "parameters": { + "properties": { + "scaleSettings": { + "autoScale": { + "formula": "$TargetDedicatedNodes=34" + } + } + } + } + }, + "responses": { + "200": { + "headers": { + "ETag": "W/\"0x8D4EDFEBFADF4AB\"" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool", + "name": "testpool", + "type": "Microsoft.Batch/batchAccounts/pools", + "etag": "W/\"0x8D4EDFEBFADF4AB\"", + "properties": { + "lastModified": "2017-08-29T10:22:55.9407275Z", + "creationTime": "2017-08-28T10:22:55.9407275Z", + "provisioningState": "Succeeded", + "provisioningStateTransitionTime": "2017-08-28T10:22:55.9407275Z", + "allocationState": "Resizing", + "allocationStateTransitionTime": "2017-08-29T10:22:55.9407275Z", + "vmSize": "STANDARD_D4", + "interNodeCommunication": "Disabled", + "maxTasksPerNode": 1, + "taskSchedulingPolicy": { + "nodeFillType": "Spread" + }, + "deploymentConfiguration": { + "cloudServiceConfiguration": { + "osFamily": "5", + "osVersion": "*" + } + }, + "scaleSettings": { + "autoScale": { + "formula": "$TargetDedicated=34", + "evaluationInterval": "PT15M" + } + }, + "autoScaleRun": { + "evaluationTime": "2017-08-29T10:22:55.9407275Z", + "results": "$TargetDedicatedNodes=34;NodeDeallocationOption=requeue" + }, + "currentDedicatedNodes": 12, + "currentLowPriorityNodes": 0, + "resizeOperationStatus": { + "startTime": "2017-08-29T10:22:55.9407275Z", + "targetDedicatedNodes": 34, + "nodeDeallocationOption": "Requeue", + "resizeTimeout": "PT15M" + } + } + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolUpdate_OtherProperties.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolUpdate_OtherProperties.json new file mode 100644 index 000000000000..6fdba740e30a --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolUpdate_OtherProperties.json @@ -0,0 +1,115 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "default-azurebatch-japaneast", + "accountName": "sampleacct", + "poolName": "testpool", + "api-version": "2020-03-01", + "parameters": { + "properties": { + "metadata": [ + { + "name": "key1", + "value": "value1" + } + ], + "applicationPackages": [ + { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool/applications/app_1234" + }, + { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool/applications/app_5678", + "version": "1.0" + } + ], + "certificates": [ + { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool/certificates/sha1-1234567", + "storeLocation": "LocalMachine", + "storeName": "MY" + } + ] + } + } + }, + "responses": { + "200": { + "headers": { + "ETag": "W/\"0x8D4EDFEBFADF4AB\"" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool", + "name": "testpool", + "type": "Microsoft.Batch/batchAccounts/pools", + "etag": "W/\"0x8D4EDFEBFADF4AB\"", + "properties": { + "lastModified": "2017-08-29T10:22:55.9407275Z", + "creationTime": "2017-08-28T10:22:55.9407275Z", + "provisioningState": "Succeeded", + "provisioningStateTransitionTime": "2017-08-28T10:22:55.9407275Z", + "allocationState": "Resizing", + "allocationStateTransitionTime": "2017-08-29T10:22:55.9407275Z", + "vmSize": "STANDARD_D4", + "interNodeCommunication": "Disabled", + "maxTasksPerNode": 1, + "taskSchedulingPolicy": { + "nodeFillType": "Spread" + }, + "deploymentConfiguration": { + "cloudServiceConfiguration": { + "osFamily": "5", + "osVersion": "*" + } + }, + "scaleSettings": { + "fixedScale": { + "targetDedicatedNodes": 1, + "targetLowPriorityNodes": 0, + "resizeTimeout": "PT8M", + "nodeDeallocationOption": "TaskCompletion" + } + }, + "autoScaleRun": { + "evaluationTime": "2017-08-29T10:22:55.9407275Z", + "results": "$TargetDedicatedNodes=34;NodeDeallocationOption=requeue" + }, + "currentDedicatedNodes": 12, + "currentLowPriorityNodes": 0, + "resizeOperationStatus": { + "startTime": "2017-08-29T10:22:55.9407275Z", + "targetDedicatedNodes": 8, + "nodeDeallocationOption": "TaskCompletion", + "resizeTimeout": "PT8M" + }, + "metadata": [ + { + "name": "key1", + "value": "value1" + } + ], + "applicationPackages": [ + { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool/applications/app_1234" + }, + { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool/applications/app_5678", + "version": "1.0" + } + ], + "certificates": [ + { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool/certificates/sha1-1234567", + "storeLocation": "LocalMachine", + "storeName": "MY", + "visibility": [ + "StartTask", + "Task", + "RemoteUser" + ] + } + ] + } + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolUpdate_RemoveStartTask.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolUpdate_RemoveStartTask.json new file mode 100644 index 000000000000..a7c6dfcb8400 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolUpdate_RemoveStartTask.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "default-azurebatch-japaneast", + "accountName": "sampleacct", + "poolName": "testpool", + "api-version": "2020-03-01", + "parameters": { + "properties": { + "startTask": {} + } + } + }, + "responses": { + "200": { + "headers": { + "ETag": "W/\"0x8D4EDFEBFADF4AB\"" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool", + "name": "testpool", + "type": "Microsoft.Batch/batchAccounts/pools", + "etag": "W/\"0x8D4EDFEBFADF4AB\"", + "properties": { + "lastModified": "2017-08-29T10:22:55.9407275Z", + "creationTime": "2017-08-28T10:22:55.9407275Z", + "provisioningState": "Succeeded", + "provisioningStateTransitionTime": "2017-08-28T10:22:55.9407275Z", + "allocationState": "Resizing", + "allocationStateTransitionTime": "2017-08-29T10:22:55.9407275Z", + "vmSize": "STANDARD_D4", + "interNodeCommunication": "Disabled", + "maxTasksPerNode": 1, + "taskSchedulingPolicy": { + "nodeFillType": "Spread" + }, + "deploymentConfiguration": { + "cloudServiceConfiguration": { + "osFamily": "5", + "osVersion": "*" + } + }, + "scaleSettings": { + "autoScale": { + "formula": "$TargetDedicated=34", + "evaluationInterval": "PT15M" + } + }, + "autoScaleRun": { + "evaluationTime": "2017-08-29T10:22:55.9407275Z", + "results": "$TargetDedicatedNodes=34;NodeDeallocationOption=requeue" + }, + "currentDedicatedNodes": 12, + "currentLowPriorityNodes": 0, + "resizeOperationStatus": { + "startTime": "2017-08-29T10:22:55.9407275Z", + "targetDedicatedNodes": 34, + "nodeDeallocationOption": "Requeue", + "resizeTimeout": "PT15M" + } + } + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolUpdate_ResizePool.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolUpdate_ResizePool.json new file mode 100644 index 000000000000..80bedc5a07b7 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PoolUpdate_ResizePool.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "default-azurebatch-japaneast", + "accountName": "sampleacct", + "poolName": "testpool", + "api-version": "2020-03-01", + "parameters": { + "properties": { + "scaleSettings": { + "fixedScale": { + "targetDedicatedNodes": 5, + "targetLowPriorityNodes": 0, + "resizeTimeout": "PT8M", + "nodeDeallocationOption": "TaskCompletion" + } + } + } + } + }, + "responses": { + "200": { + "headers": { + "ETag": "W/\"0x8D4EDFEBFADF4AB\"" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool", + "name": "testpool", + "type": "Microsoft.Batch/batchAccounts/pools", + "etag": "W/\"0x8D4EDFEBFADF4AB\"", + "properties": { + "lastModified": "2017-08-29T10:22:55.9407275Z", + "creationTime": "2017-08-28T10:22:55.9407275Z", + "provisioningState": "Succeeded", + "provisioningStateTransitionTime": "2017-08-28T10:22:55.9407275Z", + "allocationState": "Resizing", + "allocationStateTransitionTime": "2017-08-29T10:22:55.9407275Z", + "vmSize": "STANDARD_D4", + "interNodeCommunication": "Disabled", + "maxTasksPerNode": 1, + "taskSchedulingPolicy": { + "nodeFillType": "Spread" + }, + "deploymentConfiguration": { + "cloudServiceConfiguration": { + "osFamily": "5", + "osVersion": "*" + } + }, + "scaleSettings": { + "fixedScale": { + "targetDedicatedNodes": 1, + "targetLowPriorityNodes": 0, + "resizeTimeout": "PT8M", + "nodeDeallocationOption": "TaskCompletion" + } + }, + "autoScaleRun": { + "evaluationTime": "2017-08-29T10:22:55.9407275Z", + "results": "$TargetDedicatedNodes=34;NodeDeallocationOption=requeue" + }, + "currentDedicatedNodes": 12, + "currentLowPriorityNodes": 0, + "resizeOperationStatus": { + "startTime": "2017-08-29T10:22:55.9407275Z", + "targetDedicatedNodes": 8, + "nodeDeallocationOption": "TaskCompletion", + "resizeTimeout": "PT8M" + } + } + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateBatchAccountCreate.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateBatchAccountCreate.json new file mode 100644 index 000000000000..41a9e9f2ceed --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateBatchAccountCreate.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "accountName": "sampleacct", + "resourceGroupName": "default-azurebatch-japaneast", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "parameters": { + "location": "japaneast", + "properties": { + "autoStorage": { + "storageAccountId": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Storage/storageAccounts/samplestorage" + }, + "keyVaultReference": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.KeyVault/vaults/sample", + "url": "http://sample.vault.azure.net/" + }, + "publicNetworkAccess": "Disabled" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "sampleacct", + "location": "japaneast", + "properties": { + "accountEndpoint": "sampleacct.japaneast.batch.azure.com", + "provisioningState": "Succeeded", + "poolAllocationMode": "UserSubscription", + "dedicatedCoreQuota": 20, + "lowPriorityCoreQuota": 20, + "poolQuota": 20, + "activeJobAndJobScheduleQuota": 20, + "autoStorage": { + "storageAccountId": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Storage/storageAccounts/samplestorage", + "lastKeySync": "2016-03-10T23:48:38.9878479Z" + }, + "keyVaultReference": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.KeyVault/vaults/sample", + "url": "http://sample.vault.azure.net/" + }, + "publicNetworkAccess": "Disabled" + }, + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct", + "type": "Microsoft.Batch/batchAccounts" + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateBatchAccountGet.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateBatchAccountGet.json new file mode 100644 index 000000000000..dab89f66207d --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateBatchAccountGet.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "accountName": "sampleacct", + "resourceGroupName": "default-azurebatch-japaneast", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "sampleacct", + "location": "japaneast", + "properties": { + "accountEndpoint": "sampleacct.japaneast.batch.azure.com", + "provisioningState": "Succeeded", + "poolAllocationMode": "BatchService", + "dedicatedCoreQuota": 20, + "lowPriorityCoreQuota": 20, + "poolQuota": 20, + "activeJobAndJobScheduleQuota": 20, + "autoStorage": { + "storageAccountId": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Storage/storageAccounts/samplestorage", + "lastKeySync": "2016-03-10T23:48:38.9878479Z" + }, + "publicNetworkAccess": "Disabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/privateEndpointConnections/testprivateEndpointConnection", + "name": "testprivateEndpointConnection", + "type": "Microsoft.Batch/batchAccounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Network/privateEndpoints/testprivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by xyz.abc@company.com" + } + } + } + ] + }, + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct", + "type": "Microsoft.Batch/batchAccounts" + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateEndpointConnectionGet.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateEndpointConnectionGet.json new file mode 100644 index 000000000000..afc8015b336d --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateEndpointConnectionGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "default-azurebatch-japaneast", + "accountName": "sampleacct", + "privateEndpointConnectionName": "testprivateEndpointConnection", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/privateEndpointConnections/testprivateEndpointConnection", + "name": "sampleacct", + "type": "Microsoft.Batch/batchAccounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Network/privateEndpoints/testprivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by xyz.abc@company.com" + } + } + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateEndpointConnectionUpdate.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateEndpointConnectionUpdate.json new file mode 100644 index 000000000000..3d6e5e454647 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateEndpointConnectionUpdate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "default-azurebatch-japaneast", + "accountName": "sampleacct", + "privateEndpointConnectionName": "testprivateEndpointConnection", + "api-version": "2020-03-01", + "parameters": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by xyz.abc@company.com" + } + } + } + }, + "responses": { + "200": { + "headers": { + "ETag": "W/\"0x8D4EDFEBFADF4AB\"" + }, + "body": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/pools/testpool", + "name": "testpool", + "type": "Microsoft.Batch/batchAccounts/pools", + "etag": "W/\"0x8D4EDFEBFADF4AB\"", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Network/privateEndpoints/testprivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by xyz.abc@company.com" + } + } + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateEndpointConnectionsList.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateEndpointConnectionsList.json new file mode 100644 index 000000000000..ecae6f808a77 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateEndpointConnectionsList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "default-azurebatch-japaneast", + "accountName": "sampleacct", + "privateEndpointConnectionName": "testprivateEndpointConnection", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/privateEndpointConnections/testprivateEndpointConnection", + "name": "testprivateEndpointConnection", + "type": "Microsoft.Batch/batchAccounts/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Network/privateEndpoints/testprivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by xyz.abc@company.com" + } + } + } + ] + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateLinkResourceGet.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateLinkResourceGet.json new file mode 100644 index 000000000000..cb44db083e6e --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateLinkResourceGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "default-azurebatch-japaneast", + "accountName": "sampleacct", + "privateLinkResourceName": "sampleacct", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/privateLinkResources/sampleacct", + "name": "sampleacct", + "type": "Microsoft.Batch/batchAccounts/privateLinkResources", + "properties": { + "groupId": "batchAccount", + "requiredMembers": [ + "batchAccount" + ], + "requiredZoneNames": [ + "privatelink.japaneast.batch.azure.com" + ] + } + } + } + } +} diff --git a/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateLinkResourcesList.json b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateLinkResourcesList.json new file mode 100644 index 000000000000..e3baf7bcfa61 --- /dev/null +++ b/specification/batch/resource-manager/Microsoft.Batch/stable/2020-03-01/examples/PrivateLinkResourcesList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "default-azurebatch-japaneast", + "accountName": "sampleacct", + "privateLinkResourceName": "testprivateLinkResource", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Batch/batchAccounts/sampleacct/privateLinkResources/testprivateLinkResource", + "name": "testprivateLinkResource", + "type": "Microsoft.Batch/batchAccounts/privateLinkResources", + "properties": { + "groupId": "batchAccount", + "requiredMembers": [ + "batchAccount" + ], + "requiredZoneNames": [ + "privatelink.japaneast.batch.azure.com" + ] + } + } + ] + } + } + } +} diff --git a/specification/batch/resource-manager/readme.go.md b/specification/batch/resource-manager/readme.go.md index 28c867e3aa16..35692665cfa7 100644 --- a/specification/batch/resource-manager/readme.go.md +++ b/specification/batch/resource-manager/readme.go.md @@ -14,6 +14,7 @@ go: ### Go multi-api ``` yaml $(go) && $(multiapi) batch: + - tag: package-2020-03 - tag: package-2019-08 - tag: package-2019-04 - tag: package-2018-12 @@ -23,6 +24,16 @@ batch: - tag: package-2015-12 ``` +### Tag: package-2020-03 and go + +These settings apply only when `--tag=package-2020-03 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2020-03' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2020-03-01/$(namespace) +``` + + ### Tag: package-2019-08 and go These settings apply only when `--tag=package-2019-08 --go` is specified on the command line. diff --git a/specification/batch/resource-manager/readme.md b/specification/batch/resource-manager/readme.md index a2f1db7b2e8e..ffa9383df33d 100644 --- a/specification/batch/resource-manager/readme.md +++ b/specification/batch/resource-manager/readme.md @@ -26,7 +26,16 @@ These are the global settings for the Batch API. ``` yaml openapi-type: arm -tag: package-2019-08 +tag: package-2020-03 +``` + +### Tag: package-2020-03 + +These settings apply only when `--tag=package-2020-03` is specified on the command line. + +```yaml $(tag) == 'package-2020-03' +input-file: + - Microsoft.Batch/stable/2020-03-01/BatchManagement.json ``` ### Tag: package-2019-08 @@ -262,6 +271,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(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 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 35ec35e909a5..474087d42ac9 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 @@ -33,14 +33,14 @@ } }, "operationId": "BillingAccounts_List", - "description": "Lists all billing accounts for a user which he has access to.", + "description": "Lists the billing accounts that a user has access to.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" }, { "name": "$expand", - "description": "May be used to expand the address, invoiceSections and billingProfiles.", + "description": "May be used to expand the address, invoice sections and billing profiles.", "in": "query", "required": false, "type": "string" @@ -76,7 +76,7 @@ } }, "operationId": "BillingAccounts_Get", - "description": "Get the billing account by id.", + "description": "Gets a billing account by its ID.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -86,7 +86,7 @@ }, { "name": "$expand", - "description": "May be used to expand the address, invoiceSections and billingProfiles.", + "description": "May be used to expand the address, invoice sections and billing profiles.", "in": "query", "required": false, "type": "string" @@ -116,7 +116,7 @@ "x-ms-long-running-operation-options": { "final-state-via": "azure-async-operation" }, - "description": "The operation to update a billing account.", + "description": "Updates the properties of a billing account. Currently, displayName and address can be updated. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "x-ms-examples": { "UpdateBillingAccount": { "$ref": "./examples/UpdateBillingAccount.json" @@ -136,7 +136,7 @@ "schema": { "$ref": "#/definitions/BillingAccountUpdateRequest" }, - "description": "Request parameters supplied to the update billing account operation." + "description": "Request parameters that are provided to the update billing account operation." } ], "responses": { @@ -169,7 +169,7 @@ } }, "operationId": "BillingAccounts_ListInvoiceSectionsByCreateSubscriptionPermission", - "description": "Lists all invoice sections with create subscription permission for a user.", + "description": "Lists the invoice sections for which the user has permission to create Azure subscriptions. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -203,7 +203,7 @@ "PaymentMethods" ], "operationId": "PaymentMethods_ListByBillingAccount", - "description": "Lists the Payment Methods by billing account Id.", + "description": "Lists the payment Methods for a billing account. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/2019-10-01-preview/paymentmethods" }, @@ -253,7 +253,7 @@ } }, "operationId": "Address_Validate", - "description": "Validates the address.", + "description": "Validates an address. Use the operation to validate an address before using it as a billing account or a billing profile address.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -289,7 +289,7 @@ "AvailableBalances" ], "operationId": "AvailableBalances_GetByBillingProfile", - "description": "The latest available credit balance for a given billingAccountName and billingProfileName.", + "description": "The available credit balance for a billing profile. This is the balance that can be used for pay now to settle due or past due invoices. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "x-ms-examples": { "AvailableBalanceByBillingProfile": { "$ref": "./examples/AvailableBalanceByBillingProfile.json" @@ -378,7 +378,7 @@ } }, "operationId": "Instructions_Get", - "description": "Get the instruction by name.", + "description": "Get the instruction by name. These are custom billing instructions and are only applicable for certain customers.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -413,7 +413,7 @@ "Instructions" ], "operationId": "Instructions_Put", - "description": "The operation to create or update a instruction.", + "description": "Creates or updates an instruction. These are custom billing instructions and are only applicable for certain customers.", "x-ms-examples": { "PutInstruction": { "$ref": "./examples/PutInstruction.json" @@ -464,7 +464,7 @@ "PaymentMethods" ], "operationId": "PaymentMethods_ListByBillingProfile", - "description": "Lists the Payment Methods by billing profile Id.", + "description": "Lists the payment Methods for a billing profile. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -517,7 +517,7 @@ } }, "operationId": "BillingProfiles_ListByBillingAccount", - "description": "Lists all billing profiles for a user which that user has access to.", + "description": "Lists the billing profiles that a user has access to. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement or Microsoft Partner Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -527,7 +527,7 @@ }, { "name": "$expand", - "description": "May be used to expand the invoiceSections.", + "description": "May be used to expand the invoice sections.", "in": "query", "required": false, "type": "string" @@ -563,7 +563,7 @@ } }, "operationId": "BillingProfiles_Get", - "description": "Get the billing profile by id.", + "description": "Gets a billing profile by its ID. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement or Microsoft Partner Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -576,7 +576,7 @@ }, { "name": "$expand", - "description": "May be used to expand the invoiceSections.", + "description": "May be used to expand the invoice sections.", "in": "query", "required": false, "type": "string" @@ -603,7 +603,7 @@ ], "operationId": "BillingProfiles_Create", "x-ms-long-running-operation": true, - "description": "The operation to create a BillingProfile.", + "description": "Creates a billing profile. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement or Microsoft Partner Agreement.", "x-ms-examples": { "CreateBillingProfile": { "$ref": "./examples/CreateBillingProfile.json" @@ -626,7 +626,7 @@ "schema": { "$ref": "#/definitions/BillingProfileCreationRequest" }, - "description": "Request parameters supplied to the Create BillingProfile operation." + "description": "Request parameters that are provided to the create billing profile operation." } ], "responses": { @@ -644,7 +644,7 @@ "type": "string" }, "Retry-After": { - "description": "Recommends the retryable time after receiving this.", + "description": "Recommended time to wait before making another request to check the status of the operation. The time is specified in seconds.", "type": "integer" } } @@ -663,7 +663,7 @@ ], "operationId": "BillingProfiles_Update", "x-ms-long-running-operation": true, - "description": "The operation to update a billing profile.", + "description": "Updates the properties of a billing profile. Currently, displayName, poNumber, bill-to address and invoiceEmailOptIn can be updated. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement or Microsoft Partner Agreement.", "x-ms-examples": { "UpdateBillingProfile": { "$ref": "./examples/UpdateBillingProfile.json" @@ -729,7 +729,7 @@ } }, "operationId": "Customers_ListByBillingProfile", - "description": "Lists customers by billing profile which the current user can work with on-behalf of a partner.", + "description": "Lists the customers that are billed to a billing profile. The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -785,7 +785,7 @@ } }, "operationId": "InvoiceSections_ListByBillingProfile", - "description": "Lists all invoice sections for a user which he has access to.", + "description": "Lists the invoice sections that a user has access to. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -824,7 +824,7 @@ } }, "operationId": "InvoiceSections_Get", - "description": "Get the InvoiceSection by id.", + "description": "Gets an invoice section by its ID. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -860,7 +860,7 @@ ], "operationId": "InvoiceSections_Create", "x-ms-long-running-operation": true, - "description": "The operation to create an invoice section.", + "description": "Creates an invoice section. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "x-ms-examples": { "CreateInvoiceSection": { "$ref": "./examples/CreateInvoiceSection.json" @@ -886,7 +886,7 @@ "schema": { "$ref": "#/definitions/InvoiceSectionCreationRequest" }, - "description": "Request parameters supplied to the Create InvoiceSection operation." + "description": "Request parameters that are provided to the create invoice section operation." } ], "responses": { @@ -904,7 +904,7 @@ "type": "string" }, "Retry-After": { - "description": "Recommends the retryable time after receiving this.", + "description": "Recommended time to wait before making another request to check the status of the operation. The time is specified in seconds.", "type": "integer" } } @@ -923,7 +923,7 @@ ], "operationId": "InvoiceSections_Update", "x-ms-long-running-operation": true, - "description": "The operation to update a InvoiceSection.", + "description": "Updates an invoice section. Currently, only displayName can be updated. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "x-ms-examples": { "UpdateInvoiceSection": { "$ref": "./examples/UpdateInvoiceSection.json" @@ -949,7 +949,7 @@ "schema": { "$ref": "#/definitions/InvoiceSection" }, - "description": "Request parameters supplied to the Create InvoiceSection operation." + "description": "Request parameters that are provided to the update invoice section operation." } ], "responses": { @@ -992,7 +992,7 @@ } }, "operationId": "Customers_ListByBillingAccount", - "description": "Lists customers which the current user can work with on-behalf of a partner.", + "description": "Lists the customers that are billed to a billing account. The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -1048,7 +1048,7 @@ } }, "operationId": "Customers_Get", - "description": "Gets a customer by its id.", + "description": "Gets a customer by its ID. The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -1061,7 +1061,7 @@ }, { "name": "$expand", - "description": "May be used to expand enabledAzurePlans, resellers.", + "description": "May be used to expand enabledAzurePlans and resellers", "in": "query", "required": false, "type": "string" @@ -1094,7 +1094,7 @@ } }, "operationId": "BillingPermissions_ListByCustomer", - "description": "Lists all billing permissions the caller has for a customer.", + "description": "Lists the billing permissions the caller has for a customer.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -1128,9 +1128,9 @@ "BillingSubscriptions" ], "operationId": "BillingSubscriptions_ListByCustomer", - "description": "Lists billing subscription by customer id.", + "description": "Lists the subscriptions for a customer. The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, "x-ms-examples": { "BillingSubscriptionsListByCustomer": { @@ -1173,9 +1173,9 @@ "BillingSubscriptions" ], "operationId": "BillingSubscriptions_GetByCustomer", - "description": "Get a single billing subscription by id.", + "description": "Gets a subscription by its ID. The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, "x-ms-examples": { "BillingSubscriptionByCustomer": { @@ -1218,7 +1218,7 @@ "Products" ], "operationId": "Products_ListByCustomer", - "description": "Lists products by customer id.", + "description": "Lists the products for a customer. These don't include products billed based on usage.The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -1239,7 +1239,7 @@ }, { "name": "$filter", - "description": "May be used to filter by product type. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).", + "description": "May be used to filter by product type. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value are separated by a colon (:).", "in": "query", "required": false, "type": "string" @@ -1267,7 +1267,7 @@ "Products" ], "operationId": "Products_GetByCustomer", - "description": "Get a customer's product by name.", + "description": "Gets a product by ID. The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -1312,9 +1312,9 @@ "Transactions" ], "operationId": "Transactions_ListByCustomer", - "description": "Lists the transactions by customer id for given start date and end date.", + "description": "Lists the billed and unbilled transactions by customer id for given start date and end date. Transactions include purchases, refunds and Azure usage charges. Unbilled transactions are listed under pending invoice Id and do not include tax. Tax is added to the amount once an invoice is generated.", "externalDocs": { - "url": "https://docs.microsoft.com/en-us/rest/api/consumption/" + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, "x-ms-examples": { "TransactionsListByCustomer": { @@ -1337,20 +1337,20 @@ { "name": "periodStartDate", "in": "query", - "description": "Start date", + "description": "The start date to fetch the transactions. The date should be specified in MM-DD-YYYY format.", "required": true, "type": "string" }, { "name": "periodEndDate", "in": "query", - "description": "End date", + "description": "The end date to fetch the transactions. The date should be specified in MM-DD-YYYY format.", "required": true, "type": "string" }, { "name": "$filter", - "description": "May be used to filter by transaction kind. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).", + "description": "May be used to filter by transaction type. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value are separated by a colon (:).", "in": "query", "required": false, "type": "string" @@ -1389,7 +1389,7 @@ } }, "operationId": "Departments_ListByBillingAccountName", - "description": "Lists all departments for a user which he has access to.", + "description": "Lists the departments that a user has access to. The operation is supported only for billing accounts with agreement type Enterprise Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -1399,14 +1399,14 @@ }, { "name": "$expand", - "description": "May be used to expand the enrollmentAccounts.", + "description": "May be used to expand the enrollment accounts.", "in": "query", "required": false, "type": "string" }, { "name": "$filter", - "description": "The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).", + "description": "May be used to filter by department name. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value are separated by a colon (:).", "in": "query", "required": false, "type": "string" @@ -1442,7 +1442,7 @@ } }, "operationId": "Departments_Get", - "description": "Get the department by id.", + "description": "Gets a department by ID. The operation is supported only for billing accounts with agreement type Enterprise Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -1455,14 +1455,14 @@ }, { "name": "$expand", - "description": "May be used to expand the enrollmentAccounts.", + "description": "May be used to expand the enrollment accounts.", "in": "query", "required": false, "type": "string" }, { "name": "$filter", - "description": "The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).", + "description": "May be used to filter by department name. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value are separated by a colon (:).", "in": "query", "required": false, "type": "string" @@ -1498,7 +1498,7 @@ } }, "operationId": "EnrollmentAccounts_ListByBillingAccountName", - "description": "Lists all Enrollment Accounts for a user which he has access to.", + "description": "Lists the enrollment accounts for a billing account. The operation is supported only for billing accounts with agreement type Enterprise Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -1515,7 +1515,7 @@ }, { "name": "$filter", - "description": "The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).", + "description": "May be used to filter by account name. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value are separated by a colon (:).", "in": "query", "required": false, "type": "string" @@ -1551,7 +1551,7 @@ } }, "operationId": "EnrollmentAccounts_GetByEnrollmentAccountId", - "description": "Get the enrollment account by id.", + "description": "Gets an enrollment account by ID. The operation is supported only for billing accounts with agreement type Enterprise Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -1564,14 +1564,14 @@ }, { "name": "$expand", - "description": "May be used to expand the Department.", + "description": "May be used to expand the department.", "in": "query", "required": false, "type": "string" }, { "name": "$filter", - "description": "The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).", + "description": "May be used to filter by account name. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value are separated by a colon (:).", "in": "query", "required": false, "type": "string" @@ -1604,7 +1604,7 @@ } }, "operationId": "Invoices_ListByBillingAccount", - "description": "List of invoices for a billing account.", + "description": "Lists the invoices for a billing account for a given start date and end date. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -1614,14 +1614,14 @@ }, { "name": "periodStartDate", - "description": "Invoice period start date.", + "description": "The start date to fetch the invoices. The date should be specified in MM-DD-YYYY format.", "in": "query", "required": true, "type": "string" }, { "name": "periodEndDate", - "description": "Invoice period end date.", + "description": "The end date to fetch the invoices. The date should be specified in MM-DD-YYYY format.", "in": "query", "required": true, "type": "string" @@ -1658,7 +1658,7 @@ "x-ms-long-running-operation-options": { "final-state-via": "location" }, - "description": "Download price sheet for an invoice.", + "description": "Gets a URL to download the pricesheet for an invoice. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -1721,7 +1721,7 @@ "x-ms-long-running-operation-options": { "final-state-via": "location" }, - "description": "Download price sheet for a billing profile.", + "description": "Gets a URL to download the current month's pricesheet for a billing profile. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -1777,7 +1777,7 @@ } }, "operationId": "Invoices_ListByBillingProfile", - "description": "List of invoices for a billing profile.", + "description": "Lists the invoices for a billing profile for a given start date and end date. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -1790,14 +1790,14 @@ }, { "name": "periodStartDate", - "description": "Invoice period start date.", + "description": "The start date to fetch the invoices. The date should be specified in MM-DD-YYYY format.", "in": "query", "required": true, "type": "string" }, { "name": "periodEndDate", - "description": "Invoice period end date.", + "description": "The end date to fetch the invoices. The date should be specified in MM-DD-YYYY format.", "in": "query", "required": true, "type": "string" @@ -1830,7 +1830,7 @@ } }, "operationId": "Invoices_Get", - "description": "Get the invoice by name.", + "description": "Gets an invoice by ID. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -1867,7 +1867,7 @@ "BillingSubscriptions" ], "operationId": "BillingSubscriptions_ListByBillingAccount", - "description": "Lists billing subscriptions by billing account name.", + "description": "Lists the subscriptions for a billing account. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement or Microsoft Partner Agreement.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -1909,7 +1909,7 @@ "Invoices" ], "operationId": "Invoices_ListByBillingSubscription", - "description": "Lists invoices by billing subscriptions name.", + "description": "Lists the invoices for a subscription.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -1968,7 +1968,7 @@ "Invoices" ], "operationId": "Invoices_GetById", - "description": "Gets the invoice by name.", + "description": "Gets an invoice by ID.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -2013,7 +2013,7 @@ "BillingSubscriptions" ], "operationId": "BillingSubscriptions_ListByBillingProfile", - "description": "Lists billing subscriptions by billing profile name.", + "description": "Lists the subscriptions that are billed to a billing profile. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement or Microsoft Partner Agreement.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -2055,7 +2055,7 @@ "BillingSubscriptions" ], "operationId": "BillingSubscriptions_ListByInvoiceSection", - "description": "Lists billing subscription by invoice section name.", + "description": "Lists the subscriptions that are billed to an invoice section. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -2100,7 +2100,7 @@ "BillingSubscriptions" ], "operationId": "BillingSubscriptions_Get", - "description": "Get a single billing subscription by name.", + "description": "Gets a subscription by its ID. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -2144,7 +2144,7 @@ }, "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/billingSubscriptions/{billingSubscriptionName}/transfer": { "post": { - "description": "Transfers the subscription from one invoice section to another within a billing account.", + "description": "Moves a subscription's charges to a new invoice section. The new invoice section must belong to the same billing profile as the existing invoice section. This operation is supported only for products that are purchased with a recurring charge and for billing accounts with agreement type Microsoft Customer Agreement.", "operationId": "BillingSubscriptions_Transfer", "x-ms-long-running-operation": true, "x-ms-examples": { @@ -2172,7 +2172,7 @@ "schema": { "$ref": "#/definitions/TransferBillingSubscriptionRequestProperties" }, - "description": "Request parameters supplied to the Transfer Billing Subscription operation." + "description": "Request parameters that are provided to the transfer product operation." } ], "responses": { @@ -2190,7 +2190,7 @@ "type": "string" }, "Retry-After": { - "description": "Recommends the retryable time after receiving this.", + "description": "Recommended time to wait before making another request to check the status of the operation. The time is specified in seconds.", "type": "integer" } } @@ -2215,7 +2215,7 @@ } }, "operationId": "BillingSubscriptions_ValidateTransfer", - "description": "Validates the transfer of billing subscriptions across invoice sections.", + "description": "Validates if a subscription's charges can be moved to a new invoice section. This operation is supported only for products that are purchased with a recurring charge and for billing accounts with agreement type Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/billingAccountNameParameter" @@ -2236,7 +2236,7 @@ "schema": { "$ref": "#/definitions/TransferBillingSubscriptionRequestProperties" }, - "description": "Parameters supplied to the Transfer Billing Subscription operation." + "description": "Request parameters that are provided to the validate transfer eligibility operation." } ], "responses": { @@ -2261,7 +2261,7 @@ "Products" ], "operationId": "Products_ListByBillingAccount", - "description": "Lists products by billing account name.", + "description": "Lists the products for a billing account. These don't include products billed based on usage. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement or Microsoft Partner Agreement.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -2279,7 +2279,7 @@ }, { "name": "$filter", - "description": "May be used to filter by product type. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).", + "description": "May be used to filter by product type. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value are separated by a colon (:).", "in": "query", "required": false, "type": "string" @@ -2310,7 +2310,7 @@ "Products" ], "operationId": "Products_ListByInvoiceSection", - "description": "Lists products by invoice section name.", + "description": "Lists the products for an invoice section. These don't include products billed based on usage. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -2334,7 +2334,7 @@ }, { "name": "$filter", - "description": "May be used to filter by product type. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).", + "description": "May be used to filter by product type. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value are separated by a colon (:).", "in": "query", "required": false, "type": "string" @@ -2362,7 +2362,7 @@ "Products" ], "operationId": "Products_Get", - "description": "Get a single product by name.", + "description": "Gets a product by ID. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -2410,7 +2410,7 @@ "Products" ], "operationId": "Products_Transfer", - "description": "The operation to transfer a Product to another invoice section.", + "description": "Moves a product's charges to a new invoice section. The new invoice section must belong to the same billing profile as the existing invoice section. This operation is supported only for products that are purchased with a recurring charge and for billing accounts with agreement type Microsoft Customer Agreement.", "x-ms-examples": { "TransferProduct": { "$ref": "./examples/TransferProduct.json" @@ -2439,7 +2439,7 @@ "schema": { "$ref": "#/definitions/TransferProductRequestProperties" }, - "description": "Parameters supplied to the Transfer Product operation." + "description": "Request parameters that are provided to the transfer product operation." } ], "responses": { @@ -2457,7 +2457,7 @@ "type": "string" }, "Retry-After": { - "description": "Recommends the retryable time after receiving this.", + "description": "Recommended time to wait before making another request to check the status of the operation. The time is specified in seconds.", "type": "integer" } } @@ -2482,7 +2482,7 @@ } }, "operationId": "Products_ValidateTransfer", - "description": "Validates the transfer of products across invoice sections.", + "description": "Validates if a product's charges can be moved to a new invoice section. This operation is supported only for products that are purchased with a recurring charge and for billing accounts with agreement type Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/billingAccountNameParameter" @@ -2503,7 +2503,7 @@ "schema": { "$ref": "#/definitions/TransferProductRequestProperties" }, - "description": "Parameters supplied to the Transfer Products operation." + "description": "Request parameters that are provided to the validate transfer eligibility operation." } ], "responses": { @@ -2528,7 +2528,7 @@ "Transactions" ], "operationId": "Transactions_ListByBillingAccount", - "description": "Lists the transactions by billing account name for given start and end date.", + "description": "Lists the billed and unbilled transactions by billing account name for given start and end date. Transactions include purchases, refunds and Azure usage charges. Unbilled transactions are listed under pending invoice ID and do not include tax. Tax is added to the amount once an invoice is generated.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -2550,20 +2550,20 @@ { "name": "periodStartDate", "in": "query", - "description": "Start date", + "description": "The start date to fetch the transactions. The date should be specified in MM-DD-YYYY format.", "required": true, "type": "string" }, { "name": "periodEndDate", "in": "query", - "description": "End date", + "description": "The end date to fetch the transactions. The date should be specified in MM-DD-YYYY format.", "required": true, "type": "string" }, { "name": "$filter", - "description": "May be used to filter by transaction kind. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).", + "description": "May be used to filter by transaction type. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value are separated by a colon (:).", "in": "query", "required": false, "type": "string" @@ -2594,7 +2594,7 @@ "Transactions" ], "operationId": "Transactions_ListByBillingProfile", - "description": "Lists the transactions by billing profile name for given start date and end date.", + "description": "Lists the billed and unbilled transactions by billing profile name for given start date and end date. Transactions include purchases, refunds and Azure usage charges. Unbilled transactions are listed under pending invoice Id and do not include tax. Tax is added to the amount once an invoice is generated.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -2619,20 +2619,20 @@ { "name": "periodStartDate", "in": "query", - "description": "Start date", + "description": "The start date to fetch the transactions. The date should be specified in MM-DD-YYYY format.", "required": true, "type": "string" }, { "name": "periodEndDate", "in": "query", - "description": "End date", + "description": "The end date to fetch the transactions. The date should be specified in MM-DD-YYYY format.", "required": true, "type": "string" }, { "name": "$filter", - "description": "May be used to filter by transaction kind. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).", + "description": "May be used to filter by transaction type. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value are separated by a colon (:).", "in": "query", "required": false, "type": "string" @@ -2660,7 +2660,7 @@ "Transactions" ], "operationId": "Transactions_ListByInvoiceSection", - "description": "Lists the transactions by invoice section name for given start date and end date.", + "description": "Lists the billed and unbilled transactions by invoice section name for given start date and end date. Transactions include purchases, refunds and Azure usage charges. Unbilled transactions are listed under pending invoice Id and do not include tax. Tax is added to the amount once an invoice is generated.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -2688,20 +2688,20 @@ { "name": "periodStartDate", "in": "query", - "description": "Start date", + "description": "The start date to fetch the transactions. The date should be specified in MM-DD-YYYY format.", "required": true, "type": "string" }, { "name": "periodEndDate", "in": "query", - "description": "End date", + "description": "The end date to fetch the transactions. The date should be specified in MM-DD-YYYY format.", "required": true, "type": "string" }, { "name": "$filter", - "description": "May be used to filter by transaction kind. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).", + "description": "May be used to filter by transaction type. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value are separated by a colon (:).", "in": "query", "required": false, "type": "string" @@ -2723,13 +2723,61 @@ } } }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoices/{invoiceName}/transactions": { + "get": { + "tags": [ + "Transactions" + ], + "operationId": "Transactions_ListByInvoice", + "description": "Lists the transactions for an invoice. Transactions include purchases, refunds and Azure usage charges.", + "externalDocs": { + "url": "https://docs.microsoft.com/en-us/rest/api/billing/" + }, + "x-ms-examples": { + "TransactionsListByInvoice": { + "$ref": "./examples/TransactionsListByInvoice.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/billingAccountNameParameter" + }, + { + "$ref": "#/parameters/billingProfileNameParameter" + }, + { + "$ref": "#/parameters/invoiceNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/TransactionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/transactions/{transactionName}": { "get": { "tags": [ "Transactions" ], "operationId": "Transactions_Get", - "description": "Get the transaction.", + "description": "Gets a transaction by ID. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement or Microsoft Partner Agreement.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -2751,14 +2799,14 @@ { "name": "periodStartDate", "in": "query", - "description": "Start date", + "description": "The start date to fetch the transactions. The date should be specified in MM-DD-YYYY format.", "required": true, "type": "string" }, { "name": "periodEndDate", "in": "query", - "description": "End date", + "description": "The end date to fetch the transactions. The date should be specified in MM-DD-YYYY format.", "required": true, "type": "string" }, @@ -2788,7 +2836,7 @@ "Policies" ], "operationId": "Policies_GetByBillingProfile", - "description": "The policy for a given billing account name and billing profile name.", + "description": "Lists the policies for a billing profile. This operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -2828,7 +2876,7 @@ "Policies" ], "operationId": "Policies_Update", - "description": "The operation to update a policy.", + "description": "Updates the policies for a billing profile. This operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "x-ms-examples": { "UpdateBillingProfile": { "$ref": "./examples/UpdatePolicy.json" @@ -2851,7 +2899,7 @@ "schema": { "$ref": "#/definitions/Policy" }, - "description": "Parameters supplied to the update policy operation." + "description": "Request parameters that are provided to the update policies operation." } ], "responses": { @@ -2876,7 +2924,7 @@ "Policies" ], "operationId": "Policies_GetByCustomer", - "description": "The policy for a given billing account name and customer name.", + "description": "Lists the policies for a customer. This operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -2916,7 +2964,7 @@ "Policies" ], "operationId": "Policies_UpdateCustomer", - "description": "The operation to update a Customer policy.", + "description": "Updates the policies for a customer. This operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", "x-ms-examples": { "UpdateCustomer": { "$ref": "./examples/UpdateCustomerPolicy.json" @@ -2939,7 +2987,7 @@ "schema": { "$ref": "#/definitions/CustomerPolicy" }, - "description": "Parameters supplied to the update customer policy operation." + "description": "Request parameters that are provided to the update policies operation." } ], "responses": { @@ -2964,7 +3012,7 @@ "BillingProperties" ], "operationId": "BillingProperty_Get", - "description": "Get billing property by subscription Id.", + "description": "Get the billing properties for a subscription. This operation is not supported for billing accounts with agreement type Enterprise Agreement.", "externalDocs": { "url": "https://docs.microsoft.com/en-us/rest/api/billing/" }, @@ -3050,7 +3098,7 @@ "tags": [ "InvoiceSections" ], - "description": "Elevates the caller's access to match their billing profile access.", + "description": "Gives the caller permissions on an invoice section based on their billing profile access. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "operationId": "InvoiceSections_ElevateToBillingProfile", "x-ms-examples": { "Elevate": { @@ -3086,7 +3134,7 @@ "tags": [ "Transfers" ], - "description": "Initiates the request to transfer the legacy subscriptions or RIs.", + "description": "Sends a request to a user in another billing account to transfer billing ownership of their subscriptions. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "operationId": "Transfers_Initiate", "x-ms-examples": { "InitiateTransfer": { @@ -3110,7 +3158,7 @@ "schema": { "$ref": "#/definitions/InitiateTransferRequest" }, - "description": "Parameters supplied to initiate the transfer." + "description": "Request parameters that are provided to the initiate transfer operation." } ], "responses": { @@ -3134,7 +3182,7 @@ "tags": [ "Transfers" ], - "description": "Gets the transfer details for given transfer Id.", + "description": "Gets a transfer request by ID. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "operationId": "Transfers_Get", "x-ms-examples": { "TransferGet": { @@ -3174,7 +3222,7 @@ "tags": [ "Transfers" ], - "description": "Cancels the transfer for given transfer Id.", + "description": "Cancels a transfer request. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "operationId": "Transfers_Cancel", "x-ms-examples": { "TransferCancel": { @@ -3216,7 +3264,7 @@ "tags": [ "Transfers" ], - "description": "Lists all transfer's details initiated from given invoice section.", + "description": "Lists the transfer requests for an invoice section. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "operationId": "Transfers_List", "x-ms-examples": { "TransfersList": { @@ -3258,7 +3306,7 @@ "tags": [ "Transfers" ], - "description": "Initiates the request to transfer the legacy subscriptions or RIs.", + "description": "Sends a request to a user in a customer's billing account to transfer billing ownership of their subscriptions. The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", "operationId": "PartnerTransfers_Initiate", "x-ms-examples": { "InitiatePartnerTransfer": { @@ -3282,7 +3330,7 @@ "schema": { "$ref": "#/definitions/InitiateTransferRequest" }, - "description": "Parameters supplied to initiate the transfer." + "description": "Request parameters that are provided to the initiate transfer operation." } ], "responses": { @@ -3306,7 +3354,7 @@ "tags": [ "Transfers" ], - "description": "Gets the transfer details for given transfer Id.", + "description": "Gets a transfer request by ID. The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", "operationId": "PartnerTransfers_Get", "x-ms-examples": { "TransferGet": { @@ -3346,7 +3394,7 @@ "tags": [ "Transfers" ], - "description": "Cancels the transfer for given transfer Id.", + "description": "Cancels a transfer request. The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", "operationId": "PartnerTransfers_Cancel", "x-ms-examples": { "TransferCancel": { @@ -3388,7 +3436,7 @@ "tags": [ "Transfers" ], - "description": "Lists all transfer's details initiated from given invoice section.", + "description": "Lists the transfer requests sent to a customer. The operation is supported only for billing accounts with agreement type Microsoft Partner Agreement.", "operationId": "PartnerTransfers_List", "x-ms-examples": { "TransfersList": { @@ -3430,7 +3478,7 @@ "tags": [ "RecipientTransfers" ], - "summary": "Accepts the transfer with given transfer Id.", + "summary": "Accepts a transfer request.", "operationId": "RecipientTransfers_Accept", "x-ms-examples": { "AcceptTransfer": { @@ -3448,7 +3496,7 @@ "schema": { "$ref": "#/definitions/AcceptTransferRequest" }, - "description": "Parameters supplied to accept the transfer." + "description": "Request parameters that are provided to the accept transfer operation." } ], "responses": { @@ -3472,7 +3520,7 @@ "tags": [ "RecipientTransfers" ], - "summary": "Validates if the products can be transferred in the context of the given transfer name.", + "summary": "Validates if a subscription or a reservation can be transferred. Use this operation to validate your subscriptions or reservation before using the accept transfer operation.", "operationId": "RecipientTransfers_Validate", "x-ms-examples": { "ValidateTransfer": { @@ -3490,7 +3538,7 @@ "schema": { "$ref": "#/definitions/AcceptTransferRequest" }, - "description": "Parameters supplied to validate the transfer." + "description": "Request parameters that are provided to the validate transfer operation." } ], "responses": { @@ -3514,7 +3562,7 @@ "tags": [ "RecipientTransfers" ], - "summary": "Declines the transfer with given transfer Id.", + "summary": "Declines a transfer request.", "operationId": "RecipientTransfers_Decline", "x-ms-examples": { "DeclineTransfer": { @@ -3547,7 +3595,7 @@ "tags": [ "RecipientTransfers" ], - "summary": "Gets the transfer with given transfer Id.", + "summary": "Gets a transfer request by ID. The caller must be the recipient of the transfer request.", "operationId": "RecipientTransfers_Get", "x-ms-examples": { "RecipientTransferGet": { @@ -3580,7 +3628,7 @@ "tags": [ "RecipientTransfers" ], - "summary": "Lists the transfers received by caller.", + "summary": "Lists the transfer requests received by the caller.", "operationId": "RecipientTransfers_List", "x-ms-examples": { "RecipientTransfersList": { @@ -3612,7 +3660,7 @@ "Operations" ], "operationId": "Operations_List", - "description": "Lists all of the available billing REST API operations.", + "description": "Lists the available billing REST API operations.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -3648,7 +3696,7 @@ } }, "operationId": "BillingPermissions_ListByBillingAccount", - "description": "Lists all billing permissions for the caller under a billing account.", + "description": "Lists the billing permissions the caller has on a billing account.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -3684,7 +3732,7 @@ } }, "operationId": "BillingPermissions_ListByInvoiceSections", - "description": "Lists all billing permissions for the caller under invoice section.", + "description": "Lists the billing permissions the caller has on an invoice section.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -3726,7 +3774,7 @@ } }, "operationId": "BillingPermissions_ListByBillingProfile", - "description": "Lists all billing permissions the caller has for a billing account.", + "description": "Lists the billing permissions the caller has on a billing profile.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -3765,7 +3813,7 @@ } }, "operationId": "BillingRoleDefinitions_GetByBillingAccount", - "description": "Gets the role definition for a role", + "description": "Gets the definition for a role on a billing account. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -3804,7 +3852,7 @@ } }, "operationId": "BillingRoleDefinitions_GetByInvoiceSection", - "description": "Gets the role definition for a role", + "description": "Gets the definition for a role on an invoice section. The operation is supported only for billing accounts with agreement type Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -3849,7 +3897,7 @@ } }, "operationId": "BillingRoleDefinitions_GetByBillingProfile", - "description": "Gets the role definition for a role", + "description": "Gets the definition for a role on a billing profile. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -3891,7 +3939,7 @@ } }, "operationId": "BillingRoleDefinitions_ListByBillingAccount", - "description": "Lists the role definition for a billing account", + "description": "Lists the role definitions for a billing account. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -3927,7 +3975,7 @@ } }, "operationId": "BillingRoleDefinitions_ListByInvoiceSection", - "description": "Lists the role definition for an invoice Section", + "description": "Lists the role definitions for an invoice section. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -3969,7 +4017,7 @@ } }, "operationId": "BillingRoleDefinitions_ListByBillingProfile", - "description": "Lists the role definition for a Billing Profile", + "description": "Lists the role definitions for a billing profile. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -4008,7 +4056,7 @@ } }, "operationId": "BillingRoleAssignments_GetByBillingAccount", - "description": "Get the role assignment for the caller", + "description": "Gets a role assignment for the caller on a billing account. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -4045,7 +4093,7 @@ } }, "operationId": "BillingRoleAssignments_DeleteByBillingAccount", - "description": "Delete the role assignment on this billing account", + "description": "Deletes a role assignment for the caller on a billing account. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -4084,7 +4132,7 @@ } }, "operationId": "BillingRoleAssignments_GetByInvoiceSection", - "description": "Get the role assignment for the caller on the invoice Section", + "description": "Gets a role assignment for the caller on an invoice section. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -4127,7 +4175,7 @@ } }, "operationId": "BillingRoleAssignments_DeleteByInvoiceSection", - "description": "Delete the role assignment on the invoice Section", + "description": "Deletes a role assignment for the caller on an invoice section. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -4172,7 +4220,7 @@ } }, "operationId": "BillingRoleAssignments_GetByBillingProfile", - "description": "Get the role assignment for the caller on the Billing Profile", + "description": "Gets a role assignment for the caller on a billing profile. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -4212,7 +4260,7 @@ } }, "operationId": "BillingRoleAssignments_DeleteByBillingProfile", - "description": "Delete the role assignment on this Billing Profile", + "description": "Deletes a role assignment for the caller on a billing profile. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -4254,7 +4302,7 @@ } }, "operationId": "BillingRoleAssignments_ListByBillingAccount", - "description": "Get the role assignments on the Billing Account", + "description": "Lists the role assignments for the caller on a billing account. The operation is supported for billing accounts with agreement type Microsoft Partner Agreement or Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -4285,7 +4333,7 @@ "BillingRoleAssignments" ], "operationId": "BillingRoleAssignments_AddByBillingAccount", - "description": "The operation to add a role assignment to a billing account.", + "description": "Adds a role assignment on a billing account. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement.", "x-ms-examples": { "AddRoleAssignmentToBillingAccount": { "$ref": "./examples/AddRoleAssignmentToBillingAccount.json" @@ -4305,7 +4353,7 @@ "schema": { "$ref": "#/definitions/BillingRoleAssignmentPayload" }, - "description": "Parameters supplied to add a role assignment." + "description": "Request parameters that are provided to the create billing role assignment operation." } ], "responses": { @@ -4335,7 +4383,7 @@ } }, "operationId": "BillingRoleAssignments_ListByInvoiceSection", - "description": "Get the role assignments on the invoice Section", + "description": "Lists the role assignments for the caller on an invoice section. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -4372,7 +4420,7 @@ "BillingRoleAssignments" ], "operationId": "BillingRoleAssignments_AddByInvoiceSection", - "description": "The operation to add a role assignment to a invoice Section.", + "description": "Adds a role assignment on an invoice section. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement.", "x-ms-examples": { "AddRoleAssignmentToInvoiceSection": { "$ref": "./examples/AddRoleAssignmentToInvoiceSection.json" @@ -4398,7 +4446,7 @@ "schema": { "$ref": "#/definitions/BillingRoleAssignmentPayload" }, - "description": "Parameters supplied to add a role assignment." + "description": "Request parameters that are provided to the create billing role assignment operation." } ], "responses": { @@ -4428,7 +4476,7 @@ } }, "operationId": "BillingRoleAssignments_ListByBillingProfile", - "description": "Get the role assignments on the Billing Profile", + "description": "Lists the role assignments for the caller on a billing profile. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -4462,7 +4510,7 @@ "BillingRoleAssignments" ], "operationId": "BillingRoleAssignments_AddByBillingProfile", - "description": "The operation to add a role assignment to a billing profile.", + "description": "Adds a role assignment on a billing profile. The operation is supported for billing accounts with agreement type Microsoft Customer Agreement.", "x-ms-examples": { "AddRoleAssignmentToBillingProfile": { "$ref": "./examples/AddRoleAssignmentToBillingProfile.json" @@ -4485,7 +4533,7 @@ "schema": { "$ref": "#/definitions/BillingRoleAssignmentPayload" }, - "description": "Parameters supplied to add a role assignment." + "description": "Request parameters that are provided to the create billing role assignment operation." } ], "responses": { @@ -4515,7 +4563,7 @@ } }, "operationId": "Agreements_ListByBillingAccount", - "description": "Lists all agreements for a billing account.", + "description": "Lists the agreements for a billing account.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -4558,7 +4606,7 @@ } }, "operationId": "Agreements_Get", - "description": "Get the agreement by name.", + "description": "Gets an agreement by ID.", "parameters": [ { "$ref": "#/parameters/apiVersionParameter" @@ -4592,107 +4640,11 @@ } } } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Billing/billingAccounts/default/lineOfCredit/default": { - "get": { - "tags": [ - "LineOfCredits" - ], - "x-ms-examples": { - "LineOfCreditBySubscription": { - "$ref": "./examples/LineOfCreditBySubscription.json" - } - }, - "operationId": "LineOfCredits_Get", - "description": "Get the current line of credit.", - "parameters": [ - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/subscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/LineOfCredit" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - }, - "put": { - "tags": [ - "LineOfCredits" - ], - "operationId": "LineOfCredits_Update", - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "location" - }, - "x-ms-examples": { - "IncreaseLineOfCreditBySubscription": { - "$ref": "./examples/IncreaseLineOfCreditBySubscription.json" - } - }, - "description": "Increase the current line of credit.", - "parameters": [ - { - "$ref": "#/parameters/apiVersionParameter" - }, - { - "$ref": "#/parameters/subscriptionIdParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/LineOfCredit" - }, - "description": "Parameters supplied to the increase line of credit operation." - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/LineOfCredit" - } - }, - "202": { - "description": "Accepted. Line of credit increase is in progress.", - "headers": { - "Location": { - "description": "Location URI to poll for result.", - "type": "string" - }, - "Retry-After": { - "description": "Recommends the retryable time after receiving this.", - "type": "integer" - } - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - } - } } }, "definitions": { "CustomerListResult": { - "description": "Result of listing customers.", + "description": "The list of customers.", "properties": { "value": { "description": "The list of customers.", @@ -4733,14 +4685,14 @@ "type": "string" }, "enabledAzurePlans": { - "description": "Information about the product.", + "description": "Azure plans enabled for the customer.", "type": "array", "items": { "$ref": "#/definitions/AzurePlan" } }, "resellers": { - "description": "The resellers which are allowed to provide service to this customer.", + "description": "The list of resellers for which an Azure plan is enabled for the customer.", "type": "array", "items": { "$ref": "#/definitions/Reseller" @@ -4768,7 +4720,7 @@ "$ref": "#/definitions/AddressValidationStatus" }, "suggestedAddresses": { - "description": "list of suggested addresses.", + "description": "The list of suggested addresses.", "type": "array", "items": { "$ref": "#/definitions/AddressDetails" @@ -4782,7 +4734,7 @@ }, "AddressValidationStatus": { "type": "string", - "description": "Status of the address validation response.", + "description": "Status of the address validation.", "enum": [ "Valid", "Invalid" @@ -4798,11 +4750,11 @@ "properties": { "recipientEmailId": { "type": "string", - "description": "Email Id of recipient for transfer." + "description": "The email ID of the recipient to whom the transfer request is sent." }, "resellerId": { "type": "string", - "description": "Optional reseller Id for transfer." + "description": "Optional MPN ID of the reseller for transfer requests that are sent from a Microsoft Partner Agreement billing account." } } }, @@ -4832,21 +4784,21 @@ }, "ProductDetails": { "type": "object", - "description": "Details of the product to be transferred.", + "description": "Details of the product that is transferred.", "properties": { "productType": { - "description": "Type of the product to be transferred.", + "description": "Type of the product that is transferred.", "$ref": "#/definitions/ProductType" }, "productId": { "type": "string", - "description": "Id of product to be transferred." + "description": "The ID of the product that is transferred." } } }, "ProductType": { "type": "string", - "description": "Type of the product to be transferred.", + "description": "The type of product that is transferred.", "enum": [ "AzureSubscription", "AzureReservation" @@ -4886,12 +4838,12 @@ "type": "string", "$ref": "#/definitions/ProductType", "readOnly": true, - "description": "Type of product being transferred." + "description": "Type of product that is transferred." }, "productId": { "type": "string", "readOnly": true, - "description": "Id of product being transferred." + "description": "The ID of the product that is transferred." }, "transferStatus": { "type": "string", @@ -4940,43 +4892,43 @@ "creationTime": { "type": "string", "format": "date-time", - "description": "Transfer creation time.", + "description": "The time at which the transfer request was created.", "readOnly": true }, "expirationTime": { "type": "string", "format": "date-time", "readOnly": true, - "description": "Transfer expiration time." + "description": "The time at which the transfer request expires." }, "invoiceSectionId": { "type": "string", - "description": "Target invoice section Id.", + "description": "The ID of the invoice section to which the product is billed after the transfer request is completed.", "readOnly": true }, "billingAccountId": { "type": "string", - "description": "Target billing account Id.", + "description": "The ID of the billing account to which the product is billed after the transfer request is completed.", "readOnly": true }, "resellerId": { "type": "string", - "description": "Reseller Id for transfer.", + "description": "Optional MPN ID of the reseller for transfer requests that are sent from a Microsoft Partner Agreement billing account.", "readOnly": true }, "resellerName": { "type": "string", - "description": "Reseller name for transfer.", + "description": "Optional name of the reseller for transfer requests that are sent from Microsoft Partner Agreement billing account.", "readOnly": true }, "initiatorCustomerType": { "type": "string", - "description": "Customer type of the initiator.", + "description": "The type of customer who sent the transfer request.", "readOnly": true }, "billingProfileId": { "type": "string", - "description": "Target billing profile Id.", + "description": "The ID of the billing profile to which the product will be billed after the transfer.", "readOnly": true }, "transferStatus": { @@ -4988,23 +4940,23 @@ "recipientEmailId": { "type": "string", "readOnly": true, - "description": "Email Id of recipient of transfer." + "description": "The email ID of the user to whom the transfer request was sent." }, "initiatorEmailId": { "type": "string", "readOnly": true, - "description": "Email Id of initiator of transfer." + "description": "The email ID of the user who sent the transfer request." }, "canceledBy": { "type": "string", "readOnly": true, - "description": "Email Id who user canceled the transfer." + "description": "The email ID of the user who canceled the transfer request." }, "lastModifiedTime": { "type": "string", "format": "date-time", "readOnly": true, - "description": "Transfer last modification time." + "description": "The time at which the transfer request was last modified." }, "detailedTransferStatus": { "type": "array", @@ -5023,14 +4975,14 @@ "creationTime": { "type": "string", "format": "date-time", - "description": "Transfer creation time.", + "description": "The time at which the transfer request was created.", "readOnly": true }, "expirationTime": { "type": "string", "format": "date-time", "readOnly": true, - "description": "Transfer expiration time." + "description": "The time at which the transfer request expires." }, "allowedProductType": { "type": "array", @@ -5049,38 +5001,38 @@ "recipientEmailId": { "type": "string", "readOnly": true, - "description": "Email Id of recipient of transfer." + "description": "The email ID of the user to whom the transfer request was sent." }, "initiatorEmailId": { "type": "string", "readOnly": true, - "description": "Email Id of initiator of transfer." + "description": "The email ID of the user who sent the transfer request." }, "resellerId": { "type": "string", - "description": "Reseller Id for transfer.", + "description": "Optional MPN ID of the reseller for transfer requests that are sent from a Microsoft Partner Agreement billing account.", "readOnly": true }, "resellerName": { "type": "string", - "description": "Reseller name for transfer.", + "description": "Optional name of the reseller for transfer requests that are sent from Microsoft Partner Agreement billing account.", "readOnly": true }, "initiatorCustomerType": { "type": "string", - "description": "Customer type of the initiator.", + "description": "The type of customer who sent the transfer request.", "readOnly": true }, "canceledBy": { "type": "string", "readOnly": true, - "description": "Email Id who user canceled the transfer." + "description": "The email ID of the user who canceled the transfer request." }, "lastModifiedTime": { "type": "string", "format": "date-time", "readOnly": true, - "description": "Transfer last modification time." + "description": "The time at which the transfer request was last modified." }, "detailedTransferStatus": { "type": "array", @@ -5094,7 +5046,7 @@ }, "TransferStatus": { "type": "string", - "description": "Possible transfer status.", + "description": "The status of a transfer.", "enum": [ "Pending", "InProgress", @@ -5111,7 +5063,7 @@ }, "ProductTransferStatus": { "type": "string", - "description": "Possible transfer status.", + "description": "The status of a transfer.", "enum": [ "NotStarted", "InProgress", @@ -5124,7 +5076,7 @@ } }, "RecipientTransferDetailsListResult": { - "description": "Result of listing details of the transfer received by caller.", + "description": "The list of transfers received by caller.", "properties": { "value": { "description": "The list of transfers received by caller.", @@ -5142,7 +5094,7 @@ } }, "TransferDetailsListResult": { - "description": "Result of listing details of the transfer initiated by caller.", + "description": "The list of transfers initiated by caller.", "properties": { "value": { "description": "The list of transfers initiated by caller.", @@ -5174,10 +5126,10 @@ }, "TransferBillingSubscriptionResult": { "type": "object", - "description": "Request parameters to transfer billing subscription.", + "description": "Result of the transfer billing subscription operation.", "properties": { "properties": { - "description": "Request parameters to transfer billing subscription.", + "description": "Properties of the transfer billing subscription operation result.", "x-ms-client-flatten": true, "$ref": "#/definitions/TransferBillingSubscriptionResultProperties" } @@ -5185,7 +5137,7 @@ }, "TransferBillingSubscriptionResultProperties": { "type": "object", - "description": "Transfer billing subscription result properties.", + "description": "Properties of the transfer billing subscription operation result.", "properties": { "billingSubscriptionName": { "type": "string", @@ -5223,7 +5175,7 @@ "description": "Result of the transfer eligibility validation.", "properties": { "isTransferEligible": { - "description": "Specifies whether the transfer is eligible or not.", + "description": "Specifies whether the subscription is eligible to be transferred.", "type": "boolean", "readOnly": true }, @@ -5271,7 +5223,7 @@ }, "UpdateAutoRenewOperation": { "type": "object", - "description": "Summary of cancel product operation", + "description": "Result of the update auto renew operation", "properties": { "properties": { "description": "Summary of update auto renew operation properties", @@ -5282,17 +5234,17 @@ }, "UpdateAutoRenewOperationProperties": { "type": "object", - "description": "update auto renew operation properties", + "description": "Summary of update auto renew operation properties", "properties": { "endDate": { "type": "string", "format": "date-time", - "description": "The end date of this asset" + "description": "The date at which the product will be canceled." } } }, "BillingAccountListResult": { - "description": "Result of listing billing accounts.", + "description": "The list of billing accounts.", "properties": { "value": { "description": "The list of billing accounts.", @@ -5310,7 +5262,7 @@ } }, "BillingAccount": { - "description": "A billing account resource.", + "description": "A billing account.", "type": "object", "allOf": [ { @@ -5319,7 +5271,7 @@ ], "properties": { "properties": { - "description": "A billing account.", + "description": "The properties of the billing account.", "x-ms-client-flatten": true, "$ref": "#/definitions/BillingAccountProperties" } @@ -5334,7 +5286,7 @@ "readOnly": true }, "address": { - "description": "The address associated with billing account.", + "description": "The address associated with the billing account.", "$ref": "#/definitions/AddressDetails" }, "agreementType": { @@ -5366,8 +5318,22 @@ "modelAsString": true } }, + "accountType": { + "description": "The type of customer.", + "type": "string", + "enum": [ + "Enterprise", + "Individual", + "Partner" + ], + "readOnly": true, + "x-ms-enum": { + "name": "AccountType", + "modelAsString": true + } + }, "billingProfiles": { - "description": "The billing profiles associated to the billing account. By default this is not populated, unless it's specified in $expand.", + "description": "The billing profiles associated with the billing account. By default this is not populated, unless it's specified in $expand.", "type": "array", "items": { "$ref": "#/definitions/BillingProfile" @@ -5410,7 +5376,7 @@ } }, "BillingProperty": { - "description": "A billing property resource.", + "description": "A billing property.", "type": "object", "allOf": [ { @@ -5429,144 +5395,183 @@ "description": "The billing property.", "properties": { "billingTenantId": { - "description": "Billing tenant Id.", + "description": "The Azure AD tenant ID of the billing account for the subscription.", "type": "string", "readOnly": true }, "billingAccountId": { - "description": "Billing account Id.", + "description": "The ID of the billing account to which the subscription is billed.", "type": "string", "readOnly": true }, "billingAccountDisplayName": { - "description": "Billing account display name.", + "description": "The name of the billing account to which the subscription is billed.", "type": "string", "readOnly": true }, "billingProfileId": { - "description": "Billing profile Id.", + "description": "The ID of the billing profile to which the subscription is billed.", "type": "string", "readOnly": true }, "billingProfileDisplayName": { - "description": "Billing profile display name.", + "description": "The name of the billing profile to which the subscription is billed.", "type": "string", "readOnly": true }, + "billingProfileStatus": { + "description": "The status of the billing profile.", + "enum": [ + "Active", + "Disabled", + "Warned" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "BillingProfileStatus", + "modelAsString": true + } + }, + "billingProfileStatusReasonCode": { + "description": "Reason for the specified billing profile status.", + "enum": [ + "PastDue", + "SpendingLimitReached", + "SpendingLimitExpired" + ], + "readOnly": true, + "x-ms-enum": { + "name": "BillingProfileStatusReasonCode", + "modelAsString": true + } + }, + "billingProfileSpendingLimit": { + "description": "The billing profile spending limit.", + "enum": [ + "Off", + "On" + ], + "readOnly": true, + "x-ms-enum": { + "name": "BillingProfileSpendingLimit", + "modelAsString": true + } + }, "costCenter": { - "description": "Cost center name.", + "description": "The cost center applied to the subscription.", "type": "string", "readOnly": true }, "invoiceSectionId": { - "description": "Invoice Section Id.", + "description": "The ID of the invoice section to which the subscription is billed.", "type": "string", "readOnly": true }, "invoiceSectionDisplayName": { - "description": "Invoice Section display name.", + "description": "The name of the invoice section to which the subscription is billed.", "type": "string", "readOnly": true }, "productId": { - "description": "Product Id.", + "description": "The product ID of the Azure plan.", "type": "string", "readOnly": true }, "productName": { - "description": "Product name.", + "description": "The product name of the Azure plan.", "type": "string", "readOnly": true }, "skuId": { - "description": "SKU Id.", + "description": "The sku ID of the Azure plan for the subscription.", "type": "string", "readOnly": true }, "skuDescription": { - "description": "SKU description.", + "description": "The sku description of the Azure plan for the subscription.", "type": "string", "readOnly": true } } }, "Enrollment": { - "description": "Current entity level details", + "description": "The properties of an enrollment.", "properties": { "startDate": { - "description": "Enrollment Start Date", + "description": "The start date of the enrollment.", "type": "string", "format": "date-time" }, "endDate": { - "description": "Enrollment End Date", + "description": "The end date of the enrollment.", "type": "string", "format": "date-time" }, "currency": { - "description": "The currency associated with enrollment", + "description": "The billing currency for the enrollment.", "type": "string", "readOnly": true }, "channel": { - "description": "The channel for Enrollment", + "description": "The channel type of the enrollment.", "type": "string", "readOnly": true }, "policies": { - "description": "The attributes associated with legacy enrollment.", + "description": "The policies for Enterprise Agreement enrollments.", "$ref": "#/definitions/EnrollmentPolicies", "readOnly": true }, "language": { - "description": "The language for Enrollment", + "description": "The language for the enrollment.", "type": "string", "readOnly": true }, "countryCode": { - "description": "The countryCode for Enrollment", + "description": "The country code of the enrollment.", "type": "string", "readOnly": true }, "status": { - "description": "Enrollment status", + "description": "The current status of the enrollment.", "type": "string", "readOnly": true }, "billingCycle": { - "description": "Enrollment billing cycle", + "description": "The billing cycle for the enrollment.", "type": "string", "readOnly": true } } }, "EnrollmentPolicies": { - "description": "The attributes associated with legacy enrollment", + "description": "The policies for Enterprise Agreement enrollments.", "properties": { "accountOwnerViewCharges": { - "description": "The accountOwnerViewCharges flag for Enrollment", + "description": "The policy that controls whether Account Owners can view charges.", "type": "boolean", "readOnly": true }, "departmentAdminViewCharges": { - "description": "The departmentAdminViewCharges flag for Enrollment", + "description": "The policy that controls whether Department Administrators can view charges.", "type": "boolean", "readOnly": true }, "marketplacesEnabled": { - "description": "The marketplaces flag for Enrollment", + "description": "The policy that controls whether Azure marketplace purchases are allowed in the enrollment.", "type": "boolean", "readOnly": true }, "reservedInstancesEnabled": { - "description": "The reserved instances flag for Enrollment", + "description": "The policy that controls whether Azure reservation purchases are allowed in the enrollment.", "type": "boolean", "readOnly": true } } }, "DepartmentListResult": { - "description": "Result of listing departments.", + "description": "The list of departments.", "properties": { "value": { "description": "The list of departments.", @@ -5584,7 +5589,7 @@ } }, "Department": { - "description": "A department resource.", + "description": "A department.", "type": "object", "allOf": [ { @@ -5600,18 +5605,18 @@ } }, "DepartmentProperties": { - "description": "The properties of the department.", + "description": "The properties of a department.", "properties": { "departmentName": { - "description": "The name for department.", + "description": "The name of the department.", "type": "string" }, "costCenter": { - "description": "The cost center name.", + "description": "The cost center associated with the department.", "type": "string" }, "status": { - "description": "The status for department.", + "description": "The status of the department.", "type": "string" }, "enrollmentAccounts": { @@ -5624,7 +5629,7 @@ } }, "EnrollmentAccountListResult": { - "description": "Result of listing enrollment accounts.", + "description": "The list of enrollment accounts.", "properties": { "value": { "description": "The list of enrollment accounts.", @@ -5642,7 +5647,7 @@ } }, "EnrollmentAccount": { - "description": "An account resource.", + "description": "An enrollment account.", "type": "object", "allOf": [ { @@ -5651,38 +5656,38 @@ ], "properties": { "properties": { - "description": "An account.", + "description": "The properties of an enrollment account.", "x-ms-client-flatten": true, "$ref": "#/definitions/EnrollmentAccountProperties" } } }, "EnrollmentAccountProperties": { - "description": "The properties of the account.", + "description": "The properties of an enrollment account.", "properties": { "accountName": { - "description": "The account name.", + "description": "The name of the enrollment account.", "type": "string" }, "costCenter": { - "description": "The cost center name.", + "description": "The cost center associated with the enrollment account.", "type": "string" }, "accountOwner": { - "description": "The account owner", + "description": "The owner of the enrollment account.", "type": "string" }, "status": { - "description": "The status for account.", + "description": "The status of the enrollment account.", "type": "string" }, "startDate": { - "description": "Account Start Date", + "description": "The start date of the enrollment account.", "type": "string", "format": "date-time" }, "endDate": { - "description": "Account End Date", + "description": "The end date of the enrollment account.", "type": "string", "format": "date-time" }, @@ -5693,10 +5698,10 @@ } }, "InstructionListResult": { - "description": "Result of listing instructions.", + "description": "The list of billing instructions used during invoice generation.", "properties": { "value": { - "description": "The list of instructions.", + "description": "The list of billing instructions used during invoice generation.", "type": "array", "readOnly": true, "items": { @@ -5711,7 +5716,7 @@ } }, "BillingProfileListResult": { - "description": "Result of listing billing profiles.", + "description": "The list of billing profiles.", "properties": { "value": { "description": "The list of billing profiles.", @@ -5729,7 +5734,7 @@ } }, "BillingProfile": { - "description": "A billing profile resource.", + "description": "A billing profile.", "type": "object", "allOf": [ { @@ -5738,14 +5743,14 @@ ], "properties": { "properties": { - "description": "A billing profile.", + "description": "The properties of the billing profile.", "x-ms-client-flatten": true, "$ref": "#/definitions/BillingProfileProperties" } } }, "Instruction": { - "description": "A instruction resource.", + "description": "An instruction.", "type": "object", "allOf": [ { @@ -5754,7 +5759,7 @@ ], "properties": { "properties": { - "description": "A billing instruction.", + "description": "A billing instruction used during invoice generation.", "x-ms-client-flatten": true, "$ref": "#/definitions/InstructionProperties" } @@ -5781,6 +5786,11 @@ "description": "The date this billing instruction is no longer in effect.", "type": "string", "format": "date-time" + }, + "creationDate": { + "description": "The date this billing instruction was created.", + "type": "string", + "format": "date-time" } } }, @@ -5788,11 +5798,11 @@ "description": "The request parameters for creating a new billing profile.", "properties": { "displayName": { - "description": "The billing profile name.", + "description": "The name of the billing profile.", "type": "string" }, "poNumber": { - "description": "Purchase order number.", + "description": "The purchase order name that will appear on the invoices generated for the billing profile.", "type": "string" }, "address": { @@ -5800,11 +5810,11 @@ "$ref": "#/definitions/AddressDetails" }, "invoiceEmailOptIn": { - "description": "If the billing profile is opted in to receive invoices via email.", + "description": "Flag controlling whether the invoices for the billing profile are sent through email.", "type": "boolean" }, "enabledAzurePlans": { - "description": "Enabled azure plans for this billing profile.", + "description": "Enabled azure plans for the billing profile.", "type": "array", "items": { "$ref": "#/definitions/AzurePlan" @@ -5816,11 +5826,11 @@ "description": "The properties of the billing profile.", "properties": { "displayName": { - "description": "The billing profile name.", + "description": "The name of the billing profile.", "type": "string" }, "poNumber": { - "description": "Purchase order number.", + "description": "The purchase order name that will appear on the invoices generated for the billing profile.", "type": "string" }, "address": { @@ -5828,16 +5838,16 @@ "$ref": "#/definitions/AddressDetails" }, "invoiceEmailOptIn": { - "description": "If the billing profile is opted in to receive invoices via email.", + "description": "Flag controlling whether the invoices for the billing profile are sent through email.", "type": "boolean" }, "invoiceDay": { - "description": "Invoice day.", + "description": "The day of the month when the invoice for the billing profile is generated.", "type": "integer", "readOnly": true }, "currency": { - "description": "The currency associated with the billing profile.", + "description": "The currency in which the charges for the billing profile are billed.", "type": "string", "readOnly": true }, @@ -5854,6 +5864,46 @@ "items": { "$ref": "#/definitions/InvoiceSection" } + }, + "status": { + "description": "The status of the billing profile.", + "enum": [ + "Active", + "Disabled", + "Warned" + ], + "readOnly": true, + "x-ms-enum": { + "name": "BillingProfileStatus", + "modelAsString": true + } + }, + "statusReasonCode": { + "description": "Reason for the specified billing profile status.", + "enum": [ + "PastDue", + "SpendingLimitReached", + "SpendingLimitExpired" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "StatusReasonCode", + "modelAsString": true + } + }, + "spendingLimit": { + "description": "The billing profile spending limit.", + "enum": [ + "Off", + "On" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "SpendingLimit", + "modelAsString": true + } } } }, @@ -5861,35 +5911,35 @@ "description": "Address details.", "properties": { "firstName": { - "description": "First Name.", + "description": "First name.", "type": "string" }, "lastName": { - "description": "Last Name.", + "description": "Last name.", "type": "string" }, "companyName": { - "description": "Company Name.", + "description": "Company name.", "type": "string" }, "addressLine1": { - "description": "Address Line1.", + "description": "Address line 1.", "type": "string" }, "addressLine2": { - "description": "Address Line2.", + "description": "Address line 2.", "type": "string" }, "addressLine3": { - "description": "Address Line3.", + "description": "Address line 3.", "type": "string" }, "city": { - "description": "Address City.", + "description": "Address city.", "type": "string" }, "region": { - "description": "Address Region.", + "description": "Address region.", "type": "string" }, "country": { @@ -5897,22 +5947,22 @@ "type": "string" }, "postalCode": { - "description": "Address Postal Code.", + "description": "Postal code.", "type": "string" } } }, "InvoiceSectionCreationRequest": { - "description": "The properties of an InvoiceSection.", + "description": "The properties of the invoice section.", "properties": { "displayName": { - "description": "The name of the InvoiceSection.", + "description": "The name of the invoice section.", "type": "string" } } }, "InvoiceSectionListResult": { - "description": "Result of listing invoice sections.", + "description": "The list of invoice sections.", "properties": { "value": { "description": "The list of invoice sections.", @@ -5930,7 +5980,7 @@ } }, "InvoiceSection": { - "description": "An InvoiceSection resource.", + "description": "An invoice section.", "type": "object", "allOf": [ { @@ -5939,24 +5989,24 @@ ], "properties": { "properties": { - "description": "The InvoiceSection.", + "description": "The properties of an invoice section.", "x-ms-client-flatten": true, "$ref": "#/definitions/InvoiceSectionProperties" } } }, "InvoiceSectionProperties": { - "description": "The properties of an InvoiceSection.", + "description": "The properties of an invoice section.", "properties": { "displayName": { - "description": "The name of the InvoiceSection.", + "description": "The name of the invoice section.", "type": "string" } } }, "InvoiceSectionListWithCreateSubPermissionResult": { "type": "object", - "description": "Result of listing invoice section properties with create subscription permission.", + "description": "The list of invoice section properties with create subscription permission.", "properties": { "value": { "description": "The list of invoice section properties with create subscription permission.", @@ -5976,25 +6026,65 @@ "description": "Invoice section properties with create subscription permission.", "properties": { "invoiceSectionId": { - "description": "Invoice Section Id.", + "description": "The ID of the invoice section.", "type": "string", "readOnly": true }, "invoiceSectionDisplayName": { - "description": "Invoice Section display name.", + "description": "The name of the invoice section.", "type": "string", "readOnly": true }, "billingProfileId": { - "description": "Billing profile Id.", + "description": "The ID of the billing profile for the invoice section.", "type": "string", "readOnly": true }, "billingProfileDisplayName": { - "description": "Billing profile display name.", + "description": "The name of the billing profile for the invoice section.", "type": "string", "readOnly": true }, + "billingProfileStatus": { + "description": "The status of the billing profile.", + "enum": [ + "Active", + "Disabled", + "Warned" + ], + "readOnly": true, + "x-ms-enum": { + "name": "BillingProfileStatus", + "modelAsString": true + } + }, + "billingProfileStatusReasonCode": { + "description": "Reason for the specified billing profile status.", + "enum": [ + "PastDue", + "SpendingLimitReached", + "SpendingLimitExpired" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "BillingProfileStatusReasonCode", + "modelAsString": true + } + }, + "billingProfileSpendingLimit": { + "description": "The billing profile spending limit.", + "enum": [ + "Off", + "On" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "name": "BillingProfileSpendingLimit", + "modelAsString": true + } + }, "enabledAzurePlans": { "description": "Enabled azure plans for the associated billing profile.", "type": "array", @@ -6005,7 +6095,7 @@ } }, "AzurePlan": { - "description": "Details about the azure plan.", + "description": "Details of the Azure plan.", "properties": { "skuId": { "description": "The sku id.", @@ -6022,7 +6112,7 @@ "description": "A secure URL that can be used to download a an entity until the URL expires.", "properties": { "expiryTime": { - "description": "The time in UTC at which this download URL will expire.", + "description": "The time in UTC when the download URL will expire.", "type": "string", "format": "date-time", "readOnly": true @@ -6065,15 +6155,15 @@ } }, "Reseller": { - "description": "Details about a reseller.", + "description": "Details of the reseller.", "properties": { "resellerId": { - "description": "The reseller id.", + "description": "The MPN ID of the reseller.", "type": "string", "readOnly": true }, "description": { - "description": "A description of the reseller.", + "description": "The name of the reseller.", "type": "string", "readOnly": true } @@ -6101,7 +6191,7 @@ "x-ms-azure-resource": true }, "InvoiceListResult": { - "description": "Result of listing invoices.", + "description": "The list of invoices.", "properties": { "value": { "description": "The list of invoices.", @@ -6119,7 +6209,7 @@ } }, "Invoice": { - "description": "An invoice resource.", + "description": "An invoice.", "type": "object", "allOf": [ { @@ -6138,25 +6228,24 @@ "description": "The properties of the invoice.", "properties": { "dueDate": { - "description": "The due date for invoice.", + "description": "The due date for the invoice.", "type": "string", "format": "date-time", "readOnly": true }, "invoiceDate": { - "description": "The date when invoice was created.", + "description": "The date when the invoice was generated.", "type": "string", "format": "date-time", "readOnly": true }, "status": { - "description": "Invoice status.", + "description": "The current status of the invoice.", "type": "string", "enum": [ - "PastDue", "Due", - "Paid", - "Void" + "OverDue", + "Paid" ], "readOnly": true, "x-ms-enum": { @@ -6165,23 +6254,53 @@ } }, "amountDue": { - "description": "Amount due.", + "description": "The amount due as of now.", + "readOnly": true, + "$ref": "#/definitions/Amount" + }, + "azurePrepaymentApplied": { + "description": "The amount of Azure prepayment applied to the charges. This field is applicable to billing accounts with agreement type Microsoft Customer Agreement.", "readOnly": true, "$ref": "#/definitions/Amount" }, "billedAmount": { - "description": "Amount billed.", + "description": "The total charges for the invoice billing period.", + "readOnly": true, + "$ref": "#/definitions/Amount" + }, + "creditAmount": { + "description": "The total refund for returns and cancellations during the invoice billing period. This field is applicable to billing accounts with agreement type Microsoft Customer Agreement.", + "readOnly": true, + "$ref": "#/definitions/Amount" + }, + "freeAzureCreditApplied": { + "description": "The amount of free Azure credits applied to the charges. This field is applicable to billing accounts with agreement type Microsoft Customer Agreement.", + "readOnly": true, + "$ref": "#/definitions/Amount" + }, + "subTotal": { + "description": "The pre-tax amount due. This field is applicable to billing accounts with agreement type Microsoft Customer Agreement.", + "readOnly": true, + "$ref": "#/definitions/Amount" + }, + "taxAmount": { + "description": "The amount of tax charged for the billing period. This field is applicable to billing accounts with agreement type Microsoft Customer Agreement.", + "readOnly": true, + "$ref": "#/definitions/Amount" + }, + "totalAmount": { + "description": "The amount due when the invoice was generated. This field is applicable to billing accounts with agreement type Microsoft Customer Agreement.", "readOnly": true, "$ref": "#/definitions/Amount" }, "invoicePeriodStartDate": { - "description": "The start date of the billing period.", + "description": "The start date of the billing period for which the invoice is generated.", "type": "string", "format": "date-time", "readOnly": true }, "invoicePeriodEndDate": { - "description": "The end date of the billing period.", + "description": "The end date of the billing period for which the invoice is generated.", "type": "string", "format": "date-time", "readOnly": true @@ -6193,29 +6312,35 @@ "AzureMarketplace", "AzureSupport" ], + "type": "string", "readOnly": true, "x-ms-enum": { "name": "InvoiceType", "modelAsString": true } }, + "isMonthlyInvoice": { + "description": "Specifies if the invoice is generated as part of monthly invoicing cycle or not. This field is applicable to billing accounts with agreement type Microsoft Customer Agreement.", + "type": "boolean", + "readOnly": true + }, "billingProfileId": { - "description": "The billing profile id this invoice belongs to.", + "description": "The ID of the billing profile for which the invoice is generated.", "type": "string", "readOnly": true }, "billingProfileDisplayName": { - "description": "The billing profile display name this invoice belongs to.", + "description": "The name of the billing profile for which the invoice is generated.", "type": "string", "readOnly": true }, "purchaseOrderNumber": { - "description": "The purchase identifier for the invoice.", + "description": "An optional purchase order number for the invoice.", "type": "string", "readOnly": true }, "documents": { - "description": "List of documents available to download including invoice and tax documents.", + "description": "List of documents available to download such as invoice and tax receipt.", "type": "array", "readOnly": true, "items": { @@ -6229,11 +6354,16 @@ "items": { "$ref": "#/definitions/PaymentProperties" } + }, + "subscriptionId": { + "description": "The ID of the subscription for which the invoice is generated.", + "type": "string", + "readOnly": true } } }, "PaymentProperties": { - "description": "The properties of the payment.", + "description": "The properties of a payment.", "properties": { "paymentType": { "description": "The type of payment.", @@ -6246,13 +6376,13 @@ "$ref": "#/definitions/Amount" }, "date": { - "description": "The date of the payment.", + "description": "The date when the payment was made.", "type": "string", "format": "date-time", "readOnly": true }, "paymentMethodFamily": { - "description": "The payment method family.", + "description": "The family of payment method.", "type": "string", "enum": [ "Credits", @@ -6273,15 +6403,15 @@ } }, "Document": { - "description": "The properties of the invoice download.", + "description": "The properties of a document.", "properties": { "kind": { - "description": "Document type.", + "description": "The type of the document.", "type": "string", "enum": [ "Invoice", "VoidNote", - "Receipt", + "TaxReceipt", "CreditNote" ], "readOnly": true, @@ -6298,7 +6428,7 @@ } }, "ProductsListResult": { - "description": "Result of listing products. It contains a list of available products summaries in reverse chronological order by purchase date.", + "description": "The list of products. It contains a list of available product summaries in reverse chronological order by purchase date.", "properties": { "value": { "description": "The list of products.", @@ -6316,7 +6446,7 @@ } }, "Product": { - "description": "A product resource.", + "description": "A product.", "type": "object", "allOf": [ { @@ -6332,7 +6462,7 @@ } }, "ProductProperties": { - "description": "The properties of the product.", + "description": "The properties of a product.", "properties": { "displayName": { "description": "The display name of the product.", @@ -6340,23 +6470,23 @@ "readOnly": true }, "purchaseDate": { - "description": "The date of purchase.", + "description": "The date when the product was purchased.", "type": "string", "format": "date-time", "readOnly": true }, "productTypeId": { - "description": "The product type id.", + "description": "The ID of the type of product.", "type": "string", "readOnly": true }, "productType": { - "description": "The type of product.", + "description": "The description of the type of product.", "type": "string", "readOnly": true }, "status": { - "description": "Product status.", + "description": "The current status of the product.", "type": "string", "enum": [ "Active", @@ -6374,13 +6504,13 @@ } }, "endDate": { - "description": "end date.", + "description": "The date when the product will be renewed or canceled.", "type": "string", "format": "date-time", "readOnly": true }, "billingFrequency": { - "description": "Billing frequency.", + "description": "The frequency at which the product will be billed.", "type": "string", "enum": [ "OneTime", @@ -6393,7 +6523,7 @@ } }, "lastCharge": { - "description": "Last month charges.", + "description": "The last month charges.", "readOnly": true, "$ref": "#/definitions/Amount" }, @@ -6404,57 +6534,62 @@ "readOnly": true }, "quantity": { - "description": "The purchased product quantity.", + "description": "The quantity purchased for the product.", "type": "number", "readOnly": true }, "skuId": { - "description": "Sku Id.", + "description": "The sku ID of the product.", "type": "string", "readOnly": true }, "skuDescription": { - "description": "Sku description.", + "description": "The sku description of the product.", + "type": "string", + "readOnly": true + }, + "tenantId": { + "description": "The id of the tenant in which the product is used.", "type": "string", "readOnly": true }, "availabilityId": { - "description": "Availability Id.", + "description": "The availability of the product.", "type": "string", "readOnly": true }, "parentProductId": { - "description": "Parent Product Id.", + "description": "Parent product Id.", "type": "string", "readOnly": true }, "invoiceSectionId": { - "description": "Invoice section id to which this product belongs.", + "description": "The ID of the invoice section to which the product is billed.", "type": "string", "readOnly": true }, "invoiceSectionDisplayName": { - "description": "Invoice section display name to which this product belongs.", + "description": "The name of the invoice section to which the product is billed.", "type": "string", "readOnly": true }, "billingProfileId": { - "description": "Billing Profile id to which this product belongs.", + "description": "The ID of the billing profile to which the product is billed.", "type": "string", "readOnly": true }, "billingProfileDisplayName": { - "description": "Billing Profile display name to which this product belongs.", + "description": "The name of the billing profile to which the product is billed.", "type": "string", "readOnly": true }, "customerId": { - "description": "Customer id to which this product belongs.", + "description": "The ID of the customer for whom the product was purchased. The field is applicable only for Microsoft Partner Agreement billing account.", "type": "string", "readOnly": true }, "customerDisplayName": { - "description": "Display name of customer to which this product belongs.", + "description": "The name of the customer for whom the product was purchased. The field is applicable only for Microsoft Partner Agreement billing account.", "type": "string", "readOnly": true }, @@ -6518,7 +6653,7 @@ } }, "BillingSubscriptionsListResult": { - "description": "Result of listing billing subscriptions.", + "description": "The list of billing subscriptions.", "properties": { "value": { "description": "The list of billing subscriptions.", @@ -6536,7 +6671,7 @@ } }, "BillingSubscription": { - "description": "A billing Subscription resource.", + "description": "A billing subscription.", "type": "object", "allOf": [ { @@ -6552,21 +6687,21 @@ } }, "BillingSubscriptionProperties": { - "description": "The usage context properties.", + "description": "The billing properties of a subscription.", "properties": { "displayName": { - "description": "display name.", + "description": "The name of the subscription.", "type": "string", "readOnly": true }, "subscriptionId": { - "description": "Subscription Id.", + "description": "The ID of the subscription.", "type": "string", "format": "uuid", "readOnly": true }, "subscriptionBillingStatus": { - "description": "Subscription billing status.", + "description": "The current billing status of the subscription.", "type": "string", "enum": [ "Active", @@ -6581,42 +6716,42 @@ } }, "lastMonthCharges": { - "description": "Last month charges.", + "description": "The last month charges.", "readOnly": true, "$ref": "#/definitions/Amount" }, "monthToDateCharges": { - "description": "Month to date charges.", + "description": "The current month to date charges.", "readOnly": true, "$ref": "#/definitions/Amount" }, "billingProfileId": { - "description": "Billing Profile id to which this product belongs.", + "description": "The ID of the billing profile to which the subscription is billed.", "type": "string", "readOnly": true }, "billingProfileDisplayName": { - "description": "Billing Profile display name to which this product belongs.", + "description": "The name of the billing profile to which the subscription is billed.", "type": "string", "readOnly": true }, "customerId": { - "description": "Customer id to which this product belongs.", + "description": "The ID of the customer for whom the subscription was created. The field is applicable only for Microsoft Partner Agreement billing account.", "type": "string", "readOnly": true }, "customerDisplayName": { - "description": "Display name of customer to which this product belongs.", + "description": "The name of the customer for whom the subscription was created. The field is applicable only for Microsoft Partner Agreement billing account.", "type": "string", "readOnly": true }, "invoiceSectionId": { - "description": "Invoice section id to which this product belongs.", + "description": "The ID of the invoice section to which the subscription is billed.", "type": "string", "readOnly": true }, "invoiceSectionDisplayName": { - "description": "Invoice section display name to which this product belongs.", + "description": "The name of the invoice section to which the subscription is billed.", "type": "string", "readOnly": true }, @@ -6626,44 +6761,44 @@ "$ref": "#/definitions/Reseller" }, "skuId": { - "description": "The sku id.", + "description": "The sku ID of the Azure plan for the subscription.", "type": "string" }, "skuDescription": { - "description": "The sku description.", + "description": "The sku description of the Azure plan for the subscription.", "type": "string", "readOnly": true } } }, "EnrollmentAccountContext": { - "description": "The rating context.", + "description": "The enrollment account context", "properties": { "costCenter": { - "description": "The cost center name.", + "description": "The cost center associated with the enrollment account.", "type": "string" }, "startDate": { - "description": "Account Start Date", + "description": "The start date of the enrollment account.", "type": "string", "format": "date-time" }, "endDate": { - "description": "Account End Date", + "description": "The end date of the enrollment account.", "type": "string", "format": "date-time" }, "enrollmentAccountName": { - "description": "The enrollment account id.", + "description": "The ID of the enrollment account.", "type": "string" } } }, "TransactionListResult": { - "description": "Result of listing reservation transactions.", + "description": "The list of transactions.", "properties": { "value": { - "description": "The list of reservation transactions.", + "description": "The list of transactions.", "type": "array", "readOnly": true, "items": { @@ -6678,7 +6813,7 @@ } }, "Transaction": { - "description": "A reservation transaction resource.", + "description": "A transaction.", "type": "object", "allOf": [ { @@ -6689,16 +6824,16 @@ "properties": { "x-ms-client-flatten": true, "$ref": "#/definitions/TransactionProperties", - "title": "Reservation transaction properties" + "title": "Transaction properties" } } }, "TransactionProperties": { - "description": "The properties of the reservation transaction.", + "description": "The properties of a transaction.", "properties": { "kind": { "type": "string", - "description": "The kind of transaction. Choices are all and reservation.", + "description": "The kind of transaction. Options are all or reservation.", "enum": [ "all", "reservation" @@ -6709,48 +6844,48 @@ } }, "date": { - "description": "The date of reservation transaction.", + "description": "The date of transaction.", "type": "string", "format": "date-time", "readOnly": true }, "invoice": { - "description": "Invoice number or 'pending' if not invoiced.", + "description": "Invoice on which the transaction was billed or 'pending' if the transaction is not billed.", "type": "string", "readOnly": true }, "orderId": { - "description": "The reservation order id.", + "description": "The order ID of the reservation. The field is only applicable for transaction of kind reservation.", "type": "string", "readOnly": true }, "orderName": { - "description": "The reservation order name.", + "description": "The name of the reservation order. The field is only applicable for transactions of kind reservation.", "type": "string", "readOnly": true }, "productFamily": { - "description": "The product family.", + "description": "The family of the product for which the transaction took place.", "type": "string", "readOnly": true }, "productTypeId": { - "description": "The product type id.", + "description": "The ID of the product type for which the transaction took place.", "type": "string", "readOnly": true }, "productType": { - "description": "The type of product.", + "description": "The type of the product for which the transaction took place.", "type": "string", "readOnly": true }, "productDescription": { - "description": "Product description.", + "description": "The description of the product for which the transaction took place.", "type": "string", "readOnly": true }, "transactionType": { - "description": "Transaction types.", + "description": "The type of transaction.", "type": "string", "enum": [ "Purchase", @@ -6762,59 +6897,131 @@ } }, "transactionAmount": { - "description": "Last charge associated with the purchase.", + "description": "The charge associated with the transaction.", "readOnly": true, "$ref": "#/definitions/Amount" }, "quantity": { - "description": "Purchase quantity.", + "description": "The quantity purchased in the transaction.", "type": "integer", "readOnly": true }, "invoiceSectionId": { - "description": "Invoice section id to which this product belongs.", + "description": "The ID of the invoice section which will be billed for the transaction.", "type": "string", "readOnly": true }, "invoiceSectionDisplayName": { - "description": "Invoice section display name to which this product belongs.", + "description": "The name of the invoice section which will be billed for the transaction.", "type": "string", "readOnly": true }, "billingProfileId": { - "description": "Billing Profile id to which this product belongs.", + "description": "The ID of the billing profile which will be billed for the transaction.", "type": "string", "readOnly": true }, "billingProfileDisplayName": { - "description": "Billing Profile display name to which this product belongs.", + "description": "The name of the billing profile which will be billed for the transaction.", "type": "string", "readOnly": true }, "customerId": { - "description": "Customer id to which this product belongs.", + "description": "The ID of the customer for which the transaction took place. The field is applicable only for Microsoft Partner Agreement billing account.", "type": "string", "readOnly": true }, "customerDisplayName": { - "description": "Display name of customer to which this product belongs.", + "description": "The name of the customer for which the transaction took place. The field is applicable only for Microsoft Partner Agreement billing account.", "type": "string", "readOnly": true }, "subscriptionId": { - "description": "The subscription id.", + "description": "The ID of the subscription that was used for the transaction. The field is only applicable for transaction of kind reservation.", "type": "string", "readOnly": true }, "subscriptionName": { - "description": "The subscription name.", + "description": "The name of the subscription that was used for the transaction. The field is only applicable for transaction of kind reservation.", + "type": "string", + "readOnly": true + }, + "azureCreditApplied": { + "description": "The amount of any Azure credits automatically applied to this transaction.", + "readOnly": true, + "$ref": "#/definitions/Amount" + }, + "billingCurrency": { + "description": "The ISO 4217 code for the currency in which this transaction is billed.", + "type": "string", + "readOnly": true + }, + "discount": { + "description": "The percentage discount, if any, applied to this transaction.", + "type": "number", + "readOnly": true + }, + "effectivePrice": { + "description": "The price of the product after applying any discounts.", + "readOnly": true, + "$ref": "#/definitions/Amount" + }, + "exchangeRate": { + "description": "The exchange rate used to convert charged amount to billing currency, if applicable.", + "type": "number", + "readOnly": true + }, + "marketPrice": { + "description": "The retail price of the product.", + "readOnly": true, + "$ref": "#/definitions/Amount" + }, + "pricingCurrency": { + "description": "The ISO 4217 code for the currency in which the product is priced.", + "type": "string", + "readOnly": true + }, + "servicePeriodStartDate": { + "description": "The date of the purchase of the product, or the start date of the month in which usage started.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "servicePeriodEndDate": { + "description": "The end date of the product term, or the end date of the month in which usage ended.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "subTotal": { + "description": "The pre-tax charged amount for the transaction.", + "readOnly": true, + "$ref": "#/definitions/Amount" + }, + "tax": { + "description": "The tax amount applied to the transaction.", + "readOnly": true, + "$ref": "#/definitions/Amount" + }, + "unitOfMeasure": { + "description": "The unit of measure used to bill for the product. For example, compute services are billed per hour.", + "type": "string", + "readOnly": true + }, + "units": { + "description": "The number of units used for a given product.", + "type": "number", + "readOnly": true + }, + "unitType": { + "description": "The description for the unit of measure for a given product.", "type": "string", "readOnly": true } } }, "Policy": { - "description": "The Policy.", + "description": "A policy.", "type": "object", "allOf": [ { @@ -6830,10 +7037,10 @@ } }, "PolicyProperties": { - "description": "The properties of policy.", + "description": "The properties of a policy.", "properties": { "marketplacePurchases": { - "description": "The marketplace purchases are free, allowed or not allowed.", + "description": "The policy that controls whether Azure marketplace purchases are allowed for a billing profile.", "type": "string", "enum": [ "AllAllowed", @@ -6846,7 +7053,7 @@ } }, "reservationPurchases": { - "description": "The reservation purchases allowed or not.", + "description": "The policy that controls whether Azure reservation purchases are allowed for a billing profile.", "type": "string", "enum": [ "Allowed", @@ -6858,7 +7065,7 @@ } }, "viewCharges": { - "description": "Who can view charges.", + "description": "The policy that controls whether users with Azure RBAC access to a subscription can view its charges.", "type": "string", "enum": [ "Allowed", @@ -6872,7 +7079,7 @@ } }, "CustomerPolicy": { - "description": "The Customer's Policy.", + "description": "The customer's Policy.", "type": "object", "allOf": [ { @@ -6888,10 +7095,10 @@ } }, "CustomerPolicyProperties": { - "description": "The properties of a Customer's policy.", + "description": "The properties of a customer's policy.", "properties": { "viewCharges": { - "description": "Customer can view retail prices.", + "description": "The policy that controls whether the users in customer's organization can view charges at pay-as-you-go prices.", "type": "string", "enum": [ "Allowed", @@ -6905,7 +7112,7 @@ } }, "AvailableBalance": { - "description": "Latest available balance on Monetary Credit PI.", + "description": "The latest Azure credit balance. This is the balance available for pay now.", "type": "object", "allOf": [ { @@ -6924,14 +7131,14 @@ "description": "The properties of available balance.", "properties": { "amount": { - "description": "Balance Amount.", + "description": "Balance amount.", "readOnly": true, "$ref": "#/definitions/Amount" } } }, "Amount": { - "description": "The Amount.", + "description": "The amount.", "properties": { "currency": { "description": "The currency for the amount value.", @@ -6945,7 +7152,7 @@ } }, "PaymentMethodsListResult": { - "description": "Result of listing payment methods.", + "description": "The list of payment methods.", "properties": { "value": { "description": "The list of payment methods.", @@ -6963,7 +7170,7 @@ } }, "PaymentMethod": { - "description": "A payment method resource.", + "description": "A payment method.", "type": "object", "allOf": [ { @@ -6979,10 +7186,10 @@ } }, "PaymentMethodProperties": { - "description": "The properties of the payment method.", + "description": "The properties of a payment method.", "properties": { "paymentMethodType": { - "description": "Payment method type.", + "description": "The type of payment method.", "type": "string", "enum": [ "Credits", @@ -7012,10 +7219,10 @@ }, "UpdateAutoRenewRequest": { "type": "object", - "description": "Request parameters to update auto renew for support product.", + "description": "Request parameters to update auto renew settings for a product.", "properties": { "autoRenew": { - "description": "Request parameters to update auto renew policy a product.", + "description": "The flag that determines the auto-renew settings for a product.", "type": "string", "enum": [ "true", @@ -7046,12 +7253,12 @@ "readOnly": true }, "resource": { - "description": "Resource on which the operation is performed: Invoice, etc.", + "description": "Resource on which the operation is performed such as invoice and billing subscription.", "type": "string", "readOnly": true }, "operation": { - "description": "Operation type: Read, write, delete, etc.", + "description": "Operation type such as read, write and delete.", "type": "string", "readOnly": true } @@ -7060,10 +7267,10 @@ } }, "OperationListResult": { - "description": "Result listing billing operations. It contains a list of operations and a URL link to get the next set of results.", + "description": "The list of billing operations and a URL link to get the next set of results.", "properties": { "value": { - "description": "List of billing operations supported by the Microsoft.Billing resource provider.", + "description": "The list of billing operations supported by the Microsoft.Billing resource provider.", "type": "array", "readOnly": true, "items": { @@ -7091,10 +7298,10 @@ } }, "BillingRoleAssignmentListResult": { - "description": "Result of get list of role assignments", + "description": "The list of role assignments.", "properties": { "value": { - "description": "The list role assignments", + "description": "The list of role assignments.", "type": "array", "readOnly": true, "items": { @@ -7104,7 +7311,7 @@ } }, "BillingRoleAssignment": { - "description": "a role assignment", + "description": "The role assignment", "type": "object", "allOf": [ { @@ -7113,57 +7320,57 @@ ], "properties": { "properties": { - "description": "The role assignment the caller has", + "description": "The properties of the role assignment.", "x-ms-client-flatten": true, "$ref": "#/definitions/BillingRoleAssignmentProperties" } } }, "BillingRoleAssignmentProperties": { - "description": "The properties of the a role assignment.", + "description": "The properties of the role assignment.", "properties": { "createdOn": { - "description": "the date the role assignment is created", + "description": "The date the role assignment was created.", "type": "string", "readOnly": true }, "createdByPrincipalTenantId": { - "description": "the creator's tenant Id", + "description": "The tenant Id of the user who created the role assignment.", "type": "string", "readOnly": true }, "createdByPrincipalId": { - "description": "the creator's principal Id", + "description": "The principal Id of the user who created the role assignment.", "type": "string", "readOnly": true }, "name": { - "description": "the name of the role assignment", + "description": "The name of the role assignment.", "type": "string", "readOnly": true }, "principalId": { - "description": "The user's principal id that the role gets assigned to", + "description": "The principal id of the user to whom the role was assigned.", "type": "string", "readOnly": true }, "roleDefinitionName": { - "description": "The role definition id", + "description": "The ID of the role definition.", "type": "string", "readOnly": true }, "scope": { - "description": "The scope the role get assigned to", + "description": "The scope at which the role was assigned.", "type": "string", "readOnly": true } } }, "BillingRoleDefinitionListResult": { - "description": "list the role definitions.", + "description": "The list of role definitions.", "properties": { "value": { - "description": "The list of role definitions.", + "description": "The role definitions.", "type": "array", "readOnly": true, "items": { @@ -7173,7 +7380,7 @@ } }, "BillingRoleDefinition": { - "description": "Result of get role definition for a role.", + "description": "The properties of a role definition.", "type": "object", "allOf": [ { @@ -7182,7 +7389,7 @@ ], "properties": { "properties": { - "description": "The role definition for a role.", + "description": "The properties of the a role definition.", "x-ms-client-flatten": true, "$ref": "#/definitions/BillingRoleDefinitionProperties" } @@ -7228,7 +7435,7 @@ "type": "object", "properties": { "actions": { - "description": "The set of actions that the caller is allowed to do", + "description": "The set of actions that the caller is allowed to perform.", "type": "array", "readOnly": true, "items": { @@ -7236,7 +7443,7 @@ } }, "notActions": { - "description": "The set of actions the caller is not allowed to do", + "description": "The set of actions that the caller is not allowed to perform.", "type": "array", "readOnly": true, "items": { @@ -7264,7 +7471,7 @@ } }, "Agreement": { - "description": "An agreement resource.", + "description": "An agreement.", "type": "object", "allOf": [ { @@ -7273,41 +7480,69 @@ ], "properties": { "properties": { - "description": "An agreement.", + "description": "The properties of an agreement.", "x-ms-client-flatten": true, "$ref": "#/definitions/AgreementProperties" } } }, "AgreementProperties": { - "description": "The properties of the agreement.", + "description": "The properties of an agreement.", "properties": { "agreementLink": { - "description": "The link to the agreement.", + "description": "The URL to download the agreement.", "type": "string", "readOnly": true }, + "category": { + "type": "string", + "description": "The category of the agreement signed by a customer.", + "readOnly": true, + "enum": [ + "MicrosoftCustomerAgreement", + "AffiliatePurchaseTerms", + "Other" + ], + "x-ms-enum": { + "name": "category", + "modelAsString": true + } + }, + "acceptanceMode": { + "type": "string", + "description": "The mode of acceptance for an agreement.", + "readOnly": true, + "enum": [ + "ClickToAccept", + "ESignEmbedded", + "ESignOffline" + ], + "x-ms-enum": { + "name": "acceptanceMode", + "modelAsString": true + } + }, "effectiveDate": { - "description": "Effective date.", + "description": "The date from which the agreement is effective.", "type": "string", "format": "date-time", "readOnly": true }, "expirationDate": { - "description": "Expiration date.", + "description": "The date when the agreement expires.", "type": "string", "format": "date-time", "readOnly": true }, "participants": { - "description": "Participants or signer of the agreement.", + "description": "The list of participants that participates in acceptance of an agreement.", "type": "array", "items": { "$ref": "#/definitions/Participants" } }, "status": { - "description": "The agreement status", + "description": "The current status of the agreement.", "type": "string", "readOnly": true } @@ -7331,7 +7566,7 @@ "description": "Transfer validation response.", "properties": { "properties": { - "description": "Transfer validation response properties.", + "description": "The properties of transfer validation response.", "x-ms-client-flatten": true, "$ref": "#/definitions/ValidateTransferResponseProperties" } @@ -7339,7 +7574,7 @@ }, "ValidateTransferResponseProperties": { "type": "object", - "description": "Properties of transfer validation response.", + "description": "The properties of transfer validation response.", "properties": { "status": { "description": "The status of validation", @@ -7352,7 +7587,7 @@ "readOnly": true }, "results": { - "description": "Array of validation results.", + "description": "The array of validation results.", "type": "array", "items": { "$ref": "#/definitions/ValidationResultProperties" @@ -7381,81 +7616,33 @@ } }, "Participants": { - "description": "Details about the participant or signer.", + "description": "The details about a participant.", "properties": { "status": { - "description": "The signing status", + "description": "The acceptance status of the participant.", "type": "string", "readOnly": true }, "statusDate": { - "description": "The date when status got changed.", + "description": "The date when the status got changed.", "type": "string", "format": "date-time", "readOnly": true }, "email": { - "description": "The email address of the participant or signer.", + "description": "The email address of the participant.", "type": "string", "readOnly": true } } }, - "LineOfCredit": { - "description": "Line of credit resource.", - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], - "properties": { - "properties": { - "description": "A line of credit.", - "x-ms-client-flatten": true, - "$ref": "#/definitions/LineOfCreditProperties" - } - } - }, - "LineOfCreditProperties": { - "description": "The properties of the line of credit.", - "properties": { - "creditLimit": { - "description": "The current credit limit.", - "$ref": "#/definitions/Amount", - "readOnly": false - }, - "reason": { - "description": "The reason for the line of credit status when not approved.", - "type": "string", - "readOnly": true - }, - "remainingBalance": { - "description": "Remaining balance.", - "$ref": "#/definitions/Amount", - "readOnly": true - }, - "status": { - "description": "The line of credit status.", - "type": "string", - "enum": [ - "Approved", - "Rejected" - ], - "x-ms-enum": { - "name": "status", - "modelAsString": true - } - } - } - }, "Action": { - "description": "the action the caller allowed to do", + "description": "The action the caller is allowed to perform.", "type": "string", "readOnly": true }, "NotAction": { - "description": "the action the caller doesn't allowed to do", + "description": "The set of actions that the caller is not allowed to perform.", "type": "string", "readOnly": true } @@ -7466,19 +7653,19 @@ "in": "query", "required": true, "type": "string", - "description": "Version of the API to be used with the client request. The current version is 2019-10-01-preview." + "description": "The version of the API to be used with the client request. The current version is 2019-10-01-preview." }, "subscriptionIdParameter": { "name": "subscriptionId", "in": "path", - "description": "Azure Subscription ID.", + "description": "The ID that uniquely identifies an Azure subscription.", "required": true, "type": "string" }, "billingAccountNameParameter": { "name": "billingAccountName", "in": "path", - "description": "billing Account Id.", + "description": "The ID that uniquely identifies a billing account.", "required": true, "type": "string", "x-ms-parameter-location": "method" @@ -7486,7 +7673,7 @@ "invoiceSectionNameParameter": { "name": "invoiceSectionName", "in": "path", - "description": "InvoiceSection Id.", + "description": "The ID that uniquely identifies an invoice section.", "required": true, "type": "string", "x-ms-parameter-location": "method" @@ -7494,7 +7681,7 @@ "enrollmentAccountNameParameter": { "name": "enrollmentAccountName", "in": "path", - "description": "Enrollment Account Id.", + "description": "The ID that uniquely identifies an enrollment account.", "required": true, "type": "string", "x-ms-parameter-location": "method" @@ -7502,7 +7689,7 @@ "departmentNameParameter": { "name": "departmentName", "in": "path", - "description": "Department Id.", + "description": "The ID that uniquely identifies a department.", "required": true, "type": "string", "x-ms-parameter-location": "method" @@ -7518,7 +7705,7 @@ "billingProfileNameParameter": { "name": "billingProfileName", "in": "path", - "description": "Billing Profile Id.", + "description": "The ID that uniquely identifies a billing profile.", "required": true, "type": "string", "x-ms-parameter-location": "method" @@ -7534,7 +7721,7 @@ "billingRoleDefinitionNameParameter": { "name": "billingRoleDefinitionName", "in": "path", - "description": "role definition id.", + "description": "The ID that uniquely identifies a role definition.", "required": true, "type": "string", "x-ms-parameter-location": "method" @@ -7542,7 +7729,7 @@ "billingRoleAssignmentNameParameter": { "name": "billingRoleAssignmentName", "in": "path", - "description": "role assignment id.", + "description": "The ID that uniquely identifies a role assignment.", "required": true, "type": "string", "x-ms-parameter-location": "method" @@ -7550,7 +7737,7 @@ "invoiceNameParameter": { "name": "invoiceName", "in": "path", - "description": "Invoice Id.", + "description": "The ID that uniquely identifies an invoice.", "required": true, "type": "string", "x-ms-parameter-location": "method" @@ -7558,7 +7745,7 @@ "productNameParameter": { "name": "productName", "in": "path", - "description": "Invoice Id.", + "description": "The ID that uniquely identifies a product.", "required": true, "type": "string", "x-ms-parameter-location": "method" @@ -7566,7 +7753,7 @@ "billingSubscriptionNameParameter": { "name": "billingSubscriptionName", "in": "path", - "description": "Billing Subscription Id.", + "description": "The ID that uniquely identifies a subscription.", "required": true, "type": "string", "x-ms-parameter-location": "method" @@ -7577,12 +7764,12 @@ "in": "path", "required": true, "type": "string", - "description": "Transfer Name." + "description": "The ID that uniquely identifies a transfer request." }, "agreementNameParameter": { "name": "agreementName", "in": "path", - "description": "Agreement Id.", + "description": "The ID that uniquely identifies an agreement.", "required": true, "type": "string", "x-ms-parameter-location": "method" @@ -7590,7 +7777,7 @@ "transactionNameParameter": { "name": "transactionName", "in": "path", - "description": "Transaction name.", + "description": "The ID that uniquely identifies a transaction.", "required": true, "type": "string", "x-ms-parameter-location": "method" @@ -7600,7 +7787,7 @@ "x-ms-parameter-location": "method", "in": "body", "required": true, - "description": "Update auto renew request parameters.", + "description": "Request parameters that are provided to the update auto renew operation.", "schema": { "$ref": "#/definitions/UpdateAutoRenewRequest" } @@ -7608,7 +7795,7 @@ "customerNameParameter": { "name": "customerName", "in": "path", - "description": "Customer name.", + "description": "The ID that uniquely identifies a customer.", "required": true, "type": "string", "x-ms-parameter-location": "method" diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/AgreementByName.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/AgreementByName.json index a74474b993f3..e3091a49eb3a 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/AgreementByName.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/AgreementByName.json @@ -12,6 +12,8 @@ "type": "Microsoft.Billing/billingAccounts/agreements", "properties": { "agreementLink": "https://agreementuri1.com", + "category": "MicrosoftCustomerAgreement", + "acceptanceMode": "ClickToAccept", "effectiveDate": "2018-12-05T00:00:00Z", "expirationDate": "2018-12-05T00:00:00Z", "participants": [ diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/AgreementsListByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/AgreementsListByBillingAccount.json index 7858b33f3449..2316d74cb00d 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/AgreementsListByBillingAccount.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/AgreementsListByBillingAccount.json @@ -13,6 +13,8 @@ "type": "Microsoft.Billing/billingAccounts/agreements", "properties": { "agreementLink": "https://agreementuri1.com", + "category": "MicrosoftCustomerAgreement", + "acceptanceMode": "ClickToAccept", "effectiveDate": "2018-12-05T00:00:00Z", "expirationDate": "2018-12-05T00:00:00Z", "participants": [ @@ -36,6 +38,8 @@ "type": "Microsoft.Billing/billingAccounts/agreements", "properties": { "agreementLink": "https://agreementuri2.com", + "category": "MicrosoftCustomerAgreement", + "acceptanceMode": "ESignEmbedded", "effectiveDate": "2018-12-05T00:00:00Z", "expirationDate": "2018-12-05T00:00:00Z", "participants": [ diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingAccount.json index aa49d5ce7f72..3606d158853e 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingAccount.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingAccount.json @@ -13,6 +13,7 @@ "displayName": "Test Account", "agreementType": "MicrosoftCustomerAgreement", "customerType": "Enterprise", + "accountType": "Enterprise", "organizationId": "00000000-0000-0000-0000-000000000000" } } diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingAccountInvoicesList.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingAccountInvoicesList.json index a95b433064d3..8cae9ef48c9d 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingAccountInvoicesList.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingAccountInvoicesList.json @@ -20,14 +20,39 @@ "status": "Due", "amountDue": { "currency": "USD", - "value": 2000.00 + "value": 8.53 }, "billedAmount": { "currency": "USD", - "value": 2000.00 + "value": 33.99 + }, + "azurePrepaymentApplied": { + "currency": "USD", + "value": 25.46 + }, + "creditAmount": { + "currency": "USD", + "value": 1.00 + }, + "freeAzureCreditApplied": { + "currency": "USD", + "value": 0.00 + }, + "subTotal": { + "currency": "USD", + "value": 33.99 + }, + "taxAmount": { + "currency": "USD", + "value": 0.00 + }, + "totalAmount": { + "currency": "USD", + "value": 7.53 }, "invoicePeriodStartDate": "2018-01-01T17:32:28Z", "invoicePeriodEndDate": "2018-01-15T17:32:28Z", + "isMonthlyInvoice": false, "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/11000000-0000-0000-0000-000000000000", "billingProfileDisplayName": "Contoso Operations Billing", "purchaseOrderNumber": "123456", @@ -43,7 +68,7 @@ "paymentType": "credited", "amount": { "currency": "USD", - "value": 2000.00 + "value": 1.00 }, "paymentMethodFamily": "CreditCard", "paymentMethodType": "visa" @@ -61,14 +86,39 @@ "status": "PastDue", "amountDue": { "currency": "USD", - "value": 2000.00 + "value": 16.53 }, "billedAmount": { "currency": "USD", - "value": 2000.00 + "value": 33.99 + }, + "azurePrepaymentApplied": { + "currency": "USD", + "value": 15.46 + }, + "creditAmount": { + "currency": "USD", + "value": 2.00 + }, + "freeAzureCreditApplied": { + "currency": "USD", + "value": 0.00 + }, + "subTotal": { + "currency": "USD", + "value": 33.99 + }, + "taxAmount": { + "currency": "USD", + "value": 0.00 + }, + "totalAmount": { + "currency": "USD", + "value": 16.53 }, "invoicePeriodStartDate": "2018-02-01T17:32:28Z", - "invoicePeriodEndDate": "2018-02-30T17:32:28Z", + "invoicePeriodEndDate": "2018-02-28T17:32:28Z", + "isMonthlyInvoice": true, "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/11000000-0000-0000-0000-000000000000", "billingProfileDisplayName": "Contoso Operations Billing", "purchaseOrderNumber": "123456", @@ -84,7 +134,7 @@ "paymentType": "credited", "amount": { "currency": "USD", - "value": 2000.00 + "value": 2.00 }, "paymentMethodFamily": "CreditCard", "paymentMethodType": "visa" diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingAccountWithExpand.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingAccountWithExpand.json index 4d567b59a53a..af15064c2b47 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingAccountWithExpand.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingAccountWithExpand.json @@ -26,6 +26,7 @@ "country": "US" }, "customerType": "Enterprise", + "accountType": "Enterprise", "organizationId": "00000000-0000-0000-0000-000000000000", "billingProfiles": [ { @@ -60,6 +61,9 @@ "invoiceDay": 5, "invoiceEmailOptIn": true, "poNumber": "ABC12345", + "status": "Warned", + "statusReasonCode": "PastDue", + "spendingLimit": "On", "invoiceSections": [ { "id": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/11000000-0000-0000-0000-000000000000/invoiceSections/invoiceSectionId1", @@ -104,6 +108,8 @@ "invoiceDay": 5, "invoiceEmailOptIn": true, "poNumber": "ABC12345", + "status": "Active", + "spendingLimit": "Off", "invoiceSections": [ { "id": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/11000000-0000-0000-0000-000000000001/invoiceSections/invoiceSectionId2", diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingAccountsList.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingAccountsList.json index 8ae24f9be32b..64b426ffb4e5 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingAccountsList.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingAccountsList.json @@ -14,6 +14,7 @@ "displayName": "Test Account 1", "agreementType": "MicrosoftCustomerAgreement", "customerType": "Enterprise", + "accountType": "Enterprise", "organizationId": "00000000-0000-0000-0000-000000000000" } }, @@ -26,6 +27,7 @@ "agreementType": "MicrosoftCustomerAgreement", "address": null, "customerType": "Enterprise", + "accountType": "Enterprise", "organizationId": "00000000-0000-0000-0000-000000000000" } }, @@ -37,6 +39,7 @@ "displayName": "Test Account 3", "agreementType": "MicrosoftCustomerAgreement", "customerType": "Enterprise", + "accountType": "Enterprise", "organizationId": "00000000-0000-0000-0000-000000000000" } } diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingAccountsListWithExpand.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingAccountsListWithExpand.json index e4c38f61575b..c7dde32c8a76 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingAccountsListWithExpand.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingAccountsListWithExpand.json @@ -27,6 +27,7 @@ "country": "US" }, "customerType": "Enterprise", + "accountType": "Enterprise", "organizationId": "00000000-0000-0000-0000-000000000000", "billingProfiles": [ { @@ -61,6 +62,9 @@ "invoiceDay": 5, "invoiceEmailOptIn": true, "poNumber": "ABC12345", + "status": "Warned", + "statusReasonCode": "PastDue", + "spendingLimit": "On", "invoiceSections": [ { "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000_00000000-0000-0000-0000-000000000000/billingProfiles/11000000-0000-0000-0000-000000000000/invoiceSections/invoiceSectionId1", @@ -113,6 +117,8 @@ "invoiceDay": 5, "invoiceEmailOptIn": true, "poNumber": "ABC12345", + "status": "Active", + "spendingLimit": "Off", "invoiceSections": [ { "id": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000_00000000-0000-0000-0000-000000000000/billingProfiles/11000000-0000-0000-0000-000000000001/invoiceSections/invoiceSectionId11", @@ -137,6 +143,7 @@ "agreementType": "MicrosoftCustomerAgreement", "address": null, "customerType": "Enterprise", + "accountType": "Enterprise", "organizationId": "00000000-0000-0000-0000-000000000000", "billingProfiles": [ { @@ -171,6 +178,9 @@ "invoiceDay": 5, "invoiceEmailOptIn": true, "poNumber": "ABC12345", + "status": "Warned", + "statusReasonCode": "PastDue", + "spendingLimit": "On", "invoiceSections": [ { "id": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000001_00000000-0000-0000-0000-000000000000/billingProfiles/11000000-0000-0000-0000-000000000004/invoiceSections/invoiceSectionId3", @@ -223,6 +233,9 @@ "invoiceDay": 5, "invoiceEmailOptIn": true, "poNumber": "ABC12345", + "status": "Warned", + "statusReasonCode": "PastDue", + "spendingLimit": "On", "invoiceSections": [ { "id": "/providers/Microsoft.Billing/billingAccounts/10000000-0000-0000-0000-000000000001_00000000-0000-0000-0000-000000000000/billingProfiles/11000000-0000-0000-0000-000000000005/invoiceSections/invoiceSectionId5", diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingProfile.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingProfile.json index 0d6b2db613f9..794438bcb108 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingProfile.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingProfile.json @@ -37,7 +37,10 @@ ], "invoiceDay": 5, "invoiceEmailOptIn": true, - "poNumber": "ABC12345" + "poNumber": "ABC12345", + "status": "Warned", + "statusReasonCode": "PastDue", + "spendingLimit": "On" } } } diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingProfileWithExpand.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingProfileWithExpand.json index 9353a69265a5..85ac12f6cd22 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingProfileWithExpand.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingProfileWithExpand.json @@ -38,6 +38,9 @@ "invoiceDay": 5, "invoiceEmailOptIn": true, "poNumber": "ABC12345", + "status": "Warned", + "statusReasonCode": "PastDue", + "spendingLimit": "On", "invoiceSections": [ { "id": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/invoiceSectionId1", diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingProfilesListByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingProfilesListByBillingAccount.json index 5fba4a2affa6..f918258a3c84 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingProfilesListByBillingAccount.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingProfilesListByBillingAccount.json @@ -38,7 +38,10 @@ ], "invoiceDay": 5, "invoiceEmailOptIn": true, - "poNumber": "ABC12345" + "poNumber": "ABC12345", + "status": "Warned", + "statusReasonCode": "PastDue", + "spendingLimit": "On" } }, { @@ -72,7 +75,9 @@ ], "invoiceDay": 5, "invoiceEmailOptIn": true, - "poNumber": "ABC12345" + "poNumber": "ABC12345", + "status": "Active", + "spendingLimit": "Off" } } ] diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingProfilesListWithExpand.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingProfilesListWithExpand.json index d102cee86f2a..28e98ba64c59 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingProfilesListWithExpand.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingProfilesListWithExpand.json @@ -39,6 +39,9 @@ "invoiceDay": 5, "invoiceEmailOptIn": true, "poNumber": "ABC12345", + "status": "Warned", + "statusReasonCode": "PastDue", + "spendingLimit": "On", "invoiceSections": [ { "id": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/11000000-0000-0000-0000-000000000000/invoiceSections/invoiceSectionId1", @@ -83,6 +86,9 @@ "invoiceDay": 5, "invoiceEmailOptIn": true, "poNumber": "ABC12345", + "status": "Warned", + "statusReasonCode": "PastDue", + "spendingLimit": "On", "invoiceSections": [ { "id": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/11000000-0000-0000-0000-000000000001/invoiceSections/invoiceSectionId2", diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingProperty.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingProperty.json index 29cdfa58259d..616b02f0c3f2 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingProperty.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingProperty.json @@ -15,6 +15,9 @@ "billingAccountDisplayName": "My Account", "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000_00000000-0000-0000-0000-000000000000/billingProfiles/11000000-0000-0000-0000-000000000000", "billingProfileDisplayName": "Contoso operations billing", + "billingProfileStatus": "Warned", + "billingProfileStatusReasonCode": "PastDue", + "billingProfileSpendingLimit": "On", "costCenter": "1010", "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/00000000-0000-0000-0000-000000000000_00000000-0000-0000-0000-000000000000/invoiceSections/22000000-0000-0000-0000-000000000000", "invoiceSectionDisplayName": "Contoso operations invoice section", diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingSubscriptionInvoice.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingSubscriptionInvoice.json index 2069af1a1bbc..d830d356aa1e 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingSubscriptionInvoice.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingSubscriptionInvoice.json @@ -14,7 +14,7 @@ "properties": { "dueDate": "2018-03-01T17:32:28Z", "invoiceDate": "2018-02-01T17:32:28Z", - "status": "PastDue", + "status": "Paid", "amountDue": { "currency": "USD", "value": 2000.00 @@ -46,9 +46,10 @@ "paymentMethodFamily": "CreditCard", "paymentMethodType": "visa" } - ] + ], + "subscriptionId": "55000000-0000-0000-0000-000000000011" } - } + } } } } diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingSubscriptionInvoicesList.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingSubscriptionInvoicesList.json index dcdf47e35401..7341d584d273 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingSubscriptionInvoicesList.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/BillingSubscriptionInvoicesList.json @@ -25,7 +25,8 @@ "invoicePeriodStartDate": "2018-01-01T17:32:28Z", "invoicePeriodEndDate": "2018-01-15T17:32:28Z", "invoiceType": "AzureServices", - "purchaseOrderNumber": "123456" + "purchaseOrderNumber": "123456", + "subscriptionId": "55000000-0000-0000-0000-000000000011" } }, { @@ -35,7 +36,7 @@ "properties": { "dueDate": "2018-03-01T17:32:28Z", "invoiceDate": "2018-02-01T17:32:28Z", - "status": "PastDue", + "status": "Paid", "amountDue": { "currency": "USD", "value": 2000.00 @@ -67,7 +68,8 @@ "paymentMethodFamily": "CreditCard", "paymentMethodType": "visa" } - ] + ], + "subscriptionId": "55000000-0000-0000-0000-000000000011" } } ] diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/CreateBillingProfile.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/CreateBillingProfile.json index dbc4fe70d1d2..399fa14d1365 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/CreateBillingProfile.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/CreateBillingProfile.json @@ -62,7 +62,9 @@ ], "invoiceDay": 5, "invoiceEmailOptIn": true, - "poNumber": "ABC12345" + "poNumber": "ABC12345", + "status": "Active", + "spendingLimit": "Off" } } } diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/IncreaseLineOfCreditBySubscription.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/IncreaseLineOfCreditBySubscription.json deleted file mode 100644 index ba785726b009..000000000000 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/IncreaseLineOfCreditBySubscription.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "parameters": { - "api-version": "2019-10-01-preview", - "subscriptionId": "{subscriptionId}", - "parameters": { - "properties": { - "creditLimit": { - "value": 20000.00 - } - } - } - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/{subscriptionId}/providers/Microsoft.Billing/billingAccounts/default/lineOfCredit/default", - "name": "default", - "type": "Microsoft.Billing/lineOfCredit", - "properties": { - "creditLimit": { - "currency": "USD", - "value": 20000.00 - }, - "reason": null, - "remainingBalance": { - "currency": "USD", - "value": 6000.00 - }, - "status": "Approved" - } - } - }, - "202": { - "headers": { - "Location": "https://management.azure.com/providers/Microsoft.Billing/operationResults/44000000-0000-0000-0000-000000000000?api-version=2019-10-01-preview", - "Retry-After": "60", - "OData-EntityId": "44000000-0000-0000-0000-000000000000" - } - } - } -} diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/Invoice.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/Invoice.json index 094ddb082c5a..92805185cb6b 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/Invoice.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/Invoice.json @@ -17,14 +17,39 @@ "status": "Due", "amountDue": { "currency": "USD", - "value": 2000.00 + "value": 16.53 }, "billedAmount": { "currency": "USD", - "value": 2000.00 + "value": 33.99 + }, + "azurePrepaymentApplied": { + "currency": "USD", + "value": 15.46 + }, + "creditAmount": { + "currency": "USD", + "value": 2.00 + }, + "freeAzureCreditApplied": { + "currency": "USD", + "value": 0.00 + }, + "subTotal": { + "currency": "USD", + "value": 33.99 + }, + "taxAmount": { + "currency": "USD", + "value": 0.00 + }, + "totalAmount": { + "currency": "USD", + "value": 16.53 }, "invoicePeriodStartDate": "2018-01-01T17:32:28Z", "invoicePeriodEndDate": "2018-01-15T17:32:28Z", + "isMonthlyInvoice": false, "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}", "billingProfileDisplayName": "Contoso Operations Billing", "purchaseOrderNumber": "123456", @@ -48,7 +73,7 @@ "paymentType": "credited", "amount": { "currency": "USD", - "value": 2000.00 + "value": 2.00 }, "paymentMethodFamily": "CreditCard", "paymentMethodType": "visa" diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/InvoiceSectionsListWithCreateSubPermission.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/InvoiceSectionsListWithCreateSubPermission.json index dfc97353d0d6..27263ca62393 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/InvoiceSectionsListWithCreateSubPermission.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/InvoiceSectionsListWithCreateSubPermission.json @@ -12,6 +12,9 @@ "invoiceSectionDisplayName": "invoiceSection1", "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/11000000-0000-0000-0000-000000000000", "billingProfileDisplayName": "Contoso operations billing", + "billingProfileStatus": "Warned", + "billingProfileStatusReasonCode": "PastDue", + "billingProfileSpendingLimit": "On", "enabledAzurePlans": [ { "skuId": "0001", diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/InvoicesListByBillingProfile.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/InvoicesListByBillingProfile.json index 5f62c236eeba..6867b5848080 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/InvoicesListByBillingProfile.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/InvoicesListByBillingProfile.json @@ -21,14 +21,39 @@ "status": "Due", "amountDue": { "currency": "USD", - "value": 2000.00 + "value": 8.53 }, "billedAmount": { "currency": "USD", - "value": 2000.00 + "value": 33.99 + }, + "azurePrepaymentApplied": { + "currency": "USD", + "value": 25.46 + }, + "creditAmount": { + "currency": "USD", + "value": 1.00 + }, + "freeAzureCreditApplied": { + "currency": "USD", + "value": 0.00 + }, + "subTotal": { + "currency": "USD", + "value": 33.99 + }, + "taxAmount": { + "currency": "USD", + "value": 0.00 + }, + "totalAmount": { + "currency": "USD", + "value": 7.53 }, "invoicePeriodStartDate": "2018-01-01T17:32:28Z", "invoicePeriodEndDate": "2018-01-15T17:32:28Z", + "isMonthlyInvoice": false, "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}", "billingProfileDisplayName": "Contoso Operations Billing", "purchaseOrderNumber": "123456", @@ -52,7 +77,7 @@ "paymentType": "credited", "amount": { "currency": "USD", - "value": 2000.00 + "value": 1.00 }, "paymentMethodFamily": "CreditCard", "paymentMethodType": "visa" @@ -67,17 +92,42 @@ "properties": { "dueDate": "2018-03-01T17:32:28Z", "invoiceDate": "2018-01-01T17:32:28Z", - "status": "PastDue", + "status": "Due", "amountDue": { "currency": "USD", - "value": 2000.00 + "value": 16.53 }, "billedAmount": { "currency": "USD", - "value": 2000.00 + "value": 33.99 + }, + "azurePrepaymentApplied": { + "currency": "USD", + "value": 15.46 + }, + "creditAmount": { + "currency": "USD", + "value": 2.00 + }, + "freeAzureCreditApplied": { + "currency": "USD", + "value": 0.00 + }, + "subTotal": { + "currency": "USD", + "value": 33.99 + }, + "taxAmount": { + "currency": "USD", + "value": 0.00 + }, + "totalAmount": { + "currency": "USD", + "value": 16.53 }, "invoicePeriodStartDate": "2018-02-01T17:32:28Z", - "invoicePeriodEndDate": "2018-02-30T17:32:28Z", + "invoicePeriodEndDate": "2018-02-28T17:32:28Z", + "isMonthlyInvoice": true, "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}", "billingProfileDisplayName": "Contoso Operations Billing", "purchaseOrderNumber": "123456", @@ -101,7 +151,7 @@ "paymentType": "credited", "amount": { "currency": "USD", - "value": 2000.00 + "value": 2.00 }, "paymentMethodFamily": "CreditCard", "paymentMethodType": "visa" diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/LineOfCreditBySubscription.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/LineOfCreditBySubscription.json deleted file mode 100644 index 8e1fb4a25ff5..000000000000 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/LineOfCreditBySubscription.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "parameters": { - "api-version": "2019-10-01-preview", - "subscriptionId": "{subscriptionId}" - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/{subscriptionId}/providers/Microsoft.Billing/billingAccounts/default/lineOfCredit/default", - "name": "default", - "type": "Microsoft.Billing/lineOfCredit", - "properties": { - "creditLimit": { - "currency": "USD", - "value": 20000.00 - }, - "reason": null, - "remainingBalance": { - "currency": "USD", - "value": 6000.00 - }, - "status": "Approved" - } - } - } - } -} diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/Product.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/Product.json index 8fd3e3f66b12..3110818d708f 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/Product.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/Product.json @@ -27,6 +27,7 @@ "quantity": 4, "skuId": "0001", "skuDescription": "Enterprise Agreement Development", + "tenantId": "515a6d36-aaf8-4ca2-a5e8-c45deb0c5cce", "availabilityId": "AvailabilityId1", "parentProductId": "45000000-0000-0000-0000-0000000001242", "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}", diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/ProductsListByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/ProductsListByBillingAccount.json index 501b5d32eba2..57579b5ed754 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/ProductsListByBillingAccount.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/ProductsListByBillingAccount.json @@ -25,6 +25,7 @@ "quantity": 4, "skuId": "0001", "skuDescription": "Enterprise Agreement Development", + "tenantId": "515a6d36-aaf8-4ca2-a5e8-c45deb0c5cce", "availabilityId": "AvailabilityId1", "billingFrequency": "OneTime", "parentProductId": "45000000-0000-0000-0000-0000000001242", @@ -52,6 +53,7 @@ "quantity": 4, "skuId": "0001", "skuDescription": "Enterprise Agreement Development", + "tenantId": "515a6d36-aaf8-4ca2-a5e8-c45deb0c5cce", "availabilityId": "AvailabilityId1", "billingFrequency": "Monthly", "parentProductId": "45000000-0000-0000-0000-0000000001242", diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/ProductsListByCustomer.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/ProductsListByCustomer.json index a7a69b529d7e..87c146a1c62b 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/ProductsListByCustomer.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/ProductsListByCustomer.json @@ -27,6 +27,7 @@ "quantity": 4, "skuId": "0001", "skuDescription": "Enterprise Agreement Development", + "tenantId": "515a6d36-aaf8-4ca2-a5e8-c45deb0c5cce", "availabilityId": "AvailabilityId1", "parentProductId": "45000000-0000-0000-0000-0000000001242", "customerId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/customers/{customerName}", @@ -58,6 +59,7 @@ "quantity": 4, "skuId": "0001", "skuDescription": "Enterprise Agreement Development", + "tenantId": "515a6d36-aaf8-4ca2-a5e8-c45deb0c5cce", "availabilityId": "AvailabilityId1", "parentProductId": "45000000-0000-0000-0000-0000000001242", "customerId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/customers/{customerName}", diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/ProductsListByInvoiceSection.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/ProductsListByInvoiceSection.json index a8ab1eaf3cb5..68ab8aa62fc8 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/ProductsListByInvoiceSection.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/ProductsListByInvoiceSection.json @@ -28,6 +28,7 @@ "quantity": 4, "skuId": "0001", "skuDescription": "Enterprise Agreement Development", + "tenantId": "515a6d36-aaf8-4ca2-a5e8-c45deb0c5cce", "availabilityId": "AvailabilityId1", "parentProductId": "45000000-0000-0000-0000-0000000001242", "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}", diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/Transaction.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/Transaction.json index 206b2e3dc338..092e1ccca619 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/Transaction.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/Transaction.json @@ -29,7 +29,37 @@ "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}", "invoiceSectionDisplayName": "Contoso operations invoiceSection", "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/11000000-0000-0000-0000-000000000000", - "billingProfileDisplayName": "Contoso operations billing" + "billingProfileDisplayName": "Contoso operations billing", + "azureCreditApplied": { + "currency": "USD", + "value": 2000.00 + }, + "billingCurrency": "USD", + "discount": 0.1, + "effectivePrice": { + "currency": "USD", + "value": 10.00 + }, + "exchangeRate": 1, + "marketPrice": { + "currency": "USD", + "value": 20.00 + }, + "pricingCurrency": "USD", + "quantity": 1, + "servicePeriodStartDate": "2018-05-01T00:00:00Z", + "servicePeriodEndDate": "2018-09-30T00:00:00Z", + "subTotal": { + "currency": "USD", + "value": 4500.00 + }, + "tax": { + "currency": "USD", + "value": 500.00 + }, + "unitOfMeasure": "1 Minute", + "units": 11.25, + "unitType": "1 Runtime Minute" } } } diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/TransactionsListByBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/TransactionsListByBillingAccount.json index e31eb448ca25..09387b9e3177 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/TransactionsListByBillingAccount.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/TransactionsListByBillingAccount.json @@ -29,7 +29,37 @@ "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/11000000-0000-0000-0000-000000000000/invoiceSections/22000000-0000-0000-0000-000000000000", "invoiceSectionDisplayName": "Contoso operations invoiceSection", "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/11000000-0000-0000-0000-000000000000", - "billingProfileDisplayName": "Contoso operations billing" + "billingProfileDisplayName": "Contoso operations billing", + "azureCreditApplied": { + "currency": "USD", + "value": 2000.00 + }, + "billingCurrency": "USD", + "discount": 0.1, + "effectivePrice": { + "currency": "USD", + "value": 10.00 + }, + "exchangeRate": 1, + "marketPrice": { + "currency": "USD", + "value": 20.00 + }, + "pricingCurrency": "USD", + "quantity": 1, + "servicePeriodStartDate": "2018-05-01T00:00:00Z", + "servicePeriodEndDate": "2018-09-30T00:00:00Z", + "subTotal": { + "currency": "USD", + "value": 4500.00 + }, + "tax": { + "currency": "USD", + "value": 500.00 + }, + "unitOfMeasure": "1 Minute", + "units": 11.25, + "unitType": "1 Runtime Minute" } }, { @@ -52,7 +82,37 @@ "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/11000000-0000-0000-0000-000000000000/invoiceSections/22000000-0000-0000-0000-000000000000", "invoiceSectionDisplayName": "Contoso operations invoiceSection", "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/11000000-0000-0000-0000-000000000000", - "billingProfileDisplayName": "Contoso operations billing" + "billingProfileDisplayName": "Contoso operations billing", + "azureCreditApplied": { + "currency": "USD", + "value": 20.00 + }, + "billingCurrency": "USD", + "discount": 0.1, + "effectivePrice": { + "currency": "USD", + "value": 10.00 + }, + "exchangeRate": 1, + "marketPrice": { + "currency": "USD", + "value": 20.00 + }, + "pricingCurrency": "USD", + "quantity": 1, + "servicePeriodStartDate": "2018-05-01T00:00:00Z", + "servicePeriodEndDate": "2018-09-30T00:00:00Z", + "subTotal": { + "currency": "USD", + "value": 45.00 + }, + "tax": { + "currency": "USD", + "value": 5.00 + }, + "unitOfMeasure": "1 Minute", + "units": 1.25, + "unitType": "1 Runtime Minute" } } ] diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/TransactionsListByBillingProfile.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/TransactionsListByBillingProfile.json index 38d31b0f6e87..68f04b76f6cc 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/TransactionsListByBillingProfile.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/TransactionsListByBillingProfile.json @@ -30,7 +30,37 @@ "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/22000000-0000-0000-0000-000000000000", "invoiceSectionDisplayName": "Contoso operations invoiceSection", "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}", - "billingProfileDisplayName": "Contoso operations billing" + "billingProfileDisplayName": "Contoso operations billing", + "azureCreditApplied": { + "currency": "USD", + "value": 2000.00 + }, + "billingCurrency": "USD", + "discount": 0.1, + "effectivePrice": { + "currency": "USD", + "value": 10.00 + }, + "exchangeRate": 1, + "marketPrice": { + "currency": "USD", + "value": 20.00 + }, + "pricingCurrency": "USD", + "quantity": 1, + "servicePeriodStartDate": "2018-05-01T00:00:00Z", + "servicePeriodEndDate": "2018-09-30T00:00:00Z", + "subTotal": { + "currency": "USD", + "value": 4500.00 + }, + "tax": { + "currency": "USD", + "value": 500.00 + }, + "unitOfMeasure": "1 Minute", + "units": 11.25, + "unitType": "1 Runtime Minute" } }, { @@ -53,7 +83,37 @@ "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/22000000-0000-0000-0000-000000000000", "invoiceSectionDisplayName": "Contoso operations invoiceSection", "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}", - "billingProfileDisplayName": "Contoso operations billing" + "billingProfileDisplayName": "Contoso operations billing", + "azureCreditApplied": { + "currency": "USD", + "value": 20.00 + }, + "billingCurrency": "USD", + "discount": 0.1, + "effectivePrice": { + "currency": "USD", + "value": 10.00 + }, + "exchangeRate": 1, + "marketPrice": { + "currency": "USD", + "value": 20.00 + }, + "pricingCurrency": "USD", + "quantity": 1, + "servicePeriodStartDate": "2018-05-01T00:00:00Z", + "servicePeriodEndDate": "2018-09-30T00:00:00Z", + "subTotal": { + "currency": "USD", + "value": 45.00 + }, + "tax": { + "currency": "USD", + "value": 5.00 + }, + "unitOfMeasure": "1 Minute", + "units": 1.25, + "unitType": "1 Runtime Minute" } } ] diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/TransactionsListByCustomer.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/TransactionsListByCustomer.json index 2d559b560cb3..418913b5c1c6 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/TransactionsListByCustomer.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/TransactionsListByCustomer.json @@ -28,7 +28,37 @@ "value": 5000.00 }, "customerId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/customers/{customerName}", - "customerDisplayName": "Contoso operations customer" + "customerDisplayName": "Contoso operations customer", + "azureCreditApplied": { + "currency": "USD", + "value": 2000.00 + }, + "billingCurrency": "USD", + "discount": 0.1, + "effectivePrice": { + "currency": "USD", + "value": 10.00 + }, + "exchangeRate": 1, + "marketPrice": { + "currency": "USD", + "value": 20.00 + }, + "pricingCurrency": "USD", + "quantity": 1, + "servicePeriodStartDate": "2018-05-01T00:00:00Z", + "servicePeriodEndDate": "2018-09-30T00:00:00Z", + "subTotal": { + "currency": "USD", + "value": 4500.00 + }, + "tax": { + "currency": "USD", + "value": 500.00 + }, + "unitOfMeasure": "1 Minute", + "units": 11.25, + "unitType": "1 Runtime Minute" } }, { @@ -49,7 +79,37 @@ "value": 50.00 }, "customerId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/customers/{customerName}", - "customerDisplayName": "Contoso operations customer" + "customerDisplayName": "Contoso operations customer", + "azureCreditApplied": { + "currency": "USD", + "value": 20.00 + }, + "billingCurrency": "USD", + "discount": 0.1, + "effectivePrice": { + "currency": "USD", + "value": 10.00 + }, + "exchangeRate": 1, + "marketPrice": { + "currency": "USD", + "value": 20.00 + }, + "pricingCurrency": "USD", + "quantity": 1, + "servicePeriodStartDate": "2018-05-01T00:00:00Z", + "servicePeriodEndDate": "2018-09-30T00:00:00Z", + "subTotal": { + "currency": "USD", + "value": 45.00 + }, + "tax": { + "currency": "USD", + "value": 5.00 + }, + "unitOfMeasure": "1 Minute", + "units": 1.25, + "unitType": "1 Runtime Minute" } } ] diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/TransactionsListByInvoice.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/TransactionsListByInvoice.json new file mode 100644 index 000000000000..7c1da9f1e531 --- /dev/null +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/TransactionsListByInvoice.json @@ -0,0 +1,122 @@ +{ + "parameters": { + "api-version": "2019-10-01-preview", + "billingAccountName": "{billingAccountName}", + "billingProfileName": "{billingProfileName}", + "invoiceName": "{invoiceName}" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Billing/BillingAccounts/{billingAccountName}/BillingProfiles/{billingProfileName}/transactions/41000000-0000-0000-0000-000000000000", + "name": "41000000-0000-0000-0000-000000000000", + "type": "Microsoft.Billing/billingAccounts/billingProfiles/transactions", + "properties": { + "kind": "all", + "date": "2018-05-01T00:00:00Z", + "invoice": "2344233", + "productFamily": "Storage", + "productTypeId": "A12345", + "productType": "VM Instance", + "productDescription": "Standard D1, US West 3", + "transactionType": "Purchase", + "transactionAmount": { + "currency": "USD", + "value": 5000.00 + }, + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/22000000-0000-0000-0000-000000000000", + "invoiceSectionDisplayName": "Contoso operations invoiceSection", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}", + "billingProfileDisplayName": "Contoso operations billing", + "azureCreditApplied": { + "currency": "USD", + "value": 2000.00 + }, + "billingCurrency": "USD", + "discount": 0.1, + "effectivePrice": { + "currency": "USD", + "value": 10.00 + }, + "exchangeRate": 1, + "marketPrice": { + "currency": "USD", + "value": 20.00 + }, + "pricingCurrency": "USD", + "quantity": 1, + "servicePeriodStartDate": "2018-05-01T00:00:00Z", + "servicePeriodEndDate": "2018-09-30T00:00:00Z", + "subTotal": { + "currency": "USD", + "value": 4500.00 + }, + "tax": { + "currency": "USD", + "value": 500.00 + }, + "unitOfMeasure": "1 Minute", + "units": 11.25, + "unitType": "1 Runtime Minute" + } + }, + { + "id": "/providers/Microsoft.Billing/BillingAccounts/{billingAccountName}/BillingProfiles/{billingProfileName}/transactions/51000000-0000-0000-0000-000000000000", + "name": "51000000-0000-0000-0000-000000000000", + "type": "Microsoft.Billing/billingAccounts/billingProfiles/transactions", + "properties": { + "kind": "all", + "date": "2018-04-01T00:00:00Z", + "invoice": "pending", + "productFamily": "Storage", + "productTypeId": "A12345", + "productType": "VM Instance", + "productDescription": "Standard Support", + "transactionType": "Cancel", + "transactionAmount": { + "currency": "USD", + "value": 50.00 + }, + "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/22000000-0000-0000-0000-000000000000", + "invoiceSectionDisplayName": "Contoso operations invoiceSection", + "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}", + "billingProfileDisplayName": "Contoso operations billing", + "azureCreditApplied": { + "currency": "USD", + "value": 20.00 + }, + "billingCurrency": "USD", + "discount": 0.1, + "effectivePrice": { + "currency": "USD", + "value": 10.00 + }, + "exchangeRate": 1, + "marketPrice": { + "currency": "USD", + "value": 20.00 + }, + "pricingCurrency": "USD", + "quantity": 1, + "servicePeriodStartDate": "2018-05-01T00:00:00Z", + "servicePeriodEndDate": "2018-09-30T00:00:00Z", + "subTotal": { + "currency": "USD", + "value": 45.00 + }, + "tax": { + "currency": "USD", + "value": 5.00 + }, + "unitOfMeasure": "1 Minute", + "units": 1.25, + "unitType": "1 Runtime Minute" + } + } + ] + } + } + } +} diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/TransactionsListByInvoiceSection.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/TransactionsListByInvoiceSection.json index 2d9017ed9ebe..2a2d00de78fc 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/TransactionsListByInvoiceSection.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/TransactionsListByInvoiceSection.json @@ -31,7 +31,37 @@ "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}", "invoiceSectionDisplayName": "Contoso operations invoiceSection", "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/11000000-0000-0000-0000-000000000000", - "billingProfileDisplayName": "Contoso operations billing" + "billingProfileDisplayName": "Contoso operations billing", + "azureCreditApplied": { + "currency": "USD", + "value": 2000.00 + }, + "billingCurrency": "USD", + "discount": 0.1, + "effectivePrice": { + "currency": "USD", + "value": 10.00 + }, + "exchangeRate": 1, + "marketPrice": { + "currency": "USD", + "value": 20.00 + }, + "pricingCurrency": "USD", + "quantity": 1, + "servicePeriodStartDate": "2018-05-01T00:00:00Z", + "servicePeriodEndDate": "2018-09-30T00:00:00Z", + "subTotal": { + "currency": "USD", + "value": 4500.00 + }, + "tax": { + "currency": "USD", + "value": 500.00 + }, + "unitOfMeasure": "1 Minute", + "units": 11.25, + "unitType": "1 Runtime Minute" } }, { @@ -54,7 +84,37 @@ "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}", "invoiceSectionDisplayName": "Contoso operations invoiceSection", "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/11000000-0000-0000-0000-000000000000", - "billingProfileDisplayName": "Contoso operations billing" + "billingProfileDisplayName": "Contoso operations billing", + "azureCreditApplied": { + "currency": "USD", + "value": 20.00 + }, + "billingCurrency": "USD", + "discount": 0.1, + "effectivePrice": { + "currency": "USD", + "value": 10.00 + }, + "exchangeRate": 1, + "marketPrice": { + "currency": "USD", + "value": 20.00 + }, + "pricingCurrency": "USD", + "quantity": 1, + "servicePeriodStartDate": "2018-05-01T00:00:00Z", + "servicePeriodEndDate": "2018-09-30T00:00:00Z", + "subTotal": { + "currency": "USD", + "value": 45.00 + }, + "tax": { + "currency": "USD", + "value": 5.00 + }, + "unitOfMeasure": "1 Minute", + "units": 1.25, + "unitType": "1 Runtime Minute" } } ] diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/TransferProduct.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/TransferProduct.json index 6f12595407f9..e95947c508cf 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/TransferProduct.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/TransferProduct.json @@ -31,6 +31,7 @@ "quantity": 4, "skuId": "0001", "skuDescription": "Enterprise Agreement Development", + "tenantId": "515a6d36-aaf8-4ca2-a5e8-c45deb0c5cce", "availabilityId": "AvailabilityId1", "parentProductId": "45000000-0000-0000-0000-0000000001242", "invoiceSectionId": "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{newBillingProfileName}/invoiceSections/{newInvoiceSectionName}", diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/UpdateBillingAccount.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/UpdateBillingAccount.json index 7217cbd1c847..0e11c84137e4 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/UpdateBillingAccount.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/UpdateBillingAccount.json @@ -33,6 +33,7 @@ "displayName": "Test Account", "agreementType": "MicrosoftCustomerAgreement", "customerType": "Enterprise", + "accountType": "Enterprise", "organizationId": "00000000-0000-0000-0000-000000000000" } } diff --git a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/UpdateBillingProfile.json b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/UpdateBillingProfile.json index 0ef3293b816f..42e0283a54d2 100644 --- a/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/UpdateBillingProfile.json +++ b/specification/billing/resource-manager/Microsoft.Billing/preview/2019-10-01-preview/examples/UpdateBillingProfile.json @@ -50,7 +50,9 @@ ], "invoiceDay": 5, "invoiceEmailOptIn": true, - "poNumber": "ABC12345" + "poNumber": "ABC12345", + "status": "Active", + "spendingLimit": "Off" } } } diff --git a/specification/billing/resource-manager/readme.cli.md b/specification/billing/resource-manager/readme.cli.md new file mode 100644 index 000000000000..c13b35b5db95 --- /dev/null +++ b/specification/billing/resource-manager/readme.cli.md @@ -0,0 +1,33 @@ + +# Az.Aks +This directory contains the Cli common model for the Aks service. + +> Metadata +``` yaml +# Migrated from Powershell's readme +title: Billing + +cli: + cli-directive: + - select: 'property' + where: + objectSchema: 'billingProfileCreationRequest' + property: 'poNumber' + set: + name: 'purchase_order_number' + - select: 'operationGroup' + where: + operationGroup: 'availableBalances' + set: + name: 'available_credit_balance' + - select: 'property' + where: + objectSchema: 'BillingProfileProperties' + property: 'poNumber' + set: + name: 'purchase_order_number' + - select: 'operationGroup' + where: + operationGroup: ^(?!^billingPeriod$)(?!^budget$)(?!^enrollmentAccounts$)(?!^invoices$)(?!^marketplace$)(?!^priceSheet$)(?!^reservationDetail$)(?!^reservationSummary$)(?!^usageAggregate$)(?!^usageDetail$).*$ + hidden: true +``` diff --git a/specification/blockchain/resource-manager/readme.cli.md b/specification/blockchain/resource-manager/readme.cli.md new file mode 100644 index 000000000000..643f6a056659 --- /dev/null +++ b/specification/blockchain/resource-manager/readme.cli.md @@ -0,0 +1,46 @@ + +# Dns +This directory contains the Cli common model for the Blockchain service. + +> Metadata + +``` yaml +# Migrated from Powershell's readme +directive: + - from: swagger-document + where: $.paths..operationId + transform: return $.replace(/ListRegenerateApiKeys$/, "RegenerateApiKeys") + - from: swagger-document + where: $ + transform: return $.replace(/locationName/, "location") + +cli: + cli-directive: + - select: 'operationGroup' + where: + operationGroup: 'operations' + hidden: true + - select: 'operationGroup' + where: + operationGroup: 'locations' + name: 'consortium' + - select: 'operation' + where: + operationGroup: 'locations' + operation: 'listConsortiums' + name: 'list' + - select: 'operationGroup' + where: + operationGroup: 'blockchainMemberOperationResults' + hidden: true + - select: 'operation' + where: + operationGroup: 'blockchainMembers' + operation: '(create|update)' + hidden: true + - select: 'operation' + where: + operationGroup: 'transactionNodes' + operation: '(create|update)' + hidden: true +``` \ No newline at end of file diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/assignmentOperation.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/assignmentOperation.json index d3a6e4459e9d..00f0d16659ee 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/assignmentOperation.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/assignmentOperation.json @@ -34,16 +34,19 @@ } }, "paths": { - "/{scope}/providers/Microsoft.Blueprint/blueprintAssignments/{assignmentName}/assignmentOperations": { + "/{resourceScope}/providers/Microsoft.Blueprint/blueprintAssignments/{assignmentName}/assignmentOperations": { "get": { "tags": [ "AssignmentOperations" ], "operationId": "AssignmentOperations_List", - "description": "List operations for given blueprint assignment within a subscription.", + "description": "List operations for given blueprint assignment within a subscription or a management group.", "x-ms-examples": { - "Assignment": { - "$ref": "./examples/BlueprintAssignmentOperation_List.json" + "Assignment at subscription scope": { + "$ref": "./examples/subscriptionBPAssignment/BlueprintAssignmentOperation_List.json" + }, + "Assignment at management group scope": { + "$ref": "./examples/managementGroupBPAssignment/BlueprintAssignmentOperation_List.json" } }, "parameters": [ @@ -70,7 +73,7 @@ } } }, - "/{scope}/providers/Microsoft.Blueprint/blueprintAssignments/{assignmentName}/assignmentOperations/{assignmentOperationName}": { + "/{resourceScope}/providers/Microsoft.Blueprint/blueprintAssignments/{assignmentName}/assignmentOperations/{assignmentOperationName}": { "get": { "tags": [ "AssignmentOperations" @@ -78,8 +81,11 @@ "operationId": "AssignmentOperations_Get", "description": "Get a blueprint assignment operation.", "x-ms-examples": { - "Assignment": { - "$ref": "./examples/BlueprintAssignmentOperation_Get.json" + "Assignment at subscription scope": { + "$ref": "./examples/subscriptionBPAssignment/BlueprintAssignmentOperation_Get.json" + }, + "Assignment at management group scope": { + "$ref": "./examples/managementGroupBPAssignment/BlueprintAssignmentOperation_Get.json" } }, "parameters": [ @@ -287,11 +293,11 @@ }, "parameters": { "ScopeParameter": { - "name": "scope", + "name": "resourceScope", "in": "path", "required": true, "type": "string", - "description": "The scope of the resource. Valid scopes are: management group (format: '/providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: '/subscriptions/{subscriptionId}'). For blueprint assignments management group scope is reserved for future use.", + "description": "The scope of the resource. Valid scopes are: management group (format: '/providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: '/subscriptions/{subscriptionId}').", "x-ms-parameter-location": "method", "x-ms-skip-url-encoding": true }, diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/blueprintAssignment.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/blueprintAssignment.json index 39bcf17a36cd..1d3bca28c7a1 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/blueprintAssignment.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/blueprintAssignment.json @@ -34,7 +34,7 @@ } }, "paths": { - "/{scope}/providers/Microsoft.Blueprint/blueprintAssignments/{assignmentName}": { + "/{resourceScope}/providers/Microsoft.Blueprint/blueprintAssignments/{assignmentName}": { "put": { "tags": [ "Assignment" @@ -42,11 +42,17 @@ "operationId": "Assignments_CreateOrUpdate", "description": "Create or update a blueprint assignment.", "x-ms-examples": { - "Assignment with system-assigned managed identity": { - "$ref": "./examples/BlueprintAssignment_Create_SystemAssignedMSI.json" + "Assignment with system-assigned managed identity at subscription scope": { + "$ref": "./examples/subscriptionBPAssignment/BlueprintAssignment_Create_SystemAssignedMSI.json" }, - "Assignment with user-assigned managed identity": { - "$ref": "./examples/BlueprintAssignment_Create_UserAssignedMSI.json" + "Assignment with user-assigned managed identity at subscription scope": { + "$ref": "./examples/subscriptionBPAssignment/BlueprintAssignment_Create_UserAssignedMSI.json" + }, + "Assignment with system-assigned managed identity at management group scope": { + "$ref": "./examples/managementGroupBPAssignment/BlueprintAssignment_Create_SystemAssignedMSI.json" + }, + "Assignment with user-assigned managed identity at management group scope": { + "$ref": "./examples/managementGroupBPAssignment/BlueprintAssignment_Create_UserAssignedMSI.json" } }, "parameters": [ @@ -85,8 +91,11 @@ "operationId": "Assignments_Get", "description": "Get a blueprint assignment.", "x-ms-examples": { - "Assignment": { - "$ref": "./examples/BlueprintAssignment_Get.json" + "Assignment at subscription scope": { + "$ref": "./examples/subscriptionBPAssignment/BlueprintAssignment_Get.json" + }, + "Assignment at management group scope": { + "$ref": "./examples/managementGroupBPAssignment/BlueprintAssignment_Get.json" } }, "parameters": [ @@ -116,8 +125,11 @@ "operationId": "Assignments_Delete", "description": "Delete a blueprint assignment.", "x-ms-examples": { - "Assignment_Delete": { - "$ref": "./examples/BlueprintAssignment_Delete.json" + "Assignment_Delete at subscription scope": { + "$ref": "./examples/subscriptionBPAssignment/BlueprintAssignment_Delete.json" + }, + "Assignment_Delete at management group scope": { + "$ref": "./examples/managementGroupBPAssignment/BlueprintAssignment_Delete.json" } }, "parameters": [ @@ -144,13 +156,16 @@ } } }, - "/{scope}/providers/Microsoft.Blueprint/blueprintAssignments/{assignmentName}/WhoIsBlueprint": { + "/{resourceScope}/providers/Microsoft.Blueprint/blueprintAssignments/{assignmentName}/WhoIsBlueprint": { "post": { "operationId": "Assignments_WhoIsBlueprint", "description": "Get Blueprints service SPN objectId", "x-ms-examples": { - "WhoIsBlueprint_Action": { - "$ref": "./examples/WhoIsBlueprint_Action.json" + "WhoIsBlueprint_Action at subscription scope": { + "$ref": "./examples/subscriptionBPAssignment/WhoIsBlueprint_Action.json" + }, + "WhoIsBlueprint_Action at management group scope": { + "$ref": "./examples/managementGroupBPAssignment/WhoIsBlueprint_Action.json" } }, "parameters": [ @@ -174,16 +189,19 @@ } } }, - "/{scope}/providers/Microsoft.Blueprint/blueprintAssignments": { + "/{resourceScope}/providers/Microsoft.Blueprint/blueprintAssignments": { "get": { "tags": [ "Assignment" ], "operationId": "Assignments_List", - "description": "List blueprint assignments within a subscription.", + "description": "List blueprint assignments within a subscription or a management group.", "x-ms-examples": { - "Assignment": { - "$ref": "./examples/BlueprintAssignment_List.json" + "Assignment at subscription scope": { + "$ref": "./examples/subscriptionBPAssignment/BlueprintAssignment_List.json" + }, + "Assignment at management group scope": { + "$ref": "./examples/managementGroupBPAssignment/BlueprintAssignment_List.json" } }, "parameters": [ @@ -363,13 +381,24 @@ "type": "string", "description": "ID of the published version of a blueprint definition." }, + "scope": { + "type": "string", + "description": "The target subscription scope of the blueprint assignment (format: '/subscriptions/{subscriptionId}'). For management group level assignments, the property is required." + }, "parameters": { - "$ref": "#/definitions/ParameterValueCollection", - "description": "Blueprint assignment parameter values." + "type": "object", + "description": "Blueprint assignment parameter values.", + "additionalProperties": { + "description": "Key/Value pair of parameter fulfillment.", + "$ref": "#/definitions/ParameterValue" + } }, "resourceGroups": { - "$ref": "#/definitions/ResourceGroupValueCollection", - "description": "Names and locations of resource group placeholders." + "description": "Names and locations of resource group placeholders.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/ResourceGroupValue" + } }, "status": { "description": "Status of blueprint assignment. This field is readonly.", @@ -412,23 +441,16 @@ "resourceGroups" ] }, - "ParameterValueCollection": { - "description": "A dictionary for parameters and their corresponding values.", - "type": "object", - "properties": {}, - "additionalProperties": { - "description": "Key/Value pair of parameter fulfillment.", - "$ref": "#/definitions/ParameterValue" - } - }, "ParameterValue": { "description": "Value for the specified parameter. Can be either 'value' or 'reference' but not both.", "type": "object", "properties": { "value": { - "description": "Parameter value as value type." + "type": "object", + "description": "Parameter value. Any valid JSON value is allowed including objects, arrays, strings, numbers and booleans." }, "reference": { + "type": "object", "description": "Parameter value as reference type.", "$ref": "#/definitions/SecretValueReference" } @@ -469,14 +491,6 @@ "id" ] }, - "ResourceGroupValueCollection": { - "description": "A dictionary which maps resource group placeholders to the resource groups which will be created.", - "type": "object", - "properties": {}, - "additionalProperties": { - "$ref": "#/definitions/ResourceGroupValue" - } - }, "ResourceGroupValue": { "description": "Represents an Azure resource group.", "type": "object", @@ -584,11 +598,11 @@ }, "parameters": { "ScopeParameter": { - "name": "scope", + "name": "resourceScope", "in": "path", "required": true, "type": "string", - "description": "The scope of the resource. Valid scopes are: management group (format: '/providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: '/subscriptions/{subscriptionId}'). For blueprint assignments management group scope is reserved for future use.", + "description": "The scope of the resource. Valid scopes are: management group (format: '/providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: '/subscriptions/{subscriptionId}').", "x-ms-parameter-location": "method", "x-ms-skip-url-encoding": true }, diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/blueprintDefinition.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/blueprintDefinition.json index 8af0348e7a91..d74c57d42361 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/blueprintDefinition.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/blueprintDefinition.json @@ -34,7 +34,7 @@ } }, "paths": { - "/{scope}/providers/Microsoft.Blueprint/blueprints/{blueprintName}": { + "/{resourceScope}/providers/Microsoft.Blueprint/blueprints/{blueprintName}": { "put": { "tags": [ "Blueprint" @@ -153,7 +153,7 @@ } } }, - "/{scope}/providers/Microsoft.Blueprint/blueprints": { + "/{resourceScope}/providers/Microsoft.Blueprint/blueprints": { "get": { "tags": [ "Blueprint" @@ -189,7 +189,7 @@ } } }, - "/{scope}/providers/Microsoft.Blueprint/blueprints/{blueprintName}/artifacts/{artifactName}": { + "/{resourceScope}/providers/Microsoft.Blueprint/blueprints/{blueprintName}/artifacts/{artifactName}": { "put": { "tags": [ "Artifact" @@ -350,7 +350,7 @@ } } }, - "/{scope}/providers/Microsoft.Blueprint/blueprints/{blueprintName}/artifacts": { + "/{resourceScope}/providers/Microsoft.Blueprint/blueprints/{blueprintName}/artifacts": { "get": { "tags": [ "Artifact" @@ -389,7 +389,7 @@ } } }, - "/{scope}/providers/Microsoft.Blueprint/blueprints/{blueprintName}/versions/{versionId}": { + "/{resourceScope}/providers/Microsoft.Blueprint/blueprints/{blueprintName}/versions/{versionId}": { "put": { "tags": [ "PublishedBlueprint" @@ -514,7 +514,7 @@ } } }, - "/{scope}/providers/Microsoft.Blueprint/blueprints/{blueprintName}/versions": { + "/{resourceScope}/providers/Microsoft.Blueprint/blueprints/{blueprintName}/versions": { "get": { "tags": [ "PublishedBlueprint" @@ -553,7 +553,7 @@ } } }, - "/{scope}/providers/Microsoft.Blueprint/blueprints/{blueprintName}/versions/{versionId}/artifacts/{artifactName}": { + "/{resourceScope}/providers/Microsoft.Blueprint/blueprints/{blueprintName}/versions/{versionId}/artifacts/{artifactName}": { "get": { "tags": [ "PublishedArtifact" @@ -607,7 +607,7 @@ } } }, - "/{scope}/providers/Microsoft.Blueprint/blueprints/{blueprintName}/versions/{versionId}/artifacts": { + "/{resourceScope}/providers/Microsoft.Blueprint/blueprints/{blueprintName}/versions/{versionId}/artifacts": { "get": { "tags": [ "PublishedArtifact" @@ -851,11 +851,19 @@ }, "parameters": { "description": "Parameters required by this blueprint definition.", - "$ref": "#/definitions/ParameterDefinitionCollection" + "type": "object", + "additionalProperties": { + "description": "Named collection of parameter metadata.", + "$ref": "#/definitions/ParameterDefinition" + } }, "resourceGroups": { "description": "Resource group placeholders defined by this blueprint definition.", - "$ref": "#/definitions/ResourceGroupDefinitionCollection" + "type": "object", + "additionalProperties": { + "description": "Named collection for resourceGroupDefinition.", + "$ref": "#/definitions/ResourceGroupDefinition" + } } }, "allOf": [ @@ -931,8 +939,12 @@ "description": "If applicable, the name of the resource group placeholder to which the Resource Manager template blueprint artifact will be deployed." }, "parameters": { + "type": "object", "description": "Resource Manager template blueprint artifact parameter values.", - "$ref": "#/definitions/ParameterValueCollection" + "additionalProperties": { + "description": "Key/Value pair of parameter fulfillment.", + "$ref": "#/definitions/ParameterValue" + } } }, "allOf": [ @@ -1026,8 +1038,12 @@ "description": "Azure resource ID of the policy definition." }, "parameters": { + "type": "object", "description": "Parameter values for the policy definition.", - "$ref": "#/definitions/ParameterValueCollection" + "additionalProperties": { + "description": "Key/Value pair of parameter fulfillment.", + "$ref": "#/definitions/ParameterValue" + } }, "resourceGroup": { "type": "string", @@ -1067,23 +1083,16 @@ "properties" ] }, - "ParameterValueCollection": { - "description": "A dictionary for parameters and their corresponding values.", - "type": "object", - "properties": {}, - "additionalProperties": { - "description": "Key/Value pair of parameter fulfillment.", - "$ref": "#/definitions/ParameterValue" - } - }, "ParameterValue": { "description": "Value for the specified parameter. Can be either 'value' or 'reference' but not both.", "type": "object", "properties": { "value": { - "description": "Parameter value as value type." + "type": "object", + "description": "Parameter value. Any valid JSON value is allowed including objects, arrays, strings, numbers and booleans." }, "reference": { + "type": "object", "description": "Parameter value as reference type.", "$ref": "#/definitions/SecretValueReference" } @@ -1124,15 +1133,6 @@ "id" ] }, - "ParameterDefinitionCollection": { - "description": "A dictionary hold parameter name and its metadata.", - "type": "object", - "properties": {}, - "additionalProperties": { - "description": "Named collection of parameter metadata.", - "$ref": "#/definitions/ParameterDefinition" - } - }, "ParameterDefinition": { "description": "Represent a parameter with constrains and metadata.", "type": "object", @@ -1174,15 +1174,6 @@ "type" ] }, - "ResourceGroupDefinitionCollection": { - "description": "A dictionary which maps resource group placeholders to the resource groups which will be created.", - "type": "object", - "properties": {}, - "additionalProperties": { - "description": "Named collection for resourceGroupDefinition.", - "$ref": "#/definitions/ResourceGroupDefinition" - } - }, "ResourceGroupDefinition": { "description": "Represents an Azure resource group in a blueprint definition.", "type": "object", @@ -1213,18 +1204,13 @@ }, "tags": { "description": "Tags to be assigned to this resource group.", - "$ref": "#/definitions/ResourceGroupTagCollection" + "type": "object", + "additionalProperties": { + "type": "string" + } } } }, - "ResourceGroupTagCollection": { - "description": "A dictionary of resource group tag values.", - "type": "object", - "properties": {}, - "additionalProperties": { - "type": "string" - } - }, "ParameterDefinitionMetadata": { "type": "object", "description": "User-friendly properties for this parameter.", @@ -1246,30 +1232,6 @@ } } }, - "ResourceGroupValueCollection": { - "description": "A dictionary which maps resource group placeholders to the resource groups which will be created.", - "type": "object", - "properties": {}, - "additionalProperties": { - "$ref": "#/definitions/ResourceGroupValue" - } - }, - "ResourceGroupValue": { - "description": "Represents an Azure resource group.", - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "Name of the resource group.", - "minLength": 1, - "maxLength": 90 - }, - "location": { - "type": "string", - "description": "Location of the resource group." - } - } - }, "AzureResourceBase": { "description": "Common properties for all Azure resources.", "type": "object", @@ -1345,11 +1307,11 @@ }, "parameters": { "ScopeParameter": { - "name": "scope", + "name": "resourceScope", "in": "path", "required": true, "type": "string", - "description": "The scope of the resource. Valid scopes are: management group (format: '/providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: '/subscriptions/{subscriptionId}'). For blueprint assignments management group scope is reserved for future use.", + "description": "The scope of the resource. Valid scopes are: management group (format: '/providers/Microsoft.Management/managementGroups/{managementGroup}'), subscription (format: '/subscriptions/{subscriptionId}').", "x-ms-parameter-location": "method", "x-ms-skip-url-encoding": true }, diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/BlueprintAssignmentOperation_Get.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/BlueprintAssignmentOperation_Get.json deleted file mode 100644 index cb42f431c849..000000000000 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/BlueprintAssignmentOperation_Get.json +++ /dev/null @@ -1,49 +0,0 @@ -{ - "parameters": { - "api-version": "2018-11-01-preview", - "scope": "subscriptions/00000000-0000-0000-0000-000000000000", - "assignmentName": "assignSimpleBlueprint", - "assignmentOperationName": "fb5d4dcb-7ce2-4087-ba7a-459aa74e5e0f" - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.blueprint/blueprintAssignments/assignSimpleBlueprint/assignmentOperations/fb5d4dcb-7ce2-4087-ba7a-459aa74e5e0f", - "type": "microsoft.blueprint/blueprintAssignments/operations", - "name": "fb5d4dcb-7ce2-4087-ba7a-459aa74e5e0f", - "properties": { - "blueprintVersion": "v20181101", - "assignmentState": "succeed", - "timeCreated": "2018-11-13T15:19:45-08:00", - "timeStarted": "2018-11-13T15:21:49-08:00", - "timeFinished": "2018-11-13T15:26:02-08:00", - "deployments": [ - { - "kind": "azureResource", - "action": "put", - "jobState": "succeeded", - "requestUri": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.deployments/deployments/48432786-2f1b-4925-8032-a5d57bcb5b6e", - "result": { - "resources": [ - { - "id": "blabla", - "name": "foobar", - "type": "foo/bar" - } - ] - }, - "history": [ - { - "error": { - "code": "dummy", - "message": "dummy" - } - } - ] - } - ] - } - } - } - } -} diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/BlueprintAssignmentOperation_List.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/BlueprintAssignmentOperation_List.json deleted file mode 100644 index a3d4fb4b30ee..000000000000 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/BlueprintAssignmentOperation_List.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "parameters": { - "api-version": "2018-11-01-preview", - "scope": "subscriptions/00000000-0000-0000-0000-000000000000", - "assignmentName": "assignSimpleBlueprint" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.blueprint/blueprintAssignments/assignSimpleBlueprint/assignmentOperations/fb5d4dcb-7ce2-4087-ba7a-459aa74e5e0f", - "type": "microsoft.blueprint/blueprintAssignments/operations", - "name": "fb5d4dcb-7ce2-4087-ba7a-459aa74e5e0f", - "properties": { - "blueprintVersion": "v20181101", - "assignmentState": "succeed", - "timeCreated": "2018-11-13T15:19:45-08:00", - "timeStarted": "2018-11-13T15:21:49-08:00", - "timeFinished": "2018-11-13T15:26:02-08:00", - "deployments": [ - { - "kind": "azureResource", - "action": "put", - "jobState": "succeeded", - "requestUri": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.deployments/deployments/48432786-2f1b-4925-8032-a5d57bcb5b6e", - "result": { - "resources": [ - { - "id": "blabla", - "name": "foobar", - "type": "foo/bar" - } - ] - }, - "history": [ - { - "error": { - "code": "dummy", - "message": "dummy" - } - } - ] - } - ] - } - } - ], - "nextLink": null - } - } - } -} diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/BlueprintAssignment_Create_SystemAssignedMSI.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/BlueprintAssignment_Create_SystemAssignedMSI.json deleted file mode 100644 index 2dc11e18a338..000000000000 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/BlueprintAssignment_Create_SystemAssignedMSI.json +++ /dev/null @@ -1,77 +0,0 @@ -{ - "parameters": { - "api-version": "2017-11-11-preview", - "scope": "subscriptions/00000000-0000-0000-0000-000000000000", - "assignmentName": "assignSimpleBlueprint", - "assignment": { - "identity": { - "type": "SystemAssigned" - }, - "location": "eastus", - "properties": { - "description": "enforce pre-defined simpleBlueprint to this XXXXXXXX subscription.", - "blueprintId": "/providers/Microsoft.Management/managementGroups/ContosoOnlineGroup/providers/Microsoft.Blueprint/blueprints/simpleBlueprint", - "parameters": { - "storageAccountType": { - "value": "Standard_LRS" - }, - "costCenter": { - "value": "Contoso/Online/Shopping/Production" - }, - "owners": { - "value": [ - "johnDoe@contoso.com", - "johnsteam@contoso.com" - ] - } - }, - "resourceGroups": { - "storageRG": { - "name": "defaultRG", - "location": "eastus" - } - } - } - } - }, - "responses": { - "201": { - "body": { - "identity": { - "type": "SystemAssigned", - "tenantId": "00000000-0000-0000-0000-000000000000", - "principalId": "00000000-0000-0000-0000-000000000000" - }, - "location": "eastus", - "properties": { - "description": "enforce pre-defined simpleBlueprint to this XXXXXXXX subscription.", - "provisioningState": "creating", - "blueprintId": "/providers/Microsoft.Management/managementGroups/ContosoOnlineGroup/providers/Microsoft.Blueprint/blueprints/simpleBlueprint", - "parameters": { - "storageAccountType": { - "value": "Standard_LRS" - }, - "costCenter": { - "value": "Contoso/Online/Shopping/Production" - }, - "owners": { - "value": [ - "johnDoe@contoso.com", - "johnsteam@contoso.com" - ] - } - }, - "resourceGroups": { - "storageRG": { - "name": "defaultRG", - "location": "eastus" - } - } - }, - "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Blueprint/blueprintAssignments/assignSimpleBlueprint", - "type": "Microsoft.Blueprint/Assignment", - "name": "assignSimpleBlueprint" - } - } - } -} diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/BlueprintAssignment_Create_UserAssignedMSI.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/BlueprintAssignment_Create_UserAssignedMSI.json deleted file mode 100644 index 6497fe67f172..000000000000 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/BlueprintAssignment_Create_UserAssignedMSI.json +++ /dev/null @@ -1,85 +0,0 @@ -{ - "parameters": { - "api-version": "2017-11-11-preview", - "scope": "subscriptions/00000000-0000-0000-0000-000000000000", - "assignmentName": "assignSimpleBlueprint", - "assignment": { - "identity": { - "type": "UserAssigned", - "userAssignedIdentities": { - "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso-resource-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/contoso-identity": {} - } - }, - "location": "eastus", - "properties": { - "description": "enforce pre-defined simpleBlueprint to this XXXXXXXX subscription.", - "blueprintId": "/providers/Microsoft.Management/managementGroups/ContosoOnlineGroup/providers/Microsoft.Blueprint/blueprints/simpleBlueprint", - "parameters": { - "storageAccountType": { - "value": "Standard_LRS" - }, - "costCenter": { - "value": "Contoso/Online/Shopping/Production" - }, - "owners": { - "value": [ - "johnDoe@contoso.com", - "johnsteam@contoso.com" - ] - } - }, - "resourceGroups": { - "storageRG": { - "name": "defaultRG", - "location": "eastus" - } - } - } - } - }, - "responses": { - "201": { - "body": { - "identity": { - "type": "UserAssigned", - "tenantId": "00000000-0000-0000-0000-000000000000", - "userAssignedIdentities": { - "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso-resource-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/contoso-identity": { - "principalId": "00000000-0000-0000-0000-000000000000", - "clientId": "00000000-0000-0000-0000-000000000000" - } - } - }, - "location": "eastus", - "properties": { - "description": "enforce pre-defined simpleBlueprint to this XXXXXXXX subscription.", - "provisioningState": "creating", - "blueprintId": "/providers/Microsoft.Management/managementGroups/ContosoOnlineGroup/providers/Microsoft.Blueprint/blueprints/simpleBlueprint", - "parameters": { - "storageAccountType": { - "value": "Standard_LRS" - }, - "costCenter": { - "value": "Contoso/Online/Shopping/Production" - }, - "owners": { - "value": [ - "johnDoe@contoso.com", - "johnsteam@contoso.com" - ] - } - }, - "resourceGroups": { - "storageRG": { - "name": "defaultRG", - "location": "eastus" - } - } - }, - "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Blueprint/blueprintAssignments/assignSimpleBlueprint", - "type": "Microsoft.Blueprint/Assignment", - "name": "assignSimpleBlueprint" - } - } - } -} diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/BlueprintAssignment_Delete.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/BlueprintAssignment_Delete.json deleted file mode 100644 index 568e545f415e..000000000000 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/BlueprintAssignment_Delete.json +++ /dev/null @@ -1,48 +0,0 @@ -{ - "parameters": { - "api-version": "2017-11-11-preview", - "scope": "subscriptions/00000000-0000-0000-0000-000000000000", - "assignmentName": "assignSimpleBlueprint" - }, - "responses": { - "202": { - "body": { - "identity": { - "type": "SystemAssigned", - "tenantId": "00000000-0000-0000-0000-000000000000", - "principalId": "00000000-0000-0000-0000-000000000000" - }, - "location": "eastus", - "properties": { - "description": "enforce pre-defined simpleBlueprint to this XXXXXXXX subscription.", - "provisioningState": "deleting", - "blueprintId": "/providers/Microsoft.Management/managementGroups/ContosoOnlineGroup/providers/Microsoft.Blueprint/blueprints/simpleBlueprint", - "parameters": { - "storageAccountType": { - "value": "Standard_LRS" - }, - "costCenter": { - "value": "Contoso/Online/Shopping/Production" - }, - "owners": { - "value": [ - "johnDoe@contoso.com", - "johnsteam@contoso.com" - ] - } - }, - "resourceGroups": { - "storageRG": { - "name": "defaultRG", - "location": "eastus" - } - } - }, - "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Blueprint/blueprintAssignments/assignSimpleBlueprint", - "type": "Microsoft.Blueprint/Assignment", - "name": "assignSimpleBlueprint" - } - }, - "204": {} - } -} diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/BlueprintAssignment_Get.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/BlueprintAssignment_Get.json deleted file mode 100644 index ef3250634460..000000000000 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/BlueprintAssignment_Get.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "parameters": { - "api-version": "2017-11-11-preview", - "scope": "subscriptions/00000000-0000-0000-0000-000000000000", - "assignmentName": "assignSimpleBlueprint" - }, - "responses": { - "200": { - "body": { - "identity": { - "type": "SystemAssigned", - "tenantId": "00000000-0000-0000-0000-000000000000", - "principalId": "00000000-0000-0000-0000-000000000000" - }, - "location": "eastus", - "properties": { - "description": "enforce pre-defined simpleBlueprint to this XXXXXXXX subscription.", - "provisioningState": "succeed", - "blueprintId": "/providers/Microsoft.Management/managementGroups/ContosoOnlineGroup/providers/Microsoft.Blueprint/blueprints/simpleBlueprint", - "parameters": { - "storageAccountType": { - "value": "Standard_LRS" - }, - "costCenter": { - "value": "Contoso/Online/Shopping/Production" - }, - "owners": { - "value": [ - "johnDoe@contoso.com", - "johnsteam@contoso.com" - ] - } - }, - "resourceGroups": { - "storageRG": { - "name": "defaultRG", - "location": "eastus" - } - } - }, - "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Blueprint/blueprintAssignments/assignSimpleBlueprint", - "type": "Microsoft.Blueprint/Assignment", - "name": "assignSimpleBlueprint" - } - } - } -} diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/BlueprintAssignment_List.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/BlueprintAssignment_List.json deleted file mode 100644 index 81fe7ebf605d..000000000000 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/BlueprintAssignment_List.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "parameters": { - "api-version": "2017-11-11-preview", - "scope": "subscriptions/00000000-0000-0000-0000-000000000000" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "identity": { - "type": "SystemAssigned", - "tenantId": "00000000-0000-0000-0000-000000000000", - "principalId": "00000000-0000-0000-0000-000000000000" - }, - "location": "eastus", - "properties": { - "description": "enforce pre-defined simpleBlueprint to this XXXXXXXX subscription.", - "provisioningState": "failed", - "blueprintId": "/providers/Microsoft.Management/managementGroups/ContosoOnlineGroup/providers/Microsoft.Blueprint/blueprints/simpleBlueprint", - "parameters": { - "storageAccountType": { - "value": "Standard_LRS" - }, - "costCenter": { - "value": "Contoso/Online/Shopping/Production" - }, - "owners": { - "value": [ - "johnDoe@contoso.com", - "johnsteam@contoso.com" - ] - } - }, - "resourceGroups": { - "storageRG": { - "name": "defaultRG", - "location": "eastus" - } - } - }, - "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Blueprint/blueprintAssignments/assignSimpleBlueprint", - "type": "Microsoft.Blueprint/Assignment", - "name": "assignSimpleBlueprint" - } - ] - } - } - } -} diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/ResourceGroupWithTags.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/ResourceGroupWithTags.json index e4043485859d..6a66670f1d3f 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/ResourceGroupWithTags.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/ResourceGroupWithTags.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "providers/Microsoft.Management/managementGroups/{ManagementGroupId}", + "resourceScope": "providers/Microsoft.Management/managementGroups/{ManagementGroupId}", "blueprintName": "simpleBlueprint", "blueprint": { "properties": { diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/WhoIsBlueprint_Action.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/WhoIsBlueprint_Action.json deleted file mode 100644 index fd2e25a7f01b..000000000000 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/WhoIsBlueprint_Action.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "parameters": { - "api-version": "2018-11-01-preview", - "scope": "subscriptions/00000000-0000-0000-0000-000000000000", - "assignmentName": "assignSimpleBlueprint" - }, - "responses": { - "200": { - "body": { - "objectId": "00000000-1111-0000-1111-000000000000" - } - } - } -} diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPAssignment/BlueprintAssignmentOperation_Get.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPAssignment/BlueprintAssignmentOperation_Get.json new file mode 100644 index 000000000000..ead06427ed8c --- /dev/null +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPAssignment/BlueprintAssignmentOperation_Get.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2018-11-01-preview", + "resourceScope": "managementGroups/ContosoOnlineGroup", + "assignmentName": "assignSimpleBlueprint", + "assignmentOperationName": "fb5d4dcb-7ce2-4087-ba7a-459aa74e5e0f" + }, + "responses": { + "200": { + "body": { + "id": "/managementGroups/ContosoOnlineGroup/providers/microsoft.blueprint/blueprintAssignments/assignSimpleBlueprint/assignmentOperations/fb5d4dcb-7ce2-4087-ba7a-459aa74e5e0f", + "type": "microsoft.blueprint/blueprintAssignments/operations", + "name": "fb5d4dcb-7ce2-4087-ba7a-459aa74e5e0f", + "properties": { + "blueprintVersion": "v20181101", + "assignmentState": "succeed", + "timeCreated": "2018-11-13T15:19:45-08:00", + "timeStarted": "2018-11-13T15:21:49-08:00", + "timeFinished": "2018-11-13T15:26:02-08:00", + "deployments": [ + { + "kind": "azureResource", + "action": "put", + "jobState": "succeeded", + "requestUri": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.deployments/deployments/48432786-2f1b-4925-8032-a5d57bcb5b6e", + "result": { + "resources": [ + { + "id": "blabla", + "name": "foobar", + "type": "foo/bar" + } + ] + }, + "history": [ + { + "error": { + "code": "dummy", + "message": "dummy" + } + } + ] + } + ] + } + } + } + } +} diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPAssignment/BlueprintAssignmentOperation_List.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPAssignment/BlueprintAssignmentOperation_List.json new file mode 100644 index 000000000000..2e847b1cb263 --- /dev/null +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPAssignment/BlueprintAssignmentOperation_List.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2018-11-01-preview", + "resourceScope": "managementGroups/ContosoOnlineGroup", + "assignmentName": "assignSimpleBlueprint" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/managementGroups/ContosoOnlineGroup/providers/microsoft.blueprint/blueprintAssignments/assignSimpleBlueprint/assignmentOperations/fb5d4dcb-7ce2-4087-ba7a-459aa74e5e0f", + "type": "microsoft.blueprint/blueprintAssignments/operations", + "name": "fb5d4dcb-7ce2-4087-ba7a-459aa74e5e0f", + "properties": { + "blueprintVersion": "v20181101", + "assignmentState": "succeed", + "timeCreated": "2018-11-13T15:19:45-08:00", + "timeStarted": "2018-11-13T15:21:49-08:00", + "timeFinished": "2018-11-13T15:26:02-08:00", + "deployments": [ + { + "kind": "azureResource", + "action": "put", + "jobState": "succeeded", + "requestUri": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.deployments/deployments/48432786-2f1b-4925-8032-a5d57bcb5b6e", + "result": { + "resources": [ + { + "id": "blabla", + "name": "foobar", + "type": "foo/bar" + } + ] + }, + "history": [ + { + "error": { + "code": "dummy", + "message": "dummy" + } + } + ] + } + ] + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPAssignment/BlueprintAssignment_Create_SystemAssignedMSI.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPAssignment/BlueprintAssignment_Create_SystemAssignedMSI.json new file mode 100644 index 000000000000..a43ae7b04b6b --- /dev/null +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPAssignment/BlueprintAssignment_Create_SystemAssignedMSI.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "api-version": "2018-11-01-preview", + "resourceScope": "managementGroups/ContosoOnlineGroup", + "assignmentName": "assignSimpleBlueprint", + "assignment": { + "identity": { + "type": "SystemAssigned" + }, + "location": "eastus", + "properties": { + "description": "enforce pre-defined simpleBlueprint to this XXXXXXXX subscription.", + "blueprintId": "/providers/Microsoft.Management/managementGroups/ContosoOnlineGroup/providers/Microsoft.Blueprint/blueprints/simpleBlueprint", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "parameters": { + "storageAccountType": { + "value": "Standard_LRS" + }, + "costCenter": { + "value": "Contoso/Online/Shopping/Production" + }, + "owners": { + "value": [ + "johnDoe@contoso.com", + "johnsteam@contoso.com" + ] + } + }, + "resourceGroups": { + "storageRG": { + "name": "defaultRG", + "location": "eastus" + } + } + } + } + }, + "responses": { + "201": { + "body": { + "identity": { + "type": "SystemAssigned", + "tenantId": "00000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + }, + "location": "eastus", + "properties": { + "description": "enforce pre-defined simpleBlueprint to this XXXXXXXX subscription.", + "provisioningState": "creating", + "blueprintId": "/providers/Microsoft.Management/managementGroups/ContosoOnlineGroup/providers/Microsoft.Blueprint/blueprints/simpleBlueprint", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "parameters": { + "storageAccountType": { + "value": "Standard_LRS" + }, + "costCenter": { + "value": "Contoso/Online/Shopping/Production" + }, + "owners": { + "value": [ + "johnDoe@contoso.com", + "johnsteam@contoso.com" + ] + } + }, + "resourceGroups": { + "storageRG": { + "name": "defaultRG", + "location": "eastus" + } + } + }, + "id": "/managementGroups/ContosoOnlineGroup/providers/Microsoft.Blueprint/blueprintAssignments/assignSimpleBlueprint", + "type": "Microsoft.Blueprint/Assignment", + "name": "assignSimpleBlueprint" + } + } + } +} diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPAssignment/BlueprintAssignment_Create_UserAssignedMSI.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPAssignment/BlueprintAssignment_Create_UserAssignedMSI.json new file mode 100644 index 000000000000..5ce21b7b7d01 --- /dev/null +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPAssignment/BlueprintAssignment_Create_UserAssignedMSI.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "api-version": "2018-11-01-preview", + "resourceScope": "managementGroups/ContosoOnlineGroup", + "assignmentName": "assignSimpleBlueprint", + "assignment": { + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso-resource-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/contoso-identity": {} + } + }, + "location": "eastus", + "properties": { + "description": "enforce pre-defined simpleBlueprint to this XXXXXXXX subscription.", + "blueprintId": "/providers/Microsoft.Management/managementGroups/ContosoOnlineGroup/providers/Microsoft.Blueprint/blueprints/simpleBlueprint", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "parameters": { + "storageAccountType": { + "value": "Standard_LRS" + }, + "costCenter": { + "value": "Contoso/Online/Shopping/Production" + }, + "owners": { + "value": [ + "johnDoe@contoso.com", + "johnsteam@contoso.com" + ] + } + }, + "resourceGroups": { + "storageRG": { + "name": "defaultRG", + "location": "eastus" + } + } + } + } + }, + "responses": { + "201": { + "body": { + "identity": { + "type": "UserAssigned", + "tenantId": "00000000-0000-0000-0000-000000000000", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso-resource-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/contoso-identity": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + } + } + }, + "location": "eastus", + "properties": { + "description": "enforce pre-defined simpleBlueprint to this XXXXXXXX subscription.", + "provisioningState": "creating", + "blueprintId": "/providers/Microsoft.Management/managementGroups/ContosoOnlineGroup/providers/Microsoft.Blueprint/blueprints/simpleBlueprint", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "parameters": { + "storageAccountType": { + "value": "Standard_LRS" + }, + "costCenter": { + "value": "Contoso/Online/Shopping/Production" + }, + "owners": { + "value": [ + "johnDoe@contoso.com", + "johnsteam@contoso.com" + ] + } + }, + "resourceGroups": { + "storageRG": { + "name": "defaultRG", + "location": "eastus" + } + } + }, + "id": "/managementGroups/ContosoOnlineGroup/providers/Microsoft.Blueprint/blueprintAssignments/assignSimpleBlueprint", + "type": "Microsoft.Blueprint/Assignment", + "name": "assignSimpleBlueprint" + } + } + } +} diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPAssignment/BlueprintAssignment_Delete.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPAssignment/BlueprintAssignment_Delete.json new file mode 100644 index 000000000000..10535f1b5ac8 --- /dev/null +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPAssignment/BlueprintAssignment_Delete.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2018-11-01-preview", + "resourceScope": "managementGroups/ContosoOnlineGroup", + "assignmentName": "assignSimpleBlueprint" + }, + "responses": { + "202": { + "body": { + "identity": { + "type": "SystemAssigned", + "tenantId": "00000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + }, + "location": "eastus", + "properties": { + "description": "enforce pre-defined simpleBlueprint to this XXXXXXXX subscription.", + "provisioningState": "deleting", + "blueprintId": "/providers/Microsoft.Management/managementGroups/ContosoOnlineGroup/providers/Microsoft.Blueprint/blueprints/simpleBlueprint", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "parameters": { + "storageAccountType": { + "value": "Standard_LRS" + }, + "costCenter": { + "value": "Contoso/Online/Shopping/Production" + }, + "owners": { + "value": [ + "johnDoe@contoso.com", + "johnsteam@contoso.com" + ] + } + }, + "resourceGroups": { + "storageRG": { + "name": "defaultRG", + "location": "eastus" + } + } + }, + "id": "/managementGroups/ContosoOnlineGroup/providers/Microsoft.Blueprint/blueprintAssignments/assignSimpleBlueprint", + "type": "Microsoft.Blueprint/Assignment", + "name": "assignSimpleBlueprint" + } + }, + "204": {} + } +} diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPAssignment/BlueprintAssignment_Get.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPAssignment/BlueprintAssignment_Get.json new file mode 100644 index 000000000000..bd3fa69159d2 --- /dev/null +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPAssignment/BlueprintAssignment_Get.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2018-11-01-preview", + "resourceScope": "managementGroups/ContosoOnlineGroup", + "assignmentName": "assignSimpleBlueprint" + }, + "responses": { + "200": { + "body": { + "identity": { + "type": "SystemAssigned", + "tenantId": "00000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + }, + "location": "eastus", + "properties": { + "description": "enforce pre-defined simpleBlueprint to this XXXXXXXX subscription.", + "provisioningState": "succeed", + "blueprintId": "/providers/Microsoft.Management/managementGroups/ContosoOnlineGroup/providers/Microsoft.Blueprint/blueprints/simpleBlueprint", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "parameters": { + "storageAccountType": { + "value": "Standard_LRS" + }, + "costCenter": { + "value": "Contoso/Online/Shopping/Production" + }, + "owners": { + "value": [ + "johnDoe@contoso.com", + "johnsteam@contoso.com" + ] + } + }, + "resourceGroups": { + "storageRG": { + "name": "defaultRG", + "location": "eastus" + } + } + }, + "id": "/managementGroups/ContosoOnlineGroup/providers/Microsoft.Blueprint/blueprintAssignments/assignSimpleBlueprint", + "type": "Microsoft.Blueprint/Assignment", + "name": "assignSimpleBlueprint" + } + } + } +} diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPAssignment/BlueprintAssignment_List.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPAssignment/BlueprintAssignment_List.json new file mode 100644 index 000000000000..098db5f8a6b7 --- /dev/null +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPAssignment/BlueprintAssignment_List.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2018-11-01-preview", + "resourceScope": "managementGroups/ContosoOnlineGroup" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "identity": { + "type": "SystemAssigned", + "tenantId": "00000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + }, + "location": "eastus", + "properties": { + "description": "enforce pre-defined simpleBlueprint to this XXXXXXXX subscription.", + "provisioningState": "failed", + "blueprintId": "/providers/Microsoft.Management/managementGroups/ContosoOnlineGroup/providers/Microsoft.Blueprint/blueprints/simpleBlueprint", + "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "parameters": { + "storageAccountType": { + "value": "Standard_LRS" + }, + "costCenter": { + "value": "Contoso/Online/Shopping/Production" + }, + "owners": { + "value": [ + "johnDoe@contoso.com", + "johnsteam@contoso.com" + ] + } + }, + "resourceGroups": { + "storageRG": { + "name": "defaultRG", + "location": "eastus" + } + } + }, + "id": "/managementGroups/ContosoOnlineGroup/providers/Microsoft.Blueprint/blueprintAssignments/assignSimpleBlueprint", + "type": "Microsoft.Blueprint/Assignment", + "name": "assignSimpleBlueprint" + } + ] + } + } + } +} diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPAssignment/WhoIsBlueprint_Action.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPAssignment/WhoIsBlueprint_Action.json new file mode 100644 index 000000000000..4142681dfb60 --- /dev/null +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPAssignment/WhoIsBlueprint_Action.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2018-11-01-preview", + "resourceScope": "managementGroups/ContosoOnlineGroup", + "assignmentName": "assignSimpleBlueprint" + }, + "responses": { + "200": { + "body": { + "objectId": "00000000-1111-0000-1111-000000000000" + } + } + } +} diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/ARMTemplateArtifact_Create.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/ARMTemplateArtifact_Create.json index 26802617e3df..6ae3955636d2 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/ARMTemplateArtifact_Create.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/ARMTemplateArtifact_Create.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", + "resourceScope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", "blueprintName": "simpleBlueprint", "artifactName": "storageTemplate", "artifact": { diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/ARMTemplateArtifact_Delete.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/ARMTemplateArtifact_Delete.json index affb61dea0e6..a7453c8e84b4 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/ARMTemplateArtifact_Delete.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/ARMTemplateArtifact_Delete.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", + "resourceScope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", "blueprintName": "simpleBlueprint", "artifactName": "storageTemplate" }, diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/ARMTemplateArtifact_Get.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/ARMTemplateArtifact_Get.json index 4dec5a77699b..a43f05f51d26 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/ARMTemplateArtifact_Get.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/ARMTemplateArtifact_Get.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", + "resourceScope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", "blueprintName": "simpleBlueprint", "artifactName": "storageTemplate" }, diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/Artifact_List.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/Artifact_List.json index 35f1b9582e31..f903f2512298 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/Artifact_List.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/Artifact_List.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", + "resourceScope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", "blueprintName": "simpleBlueprint" }, "responses": { diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/Blueprint_Create.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/Blueprint_Create.json index 31864627c4b9..0f01d15c2b40 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/Blueprint_Create.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/Blueprint_Create.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", + "resourceScope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", "blueprintName": "simpleBlueprint", "blueprint": { "properties": { diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/Blueprint_Delete.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/Blueprint_Delete.json index e8e55d681595..fd0b18749c3c 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/Blueprint_Delete.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/Blueprint_Delete.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", + "resourceScope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", "blueprintName": "simpleBlueprint" }, "responses": { diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/Blueprint_Get.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/Blueprint_Get.json index 49737370ad56..9cbcac2a8308 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/Blueprint_Get.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/Blueprint_Get.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", + "resourceScope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", "blueprintName": "simpleBlueprint" }, "responses": { diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/Blueprint_List.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/Blueprint_List.json index 949b534293d8..433b9e215e65 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/Blueprint_List.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/Blueprint_List.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup" + "resourceScope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup" }, "responses": { "200": { diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/PolicyAssignmentArtifact_Create.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/PolicyAssignmentArtifact_Create.json index 055905986a49..1d7aa26d5628 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/PolicyAssignmentArtifact_Create.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/PolicyAssignmentArtifact_Create.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", + "resourceScope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", "blueprintName": "simpleBlueprint", "artifactName": "costCenterPolicy", "artifact": { diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/PolicyAssignmentArtifact_Delete.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/PolicyAssignmentArtifact_Delete.json index 489ae3b6820e..992189d2d2f1 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/PolicyAssignmentArtifact_Delete.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/PolicyAssignmentArtifact_Delete.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", + "resourceScope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", "blueprintName": "simpleBlueprint", "artifactName": "costCenterPolicy" }, diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/PolicyAssignmentArtifact_Get.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/PolicyAssignmentArtifact_Get.json index 5d38282dab76..d68b013b2354 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/PolicyAssignmentArtifact_Get.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/PolicyAssignmentArtifact_Get.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", + "resourceScope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", "blueprintName": "simpleBlueprint", "artifactName": "costCenterPolicy" }, diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/RoleAssignmentArtifact_Create.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/RoleAssignmentArtifact_Create.json index 4c3cac4dda7e..ae29bf1731e7 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/RoleAssignmentArtifact_Create.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/RoleAssignmentArtifact_Create.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", + "resourceScope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", "blueprintName": "simpleBlueprint", "artifactName": "ownerAssignment", "artifact": { diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/RoleAssignmentArtifact_Delete.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/RoleAssignmentArtifact_Delete.json index d82956d613cc..18331d4f4fed 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/RoleAssignmentArtifact_Delete.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/RoleAssignmentArtifact_Delete.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", + "resourceScope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", "blueprintName": "simpleBlueprint", "artifactName": "ownerAssignment" }, diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/RoleAssignmentArtifact_Get.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/RoleAssignmentArtifact_Get.json index 0640a05f2e85..d8407244b34d 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/RoleAssignmentArtifact_Get.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/RoleAssignmentArtifact_Get.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", + "resourceScope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", "blueprintName": "simpleBlueprint", "artifactName": "ownerAssignment" }, diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/SealedARMTemplateArtifact_Get.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/SealedARMTemplateArtifact_Get.json index 6ed509d52cef..c1b55bb09fff 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/SealedARMTemplateArtifact_Get.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/SealedARMTemplateArtifact_Get.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", + "resourceScope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", "blueprintName": "simpleBlueprint", "versionId": "V2", "artifactName": "storageTemplate" diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/SealedArtifact_List.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/SealedArtifact_List.json index b53282c2fcc9..3b3c1379d472 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/SealedArtifact_List.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/SealedArtifact_List.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", + "resourceScope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", "blueprintName": "simpleBlueprint", "versionId": "V2" }, diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/SealedBlueprint_Delete.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/SealedBlueprint_Delete.json index 83fdd19d88aa..6ee7b7a39da3 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/SealedBlueprint_Delete.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/SealedBlueprint_Delete.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", + "resourceScope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", "blueprintName": "simpleBlueprint", "versionId": "v2" }, diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/SealedBlueprint_Get.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/SealedBlueprint_Get.json index 11293243cc88..dd61ea73d39a 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/SealedBlueprint_Get.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/SealedBlueprint_Get.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", + "resourceScope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", "blueprintName": "simpleBlueprint", "versionId": "v2" }, diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/SealedBlueprint_List.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/SealedBlueprint_List.json index 79526cf10857..8275f0057373 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/SealedBlueprint_List.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/SealedBlueprint_List.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", + "resourceScope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", "blueprintName": "simpleBlueprint" }, "responses": { diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/SealedBlueprint_Publish.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/SealedBlueprint_Publish.json index c8412c2bef01..2e48cc352024 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/SealedBlueprint_Publish.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/SealedBlueprint_Publish.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", + "resourceScope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", "blueprintName": "simpleBlueprint", "versionId": "v2" }, diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/SealedPolicyAssignmentArtifact_Get.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/SealedPolicyAssignmentArtifact_Get.json index 8c0cca672857..fec30371d025 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/SealedPolicyAssignmentArtifact_Get.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/SealedPolicyAssignmentArtifact_Get.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", + "resourceScope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", "blueprintName": "simpleBlueprint", "versionId": "V2", "artifactName": "costCenterPolicy" diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/SealedRoleAssignmentArtifact_Get.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/SealedRoleAssignmentArtifact_Get.json index 767e270fa3a5..b0aca913ad04 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/SealedRoleAssignmentArtifact_Get.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/managementGroupBPDef/SealedRoleAssignmentArtifact_Get.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", + "resourceScope": "providers/Microsoft.Management/managementGroups/ContosoOnlineGroup", "blueprintName": "simpleBlueprint", "versionId": "V2", "artifactName": "ownerAssignment" diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPAssignment/BlueprintAssignmentOperation_Get.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPAssignment/BlueprintAssignmentOperation_Get.json new file mode 100644 index 000000000000..37da87966f1a --- /dev/null +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPAssignment/BlueprintAssignmentOperation_Get.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2018-11-01-preview", + "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000", + "assignmentName": "assignSimpleBlueprint", + "assignmentOperationName": "fb5d4dcb-7ce2-4087-ba7a-459aa74e5e0f" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.blueprint/blueprintAssignments/assignSimpleBlueprint/assignmentOperations/fb5d4dcb-7ce2-4087-ba7a-459aa74e5e0f", + "type": "microsoft.blueprint/blueprintAssignments/operations", + "name": "fb5d4dcb-7ce2-4087-ba7a-459aa74e5e0f", + "properties": { + "blueprintVersion": "v20181101", + "assignmentState": "succeed", + "timeCreated": "2018-11-13T15:19:45-08:00", + "timeStarted": "2018-11-13T15:21:49-08:00", + "timeFinished": "2018-11-13T15:26:02-08:00", + "deployments": [ + { + "kind": "azureResource", + "action": "put", + "jobState": "succeeded", + "requestUri": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.deployments/deployments/48432786-2f1b-4925-8032-a5d57bcb5b6e", + "result": { + "resources": [ + { + "id": "blabla", + "name": "foobar", + "type": "foo/bar" + } + ] + }, + "history": [ + { + "error": { + "code": "dummy", + "message": "dummy" + } + } + ] + } + ] + } + } + } + } +} diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPAssignment/BlueprintAssignmentOperation_List.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPAssignment/BlueprintAssignmentOperation_List.json new file mode 100644 index 000000000000..30d1971efdbe --- /dev/null +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPAssignment/BlueprintAssignmentOperation_List.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2018-11-01-preview", + "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000", + "assignmentName": "assignSimpleBlueprint" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.blueprint/blueprintAssignments/assignSimpleBlueprint/assignmentOperations/fb5d4dcb-7ce2-4087-ba7a-459aa74e5e0f", + "type": "microsoft.blueprint/blueprintAssignments/operations", + "name": "fb5d4dcb-7ce2-4087-ba7a-459aa74e5e0f", + "properties": { + "blueprintVersion": "v20181101", + "assignmentState": "succeed", + "timeCreated": "2018-11-13T15:19:45-08:00", + "timeStarted": "2018-11-13T15:21:49-08:00", + "timeFinished": "2018-11-13T15:26:02-08:00", + "deployments": [ + { + "kind": "azureResource", + "action": "put", + "jobState": "succeeded", + "requestUri": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.deployments/deployments/48432786-2f1b-4925-8032-a5d57bcb5b6e", + "result": { + "resources": [ + { + "id": "blabla", + "name": "foobar", + "type": "foo/bar" + } + ] + }, + "history": [ + { + "error": { + "code": "dummy", + "message": "dummy" + } + } + ] + } + ] + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPAssignment/BlueprintAssignment_Create_SystemAssignedMSI.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPAssignment/BlueprintAssignment_Create_SystemAssignedMSI.json new file mode 100644 index 000000000000..3cab0e5eb718 --- /dev/null +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPAssignment/BlueprintAssignment_Create_SystemAssignedMSI.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2018-11-01-preview", + "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000", + "assignmentName": "assignSimpleBlueprint", + "assignment": { + "identity": { + "type": "SystemAssigned" + }, + "location": "eastus", + "properties": { + "description": "enforce pre-defined simpleBlueprint to this XXXXXXXX subscription.", + "blueprintId": "/providers/Microsoft.Management/managementGroups/ContosoOnlineGroup/providers/Microsoft.Blueprint/blueprints/simpleBlueprint", + "parameters": { + "storageAccountType": { + "value": "Standard_LRS" + }, + "costCenter": { + "value": "Contoso/Online/Shopping/Production" + }, + "owners": { + "value": [ + "johnDoe@contoso.com", + "johnsteam@contoso.com" + ] + } + }, + "resourceGroups": { + "storageRG": { + "name": "defaultRG", + "location": "eastus" + } + } + } + } + }, + "responses": { + "201": { + "body": { + "identity": { + "type": "SystemAssigned", + "tenantId": "00000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + }, + "location": "eastus", + "properties": { + "description": "enforce pre-defined simpleBlueprint to this XXXXXXXX subscription.", + "provisioningState": "creating", + "blueprintId": "/providers/Microsoft.Management/managementGroups/ContosoOnlineGroup/providers/Microsoft.Blueprint/blueprints/simpleBlueprint", + "parameters": { + "storageAccountType": { + "value": "Standard_LRS" + }, + "costCenter": { + "value": "Contoso/Online/Shopping/Production" + }, + "owners": { + "value": [ + "johnDoe@contoso.com", + "johnsteam@contoso.com" + ] + } + }, + "resourceGroups": { + "storageRG": { + "name": "defaultRG", + "location": "eastus" + } + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Blueprint/blueprintAssignments/assignSimpleBlueprint", + "type": "Microsoft.Blueprint/Assignment", + "name": "assignSimpleBlueprint" + } + } + } +} diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPAssignment/BlueprintAssignment_Create_UserAssignedMSI.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPAssignment/BlueprintAssignment_Create_UserAssignedMSI.json new file mode 100644 index 000000000000..0c3261762339 --- /dev/null +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPAssignment/BlueprintAssignment_Create_UserAssignedMSI.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2018-11-01-preview", + "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000", + "assignmentName": "assignSimpleBlueprint", + "assignment": { + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso-resource-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/contoso-identity": {} + } + }, + "location": "eastus", + "properties": { + "description": "enforce pre-defined simpleBlueprint to this XXXXXXXX subscription.", + "blueprintId": "/providers/Microsoft.Management/managementGroups/ContosoOnlineGroup/providers/Microsoft.Blueprint/blueprints/simpleBlueprint", + "parameters": { + "storageAccountType": { + "value": "Standard_LRS" + }, + "costCenter": { + "value": "Contoso/Online/Shopping/Production" + }, + "owners": { + "value": [ + "johnDoe@contoso.com", + "johnsteam@contoso.com" + ] + } + }, + "resourceGroups": { + "storageRG": { + "name": "defaultRG", + "location": "eastus" + } + } + } + } + }, + "responses": { + "201": { + "body": { + "identity": { + "type": "UserAssigned", + "tenantId": "00000000-0000-0000-0000-000000000000", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso-resource-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/contoso-identity": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + } + } + }, + "location": "eastus", + "properties": { + "description": "enforce pre-defined simpleBlueprint to this XXXXXXXX subscription.", + "provisioningState": "creating", + "blueprintId": "/providers/Microsoft.Management/managementGroups/ContosoOnlineGroup/providers/Microsoft.Blueprint/blueprints/simpleBlueprint", + "parameters": { + "storageAccountType": { + "value": "Standard_LRS" + }, + "costCenter": { + "value": "Contoso/Online/Shopping/Production" + }, + "owners": { + "value": [ + "johnDoe@contoso.com", + "johnsteam@contoso.com" + ] + } + }, + "resourceGroups": { + "storageRG": { + "name": "defaultRG", + "location": "eastus" + } + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Blueprint/blueprintAssignments/assignSimpleBlueprint", + "type": "Microsoft.Blueprint/Assignment", + "name": "assignSimpleBlueprint" + } + } + } +} diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPAssignment/BlueprintAssignment_Delete.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPAssignment/BlueprintAssignment_Delete.json new file mode 100644 index 000000000000..7455f94cfeee --- /dev/null +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPAssignment/BlueprintAssignment_Delete.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2018-11-01-preview", + "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000", + "assignmentName": "assignSimpleBlueprint" + }, + "responses": { + "202": { + "body": { + "identity": { + "type": "SystemAssigned", + "tenantId": "00000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + }, + "location": "eastus", + "properties": { + "description": "enforce pre-defined simpleBlueprint to this XXXXXXXX subscription.", + "provisioningState": "deleting", + "blueprintId": "/providers/Microsoft.Management/managementGroups/ContosoOnlineGroup/providers/Microsoft.Blueprint/blueprints/simpleBlueprint", + "parameters": { + "storageAccountType": { + "value": "Standard_LRS" + }, + "costCenter": { + "value": "Contoso/Online/Shopping/Production" + }, + "owners": { + "value": [ + "johnDoe@contoso.com", + "johnsteam@contoso.com" + ] + } + }, + "resourceGroups": { + "storageRG": { + "name": "defaultRG", + "location": "eastus" + } + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Blueprint/blueprintAssignments/assignSimpleBlueprint", + "type": "Microsoft.Blueprint/Assignment", + "name": "assignSimpleBlueprint" + } + }, + "204": {} + } +} diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPAssignment/BlueprintAssignment_Get.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPAssignment/BlueprintAssignment_Get.json new file mode 100644 index 000000000000..edae526196e5 --- /dev/null +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPAssignment/BlueprintAssignment_Get.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2018-11-01-preview", + "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000", + "assignmentName": "assignSimpleBlueprint" + }, + "responses": { + "200": { + "body": { + "identity": { + "type": "SystemAssigned", + "tenantId": "00000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + }, + "location": "eastus", + "properties": { + "description": "enforce pre-defined simpleBlueprint to this XXXXXXXX subscription.", + "provisioningState": "succeed", + "blueprintId": "/providers/Microsoft.Management/managementGroups/ContosoOnlineGroup/providers/Microsoft.Blueprint/blueprints/simpleBlueprint", + "parameters": { + "storageAccountType": { + "value": "Standard_LRS" + }, + "costCenter": { + "value": "Contoso/Online/Shopping/Production" + }, + "owners": { + "value": [ + "johnDoe@contoso.com", + "johnsteam@contoso.com" + ] + } + }, + "resourceGroups": { + "storageRG": { + "name": "defaultRG", + "location": "eastus" + } + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Blueprint/blueprintAssignments/assignSimpleBlueprint", + "type": "Microsoft.Blueprint/Assignment", + "name": "assignSimpleBlueprint" + } + } + } +} diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPAssignment/BlueprintAssignment_List.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPAssignment/BlueprintAssignment_List.json new file mode 100644 index 000000000000..60dda3e41ade --- /dev/null +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPAssignment/BlueprintAssignment_List.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2018-11-01-preview", + "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "identity": { + "type": "SystemAssigned", + "tenantId": "00000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + }, + "location": "eastus", + "properties": { + "description": "enforce pre-defined simpleBlueprint to this XXXXXXXX subscription.", + "provisioningState": "failed", + "blueprintId": "/providers/Microsoft.Management/managementGroups/ContosoOnlineGroup/providers/Microsoft.Blueprint/blueprints/simpleBlueprint", + "parameters": { + "storageAccountType": { + "value": "Standard_LRS" + }, + "costCenter": { + "value": "Contoso/Online/Shopping/Production" + }, + "owners": { + "value": [ + "johnDoe@contoso.com", + "johnsteam@contoso.com" + ] + } + }, + "resourceGroups": { + "storageRG": { + "name": "defaultRG", + "location": "eastus" + } + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Blueprint/blueprintAssignments/assignSimpleBlueprint", + "type": "Microsoft.Blueprint/Assignment", + "name": "assignSimpleBlueprint" + } + ] + } + } + } +} diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPAssignment/WhoIsBlueprint_Action.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPAssignment/WhoIsBlueprint_Action.json new file mode 100644 index 000000000000..736645a3f992 --- /dev/null +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPAssignment/WhoIsBlueprint_Action.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2018-11-01-preview", + "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000", + "assignmentName": "assignSimpleBlueprint" + }, + "responses": { + "200": { + "body": { + "objectId": "00000000-1111-0000-1111-000000000000" + } + } + } +} diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/ARMTemplateArtifact_Create.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/ARMTemplateArtifact_Create.json index def3d466c6ae..a70eddd1b0ed 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/ARMTemplateArtifact_Create.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/ARMTemplateArtifact_Create.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000", "blueprintName": "simpleBlueprint", "artifactName": "storageTemplate", "artifact": { diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/ARMTemplateArtifact_Delete.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/ARMTemplateArtifact_Delete.json index 3eefc0672afb..7f6444916afb 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/ARMTemplateArtifact_Delete.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/ARMTemplateArtifact_Delete.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000", "blueprintName": "simpleBlueprint", "artifactName": "storageTemplate" }, diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/ARMTemplateArtifact_Get.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/ARMTemplateArtifact_Get.json index ff695f3f6e27..614f85c70363 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/ARMTemplateArtifact_Get.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/ARMTemplateArtifact_Get.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000", "blueprintName": "simpleBlueprint", "artifactName": "storageTemplate" }, diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/Artifact_List.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/Artifact_List.json index 55f9878c3a5b..e2efebd1b6f0 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/Artifact_List.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/Artifact_List.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000", "blueprintName": "simpleBlueprint" }, "responses": { diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/Blueprint_Create.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/Blueprint_Create.json index 7a542fd89bb1..9fd9ab2198fc 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/Blueprint_Create.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/Blueprint_Create.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000", "blueprintName": "simpleBlueprint", "blueprint": { "properties": { diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/Blueprint_Delete.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/Blueprint_Delete.json index 98f304e7d4af..2db90d6b5e0d 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/Blueprint_Delete.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/Blueprint_Delete.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000", "blueprintName": "simpleBlueprint" }, "responses": { diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/Blueprint_Get.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/Blueprint_Get.json index 50ad976f4c97..03c4da74ee8a 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/Blueprint_Get.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/Blueprint_Get.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000", "blueprintName": "simpleBlueprint" }, "responses": { diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/Blueprint_List.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/Blueprint_List.json index 224c5bec5995..233664e6e450 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/Blueprint_List.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/Blueprint_List.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "subscriptions/00000000-0000-0000-0000-000000000000" + "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000" }, "responses": { "200": { diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/PolicyAssignmentArtifact_Create.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/PolicyAssignmentArtifact_Create.json index a90feb52b569..2e0ad8ca2b3d 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/PolicyAssignmentArtifact_Create.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/PolicyAssignmentArtifact_Create.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000", "blueprintName": "simpleBlueprint", "artifactName": "costCenterPolicy", "artifact": { diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/PolicyAssignmentArtifact_Delete.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/PolicyAssignmentArtifact_Delete.json index 321f8b6effe3..c8de17a53643 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/PolicyAssignmentArtifact_Delete.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/PolicyAssignmentArtifact_Delete.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000", "blueprintName": "simpleBlueprint", "artifactName": "costCenterPolicy" }, diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/PolicyAssignmentArtifact_Get.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/PolicyAssignmentArtifact_Get.json index 0bbc3884b739..b6f5c35f9231 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/PolicyAssignmentArtifact_Get.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/PolicyAssignmentArtifact_Get.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000", "blueprintName": "simpleBlueprint", "artifactName": "costCenterPolicy" }, diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/RoleAssignmentArtifact_Create.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/RoleAssignmentArtifact_Create.json index c77a092f5527..0201c5ffc220 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/RoleAssignmentArtifact_Create.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/RoleAssignmentArtifact_Create.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000", "blueprintName": "simpleBlueprint", "artifactName": "ownerAssignment", "artifact": { diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/RoleAssignmentArtifact_Delete.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/RoleAssignmentArtifact_Delete.json index 6aba11d6ece4..65be040297fb 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/RoleAssignmentArtifact_Delete.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/RoleAssignmentArtifact_Delete.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000", "blueprintName": "simpleBlueprint", "artifactName": "ownerAssignment" }, diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/RoleAssignmentArtifact_Get.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/RoleAssignmentArtifact_Get.json index f0fdb61156cc..aa0f93c47c38 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/RoleAssignmentArtifact_Get.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/RoleAssignmentArtifact_Get.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000", "blueprintName": "simpleBlueprint", "artifactName": "ownerAssignment" }, diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/SealedARMTemplateArtifact_Get.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/SealedARMTemplateArtifact_Get.json index 2777ac4c7eda..eacc67e64a51 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/SealedARMTemplateArtifact_Get.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/SealedARMTemplateArtifact_Get.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000", "blueprintName": "simpleBlueprint", "versionId": "V2", "artifactName": "storageTemplate" diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/SealedArtifact_List.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/SealedArtifact_List.json index bd4173bf98e5..c7e3b4b639fb 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/SealedArtifact_List.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/SealedArtifact_List.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000", "blueprintName": "simpleBlueprint", "versionId": "V2" }, diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/SealedBlueprint_Delete.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/SealedBlueprint_Delete.json index d0f2e039078e..619eda504309 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/SealedBlueprint_Delete.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/SealedBlueprint_Delete.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000", "blueprintName": "simpleBlueprint", "versionId": "v2" }, diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/SealedBlueprint_Get.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/SealedBlueprint_Get.json index e309c8668768..29414d72e4e3 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/SealedBlueprint_Get.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/SealedBlueprint_Get.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000", "blueprintName": "simpleBlueprint", "versionId": "v2" }, diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/SealedBlueprint_List.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/SealedBlueprint_List.json index b5919a43c693..a88812897f51 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/SealedBlueprint_List.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/SealedBlueprint_List.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000", "blueprintName": "simpleBlueprint" }, "responses": { diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/SealedBlueprint_Publish.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/SealedBlueprint_Publish.json index bb6bc58acf87..acfc587cb525 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/SealedBlueprint_Publish.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/SealedBlueprint_Publish.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000", "blueprintName": "simpleBlueprint", "versionId": "v2" }, diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/SealedPolicyAssignmentArtifact_Get.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/SealedPolicyAssignmentArtifact_Get.json index 4858a53e6511..7df81bb3f1ed 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/SealedPolicyAssignmentArtifact_Get.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/SealedPolicyAssignmentArtifact_Get.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000", "blueprintName": "simpleBlueprint", "versionId": "V2", "artifactName": "costCenterPolicy" diff --git a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/SealedRoleAssignmentArtifact_Get.json b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/SealedRoleAssignmentArtifact_Get.json index a769b3c81d24..18a2caa9fa4f 100644 --- a/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/SealedRoleAssignmentArtifact_Get.json +++ b/specification/blueprint/resource-manager/Microsoft.Blueprint/preview/2018-11-01-preview/examples/subscriptionBPDef/SealedRoleAssignmentArtifact_Get.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2018-11-01-preview", - "scope": "subscriptions/00000000-0000-0000-0000-000000000000", + "resourceScope": "subscriptions/00000000-0000-0000-0000-000000000000", "blueprintName": "simpleBlueprint", "versionId": "V2", "artifactName": "ownerAssignment" diff --git a/specification/blueprint/resource-manager/readme.cli.md b/specification/blueprint/resource-manager/readme.cli.md new file mode 100644 index 000000000000..17bbc2acb6fd --- /dev/null +++ b/specification/blueprint/resource-manager/readme.cli.md @@ -0,0 +1,11 @@ +## CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +cli: + namespace: azure.mgmt.blueprint + flatten-all: true + cmd-override: + "^.*assignment-operation.*$": "-" +``` diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2019-06-15-preview/cdnwebapplicationfirewall.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2019-06-15-preview/cdnwebapplicationfirewall.json index a00cb37d490d..350a0ed69090 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2019-06-15-preview/cdnwebapplicationfirewall.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2019-06-15-preview/cdnwebapplicationfirewall.json @@ -463,10 +463,13 @@ "defaultCustomBlockResponseStatusCode": { "description": "If the action type is block, this field defines the default customer overridable http response status code.", "type": "integer", - "maximum": 599, - "exclusiveMaximum": false, - "minimum": 200, - "exclusiveMinimum": false + "enum": [ + 200, + 403, + 405, + 406, + 429 + ] }, "defaultCustomBlockResponseBody": { "description": "If the action type is block, customer can override the response body. The body must be specified in base64 encoding.", @@ -599,7 +602,7 @@ "type": "string", "enum": [ "RemoteAddr", - "Country", + "SocketAddr", "RequestMethod", "RequestHeader", "RequestUri", @@ -614,7 +617,7 @@ } }, "selector": { - "description": "Selector can used to match a specific key for QueryString, RequestUri, RequestHeaders or RequestBody.", + "description": "Selector can used to match a specific key for QueryString, Cookies, RequestHeader or PostArgs.", "type": "string" }, "operator": { diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2019-06-15-preview/examples/WafListPolicies.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2019-06-15-preview/examples/WafListPolicies.json index 6b5c2b894cd2..f1731a643beb 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2019-06-15-preview/examples/WafListPolicies.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2019-06-15-preview/examples/WafListPolicies.json @@ -27,7 +27,7 @@ "enabledState": "Enabled", "mode": "Prevention", "defaultRedirectUrl": "http://www.bing.com", - "defaultCustomBlockResponseStatusCode": 499, + "defaultCustomBlockResponseStatusCode": 429, "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" }, "rateLimitRules": { @@ -154,7 +154,7 @@ "enabledState": "Enabled", "mode": "Prevention", "defaultRedirectUrl": "http://www.bing.com", - "defaultCustomBlockResponseStatusCode": 499, + "defaultCustomBlockResponseStatusCode": 429, "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" }, "rateLimitRules": { diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2019-06-15-preview/examples/WafPatchPolicy.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2019-06-15-preview/examples/WafPatchPolicy.json index f2511b72fd82..5abe9d3f2477 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2019-06-15-preview/examples/WafPatchPolicy.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2019-06-15-preview/examples/WafPatchPolicy.json @@ -30,7 +30,7 @@ "enabledState": "Enabled", "mode": "Prevention", "defaultRedirectUrl": "http://www.bing.com", - "defaultCustomBlockResponseStatusCode": 499, + "defaultCustomBlockResponseStatusCode": 403, "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" }, "rateLimitRules": { @@ -159,7 +159,7 @@ "enabledState": "Enabled", "mode": "Prevention", "defaultRedirectUrl": "http://www.bing.com", - "defaultCustomBlockResponseStatusCode": 499, + "defaultCustomBlockResponseStatusCode": 403, "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" }, "rateLimitRules": { diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2019-06-15-preview/examples/WafPolicyCreateOrUpdate.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2019-06-15-preview/examples/WafPolicyCreateOrUpdate.json index 3ce2f5a82cac..58e9a8e5629c 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2019-06-15-preview/examples/WafPolicyCreateOrUpdate.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2019-06-15-preview/examples/WafPolicyCreateOrUpdate.json @@ -12,7 +12,7 @@ "properties": { "policySettings": { "defaultRedirectUrl": "http://www.bing.com", - "defaultCustomBlockResponseStatusCode": 499, + "defaultCustomBlockResponseStatusCode": 200, "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" }, "rateLimitRules": { @@ -134,7 +134,7 @@ "enabledState": "Enabled", "mode": "Prevention", "defaultRedirectUrl": "http://www.bing.com", - "defaultCustomBlockResponseStatusCode": 499, + "defaultCustomBlockResponseStatusCode": 200, "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" }, "rateLimitRules": { @@ -263,7 +263,7 @@ "enabledState": "Enabled", "mode": "Prevention", "defaultRedirectUrl": "http://www.bing.com", - "defaultCustomBlockResponseStatusCode": 499, + "defaultCustomBlockResponseStatusCode": 200, "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" }, "rateLimitRules": { @@ -392,7 +392,7 @@ "enabledState": "Enabled", "mode": "Prevention", "defaultRedirectUrl": "http://www.bing.com", - "defaultCustomBlockResponseStatusCode": 499, + "defaultCustomBlockResponseStatusCode": 200, "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" }, "rateLimitRules": { diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2019-06-15-preview/examples/WafPolicyGet.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2019-06-15-preview/examples/WafPolicyGet.json index 3cfd8e73d78c..c168c9bb43af 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2019-06-15-preview/examples/WafPolicyGet.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2019-06-15-preview/examples/WafPolicyGet.json @@ -26,7 +26,7 @@ "enabledState": "Enabled", "mode": "Prevention", "defaultRedirectUrl": "http://www.bing.com", - "defaultCustomBlockResponseStatusCode": 499, + "defaultCustomBlockResponseStatusCode": 429, "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" }, "rateLimitRules": { diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-04-15/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-04-15/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json index 01445743780d..f20809681f57 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-04-15/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-04-15/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json @@ -7,6 +7,7 @@ "endpointName": "endpoint1", "customDomainName": "www-someDomain-net", "customHttpsParameters": { + "minimumTlsVersion": "TLS12", "certificateSource": "AzureKeyVault", "protocolType": "ServerNameIndication", "certificateSourceParameters": { diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-04-15/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-04-15/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json index a2e61e2c7c83..822b94cf1037 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-04-15/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-04-15/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json @@ -7,6 +7,7 @@ "endpointName": "endpoint1", "customDomainName": "www-someDomain-net", "customHttpsParameters": { + "minimumTlsVersion": "TLS12", "certificateSource": "Cdn", "protocolType": "ServerNameIndication", "certificateSourceParameters": { diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/cdn.json new file mode 100644 index 000000000000..e2b319a2e9d7 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/cdn.json @@ -0,0 +1,4605 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-06-15", + "title": "CdnManagementClient", + "description": "Use these APIs to manage Azure CDN resources through the Azure Resource Manager. You must make sure that requests made to these resources are secure." + }, + "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.Cdn/profiles": { + "get": { + "tags": [ + "Profiles" + ], + "description": "Lists all of the CDN profiles within an Azure subscription.", + "operationId": "Profiles_List", + "x-ms-examples": { + "Profiles_List": { + "$ref": "./examples/Profiles_List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ProfileListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles": { + "get": { + "tags": [ + "Profiles" + ], + "description": "Lists all of the CDN profiles within a resource group.", + "operationId": "Profiles_ListByResourceGroup", + "x-ms-examples": { + "Profiles_ListByResourceGroup": { + "$ref": "./examples/Profiles_ListByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ProfileListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}": { + "get": { + "tags": [ + "Profiles" + ], + "description": "Gets a CDN profile with the specified profile name under the specified subscription and resource group.", + "operationId": "Profiles_Get", + "x-ms-examples": { + "Profiles_Get": { + "$ref": "./examples/Profiles_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Profile" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Profiles" + ], + "description": "Creates a new CDN profile with a profile name under the specified subscription and resource group.", + "operationId": "Profiles_Create", + "x-ms-examples": { + "Profiles_Create": { + "$ref": "./examples/Profiles_Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "description": "Profile properties needed to create a new profile.", + "in": "body", + "name": "profile", + "required": true, + "schema": { + "$ref": "#/definitions/Profile" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Profile" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new profile has been created.", + "schema": { + "$ref": "#/definitions/Profile" + } + }, + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Profile" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Profiles" + ], + "description": "Updates an existing CDN profile with the specified profile name under the specified subscription and resource group.", + "operationId": "Profiles_Update", + "x-ms-examples": { + "Profiles_Update": { + "$ref": "./examples/Profiles_Update.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "profileUpdateParameters", + "in": "body", + "description": "Profile properties needed to update an existing profile.", + "required": true, + "schema": { + "$ref": "#/definitions/ProfileUpdateParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Profile" + } + }, + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Profile" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Profiles" + ], + "description": "Deletes an existing CDN profile with the specified parameters. Deleting a profile will result in the deletion of all of the sub-resources including endpoints, origins and custom domains.", + "operationId": "Profiles_Delete", + "x-ms-examples": { + "Profiles_Delete": { + "$ref": "./examples/Profiles_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously." + }, + "204": { + "description": "No Content. The request has been accepted but the profile was not found." + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/generateSsoUri": { + "post": { + "tags": [ + "Profiles" + ], + "description": "Generates a dynamic SSO URI used to sign in to the CDN supplemental portal. Supplemental portal is used to configure advanced feature capabilities that are not yet available in the Azure portal, such as core reports in a standard profile; rules engine, advanced HTTP reports, and real-time stats and alerts in a premium profile. The SSO URI changes approximately every 10 minutes.", + "operationId": "Profiles_GenerateSsoUri", + "x-ms-examples": { + "Profiles_GenerateSsoUri": { + "$ref": "./examples/Profiles_GenerateSsoUri.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/SsoUri" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/getSupportedOptimizationTypes": { + "post": { + "tags": [ + "Profiles" + ], + "description": "Gets the supported optimization types for the current profile. A user can create an endpoint with an optimization type from the listed values.", + "operationId": "Profiles_ListSupportedOptimizationTypes", + "x-ms-examples": { + "Profiles_ListSupportedOptimizationTypes": { + "$ref": "./examples/Profiles_ListSupportedOptimizationTypes.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/SupportedOptimizationTypesListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/checkResourceUsage": { + "post": { + "tags": [ + "Profiles" + ], + "description": "Checks the quota and actual usage of endpoints under the given CDN profile.", + "operationId": "Profiles_ListResourceUsage", + "x-ms-examples": { + "Profiles_ListResourceUsage": { + "$ref": "./examples/Profiles_ListResourceUsage.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ResourceUsageListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints": { + "get": { + "tags": [ + "Endpoints" + ], + "description": "Lists existing CDN endpoints.", + "operationId": "Endpoints_ListByProfile", + "x-ms-examples": { + "Endpoints_ListByProfile": { + "$ref": "./examples/Endpoints_ListByProfile.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/EndpointListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}": { + "get": { + "tags": [ + "Endpoints" + ], + "description": "Gets an existing CDN endpoint with the specified endpoint name under the specified subscription, resource group and profile.", + "operationId": "Endpoints_Get", + "x-ms-examples": { + "Endpoints_Get": { + "$ref": "./examples/Endpoints_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Endpoints" + ], + "description": "Creates a new CDN endpoint with the specified endpoint name under the specified subscription, resource group and profile.", + "operationId": "Endpoints_Create", + "x-ms-examples": { + "Endpoints_Create": { + "$ref": "./examples/Endpoints_Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "endpoint", + "in": "body", + "description": "Endpoint properties", + "required": true, + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new endpoint has been created.", + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Endpoints" + ], + "description": "Updates an existing CDN endpoint with the specified endpoint name under the specified subscription, resource group and profile. Only tags and Origin HostHeader can be updated after creating an endpoint. To update origins, use the Update Origin operation. To update custom domains, use the Update Custom Domain operation.", + "operationId": "Endpoints_Update", + "x-ms-examples": { + "Endpoints_Update": { + "$ref": "./examples/Endpoints_Update.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "endpointUpdateProperties", + "in": "body", + "description": "Endpoint update properties", + "required": true, + "schema": { + "$ref": "#/definitions/EndpointUpdateParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously", + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + "default": { + "description": "CDN error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Endpoints" + ], + "description": "Deletes an existing CDN endpoint with the specified endpoint name under the specified subscription, resource group and profile.", + "operationId": "Endpoints_Delete", + "x-ms-examples": { + "Endpoints_Delete": { + "$ref": "./examples/Endpoints_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "No Content. The request has been accepted but the endpoint was not found." + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/start": { + "post": { + "tags": [ + "Endpoints" + ], + "description": "Starts an existing CDN endpoint that is on a stopped state.", + "operationId": "Endpoints_Start", + "x-ms-examples": { + "Endpoints_Start": { + "$ref": "./examples/Endpoints_Start.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/stop": { + "post": { + "tags": [ + "Endpoints" + ], + "description": "Stops an existing running CDN endpoint.", + "operationId": "Endpoints_Stop", + "x-ms-examples": { + "Endpoints_Stop": { + "$ref": "./examples/Endpoints_Stop.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/purge": { + "post": { + "tags": [ + "Endpoints" + ], + "description": "Removes a content from CDN.", + "operationId": "Endpoints_PurgeContent", + "x-ms-examples": { + "Endpoints_PurgeContent": { + "$ref": "./examples/Endpoints_PurgeContent.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "contentFilePaths", + "in": "body", + "description": "The path to the content to be purged. Path can be a full URL, e.g. '/pictures/city.png' which removes a single file, or a directory with a wildcard, e.g. '/pictures/*' which removes all folders and files in the directory.", + "required": true, + "schema": { + "$ref": "#/definitions/PurgeParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/load": { + "post": { + "tags": [ + "Endpoints" + ], + "description": "Pre-loads a content to CDN. Available for Verizon Profiles.", + "operationId": "Endpoints_LoadContent", + "x-ms-examples": { + "Endpoints_LoadContent": { + "$ref": "./examples/Endpoints_LoadContent.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "contentFilePaths", + "in": "body", + "description": "The path to the content to be loaded. Path should be a full URL, e.g. ‘/pictures/city.png' which loads a single file ", + "required": true, + "schema": { + "$ref": "#/definitions/LoadParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/validateCustomDomain": { + "post": { + "tags": [ + "Endpoints" + ], + "description": "Validates the custom domain mapping to ensure it maps to the correct CDN endpoint in DNS.", + "operationId": "Endpoints_ValidateCustomDomain", + "x-ms-examples": { + "Endpoints_ValidateCustomDomain": { + "$ref": "./examples/Endpoints_ValidateCustomDomain.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "customDomainProperties", + "in": "body", + "description": "Custom domain to be validated.", + "required": true, + "schema": { + "$ref": "#/definitions/ValidateCustomDomainInput" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ValidateCustomDomainOutput" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/checkResourceUsage": { + "post": { + "tags": [ + "Endpoints" + ], + "description": "Checks the quota and usage of geo filters and custom domains under the given endpoint.", + "operationId": "Endpoints_ListResourceUsage", + "x-ms-examples": { + "Endpoints_ListResourceUsage": { + "$ref": "./examples/Endpoints_ListResourceUsage.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ResourceUsageListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/origins": { + "get": { + "tags": [ + "Origins" + ], + "description": "Lists all of the existing origins within an endpoint.", + "operationId": "Origins_ListByEndpoint", + "x-ms-examples": { + "Origins_ListByEndpoint": { + "$ref": "./examples/Origins_ListByEndpoint.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OriginListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/origins/{originName}": { + "get": { + "tags": [ + "Origins" + ], + "description": "Gets an existing origin within an endpoint.", + "operationId": "Origins_Get", + "x-ms-examples": { + "Origins_Get": { + "$ref": "./examples/Origins_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "originName", + "in": "path", + "description": "Name of the origin which is unique within the endpoint.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Origin" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Origins" + ], + "description": "Updates an existing origin within an endpoint.", + "operationId": "Origins_Update", + "x-ms-examples": { + "Origins_Update": { + "$ref": "./examples/Origins_Update.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "originName", + "in": "path", + "description": "Name of the origin which is unique within the endpoint.", + "required": true, + "type": "string" + }, + { + "name": "originUpdateProperties", + "in": "body", + "description": "Origin properties", + "required": true, + "schema": { + "$ref": "#/definitions/OriginUpdateParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Origin" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Origin" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/customDomains": { + "get": { + "tags": [ + "CustomDomains" + ], + "description": "Lists all of the existing custom domains within an endpoint.", + "operationId": "CustomDomains_ListByEndpoint", + "x-ms-examples": { + "CustomDomains_ListByEndpoint": { + "$ref": "./examples/CustomDomains_ListByEndpoint.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CustomDomainListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/customDomains/{customDomainName}": { + "get": { + "tags": [ + "CustomDomains" + ], + "description": "Gets an existing custom domain within an endpoint.", + "operationId": "CustomDomains_Get", + "x-ms-examples": { + "CustomDomains_Get": { + "$ref": "./examples/CustomDomains_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "customDomainName", + "in": "path", + "description": "Name of the custom domain within an endpoint.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CustomDomain" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "CustomDomains" + ], + "description": "Creates a new custom domain within an endpoint.", + "operationId": "CustomDomains_Create", + "x-ms-examples": { + "CustomDomains_Create": { + "$ref": "./examples/CustomDomains_Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "customDomainName", + "in": "path", + "description": "Name of the custom domain within an endpoint.", + "required": true, + "type": "string" + }, + { + "name": "customDomainProperties", + "in": "body", + "description": "Properties required to create a new custom domain.", + "required": true, + "schema": { + "$ref": "#/definitions/CustomDomainParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CustomDomain" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new custom domain has been created.", + "schema": { + "$ref": "#/definitions/CustomDomain" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/CustomDomain" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "CustomDomains" + ], + "description": "Deletes an existing custom domain within an endpoint.", + "operationId": "CustomDomains_Delete", + "x-ms-examples": { + "CustomDomains_Delete": { + "$ref": "./examples/CustomDomains_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "customDomainName", + "in": "path", + "description": "Name of the custom domain within an endpoint.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/CustomDomain" + } + }, + "204": { + "description": "No Content. The request has been accepted but the custom domain was not found" + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/customDomains/{customDomainName}/disableCustomHttps": { + "post": { + "tags": [ + "CustomDomains" + ], + "description": "Disable https delivery of the custom domain.", + "operationId": "CustomDomains_DisableCustomHttps", + "x-ms-examples": { + "CustomDomains_DisableCustomHttps": { + "$ref": "./examples/CustomDomains_DisableCustomHttps.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "customDomainName", + "in": "path", + "description": "Name of the custom domain within an endpoint.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/CustomDomain" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/customDomains/{customDomainName}/enableCustomHttps": { + "post": { + "tags": [ + "CustomDomains" + ], + "description": "Enable https delivery of the custom domain.", + "operationId": "CustomDomains_EnableCustomHttps", + "x-ms-examples": { + "CustomDomains_EnableCustomHttpsUsingYourOwnCertificate": { + "$ref": "./examples/CustomDomains_EnableCustomHttpsUsingBYOC.json" + }, + "CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate": { + "$ref": "./examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "customDomainName", + "in": "path", + "description": "Name of the custom domain within an endpoint.", + "required": true, + "type": "string" + }, + { + "name": "customDomainHttpsParameters", + "in": "body", + "description": "The configuration specifying how to enable HTTPS for the custom domain - using CDN managed certificate or user's own certificate. If not specified, enabling ssl uses CDN managed certificate by default.", + "required": false, + "schema": { + "$ref": "#/definitions/CustomDomainHttpsParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/CustomDomain" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Cdn/checkNameAvailability": { + "post": { + "tags": [ + "CheckNameAvailability" + ], + "description": "Check the availability of a resource name. This is needed for resources where name is globally unique, such as a CDN endpoint.", + "operationId": "CheckNameAvailability", + "x-ms-examples": { + "CheckNameAvailability": { + "$ref": "./examples/CheckNameAvailability.json" + } + }, + "parameters": [ + { + "name": "checkNameAvailabilityInput", + "in": "body", + "description": "Input to check.", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityInput" + } + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityOutput" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Cdn/checkNameAvailability": { + "post": { + "tags": [ + "CheckNameAvailabilityWithSubscription" + ], + "description": "Check the availability of a resource name. This is needed for resources where name is globally unique, such as a CDN endpoint.", + "operationId": "CheckNameAvailabilityWithSubscription", + "x-ms-examples": { + "CheckNameAvailabilityWithSubscription": { + "$ref": "./examples/CheckNameAvailabilityWithSubscription.json" + } + }, + "parameters": [ + { + "name": "checkNameAvailabilityInput", + "in": "body", + "description": "Input to check.", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityInput" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityOutput" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Cdn/validateProbe": { + "post": { + "tags": [ + "ValidateProbe" + ], + "description": "Check if the probe path is a valid path and the file can be accessed. Probe path is the path to a file hosted on the origin server to help accelerate the delivery of dynamic content via the CDN endpoint. This path is relative to the origin path specified in the endpoint configuration.", + "operationId": "ValidateProbe", + "x-ms-examples": { + "ValidateProbe": { + "$ref": "./examples/ValidateProbe.json" + } + }, + "parameters": [ + { + "name": "validateProbeInput", + "in": "body", + "description": "Input to check.", + "required": true, + "schema": { + "$ref": "#/definitions/ValidateProbeInput" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ValidateProbeOutput" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Cdn/checkResourceUsage": { + "post": { + "tags": [ + "CheckResourceUsage" + ], + "description": "Check the quota and actual usage of the CDN profiles under the given subscription.", + "operationId": "ResourceUsage_List", + "x-ms-examples": { + "ResourceUsage_List": { + "$ref": "./examples/ResourceUsage_List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ResourceUsageListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Cdn/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all of the available CDN REST API operations.", + "operationId": "Operations_List", + "x-ms-examples": { + "Operations_List": { + "$ref": "./examples/Operations_List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationsListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Cdn/edgenodes": { + "get": { + "tags": [ + "Edgenodes" + ], + "description": "Edgenodes are the global Point of Presence (POP) locations used to deliver CDN content to end users.", + "operationId": "EdgeNodes_List", + "x-ms-examples": { + "EdgeNodes_List": { + "$ref": "./examples/EdgeNodes_List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/EdgenodeResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "Profile": { + "description": "CDN profile is a logical grouping of endpoints that share the same settings, such as CDN provider and pricing tier.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "properties": { + "sku": { + "description": "The pricing tier (defines a CDN provider, feature list and rate) of the CDN profile.", + "$ref": "#/definitions/Sku" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProfileProperties" + } + }, + "required": [ + "sku" + ] + }, + "ProfileProperties": { + "description": "The JSON object that contains the properties required to create a profile.", + "properties": { + "resourceState": { + "description": "Resource status of the profile.", + "readOnly": true, + "enum": [ + "Creating", + "Active", + "Deleting", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "ProfileResourceState", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "description": "Provisioning status of the profile.", + "type": "string" + } + } + }, + "ProfileListResult": { + "description": "Result of the request to list profiles. It contains a list of profile objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Profile" + }, + "description": "List of CDN profiles within a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of profile objects if there are any." + } + } + }, + "ProfileUpdateParameters": { + "type": "object", + "description": "Properties required to update a profile.", + "properties": { + "tags": { + "description": "Profile tags", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "x-ms-azure-resource": true + }, + "SsoUri": { + "description": "The URI required to login to the supplemental portal from the Azure portal.", + "type": "object", + "properties": { + "ssoUriValue": { + "description": "The URI used to login to the supplemental portal.", + "readOnly": true, + "type": "string" + } + } + }, + "SupportedOptimizationTypesListResult": { + "description": "The result of the GetSupportedOptimizationTypes API", + "type": "object", + "properties": { + "supportedOptimizationTypes": { + "description": "Supported optimization types for a profile.", + "readOnly": true, + "items": { + "$ref": "#/definitions/OptimizationType" + }, + "type": "array" + } + } + }, + "Endpoint": { + "description": "CDN endpoint is the entity within a CDN profile containing configuration information such as origin, protocol, content caching and delivery behavior. The CDN endpoint uses the URL format .azureedge.net.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/EndpointProperties" + } + } + }, + "EndpointProperties": { + "description": "The JSON object that contains the properties required to create an endpoint.", + "required": [ + "origins" + ], + "allOf": [ + { + "$ref": "#/definitions/EndpointPropertiesUpdateParameters" + } + ], + "properties": { + "hostName": { + "description": "The host name of the endpoint structured as {endpointName}.{DNSZone}, e.g. contoso.azureedge.net", + "type": "string", + "readOnly": true + }, + "origins": { + "description": "The source of the content being delivered via CDN.", + "type": "array", + "items": { + "$ref": "#/definitions/DeepCreatedOrigin" + } + }, + "resourceState": { + "description": "Resource status of the endpoint.", + "readOnly": true, + "enum": [ + "Creating", + "Deleting", + "Running", + "Starting", + "Stopped", + "Stopping" + ], + "type": "string", + "x-ms-enum": { + "name": "EndpointResourceState", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "description": "Provisioning status of the endpoint.", + "type": "string" + } + } + }, + "EndpointListResult": { + "description": "Result of the request to list endpoints. It contains a list of endpoint objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Endpoint" + }, + "description": "List of CDN endpoints within a profile" + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of endpoint objects if there is any." + } + } + }, + "EndpointUpdateParameters": { + "type": "object", + "description": "Properties required to create or update an endpoint.", + "properties": { + "tags": { + "description": "Endpoint tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/EndpointPropertiesUpdateParameters" + } + }, + "x-ms-azure-resource": true + }, + "EndpointPropertiesUpdateParameters": { + "description": "The JSON object containing endpoint update parameters.", + "properties": { + "originHostHeader": { + "description": "The host header value sent to the origin with each request. If you leave this blank, the request hostname determines this value. Azure CDN origins, such as Web Apps, Blob Storage, and Cloud Services require this host header value to match the origin hostname by default.", + "type": "string" + }, + "originPath": { + "description": "A directory path on the origin that CDN can use to retrieve content from, e.g. contoso.cloudapp.net/originpath.", + "type": "string" + }, + "contentTypesToCompress": { + "description": "List of content types on which compression applies. The value should be a valid MIME type.", + "type": "array", + "items": { + "type": "string" + } + }, + "isCompressionEnabled": { + "description": "Indicates whether content compression is enabled on CDN. Default value is false. If compression is enabled, content will be served as compressed if user requests for a compressed version. Content won't be compressed on CDN when requested content is smaller than 1 byte or larger than 1 MB.", + "type": "boolean" + }, + "isHttpAllowed": { + "description": "Indicates whether HTTP traffic is allowed on the endpoint. Default value is true. At least one protocol (HTTP or HTTPS) must be allowed.", + "type": "boolean" + }, + "isHttpsAllowed": { + "description": "Indicates whether HTTPS traffic is allowed on the endpoint. Default value is true. At least one protocol (HTTP or HTTPS) must be allowed.", + "type": "boolean" + }, + "queryStringCachingBehavior": { + "description": "Defines how CDN caches requests that include query strings. You can ignore any query strings when caching, bypass caching to prevent requests that contain query strings from being cached, or cache every request with a unique URL.", + "$ref": "#/definitions/QueryStringCachingBehavior" + }, + "optimizationType": { + "description": "Specifies what scenario the customer wants this CDN endpoint to optimize for, e.g. Download, Media services. With this information, CDN can apply scenario driven optimization.", + "$ref": "#/definitions/OptimizationType" + }, + "probePath": { + "description": "Path to a file hosted on the origin which helps accelerate delivery of the dynamic content and calculate the most optimal routes for the CDN. This is relative to the origin path.", + "type": "string" + }, + "geoFilters": { + "description": "List of rules defining the user's geo access within a CDN endpoint. Each geo filter defines an access rule to a specified path or content, e.g. block APAC for path /pictures/", + "type": "array", + "items": { + "$ref": "#/definitions/GeoFilter" + } + }, + "deliveryPolicy": { + "description": "A policy that specifies the delivery rules to be used for an endpoint.", + "type": "object", + "required": [ + "rules" + ], + "properties": { + "description": { + "description": "User-friendly description of the policy.", + "type": "string" + }, + "rules": { + "description": "A list of the delivery rules.", + "type": "array", + "items": { + "$ref": "#/definitions/DeliveryRule" + } + } + } + }, + "webApplicationFirewallPolicyLink": { + "description": "Defines the Web Application Firewall policy for the endpoint (if applicable)", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + } + } + } + } + }, + "DeliveryRule": { + "description": "A rule that specifies a set of actions and conditions", + "type": "object", + "required": [ + "order", + "actions" + ], + "properties": { + "name": { + "description": "Name of the rule", + "type": "string" + }, + "order": { + "description": "The order in which the rules are applied for the endpoint. Possible values {0,1,2,3,………}. A rule with a lesser order will be applied before a rule with a greater order. Rule with order 0 is a special rule. It does not require any condition and actions listed in it will always be applied.", + "type": "integer" + }, + "conditions": { + "description": "A list of conditions that must be matched for the actions to be executed", + "type": "array", + "items": { + "$ref": "#/definitions/DeliveryRuleCondition" + } + }, + "actions": { + "description": "A list of actions that are executed when all the conditions of a rule are satisfied.", + "type": "array", + "items": { + "$ref": "#/definitions/DeliveryRuleAction" + } + } + } + }, + "DeliveryRuleCondition": { + "description": "A condition for the delivery rule.", + "discriminator": "name", + "required": [ + "name" + ], + "properties": { + "name": { + "description": "The name of the condition for the delivery rule.", + "type": "string", + "enum": [ + "RemoteAddress", + "RequestMethod", + "QueryString", + "PostArgs", + "RequestUri", + "RequestHeader", + "RequestBody", + "RequestScheme", + "UrlPath", + "UrlFileExtension", + "UrlFileName", + "HttpVersion", + "Cookies", + "IsDevice" + ], + "x-ms-enum": { + "name": "MatchVariable", + "modelAsString": true + } + } + } + }, + "DeliveryRuleRemoteAddressCondition": { + "description": "Defines the RemoteAddress condition for the delivery rule.", + "x-ms-discriminator-value": "RemoteAddress", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/RemoteAddressMatchConditionParameters" + } + } + }, + "DeliveryRuleRequestMethodCondition": { + "description": "Defines the RequestMethod condition for the delivery rule.", + "x-ms-discriminator-value": "RequestMethod", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/RequestMethodMatchConditionParameters" + } + } + }, + "DeliveryRuleQueryStringCondition": { + "description": "Defines the QueryString condition for the delivery rule.", + "x-ms-discriminator-value": "QueryString", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/QueryStringMatchConditionParameters" + } + } + }, + "DeliveryRulePostArgsCondition": { + "description": "Defines the PostArgs condition for the delivery rule.", + "x-ms-discriminator-value": "PostArgs", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/PostArgsMatchConditionParameters" + } + } + }, + "DeliveryRuleRequestUriCondition": { + "description": "Defines the RequestUri condition for the delivery rule.", + "x-ms-discriminator-value": "RequestUri", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/RequestUriMatchConditionParameters" + } + } + }, + "DeliveryRuleRequestHeaderCondition": { + "description": "Defines the RequestHeader condition for the delivery rule.", + "x-ms-discriminator-value": "RequestHeader", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/RequestHeaderMatchConditionParameters" + } + } + }, + "DeliveryRuleRequestBodyCondition": { + "description": "Defines the RequestBody condition for the delivery rule.", + "x-ms-discriminator-value": "RequestBody", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/RequestBodyMatchConditionParameters" + } + } + }, + "DeliveryRuleRequestSchemeCondition": { + "description": "Defines the RequestScheme condition for the delivery rule.", + "x-ms-discriminator-value": "RequestScheme", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/RequestSchemeMatchConditionParameters" + } + } + }, + "DeliveryRuleUrlPathCondition": { + "description": "Defines the UrlPath condition for the delivery rule.", + "x-ms-discriminator-value": "UrlPath", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/UrlPathMatchConditionParameters" + } + } + }, + "DeliveryRuleUrlFileExtensionCondition": { + "description": "Defines the UrlFileExtension condition for the delivery rule.", + "x-ms-discriminator-value": "UrlFileExtension", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/UrlFileExtensionMatchConditionParameters" + } + } + }, + "DeliveryRuleUrlFileNameCondition": { + "description": "Defines the UrlFileName condition for the delivery rule.", + "x-ms-discriminator-value": "UrlFileName", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/UrlFileNameMatchConditionParameters" + } + } + }, + "DeliveryRuleHttpVersionCondition": { + "description": "Defines the HttpVersion condition for the delivery rule.", + "x-ms-discriminator-value": "HttpVersion", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/HttpVersionMatchConditionParameters" + } + } + }, + "DeliveryRuleCookiesCondition": { + "description": "Defines the Cookies condition for the delivery rule.", + "x-ms-discriminator-value": "Cookies", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/CookiesMatchConditionParameters" + } + } + }, + "DeliveryRuleIsDeviceCondition": { + "description": "Defines the IsDevice condition for the delivery rule.", + "x-ms-discriminator-value": "IsDevice", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/IsDeviceMatchConditionParameters" + } + } + }, + "RemoteAddressMatchConditionParameters": { + "description": "Defines the parameters for RemoteAddress match conditions", + "required": [ + "operator", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleRemoteAddressConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "IPMatch", + "GeoMatch" + ], + "x-ms-enum": { + "name": "RemoteAddressOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "Match values to match against. The operator will apply to each value in here with OR semantics. If any of them match the variable with the given operator this match condition is considered a match.", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "RequestMethodMatchConditionParameters": { + "description": "Defines the parameters for RequestMethod match conditions", + "required": [ + "operator", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleRequestMethodConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Equal" + ], + "x-ms-enum": { + "name": "RequestMethodOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string", + "enum": [ + "GET", + "HEAD", + "POST", + "PUT", + "DELETE", + "OPTIONS", + "TRACE" + ] + } + } + } + }, + "QueryStringMatchConditionParameters": { + "description": "Defines the parameters for QueryString match conditions", + "required": [ + "operator", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleQueryStringConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual" + ], + "x-ms-enum": { + "name": "QueryStringOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "PostArgsMatchConditionParameters": { + "description": "Defines the parameters for PostArgs match conditions", + "required": [ + "operator", + "matchValues", + "selector", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRulePostArgsConditionParameters" + ] + }, + "selector": { + "description": "Name of PostArg to be matched", + "type": "string" + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual" + ], + "x-ms-enum": { + "name": "PostArgsOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "RequestUriMatchConditionParameters": { + "description": "Defines the parameters for RequestUri match conditions", + "required": [ + "operator", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleRequestUriConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual" + ], + "x-ms-enum": { + "name": "RequestUriOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "RequestHeaderMatchConditionParameters": { + "description": "Defines the parameters for RequestHeader match conditions", + "required": [ + "operator", + "matchValues", + "selector", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleRequestHeaderConditionParameters" + ] + }, + "selector": { + "description": "Name of Header to be matched", + "type": "string" + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual" + ], + "x-ms-enum": { + "name": "RequestHeaderOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "RequestBodyMatchConditionParameters": { + "description": "Defines the parameters for RequestBody match conditions", + "required": [ + "operator", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleRequestBodyConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual" + ], + "x-ms-enum": { + "name": "RequestBodyOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "RequestSchemeMatchConditionParameters": { + "description": "Defines the parameters for RequestScheme match conditions ", + "required": [ + "operator", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleRequestSchemeConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Equal" + ] + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string", + "enum": [ + "HTTP", + "HTTPS" + ] + } + } + } + }, + "UrlPathMatchConditionParameters": { + "description": "Defines the parameters for UrlPath match conditions", + "required": [ + "operator", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleUrlPathMatchConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual", + "Wildcard" + ], + "x-ms-enum": { + "name": "UrlPathOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "UrlFileExtensionMatchConditionParameters": { + "description": "Defines the parameters for UrlFileExtension match conditions", + "required": [ + "operator", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleUrlFileExtensionMatchConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual" + ], + "x-ms-enum": { + "name": "UrlFileExtensionOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "UrlFileNameMatchConditionParameters": { + "description": "Defines the parameters for UrlFilename match conditions", + "required": [ + "operator", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleUrlFilenameConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual" + ], + "x-ms-enum": { + "name": "UrlFileNameOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "HttpVersionMatchConditionParameters": { + "description": "Defines the parameters for HttpVersion match conditions", + "required": [ + "operator", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleHttpVersionConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Equal" + ], + "x-ms-enum": { + "name": "HttpVersionOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "CookiesMatchConditionParameters": { + "description": "Defines the parameters for Cookies match conditions", + "required": [ + "operator", + "matchValues", + "selector", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleCookiesConditionParameters" + ] + }, + "selector": { + "description": "Name of Cookies to be matched", + "type": "string" + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual" + ], + "x-ms-enum": { + "name": "CookiesOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "IsDeviceMatchConditionParameters": { + "description": "Defines the parameters for IsDevice match conditions", + "required": [ + "operator", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleIsDeviceConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Equal" + ], + "x-ms-enum": { + "name": "IsDeviceOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string", + "enum": [ + "Mobile", + "Desktop" + ] + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "DeliveryRuleAction": { + "description": "An action for the delivery rule.", + "discriminator": "name", + "required": [ + "name" + ], + "properties": { + "name": { + "description": "The name of the action for the delivery rule.", + "type": "string", + "enum": [ + "CacheExpiration", + "CacheKeyQueryString", + "ModifyRequestHeader", + "ModifyResponseHeader", + "UrlRedirect", + "UrlRewrite" + ], + "x-ms-enum": { + "name": "DeliveryRuleAction", + "modelAsString": true + } + } + } + }, + "UrlRedirectAction": { + "description": "Defines the url redirect action for the delivery rule.", + "x-ms-discriminator-value": "UrlRedirect", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleAction" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the action.", + "$ref": "#/definitions/UrlRedirectActionParameters" + } + } + }, + "UrlRedirectActionParameters": { + "description": "Defines the parameters for the url redirect action.", + "required": [ + "redirectType", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleUrlRedirectActionParameters" + ] + }, + "redirectType": { + "description": "The redirect type the rule will use when redirecting traffic.", + "type": "string", + "enum": [ + "Moved", + "Found", + "TemporaryRedirect", + "PermanentRedirect" + ], + "x-ms-enum": { + "name": "RedirectType", + "modelAsString": true + } + }, + "destinationProtocol": { + "description": "Protocol to use for the redirect. The default value is MatchRequest", + "type": "string", + "enum": [ + "MatchRequest", + "Http", + "Https" + ], + "x-ms-enum": { + "name": "DestinationProtocol", + "modelAsString": true + } + }, + "customPath": { + "description": "The full path to redirect. Path cannot be empty and must start with /. Leave empty to use the incoming path as destination path.", + "type": "string" + }, + "customHostname": { + "description": "Host to redirect. Leave empty to use the incoming host as the destination host.", + "type": "string" + }, + "customQueryString": { + "description": "The set of query strings to be placed in the redirect URL. Setting this value would replace any existing query string; leave empty to preserve the incoming query string. Query string must be in = format. ? and & will be added automatically so do not include them.", + "type": "string" + }, + "customFragment": { + "type": "string", + "description": "Fragment to add to the redirect URL. Fragment is the part of the URL that comes after #. Do not include the #." + } + } + }, + "UrlRewriteAction": { + "description": "Defines the url rewrite action for the delivery rule.", + "x-ms-discriminator-value": "UrlRewrite", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleAction" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the action.", + "$ref": "#/definitions/UrlRewriteActionParameters" + } + } + }, + "UrlRewriteActionParameters": { + "description": "Defines the parameters for the url rewrite action.", + "required": [ + "sourcePattern", + "destination", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleUrlRewriteActionParameters" + ] + }, + "sourcePattern": { + "description": "define a request URI pattern that identifies the type of requests that may be rewritten. Currently, source pattern uses a prefix-based match. To match all URL paths, use \"/\" as the source pattern value. To match only the root directory and re-write this path, use the origin path field", + "type": "string" + }, + "destination": { + "description": "Define the destination path for be used in the rewrite. This will overwrite the source pattern ", + "type": "string" + }, + "preserveUnmatchedPath": { + "description": "If True, the remaining path after the source pattern will be appended to the new destination path. ", + "type": "boolean" + } + } + }, + "DeliveryRuleRequestHeaderAction": { + "description": "Defines the request header action for the delivery rule.", + "x-ms-discriminator-value": "ModifyRequestHeader", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleAction" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the action.", + "$ref": "#/definitions/HeaderActionParameters" + } + } + }, + "DeliveryRuleResponseHeaderAction": { + "description": "Defines the response header action for the delivery rule.", + "x-ms-discriminator-value": "ModifyResponseHeader", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleAction" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the action.", + "$ref": "#/definitions/HeaderActionParameters" + } + } + }, + "HeaderActionParameters": { + "description": "Defines the parameters for the request header action.", + "required": [ + "headerAction", + "headerName", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters" + ] + }, + "headerAction": { + "description": "Action to perform", + "type": "string", + "enum": [ + "Append", + "Overwrite", + "Delete" + ], + "x-ms-enum": { + "name": "HeaderAction", + "modelAsString": true + } + }, + "headerName": { + "description": "Name of the header to modify", + "type": "string" + }, + "value": { + "description": "Value for the specified action", + "type": "string" + } + } + }, + "DeliveryRuleCacheExpirationAction": { + "description": "Defines the cache expiration action for the delivery rule.", + "x-ms-discriminator-value": "CacheExpiration", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleAction" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the action.", + "$ref": "#/definitions/CacheExpirationActionParameters" + } + } + }, + "CacheExpirationActionParameters": { + "description": "Defines the parameters for the cache expiration action.", + "required": [ + "cacheBehavior", + "cacheType", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleCacheExpirationActionParameters" + ] + }, + "cacheBehavior": { + "description": "Caching behavior for the requests", + "type": "string", + "enum": [ + "BypassCache", + "Override", + "SetIfMissing" + ], + "x-ms-enum": { + "name": "cacheBehavior", + "modelAsString": true + } + }, + "cacheType": { + "description": "The level at which the content needs to be cached.", + "type": "string", + "enum": [ + "All" + ], + "x-ms-enum": { + "name": "CacheType", + "modelAsString": true + } + }, + "cacheDuration": { + "description": "The duration for which the content needs to be cached. Allowed format is [d.]hh:mm:ss", + "type": "string", + "x-nullable": true + } + } + }, + "DeliveryRuleCacheKeyQueryStringAction": { + "description": "Defines the cache-key query string action for the delivery rule.", + "x-ms-discriminator-value": "CacheKeyQueryString", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleAction" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the action.", + "$ref": "#/definitions/CacheKeyQueryStringActionParameters" + } + } + }, + "CacheKeyQueryStringActionParameters": { + "description": "Defines the parameters for the cache-key query string action.", + "required": [ + "queryStringBehavior", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleCacheKeyQueryStringBehaviorActionParameters" + ] + }, + "queryStringBehavior": { + "description": "Caching behavior for the requests", + "type": "string", + "enum": [ + "Include", + "IncludeAll", + "Exclude", + "ExcludeAll" + ], + "x-ms-enum": { + "name": "queryStringBehavior", + "modelAsString": true + } + }, + "queryParameters": { + "description": "query parameters to include or exclude (comma separated).", + "type": "string", + "x-nullable": true + } + } + }, + "transform": { + "description": "Describes what transforms are applied before matching", + "type": "string", + "enum": [ + "Lowercase", + "Uppercase" + ], + "x-ms-enum": { + "name": "transform", + "modelAsString": true + } + }, + "DeepCreatedOrigin": { + "description": "The main origin of CDN content which is added when creating a CDN endpoint.", + "type": "object", + "required": [ + "name" + ], + "properties": { + "name": { + "description": "Origin name", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DeepCreatedOriginProperties" + } + }, + "x-ms-azure-resource": true + }, + "DeepCreatedOriginProperties": { + "description": "Properties of the origin created on the CDN endpoint.", + "type": "object", + "required": [ + "hostName" + ], + "properties": { + "hostName": { + "description": "The address of the origin. It can be a domain name, IPv4 address, or IPv6 address.", + "type": "string" + }, + "httpPort": { + "description": "The value of the HTTP port. Must be between 1 and 65535", + "type": "integer", + "maximum": 65535, + "exclusiveMaximum": false, + "minimum": 1, + "exclusiveMinimum": false + }, + "httpsPort": { + "description": "The value of the HTTPS port. Must be between 1 and 65535", + "type": "integer", + "maximum": 65535, + "exclusiveMaximum": false, + "minimum": 1, + "exclusiveMinimum": false + } + }, + "x-ms-azure-resource": true + }, + "GeoFilter": { + "description": "Rules defining user's geo access within a CDN endpoint.", + "type": "object", + "required": [ + "relativePath", + "action", + "countryCodes" + ], + "properties": { + "relativePath": { + "description": "Relative path applicable to geo filter. (e.g. '/mypictures', '/mypicture/kitty.jpg', and etc.)", + "type": "string" + }, + "action": { + "description": "Action of the geo filter, i.e. allow or block access.", + "enum": [ + "Block", + "Allow" + ], + "type": "string", + "x-ms-enum": { + "name": "GeoFilterActions", + "modelAsString": false + } + }, + "countryCodes": { + "description": "Two letter country codes defining user country access in a geo filter, e.g. AU, MX, US.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "PurgeParameters": { + "type": "object", + "description": "Parameters required for content purge.", + "required": [ + "contentPaths" + ], + "properties": { + "contentPaths": { + "description": "The path to the content to be purged. Can describe a file path or a wild card directory.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "LoadParameters": { + "type": "object", + "description": "Parameters required for content load.", + "required": [ + "contentPaths" + ], + "properties": { + "contentPaths": { + "description": "The path to the content to be loaded. Path should be a relative file URL of the origin.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "Origin": { + "description": "CDN origin is the source of the content being delivered via CDN. When the edge nodes represented by an endpoint do not have the requested content cached, they attempt to fetch it from one or more of the configured origins.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OriginProperties" + } + } + }, + "OriginProperties": { + "description": "The JSON object that contains the properties of the origin.", + "required": [ + "hostName" + ], + "properties": { + "hostName": { + "description": "The address of the origin. Domain names, IPv4 addresses, and IPv6 addresses are supported.", + "type": "string" + }, + "httpPort": { + "description": "The value of the HTTP port. Must be between 1 and 65535.", + "type": "integer", + "maximum": 65535, + "exclusiveMaximum": false, + "minimum": 1, + "exclusiveMinimum": false + }, + "httpsPort": { + "description": "The value of the https port. Must be between 1 and 65535.", + "type": "integer", + "maximum": 65535, + "exclusiveMaximum": false, + "minimum": 1, + "exclusiveMinimum": false + }, + "resourceState": { + "description": "Resource status of the origin.", + "readOnly": true, + "enum": [ + "Creating", + "Active", + "Deleting" + ], + "type": "string", + "x-ms-enum": { + "name": "OriginResourceState", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "description": "Provisioning status of the origin.", + "type": "string" + } + } + }, + "OriginUpdateParameters": { + "type": "object", + "description": "Origin properties needed for origin creation or update.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OriginPropertiesParameters" + } + }, + "x-ms-azure-resource": true + }, + "OriginPropertiesParameters": { + "description": "The JSON object that contains the properties of the origin.", + "properties": { + "hostName": { + "description": "The address of the origin. Domain names, IPv4 addresses, and IPv6 addresses are supported.", + "type": "string" + }, + "httpPort": { + "description": "The value of the HTTP port. Must be between 1 and 65535.", + "type": "integer", + "maximum": 65535, + "exclusiveMaximum": false, + "minimum": 1, + "exclusiveMinimum": false + }, + "httpsPort": { + "description": "The value of the HTTPS port. Must be between 1 and 65535.", + "type": "integer", + "maximum": 65535, + "exclusiveMaximum": false, + "minimum": 1, + "exclusiveMinimum": false + } + } + }, + "OriginListResult": { + "description": "Result of the request to list origins. It contains a list of origin objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Origin" + }, + "description": "List of CDN origins within an endpoint" + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of origin objects if there are any." + } + } + }, + "CustomDomain": { + "description": "Friendly domain name mapping to the endpoint hostname that the customer provides for branding purposes, e.g. www.contoso.com.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CustomDomainProperties" + } + } + }, + "CustomDomainProperties": { + "description": "The JSON object that contains the properties of the custom domain to create.", + "required": [ + "hostName" + ], + "properties": { + "hostName": { + "description": "The host name of the custom domain. Must be a domain name.", + "type": "string" + }, + "resourceState": { + "description": "Resource status of the custom domain.", + "readOnly": true, + "enum": [ + "Creating", + "Active", + "Deleting" + ], + "type": "string", + "x-ms-enum": { + "name": "CustomDomainResourceState", + "modelAsString": true + } + }, + "customHttpsProvisioningState": { + "description": "Provisioning status of Custom Https of the custom domain.", + "readOnly": true, + "enum": [ + "Enabling", + "Enabled", + "Disabling", + "Disabled", + "Failed" + ], + "type": "string", + "x-ms-enum": { + "name": "CustomHttpsProvisioningState", + "modelAsString": true + } + }, + "customHttpsProvisioningSubstate": { + "description": "Provisioning substate shows the progress of custom HTTPS enabling/disabling process step by step.", + "readOnly": true, + "enum": [ + "SubmittingDomainControlValidationRequest", + "PendingDomainControlValidationREquestApproval", + "DomainControlValidationRequestApproved", + "DomainControlValidationRequestRejected", + "DomainControlValidationRequestTimedOut", + "IssuingCertificate", + "DeployingCertificate", + "CertificateDeployed", + "DeletingCertificate", + "CertificateDeleted" + ], + "type": "string", + "x-ms-enum": { + "name": "CustomHttpsProvisioningSubstate", + "modelAsString": true + } + }, + "customHttpsParameters": { + "description": "Certificate parameters for securing custom HTTPS", + "$ref": "#/definitions/CustomDomainHttpsParameters" + }, + "validationData": { + "description": "Special validation or data may be required when delivering CDN to some regions due to local compliance reasons. E.g. ICP license number of a custom domain is required to deliver content in China.", + "type": "string" + }, + "provisioningState": { + "readOnly": true, + "description": "Provisioning status of the custom domain.", + "type": "string" + } + } + }, + "CustomDomainParameters": { + "description": "The customDomain JSON object required for custom domain creation or update.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CustomDomainPropertiesParameters" + } + } + }, + "CustomDomainPropertiesParameters": { + "description": "The JSON object that contains the properties of the custom domain to create.", + "required": [ + "hostName" + ], + "properties": { + "hostName": { + "description": "The host name of the custom domain. Must be a domain name.", + "type": "string" + } + } + }, + "CustomDomainHttpsParameters": { + "description": "The JSON object that contains the properties to secure a custom domain.", + "discriminator": "certificateSource", + "required": [ + "certificateSource", + "protocolType" + ], + "properties": { + "certificateSource": { + "description": "Defines the source of the SSL certificate.", + "enum": [ + "AzureKeyVault", + "Cdn" + ], + "type": "string", + "x-ms-enum": { + "name": "CertificateSource", + "modelAsString": true + } + }, + "protocolType": { + "description": "Defines the TLS extension protocol that is used for secure delivery.", + "enum": [ + "ServerNameIndication", + "IPBased" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtocolType", + "modelAsString": true + } + }, + "minimumTlsVersion": { + "description": "TLS protocol version that will be used for Https", + "enum": [ + "None", + "TLS10", + "TLS12" + ], + "type": "string", + "x-ms-enum": { + "name": "minimumTlsVersion", + "modelAsString": false + } + } + } + }, + "CdnManagedHttpsParameters": { + "description": "Defines the certificate source parameters using CDN managed certificate for enabling SSL.", + "x-ms-discriminator-value": "Cdn", + "allOf": [ + { + "$ref": "#/definitions/CustomDomainHttpsParameters" + } + ], + "required": [ + "certificateSourceParameters" + ], + "properties": { + "certificateSourceParameters": { + "description": "Defines the certificate source parameters using CDN managed certificate for enabling SSL.", + "$ref": "#/definitions/CdnCertificateSourceParameters" + } + } + }, + "CdnCertificateSourceParameters": { + "description": "Defines the parameters for using CDN managed certificate for securing custom domain.", + "required": [ + "@odata.type", + "certificateType" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.CdnCertificateSourceParameters" + ] + }, + "certificateType": { + "description": "Type of certificate used", + "enum": [ + "Shared", + "Dedicated" + ], + "type": "string", + "x-ms-enum": { + "name": "CertificateType", + "modelAsString": true + } + } + } + }, + "UserManagedHttpsParameters": { + "description": "Defines the certificate source parameters using user's keyvault certificate for enabling SSL.", + "x-ms-discriminator-value": "AzureKeyVault", + "allOf": [ + { + "$ref": "#/definitions/CustomDomainHttpsParameters" + } + ], + "required": [ + "certificateSourceParameters" + ], + "properties": { + "certificateSourceParameters": { + "description": "Defines the certificate source parameters using user's keyvault certificate for enabling SSL.", + "$ref": "#/definitions/KeyVaultCertificateSourceParameters" + } + } + }, + "KeyVaultCertificateSourceParameters": { + "description": "Describes the parameters for using a user's KeyVault certificate for securing custom domain.", + "required": [ + "@odata.type", + "subscriptionId", + "resourceGroupName", + "vaultName", + "secretName", + "secretVersion", + "updateRule", + "deleteRule" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.KeyVaultCertificateSourceParameters" + ] + }, + "subscriptionId": { + "description": "Subscription Id of the user's Key Vault containing the SSL certificate", + "type": "string" + }, + "resourceGroupName": { + "description": "Resource group of the user's Key Vault containing the SSL certificate", + "type": "string" + }, + "vaultName": { + "description": "The name of the user's Key Vault containing the SSL certificate", + "type": "string" + }, + "secretName": { + "description": "The name of Key Vault Secret (representing the full certificate PFX) in Key Vault.", + "type": "string" + }, + "secretVersion": { + "description": "The version(GUID) of Key Vault Secret in Key Vault.", + "type": "string" + }, + "updateRule": { + "description": "Describes the action that shall be taken when the certificate is updated in Key Vault.", + "type": "string", + "enum": [ + "NoAction" + ], + "x-ms-enum": { + "name": "UpdateRule", + "modelAsString": true + } + }, + "deleteRule": { + "description": "Describes the action that shall be taken when the certificate is removed from Key Vault.", + "type": "string", + "enum": [ + "NoAction" + ], + "x-ms-enum": { + "name": "DeleteRule", + "modelAsString": true + } + } + } + }, + "CustomDomainListResult": { + "description": "Result of the request to list custom domains. It contains a list of custom domain objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/CustomDomain" + }, + "description": "List of CDN CustomDomains within an endpoint." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of custom domain objects if there are any." + } + } + }, + "ValidateCustomDomainInput": { + "description": "Input of the custom domain to be validated for DNS mapping.", + "type": "object", + "required": [ + "hostName" + ], + "properties": { + "hostName": { + "description": "The host name of the custom domain. Must be a domain name.", + "type": "string" + } + } + }, + "ValidateCustomDomainOutput": { + "description": "Output of custom domain validation.", + "type": "object", + "properties": { + "customDomainValidated": { + "description": "Indicates whether the custom domain is valid or not.", + "readOnly": true, + "type": "boolean" + }, + "reason": { + "description": "The reason why the custom domain is not valid.", + "readOnly": true, + "type": "string" + }, + "message": { + "description": "Error message describing why the custom domain is not valid.", + "readOnly": true, + "type": "string" + } + } + }, + "CheckNameAvailabilityInput": { + "description": "Input of CheckNameAvailability API.", + "type": "object", + "required": [ + "name", + "type" + ], + "properties": { + "name": { + "description": "The resource name to validate.", + "type": "string" + }, + "type": { + "description": "The type of the resource whose name is to be validated.", + "$ref": "#/definitions/ResourceType" + } + } + }, + "CheckNameAvailabilityOutput": { + "description": "Output of check name availability API.", + "type": "object", + "properties": { + "nameAvailable": { + "description": "Indicates whether the name is available.", + "readOnly": true, + "type": "boolean" + }, + "reason": { + "description": "The reason why the name is not available.", + "readOnly": true, + "type": "string" + }, + "message": { + "description": "The detailed error message describing why the name is not available.", + "readOnly": true, + "type": "string" + } + } + }, + "ValidateProbeInput": { + "description": "Input of the validate probe API.", + "properties": { + "probeURL": { + "description": "The probe URL to validate.", + "type": "string" + } + }, + "required": [ + "probeURL" + ], + "type": "object" + }, + "ValidateProbeOutput": { + "description": "Output of the validate probe API.", + "properties": { + "isValid": { + "description": "Indicates whether the probe URL is accepted or not.", + "readOnly": true, + "type": "boolean" + }, + "errorCode": { + "description": "Specifies the error code when the probe url is not accepted.", + "readOnly": true, + "type": "string" + }, + "message": { + "description": "The detailed error message describing why the probe URL is not accepted.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ResourceUsageListResult": { + "description": "Output of check resource usage API.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ResourceUsage" + }, + "description": "List of resource usages." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of custom domain objects if there are any." + } + } + }, + "ResourceUsage": { + "description": "Output of check resource usage API.", + "type": "object", + "properties": { + "resourceType": { + "type": "string", + "readOnly": true, + "description": "Resource type for which the usage is provided." + }, + "unit": { + "type": "string", + "readOnly": true, + "description": "Unit of the usage. e.g. Count." + }, + "currentValue": { + "type": "integer", + "readOnly": true, + "description": "Actual value of usage on the specified resource type." + }, + "limit": { + "type": "integer", + "readOnly": true, + "description": "Quota of the specified resource type." + } + } + }, + "ResourceType": { + "description": "Type of CDN resource used in CheckNameAvailability.", + "enum": [ + "Microsoft.Cdn/Profiles/Endpoints" + ], + "type": "string", + "x-ms-enum": { + "name": "ResourceType", + "modelAsString": false + } + }, + "Operation": { + "description": "CDN REST API operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "readOnly": true, + "type": "string" + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft.Cdn", + "readOnly": true, + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed: Profile, endpoint, etc.", + "readOnly": true, + "type": "string" + }, + "operation": { + "description": "Operation type: Read, write, delete, etc.", + "readOnly": true, + "type": "string" + } + } + } + } + }, + "OperationsListResult": { + "description": "Result of the request to list CDN operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of CDN operations supported by the CDN resource provider." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "EdgenodeResult": { + "description": "Result of the request to list CDN edgenodes. It contains a list of ip address group and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/EdgeNode" + }, + "description": "Edge node of CDN service." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of edgenode list results if there are any." + } + } + }, + "EdgeNode": { + "description": "Edgenode is a global Point of Presence (POP) location used to deliver CDN content to end users.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/EdgeNodeProperties" + } + } + }, + "EdgeNodeProperties": { + "description": "The JSON object that contains the properties required to create an edgenode.", + "required": [ + "ipAddressGroups" + ], + "properties": { + "ipAddressGroups": { + "description": "List of ip address groups.", + "type": "array", + "items": { + "$ref": "#/definitions/IpAddressGroup" + } + } + } + }, + "IpAddressGroup": { + "description": "CDN Ip address group", + "type": "object", + "properties": { + "deliveryRegion": { + "description": "The delivery region of the ip address group", + "type": "string" + }, + "ipv4Addresses": { + "description": "The list of ip v4 addresses.", + "type": "array", + "items": { + "$ref": "#/definitions/cidrIpAddress" + } + }, + "ipv6Addresses": { + "description": "The list of ip v6 addresses.", + "type": "array", + "items": { + "$ref": "#/definitions/cidrIpAddress" + } + } + } + }, + "cidrIpAddress": { + "description": "CIDR Ip address", + "type": "object", + "properties": { + "baseIpAddress": { + "description": "Ip address itself.", + "type": "string" + }, + "prefixLength": { + "description": "The length of the prefix of the ip address.", + "type": "integer" + } + } + }, + "Resource": { + "description": "The core properties of ARM resources", + "properties": { + "id": { + "description": "Resource ID.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Resource name.", + "readOnly": true, + "type": "string" + }, + "type": { + "description": "Resource type.", + "readOnly": true, + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "TrackedResource": { + "description": "The resource model definition for a ARM tracked top level resource.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Resource tags." + } + }, + "required": [ + "location" + ] + }, + "ProxyResource": { + "description": "The resource model definition for a ARM proxy resource. It will have everything other than required location and tags", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ] + }, + "QueryStringCachingBehavior": { + "description": "Defines how CDN caches requests that include query strings. You can ignore any query strings when caching, bypass caching to prevent requests that contain query strings from being cached, or cache every request with a unique URL.", + "enum": [ + "IgnoreQueryString", + "BypassCaching", + "UseQueryString", + "NotSet" + ], + "type": "string", + "x-ms-enum": { + "name": "QueryStringCachingBehavior", + "modelAsString": false + } + }, + "Sku": { + "description": "The pricing tier (defines a CDN provider, feature list and rate) of the CDN profile.", + "properties": { + "name": { + "description": "Name of the pricing tier.", + "enum": [ + "Standard_Verizon", + "Premium_Verizon", + "Custom_Verizon", + "Standard_Akamai", + "Standard_ChinaCdn", + "Standard_Microsoft", + "Premium_ChinaCdn" + ], + "type": "string", + "x-ms-enum": { + "name": "SkuName", + "modelAsString": true + } + } + }, + "type": "object" + }, + "OptimizationType": { + "description": "Specifies what scenario the customer wants this CDN endpoint to optimize, e.g. Download, Media services. With this information we can apply scenario driven optimization.", + "enum": [ + "GeneralWebDelivery", + "GeneralMediaStreaming", + "VideoOnDemandMediaStreaming", + "LargeFileDownload", + "DynamicSiteAcceleration" + ], + "type": "string", + "x-ms-enum": { + "name": "OptimizationType", + "modelAsString": true + } + }, + "ErrorResponse": { + "description": "Error response indicates CDN service is not able to process the incoming request. The reason is provided in the error message.", + "type": "object", + "properties": { + "code": { + "description": "Error code.", + "readOnly": true, + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "readOnly": true, + "type": "string" + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Azure Subscription ID.", + "required": true, + "type": "string" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Version of the API to be used with the client request. Current version is 2017-04-02." + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method", + "description": "Name of the Resource group within the Azure subscription." + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/cdnwebapplicationfirewall.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/cdnwebapplicationfirewall.json new file mode 100644 index 000000000000..5dd299660337 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/cdnwebapplicationfirewall.json @@ -0,0 +1,926 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-06-15", + "title": "Azure CDN WebApplicationFirewallManagement", + "description": "APIs to manage web application firewall rules for Azure CDN" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies": { + "get": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Lists all of the protection policies within a resource group.", + "operationId": "Policies_List", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CdnWebApplicationFirewallPolicyList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./cdn.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Policies in a Resource Group": { + "$ref": "./examples/WafListPolicies.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/{policyName}": { + "get": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Retrieve protection policy with specified name within a resource group.", + "operationId": "Policies_Get", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/PolicyNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CdnWebApplicationFirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./cdn.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Policy": { + "$ref": "./examples/WafPolicyGet.json" + } + } + }, + "put": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Create or update policy with specified rule set name within a resource group.", + "operationId": "Policies_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/PolicyNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "description": "Policy to be created.", + "in": "body", + "name": "cdnWebApplicationFirewallPolicy", + "required": true, + "schema": { + "$ref": "#/definitions/CdnWebApplicationFirewallPolicy" + } + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CdnWebApplicationFirewallPolicy" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new protection policy has been created.", + "schema": { + "$ref": "#/definitions/CdnWebApplicationFirewallPolicy" + } + }, + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/CdnWebApplicationFirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./cdn.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Creates specific policy": { + "$ref": "./examples/WafPolicyCreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Update an existing CdnWebApplicationFirewallPolicy with the specified policy name under the specified subscription and resource group", + "operationId": "Policies_Update", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/PolicyNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "description": "CdnWebApplicationFirewallPolicy parameters to be patched.", + "in": "body", + "name": "cdnWebApplicationFirewallPolicyPatchParameters", + "required": true, + "schema": { + "$ref": "#/definitions/CdnWebApplicationFirewallPolicyPatchParameters" + } + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CdnWebApplicationFirewallPolicy" + } + }, + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/CdnWebApplicationFirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./cdn.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Creates specific policy": { + "$ref": "./examples/WafPatchPolicy.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Deletes Policy", + "operationId": "Policies_Delete", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/PolicyNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "204": { + "description": "No Content. The request has been accepted but the policy was not found." + } + }, + "x-ms-examples": { + "Delete protection policy": { + "$ref": "./examples/WafPolicyDelete.json" + } + }, + "x-ms-long-running-operation": false + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Cdn/CdnWebApplicationFirewallManagedRuleSets": { + "get": { + "tags": [ + "WebApplicationFirewallManagedRuleSets" + ], + "description": "Lists all available managed rule sets.", + "operationId": "ManagedRuleSets_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of all available web application firewall managed rule sets.", + "schema": { + "$ref": "#/definitions/ManagedRuleSetDefinitionList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./cdn.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Policies in a Resource Group": { + "$ref": "./examples/WafListManagedRuleSets.json" + } + } + } + } + }, + "definitions": { + "CdnWebApplicationFirewallPolicyList": { + "description": "Defines a list of WebApplicationFirewallPolicies for Azure CDN. It contains a list of WebApplicationFirewallPolicy objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/CdnWebApplicationFirewallPolicy" + }, + "description": "List of Azure CDN WebApplicationFirewallPolicies within a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of WebApplicationFirewallPolicy objects if there are any." + } + } + }, + "CdnWebApplicationFirewallPolicy": { + "description": "Defines web application firewall policy for Azure CDN.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties of the web application firewall policy.", + "$ref": "#/definitions/CdnWebApplicationFirewallPolicyProperties" + }, + "etag": { + "type": "string", + "description": "Gets a unique read-only string that changes whenever the resource is updated." + }, + "sku": { + "description": "The pricing tier (defines a CDN provider, feature list and rate) of the CdnWebApplicationFirewallPolicy.", + "$ref": "./cdn.json#/definitions/Sku" + } + }, + "required": [ + "sku" + ], + "allOf": [ + { + "$ref": "./cdn.json#/definitions/TrackedResource" + } + ] + }, + "CdnWebApplicationFirewallPolicyPatchParameters": { + "type": "object", + "description": "Properties required to update a CdnWebApplicationFirewallPolicy.", + "properties": { + "tags": { + "description": "CdnWebApplicationFirewallPolicy tags", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "x-ms-azure-resource": true + }, + "CdnWebApplicationFirewallPolicyProperties": { + "description": "Defines CDN web application firewall policy properties.", + "properties": { + "policySettings": { + "description": "Describes policySettings for policy", + "$ref": "#/definitions/policySettings" + }, + "rateLimitRules": { + "description": "Describes rate limit rules inside the policy.", + "$ref": "#/definitions/RateLimitRuleList" + }, + "customRules": { + "description": "Describes custom rules inside the policy.", + "$ref": "#/definitions/CustomRuleList" + }, + "managedRules": { + "description": "Describes managed rules inside the policy.", + "$ref": "#/definitions/ManagedRuleSetList" + }, + "endpointLinks": { + "description": "Describes Azure CDN endpoints associated with this Web Application Firewall policy.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/CdnEndpoint" + } + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "Provisioning state of the WebApplicationFirewallPolicy.", + "enum": [ + "Creating", + "Succeeded", + "Failed" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "resourceState": { + "title": "Resource status of the policy.", + "readOnly": true, + "enum": [ + "Creating", + "Enabling", + "Enabled", + "Disabling", + "Disabled", + "Deleting" + ], + "type": "string", + "x-ms-enum": { + "name": "PolicyResourceState", + "modelAsString": true + } + } + } + }, + "policySettings": { + "description": "Defines contents of a web application firewall global configuration", + "properties": { + "enabledState": { + "description": "describes if the policy is in enabled state or disabled state", + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "PolicyEnabledState", + "modelAsString": true + } + }, + "mode": { + "description": "Describes if it is in detection mode or prevention mode at policy level.", + "type": "string", + "enum": [ + "Prevention", + "Detection" + ], + "x-ms-enum": { + "name": "PolicyMode", + "modelAsString": true + } + }, + "defaultRedirectUrl": { + "description": "If action type is redirect, this field represents the default redirect URL for the client.", + "type": "string" + }, + "defaultCustomBlockResponseStatusCode": { + "description": "If the action type is block, this field defines the default customer overridable http response status code.", + "type": "integer", + "enum": [ + 200, + 403, + 405, + 406, + 429 + ] + }, + "defaultCustomBlockResponseBody": { + "description": "If the action type is block, customer can override the response body. The body must be specified in base64 encoding.", + "type": "string", + "pattern": "^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{4})$" + } + } + }, + "CdnEndpoint": { + "description": "Defines the ARM Resource ID for the linked endpoints", + "type": "object", + "readOnly": true, + "properties": { + "id": { + "type": "string", + "description": "ARM Resource ID string." + } + } + }, + "CustomRuleList": { + "description": "Defines contents of custom rules", + "properties": { + "rules": { + "description": "List of rules", + "type": "array", + "items": { + "$ref": "#/definitions/CustomRule" + } + } + } + }, + "CustomRule": { + "description": "Defines the common attributes for a custom rule that can be included in a waf policy", + "type": "object", + "required": [ + "name", + "priority", + "matchConditions", + "action" + ], + "properties": { + "name": { + "description": "Defines the name of the custom rule", + "type": "string" + }, + "enabledState": { + "description": "Describes if the custom rule is in enabled or disabled state. Defaults to Enabled if not specified.", + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "CustomRuleEnabledState", + "modelAsString": true + } + }, + "priority": { + "description": "Defines in what order this rule be evaluated in the overall list of custom rules", + "type": "integer", + "maximum": 1000, + "exclusiveMaximum": false, + "minimum": 0, + "exclusiveMinimum": false + }, + "matchConditions": { + "description": "List of match conditions.", + "type": "array", + "items": { + "$ref": "#/definitions/MatchCondition" + } + }, + "action": { + "description": "Describes what action to be applied when rule matches", + "$ref": "#/definitions/ActionType" + } + } + }, + "RateLimitRuleList": { + "description": "Defines contents of rate limit rules", + "properties": { + "rules": { + "description": "List of rules", + "type": "array", + "items": { + "$ref": "#/definitions/RateLimitRule" + } + } + } + }, + "RateLimitRule": { + "description": "Defines a rate limiting rule that can be included in a waf policy", + "type": "object", + "required": [ + "rateLimitThreshold", + "rateLimitDurationInMinutes" + ], + "properties": { + "rateLimitThreshold": { + "description": "Defines rate limit threshold.", + "type": "integer", + "minimum": 0, + "exclusiveMinimum": false + }, + "rateLimitDurationInMinutes": { + "description": "Defines rate limit duration. Default is 1 minute.", + "type": "integer", + "maximum": 60, + "exclusiveMaximum": false, + "minimum": 0, + "exclusiveMinimum": false + } + }, + "allOf": [ + { + "$ref": "#/definitions/CustomRule" + } + ] + }, + "MatchCondition": { + "description": "Define match conditions", + "required": [ + "matchVariable", + "operator", + "matchValue" + ], + "properties": { + "matchVariable": { + "description": "Match variable to compare against.", + "type": "string", + "enum": [ + "RemoteAddr", + "SocketAddr", + "RequestMethod", + "RequestHeader", + "RequestUri", + "QueryString", + "RequestBody", + "Cookies", + "PostArgs" + ], + "x-ms-enum": { + "name": "MatchVariable", + "modelAsString": true + } + }, + "selector": { + "description": "Selector can used to match a specific key for QueryString, Cookies, RequestHeader or PostArgs.", + "type": "string" + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "IPMatch", + "GeoMatch", + "Equal", + "Contains", + "LessThan", + "GreaterThan", + "LessThanOrEqual", + "GreaterThanOrEqual", + "BeginsWith", + "EndsWith", + "RegEx" + ], + "x-ms-enum": { + "name": "operator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if the result of this condition should be negated.", + "type": "boolean" + }, + "matchValue": { + "description": "List of possible match values.", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms.", + "type": "array", + "items": { + "$ref": "#/definitions/TransformType" + } + } + } + }, + "TransformType": { + "description": "Describes what transforms were applied before matching.", + "type": "string", + "enum": [ + "Lowercase", + "Uppercase", + "Trim", + "UrlDecode", + "UrlEncode", + "RemoveNulls" + ], + "x-ms-enum": { + "name": "TransformType", + "modelAsString": true + } + }, + "ManagedRuleSetList": { + "description": "Defines the list of managed rule sets for the policy.", + "properties": { + "managedRuleSets": { + "description": "List of rule sets.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedRuleSet" + } + } + } + }, + "ManagedRuleSet": { + "type": "object", + "description": "Defines a managed rule set.", + "required": [ + "ruleSetType", + "ruleSetVersion" + ], + "properties": { + "ruleSetType": { + "description": "Defines the rule set type to use.", + "type": "string" + }, + "ruleSetVersion": { + "description": "Defines the version of the rule set to use.", + "type": "string" + }, + "anomalyScore": { + "description": "Verizon only : If the rule set supports anomaly detection mode, this describes the threshold for blocking requests.", + "type": "integer", + "maximum": 20, + "exclusiveMaximum": false, + "minimum": 0, + "exclusiveMinimum": false + }, + "ruleGroupOverrides": { + "description": "Defines the rule overrides to apply to the rule set.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedRuleGroupOverride" + } + } + } + }, + "ManagedRuleGroupOverride": { + "description": "Defines a managed rule group override setting.", + "required": [ + "ruleGroupName" + ], + "properties": { + "ruleGroupName": { + "description": "Describes the managed rule group within the rule set to override", + "type": "string" + }, + "rules": { + "description": "List of rules that will be disabled. If none specified, all rules in the group will be disabled.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedRuleOverride" + } + } + } + }, + "ManagedRuleOverride": { + "description": "Defines a managed rule group override setting.", + "required": [ + "ruleId" + ], + "properties": { + "ruleId": { + "description": "Identifier for the managed rule.", + "type": "string" + }, + "enabledState": { + "description": "Describes if the managed rule is in enabled or disabled state. Defaults to Disabled if not specified.", + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "ManagedRuleEnabledState", + "modelAsString": true + } + }, + "action": { + "description": "Describes the override action to be applied when rule matches.", + "$ref": "#/definitions/ActionType" + } + } + }, + "ManagedRuleSetDefinitionList": { + "description": "List of managed rule set definitions available for use in a policy.", + "properties": { + "value": { + "description": "List of managed rule set definitions.", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ManagedRuleSetDefinition" + } + }, + "nextLink": { + "type": "string", + "description": "URL to retrieve next set of managed rule set definitions." + } + } + }, + "ManagedRuleSetDefinition": { + "description": "Describes a managed rule set definition.", + "properties": { + "properties": { + "description": "Describes managed rule set definition properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ManagedRuleSetDefinitionProperties" + }, + "sku": { + "description": "The pricing tier (defines a CDN provider, feature list and rate) of the CdnWebApplicationFirewallPolicy.", + "$ref": "./cdn.json#/definitions/Sku" + } + }, + "allOf": [ + { + "$ref": "./cdn.json#/definitions/Resource" + } + ] + }, + "ManagedRuleSetDefinitionProperties": { + "description": "Properties for a managed rule set definition.", + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Provisioning state of the managed rule set." + }, + "ruleSetType": { + "type": "string", + "readOnly": true, + "description": "Type of the managed rule set." + }, + "ruleSetVersion": { + "type": "string", + "readOnly": true, + "description": "Version of the managed rule set type." + }, + "ruleGroups": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ManagedRuleGroupDefinition" + }, + "description": "Rule groups of the managed rule set." + } + } + }, + "ManagedRuleGroupDefinition": { + "description": "Describes a managed rule group.", + "properties": { + "ruleGroupName": { + "type": "string", + "readOnly": true, + "description": "Name of the managed rule group." + }, + "description": { + "type": "string", + "readOnly": true, + "description": "Description of the managed rule group." + }, + "rules": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ManagedRuleDefinition" + }, + "description": "List of rules within the managed rule group." + } + } + }, + "ManagedRuleDefinition": { + "description": "Describes a managed rule definition.", + "properties": { + "ruleId": { + "description": "Identifier for the managed rule.", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Describes the functionality of the managed rule.", + "readOnly": true, + "type": "string" + } + } + }, + "ActionType": { + "description": "Defines the action to take on rule match.", + "type": "string", + "enum": [ + "Allow", + "Block", + "Log", + "Redirect" + ], + "x-ms-enum": { + "name": "ActionType", + "modelAsString": true + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Azure Subscription ID.", + "required": true, + "type": "string" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Version of the API to be used with the client request. Current version is 2017-04-02." + }, + "PolicyNameParameter": { + "name": "policyName", + "in": "path", + "required": true, + "type": "string", + "maxLength": 128, + "x-ms-parameter-location": "method", + "description": "The name of the CdnWebApplicationFirewallPolicy." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9_\\-\\(\\)\\.]*[^\\.]$", + "minLength": 1, + "maxLength": 80, + "x-ms-parameter-location": "method", + "description": "Name of the Resource group within the Azure subscription." + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CheckNameAvailability.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CheckNameAvailability.json new file mode 100644 index 000000000000..2b96a7206b92 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CheckNameAvailability.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "checkNameAvailabilityInput": { + "name": "sampleName", + "type": "Microsoft.Cdn/Profiles/Endpoints" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "Name is already in use", + "message": "Name not available" + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CheckNameAvailabilityWithSubscription.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CheckNameAvailabilityWithSubscription.json new file mode 100644 index 000000000000..c0c3b1b13ad7 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CheckNameAvailabilityWithSubscription.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "checkNameAvailabilityInput": { + "name": "sampleName", + "type": "Microsoft.Cdn/Profiles/Endpoints" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "Name is already in use", + "message": "Name not available" + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_Create.json new file mode 100644 index 000000000000..8929b9d3daa4 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_Create.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "customDomainName": "www-someDomain-net", + "customDomainProperties": { + "properties": { + "hostName": "www.someDomain.net" + } + } + }, + "responses": { + "200": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/customdomains/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/customdomains", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "customHttpsProvisioningState": "Enabling", + "customHttpsProvisioningSubstate": "PendingDomainControlValidationREquestApproval", + "validationData": null + } + } + }, + "201": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/customdomains/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/customdomains", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "customHttpsProvisioningState": "Enabling", + "customHttpsProvisioningSubstate": "PendingDomainControlValidationREquestApproval", + "validationData": null + } + } + }, + "202": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/customdomains/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/customdomains", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "customHttpsProvisioningState": "Enabling", + "customHttpsProvisioningSubstate": "PendingDomainControlValidationREquestApproval", + "validationData": null + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_Delete.json new file mode 100644 index 000000000000..1763355d6bd9 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_Delete.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "customDomainName": "www-someDomain-net" + }, + "responses": { + "200": {}, + "202": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/customdomains/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/customdomains", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "customHttpsProvisioningState": "Enabling", + "customHttpsProvisioningSubstate": "PendingDomainControlValidationREquestApproval", + "validationData": null + } + } + }, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_DisableCustomHttps.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_DisableCustomHttps.json new file mode 100644 index 000000000000..f1d21c2526f9 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_DisableCustomHttps.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "customDomainName": "www-someDomain-net" + }, + "responses": { + "200": {}, + "202": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/customdomains/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/customdomains", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "customHttpsProvisioningState": "Enabling", + "customHttpsProvisioningSubstate": "PendingDomainControlValidationREquestApproval", + "validationData": null + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json new file mode 100644 index 000000000000..68f5dd4d2b3a --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "customDomainName": "www-someDomain-net", + "customHttpsParameters": { + "certificateSource": "AzureKeyVault", + "protocolType": "ServerNameIndication", + "certificateSourceParameters": { + "OData.type": "#Microsoft.Azure.Cdn.Models.KeyVaultCertificateSourceParameters", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "vaultName": "kv", + "secretName": "secret1", + "secretVersion": "00000000-0000-0000-0000-000000000000", + "updateRule": "NoAction", + "deleteRule": "NoAction" + } + } + }, + "responses": { + "200": {}, + "202": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/customdomains/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/customdomains", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "customHttpsProvisioningState": "Enabling", + "customHttpsProvisioningSubstate": "PendingDomainControlValidationREquestApproval", + "validationData": "validationdata" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json new file mode 100644 index 000000000000..72580d85a0fe --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "customDomainName": "www-someDomain-net", + "customHttpsParameters": { + "certificateSource": "Cdn", + "protocolType": "ServerNameIndication", + "certificateSourceParameters": { + "OData.type": "#Microsoft.Azure.Cdn.Models.CdnCertificateSourceParameters", + "certificateType": "Shared" + } + } + }, + "responses": { + "200": {}, + "202": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/customdomains/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/customdomains", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "customHttpsProvisioningState": "Enabling", + "customHttpsProvisioningSubstate": "PendingDomainControlValidationREquestApproval", + "validationData": "validationdata" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_Get.json new file mode 100644 index 000000000000..14bd1123ab53 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_Get.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "customDomainName": "www-someDomain-net" + }, + "responses": { + "200": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/customdomains/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/customdomains", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "customHttpsProvisioningState": "Disabled", + "customHttpsProvisioningSubstate": "None", + "validationData": null + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_ListByEndpoint.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_ListByEndpoint.json new file mode 100644 index 000000000000..93eab948f18d --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/CustomDomains_ListByEndpoint.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/customdomains/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/customdomains", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "customHttpsProvisioningState": "Disabled", + "customHttpsProvisioningSubstate": "None", + "validationData": null + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/EdgeNodes_List.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/EdgeNodes_List.json new file mode 100644 index 000000000000..6a6392c86c0d --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/EdgeNodes_List.json @@ -0,0 +1,107 @@ +{ + "parameters": { + "api-version": "2019-06-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Standard_Verizon", + "id": "/providers/Microsoft.Cdn/edgenodes/Standard_Verizon", + "type": "Microsoft.Cdn/edgenodes", + "properties": { + "ipAddressGroups": [ + { + "deliveryRegion": "All", + "ipv4Addresses": [ + { + "baseIpAddress": "192.229.176.0", + "prefixLength": 24 + }, + { + "baseIpAddress": "180.240.184.128", + "prefixLength": 25 + }, + { + "baseIpAddress": "152.195.27.0", + "prefixLength": 24 + } + ], + "ipv6Addresses": [ + { + "baseIpAddress": "2606:2800:60f2::", + "prefixLength": 48 + }, + { + "baseIpAddress": "2606:2800:700c::", + "prefixLength": 48 + } + ] + } + ] + } + }, + { + "name": "Premium_Verizon", + "id": "/providers/Microsoft.Cdn/edgenodes/Premium_Verizon", + "type": "Microsoft.Cdn/edgenodes", + "properties": { + "ipAddressGroups": [ + { + "deliveryRegion": "All", + "ipv4Addresses": [ + { + "baseIpAddress": "192.229.176.0", + "prefixLength": 24 + }, + { + "baseIpAddress": "152.195.27.0", + "prefixLength": 24 + } + ], + "ipv6Addresses": [ + { + "baseIpAddress": "2606:2800:60f2::", + "prefixLength": 48 + }, + { + "baseIpAddress": "2606:2800:700c::", + "prefixLength": 48 + } + ] + } + ] + } + }, + { + "name": "Custom_Verizon", + "id": "/providers/Microsoft.Cdn/edgenodes/Custom_Verizon", + "type": "Microsoft.Cdn/edgenodes", + "properties": { + "ipAddressGroups": [ + { + "deliveryRegion": "All", + "ipv4Addresses": [ + { + "baseIpAddress": "192.229.176.0", + "prefixLength": 24 + }, + { + "baseIpAddress": "2606:2800:420b::", + "prefixLength": 48 + }, + { + "baseIpAddress": "2606:2800:700c::", + "prefixLength": 48 + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Create.json new file mode 100644 index 000000000000..90abc4a43fa2 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Create.json @@ -0,0 +1,377 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "endpoint": { + "properties": { + "originHostHeader": "www.bing.com", + "originPath": "/photos", + "contentTypesToCompress": [ + "text/html", + "application/octet-stream" + ], + "isCompressionEnabled": true, + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "BypassCaching", + "deliveryPolicy": { + "description": "Test description for a policy.", + "rules": [ + { + "name": "rule1", + "order": 1, + "conditions": [ + { + "name": "RemoteAddress", + "parameters": { + "operator": "IPMatch", + "negateCondition": true, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleRemoteAddressConditionParameters" + } + } + ], + "actions": [ + { + "name": "CacheExpiration", + "parameters": { + "cacheBehavior": "Override", + "cacheDuration": "10:10:09", + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleCacheExpirationActionParameters", + "cacheType": "All" + } + }, + { + "name": "ModifyResponseHeader", + "parameters": { + "headerAction": "Overwrite", + "headerName": "Access-Control-Allow-Origin", + "value": "*", + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters" + } + }, + { + "name": "ModifyRequestHeader", + "parameters": { + "headerAction": "Overwrite", + "headerName": "Accept-Encoding", + "value": "gzip", + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters" + } + } + ] + } + ] + }, + "origins": [ + { + "name": "origin1", + "properties": { + "hostName": "host1.hello.com" + } + } + ], + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/cdnWafPolicy1" + } + }, + "location": "WestUs", + "tags": { + "kay1": "value1" + } + } + }, + "responses": { + "200": { + "body": { + "name": "endpoint4899", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": { + "kay1": "value1" + }, + "location": "WestUs", + "properties": { + "hostName": "endpoint4899.azureedge-test.net", + "originHostHeader": "www.bing.com", + "provisioningState": "Creating", + "resourceState": "Creating", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "BypassCaching", + "originPath": "/photos", + "origins": [ + { + "name": "origin1", + "properties": { + "hostName": "host1.hello.com", + "httpPort": null, + "httpsPort": null + } + } + ], + "contentTypesToCompress": [ + "text/html", + "application/octet-stream" + ], + "isCompressionEnabled": true, + "optimizationType": null, + "probePath": null, + "geoFilters": [], + "deliveryPolicy": { + "description": "Test description for a policy.", + "rules": [ + { + "name": "rule1", + "order": 1, + "conditions": [ + { + "name": "RemoteAddress", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleRemoteAddressConditionParameters", + "operator": "IPMatch", + "negateCondition": true, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + } + ], + "actions": [ + { + "name": "CacheExpiration", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleCacheExpirationActionParameters", + "cacheBehavior": "Override", + "cacheDuration": "10:10:09", + "cacheType": "All" + } + }, + { + "name": "ModifyResponseHeader", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "Access-Control-Allow-Origin", + "value": "*" + } + }, + { + "name": "ModifyRequestHeader", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "Accept-Encoding", + "value": "gzip" + } + } + ] + } + ] + }, + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/cdnWafPolicy1" + } + } + } + }, + "201": { + "body": { + "name": "endpoint4899", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": { + "kay1": "value1" + }, + "location": "WestUs", + "properties": { + "hostName": "endpoint4899.azureedge-test.net", + "originHostHeader": "www.bing.com", + "provisioningState": "Creating", + "resourceState": "Creating", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "BypassCaching", + "originPath": "/photos", + "origins": [ + { + "name": "origin1", + "properties": { + "hostName": "host1.hello.com", + "httpPort": null, + "httpsPort": null + } + } + ], + "contentTypesToCompress": [ + "text/html", + "application/octet-stream" + ], + "isCompressionEnabled": true, + "optimizationType": null, + "probePath": null, + "geoFilters": [], + "deliveryPolicy": { + "description": "Test description for a policy.", + "rules": [ + { + "name": "rule1", + "order": 1, + "conditions": [ + { + "name": "RemoteAddress", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleRemoteAddressConditionParameters", + "operator": "IPMatch", + "negateCondition": true, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + } + ], + "actions": [ + { + "name": "CacheExpiration", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleCacheExpirationActionParameters", + "cacheBehavior": "Override", + "cacheDuration": "10:10:09", + "cacheType": "All" + } + }, + { + "name": "ModifyResponseHeader", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "Access-Control-Allow-Origin", + "value": "*" + } + }, + { + "name": "ModifyRequestHeader", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "Accept-Encoding", + "value": "gzip" + } + } + ] + } + ] + }, + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/cdnWafPolicy1" + } + } + } + }, + "202": { + "body": { + "name": "endpoint4899", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": { + "kay1": "value1" + }, + "location": "WestUs", + "properties": { + "hostName": "endpoint4899.azureedge-test.net", + "originHostHeader": "www.bing.com", + "provisioningState": "Creating", + "resourceState": "Creating", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "BypassCaching", + "originPath": "/photos", + "origins": [ + { + "name": "origin1", + "properties": { + "hostName": "host1.hello.com", + "httpPort": null, + "httpsPort": null + } + } + ], + "contentTypesToCompress": [ + "text/html", + "application/octet-stream" + ], + "isCompressionEnabled": true, + "optimizationType": null, + "probePath": null, + "geoFilters": [], + "deliveryPolicy": { + "description": "Test description for a policy.", + "rules": [ + { + "name": "rule1", + "order": 1, + "conditions": [ + { + "name": "RemoteAddress", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleRemoteAddressConditionParameters", + "operator": "IPMatch", + "negateCondition": true, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + } + ], + "actions": [ + { + "name": "CacheExpiration", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleCacheExpirationActionParameters", + "cacheBehavior": "Override", + "cacheDuration": "10:10:09", + "cacheType": "All" + } + }, + { + "name": "ModifyResponseHeader", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "Access-Control-Allow-Origin", + "value": "*" + } + }, + { + "name": "ModifyRequestHeader", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "Accept-Encoding", + "value": "gzip" + } + } + ] + } + ] + }, + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/cdnWafPolicy1" + } + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Delete.json new file mode 100644 index 000000000000..95f06c69a84c --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Get.json new file mode 100644 index 000000000000..d526f887045f --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Get.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "200": { + "body": { + "name": "endpoint1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": {}, + "location": "CentralUs", + "properties": { + "hostName": "endpoint1.azureedge.net", + "originHostHeader": "www.bing.com", + "provisioningState": "Succeeded", + "resourceState": "Running", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "NotSet", + "originPath": null, + "origins": [ + { + "name": "www-bing-com", + "properties": { + "hostName": "www.bing.com", + "httpPort": 80, + "httpsPort": 443 + } + } + ], + "contentTypesToCompress": [], + "isCompressionEnabled": false, + "optimizationType": "DynamicSiteAcceleration", + "probePath": "/image", + "geoFilters": [], + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/cdnWafPolicy1" + } + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_ListByProfile.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_ListByProfile.json new file mode 100644 index 000000000000..9c8811f1a5a2 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_ListByProfile.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "endpoint1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": {}, + "location": "CentralUs", + "properties": { + "hostName": "endpoint1.azureedge.net", + "originHostHeader": "www.bing.com", + "provisioningState": "Succeeded", + "resourceState": "Running", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "NotSet", + "originPath": null, + "origins": [ + { + "name": "www-bing-com", + "properties": { + "hostName": "www.bing.com", + "httpPort": 80, + "httpsPort": 443 + } + } + ], + "contentTypesToCompress": [], + "isCompressionEnabled": false, + "optimizationType": "DynamicSiteAcceleration", + "probePath": "/image", + "geoFilters": [], + "webApplicationFirewallPolicyLink": null + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_ListResourceUsage.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_ListResourceUsage.json new file mode 100644 index 000000000000..896e73cbf94c --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_ListResourceUsage.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "customdomain", + "unit": "count", + "currentValue": 1, + "limit": 20 + }, + { + "resourceType": "geofilter", + "unit": "count", + "currentValue": 0, + "limit": 25 + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_LoadContent.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_LoadContent.json new file mode 100644 index 000000000000..ab4ce8b77ff4 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_LoadContent.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "contentFilePaths": { + "contentPaths": [ + "/folder1" + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_PurgeContent.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_PurgeContent.json new file mode 100644 index 000000000000..ab4ce8b77ff4 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_PurgeContent.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "contentFilePaths": { + "contentPaths": [ + "/folder1" + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Start.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Start.json new file mode 100644 index 000000000000..95393054d8aa --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Start.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "200": { + "body": { + "name": "endpoint4899", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": { + "kay1": "value1" + }, + "location": "WestUs", + "properties": { + "hostName": "endpoint1.azureedge.net", + "originHostHeader": "www.bing.com", + "provisioningState": "Succeeded", + "resourceState": "Starting", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "NotSet", + "originPath": null, + "origins": [ + { + "name": "www-bing-com", + "properties": { + "hostName": "www.bing.com", + "httpPort": 80, + "httpsPort": 443 + } + } + ], + "contentTypesToCompress": [], + "isCompressionEnabled": false, + "optimizationType": "DynamicSiteAcceleration", + "probePath": "/image", + "geoFilters": [], + "webApplicationFirewallPolicyLink": null + } + } + }, + "202": { + "body": { + "name": "endpoint4899", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": { + "kay1": "value1" + }, + "location": "WestUs", + "properties": { + "hostName": "endpoint1.azureedge.net", + "originHostHeader": "www.bing.com", + "provisioningState": "Succeeded", + "resourceState": "Starting", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "NotSet", + "originPath": null, + "origins": [ + { + "name": "www-bing-com", + "properties": { + "hostName": "www.bing.com", + "httpPort": 80, + "httpsPort": 443 + } + } + ], + "contentTypesToCompress": [], + "isCompressionEnabled": false, + "optimizationType": "DynamicSiteAcceleration", + "probePath": "/image", + "geoFilters": [], + "webApplicationFirewallPolicyLink": null + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Stop.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Stop.json new file mode 100644 index 000000000000..64d81d581402 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Stop.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "200": { + "body": { + "name": "endpoint4899", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": { + "kay1": "value1" + }, + "location": "WestUs", + "properties": { + "hostName": "endpoint1.azureedge.net", + "originHostHeader": "www.bing.com", + "provisioningState": "Succeeded", + "resourceState": "Stopping", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "NotSet", + "originPath": null, + "origins": [ + { + "name": "www-bing-com", + "properties": { + "hostName": "www.bing.com", + "httpPort": 80, + "httpsPort": 443 + } + } + ], + "contentTypesToCompress": [], + "isCompressionEnabled": false, + "optimizationType": "DynamicSiteAcceleration", + "probePath": "/image", + "geoFilters": [], + "webApplicationFirewallPolicyLink": null + } + } + }, + "202": { + "body": { + "name": "endpoint4899", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": { + "kay1": "value1" + }, + "location": "WestUs", + "properties": { + "hostName": "endpoint1.azureedge.net", + "originHostHeader": "www.bing.com", + "provisioningState": "Succeeded", + "resourceState": "Stopping", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "NotSet", + "originPath": null, + "origins": [ + { + "name": "www-bing-com", + "properties": { + "hostName": "www.bing.com", + "httpPort": 80, + "httpsPort": 443 + } + } + ], + "contentTypesToCompress": [], + "isCompressionEnabled": false, + "optimizationType": "DynamicSiteAcceleration", + "probePath": "/image", + "geoFilters": [], + "webApplicationFirewallPolicyLink": null + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Update.json new file mode 100644 index 000000000000..3050f09b2ba6 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_Update.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "endpointUpdateProperties": { + "tags": { + "additionalProperties": "Tag1" + }, + "properties": { + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/MicrosoftCdnWafPolicy2" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "endpoint1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": { + "additionalProperties": "Tag1" + }, + "location": "WestCentralUs", + "properties": { + "hostName": "endpoint1.azureedge.net", + "originHostHeader": null, + "provisioningState": "Creating", + "resourceState": "Creating", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "IgnoreQueryString", + "originPath": null, + "origins": [ + { + "name": "www-bing-com", + "properties": { + "hostName": "www.bing.com", + "httpPort": 80, + "httpsPort": 443 + } + } + ], + "contentTypesToCompress": [], + "isCompressionEnabled": false, + "optimizationType": null, + "probePath": null, + "geoFilters": [], + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/MicrosoftCdnWafPolicy2" + } + } + } + }, + "202": { + "body": { + "name": "endpoint1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": { + "additionalProperties": "Tag1" + }, + "location": "WestCentralUs", + "properties": { + "hostName": "endpoint1.azureedge.net", + "originHostHeader": null, + "provisioningState": "Creating", + "resourceState": "Creating", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "IgnoreQueryString", + "originPath": null, + "origins": [ + { + "name": "www-bing-com", + "properties": { + "hostName": "www.bing.com", + "httpPort": 80, + "httpsPort": 443 + } + } + ], + "contentTypesToCompress": [], + "isCompressionEnabled": false, + "optimizationType": null, + "probePath": null, + "geoFilters": [], + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/MicrosoftCdnWafPolicy2" + } + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_ValidateCustomDomain.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_ValidateCustomDomain.json new file mode 100644 index 000000000000..ff001cf6687a --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Endpoints_ValidateCustomDomain.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "customDomainProperties": { + "hostName": "www.someDomain.com" + } + }, + "responses": { + "200": { + "body": { + "customDomainValidated": true, + "message": null, + "reason": null + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Operations_List.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Operations_List.json new file mode 100644 index 000000000000..081de51e65db --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Operations_List.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "api-version": "2019-06-15" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Cdn/register/action", + "display": { + "provider": "Microsoft.Cdn", + "resource": "Microsoft.Cdn Resource Provider", + "operation": "Registers the Microsoft.Cdn Resource Provider" + } + }, + { + "name": "Microsoft.Cdn/edgenodes/read", + "display": { + "provider": "Microsoft.Cdn", + "resource": "EdgeNode", + "operation": "read" + } + }, + { + "name": "Microsoft.Cdn/edgenodes/write", + "display": { + "provider": "Microsoft.Cdn", + "resource": "EdgeNode", + "operation": "write" + } + }, + { + "name": "Microsoft.Cdn/edgenodes/delete", + "display": { + "provider": "Microsoft.Cdn", + "resource": "EdgeNode", + "operation": "delete" + } + }, + { + "name": "Microsoft.Cdn/profiles/read", + "display": { + "provider": "Microsoft.Cdn", + "resource": "Profile", + "operation": "read" + } + }, + { + "name": "Microsoft.Cdn/profiles/write", + "display": { + "provider": "Microsoft.Cdn", + "resource": "Profile", + "operation": "write" + } + }, + { + "name": "Microsoft.Cdn/operationresults/profileresults/write", + "display": { + "provider": "Microsoft.Cdn", + "resource": "Profile", + "operation": "write" + } + }, + { + "name": "Microsoft.Cdn/operationresults/profileresults/delete", + "display": { + "provider": "Microsoft.Cdn", + "resource": "Profile", + "operation": "delete" + } + }, + { + "name": "Microsoft.Cdn/operationresults/profileresults/CheckResourceUsage/action", + "display": { + "provider": "Microsoft.Cdn", + "resource": "Profile", + "operation": "CheckResourceUsage" + } + }, + { + "name": "Microsoft.Cdn/operationresults/profileresults/GenerateSsoUri/action", + "display": { + "provider": "Microsoft.Cdn", + "resource": "Profile", + "operation": "GenerateSsoUri" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Origins_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Origins_Get.json new file mode 100644 index 000000000000..fdd5dbb71875 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Origins_Get.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "originName": "www-someDomain-net" + }, + "responses": { + "200": { + "body": { + "name": "www-someDomain-net", + "location": "WestUs", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/origins", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "httpPort": null, + "httpsPort": null + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Origins_ListByEndpoint.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Origins_ListByEndpoint.json new file mode 100644 index 000000000000..2a7d21ac4410 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Origins_ListByEndpoint.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "www-someDomain-net", + "location": "WestUs", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/origins", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "httpPort": null, + "httpsPort": null + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Origins_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Origins_Update.json new file mode 100644 index 000000000000..d44cd8cd16a3 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Origins_Update.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "originName": "www-someDomain-net", + "originUpdateProperties": { + "properties": { + "httpPort": 42, + "httpsPort": 43 + } + } + }, + "responses": { + "200": { + "body": { + "name": "www-someDomain-net", + "location": "WestUs", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/origins", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "httpPort": 42, + "httpsPort": 43 + } + } + }, + "202": { + "body": { + "name": "www-someDomain-net", + "location": "WestUs", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/origins", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "httpPort": 42, + "httpsPort": 43 + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_Create.json new file mode 100644 index 000000000000..d41d40645002 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_Create.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "profile": { + "location": "WestCentralUs", + "sku": { + "name": "Standard_Verizon" + } + } + }, + "responses": { + "200": { + "body": { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": {}, + "location": "WestCentralUs", + "sku": { + "name": "Standard_Verizon" + }, + "properties": { + "provisioningState": "Creating", + "resourceState": "Creating" + } + } + }, + "201": { + "body": { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": {}, + "location": "WestCentralUs", + "sku": { + "name": "Standard_Verizon" + }, + "properties": { + "provisioningState": "Creating", + "resourceState": "Creating" + } + } + }, + "202": { + "body": { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": {}, + "location": "WestCentralUs", + "sku": { + "name": "Standard_Verizon" + }, + "properties": { + "provisioningState": "Creating", + "resourceState": "Creating" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_Delete.json new file mode 100644 index 000000000000..5b4325394d1d --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_GenerateSsoUri.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_GenerateSsoUri.json new file mode 100644 index 000000000000..4f22d15171d1 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_GenerateSsoUri.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": { + "body": { + "ssoUriValue": "https://someuri.com" + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_Get.json new file mode 100644 index 000000000000..c519c6c128c9 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_Get.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": { + "body": { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": {}, + "location": "WestCentralUs", + "sku": { + "name": "Standard_Akamai" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_List.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_List.json new file mode 100644 index 000000000000..51fa44ed1edc --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_List.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG1/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": {}, + "location": "WestCentralUs", + "sku": { + "name": "Standard_Akamai" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + }, + { + "name": "profile2", + "id": "/subscriptions/subid/resourcegroups/RG1/providers/Microsoft.Cdn/profiles/profile2", + "type": "Microsoft.Cdn/profiles", + "tags": {}, + "location": "WestCentralUs", + "sku": { + "name": "Standard_Akamai" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_ListByResourceGroup.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_ListByResourceGroup.json new file mode 100644 index 000000000000..7158dca4b260 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_ListByResourceGroup.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": {}, + "location": "WestCentralUs", + "sku": { + "name": "Standard_Akamai" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + }, + { + "name": "profile2", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile2", + "type": "Microsoft.Cdn/profiles", + "tags": {}, + "location": "WestCentralUs", + "sku": { + "name": "Standard_Akamai" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_ListResourceUsage.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_ListResourceUsage.json new file mode 100644 index 000000000000..5c0e616e0663 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_ListResourceUsage.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "endpoint", + "unit": "count", + "currentValue": 0, + "limit": 25 + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_ListSupportedOptimizationTypes.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_ListSupportedOptimizationTypes.json new file mode 100644 index 000000000000..96c28271c160 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_ListSupportedOptimizationTypes.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": { + "body": { + "supportedOptimizationTypes": [ + "GeneralWebDelivery", + "DynamicSiteAcceleration" + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_Update.json new file mode 100644 index 000000000000..7e01f44177a3 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/Profiles_Update.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "profileUpdateParameters": { + "tags": { + "additionalProperties": "Tag1" + } + } + }, + "responses": { + "200": { + "body": { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": { + "additionalProperties": "Tag1" + }, + "location": "WestCentralUs", + "sku": { + "name": "Standard_Verizon" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + }, + "202": { + "body": { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": { + "additionalProperties": "Tag1" + }, + "location": "WestCentralUs", + "sku": { + "name": "Standard_Verizon" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/ResourceUsage_List.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/ResourceUsage_List.json new file mode 100644 index 000000000000..c0804515e562 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/ResourceUsage_List.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "profile", + "unit": "count", + "currentValue": 31, + "limit": 200 + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/ValidateProbe.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/ValidateProbe.json new file mode 100644 index 000000000000..3ffb4c86b32b --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/ValidateProbe.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "validateProbeInput": { + "probeURL": "https://www.bing.com/image" + } + }, + "responses": { + "200": { + "body": { + "isValid": true, + "errorCode": "None", + "message": null + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafListManagedRuleSets.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafListManagedRuleSets.json new file mode 100644 index 000000000000..a4c343b3b81d --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafListManagedRuleSets.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "DefaultRuleSet_1.0", + "id": "/subscriptions/subid/providers/Microsoft.Cdn/CdnWebApplicationFirewallManagedRuleSets", + "type": "Microsoft.Cdn/cdnwebapplicationfirewallmanagedrulesets", + "sku": { + "name": "Standard_Microsoft" + }, + "properties": { + "provisioningState": "Succeeded", + "ruleSetType": "DefaultRuleSet", + "ruleSetVersion": "preview-1.0", + "ruleGroups": [ + { + "ruleGroupName": "Group1", + "description": "Description for rule group 1.", + "rules": [ + { + "ruleId": "GROUP1-0001", + "description": "Generic managed web application firewall rule." + }, + { + "ruleId": "GROUP1-0002", + "description": "Generic managed web application firewall rule." + } + ] + }, + { + "ruleGroupName": "Group2", + "description": "Description for rule group 2.", + "rules": [ + { + "ruleId": "GROUP2-0001", + "description": "Generic managed web application firewall rule." + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafListPolicies.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafListPolicies.json new file mode 100644 index 000000000000..fe06b030ca50 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafListPolicies.json @@ -0,0 +1,265 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "MicrosoftCdnWafPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/MicrosoftCdnWafPolicy", + "type": "Microsoft.Cdn/cdnwebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "sku": { + "name": "Standard_Microsoft" + }, + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "enabledState": "Enabled", + "mode": "Prevention", + "defaultRedirectUrl": "http://www.bing.com", + "defaultCustomBlockResponseStatusCode": 429, + "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" + }, + "rateLimitRules": { + "rules": [ + { + "name": "RateLimitRule1", + "priority": 1, + "enabledState": "Enabled", + "rateLimitDurationInMinutes": 0, + "rateLimitThreshold": 1000, + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "IPMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ], + "action": "Block" + } + ] + }, + "customRules": { + "rules": [ + { + "name": "CustomRule1", + "priority": 2, + "enabledState": "Enabled", + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "GeoMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "CH" + ] + }, + { + "matchVariable": "RequestHeader", + "selector": "UserAgent", + "operator": "Contains", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "windows" + ] + }, + { + "matchVariable": "QueryString", + "selector": "search", + "operator": "Contains", + "negateCondition": false, + "transforms": [ + "UrlDecode", + "Lowercase" + ], + "matchValue": [ + "" + ] + } + ], + "action": "Block" + } + ] + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "DefaultRuleSet", + "ruleSetVersion": "preview-1.0", + "ruleGroupOverrides": [ + { + "ruleGroupName": "Group1", + "rules": [ + { + "ruleId": "GROUP1-0001", + "enabledState": "Enabled", + "action": "Redirect" + }, + { + "ruleId": "GROUP1-0002", + "enabledState": "Disabled" + } + ] + } + ] + } + ] + }, + "endpointLinks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint2" + } + ] + } + }, + { + "name": "VerizonStandardCdnWafPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/VerizonStandardCdnWafPolicy", + "type": "Microsoft.Cdn/cdnwebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "sku": { + "name": "Standard_Verizon" + }, + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "enabledState": "Enabled", + "mode": "Prevention", + "defaultRedirectUrl": "http://www.bing.com", + "defaultCustomBlockResponseStatusCode": 429, + "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" + }, + "rateLimitRules": { + "rules": [ + { + "name": "RateLimitRule1", + "priority": 1, + "enabledState": "Enabled", + "rateLimitDurationInMinutes": 0, + "rateLimitThreshold": 1000, + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "IPMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ], + "action": "Block" + } + ] + }, + "customRules": { + "rules": [ + { + "name": "CustomRule1", + "priority": 2, + "enabledState": "Enabled", + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "GeoMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "CH" + ] + }, + { + "matchVariable": "RequestHeader", + "selector": "UserAgent", + "operator": "Contains", + "negateCondition": false, + "matchValue": [ + "windows" + ] + }, + { + "matchVariable": "QueryString", + "selector": "search", + "operator": "Contains", + "negateCondition": false, + "transforms": [ + "UrlDecode", + "Lowercase" + ], + "matchValue": [ + "" + ] + } + ], + "action": "Block" + } + ] + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "ECRS", + "ruleSetVersion": "2018-11-2", + "ruleGroupOverrides": [ + { + "ruleGroupName": "XSS", + "rules": [ + { + "ruleId": "XSS-0001", + "enabledState": "Enabled", + "action": "Redirect" + }, + { + "ruleId": "XSS-0002", + "enabledState": "Disabled" + } + ] + } + ] + } + ] + }, + "endpointLinks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint3" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafPatchPolicy.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafPatchPolicy.json new file mode 100644 index 000000000000..097f3387a82b --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafPatchPolicy.json @@ -0,0 +1,272 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "MicrosoftCdnWafPolicy", + "cdnWebApplicationFirewallPolicyPatchParameters": { + "tags": { + "foo": "bar" + } + } + }, + "responses": { + "200": { + "body": { + "name": "MicrosoftCdnWafPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/MicrosoftCdnWafPolicy", + "type": "Microsoft.Cdn/cdnwebapplicationfirewallpolicies", + "tags": { + "foo": "bar" + }, + "location": "WestUs", + "sku": { + "name": "Standard_Microsoft" + }, + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "enabledState": "Enabled", + "mode": "Prevention", + "defaultRedirectUrl": "http://www.bing.com", + "defaultCustomBlockResponseStatusCode": 403, + "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" + }, + "rateLimitRules": { + "rules": [ + { + "name": "RateLimitRule1", + "priority": 1, + "enabledState": "Enabled", + "rateLimitDurationInMinutes": 0, + "rateLimitThreshold": 1000, + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "IPMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ], + "action": "Block" + } + ] + }, + "customRules": { + "rules": [ + { + "name": "CustomRule1", + "priority": 2, + "enabledState": "Enabled", + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "GeoMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "CH" + ] + }, + { + "matchVariable": "RequestHeader", + "selector": "UserAgent", + "operator": "Contains", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "windows" + ] + }, + { + "matchVariable": "QueryString", + "selector": "search", + "operator": "Contains", + "negateCondition": false, + "transforms": [ + "UrlDecode", + "Lowercase" + ], + "matchValue": [ + "" + ] + } + ], + "action": "Block" + } + ] + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "DefaultRuleSet", + "ruleSetVersion": "preview-1.0", + "ruleGroupOverrides": [ + { + "ruleGroupName": "Group1", + "rules": [ + { + "ruleId": "GROUP1-0001", + "enabledState": "Enabled", + "action": "Redirect" + }, + { + "ruleId": "GROUP1-0002", + "enabledState": "Disabled" + } + ] + } + ] + } + ] + }, + "endpointLinks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint2" + } + ] + } + } + }, + "202": { + "body": { + "name": "MicrosoftCdnWafPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/MicrosoftCdnWafPolicy", + "type": "Microsoft.Cdn/cdnwebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "sku": { + "name": "Standard_Microsoft" + }, + "properties": { + "resourceState": "Creating", + "provisioningState": "Succeeded", + "policySettings": { + "enabledState": "Enabled", + "mode": "Prevention", + "defaultRedirectUrl": "http://www.bing.com", + "defaultCustomBlockResponseStatusCode": 403, + "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" + }, + "rateLimitRules": { + "rules": [ + { + "name": "RateLimitRule1", + "priority": 1, + "enabledState": "Enabled", + "rateLimitDurationInMinutes": 0, + "rateLimitThreshold": 1000, + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "IPMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ], + "action": "Block" + } + ] + }, + "customRules": { + "rules": [ + { + "name": "CustomRule1", + "priority": 2, + "enabledState": "Enabled", + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "GeoMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "CH" + ] + }, + { + "matchVariable": "RequestHeader", + "selector": "UserAgent", + "operator": "Contains", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "windows" + ] + }, + { + "matchVariable": "QueryString", + "selector": "search", + "operator": "Contains", + "negateCondition": false, + "transforms": [ + "UrlDecode", + "Lowercase" + ], + "matchValue": [ + "" + ] + } + ], + "action": "Block" + } + ] + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "DefaultRuleSet", + "ruleSetVersion": "preview-1.0", + "ruleGroupOverrides": [ + { + "ruleGroupName": "Group1", + "rules": [ + { + "ruleId": "GROUP1-0001", + "enabledState": "Enabled", + "action": "Redirect" + }, + { + "ruleId": "GROUP1-0002", + "enabledState": "Disabled" + } + ] + } + ] + } + ] + }, + "endpointLinks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint2" + } + ] + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafPolicyCreateOrUpdate.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafPolicyCreateOrUpdate.json new file mode 100644 index 000000000000..39cccc946483 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafPolicyCreateOrUpdate.json @@ -0,0 +1,505 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "MicrosoftCdnWafPolicy", + "cdnWebApplicationFirewallPolicy": { + "location": "WestUs", + "sku": { + "name": "Standard_Microsoft" + }, + "properties": { + "policySettings": { + "defaultRedirectUrl": "http://www.bing.com", + "defaultCustomBlockResponseStatusCode": 200, + "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" + }, + "rateLimitRules": { + "rules": [ + { + "name": "RateLimitRule1", + "priority": 1, + "enabledState": "Enabled", + "rateLimitDurationInMinutes": 0, + "rateLimitThreshold": 1000, + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "IPMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ], + "action": "Block" + } + ] + }, + "customRules": { + "rules": [ + { + "name": "CustomRule1", + "priority": 2, + "enabledState": "Enabled", + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "GeoMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "CH" + ] + }, + { + "matchVariable": "RequestHeader", + "selector": "UserAgent", + "operator": "Contains", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "windows" + ] + }, + { + "matchVariable": "QueryString", + "selector": "search", + "operator": "Contains", + "negateCondition": false, + "transforms": [ + "UrlDecode", + "Lowercase" + ], + "matchValue": [ + "" + ] + } + ], + "action": "Block" + } + ] + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "DefaultRuleSet", + "ruleSetVersion": "preview-1.0", + "ruleGroupOverrides": [ + { + "ruleGroupName": "Group1", + "rules": [ + { + "ruleId": "GROUP1-0001", + "enabledState": "Enabled", + "action": "Redirect" + }, + { + "ruleId": "GROUP1-0002", + "enabledState": "Disabled" + } + ] + } + ] + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "MicrosoftCdnWafPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/MicrosoftCdnWafPolicy", + "type": "Microsoft.Cdn/cdnwebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "sku": { + "name": "Standard_Microsoft" + }, + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "enabledState": "Enabled", + "mode": "Prevention", + "defaultRedirectUrl": "http://www.bing.com", + "defaultCustomBlockResponseStatusCode": 200, + "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" + }, + "rateLimitRules": { + "rules": [ + { + "name": "RateLimitRule1", + "priority": 1, + "enabledState": "Enabled", + "rateLimitDurationInMinutes": 0, + "rateLimitThreshold": 1000, + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "IPMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ], + "action": "Block" + } + ] + }, + "customRules": { + "rules": [ + { + "name": "CustomRule1", + "priority": 2, + "enabledState": "Enabled", + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "GeoMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "CH" + ] + }, + { + "matchVariable": "RequestHeader", + "selector": "UserAgent", + "operator": "Contains", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "windows" + ] + }, + { + "matchVariable": "QueryString", + "selector": "search", + "operator": "Contains", + "negateCondition": false, + "transforms": [ + "UrlDecode", + "Lowercase" + ], + "matchValue": [ + "" + ] + } + ], + "action": "Block" + } + ] + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "DefaultRuleSet", + "ruleSetVersion": "preview-1.0", + "ruleGroupOverrides": [ + { + "ruleGroupName": "Group1", + "rules": [ + { + "ruleId": "GROUP1-0001", + "enabledState": "Enabled", + "action": "Redirect" + }, + { + "ruleId": "GROUP1-0002", + "enabledState": "Disabled" + } + ] + } + ] + } + ] + }, + "endpointLinks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint2" + } + ] + } + } + }, + "201": { + "body": { + "name": "MicrosoftCdnWafPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/MicrosoftCdnWafPolicy", + "type": "Microsoft.Cdn/cdnwebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "sku": { + "name": "Standard_Microsoft" + }, + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "enabledState": "Enabled", + "mode": "Prevention", + "defaultRedirectUrl": "http://www.bing.com", + "defaultCustomBlockResponseStatusCode": 200, + "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" + }, + "rateLimitRules": { + "rules": [ + { + "name": "RateLimitRule1", + "priority": 1, + "enabledState": "Enabled", + "rateLimitDurationInMinutes": 0, + "rateLimitThreshold": 1000, + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "IPMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ], + "action": "Block" + } + ] + }, + "customRules": { + "rules": [ + { + "name": "CustomRule1", + "priority": 2, + "enabledState": "Enabled", + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "GeoMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "CH" + ] + }, + { + "matchVariable": "RequestHeader", + "selector": "UserAgent", + "operator": "Contains", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "windows" + ] + }, + { + "matchVariable": "QueryString", + "selector": "search", + "operator": "Contains", + "negateCondition": false, + "transforms": [ + "UrlDecode", + "Lowercase" + ], + "matchValue": [ + "" + ] + } + ], + "action": "Block" + } + ] + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "DefaultRuleSet", + "ruleSetVersion": "preview-1.0", + "ruleGroupOverrides": [ + { + "ruleGroupName": "Group1", + "rules": [ + { + "ruleId": "GROUP1-0001", + "enabledState": "Enabled", + "action": "Redirect" + }, + { + "ruleId": "GROUP1-0002", + "enabledState": "Disabled" + } + ] + } + ] + } + ] + }, + "endpointLinks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint2" + } + ] + } + } + }, + "202": { + "body": { + "name": "MicrosoftCdnWafPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/MicrosoftCdnWafPolicy", + "type": "Microsoft.Cdn/cdnwebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "sku": { + "name": "Standard_Microsoft" + }, + "properties": { + "resourceState": "Creating", + "provisioningState": "Succeeded", + "policySettings": { + "enabledState": "Enabled", + "mode": "Prevention", + "defaultRedirectUrl": "http://www.bing.com", + "defaultCustomBlockResponseStatusCode": 200, + "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" + }, + "rateLimitRules": { + "rules": [ + { + "name": "RateLimitRule1", + "priority": 1, + "enabledState": "Enabled", + "rateLimitDurationInMinutes": 0, + "rateLimitThreshold": 1000, + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "IPMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ], + "action": "Block" + } + ] + }, + "customRules": { + "rules": [ + { + "name": "CustomRule1", + "priority": 3, + "enabledState": "Enabled", + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "GeoMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "CH" + ] + }, + { + "matchVariable": "RequestHeader", + "selector": "UserAgent", + "operator": "Contains", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "windows" + ] + }, + { + "matchVariable": "QueryString", + "selector": "search", + "operator": "Contains", + "negateCondition": false, + "transforms": [ + "UrlDecode", + "Lowercase" + ], + "matchValue": [ + "" + ] + } + ], + "action": "Block" + } + ] + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "DefaultRuleSet", + "ruleSetVersion": "preview-1.0", + "ruleGroupOverrides": [ + { + "ruleGroupName": "Group1", + "rules": [ + { + "ruleId": "GROUP1-0001", + "enabledState": "Enabled", + "action": "Redirect" + }, + { + "ruleId": "GROUP1-0002", + "enabledState": "Disabled" + } + ] + } + ] + } + ] + }, + "endpointLinks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint2" + } + ] + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafPolicyDelete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafPolicyDelete.json new file mode 100644 index 000000000000..d5dfe788d78f --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafPolicyDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "Policy1" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafPolicyGet.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafPolicyGet.json new file mode 100644 index 000000000000..2525da1d6fb4 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-06-15/examples/WafPolicyGet.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "api-version": "2019-06-15", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "MicrosoftCdnWafPolicy" + }, + "responses": { + "200": { + "body": { + "name": "MicrosoftCdnWafPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/MicrosoftCdnWafPolicy", + "type": "Microsoft.Cdn/cdnwebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "sku": { + "name": "Standard_Microsoft" + }, + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "enabledState": "Enabled", + "mode": "Prevention", + "defaultRedirectUrl": "http://www.bing.com", + "defaultCustomBlockResponseStatusCode": 429, + "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" + }, + "rateLimitRules": { + "rules": [ + { + "name": "RateLimitRule1", + "priority": 1, + "enabledState": "Enabled", + "rateLimitDurationInMinutes": 0, + "rateLimitThreshold": 1000, + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "IPMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ], + "action": "Block" + } + ] + }, + "customRules": { + "rules": [ + { + "name": "CustomRule1", + "priority": 2, + "enabledState": "Enabled", + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "GeoMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "CH" + ] + }, + { + "matchVariable": "RequestHeader", + "selector": "UserAgent", + "operator": "Contains", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "windows" + ] + }, + { + "matchVariable": "QueryString", + "selector": "search", + "operator": "Contains", + "negateCondition": false, + "transforms": [ + "UrlDecode", + "Lowercase" + ], + "matchValue": [ + "" + ] + } + ], + "action": "Block" + } + ] + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "DefaultRuleSet", + "ruleSetVersion": "preview-1.0", + "ruleGroupOverrides": [ + { + "ruleGroupName": "Group1", + "rules": [ + { + "ruleId": "GROUP1-0001", + "enabledState": "Enabled", + "action": "Redirect" + }, + { + "ruleId": "GROUP1-0002", + "enabledState": "Disabled" + } + ] + } + ] + } + ] + }, + "endpointLinks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint2" + } + ] + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-12-31/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-12-31/cdn.json index 2d83acd4dca9..0972a7347200 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-12-31/cdn.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-12-31/cdn.json @@ -651,7 +651,7 @@ "tags": [ "Endpoints" ], - "description": "Updates an existing CDN endpoint with the specified endpoint name under the specified subscription, resource group and profile. Only tags can be updated after creating an endpoint. To update origins, use the Update Origin operation. To update origin groups, use the Update Origin group operation. To update custom domains, use the Update Custom Domain operation.", + "description": "Updates an existing CDN endpoint with the specified endpoint name under the specified subscription, resource group and profile. To update origins, use the Update Origin operation. To update origin groups, use the Update Origin Group operation. To update custom domains, use the Update Custom Domain operation.", "operationId": "Endpoints_Update", "x-ms-examples": { "Endpoints_Update": { @@ -2655,7 +2655,7 @@ } }, "originHostHeader": { - "description": "The host header value sent to the origin with each request. This property at Endpoint is only allowed when endpoint uses single origin and can be overridden by the same property specified at origin.If you leave this blank, the request hostname determines this value. Azure CDN origins, such as Web Apps, Blob Storage, and Cloud Services require this host header value to match the origin hostname by default.", + "description": "The host header value sent to the origin with each request. This property at Endpoint can only be set allowed when endpoint uses single origin. If you leave this blank, the request hostname determines this value. Azure CDN origins, such as Web Apps, Blob Storage, and Cloud Services require this host header value to match the origin hostname by default.", "type": "string" }, "isCompressionEnabled": { @@ -3761,7 +3761,8 @@ "ModifyRequestHeader", "ModifyResponseHeader", "UrlRedirect", - "UrlRewrite" + "UrlRewrite", + "OriginGroupOverride" ], "x-ms-enum": { "name": "DeliveryRuleAction", @@ -3892,6 +3893,44 @@ } } }, + "OriginGroupOverrideAction": { + "description": "Defines the Origin Group override action for the delivery rule.", + "x-ms-discriminator-value": "OriginGroupOverride", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleAction" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the action.", + "$ref": "#/definitions/OriginGroupOverrideActionParameters" + } + } + }, + "OriginGroupOverrideActionParameters": { + "description": "Defines the parameters for the Origin Group override action.", + "required": [ + "originGroup", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.OriginGroupOverrideActionParameters" + ] + }, + "originGroup": { + "description": "A reference to the origin group from where the content will be fetched from when CDN does not have it", + "type": "object", + "$ref": "#/definitions/ResourceReference" + } + } + }, "DeliveryRuleRequestHeaderAction": { "description": "Defines the request header action for the delivery rule.", "x-ms-discriminator-value": "ModifyRequestHeader", @@ -4138,7 +4177,7 @@ "exclusiveMinimum": false }, "originHostHeader": { - "description": "The host header value sent to the origin with each request. If you leave this blank, the request hostname determines this value. Azure CDN origins, such as Web Apps, Blob Storage, and Cloud Services require this host header value to match the origin hostname by default.", + "description": "The host header value sent to the origin with each request. If you leave this blank, the request hostname determines this value. Azure CDN origins, such as Web Apps, Blob Storage, and Cloud Services require this host header value to match the origin hostname by default. If endpoint uses multiple origins for load balancing, then the host header at endpoint is ignored and this one is considered.", "type": "string" }, "priority": { @@ -4377,7 +4416,7 @@ "exclusiveMinimum": false }, "originHostHeader": { - "description": "The host header value sent to the origin with each request. If you leave this blank, the request hostname determines this value. Azure CDN origins, such as Web Apps, Blob Storage, and Cloud Services require this host header value to match the origin hostname by default. This overrides the host header defined at Endpoint", + "description": "The host header value sent to the origin with each request. If you leave this blank, the request hostname determines this value. Azure CDN origins, such as Web Apps, Blob Storage, and Cloud Services require this host header value to match the origin hostname by default. If endpoint uses multiple origins for load balancing, then the host header at endpoint is ignored and this one is considered.", "type": "string" }, "priority": { diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-12-31/examples/Origins_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-12-31/examples/Origins_Create.json index d3c150a3c64c..c22f89554a0e 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-12-31/examples/Origins_Create.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2019-12-31/examples/Origins_Create.json @@ -8,9 +8,6 @@ "originName": "www-someDomain-net", "origin": { "location": "WestUs", - "tags": { - "key1": "value1" - }, "properties": { "hostName": "www.someDomain.net", "httpPort": 80, @@ -26,12 +23,9 @@ "200": { "body": { "name": "www-someDomain-net", - "location": "WestUs", - "tags": { - "key1": "value1" - }, "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-someDomain-net", "type": "Microsoft.Cdn/profiles/endpoints/origins", + "location": "WestUs", "properties": { "provisioningState": "Succeeded", "resourceState": "Active", @@ -48,12 +42,9 @@ "201": { "body": { "name": "www-someDomain-net", - "location": "WestUs", - "tags": { - "key1": "value1" - }, "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-someDomain-net", "type": "Microsoft.Cdn/profiles/endpoints/origins", + "location": "WestUs", "properties": { "provisioningState": "Succeeded", "resourceState": "Active", @@ -70,12 +61,9 @@ "202": { "body": { "name": "www-someDomain-net", - "location": "WestUs", - "tags": { - "key1": "value1" - }, "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-someDomain-net", "type": "Microsoft.Cdn/profiles/endpoints/origins", + "location": "WestUs", "properties": { "provisioningState": "Succeeded", "resourceState": "Active", diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/cdn.json new file mode 100644 index 000000000000..7b052709cb5f --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/cdn.json @@ -0,0 +1,5486 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-03-31", + "title": "CdnManagementClient", + "description": "Use these APIs to manage Azure CDN resources through the Azure Resource Manager. You must make sure that requests made to these resources are secure." + }, + "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.Cdn/profiles": { + "get": { + "tags": [ + "Profiles" + ], + "description": "Lists all of the CDN profiles within an Azure subscription.", + "operationId": "Profiles_List", + "x-ms-examples": { + "Profiles_List": { + "$ref": "./examples/Profiles_List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ProfileListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles": { + "get": { + "tags": [ + "Profiles" + ], + "description": "Lists all of the CDN profiles within a resource group.", + "operationId": "Profiles_ListByResourceGroup", + "x-ms-examples": { + "Profiles_ListByResourceGroup": { + "$ref": "./examples/Profiles_ListByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ProfileListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}": { + "get": { + "tags": [ + "Profiles" + ], + "description": "Gets a CDN profile with the specified profile name under the specified subscription and resource group.", + "operationId": "Profiles_Get", + "x-ms-examples": { + "Profiles_Get": { + "$ref": "./examples/Profiles_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Profile" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Profiles" + ], + "description": "Creates a new CDN profile with a profile name under the specified subscription and resource group.", + "operationId": "Profiles_Create", + "x-ms-examples": { + "Profiles_Create": { + "$ref": "./examples/Profiles_Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "description": "Profile properties needed to create a new profile.", + "in": "body", + "name": "profile", + "required": true, + "schema": { + "$ref": "#/definitions/Profile" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Profile" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new profile has been created.", + "schema": { + "$ref": "#/definitions/Profile" + } + }, + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Profile" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Profiles" + ], + "description": "Updates an existing CDN profile with the specified profile name under the specified subscription and resource group.", + "operationId": "Profiles_Update", + "x-ms-examples": { + "Profiles_Update": { + "$ref": "./examples/Profiles_Update.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "profileUpdateParameters", + "in": "body", + "description": "Profile properties needed to update an existing profile.", + "required": true, + "schema": { + "$ref": "#/definitions/ProfileUpdateParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Profile" + } + }, + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Profile" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Profiles" + ], + "description": "Deletes an existing CDN profile with the specified parameters. Deleting a profile will result in the deletion of all of the sub-resources including endpoints, origins and custom domains.", + "operationId": "Profiles_Delete", + "x-ms-examples": { + "Profiles_Delete": { + "$ref": "./examples/Profiles_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously." + }, + "204": { + "description": "No Content. The request has been accepted but the profile was not found." + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/generateSsoUri": { + "post": { + "tags": [ + "Profiles" + ], + "description": "Generates a dynamic SSO URI used to sign in to the CDN supplemental portal. Supplemental portal is used to configure advanced feature capabilities that are not yet available in the Azure portal, such as core reports in a standard profile; rules engine, advanced HTTP reports, and real-time stats and alerts in a premium profile. The SSO URI changes approximately every 10 minutes.", + "operationId": "Profiles_GenerateSsoUri", + "x-ms-examples": { + "Profiles_GenerateSsoUri": { + "$ref": "./examples/Profiles_GenerateSsoUri.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/SsoUri" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/getSupportedOptimizationTypes": { + "post": { + "tags": [ + "Profiles" + ], + "description": "Gets the supported optimization types for the current profile. A user can create an endpoint with an optimization type from the listed values.", + "operationId": "Profiles_ListSupportedOptimizationTypes", + "x-ms-examples": { + "Profiles_ListSupportedOptimizationTypes": { + "$ref": "./examples/Profiles_ListSupportedOptimizationTypes.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/SupportedOptimizationTypesListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/checkResourceUsage": { + "post": { + "tags": [ + "Profiles" + ], + "description": "Checks the quota and actual usage of endpoints under the given CDN profile.", + "operationId": "Profiles_ListResourceUsage", + "x-ms-examples": { + "Profiles_ListResourceUsage": { + "$ref": "./examples/Profiles_ListResourceUsage.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ResourceUsageListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints": { + "get": { + "tags": [ + "Endpoints" + ], + "description": "Lists existing CDN endpoints.", + "operationId": "Endpoints_ListByProfile", + "x-ms-examples": { + "Endpoints_ListByProfile": { + "$ref": "./examples/Endpoints_ListByProfile.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/EndpointListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}": { + "get": { + "tags": [ + "Endpoints" + ], + "description": "Gets an existing CDN endpoint with the specified endpoint name under the specified subscription, resource group and profile.", + "operationId": "Endpoints_Get", + "x-ms-examples": { + "Endpoints_Get": { + "$ref": "./examples/Endpoints_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Endpoints" + ], + "description": "Creates a new CDN endpoint with the specified endpoint name under the specified subscription, resource group and profile.", + "operationId": "Endpoints_Create", + "x-ms-examples": { + "Endpoints_Create": { + "$ref": "./examples/Endpoints_Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "endpoint", + "in": "body", + "description": "Endpoint properties", + "required": true, + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new endpoint has been created.", + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Endpoints" + ], + "description": "Updates an existing CDN endpoint with the specified endpoint name under the specified subscription, resource group and profile. Only tags can be updated after creating an endpoint. To update origins, use the Update Origin operation. To update origin groups, use the Update Origin group operation. To update custom domains, use the Update Custom Domain operation.", + "operationId": "Endpoints_Update", + "x-ms-examples": { + "Endpoints_Update": { + "$ref": "./examples/Endpoints_Update.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "endpointUpdateProperties", + "in": "body", + "description": "Endpoint update properties", + "required": true, + "schema": { + "$ref": "#/definitions/EndpointUpdateParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously", + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + "default": { + "description": "CDN error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Endpoints" + ], + "description": "Deletes an existing CDN endpoint with the specified endpoint name under the specified subscription, resource group and profile.", + "operationId": "Endpoints_Delete", + "x-ms-examples": { + "Endpoints_Delete": { + "$ref": "./examples/Endpoints_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "No Content. The request has been accepted but the endpoint was not found." + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/start": { + "post": { + "tags": [ + "Endpoints" + ], + "description": "Starts an existing CDN endpoint that is on a stopped state.", + "operationId": "Endpoints_Start", + "x-ms-examples": { + "Endpoints_Start": { + "$ref": "./examples/Endpoints_Start.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/stop": { + "post": { + "tags": [ + "Endpoints" + ], + "description": "Stops an existing running CDN endpoint.", + "operationId": "Endpoints_Stop", + "x-ms-examples": { + "Endpoints_Stop": { + "$ref": "./examples/Endpoints_Stop.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/purge": { + "post": { + "tags": [ + "Endpoints" + ], + "description": "Removes a content from CDN.", + "operationId": "Endpoints_PurgeContent", + "x-ms-examples": { + "Endpoints_PurgeContent": { + "$ref": "./examples/Endpoints_PurgeContent.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "contentFilePaths", + "in": "body", + "description": "The path to the content to be purged. Path can be a full URL, e.g. '/pictures/city.png' which removes a single file, or a directory with a wildcard, e.g. '/pictures/*' which removes all folders and files in the directory.", + "required": true, + "schema": { + "$ref": "#/definitions/PurgeParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/load": { + "post": { + "tags": [ + "Endpoints" + ], + "description": "Pre-loads a content to CDN. Available for Verizon Profiles.", + "operationId": "Endpoints_LoadContent", + "x-ms-examples": { + "Endpoints_LoadContent": { + "$ref": "./examples/Endpoints_LoadContent.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "contentFilePaths", + "in": "body", + "description": "The path to the content to be loaded. Path should be a full URL, e.g. ‘/pictures/city.png' which loads a single file ", + "required": true, + "schema": { + "$ref": "#/definitions/LoadParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/validateCustomDomain": { + "post": { + "tags": [ + "Endpoints" + ], + "description": "Validates the custom domain mapping to ensure it maps to the correct CDN endpoint in DNS.", + "operationId": "Endpoints_ValidateCustomDomain", + "x-ms-examples": { + "Endpoints_ValidateCustomDomain": { + "$ref": "./examples/Endpoints_ValidateCustomDomain.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "customDomainProperties", + "in": "body", + "description": "Custom domain to be validated.", + "required": true, + "schema": { + "$ref": "#/definitions/ValidateCustomDomainInput" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ValidateCustomDomainOutput" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/checkResourceUsage": { + "post": { + "tags": [ + "Endpoints" + ], + "description": "Checks the quota and usage of geo filters and custom domains under the given endpoint.", + "operationId": "Endpoints_ListResourceUsage", + "x-ms-examples": { + "Endpoints_ListResourceUsage": { + "$ref": "./examples/Endpoints_ListResourceUsage.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ResourceUsageListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/origins": { + "get": { + "tags": [ + "Origins" + ], + "description": "Lists all of the existing origins within an endpoint.", + "operationId": "Origins_ListByEndpoint", + "x-ms-examples": { + "Origins_ListByEndpoint": { + "$ref": "./examples/Origins_ListByEndpoint.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OriginListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/origins/{originName}": { + "get": { + "tags": [ + "Origins" + ], + "description": "Gets an existing origin within an endpoint.", + "operationId": "Origins_Get", + "x-ms-examples": { + "Origins_Get": { + "$ref": "./examples/Origins_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "originName", + "in": "path", + "description": "Name of the origin which is unique within the endpoint.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Origin" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Origins" + ], + "description": "Creates a new origin within the specified endpoint.", + "operationId": "Origins_Create", + "x-ms-examples": { + "Origins_Create": { + "$ref": "./examples/Origins_Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "originName", + "in": "path", + "description": "Name of the origin that is unique within the endpoint.", + "required": true, + "type": "string" + }, + { + "name": "origin", + "in": "body", + "description": "Origin properties", + "required": true, + "schema": { + "$ref": "#/definitions/Origin" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Origin" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new origin has been created.", + "schema": { + "$ref": "#/definitions/Origin" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Origin" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Origins" + ], + "description": "Updates an existing origin within an endpoint.", + "operationId": "Origins_Update", + "x-ms-examples": { + "Origins_Update": { + "$ref": "./examples/Origins_Update.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "originName", + "in": "path", + "description": "Name of the origin which is unique within the endpoint.", + "required": true, + "type": "string" + }, + { + "name": "originUpdateProperties", + "in": "body", + "description": "Origin properties", + "required": true, + "schema": { + "$ref": "#/definitions/OriginUpdateParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Origin" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Origin" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Origins" + ], + "description": "Deletes an existing origin within an endpoint.", + "operationId": "Origins_Delete", + "x-ms-examples": { + "Origins_Delete": { + "$ref": "./examples/Origins_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "originName", + "in": "path", + "description": "Name of the origin which is unique within the endpoint.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "No Content. The request has been accepted but the origin was not found." + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/originGroups": { + "get": { + "tags": [ + "OriginGroups" + ], + "description": "Lists all of the existing origin groups within an endpoint.", + "operationId": "OriginGroups_ListByEndpoint", + "x-ms-examples": { + "OriginsGroups_ListByEndpoint": { + "$ref": "./examples/OriginGroups_ListByEndpoint.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OriginGroupListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/originGroups/{originGroupName}": { + "get": { + "tags": [ + "OriginGroups" + ], + "description": "Gets an existing origin group within an endpoint.", + "operationId": "OriginGroups_Get", + "x-ms-examples": { + "OriginGroups_Get": { + "$ref": "./examples/OriginGroups_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "originGroupName", + "in": "path", + "description": "Name of the origin group which is unique within the endpoint.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OriginGroup" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "OriginGroups" + ], + "description": "Creates a new origin group within the specified endpoint.", + "operationId": "OriginGroups_Create", + "x-ms-examples": { + "OriginGroups_Create": { + "$ref": "./examples/OriginGroups_Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "originGroupName", + "in": "path", + "description": "Name of the origin group which is unique within the endpoint.", + "required": true, + "type": "string" + }, + { + "name": "originGroup", + "in": "body", + "description": "Origin group properties", + "required": true, + "schema": { + "$ref": "#/definitions/OriginGroup" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OriginGroup" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new origin group has been created.", + "schema": { + "$ref": "#/definitions/OriginGroup" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/OriginGroup" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "OriginGroups" + ], + "description": "Updates an existing origin group within an endpoint.", + "operationId": "OriginGroups_Update", + "x-ms-examples": { + "OriginGroups_Update": { + "$ref": "./examples/OriginGroups_Update.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "originGroupName", + "in": "path", + "description": "Name of the origin group which is unique within the endpoint.", + "required": true, + "type": "string" + }, + { + "name": "originGroupUpdateProperties", + "in": "body", + "description": "Origin group properties", + "required": true, + "schema": { + "$ref": "#/definitions/OriginGroupUpdateParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OriginGroup" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/OriginGroup" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "OriginGroups" + ], + "description": "Deletes an existing origin group within an endpoint.", + "operationId": "OriginGroups_Delete", + "x-ms-examples": { + "OriginGroups_Delete": { + "$ref": "./examples/OriginGroups_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "originGroupName", + "in": "path", + "description": "Name of the origin group which is unique within the endpoint.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "No Content. The request has been accepted but the origin was not found." + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/customDomains": { + "get": { + "tags": [ + "CustomDomains" + ], + "description": "Lists all of the existing custom domains within an endpoint.", + "operationId": "CustomDomains_ListByEndpoint", + "x-ms-examples": { + "CustomDomains_ListByEndpoint": { + "$ref": "./examples/CustomDomains_ListByEndpoint.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CustomDomainListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/customDomains/{customDomainName}": { + "get": { + "tags": [ + "CustomDomains" + ], + "description": "Gets an existing custom domain within an endpoint.", + "operationId": "CustomDomains_Get", + "x-ms-examples": { + "CustomDomains_Get": { + "$ref": "./examples/CustomDomains_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "customDomainName", + "in": "path", + "description": "Name of the custom domain within an endpoint.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CustomDomain" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "CustomDomains" + ], + "description": "Creates a new custom domain within an endpoint.", + "operationId": "CustomDomains_Create", + "x-ms-examples": { + "CustomDomains_Create": { + "$ref": "./examples/CustomDomains_Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "customDomainName", + "in": "path", + "description": "Name of the custom domain within an endpoint.", + "required": true, + "type": "string" + }, + { + "name": "customDomainProperties", + "in": "body", + "description": "Properties required to create a new custom domain.", + "required": true, + "schema": { + "$ref": "#/definitions/CustomDomainParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CustomDomain" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new custom domain has been created.", + "schema": { + "$ref": "#/definitions/CustomDomain" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/CustomDomain" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "CustomDomains" + ], + "description": "Deletes an existing custom domain within an endpoint.", + "operationId": "CustomDomains_Delete", + "x-ms-examples": { + "CustomDomains_Delete": { + "$ref": "./examples/CustomDomains_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "customDomainName", + "in": "path", + "description": "Name of the custom domain within an endpoint.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/CustomDomain" + } + }, + "204": { + "description": "No Content. The request has been accepted but the custom domain was not found" + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/customDomains/{customDomainName}/disableCustomHttps": { + "post": { + "tags": [ + "CustomDomains" + ], + "description": "Disable https delivery of the custom domain.", + "operationId": "CustomDomains_DisableCustomHttps", + "x-ms-examples": { + "CustomDomains_DisableCustomHttps": { + "$ref": "./examples/CustomDomains_DisableCustomHttps.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "customDomainName", + "in": "path", + "description": "Name of the custom domain within an endpoint.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/CustomDomain" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/customDomains/{customDomainName}/enableCustomHttps": { + "post": { + "tags": [ + "CustomDomains" + ], + "description": "Enable https delivery of the custom domain.", + "operationId": "CustomDomains_EnableCustomHttps", + "x-ms-examples": { + "CustomDomains_EnableCustomHttpsUsingYourOwnCertificate": { + "$ref": "./examples/CustomDomains_EnableCustomHttpsUsingBYOC.json" + }, + "CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate": { + "$ref": "./examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "customDomainName", + "in": "path", + "description": "Name of the custom domain within an endpoint.", + "required": true, + "type": "string" + }, + { + "name": "customDomainHttpsParameters", + "in": "body", + "description": "The configuration specifying how to enable HTTPS for the custom domain - using CDN managed certificate or user's own certificate. If not specified, enabling ssl uses CDN managed certificate by default.", + "required": false, + "schema": { + "$ref": "#/definitions/CustomDomainHttpsParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/CustomDomain" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Cdn/checkNameAvailability": { + "post": { + "tags": [ + "CheckNameAvailability" + ], + "description": "Check the availability of a resource name. This is needed for resources where name is globally unique, such as a CDN endpoint.", + "operationId": "CheckNameAvailability", + "x-ms-examples": { + "CheckNameAvailability": { + "$ref": "./examples/CheckNameAvailability.json" + } + }, + "parameters": [ + { + "name": "checkNameAvailabilityInput", + "in": "body", + "description": "Input to check.", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityInput" + } + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityOutput" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Cdn/checkNameAvailability": { + "post": { + "tags": [ + "CheckNameAvailabilityWithSubscription" + ], + "description": "Check the availability of a resource name. This is needed for resources where name is globally unique, such as a CDN endpoint.", + "operationId": "CheckNameAvailabilityWithSubscription", + "x-ms-examples": { + "CheckNameAvailabilityWithSubscription": { + "$ref": "./examples/CheckNameAvailabilityWithSubscription.json" + } + }, + "parameters": [ + { + "name": "checkNameAvailabilityInput", + "in": "body", + "description": "Input to check.", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityInput" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityOutput" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Cdn/validateProbe": { + "post": { + "tags": [ + "ValidateProbe" + ], + "description": "Check if the probe path is a valid path and the file can be accessed. Probe path is the path to a file hosted on the origin server to help accelerate the delivery of dynamic content via the CDN endpoint. This path is relative to the origin path specified in the endpoint configuration.", + "operationId": "ValidateProbe", + "x-ms-examples": { + "ValidateProbe": { + "$ref": "./examples/ValidateProbe.json" + } + }, + "parameters": [ + { + "name": "validateProbeInput", + "in": "body", + "description": "Input to check.", + "required": true, + "schema": { + "$ref": "#/definitions/ValidateProbeInput" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ValidateProbeOutput" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Cdn/checkResourceUsage": { + "post": { + "tags": [ + "CheckResourceUsage" + ], + "description": "Check the quota and actual usage of the CDN profiles under the given subscription.", + "operationId": "ResourceUsage_List", + "x-ms-examples": { + "ResourceUsage_List": { + "$ref": "./examples/ResourceUsage_List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ResourceUsageListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Cdn/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all of the available CDN REST API operations.", + "operationId": "Operations_List", + "x-ms-examples": { + "Operations_List": { + "$ref": "./examples/Operations_List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationsListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Cdn/edgenodes": { + "get": { + "tags": [ + "Edgenodes" + ], + "description": "Edgenodes are the global Point of Presence (POP) locations used to deliver CDN content to end users.", + "operationId": "EdgeNodes_List", + "x-ms-examples": { + "EdgeNodes_List": { + "$ref": "./examples/EdgeNodes_List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/EdgenodeResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "Profile": { + "description": "CDN profile is a logical grouping of endpoints that share the same settings, such as CDN provider and pricing tier.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "properties": { + "sku": { + "description": "The pricing tier (defines a CDN provider, feature list and rate) of the CDN profile.", + "$ref": "#/definitions/Sku" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProfileProperties" + } + }, + "required": [ + "sku" + ] + }, + "ProfileProperties": { + "description": "The JSON object that contains the properties required to create a profile.", + "properties": { + "resourceState": { + "description": "Resource status of the profile.", + "readOnly": true, + "enum": [ + "Creating", + "Active", + "Deleting", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "ProfileResourceState", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "description": "Provisioning status of the profile.", + "type": "string" + } + } + }, + "ProfileListResult": { + "description": "Result of the request to list profiles. It contains a list of profile objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Profile" + }, + "description": "List of CDN profiles within a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of profile objects if there are any." + } + } + }, + "ProfileUpdateParameters": { + "type": "object", + "description": "Properties required to update a profile.", + "properties": { + "tags": { + "description": "Profile tags", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "x-ms-azure-resource": true + }, + "SsoUri": { + "description": "The URI required to login to the supplemental portal from the Azure portal.", + "type": "object", + "properties": { + "ssoUriValue": { + "description": "The URI used to login to the supplemental portal.", + "readOnly": true, + "type": "string" + } + } + }, + "SupportedOptimizationTypesListResult": { + "description": "The result of the GetSupportedOptimizationTypes API", + "type": "object", + "properties": { + "supportedOptimizationTypes": { + "description": "Supported optimization types for a profile.", + "readOnly": true, + "items": { + "$ref": "#/definitions/OptimizationType" + }, + "type": "array" + } + } + }, + "Endpoint": { + "description": "CDN endpoint is the entity within a CDN profile containing configuration information such as origin, protocol, content caching and delivery behavior. The CDN endpoint uses the URL format .azureedge.net.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/EndpointProperties" + } + } + }, + "EndpointProperties": { + "description": "The JSON object that contains the properties required to create an endpoint.", + "required": [ + "origins" + ], + "allOf": [ + { + "$ref": "#/definitions/EndpointPropertiesUpdateParameters" + } + ], + "properties": { + "hostName": { + "description": "The host name of the endpoint structured as {endpointName}.{DNSZone}, e.g. contoso.azureedge.net", + "type": "string", + "readOnly": true + }, + "origins": { + "description": "The source of the content being delivered via CDN.", + "type": "array", + "items": { + "$ref": "#/definitions/DeepCreatedOrigin" + } + }, + "originGroups": { + "description": "The origin groups comprising of origins that are used for load balancing the traffic based on availability.", + "type": "array", + "items": { + "$ref": "#/definitions/DeepCreatedOriginGroup" + } + }, + "resourceState": { + "description": "Resource status of the endpoint.", + "readOnly": true, + "enum": [ + "Creating", + "Deleting", + "Running", + "Starting", + "Stopped", + "Stopping" + ], + "type": "string", + "x-ms-enum": { + "name": "EndpointResourceState", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "description": "Provisioning status of the endpoint.", + "type": "string" + } + } + }, + "EndpointListResult": { + "description": "Result of the request to list endpoints. It contains a list of endpoint objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Endpoint" + }, + "description": "List of CDN endpoints within a profile" + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of endpoint objects if there is any." + } + } + }, + "EndpointUpdateParameters": { + "type": "object", + "description": "Properties required to create or update an endpoint.", + "properties": { + "tags": { + "description": "Endpoint tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/EndpointPropertiesUpdateParameters" + } + }, + "x-ms-azure-resource": true + }, + "EndpointPropertiesUpdateParameters": { + "description": "The JSON object containing endpoint update parameters.", + "properties": { + "originPath": { + "description": "A directory path on the origin that CDN can use to retrieve content from, e.g. contoso.cloudapp.net/originpath.", + "type": "string" + }, + "contentTypesToCompress": { + "description": "List of content types on which compression applies. The value should be a valid MIME type.", + "type": "array", + "items": { + "type": "string" + } + }, + "originHostHeader": { + "description": "The host header value sent to the origin with each request. This property at Endpoint is only allowed when endpoint uses single origin and can be overridden by the same property specified at origin.If you leave this blank, the request hostname determines this value. Azure CDN origins, such as Web Apps, Blob Storage, and Cloud Services require this host header value to match the origin hostname by default.", + "type": "string" + }, + "isCompressionEnabled": { + "description": "Indicates whether content compression is enabled on CDN. Default value is false. If compression is enabled, content will be served as compressed if user requests for a compressed version. Content won't be compressed on CDN when requested content is smaller than 1 byte or larger than 1 MB.", + "type": "boolean" + }, + "isHttpAllowed": { + "description": "Indicates whether HTTP traffic is allowed on the endpoint. Default value is true. At least one protocol (HTTP or HTTPS) must be allowed.", + "type": "boolean" + }, + "isHttpsAllowed": { + "description": "Indicates whether HTTPS traffic is allowed on the endpoint. Default value is true. At least one protocol (HTTP or HTTPS) must be allowed.", + "type": "boolean" + }, + "queryStringCachingBehavior": { + "description": "Defines how CDN caches requests that include query strings. You can ignore any query strings when caching, bypass caching to prevent requests that contain query strings from being cached, or cache every request with a unique URL.", + "$ref": "#/definitions/QueryStringCachingBehavior" + }, + "optimizationType": { + "description": "Specifies what scenario the customer wants this CDN endpoint to optimize for, e.g. Download, Media services. With this information, CDN can apply scenario driven optimization.", + "$ref": "#/definitions/OptimizationType" + }, + "probePath": { + "description": "Path to a file hosted on the origin which helps accelerate delivery of the dynamic content and calculate the most optimal routes for the CDN. This is relative to the origin path. This property is only relevant when using a single origin.", + "type": "string" + }, + "geoFilters": { + "description": "List of rules defining the user's geo access within a CDN endpoint. Each geo filter defines an access rule to a specified path or content, e.g. block APAC for path /pictures/", + "type": "array", + "items": { + "$ref": "#/definitions/GeoFilter" + } + }, + "defaultOriginGroup": { + "description": "A reference to the origin group.", + "type": "object", + "$ref": "#/definitions/ResourceReference" + }, + "urlSigningKeys": { + "description": "List of keys used to validate the signed URL hashes.", + "type": "array", + "$ref": "#/definitions/UrlSigningKey" + }, + "deliveryPolicy": { + "description": "A policy that specifies the delivery rules to be used for an endpoint.", + "type": "object", + "required": [ + "rules" + ], + "properties": { + "description": { + "description": "User-friendly description of the policy.", + "type": "string" + }, + "rules": { + "description": "A list of the delivery rules.", + "type": "array", + "items": { + "$ref": "#/definitions/DeliveryRule" + } + } + } + }, + "webApplicationFirewallPolicyLink": { + "description": "Defines the Web Application Firewall policy for the endpoint (if applicable)", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + } + } + } + } + }, + "DeliveryRule": { + "description": "A rule that specifies a set of actions and conditions", + "type": "object", + "required": [ + "order", + "actions" + ], + "properties": { + "name": { + "description": "Name of the rule", + "type": "string" + }, + "order": { + "description": "The order in which the rules are applied for the endpoint. Possible values {0,1,2,3,………}. A rule with a lesser order will be applied before a rule with a greater order. Rule with order 0 is a special rule. It does not require any condition and actions listed in it will always be applied.", + "type": "integer" + }, + "conditions": { + "description": "A list of conditions that must be matched for the actions to be executed", + "type": "array", + "items": { + "$ref": "#/definitions/DeliveryRuleCondition" + } + }, + "actions": { + "description": "A list of actions that are executed when all the conditions of a rule are satisfied.", + "type": "array", + "items": { + "$ref": "#/definitions/DeliveryRuleAction" + } + } + } + }, + "DeliveryRuleCondition": { + "description": "A condition for the delivery rule.", + "discriminator": "name", + "required": [ + "name" + ], + "properties": { + "name": { + "description": "The name of the condition for the delivery rule.", + "type": "string", + "enum": [ + "RemoteAddress", + "RequestMethod", + "QueryString", + "PostArgs", + "RequestUri", + "RequestHeader", + "RequestBody", + "RequestScheme", + "UrlPath", + "UrlFileExtension", + "UrlFileName", + "HttpVersion", + "Cookies", + "IsDevice" + ], + "x-ms-enum": { + "name": "MatchVariable", + "modelAsString": true + } + } + } + }, + "DeliveryRuleRemoteAddressCondition": { + "description": "Defines the RemoteAddress condition for the delivery rule.", + "x-ms-discriminator-value": "RemoteAddress", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/RemoteAddressMatchConditionParameters" + } + } + }, + "DeliveryRuleRequestMethodCondition": { + "description": "Defines the RequestMethod condition for the delivery rule.", + "x-ms-discriminator-value": "RequestMethod", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/RequestMethodMatchConditionParameters" + } + } + }, + "DeliveryRuleQueryStringCondition": { + "description": "Defines the QueryString condition for the delivery rule.", + "x-ms-discriminator-value": "QueryString", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/QueryStringMatchConditionParameters" + } + } + }, + "DeliveryRulePostArgsCondition": { + "description": "Defines the PostArgs condition for the delivery rule.", + "x-ms-discriminator-value": "PostArgs", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/PostArgsMatchConditionParameters" + } + } + }, + "DeliveryRuleRequestUriCondition": { + "description": "Defines the RequestUri condition for the delivery rule.", + "x-ms-discriminator-value": "RequestUri", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/RequestUriMatchConditionParameters" + } + } + }, + "DeliveryRuleRequestHeaderCondition": { + "description": "Defines the RequestHeader condition for the delivery rule.", + "x-ms-discriminator-value": "RequestHeader", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/RequestHeaderMatchConditionParameters" + } + } + }, + "DeliveryRuleRequestBodyCondition": { + "description": "Defines the RequestBody condition for the delivery rule.", + "x-ms-discriminator-value": "RequestBody", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/RequestBodyMatchConditionParameters" + } + } + }, + "DeliveryRuleRequestSchemeCondition": { + "description": "Defines the RequestScheme condition for the delivery rule.", + "x-ms-discriminator-value": "RequestScheme", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/RequestSchemeMatchConditionParameters" + } + } + }, + "DeliveryRuleUrlPathCondition": { + "description": "Defines the UrlPath condition for the delivery rule.", + "x-ms-discriminator-value": "UrlPath", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/UrlPathMatchConditionParameters" + } + } + }, + "DeliveryRuleUrlFileExtensionCondition": { + "description": "Defines the UrlFileExtension condition for the delivery rule.", + "x-ms-discriminator-value": "UrlFileExtension", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/UrlFileExtensionMatchConditionParameters" + } + } + }, + "DeliveryRuleUrlFileNameCondition": { + "description": "Defines the UrlFileName condition for the delivery rule.", + "x-ms-discriminator-value": "UrlFileName", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/UrlFileNameMatchConditionParameters" + } + } + }, + "DeliveryRuleHttpVersionCondition": { + "description": "Defines the HttpVersion condition for the delivery rule.", + "x-ms-discriminator-value": "HttpVersion", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/HttpVersionMatchConditionParameters" + } + } + }, + "DeliveryRuleCookiesCondition": { + "description": "Defines the Cookies condition for the delivery rule.", + "x-ms-discriminator-value": "Cookies", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/CookiesMatchConditionParameters" + } + } + }, + "DeliveryRuleIsDeviceCondition": { + "description": "Defines the IsDevice condition for the delivery rule.", + "x-ms-discriminator-value": "IsDevice", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/IsDeviceMatchConditionParameters" + } + } + }, + "RemoteAddressMatchConditionParameters": { + "description": "Defines the parameters for RemoteAddress match conditions", + "required": [ + "operator", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleRemoteAddressConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "IPMatch", + "GeoMatch" + ], + "x-ms-enum": { + "name": "RemoteAddressOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "Match values to match against. The operator will apply to each value in here with OR semantics. If any of them match the variable with the given operator this match condition is considered a match.", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "RequestMethodMatchConditionParameters": { + "description": "Defines the parameters for RequestMethod match conditions", + "required": [ + "operator", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleRequestMethodConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Equal" + ], + "x-ms-enum": { + "name": "RequestMethodOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string", + "enum": [ + "GET", + "HEAD", + "POST", + "PUT", + "DELETE", + "OPTIONS", + "TRACE" + ] + } + } + } + }, + "QueryStringMatchConditionParameters": { + "description": "Defines the parameters for QueryString match conditions", + "required": [ + "operator", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleQueryStringConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual" + ], + "x-ms-enum": { + "name": "QueryStringOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "PostArgsMatchConditionParameters": { + "description": "Defines the parameters for PostArgs match conditions", + "required": [ + "operator", + "matchValues", + "selector", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRulePostArgsConditionParameters" + ] + }, + "selector": { + "description": "Name of PostArg to be matched", + "type": "string" + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual" + ], + "x-ms-enum": { + "name": "PostArgsOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "RequestUriMatchConditionParameters": { + "description": "Defines the parameters for RequestUri match conditions", + "required": [ + "operator", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleRequestUriConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual" + ], + "x-ms-enum": { + "name": "RequestUriOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "RequestHeaderMatchConditionParameters": { + "description": "Defines the parameters for RequestHeader match conditions", + "required": [ + "operator", + "matchValues", + "selector", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleRequestHeaderConditionParameters" + ] + }, + "selector": { + "description": "Name of Header to be matched", + "type": "string" + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual" + ], + "x-ms-enum": { + "name": "RequestHeaderOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "RequestBodyMatchConditionParameters": { + "description": "Defines the parameters for RequestBody match conditions", + "required": [ + "operator", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleRequestBodyConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual" + ], + "x-ms-enum": { + "name": "RequestBodyOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "RequestSchemeMatchConditionParameters": { + "description": "Defines the parameters for RequestScheme match conditions ", + "required": [ + "operator", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleRequestSchemeConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Equal" + ] + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string", + "enum": [ + "HTTP", + "HTTPS" + ] + } + } + } + }, + "UrlPathMatchConditionParameters": { + "description": "Defines the parameters for UrlPath match conditions", + "required": [ + "operator", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleUrlPathMatchConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual", + "Wildcard" + ], + "x-ms-enum": { + "name": "UrlPathOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "UrlFileExtensionMatchConditionParameters": { + "description": "Defines the parameters for UrlFileExtension match conditions", + "required": [ + "operator", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleUrlFileExtensionMatchConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual" + ], + "x-ms-enum": { + "name": "UrlFileExtensionOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "UrlFileNameMatchConditionParameters": { + "description": "Defines the parameters for UrlFilename match conditions", + "required": [ + "operator", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleUrlFilenameConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual" + ], + "x-ms-enum": { + "name": "UrlFileNameOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "HttpVersionMatchConditionParameters": { + "description": "Defines the parameters for HttpVersion match conditions", + "required": [ + "operator", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleHttpVersionConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Equal" + ], + "x-ms-enum": { + "name": "HttpVersionOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "CookiesMatchConditionParameters": { + "description": "Defines the parameters for Cookies match conditions", + "required": [ + "operator", + "matchValues", + "selector", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleCookiesConditionParameters" + ] + }, + "selector": { + "description": "Name of Cookies to be matched", + "type": "string" + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual" + ], + "x-ms-enum": { + "name": "CookiesOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "IsDeviceMatchConditionParameters": { + "description": "Defines the parameters for IsDevice match conditions", + "required": [ + "operator", + "matchValues", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleIsDeviceConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Equal" + ], + "x-ms-enum": { + "name": "IsDeviceOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string", + "enum": [ + "Mobile", + "Desktop" + ] + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "DeliveryRuleAction": { + "description": "An action for the delivery rule.", + "discriminator": "name", + "required": [ + "name" + ], + "properties": { + "name": { + "description": "The name of the action for the delivery rule.", + "type": "string", + "enum": [ + "CacheExpiration", + "CacheKeyQueryString", + "ModifyRequestHeader", + "ModifyResponseHeader", + "UrlRedirect", + "UrlRewrite", + "UrlSigning" + ], + "x-ms-enum": { + "name": "DeliveryRuleAction", + "modelAsString": true + } + } + } + }, + "UrlRedirectAction": { + "description": "Defines the url redirect action for the delivery rule.", + "x-ms-discriminator-value": "UrlRedirect", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleAction" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the action.", + "$ref": "#/definitions/UrlRedirectActionParameters" + } + } + }, + "UrlRedirectActionParameters": { + "description": "Defines the parameters for the url redirect action.", + "required": [ + "redirectType", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleUrlRedirectActionParameters" + ] + }, + "redirectType": { + "description": "The redirect type the rule will use when redirecting traffic.", + "type": "string", + "enum": [ + "Moved", + "Found", + "TemporaryRedirect", + "PermanentRedirect" + ], + "x-ms-enum": { + "name": "RedirectType", + "modelAsString": true + } + }, + "destinationProtocol": { + "description": "Protocol to use for the redirect. The default value is MatchRequest", + "type": "string", + "enum": [ + "MatchRequest", + "Http", + "Https" + ], + "x-ms-enum": { + "name": "DestinationProtocol", + "modelAsString": true + } + }, + "customPath": { + "description": "The full path to redirect. Path cannot be empty and must start with /. Leave empty to use the incoming path as destination path.", + "type": "string" + }, + "customHostname": { + "description": "Host to redirect. Leave empty to use the incoming host as the destination host.", + "type": "string" + }, + "customQueryString": { + "description": "The set of query strings to be placed in the redirect URL. Setting this value would replace any existing query string; leave empty to preserve the incoming query string. Query string must be in = format. ? and & will be added automatically so do not include them.", + "type": "string" + }, + "customFragment": { + "type": "string", + "description": "Fragment to add to the redirect URL. Fragment is the part of the URL that comes after #. Do not include the #." + } + } + }, + "UrlSigningActionParameters": { + "description": "Defines the parameters for the Url Signing action.", + "required": [ + "keyId" + ], + "properties": { + "keyId": { + "description": "Id reference of the key to be used to verify the hash and should be defined in UrlSigningKeys", + "type": "string" + }, + "algorithm": { + "description": "Algorithm to use for URL signing", + "type": "string", + "enum": [ + "SHA256" + ] + }, + "parameterNameOverride": { + "description": "Defines which query string parameters in the url to be considered for expires, key id etc. ", + "type": "array", + "items": { + "$ref": "#/definitions/UrlSigningParamIdentifier" + } + }, + "ipSubnets": { + "description": "Match values to match against. Supports CIDR ranges (both IPv4 and IPv6).", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "UrlSigningParamIdentifier": { + "description": "Defines how to identify a parameter for a specific purpose e.g. expires", + "required": [ + "paramIndicator", + "paramName" + ], + "properties": { + "paramIndicator": { + "description": "Indicates the purpose of the parameter", + "type": "string", + "enum": [ + "expires", + "keyId", + "signature" + ] + }, + "paramName": { + "description": "Parameter name", + "type": "string" + } + } + }, + "UrlRewriteAction": { + "description": "Defines the url rewrite action for the delivery rule.", + "x-ms-discriminator-value": "UrlRewrite", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleAction" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the action.", + "$ref": "#/definitions/UrlRewriteActionParameters" + } + } + }, + "UrlRewriteActionParameters": { + "description": "Defines the parameters for the url rewrite action.", + "required": [ + "sourcePattern", + "destination", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleUrlRewriteActionParameters" + ] + }, + "sourcePattern": { + "description": "define a request URI pattern that identifies the type of requests that may be rewritten. If value is blank, all strings are matched.", + "type": "string" + }, + "destination": { + "description": "Define the relative URL to which the above requests will be rewritten by.", + "type": "string" + }, + "preserveUnmatchedPath": { + "description": "Whether to preserve unmatched path. Default value is true.", + "type": "boolean" + } + } + }, + "DeliveryRuleRequestHeaderAction": { + "description": "Defines the request header action for the delivery rule.", + "x-ms-discriminator-value": "ModifyRequestHeader", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleAction" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the action.", + "$ref": "#/definitions/HeaderActionParameters" + } + } + }, + "DeliveryRuleResponseHeaderAction": { + "description": "Defines the response header action for the delivery rule.", + "x-ms-discriminator-value": "ModifyResponseHeader", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleAction" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the action.", + "$ref": "#/definitions/HeaderActionParameters" + } + } + }, + "HeaderActionParameters": { + "description": "Defines the parameters for the request header action.", + "required": [ + "headerAction", + "headerName", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters" + ] + }, + "headerAction": { + "description": "Action to perform", + "type": "string", + "enum": [ + "Append", + "Overwrite", + "Delete" + ], + "x-ms-enum": { + "name": "HeaderAction", + "modelAsString": true + } + }, + "headerName": { + "description": "Name of the header to modify", + "type": "string" + }, + "value": { + "description": "Value for the specified action", + "type": "string" + } + } + }, + "DeliveryRuleCacheExpirationAction": { + "description": "Defines the cache expiration action for the delivery rule.", + "x-ms-discriminator-value": "CacheExpiration", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleAction" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the action.", + "$ref": "#/definitions/CacheExpirationActionParameters" + } + } + }, + "CacheExpirationActionParameters": { + "description": "Defines the parameters for the cache expiration action.", + "required": [ + "cacheBehavior", + "cacheType", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleCacheExpirationActionParameters" + ] + }, + "cacheBehavior": { + "description": "Caching behavior for the requests", + "type": "string", + "enum": [ + "BypassCache", + "Override", + "SetIfMissing" + ], + "x-ms-enum": { + "name": "cacheBehavior", + "modelAsString": true + } + }, + "cacheType": { + "description": "The level at which the content needs to be cached.", + "type": "string", + "enum": [ + "All" + ], + "x-ms-enum": { + "name": "CacheType", + "modelAsString": true + } + }, + "cacheDuration": { + "description": "The duration for which the content needs to be cached. Allowed format is [d.]hh:mm:ss", + "type": "string", + "x-nullable": true + } + } + }, + "DeliveryRuleCacheKeyQueryStringAction": { + "description": "Defines the cache-key query string action for the delivery rule.", + "x-ms-discriminator-value": "CacheKeyQueryString", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleAction" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the action.", + "$ref": "#/definitions/CacheKeyQueryStringActionParameters" + } + } + }, + "CacheKeyQueryStringActionParameters": { + "description": "Defines the parameters for the cache-key query string action.", + "required": [ + "queryStringBehavior", + "@odata.type" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.DeliveryRuleCacheKeyQueryStringBehaviorActionParameters" + ] + }, + "queryStringBehavior": { + "description": "Caching behavior for the requests", + "type": "string", + "enum": [ + "Include", + "IncludeAll", + "Exclude", + "ExcludeAll" + ], + "x-ms-enum": { + "name": "queryStringBehavior", + "modelAsString": true + } + }, + "queryParameters": { + "description": "query parameters to include or exclude (comma separated).", + "type": "string", + "x-nullable": true + } + } + }, + "transform": { + "description": "Describes what transforms are applied before matching", + "type": "string", + "enum": [ + "Lowercase", + "Uppercase" + ], + "x-ms-enum": { + "name": "transform", + "modelAsString": true + } + }, + "DeepCreatedOrigin": { + "description": "The main origin of CDN content which is added when creating a CDN endpoint.", + "type": "object", + "required": [ + "name" + ], + "properties": { + "name": { + "description": "Origin name which must be unique within the endpoint. ", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DeepCreatedOriginProperties" + } + }, + "x-ms-azure-resource": true + }, + "DeepCreatedOriginProperties": { + "description": "Properties of the origin created on the CDN endpoint.", + "type": "object", + "required": [ + "hostName" + ], + "properties": { + "hostName": { + "description": "The address of the origin. It can be a domain name, IPv4 address, or IPv6 address. This should be unique across all origins in an endpoint.", + "type": "string" + }, + "httpPort": { + "description": "The value of the HTTP port. Must be between 1 and 65535.", + "type": "integer", + "maximum": 65535, + "exclusiveMaximum": false, + "minimum": 1, + "exclusiveMinimum": false + }, + "httpsPort": { + "description": "The value of the HTTPS port. Must be between 1 and 65535.", + "type": "integer", + "maximum": 65535, + "exclusiveMaximum": false, + "minimum": 1, + "exclusiveMinimum": false + }, + "originHostHeader": { + "description": "The host header value sent to the origin with each request. If you leave this blank, the request hostname determines this value. Azure CDN origins, such as Web Apps, Blob Storage, and Cloud Services require this host header value to match the origin hostname by default.", + "type": "string" + }, + "priority": { + "description": "Priority of origin in given origin group for load balancing. Higher priorities will not be used for load balancing if any lower priority origin is healthy.Must be between 1 and 5.", + "type": "integer", + "maximum": 5, + "minimum": 1 + }, + "weight": { + "description": "Weight of the origin in given origin group for load balancing. Must be between 1 and 1000", + "type": "integer", + "maximum": 1000, + "minimum": 1 + }, + "enabled": { + "description": "Origin is enabled for load balancing or not. By default, origin is always enabled.", + "type": "boolean" + } + }, + "x-ms-azure-resource": true + }, + "DeepCreatedOriginGroup": { + "description": "The origin group for CDN content which is added when creating a CDN endpoint. Traffic is sent to the origins within the origin group based on origin health.", + "type": "object", + "required": [ + "name" + ], + "properties": { + "name": { + "description": "Origin group name which must be unique within the endpoint.", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DeepCreatedOriginGroupProperties" + } + }, + "x-ms-azure-resource": true + }, + "DeepCreatedOriginGroupProperties": { + "description": "Properties of the origin group created on the CDN endpoint.", + "type": "object", + "required": [ + "origins" + ], + "properties": { + "healthProbeSettings": { + "description": "Health probe settings to the origin that is used to determine the health of the origin.", + "type": "object", + "$ref": "#/definitions/HealthProbeParameters" + }, + "origins": { + "description": "The source of the content being delivered via CDN within given origin group.", + "type": "array", + "items": { + "description": "A reference to a origin.", + "$ref": "#/definitions/ResourceReference" + } + }, + "trafficRestorationTimeToHealedOrNewEndpointsInMinutes": { + "description": "Time in minutes to shift the traffic to the endpoint gradually when an unhealthy endpoint comes healthy or a new endpoint is added. Default is 10 mins. This property is currently not supported.", + "type": "integer", + "maximum": 50, + "minimum": 0 + }, + "responseBasedOriginErrorDetectionSettings": { + "description": "The JSON object that contains the properties to determine origin health using real requests/responses.This property is currently not supported.", + "type": "object", + "$ref": "#/definitions/ResponseBasedOriginErrorDetectionParameters" + } + }, + "x-ms-azure-resource": true + }, + "ResourceReference": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + } + }, + "description": "Reference to another resource.", + "x-ms-azure-resource": true + }, + "GeoFilter": { + "description": "Rules defining user's geo access within a CDN endpoint.", + "type": "object", + "required": [ + "relativePath", + "action", + "countryCodes" + ], + "properties": { + "relativePath": { + "description": "Relative path applicable to geo filter. (e.g. '/mypictures', '/mypicture/kitty.jpg', and etc.)", + "type": "string" + }, + "action": { + "description": "Action of the geo filter, i.e. allow or block access.", + "enum": [ + "Block", + "Allow" + ], + "type": "string", + "x-ms-enum": { + "name": "GeoFilterActions", + "modelAsString": false + } + }, + "countryCodes": { + "description": "Two letter country codes defining user country access in a geo filter, e.g. AU, MX, US.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "PurgeParameters": { + "type": "object", + "description": "Parameters required for content purge.", + "required": [ + "contentPaths" + ], + "properties": { + "contentPaths": { + "description": "The path to the content to be purged. Can describe a file path or a wild card directory.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "UrlSigningKey": { + "description": "Url signing key", + "required": [ + "keyId", + "keySourceParameters" + ], + "properties": { + "keyId": { + "description": "Defines the customer defined key Id. This id will exist in the incoming request to indicate the key used to form the hash.", + "type": "string" + }, + "keySourceParameters": { + "description": "Defines the parameters for using customer key vault for Url Signing Key.", + "$ref": "#/definitions/KeyVaultSigningKeyParameters" + } + } + }, + "KeyVaultSigningKeyParameters": { + "description": "Describes the parameters for using a user's KeyVault for URL Signing Key.", + "required": [ + "@odata.type", + "subscriptionId", + "resourceGroupName", + "vaultName", + "secretName", + "secretVersion" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.KeyVaultSigningKeyParameters" + ] + }, + "subscriptionId": { + "description": "Subscription Id of the user's Key Vault containing the secret", + "type": "string" + }, + "resourceGroupName": { + "description": "Resource group of the user's Key Vault containing the secret", + "type": "string" + }, + "vaultName": { + "description": "The name of the user's Key Vault containing the secret", + "type": "string" + }, + "secretName": { + "description": "The name of secret in Key Vault.", + "type": "string" + }, + "secretVersion": { + "description": "The version(GUID) of secret in Key Vault.", + "type": "string" + } + } + }, + "LoadParameters": { + "type": "object", + "description": "Parameters required for content load.", + "required": [ + "contentPaths" + ], + "properties": { + "contentPaths": { + "description": "The path to the content to be loaded. Path should be a relative file URL of the origin.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "Origin": { + "description": "CDN origin is the source of the content being delivered via CDN. When the edge nodes represented by an endpoint do not have the requested content cached, they attempt to fetch it from one or more of the configured origins.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OriginProperties" + } + } + }, + "OriginProperties": { + "description": "The JSON object that contains the properties of the origin.", + "required": [ + "hostName" + ], + "allOf": [ + { + "$ref": "#/definitions/OriginUpdatePropertiesParameters" + } + ], + "properties": { + "resourceState": { + "description": "Resource status of the origin.", + "readOnly": true, + "enum": [ + "Creating", + "Active", + "Deleting" + ], + "type": "string", + "x-ms-enum": { + "name": "OriginResourceState", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "description": "Provisioning status of the origin.", + "type": "string" + } + } + }, + "OriginUpdateParameters": { + "type": "object", + "description": "Origin properties needed for origin update.", + "properties": { + "tags": { + "description": "Origin tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OriginUpdatePropertiesParameters" + } + }, + "x-ms-azure-resource": true + }, + "OriginUpdatePropertiesParameters": { + "description": "The JSON object that contains the properties of the origin.", + "properties": { + "hostName": { + "description": "The address of the origin. Domain names, IPv4 addresses, and IPv6 addresses are supported.This should be unique across all origins in an endpoint.", + "type": "string" + }, + "httpPort": { + "description": "The value of the HTTP port. Must be between 1 and 65535.", + "type": "integer", + "maximum": 65535, + "exclusiveMaximum": false, + "minimum": 1, + "exclusiveMinimum": false + }, + "httpsPort": { + "description": "The value of the HTTPS port. Must be between 1 and 65535.", + "type": "integer", + "maximum": 65535, + "exclusiveMaximum": false, + "minimum": 1, + "exclusiveMinimum": false + }, + "originHostHeader": { + "description": "The host header value sent to the origin with each request. If you leave this blank, the request hostname determines this value. Azure CDN origins, such as Web Apps, Blob Storage, and Cloud Services require this host header value to match the origin hostname by default. This overrides the host header defined at Endpoint", + "type": "string" + }, + "priority": { + "description": "Priority of origin in given origin group for load balancing. Higher priorities will not be used for load balancing if any lower priority origin is healthy.Must be between 1 and 5", + "type": "integer", + "maximum": 5, + "minimum": 1 + }, + "weight": { + "description": "Weight of the origin in given origin group for load balancing. Must be between 1 and 1000", + "type": "integer", + "maximum": 1000, + "minimum": 1 + }, + "enabled": { + "description": "Origin is enabled for load balancing or not", + "type": "boolean" + } + } + }, + "OriginListResult": { + "description": "Result of the request to list origins. It contains a list of origin objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Origin" + }, + "description": "List of CDN origins within an endpoint" + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of origin objects if there are any." + } + } + }, + "OriginGroup": { + "description": "Origin group comprising of origins is used for load balancing to origins when the content cannot be served from CDN.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OriginGroupProperties" + } + } + }, + "OriginGroupProperties": { + "description": "The JSON object that contains the properties of the origin group.", + "type": "object", + "required": [ + "origins" + ], + "allOf": [ + { + "$ref": "#/definitions/OriginGroupUpdatePropertiesParameters" + } + ], + "properties": { + "resourceState": { + "description": "Resource status of the origin group.", + "readOnly": true, + "enum": [ + "Creating", + "Active", + "Deleting" + ], + "type": "string", + "x-ms-enum": { + "name": "OriginGroupResourceState", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "description": "Provisioning status of the origin group.", + "type": "string" + } + } + }, + "OriginGroupUpdateParameters": { + "type": "object", + "description": "Origin group properties needed for origin group creation or update.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OriginGroupUpdatePropertiesParameters" + } + }, + "x-ms-azure-resource": true + }, + "OriginGroupUpdatePropertiesParameters": { + "description": "The JSON object that contains the properties of the origin group.", + "properties": { + "healthProbeSettings": { + "description": "Health probe settings to the origin that is used to determine the health of the origin.", + "type": "object", + "$ref": "#/definitions/HealthProbeParameters" + }, + "origins": { + "description": "The source of the content being delivered via CDN within given origin group.", + "type": "array", + "items": { + "description": "A reference to a origin.", + "$ref": "#/definitions/ResourceReference" + } + }, + "trafficRestorationTimeToHealedOrNewEndpointsInMinutes": { + "description": "Time in minutes to shift the traffic to the endpoint gradually when an unhealthy endpoint comes healthy or a new endpoint is added. Default is 10 mins. This property is currently not supported.", + "type": "integer", + "maximum": 50, + "minimum": 0 + }, + "responseBasedOriginErrorDetectionSettings": { + "description": "The JSON object that contains the properties to determine origin health using real requests/responses. This property is currently not supported.", + "type": "object", + "$ref": "#/definitions/ResponseBasedOriginErrorDetectionParameters" + } + } + }, + "HealthProbeParameters": { + "description": "The JSON object that contains the properties to send health probes to origin.", + "properties": { + "probePath": { + "description": "The path relative to the origin that is used to determine the health of the origin.", + "type": "string" + }, + "probeRequestType": { + "description": "The type of health probe request that is made.", + "enum": [ + "NotSet", + "GET", + "HEAD" + ], + "type": "string", + "x-ms-enum": { + "name": "HealthProbeRequestType", + "modelAsString": false + } + }, + "probeProtocol": { + "description": "Protocol to use for health probe.", + "type": "string", + "enum": [ + "NotSet", + "Http", + "Https" + ], + "x-ms-enum": { + "name": "ProbeProtocol", + "modelAsString": false + } + }, + "probeIntervalInSeconds": { + "description": "The number of seconds between health probes.Default is 240sec.", + "type": "integer", + "maximum": 255, + "minimum": 1 + } + } + }, + "ResponseBasedOriginErrorDetectionParameters": { + "description": "The JSON object that contains the properties to determine origin health using real requests/responses.", + "properties": { + "responseBasedDetectedErrorTypes": { + "description": "Type of response errors for real user requests for which origin will be deemed unhealthy", + "type": "string", + "enum": [ + "None", + "TcpErrorsOnly", + "TcpAndHttpErrors" + ], + "x-ms-enum": { + "name": "ResponseBasedDetectedErrorTypes", + "modelAsString": false + } + }, + "responseBasedFailoverThresholdPercentage": { + "description": "The percentage of failed requests in the sample where failover should trigger.", + "type": "integer", + "maximum": 100, + "minimum": 0 + }, + "httpErrorRanges": { + "description": "The list of Http status code ranges that are considered as server errors for origin and it is marked as unhealthy.", + "type": "array", + "items": { + "$ref": "#/definitions/HttpErrorRangeParameters" + } + } + } + }, + "HttpErrorRangeParameters": { + "description": "The JSON object that represents the range for http status codes", + "properties": { + "begin": { + "description": "The inclusive start of the http status code range.", + "type": "integer", + "maximum": 999, + "minimum": 100 + }, + "end": { + "description": "The inclusive end of the http status code range.", + "type": "integer", + "maximum": 999, + "minimum": 100 + } + } + }, + "OriginGroupListResult": { + "description": "Result of the request to list origin groups. It contains a list of origin groups objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/OriginGroup" + }, + "description": "List of CDN origin groups within an endpoint" + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of origin objects if there are any." + } + } + }, + "CustomDomain": { + "description": "Friendly domain name mapping to the endpoint hostname that the customer provides for branding purposes, e.g. www.contoso.com.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CustomDomainProperties" + } + } + }, + "CustomDomainProperties": { + "description": "The JSON object that contains the properties of the custom domain to create.", + "required": [ + "hostName" + ], + "properties": { + "hostName": { + "description": "The host name of the custom domain. Must be a domain name.", + "type": "string" + }, + "resourceState": { + "description": "Resource status of the custom domain.", + "readOnly": true, + "enum": [ + "Creating", + "Active", + "Deleting" + ], + "type": "string", + "x-ms-enum": { + "name": "CustomDomainResourceState", + "modelAsString": true + } + }, + "customHttpsProvisioningState": { + "description": "Provisioning status of Custom Https of the custom domain.", + "readOnly": true, + "enum": [ + "Enabling", + "Enabled", + "Disabling", + "Disabled", + "Failed" + ], + "type": "string", + "x-ms-enum": { + "name": "CustomHttpsProvisioningState", + "modelAsString": true + } + }, + "customHttpsProvisioningSubstate": { + "description": "Provisioning substate shows the progress of custom HTTPS enabling/disabling process step by step.", + "readOnly": true, + "enum": [ + "SubmittingDomainControlValidationRequest", + "PendingDomainControlValidationREquestApproval", + "DomainControlValidationRequestApproved", + "DomainControlValidationRequestRejected", + "DomainControlValidationRequestTimedOut", + "IssuingCertificate", + "DeployingCertificate", + "CertificateDeployed", + "DeletingCertificate", + "CertificateDeleted" + ], + "type": "string", + "x-ms-enum": { + "name": "CustomHttpsProvisioningSubstate", + "modelAsString": true + } + }, + "validationData": { + "description": "Special validation or data may be required when delivering CDN to some regions due to local compliance reasons. E.g. ICP license number of a custom domain is required to deliver content in China.", + "type": "string" + }, + "provisioningState": { + "readOnly": true, + "description": "Provisioning status of the custom domain.", + "type": "string" + } + } + }, + "CustomDomainParameters": { + "description": "The customDomain JSON object required for custom domain creation or update.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CustomDomainPropertiesParameters" + } + } + }, + "CustomDomainPropertiesParameters": { + "description": "The JSON object that contains the properties of the custom domain to create.", + "required": [ + "hostName" + ], + "properties": { + "hostName": { + "description": "The host name of the custom domain. Must be a domain name.", + "type": "string" + } + } + }, + "CustomDomainHttpsParameters": { + "description": "The JSON object that contains the properties to secure a custom domain.", + "discriminator": "certificateSource", + "required": [ + "certificateSource", + "protocolType" + ], + "properties": { + "certificateSource": { + "description": "Defines the source of the SSL certificate.", + "enum": [ + "AzureKeyVault", + "Cdn" + ], + "type": "string", + "x-ms-enum": { + "name": "CertificateSource", + "modelAsString": true + } + }, + "protocolType": { + "description": "Defines the TLS extension protocol that is used for secure delivery.", + "enum": [ + "ServerNameIndication", + "IPBased" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtocolType", + "modelAsString": true + } + }, + "minimumTlsVersion": { + "description": "TLS protocol version that will be used for Https", + "enum": [ + "None", + "TLS10", + "TLS12" + ], + "type": "string", + "x-ms-enum": { + "name": "MinimumTlsVersion", + "modelAsString": false + } + } + } + }, + "CdnManagedHttpsParameters": { + "description": "Defines the certificate source parameters using CDN managed certificate for enabling SSL.", + "x-ms-discriminator-value": "Cdn", + "allOf": [ + { + "$ref": "#/definitions/CustomDomainHttpsParameters" + } + ], + "required": [ + "certificateSourceParameters" + ], + "properties": { + "certificateSourceParameters": { + "description": "Defines the certificate source parameters using CDN managed certificate for enabling SSL.", + "$ref": "#/definitions/CdnCertificateSourceParameters" + } + } + }, + "CdnCertificateSourceParameters": { + "description": "Defines the parameters for using CDN managed certificate for securing custom domain.", + "required": [ + "@odata.type", + "certificateType" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.CdnCertificateSourceParameters" + ] + }, + "certificateType": { + "description": "Type of certificate used", + "enum": [ + "Shared", + "Dedicated" + ], + "type": "string", + "x-ms-enum": { + "name": "CertificateType", + "modelAsString": true + } + } + } + }, + "UserManagedHttpsParameters": { + "description": "Defines the certificate source parameters using user's keyvault certificate for enabling SSL.", + "x-ms-discriminator-value": "AzureKeyVault", + "allOf": [ + { + "$ref": "#/definitions/CustomDomainHttpsParameters" + } + ], + "required": [ + "certificateSourceParameters" + ], + "properties": { + "certificateSourceParameters": { + "description": "Defines the certificate source parameters using user's keyvault certificate for enabling SSL.", + "$ref": "#/definitions/KeyVaultCertificateSourceParameters" + } + } + }, + "KeyVaultCertificateSourceParameters": { + "description": "Describes the parameters for using a user's KeyVault certificate for securing custom domain.", + "required": [ + "@odata.type", + "subscriptionId", + "resourceGroupName", + "vaultName", + "secretName", + "secretVersion", + "updateRule", + "deleteRule" + ], + "properties": { + "@odata.type": { + "type": "string", + "enum": [ + "#Microsoft.Azure.Cdn.Models.KeyVaultCertificateSourceParameters" + ] + }, + "subscriptionId": { + "description": "Subscription Id of the user's Key Vault containing the SSL certificate", + "type": "string" + }, + "resourceGroupName": { + "description": "Resource group of the user's Key Vault containing the SSL certificate", + "type": "string" + }, + "vaultName": { + "description": "The name of the user's Key Vault containing the SSL certificate", + "type": "string" + }, + "secretName": { + "description": "The name of Key Vault Secret (representing the full certificate PFX) in Key Vault.", + "type": "string" + }, + "secretVersion": { + "description": "The version(GUID) of Key Vault Secret in Key Vault.", + "type": "string" + }, + "updateRule": { + "description": "Describes the action that shall be taken when the certificate is updated in Key Vault.", + "type": "string", + "enum": [ + "NoAction" + ], + "x-ms-enum": { + "name": "UpdateRule", + "modelAsString": true + } + }, + "deleteRule": { + "description": "Describes the action that shall be taken when the certificate is removed from Key Vault.", + "type": "string", + "enum": [ + "NoAction" + ], + "x-ms-enum": { + "name": "DeleteRule", + "modelAsString": true + } + } + } + }, + "CustomDomainListResult": { + "description": "Result of the request to list custom domains. It contains a list of custom domain objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/CustomDomain" + }, + "description": "List of CDN CustomDomains within an endpoint." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of custom domain objects if there are any." + } + } + }, + "ValidateCustomDomainInput": { + "description": "Input of the custom domain to be validated for DNS mapping.", + "type": "object", + "required": [ + "hostName" + ], + "properties": { + "hostName": { + "description": "The host name of the custom domain. Must be a domain name.", + "type": "string" + } + } + }, + "ValidateCustomDomainOutput": { + "description": "Output of custom domain validation.", + "type": "object", + "properties": { + "customDomainValidated": { + "description": "Indicates whether the custom domain is valid or not.", + "readOnly": true, + "type": "boolean" + }, + "reason": { + "description": "The reason why the custom domain is not valid.", + "readOnly": true, + "type": "string" + }, + "message": { + "description": "Error message describing why the custom domain is not valid.", + "readOnly": true, + "type": "string" + } + } + }, + "CheckNameAvailabilityInput": { + "description": "Input of CheckNameAvailability API.", + "type": "object", + "required": [ + "name", + "type" + ], + "properties": { + "name": { + "description": "The resource name to validate.", + "type": "string" + }, + "type": { + "description": "The type of the resource whose name is to be validated.", + "$ref": "#/definitions/ResourceType" + } + } + }, + "CheckNameAvailabilityOutput": { + "description": "Output of check name availability API.", + "type": "object", + "properties": { + "nameAvailable": { + "description": "Indicates whether the name is available.", + "readOnly": true, + "type": "boolean" + }, + "reason": { + "description": "The reason why the name is not available.", + "readOnly": true, + "type": "string" + }, + "message": { + "description": "The detailed error message describing why the name is not available.", + "readOnly": true, + "type": "string" + } + } + }, + "ValidateProbeInput": { + "description": "Input of the validate probe API.", + "properties": { + "probeURL": { + "description": "The probe URL to validate.", + "type": "string" + } + }, + "required": [ + "probeURL" + ], + "type": "object" + }, + "ValidateProbeOutput": { + "description": "Output of the validate probe API.", + "properties": { + "isValid": { + "description": "Indicates whether the probe URL is accepted or not.", + "readOnly": true, + "type": "boolean" + }, + "errorCode": { + "description": "Specifies the error code when the probe url is not accepted.", + "readOnly": true, + "type": "string" + }, + "message": { + "description": "The detailed error message describing why the probe URL is not accepted.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ResourceUsageListResult": { + "description": "Output of check resource usage API.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ResourceUsage" + }, + "description": "List of resource usages." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of custom domain objects if there are any." + } + } + }, + "ResourceUsage": { + "description": "Output of check resource usage API.", + "type": "object", + "properties": { + "resourceType": { + "type": "string", + "readOnly": true, + "description": "Resource type for which the usage is provided." + }, + "unit": { + "type": "string", + "readOnly": true, + "description": "Unit of the usage. e.g. Count." + }, + "currentValue": { + "type": "integer", + "readOnly": true, + "description": "Actual value of usage on the specified resource type." + }, + "limit": { + "type": "integer", + "readOnly": true, + "description": "Quota of the specified resource type." + } + } + }, + "ResourceType": { + "description": "Type of CDN resource used in CheckNameAvailability.", + "enum": [ + "Microsoft.Cdn/Profiles/Endpoints" + ], + "type": "string", + "x-ms-enum": { + "name": "ResourceType", + "modelAsString": false + } + }, + "Operation": { + "description": "CDN REST API operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "readOnly": true, + "type": "string" + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft.Cdn", + "readOnly": true, + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed: Profile, endpoint, etc.", + "readOnly": true, + "type": "string" + }, + "operation": { + "description": "Operation type: Read, write, delete, etc.", + "readOnly": true, + "type": "string" + } + } + } + } + }, + "OperationsListResult": { + "description": "Result of the request to list CDN operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of CDN operations supported by the CDN resource provider." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "EdgenodeResult": { + "description": "Result of the request to list CDN edgenodes. It contains a list of ip address group and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/EdgeNode" + }, + "description": "Edge node of CDN service." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of edgenode list results if there are any." + } + } + }, + "EdgeNode": { + "description": "Edgenode is a global Point of Presence (POP) location used to deliver CDN content to end users.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/EdgeNodeProperties" + } + } + }, + "EdgeNodeProperties": { + "description": "The JSON object that contains the properties required to create an edgenode.", + "required": [ + "ipAddressGroups" + ], + "properties": { + "ipAddressGroups": { + "description": "List of ip address groups.", + "type": "array", + "items": { + "$ref": "#/definitions/IpAddressGroup" + } + } + } + }, + "IpAddressGroup": { + "description": "CDN Ip address group", + "type": "object", + "properties": { + "deliveryRegion": { + "description": "The delivery region of the ip address group", + "type": "string" + }, + "ipv4Addresses": { + "description": "The list of ip v4 addresses.", + "type": "array", + "items": { + "$ref": "#/definitions/cidrIpAddress" + } + }, + "ipv6Addresses": { + "description": "The list of ip v6 addresses.", + "type": "array", + "items": { + "$ref": "#/definitions/cidrIpAddress" + } + } + } + }, + "cidrIpAddress": { + "description": "CIDR Ip address", + "type": "object", + "properties": { + "baseIpAddress": { + "description": "Ip address itself.", + "type": "string" + }, + "prefixLength": { + "description": "The length of the prefix of the ip address.", + "type": "integer" + } + } + }, + "Resource": { + "description": "The core properties of ARM resources", + "properties": { + "id": { + "description": "Resource ID.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Resource name.", + "readOnly": true, + "type": "string" + }, + "type": { + "description": "Resource type.", + "readOnly": true, + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "TrackedResource": { + "description": "The resource model definition for a ARM tracked top level resource.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Resource tags." + } + }, + "required": [ + "location" + ] + }, + "ProxyResource": { + "description": "The resource model definition for a ARM proxy resource. It will have everything other than required location and tags", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ] + }, + "QueryStringCachingBehavior": { + "description": "Defines how CDN caches requests that include query strings. You can ignore any query strings when caching, bypass caching to prevent requests that contain query strings from being cached, or cache every request with a unique URL.", + "enum": [ + "IgnoreQueryString", + "BypassCaching", + "UseQueryString", + "NotSet" + ], + "type": "string", + "x-ms-enum": { + "name": "QueryStringCachingBehavior", + "modelAsString": false + } + }, + "Sku": { + "description": "The pricing tier (defines a CDN provider, feature list and rate) of the CDN profile.", + "properties": { + "name": { + "description": "Name of the pricing tier.", + "enum": [ + "Standard_Verizon", + "Premium_Verizon", + "Custom_Verizon", + "Standard_Akamai", + "Standard_ChinaCdn", + "Standard_Microsoft", + "Premium_ChinaCdn" + ], + "type": "string", + "x-ms-enum": { + "name": "SkuName", + "modelAsString": true + } + } + }, + "type": "object" + }, + "OptimizationType": { + "description": "Specifies what scenario the customer wants this CDN endpoint to optimize, e.g. Download, Media services. With this information we can apply scenario driven optimization.", + "enum": [ + "GeneralWebDelivery", + "GeneralMediaStreaming", + "VideoOnDemandMediaStreaming", + "LargeFileDownload", + "DynamicSiteAcceleration" + ], + "type": "string", + "x-ms-enum": { + "name": "OptimizationType", + "modelAsString": true + } + }, + "ErrorResponse": { + "description": "Error response indicates CDN service is not able to process the incoming request. The reason is provided in the error message.", + "type": "object", + "properties": { + "code": { + "description": "Error code.", + "readOnly": true, + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "readOnly": true, + "type": "string" + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Azure Subscription ID.", + "required": true, + "type": "string" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Version of the API to be used with the client request. Current version is 2017-04-02." + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method", + "description": "Name of the Resource group within the Azure subscription." + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/cdnwebapplicationfirewall.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/cdnwebapplicationfirewall.json new file mode 100644 index 000000000000..8c308c75542c --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/cdnwebapplicationfirewall.json @@ -0,0 +1,923 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-06-15-preview", + "title": "Azure CDN WebApplicationFirewallManagement", + "description": "APIs to manage web application firewall rules for Azure CDN" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies": { + "get": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Lists all of the protection policies within a resource group.", + "operationId": "Policies_List", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CdnWebApplicationFirewallPolicyList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./cdn.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Policies in a Resource Group": { + "$ref": "./examples/WafListPolicies.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/{policyName}": { + "get": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Retrieve protection policy with specified name within a resource group.", + "operationId": "Policies_Get", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/PolicyNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CdnWebApplicationFirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./cdn.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Policy": { + "$ref": "./examples/WafPolicyGet.json" + } + } + }, + "put": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Create or update policy with specified rule set name within a resource group.", + "operationId": "Policies_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/PolicyNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "description": "Policy to be created.", + "in": "body", + "name": "cdnWebApplicationFirewallPolicy", + "required": true, + "schema": { + "$ref": "#/definitions/CdnWebApplicationFirewallPolicy" + } + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CdnWebApplicationFirewallPolicy" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new protection policy has been created.", + "schema": { + "$ref": "#/definitions/CdnWebApplicationFirewallPolicy" + } + }, + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/CdnWebApplicationFirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./cdn.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Creates specific policy": { + "$ref": "./examples/WafPolicyCreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Update an existing CdnWebApplicationFirewallPolicy with the specified policy name under the specified subscription and resource group", + "operationId": "Policies_Update", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/PolicyNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "description": "CdnWebApplicationFirewallPolicy parameters to be patched.", + "in": "body", + "name": "cdnWebApplicationFirewallPolicyPatchParameters", + "required": true, + "schema": { + "$ref": "#/definitions/CdnWebApplicationFirewallPolicyPatchParameters" + } + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CdnWebApplicationFirewallPolicy" + } + }, + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/CdnWebApplicationFirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./cdn.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Creates specific policy": { + "$ref": "./examples/WafPatchPolicy.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Deletes Policy", + "operationId": "Policies_Delete", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/PolicyNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "204": { + "description": "No Content. The request has been accepted but the policy was not found." + } + }, + "x-ms-examples": { + "Delete protection policy": { + "$ref": "./examples/WafPolicyDelete.json" + } + }, + "x-ms-long-running-operation": false + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Cdn/CdnWebApplicationFirewallManagedRuleSets": { + "get": { + "tags": [ + "WebApplicationFirewallManagedRuleSets" + ], + "description": "Lists all available managed rule sets.", + "operationId": "ManagedRuleSets_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of all available web application firewall managed rule sets.", + "schema": { + "$ref": "#/definitions/ManagedRuleSetDefinitionList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./cdn.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Policies in a Resource Group": { + "$ref": "./examples/WafListManagedRuleSets.json" + } + } + } + } + }, + "definitions": { + "CdnWebApplicationFirewallPolicyList": { + "description": "Defines a list of WebApplicationFirewallPolicies for Azure CDN. It contains a list of WebApplicationFirewallPolicy objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/CdnWebApplicationFirewallPolicy" + }, + "description": "List of Azure CDN WebApplicationFirewallPolicies within a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of WebApplicationFirewallPolicy objects if there are any." + } + } + }, + "CdnWebApplicationFirewallPolicy": { + "description": "Defines web application firewall policy for Azure CDN.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties of the web application firewall policy.", + "$ref": "#/definitions/CdnWebApplicationFirewallPolicyProperties" + }, + "etag": { + "type": "string", + "description": "Gets a unique read-only string that changes whenever the resource is updated." + }, + "sku": { + "description": "The pricing tier (defines a CDN provider, feature list and rate) of the CdnWebApplicationFirewallPolicy.", + "$ref": "./cdn.json#/definitions/Sku" + } + }, + "required": [ + "sku" + ], + "allOf": [ + { + "$ref": "./cdn.json#/definitions/TrackedResource" + } + ] + }, + "CdnWebApplicationFirewallPolicyPatchParameters": { + "type": "object", + "description": "Properties required to update a CdnWebApplicationFirewallPolicy.", + "properties": { + "tags": { + "description": "CdnWebApplicationFirewallPolicy tags", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "x-ms-azure-resource": true + }, + "CdnWebApplicationFirewallPolicyProperties": { + "description": "Defines CDN web application firewall policy properties.", + "properties": { + "policySettings": { + "description": "Describes policySettings for policy", + "$ref": "#/definitions/policySettings" + }, + "rateLimitRules": { + "description": "Describes rate limit rules inside the policy.", + "$ref": "#/definitions/RateLimitRuleList" + }, + "customRules": { + "description": "Describes custom rules inside the policy.", + "$ref": "#/definitions/CustomRuleList" + }, + "managedRules": { + "description": "Describes managed rules inside the policy.", + "$ref": "#/definitions/ManagedRuleSetList" + }, + "endpointLinks": { + "description": "Describes Azure CDN endpoints associated with this Web Application Firewall policy.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/CdnEndpoint" + } + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "Provisioning state of the WebApplicationFirewallPolicy.", + "enum": [ + "Creating", + "Succeeded", + "Failed" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "resourceState": { + "title": "Resource status of the policy.", + "readOnly": true, + "enum": [ + "Creating", + "Enabling", + "Enabled", + "Disabling", + "Disabled", + "Deleting" + ], + "type": "string", + "x-ms-enum": { + "name": "PolicyResourceState", + "modelAsString": true + } + } + } + }, + "policySettings": { + "description": "Defines contents of a web application firewall global configuration", + "properties": { + "enabledState": { + "description": "describes if the policy is in enabled state or disabled state", + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "PolicyEnabledState", + "modelAsString": true + } + }, + "mode": { + "description": "Describes if it is in detection mode or prevention mode at policy level.", + "type": "string", + "enum": [ + "Prevention", + "Detection" + ], + "x-ms-enum": { + "name": "PolicyMode", + "modelAsString": true + } + }, + "defaultRedirectUrl": { + "description": "If action type is redirect, this field represents the default redirect URL for the client.", + "type": "string" + }, + "defaultCustomBlockResponseStatusCode": { + "description": "If the action type is block, this field defines the default customer overridable http response status code.", + "type": "integer", + "maximum": 599, + "exclusiveMaximum": false, + "minimum": 200, + "exclusiveMinimum": false + }, + "defaultCustomBlockResponseBody": { + "description": "If the action type is block, customer can override the response body. The body must be specified in base64 encoding.", + "type": "string", + "pattern": "^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{4})$" + } + } + }, + "CdnEndpoint": { + "description": "Defines the ARM Resource ID for the linked endpoints", + "type": "object", + "readOnly": true, + "properties": { + "id": { + "type": "string", + "description": "ARM Resource ID string." + } + } + }, + "CustomRuleList": { + "description": "Defines contents of custom rules", + "properties": { + "rules": { + "description": "List of rules", + "type": "array", + "items": { + "$ref": "#/definitions/CustomRule" + } + } + } + }, + "CustomRule": { + "description": "Defines the common attributes for a custom rule that can be included in a waf policy", + "type": "object", + "required": [ + "name", + "priority", + "matchConditions", + "action" + ], + "properties": { + "name": { + "description": "Defines the name of the custom rule", + "type": "string" + }, + "enabledState": { + "description": "Describes if the custom rule is in enabled or disabled state. Defaults to Enabled if not specified.", + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "CustomRuleEnabledState", + "modelAsString": true + } + }, + "priority": { + "description": "Defines in what order this rule be evaluated in the overall list of custom rules", + "type": "integer", + "maximum": 1000, + "exclusiveMaximum": false, + "minimum": 0, + "exclusiveMinimum": false + }, + "matchConditions": { + "description": "List of match conditions.", + "type": "array", + "items": { + "$ref": "#/definitions/MatchCondition" + } + }, + "action": { + "description": "Describes what action to be applied when rule matches", + "$ref": "#/definitions/ActionType" + } + } + }, + "RateLimitRuleList": { + "description": "Defines contents of rate limit rules", + "properties": { + "rules": { + "description": "List of rules", + "type": "array", + "items": { + "$ref": "#/definitions/RateLimitRule" + } + } + } + }, + "RateLimitRule": { + "description": "Defines a rate limiting rule that can be included in a waf policy", + "type": "object", + "required": [ + "rateLimitThreshold", + "rateLimitDurationInMinutes" + ], + "properties": { + "rateLimitThreshold": { + "description": "Defines rate limit threshold.", + "type": "integer", + "minimum": 0, + "exclusiveMinimum": false + }, + "rateLimitDurationInMinutes": { + "description": "Defines rate limit duration. Default is 1 minute.", + "type": "integer", + "maximum": 60, + "exclusiveMaximum": false, + "minimum": 0, + "exclusiveMinimum": false + } + }, + "allOf": [ + { + "$ref": "#/definitions/CustomRule" + } + ] + }, + "MatchCondition": { + "description": "Define match conditions", + "required": [ + "matchVariable", + "operator", + "matchValue" + ], + "properties": { + "matchVariable": { + "description": "Match variable to compare against.", + "type": "string", + "enum": [ + "RemoteAddr", + "SocketAddr", + "RequestMethod", + "RequestHeader", + "RequestUri", + "QueryString", + "RequestBody", + "Cookies", + "PostArgs" + ], + "x-ms-enum": { + "name": "MatchVariable", + "modelAsString": true + } + }, + "selector": { + "description": "Selector can used to match a specific key for QueryString, RequestUri, RequestHeaders or RequestBody.", + "type": "string" + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "IPMatch", + "GeoMatch", + "Equal", + "Contains", + "LessThan", + "GreaterThan", + "LessThanOrEqual", + "GreaterThanOrEqual", + "BeginsWith", + "EndsWith", + "RegEx" + ], + "x-ms-enum": { + "name": "operator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if the result of this condition should be negated.", + "type": "boolean" + }, + "matchValue": { + "description": "List of possible match values.", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms.", + "type": "array", + "items": { + "$ref": "#/definitions/TransformType" + } + } + } + }, + "TransformType": { + "description": "Describes what transforms were applied before matching.", + "type": "string", + "enum": [ + "Lowercase", + "Uppercase", + "Trim", + "UrlDecode", + "UrlEncode", + "RemoveNulls" + ], + "x-ms-enum": { + "name": "TransformType", + "modelAsString": true + } + }, + "ManagedRuleSetList": { + "description": "Defines the list of managed rule sets for the policy.", + "properties": { + "managedRuleSets": { + "description": "List of rule sets.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedRuleSet" + } + } + } + }, + "ManagedRuleSet": { + "type": "object", + "description": "Defines a managed rule set.", + "required": [ + "ruleSetType", + "ruleSetVersion" + ], + "properties": { + "ruleSetType": { + "description": "Defines the rule set type to use.", + "type": "string" + }, + "ruleSetVersion": { + "description": "Defines the version of the rule set to use.", + "type": "string" + }, + "anomalyScore": { + "description": "Verizon only : If the rule set supports anomaly detection mode, this describes the threshold for blocking requests.", + "type": "integer", + "maximum": 20, + "exclusiveMaximum": false, + "minimum": 0, + "exclusiveMinimum": false + }, + "ruleGroupOverrides": { + "description": "Defines the rule overrides to apply to the rule set.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedRuleGroupOverride" + } + } + } + }, + "ManagedRuleGroupOverride": { + "description": "Defines a managed rule group override setting.", + "required": [ + "ruleGroupName" + ], + "properties": { + "ruleGroupName": { + "description": "Describes the managed rule group within the rule set to override", + "type": "string" + }, + "rules": { + "description": "List of rules that will be disabled. If none specified, all rules in the group will be disabled.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedRuleOverride" + } + } + } + }, + "ManagedRuleOverride": { + "description": "Defines a managed rule group override setting.", + "required": [ + "ruleId" + ], + "properties": { + "ruleId": { + "description": "Identifier for the managed rule.", + "type": "string" + }, + "enabledState": { + "description": "Describes if the managed rule is in enabled or disabled state. Defaults to Disabled if not specified.", + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "ManagedRuleEnabledState", + "modelAsString": true + } + }, + "action": { + "description": "Describes the override action to be applied when rule matches.", + "$ref": "#/definitions/ActionType" + } + } + }, + "ManagedRuleSetDefinitionList": { + "description": "List of managed rule set definitions available for use in a policy.", + "properties": { + "value": { + "description": "List of managed rule set definitions.", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ManagedRuleSetDefinition" + } + }, + "nextLink": { + "type": "string", + "description": "URL to retrieve next set of managed rule set definitions." + } + } + }, + "ManagedRuleSetDefinition": { + "description": "Describes a managed rule set definition.", + "properties": { + "properties": { + "description": "Describes managed rule set definition properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ManagedRuleSetDefinitionProperties" + }, + "sku": { + "description": "The pricing tier (defines a CDN provider, feature list and rate) of the CdnWebApplicationFirewallPolicy.", + "$ref": "./cdn.json#/definitions/Sku" + } + }, + "allOf": [ + { + "$ref": "./cdn.json#/definitions/Resource" + } + ] + }, + "ManagedRuleSetDefinitionProperties": { + "description": "Properties for a managed rule set definition.", + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Provisioning state of the managed rule set." + }, + "ruleSetType": { + "type": "string", + "readOnly": true, + "description": "Type of the managed rule set." + }, + "ruleSetVersion": { + "type": "string", + "readOnly": true, + "description": "Version of the managed rule set type." + }, + "ruleGroups": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ManagedRuleGroupDefinition" + }, + "description": "Rule groups of the managed rule set." + } + } + }, + "ManagedRuleGroupDefinition": { + "description": "Describes a managed rule group.", + "properties": { + "ruleGroupName": { + "type": "string", + "readOnly": true, + "description": "Name of the managed rule group." + }, + "description": { + "type": "string", + "readOnly": true, + "description": "Description of the managed rule group." + }, + "rules": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ManagedRuleDefinition" + }, + "description": "List of rules within the managed rule group." + } + } + }, + "ManagedRuleDefinition": { + "description": "Describes a managed rule definition.", + "properties": { + "ruleId": { + "description": "Identifier for the managed rule.", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Describes the functionality of the managed rule.", + "readOnly": true, + "type": "string" + } + } + }, + "ActionType": { + "description": "Defines the action to take on rule match.", + "type": "string", + "enum": [ + "Allow", + "Block", + "Log", + "Redirect" + ], + "x-ms-enum": { + "name": "ActionType", + "modelAsString": true + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Azure Subscription ID.", + "required": true, + "type": "string" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Version of the API to be used with the client request. Current version is 2017-04-02." + }, + "PolicyNameParameter": { + "name": "policyName", + "in": "path", + "required": true, + "type": "string", + "maxLength": 128, + "x-ms-parameter-location": "method", + "description": "The name of the CdnWebApplicationFirewallPolicy." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9_\\-\\(\\)\\.]*[^\\.]$", + "minLength": 1, + "maxLength": 80, + "x-ms-parameter-location": "method", + "description": "Name of the Resource group within the Azure subscription." + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CheckNameAvailability.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CheckNameAvailability.json new file mode 100644 index 000000000000..a20fc0ace07c --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CheckNameAvailability.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "checkNameAvailabilityInput": { + "name": "sampleName", + "type": "Microsoft.Cdn/Profiles/Endpoints" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "Name is already in use", + "message": "Name not available" + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CheckNameAvailabilityWithSubscription.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CheckNameAvailabilityWithSubscription.json new file mode 100644 index 000000000000..935a838c7924 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CheckNameAvailabilityWithSubscription.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "checkNameAvailabilityInput": { + "name": "sampleName", + "type": "Microsoft.Cdn/Profiles/Endpoints" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "Name is already in use", + "message": "Name not available" + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_Create.json new file mode 100644 index 000000000000..c368ab84efcc --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_Create.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "customDomainName": "www-someDomain-net", + "customDomainProperties": { + "properties": { + "hostName": "www.someDomain.net" + } + } + }, + "responses": { + "200": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/customdomains/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/customdomains", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "customHttpsProvisioningState": "Enabling", + "customHttpsProvisioningSubstate": "PendingDomainControlValidationREquestApproval", + "validationData": null + } + } + }, + "201": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/customdomains/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/customdomains", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "customHttpsProvisioningState": "Enabling", + "customHttpsProvisioningSubstate": "PendingDomainControlValidationREquestApproval", + "validationData": null + } + } + }, + "202": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/customdomains/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/customdomains", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "customHttpsProvisioningState": "Enabling", + "customHttpsProvisioningSubstate": "PendingDomainControlValidationREquestApproval", + "validationData": null + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_Delete.json new file mode 100644 index 000000000000..502c74bac3f3 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_Delete.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "customDomainName": "www-someDomain-net" + }, + "responses": { + "200": {}, + "202": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/customdomains/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/customdomains", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "customHttpsProvisioningState": "Enabling", + "customHttpsProvisioningSubstate": "PendingDomainControlValidationREquestApproval", + "validationData": null + } + } + }, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_DisableCustomHttps.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_DisableCustomHttps.json new file mode 100644 index 000000000000..8a0b974b22b9 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_DisableCustomHttps.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "customDomainName": "www-someDomain-net" + }, + "responses": { + "200": {}, + "202": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/customdomains/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/customdomains", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "customHttpsProvisioningState": "Enabling", + "customHttpsProvisioningSubstate": "PendingDomainControlValidationREquestApproval", + "validationData": null + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json new file mode 100644 index 000000000000..1bb98872ff7e --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "customDomainName": "www-someDomain-net", + "customHttpsParameters": { + "MinimumTLSVersion": "TLS12", + "certificateSource": "AzureKeyVault", + "protocolType": "ServerNameIndication", + "certificateSourceParameters": { + "OData.type": "#Microsoft.Azure.Cdn.Models.KeyVaultCertificateSourceParameters", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "vaultName": "kv", + "secretName": "secret1", + "secretVersion": "00000000-0000-0000-0000-000000000000", + "updateRule": "NoAction", + "deleteRule": "NoAction" + } + } + }, + "responses": { + "200": {}, + "202": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/customdomains/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/customdomains", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "customHttpsProvisioningState": "Enabling", + "customHttpsProvisioningSubstate": "PendingDomainControlValidationREquestApproval", + "validationData": "validationdata" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json new file mode 100644 index 000000000000..ed42e2512b06 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "customDomainName": "www-someDomain-net", + "customHttpsParameters": { + "MinimumTLSVersion": "TLS12", + "certificateSource": "Cdn", + "protocolType": "ServerNameIndication", + "certificateSourceParameters": { + "OData.type": "#Microsoft.Azure.Cdn.Models.CdnCertificateSourceParameters", + "certificateType": "Shared" + } + } + }, + "responses": { + "200": {}, + "202": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/customdomains/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/customdomains", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "customHttpsProvisioningState": "Enabling", + "customHttpsProvisioningSubstate": "PendingDomainControlValidationREquestApproval", + "validationData": "validationdata" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_Get.json new file mode 100644 index 000000000000..a6a7cfcd9bd9 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_Get.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "customDomainName": "www-someDomain-net" + }, + "responses": { + "200": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/customdomains/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/customdomains", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "customHttpsProvisioningState": "Disabled", + "customHttpsProvisioningSubstate": "None", + "validationData": null + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_ListByEndpoint.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_ListByEndpoint.json new file mode 100644 index 000000000000..9b7329618e99 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/CustomDomains_ListByEndpoint.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/customdomains/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/customdomains", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "customHttpsProvisioningState": "Disabled", + "customHttpsProvisioningSubstate": "None", + "validationData": null + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/EdgeNodes_List.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/EdgeNodes_List.json new file mode 100644 index 000000000000..6583b23e0f8f --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/EdgeNodes_List.json @@ -0,0 +1,107 @@ +{ + "parameters": { + "api-version": "2020-03-31" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Standard_Verizon", + "id": "/providers/Microsoft.Cdn/edgenodes/Standard_Verizon", + "type": "Microsoft.Cdn/edgenodes", + "properties": { + "ipAddressGroups": [ + { + "deliveryRegion": "All", + "ipv4Addresses": [ + { + "baseIpAddress": "192.229.176.0", + "prefixLength": 24 + }, + { + "baseIpAddress": "180.240.184.128", + "prefixLength": 25 + }, + { + "baseIpAddress": "152.195.27.0", + "prefixLength": 24 + } + ], + "ipv6Addresses": [ + { + "baseIpAddress": "2606:2800:60f2::", + "prefixLength": 48 + }, + { + "baseIpAddress": "2606:2800:700c::", + "prefixLength": 48 + } + ] + } + ] + } + }, + { + "name": "Premium_Verizon", + "id": "/providers/Microsoft.Cdn/edgenodes/Premium_Verizon", + "type": "Microsoft.Cdn/edgenodes", + "properties": { + "ipAddressGroups": [ + { + "deliveryRegion": "All", + "ipv4Addresses": [ + { + "baseIpAddress": "192.229.176.0", + "prefixLength": 24 + }, + { + "baseIpAddress": "152.195.27.0", + "prefixLength": 24 + } + ], + "ipv6Addresses": [ + { + "baseIpAddress": "2606:2800:60f2::", + "prefixLength": 48 + }, + { + "baseIpAddress": "2606:2800:700c::", + "prefixLength": 48 + } + ] + } + ] + } + }, + { + "name": "Custom_Verizon", + "id": "/providers/Microsoft.Cdn/edgenodes/Custom_Verizon", + "type": "Microsoft.Cdn/edgenodes", + "properties": { + "ipAddressGroups": [ + { + "deliveryRegion": "All", + "ipv4Addresses": [ + { + "baseIpAddress": "192.229.176.0", + "prefixLength": 24 + }, + { + "baseIpAddress": "2606:2800:420b::", + "prefixLength": 48 + }, + { + "baseIpAddress": "2606:2800:700c::", + "prefixLength": 48 + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Create.json new file mode 100644 index 000000000000..58d5489139d0 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Create.json @@ -0,0 +1,543 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "endpoint": { + "location": "WestUs", + "tags": { + "key1": "value1" + }, + "properties": { + "originHostHeader": "www.bing.com", + "originPath": "/photos", + "contentTypesToCompress": [ + "text/html", + "application/octet-stream" + ], + "isCompressionEnabled": true, + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "BypassCaching", + "defaultOriginGroup": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/originGroups/originGroup1" + }, + "deliveryPolicy": { + "description": "Test description for a policy.", + "rules": [ + { + "name": "rule1", + "order": 1, + "conditions": [ + { + "name": "RemoteAddress", + "parameters": { + "operator": "IPMatch", + "negateCondition": true, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleRemoteAddressConditionParameters" + } + } + ], + "actions": [ + { + "name": "CacheExpiration", + "parameters": { + "cacheBehavior": "Override", + "cacheDuration": "10:10:09", + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleCacheExpirationActionParameters", + "cacheType": "All" + } + }, + { + "name": "ModifyResponseHeader", + "parameters": { + "headerAction": "Overwrite", + "headerName": "Access-Control-Allow-Origin", + "value": "*", + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters" + } + }, + { + "name": "ModifyRequestHeader", + "parameters": { + "headerAction": "Overwrite", + "headerName": "Accept-Encoding", + "value": "gzip", + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters" + } + } + ] + } + ] + }, + "origins": [ + { + "name": "origin1", + "properties": { + "hostName": "www.someDomain1.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain1.net", + "priority": 1, + "weight": 50, + "enabled": true + } + }, + { + "name": "origin2", + "properties": { + "hostName": "www.someDomain2.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain2.net", + "priority": 2, + "weight": 50, + "enabled": true + } + } + ], + "originGroups": [ + { + "name": "originGroup1", + "properties": { + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin1" + }, + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin2" + } + ], + "responseBasedOriginErrorDetectionSettings": { + "responseBasedDetectedErrorTypes": "TcpErrorsOnly", + "responseBasedFailoverThresholdPercentage": 10 + } + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "endpoint4899", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": { + "kay1": "value1" + }, + "location": "WestUs", + "properties": { + "hostName": "endpoint4899.azureedge-test.net", + "originHostHeader": "www.bing.com", + "provisioningState": "Creating", + "resourceState": "Creating", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "BypassCaching", + "originPath": "/photos", + "defaultOriginGroup": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/originGroups/originGroup1" + }, + "origins": [ + { + "name": "origin1", + "properties": { + "hostName": "www.someDomain1.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain1.net", + "priority": 1, + "weight": 50, + "enabled": true + } + }, + { + "name": "origin2", + "properties": { + "hostName": "www.someDomain2.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain2.net", + "priority": 2, + "weight": 50, + "enabled": true + } + } + ], + "originGroups": [ + { + "name": "originGroup1", + "properties": { + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin1" + }, + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin2" + } + ], + "responseBasedOriginErrorDetectionSettings": { + "responseBasedDetectedErrorTypes": "TcpErrorsOnly", + "responseBasedFailoverThresholdPercentage": 10 + } + } + } + ], + "contentTypesToCompress": [ + "text/html", + "application/octet-stream" + ], + "isCompressionEnabled": true, + "optimizationType": null, + "probePath": null, + "geoFilters": [], + "deliveryPolicy": { + "description": "Test description for a policy.", + "rules": [ + { + "name": "rule1", + "order": 1, + "conditions": [ + { + "name": "RemoteAddress", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleRemoteAddressConditionParameters", + "operator": "IPMatch", + "negateCondition": true, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + } + ], + "actions": [ + { + "name": "CacheExpiration", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleCacheExpirationActionParameters", + "cacheBehavior": "Override", + "cacheDuration": "10:10:09", + "cacheType": "All" + } + }, + { + "name": "ModifyResponseHeader", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "Access-Control-Allow-Origin", + "value": "*" + } + }, + { + "name": "ModifyRequestHeader", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "Accept-Encoding", + "value": "gzip" + } + } + ] + } + ] + } + } + } + }, + "201": { + "body": { + "name": "endpoint4899", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": { + "kay1": "value1" + }, + "location": "WestUs", + "properties": { + "hostName": "endpoint4899.azureedge-test.net", + "originHostHeader": "www.bing.com", + "provisioningState": "Creating", + "resourceState": "Creating", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "BypassCaching", + "originPath": "/photos", + "defaultOriginGroup": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/originGroups/originGroup1" + }, + "origins": [ + { + "name": "origin1", + "properties": { + "hostName": "www.someDomain1.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain1.net", + "priority": 1, + "weight": 50, + "enabled": true + } + }, + { + "name": "origin2", + "properties": { + "hostName": "www.someDomain2.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain2.net", + "priority": 2, + "weight": 50, + "enabled": true + } + } + ], + "originGroups": [ + { + "name": "originGroup1", + "properties": { + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin1" + }, + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin2" + } + ], + "responseBasedOriginErrorDetectionSettings": { + "responseBasedDetectedErrorTypes": "TcpErrorsOnly", + "responseBasedFailoverThresholdPercentage": 10 + } + } + } + ], + "contentTypesToCompress": [ + "text/html", + "application/octet-stream" + ], + "isCompressionEnabled": true, + "optimizationType": null, + "probePath": null, + "geoFilters": [], + "deliveryPolicy": { + "description": "Test description for a policy.", + "rules": [ + { + "name": "rule1", + "order": 1, + "conditions": [ + { + "name": "RemoteAddress", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleRemoteAddressConditionParameters", + "operator": "IPMatch", + "negateCondition": true, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + } + ], + "actions": [ + { + "name": "CacheExpiration", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleCacheExpirationActionParameters", + "cacheBehavior": "Override", + "cacheDuration": "10:10:09", + "cacheType": "All" + } + }, + { + "name": "ModifyResponseHeader", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "Access-Control-Allow-Origin", + "value": "*" + } + }, + { + "name": "ModifyRequestHeader", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "Accept-Encoding", + "value": "gzip" + } + } + ] + } + ] + } + } + } + }, + "202": { + "body": { + "name": "endpoint4899", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": { + "kay1": "value1" + }, + "location": "WestUs", + "properties": { + "hostName": "endpoint4899.azureedge-test.net", + "originHostHeader": "www.bing.com", + "provisioningState": "Creating", + "resourceState": "Creating", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "BypassCaching", + "originPath": "/photos", + "defaultOriginGroup": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/originGroups/originGroup1" + }, + "origins": [ + { + "name": "origin1", + "properties": { + "hostName": "www.someDomain1.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain1.net", + "priority": 1, + "weight": 50, + "enabled": true + } + }, + { + "name": "origin2", + "properties": { + "hostName": "www.someDomain2.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain2.net", + "priority": 2, + "weight": 50, + "enabled": true + } + } + ], + "originGroups": [ + { + "name": "originGroup1", + "properties": { + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin1" + }, + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin2" + } + ], + "responseBasedOriginErrorDetectionSettings": { + "responseBasedDetectedErrorTypes": "TcpErrorsOnly", + "responseBasedFailoverThresholdPercentage": 10 + } + } + } + ], + "contentTypesToCompress": [ + "text/html", + "application/octet-stream" + ], + "isCompressionEnabled": true, + "optimizationType": null, + "probePath": null, + "geoFilters": [], + "deliveryPolicy": { + "description": "Test description for a policy.", + "rules": [ + { + "name": "rule1", + "order": 1, + "conditions": [ + { + "name": "RemoteAddress", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleRemoteAddressConditionParameters", + "operator": "IPMatch", + "negateCondition": true, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + } + ], + "actions": [ + { + "name": "CacheExpiration", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleCacheExpirationActionParameters", + "cacheBehavior": "Override", + "cacheDuration": "10:10:09", + "cacheType": "All" + } + }, + { + "name": "ModifyResponseHeader", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "Access-Control-Allow-Origin", + "value": "*" + } + }, + { + "name": "ModifyRequestHeader", + "parameters": { + "@odata.type": "#Microsoft.Azure.Cdn.Models.DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "Accept-Encoding", + "value": "gzip" + } + } + ] + } + ] + } + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Delete.json new file mode 100644 index 000000000000..3f86f09f9aa6 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Get.json new file mode 100644 index 000000000000..52d7141aacb9 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Get.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "200": { + "body": { + "name": "endpoint1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": {}, + "location": "CentralUs", + "properties": { + "hostName": "endpoint1.azureedge.net", + "originHostHeader": "www.bing.com", + "provisioningState": "Succeeded", + "resourceState": "Running", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "NotSet", + "originPath": null, + "origins": [ + { + "name": "www-bing-com", + "properties": { + "hostName": "www.bing.com", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain2.net", + "priority": 2, + "weight": 50, + "enabled": true + } + } + ], + "originGroups": [ + { + "name": "originGroup1", + "properties": { + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-bing-com" + } + ] + } + } + ], + "contentTypesToCompress": [], + "isCompressionEnabled": false, + "optimizationType": "DynamicSiteAcceleration", + "probePath": "/image", + "geoFilters": [], + "defaultOriginGroup": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/originGroups/originGroup1" + } + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_ListByProfile.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_ListByProfile.json new file mode 100644 index 000000000000..b152f3bbd6de --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_ListByProfile.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "endpoint1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": {}, + "location": "CentralUs", + "properties": { + "hostName": "endpoint1.azureedge.net", + "originHostHeader": "www.bing.com", + "provisioningState": "Succeeded", + "resourceState": "Running", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "NotSet", + "originPath": null, + "origins": [ + { + "name": "www-bing-com", + "properties": { + "hostName": "www.bing.com", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain2.net", + "priority": 2, + "weight": 50, + "enabled": true + } + } + ], + "originGroups": [ + { + "name": "originGroup1", + "properties": { + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-bing-com" + } + ], + "responseBasedOriginErrorDetectionSettings": { + "responseBasedDetectedErrorTypes": "TcpErrorsOnly", + "responseBasedFailoverThresholdPercentage": 10 + } + } + } + ], + "contentTypesToCompress": [], + "isCompressionEnabled": false, + "optimizationType": "DynamicSiteAcceleration", + "probePath": "/image", + "geoFilters": [], + "defaultOriginGroup": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/originGroups/originGroup1" + } + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_ListResourceUsage.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_ListResourceUsage.json new file mode 100644 index 000000000000..97622a7d7d91 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_ListResourceUsage.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "customdomain", + "unit": "count", + "currentValue": 1, + "limit": 20 + }, + { + "resourceType": "geofilter", + "unit": "count", + "currentValue": 0, + "limit": 25 + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_LoadContent.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_LoadContent.json new file mode 100644 index 000000000000..8ec0a0e2a181 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_LoadContent.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "contentFilePaths": { + "contentPaths": [ + "/folder1" + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_PurgeContent.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_PurgeContent.json new file mode 100644 index 000000000000..8ec0a0e2a181 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_PurgeContent.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "contentFilePaths": { + "contentPaths": [ + "/folder1" + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Start.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Start.json new file mode 100644 index 000000000000..911d81318e44 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Start.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "200": { + "body": { + "name": "endpoint4899", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": { + "kay1": "value1" + }, + "location": "WestUs", + "properties": { + "hostName": "endpoint1.azureedge.net", + "originHostHeader": "www.bing.com", + "provisioningState": "Succeeded", + "resourceState": "Starting", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "NotSet", + "originPath": null, + "origins": [ + { + "name": "www-bing-com", + "properties": { + "hostName": "www.bing.com", + "httpPort": 80, + "httpsPort": 443 + } + } + ], + "contentTypesToCompress": [], + "isCompressionEnabled": false, + "optimizationType": "DynamicSiteAcceleration", + "probePath": "/image", + "geoFilters": [] + } + } + }, + "202": { + "body": { + "name": "endpoint4899", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": { + "kay1": "value1" + }, + "location": "WestUs", + "properties": { + "hostName": "endpoint1.azureedge.net", + "originHostHeader": "www.bing.com", + "provisioningState": "Succeeded", + "resourceState": "Starting", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "NotSet", + "originPath": null, + "origins": [ + { + "name": "www-bing-com", + "properties": { + "hostName": "www.bing.com", + "httpPort": 80, + "httpsPort": 443 + } + } + ], + "contentTypesToCompress": [], + "isCompressionEnabled": false, + "optimizationType": "DynamicSiteAcceleration", + "probePath": "/image", + "geoFilters": [] + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Stop.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Stop.json new file mode 100644 index 000000000000..8d670c159f4a --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Stop.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "200": { + "body": { + "name": "endpoint4899", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": { + "kay1": "value1" + }, + "location": "WestUs", + "properties": { + "hostName": "endpoint1.azureedge.net", + "originHostHeader": "www.bing.com", + "provisioningState": "Succeeded", + "resourceState": "Stopping", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "NotSet", + "originPath": null, + "origins": [ + { + "name": "www-bing-com", + "properties": { + "hostName": "www.bing.com", + "httpPort": 80, + "httpsPort": 443 + } + } + ], + "contentTypesToCompress": [], + "isCompressionEnabled": false, + "optimizationType": "DynamicSiteAcceleration", + "probePath": "/image", + "geoFilters": [] + } + } + }, + "202": { + "body": { + "name": "endpoint4899", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": { + "kay1": "value1" + }, + "location": "WestUs", + "properties": { + "hostName": "endpoint1.azureedge.net", + "originHostHeader": "www.bing.com", + "provisioningState": "Succeeded", + "resourceState": "Stopping", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "NotSet", + "originPath": null, + "origins": [ + { + "name": "www-bing-com", + "properties": { + "hostName": "www.bing.com", + "httpPort": 80, + "httpsPort": 443 + } + } + ], + "contentTypesToCompress": [], + "isCompressionEnabled": false, + "optimizationType": "DynamicSiteAcceleration", + "probePath": "/image", + "geoFilters": [] + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Update.json new file mode 100644 index 000000000000..8f8b4f876ccd --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_Update.json @@ -0,0 +1,138 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "endpointUpdateProperties": { + "tags": { + "additionalProperties": "Tag1" + } + } + }, + "responses": { + "200": { + "body": { + "name": "endpoint1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": { + "additionalProperties": "Tag1" + }, + "location": "WestCentralUs", + "properties": { + "hostName": "endpoint1.azureedge.net", + "originHostHeader": null, + "provisioningState": "Creating", + "resourceState": "Creating", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "IgnoreQueryString", + "originPath": null, + "origins": [ + { + "name": "www-bing-com", + "properties": { + "hostName": "www.bing.com", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain2.net", + "priority": 2, + "weight": 50, + "enabled": true + } + } + ], + "originGroups": [ + { + "name": "originGroup1", + "properties": { + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-bing-com" + } + ] + } + } + ], + "defaultOriginGroup": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/originGroups/originGroup1" + }, + "contentTypesToCompress": [], + "isCompressionEnabled": false, + "optimizationType": null, + "probePath": null, + "geoFilters": [] + } + } + }, + "202": { + "body": { + "name": "endpoint1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": { + "additionalProperties": "Tag1" + }, + "location": "WestCentralUs", + "properties": { + "hostName": "endpoint1.azureedge.net", + "originHostHeader": null, + "provisioningState": "Creating", + "resourceState": "Creating", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "IgnoreQueryString", + "originPath": null, + "origins": [ + { + "name": "www-bing-com", + "properties": { + "hostName": "www.bing.com", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain2.net", + "priority": 2, + "weight": 50, + "enabled": true + } + } + ], + "originGroups": [ + { + "name": "originGroup1", + "properties": { + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-bing-com" + } + ] + } + } + ], + "contentTypesToCompress": [], + "isCompressionEnabled": false, + "optimizationType": null, + "probePath": null, + "geoFilters": [], + "defaultOriginGroup": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/originGroups/originGroup1" + } + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_ValidateCustomDomain.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_ValidateCustomDomain.json new file mode 100644 index 000000000000..63777e355ac3 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Endpoints_ValidateCustomDomain.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "customDomainProperties": { + "hostName": "www.someDomain.com" + } + }, + "responses": { + "200": { + "body": { + "customDomainValidated": true, + "message": null, + "reason": null + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Operations_List.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Operations_List.json new file mode 100644 index 000000000000..0c9d7e28bdaf --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Operations_List.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "api-version": "2020-03-31" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Cdn/register/action", + "display": { + "provider": "Microsoft.Cdn", + "resource": "Microsoft.Cdn Resource Provider", + "operation": "Registers the Microsoft.Cdn Resource Provider" + } + }, + { + "name": "Microsoft.Cdn/edgenodes/read", + "display": { + "provider": "Microsoft.Cdn", + "resource": "EdgeNode", + "operation": "read" + } + }, + { + "name": "Microsoft.Cdn/edgenodes/write", + "display": { + "provider": "Microsoft.Cdn", + "resource": "EdgeNode", + "operation": "write" + } + }, + { + "name": "Microsoft.Cdn/edgenodes/delete", + "display": { + "provider": "Microsoft.Cdn", + "resource": "EdgeNode", + "operation": "delete" + } + }, + { + "name": "Microsoft.Cdn/profiles/read", + "display": { + "provider": "Microsoft.Cdn", + "resource": "Profile", + "operation": "read" + } + }, + { + "name": "Microsoft.Cdn/profiles/write", + "display": { + "provider": "Microsoft.Cdn", + "resource": "Profile", + "operation": "write" + } + }, + { + "name": "Microsoft.Cdn/operationresults/profileresults/write", + "display": { + "provider": "Microsoft.Cdn", + "resource": "Profile", + "operation": "write" + } + }, + { + "name": "Microsoft.Cdn/operationresults/profileresults/delete", + "display": { + "provider": "Microsoft.Cdn", + "resource": "Profile", + "operation": "delete" + } + }, + { + "name": "Microsoft.Cdn/operationresults/profileresults/CheckResourceUsage/action", + "display": { + "provider": "Microsoft.Cdn", + "resource": "Profile", + "operation": "CheckResourceUsage" + } + }, + { + "name": "Microsoft.Cdn/operationresults/profileresults/GenerateSsoUri/action", + "display": { + "provider": "Microsoft.Cdn", + "resource": "Profile", + "operation": "GenerateSsoUri" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/OriginGroups_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/OriginGroups_Create.json new file mode 100644 index 000000000000..d9011eeb0e0b --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/OriginGroups_Create.json @@ -0,0 +1,109 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "originGroupName": "origingroup1", + "originGroup": { + "properties": { + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin1" + } + ], + "responseBasedOriginErrorDetectionSettings": { + "responseBasedDetectedErrorTypes": "TcpErrorsOnly", + "responseBasedFailoverThresholdPercentage": 10 + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "origingroup1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/originGroups/originGroup1", + "type": "Microsoft.Cdn/profiles/endpoints/origingroups", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin1" + } + ], + "responseBasedOriginErrorDetectionSettings": { + "responseBasedDetectedErrorTypes": "TcpErrorsOnly", + "responseBasedFailoverThresholdPercentage": 10 + } + } + } + }, + "201": { + "body": { + "name": "origingroup1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/originGroups/originGroup1", + "type": "Microsoft.Cdn/profiles/endpoints/origingroups", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin1" + } + ], + "responseBasedOriginErrorDetectionSettings": { + "responseBasedDetectedErrorTypes": "TcpErrorsOnly", + "responseBasedFailoverThresholdPercentage": 10 + } + } + } + }, + "202": { + "body": { + "name": "originGroup1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/originGroups/originGroup1", + "type": "Microsoft.Cdn/profiles/endpoints/origingroups", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin1" + } + ], + "responseBasedOriginErrorDetectionSettings": { + "responseBasedDetectedErrorTypes": "TcpErrorsOnly", + "responseBasedFailoverThresholdPercentage": 10 + } + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/OriginGroups_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/OriginGroups_Delete.json new file mode 100644 index 000000000000..579693751a64 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/OriginGroups_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "originGroupName": "originGroup1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/OriginGroups_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/OriginGroups_Get.json new file mode 100644 index 000000000000..d07d328840f6 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/OriginGroups_Get.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "originGroupName": "originGroup1" + }, + "responses": { + "200": { + "body": { + "name": "origingroup1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/originGroups/originGroup1", + "type": "Microsoft.Cdn/profiles/endpoints/origingroups", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin1" + } + ], + "responseBasedOriginErrorDetectionSettings": { + "responseBasedDetectedErrorTypes": "TcpAndHttpErrors", + "responseBasedFailoverThresholdPercentage": 10, + "httpErrorRanges": [ + { + "begin": 500, + "end": 505 + } + ] + } + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/OriginGroups_ListByEndpoint.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/OriginGroups_ListByEndpoint.json new file mode 100644 index 000000000000..9d537a147041 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/OriginGroups_ListByEndpoint.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "origingroup1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/originGroups/originGroup1", + "type": "Microsoft.Cdn/profiles/endpoints/origingroups", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin1" + } + ], + "responseBasedOriginErrorDetectionSettings": { + "responseBasedDetectedErrorTypes": "TcpErrorsOnly", + "responseBasedFailoverThresholdPercentage": 10 + } + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/OriginGroups_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/OriginGroups_Update.json new file mode 100644 index 000000000000..5308383c35c0 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/OriginGroups_Update.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "originGroupName": "originGroup1", + "originGroupUpdateProperties": { + "properties": { + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin2" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/origins", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin2" + } + ] + } + } + }, + "202": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/origins", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin2" + } + ] + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_Create.json new file mode 100644 index 000000000000..ba59911b81e7 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_Create.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "originName": "www-someDomain-net", + "origin": { + "location": "WestUs", + "tags": { + "key1": "value1" + }, + "properties": { + "hostName": "www.someDomain.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain.net", + "priority": 1, + "weight": 50, + "enabled": true + } + } + }, + "responses": { + "200": { + "body": { + "name": "www-someDomain-net", + "location": "WestUs", + "tags": { + "key1": "value1" + }, + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/origins", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain.net", + "priority": 1, + "weight": 50, + "enabled": true + } + } + }, + "201": { + "body": { + "name": "www-someDomain-net", + "location": "WestUs", + "tags": { + "key1": "value1" + }, + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/origins", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain.net", + "priority": 1, + "weight": 50, + "enabled": true + } + } + }, + "202": { + "body": { + "name": "www-someDomain-net", + "location": "WestUs", + "tags": { + "key1": "value1" + }, + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/origins", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain.net", + "priority": 1, + "weight": 50, + "enabled": true + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_Delete.json new file mode 100644 index 000000000000..497e0f8f3c37 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "originName": "origin1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_Get.json new file mode 100644 index 000000000000..56444627eff0 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_Get.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "originName": "www-someDomain-net" + }, + "responses": { + "200": { + "body": { + "name": "www-someDomain-net", + "location": "WestUs", + "tags": { + "key1": "value1" + }, + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/origins", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "httpPort": null, + "httpsPort": null, + "originHostHeader": "www.someDomain.net", + "priority": 1, + "weight": 50, + "enabled": true + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_ListByEndpoint.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_ListByEndpoint.json new file mode 100644 index 000000000000..1e81714e36a8 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_ListByEndpoint.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "www-someDomain-net", + "location": "WestUs", + "tags": { + "key1": "value1" + }, + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/origins", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "httpPort": null, + "httpsPort": null, + "originHostHeader": "www.someDomain.net", + "priority": 1, + "weight": 50, + "enabled": true + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_Update.json new file mode 100644 index 000000000000..c47e493a4b2a --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Origins_Update.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "originName": "www-someDomain-net", + "originUpdateProperties": { + "tags": { + "key1": "value1" + }, + "properties": { + "httpPort": 42, + "httpsPort": 43, + "originHostHeader": "www.someDomain2.net", + "priority": 1, + "weight": 50, + "enabled": true + } + } + }, + "responses": { + "200": { + "body": { + "name": "www-someDomain-net", + "location": "WestUs", + "tags": { + "key1": "value1" + }, + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/origins", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "httpPort": 42, + "httpsPort": 43, + "originHostHeader": "www.someDomain2.net", + "priority": 1, + "weight": 50, + "enabled": true + } + } + }, + "202": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-someDomain-net", + "location": "WestUs", + "tags": { + "key1": "value1" + }, + "type": "Microsoft.Cdn/profiles/endpoints/origins", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "httpPort": 42, + "httpsPort": 43, + "originHostHeader": "www.someDomain2.net", + "priority": 1, + "weight": 50, + "enabled": true + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_Create.json new file mode 100644 index 000000000000..83c7264d1aa9 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_Create.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "profile": { + "location": "WestCentralUs", + "sku": { + "name": "Standard_Verizon" + } + } + }, + "responses": { + "200": { + "body": { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": {}, + "location": "WestCentralUs", + "sku": { + "name": "Standard_Verizon" + }, + "properties": { + "provisioningState": "Creating", + "resourceState": "Creating" + } + } + }, + "201": { + "body": { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": {}, + "location": "WestCentralUs", + "sku": { + "name": "Standard_Verizon" + }, + "properties": { + "provisioningState": "Creating", + "resourceState": "Creating" + } + } + }, + "202": { + "body": { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": {}, + "location": "WestCentralUs", + "sku": { + "name": "Standard_Verizon" + }, + "properties": { + "provisioningState": "Creating", + "resourceState": "Creating" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_Delete.json new file mode 100644 index 000000000000..8dc5b312a313 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_GenerateSsoUri.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_GenerateSsoUri.json new file mode 100644 index 000000000000..8860f9753469 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_GenerateSsoUri.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": { + "body": { + "ssoUriValue": "https://someuri.com" + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_Get.json new file mode 100644 index 000000000000..9d75fbdcbafe --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_Get.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": { + "body": { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": {}, + "location": "WestCentralUs", + "sku": { + "name": "Standard_Akamai" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_List.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_List.json new file mode 100644 index 000000000000..57b729d7ec4f --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_List.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG1/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": {}, + "location": "WestCentralUs", + "sku": { + "name": "Standard_Akamai" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + }, + { + "name": "profile2", + "id": "/subscriptions/subid/resourcegroups/RG1/providers/Microsoft.Cdn/profiles/profile2", + "type": "Microsoft.Cdn/profiles", + "tags": {}, + "location": "WestCentralUs", + "sku": { + "name": "Standard_Akamai" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_ListByResourceGroup.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_ListByResourceGroup.json new file mode 100644 index 000000000000..f8ac7df9d109 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_ListByResourceGroup.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": {}, + "location": "WestCentralUs", + "sku": { + "name": "Standard_Akamai" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + }, + { + "name": "profile2", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile2", + "type": "Microsoft.Cdn/profiles", + "tags": {}, + "location": "WestCentralUs", + "sku": { + "name": "Standard_Akamai" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_ListResourceUsage.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_ListResourceUsage.json new file mode 100644 index 000000000000..817007a24c82 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_ListResourceUsage.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "endpoint", + "unit": "count", + "currentValue": 0, + "limit": 25 + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_ListSupportedOptimizationTypes.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_ListSupportedOptimizationTypes.json new file mode 100644 index 000000000000..eb48c6e3eb83 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_ListSupportedOptimizationTypes.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": { + "body": { + "supportedOptimizationTypes": [ + "GeneralWebDelivery", + "DynamicSiteAcceleration" + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_Update.json new file mode 100644 index 000000000000..05e1324d08db --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/Profiles_Update.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "profileUpdateParameters": { + "tags": { + "additionalProperties": "Tag1" + } + } + }, + "responses": { + "200": { + "body": { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": { + "additionalProperties": "Tag1" + }, + "location": "WestCentralUs", + "sku": { + "name": "Standard_Verizon" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + }, + "202": { + "body": { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": { + "additionalProperties": "Tag1" + }, + "location": "WestCentralUs", + "sku": { + "name": "Standard_Verizon" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/ResourceUsage_List.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/ResourceUsage_List.json new file mode 100644 index 000000000000..04dd17cacaca --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/ResourceUsage_List.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "profile", + "unit": "count", + "currentValue": 31, + "limit": 200 + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/ValidateProbe.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/ValidateProbe.json new file mode 100644 index 000000000000..0fbcc807ca79 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/ValidateProbe.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "validateProbeInput": { + "probeURL": "https://www.bing.com/image" + } + }, + "responses": { + "200": { + "body": { + "isValid": true, + "errorCode": "None", + "message": null + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafListManagedRuleSets.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafListManagedRuleSets.json new file mode 100644 index 000000000000..35a6f617f967 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafListManagedRuleSets.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "DefaultRuleSet_1.0", + "id": "/subscriptions/subid/providers/Microsoft.Cdn/CdnWebApplicationFirewallManagedRuleSets", + "type": "Microsoft.Cdn/cdnwebapplicationfirewallmanagedrulesets", + "sku": { + "name": "Standard_Microsoft" + }, + "properties": { + "provisioningState": "Succeeded", + "ruleSetType": "DefaultRuleSet", + "ruleSetVersion": "preview-1.0", + "ruleGroups": [ + { + "ruleGroupName": "Group1", + "description": "Description for rule group 1.", + "rules": [ + { + "ruleId": "GROUP1-0001", + "description": "Generic managed web application firewall rule." + }, + { + "ruleId": "GROUP1-0002", + "description": "Generic managed web application firewall rule." + } + ] + }, + { + "ruleGroupName": "Group2", + "description": "Description for rule group 2.", + "rules": [ + { + "ruleId": "GROUP2-0001", + "description": "Generic managed web application firewall rule." + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafListPolicies.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafListPolicies.json new file mode 100644 index 000000000000..f768c71a1cef --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafListPolicies.json @@ -0,0 +1,265 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "MicrosoftCdnWafPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/MicrosoftCdnWafPolicy", + "type": "Microsoft.Cdn/cdnwebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "sku": { + "name": "Standard_Microsoft" + }, + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "enabledState": "Enabled", + "mode": "Prevention", + "defaultRedirectUrl": "http://www.bing.com", + "defaultCustomBlockResponseStatusCode": 429, + "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" + }, + "rateLimitRules": { + "rules": [ + { + "name": "RateLimitRule1", + "priority": 1, + "enabledState": "Enabled", + "rateLimitDurationInMinutes": 0, + "rateLimitThreshold": 1000, + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "IPMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ], + "action": "Block" + } + ] + }, + "customRules": { + "rules": [ + { + "name": "CustomRule1", + "priority": 2, + "enabledState": "Enabled", + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "GeoMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "CH" + ] + }, + { + "matchVariable": "RequestHeader", + "selector": "UserAgent", + "operator": "Contains", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "windows" + ] + }, + { + "matchVariable": "QueryString", + "selector": "search", + "operator": "Contains", + "negateCondition": false, + "transforms": [ + "UrlDecode", + "Lowercase" + ], + "matchValue": [ + "" + ] + } + ], + "action": "Block" + } + ] + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "DefaultRuleSet", + "ruleSetVersion": "preview-1.0", + "ruleGroupOverrides": [ + { + "ruleGroupName": "Group1", + "rules": [ + { + "ruleId": "GROUP1-0001", + "enabledState": "Enabled", + "action": "Redirect" + }, + { + "ruleId": "GROUP1-0002", + "enabledState": "Disabled" + } + ] + } + ] + } + ] + }, + "endpointLinks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint2" + } + ] + } + }, + { + "name": "VerizonStandardCdnWafPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/VerizonStandardCdnWafPolicy", + "type": "Microsoft.Cdn/cdnwebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "sku": { + "name": "Standard_Verizon" + }, + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "enabledState": "Enabled", + "mode": "Prevention", + "defaultRedirectUrl": "http://www.bing.com", + "defaultCustomBlockResponseStatusCode": 429, + "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" + }, + "rateLimitRules": { + "rules": [ + { + "name": "RateLimitRule1", + "priority": 1, + "enabledState": "Enabled", + "rateLimitDurationInMinutes": 0, + "rateLimitThreshold": 1000, + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "IPMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ], + "action": "Block" + } + ] + }, + "customRules": { + "rules": [ + { + "name": "CustomRule1", + "priority": 2, + "enabledState": "Enabled", + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "GeoMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "CH" + ] + }, + { + "matchVariable": "RequestHeader", + "selector": "UserAgent", + "operator": "Contains", + "negateCondition": false, + "matchValue": [ + "windows" + ] + }, + { + "matchVariable": "QueryString", + "selector": "search", + "operator": "Contains", + "negateCondition": false, + "transforms": [ + "UrlDecode", + "Lowercase" + ], + "matchValue": [ + "" + ] + } + ], + "action": "Block" + } + ] + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "ECRS", + "ruleSetVersion": "2018-11-2", + "ruleGroupOverrides": [ + { + "ruleGroupName": "XSS", + "rules": [ + { + "ruleId": "XSS-0001", + "enabledState": "Enabled", + "action": "Redirect" + }, + { + "ruleId": "XSS-0002", + "enabledState": "Disabled" + } + ] + } + ] + } + ] + }, + "endpointLinks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint3" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafPatchPolicy.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafPatchPolicy.json new file mode 100644 index 000000000000..f25f8d61b5a9 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafPatchPolicy.json @@ -0,0 +1,272 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "MicrosoftCdnWafPolicy", + "cdnWebApplicationFirewallPolicyPatchParameters": { + "tags": { + "foo": "bar" + } + } + }, + "responses": { + "200": { + "body": { + "name": "MicrosoftCdnWafPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/MicrosoftCdnWafPolicy", + "type": "Microsoft.Cdn/cdnwebapplicationfirewallpolicies", + "tags": { + "foo": "bar" + }, + "location": "WestUs", + "sku": { + "name": "Standard_Microsoft" + }, + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "enabledState": "Enabled", + "mode": "Prevention", + "defaultRedirectUrl": "http://www.bing.com", + "defaultCustomBlockResponseStatusCode": 403, + "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" + }, + "rateLimitRules": { + "rules": [ + { + "name": "RateLimitRule1", + "priority": 1, + "enabledState": "Enabled", + "rateLimitDurationInMinutes": 0, + "rateLimitThreshold": 1000, + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "IPMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ], + "action": "Block" + } + ] + }, + "customRules": { + "rules": [ + { + "name": "CustomRule1", + "priority": 2, + "enabledState": "Enabled", + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "GeoMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "CH" + ] + }, + { + "matchVariable": "RequestHeader", + "selector": "UserAgent", + "operator": "Contains", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "windows" + ] + }, + { + "matchVariable": "QueryString", + "selector": "search", + "operator": "Contains", + "negateCondition": false, + "transforms": [ + "UrlDecode", + "Lowercase" + ], + "matchValue": [ + "" + ] + } + ], + "action": "Block" + } + ] + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "DefaultRuleSet", + "ruleSetVersion": "preview-1.0", + "ruleGroupOverrides": [ + { + "ruleGroupName": "Group1", + "rules": [ + { + "ruleId": "GROUP1-0001", + "enabledState": "Enabled", + "action": "Redirect" + }, + { + "ruleId": "GROUP1-0002", + "enabledState": "Disabled" + } + ] + } + ] + } + ] + }, + "endpointLinks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint2" + } + ] + } + } + }, + "202": { + "body": { + "name": "MicrosoftCdnWafPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/MicrosoftCdnWafPolicy", + "type": "Microsoft.Cdn/cdnwebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "sku": { + "name": "Standard_Microsoft" + }, + "properties": { + "resourceState": "Creating", + "provisioningState": "Succeeded", + "policySettings": { + "enabledState": "Enabled", + "mode": "Prevention", + "defaultRedirectUrl": "http://www.bing.com", + "defaultCustomBlockResponseStatusCode": 403, + "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" + }, + "rateLimitRules": { + "rules": [ + { + "name": "RateLimitRule1", + "priority": 1, + "enabledState": "Enabled", + "rateLimitDurationInMinutes": 0, + "rateLimitThreshold": 1000, + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "IPMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ], + "action": "Block" + } + ] + }, + "customRules": { + "rules": [ + { + "name": "CustomRule1", + "priority": 2, + "enabledState": "Enabled", + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "GeoMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "CH" + ] + }, + { + "matchVariable": "RequestHeader", + "selector": "UserAgent", + "operator": "Contains", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "windows" + ] + }, + { + "matchVariable": "QueryString", + "selector": "search", + "operator": "Contains", + "negateCondition": false, + "transforms": [ + "UrlDecode", + "Lowercase" + ], + "matchValue": [ + "" + ] + } + ], + "action": "Block" + } + ] + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "DefaultRuleSet", + "ruleSetVersion": "preview-1.0", + "ruleGroupOverrides": [ + { + "ruleGroupName": "Group1", + "rules": [ + { + "ruleId": "GROUP1-0001", + "enabledState": "Enabled", + "action": "Redirect" + }, + { + "ruleId": "GROUP1-0002", + "enabledState": "Disabled" + } + ] + } + ] + } + ] + }, + "endpointLinks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint2" + } + ] + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafPolicyCreateOrUpdate.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafPolicyCreateOrUpdate.json new file mode 100644 index 000000000000..b5fdc100e22a --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafPolicyCreateOrUpdate.json @@ -0,0 +1,505 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "MicrosoftCdnWafPolicy", + "cdnWebApplicationFirewallPolicy": { + "location": "WestUs", + "sku": { + "name": "Standard_Microsoft" + }, + "properties": { + "policySettings": { + "defaultRedirectUrl": "http://www.bing.com", + "defaultCustomBlockResponseStatusCode": 200, + "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" + }, + "rateLimitRules": { + "rules": [ + { + "name": "RateLimitRule1", + "priority": 1, + "enabledState": "Enabled", + "rateLimitDurationInMinutes": 0, + "rateLimitThreshold": 1000, + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "IPMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ], + "action": "Block" + } + ] + }, + "customRules": { + "rules": [ + { + "name": "CustomRule1", + "priority": 2, + "enabledState": "Enabled", + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "GeoMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "CH" + ] + }, + { + "matchVariable": "RequestHeader", + "selector": "UserAgent", + "operator": "Contains", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "windows" + ] + }, + { + "matchVariable": "QueryString", + "selector": "search", + "operator": "Contains", + "negateCondition": false, + "transforms": [ + "UrlDecode", + "Lowercase" + ], + "matchValue": [ + "" + ] + } + ], + "action": "Block" + } + ] + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "DefaultRuleSet", + "ruleSetVersion": "preview-1.0", + "ruleGroupOverrides": [ + { + "ruleGroupName": "Group1", + "rules": [ + { + "ruleId": "GROUP1-0001", + "enabledState": "Enabled", + "action": "Redirect" + }, + { + "ruleId": "GROUP1-0002", + "enabledState": "Disabled" + } + ] + } + ] + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "MicrosoftCdnWafPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/MicrosoftCdnWafPolicy", + "type": "Microsoft.Cdn/cdnwebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "sku": { + "name": "Standard_Microsoft" + }, + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "enabledState": "Enabled", + "mode": "Prevention", + "defaultRedirectUrl": "http://www.bing.com", + "defaultCustomBlockResponseStatusCode": 200, + "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" + }, + "rateLimitRules": { + "rules": [ + { + "name": "RateLimitRule1", + "priority": 1, + "enabledState": "Enabled", + "rateLimitDurationInMinutes": 0, + "rateLimitThreshold": 1000, + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "IPMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ], + "action": "Block" + } + ] + }, + "customRules": { + "rules": [ + { + "name": "CustomRule1", + "priority": 2, + "enabledState": "Enabled", + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "GeoMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "CH" + ] + }, + { + "matchVariable": "RequestHeader", + "selector": "UserAgent", + "operator": "Contains", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "windows" + ] + }, + { + "matchVariable": "QueryString", + "selector": "search", + "operator": "Contains", + "negateCondition": false, + "transforms": [ + "UrlDecode", + "Lowercase" + ], + "matchValue": [ + "" + ] + } + ], + "action": "Block" + } + ] + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "DefaultRuleSet", + "ruleSetVersion": "preview-1.0", + "ruleGroupOverrides": [ + { + "ruleGroupName": "Group1", + "rules": [ + { + "ruleId": "GROUP1-0001", + "enabledState": "Enabled", + "action": "Redirect" + }, + { + "ruleId": "GROUP1-0002", + "enabledState": "Disabled" + } + ] + } + ] + } + ] + }, + "endpointLinks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint2" + } + ] + } + } + }, + "201": { + "body": { + "name": "MicrosoftCdnWafPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/MicrosoftCdnWafPolicy", + "type": "Microsoft.Cdn/cdnwebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "sku": { + "name": "Standard_Microsoft" + }, + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "enabledState": "Enabled", + "mode": "Prevention", + "defaultRedirectUrl": "http://www.bing.com", + "defaultCustomBlockResponseStatusCode": 200, + "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" + }, + "rateLimitRules": { + "rules": [ + { + "name": "RateLimitRule1", + "priority": 1, + "enabledState": "Enabled", + "rateLimitDurationInMinutes": 0, + "rateLimitThreshold": 1000, + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "IPMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ], + "action": "Block" + } + ] + }, + "customRules": { + "rules": [ + { + "name": "CustomRule1", + "priority": 2, + "enabledState": "Enabled", + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "GeoMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "CH" + ] + }, + { + "matchVariable": "RequestHeader", + "selector": "UserAgent", + "operator": "Contains", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "windows" + ] + }, + { + "matchVariable": "QueryString", + "selector": "search", + "operator": "Contains", + "negateCondition": false, + "transforms": [ + "UrlDecode", + "Lowercase" + ], + "matchValue": [ + "" + ] + } + ], + "action": "Block" + } + ] + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "DefaultRuleSet", + "ruleSetVersion": "preview-1.0", + "ruleGroupOverrides": [ + { + "ruleGroupName": "Group1", + "rules": [ + { + "ruleId": "GROUP1-0001", + "enabledState": "Enabled", + "action": "Redirect" + }, + { + "ruleId": "GROUP1-0002", + "enabledState": "Disabled" + } + ] + } + ] + } + ] + }, + "endpointLinks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint2" + } + ] + } + } + }, + "202": { + "body": { + "name": "MicrosoftCdnWafPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/MicrosoftCdnWafPolicy", + "type": "Microsoft.Cdn/cdnwebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "sku": { + "name": "Standard_Microsoft" + }, + "properties": { + "resourceState": "Creating", + "provisioningState": "Succeeded", + "policySettings": { + "enabledState": "Enabled", + "mode": "Prevention", + "defaultRedirectUrl": "http://www.bing.com", + "defaultCustomBlockResponseStatusCode": 200, + "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" + }, + "rateLimitRules": { + "rules": [ + { + "name": "RateLimitRule1", + "priority": 1, + "enabledState": "Enabled", + "rateLimitDurationInMinutes": 0, + "rateLimitThreshold": 1000, + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "IPMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ], + "action": "Block" + } + ] + }, + "customRules": { + "rules": [ + { + "name": "CustomRule1", + "priority": 3, + "enabledState": "Enabled", + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "GeoMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "CH" + ] + }, + { + "matchVariable": "RequestHeader", + "selector": "UserAgent", + "operator": "Contains", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "windows" + ] + }, + { + "matchVariable": "QueryString", + "selector": "search", + "operator": "Contains", + "negateCondition": false, + "transforms": [ + "UrlDecode", + "Lowercase" + ], + "matchValue": [ + "" + ] + } + ], + "action": "Block" + } + ] + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "DefaultRuleSet", + "ruleSetVersion": "preview-1.0", + "ruleGroupOverrides": [ + { + "ruleGroupName": "Group1", + "rules": [ + { + "ruleId": "GROUP1-0001", + "enabledState": "Enabled", + "action": "Redirect" + }, + { + "ruleId": "GROUP1-0002", + "enabledState": "Disabled" + } + ] + } + ] + } + ] + }, + "endpointLinks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint2" + } + ] + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafPolicyDelete.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafPolicyDelete.json new file mode 100644 index 000000000000..7de315080401 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafPolicyDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "Policy1" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafPolicyGet.json b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafPolicyGet.json new file mode 100644 index 000000000000..cec9f3b447a3 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/stable/2020-03-31/examples/WafPolicyGet.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "api-version": "2020-03-31", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "MicrosoftCdnWafPolicy" + }, + "responses": { + "200": { + "body": { + "name": "MicrosoftCdnWafPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/MicrosoftCdnWafPolicy", + "type": "Microsoft.Cdn/cdnwebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "sku": { + "name": "Standard_Microsoft" + }, + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "enabledState": "Enabled", + "mode": "Prevention", + "defaultRedirectUrl": "http://www.bing.com", + "defaultCustomBlockResponseStatusCode": 429, + "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" + }, + "rateLimitRules": { + "rules": [ + { + "name": "RateLimitRule1", + "priority": 1, + "enabledState": "Enabled", + "rateLimitDurationInMinutes": 0, + "rateLimitThreshold": 1000, + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "IPMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ], + "action": "Block" + } + ] + }, + "customRules": { + "rules": [ + { + "name": "CustomRule1", + "priority": 2, + "enabledState": "Enabled", + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "GeoMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "CH" + ] + }, + { + "matchVariable": "RequestHeader", + "selector": "UserAgent", + "operator": "Contains", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "windows" + ] + }, + { + "matchVariable": "QueryString", + "selector": "search", + "operator": "Contains", + "negateCondition": false, + "transforms": [ + "UrlDecode", + "Lowercase" + ], + "matchValue": [ + "" + ] + } + ], + "action": "Block" + } + ] + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "DefaultRuleSet", + "ruleSetVersion": "preview-1.0", + "ruleGroupOverrides": [ + { + "ruleGroupName": "Group1", + "rules": [ + { + "ruleId": "GROUP1-0001", + "enabledState": "Enabled", + "action": "Redirect" + }, + { + "ruleId": "GROUP1-0002", + "enabledState": "Disabled" + } + ] + } + ] + } + ] + }, + "endpointLinks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint2" + } + ] + } + } + } + } +} diff --git a/specification/cdn/resource-manager/readme.cli.md b/specification/cdn/resource-manager/readme.cli.md new file mode 100644 index 000000000000..5a65e7f88013 --- /dev/null +++ b/specification/cdn/resource-manager/readme.cli.md @@ -0,0 +1,53 @@ +## CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +cli: + cli-name: cdn + package-name: azure-mgmt-cdn + namespace: azure.mgmt.cdn + test-scenario: + - name: Profiles_Create + - name: Endpoints_Create + - name: Creates specific policy + - name: CustomDomains_Create + - name: CustomDomains_Get + - name: Origins_Get + - name: Get Policy + - name: CustomDomains_ListByEndpoint + - name: Origins_ListByEndpoint + - name: Endpoints_Get + - name: Endpoints_ListByProfile + - name: List Policies in a Resource Group + - name: Profiles_Get + - name: Profiles_ListByResourceGroup + - name: List Policies in a Resource Group + - name: Profiles_List + - name: Operations_List + - name: EdgeNodes_List + - name: CustomDomains_DisableCustomHttps + - name: CustomDomains_EnableCustomHttpsUsingYourOwnCertificate + - name: CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate + - name: Origins_Update + - name: Creates specific policy + - name: Endpoints_ValidateCustomDomain + - name: Endpoints_ListResourceUsage + - name: Endpoints_PurgeContent + - name: Endpoints_Start + - name: Endpoints_Stop + - name: Endpoints_LoadContent + - name: Profiles_ListSupportedOptimizationTypes + - name: Endpoints_Update + - name: Profiles_ListResourceUsage + - name: Profiles_GenerateSsoUri + - name: Profiles_Update + - name: CheckNameAvailabilityWithSubscription + - name: ResourceUsage_List + - name: ValidateProbe + - name: CheckNameAvailability + - name: CustomDomains_Delete + - name: Delete protection policy + - name: Endpoints_Delete + - name: Profiles_Delete +``` \ No newline at end of file diff --git a/specification/cdn/resource-manager/readme.md b/specification/cdn/resource-manager/readme.md index ac6e2f874a2f..6e48071bcdf2 100644 --- a/specification/cdn/resource-manager/readme.md +++ b/specification/cdn/resource-manager/readme.md @@ -28,7 +28,7 @@ These are the global settings for the Cdn API. title: CdnManagementClient description: Cdn Management Client openapi-type: arm -tag: package-2019-04 +tag: package-2019-06 ``` ### Tag: package-2019-12 @@ -46,6 +46,16 @@ These settings apply only when `--tag=package-2019-06` is specified on the comma ``` yaml $(tag) == 'package-2019-06' input-file: +- Microsoft.Cdn/stable/2019-06-15/cdn.json +- Microsoft.Cdn/stable/2019-06-15/cdnwebapplicationfirewall.json +``` + +### Tag: package-2019-06-preview + +These settings apply only when `--tag=package-2019-06-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2019-06-preview' +input-file: - Microsoft.Cdn/preview/2019-06-15-preview/cdn.json - Microsoft.Cdn/preview/2019-06-15-preview/cdnwebapplicationfirewall.json directive: @@ -168,6 +178,8 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: - $(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 diff --git a/specification/cdn/resource-manager/readme.ruby.md b/specification/cdn/resource-manager/readme.ruby.md index e120956e650c..7d3f03852d62 100644 --- a/specification/cdn/resource-manager/readme.ruby.md +++ b/specification/cdn/resource-manager/readme.ruby.md @@ -4,7 +4,7 @@ These settings apply only when `--ruby` is specified on the command line. ``` yaml package-name: azure_mgmt_cdn -package-version: "0.16.0" +package-version: "0.17.0" azure-arm: true ``` @@ -12,6 +12,8 @@ azure-arm: true ``` yaml $(ruby) && $(multiapi) batch: + - tag: package-2019-06 + - tag: package-2019-04 - tag: package-2017-10 - tag: package-2017-04 - tag: package-2016-10 @@ -19,6 +21,26 @@ batch: - tag: package-2015-06 ``` +### Tag: package-2019-06 and ruby + +These settings apply only when `--tag=package-2019-06 --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2019-06' && $(ruby) +namespace: "Azure::CDN::Mgmt::V2019_06_15" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_cdn/lib +``` + +### Tag: package-2019-04 and ruby + +These settings apply only when `--tag=package-2019-04 --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2019-04' && $(ruby) +namespace: "Azure::CDN::Mgmt::V2019_04_15" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_cdn/lib +``` + ### Tag: package-2017-10 and ruby These settings apply only when `--tag=package-2017-10 --ruby` is specified on the command line. diff --git a/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.0/AnomalyDetector.json b/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.0/AnomalyDetector.json index ce059f848f1b..8a3f2b3797fc 100644 --- a/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.0/AnomalyDetector.json +++ b/specification/cognitiveservices/data-plane/AnomalyDetector/preview/v1.0/AnomalyDetector.json @@ -43,8 +43,12 @@ } } ], - "consumes": ["application/json"], - "produces": ["application/json"], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], "responses": { "200": { "description": "Successful operation.", @@ -82,8 +86,12 @@ } } ], - "consumes": ["application/json"], - "produces": ["application/json"], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], "responses": { "200": { "description": "Successful operation.", @@ -121,8 +129,12 @@ } } ], - "consumes": ["application/json"], - "produces": ["application/json"], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], "responses": { "200": { "description": "Successful operation.", @@ -182,7 +194,14 @@ "name": "Granularity", "modelAsString": false }, - "enum": ["yearly", "monthly", "weekly", "daily", "hourly", "minutely"] + "enum": [ + "yearly", + "monthly", + "weekly", + "daily", + "hourly", + "minutely" + ] }, "CustomInterval": { "type": "integer", @@ -192,7 +211,10 @@ }, "Request": { "type": "object", - "required": ["granularity", "series"], + "required": [ + "granularity", + "series" + ], "properties": { "series": { "type": "array", @@ -227,7 +249,10 @@ }, "Point": { "type": "object", - "required": ["timestamp", "value"], + "required": [ + "timestamp", + "value" + ], "properties": { "timestamp": { "type": "string", @@ -365,7 +390,10 @@ }, "ChangePointDetectRequest": { "type": "object", - "required": ["granularity", "series"], + "required": [ + "granularity", + "series" + ], "properties": { "series": { "type": "array", @@ -401,7 +429,11 @@ }, "ChangePointDetectResponse": { "type": "object", - "required": ["isChangePoint", "confidenceScores", "period"], + "required": [ + "isChangePoint", + "confidenceScores", + "period" + ], "properties": { "period": { "type": "integer", diff --git a/specification/cognitiveservices/data-plane/ComputerVision/preview/v3.0-preview/Ocr.json b/specification/cognitiveservices/data-plane/ComputerVision/preview/v3.0-preview/Ocr.json new file mode 100644 index 000000000000..0e3d2b6af278 --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/preview/v3.0-preview/Ocr.json @@ -0,0 +1,449 @@ +{ + "swagger": "2.0", + "info": { + "version": "3.0-preview", + "title": "Computer Vision Client", + "description": "The Computer Vision API provides state-of-the-art algorithms to process images and return information. For example, it can be used to determine if an image contains mature content, or it can be used to find all the faces in an image. It also has other features like estimating dominant and accent colors, categorizing the content of images, and describing an image with complete English sentences. Additionally, it can also intelligently generate images thumbnails for displaying large images effectively." + }, + "securityDefinitions": { + "apim_key": { + "type": "apiKey", + "name": "Ocp-Apim-Subscription-Key", + "in": "header" + } + }, + "security": [ + { + "apim_key": [] + } + ], + "x-ms-parameterized-host": { + "hostTemplate": "{Endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/Endpoint" + } + ] + }, + "host": "westcentralus.api.cognitive.microsoft.com", + "basePath": "/vision/v3.0-preview", + "schemes": [ + "https" + ], + "paths": { + "/read/analyze": { + "post": { + "description": "Use this interface to get the result of a Read operation, employing the state-of-the-art Optical Character Recognition (OCR) algorithms optimized for text-heavy documents. When you use the Read interface, the response contains a field called 'Operation-Location'. The 'Operation-Location' field contains the URL that you must use for your 'GetReadResult' operation to access OCR results.​", + "operationId": "Read", + "parameters": [ + { + "$ref": "#/parameters/OcrDetectionLanguage" + }, + { + "$ref": "#/parameters/ImageUrl" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "202": { + "description": "The service has accepted the request and will start processing later.", + "headers": { + "Operation-Location": { + "description": "URL to query for status of the operation. The operation ID will expire in 48 hours. ", + "type": "string" + } + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ComputerVisionError" + } + } + }, + "x-ms-examples": { + "Successful Analyze request": { + "$ref": "./examples/SuccessfulReadWithUrl.json" + } + } + } + }, + "/read/analyzeResults/{operationId}": { + "get": { + "description": "This interface is used for getting OCR results of Read operation. The URL to this interface should be retrieved from 'Operation-Location' field returned from Read interface.", + "operationId": "GetReadResult", + "parameters": [ + { + "name": "operationId", + "in": "path", + "description": "Id of read operation returned in the response of the 'Read' interface.", + "required": true, + "type": "string", + "format": "uuid" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Returns the read operation status.", + "schema": { + "$ref": "#/definitions/ReadOperationResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ComputerVisionError" + } + } + }, + "x-ms-examples": { + "Successful Get Read Result request": { + "$ref": "./examples/SuccessfulGetReadResult.json" + } + } + } + } + }, + "x-ms-paths": { + "/read/analyze?overload=stream": { + "post": { + "description": "Use this interface to get the result of a Read operation, employing the state-of-the-art Optical Character Recognition (OCR) algorithms optimized for text-heavy documents. When you use the Read interface, the response contains a field called 'Operation-Location'. The 'Operation-Location' field contains the URL that you must use for your 'GetReadResult' operation to access OCR results.​", + "operationId": "ReadInStream", + "parameters": [ + { + "$ref": "#/parameters/OcrDetectionLanguage" + }, + { + "$ref": "#/parameters/ImageStream" + } + ], + "consumes": [ + "application/octet-stream" + ], + "produces": [ + "application/json" + ], + "responses": { + "202": { + "description": "The service has accepted the request and will start processing later.", + "headers": { + "Operation-Location": { + "description": "URL to query for status of the operation. The operation ID will expire in 48 hours. ", + "type": "string" + } + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/ComputerVisionError" + } + } + }, + "x-ms-examples": { + "Successful Analyze request": { + "$ref": "./examples/SuccessfulReadWithStream.json" + } + } + } + } + }, + "definitions": { + "ReadOperationResult": { + "type": "object", + "description": "OCR result of the read operation.", + "properties": { + "status": { + "description": "Status of the read operation.", + "$ref": "#/definitions/OperationStatus" + }, + "createdDateTime": { + "type": "string", + "format": "date-time", + "description": "Get UTC date time the batch operation was submitted.", + "x-nullable": false + }, + "lastUpdatedDateTime": { + "type": "string", + "format": "date-time", + "description": "Get last updated UTC date time of this batch operation.", + "x-nullable": false + }, + "analyzeResult": { + "description": "Analyze batch operation result.", + "type": "object", + "$ref": "#/definitions/analyzeResults" + } + } + }, + "OperationStatus": { + "type": "string", + "description": "Status code of the text operation.", + "enum": [ + "notStarted", + "running", + "failed", + "succeeded" + ], + "x-ms-enum": { + "name": "OperationStatusCodes", + "modelAsString": false + }, + "x-nullable": false + }, + "ReadResult": { + "description": "Text extracted from a page in the input document.", + "type": "object", + "required": [ + "page", + "angle", + "width", + "height", + "unit", + "lines" + ], + "properties": { + "page": { + "description": "The 1-based page number of the recognition result.", + "type": "integer" + }, + "language": { + "description": "The BCP-47 language code of the recognized text page.", + "type": "string" + }, + "angle": { + "description": "The orientation of the image in degrees in the clockwise direction. Range between [-180, 180).", + "type": "number" + }, + "width": { + "description": "The width of the image in pixels or the PDF in inches.", + "type": "number" + }, + "height": { + "description": "The height of the image in pixels or the PDF in inches.", + "type": "number" + }, + "unit": { + "description": "The unit used in the Width, Height and BoundingBox. For images, the unit is 'pixel'. For PDF, the unit is 'inch'.", + "type": "string", + "enum": [ + "pixel", + "inch" + ], + "x-ms-enum": { + "name": "TextRecognitionResultDimensionUnit", + "modelAsString": false + }, + "x-nullable": false + }, + "lines": { + "description": "A list of recognized text lines.", + "type": "array", + "items": { + "$ref": "#/definitions/Line" + } + } + } + }, + "analyzeResults": { + "description": "Analyze batch operation result.", + "type": "object", + "required": [ + "version", + "readResults" + ], + "properties": { + "version": { + "description": "Version of schema used for this result.", + "type": "string" + }, + "readResults": { + "description": "Text extracted from the input.", + "type": "array", + "items": { + "$ref": "#/definitions/ReadResult" + } + } + } + }, + "Line": { + "description": "An object representing a recognized text line.", + "type": "object", + "required": [ + "boundingBox", + "text", + "words" + ], + "properties": { + "language": { + "description": "The BCP-47 language code of the recognized text line. Only provided where the language of the line differs from the page's.", + "type": "string" + }, + "boundingBox": { + "description": "Bounding box of a recognized line.", + "$ref": "#/definitions/BoundingBox" + }, + "text": { + "description": "The text content of the line.", + "type": "string" + }, + "words": { + "description": "List of words in the text line.", + "type": "array", + "items": { + "$ref": "#/definitions/Word" + } + } + } + }, + "Word": { + "description": "An object representing a recognized word.", + "type": "object", + "required": [ + "boundingBox", + "text", + "confidence" + ], + "properties": { + "boundingBox": { + "description": "Bounding box of a recognized word.", + "$ref": "#/definitions/BoundingBox" + }, + "text": { + "description": "The text content of the word.", + "type": "string" + }, + "confidence": { + "description": "Qualitative confidence measure.", + "type": "number", + "format": "float" + } + } + }, + "BoundingBox": { + "description": "Quadrangle bounding box, with coordinates in original image. The eight numbers represent the four points (x-coordinate, y-coordinate from the left-top corner of the image) of the detected rectangle from the left-top corner in the clockwise direction. For images, coordinates are in pixels. For PDF, coordinates are in inches.", + "type": "array", + "items": { + "type": "number", + "x-nullable": false + } + }, + "ComputerVisionError": { + "description": "Details about the API request error.", + "required": [ + "code", + "message" + ], + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "enum": [ + "InvalidImageFormat", + "UnsupportedMediaType", + "InvalidImageUrl", + "NotSupportedFeature", + "NotSupportedImage", + "Timeout", + "InternalServerError", + "InvalidImageSize", + "BadArgument", + "DetectFaceError", + "NotSupportedLanguage", + "InvalidThumbnailSize", + "InvalidDetails", + "InvalidModel", + "CancelledRequest", + "NotSupportedVisualFeature", + "FailedToProcess", + "Unspecified", + "StorageException" + ], + "x-ms-enum": { + "name": "ComputerVisionErrorCodes", + "modelAsString": true + } + }, + "message": { + "description": "A message explaining the error reported by the service.", + "type": "string" + }, + "requestId": { + "description": "A unique request identifier.", + "type": "string" + } + } + }, + "ImageUrl": { + "type": "object", + "required": [ + "url" + ], + "properties": { + "url": { + "description": "Publicly reachable URL of an image.", + "type": "string" + } + } + } + }, + "parameters": { + "OcrDetectionLanguage": { + "name": "language", + "in": "query", + "description": "The BCP-47 language code of the text to be detected in the image. In future versions, when language parameter is not passed, language detection will be used to determine the language. However, in the current version, missing language parameter will cause English to be used. To ensure that your document is always parsed in English without the use of language detection in the future, pass “en” in the language parameter", + "required": false, + "default": "en", + "x-ms-parameter-location": "method", + "type": "string", + "x-ms-enum": { + "name": "OcrDetectionLanguage", + "modelAsString": true + }, + "enum": [ + "en", + "es" + ] + }, + "ImageUrl": { + "name": "ImageUrl", + "in": "body", + "required": true, + "x-ms-parameter-location": "method", + "x-ms-client-flatten": true, + "description": "A JSON document with a URL pointing to the image that is to be analyzed.", + "schema": { + "$ref": "#/definitions/ImageUrl" + } + }, + "ImageStream": { + "name": "Image", + "in": "body", + "required": true, + "x-ms-parameter-location": "method", + "description": "An image stream.", + "schema": { + "type": "object", + "format": "file" + } + }, + "Endpoint": { + "name": "Endpoint", + "description": "Supported Cognitive Services endpoints.", + "x-ms-parameter-location": "client", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + } +} diff --git a/specification/cognitiveservices/data-plane/ComputerVision/preview/v3.0-preview/examples/SuccessfulGetReadResult.json b/specification/cognitiveservices/data-plane/ComputerVision/preview/v3.0-preview/examples/SuccessfulGetReadResult.json new file mode 100644 index 000000000000..aaaa9df00c50 --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/preview/v3.0-preview/examples/SuccessfulGetReadResult.json @@ -0,0 +1,369 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "operationId": "e56ffa6e-1ee4-4042-bc07-993db706c95f" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "status": "succeeded", + "createdDateTime": "2019-10-03T14:32:04.236Z", + "lastUpdatedDateTime": "2019-10-03T14:38:14.852Z", + "analyzeResult": { + "version": "v3.0", + "readResults": [ + { + "page": 1, + "language": "en", + "angle": 49.59, + "width": 600, + "height": 400, + "unit": "pixel", + "lines": [ + { + "boundingBox": [ + 202, + 618, + 2047, + 643, + 2046, + 840, + 200, + 813 + ], + "text": "Our greatest glory is not", + "words": [ + { + "boundingBox": [ + 204, + 627, + 481, + 628, + 481, + 830, + 204, + 829 + ], + "text": "Our", + "confidence": 0.164 + }, + { + "boundingBox": [ + 519, + 628, + 1057, + 630, + 1057, + 832, + 518, + 830 + ], + "text": "greatest", + "confidence": 0.164 + }, + { + "boundingBox": [ + 1114, + 630, + 1549, + 631, + 1548, + 833, + 1114, + 832 + ], + "text": "glory", + "confidence": 0.164 + }, + { + "boundingBox": [ + 1586, + 631, + 1785, + 632, + 1784, + 834, + 1586, + 833 + ], + "text": "is", + "confidence": 0.164 + }, + { + "boundingBox": [ + 1822, + 632, + 2115, + 633, + 2115, + 835, + 1822, + 834 + ], + "text": "not", + "confidence": 0.164 + } + ] + }, + { + "boundingBox": [ + 420, + 1273, + 2954, + 1250, + 2958, + 1488, + 422, + 1511 + ], + "text": "but in rising every time we fall", + "words": [ + { + "boundingBox": [ + 423, + 1269, + 634, + 1268, + 635, + 1507, + 424, + 1508 + ], + "text": "but", + "confidence": 0.164 + }, + { + "boundingBox": [ + 667, + 1268, + 808, + 1268, + 809, + 1506, + 668, + 1507 + ], + "text": "in", + "confidence": 0.164 + }, + { + "boundingBox": [ + 874, + 1267, + 1289, + 1265, + 1290, + 1504, + 875, + 1506 + ], + "text": "rising", + "confidence": 0.164 + }, + { + "boundingBox": [ + 1331, + 1265, + 1771, + 1263, + 1772, + 1502, + 1332, + 1504 + ], + "text": "every", + "confidence": 0.164 + }, + { + "boundingBox": [ + 1812, + 1263, + 2178, + 1261, + 2179, + 1500, + 1813, + 1502 + ], + "text": "time", + "confidence": 0.164 + }, + { + "boundingBox": [ + 2219, + 1261, + 2510, + 1260, + 2511, + 1498, + 2220, + 1500 + ], + "text": "we", + "confidence": 0.164 + }, + { + "boundingBox": [ + 2551, + 1260, + 3016, + 1258, + 3017, + 1496, + 2552, + 1498 + ], + "text": "fall", + "confidence": 0.164 + } + ] + }, + { + "language": "es", + "boundingBox": [ + 1612, + 903, + 2744, + 935, + 2738, + 1139, + 1607, + 1107 + ], + "text": "Viva la vida", + "words": [ + { + "boundingBox": [ + 323, + 454, + 416, + 449, + 418, + 494, + 325, + 501 + ], + "text": "Viva", + "confidence": 0.164 + }, + { + "boundingBox": [ + 92, + 550, + 429, + 541, + 430, + 591, + 94, + 600 + ], + "text": "la", + "confidence": 0.164 + }, + { + "boundingBox": [ + 58, + 466, + 268, + 458, + 270, + 505, + 161, + 512 + ], + "text": "vida", + "confidence": 0.164 + } + ] + } + ] + }, + { + "page": 2, + "language": "en", + "angle": 1.32, + "width": 600, + "height": 400, + "unit": "pixel", + "lines": [ + { + "boundingBox": [ + 1612, + 903, + 2744, + 935, + 2738, + 1139, + 1607, + 1107 + ], + "text": "in never failing ,", + "words": [ + { + "boundingBox": [ + 1611, + 934, + 1707, + 933, + 1708, + 1147, + 1613, + 1147 + ], + "text": "in", + "confidence": 0.164 + }, + { + "boundingBox": [ + 1753, + 933, + 2132, + 930, + 2133, + 1144, + 1754, + 1146 + ], + "text": "never", + "confidence": 0.999 + }, + { + "boundingBox": [ + 2162, + 930, + 2673, + 927, + 2674, + 1140, + 2164, + 1144 + ], + "text": "failing", + "confidence": 0.164 + }, + { + "boundingBox": [ + 2703, + 926, + 2788, + 926, + 2790, + 1139, + 2705, + 1140 + ], + "text": ",", + "confidence": 0.164 + } + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/ComputerVision/preview/v3.0-preview/examples/SuccessfulReadWithStream.json b/specification/cognitiveservices/data-plane/ComputerVision/preview/v3.0-preview/examples/SuccessfulReadWithStream.json new file mode 100644 index 000000000000..a901d16abba0 --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/preview/v3.0-preview/examples/SuccessfulReadWithStream.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "language": "en", + "Image": "{binary}" + }, + "responses": { + "202": { + "header": { + "location": "https://{domain}/vision/v3.0/read/e56ffa6e-1ee4-4042-bc07-993db706c95f" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/ComputerVision/preview/v3.0-preview/examples/SuccessfulReadWithUrl.json b/specification/cognitiveservices/data-plane/ComputerVision/preview/v3.0-preview/examples/SuccessfulReadWithUrl.json new file mode 100644 index 000000000000..76dedf25a1d5 --- /dev/null +++ b/specification/cognitiveservices/data-plane/ComputerVision/preview/v3.0-preview/examples/SuccessfulReadWithUrl.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "{API key}", + "language": "en", + "ImageUrl": "{url}" + }, + "responses": { + "202": { + "header": { + "Operation-Location": "https://{domain}/vision/v3.0/read/e56ffa6e-1ee4-4042-bc07-993db706c95f" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/ComputerVision/readme.go.md b/specification/cognitiveservices/data-plane/ComputerVision/readme.go.md index f4ca36a2eee3..3696b8eb182f 100644 --- a/specification/cognitiveservices/data-plane/ComputerVision/readme.go.md +++ b/specification/cognitiveservices/data-plane/ComputerVision/readme.go.md @@ -15,6 +15,7 @@ go: batch: - tag: release_2_0 - tag: release_2_1 + - tag: release_3_0 ``` ### Tag: release_2_0 and go @@ -33,4 +34,13 @@ Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'release_3_0' && $(go) +output-folder: $(go-sdk-folder)/services/preview/cognitiveservices/v3.0-preview/$(namespace) ``` \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/ComputerVision/readme.md b/specification/cognitiveservices/data-plane/ComputerVision/readme.md index 4f0c76d6afec..31c01fd4644b 100644 --- a/specification/cognitiveservices/data-plane/ComputerVision/readme.md +++ b/specification/cognitiveservices/data-plane/ComputerVision/readme.md @@ -32,6 +32,14 @@ input-file: - stable/v2.1/Ocr.json ``` +### Release 3.0 +These settings apply only when `--tag=release_3_0` is specified on the command line. + +``` yaml $(tag) == 'release_3_0' +input-file: + - preview/v3.0-preview/Ocr.json +``` + ## Swagger to SDK This section describes what SDK should be generated by the automatic system. @@ -146,6 +154,7 @@ input-file: - $(this-folder)/stable/v2.0/Ocr.json - $(this-folder)/stable/v2.1/ComputerVision.json - $(this-folder)/stable/v2.1/Ocr.json + - $(this-folder)/preview/v3.0-preview/Ocr.json ``` diff --git a/specification/cognitiveservices/data-plane/CustomVision/Prediction/readme.md b/specification/cognitiveservices/data-plane/CustomVision/Prediction/readme.md index 806fa4654f8d..74cffe566389 100644 --- a/specification/cognitiveservices/data-plane/CustomVision/Prediction/readme.md +++ b/specification/cognitiveservices/data-plane/CustomVision/Prediction/readme.md @@ -25,6 +25,7 @@ These settings apply only when `--tag=release_3_0` is specified on the command l ``` yaml $(tag) == 'release_3_0' input-file: stable/v3.0/Prediction.json +add-credentials: true ``` # Validation diff --git a/specification/cognitiveservices/data-plane/CustomVision/Prediction/stable/v3.0/Prediction.json b/specification/cognitiveservices/data-plane/CustomVision/Prediction/stable/v3.0/Prediction.json index c0f42a6569d1..65fed4299257 100644 --- a/specification/cognitiveservices/data-plane/CustomVision/Prediction/stable/v3.0/Prediction.json +++ b/specification/cognitiveservices/data-plane/CustomVision/Prediction/stable/v3.0/Prediction.json @@ -61,9 +61,6 @@ "required": false, "type": "string", "x-nullable": true - }, - { - "$ref": "#/parameters/ApiKey" } ], "responses": { @@ -134,9 +131,6 @@ "description": "Binary image data. Supported formats are JPEG, GIF, PNG, and BMP. Supports images up to 4MB.", "required": true, "type": "file" - }, - { - "$ref": "#/parameters/ApiKey" } ], "responses": { @@ -211,9 +205,6 @@ "required": false, "type": "string", "x-nullable": true - }, - { - "$ref": "#/parameters/ApiKey" } ], "responses": { @@ -284,9 +275,6 @@ "description": "Binary image data. Supported formats are JPEG, GIF, PNG, and BMP. Supports images up to 0MB.", "required": true, "type": "file" - }, - { - "$ref": "#/parameters/ApiKey" } ], "responses": { @@ -361,9 +349,6 @@ "required": false, "type": "string", "x-nullable": true - }, - { - "$ref": "#/parameters/ApiKey" } ], "responses": { @@ -434,9 +419,6 @@ "description": "Binary image data. Supported formats are JPEG, GIF, PNG, and BMP. Supports images up to 4MB.", "required": true, "type": "file" - }, - { - "$ref": "#/parameters/ApiKey" } ], "responses": { @@ -511,9 +493,6 @@ "required": false, "type": "string", "x-nullable": true - }, - { - "$ref": "#/parameters/ApiKey" } ], "responses": { @@ -584,9 +563,6 @@ "description": "Binary image data. Supported formats are JPEG, GIF, PNG, and BMP. Supports images up to 0MB.", "required": true, "type": "file" - }, - { - "$ref": "#/parameters/ApiKey" } ], "responses": { @@ -879,15 +855,6 @@ } }, "parameters": { - "ApiKey": { - "name": "Prediction-Key", - "in": "header", - "description": "API key.", - "required": true, - "type": "string", - "x-ms-client-name": "ApiKey", - "x-ms-parameter-location": "client" - }, "Endpoint": { "name": "Endpoint", "in": "path", @@ -898,6 +865,18 @@ "x-ms-skip-url-encoding": true } }, + "securityDefinitions": { + "apim_key": { + "type": "apiKey", + "name": "Prediction-Key", + "in": "header" + } + }, + "security": [ + { + "apim_key": [] + } + ], "x-ms-parameterized-host": { "hostTemplate": "{Endpoint}", "useSchemePrefix": false, diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/readme.go.md b/specification/cognitiveservices/data-plane/CustomVision/Training/readme.go.md index ab2308e427f7..14bda8dd8dca 100644 --- a/specification/cognitiveservices/data-plane/CustomVision/Training/readme.go.md +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/readme.go.md @@ -13,6 +13,7 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: release_3_2 - tag: release_1_0 - tag: release_2_1 - tag: release_2_2 @@ -63,4 +64,13 @@ Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'release_3_2' && $(go) +output-folder: $(go-sdk-folder)/services/cognitiveservices/v3.2/customvision/$(namespace) ``` \ No newline at end of file diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/readme.md b/specification/cognitiveservices/data-plane/CustomVision/Training/readme.md index 2b84dd8be8a5..c27680fff689 100644 --- a/specification/cognitiveservices/data-plane/CustomVision/Training/readme.md +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/readme.md @@ -4,11 +4,11 @@ Configuration for generating Custom Vision Training SDK. -The current release is `release_3_1`. +The current release is `release_3_2`. ``` yaml -tag: release_3_1 +tag: release_3_2 openapi-type: data-plane ``` # Releases @@ -47,6 +47,15 @@ These settings apply only when `--tag=release_3_1` is specified on the command l ``` yaml $(tag) == 'release_3_1' input-file: stable/v3.1/Training.json ``` + +### Release 3.2 +These settings apply only when `--tag=release_3_2` is specified on the command line. + +``` yaml $(tag) == 'release_3_2' +input-file: stable/v3.2/Training.json +add-credentials: true +``` + # Validation ## Suppression @@ -153,6 +162,7 @@ input-file: - $(this-folder)/stable/v2.2/Training.json - $(this-folder)/stable/v3.0/Training.json - $(this-folder)/stable/v3.1/Training.json + - $(this-folder)/stable/v3.2/Training.json ``` diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/readme.ruby.md b/specification/cognitiveservices/data-plane/CustomVision/Training/readme.ruby.md index 7015276594b4..65b84d38d255 100644 --- a/specification/cognitiveservices/data-plane/CustomVision/Training/readme.ruby.md +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/readme.ruby.md @@ -15,6 +15,7 @@ batch: - tag: release_1_0 - tag: release_3_0 - tag: release_3_1 + - tag: release_3_2 ``` ### Tag: release_1_0 and ruby @@ -48,4 +49,16 @@ Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'release_3_2' && $(ruby) +namespace: "Azure::CognitiveServices::CustomVision::Training::V3_2" +output-folder: $(ruby-sdks-folder)/data/azure_cognitiveservices_customvisiontraining/lib +title: "TrainingClient" +``` + diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/Training.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/Training.json new file mode 100644 index 000000000000..ea417a760af8 --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/Training.json @@ -0,0 +1,5097 @@ +{ + "swagger": "2.0", + "info": { + "version": "3.2", + "title": "Custom Vision Training Client" + }, + "host": "southcentralus.api.cognitive.microsoft.com", + "basePath": "/customvision/v3.2/training", + "schemes": [ + "https" + ], + "paths": { + "/domains": { + "get": { + "tags": [ + "DomainsApi" + ], + "summary": "Get a list of the available domains.", + "operationId": "GetDomains", + "consumes": [], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/Domain" + } + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful GetDomains request": { + "$ref": "./examples/GetDomains.json" + } + } + } + }, + "/domains/{domainId}": { + "get": { + "tags": [ + "DomainsApi" + ], + "summary": "Get information about a specific domain.", + "operationId": "GetDomain", + "consumes": [], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "domainId", + "in": "path", + "description": "The id of the domain to get information about.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Domain" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful GetDomain request": { + "$ref": "./examples/GetDomain.json" + } + } + } + }, + "/projects": { + "get": { + "tags": [ + "ProjectApi" + ], + "summary": "Get your projects.", + "operationId": "GetProjects", + "consumes": [], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/Project" + } + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful GetProjects request": { + "$ref": "./examples/GetProjects.json" + } + } + }, + "post": { + "tags": [ + "ProjectApi" + ], + "summary": "Create a project.", + "operationId": "CreateProject", + "consumes": [], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "name", + "in": "query", + "description": "Name of the project.", + "required": true, + "type": "string" + }, + { + "name": "description", + "in": "query", + "description": "The description of the project.", + "required": false, + "type": "string" + }, + { + "name": "domainId", + "in": "query", + "description": "The id of the domain to use for this project. Defaults to General.", + "required": false, + "type": "string", + "format": "uuid" + }, + { + "name": "classificationType", + "in": "query", + "description": "The type of classifier to create for this project.", + "required": false, + "type": "string", + "enum": [ + "Multiclass", + "Multilabel" + ] + }, + { + "name": "targetExportPlatforms", + "in": "query", + "description": "List of platforms the trained model is intending exporting to.", + "required": false, + "type": "array", + "items": { + "type": "string", + "enum": [ + "CoreML", + "TensorFlow", + "DockerFile", + "ONNX", + "VAIDK" + ] + }, + "collectionFormat": "csv" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Project" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful CreateProject request": { + "$ref": "./examples/CreateProject.json" + } + } + } + }, + "/projects/{projectId}": { + "get": { + "tags": [ + "ProjectApi" + ], + "summary": "Get a specific project.", + "operationId": "GetProject", + "consumes": [], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The id of the project to get.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Project" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful GetProject request": { + "$ref": "./examples/GetProject.json" + } + } + }, + "delete": { + "tags": [ + "ProjectApi" + ], + "summary": "Delete a specific project.", + "operationId": "DeleteProject", + "consumes": [], + "produces": [], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful DeleteProject request": { + "$ref": "./examples/DeleteProject.json" + } + } + }, + "patch": { + "tags": [ + "ProjectApi" + ], + "summary": "Update a specific project.", + "operationId": "UpdateProject", + "consumes": [ + "application/json", + "application/xml", + "text/xml", + "application/x-www-form-urlencoded" + ], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The id of the project to update.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "updatedProject", + "in": "body", + "description": "The updated project model.", + "required": true, + "schema": { + "$ref": "#/definitions/Project" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Project" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful UpdateProject request": { + "$ref": "./examples/UpdateProject.json" + } + } + } + }, + "/projects/{projectId}/export": { + "get": { + "tags": [ + "ProjectApi" + ], + "summary": "Exports a project.", + "operationId": "ExportProject", + "consumes": [], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id of the project to export.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProjectExport" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful ExportProject request": { + "$ref": "./examples/ExportProject.json" + } + } + } + }, + "/projects/{projectId}/images": { + "post": { + "tags": [ + "ImageApi" + ], + "summary": "Add the provided images to the set of training images.", + "description": "This API accepts body content as multipart/form-data and application/octet-stream. When using multipart\r\nmultiple image files can be sent at once, with a maximum of 64 files", + "operationId": "CreateImagesFromData", + "consumes": [ + "multipart/form-data", + "application/octet-stream" + ], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "tagIds", + "in": "query", + "description": "The tags ids with which to tag each image. Limited to 20.", + "required": false, + "type": "array", + "items": { + "type": "string", + "format": "uuid", + "x-nullable": false + }, + "collectionFormat": "csv", + "maxItems": 20, + "minItems": 0 + }, + { + "name": "imageData", + "in": "formData", + "description": "Binary image data. Supported formats are JPEG, GIF, PNG, and BMP. Supports images up to 6MB.", + "required": true, + "type": "file" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ImageCreateSummary" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful CreateImagesFromData request": { + "$ref": "./examples/CreateImagesFromData.json" + } + } + }, + "delete": { + "tags": [ + "ImageApi" + ], + "summary": "Delete images from the set of training images.", + "operationId": "DeleteImages", + "consumes": [], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "imageIds", + "in": "query", + "description": "Ids of the images to be deleted. Limited to 256 images per batch.", + "required": false, + "type": "array", + "items": { + "type": "string", + "format": "uuid", + "x-nullable": false + }, + "collectionFormat": "csv", + "maxItems": 256, + "minItems": 0 + }, + { + "name": "allImages", + "in": "query", + "description": "Flag to specify delete all images, specify this flag or a list of images. Using this flag will return a 202 response to indicate the images are being deleted.", + "required": false, + "type": "boolean" + }, + { + "name": "allIterations", + "in": "query", + "description": "Removes these images from all iterations, not just the current workspace. Using this flag will return a 202 response to indicate the images are being deleted.", + "required": false, + "type": "boolean" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful DeleteImages request": { + "$ref": "./examples/DeleteImages.json" + } + } + } + }, + "/projects/{projectId}/images/{imageId}/regionproposals": { + "post": { + "tags": [ + "ImageRegionProposalApi" + ], + "summary": "Get region proposals for an image. Returns empty array if no proposals are found.", + "description": "This API will get region proposals for an image along with confidences for the region. It returns an empty array if no proposals are found.", + "operationId": "GetImageRegionProposals", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "imageId", + "in": "path", + "description": "The image id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ImageRegionProposal" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful GetImageRegionProposals request": { + "$ref": "./examples/GetImageRegionProposals.json" + } + } + } + }, + "/projects/{projectId}/images/files": { + "post": { + "tags": [ + "ImageApi" + ], + "summary": "Add the provided batch of images to the set of training images.", + "description": "This API accepts a batch of files, and optionally tags, to create images. There is a limit of 64 images and 20 tags.", + "operationId": "CreateImagesFromFiles", + "consumes": [ + "application/json", + "application/xml", + "text/xml", + "application/x-www-form-urlencoded" + ], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "batch", + "in": "body", + "description": "The batch of image files to add. Limited to 64 images and 20 tags per batch.", + "required": true, + "schema": { + "$ref": "#/definitions/ImageFileCreateBatch" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ImageCreateSummary" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful CreateImagesFromFiles request": { + "$ref": "./examples/CreateImagesFromFiles.json" + } + } + } + }, + "/projects/{projectId}/images/id": { + "get": { + "tags": [ + "ImageApi" + ], + "summary": "Get images by id for a given project iteration.", + "description": "This API will return a set of Images for the specified tags and optionally iteration. If no iteration is specified the\r\ncurrent workspace is used.", + "operationId": "GetImagesByIds", + "consumes": [], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "imageIds", + "in": "query", + "description": "The list of image ids to retrieve. Limited to 256.", + "required": false, + "type": "array", + "items": { + "type": "string", + "format": "uuid", + "x-nullable": false + }, + "collectionFormat": "csv", + "maxItems": 256, + "minItems": 0 + }, + { + "name": "iterationId", + "in": "query", + "description": "The iteration id. Defaults to workspace.", + "required": false, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/Image" + } + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful GetImagesByIds request": { + "$ref": "./examples/GetImagesByIds.json" + } + } + } + }, + "/projects/{projectId}/images/predictions": { + "post": { + "tags": [ + "ImageApi" + ], + "summary": "Add the specified predicted images to the set of training images.", + "description": "This API creates a batch of images from predicted images specified. There is a limit of 64 images and 20 tags.", + "operationId": "CreateImagesFromPredictions", + "consumes": [ + "application/json", + "application/xml", + "text/xml", + "application/x-www-form-urlencoded" + ], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "batch", + "in": "body", + "description": "Image and tag ids. Limited to 64 images and 20 tags per batch.", + "required": true, + "schema": { + "$ref": "#/definitions/ImageIdCreateBatch" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ImageCreateSummary" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful CreateImagesFromPredictions request": { + "$ref": "./examples/CreateImagesFromPredictions.json" + } + } + } + }, + "/projects/{projectId}/images/regions": { + "post": { + "tags": [ + "ImageApi" + ], + "summary": "Create a set of image regions.", + "description": "This API accepts a batch of image regions, and optionally tags, to update existing images with region information.\r\nThere is a limit of 64 entries in the batch.", + "operationId": "CreateImageRegions", + "consumes": [ + "application/json", + "application/xml", + "text/xml", + "application/x-www-form-urlencoded" + ], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "batch", + "in": "body", + "description": "Batch of image regions which include a tag and bounding box. Limited to 64.", + "required": true, + "schema": { + "$ref": "#/definitions/ImageRegionCreateBatch" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ImageRegionCreateSummary" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful CreateImageRegions request": { + "$ref": "./examples/CreateImageRegions.json" + } + } + }, + "delete": { + "tags": [ + "ImageApi" + ], + "summary": "Delete a set of image regions.", + "operationId": "DeleteImageRegions", + "consumes": [], + "produces": [], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "regionIds", + "in": "query", + "description": "Regions to delete. Limited to 64.", + "required": true, + "type": "array", + "items": { + "type": "string", + "format": "uuid", + "x-nullable": false + }, + "collectionFormat": "csv", + "maxItems": 64, + "minItems": 0 + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful DeleteImageRegions request": { + "$ref": "./examples/DeleteImageRegions.json" + } + } + } + }, + "/projects/{projectId}/images/suggested": { + "post": { + "tags": [ + "ImageApi" + ], + "summary": "Get untagged images whose suggested tags match given tags. Returns empty array if no images are found.", + "description": "This API will fetch untagged images filtered by suggested tags Ids. It returns an empty array if no images are found.", + "operationId": "QuerySuggestedImages", + "consumes": [ + "application/json", + "application/xml", + "text/xml", + "application/x-www-form-urlencoded" + ], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "iterationId", + "in": "query", + "description": "IterationId to use for the suggested tags and regions.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "query", + "in": "body", + "description": "Contains properties we need to query suggested images.", + "required": true, + "schema": { + "$ref": "#/definitions/SuggestedTagAndRegionQueryToken" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SuggestedTagAndRegionQuery" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful QuerySuggestedImages request": { + "$ref": "./examples/QuerySuggestedImages.json" + } + } + } + }, + "/projects/{projectId}/images/suggested/count": { + "post": { + "tags": [ + "ImageApi" + ], + "summary": "Get count of images whose suggested tags match given tags and their probabilities are greater than or equal to the given threshold. Returns count as 0 if none found.", + "description": "This API takes in tagIds to get count of untagged images per suggested tags for a given threshold.", + "operationId": "QuerySuggestedImageCount", + "consumes": [ + "application/json", + "application/xml", + "text/xml", + "application/x-www-form-urlencoded" + ], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "iterationId", + "in": "query", + "description": "IterationId to use for the suggested tags and regions.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "query", + "in": "body", + "description": "Model that contains tagIds, threshold and projectType to query by.", + "required": true, + "schema": { + "$ref": "#/definitions/TagFilter" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "object", + "additionalProperties": { + "format": "int32", + "type": "integer" + } + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful QuerySuggestedImageCount request": { + "$ref": "./examples/QuerySuggestedImageCount.json" + } + } + } + }, + "/projects/{projectId}/images/tagged": { + "get": { + "tags": [ + "ImageApi" + ], + "summary": "Get tagged images for a given project iteration.", + "description": "This API supports batching and range selection. By default it will only return first 50 images matching images.\r\nUse the {take} and {skip} parameters to control how many images to return in a given batch.\r\nThe filtering is on an and/or relationship. For example, if the provided tag ids are for the \"Dog\" and\r\n\"Cat\" tags, then only images tagged with Dog and/or Cat will be returned", + "operationId": "GetTaggedImages", + "consumes": [], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "iterationId", + "in": "query", + "description": "The iteration id. Defaults to workspace.", + "required": false, + "type": "string", + "format": "uuid" + }, + { + "name": "tagIds", + "in": "query", + "description": "A list of tags ids to filter the images. Defaults to all tagged images when null. Limited to 20.", + "required": false, + "type": "array", + "items": { + "type": "string", + "format": "uuid", + "x-nullable": false + }, + "collectionFormat": "csv", + "maxItems": 20, + "minItems": 0 + }, + { + "name": "orderBy", + "in": "query", + "description": "The ordering. Defaults to newest.", + "required": false, + "type": "string", + "enum": [ + "Newest", + "Oldest" + ] + }, + { + "name": "take", + "in": "query", + "description": "Maximum number of images to return. Defaults to 50, limited to 256.", + "required": false, + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 256, + "minimum": 0 + }, + { + "name": "skip", + "in": "query", + "description": "Number of images to skip before beginning the image batch. Defaults to 0.", + "required": false, + "type": "integer", + "format": "int32", + "default": 0 + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/Image" + } + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful GetTaggedImages request": { + "$ref": "./examples/GetTaggedImages.json" + } + } + } + }, + "/projects/{projectId}/images/tagged/count": { + "get": { + "tags": [ + "ImageApi" + ], + "summary": "Gets the number of images tagged with the provided {tagIds}.", + "description": "The filtering is on an and/or relationship. For example, if the provided tag ids are for the \"Dog\" and\r\n\"Cat\" tags, then only images tagged with Dog and/or Cat will be returned", + "operationId": "GetTaggedImageCount", + "consumes": [], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "iterationId", + "in": "query", + "description": "The iteration id. Defaults to workspace.", + "required": false, + "type": "string", + "format": "uuid" + }, + { + "name": "tagIds", + "in": "query", + "description": "A list of tags ids to filter the images to count. Defaults to all tags when null.", + "required": false, + "type": "array", + "items": { + "type": "string", + "format": "uuid", + "x-nullable": false + }, + "collectionFormat": "csv" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "format": "int32", + "type": "integer" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful GetTaggedImageCount request": { + "$ref": "./examples/GetTaggedImageCount.json" + } + } + } + }, + "/projects/{projectId}/images/tags": { + "post": { + "tags": [ + "ImageApi" + ], + "summary": "Associate a set of images with a set of tags.", + "operationId": "CreateImageTags", + "consumes": [ + "application/json", + "application/xml", + "text/xml", + "application/x-www-form-urlencoded" + ], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "batch", + "in": "body", + "description": "Batch of image tags. Limited to 128 tags per batch.", + "required": true, + "schema": { + "$ref": "#/definitions/ImageTagCreateBatch" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ImageTagCreateSummary" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful CreateImageTags request": { + "$ref": "./examples/CreateImageTags.json" + } + } + }, + "delete": { + "tags": [ + "ImageApi" + ], + "summary": "Remove a set of tags from a set of images.", + "operationId": "DeleteImageTags", + "consumes": [], + "produces": [], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "imageIds", + "in": "query", + "description": "Image ids. Limited to 64 images.", + "required": true, + "type": "array", + "items": { + "type": "string", + "format": "uuid", + "x-nullable": false + }, + "collectionFormat": "csv", + "maxItems": 64, + "minItems": 0 + }, + { + "name": "tagIds", + "in": "query", + "description": "Tags to be deleted from the specified images. Limited to 20 tags.", + "required": true, + "type": "array", + "items": { + "type": "string", + "format": "uuid", + "x-nullable": false + }, + "collectionFormat": "csv", + "maxItems": 20, + "minItems": 0 + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful DeleteImageTags request": { + "$ref": "./examples/DeleteImageTags.json" + } + } + } + }, + "/projects/{projectId}/images/untagged": { + "get": { + "tags": [ + "ImageApi" + ], + "summary": "Get untagged images for a given project iteration.", + "description": "This API supports batching and range selection. By default it will only return first 50 images matching images.\r\nUse the {take} and {skip} parameters to control how many images to return in a given batch.", + "operationId": "GetUntaggedImages", + "consumes": [], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "iterationId", + "in": "query", + "description": "The iteration id. Defaults to workspace.", + "required": false, + "type": "string", + "format": "uuid" + }, + { + "name": "orderBy", + "in": "query", + "description": "The ordering. Defaults to newest.", + "required": false, + "type": "string", + "enum": [ + "Newest", + "Oldest" + ] + }, + { + "name": "take", + "in": "query", + "description": "Maximum number of images to return. Defaults to 50, limited to 256.", + "required": false, + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 256, + "minimum": 0 + }, + { + "name": "skip", + "in": "query", + "description": "Number of images to skip before beginning the image batch. Defaults to 0.", + "required": false, + "type": "integer", + "format": "int32", + "default": 0 + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/Image" + } + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful GetUntaggedImages request": { + "$ref": "./examples/GetUntaggedImages.json" + } + } + } + }, + "/projects/{projectId}/images/untagged/count": { + "get": { + "tags": [ + "ImageApi" + ], + "summary": "Gets the number of untagged images.", + "description": "This API returns the images which have no tags for a given project and optionally an iteration. If no iteration is specified the\r\ncurrent workspace is used.", + "operationId": "GetUntaggedImageCount", + "consumes": [], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "iterationId", + "in": "query", + "description": "The iteration id. Defaults to workspace.", + "required": false, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "format": "int32", + "type": "integer" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful GetUntaggedImageCount request": { + "$ref": "./examples/GetUntaggedImageCount.json" + } + } + } + }, + "/projects/{projectId}/images/urls": { + "post": { + "tags": [ + "ImageApi" + ], + "summary": "Add the provided images urls to the set of training images.", + "description": "This API accepts a batch of urls, and optionally tags, to create images. There is a limit of 64 images and 20 tags.", + "operationId": "CreateImagesFromUrls", + "consumes": [ + "application/json", + "application/xml", + "text/xml", + "application/x-www-form-urlencoded" + ], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "batch", + "in": "body", + "description": "Image urls and tag ids. Limited to 64 images and 20 tags per batch.", + "required": true, + "schema": { + "$ref": "#/definitions/ImageUrlCreateBatch" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ImageCreateSummary" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful CreateImagesFromUrls request": { + "$ref": "./examples/CreateImagesFromUrls.json" + } + } + } + }, + "/projects/{projectId}/iterations": { + "get": { + "tags": [ + "ProjectApi" + ], + "summary": "Get iterations for the project.", + "operationId": "GetIterations", + "consumes": [], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/Iteration" + } + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful GetIterations request": { + "$ref": "./examples/GetIterations.json" + } + } + } + }, + "/projects/{projectId}/iterations/{iterationId}": { + "get": { + "tags": [ + "ProjectApi" + ], + "summary": "Get a specific iteration.", + "operationId": "GetIteration", + "consumes": [], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The id of the project the iteration belongs to.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "iterationId", + "in": "path", + "description": "The id of the iteration to get.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Iteration" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful GetIteration request": { + "$ref": "./examples/GetIteration.json" + } + } + }, + "delete": { + "tags": [ + "ProjectApi" + ], + "summary": "Delete a specific iteration of a project.", + "operationId": "DeleteIteration", + "consumes": [], + "produces": [], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "iterationId", + "in": "path", + "description": "The iteration id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful DeleteIteration request": { + "$ref": "./examples/DeleteIteration.json" + } + } + }, + "patch": { + "tags": [ + "ProjectApi" + ], + "summary": "Update a specific iteration.", + "operationId": "UpdateIteration", + "consumes": [ + "application/json", + "application/xml", + "text/xml", + "application/x-www-form-urlencoded" + ], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "Project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "iterationId", + "in": "path", + "description": "Iteration id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "updatedIteration", + "in": "body", + "description": "The updated iteration model.", + "required": true, + "schema": { + "$ref": "#/definitions/Iteration" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Iteration" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful UpdateIteration request": { + "$ref": "./examples/UpdateIteration.json" + } + } + } + }, + "/projects/{projectId}/iterations/{iterationId}/export": { + "get": { + "tags": [ + "ProjectApi" + ], + "summary": "Get the list of exports for a specific iteration.", + "operationId": "GetExports", + "consumes": [], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "iterationId", + "in": "path", + "description": "The iteration id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/Export" + } + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful GetExports request": { + "$ref": "./examples/GetExports.json" + } + } + }, + "post": { + "tags": [ + "ProjectApi" + ], + "summary": "Export a trained iteration.", + "operationId": "ExportIteration", + "consumes": [], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "iterationId", + "in": "path", + "description": "The iteration id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "platform", + "in": "query", + "description": "The target platform.", + "required": true, + "type": "string", + "enum": [ + "CoreML", + "TensorFlow", + "DockerFile", + "ONNX", + "VAIDK" + ] + }, + { + "name": "flavor", + "in": "query", + "description": "The flavor of the target platform.", + "required": false, + "type": "string", + "enum": [ + "Linux", + "Windows", + "ONNX10", + "ONNX12", + "ARM", + "TensorFlowNormal", + "TensorFlowLite" + ] + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Export" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful ExportIteration request": { + "$ref": "./examples/ExportIteration.json" + } + } + } + }, + "/projects/{projectId}/iterations/{iterationId}/performance": { + "get": { + "tags": [ + "ProjectApi" + ], + "summary": "Get detailed performance information about an iteration.", + "operationId": "GetIterationPerformance", + "consumes": [], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The id of the project the iteration belongs to.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "iterationId", + "in": "path", + "description": "The id of the iteration to get.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "threshold", + "in": "query", + "description": "The threshold used to determine true predictions.", + "required": false, + "type": "number", + "format": "float" + }, + { + "name": "overlapThreshold", + "in": "query", + "description": "If applicable, the bounding box overlap threshold used to determine true predictions.", + "required": false, + "type": "number", + "format": "float" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/IterationPerformance" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful GetIterationPerformance request": { + "$ref": "./examples/GetIterationPerformance.json" + } + } + } + }, + "/projects/{projectId}/iterations/{iterationId}/performance/images": { + "get": { + "tags": [ + "ProjectApi" + ], + "summary": "Get image with its prediction for a given project iteration.", + "description": "This API supports batching and range selection. By default it will only return first 50 images matching images.\r\nUse the {take} and {skip} parameters to control how many images to return in a given batch.\r\nThe filtering is on an and/or relationship. For example, if the provided tag ids are for the \"Dog\" and\r\n\"Cat\" tags, then only images tagged with Dog and/or Cat will be returned", + "operationId": "GetImagePerformances", + "consumes": [], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "iterationId", + "in": "path", + "description": "The iteration id. Defaults to workspace.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "tagIds", + "in": "query", + "description": "A list of tags ids to filter the images. Defaults to all tagged images when null. Limited to 20.", + "required": false, + "type": "array", + "items": { + "type": "string", + "format": "uuid", + "x-nullable": false + }, + "collectionFormat": "csv", + "maxItems": 20, + "minItems": 0 + }, + { + "name": "orderBy", + "in": "query", + "description": "The ordering. Defaults to newest.", + "required": false, + "type": "string", + "enum": [ + "Newest", + "Oldest" + ] + }, + { + "name": "take", + "in": "query", + "description": "Maximum number of images to return. Defaults to 50, limited to 256.", + "required": false, + "type": "integer", + "format": "int32", + "default": 50, + "maximum": 256, + "minimum": 0 + }, + { + "name": "skip", + "in": "query", + "description": "Number of images to skip before beginning the image batch. Defaults to 0.", + "required": false, + "type": "integer", + "format": "int32", + "default": 0 + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/ImagePerformance" + } + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful GetImagePerformances request": { + "$ref": "./examples/GetImagePerformances.json" + } + } + } + }, + "/projects/{projectId}/iterations/{iterationId}/performance/images/count": { + "get": { + "tags": [ + "ProjectApi" + ], + "summary": "Gets the number of images tagged with the provided {tagIds} that have prediction results from\r\ntraining for the provided iteration {iterationId}.", + "description": "The filtering is on an and/or relationship. For example, if the provided tag ids are for the \"Dog\" and\r\n\"Cat\" tags, then only images tagged with Dog and/or Cat will be returned", + "operationId": "GetImagePerformanceCount", + "consumes": [], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "iterationId", + "in": "path", + "description": "The iteration id. Defaults to workspace.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "tagIds", + "in": "query", + "description": "A list of tags ids to filter the images to count. Defaults to all tags when null.", + "required": false, + "type": "array", + "items": { + "type": "string", + "format": "uuid", + "x-nullable": false + }, + "collectionFormat": "csv" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "format": "int32", + "type": "integer" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful GetImagePerformanceCount request": { + "$ref": "./examples/GetImagePerformanceCount.json" + } + } + } + }, + "/projects/{projectId}/iterations/{iterationId}/publish": { + "post": { + "tags": [ + "ProjectApi" + ], + "summary": "Publish a specific iteration.", + "operationId": "PublishIteration", + "consumes": [], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "iterationId", + "in": "path", + "description": "The iteration id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "publishName", + "in": "query", + "description": "The name to give the published iteration.", + "required": true, + "type": "string" + }, + { + "name": "predictionId", + "in": "query", + "description": "The id of the prediction resource to publish to.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "boolean" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful PublishIteration request": { + "$ref": "./examples/PublishIteration.json" + } + } + }, + "delete": { + "tags": [ + "ProjectApi" + ], + "summary": "Unpublish a specific iteration.", + "operationId": "UnpublishIteration", + "consumes": [], + "produces": [], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "iterationId", + "in": "path", + "description": "The iteration id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful UnpublishIteration request": { + "$ref": "./examples/UnpublishIteration.json" + } + } + } + }, + "/projects/{projectId}/predictions": { + "delete": { + "tags": [ + "PredictionsApi" + ], + "summary": "Delete a set of predicted images and their associated prediction results.", + "operationId": "DeletePrediction", + "consumes": [], + "produces": [], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "ids", + "in": "query", + "description": "The prediction ids. Limited to 64.", + "required": true, + "type": "array", + "items": { + "type": "string", + "format": "uuid", + "x-nullable": false + }, + "collectionFormat": "csv", + "maxItems": 64, + "minItems": 0 + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful DeletePrediction request": { + "$ref": "./examples/DeletePrediction.json" + } + } + } + }, + "/projects/{projectId}/predictions/query": { + "post": { + "tags": [ + "PredictionsApi" + ], + "summary": "Get images that were sent to your prediction endpoint.", + "operationId": "QueryPredictions", + "consumes": [ + "application/json", + "application/xml", + "text/xml", + "application/x-www-form-urlencoded" + ], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "query", + "in": "body", + "description": "Parameters used to query the predictions. Limited to combining 2 tags.", + "required": true, + "schema": { + "$ref": "#/definitions/PredictionQueryToken" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PredictionQueryResult" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful QueryPredictions request": { + "$ref": "./examples/QueryPredictions.json" + } + } + } + }, + "/projects/{projectId}/quicktest/image": { + "post": { + "tags": [ + "PredictionsApi" + ], + "summary": "Quick test an image.", + "operationId": "QuickTestImage", + "consumes": [ + "multipart/form-data", + "application/octet-stream" + ], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "iterationId", + "in": "query", + "description": "Optional. Specifies the id of a particular iteration to evaluate against.\r\n The default iteration for the project will be used when not specified.", + "required": false, + "type": "string", + "format": "uuid" + }, + { + "name": "store", + "in": "query", + "description": "Optional. Specifies whether or not to store the result of this prediction. The default is true, to store.", + "required": false, + "type": "boolean", + "default": true + }, + { + "name": "imageData", + "in": "formData", + "description": "Binary image data. Supported formats are JPEG, GIF, PNG, and BMP. Supports images up to 6MB.", + "required": true, + "type": "file" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ImagePrediction" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful QuickTestImage request": { + "$ref": "./examples/QuickTestImage.json" + } + } + } + }, + "/projects/{projectId}/quicktest/url": { + "post": { + "tags": [ + "PredictionsApi" + ], + "summary": "Quick test an image url.", + "operationId": "QuickTestImageUrl", + "consumes": [ + "application/json", + "application/xml", + "text/xml", + "application/x-www-form-urlencoded" + ], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project to evaluate against.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "imageUrl", + "in": "body", + "description": "An ImageUrl that contains the url of the image to be evaluated.", + "required": true, + "schema": { + "$ref": "#/definitions/ImageUrl" + } + }, + { + "name": "iterationId", + "in": "query", + "description": "Optional. Specifies the id of a particular iteration to evaluate against.\r\n The default iteration for the project will be used when not specified.", + "required": false, + "type": "string", + "format": "uuid" + }, + { + "name": "store", + "in": "query", + "description": "Optional. Specifies whether or not to store the result of this prediction. The default is true, to store.", + "required": false, + "type": "boolean", + "default": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ImagePrediction" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful QuickTestImageUrl request": { + "$ref": "./examples/QuickTestImageUrl.json" + } + } + } + }, + "/projects/{projectId}/tags": { + "get": { + "tags": [ + "TagsApi" + ], + "summary": "Get the tags for a given project and iteration.", + "operationId": "GetTags", + "consumes": [], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "iterationId", + "in": "query", + "description": "The iteration id. Defaults to workspace.", + "required": false, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/Tag" + } + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful GetTags request": { + "$ref": "./examples/GetTags.json" + } + } + }, + "post": { + "tags": [ + "TagsApi" + ], + "summary": "Create a tag for the project.", + "operationId": "CreateTag", + "consumes": [], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "name", + "in": "query", + "description": "The tag name.", + "required": true, + "type": "string" + }, + { + "name": "description", + "in": "query", + "description": "Optional description for the tag.", + "required": false, + "type": "string" + }, + { + "name": "type", + "in": "query", + "description": "Optional type for the tag.", + "required": false, + "type": "string", + "enum": [ + "Regular", + "Negative" + ] + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Tag" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful CreateTag request": { + "$ref": "./examples/CreateTag.json" + } + } + } + }, + "/projects/{projectId}/tags/{tagId}": { + "get": { + "tags": [ + "TagsApi" + ], + "summary": "Get information about a specific tag.", + "operationId": "GetTag", + "consumes": [], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project this tag belongs to.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "tagId", + "in": "path", + "description": "The tag id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "iterationId", + "in": "query", + "description": "The iteration to retrieve this tag from. Optional, defaults to current training set.", + "required": false, + "type": "string", + "format": "uuid" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Tag" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful GetTag request": { + "$ref": "./examples/GetTag.json" + } + } + }, + "delete": { + "tags": [ + "TagsApi" + ], + "summary": "Delete a tag from the project.", + "operationId": "DeleteTag", + "consumes": [], + "produces": [], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "tagId", + "in": "path", + "description": "Id of the tag to be deleted.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful DeleteTag request": { + "$ref": "./examples/DeleteTag.json" + } + } + }, + "patch": { + "tags": [ + "TagsApi" + ], + "summary": "Update a tag.", + "operationId": "UpdateTag", + "consumes": [ + "application/json", + "application/xml", + "text/xml", + "application/x-www-form-urlencoded" + ], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "tagId", + "in": "path", + "description": "The id of the target tag.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "updatedTag", + "in": "body", + "description": "The updated tag model.", + "required": true, + "schema": { + "$ref": "#/definitions/Tag" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Tag" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful UpdateTag request": { + "$ref": "./examples/UpdateTag.json" + } + } + } + }, + "/projects/{projectId}/tagsandregions/suggestions": { + "post": { + "tags": [ + "SuggestTagsAndRegionsApi" + ], + "summary": "Suggest tags and regions for an array/batch of untagged images. Returns empty array if no tags are found.", + "description": "This API will get suggested tags and regions for an array/batch of untagged images along with confidences for the tags. It returns an empty array if no tags are found.\r\nThere is a limit of 64 images in the batch.", + "operationId": "SuggestTagsAndRegions", + "consumes": [], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "iterationId", + "in": "query", + "description": "IterationId to use for tag and region suggestion.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "imageIds", + "in": "query", + "description": "Array of image ids tag suggestion are needed for. Use GetUntaggedImages API to get imageIds.", + "required": true, + "type": "array", + "items": { + "type": "string", + "format": "uuid", + "x-nullable": false + }, + "collectionFormat": "csv", + "maxItems": 64, + "minItems": 0 + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/SuggestedTagAndRegion" + } + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful SuggestTagsAndRegions request": { + "$ref": "./examples/SuggestTagsAndRegions.json" + } + } + } + }, + "/projects/{projectId}/train": { + "post": { + "tags": [ + "ProjectApi" + ], + "summary": "Queues project for training.", + "operationId": "TrainProject", + "consumes": [ + "application/json", + "application/xml", + "text/xml", + "application/x-www-form-urlencoded" + ], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "projectId", + "in": "path", + "description": "The project id.", + "required": true, + "type": "string", + "format": "uuid", + "x-nullable": false + }, + { + "name": "trainingType", + "in": "query", + "description": "The type of training to use to train the project (default: Regular).", + "required": false, + "type": "string", + "enum": [ + "Regular", + "Advanced" + ] + }, + { + "name": "reservedBudgetInHours", + "in": "query", + "description": "The number of hours reserved as budget for training (if applicable).", + "required": false, + "type": "integer", + "format": "int32", + "default": 0 + }, + { + "name": "forceTrain", + "in": "query", + "description": "Whether to force train even if dataset and configuration does not change (default: false).", + "required": false, + "type": "boolean", + "default": false + }, + { + "name": "notificationEmailAddress", + "in": "query", + "description": "The email address to send notification to when training finishes (default: null).", + "required": false, + "type": "string" + }, + { + "name": "trainingParameters", + "in": "body", + "description": "Additional training parameters passed in to control how the project is trained.", + "required": false, + "schema": { + "$ref": "#/definitions/TrainingParameters" + }, + "x-nullable": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Iteration" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful TrainProject request": { + "$ref": "./examples/TrainProject.json" + } + } + } + }, + "/projects/import": { + "post": { + "tags": [ + "ProjectApi" + ], + "summary": "Imports a project.", + "operationId": "ImportProject", + "consumes": [], + "produces": [ + "application/json", + "application/xml", + "text/xml" + ], + "parameters": [ + { + "name": "token", + "in": "query", + "description": "Token generated from the export project call.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Project" + } + }, + "default": { + "description": "Error response", + "schema": { + "$ref": "#/definitions/CustomVisionError" + } + } + }, + "x-ms-examples": { + "Successful ImportProject request": { + "$ref": "./examples/ImportProject.json" + } + } + } + } + }, + "definitions": { + "BoundingBox": { + "description": "Bounding box that defines a region of an image.", + "required": [ + "left", + "top", + "width", + "height" + ], + "type": "object", + "properties": { + "left": { + "format": "float", + "description": "Coordinate of the left boundary.", + "type": "number", + "readOnly": false, + "x-nullable": false + }, + "top": { + "format": "float", + "description": "Coordinate of the top boundary.", + "type": "number", + "readOnly": false, + "x-nullable": false + }, + "width": { + "format": "float", + "description": "Width.", + "type": "number", + "readOnly": false, + "x-nullable": false + }, + "height": { + "format": "float", + "description": "Height.", + "type": "number", + "readOnly": false, + "x-nullable": false + } + } + }, + "CustomVisionError": { + "required": [ + "code", + "message" + ], + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "enum": [ + "NoError", + "BadRequest", + "BadRequestExceededBatchSize", + "BadRequestNotSupported", + "BadRequestInvalidIds", + "BadRequestProjectName", + "BadRequestProjectNameNotUnique", + "BadRequestProjectDescription", + "BadRequestProjectUnknownDomain", + "BadRequestProjectUnknownClassification", + "BadRequestProjectUnsupportedDomainTypeChange", + "BadRequestProjectUnsupportedExportPlatform", + "BadRequestProjectImagePreprocessingSettings", + "BadRequestProjectDuplicated", + "BadRequestIterationName", + "BadRequestIterationNameNotUnique", + "BadRequestIterationDescription", + "BadRequestIterationIsNotTrained", + "BadRequestIterationValidationFailed", + "BadRequestWorkspaceCannotBeModified", + "BadRequestWorkspaceNotDeletable", + "BadRequestTagName", + "BadRequestTagNameNotUnique", + "BadRequestTagDescription", + "BadRequestTagType", + "BadRequestMultipleNegativeTag", + "BadRequestImageTags", + "BadRequestImageRegions", + "BadRequestNegativeAndRegularTagOnSameImage", + "BadRequestRequiredParamIsNull", + "BadRequestIterationIsPublished", + "BadRequestInvalidPublishName", + "BadRequestInvalidPublishTarget", + "BadRequestUnpublishFailed", + "BadRequestIterationNotPublished", + "BadRequestSubscriptionApi", + "BadRequestExceedProjectLimit", + "BadRequestExceedIterationPerProjectLimit", + "BadRequestExceedTagPerProjectLimit", + "BadRequestExceedTagPerImageLimit", + "BadRequestExceededQuota", + "BadRequestCannotMigrateProjectWithName", + "BadRequestNotLimitedTrial", + "BadRequestImageBatch", + "BadRequestImageStream", + "BadRequestImageUrl", + "BadRequestImageFormat", + "BadRequestImageSizeBytes", + "BadRequestImageExceededCount", + "BadRequestTrainingNotNeeded", + "BadRequestTrainingNotNeededButTrainingPipelineUpdated", + "BadRequestTrainingValidationFailed", + "BadRequestClassificationTrainingValidationFailed", + "BadRequestMultiClassClassificationTrainingValidationFailed", + "BadRequestMultiLabelClassificationTrainingValidationFailed", + "BadRequestDetectionTrainingValidationFailed", + "BadRequestTrainingAlreadyInProgress", + "BadRequestDetectionTrainingNotAllowNegativeTag", + "BadRequestInvalidEmailAddress", + "BadRequestDomainNotSupportedForAdvancedTraining", + "BadRequestExportPlatformNotSupportedForAdvancedTraining", + "BadRequestReservedBudgetInHoursNotEnoughForAdvancedTraining", + "BadRequestExportValidationFailed", + "BadRequestExportAlreadyInProgress", + "BadRequestPredictionIdsMissing", + "BadRequestPredictionIdsExceededCount", + "BadRequestPredictionTagsExceededCount", + "BadRequestPredictionResultsExceededCount", + "BadRequestPredictionInvalidApplicationName", + "BadRequestPredictionInvalidQueryParameters", + "BadRequestInvalidImportToken", + "BadRequestExportWhileTraining", + "BadRequestInvalid", + "UnsupportedMediaType", + "Forbidden", + "ForbiddenUser", + "ForbiddenUserResource", + "ForbiddenUserSignupDisabled", + "ForbiddenUserSignupAllowanceExceeded", + "ForbiddenUserDoesNotExist", + "ForbiddenUserDisabled", + "ForbiddenUserInsufficientCapability", + "ForbiddenDRModeEnabled", + "ForbiddenInvalid", + "NotFound", + "NotFoundProject", + "NotFoundProjectDefaultIteration", + "NotFoundIteration", + "NotFoundIterationPerformance", + "NotFoundTag", + "NotFoundImage", + "NotFoundDomain", + "NotFoundApimSubscription", + "NotFoundInvalid", + "Conflict", + "ConflictInvalid", + "ErrorUnknown", + "ErrorIterationCopyFailed", + "ErrorPreparePerformanceMigrationFailed", + "ErrorProjectInvalidWorkspace", + "ErrorProjectInvalidPipelineConfiguration", + "ErrorProjectInvalidDomain", + "ErrorProjectTrainingRequestFailed", + "ErrorProjectImportRequestFailed", + "ErrorProjectExportRequestFailed", + "ErrorFeaturizationServiceUnavailable", + "ErrorFeaturizationQueueTimeout", + "ErrorFeaturizationInvalidFeaturizer", + "ErrorFeaturizationAugmentationUnavailable", + "ErrorFeaturizationUnrecognizedJob", + "ErrorFeaturizationAugmentationError", + "ErrorExporterInvalidPlatform", + "ErrorExporterInvalidFeaturizer", + "ErrorExporterInvalidClassifier", + "ErrorPredictionServiceUnavailable", + "ErrorPredictionModelNotFound", + "ErrorPredictionModelNotCached", + "ErrorPrediction", + "ErrorPredictionStorage", + "ErrorRegionProposal", + "ErrorInvalid" + ], + "type": "string", + "x-ms-enum": { + "name": "CustomVisionErrorCodes", + "modelAsString": true + } + }, + "message": { + "description": "A message explaining the error reported by the service.", + "type": "string" + } + } + }, + "Domain": { + "type": "object", + "properties": { + "id": { + "format": "uuid", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "name": { + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "type": { + "enum": [ + "Classification", + "ObjectDetection" + ], + "type": "string", + "readOnly": true, + "x-nullable": false, + "x-ms-enum": { + "name": "DomainType", + "modelAsString": true + } + }, + "exportable": { + "type": "boolean", + "readOnly": true, + "x-nullable": false + }, + "enabled": { + "type": "boolean", + "readOnly": true, + "x-nullable": false + } + } + }, + "Export": { + "type": "object", + "properties": { + "platform": { + "description": "Platform of the export.", + "enum": [ + "CoreML", + "TensorFlow", + "DockerFile", + "ONNX", + "VAIDK" + ], + "type": "string", + "readOnly": true, + "x-nullable": false, + "x-ms-enum": { + "name": "ExportPlatform", + "modelAsString": true + } + }, + "status": { + "description": "Status of the export.", + "enum": [ + "Exporting", + "Failed", + "Done" + ], + "type": "string", + "readOnly": true, + "x-nullable": false, + "x-ms-enum": { + "name": "ExportStatus", + "modelAsString": true + } + }, + "downloadUri": { + "description": "URI used to download the model.", + "type": "string", + "readOnly": true + }, + "flavor": { + "description": "Flavor of the export. These are specializations of the export platform.\r\nDocker platform has valid flavors: Linux, Windows, ARM.\r\nTensorflow platform has valid flavors: TensorFlowNormal, TensorFlowLite.\r\nONNX platform has valid flavors: ONNX10, ONNX12.", + "enum": [ + "Linux", + "Windows", + "ONNX10", + "ONNX12", + "ARM", + "TensorFlowNormal", + "TensorFlowLite" + ], + "type": "string", + "readOnly": true, + "x-nullable": true, + "x-ms-enum": { + "name": "ExportFlavor", + "modelAsString": true + } + }, + "newerVersionAvailable": { + "description": "Indicates an updated version of the export package is available and should be re-exported for the latest changes.", + "type": "boolean", + "readOnly": true, + "x-nullable": false + } + } + }, + "Image": { + "description": "Image model to be sent as JSON.", + "type": "object", + "properties": { + "id": { + "format": "uuid", + "description": "Id of the image.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "created": { + "format": "date-time", + "description": "Date the image was created.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "width": { + "format": "int32", + "description": "Width of the image.", + "type": "integer", + "readOnly": true, + "x-nullable": false + }, + "height": { + "format": "int32", + "description": "Height of the image.", + "type": "integer", + "readOnly": true, + "x-nullable": false + }, + "resizedImageUri": { + "description": "The URI to the (resized) image used for training.", + "type": "string", + "readOnly": true + }, + "thumbnailUri": { + "description": "The URI to the thumbnail of the original image.", + "type": "string", + "readOnly": true + }, + "originalImageUri": { + "description": "The URI to the original uploaded image.", + "type": "string", + "readOnly": true + }, + "tags": { + "description": "Tags associated with this image.", + "type": "array", + "items": { + "$ref": "#/definitions/ImageTag" + }, + "readOnly": true, + "x-nullable": true + }, + "regions": { + "description": "Regions associated with this image.", + "type": "array", + "items": { + "$ref": "#/definitions/ImageRegion" + }, + "readOnly": true, + "x-nullable": true + } + } + }, + "ImageCreateResult": { + "type": "object", + "properties": { + "sourceUrl": { + "description": "Source URL of the image.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "status": { + "description": "Status of the image creation.", + "enum": [ + "OK", + "OKDuplicate", + "ErrorSource", + "ErrorImageFormat", + "ErrorImageSize", + "ErrorStorage", + "ErrorLimitExceed", + "ErrorTagLimitExceed", + "ErrorRegionLimitExceed", + "ErrorUnknown", + "ErrorNegativeAndRegularTagOnSameImage" + ], + "type": "string", + "readOnly": true, + "x-nullable": false, + "x-ms-enum": { + "name": "ImageCreateStatus", + "modelAsString": true + } + }, + "image": { + "$ref": "#/definitions/Image", + "description": "The image.", + "readOnly": true + } + } + }, + "ImageCreateSummary": { + "type": "object", + "properties": { + "isBatchSuccessful": { + "description": "True if all of the images in the batch were created successfully, otherwise false.", + "type": "boolean", + "readOnly": true, + "x-nullable": false + }, + "images": { + "description": "List of the image creation results.", + "type": "array", + "items": { + "$ref": "#/definitions/ImageCreateResult", + "x-nullable": false + }, + "readOnly": true + } + } + }, + "ImageFileCreateBatch": { + "type": "object", + "properties": { + "images": { + "type": "array", + "items": { + "$ref": "#/definitions/ImageFileCreateEntry", + "x-nullable": false + }, + "readOnly": false + }, + "tagIds": { + "type": "array", + "items": { + "format": "uuid", + "type": "string", + "x-nullable": false + }, + "readOnly": false + } + } + }, + "ImageFileCreateEntry": { + "type": "object", + "properties": { + "name": { + "type": "string", + "readOnly": false, + "x-nullable": false + }, + "contents": { + "format": "byte", + "type": "string", + "readOnly": false + }, + "tagIds": { + "type": "array", + "items": { + "format": "uuid", + "type": "string", + "x-nullable": false + }, + "readOnly": false + }, + "regions": { + "type": "array", + "items": { + "$ref": "#/definitions/Region", + "x-nullable": false + }, + "readOnly": false + } + } + }, + "ImageIdCreateBatch": { + "type": "object", + "properties": { + "images": { + "type": "array", + "items": { + "$ref": "#/definitions/ImageIdCreateEntry", + "x-nullable": false + }, + "readOnly": false + }, + "tagIds": { + "type": "array", + "items": { + "format": "uuid", + "type": "string", + "x-nullable": false + }, + "readOnly": false + } + } + }, + "ImageIdCreateEntry": { + "type": "object", + "properties": { + "id": { + "format": "uuid", + "description": "Id of the image.", + "type": "string", + "readOnly": false, + "x-nullable": false + }, + "tagIds": { + "type": "array", + "items": { + "format": "uuid", + "type": "string", + "x-nullable": false + }, + "readOnly": false + }, + "regions": { + "type": "array", + "items": { + "$ref": "#/definitions/Region", + "x-nullable": false + }, + "readOnly": false + } + } + }, + "ImagePerformance": { + "description": "Image performance model.", + "type": "object", + "properties": { + "predictions": { + "type": "array", + "items": { + "$ref": "#/definitions/Prediction" + }, + "readOnly": true, + "x-nullable": true + }, + "id": { + "format": "uuid", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "created": { + "format": "date-time", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "width": { + "format": "int32", + "type": "integer", + "readOnly": true, + "x-nullable": false + }, + "height": { + "format": "int32", + "type": "integer", + "readOnly": true, + "x-nullable": false + }, + "imageUri": { + "type": "string", + "readOnly": true + }, + "thumbnailUri": { + "type": "string", + "readOnly": true + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/definitions/ImageTag" + }, + "readOnly": true, + "x-nullable": true + }, + "regions": { + "type": "array", + "items": { + "$ref": "#/definitions/ImageRegion" + }, + "readOnly": true, + "x-nullable": true + } + } + }, + "ImagePrediction": { + "description": "Result of an image prediction request.", + "type": "object", + "properties": { + "id": { + "format": "uuid", + "description": "Prediction Id.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "project": { + "format": "uuid", + "description": "Project Id.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "iteration": { + "format": "uuid", + "description": "Iteration Id.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "created": { + "format": "date-time", + "description": "Date this prediction was created.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "predictions": { + "description": "List of predictions.", + "type": "array", + "items": { + "$ref": "#/definitions/Prediction", + "x-nullable": false + }, + "readOnly": true + } + } + }, + "ImageProcessingSettings": { + "description": "Represents image preprocessing settings used by image augmentation.", + "type": "object", + "properties": { + "augmentationMethods": { + "description": "Gets or sets enabled image transforms. The key corresponds to the transform name. If value is set to true, then correspondent transform is enabled. Otherwise this transform will not be used.\r\nAugmentation will be uniformly distributed among enabled transforms.", + "type": "object", + "additionalProperties": { + "type": "boolean" + }, + "readOnly": false, + "x-nullable": true + } + } + }, + "ImageRegion": { + "required": [ + "tagId", + "left", + "top", + "width", + "height" + ], + "type": "object", + "properties": { + "regionId": { + "format": "uuid", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "tagName": { + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "created": { + "format": "date-time", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "tagId": { + "format": "uuid", + "description": "Id of the tag associated with this region.", + "type": "string", + "readOnly": false, + "x-nullable": false + }, + "left": { + "format": "float", + "description": "Coordinate of the left boundary.", + "type": "number", + "readOnly": false, + "x-nullable": false + }, + "top": { + "format": "float", + "description": "Coordinate of the top boundary.", + "type": "number", + "readOnly": false, + "x-nullable": false + }, + "width": { + "format": "float", + "description": "Width.", + "type": "number", + "readOnly": false, + "x-nullable": false + }, + "height": { + "format": "float", + "description": "Height.", + "type": "number", + "readOnly": false, + "x-nullable": false + } + } + }, + "ImageRegionCreateBatch": { + "description": "Batch of image region information to create.", + "type": "object", + "properties": { + "regions": { + "type": "array", + "items": { + "$ref": "#/definitions/ImageRegionCreateEntry", + "x-nullable": false + }, + "readOnly": false + } + } + }, + "ImageRegionCreateEntry": { + "description": "Entry associating a region to an image.", + "required": [ + "imageId", + "tagId", + "left", + "top", + "width", + "height" + ], + "type": "object", + "properties": { + "imageId": { + "format": "uuid", + "description": "Id of the image.", + "type": "string", + "readOnly": false, + "x-nullable": false + }, + "tagId": { + "format": "uuid", + "description": "Id of the tag associated with this region.", + "type": "string", + "readOnly": false, + "x-nullable": false + }, + "left": { + "format": "float", + "description": "Coordinate of the left boundary.", + "type": "number", + "readOnly": false, + "x-nullable": false + }, + "top": { + "format": "float", + "description": "Coordinate of the top boundary.", + "type": "number", + "readOnly": false, + "x-nullable": false + }, + "width": { + "format": "float", + "description": "Width.", + "type": "number", + "readOnly": false, + "x-nullable": false + }, + "height": { + "format": "float", + "description": "Height.", + "type": "number", + "readOnly": false, + "x-nullable": false + } + } + }, + "ImageRegionCreateResult": { + "required": [ + "tagId", + "left", + "top", + "width", + "height" + ], + "type": "object", + "properties": { + "imageId": { + "format": "uuid", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "regionId": { + "format": "uuid", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "tagName": { + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "created": { + "format": "date-time", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "tagId": { + "format": "uuid", + "description": "Id of the tag associated with this region.", + "type": "string", + "readOnly": false, + "x-nullable": false + }, + "left": { + "format": "float", + "description": "Coordinate of the left boundary.", + "type": "number", + "readOnly": false, + "x-nullable": false + }, + "top": { + "format": "float", + "description": "Coordinate of the top boundary.", + "type": "number", + "readOnly": false, + "x-nullable": false + }, + "width": { + "format": "float", + "description": "Width.", + "type": "number", + "readOnly": false, + "x-nullable": false + }, + "height": { + "format": "float", + "description": "Height.", + "type": "number", + "readOnly": false, + "x-nullable": false + } + } + }, + "ImageRegionCreateSummary": { + "type": "object", + "properties": { + "created": { + "type": "array", + "items": { + "$ref": "#/definitions/ImageRegionCreateResult" + }, + "readOnly": false, + "x-nullable": true + }, + "duplicated": { + "type": "array", + "items": { + "$ref": "#/definitions/ImageRegionCreateEntry" + }, + "readOnly": false, + "x-nullable": true + }, + "exceeded": { + "type": "array", + "items": { + "$ref": "#/definitions/ImageRegionCreateEntry" + }, + "readOnly": false, + "x-nullable": true + } + } + }, + "ImageRegionProposal": { + "type": "object", + "properties": { + "projectId": { + "format": "uuid", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "imageId": { + "format": "uuid", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "proposals": { + "type": "array", + "items": { + "$ref": "#/definitions/RegionProposal", + "x-nullable": false + }, + "readOnly": true + } + } + }, + "ImageTag": { + "type": "object", + "properties": { + "tagId": { + "format": "uuid", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "tagName": { + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "created": { + "format": "date-time", + "type": "string", + "readOnly": true, + "x-nullable": false + } + } + }, + "ImageTagCreateBatch": { + "description": "Batch of image tags.", + "type": "object", + "properties": { + "tags": { + "description": "Image Tag entries to include in this batch.", + "type": "array", + "items": { + "$ref": "#/definitions/ImageTagCreateEntry", + "x-nullable": false + }, + "readOnly": false + } + } + }, + "ImageTagCreateEntry": { + "description": "Entry associating a tag to an image.", + "type": "object", + "properties": { + "imageId": { + "format": "uuid", + "description": "Id of the image.", + "type": "string", + "readOnly": false, + "x-nullable": false + }, + "tagId": { + "format": "uuid", + "description": "Id of the tag.", + "type": "string", + "readOnly": false, + "x-nullable": false + } + } + }, + "ImageTagCreateSummary": { + "type": "object", + "properties": { + "created": { + "type": "array", + "items": { + "$ref": "#/definitions/ImageTagCreateEntry" + }, + "readOnly": false, + "x-nullable": true + }, + "duplicated": { + "type": "array", + "items": { + "$ref": "#/definitions/ImageTagCreateEntry" + }, + "readOnly": false, + "x-nullable": true + }, + "exceeded": { + "type": "array", + "items": { + "$ref": "#/definitions/ImageTagCreateEntry" + }, + "readOnly": false, + "x-nullable": true + } + } + }, + "ImageUrl": { + "description": "Image url.", + "required": [ + "url" + ], + "type": "object", + "properties": { + "url": { + "description": "Url of the image.", + "type": "string", + "readOnly": false, + "x-nullable": false + } + } + }, + "ImageUrlCreateBatch": { + "type": "object", + "properties": { + "images": { + "type": "array", + "items": { + "$ref": "#/definitions/ImageUrlCreateEntry", + "x-nullable": false + }, + "readOnly": false + }, + "tagIds": { + "type": "array", + "items": { + "format": "uuid", + "type": "string", + "x-nullable": false + }, + "readOnly": false + } + } + }, + "ImageUrlCreateEntry": { + "required": [ + "url" + ], + "type": "object", + "properties": { + "url": { + "description": "Url of the image.", + "type": "string", + "readOnly": false, + "x-nullable": false + }, + "tagIds": { + "type": "array", + "items": { + "format": "uuid", + "type": "string", + "x-nullable": false + }, + "readOnly": false + }, + "regions": { + "type": "array", + "items": { + "$ref": "#/definitions/Region", + "x-nullable": false + }, + "readOnly": false + } + } + }, + "Iteration": { + "description": "Iteration model to be sent over JSON.", + "required": [ + "name" + ], + "type": "object", + "properties": { + "id": { + "format": "uuid", + "description": "Gets the id of the iteration.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "name": { + "description": "Gets or sets the name of the iteration.", + "type": "string", + "readOnly": false, + "x-nullable": false + }, + "status": { + "description": "Gets the current iteration status.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "created": { + "format": "date-time", + "description": "Gets the time this iteration was completed.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "lastModified": { + "format": "date-time", + "description": "Gets the time this iteration was last modified.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "trainedAt": { + "format": "date-time", + "description": "Gets the time this iteration was last modified.", + "type": "string", + "readOnly": true, + "x-nullable": true + }, + "projectId": { + "format": "uuid", + "description": "Gets the project id of the iteration.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "exportable": { + "description": "Whether the iteration can be exported to another format for download.", + "type": "boolean", + "readOnly": true, + "x-nullable": false + }, + "exportableTo": { + "description": "A set of platforms this iteration can export to.", + "type": "array", + "items": { + "enum": [ + "CoreML", + "TensorFlow", + "DockerFile", + "ONNX", + "VAIDK" + ], + "type": "string", + "x-nullable": false + }, + "readOnly": true + }, + "domainId": { + "format": "uuid", + "description": "Get or sets a guid of the domain the iteration has been trained on.", + "type": "string", + "readOnly": true, + "x-nullable": true + }, + "classificationType": { + "description": "Gets the classification type of the project.", + "enum": [ + "Multiclass", + "Multilabel" + ], + "type": "string", + "readOnly": true, + "x-nullable": true, + "x-ms-enum": { + "name": "Classifier", + "modelAsString": true + } + }, + "trainingType": { + "description": "Gets the training type of the iteration.", + "enum": [ + "Regular", + "Advanced" + ], + "type": "string", + "readOnly": true, + "x-nullable": false, + "x-ms-enum": { + "name": "TrainingType", + "modelAsString": true + } + }, + "reservedBudgetInHours": { + "format": "int32", + "description": "Gets the reserved advanced training budget for the iteration.", + "type": "integer", + "readOnly": true, + "x-nullable": false + }, + "trainingTimeInMinutes": { + "format": "int32", + "description": "Gets the training time for the iteration.", + "type": "integer", + "readOnly": true, + "x-nullable": false + }, + "publishName": { + "description": "Name of the published model.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "originalPublishResourceId": { + "description": "Resource Provider Id this iteration was originally published to.", + "type": "string", + "readOnly": true, + "x-nullable": false + } + } + }, + "IterationPerformance": { + "description": "Represents the detailed performance data for a trained iteration.", + "type": "object", + "properties": { + "perTagPerformance": { + "description": "Gets the per-tag performance details for this iteration.", + "type": "array", + "items": { + "$ref": "#/definitions/TagPerformance", + "x-nullable": false + }, + "readOnly": true + }, + "precision": { + "format": "float", + "description": "Gets the precision.", + "type": "number", + "readOnly": true, + "x-nullable": false + }, + "precisionStdDeviation": { + "format": "float", + "description": "Gets the standard deviation for the precision.", + "type": "number", + "readOnly": true, + "x-nullable": false + }, + "recall": { + "format": "float", + "description": "Gets the recall.", + "type": "number", + "readOnly": true, + "x-nullable": false + }, + "recallStdDeviation": { + "format": "float", + "description": "Gets the standard deviation for the recall.", + "type": "number", + "readOnly": true, + "x-nullable": false + }, + "averagePrecision": { + "format": "float", + "description": "Gets the average precision when applicable.", + "type": "number", + "readOnly": true, + "x-nullable": true + } + } + }, + "Prediction": { + "description": "Prediction result.", + "type": "object", + "properties": { + "probability": { + "format": "float", + "description": "Probability of the tag.", + "type": "number", + "readOnly": true, + "x-nullable": false + }, + "tagId": { + "format": "uuid", + "description": "Id of the predicted tag.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "tagName": { + "description": "Name of the predicted tag.", + "type": "string", + "readOnly": true, + "x-nullable": true + }, + "boundingBox": { + "$ref": "#/definitions/BoundingBox", + "description": "Bounding box of the prediction.", + "readOnly": true, + "x-nullable": true + } + } + }, + "PredictionQueryResult": { + "description": "Query result of the prediction images that were sent to your prediction endpoint.", + "type": "object", + "properties": { + "token": { + "$ref": "#/definitions/PredictionQueryToken", + "description": "Prediction Query Token.", + "readOnly": false + }, + "results": { + "description": "Result of an prediction request.", + "type": "array", + "items": { + "$ref": "#/definitions/StoredImagePrediction", + "x-nullable": false + }, + "readOnly": true + } + } + }, + "PredictionQueryTag": { + "type": "object", + "properties": { + "id": { + "format": "uuid", + "type": "string", + "readOnly": false, + "x-nullable": false + }, + "minThreshold": { + "format": "float", + "type": "number", + "readOnly": false, + "x-nullable": false + }, + "maxThreshold": { + "format": "float", + "type": "number", + "readOnly": false, + "x-nullable": false + } + } + }, + "PredictionQueryToken": { + "type": "object", + "properties": { + "session": { + "type": "string", + "readOnly": false, + "x-nullable": false + }, + "continuation": { + "type": "string", + "readOnly": false, + "x-nullable": false + }, + "maxCount": { + "format": "int32", + "type": "integer", + "readOnly": false, + "x-nullable": false + }, + "orderBy": { + "enum": [ + "Newest", + "Oldest", + "Suggested" + ], + "type": "string", + "readOnly": false, + "x-nullable": false, + "x-ms-enum": { + "name": "OrderBy", + "modelAsString": true + } + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/definitions/PredictionQueryTag", + "x-nullable": false + }, + "readOnly": false + }, + "iterationId": { + "format": "uuid", + "type": "string", + "readOnly": false, + "x-nullable": true + }, + "startTime": { + "format": "date-time", + "type": "string", + "readOnly": false, + "x-nullable": true + }, + "endTime": { + "format": "date-time", + "type": "string", + "readOnly": false, + "x-nullable": true + }, + "application": { + "type": "string", + "readOnly": false, + "x-nullable": false + } + } + }, + "Project": { + "description": "Represents a project.", + "required": [ + "name", + "description", + "settings" + ], + "type": "object", + "properties": { + "id": { + "format": "uuid", + "description": "Gets the project id.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "name": { + "description": "Gets or sets the name of the project.", + "type": "string", + "readOnly": false, + "x-nullable": false + }, + "description": { + "description": "Gets or sets the description of the project.", + "type": "string", + "readOnly": false, + "x-nullable": true + }, + "settings": { + "$ref": "#/definitions/ProjectSettings", + "description": "Gets or sets the project settings.", + "readOnly": false + }, + "created": { + "format": "date-time", + "description": "Gets the date this project was created.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "lastModified": { + "format": "date-time", + "description": "Gets the date this project was last modified.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "thumbnailUri": { + "description": "Gets the thumbnail url representing the image.", + "type": "string", + "readOnly": true + }, + "drModeEnabled": { + "description": "Gets if the Disaster Recovery (DR) mode is on, indicating the project is temporarily read-only.", + "type": "boolean", + "readOnly": true, + "x-nullable": true + }, + "status": { + "description": "Gets the status of the project.", + "enum": [ + "Succeeded", + "Importing", + "Failed" + ], + "type": "string", + "readOnly": false, + "x-nullable": false, + "x-ms-enum": { + "name": "ProjectStatus", + "modelAsString": true + } + } + } + }, + "ProjectExport": { + "description": "Represents information about a project export.", + "type": "object", + "properties": { + "iterationCount": { + "format": "int32", + "description": "Count of iterations that will be exported.", + "type": "integer", + "readOnly": true, + "x-nullable": false + }, + "imageCount": { + "format": "int32", + "description": "Count of images that will be exported.", + "type": "integer", + "readOnly": true, + "x-nullable": false + }, + "tagCount": { + "format": "int32", + "description": "Count of tags that will be exported.", + "type": "integer", + "readOnly": true, + "x-nullable": false + }, + "regionCount": { + "format": "int32", + "description": "Count of regions that will be exported.", + "type": "integer", + "readOnly": true, + "x-nullable": false + }, + "estimatedImportTimeInMS": { + "format": "int32", + "description": "Estimated time this project will take to import, can change based on network connectivity and load between\r\nsource and destination regions.", + "type": "integer", + "readOnly": true, + "x-nullable": false + }, + "token": { + "description": "Opaque token that should be passed to ImportProject to perform the import. This token grants access to import this\r\nproject to all that have the token.", + "type": "string", + "readOnly": true, + "x-nullable": false + } + } + }, + "ProjectSettings": { + "description": "Represents settings associated with a project.", + "type": "object", + "properties": { + "domainId": { + "format": "uuid", + "description": "Gets or sets the id of the Domain to use with this project.", + "type": "string", + "readOnly": false, + "x-nullable": false + }, + "classificationType": { + "description": "Gets or sets the classification type of the project.", + "enum": [ + "Multiclass", + "Multilabel" + ], + "type": "string", + "readOnly": false, + "x-nullable": true, + "x-ms-enum": { + "name": "Classifier", + "modelAsString": true + } + }, + "targetExportPlatforms": { + "description": "A list of ExportPlatform that the trained model should be able to support.", + "type": "array", + "items": { + "enum": [ + "CoreML", + "TensorFlow", + "DockerFile", + "ONNX", + "VAIDK" + ], + "type": "string", + "x-nullable": false + }, + "readOnly": false + }, + "useNegativeSet": { + "description": "Indicates if negative set is being used.", + "type": "boolean", + "readOnly": true, + "x-nullable": true + }, + "detectionParameters": { + "description": "Detection parameters in use, if any.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "imageProcessingSettings": { + "$ref": "#/definitions/ImageProcessingSettings", + "description": "Gets or sets image preprocessing settings.", + "readOnly": false + } + } + }, + "Region": { + "required": [ + "tagId", + "left", + "top", + "width", + "height" + ], + "type": "object", + "properties": { + "tagId": { + "format": "uuid", + "description": "Id of the tag associated with this region.", + "type": "string", + "readOnly": false, + "x-nullable": false + }, + "left": { + "format": "float", + "description": "Coordinate of the left boundary.", + "type": "number", + "readOnly": false, + "x-nullable": false + }, + "top": { + "format": "float", + "description": "Coordinate of the top boundary.", + "type": "number", + "readOnly": false, + "x-nullable": false + }, + "width": { + "format": "float", + "description": "Width.", + "type": "number", + "readOnly": false, + "x-nullable": false + }, + "height": { + "format": "float", + "description": "Height.", + "type": "number", + "readOnly": false, + "x-nullable": false + } + } + }, + "RegionProposal": { + "type": "object", + "properties": { + "confidence": { + "format": "float", + "type": "number", + "readOnly": true, + "x-nullable": false + }, + "boundingBox": { + "$ref": "#/definitions/BoundingBox", + "readOnly": true + } + } + }, + "StoredImagePrediction": { + "description": "Result of an image prediction request.", + "type": "object", + "properties": { + "resizedImageUri": { + "description": "The URI to the (resized) prediction image.", + "type": "string", + "readOnly": true + }, + "thumbnailUri": { + "description": "The URI to the thumbnail of the original prediction image.", + "type": "string", + "readOnly": true + }, + "originalImageUri": { + "description": "The URI to the original prediction image.", + "type": "string", + "readOnly": true + }, + "domain": { + "format": "uuid", + "description": "Domain used for the prediction.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "id": { + "format": "uuid", + "description": "Prediction Id.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "project": { + "format": "uuid", + "description": "Project Id.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "iteration": { + "format": "uuid", + "description": "Iteration Id.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "created": { + "format": "date-time", + "description": "Date this prediction was created.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "predictions": { + "description": "List of predictions.", + "type": "array", + "items": { + "$ref": "#/definitions/Prediction", + "x-nullable": false + }, + "readOnly": true + } + } + }, + "StoredSuggestedTagAndRegion": { + "description": "Result of a suggested tags and regions request of the untagged image.", + "type": "object", + "properties": { + "width": { + "format": "int32", + "description": "Width of the resized image.", + "type": "integer", + "readOnly": true, + "x-nullable": false + }, + "height": { + "format": "int32", + "description": "Height of the resized image.", + "type": "integer", + "readOnly": true, + "x-nullable": false + }, + "resizedImageUri": { + "description": "The URI to the (resized) prediction image.", + "type": "string", + "readOnly": true + }, + "thumbnailUri": { + "description": "The URI to the thumbnail of the original prediction image.", + "type": "string", + "readOnly": true + }, + "originalImageUri": { + "description": "The URI to the original prediction image.", + "type": "string", + "readOnly": true + }, + "domain": { + "format": "uuid", + "description": "Domain used for the prediction.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "id": { + "format": "uuid", + "description": "Prediction Id.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "project": { + "format": "uuid", + "description": "Project Id.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "iteration": { + "format": "uuid", + "description": "Iteration Id.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "created": { + "format": "date-time", + "description": "Date this prediction was created.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "predictions": { + "description": "List of predictions.", + "type": "array", + "items": { + "$ref": "#/definitions/Prediction", + "x-nullable": false + }, + "readOnly": true + }, + "predictionUncertainty": { + "format": "double", + "description": "Uncertainty (entropy) of suggested tags or regions per image.", + "type": "number", + "readOnly": true, + "x-nullable": false + } + } + }, + "SuggestedTagAndRegion": { + "description": "Result of a suggested tags and regions request.", + "type": "object", + "properties": { + "id": { + "format": "uuid", + "description": "Prediction Id.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "project": { + "format": "uuid", + "description": "Project Id.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "iteration": { + "format": "uuid", + "description": "Iteration Id.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "created": { + "format": "date-time", + "description": "Date this prediction was created.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "predictions": { + "description": "List of predictions.", + "type": "array", + "items": { + "$ref": "#/definitions/Prediction", + "x-nullable": false + }, + "readOnly": true + }, + "predictionUncertainty": { + "format": "double", + "description": "Uncertainty (entropy) of suggested tags or regions per image.", + "type": "number", + "readOnly": true, + "x-nullable": false + } + } + }, + "SuggestedTagAndRegionQuery": { + "description": "The array of result images and token containing session and continuation Ids for the next query.", + "type": "object", + "properties": { + "token": { + "$ref": "#/definitions/SuggestedTagAndRegionQueryToken", + "description": "Contains properties we need to fetch suggested tags for.", + "readOnly": false + }, + "results": { + "description": "Result of a suggested tags and regions request of the untagged image.", + "type": "array", + "items": { + "$ref": "#/definitions/StoredSuggestedTagAndRegion", + "x-nullable": false + }, + "readOnly": true + } + } + }, + "SuggestedTagAndRegionQueryToken": { + "description": "Contains properties we need to fetch suggested tags for. For the first call, Session and continuation set to null.\r\nThen on subsequent calls, uses the session/continuation from the previous SuggestedTagAndRegionQuery result to fetch additional results.", + "type": "object", + "properties": { + "tagIds": { + "description": "Existing TagIds in project to filter suggested tags on.", + "type": "array", + "items": { + "format": "uuid", + "type": "string", + "x-nullable": false + }, + "readOnly": false + }, + "threshold": { + "format": "double", + "description": "Confidence threshold to filter suggested tags on.", + "type": "number", + "readOnly": false, + "x-nullable": false + }, + "session": { + "description": "SessionId for database query. Initially set to null but later used to paginate.", + "type": "string", + "readOnly": false, + "x-nullable": false + }, + "continuation": { + "description": "Continuation Id for database pagination. Initially null but later used to paginate.", + "type": "string", + "readOnly": false, + "x-nullable": false + }, + "maxCount": { + "format": "int32", + "description": "Maximum number of results you want to be returned in the response.", + "type": "integer", + "readOnly": false, + "x-nullable": false + }, + "sortBy": { + "description": "OrderBy. Ordering mechanism for your results.", + "enum": [ + "UncertaintyAscending", + "UncertaintyDescending" + ], + "type": "string", + "readOnly": false, + "x-nullable": false, + "x-ms-enum": { + "name": "SortBy", + "modelAsString": true + } + } + } + }, + "Tag": { + "description": "Represents a Tag.", + "required": [ + "name", + "description", + "type" + ], + "type": "object", + "properties": { + "id": { + "format": "uuid", + "description": "Gets the Tag ID.", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "name": { + "description": "Gets or sets the name of the tag.", + "type": "string", + "readOnly": false, + "x-nullable": false + }, + "description": { + "description": "Gets or sets the description of the tag.", + "type": "string", + "readOnly": false, + "x-nullable": true + }, + "type": { + "description": "Gets or sets the type of the tag.", + "enum": [ + "Regular", + "Negative" + ], + "type": "string", + "readOnly": false, + "x-nullable": false, + "x-ms-enum": { + "name": "TagType", + "modelAsString": true + } + }, + "imageCount": { + "format": "int32", + "description": "Gets the number of images with this tag.", + "type": "integer", + "readOnly": true, + "x-nullable": false + } + } + }, + "TagFilter": { + "description": "Model that query for counting of images whose suggested tags match given tags and their probability are greater than or equal to the given threshold.", + "type": "object", + "properties": { + "tagIds": { + "description": "Existing TagIds in project to get suggested tags count for.", + "type": "array", + "items": { + "format": "uuid", + "type": "string", + "x-nullable": false + }, + "readOnly": false + }, + "threshold": { + "format": "double", + "description": "Confidence threshold to filter suggested tags on.", + "type": "number", + "readOnly": false, + "x-nullable": false + } + } + }, + "TagPerformance": { + "description": "Represents performance data for a particular tag in a trained iteration.", + "type": "object", + "properties": { + "id": { + "format": "uuid", + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "name": { + "type": "string", + "readOnly": true, + "x-nullable": false + }, + "precision": { + "format": "float", + "description": "Gets the precision.", + "type": "number", + "readOnly": true, + "x-nullable": false + }, + "precisionStdDeviation": { + "format": "float", + "description": "Gets the standard deviation for the precision.", + "type": "number", + "readOnly": true, + "x-nullable": false + }, + "recall": { + "format": "float", + "description": "Gets the recall.", + "type": "number", + "readOnly": true, + "x-nullable": false + }, + "recallStdDeviation": { + "format": "float", + "description": "Gets the standard deviation for the recall.", + "type": "number", + "readOnly": true, + "x-nullable": false + }, + "averagePrecision": { + "format": "float", + "description": "Gets the average precision when applicable.", + "type": "number", + "readOnly": true, + "x-nullable": true + } + } + }, + "TrainingParameters": { + "description": "Parameters used for training.", + "type": "object", + "properties": { + "selectedTags": { + "description": "List of tags selected for this training session, other tags in the project will be ignored.", + "type": "array", + "items": { + "format": "uuid", + "type": "string", + "x-nullable": false + }, + "readOnly": false + } + } + } + }, + "parameters": { + "Endpoint": { + "name": "Endpoint", + "in": "path", + "description": "Supported Cognitive Services endpoints.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client", + "x-ms-skip-url-encoding": true + } + }, + "securityDefinitions": { + "apim_key": { + "type": "apiKey", + "name": "Training-Key", + "in": "header" + } + }, + "security": [ + { + "apim_key": [] + } + ], + "x-ms-parameterized-host": { + "hostTemplate": "{Endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/Endpoint" + } + ] + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/CreateImageRegions.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/CreateImageRegions.json new file mode 100644 index 000000000000..290b0cacd11a --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/CreateImageRegions.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "bc3f7dad-5544-468c-8573-3ef04d55463e", + "batch": { + "regions": [ + { + "imageId": "4d6eb844-42ee-42bc-bd6f-c32455ef07c9", + "tagId": "b607964f-7bd6-4a3b-a869-6791fb6aab87", + "left": 0.25, + "top": 0.25, + "width": 0.25, + "height": 0.25 + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "created": [], + "duplicated": [], + "exceeded": [] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/CreateImageTags.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/CreateImageTags.json new file mode 100644 index 000000000000..5b7395424693 --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/CreateImageTags.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "bc3f7dad-5544-468c-8573-3ef04d55463e", + "batch": { + "tags": [ + { + "imageId": "e31a14ab-5d78-4f7b-a267-3a1e4fd8a758", + "tagId": "349d72ac-0948-4d51-b1e4-c14a1f9b848a" + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "created": [ + { + "imageId": "e31a14ab-5d78-4f7b-a267-3a1e4fd8a758", + "tagId": "349d72ac-0948-4d51-b1e4-c14a1f9b848a" + } + ], + "duplicated": null, + "exceeded": null + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/CreateImagesFromData.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/CreateImagesFromData.json new file mode 100644 index 000000000000..bab109da7c54 --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/CreateImagesFromData.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "64b822c5-8082-4b36-a426-27225f4aa18c", + "tagIds": [ + "b607964f-7bd6-4a3b-a869-6791fb6aab87" + ], + "imageData": "multipart data" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "isBatchSuccessful": true, + "images": [ + { + "sourceUrl": "\"hemlock_10.jpg\"", + "status": "OK", + "image": { + "id": "4d6eb844-42ee-42bc-bd6f-c32455ef07c9", + "created": "2017-12-19T15:56:10Z", + "width": 1095, + "height": 900, + "resizedImageUri": "{Resized Image Uri}", + "originalImageUri": "{Image Uri}", + "thumbnailUri": "{Thumbnail Uri}", + "tags": [ + { + "tagId": "b607964f-7bd6-4a3b-a869-6791fb6aab87", + "created": "2017-12-19T15:56:09Z", + "tagName": "tag 1" + } + ] + } + }, + { + "sourceUrl": "\"hemlock_6.jpg\"", + "status": "OK", + "image": { + "id": "f1855a92-b873-47e7-b513-f07a667ceda1", + "created": "2017-12-19T15:56:10Z", + "width": 900, + "height": 1531, + "resizedImageUri": "{Resized Image Uri}", + "originalImageUri": "{Image Uri}", + "thumbnailUri": "{Thumbnail Uri}", + "tags": [ + { + "tagId": "b607964f-7bd6-4a3b-a869-6791fb6aab87", + "created": "2017-12-19T15:56:09Z", + "tagName": "tag 1" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/CreateImagesFromFiles.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/CreateImagesFromFiles.json new file mode 100644 index 000000000000..03ab3626201f --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/CreateImagesFromFiles.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "64b822c5-8082-4b36-a426-27225f4aa18c", + "tagIds": "b607964f-7bd6-4a3b-a869-6791fb6aab87", + "batch": { + "images": [ + { + "name": "hemlock_10.jpg", + "contents": "{image contents}" + } + ], + "tagIds": [ + "b607964f-7bd6-4a3b-a869-6791fb6aab87" + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "isBatchSuccessful": true, + "images": [ + { + "sourceUrl": "\"hemlock_10.jpg\"", + "status": "OK", + "image": { + "id": "4d6eb844-42ee-42bc-bd6f-c32455ef07c9", + "created": "2017-12-19T15:56:10Z", + "width": 1095, + "height": 900, + "resizedImageUri": "{Resized Image Uri}", + "originalImageUri": "{Image Uri}", + "thumbnailUri": "{Thumbnail Uri}", + "tags": [ + { + "tagId": "b607964f-7bd6-4a3b-a869-6791fb6aab87", + "created": "2017-12-19T15:56:09Z", + "tagName": "tag 1" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/CreateImagesFromPredictions.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/CreateImagesFromPredictions.json new file mode 100644 index 000000000000..741545bde645 --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/CreateImagesFromPredictions.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "64b822c5-8082-4b36-a426-27225f4aa18c", + "tagIds": "b607964f-7bd6-4a3b-a869-6791fb6aab87", + "batch": { + "images": [ + { + "id": "4d6eb844-42ee-42bc-bd6f-c32455ef07c9" + } + ], + "tagIds": [ + "b607964f-7bd6-4a3b-a869-6791fb6aab87" + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "isBatchSuccessful": true, + "images": [ + { + "sourceUrl": "\"hemlock_10.jpg\"", + "status": "OK", + "image": { + "id": "4d6eb844-42ee-42bc-bd6f-c32455ef07c9", + "created": "2017-12-19T15:56:10Z", + "width": 1095, + "height": 900, + "resizedImageUri": "{Resized Image Uri}", + "originalImageUri": "{Image Uri}", + "thumbnailUri": "{Thumbnail Uri}", + "tags": [ + { + "tagId": "b607964f-7bd6-4a3b-a869-6791fb6aab87", + "created": "2017-12-19T15:56:09Z", + "tagName": "tag 1" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/CreateImagesFromUrls.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/CreateImagesFromUrls.json new file mode 100644 index 000000000000..f781b387b4ba --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/CreateImagesFromUrls.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "64b822c5-8082-4b36-a426-27225f4aa18c", + "tagIds": "b607964f-7bd6-4a3b-a869-6791fb6aab87", + "batch": { + "images": [ + { + "url": "{url to image}" + } + ], + "tagIds": [ + "b607964f-7bd6-4a3b-a869-6791fb6aab87" + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "isBatchSuccessful": true, + "images": [ + { + "sourceUrl": "{url to image}", + "status": "OK", + "image": { + "id": "4d6eb844-42ee-42bc-bd6f-c32455ef07c9", + "created": "2017-12-19T15:56:10Z", + "width": 1095, + "height": 900, + "resizedImageUri": "{Resized Image Uri}", + "originalImageUri": "{Image Uri}", + "thumbnailUri": "{Thumbnail Uri}", + "tags": [ + { + "tagId": "b607964f-7bd6-4a3b-a869-6791fb6aab87", + "created": "2017-12-19T15:56:09Z", + "tagName": "tag name" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/CreateProject.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/CreateProject.json new file mode 100644 index 000000000000..88f852ced738 --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/CreateProject.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "name": "My New Project", + "description": "A test project", + "domainId": "ee85a74c-405e-4adc-bb47-ffa8ca0c9f31" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "bc3f7dad-5544-468c-8573-3ef04d55463e", + "name": "My New Project", + "description": "A test project", + "settings": { + "domainId": "ee85a74c-405e-4adc-bb47-ffa8ca0c9f31" + }, + "created": "2017-12-18T05:43:18Z", + "lastModified": "2017-12-18T05:43:18Z", + "thumbnailUri": "" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/CreateTag.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/CreateTag.json new file mode 100644 index 000000000000..ed19817462ae --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/CreateTag.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "bc3f7dad-5544-468c-8573-3ef04d55463e", + "name": "Tag1", + "description": "Description of Tag1", + "body": "" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "9e27bc1b-7ae7-4e3b-a4e5-36153479dc01", + "name": "Tag1", + "description": "Description of Tag1", + "type": "Regular", + "imageCount": 0 + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/DeleteImageRegions.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/DeleteImageRegions.json new file mode 100644 index 000000000000..8931d4e2629e --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/DeleteImageRegions.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "bc3f7dad-5544-468c-8573-3ef04d55463e", + "regionIds": [ + "" + ] + }, + "responses": { + "204": {} + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/DeleteImageTags.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/DeleteImageTags.json new file mode 100644 index 000000000000..d6a188454e9b --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/DeleteImageTags.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "64b822c5-8082-4b36-a426-27225f4aa18c", + "imageIds": [ + "e31a14ab-5d78-4f7b-a267-3a1e4fd8a758", + "cf0f83fb-ebaa-4b25-8e34-613a6a0b8a12" + ], + "tagIds": [ + "e31a14ab-5d78-4f7b-a267-3a1e4fd8a758", + "cf0f83fb-ebaa-4b25-8e34-613a6a0b8a12" + ] + }, + "responses": { + "204": {} + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/DeleteImages.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/DeleteImages.json new file mode 100644 index 000000000000..ccc479209fd2 --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/DeleteImages.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "64b822c5-8082-4b36-a426-27225f4aa18c", + "imageIds": [ + "e31a14ab-5d78-4f7b-a267-3a1e4fd8a758", + "cf0f83fb-ebaa-4b25-8e34-613a6a0b8a12" + ] + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/DeleteIteration.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/DeleteIteration.json new file mode 100644 index 000000000000..d1f9b7629958 --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/DeleteIteration.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "64b822c5-8082-4b36-a426-27225f4aa18c", + "iterationId": "e31a14ab-5d78-4f7b-a267-3a1e4fd8a758" + }, + "responses": { + "204": {} + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/DeletePrediction.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/DeletePrediction.json new file mode 100644 index 000000000000..c6b2d5c0bc58 --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/DeletePrediction.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "64b822c5-8082-4b36-a426-27225f4aa18c", + "ids": [ + "e31a14ab-5d78-4f7b-a267-3a1e4fd8a758", + "cf0f83fb-ebaa-4b25-8e34-613a6a0b8a12" + ] + }, + "responses": { + "204": {} + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/DeleteProject.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/DeleteProject.json new file mode 100644 index 000000000000..2b4cb5723a6a --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/DeleteProject.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "bc3f7dad-5544-468c-8573-3ef04d55463e" + }, + "responses": { + "204": {} + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/DeleteTag.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/DeleteTag.json new file mode 100644 index 000000000000..e9f802505a09 --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/DeleteTag.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "bc3f7dad-5544-468c-8573-3ef04d55463e", + "tagId": "9e27bc1b-7ae7-4e3b-a4e5-36153479dc01" + }, + "responses": { + "204": {} + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/ExportIteration.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/ExportIteration.json new file mode 100644 index 000000000000..1bbfa05a5d86 --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/ExportIteration.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "64b822c5-8082-4b36-a426-27225f4aa18c", + "iterationId": "e31a14ab-5d78-4f7b-a267-3a1e4fd8a758", + "platform": "TensorFlow" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "platform": "TensorFlow", + "status": "Exporting", + "downloadUri": "", + "newerVersionAvailable": false + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/ExportProject.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/ExportProject.json new file mode 100644 index 000000000000..8d59acb577d1 --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/ExportProject.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "bc3f7dad-5544-468c-8573-3ef04d55463e" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "token": "" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetDomain.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetDomain.json new file mode 100644 index 000000000000..c6702b3a8f29 --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetDomain.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "domainId": "b30a91ae-e3c1-4f73-a81e-c270bff27c39" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "b30a91ae-e3c1-4f73-a81e-c270bff27c39", + "name": "Retail", + "type": "Classification", + "exportable": false, + "enabled": true + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetDomains.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetDomains.json new file mode 100644 index 000000000000..a10887726fcb --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetDomains.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "id": "ee85a74c-405e-4adc-bb47-ffa8ca0c9f31", + "name": "General", + "type": "Classification", + "exportable": false, + "enabled": true + }, + { + "id": "c151d5b5-dd07-472a-acc8-15d29dea8518", + "name": "Food", + "type": "Classification", + "exportable": false, + "enabled": true + }, + { + "id": "ca455789-012d-4b50-9fec-5bb63841c793", + "name": "Landmarks", + "type": "Classification", + "exportable": false, + "enabled": true + }, + { + "id": "b30a91ae-e3c1-4f73-a81e-c270bff27c39", + "name": "Retail", + "type": "Classification", + "exportable": false, + "enabled": true + }, + { + "id": "45badf75-3591-4f26-a705-45678d3e9f5f", + "name": "Adult", + "type": "Classification", + "exportable": false, + "enabled": true + }, + { + "id": "0732100f-1a38-4e49-a514-c9b44c697ab5", + "name": "General (compact)", + "type": "Classification", + "exportable": false, + "enabled": true + }, + { + "id": "b5cfd229-2ac7-4b2b-8d0a-2b0661344894", + "name": "Landmarks (compact)", + "type": "Classification", + "exportable": false, + "enabled": true + }, + { + "id": "6b4faeda-8396-481b-9f8b-177b9fa3097f", + "name": "Retail (compact)", + "type": "Classification", + "exportable": false, + "enabled": true + } + ] + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetExports.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetExports.json new file mode 100644 index 000000000000..1267168dbb4c --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetExports.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "64b822c5-8082-4b36-a426-27225f4aa18c", + "iterationId": "e31a14ab-5d78-4f7b-a267-3a1e4fd8a758" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "platform": "TensorFlow", + "status": "Done", + "newerVersionAvailable": false, + "downloadUri": "{Download URI}" + } + ] + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetImagePerformanceCount.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetImagePerformanceCount.json new file mode 100644 index 000000000000..c57ffd50669b --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetImagePerformanceCount.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "bc3f7dad-5544-468c-8573-3ef04d55463e", + "iterationId": "cf0f83fb-ebaa-4b25-8e34-613a6a0b8a12", + "tagIds": [ + "b5f7e6a2-a481-49a6-afec-a7cef1af3544" + ] + }, + "responses": { + "200": { + "headers": {}, + "body": "1" + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetImagePerformances.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetImagePerformances.json new file mode 100644 index 000000000000..dfe6eb5a7208 --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetImagePerformances.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "bc3f7dad-5544-468c-8573-3ef04d55463e", + "iterationId": "b7b9d99c-a2c6-4658-9900-a98d2ff5bc66", + "tagIds": [ + "" + ], + "orderBy": "Newest" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "id": "dfd2d346-3ed5-4e1e-857d-af4e32cec042", + "created": "2018-01-31T20:18:26Z", + "predictions": [ + { + "tagId": "b5f7e6a2-a481-49a6-afec-a7cef1af3544", + "tagName": "Tag 1", + "probability": 1.0, + "boundingBox": { + "left": 0.25, + "top": 0.25, + "width": 0.25, + "height": 0.25 + } + } + ], + "width": 600, + "height": 1600, + "imageUri": "", + "thumbnailUri": "", + "tags": [], + "regions": [] + } + ] + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetImageRegionProposals.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetImageRegionProposals.json new file mode 100644 index 000000000000..7638215aae62 --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetImageRegionProposals.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "bc3f7dad-5544-468c-8573-3ef04d55463e", + "imageId": "4d6eb844-42ee-42bc-bd6f-c32455ef07c9" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "projectId": "bc3f7dad-5544-468c-8573-3ef04d55463e", + "imageId": "4d6eb844-42ee-42bc-bd6f-c32455ef07c9", + "proposals": [ + { + "confidence": 0.25, + "boundingBox": { + "left": 0.25, + "top": 0.25, + "width": 0.25, + "height": 0.25 + } + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetImagesByIds.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetImagesByIds.json new file mode 100644 index 000000000000..037118bc9d41 --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetImagesByIds.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "bc3f7dad-5544-468c-8573-3ef04d55463e", + "iterationId": "cf0f83fb-ebaa-4b25-8e34-613a6a0b8a12" + }, + "responses": { + "200": { + "headers": {}, + "body": [] + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetIteration.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetIteration.json new file mode 100644 index 000000000000..2383a6c6f910 --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetIteration.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "64b822c5-8082-4b36-a426-27225f4aa18c", + "iterationId": "e31a14ab-5d78-4f7b-a267-3a1e4fd8a758" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "e31a14ab-5d78-4f7b-a267-3a1e4fd8a758", + "name": "Iteration 2", + "status": "Completed", + "created": "2017-12-18T22:40:36Z", + "lastModified": "2017-12-19T15:47:02Z", + "trainedAt": "2017-12-19T15:47:02Z", + "projectId": "64b822c5-8082-4b36-a426-27225f4aa18c", + "exportable": false, + "domainId": "ee85a74c-405e-4adc-bb47-ffa8ca0c9f31", + "exportableTo": [ + "ONNX", + "DockerFile", + "TensorFlow", + "CoreML" + ], + "trainingType": "Regular", + "reservedBudgetInHours": 0, + "publishName": "" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetIterationPerformance.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetIterationPerformance.json new file mode 100644 index 000000000000..323173c03a51 --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetIterationPerformance.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "bc3f7dad-5544-468c-8573-3ef04d55463e", + "iterationId": "fe1e83c4-6f50-4899-9544-6bb08cf0e15a", + "threshold": 0.9 + }, + "responses": { + "200": { + "headers": {}, + "body": { + "perTagPerformance": [ + { + "id": "e31ff107-5505-4753-be42-b369b21b026c", + "name": "Hemlock", + "precision": 1.0, + "precisionStdDeviation": 0.0, + "recall": 1.0, + "recallStdDeviation": 0.0 + }, + { + "id": "349d72ac-0948-4d51-b1e4-c14a1f9b848a", + "name": "Japanese Cherry", + "precision": 1.0, + "precisionStdDeviation": 0.0, + "recall": 1.0, + "recallStdDeviation": 0.0 + } + ], + "precision": 1.0, + "precisionStdDeviation": 0.0, + "recall": 1.0, + "recallStdDeviation": 0.0 + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetIterations.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetIterations.json new file mode 100644 index 000000000000..ac0c78134a80 --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetIterations.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "64b822c5-8082-4b36-a426-27225f4aa18c" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "id": "fe1e83c4-6f50-4899-9544-6bb08cf0e15a", + "name": "Iteration 1", + "status": "Completed", + "created": "2017-12-18T22:40:29Z", + "lastModified": "2017-12-18T22:40:41Z", + "trainedAt": "2017-12-18T22:40:41Z", + "projectId": "64b822c5-8082-4b36-a426-27225f4aa18c", + "exportable": false, + "domainId": "ee85a74c-405e-4adc-bb47-ffa8ca0c9f31", + "exportableTo": [ + "ONNX", + "DockerFile", + "TensorFlow", + "CoreML" + ], + "trainingType": "Regular", + "reservedBudgetInHours": 0, + "publishName": "" + }, + { + "id": "e31a14ab-5d78-4f7b-a267-3a1e4fd8a758", + "name": "Iteration 2", + "status": "Completed", + "created": "2017-12-18T22:40:36Z", + "lastModified": "2017-12-19T15:47:02Z", + "trainedAt": "2017-12-19T15:47:02Z", + "projectId": "64b822c5-8082-4b36-a426-27225f4aa18c", + "exportable": false, + "domainId": "ee85a74c-405e-4adc-bb47-ffa8ca0c9f31", + "exportableTo": [ + "ONNX", + "DockerFile", + "TensorFlow", + "CoreML" + ], + "trainingType": "Regular", + "reservedBudgetInHours": 5, + "publishName": "model1" + }, + { + "id": "3adaf7b2-18fc-4376-9da4-b5ea160a7cf5", + "name": "Iteration 3", + "status": "New", + "created": "2017-12-19T15:46:59Z", + "lastModified": "2017-12-19T15:46:59Z", + "projectId": "64b822c5-8082-4b36-a426-27225f4aa18c", + "exportable": false, + "domainId": null, + "exportableTo": [ + "ONNX", + "DockerFile", + "TensorFlow", + "CoreML" + ], + "trainingType": "Regular", + "reservedBudgetInHours": 0, + "publishName": "" + } + ] + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetProject.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetProject.json new file mode 100644 index 000000000000..4b68bf1ea390 --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetProject.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "bc3f7dad-5544-468c-8573-3ef04d55463e" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "bc3f7dad-5544-468c-8573-3ef04d55463e", + "name": "My New Project", + "description": "A test project", + "settings": { + "domainId": "ee85a74c-405e-4adc-bb47-ffa8ca0c9f31" + }, + "created": "2017-12-18T05:43:18Z", + "lastModified": "2017-12-18T05:43:18Z", + "thumbnailUri": "" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetProjects.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetProjects.json new file mode 100644 index 000000000000..b5166555936f --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetProjects.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "id": "bc3f7dad-5544-468c-8573-3ef04d55463e", + "name": "My New Project", + "description": "", + "settings": { + "domainId": "ee85a74c-405e-4adc-bb47-ffa8ca0c9f31" + }, + "created": "2017-12-18T05:43:18Z", + "lastModified": "2017-12-18T05:43:18Z", + "thumbnailUri": "" + } + ] + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetTag.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetTag.json new file mode 100644 index 000000000000..4ad3135822ae --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetTag.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "bc3f7dad-5544-468c-8573-3ef04d55463e", + "tagId": "9e27bc1b-7ae7-4e3b-a4e5-36153479dc01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "9e27bc1b-7ae7-4e3b-a4e5-36153479dc01", + "name": "Tag1", + "description": "Description of Tag1", + "type": "Regular", + "imageCount": 0 + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetTaggedImageCount.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetTaggedImageCount.json new file mode 100644 index 000000000000..c0ed09aa6ae9 --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetTaggedImageCount.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "bc3f7dad-5544-468c-8573-3ef04d55463e", + "iterationId": "cf0f83fb-ebaa-4b25-8e34-613a6a0b8a12" + }, + "responses": { + "200": { + "headers": {}, + "body": "10" + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetTaggedImages.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetTaggedImages.json new file mode 100644 index 000000000000..037118bc9d41 --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetTaggedImages.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "bc3f7dad-5544-468c-8573-3ef04d55463e", + "iterationId": "cf0f83fb-ebaa-4b25-8e34-613a6a0b8a12" + }, + "responses": { + "200": { + "headers": {}, + "body": [] + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetTags.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetTags.json new file mode 100644 index 000000000000..6ad8ea76c689 --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetTags.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "bc3f7dad-5544-468c-8573-3ef04d55463e" + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "id": "9e27bc1b-7ae7-4e3b-a4e5-36153479dc01", + "name": "Tag1", + "description": "Description of Tag1", + "type": "Regular", + "imageCount": 0 + } + ] + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetUntaggedImageCount.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetUntaggedImageCount.json new file mode 100644 index 000000000000..c0ed09aa6ae9 --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetUntaggedImageCount.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "bc3f7dad-5544-468c-8573-3ef04d55463e", + "iterationId": "cf0f83fb-ebaa-4b25-8e34-613a6a0b8a12" + }, + "responses": { + "200": { + "headers": {}, + "body": "10" + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetUntaggedImages.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetUntaggedImages.json new file mode 100644 index 000000000000..037118bc9d41 --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/GetUntaggedImages.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "bc3f7dad-5544-468c-8573-3ef04d55463e", + "iterationId": "cf0f83fb-ebaa-4b25-8e34-613a6a0b8a12" + }, + "responses": { + "200": { + "headers": {}, + "body": [] + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/ImportProject.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/ImportProject.json new file mode 100644 index 000000000000..87702da27426 --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/ImportProject.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "token": "token" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "bc3f7dad-5544-468c-8573-3ef04d55463e", + "name": "Import Project", + "description": "", + "settings": { + "domainId": "ee85a74c-405e-4adc-bb47-ffa8ca0c9f31" + }, + "created": "2019-10-06T05:43:18Z", + "lastModified": "2019-10-06T05:43:18Z", + "thumbnailUri": "", + "status": "Importing" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/PublishIteration.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/PublishIteration.json new file mode 100644 index 000000000000..67d6ad03e29f --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/PublishIteration.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "64b822c5-8082-4b36-a426-27225f4aa18c", + "iterationId": "e31a14ab-5d78-4f7b-a267-3a1e4fd8a758", + "publishName": "Model1", + "predictionId": "/subscriptions/{subscription}/resourceGroups/{resource group name}/providers/Microsoft.CognitiveServices/accounts/{resource name}" + }, + "responses": { + "200": { + "headers": {}, + "body": true + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/QueryPredictions.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/QueryPredictions.json new file mode 100644 index 000000000000..0bd19d6b7980 --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/QueryPredictions.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "bc3f7dad-5544-468c-8573-3ef04d55463e", + "query": { + "orderBy": "Newest", + "tags": [ + { + "id": "b5f7e6a2-a481-49a6-afec-a7cef1af3544", + "maxThreshold": 1, + "minThreshold": 0.9 + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "results": [ + { + "id": "dfd2d346-3ed5-4e1e-857d-af4e32cec042", + "project": "8988643a-ae70-447d-9a22-15c4255e5ecb", + "iteration": "b7b9d99c-a2c6-4658-9900-a98d2ff5bc66", + "created": "2018-01-31T20:18:26Z", + "predictions": [ + { + "tagId": "b5f7e6a2-a481-49a6-afec-a7cef1af3544", + "tagName": "Tag 1", + "probability": 1.0 + }, + { + "tagId": "45619cda-d1c9-4bc8-a3e1-87c5d81adbc3", + "tagName": "Tag 2", + "probability": 3.60627153E-12 + } + ], + "originalImageUri": "", + "thumbnailUri": "", + "resizedImageUri": "", + "domain": "b30a91ae-e3c1-4f73-a81e-c270bff27c39" + } + ], + "token": { + "session": "1:286613", + "continuation": "", + "maxCount": 0, + "orderBy": "Newest", + "tags": [ + { + "id": "b5f7e6a2-a481-49a6-afec-a7cef1af3544", + "minThreshold": 0.9, + "maxThreshold": 1.0 + } + ], + "iterationId": null, + "startTime": null, + "endTime": null, + "application": "" + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/QuerySuggestedImageCount.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/QuerySuggestedImageCount.json new file mode 100644 index 000000000000..bfe12dad0540 --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/QuerySuggestedImageCount.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "bc3f7dad-5544-468c-8573-3ef04d55463e", + "iterationId": "b7b9d99c-a2c6-4658-9900-a98d2ff5bc66", + "query": { + "tagIds": [ + "b5f7e6a2-a481-49a6-afec-a7cef1af3544" + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "b5f7e6a2-a481-49a6-afec-a7cef1af3544": 1 + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/QuerySuggestedImages.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/QuerySuggestedImages.json new file mode 100644 index 000000000000..c42db2bc784f --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/QuerySuggestedImages.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "bc3f7dad-5544-468c-8573-3ef04d55463e", + "iterationId": "b7b9d99c-a2c6-4658-9900-a98d2ff5bc66", + "query": { + "tagIds": [ + "b5f7e6a2-a481-49a6-afec-a7cef1af3544" + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "results": [ + { + "id": "dfd2d346-3ed5-4e1e-857d-af4e32cec042", + "project": "8988643a-ae70-447d-9a22-15c4255e5ecb", + "iteration": "b7b9d99c-a2c6-4658-9900-a98d2ff5bc66", + "created": "2018-01-31T20:18:26Z", + "predictions": [ + { + "tagId": "b5f7e6a2-a481-49a6-afec-a7cef1af3544", + "tagName": "Tag 1", + "probability": 1.0 + }, + { + "tagId": "45619cda-d1c9-4bc8-a3e1-87c5d81adbc3", + "tagName": "Tag 2", + "probability": 3.60627153E-12 + } + ], + "originalImageUri": "", + "thumbnailUri": "", + "resizedImageUri": "", + "domain": "b30a91ae-e3c1-4f73-a81e-c270bff27c39" + } + ], + "token": { + "session": "1:286613", + "continuation": "", + "maxCount": 0, + "sortBy": "Newest", + "tagIds": [ + "b5f7e6a2-a481-49a6-afec-a7cef1af3544" + ] + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/QuickTestImage.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/QuickTestImage.json new file mode 100644 index 000000000000..489852dc79df --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/QuickTestImage.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "64b822c5-8082-4b36-a426-27225f4aa18c", + "iterationId": "fe1e83c4-6f50-4899-9544-6bb08cf0e15a", + "imageData": "multipart-form-data" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "951098b2-9b69-427b-bddb-d5cb618874e3", + "project": "64b822c5-8082-4b36-a426-27225f4aa18c", + "iteration": "fe1e83c4-6f50-4899-9544-6bb08cf0e15a", + "created": "2017-12-19T14:21:41Z", + "predictions": [ + { + "tagId": "e31ff107-5505-4753-be42-b369b21b026c", + "tagName": "Hemlock", + "probability": 0.05149666 + }, + { + "tagId": "349d72ac-0948-4d51-b1e4-c14a1f9b848a", + "tagName": "Japanese Cherry", + "probability": 0.00 + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/QuickTestImageUrl.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/QuickTestImageUrl.json new file mode 100644 index 000000000000..dc904ef6f116 --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/QuickTestImageUrl.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "64b822c5-8082-4b36-a426-27225f4aa18c", + "iterationId": "fe1e83c4-6f50-4899-9544-6bb08cf0e15a", + "imageUrl": { + "url": "{Image URL}" + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "951098b2-9b69-427b-bddb-d5cb618874e3", + "project": "64b822c5-8082-4b36-a426-27225f4aa18c", + "iteration": "fe1e83c4-6f50-4899-9544-6bb08cf0e15a", + "created": "2017-12-19T14:21:41Z", + "predictions": [ + { + "tagId": "e31ff107-5505-4753-be42-b369b21b026c", + "tagName": "Hemlock", + "probability": 0.05149666 + }, + { + "tagId": "349d72ac-0948-4d51-b1e4-c14a1f9b848a", + "tagName": "Japanese Cherry", + "probability": 0.00 + } + ] + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/SuggestTagsAndRegions.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/SuggestTagsAndRegions.json new file mode 100644 index 000000000000..175a0a2a01e0 --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/SuggestTagsAndRegions.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "bc3f7dad-5544-468c-8573-3ef04d55463e", + "iterationId": "4d6eb844-42ee-42bc-bd6f-c32455ef07c9", + "imageIds": [ + "e7f08c23-9e54-49f7-b609-69a0240ba306", + "ce632666-4b66-4adb-aa0a-ad8b7c32df06" + ] + }, + "responses": { + "200": { + "headers": {}, + "body": [ + { + "id": "8497e814-23cc-47d7-b24b-691cef0bcec9", + "project": "bc3f7dad-5544-468c-8573-3ef04d55463e", + "iteration": "ce271ee4-cc13-460f-b66f-993f8005522d", + "created": "2019-07-08T13:43:18Z", + "predictions": [ + { + "tagId": "b5f7e6a2-a481-49a6-afec-a7cef1af3544", + "tagName": "Tag 1", + "probability": 1.0 + }, + { + "tagId": "45619cda-d1c9-4bc8-a3e1-87c5d81adbc3", + "tagName": "Tag 2", + "probability": 3.60627153E-12 + } + ], + "predictionUncertainty": 0.32 + } + ] + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/TrainProject.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/TrainProject.json new file mode 100644 index 000000000000..dd3deca15afb --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/TrainProject.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "64b822c5-8082-4b36-a426-27225f4aa18c", + "trainingParameters": {} + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "e31a14ab-5d78-4f7b-a267-3a1e4fd8a758", + "name": "Iteration 2", + "status": "Training", + "created": "2017-12-18T22:40:36Z", + "lastModified": "2017-12-19T15:46:58Z", + "projectId": "64b822c5-8082-4b36-a426-27225f4aa18c", + "exportable": false, + "domainId": null, + "exportableTo": [ + "ONNX", + "DockerFile", + "TensorFlow", + "CoreML" + ], + "trainingType": "Regular", + "reservedBudgetInHours": 0, + "publishName": "" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/UnpublishIteration.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/UnpublishIteration.json new file mode 100644 index 000000000000..d1f9b7629958 --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/UnpublishIteration.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "64b822c5-8082-4b36-a426-27225f4aa18c", + "iterationId": "e31a14ab-5d78-4f7b-a267-3a1e4fd8a758" + }, + "responses": { + "204": {} + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/UpdateIteration.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/UpdateIteration.json new file mode 100644 index 000000000000..a965deb8aa0f --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/UpdateIteration.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "64b822c5-8082-4b36-a426-27225f4aa18c", + "iterationId": "e31a14ab-5d78-4f7b-a267-3a1e4fd8a758", + "updatedIteration": { + "name": "Best Iteration" + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "e31a14ab-5d78-4f7b-a267-3a1e4fd8a758", + "name": "Best Iteration", + "status": "Completed", + "created": "2017-12-18T22:40:36Z", + "lastModified": "2017-12-19T15:53:07Z", + "trainedAt": "2017-12-19T15:47:02Z", + "projectId": "64b822c5-8082-4b36-a426-27225f4aa18c", + "exportable": false, + "exportableTo": [ + "ONNX", + "DockerFile", + "TensorFlow", + "CoreML" + ], + "domainId": "ee85a74c-405e-4adc-bb47-ffa8ca0c9f31", + "trainingType": "Regular", + "reservedBudgetInHours": 0, + "publishName": "" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/UpdateProject.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/UpdateProject.json new file mode 100644 index 000000000000..e19735364b5e --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/UpdateProject.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "bc3f7dad-5544-468c-8573-3ef04d55463e", + "updatedProject": { + "name": "New Project Name", + "description": "A new Description", + "settings": { + "domainId": "ee85a74c-405e-4adc-bb47-ffa8ca0c9f31" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "bc3f7dad-5544-468c-8573-3ef04d55463e", + "name": "New Project Name", + "description": "A new Description", + "settings": { + "domainId": "ee85a74c-405e-4adc-bb47-ffa8ca0c9f31" + }, + "created": "2017-12-18T05:43:18Z", + "lastModified": "2017-12-18T05:43:19Z", + "thumbnailUri": "" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/UpdateTag.json b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/UpdateTag.json new file mode 100644 index 000000000000..51e0ee680aab --- /dev/null +++ b/specification/cognitiveservices/data-plane/CustomVision/Training/stable/v3.2/examples/UpdateTag.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "Endpoint": "https://westus.api.cognitive.microsoft.com", + "Content-Type": "application/json", + "Training-Key": "{API Key}", + "projectId": "bc3f7dad-5544-468c-8573-3ef04d55463e", + "tagId": "9e27bc1b-7ae7-4e3b-a4e5-36153479dc01", + "updatedTag": { + "name": "Better Tag Name", + "type": "Regular", + "description": "Better description" + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "9e27bc1b-7ae7-4e3b-a4e5-36153479dc01", + "name": "Better Tag Name", + "description": "Better description", + "type": "Regular", + "imageCount": 0 + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/FormRecognizer.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/FormRecognizer.json index 44eaef160894..a31432b94f34 100644 --- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/FormRecognizer.json +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/FormRecognizer.json @@ -38,6 +38,9 @@ "consumes": [ "application/json" ], + "produces": [ + "application/json" + ], "parameters": [ { "name": "trainRequest", @@ -74,52 +77,6 @@ "$ref": "./examples/TrainBatchWithSubFolders.json" } } - }, - "get": { - "summary": "List Custom Models", - "description": "Get information about all custom models", - "operationId": "GetCustomModels", - "consumes": [], - "produces": [ - "application/json" - ], - "parameters": [ - { - "name": "op", - "in": "query", - "description": "Specify whether to return summary or full list of models.", - "required": false, - "default": "full", - "type": "string", - "enum": [ - "full", - "summary" - ] - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/Models" - } - }, - "default": { - "description": "Response entity accompanying non-successful responses containing additional details about the error.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink", - "itemName": "modelList" - }, - "x-ms-examples": { - "List custom models": { - "$ref": "./examples/GetModels.json" - } - } } }, "/custom/models/{modelId}": { @@ -218,6 +175,9 @@ "image/png", "image/tiff" ], + "produces": [ + "application/json" + ], "parameters": [ { "name": "modelId", @@ -261,7 +221,8 @@ "Analyze form with custom model": { "$ref": "./examples/AnalyzeBatch.json" } - } + }, + "x-ms-long-running-operation": true } }, "/custom/models/{modelId}/analyzeResults/{resultId}": { @@ -362,7 +323,8 @@ "Analyze receipt": { "$ref": "./examples/ReceiptsBatch.json" } - } + }, + "x-ms-long-running-operation": true } }, "/prebuilt/receipt/analyzeResults/{resultId}": { @@ -446,7 +408,8 @@ "Analyze layout": { "$ref": "./examples/LayoutBatch.json" } - } + }, + "x-ms-long-running-operation": true } }, "/layout/analyzeResults/{resultId}": { @@ -490,6 +453,96 @@ } } }, + "x-ms-paths": { + "/custom/models?op=full": { + "get": { + "summary": "List Custom Models", + "description": "Get information about all custom models", + "operationId": "ListCustomModels", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "op", + "in": "query", + "description": "Specify whether to return summary or full list of models.", + "required": true, + "type": "string", + "enum": [ + "full" + ] + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Models" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "modelList" + }, + "x-ms-examples": { + "List custom models": { + "$ref": "./examples/GetModels.json" + } + } + } + }, + "/custom/models?op=summary": { + "get": { + "summary": "Get Custom Models", + "description": "Get information about all custom models", + "operationId": "GetCustomModels", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "op", + "in": "query", + "description": "Specify whether to return summary or full list of models.", + "required": true, + "type": "string", + "enum": [ + "summary" + ] + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Models" + } + }, + "default": { + "description": "Response entity accompanying non-successful responses containing additional details about the error.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get models summary": { + "$ref": "./examples/GetModelsSummary.json" + } + } + } + } + }, "definitions": { "OperationStatus": { "type": "string", @@ -626,10 +679,6 @@ } } }, - "SourceDataStream": { - "description": "A PDF document, image (jpg/png/tiff), or JSON file to analyze.", - "type": "object" - }, "ModelInfo": { "description": "Basic custom model information.", "type": "object", @@ -693,7 +742,7 @@ "x-nullable": false }, "limit": { - "description": "Max number of models that can be trained for this subscription.", + "description": "Max number of models that can be trained for this account.", "type": "integer", "x-nullable": false }, @@ -1218,6 +1267,7 @@ }, "DocumentResult": { "description": "A set of extracted fields corresponding to the input document.", + "type": "object", "required": [ "docType", "pageRange", @@ -1265,14 +1315,14 @@ }, "valueDate": { "description": "Date value.", + "format": "date", "type": "string", - "format": "date-time", "x-nullable": false }, "valueTime": { "description": "Time value.", + "format": "time", "type": "string", - "format": "date-time", "x-nullable": false }, "valuePhoneNumber": { @@ -1373,7 +1423,7 @@ "x-ms-parameter-location": "method", "in": "body", "schema": { - "$ref": "#/definitions/SourceDataStream" + "$ref": "#/definitions/SourcePath" } } } diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/GetModels.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/GetModels.json index 1ebb45e86268..9df92cccfdc4 100644 --- a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/GetModels.json +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/GetModels.json @@ -9,11 +9,6 @@ "responses": { "200": { "body": { - "summary": { - "count": 5, - "limit": 5000, - "lastUpdatedDateTime": "2019-05-01T10:53:21Z" - }, "modelList": [ { "modelId": "f973e3c1-1148-43bb-bea8-49d0603ab3a8", diff --git a/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/GetModelsSummary.json b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/GetModelsSummary.json new file mode 100644 index 000000000000..507495b78206 --- /dev/null +++ b/specification/cognitiveservices/data-plane/FormRecognizer/preview/v2.0/examples/GetModelsSummary.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "endpoint": "{endpoint}", + "Content-Type": "application/json", + "Ocp-Apim-Subscription-Key": "{API key}", + "op": "summary", + "body": {} + }, + "responses": { + "200": { + "body": { + "summary": { + "count": 5, + "limit": 5000, + "lastUpdatedDateTime": "2019-05-01T10:53:21Z" + } + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/LUIS-Authoring.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/LUIS-Authoring.json index 3e3f69a10681..a7335b87f6b5 100644 --- a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/LUIS-Authoring.json +++ b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/LUIS-Authoring.json @@ -7634,6 +7634,9 @@ { "$ref": "#/parameters/BearerAuthPath" }, + { + "$ref": "#/parameters/ArmTokenParamter" + }, { "name": "azureAccountInfoObject", "in": "body", @@ -7679,6 +7682,9 @@ }, { "$ref": "#/parameters/BearerAuthPath" + }, + { + "$ref": "#/parameters/ArmTokenParamter" } ], "responses": { @@ -7715,6 +7721,9 @@ { "$ref": "#/parameters/BearerAuthPath" }, + { + "$ref": "#/parameters/ArmTokenParamter" + }, { "name": "azureAccountInfoObject", "in": "body", @@ -7759,6 +7768,9 @@ "parameters": [ { "$ref": "#/parameters/BearerAuthPath" + }, + { + "$ref": "#/parameters/ArmTokenParamter" } ], "responses": { @@ -7862,6 +7874,256 @@ } } }, + "x-ms-paths": { + "/apps/import?JsonVersion=V2": { + "post": { + "description": "Imports an application to LUIS, the application's structure is included in the request body.", + "operationId": "Apps_ImportV2App", + "parameters": [ + { + "name": "appName", + "in": "query", + "description": "The application name to create. If not specified, the application name will be read from the imported object. If the application name already exists, an error is returned.", + "type": "string" + }, + { + "name": "luisAppV2", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LuisAppV2" + }, + "description": "A LUIS application structure." + } + ], + "consumes": [ + "application/json" + ], + "responses": { + "201": { + "description": "The ID of the imported application.", + "x-nullable": false, + "schema": { + "$ref": "#/definitions/GuidResponse" + } + }, + "default": { + "description": "Error Response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Successful Import Application": { + "$ref": "./examples/apps/SuccessfulImportV2ApplicationRequest.json" + } + } + } + }, + "/apps/import?format=lu": { + "post": { + "description": "Imports an application to LUIS, the application's structure is included in the request body.", + "operationId": "Apps_ImportLuFormat", + "parameters": [ + { + "name": "appName", + "in": "query", + "description": "The application name to create. If not specified, the application name will be read from the imported object. If the application name already exists, an error is returned.", + "type": "string" + }, + { + "name": "luisAppLu", + "in": "body", + "required": true, + "schema": { + "type": "string" + }, + "description": "A LUIS application structure." + } + ], + "consumes": [ + "text/plain" + ], + "responses": { + "201": { + "description": "The ID of the imported application.", + "x-nullable": false, + "schema": { + "$ref": "#/definitions/GuidResponse" + } + }, + "default": { + "description": "Error Response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Successful Import Application": { + "$ref": "./examples/apps/SuccessfulImportLuApplicationRequest.json" + } + } + } + }, + "/apps/{appId}/versions/import?JsonVersion=V2": { + "post": { + "description": "Imports a new version into a LUIS application.", + "operationId": "Versions_ImportV2App", + "parameters": [ + { + "$ref": "#/parameters/AppIdInPath" + }, + { + "name": "versionId", + "in": "query", + "description": "The new versionId to import. If not specified, the versionId will be read from the imported object.", + "type": "string" + }, + { + "name": "luisAppV2", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LuisAppV2" + }, + "description": "A LUIS application structure." + } + ], + "consumes": [ + "application/json" + ], + "responses": { + "201": { + "description": "The created application version.", + "schema": { + "$ref": "#/definitions/VersionResponse" + } + }, + "default": { + "description": "Error Response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Successful Import Application": { + "$ref": "./examples/versions/SuccessfulImportV2ApplicationVersionRequest.json" + } + } + } + }, + "/apps/{appId}/versions/import?format=lu": { + "post": { + "description": "Imports a new version into a LUIS application.", + "operationId": "Versions_ImportLuFormat", + "parameters": [ + { + "$ref": "#/parameters/AppIdInPath" + }, + { + "name": "versionId", + "in": "query", + "description": "The new versionId to import. If not specified, the versionId will be read from the imported object.", + "type": "string" + }, + { + "name": "luisAppLu", + "in": "body", + "required": true, + "schema": { + "type": "string" + }, + "description": "An LU representing the LUIS application structure." + } + ], + "consumes": [ + "text/plain" + ], + "responses": { + "201": { + "description": "The created application version.", + "schema": { + "$ref": "#/definitions/VersionResponse" + } + }, + "default": { + "description": "Error Response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Successful Import Application": { + "$ref": "./examples/versions/SuccessfulImportLuApplicationVersionRequest.json" + } + } + } + }, + "/apps/{appId}/versions/{versionId}/export?format=lu": { + "get": { + "description": "Exports a LUIS application to text format.", + "operationId": "Versions_ExportLuFormat", + "parameters": [ + { + "in": "query", + "name": "format", + "required": true, + "description": "Lu format extension", + "type": "string", + "enum": [ + "lu" + ] + }, + { + "$ref": "#/parameters/AppIdInPath" + }, + { + "$ref": "#/parameters/VersionIdInPath" + } + ], + "responses": { + "200": { + "description": "The LUIS application structure in LU format.", + "schema": { + "description": "The LUIS application structure in LU format.", + "type": "object", + "format": "file" + } + }, + "default": { + "description": "Error Response.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "produces": [ + "application/octet-stream" + ], + "x-ms-examples": { + "Successful Export Application Version": { + "$ref": "./examples/versions/SuccessfulExportLuApplicationVersionRequest.json" + } + } + } + } + }, "definitions": { "EntityLabelObject": { "description": "Defines the entity type and position of the extracted entity within the example.", @@ -8576,6 +8838,30 @@ } } }, + "HierarchicalModelV2": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "children": { + "items": { + "type": "string" + }, + "type": "array" + }, + "inherits": { + "type": "object", + "$ref": "#/definitions/PrebuiltDomainObject" + }, + "roles": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, "ApplicationPublishObject": { "description": "Object model for publishing a specific application version.", "type": "object", @@ -8591,6 +8877,121 @@ } } }, + "LuisAppV2": { + "description": "Exported Model - An exported LUIS Application.", + "additionalProperties": true, + "type": "object", + "properties": { + "luis_schema_version": { + "description": "Luis schema deserialization version.", + "type": "string" + }, + "name": { + "description": "The name of the application.", + "type": "string" + }, + "versionId": { + "description": "The version ID of the application that was exported.", + "type": "string" + }, + "desc": { + "description": "The description of the application.", + "type": "string" + }, + "culture": { + "description": "The culture of the application. E.g.: en-us.", + "type": "string" + }, + "intents": { + "description": "List of intents.", + "items": { + "type": "object", + "$ref": "#/definitions/HierarchicalModelV2" + }, + "type": "array" + }, + "entities": { + "description": "List of entities.", + "items": { + "type": "object", + "$ref": "#/definitions/HierarchicalModelV2" + }, + "type": "array" + }, + "closedLists": { + "description": "List of list entities.", + "items": { + "type": "object", + "$ref": "#/definitions/ClosedList" + }, + "type": "array" + }, + "composites": { + "description": "List of composite entities.", + "items": { + "type": "object", + "$ref": "#/definitions/HierarchicalModelV2" + }, + "type": "array" + }, + "patternAnyEntities": { + "description": "List of Pattern.Any entities.", + "items": { + "type": "object", + "$ref": "#/definitions/PatternAny" + }, + "type": "array" + }, + "regex_entities": { + "description": "List of regular expression entities.", + "items": { + "type": "object", + "$ref": "#/definitions/RegexEntity" + }, + "type": "array" + }, + "prebuiltEntities": { + "description": "List of prebuilt entities.", + "items": { + "type": "object", + "$ref": "#/definitions/PrebuiltEntity" + }, + "type": "array" + }, + "regex_features": { + "description": "List of pattern features.", + "items": { + "type": "object", + "$ref": "#/definitions/JSONRegexFeature" + }, + "type": "array" + }, + "model_features": { + "description": "List of model features.", + "items": { + "type": "object", + "$ref": "#/definitions/JSONModelFeature" + }, + "type": "array" + }, + "patterns": { + "description": "List of patterns.", + "items": { + "type": "object", + "$ref": "#/definitions/PatternRule" + }, + "type": "array" + }, + "utterances": { + "description": "List of example utterances.", + "items": { + "type": "object", + "$ref": "#/definitions/JSONUtterance" + }, + "type": "array" + } + } + }, "LuisApp": { "description": "Exported Model - An exported LUIS Application.", "additionalProperties": true, @@ -10430,6 +10831,14 @@ "type": "string", "x-ms-parameter-location": "method" }, + "ArmTokenParamter": { + "in": "header", + "name": "ArmToken", + "required": false, + "description": "The custom arm token header to use; containing the user's ARM token used to validate azure accounts information.", + "type": "string", + "x-ms-parameter-location": "method" + }, "Endpoint": { "name": "Endpoint", "description": "Supported Cognitive Services endpoints (protocol and hostname, for example: https://westus.api.cognitive.microsoft.com).", diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/apps/SuccessfulImportLuApplicationRequest.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/apps/SuccessfulImportLuApplicationRequest.json new file mode 100644 index 000000000000..c04e10f1321a --- /dev/null +++ b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/apps/SuccessfulImportLuApplicationRequest.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "00000000000000000000000000000000", + "appName": "Test LUIS App", + "luisAppLu": "> LUIS application information\r\n> !# @app.name = Json 600 App\r\n> !# @app.desc = Json 600 App\r\n> !# @app.versionId = 0.1\r\n> !# @app.culture = en-us\r\n> !# @app.luis_schema_version = 6.0.0\r\n\r\n\r\n> # Intent definitions\r\n\r\n> !# @intent.inherits = name : Calendar.AcceptEventEntry; domain_name : Calendar; model_name : AcceptEventEntry\r\n\r\n## Calendar.AcceptEventEntry\r\n- save the date may 17 {@Calendar.Subject=pictures party}\r\n- schedule {@Calendar.Subject=appointment} for tomorrow please\r\n- {@Calendar.Subject=Meeting My Manager}\r\n- The meeting will last for one hour\r\n- Add an event to visit 209 Nashville Gym\r\n- Add {@Calendar.Subject=imax theater} to my upcoming events\r\n- dunmore pa sonic sounds Friday morning please\r\n- Add a new task {@Calendar.Subject=finish assignment}\r\n- Add a new event on 27 - Apr\r\n- calendar i ' ll be at the garage from 8 till 3 this saturday\r\n- Add an event to {@Calendar.Subject=read about adam lambert news}\r\n\r\n\r\n> !# @intent.inherits = name : Communication.AddContact; domain_name : Communication; model_name : AddContact\r\n\r\n## Communication.AddContact\r\n\r\n\r\n@ intent Communication.AddContact usesFeatures simpleentity1,phraselist1\r\n\r\n> !# @intent.inherits = name : Communication.AddMore; domain_name : Communication; model_name : AddMore\r\n\r\n## Communication.AddMore\r\n\r\n\r\n> !# @intent.inherits = name : Communication.Confirm; domain_name : Communication; model_name : Confirm\r\n\r\n## Communication.Confirm\r\n\r\n\r\n## intent1\r\n\r\n\r\n## None\r\n- a\r\n- hi {@simpleentity1=guys}\r\n- Please just delete {@Calendar.Subject=my meeting}\r\n- Extend {@Calendar.Subject=lunch meeting} 30 minutes extra\r\n- {@Calendar.Subject=Marketing meetings} on Tuesdays will now be every Wednesday please change on my calendar\r\n- {@Calendar.Subject=Appointment with Johnson} needs to be next week\r\n- Search for {@Calendar.Subject=meetings with Chris}\r\n- I want to reschedule the {@Calendar.Subject=meeting at the air force club}\r\n- Move the {@Calendar.Subject=BBQ party} to Friday\r\n- Am i free to {@Calendar.Subject=be with friends} saturday ?\r\n- Delete {@Calendar.Subject=Helen Fred ' s birthday}\r\n- {@Calendar.Subject=Call dad Mike}\r\n- {@Calendar.Subject=The workshop} will last for 10 hours\r\n- {@Calendar.Subject=email cloney John}\r\n- Change {@Calendar.Subject=the meeting with Chris} to 9 : 00 am\r\n\r\n\r\n> # Entity definitions\r\n\r\n> !# @entity.inherits = name : Calendar.Subject; domain_name : Calendar; model_name : Subject\r\n\r\n@ ml Calendar.Subject usesFeatures simpleentity1\r\n\r\n@ ml simpleentity1\r\n\r\n@ ml a1 hasRole role_a1\r\n - @ datetimeV2 b1\r\n - @ ml c1\r\n - @ ml d1 usesFeatures phraselist1\r\n - @ datetimeV2 e1 usesFeatures phraselist1\r\n\r\n\r\n\r\n> # PREBUILT Entity definitions\r\n\r\n@ prebuilt age\r\n\r\n@ prebuilt datetimeV2\r\n\r\n\r\n> # Phrase list definitions\r\n\r\n@ phraselist phraselist1(interchangeable) = \r\n\t- why,where,when,what,how,who\r\n\r\n\r\n> # List entities\r\n\r\n@ list closedlist = \r\n\t- a :\r\n\t\t- b\r\n\t\t- c\r\n\t\t- d\r\n\r\n\r\n> # RegEx entities\r\n\r\n\r\n> # Composite entities\r\n\r\n@ composite compositeentity1 usesFeatures simpleentity1,Calendar.Subject = [simpleentity1, datetimeV2]\r\n" + }, + "responses": { + "201": { + "headers": { + "Location": "https://westus.api.cognitive.microsoft.com/luis/api/v2.0/apps/374fac89-ae12-4afd-8c21-8a6424ce1c1f" + }, + "body": "374fac89-ae12-4afd-8c21-8a6424ce1c1f" + } + } +} diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/apps/SuccessfulImportV2ApplicationRequest.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/apps/SuccessfulImportV2ApplicationRequest.json new file mode 100644 index 000000000000..a5f419f2dc4a --- /dev/null +++ b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/apps/SuccessfulImportV2ApplicationRequest.json @@ -0,0 +1,307 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "00000000000000000000000000000000", + "appName": "Test LUIS App", + "luisAppV2": { + "luis_schema_version": "3.0.0", + "versionId": "0.1", + "name": "LuisBot", + "desc": "", + "culture": "en-us", + "intents": [ + { + "name": "HomeAutomation.TurnOff", + "inherits": { + "domain_name": "HomeAutomation", + "model_name": "TurnOff" + } + }, + { + "name": "dateintent" + }, + { + "name": "Help" + }, + { + "name": "None" + }, + { + "name": "SearchHotels" + }, + { + "name": "ShowHotelsReviews" + } + ], + "entities": [ + { + "name": "AirportCode", + "roles": [ + "destination" + ] + }, + { + "name": "Hotel", + "roles": [] + } + ], + "composites": [], + "closedLists": [], + "patternAnyEntities": [ + { + "name": "patternAny1", + "explicitList": [], + "roles": [ + "role1", + "role2" + ] + } + ], + "regex_entities": [ + { + "name": "regex1", + "regexPattern": "[^a]+", + "roles": [ + "regex role" + ] + } + ], + "prebuiltEntities": [ + { + "name": "datetimeV2", + "roles": [ + "datetime role" + ] + } + ], + "model_features": [ + { + "name": "Near", + "mode": true, + "words": "near,around,close,nearby", + "activated": true + }, + { + "name": "Show", + "mode": true, + "words": "show,find,look,search", + "activated": true + } + ], + "regex_features": [ + { + "name": "AirportCodeRegex", + "pattern": "[a-z]{3}", + "activated": true + } + ], + "patterns": [ + { + "pattern": "this is [a test] {patternAny1:role1}", + "intent": "Help" + } + ], + "utterances": [ + { + "text": "i need help", + "intent": "Help", + "entities": [] + }, + { + "text": "help me", + "intent": "Help", + "entities": [] + }, + { + "text": "tomorrow", + "intent": "dateintent", + "entities": [] + }, + { + "text": "search for hotels in seattle", + "intent": "SearchHotels", + "entities": [] + }, + { + "text": "what can i do?", + "intent": "Help", + "entities": [] + }, + { + "text": "next monday", + "intent": "dateintent", + "entities": [] + }, + { + "text": "next year", + "intent": "dateintent", + "entities": [] + }, + { + "text": "look for hotels in miami", + "intent": "SearchHotels", + "entities": [] + }, + { + "text": "show me hotels in california", + "intent": "SearchHotels", + "entities": [] + }, + { + "text": "show me the reviews of the amazing bot resort", + "intent": "ShowHotelsReviews", + "entities": [ + { + "entity": "Hotel", + "startPos": 23, + "endPos": 44 + } + ] + }, + { + "text": "can i see the reviews of extended bot hotel?", + "intent": "ShowHotelsReviews", + "entities": [ + { + "entity": "Hotel", + "startPos": 25, + "endPos": 42 + } + ] + }, + { + "text": "find reviews of hotelxya", + "intent": "ShowHotelsReviews", + "entities": [ + { + "entity": "Hotel", + "startPos": 16, + "endPos": 23 + } + ] + }, + { + "text": "show me reviews of the amazing hotel", + "intent": "ShowHotelsReviews", + "entities": [ + { + "entity": "Hotel", + "startPos": 19, + "endPos": 35 + } + ] + }, + { + "text": "what are the available options?", + "intent": "Help", + "entities": [] + }, + { + "text": "best hotels in seattle", + "intent": "SearchHotels", + "entities": [] + }, + { + "text": "hotels in los angeles", + "intent": "SearchHotels", + "entities": [] + }, + { + "text": "can you show me hotels from los angeles?", + "intent": "SearchHotels", + "entities": [] + }, + { + "text": "can you show me the reviews of the amazing resort & hotel", + "intent": "ShowHotelsReviews", + "entities": [ + { + "entity": "Hotel", + "startPos": 31, + "endPos": 56 + } + ] + }, + { + "text": "what are the reviews of the hotel bot framework?", + "intent": "ShowHotelsReviews", + "entities": [ + { + "entity": "Hotel", + "startPos": 24, + "endPos": 46 + } + ] + }, + { + "text": "find hotels near eze", + "intent": "SearchHotels", + "entities": [ + { + "entity": "AirportCode", + "startPos": 17, + "endPos": 19 + } + ] + }, + { + "text": "where can i stay near nnn?", + "intent": "SearchHotels", + "entities": [ + { + "entity": "AirportCode", + "startPos": 22, + "endPos": 24 + } + ] + }, + { + "text": "show hotels near att airport", + "intent": "SearchHotels", + "entities": [ + { + "entity": "AirportCode", + "startPos": 17, + "endPos": 19 + } + ] + }, + { + "text": "find hotels near agl", + "intent": "SearchHotels", + "entities": [ + { + "entity": "AirportCode", + "startPos": 17, + "endPos": 19 + } + ] + }, + { + "text": "find hotels around eze airport", + "intent": "SearchHotels", + "entities": [ + { + "entity": "AirportCode", + "startPos": 19, + "endPos": 21 + } + ] + }, + { + "text": "01/7", + "intent": "dateintent", + "entities": [] + } + ] + } + }, + "responses": { + "201": { + "headers": { + "Location": "https://westus.api.cognitive.microsoft.com/luis/api/v2.0/apps/374fac89-ae12-4afd-8c21-8a6424ce1c1f" + }, + "body": "374fac89-ae12-4afd-8c21-8a6424ce1c1f" + } + } +} diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/versions/SuccessfulExportLuApplicationVersionRequest.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/versions/SuccessfulExportLuApplicationVersionRequest.json new file mode 100644 index 000000000000..dd8f887ccf3e --- /dev/null +++ b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/versions/SuccessfulExportLuApplicationVersionRequest.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "00000000000000000000000000000000", + "appId": "bd72e8d7-62b8-48f5-9dcb-e3b0588b803a", + "versionId": "0.2", + "format": "lu" + }, + "responses": { + "200": { + "headers": { + "Content-Type": "application/octet-stream" + }, + "body": "> LUIS application information\\n> !# @app.name = App\\n> !# @app.versionId = 0.2\\n> !# @app.culture = en-us\\n> !# @app.luis_schema_version = 6.0.0\\n\\n\\n> # Intent definitions\\n\\n## intent1\\n\\n\\n@ intent intent1 usesFeature phraselist1\\n\\n## None\\n- a\\n- hi {@simpleentity1=guys}\\n\\n\\n@ intent None usesFeature phraselist1\\n\\n> # Entity definitions\\n\\n@ ml simpleentity1 usesFeature phraselist1\\n\\n\\n> # PREBUILT Entity definitions\\n\\n@ prebuilt datetimeV2\\n\\n\\n> # Phrase list definitions\\n\\n@ phraselist phraselist1(interchangeable) = \\n\t- why,where,when,what,how,who\\n\\n\\n> # List entities\\n\\n@ list closedlist = \\n\t- a :\\n\t\t- b\\n\t\t- c\\n\t\t- d\\n\\n\\n> # RegEx entities\"" + } + } +} diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/versions/SuccessfulImportLuApplicationVersionRequest.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/versions/SuccessfulImportLuApplicationVersionRequest.json new file mode 100644 index 000000000000..16d34eae46ad --- /dev/null +++ b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/versions/SuccessfulImportLuApplicationVersionRequest.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "00000000000000000000000000000000", + "appId": "bd72e8d7-62b8-48f5-9dcb-e3b0588b803a", + "versionId": "0.2", + "luisAppLu": "> LUIS application information\r\n> !# @app.name = Json 600 App\r\n> !# @app.desc = Json 600 App\r\n> !# @app.versionId = 0.1\r\n> !# @app.culture = en-us\r\n> !# @app.luis_schema_version = 6.0.0\r\n\r\n\r\n> # Intent definitions\r\n\r\n> !# @intent.inherits = name : Calendar.AcceptEventEntry; domain_name : Calendar; model_name : AcceptEventEntry\r\n\r\n## Calendar.AcceptEventEntry\r\n- save the date may 17 {@Calendar.Subject=pictures party}\r\n- schedule {@Calendar.Subject=appointment} for tomorrow please\r\n- {@Calendar.Subject=Meeting My Manager}\r\n- The meeting will last for one hour\r\n- Add an event to visit 209 Nashville Gym\r\n- Add {@Calendar.Subject=imax theater} to my upcoming events\r\n- dunmore pa sonic sounds Friday morning please\r\n- Add a new task {@Calendar.Subject=finish assignment}\r\n- Add a new event on 27 - Apr\r\n- calendar i ' ll be at the garage from 8 till 3 this saturday\r\n- Add an event to {@Calendar.Subject=read about adam lambert news}\r\n\r\n\r\n> !# @intent.inherits = name : Communication.AddContact; domain_name : Communication; model_name : AddContact\r\n\r\n## Communication.AddContact\r\n\r\n\r\n@ intent Communication.AddContact usesFeatures simpleentity1,phraselist1\r\n\r\n> !# @intent.inherits = name : Communication.AddMore; domain_name : Communication; model_name : AddMore\r\n\r\n## Communication.AddMore\r\n\r\n\r\n> !# @intent.inherits = name : Communication.Confirm; domain_name : Communication; model_name : Confirm\r\n\r\n## Communication.Confirm\r\n\r\n\r\n## intent1\r\n\r\n\r\n## None\r\n- a\r\n- hi {@simpleentity1=guys}\r\n- Please just delete {@Calendar.Subject=my meeting}\r\n- Extend {@Calendar.Subject=lunch meeting} 30 minutes extra\r\n- {@Calendar.Subject=Marketing meetings} on Tuesdays will now be every Wednesday please change on my calendar\r\n- {@Calendar.Subject=Appointment with Johnson} needs to be next week\r\n- Search for {@Calendar.Subject=meetings with Chris}\r\n- I want to reschedule the {@Calendar.Subject=meeting at the air force club}\r\n- Move the {@Calendar.Subject=BBQ party} to Friday\r\n- Am i free to {@Calendar.Subject=be with friends} saturday ?\r\n- Delete {@Calendar.Subject=Helen Fred ' s birthday}\r\n- {@Calendar.Subject=Call dad Mike}\r\n- {@Calendar.Subject=The workshop} will last for 10 hours\r\n- {@Calendar.Subject=email cloney John}\r\n- Change {@Calendar.Subject=the meeting with Chris} to 9 : 00 am\r\n\r\n\r\n> # Entity definitions\r\n\r\n> !# @entity.inherits = name : Calendar.Subject; domain_name : Calendar; model_name : Subject\r\n\r\n@ ml Calendar.Subject usesFeatures simpleentity1\r\n\r\n@ ml simpleentity1\r\n\r\n@ ml a1 hasRole role_a1\r\n - @ datetimeV2 b1\r\n - @ ml c1\r\n - @ ml d1 usesFeatures phraselist1\r\n - @ datetimeV2 e1 usesFeatures phraselist1\r\n\r\n\r\n\r\n> # PREBUILT Entity definitions\r\n\r\n@ prebuilt age\r\n\r\n@ prebuilt datetimeV2\r\n\r\n\r\n> # Phrase list definitions\r\n\r\n@ phraselist phraselist1(interchangeable) = \r\n\t- why,where,when,what,how,who\r\n\r\n\r\n> # List entities\r\n\r\n@ list closedlist = \r\n\t- a :\r\n\t\t- b\r\n\t\t- c\r\n\t\t- d\r\n\r\n\r\n> # RegEx entities\r\n\r\n\r\n> # Composite entities\r\n\r\n@ composite compositeentity1 usesFeatures simpleentity1,Calendar.Subject = [simpleentity1, datetimeV2]\r\n" + }, + "responses": { + "201": { + "headers": { + "Location": "https://westus.api.cognitive.microsoft.com/luis/api/v2.0/bd72e8d7-62b8-48f5-9dcb-e3b0588b803a/versions/0.2" + }, + "body": "0.2" + } + } +} diff --git a/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/versions/SuccessfulImportV2ApplicationVersionRequest.json b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/versions/SuccessfulImportV2ApplicationVersionRequest.json new file mode 100644 index 000000000000..432c95236290 --- /dev/null +++ b/specification/cognitiveservices/data-plane/LUIS/Authoring/preview/v3.0/examples/versions/SuccessfulImportV2ApplicationVersionRequest.json @@ -0,0 +1,308 @@ +{ + "parameters": { + "Endpoint": "{Endpoint}", + "Ocp-Apim-Subscription-Key": "00000000000000000000000000000000", + "appId": "bd72e8d7-62b8-48f5-9dcb-e3b0588b803a", + "versionId": "0.2", + "luisAppV2": { + "luis_schema_version": "3.0.0", + "versionId": "0.1", + "name": "LuisBot", + "desc": "", + "culture": "en-us", + "intents": [ + { + "name": "HomeAutomation.TurnOff", + "inherits": { + "domain_name": "HomeAutomation", + "model_name": "TurnOff" + } + }, + { + "name": "dateintent" + }, + { + "name": "Help" + }, + { + "name": "None" + }, + { + "name": "SearchHotels" + }, + { + "name": "ShowHotelsReviews" + } + ], + "entities": [ + { + "name": "AirportCode", + "roles": [ + "destination" + ] + }, + { + "name": "Hotel", + "roles": [] + } + ], + "composites": [], + "closedLists": [], + "patternAnyEntities": [ + { + "name": "patternAny1", + "explicitList": [], + "roles": [ + "role1", + "role2" + ] + } + ], + "regex_entities": [ + { + "name": "regex1", + "regexPattern": "[^a]+", + "roles": [ + "regex role" + ] + } + ], + "prebuiltEntities": [ + { + "name": "datetimeV2", + "roles": [ + "datetime role" + ] + } + ], + "model_features": [ + { + "name": "Near", + "mode": true, + "words": "near,around,close,nearby", + "activated": true + }, + { + "name": "Show", + "mode": true, + "words": "show,find,look,search", + "activated": true + } + ], + "regex_features": [ + { + "name": "AirportCodeRegex", + "pattern": "[a-z]{3}", + "activated": true + } + ], + "patterns": [ + { + "pattern": "this is [a test] {patternAny1:role1}", + "intent": "Help" + } + ], + "utterances": [ + { + "text": "i need help", + "intent": "Help", + "entities": [] + }, + { + "text": "help me", + "intent": "Help", + "entities": [] + }, + { + "text": "tomorrow", + "intent": "dateintent", + "entities": [] + }, + { + "text": "search for hotels in seattle", + "intent": "SearchHotels", + "entities": [] + }, + { + "text": "what can i do?", + "intent": "Help", + "entities": [] + }, + { + "text": "next monday", + "intent": "dateintent", + "entities": [] + }, + { + "text": "next year", + "intent": "dateintent", + "entities": [] + }, + { + "text": "look for hotels in miami", + "intent": "SearchHotels", + "entities": [] + }, + { + "text": "show me hotels in california", + "intent": "SearchHotels", + "entities": [] + }, + { + "text": "show me the reviews of the amazing bot resort", + "intent": "ShowHotelsReviews", + "entities": [ + { + "entity": "Hotel", + "startPos": 23, + "endPos": 44 + } + ] + }, + { + "text": "can i see the reviews of extended bot hotel?", + "intent": "ShowHotelsReviews", + "entities": [ + { + "entity": "Hotel", + "startPos": 25, + "endPos": 42 + } + ] + }, + { + "text": "find reviews of hotelxya", + "intent": "ShowHotelsReviews", + "entities": [ + { + "entity": "Hotel", + "startPos": 16, + "endPos": 23 + } + ] + }, + { + "text": "show me reviews of the amazing hotel", + "intent": "ShowHotelsReviews", + "entities": [ + { + "entity": "Hotel", + "startPos": 19, + "endPos": 35 + } + ] + }, + { + "text": "what are the available options?", + "intent": "Help", + "entities": [] + }, + { + "text": "best hotels in seattle", + "intent": "SearchHotels", + "entities": [] + }, + { + "text": "hotels in los angeles", + "intent": "SearchHotels", + "entities": [] + }, + { + "text": "can you show me hotels from los angeles?", + "intent": "SearchHotels", + "entities": [] + }, + { + "text": "can you show me the reviews of the amazing resort & hotel", + "intent": "ShowHotelsReviews", + "entities": [ + { + "entity": "Hotel", + "startPos": 31, + "endPos": 56 + } + ] + }, + { + "text": "what are the reviews of the hotel bot framework?", + "intent": "ShowHotelsReviews", + "entities": [ + { + "entity": "Hotel", + "startPos": 24, + "endPos": 46 + } + ] + }, + { + "text": "find hotels near eze", + "intent": "SearchHotels", + "entities": [ + { + "entity": "AirportCode", + "startPos": 17, + "endPos": 19 + } + ] + }, + { + "text": "where can i stay near nnn?", + "intent": "SearchHotels", + "entities": [ + { + "entity": "AirportCode", + "startPos": 22, + "endPos": 24 + } + ] + }, + { + "text": "show hotels near att airport", + "intent": "SearchHotels", + "entities": [ + { + "entity": "AirportCode", + "startPos": 17, + "endPos": 19 + } + ] + }, + { + "text": "find hotels near agl", + "intent": "SearchHotels", + "entities": [ + { + "entity": "AirportCode", + "startPos": 17, + "endPos": 19 + } + ] + }, + { + "text": "find hotels around eze airport", + "intent": "SearchHotels", + "entities": [ + { + "entity": "AirportCode", + "startPos": 19, + "endPos": 21 + } + ] + }, + { + "text": "01/7", + "intent": "dateintent", + "entities": [] + } + ] + } + }, + "responses": { + "201": { + "headers": { + "Location": "https://westus.api.cognitive.microsoft.com/luis/api/v2.0/bd72e8d7-62b8-48f5-9dcb-e3b0588b803a/versions/0.2" + }, + "body": "0.2" + } + } +} diff --git a/specification/cognitiveservices/data-plane/QnAMaker/readme.python.md b/specification/cognitiveservices/data-plane/QnAMaker/readme.python.md index 494125d82c26..28c107b25da3 100644 --- a/specification/cognitiveservices/data-plane/QnAMaker/readme.python.md +++ b/specification/cognitiveservices/data-plane/QnAMaker/readme.python.md @@ -4,23 +4,19 @@ 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) -python-mode: create -python: - license-header: MICROSOFT_MIT_NO_VERSION - add-credentials: true - payload-flattening-threshold: 2 - namespace: azure.cognitiveservices.knowledge.qnamaker - package-name: azure-cognitiveservices-knowledge-qnamaker - clear-output-folder: true +``` yaml +license-header: MICROSOFT_MIT_NO_VERSION +add-credentials: true +payload-flattening-threshold: 2 +package-name: azure-cognitiveservices-knowledge-qnamaker +no-namespace-folders: true +clear-output-folder: true ``` -``` yaml $(python) && $(python-mode) == 'update' -python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/cognitiveservices/azure-cognitiveservices-knowledge-qnamaker/azure/cognitiveservices/knowledge/qnamaker +``` yaml $(tag) == 'release_4_0' +namespace: azure.cognitiveservices.knowledge.qnamaker.authoring +output-folder: $(python-sdks-folder)/cognitiveservices/azure-cognitiveservices-knowledge-qnamaker/azure/cognitiveservices/knowledge/qnamaker/authoring ``` -``` yaml $(python) && $(python-mode) == 'create' -python: - basic-setup-py: true - output-folder: $(python-sdks-folder)/cognitiveservices/azure-cognitiveservices-knowledge-qnamaker +``` yaml $(tag) == 'runtime_release_4_0' +namespace: azure.cognitiveservices.knowledge.qnamaker.runtime +output-folder: $(python-sdks-folder)/cognitiveservices/azure-cognitiveservices-knowledge-qnamaker/azure/cognitiveservices/knowledge/qnamaker/runtime ``` diff --git a/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/QnAMaker.json b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/QnAMaker.json index 928efa6d8bd0..4e2a55047833 100644 --- a/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/QnAMaker.json +++ b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/QnAMaker.json @@ -894,7 +894,7 @@ "type": "boolean", "description": "Enable hierarchical extraction of Q-A from files and urls. Value to be considered False if this field is not present." }, - "defaultAnswerUsedForExtraction":{ + "defaultAnswerUsedForExtraction": { "type": "string", "description": "Text string to be used as the answer in any Q-A which has no extracted answer from the document but has a hierarchy. Required when EnableHierarchicalExtraction field is set to True.", "maxLength": 300, diff --git a/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulDownloadKb.json b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulDownloadKb.json index 041e089e05a1..0413615b20ca 100644 --- a/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulDownloadKb.json +++ b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulDownloadKb.json @@ -18,354 +18,72 @@ "questions": [ "How can I change the default message from QnA Maker?" ], - "metadata": [] + "metadata": [], + "context": { + "isContextOnly": false, + "prompts": [] + } }, { "id": 2, - "answer": "You can use our REST apis to manage your KB. See here for details: https://westus.dev.cognitive.microsoft.com/docs/services/58994a073d9e04097c7ba6fe/operations/58994a073d9e041ad42d9baa", + "answer": "You can use our REST apis to create a KB. See here for details: https://docs.microsoft.com/en-us/rest/api/cognitiveservices/qnamaker/knowledgebase/create", "source": "Custom Editorial", "questions": [ - "How do I programmatically update my KB?" + "How do I programmatically create a KB?" ], "metadata": [ { "name": "category", "value": "api" } - ] - }, - { - "id": 3, - "answer": "QnA Maker provides an FAQ data source that you can query from your bot or application. Although developers will find this useful, content owners will especially benefit from this tool. QnA Maker is a completely no-code way of managing the content that powers your bot or application.", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "Who is the target audience for the QnA Maker tool?" - ], - "metadata": [] - }, - { - "id": 4, - "answer": "

You can sign in with your Microsoft account

", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "How do I sign in to the QnA Maker portal?" - ], - "metadata": [] - }, - { - "id": 5, - "answer": "

Yes, currently the QnA Maker tool is free to use. However, usage is metered for each account. For more information, see Authentication and subscription keys

", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "Is the QnA Maker Service free?" - ], - "metadata": [] - }, - { - "id": 6, - "answer": "It’s possible that the tool can't auto-extract some question-and-answer (QnA) content from valid FAQ URLs. In such cases, you can paste the QnA content in a .txt file and see if the tool can ingest it. Alternately, you can editorially add content to your knowledge base.", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "My URLs have valid FAQ content, but the tool cannot extract them. Why not?" - ], - "metadata": [] - }, - { - "id": 7, - "answer": "

The tool supports the following file formats for ingestion:

  • .tsv: QnA contained in the format Question(tab)Answer.
  • .txt, .docx, .pdf: QnA contained as regular FAQ content--that is, a sequence of questions and answers.
", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "What format does the tool expect for the file content?" - ], - "metadata": [] - }, - { - "id": 8, - "answer": "

No, you don’t. However, QnA Maker is offered as one of several templates in Azure Bot Service. Bot Service enables rapid intelligent bot development through Microsoft Bot Framework, and it runs in a serverless environment.

Bots scale based on demand. You pay for only the resources that you consume.

", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "Do I need to use Bot Framework in order to use QnA Maker?" - ], - "metadata": [] - }, - { - "id": 9, - "answer": "

QnAMaker provides a REST endpoint that you can call from any bot code. However, if you'd like a quick way to set up a QnAMaker bot, you can use the Azure Bot Service. Follow the instructions here and choose the \"Question and Answer\" bot template. Once the bot is created, you will need to do the following steps to complete setup.

  1. In Azure portal, open the newly created Web App Bot resource.
  2. Click on \"Application Settings\" and in the App Settings list, add QnASubscriptionKey and QnAKnowledgebaseId. The corresponding values can be obtained from the KB Settings page in http://qnamaker.ai.
  3. The QnAMaker-enabled Azure bot service app is now ready to use. To try it out click on \"Test in Web Chat\" to chat with your QnA bot.
", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "How can I create a bot with QnAMaker?" - ], - "metadata": [] - }, - { - "id": 10, - "answer": "

Follow these steps to embed the QnA Maker service as a web-chat control in your website:

  1. Create your knowledge base from the QnA Maker webpage.
  2. Create your bot as shown in Create a bot with the Azure Bot Service.
  3. Look for the Question and Answer bot template.
  4. Enable the bot on the Web Chat channel. Get the embed keys.
  5. Embed the web chat as shown in Connect a bot to Web Chat.
", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "How do I embed the QnA Maker service in my website?" - ], - "metadata": [] - }, - { - "id": 11, - "answer": "Currently, the QnA Maker tool handles semi-structured FAQ content and certain types of product manuals. Eventually, the vision is to be able to answer questions from unstructured content as well.", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "What is the roadmap of QnA Maker?" ], - "metadata": [] + "context": { + "isContextOnly": false, + "prompts": [ + { + "displayOrder": 1, + "qnaId": 3, + "displayText": "Update KB" + } + ] + } }, { - "id": 12, - "answer": "Currently, the limit is a 20-MB knowledge base.", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "How large a knowledge base can I create?" - ], - "metadata": [] - }, - { - "id": 13, - "answer": "Every edit operation, whether in a table update, test, or settings, needs to be saved before it can be published. Be sure to select the Save and retrain button after every edit operation.", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "The updates that I made to my knowledge base are not reflected on publish. Why not?" - ], - "metadata": [] - }, - { - "id": 14, - "answer": "The upload feature expects the file to be formatted as tab-separated columns of question, answer, and source.", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "Why can’t I replace my knowledge base with the upload feature?" - ], - "metadata": [] - }, - { - "id": 15, - "answer": "You should refresh your subscription keys if you suspect that they have been compromised. Any requests with your subscription key will count toward your quota.", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "When should I refresh my subscription keys?" - ], - "metadata": [] - }, - { - "id": 16, - "answer": "The QnA Maker tool stores all knowledge base content in Azure Storage. You need a combination of knowledge base ID and subscription key to access the knowledge base. The tool doesn't use knowledge base content for any other purpose.", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "How safe is the data in my knowledge base?" - ], - "metadata": [] - }, - { - "id": 17, - "answer": "

The knowledge base supports Markdown. However, the auto-extraction from URLs has limited HTML-to-Markdown conversion capability. If you want to use full-fledged Markdown, you can modify your content directly in the table, or upload a knowledge base with the rich content.

Multimedia, such as images and videos, is not supported at this time.

", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "Does the knowledge base support rich data or multimedia?" - ], - "metadata": [] - }, - { - "id": 18, - "answer": "

The QnA Maker tool ingests and matches data in UTF-16 encoding. Any language should work as is. But, we have extensively tested the relevance of the service for English only.

If you have content from multiple languages, be sure to create a separate service for each language.

", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "Does QnA Maker support non-English languages?" - ], - "metadata": [] - }, - { - "id": 19, - "answer": "The chat logs are tab-separated files, with the query and the frequency as the columns. Frequency is the number of times that the same query was seen. The file is sorted in descending order of frequency. Select questions from the downloaded file that you want to test, and then upload it to see what responses the system returned for them.", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "What is the format of the downloaded chat logs?" - ], - "metadata": [] - }, - { - "id": 20, - "answer": "

The new service doesn't include the test URL. The reason is that all calls are metered, as part of Cognitive Services. Because the test URL exposed the subscription key and the knowledge base ID, it was a security risk.

However, it's still easy to share your knowledge base and use it in chats. Check out the Azure Bot Service template for the Question and Answer bot. You can create the Question and Answer bot in Skype in a few clicks, and then share it with anyone.

", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "Where is the test web-chat URL from the old portal? How do I share my knowledge base with others now?" - ], - "metadata": [] - }, - { - "id": 21, - "answer": "

Current transaction limits are 10 calls per minute and 10,000 calls per month. If you require higher limits, a free premium tier is available with limits of 1,000 calls per minute and 500,000 calls per month. To sign up for this option, fill in the request form. Note that these tiers are subject to change when the tool goes to general availability.

", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "How can I increase the transaction limits?" - ], - "metadata": [] - }, - { - "id": 22, - "answer": "

If QnA Maker doesn't match any of the questions, it shows a default \"Sorry, no match found\" message. You can change this default message in the code-behind by using the QnAMakerDialog object. For more information, see Create a bot using the Question and Answer template.

", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "How can I change the default message when no good match is found?" - ], - "metadata": [] - }, - { - "id": 23, - "answer": "The tool parses only public URLs and does not support authenticated data sources at this time. Alternately, you can download the file and use the file-upload option to extract questions and answers.", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "Why is my SharePoint link not getting extracted?" - ], - "metadata": [] - }, - { - "id": 24, - "answer": "

There is no direct integration of LUIS with QnA Maker. But, in your bot code, you can use LUIS and QnA Maker together. View a sample bot

", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "How can I integrate LUIS with QnA Maker?" - ], - "metadata": [] - }, - { - "id": 25, - "answer": "QnAMaker is currently in free Preview and does not have support SLAs. If you want to report an issue or provide feedback, you do so on UserVoice through the \"Feedback\" button in the top navigation bar.", - "source": "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", - "questions": [ - "How can I report issues or contact support for QnAMaker?" - ], - "metadata": [] - }, - { - "id": 26, - "answer": "

While the Conversation User Interface (CUI) is upon us, at this point few developers have the expertise and tools needed to create new conversational experiences or enable existing applications and services with a conversational interface their users can enjoy. We have created the Bot Framework to make it easier for developers to build and connect great bots to users, wherever they converse, including on Microsoft's premier channels.

Channels

", - "source": "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq", - "questions": [ - "Why did Microsoft develop the Bot Framework?" - ], - "metadata": [] - }, - { - "id": 27, - "answer": "

We plan on making continuous improvements to the Bot Framework, including additional channels, but cannot provide a schedule at this time.If you would like a specific channel added to the framework, let us know.

", - "source": "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq", - "questions": [ - "When will you add more conversation experiences to the Bot Framework?" - ], - "metadata": [] - }, - { - "id": 28, - "answer": "

We have not provided a general mechanism for developers to add new channels to Bot Framework, but you can connect your bot to your app via the Direct Line API. If you are a developer of a communication channel and would like to work with us to enable your channel in the Bot Framework we’d love to hear from you.

", - "source": "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq", - "questions": [ - "I have a communication channel I’d like to be configurable with Bot Framework. Can I work with Microsoft to do that?" - ], - "metadata": [] - }, - { - "id": 29, - "answer": "

The Bot Framework is designed to build, connect, and deploy high quality, responsive, performant and scalable bots for Skype and many other channels. The SDK can be used to create text/sms, image, button and card-capable bots (which constitute the majority of bot interactions today across conversation experiences) as well as bot interactions which are Skype-specific such as rich audio and video experiences.

If you already have a great bot and would like to reach the Skype audience, your bot can easily be connected to Skype (or any supported channel) via the Bot Builder for REST API (provided it has an internet-accessible REST endpoint).

Security and Privacy

", - "source": "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq", - "questions": [ - "If I want to create a bot for Skype, what tools and services should I use?" - ], - "metadata": [] - }, - { - "id": 30, - "answer": "

Each bot is its own service, and developers of these services are required to provide Terms of Service and Privacy Statements per their Developer Code of Conduct. You can access this information from the bot’s card in the Bot Directory.

to provide the I/O service, the Bot Framework transmits your message and message content (including your ID), from the chat service you used to the bot.

", - "source": "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq", - "questions": [ - "Do the bots registered with the Bot Framework collect personal information? If yes, how can I be sure the data is safe and secure? What about privacy?" - ], - "metadata": [] - }, - { - "id": 31, - "answer": "Users have a way to report a misbehaving bot via the bot’s contact card in the directory. Developers must abide by Microsoft terms of service to participate in the service.", - "source": "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq", - "questions": [ - "How do you ban or remove bots from the service?" - ], - "metadata": [] - }, - { - "id": 32, - "answer": "

You'll need to whitelist the following URLs in your corporate firewall:

  • login.botframework.com (Bot authentication)
  • login.microsoftonline.com (Bot authentication)
  • westus.api.cognitive.microsoft.com (for Luis.ai NLP integration)
  • state.botframework.com (Bot state storage for prototyping)
  • cortanabfchanneleastus.azurewebsites.net (Cortana channel)
  • cortanabfchannelwestus.azurewebsites.net (Cortana Channel)
  • *.botFramework.com (channels)

Rate limiting

", - "source": "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq", - "questions": [ - "Which specific URLs do I need to whitelist in my corporate firewall to access bot services?" - ], - "metadata": [] - }, - { - "id": 33, - "answer": "The Bot Framework service must protect itself and its customers against abusive call patterns (e.g., denial of service attack), so that no single bot can adversely affect the performance of other bots. To achieve this kind of protection, we’ve added rate limits (also known as throttling) to all endpoints. By enforcing a rate limit, we can restrict the frequency with which a bot can make a specific call. For example: with rate limiting enabled, if a bot wanted to post a large number of activities, it would have to space them out over a time period. Please note that the purpose of rate-limiting is not to cap the total volume for a bot. It is designed to prevent abuse of the conversational infrastructure that does not follow human conversation patterns.", - "source": "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq", - "questions": [ - "What is rate limiting?" - ], - "metadata": [] - }, - { - "id": 34, - "answer": "It is unlikely you’ll experience rate limiting, even at high volume. Most rate limiting would only occur due to bulk sending of activities (from a bot or from a client), extreme load testing, or a bug. When a request is throttled, an HTTP 429 (Too Many Requests) response is returned along with a Retry-After header indicating the amount of time (in seconds) to wait before retrying the request would succeed. You can collect this information by enabling analytics for your bot via Azure Application Insights. Or, you can add code in your bot to log messages. ", - "source": "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq", - "questions": [ - "How will I know if I’m impacted?" - ], - "metadata": [] - }, - { - "id": 35, - "answer": "

It can happen if:

  • a bot sends messages too frequently
  • a client of a bot sends messages too frequently
  • Direct Line clients request a new Web Socket too frequently
", - "source": "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq", - "questions": [ - "How does rate limiting occur?" - ], - "metadata": [] - }, - { - "id": 36, - "answer": "

We’re continuously tuning the rate limits to make them as lenient as possible while at the same time protecting our service and our users. Because thresholds will occasionally change, we aren’t publishing the numbers at this time. If you are impacted by rate limiting, feel free to reach out to us at bf-reports@microsoft.com.

Related Services

", - "source": "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq", - "questions": [ - "What are the rate limits?" - ], - "metadata": [] - }, - { - "id": 37, - "answer": "

Both the Bot Framework and Cognitive Services are new capabilities introduced at Microsoft Build 2016 that will also be integrated into Cortana Intelligence Suite at GA. Both these services are built from years of research and use in popular Microsoft products. These capabilities combined with ‘Cortana Intelligence’ enable every organization to take advantage of the power of data, the cloud and intelligence to build their own intelligent systems that unlock new opportunities, increase their speed of business and lead the industries in which they serve their customers.

", - "source": "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq", + "id": 3, + "answer": "You can use our REST apis to update your KB. See here for details: https://docs.microsoft.com/en-us/rest/api/cognitiveservices/qnamaker/knowledgebase/update", + "source": "Editorial", "questions": [ - "How does the Bot Framework relate to Cognitive Services?" + "How do I programmatically update my KB?" ], - "metadata": [] - }, - { - "id": 38, - "answer": "

Cortana Intelligence is a fully managed Big Data, Advanced Analytics and Intelligence suite that transforms your data into intelligent action.It is a comprehensive suite that brings together technologies founded upon years of research and innovation throughout Microsoft (spanning advanced analytics, machine learning, big data storage and processing in the cloud) and:

  • Allows you to collect, manage and store all your data that can seamlessly and cost effectively grow over time in a scalable and secure way.
  • Provides easy and actionable analytics powered by the cloud that allow you to predict, prescribe and automate decision making for the most demanding problems.
  • Enables intelligent systems through cognitive services and agents that allow you to see, hear, interpret and understand the world around you in more contextual and natural ways.

With Cortana Intelligence, we hope to help our enterprise customers unlock new opportunities, increase their speed of business and be leaders in their industries.

", - "source": "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq", - "questions": [ - "What is Cortana Intelligence?" + "metadata": [ + { + "name": "category", + "value": "api" + } ], - "metadata": [] + "context": { + "isContextOnly": false, + "prompts": [ + { + "displayOrder": 1, + "qnaId": 4, + "displayText": "Refresh Endpoint Keys" + } + ] + } }, { - "id": 39, - "answer": "

Direct Line is a REST API that allows you to add your bot into your service, mobile app, or webpage.

You can write a client for the Direct Line API in any language. Simply code to the Direct Line protocol, generate a secret in the Direct Line configuration page, and talk to your bot from wherever your code lives.

Direct Line is suitable for:

  • Mobile apps on iOS, Android, and Windows Phone, and others
  • Desktop applications on Windows, OSX, and more
  • Webpages where you need more customization than the embeddable Web Chat channel offers
  • Service-to-service applications
", - "source": "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq", + "id": 4, + "answer": "You can use our REST apis to refresh endpoint keys. See here for details: https://docs.microsoft.com/en-us/rest/api/cognitiveservices/qnamaker/endpointkeys/refreshkeys", + "source": "Editorial", "questions": [ - "What is the Direct Line channel?" + "How do I programmatically refresh endpoint keys?" ], - "metadata": [] + "metadata": [], + "context": { + "isContextOnly": false, + "prompts": [] + } } ] } diff --git a/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulRepKb.json b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulRepKb.json index de606593fa4f..074f4541e639 100644 --- a/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulRepKb.json +++ b/specification/cognitiveservices/data-plane/QnAMaker/stable/v4.0/examples/SuccessfulRepKb.json @@ -5,20 +5,75 @@ "Ocp-Apim-Subscription-Key": "{API key}", "kbId": "9d091697-fb8c-4ed5-9ac0-35bf8273bfff", "replaceKb": { - "qnAList": [ + "qnaList": [ { "id": 0, - "answer": "string", - "source": "string", + "answer": "You can change the default message if you use the QnAMakerDialog. See this for details: https://docs.botframework.com/en-us/azure-bot-service/templates/qnamaker/#navtitle", + "source": "Custom Editorial", "questions": [ - "string" + "How can I change the default message from QnA Maker?" + ], + "metadata": [] + }, + { + "id": 0, + "answer": "You can use our REST apis to create a KB. See here for details: https://docs.microsoft.com/en-us/rest/api/cognitiveservices/qnamaker/knowledgebase/create", + "source": "Custom Editorial", + "questions": [ + "How do I programmatically create a KB?" ], "metadata": [ { - "name": "string", - "value": "string" + "name": "category", + "value": "api" } - ] + ], + "context": { + "isContextOnly": false, + "prompts": [ + { + "displayOrder": 1, + "displayText": "Update KB", + "qna": { + "answer": "You can use our REST apis to update your KB. See here for details: https://docs.microsoft.com/en-us/rest/api/cognitiveservices/qnamaker/knowledgebase/update", + "questions": [ + "How do I programmatically update my KB?" + ], + "metadata": [ + { + "name": "category", + "value": "api" + } + ], + "context": { + "isContextOnly": false, + "prompts": [ + { + "displayOrder": 1, + "displayText": "Refresh Endpoint Keys", + "qna": { + "answer": "You can use our REST apis to refresh endpoint keys. See here for details: https://docs.microsoft.com/en-us/rest/api/cognitiveservices/qnamaker/endpointkeys/refreshkeys", + "questions": [ + "How do I programmatically refresh endpoint keys?" + ] + } + } + ] + } + } + } + ] + } + } + ], + "urls": [ + "https://docs.microsoft.com/en-in/azure/cognitive-services/qnamaker/faqs", + "https://docs.microsoft.com/en-us/bot-framework/resources-bot-framework-faq" + ], + "files": [ + { + "fileName": "SurfaceManual.pdf", + "fileUri": "https://download.microsoft.com/download/2/9/B/29B20383-302C-4517-A006-B0186F04BE28/surface-pro-4-user-guide-EN.pdf" } ] } diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.0-preview.1/TextAnalytics.json b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.0-preview.1/TextAnalytics.json index 2c826b9ba1c4..3ecddf3e6b15 100644 --- a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.0-preview.1/TextAnalytics.json +++ b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.0-preview.1/TextAnalytics.json @@ -1119,4 +1119,4 @@ "x-ms-skip-url-encoding": true } } -} \ No newline at end of file +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/TextAnalytics.json b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/TextAnalytics.json new file mode 100644 index 000000000000..675210bab169 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/TextAnalytics.json @@ -0,0 +1,1347 @@ +{ + "swagger": "2.0", + "info": { + "version": "v3.1-preview.1", + "contact": { + "name": "Microsoft Cognitive Services", + "url": "https://azure.microsoft.com/en-us/services/cognitive-services/text-analytics/", + "email": "mlapi@microsoft.com" + }, + "title": "Text Analytics Client", + "description": "The Text Analytics API is a suite of text analytics web services built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction and language detection. No training data is needed to use this API; just bring your text data. This API uses advanced natural language processing techniques to deliver best in class predictions. Further documentation can be found in https://docs.microsoft.com/en-us/azure/cognitive-services/text-analytics/overview" + }, + "securityDefinitions": { + "apim_key": { + "type": "apiKey", + "name": "Ocp-Apim-Subscription-Key", + "in": "header" + } + }, + "security": [ + { + "apim_key": [] + } + ], + "x-ms-parameterized-host": { + "hostTemplate": "{Endpoint}/text/analytics/v3.1-preview.1", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/Endpoint" + } + ] + }, + "paths": { + "/entities/recognition/general": { + "post": { + "summary": "Named Entity Recognition", + "description": "The API returns a list of general named entities in a given document. For the list of supported entity types, check Supported Entity Types in Text Analytics API. See the Supported languages in Text Analytics API for the list of enabled languages.", + "operationId": "EntitiesRecognitionGeneral", + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/json" + ], + "parameters": [ + { + "name": "model-version", + "in": "query", + "description": "(Optional) This value indicates which model will be used for scoring. If a model-version is not specified, the API should default to the latest, non-preview version. ", + "required": false, + "type": "string" + }, + { + "name": "showStats", + "in": "query", + "description": "(Optional) if set to true, response will contain input and document level statistics.", + "type": "boolean", + "required": false + }, + { + "in": "body", + "name": "input", + "description": "Collection of documents to analyze.", + "required": true, + "schema": { + "$ref": "#/definitions/MultiLanguageBatchInput" + } + } + ], + "responses": { + "200": { + "description": "A successful call results in a list of recognized entities returned for each valid document.", + "schema": { + "$ref": "#/definitions/EntitiesResult" + } + }, + "default": { + "description": "Error Response", + "schema": { + "$ref": "#/definitions/TextAnalyticsError" + } + } + }, + "x-ms-examples": { + "Successful Entities request": { + "$ref": ".//examples//SuccessfulEntitiesRequest.json" + } + }, + "deprecated": false + } + }, + "/entities/recognition/pii": { + "post": { + "summary": "Entities containing personal information", + "description": "The API returns a list of entities with personal information (\\\"SSN\\\", \\\"Bank Account\\\" etc) in the document. For the list of supported entity types, check Supported Entity Types in Text Analytics API. See the Supported languages in Text Analytics API for the list of enabled languages.\n", + "operationId": "EntitiesRecognitionPii", + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/json" + ], + "parameters": [ + { + "name": "model-version", + "in": "query", + "description": "(Optional) This value indicates which model will be used for scoring. If a model-version is not specified, the API should default to the latest, non-preview version. ", + "type": "string" + }, + { + "name": "showStats", + "in": "query", + "description": "(Optional) if set to true, response will contain input and document level statistics.", + "type": "boolean" + }, + { + "name": "domain", + "in": "query", + "description": "(Optional) if set to 'PHI', response will contain only PHI entities.", + "type": "string" + }, + { + "in": "body", + "name": "input", + "description": "Collection of documents to analyze.", + "required": true, + "schema": { + "$ref": "#/definitions/MultiLanguageBatchInput" + } + } + ], + "responses": { + "200": { + "description": "A successful call results in a list of entities containing personal information returned for each valid document", + "schema": { + "$ref": "#/definitions/EntitiesResult" + } + }, + "default": { + "description": "Error Response", + "schema": { + "$ref": "#/definitions/TextAnalyticsError" + } + } + }, + "x-ms-examples": { + "Successful Entity PII request": { + "$ref": ".//examples//SuccessfulEntityPIIRequest.json" + } + }, + "deprecated": false + } + }, + "/entities/linking": { + "post": { + "summary": "Linked entities from a well-known knowledge base", + "description": "The API returns a list of recognized entities with links to a well-known knowledge base. See the Supported languages in Text Analytics API for the list of enabled languages.", + "operationId": "EntitiesLinking", + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/json" + ], + "parameters": [ + { + "name": "model-version", + "in": "query", + "description": "(Optional) This value indicates which model will be used for scoring. If a model-version is not specified, the API should default to the latest, non-preview version. ", + "type": "string" + }, + { + "name": "showStats", + "in": "query", + "description": "(Optional) if set to true, response will contain input and document level statistics.", + "type": "boolean" + }, + { + "in": "body", + "name": "input", + "description": "Collection of documents to analyze.", + "required": true, + "schema": { + "$ref": "#/definitions/MultiLanguageBatchInput" + } + } + ], + "responses": { + "200": { + "description": "A successful call results in a list of recognized entities with links to a well-known knowledge base returned for each valid document", + "schema": { + "$ref": "#/definitions/EntityLinkingResult" + } + }, + "default": { + "description": "Error Response", + "schema": { + "$ref": "#/definitions/TextAnalyticsError" + } + } + }, + "x-ms-examples": { + "Successful Entity Linking request": { + "$ref": ".//examples//SuccessfulEntityLinkingRequest.json" + } + }, + "deprecated": false + } + }, + "/keyPhrases": { + "post": { + "summary": "Key Phrases", + "description": "The API returns a list of strings denoting the key phrases in the input text. See the Supported languages in Text Analytics API for the list of enabled languages.", + "operationId": "KeyPhrases", + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/json" + ], + "parameters": [ + { + "name": "model-version", + "in": "query", + "description": "(Optional) This value indicates which model will be used for scoring. If a model-version is not specified, the API should default to the latest, non-preview version. ", + "type": "string" + }, + { + "name": "showStats", + "in": "query", + "description": "(Optional) if set to true, response will contain input and document level statistics.", + "type": "boolean" + }, + { + "in": "body", + "name": "input", + "description": "Collection of documents to analyze. Documents can now contain a language field to indicate the text language", + "required": true, + "schema": { + "$ref": "#/definitions/MultiLanguageBatchInput" + } + } + ], + "responses": { + "200": { + "description": "A successful response results in 0 or more key phrases identified in each valid document", + "schema": { + "$ref": "#/definitions/KeyPhraseResult" + } + }, + "default": { + "description": "Error Response", + "schema": { + "$ref": "#/definitions/TextAnalyticsError" + } + } + }, + "x-ms-examples": { + "Successful Key Phrase request": { + "$ref": ".//examples//SuccessfulKeyPhrasesRequest.json" + } + }, + "deprecated": false + } + }, + "/languages": { + "post": { + "summary": "Detect Language", + "description": "The API returns the detected language and a numeric score between 0 and 1. Scores close to 1 indicate 100% certainty that the identified language is true. See the Supported languages in Text Analytics API for the list of enabled languages.", + "operationId": "Languages", + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/json" + ], + "parameters": [ + { + "name": "model-version", + "in": "query", + "description": "(Optional) This value indicates which model will be used for scoring. If a model-version is not specified, the API should default to the latest, non-preview version. ", + "type": "string" + }, + { + "name": "showStats", + "in": "query", + "description": "(Optional) if set to true, response will contain input and document level statistics.", + "type": "boolean" + }, + { + "in": "body", + "name": "input", + "description": "Collection of documents to analyze.", + "required": true, + "schema": { + "$ref": "#/definitions/LanguageBatchInput" + } + } + ], + "responses": { + "200": { + "description": "A successful call results in the detected language with the highest probability for each valid document", + "schema": { + "$ref": "#/definitions/LanguageResult" + } + }, + "default": { + "description": "Error Response", + "schema": { + "$ref": "#/definitions/TextAnalyticsError" + } + } + }, + "x-ms-examples": { + "Successful Detect Language request": { + "$ref": ".//examples//SuccessfulLanguagesRequest.json" + } + }, + "deprecated": false + } + }, + "/sentiment": { + "post": { + "summary": "Sentiment", + "description": "The API returns a detailed sentiment analysis for the input text. The analysis is done in multiple levels of granularity, start from the a document level, down to sentence and key terms (aspects) and opinions.", + "operationId": "Sentiment", + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/json" + ], + "parameters": [ + { + "name": "model-version", + "in": "query", + "description": "(Optional) This value indicates which model will be used for scoring. If a model-version is not specified, the API should default to the latest, non-preview version. ", + "type": "string" + }, + { + "name": "showStats", + "in": "query", + "description": "(Optional) if set to true, response will contain input and document level statistics.", + "type": "boolean" + }, + { + "name": "opinionMining", + "in": "query", + "description": "(Optional) if set to true, response will contain input and document level statistics including aspect-based sentiment analysis results.", + "type": "boolean" + }, + { + "in": "body", + "name": "input", + "description": "Collection of documents to analyze.", + "required": true, + "schema": { + "$ref": "#/definitions/MultiLanguageBatchInput" + } + } + ], + "responses": { + "200": { + "description": "A successful call results in a document sentiment prediction, as well as sentiment scores for each sentiment class (Positive, Negative, and Neutral)", + "schema": { + "$ref": "#/definitions/SentimentResponse" + } + }, + "default": { + "description": "Error Response", + "schema": { + "$ref": "#/definitions/TextAnalyticsError" + } + } + }, + "x-ms-examples": { + "Successful Sentiment request": { + "$ref": ".//examples//SuccessfulSentimentRequest.json" + } + }, + "deprecated": false + } + } + }, + "definitions": { + "MultiLanguageBatchInput": { + "type": "object", + "required": [ + "documents" + ], + "properties": { + "documents": { + "type": "array", + "description": "The set of documents to process as part of this batch.", + "items": { + "$ref": "#/definitions/MultiLanguageInput" + } + } + }, + "description": "Contains a set of input documents to be analyzed by the service." + }, + "MultiLanguageInput": { + "type": "object", + "required": [ + "id", + "text" + ], + "properties": { + "id": { + "type": "string", + "description": "A unique, non-empty document identifier." + }, + "text": { + "type": "string", + "description": "The input text to process." + }, + "language": { + "type": "string", + "description": "(Optional) This is the 2 letter ISO 639-1 representation of a language. For example, use \"en\" for English; \"es\" for Spanish etc. If not set, use \"en\" for English as default." + } + }, + "description": "Contains an input document to be analyzed by the service." + }, + "DocumentError": { + "type": "object", + "required": [ + "id", + "error" + ], + "properties": { + "id": { + "type": "string", + "description": "Document Id." + }, + "error": { + "type": "object", + "description": "Document Error.", + "$ref": "#/definitions/TextAnalyticsError" + } + } + }, + "TextAnalyticsError": { + "type": "object", + "required": [ + "code", + "message" + ], + "properties": { + "code": { + "type": "string", + "enum": [ + "invalidRequest", + "invalidArgument", + "internalServerError", + "serviceUnavailable" + ], + "x-ms-enum": { + "name": "ErrorCodeValue", + "modelAsString": false + }, + "description": "Error code." + }, + "message": { + "type": "string", + "description": "Error message." + }, + "target": { + "type": "string", + "description": "Error target." + }, + "innererror": { + "$ref": "#/definitions/InnerError", + "description": "Inner error contains more specific information." + }, + "details": { + "type": "array", + "description": "Details about specific errors that led to this reported error.", + "items": { + "$ref": "#/definitions/TextAnalyticsError" + } + } + } + }, + "TextAnalyticsWarning": { + "type": "object", + "required": [ + "code", + "message" + ], + "properties": { + "code": { + "type": "string", + "enum": [ + "LongWordsInDocument", + "DocumentTruncated" + ], + "x-ms-enum": { + "name": "WarningCodeValue", + "modelAsString": false + }, + "description": "Error code." + }, + "message": { + "type": "string", + "description": "Warning message." + }, + "targetRef": { + "type": "string", + "description": "A JSON pointer reference indicating the target object." + } + } + }, + "InnerError": { + "type": "object", + "required": [ + "code", + "message" + ], + "properties": { + "code": { + "type": "string", + "enum": [ + "invalidParameterValue", + "invalidRequestBodyFormat", + "emptyRequest", + "missingInputRecords", + "invalidDocument", + "modelVersionIncorrect", + "invalidDocumentBatch", + "unsupportedLanguageCode", + "invalidCountryHint" + ], + "x-ms-enum": { + "name": "InnerErrorCodeValue", + "modelAsString": false + }, + "description": "Error code." + }, + "message": { + "type": "string", + "description": "Error message." + }, + "details": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Error details." + }, + "target": { + "type": "string", + "description": "Error target." + }, + "innererror": { + "$ref": "#/definitions/InnerError", + "description": "Inner error contains more specific information." + } + } + }, + "SentimentResponse": { + "type": "object", + "required": [ + "documents", + "errors", + "modelVersion" + ], + "properties": { + "documents": { + "type": "array", + "description": "Sentiment analysis per document.", + "items": { + "$ref": "#/definitions/DocumentSentiment" + } + }, + "errors": { + "type": "array", + "description": "Errors by document id.", + "items": { + "$ref": "#/definitions/DocumentError" + } + }, + "statistics": { + "$ref": "#/definitions/RequestStatistics" + }, + "modelVersion": { + "type": "string", + "description": "This field indicates which model is used for scoring." + } + } + }, + "DocumentSentiment": { + "type": "object", + "required": [ + "id", + "sentiment", + "confidenceScores", + "sentences", + "warnings" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique, non-empty document identifier." + }, + "sentiment": { + "type": "string", + "description": "Predicted sentiment for document (Negative, Neutral, Positive, or Mixed).", + "enum": [ + "positive", + "neutral", + "negative", + "mixed" + ], + "x-ms-enum": { + "name": "DocumentSentimentValue", + "modelAsString": false + } + }, + "statistics": { + "$ref": "#/definitions/DocumentStatistics" + }, + "confidenceScores": { + "description": "Document level sentiment confidence scores between 0 and 1 for each sentiment class.", + "$ref": "#/definitions/SentimentConfidenceScorePerLabel" + }, + "sentences": { + "type": "array", + "description": "Sentence level sentiment analysis.", + "items": { + "$ref": "#/definitions/SentenceSentiment" + } + }, + "warnings": { + "type": "array", + "description": "Warnings encountered while processing document.", + "items": { + "$ref": "#/definitions/TextAnalyticsWarning" + } + } + } + }, + "RequestStatistics": { + "type": "object", + "required": [ + "documentsCount", + "validDocumentsCount", + "erroneousDocumentsCount", + "transactionsCount" + ], + "properties": { + "documentsCount": { + "type": "integer", + "format": "int32", + "description": "Number of documents submitted in the request." + }, + "validDocumentsCount": { + "type": "integer", + "format": "int32", + "description": "Number of valid documents. This excludes empty, over-size limit or non-supported languages documents." + }, + "erroneousDocumentsCount": { + "type": "integer", + "format": "int32", + "description": "Number of invalid documents. This includes empty, over-size limit or non-supported languages documents." + }, + "transactionsCount": { + "type": "integer", + "format": "int64", + "description": "Number of transactions for the request." + } + }, + "description": "if showStats=true was specified in the request this field will contain information about the request payload." + }, + "DocumentStatistics": { + "type": "object", + "required": [ + "charactersCount", + "transactionsCount" + ], + "properties": { + "charactersCount": { + "type": "integer", + "format": "int32", + "description": "Number of text elements recognized in the document." + }, + "transactionsCount": { + "type": "integer", + "format": "int32", + "description": "Number of transactions for the document." + } + }, + "description": "if showStats=true was specified in the request this field will contain information about the document payload." + }, + "SentimentConfidenceScorePerLabel": { + "type": "object", + "required": [ + "positive", + "neutral", + "negative" + ], + "properties": { + "positive": { + "type": "number", + "format": "double" + }, + "neutral": { + "type": "number", + "format": "double" + }, + "negative": { + "type": "number", + "format": "double" + } + }, + "description": "Represents the confidence scores between 0 and 1 across all sentiment classes: positive, neutral, negative." + }, + "SentenceSentiment": { + "type": "object", + "required": [ + "text", + "sentiment", + "confidenceScores", + "offset", + "length", + "aspects", + "opinions" + ], + "properties": { + "text": { + "type": "string", + "description": "The sentence text." + }, + "sentiment": { + "type": "string", + "description": "The predicted Sentiment for the sentence.", + "enum": [ + "positive", + "neutral", + "negative" + ], + "x-ms-enum": { + "name": "SentenceSentimentValue", + "modelAsString": false + } + }, + "confidenceScores": { + "description": "The sentiment confidence score between 0 and 1 for the sentence for all classes.", + "$ref": "#/definitions/SentimentConfidenceScorePerLabel" + }, + "offset": { + "type": "integer", + "format": "int32", + "description": "The sentence offset from the start of the document." + }, + "length": { + "type": "integer", + "format": "int32", + "description": "The length of the sentence." + }, + "aspects": { + "type": "array", + "description": "The array of aspect object for the sentence.", + "items": { + "$ref": "#/definitions/SentenceAspect" + } + }, + "opinions": { + "type": "array", + "description": "The array of opinion object for the sentence.", + "items": { + "$ref": "#/definitions/SentenceOpinion" + } + } + } + }, + "SentenceAspect": { + "type": "object", + "required": [ + "confidenceScores", + "length", + "offset", + "relations", + "sentiment", + "text" + ], + "properties": { + "sentiment": { + "type": "string", + "enum": [ + "positive", + "mixed", + "negative" + ], + "description": "Aspect level sentiment for the aspect in the sentence." + }, + "confidenceScores": { + "description": "Aspect level sentiment confidence scores for the aspect in the sentence.", + "$ref": "#/definitions/AspectConfidenceScoreLabel" + }, + "offset": { + "type": "integer", + "format": "int32", + "description": "The aspect offset from the start of the sentence." + }, + "length": { + "type": "integer", + "format": "int32", + "description": "The length of the aspect." + }, + "text": { + "type": "string", + "description": "The aspect text detected." + }, + "relations": { + "type": "array", + "description": "The array of either opinion or aspect object which is related to the aspect.", + "items": { + "$ref": "#/definitions/AspectRelation" + } + } + } + }, + "SentenceOpinion": { + "type": "object", + "required": [ + "confidenceScores", + "isNegated", + "length", + "offset", + "sentiment", + "text" + ], + "properties": { + "sentiment": { + "type": "string", + "enum": [ + "positive", + "mixed", + "negative" + ], + "description": "Opinion level sentiment for the aspect in the sentence." + }, + "confidenceScores": { + "description": "Opinion level sentiment confidence scores for the aspect in the sentence.", + "$ref": "#/definitions/AspectConfidenceScoreLabel" + }, + "offset": { + "type": "integer", + "format": "int32", + "description": "The opinion offset from the start of the sentence." + }, + "length": { + "type": "integer", + "format": "int32", + "description": "The length of the opinion." + }, + "text": { + "type": "string", + "description": "The aspect text detected." + }, + "isNegated": { + "type": "boolean", + "description": "The indicator representing if the opinion is negated." + } + } + }, + "AspectRelation": { + "type": "object", + "required": [ + "ref", + "relationType" + ], + "properties": { + "relationType": { + "type": "string", + "enum": [ + "opinion", + "aspect" + ], + "description": "The type related to the aspect." + }, + "ref": { + "type": "string", + "description": "The JSON pointer indicating the linked object." + } + } + }, + "AspectConfidenceScoreLabel": { + "type": "object", + "required": [ + "negative", + "positive" + ], + "properties": { + "positive": { + "type": "number", + "format": "double" + }, + "negative": { + "type": "number", + "format": "double" + } + }, + "description": "Represents the confidence scores across all sentiment classes: positive, neutral, negative." + }, + "EntitiesResult": { + "type": "object", + "required": [ + "documents", + "errors", + "modelVersion" + ], + "properties": { + "documents": { + "type": "array", + "description": "Response by document", + "items": { + "$ref": "#/definitions/DocumentEntities" + } + }, + "errors": { + "type": "array", + "description": "Errors by document id.", + "items": { + "$ref": "#/definitions/DocumentError" + } + }, + "statistics": { + "$ref": "#/definitions/RequestStatistics" + }, + "modelVersion": { + "type": "string", + "description": "This field indicates which model is used for scoring." + } + } + }, + "DocumentEntities": { + "type": "object", + "required": [ + "id", + "entities", + "warnings" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique, non-empty document identifier." + }, + "entities": { + "type": "array", + "description": "Recognized entities in the document.", + "items": { + "$ref": "#/definitions/Entity" + } + }, + "warnings": { + "type": "array", + "description": "Warnings encountered while processing document.", + "items": { + "$ref": "#/definitions/TextAnalyticsWarning" + } + }, + "statistics": { + "description": "if showStats=true was specified in the request this field will contain information about the document payload.", + "$ref": "#/definitions/DocumentStatistics" + } + } + }, + "Entity": { + "type": "object", + "required": [ + "text", + "category", + "offset", + "length", + "confidenceScore" + ], + "properties": { + "text": { + "type": "string", + "description": "Entity text as appears in the request." + }, + "category": { + "type": "string", + "description": "Entity type, such as Person/Location/Org/SSN etc" + }, + "subcategory": { + "type": "string", + "description": "Entity sub type, such as Age/Year/TimeRange etc" + }, + "offset": { + "type": "integer", + "format": "int32", + "description": "Start position for the entity text." + }, + "length": { + "type": "integer", + "format": "int32", + "description": "Length for the entity text." + }, + "confidenceScore": { + "type": "number", + "format": "double", + "description": "Confidence score between 0 and 1 of the extracted entity." + } + } + }, + "EntityLinkingResult": { + "type": "object", + "required": [ + "documents", + "errors", + "modelVersion" + ], + "properties": { + "documents": { + "type": "array", + "description": "Response by document", + "items": { + "$ref": "#/definitions/DocumentLinkedEntities" + } + }, + "errors": { + "type": "array", + "description": "Errors by document id.", + "items": { + "$ref": "#/definitions/DocumentError" + } + }, + "statistics": { + "$ref": "#/definitions/RequestStatistics" + }, + "modelVersion": { + "type": "string", + "description": "This field indicates which model is used for scoring." + } + } + }, + "DocumentLinkedEntities": { + "type": "object", + "required": [ + "id", + "entities", + "warnings" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique, non-empty document identifier." + }, + "entities": { + "type": "array", + "description": "Recognized well-known entities in the document.", + "items": { + "$ref": "#/definitions/LinkedEntity" + } + }, + "warnings": { + "type": "array", + "description": "Warnings encountered while processing document.", + "items": { + "$ref": "#/definitions/TextAnalyticsWarning" + } + }, + "statistics": { + "description": "if showStats=true was specified in the request this field will contain information about the document payload.", + "$ref": "#/definitions/DocumentStatistics" + } + } + }, + "LinkedEntity": { + "type": "object", + "required": [ + "name", + "matches", + "language", + "url", + "dataSource" + ], + "properties": { + "name": { + "type": "string", + "description": "Entity Linking formal name." + }, + "matches": { + "type": "array", + "description": "List of instances this entity appears in the text.", + "items": { + "$ref": "#/definitions/Match" + } + }, + "language": { + "type": "string", + "description": "Language used in the data source." + }, + "id": { + "type": "string", + "description": "Unique identifier of the recognized entity from the data source." + }, + "url": { + "type": "string", + "description": "URL for the entity's page from the data source." + }, + "dataSource": { + "type": "string", + "description": "Data source used to extract entity linking, such as Wiki/Bing etc." + } + } + }, + "Match": { + "type": "object", + "required": [ + "confidenceScore", + "text", + "offset", + "length" + ], + "properties": { + "confidenceScore": { + "type": "number", + "format": "double", + "description": "If a well-known item is recognized, a decimal number denoting the confidence level between 0 and 1 will be returned." + }, + "text": { + "type": "string", + "description": "Entity text as appears in the request." + }, + "offset": { + "type": "integer", + "format": "int32", + "description": "Start position for the entity match text." + }, + "length": { + "type": "integer", + "format": "int32", + "description": "Length for the entity match text." + } + } + }, + "KeyPhraseResult": { + "type": "object", + "required": [ + "documents", + "errors", + "modelVersion" + ], + "properties": { + "documents": { + "type": "array", + "description": "Response by document", + "items": { + "$ref": "#/definitions/DocumentKeyPhrases" + } + }, + "errors": { + "type": "array", + "description": "Errors by document id.", + "items": { + "$ref": "#/definitions/DocumentError" + } + }, + "statistics": { + "$ref": "#/definitions/RequestStatistics" + }, + "modelVersion": { + "type": "string", + "description": "This field indicates which model is used for scoring." + } + } + }, + "DocumentKeyPhrases": { + "type": "object", + "required": [ + "id", + "keyPhrases", + "warnings" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique, non-empty document identifier." + }, + "keyPhrases": { + "type": "array", + "description": "A list of representative words or phrases. The number of key phrases returned is proportional to the number of words in the input document.", + "items": { + "type": "string" + } + }, + "warnings": { + "type": "array", + "description": "Warnings encountered while processing document.", + "items": { + "$ref": "#/definitions/TextAnalyticsWarning" + } + }, + "statistics": { + "description": "if showStats=true was specified in the request this field will contain information about the document payload.", + "$ref": "#/definitions/DocumentStatistics" + } + } + }, + "LanguageBatchInput": { + "type": "object", + "required": [ + "documents" + ], + "properties": { + "documents": { + "type": "array", + "items": { + "$ref": "#/definitions/LanguageInput" + } + } + } + }, + "LanguageInput": { + "type": "object", + "required": [ + "id", + "text" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique, non-empty document identifier." + }, + "text": { + "type": "string" + }, + "countryHint": { + "type": "string" + } + } + }, + "LanguageResult": { + "type": "object", + "required": [ + "documents", + "errors", + "modelVersion" + ], + "properties": { + "documents": { + "type": "array", + "description": "Response by document", + "items": { + "$ref": "#/definitions/DocumentLanguage" + } + }, + "errors": { + "type": "array", + "description": "Errors by document id.", + "items": { + "$ref": "#/definitions/DocumentError" + } + }, + "statistics": { + "$ref": "#/definitions/RequestStatistics" + }, + "modelVersion": { + "type": "string", + "description": "This field indicates which model is used for scoring." + } + } + }, + "DocumentLanguage": { + "type": "object", + "required": [ + "id", + "detectedLanguages", + "warnings" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique, non-empty document identifier." + }, + "detectedLanguages": { + "type": "array", + "description": "A list of extracted languages.", + "items": { + "$ref": "#/definitions/DetectedLanguage" + } + }, + "warnings": { + "type": "array", + "description": "Warnings encountered while processing document.", + "items": { + "$ref": "#/definitions/TextAnalyticsWarning" + } + }, + "statistics": { + "description": "if showStats=true was specified in the request this field will contain information about the document payload.", + "$ref": "#/definitions/DocumentStatistics" + } + } + }, + "DetectedLanguage": { + "type": "object", + "required": [ + "name", + "iso6391Name", + "confidenceScore" + ], + "properties": { + "name": { + "type": "string", + "description": "Long name of a detected language (e.g. English, French)." + }, + "iso6391Name": { + "type": "string", + "description": "A two letter representation of the detected language according to the ISO 639-1 standard (e.g. en, fr)." + }, + "confidenceScore": { + "type": "number", + "format": "double", + "description": "A confidence score between 0 and 1. Scores close to 1 indicate 100% certainty that the identified language is true." + } + } + } + }, + "parameters": { + "Endpoint": { + "name": "Endpoint", + "description": "Supported Cognitive Services endpoints (protocol and hostname, for example: https://westus.api.cognitive.microsoft.com).", + "x-ms-parameter-location": "client", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulEntitiesRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulEntitiesRequest.json new file mode 100644 index 000000000000..75b4489dcb2d --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulEntitiesRequest.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "input": { + "documents": [ + { + "language": "en", + "id": "1", + "text": "I had a wonderful trip to Seattle last week." + }, + { + "language": "en", + "id": "2", + "text": "I work at Microsoft." + }, + { + "language": "en", + "id": "3", + "text": "I visited Space Needle 2 times." + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "documents": [ + { + "id": "1", + "entities": [ + { + "text": "Seattle", + "category": "Location", + "offset": 26, + "length": 7, + "confidenceScore": 0.80 + }, + { + "text": "last week", + "category": "DateTime", + "subcategory": "DateRange", + "offset": 34, + "length": 9, + "confidenceScore": 0.8 + } + ], + "warnings": [] + }, + { + "id": "2", + "entities": [ + { + "text": "Microsoft", + "category": "Organization", + "offset": 10, + "length": 9, + "confidenceScore": 0.99 + } + ], + "warnings": [] + }, + { + "id": "3", + "entities": [ + { + "text": "Space Needle", + "category": "Organization", + "offset": 10, + "length": 12, + "confidenceScore": 0.75 + }, + { + "text": "2", + "category": "Quantity", + "subcategory": "Number", + "offset": 23, + "length": 1, + "confidenceScore": 0.8 + } + ], + "warnings": [] + } + ], + "errors": [], + "modelVersion": "2019-10-01" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulEntityLinkingRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulEntityLinkingRequest.json new file mode 100644 index 000000000000..caf12d36bc11 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulEntityLinkingRequest.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "input": { + "documents": [ + { + "language": "en", + "id": "1", + "text": "I had a wonderful trip to Seattle last week." + }, + { + "language": "en", + "id": "2", + "text": "I work at Microsoft." + }, + { + "language": "en", + "id": "3", + "text": "I visited Space Needle 2 times." + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "documents": [ + { + "id": "1", + "entities": [ + { + "name": "Seattle", + "matches": [ + { + "text": "Seattle", + "offset": 26, + "length": 7, + "confidenceScore": 0.15 + } + ], + "language": "en", + "id": "Seattle", + "url": "https://en.wikipedia.org/wiki/Seattle", + "dataSource": "Wikipedia" + } + ], + "warnings": [] + }, + { + "id": "2", + "entities": [ + { + "name": "Microsoft", + "matches": [ + { + "text": "Microsoft", + "offset": 10, + "length": 9, + "confidenceScore": 0.18 + } + ], + "language": "en", + "id": "Microsoft", + "url": "https://en.wikipedia.org/wiki/Microsoft", + "dataSource": "Wikipedia" + } + ], + "warnings": [] + }, + { + "id": "3", + "entities": [ + { + "name": "Space Needle", + "matches": [ + { + "text": "Space Needle", + "offset": 10, + "length": 12, + "confidenceScore": 0.15 + } + ], + "language": "en", + "id": "Space Needle", + "url": "https://en.wikipedia.org/wiki/Space_Needle", + "dataSource": "Wikipedia" + } + ], + "warnings": [] + } + ], + "errors": [], + "modelVersion": "2019-10-01" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulEntityPIIRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulEntityPIIRequest.json new file mode 100644 index 000000000000..70d30744fd02 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulEntityPIIRequest.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "input": { + "documents": [ + { + "language": "en", + "id": "0", + "text": "Microsoft employee with ssn 859-98-0987 is using our awesome API's." + }, + { + "language": "en", + "id": "1", + "text": "Your ABA number - 111000025 - is the first 9 digits in the lower left hand corner of your personal check." + }, + { + "language": "en", + "id": "2", + "text": "Is 998.214.865-68 your Brazilian CPF number?" + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "documents": [ + { + "id": "0", + "entities": [ + { + "text": "859-98-0987", + "category": "U.S. Social Security Number (SSN)", + "subcategory": "", + "offset": 28, + "length": 11, + "confidenceScore": 0.65 + } + ], + "warnings": [] + }, + { + "id": "1", + "entities": [ + { + "text": "111000025", + "category": "ABA Routing Number", + "subcategory": "", + "offset": 18, + "length": 9, + "confidenceScore": 0.75 + } + ], + "warnings": [] + }, + { + "id": "2", + "entities": [ + { + "text": "998.214.865-68", + "category": "Brazil CPF Number", + "subcategory": "", + "offset": 3, + "length": 14, + "confidenceScore": 0.85 + } + ], + "warnings": [] + } + ], + "errors": [], + "modelVersion": "2019-10-01" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulKeyPhrasesRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulKeyPhrasesRequest.json new file mode 100644 index 000000000000..12ff0ccce583 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulKeyPhrasesRequest.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "input": { + "documents": [ + { + "language": "en", + "id": "1", + "text": "Hello world. This is some input text that I love." + }, + { + "language": "fr", + "id": "2", + "text": "Bonjour tout le monde" + }, + { + "language": "es", + "id": "3", + "text": "La carretera estaba atascada. Había mucho tráfico el día de ayer." + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "documents": [ + { + "id": "1", + "keyPhrases": [ + "world", + "input text" + ], + "warnings": [] + }, + { + "id": "2", + "keyPhrases": [ + "monde" + ], + "warnings": [] + }, + { + "id": "3", + "keyPhrases": [ + "carretera", + "tráfico", + "día" + ], + "warnings": [] + } + ], + "errors": [], + "modelVersion": "2019-10-01" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulLanguagesRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulLanguagesRequest.json new file mode 100644 index 000000000000..fad894b10669 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulLanguagesRequest.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "input": { + "documents": [ + { + "countryHint": "US", + "id": "1", + "text": "Hello world" + }, + { + "id": "2", + "text": "Bonjour tout le monde" + }, + { + "id": "3", + "text": "La carretera estaba atascada. Había mucho tráfico el día de ayer." + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "documents": [ + { + "id": "1", + "detectedLanguages": [ + { + "name": "English", + "iso6391Name": "en", + "confidenceScore": 1 + } + ], + "warnings": [] + }, + { + "id": "2", + "detectedLanguages": [ + { + "name": "French", + "iso6391Name": "fr", + "confidenceScore": 1 + } + ], + "warnings": [] + }, + { + "id": "3", + "detectedLanguages": [ + { + "name": "Spanish", + "iso6391Name": "es", + "confidenceScore": 1 + } + ], + "warnings": [] + } + ], + "errors": [], + "modelVersion": "2019-10-01" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulSentimentRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulSentimentRequest.json new file mode 100644 index 000000000000..ad3fc48d2cae --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/preview/v3.1-preview.1/examples/SuccessfulSentimentRequest.json @@ -0,0 +1,323 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "input": { + "documents": [ + { + "language": "en", + "id": "1", + "text": "Great atmosphere. Close to plenty of restaurants, hotels, and transit! Staff are friendly and helpful." + }, + { + "language": "en", + "id": "2", + "text": "Bad atmosphere. Not close to plenty of restaurants, hotels, and transit! Staff are not friendly and helpful." + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "documents": [ + { + "id": "1", + "sentiment": "positive", + "confidenceScores": { + "positive": 1.0, + "neutral": 0.0, + "negative": 0.0 + }, + "sentences": [ + { + "text": "Great atmosphere.", + "sentiment": "positive", + "confidenceScores": { + "positive": 1.0, + "neutral": 0.0, + "negative": 0.0 + }, + "offset": 0, + "length": 17, + "aspects": [ + { + "sentiment": "positive", + "confidenceScores": { + "positive": 1.0, + "negative": 0.0 + }, + "offset": 6, + "length": 10, + "text": "atmosphere", + "relations": [ + { + "relationType": "opinion", + "ref": "#/documents/0/sentences/0/opinions/0" + } + ] + } + ], + "opinions": [ + { + "sentiment": "positive", + "confidenceScores": { + "positive": 1.0, + "negative": 0.0 + }, + "offset": 0, + "length": 5, + "text": "great", + "isNegated": false + } + ] + }, + { + "text": "Close to plenty of restaurants, hotels, and transit!", + "sentiment": "neutral", + "confidenceScores": { + "positive": 0.13, + "neutral": 0.86, + "negative": 0.01 + }, + "offset": 18, + "length": 52, + "aspects": [ + { + "sentiment": "positive", + "confidenceScores": { + "positive": 0.99, + "negative": 0.01 + }, + "offset": 37, + "length": 11, + "text": "restaurants", + "relations": [ + { + "relationType": "opinion", + "ref": "#/documents/0/sentences/1/opinions/0" + } + ] + }, + { + "sentiment": "positive", + "confidenceScores": { + "positive": 0.99, + "negative": 0.01 + }, + "offset": 50, + "length": 6, + "text": "hotels", + "relations": [ + { + "relationType": "opinion", + "ref": "#/documents/0/sentences/1/opinions/0" + } + ] + } + ], + "opinions": [ + { + "sentiment": "positive", + "confidenceScores": { + "positive": 0.99, + "negative": 0.01 + }, + "offset": 18, + "length": 15, + "text": "close to plenty", + "isNegated": false + } + ] + }, + { + "text": "Staff are friendly and helpful.", + "sentiment": "positive", + "confidenceScores": { + "positive": 1.0, + "neutral": 0.0, + "negative": 0.0 + }, + "offset": 71, + "length": 31, + "aspects": [ + { + "sentiment": "positive", + "confidenceScores": { + "positive": 1.0, + "negative": 0.0 + }, + "offset": 71, + "length": 5, + "text": "Staff", + "relations": [ + { + "relationType": "opinion", + "ref": "#/documents/0/sentences/2/opinions/0" + } + ] + } + ], + "opinions": [ + { + "sentiment": "positive", + "confidenceScores": { + "positive": 1.0, + "negative": 0.0 + }, + "offset": 81, + "length": 8, + "text": "friendly", + "isNegated": false + } + ] + } + ], + "warnings": [] + }, + { + "id": "2", + "sentiment": "negative", + "confidenceScores": { + "positive": 0.01, + "neutral": 0.14, + "negative": 0.85 + }, + "sentences": [ + { + "text": "Bad atmosphere.", + "sentiment": "negative", + "confidenceScores": { + "positive": 0.0, + "neutral": 0.0, + "negative": 1.0 + }, + "offset": 8, + "length": 15, + "aspects": [ + { + "sentiment": "negative", + "confidenceScores": { + "positive": 0.01, + "negative": 0.99 + }, + "offset": 4, + "length": 10, + "text": "atmosphere", + "relations": [ + { + "relationType": "opinion", + "ref": "#/documents/1/sentences/0/opinions/0" + } + ] + } + ], + "opinions": [ + { + "sentiment": "negative", + "confidenceScores": { + "positive": 0.01, + "negative": 0.99 + }, + "offset": 0, + "length": 3, + "text": "bad", + "isNegated": false + } + ] + }, + { + "text": "Not close to plenty of restaurants, hotels, and transit!", + "sentiment": "negative", + "confidenceScores": { + "positive": 0.02, + "neutral": 0.44, + "negative": 0.54 + }, + "offset": 16, + "length": 56, + "aspects": [ + { + "sentiment": "negative", + "confidenceScores": { + "positive": 0.03, + "negative": 0.97 + }, + "offset": 39, + "length": 11, + "text": "restaurants", + "relations": [ + { + "relationType": "opinion", + "ref": "#/documents/1/sentences/1/opinions/0" + } + ] + } + ], + "opinions": [ + { + "sentiment": "negative", + "confidenceScores": { + "positive": 0.03, + "negative": 0.97 + }, + "offset": 20, + "length": 5, + "text": "close", + "isNegated": true + } + ] + }, + { + "text": "Staff are not friendly and helpful.", + "sentiment": "negative", + "confidenceScores": { + "positive": 0.0, + "neutral": 0.0, + "negative": 1.0 + }, + "offset": 73, + "length": 35, + "aspects": [ + { + "sentiment": "negative", + "confidenceScores": { + "positive": 0.0, + "negative": 1.0 + }, + "offset": 73, + "length": 5, + "text": "Staff", + "relations": [ + { + "relationType": "opinion", + "ref": "#/documents/1/sentences/2/opinions/0" + } + ] + } + ], + "opinions": [ + { + "sentiment": "negative", + "confidenceScores": { + "positive": 0.0, + "negative": 1.0 + }, + "offset": 87, + "length": 8, + "text": "friendly", + "isNegated": true + } + ] + } + ], + "warnings": [] + } + ], + "errors": [], + "modelVersion": "2020-04-01" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/readme.md b/specification/cognitiveservices/data-plane/TextAnalytics/readme.md index aaa4fc2829e7..3cad53b7f8b5 100644 --- a/specification/cognitiveservices/data-plane/TextAnalytics/readme.md +++ b/specification/cognitiveservices/data-plane/TextAnalytics/readme.md @@ -128,7 +128,6 @@ These settings apply only when `--tag=release_2_0` is specified on the command l ``` yaml $(tag) == 'release_2_0' input-file: stable/v2.0/TextAnalytics.json -log-file: logs/log.txt ``` ### Release 2.1 @@ -137,7 +136,6 @@ These settings apply only when `--tag=release_2_1` is specified on the command l ``` yaml $(tag) == 'release_2_1' input-file: stable/v2.1/TextAnalytics.json -log-file: logs/log.txt ``` ### Release 2.1-Preview @@ -146,7 +144,6 @@ These settings apply only when `--tag=release_2_1_preview` is specified on the c ``` yaml $(tag) == 'release_2_1_preview' input-file: preview/v2.1/TextAnalytics.json -log-file: logs/log.txt ``` ### Release 3.0-Preview.1 @@ -155,7 +152,22 @@ These settings apply only when `--tag=release_3_0_preview.1` is specified on the ``` yaml $(tag) == 'release_3_0_preview.1' input-file: preview/v3.0-preview.1/TextAnalytics.json -log-file: logs/log.txt +``` + +### Release 3.0 + +These settings apply only when `--tag=release_3_0` is specified on the command line. + +``` yaml $(tag) == 'release_3_0' +input-file: stable/v3.0/TextAnalytics.json +``` + +### Release 3.1-Preview.1 + +These settings apply only when `--tag=release_3_1_preview.1` is specified on the command line. + +``` yaml $(tag) == 'release_3_1_preview.1' +input-file: preview/v3.1-preview.1/TextAnalytics.json ``` ## Swagger to SDK @@ -254,6 +266,8 @@ input-file: - $(this-folder)/stable/v2.1/TextAnalytics.json - $(this-folder)/preview/v2.1/TextAnalytics.json - $(this-folder)/preview/v3.0-preview.1/TextAnalytics.json + - $(this-folder)/stable/v3.0/TextAnalytics.json + - $(this-folder)/preview/v3.1-preview.1/TextAnalytics.json ``` diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/TextAnalytics.json b/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/TextAnalytics.json new file mode 100644 index 000000000000..6a5ac3d74066 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/TextAnalytics.json @@ -0,0 +1,1130 @@ +{ + "swagger": "2.0", + "info": { + "version": "v3.0", + "contact": { + "name": "Microsoft Cognitive Services", + "url": "https://azure.microsoft.com/en-us/services/cognitive-services/text-analytics/", + "email": "mlapi@microsoft.com" + }, + "title": "Text Analytics Client", + "description": "The Text Analytics API is a suite of text analytics web services built with best-in-class Microsoft machine learning algorithms. The API can be used to analyze unstructured text for tasks such as sentiment analysis, key phrase extraction and language detection. No training data is needed to use this API; just bring your text data. This API uses advanced natural language processing techniques to deliver best in class predictions. Further documentation can be found in https://docs.microsoft.com/en-us/azure/cognitive-services/text-analytics/overview" + }, + "securityDefinitions": { + "apim_key": { + "type": "apiKey", + "name": "Ocp-Apim-Subscription-Key", + "in": "header" + } + }, + "security": [ + { + "apim_key": [] + } + ], + "x-ms-parameterized-host": { + "hostTemplate": "{Endpoint}/text/analytics/v3.0", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/Endpoint" + } + ] + }, + "paths": { + "/entities/recognition/general": { + "post": { + "summary": "Named Entity Recognition", + "description": "The API returns a list of general named entities in a given document. For the list of supported entity types, check Supported Entity Types in Text Analytics API. See the Supported languages in Text Analytics API for the list of enabled languages.", + "operationId": "EntitiesRecognitionGeneral", + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/json" + ], + "parameters": [ + { + "name": "model-version", + "in": "query", + "description": "(Optional) This value indicates which model will be used for scoring. If a model-version is not specified, the API should default to the latest, non-preview version. ", + "required": false, + "type": "string" + }, + { + "name": "showStats", + "in": "query", + "description": "(Optional) if set to true, response will contain input and document level statistics.", + "type": "boolean", + "required": false + }, + { + "in": "body", + "name": "input", + "description": "Collection of documents to analyze.", + "required": true, + "schema": { + "$ref": "#/definitions/MultiLanguageBatchInput" + } + } + ], + "responses": { + "200": { + "description": "A successful call results in a list of recognized entities returned for each valid document.", + "schema": { + "$ref": "#/definitions/EntitiesResult" + } + }, + "default": { + "description": "Error Response", + "schema": { + "$ref": "#/definitions/TextAnalyticsError" + } + } + }, + "x-ms-examples": { + "Successful Entities request": { + "$ref": ".//examples//SuccessfulEntitiesRequest.json" + } + }, + "deprecated": false + } + }, + "/entities/linking": { + "post": { + "summary": "Linked entities from a well-known knowledge base", + "description": "The API returns a list of recognized entities with links to a well-known knowledge base. See the Supported languages in Text Analytics API for the list of enabled languages.", + "operationId": "EntitiesLinking", + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/json" + ], + "parameters": [ + { + "name": "model-version", + "in": "query", + "description": "(Optional) This value indicates which model will be used for scoring. If a model-version is not specified, the API should default to the latest, non-preview version. ", + "type": "string" + }, + { + "name": "showStats", + "in": "query", + "description": "(Optional) if set to true, response will contain input and document level statistics.", + "type": "boolean" + }, + { + "in": "body", + "name": "input", + "description": "Collection of documents to analyze.", + "required": true, + "schema": { + "$ref": "#/definitions/MultiLanguageBatchInput" + } + } + ], + "responses": { + "200": { + "description": "A successful call results in a list of recognized entities with links to a well-known knowledge base returned for each valid document", + "schema": { + "$ref": "#/definitions/EntityLinkingResult" + } + }, + "default": { + "description": "Error Response", + "schema": { + "$ref": "#/definitions/TextAnalyticsError" + } + } + }, + "x-ms-examples": { + "Successful Entity Linking request": { + "$ref": ".//examples//SuccessfulEntityLinkingRequest.json" + } + }, + "deprecated": false + } + }, + "/keyPhrases": { + "post": { + "summary": "Key Phrases", + "description": "The API returns a list of strings denoting the key phrases in the input text. See the Supported languages in Text Analytics API for the list of enabled languages.", + "operationId": "KeyPhrases", + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/json" + ], + "parameters": [ + { + "name": "model-version", + "in": "query", + "description": "(Optional) This value indicates which model will be used for scoring. If a model-version is not specified, the API should default to the latest, non-preview version. ", + "type": "string" + }, + { + "name": "showStats", + "in": "query", + "description": "(Optional) if set to true, response will contain input and document level statistics.", + "type": "boolean" + }, + { + "in": "body", + "name": "input", + "description": "Collection of documents to analyze. Documents can now contain a language field to indicate the text language", + "required": true, + "schema": { + "$ref": "#/definitions/MultiLanguageBatchInput" + } + } + ], + "responses": { + "200": { + "description": "A successful response results in 0 or more key phrases identified in each valid document", + "schema": { + "$ref": "#/definitions/KeyPhraseResult" + } + }, + "default": { + "description": "Error Response", + "schema": { + "$ref": "#/definitions/TextAnalyticsError" + } + } + }, + "x-ms-examples": { + "Successful Key Phrase request": { + "$ref": ".//examples//SuccessfulKeyPhrasesRequest.json" + } + }, + "deprecated": false + } + }, + "/languages": { + "post": { + "summary": "Detect Language", + "description": "The API returns the detected language and a numeric score between 0 and 1. Scores close to 1 indicate 100% certainty that the identified language is true. See the Supported languages in Text Analytics API for the list of enabled languages.", + "operationId": "Languages", + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/json" + ], + "parameters": [ + { + "name": "model-version", + "in": "query", + "description": "(Optional) This value indicates which model will be used for scoring. If a model-version is not specified, the API should default to the latest, non-preview version. ", + "type": "string" + }, + { + "name": "showStats", + "in": "query", + "description": "(Optional) if set to true, response will contain input and document level statistics.", + "type": "boolean" + }, + { + "in": "body", + "name": "input", + "description": "Collection of documents to analyze.", + "required": true, + "schema": { + "$ref": "#/definitions/LanguageBatchInput" + } + } + ], + "responses": { + "200": { + "description": "A successful call results in the detected language with the highest probability for each valid document", + "schema": { + "$ref": "#/definitions/LanguageResult" + } + }, + "default": { + "description": "Error Response", + "schema": { + "$ref": "#/definitions/TextAnalyticsError" + } + } + }, + "x-ms-examples": { + "Successful Detect Language request": { + "$ref": ".//examples//SuccessfulLanguagesRequest.json" + } + }, + "deprecated": false + } + }, + "/sentiment": { + "post": { + "summary": "Sentiment", + "description": "The API returns a sentiment prediction, as well as sentiment scores for each sentiment class (Positive, Negative, and Neutral) for the document and each sentence within it. See the Supported languages in Text Analytics API for the list of enabled languages.", + "operationId": "Sentiment", + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/json" + ], + "parameters": [ + { + "name": "model-version", + "in": "query", + "description": "(Optional) This value indicates which model will be used for scoring. If a model-version is not specified, the API should default to the latest, non-preview version. ", + "type": "string" + }, + { + "name": "showStats", + "in": "query", + "description": "(Optional) if set to true, response will contain input and document level statistics.", + "type": "boolean" + }, + { + "in": "body", + "name": "input", + "description": "Collection of documents to analyze.", + "required": true, + "schema": { + "$ref": "#/definitions/MultiLanguageBatchInput" + } + } + ], + "responses": { + "200": { + "description": "A successful call results in a document sentiment prediction, as well as sentiment scores for each sentiment class (Positive, Negative, and Neutral)", + "schema": { + "$ref": "#/definitions/SentimentResponse" + } + }, + "default": { + "description": "Error Response", + "schema": { + "$ref": "#/definitions/TextAnalyticsError" + } + } + }, + "x-ms-examples": { + "Successful Sentiment request": { + "$ref": ".//examples//SuccessfulSentimentRequest.json" + } + }, + "deprecated": false + } + } + }, + "definitions": { + "MultiLanguageBatchInput": { + "type": "object", + "required": [ + "documents" + ], + "properties": { + "documents": { + "type": "array", + "description": "The set of documents to process as part of this batch.", + "items": { + "$ref": "#/definitions/MultiLanguageInput" + } + } + }, + "description": "Contains a set of input documents to be analyzed by the service." + }, + "MultiLanguageInput": { + "type": "object", + "required": [ + "id", + "text" + ], + "properties": { + "id": { + "type": "string", + "description": "A unique, non-empty document identifier." + }, + "text": { + "type": "string", + "description": "The input text to process." + }, + "language": { + "type": "string", + "description": "(Optional) This is the 2 letter ISO 639-1 representation of a language. For example, use \"en\" for English; \"es\" for Spanish etc. If not set, use \"en\" for English as default." + } + }, + "description": "Contains an input document to be analyzed by the service." + }, + "DocumentError": { + "type": "object", + "required": [ + "id", + "error" + ], + "properties": { + "id": { + "type": "string", + "description": "Document Id." + }, + "error": { + "type": "object", + "description": "Document Error.", + "$ref": "#/definitions/TextAnalyticsError" + } + } + }, + "TextAnalyticsError": { + "type": "object", + "required": [ + "code", + "message" + ], + "properties": { + "code": { + "type": "string", + "enum": [ + "invalidRequest", + "invalidArgument", + "internalServerError", + "serviceUnavailable" + ], + "x-ms-enum": { + "name": "ErrorCodeValue", + "modelAsString": false + }, + "description": "Error code." + }, + "message": { + "type": "string", + "description": "Error message." + }, + "target": { + "type": "string", + "description": "Error target." + }, + "innererror": { + "$ref": "#/definitions/InnerError", + "description": "Inner error contains more specific information." + }, + "details": { + "type": "array", + "description": "Details about specific errors that led to this reported error.", + "items": { + "$ref": "#/definitions/TextAnalyticsError" + } + } + } + }, + "TextAnalyticsWarning": { + "type": "object", + "required": [ + "code", + "message" + ], + "properties": { + "code": { + "type": "string", + "enum": [ + "LongWordsInDocument", + "DocumentTruncated" + ], + "x-ms-enum": { + "name": "WarningCodeValue", + "modelAsString": false + }, + "description": "Error code." + }, + "message": { + "type": "string", + "description": "Warning message." + }, + "targetRef": { + "type": "string", + "description": "A JSON pointer reference indicating the target object." + } + } + }, + "InnerError": { + "type": "object", + "required": [ + "code", + "message" + ], + "properties": { + "code": { + "type": "string", + "enum": [ + "invalidParameterValue", + "invalidRequestBodyFormat", + "emptyRequest", + "missingInputRecords", + "invalidDocument", + "modelVersionIncorrect", + "invalidDocumentBatch", + "unsupportedLanguageCode", + "invalidCountryHint" + ], + "x-ms-enum": { + "name": "InnerErrorCodeValue", + "modelAsString": false + }, + "description": "Error code." + }, + "message": { + "type": "string", + "description": "Error message." + }, + "details": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Error details." + }, + "target": { + "type": "string", + "description": "Error target." + }, + "innererror": { + "$ref": "#/definitions/InnerError", + "description": "Inner error contains more specific information." + } + } + }, + "SentimentResponse": { + "type": "object", + "required": [ + "documents", + "errors", + "modelVersion" + ], + "properties": { + "documents": { + "type": "array", + "description": "Sentiment analysis per document.", + "items": { + "$ref": "#/definitions/DocumentSentiment" + } + }, + "errors": { + "type": "array", + "description": "Errors by document id.", + "items": { + "$ref": "#/definitions/DocumentError" + } + }, + "statistics": { + "$ref": "#/definitions/RequestStatistics" + }, + "modelVersion": { + "type": "string", + "description": "This field indicates which model is used for scoring." + } + } + }, + "DocumentSentiment": { + "type": "object", + "required": [ + "id", + "sentiment", + "confidenceScores", + "sentences", + "warnings" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique, non-empty document identifier." + }, + "sentiment": { + "type": "string", + "description": "Predicted sentiment for document (Negative, Neutral, Positive, or Mixed).", + "enum": [ + "positive", + "neutral", + "negative", + "mixed" + ], + "x-ms-enum": { + "name": "DocumentSentimentValue", + "modelAsString": false + } + }, + "statistics": { + "$ref": "#/definitions/DocumentStatistics" + }, + "confidenceScores": { + "description": "Document level sentiment confidence scores between 0 and 1 for each sentiment class.", + "$ref": "#/definitions/SentimentConfidenceScorePerLabel" + }, + "sentences": { + "type": "array", + "description": "Sentence level sentiment analysis.", + "items": { + "$ref": "#/definitions/SentenceSentiment" + } + }, + "warnings": { + "type": "array", + "description": "Warnings encountered while processing document.", + "items": { + "$ref": "#/definitions/TextAnalyticsWarning" + } + } + } + }, + "RequestStatistics": { + "type": "object", + "required": [ + "documentsCount", + "validDocumentsCount", + "erroneousDocumentsCount", + "transactionsCount" + ], + "properties": { + "documentsCount": { + "type": "integer", + "format": "int32", + "description": "Number of documents submitted in the request." + }, + "validDocumentsCount": { + "type": "integer", + "format": "int32", + "description": "Number of valid documents. This excludes empty, over-size limit or non-supported languages documents." + }, + "erroneousDocumentsCount": { + "type": "integer", + "format": "int32", + "description": "Number of invalid documents. This includes empty, over-size limit or non-supported languages documents." + }, + "transactionsCount": { + "type": "integer", + "format": "int64", + "description": "Number of transactions for the request." + } + }, + "description": "if showStats=true was specified in the request this field will contain information about the request payload." + }, + "DocumentStatistics": { + "type": "object", + "required": [ + "charactersCount", + "transactionsCount" + ], + "properties": { + "charactersCount": { + "type": "integer", + "format": "int32", + "description": "Number of text elements recognized in the document." + }, + "transactionsCount": { + "type": "integer", + "format": "int32", + "description": "Number of transactions for the document." + } + }, + "description": "if showStats=true was specified in the request this field will contain information about the document payload." + }, + "SentimentConfidenceScorePerLabel": { + "type": "object", + "required": [ + "positive", + "neutral", + "negative" + ], + "properties": { + "positive": { + "type": "number", + "format": "double" + }, + "neutral": { + "type": "number", + "format": "double" + }, + "negative": { + "type": "number", + "format": "double" + } + }, + "description": "Represents the confidence scores between 0 and 1 across all sentiment classes: positive, neutral, negative." + }, + "SentenceSentiment": { + "type": "object", + "required": [ + "sentiment", + "confidenceScores", + "offset", + "length" + ], + "properties": { + "text": { + "type": "string", + "description": "The sentence text." + }, + "sentiment": { + "type": "string", + "description": "The predicted Sentiment for the sentence.", + "enum": [ + "positive", + "neutral", + "negative" + ], + "x-ms-enum": { + "name": "SentenceSentimentValue", + "modelAsString": false + } + }, + "confidenceScores": { + "description": "The sentiment confidence score between 0 and 1 for the sentence for all classes.", + "$ref": "#/definitions/SentimentConfidenceScorePerLabel" + }, + "offset": { + "type": "integer", + "format": "int32", + "description": "The sentence offset from the start of the document." + }, + "length": { + "type": "integer", + "format": "int32", + "description": "The length of the sentence by Unicode standard." + } + } + }, + "EntitiesResult": { + "type": "object", + "required": [ + "documents", + "errors", + "modelVersion" + ], + "properties": { + "documents": { + "type": "array", + "description": "Response by document", + "items": { + "$ref": "#/definitions/DocumentEntities" + } + }, + "errors": { + "type": "array", + "description": "Errors by document id.", + "items": { + "$ref": "#/definitions/DocumentError" + } + }, + "statistics": { + "$ref": "#/definitions/RequestStatistics" + }, + "modelVersion": { + "type": "string", + "description": "This field indicates which model is used for scoring." + } + } + }, + "DocumentEntities": { + "type": "object", + "required": [ + "id", + "entities", + "warnings" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique, non-empty document identifier." + }, + "entities": { + "type": "array", + "description": "Recognized entities in the document.", + "items": { + "$ref": "#/definitions/Entity" + } + }, + "warnings": { + "type": "array", + "description": "Warnings encountered while processing document.", + "items": { + "$ref": "#/definitions/TextAnalyticsWarning" + } + }, + "statistics": { + "description": "if showStats=true was specified in the request this field will contain information about the document payload.", + "$ref": "#/definitions/DocumentStatistics" + } + } + }, + "Entity": { + "type": "object", + "required": [ + "text", + "category", + "offset", + "length", + "confidenceScore" + ], + "properties": { + "text": { + "type": "string", + "description": "Entity text as appears in the request." + }, + "category": { + "type": "string", + "description": "Entity type, such as Person/Location/Org/SSN etc" + }, + "subcategory": { + "type": "string", + "description": "Entity sub type, such as Age/Year/TimeRange etc" + }, + "offset": { + "type": "integer", + "format": "int32", + "description": "Start position (in Unicode characters) for the entity text." + }, + "length": { + "type": "integer", + "format": "int32", + "description": "Length (in Unicode characters) for the entity text." + }, + "confidenceScore": { + "type": "number", + "format": "double", + "description": "Confidence score between 0 and 1 of the extracted entity." + } + } + }, + "EntityLinkingResult": { + "type": "object", + "required": [ + "documents", + "errors", + "modelVersion" + ], + "properties": { + "documents": { + "type": "array", + "description": "Response by document", + "items": { + "$ref": "#/definitions/DocumentLinkedEntities" + } + }, + "errors": { + "type": "array", + "description": "Errors by document id.", + "items": { + "$ref": "#/definitions/DocumentError" + } + }, + "statistics": { + "$ref": "#/definitions/RequestStatistics" + }, + "modelVersion": { + "type": "string", + "description": "This field indicates which model is used for scoring." + } + } + }, + "DocumentLinkedEntities": { + "type": "object", + "required": [ + "id", + "entities", + "warnings" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique, non-empty document identifier." + }, + "entities": { + "type": "array", + "description": "Recognized well-known entities in the document.", + "items": { + "$ref": "#/definitions/LinkedEntity" + } + }, + "warnings": { + "type": "array", + "description": "Warnings encountered while processing document.", + "items": { + "$ref": "#/definitions/TextAnalyticsWarning" + } + }, + "statistics": { + "description": "if showStats=true was specified in the request this field will contain information about the document payload.", + "$ref": "#/definitions/DocumentStatistics" + } + } + }, + "LinkedEntity": { + "type": "object", + "required": [ + "name", + "matches", + "language", + "url", + "dataSource" + ], + "properties": { + "name": { + "type": "string", + "description": "Entity Linking formal name." + }, + "matches": { + "type": "array", + "description": "List of instances this entity appears in the text.", + "items": { + "$ref": "#/definitions/Match" + } + }, + "language": { + "type": "string", + "description": "Language used in the data source." + }, + "id": { + "type": "string", + "description": "Unique identifier of the recognized entity from the data source." + }, + "url": { + "type": "string", + "description": "URL for the entity's page from the data source." + }, + "dataSource": { + "type": "string", + "description": "Data source used to extract entity linking, such as Wiki/Bing etc." + } + } + }, + "Match": { + "type": "object", + "required": [ + "confidenceScore", + "text", + "offset", + "length" + ], + "properties": { + "confidenceScore": { + "type": "number", + "format": "double", + "description": "If a well-known item is recognized, a decimal number denoting the confidence level between 0 and 1 will be returned." + }, + "text": { + "type": "string", + "description": "Entity text as appears in the request." + }, + "offset": { + "type": "integer", + "format": "int32", + "description": "Start position (in Unicode characters) for the entity match text." + }, + "length": { + "type": "integer", + "format": "int32", + "description": "Length (in Unicode characters) for the entity match text." + } + } + }, + "KeyPhraseResult": { + "type": "object", + "required": [ + "documents", + "errors", + "modelVersion" + ], + "properties": { + "documents": { + "type": "array", + "description": "Response by document", + "items": { + "$ref": "#/definitions/DocumentKeyPhrases" + } + }, + "errors": { + "type": "array", + "description": "Errors by document id.", + "items": { + "$ref": "#/definitions/DocumentError" + } + }, + "statistics": { + "$ref": "#/definitions/RequestStatistics" + }, + "modelVersion": { + "type": "string", + "description": "This field indicates which model is used for scoring." + } + } + }, + "DocumentKeyPhrases": { + "type": "object", + "required": [ + "id", + "keyPhrases", + "warnings" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique, non-empty document identifier." + }, + "keyPhrases": { + "type": "array", + "description": "A list of representative words or phrases. The number of key phrases returned is proportional to the number of words in the input document.", + "items": { + "type": "string" + } + }, + "warnings": { + "type": "array", + "description": "Warnings encountered while processing document.", + "items": { + "$ref": "#/definitions/TextAnalyticsWarning" + } + }, + "statistics": { + "description": "if showStats=true was specified in the request this field will contain information about the document payload.", + "$ref": "#/definitions/DocumentStatistics" + } + } + }, + "LanguageBatchInput": { + "type": "object", + "required": [ + "documents" + ], + "properties": { + "documents": { + "type": "array", + "items": { + "$ref": "#/definitions/LanguageInput" + } + } + } + }, + "LanguageInput": { + "type": "object", + "required": [ + "id", + "text" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique, non-empty document identifier." + }, + "text": { + "type": "string" + }, + "countryHint": { + "type": "string" + } + } + }, + "LanguageResult": { + "type": "object", + "required": [ + "documents", + "errors", + "modelVersion" + ], + "properties": { + "documents": { + "type": "array", + "description": "Response by document", + "items": { + "$ref": "#/definitions/DocumentLanguage" + } + }, + "errors": { + "type": "array", + "description": "Errors by document id.", + "items": { + "$ref": "#/definitions/DocumentError" + } + }, + "statistics": { + "$ref": "#/definitions/RequestStatistics" + }, + "modelVersion": { + "type": "string", + "description": "This field indicates which model is used for scoring." + } + } + }, + "DocumentLanguage": { + "type": "object", + "required": [ + "id", + "detectedLanguages", + "warnings" + ], + "properties": { + "id": { + "type": "string", + "description": "Unique, non-empty document identifier." + }, + "detectedLanguages": { + "type": "array", + "description": "A list of extracted languages.", + "items": { + "$ref": "#/definitions/DetectedLanguage" + } + }, + "warnings": { + "type": "array", + "description": "Warnings encountered while processing document.", + "items": { + "$ref": "#/definitions/TextAnalyticsWarning" + } + }, + "statistics": { + "description": "if showStats=true was specified in the request this field will contain information about the document payload.", + "$ref": "#/definitions/DocumentStatistics" + } + } + }, + "DetectedLanguage": { + "type": "object", + "required": [ + "name", + "iso6391Name", + "confidenceScore" + ], + "properties": { + "name": { + "type": "string", + "description": "Long name of a detected language (e.g. English, French)." + }, + "iso6391Name": { + "type": "string", + "description": "A two letter representation of the detected language according to the ISO 639-1 standard (e.g. en, fr)." + }, + "confidenceScore": { + "type": "number", + "format": "double", + "description": "A confidence score between 0 and 1. Scores close to 1 indicate 100% certainty that the identified language is true." + } + } + } + }, + "parameters": { + "Endpoint": { + "name": "Endpoint", + "description": "Supported Cognitive Services endpoints (protocol and hostname, for example: https://westus.api.cognitive.microsoft.com).", + "x-ms-parameter-location": "client", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulEntitiesRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulEntitiesRequest.json new file mode 100644 index 000000000000..4217d33a1c61 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulEntitiesRequest.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "input": { + "documents": [ + { + "language": "en", + "id": "1", + "text": "I had a wonderful trip to Seattle last week." + }, + { + "language": "en", + "id": "2", + "text": "I work at Microsoft." + }, + { + "language": "en", + "id": "3", + "text": "I visited Space Needle 2 times." + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "documents": [ + { + "id": "1", + "entities": [ + { + "text": "Seattle", + "category": "Location", + "offset": 26, + "length": 7, + "confidenceScore": 0.80 + }, + { + "text": "last week", + "category": "DateTime", + "subcategory": "DateRange", + "offset": 34, + "length": 9, + "confidenceScore": 0.8 + } + ], + "warnings": [] + }, + { + "id": "2", + "entities": [ + { + "text": "Microsoft", + "category": "Organization", + "offset": 10, + "length": 9, + "confidenceScore": 0.99 + } + ], + "warnings": [] + }, + { + "id": "3", + "entities": [ + { + "text": "Space Needle", + "category": "Organization", + "offset": 10, + "length": 12, + "confidenceScore": 0.75 + }, + { + "text": "2", + "category": "Quantity", + "subcategory": "Number", + "offset": 23, + "length": 1, + "confidenceScore": 0.8 + } + ], + "warnings": [] + } + ], + "errors": [], + "modelVersion": "2020-04-01" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulEntityLinkingRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulEntityLinkingRequest.json new file mode 100644 index 000000000000..ecb5818e578a --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulEntityLinkingRequest.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "input": { + "documents": [ + { + "language": "en", + "id": "1", + "text": "I had a wonderful trip to Seattle last week." + }, + { + "language": "en", + "id": "2", + "text": "I work at Microsoft." + }, + { + "language": "en", + "id": "3", + "text": "I visited Space Needle 2 times." + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "documents": [ + { + "id": "1", + "entities": [ + { + "name": "Seattle", + "matches": [ + { + "text": "Seattle", + "offset": 26, + "length": 7, + "confidenceScore": 0.15 + } + ], + "language": "en", + "id": "Seattle", + "url": "https://en.wikipedia.org/wiki/Seattle", + "dataSource": "Wikipedia" + } + ], + "warnings": [] + }, + { + "id": "2", + "entities": [ + { + "name": "Microsoft", + "matches": [ + { + "text": "Microsoft", + "offset": 10, + "length": 9, + "confidenceScore": 0.18 + } + ], + "language": "en", + "id": "Microsoft", + "url": "https://en.wikipedia.org/wiki/Microsoft", + "dataSource": "Wikipedia" + } + ], + "warnings": [] + }, + { + "id": "3", + "entities": [ + { + "name": "Space Needle", + "matches": [ + { + "text": "Space Needle", + "offset": 10, + "length": 12, + "confidenceScore": 0.15 + } + ], + "language": "en", + "id": "Space Needle", + "url": "https://en.wikipedia.org/wiki/Space_Needle", + "dataSource": "Wikipedia" + } + ], + "warnings": [] + } + ], + "errors": [], + "modelVersion": "2020-04-01" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulKeyPhrasesRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulKeyPhrasesRequest.json new file mode 100644 index 000000000000..77ea9c553b0e --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulKeyPhrasesRequest.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "input": { + "documents": [ + { + "language": "en", + "id": "1", + "text": "Hello world. This is some input text that I love." + }, + { + "language": "fr", + "id": "2", + "text": "Bonjour tout le monde" + }, + { + "language": "es", + "id": "3", + "text": "La carretera estaba atascada. Había mucho tráfico el día de ayer." + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "documents": [ + { + "id": "1", + "keyPhrases": [ + "world", + "input text" + ], + "warnings": [] + }, + { + "id": "2", + "keyPhrases": [ + "monde" + ], + "warnings": [] + }, + { + "id": "3", + "keyPhrases": [ + "carretera", + "tráfico", + "día" + ], + "warnings": [] + } + ], + "errors": [], + "modelVersion": "2020-04-01" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulLanguagesRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulLanguagesRequest.json new file mode 100644 index 000000000000..109e2c90de57 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulLanguagesRequest.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "input": { + "documents": [ + { + "countryHint": "US", + "id": "1", + "text": "Hello world" + }, + { + "id": "2", + "text": "Bonjour tout le monde" + }, + { + "id": "3", + "text": "La carretera estaba atascada. Había mucho tráfico el día de ayer." + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "documents": [ + { + "id": "1", + "detectedLanguages": [ + { + "name": "English", + "iso6391Name": "en", + "confidenceScore": 1 + } + ], + "warnings": [] + }, + { + "id": "2", + "detectedLanguages": [ + { + "name": "French", + "iso6391Name": "fr", + "confidenceScore": 1 + } + ], + "warnings": [] + }, + { + "id": "3", + "detectedLanguages": [ + { + "name": "Spanish", + "iso6391Name": "es", + "confidenceScore": 1 + } + ], + "warnings": [] + } + ], + "errors": [], + "modelVersion": "2020-04-01" + } + } + } +} diff --git a/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulSentimentRequest.json b/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulSentimentRequest.json new file mode 100644 index 000000000000..680392d80510 --- /dev/null +++ b/specification/cognitiveservices/data-plane/TextAnalytics/stable/v3.0/examples/SuccessfulSentimentRequest.json @@ -0,0 +1,127 @@ +{ + "parameters": { + "Ocp-Apim-Subscription-Key": "{API key}", + "Endpoint": "{Endpoint}", + "input": { + "documents": [ + { + "language": "en", + "id": "1", + "text": "Hello world. This is some input text that I love." + }, + { + "language": "en", + "id": "2", + "text": "It's incredibly sunny outside! I'm so happy." + }, + { + "language": "en", + "id": "3", + "text": "Pike place market is my favorite Seattle attraction." + } + ] + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "documents": [ + { + "id": "1", + "sentiment": "positive", + "confidenceScores": { + "positive": 0.98, + "neutral": 0.01, + "negative": 0.01 + }, + "sentences": [ + { + "text": "Hello world.", + "sentiment": "neutral", + "confidenceScores": { + "positive": 0.07, + "neutral": 0.91, + "negative": 0.02 + }, + "offset": 0, + "length": 12 + }, + { + "text": "This is some input text that I love.", + "sentiment": "positive", + "confidenceScores": { + "positive": 0.98, + "neutral": 0.01, + "negative": 0.01 + }, + "offset": 13, + "length": 36 + } + ], + "warnings": [] + }, + { + "id": "2", + "sentiment": "positive", + "confidenceScores": { + "positive": 0.98, + "neutral": 0.01, + "negative": 0.01 + }, + "sentences": [ + { + "text": "It's incredibly sunny outside!", + "sentiment": "neutral", + "confidenceScores": { + "positive": 0.04, + "neutral": 0.93, + "negative": 0.03 + }, + "offset": 0, + "length": 30 + }, + { + "text": "I'm so happy.", + "sentiment": "positive", + "confidenceScores": { + "positive": 0.98, + "neutral": 0.01, + "negative": 0.01 + }, + "offset": 31, + "length": 13 + } + ], + "warnings": [] + }, + { + "id": "3", + "sentiment": "positive", + "confidenceScores": { + "positive": 0.98, + "neutral": 0.01, + "negative": 0.01 + }, + "sentences": [ + { + "text": "Pike place market is my favorite Seattle attraction.", + "sentiment": "positive", + "confidenceScores": { + "positive": 0.98, + "neutral": 0.01, + "negative": 0.01 + }, + "offset": 0, + "length": 52 + } + ], + "warnings": [] + } + ], + "errors": [], + "modelVersion": "2020-04-01" + } + } + } +} diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/cognitiveservices.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/cognitiveservices.json index a0d747af107d..97638fdad4bf 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/cognitiveservices.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/cognitiveservices.json @@ -37,6 +37,9 @@ "x-ms-examples": { "Create Account": { "$ref": "./examples/CreateAccount.json" + }, + "Create Account Min": { + "$ref": "./examples/CreateAccountMin.json" } }, "parameters": [ @@ -812,6 +815,10 @@ "type": "string", "description": "Resource type", "readOnly": true + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of Cognitive Services account." } }, "x-ms-azure-resource": true @@ -870,6 +877,17 @@ "$ref": "#/definitions/NetworkRuleSet", "description": "A collection of rules governing the accessibility from specific network locations." }, + "encryption": { + "$ref": "#/definitions/Encryption", + "description": "The encryption properties for this resource." + }, + "userOwnedStorage": { + "type": "array", + "items": { + "$ref": "#/definitions/UserOwnedStorage" + }, + "description": "The storage accounts for this resource." + }, "apiProperties": { "$ref": "#/definitions/CognitiveServicesAccountApiProperties", "description": "The api properties for special APIs." @@ -1434,6 +1452,105 @@ "id" ], "description": "A rule governing the accessibility from a specific virtual network." + }, + "Identity": { + "description": "Managed service identity.", + "type": "object", + "properties": { + "type": { + "description": "Type of managed service identity.", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned" + ], + "type": "string", + "x-ms-enum": { + "name": "IdentityType", + "modelAsString": false + } + }, + "tenantId": { + "description": "Tenant of managed service identity.", + "type": "string", + "readOnly": true + }, + "principalId": { + "description": "Principal Id of managed service identity.", + "type": "string", + "readOnly": true + }, + "userAssignedIdentities": { + "description": "The list of user assigned identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}", + "type": "object", + "additionalProperties": { + "description": "User-assigned managed identity.", + "$ref": "#/definitions/UserAssignedIdentity" + } + } + } + }, + "UserAssignedIdentity": { + "type": "object", + "description": "User-assigned managed identity.", + "properties": { + "principalId": { + "type": "string", + "description": "Azure Active Directory principal ID associated with this Identity." + }, + "clientId": { + "type": "string", + "description": "Client App Id associated with this identity." + } + } + }, + "Encryption": { + "properties": { + "keyVaultProperties": { + "$ref": "#/definitions/KeyVaultProperties", + "description": "Properties of KeyVault" + }, + "keySource": { + "type": "string", + "description": "Enumerates the possible value of keySource for Encryption", + "default": "Microsoft.KeyVault", + "enum": [ + "Microsoft.CognitiveServices", + "Microsoft.KeyVault" + ], + "x-ms-enum": { + "name": "keySource", + "modelAsString": true + } + } + }, + "description": "Properties to configure Encryption" + }, + "KeyVaultProperties": { + "properties": { + "keyName": { + "type": "string", + "description": "Name of the Key from KeyVault" + }, + "keyVersion": { + "type": "string", + "description": "Version of the Key from KeyVault" + }, + "keyVaultUri": { + "type": "string", + "description": "Uri of KeyVault" + } + }, + "description": "Properties to configure keyVault Properties" + }, + "UserOwnedStorage": { + "properties": { + "resourceId": { + "type": "string", + "description": "Full resource id of a Microsoft.Storage resource." + } + }, + "description": "The user owned storage for Cognitive Services account." } }, "parameters": { diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CheckDomainAvailability.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CheckDomainAvailability.json index 65fe3be46b54..87b331d5d723 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CheckDomainAvailability.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CheckDomainAvailability.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2017-04-18", - "subscriptionId": "f9b96b36-1f5e-4021-8959-51527e26e6d3", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "location": "westus", "parameters": { "subdomainName": "contosodemoapp1", diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CheckSkuAvailability.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CheckSkuAvailability.json index a3b259417294..d8e7bd7b7cb7 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CheckSkuAvailability.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CheckSkuAvailability.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2017-04-18", - "subscriptionId": "f9b96b36-1f5e-4021-8959-51527e26e6d3", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "location": "westus", "parameters": { "skus": [ diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CreateAccount.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CreateAccount.json index 89c1b013bdd2..ac85d6759873 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CreateAccount.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CreateAccount.json @@ -1,8 +1,8 @@ { "parameters": { "api-version": "2017-04-18", - "subscriptionId": "f9b96b36-1f5e-4021-8959-51527e26e6d3", - "resourceGroupName": "felixwa-01", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", "accountName": "testCreate1", "account": { "location": "West US", @@ -10,13 +10,30 @@ "sku": { "name": "S0" }, - "properties": {} + "properties": { + "encryption": { + "keyVaultProperties": { + "keyName": "KeyName", + "keyVersion": "891CF236-D241-4738-9462-D506AF493DFA", + "keyVaultUri": "https://pltfrmscrts-use-pc-dev.vault.azure.net/" + }, + "keySource": "Microsoft.KeyVault" + }, + "userOwnedStorage": [ + { + "resourceId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount" + } + ] + }, + "identity": { + "type": "SystemAssigned" + } } }, "responses": { "200": { "body": { - "id": "/subscriptions/f9b96b36-1f5e-4021-8959-51527e26e6d3/resourceGroups/felixwa-01/providers/Microsoft.CognitiveServices/accounts/testCreate1", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.CognitiveServices/accounts/testCreate1", "name": "testCreate1", "type": "Microsoft.CognitiveServices/accounts", "location": "West US", @@ -28,13 +45,31 @@ "properties": { "endpoint": "https://westus.api.cognitive.microsoft.com/emotion/v1.0", "provisioningState": "Succeeded", - "internalId": "9dc1c5b9bb95486aa63899acdaebd9a0" + "internalId": "9dc1c5b9bb95486aa63899acdaebd9a0", + "encryption": { + "keySource": "Microsoft.KeyVault", + "keyVaultProperties": { + "keyName": "FakeKeyName", + "keyVersion": "891CF236-D241-4738-9462-D506AF493DFA", + "keyVaultUri": "https://pltfrmscrts-use-pc-dev.vault.azure.net/" + } + }, + "userOwnedStorage": [ + { + "resourceId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount" + } + ] + }, + "identity": { + "principalId": "b5cf119e-a5c2-42c7-802f-592e0efb169f", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" } } }, "201": { "body": { - "id": "/subscriptions/f9b96b36-1f5e-4021-8959-51527e26e6d3/resourceGroups/felixwa-01/providers/Microsoft.CognitiveServices/accounts/testCreate1", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.CognitiveServices/accounts/testCreate1", "name": "testCreate1", "type": "Microsoft.CognitiveServices/accounts", "location": "West US", @@ -46,13 +81,31 @@ "properties": { "endpoint": "https://westus.api.cognitive.microsoft.com/emotion/v1.0", "provisioningState": "Succeeded", - "internalId": "9dc1c5b9bb95486aa63899acdaebd9a0" + "internalId": "9dc1c5b9bb95486aa63899acdaebd9a0", + "encryption": { + "keySource": "Microsoft.KeyVault", + "keyVaultProperties": { + "keyName": "FakeKeyName", + "keyVersion": "891CF236-D241-4738-9462-D506AF493DFA", + "keyVaultUri": "https://pltfrmscrts-use-pc-dev.vault.azure.net/" + } + }, + "userOwnedStorage": [ + { + "resourceId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount" + } + ] + }, + "identity": { + "principalId": "b5cf119e-a5c2-42c7-802f-592e0efb169f", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" } } }, "202": { "body": { - "id": "/subscriptions/f9b96b36-1f5e-4021-8959-51527e26e6d3/resourceGroups/felixwa-01/providers/Microsoft.CognitiveServices/accounts/testCreate1", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.CognitiveServices/accounts/testCreate1", "name": "testCreate1", "type": "Microsoft.CognitiveServices/accounts", "location": "West US", @@ -64,7 +117,25 @@ "properties": { "endpoint": "https://westus.api.cognitive.microsoft.com/emotion/v1.0", "provisioningState": "Succeeded", - "internalId": "9dc1c5b9bb95486aa63899acdaebd9a0" + "internalId": "9dc1c5b9bb95486aa63899acdaebd9a0", + "encryption": { + "keySource": "Microsoft.KeyVault", + "keyVaultProperties": { + "keyName": "FakeKeyName", + "keyVersion": "891CF236-D241-4738-9462-D506AF493DFA", + "keyVaultUri": "https://pltfrmscrts-use-pc-dev.vault.azure.net/" + } + }, + "userOwnedStorage": [ + { + "resourceId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount" + } + ] + }, + "identity": { + "principalId": "b5cf119e-a5c2-42c7-802f-592e0efb169f", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" } } } diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CreateAccountMin.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CreateAccountMin.json new file mode 100644 index 000000000000..3225934ca1d0 --- /dev/null +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/CreateAccountMin.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "api-version": "2017-04-18", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "accountName": "testCreate1", + "account": { + "location": "West US", + "kind": "CognitiveServices", + "sku": { + "name": "S0" + }, + "properties": {}, + "identity": { + "type": "SystemAssigned" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.CognitiveServices/accounts/testCreate1", + "name": "testCreate1", + "type": "Microsoft.CognitiveServices/accounts", + "location": "West US", + "sku": { + "name": "S0" + }, + "kind": "Emotion", + "etag": "W/\"datetime'2017-04-10T08%3A00%3A05.445595Z'\"", + "properties": { + "endpoint": "https://westus.api.cognitive.microsoft.com/emotion/v1.0", + "provisioningState": "Succeeded", + "internalId": "9dc1c5b9bb95486aa63899acdaebd9a0" + }, + "identity": { + "principalId": "b5cf119e-a5c2-42c7-802f-592e0efb169f", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.CognitiveServices/accounts/testCreate1", + "name": "testCreate1", + "type": "Microsoft.CognitiveServices/accounts", + "location": "West US", + "sku": { + "name": "S0" + }, + "kind": "Emotion", + "etag": "W/\"datetime'2017-04-10T07%3A57%3A48.4582781Z'\"", + "properties": { + "endpoint": "https://westus.api.cognitive.microsoft.com/emotion/v1.0", + "provisioningState": "Succeeded", + "internalId": "9dc1c5b9bb95486aa63899acdaebd9a0" + }, + "identity": { + "principalId": "b5cf119e-a5c2-42c7-802f-592e0efb169f", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.CognitiveServices/accounts/testCreate1", + "name": "testCreate1", + "type": "Microsoft.CognitiveServices/accounts", + "location": "West US", + "sku": { + "name": "S0" + }, + "kind": "Emotion", + "etag": "W/\"datetime'2017-04-10T07%3A57%3A48.4582781Z'\"", + "properties": { + "endpoint": "https://westus.api.cognitive.microsoft.com/emotion/v1.0", + "provisioningState": "Succeeded", + "internalId": "9dc1c5b9bb95486aa63899acdaebd9a0" + }, + "identity": { + "principalId": "b5cf119e-a5c2-42c7-802f-592e0efb169f", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + } + } + } + } +} diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/DeleteAccount.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/DeleteAccount.json index cd0244d1544b..423e42527176 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/DeleteAccount.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/DeleteAccount.json @@ -1,8 +1,8 @@ { "parameters": { "api-version": "2017-04-18", - "subscriptionId": "f9b96b36-1f5e-4021-8959-51527e26e6d3", - "resourceGroupName": "felixwa-01", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", "accountName": "PropTest01" }, "responses": { diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/GetAccount.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/GetAccount.json index 3c3d1b7d3ed4..53d581055e1f 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/GetAccount.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/GetAccount.json @@ -1,15 +1,15 @@ { "parameters": { "api-version": "2017-04-18", - "subscriptionId": "f9b96b36-1f5e-4021-8959-51527e26e6d3", - "resourceGroupName": "felixwa-01", - "accountName": "felixwatest1" + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "accountName": "myAccount" }, "responses": { "200": { "body": { - "id": "/subscriptions/f9b96b36-1f5e-4021-8959-51527e26e6d3/resourceGroups/felixwa-01/providers/Microsoft.CognitiveServices/accounts/felixwatest1", - "name": "felixwatest1", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.CognitiveServices/accounts/myAccount", + "name": "myAccount", "type": "Microsoft.CognitiveServices/accounts", "location": "westus", "sku": { diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/GetUsages.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/GetUsages.json index 40250856670b..0c3a973f67fe 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/GetUsages.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/GetUsages.json @@ -2,7 +2,7 @@ "parameters": { "api-version": "2017-04-18", "subscriptionId": "5a4f5c2e-6983-4ccb-bd34-2196d5b5bbd3", - "resourceGroupName": "felixwa-01", + "resourceGroupName": "myResourceGroup", "accountName": "TestUsage02" }, "responses": { diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListAccountsByResourceGroup.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListAccountsByResourceGroup.json index d6f656c9ef28..72504ce83dc1 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListAccountsByResourceGroup.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListAccountsByResourceGroup.json @@ -1,16 +1,16 @@ { "parameters": { "api-version": "2017-04-18", - "subscriptionId": "f9b96b36-1f5e-4021-8959-51527e26e6d3", - "resourceGroupName": "felixwa-01" + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup" }, "responses": { "200": { "body": { "value": [ { - "id": "/subscriptions/f9b96b36-1f5e-4021-8959-51527e26e6d3/resourceGroups/felixwa-01/providers/Microsoft.CognitiveServices/accounts/felixwatest1", - "name": "felixwatest1", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.CognitiveServices/accounts/myAccount", + "name": "myAccount", "type": "Microsoft.CognitiveServices/accounts", "location": "westus", "sku": { @@ -29,7 +29,7 @@ } }, { - "id": "/subscriptions/f9b96b36-1f5e-4021-8959-51527e26e6d3/resourceGroups/felixwa-01/providers/Microsoft.CognitiveServices/accounts/TestPropertyWU2", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.CognitiveServices/accounts/TestPropertyWU2", "name": "TestPropertyWU2", "type": "Microsoft.CognitiveServices/accounts", "location": "westus", diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListAccountsBySubscription.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListAccountsBySubscription.json index 56d3877c167c..5757a59b23d3 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListAccountsBySubscription.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListAccountsBySubscription.json @@ -1,14 +1,14 @@ { "parameters": { "api-version": "2017-04-18", - "subscriptionId": "f9b96b36-1f5e-4021-8959-51527e26e6d3" + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" }, "responses": { "200": { "body": { "value": [ { - "id": "/subscriptions/f9b96b36-1f5e-4021-8959-51527e26e6d3/resourceGroups/bvttest/providers/Microsoft.CognitiveServices/accounts/bingSearch", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/bvttest/providers/Microsoft.CognitiveServices/accounts/bingSearch", "name": "bingSearch", "type": "Microsoft.CognitiveServices/accounts", "location": "global", @@ -24,7 +24,7 @@ } }, { - "id": "/subscriptions/f9b96b36-1f5e-4021-8959-51527e26e6d3/resourceGroups/bvttest/providers/Microsoft.CognitiveServices/accounts/CrisProd", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/bvttest/providers/Microsoft.CognitiveServices/accounts/CrisProd", "name": "CrisProd", "type": "Microsoft.CognitiveServices/accounts", "location": "westus", @@ -43,7 +43,7 @@ } }, { - "id": "/subscriptions/f9b96b36-1f5e-4021-8959-51527e26e6d3/resourceGroups/bvttest/providers/Microsoft.CognitiveServices/accounts/rayrptest0308", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/bvttest/providers/Microsoft.CognitiveServices/accounts/rayrptest0308", "name": "rayrptest0308", "type": "Microsoft.CognitiveServices/accounts", "location": "westus", @@ -59,7 +59,7 @@ } }, { - "id": "/subscriptions/f9b96b36-1f5e-4021-8959-51527e26e6d3/resourceGroups/bvttest/providers/Microsoft.CognitiveServices/accounts/raytest02", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/bvttest/providers/Microsoft.CognitiveServices/accounts/raytest02", "name": "raytest02", "type": "Microsoft.CognitiveServices/accounts", "location": "westus", diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListKeys.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListKeys.json index d28be3e1f80b..db539b01627a 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListKeys.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListKeys.json @@ -1,9 +1,9 @@ { "parameters": { "api-version": "2017-04-18", - "subscriptionId": "f9b96b36-1f5e-4021-8959-51527e26e6d3", - "resourceGroupName": "felixwa-01", - "accountName": "felixwatest1" + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "accountName": "myAccount" }, "responses": { "200": { diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListSkus.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListSkus.json index 2beeae951aca..5b8fdce3a688 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListSkus.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/ListSkus.json @@ -1,9 +1,9 @@ { "parameters": { "api-version": "2017-04-18", - "subscriptionId": "f9b96b36-1f5e-4021-8959-51527e26e6d3", - "resourceGroupName": "felixwa-01", - "accountName": "felixwatest1" + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "accountName": "myAccount" }, "responses": { "200": { diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/RegenerateKey.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/RegenerateKey.json index 541529babd1d..0d12fa3590ca 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/RegenerateKey.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/RegenerateKey.json @@ -1,9 +1,9 @@ { "parameters": { "api-version": "2017-04-18", - "subscriptionId": "f9b96b36-1f5e-4021-8959-51527e26e6d3", - "resourceGroupName": "felixwa-01", - "accountName": "felixwatest1", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "accountName": "myAccount", "parameters": { "keyName": "Key2" } diff --git a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/UpdateAccount.json b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/UpdateAccount.json index e4ba6c016f26..eca3f0d116f3 100644 --- a/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/UpdateAccount.json +++ b/specification/cognitiveservices/resource-manager/Microsoft.CognitiveServices/stable/2017-04-18/examples/UpdateAccount.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2017-04-18", - "subscriptionId": "f9b96b36-1f5e-4021-8959-51527e26e6d3", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "resourceGroupName": "bvttest", "accountName": "bingSearch", "account": { @@ -13,7 +13,7 @@ "responses": { "200": { "body": { - "id": "/subscriptions/f9b96b36-1f5e-4021-8959-51527e26e6d3/resourceGroups/bvttest/providers/Microsoft.CognitiveServices/accounts/bingSearch", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/bvttest/providers/Microsoft.CognitiveServices/accounts/bingSearch", "name": "bingSearch", "type": "Microsoft.CognitiveServices/accounts", "location": "global", @@ -31,7 +31,7 @@ }, "202": { "body": { - "id": "/subscriptions/f9b96b36-1f5e-4021-8959-51527e26e6d3/resourceGroups/bvttest/providers/Microsoft.CognitiveServices/accounts/bingSearch", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/bvttest/providers/Microsoft.CognitiveServices/accounts/bingSearch", "name": "bingSearch", "type": "Microsoft.CognitiveServices/accounts", "location": "global", diff --git a/specification/cognitiveservices/resource-manager/readme.cli.md b/specification/cognitiveservices/resource-manager/readme.cli.md new file mode 100644 index 000000000000..f17e2a6fd19e --- /dev/null +++ b/specification/cognitiveservices/resource-manager/readme.cli.md @@ -0,0 +1,24 @@ +## CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +cli: + test-scenario: + - name: /Accounts/put/Create Account Min + - name: /Accounts/put/Create Account + disabled: true + - name: /Accounts/get/Get Usages + - name: /Accounts/get/List SKUs + - name: /Accounts/get/Get Account + - name: /Accounts/get/List Accounts by Resource Group + - name: /Accounts/get/List Accounts by Subscription + - name: /ResourceSkus/get/Regenerate Keys + - name: /Operations/get/Get Operations + - name: /Accounts/post/Regenerate Keys + - name: /Accounts/post/List Keys + - name: /Accounts/patch/Update Account + disabled: true + - name: //post/Check SKU Availability + - name: //post/Check SKU Availability + - name: /Accounts/delete/Delete Account \ No newline at end of file diff --git a/specification/common-types/resource-management/v1/types.json b/specification/common-types/resource-management/v1/types.json index 1b94157d218e..7415ea29529d 100644 --- a/specification/common-types/resource-management/v1/types.json +++ b/specification/common-types/resource-management/v1/types.json @@ -348,7 +348,7 @@ }, "systemData": { "description": "Metadata pertaining to creation and last modification of the resource.", - "type": "object", + "type": "object", "readOnly": true, "properties": { "createdBy": { @@ -392,15 +392,15 @@ "modelAsString": true } }, - "lastModifiedByAt": { + "lastModifiedAt": { "type": "string", - "format":"date-time", + "format": "date-time", "description": "The type of identity that last modified the resource." } } }, - "encryptionProperties":{ - "description":"Configuration of key for data encryption", + "encryptionProperties": { + "description": "Configuration of key for data encryption", "type": "object", "properties": { "status": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/preview/2016-04-30-preview/compute.json b/specification/compute/resource-manager/Microsoft.Compute/preview/2016-04-30-preview/compute.json index 22d2518fce90..17e66dd47658 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/preview/2016-04-30-preview/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/preview/2016-04-30-preview/compute.json @@ -785,11 +785,11 @@ "description": "A valid image SKU." }, { - "name": "$filter", + "name": "$expand", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation." + "description": "The expand expression to apply on the operation." }, { "name": "$top", @@ -821,8 +821,7 @@ } } } - }, - "x-ms-odata": "#/definitions/VirtualMachineImageResource" + } } }, "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2015-06-15/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2015-06-15/compute.json index f085ccef295c..66735a54b30d 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2015-06-15/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2015-06-15/compute.json @@ -711,11 +711,11 @@ "description": "A valid image SKU." }, { - "name": "$filter", + "name": "$expand", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation." + "description": "The expand expression to apply on the operation." }, { "name": "$top", @@ -747,8 +747,7 @@ } } } - }, - "x-ms-odata": "#/definitions/VirtualMachineImageResource" + } } }, "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers": { @@ -3319,7 +3318,7 @@ "description": "Specifies the version of the platform image or marketplace image used to create the virtual machine. The allowed formats are Major.Minor.Build or 'latest'. Major, Minor, and Build are decimal numbers. Specify 'latest' to use the latest version of an image available at deploy time. Even if you use 'latest', the VM image will not automatically update after deploy time even if a new version becomes available." } }, - "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations." + "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations. NOTE: Image reference publisher and offer can only be set when you create the scale set." }, "KeyVaultSecretReference": { "properties": { @@ -4006,7 +4005,7 @@ "description": "Specifies the number of virtual machines in the scale set." } }, - "description": "Describes a virtual machine scale set sku." + "description": "Describes a virtual machine scale set sku. NOTE: If the new VM SKU is not supported on the hardware the scale set is currently on, you need to deallocate the VMs in the scale set before you modify the SKU name." }, "UpgradePolicy": { "properties": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2016-03-30/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2016-03-30/compute.json index 2633249aaa27..939d08a0e931 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2016-03-30/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2016-03-30/compute.json @@ -792,11 +792,11 @@ "description": "A valid image SKU." }, { - "name": "$filter", + "name": "$expand", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation." + "description": "The expand expression to apply on the operation." }, { "name": "$top", @@ -828,8 +828,7 @@ } } } - }, - "x-ms-odata": "#/definitions/VirtualMachineImageResource" + } } }, "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers": { @@ -3426,7 +3425,7 @@ "description": "Specifies the version of the platform image or marketplace image used to create the virtual machine. The allowed formats are Major.Minor.Build or 'latest'. Major, Minor, and Build are decimal numbers. Specify 'latest' to use the latest version of an image available at deploy time. Even if you use 'latest', the VM image will not automatically update after deploy time even if a new version becomes available." } }, - "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations." + "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations. NOTE: Image reference publisher and offer can only be set when you create the scale set." }, "KeyVaultSecretReference": { "properties": { @@ -4148,7 +4147,7 @@ "description": "Specifies the number of virtual machines in the scale set." } }, - "description": "Describes a virtual machine scale set sku." + "description": "Describes a virtual machine scale set sku. NOTE: If the new VM SKU is not supported on the hardware the scale set is currently on, you need to deallocate the VMs in the scale set before you modify the SKU name." }, "UpgradePolicy": { "properties": { diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/compute.json index 3220166fd21f..9cb759885ebe 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-03-30/compute.json @@ -801,11 +801,11 @@ "description": "A valid image SKU." }, { - "name": "$filter", + "name": "$expand", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation." + "description": "The expand expression to apply on the operation." }, { "name": "$top", @@ -837,8 +837,7 @@ } } } - }, - "x-ms-odata": "#/definitions/VirtualMachineImageResource" + } } }, "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers": { @@ -4490,7 +4489,7 @@ "$ref": "#/definitions/SubResource" } ], - "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations." + "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations. NOTE: Image reference publisher and offer can only be set when you create the scale set." }, "KeyVaultSecretReference": { "properties": { @@ -4580,7 +4579,7 @@ }, "StorageAccountType": { "type": "string", - "description": "Specifies the storage account type for the managed disk. Possible values are: Standard_LRS or Premium_LRS.", + "description": "Specifies the storage account type for the managed disk. Possible values are: Standard_LRS or Premium_LRS. NOTE: Managed OS disk storage account type can only be set when you create the scale set.", "enum": [ "Standard_LRS", "Premium_LRS" @@ -5304,7 +5303,7 @@ "capacity": { "type": "integer", "format": "int64", - "description": "Specifies the number of virtual machines in the scale set." + "description": "Specifies the number of virtual machines in the scale set. NOTE: If the new VM SKU is not supported on the hardware the scale set is currently on, you need to deallocate the VMs in the scale set before you modify the SKU name." } }, "description": "Describes a virtual machine scale set sku." @@ -6107,7 +6106,7 @@ "description": "The load balancer inbound nat pools." } }, - "description": "Describes a virtual machine scale set network profile's IP configuration properties." + "description": "Describes a virtual machine scale set network profile's IP configuration properties. NOTE: The subnet of a scale set may be modified as long as the original subnet and the new subnet are in the same virtual network." }, "VirtualMachineScaleSetIPConfiguration": { "properties": { @@ -6547,7 +6546,7 @@ }, "singlePlacementGroup": { "type": "boolean", - "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines." + "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines. NOTE: If singlePlacementGroup is true, it may be modified to false. However, if singlePlacementGroup is false, it may not be modified to true." } }, "description": "Describes the properties of a Virtual Machine Scale Set." @@ -6575,7 +6574,7 @@ "items": { "type": "string" }, - "description": "The virtual machine scale set zones." + "description": "The virtual machine scale set zones. NOTE: Availability zones can only be set when you create the scale set." } }, "allOf": [ diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-09-01/examples/ListAvailableResourceSkus.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-09-01/examples/ListAvailableResourceSkus.json index 8e99ea6ab92a..9c7faac7e13a 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-09-01/examples/ListAvailableResourceSkus.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-09-01/examples/ListAvailableResourceSkus.json @@ -78,7 +78,8 @@ { "location": "westus", "zones": [ - "westus-AZ01" + "1", + "2" ] } ], @@ -158,8 +159,9 @@ { "location": "westus", "zones": [ - "westus-AZ02", - "westus-AZ01" + "1", + "2", + "3" ] } ], diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/compute.json index c2a57fceccbe..0cb61c92bf74 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2017-12-01/compute.json @@ -872,11 +872,11 @@ "description": "A valid image SKU." }, { - "name": "$filter", + "name": "$expand", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation." + "description": "The expand expression to apply on the operation." }, { "name": "$top", @@ -908,8 +908,7 @@ } } } - }, - "x-ms-odata": "#/definitions/VirtualMachineImageResource" + } } }, "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers": { @@ -5254,7 +5253,7 @@ "$ref": "#/definitions/SubResource" } ], - "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations." + "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations. NOTE: Image reference publisher and offer can only be set when you create the scale set." }, "KeyVaultSecretReference": { "properties": { @@ -5344,7 +5343,7 @@ }, "StorageAccountType": { "type": "string", - "description": "Specifies the storage account type for the managed disk. Possible values are: Standard_LRS or Premium_LRS.", + "description": "Specifies the storage account type for the managed disk. Possible values are: Standard_LRS or Premium_LRS. NOTE: Managed OS disk storage account type can only be set when you create the scale set.", "enum": [ "Standard_LRS", "Premium_LRS" @@ -6130,7 +6129,7 @@ "description": "Specifies the number of virtual machines in the scale set." } }, - "description": "Describes a virtual machine scale set sku." + "description": "Describes a virtual machine scale set sku. NOTE: If the new VM SKU is not supported on the hardware the scale set is currently on, you need to deallocate the VMs in the scale set before you modify the SKU name." }, "AutoOSUpgradePolicy": { "properties": { @@ -6770,7 +6769,7 @@ "description": "The load balancer inbound nat pools." } }, - "description": "Describes a virtual machine scale set network profile's IP configuration properties." + "description": "Describes a virtual machine scale set network profile's IP configuration properties. NOTE: The subnet of a scale set may be modified as long as the original subnet and the new subnet are in the same virtual network." }, "VirtualMachineScaleSetIPConfiguration": { "properties": { @@ -7251,7 +7250,7 @@ }, "singlePlacementGroup": { "type": "boolean", - "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines." + "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines. NOTE: If singlePlacementGroup is true, it may be modified to false. However, if singlePlacementGroup is false, it may not be modified to true." } }, "description": "Describes the properties of a Virtual Machine Scale Set." @@ -7279,7 +7278,7 @@ "items": { "type": "string" }, - "description": "The virtual machine scale set zones." + "description": "The virtual machine scale set zones. NOTE: Availability zones can only be set when you create the scale set." } }, "allOf": [ diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/compute.json index 488a46c3bea0..e0f8125e5df8 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-04-01/compute.json @@ -1130,11 +1130,11 @@ "description": "A valid image SKU." }, { - "name": "$filter", + "name": "$expand", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation." + "description": "The expand expression to apply on the operation." }, { "name": "$top", @@ -1166,8 +1166,7 @@ } } } - }, - "x-ms-odata": "#/definitions/VirtualMachineImageResource" + } } }, "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers": { @@ -5433,7 +5432,7 @@ "$ref": "#/definitions/SubResource" } ], - "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations." + "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations. NOTE: Image reference publisher and offer can only be set when you create the scale set." }, "KeyVaultSecretReference": { "properties": { @@ -5523,7 +5522,7 @@ }, "StorageAccountType": { "type": "string", - "description": "Specifies the storage account type for the managed disk. Possible values are: Standard_LRS, Premium_LRS, and StandardSSD_LRS.", + "description": "Specifies the storage account type for the managed disk. Possible values are: Standard_LRS, Premium_LRS, and StandardSSD_LRS. NOTE: Managed OS disk storage account type can only be set when you create the scale set.", "enum": [ "Standard_LRS", "Premium_LRS", @@ -6319,7 +6318,7 @@ "description": "Specifies the number of virtual machines in the scale set." } }, - "description": "Describes a virtual machine scale set sku." + "description": "Describes a virtual machine scale set sku. NOTE: If the new VM SKU is not supported on the hardware the scale set is currently on, you need to deallocate the VMs in the scale set before you modify the SKU name." }, "AutoOSUpgradePolicy": { "properties": { @@ -6969,7 +6968,7 @@ "description": "The load balancer inbound nat pools." } }, - "description": "Describes a virtual machine scale set network profile's IP configuration properties." + "description": "Describes a virtual machine scale set network profile's IP configuration properties. NOTE: The subnet of a scale set may be modified as long as the original subnet and the new subnet are in the same virtual network." }, "VirtualMachineScaleSetIPConfiguration": { "properties": { @@ -7474,7 +7473,7 @@ }, "singlePlacementGroup": { "type": "boolean", - "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines." + "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines. NOTE: If singlePlacementGroup is true, it may be modified to false. However, if singlePlacementGroup is false, it may not be modified to true." }, "proximityPlacementGroup": { "$ref": "#/definitions/SubResource", @@ -7506,7 +7505,7 @@ "items": { "type": "string" }, - "description": "The virtual machine scale set zones." + "description": "The virtual machine scale set zones. NOTE: Availability zones can only be set when you create the scale set." } }, "allOf": [ diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-06-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-06-01/compute.json index 0e150b7de7f7..6ec3b585ce05 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-06-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-06-01/compute.json @@ -1130,11 +1130,11 @@ "description": "A valid image SKU." }, { - "name": "$filter", + "name": "$expand", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation." + "description": "The expand expression to apply on the operation." }, { "name": "$top", @@ -1166,8 +1166,7 @@ } } } - }, - "x-ms-odata": "#/definitions/VirtualMachineImageResource" + } } }, "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers": { @@ -5573,7 +5572,7 @@ "$ref": "#/definitions/SubResource" } ], - "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations." + "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations. NOTE: Image reference publisher and offer can only be set when you create the scale set." }, "KeyVaultSecretReference": { "properties": { @@ -5663,7 +5662,7 @@ }, "StorageAccountType": { "type": "string", - "description": "Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.", + "description": "Specifies the storage account type for the managed disk. Managed OS disk storage account type can only be set when you create the scale set. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.", "enum": [ "Standard_LRS", "Premium_LRS", @@ -6517,7 +6516,7 @@ "description": "Specifies the number of virtual machines in the scale set." } }, - "description": "Describes a virtual machine scale set sku." + "description": "Describes a virtual machine scale set sku. NOTE: If the new VM SKU is not supported on the hardware the scale set is currently on, you need to deallocate the VMs in the scale set before you modify the SKU name." }, "AutoOSUpgradePolicy": { "properties": { @@ -7197,7 +7196,7 @@ "description": "The load balancer inbound nat pools." } }, - "description": "Describes a virtual machine scale set network profile's IP configuration properties." + "description": "Describes a virtual machine scale set network profile's IP configuration properties. NOTE: The subnet of a scale set may be modified as long as the original subnet and the new subnet are in the same virtual network." }, "VirtualMachineScaleSetIPConfiguration": { "properties": { @@ -7717,7 +7716,7 @@ }, "singlePlacementGroup": { "type": "boolean", - "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines." + "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines. NOTE: If singlePlacementGroup is true, it may be modified to false. However, if singlePlacementGroup is false, it may not be modified to true." }, "proximityPlacementGroup": { "$ref": "#/definitions/SubResource", @@ -7749,7 +7748,7 @@ "items": { "type": "string" }, - "description": "The virtual machine scale set zones." + "description": "The virtual machine scale set zones. NOTE: Availability zones can only be set when you create the scale set." } }, "allOf": [ diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/compute.json index f793a723d513..11aeaedc3244 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-10-01/compute.json @@ -1130,11 +1130,11 @@ "description": "A valid image SKU." }, { - "name": "$filter", + "name": "$expand", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation." + "description": "The expand expression to apply on the operation." }, { "name": "$top", @@ -1166,8 +1166,7 @@ } } } - }, - "x-ms-odata": "#/definitions/VirtualMachineImageResource" + } } }, "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers": { @@ -5591,7 +5590,7 @@ "$ref": "#/definitions/SubResource" } ], - "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations." + "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations. NOTE: Image reference publisher and offer can only be set when you create the scale set." }, "KeyVaultSecretReference": { "properties": { @@ -5681,7 +5680,7 @@ }, "StorageAccountType": { "type": "string", - "description": "Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.", + "description": "Specifies the storage account type for the managed disk. Managed OS disk storage account type can only be set when you create the scale set. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.", "enum": [ "Standard_LRS", "Premium_LRS", @@ -6087,7 +6086,7 @@ }, "gracePeriod": { "type": "string", - "description": "The amount of time for which automatic repairs are suspended due to a state change on VM. The grace time starts after the state change has completed. This helps avoid premature or accidental repairs. The time duration should be specified in ISO 8601 format. The minimum allowed grace period is 30 minutes (PT30M), which is also the default value." + "description": "The amount of time for which automatic repairs are suspended due to a state change on VM. The grace time starts after the state change has completed. This helps avoid premature or accidental repairs. The time duration should be specified in ISO 8601 format. The minimum allowed grace period is 30 minutes (PT30M), which is also the default value. The maximum allowed grace period is 90 minutes (PT90M)." } }, "description": "Specifies the configuration parameters for automatic repairs on the virtual machine scale set." @@ -6548,7 +6547,7 @@ "description": "Specifies the number of virtual machines in the scale set." } }, - "description": "Describes a virtual machine scale set sku." + "description": "Describes a virtual machine scale set sku. NOTE: If the new VM SKU is not supported on the hardware the scale set is currently on, you need to deallocate the VMs in the scale set before you modify the SKU name." }, "AutomaticOSUpgradePolicy": { "properties": { @@ -7228,7 +7227,7 @@ "description": "The load balancer inbound nat pools." } }, - "description": "Describes a virtual machine scale set network profile's IP configuration properties." + "description": "Describes a virtual machine scale set network profile's IP configuration properties. NOTE: The subnet of a scale set may be modified as long as the original subnet and the new subnet are in the same virtual network." }, "VirtualMachineScaleSetIPConfiguration": { "properties": { @@ -7764,7 +7763,7 @@ }, "singlePlacementGroup": { "type": "boolean", - "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines." + "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines. NOTE: If singlePlacementGroup is true, it may be modified to false. However, if singlePlacementGroup is false, it may not be modified to true." }, "proximityPlacementGroup": { "$ref": "#/definitions/SubResource", @@ -7796,7 +7795,7 @@ "items": { "type": "string" }, - "description": "The virtual machine scale set zones." + "description": "The virtual machine scale set zones. NOTE: Availability zones can only be set when you create the scale set." } }, "allOf": [ diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json index 3a626b5f5f45..6ab37f15f568 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json @@ -1651,11 +1651,11 @@ "description": "A valid image SKU." }, { - "name": "$filter", + "name": "$expand", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation." + "description": "The expand expression to apply on the operation." }, { "name": "$top", @@ -1687,8 +1687,7 @@ } } } - }, - "x-ms-odata": "#/definitions/VirtualMachineImageResource" + } } }, "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers": { @@ -6467,7 +6466,7 @@ "$ref": "#/definitions/SubResource" } ], - "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations." + "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations. NOTE: Image reference publisher and offer can only be set when you create the scale set." }, "KeyVaultSecretReference": { "properties": { @@ -6557,7 +6556,7 @@ }, "StorageAccountType": { "type": "string", - "description": "Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks. It cannot be used with OS Disk. Standard_LRS uses Standard HDD. StandardSSD_LRS uses Standard SSD. Premium_LRS uses Premium SSD. UltraSSD_LRS uses Ultra disk. For more information regarding disks supported for Windows Virtual Machines, refer to https://docs.microsoft.com/en-us/azure/virtual-machines/windows/disks-types and, for Linux Virtual Machines, refer to https://docs.microsoft.com/en-us/azure/virtual-machines/linux/disks-types ", + "description": "Specifies the storage account type for the managed disk. Managed OS disk storage account type can only be set when you create the scale set. NOTE: UltraSSD_LRS can only be used with data disks. It cannot be used with OS Disk. Standard_LRS uses Standard HDD. StandardSSD_LRS uses Standard SSD. Premium_LRS uses Premium SSD. UltraSSD_LRS uses Ultra disk. For more information regarding disks supported for Windows Virtual Machines, refer to https://docs.microsoft.com/en-us/azure/virtual-machines/windows/disks-types and, for Linux Virtual Machines, refer to https://docs.microsoft.com/en-us/azure/virtual-machines/linux/disks-types ", "enum": [ "Standard_LRS", "Premium_LRS", @@ -6971,7 +6970,7 @@ }, "gracePeriod": { "type": "string", - "description": "The amount of time for which automatic repairs are suspended due to a state change on VM. The grace time starts after the state change has completed. This helps avoid premature or accidental repairs. The time duration should be specified in ISO 8601 format. The minimum allowed grace period is 30 minutes (PT30M), which is also the default value." + "description": "The amount of time for which automatic repairs are suspended due to a state change on VM. The grace time starts after the state change has completed. This helps avoid premature or accidental repairs. The time duration should be specified in ISO 8601 format. The minimum allowed grace period is 30 minutes (PT30M), which is also the default value. The maximum allowed grace period is 90 minutes (PT90M)." } }, "description": "Specifies the configuration parameters for automatic repairs on the virtual machine scale set." @@ -7499,7 +7498,7 @@ "description": "Specifies the number of virtual machines in the scale set." } }, - "description": "Describes a virtual machine scale set sku." + "description": "Describes a virtual machine scale set sku. NOTE: If the new VM SKU is not supported on the hardware the scale set is currently on, you need to deallocate the VMs in the scale set before you modify the SKU name." }, "AutomaticOSUpgradePolicy": { "properties": { @@ -8224,7 +8223,7 @@ "description": "The load balancer inbound nat pools." } }, - "description": "Describes a virtual machine scale set network profile's IP configuration properties." + "description": "Describes a virtual machine scale set network profile's IP configuration properties. NOTE: The subnet of a scale set may be modified as long as the original subnet and the new subnet are in the same virtual network." }, "VirtualMachineScaleSetIPConfiguration": { "properties": { @@ -8768,7 +8767,7 @@ }, "singlePlacementGroup": { "type": "boolean", - "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines." + "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines. NOTE: If singlePlacementGroup is true, it may be modified to false. However, if singlePlacementGroup is false, it may not be modified to true." }, "additionalCapabilities": { "$ref": "#/definitions/AdditionalCapabilities", @@ -8808,7 +8807,7 @@ "items": { "type": "string" }, - "description": "The virtual machine scale set zones." + "description": "The virtual machine scale set zones. NOTE: Availability zones can only be set when you create the scale set." } }, "allOf": [ diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/examples/UpdateImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/examples/UpdateImage.json index 4b09489a0bf1..377484903de9 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/examples/UpdateImage.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/examples/UpdateImage.json @@ -104,4 +104,4 @@ } } } - } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-04-01/examples/ListAvailableResourceSkus.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-04-01/examples/ListAvailableResourceSkus.json index 98525fa615dc..3b2c82e8971e 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-04-01/examples/ListAvailableResourceSkus.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-04-01/examples/ListAvailableResourceSkus.json @@ -78,12 +78,13 @@ { "location": "westus", "zones": [ - "westus-AZ01" + "2", + "1" ], "zoneDetails": [ { "name": [ - "westus-AZ01" + "2" ], "capabilities": [ { @@ -171,8 +172,9 @@ { "location": "westus", "zones": [ - "westus-AZ02", - "westus-AZ01" + "1", + "2", + "3" ] } ], diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-04-01/examples/ListAvailableResourceSkusForARegion.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-04-01/examples/ListAvailableResourceSkusForARegion.json index 1b040438586a..47795fc5eb7c 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-04-01/examples/ListAvailableResourceSkusForARegion.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-04-01/examples/ListAvailableResourceSkusForARegion.json @@ -79,12 +79,13 @@ { "location": "westus", "zones": [ - "westus-AZ01" + "2", + "1" ], "zoneDetails": [ { "name": [ - "westus-AZ01" + "2" ], "capabilities": [ { @@ -172,8 +173,9 @@ { "location": "westus", "zones": [ - "westus-AZ02", - "westus-AZ01" + "1", + "2", + "3" ] } ], diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/compute.json index eeb80123a696..b125a7a590f1 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/compute.json @@ -1658,11 +1658,11 @@ "description": "A valid image SKU." }, { - "name": "$filter", + "name": "$expand", "in": "query", "required": false, "type": "string", - "description": "The filter to apply on the operation." + "description": "The expand expression to apply on the operation." }, { "name": "$top", @@ -1694,8 +1694,7 @@ } } } - }, - "x-ms-odata": "#/definitions/VirtualMachineImageResource" + } } }, "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers": { @@ -6995,7 +6994,7 @@ "$ref": "#/definitions/SubResource" } ], - "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations." + "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations. NOTE: Image reference publisher and offer can only be set when you create the scale set" }, "KeyVaultSecretReference": { "properties": { @@ -7093,7 +7092,7 @@ }, "StorageAccountType": { "type": "string", - "description": "Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks. It cannot be used with OS Disk. Standard_LRS uses Standard HDD. StandardSSD_LRS uses Standard SSD. Premium_LRS uses Premium SSD. UltraSSD_LRS uses Ultra disk. For more information regarding disks supported for Windows Virtual Machines, refer to https://docs.microsoft.com/en-us/azure/virtual-machines/windows/disks-types and, for Linux Virtual Machines, refer to https://docs.microsoft.com/en-us/azure/virtual-machines/linux/disks-types", + "description": "Specifies the storage account type for the managed disk. Managed OS disk storage account type can only be set when you create the scale set. NOTE: UltraSSD_LRS can only be used with data disks. It cannot be used with OS Disk. Standard_LRS uses Standard HDD. StandardSSD_LRS uses Standard SSD. Premium_LRS uses Premium SSD. UltraSSD_LRS uses Ultra disk. For more information regarding disks supported for Windows Virtual Machines, refer to https://docs.microsoft.com/en-us/azure/virtual-machines/windows/disks-types and, for Linux Virtual Machines, refer to https://docs.microsoft.com/en-us/azure/virtual-machines/linux/disks-types", "enum": [ "Standard_LRS", "Premium_LRS", @@ -7487,7 +7486,7 @@ }, "customData": { "type": "string", - "description": "Specifies a base-64 encoded string of custom data. The base-64 encoded string is decoded to a binary array that is saved as a file on the Virtual Machine. The maximum length of the binary array is 65535 bytes.

**Note: Do not pass any secrets or passwords in customData property**

This property cannot be updated after the VM is created.

customData is passed to the VM to be saved as a file, for more information see [Custom Data on Azure VMs](https://azure.microsoft.com/en-us/blog/custom-data-and-cloud-init-on-windows-azure/)

For using cloud-init for your Linux VM, see [Using cloud-init to customize a Linux VM during creation](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-cloud-init?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)" + "description": "Specifies a base-64 encoded string of custom data. The base-64 encoded string is decoded to a binary array that is saved as a file on the Virtual Machine. The maximum length of the binary array is 65535 bytes.

**Note: Do not pass any secrets or passwords in customData property**

This property cannot be updated after the VM is created.

customData is passed to the VM to be saved as a file, for more information see [Custom Data on Azure VMs](https://docs.microsoft.com/azure/virtual-machines/custom-data)

For using cloud-init for your Linux VM, see [Using cloud-init to customize a Linux VM during creation](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-cloud-init?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)" }, "windowsConfiguration": { "$ref": "#/definitions/WindowsConfiguration", @@ -7523,7 +7522,7 @@ }, "gracePeriod": { "type": "string", - "description": "The amount of time for which automatic repairs are suspended due to a state change on VM. The grace time starts after the state change has completed. This helps avoid premature or accidental repairs. The time duration should be specified in ISO 8601 format. The minimum allowed grace period is 30 minutes (PT30M), which is also the default value." + "description": "The amount of time for which automatic repairs are suspended due to a state change on VM. The grace time starts after the state change has completed. This helps avoid premature or accidental repairs. The time duration should be specified in ISO 8601 format. The minimum allowed grace period is 30 minutes (PT30M), which is also the default value. The maximum allowed grace period is 90 minutes (PT90M)." } }, "description": "Specifies the configuration parameters for automatic repairs on the virtual machine scale set." @@ -8051,7 +8050,7 @@ "description": "Specifies the number of virtual machines in the scale set." } }, - "description": "Describes a virtual machine scale set sku." + "description": "Describes a virtual machine scale set sku. NOTE: If the new VM SKU is not supported on the hardware the scale set is currently on, you need to deallocate the VMs in the scale set before you modify the SKU name." }, "AutomaticOSUpgradePolicy": { "properties": { @@ -8765,7 +8764,7 @@ "description": "The load balancer inbound nat pools." } }, - "description": "Describes a virtual machine scale set network profile's IP configuration properties." + "description": "Describes a virtual machine scale set network profile's IP configuration properties. NOTE: The subnet of a scale set may be modified as long as the original subnet and the new subnet are in the same virtual network." }, "VirtualMachineScaleSetIPConfiguration": { "properties": { @@ -9350,7 +9349,7 @@ }, "singlePlacementGroup": { "type": "boolean", - "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines." + "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines.NOTE: If singlePlacementGroup is true, it may be modified to false. However, if singlePlacementGroup is false, it may not be modified to true." }, "additionalCapabilities": { "$ref": "#/definitions/AdditionalCapabilities", @@ -9390,7 +9389,7 @@ "items": { "type": "string" }, - "description": "The virtual machine scale set zones." + "description": "The virtual machine scale set zones. NOTE: Availability zones can only be set when you create the scale set." } }, "allOf": [ diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/UpdateImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/UpdateImage.json index f26d12155db6..6d6aa15f3f12 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/UpdateImage.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-07-01/examples/UpdateImage.json @@ -104,4 +104,4 @@ } } } - } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/disk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/disk.json new file mode 100644 index 000000000000..60af00ce5775 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/disk.json @@ -0,0 +1,2008 @@ +{ + "swagger": "2.0", + "info": { + "title": "DiskResourceProviderClient", + "description": "The Disk Resource Provider Client.", + "version": "2019-11-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks/{diskName}": { + "put": { + "tags": [ + "Disks" + ], + "operationId": "Disks_CreateOrUpdate", + "description": "Creates or updates a disk.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "disk", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Disk" + }, + "description": "Disk object supplied in the body of the Put disk operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Disk" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/Disk" + } + } + }, + "x-ms-examples": { + "Create an empty managed disk.": { + "$ref": "./examples/CreateAnEmptyManagedDisk.json" + }, + "Create a managed disk from a platform image.": { + "$ref": "./examples/CreateAManagedDiskFromAPlatformImage.json" + }, + "Create a managed disk from an existing managed disk in the same or different subscription.": { + "$ref": "./examples/CreateAManagedDiskFromAnExistingManagedDisk.json" + }, + "Create a managed disk by importing an unmanaged blob from the same subscription.": { + "$ref": "./examples/CreateAManagedDiskByImportingAnUnmanagedBlobFromTheSameSubscription.json" + }, + "Create a managed disk by importing an unmanaged blob from a different subscription.": { + "$ref": "./examples/CreateAManagedDiskByImportingAnUnmanagedBlobFromADifferentSubscription.json" + }, + "Create a managed disk by copying a snapshot.": { + "$ref": "./examples/CreateAManagedDiskByCopyingASnapshot.json" + }, + "Create a managed upload disk.": { + "$ref": "./examples/CreateAManagedUploadDisk.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Disks" + ], + "operationId": "Disks_Update", + "description": "Updates (patches) a disk.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "disk", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DiskUpdate" + }, + "description": "Disk object supplied in the body of the Patch disk operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Disk" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/Disk" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Disks" + ], + "operationId": "Disks_Get", + "description": "Gets information about a disk.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Disk" + } + } + }, + "x-ms-examples": { + "Get information about a managed disk.": { + "$ref": "./examples/GetInformationAboutAManagedDisk.json" + } + } + }, + "delete": { + "tags": [ + "Disks" + ], + "operationId": "Disks_Delete", + "description": "Deletes a disk.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "If the disk is deleted, this is an expected error code." + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks": { + "get": { + "tags": [ + "Disks" + ], + "operationId": "Disks_ListByResourceGroup", + "description": "Lists all the disks under a resource group.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskList" + } + } + }, + "x-ms-examples": { + "List all managed disks in a resource group.": { + "$ref": "./examples/ListManagedDisksInAResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/disks": { + "get": { + "tags": [ + "Disks" + ], + "operationId": "Disks_List", + "description": "Lists all the disks under a subscription.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskList" + } + } + }, + "x-ms-examples": { + "List all managed disks in a subscription.": { + "$ref": "./examples/ListManagedDisksInASubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks/{diskName}/beginGetAccess": { + "post": { + "tags": [ + "Disks" + ], + "operationId": "Disks_GrantAccess", + "description": "Grants access to a disk.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "grantAccessData", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GrantAccessData" + }, + "description": "Access data object supplied in the body of the get disk access operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AccessUri" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/disks/{diskName}/endGetAccess": { + "post": { + "tags": [ + "Disks" + ], + "operationId": "Disks_RevokeAccess", + "description": "Revokes access to a disk.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots/{snapshotName}": { + "put": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_CreateOrUpdate", + "description": "Creates or updates a snapshot.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "snapshot", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Snapshot" + }, + "description": "Snapshot object supplied in the body of the Put disk operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Snapshot" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/Snapshot" + } + } + }, + "x-ms-examples": { + "Create a snapshot from an existing snapshot in the same or a different subscription.": { + "$ref": "./examples/CreateASnapshotFromAnExistingSnapshot.json" + }, + "Create a snapshot by importing an unmanaged blob from the same subscription.": { + "$ref": "./examples/CreateASnapshotByImportingAnUnmanagedBlobFromTheSameSubscription.json" + }, + "Create a snapshot by importing an unmanaged blob from a different subscription.": { + "$ref": "./examples/CreateASnapshotByImportingAnUnmanagedBlobFromADifferentSubscription.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Update", + "description": "Updates (patches) a snapshot.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "snapshot", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SnapshotUpdate" + }, + "description": "Snapshot object supplied in the body of the Patch snapshot operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Snapshot" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/Snapshot" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Get", + "description": "Gets information about a snapshot.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Snapshot" + } + } + }, + "x-ms-examples": { + "Get information about a snapshot.": { + "$ref": "./examples/GetInformationAboutASnapshot.json" + } + } + }, + "delete": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Delete", + "description": "Deletes a snapshot.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "If the snapshot is deleted, this is an expected error code." + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots": { + "get": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_ListByResourceGroup", + "description": "Lists snapshots under a resource group.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SnapshotList" + } + } + }, + "x-ms-examples": { + "List all snapshots in a resource group.": { + "$ref": "./examples/ListSnapshotsInAResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/snapshots": { + "get": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_List", + "description": "Lists snapshots under a subscription.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SnapshotList" + } + } + }, + "x-ms-examples": { + "List all snapshots in a subscription.": { + "$ref": "./examples/ListSnapshotsInASubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots/{snapshotName}/beginGetAccess": { + "post": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_GrantAccess", + "description": "Grants access to a snapshot.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "grantAccessData", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GrantAccessData" + }, + "description": "Access data object supplied in the body of the get snapshot access operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AccessUri" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/snapshots/{snapshotName}/endGetAccess": { + "post": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_RevokeAccess", + "description": "Revokes access to a snapshot.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SnapshotNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{diskEncryptionSetName}": { + "put": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_CreateOrUpdate", + "description": "Creates or updates a disk encryption set", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskEncryptionSetNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "diskEncryptionSet", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DiskEncryptionSet" + }, + "description": "disk encryption set object supplied in the body of the Put disk encryption set operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskEncryptionSet" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/DiskEncryptionSet" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create a disk encryption set.": { + "$ref": "./examples/CreateADiskEncryptionSet.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_Update", + "description": "Updates (patches) a disk encryption set.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskEncryptionSetNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "diskEncryptionSet", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DiskEncryptionSetUpdate" + }, + "description": "disk encryption set object supplied in the body of the Patch disk encryption set operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskEncryptionSet" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/DiskEncryptionSet" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update a disk encryption set.": { + "$ref": "./examples/UpdateADiskEncryptionSet.json" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_Get", + "description": "Gets information about a disk encryption set.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskEncryptionSetNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskEncryptionSet" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get information about a disk encryption set.": { + "$ref": "./examples/GetInformationAboutADiskEncryptionSet.json" + } + } + }, + "delete": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_Delete", + "description": "Deletes a disk encryption set.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/DiskEncryptionSetNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "If the disk encryption set is already deleted, this is an expected error code." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete a disk encryption set.": { + "$ref": "./examples/DeleteADiskEncryptionSet.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets": { + "get": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_ListByResourceGroup", + "description": "Lists all the disk encryption sets under a resource group.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskEncryptionSetList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all disk encryption sets in a resource group.": { + "$ref": "./examples/ListDiskEncryptionSetsInAResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/diskEncryptionSets": { + "get": { + "tags": [ + "DiskEncryptionSets" + ], + "operationId": "DiskEncryptionSets_List", + "description": "Lists all the disk encryption sets under a subscription.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DiskEncryptionSetList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all disk encryption sets in a subscription.": { + "$ref": "./examples/ListDiskEncryptionSetsInASubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "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" + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "required": [ + "location" + ], + "x-ms-azure-resource": true + }, + "Disk": { + "properties": { + "managedBy": { + "readOnly": true, + "type": "string", + "description": "A relative URI containing the ID of the VM that has the disk attached." + }, + "managedByExtended": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "List of relative URIs containing the IDs of the VMs that have the disk attached. maxShares should be set to a value greater than one for disks to allow attaching them to multiple VMs." + }, + "sku": { + "$ref": "#/definitions/DiskSku" + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The Logical zone list for Disk." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DiskProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Disk resource." + }, + "DiskUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DiskUpdateProperties" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + }, + "sku": { + "$ref": "#/definitions/DiskSku" + } + }, + "description": "Disk update resource." + }, + "DiskList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Disk" + }, + "description": "A list of disks." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of disks. Call ListNext() with this to fetch the next page of disks." + } + }, + "required": [ + "value" + ], + "description": "The List Disks operation response." + }, + "DiskSku": { + "properties": { + "name": { + "type": "string", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "StandardSSD_LRS", + "UltraSSD_LRS" + ], + "x-ms-enum": { + "name": "DiskStorageAccountTypes", + "modelAsString": true, + "values": [ + { + "value": "Standard_LRS", + "description": "Standard HDD locally redundant storage. Best for backup, non-critical, and infrequent access." + }, + { + "value": "Premium_LRS", + "description": "Premium SSD locally redundant storage. Best for production and performance sensitive workloads." + }, + { + "value": "StandardSSD_LRS", + "description": "Standard SSD locally redundant storage. Best for web servers, lightly used enterprise applications and dev/test." + }, + { + "value": "UltraSSD_LRS", + "description": "Ultra SSD locally redundant storage. Best for IO-intensive workloads such as SAP HANA, top tier databases (for example, SQL, Oracle), and other transaction-heavy workloads." + } + ] + }, + "description": "The sku name." + }, + "tier": { + "type": "string", + "readOnly": true, + "description": "The sku tier." + } + }, + "description": "The disks sku name. Can be Standard_LRS, Premium_LRS, StandardSSD_LRS, or UltraSSD_LRS." + }, + "SnapshotSku": { + "properties": { + "name": { + "type": "string", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "Standard_ZRS" + ], + "x-ms-enum": { + "name": "SnapshotStorageAccountTypes", + "modelAsString": true, + "values": [ + { + "value": "Standard_LRS", + "description": "Standard HDD locally redundant storage" + }, + { + "value": "Premium_LRS", + "description": "Premium SSD locally redundant storage" + }, + { + "value": "Standard_ZRS", + "description": "Standard zone redundant storage" + } + ] + }, + "description": "The sku name." + }, + "tier": { + "type": "string", + "readOnly": true, + "description": "The sku tier." + } + }, + "description": "The snapshots sku name. Can be Standard_LRS, Premium_LRS, or Standard_ZRS." + }, + "DiskProperties": { + "properties": { + "timeCreated": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The time when the disk was created." + }, + "osType": { + "type": "string", + "description": "The Operating System type.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "hyperVGeneration": { + "type": "string", + "description": "The hypervisor generation of the Virtual Machine. Applicable to OS disks only.", + "enum": [ + "V1", + "V2" + ], + "x-ms-enum": { + "name": "HyperVGeneration", + "modelAsString": true + } + }, + "creationData": { + "$ref": "#/definitions/CreationData", + "description": "Disk source information. CreationData information cannot be changed after the disk has been created." + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "If creationData.createOption is Empty, this field is mandatory and it indicates the size of the disk to create. If this field is present for updates or creation with other options, it indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and can only increase the disk's size." + }, + "diskSizeBytes": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The size of the disk in bytes. This field is read only." + }, + "uniqueId": { + "type": "string", + "readOnly": true, + "description": "Unique Guid identifying the resource." + }, + "encryptionSettingsCollection": { + "$ref": "#/definitions/EncryptionSettingsCollection", + "description": "Encryption settings collection used for Azure Disk Encryption, can contain multiple encryption settings per disk or snapshot." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The disk provisioning state." + }, + "diskIOPSReadWrite": { + "type": "integer", + "format": "int64", + "description": "The number of IOPS allowed for this disk; only settable for UltraSSD disks. One operation can transfer between 4k and 256k bytes." + }, + "diskMBpsReadWrite": { + "type": "integer", + "format": "int64", + "description": "The bandwidth allowed for this disk; only settable for UltraSSD disks. MBps means millions of bytes per second - MB here uses the ISO notation, of powers of 10." + }, + "diskIOPSReadOnly": { + "type": "integer", + "format": "int64", + "description": "The total number of IOPS that will be allowed across all VMs mounting the shared disk as ReadOnly. One operation can transfer between 4k and 256k bytes." + }, + "diskMBpsReadOnly": { + "type": "integer", + "format": "int64", + "description": "The total throughput (MBps) that will be allowed across all VMs mounting the shared disk as ReadOnly. MBps means millions of bytes per second - MB here uses the ISO notation, of powers of 10." + }, + "diskState": { + "type": "string", + "description": "The state of the disk.", + "readOnly": true, + "enum": [ + "Unattached", + "Attached", + "Reserved", + "ActiveSAS", + "ReadyToUpload", + "ActiveUpload" + ], + "x-ms-enum": { + "name": "DiskState", + "modelAsString": true, + "values": [ + { + "value": "Unattached", + "description": "The disk is not being used and can be attached to a VM." + }, + { + "value": "Attached", + "description": "The disk is currently mounted to a running VM." + }, + { + "value": "Reserved", + "description": "The disk is mounted to a stopped-deallocated VM" + }, + { + "value": "ActiveSAS", + "description": "The disk currently has an Active SAS Uri associated with it." + }, + { + "value": "ReadyToUpload", + "description": "A disk is ready to be created by upload by requesting a write token." + }, + { + "value": "ActiveUpload", + "description": "A disk is created for upload and a write token has been issued for uploading to it." + } + ] + } + }, + "encryption": { + "$ref": "#/definitions/Encryption", + "description": "Encryption property can be used to encrypt data at rest with customer managed keys or platform managed keys." + }, + "maxShares": { + "type": "integer", + "format": "int32", + "description": "The maximum number of VMs that can attach to the disk at the same time. Value greater than one indicates a disk that can be mounted on multiple VMs at the same time." + }, + "shareInfo": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ShareInfoElement" + }, + "description": "Details of the list of all VMs that have the disk attached. maxShares should be set to a value greater than one for disks to allow attaching them to multiple VMs." + } + }, + "required": [ + "creationData" + ], + "description": "Disk resource properties." + }, + "SnapshotProperties": { + "properties": { + "timeCreated": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The time when the disk was created." + }, + "osType": { + "type": "string", + "description": "The Operating System type.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "hyperVGeneration": { + "type": "string", + "description": "The hypervisor generation of the Virtual Machine. Applicable to OS disks only.", + "enum": [ + "V1", + "V2" + ], + "x-ms-enum": { + "name": "HyperVGeneration", + "modelAsString": true + } + }, + "creationData": { + "$ref": "#/definitions/CreationData", + "description": "Disk source information. CreationData information cannot be changed after the disk has been created." + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "If creationData.createOption is Empty, this field is mandatory and it indicates the size of the disk to create. If this field is present for updates or creation with other options, it indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and can only increase the disk's size." + }, + "diskSizeBytes": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The size of the disk in bytes. This field is read only." + }, + "uniqueId": { + "type": "string", + "readOnly": true, + "description": "Unique Guid identifying the resource." + }, + "encryptionSettingsCollection": { + "$ref": "#/definitions/EncryptionSettingsCollection", + "description": "Encryption settings collection used be Azure Disk Encryption, can contain multiple encryption settings per disk or snapshot." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The disk provisioning state." + }, + "incremental": { + "type": "boolean", + "description": "Whether a snapshot is incremental. Incremental snapshots on the same disk occupy less space than full snapshots and can be diffed." + }, + "encryption": { + "$ref": "#/definitions/Encryption", + "description": "Encryption property can be used to encrypt data at rest with customer managed keys or platform managed keys." + } + }, + "required": [ + "creationData" + ], + "description": "Snapshot resource properties." + }, + "ShareInfoElement": { + "properties": { + "vmUri": { + "readOnly": true, + "type": "string", + "description": "A relative URI containing the ID of the VM that has the disk attached." + } + } + }, + "EncryptionSetProperties": { + "properties": { + "activeKey": { + "$ref": "#/definitions/KeyVaultAndKeyReference", + "description": "The key vault key which is currently used by this disk encryption set." + }, + "previousKeys": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/KeyVaultAndKeyReference" + }, + "description": "A readonly collection of key vault keys previously used by this disk encryption set while a key rotation is in progress. It will be empty if there is no ongoing key rotation." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The disk encryption set provisioning state." + } + } + }, + "EncryptionSettingsCollection": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Set this flag to true and provide DiskEncryptionKey and optional KeyEncryptionKey to enable encryption. Set this flag to false and remove DiskEncryptionKey and KeyEncryptionKey to disable encryption. If EncryptionSettings is null in the request object, the existing settings remain unchanged." + }, + "encryptionSettings": { + "type": "array", + "items": { + "$ref": "#/definitions/EncryptionSettingsElement" + }, + "description": "A collection of encryption settings, one for each disk volume." + }, + "encryptionSettingsVersion": { + "type": "string", + "description": "Describes what type of encryption is used for the disks. Once this field is set, it cannot be overwritten. '1.0' corresponds to Azure Disk Encryption with AAD app.'1.1' corresponds to Azure Disk Encryption." + } + }, + "required": [ + "enabled" + ], + "description": "Encryption settings for disk or snapshot" + }, + "EncryptionSettingsElement": { + "properties": { + "diskEncryptionKey": { + "$ref": "#/definitions/KeyVaultAndSecretReference", + "description": "Key Vault Secret Url and vault id of the disk encryption key" + }, + "keyEncryptionKey": { + "$ref": "#/definitions/KeyVaultAndKeyReference", + "description": "Key Vault Key Url and vault id of the key encryption key. KeyEncryptionKey is optional and when provided is used to unwrap the disk encryption key." + } + }, + "description": "Encryption settings for one disk volume." + }, + "KeyVaultAndSecretReference": { + "properties": { + "sourceVault": { + "$ref": "#/definitions/SourceVault", + "description": "Resource id of the KeyVault containing the key or secret" + }, + "secretUrl": { + "type": "string", + "description": "Url pointing to a key or secret in KeyVault" + } + }, + "required": [ + "secretUrl", + "sourceVault" + ], + "description": "Key Vault Secret Url and vault id of the encryption key " + }, + "KeyVaultAndKeyReference": { + "properties": { + "sourceVault": { + "$ref": "#/definitions/SourceVault", + "description": "Resource id of the KeyVault containing the key or secret" + }, + "keyUrl": { + "type": "string", + "description": "Url pointing to a key or secret in KeyVault" + } + }, + "required": [ + "keyUrl", + "sourceVault" + ], + "description": "Key Vault Key Url and vault id of KeK, KeK is optional and when provided is used to unwrap the encryptionKey" + }, + "SourceVault": { + "properties": { + "id": { + "type": "string", + "description": "Resource Id" + } + }, + "description": "The vault id is an Azure Resource Manager Resource id in the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}" + }, + "Encryption": { + "properties": { + "diskEncryptionSetId": { + "type": "string", + "description": "ResourceId of the disk encryption set to use for enabling encryption at rest." + }, + "type": { + "type": "string", + "description": "The type of key used to encrypt the data of the disk.", + "enum": [ + "EncryptionAtRestWithPlatformKey", + "EncryptionAtRestWithCustomerKey" + ], + "x-ms-enum": { + "name": "EncryptionType", + "modelAsString": true, + "values": [ + { + "value": "EncryptionAtRestWithPlatformKey", + "description": "Disk is encrypted with XStore managed key at rest. It is the default encryption type." + }, + { + "value": "EncryptionAtRestWithCustomerKey", + "description": "Disk is encrypted with Customer managed key at rest." + } + ] + } + } + }, + "description": "Encryption at rest settings for disk or snapshot" + }, + "DiskUpdateProperties": { + "properties": { + "osType": { + "type": "string", + "description": "the Operating System type.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "If creationData.createOption is Empty, this field is mandatory and it indicates the size of the disk to create. If this field is present for updates or creation with other options, it indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and can only increase the disk's size." + }, + "encryptionSettingsCollection": { + "$ref": "#/definitions/EncryptionSettingsCollection", + "description": "Encryption settings collection used be Azure Disk Encryption, can contain multiple encryption settings per disk or snapshot." + }, + "diskIOPSReadWrite": { + "type": "integer", + "format": "int64", + "description": "The number of IOPS allowed for this disk; only settable for UltraSSD disks. One operation can transfer between 4k and 256k bytes." + }, + "diskMBpsReadWrite": { + "type": "integer", + "format": "int64", + "description": "The bandwidth allowed for this disk; only settable for UltraSSD disks. MBps means millions of bytes per second - MB here uses the ISO notation, of powers of 10." + }, + "diskIOPSReadOnly": { + "type": "integer", + "format": "int64", + "description": "The total number of IOPS that will be allowed across all VMs mounting the shared disk as ReadOnly. One operation can transfer between 4k and 256k bytes." + }, + "diskMBpsReadOnly": { + "type": "integer", + "format": "int64", + "description": "The total throughput (MBps) that will be allowed across all VMs mounting the shared disk as ReadOnly. MBps means millions of bytes per second - MB here uses the ISO notation, of powers of 10." + }, + "maxShares": { + "type": "integer", + "format": "int32", + "description": "The maximum number of VMs that can attach to the disk at the same time. Value greater than one indicates a disk that can be mounted on multiple VMs at the same time." + }, + "encryption": { + "$ref": "#/definitions/Encryption", + "description": "Encryption property can be used to encrypt data at rest with customer managed keys or platform managed keys." + } + }, + "description": "Disk resource update properties." + }, + "SnapshotUpdateProperties": { + "properties": { + "osType": { + "type": "string", + "description": "the Operating System type.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "If creationData.createOption is Empty, this field is mandatory and it indicates the size of the disk to create. If this field is present for updates or creation with other options, it indicates a resize. Resizes are only allowed if the disk is not attached to a running VM, and can only increase the disk's size." + }, + "encryptionSettingsCollection": { + "$ref": "#/definitions/EncryptionSettingsCollection", + "description": "Encryption settings collection used be Azure Disk Encryption, can contain multiple encryption settings per disk or snapshot." + }, + "encryption": { + "$ref": "#/definitions/Encryption", + "description": "Encryption property can be used to encrypt data at rest with customer managed keys or platform managed keys." + } + }, + "description": "Snapshot resource update properties." + }, + "DiskEncryptionSetUpdateProperties": { + "properties": { + "activeKey": { + "$ref": "#/definitions/KeyVaultAndKeyReference" + } + }, + "description": "disk encryption set resource update properties." + }, + "CreationData": { + "properties": { + "createOption": { + "type": "string", + "enum": [ + "Empty", + "Attach", + "FromImage", + "Import", + "Copy", + "Restore", + "Upload" + ], + "x-ms-enum": { + "name": "DiskCreateOption", + "modelAsString": true, + "values": [ + { + "value": "Empty", + "description": "Create an empty data disk of a size given by diskSizeGB." + }, + { + "value": "Attach", + "description": "Disk will be attached to a VM." + }, + { + "value": "FromImage", + "description": "Create a new disk from a platform image specified by the given imageReference or galleryImageReference." + }, + { + "value": "Import", + "description": "Create a disk by importing from a blob specified by a sourceUri in a storage account specified by storageAccountId." + }, + { + "value": "Copy", + "description": "Create a new disk or snapshot by copying from a disk or snapshot specified by the given sourceResourceId." + }, + { + "value": "Restore", + "description": "Create a new disk by copying from a backup recovery point." + }, + { + "value": "Upload", + "description": "Create a new disk by obtaining a write token and using it to directly upload the contents of the disk." + } + ] + }, + "description": "This enumerates the possible sources of a disk's creation." + }, + "storageAccountId": { + "type": "string", + "description": "Required if createOption is Import. The Azure Resource Manager identifier of the storage account containing the blob to import as a disk." + }, + "imageReference": { + "$ref": "#/definitions/ImageDiskReference", + "description": "Disk source information." + }, + "galleryImageReference": { + "$ref": "#/definitions/ImageDiskReference", + "description": "Required if creating from a Gallery Image. The id of the ImageDiskReference will be the ARM id of the shared galley image version from which to create a disk." + }, + "sourceUri": { + "type": "string", + "description": "If createOption is Import, this is the URI of a blob to be imported into a managed disk." + }, + "sourceResourceId": { + "type": "string", + "description": "If createOption is Copy, this is the ARM id of the source snapshot or disk." + }, + "sourceUniqueId": { + "readOnly": true, + "type": "string", + "description": "If this field is set, this is the unique id identifying the source of this resource." + }, + "uploadSizeBytes": { + "type": "integer", + "format": "int64", + "description": "If createOption is Upload, this is the size of the contents of the upload including the VHD footer. This value should be between 20972032 (20 MiB + 512 bytes for the VHD footer) and 35183298347520 bytes (32 TiB + 512 bytes for the VHD footer)." + } + }, + "required": [ + "createOption" + ], + "description": "Data used when creating a disk." + }, + "ImageDiskReference": { + "properties": { + "id": { + "type": "string", + "description": "A relative uri containing either a Platform Image Repository or user image reference." + }, + "lun": { + "type": "integer", + "format": "int32", + "description": "If the disk is created from an image's data disk, this is an index that indicates which of the data disks in the image to use. For OS disks, this field is null." + } + }, + "required": [ + "id" + ], + "description": "The source image used for creating the disk." + }, + "GrantAccessData": { + "properties": { + "access": { + "type": "string", + "enum": [ + "None", + "Read", + "Write" + ], + "x-ms-enum": { + "name": "AccessLevel", + "modelAsString": true + } + }, + "durationInSeconds": { + "type": "integer", + "format": "int32", + "description": "Time duration in seconds until the SAS access expires." + } + }, + "required": [ + "access", + "durationInSeconds" + ], + "description": "Data used for requesting a SAS." + }, + "AccessUri": { + "properties": { + "accessSAS": { + "readOnly": true, + "type": "string", + "description": "A SAS uri for accessing a disk." + } + }, + "description": "A disk access SAS uri." + }, + "Snapshot": { + "properties": { + "managedBy": { + "readOnly": true, + "type": "string", + "description": "Unused. Always Null." + }, + "sku": { + "$ref": "#/definitions/SnapshotSku" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SnapshotProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Snapshot resource." + }, + "SnapshotUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SnapshotUpdateProperties" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + }, + "sku": { + "$ref": "#/definitions/SnapshotSku" + } + }, + "description": "Snapshot update resource." + }, + "SnapshotList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Snapshot" + }, + "description": "A list of snapshots." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of snapshots. Call ListNext() with this to fetch the next page of snapshots." + } + }, + "required": [ + "value" + ], + "description": "The List Snapshots operation response." + }, + "EncryptionSetIdentity": { + "properties": { + "type": { + "type": "string", + "enum": [ + "SystemAssigned" + ], + "x-ms-enum": { + "name": "DiskEncryptionSetIdentityType", + "modelAsString": true + }, + "description": "The type of Managed Identity used by the DiskEncryptionSet. Only SystemAssigned is supported." + }, + "principalId": { + "readOnly": true, + "type": "string", + "description": "The object id of the Managed Identity Resource. This will be sent to the RP from ARM via the x-ms-identity-principal-id header in the PUT request if the resource has a systemAssigned(implicit) identity" + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id of the Managed Identity Resource. This will be sent to the RP from ARM via the x-ms-client-tenant-id header in the PUT request if the resource has a systemAssigned(implicit) identity" + } + }, + "description": "The managed identity for the disk encryption set. It should be given permission on the key vault before it can be used to encrypt disks." + }, + "DiskEncryptionSet": { + "properties": { + "identity": { + "$ref": "#/definitions/EncryptionSetIdentity" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/EncryptionSetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "disk encryption set resource." + }, + "DiskEncryptionSetUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DiskEncryptionSetUpdateProperties" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "description": "disk encryption set update resource." + }, + "DiskEncryptionSetList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DiskEncryptionSet" + }, + "description": "A list of disk encryption sets." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of disk encryption sets. Call ListNext() with this to fetch the next page of disk encryption sets." + } + }, + "required": [ + "value" + ], + "description": "The List disk encryption set operation response." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/ApiError" + } + }, + "description": "An error response from the Compute service." + }, + "ApiError": { + "properties": { + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiErrorBase" + }, + "description": "The Api error details" + }, + "innererror": { + "$ref": "#/definitions/InnerError", + "description": "The Api inner error" + }, + "code": { + "type": "string", + "description": "The error code." + }, + "target": { + "type": "string", + "description": "The target of the particular error." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "Api error." + }, + "ApiErrorBase": { + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "target": { + "type": "string", + "description": "The target of the particular error." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "Api error base." + }, + "InnerError": { + "properties": { + "exceptiontype": { + "type": "string", + "description": "The exception type." + }, + "errordetail": { + "type": "string", + "description": "The internal error message or exception dump." + } + }, + "description": "Inner error details." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "DiskNameParameter": { + "name": "diskName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the managed disk that is being created. The name can't be changed after the disk is created. Supported characters for the name are a-z, A-Z, 0-9 and _. The maximum name length is 80 characters.", + "x-ms-parameter-location": "method" + }, + "SnapshotNameParameter": { + "name": "snapshotName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the snapshot that is being created. The name can't be changed after the snapshot is created. Supported characters for the name are a-z, A-Z, 0-9 and _. The max name length is 80 characters.", + "x-ms-parameter-location": "method" + }, + "DiskEncryptionSetNameParameter": { + "name": "diskEncryptionSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the disk encryption set that is being created. The name can't be changed after the disk encryption set is created. Supported characters for the name are a-z, A-Z, 0-9 and _. The maximum name length is 80 characters.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateADiskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateADiskEncryptionSet.json new file mode 100644 index 000000000000..6437c2734412 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateADiskEncryptionSet.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-11-01", + "diskEncryptionSetName": "myDiskEncryptionSet", + "diskEncryptionSet": { + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "myDiskEncryptionSet", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "previousKeys": [] + } + } + }, + "200": { + "body": { + "name": "myDiskEncryptionSet", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "previousKeys": [] + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateAManagedDiskByCopyingASnapshot.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateAManagedDiskByCopyingASnapshot.json new file mode 100644 index 000000000000..c34fc3a85db9 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateAManagedDiskByCopyingASnapshot.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-11-01", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + } + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateAManagedDiskByImportingAnUnmanagedBlobFromADifferentSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateAManagedDiskByImportingAnUnmanagedBlobFromADifferentSubscription.json new file mode 100644 index 000000000000..68ac119c120f --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateAManagedDiskByImportingAnUnmanagedBlobFromADifferentSubscription.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-11-01", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateAManagedDiskByImportingAnUnmanagedBlobFromTheSameSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateAManagedDiskByImportingAnUnmanagedBlobFromTheSameSubscription.json new file mode 100644 index 000000000000..8dac6f08fd58 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateAManagedDiskByImportingAnUnmanagedBlobFromTheSameSubscription.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-11-01", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateAManagedDiskFromAPlatformImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateAManagedDiskFromAPlatformImage.json new file mode 100644 index 000000000000..79c2165e44bb --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateAManagedDiskFromAPlatformImage.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-11-01", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}" + } + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "osType": "Windows", + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}" + } + } + } + } + }, + "200": { + "body": { + "name": "myDisk", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "osType": "Windows", + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}" + } + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateAManagedDiskFromAnExistingManagedDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateAManagedDiskFromAnExistingManagedDisk.json new file mode 100644 index 000000000000..410ba9f41009 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateAManagedDiskFromAnExistingManagedDisk.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-11-01", + "diskName": "myDisk2", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk1" + } + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk1" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk2" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDisk1" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk2" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateAManagedUploadDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateAManagedUploadDisk.json new file mode 100644 index 000000000000..91b21647a48a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateAManagedUploadDisk.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-11-01", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Upload", + "uploadSizeBytes": 10737418752 + } + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Upload", + "uploadSizeBytes": 10737418752 + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Upload", + "uploadSizeBytes": 10737418752 + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateASnapshotByImportingAnUnmanagedBlobFromADifferentSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateASnapshotByImportingAnUnmanagedBlobFromADifferentSubscription.json new file mode 100644 index 000000000000..a3e6750b826c --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateASnapshotByImportingAnUnmanagedBlobFromADifferentSubscription.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-11-01", + "snapshotName": "mySnapshot1", + "snapshot": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "mySnapshot1" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "mySnapshot1" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateASnapshotByImportingAnUnmanagedBlobFromTheSameSubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateASnapshotByImportingAnUnmanagedBlobFromTheSameSubscription.json new file mode 100644 index 000000000000..c89cf3061213 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateASnapshotByImportingAnUnmanagedBlobFromTheSameSubscription.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-11-01", + "snapshotName": "mySnapshot1", + "snapshot": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + } + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "mySnapshot1" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Import", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "mySnapshot1" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateASnapshotFromAnExistingSnapshot.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateASnapshotFromAnExistingSnapshot.json new file mode 100644 index 000000000000..ff94a631146e --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateASnapshotFromAnExistingSnapshot.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-11-01", + "snapshotName": "mySnapshot2", + "snapshot": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + } + } + } + }, + "responses": { + "202": { + "body": { + "name": "mySnapshot2", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + } + } + } + }, + "200": { + "body": { + "name": "mySnapshot2", + "location": "West US", + "properties": { + "provisioningState": "Updating", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateAnEmptyManagedDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateAnEmptyManagedDisk.json new file mode 100644 index 000000000000..fba2115ec9b9 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/CreateAnEmptyManagedDisk.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-11-01", + "diskName": "myDisk", + "disk": { + "location": "West US", + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200 + } + } + }, + "responses": { + "202": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + }, + "200": { + "body": { + "properties": { + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 200, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/DeleteADiskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/DeleteADiskEncryptionSet.json new file mode 100644 index 000000000000..ffe169310fed --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/DeleteADiskEncryptionSet.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "diskEncryptionSetName": "myDiskEncryptionSet", + "api-version": "2019-11-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/GetInformationAboutADiskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/GetInformationAboutADiskEncryptionSet.json new file mode 100644 index 000000000000..02cf00bb194a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/GetInformationAboutADiskEncryptionSet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-11-01", + "diskEncryptionSetName": "myDiskEncryptionSet" + }, + "responses": { + "200": { + "body": { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "previousKeys": [], + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/diskEncryptionSet", + "location": "westus", + "tags": { + "department": "Development", + "project": "Encryption" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet", + "name": "myDiskEncryptionSet" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/GetInformationAboutAManagedDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/GetInformationAboutAManagedDisk.json new file mode 100644 index 000000000000..f6e56f00f6f0 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/GetInformationAboutAManagedDisk.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-11-01", + "diskName": "myManagedDisk" + }, + "responses": { + "200": { + "body": { + "managedBy": "/subscriptions/123caaa-123v-v211-a49f-f88ccac5bf88/resourceGroups/ResourceGroupName/providers/Microsoft.Compute/virtualMachines/TestVM414689371c88843d65ec", + "sku": { + "name": "Standard_LRS" + }, + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 10, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:35.079872+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "tags": { + "department": "Development", + "project": "ManagedDisks" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk", + "name": "myManagedDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/GetInformationAboutASnapshot.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/GetInformationAboutASnapshot.json new file mode 100644 index 000000000000..2854ea508919 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/GetInformationAboutASnapshot.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-11-01", + "snapshotName": "mySnapshot" + }, + "responses": { + "200": { + "body": { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 100, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:35.079872+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/snapshots", + "location": "westus", + "tags": { + "department": "Development", + "project": "Snapshots" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot", + "name": "mySnapshot" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/ListDiskEncryptionSetsInAResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/ListDiskEncryptionSetsInAResourceGroup.json new file mode 100644 index 000000000000..ec520acbd908 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/ListDiskEncryptionSetsInAResourceGroup.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-11-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "previousKeys": [], + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/diskEncryptionSet", + "location": "westus", + "tags": { + "department": "Development", + "project": "Encryption" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet", + "name": "myDiskEncryptionSet" + }, + { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault2" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "previousKeys": [], + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/diskEncryptionSet", + "location": "westus", + "tags": { + "department": "Development", + "project": "Encryption" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet2", + "name": "myDiskEncryptionSet2" + } + ], + "nextLink": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/diskEncryptionSet?$skiptoken={token}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/ListDiskEncryptionSetsInASubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/ListDiskEncryptionSetsInASubscription.json new file mode 100644 index 000000000000..e8aa18a02c6b --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/ListDiskEncryptionSetsInASubscription.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2019-11-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "previousKeys": [], + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/diskEncryptionSet", + "location": "westus", + "tags": { + "department": "Development", + "project": "Encryption" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet", + "name": "myDiskEncryptionSet" + }, + { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault2" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "previousKeys": [], + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/diskEncryptionSet", + "location": "westus", + "tags": { + "department": "Development", + "project": "Encryption" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet2", + "name": "myDiskEncryptionSet2" + } + ], + "nextLink": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/diskEncryptionSet?$skiptoken={token}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/ListManagedDisksInAResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/ListManagedDisksInAResourceGroup.json new file mode 100644 index 000000000000..dfee771cdfd8 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/ListManagedDisksInAResourceGroup.json @@ -0,0 +1,120 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-11-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:35.9278721+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "tags": { + "department": "Development", + "project": "ManagedDisks" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk", + "name": "myManagedDisk1" + }, + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 10, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:36.872242+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk", + "name": "myManagedDisk2" + }, + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}" + } + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:36.3973934+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "tags": { + "department": "Development", + "project": "ManagedDisks" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk", + "name": "myManagedDisk3" + } + ], + "nextLink": "http://disksvchost:99/subscriptions/{subscriptionId}/providers/Microsoft.Compute/disks?$skiptoken={token}/Subscriptions/{subscriptionId}/ResourceGroups/myResourceGroup/Disks/myManagedDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/ListManagedDisksInASubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/ListManagedDisksInASubscription.json new file mode 100644 index 000000000000..d56273c7d8e9 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/ListManagedDisksInASubscription.json @@ -0,0 +1,119 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2019-11-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1" + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:35.9278721+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "tags": { + "department": "Development", + "project": "ManagedDisks" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1", + "name": "myManagedDisk1" + }, + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Empty" + }, + "diskSizeGB": 10, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:36.872242+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2", + "name": "myManagedDisk2" + }, + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "FromImage", + "imageReference": { + "id": "/Subscriptions/{subscriptionId}/Providers/Microsoft.Compute/Locations/uswest/Publishers/Microsoft/ArtifactTypes/VMImage/Offers/{offer}" + } + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:36.3973934+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/disks", + "location": "westus", + "tags": { + "department": "Development", + "project": "ManagedDisks" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk3", + "name": "myManagedDisk3" + } + ], + "nextLink": "http://disksvchost:99/subscriptions/{subscriptionId}/providers/Microsoft.Compute/disks?$skiptoken={token}/Subscriptions/{subscriptionId}/ResourceGroups/myResourceGroup/Disks/myManagedDisk" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/ListSnapshotsInAResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/ListSnapshotsInAResourceGroup.json new file mode 100644 index 000000000000..ac03ba461979 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/ListSnapshotsInAResourceGroup.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-11-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:41:35.9278721+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/snapshots", + "location": "westus", + "tags": { + "department": "Development", + "project": "Snapshots" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot", + "name": "mySnapshot" + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/ListSnapshotsInASubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/ListSnapshotsInASubscription.json new file mode 100644 index 000000000000..6a2ab66bddec --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/ListSnapshotsInASubscription.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2019-11-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Copy", + "sourceResourceId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:47:30.6630569+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/snapshots", + "location": "westus", + "tags": { + "department": "Development", + "project": "Snapshots" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1", + "name": "mySnapshot1" + }, + { + "properties": { + "osType": "Windows", + "creationData": { + "createOption": "Import", + "storageAccountId": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Storage/storageAccounts/myStorageAccount", + "sourceUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd" + }, + "diskSizeGB": 200, + "encryptionSettingsCollection": { + "enabled": true, + "encryptionSettings": [ + { + "diskEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "secretUrl": "https://myvmvault.vault-int.azure-int.net/secrets/{secret}" + }, + "keyEncryptionKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + } + ] + }, + "encryption": { + "type": "EncryptionAtRestWithPlatformKey" + }, + "timeCreated": "2016-12-28T04:47:30.3247198+00:00", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/snapshots", + "location": "westus", + "tags": { + "department": "Development", + "project": "Snapshots" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2", + "name": "mySnapshot2" + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/UpdateADiskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/UpdateADiskEncryptionSet.json new file mode 100644 index 000000000000..a0f618e3105c --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-11-01/examples/UpdateADiskEncryptionSet.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-11-01", + "diskEncryptionSetName": "myDiskEncryptionSet", + "diskEncryptionSet": { + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + } + }, + "tags": { + "department": "Development", + "project": "Encryption" + } + } + }, + "responses": { + "202": { + "body": { + "name": "myDiskEncryptionSet", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "previousKeys": [] + }, + "tags": { + "department": "Development", + "project": "Encryption" + } + } + }, + "200": { + "body": { + "name": "myDiskEncryptionSet", + "location": "West US", + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "activeKey": { + "sourceVault": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/vaults/myVMVault" + }, + "keyUrl": "https://myvmvault.vault-int.azure-int.net/keys/{key}" + }, + "previousKeys": [] + }, + "tags": { + "department": "Development", + "project": "Encryption" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/compute.json new file mode 100644 index 000000000000..99c290c8418a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/compute.json @@ -0,0 +1,10988 @@ +{ + "swagger": "2.0", + "info": { + "title": "ComputeManagementClient", + "description": "The Compute Management Client.", + "version": "2019-12-01" + }, + "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": { + "/providers/Microsoft.Compute/operations": { + "get": { + "tags": [ + "ComputeOperations" + ], + "operationId": "Operations_List", + "description": "Gets a list of compute operations.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ComputeOperationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}": { + "put": { + "tags": [ + "AvailabilitySets" + ], + "operationId": "AvailabilitySets_CreateOrUpdate", + "description": "Create or update an availability set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "availabilitySetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the availability set." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AvailabilitySet" + }, + "description": "Parameters supplied to the Create Availability Set operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AvailabilitySet" + } + } + }, + "x-ms-examples": { + "Create an availability set.": { + "$ref": "./examples/CreateAnAvailabilitySet.json" + } + } + }, + "patch": { + "tags": [ + "AvailabilitySets" + ], + "operationId": "AvailabilitySets_Update", + "description": "Update an availability set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "availabilitySetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the availability set." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AvailabilitySetUpdate" + }, + "description": "Parameters supplied to the Update Availability Set operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AvailabilitySet" + } + } + } + }, + "delete": { + "tags": [ + "AvailabilitySets" + ], + "operationId": "AvailabilitySets_Delete", + "description": "Delete an availability set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "availabilitySetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the availability set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + } + } + }, + "get": { + "tags": [ + "AvailabilitySets" + ], + "operationId": "AvailabilitySets_Get", + "description": "Retrieves information about an availability set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "availabilitySetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the availability set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AvailabilitySet" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/availabilitySets": { + "get": { + "tags": [ + "AvailabilitySets" + ], + "operationId": "AvailabilitySets_ListBySubscription", + "description": "Lists all availability sets in a subscription.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply to the operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AvailabilitySetListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List availability sets in a subscription.": { + "$ref": "./examples/ListAvailabilitySetsInASubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets": { + "get": { + "tags": [ + "AvailabilitySets" + ], + "operationId": "AvailabilitySets_List", + "description": "Lists all availability sets in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AvailabilitySetListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}/vmSizes": { + "get": { + "tags": [ + "AvailabilitySets" + ], + "operationId": "AvailabilitySets_ListAvailableSizes", + "description": "Lists all available virtual machine sizes that can be used to create a new virtual machine in an existing availability set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "availabilitySetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the availability set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineSizeListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/proximityPlacementGroups/{proximityPlacementGroupName}": { + "put": { + "tags": [ + "ProximityPlacementGroups" + ], + "operationId": "ProximityPlacementGroups_CreateOrUpdate", + "description": "Create or update a proximity placement group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "proximityPlacementGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the proximity placement group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ProximityPlacementGroup" + }, + "description": "Parameters supplied to the Create Proximity Placement Group operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProximityPlacementGroup" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/ProximityPlacementGroup" + } + } + }, + "x-ms-examples": { + "Create or Update a proximity placement group.": { + "$ref": "./examples/CreateOrUpdateAProximityPlacementGroup.json" + } + } + }, + "patch": { + "tags": [ + "ProximityPlacementGroups" + ], + "operationId": "ProximityPlacementGroups_Update", + "description": "Update a proximity placement group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "proximityPlacementGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the proximity placement group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ProximityPlacementGroupUpdate" + }, + "description": "Parameters supplied to the Update Proximity Placement Group operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProximityPlacementGroup" + } + } + }, + "x-ms-examples": { + "Create a proximity placement group.": { + "$ref": "./examples/PatchAProximityPlacementGroup.json" + } + } + }, + "delete": { + "tags": [ + "ProximityPlacementGroups" + ], + "operationId": "ProximityPlacementGroups_Delete", + "description": "Delete a proximity placement group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "proximityPlacementGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the proximity placement group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "x-ms-examples": { + "Create a proximity placement group.": { + "$ref": "./examples/DeleteAProximityPlacementGroup.json" + } + } + }, + "get": { + "tags": [ + "ProximityPlacementGroups" + ], + "operationId": "ProximityPlacementGroups_Get", + "description": "Retrieves information about a proximity placement group .", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "proximityPlacementGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the proximity placement group." + }, + { + "name": "includeColocationStatus", + "in": "query", + "required": false, + "type": "string", + "description": "includeColocationStatus=true enables fetching the colocation status of all the resources in the proximity placement group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProximityPlacementGroup" + } + } + }, + "x-ms-examples": { + "Create a proximity placement group.": { + "$ref": "./examples/GetAProximityPlacementGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/proximityPlacementGroups": { + "get": { + "tags": [ + "ProximityPlacementGroups" + ], + "operationId": "ProximityPlacementGroups_ListBySubscription", + "description": "Lists all proximity placement groups in a subscription.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProximityPlacementGroupListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Create a proximity placement group.": { + "$ref": "./examples/ListProximityPlacementGroupsInASubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/proximityPlacementGroups": { + "get": { + "tags": [ + "ProximityPlacementGroups" + ], + "operationId": "ProximityPlacementGroups_ListByResourceGroup", + "description": "Lists all proximity placement groups in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProximityPlacementGroupListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Create a proximity placement group.": { + "$ref": "./examples/ListProximityPlacementGroupsInAResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}": { + "put": { + "tags": [ + "DedicatedHostGroups" + ], + "operationId": "DedicatedHostGroups_CreateOrUpdate", + "description": "Create or update a dedicated host group. For details of Dedicated Host and Dedicated Host Groups please see [Dedicated Host Documentation] (https://go.microsoft.com/fwlink/?linkid=2082596)", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DedicatedHostGroup" + }, + "description": "Parameters supplied to the Create Dedicated Host Group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHostGroup" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/DedicatedHostGroup" + } + } + }, + "x-ms-examples": { + "Create or update a dedicated host group.": { + "$ref": "./examples/CreateOrUpdateADedicatedHostGroup.json" + } + } + }, + "patch": { + "tags": [ + "DedicatedHostGroups" + ], + "operationId": "DedicatedHostGroups_Update", + "description": "Update an dedicated host group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DedicatedHostGroupUpdate" + }, + "description": "Parameters supplied to the Update Dedicated Host Group operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHostGroup" + } + } + } + }, + "delete": { + "tags": [ + "DedicatedHostGroups" + ], + "operationId": "DedicatedHostGroups_Delete", + "description": "Delete a dedicated host group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + } + } + }, + "get": { + "tags": [ + "DedicatedHostGroups" + ], + "operationId": "DedicatedHostGroups_Get", + "description": "Retrieves information about a dedicated host group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHostGroup" + } + } + }, + "x-ms-examples": { + "Create a dedicated host group.": { + "$ref": "./examples/GetADedicatedHostGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups": { + "get": { + "tags": [ + "DedicatedHostGroups" + ], + "operationId": "DedicatedHostGroups_ListByResourceGroup", + "description": "Lists all of the dedicated host groups in the specified resource group. Use the nextLink property in the response to get the next page of dedicated host groups.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHostGroupListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/hostGroups": { + "get": { + "tags": [ + "DedicatedHostGroups" + ], + "operationId": "DedicatedHostGroups_ListBySubscription", + "description": "Lists all of the dedicated host groups in the subscription. Use the nextLink property in the response to get the next page of dedicated host groups.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHostGroupListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}/hosts/{hostName}": { + "put": { + "tags": [ + "DedicatedHosts" + ], + "operationId": "DedicatedHosts_CreateOrUpdate", + "description": "Create or update a dedicated host .", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "name": "hostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host ." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DedicatedHost" + }, + "description": "Parameters supplied to the Create Dedicated Host." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHost" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/DedicatedHost" + } + } + }, + "x-ms-examples": { + "Create or update a dedicated host .": { + "$ref": "./examples/CreateOrUpdateADedicatedHost.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "DedicatedHosts" + ], + "operationId": "DedicatedHosts_Update", + "description": "Update an dedicated host .", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "name": "hostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host ." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DedicatedHostUpdate" + }, + "description": "Parameters supplied to the Update Dedicated Host operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHost" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "DedicatedHosts" + ], + "operationId": "DedicatedHosts_Delete", + "description": "Delete a dedicated host.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "name": "hostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "DedicatedHosts" + ], + "operationId": "DedicatedHosts_Get", + "description": "Retrieves information about a dedicated host.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "name": "hostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation.", + "enum": [ + "instanceView" + ], + "x-ms-enum": { + "name": "InstanceViewTypes", + "modelAsString": false + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHost" + } + } + }, + "x-ms-examples": { + "Get a dedicated host.": { + "$ref": "./examples/GetADedicatedHost.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}/hosts": { + "get": { + "tags": [ + "DedicatedHost" + ], + "operationId": "DedicatedHosts_ListByHostGroup", + "description": "Lists all of the dedicated hosts in the specified dedicated host group. Use the nextLink property in the response to get the next page of dedicated hosts.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "hostGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the dedicated host group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DedicatedHostListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/sshPublicKeys": { + "get": { + "tags": [ + "SshPublicKeys" + ], + "operationId": "SshPublicKeys_ListBySubscription", + "description": "Lists all of the SSH public keys in the subscription. Use the nextLink property in the response to get the next page of SSH public keys.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SshPublicKeysGroupListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/sshPublicKeys": { + "get": { + "tags": [ + "SshPublicKeys" + ], + "operationId": "SshPublicKeys_ListByResourceGroup", + "description": "Lists all of the SSH public keys in the specified resource group. Use the nextLink property in the response to get the next page of SSH public keys.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SshPublicKeysGroupListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/sshPublicKeys/{sshPublicKeyName}": { + "put": { + "tags": [ + "SshPublicKeys" + ], + "operationId": "SshPublicKeys_Create", + "description": "Creates a new SSH public key resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "sshPublicKeyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the SSH public key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SshPublicKeyResource" + }, + "description": "Parameters supplied to create the SSH public key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SshPublicKeyResource" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/SshPublicKeyResource" + } + } + }, + "x-ms-examples": { + "Create a new SSH public key resource.": { + "$ref": "./examples/CreateAnSshPublicKey.json" + } + } + }, + "patch": { + "tags": [ + "SshPublicKeys" + ], + "operationId": "SshPublicKeys_Update", + "description": "Updates a new SSH public key resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "sshPublicKeyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the SSH public key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SshPublicKeyUpdateResource" + }, + "description": "Parameters supplied to update the SSH public key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SshPublicKeyResource" + } + } + } + }, + "delete": { + "tags": [ + "SshPublicKeys" + ], + "operationId": "SshPublicKeys_Delete", + "description": "Delete an SSH public key.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "sshPublicKeyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the SSH public key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + } + } + }, + "get": { + "tags": [ + "SshPublicKeys" + ], + "operationId": "SshPublicKeys_Get", + "description": "Retrieves information about an SSH public key.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "sshPublicKeyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the SSH public key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SshPublicKeyResource" + } + } + }, + "x-ms-examples": { + "Get an ssh public key.": { + "$ref": "./examples/GetAnSshPublicKey.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/sshPublicKeys/{sshPublicKeyName}/generateKeyPair": { + "post": { + "tags": [ + "SshPublicKeys" + ], + "operationId": "SshPublicKeys_GenerateKeyPair", + "description": "Generates and returns a public/private key pair and populates the SSH public key resource with the public key. The length of the key will be 3072 bits. This operation can only be performed once per SSH public key resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "sshPublicKeyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the SSH public key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SshPublicKeyGenerateKeyPairResult" + } + } + }, + "x-ms-examples": { + "Generate an SSH key pair.": { + "$ref": "./examples/GenerateSshKeyPair.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmextension/types/{type}/versions/{version}": { + "get": { + "tags": [ + "VirtualMachineExtensionImages" + ], + "operationId": "VirtualMachineExtensionImages_Get", + "description": "Gets a virtual machine extension image.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "publisherName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "type", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "version", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineExtensionImage" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmextension/types": { + "get": { + "tags": [ + "VirtualMachineExtensionImages" + ], + "operationId": "VirtualMachineExtensionImages_ListTypes", + "description": "Gets a list of virtual machine extension image types.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "publisherName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineExtensionImage" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmextension/types/{type}/versions": { + "get": { + "tags": [ + "VirtualMachineExtensionImages" + ], + "operationId": "VirtualMachineExtensionImages_ListVersions", + "description": "Gets a list of virtual machine extension image versions.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "publisherName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "type", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$orderby", + "in": "query", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineExtensionImage" + } + } + } + }, + "x-ms-odata": "#/definitions/VirtualMachineExtensionImage" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/extensions/{vmExtensionName}": { + "put": { + "tags": [ + "VirtualMachineExtensions" + ], + "operationId": "VirtualMachineExtensions_CreateOrUpdate", + "description": "The operation to create or update the extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine where the extension should be created or updated." + }, + { + "name": "vmExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + }, + "description": "Parameters supplied to the Create Virtual Machine Extension operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "VirtualMachineExtensions" + ], + "operationId": "VirtualMachineExtensions_Update", + "description": "The operation to update the extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine where the extension should be updated." + }, + { + "name": "vmExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineExtensionUpdate" + }, + "description": "Parameters supplied to the Update Virtual Machine Extension operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "VirtualMachineExtensions" + ], + "operationId": "VirtualMachineExtensions_Delete", + "description": "The operation to delete the extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine where the extension should be deleted." + }, + { + "name": "vmExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine extension." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "VirtualMachineExtensions" + ], + "operationId": "VirtualMachineExtensions_Get", + "description": "The operation to get the extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine containing the extension." + }, + { + "name": "vmExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine extension." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/extensions": { + "get": { + "tags": [ + "VirtualMachineExtensions" + ], + "operationId": "VirtualMachineExtensions_List", + "description": "The operation to get all extensions of a Virtual Machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine containing the extension." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineExtensionsListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus/{skus}/versions/{version}": { + "get": { + "tags": [ + "VirtualMachineImages" + ], + "operationId": "VirtualMachineImages_Get", + "description": "Gets a virtual machine image.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "publisherName", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher." + }, + { + "name": "offer", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher offer." + }, + { + "name": "skus", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image SKU." + }, + { + "name": "version", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image SKU version." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineImage" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus/{skus}/versions": { + "get": { + "tags": [ + "VirtualMachineImages" + ], + "operationId": "VirtualMachineImages_List", + "description": "Gets a list of all virtual machine image versions for the specified location, publisher, offer, and SKU.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "publisherName", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher." + }, + { + "name": "offer", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher offer." + }, + { + "name": "skus", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image SKU." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "$orderby", + "in": "query", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineImageResource" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers": { + "get": { + "tags": [ + "VirtualMachineImages" + ], + "operationId": "VirtualMachineImages_ListOffers", + "description": "Gets a list of virtual machine image offers for the specified location and publisher.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "publisherName", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineImageResource" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers": { + "get": { + "tags": [ + "VirtualMachineImages" + ], + "operationId": "VirtualMachineImages_ListPublishers", + "description": "Gets a list of virtual machine image publishers for the specified Azure location.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineImageResource" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/publishers/{publisherName}/artifacttypes/vmimage/offers/{offer}/skus": { + "get": { + "tags": [ + "VirtualMachineImages" + ], + "operationId": "VirtualMachineImages_ListSkus", + "description": "Gets a list of virtual machine image SKUs for the specified location, publisher, and offer.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The name of a supported Azure region." + }, + { + "name": "publisherName", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher." + }, + { + "name": "offer", + "in": "path", + "required": true, + "type": "string", + "description": "A valid image publisher offer." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineImageResource" + } + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/usages": { + "get": { + "tags": [ + "Usage" + ], + "operationId": "Usage_List", + "description": "Gets, for the specified location, the current compute resource usage information as well as the limits for compute resources under the subscription.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location for which resource usage is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListUsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/virtualMachines": { + "get": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_ListByLocation", + "description": "Gets all the virtual machines under the specified subscription for the specified location.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location for which virtual machines under the subscription are queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineListResult" + } + } + }, + "x-ms-examples": { + "Lists all the virtual machines under the specified subscription for the specified location.": { + "$ref": "./examples/ListVirtualMachinesInASubscriptionByLocation.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/vmSizes": { + "get": { + "tags": [ + "VirtualMachineSizes" + ], + "operationId": "VirtualMachineSizes_List", + "description": "This API is deprecated. Use [Resources Skus](https://docs.microsoft.com/en-us/rest/api/compute/resourceskus/list)", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location upon which virtual-machine-sizes is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineSizeListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/images/{imageName}": { + "put": { + "tags": [ + "Images" + ], + "operationId": "Images_CreateOrUpdate", + "description": "Create or update an image.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "imageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the image." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Image" + }, + "description": "Parameters supplied to the Create Image operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Image" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/Image" + } + } + }, + "x-ms-examples": { + "Create a virtual machine image from a blob.": { + "$ref": "./examples/CreateAnImageFromABlob.json" + }, + "Create a virtual machine image from a snapshot.": { + "$ref": "./examples/CreateAnImageFromASnapshot.json" + }, + "Create a virtual machine image from a managed disk.": { + "$ref": "./examples/CreateAnImageFromAManagedDisk.json" + }, + "Create a virtual machine image from an existing virtual machine.": { + "$ref": "./examples/CreateAnImageFromAVM.json" + }, + "Create a virtual machine image that includes a data disk from a blob.": { + "$ref": "./examples/CreateAnImageThatIncludesADataDiskFromABlob.json" + }, + "Create a virtual machine image that includes a data disk from a snapshot.": { + "$ref": "./examples/CreateAnImageThatIncludesADataDiskFromASnapshot.json" + }, + "Create a virtual machine image that includes a data disk from a managed disk.": { + "$ref": "./examples/CreateAnImageThatIncludesADataDiskFromAManagedDisk.json" + }, + "Create a virtual machine image from a blob with DiskEncryptionSet resource.": { + "$ref": "./examples/CreateAnImageFromABlobWithDiskEncryptionSet.json" + }, + "Create a virtual machine image from a snapshot with DiskEncryptionSet resource.": { + "$ref": "./examples/CreateAnImageFromASnapshotWithDiskEncryptionSet.json" + }, + "Create a virtual machine image from a managed disk with DiskEncryptionSet resource.": { + "$ref": "./examples/CreateAnImageFromAManagedDiskWithDiskEncryptionSet.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Images" + ], + "operationId": "Images_Update", + "description": "Update an image.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "imageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the image." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ImageUpdate" + }, + "description": "Parameters supplied to the Update Image operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Image" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/Image" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Updates tags of an Image.": { + "$ref": "./examples/UpdateImage.json" + } + } + }, + "delete": { + "tags": [ + "Images" + ], + "operationId": "Images_Delete", + "description": "Deletes an Image.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "imageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the image." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Images" + ], + "operationId": "Images_Get", + "description": "Gets an image.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "imageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the image." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Image" + } + } + }, + "x-ms-examples": { + "Get information about a virtual machine image.": { + "$ref": "./examples/GetInformationAboutAnImage.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/images": { + "get": { + "tags": [ + "Images" + ], + "operationId": "Images_ListByResourceGroup", + "description": "Gets the list of images under a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ImageListResult" + } + } + }, + "x-ms-examples": { + "List all virtual machine images in a resource group.": { + "$ref": "./examples/ListImagesInAResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/images": { + "get": { + "tags": [ + "Images" + ], + "operationId": "Images_List", + "description": "Gets the list of Images in the subscription. Use nextLink property in the response to get the next page of Images. Do this till nextLink is null to fetch all the Images.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ImageListResult" + } + } + }, + "x-ms-examples": { + "List all virtual machine images in a subscription.": { + "$ref": "./examples/ListImagesInASubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/capture": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Capture", + "description": "Captures the VM by copying virtual hard disks of the VM and outputs a template that can be used to create similar VMs.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineCaptureParameters" + }, + "description": "Parameters supplied to the Capture Virtual Machine operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineCaptureResult" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}": { + "put": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_CreateOrUpdate", + "description": "The operation to create or update a virtual machine. Please note some properties can be set only during virtual machine creation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachine" + }, + "description": "Parameters supplied to the Create Virtual Machine operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachine" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VirtualMachine" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create a vm with password authentication.": { + "$ref": "./examples/CreateAVmWithPasswordAuthentication.json" + }, + "Create a vm with ssh authentication.": { + "$ref": "./examples/CreateAVmWithSshAuthentication.json" + }, + "Create a vm with premium storage.": { + "$ref": "./examples/CreateAVmWithPremiumStorage.json" + }, + "Create a vm in an availability set.": { + "$ref": "./examples/CreateAVmInAnAvailabilitySet.json" + }, + "Create a vm with boot diagnostics.": { + "$ref": "./examples/CreateAVmWithBootDiagnostics.json" + }, + "Create a vm with empty data disks.": { + "$ref": "./examples/CreateAVmWithEmptyDataDisks.json" + }, + "Create a vm with a marketplace image plan.": { + "$ref": "./examples/CreateAVmWithAMarketplaceImagePlan.json" + }, + "Create a vm from a custom image.": { + "$ref": "./examples/CreateAVmFromACustomImage.json" + }, + "Create a platform-image vm with unmanaged os and data disks.": { + "$ref": "./examples/CreateAPlatformImageVmWithUnmanagedOsAndDataDisks.json" + }, + "Create a custom-image vm from an unmanaged generalized os image.": { + "$ref": "./examples/CreateACustomImageVmFromAnUnmanagedGeneralizedOsImage.json" + }, + "Create a vm with ephemeral os disk.": { + "$ref": "./examples/CreateAVmWithADiffOsDisk.json" + }, + "Create a vm with DiskEncryptionSet resource id in the os disk and data disk.": { + "$ref": "./examples/CreateAVmWithDiskEncryptionSetResource.json" + }, + "Create a vm with ephemeral os disk provisioning in Resource disk using placement property.": { + "$ref": "./examples/CreateAVmWithADiffOsDiskUsingDiffDiskPlacementAsResourceDisk.json" + }, + "Create a vm with ephemeral os disk provisioning in Cache disk using placement property.": { + "$ref": "./examples/CreateAVmWithADiffOsDiskUsingDiffDiskPlacementAsCacheDisk.json" + } + } + }, + "patch": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Update", + "description": "The operation to update a virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineUpdate" + }, + "description": "Parameters supplied to the Update Virtual Machine operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachine" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VirtualMachine" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a VM by detaching data disk": { + "$ref": "./examples/UpdateVMDetachDataDiskUsingToBeDetachedProperty.json" + } + } + }, + "delete": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Delete", + "description": "The operation to delete a virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Get", + "description": "Retrieves information about the model view or the instance view of a virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation.", + "enum": [ + "instanceView" + ], + "x-ms-enum": { + "name": "InstanceViewTypes", + "modelAsString": false + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachine" + } + } + }, + "x-ms-examples": { + "Get a Virtual Machine.": { + "$ref": "./examples/GetVirtualMachine.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/instanceView": { + "get": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_InstanceView", + "description": "Retrieves information about the run-time state of a virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineInstanceView" + } + } + }, + "x-ms-examples": { + "Get Virtual Machine Instance View.": { + "$ref": "./examples/GetVirtualMachineInstanceView.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/convertToManagedDisks": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_ConvertToManagedDisks", + "description": "Converts virtual machine disks from blob-based to managed disks. Virtual machine must be stop-deallocated before invoking this operation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/deallocate": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Deallocate", + "description": "Shuts down the virtual machine and releases the compute resources. You are not billed for the compute resources that this virtual machine uses.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/generalize": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Generalize", + "description": "Sets the OS state of the virtual machine to generalized. It is recommended to sysprep the virtual machine before performing this operation.
For Windows, please refer to [Create a managed image of a generalized VM in Azure](https://docs.microsoft.com/en-us/azure/virtual-machines/windows/capture-image-resource).
For Linux, please refer to [How to create an image of a virtual machine or VHD](https://docs.microsoft.com/en-us/azure/virtual-machines/linux/capture-image).", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + } + }, + "x-ms-examples": { + "Generalize a Virtual Machine.": { + "$ref": "./examples/GeneralizeVirtualMachine.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines": { + "get": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_List", + "description": "Lists all of the virtual machines in the specified resource group. Use the nextLink property in the response to get the next page of virtual machines.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/virtualMachines": { + "get": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_ListAll", + "description": "Lists all of the virtual machines in the specified subscription. Use the nextLink property in the response to get the next page of virtual machines.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "statusOnly", + "in": "query", + "required": false, + "type": "string", + "description": "statusOnly=true enables fetching run time status of all Virtual Machines in the subscription." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/vmSizes": { + "get": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_ListAvailableSizes", + "description": "Lists all available virtual machine sizes to which the specified virtual machine can be resized.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineSizeListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Lists all available virtual machine sizes to which the specified virtual machine can be resized": { + "$ref": "./examples/ListAvailableVmSizes_VirtualMachines.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/powerOff": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_PowerOff", + "description": "The operation to power off (stop) a virtual machine. The virtual machine can be restarted with the same provisioned resources. You are still charged for this virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "name": "skipShutdown", + "in": "query", + "required": false, + "type": "boolean", + "default": false, + "description": "The parameter to request non-graceful VM shutdown. True value for this flag indicates non-graceful shutdown whereas false indicates otherwise. Default value for this flag is false if not specified" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/reapply": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Reapply", + "description": "The operation to reapply a virtual machine's state.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Reapply the state of a virtual machine.": { + "$ref": "./examples/ReapplyVirtualMachine.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/restart": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Restart", + "description": "The operation to restart a virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/start": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Start", + "description": "The operation to start a virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/redeploy": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Redeploy", + "description": "Shuts down the virtual machine, moves it to a new node, and powers it back on.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/reimage": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_Reimage", + "description": "Reimages the virtual machine which has an ephemeral OS disk back to its initial state.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineReimageParameters" + }, + "description": "Parameters supplied to the Reimage Virtual Machine operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Reimage a Virtual Machine.": { + "$ref": "./examples/ReimageVirtualMachine.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/performMaintenance": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_PerformMaintenance", + "description": "The operation to perform maintenance on a virtual machine.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/SimulateEviction": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_SimulateEviction", + "description": "The operation to simulate the eviction of spot virtual machine", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": false, + "x-ms-examples": { + "Simulate Eviction a virtual machine.": { + "$ref": "./examples/SimulateEvictionOfVM.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}": { + "put": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_CreateOrUpdate", + "description": "Create or update a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set to create or update." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSet" + }, + "description": "The scale set object." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSet" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSet" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create a scale set with password authentication.": { + "$ref": "./examples/CreateAScaleSetWithPasswordAuthentication.json" + }, + "Create a scale set with ssh authentication.": { + "$ref": "./examples/CreateAScaleSetWithSshAuthentication.json" + }, + "Create a scale set with premium storage.": { + "$ref": "./examples/CreateAScaleSetWithPremiumStorage.json" + }, + "Create a scale set with empty data disks on each vm.": { + "$ref": "./examples/CreateAScaleSetWithEmptyDataDisksOnEachVm.json" + }, + "Create a scale set with an azure load balancer.": { + "$ref": "./examples/CreateAScaleSetWithAnAzureLoadBalancer.json" + }, + "Create a scale set with an azure application gateway.": { + "$ref": "./examples/CreateAScaleSetWithAnAzureApplicationGateway.json" + }, + "Create a scale set with boot diagnostics.": { + "$ref": "./examples/CreateAScaleSetWithBootDiagnostics.json" + }, + "Create a scale set with a marketplace image plan.": { + "$ref": "./examples/CreateAScaleSetWithAMarketplaceImagePlan.json" + }, + "Create a scale set from a custom image.": { + "$ref": "./examples/CreateAScaleSetFromACustomImage.json" + }, + "Create a platform-image scale set with unmanaged os disks.": { + "$ref": "./examples/CreateAPlatformImageScaleSetWithUnmanagedOsDisks.json" + }, + "Create a custom-image scale set from an unmanaged generalized os image.": { + "$ref": "./examples/CreateACustomImageScaleSetFromAnUnmanagedGeneralizedOsImage.json" + }, + "Create a scale set with virtual machines in different zones.": { + "$ref": "./examples/CreateAScaleSetWithVMsInDifferentZones.json" + }, + "Create a scale set with ephemeral os disks.": { + "$ref": "./examples/CreateAScaleSetWithDiffOsDisk.json" + }, + "Create a scale set with terminate scheduled events enabled.": { + "$ref": "./examples/CreateAScaleSetWithTerminateScheduledEventEnabled.json" + }, + "Create a scale set with automatic repairs enabled": { + "$ref": "./examples/CreateAScaleSetWithAutomaticRepairs.json" + }, + "Create a scale set with DiskEncryptionSet resource in os disk and data disk.": { + "$ref": "./examples/CreateAScalesetWithDiskEncryptionSetResource.json" + }, + "Create a scale set with ephemeral os disks using placement property.": { + "$ref": "./examples/CreateAScaleSetWithDiffOsDiskUsingDiffDiskPlacement.json" + } + } + }, + "patch": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Update", + "description": "Update a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set to create or update." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetUpdate" + }, + "description": "The scale set object." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSet" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Delete", + "description": "Deletes a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Get", + "description": "Display information about a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSet" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/deallocate": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Deallocate", + "description": "Deallocates specific virtual machines in a VM scale set. Shuts down the virtual machines and releases the compute resources. You are not billed for the compute resources that this virtual machine scale set deallocates.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/delete": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_DeleteInstances", + "description": "Deletes virtual machines in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceRequiredIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/instanceView": { + "get": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_GetInstanceView", + "description": "Gets the status of a VM scale set instance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetInstanceView" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets": { + "get": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_List", + "description": "Gets a list of all VM scale sets under a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensions/{vmssExtensionName}": { + "put": { + "tags": [ + "VirtualMachineScaleSetExtensions" + ], + "operationId": "VirtualMachineScaleSetExtensions_CreateOrUpdate", + "description": "The operation to create or update an extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set where the extension should be create or updated." + }, + { + "name": "vmssExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetExtension" + }, + "description": "Parameters supplied to the Create VM scale set Extension operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetExtension" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetExtension" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "VirtualMachineScaleSetExtensions" + ], + "operationId": "VirtualMachineScaleSetExtensions_Update", + "description": "The operation to update an extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set where the extension should be updated." + }, + { + "name": "vmssExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetExtensionUpdate" + }, + "description": "Parameters supplied to the Update VM scale set Extension operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetExtension" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetExtension" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "VirtualMachineScaleSetExtensions" + ], + "operationId": "VirtualMachineScaleSetExtensions_Delete", + "description": "The operation to delete the extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set where the extension should be deleted." + }, + { + "name": "vmssExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set extension." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "VirtualMachineScaleSetExtensions" + ], + "operationId": "VirtualMachineScaleSetExtensions_Get", + "description": "The operation to get the extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set containing the extension." + }, + { + "name": "vmssExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set extension." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetExtension" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensions": { + "get": { + "tags": [ + "VirtualMachineScaleSetExtensions" + ], + "operationId": "VirtualMachineScaleSetExtensions_List", + "description": "Gets a list of all extensions in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set containing the extension." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetExtensionListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/virtualMachineScaleSets": { + "get": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_ListAll", + "description": "Gets a list of all VM Scale Sets in the subscription, regardless of the associated resource group. Use nextLink property in the response to get the next page of VM Scale Sets. Do this till nextLink is null to fetch all the VM Scale Sets.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetListWithLinkResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/skus": { + "get": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_ListSkus", + "description": "Gets a list of SKUs available for your VM scale set, including the minimum and maximum VM instances allowed for each SKU.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetListSkusResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/osUpgradeHistory": { + "get": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_GetOSUpgradeHistory", + "description": "Gets list of OS upgrades on a VM scale set instance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetListOSUpgradeHistory" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/poweroff": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_PowerOff", + "description": "Power off (stop) one or more virtual machines in a VM scale set. Note that resources are still attached and you are getting charged for the resources. Instead, use deallocate to release resources and avoid charges.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "name": "skipShutdown", + "in": "query", + "required": false, + "type": "boolean", + "default": false, + "description": "The parameter to request non-graceful VM shutdown. True value for this flag indicates non-graceful shutdown whereas false indicates otherwise. Default value for this flag is false if not specified" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/restart": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Restart", + "description": "Restarts one or more virtual machines in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/start": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Start", + "description": "Starts one or more virtual machines in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/redeploy": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Redeploy", + "description": "Shuts down all the virtual machines in the virtual machine scale set, moves them to a new node, and powers them back on.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/performMaintenance": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_PerformMaintenance", + "description": "Perform maintenance on one or more virtual machines in a VM scale set. Operation on instances which are not eligible for perform maintenance will be failed. Please refer to best practices for more details: https://docs.microsoft.com/en-us/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-maintenance-notifications", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/manualupgrade": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_UpdateInstances", + "description": "Upgrades one or more virtual machines to the latest SKU set in the VM scale set model.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceRequiredIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/reimage": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_Reimage", + "description": "Reimages (upgrade the operating system) one or more virtual machines in a VM scale set which don't have a ephemeral OS disk, for virtual machines who have a ephemeral OS disk the virtual machine is reset to initial state.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmScaleSetReimageInput", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetReimageParameters" + }, + "description": "Parameters for Reimaging VM ScaleSet." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/reimageall": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_ReimageAll", + "description": "Reimages all the disks ( including data disks ) in the virtual machines in a VM scale set. This operation is only supported for managed disks.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "vmInstanceIDs", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceIDs" + }, + "description": "A list of virtual machine instance IDs from the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/rollingUpgrades/cancel": { + "post": { + "tags": [ + "VirtualMachineScaleSetRollingUpgrades" + ], + "operationId": "VirtualMachineScaleSetRollingUpgrades_Cancel", + "description": "Cancels the current virtual machine scale set rolling upgrade.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/osRollingUpgrade": { + "post": { + "tags": [ + "VirtualMachineScaleSetRollingUpgrades" + ], + "operationId": "VirtualMachineScaleSetRollingUpgrades_StartOSUpgrade", + "description": "Starts a rolling upgrade to move all virtual machine scale set instances to the latest available Platform Image OS version. Instances which are already running the latest available OS version are not affected.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/extensionRollingUpgrade": { + "post": { + "tags": [ + "VirtualMachineScaleSetRollingUpgrades" + ], + "operationId": "VirtualMachineScaleSetRollingUpgrades_StartExtensionUpgrade", + "description": "Starts a rolling upgrade to move all extensions for all virtual machine scale set instances to the latest available extension version. Instances which are already running the latest extension versions are not affected.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Start an extension rolling upgrade.": { + "$ref": "./examples/VMScaleSetExtensionRollingUpgrade.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/rollingUpgrades/latest": { + "get": { + "tags": [ + "VirtualMachineScaleSetRollingUpgrades" + ], + "operationId": "VirtualMachineScaleSetRollingUpgrades_GetLatest", + "description": "Gets the status of the latest virtual machine scale set rolling upgrade.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RollingUpgradeStatusInfo" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/forceRecoveryServiceFabricPlatformUpdateDomainWalk": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_ForceRecoveryServiceFabricPlatformUpdateDomainWalk", + "description": "Manual platform update domain walk to update virtual machines in a service fabric virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "platformUpdateDomain", + "in": "query", + "required": true, + "type": "integer", + "description": "The platform update domain for which a manual recovery walk is requested" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryWalkResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/convertToSinglePlacementGroup": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_ConvertToSinglePlacementGroup", + "description": "Converts SinglePlacementGroup property to false for a existing virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set to create or update." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VMScaleSetConvertToSinglePlacementGroupInput" + }, + "description": "The input object for ConvertToSinglePlacementGroup API." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/setOrchestrationServiceState": { + "post": { + "tags": [ + "VirtualMachineScaleSets" + ], + "operationId": "VirtualMachineScaleSets_SetOrchestrationServiceState", + "description": "Changes ServiceState property for a given service", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set to create or update." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/OrchestrationServiceStateInput" + }, + "description": "The input object for SetOrchestrationServiceState API." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/extensions/{vmExtensionName}": { + "put": { + "tags": [ + "VirtualMachineScaleSetVMExtensions" + ], + "operationId": "VirtualMachineScaleSetVMExtensions_CreateOrUpdate", + "description": "The operation to create or update the VMSS VM extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "vmExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + }, + "description": "Parameters supplied to the Create Virtual Machine Extension operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create VirtualMachineScaleSet VM extension.": { + "$ref": "./examples/CreateOrUpdateVirtualMachineScaleSetVMExtensions.json" + } + } + }, + "patch": { + "tags": [ + "VirtualMachineScaleSetVMExtensions" + ], + "operationId": "VirtualMachineScaleSetVMExtensions_Update", + "description": "The operation to update the VMSS VM extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "vmExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineExtensionUpdate" + }, + "description": "Parameters supplied to the Update Virtual Machine Extension operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update VirtualMachineScaleSet VM extension.": { + "$ref": "./examples/UpdateVirtualMachineScaleSetVMExtensions.json" + } + } + }, + "delete": { + "tags": [ + "VirtualMachineScaleSetVMExtensions" + ], + "operationId": "VirtualMachineScaleSetVMExtensions_Delete", + "description": "The operation to delete the VMSS VM extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "vmExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine extension." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete VirtualMachineScaleSet VM extension.": { + "$ref": "./examples/DeleteVirtualMachineScaleSetVMExtensions.json" + } + } + }, + "get": { + "tags": [ + "VirtualMachineScaleSetVMExtensions" + ], + "operationId": "VirtualMachineScaleSetVMExtensions_Get", + "description": "The operation to get the VMSS VM extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "vmExtensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine extension." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineExtension" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get VirtualMachineScaleSet VM extension.": { + "$ref": "./examples/GetVirtualMachineScaleSetVMExtensions.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualMachines/{instanceId}/extensions": { + "get": { + "tags": [ + "VirtualMachineScaleSetVMExtensions" + ], + "operationId": "VirtualMachineScaleSetVMExtensions_List", + "description": "The operation to get all extensions of an instance in Virtual Machine Scaleset.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineExtensionsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List extensions in Vmss instance.": { + "$ref": "./examples/ListVirtualMachineScaleSetVMExtensions.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/reimage": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Reimage", + "description": "Reimages (upgrade the operating system) a specific virtual machine in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "vmScaleSetVMReimageInput", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMReimageParameters" + }, + "description": "Parameters for the Reimaging Virtual machine in ScaleSet." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/reimageall": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_ReimageAll", + "description": "Allows you to re-image all the disks ( including data disks ) in the a VM scale set instance. This operation is only supported for managed disks.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/deallocate": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Deallocate", + "description": "Deallocates a specific virtual machine in a VM scale set. Shuts down the virtual machine and releases the compute resources it uses. You are not billed for the compute resources of this virtual machine once it is deallocated.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}": { + "put": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Update", + "description": "Updates a virtual machine of a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set where the extension should be create or updated." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVM" + }, + "description": "Parameters supplied to the Update Virtual Machine Scale Sets VM operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVM" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVM" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Delete", + "description": "Deletes a virtual machine from a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Get", + "description": "Gets a virtual machine from a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation.", + "enum": [ + "instanceView" + ], + "x-ms-enum": { + "name": "InstanceViewTypes", + "modelAsString": false + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVM" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/instanceView": { + "get": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_GetInstanceView", + "description": "Gets the status of a virtual machine from a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceView" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines": { + "get": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_List", + "description": "Gets a list of all virtual machines in a VM scale sets.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply to the operation." + }, + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "The list parameters." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply to the operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineScaleSetVMListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/VirtualMachineScaleSetVM" + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/poweroff": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_PowerOff", + "description": "Power off (stop) a virtual machine in a VM scale set. Note that resources are still attached and you are getting charged for the resources. Instead, use deallocate to release resources and avoid charges.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "skipShutdown", + "in": "query", + "required": false, + "type": "boolean", + "default": false, + "description": "The parameter to request non-graceful VM shutdown. True value for this flag indicates non-graceful shutdown whereas false indicates otherwise. Default value for this flag is false if not specified" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/restart": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Restart", + "description": "Restarts a virtual machine in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/start": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Start", + "description": "Starts a virtual machine in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/redeploy": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_Redeploy", + "description": "Shuts down the virtual machine in the virtual machine scale set, moves it to a new node, and powers it back on.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/performMaintenance": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_PerformMaintenance", + "description": "Performs maintenance on a virtual machine in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/logAnalytics/apiAccess/getRequestRateByInterval": { + "post": { + "tags": [ + "LogAnalytics" + ], + "operationId": "LogAnalytics_ExportRequestRateByInterval", + "x-ms-examples": { + "Export logs which contain all Api requests made to Compute Resource Provider within the given time period broken down by intervals.": { + "$ref": "./examples/LogAnalyticsRequestRateByInterval.json" + } + }, + "description": "Export logs that show Api requests made by this subscription in the given time window to show throttling activities.", + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RequestRateByIntervalInput" + }, + "description": "Parameters supplied to the LogAnalytics getRequestRateByInterval Api." + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location upon which virtual-machine-sizes is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/LogAnalyticsOperationResult" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/logAnalytics/apiAccess/getThrottledRequests": { + "post": { + "tags": [ + "LogAnalytics" + ], + "operationId": "LogAnalytics_ExportThrottledRequests", + "x-ms-examples": { + "Export logs which contain all throttled Api requests made to Compute Resource Provider within the given time period.": { + "$ref": "./examples/LogAnalyticsThrottledRequests.json" + } + }, + "description": "Export logs that show total throttled Api requests for this subscription in the given time window.", + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThrottledRequestsInput" + }, + "description": "Parameters supplied to the LogAnalytics getThrottledRequests Api." + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location upon which virtual-machine-sizes is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/LogAnalyticsOperationResult" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + } + }, + "definitions": { + "ComputeOperationListResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ComputeOperationValue" + }, + "description": "The list of compute operations" + } + }, + "description": "The List Compute Operation operation response." + }, + "ComputeOperationValue": { + "properties": { + "origin": { + "type": "string", + "readOnly": true, + "description": "The origin of the compute operation." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the compute operation." + }, + "display": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ComputeOperationValueDisplay" + } + }, + "description": "Describes the properties of a Compute Operation value." + }, + "ComputeOperationValueDisplay": { + "properties": { + "operation": { + "type": "string", + "readOnly": true, + "description": "The display name of the compute operation." + }, + "resource": { + "type": "string", + "readOnly": true, + "description": "The display name of the resource the operation applies to." + }, + "description": { + "type": "string", + "readOnly": true, + "description": "The description of the operation." + }, + "provider": { + "type": "string", + "readOnly": true, + "description": "The resource provider for the operation." + } + }, + "description": "Describes the properties of a Compute Operation Value Display." + }, + "HyperVGenerationType": { + "type": "string", + "description": "Specifies the HyperVGeneration Type", + "enum": [ + "V1", + "V2" + ], + "x-ms-enum": { + "name": "HyperVGenerationTypes", + "modelAsString": true + } + }, + "InstanceViewStatus": { + "properties": { + "code": { + "type": "string", + "description": "The status code." + }, + "level": { + "type": "string", + "description": "The level code.", + "enum": [ + "Info", + "Warning", + "Error" + ], + "x-ms-enum": { + "name": "StatusLevelTypes", + "modelAsString": false + } + }, + "displayStatus": { + "type": "string", + "description": "The short localizable label for the status." + }, + "message": { + "type": "string", + "description": "The detailed status message, including for alerts and error messages." + }, + "time": { + "type": "string", + "format": "date-time", + "description": "The time of the status." + } + }, + "description": "Instance view status." + }, + "AvailabilitySetProperties": { + "properties": { + "platformUpdateDomainCount": { + "type": "integer", + "format": "int32", + "description": "Update Domain count." + }, + "platformFaultDomainCount": { + "type": "integer", + "format": "int32", + "description": "Fault Domain count." + }, + "virtualMachines": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "A list of references to all virtual machines in the availability set." + }, + "proximityPlacementGroup": { + "$ref": "#/definitions/SubResource", + "description": "Specifies information about the proximity placement group that the availability set should be assigned to.

Minimum api-version: 2018-04-01." + }, + "statuses": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "The resource status information." + } + }, + "description": "The instance view of a resource." + }, + "AvailabilitySetSkuType": { + "type": "string", + "description": "Specifies the sku of an Availability Set. Use 'Aligned' for virtual machines with managed disks and 'Classic' for virtual machines with unmanaged disks. Default value is 'Classic'.", + "enum": [ + "Classic", + "Aligned" + ], + "x-ms-enum": { + "name": "AvailabilitySetSkuTypes", + "modelAsString": true + } + }, + "AvailabilitySet": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AvailabilitySetProperties" + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "Sku of the availability set, only name is required to be set. See AvailabilitySetSkuTypes for possible set of values. Use 'Aligned' for virtual machines with managed disks and 'Classic' for virtual machines with unmanaged disks. Default value is 'Classic'." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Specifies information about the availability set that the virtual machine should be assigned to. Virtual machines specified in the same availability set are allocated to different nodes to maximize availability. For more information about availability sets, see [Manage the availability of virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-manage-availability?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json).

For more information on Azure planned maintenance, see [Planned maintenance for virtual machines in Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-planned-maintenance?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)

Currently, a VM can only be added to availability set at creation time. An existing VM cannot be added to an availability set." + }, + "AvailabilitySetUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AvailabilitySetProperties" + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "Sku of the availability set" + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Specifies information about the availability set that the virtual machine should be assigned to. Only tags may be updated." + }, + "AvailabilitySetListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailabilitySet" + }, + "description": "The list of availability sets" + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of AvailabilitySets. Call ListNext() with this URI to fetch the next page of AvailabilitySets." + } + }, + "required": [ + "value" + ], + "description": "The List Availability Set operation response." + }, + "SubResourceWithColocationStatus": { + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "properties": { + "colocationStatus": { + "$ref": "#/definitions/InstanceViewStatus", + "description": "Describes colocation status of a resource in the Proximity Placement Group." + } + } + }, + "ProximityPlacementGroupProperties": { + "properties": { + "proximityPlacementGroupType": { + "type": "string", + "description": "Specifies the type of the proximity placement group.

Possible values are:

**Standard** : Co-locate resources within an Azure region or Availability Zone.

**Ultra** : For future use.", + "enum": [ + "Standard", + "Ultra" + ], + "x-ms-enum": { + "name": "ProximityPlacementGroupType", + "modelAsString": true + } + }, + "virtualMachines": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SubResourceWithColocationStatus" + }, + "description": "A list of references to all virtual machines in the proximity placement group." + }, + "virtualMachineScaleSets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SubResourceWithColocationStatus" + }, + "description": "A list of references to all virtual machine scale sets in the proximity placement group." + }, + "availabilitySets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SubResourceWithColocationStatus" + }, + "description": "A list of references to all availability sets in the proximity placement group." + }, + "colocationStatus": { + "$ref": "#/definitions/InstanceViewStatus", + "description": "Describes colocation status of the Proximity Placement Group." + } + }, + "description": "Describes the properties of a Proximity Placement Group." + }, + "ProximityPlacementGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProximityPlacementGroupProperties", + "description": "Describes the properties of a Proximity Placement Group." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Specifies information about the proximity placement group." + }, + "ProximityPlacementGroupUpdate": { + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Specifies information about the proximity placement group." + }, + "ProximityPlacementGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ProximityPlacementGroup" + }, + "description": "The list of proximity placement groups" + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of proximity placement groups." + } + }, + "required": [ + "value" + ], + "description": "The List Proximity Placement Group operation response." + }, + "DedicatedHostGroupProperties": { + "properties": { + "platformFaultDomainCount": { + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 3, + "description": "Number of fault domains that the host group can span." + }, + "hosts": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResourceReadOnly" + }, + "readOnly": true, + "description": "A list of references to all dedicated hosts in the dedicated host group." + } + }, + "required": [ + "platformFaultDomainCount" + ], + "description": "Dedicated Host Group Properties." + }, + "DedicatedHostGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DedicatedHostGroupProperties" + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Availability Zone to use for this host group. Only single zone is supported. The zone can be assigned only during creation. If not provided, the group supports all zones in the region. If provided, enforces each host in the group to be in the same zone." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Specifies information about the dedicated host group that the dedicated hosts should be assigned to.

Currently, a dedicated host can only be added to a dedicated host group at creation time. An existing dedicated host cannot be added to another dedicated host group." + }, + "DedicatedHostGroupUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DedicatedHostGroupProperties" + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Availability Zone to use for this host group. Only single zone is supported. The zone can be assigned only during creation. If not provided, the group supports all zones in the region. If provided, enforces each host in the group to be in the same zone." + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Specifies information about the dedicated host group that the dedicated host should be assigned to. Only tags may be updated." + }, + "DedicatedHostGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DedicatedHostGroup" + }, + "description": "The list of dedicated host groups" + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of Dedicated Host Groups. Call ListNext() with this URI to fetch the next page of Dedicated Host Groups." + } + }, + "required": [ + "value" + ], + "description": "The List Dedicated Host Group with resource group response." + }, + "DedicatedHostLicenseType": { + "type": "string", + "description": "Specifies the software license type that will be applied to the VMs deployed on the dedicated host.

Possible values are:

**None**

**Windows_Server_Hybrid**

**Windows_Server_Perpetual**

Default: **None**", + "enum": [ + "None", + "Windows_Server_Hybrid", + "Windows_Server_Perpetual" + ], + "x-ms-enum": { + "name": "DedicatedHostLicenseTypes", + "modelAsString": false + } + }, + "DedicatedHostAllocatableVM": { + "properties": { + "vmSize": { + "type": "string", + "description": "VM size in terms of which the unutilized capacity is represented." + }, + "count": { + "type": "number", + "format": "double", + "description": "Maximum number of VMs of size vmSize that can fit in the dedicated host's remaining capacity." + } + }, + "description": "Represents the dedicated host unutilized capacity in terms of a specific VM size." + }, + "DedicatedHostAvailableCapacity": { + "properties": { + "allocatableVMs": { + "type": "array", + "items": { + "$ref": "#/definitions/DedicatedHostAllocatableVM" + }, + "description": "The unutilized capacity of the dedicated host represented in terms of each VM size that is allowed to be deployed to the dedicated host." + } + }, + "description": "Dedicated host unutilized capacity." + }, + "DedicatedHostInstanceView": { + "properties": { + "assetId": { + "readOnly": true, + "type": "string", + "description": "Specifies the unique id of the dedicated physical machine on which the dedicated host resides." + }, + "availableCapacity": { + "$ref": "#/definitions/DedicatedHostAvailableCapacity", + "description": "Unutilized capacity of the dedicated host." + }, + "statuses": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "The resource status information." + } + }, + "description": "The instance view of a dedicated host." + }, + "DedicatedHostProperties": { + "properties": { + "platformFaultDomain": { + "type": "integer", + "format": "int32", + "minimum": 0, + "maximum": 2, + "description": "Fault domain of the dedicated host within a dedicated host group." + }, + "autoReplaceOnFailure": { + "type": "boolean", + "description": "Specifies whether the dedicated host should be replaced automatically in case of a failure. The value is defaulted to 'true' when not provided." + }, + "hostId": { + "readOnly": true, + "type": "string", + "description": "A unique id generated and assigned to the dedicated host by the platform.

Does not change throughout the lifetime of the host." + }, + "virtualMachines": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResourceReadOnly" + }, + "readOnly": true, + "description": "A list of references to all virtual machines in the Dedicated Host." + }, + "licenseType": { + "$ref": "#/definitions/DedicatedHostLicenseType", + "description": "Specifies the software license type that will be applied to the VMs deployed on the dedicated host.

Possible values are:

**None**

**Windows_Server_Hybrid**

**Windows_Server_Perpetual**

Default: **None**" + }, + "provisioningTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date when the host was first provisioned." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "instanceView": { + "$ref": "#/definitions/DedicatedHostInstanceView", + "readOnly": true, + "description": "The dedicated host instance view." + } + }, + "description": "Properties of the dedicated host." + }, + "DedicatedHost": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DedicatedHostProperties" + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "SKU of the dedicated host for Hardware Generation and VM family. Only name is required to be set. List Microsoft.Compute SKUs for a list of possible values." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "required": [ + "sku" + ], + "description": "Specifies information about the Dedicated host." + }, + "DedicatedHostUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DedicatedHostProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Specifies information about the dedicated host. Only tags, autoReplaceOnFailure and licenseType may be updated." + }, + "DedicatedHostListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DedicatedHost" + }, + "description": "The list of dedicated hosts" + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of dedicated hosts. Call ListNext() with this URI to fetch the next page of dedicated hosts." + } + }, + "required": [ + "value" + ], + "description": "The list dedicated host operation response." + }, + "SshPublicKeyGenerateKeyPairResult": { + "properties": { + "privateKey": { + "type": "string", + "description": "Private key portion of the key pair used to authenticate to a virtual machine through ssh. The private key is returned in RFC3447 format and should be treated as a secret." + }, + "publicKey": { + "type": "string", + "description": "Public key portion of the key pair used to authenticate to a virtual machine through ssh. The public key is in ssh-rsa format." + }, + "id": { + "type": "string", + "description": "The ARM resource id in the form of /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.Compute/sshPublicKeys/{SshPublicKeyName}" + } + }, + "required": [ + "privateKey", + "publicKey", + "id" + ], + "description": "Response from generation of an SSH key pair." + }, + "SshPublicKeyResourceProperties": { + "properties": { + "publicKey": { + "type": "string", + "description": "SSH public key used to authenticate to a virtual machine through ssh. If this property is not initially provided when the resource is created, the publicKey property will be populated when generateKeyPair is called. If the public key is provided upon resource creation, the provided public key needs to be at least 2048-bit and in ssh-rsa format." + } + }, + "description": "Properties of the SSH public key." + }, + "SshPublicKeyResource": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SshPublicKeyResourceProperties", + "description": "Properties of the SSH public key." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Specifies information about the SSH public key." + }, + "SshPublicKeyUpdateResource": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SshPublicKeyResourceProperties", + "description": "Properties of the SSH public key." + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Specifies information about the SSH public key." + }, + "SshPublicKeysGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SshPublicKeyResource" + }, + "description": "The list of SSH public keys" + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of SSH public keys. Call ListNext() with this URI to fetch the next page of SSH public keys." + } + }, + "required": [ + "value" + ], + "description": "The list SSH public keys operation response." + }, + "VirtualMachineSize": { + "properties": { + "name": { + "type": "string", + "description": "The name of the virtual machine size." + }, + "numberOfCores": { + "type": "integer", + "format": "int32", + "description": "The number of cores supported by the virtual machine size." + }, + "osDiskSizeInMB": { + "type": "integer", + "format": "int32", + "description": "The OS disk size, in MB, allowed by the virtual machine size." + }, + "resourceDiskSizeInMB": { + "type": "integer", + "format": "int32", + "description": "The resource disk size, in MB, allowed by the virtual machine size." + }, + "memoryInMB": { + "type": "integer", + "format": "int32", + "description": "The amount of memory, in MB, supported by the virtual machine size." + }, + "maxDataDiskCount": { + "type": "integer", + "format": "int32", + "description": "The maximum number of data disks that can be attached to the virtual machine size." + } + }, + "description": "Describes the properties of a VM size." + }, + "VirtualMachineSizeListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineSize" + }, + "description": "The list of virtual machine sizes." + } + }, + "description": "The List Virtual Machine operation response." + }, + "VirtualMachineExtensionImageProperties": { + "properties": { + "operatingSystem": { + "type": "string", + "description": "The operating system this extension supports." + }, + "computeRole": { + "type": "string", + "description": "The type of role (IaaS or PaaS) this extension supports." + }, + "handlerSchema": { + "type": "string", + "description": "The schema defined by publisher, where extension consumers should provide settings in a matching schema." + }, + "vmScaleSetEnabled": { + "type": "boolean", + "description": "Whether the extension can be used on xRP VMScaleSets. By default existing extensions are usable on scalesets, but there might be cases where a publisher wants to explicitly indicate the extension is only enabled for CRP VMs but not VMSS." + }, + "supportsMultipleExtensions": { + "type": "boolean", + "description": "Whether the handler can support multiple extensions." + } + }, + "required": [ + "operatingSystem", + "computeRole", + "handlerSchema" + ], + "description": "Describes the properties of a Virtual Machine Extension Image." + }, + "VirtualMachineExtensionImage": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineExtensionImageProperties" + } + }, + "required": [ + "name", + "location" + ], + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Describes a Virtual Machine Extension Image." + }, + "VirtualMachineImageResource": { + "properties": { + "name": { + "type": "string", + "description": "The name of the resource." + }, + "location": { + "type": "string", + "description": "The supported Azure location of the resource." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Specifies the tags that are assigned to the virtual machine. For more information about using tags, see [Using tags to organize your Azure resources](https://docs.microsoft.com/azure/azure-resource-manager/resource-group-using-tags.md)." + } + }, + "required": [ + "name", + "location" + ], + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "Virtual machine image resource information." + }, + "VirtualMachineExtensionInstanceView": { + "properties": { + "name": { + "type": "string", + "description": "The virtual machine extension name." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "substatuses": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "The resource status information." + }, + "statuses": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "The resource status information." + } + }, + "description": "The instance view of a virtual machine extension." + }, + "VirtualMachineExtensionProperties": { + "properties": { + "forceUpdateTag": { + "type": "string", + "description": "How the extension handler should be forced to update even if the extension configuration has not changed." + }, + "publisher": { + "type": "string", + "description": "The name of the extension handler publisher." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "autoUpgradeMinorVersion": { + "type": "boolean", + "description": "Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true." + }, + "settings": { + "type": "object", + "description": "Json formatted public settings for the extension." + }, + "protectedSettings": { + "type": "object", + "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "instanceView": { + "$ref": "#/definitions/VirtualMachineExtensionInstanceView", + "description": "The virtual machine extension instance view." + } + }, + "description": "Describes the properties of a Virtual Machine Extension." + }, + "VirtualMachineExtensionUpdateProperties": { + "properties": { + "forceUpdateTag": { + "type": "string", + "description": "How the extension handler should be forced to update even if the extension configuration has not changed." + }, + "publisher": { + "type": "string", + "description": "The name of the extension handler publisher." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "autoUpgradeMinorVersion": { + "type": "boolean", + "description": "Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true." + }, + "settings": { + "type": "object", + "description": "Json formatted public settings for the extension." + }, + "protectedSettings": { + "type": "object", + "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all." + } + }, + "description": "Describes the properties of a Virtual Machine Extension." + }, + "VirtualMachineExtension": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineExtensionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Describes a Virtual Machine Extension." + }, + "VirtualMachineExtensionUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineExtensionUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Describes a Virtual Machine Extension." + }, + "VirtualMachineExtensionsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineExtension" + }, + "description": "The list of extensions" + } + }, + "description": "The List Extension operation response" + }, + "PurchasePlan": { + "properties": { + "publisher": { + "type": "string", + "description": "The publisher ID." + }, + "name": { + "type": "string", + "description": "The plan ID." + }, + "product": { + "type": "string", + "description": "Specifies the product of the image from the marketplace. This is the same value as Offer under the imageReference element." + } + }, + "required": [ + "publisher", + "name", + "product" + ], + "description": "Used for establishing the purchase context of any 3rd Party artifact through MarketPlace." + }, + "OSDiskImage": { + "properties": { + "operatingSystem": { + "type": "string", + "description": "The operating system of the osDiskImage.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + } + }, + "required": [ + "operatingSystem" + ], + "description": "Contains the os disk image information." + }, + "DataDiskImage": { + "properties": { + "lun": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM." + } + }, + "description": "Contains the data disk images information." + }, + "AutomaticOSUpgradeProperties": { + "properties": { + "automaticOSUpgradeSupported": { + "type": "boolean", + "description": "Specifies whether automatic OS upgrade is supported on the image." + } + }, + "required": [ + "automaticOSUpgradeSupported" + ], + "description": "Describes automatic OS upgrade properties on the image." + }, + "VirtualMachineImageProperties": { + "properties": { + "plan": { + "$ref": "#/definitions/PurchasePlan" + }, + "osDiskImage": { + "$ref": "#/definitions/OSDiskImage" + }, + "dataDiskImages": { + "type": "array", + "items": { + "$ref": "#/definitions/DataDiskImage" + } + }, + "automaticOSUpgradeProperties": { + "$ref": "#/definitions/AutomaticOSUpgradeProperties" + }, + "hyperVGeneration": { + "$ref": "#/definitions/HyperVGenerationType" + } + }, + "description": "Describes the properties of a Virtual Machine Image." + }, + "VirtualMachineImage": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineImageProperties" + } + }, + "required": [ + "name", + "location" + ], + "allOf": [ + { + "$ref": "#/definitions/VirtualMachineImageResource" + } + ], + "description": "Describes a Virtual Machine Image." + }, + "UsageName": { + "properties": { + "value": { + "type": "string", + "description": "The name of the resource." + }, + "localizedValue": { + "type": "string", + "description": "The localized name of the resource." + } + }, + "description": "The Usage Names." + }, + "Usage": { + "properties": { + "unit": { + "type": "string", + "description": "An enum describing the unit of usage measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "UsageUnit", + "modelAsString": false + } + }, + "currentValue": { + "type": "integer", + "format": "int32", + "description": "The current usage of the resource." + }, + "limit": { + "type": "integer", + "format": "int64", + "description": "The maximum permitted usage of the resource." + }, + "name": { + "$ref": "#/definitions/UsageName", + "description": "The name of the type of usage." + } + }, + "required": [ + "unit", + "currentValue", + "limit", + "name" + ], + "description": "Describes Compute Resource Usage." + }, + "ListUsagesResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "The list of compute resource usages." + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of compute resource usage information. Call ListNext() with this to fetch the next page of compute resource usage information." + } + }, + "required": [ + "value" + ], + "description": "The List Usages operation response." + }, + "VirtualMachineReimageParameters": { + "properties": { + "tempDisk": { + "type": "boolean", + "description": "Specifies whether to reimage temp disk. Default value: false. Note: This temp disk reimage parameter is only supported for VM/VMSS with Ephemeral OS disk." + } + }, + "description": "Parameters for Reimaging Virtual Machine. NOTE: Virtual Machine OS disk will always be reimaged" + }, + "VirtualMachineCaptureParameters": { + "properties": { + "vhdPrefix": { + "type": "string", + "description": "The captured virtual hard disk's name prefix." + }, + "destinationContainerName": { + "type": "string", + "description": "The destination container name." + }, + "overwriteVhds": { + "type": "boolean", + "description": "Specifies whether to overwrite the destination virtual hard disk, in case of conflict." + } + }, + "required": [ + "vhdPrefix", + "destinationContainerName", + "overwriteVhds" + ], + "description": "Capture Virtual Machine parameters." + }, + "VirtualMachineCaptureResult": { + "properties": { + "$schema": { + "readOnly": true, + "type": "string", + "description": "the schema of the captured virtual machine" + }, + "contentVersion": { + "readOnly": true, + "type": "string", + "description": "the version of the content" + }, + "parameters": { + "readOnly": true, + "type": "object", + "description": "parameters of the captured virtual machine" + }, + "resources": { + "readOnly": true, + "type": "array", + "items": { + "type": "object", + "description": "resource item" + }, + "description": "a list of resource items of the captured virtual machine" + } + }, + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "Output of virtual machine capture operation." + }, + "Plan": { + "properties": { + "name": { + "type": "string", + "description": "The plan ID." + }, + "publisher": { + "type": "string", + "description": "The publisher ID." + }, + "product": { + "type": "string", + "description": "Specifies the product of the image from the marketplace. This is the same value as Offer under the imageReference element." + }, + "promotionCode": { + "type": "string", + "description": "The promotion code." + } + }, + "description": "Specifies information about the marketplace image used to create the virtual machine. This element is only used for marketplace images. Before you can use a marketplace image from an API, you must enable the image for programmatic use. In the Azure portal, find the marketplace image that you want to use and then click **Want to deploy programmatically, Get Started ->**. Enter any required information and then click **Save**." + }, + "HardwareProfile": { + "properties": { + "vmSize": { + "type": "string", + "description": "Specifies the size of the virtual machine. For more information about virtual machine sizes, see [Sizes for virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-sizes?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json).

The available VM sizes depend on region and availability set. For a list of available sizes use these APIs:

[List all available virtual machine sizes in an availability set](https://docs.microsoft.com/rest/api/compute/availabilitysets/listavailablesizes)

[List all available virtual machine sizes in a region](https://docs.microsoft.com/rest/api/compute/virtualmachinesizes/list)

[List all available virtual machine sizes for resizing](https://docs.microsoft.com/rest/api/compute/virtualmachines/listavailablesizes)", + "enum": [ + "Basic_A0", + "Basic_A1", + "Basic_A2", + "Basic_A3", + "Basic_A4", + "Standard_A0", + "Standard_A1", + "Standard_A2", + "Standard_A3", + "Standard_A4", + "Standard_A5", + "Standard_A6", + "Standard_A7", + "Standard_A8", + "Standard_A9", + "Standard_A10", + "Standard_A11", + "Standard_A1_v2", + "Standard_A2_v2", + "Standard_A4_v2", + "Standard_A8_v2", + "Standard_A2m_v2", + "Standard_A4m_v2", + "Standard_A8m_v2", + "Standard_B1s", + "Standard_B1ms", + "Standard_B2s", + "Standard_B2ms", + "Standard_B4ms", + "Standard_B8ms", + "Standard_D1", + "Standard_D2", + "Standard_D3", + "Standard_D4", + "Standard_D11", + "Standard_D12", + "Standard_D13", + "Standard_D14", + "Standard_D1_v2", + "Standard_D2_v2", + "Standard_D3_v2", + "Standard_D4_v2", + "Standard_D5_v2", + "Standard_D2_v3", + "Standard_D4_v3", + "Standard_D8_v3", + "Standard_D16_v3", + "Standard_D32_v3", + "Standard_D64_v3", + "Standard_D2s_v3", + "Standard_D4s_v3", + "Standard_D8s_v3", + "Standard_D16s_v3", + "Standard_D32s_v3", + "Standard_D64s_v3", + "Standard_D11_v2", + "Standard_D12_v2", + "Standard_D13_v2", + "Standard_D14_v2", + "Standard_D15_v2", + "Standard_DS1", + "Standard_DS2", + "Standard_DS3", + "Standard_DS4", + "Standard_DS11", + "Standard_DS12", + "Standard_DS13", + "Standard_DS14", + "Standard_DS1_v2", + "Standard_DS2_v2", + "Standard_DS3_v2", + "Standard_DS4_v2", + "Standard_DS5_v2", + "Standard_DS11_v2", + "Standard_DS12_v2", + "Standard_DS13_v2", + "Standard_DS14_v2", + "Standard_DS15_v2", + "Standard_DS13-4_v2", + "Standard_DS13-2_v2", + "Standard_DS14-8_v2", + "Standard_DS14-4_v2", + "Standard_E2_v3", + "Standard_E4_v3", + "Standard_E8_v3", + "Standard_E16_v3", + "Standard_E32_v3", + "Standard_E64_v3", + "Standard_E2s_v3", + "Standard_E4s_v3", + "Standard_E8s_v3", + "Standard_E16s_v3", + "Standard_E32s_v3", + "Standard_E64s_v3", + "Standard_E32-16_v3", + "Standard_E32-8s_v3", + "Standard_E64-32s_v3", + "Standard_E64-16s_v3", + "Standard_F1", + "Standard_F2", + "Standard_F4", + "Standard_F8", + "Standard_F16", + "Standard_F1s", + "Standard_F2s", + "Standard_F4s", + "Standard_F8s", + "Standard_F16s", + "Standard_F2s_v2", + "Standard_F4s_v2", + "Standard_F8s_v2", + "Standard_F16s_v2", + "Standard_F32s_v2", + "Standard_F64s_v2", + "Standard_F72s_v2", + "Standard_G1", + "Standard_G2", + "Standard_G3", + "Standard_G4", + "Standard_G5", + "Standard_GS1", + "Standard_GS2", + "Standard_GS3", + "Standard_GS4", + "Standard_GS5", + "Standard_GS4-8", + "Standard_GS4-4", + "Standard_GS5-16", + "Standard_GS5-8", + "Standard_H8", + "Standard_H16", + "Standard_H8m", + "Standard_H16m", + "Standard_H16r", + "Standard_H16mr", + "Standard_L4s", + "Standard_L8s", + "Standard_L16s", + "Standard_L32s", + "Standard_M64s", + "Standard_M64ms", + "Standard_M128s", + "Standard_M128ms", + "Standard_M64-32ms", + "Standard_M64-16ms", + "Standard_M128-64ms", + "Standard_M128-32ms", + "Standard_NC6", + "Standard_NC12", + "Standard_NC24", + "Standard_NC24r", + "Standard_NC6s_v2", + "Standard_NC12s_v2", + "Standard_NC24s_v2", + "Standard_NC24rs_v2", + "Standard_NC6s_v3", + "Standard_NC12s_v3", + "Standard_NC24s_v3", + "Standard_NC24rs_v3", + "Standard_ND6s", + "Standard_ND12s", + "Standard_ND24s", + "Standard_ND24rs", + "Standard_NV6", + "Standard_NV12", + "Standard_NV24" + ], + "x-ms-enum": { + "name": "VirtualMachineSizeTypes", + "modelAsString": true + } + } + }, + "description": "Specifies the hardware settings for the virtual machine." + }, + "ImageReference": { + "properties": { + "publisher": { + "type": "string", + "description": "The image publisher." + }, + "offer": { + "type": "string", + "description": "Specifies the offer of the platform image or marketplace image used to create the virtual machine." + }, + "sku": { + "type": "string", + "description": "The image SKU." + }, + "version": { + "type": "string", + "description": "Specifies the version of the platform image or marketplace image used to create the virtual machine. The allowed formats are Major.Minor.Build or 'latest'. Major, Minor, and Build are decimal numbers. Specify 'latest' to use the latest version of an image available at deploy time. Even if you use 'latest', the VM image will not automatically update after deploy time even if a new version becomes available." + }, + "exactVersion": { + "type": "string", + "readOnly": true, + "description": "Specifies in decimal numbers, the version of platform image or marketplace image used to create the virtual machine. This readonly field differs from 'version', only if the value specified in 'version' field is 'latest'." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations. NOTE: Image reference publisher and offer can only be set when you create the scale set." + }, + "KeyVaultSecretReference": { + "properties": { + "secretUrl": { + "type": "string", + "description": "The URL referencing a secret in a Key Vault." + }, + "sourceVault": { + "$ref": "#/definitions/SubResource", + "description": "The relative URL of the Key Vault containing the secret." + } + }, + "required": [ + "secretUrl", + "sourceVault" + ], + "description": "Describes a reference to Key Vault Secret" + }, + "DiskEncryptionSetParameters": { + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "Describes the parameter of customer managed disk encryption set resource id that can be specified for disk.

NOTE: The disk encryption set resource id can only be specified for managed disk. Please refer https://aka.ms/mdssewithcmkoverview for more details." + }, + "KeyVaultKeyReference": { + "properties": { + "keyUrl": { + "type": "string", + "description": "The URL referencing a key encryption key in Key Vault." + }, + "sourceVault": { + "$ref": "#/definitions/SubResource", + "description": "The relative URL of the Key Vault containing the key." + } + }, + "required": [ + "keyUrl", + "sourceVault" + ], + "description": "Describes a reference to Key Vault Key" + }, + "DiskEncryptionSettings": { + "properties": { + "diskEncryptionKey": { + "$ref": "#/definitions/KeyVaultSecretReference", + "description": "Specifies the location of the disk encryption key, which is a Key Vault Secret." + }, + "keyEncryptionKey": { + "$ref": "#/definitions/KeyVaultKeyReference", + "description": "Specifies the location of the key encryption key in Key Vault." + }, + "enabled": { + "type": "boolean", + "description": "Specifies whether disk encryption should be enabled on the virtual machine." + } + }, + "description": "Describes a Encryption Settings for a Disk" + }, + "VirtualHardDisk": { + "properties": { + "uri": { + "type": "string", + "description": "Specifies the virtual hard disk's uri." + } + }, + "description": "Describes the uri of a disk." + }, + "Caching": { + "type": "string", + "description": "Specifies the caching requirements.

Possible values are:

**None**

**ReadOnly**

**ReadWrite**

Default: **None for Standard storage. ReadOnly for Premium storage**", + "enum": [ + "None", + "ReadOnly", + "ReadWrite" + ], + "x-ms-enum": { + "name": "CachingTypes", + "modelAsString": false + } + }, + "CreateOption": { + "type": "string", + "description": "Specifies how the virtual machine should be created.

Possible values are:

**Attach** \\u2013 This value is used when you are using a specialized disk to create the virtual machine.

**FromImage** \\u2013 This value is used when you are using an image to create the virtual machine. If you are using a platform image, you also use the imageReference element described above. If you are using a marketplace image, you also use the plan element previously described.", + "enum": [ + "FromImage", + "Empty", + "Attach" + ], + "x-ms-enum": { + "name": "DiskCreateOptionTypes", + "modelAsString": true + } + }, + "StorageAccountType": { + "type": "string", + "description": "Specifies the storage account type for the managed disk. Managed OS disk storage account type can only be set when you create the scale set. NOTE: UltraSSD_LRS can only be used with data disks. It cannot be used with OS Disk. Standard_LRS uses Standard HDD. StandardSSD_LRS uses Standard SSD. Premium_LRS uses Premium SSD. UltraSSD_LRS uses Ultra disk. For more information regarding disks supported for Windows Virtual Machines, refer to https://docs.microsoft.com/en-us/azure/virtual-machines/windows/disks-types and, for Linux Virtual Machines, refer to https://docs.microsoft.com/en-us/azure/virtual-machines/linux/disks-types", + "enum": [ + "Standard_LRS", + "Premium_LRS", + "StandardSSD_LRS", + "UltraSSD_LRS" + ], + "x-ms-enum": { + "name": "StorageAccountTypes", + "modelAsString": true + } + }, + "DiffDiskOption": { + "type": "string", + "description": "Specifies the ephemeral disk option for operating system disk.", + "enum": [ + "Local" + ], + "x-ms-enum": { + "name": "DiffDiskOptions", + "modelAsString": true + } + }, + "DiffDiskPlacement": { + "type": "string", + "description": "Specifies the ephemeral disk placement for operating system disk. This property can be used by user in the request to choose the location i.e, cache disk or resource disk space for Ephemeral OS disk provisioning. For more information on Ephemeral OS disk size requirements, please refer Ephemeral OS disk size requirements for Windows VM at https://docs.microsoft.com/en-us/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements and Linux VM at https://docs.microsoft.com/en-us/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements", + "enum": [ + "CacheDisk", + "ResourceDisk" + ], + "x-ms-enum": { + "name": "DiffDiskPlacement", + "modelAsString": true + } + }, + "DiffDiskSettings": { + "properties": { + "option": { + "$ref": "#/definitions/DiffDiskOption", + "description": "Specifies the ephemeral disk settings for operating system disk." + }, + "placement": { + "$ref": "#/definitions/DiffDiskPlacement", + "description": "Specifies the ephemeral disk placement for operating system disk.

Possible values are:

**CacheDisk**

**ResourceDisk**

Default: **CacheDisk** if one is configured for the VM size otherwise **ResourceDisk** is used.

Refer to VM size documentation for Windows VM at https://docs.microsoft.com/en-us/azure/virtual-machines/windows/sizes and Linux VM at https://docs.microsoft.com/en-us/azure/virtual-machines/linux/sizes to check which VM sizes exposes a cache disk." + } + }, + "description": "Describes the parameters of ephemeral disk settings that can be specified for operating system disk.

NOTE: The ephemeral disk settings can only be specified for managed disk." + }, + "ManagedDiskParameters": { + "properties": { + "storageAccountType": { + "$ref": "#/definitions/StorageAccountType", + "description": "Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk." + }, + "diskEncryptionSet": { + "$ref": "#/definitions/DiskEncryptionSetParameters", + "description": "Specifies the customer managed disk encryption set resource id for the managed disk." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "The parameters of a managed disk." + }, + "OSDisk": { + "properties": { + "osType": { + "type": "string", + "description": "This property allows you to specify the type of the OS that is included in the disk if creating a VM from user-image or a specialized VHD.

Possible values are:

**Windows**

**Linux**", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "encryptionSettings": { + "$ref": "#/definitions/DiskEncryptionSettings", + "description": "Specifies the encryption settings for the OS Disk.

Minimum api-version: 2015-06-15" + }, + "name": { + "type": "string", + "description": "The disk name." + }, + "vhd": { + "$ref": "#/definitions/VirtualHardDisk", + "description": "The virtual hard disk." + }, + "image": { + "$ref": "#/definitions/VirtualHardDisk", + "description": "The source user image virtual hard disk. The virtual hard disk will be copied before being attached to the virtual machine. If SourceImage is provided, the destination virtual hard drive must not exist." + }, + "caching": { + "$ref": "#/definitions/Caching", + "description": "Specifies the caching requirements.

Possible values are:

**None**

**ReadOnly**

**ReadWrite**

Default: **None** for Standard storage. **ReadOnly** for Premium storage." + }, + "writeAcceleratorEnabled": { + "type": "boolean", + "description": "Specifies whether writeAccelerator should be enabled or disabled on the disk." + }, + "diffDiskSettings": { + "$ref": "#/definitions/DiffDiskSettings", + "description": "Specifies the ephemeral Disk Settings for the operating system disk used by the virtual machine." + }, + "createOption": { + "$ref": "#/definitions/CreateOption", + "description": "Specifies how the virtual machine should be created.

Possible values are:

**Attach** \\u2013 This value is used when you are using a specialized disk to create the virtual machine.

**FromImage** \\u2013 This value is used when you are using an image to create the virtual machine. If you are using a platform image, you also use the imageReference element described above. If you are using a marketplace image, you also use the plan element previously described." + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "Specifies the size of an empty data disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB" + }, + "managedDisk": { + "description": "The managed disk parameters.", + "$ref": "#/definitions/ManagedDiskParameters" + } + }, + "required": [ + "createOption" + ], + "description": "Specifies information about the operating system disk used by the virtual machine.

For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)." + }, + "DataDisk": { + "properties": { + "lun": { + "type": "integer", + "format": "int32", + "description": "Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM." + }, + "name": { + "type": "string", + "description": "The disk name." + }, + "vhd": { + "$ref": "#/definitions/VirtualHardDisk", + "description": "The virtual hard disk." + }, + "image": { + "$ref": "#/definitions/VirtualHardDisk", + "description": "The source user image virtual hard disk. The virtual hard disk will be copied before being attached to the virtual machine. If SourceImage is provided, the destination virtual hard drive must not exist." + }, + "caching": { + "$ref": "#/definitions/Caching", + "description": "Specifies the caching requirements.

Possible values are:

**None**

**ReadOnly**

**ReadWrite**

Default: **None for Standard storage. ReadOnly for Premium storage**" + }, + "writeAcceleratorEnabled": { + "type": "boolean", + "description": "Specifies whether writeAccelerator should be enabled or disabled on the disk." + }, + "createOption": { + "$ref": "#/definitions/CreateOption", + "description": "Specifies how the virtual machine should be created.

Possible values are:

**Attach** \\u2013 This value is used when you are using a specialized disk to create the virtual machine.

**FromImage** \\u2013 This value is used when you are using an image to create the virtual machine. If you are using a platform image, you also use the imageReference element described above. If you are using a marketplace image, you also use the plan element previously described." + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "Specifies the size of an empty data disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

This value cannot be larger than 1023 GB" + }, + "managedDisk": { + "description": "The managed disk parameters.", + "$ref": "#/definitions/ManagedDiskParameters" + }, + "toBeDetached": { + "type": "boolean", + "description": "Specifies whether the data disk is in process of detachment from the VirtualMachine/VirtualMachineScaleset" + }, + "diskIOPSReadWrite": { + "type": "integer", + "readOnly": true, + "format": "int64", + "description": "Specifies the Read-Write IOPS for the managed disk when StorageAccountType is UltraSSD_LRS. Returned only for VirtualMachine ScaleSet VM disks. Can be updated only via updates to the VirtualMachine Scale Set." + }, + "diskMBpsReadWrite": { + "type": "integer", + "readOnly": true, + "format": "int64", + "description": "Specifies the bandwidth in MB per second for the managed disk when StorageAccountType is UltraSSD_LRS. Returned only for VirtualMachine ScaleSet VM disks. Can be updated only via updates to the VirtualMachine Scale Set." + } + }, + "required": [ + "lun", + "createOption" + ], + "description": "Describes a data disk." + }, + "StorageProfile": { + "properties": { + "imageReference": { + "$ref": "#/definitions/ImageReference", + "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations." + }, + "osDisk": { + "$ref": "#/definitions/OSDisk", + "description": "Specifies information about the operating system disk used by the virtual machine.

For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)." + }, + "dataDisks": { + "type": "array", + "items": { + "$ref": "#/definitions/DataDisk" + }, + "description": "Specifies the parameters that are used to add a data disk to a virtual machine.

For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)." + } + }, + "description": "Specifies the storage settings for the virtual machine disks." + }, + "AdditionalCapabilities": { + "properties": { + "ultraSSDEnabled": { + "type": "boolean", + "description": "The flag that enables or disables a capability to have one or more managed data disks with UltraSSD_LRS storage account type on the VM or VMSS. Managed disks with storage account type UltraSSD_LRS can be added to a virtual machine or virtual machine scale set only if this property is enabled." + } + }, + "description": "Enables or disables a capability on the virtual machine or virtual machine scale set." + }, + "AdditionalUnattendContent": { + "properties": { + "passName": { + "type": "string", + "description": "The pass name. Currently, the only allowable value is OobeSystem.", + "enum": [ + "OobeSystem" + ], + "x-ms-enum": { + "name": "PassNames", + "modelAsString": false + } + }, + "componentName": { + "type": "string", + "description": "The component name. Currently, the only allowable value is Microsoft-Windows-Shell-Setup.", + "enum": [ + "Microsoft-Windows-Shell-Setup" + ], + "x-ms-enum": { + "name": "ComponentNames", + "modelAsString": false + } + }, + "settingName": { + "type": "string", + "description": "Specifies the name of the setting to which the content applies. Possible values are: FirstLogonCommands and AutoLogon.", + "enum": [ + "AutoLogon", + "FirstLogonCommands" + ], + "x-ms-enum": { + "name": "SettingNames", + "modelAsString": false + } + }, + "content": { + "type": "string", + "description": "Specifies the XML formatted content that is added to the unattend.xml file for the specified path and component. The XML must be less than 4KB and must include the root element for the setting or feature that is being inserted." + } + }, + "description": "Specifies additional XML formatted information that can be included in the Unattend.xml file, which is used by Windows Setup. Contents are defined by setting name, component name, and the pass in which the content is applied." + }, + "WinRMListener": { + "properties": { + "protocol": { + "type": "string", + "description": "Specifies the protocol of WinRM listener.

Possible values are:
**http**

**https**", + "enum": [ + "Http", + "Https" + ], + "x-ms-enum": { + "name": "ProtocolTypes", + "modelAsString": false + } + }, + "certificateUrl": { + "type": "string", + "description": "This is the URL of a certificate that has been uploaded to Key Vault as a secret. For adding a secret to the Key Vault, see [Add a key or secret to the key vault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add). In this case, your certificate needs to be It is the Base64 encoding of the following JSON Object which is encoded in UTF-8:

{
\"data\":\"\",
\"dataType\":\"pfx\",
\"password\":\"\"
}" + } + }, + "description": "Describes Protocol and thumbprint of Windows Remote Management listener" + }, + "WinRMConfiguration": { + "properties": { + "listeners": { + "type": "array", + "items": { + "$ref": "#/definitions/WinRMListener" + }, + "description": "The list of Windows Remote Management listeners" + } + }, + "description": "Describes Windows Remote Management configuration of the VM" + }, + "WindowsConfiguration": { + "properties": { + "provisionVMAgent": { + "type": "boolean", + "description": "Indicates whether virtual machine agent should be provisioned on the virtual machine.

When this property is not specified in the request body, default behavior is to set it to true. This will ensure that VM Agent is installed on the VM so that extensions can be added to the VM later." + }, + "enableAutomaticUpdates": { + "type": "boolean", + "description": "Indicates whether Automatic Updates is enabled for the Windows virtual machine. Default value is true.

For virtual machine scale sets, this property can be updated and updates will take effect on OS reprovisioning." + }, + "timeZone": { + "type": "string", + "description": "Specifies the time zone of the virtual machine. e.g. \"Pacific Standard Time\".

Possible values can be [TimeZoneInfo.Id](https://docs.microsoft.com/en-us/dotnet/api/system.timezoneinfo.id?#System_TimeZoneInfo_Id) value from time zones returned by [TimeZoneInfo.GetSystemTimeZones](https://docs.microsoft.com/en-us/dotnet/api/system.timezoneinfo.getsystemtimezones)." + }, + "additionalUnattendContent": { + "type": "array", + "items": { + "$ref": "#/definitions/AdditionalUnattendContent" + }, + "description": "Specifies additional base-64 encoded XML formatted information that can be included in the Unattend.xml file, which is used by Windows Setup." + }, + "winRM": { + "$ref": "#/definitions/WinRMConfiguration", + "description": "Specifies the Windows Remote Management listeners. This enables remote Windows PowerShell." + } + }, + "description": "Specifies Windows operating system settings on the virtual machine." + }, + "SshPublicKey": { + "properties": { + "path": { + "type": "string", + "description": "Specifies the full path on the created VM where ssh public key is stored. If the file already exists, the specified key is appended to the file. Example: /home/user/.ssh/authorized_keys" + }, + "keyData": { + "type": "string", + "description": "SSH public key certificate used to authenticate with the VM through ssh. The key needs to be at least 2048-bit and in ssh-rsa format.

For creating ssh keys, see [Create SSH keys on Linux and Mac for Linux VMs in Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-mac-create-ssh-keys?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)." + } + }, + "description": "Contains information about SSH certificate public key and the path on the Linux VM where the public key is placed." + }, + "SshConfiguration": { + "properties": { + "publicKeys": { + "type": "array", + "items": { + "$ref": "#/definitions/SshPublicKey" + }, + "description": "The list of SSH public keys used to authenticate with linux based VMs." + } + }, + "description": "SSH configuration for Linux based VMs running on Azure" + }, + "LinuxConfiguration": { + "properties": { + "disablePasswordAuthentication": { + "type": "boolean", + "description": "Specifies whether password authentication should be disabled." + }, + "ssh": { + "$ref": "#/definitions/SshConfiguration", + "description": "Specifies the ssh key configuration for a Linux OS." + }, + "provisionVMAgent": { + "type": "boolean", + "description": "Indicates whether virtual machine agent should be provisioned on the virtual machine.

When this property is not specified in the request body, default behavior is to set it to true. This will ensure that VM Agent is installed on the VM so that extensions can be added to the VM later." + } + }, + "description": "Specifies the Linux operating system settings on the virtual machine.

For a list of supported Linux distributions, see [Linux on Azure-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-endorsed-distros?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)

For running non-endorsed distributions, see [Information for Non-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-create-upload-generic?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)." + }, + "VaultCertificate": { + "properties": { + "certificateUrl": { + "type": "string", + "description": "This is the URL of a certificate that has been uploaded to Key Vault as a secret. For adding a secret to the Key Vault, see [Add a key or secret to the key vault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add). In this case, your certificate needs to be It is the Base64 encoding of the following JSON Object which is encoded in UTF-8:

{
\"data\":\"\",
\"dataType\":\"pfx\",
\"password\":\"\"
}" + }, + "certificateStore": { + "type": "string", + "description": "For Windows VMs, specifies the certificate store on the Virtual Machine to which the certificate should be added. The specified certificate store is implicitly in the LocalMachine account.

For Linux VMs, the certificate file is placed under the /var/lib/waagent directory, with the file name <UppercaseThumbprint>.crt for the X509 certificate file and <UppercaseThumbprint>.prv for private key. Both of these files are .pem formatted." + } + }, + "description": "Describes a single certificate reference in a Key Vault, and where the certificate should reside on the VM." + }, + "VaultSecretGroup": { + "properties": { + "sourceVault": { + "$ref": "#/definitions/SubResource", + "description": "The relative URL of the Key Vault containing all of the certificates in VaultCertificates." + }, + "vaultCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VaultCertificate" + }, + "description": "The list of key vault references in SourceVault which contain certificates." + } + }, + "description": "Describes a set of certificates which are all in the same Key Vault." + }, + "OSProfile": { + "properties": { + "computerName": { + "type": "string", + "description": "Specifies the host OS name of the virtual machine.

This name cannot be updated after the VM is created.

**Max-length (Windows):** 15 characters

**Max-length (Linux):** 64 characters.

For naming conventions and restrictions see [Azure infrastructure services implementation guidelines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-infrastructure-subscription-accounts-guidelines?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#1-naming-conventions)." + }, + "adminUsername": { + "type": "string", + "description": "Specifies the name of the administrator account.

This property cannot be updated after the VM is created.

**Windows-only restriction:** Cannot end in \".\"

**Disallowed values:** \"administrator\", \"admin\", \"user\", \"user1\", \"test\", \"user2\", \"test1\", \"user3\", \"admin1\", \"1\", \"123\", \"a\", \"actuser\", \"adm\", \"admin2\", \"aspnet\", \"backup\", \"console\", \"david\", \"guest\", \"john\", \"owner\", \"root\", \"server\", \"sql\", \"support\", \"support_388945a0\", \"sys\", \"test2\", \"test3\", \"user4\", \"user5\".

**Minimum-length (Linux):** 1 character

**Max-length (Linux):** 64 characters

**Max-length (Windows):** 20 characters

  • For root access to the Linux VM, see [Using root privileges on Linux virtual machines in Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-use-root-privileges?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
  • For a list of built-in system users on Linux that should not be used in this field, see [Selecting User Names for Linux on Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-usernames?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)" + }, + "adminPassword": { + "type": "string", + "description": "Specifies the password of the administrator account.

    **Minimum-length (Windows):** 8 characters

    **Minimum-length (Linux):** 6 characters

    **Max-length (Windows):** 123 characters

    **Max-length (Linux):** 72 characters

    **Complexity requirements:** 3 out of 4 conditions below need to be fulfilled
    Has lower characters
    Has upper characters
    Has a digit
    Has a special character (Regex match [\\W_])

    **Disallowed values:** \"abc@123\", \"P@$$w0rd\", \"P@ssw0rd\", \"P@ssword123\", \"Pa$$word\", \"pass@word1\", \"Password!\", \"Password1\", \"Password22\", \"iloveyou!\"

    For resetting the password, see [How to reset the Remote Desktop service or its login password in a Windows VM](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-reset-rdp?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)

    For resetting root password, see [Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-vmaccess-extension?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#reset-root-password)" + }, + "customData": { + "type": "string", + "description": "Specifies a base-64 encoded string of custom data. The base-64 encoded string is decoded to a binary array that is saved as a file on the Virtual Machine. The maximum length of the binary array is 65535 bytes.

    **Note: Do not pass any secrets or passwords in customData property**

    This property cannot be updated after the VM is created.

    customData is passed to the VM to be saved as a file, for more information see [Custom Data on Azure VMs](https://azure.microsoft.com/en-us/blog/custom-data-and-cloud-init-on-windows-azure/)

    For using cloud-init for your Linux VM, see [Using cloud-init to customize a Linux VM during creation](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-cloud-init?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)" + }, + "windowsConfiguration": { + "$ref": "#/definitions/WindowsConfiguration", + "description": "Specifies Windows operating system settings on the virtual machine." + }, + "linuxConfiguration": { + "$ref": "#/definitions/LinuxConfiguration", + "description": "Specifies the Linux operating system settings on the virtual machine.

    For a list of supported Linux distributions, see [Linux on Azure-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-endorsed-distros?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)

    For running non-endorsed distributions, see [Information for Non-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-create-upload-generic?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)." + }, + "secrets": { + "type": "array", + "items": { + "$ref": "#/definitions/VaultSecretGroup" + }, + "description": "Specifies set of certificates that should be installed onto the virtual machine." + }, + "allowExtensionOperations": { + "type": "boolean", + "description": "Specifies whether extension operations should be allowed on the virtual machine.

    This may only be set to False when no extensions are present on the virtual machine." + }, + "requireGuestProvisionSignal": { + "type": "boolean", + "description": "Specifies whether the guest provision signal is required to infer provision success of the virtual machine." + } + }, + "description": "Specifies the operating system settings for the virtual machine. Some of the settings cannot be changed once VM is provisioned." + }, + "AutomaticRepairsPolicy": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Specifies whether automatic repairs should be enabled on the virtual machine scale set. The default value is false." + }, + "gracePeriod": { + "type": "string", + "description": "The amount of time for which automatic repairs are suspended due to a state change on VM. The grace time starts after the state change has completed. This helps avoid premature or accidental repairs. The time duration should be specified in ISO 8601 format. The minimum allowed grace period is 30 minutes (PT30M), which is also the default value. The maximum allowed grace period is 90 minutes (PT90M)." + } + }, + "description": "Specifies the configuration parameters for automatic repairs on the virtual machine scale set." + }, + "NetworkInterfaceReferenceProperties": { + "properties": { + "primary": { + "type": "boolean", + "description": "Specifies the primary network interface in case the virtual machine has more than 1 network interface." + } + }, + "description": "Describes a network interface reference properties." + }, + "NetworkInterfaceReference": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkInterfaceReferenceProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "Describes a network interface reference." + }, + "NetworkProfile": { + "properties": { + "networkInterfaces": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceReference" + }, + "description": "Specifies the list of resource Ids for the network interfaces associated with the virtual machine." + } + }, + "description": "Specifies the network interfaces of the virtual machine." + }, + "BootDiagnostics": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether boot diagnostics should be enabled on the Virtual Machine." + }, + "storageUri": { + "type": "string", + "description": "Uri of the storage account to use for placing the console output and screenshot." + } + }, + "description": "Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status.

    You can easily view the output of your console log.

    Azure also enables you to see a screenshot of the VM from the hypervisor." + }, + "DiagnosticsProfile": { + "properties": { + "bootDiagnostics": { + "$ref": "#/definitions/BootDiagnostics", + "description": "Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status.

    You can easily view the output of your console log.

    Azure also enables you to see a screenshot of the VM from the hypervisor." + } + }, + "description": "Specifies the boot diagnostic settings state.

    Minimum api-version: 2015-06-15." + }, + "priority": { + "type": "string", + "description": "Specifies the priority for a standalone virtual machine or the virtual machines in the scale set.

    'Low' enum will be deprecated in the future, please use 'Spot' as the enum to deploy Azure Spot VM/VMSS.", + "enum": [ + "Regular", + "Low", + "Spot" + ], + "x-ms-enum": { + "name": "VirtualMachinePriorityTypes", + "modelAsString": true + } + }, + "evictionPolicy": { + "type": "string", + "description": "Specifies the eviction policy for the Azure Spot VM/VMSS", + "enum": [ + "Deallocate", + "Delete" + ], + "x-ms-enum": { + "name": "VirtualMachineEvictionPolicyTypes", + "modelAsString": true + } + }, + "BillingProfile": { + "properties": { + "maxPrice": { + "type": "number", + "format": "double", + "description": "Specifies the maximum price you are willing to pay for a Azure Spot VM/VMSS. This price is in US Dollars.

    This price will be compared with the current Azure Spot price for the VM size. Also, the prices are compared at the time of create/update of Azure Spot VM/VMSS and the operation will only succeed if the maxPrice is greater than the current Azure Spot price.

    The maxPrice will also be used for evicting a Azure Spot VM/VMSS if the current Azure Spot price goes beyond the maxPrice after creation of VM/VMSS.

    Possible values are:

    - Any decimal value greater than zero. Example: 0.01538

    -1 – indicates default price to be up-to on-demand.

    You can set the maxPrice to -1 to indicate that the Azure Spot VM/VMSS should not be evicted for price reasons. Also, the default max price is -1 if it is not provided by you.

    Minimum api-version: 2019-03-01." + } + }, + "description": "Specifies the billing related details of a Azure Spot VM or VMSS.

    Minimum api-version: 2019-03-01." + }, + "VirtualMachineExtensionHandlerInstanceView": { + "properties": { + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "status": { + "$ref": "#/definitions/InstanceViewStatus", + "description": "The extension handler status." + } + }, + "description": "The instance view of a virtual machine extension handler." + }, + "VirtualMachineAgentInstanceView": { + "properties": { + "vmAgentVersion": { + "type": "string", + "description": "The VM Agent full version." + }, + "extensionHandlers": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineExtensionHandlerInstanceView" + }, + "description": "The virtual machine extension handler instance view." + }, + "statuses": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "The resource status information." + } + }, + "description": "The instance view of the VM Agent running on the virtual machine." + }, + "DiskInstanceView": { + "properties": { + "name": { + "type": "string", + "description": "The disk name." + }, + "encryptionSettings": { + "type": "array", + "items": { + "$ref": "#/definitions/DiskEncryptionSettings" + }, + "description": "Specifies the encryption settings for the OS Disk.

    Minimum api-version: 2015-06-15" + }, + "statuses": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "The resource status information." + } + }, + "description": "The instance view of the disk." + }, + "BootDiagnosticsInstanceView": { + "properties": { + "consoleScreenshotBlobUri": { + "readOnly": true, + "type": "string", + "description": "The console screenshot blob URI." + }, + "serialConsoleLogBlobUri": { + "readOnly": true, + "type": "string", + "description": "The Linux serial console log blob Uri." + }, + "status": { + "readOnly": true, + "$ref": "#/definitions/InstanceViewStatus", + "description": "The boot diagnostics status information for the VM.

    NOTE: It will be set only if there are errors encountered in enabling boot diagnostics." + } + }, + "description": "The instance view of a virtual machine boot diagnostics." + }, + "VirtualMachineIdentity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of virtual machine identity. This property will only be provided for a system assigned identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id associated with the virtual machine. This property will only be provided for a system assigned identity." + }, + "type": { + "type": "string", + "description": "The type of identity used for the virtual machine. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the virtual machine.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "description": "The list of user identities associated with the Virtual Machine. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "description": "Identity for the virtual machine." + }, + "MaintenanceRedeployStatus": { + "properties": { + "isCustomerInitiatedMaintenanceAllowed": { + "type": "boolean", + "description": "True, if customer is allowed to perform Maintenance." + }, + "preMaintenanceWindowStartTime": { + "type": "string", + "format": "date-time", + "description": "Start Time for the Pre Maintenance Window." + }, + "preMaintenanceWindowEndTime": { + "type": "string", + "format": "date-time", + "description": "End Time for the Pre Maintenance Window." + }, + "maintenanceWindowStartTime": { + "type": "string", + "format": "date-time", + "description": "Start Time for the Maintenance Window." + }, + "maintenanceWindowEndTime": { + "type": "string", + "format": "date-time", + "description": "End Time for the Maintenance Window." + }, + "lastOperationResultCode": { + "type": "string", + "description": "The Last Maintenance Operation Result Code.", + "enum": [ + "None", + "RetryLater", + "MaintenanceAborted", + "MaintenanceCompleted" + ], + "x-ms-enum": { + "name": "MaintenanceOperationResultCodeTypes", + "modelAsString": false + } + }, + "lastOperationMessage": { + "type": "string", + "description": "Message returned for the last Maintenance Operation." + } + }, + "description": "Maintenance Operation Status." + }, + "VirtualMachineInstanceView": { + "properties": { + "platformUpdateDomain": { + "type": "integer", + "format": "int32", + "description": "Specifies the update domain of the virtual machine." + }, + "platformFaultDomain": { + "type": "integer", + "format": "int32", + "description": "Specifies the fault domain of the virtual machine." + }, + "computerName": { + "type": "string", + "description": "The computer name assigned to the virtual machine." + }, + "osName": { + "type": "string", + "description": "The Operating System running on the virtual machine." + }, + "osVersion": { + "type": "string", + "description": "The version of Operating System running on the virtual machine." + }, + "hyperVGeneration": { + "type": "string", + "description": "Specifies the HyperVGeneration Type associated with a resource", + "enum": [ + "V1", + "V2" + ], + "x-ms-enum": { + "name": "HyperVGenerationType", + "modelAsString": true + } + }, + "rdpThumbPrint": { + "type": "string", + "description": "The Remote desktop certificate thumbprint." + }, + "vmAgent": { + "$ref": "#/definitions/VirtualMachineAgentInstanceView", + "description": "The VM Agent running on the virtual machine." + }, + "maintenanceRedeployStatus": { + "$ref": "#/definitions/MaintenanceRedeployStatus", + "description": "The Maintenance Operation status on the virtual machine." + }, + "disks": { + "type": "array", + "items": { + "$ref": "#/definitions/DiskInstanceView" + }, + "description": "The virtual machine disk information." + }, + "extensions": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineExtensionInstanceView" + }, + "description": "The extensions information." + }, + "bootDiagnostics": { + "$ref": "#/definitions/BootDiagnosticsInstanceView", + "description": "Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status.

    You can easily view the output of your console log.

    Azure also enables you to see a screenshot of the VM from the hypervisor." + }, + "statuses": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "The resource status information." + } + }, + "description": "The instance view of a virtual machine." + }, + "VirtualMachineProperties": { + "properties": { + "hardwareProfile": { + "$ref": "#/definitions/HardwareProfile", + "description": "Specifies the hardware settings for the virtual machine." + }, + "storageProfile": { + "$ref": "#/definitions/StorageProfile", + "description": "Specifies the storage settings for the virtual machine disks." + }, + "additionalCapabilities": { + "$ref": "#/definitions/AdditionalCapabilities", + "description": "Specifies additional capabilities enabled or disabled on the virtual machine." + }, + "osProfile": { + "$ref": "#/definitions/OSProfile", + "description": "Specifies the operating system settings used while creating the virtual machine. Some of the settings cannot be changed once VM is provisioned." + }, + "networkProfile": { + "$ref": "#/definitions/NetworkProfile", + "description": "Specifies the network interfaces of the virtual machine." + }, + "diagnosticsProfile": { + "$ref": "#/definitions/DiagnosticsProfile", + "description": "Specifies the boot diagnostic settings state.

    Minimum api-version: 2015-06-15." + }, + "availabilitySet": { + "$ref": "#/definitions/SubResource", + "description": "Specifies information about the availability set that the virtual machine should be assigned to. Virtual machines specified in the same availability set are allocated to different nodes to maximize availability. For more information about availability sets, see [Manage the availability of virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-manage-availability?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json).

    For more information on Azure planned maintenance, see [Planned maintenance for virtual machines in Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-planned-maintenance?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)

    Currently, a VM can only be added to availability set at creation time. The availability set to which the VM is being added should be under the same resource group as the availability set resource. An existing VM cannot be added to an availability set.

    This property cannot exist along with a non-null properties.virtualMachineScaleSet reference." + }, + "virtualMachineScaleSet": { + "$ref": "#/definitions/SubResource", + "description": "Specifies information about the virtual machine scale set that the virtual machine should be assigned to. Virtual machines specified in the same virtual machine scale set are allocated to different nodes to maximize availability. Currently, a VM can only be added to virtual machine scale set at creation time. An existing VM cannot be added to a virtual machine scale set.

    This property cannot exist along with a non-null properties.availabilitySet reference.

    Minimum api‐version: 2019‐03‐01" + }, + "proximityPlacementGroup": { + "$ref": "#/definitions/SubResource", + "description": "Specifies information about the proximity placement group that the virtual machine should be assigned to.

    Minimum api-version: 2018-04-01." + }, + "priority": { + "$ref": "#/definitions/priority", + "description": "Specifies the priority for the virtual machine.

    Minimum api-version: 2019-03-01" + }, + "evictionPolicy": { + "$ref": "#/definitions/evictionPolicy", + "description": "Specifies the eviction policy for the Azure Spot virtual machine and Azure Spot scale set.

    For Azure Spot virtual machines, the only supported value is 'Deallocate' and the minimum api-version is 2019-03-01.

    For Azure Spot scale sets, both 'Deallocate' and 'Delete' are supported and the minimum api-version is 2017-10-30-preview." + }, + "billingProfile": { + "$ref": "#/definitions/BillingProfile", + "description": "Specifies the billing related details of a Azure Spot virtual machine.

    Minimum api-version: 2019-03-01." + }, + "host": { + "$ref": "#/definitions/SubResource", + "description": "Specifies information about the dedicated host that the virtual machine resides in.

    Minimum api-version: 2018-10-01." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "instanceView": { + "$ref": "#/definitions/VirtualMachineInstanceView", + "readOnly": true, + "description": "The virtual machine instance view." + }, + "licenseType": { + "type": "string", + "description": "Specifies that the image or disk that is being used was licensed on-premises. This element is only used for images that contain the Windows Server operating system.

    Possible values are:

    Windows_Client

    Windows_Server

    If this element is included in a request for an update, the value must match the initial value. This value cannot be updated.

    For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)

    Minimum api-version: 2015-06-15" + }, + "vmId": { + "readOnly": true, + "type": "string", + "description": "Specifies the VM unique ID which is a 128-bits identifier that is encoded and stored in all Azure IaaS VMs SMBIOS and can be read using platform BIOS commands." + } + }, + "description": "Describes the properties of a Virtual Machine." + }, + "VirtualMachine": { + "properties": { + "plan": { + "$ref": "#/definitions/Plan", + "description": "Specifies information about the marketplace image used to create the virtual machine. This element is only used for marketplace images. Before you can use a marketplace image from an API, you must enable the image for programmatic use. In the Azure portal, find the marketplace image that you want to use and then click **Want to deploy programmatically, Get Started ->**. Enter any required information and then click **Save**." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineProperties" + }, + "resources": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineExtension" + }, + "description": "The virtual machine child extension resources." + }, + "identity": { + "$ref": "#/definitions/VirtualMachineIdentity", + "description": "The identity of the virtual machine, if configured." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The virtual machine zones." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Describes a Virtual Machine." + }, + "VirtualMachineUpdate": { + "properties": { + "plan": { + "$ref": "#/definitions/Plan", + "description": "Specifies information about the marketplace image used to create the virtual machine. This element is only used for marketplace images. Before you can use a marketplace image from an API, you must enable the image for programmatic use. In the Azure portal, find the marketplace image that you want to use and then click **Want to deploy programmatically, Get Started ->**. Enter any required information and then click **Save**." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineProperties" + }, + "identity": { + "$ref": "#/definitions/VirtualMachineIdentity", + "description": "The identity of the virtual machine, if configured." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The virtual machine zones." + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Describes a Virtual Machine Update." + }, + "VirtualMachineListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachine" + }, + "description": "The list of virtual machines." + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of VMs. Call ListNext() with this URI to fetch the next page of Virtual Machines." + } + }, + "required": [ + "value" + ], + "description": "The List Virtual Machine operation response." + }, + "Sku": { + "properties": { + "name": { + "type": "string", + "description": "The sku name." + }, + "tier": { + "type": "string", + "description": "Specifies the tier of virtual machines in a scale set.

    Possible Values:

    **Standard**

    **Basic**" + }, + "capacity": { + "type": "integer", + "format": "int64", + "description": "Specifies the number of virtual machines in the scale set." + } + }, + "description": "Describes a virtual machine scale set sku. NOTE: If the new VM SKU is not supported on the hardware the scale set is currently on, you need to deallocate the VMs in the scale set before you modify the SKU name." + }, + "AutomaticOSUpgradePolicy": { + "properties": { + "enableAutomaticOSUpgrade": { + "type": "boolean", + "description": "Indicates whether OS upgrades should automatically be applied to scale set instances in a rolling fashion when a newer version of the OS image becomes available. Default value is false.

    If this is set to true for Windows based scale sets, [enableAutomaticUpdates](https://docs.microsoft.com/dotnet/api/microsoft.azure.management.compute.models.windowsconfiguration.enableautomaticupdates?view=azure-dotnet) is automatically set to false and cannot be set to true." + }, + "disableAutomaticRollback": { + "type": "boolean", + "description": "Whether OS image rollback feature should be disabled. Default value is false." + } + }, + "description": "The configuration parameters used for performing automatic OS upgrade." + }, + "UpgradePolicy": { + "properties": { + "mode": { + "type": "string", + "description": "Specifies the mode of an upgrade to virtual machines in the scale set.

    Possible values are:

    **Manual** - You control the application of updates to virtual machines in the scale set. You do this by using the manualUpgrade action.

    **Automatic** - All virtual machines in the scale set are automatically updated at the same time.", + "enum": [ + "Automatic", + "Manual", + "Rolling" + ], + "x-ms-enum": { + "name": "UpgradeMode", + "modelAsString": false + } + }, + "rollingUpgradePolicy": { + "$ref": "#/definitions/RollingUpgradePolicy", + "description": "The configuration parameters used while performing a rolling upgrade." + }, + "automaticOSUpgradePolicy": { + "$ref": "#/definitions/AutomaticOSUpgradePolicy", + "description": "Configuration parameters used for performing automatic OS Upgrade." + } + }, + "description": "Describes an upgrade policy - automatic, manual, or rolling." + }, + "RollingUpgradePolicy": { + "properties": { + "maxBatchInstancePercent": { + "type": "integer", + "format": "int32", + "minimum": 5, + "maximum": 100, + "description": "The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability. The default value for this parameter is 20%." + }, + "maxUnhealthyInstancePercent": { + "type": "integer", + "format": "int32", + "minimum": 5, + "maximum": 100, + "description": "The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch. The default value for this parameter is 20%." + }, + "maxUnhealthyUpgradedInstancePercent": { + "type": "integer", + "format": "int32", + "minimum": 0, + "maximum": 100, + "description": "The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts. The default value for this parameter is 20%." + }, + "pauseTimeBetweenBatches": { + "type": "string", + "description": "The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format. The default value is 0 seconds (PT0S)." + } + }, + "description": "The configuration parameters used while performing a rolling upgrade." + }, + "ScaleInPolicy": { + "properties": { + "rules": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Default", + "OldestVM", + "NewestVM" + ], + "x-ms-enum": { + "name": "VirtualMachineScaleSetScaleInRules", + "modelAsString": true + } + }, + "description": "The rules to be followed when scaling-in a virtual machine scale set.

    Possible values are:

    **Default** When a virtual machine scale set is scaled in, the scale set will first be balanced across zones if it is a zonal scale set. Then, it will be balanced across Fault Domains as far as possible. Within each Fault Domain, the virtual machines chosen for removal will be the newest ones that are not protected from scale-in.

    **OldestVM** When a virtual machine scale set is being scaled-in, the oldest virtual machines that are not protected from scale-in will be chosen for removal. For zonal virtual machine scale sets, the scale set will first be balanced across zones. Within each zone, the oldest virtual machines that are not protected will be chosen for removal.

    **NewestVM** When a virtual machine scale set is being scaled-in, the newest virtual machines that are not protected from scale-in will be chosen for removal. For zonal virtual machine scale sets, the scale set will first be balanced across zones. Within each zone, the newest virtual machines that are not protected will be chosen for removal.

    " + } + }, + "description": "Describes a scale-in policy for a virtual machine scale set." + }, + "ImageOSDisk": { + "properties": { + "osType": { + "type": "string", + "description": "This property allows you to specify the type of the OS that is included in the disk if creating a VM from a custom image.

    Possible values are:

    **Windows**

    **Linux**", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "osState": { + "type": "string", + "description": "The OS State.", + "enum": [ + "Generalized", + "Specialized" + ], + "x-ms-enum": { + "name": "OperatingSystemStateTypes", + "modelAsString": false, + "values": [ + { + "value": "Generalized", + "description": "Generalized image. Needs to be provisioned during deployment time." + }, + { + "value": "Specialized", + "description": "Specialized image. Contains already provisioned OS Disk." + } + ] + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/ImageDisk" + } + ], + "required": [ + "osType", + "osState" + ], + "description": "Describes an Operating System disk." + }, + "ImageDataDisk": { + "properties": { + "lun": { + "type": "integer", + "format": "int32", + "description": "Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ImageDisk" + } + ], + "required": [ + "lun" + ], + "description": "Describes a data disk." + }, + "ImageDisk": { + "properties": { + "snapshot": { + "$ref": "#/definitions/SubResource", + "description": "The snapshot." + }, + "managedDisk": { + "$ref": "#/definitions/SubResource", + "description": "The managedDisk." + }, + "blobUri": { + "type": "string", + "description": "The Virtual Hard Disk." + }, + "caching": { + "type": "string", + "description": "Specifies the caching requirements.

    Possible values are:

    **None**

    **ReadOnly**

    **ReadWrite**

    Default: **None for Standard storage. ReadOnly for Premium storage**", + "enum": [ + "None", + "ReadOnly", + "ReadWrite" + ], + "x-ms-enum": { + "name": "CachingTypes", + "modelAsString": false + } + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "Specifies the size of empty data disks in gigabytes. This element can be used to overwrite the name of the disk in a virtual machine image.

    This value cannot be larger than 1023 GB" + }, + "storageAccountType": { + "$ref": "#/definitions/StorageAccountType", + "description": "Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk." + }, + "diskEncryptionSet": { + "$ref": "#/definitions/DiskEncryptionSetParameters", + "description": "Specifies the customer managed disk encryption set resource id for the managed image disk." + } + }, + "description": "Describes a image disk." + }, + "ImageStorageProfile": { + "properties": { + "osDisk": { + "$ref": "#/definitions/ImageOSDisk", + "description": "Specifies information about the operating system disk used by the virtual machine.

    For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)." + }, + "dataDisks": { + "type": "array", + "items": { + "$ref": "#/definitions/ImageDataDisk" + }, + "description": "Specifies the parameters that are used to add a data disk to a virtual machine.

    For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)." + }, + "zoneResilient": { + "type": "boolean", + "description": "Specifies whether an image is zone resilient or not. Default is false. Zone resilient images can be created only in regions that provide Zone Redundant Storage (ZRS)." + } + }, + "description": "Describes a storage profile." + }, + "ImageProperties": { + "properties": { + "sourceVirtualMachine": { + "$ref": "#/definitions/SubResource", + "description": "The source virtual machine from which Image is created." + }, + "storageProfile": { + "$ref": "#/definitions/ImageStorageProfile", + "description": "Specifies the storage settings for the virtual machine disks." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state." + }, + "hyperVGeneration": { + "$ref": "#/definitions/HyperVGenerationType", + "description": "Gets the HyperVGenerationType of the VirtualMachine created from the image" + } + }, + "description": "Describes the properties of an Image." + }, + "Image": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ImageProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "The source user image virtual hard disk. The virtual hard disk will be copied before being attached to the virtual machine. If SourceImage is provided, the destination virtual hard drive must not exist." + }, + "ImageUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ImageProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "The source user image virtual hard disk. Only tags may be updated." + }, + "ImageListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Image" + }, + "description": "The list of Images." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of Images. Call ListNext() with this to fetch the next page of Images." + } + }, + "required": [ + "value" + ], + "description": "The List Image operation response." + }, + "VirtualMachineScaleSetIdentity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of virtual machine scale set identity. This property will only be provided for a system assigned identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id associated with the virtual machine scale set. This property will only be provided for a system assigned identity." + }, + "type": { + "type": "string", + "description": "The type of identity used for the virtual machine scale set. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the virtual machine scale set.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "description": "The list of user identities associated with the virtual machine scale set. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "description": "Identity for the virtual machine scale set." + }, + "VirtualMachineScaleSetOSProfile": { + "properties": { + "computerNamePrefix": { + "type": "string", + "description": "Specifies the computer name prefix for all of the virtual machines in the scale set. Computer name prefixes must be 1 to 15 characters long." + }, + "adminUsername": { + "type": "string", + "description": "Specifies the name of the administrator account.

    **Windows-only restriction:** Cannot end in \".\"

    **Disallowed values:** \"administrator\", \"admin\", \"user\", \"user1\", \"test\", \"user2\", \"test1\", \"user3\", \"admin1\", \"1\", \"123\", \"a\", \"actuser\", \"adm\", \"admin2\", \"aspnet\", \"backup\", \"console\", \"david\", \"guest\", \"john\", \"owner\", \"root\", \"server\", \"sql\", \"support\", \"support_388945a0\", \"sys\", \"test2\", \"test3\", \"user4\", \"user5\".

    **Minimum-length (Linux):** 1 character

    **Max-length (Linux):** 64 characters

    **Max-length (Windows):** 20 characters

  • For root access to the Linux VM, see [Using root privileges on Linux virtual machines in Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-use-root-privileges?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)
  • For a list of built-in system users on Linux that should not be used in this field, see [Selecting User Names for Linux on Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-usernames?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)" + }, + "adminPassword": { + "type": "string", + "description": "Specifies the password of the administrator account.

    **Minimum-length (Windows):** 8 characters

    **Minimum-length (Linux):** 6 characters

    **Max-length (Windows):** 123 characters

    **Max-length (Linux):** 72 characters

    **Complexity requirements:** 3 out of 4 conditions below need to be fulfilled
    Has lower characters
    Has upper characters
    Has a digit
    Has a special character (Regex match [\\W_])

    **Disallowed values:** \"abc@123\", \"P@$$w0rd\", \"P@ssw0rd\", \"P@ssword123\", \"Pa$$word\", \"pass@word1\", \"Password!\", \"Password1\", \"Password22\", \"iloveyou!\"

    For resetting the password, see [How to reset the Remote Desktop service or its login password in a Windows VM](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-reset-rdp?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)

    For resetting root password, see [Manage users, SSH, and check or repair disks on Azure Linux VMs using the VMAccess Extension](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-vmaccess-extension?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json#reset-root-password)" + }, + "customData": { + "type": "string", + "description": "Specifies a base-64 encoded string of custom data. The base-64 encoded string is decoded to a binary array that is saved as a file on the Virtual Machine. The maximum length of the binary array is 65535 bytes.

    For using cloud-init for your VM, see [Using cloud-init to customize a Linux VM during creation](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-using-cloud-init?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)" + }, + "windowsConfiguration": { + "$ref": "#/definitions/WindowsConfiguration", + "description": "Specifies Windows operating system settings on the virtual machine." + }, + "linuxConfiguration": { + "$ref": "#/definitions/LinuxConfiguration", + "description": "Specifies the Linux operating system settings on the virtual machine.

    For a list of supported Linux distributions, see [Linux on Azure-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-endorsed-distros?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)

    For running non-endorsed distributions, see [Information for Non-Endorsed Distributions](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-linux-create-upload-generic?toc=%2fazure%2fvirtual-machines%2flinux%2ftoc.json)." + }, + "secrets": { + "type": "array", + "items": { + "$ref": "#/definitions/VaultSecretGroup" + }, + "description": "Specifies set of certificates that should be installed onto the virtual machines in the scale set." + } + }, + "description": "Describes a virtual machine scale set OS profile." + }, + "VirtualMachineScaleSetUpdateOSProfile": { + "properties": { + "customData": { + "type": "string", + "description": "A base-64 encoded string of custom data." + }, + "windowsConfiguration": { + "$ref": "#/definitions/WindowsConfiguration", + "description": "The Windows Configuration of the OS profile." + }, + "linuxConfiguration": { + "$ref": "#/definitions/LinuxConfiguration", + "description": "The Linux Configuration of the OS profile." + }, + "secrets": { + "type": "array", + "items": { + "$ref": "#/definitions/VaultSecretGroup" + }, + "description": "The List of certificates for addition to the VM." + } + }, + "description": "Describes a virtual machine scale set OS profile." + }, + "VirtualMachineScaleSetManagedDiskParameters": { + "properties": { + "storageAccountType": { + "$ref": "#/definitions/StorageAccountType", + "description": "Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk." + }, + "diskEncryptionSet": { + "$ref": "#/definitions/DiskEncryptionSetParameters", + "description": "Specifies the customer managed disk encryption set resource id for the managed disk." + } + }, + "description": "Describes the parameters of a ScaleSet managed disk." + }, + "VirtualMachineScaleSetOSDisk": { + "properties": { + "name": { + "type": "string", + "description": "The disk name." + }, + "caching": { + "$ref": "#/definitions/Caching", + "description": "Specifies the caching requirements.

    Possible values are:

    **None**

    **ReadOnly**

    **ReadWrite**

    Default: **None for Standard storage. ReadOnly for Premium storage**" + }, + "writeAcceleratorEnabled": { + "type": "boolean", + "description": "Specifies whether writeAccelerator should be enabled or disabled on the disk." + }, + "createOption": { + "$ref": "#/definitions/CreateOption", + "description": "Specifies how the virtual machines in the scale set should be created.

    The only allowed value is: **FromImage** \\u2013 This value is used when you are using an image to create the virtual machine. If you are using a platform image, you also use the imageReference element described above. If you are using a marketplace image, you also use the plan element previously described." + }, + "diffDiskSettings": { + "$ref": "#/definitions/DiffDiskSettings", + "description": "Specifies the ephemeral disk Settings for the operating system disk used by the virtual machine scale set." + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "Specifies the size of the operating system disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

    This value cannot be larger than 1023 GB" + }, + "osType": { + "type": "string", + "description": "This property allows you to specify the type of the OS that is included in the disk if creating a VM from user-image or a specialized VHD.

    Possible values are:

    **Windows**

    **Linux**", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "image": { + "$ref": "#/definitions/VirtualHardDisk", + "description": "Specifies information about the unmanaged user image to base the scale set on." + }, + "vhdContainers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Specifies the container urls that are used to store operating system disks for the scale set." + }, + "managedDisk": { + "description": "The managed disk parameters.", + "$ref": "#/definitions/VirtualMachineScaleSetManagedDiskParameters" + } + }, + "required": [ + "createOption" + ], + "description": "Describes a virtual machine scale set operating system disk." + }, + "VirtualMachineScaleSetUpdateOSDisk": { + "properties": { + "caching": { + "$ref": "#/definitions/Caching", + "description": "The caching type." + }, + "writeAcceleratorEnabled": { + "type": "boolean", + "description": "Specifies whether writeAccelerator should be enabled or disabled on the disk." + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "Specifies the size of the operating system disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

    This value cannot be larger than 1023 GB" + }, + "image": { + "$ref": "#/definitions/VirtualHardDisk", + "description": "The Source User Image VirtualHardDisk. This VirtualHardDisk will be copied before using it to attach to the Virtual Machine. If SourceImage is provided, the destination VirtualHardDisk should not exist." + }, + "vhdContainers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of virtual hard disk container uris." + }, + "managedDisk": { + "description": "The managed disk parameters.", + "$ref": "#/definitions/VirtualMachineScaleSetManagedDiskParameters" + } + }, + "description": "Describes virtual machine scale set operating system disk Update Object. This should be used for Updating VMSS OS Disk." + }, + "VirtualMachineScaleSetDataDisk": { + "properties": { + "name": { + "type": "string", + "description": "The disk name." + }, + "lun": { + "type": "integer", + "format": "int32", + "description": "Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM." + }, + "caching": { + "$ref": "#/definitions/Caching", + "description": "Specifies the caching requirements.

    Possible values are:

    **None**

    **ReadOnly**

    **ReadWrite**

    Default: **None for Standard storage. ReadOnly for Premium storage**" + }, + "writeAcceleratorEnabled": { + "type": "boolean", + "description": "Specifies whether writeAccelerator should be enabled or disabled on the disk." + }, + "createOption": { + "$ref": "#/definitions/CreateOption", + "description": "The create option." + }, + "diskSizeGB": { + "type": "integer", + "format": "int32", + "description": "Specifies the size of an empty data disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image.

    This value cannot be larger than 1023 GB" + }, + "managedDisk": { + "description": "The managed disk parameters.", + "$ref": "#/definitions/VirtualMachineScaleSetManagedDiskParameters" + }, + "diskIOPSReadWrite": { + "type": "integer", + "format": "int64", + "description": "Specifies the Read-Write IOPS for the managed disk. Should be used only when StorageAccountType is UltraSSD_LRS. If not specified, a default value would be assigned based on diskSizeGB." + }, + "diskMBpsReadWrite": { + "type": "integer", + "format": "int64", + "description": "Specifies the bandwidth in MB per second for the managed disk. Should be used only when StorageAccountType is UltraSSD_LRS. If not specified, a default value would be assigned based on diskSizeGB." + } + }, + "required": [ + "lun", + "createOption" + ], + "description": "Describes a virtual machine scale set data disk." + }, + "VirtualMachineScaleSetStorageProfile": { + "properties": { + "imageReference": { + "$ref": "#/definitions/ImageReference", + "description": "Specifies information about the image to use. You can specify information about platform images, marketplace images, or virtual machine images. This element is required when you want to use a platform image, marketplace image, or virtual machine image, but is not used in other creation operations." + }, + "osDisk": { + "$ref": "#/definitions/VirtualMachineScaleSetOSDisk", + "description": "Specifies information about the operating system disk used by the virtual machines in the scale set.

    For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)." + }, + "dataDisks": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetDataDisk" + }, + "description": "Specifies the parameters that are used to add data disks to the virtual machines in the scale set.

    For more information about disks, see [About disks and VHDs for Azure virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-about-disks-vhds?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)." + } + }, + "description": "Describes a virtual machine scale set storage profile." + }, + "VirtualMachineScaleSetUpdateStorageProfile": { + "properties": { + "imageReference": { + "$ref": "#/definitions/ImageReference", + "description": "The image reference." + }, + "osDisk": { + "$ref": "#/definitions/VirtualMachineScaleSetUpdateOSDisk", + "description": "The OS disk." + }, + "dataDisks": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetDataDisk" + }, + "description": "The data disks." + } + }, + "description": "Describes a virtual machine scale set storage profile." + }, + "ApiEntityReference": { + "properties": { + "id": { + "type": "string", + "description": "The ARM resource id in the form of /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/..." + } + }, + "description": "The API entity reference." + }, + "VirtualMachineScaleSetIPConfigurationProperties": { + "properties": { + "subnet": { + "$ref": "#/definitions/ApiEntityReference", + "description": "Specifies the identifier of the subnet." + }, + "primary": { + "type": "boolean", + "description": "Specifies the primary network interface in case the virtual machine has more than 1 network interface." + }, + "publicIPAddressConfiguration": { + "$ref": "#/definitions/VirtualMachineScaleSetPublicIPAddressConfiguration", + "description": "The publicIPAddressConfiguration." + }, + "privateIPAddressVersion": { + "type": "string", + "description": "Available from Api-Version 2017-03-30 onwards, it represents whether the specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible values are: 'IPv4' and 'IPv6'.", + "enum": [ + "IPv4", + "IPv6" + ], + "x-ms-enum": { + "name": "IPVersion", + "modelAsString": true + } + }, + "applicationGatewayBackendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "Specifies an array of references to backend address pools of application gateways. A scale set can reference backend address pools of multiple application gateways. Multiple scale sets cannot use the same application gateway." + }, + "applicationSecurityGroups": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "Specifies an array of references to application security group." + }, + "loadBalancerBackendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "Specifies an array of references to backend address pools of load balancers. A scale set can reference backend address pools of one public and one internal load balancer. Multiple scale sets cannot use the same load balancer." + }, + "loadBalancerInboundNatPools": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "Specifies an array of references to inbound Nat pools of the load balancers. A scale set can reference inbound nat pools of one public and one internal load balancer. Multiple scale sets cannot use the same load balancer" + } + }, + "description": "Describes a virtual machine scale set network profile's IP configuration properties." + }, + "VirtualMachineScaleSetUpdateIPConfigurationProperties": { + "properties": { + "subnet": { + "$ref": "#/definitions/ApiEntityReference", + "description": "The subnet." + }, + "primary": { + "type": "boolean", + "description": "Specifies the primary IP Configuration in case the network interface has more than one IP Configuration." + }, + "publicIPAddressConfiguration": { + "$ref": "#/definitions/VirtualMachineScaleSetUpdatePublicIPAddressConfiguration", + "description": "The publicIPAddressConfiguration." + }, + "privateIPAddressVersion": { + "type": "string", + "description": "Available from Api-Version 2017-03-30 onwards, it represents whether the specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible values are: 'IPv4' and 'IPv6'.", + "enum": [ + "IPv4", + "IPv6" + ], + "x-ms-enum": { + "name": "IPVersion", + "modelAsString": true + } + }, + "applicationGatewayBackendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "The application gateway backend address pools." + }, + "applicationSecurityGroups": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "Specifies an array of references to application security group." + }, + "loadBalancerBackendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "The load balancer backend address pools." + }, + "loadBalancerInboundNatPools": { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + }, + "description": "The load balancer inbound nat pools." + } + }, + "description": "Describes a virtual machine scale set network profile's IP configuration properties." + }, + "VirtualMachineScaleSetIPConfiguration": { + "properties": { + "name": { + "type": "string", + "description": "The IP configuration name." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineScaleSetIPConfigurationProperties" + } + }, + "required": [ + "name" + ], + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "Describes a virtual machine scale set network profile's IP configuration." + }, + "VirtualMachineScaleSetUpdateIPConfiguration": { + "properties": { + "name": { + "type": "string", + "description": "The IP configuration name." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineScaleSetUpdateIPConfigurationProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "Describes a virtual machine scale set network profile's IP configuration. NOTE: The subnet of a scale set may be modified as long as the original subnet and the new subnet are in the same virtual network" + }, + "VirtualMachineScaleSetNetworkConfigurationProperties": { + "properties": { + "primary": { + "type": "boolean", + "description": "Specifies the primary network interface in case the virtual machine has more than 1 network interface." + }, + "enableAcceleratedNetworking": { + "type": "boolean", + "description": "Specifies whether the network interface is accelerated networking-enabled." + }, + "networkSecurityGroup": { + "$ref": "#/definitions/SubResource", + "description": "The network security group." + }, + "dnsSettings": { + "$ref": "#/definitions/VirtualMachineScaleSetNetworkConfigurationDnsSettings", + "description": "The dns settings to be applied on the network interfaces." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetIPConfiguration" + }, + "description": "Specifies the IP configurations of the network interface." + }, + "enableIPForwarding": { + "type": "boolean", + "description": "Whether IP forwarding enabled on this NIC." + } + }, + "required": [ + "ipConfigurations" + ], + "description": "Describes a virtual machine scale set network profile's IP configuration." + }, + "VirtualMachineScaleSetUpdateNetworkConfigurationProperties": { + "properties": { + "primary": { + "type": "boolean", + "description": "Whether this is a primary NIC on a virtual machine." + }, + "enableAcceleratedNetworking": { + "type": "boolean", + "description": "Specifies whether the network interface is accelerated networking-enabled." + }, + "networkSecurityGroup": { + "$ref": "#/definitions/SubResource", + "description": "The network security group." + }, + "dnsSettings": { + "$ref": "#/definitions/VirtualMachineScaleSetNetworkConfigurationDnsSettings", + "description": "The dns settings to be applied on the network interfaces." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetUpdateIPConfiguration" + }, + "description": "The virtual machine scale set IP Configuration." + }, + "enableIPForwarding": { + "type": "boolean", + "description": "Whether IP forwarding enabled on this NIC." + } + }, + "description": "Describes a virtual machine scale set updatable network profile's IP configuration.Use this object for updating network profile's IP Configuration." + }, + "VirtualMachineScaleSetNetworkConfiguration": { + "properties": { + "name": { + "type": "string", + "description": "The network configuration name." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineScaleSetNetworkConfigurationProperties" + } + }, + "required": [ + "name" + ], + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "Describes a virtual machine scale set network profile's network configurations." + }, + "VirtualMachineScaleSetUpdateNetworkConfiguration": { + "properties": { + "name": { + "type": "string", + "description": "The network configuration name." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineScaleSetUpdateNetworkConfigurationProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "description": "Describes a virtual machine scale set network profile's network configurations." + }, + "VirtualMachineScaleSetNetworkConfigurationDnsSettings": { + "properties": { + "dnsServers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of DNS servers IP addresses" + } + }, + "description": "Describes a virtual machines scale sets network configuration's DNS settings." + }, + "VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings": { + "properties": { + "domainNameLabel": { + "type": "string", + "description": "The Domain name label.The concatenation of the domain name label and vm index will be the domain name labels of the PublicIPAddress resources that will be created" + } + }, + "required": [ + "domainNameLabel" + ], + "description": "Describes a virtual machines scale sets network configuration's DNS settings." + }, + "VirtualMachineScaleSetIpTag": { + "properties": { + "ipTagType": { + "type": "string", + "description": "IP tag type. Example: FirstPartyUsage." + }, + "tag": { + "type": "string", + "description": "IP tag associated with the public IP. Example: SQL, Storage etc." + } + }, + "description": "Contains the IP tag associated with the public IP address." + }, + "VirtualMachineScaleSetPublicIPAddressConfiguration": { + "properties": { + "name": { + "type": "string", + "description": "The publicIP address configuration name." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineScaleSetPublicIPAddressConfigurationProperties" + } + }, + "required": [ + "name" + ], + "description": "Describes a virtual machines scale set IP Configuration's PublicIPAddress configuration" + }, + "VirtualMachineScaleSetUpdatePublicIPAddressConfiguration": { + "properties": { + "name": { + "type": "string", + "description": "The publicIP address configuration name." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineScaleSetUpdatePublicIPAddressConfigurationProperties" + } + }, + "description": "Describes a virtual machines scale set IP Configuration's PublicIPAddress configuration" + }, + "VirtualMachineScaleSetPublicIPAddressConfigurationProperties": { + "properties": { + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The idle timeout of the public IP address." + }, + "dnsSettings": { + "$ref": "#/definitions/VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings", + "description": "The dns settings to be applied on the publicIP addresses ." + }, + "ipTags": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetIpTag" + }, + "description": "The list of IP tags associated with the public IP address." + }, + "publicIPPrefix": { + "$ref": "#/definitions/SubResource", + "description": "The PublicIPPrefix from which to allocate publicIP addresses." + }, + "publicIPAddressVersion": { + "type": "string", + "description": "Available from Api-Version 2019-07-01 onwards, it represents whether the specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. Possible values are: 'IPv4' and 'IPv6'.", + "enum": [ + "IPv4", + "IPv6" + ], + "x-ms-enum": { + "name": "IPVersion", + "modelAsString": true + } + } + }, + "description": "Describes a virtual machines scale set IP Configuration's PublicIPAddress configuration" + }, + "VirtualMachineScaleSetUpdatePublicIPAddressConfigurationProperties": { + "properties": { + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The idle timeout of the public IP address." + }, + "dnsSettings": { + "$ref": "#/definitions/VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings", + "description": "The dns settings to be applied on the publicIP addresses ." + } + }, + "description": "Describes a virtual machines scale set IP Configuration's PublicIPAddress configuration" + }, + "VirtualMachineScaleSetNetworkProfile": { + "properties": { + "healthProbe": { + "$ref": "#/definitions/ApiEntityReference", + "description": "A reference to a load balancer probe used to determine the health of an instance in the virtual machine scale set. The reference will be in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}'." + }, + "networkInterfaceConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetNetworkConfiguration" + }, + "description": "The list of network configurations." + } + }, + "description": "Describes a virtual machine scale set network profile." + }, + "VirtualMachineScaleSetUpdateNetworkProfile": { + "properties": { + "healthProbe": { + "$ref": "#/definitions/ApiEntityReference", + "description": "A reference to a load balancer probe used to determine the health of an instance in the virtual machine scale set. The reference will be in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}'." + }, + "networkInterfaceConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetUpdateNetworkConfiguration" + }, + "description": "The list of network configurations." + } + }, + "description": "Describes a virtual machine scale set network profile." + }, + "VirtualMachineScaleSetExtensionProperties": { + "properties": { + "forceUpdateTag": { + "type": "string", + "description": "If a value is provided and is different from the previous value, the extension handler will be forced to update even if the extension configuration has not changed." + }, + "publisher": { + "type": "string", + "description": "The name of the extension handler publisher." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "autoUpgradeMinorVersion": { + "type": "boolean", + "description": "Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true." + }, + "settings": { + "type": "object", + "description": "Json formatted public settings for the extension." + }, + "protectedSettings": { + "type": "object", + "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "provisionAfterExtensions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Collection of extension names after which this extension needs to be provisioned." + } + }, + "description": "Describes the properties of a Virtual Machine Scale Set Extension." + }, + "VirtualMachineScaleSetExtension": { + "properties": { + "name": { + "type": "string", + "description": "The name of the extension." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineScaleSetExtensionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/SubResourceReadOnly" + } + ], + "description": "Describes a Virtual Machine Scale Set Extension." + }, + "VirtualMachineScaleSetExtensionUpdate": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the extension." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineScaleSetExtensionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/SubResourceReadOnly" + } + ], + "description": "Describes a Virtual Machine Scale Set Extension." + }, + "VirtualMachineScaleSetExtensionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetExtension" + }, + "description": "The list of VM scale set extensions." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of VM scale set extensions. Call ListNext() with this to fetch the next page of VM scale set extensions." + } + }, + "required": [ + "value" + ], + "description": "The List VM scale set extension operation response." + }, + "VirtualMachineScaleSetExtensionProfile": { + "properties": { + "extensions": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetExtension" + }, + "description": "The virtual machine scale set child extension resources." + } + }, + "description": "Describes a virtual machine scale set extension profile." + }, + "VirtualMachineScaleSetVMProfile": { + "properties": { + "osProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetOSProfile", + "description": "Specifies the operating system settings for the virtual machines in the scale set." + }, + "storageProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetStorageProfile", + "description": "Specifies the storage settings for the virtual machine disks." + }, + "networkProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetNetworkProfile", + "description": "Specifies properties of the network interfaces of the virtual machines in the scale set." + }, + "diagnosticsProfile": { + "$ref": "#/definitions/DiagnosticsProfile", + "description": "Specifies the boot diagnostic settings state.

    Minimum api-version: 2015-06-15." + }, + "extensionProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetExtensionProfile", + "description": "Specifies a collection of settings for extensions installed on virtual machines in the scale set." + }, + "licenseType": { + "type": "string", + "description": "Specifies that the image or disk that is being used was licensed on-premises. This element is only used for images that contain the Windows Server operating system.

    Possible values are:

    Windows_Client

    Windows_Server

    If this element is included in a request for an update, the value must match the initial value. This value cannot be updated.

    For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)

    Minimum api-version: 2015-06-15" + }, + "priority": { + "$ref": "#/definitions/priority", + "description": "Specifies the priority for the virtual machines in the scale set.

    Minimum api-version: 2017-10-30-preview" + }, + "evictionPolicy": { + "$ref": "#/definitions/evictionPolicy", + "description": "Specifies the eviction policy for the Azure Spot virtual machine and Azure Spot scale set.

    For Azure Spot virtual machines, the only supported value is 'Deallocate' and the minimum api-version is 2019-03-01.

    For Azure Spot scale sets, both 'Deallocate' and 'Delete' are supported and the minimum api-version is 2017-10-30-preview." + }, + "billingProfile": { + "$ref": "#/definitions/BillingProfile", + "description": "Specifies the billing related details of a Azure Spot VMSS.

    Minimum api-version: 2019-03-01." + }, + "scheduledEventsProfile": { + "$ref": "#/definitions/ScheduledEventsProfile", + "description": "Specifies Scheduled Event related configurations." + } + }, + "description": "Describes a virtual machine scale set virtual machine profile." + }, + "VirtualMachineScaleSetUpdateVMProfile": { + "properties": { + "osProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetUpdateOSProfile", + "description": "The virtual machine scale set OS profile." + }, + "storageProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetUpdateStorageProfile", + "description": "The virtual machine scale set storage profile." + }, + "networkProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetUpdateNetworkProfile", + "description": "The virtual machine scale set network profile." + }, + "diagnosticsProfile": { + "$ref": "#/definitions/DiagnosticsProfile", + "description": "The virtual machine scale set diagnostics profile." + }, + "extensionProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetExtensionProfile", + "description": "The virtual machine scale set extension profile." + }, + "licenseType": { + "type": "string", + "description": "The license type, which is for bring your own license scenario." + }, + "billingProfile": { + "$ref": "#/definitions/BillingProfile", + "description": "Specifies the billing related details of a Azure Spot VMSS.

    Minimum api-version: 2019-03-01." + }, + "scheduledEventsProfile": { + "$ref": "#/definitions/ScheduledEventsProfile", + "description": "Specifies Scheduled Event related configurations." + } + }, + "description": "Describes a virtual machine scale set virtual machine profile." + }, + "VirtualMachineScaleSetProperties": { + "properties": { + "upgradePolicy": { + "$ref": "#/definitions/UpgradePolicy", + "description": "The upgrade policy." + }, + "automaticRepairsPolicy": { + "$ref": "#/definitions/AutomaticRepairsPolicy", + "description": "Policy for automatic repairs." + }, + "virtualMachineProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetVMProfile", + "description": "The virtual machine profile." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "overprovision": { + "type": "boolean", + "description": "Specifies whether the Virtual Machine Scale Set should be overprovisioned." + }, + "doNotRunExtensionsOnOverprovisionedVMs": { + "type": "boolean", + "description": "When Overprovision is enabled, extensions are launched only on the requested number of VMs which are finally kept. This property will hence ensure that the extensions do not run on the extra overprovisioned VMs." + }, + "uniqueId": { + "readOnly": true, + "type": "string", + "description": "Specifies the ID which uniquely identifies a Virtual Machine Scale Set." + }, + "singlePlacementGroup": { + "type": "boolean", + "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines. NOTE: If singlePlacementGroup is true, it may be modified to false. However, if singlePlacementGroup is false, it may not be modified to true." + }, + "zoneBalance": { + "type": "boolean", + "description": "Whether to force strictly even Virtual Machine distribution cross x-zones in case there is zone outage." + }, + "platformFaultDomainCount": { + "type": "integer", + "format": "int32", + "description": "Fault Domain count for each placement group." + }, + "proximityPlacementGroup": { + "$ref": "#/definitions/SubResource", + "description": "Specifies information about the proximity placement group that the virtual machine scale set should be assigned to.

    Minimum api-version: 2018-04-01." + }, + "additionalCapabilities": { + "$ref": "#/definitions/AdditionalCapabilities", + "description": "Specifies additional capabilities enabled or disabled on the Virtual Machines in the Virtual Machine Scale Set. For instance: whether the Virtual Machines have the capability to support attaching managed data disks with UltraSSD_LRS storage account type." + }, + "scaleInPolicy": { + "$ref": "#/definitions/ScaleInPolicy", + "description": "Specifies the scale-in policy that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled-in." + } + }, + "description": "Describes the properties of a Virtual Machine Scale Set." + }, + "VirtualMachineScaleSetUpdateProperties": { + "properties": { + "upgradePolicy": { + "$ref": "#/definitions/UpgradePolicy", + "description": "The upgrade policy." + }, + "automaticRepairsPolicy": { + "$ref": "#/definitions/AutomaticRepairsPolicy", + "description": "Policy for automatic repairs." + }, + "virtualMachineProfile": { + "$ref": "#/definitions/VirtualMachineScaleSetUpdateVMProfile", + "description": "The virtual machine profile." + }, + "overprovision": { + "type": "boolean", + "description": "Specifies whether the Virtual Machine Scale Set should be overprovisioned." + }, + "doNotRunExtensionsOnOverprovisionedVMs": { + "type": "boolean", + "description": "When Overprovision is enabled, extensions are launched only on the requested number of VMs which are finally kept. This property will hence ensure that the extensions do not run on the extra overprovisioned VMs." + }, + "singlePlacementGroup": { + "type": "boolean", + "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines. NOTE: If singlePlacementGroup is true, it may be modified to false. However, if singlePlacementGroup is false, it may not be modified to true." + }, + "additionalCapabilities": { + "$ref": "#/definitions/AdditionalCapabilities", + "description": "Specifies additional capabilities enabled or disabled on the Virtual Machines in the Virtual Machine Scale Set. For instance: whether the Virtual Machines have the capability to support attaching managed data disks with UltraSSD_LRS storage account type." + }, + "scaleInPolicy": { + "$ref": "#/definitions/ScaleInPolicy", + "description": "Specifies the scale-in policy that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled-in." + }, + "proximityPlacementGroup": { + "$ref": "#/definitions/SubResource", + "description": "Specifies information about the proximity placement group that the virtual machine scale set should be assigned to.

    Minimum api-version: 2018-04-01." + } + }, + "description": "Describes the properties of a Virtual Machine Scale Set." + }, + "VirtualMachineScaleSet": { + "properties": { + "sku": { + "$ref": "#/definitions/Sku", + "description": "The virtual machine scale set sku." + }, + "plan": { + "$ref": "#/definitions/Plan", + "description": "Specifies information about the marketplace image used to create the virtual machine. This element is only used for marketplace images. Before you can use a marketplace image from an API, you must enable the image for programmatic use. In the Azure portal, find the marketplace image that you want to use and then click **Want to deploy programmatically, Get Started ->**. Enter any required information and then click **Save**." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineScaleSetProperties" + }, + "identity": { + "$ref": "#/definitions/VirtualMachineScaleSetIdentity", + "description": "The identity of the virtual machine scale set, if configured." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The virtual machine scale set zones. NOTE: Availability zones can only be set when you create the scale set" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Describes a Virtual Machine Scale Set." + }, + "VirtualMachineScaleSetVMReimageParameters": { + "allOf": [ + { + "$ref": "#/definitions/VirtualMachineReimageParameters" + } + ], + "description": "Describes a Virtual Machine Scale Set VM Reimage Parameters." + }, + "VirtualMachineScaleSetReimageParameters": { + "properties": { + "instanceIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The virtual machine scale set instance ids. Omitting the virtual machine scale set instance ids will result in the operation being performed on all virtual machines in the virtual machine scale set." + } + }, + "allOf": [ + { + "$ref": "#/definitions/VirtualMachineScaleSetVMReimageParameters" + } + ], + "description": "Describes a Virtual Machine Scale Set VM Reimage Parameters." + }, + "VirtualMachineScaleSetUpdate": { + "properties": { + "sku": { + "$ref": "#/definitions/Sku", + "description": "The virtual machine scale set sku." + }, + "plan": { + "$ref": "#/definitions/Plan", + "description": "The purchase plan when deploying a virtual machine scale set from VM Marketplace images." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineScaleSetUpdateProperties" + }, + "identity": { + "$ref": "#/definitions/VirtualMachineScaleSetIdentity", + "description": "The identity of the virtual machine scale set, if configured." + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Describes a Virtual Machine Scale Set." + }, + "VirtualMachineScaleSetVMInstanceIDs": { + "properties": { + "instanceIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The virtual machine scale set instance ids. Omitting the virtual machine scale set instance ids will result in the operation being performed on all virtual machines in the virtual machine scale set." + } + }, + "description": "Specifies a list of virtual machine instance IDs from the VM scale set." + }, + "VirtualMachineScaleSetVMInstanceRequiredIDs": { + "properties": { + "instanceIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The virtual machine scale set instance ids." + } + }, + "required": [ + "instanceIds" + ], + "description": "Specifies a list of virtual machine instance IDs from the VM scale set." + }, + "VirtualMachineStatusCodeCount": { + "properties": { + "code": { + "readOnly": true, + "type": "string", + "description": "The instance view status code." + }, + "count": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The number of instances having a particular status code." + } + }, + "description": "The status code and count of the virtual machine scale set instance view status summary." + }, + "VirtualMachineScaleSetInstanceViewStatusesSummary": { + "properties": { + "statusesSummary": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineStatusCodeCount" + }, + "description": "The extensions information." + } + }, + "description": "Instance view statuses summary for virtual machines of a virtual machine scale set." + }, + "VirtualMachineScaleSetVMExtensionsSummary": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "The extension name." + }, + "statusesSummary": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineStatusCodeCount" + }, + "description": "The extensions information." + } + }, + "description": "Extensions summary for virtual machines of a virtual machine scale set." + }, + "OrchestrationServiceSummary": { + "properties": { + "serviceName": { + "type": "string", + "readOnly": true, + "description": "The name of the service.", + "enum": [ + "AutomaticRepairs" + ], + "x-ms-enum": { + "name": "OrchestrationServiceNames", + "modelAsString": true + } + }, + "serviceState": { + "type": "string", + "readOnly": true, + "description": "The current state of the service.", + "enum": [ + "NotRunning", + "Running", + "Suspended" + ], + "x-ms-enum": { + "name": "OrchestrationServiceState", + "modelAsString": true + } + } + }, + "description": "Summary for an orchestration service of a virtual machine scale set." + }, + "VirtualMachineScaleSetInstanceView": { + "properties": { + "virtualMachine": { + "$ref": "#/definitions/VirtualMachineScaleSetInstanceViewStatusesSummary", + "readOnly": true, + "description": "The instance view status summary for the virtual machine scale set." + }, + "extensions": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetVMExtensionsSummary" + }, + "description": "The extensions information." + }, + "statuses": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "The resource status information." + }, + "orchestrationServices": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/OrchestrationServiceSummary" + }, + "description": "The orchestration services information." + } + }, + "description": "The instance view of a virtual machine scale set." + }, + "VirtualMachineScaleSetListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSet" + }, + "description": "The list of virtual machine scale sets." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of Virtual Machine Scale Sets. Call ListNext() with this to fetch the next page of VMSS." + } + }, + "required": [ + "value" + ], + "description": "The List Virtual Machine operation response." + }, + "VirtualMachineScaleSetListWithLinkResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSet" + }, + "description": "The list of virtual machine scale sets." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of Virtual Machine Scale Sets. Call ListNext() with this to fetch the next page of Virtual Machine Scale Sets." + } + }, + "required": [ + "value" + ], + "description": "The List Virtual Machine operation response." + }, + "VirtualMachineScaleSetSkuCapacity": { + "properties": { + "minimum": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The minimum capacity." + }, + "maximum": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The maximum capacity that can be set." + }, + "defaultCapacity": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The default capacity." + }, + "scaleType": { + "readOnly": true, + "type": "string", + "description": "The scale type applicable to the sku.", + "enum": [ + "Automatic", + "None" + ], + "x-ms-enum": { + "name": "VirtualMachineScaleSetSkuScaleType", + "modelAsString": false + } + } + }, + "description": "Describes scaling information of a sku." + }, + "VirtualMachineScaleSetSku": { + "properties": { + "resourceType": { + "readOnly": true, + "type": "string", + "description": "The type of resource the sku applies to." + }, + "sku": { + "$ref": "#/definitions/Sku", + "readOnly": true, + "description": "The Sku." + }, + "capacity": { + "$ref": "#/definitions/VirtualMachineScaleSetSkuCapacity", + "readOnly": true, + "description": "Specifies the number of virtual machines in the scale set." + } + }, + "description": "Describes an available virtual machine scale set sku." + }, + "VirtualMachineScaleSetListSkusResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetSku" + }, + "description": "The list of skus available for the virtual machine scale set." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of Virtual Machine Scale Set Skus. Call ListNext() with this to fetch the next page of VMSS Skus." + } + }, + "required": [ + "value" + ], + "description": "The Virtual Machine Scale Set List Skus operation response." + }, + "RollbackStatusInfo": { + "properties": { + "successfullyRolledbackInstanceCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The number of instances which have been successfully rolled back." + }, + "failedRolledbackInstanceCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The number of instances which failed to rollback." + }, + "rollbackError": { + "$ref": "#/definitions/ApiError", + "readOnly": true, + "description": "Error details if OS rollback failed." + } + }, + "description": "Information about rollback on failed VM instances after a OS Upgrade operation." + }, + "UpgradeOperationHistoryStatus": { + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "Code indicating the current status of the upgrade.", + "enum": [ + "RollingForward", + "Cancelled", + "Completed", + "Faulted" + ], + "x-ms-enum": { + "name": "UpgradeState", + "modelAsString": false + } + }, + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Start time of the upgrade." + }, + "endTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "End time of the upgrade." + } + }, + "description": "Information about the current running state of the overall upgrade." + }, + "UpgradeOperationHistoricalStatusInfoProperties": { + "properties": { + "runningStatus": { + "$ref": "#/definitions/UpgradeOperationHistoryStatus", + "readOnly": true, + "description": "Information about the overall status of the upgrade operation." + }, + "progress": { + "$ref": "#/definitions/RollingUpgradeProgressInfo", + "readOnly": true, + "description": "Counts of the VMs in each state." + }, + "error": { + "$ref": "#/definitions/ApiError", + "readOnly": true, + "description": "Error Details for this upgrade if there are any." + }, + "startedBy": { + "readOnly": true, + "type": "string", + "description": "Invoker of the Upgrade Operation", + "enum": [ + "Unknown", + "User", + "Platform" + ], + "x-ms-enum": { + "name": "UpgradeOperationInvoker", + "modelAsString": false + } + }, + "targetImageReference": { + "$ref": "#/definitions/ImageReference", + "readOnly": true, + "description": "Image Reference details" + }, + "rollbackInfo": { + "$ref": "#/definitions/RollbackStatusInfo", + "readOnly": true, + "description": "Information about OS rollback if performed" + } + }, + "description": "Describes each OS upgrade on the Virtual Machine Scale Set." + }, + "UpgradeOperationHistoricalStatusInfo": { + "properties": { + "properties": { + "$ref": "#/definitions/UpgradeOperationHistoricalStatusInfoProperties", + "readOnly": true, + "description": "Information about the properties of the upgrade operation." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type" + }, + "location": { + "readOnly": true, + "type": "string", + "description": "Resource location" + } + }, + "description": "Virtual Machine Scale Set OS Upgrade History operation response." + }, + "VirtualMachineScaleSetListOSUpgradeHistory": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/UpgradeOperationHistoricalStatusInfo" + }, + "description": "The list of OS upgrades performed on the virtual machine scale set." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of OS Upgrade History. Call ListNext() with this to fetch the next page of history of upgrades." + } + }, + "required": [ + "value" + ], + "description": "List of Virtual Machine Scale Set OS Upgrade History operation response." + }, + "VirtualMachineScaleSetVMProperties": { + "properties": { + "latestModelApplied": { + "readOnly": true, + "type": "boolean", + "description": "Specifies whether the latest model has been applied to the virtual machine." + }, + "vmId": { + "readOnly": true, + "type": "string", + "description": "Azure VM unique ID." + }, + "instanceView": { + "$ref": "#/definitions/VirtualMachineScaleSetVMInstanceView", + "readOnly": true, + "description": "The virtual machine instance view." + }, + "hardwareProfile": { + "$ref": "#/definitions/HardwareProfile", + "description": "Specifies the hardware settings for the virtual machine." + }, + "storageProfile": { + "$ref": "#/definitions/StorageProfile", + "description": "Specifies the storage settings for the virtual machine disks." + }, + "additionalCapabilities": { + "$ref": "#/definitions/AdditionalCapabilities", + "description": "Specifies additional capabilities enabled or disabled on the virtual machine in the scale set. For instance: whether the virtual machine has the capability to support attaching managed data disks with UltraSSD_LRS storage account type." + }, + "osProfile": { + "$ref": "#/definitions/OSProfile", + "description": "Specifies the operating system settings for the virtual machine." + }, + "networkProfile": { + "$ref": "#/definitions/NetworkProfile", + "description": "Specifies the network interfaces of the virtual machine." + }, + "networkProfileConfiguration": { + "$ref": "#/definitions/VirtualMachineScaleSetVMNetworkProfileConfiguration", + "description": "Specifies the network profile configuration of the virtual machine." + }, + "diagnosticsProfile": { + "$ref": "#/definitions/DiagnosticsProfile", + "description": "Specifies the boot diagnostic settings state.

    Minimum api-version: 2015-06-15." + }, + "availabilitySet": { + "$ref": "#/definitions/SubResource", + "description": "Specifies information about the availability set that the virtual machine should be assigned to. Virtual machines specified in the same availability set are allocated to different nodes to maximize availability. For more information about availability sets, see [Manage the availability of virtual machines](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-manage-availability?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json).

    For more information on Azure planned maintenance, see [Planned maintenance for virtual machines in Azure](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-planned-maintenance?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)

    Currently, a VM can only be added to availability set at creation time. An existing VM cannot be added to an availability set." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "licenseType": { + "type": "string", + "description": "Specifies that the image or disk that is being used was licensed on-premises. This element is only used for images that contain the Windows Server operating system.

    Possible values are:

    Windows_Client

    Windows_Server

    If this element is included in a request for an update, the value must match the initial value. This value cannot be updated.

    For more information, see [Azure Hybrid Use Benefit for Windows Server](https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-hybrid-use-benefit-licensing?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json)

    Minimum api-version: 2015-06-15" + }, + "modelDefinitionApplied": { + "readOnly": true, + "type": "string", + "description": "Specifies whether the model applied to the virtual machine is the model of the virtual machine scale set or the customized model for the virtual machine." + }, + "protectionPolicy": { + "$ref": "#/definitions/VirtualMachineScaleSetVMProtectionPolicy", + "description": "Specifies the protection policy of the virtual machine." + } + }, + "description": "Describes the properties of a virtual machine scale set virtual machine." + }, + "VirtualMachineScaleSetVM": { + "properties": { + "instanceId": { + "readOnly": true, + "type": "string", + "description": "The virtual machine instance ID." + }, + "sku": { + "$ref": "#/definitions/Sku", + "readOnly": true, + "description": "The virtual machine SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualMachineScaleSetVMProperties" + }, + "plan": { + "$ref": "#/definitions/Plan", + "description": "Specifies information about the marketplace image used to create the virtual machine. This element is only used for marketplace images. Before you can use a marketplace image from an API, you must enable the image for programmatic use. In the Azure portal, find the marketplace image that you want to use and then click **Want to deploy programmatically, Get Started ->**. Enter any required information and then click **Save**." + }, + "resources": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineExtension" + }, + "description": "The virtual machine child extension resources." + }, + "zones": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The virtual machine zones." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Describes a virtual machine scale set virtual machine." + }, + "VirtualMachineScaleSetVMInstanceView": { + "properties": { + "platformUpdateDomain": { + "type": "integer", + "format": "int32", + "description": "The Update Domain count." + }, + "platformFaultDomain": { + "type": "integer", + "format": "int32", + "description": "The Fault Domain count." + }, + "rdpThumbPrint": { + "type": "string", + "description": "The Remote desktop certificate thumbprint." + }, + "vmAgent": { + "$ref": "#/definitions/VirtualMachineAgentInstanceView", + "description": "The VM Agent running on the virtual machine." + }, + "maintenanceRedeployStatus": { + "$ref": "#/definitions/MaintenanceRedeployStatus", + "description": "The Maintenance Operation status on the virtual machine." + }, + "disks": { + "type": "array", + "items": { + "$ref": "#/definitions/DiskInstanceView" + }, + "description": "The disks information." + }, + "extensions": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineExtensionInstanceView" + }, + "description": "The extensions information." + }, + "vmHealth": { + "readOnly": true, + "$ref": "#/definitions/VirtualMachineHealthStatus", + "description": "The health status for the VM." + }, + "bootDiagnostics": { + "$ref": "#/definitions/BootDiagnosticsInstanceView", + "description": "Boot Diagnostics is a debugging feature which allows you to view Console Output and Screenshot to diagnose VM status.

    You can easily view the output of your console log.

    Azure also enables you to see a screenshot of the VM from the hypervisor." + }, + "statuses": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "The resource status information." + }, + "placementGroupId": { + "type": "string", + "description": "The placement group in which the VM is running. If the VM is deallocated it will not have a placementGroupId." + } + }, + "description": "The instance view of a virtual machine scale set VM." + }, + "VirtualMachineScaleSetVMNetworkProfileConfiguration": { + "properties": { + "networkInterfaceConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetNetworkConfiguration" + }, + "description": "The list of network configurations." + } + }, + "description": "Describes a virtual machine scale set VM network profile." + }, + "VirtualMachineScaleSetVMProtectionPolicy": { + "properties": { + "protectFromScaleIn": { + "type": "boolean", + "description": "Indicates that the virtual machine scale set VM shouldn't be considered for deletion during a scale-in operation." + }, + "protectFromScaleSetActions": { + "type": "boolean", + "description": "Indicates that model updates or actions (including scale-in) initiated on the virtual machine scale set should not be applied to the virtual machine scale set VM." + } + }, + "description": "The protection policy of a virtual machine scale set VM." + }, + "ScheduledEventsProfile": { + "type": "object", + "properties": { + "terminateNotificationProfile": { + "$ref": "#/definitions/TerminateNotificationProfile", + "description": "Specifies Terminate Scheduled Event related configurations." + } + } + }, + "TerminateNotificationProfile": { + "type": "object", + "properties": { + "notBeforeTimeout": { + "type": "string", + "description": "Configurable length of time a Virtual Machine being deleted will have to potentially approve the Terminate Scheduled Event before the event is auto approved (timed out). The configuration must be specified in ISO 8601 format, the default value is 5 minutes (PT5M)" + }, + "enable": { + "type": "boolean", + "description": "Specifies whether the Terminate Scheduled event is enabled or disabled." + } + } + }, + "VirtualMachineHealthStatus": { + "properties": { + "status": { + "readOnly": true, + "$ref": "#/definitions/InstanceViewStatus", + "description": "The health status information for the VM." + } + }, + "description": "The health status of the VM." + }, + "VirtualMachineScaleSetVMListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineScaleSetVM" + }, + "description": "The list of virtual machine scale sets VMs." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of Virtual Machine Scale Set VMs. Call ListNext() with this to fetch the next page of VMSS VMs" + } + }, + "required": [ + "value" + ], + "description": "The List Virtual Machine Scale Set VMs operation response." + }, + "RollingUpgradeStatusInfo": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RollingUpgradeStatusInfoProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "The status of the latest virtual machine scale set rolling upgrade." + }, + "RollingUpgradeStatusInfoProperties": { + "properties": { + "policy": { + "readOnly": true, + "$ref": "#/definitions/RollingUpgradePolicy", + "description": "The rolling upgrade policies applied for this upgrade." + }, + "runningStatus": { + "readOnly": true, + "$ref": "#/definitions/RollingUpgradeRunningStatus", + "description": "Information about the current running state of the overall upgrade." + }, + "progress": { + "readOnly": true, + "$ref": "#/definitions/RollingUpgradeProgressInfo", + "description": "Information about the number of virtual machine instances in each upgrade state." + }, + "error": { + "readOnly": true, + "$ref": "#/definitions/ApiError", + "description": "Error details for this upgrade, if there are any." + } + }, + "description": "The status of the latest virtual machine scale set rolling upgrade." + }, + "RollingUpgradeRunningStatus": { + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "Code indicating the current status of the upgrade.", + "enum": [ + "RollingForward", + "Cancelled", + "Completed", + "Faulted" + ], + "x-ms-enum": { + "name": "RollingUpgradeStatusCode", + "modelAsString": false + } + }, + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Start time of the upgrade." + }, + "lastAction": { + "type": "string", + "readOnly": true, + "description": "The last action performed on the rolling upgrade.", + "enum": [ + "Start", + "Cancel" + ], + "x-ms-enum": { + "name": "RollingUpgradeActionType", + "modelAsString": false + } + }, + "lastActionTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Last action time of the upgrade." + } + }, + "description": "Information about the current running state of the overall upgrade." + }, + "RollingUpgradeProgressInfo": { + "properties": { + "successfulInstanceCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The number of instances that have been successfully upgraded." + }, + "failedInstanceCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The number of instances that have failed to be upgraded successfully." + }, + "inProgressInstanceCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The number of instances that are currently being upgraded." + }, + "pendingInstanceCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The number of instances that have not yet begun to be upgraded." + } + }, + "description": "Information about the number of virtual machine instances in each upgrade state." + }, + "ApiErrorBase": { + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "target": { + "type": "string", + "description": "The target of the particular error." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "Api error base." + }, + "InnerError": { + "properties": { + "exceptiontype": { + "type": "string", + "description": "The exception type." + }, + "errordetail": { + "type": "string", + "description": "The internal error message or exception dump." + } + }, + "description": "Inner error details." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/ApiError" + } + }, + "description": "An error response from the Compute service." + }, + "ApiError": { + "properties": { + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiErrorBase" + }, + "description": "The Api error details" + }, + "innererror": { + "$ref": "#/definitions/InnerError", + "description": "The Api inner error" + }, + "code": { + "type": "string", + "description": "The error code." + }, + "target": { + "type": "string", + "description": "The target of the particular error." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "Api error." + }, + "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" + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "required": [ + "location" + ], + "x-ms-azure-resource": true + }, + "UpdateResource": { + "description": "The Update Resource model definition.", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + } + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource Id" + } + }, + "x-ms-azure-resource": true + }, + "SubResourceReadOnly": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id" + } + }, + "x-ms-azure-resource": true + }, + "RecoveryWalkResponse": { + "properties": { + "walkPerformed": { + "type": "boolean", + "readOnly": true, + "description": "Whether the recovery walk was performed" + }, + "nextPlatformUpdateDomain": { + "type": "integer", + "readOnly": true, + "description": "The next update domain that needs to be walked. Null means walk spanning all update domains has been completed" + } + }, + "description": "Response after calling a manual recovery walk" + }, + "RequestRateByIntervalInput": { + "properties": { + "intervalLength": { + "type": "string", + "description": "Interval value in minutes used to create LogAnalytics call rate logs.", + "enum": [ + "ThreeMins", + "FiveMins", + "ThirtyMins", + "SixtyMins" + ], + "x-ms-enum": { + "name": "IntervalInMins", + "modelAsString": false + } + } + }, + "required": [ + "intervalLength" + ], + "allOf": [ + { + "$ref": "#/definitions/LogAnalyticsInputBase" + } + ], + "description": "Api request input for LogAnalytics getRequestRateByInterval Api." + }, + "ThrottledRequestsInput": { + "allOf": [ + { + "$ref": "#/definitions/LogAnalyticsInputBase" + } + ], + "description": "Api request input for LogAnalytics getThrottledRequests Api." + }, + "LogAnalyticsInputBase": { + "properties": { + "blobContainerSasUri": { + "type": "string", + "description": "SAS Uri of the logging blob container to which LogAnalytics Api writes output logs to." + }, + "fromTime": { + "type": "string", + "format": "date-time", + "description": "From time of the query" + }, + "toTime": { + "type": "string", + "format": "date-time", + "description": "To time of the query" + }, + "groupByThrottlePolicy": { + "type": "boolean", + "description": "Group query result by Throttle Policy applied." + }, + "groupByOperationName": { + "type": "boolean", + "description": "Group query result by Operation Name." + }, + "groupByResourceName": { + "type": "boolean", + "description": "Group query result by Resource Name." + } + }, + "required": [ + "blobContainerSasUri", + "fromTime", + "toTime" + ], + "description": "Api input base class for LogAnalytics Api." + }, + "LogAnalyticsOperationResult": { + "properties": { + "properties": { + "readOnly": true, + "$ref": "#/definitions/LogAnalyticsOutput", + "description": "LogAnalyticsOutput" + } + }, + "description": "LogAnalytics operation status response" + }, + "LogAnalyticsOutput": { + "properties": { + "output": { + "readOnly": true, + "type": "string", + "description": "Output file Uri path to blob container." + } + }, + "description": "LogAnalytics output properties" + }, + "VMScaleSetConvertToSinglePlacementGroupInput": { + "properties": { + "activePlacementGroupId": { + "type": "string", + "description": "Id of the placement group in which you want future virtual machine instances to be placed. To query placement group Id, please use Virtual Machine Scale Set VMs - Get API. If not provided, the platform will choose one with maximum number of virtual machine instances." + } + } + }, + "OrchestrationServiceStateInput": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the service.", + "enum": [ + "AutomaticRepairs" + ], + "x-ms-enum": { + "name": "OrchestrationServiceNames", + "modelAsString": true + } + }, + "action": { + "type": "string", + "description": "The action to be performed.", + "enum": [ + "Resume", + "Suspend" + ], + "x-ms-enum": { + "name": "OrchestrationServiceStateAction", + "modelAsString": true + } + } + }, + "description": "The input for OrchestrationServiceState", + "required": [ + "serviceName", + "action" + ] + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateACustomImageScaleSetFromAnUnmanagedGeneralizedOsImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateACustomImageScaleSetFromAnUnmanagedGeneralizedOsImage.json new file mode 100644 index 000000000000..dbdd3670c655 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateACustomImageScaleSetFromAnUnmanagedGeneralizedOsImage.json @@ -0,0 +1,202 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "osDisk": { + "caching": "ReadWrite", + "image": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/{existing-generalized-os-image-blob-name}.vhd" + }, + "createOption": "FromImage", + "name": "osDisk" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d6e9ab29-f8c9-4792-978c-ae2c07b98f17", + "virtualMachineProfile": { + "storageProfile": { + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "image": { + "uri": "https://{existing-storage-account-name}.blob.core.windows.net/system/Microsoft.Compute/Images/vhds/{existing-generalized-os-image-blob-name}.vhd" + }, + "createOption": "FromImage", + "name": "osDisk" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d6e9ab29-f8c9-4792-978c-ae2c07b98f17", + "virtualMachineProfile": { + "storageProfile": { + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "image": { + "uri": "https://{existing-storage-account-name}.blob.core.windows.net/system/Microsoft.Compute/Images/vhds/{existing-generalized-os-image-blob-name}.vhd" + }, + "createOption": "FromImage", + "name": "osDisk" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateACustomImageVmFromAnUnmanagedGeneralizedOsImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateACustomImageVmFromAnUnmanagedGeneralizedOsImage.json new file mode 100644 index 000000000000..c6522ca38961 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateACustomImageVmFromAnUnmanagedGeneralizedOsImage.json @@ -0,0 +1,145 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "{vm-name}", + "api-version": "2019-12-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "osDisk": { + "name": "myVMosdisk", + "image": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/{existing-generalized-os-image-blob-name}.vhd" + }, + "osType": "Windows", + "createOption": "FromImage", + "caching": "ReadWrite", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/myDisk.vhd" + } + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "osDisk": { + "name": "myVMosdisk", + "image": { + "uri": "https://{existing-storage-account-name}.blob.core.windows.net/system/Microsoft.Compute/Images/vhds/{existing-generalized-os-image-blob-name}.vhd" + }, + "caching": "ReadWrite", + "createOption": "FromImage", + "osType": "Windows", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk.vhd" + } + }, + "dataDisks": [] + }, + "vmId": "926cd555-a07c-4ff5-b214-4aa4dd09d79b", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "osDisk": { + "name": "myVMosdisk", + "image": { + "uri": "https://{existing-storage-account-name}.blob.core.windows.net/system/Microsoft.Compute/Images/vhds/{existing-generalized-os-image-blob-name}.vhd" + }, + "caching": "ReadWrite", + "createOption": "FromImage", + "osType": "Windows", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk.vhd" + } + }, + "dataDisks": [] + }, + "vmId": "926cd555-a07c-4ff5-b214-4aa4dd09d79b", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAPlatformImageScaleSetWithUnmanagedOsDisks.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAPlatformImageScaleSetWithUnmanagedOsDisks.json new file mode 100644 index 000000000000..89324f915e29 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAPlatformImageScaleSetWithUnmanagedOsDisks.json @@ -0,0 +1,222 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "osDisk", + "vhdContainers": [ + "http://{existing-storage-account-name-0}.blob.core.windows.net/vhdContainer", + "http://{existing-storage-account-name-1}.blob.core.windows.net/vhdContainer", + "http://{existing-storage-account-name-2}.blob.core.windows.net/vhdContainer", + "http://{existing-storage-account-name-3}.blob.core.windows.net/vhdContainer", + "http://{existing-storage-account-name-4}.blob.core.windows.net/vhdContainer" + ] + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "77b7df9a-32fe-45e3-8911-60ac9c9b9c64", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "vhdContainers": [ + "http://{existing-storage-account-name}.blob.core.windows.net/vhds" + ], + "name": "osDisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "77b7df9a-32fe-45e3-8911-60ac9c9b9c64", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "vhdContainers": [ + "http://{existing-storage-account-name}.blob.core.windows.net/vhds" + ], + "name": "osDisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAPlatformImageVmWithUnmanagedOsAndDataDisks.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAPlatformImageVmWithUnmanagedOsAndDataDisks.json new file mode 100644 index 000000000000..e40163f9e51c --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAPlatformImageVmWithUnmanagedOsAndDataDisks.json @@ -0,0 +1,213 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "{vm-name}", + "api-version": "2019-12-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/myDisk.vhd" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + }, + "dataDisks": [ + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0, + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/myDisk0.vhd" + } + }, + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 1, + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/myDisk1.vhd" + } + } + ] + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk.vhd" + }, + "createOption": "FromImage", + "name": "myVMosdisk", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "name": "dataDisk0", + "diskSizeGB": 1023, + "createOption": "Empty", + "caching": "None", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk0.vhd" + }, + "lun": 0 + }, + { + "name": "dataDisk1", + "diskSizeGB": 1023, + "createOption": "Empty", + "caching": "None", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk1.vhd" + }, + "lun": 1 + } + ] + }, + "vmId": "5230a749-2f68-4830-900b-702182d32e63", + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk.vhd" + }, + "createOption": "FromImage", + "name": "myVMosdisk", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "name": "dataDisk0", + "diskSizeGB": 1023, + "createOption": "Empty", + "caching": "None", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk0.vhd" + }, + "lun": 0 + }, + { + "name": "dataDisk1", + "diskSizeGB": 1023, + "createOption": "Empty", + "caching": "None", + "vhd": { + "uri": "http://{existing-storage-account-name}.blob.core.windows.net/vhds/myDisk1.vhd" + }, + "lun": 1 + } + ] + }, + "vmId": "5230a749-2f68-4830-900b-702182d32e63", + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetFromACustomImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetFromACustomImage.json new file mode 100644 index 000000000000..2b99350a9cce --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetFromACustomImage.json @@ -0,0 +1,204 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/{existing-custom-image-name}" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithAMarketplaceImagePlan.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithAMarketplaceImagePlan.json new file mode 100644 index 000000000000..4fc0963106cb --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithAMarketplaceImagePlan.json @@ -0,0 +1,230 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "windows2016", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "windows-data-science-vm" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + }, + "plan": { + "publisher": "microsoft-ads", + "product": "windows-data-science-vm", + "name": "windows2016" + }, + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}", + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachineScaleSets", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}", + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachineScaleSets", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithAnAzureApplicationGateway.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithAnAzureApplicationGateway.json new file mode 100644 index 000000000000..015a2e84368e --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithAnAzureApplicationGateway.json @@ -0,0 +1,230 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "applicationGatewayBackendAddressPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/applicationGateways/{existing-application-gateway-name}/backendAddressPools/{existing-backend-address-pool-name}" + } + ], + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "a0134477-b9d9-484b-b0e3-205c1c089ffa", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "applicationGatewayBackendAddressPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/applicationGateways/nsgExistingAppGw/backendAddressPools/appGatewayBackendPool" + } + ], + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "a0134477-b9d9-484b-b0e3-205c1c089ffa", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "applicationGatewayBackendAddressPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/applicationGateways/nsgExistingAppGw/backendAddressPools/appGatewayBackendPool" + } + ], + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithAnAzureLoadBalancer.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithAnAzureLoadBalancer.json new file mode 100644 index 000000000000..ec4e432a9b82 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithAnAzureLoadBalancer.json @@ -0,0 +1,251 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + }, + "publicIPAddressConfiguration": { + "name": "{vmss-name}", + "properties": { + "publicIPAddressVersion": "IPv4" + } + }, + "loadBalancerInboundNatPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/{existing-load-balancer-name}/inboundNatPools/{existing-nat-pool-name}" + } + ], + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/{existing-load-balancer-name}/backendAddressPools/{existing-backend-address-pool-name}" + } + ] + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "ec0b21ca-51ec-414b-9323-f236ffc21479", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "loadBalancerInboundNatPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/myLb/inboundNatPools/lbNatPool" + } + ], + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/myLb/backendAddressPools/lbBackendPool" + } + ], + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "ec0b21ca-51ec-414b-9323-f236ffc21479", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "loadBalancerInboundNatPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/myLb/inboundNatPools/lbNatPool" + } + ], + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/loadBalancers/myLb/backendAddressPools/lbBackendPool" + } + ], + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithAutomaticRepairs.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithAutomaticRepairs.json new file mode 100644 index 000000000000..3933248b3858 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithAutomaticRepairs.json @@ -0,0 +1,227 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "automaticRepairsPolicy": { + "enabled": true, + "gracePeriod": "PT30M" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "automaticRepairsPolicy": { + "enabled": true, + "gracePeriod": "PT30M" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "automaticRepairsPolicy": { + "enabled": true, + "gracePeriod": "PT30M" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithBootDiagnostics.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithBootDiagnostics.json new file mode 100644 index 000000000000..d38ef49585a7 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithBootDiagnostics.json @@ -0,0 +1,233 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://{existing-storage-account-name}.blob.core.windows.net", + "enabled": true + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://nsgdiagnostic.blob.core.windows.net", + "enabled": true + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://nsgdiagnostic.blob.core.windows.net", + "enabled": true + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithDiffOsDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithDiffOsDisk.json new file mode 100644 index 000000000000..9dc7c88c7617 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithDiffOsDisk.json @@ -0,0 +1,239 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "windows2016", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "windows-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + }, + "plan": { + "publisher": "microsoft-ads", + "product": "windows-data-science-vm", + "name": "windows2016" + }, + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "name": "{vmss-name}", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}", + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachineScaleSets", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "name": "{vmss-name}", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}", + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachineScaleSets", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithDiffOsDiskUsingDiffDiskPlacement.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithDiffOsDiskUsingDiffDiskPlacement.json new file mode 100644 index 000000000000..df35cc9d6f37 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithDiffOsDiskUsingDiffDiskPlacement.json @@ -0,0 +1,242 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "windows2016", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "windows-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local", + "placement": "ResourceDisk" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + }, + "plan": { + "publisher": "microsoft-ads", + "product": "windows-data-science-vm", + "name": "windows2016" + }, + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "name": "{vmss-name}", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}", + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachineScaleSets", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local", + "placement": "ResourceDisk" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "name": "{vmss-name}", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}", + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachineScaleSets", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "b9e23088-6ffc-46e0-9e02-b0a6eeef47db", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local", + "placement": "ResourceDisk" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithEmptyDataDisksOnEachVm.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithEmptyDataDisksOnEachVm.json new file mode 100644 index 000000000000..90d6884cfc29 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithEmptyDataDisksOnEachVm.json @@ -0,0 +1,270 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D2_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "diskSizeGB": 512 + }, + "dataDisks": [ + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + }, + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 1 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D2_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "8042c376-4690-4c47-9fa2-fbdad70e32fa", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "diskSizeGB": 512 + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023 + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Succeeded" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D2_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "8042c376-4690-4c47-9fa2-fbdad70e32fa", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "diskSizeGB": 512 + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023 + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithPasswordAuthentication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithPasswordAuthentication.json new file mode 100644 index 000000000000..56f53234e109 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithPasswordAuthentication.json @@ -0,0 +1,215 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "ffb27c5c-39a5-4d4e-b307-b32598689813", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "ffb27c5c-39a5-4d4e-b307-b32598689813", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithPremiumStorage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithPremiumStorage.json new file mode 100644 index 000000000000..4b866e0d3263 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithPremiumStorage.json @@ -0,0 +1,215 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "19fd38a2-f50a-42c6-9dc7-3f9cf3791225", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "19fd38a2-f50a-42c6-9dc7-3f9cf3791225", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithSshAuthentication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithSshAuthentication.json new file mode 100644 index 000000000000..a58f58973c3f --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithSshAuthentication.json @@ -0,0 +1,239 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "linuxConfiguration": { + "ssh": { + "publicKeys": [ + { + "path": "/home/{your-username}/.ssh/authorized_keys", + "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1" + } + ] + }, + "disablePasswordAuthentication": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "fb73af19-0090-467c-9ced-b00bceab1c45", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "16.04-LTS", + "publisher": "Canonical", + "version": "latest", + "offer": "UbuntuServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "linuxConfiguration": { + "ssh": { + "publicKeys": [ + { + "path": "/home/{your-username}/.ssh/authorized_keys", + "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1" + } + ] + }, + "disablePasswordAuthentication": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "fb73af19-0090-467c-9ced-b00bceab1c45", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "16.04-LTS", + "publisher": "Canonical", + "version": "latest", + "offer": "UbuntuServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "linuxConfiguration": { + "ssh": { + "publicKeys": [ + { + "path": "/home/{your-username}/.ssh/authorized_keys", + "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1" + } + ] + }, + "disablePasswordAuthentication": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithTerminateScheduledEventEnabled.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithTerminateScheduledEventEnabled.json new file mode 100644 index 000000000000..4126fc106025 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithTerminateScheduledEventEnabled.json @@ -0,0 +1,233 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "location": "westus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + }, + "scheduledEventsProfile": { + "terminateNotificationProfile": { + "enable": true, + "notBeforeTimeout": "PT5M" + } + } + }, + "upgradePolicy": { + "mode": "Manual" + } + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + }, + "scheduledEventsProfile": { + "terminateNotificationProfile": { + "enable": true, + "notBeforeTimeout": "PT5M" + } + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "d053ec5a-8da6-495f-ab13-38216503c6d7", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage" + } + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + }, + "scheduledEventsProfile": { + "terminateNotificationProfile": { + "enable": true, + "notBeforeTimeout": "PT5M" + } + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithVMsInDifferentZones.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithVMsInDifferentZones.json new file mode 100644 index 000000000000..5f8f6500019e --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScaleSetWithVMsInDifferentZones.json @@ -0,0 +1,284 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 2, + "name": "Standard_A1_v2" + }, + "location": "centralus", + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "diskSizeGB": 512 + }, + "dataDisks": [ + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + }, + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 1 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Automatic" + } + }, + "zones": [ + "1", + "3" + ] + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 2, + "name": "Standard_A1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": false, + "overprovision": true, + "uniqueId": "8042c376-4690-4c47-9fa2-fbdad70e32fa", + "zoneBalance": false, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "diskSizeGB": 512 + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023 + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Automatic" + }, + "provisioningState": "Succeeded" + }, + "zones": [ + "1", + "3" + ], + "location": "centralus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 2, + "name": "Standard_A1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": false, + "overprovision": true, + "uniqueId": "8042c376-4690-4c47-9fa2-fbdad70e32fa", + "zoneBalance": false, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "diskSizeGB": 512 + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023 + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Automatic" + }, + "provisioningState": "Creating" + }, + "zones": [ + "1", + "3" + ], + "location": "centralus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScalesetWithDiskEncryptionSetResource.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScalesetWithDiskEncryptionSetResource.json new file mode 100644 index 000000000000..cc0f19f7fa52 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAScalesetWithDiskEncryptionSetResource.json @@ -0,0 +1,255 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01", + "parameters": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_DS1_v2" + }, + "properties": { + "overprovision": true, + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/{existing-custom-image-name}" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "createOption": "FromImage" + }, + "dataDisks": [ + { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}" + } + } + } + ] + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + } + }, + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "createOption": "FromImage" + }, + "dataDisks": [ + { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + }, + "201": { + "body": { + "sku": { + "tier": "Standard", + "capacity": 3, + "name": "Standard_D1_v2" + }, + "name": "{vmss-name}", + "properties": { + "singlePlacementGroup": true, + "overprovision": true, + "uniqueId": "afa2afa8-9e49-48fb-9d18-c86323b5d064", + "virtualMachineProfile": { + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "createOption": "FromImage" + }, + "dataDisks": [ + { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + } + ] + }, + "osProfile": { + "computerNamePrefix": "{vmss-name}", + "adminUsername": "{your-username}", + "secrets": [], + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaceConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "dnsSettings": { + "dnsServers": [] + }, + "primary": true, + "enableIPForwarding": true, + "ipConfigurations": [ + { + "name": "{vmss-name}", + "properties": { + "subnet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/nsgExistingVnet/subnets/nsgExistingSubnet" + }, + "privateIPAddressVersion": "IPv4" + } + } + ], + "enableAcceleratedNetworking": false + } + } + ] + } + }, + "upgradePolicy": { + "mode": "Manual" + }, + "provisioningState": "Creating" + }, + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmFromACustomImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmFromACustomImage.json new file mode 100644 index 000000000000..38e0a03d3048 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmFromACustomImage.json @@ -0,0 +1,144 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-12-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/{existing-custom-image-name}" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "name": "myVMosdisk", + "diskSizeGB": 30, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "caching": "ReadWrite", + "createOption": "FromImage", + "osType": "Linux" + }, + "dataDisks": [] + }, + "vmId": "71aa3d5a-d73d-4970-9182-8580433b2865", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "name": "myVMosdisk", + "diskSizeGB": 30, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "caching": "ReadWrite", + "createOption": "FromImage", + "osType": "Linux" + }, + "dataDisks": [] + }, + "vmId": "71aa3d5a-d73d-4970-9182-8580433b2865", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmInAnAvailabilitySet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmInAnAvailabilitySet.json new file mode 100644 index 000000000000..f79ad983b0e4 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmInAnAvailabilitySet.json @@ -0,0 +1,162 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-12-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "availabilitySet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/{existing-availability-set-name}" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "availabilitySet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/NSGEXISTINGAS" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "availabilitySet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/NSGEXISTINGAS" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithADiffOsDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithADiffOsDisk.json new file mode 100644 index 000000000000..5ff85148da97 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithADiffOsDisk.json @@ -0,0 +1,177 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-12-01", + "parameters": { + "location": "westus", + "plan": { + "publisher": "microsoft-ads", + "product": "windows-data-science-vm", + "name": "windows2016" + }, + "properties": { + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "windows2016", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "windows-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "myVM", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + }, + "dataDisks": [] + }, + "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachines", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "westus" + } + }, + "201": { + "body": { + "name": "myVM", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + }, + "dataDisks": [] + }, + "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachines", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithADiffOsDiskUsingDiffDiskPlacementAsCacheDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithADiffOsDiskUsingDiffDiskPlacementAsCacheDisk.json new file mode 100644 index 000000000000..1ec7212f924f --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithADiffOsDiskUsingDiffDiskPlacementAsCacheDisk.json @@ -0,0 +1,180 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-12-01", + "parameters": { + "location": "westus", + "plan": { + "publisher": "microsoft-ads", + "product": "windows-data-science-vm", + "name": "windows2016" + }, + "properties": { + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "windows2016", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "windows-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local", + "placement": "CacheDisk" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "myVM", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local", + "placement": "CacheDisk" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + }, + "dataDisks": [] + }, + "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachines", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "westus" + } + }, + "201": { + "body": { + "name": "myVM", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local", + "placement": "CacheDisk" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + }, + "dataDisks": [] + }, + "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachines", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithADiffOsDiskUsingDiffDiskPlacementAsResourceDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithADiffOsDiskUsingDiffDiskPlacementAsResourceDisk.json new file mode 100644 index 000000000000..a326f559ffbb --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithADiffOsDiskUsingDiffDiskPlacementAsResourceDisk.json @@ -0,0 +1,180 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-12-01", + "parameters": { + "location": "westus", + "plan": { + "publisher": "microsoft-ads", + "product": "windows-data-science-vm", + "name": "windows2016" + }, + "properties": { + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "windows2016", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "windows-data-science-vm" + }, + "osDisk": { + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local", + "placement": "ResourceDisk" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "myVM", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local", + "placement": "ResourceDisk" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + }, + "dataDisks": [] + }, + "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachines", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "westus" + } + }, + "201": { + "body": { + "name": "myVM", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadOnly", + "diffDiskSettings": { + "option": "Local", + "placement": "ResourceDisk" + }, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "FromImage", + "name": "myVMosdisk" + }, + "dataDisks": [] + }, + "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachines", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithAMarketplaceImagePlan.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithAMarketplaceImagePlan.json new file mode 100644 index 000000000000..c149ca156cd8 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithAMarketplaceImagePlan.json @@ -0,0 +1,168 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-12-01", + "parameters": { + "location": "westus", + "plan": { + "publisher": "microsoft-ads", + "product": "windows-data-science-vm", + "name": "windows2016" + }, + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "windows2016", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "windows-data-science-vm" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "myVM", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachines", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "westus" + } + }, + "201": { + "body": { + "name": "myVM", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "standard-data-science-vm", + "publisher": "microsoft-ads", + "version": "latest", + "offer": "standard-data-science-vm" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "5c0d55a7-c407-4ed6-bf7d-ddb810267c85", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "plan": { + "publisher": "microsoft-ads", + "product": "standard-data-science-vm", + "name": "standard-data-science-vm" + }, + "type": "Microsoft.Compute/virtualMachines", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithBootDiagnostics.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithBootDiagnostics.json new file mode 100644 index 000000000000..75ab219273e8 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithBootDiagnostics.json @@ -0,0 +1,171 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-12-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://{existing-storage-account-name}.blob.core.windows.net", + "enabled": true + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://nsgdiagnostic.blob.core.windows.net", + "enabled": true + } + }, + "vmId": "676420ba-7a24-4bfe-80bd-9c841ee184fa", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "storageUri": "http://nsgdiagnostic.blob.core.windows.net", + "enabled": true + } + }, + "vmId": "676420ba-7a24-4bfe-80bd-9c841ee184fa", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithDiskEncryptionSetResource.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithDiskEncryptionSetResource.json new file mode 100644 index 000000000000..780895017bee --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithDiskEncryptionSetResource.json @@ -0,0 +1,229 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-12-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/{existing-custom-image-name}" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "name": "myVMosdisk", + "createOption": "FromImage" + }, + "dataDisks": [ + { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + }, + { + "caching": "ReadWrite", + "managedDisk": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/{existing-managed-disk-name}", + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Attach", + "lun": 1 + } + ] + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "name": "myVMosdisk", + "diskSizeGB": 30, + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskencryptionset-name}" + } + }, + "caching": "ReadWrite", + "createOption": "FromImage", + "osType": "Linux" + }, + "dataDisks": [ + { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + }, + { + "caching": "ReadWrite", + "managedDisk": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/{existing-managed-disk-name}", + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Attach", + "lun": 1 + } + ] + }, + "vmId": "71aa3d5a-d73d-4970-9182-8580433b2865", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "linuxConfiguration": { + "disablePasswordAuthentication": false + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/nsgcustom" + }, + "osDisk": { + "name": "myVMosdisk", + "diskSizeGB": 30, + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "caching": "ReadWrite", + "createOption": "FromImage", + "osType": "Linux" + }, + "dataDisks": [ + { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + }, + { + "caching": "ReadWrite", + "managedDisk": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/{existing-managed-disk-name}", + "storageAccountType": "Standard_LRS", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + } + }, + "diskSizeGB": 1023, + "createOption": "Attach", + "lun": 1 + } + ] + }, + "vmId": "71aa3d5a-d73d-4970-9182-8580433b2865", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithEmptyDataDisks.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithEmptyDataDisks.json new file mode 100644 index 000000000000..02b683bc5301 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithEmptyDataDisks.json @@ -0,0 +1,205 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-12-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + }, + "dataDisks": [ + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0 + }, + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 1 + } + ] + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023 + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023 + } + ] + }, + "vmId": "3906fef9-a1e5-4b83-a8a8-540858b41df0", + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023, + "toBeDetached": false + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023, + "toBeDetached": false + } + ] + }, + "vmId": "3906fef9-a1e5-4b83-a8a8-540858b41df0", + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithPasswordAuthentication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithPasswordAuthentication.json new file mode 100644 index 000000000000..7914fcac877d --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithPasswordAuthentication.json @@ -0,0 +1,153 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-12-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "b248db33-62ba-4d2d-b791-811e075ee0f5", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "b248db33-62ba-4d2d-b791-811e075ee0f5", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithPremiumStorage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithPremiumStorage.json new file mode 100644 index 000000000000..891f577e4c71 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithPremiumStorage.json @@ -0,0 +1,153 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-12-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Premium_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "a149cd25-409f-41af-8088-275f5486bc93", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Premium_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "a149cd25-409f-41af-8088-275f5486bc93", + "hardwareProfile": { + "vmSize": "Standard_DS1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithSshAuthentication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithSshAuthentication.json new file mode 100644 index 000000000000..674436b34282 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAVmWithSshAuthentication.json @@ -0,0 +1,177 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-12-01", + "parameters": { + "location": "westus", + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "{image_sku}", + "publisher": "{image_publisher}", + "version": "latest", + "offer": "{image_offer}" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + } + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "linuxConfiguration": { + "ssh": { + "publicKeys": [ + { + "path": "/home/{your-username}/.ssh/authorized_keys", + "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1" + } + ] + }, + "disablePasswordAuthentication": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "linuxConfiguration": { + "ssh": { + "publicKeys": [ + { + "path": "/home/{your-username}/.ssh/authorized_keys", + "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1" + } + ] + }, + "disablePasswordAuthentication": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "16.04-LTS", + "publisher": "Canonical", + "version": "latest", + "offer": "UbuntuServer" + }, + "osDisk": { + "osType": "Linux", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "e0de9b84-a506-4b95-9623-00a425d05c90", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "linuxConfiguration": { + "ssh": { + "publicKeys": [ + { + "path": "/home/{your-username}/.ssh/authorized_keys", + "keyData": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCeClRAk2ipUs/l5voIsDC5q9RI+YSRd1Bvd/O+axgY4WiBzG+4FwJWZm/mLLe5DoOdHQwmU2FrKXZSW4w2sYE70KeWnrFViCOX5MTVvJgPE8ClugNl8RWth/tU849DvM9sT7vFgfVSHcAS2yDRyDlueii+8nF2ym8XWAPltFVCyLHRsyBp5YPqK8JFYIa1eybKsY3hEAxRCA+/7bq8et+Gj3coOsuRmrehav7rE6N12Pb80I6ofa6SM5XNYq4Xk0iYNx7R3kdz0Jj9XgZYWjAHjJmT0gTRoOnt6upOuxK7xI/ykWrllgpXrCPu3Ymz+c+ujaqcxDopnAl2lmf69/J1" + } + ] + }, + "disablePasswordAuthentication": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "16.04-LTS", + "publisher": "Canonical", + "version": "latest", + "offer": "UbuntuServer" + }, + "osDisk": { + "osType": "Linux", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [] + }, + "vmId": "e0de9b84-a506-4b95-9623-00a425d05c90", + "hardwareProfile": { + "vmSize": "Standard_D1_v2" + }, + "provisioningState": "Creating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnAvailabilitySet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnAvailabilitySet.json new file mode 100644 index 000000000000..0b0da3f73e8a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnAvailabilitySet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "availabilitySetName": "myAvailabilitySet", + "parameters": { + "location": "westus", + "properties": { + "platformFaultDomainCount": 2, + "platformUpdateDomainCount": 20 + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Classic" + }, + "name": "myAvailabilitySet", + "properties": { + "platformFaultDomainCount": 2, + "platformUpdateDomainCount": 20 + }, + "location": "westus", + "type": "Microsoft.Compute/availabilitySets", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/myAvailabilitySet" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromABlob.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromABlob.json new file mode 100644 index 000000000000..a5b13c26a7c0 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromABlob.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "osState": "Generalized" + }, + "zoneResilient": true + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "caching": "ReadWrite" + }, + "dataDisks": [], + "zoneResilient": true + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "caching": "ReadWrite" + }, + "dataDisks": [], + "zoneResilient": true + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromABlobWithDiskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromABlobWithDiskEncryptionSet.json new file mode 100644 index 000000000000..68531e51bbd4 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromABlobWithDiskEncryptionSet.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "osState": "Generalized" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromAManagedDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromAManagedDisk.json new file mode 100644 index 000000000000..3901568a5627 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromAManagedDisk.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "osState": "Generalized" + }, + "zoneResilient": true + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [], + "zoneResilient": true + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [], + "zoneResilient": true + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromAManagedDiskWithDiskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromAManagedDiskWithDiskEncryptionSet.json new file mode 100644 index 000000000000..44cc6b06415e --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromAManagedDiskWithDiskEncryptionSet.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "osState": "Generalized" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromASnapshot.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromASnapshot.json new file mode 100644 index 000000000000..0014fd9e11cc --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromASnapshot.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "osState": "Generalized" + }, + "zoneResilient": false + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [], + "zoneResilient": false + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [], + "zoneResilient": false + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromASnapshotWithDiskEncryptionSet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromASnapshotWithDiskEncryptionSet.json new file mode 100644 index 000000000000..9668dac6924e --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromASnapshotWithDiskEncryptionSet.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "osState": "Generalized" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "diskEncryptionSet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSets/{existing-diskEncryptionSet-name}" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [] + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromAVM.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromAVM.json new file mode 100644 index 000000000000..f83f1d6baeeb --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageFromAVM.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "sourceVirtualMachine": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM" + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "sourceVirtualMachine": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM" + }, + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "managedDisk": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myVM_OsDisk_1_6dc293b7d811433196903acf92665022" + }, + "caching": "ReadWrite" + }, + "dataDisks": [], + "zoneResilient": false + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "sourceVirtualMachine": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM" + }, + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "managedDisk": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myVM_OsDisk_1_6dc293b7d811433196903acf92665022" + }, + "caching": "ReadWrite" + }, + "dataDisks": [], + "zoneResilient": false + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageThatIncludesADataDiskFromABlob.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageThatIncludesADataDiskFromABlob.json new file mode 100644 index 000000000000..5b7c1615f4fe --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageThatIncludesADataDiskFromABlob.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "osState": "Generalized" + }, + "dataDisks": [ + { + "lun": 1, + "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd" + } + ], + "zoneResilient": false + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "lun": 1, + "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd" + } + ], + "zoneResilient": false + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "osState": "Generalized", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "lun": 1, + "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd" + } + ], + "zoneResilient": false + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageThatIncludesADataDiskFromAManagedDisk.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageThatIncludesADataDiskFromAManagedDisk.json new file mode 100644 index 000000000000..75359f1eb220 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageThatIncludesADataDiskFromAManagedDisk.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "osState": "Generalized" + }, + "dataDisks": [ + { + "lun": 1, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2" + } + } + ], + "zoneResilient": false + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "lun": 1, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2" + } + } + ], + "zoneResilient": false + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "managedDisk": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "lun": 1, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2" + } + } + ], + "zoneResilient": false + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageThatIncludesADataDiskFromASnapshot.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageThatIncludesADataDiskFromASnapshot.json new file mode 100644 index 000000000000..da42be168779 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnImageThatIncludesADataDiskFromASnapshot.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "imageName": "myImage", + "parameters": { + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "osState": "Generalized" + }, + "dataDisks": [ + { + "lun": 1, + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2" + } + } + ], + "zoneResilient": true + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "lun": 1, + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2" + } + } + ], + "zoneResilient": true + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + }, + "201": { + "body": { + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Linux", + "snapshot": { + "id": "subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot" + }, + "osState": "Generalized", + "caching": "ReadWrite" + }, + "dataDisks": [ + { + "lun": 1, + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2" + } + } + ], + "zoneResilient": true + }, + "provisioningState": "Creating" + }, + "type": "Microsoft.Compute/images", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/disk/providers/Microsoft.Compute/images/myImage", + "name": "myImage" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnSshPublicKey.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnSshPublicKey.json new file mode 100644 index 000000000000..00074b2b3fd1 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateAnSshPublicKey.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "sshPublicKeyName": "mySshPublicKeyName", + "parameters": { + "location": "westus", + "properties": { + "publicKey": "{ssh-rsa public key}" + } + } + }, + "responses": { + "200": { + "body": { + "name": "mySshPublicKeyName", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/sshPublicKeys/mySshPublicKeyName", + "properties": { + "publicKey": "{ssh-rsa public key}" + } + } + }, + "201": { + "body": { + "name": "mySshPublicKeyName", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/sshPublicKeys/mySshPublicKeyName", + "properties": { + "publicKey": "{ssh-rsa public key}" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateADedicatedHost.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateADedicatedHost.json new file mode 100644 index 000000000000..be99526847e4 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateADedicatedHost.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-10-01", + "parameters": { + "location": "westus", + "tags": { + "department": "HR" + }, + "properties": { + "platformFaultDomain": 1 + }, + "sku": { + "name": "DSv3-Type1" + } + }, + "hostGroupName": "myDedicatedHostGroup", + "hostName": "myDedicatedHost" + }, + "responses": { + "201": { + "body": { + "name": "myDedicatedHost", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup/hosts/myDedicatedHost", + "tags": { + "department": "HR" + }, + "sku": { + "name": "DSv3-Type1" + }, + "properties": { + "platformFaultDomain": 1, + "autoReplaceOnFailure": true, + "hostId": "{GUID}" + } + } + }, + "200": { + "body": { + "properties": { + "platformFaultDomain": 1, + "autoReplaceOnFailure": false, + "licenseType": "Windows_Server_Hybrid", + "hostId": "{GUID}" + }, + "location": "westus", + "tags": { + "department": "HR" + }, + "name": "myDedicatedHost", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup/hosts/myDedicatedHost", + "sku": { + "name": "DSv3-Type1" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateADedicatedHostGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateADedicatedHostGroup.json new file mode 100644 index 000000000000..3d4ec8a42903 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateADedicatedHostGroup.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-10-01", + "hostGroupName": "myDedicatedHostGroup", + "parameters": { + "location": "westus", + "tags": { + "department": "finance" + }, + "zones": [ + "1" + ], + "properties": { + "platformFaultDomainCount": 3 + } + } + }, + "responses": { + "201": { + "body": { + "name": "myDedicatedHostGroup", + "location": "westus", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup", + "tags": { + "department": "finance" + }, + "zones": [ + "1" + ], + "properties": { + "platformFaultDomainCount": 3, + "hosts": [] + } + } + }, + "200": { + "body": { + "properties": { + "platformFaultDomainCount": 3, + "hosts": [] + }, + "location": "westus", + "tags": { + "department": "finance", + "owner": "myCompany" + }, + "name": "myDedicatedHostGroup", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/HostGroups/myDedicatedHostGroup", + "zones": [ + "1" + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateAProximityPlacementGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateAProximityPlacementGroup.json new file mode 100644 index 000000000000..732e46d6421b --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateAProximityPlacementGroup.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "proximityPlacementGroupName": "myProximityPlacementGroup", + "parameters": { + "location": "westus", + "properties": { + "proximityPlacementGroupType": "Standard" + } + } + }, + "responses": { + "200": { + "body": { + "name": "myProximityPlacementGroup", + "properties": { + "proximityPlacementGroupType": "Standard" + }, + "location": "westus", + "type": "Microsoft.Compute/proximityPlacementGroups", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myProximityPlacementGroup" + } + }, + "201": { + "body": { + "name": "myProximityPlacementGroup", + "properties": { + "proximityPlacementGroupType": "Standard" + }, + "location": "westus", + "type": "Microsoft.Compute/proximityPlacementGroups", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myProximityPlacementGroup" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateASimpleGallery.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateASimpleGallery.json new file mode 100644 index 000000000000..993975f6205b --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateASimpleGallery.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "galleryName": "myGalleryName", + "gallery": { + "location": "West US", + "properties": { + "description": "This is the gallery description." + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "description": "This is the gallery description.", + "identifier": { + "uniqueName": "{subscription-id}-MYGALLERYNAME" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myGalleryName" + } + }, + "201": { + "body": { + "properties": { + "description": "This is the gallery description.", + "identifier": { + "uniqueName": "{subscription-id}-MYGALLERYNAME" + }, + "provisioningState": "Creating" + }, + "location": "West US", + "name": "myGalleryName" + } + }, + "202": { + "body": { + "properties": { + "description": "This is the gallery description.", + "identifier": { + "uniqueName": "{subscription-id}-MYGALLERYNAME" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myGalleryName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateASimpleGalleryApplication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateASimpleGalleryApplication.json new file mode 100644 index 000000000000..4dfa3e257e19 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateASimpleGalleryApplication.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "galleryName": "myGalleryName", + "galleryApplicationName": "myGalleryApplicationName", + "galleryApplication": { + "location": "West US", + "properties": { + "description": "This is the gallery application description.", + "eula": "This is the gallery application EULA.", + "privacyStatementUri": "myPrivacyStatementUri}", + "releaseNoteUri": "myReleaseNoteUri", + "supportedOSType": "Windows" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "description": "This is the gallery application description.", + "eula": "This is the gallery application EULA.", + "privacyStatementUri": "myPrivacyStatementUri}", + "releaseNoteUri": "myReleaseNoteUri", + "supportedOSType": "Windows" + }, + "location": "West US", + "name": "myGalleryApplicationName", + "type": "Microsoft.Compute/galleries", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myGalleryName/applications/myGalleryApplicationName" + } + }, + "201": { + "body": { + "properties": { + "description": "This is the gallery application description.", + "eula": "This is the gallery application EULA.", + "privacyStatementUri": "myPrivacyStatementUri}", + "releaseNoteUri": "myReleaseNoteUri", + "supportedOSType": "Windows" + }, + "location": "West US", + "name": "myGalleryApplicationName", + "type": "Microsoft.Compute/galleries", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myGalleryName/applications/myGalleryApplicationName" + } + }, + "202": { + "body": { + "properties": { + "description": "This is the gallery application description.", + "eula": "This is the gallery application EULA.", + "privacyStatementUri": "myPrivacyStatementUri}", + "releaseNoteUri": "myReleaseNoteUri", + "supportedOSType": "Windows" + }, + "location": "West US", + "name": "myGalleryApplicationName", + "type": "Microsoft.Compute/galleries", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myGalleryName/applications/myGalleryApplicationName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateASimpleGalleryApplicationVersion.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateASimpleGalleryApplicationVersion.json new file mode 100644 index 000000000000..c7c9061bc098 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateASimpleGalleryApplicationVersion.json @@ -0,0 +1,123 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "galleryName": "myGalleryName", + "galleryApplicationName": "myGalleryApplicationName", + "galleryApplicationVersionName": "1.0.0", + "galleryApplicationVersion": { + "location": "West US", + "properties": { + "publishingProfile": { + "source": { + "fileName": "package.zip", + "mediaLink": "https://mystorageaccount.blob.core.windows.net/mycontainer/package.zip?{sasKey}" + }, + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS" + } + ], + "replicaCount": 1, + "endOfLifeDate": "2019-07-01T07:00:00Z", + "storageAccountType": "Standard_LRS" + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "West US", + "name": "1.0.0", + "type": "Microsoft.Compute/galleries/applications/versions", + "id": "/subscriptions/01523d7c-60da-455e-adef-521b547922c4/resourceGroups/galleryPsTestRg98/providers/Microsoft.Compute/galleries/galleryPsTestGallery6165/applications/galleryPsTestGalleryApplication7825/versions/1.0.0", + "properties": { + "publishingProfile": { + "source": { + "fileName": "package.zip", + "mediaLink": "https://mystorageaccount.blob.core.windows.net/mycontainer/package.zip?{sasKey}" + }, + "enableHealthCheck": false, + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS" + } + ], + "replicaCount": 1, + "excludeFromLatest": false, + "publishedDate": "2019-06-21T17:13:57.5972568+00:00", + "endOfLifeDate": "2019-07-01T07:00:00+00:00", + "storageAccountType": "Standard_LRS" + }, + "provisioningState": "Updating" + } + } + }, + "201": { + "body": { + "location": "West US", + "name": "1.0.0", + "type": "Microsoft.Compute/galleries/applications/versions", + "id": "/subscriptions/01523d7c-60da-455e-adef-521b547922c4/resourceGroups/galleryPsTestRg98/providers/Microsoft.Compute/galleries/galleryPsTestGallery6165/applications/galleryPsTestGalleryApplication7825/versions/1.0.0", + "properties": { + "publishingProfile": { + "source": { + "fileName": "package.zip", + "mediaLink": "https://mystorageaccount.blob.core.windows.net/mycontainer/package.zip?{sasKey}" + }, + "enableHealthCheck": false, + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS" + } + ], + "replicaCount": 1, + "excludeFromLatest": false, + "publishedDate": "2019-06-21T17:13:57.5972568+00:00", + "endOfLifeDate": "2019-07-01T07:00:00+00:00", + "storageAccountType": "Standard_LRS" + }, + "provisioningState": "Creating" + } + } + }, + "202": { + "body": { + "location": "West US", + "name": "1.0.0", + "type": "Microsoft.Compute/galleries/applications/versions", + "id": "/subscriptions/01523d7c-60da-455e-adef-521b547922c4/resourceGroups/galleryPsTestRg98/providers/Microsoft.Compute/galleries/galleryPsTestGallery6165/applications/galleryPsTestGalleryApplication7825/versions/1.0.0", + "properties": { + "publishingProfile": { + "source": { + "fileName": "package.zip", + "mediaLink": "https://mystorageaccount.blob.core.windows.net/mycontainer/package.zip?{sasKey}" + }, + "enableHealthCheck": false, + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS" + } + ], + "replicaCount": 1, + "excludeFromLatest": false, + "publishedDate": "2019-06-21T17:13:57.5972568+00:00", + "endOfLifeDate": "2019-07-01T07:00:00+00:00", + "storageAccountType": "Standard_LRS" + }, + "provisioningState": "Updating" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateASimpleGalleryImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateASimpleGalleryImage.json new file mode 100644 index 000000000000..367cbff579db --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateASimpleGalleryImage.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "galleryName": "myGalleryName", + "galleryImageName": "myGalleryImageName", + "galleryImage": { + "location": "West US", + "properties": { + "osType": "Windows", + "osState": "Generalized", + "hyperVGeneration": "V1", + "identifier": { + "publisher": "myPublisherName", + "offer": "myOfferName", + "sku": "mySkuName" + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "osType": "Windows", + "osState": "Generalized", + "hyperVGeneration": "V1", + "identifier": { + "publisher": "myPublisherName", + "offer": "myOfferName", + "sku": "mySkuName" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myGalleryImageName" + } + }, + "201": { + "body": { + "properties": { + "osType": "Windows", + "osState": "Generalized", + "hyperVGeneration": "V1", + "identifier": { + "publisher": "myPublisherName", + "offer": "myOfferName", + "sku": "mySkuName" + }, + "provisioningState": "Creating" + }, + "location": "West US", + "name": "myGalleryImageName" + } + }, + "202": { + "body": { + "properties": { + "osType": "Windows", + "osState": "Generalized", + "hyperVGeneration": "V1", + "identifier": { + "publisher": "myPublisherName", + "offer": "myOfferName", + "sku": "mySkuName" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myGalleryImageName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateASimpleGalleryImageVersion.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateASimpleGalleryImageVersion.json new file mode 100644 index 000000000000..e6607e9bbcab --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateASimpleGalleryImageVersion.json @@ -0,0 +1,221 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "galleryName": "myGalleryName", + "galleryImageName": "myGalleryImageName", + "galleryImageVersionName": "1.0.0", + "galleryImageVersion": { + "location": "West US", + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS" + } + ] + }, + "storageProfile": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/images/{imageName}" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS" + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/images/{imageName}" + }, + "osDiskImage": { + "sizeInGB": 10, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "lun": 1, + "sizeInGB": 10, + "hostCaching": "None" + } + ] + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "1.0.0" + } + }, + "201": { + "body": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS" + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/images/{imageName}" + }, + "osDiskImage": { + "sizeInGB": 10, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "lun": 1, + "sizeInGB": 10, + "hostCaching": "None" + } + ] + }, + "provisioningState": "Creating" + }, + "location": "West US", + "name": "1.0.0" + } + }, + "202": { + "body": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS" + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/images/{imageName}" + }, + "osDiskImage": { + "sizeInGB": 10, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "lun": 1, + "sizeInGB": 10, + "hostCaching": "None" + } + ] + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "1.0.0" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateASimpleGalleryImageVersionWithSnapshotsAsSource.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateASimpleGalleryImageVersionWithSnapshotsAsSource.json new file mode 100644 index 000000000000..cff6aa44899d --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateASimpleGalleryImageVersionWithSnapshotsAsSource.json @@ -0,0 +1,226 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "galleryName": "myGalleryName", + "galleryImageName": "myGalleryImageName", + "galleryImageVersionName": "1.0.0", + "galleryImageVersion": { + "location": "West US", + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherDiskEncryptionSet", + "lun": 1 + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS" + } + ] + }, + "storageProfile": { + "osDiskImage": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/snapshots/{snapshotName}" + }, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/snapshots/{diskSnapshotName}" + }, + "lun": 1, + "hostCaching": "None" + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS" + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "osDiskImage": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/snapshots/{osSnapshotName}" + }, + "sizeInGB": 10, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/snapshots/{diskSnapshotName}" + }, + "lun": 1, + "sizeInGB": 10, + "hostCaching": "None" + } + ] + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "1.0.0" + } + }, + "201": { + "body": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS" + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "osDiskImage": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/snapshots/{osSnapshotName}" + }, + "sizeInGB": 10, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/snapshots/{diskSnapshotName}" + }, + "lun": 1, + "sizeInGB": 10, + "hostCaching": "None" + } + ] + }, + "provisioningState": "Creating" + }, + "location": "West US", + "name": "1.0.0" + } + }, + "202": { + "body": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS" + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "osDiskImage": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/snapshots/{osSnapshotName}" + }, + "sizeInGB": 10, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/snapshots/{diskSnapshotName}" + }, + "lun": 1, + "sizeInGB": 10, + "hostCaching": "None" + } + ] + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "1.0.0" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateVirtualMachineScaleSetVMExtensions.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateVirtualMachineScaleSetVMExtensions.json new file mode 100644 index 000000000000..5d72d4832047 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/CreateOrUpdateVirtualMachineScaleSetVMExtensions.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "myvmScaleSet", + "instanceId": "0", + "vmExtensionName": "myVMExtension", + "api-version": "2019-12-01", + "extensionParameters": { + "location": "westus", + "properties": { + "autoUpgradeMinorVersion": true, + "publisher": "extPublisher", + "type": "extType", + "typeHandlerVersion": "1.2", + "settings": { + "UserName": "xyz@microsoft.com" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "myVMExtension", + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/extensions", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/extensions/myVMExtension", + "properties": { + "autoUpgradeMinorVersion": true, + "provisioningState": "Creating", + "publisher": "extPublisher", + "type": "extType", + "typeHandlerVersion": "1.2", + "settings": { + "UserName": "xyz@microsoft.com" + } + } + } + }, + "200": { + "body": { + "name": "myVMExtension", + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/extensions", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/extensions/myVMExtension", + "properties": { + "autoUpgradeMinorVersion": true, + "provisioningState": "Creating", + "publisher": "extPublisher", + "type": "extType", + "typeHandlerVersion": "1.2", + "settings": { + "UserName": "xyz@microsoft.com" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/DeleteAGallery.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/DeleteAGallery.json new file mode 100644 index 000000000000..a8fff6585abe --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/DeleteAGallery.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "galleryName": "myGalleryName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/DeleteAGalleryApplication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/DeleteAGalleryApplication.json new file mode 100644 index 000000000000..b6de700f84fe --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/DeleteAGalleryApplication.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "galleryName": "myGalleryName", + "galleryApplicationName": "myGalleryApplicationName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/DeleteAGalleryApplicationVersion.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/DeleteAGalleryApplicationVersion.json new file mode 100644 index 000000000000..9cd987c188bc --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/DeleteAGalleryApplicationVersion.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "galleryName": "myGalleryName", + "galleryApplicationName": "myGalleryApplicationName", + "galleryApplicationVersionName": "1.0.0" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/DeleteAGalleryImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/DeleteAGalleryImage.json new file mode 100644 index 000000000000..e79a5131e9bd --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/DeleteAGalleryImage.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "galleryName": "myGalleryName", + "galleryImageName": "myGalleryImageName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/DeleteAGalleryImageVersion.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/DeleteAGalleryImageVersion.json new file mode 100644 index 000000000000..e06069676a4a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/DeleteAGalleryImageVersion.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "galleryName": "myGalleryName", + "galleryImageName": "myGalleryImageName", + "galleryImageVersionName": "1.0.0" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/DeleteAProximityPlacementGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/DeleteAProximityPlacementGroup.json new file mode 100644 index 000000000000..1aff7f57f6b5 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/DeleteAProximityPlacementGroup.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "proximityPlacementGroupName": "myProximityPlacementGroup", + "parameters": {} + }, + "responses": { + "200": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/DeleteVirtualMachineScaleSetVMExtensions.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/DeleteVirtualMachineScaleSetVMExtensions.json new file mode 100644 index 000000000000..8a7ab4029176 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/DeleteVirtualMachineScaleSetVMExtensions.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "myvmScaleSet", + "instanceId": "0", + "vmExtensionName": "myVMExtension", + "api-version": "2019-12-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GeneralizeVirtualMachine.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GeneralizeVirtualMachine.json new file mode 100644 index 000000000000..9f9a80ff2f30 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GeneralizeVirtualMachine.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "vmName": "myVMName" + }, + "responses": { + "200": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GenerateSshKeyPair.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GenerateSshKeyPair.json new file mode 100644 index 000000000000..72080e04acea --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GenerateSshKeyPair.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "sshPublicKeyName": "mySshPublicKeyName" + }, + "responses": { + "200": { + "body": { + "privateKey": "{ssh private key}", + "publicKey": "{ssh-rsa public key}", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/SshPublicKeys/mySshPublicKeyName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetADedicatedHost.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetADedicatedHost.json new file mode 100644 index 000000000000..0da47da294d4 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetADedicatedHost.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-10-01", + "hostGroupName": "myDedicatedHostGroup", + "hostName": "myHost" + }, + "responses": { + "200": { + "body": { + "properties": { + "platformFaultDomain": 1, + "autoReplaceOnFailure": true, + "hostId": "{GUID}", + "provisioningTime": "2019-06-27T01:02:38.3138469+00:00", + "virtualMachines": [ + { + "id": "/subscriptions/subId/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/vm1" + } + ], + "provisioningState": "Succeeded", + "instanceView": { + "assetId": "eb3f58b8-b4e8-4882-b69f-301a01812407", + "availableCapacity": { + "allocatableVMs": [ + { + "vmSize": "Standard_A1", + "count": 10 + } + ] + }, + "statuses": [ + { + "code": "ProvisioningState/succeeded", + "level": "Info", + "displayStatus": "Provisioning succeeded" + }, + { + "code": "HealthState/available", + "level": "Info", + "displayStatus": "Host available" + } + ] + } + }, + "location": "westus", + "tags": { + "department": "HR" + }, + "sku": { + "name": "DSv3-Type1" + }, + "name": "myHost" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetADedicatedHostGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetADedicatedHostGroup.json new file mode 100644 index 000000000000..f383d65e8771 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetADedicatedHostGroup.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-10-01", + "hostGroupName": "myDedicatedHostGroup" + }, + "responses": { + "200": { + "body": { + "properties": { + "platformFaultDomainCount": 3, + "hosts": [ + { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/myDedicatedHostGroup/myHostGroup/Hosts/myHost1" + }, + { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/myDedicatedHostGroup/myHostGroup/Hosts/myHost2" + } + ] + }, + "location": "westus", + "tags": { + "{tagName}": "{tagValue}" + }, + "name": "myDedicatedHostGroup", + "zones": [ + "3" + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAGallery.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAGallery.json new file mode 100644 index 000000000000..ea90a2062fc0 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAGallery.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "galleryName": "myGalleryName" + }, + "responses": { + "200": { + "body": { + "properties": { + "description": "This is the gallery description.", + "identifier": { + "uniqueName": "{subscription-id}-MYGALLERYNAME" + }, + "provisioningState": "Succeeded" + }, + "location": "West US", + "name": "myGalleryName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAGalleryApplication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAGalleryApplication.json new file mode 100644 index 000000000000..443197878215 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAGalleryApplication.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "galleryName": "myGalleryName", + "galleryApplicationName": "myGalleryApplicationName" + }, + "responses": { + "200": { + "body": { + "properties": { + "description": "This is the gallery application description.", + "eula": "This is the gallery application EULA.", + "privacyStatementUri": "myPrivacyStatementUri}", + "releaseNoteUri": "myReleaseNoteUri", + "supportedOSType": "Windows" + }, + "location": "West US", + "name": "myGalleryApplicationName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAGalleryApplicationVersion.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAGalleryApplicationVersion.json new file mode 100644 index 000000000000..e67c354802c8 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAGalleryApplicationVersion.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "galleryName": "myGalleryName", + "galleryApplicationName": "myGalleryApplicationName", + "galleryApplicationVersionName": "1.0.0" + }, + "responses": { + "200": { + "body": { + "location": "West US", + "name": "1.0.0", + "type": "Microsoft.Compute/galleries/applications/versions", + "id": "/subscriptions/01523d7c-60da-455e-adef-521b547922c4/resourceGroups/galleryPsTestRg98/providers/Microsoft.Compute/galleries/galleryPsTestGallery6165/applications/galleryPsTestGalleryApplication7825/versions/1.0.0", + "properties": { + "publishingProfile": { + "source": { + "fileName": "package.zip", + "mediaLink": "https://mystorageaccount.blob.core.windows.net/mycontainer/package.zip?{sasKey}" + }, + "enableHealthCheck": false, + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS" + } + ], + "replicaCount": 1, + "excludeFromLatest": false, + "publishedDate": "2019-06-21T17:13:57.5972568+00:00", + "endOfLifeDate": "2019-07-01T07:00:00+00:00", + "storageAccountType": "Standard_LRS" + }, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAGalleryApplicationVersionWithReplicationStatus.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAGalleryApplicationVersionWithReplicationStatus.json new file mode 100644 index 000000000000..0d4fedb679f3 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAGalleryApplicationVersionWithReplicationStatus.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "galleryName": "myGalleryName", + "galleryApplicationName": "myGalleryApplicationName", + "galleryApplicationVersionName": "1.0.0", + "$expand": "ReplicationStatus" + }, + "responses": { + "200": { + "body": { + "properties": { + "publishingProfile": { + "source": { + "fileName": "package.zip", + "mediaLink": "https://mystorageaccount.blob.core.windows.net/mycontainer/package.zip?{sasKey}" + }, + "enableHealthCheck": false, + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS" + } + ], + "replicaCount": 1, + "excludeFromLatest": false, + "publishedDate": "2019-06-21T17:13:57.5972568+00:00", + "endOfLifeDate": "2019-07-01T07:00:00+00:00", + "storageAccountType": "Standard_LRS" + }, + "replicationStatus": { + "aggregatedState": "Completed", + "summary": [ + { + "region": "West US", + "state": "Completed", + "details": "", + "progress": 100 + } + ] + }, + "provisioningState": "Succeeded" + }, + "location": "West US", + "name": "1.0.0" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAGalleryImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAGalleryImage.json new file mode 100644 index 000000000000..34ef297d14b5 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAGalleryImage.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "galleryName": "myGalleryName", + "galleryImageName": "myGalleryImageName" + }, + "responses": { + "200": { + "body": { + "properties": { + "osType": "Windows", + "osState": "Generalized", + "hyperVGeneration": "V1", + "identifier": { + "publisher": "myPublisherName", + "offer": "myOfferName", + "sku": "mySkuName" + }, + "provisioningState": "Succeeded" + }, + "location": "West US", + "name": "myGalleryImageName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAGalleryImageVersion.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAGalleryImageVersion.json new file mode 100644 index 000000000000..cb8f4781774a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAGalleryImageVersion.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "galleryName": "myGalleryName", + "galleryImageName": "myGalleryImageName", + "galleryImageVersionName": "1.0.0" + }, + "responses": { + "200": { + "body": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_LRS" + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/images/{imageName}" + }, + "osDiskImage": { + "sizeInGB": 10, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "lun": 1, + "sizeInGB": 10, + "hostCaching": "None" + } + ] + }, + "provisioningState": "Succeeded" + }, + "location": "West US", + "name": "1.0.0" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAGalleryImageVersionWithReplicationStatus.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAGalleryImageVersionWithReplicationStatus.json new file mode 100644 index 000000000000..867930b33225 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAGalleryImageVersionWithReplicationStatus.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "galleryName": "myGalleryName", + "galleryImageName": "myGalleryImageName", + "galleryImageVersionName": "1.0.0", + "$expand": "ReplicationStatus" + }, + "responses": { + "200": { + "body": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_LRS" + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/images/{imageName}" + }, + "osDiskImage": { + "sizeInGB": 10, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "lun": 1, + "sizeInGB": 10, + "hostCaching": "None" + } + ] + }, + "replicationStatus": { + "aggregatedState": "Completed", + "summary": [ + { + "region": "West US", + "state": "Completed", + "details": "", + "progress": 100 + }, + { + "region": "East US", + "state": "Completed", + "details": "", + "progress": 100 + } + ] + }, + "provisioningState": "Succeeded" + }, + "location": "West US", + "name": "1.0.0" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAGalleryImageVersionWithSnapshotsAsSource.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAGalleryImageVersionWithSnapshotsAsSource.json new file mode 100644 index 000000000000..34dd25885261 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAGalleryImageVersionWithSnapshotsAsSource.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "galleryName": "myGalleryName", + "galleryImageName": "myGalleryImageName", + "galleryImageVersionName": "1.0.0" + }, + "responses": { + "200": { + "body": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_LRS" + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "osDiskImage": { + "source": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/snapshots/{snapshotName}", + "sizeInGB": 10, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "source": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/snapshots/{diskSnapshotName}", + "lun": 1, + "sizeInGB": 10, + "hostCaching": "None" + } + ] + }, + "provisioningState": "Succeeded" + }, + "location": "West US", + "name": "1.0.0" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAProximityPlacementGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAProximityPlacementGroup.json new file mode 100644 index 000000000000..c9c7a8744348 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAProximityPlacementGroup.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "proximityPlacementGroupName": "myProximityPlacementGroup", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "name": "myProximityPlacementGroup", + "properties": { + "proximityPlacementGroupType": "Standard", + "virtualMachines": [ + { + "id": "string" + } + ], + "virtualMachineScaleSets": [ + { + "id": "string" + } + ], + "availabilitySets": [ + { + "id": "string" + } + ] + }, + "location": "westus", + "type": "Microsoft.Compute/proximityPlacementGroups", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myProximityPlacementGroup" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAnSshPublicKey.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAnSshPublicKey.json new file mode 100644 index 000000000000..f79ee1d48ec0 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetAnSshPublicKey.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "sshPublicKeyName": "mySshPublicKeyName" + }, + "responses": { + "200": { + "body": { + "name": "mySshPublicKeyName", + "location": "westus", + "tags": { + "{tagName}": "{tagValue}" + }, + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/SshPublicKeys/mySshPublicKeyName", + "properties": { + "publicKey": "{ssh-rsa public key}" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetInformationAboutAnImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetInformationAboutAnImage.json new file mode 100644 index 000000000000..e744e3f8b37f --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetInformationAboutAnImage.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "imageName": "myImage" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/myImage", + "name": "myImage", + "type": "Microsoft.Compute/images", + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Windows", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1" + }, + "osState": "Generalized", + "storageAccountType": "Standard_LRS", + "diskSizeGB": 20 + }, + "dataDisks": [ + { + "lun": 1, + "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2" + }, + "storageAccountType": "Standard_LRS" + } + ], + "zoneResilient": true + }, + "provisioningState": "created" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetVirtualMachine.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetVirtualMachine.json new file mode 100644 index 000000000000..eba3aa88f087 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetVirtualMachine.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "name": "myVM", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "location": "West US", + "tags": { + "myTag1": "tagValue1" + }, + "properties": { + "vmId": "0f47b100-583c-48e3-a4c0-aefc2c9bbcc1", + "availabilitySet": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/my-AvailabilitySet" + }, + "proximityPlacementGroup": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/my-ppg01" + }, + "hardwareProfile": { + "vmSize": "Standard_DS3_v2" + }, + "storageProfile": { + "imageReference": { + "publisher": "MicrosoftWindowsServer", + "offer": "WindowsServer", + "sku": "2016-Datacenter", + "version": "latest" + }, + "osDisk": { + "osType": "Windows", + "name": "myOsDisk", + "createOption": "FromImage", + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myOsDisk" + }, + "diskSizeGB": 30 + }, + "dataDisks": [ + { + "lun": 0, + "name": "myDataDisk0", + "createOption": "Empty", + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDataDisk0" + }, + "diskSizeGB": 30 + }, + { + "lun": 1, + "name": "myDataDisk1", + "createOption": "Attach", + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Premium_LRS", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myDataDisk1" + }, + "diskSizeGB": 100 + } + ] + }, + "osProfile": { + "computerName": "myVM", + "adminUsername": "admin", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": false + }, + "secrets": [] + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{myNIC}" + } + ] + }, + "diagnosticsProfile": { + "bootDiagnostics": { + "enabled": true, + "storageUri": "http://{myStorageAccount}.blob.core.windows.net" + } + }, + "provisioningState": "Succeeded" + }, + "resources": [ + { + "name": "CustomScriptExtension-DSC", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM/extensions/CustomScriptExtension-DSC", + "type": "Microsoft.Compute/virtualMachines/extensions", + "location": "west us", + "tags": { + "displayName": "CustomScriptExtension-DSC" + }, + "properties": { + "autoUpgradeMinorVersion": true, + "provisioningState": "Succeeded", + "publisher": "Microsoft.Compute", + "type": "CustomScriptExtension", + "typeHandlerVersion": "1.9", + "settings": {} + } + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetVirtualMachineInstanceView.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetVirtualMachineInstanceView.json new file mode 100644 index 000000000000..e031396756ad --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetVirtualMachineInstanceView.json @@ -0,0 +1,99 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "vmName": "myVM" + }, + "responses": { + "200": { + "body": { + "platformUpdateDomain": 1, + "platformFaultDomain": 1, + "computerName": "myVM", + "osName": "Windows Server 2016 Datacenter", + "osVersion": "Microsoft Windows NT 10.0.14393.0", + "vmAgent": { + "vmAgentVersion": "2.7.41491.949", + "statuses": [ + { + "code": "ProvisioningState/succeeded", + "level": "Info", + "displayStatus": "Ready", + "message": "GuestAgent is running and accepting new configurations.", + "time": "2019-10-14T23:11:22+00:00" + } + ], + "extensionHandlers": [ + { + "type": "Microsoft.Azure.Security.IaaSAntimalware", + "typeHandlerVersion": "1.5.5.9", + "status": { + "code": "ProvisioningState/succeeded", + "level": "Info", + "displayStatus": "Ready" + } + } + ] + }, + "disks": [ + { + "name": "myOsDisk", + "statuses": [ + { + "code": "ProvisioningState/succeeded", + "level": "Info", + "displayStatus": "Provisioning succeeded", + "time": "2019-10-14T21:29:47.477089+00:00" + } + ] + }, + { + "name": "myDataDisk0", + "statuses": [ + { + "code": "ProvisioningState/succeeded", + "level": "Info", + "displayStatus": "Provisioning succeeded", + "time": "2019-10-14T21:29:47.461517+00:00" + } + ] + } + ], + "bootDiagnostics": { + "consoleScreenshotBlobUri": "https://{myStorageAccount}.blob.core.windows.net/bootdiagnostics-myOsDisk/myOsDisk.screenshot.bmp", + "serialConsoleLogBlobUri": "https://{myStorageAccount}.blob.core.windows.net/bootdiagnostics-myOsDisk/myOsDisk.serialconsole.log" + }, + "extensions": [ + { + "name": "IaaSAntiMalware-ext0", + "type": "Microsoft.Azure.Security.IaaSAntimalware", + "typeHandlerVersion": "1.5.5.9", + "statuses": [ + { + "code": "ProvisioningState/succeeded", + "level": "Info", + "displayStatus": "Provisioning succeeded", + "message": "Microsoft Antimalware enabled" + } + ] + } + ], + "hyperVGeneration": "V1", + "statuses": [ + { + "code": "ProvisioningState/succeeded", + "level": "Info", + "displayStatus": "Provisioning succeeded", + "time": "2019-10-14T21:30:12.8051917+00:00" + }, + { + "code": "PowerState/running", + "level": "Info", + "displayStatus": "VM running" + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetVirtualMachineScaleSetVMExtensions.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetVirtualMachineScaleSetVMExtensions.json new file mode 100644 index 000000000000..1a8db6ef8795 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/GetVirtualMachineScaleSetVMExtensions.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "myvmScaleSet", + "instanceId": "0", + "vmExtensionName": "myVMExtension", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "properties": { + "autoUpgradeMinorVersion": true, + "provisioningState": "Creating", + "publisher": "extPublisher", + "type": "extType", + "typeHandlerVersion": "1.2", + "settings": { + "UserName": "xyz@microsoft.com" + } + }, + "name": "myVMExtension", + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/extensions", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/extensions/myVMExtension" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListAvailabilitySetsInASubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListAvailabilitySetsInASubscription.json new file mode 100644 index 000000000000..8a8af8f9e5d2 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListAvailabilitySetsInASubscription.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "api-version": "2019-12-01", + "$expand": "virtualMachines\\$ref" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", + "type": "Microsoft.Compute/availabilitySets", + "location": "australiasoutheast", + "properties": { + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}" + } + ] + }, + "sku": { + "name": "Classic" + } + }, + { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", + "type": "Microsoft.Compute/availabilitySets", + "location": "australiasoutheast", + "properties": { + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}" + } + ] + }, + "sku": { + "name": "Classic" + } + }, + { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", + "type": "Microsoft.Compute/availabilitySets", + "location": "westcentralus", + "tags": { + "{tagName}": "{tagValue}" + }, + "properties": { + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [] + }, + "sku": { + "name": "Classic" + } + }, + { + "name": "{availabilitySetName}", + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}", + "type": "Microsoft.Compute/availabilitySets", + "location": "westcentralus", + "tags": { + "{tagName}": "{tagValue}" + }, + "properties": { + "platformUpdateDomainCount": 5, + "platformFaultDomainCount": 3, + "virtualMachines": [] + }, + "sku": { + "name": "Classic" + } + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListAvailableVmSizes_VirtualMachines.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListAvailableVmSizes_VirtualMachines.json new file mode 100644 index 000000000000..85218ebb5a6d --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListAvailableVmSizes_VirtualMachines.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVmName", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Standard_A1_V2", + "numberOfCores": 1, + "osDiskSizeInMB": 1047552, + "resourceDiskSizeInMB": 10240, + "memoryInMB": 2048, + "maxDataDiskCount": 2 + }, + { + "name": "Standard_A2_V2", + "numberOfCores": 2, + "osDiskSizeInMB": 1047552, + "resourceDiskSizeInMB": 20480, + "memoryInMB": 4096, + "maxDataDiskCount": 4 + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListGalleriesInAResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListGalleriesInAResourceGroup.json new file mode 100644 index 000000000000..45053dca9f63 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListGalleriesInAResourceGroup.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "description": "This is the gallery description.", + "identifier": { + "uniqueName": "{subscription-id}-MYGALLERYNAME" + }, + "provisioningState": "Succeeded" + }, + "location": "West US", + "name": "myGalleryName", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myGalleryName" + } + ], + "nextLink": "http://svchost:99/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries?$skiptoken={token}/Subscriptions/{subscriptionId}/ResourceGroups/myResourceGroup/galleries/myGalleryName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListGalleriesInASubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListGalleriesInASubscription.json new file mode 100644 index 000000000000..ae4701072e57 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListGalleriesInASubscription.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "description": "This is the gallery description.", + "identifier": { + "uniqueName": "{subscription-id}-MYGALLERYNAME" + }, + "provisioningState": "Succeeded" + }, + "location": "West US", + "name": "myGalleryName", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myGalleryName" + } + ], + "nextLink": "http://svchost:99/subscriptions/{subscriptionId}/providers/Microsoft.Compute/galleries?$skiptoken={token}/Subscriptions/{subscriptionId}/ResourceGroups/myResourceGroup/galleries/myGalleryName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListGalleryApplicationVersionsInAGalleryApplication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListGalleryApplicationVersionsInAGalleryApplication.json new file mode 100644 index 000000000000..12684f333fcc --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListGalleryApplicationVersionsInAGalleryApplication.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "galleryName": "myGalleryName", + "galleryApplicationName": "myGalleryApplicationName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "location": "West US", + "name": "1.0.0", + "type": "Microsoft.Compute/galleries/applications/versions", + "id": "/subscriptions/01523d7c-60da-455e-adef-521b547922c4/resourceGroups/galleryPsTestRg98/providers/Microsoft.Compute/galleries/galleryPsTestGallery6165/applications/galleryPsTestGalleryApplication7825/versions/1.0.0", + "properties": { + "publishingProfile": { + "source": { + "fileName": "package.zip", + "mediaLink": "https://mystorageaccount.blob.core.windows.net/mycontainer/package.zip?{sasKey}" + }, + "enableHealthCheck": false, + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS" + } + ], + "replicaCount": 1, + "excludeFromLatest": false, + "publishedDate": "2019-06-21T17:13:57.5972568+00:00", + "endOfLifeDate": "2019-07-01T07:00:00+00:00", + "storageAccountType": "Standard_LRS" + }, + "provisioningState": "Succeeded" + } + } + ], + "nextLink": "http://svchost:99/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myGalleryName/applications/myGalleryApplicationName/versions?$skiptoken={token}/Subscriptions/{subscriptionId}/ResourceGroups/myResourceGroup/galleries/myGalleryName/applications/myGalleryApplicationName/versions/myGalleryApplicationVersionName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListGalleryApplicationsInAGallery.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListGalleryApplicationsInAGallery.json new file mode 100644 index 000000000000..dd7120df5a7b --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListGalleryApplicationsInAGallery.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "galleryName": "myGalleryName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "description": "This is the gallery application description.", + "eula": "This is the gallery application EULA.", + "privacyStatementUri": "myPrivacyStatementUri}", + "releaseNoteUri": "myReleaseNoteUri", + "supportedOSType": "Windows" + }, + "location": "West US", + "name": "myGalleryApplicationName" + } + ], + "nextLink": "http://svchost:99/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myGalleryName/applications?$skiptoken={token}/Subscriptions/{subscriptionId}/ResourceGroups/myResourceGroup/galleries/myGalleryName/applications/myGalleryApplicationName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListGalleryImageVersionsInAGalleryImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListGalleryImageVersionsInAGalleryImage.json new file mode 100644 index 000000000000..4962d95e27e7 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListGalleryImageVersionsInAGalleryImage.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "galleryName": "myGalleryName", + "galleryImageName": "myGalleryImageName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 0, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myOtherDiskEncryptionSet" + }, + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_LRS" + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/images/{imageName}" + }, + "osDiskImage": { + "sizeInGB": 10, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "lun": 1, + "sizeInGB": 10, + "hostCaching": "None" + } + ] + }, + "provisioningState": "Succeeded" + }, + "location": "West US", + "name": "1.0.0" + } + ], + "nextLink": "http://svchost:99/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myGalleryName/images/myGalleryImageName/versions?$skiptoken={token}/Subscriptions/{subscriptionId}/ResourceGroups/myResourceGroup/galleries/myGalleryName/images/myGalleryImageName/versions/myGalleryImageVersionName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListGalleryImagesInAGallery.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListGalleryImagesInAGallery.json new file mode 100644 index 000000000000..2e8b08fd9c05 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListGalleryImagesInAGallery.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "galleryName": "myGalleryName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "osType": "Windows", + "osState": "Generalized", + "hyperVGeneration": "V1", + "identifier": { + "publisher": "myPublisherName", + "offer": "myOfferName", + "sku": "mySkuName" + }, + "provisioningState": "Succeeded" + }, + "location": "West US", + "name": "myGalleryImageName" + } + ], + "nextLink": "http://svchost:99/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myGalleryName/images?$skiptoken={token}/Subscriptions/{subscriptionId}/ResourceGroups/myResourceGroup/galleries/myGalleryName/images/myGalleryImageName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListImagesInAResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListImagesInAResourceGroup.json new file mode 100644 index 000000000000..04d2985e0888 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListImagesInAResourceGroup.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/myImage", + "name": "myImage", + "type": "Microsoft.Compute/images", + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Windows", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1" + }, + "osState": "Generalized", + "storageAccountType": "Standard_LRS" + }, + "dataDisks": [ + { + "lun": 1, + "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2" + }, + "storageAccountType": "Standard_LRS" + } + ] + }, + "provisioningState": "created" + } + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListImagesInASubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListImagesInASubscription.json new file mode 100644 index 000000000000..95e52d35b0f9 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListImagesInASubscription.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/myImage", + "name": "myImage", + "type": "Microsoft.Compute/images", + "location": "West US", + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Windows", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1" + }, + "osState": "Generalized", + "storageAccountType": "Standard_LRS" + }, + "dataDisks": [ + { + "lun": 1, + "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2" + }, + "storageAccountType": "Standard_LRS" + } + ] + }, + "provisioningState": "created" + } + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListProximityPlacementGroupsInAResourceGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListProximityPlacementGroupsInAResourceGroup.json new file mode 100644 index 000000000000..51299006df07 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListProximityPlacementGroupsInAResourceGroup.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "myProximityPlacementGroup", + "properties": { + "proximityPlacementGroupType": "Standard", + "virtualMachines": [ + { + "id": "string" + } + ], + "virtualMachineScaleSets": [ + { + "id": "string" + } + ], + "availabilitySets": [ + { + "id": "string" + } + ] + }, + "location": "westus", + "type": "Microsoft.Compute/proximityPlacementGroups", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myProximityPlacementGroup" + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListProximityPlacementGroupsInASubscription.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListProximityPlacementGroupsInASubscription.json new file mode 100644 index 000000000000..802e82ccc1e2 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListProximityPlacementGroupsInASubscription.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2019-12-01", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "myProximityPlacementGroup", + "properties": { + "proximityPlacementGroupType": "Standard", + "virtualMachines": [ + { + "id": "string" + } + ], + "virtualMachineScaleSets": [ + { + "id": "string" + } + ], + "availabilitySets": [ + { + "id": "string" + } + ] + }, + "location": "westus", + "type": "Microsoft.Compute/proximityPlacementGroups", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myProximityPlacementGroup" + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListVirtualMachineScaleSetVMExtensions.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListVirtualMachineScaleSetVMExtensions.json new file mode 100644 index 000000000000..73f0a48b5d02 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListVirtualMachineScaleSetVMExtensions.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "myvmScaleSet", + "instanceId": "0", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "autoUpgradeMinorVersion": true, + "provisioningState": "Succeeded", + "publisher": "extPublisher", + "type": "extType", + "typeHandlerVersion": "1.2", + "settings": { + "UserName": "xyz@microsoft.com" + } + }, + "name": "myVMExtension", + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/extensions", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/extensions/myVMExtension" + }, + { + "properties": { + "autoUpgradeMinorVersion": true, + "provisioningState": "Succeeded", + "publisher": "extPublisher1", + "type": "extType1", + "typeHandlerVersion": "1.0", + "settings": { + "UserName": "xyz@microsoft.com" + } + }, + "name": "myVMExtension1", + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/extensions", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/extensions/myVMExtension1" + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListVirtualMachinesInASubscriptionByLocation.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListVirtualMachinesInASubscriptionByLocation.json new file mode 100644 index 000000000000..b5db6a799e5e --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ListVirtualMachinesInASubscriptionByLocation.json @@ -0,0 +1,127 @@ +{ + "parameters": { + "subscriptionId": "{subscriptionId}", + "location": "eastus", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "vmId": "{vmId}", + "availabilitySet": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}" + }, + "hardwareProfile": { + "vmSize": "Standard_A0" + }, + "storageProfile": { + "imageReference": { + "publisher": "MicrosoftWindowsServer", + "offer": "WindowsServer", + "sku": "2012-R2-Datacenter", + "version": "4.127.20170406" + }, + "osDisk": { + "osType": "Windows", + "name": "test", + "createOption": "FromImage", + "vhd": { + "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd" + }, + "caching": "None", + "diskSizeGB": 127 + }, + "dataDisks": [] + }, + "osProfile": { + "computerName": "Test", + "adminUsername": "Foo12", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + }, + "secrets": [], + "allowExtensionOperations": true + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}" + } + ] + }, + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/virtualMachines", + "location": "eastus", + "tags": { + "RG": "rg", + "testTag": "1" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{virtualMachineName}", + "name": "{virtualMachineName}" + }, + { + "properties": { + "vmId": "{vmId}", + "availabilitySet": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}" + }, + "hardwareProfile": { + "vmSize": "Standard_A0" + }, + "storageProfile": { + "imageReference": { + "publisher": "MicrosoftWindowsServer", + "offer": "WindowsServer", + "sku": "2012-R2-Datacenter", + "version": "4.127.20170406" + }, + "osDisk": { + "osType": "Windows", + "name": "test", + "createOption": "FromImage", + "vhd": { + "uri": "https://{storageAccountName}.blob.core.windows.net/{containerName}/{vhdName}.vhd" + }, + "caching": "None", + "diskSizeGB": 127 + }, + "dataDisks": [] + }, + "osProfile": { + "computerName": "Test", + "adminUsername": "Foo12", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + }, + "secrets": [], + "allowExtensionOperations": true + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}" + } + ] + }, + "provisioningState": "Succeeded" + }, + "type": "Microsoft.Compute/virtualMachines", + "location": "eastus", + "tags": { + "RG": "rg", + "testTag": "1" + }, + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{virtualMachineName}", + "name": "{virtualMachineName}" + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/LogAnalyticsRequestRateByInterval.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/LogAnalyticsRequestRateByInterval.json new file mode 100644 index 000000000000..9bd505f5e469 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/LogAnalyticsRequestRateByInterval.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "location": "westus", + "api-version": "2019-12-01", + "parameters": { + "intervalLength": "FiveMins", + "blobContainerSasUri": "https://somesasuri", + "fromTime": "2018-01-21T01:54:06.862601Z", + "toTime": "2018-01-23T01:54:06.862601Z", + "groupByResourceName": true + } + }, + "responses": { + "200": { + "body": { + "properties": { + "output": "https://crptestar4227.blob.core.windows.net:443/sascontainer/RequestRateByInterval_20180121-0154_20180123-0154.csv" + } + } + }, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/LogAnalyticsThrottledRequests.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/LogAnalyticsThrottledRequests.json new file mode 100644 index 000000000000..7276ee97118b --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/LogAnalyticsThrottledRequests.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "location": "westus", + "api-version": "2019-12-01", + "parameters": { + "blobContainerSasUri": "https://somesasuri", + "fromTime": "2018-01-21T01:54:06.862601Z", + "toTime": "2018-01-23T01:54:06.862601Z", + "groupByOperationName": true, + "groupByResourceName": false + } + }, + "responses": { + "200": { + "body": { + "properties": { + "output": "https://crptestar4227.blob.core.windows.net:443/sascontainer/ThrottledRequests_20180121-0154_20180123-0154.csv" + } + } + }, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/PatchAProximityPlacementGroup.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/PatchAProximityPlacementGroup.json new file mode 100644 index 000000000000..4176ba9f9d05 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/PatchAProximityPlacementGroup.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "proximityPlacementGroupName": "myProximityPlacementGroup", + "parameters": { + "tags": { + "additionalProp1": "string" + } + } + }, + "responses": { + "200": { + "body": { + "name": "myProximityPlacementGroup", + "properties": { + "proximityPlacementGroupType": "Standard" + }, + "location": "westus", + "type": "Microsoft.Compute/proximityPlacementGroups", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myProximityPlacementGroup" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ReapplyVirtualMachine.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ReapplyVirtualMachine.json new file mode 100644 index 000000000000..4a7dd834b855 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ReapplyVirtualMachine.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "ResourceGroup", + "api-version": "2019-12-01", + "vmName": "VMName" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ReimageVirtualMachine.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ReimageVirtualMachine.json new file mode 100644 index 000000000000..5b6ea8415e22 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/ReimageVirtualMachine.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "vmName": "myVMName", + "parameters": { + "tempDisk": true + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/SimulateEvictionOfVM.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/SimulateEvictionOfVM.json new file mode 100644 index 000000000000..78bc4b284a44 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/SimulateEvictionOfVM.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "ResourceGroup", + "api-version": "2019-12-01", + "vmName": "VMName" + }, + "responses": { + "204": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateASimpleGallery.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateASimpleGallery.json new file mode 100644 index 000000000000..79341fe8e3f6 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateASimpleGallery.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "galleryName": "myGalleryName", + "gallery": { + "properties": { + "description": "This is the gallery description." + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "description": "This is the gallery description.", + "identifier": { + "uniqueName": "{subscription-id}-MYGALLERYNAME" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myGalleryName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateASimpleGalleryApplication.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateASimpleGalleryApplication.json new file mode 100644 index 000000000000..d94449fb7e80 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateASimpleGalleryApplication.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "galleryName": "myGalleryName", + "galleryApplicationName": "myGalleryApplicationName", + "galleryApplication": { + "properties": { + "description": "This is the gallery application description.", + "eula": "This is the gallery application EULA.", + "privacyStatementUri": "myPrivacyStatementUri}", + "releaseNoteUri": "myReleaseNoteUri", + "supportedOSType": "Windows" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "description": "This is the gallery application description.", + "eula": "This is the gallery application EULA.", + "privacyStatementUri": "myPrivacyStatementUri}", + "releaseNoteUri": "myReleaseNoteUri", + "supportedOSType": "Windows" + }, + "location": "West US", + "name": "myGalleryApplicationName", + "type": "Microsoft.Compute/galleries", + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myGalleryName/applications/myGalleryApplicationName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateASimpleGalleryApplicationVersion.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateASimpleGalleryApplicationVersion.json new file mode 100644 index 000000000000..ddcdf19710ec --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateASimpleGalleryApplicationVersion.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "galleryName": "myGalleryName", + "galleryApplicationName": "myGalleryApplicationName", + "galleryApplicationVersionName": "1.0.0", + "galleryApplicationVersion": { + "properties": { + "publishingProfile": { + "source": { + "fileName": "package.zip", + "mediaLink": "https://mystorageaccount.blob.core.windows.net/mycontainer/package.zip?{sasKey}" + }, + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS" + } + ], + "replicaCount": 1, + "endOfLifeDate": "2019-07-01T07:00:00Z", + "storageAccountType": "Standard_LRS" + } + } + } + }, + "responses": { + "200": { + "body": { + "location": "West US", + "name": "1.0.0", + "type": "Microsoft.Compute/galleries/applications/versions", + "id": "/subscriptions/01523d7c-60da-455e-adef-521b547922c4/resourceGroups/galleryPsTestRg98/providers/Microsoft.Compute/galleries/galleryPsTestGallery6165/applications/galleryPsTestGalleryApplication7825/versions/1.0.0", + "properties": { + "publishingProfile": { + "source": { + "fileName": "package.zip", + "mediaLink": "https://mystorageaccount.blob.core.windows.net/mycontainer/package.zip?{sasKey}" + }, + "enableHealthCheck": false, + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS" + } + ], + "replicaCount": 1, + "excludeFromLatest": false, + "publishedDate": "2019-06-21T17:13:57.5972568+00:00", + "endOfLifeDate": "2019-07-01T07:00:00+00:00", + "storageAccountType": "Standard_LRS" + }, + "provisioningState": "Updating" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateASimpleGalleryImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateASimpleGalleryImage.json new file mode 100644 index 000000000000..9df9cc02deeb --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateASimpleGalleryImage.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "galleryName": "myGalleryName", + "galleryImageName": "myGalleryImageName", + "galleryImage": { + "properties": { + "osType": "Windows", + "osState": "Generalized", + "hyperVGeneration": "V1", + "identifier": { + "publisher": "myPublisherName", + "offer": "myOfferName", + "sku": "mySkuName" + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "osType": "Windows", + "osState": "Generalized", + "hyperVGeneration": "V1", + "identifier": { + "publisher": "myPublisherName", + "offer": "myOfferName", + "sku": "mySkuName" + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "myGalleryImageName" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateASimpleGalleryImageVersion.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateASimpleGalleryImageVersion.json new file mode 100644 index 000000000000..e29d3f63255a --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateASimpleGalleryImageVersion.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "galleryName": "myGalleryName", + "galleryImageName": "myGalleryImageName", + "galleryImageVersionName": "1.0.0", + "galleryImageVersion": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1 + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS" + } + ] + }, + "storageProfile": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/images/{imageName}" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "publishingProfile": { + "targetRegions": [ + { + "name": "West US", + "regionalReplicaCount": 1, + "storageAccountType": "Standard_LRS", + "encryption": { + "osDiskImage": { + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + }, + "dataDiskImages": [ + { + "lun": 1, + "diskEncryptionSetId": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/diskEncryptionSet/myDiskEncryptionSet" + } + ] + } + }, + { + "name": "East US", + "regionalReplicaCount": 2, + "storageAccountType": "Standard_ZRS" + } + ], + "replicaCount": 1, + "publishedDate": "2018-01-01T00:00:00Z", + "storageAccountType": "Standard_LRS" + }, + "storageProfile": { + "source": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/images/{imageName}" + }, + "osDiskImage": { + "sizeInGB": 10, + "hostCaching": "ReadOnly" + }, + "dataDiskImages": [ + { + "lun": 1, + "sizeInGB": 10, + "hostCaching": "None" + } + ] + }, + "provisioningState": "Updating" + }, + "location": "West US", + "name": "1.0.0" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateImage.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateImage.json new file mode 100644 index 000000000000..ac22e73558ed --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateImage.json @@ -0,0 +1,107 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "imageName": "myImage", + "parameters": { + "properties": { + "sourceVirtualMachine": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM" + }, + "hyperVGeneration": "V1" + }, + "tags": { + "department": "HR" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/myImage", + "name": "myImage", + "type": "Microsoft.Compute/images", + "location": "West US", + "tags": { + "department": "HR" + }, + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Windows", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1" + }, + "osState": "Generalized", + "storageAccountType": "Standard_LRS", + "diskSizeGB": 20 + }, + "dataDisks": [ + { + "lun": 1, + "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2" + }, + "storageAccountType": "Standard_LRS" + } + ], + "zoneResilient": true + }, + "provisioningState": "created" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/myImage", + "name": "myImage", + "type": "Microsoft.Compute/images", + "location": "West US", + "tags": { + "department": "HR" + }, + "properties": { + "storageProfile": { + "osDisk": { + "osType": "Windows", + "blobUri": "https://mystorageaccount.blob.core.windows.net/osimages/osimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot1" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk1" + }, + "osState": "Generalized", + "storageAccountType": "Standard_LRS", + "diskSizeGB": 20 + }, + "dataDisks": [ + { + "lun": 1, + "blobUri": "https://mystorageaccount.blob.core.windows.net/dataimages/dataimage.vhd", + "snapshot": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/mySnapshot2" + }, + "managedDisk": { + "id": "subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myManagedDisk2" + }, + "storageAccountType": "Standard_LRS" + } + ], + "zoneResilient": true + }, + "provisioningState": "created" + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateVMDetachDataDiskUsingToBeDetachedProperty.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateVMDetachDataDiskUsingToBeDetachedProperty.json new file mode 100644 index 000000000000..a442be8554ac --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateVMDetachDataDiskUsingToBeDetachedProperty.json @@ -0,0 +1,208 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmName": "myVM", + "api-version": "2019-12-01", + "parameters": { + "properties": { + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "caching": "ReadWrite", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "name": "myVMosdisk", + "createOption": "FromImage" + }, + "dataDisks": [ + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 0, + "toBeDetached": true + }, + { + "diskSizeGB": 1023, + "createOption": "Empty", + "lun": 1, + "toBeDetached": false + } + ] + }, + "osProfile": { + "adminUsername": "{your-username}", + "computerName": "myVM", + "adminPassword": "{your-password}" + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/{existing-nic-name}", + "properties": { + "primary": true + } + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023, + "toBeDetached": true + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023, + "toBeDetached": false + } + ] + }, + "vmId": "3906fef9-a1e5-4b83-a8a8-540858b41df0", + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "provisioningState": "Updating" + }, + "name": "myVM", + "location": "westus" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", + "type": "Microsoft.Compute/virtualMachines", + "properties": { + "osProfile": { + "adminUsername": "{your-username}", + "secrets": [], + "computerName": "myVM", + "windowsConfiguration": { + "provisionVMAgent": true, + "enableAutomaticUpdates": true + } + }, + "networkProfile": { + "networkInterfaces": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/nsgExistingNic", + "properties": { + "primary": true + } + } + ] + }, + "storageProfile": { + "imageReference": { + "sku": "2016-Datacenter", + "publisher": "MicrosoftWindowsServer", + "version": "latest", + "offer": "WindowsServer" + }, + "osDisk": { + "osType": "Windows", + "caching": "ReadWrite", + "createOption": "FromImage", + "name": "myVMosdisk", + "managedDisk": { + "storageAccountType": "Standard_LRS" + } + }, + "dataDisks": [ + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 0, + "diskSizeGB": 1023, + "toBeDetached": true + }, + { + "caching": "None", + "managedDisk": { + "storageAccountType": "Standard_LRS" + }, + "createOption": "Empty", + "lun": 1, + "diskSizeGB": 1023, + "toBeDetached": false + } + ] + }, + "vmId": "3906fef9-a1e5-4b83-a8a8-540858b41df0", + "hardwareProfile": { + "vmSize": "Standard_D2_v2" + }, + "provisioningState": "Updating" + }, + "name": "myVM", + "location": "westus" + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateVirtualMachineScaleSetVMExtensions.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateVirtualMachineScaleSetVMExtensions.json new file mode 100644 index 000000000000..3aebf40aa98c --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/UpdateVirtualMachineScaleSetVMExtensions.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "myvmScaleSet", + "instanceId": "0", + "vmExtensionName": "myVMExtension", + "api-version": "2019-12-01", + "extensionParameters": { + "properties": { + "autoUpgradeMinorVersion": true, + "publisher": "extPublisher", + "type": "extType", + "typeHandlerVersion": "1.2", + "settings": { + "UserName": "xyz@microsoft.com" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "myVMExtension", + "location": "westus", + "type": "Microsoft.Compute/virtualMachineScaleSets/virtualMachines/extensions", + "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myvmScaleSet/virtualMachines/0/extensions/myVMExtension", + "properties": { + "autoUpgradeMinorVersion": true, + "provisioningState": "Creating", + "publisher": "extPublisher", + "type": "extType", + "typeHandlerVersion": "1.2", + "settings": { + "UserName": "xyz@microsoft.com" + } + } + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/VMScaleSetExtensionRollingUpgrade.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/VMScaleSetExtensionRollingUpgrade.json new file mode 100644 index 000000000000..1ebbb77d1d47 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/VMScaleSetExtensionRollingUpgrade.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "vmScaleSetName": "{vmss-name}", + "api-version": "2019-12-01" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/VirtualMachineRunCommand.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/VirtualMachineRunCommand.json new file mode 100644 index 000000000000..416d54a420f8 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/VirtualMachineRunCommand.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "24fb23e3-6ba3-41f0-9b6e-e41131d5d61e", + "resourceGroupName": "crptestar98131", + "vmName": "vm3036", + "$top": 1, + "api-version": "2019-12-01", + "monitor": "true", + "parameters": { + "commandId": "RunPowerShellScript" + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "code": "ComponentStatus/StdOut/succeeded", + "level": "Info", + "displayStatus": "Provisioning succeeded", + "message": "This is a sample script with parameters value1 value2" + }, + { + "code": "ComponentStatus/StdErr/succeeded", + "level": "Info", + "displayStatus": "Provisioning succeeded", + "message": "" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/VirtualMachineRunCommandGet.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/VirtualMachineRunCommandGet.json new file mode 100644 index 000000000000..a344dc72cd40 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/VirtualMachineRunCommandGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "24fb23e3-6ba3-41f0-9b6e-e41131d5d61e", + "location": "SoutheastAsia", + "commandId": "RunPowerShellScript", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "script": [ + "param(", + " [string]$arg1,", + " [string]$arg2", + ")", + "Write-Host This is a sample script with parameters $arg1 $arg2" + ], + "parameters": [ + { + "name": "arg1", + "type": "string", + "defaultValue": "value1" + }, + { + "name": "arg2", + "type": "string", + "defaultValue": "value2" + } + ], + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "RunPowerShellScript", + "osType": "Windows", + "label": "Executes a PowerShell script", + "description": "Custom multiline PowerShell script should be defined in script property. Optional parameters can be set in parameters property." + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/VirtualMachineRunCommandList.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/VirtualMachineRunCommandList.json new file mode 100644 index 000000000000..ab2f1632f736 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/examples/VirtualMachineRunCommandList.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "subscriptionId": "subid", + "location": "SoutheastAsia", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "EnableRemotePS", + "osType": "Windows", + "label": "Enable remote PowerShell", + "description": "Configure the machine to enable remote PowerShell." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "IPConfig", + "osType": "Windows", + "label": "List IP configuration", + "description": "Shows detailed information for the IP address, subnet mask and default gateway for each adapter bound to TCP/IP." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "RunPowerShellScript", + "osType": "Windows", + "label": "Executes a PowerShell script", + "description": "Custom multiline PowerShell script should be defined in script property. Optional parameters can be set in parameters property." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "RunShellScript", + "osType": "Linux", + "label": "Executes a Linux shell script", + "description": "Custom multiline shell script should be defined in script property. Optional parameters can be set in parameters property." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "ifconfig", + "osType": "Linux", + "label": "List network configuration", + "description": "Get the configuration of all network interfaces." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "EnableAdminAccount", + "osType": "Windows", + "label": "Enable administrator account", + "description": "Checks if the local Administrator account is disabled, and if so enables it." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "ResetAccountPassword", + "osType": "Windows", + "label": "Reset built-in Administrator account password", + "description": "Reset built-in Administrator account password." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "RDPSettings", + "osType": "Windows", + "label": "Verify RDP Listener Settings", + "description": "Checks registry settings and domain policy settings. Suggests policy actions if machine is part of a domain or modifies the settings to default values." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "SetRDPPort", + "osType": "Windows", + "label": "Set Remote Desktop port", + "description": "Sets the default or user specified port number for Remote Desktop connections. Enables firewall rule for inbound access to the port." + }, + { + "$schema": "http://schema.management.azure.com/schemas/2016-11-17/runcommands.json", + "id": "ResetRDPCert", + "osType": "Windows", + "label": "Restore RDP Authentication mode to defaults", + "description": "Removes the SSL certificate tied to the RDP listener and restores the RDP listerner security to default. Use this script if you see any issues with the certificate." + } + ] + } + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/gallery.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/gallery.json new file mode 100644 index 000000000000..e9364862f12f --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/gallery.json @@ -0,0 +1,2653 @@ +{ + "swagger": "2.0", + "info": { + "title": "SharedImageGalleryServiceClient", + "description": "Shared Image Gallery Service Client.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}": { + "put": { + "tags": [ + "Galleries" + ], + "operationId": "Galleries_CreateOrUpdate", + "description": "Create or update a Shared Image Gallery.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Image Gallery. The allowed characters are alphabets and numbers with dots and periods allowed in the middle. The maximum length is 80 characters." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "gallery", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Gallery" + }, + "description": "Parameters supplied to the create or update Shared Image Gallery operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Gallery" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/Gallery" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/Gallery" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create or update a simple gallery.": { + "$ref": "./examples/CreateOrUpdateASimpleGallery.json" + } + } + }, + "patch": { + "tags": [ + "Galleries" + ], + "operationId": "Galleries_Update", + "description": "Update a Shared Image Gallery.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Image Gallery. The allowed characters are alphabets and numbers with dots and periods allowed in the middle. The maximum length is 80 characters." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "gallery", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GalleryUpdate" + }, + "description": "Parameters supplied to the update Shared Image Gallery operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Gallery" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a simple gallery.": { + "$ref": "./examples/UpdateASimpleGallery.json" + } + } + }, + "get": { + "tags": [ + "Galleries" + ], + "operationId": "Galleries_Get", + "description": "Retrieves information about a Shared Image Gallery.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Image Gallery." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Gallery" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get a gallery.": { + "$ref": "./examples/GetAGallery.json" + } + } + }, + "delete": { + "tags": [ + "Galleries" + ], + "operationId": "Galleries_Delete", + "description": "Delete a Shared Image Gallery.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Image Gallery to be deleted." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete a gallery.": { + "$ref": "./examples/DeleteAGallery.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/images/{galleryImageName}": { + "put": { + "tags": [ + "GalleryImages" + ], + "operationId": "GalleryImages_CreateOrUpdate", + "description": "Create or update a gallery Image Definition.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Image Gallery in which the Image Definition is to be created." + }, + { + "name": "galleryImageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Image Definition to be created or updated. The allowed characters are alphabets and numbers with dots, dashes, and periods allowed in the middle. The maximum length is 80 characters." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "galleryImage", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GalleryImage" + }, + "description": "Parameters supplied to the create or update gallery image operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryImage" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/GalleryImage" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/GalleryImage" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create or update a simple gallery image.": { + "$ref": "./examples/CreateOrUpdateASimpleGalleryImage.json" + } + } + }, + "patch": { + "tags": [ + "GalleryImages" + ], + "operationId": "GalleryImages_Update", + "description": "Update a gallery Image Definition.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Image Gallery in which the Image Definition is to be updated." + }, + { + "name": "galleryImageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Image Definition to be updated. The allowed characters are alphabets and numbers with dots, dashes, and periods allowed in the middle. The maximum length is 80 characters." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "galleryImage", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GalleryImageUpdate" + }, + "description": "Parameters supplied to the update gallery image operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryImage" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a simple gallery image.": { + "$ref": "./examples/UpdateASimpleGalleryImage.json" + } + } + }, + "get": { + "tags": [ + "GalleryImages" + ], + "operationId": "GalleryImages_Get", + "description": "Retrieves information about a gallery Image Definition.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Image Gallery from which the Image Definitions are to be retrieved." + }, + { + "name": "galleryImageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Image Definition to be retrieved." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryImage" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get a gallery image.": { + "$ref": "./examples/GetAGalleryImage.json" + } + } + }, + "delete": { + "tags": [ + "GalleryImages" + ], + "operationId": "GalleryImages_Delete", + "description": "Delete a gallery image.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Image Gallery in which the Image Definition is to be deleted." + }, + { + "name": "galleryImageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Image Definition to be deleted." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete a gallery image.": { + "$ref": "./examples/DeleteAGalleryImage.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/images/{galleryImageName}/versions/{galleryImageVersionName}": { + "put": { + "tags": [ + "GalleryImageVersions" + ], + "operationId": "GalleryImageVersions_CreateOrUpdate", + "description": "Create or update a gallery Image Version.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Image Gallery in which the Image Definition resides." + }, + { + "name": "galleryImageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Image Definition in which the Image Version is to be created." + }, + { + "name": "galleryImageVersionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Image Version to be created. Needs to follow semantic version name pattern: The allowed characters are digit and period. Digits must be within the range of a 32-bit integer. Format: .." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "galleryImageVersion", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GalleryImageVersion" + }, + "description": "Parameters supplied to the create or update gallery Image Version operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryImageVersion" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/GalleryImageVersion" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/GalleryImageVersion" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create or update a simple Gallery Image Version (Managed Image as source).": { + "$ref": "./examples/CreateOrUpdateASimpleGalleryImageVersion.json" + }, + "Create or update a simple Gallery Image Version using snapshots as a source.": { + "$ref": "./examples/CreateOrUpdateASimpleGalleryImageVersionWithSnapshotsAsSource.json" + } + } + }, + "patch": { + "tags": [ + "GalleryImageVersions" + ], + "operationId": "GalleryImageVersions_Update", + "description": "Update a gallery Image Version.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Image Gallery in which the Image Definition resides." + }, + { + "name": "galleryImageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Image Definition in which the Image Version is to be updated." + }, + { + "name": "galleryImageVersionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Image Version to be updated. Needs to follow semantic version name pattern: The allowed characters are digit and period. Digits must be within the range of a 32-bit integer. Format: .." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "galleryImageVersion", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GalleryImageVersionUpdate" + }, + "description": "Parameters supplied to the update gallery Image Version operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryImageVersion" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a simple Gallery Image Version (Managed Image as source).": { + "$ref": "./examples/UpdateASimpleGalleryImageVersion.json" + } + } + }, + "get": { + "tags": [ + "GalleryImageVersions" + ], + "operationId": "GalleryImageVersions_Get", + "description": "Retrieves information about a gallery Image Version.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Image Gallery in which the Image Definition resides." + }, + { + "name": "galleryImageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Image Definition in which the Image Version resides." + }, + { + "name": "galleryImageVersionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Image Version to be retrieved." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation.", + "enum": [ + "ReplicationStatus" + ], + "x-ms-enum": { + "name": "ReplicationStatusTypes", + "modelAsString": true + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryImageVersion" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get a gallery Image Version.": { + "$ref": "./examples/GetAGalleryImageVersion.json" + }, + "Get a gallery Image Version with replication status.": { + "$ref": "./examples/GetAGalleryImageVersionWithReplicationStatus.json" + }, + "Get a gallery Image Version with snapshots as a source.": { + "$ref": "./examples/GetAGalleryImageVersionWithSnapshotsAsSource.json" + } + } + }, + "delete": { + "tags": [ + "GalleryImageVersions" + ], + "operationId": "GalleryImageVersions_Delete", + "description": "Delete a gallery Image Version.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Image Gallery in which the Image Definition resides." + }, + { + "name": "galleryImageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Image Definition in which the Image Version resides." + }, + { + "name": "galleryImageVersionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Image Version to be deleted." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete a gallery Image Version.": { + "$ref": "./examples/DeleteAGalleryImageVersion.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/applications/{galleryApplicationName}": { + "put": { + "tags": [ + "GalleryApplications" + ], + "operationId": "GalleryApplications_CreateOrUpdate", + "description": "Create or update a gallery Application Definition.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Application Gallery in which the Application Definition is to be created." + }, + { + "name": "galleryApplicationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Application Definition to be created or updated. The allowed characters are alphabets and numbers with dots, dashes, and periods allowed in the middle. The maximum length is 80 characters." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "galleryApplication", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GalleryApplication" + }, + "description": "Parameters supplied to the create or update gallery Application operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryApplication" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/GalleryApplication" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/GalleryApplication" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create or update a simple gallery Application.": { + "$ref": "./examples/CreateOrUpdateASimpleGalleryApplication.json" + } + } + }, + "patch": { + "tags": [ + "GalleryApplications" + ], + "operationId": "GalleryApplications_Update", + "description": "Update a gallery Application Definition.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Application Gallery in which the Application Definition is to be updated." + }, + { + "name": "galleryApplicationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Application Definition to be updated. The allowed characters are alphabets and numbers with dots, dashes, and periods allowed in the middle. The maximum length is 80 characters." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "galleryApplication", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GalleryApplicationUpdate" + }, + "description": "Parameters supplied to the update gallery Application operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryApplication" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a simple gallery Application.": { + "$ref": "./examples/UpdateASimpleGalleryApplication.json" + } + } + }, + "get": { + "tags": [ + "GalleryApplications" + ], + "operationId": "GalleryApplications_Get", + "description": "Retrieves information about a gallery Application Definition.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Application Gallery from which the Application Definitions are to be retrieved." + }, + { + "name": "galleryApplicationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Application Definition to be retrieved." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryApplication" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get a gallery Application.": { + "$ref": "./examples/GetAGalleryApplication.json" + } + } + }, + "delete": { + "tags": [ + "GalleryApplications" + ], + "operationId": "GalleryApplications_Delete", + "description": "Delete a gallery Application.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Application Gallery in which the Application Definition is to be deleted." + }, + { + "name": "galleryApplicationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Application Definition to be deleted." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete a gallery Application.": { + "$ref": "./examples/DeleteAGalleryApplication.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/applications/{galleryApplicationName}/versions/{galleryApplicationVersionName}": { + "put": { + "tags": [ + "GalleryApplicationVersions" + ], + "operationId": "GalleryApplicationVersions_CreateOrUpdate", + "description": "Create or update a gallery Application Version.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Application Gallery in which the Application Definition resides." + }, + { + "name": "galleryApplicationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Application Definition in which the Application Version is to be created." + }, + { + "name": "galleryApplicationVersionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Application Version to be created. Needs to follow semantic version name pattern: The allowed characters are digit and period. Digits must be within the range of a 32-bit integer. Format: .." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "galleryApplicationVersion", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GalleryApplicationVersion" + }, + "description": "Parameters supplied to the create or update gallery Application Version operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryApplicationVersion" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/GalleryApplicationVersion" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/GalleryApplicationVersion" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create or update a simple gallery Application Version.": { + "$ref": "./examples/CreateOrUpdateASimpleGalleryApplicationVersion.json" + } + } + }, + "patch": { + "tags": [ + "GalleryApplicationVersions" + ], + "operationId": "GalleryApplicationVersions_Update", + "description": "Update a gallery Application Version.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Application Gallery in which the Application Definition resides." + }, + { + "name": "galleryApplicationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Application Definition in which the Application Version is to be updated." + }, + { + "name": "galleryApplicationVersionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Application Version to be updated. Needs to follow semantic version name pattern: The allowed characters are digit and period. Digits must be within the range of a 32-bit integer. Format: .." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "galleryApplicationVersion", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GalleryApplicationVersionUpdate" + }, + "description": "Parameters supplied to the update gallery Application Version operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryApplicationVersion" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a simple gallery Application Version.": { + "$ref": "./examples/UpdateASimpleGalleryApplicationVersion.json" + } + } + }, + "get": { + "tags": [ + "GalleryApplicationVersions" + ], + "operationId": "GalleryApplicationVersions_Get", + "description": "Retrieves information about a gallery Application Version.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Application Gallery in which the Application Definition resides." + }, + { + "name": "galleryApplicationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Application Definition in which the Application Version resides." + }, + { + "name": "galleryApplicationVersionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Application Version to be retrieved." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation.", + "enum": [ + "ReplicationStatus" + ], + "x-ms-enum": { + "name": "ReplicationStatusTypes", + "modelAsString": true + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryApplicationVersion" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get a gallery Application Version.": { + "$ref": "./examples/GetAGalleryApplicationVersion.json" + }, + "Get a gallery Application Version with replication status.": { + "$ref": "./examples/GetAGalleryApplicationVersionWithReplicationStatus.json" + } + } + }, + "delete": { + "tags": [ + "GalleryApplicationVersions" + ], + "operationId": "GalleryApplicationVersions_Delete", + "description": "Delete a gallery Application Version.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Application Gallery in which the Application Definition resides." + }, + { + "name": "galleryApplicationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Application Definition in which the Application Version resides." + }, + { + "name": "galleryApplicationVersionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gallery Application Version to be deleted." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete a gallery Application Version.": { + "$ref": "./examples/DeleteAGalleryApplicationVersion.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries": { + "get": { + "tags": [ + "Galleries" + ], + "operationId": "Galleries_ListByResourceGroup", + "description": "List galleries under a resource group.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List galleries in a resource group.": { + "$ref": "./examples/ListGalleriesInAResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/galleries": { + "get": { + "tags": [ + "Galleries" + ], + "operationId": "Galleries_List", + "description": "List galleries under a subscription.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List galleries in a subscription.": { + "$ref": "./examples/ListGalleriesInASubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/images": { + "get": { + "tags": [ + "GalleryImages" + ], + "operationId": "GalleryImages_ListByGallery", + "description": "List gallery Image Definitions in a gallery.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Image Gallery from which Image Definitions are to be listed." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryImageList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List gallery images in a gallery.": { + "$ref": "./examples/ListGalleryImagesInAGallery.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/images/{galleryImageName}/versions": { + "get": { + "tags": [ + "GalleryImageVersions" + ], + "operationId": "GalleryImageVersions_ListByGalleryImage", + "description": "List gallery Image Versions in a gallery Image Definition.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Image Gallery in which the Image Definition resides." + }, + { + "name": "galleryImageName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Image Gallery Image Definition from which the Image Versions are to be listed." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryImageVersionList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List gallery Image Versions in a gallery Image Definition.": { + "$ref": "./examples/ListGalleryImageVersionsInAGalleryImage.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/applications": { + "get": { + "tags": [ + "GalleryApplications" + ], + "operationId": "GalleryApplications_ListByGallery", + "description": "List gallery Application Definitions in a gallery.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Application Gallery from which Application Definitions are to be listed." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryApplicationList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List gallery Applications in a gallery.": { + "$ref": "./examples/ListGalleryApplicationsInAGallery.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/applications/{galleryApplicationName}/versions": { + "get": { + "tags": [ + "GalleryApplicationVersions" + ], + "operationId": "GalleryApplicationVersions_ListByGalleryApplication", + "description": "List gallery Application Versions in a gallery Application Definition.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "galleryName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Application Gallery in which the Application Definition resides." + }, + { + "name": "galleryApplicationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Shared Application Gallery Application Definition from which the Application Versions are to be listed." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/GalleryApplicationVersionList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List gallery Application Versions in a gallery Application Definition.": { + "$ref": "./examples/ListGalleryApplicationVersionsInAGalleryApplication.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "Gallery": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GalleryProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Specifies information about the Shared Image Gallery that you want to create or update." + }, + "GalleryUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GalleryProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResourceDefinition" + } + ], + "description": "Specifies information about the Shared Image Gallery that you want to update." + }, + "GalleryProperties": { + "properties": { + "description": { + "type": "string", + "description": "The description of this Shared Image Gallery resource. This property is updatable." + }, + "identifier": { + "$ref": "#/definitions/GalleryIdentifier" + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "title": "The current state of the gallery.", + "description": "The provisioning state, which only appears in the response.", + "enum": [ + "Creating", + "Updating", + "Failed", + "Succeeded", + "Deleting", + "Migrating" + ] + } + }, + "description": "Describes the properties of a Shared Image Gallery." + }, + "GalleryIdentifier": { + "properties": { + "uniqueName": { + "readOnly": true, + "type": "string", + "description": "The unique name of the Shared Image Gallery. This name is generated automatically by Azure." + } + }, + "description": "Describes the gallery unique name." + }, + "GalleryApplication": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GalleryApplicationProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Specifies information about the gallery Application Definition that you want to create or update." + }, + "GalleryApplicationUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GalleryApplicationProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResourceDefinition" + } + ], + "description": "Specifies information about the gallery Application Definition that you want to update." + }, + "GalleryApplicationProperties": { + "properties": { + "description": { + "type": "string", + "description": "The description of this gallery Application Definition resource. This property is updatable." + }, + "eula": { + "type": "string", + "description": "The Eula agreement for the gallery Application Definition." + }, + "privacyStatementUri": { + "type": "string", + "description": "The privacy statement uri." + }, + "releaseNoteUri": { + "type": "string", + "description": "The release note uri." + }, + "endOfLifeDate": { + "type": "string", + "format": "date-time", + "description": "The end of life date of the gallery Application Definition. This property can be used for decommissioning purposes. This property is updatable." + }, + "supportedOSType": { + "type": "string", + "description": "This property allows you to specify the supported type of the OS that application is built for.

    Possible values are:

    **Windows**

    **Linux**", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + } + }, + "required": [ + "supportedOSType" + ], + "description": "Describes the properties of a gallery Application Definition." + }, + "GalleryApplicationVersion": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GalleryApplicationVersionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Specifies information about the gallery Application Version that you want to create or update." + }, + "GalleryApplicationVersionUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GalleryApplicationVersionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResourceDefinition" + } + ], + "description": "Specifies information about the gallery Application Version that you want to update." + }, + "GalleryApplicationVersionProperties": { + "properties": { + "publishingProfile": { + "$ref": "#/definitions/GalleryApplicationVersionPublishingProfile" + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "title": "The current state of the gallery Application Version.", + "description": "The provisioning state, which only appears in the response.", + "enum": [ + "Creating", + "Updating", + "Failed", + "Succeeded", + "Deleting", + "Migrating" + ] + }, + "replicationStatus": { + "readOnly": true, + "$ref": "#/definitions/ReplicationStatus" + } + }, + "required": [ + "publishingProfile" + ], + "description": "Describes the properties of a gallery Image Version." + }, + "GalleryApplicationVersionPublishingProfile": { + "properties": { + "source": { + "$ref": "#/definitions/UserArtifactSource" + }, + "contentType": { + "type": "string", + "description": "Optional. May be used to help process this file. The type of file contained in the source, e.g. zip, json, etc." + }, + "enableHealthCheck": { + "type": "boolean", + "description": "Optional. Whether or not this application reports health." + } + }, + "allOf": [ + { + "$ref": "#/definitions/GalleryArtifactPublishingProfileBase" + } + ], + "required": [ + "source" + ], + "description": "The publishing profile of a gallery Image Version." + }, + "UserArtifactSource": { + "properties": { + "fileName": { + "type": "string", + "description": "Required. The fileName of the artifact." + }, + "mediaLink": { + "type": "string", + "description": "Required. The mediaLink of the artifact, must be a readable storage blob." + } + }, + "required": [ + "fileName", + "mediaLink" + ], + "description": "The source image from which the Image Version is going to be created." + }, + "GalleryImage": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GalleryImageProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Specifies information about the gallery Image Definition that you want to create or update." + }, + "GalleryImageUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GalleryImageProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResourceDefinition" + } + ], + "description": "Specifies information about the gallery Image Definition that you want to update." + }, + "GalleryImageProperties": { + "properties": { + "description": { + "type": "string", + "description": "The description of this gallery Image Definition resource. This property is updatable." + }, + "eula": { + "type": "string", + "description": "The Eula agreement for the gallery Image Definition." + }, + "privacyStatementUri": { + "type": "string", + "description": "The privacy statement uri." + }, + "releaseNoteUri": { + "type": "string", + "description": "The release note uri." + }, + "osType": { + "type": "string", + "description": "This property allows you to specify the type of the OS that is included in the disk when creating a VM from a managed image.

    Possible values are:

    **Windows**

    **Linux**", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "osState": { + "type": "string", + "description": "This property allows the user to specify whether the virtual machines created under this image are 'Generalized' or 'Specialized'.", + "enum": [ + "Generalized", + "Specialized" + ], + "x-ms-enum": { + "name": "OperatingSystemStateTypes", + "modelAsString": false + } + }, + "hyperVGeneration": { + "type": "string", + "description": "The hypervisor generation of the Virtual Machine. Applicable to OS disks only.", + "enum": [ + "V1", + "V2" + ], + "x-ms-enum": { + "name": "HyperVGeneration", + "modelAsString": true + } + }, + "endOfLifeDate": { + "type": "string", + "format": "date-time", + "description": "The end of life date of the gallery Image Definition. This property can be used for decommissioning purposes. This property is updatable." + }, + "identifier": { + "$ref": "#/definitions/GalleryImageIdentifier" + }, + "recommended": { + "$ref": "#/definitions/RecommendedMachineConfiguration" + }, + "disallowed": { + "$ref": "#/definitions/Disallowed" + }, + "purchasePlan": { + "$ref": "#/definitions/ImagePurchasePlan" + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "title": "The current state of the gallery Image Definition.", + "description": "The provisioning state, which only appears in the response.", + "enum": [ + "Creating", + "Updating", + "Failed", + "Succeeded", + "Deleting", + "Migrating" + ] + } + }, + "required": [ + "osType", + "osState", + "identifier" + ], + "description": "Describes the properties of a gallery Image Definition." + }, + "GalleryImageIdentifier": { + "properties": { + "publisher": { + "type": "string", + "description": "The name of the gallery Image Definition publisher." + }, + "offer": { + "type": "string", + "description": "The name of the gallery Image Definition offer." + }, + "sku": { + "type": "string", + "description": "The name of the gallery Image Definition SKU." + } + }, + "required": [ + "publisher", + "offer", + "sku" + ], + "description": "This is the gallery Image Definition identifier." + }, + "RecommendedMachineConfiguration": { + "properties": { + "vCPUs": { + "$ref": "#/definitions/ResourceRange" + }, + "memory": { + "$ref": "#/definitions/ResourceRange" + } + }, + "description": "The properties describe the recommended machine configuration for this Image Definition. These properties are updatable." + }, + "ResourceRange": { + "properties": { + "min": { + "type": "integer", + "format": "int32", + "description": "The minimum number of the resource." + }, + "max": { + "type": "integer", + "format": "int32", + "description": "The maximum number of the resource." + } + }, + "description": "Describes the resource range." + }, + "Disallowed": { + "properties": { + "diskTypes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of disk types." + } + }, + "description": "Describes the disallowed disk types." + }, + "ImagePurchasePlan": { + "properties": { + "name": { + "type": "string", + "description": "The plan ID." + }, + "publisher": { + "type": "string", + "description": "The publisher ID." + }, + "product": { + "type": "string", + "description": "The product ID." + } + }, + "description": "Describes the gallery Image Definition purchase plan. This is used by marketplace images." + }, + "GalleryImageVersion": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GalleryImageVersionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Specifies information about the gallery Image Version that you want to create or update." + }, + "GalleryImageVersionUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/GalleryImageVersionProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResourceDefinition" + } + ], + "description": "Specifies information about the gallery Image Version that you want to update." + }, + "GalleryImageVersionProperties": { + "properties": { + "publishingProfile": { + "$ref": "#/definitions/GalleryImageVersionPublishingProfile" + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "title": "The current state of the gallery Image Version.", + "description": "The provisioning state, which only appears in the response.", + "enum": [ + "Creating", + "Updating", + "Failed", + "Succeeded", + "Deleting", + "Migrating" + ] + }, + "storageProfile": { + "$ref": "#/definitions/GalleryImageVersionStorageProfile" + }, + "replicationStatus": { + "readOnly": true, + "$ref": "#/definitions/ReplicationStatus" + } + }, + "required": [ + "storageProfile" + ], + "description": "Describes the properties of a gallery Image Version." + }, + "GalleryArtifactPublishingProfileBase": { + "properties": { + "targetRegions": { + "type": "array", + "items": { + "$ref": "#/definitions/TargetRegion" + }, + "description": "The target regions where the Image Version is going to be replicated to. This property is updatable." + }, + "replicaCount": { + "type": "integer", + "format": "int32", + "description": "The number of replicas of the Image Version to be created per region. This property would take effect for a region when regionalReplicaCount is not specified. This property is updatable." + }, + "excludeFromLatest": { + "type": "boolean", + "description": "If set to true, Virtual Machines deployed from the latest version of the Image Definition won't use this Image Version." + }, + "publishedDate": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The timestamp for when the gallery Image Version is published." + }, + "endOfLifeDate": { + "type": "string", + "format": "date-time", + "description": "The end of life date of the gallery Image Version. This property can be used for decommissioning purposes. This property is updatable." + }, + "storageAccountType": { + "type": "string", + "description": "Specifies the storage account type to be used to store the image. This property is not updatable.", + "enum": [ + "Standard_LRS", + "Standard_ZRS", + "Premium_LRS" + ], + "x-ms-enum": { + "name": "StorageAccountType", + "modelAsString": true + } + } + }, + "description": "Describes the basic gallery artifact publishing profile." + }, + "TargetRegion": { + "properties": { + "name": { + "type": "string", + "description": "The name of the region." + }, + "regionalReplicaCount": { + "type": "integer", + "format": "int32", + "description": "The number of replicas of the Image Version to be created per region. This property is updatable." + }, + "storageAccountType": { + "type": "string", + "description": "Specifies the storage account type to be used to store the image. This property is not updatable.", + "enum": [ + "Standard_LRS", + "Standard_ZRS", + "Premium_LRS" + ], + "x-ms-enum": { + "name": "StorageAccountType", + "modelAsString": true + } + }, + "encryption": { + "$ref": "#/definitions/EncryptionImages" + } + }, + "required": [ + "name" + ], + "description": "Describes the target region information." + }, + "EncryptionImages": { + "properties": { + "osDiskImage": { + "$ref": "#/definitions/OSDiskImageEncryption" + }, + "dataDiskImages": { + "type": "array", + "items": { + "$ref": "#/definitions/DataDiskImageEncryption" + }, + "description": "A list of encryption specifications for data disk images." + } + }, + "description": "Optional. Allows users to provide customer managed keys for encrypting the OS and data disks in the gallery artifact." + }, + "OSDiskImageEncryption": { + "allOf": [ + { + "$ref": "#/definitions/DiskImageEncryption" + } + ], + "description": "Contains encryption settings for an OS disk image." + }, + "DataDiskImageEncryption": { + "properties": { + "lun": { + "type": "integer", + "format": "int32", + "description": "This property specifies the logical unit number of the data disk. This value is used to identify data disks within the Virtual Machine and therefore must be unique for each data disk attached to the Virtual Machine." + } + }, + "allOf": [ + { + "$ref": "#/definitions/DiskImageEncryption" + } + ], + "required": [ + "lun" + ], + "description": "Contains encryption settings for a data disk image." + }, + "DiskImageEncryption": { + "properties": { + "diskEncryptionSetId": { + "type": "string", + "description": "A relative URI containing the resource ID of the disk encryption set." + } + }, + "description": "This is the disk image encryption base class." + }, + "GalleryArtifactSource": { + "properties": { + "managedImage": { + "$ref": "#/definitions/ManagedArtifact" + } + }, + "required": [ + "managedImage" + ], + "description": "The source image from which the Image Version is going to be created." + }, + "ManagedArtifact": { + "properties": { + "id": { + "type": "string", + "description": "The managed artifact id." + } + }, + "required": [ + "id" + ], + "description": "The managed artifact." + }, + "GalleryImageVersionPublishingProfile": { + "allOf": [ + { + "$ref": "#/definitions/GalleryArtifactPublishingProfileBase" + } + ], + "description": "The publishing profile of a gallery Image Version." + }, + "GalleryImageVersionStorageProfile": { + "properties": { + "source": { + "$ref": "#/definitions/GalleryArtifactVersionSource" + }, + "osDiskImage": { + "$ref": "#/definitions/GalleryOSDiskImage" + }, + "dataDiskImages": { + "type": "array", + "items": { + "$ref": "#/definitions/GalleryDataDiskImage" + }, + "description": "A list of data disk images." + } + }, + "description": "This is the storage profile of a Gallery Image Version." + }, + "GalleryArtifactVersionSource": { + "properties": { + "id": { + "type": "string", + "description": "The id of the gallery artifact version source. Can specify a disk uri, snapshot uri, or user image." + } + }, + "required": [ + "id" + ], + "description": "The gallery artifact version source." + }, + "GalleryOSDiskImage": { + "allOf": [ + { + "$ref": "#/definitions/GalleryDiskImage" + } + ], + "description": "This is the OS disk image." + }, + "GalleryDataDiskImage": { + "properties": { + "lun": { + "type": "integer", + "format": "int32", + "description": "This property specifies the logical unit number of the data disk. This value is used to identify data disks within the Virtual Machine and therefore must be unique for each data disk attached to the Virtual Machine." + } + }, + "allOf": [ + { + "$ref": "#/definitions/GalleryDiskImage" + } + ], + "required": [ + "lun" + ], + "description": "This is the data disk image." + }, + "GalleryDiskImage": { + "properties": { + "sizeInGB": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "This property indicates the size of the VHD to be created." + }, + "hostCaching": { + "type": "string", + "description": "The host caching of the disk. Valid values are 'None', 'ReadOnly', and 'ReadWrite'", + "enum": [ + "None", + "ReadOnly", + "ReadWrite" + ], + "x-ms-enum": { + "name": "HostCaching", + "modelAsString": false + } + }, + "source": { + "$ref": "#/definitions/GalleryArtifactVersionSource" + } + }, + "description": "This is the disk image base class." + }, + "ReplicationStatus": { + "properties": { + "aggregatedState": { + "readOnly": true, + "type": "string", + "description": "This is the aggregated replication status based on all the regional replication status flags.", + "enum": [ + "Unknown", + "InProgress", + "Completed", + "Failed" + ], + "x-ms-enum": { + "name": "AggregatedReplicationState", + "modelAsString": true + } + }, + "summary": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/RegionalReplicationStatus" + }, + "description": "This is a summary of replication status for each region." + } + }, + "description": "This is the replication status of the gallery Image Version." + }, + "RegionalReplicationStatus": { + "properties": { + "region": { + "readOnly": true, + "type": "string", + "description": "The region to which the gallery Image Version is being replicated to." + }, + "state": { + "readOnly": true, + "type": "string", + "description": "This is the regional replication state.", + "enum": [ + "Unknown", + "Replicating", + "Completed", + "Failed" + ], + "x-ms-enum": { + "name": "ReplicationState", + "modelAsString": true + } + }, + "details": { + "readOnly": true, + "type": "string", + "description": "The details of the replication status." + }, + "progress": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "It indicates progress of the replication job." + } + }, + "description": "This is the regional replication status." + }, + "GalleryList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Gallery" + }, + "description": "A list of galleries." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of galleries. Call ListNext() with this to fetch the next page of galleries." + } + }, + "required": [ + "value" + ], + "description": "The List Galleries operation response." + }, + "GalleryImageList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GalleryImage" + }, + "description": "A list of Shared Image Gallery images." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of Image Definitions in the Shared Image Gallery. Call ListNext() with this to fetch the next page of gallery Image Definitions." + } + }, + "required": [ + "value" + ], + "description": "The List Gallery Images operation response." + }, + "GalleryImageVersionList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GalleryImageVersion" + }, + "description": "A list of gallery Image Versions." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of gallery Image Versions. Call ListNext() with this to fetch the next page of gallery Image Versions." + } + }, + "required": [ + "value" + ], + "description": "The List Gallery Image version operation response." + }, + "GalleryApplicationList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GalleryApplication" + }, + "description": "A list of Gallery Applications." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of Application Definitions in the Application Gallery. Call ListNext() with this to fetch the next page of gallery Application Definitions." + } + }, + "required": [ + "value" + ], + "description": "The List Gallery Applications operation response." + }, + "GalleryApplicationVersionList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GalleryApplicationVersion" + }, + "description": "A list of gallery Application Versions." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of gallery Application Versions. Call ListNext() with this to fetch the next page of gallery Application Versions." + } + }, + "required": [ + "value" + ], + "description": "The List Gallery Application version operation response." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/ApiError" + } + }, + "description": "An error response from the Compute service." + }, + "ApiError": { + "properties": { + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiErrorBase" + }, + "description": "The Api error details" + }, + "innererror": { + "$ref": "#/definitions/InnerError", + "description": "The Api inner error" + }, + "code": { + "type": "string", + "description": "The error code." + }, + "target": { + "type": "string", + "description": "The target of the particular error." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "Api error." + }, + "ApiErrorBase": { + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "target": { + "type": "string", + "description": "The target of the particular error." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "Api error base." + }, + "InnerError": { + "properties": { + "exceptiontype": { + "type": "string", + "description": "The exception type." + }, + "errordetail": { + "type": "string", + "description": "The internal error message or exception dump." + } + }, + "description": "Inner error details." + }, + "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" + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "required": [ + "location" + ], + "x-ms-azure-resource": true + }, + "UpdateResourceDefinition": { + "description": "The Update 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": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "x-ms-azure-resource": true + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The name of the resource group." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + } + } +} diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/runCommands.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/runCommands.json new file mode 100644 index 000000000000..9a3528df0d75 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-12-01/runCommands.json @@ -0,0 +1,467 @@ +{ + "swagger": "2.0", + "info": { + "title": "RunCommandsClient", + "description": "The Run Commands Client.", + "version": "2019-12-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/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.Compute/locations/{location}/runCommands": { + "get": { + "tags": [ + "VirtualMachineRunCommands" + ], + "operationId": "VirtualMachineRunCommands_List", + "x-ms-examples": { + "VirtualMachineRunCommandList": { + "$ref": "./examples/VirtualMachineRunCommandList.json" + } + }, + "description": "Lists all available run commands for a subscription in a location.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location upon which run commands is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RunCommandListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/runCommands/{commandId}": { + "get": { + "tags": [ + "VirtualMachineRunCommands" + ], + "operationId": "VirtualMachineRunCommands_Get", + "x-ms-examples": { + "VirtualMachineRunCommandGet": { + "$ref": "./examples/VirtualMachineRunCommandGet.json" + } + }, + "description": "Gets specific run command for a subscription in a location.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location upon which run commands is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "name": "commandId", + "in": "path", + "required": true, + "type": "string", + "description": "The command id." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RunCommandDocument" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/runCommand": { + "post": { + "tags": [ + "VirtualMachines" + ], + "operationId": "VirtualMachines_RunCommand", + "x-ms-examples": { + "VirtualMachineRunCommand": { + "$ref": "./examples/VirtualMachineRunCommand.json" + } + }, + "description": "Run command on the VM.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RunCommandInput" + }, + "description": "Parameters supplied to the Run command operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RunCommandResult" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}/virtualmachines/{instanceId}/runCommand": { + "post": { + "tags": [ + "VirtualMachineScaleSetVMs" + ], + "operationId": "VirtualMachineScaleSetVMs_RunCommand", + "description": "Run command on a virtual machine in a VM scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "vmScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VM scale set." + }, + { + "name": "instanceId", + "in": "path", + "required": true, + "type": "string", + "description": "The instance ID of the virtual machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RunCommandInput" + }, + "description": "Parameters supplied to the Run command operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RunCommandResult" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "RunCommandInputParameter": { + "properties": { + "name": { + "type": "string", + "description": "The run command parameter name." + }, + "value": { + "type": "string", + "description": "The run command parameter value." + } + }, + "required": [ + "name", + "value" + ], + "description": "Describes the properties of a run command parameter." + }, + "RunCommandInput": { + "properties": { + "commandId": { + "type": "string", + "description": "The run command id." + }, + "script": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Optional. The script to be executed. When this value is given, the given script will override the default script of the command." + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/definitions/RunCommandInputParameter" + }, + "description": "The run command parameters." + } + }, + "required": [ + "commandId" + ], + "description": "Capture Virtual Machine parameters." + }, + "RunCommandParameterDefinition": { + "properties": { + "name": { + "type": "string", + "description": "The run command parameter name." + }, + "type": { + "type": "string", + "description": "The run command parameter type." + }, + "defaultValue": { + "type": "string", + "description": "The run command parameter default value." + }, + "required": { + "type": "boolean", + "description": "The run command parameter required.", + "default": false + } + }, + "required": [ + "name", + "type" + ], + "description": "Describes the properties of a run command parameter." + }, + "RunCommandDocumentBase": { + "properties": { + "$schema": { + "type": "string", + "description": "The VM run command schema." + }, + "id": { + "type": "string", + "description": "The VM run command id." + }, + "osType": { + "type": "string", + "description": "The Operating System type.", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-enum": { + "name": "OperatingSystemTypes", + "modelAsString": false + } + }, + "label": { + "type": "string", + "description": "The VM run command label." + }, + "description": { + "type": "string", + "description": "The VM run command description." + } + }, + "required": [ + "$schema", + "id", + "osType", + "label", + "description" + ], + "description": "Describes the properties of a Run Command metadata." + }, + "RunCommandDocument": { + "allOf": [ + { + "$ref": "#/definitions/RunCommandDocumentBase" + } + ], + "properties": { + "script": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The script to be executed." + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/definitions/RunCommandParameterDefinition" + }, + "description": "The parameters used by the script." + } + }, + "required": [ + "script" + ], + "description": "Describes the properties of a Run Command." + }, + "RunCommandListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RunCommandDocumentBase" + }, + "description": "The list of virtual machine run commands." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of run commands. Call ListNext() with this to fetch the next page of run commands." + } + }, + "required": [ + "value" + ], + "description": "The List Virtual Machine operation response." + }, + "InstanceViewStatus": { + "properties": { + "code": { + "type": "string", + "description": "The status code." + }, + "level": { + "type": "string", + "description": "The level code.", + "enum": [ + "Info", + "Warning", + "Error" + ], + "x-ms-enum": { + "name": "StatusLevelTypes", + "modelAsString": false + } + }, + "displayStatus": { + "type": "string", + "description": "The short localizable label for the status." + }, + "message": { + "type": "string", + "description": "The detailed status message, including for alerts and error messages." + }, + "time": { + "type": "string", + "format": "date-time", + "description": "The time of the status." + } + }, + "description": "Instance view status." + }, + "RunCommandResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/InstanceViewStatus" + }, + "description": "Run command operation response." + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + } + } +} diff --git a/specification/compute/resource-manager/readme.csharp.md b/specification/compute/resource-manager/readme.csharp.md index a3fe8bb4dac8..3e85a94bd63f 100644 --- a/specification/compute/resource-manager/readme.csharp.md +++ b/specification/compute/resource-manager/readme.csharp.md @@ -15,6 +15,25 @@ csharp: license-header: MICROSOFT_MIT_NO_VERSION payload-flattening-threshold: 1 clear-output-folder: true + +# remove DUMMY member of enum +directive: + # dynamically add a DummyOrchestrationServiceName value to the enum + - from: compute.json + where: $..enum + transform: >- + if( $.length === 1 && $[0] === "AutomaticRepairs") { + $.push('DummyOrchestrationServiceName'); + } + return $; + + # remove it from the C# generated code + - from: source-file-csharp + where: $ + transform: >- + return $. + replace(/.*public const string DummyOrchestrationServiceName.*/g,''). + replace(/, 'DummyOrchestrationServiceName'/g,''); ``` ``` yaml $(csharp) && !$(multiapi) && !$(csharp-profile) diff --git a/specification/compute/resource-manager/readme.go.md b/specification/compute/resource-manager/readme.go.md index 7c4552f5e38c..6429e087e0ca 100644 --- a/specification/compute/resource-manager/readme.go.md +++ b/specification/compute/resource-manager/readme.go.md @@ -6,12 +6,32 @@ These settings apply only when `--go` is specified on the command line. go: license-header: MICROSOFT_APACHE_NO_VERSION clear-output-folder: true + +directive: + # dynamically add a DummyOrchestrationServiceName value to the enum + - from: compute.json + where: $..enum + transform: >- + if( $.length === 1 && $[0] === "AutomaticRepairs") { + $.push('DummyOrchestrationServiceName'); + } + return $; + + - from: source-file-go + where: $ + transform: >- + return $. + replace(/\/\/ DummyOrchestrationServiceName .../g,''). + replace(/DummyOrchestrationServiceName OrchestrationServiceNames = "DummyOrchestrationServiceName"\n/g,''). + replace(/,DummyOrchestrationServiceName/,''). + replace(/, 'DummyOrchestrationServiceName'/,''); ``` ### Go multi-api ```yaml $(go) && $(multiapi) batch: + - tag: package-2019-12-01 - tag: package-2019-07 - tag: package-2019-03-01 - tag: package-2018-10-01 @@ -29,6 +49,16 @@ batch: - tag: package-container-service-2015-11-preview ``` +### Tag: package-2019-12-01 and go + +These settings apply only when `--tag=package-2019-12-01 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +```yaml $(tag)=='package-2019-12-01' && $(go) +namespace: compute +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2019-12-01/$(namespace) +``` + ### Tag: package-2019-07 and go These settings apply only when `--tag=package-2019-07 --go` is specified on the command line. diff --git a/specification/compute/resource-manager/readme.md b/specification/compute/resource-manager/readme.md index 814383963dee..fd00318c0fe8 100644 --- a/specification/compute/resource-manager/readme.md +++ b/specification/compute/resource-manager/readme.md @@ -34,7 +34,7 @@ These are the global settings for the Compute API. title: ComputeManagementClient description: Compute Client openapi-type: arm -tag: package-2019-07 +tag: package-2019-12-01 directive: - where: @@ -189,6 +189,14 @@ directive: - $.definitions.DiskUpdateProperties.properties.diskIOPSReadWrite suppress: - DefinitionsPropertiesNamesCamelCase + - where: + - $.definitions.DiskProperties.properties.diskIOPSReadOnly + suppress: + - DefinitionsPropertiesNamesCamelCase + - where: + - $.definitions.DiskUpdateProperties.properties.diskIOPSReadOnly + suppress: + - DefinitionsPropertiesNamesCamelCase - where: - $.definitions.DataDisk.properties.diskIOPSReadWrite suppress: @@ -206,6 +214,55 @@ directive: - ACS service is deprecated so a PATCH endpoint won't be implemented ``` + +### Tag: package-2019-12-01 + +These settings apply only when `--tag=package-2019-12-01` is specified on the command line. + +``` yaml $(tag) == 'package-2019-12-01' +input-file: +- Microsoft.Compute/stable/2019-12-01/compute.json +- Microsoft.Compute/stable/2019-12-01/runCommands.json +- Microsoft.Compute/stable/2019-04-01/skus.json +- Microsoft.Compute/stable/2019-11-01/disk.json +- Microsoft.Compute/stable/2019-12-01/gallery.json +- Microsoft.ContainerService/stable/2017-01-31/containerService.json +``` + +### Tag: package-2019-12-01-only + +These settings apply only when `--tag=package-2019-12-01-only` is specified on the command line. + +``` yaml $(tag) == 'package-2019-12-01-only' +input-file: +- Microsoft.Compute/stable/2019-12-01/compute.json +- Microsoft.Compute/stable/2019-12-01/runCommands.json +- Microsoft.Compute/stable/2019-12-01/gallery.json +``` + +### Tag: package-2019-11-01 + +These settings apply only when `--package-2019-11-01` is specified on the command line. + +``` yaml $(tag) == 'package-2019-11-01' +input-file: +- Microsoft.Compute/stable/2019-07-01/compute.json +- Microsoft.Compute/stable/2019-07-01/runCommands.json +- Microsoft.Compute/stable/2019-04-01/skus.json +- Microsoft.Compute/stable/2019-11-01/disk.json +- Microsoft.Compute/stable/2019-07-01/gallery.json +- Microsoft.ContainerService/stable/2017-01-31/containerService.json +``` + +### Tag: package-2019-11-01-only + +These settings apply only when `--package-2019-11-01-only` is specified on the command line. + +``` yaml $(tag) == 'package-2019-11-01-only' +input-file: +- Microsoft.Compute/stable/2019-11-01/disk.json +``` + ### Tag: package-2019-07 These settings apply only when `--tag=package-2019-07` is specified on the command line. @@ -717,12 +774,16 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(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-04-01/skus.json + - $(this-folder)/Microsoft.Compute/stable/2019-11-01/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/2019-07-01/compute.json - $(this-folder)/Microsoft.Compute/stable/2019-07-01/runCommands.json - - $(this-folder)/Microsoft.Compute/stable/2019-04-01/skus.json - - $(this-folder)/Microsoft.Compute/stable/2019-07-01/disk.json - $(this-folder)/Microsoft.Compute/stable/2019-07-01/gallery.json - - $(this-folder)/Microsoft.ContainerService/stable/2017-01-31/containerService.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 diff --git a/specification/compute/resource-manager/readme.nodejs.md b/specification/compute/resource-manager/readme.nodejs.md index 63a5186f2644..ee164648a54e 100644 --- a/specification/compute/resource-manager/readme.nodejs.md +++ b/specification/compute/resource-manager/readme.nodejs.md @@ -12,4 +12,20 @@ nodejs: generate-license-txt: true generate-package-json: true generate-readme-md: false + +directive: + # dynamically add a DummyOrchestrationServiceName value to the enum + - from: compute.json + where: $..enum + transform: >- + if( $.length === 1 && $[0] === "AutomaticRepairs") { + $.push('DummyOrchestrationServiceName'); + } + return $; + + - from: source-file-nodejs + where: $ + transform: >- + return $. + replace(/[,*] 'DummyOrchestrationServiceName'/g,''); ``` diff --git a/specification/compute/resource-manager/readme.python.md b/specification/compute/resource-manager/readme.python.md index 3555b6551350..07382513e166 100644 --- a/specification/compute/resource-manager/readme.python.md +++ b/specification/compute/resource-manager/readme.python.md @@ -2,7 +2,7 @@ These settings apply only when `--python` is specified on the command line. -``` yaml $(python) +``` yaml !$(track2) python: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION @@ -10,14 +10,62 @@ python: package-name: azure-mgmt-compute no-namespace-folders: true clear-output-folder: true + +directive: + # dynamically add a DummyOrchestrationServiceName value to the enum + - from: compute.json + where: $..enum + transform: >- + if( $.length === 1 && $[0] === "AutomaticRepairs") { + $.push('DummyOrchestrationServiceName'); + } + return $; + + - from: source-file-python + where: $ + transform: >- + return $. + replace(/, 'DummyOrchestrationServiceName'/g,''). + replace(/dummy_orchestration_service_name = "DummyOrchestrationServiceName"/g,''); +``` + +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-compute +no-namespace-folders: true ``` ### Python multi-api Generate all API versions currently shipped for this package -```yaml $(python) && $(multiapi) +```yaml $(multiapi) && !$(track2) +batch: + - tag: package-2019-12-01-only + - tag: package-2019-11-01-only + - tag: package-2019-07-01-only + - tag: package-2019-04-01-only + - tag: package-2019-03-01-only + - tag: package-2018-10-01-only + - tag: package-2018-09-30-only + - tag: package-compute-only-2018-06 + - tag: package-compute-2018-04 + - tag: package-compute-only-2017-12 + - tag: package-skus-2017-09 + - tag: package-compute-2017-03 + - tag: package-compute-2016-04-preview + - tag: package-compute-2016-03 + - tag: package-compute-2015-06 +``` + +```yaml $(multiapi) && $(track2) +clear-output-folder: true batch: + - tag: package-2019-12-01-only + - tag: package-2019-11-01-only - tag: package-2019-07-01-only - tag: package-2019-04-01-only - tag: package-2019-03-01-only @@ -31,6 +79,39 @@ batch: - tag: package-compute-2016-04-preview - tag: package-compute-2016-03 - tag: package-compute-2015-06 + - multiapiscript: true +``` + +``` yaml $(multiapiscript) +output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/ +clear-output-folder: false +perform-load: false +``` + +### Tag: package-2019-12-01-only and python + +These settings apply only when `--tag=package-2019-12-01-only --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2019-12-01-only' +namespace: azure.mgmt.compute.v2019_12_01 +output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2019_12_01 +python: + namespace: azure.mgmt.compute.v2019_12_01 + output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2019_12_01 +``` + +### Tag: package-2019-11-01-only and python + +These settings apply only when `--tag=package-2019-11-01-only --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2019-11-01-only' +namespace: azure.mgmt.compute.v2019_11_01 +output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2019_11_01 +python: + namespace: azure.mgmt.compute.v2019_11_01 + output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2019_11_01 ``` ### Tag: package-2019-07-01-only and python @@ -38,7 +119,9 @@ batch: These settings apply only when `--tag=package-2019-07-01-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2019-07-01-only' && $(python) +``` yaml $(tag) == 'package-2019-07-01-only' +namespace: azure.mgmt.compute.v2019_07_01 +output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2019_07_01 python: namespace: azure.mgmt.compute.v2019_07_01 output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2019_07_01 @@ -49,7 +132,9 @@ python: These settings apply only when `--tag=package-2019-04-01-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2019-04-01-only' && $(python) +``` yaml $(tag) == 'package-2019-04-01-only' +namespace: azure.mgmt.compute.v2019_04_01 +output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2019_04_01 python: namespace: azure.mgmt.compute.v2019_04_01 output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2019_04_01 @@ -60,7 +145,9 @@ python: These settings apply only when `--tag=package-2019-03-01-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2019-03-01-only' && $(python) +``` yaml $(tag) == 'package-2019-03-01-only' +namespace: azure.mgmt.compute.v2019_03_01 +output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2019_03_01 python: namespace: azure.mgmt.compute.v2019_03_01 output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2019_03_01 @@ -71,7 +158,9 @@ python: These settings apply only when `--tag=package-2018-10-01-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-10-01-only' && $(python) +``` yaml $(tag) == 'package-2018-10-01-only' +namespace: azure.mgmt.compute.v2018_10_01 +output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01 python: namespace: azure.mgmt.compute.v2018_10_01 output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2018_10_01 @@ -82,7 +171,9 @@ python: These settings apply only when `--tag=package-2018-09-30-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-09-30-only' && $(python) +``` yaml $(tag) == 'package-2018-09-30-only' +namespace: azure.mgmt.compute.v2018_09_30 +output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2018_09_30 python: namespace: azure.mgmt.compute.v2018_09_30 output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2018_09_30 @@ -93,7 +184,9 @@ python: These settings apply only when `--tag=package-compute-only-2018-06 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-compute-only-2018-06' && $(python) +``` yaml $(tag) == 'package-compute-only-2018-06' +namespace: azure.mgmt.compute.v2018_06_01 +output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01 python: namespace: azure.mgmt.compute.v2018_06_01 output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2018_06_01 @@ -104,7 +197,9 @@ python: These settings apply only when `--tag=package-compute-2018-04 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-compute-2018-04' && $(python) +``` yaml $(tag) == 'package-compute-2018-04' +namespace: azure.mgmt.compute.v2018_04_01 +output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01 python: namespace: azure.mgmt.compute.v2018_04_01 output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2018_04_01 @@ -115,7 +210,9 @@ python: These settings apply only when `--tag=package-compute-only-2017-12 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-compute-only-2017-12' && $(python) +``` yaml $(tag) == 'package-compute-only-2017-12' +namespace: azure.mgmt.compute.v2017_12_01 +output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01 python: namespace: azure.mgmt.compute.v2017_12_01 output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2017_12_01 @@ -126,7 +223,9 @@ python: These settings apply only when `--tag=package-skus-2017-09 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-skus-2017-09' && $(python) +``` yaml $(tag) == 'package-skus-2017-09' +namespace: azure.mgmt.compute.v2017_09_01 +output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2017_09_01 python: namespace: azure.mgmt.compute.v2017_09_01 output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2017_09_01 @@ -137,7 +236,9 @@ python: These settings apply only when `--tag=package-compute-2017-03 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-compute-2017-03' && $(python) +``` yaml $(tag) == 'package-compute-2017-03' +namespace: azure.mgmt.compute.v2017_03_30 +output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30 python: namespace: azure.mgmt.compute.v2017_03_30 output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2017_03_30 @@ -148,7 +249,9 @@ python: These settings apply only when `--tag=package-compute-2016-04-preview --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-compute-2016-04-preview' && $(python) +``` yaml $(tag) == 'package-compute-2016-04-preview' +namespace: azure.mgmt.compute.v2016_04_30_preview +output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview python: namespace: azure.mgmt.compute.v2016_04_30_preview output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2016_04_30_preview @@ -159,7 +262,9 @@ python: These settings apply only when `--tag=package-compute-2016-03 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-compute-2016-03' && $(python) +``` yaml $(tag) == 'package-compute-2016-03' +namespace: azure.mgmt.compute.v2016_03_30 +output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30 python: namespace: azure.mgmt.compute.v2016_03_30 output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2016_03_30 @@ -170,7 +275,9 @@ python: These settings apply only when `--tag=package-compute-2015-06 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-compute-2015-06' && $(python) +``` yaml $(tag) == 'package-compute-2015-06' +namespace: azure.mgmt.compute.v2015_06_15 +output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15 python: namespace: azure.mgmt.compute.v2015_06_15 output-folder: $(python-sdks-folder)/compute/azure-mgmt-compute/azure/mgmt/compute/v2015_06_15 diff --git a/specification/compute/resource-manager/readme.ruby.md b/specification/compute/resource-manager/readme.ruby.md index d6d4616853ed..3127e109c081 100644 --- a/specification/compute/resource-manager/readme.ruby.md +++ b/specification/compute/resource-manager/readme.ruby.md @@ -6,12 +6,30 @@ These settings apply only when `--ruby` is specified on the command line. package-name: azure_mgmt_compute package-version: "0.17.1" azure-arm: true + +directive: + # dynamically add a DummyOrchestrationServiceName value to the enum + - from: compute.json + where: $..enum + transform: >- + if( $.length === 1 && $[0] === "AutomaticRepairs") { + $.push('DummyOrchestrationServiceName'); + } + return $; + + - from: source-file-ruby + where: $ + transform: >- + return $. + replace(/, 'DummyOrchestrationServiceName'/g,''). + replace(/DummyOrchestrationServiceName = "DummyOrchestrationServiceName"/g,''); ``` ### Ruby multi-api ``` yaml $(ruby) && $(multiapi) batch: + - tag: package-compute-2019-12 - tag: package-disks-2018-04 - tag: package-compute-only-2017-12 - tag: package-skus-2017-09 @@ -21,6 +39,16 @@ batch: - tag: package-compute-2015-06 ``` +### Tag: package-compute-2019-12 and ruby + +These settings apply only when `--tag=package-compute-2019-12 --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-compute-2019-12' && $(ruby) +namespace: "Azure::Compute::Mgmt::V2019_12_01" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_compute/lib +``` + ### Tag: package-disks-2018-04 and ruby These settings apply only when `--tag=package-disks-2018-04 --ruby` is specified on the command line. diff --git a/specification/compute/resource-manager/readme.typescript.md b/specification/compute/resource-manager/readme.typescript.md index edaa0c805343..e1e93d3bc56d 100644 --- a/specification/compute/resource-manager/readme.typescript.md +++ b/specification/compute/resource-manager/readme.typescript.md @@ -9,6 +9,22 @@ Please also specify `--typescript-sdks-folder=- + if( $.length === 1 && $[0] === "AutomaticRepairs") { + $.push('DummyOrchestrationServiceName'); + } + return $; + + - from: source-file-typescript + where: $ + transform: >- + return $. + replace(/[,|*] 'DummyOrchestrationServiceName'/g,''); ``` ``` yaml $(typescript) && !$(profile) diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-06-01/consumption.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-06-01/consumption.json index 78c4194a23fe..8126edf921b9 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-06-01/consumption.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-06-01/consumption.json @@ -104,7 +104,7 @@ }, { "name": "$filter", - "description": "May be used to filter usageDetails by properties/resourceGroup, properties/resourceName, properties/resourceId, properties/chargeType, properties/reservationId, properties/publisherType or tags. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:). PublisherType Filter accepts two values azure and marketplace and it is currently supported for Web Direct Offer Type", + "description": "May be used to filter usageDetails by properties/resourceGroup, properties/resourceName, properties/instanceId, properties/chargeType, properties/reservationId, properties/publisherType or tags. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:). PublisherType Filter accepts two values azure and marketplace and it is currently supported for Web Direct Offer Type", "in": "query", "required": false, "type": "string" 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 6dc8579fdee0..95bb524fa902 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 @@ -804,7 +804,7 @@ { "name": "startDate", "in": "query", - "description": "Start date", + "description": "Start date. Only applicable when querying with billing profile", "required": false, "type": "string", "x-ms-parameter-location": "method" @@ -812,14 +812,14 @@ { "name": "endDate", "in": "query", - "description": "End date", + "description": "End date. Only applicable when querying with billing profile", "required": false, "type": "string", "x-ms-parameter-location": "method" }, { "name": "$filter", - "description": "Required only for daily grain. The properties/UsageDate for start date and end date. The filter supports 'le' and 'ge'", + "description": "Required only for daily grain. The properties/UsageDate for start date and end date. The filter supports 'le' and 'ge'. Not applicable when querying with billing profile", "in": "query", "required": false, "type": "string" @@ -973,7 +973,7 @@ { "name": "startDate", "in": "query", - "description": "Start date", + "description": "Start date. Only applicable when querying with billing profile", "required": false, "type": "string", "x-ms-parameter-location": "method" @@ -981,14 +981,14 @@ { "name": "endDate", "in": "query", - "description": "End date", + "description": "End date. Only applicable when querying with billing profile", "required": false, "type": "string", "x-ms-parameter-location": "method" }, { "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'. Not applicable when querying with billing profile", "in": "query", "required": false, "type": "string" @@ -1042,11 +1042,7 @@ }, "parameters": [ { - "name": "$filter", - "description": "May be used to filter reservationRecommendations by properties/scope and properties/lookBackPeriod.", - "in": "query", - "required": false, - "type": "string" + "$ref": "#/parameters/filterParameter" }, { "$ref": "#/parameters/apiVersionParameter" @@ -1092,7 +1088,7 @@ "parameters": [ { "name": "$filter", - "description": "Filter reservation transactions by date range. The properties/UsageDate for start date and end date. The filter supports 'le' and 'ge' ", + "description": "Filter reservation transactions by date range. The properties/EventDate for start date and end date. The filter supports 'le' and 'ge' ", "in": "query", "required": false, "type": "string" @@ -4019,7 +4015,7 @@ } }, "ErrorResponse": { - "description": "Error response indicates that the service is not able to process the incoming request. The reason is provided in the error message.", + "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": { @@ -4648,6 +4644,14 @@ } ] } + }, + "filterParameter": { + "name": "$filter", + "in": "query", + "description": "May be used to filter reservationRecommendations by: properties/scope with allowed values ['Single', 'Shared'] and default value 'Single'; properties/resourceType with allowed values ['VirtualMachines', 'SQLDatabases', 'PostgreSQL', 'ManagedDisk', 'MySQL', 'RedHat', 'MariaDB', 'RedisCache', 'CosmosDB', 'SqlDataWarehouse', 'SUSELinux', 'AppService', 'BlockBlob', 'AzureDataExplorer', 'VMwareCloudSimple'] and default value 'VirtualMachines'; and properties/lookBackPeriod with allowed values ['Last7Days', 'Last30Days', 'Last60Days'] and default value 'Last7Days'.", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" } } } diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesDailyWithBillingProfileId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesDailyWithBillingProfileId.json index d9f9a88a373b..85ccaf285c6c 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesDailyWithBillingProfileId.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationSummariesDailyWithBillingProfileId.json @@ -3,7 +3,8 @@ "api-version": "2019-10-01", "scope": "providers/Microsoft.Billing/billingAccounts/12345:2468/billingProfiles/13579", "grain": "daily", - "$filter": "properties/usageDate ge '2017-10-01' AND properties/usageDate le '2017-11-20'" + "startDate": "2017-10-01", + "endDate": "2017-11-20" }, "responses": { "200": { diff --git a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationTransactionsListByBillingAccountId.json b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationTransactionsListByBillingAccountId.json index 6e4975760026..6ce54b6b472a 100644 --- a/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationTransactionsListByBillingAccountId.json +++ b/specification/consumption/resource-manager/Microsoft.Consumption/stable/2019-10-01/examples/ReservationTransactionsListByBillingAccountId.json @@ -2,7 +2,7 @@ "parameters": { "api-version": "2019-10-01", "billingAccountId": "123456", - "$filter": "properties/usageDate ge '2019-09-09' AND properties/usageDate le '2019-09-10'" + "$filter": "properties/eventDate ge '2019-09-09' AND properties/eventDate le '2019-09-10'" }, "responses": { "200": { diff --git a/specification/containerregistry/data-plane/readme.go.md b/specification/containerregistry/data-plane/readme.go.md index f82d86b06f25..7bac0f179831 100644 --- a/specification/containerregistry/data-plane/readme.go.md +++ b/specification/containerregistry/data-plane/readme.go.md @@ -21,9 +21,19 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2019-08 - tag: package-2019-07 ``` +### Tag: package-2019-08 and go + +These settings apply only when `--tag=package-2019-08 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2019-08' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/runtime/2019-08-15-preview/$(namespace) +``` + ### Tag: package-2019-07 and go These settings apply only when `--tag=package-2019-07 --go` is specified on the command line. diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-05-01-preview/containerregistry_scopemap.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-05-01-preview/containerregistry_scopemap.json index 0644ab147455..2d5a1fd19e2a 100644 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-05-01-preview/containerregistry_scopemap.json +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-05-01-preview/containerregistry_scopemap.json @@ -672,10 +672,6 @@ "description": "The resource ID of the scope map to which the token will be associated with.", "type": "string" }, - "objectId": { - "description": "The user/group/application object ID for which the token has to be created.", - "type": "string" - }, "credentials": { "$ref": "#/definitions/TokenCredentialsProperties", "description": "The credentials that can be used for authenticating the token." @@ -698,6 +694,9 @@ "description": "The properties of the credentials that can be used for authenticating the token.", "type": "object", "properties": { + "activeDirectoryObject": { + "$ref": "#/definitions/ActiveDirectoryObject" + }, "certificates": { "type": "array", "items": { @@ -712,6 +711,20 @@ } } }, + "ActiveDirectoryObject": { + "description": "The Active Directory Object that will be used for authenticating the token of a container registry.", + "type": "object", + "properties": { + "objectId": { + "description": "The user/group/application object ID for Active Directory Object that will be used for authenticating the token of a container registry.", + "type": "string" + }, + "tenantId": { + "description": "The tenant ID of user/group/application object Active Directory Object that will be used for authenticating the token of a container registry.", + "type": "string" + } + } + }, "TokenCertificate": { "description": "The properties of a certificate used for authenticating a token.", "type": "object", diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/containerregistry_build.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/containerregistry_build.json index 9efa945a01a4..a4689a1792a2 100644 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/containerregistry_build.json +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/containerregistry_build.json @@ -16,6 +16,306 @@ "application/json" ], "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/agentPools/{agentPoolName}": { + "get": { + "tags": [ + "AgentPools" + ], + "description": "Gets the detailed information for a given agent pool.", + "operationId": "AgentPools_Get", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/AgentPoolNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/AgentPool" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the registry/agentpool doesn't exist, 404 (Not found) is returned.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "AgentPools_Get": { + "$ref": "./examples/AgentPoolsGet.json" + } + } + }, + "put": { + "tags": [ + "AgentPools" + ], + "description": "Creates an agent pool for a container registry with the specified parameters.", + "operationId": "AgentPools_Create", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/AgentPoolNameParameter" + }, + { + "name": "agentPool", + "in": "body", + "description": "The parameters of an agent pool that needs to scheduled.", + "required": true, + "schema": { + "$ref": "#/definitions/AgentPool" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/AgentPool" + } + }, + "201": { + "description": "The request was successfully accepted; the operation will complete asynchronously. The provisioning state of the resource should indicate the current state of the resource.", + "schema": { + "$ref": "#/definitions/AgentPool" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the registry doesn't exist, 404 (Not found) is returned. If any of the input parameters is wrong, 400(Bad Request) is returned.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "AgentPools_Create": { + "$ref": "./examples/AgentPoolsCreate.json" + } + } + }, + "delete": { + "tags": [ + "AgentPools" + ], + "description": "Deletes a specified agent pool resource.", + "operationId": "AgentPools_Delete", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/AgentPoolNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "202": { + "description": "The request was successfully accepted; the operation will complete asynchronously." + }, + "204": { + "description": "No Content - the specified resource was not found." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "AgentPools_Delete": { + "$ref": "./examples/AgentPoolsDelete.json" + } + } + }, + "patch": { + "tags": [ + "AgentPools" + ], + "description": "Updates an agent pool with the specified parameters.", + "operationId": "AgentPools_Update", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/AgentPoolNameParameter" + }, + { + "name": "updateParameters", + "in": "body", + "description": "The parameters for updating an agent pool.", + "required": true, + "schema": { + "$ref": "#/definitions/AgentPoolUpdateParameters" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/AgentPool" + } + }, + "201": { + "description": "The request was successfully accepted; the operation will complete asynchronously. The provisioning state of the resource should indicate the current state of the resource.", + "schema": { + "$ref": "#/definitions/AgentPool" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the registry doesn't exist, 404 (Not found) is returned. If any of the input parameters is wrong, 400(Bad Request) is returned.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "AgentPools_Update": { + "$ref": "./examples/AgentPoolsUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/agentPools": { + "get": { + "tags": [ + "AgentPools" + ], + "description": "Lists all the agent pools for a specified container registry.", + "operationId": "AgentPools_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/AgentPoolListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "AgentPools_List": { + "$ref": "./examples/AgentPoolsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/agentPools/{agentPoolName}/listQueueStatus": { + "post": { + "tags": [ + "AgentPools" + ], + "description": "Gets the count of queued runs for a given agent pool.", + "operationId": "AgentPools_GetQueueStatus", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/AgentPoolNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/AgentPoolQueueStatus" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the registry/agentpool doesn't exist, 404 (Not found) is returned.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "AgentPools_GetQueueStatus": { + "$ref": "./examples/AgentPoolsGetQueueStatus.json" + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/scheduleRun": { "post": { "tags": [ @@ -59,7 +359,7 @@ "default": { "description": "Error response describing why the operation failed. If the registry/run doesn't exist, 404 (Not found) is returned. If any of the input parameters is wrong, 400(Bad Request) is returned.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -117,7 +417,7 @@ "default": { "description": "Error response describing why the operation failed. If the registry doesn't exist, 404 (Not found) is returned.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -174,7 +474,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -227,7 +527,7 @@ "default": { "description": "Error response describing why the operation failed. If the registry/run doesn't exist, 404 (Not found) is returned.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -289,7 +589,7 @@ "default": { "description": "Error response describing why the operation failed. If the registry/build doesn't exist, 404 (Not found) is returned. If any of the input parameters is wrong, 400(Bad Request) is returned.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -339,7 +639,7 @@ "default": { "description": "Error response describing why the operation failed. If the registry/run doesn't exist, 404 (Not found) is returned.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -388,7 +688,7 @@ "default": { "description": "Error response describing why the operation failed. If the registry/run doesn't exist, 404 (Not found) is returned.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -438,7 +738,7 @@ "default": { "description": "Error response describing why the operation failed. If the registry/run doesn't exist, 404 (Not found) is returned.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -500,7 +800,7 @@ "default": { "description": "Error response describing why the operation failed. If the registry doesn't exist, 404 (Not found) is returned. If any of the input parameters is wrong, 400(Bad Request) is returned.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -551,7 +851,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -614,7 +914,7 @@ "default": { "description": "Error response describing why the operation failed. If the registry doesn't exist, 404 (Not found) is returned. If any of the input parameters is wrong, 400(Bad Request) is returned.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -626,6 +926,55 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/taskRuns/{taskRunName}/listDetails": { + "post": { + "tags": [ + "TaskRuns" + ], + "description": "Gets the detailed information for a given task run that includes all secrets.", + "operationId": "TaskRuns_GetDetails", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "taskRunName", + "in": "path", + "description": "The run request name.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/TaskRun" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the registry/run doesn't exist, 404 (Not found) is returned.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "TaskRuns_GetDetails": { + "$ref": "./examples/TaskRunsGetDetails.json" + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/taskRuns": { "get": { "tags": [ @@ -657,7 +1006,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -702,7 +1051,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -750,7 +1099,7 @@ "default": { "description": "Error response describing why the operation failed. If the registry doesn't exist, 404 (Not found) is returned.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -808,7 +1157,7 @@ "default": { "description": "Error response describing why the operation failed. If the registry doesn't exist, 404 (Not found) is returned. If any of the input parameters is wrong, 400(Bad Request) is returned.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -864,7 +1213,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -923,7 +1272,7 @@ "default": { "description": "Error response describing why the operation failed. If the registry doesn't exist, 404 (Not found) is returned. If any of the input parameters is wrong, 400(Bad Request) is returned.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -978,7 +1327,7 @@ "default": { "description": "Error response describing why the operation failed. If the registry doesn't exist, 404 (Not found) is returned.", "schema": { - "$ref": "#/definitions/ErrorSchema" + "$ref": "#/definitions/ErrorResponse" } } }, @@ -991,6 +1340,126 @@ } }, "definitions": { + "AgentPool": { + "description": "The agentpool that has the ARM resource and properties. \r\nThe agentpool will have all information to create an agent pool.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/AgentPoolProperties", + "description": "The properties associated with the agent pool", + "x-ms-client-flatten": true + } + } + }, + "AgentPoolProperties": { + "description": "The properties of agent pool.", + "type": "object", + "properties": { + "count": { + "format": "int32", + "description": "The count of agent machine", + "type": "integer" + }, + "tier": { + "description": "The Tier of agent machine", + "type": "string" + }, + "os": { + "description": "The OS of agent machine", + "enum": [ + "Windows", + "Linux" + ], + "type": "string", + "x-ms-enum": { + "name": "OS", + "modelAsString": true + } + }, + "virtualNetworkSubnetResourceId": { + "description": "The Virtual Network Subnet Resource Id of the agent machine", + "type": "string" + }, + "provisioningState": { + "description": "The provisioning state of this agent pool", + "enum": [ + "Creating", + "Updating", + "Deleting", + "Succeeded", + "Failed", + "Canceled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + } + } + }, + "AgentPoolUpdateParameters": { + "description": "The parameters for updating an agent pool.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/AgentPoolPropertiesUpdateParameters", + "description": "The properties associated with the agent pool", + "x-ms-client-flatten": true + }, + "tags": { + "description": "The ARM resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "AgentPoolPropertiesUpdateParameters": { + "type": "object", + "properties": { + "count": { + "format": "int32", + "description": "The count of agent machine", + "type": "integer" + } + } + }, + "AgentPoolListResult": { + "description": "The collection of agent pools.", + "type": "object", + "properties": { + "value": { + "description": "The collection value.", + "type": "array", + "items": { + "$ref": "#/definitions/AgentPool" + } + }, + "nextLink": { + "description": "The URI that can be used to request the next set of paged results.", + "type": "string" + } + } + }, + "AgentPoolQueueStatus": { + "description": "The QueueStatus of Agent Pool", + "type": "object", + "properties": { + "count": { + "format": "int32", + "description": "The number of pending runs in the queue", + "type": "integer" + } + } + }, "RunRequest": { "description": "The request parameters for scheduling a run.", "required": [ @@ -1006,6 +1475,10 @@ "description": "The value that indicates whether archiving is enabled for the run or not.", "default": false, "type": "boolean" + }, + "agentPoolName": { + "description": "The dedicated agent pool for the run.", + "type": "string" } }, "discriminator": "type" @@ -1071,6 +1544,10 @@ "modelAsString": true } }, + "agentPoolName": { + "description": "The dedicated agent pool for the run.", + "type": "string" + }, "createTime": { "format": "date-time", "description": "The time the run was scheduled.", @@ -1403,6 +1880,10 @@ "taskName": { "description": "The name of the task that the run corresponds to.", "type": "string" + }, + "agentPoolName": { + "description": "The name of the agent pool that the run corresponds to.", + "type": "string" } } }, @@ -1671,6 +2152,10 @@ "$ref": "#/definitions/AgentProperties", "description": "The machine configuration of the run agent." }, + "agentPoolName": { + "description": "The dedicated agent pool for the task.", + "type": "string" + }, "timeout": { "format": "int32", "description": "Run timeout in seconds.", @@ -2117,6 +2602,10 @@ "$ref": "#/definitions/AgentProperties", "description": "The machine configuration of the run agent." }, + "agentPoolName": { + "description": "The dedicated agent pool for the task.", + "type": "string" + }, "timeout": { "format": "int32", "description": "Run timeout in seconds.", @@ -2491,7 +2980,7 @@ }, "x-ms-azure-resource": true }, - "Error": { + "ErrorResponseBody": { "description": "An error response from the Azure Container Registry service.", "required": [ "code", @@ -2508,11 +2997,11 @@ } } }, - "ErrorSchema": { + "ErrorResponse": { "description": "An error response from the Azure Container Registry service.", "properties": { "error": { - "$ref": "#/definitions/Error", + "$ref": "#/definitions/ErrorResponseBody", "description": "Azure container registry build API error body." } } @@ -3068,6 +3557,17 @@ "minLength": 5, "pattern": "^[a-zA-Z0-9-_]*$", "x-ms-parameter-location": "method" + }, + "AgentPoolNameParameter": { + "name": "agentPoolName", + "in": "path", + "description": "The name of the agent pool.", + "required": true, + "type": "string", + "maxLength": 20, + "minLength": 3, + "pattern": "^[a-zA-Z0-9-]*$", + "x-ms-parameter-location": "method" } }, "securityDefinitions": { diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/AgentPoolsCreate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/AgentPoolsCreate.json new file mode 100644 index 000000000000..1f2db43777be --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/AgentPoolsCreate.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "api-version": "2019-06-01-preview", + "agentPoolName": "myAgentPool", + "agentPool": { + "location": "WESTUS", + "tags": { + "key": "value" + }, + "properties": { + "count": 1, + "tier": "S1", + "os": "Linux" + } + } + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.ContainerRegistry/registries/agentPools", + "properties": { + "count": 1, + "tier": "S1", + "os": "Linux", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/f9d7ebed-adbd-4cb4-b973-aaf82c136138/resourceGroups/huanwudfwestgroup/providers/Microsoft.ContainerRegistry/registries/huanglidfwest01/agentPools/testagent26", + "name": "myAgentPool", + "location": "WESTUS" + } + }, + "201": { + "body": { + "type": "Microsoft.ContainerRegistry/registries/agentPools", + "properties": { + "count": 1, + "tier": "S1", + "os": "Linux", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/f9d7ebed-adbd-4cb4-b973-aaf82c136138/resourceGroups/huanwudfwestgroup/providers/Microsoft.ContainerRegistry/registries/huanglidfwest01/agentPools/testagent26", + "name": "myAgentPool", + "location": "WESTUS" + } + } + } +} diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/AgentPoolsDelete.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/AgentPoolsDelete.json new file mode 100644 index 000000000000..3665de0eccfa --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/AgentPoolsDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "api-version": "2019-06-01-preview", + "agentPoolName": "myAgentPool" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/AgentPoolsGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/AgentPoolsGet.json new file mode 100644 index 000000000000..fe5b8f74e80a --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/AgentPoolsGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "api-version": "2019-06-01-preview", + "agentPoolName": "myAgentPool" + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.ContainerRegistry/registries/agentPools", + "properties": { + "count": 1, + "tier": "S1", + "os": "Linux", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/f9d7ebed-adbd-4cb4-b973-aaf82c136138/resourceGroups/huanwudfwestgroup/providers/Microsoft.ContainerRegistry/registries/huanglidfwest01/agentPools/testagent26", + "name": "myAgentPool", + "location": "WESTUS" + } + } + } +} diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/AgentPoolsGetQueueStatus.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/AgentPoolsGetQueueStatus.json new file mode 100644 index 000000000000..1bb8b2888354 --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/AgentPoolsGetQueueStatus.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "api-version": "2019-06-01-preview", + "agentPoolName": "myAgentPool" + }, + "responses": { + "200": { + "body": { + "count": 10 + } + } + } +} diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/AgentPoolsList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/AgentPoolsList.json new file mode 100644 index 000000000000..8123ecc9c053 --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/AgentPoolsList.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "api-version": "2019-06-01-preview", + "agentPoolName": "myAgentPool" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "type": "Microsoft.ContainerRegistry/registries/agentPools", + "properties": { + "count": 1, + "tier": "S1", + "os": "Linux", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/f9d7ebed-adbd-4cb4-b973-aaf82c136138/resourceGroups/huanwudfwestgroup/providers/Microsoft.ContainerRegistry/registries/huanglidfwest01/agentPools/testagent26", + "name": "myAgentPool", + "location": "WESTUS" + } + ] + } + } + } +} diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/AgentPoolsUpdate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/AgentPoolsUpdate.json new file mode 100644 index 000000000000..c87373740297 --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/AgentPoolsUpdate.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "api-version": "2019-06-01-preview", + "agentPoolName": "myAgentPool", + "updateParameters": { + "properties": { + "count": 1 + } + } + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.ContainerRegistry/registries/agentPools", + "properties": { + "count": 1, + "tier": "S1", + "os": "Linux", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/f9d7ebed-adbd-4cb4-b973-aaf82c136138/resourceGroups/huanwudfwestgroup/providers/Microsoft.ContainerRegistry/registries/huanglidfwest01/agentPools/testagent26", + "name": "myAgentPool", + "location": "WESTUS" + } + }, + "201": { + "body": { + "type": "Microsoft.ContainerRegistry/registries/agentPools", + "properties": { + "count": 1, + "tier": "S1", + "os": "Linux", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/f9d7ebed-adbd-4cb4-b973-aaf82c136138/resourceGroups/huanwudfwestgroup/providers/Microsoft.ContainerRegistry/registries/huanglidfwest01/agentPools/testagent26", + "name": "myAgentPool", + "location": "WESTUS" + } + } + } +} diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/TaskRunsGetDetails.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/TaskRunsGetDetails.json new file mode 100644 index 000000000000..756b24ef7dcd --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-06-01-preview/examples/TaskRunsGetDetails.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "api-version": "2019-06-01-preview", + "taskRunName": "myRun" + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.ContainerRegistry/registries/TaskRuns", + "properties": { + "provisioningState": "Succeeded", + "runRequest": { + "type": "EncodedTaskRunRequest", + "encodedTaskContent": "c3RlcHM6IAogIC0gY21kOiB7eyAuVmFsdWVzLmNvbW1hbmQgfX0K", + "encodedValuesContent": "Y29tbWFuZDogYmFzaCBlY2hvIHt7LlJ1bi5SZWdpc3RyeX19Cg==", + "values": [], + "platform": { + "os": "Linux", + "architecture": "amd64" + }, + "credentials": {}, + "isArchiveEnabled": true + }, + "runResult": { + "type": "Microsoft.ContainerRegistry/registries/runs", + "properties": { + "runId": "yd5", + "status": "Succeeded", + "lastUpdatedTime": "2019-09-06T17:23:29+00:00", + "runType": "QuickRun", + "createTime": "2019-09-06T17:23:21.9261521+00:00", + "startTime": "2019-09-06T17:23:22.1348714+00:00", + "finishTime": "2019-09-06T17:23:29.8792157+00:00", + "platform": { + "os": "Linux", + "architecture": "amd64" + }, + "agentConfiguration": { + "cpu": 2 + }, + "provisioningState": "Succeeded", + "isArchiveEnabled": true + }, + "id": "/subscriptions/3647315e-0c5b-4ce4-8739-b071e144b2c9/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/runs/yd5", + "name": "yd5" + } + }, + "id": "/subscriptions/3647315e-0c5b-4ce4-8739-b071e144b2c9/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/taskRuns/myRun", + "name": "myRun", + "tags": { + "key": "value" + }, + "location": "WESTUS" + } + } + } +} diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/containerregistry.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/containerregistry.json index e13102c59bb0..f880a5744ac7 100644 --- a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/containerregistry.json +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/containerregistry.json @@ -134,6 +134,178 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Get the specified private endpoint connection associated with the container registry.", + "operationId": "PrivateEndpointConnections_Get", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + }, + "x-ms-examples": { + "PrivateEndpointConnectionGet": { + "$ref": "./examples/PrivateEndpointConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Update the state of specified private endpoint connection associated with the container registry.", + "operationId": "PrivateEndpointConnections_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + }, + { + "name": "privateEndpointConnection", + "in": "body", + "description": "The parameters for creating a private endpoint connection.", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "201": { + "description": "The request was successful; the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + }, + "x-ms-examples": { + "PrivateEndpointConnectionCreateOrUpdate": { + "$ref": "./examples/PrivateEndpointConnectionCreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Deletes the specified private endpoint connection associated with the container registry.", + "operationId": "PrivateEndpointConnections_Delete", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "202": { + "description": "The request was successful; the operation will complete asynchronously." + }, + "204": { + "description": "The private endpoint connection does not exist in the subscription." + } + }, + "x-ms-examples": { + "PrivateEndpointConnectionDelete": { + "$ref": "./examples/PrivateEndpointConnectionDelete.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "List all private endpoint connections in a container registry.", + "operationId": "PrivateEndpointConnections_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + } + }, + "x-ms-examples": { + "PrivateEndpointConnectionList": { + "$ref": "./examples/PrivateEndpointConnectionList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}": { "get": { "tags": [ @@ -494,6 +666,45 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/privateLinkResources": { + "get": { + "tags": [ + "Registries" + ], + "description": "Lists the private link resources for a container registry.", + "operationId": "Registries_ListPrivateLinkResources", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/RegistryNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the private link resources were retrieved and returned successfully.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + } + }, + "x-ms-examples": { + "RegistryListPrivateLinkResources": { + "$ref": "./examples/RegistryListPrivateLinkResources.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/replications/{replicationName}": { "get": { "tags": [ @@ -1306,6 +1517,116 @@ } } }, + "PrivateEndpointConnection": { + "description": "An object that represents a private endpoint connection for a container registry.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "The properties of a private endpoint connection.", + "x-ms-client-flatten": true + } + } + }, + "PrivateEndpointConnectionProperties": { + "description": "The properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "The resource of private endpoint." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "provisioningState": { + "description": "The provisioning state of private endpoint connection resource.", + "enum": [ + "Creating", + "Updating", + "Deleting", + "Succeeded", + "Failed", + "Canceled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + } + } + }, + "PrivateEndpoint": { + "description": "The Private Endpoint resource.", + "type": "object", + "properties": { + "id": { + "description": "This is private endpoint resource created with Microsoft.Network resource provider.", + "type": "string" + } + } + }, + "PrivateLinkServiceConnectionState": { + "description": "The state of a private link service connection.", + "type": "object", + "properties": { + "status": { + "description": "The private link service connection status.", + "enum": [ + "Approved", + "Pending", + "Rejected", + "Disconnected" + ], + "type": "string", + "x-ms-enum": { + "name": "ConnectionStatus", + "modelAsString": true + } + }, + "description": { + "description": "The description for connection status. For example if connection is rejected it can indicate reason for rejection.", + "type": "string" + }, + "actionsRequired": { + "description": "A message indicating if changes on the service provider require any updates on the consumer.", + "enum": [ + "None", + "Recreate" + ], + "type": "string", + "x-ms-enum": { + "name": "ActionsRequired", + "modelAsString": true + } + } + } + }, + "PrivateEndpointConnectionListResult": { + "description": "The result of a request to list private endpoint connections for a container registry.", + "type": "object", + "properties": { + "value": { + "description": "The list of private endpoint connections. Since this list may be incomplete, the nextLink field should be used to request the next list of private endpoint connections.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "nextLink": { + "description": "The URI that can be used to request the next list of private endpoint connections.", + "type": "string" + } + } + }, "Registry": { "description": "An object that represents a container registry.", "required": [ @@ -1463,6 +1784,26 @@ "encryption": { "$ref": "#/definitions/EncryptionProperty", "description": "The encryption settings of container registry." + }, + "dataEndpointEnabled": { + "description": "Enable a single data endpoint per region for serving data.", + "type": "boolean" + }, + "dataEndpointHostNames": { + "description": "List of host names that will serve data when dataEndpointEnabled is true.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "privateEndpointConnections": { + "description": "List of private endpoint connections for a container registry.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "readOnly": true } } }, @@ -1729,6 +2070,11 @@ "description": "Key vault uri to access the encryption key.", "type": "string" }, + "versionedKeyIdentifier": { + "description": "The fully qualified key identifier that includes the version of the key that is actually used for encryption.", + "type": "string", + "readOnly": true + }, "identity": { "description": "The client id of the identity which will be used to access key vault.", "type": "string" @@ -1780,6 +2126,10 @@ "encryption": { "$ref": "#/definitions/EncryptionProperty", "description": "The encryption settings of container registry." + }, + "dataEndpointEnabled": { + "description": "Enable a single data endpoint per region for serving data.", + "type": "boolean" } } }, @@ -1905,6 +2255,71 @@ } } }, + "PrivateLinkResourceListResult": { + "description": "The result of a request to list private link resources for a container registry.", + "type": "object", + "properties": { + "value": { + "description": "The list of private link resources. Since this list may be incomplete, the nextLink field should be used to request the next list of private link resources.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + }, + "nextLink": { + "description": "The URI that can be used to request the next list of private link resources.", + "type": "string" + } + } + }, + "PrivateLinkResource": { + "description": "A resource that supports private link capabilities.", + "type": "object", + "properties": { + "type": { + "description": "The resource type is private link resource.", + "type": "string", + "readOnly": true + }, + "id": { + "description": "The resource ID.", + "type": "string" + }, + "name": { + "description": "The name of the resource.", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "A resource that supports private link capabilities.", + "x-ms-client-flatten": true + } + } + }, + "PrivateLinkResourceProperties": { + "description": "The properties of a private link resource.", + "type": "object", + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string" + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + } + }, + "requiredZoneNames": { + "description": "The private link resource Private link DNS zone name.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, "Replication": { "description": "An object that represents a replication for a container registry.", "type": "object", @@ -2474,6 +2889,27 @@ } } }, + "ProxyResource": { + "description": "The resource model definition for a ARM proxy resource. It will have everything other than required location and tags.", + "properties": { + "id": { + "description": "The resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of the resource.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, "Resource": { "description": "An Azure resource.", "required": [ @@ -2570,6 +3006,14 @@ "minLength": 5, "pattern": "^[a-zA-Z0-9]*$", "x-ms-parameter-location": "method" + }, + "PrivateEndpointConnectionNameParameter": { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" } }, "securityDefinitions": { diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/PrivateEndpointConnectionCreateOrUpdate.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/PrivateEndpointConnectionCreateOrUpdate.json new file mode 100644 index 000000000000..7876bcefb8dd --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/PrivateEndpointConnectionCreateOrUpdate.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2019-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "privateEndpointConnectionName": "myConnection", + "privateEndpointConnection": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/privateEndpointConnections/myConnection", + "name": "myConnection", + "type": "Microsoft.ContainerRegistry/registries/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/peexample01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/privateEndpointConnections/myConnection", + "name": "myConnection", + "type": "Microsoft.ContainerRegistry/registries/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/peexample01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/PrivateEndpointConnectionDelete.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/PrivateEndpointConnectionDelete.json new file mode 100644 index 000000000000..57f841e85111 --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/PrivateEndpointConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "privateEndpointConnectionName": "myConnection" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/PrivateEndpointConnectionGet.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/PrivateEndpointConnectionGet.json new file mode 100644 index 000000000000..8fd0c455459e --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/PrivateEndpointConnectionGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2019-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry", + "privateEndpointConnectionName": "myConnection" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/privateEndpointConnections/myConnection", + "name": "myConnection", + "type": "Microsoft.ContainerRegistry/registries/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/peexample01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/PrivateEndpointConnectionList.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/PrivateEndpointConnectionList.json new file mode 100644 index 000000000000..e90e234ba87f --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/PrivateEndpointConnectionList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/privateEndpointConnections/myConnection", + "name": "myConnection", + "type": "Microsoft.ContainerRegistry/registries/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/privateEndpoints/peexample01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + ] + } + } + } +} diff --git a/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/RegistryListPrivateLinkResources.json b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/RegistryListPrivateLinkResources.json new file mode 100644 index 000000000000..3f12f3184785 --- /dev/null +++ b/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/examples/RegistryListPrivateLinkResources.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2019-12-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "registryName": "myRegistry" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/privateLinkResources/registry", + "name": "registry", + "type": "Microsoft.ContainerRegistry/registries/privateLinkResources", + "properties": { + "groupId": "registry", + "requiredMembers": [ + "registry", + "registry_data_myregion" + ], + "requiredZoneNames": [ + "privatelink.azurecr.io" + ] + } + } + ] + } + } + } +} diff --git a/specification/containerregistry/resource-manager/readme.java.md b/specification/containerregistry/resource-manager/readme.java.md index 87034cad98c9..7e591a145f73 100644 --- a/specification/containerregistry/resource-manager/readme.java.md +++ b/specification/containerregistry/resource-manager/readme.java.md @@ -12,6 +12,15 @@ payload-flattening-threshold: 1 output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-containerregistry ``` +These settings apply only when `--multiapi` is not specified on the command line. + +``` yaml $(java) && !$(multiapi) +directive: + - rename-model: + from: DockerBuildStep + to: DockerTaskStep +``` + ### Java multi-api ``` yaml $(java) && $(multiapi) diff --git a/specification/containerregistry/resource-manager/readme.md b/specification/containerregistry/resource-manager/readme.md index 546428252525..dc042e35dca0 100644 --- a/specification/containerregistry/resource-manager/readme.md +++ b/specification/containerregistry/resource-manager/readme.md @@ -26,7 +26,7 @@ These are the global settings for the ContainerRegistry API. ``` yaml openapi-type: arm -tag: package-2019-06-preview +tag: package-2019-12-preview ``` @@ -37,6 +37,8 @@ These settings apply only when `--tag=package-2019-12-preview` is specified on t ```yaml $(tag) == 'package-2019-12-preview' input-file: - Microsoft.ContainerRegistry/preview/2019-12-01-preview/containerregistry.json + - Microsoft.ContainerRegistry/preview/2019-06-01-preview/containerregistry_build.json + - Microsoft.ContainerRegistry/preview/2019-05-01-preview/containerregistry_scopemap.json ``` ### Tag: package-2019-06-preview @@ -220,9 +222,9 @@ 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/stable/2019-05-01/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 diff --git a/specification/containerregistry/resource-manager/readme.typescript.md b/specification/containerregistry/resource-manager/readme.typescript.md index 8fc2768ada95..db34cc240a6d 100644 --- a/specification/containerregistry/resource-manager/readme.typescript.md +++ b/specification/containerregistry/resource-manager/readme.typescript.md @@ -5,7 +5,7 @@ Please also specify `--typescript-sdks-folder= +# Az.Aks +This directory contains the Cli common model for the Aks service. + +> Metadata +``` yaml +# Migrated from Powershell's readme + +service-name: Aks +title: AksClient + +directive: + - from: managedClusters.json + where: $.definitions.SubResource.properties + transform: > + return { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource ID." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "restype": { + "readOnly": true, + "type": "string", + "description": "Resource type" + } + } + +cli: + cli-directive: + - select: 'operationGroup' + where: + operationGroup: 'operations' + hidden: true + - select: 'parameter' + where: + operationGroup: 'agentPools' + operation: '^(get|createOrUpdate|delete)$' + parameter: 'resourceName' + set: + name: 'aks_name' + alias: 'resource_name' + - select: 'parameter' + where: + operationGroup: '(managedClusters|containerServices|openShiftManagedClusters|operations)' + parameter: 'resourceName' + set: + name: 'name' + alias: 'resourceName' + - select: 'parameter' + where: + operationGroup: 'agentPools' + operation: '(getAvailableAgentPoolVersions|getUpgradeProfile)' + parameter: 'resourceName' + set: + name: 'name' + alias: 'resource_name' + - select: 'operationGroup' + where: + operationGroup: 'managedClusters' + formatTable: + properties: + - Name + - Type + - ProvisioningState + - DnsPrefix + - Fqdn + - KubernetesVersion + - Id + - Tag +``` \ No newline at end of file diff --git a/specification/containerservice/resource-manager/readme.go.md b/specification/containerservice/resource-manager/readme.go.md index e15f9cbda2df..abc52e7c79b7 100644 --- a/specification/containerservice/resource-manager/readme.go.md +++ b/specification/containerservice/resource-manager/readme.go.md @@ -12,8 +12,11 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2020-03 + - tag: package-2020-02 - tag: package-2020-01 - tag: package-2019-11 + - tag: package-2019-10-27-preview - tag: package-2019-10 - tag: package-2019-08 - tag: package-2019-06 @@ -28,6 +31,26 @@ batch: - tag: package-2017-07 ``` +### Tag: package-2020-03 and go + +These settings apply only when `--package-2020-03 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag)=='package-2020-03' && $(go) +namespace: containerservice +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2020-03-01/$(namespace) +``` + +### Tag: package-2020-02 and go + +These settings apply only when `--package-2020-02 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag)=='package-2020-02' && $(go) +namespace: containerservice +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2020-02-01/$(namespace) +``` + ### Tag: package-2020-01 and go These settings apply only when `--package-2020-01 --go` is specified on the command line. @@ -48,6 +71,16 @@ namespace: containerservice output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2019-11-01/$(namespace) ``` +### Tag: package-2019-10-27-preview and go + +These settings apply only when `--package-2019-10-27-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag)=='package-2019-10-27-preview' && $(go) +namespace: containerservice +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2019-10-27-preview/$(namespace) +``` + ### Tag: package-2019-10 and go These settings apply only when `--package-2019-10 --go` is specified on the command line. @@ -166,4 +199,4 @@ Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2020-03' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.containerservice.v2020_03_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/containerservice/mgmt-v2020_03_01 +regenerate-manager: true +generate-interface: true +``` + +### Tag: package-2020-02 and java + +These settings apply only when `--tag=package-2020-02` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2020-02' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.containerservice.v2020_02_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/containerservice/mgmt-v2020_02_01 +regenerate-manager: true +generate-interface: true ``` ### Tag: package-2020-01 and java diff --git a/specification/containerservice/resource-manager/readme.md b/specification/containerservice/resource-manager/readme.md index ab68877dcc5e..aa5d14dc6729 100644 --- a/specification/containerservice/resource-manager/readme.md +++ b/specification/containerservice/resource-manager/readme.md @@ -34,14 +34,39 @@ These are the global settings for the ContainerServices API. ``` yaml openapi-type: arm -tag: package-2020-01 +tag: package-2020-03 +``` + + +### Tag: package-2020-03 + +These settings apply only when `--tag=package-2020-03` is specified on the command line. + +``` yaml $(tag) == 'package-2020-03' +input-file: + - Microsoft.ContainerService/stable/2019-04-30/openShiftManagedClusters.json + - Microsoft.ContainerService/stable/2017-07-01/containerService.json + - Microsoft.ContainerService/stable/2019-08-01/location.json + - Microsoft.ContainerService/stable/2020-03-01/managedClusters.json +``` + +### Tag: package-2020-02 + +These settings apply only when `--tag=package-2020-02` is specified on the command line. + +``` yaml $(tag) == 'package-2020-02' +input-file: + - Microsoft.ContainerService/stable/2019-04-30/openShiftManagedClusters.json + - Microsoft.ContainerService/stable/2017-07-01/containerService.json + - Microsoft.ContainerService/stable/2019-08-01/location.json + - Microsoft.ContainerService/stable/2020-02-01/managedClusters.json ``` ### Tag: package-2020-01 These settings apply only when `--tag=package-2020-01` is specified on the command line. -```yaml $(tag) == 'package-2020-01' +``` yaml $(tag) == 'package-2020-01' input-file: - Microsoft.ContainerService/stable/2019-04-30/openShiftManagedClusters.json - Microsoft.ContainerService/stable/2017-07-01/containerService.json @@ -53,13 +78,26 @@ input-file: These settings apply only when `--tag=package-2019-11` is specified on the command line. -```yaml $(tag) == 'package-2019-11' +``` yaml $(tag) == 'package-2019-11' input-file: - Microsoft.ContainerService/stable/2019-04-30/openShiftManagedClusters.json - Microsoft.ContainerService/stable/2017-07-01/containerService.json - Microsoft.ContainerService/stable/2019-08-01/location.json - Microsoft.ContainerService/stable/2019-11-01/managedClusters.json ``` + +### Tag: package-2019-10-27-preview + +These settings apply only when `--tag=package-2019-10-27-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2019-10-27-preview' +input-file: + - Microsoft.ContainerService/preview/2019-10-27-preview/openShiftManagedClusters.json + - Microsoft.ContainerService/stable/2017-07-01/containerService.json + - Microsoft.ContainerService/stable/2019-08-01/location.json + - Microsoft.ContainerService/stable/2020-01-01/managedClusters.json +``` + ### Tag: package-2019-09-30-preview These settings apply only when `--tag=package-2019-09-30-preview` is specified on the command line. @@ -197,6 +235,32 @@ input-file: - Microsoft.ContainerService/stable/2017-07-01/containerService.json ``` +### Tag: package-2020-03-01-only + +These settings apply only when `--tag=package-2020-03-01-only` is specified on the command line. + +``` yaml $(tag) == 'package-2020-03-01-only' +input-file: +- Microsoft.ContainerService/stable/2020-03-01/managedClusters.json +directive: + - suppress: DefinitionsPropertiesNamesCamelCase + where: $.definitions.ManagedClusterProperties.properties.autoScalerProfile + reason: Cluster-autoscaler settings are not camel-cased +``` + +### Tag: package-2020-02-01-only + +These settings apply only when `--tag=package-2020-02-01-only` is specified on the command line. + +``` yaml $(tag) == 'package-2020-02-01-only' +input-file: +- Microsoft.ContainerService/stable/2020-02-01/managedClusters.json +directive: + - suppress: DefinitionsPropertiesNamesCamelCase + where: $.definitions.ManagedClusterProperties.properties.autoScalerProfile + reason: Cluster-autoscaler settings are not camel-cased +``` + ### Tag: package-2020-01-01-only These settings apply only when `--tag=package-2020-01-01-only` is specified on the command line. @@ -215,6 +279,15 @@ input-file: - Microsoft.ContainerService/stable/2019-11-01/managedClusters.json ``` +### Tag: package-2019-10-27-preview-only + +These settings apply only when `--tag=package-2019-10-27-preview-only` is specified on the command line. + +``` yaml $(tag) == 'package-2019-10-27-preview-only' +input-file: +- Microsoft.ContainerService/preview/2019-10-27-preview/openShiftManagedClusters.json +``` + ### Tag: package-2019-10-01-only These settings apply only when `--tag=package-2019-10-01-only` is specified on the command line. @@ -438,8 +511,11 @@ 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-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 diff --git a/specification/containerservice/resource-manager/readme.python.md b/specification/containerservice/resource-manager/readme.python.md index 243c605b8638..bd7887b9243c 100644 --- a/specification/containerservice/resource-manager/readme.python.md +++ b/specification/containerservice/resource-manager/readme.python.md @@ -18,8 +18,11 @@ Generate all API versions currently shipped for this package ```yaml $(python) && $(multiapi) batch: + - tag: package-2020-03-01-only + - tag: package-2020-02-01-only - tag: package-2020-01-01-only - tag: package-2019-11-01-only + - tag: package-2019-10-27-preview-only - tag: package-2019-10-01-only - tag: package-2019-08-01-only - tag: package-2019-06-01-only @@ -33,6 +36,28 @@ batch: - tag: package-2017-07-only-extended ``` +### Tag: package-2020-03-01-only and python + +These settings apply only when `--tag=package-2020-03-01-only --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2020-03-01-only' && $(python) +python: + namespace: azure.mgmt.containerservice.v2020_03_01 + output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_03_01 +``` + +### Tag: package-2020-02-01-only and python + +These settings apply only when `--tag=package-2020-02-01-only --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2020-02-01-only' && $(python) +python: + namespace: azure.mgmt.containerservice.v2020_02_01 + output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2020_02_01 +``` + ### Tag: package-2020-01-01-only and python These settings apply only when `--tag=package-2020-01-01-only --python` is specified on the command line. @@ -55,6 +80,17 @@ python: output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2019_11_01 ``` +### Tag: package-2019-10-27-preview-only and python + +These settings apply only when `--tag=package-2019-10-27-preview-only --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2019-10-27-preview-only' && $(python) +python: + namespace: azure.mgmt.containerservice.v2019_10_27_preview + output-folder: $(python-sdks-folder)/containerservice/azure-mgmt-containerservice/azure/mgmt/containerservice/v2019_10_27_preview +``` + ### Tag: package-2019-10-01-only and python These settings apply only when `--tag=package-2019-10-01-only --python` is specified on the command line. diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateEndpointConnectionGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateEndpointConnectionGet.json index 53fdc35bc619..6b843c126202 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateEndpointConnectionGet.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateEndpointConnectionGet.json @@ -20,7 +20,9 @@ "status": "Approved", "description": "Auto-approved", "actionsRequired": "None" - } + }, + "groupId": "Sql", + "provisioningState": "Succeeded" } } } diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateEndpointConnectionListGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateEndpointConnectionListGet.json index 7402270916e9..3ea874f66593 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateEndpointConnectionListGet.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateEndpointConnectionListGet.json @@ -21,7 +21,9 @@ "status": "Approved", "description": "Auto-approved", "actionsRequired": "None" - } + }, + "groupId": "Sql", + "provisioningState": "Succeeded" } }, { @@ -36,7 +38,9 @@ "status": "Approved", "description": "Auto-approved", "actionsRequired": "None" - } + }, + "groupId": "Sql", + "provisioningState": "Succeeded" } } ] diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateEndpointConnectionUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateEndpointConnectionUpdate.json index 53a177ee7b10..38a3e48a946c 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateEndpointConnectionUpdate.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateEndpointConnectionUpdate.json @@ -28,7 +28,9 @@ "status": "Approved", "description": "Auto-approved", "actionsRequired": "None" - } + }, + "groupId": "Sql", + "provisioningState": "Succeeded" } } }, diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateLinkResourceGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateLinkResourceGet.json index 9be3abe573c0..9a08522f1f00 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateLinkResourceGet.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateLinkResourceGet.json @@ -17,6 +17,9 @@ "requiredMembers": [ "ddb1", "ddb1-westus" + ], + "requiredZoneNames": [ + "privatelink.documents.azure.net" ] } } diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateLinkResourceListGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateLinkResourceListGet.json index 92f822d3d525..b3ac6d4b2e04 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateLinkResourceListGet.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/examples/CosmosDBPrivateLinkResourceListGet.json @@ -18,6 +18,9 @@ "requiredMembers": [ "ddb1", "ddb1-westus" + ], + "requiredZoneNames": [ + "privatelink.documents.azure.net" ] } } diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/privateEndpointConnection.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/privateEndpointConnection.json index d52a3844d546..35113561e7ac 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/privateEndpointConnection.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/privateEndpointConnection.json @@ -266,6 +266,14 @@ "privateLinkServiceConnectionState": { "$ref": "#/definitions/PrivateLinkServiceConnectionStateProperty", "description": "Connection State of the Private Endpoint Connection." + }, + "groupId": { + "type": "string", + "description": "Group id of the private endpoint." + }, + "provisioningState": { + "type": "string", + "description": "Provisioning state of the private endpoint." } } }, diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/privateLinkResources.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/privateLinkResources.json index 0cf77f13eb4a..9312cdee0356 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/privateLinkResources.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/preview/2019-08-01-preview/privateLinkResources.json @@ -159,6 +159,14 @@ "type": "string" }, "readOnly": true + }, + "requiredZoneNames": { + "description": "The private link resource required zone names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true } } } diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2014-04-01/cosmos-db.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2014-04-01/cosmos-db.json index f9befa81ebd8..c7ddfc39d057 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2014-04-01/cosmos-db.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2014-04-01/cosmos-db.json @@ -5407,7 +5407,7 @@ "ProvisioningState": { "type": "string", "readOnly": true, - "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation." + "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation. 'Offline' - the Cosmos DB account is not active. 'DeletionFailed' – the Cosmos DB account deletion failed." }, "IPRangeFilter": { "type": "string", diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2015-04-08/cosmos-db.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2015-04-08/cosmos-db.json index 15b7e026040c..49c16d2b5fbb 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2015-04-08/cosmos-db.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2015-04-08/cosmos-db.json @@ -5407,7 +5407,7 @@ "ProvisioningState": { "type": "string", "readOnly": true, - "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation." + "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation. 'Offline' - the Cosmos DB account is not active. 'DeletionFailed' – the Cosmos DB account deletion failed." }, "IPRangeFilter": { "type": "string", diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2015-11-06/cosmos-db.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2015-11-06/cosmos-db.json index 34dfff0507c9..3c91a7b458a0 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2015-11-06/cosmos-db.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2015-11-06/cosmos-db.json @@ -5407,7 +5407,7 @@ "ProvisioningState": { "type": "string", "readOnly": true, - "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation." + "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation. 'Offline' - the Cosmos DB account is not active. 'DeletionFailed' – the Cosmos DB account deletion failed." }, "IPRangeFilter": { "type": "string", diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2016-03-19/cosmos-db.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2016-03-19/cosmos-db.json index 42a73a42fa75..734d76d5c834 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2016-03-19/cosmos-db.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2016-03-19/cosmos-db.json @@ -5407,7 +5407,7 @@ "ProvisioningState": { "type": "string", "readOnly": true, - "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation." + "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation. 'Offline' - the Cosmos DB account is not active. 'DeletionFailed' – the Cosmos DB account deletion failed." }, "IPRangeFilter": { "type": "string", diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2016-03-31/cosmos-db.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2016-03-31/cosmos-db.json index 92390fe5f059..7dd4de42c6ab 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2016-03-31/cosmos-db.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2016-03-31/cosmos-db.json @@ -5407,7 +5407,7 @@ "ProvisioningState": { "type": "string", "readOnly": true, - "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation." + "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation. 'Offline' - the Cosmos DB account is not active. 'DeletionFailed' – the Cosmos DB account deletion failed." }, "IPRangeFilter": { "type": "string", diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/cosmos-db.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/cosmos-db.json index bb598950972e..24cfa490f52e 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/cosmos-db.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/cosmos-db.json @@ -6543,7 +6543,7 @@ "ProvisioningState": { "type": "string", "readOnly": true, - "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation." + "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation. 'Offline' - the Cosmos DB account is not active. 'DeletionFailed' – the Cosmos DB account deletion failed." }, "IPRangeFilter": { "type": "string", diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceCreate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceCreate.json new file mode 100644 index 000000000000..f7259a7bf762 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceCreate.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "notebookWorkspaceName": "default", + "notebookCreateUpdateParameters": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/notebookWorkspaces/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/notebookWorkspaces", + "properties": { + "notebookServerEndpoint": "endpoint", + "status": "Online" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceDelete.json new file mode 100644 index 000000000000..53c4c9e41014 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2019-08-01", + "subscriptionId": "subid", + "notebookWorkspaceName": "default" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceGet.json new file mode 100644 index 000000000000..ff397403ed32 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "notebookWorkspaceName": "default" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/notebookWorkspaces/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/notebookWorkspaces", + "properties": { + "notebookServerEndpoint": "endpoint", + "status": "Online" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceList.json new file mode 100644 index 000000000000..6ee5426876a2 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceList.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/notebookWorkspaces/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/notebookWorkspaces", + "properties": { + "notebookServerEndpoint": "endpoint", + "status": "Online" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceListConnectionInfo.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceListConnectionInfo.json new file mode 100644 index 000000000000..9e6d4e27e04b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceListConnectionInfo.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "notebookWorkspaceName": "default" + }, + "responses": { + "200": { + "body": { + "authToken": "auth-token", + "notebookServerEndpoint": "notebook endpoint" + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceRegenerateAuthToken.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceRegenerateAuthToken.json new file mode 100644 index 000000000000..740fb1499a80 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceRegenerateAuthToken.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "notebookWorkspaceName": "default" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceStart.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceStart.json new file mode 100644 index 000000000000..740fb1499a80 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/examples/CosmosDBNotebookWorkspaceStart.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "accountName": "ddb1", + "notebookWorkspaceName": "default" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/notebook.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/notebook.json new file mode 100644 index 000000000000..1ddc6b70a4e7 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-08-01/notebook.json @@ -0,0 +1,450 @@ +{ + "swagger": "2.0", + "info": { + "title": "Cosmos DB", + "description": "Azure Cosmos DB Database Service Resource Provider REST API", + "version": "2019-08-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/notebookWorkspaces": { + "get": { + "tags": [ + "NotebookWorkspacesResource" + ], + "description": "Gets the notebook workspace resources of an existing Cosmos DB account.", + "operationId": "NotebookWorkspaces_ListByDatabaseAccount", + "x-ms-pageable": { + "nextLinkName": null + }, + "parameters": [ + { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/subscriptionIdParameter" + }, + { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/apiVersionParameter" + }, + { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/accountNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved notebook workspace resources.", + "schema": { + "$ref": "#/definitions/NotebookWorkspaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceList": { + "$ref": "./examples/CosmosDBNotebookWorkspaceList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/notebookWorkspaces/{notebookWorkspaceName}": { + "get": { + "tags": [ + "NotebookWorkspacesResource" + ], + "description": "Gets the notebook workspace for a Cosmos DB account.", + "operationId": "NotebookWorkspaces_Get", + "parameters": [ + { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/subscriptionIdParameter" + }, + { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/apiVersionParameter" + }, + { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified notebook workspace resource.", + "schema": { + "$ref": "#/definitions/NotebookWorkspace" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceGet": { + "$ref": "./examples/CosmosDBNotebookWorkspaceGet.json" + } + } + }, + "put": { + "tags": [ + "NotebookWorkspacesResource" + ], + "description": "Creates the notebook workspace for a Cosmos DB account.", + "operationId": "NotebookWorkspaces_CreateOrUpdate", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/subscriptionIdParameter" + }, + { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/apiVersionParameter" + }, + { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + }, + { + "name": "notebookCreateUpdateParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NotebookWorkspaceCreateUpdateParameters" + }, + "description": "The notebook workspace to create for the current database account." + } + ], + "responses": { + "200": { + "description": "Creation of notebook workspace will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NotebookWorkspace" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceCreate": { + "$ref": "./examples/CosmosDBNotebookWorkspaceCreate.json" + } + } + }, + "delete": { + "tags": [ + "NotebookWorkspacesResource" + ], + "description": "Deletes the notebook workspace for a Cosmos DB account.", + "operationId": "NotebookWorkspaces_Delete", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/subscriptionIdParameter" + }, + { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/apiVersionParameter" + }, + { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + } + ], + "responses": { + "202": { + "description": "The notebook workspace delete operation will complete asynchronously." + }, + "204": { + "description": "The specified notebook workspace does not exist in the database account." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceDelete": { + "$ref": "./examples/CosmosDBNotebookWorkspaceDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/notebookWorkspaces/{notebookWorkspaceName}/listConnectionInfo": { + "post": { + "tags": [ + "NotebookWorkspacesResource" + ], + "operationId": "NotebookWorkspaces_ListConnectionInfo", + "x-ms-examples": { + "CosmosDBNotebookWorkspaceListConnectionInfo": { + "$ref": "./examples/CosmosDBNotebookWorkspaceListConnectionInfo.json" + } + }, + "description": "Retrieves the connection info for the notebook workspace", + "parameters": [ + { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/subscriptionIdParameter" + }, + { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/apiVersionParameter" + }, + { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/NotebookWorkspaceConnectionInfoResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/notebookWorkspaces/{notebookWorkspaceName}/regenerateAuthToken": { + "post": { + "tags": [ + "NotebookWorkspacesResource" + ], + "operationId": "NotebookWorkspaces_RegenerateAuthToken", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceRegenerateAuthToken": { + "$ref": "./examples/CosmosDBNotebookWorkspaceRegenerateAuthToken.json" + } + }, + "description": "Regenerates the auth token for the notebook workspace", + "parameters": [ + { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/subscriptionIdParameter" + }, + { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/apiVersionParameter" + }, + { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted. The regenerate auth token operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/notebookWorkspaces/{notebookWorkspaceName}/start": { + "post": { + "tags": [ + "NotebookWorkspacesResource" + ], + "operationId": "NotebookWorkspaces_Start", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "CosmosDBNotebookWorkspaceStart": { + "$ref": "./examples/CosmosDBNotebookWorkspaceStart.json" + } + }, + "description": "Starts the notebook workspace", + "parameters": [ + { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/subscriptionIdParameter" + }, + { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/apiVersionParameter" + }, + { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/NotebookWorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted. The start operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "NotebookWorkspaceCreateUpdateParameters": { + "description": "Parameters to create a notebook workspace resource", + "type": "object", + "allOf": [ + { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/definitions/ARMProxyResource" + } + ] + }, + "NotebookWorkspaceListResult": { + "description": "A list of notebook workspace resources", + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "Array of notebook workspace resources", + "items": { + "$ref": "#/definitions/NotebookWorkspace" + } + } + } + }, + "NotebookWorkspace": { + "description": "A notebook workspace resource", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/NotebookWorkspaceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../../stable/2019-08-01/cosmos-db.json#/definitions/ARMProxyResource" + } + ] + }, + "NotebookWorkspaceProperties": { + "description": "Properties of a notebook workspace resource.", + "type": "object", + "properties": { + "notebookServerEndpoint": { + "description": "Specifies the endpoint of Notebook server.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the notebook workspace. Possible values are: Creating, Online, Deleting, Failed, Updating.", + "type": "string", + "readOnly": true + } + } + }, + "NotebookWorkspaceConnectionInfoResult": { + "description": "The connection info for the given notebook workspace", + "properties": { + "authToken": { + "type": "string", + "description": "Specifies auth token used for connecting to Notebook server (uses token-based auth).", + "readOnly": true + }, + "notebookServerEndpoint": { + "type": "string", + "description": "Specifies the endpoint of Notebook server.", + "readOnly": true + } + } + } + }, + "parameters": { + "NotebookWorkspaceNameParameter": { + "name": "notebookWorkspaceName", + "in": "path", + "description": "The name of the notebook workspace resource.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "NotebookWorkspaceName", + "modelAsString": true + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-12-12/cosmos-db.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-12-12/cosmos-db.json index 018309c5d2ad..095e702ea0e0 100644 --- a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-12-12/cosmos-db.json +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2019-12-12/cosmos-db.json @@ -5869,11 +5869,15 @@ }, "ThroughputSettingsResource": { "type": "object", - "description": "Cosmos DB resource throughput object", + "description": "Cosmos DB resource throughput object. Either throughput is required or provisionedThroughputSettings is required, but not both.", "properties": { "throughput": { "type": "integer", - "description": "Value of the Cosmos DB resource throughput" + "description": "Value of the Cosmos DB resource throughput. Either throughput is required or provisionedThroughputSettings is required, but not both." + }, + "provisionedThroughputSettings": { + "description": "Cosmos DB resource for provisioned throughput settings. Either throughput is required or provisionedThroughputSettings is required, but not both.", + "$ref": "#/definitions/ProvisionedThroughputSettingsResource" }, "minimumThroughput": { "type": "string", @@ -5885,11 +5889,54 @@ "description": "The throughput replace is pending", "readOnly": true } + } + }, + "ProvisionedThroughputSettingsResource": { + "type": "object", + "description": "Cosmos DB provisioned throughput settings object", + "properties": { + "maxThroughput": { + "type": "integer", + "description": "Represents maximum throughput container can scale up to." + }, + "autoUpgradePolicy": { + "description": "Cosmos DB resource auto-upgrade policy", + "$ref": "#/definitions/AutoUpgradePolicyResource" + }, + "targetMaxThroughput": { + "type": "integer", + "description": "Represents target maximum throughput container can scale up to once offer is no longer in pending state.", + "readOnly": true + } }, "required": [ - "throughput" + "maxThroughput" ] }, + "AutoUpgradePolicyResource": { + "type": "object", + "description": "Cosmos DB resource auto-upgrade policy", + "properties": { + "throughputPolicy": { + "description": "Represents throughput policy which service must adhere to for auto-upgrade", + "$ref": "#/definitions/ThroughputPolicyResource" + } + } + }, + "ThroughputPolicyResource": { + "type": "object", + "description": "Cosmos DB resource throughput policy", + "properties": { + "isEnabled": { + "type": "boolean", + "description": "Determines whether the ThroughputPolicy is active or not" + }, + "incrementPercent": { + "type": "integer", + "description": "Represents the percentage by which throughput can increase every time throughput policy kicks in." + } + } + }, "SqlDatabaseResource": { "type": "object", "description": "Cosmos DB SQL database resource object", @@ -6530,6 +6577,12 @@ }, "CreateUpdateOptions": { "type": "object", + "properties": { + "throughput": { + "type": "string", + "description": "Request Units per second. For example, \"throughput\": \"10000\"." + } + }, "additionalProperties": { "type": "string" }, @@ -6555,7 +6608,7 @@ "ProvisioningState": { "type": "string", "readOnly": true, - "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation." + "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation. 'Offline' - the Cosmos DB account is not active. 'DeletionFailed' – the Cosmos DB account deletion failed." }, "IPRangeFilter": { "type": "string", diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/cosmos-db.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/cosmos-db.json new file mode 100644 index 000000000000..6d496ddcb044 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/cosmos-db.json @@ -0,0 +1,7377 @@ +{ + "swagger": "2.0", + "info": { + "title": "Cosmos DB", + "description": "Azure Cosmos DB Database Service Resource Provider REST API", + "version": "2020-03-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}": { + "get": { + "operationId": "DatabaseAccounts_Get", + "x-ms-examples": { + "CosmosDBDatabaseAccountGet": { + "$ref": "./examples/CosmosDBDatabaseAccountGet.json" + } + }, + "description": "Retrieves the properties of an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The database account properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountGetResults" + } + }, + "404": { + "description": "Not Found. The account name is available and valid." + } + } + }, + "patch": { + "operationId": "DatabaseAccounts_Update", + "x-ms-examples": { + "CosmosDBDatabaseAccountPatch": { + "$ref": "./examples/CosmosDBDatabaseAccountPatch.json" + } + }, + "description": "Updates the properties of an existing Azure Cosmos DB database account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "updateParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabaseAccountUpdateParameters" + }, + "description": "The parameters to provide for the current database account." + } + ], + "responses": { + "200": { + "description": "The database account update operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/DatabaseAccountGetResults" + } + } + } + }, + "put": { + "operationId": "DatabaseAccounts_CreateOrUpdate", + "x-ms-examples": { + "CosmosDBDatabaseAccountCreateMin": { + "$ref": "./examples/CosmosDBDatabaseAccountCreateMin.json" + }, + "CosmosDBDatabaseAccountCreateMax": { + "$ref": "./examples/CosmosDBDatabaseAccountCreateMax.json" + } + }, + "description": "Creates or updates an Azure Cosmos DB database account. The \"Update\" method is preferred when performing updates on an account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "createUpdateParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabaseAccountCreateUpdateParameters" + }, + "description": "The parameters to provide for the current database account." + } + ], + "responses": { + "200": { + "description": "The database account create or update operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/DatabaseAccountGetResults" + } + } + } + }, + "delete": { + "operationId": "DatabaseAccounts_Delete", + "x-ms-examples": { + "CosmosDBDatabaseAccountDelete": { + "$ref": "./examples/CosmosDBDatabaseAccountDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB database account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The database account delete operation will complete asynchronously." + }, + "204": { + "description": "The specified account does not exist in the subscription." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/failoverPriorityChange": { + "post": { + "operationId": "DatabaseAccounts_FailoverPriorityChange", + "x-ms-examples": { + "CosmosDBDatabaseAccountFailoverPriorityChange": { + "$ref": "./examples/CosmosDBDatabaseAccountFailoverPriorityChange.json" + } + }, + "description": "Changes the failover priority for the Azure Cosmos DB database account. A failover priority of 0 indicates a write region. The maximum value for a failover priority = (total number of regions - 1). Failover priority values must be unique for each of the regions in which the database account exists.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "failoverParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FailoverPolicies" + }, + "description": "The new failover policies for the database account." + } + ], + "responses": { + "202": { + "description": "Accepted. The failover policy change operation will complete asynchronously." + }, + "204": { + "description": "No Content" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/databaseAccounts": { + "get": { + "operationId": "DatabaseAccounts_List", + "x-ms-examples": { + "CosmosDBDatabaseAccountList": { + "$ref": "./examples/CosmosDBDatabaseAccountList.json" + } + }, + "description": "Lists all the Azure Cosmos DB database accounts available under the subscription.", + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts": { + "get": { + "operationId": "DatabaseAccounts_ListByResourceGroup", + "x-ms-examples": { + "CosmosDBDatabaseAccountListByResourceGroup": { + "$ref": "./examples/CosmosDBDatabaseAccountListByResourceGroup.json" + } + }, + "description": "Lists all the Azure Cosmos DB database accounts available under the given resource group.", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/listKeys": { + "post": { + "operationId": "DatabaseAccounts_ListKeys", + "x-ms-examples": { + "CosmosDBDatabaseAccountListKeys": { + "$ref": "./examples/CosmosDBDatabaseAccountListKeys.json" + } + }, + "description": "Lists the access keys for the specified Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountListKeysResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/listConnectionStrings": { + "post": { + "operationId": "DatabaseAccounts_ListConnectionStrings", + "x-ms-examples": { + "CosmosDBDatabaseAccountListConnectionStrings": { + "$ref": "./examples/CosmosDBDatabaseAccountListConnectionStrings.json" + }, + "CosmosDBDatabaseAccountListConnectionStringsMongo": { + "$ref": "./examples/CosmosDBDatabaseAccountListConnectionStringsMongo.json" + } + }, + "description": "Lists the connection strings for the specified Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountListConnectionStringsResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/offlineRegion": { + "post": { + "operationId": "DatabaseAccounts_OfflineRegion", + "x-ms-examples": { + "CosmosDBDatabaseAccountOfflineRegion": { + "$ref": "./examples/CosmosDBDatabaseAccountOfflineRegion.json" + } + }, + "description": "Offline the specified region for the specified Azure Cosmos DB database account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "regionParameterForOffline", + "in": "body", + "required": true, + "description": "Cosmos DB region to offline for the database account.", + "schema": { + "$ref": "#/definitions/RegionForOnlineOffline" + } + } + ], + "responses": { + "200": { + "description": "The offline region operation is completed successfully." + }, + "202": { + "description": "Accepted. The offline region operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/onlineRegion": { + "post": { + "operationId": "DatabaseAccounts_OnlineRegion", + "x-ms-examples": { + "CosmosDBDatabaseAccountOnlineRegion": { + "$ref": "./examples/CosmosDBDatabaseAccountOnlineRegion.json" + } + }, + "description": "Online the specified region for the specified Azure Cosmos DB database account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "regionParameterForOnline", + "in": "body", + "required": true, + "description": "Cosmos DB region to online for the database account.", + "schema": { + "$ref": "#/definitions/RegionForOnlineOffline" + } + } + ], + "responses": { + "200": { + "description": "The online region operation is completed successfully." + }, + "202": { + "description": "Accepted. The online region operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/readonlykeys": { + "get": { + "operationId": "DatabaseAccounts_GetReadOnlyKeys", + "x-ms-examples": { + "CosmosDBDatabaseAccountListReadOnlyKeys": { + "$ref": "./examples/CosmosDBDatabaseAccountListReadOnlyKeys.json" + } + }, + "description": "Lists the read-only access keys for the specified Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountListReadOnlyKeysResult" + } + } + } + }, + "post": { + "operationId": "DatabaseAccounts_ListReadOnlyKeys", + "x-ms-examples": { + "CosmosDBDatabaseAccountListReadOnlyKeys": { + "$ref": "./examples/CosmosDBDatabaseAccountListReadOnlyKeys.json" + } + }, + "description": "Lists the read-only access keys for the specified Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/DatabaseAccountListReadOnlyKeysResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/regenerateKey": { + "post": { + "operationId": "DatabaseAccounts_RegenerateKey", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegenerateKey": { + "$ref": "./examples/CosmosDBDatabaseAccountRegenerateKey.json" + } + }, + "description": "Regenerates an access key for the specified Azure Cosmos DB database account.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "keyToRegenerate", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DatabaseAccountRegenerateKeyParameters" + }, + "description": "The name of the key to regenerate." + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted. The regenerate key operation will complete asynchronously." + } + } + } + }, + "/providers/Microsoft.DocumentDB/databaseAccountNames/{accountName}": { + "head": { + "operationId": "DatabaseAccounts_CheckNameExists", + "x-ms-examples": { + "CosmosDBDatabaseAccountCheckNameExists": { + "$ref": "./examples/CosmosDBDatabaseAccountCheckNameExists.json" + } + }, + "description": "Checks that the Azure Cosmos DB account name already exists. A valid account name may contain only lowercase letters, numbers, and the '-' character, and must be between 3 and 50 characters.", + "parameters": [ + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The account name is valid but is already in use." + }, + "404": { + "description": "Not Found. The account name is available and valid." + } + } + } + }, + "/providers/Microsoft.DocumentDB/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all of the available Cosmos DB Resource Provider operations.", + "operationId": "Operations_List", + "x-ms-examples": { + "CosmosDBOperationsList": { + "$ref": "./examples/CosmosDBOperationsList.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/metrics": { + "get": { + "operationId": "DatabaseAccounts_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountGetMetrics": { + "$ref": "./examples/CosmosDBDatabaseAccountGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The metrics for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/metrics": { + "get": { + "operationId": "Database_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseGetMetrics": { + "$ref": "./examples/CosmosDBDatabaseGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account and database.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The metrics for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/metrics": { + "get": { + "operationId": "Collection_ListMetrics", + "x-ms-examples": { + "CosmosDBCollectionGetMetrics": { + "$ref": "./examples/CosmosDBCollectionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account and collection.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The metrics for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/region/{region}/databases/{databaseRid}/collections/{collectionRid}/metrics": { + "get": { + "operationId": "CollectionRegion_ListMetrics", + "x-ms-examples": { + "CosmosDBRegionCollectionGetMetrics": { + "$ref": "./examples/CosmosDBRegionCollectionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account, collection and region.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/regionParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The metrics for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/region/{region}/metrics": { + "get": { + "operationId": "DatabaseAccountRegion_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBDatabaseAccountRegionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account and region.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/regionParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The metrics for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sourceRegion/{sourceRegion}/targetRegion/{targetRegion}/percentile/metrics": { + "get": { + "operationId": "PercentileSourceTarget_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBPercentileSourceTargetGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given account, source and target region. This url is only for PBS and Replication Latency data", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/sourceRegionParameter" + }, + { + "$ref": "#/parameters/targetRegionParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The percentile metrics for the account, source and target regions were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PercentileMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/targetRegion/{targetRegion}/percentile/metrics": { + "get": { + "operationId": "PercentileTarget_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBPercentileTargetGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given account target region. This url is only for PBS and Replication Latency data", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/targetRegionParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The percentile metrics for the account and target regions were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PercentileMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/percentile/metrics": { + "get": { + "operationId": "Percentile_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBPercentileGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given database account. This url is only for PBS and Replication Latency data", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The percentile metrics for the account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PercentileMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/region/{region}/databases/{databaseRid}/collections/{collectionRid}/partitions/metrics": { + "get": { + "operationId": "CollectionPartitionRegion_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBCollectionPartitionRegionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given collection and region, split by partition.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/regionParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The partition-level metrics for the collection and region were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PartitionMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/partitions/metrics": { + "get": { + "operationId": "CollectionPartition_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBCollectionPartitionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given collection, split by partition.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The partition-level metrics for the collection were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PartitionMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/partitionKeyRangeId/{partitionKeyRangeId}/metrics": { + "get": { + "operationId": "PartitionKeyRangeId_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBPKeyRangeIdGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given partition key range id.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "#/parameters/partitionKeyRangeIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The partition-level metrics for the partition key range id were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PartitionMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/region/{region}/databases/{databaseRid}/collections/{collectionRid}/partitionKeyRangeId/{partitionKeyRangeId}/metrics": { + "get": { + "operationId": "PartitionKeyRangeIdRegion_ListMetrics", + "x-ms-examples": { + "CosmosDBDatabaseAccountRegionGetMetrics": { + "$ref": "./examples/CosmosDBPKeyRangeIdRegionGetMetrics.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "description": "Retrieves the metrics determined by the given filter for the given partition key range id and region.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/regionParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "#/parameters/partitionKeyRangeIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/filterParameter" + } + ], + "responses": { + "200": { + "description": "The partition-level metrics for the partition key range id and region were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PartitionMetricListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/usages": { + "get": { + "operationId": "DatabaseAccounts_ListUsages", + "x-ms-examples": { + "CosmosDBDatabaseAccountGetUsages": { + "$ref": "./examples/CosmosDBDatabaseAccountGetUsages.json" + } + }, + "description": "Retrieves the usages (most recent data) for the given database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/usageFilterParameter" + } + ], + "responses": { + "200": { + "description": "The usages for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/UsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/usages": { + "get": { + "operationId": "Database_ListUsages", + "x-ms-examples": { + "CosmosDBDatabaseGetUsages": { + "$ref": "./examples/CosmosDBDatabaseGetUsages.json" + } + }, + "description": "Retrieves the usages (most recent data) for the given database.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/usageFilterParameter" + } + ], + "responses": { + "200": { + "description": "The usages for the database were retrieved successfully.", + "schema": { + "$ref": "#/definitions/UsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/usages": { + "get": { + "operationId": "Collection_ListUsages", + "x-ms-examples": { + "CosmosDBCollectionGetUsages": { + "$ref": "./examples/CosmosDBCollectionGetUsages.json" + } + }, + "description": "Retrieves the usages (most recent storage data) for the given collection.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/usageFilterParameter" + } + ], + "responses": { + "200": { + "description": "The usages for the collection were retrieved successfully.", + "schema": { + "$ref": "#/definitions/UsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/partitions/usages": { + "get": { + "operationId": "CollectionPartition_ListUsages", + "x-ms-examples": { + "CosmosDBCollectionGetUsages": { + "$ref": "./examples/CosmosDBCollectionPartitionGetUsages.json" + } + }, + "description": "Retrieves the usages (most recent storage data) for the given collection, split by partition.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/usageFilterParameter" + } + ], + "responses": { + "200": { + "description": "The usages for the collection, per partition were retrieved successfully.", + "schema": { + "$ref": "#/definitions/PartitionUsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/metricDefinitions": { + "get": { + "operationId": "Database_ListMetricDefinitions", + "x-ms-examples": { + "CosmosDBDatabaseGetMetricDefinitions": { + "$ref": "./examples/CosmosDBDatabaseGetMetricDefinitions.json" + } + }, + "description": "Retrieves metric definitions for the given database.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The metric definitions for the database were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricDefinitionsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/databases/{databaseRid}/collections/{collectionRid}/metricDefinitions": { + "get": { + "operationId": "Collection_ListMetricDefinitions", + "x-ms-examples": { + "CosmosDBCollectionGetMetricDefinitions": { + "$ref": "./examples/CosmosDBCollectionGetMetricDefinitions.json" + } + }, + "description": "Retrieves metric definitions for the given collection.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseRidParameter" + }, + { + "$ref": "#/parameters/collectionRidParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The metric definitions for the collection were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricDefinitionsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/metricDefinitions": { + "get": { + "operationId": "DatabaseAccounts_ListMetricDefinitions", + "x-ms-examples": { + "CosmosDBDatabaseAccountGetMetricDefinitions": { + "$ref": "./examples/CosmosDBDatabaseAccountGetMetricDefinitions.json" + } + }, + "description": "Retrieves metric definitions for the given database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The metric definitions for the database account were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MetricDefinitionsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases": { + "get": { + "operationId": "SqlResources_ListSqlDatabases", + "x-ms-examples": { + "CosmosDBSqlDatabaseList": { + "$ref": "./examples/CosmosDBSqlDatabaseList.json" + } + }, + "description": "Lists the SQL databases under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL database properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlDatabaseListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}": { + "get": { + "operationId": "SqlResources_GetSqlDatabase", + "x-ms-examples": { + "CosmosDBSqlDatabaseGet": { + "$ref": "./examples/CosmosDBSqlDatabaseGet.json" + } + }, + "description": "Gets the SQL database under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL database property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlDatabaseGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlDatabase", + "x-ms-examples": { + "CosmosDBSqlDatabaseCreateUpdate": { + "$ref": "./examples/CosmosDBSqlDatabaseCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB SQL database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "createUpdateSqlDatabaseParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SqlDatabaseCreateUpdateParameters" + }, + "description": "The parameters to provide for the current SQL database." + } + ], + "responses": { + "202": { + "description": "The SQL database create or update operation will complete asynchronously." + }, + "200": { + "description": "The SQL database create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlDatabaseGetResults" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlDatabase", + "x-ms-examples": { + "CosmosDBSqlDatabaseDelete": { + "$ref": "./examples/CosmosDBSqlDatabaseDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB SQL database.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL database delete operation will complete asynchronously." + }, + "204": { + "description": "The SQL database delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/throughputSettings/default": { + "get": { + "operationId": "SqlResources_GetSqlDatabaseThroughput", + "x-ms-examples": { + "CosmosDBSqlDatabaseThroughputGet": { + "$ref": "./examples/CosmosDBSqlDatabaseThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the SQL database under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the SQL database was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_UpdateSqlDatabaseThroughput", + "x-ms-examples": { + "CosmosDBSqlDatabaseThroughputUpdate": { + "$ref": "./examples/CosmosDBSqlDatabaseThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB SQL database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The parameters to provide for the RUs per second of the current SQL database." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the SQL database update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the SQL database update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers": { + "get": { + "operationId": "SqlResources_ListSqlContainers", + "x-ms-examples": { + "CosmosDBSqlContainerList": { + "$ref": "./examples/CosmosDBSqlContainerList.json" + } + }, + "description": "Lists the SQL container under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL container properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlContainerListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}": { + "get": { + "operationId": "SqlResources_GetSqlContainer", + "x-ms-examples": { + "CosmosDBSqlContainerGet": { + "$ref": "./examples/CosmosDBSqlContainerGet.json" + } + }, + "description": "Gets the SQL container under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL container property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlContainerGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlContainer", + "x-ms-examples": { + "CosmosDBSqlContainerCreateUpdate": { + "$ref": "./examples/CosmosDBSqlContainerCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB SQL container", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "createUpdateSqlContainerParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SqlContainerCreateUpdateParameters" + }, + "description": "The parameters to provide for the current SQL container." + } + ], + "responses": { + "202": { + "description": "The SQL container create or update operation will complete asynchronously." + }, + "200": { + "description": "The SQL container create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlContainerGetResults" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlContainer", + "x-ms-examples": { + "CosmosDBSqlContainerDelete": { + "$ref": "./examples/CosmosDBSqlContainerDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB SQL container.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL container delete operation will complete asynchronously." + }, + "204": { + "description": "The SQL container delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/throughputSettings/default": { + "get": { + "operationId": "SqlResources_GetSqlContainerThroughput", + "x-ms-examples": { + "CosmosDBSqlContainerThroughputGet": { + "$ref": "./examples/CosmosDBSqlContainerThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the SQL container under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the SQL container was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_UpdateSqlContainerThroughput", + "x-ms-examples": { + "CosmosDBSqlContainerThroughputUpdate": { + "$ref": "./examples/CosmosDBSqlContainerThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB SQL container", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The parameters to provide for the RUs per second of the current SQL container." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the SQL container update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the SQL container update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/storedProcedures": { + "get": { + "operationId": "SqlResources_ListSqlStoredProcedures", + "x-ms-examples": { + "CosmosDBSqlStoredProcedureList": { + "$ref": "./examples/CosmosDBSqlStoredProcedureList.json" + } + }, + "description": "Lists the SQL storedProcedure under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL stored procedure properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlStoredProcedureListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/storedProcedures/{storedProcedureName}": { + "get": { + "operationId": "SqlResources_GetSqlStoredProcedure", + "x-ms-examples": { + "CosmosDBSqlStoredProcedureGet": { + "$ref": "./examples/CosmosDBSqlStoredProcedureGet.json" + } + }, + "description": "Gets the SQL storedProcedure under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/storedProcedureNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL storedProcedure property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlStoredProcedureGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlStoredProcedure", + "x-ms-examples": { + "CosmosDBSqlStoredProcedureCreateUpdate": { + "$ref": "./examples/CosmosDBSqlStoredProcedureCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB SQL storedProcedure", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/storedProcedureNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "createUpdateSqlStoredProcedureParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SqlStoredProcedureCreateUpdateParameters" + }, + "description": "The parameters to provide for the current SQL storedProcedure." + } + ], + "responses": { + "202": { + "description": "The SQL storedProcedure create or update operation will complete asynchronously." + }, + "200": { + "description": "The SQL storedProcedure create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlStoredProcedureGetResults" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlStoredProcedure", + "x-ms-examples": { + "CosmosDBSqlStoredProcedureDelete": { + "$ref": "./examples/CosmosDBSqlStoredProcedureDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB SQL storedProcedure.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/storedProcedureNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL storedProcedure delete operation will complete asynchronously." + }, + "204": { + "description": "The SQL storedProcedure delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/userDefinedFunctions": { + "get": { + "operationId": "SqlResources_ListSqlUserDefinedFunctions", + "x-ms-examples": { + "CosmosDBSqlUserDefinedFunctionList": { + "$ref": "./examples/CosmosDBSqlUserDefinedFunctionList.json" + } + }, + "description": "Lists the SQL userDefinedFunction under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL userDefinedFunction properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlUserDefinedFunctionListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/userDefinedFunctions/{userDefinedFunctionName}": { + "get": { + "operationId": "SqlResources_GetSqlUserDefinedFunction", + "x-ms-examples": { + "CosmosDBSqlUserDefinedFunctionGet": { + "$ref": "./examples/CosmosDBSqlUserDefinedFunctionGet.json" + } + }, + "description": "Gets the SQL userDefinedFunction under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/userDefinedFunctionNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL userDefinedFunction property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlUserDefinedFunctionGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlUserDefinedFunction", + "x-ms-examples": { + "CosmosDBSqlUserDefinedFunctionCreateUpdate": { + "$ref": "./examples/CosmosDBSqlUserDefinedFunctionCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB SQL userDefinedFunction", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/userDefinedFunctionNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "createUpdateSqlUserDefinedFunctionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SqlUserDefinedFunctionCreateUpdateParameters" + }, + "description": "The parameters to provide for the current SQL userDefinedFunction." + } + ], + "responses": { + "202": { + "description": "The SQL userDefinedFunction create or update operation will complete asynchronously." + }, + "200": { + "description": "The SQL userDefinedFunction create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlUserDefinedFunctionGetResults" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlUserDefinedFunction", + "x-ms-examples": { + "CosmosDBSqlUserDefinedFunctionDelete": { + "$ref": "./examples/CosmosDBSqlUserDefinedFunctionDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB SQL userDefinedFunction.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/userDefinedFunctionNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL userDefinedFunction delete operation will complete asynchronously." + }, + "204": { + "description": "The SQL userDefinedFunction delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/triggers": { + "get": { + "operationId": "SqlResources_ListSqlTriggers", + "x-ms-examples": { + "CosmosDBSqlTriggerList": { + "$ref": "./examples/CosmosDBSqlTriggerList.json" + } + }, + "description": "Lists the SQL trigger under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL trigger properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlTriggerListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/triggers/{triggerName}": { + "get": { + "operationId": "SqlResources_GetSqlTrigger", + "x-ms-examples": { + "CosmosDBSqlTriggerGet": { + "$ref": "./examples/CosmosDBSqlTriggerGet.json" + } + }, + "description": "Gets the SQL trigger under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/triggerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The SQL trigger property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/SqlTriggerGetResults" + } + } + } + }, + "put": { + "operationId": "SqlResources_CreateUpdateSqlTrigger", + "x-ms-examples": { + "CosmosDBSqlTriggerCreateUpdate": { + "$ref": "./examples/CosmosDBSqlTriggerCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB SQL trigger", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/triggerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "createUpdateSqlTriggerParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SqlTriggerCreateUpdateParameters" + }, + "description": "The parameters to provide for the current SQL trigger." + } + ], + "responses": { + "202": { + "description": "The SQL trigger create or update operation will complete asynchronously." + }, + "200": { + "description": "The SQL trigger create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/SqlTriggerGetResults" + } + } + } + }, + "delete": { + "operationId": "SqlResources_DeleteSqlTrigger", + "x-ms-examples": { + "CosmosDBSqlTriggerDelete": { + "$ref": "./examples/CosmosDBSqlTriggerDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB SQL trigger.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/containerNameParameter" + }, + { + "$ref": "#/parameters/triggerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The SQL trigger delete operation will complete asynchronously." + }, + "204": { + "description": "The SQL trigger delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases": { + "get": { + "operationId": "MongoDBResources_ListMongoDBDatabases", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseList": { + "$ref": "./examples/CosmosDBMongoDBDatabaseList.json" + } + }, + "description": "Lists the MongoDB databases under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The MongoDB database properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MongoDBDatabaseListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}": { + "get": { + "operationId": "MongoDBResources_GetMongoDBDatabase", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseGet": { + "$ref": "./examples/CosmosDBMongoDBDatabaseGet.json" + } + }, + "description": "Gets the MongoDB databases under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The MongoDB database property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/MongoDBDatabaseGetResults" + } + } + } + }, + "put": { + "operationId": "MongoDBResources_CreateUpdateMongoDBDatabase", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseCreateUpdate": { + "$ref": "./examples/CosmosDBMongoDBDatabaseCreateUpdate.json" + } + }, + "description": "Create or updates Azure Cosmos DB MongoDB database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "createUpdateMongoDBDatabaseParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MongoDBDatabaseCreateUpdateParameters" + }, + "description": "The parameters to provide for the current MongoDB database." + } + ], + "responses": { + "202": { + "description": "The MongoDB database create or update operation will complete asynchronously." + }, + "200": { + "description": "The MongoDB database create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/MongoDBDatabaseGetResults" + } + } + } + }, + "delete": { + "operationId": "MongoDBResources_DeleteMongoDBDatabase", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseDelete": { + "$ref": "./examples/CosmosDBMongoDBDatabaseDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB MongoDB database.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The MongoDB database delete operation will complete asynchronously." + }, + "204": { + "description": "The MongoDB database delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/throughputSettings/default": { + "get": { + "operationId": "MongoDBResources_GetMongoDBDatabaseThroughput", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseThroughputGet": { + "$ref": "./examples/CosmosDBMongoDBDatabaseThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the MongoDB database under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the MongoDB database was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "MongoDBResources_UpdateMongoDBDatabaseThroughput", + "x-ms-examples": { + "CosmosDBMongoDBDatabaseThroughputUpdate": { + "$ref": "./examples/CosmosDBMongoDBDatabaseThroughputUpdate.json" + } + }, + "description": "Update RUs per second of the an Azure Cosmos DB MongoDB database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current MongoDB database." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the MongoDB database update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the MongoDB database update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections": { + "get": { + "operationId": "MongoDBResources_ListMongoDBCollections", + "x-ms-examples": { + "CosmosDBMongoDBCollectionList": { + "$ref": "./examples/CosmosDBMongoDBCollectionList.json" + } + }, + "description": "Lists the MongoDB collection under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The MongoDB collection properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/MongoDBCollectionListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections/{collectionName}": { + "get": { + "operationId": "MongoDBResources_GetMongoDBCollection", + "x-ms-examples": { + "CosmosDBMongoDBCollectionGet": { + "$ref": "./examples/CosmosDBMongoDBCollectionGet.json" + } + }, + "description": "Gets the MongoDB collection under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The MongoDB collection property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/MongoDBCollectionGetResults" + } + } + } + }, + "put": { + "operationId": "MongoDBResources_CreateUpdateMongoDBCollection", + "x-ms-examples": { + "CosmosDBMongoDBCollectionCreateUpdate": { + "$ref": "./examples/CosmosDBMongoDBCollectionCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB MongoDB Collection", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "createUpdateMongoDBCollectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MongoDBCollectionCreateUpdateParameters" + }, + "description": "The parameters to provide for the current MongoDB Collection." + } + ], + "responses": { + "202": { + "description": "The MongoDB Collection create or update operation will complete asynchronously." + }, + "200": { + "description": "The MongoDB Collection create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/MongoDBCollectionGetResults" + } + } + } + }, + "delete": { + "operationId": "MongoDBResources_DeleteMongoDBCollection", + "x-ms-examples": { + "CosmosDBMongoDBCollectionDelete": { + "$ref": "./examples/CosmosDBMongoDBCollectionDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB MongoDB Collection.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The MongoDB collection delete operation will complete asynchronously." + }, + "204": { + "description": "The MongoDB collection delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections/{collectionName}/throughputSettings/default": { + "get": { + "operationId": "MongoDBResources_GetMongoDBCollectionThroughput", + "x-ms-examples": { + "CosmosDBMongoDBCollectionThroughputGet": { + "$ref": "./examples/CosmosDBMongoDBCollectionThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the MongoDB collection under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the MongoDB collection was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "MongoDBResources_UpdateMongoDBCollectionThroughput", + "x-ms-examples": { + "CosmosDBMongoDBCollectionThroughputUpdate": { + "$ref": "./examples/CosmosDBMongoDBCollectionThroughputUpdate.json" + } + }, + "description": "Update the RUs per second of an Azure Cosmos DB MongoDB collection", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/collectionNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current MongoDB collection." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the MongoDB collection update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the MongoDB collection update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/tables": { + "get": { + "operationId": "TableResources_ListTables", + "x-ms-examples": { + "CosmosDBTableList": { + "$ref": "./examples/CosmosDBTableList.json" + } + }, + "description": "Lists the Tables under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Table properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/TableListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/tables/{tableName}": { + "get": { + "operationId": "TableResources_GetTable", + "x-ms-examples": { + "CosmosDBTableGet": { + "$ref": "./examples/CosmosDBTableGet.json" + } + }, + "description": "Gets the Tables under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Table property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/TableGetResults" + } + } + } + }, + "put": { + "operationId": "TableResources_CreateUpdateTable", + "x-ms-examples": { + "CosmosDBTableReplace": { + "$ref": "./examples/CosmosDBTableCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB Table", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "createUpdateTableParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TableCreateUpdateParameters" + }, + "description": "The parameters to provide for the current Table." + } + ], + "responses": { + "202": { + "description": "The Table create or update operation will complete asynchronously." + }, + "200": { + "description": "The Table create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/TableGetResults" + } + } + } + }, + "delete": { + "operationId": "TableResources_DeleteTable", + "x-ms-examples": { + "CosmosDBTableDelete": { + "$ref": "./examples/CosmosDBTableDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB Table.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Table delete operation will complete asynchronously." + }, + "204": { + "description": "The Table delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/tables/{tableName}/throughputSettings/default": { + "get": { + "operationId": "TableResources_GetTableThroughput", + "x-ms-examples": { + "CosmosDBTableThroughputGet": { + "$ref": "./examples/CosmosDBTableThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the Table under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the Table was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "TableResources_UpdateTableThroughput", + "x-ms-examples": { + "CosmosDBTableThroughputUpdate": { + "$ref": "./examples/CosmosDBTableThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB Table", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The parameters to provide for the RUs per second of the current Table." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the Table update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the Table update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces": { + "get": { + "operationId": "CassandraResources_ListCassandraKeyspaces", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceList": { + "$ref": "./examples/CosmosDBCassandraKeyspaceList.json" + } + }, + "description": "Lists the Cassandra keyspaces under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Cassandra keyspace properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/CassandraKeyspaceListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}": { + "get": { + "operationId": "CassandraResources_GetCassandraKeyspace", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceGet": { + "$ref": "./examples/CosmosDBCassandraKeyspaceGet.json" + } + }, + "description": "Gets the Cassandra keyspaces under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Cassandra keyspace property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/CassandraKeyspaceGetResults" + } + } + } + }, + "put": { + "operationId": "CassandraResources_CreateUpdateCassandraKeyspace", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceCreateUpdate": { + "$ref": "./examples/CosmosDBCassandraKeyspaceCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB Cassandra keyspace", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "createUpdateCassandraKeyspaceParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CassandraKeyspaceCreateUpdateParameters" + }, + "description": "The parameters to provide for the current Cassandra keyspace." + } + ], + "responses": { + "202": { + "description": "The Cassandra keyspace create or update operation will complete asynchronously." + }, + "200": { + "description": "The Cassandra keyspace create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/CassandraKeyspaceGetResults" + } + } + } + }, + "delete": { + "operationId": "CassandraResources_DeleteCassandraKeyspace", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceDelete": { + "$ref": "./examples/CosmosDBCassandraKeyspaceDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB Cassandra keyspace.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Cassandra keyspace delete operation will complete asynchronously." + }, + "204": { + "description": "The Cassandra keyspace delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/throughputSettings/default": { + "get": { + "operationId": "CassandraResources_GetCassandraKeyspaceThroughput", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceThroughputGet": { + "$ref": "./examples/CosmosDBCassandraKeyspaceThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the Cassandra Keyspace under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the Cassandra Keyspace was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "CassandraResources_UpdateCassandraKeyspaceThroughput", + "x-ms-examples": { + "CosmosDBCassandraKeyspaceThroughputUpdate": { + "$ref": "./examples/CosmosDBCassandraKeyspaceThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB Cassandra Keyspace", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current Cassandra Keyspace." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the Cassandra Keyspace update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the Cassandra Keyspace update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/tables": { + "get": { + "operationId": "CassandraResources_ListCassandraTables", + "x-ms-examples": { + "CosmosDBCassandraTableList": { + "$ref": "./examples/CosmosDBCassandraTableList.json" + } + }, + "description": "Lists the Cassandra table under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Cassandra table properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/CassandraTableListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/tables/{tableName}": { + "get": { + "operationId": "CassandraResources_GetCassandraTable", + "x-ms-examples": { + "CosmosDBCassandraTableGet": { + "$ref": "./examples/CosmosDBCassandraTableGet.json" + } + }, + "description": "Gets the Cassandra table under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Cassandra table property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/CassandraTableGetResults" + } + } + } + }, + "put": { + "operationId": "CassandraResources_CreateUpdateCassandraTable", + "x-ms-examples": { + "CosmosDBCassandraTableCreateUpdate": { + "$ref": "./examples/CosmosDBCassandraTableCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB Cassandra Table", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "createUpdateCassandraTableParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CassandraTableCreateUpdateParameters" + }, + "description": "The parameters to provide for the current Cassandra Table." + } + ], + "responses": { + "202": { + "description": "The Cassandra Table create or update operation will complete asynchronously." + }, + "200": { + "description": "The Cassandra Table create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/CassandraTableGetResults" + } + } + } + }, + "delete": { + "operationId": "CassandraResources_DeleteCassandraTable", + "x-ms-examples": { + "CosmosDBCassandraTableDelete": { + "$ref": "./examples/CosmosDBCassandraTableDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB Cassandra table.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Cassandra table delete operation will complete asynchronously." + }, + "204": { + "description": "The Cassandra table delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/tables/{tableName}/throughputSettings/default": { + "get": { + "operationId": "CassandraResources_GetCassandraTableThroughput", + "x-ms-examples": { + "CosmosDBCassandraTableThroughputGet": { + "$ref": "./examples/CosmosDBCassandraTableThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the Cassandra table under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the Cassandra table was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "CassandraResources_UpdateCassandraTableThroughput", + "x-ms-examples": { + "CosmosDBCassandraTableThroughputUpdate": { + "$ref": "./examples/CosmosDBCassandraTableThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB Cassandra table", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/keyspaceNameParameter" + }, + { + "$ref": "#/parameters/tableNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current Cassandra table." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the Cassandra table update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the Cassandra table update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases": { + "get": { + "operationId": "GremlinResources_ListGremlinDatabases", + "x-ms-examples": { + "CosmosDBGremlinDatabaseList": { + "$ref": "./examples/CosmosDBGremlinDatabaseList.json" + } + }, + "description": "Lists the Gremlin databases under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Gremlin database properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/GremlinDatabaseListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}": { + "get": { + "operationId": "GremlinResources_GetGremlinDatabase", + "x-ms-examples": { + "CosmosDBGremlinDatabaseGet": { + "$ref": "./examples/CosmosDBGremlinDatabaseGet.json" + } + }, + "description": "Gets the Gremlin databases under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Gremlin database property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/GremlinDatabaseGetResults" + } + } + } + }, + "put": { + "operationId": "GremlinResources_CreateUpdateGremlinDatabase", + "x-ms-examples": { + "CosmosDBGremlinDatabaseCreateUpdate": { + "$ref": "./examples/CosmosDBGremlinDatabaseCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB Gremlin database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "createUpdateGremlinDatabaseParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GremlinDatabaseCreateUpdateParameters" + }, + "description": "The parameters to provide for the current Gremlin database." + } + ], + "responses": { + "202": { + "description": "The Gremlin database create or update operation will complete asynchronously." + }, + "200": { + "description": "The Gremlin database create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/GremlinDatabaseGetResults" + } + } + } + }, + "delete": { + "operationId": "GremlinResources_DeleteGremlinDatabase", + "x-ms-examples": { + "CosmosDBGremlinDatabaseDelete": { + "$ref": "./examples/CosmosDBGremlinDatabaseDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB Gremlin database.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Gremlin database delete operation will complete asynchronously." + }, + "204": { + "description": "The Gremlin database delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/throughputSettings/default": { + "get": { + "operationId": "GremlinResources_GetGremlinDatabaseThroughput", + "x-ms-examples": { + "CosmosDBGremlinDatabaseThroughputGet": { + "$ref": "./examples/CosmosDBGremlinDatabaseThroughputGet.json" + } + }, + "description": "Gets the RUs per second of the Gremlin database under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the Gremlin database was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "GremlinResources_UpdateGremlinDatabaseThroughput", + "x-ms-examples": { + "CosmosDBGremlinDatabaseThroughputUpdate": { + "$ref": "./examples/CosmosDBGremlinDatabaseThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB Gremlin database", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current Gremlin database." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the Gremlin database update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the Gremlin database update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/graphs": { + "get": { + "operationId": "GremlinResources_ListGremlinGraphs", + "x-ms-examples": { + "CosmosDBGremlinGraphList": { + "$ref": "./examples/CosmosDBGremlinGraphList.json" + } + }, + "description": "Lists the Gremlin graph under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Gremlin graph properties were retrieved successfully.", + "schema": { + "$ref": "#/definitions/GremlinGraphListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/graphs/{graphName}": { + "get": { + "operationId": "GremlinResources_GetGremlinGraph", + "x-ms-examples": { + "CosmosDBGremlinGraphGet": { + "$ref": "./examples/CosmosDBGremlinGraphGet.json" + } + }, + "description": "Gets the Gremlin graph under an existing Azure Cosmos DB database account.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The Gremlin graph property was retrieved successfully.", + "schema": { + "$ref": "#/definitions/GremlinGraphGetResults" + } + } + } + }, + "put": { + "operationId": "GremlinResources_CreateUpdateGremlinGraph", + "x-ms-examples": { + "CosmosDBGremlinGraphCreateUpdate": { + "$ref": "./examples/CosmosDBGremlinGraphCreateUpdate.json" + } + }, + "description": "Create or update an Azure Cosmos DB Gremlin graph", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "createUpdateGremlinGraphParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GremlinGraphCreateUpdateParameters" + }, + "description": "The parameters to provide for the current Gremlin graph." + } + ], + "responses": { + "202": { + "description": "The Gremlin graph create or update operation will complete asynchronously." + }, + "200": { + "description": "The Gremlin graph create or update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/GremlinGraphGetResults" + } + } + } + }, + "delete": { + "operationId": "GremlinResources_DeleteGremlinGraph", + "x-ms-examples": { + "CosmosDBGremlinGraphDelete": { + "$ref": "./examples/CosmosDBGremlinGraphDelete.json" + } + }, + "description": "Deletes an existing Azure Cosmos DB Gremlin graph.", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "The Gremlin graph delete operation will complete asynchronously." + }, + "204": { + "description": "The Gremlin graph delete operation was completed successfully." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/gremlinDatabases/{databaseName}/graphs/{graphName}/throughputSettings/default": { + "get": { + "operationId": "GremlinResources_GetGremlinGraphThroughput", + "x-ms-examples": { + "CosmosDBGremlinGraphThroughputGet": { + "$ref": "./examples/CosmosDBGremlinGraphThroughputGet.json" + } + }, + "description": "Gets the Gremlin graph throughput under an existing Azure Cosmos DB database account with the provided name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The RUs per second of the Gremlin graph was retrieved successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + }, + "put": { + "operationId": "GremlinResources_UpdateGremlinGraphThroughput", + "x-ms-examples": { + "CosmosDBGremlinGraphThroughputUpdate": { + "$ref": "./examples/CosmosDBGremlinGraphThroughputUpdate.json" + } + }, + "description": "Update RUs per second of an Azure Cosmos DB Gremlin graph", + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/accountNameParameter" + }, + { + "$ref": "#/parameters/databaseNameParameter" + }, + { + "$ref": "#/parameters/graphNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "updateThroughputParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ThroughputSettingsUpdateParameters" + }, + "description": "The RUs per second of the parameters to provide for the current Gremlin graph." + } + ], + "responses": { + "202": { + "description": "The RUs per second of the Gremlin graph update operation will complete asynchronously." + }, + "200": { + "description": "The RUs per second of the Gremlin graph update operation was completed successfully.", + "schema": { + "$ref": "#/definitions/ThroughputSettingsGetResults" + } + } + } + } + } + }, + "definitions": { + "DatabaseAccountsListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseAccountGetResults" + }, + "description": "List of database account and their properties." + } + }, + "description": "The List operation response, that contains the database accounts and their properties." + }, + "SqlDatabaseListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SqlDatabaseGetResults" + }, + "description": "List of SQL databases and their properties." + } + }, + "description": "The List operation response, that contains the SQL databases and their properties." + }, + "SqlContainerListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SqlContainerGetResults" + }, + "description": "List of containers and their properties." + } + }, + "description": "The List operation response, that contains the containers and their properties." + }, + "SqlStoredProcedureListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SqlStoredProcedureGetResults" + }, + "description": "List of storedProcedures and their properties." + } + }, + "description": "The List operation response, that contains the storedProcedures and their properties." + }, + "SqlUserDefinedFunctionListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SqlUserDefinedFunctionGetResults" + }, + "description": "List of userDefinedFunctions and their properties." + } + }, + "description": "The List operation response, that contains the userDefinedFunctions and their properties." + }, + "SqlTriggerListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SqlTriggerGetResults" + }, + "description": "List of triggers and their properties." + } + }, + "description": "The List operation response, that contains the triggers and their properties." + }, + "MongoDBDatabaseListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/MongoDBDatabaseGetResults" + }, + "description": "List of MongoDB databases and their properties." + } + }, + "description": "The List operation response, that contains the MongoDB databases and their properties." + }, + "MongoDBCollectionListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/MongoDBCollectionGetResults" + }, + "description": "List of MongoDB collections and their properties." + } + }, + "description": "The List operation response, that contains the MongoDB collections and their properties." + }, + "TableListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/TableGetResults" + }, + "description": "List of Table and their properties." + } + }, + "description": "The List operation response, that contains the Table and their properties." + }, + "CassandraKeyspaceListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/CassandraKeyspaceGetResults" + }, + "description": "List of Cassandra keyspaces and their properties." + } + }, + "description": "The List operation response, that contains the Cassandra keyspaces and their properties." + }, + "CassandraTableListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/CassandraTableGetResults" + }, + "description": "List of Cassandra tables and their properties." + } + }, + "description": "The List operation response, that contains the Cassandra tables and their properties." + }, + "GremlinDatabaseListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/GremlinDatabaseGetResults" + }, + "description": "List of Gremlin databases and their properties." + } + }, + "description": "The List operation response, that contains the Gremlin databases and their properties." + }, + "GremlinGraphListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/GremlinGraphGetResults" + }, + "description": "List of graphs and their properties." + } + }, + "description": "The List operation response, that contains the graphs and their properties." + }, + "ErrorResponse": { + "properties": { + "code": { + "description": "Error code.", + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + }, + "description": "Error Response." + }, + "FailoverPolicies": { + "properties": { + "failoverPolicies": { + "type": "array", + "description": "List of failover policies.", + "items": { + "$ref": "#/definitions/FailoverPolicy" + } + } + }, + "required": [ + "failoverPolicies" + ], + "description": "The list of new failover policies for the failover priority change." + }, + "FailoverPolicy": { + "type": "object", + "description": "The failover policy for a given region of a database account.", + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The unique identifier of the region in which the database account replicates to. Example: <accountName>-<locationName>." + }, + "locationName": { + "type": "string", + "description": "The name of the region in which the database account exists." + }, + "failoverPriority": { + "type": "integer", + "minimum": 0, + "format": "int32", + "description": "The failover priority of the region. A failover priority of 0 indicates a write region. The maximum value for a failover priority = (total number of regions - 1). Failover priority values must be unique for each of the regions in which the database account exists." + } + } + }, + "RegionForOnlineOffline": { + "properties": { + "region": { + "type": "string", + "description": "Cosmos DB region, with spaces between words and each word capitalized." + } + }, + "required": [ + "region" + ], + "description": "Cosmos DB region to online or offline." + }, + "Location": { + "description": "A region in which the Azure Cosmos DB database account is deployed.", + "type": "object", + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The unique identifier of the region within the database account. Example: <accountName>-<locationName>." + }, + "locationName": { + "type": "string", + "description": "The name of the region." + }, + "documentEndpoint": { + "type": "string", + "readOnly": true, + "description": "The connection endpoint for the specific region. Example: https://<accountName>-<locationName>.documents.azure.com:443/" + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState" + }, + "failoverPriority": { + "description": "The failover priority of the region. A failover priority of 0 indicates a write region. The maximum value for a failover priority = (total number of regions - 1). Failover priority values must be unique for each of the regions in which the database account exists.", + "format": "int32", + "type": "integer", + "minimum": 0 + }, + "isZoneRedundant": { + "type": "boolean", + "description": "Flag to indicate whether or not this region is an AvailabilityZone region" + } + } + }, + "ARMResourceProperties": { + "type": "object", + "description": "The core properties of ARM resources.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The unique resource identifier of the ARM resource." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the ARM resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of Azure resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "tags": { + "$ref": "#/definitions/Tags" + } + }, + "x-ms-azure-resource": true + }, + "ARMProxyResource": { + "type": "object", + "description": "The resource model definition for a ARM proxy resource. It will have everything other than required location and tags", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The unique resource identifier of the database account." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the database account." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of Azure resource." + } + }, + "x-ms-azure-resource": true + }, + "DatabaseAccountGetResults": { + "description": "An Azure Cosmos DB database account.", + "type": "object", + "properties": { + "kind": { + "description": "Indicates the type of database account. This can only be set at database account creation.", + "type": "string", + "default": "GlobalDocumentDB", + "enum": [ + "GlobalDocumentDB", + "MongoDB", + "Parse" + ], + "x-ms-enum": { + "name": "DatabaseAccountKind", + "modelAsString": true + } + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DatabaseAccountGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "ExtendedResourceProperties": { + "description": "The system generated resource properties associated with SQL databases, SQL containers, Gremlin databases and Gremlin graphs.", + "type": "object", + "properties": { + "_rid": { + "type": "string", + "description": "A system generated property. A unique identifier.", + "readOnly": true + }, + "_ts": { + "description": "A system generated property that denotes the last updated timestamp of the resource.", + "readOnly": true + }, + "_etag": { + "type": "string", + "description": "A system generated property representing the resource etag required for optimistic concurrency control.", + "readOnly": true + } + } + }, + "ThroughputSettingsGetResults": { + "description": "An Azure Cosmos DB resource throughput.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB resource throughput", + "$ref": "#/definitions/ThroughputSettingsGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "ThroughputSettingsGetProperties": { + "description": "The properties of an Azure Cosmos DB resource throughput", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/ThroughputSettingsResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + } + } + }, + "SqlDatabaseGetResults": { + "description": "An Azure Cosmos DB SQL database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB SQL database", + "$ref": "#/definitions/SqlDatabaseGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "SqlDatabaseGetProperties": { + "description": "The properties of an Azure Cosmos DB SQL database", + "type": "object", + "properties": { + "resource": { + "properties": { + "_colls": { + "type": "string", + "description": "A system generated property that specified the addressable path of the collections resource." + }, + "_users": { + "type": "string", + "description": "A system generated property that specifies the addressable path of the users resource." + } + }, + "allOf": [ + { + "$ref": "#/definitions/SqlDatabaseResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "SqlContainerGetResults": { + "description": "An Azure Cosmos DB container.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB container", + "$ref": "#/definitions/SqlContainerGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "SqlContainerGetProperties": { + "description": "The properties of an Azure Cosmos DB container", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/SqlContainerResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "SqlStoredProcedureGetResults": { + "description": "An Azure Cosmos DB storedProcedure.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB storedProcedure", + "$ref": "#/definitions/SqlStoredProcedureGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "SqlStoredProcedureGetProperties": { + "description": "The properties of an Azure Cosmos DB StoredProcedure", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/SqlStoredProcedureResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + } + } + }, + "SqlUserDefinedFunctionGetResults": { + "description": "An Azure Cosmos DB userDefinedFunction.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB userDefinedFunction", + "$ref": "#/definitions/SqlUserDefinedFunctionGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "SqlUserDefinedFunctionGetProperties": { + "description": "The properties of an Azure Cosmos DB userDefinedFunction", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/SqlUserDefinedFunctionResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + } + } + }, + "SqlTriggerGetResults": { + "description": "An Azure Cosmos DB trigger.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB trigger", + "$ref": "#/definitions/SqlTriggerGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "SqlTriggerGetProperties": { + "description": "The properties of an Azure Cosmos DB trigger", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/SqlTriggerResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + } + } + }, + "MongoDBDatabaseGetResults": { + "description": "An Azure Cosmos DB MongoDB database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB MongoDB database", + "$ref": "#/definitions/MongoDBDatabaseGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "MongoDBDatabaseGetProperties": { + "description": "The properties of an Azure Cosmos DB MongoDB database", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/MongoDBDatabaseResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "MongoDBCollectionGetResults": { + "description": "An Azure Cosmos DB MongoDB collection.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB MongoDB collection", + "$ref": "#/definitions/MongoDBCollectionGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "MongoDBCollectionGetProperties": { + "description": "The properties of an Azure Cosmos DB MongoDB collection", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/MongoDBCollectionResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "TableGetResults": { + "description": "An Azure Cosmos DB Table.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB Table", + "$ref": "#/definitions/TableGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "TableGetProperties": { + "description": "The properties of an Azure Cosmos Table", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/TableResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "CassandraKeyspaceGetResults": { + "description": "An Azure Cosmos DB Cassandra keyspace.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB Cassandra keyspace", + "$ref": "#/definitions/CassandraKeyspaceGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "CassandraKeyspaceGetProperties": { + "description": "The properties of an Azure Cosmos DB Cassandra keyspace", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/CassandraKeyspaceResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "CassandraTableGetResults": { + "description": "An Azure Cosmos DB Cassandra table.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB Cassandra table", + "$ref": "#/definitions/CassandraTableGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "CassandraTableGetProperties": { + "description": "The properties of an Azure Cosmos DB Cassandra table", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/CassandraTableResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "GremlinDatabaseGetResults": { + "description": "An Azure Cosmos DB Gremlin database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB SQL database", + "$ref": "#/definitions/GremlinDatabaseGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "GremlinDatabaseGetProperties": { + "description": "The properties of an Azure Cosmos DB SQL database", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/GremlinDatabaseResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "GremlinGraphGetResults": { + "description": "An Azure Cosmos DB Gremlin graph.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "The properties of an Azure Cosmos DB Gremlin graph", + "$ref": "#/definitions/GremlinGraphGetProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ] + }, + "GremlinGraphGetProperties": { + "description": "The properties of an Azure Cosmos DB Gremlin graph", + "type": "object", + "properties": { + "resource": { + "allOf": [ + { + "$ref": "#/definitions/GremlinGraphResource" + }, + { + "$ref": "#/definitions/ExtendedResourceProperties" + } + ] + }, + "options": { + "allOf": [ + { + "$ref": "#/definitions/OptionsResource" + } + ] + } + } + }, + "ConsistencyPolicy": { + "type": "object", + "description": "The consistency policy for the Cosmos DB database account.", + "properties": { + "defaultConsistencyLevel": { + "description": "The default consistency level and configuration settings of the Cosmos DB account.", + "type": "string", + "enum": [ + "Eventual", + "Session", + "BoundedStaleness", + "Strong", + "ConsistentPrefix" + ], + "x-ms-enum": { + "name": "DefaultConsistencyLevel", + "modelAsString": false + } + }, + "maxStalenessPrefix": { + "description": "When used with the Bounded Staleness consistency level, this value represents the number of stale requests tolerated. Accepted range for this value is 1 – 2,147,483,647. Required when defaultConsistencyPolicy is set to 'BoundedStaleness'.", + "type": "integer", + "minimum": 1, + "maximum": 2147483647, + "format": "int64" + }, + "maxIntervalInSeconds": { + "description": "When used with the Bounded Staleness consistency level, this value represents the time amount of staleness (in seconds) tolerated. Accepted range for this value is 5 - 86400. Required when defaultConsistencyPolicy is set to 'BoundedStaleness'.", + "type": "integer", + "minimum": 5, + "maximum": 86400, + "format": "int32" + } + }, + "required": [ + "defaultConsistencyLevel" + ] + }, + "DatabaseAccountGetProperties": { + "description": "Properties for the database account.", + "type": "object", + "properties": { + "provisioningState": { + "$ref": "#/definitions/ProvisioningState" + }, + "documentEndpoint": { + "description": "The connection endpoint for the Cosmos DB database account.", + "type": "string", + "readOnly": true + }, + "databaseAccountOfferType": { + "description": "The offer type for the Cosmos DB database account. Default value: Standard.", + "readOnly": true, + "$ref": "#/definitions/DatabaseAccountOfferType" + }, + "ipRangeFilter": { + "description": "Cosmos DB Firewall Support: This value specifies the set of IP addresses or IP address ranges in CIDR form to be included as the allowed list of client IPs for a given database account. IP addresses/ranges must be comma separated and must not contain any spaces.", + "$ref": "#/definitions/IPRangeFilter" + }, + "isVirtualNetworkFilterEnabled": { + "description": "Flag to indicate whether to enable/disable Virtual Network ACL rules.", + "type": "boolean" + }, + "enableAutomaticFailover": { + "description": "Enables automatic failover of the write region in the rare event that the region is unavailable due to an outage. Automatic failover will result in a new write region for the account and is chosen based on the failover priorities configured for the account.", + "type": "boolean" + }, + "consistencyPolicy": { + "description": "The consistency policy for the Cosmos DB database account.", + "$ref": "#/definitions/ConsistencyPolicy" + }, + "capabilities": { + "type": "array", + "description": "List of Cosmos DB capabilities for the account", + "items": { + "$ref": "#/definitions/Capability" + } + }, + "writeLocations": { + "type": "array", + "readOnly": true, + "description": "An array that contains the write location for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/Location" + } + }, + "readLocations": { + "type": "array", + "readOnly": true, + "description": "An array that contains of the read locations enabled for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/Location" + } + }, + "locations": { + "type": "array", + "readOnly": true, + "description": "An array that contains all of the locations enabled for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/Location" + } + }, + "failoverPolicies": { + "type": "array", + "readOnly": true, + "description": "An array that contains the regions ordered by their failover priorities.", + "items": { + "$ref": "#/definitions/FailoverPolicy" + } + }, + "virtualNetworkRules": { + "type": "array", + "description": "List of Virtual Network ACL rules configured for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/VirtualNetworkRule" + } + }, + "enableMultipleWriteLocations": { + "description": "Enables the account to write in multiple locations", + "type": "boolean" + }, + "enableCassandraConnector": { + "description": "Enables the cassandra connector on the Cosmos DB C* account", + "type": "boolean" + }, + "connectorOffer": { + "description": "The cassandra connector offer type for the Cosmos DB database C* account.", + "$ref": "#/definitions/ConnectorOffer" + }, + "disableKeyBasedMetadataWriteAccess": { + "description": "Disable write operations on metadata resources (databases, containers, throughput) via account keys", + "type": "boolean" + }, + "keyVaultKeyUri": { + "description": "The URI of the key vault", + "type": "string" + }, + "publicNetworkAccess": { + "description": "Whether requests from Public Network are allowed", + "$ref": "#/definitions/PublicNetworkAccess" + } + } + }, + "DatabaseAccountCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB database accounts.", + "type": "object", + "properties": { + "consistencyPolicy": { + "description": "The consistency policy for the Cosmos DB account.", + "$ref": "#/definitions/ConsistencyPolicy" + }, + "locations": { + "type": "array", + "description": "An array that contains the georeplication locations enabled for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/Location" + } + }, + "databaseAccountOfferType": { + "description": "The offer type for the database", + "$ref": "#/definitions/DatabaseAccountOfferType" + }, + "ipRangeFilter": { + "description": "Cosmos DB Firewall Support: This value specifies the set of IP addresses or IP address ranges in CIDR form to be included as the allowed list of client IPs for a given database account. IP addresses/ranges must be comma separated and must not contain any spaces.", + "$ref": "#/definitions/IPRangeFilter" + }, + "isVirtualNetworkFilterEnabled": { + "description": "Flag to indicate whether to enable/disable Virtual Network ACL rules.", + "type": "boolean" + }, + "enableAutomaticFailover": { + "description": "Enables automatic failover of the write region in the rare event that the region is unavailable due to an outage. Automatic failover will result in a new write region for the account and is chosen based on the failover priorities configured for the account.", + "type": "boolean" + }, + "capabilities": { + "type": "array", + "description": "List of Cosmos DB capabilities for the account", + "items": { + "$ref": "#/definitions/Capability" + } + }, + "virtualNetworkRules": { + "type": "array", + "description": "List of Virtual Network ACL rules configured for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/VirtualNetworkRule" + } + }, + "enableMultipleWriteLocations": { + "description": "Enables the account to write in multiple locations", + "type": "boolean" + }, + "enableCassandraConnector": { + "description": "Enables the cassandra connector on the Cosmos DB C* account", + "type": "boolean" + }, + "connectorOffer": { + "description": "The cassandra connector offer type for the Cosmos DB database C* account.", + "$ref": "#/definitions/ConnectorOffer" + }, + "disableKeyBasedMetadataWriteAccess": { + "description": "Disable write operations on metadata resources (databases, containers, throughput) via account keys", + "type": "boolean" + }, + "keyVaultKeyUri": { + "description": "The URI of the key vault", + "type": "string" + }, + "publicNetworkAccess": { + "description": "Whether requests from Public Network are allowed", + "$ref": "#/definitions/PublicNetworkAccess" + } + }, + "required": [ + "locations", + "databaseAccountOfferType" + ] + }, + "DatabaseAccountCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB database accounts.", + "type": "object", + "properties": { + "kind": { + "description": "Indicates the type of database account. This can only be set at database account creation.", + "type": "string", + "default": "GlobalDocumentDB", + "enum": [ + "GlobalDocumentDB", + "MongoDB", + "Parse" + ], + "x-ms-enum": { + "name": "DatabaseAccountKind", + "modelAsString": true + } + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DatabaseAccountCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "DatabaseAccountUpdateProperties": { + "description": "Properties to update Azure Cosmos DB database accounts.", + "type": "object", + "properties": { + "consistencyPolicy": { + "description": "The consistency policy for the Cosmos DB account.", + "$ref": "#/definitions/ConsistencyPolicy" + }, + "locations": { + "type": "array", + "description": "An array that contains the georeplication locations enabled for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/Location" + } + }, + "ipRangeFilter": { + "description": "Cosmos DB Firewall Support: This value specifies the set of IP addresses or IP address ranges in CIDR form to be included as the allowed list of client IPs for a given database account. IP addresses/ranges must be comma separated and must not contain any spaces.", + "$ref": "#/definitions/IPRangeFilter" + }, + "isVirtualNetworkFilterEnabled": { + "description": "Flag to indicate whether to enable/disable Virtual Network ACL rules.", + "type": "boolean" + }, + "enableAutomaticFailover": { + "description": "Enables automatic failover of the write region in the rare event that the region is unavailable due to an outage. Automatic failover will result in a new write region for the account and is chosen based on the failover priorities configured for the account.", + "type": "boolean" + }, + "capabilities": { + "type": "array", + "description": "List of Cosmos DB capabilities for the account", + "items": { + "$ref": "#/definitions/Capability" + } + }, + "virtualNetworkRules": { + "type": "array", + "description": "List of Virtual Network ACL rules configured for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/VirtualNetworkRule" + } + }, + "enableMultipleWriteLocations": { + "description": "Enables the account to write in multiple locations", + "type": "boolean" + }, + "enableCassandraConnector": { + "description": "Enables the cassandra connector on the Cosmos DB C* account", + "type": "boolean" + }, + "connectorOffer": { + "description": "The cassandra connector offer type for the Cosmos DB database C* account.", + "$ref": "#/definitions/ConnectorOffer" + }, + "disableKeyBasedMetadataWriteAccess": { + "description": "Disable write operations on metadata resources (databases, containers, throughput) via account keys", + "type": "boolean" + }, + "keyVaultKeyUri": { + "description": "The URI of the key vault", + "type": "string" + }, + "publicNetworkAccess": { + "description": "Whether requests from Public Network are allowed", + "$ref": "#/definitions/PublicNetworkAccess" + } + } + }, + "DatabaseAccountUpdateParameters": { + "description": "Parameters for patching Azure Cosmos DB database account properties.", + "type": "object", + "properties": { + "tags": { + "$ref": "#/definitions/Tags" + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DatabaseAccountUpdateProperties" + } + } + }, + "DatabaseAccountListReadOnlyKeysResult": { + "description": "The read-only access keys for the given database account.", + "properties": { + "primaryReadonlyMasterKey": { + "readOnly": true, + "type": "string", + "description": "Base 64 encoded value of the primary read-only key." + }, + "secondaryReadonlyMasterKey": { + "readOnly": true, + "type": "string", + "description": "Base 64 encoded value of the secondary read-only key." + } + } + }, + "DatabaseAccountListKeysResult": { + "description": "The access keys for the given database account.", + "properties": { + "primaryMasterKey": { + "readOnly": true, + "type": "string", + "description": "Base 64 encoded value of the primary read-write key." + }, + "secondaryMasterKey": { + "readOnly": true, + "type": "string", + "description": "Base 64 encoded value of the secondary read-write key." + } + }, + "allOf": [ + { + "$ref": "#/definitions/DatabaseAccountListReadOnlyKeysResult" + } + ] + }, + "DatabaseAccountConnectionString": { + "description": "Connection string for the Cosmos DB account", + "properties": { + "connectionString": { + "readOnly": true, + "type": "string", + "description": "Value of the connection string" + }, + "description": { + "readOnly": true, + "type": "string", + "description": "Description of the connection string" + } + } + }, + "DatabaseAccountListConnectionStringsResult": { + "description": "The connection strings for the given database account.", + "properties": { + "connectionStrings": { + "type": "array", + "description": "An array that contains the connection strings for the Cosmos DB account.", + "items": { + "$ref": "#/definitions/DatabaseAccountConnectionString" + } + } + } + }, + "DatabaseAccountRegenerateKeyParameters": { + "type": "object", + "description": "Parameters to regenerate the keys within the database account.", + "properties": { + "keyKind": { + "type": "string", + "description": "The access key to regenerate.", + "enum": [ + "primary", + "secondary", + "primaryReadonly", + "secondaryReadonly" + ], + "x-ms-enum": { + "name": "KeyKind", + "modelAsString": true + } + } + }, + "required": [ + "keyKind" + ] + }, + "DatabaseAccountOfferType": { + "description": "The offer type for the Cosmos DB database account.", + "type": "string", + "enum": [ + "Standard" + ], + "x-ms-enum": { + "name": "DatabaseAccountOfferType", + "modelAsString": false + } + }, + "ThroughputSettingsUpdateParameters": { + "description": "Parameters to update Cosmos DB resource throughput.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to update Azure Cosmos DB resource throughput.", + "$ref": "#/definitions/ThroughputSettingsUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "ThroughputSettingsUpdateProperties": { + "description": "Properties to update Azure Cosmos DB resource throughput.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a resource throughput", + "$ref": "#/definitions/ThroughputSettingsResource" + } + }, + "required": [ + "resource" + ] + }, + "SqlDatabaseCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB SQL database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB SQL database.", + "$ref": "#/definitions/SqlDatabaseCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "SqlDatabaseCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB SQL database.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a SQL database", + "$ref": "#/definitions/SqlDatabaseResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource", + "options" + ] + }, + "SqlContainerCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB container.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB container.", + "$ref": "#/definitions/SqlContainerCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "SqlContainerCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB container.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a container", + "$ref": "#/definitions/SqlContainerResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource", + "options" + ] + }, + "SqlStoredProcedureCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB storedProcedure.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB storedProcedure.", + "$ref": "#/definitions/SqlStoredProcedureCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "SqlStoredProcedureCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB storedProcedure.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a storedProcedure", + "$ref": "#/definitions/SqlStoredProcedureResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource", + "options" + ] + }, + "SqlUserDefinedFunctionCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB userDefinedFunction.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB userDefinedFunction.", + "$ref": "#/definitions/SqlUserDefinedFunctionCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "SqlUserDefinedFunctionCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB userDefinedFunction.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a userDefinedFunction", + "$ref": "#/definitions/SqlUserDefinedFunctionResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource", + "options" + ] + }, + "SqlTriggerCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB trigger.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB trigger.", + "$ref": "#/definitions/SqlTriggerCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "SqlTriggerCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB trigger.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a trigger", + "$ref": "#/definitions/SqlTriggerResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource", + "options" + ] + }, + "MongoDBDatabaseCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB MongoDB database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB MongoDB database.", + "$ref": "#/definitions/MongoDBDatabaseCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "MongoDBDatabaseCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB MongoDB database.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a MongoDB database", + "$ref": "#/definitions/MongoDBDatabaseResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource", + "options" + ] + }, + "MongoDBCollectionCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB MongoDB collection.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB MongoDB collection.", + "$ref": "#/definitions/MongoDBCollectionCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "MongoDBCollectionCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB MongoDB collection.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a MongoDB collection", + "$ref": "#/definitions/MongoDBCollectionResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource", + "options" + ] + }, + "TableCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB Table.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB Table.", + "$ref": "#/definitions/TableCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "TableCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB Table.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a Table", + "$ref": "#/definitions/TableResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource", + "options" + ] + }, + "CassandraKeyspaceCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB Cassandra keyspace.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB Cassandra keyspace.", + "$ref": "#/definitions/CassandraKeyspaceCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "CassandraKeyspaceCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB Cassandra keyspace.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a Cassandra keyspace", + "$ref": "#/definitions/CassandraKeyspaceResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource", + "options" + ] + }, + "CassandraTableCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB Cassandra table.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB Cassandra table.", + "$ref": "#/definitions/CassandraTableCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "CassandraTableCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB Cassandra table.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a Cassandra table", + "$ref": "#/definitions/CassandraTableResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource", + "options" + ] + }, + "GremlinDatabaseCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB Gremlin database.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB Gremlin database.", + "$ref": "#/definitions/GremlinDatabaseCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "GremlinDatabaseCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB Gremlin database.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a Gremlin database", + "$ref": "#/definitions/GremlinDatabaseResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource", + "options" + ] + }, + "GremlinGraphCreateUpdateParameters": { + "description": "Parameters to create and update Cosmos DB Gremlin graph.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties to create and update Azure Cosmos DB Gremlin graph.", + "$ref": "#/definitions/GremlinGraphCreateUpdateProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ARMResourceProperties" + } + ], + "required": [ + "properties" + ] + }, + "GremlinGraphCreateUpdateProperties": { + "description": "Properties to create and update Azure Cosmos DB Gremlin graph.", + "type": "object", + "properties": { + "resource": { + "description": "The standard JSON format of a Gremlin graph", + "$ref": "#/definitions/GremlinGraphResource" + }, + "options": { + "description": "A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request.", + "$ref": "#/definitions/CreateUpdateOptions" + } + }, + "required": [ + "resource", + "options" + ] + }, + "ThroughputSettingsResource": { + "type": "object", + "description": "Cosmos DB resource throughput object. Either throughput is required or provisionedThroughputSettings is required, but not both.", + "properties": { + "throughput": { + "type": "integer", + "description": "Value of the Cosmos DB resource throughput. Either throughput is required or provisionedThroughputSettings is required, but not both." + }, + "provisionedThroughputSettings": { + "description": "Cosmos DB resource for provisioned throughput settings. Either throughput is required or provisionedThroughputSettings is required, but not both.", + "$ref": "#/definitions/ProvisionedThroughputSettingsResource" + }, + "minimumThroughput": { + "type": "string", + "description": "The minimum throughput of the resource", + "readOnly": true + }, + "offerReplacePending": { + "type": "string", + "description": "The throughput replace is pending", + "readOnly": true + } + } + }, + "ProvisionedThroughputSettingsResource": { + "type": "object", + "description": "Cosmos DB provisioned throughput settings object", + "properties": { + "maxThroughput": { + "type": "integer", + "description": "Represents maximum throughput container can scale up to." + }, + "autoUpgradePolicy": { + "description": "Cosmos DB resource auto-upgrade policy", + "$ref": "#/definitions/AutoUpgradePolicyResource" + }, + "targetMaxThroughput": { + "type": "integer", + "description": "Represents target maximum throughput container can scale up to once offer is no longer in pending state.", + "readOnly": true + } + }, + "required": [ + "maxThroughput" + ] + }, + "AutoUpgradePolicyResource": { + "type": "object", + "description": "Cosmos DB resource auto-upgrade policy", + "properties": { + "throughputPolicy": { + "description": "Represents throughput policy which service must adhere to for auto-upgrade", + "$ref": "#/definitions/ThroughputPolicyResource" + } + } + }, + "ThroughputPolicyResource": { + "type": "object", + "description": "Cosmos DB resource throughput policy", + "properties": { + "isEnabled": { + "type": "boolean", + "description": "Determines whether the ThroughputPolicy is active or not" + }, + "incrementPercent": { + "type": "integer", + "description": "Represents the percentage by which throughput can increase every time throughput policy kicks in." + } + } + }, + "OptionsResource": { + "type": "object", + "description": "Cosmos DB options resource object", + "properties": { + "throughput": { + "type": "integer", + "description": "Value of the Cosmos DB resource throughput. Use the ThroughputSetting resource when retrieving offer details." + } + } + }, + "SqlDatabaseResource": { + "type": "object", + "description": "Cosmos DB SQL database resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB SQL database" + } + }, + "required": [ + "id" + ] + }, + "SqlContainerResource": { + "type": "object", + "description": "Cosmos DB SQL container resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB SQL container" + }, + "indexingPolicy": { + "$ref": "#/definitions/IndexingPolicy", + "description": "The configuration of the indexing policy. By default, the indexing is automatic for all document paths within the container" + }, + "partitionKey": { + "$ref": "#/definitions/ContainerPartitionKey", + "description": "The configuration of the partition key to be used for partitioning data into multiple partitions" + }, + "defaultTtl": { + "type": "integer", + "description": "Default time to live" + }, + "uniqueKeyPolicy": { + "$ref": "#/definitions/UniqueKeyPolicy", + "description": "The unique key policy configuration for specifying uniqueness constraints on documents in the collection in the Azure Cosmos DB service." + }, + "conflictResolutionPolicy": { + "$ref": "#/definitions/ConflictResolutionPolicy", + "description": "The conflict resolution policy for the container." + } + }, + "required": [ + "id" + ] + }, + "IndexingPolicy": { + "type": "object", + "description": "Cosmos DB indexing policy", + "properties": { + "automatic": { + "type": "boolean", + "description": "Indicates if the indexing policy is automatic" + }, + "indexingMode": { + "description": "Indicates the indexing mode.", + "type": "string", + "default": "Consistent", + "enum": [ + "Consistent", + "Lazy", + "None" + ], + "x-ms-enum": { + "name": "IndexingMode", + "modelAsString": true + } + }, + "includedPaths": { + "description": "List of paths to include in the indexing", + "type": "array", + "items": { + "$ref": "#/definitions/IncludedPath" + } + }, + "excludedPaths": { + "description": "List of paths to exclude from indexing", + "type": "array", + "items": { + "$ref": "#/definitions/ExcludedPath" + } + }, + "compositeIndexes": { + "description": "List of composite path list", + "type": "array", + "items": { + "$ref": "#/definitions/CompositePathList" + } + }, + "spatialIndexes": { + "description": "List of spatial specifics", + "type": "array", + "items": { + "$ref": "#/definitions/SpatialSpec" + } + } + } + }, + "ExcludedPath": { + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The path for which the indexing behavior applies to. Index paths typically start with root and end with wildcard (/path/*)" + } + } + }, + "IncludedPath": { + "type": "object", + "description": "The paths that are included in indexing", + "properties": { + "path": { + "type": "string", + "description": "The path for which the indexing behavior applies to. Index paths typically start with root and end with wildcard (/path/*)" + }, + "indexes": { + "description": "List of indexes for this path", + "type": "array", + "items": { + "$ref": "#/definitions/Indexes" + } + } + } + }, + "Indexes": { + "type": "object", + "description": "The indexes for the path.", + "properties": { + "dataType": { + "description": "The datatype for which the indexing behavior is applied to.", + "type": "string", + "default": "String", + "enum": [ + "String", + "Number", + "Point", + "Polygon", + "LineString", + "MultiPolygon" + ], + "x-ms-enum": { + "name": "DataType", + "modelAsString": true + } + }, + "precision": { + "description": "The precision of the index. -1 is maximum precision.", + "type": "integer" + }, + "kind": { + "description": "Indicates the type of index.", + "type": "string", + "default": "Hash", + "enum": [ + "Hash", + "Range", + "Spatial" + ], + "x-ms-enum": { + "name": "IndexKind", + "modelAsString": true + } + } + } + }, + "CompositePathList": { + "description": "List of composite path", + "type": "array", + "items": { + "$ref": "#/definitions/CompositePath" + } + }, + "CompositePath": { + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The path for which the indexing behavior applies to. Index paths typically start with root and end with wildcard (/path/*)" + }, + "order": { + "description": "Sort order for composite paths.", + "type": "string", + "enum": [ + "Ascending", + "Descending" + ], + "x-ms-enum": { + "name": "CompositePathSortOrder", + "modelAsString": true + } + } + } + }, + "SpatialSpec": { + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The path for which the indexing behavior applies to. Index paths typically start with root and end with wildcard (/path/*)" + }, + "types": { + "description": "List of path's spatial type", + "type": "array", + "items": { + "$ref": "#/definitions/SpatialType" + } + } + } + }, + "SpatialType": { + "description": "Indicates the spatial type of index.", + "type": "string", + "enum": [ + "Point", + "LineString", + "Polygon", + "MultiPolygon" + ], + "x-ms-enum": { + "name": "SpatialType", + "modelAsString": true + } + }, + "ContainerPartitionKey": { + "type": "object", + "description": "The configuration of the partition key to be used for partitioning data into multiple partitions", + "properties": { + "paths": { + "description": "List of paths using which data within the container can be partitioned", + "type": "array", + "items": { + "$ref": "#/definitions/Path" + } + }, + "kind": { + "description": "Indicates the kind of algorithm used for partitioning", + "type": "string", + "default": "Hash", + "enum": [ + "Hash", + "Range" + ], + "x-ms-enum": { + "name": "PartitionKind", + "modelAsString": true + } + }, + "version": { + "description": "Indicates the version of the partition key definition", + "type": "integer", + "minimum": 1, + "maximum": 2, + "format": "int32" + } + } + }, + "Path": { + "type": "string", + "description": "A path. These typically start with root (/path)" + }, + "UniqueKeyPolicy": { + "type": "object", + "description": "The unique key policy configuration for specifying uniqueness constraints on documents in the collection in the Azure Cosmos DB service.", + "properties": { + "uniqueKeys": { + "description": "List of unique keys on that enforces uniqueness constraint on documents in the collection in the Azure Cosmos DB service.", + "type": "array", + "items": { + "$ref": "#/definitions/UniqueKey" + } + } + } + }, + "UniqueKey": { + "type": "object", + "description": "The unique key on that enforces uniqueness constraint on documents in the collection in the Azure Cosmos DB service.", + "properties": { + "paths": { + "description": "List of paths must be unique for each document in the Azure Cosmos DB service", + "type": "array", + "items": { + "$ref": "#/definitions/Path" + } + } + } + }, + "ConflictResolutionPolicy": { + "type": "object", + "description": "The conflict resolution policy for the container.", + "properties": { + "mode": { + "description": "Indicates the conflict resolution mode.", + "type": "string", + "default": "LastWriterWins", + "enum": [ + "LastWriterWins", + "Custom" + ], + "x-ms-enum": { + "name": "ConflictResolutionMode", + "modelAsString": true + } + }, + "conflictResolutionPath": { + "type": "string", + "description": "The conflict resolution path in the case of LastWriterWins mode." + }, + "conflictResolutionProcedure": { + "type": "string", + "description": "The procedure to resolve conflicts in the case of custom mode." + } + } + }, + "SqlStoredProcedureResource": { + "type": "object", + "description": "Cosmos DB SQL storedProcedure resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB SQL storedProcedure" + }, + "body": { + "type": "string", + "description": "Body of the Stored Procedure" + } + }, + "required": [ + "id" + ] + }, + "SqlUserDefinedFunctionResource": { + "type": "object", + "description": "Cosmos DB SQL userDefinedFunction resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB SQL userDefinedFunction" + }, + "body": { + "type": "string", + "description": "Body of the User Defined Function" + } + }, + "required": [ + "id" + ] + }, + "SqlTriggerResource": { + "type": "object", + "description": "Cosmos DB SQL trigger resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB SQL trigger" + }, + "body": { + "type": "string", + "description": "Body of the Trigger" + }, + "triggerType": { + "type": "string", + "enum": [ + "Pre", + "Post" + ], + "description": "Type of the Trigger", + "x-ms-enum": { + "name": "triggerType", + "modelAsString": true + } + }, + "triggerOperation": { + "type": "string", + "enum": [ + "All", + "Create", + "Update", + "Delete", + "Replace" + ], + "description": "The operation the trigger is associated with", + "x-ms-enum": { + "name": "triggerOperation", + "modelAsString": true + } + } + }, + "required": [ + "id" + ] + }, + "MongoDBDatabaseResource": { + "type": "object", + "description": "Cosmos DB MongoDB database resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB MongoDB database" + } + }, + "required": [ + "id" + ] + }, + "MongoDBCollectionResource": { + "type": "object", + "description": "Cosmos DB MongoDB collection resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB MongoDB collection" + }, + "shardKey": { + "description": "A key-value pair of shard keys to be applied for the request.", + "$ref": "#/definitions/ShardKeys" + }, + "indexes": { + "description": "List of index keys", + "type": "array", + "items": { + "$ref": "#/definitions/MongoIndex" + } + } + }, + "required": [ + "id" + ] + }, + "ShardKeys": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The shard key and partition kind pair, only support \"Hash\" partition kind" + }, + "MongoIndex": { + "type": "object", + "description": "Cosmos DB MongoDB collection index key", + "properties": { + "key": { + "description": "Cosmos DB MongoDB collection index keys", + "$ref": "#/definitions/MongoIndexKeys" + }, + "options": { + "description": "Cosmos DB MongoDB collection index key options", + "$ref": "#/definitions/MongoIndexOptions" + } + } + }, + "MongoIndexKeys": { + "type": "object", + "description": "Cosmos DB MongoDB collection resource object", + "properties": { + "keys": { + "description": "List of keys for each MongoDB collection in the Azure Cosmos DB service", + "type": "array", + "items": { + "$ref": "#/definitions/Key" + } + } + } + }, + "Key": { + "type": "string", + "description": "A Key." + }, + "MongoIndexOptions": { + "type": "object", + "description": "Cosmos DB MongoDB collection index options", + "properties": { + "expireAfterSeconds": { + "description": "Expire after seconds", + "type": "integer" + }, + "unique": { + "description": "Is unique or not", + "type": "boolean" + } + } + }, + "TableResource": { + "type": "object", + "description": "Cosmos DB table resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB table" + } + }, + "required": [ + "id" + ] + }, + "CassandraKeyspaceResource": { + "type": "object", + "description": "Cosmos DB Cassandra keyspace resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra keyspace" + } + }, + "required": [ + "id" + ] + }, + "CassandraTableResource": { + "type": "object", + "description": "Cosmos DB Cassandra table resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra table" + }, + "defaultTtl": { + "type": "integer", + "description": "Time to live of the Cosmos DB Cassandra table" + }, + "schema": { + "description": "Schema of the Cosmos DB Cassandra table", + "$ref": "#/definitions/CassandraSchema" + } + }, + "required": [ + "id" + ] + }, + "CassandraSchema": { + "type": "object", + "description": "Cosmos DB Cassandra table schema", + "properties": { + "columns": { + "type": "array", + "items": { + "$ref": "#/definitions/Column" + }, + "description": "List of Cassandra table columns." + }, + "partitionKeys": { + "type": "array", + "items": { + "$ref": "#/definitions/CassandraPartitionKey" + }, + "description": "List of partition key." + }, + "clusterKeys": { + "type": "array", + "items": { + "$ref": "#/definitions/ClusterKey" + }, + "description": "List of cluster key." + } + } + }, + "Column": { + "type": "object", + "description": "Cosmos DB Cassandra table column", + "properties": { + "name": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra table column" + }, + "type": { + "type": "string", + "description": "Type of the Cosmos DB Cassandra table column" + } + } + }, + "CassandraPartitionKey": { + "type": "object", + "description": "Cosmos DB Cassandra table partition key", + "properties": { + "name": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra table partition key" + } + } + }, + "ClusterKey": { + "type": "object", + "description": "Cosmos DB Cassandra table cluster key", + "properties": { + "name": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra table cluster key" + }, + "orderBy": { + "type": "string", + "description": "Order of the Cosmos DB Cassandra table cluster key, only support \"Asc\" and \"Desc\"" + } + } + }, + "GremlinDatabaseResource": { + "type": "object", + "description": "Cosmos DB Gremlin database resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB Gremlin database" + } + }, + "required": [ + "id" + ] + }, + "GremlinGraphResource": { + "type": "object", + "description": "Cosmos DB Gremlin graph resource object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB Gremlin graph" + }, + "indexingPolicy": { + "$ref": "#/definitions/IndexingPolicy", + "description": "The configuration of the indexing policy. By default, the indexing is automatic for all document paths within the graph" + }, + "partitionKey": { + "$ref": "#/definitions/ContainerPartitionKey", + "description": "The configuration of the partition key to be used for partitioning data into multiple partitions" + }, + "defaultTtl": { + "type": "integer", + "description": "Default time to live" + }, + "uniqueKeyPolicy": { + "$ref": "#/definitions/UniqueKeyPolicy", + "description": "The unique key policy configuration for specifying uniqueness constraints on documents in the collection in the Azure Cosmos DB service." + }, + "conflictResolutionPolicy": { + "$ref": "#/definitions/ConflictResolutionPolicy", + "description": "The conflict resolution policy for the graph." + } + }, + "required": [ + "id" + ] + }, + "CreateUpdateOptions": { + "type": "object", + "properties": { + "throughput": { + "type": "string", + "description": "Request Units per second. For example, \"throughput\": \"10000\"." + } + }, + "additionalProperties": { + "type": "string" + }, + "description": "CreateUpdateOptions are a list of key-value pairs that describe the resource. Supported keys are \"If-Match\", \"If-None-Match\", \"Session-Token\" and \"Throughput\"" + }, + "Capability": { + "type": "object", + "description": "Cosmos DB capability object", + "properties": { + "name": { + "type": "string", + "description": "Name of the Cosmos DB capability. For example, \"name\": \"EnableCassandra\". Current values also include \"EnableTable\" and \"EnableGremlin\"." + } + } + }, + "Tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "ProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation. 'DeletionFailed' – the Cosmos DB account deletion failed." + }, + "IPRangeFilter": { + "type": "string", + "description": "Cosmos DB Firewall Support: This value specifies the set of IP addresses or IP address ranges in CIDR form to be included as the allowed list of client IPs for a given database account. IP addresses/ranges must be comma separated and must not contain any spaces." + }, + "VirtualNetworkRule": { + "type": "object", + "description": "Virtual Network ACL Rule object", + "properties": { + "id": { + "type": "string", + "description": "Resource ID of a subnet, for example: /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}." + }, + "ignoreMissingVNetServiceEndpoint": { + "type": "boolean", + "description": "Create firewall rule before the virtual network has vnet service endpoint enabled." + } + } + }, + "Operation": { + "description": "REST API 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.ResourceProvider", + "type": "string" + }, + "Resource": { + "description": "Resource on which the operation is performed: Profile, endpoint, etc.", + "type": "string" + }, + "Operation": { + "description": "Operation type: Read, write, delete, etc.", + "type": "string" + }, + "Description": { + "description": "Description of operation", + "type": "string" + } + } + } + } + }, + "OperationListResult": { + "description": "Result of the request to list Resource Provider 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 operations supported by the Resource Provider." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "UsagesResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "The list of usages for the database. A usage is a point in time metric" + } + }, + "description": "The response to a list usage request." + }, + "Usage": { + "properties": { + "unit": { + "description": "The unit of the metric.", + "$ref": "#/definitions/UnitType" + }, + "name": { + "$ref": "#/definitions/MetricName", + "readOnly": true, + "description": "The name information for the metric." + }, + "quotaPeriod": { + "type": "string", + "readOnly": true, + "description": "The quota period used to summarize the usage values." + }, + "limit": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Maximum value for this metric" + }, + "currentValue": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Current value for this metric" + } + }, + "description": "The usage data for a usage request." + }, + "PartitionUsagesResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/PartitionUsage" + }, + "description": "The list of partition-level usages for the database. A usage is a point in time metric" + } + }, + "description": "The response to a list partition level usage request." + }, + "PartitionUsage": { + "allOf": [ + { + "$ref": "#/definitions/Usage" + } + ], + "properties": { + "partitionId": { + "readOnly": true, + "type": "string", + "description": "The partition id (GUID identifier) of the usages." + }, + "partitionKeyRangeId": { + "readOnly": true, + "type": "string", + "description": "The partition key range id (integer identifier) of the usages." + } + }, + "description": "The partition level usage data for a usage request." + }, + "MetricDefinitionsListResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/MetricDefinition" + }, + "description": "The list of metric definitions for the account." + } + }, + "description": "The response to a list metric definitions request." + }, + "MetricDefinition": { + "properties": { + "metricAvailabilities": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/MetricAvailability" + }, + "description": "The list of metric availabilities for the account." + }, + "primaryAggregationType": { + "readOnly": true, + "type": "string", + "description": "The primary aggregation type of the metric.", + "enum": [ + "None", + "Average", + "Total", + "Minimum", + "Maximum", + "Last" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "PrimaryAggregationType" + } + }, + "unit": { + "description": "The unit of the metric.", + "$ref": "#/definitions/UnitType" + }, + "resourceUri": { + "readOnly": true, + "type": "string", + "description": "The resource uri of the database." + }, + "name": { + "readOnly": true, + "$ref": "#/definitions/MetricName", + "description": "The name information for the metric." + } + }, + "description": "The definition of a metric." + }, + "MetricAvailability": { + "properties": { + "timeGrain": { + "readOnly": true, + "type": "string", + "description": "The time grain to be used to summarize the metric values." + }, + "retention": { + "readOnly": true, + "type": "string", + "description": "The retention for the metric values." + } + }, + "description": "The availability of the metric." + }, + "MetricListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Metric" + }, + "description": "The list of metrics for the account." + } + }, + "description": "The response to a list metrics request." + }, + "Metric": { + "properties": { + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The start time for the metric (ISO-8601 format)." + }, + "endTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The end time for the metric (ISO-8601 format)." + }, + "timeGrain": { + "readOnly": true, + "type": "string", + "description": "The time grain to be used to summarize the metric values." + }, + "unit": { + "$ref": "#/definitions/UnitType", + "description": "The unit of the metric." + }, + "name": { + "readOnly": true, + "$ref": "#/definitions/MetricName", + "description": "The name information for the metric." + }, + "metricValues": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/MetricValue" + }, + "description": "The metric values for the specified time window and timestep." + } + }, + "description": "Metric data" + }, + "MetricName": { + "properties": { + "value": { + "readOnly": true, + "type": "string", + "description": "The name of the metric." + }, + "localizedValue": { + "readOnly": true, + "type": "string", + "description": "The friendly name of the metric." + } + }, + "description": "A metric name." + }, + "MetricValue": { + "properties": { + "_count": { + "readOnly": true, + "type": "number", + "format": "int32", + "description": "The number of values for the metric." + }, + "average": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The average value of the metric." + }, + "maximum": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The max value of the metric." + }, + "minimum": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The min value of the metric." + }, + "timestamp": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The metric timestamp (ISO-8601 format)." + }, + "total": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The total value of the metric." + } + }, + "description": "Represents metrics values." + }, + "PercentileMetricListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PercentileMetric" + }, + "description": "The list of percentile metrics for the account." + } + }, + "description": "The response to a list percentile metrics request." + }, + "PercentileMetric": { + "properties": { + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The start time for the metric (ISO-8601 format)." + }, + "endTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The end time for the metric (ISO-8601 format)." + }, + "timeGrain": { + "readOnly": true, + "type": "string", + "description": "The time grain to be used to summarize the metric values." + }, + "unit": { + "$ref": "#/definitions/UnitType", + "description": "The unit of the metric." + }, + "name": { + "readOnly": true, + "$ref": "#/definitions/MetricName", + "description": "The name information for the metric." + }, + "metricValues": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PercentileMetricValue" + }, + "description": "The percentile metric values for the specified time window and timestep." + } + }, + "description": "Percentile Metric data" + }, + "PercentileMetricValue": { + "allOf": [ + { + "$ref": "#/definitions/MetricValue" + } + ], + "properties": { + "P10": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 10th percentile value for the metric." + }, + "P25": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 25th percentile value for the metric." + }, + "P50": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 50th percentile value for the metric." + }, + "P75": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 75th percentile value for the metric." + }, + "P90": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 90th percentile value for the metric." + }, + "P95": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 95th percentile value for the metric." + }, + "P99": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The 99th percentile value for the metric." + } + }, + "description": "Represents percentile metrics values." + }, + "PartitionMetricListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PartitionMetric" + }, + "description": "The list of partition-level metrics for the account." + } + }, + "description": "The response to a list partition metrics request." + }, + "PartitionMetric": { + "allOf": [ + { + "$ref": "#/definitions/Metric" + } + ], + "properties": { + "partitionId": { + "readOnly": true, + "type": "string", + "description": "The partition id (GUID identifier) of the metric values." + }, + "partitionKeyRangeId": { + "readOnly": true, + "type": "string", + "description": "The partition key range id (integer identifier) of the metric values." + } + }, + "description": "The metric values for a single partition." + }, + "UnitType": { + "type": "string", + "readOnly": true, + "description": "The unit of the metric.", + "enum": [ + "Count", + "Bytes", + "Seconds", + "Percent", + "CountPerSecond", + "BytesPerSecond", + "Milliseconds" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "UnitType" + } + }, + "ConnectorOffer": { + "description": "The cassandra connector offer type for the Cosmos DB C* database account.", + "type": "string", + "enum": [ + "Small" + ], + "x-ms-enum": { + "name": "ConnectorOffer", + "modelAsString": true + } + }, + "PublicNetworkAccess": { + "type": "string", + "readOnly": true, + "description": "Whether requests from Public Network are allowed", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "PublicNetworkAccess" + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Azure subscription ID.", + "required": true, + "type": "string" + }, + "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-08-01." + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method", + "description": "Name of an Azure resource group." + }, + "accountNameParameter": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database account name.", + "minLength": 3, + "maxLength": 50, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + "filterParameter": { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "An OData filter expression that describes a subset of metrics to return. The parameters that can be filtered are name.value (name of the metric, can have an or of multiple names), startTime, endTime, and timeGrain. The supported operator is eq." + }, + "usageFilterParameter": { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "x-ms-parameter-location": "method", + "description": "An OData filter expression that describes a subset of usages to return. The supported parameter is name.value (name of the metric, can have an or of multiple names)." + }, + "databaseRidParameter": { + "name": "databaseRid", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database rid." + }, + "collectionRidParameter": { + "name": "collectionRid", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB collection rid." + }, + "databaseNameParameter": { + "name": "databaseName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB database name." + }, + "containerNameParameter": { + "name": "containerName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB container name." + }, + "storedProcedureNameParameter": { + "name": "storedProcedureName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB storedProcedure name." + }, + "userDefinedFunctionNameParameter": { + "name": "userDefinedFunctionName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB userDefinedFunction name." + }, + "triggerNameParameter": { + "name": "triggerName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB trigger name." + }, + "tableNameParameter": { + "name": "tableName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB table name." + }, + "collectionNameParameter": { + "name": "collectionName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB collection name." + }, + "keyspaceNameParameter": { + "name": "keyspaceName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB keyspace name." + }, + "graphNameParameter": { + "name": "graphName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB graph name." + }, + "regionParameter": { + "name": "region", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Cosmos DB region, with spaces between words and each word capitalized." + }, + "sourceRegionParameter": { + "name": "sourceRegion", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Source region from which data is written. Cosmos DB region, with spaces between words and each word capitalized." + }, + "targetRegionParameter": { + "name": "targetRegion", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Target region to which data is written. Cosmos DB region, with spaces between words and each word capitalized." + }, + "partitionKeyRangeIdParameter": { + "name": "partitionKeyRangeId", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "Partition Key Range Id for which to get data." + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraKeyspaceCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraKeyspaceCreateUpdate.json new file mode 100644 index 000000000000..67a765fc9f41 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraKeyspaceCreateUpdate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "createUpdateCassandraKeyspaceParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "keyspaceName" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName", + "name": "keyspaceName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "keyspaceName" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraKeyspaceDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraKeyspaceDelete.json new file mode 100644 index 000000000000..ed2b254c548b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraKeyspaceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraKeyspaceGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraKeyspaceGet.json new file mode 100644 index 000000000000..23510fbe2665 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraKeyspaceGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName", + "name": "keyspaceName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "keyspaceName", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraKeyspaceList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraKeyspaceList.json new file mode 100644 index 000000000000..82676a8d3387 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraKeyspaceList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName", + "name": "keyspaceName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "keyspaceName" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraKeyspaceThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraKeyspaceThroughputGet.json new file mode 100644 index 000000000000..e243e5be2332 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraKeyspaceThroughputGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraKeyspaceThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraKeyspaceThroughputUpdate.json new file mode 100644 index 000000000000..26ee00d55a33 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraKeyspaceThroughputUpdate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraTableCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraTableCreateUpdate.json new file mode 100644 index 000000000000..0f44cece048d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraTableCreateUpdate.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName", + "createUpdateCassandraTableParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName", + "defaultTtl": 100, + "schema": { + "columns": [ + { + "name": "columnA", + "type": "Ascii" + } + ], + "partitionKeys": [ + { + "name": "columnA" + } + ], + "clusterKeys": [ + { + "name": "columnA", + "orderBy": "Asc" + } + ] + } + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/cassandraTables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/cassandraTables", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName", + "defaultTtl": 100, + "schema": { + "columns": [ + { + "name": "columnA", + "type": "Ascii" + } + ], + "partitionKeys": [ + { + "name": "columnA" + } + ], + "clusterKeys": [ + { + "name": "columnA", + "orderBy": "Asc" + } + ] + } + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraTableDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraTableDelete.json new file mode 100644 index 000000000000..8984c830aa03 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraTableDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraTableGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraTableGet.json new file mode 100644 index 000000000000..6bc52fa88c81 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraTableGet.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/cassandraTables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/cassandraTables", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName", + "defaultTtl": 100, + "schema": { + "columns": [ + { + "name": "columnA", + "type": "Ascii" + } + ], + "partitionKeys": [ + { + "name": "columnA" + } + ], + "clusterKeys": [ + { + "name": "columnA", + "orderBy": "Asc" + } + ] + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraTableList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraTableList.json new file mode 100644 index 000000000000..c05f3289a340 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraTableList.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "keyspaceName": "keyspaceName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/cassandraTables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/cassandraTables", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName", + "defaultTtl": 100, + "schema": { + "columns": [ + { + "name": "columnA", + "type": "Ascii" + } + ], + "partitionKeys": [ + { + "name": "columnA" + } + ], + "clusterKeys": [ + { + "name": "columnA", + "orderBy": "Asc" + } + ] + } + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraTableThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraTableThroughputGet.json new file mode 100644 index 000000000000..f85f0f9805f5 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraTableThroughputGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/cassandraTables/tableName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/cassandraTables/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraTableThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraTableThroughputUpdate.json new file mode 100644 index 000000000000..13cff300e89a --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCassandraTableThroughputUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "keyspaceName": "keyspaceName", + "tableName": "tableName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/cassandraKeyspaces/keyspaceName/cassandraTables/tableName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/cassandraTables/throughputSettings", + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCollectionGetMetricDefinitions.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCollectionGetMetricDefinitions.json new file mode 100644 index 000000000000..976944fe6c9c --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCollectionGetMetricDefinitions.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "api-version": "2020-03-01", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metricAvailabilities": [ + { + "timeGrain": "PT5M", + "retention": "P2D" + }, + { + "timeGrain": "PT1H", + "retention": "P14D" + }, + { + "timeGrain": "P1D", + "retention": "P60D" + } + ], + "primaryAggregationType": "Total", + "unit": "Count", + "resourceUri": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCollectionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCollectionGetMetrics.json new file mode 100644 index 000000000000..18bff3ab34e0 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCollectionGetMetrics.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "$filter": "$filter=(name.value eq 'Total Requests') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Count", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:03:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:08:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + } + ], + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCollectionGetUsages.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCollectionGetUsages.json new file mode 100644 index 000000000000..e0cac1fd8e0b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCollectionGetUsages.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "subscriptionId": "subid", + "$filter": "$filter=name.value eq 'Storage'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Bytes", + "quotaPeriod": "P1D", + "limit": 10737418240, + "currentValue": 0, + "name": { + "value": "Storage", + "localizedValue": "Storage" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCollectionPartitionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCollectionPartitionGetMetrics.json new file mode 100644 index 000000000000..2a323856048a --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCollectionPartitionGetMetrics.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "$filter": "$filter=(name.value eq 'Max RUs Per Second') and timeGrain eq duration'PT1M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T23:58:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT1M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T23:58:55.2780000Z", + "unit": "Count", + "partitionId": "00000000-0000-0000-0000-000000000000", + "partitionKeyRangeId": "0", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:54:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:55:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:56:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:57:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "maximum": 5 + } + ], + "name": { + "value": "Max RUs Per Second", + "localizedValue": "Max RUs Per Second" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCollectionPartitionGetUsages.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCollectionPartitionGetUsages.json new file mode 100644 index 000000000000..09bc90d800ab --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCollectionPartitionGetUsages.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "subscriptionId": "subid", + "$filter": "$filter=name.value eq 'Partition Storage'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Bytes", + "quotaPeriod": "P1D", + "limit": 10737418240, + "currentValue": 0, + "partitionId": "00000000-0000-0000-0000-000000000000", + "partitionKeyRangeId": "0", + "name": { + "value": "Storage", + "localizedValue": "Storage" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCollectionPartitionRegionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCollectionPartitionRegionGetMetrics.json new file mode 100644 index 000000000000..3a534d1695b4 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBCollectionPartitionRegionGetMetrics.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "region": "North Europe", + "$filter": "$filter=(name.value eq 'Max RUs Per Second') and timeGrain eq duration'PT1M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T23:58:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT1M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T23:58:55.2780000Z", + "unit": "Count", + "partitionId": "00000000-0000-0000-0000-000000000000", + "partitionKeyRangeId": "0", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:54:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:55:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:56:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:57:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "maximum": 5 + } + ], + "name": { + "value": "Max RUs Per Second", + "localizedValue": "Max RUs Per Second" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountCheckNameExists.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountCheckNameExists.json new file mode 100644 index 000000000000..7c42ba20bf89 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountCheckNameExists.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "accountName": "ddb1", + "api-version": "2020-03-01" + }, + "responses": { + "200": {}, + "404": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountCreateMax.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountCreateMax.json new file mode 100644 index 000000000000..bdfeb4a4f03a --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountCreateMax.json @@ -0,0 +1,125 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "createUpdateParameters": { + "location": "westus", + "tags": {}, + "kind": "GlobalDocumentDB", + "properties": { + "databaseAccountOfferType": "Standard", + "ipRangeFilter": "10.10.10.10", + "isVirtualNetworkFilterEnabled": true, + "virtualNetworkRules": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "ignoreMissingVNetServiceEndpoint": false + } + ], + "locations": [ + { + "failoverPriority": 0, + "locationName": "southcentralus", + "isZoneRedundant": false + }, + { + "failoverPriority": 1, + "locationName": "eastus", + "isZoneRedundant": false + } + ], + "consistencyPolicy": { + "defaultConsistencyLevel": "BoundedStaleness", + "maxIntervalInSeconds": 10, + "maxStalenessPrefix": 200 + }, + "keyVaultKeyUri": "https://myKeyVault.vault.azure.net" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": {}, + "properties": { + "provisioningState": "Initializing", + "ipRangeFilter": "10.10.10.10", + "isVirtualNetworkFilterEnabled": true, + "databaseAccountOfferType": "Standard", + "disableKeyBasedMetadataWriteAccess": false, + "consistencyPolicy": { + "defaultConsistencyLevel": "BoundedStaleness", + "maxIntervalInSeconds": 10, + "maxStalenessPrefix": 200 + }, + "writeLocations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + } + ], + "readLocations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + }, + { + "id": "ddb1-eastus", + "locationName": "East US", + "provisioningState": "Initializing", + "failoverPriority": 1, + "isZoneRedundant": false + } + ], + "locations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + }, + { + "id": "ddb1-eastus", + "locationName": "East US", + "provisioningState": "Initializing", + "failoverPriority": 1, + "isZoneRedundant": false + } + ], + "failoverPolicies": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "failoverPriority": 0 + }, + { + "id": "ddb1-eastus", + "locationName": "East US", + "failoverPriority": 1 + } + ], + "virtualNetworkRules": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + } + ], + "keyVaultKeyUri": "https://myKeyVault.vault.azure.net" + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountCreateMin.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountCreateMin.json new file mode 100644 index 000000000000..25809b2bc083 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountCreateMin.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "createUpdateParameters": { + "location": "westus", + "properties": { + "databaseAccountOfferType": "Standard", + "locations": [ + { + "failoverPriority": 0, + "locationName": "southcentralus", + "isZoneRedundant": false + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": {}, + "properties": { + "provisioningState": "Initializing", + "ipRangeFilter": "", + "databaseAccountOfferType": "Standard", + "disableKeyBasedMetadataWriteAccess": false, + "consistencyPolicy": { + "defaultConsistencyLevel": "Session", + "maxIntervalInSeconds": 5, + "maxStalenessPrefix": 100 + }, + "writeLocations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + } + ], + "readLocations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + } + ], + "locations": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "provisioningState": "Initializing", + "failoverPriority": 0, + "isZoneRedundant": false + } + ], + "failoverPolicies": [ + { + "id": "ddb1-southcentralus", + "locationName": "South Central US", + "failoverPriority": 0 + } + ] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountDelete.json new file mode 100644 index 000000000000..9c922dfdda9e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountFailoverPriorityChange.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountFailoverPriorityChange.json new file mode 100644 index 000000000000..7dbc4ed5564e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountFailoverPriorityChange.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "accountName": "ddb1-failover", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "failoverParameters": { + "failoverPolicies": [ + { + "locationName": "eastus", + "failoverPriority": 0 + }, + { + "locationName": "westus", + "failoverPriority": 1 + } + ] + } + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountGet.json new file mode 100644 index 000000000000..2633c704654d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountGet.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "documentEndpoint": "https://ddb1.documents.azure.com:443/", + "ipRangeFilter": "", + "isVirtualNetworkFilterEnabled": false, + "virtualNetworkRules": [], + "databaseAccountOfferType": "Standard", + "disableKeyBasedMetadataWriteAccess": false, + "consistencyPolicy": { + "defaultConsistencyLevel": "Session", + "maxIntervalInSeconds": 5, + "maxStalenessPrefix": 100 + }, + "writeLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "readLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "locations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "failoverPolicies": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "failoverPriority": 0 + } + ] + } + } + }, + "404": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountGetMetricDefinitions.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountGetMetricDefinitions.json new file mode 100644 index 000000000000..c28e9a060598 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountGetMetricDefinitions.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metricAvailabilities": [ + { + "timeGrain": "PT5M", + "retention": "P2D" + }, + { + "timeGrain": "PT1H", + "retention": "P14D" + }, + { + "timeGrain": "P1D", + "retention": "P60D" + } + ], + "primaryAggregationType": "Total", + "unit": "Count", + "resourceUri": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountGetMetrics.json new file mode 100644 index 000000000000..e1b846fae1c9 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountGetMetrics.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "$filter": "$filter=(name.value eq 'Total Requests') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Count", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:03:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:08:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + } + ], + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountGetUsages.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountGetUsages.json new file mode 100644 index 000000000000..c9f0c6c95f38 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountGetUsages.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "$filter": "$filter=name.value eq 'Storage'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Bytes", + "quotaPeriod": "P1D", + "limit": 10737418240, + "currentValue": 0, + "name": { + "value": "Storage", + "localizedValue": "Storage" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountList.json new file mode 100644 index 000000000000..69ed7d6be52f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountList.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "documentEndpoint": "https://ddb1.documents.azure.com:443/", + "ipRangeFilter": "", + "databaseAccountOfferType": "Standard", + "disableKeyBasedMetadataWriteAccess": false, + "consistencyPolicy": { + "defaultConsistencyLevel": "Session", + "maxIntervalInSeconds": 5, + "maxStalenessPrefix": 100 + }, + "writeLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "readLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "locations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "failoverPolicies": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "failoverPriority": 0 + } + ] + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountListByResourceGroup.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountListByResourceGroup.json new file mode 100644 index 000000000000..72fbb58544c6 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountListByResourceGroup.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "documentEndpoint": "https://ddb1.documents.azure.com:443/", + "ipRangeFilter": "", + "databaseAccountOfferType": "Standard", + "disableKeyBasedMetadataWriteAccess": false, + "consistencyPolicy": { + "defaultConsistencyLevel": "Session", + "maxIntervalInSeconds": 5, + "maxStalenessPrefix": 100 + }, + "writeLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "readLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "locations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "failoverPolicies": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "failoverPriority": 0 + } + ] + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountListConnectionStrings.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountListConnectionStrings.json new file mode 100644 index 000000000000..2c93465fb8ae --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountListConnectionStrings.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": {} + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountListConnectionStringsMongo.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountListConnectionStringsMongo.json new file mode 100644 index 000000000000..f4612141ab4b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountListConnectionStringsMongo.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "accountName": "mongo-ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "connectionStrings": [ + { + "connectionString": "connection-string", + "description": "Name of the connection string" + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountListKeys.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountListKeys.json new file mode 100644 index 000000000000..ebda3befea2e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountListKeys.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "primaryMasterKey": "primaryMasterKey", + "secondaryMasterKey": "secondaryMasterKey", + "primaryReadonlyMasterKey": "primaryReadonlyMasterKey", + "secondaryReadonlyMasterKey": "secondaryReadonlyMasterKey" + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountListReadOnlyKeys.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountListReadOnlyKeys.json new file mode 100644 index 000000000000..8e2541f79292 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountListReadOnlyKeys.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "primaryReadonlyMasterKey": "primaryReadonlyMasterKey", + "secondaryReadonlyMasterKey": "secondaryReadonlyMasterKey" + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountOfflineRegion.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountOfflineRegion.json new file mode 100644 index 000000000000..b2912797c278 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountOfflineRegion.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "region": "North Europe", + "regionParameterForOffline": [ + { + "region": "North Europe" + } + ] + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountOnlineRegion.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountOnlineRegion.json new file mode 100644 index 000000000000..98e5cb36eb48 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountOnlineRegion.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "region": "North Europe", + "regionParameterForOnline": [ + { + "region": "North Europe" + } + ] + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountPatch.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountPatch.json new file mode 100644 index 000000000000..e132bd1f4186 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountPatch.json @@ -0,0 +1,96 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "updateParameters": { + "location": "westus", + "tags": { + "dept": "finance" + }, + "properties": { + "ipRangeFilter": "10.10.10.10", + "isVirtualNetworkFilterEnabled": true, + "virtualNetworkRules": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "ignoreMissingVNetServiceEndpoint": false + } + ], + "consistencyPolicy": { + "defaultConsistencyLevel": "BoundedStaleness", + "maxIntervalInSeconds": 10, + "maxStalenessPrefix": 200 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": "ddb1", + "location": "West US", + "type": "Microsoft.DocumentDB/databaseAccounts", + "kind": "GlobalDocumentDB", + "tags": { + "dept": "finance" + }, + "properties": { + "provisioningState": "Succeeded", + "documentEndpoint": "https://ddb1.documents.azure.com:443/", + "databaseAccountOfferType": "Standard", + "ipRangeFilter": "10.10.10.10", + "isVirtualNetworkFilterEnabled": true, + "disableKeyBasedMetadataWriteAccess": false, + "consistencyPolicy": { + "defaultConsistencyLevel": "BoundedStaleness", + "maxIntervalInSeconds": 10, + "maxStalenessPrefix": 200 + }, + "writeLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "readLocations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "locations": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "documentEndpoint": "https://ddb1-eastus.documents.azure.com:443/", + "provisioningState": "Succeeded", + "failoverPriority": 0 + } + ], + "failoverPolicies": [ + { + "id": "ddb1-eastus", + "locationName": "East US", + "failoverPriority": 0 + } + ], + "virtualNetworkRules": [ + { + "id": "/subscriptions/subId/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "ignoreMissingVNetServiceEndpoint": false + } + ] + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountRegenerateKey.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountRegenerateKey.json new file mode 100644 index 000000000000..9f3ff852f5dd --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountRegenerateKey.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "keyToRegenerate": { + "keyKind": "primary" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountRegionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountRegionGetMetrics.json new file mode 100644 index 000000000000..044edcb698c0 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseAccountRegionGetMetrics.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "region": "North Europe", + "$filter": "$filter=(name.value eq 'Total Requests') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Count", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:03:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:08:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + } + ], + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseGetMetricDefinitions.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseGetMetricDefinitions.json new file mode 100644 index 000000000000..b1bcd49e41bd --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseGetMetricDefinitions.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "api-version": "2020-03-01", + "databaseRid": "databaseRid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "metricAvailabilities": [ + { + "timeGrain": "PT5M", + "retention": "P2D" + }, + { + "timeGrain": "PT1H", + "retention": "P14D" + }, + { + "timeGrain": "P1D", + "retention": "P60D" + } + ], + "primaryAggregationType": "Total", + "unit": "Count", + "resourceUri": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1", + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseGetMetrics.json new file mode 100644 index 000000000000..c39043cb225d --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseGetMetrics.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseRid": "rid", + "$filter": "$filter=(name.value eq 'Total Requests') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Count", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:03:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:08:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + } + ], + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseGetUsages.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseGetUsages.json new file mode 100644 index 000000000000..82a119302b71 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBDatabaseGetUsages.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "databaseRid": "databaseRid", + "subscriptionId": "subid", + "$filter": "$filter=name.value eq 'Storage'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Bytes", + "quotaPeriod": "P1D", + "limit": 10737418240, + "currentValue": 0, + "name": { + "value": "Storage", + "localizedValue": "Storage" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinDatabaseCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinDatabaseCreateUpdate.json new file mode 100644 index 000000000000..a40777b1c5e1 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinDatabaseCreateUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "createUpdateGremlinDatabaseParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinDatabaseDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinDatabaseDelete.json new file mode 100644 index 000000000000..9c0db48cbf87 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinDatabaseDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinDatabaseGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinDatabaseGet.json new file mode 100644 index 000000000000..038d259c2269 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinDatabaseGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinDatabaseList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinDatabaseList.json new file mode 100644 index 000000000000..f389aa7c32ae --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinDatabaseList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinDatabaseThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinDatabaseThroughputGet.json new file mode 100644 index 000000000000..ee7ee88c9799 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinDatabaseThroughputGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinDatabaseThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinDatabaseThroughputUpdate.json new file mode 100644 index 000000000000..b9d80a878c05 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinDatabaseThroughputUpdate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinGraphCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinGraphCreateUpdate.json new file mode 100644 index 000000000000..483d987f8680 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinGraphCreateUpdate.json @@ -0,0 +1,124 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName", + "createUpdateGremlinGraphParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "graphName", + "indexingPolicy": { + "indexingMode": "Consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + } + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName/gremlinGraphs/graphName", + "name": "graphName", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/gremlinGraphs", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "graphName", + "indexingPolicy": { + "indexingMode": "Consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinGraphDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinGraphDelete.json new file mode 100644 index 000000000000..40ab63c4ac0a --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinGraphDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinGraphGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinGraphGet.json new file mode 100644 index 000000000000..55576aa4e3cd --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinGraphGet.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "graphName": "graphName" + }, + "responses": { + "200": { + "body": { + "id": "graphName", + "name": "graphName", + "type": "Microsoft.DocumentDB/databaseAccounts/apis/databases/graphs", + "properties": { + "resource": { + "id": "graphName", + "indexingPolicy": { + "indexingMode": "Consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinGraphList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinGraphList.json new file mode 100644 index 000000000000..66bdbd8196ae --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinGraphList.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "testgrf", + "name": "testgrf", + "type": "Microsoft.DocumentDB/databaseAccounts/apis/databases/graphs", + "properties": { + "resource": { + "id": "testgrf", + "indexingPolicy": { + "indexingMode": "Consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinGraphThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinGraphThroughputGet.json new file mode 100644 index 000000000000..0655401ebfd4 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinGraphThroughputGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName/gremlinGraphs/graphName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinGraphThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinGraphThroughputUpdate.json new file mode 100644 index 000000000000..abab21925d17 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBGremlinGraphThroughputUpdate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "graphName": "graphName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/gremlinDatabases/databaseName/gremlinGraphs/graphName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBCollectionCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBCollectionCreateUpdate.json new file mode 100644 index 000000000000..511cf66db6be --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBCollectionCreateUpdate.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName", + "createUpdateMongoDBCollectionParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "collectionName", + "indexes": [ + { + "key": { + "keys": [ + "testKey" + ] + }, + "options": { + "expireAfterSeconds": 100, + "unique": true + } + } + ], + "shardKey": { + "testKey": "Hash" + } + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/mongodbCollections/collectionName", + "name": "collectionName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/mongodbCollections", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "collectionName", + "indexes": [ + { + "key": { + "keys": [ + "testKey" + ] + }, + "options": { + "expireAfterSeconds": 100, + "unique": true + } + } + ], + "shardKey": { + "testKey": "Hash" + } + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBCollectionDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBCollectionDelete.json new file mode 100644 index 000000000000..030147ed91dd --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBCollectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBCollectionGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBCollectionGet.json new file mode 100644 index 000000000000..a3037d0355a1 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBCollectionGet.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "collectionName": "collectionName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/mongodbCollections/collectionName", + "name": "collectionName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/mongodbCollections", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "testcoll", + "indexes": [ + { + "key": { + "keys": [ + "testKey" + ] + }, + "options": { + "expireAfterSeconds": 100, + "unique": true + } + } + ], + "shardKey": { + "testKey": "Hash" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBCollectionList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBCollectionList.json new file mode 100644 index 000000000000..b1406e24e25a --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBCollectionList.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/mongodbCollections/collectionName", + "name": "collectionName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/mongodbCollections", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "testcoll", + "indexes": [ + { + "key": { + "keys": [ + "testKey" + ] + }, + "options": { + "expireAfterSeconds": 100, + "unique": true + } + } + ], + "shardKey": { + "testKey": "Hash" + } + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBCollectionThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBCollectionThroughputGet.json new file mode 100644 index 000000000000..bad8ef89b874 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBCollectionThroughputGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/mongodbCollections/collectionName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/mongodbCollections/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBCollectionThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBCollectionThroughputUpdate.json new file mode 100644 index 000000000000..afcae416fe21 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBCollectionThroughputUpdate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "collectionName": "collectionName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/mongodbCollections/collectionName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/mongodbCollections/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBDatabaseCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBDatabaseCreateUpdate.json new file mode 100644 index 000000000000..f838c9385913 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBDatabaseCreateUpdate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "createUpdateMongoDBDatabaseParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "updatedDatabaseName" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBDatabaseDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBDatabaseDelete.json new file mode 100644 index 000000000000..9c0db48cbf87 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBDatabaseDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBDatabaseGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBDatabaseGet.json new file mode 100644 index 000000000000..c35bb94f7d23 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBDatabaseGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBDatabaseList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBDatabaseList.json new file mode 100644 index 000000000000..43c88c5095d7 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBDatabaseList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBDatabaseThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBDatabaseThroughputGet.json new file mode 100644 index 000000000000..2eb0f1b6c78b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBDatabaseThroughputGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBDatabaseThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBDatabaseThroughputUpdate.json new file mode 100644 index 000000000000..62696bb144f6 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBMongoDBDatabaseThroughputUpdate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/mongodbDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBOperationsList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBOperationsList.json new file mode 100644 index 000000000000..5be0473722a2 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBOperationsList.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "operationName", + "display": { + "Provider": "providerName", + "Resource": "resourceName", + "Operation": "operationName", + "Description": "description" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBPKeyRangeIdGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBPKeyRangeIdGetMetrics.json new file mode 100644 index 000000000000..512411a18af5 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBPKeyRangeIdGetMetrics.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "partitionKeyRangeId": "0", + "$filter": "$filter=(name.value eq 'Max RUs Per Second') and timeGrain eq duration'PT1M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T23:58:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT1M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T23:58:55.2780000Z", + "unit": "Count", + "partitionId": "00000000-0000-0000-0000-000000000000", + "partitionKeyRangeId": "0", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:54:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:55:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:56:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:57:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "maximum": 5 + } + ], + "name": { + "value": "Max RUs Per Second", + "localizedValue": "Max RUs Per Second" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBPKeyRangeIdRegionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBPKeyRangeIdRegionGetMetrics.json new file mode 100644 index 000000000000..2076b21eec51 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBPKeyRangeIdRegionGetMetrics.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "partitionKeyRangeId": "0", + "region": "West US", + "$filter": "$filter=(name.value eq 'Max RUs Per Second') and timeGrain eq duration'PT1M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T23:58:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT1M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T23:58:55.2780000Z", + "unit": "Count", + "partitionId": "00000000-0000-0000-0000-000000000000", + "partitionKeyRangeId": "0", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:54:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:55:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:56:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:57:55.2780000Z", + "maximum": 5 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "maximum": 5 + } + ], + "name": { + "value": "Max RUs Per Second", + "localizedValue": "Max RUs Per Second" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBPercentileGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBPercentileGetMetrics.json new file mode 100644 index 000000000000..bfec5dc555b3 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBPercentileGetMetrics.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "$filter": "$filter=(name.value eq 'Probabilistic Bounded Staleness') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Milliseconds", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "P10": 1.11, + "P25": 2.5, + "P50": 4.34, + "P75": 5.2, + "P90": 6.77, + "P95": 7.1, + "P99": 8.3 + } + ], + "name": { + "value": "Probabilistic Bounded Staleness-S-West Central US-T-East US", + "localizedValue": "Probabilistic Bounded Staleness-S-West Central US-T-East US" + } + }, + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Milliseconds", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "P10": 1.11, + "P25": 2.5, + "P50": 4.34, + "P75": 5.2, + "P90": 6.77, + "P95": 7.1, + "P99": 8.3 + } + ], + "name": { + "value": "Probabilistic Bounded Staleness-S-West Central US-T-West US", + "localizedValue": "Probabilistic Bounded Staleness-S-West Central US-T-West US" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBPercentileSourceTargetGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBPercentileSourceTargetGetMetrics.json new file mode 100644 index 000000000000..6ad79ce81ff5 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBPercentileSourceTargetGetMetrics.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "sourceRegion": "West Central US", + "targetRegion": "East US", + "$filter": "$filter=(name.value eq 'Probabilistic Bounded Staleness') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Milliseconds", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "P10": 1.11, + "P25": 2.5, + "P50": 4.34, + "P75": 5.2, + "P90": 6.77, + "P95": 7.1, + "P99": 8.3 + } + ], + "name": { + "value": "Probabilistic Bounded Staleness-S-West Central US-T-East US", + "localizedValue": "Probabilistic Bounded Staleness-S-West Central US-T-East US" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBPercentileTargetGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBPercentileTargetGetMetrics.json new file mode 100644 index 000000000000..8d7e9e7e74a2 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBPercentileTargetGetMetrics.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "targetRegion": "East US", + "$filter": "$filter=(name.value eq 'Probabilistic Bounded Staleness') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Milliseconds", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "P10": 1.11, + "P25": 2.5, + "P50": 4.34, + "P75": 5.2, + "P90": 6.77, + "P95": 7.1, + "P99": 8.3 + } + ], + "name": { + "value": "Probabilistic Bounded Staleness-S-West Central US-T-East US", + "localizedValue": "Probabilistic Bounded Staleness-S-West Central US-T-East US" + } + }, + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Milliseconds", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "P10": 1.11, + "P25": 2.5, + "P50": 4.34, + "P75": 5.2, + "P90": 6.77, + "P95": 7.1, + "P99": 8.3 + } + ], + "name": { + "value": "Probabilistic Bounded Staleness-S-West US-T-East US", + "localizedValue": "Probabilistic Bounded Staleness-S-West Central US-T-West US" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBRegionCollectionGetMetrics.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBRegionCollectionGetMetrics.json new file mode 100644 index 000000000000..276548030e67 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBRegionCollectionGetMetrics.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseRid": "databaseRid", + "collectionRid": "collectionRid", + "region": "North Europe", + "$filter": "$filter=(name.value eq 'Total Requests') and timeGrain eq duration'PT5M' and startTime eq '2017-11-19T23:53:55.2780000Z' and endTime eq '2017-11-20T00:13:55.2780000Z" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "timeGrain": "PT5M", + "startTime": "2017-11-19T23:53:55.2780000Z", + "endTime": "2017-11-20T00:13:55.2780000Z", + "unit": "Count", + "metricValues": [ + { + "timestamp": "2017-11-19T23:53:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-19T23:58:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:03:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + }, + { + "timestamp": "2017-11-20T00:08:55.2780000Z", + "total": 0, + "_count": 0, + "average": 0 + } + ], + "name": { + "value": "Total Requests", + "localizedValue": "Total Requests" + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlContainerCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlContainerCreateUpdate.json new file mode 100644 index 000000000000..ce9c3604f649 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlContainerCreateUpdate.json @@ -0,0 +1,124 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "createUpdateSqlContainerParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "containerName", + "indexingPolicy": { + "indexingMode": "Consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + } + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName", + "name": "containerName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "containerName", + "indexingPolicy": { + "indexingMode": "Consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlContainerDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlContainerDelete.json new file mode 100644 index 000000000000..e0811c9f6b59 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlContainerDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlContainerGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlContainerGet.json new file mode 100644 index 000000000000..3e5f9986a190 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlContainerGet.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName", + "name": "containerName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "containerName", + "indexingPolicy": { + "indexingMode": "Consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + }, + "options": { + "throughput": 400 + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlContainerList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlContainerList.json new file mode 100644 index 000000000000..6c950ccff540 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlContainerList.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName", + "name": "containerName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "testctn", + "indexingPolicy": { + "indexingMode": "Consistent", + "automatic": true, + "includedPaths": [ + { + "path": "/*", + "indexes": [ + { + "kind": "Range", + "dataType": "String", + "precision": -1 + }, + { + "kind": "Range", + "dataType": "Number", + "precision": -1 + } + ] + } + ], + "excludedPaths": [] + }, + "partitionKey": { + "paths": [ + "/AccountNumber" + ], + "kind": "Hash" + }, + "defaultTtl": 100, + "uniqueKeyPolicy": { + "uniqueKeys": [ + { + "paths": [ + "/testPath" + ] + } + ] + }, + "conflictResolutionPolicy": { + "mode": "LastWriterWins", + "conflictResolutionPath": "/path" + }, + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlContainerThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlContainerThroughputGet.json new file mode 100644 index 000000000000..26ee24fcaea3 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlContainerThroughputGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlContainerThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlContainerThroughputUpdate.json new file mode 100644 index 000000000000..2f466a36115f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlContainerThroughputUpdate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlDatabaseCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlDatabaseCreateUpdate.json new file mode 100644 index 000000000000..0a55a69a1e61 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlDatabaseCreateUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "createUpdateSqlDatabaseParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlDatabaseDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlDatabaseDelete.json new file mode 100644 index 000000000000..9c0db48cbf87 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlDatabaseDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlDatabaseGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlDatabaseGet.json new file mode 100644 index 000000000000..c289e0dbfd01 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlDatabaseGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"", + "_colls": "colls/", + "_users": "users/" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlDatabaseList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlDatabaseList.json new file mode 100644 index 000000000000..12c436ddc7f3 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlDatabaseList.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName", + "name": "databaseName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "databaseName", + "_rid": "CqNBAA==", + "_ts": 1449602962, + "_etag": "\"00000a00-0000-0000-0000-56672f920000\"", + "_colls": "colls/", + "_users": "users/" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlDatabaseThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlDatabaseThroughputGet.json new file mode 100644 index 000000000000..23fae10415ab --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlDatabaseThroughputGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlDatabaseThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlDatabaseThroughputUpdate.json new file mode 100644 index 000000000000..2aa73c3ea8b9 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlDatabaseThroughputUpdate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlStoredProcedureCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlStoredProcedureCreateUpdate.json new file mode 100644 index 000000000000..2545a6b70f7b --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlStoredProcedureCreateUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "storedProcedureName": "storedProcedureName", + "createUpdateSqlStoredProcedureParameters": { + "properties": { + "resource": { + "id": "storedProcedureName", + "body": "body" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlStoredProcedures/storedProcedureName", + "name": "storedProcedureName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlStoredProcedures", + "properties": { + "resource": { + "id": "storedProcedureName", + "body": "body", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlStoredProcedureDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlStoredProcedureDelete.json new file mode 100644 index 000000000000..36a9702d0f3f --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlStoredProcedureDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "storedProcedureName": "storedProcedureName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlStoredProcedureGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlStoredProcedureGet.json new file mode 100644 index 000000000000..c6ff28353796 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlStoredProcedureGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName", + "storedProcedureName": "storedProcedureName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlStoredProcedures/storedProcedureName", + "name": "storedProcedureName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlStoredProcedures", + "properties": { + "resource": { + "id": "storedProcedureName", + "body": "body", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlStoredProcedureList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlStoredProcedureList.json new file mode 100644 index 000000000000..62bbbd1d258c --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlStoredProcedureList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlStoredProcedures/storedProcedureName", + "name": "testctn", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlStoredProcedures", + "properties": { + "resource": { + "id": "testctn", + "body": "body", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlTriggerCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlTriggerCreateUpdate.json new file mode 100644 index 000000000000..9206c5a50e28 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlTriggerCreateUpdate.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "triggerName": "triggerName", + "createUpdateSqlTriggerParameters": { + "properties": { + "resource": { + "id": "triggerName", + "body": "body", + "triggerType": "triggerType", + "triggerOperation": "triggerOperation" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlTriggers/triggerName", + "name": "triggerName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlTriggers", + "properties": { + "resource": { + "id": "triggerName", + "body": "body", + "triggerType": "triggerType", + "triggerOperation": "triggerOperation", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlTriggerDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlTriggerDelete.json new file mode 100644 index 000000000000..d59afc698be0 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlTriggerDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "triggerName": "triggerName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlTriggerGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlTriggerGet.json new file mode 100644 index 000000000000..4ecf322be01e --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlTriggerGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName", + "triggerName": "triggerName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlTriggers/triggerName", + "name": "triggerName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlTriggers", + "properties": { + "resource": { + "id": "triggerName", + "body": "body", + "triggerType": "triggerType", + "triggerOperation": "triggerOperation", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlTriggerList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlTriggerList.json new file mode 100644 index 000000000000..6195ab8fe293 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlTriggerList.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlTriggers/triggerName", + "name": "testctn", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlTriggers", + "properties": { + "resource": { + "id": "testctn", + "body": "body", + "triggerType": "triggerType", + "triggerOperation": "triggerOperation", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlUserDefinedFunctionCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlUserDefinedFunctionCreateUpdate.json new file mode 100644 index 000000000000..5e7cb95de23c --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlUserDefinedFunctionCreateUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "userDefinedFunctionName": "userDefinedFunctionName", + "createUpdateSqlUserDefinedFunctionParameters": { + "properties": { + "resource": { + "id": "userDefinedFunctionName", + "body": "body" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlUserDefinedFunctions/userDefinedFunctionName", + "name": "userDefinedFunctionName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlUserDefinedFunctions", + "properties": { + "resource": { + "id": "userDefinedFunctionName", + "body": "body", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlUserDefinedFunctionDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlUserDefinedFunctionDelete.json new file mode 100644 index 000000000000..53a6de41cfea --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlUserDefinedFunctionDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "databaseName": "databaseName", + "containerName": "containerName", + "userDefinedFunctionName": "userDefinedFunctionName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlUserDefinedFunctionGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlUserDefinedFunctionGet.json new file mode 100644 index 000000000000..a64a7b4bbdf8 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlUserDefinedFunctionGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName", + "userDefinedFunctionName": "userDefinedFunctionName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlUserDefinedFunctions/userDefinedFunctionName", + "name": "userDefinedFunctionName", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlUserDefinedFunctions", + "properties": { + "resource": { + "id": "userDefinedFunctionName", + "body": "body", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlUserDefinedFunctionList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlUserDefinedFunctionList.json new file mode 100644 index 000000000000..f906d3d9cb06 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBSqlUserDefinedFunctionList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1", + "databaseName": "databaseName", + "containerName": "containerName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/sqlDatabases/databaseName/sqlContainers/containerName/sqlUserDefinedFunctions/userDefinedFunctionName", + "name": "testctn", + "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/sqlContainers/sqlUserDefinedFunctions", + "properties": { + "resource": { + "id": "testctn", + "body": "body", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBTableCreateUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBTableCreateUpdate.json new file mode 100644 index 000000000000..04f49b958d5a --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBTableCreateUpdate.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "tableName": "tableName", + "createUpdateTableParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName" + }, + "options": {} + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/tables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/tables", + "location": "West US", + "properties": { + "resource": { + "id": "tableName" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBTableDelete.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBTableDelete.json new file mode 100644 index 000000000000..3c95c86467e3 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBTableDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "tableName": "tableName" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBTableGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBTableGet.json new file mode 100644 index 000000000000..e887b91f5044 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBTableGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/tables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/tables", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBTableList.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBTableList.json new file mode 100644 index 000000000000..ede35887634a --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBTableList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rgName", + "accountName": "ddb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/tables/tableName", + "name": "tableName", + "type": "Microsoft.DocumentDB/databaseAccounts/tables", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "id": "tableName" + } + } + } + ] + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBTableThroughputGet.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBTableThroughputGet.json new file mode 100644 index 000000000000..d43d05db1183 --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBTableThroughputGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "tableName": "tableName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/tables/tableName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/tables/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + } + } +} diff --git a/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBTableThroughputUpdate.json b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBTableThroughputUpdate.json new file mode 100644 index 000000000000..b14b42d6d3ae --- /dev/null +++ b/specification/cosmos-db/resource-manager/Microsoft.DocumentDB/stable/2020-03-01/examples/CosmosDBTableThroughputUpdate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "accountName": "ddb1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "tableName": "tableName", + "updateThroughputParameters": { + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.DocumentDB/databaseAccounts/ddb1/tables/tableName/throughputSettings/default", + "name": "default", + "type": "Microsoft.DocumentDB/databaseAccounts/tables/throughputSettings", + "location": "West US", + "tags": {}, + "properties": { + "resource": { + "throughput": 400, + "minimumThroughput": "400", + "offerReplacePending": "true", + "_rid": "PD5DALigDgw=", + "_ts": 1459200611, + "_etag": "\"00005900-0000-0000-0000-56f9a2630000\"" + } + } + } + }, + "202": {} + } +} diff --git a/specification/cosmos-db/resource-manager/readme.csharp.md b/specification/cosmos-db/resource-manager/readme.csharp.md new file mode 100644 index 000000000000..0952b6948046 --- /dev/null +++ b/specification/cosmos-db/resource-manager/readme.csharp.md @@ -0,0 +1,18 @@ +## 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 + namespace: Microsoft.Azure.Management.CosmosDB + output-folder: $(csharp-sdks-folder)/cosmosdb/Microsoft.Azure.Management.CosmosDB/src/Generated + clear-output-folder: true +``` + +``` yaml $(csharp) && !$(multiapi) && !$(csharp-profile) +namespace: Microsoft.Azure.Management.CosmosDB +output-folder: $(csharp-sdks-folder)/cosmosdb/Microsoft.Azure.Management.CosmosDB/src/Generated +``` \ No newline at end of file diff --git a/specification/cosmos-db/resource-manager/readme.go.md b/specification/cosmos-db/resource-manager/readme.go.md index 7f941e8877aa..e77d1f0a2b99 100644 --- a/specification/cosmos-db/resource-manager/readme.go.md +++ b/specification/cosmos-db/resource-manager/readme.go.md @@ -13,12 +13,22 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2020-03 - tag: package-2019-12 - tag: package-2019-08 - tag: package-2019-08-preview - tag: package-2015-04 ``` +### Tag: package-2020-03 and go + +These settings apply only when `--tag=package-2020-03 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2020-03' && $(go) +output-folder: $(go-sdk-folder)/services/cosmos-db/mgmt/2020-03-01/$(namespace) +``` + ### Tag: package-2019-12 and go These settings apply only when `--tag=package-2019-12 --go` is specified on the command line. diff --git a/specification/cosmos-db/resource-manager/readme.java.md b/specification/cosmos-db/resource-manager/readme.java.md index 7c4b648f32c1..29cd5f533fdc 100644 --- a/specification/cosmos-db/resource-manager/readme.java.md +++ b/specification/cosmos-db/resource-manager/readme.java.md @@ -17,12 +17,26 @@ service-name: CosmosDB ``` yaml $(java) && $(multiapi) batch: + - tag: package-2020-03 - tag: package-2019-12 - tag: package-2019-08 - tag: package-2019-08-preview - tag: package-2015-04 ``` +### Tag: package-2020-03 and java + +These settings apply only when `--tag=package-2020-03 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2020-03' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.cosmosdb.v2020_03_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/cosmos/mgmt-v2020_03_01 +regenerate-manager: true +generate-interface: true +``` + ### Tag: package-2019-12 and java These settings apply only when `--tag=package-2019-12 --java` is specified on the command line. @@ -31,7 +45,7 @@ Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2019-11' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.costmanagement.v2019_11_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/costmanagement/mgmt-v2019_11_01 +regenerate-manager: true +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. diff --git a/specification/customerlockbox/resource-manager/readme.python.md b/specification/customerlockbox/resource-manager/readme.python.md index adc394696835..a3235c8c21ce 100644 --- a/specification/customerlockbox/resource-manager/readme.python.md +++ b/specification/customerlockbox/resource-manager/readme.python.md @@ -8,8 +8,8 @@ python: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION payload-flattening-threshold: 2 - namespace: Microsoft.CustomerLockbox - package-name: customerlockbox + namespace: azure.mgmt.customerlockbox + package-name: azure-mgmt-customerlockbox package-version: 2018-02-28-preview clear-output-folder: true ``` @@ -17,5 +17,5 @@ python: ```yaml $(python) python: no-namespace-folders: true - output-folder: $(python-sdks-folder)/azure-mgmt/customerlockbox + output-folder: $(python-sdks-folder)/customerlockbox/azure-mgmt-customerlockbox/azure/mgmt/customerlockbox ``` diff --git a/specification/customproviders/resource-manager/Microsoft.CustomProviders/preview/2018-09-01-preview/customproviders.json b/specification/customproviders/resource-manager/Microsoft.CustomProviders/preview/2018-09-01-preview/customproviders.json index ee3f05f5b736..ba648e85694b 100644 --- a/specification/customproviders/resource-manager/Microsoft.CustomProviders/preview/2018-09-01-preview/customproviders.json +++ b/specification/customproviders/resource-manager/Microsoft.CustomProviders/preview/2018-09-01-preview/customproviders.json @@ -5,7 +5,7 @@ "title": "customproviders", "description": "Allows extension of ARM control plane with custom resource providers.", "x-ms-code-generation-settings": { - "name": "customprovidersClient" + "name": "CustomProvidersClient" } }, "host": "management.azure.com", diff --git a/specification/customproviders/resource-manager/readme.az.md b/specification/customproviders/resource-manager/readme.az.md new file mode 100644 index 000000000000..4d7169eea75d --- /dev/null +++ b/specification/customproviders/resource-manager/readme.az.md @@ -0,0 +1,24 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +``` yaml $(az) +az: + extensions: customproviders + namespace: azure.mgmt.customproviders + package-name: azure-mgmt-customproviders +az-output-folder: $(azure-cli-extension-folder)/src/customproviders +python-sdk-output-folder: "$(az-output-folder)/azext_customproviders/vendored_sdks/customproviders" + +#cli: +# cli-directive: +# directive on operationGroup +# - select: 'operationGroup' +# where: +# operationGroup: 'operations' +# hidden: true +# - where: +# parameter: location +# required: true + +``` diff --git a/specification/customproviders/resource-manager/readme.cli.md b/specification/customproviders/resource-manager/readme.cli.md new file mode 100644 index 000000000000..a9e918eefe21 --- /dev/null +++ b/specification/customproviders/resource-manager/readme.cli.md @@ -0,0 +1,9 @@ + CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +#cli: +# test-scenario: +# - name: Factories_CreateOrUpdate +``` diff --git a/specification/customproviders/resource-manager/readme.md b/specification/customproviders/resource-manager/readme.md index 8b3656a01526..8207c4d5b580 100644 --- a/specification/customproviders/resource-manager/readme.md +++ b/specification/customproviders/resource-manager/readme.md @@ -58,6 +58,7 @@ swagger-to-sdk: - repo: azure-sdk-for-ruby after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_customproviders'] + - repo: azure-cli-extensions ``` ## Go @@ -84,6 +85,10 @@ See configuration in [readme.csharp.md](./readme.csharp.md) See configuration in [readme.nodejs.md](./readme.nodejs.md) +## Trenton + +See configuration in [readme.trenton.md](./readme.trenton.md) + ## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. diff --git a/specification/customproviders/resource-manager/readme.python.md b/specification/customproviders/resource-manager/readme.python.md index 6a57ff8a0e0b..4e1e85b9ba52 100644 --- a/specification/customproviders/resource-manager/readme.python.md +++ b/specification/customproviders/resource-manager/readme.python.md @@ -4,18 +4,24 @@ These settings apply only when `--python` is specified on the command line. Please also specify `--python-sdks-folder=`. ```yaml $(python) +python-mode: create python: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION payload-flattening-threshold: 2 - namespace: Microsoft.CustomProviders - package-name: customproviders + namespace: azure.mgmt.customproviders + package-name: azure-mgmt-customproviders package-version: 2018-09-01-preview clear-output-folder: true ``` -```yaml $(python) +```yaml $(python) && $(python-mode) == 'create' python: - no-namespace-folders: true - output-folder: $(python-sdks-folder)/azure-mgmt/customproviders + basic-setup-py: true + output-folder: $(python-sdks-folder)/customproviders/azure-mgmt-customproviders ``` +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/customproviders/azure-mgmt-customproviders/azure/mgmt/customproviders +``` \ No newline at end of file diff --git a/specification/customproviders/resource-manager/readme.trenton.md b/specification/customproviders/resource-manager/readme.trenton.md new file mode 100644 index 000000000000..9e3698eb29ab --- /dev/null +++ b/specification/customproviders/resource-manager/readme.trenton.md @@ -0,0 +1,19 @@ +## Trenton + +These settings apply only when `--trenton` is specified on the command line. + +``` yaml $(trenton) +trenton: + cli_name: customproviders + azure_arm: true + license_header: MICROSOFT_MIT_NO_VERSION + payload_flattening_threshold: 2 + namespace: azure.mgmt.customproviders + package_name: azure-mgmt-customproviders + clear_output_folder: false +overrides: + - where: + property: resourceProviderName + set: + - IdPortion: "resourceproviders" +``` diff --git a/specification/databox/resource-manager/readme.cli.md b/specification/databox/resource-manager/readme.cli.md new file mode 100644 index 000000000000..a6275e9e42c2 --- /dev/null +++ b/specification/databox/resource-manager/readme.cli.md @@ -0,0 +1,32 @@ +## CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +cli: + cli-name: databox + package-name: azure-mgmt-databox + namespace: azure.mgmt.databox + test-scenario: + - name: JobsCreate + - name: JobsGet5 + - name: JobsGet4 + - name: JobsGet3 + - name: JobsGet2 + - name: JobsGet1 + - name: JobsGet + - name: JobsListByResourceGroup + - name: JobsList + - name: OperationsGet + - name: ServiceValidateInputsByResourceGroup + - name: AvailableSkusByResourceGroup + - name: BookShipmentPickupPost + - name: JobsListCredentials + - name: JobsCancelPost + - name: JobsPatch + - name: ServiceRegionConfiguration + - name: ValidateAddressPost + - name: ServiceValidateInputs + - name: AvailableSkusPost + - name: JobsDelete +``` \ No newline at end of file diff --git a/specification/databox/resource-manager/readme.md b/specification/databox/resource-manager/readme.md index 9b4645df6c7c..2fb1565805b6 100644 --- a/specification/databox/resource-manager/readme.md +++ b/specification/databox/resource-manager/readme.md @@ -26,25 +26,25 @@ These are the global settings for the DataBox API. ``` yaml openapi-type: arm -tag: package-2018-01 +tag: package-2019-09 ``` -### Tag: package-2018-01 +### Tag: package-2019-09 -These settings apply only when `--tag=package-2018-01` is specified on the command line. +These settings apply only when `--tag=package-2019-09` is specified on the command line. -``` yaml $(tag) == 'package-2018-01' +``` yaml $(tag) == 'package-2019-09' input-file: -- Microsoft.DataBox/stable/2018-01-01/databox.json +- Microsoft.DataBox/stable/2019-09-01/databox.json ``` -### Tag: package-2019-09 +### Tag: package-2018-01 -These settings apply only when `--tag=package-2019-09` is specified on the command line. +These settings apply only when `--tag=package-2018-01` is specified on the command line. -``` yaml $(tag) == 'package-2019-09' +``` yaml $(tag) == 'package-2018-01' input-file: -- Microsoft.DataBox/stable/2019-09-01/databox.json +- Microsoft.DataBox/stable/2018-01-01/databox.json ``` --- @@ -105,12 +105,12 @@ python: ``` yaml $(python) && $(python-mode) == 'update' python: no-namespace-folders: true - output-folder: $(python-sdks-folder)/azure-mgmt-databox/azure/mgmt/databox + output-folder: $(python-sdks-folder)/databox/azure-mgmt-databox/azure/mgmt/databox ``` ``` yaml $(python) && $(python-mode) == 'create' python: basic-setup-py: true - output-folder: $(python-sdks-folder)/azure-mgmt-databox + output-folder: $(python-sdks-folder)/databox/azure-mgmt-databox ``` ## Ruby @@ -182,8 +182,8 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: - - $(this-folder)/Microsoft.DataBox/stable/2018-01-01/databox.json - $(this-folder)/Microsoft.DataBox/stable/2019-09-01/databox.json + - $(this-folder)/Microsoft.DataBox/stable/2018-01-01/databox.json ``` diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/databoxedge.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/databoxedge.json index c49f40778e4d..bfe9d701e740 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/databoxedge.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/databoxedge.json @@ -5,27 +5,45 @@ "title": "DataBoxEdgeManagementClient" }, "host": "management.azure.com", - "schemes": [ "https" ], - "consumes": [ "application/json" ], - "produces": [ "application/json" ], + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], "paths": { "/providers/Microsoft.DataBoxEdge/operations": { "get": { - "tags": [ "Operations" ], + "tags": [ + "Operations" + ], "summary": "List all the supported operations.", "operationId": "Operations_List", - "parameters": [ { "$ref": "#/parameters/apiVersionParameter" } ], + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], "responses": { "200": { "description": "List of supported operations.", - "schema": { "$ref": "#/definitions/OperationsList" } + "schema": { + "$ref": "#/definitions/OperationsList" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { "OperationsGet": { "$ref": "./examples/OperationsGet.json" @@ -35,12 +53,18 @@ }, "/subscriptions/{subscriptionId}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices": { "get": { - "tags": [ "Devices" ], + "tags": [ + "Devices" + ], "description": "Gets all the Data Box Edge/Data Box Gateway devices in a subscription.", "operationId": "Devices_ListBySubscription", "parameters": [ - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/apiVersionParameter" }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, { "name": "$expand", "in": "query", @@ -52,14 +76,20 @@ "responses": { "200": { "description": "The collection of Data Box Edge/Data Box Gateway devices.", - "schema": { "$ref": "#/definitions/DataBoxEdgeDeviceList" } + "schema": { + "$ref": "#/definitions/DataBoxEdgeDeviceList" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { "DataBoxEdgeDeviceGetBySubscription": { "$ref": "./examples/DataBoxEdgeDeviceGetBySubscription.json" @@ -69,13 +99,21 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices": { "get": { - "tags": [ "Devices" ], + "tags": [ + "Devices" + ], "description": "Gets all the Data Box Edge/Data Box Gateway devices in a resource group.", "operationId": "Devices_ListByResourceGroup", "parameters": [ - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, { "name": "$expand", "in": "query", @@ -87,14 +125,20 @@ "responses": { "200": { "description": "The collection of Data Box Edge/Data Box Gateway devices.", - "schema": { "$ref": "#/definitions/DataBoxEdgeDeviceList" } + "schema": { + "$ref": "#/definitions/DataBoxEdgeDeviceList" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { "DataBoxEdgeDeviceGetByResourceGroup": { "$ref": "./examples/DataBoxEdgeDeviceGetByResourceGroup.json" @@ -104,7 +148,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}": { "get": { - "tags": [ "Devices" ], + "tags": [ + "Devices" + ], "description": "Gets the properties of the Data Box Edge/Data Box Gateway device.", "operationId": "Devices_Get", "parameters": [ @@ -115,18 +161,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The Data Box Edge/Data Box Gateway device.", - "schema": { "$ref": "#/definitions/DataBoxEdgeDevice" } + "schema": { + "$ref": "#/definitions/DataBoxEdgeDevice" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -136,7 +192,9 @@ } }, "put": { - "tags": [ "Devices" ], + "tags": [ + "Devices" + ], "description": "Creates or updates a Data Box Edge/Data Box Gateway resource.", "operationId": "Devices_CreateOrUpdate", "parameters": [ @@ -152,20 +210,32 @@ "in": "body", "description": "The resource object.", "required": true, - "schema": { "$ref": "#/definitions/DataBoxEdgeDevice" } + "schema": { + "$ref": "#/definitions/DataBoxEdgeDevice" + } }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "Successfully created or updated the resource.", - "schema": { "$ref": "#/definitions/DataBoxEdgeDevice" } + "schema": { + "$ref": "#/definitions/DataBoxEdgeDevice" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -176,7 +246,9 @@ } }, "delete": { - "tags": [ "Devices" ], + "tags": [ + "Devices" + ], "description": "Deletes the Data Box Edge/Data Box Gateway device.", "operationId": "Devices_Delete", "parameters": [ @@ -187,17 +259,31 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { - "200": { "description": "Successfully deleted the resource." }, - "202": { "description": "Accepted the request to delete the resource." }, - "204": { "description": "The resource is already deleted." }, + "200": { + "description": "Successfully deleted the resource." + }, + "202": { + "description": "Accepted the request to delete the resource." + }, + "204": { + "description": "The resource is already deleted." + }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -208,7 +294,9 @@ } }, "patch": { - "tags": [ "Devices" ], + "tags": [ + "Devices" + ], "description": "Modifies a Data Box Edge/Data Box Gateway resource.", "operationId": "Devices_Update", "parameters": [ @@ -224,20 +312,32 @@ "in": "body", "description": "The resource parameters.", "required": true, - "schema": { "$ref": "#/definitions/DataBoxEdgeDevicePatch" } + "schema": { + "$ref": "#/definitions/DataBoxEdgeDevicePatch" + } }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "Successfully updated the resource.", - "schema": { "$ref": "#/definitions/DataBoxEdgeDevice" } + "schema": { + "$ref": "#/definitions/DataBoxEdgeDevice" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -249,7 +349,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/alerts": { "get": { - "tags": [ "Alerts" ], + "tags": [ + "Alerts" + ], "description": "Gets all the alerts for a Data Box Edge/Data Box Gateway device.", "operationId": "Alerts_ListByDataBoxEdgeDevice", "parameters": [ @@ -260,21 +362,33 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The collection of alerts.", - "schema": { "$ref": "#/definitions/AlertList" } + "schema": { + "$ref": "#/definitions/AlertList" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { "AlertGetAllInDevice": { "$ref": "./examples/AlertGetAllInDevice.json" @@ -284,7 +398,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/alerts/{name}": { "get": { - "tags": [ "Alerts" ], + "tags": [ + "Alerts" + ], "summary": "Gets an alert by name.", "operationId": "Alerts_Get", "parameters": [ @@ -302,18 +418,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The alert details.", - "schema": { "$ref": "#/definitions/Alert" } + "schema": { + "$ref": "#/definitions/Alert" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -325,7 +451,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/bandwidthSchedules": { "get": { - "tags": [ "BandwidthSchedules" ], + "tags": [ + "BandwidthSchedules" + ], "description": "Gets all the bandwidth schedules for a Data Box Edge/Data Box Gateway device.", "operationId": "BandwidthSchedules_ListByDataBoxEdgeDevice", "parameters": [ @@ -336,21 +464,33 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The collection of bandwidth schedules.", - "schema": { "$ref": "#/definitions/BandwidthSchedulesList" } + "schema": { + "$ref": "#/definitions/BandwidthSchedulesList" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { "BandwidthScheduleGetAllInDevice": { "$ref": "./examples/BandwidthScheduleGetAllInDevice.json" @@ -360,7 +500,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/bandwidthSchedules/{name}": { "get": { - "tags": [ "BandwidthSchedules" ], + "tags": [ + "BandwidthSchedules" + ], "description": "Gets the properties of the specified bandwidth schedule.", "operationId": "BandwidthSchedules_Get", "parameters": [ @@ -378,18 +520,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The bandwidth schedule.", - "schema": { "$ref": "#/definitions/BandwidthSchedule" } + "schema": { + "$ref": "#/definitions/BandwidthSchedule" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -399,7 +551,9 @@ } }, "put": { - "tags": [ "BandwidthSchedules" ], + "tags": [ + "BandwidthSchedules" + ], "description": "Creates or updates a bandwidth schedule.", "operationId": "BandwidthSchedules_CreateOrUpdate", "parameters": [ @@ -422,21 +576,35 @@ "in": "body", "description": "The bandwidth schedule to be added or updated.", "required": true, - "schema": { "$ref": "#/definitions/BandwidthSchedule" } + "schema": { + "$ref": "#/definitions/BandwidthSchedule" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "Successfully created or updated the bandwidth schedule.", - "schema": { "$ref": "#/definitions/BandwidthSchedule" } + "schema": { + "$ref": "#/definitions/BandwidthSchedule" + } + }, + "202": { + "description": "Accepted the request to create or update the bandwidth schedule." }, - "202": { "description": "Accepted the request to create or update the bandwidth schedule." }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -447,7 +615,9 @@ } }, "delete": { - "tags": [ "BandwidthSchedules" ], + "tags": [ + "BandwidthSchedules" + ], "description": "Deletes the specified bandwidth schedule.", "operationId": "BandwidthSchedules_Delete", "parameters": [ @@ -465,17 +635,31 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { - "200": { "description": "Successfully deleted the bandwidth schedule." }, - "202": { "description": "Accepted the request to delete the bandwidth schedule." }, - "204": { "description": "Successfully deleted the bandwidth schedule." }, + "200": { + "description": "Successfully deleted the bandwidth schedule." + }, + "202": { + "description": "Accepted the request to delete the bandwidth schedule." + }, + "204": { + "description": "Successfully deleted the bandwidth schedule." + }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -488,7 +672,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/downloadUpdates": { "post": { - "tags": [ "Devices" ], + "tags": [ + "Devices" + ], "summary": "Downloads the updates on a Data Box Edge/Data Box Gateway device.", "operationId": "Devices_DownloadUpdates", "parameters": [ @@ -499,16 +685,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { - "200": { "description": "Successfully downloaded the updates on the device." }, - "202": { "description": "Accepted the request to download the updates on the device." }, + "200": { + "description": "Successfully downloaded the updates on the device." + }, + "202": { + "description": "Accepted the request to download the updates on the device." + }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -521,7 +719,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/getExtendedInformation": { "post": { - "tags": [ "Devices" ], + "tags": [ + "Devices" + ], "description": "Gets additional information for the specified Data Box Edge/Data Box Gateway device.", "operationId": "Devices_GetExtendedInformation", "parameters": [ @@ -532,18 +732,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The additional information.", - "schema": { "$ref": "#/definitions/DataBoxEdgeDeviceExtendedInfo" } + "schema": { + "$ref": "#/definitions/DataBoxEdgeDeviceExtendedInfo" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -555,7 +765,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/installUpdates": { "post": { - "tags": [ "Devices" ], + "tags": [ + "Devices" + ], "summary": "Installs the updates on the Data Box Edge/Data Box Gateway device.", "operationId": "Devices_InstallUpdates", "parameters": [ @@ -566,16 +778,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { - "200": { "description": "Successfully installed updates on the device." }, - "202": { "description": "Accepted the request to install updates on the device." }, + "200": { + "description": "Successfully installed updates on the device." + }, + "202": { + "description": "Accepted the request to install updates on the device." + }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -588,7 +812,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/jobs/{name}": { "get": { - "tags": [ "Jobs" ], + "tags": [ + "Jobs" + ], "summary": "Gets the details of a specified job on a Data Box Edge/Data Box Gateway device.", "operationId": "Jobs_Get", "parameters": [ @@ -606,18 +832,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The job details.", - "schema": { "$ref": "#/definitions/Job" } + "schema": { + "$ref": "#/definitions/Job" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -629,7 +865,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/networkSettings/default": { "get": { - "tags": [ "Devices" ], + "tags": [ + "Devices" + ], "description": "Gets the network settings of the specified Data Box Edge/Data Box Gateway device.", "operationId": "Devices_GetNetworkSettings", "parameters": [ @@ -640,18 +878,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The device network settings.", - "schema": { "$ref": "#/definitions/NetworkSettings" } + "schema": { + "$ref": "#/definitions/NetworkSettings" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -663,7 +911,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/nodes": { "get": { - "tags": [ "Nodes" ], + "tags": [ + "Nodes" + ], "description": "Gets all the nodes currently configured under this Data Box Edge device", "operationId": "Nodes_ListByDataBoxEdgeDevice", "parameters": [ @@ -674,21 +924,33 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The collection of all nodes on the device.", - "schema": { "$ref": "#/definitions/NodeList" } + "schema": { + "$ref": "#/definitions/NodeList" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "x-ms-pageable": { "nextLinkName": null }, + "x-ms-pageable": { + "nextLinkName": null + }, "x-ms-examples": { "NodesGetAllInDevice": { "$ref": "./examples/NodeGetAllInDevice.json" @@ -698,7 +960,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/operationsStatus/{name}": { "get": { - "tags": [ "OperationsStatus" ], + "tags": [ + "OperationsStatus" + ], "summary": "Gets the details of a specified job on a Data Box Edge/Data Box Gateway device.", "operationId": "OperationsStatus_Get", "parameters": [ @@ -716,18 +980,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The job details.", - "schema": { "$ref": "#/definitions/Job" } + "schema": { + "$ref": "#/definitions/Job" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -739,7 +1013,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/orders": { "get": { - "tags": [ "Orders" ], + "tags": [ + "Orders" + ], "summary": "Lists all the orders related to a Data Box Edge/Data Box Gateway device.", "operationId": "Orders_ListByDataBoxEdgeDevice", "parameters": [ @@ -750,21 +1026,33 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "Lists all the orders for the Data Box Edge Device", - "schema": { "$ref": "#/definitions/OrderList" } + "schema": { + "$ref": "#/definitions/OrderList" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { "OrderGetAllInDevice": { "$ref": "./examples/OrderGetAllInDevice.json" @@ -774,7 +1062,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/orders/default": { "get": { - "tags": [ "Orders" ], + "tags": [ + "Orders" + ], "summary": "Gets a specific order by name.", "operationId": "Orders_Get", "parameters": [ @@ -785,18 +1075,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The order details of a device.", - "schema": { "$ref": "#/definitions/Order" } + "schema": { + "$ref": "#/definitions/Order" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -806,7 +1106,9 @@ } }, "put": { - "tags": [ "Orders" ], + "tags": [ + "Orders" + ], "summary": "Creates or updates an order.", "operationId": "Orders_CreateOrUpdate", "parameters": [ @@ -822,21 +1124,35 @@ "in": "body", "description": "The order to be created or updated.", "required": true, - "schema": { "$ref": "#/definitions/Order" } + "schema": { + "$ref": "#/definitions/Order" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "Successfully created or updated the order.", - "schema": { "$ref": "#/definitions/Order" } + "schema": { + "$ref": "#/definitions/Order" + } + }, + "202": { + "description": "Accepted the request to create or update the order." }, - "202": { "description": "Accepted the request to create or update the order." }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -847,7 +1163,9 @@ } }, "delete": { - "tags": [ "Orders" ], + "tags": [ + "Orders" + ], "summary": "Deletes the order related to the device.", "operationId": "Orders_Delete", "parameters": [ @@ -858,17 +1176,31 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { - "200": { "description": "Successfully deleted the order." }, - "202": { "description": "Accepted the request to delete the order." }, - "204": { "description": "The order is already deleted." }, + "200": { + "description": "Successfully deleted the order." + }, + "202": { + "description": "Accepted the request to delete the order." + }, + "204": { + "description": "The order is already deleted." + }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -881,7 +1213,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/roles": { "get": { - "tags": [ "Roles" ], + "tags": [ + "Roles" + ], "description": "Lists all the roles configured in a Data Box Edge/Data Box Gateway device.", "operationId": "Roles_ListByDataBoxEdgeDevice", "parameters": [ @@ -892,21 +1226,33 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "List of all the roles configured in the device.", - "schema": { "$ref": "#/definitions/RoleList" } + "schema": { + "$ref": "#/definitions/RoleList" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { "RoleGetAllInDevice": { "$ref": "./examples/RoleGetAllInDevice.json" @@ -916,7 +1262,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/roles/{name}": { "get": { - "tags": [ "Roles" ], + "tags": [ + "Roles" + ], "description": "Gets a specific role by name.", "operationId": "Roles_Get", "parameters": [ @@ -934,18 +1282,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The role with the specified name in the given device.", - "schema": { "$ref": "#/definitions/Role" } + "schema": { + "$ref": "#/definitions/Role" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -955,7 +1313,9 @@ } }, "put": { - "tags": [ "Roles" ], + "tags": [ + "Roles" + ], "description": "Create or update a role.", "operationId": "Roles_CreateOrUpdate", "parameters": [ @@ -978,21 +1338,35 @@ "in": "body", "description": "The role properties.", "required": true, - "schema": { "$ref": "#/definitions/Role" } + "schema": { + "$ref": "#/definitions/Role" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "Successfully created or updated the role.", - "schema": { "$ref": "#/definitions/Role" } + "schema": { + "$ref": "#/definitions/Role" + } + }, + "202": { + "description": "Accepted the request to create or update the role." }, - "202": { "description": "Accepted the request to create or update the role." }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -1003,7 +1377,9 @@ } }, "delete": { - "tags": [ "Roles" ], + "tags": [ + "Roles" + ], "description": "Deletes the role on the device.", "operationId": "Roles_Delete", "parameters": [ @@ -1021,17 +1397,31 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { - "200": { "description": "Successfully deleted the role." }, - "202": { "description": "Accepted the request to delete the role." }, - "204": { "description": "The role is already deleted." }, + "200": { + "description": "Successfully deleted the role." + }, + "202": { + "description": "Accepted the request to delete the role." + }, + "204": { + "description": "The role is already deleted." + }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -1044,7 +1434,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/scanForUpdates": { "post": { - "tags": [ "Devices" ], + "tags": [ + "Devices" + ], "summary": "Scans for updates on a Data Box Edge/Data Box Gateway device.", "operationId": "Devices_ScanForUpdates", "parameters": [ @@ -1055,16 +1447,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { - "200": { "description": "Successfully scanned the device for updates." }, - "202": { "description": "Accepted the request to scan for updates on the device." }, + "200": { + "description": "Successfully scanned the device for updates." + }, + "202": { + "description": "Accepted the request to scan for updates on the device." + }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -1077,7 +1481,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/securitySettings/default/update": { "post": { - "tags": [ "Devices" ], + "tags": [ + "Devices" + ], "description": "Updates the security settings on a Data Box Edge/Data Box Gateway device.", "operationId": "Devices_CreateOrUpdateSecuritySettings", "parameters": [ @@ -1093,18 +1499,32 @@ "in": "body", "description": "The security settings.", "required": true, - "schema": { "$ref": "#/definitions/SecuritySettings" } + "schema": { + "$ref": "#/definitions/SecuritySettings" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { - "202": { "description": "Accepted the request to update the security settings." }, - "204": { "description": "Updated the security settings." }, + "202": { + "description": "Accepted the request to update the security settings." + }, + "204": { + "description": "Updated the security settings." + }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -1117,7 +1537,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/shares": { "get": { - "tags": [ "Shares" ], + "tags": [ + "Shares" + ], "summary": "Lists all the shares in a Data Box Edge/Data Box Gateway device.", "operationId": "Shares_ListByDataBoxEdgeDevice", "parameters": [ @@ -1128,21 +1550,33 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The collection of all the shares on the device.", - "schema": { "$ref": "#/definitions/ShareList" } + "schema": { + "$ref": "#/definitions/ShareList" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { "ShareGetAllInDevice": { "$ref": "./examples/ShareGetAllInDevice.json" @@ -1152,7 +1586,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/shares/{name}": { "get": { - "tags": [ "Shares" ], + "tags": [ + "Shares" + ], "summary": "Gets a share by name.", "operationId": "Shares_Get", "parameters": [ @@ -1170,18 +1606,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The share details.", - "schema": { "$ref": "#/definitions/Share" } + "schema": { + "$ref": "#/definitions/Share" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -1191,7 +1637,9 @@ } }, "put": { - "tags": [ "Shares" ], + "tags": [ + "Shares" + ], "summary": "Creates a new share or updates an existing share on the device.", "operationId": "Shares_CreateOrUpdate", "parameters": [ @@ -1214,21 +1662,35 @@ "in": "body", "description": "The share properties.", "required": true, - "schema": { "$ref": "#/definitions/Share" } + "schema": { + "$ref": "#/definitions/Share" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "Successfully created or updated the share.", - "schema": { "$ref": "#/definitions/Share" } + "schema": { + "$ref": "#/definitions/Share" + } + }, + "202": { + "description": "Accepted the request to create or update the share." }, - "202": { "description": "Accepted the request to create or update the share." }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -1239,7 +1701,9 @@ } }, "delete": { - "tags": [ "Shares" ], + "tags": [ + "Shares" + ], "description": "Deletes the share on the Data Box Edge/Data Box Gateway device.", "operationId": "Shares_Delete", "parameters": [ @@ -1257,17 +1721,31 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { - "200": { "description": "Successfully deleted the share." }, - "202": { "description": "Accepted the request to delete the share." }, - "204": { "description": "The share is already deleted." }, + "200": { + "description": "Successfully deleted the share." + }, + "202": { + "description": "Accepted the request to delete the share." + }, + "204": { + "description": "The share is already deleted." + }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -1280,7 +1758,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/shares/{name}/refresh": { "post": { - "tags": [ "Shares" ], + "tags": [ + "Shares" + ], "summary": "Refreshes the share metadata with the data from the cloud.", "operationId": "Shares_Refresh", "parameters": [ @@ -1298,16 +1778,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { - "200": { "description": "Successfully refreshed the share on the device." }, - "202": { "description": "Accepted the request to refresh the share on the device." }, + "200": { + "description": "Successfully refreshed the share on the device." + }, + "202": { + "description": "Accepted the request to refresh the share on the device." + }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -1320,7 +1812,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/storageAccountCredentials": { "get": { - "tags": [ "StorageAccountCredentials" ], + "tags": [ + "StorageAccountCredentials" + ], "summary": "Gets all the storage account credentials in a Data Box Edge/Data Box Gateway device.", "operationId": "StorageAccountCredentials_ListByDataBoxEdgeDevice", "parameters": [ @@ -1331,21 +1825,33 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The collection of storage account credentials.", - "schema": { "$ref": "#/definitions/StorageAccountCredentialList" } + "schema": { + "$ref": "#/definitions/StorageAccountCredentialList" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { "SACGetAllInDevice": { "$ref": "./examples/SACGetAllInDevice.json" @@ -1355,7 +1861,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/storageAccountCredentials/{name}": { "get": { - "tags": [ "StorageAccountCredentials" ], + "tags": [ + "StorageAccountCredentials" + ], "description": "Gets the properties of the specified storage account credential.", "operationId": "StorageAccountCredentials_Get", "parameters": [ @@ -1373,18 +1881,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The storage account credential properties.", - "schema": { "$ref": "#/definitions/StorageAccountCredential" } + "schema": { + "$ref": "#/definitions/StorageAccountCredential" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -1394,7 +1912,9 @@ } }, "put": { - "tags": [ "StorageAccountCredentials" ], + "tags": [ + "StorageAccountCredentials" + ], "description": "Creates or updates the storage account credential.", "operationId": "StorageAccountCredentials_CreateOrUpdate", "parameters": [ @@ -1417,21 +1937,35 @@ "in": "body", "description": "The storage account credential.", "required": true, - "schema": { "$ref": "#/definitions/StorageAccountCredential" } + "schema": { + "$ref": "#/definitions/StorageAccountCredential" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "Successfully created or updated the storage account credential.", - "schema": { "$ref": "#/definitions/StorageAccountCredential" } + "schema": { + "$ref": "#/definitions/StorageAccountCredential" + } + }, + "202": { + "description": "Accepted the request to create or update the storage account credential." }, - "202": { "description": "Accepted the request to create or update the storage account credential." }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -1442,7 +1976,9 @@ } }, "delete": { - "tags": [ "StorageAccountCredentials" ], + "tags": [ + "StorageAccountCredentials" + ], "description": "Deletes the storage account credential.", "operationId": "StorageAccountCredentials_Delete", "parameters": [ @@ -1460,17 +1996,31 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { - "200": { "description": "Successfully deleted the storage account credential." }, - "202": { "description": "Accepted the request to delete the storage account credential." }, - "204": { "description": "The storage account credential is already deleted." }, + "200": { + "description": "Successfully deleted the storage account credential." + }, + "202": { + "description": "Accepted the request to delete the storage account credential." + }, + "204": { + "description": "The storage account credential is already deleted." + }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -1483,7 +2033,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/storageAccounts": { "get": { - "tags": [ "StorageAccounts" ], + "tags": [ + "StorageAccounts" + ], "summary": "Lists all the storage accounts in a Data Box Edge/Data Box Gateway device.", "operationId": "StorageAccounts_ListByDataBoxEdgeDevice", "parameters": [ @@ -1494,21 +2046,33 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The collection of all the StorageAccounts on the device.", - "schema": { "$ref": "#/definitions/StorageAccountList" } + "schema": { + "$ref": "#/definitions/StorageAccountList" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { "StorageAccountGetAllInDevice": { "$ref": "./examples/StorageAccountGetAllInDevice.json" @@ -1518,7 +2082,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/storageAccounts/{storageAccountName}": { "get": { - "tags": [ "StorageAccounts" ], + "tags": [ + "StorageAccounts" + ], "summary": "Gets a StorageAccount by name.", "operationId": "StorageAccounts_Get", "parameters": [ @@ -1536,18 +2102,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The storage account details.", - "schema": { "$ref": "#/definitions/StorageAccount" } + "schema": { + "$ref": "#/definitions/StorageAccount" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -1557,7 +2133,9 @@ } }, "put": { - "tags": [ "StorageAccounts" ], + "tags": [ + "StorageAccounts" + ], "summary": "Creates a new StorageAccount or updates an existing StorageAccount on the device.", "operationId": "StorageAccounts_CreateOrUpdate", "parameters": [ @@ -1580,21 +2158,35 @@ "in": "body", "description": "The StorageAccount properties.", "required": true, - "schema": { "$ref": "#/definitions/StorageAccount" } + "schema": { + "$ref": "#/definitions/StorageAccount" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "Successfully created or updated the StorageAccount.", - "schema": { "$ref": "#/definitions/StorageAccount" } + "schema": { + "$ref": "#/definitions/StorageAccount" + } + }, + "202": { + "description": "Accepted the request to create or update the StorageAccount." }, - "202": { "description": "Accepted the request to create or update the StorageAccount." }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -1605,7 +2197,9 @@ } }, "delete": { - "tags": [ "StorageAccounts" ], + "tags": [ + "StorageAccounts" + ], "description": "Deletes the StorageAccount on the Data Box Edge/Data Box Gateway device.", "operationId": "StorageAccounts_Delete", "parameters": [ @@ -1623,16 +2217,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { - "202": { "description": "Accepted the request to delete the StorageAccount." }, - "204": { "description": "The StorageAccount is already deleted." }, + "202": { + "description": "Accepted the request to delete the StorageAccount." + }, + "204": { + "description": "The StorageAccount is already deleted." + }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -1645,7 +2251,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/storageAccounts/{storageAccountName}/containers": { "get": { - "tags": [ "Containers" ], + "tags": [ + "Containers" + ], "summary": "Lists all the containers of a storage Account in a Data Box Edge/Data Box Gateway device.", "operationId": "Containers_ListByStorageAccount", "parameters": [ @@ -1663,21 +2271,33 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The collection of all the containers on the device.", - "schema": { "$ref": "#/definitions/ContainerList" } + "schema": { + "$ref": "#/definitions/ContainerList" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { "ContainerListAllInDevice": { "$ref": "./examples/ContainerListAllInDevice.json" @@ -1687,7 +2307,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/storageAccounts/{storageAccountName}/containers/{containerName}": { "get": { - "tags": [ "Containers" ], + "tags": [ + "Containers" + ], "summary": "Gets a container by name.", "operationId": "Containers_Get", "parameters": [ @@ -1712,18 +2334,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The container details.", - "schema": { "$ref": "#/definitions/Container" } + "schema": { + "$ref": "#/definitions/Container" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -1733,7 +2365,9 @@ } }, "put": { - "tags": [ "Containers" ], + "tags": [ + "Containers" + ], "summary": "Creates a new container or updates an existing container on the device.", "operationId": "Containers_CreateOrUpdate", "parameters": [ @@ -1763,21 +2397,35 @@ "in": "body", "description": "The container properties.", "required": true, - "schema": { "$ref": "#/definitions/Container" } + "schema": { + "$ref": "#/definitions/Container" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "Successfully created or updated the container.", - "schema": { "$ref": "#/definitions/Container" } + "schema": { + "$ref": "#/definitions/Container" + } + }, + "202": { + "description": "Accepted the request to create or update the container." }, - "202": { "description": "Accepted the request to create or update the container." }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -1788,7 +2436,9 @@ } }, "delete": { - "tags": [ "Containers" ], + "tags": [ + "Containers" + ], "description": "Deletes the container on the Data Box Edge/Data Box Gateway device.", "operationId": "Containers_Delete", "parameters": [ @@ -1813,16 +2463,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { - "202": { "description": "Accepted the request to delete the container." }, - "204": { "description": "The container is already deleted." }, + "202": { + "description": "Accepted the request to delete the container." + }, + "204": { + "description": "The container is already deleted." + }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -1835,7 +2497,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/storageAccounts/{storageAccountName}/containers/{containerName}/refresh": { "post": { - "tags": [ "Containers" ], + "tags": [ + "Containers" + ], "summary": "Refreshes the container metadata with the data from the cloud.", "operationId": "Containers_Refresh", "parameters": [ @@ -1860,16 +2524,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { - "200": { "description": "Successfully refreshed the container on the device." }, - "202": { "description": "Accepted the request to refresh the container on the device." }, + "200": { + "description": "Successfully refreshed the container on the device." + }, + "202": { + "description": "Accepted the request to refresh the container on the device." + }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -1882,7 +2558,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/triggers": { "get": { - "tags": [ "Triggers" ], + "tags": [ + "Triggers" + ], "description": "Lists all the triggers configured in the device.", "operationId": "Triggers_ListByDataBoxEdgeDevice", "parameters": [ @@ -1893,9 +2571,15 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, { "name": "$filter", "in": "query", @@ -1907,14 +2591,20 @@ "responses": { "200": { "description": "List all the triggers configured in the device", - "schema": { "$ref": "#/definitions/TriggerList" } + "schema": { + "$ref": "#/definitions/TriggerList" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { "TriggerGetAllInDevice": { "$ref": "./examples/TriggerGetAllInDevice.json" @@ -1924,7 +2614,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/triggers/{name}": { "get": { - "tags": [ "Triggers" ], + "tags": [ + "Triggers" + ], "description": "Get a specific trigger by name.", "operationId": "Triggers_Get", "parameters": [ @@ -1942,18 +2634,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The trigger.", - "schema": { "$ref": "#/definitions/Trigger" } + "schema": { + "$ref": "#/definitions/Trigger" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -1963,7 +2665,9 @@ } }, "put": { - "tags": [ "Triggers" ], + "tags": [ + "Triggers" + ], "description": "Creates or updates a trigger.", "operationId": "Triggers_CreateOrUpdate", "parameters": [ @@ -1986,21 +2690,35 @@ "in": "body", "description": "The trigger.", "required": true, - "schema": { "$ref": "#/definitions/Trigger" } + "schema": { + "$ref": "#/definitions/Trigger" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "Successfully created or updated the trigger.", - "schema": { "$ref": "#/definitions/Trigger" } + "schema": { + "$ref": "#/definitions/Trigger" + } + }, + "202": { + "description": "Accepted the request to create or update the trigger." }, - "202": { "description": "Accepted the request to create or update the trigger." }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -2011,7 +2729,9 @@ } }, "delete": { - "tags": [ "Triggers" ], + "tags": [ + "Triggers" + ], "description": "Deletes the trigger on the gateway device.", "operationId": "Triggers_Delete", "parameters": [ @@ -2029,17 +2749,31 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { - "200": { "description": "Successfully deleted the trigger." }, - "202": { "description": "Accepted the request to delete the trigger." }, - "204": { "description": "The trigger is already deleted." }, + "200": { + "description": "Successfully deleted the trigger." + }, + "202": { + "description": "Accepted the request to delete the trigger." + }, + "204": { + "description": "The trigger is already deleted." + }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -2052,7 +2786,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/updateSummary/default": { "get": { - "tags": [ "Devices" ], + "tags": [ + "Devices" + ], "summary": "Gets information about the availability of updates based on the last scan of the device. It also gets information about any ongoing download or install jobs on the device.", "operationId": "Devices_GetUpdateSummary", "parameters": [ @@ -2063,18 +2799,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The update summary.", - "schema": { "$ref": "#/definitions/UpdateSummary" } + "schema": { + "$ref": "#/definitions/UpdateSummary" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -2086,7 +2832,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/uploadCertificate": { "post": { - "tags": [ "Devices" ], + "tags": [ + "Devices" + ], "description": "Uploads registration certificate for the device.", "operationId": "Devices_UploadCertificate", "parameters": [ @@ -2102,20 +2850,32 @@ "in": "body", "description": "The upload certificate request.", "required": true, - "schema": { "$ref": "#/definitions/UploadCertificateRequest" } + "schema": { + "$ref": "#/definitions/UploadCertificateRequest" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "Successfully uploaded the registration certificate.", - "schema": { "$ref": "#/definitions/UploadCertificateResponse" } + "schema": { + "$ref": "#/definitions/UploadCertificateResponse" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -2127,7 +2887,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/users": { "get": { - "tags": [ "Users" ], + "tags": [ + "Users" + ], "description": "Gets all the users registered on a Data Box Edge/Data Box Gateway device.", "operationId": "Users_ListByDataBoxEdgeDevice", "parameters": [ @@ -2138,9 +2900,15 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, { "name": "$filter", "in": "query", @@ -2152,14 +2920,20 @@ "responses": { "200": { "description": "The collection of all users on the device.", - "schema": { "$ref": "#/definitions/UserList" } + "schema": { + "$ref": "#/definitions/UserList" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "x-ms-pageable": { "nextLinkName": "nextLink" }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "x-ms-examples": { "UserGetAllInDevice": { "$ref": "./examples/UserGetAllInDevice.json" @@ -2169,7 +2943,9 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/{deviceName}/users/{name}": { "get": { - "tags": [ "Users" ], + "tags": [ + "Users" + ], "description": "Gets the properties of the specified user.", "operationId": "Users_Get", "parameters": [ @@ -2187,18 +2963,28 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "The user details.", - "schema": { "$ref": "#/definitions/User" } + "schema": { + "$ref": "#/definitions/User" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-examples": { @@ -2208,7 +2994,9 @@ } }, "put": { - "tags": [ "Users" ], + "tags": [ + "Users" + ], "description": "Creates a new user or updates an existing user's information on a Data Box Edge/Data Box Gateway device.", "operationId": "Users_CreateOrUpdate", "parameters": [ @@ -2231,21 +3019,35 @@ "in": "body", "description": "The user details.", "required": true, - "schema": { "$ref": "#/definitions/User" } + "schema": { + "$ref": "#/definitions/User" + } }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { "200": { "description": "Successfully created or updated the user.", - "schema": { "$ref": "#/definitions/User" } + "schema": { + "$ref": "#/definitions/User" + } + }, + "202": { + "description": "Accepted the request to create or update the user." }, - "202": { "description": "Accepted the request to create or update the user." }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -2256,7 +3058,9 @@ } }, "delete": { - "tags": [ "Users" ], + "tags": [ + "Users" + ], "description": "Deletes the user on a databox edge/gateway device.", "operationId": "Users_Delete", "parameters": [ @@ -2274,17 +3078,31 @@ "required": true, "type": "string" }, - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/resourceGroupNameParameter" }, - { "$ref": "#/parameters/apiVersionParameter" } + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } ], "responses": { - "200": { "description": "Successfully deleted the user." }, - "202": { "description": "Accepted the request to delete the user." }, - "204": { "description": "The user is already deleted." }, + "200": { + "description": "Successfully deleted the user." + }, + "202": { + "description": "Accepted the request to delete the user." + }, + "204": { + "description": "The user is already deleted." + }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, "x-ms-long-running-operation": true, @@ -2297,12 +3115,18 @@ }, "/subscriptions/{subscriptionId}/providers/Microsoft.DataBoxEdge/skus": { "get": { - "tags": [ "Skus" ], + "tags": [ + "Skus" + ], "summary": "List all the available Skus in the region and information related to them", "operationId": "Skus_List", "parameters": [ - { "$ref": "#/parameters/subscriptionIdParameter" }, - { "$ref": "#/parameters/apiVersionParameter" }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, { "name": "$filter", "in": "query", @@ -2314,14 +3138,20 @@ "responses": { "200": { "description": "Lists the available Skus and information related to them.", - "schema": { "$ref": "#/definitions/SkuInformationList" } + "schema": { + "$ref": "#/definitions/SkuInformationList" + } }, "default": { "description": "Error response describing why the operation failed.", - "schema": { "$ref": "#/definitions/CloudError" } + "schema": { + "$ref": "#/definitions/CloudError" + } } }, - "x-ms-pageable": { "nextLinkName": null }, + "x-ms-pageable": { + "nextLinkName": null + }, "x-ms-examples": { "ListSkus": { "$ref": "./examples/ListSkus.json" @@ -2333,7 +3163,13 @@ "definitions": { "Address": { "description": "The shipping address of the customer.", - "required": [ "addressLine1", "postalCode", "city", "state", "country" ], + "required": [ + "addressLine1", + "postalCode", + "city", + "state", + "country" + ], "type": "object", "properties": { "addressLine1": { @@ -2369,7 +3205,11 @@ "Alert": { "description": "Alert on the data box edge/gateway device.", "type": "object", - "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], "properties": { "properties": { "$ref": "#/definitions/AlertProperties", @@ -2408,7 +3248,9 @@ "value": { "description": "The value.", "type": "array", - "items": { "$ref": "#/definitions/Alert" }, + "items": { + "$ref": "#/definitions/Alert" + }, "readOnly": true }, "nextLink": { @@ -2445,7 +3287,11 @@ }, "severity": { "description": "Severity of the alert.", - "enum": [ "Informational", "Warning", "Critical" ], + "enum": [ + "Informational", + "Warning", + "Critical" + ], "type": "string", "readOnly": true, "x-ms-enum": { @@ -2461,7 +3307,9 @@ "detailedInformation": { "description": "Alert details.", "type": "object", - "additionalProperties": { "type": "string" }, + "additionalProperties": { + "type": "string" + }, "readOnly": true } } @@ -2490,7 +3338,10 @@ }, "AsymmetricEncryptedSecret": { "description": "Represent the secrets intended for encryption with asymmetric key pair.", - "required": [ "value", "encryptionAlgorithm" ], + "required": [ + "value", + "encryptionAlgorithm" + ], "type": "object", "properties": { "value": { @@ -2503,7 +3354,11 @@ }, "encryptionAlgorithm": { "description": "The algorithm used to encrypt \"Value\".", - "enum": [ "None", "AES256", "RSAES_PKCS1_v_1_5" ], + "enum": [ + "None", + "AES256", + "RSAES_PKCS1_v_1_5" + ], "type": "string", "x-ms-enum": { "name": "EncryptionAlgorithm", @@ -2524,7 +3379,11 @@ }, "AzureContainerInfo": { "description": "Azure container mapping of the endpoint.", - "required": [ "storageAccountCredentialId", "containerName", "dataFormat" ], + "required": [ + "storageAccountCredentialId", + "containerName", + "dataFormat" + ], "type": "object", "properties": { "storageAccountCredentialId": { @@ -2537,7 +3396,11 @@ }, "dataFormat": { "description": "Storage format used for the file represented by the share.", - "enum": [ "BlockBlob", "PageBlob", "AzureFile" ], + "enum": [ + "BlockBlob", + "PageBlob", + "AzureFile" + ], "type": "string", "x-ms-enum": { "name": "AzureContainerDataFormat", @@ -2548,9 +3411,15 @@ }, "BandwidthSchedule": { "description": "The bandwidth schedule details.", - "required": [ "properties" ], + "required": [ + "properties" + ], "type": "object", - "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], "properties": { "properties": { "$ref": "#/definitions/BandwidthScheduleProperties", @@ -2561,7 +3430,12 @@ }, "BandwidthScheduleProperties": { "description": "The properties of the bandwidth schedule.", - "required": [ "start", "stop", "rateInMbps", "days" ], + "required": [ + "start", + "stop", + "rateInMbps", + "days" + ], "type": "object", "properties": { "start": { @@ -2581,7 +3455,15 @@ "description": "The days of the week when this schedule is applicable.", "type": "array", "items": { - "enum": [ "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" ], + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ], "type": "string", "x-ms-enum": { "name": "DayOfWeek", @@ -2598,7 +3480,9 @@ "value": { "description": "The list of bandwidth schedules.", "type": "array", - "items": { "$ref": "#/definitions/BandwidthSchedule" }, + "items": { + "$ref": "#/definitions/BandwidthSchedule" + }, "readOnly": true }, "nextLink": { @@ -2610,7 +3494,10 @@ }, "ClientAccessRight": { "description": "The mapping between a particular client IP and the type of access client has on the NFS share.", - "required": [ "client", "accessPermission" ], + "required": [ + "client", + "accessPermission" + ], "type": "object", "properties": { "client": { @@ -2619,7 +3506,11 @@ }, "accessPermission": { "description": "Type of access to be allowed for the client.", - "enum": [ "NoAccess", "ReadOnly", "ReadWrite" ], + "enum": [ + "NoAccess", + "ReadOnly", + "ReadWrite" + ], "type": "string", "x-ms-enum": { "name": "ClientPermissionType", @@ -2652,14 +3543,21 @@ "details": { "description": "A list of additional details about the error.", "type": "array", - "items": { "$ref": "#/definitions/CloudErrorBody" } + "items": { + "$ref": "#/definitions/CloudErrorBody" + } } }, "x-ms-external": true }, "ContactDetails": { "description": "Contains all the contact details of the customer.", - "required": [ "contactPerson", "companyName", "phone", "emailList" ], + "required": [ + "contactPerson", + "companyName", + "phone", + "emailList" + ], "type": "object", "properties": { "contactPerson": { @@ -2677,15 +3575,23 @@ "emailList": { "description": "The email list.", "type": "array", - "items": { "type": "string" } + "items": { + "type": "string" + } } } }, "Container": { "description": "Represents a container on the Data Box Edge/Gateway device.", - "required": [ "properties" ], + "required": [ + "properties" + ], "type": "object", - "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], "properties": { "properties": { "$ref": "#/definitions/ContainerProperties", @@ -2701,7 +3607,9 @@ "value": { "description": "The list of containers.", "type": "array", - "items": { "$ref": "#/definitions/Container" }, + "items": { + "$ref": "#/definitions/Container" + }, "readOnly": true }, "nextLink": { @@ -2713,12 +3621,20 @@ }, "ContainerProperties": { "description": "The container properties.", - "required": [ "dataFormat" ], + "required": [ + "dataFormat" + ], "type": "object", "properties": { "containerStatus": { "description": "Current status of the container.", - "enum": [ "OK", "Offline", "Unknown", "Updating", "NeedsAttention" ], + "enum": [ + "OK", + "Offline", + "Unknown", + "Updating", + "NeedsAttention" + ], "type": "string", "readOnly": true, "x-ms-enum": { @@ -2728,7 +3644,11 @@ }, "dataFormat": { "description": "DataFormat for Container", - "enum": [ "BlockBlob", "PageBlob", "AzureFile" ], + "enum": [ + "BlockBlob", + "PageBlob", + "AzureFile" + ], "type": "string", "x-ms-enum": { "name": "AzureContainerDataFormat", @@ -2750,19 +3670,30 @@ }, "DataBoxEdgeDevice": { "description": "The Data Box Edge/Gateway device.", - "required": [ "location" ], + "required": [ + "location" + ], "type": "object", - "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], "properties": { "location": { "description": "The location of the device. This is a supported and registered Azure geographical region (for example, West US, East US, or Southeast Asia). The geographical region of a device cannot be changed once it is created, but if an identical geographical region is specified on update, the request will succeed.", "type": "string", - "x-ms-mutability": [ "read", "create" ] + "x-ms-mutability": [ + "read", + "create" + ] }, "tags": { "description": "The list of tags that describe the device. These tags can be used to view and group this device (across resource groups).", "type": "object", - "additionalProperties": { "type": "string" } + "additionalProperties": { + "type": "string" + } }, "sku": { "$ref": "#/definitions/Sku", @@ -2782,7 +3713,11 @@ "DataBoxEdgeDeviceExtendedInfo": { "description": "The extended Info of the Data Box Edge/Gateway device.", "type": "object", - "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], "properties": { "properties": { "$ref": "#/definitions/DataBoxEdgeDeviceExtendedInfoProperties", @@ -2817,7 +3752,9 @@ "value": { "description": "The list of Data Box Edge/Gateway devices.", "type": "array", - "items": { "$ref": "#/definitions/DataBoxEdgeDevice" }, + "items": { + "$ref": "#/definitions/DataBoxEdgeDevice" + }, "readOnly": true }, "nextLink": { @@ -2834,7 +3771,9 @@ "tags": { "description": "The tags attached to the Data Box Edge/Gateway resource.", "type": "object", - "additionalProperties": { "type": "string" } + "additionalProperties": { + "type": "string" + } } } }, @@ -2844,7 +3783,15 @@ "properties": { "dataBoxEdgeDeviceStatus": { "description": "The status of the Data Box Edge/Gateway device.", - "enum": [ "ReadyToSetup", "Online", "Offline", "NeedsAttention", "Disconnected", "PartiallyDisconnected", "Maintenance" ], + "enum": [ + "ReadyToSetup", + "Online", + "Offline", + "NeedsAttention", + "Disconnected", + "PartiallyDisconnected", + "Maintenance" + ], "type": "string", "x-ms-enum": { "name": "DataBoxEdgeDeviceStatus", @@ -2866,7 +3813,9 @@ }, "deviceType": { "description": "The type of the Data Box Edge/Gateway device.", - "enum": [ "DataBoxEdgeDevice" ], + "enum": [ + "DataBoxEdgeDevice" + ], "type": "string", "readOnly": true, "x-ms-enum": { @@ -2913,7 +3862,12 @@ "description": "Type of compute roles configured.", "type": "array", "items": { - "enum": [ "IOT", "ASA", "Functions", "Cognitive" ], + "enum": [ + "IOT", + "ASA", + "Functions", + "Cognitive" + ], "type": "string", "x-ms-enum": { "name": "RoleTypes", @@ -2932,9 +3886,16 @@ }, "FileEventTrigger": { "description": "Trigger details.", - "required": [ "properties", "kind" ], + "required": [ + "properties", + "kind" + ], "type": "object", - "allOf": [ { "$ref": "#/definitions/Trigger" } ], + "allOf": [ + { + "$ref": "#/definitions/Trigger" + } + ], "properties": { "properties": { "$ref": "#/definitions/FileTriggerProperties", @@ -2961,7 +3922,9 @@ }, "FileSourceInfo": { "description": "File source details.", - "required": [ "shareId" ], + "required": [ + "shareId" + ], "type": "object", "properties": { "shareId": { @@ -2972,7 +3935,10 @@ }, "FileTriggerProperties": { "description": "File trigger properties.", - "required": [ "sourceInfo", "sinkInfo" ], + "required": [ + "sourceInfo", + "sinkInfo" + ], "type": "object", "properties": { "sourceInfo": { @@ -2991,7 +3957,10 @@ }, "IoTDeviceInfo": { "description": "Metadata of IoT device/IoT Edge device to be configured.", - "required": [ "deviceId", "ioTHostHub" ], + "required": [ + "deviceId", + "ioTHostHub" + ], "type": "object", "properties": { "deviceId": { @@ -3014,9 +3983,15 @@ }, "IoTRole": { "description": "Compute role.", - "required": [ "kind" ], + "required": [ + "kind" + ], "type": "object", - "allOf": [ { "$ref": "#/definitions/Role" } ], + "allOf": [ + { + "$ref": "#/definitions/Role" + } + ], "properties": { "properties": { "$ref": "#/definitions/IoTRoleProperties", @@ -3043,12 +4018,20 @@ }, "IoTRoleProperties": { "description": "IoT role properties.", - "required": [ "hostPlatform", "ioTDeviceDetails", "ioTEdgeDeviceDetails", "roleStatus" ], + "required": [ + "hostPlatform", + "ioTDeviceDetails", + "ioTEdgeDeviceDetails", + "roleStatus" + ], "type": "object", "properties": { "hostPlatform": { "description": "Host OS supported by the IoT role.", - "enum": [ "Windows", "Linux" ], + "enum": [ + "Windows", + "Linux" + ], "type": "string", "x-ms-enum": { "name": "PlatformType", @@ -3066,11 +4049,16 @@ "shareMappings": { "description": "Mount points of shares in role(s).", "type": "array", - "items": { "$ref": "#/definitions/MountPointMap" } + "items": { + "$ref": "#/definitions/MountPointMap" + } }, "roleStatus": { "description": "Role status.", - "enum": [ "Enabled", "Disabled" ], + "enum": [ + "Enabled", + "Disabled" + ], "type": "string", "x-ms-enum": { "name": "RoleStatus", @@ -3143,7 +4131,15 @@ }, "status": { "description": "The current status of the job.", - "enum": [ "Invalid", "Running", "Succeeded", "Failed", "Canceled", "Paused", "Scheduled" ], + "enum": [ + "Invalid", + "Running", + "Succeeded", + "Failed", + "Canceled", + "Paused", + "Scheduled" + ], "type": "string", "readOnly": true, "x-ms-enum": { @@ -3189,7 +4185,9 @@ "errorDetails": { "description": "The error details.", "type": "array", - "items": { "$ref": "#/definitions/JobErrorItem" }, + "items": { + "$ref": "#/definitions/JobErrorItem" + }, "readOnly": true }, "code": { @@ -3211,7 +4209,9 @@ "recommendations": { "description": "The recommended actions.", "type": "array", - "items": { "type": "string" }, + "items": { + "type": "string" + }, "readOnly": true }, "code": { @@ -3232,7 +4232,14 @@ "properties": { "jobType": { "description": "The type of the job.", - "enum": [ "Invalid", "ScanForUpdates", "DownloadUpdates", "InstallUpdates", "RefreshShare", "RefreshContainer" ], + "enum": [ + "Invalid", + "ScanForUpdates", + "DownloadUpdates", + "InstallUpdates", + "RefreshShare", + "RefreshContainer" + ], "type": "string", "readOnly": true, "x-ms-enum": { @@ -3242,7 +4249,25 @@ }, "currentStage": { "description": "Current stage of the update operation.", - "enum": [ "Unknown", "Initial", "ScanStarted", "ScanComplete", "ScanFailed", "DownloadStarted", "DownloadComplete", "DownloadFailed", "InstallStarted", "InstallComplete", "InstallFailed", "RebootInitiated", "Success", "Failure", "RescanStarted", "RescanComplete", "RescanFailed" ], + "enum": [ + "Unknown", + "Initial", + "ScanStarted", + "ScanComplete", + "ScanFailed", + "DownloadStarted", + "DownloadComplete", + "DownloadFailed", + "InstallStarted", + "InstallComplete", + "InstallFailed", + "RebootInitiated", + "Success", + "Failure", + "RescanStarted", + "RescanComplete", + "RescanFailed" + ], "type": "string", "readOnly": true, "x-ms-enum": { @@ -3318,7 +4343,16 @@ }, "unit": { "description": "Metric units.", - "enum": [ "NotSpecified", "Percent", "Count", "Seconds", "Milliseconds", "Bytes", "BytesPerSecond", "CountPerSecond" ], + "enum": [ + "NotSpecified", + "Percent", + "Count", + "Seconds", + "Milliseconds", + "Bytes", + "BytesPerSecond", + "CountPerSecond" + ], "type": "string", "x-ms-enum": { "name": "MetricUnit", @@ -3327,7 +4361,15 @@ }, "aggregationType": { "description": "Metric aggregation type.", - "enum": [ "NotSpecified", "None", "Average", "Minimum", "Maximum", "Total", "Count" ], + "enum": [ + "NotSpecified", + "None", + "Average", + "Minimum", + "Maximum", + "Total", + "Count" + ], "type": "string", "x-ms-enum": { "name": "MetricAggregationType", @@ -3337,7 +4379,9 @@ "dimensions": { "description": "Metric dimensions, other than default dimension which is resource.", "type": "array", - "items": { "$ref": "#/definitions/MetricDimension_V1" } + "items": { + "$ref": "#/definitions/MetricDimension_V1" + } }, "fillGapWithZero": { "description": "Set true to fill the gaps with zero.", @@ -3345,7 +4389,10 @@ }, "category": { "description": "Metric category.", - "enum": [ "Capacity", "Transaction" ], + "enum": [ + "Capacity", + "Transaction" + ], "type": "string", "x-ms-enum": { "name": "MetricCategory", @@ -3360,7 +4407,16 @@ "description": "Support granularity of metrics.", "type": "array", "items": { - "enum": [ "PT1M", "PT5M", "PT15M", "PT30M", "PT1H", "PT6H", "PT12H", "PT1D" ], + "enum": [ + "PT1M", + "PT5M", + "PT15M", + "PT30M", + "PT1H", + "PT6H", + "PT12H", + "PT1D" + ], "type": "string", "x-ms-enum": { "name": "TimeGrain", @@ -3372,7 +4428,15 @@ "description": "Support metric aggregation type.", "type": "array", "items": { - "enum": [ "NotSpecified", "None", "Average", "Minimum", "Maximum", "Total", "Count" ], + "enum": [ + "NotSpecified", + "None", + "Average", + "Minimum", + "Maximum", + "Total", + "Count" + ], "type": "string", "x-ms-enum": { "name": "MetricAggregationType", @@ -3384,7 +4448,9 @@ }, "MountPointMap": { "description": "The share mount point.", - "required": [ "shareId" ], + "required": [ + "shareId" + ], "type": "object", "properties": { "shareId": { @@ -3403,7 +4469,12 @@ }, "roleType": { "description": "Role type.", - "enum": [ "IOT", "ASA", "Functions", "Cognitive" ], + "enum": [ + "IOT", + "ASA", + "Functions", + "Cognitive" + ], "type": "string", "readOnly": true, "x-ms-enum": { @@ -3461,7 +4532,10 @@ }, "status": { "description": "Value indicating whether this adapter is valid.", - "enum": [ "Inactive", "Active" ], + "enum": [ + "Inactive", + "Active" + ], "type": "string", "readOnly": true, "x-ms-enum": { @@ -3471,7 +4545,10 @@ }, "rdmaStatus": { "description": "Value indicating whether this adapter is RDMA capable.", - "enum": [ "Incapable", "Capable" ], + "enum": [ + "Incapable", + "Capable" + ], "type": "string", "x-ms-enum": { "name": "NetworkAdapterRDMAStatus", @@ -3480,7 +4557,10 @@ }, "dhcpStatus": { "description": "Value indicating whether this adapter has DHCP enabled.", - "enum": [ "Disabled", "Enabled" ], + "enum": [ + "Disabled", + "Enabled" + ], "type": "string", "x-ms-enum": { "name": "NetworkAdapterDHCPStatus", @@ -3505,7 +4585,9 @@ "dnsServers": { "description": "The list of DNS Servers of the device.", "type": "array", - "items": { "type": "string" }, + "items": { + "type": "string" + }, "readOnly": true } } @@ -3516,7 +4598,11 @@ "properties": { "networkGroup": { "description": "The network group.", - "enum": [ "None", "NonRDMA", "RDMA" ], + "enum": [ + "None", + "NonRDMA", + "RDMA" + ], "type": "string", "readOnly": true, "x-ms-enum": { @@ -3535,7 +4621,11 @@ "NetworkSettings": { "description": "The network settings of a device.", "type": "object", - "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], "properties": { "properties": { "$ref": "#/definitions/NetworkSettingsProperties", @@ -3552,7 +4642,9 @@ "networkAdapters": { "description": "The network adapter list on the device.", "type": "array", - "items": { "$ref": "#/definitions/NetworkAdapter" }, + "items": { + "$ref": "#/definitions/NetworkAdapter" + }, "readOnly": true } } @@ -3560,7 +4652,11 @@ "Node": { "description": "Represents a single node in a Data box Edge/Gateway device\r\nGateway devices, standalone Edge devices and a single node cluster Edge device will all have 1 node\r\nMulti-node Edge devices will have more than 1 nodes", "type": "object", - "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], "properties": { "properties": { "$ref": "#/definitions/NodeProperties", @@ -3577,7 +4673,9 @@ "value": { "description": "The list of Nodes.", "type": "array", - "items": { "$ref": "#/definitions/Node" }, + "items": { + "$ref": "#/definitions/Node" + }, "readOnly": true } } @@ -3588,7 +4686,13 @@ "properties": { "nodeStatus": { "description": "The current status of the individual node", - "enum": [ "Unknown", "Up", "Down", "Rebooting", "ShuttingDown" ], + "enum": [ + "Unknown", + "Up", + "Down", + "Rebooting", + "ShuttingDown" + ], "type": "string", "readOnly": true, "x-ms-enum": { @@ -3685,13 +4789,17 @@ }, "OperationsList": { "description": "The list of operations used for the discovery of available provider operations.", - "required": [ "value" ], + "required": [ + "value" + ], "type": "object", "properties": { "value": { "description": "The value.", "type": "array", - "items": { "$ref": "#/definitions/Operation" } + "items": { + "$ref": "#/definitions/Operation" + } }, "nextLink": { "description": "Link to the next set of results.", @@ -3702,7 +4810,11 @@ "Order": { "description": "The order details.", "type": "object", - "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], "properties": { "properties": { "$ref": "#/definitions/OrderProperties", @@ -3718,7 +4830,9 @@ "value": { "description": "The list of orders.", "type": "array", - "items": { "$ref": "#/definitions/Order" }, + "items": { + "$ref": "#/definitions/Order" + }, "readOnly": true }, "nextLink": { @@ -3730,7 +4844,10 @@ }, "OrderProperties": { "description": "Order properties.", - "required": [ "contactInformation", "shippingAddress" ], + "required": [ + "contactInformation", + "shippingAddress" + ], "type": "object", "properties": { "contactInformation": { @@ -3748,7 +4865,9 @@ "orderHistory": { "description": "List of status changes in the order.", "type": "array", - "items": { "$ref": "#/definitions/OrderStatus" }, + "items": { + "$ref": "#/definitions/OrderStatus" + }, "readOnly": true }, "serialNumber": { @@ -3759,25 +4878,46 @@ "deliveryTrackingInfo": { "description": "Tracking information for the package delivered to the customer whether it has an original or a replacement device.", "type": "array", - "items": { "$ref": "#/definitions/TrackingInfo" }, + "items": { + "$ref": "#/definitions/TrackingInfo" + }, "readOnly": true }, "returnTrackingInfo": { "description": "Tracking information for the package returned from the customer whether it has an original or a replacement device.", "type": "array", - "items": { "$ref": "#/definitions/TrackingInfo" }, + "items": { + "$ref": "#/definitions/TrackingInfo" + }, "readOnly": true } } }, "OrderStatus": { "description": "Represents a single status change.", - "required": [ "status" ], + "required": [ + "status" + ], "type": "object", "properties": { "status": { "description": "Status of the order as per the allowed status types.", - "enum": [ "Untracked", "AwaitingFulfilment", "AwaitingPreparation", "AwaitingShipment", "Shipped", "Arriving", "Delivered", "ReplacementRequested", "LostDevice", "Declined", "ReturnInitiated", "AwaitingReturnShipment", "ShippedBack", "CollectedAtMicrosoft" ], + "enum": [ + "Untracked", + "AwaitingFulfilment", + "AwaitingPreparation", + "AwaitingShipment", + "Shipped", + "Arriving", + "Delivered", + "ReplacementRequested", + "LostDevice", + "Declined", + "ReturnInitiated", + "AwaitingReturnShipment", + "ShippedBack", + "CollectedAtMicrosoft" + ], "type": "string", "x-ms-enum": { "name": "OrderState", @@ -3797,16 +4937,25 @@ "additionalOrderDetails": { "description": "Dictionary to hold generic information which is not stored\r\nby the already existing properties", "type": "object", - "additionalProperties": { "type": "string" }, + "additionalProperties": { + "type": "string" + }, "readOnly": true } } }, "PeriodicTimerEventTrigger": { "description": "Trigger details.", - "required": [ "properties", "kind" ], + "required": [ + "properties", + "kind" + ], "type": "object", - "allOf": [ { "$ref": "#/definitions/Trigger" } ], + "allOf": [ + { + "$ref": "#/definitions/Trigger" + } + ], "properties": { "properties": { "$ref": "#/definitions/PeriodicTimerProperties", @@ -3833,7 +4982,10 @@ }, "PeriodicTimerProperties": { "description": "Periodic timer trigger properties.", - "required": [ "sourceInfo", "sinkInfo" ], + "required": [ + "sourceInfo", + "sinkInfo" + ], "type": "object", "properties": { "sourceInfo": { @@ -3852,7 +5004,10 @@ }, "PeriodicTimerSourceInfo": { "description": "Periodic timer event source.", - "required": [ "startTime", "schedule" ], + "required": [ + "startTime", + "schedule" + ], "type": "object", "properties": { "startTime": { @@ -3872,12 +5027,17 @@ }, "RawCertificateData": { "description": "Raw Certificate Data.", - "required": [ "certificate" ], + "required": [ + "certificate" + ], "type": "object", "properties": { "authenticationType": { "description": "The authentication type.", - "enum": [ "Invalid", "AzureActiveDirectory" ], + "enum": [ + "Invalid", + "AzureActiveDirectory" + ], "type": "string", "x-ms-enum": { "name": "AuthenticationType", @@ -3924,7 +5084,17 @@ }, "name": { "description": "The Sku name", - "enum": [ "Gateway", "Edge", "TEA_1Node", "TEA_1Node_UPS", "TEA_1Node_Heater", "TEA_1Node_UPS_Heater", "TEA_4Node_Heater", "TEA_4Node_UPS_Heater", "TMA" ], + "enum": [ + "Gateway", + "Edge", + "TEA_1Node", + "TEA_1Node_UPS", + "TEA_1Node_Heater", + "TEA_1Node_UPS_Heater", + "TEA_4Node_Heater", + "TEA_4Node_UPS_Heater", + "TMA" + ], "type": "string", "readOnly": true, "x-ms-enum": { @@ -3939,7 +5109,9 @@ }, "tier": { "description": "The Sku tier", - "enum": [ "Standard" ], + "enum": [ + "Standard" + ], "type": "string", "readOnly": true, "x-ms-enum": { @@ -3955,44 +5127,65 @@ "locations": { "description": "Availability of the SKU for the region", "type": "array", - "items": { "type": "string" }, + "items": { + "type": "string" + }, "readOnly": true }, "apiVersions": { "description": "The API versions in which SKU is available", "type": "array", - "items": { "type": "string" }, + "items": { + "type": "string" + }, "readOnly": true }, "locationInfo": { "description": "Availability of the SKU for the location/zone", "type": "array", - "items": { "$ref": "#/definitions/SkuLocationInfo" }, + "items": { + "$ref": "#/definitions/SkuLocationInfo" + }, "readOnly": true }, "costs": { "description": "The pricing info of the Sku.", "type": "array", - "items": { "$ref": "#/definitions/SkuCost" }, + "items": { + "$ref": "#/definitions/SkuCost" + }, "readOnly": true }, "restrictions": { "description": "Restrictions of the SKU availability.", "type": "array", - "items": { "$ref": "#/definitions/SkuRestriction" }, + "items": { + "$ref": "#/definitions/SkuRestriction" + }, "readOnly": true } } }, "Role": { "description": "Compute role.", - "required": [ "kind" ], + "required": [ + "kind" + ], "type": "object", - "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], "properties": { "kind": { "description": "Role type.", - "enum": [ "IOT", "ASA", "Functions", "Cognitive" ], + "enum": [ + "IOT", + "ASA", + "Functions", + "Cognitive" + ], "type": "string", "x-ms-enum": { "name": "RoleTypes", @@ -4009,7 +5202,9 @@ "value": { "description": "The Value.", "type": "array", - "items": { "$ref": "#/definitions/Role" }, + "items": { + "$ref": "#/definitions/Role" + }, "readOnly": true }, "nextLink": { @@ -4021,7 +5216,9 @@ }, "RoleSinkInfo": { "description": "Compute role against which events will be raised.", - "required": [ "roleId" ], + "required": [ + "roleId" + ], "type": "object", "properties": { "roleId": { @@ -4032,9 +5229,15 @@ }, "SecuritySettings": { "description": "The security settings of a device.", - "required": [ "properties" ], + "required": [ + "properties" + ], "type": "object", - "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], "properties": { "properties": { "$ref": "#/definitions/SecuritySettingsProperties", @@ -4045,7 +5248,9 @@ }, "SecuritySettingsProperties": { "description": "The properties of security settings.", - "required": [ "deviceAdminPassword" ], + "required": [ + "deviceAdminPassword" + ], "type": "object", "properties": { "deviceAdminPassword": { @@ -4061,15 +5266,23 @@ "metricSpecifications": { "description": "Metric specification as defined by shoebox.", "type": "array", - "items": { "$ref": "#/definitions/MetricSpecification_V1" } + "items": { + "$ref": "#/definitions/MetricSpecification_V1" + } } } }, "Share": { "description": "Represents a share on the Data Box Edge/Gateway device.", - "required": [ "properties" ], + "required": [ + "properties" + ], "type": "object", - "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], "properties": { "properties": { "$ref": "#/definitions/ShareProperties", @@ -4080,7 +5293,10 @@ }, "ShareAccessRight": { "description": "Specifies the mapping between this particular user and the type of access he has on shares on this device.", - "required": [ "shareId", "accessType" ], + "required": [ + "shareId", + "accessType" + ], "type": "object", "properties": { "shareId": { @@ -4089,7 +5305,11 @@ }, "accessType": { "description": "Type of access to be allowed on the share for this user.", - "enum": [ "Change", "Read", "Custom" ], + "enum": [ + "Change", + "Read", + "Custom" + ], "type": "string", "x-ms-enum": { "name": "ShareAccessType", @@ -4105,7 +5325,9 @@ "value": { "description": "The list of shares.", "type": "array", - "items": { "$ref": "#/definitions/Share" }, + "items": { + "$ref": "#/definitions/Share" + }, "readOnly": true }, "nextLink": { @@ -4117,7 +5339,11 @@ }, "ShareProperties": { "description": "The share properties.", - "required": [ "shareStatus", "monitoringStatus", "accessProtocol" ], + "required": [ + "shareStatus", + "monitoringStatus", + "accessProtocol" + ], "type": "object", "properties": { "description": { @@ -4126,7 +5352,13 @@ }, "shareStatus": { "description": "Current status of the share.", - "enum": [ "Offline", "Unknown", "OK", "Updating", "NeedsAttention" ], + "enum": [ + "Offline", + "Unknown", + "OK", + "Updating", + "NeedsAttention" + ], "type": "string", "x-ms-enum": { "name": "ShareStatus", @@ -4135,7 +5367,10 @@ }, "monitoringStatus": { "description": "Current monitoring status of the share.", - "enum": [ "Enabled", "Disabled" ], + "enum": [ + "Enabled", + "Disabled" + ], "type": "string", "x-ms-enum": { "name": "MonitoringStatus", @@ -4148,7 +5383,10 @@ }, "accessProtocol": { "description": "Access protocol to be used by the share.", - "enum": [ "SMB", "NFS" ], + "enum": [ + "SMB", + "NFS" + ], "type": "string", "x-ms-enum": { "name": "ShareAccessProtocol", @@ -4158,12 +5396,16 @@ "userAccessRights": { "description": "Mapping of users and corresponding access rights on the share (required for SMB protocol).", "type": "array", - "items": { "$ref": "#/definitions/UserAccessRight" } + "items": { + "$ref": "#/definitions/UserAccessRight" + } }, "clientAccessRights": { "description": "List of IP addresses and corresponding access rights on the share(required for NFS protocol).", "type": "array", - "items": { "$ref": "#/definitions/ClientAccessRight" } + "items": { + "$ref": "#/definitions/ClientAccessRight" + } }, "refreshDetails": { "$ref": "#/definitions/RefreshDetails", @@ -4172,12 +5414,17 @@ "shareMappings": { "description": "Share mount point to the role.", "type": "array", - "items": { "$ref": "#/definitions/MountPointMap" }, + "items": { + "$ref": "#/definitions/MountPointMap" + }, "readOnly": true }, "dataPolicy": { "description": "Data policy of the share.", - "enum": [ "Cloud", "Local" ], + "enum": [ + "Cloud", + "Local" + ], "type": "string", "x-ms-enum": { "name": "DataPolicy", @@ -4192,7 +5439,17 @@ "properties": { "name": { "description": "SKU name.", - "enum": [ "Gateway", "Edge", "TEA_1Node", "TEA_1Node_UPS", "TEA_1Node_Heater", "TEA_1Node_UPS_Heater", "TEA_4Node_Heater", "TEA_4Node_UPS_Heater", "TMA" ], + "enum": [ + "Gateway", + "Edge", + "TEA_1Node", + "TEA_1Node_UPS", + "TEA_1Node_Heater", + "TEA_1Node_UPS_Heater", + "TEA_4Node_Heater", + "TEA_4Node_UPS_Heater", + "TMA" + ], "type": "string", "x-ms-enum": { "name": "SkuName", @@ -4201,7 +5458,9 @@ }, "tier": { "description": "The SKU tier. This is based on the SKU name.", - "enum": [ "Standard" ], + "enum": [ + "Standard" + ], "type": "string", "x-ms-enum": { "name": "SkuTier", @@ -4239,7 +5498,9 @@ "value": { "description": "List of ResourceType Sku", "type": "array", - "items": { "$ref": "#/definitions/ResourceTypeSku" }, + "items": { + "$ref": "#/definitions/ResourceTypeSku" + }, "readOnly": true }, "nextLink": { @@ -4261,13 +5522,17 @@ "zones": { "description": "The zones.", "type": "array", - "items": { "type": "string" }, + "items": { + "type": "string" + }, "readOnly": true }, "sites": { "description": "The sites.", "type": "array", - "items": { "type": "string" }, + "items": { + "type": "string" + }, "readOnly": true } } @@ -4276,7 +5541,7 @@ "description": "The restrictions because of which SKU cannot be used.", "type": "object", "properties": { - "type": { + "type": { "description": "The type of the restriction.", "type": "string", "readOnly": true @@ -4284,12 +5549,17 @@ "values": { "description": "The locations where sku is restricted.", "type": "array", - "items": { "type": "string" }, + "items": { + "type": "string" + }, "readOnly": true }, "reasonCode": { "description": "The SKU restriction reason.", - "enum": [ "NotAvailableForSubscription", "QuotaId" ], + "enum": [ + "NotAvailableForSubscription", + "QuotaId" + ], "type": "string", "readOnly": true, "x-ms-enum": { @@ -4311,22 +5581,32 @@ "locations": { "description": "The locations.", "type": "array", - "items": { "type": "string" }, + "items": { + "type": "string" + }, "readOnly": true }, "zones": { "description": "The zones.", "type": "array", - "items": { "type": "string" }, + "items": { + "type": "string" + }, "readOnly": true } } }, "StorageAccount": { "description": "Represents a Storage Account on the Data Box Edge/Gateway device.", - "required": [ "properties" ], + "required": [ + "properties" + ], "type": "object", - "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], "properties": { "properties": { "$ref": "#/definitions/StorageAccountProperties", @@ -4337,9 +5617,15 @@ }, "StorageAccountCredential": { "description": "The storage account credential.", - "required": [ "properties" ], + "required": [ + "properties" + ], "type": "object", - "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], "properties": { "properties": { "$ref": "#/definitions/StorageAccountCredentialProperties", @@ -4355,7 +5641,9 @@ "value": { "description": "The value.", "type": "array", - "items": { "$ref": "#/definitions/StorageAccountCredential" }, + "items": { + "$ref": "#/definitions/StorageAccountCredential" + }, "readOnly": true }, "nextLink": { @@ -4367,7 +5655,11 @@ }, "StorageAccountCredentialProperties": { "description": "The storage account credential properties.", - "required": [ "alias", "sslStatus", "accountType" ], + "required": [ + "alias", + "sslStatus", + "accountType" + ], "type": "object", "properties": { "alias": { @@ -4388,7 +5680,10 @@ }, "sslStatus": { "description": "Signifies whether SSL needs to be enabled or not.", - "enum": [ "Enabled", "Disabled" ], + "enum": [ + "Enabled", + "Disabled" + ], "type": "string", "x-ms-enum": { "name": "SSLStatus", @@ -4401,7 +5696,10 @@ }, "accountType": { "description": "Type of storage accessed on the storage account.", - "enum": [ "GeneralPurposeStorage", "BlobStorage" ], + "enum": [ + "GeneralPurposeStorage", + "BlobStorage" + ], "type": "string", "x-ms-enum": { "name": "AccountType", @@ -4421,7 +5719,9 @@ "value": { "description": "The list of storageAccounts.", "type": "array", - "items": { "$ref": "#/definitions/StorageAccount" }, + "items": { + "$ref": "#/definitions/StorageAccount" + }, "readOnly": true }, "nextLink": { @@ -4441,7 +5741,13 @@ }, "storageAccountStatus": { "description": "Current status of the storage account", - "enum": [ "OK", "Offline", "Unknown", "Updating", "NeedsAttention" ], + "enum": [ + "OK", + "Offline", + "Unknown", + "Updating", + "NeedsAttention" + ], "type": "string", "x-ms-enum": { "name": "StorageAccountStatus", @@ -4450,7 +5756,10 @@ }, "dataPolicy": { "description": "Data policy of the storage Account.", - "enum": [ "Cloud", "Local" ], + "enum": [ + "Cloud", + "Local" + ], "type": "string", "x-ms-enum": { "name": "DataPolicy", @@ -4508,13 +5817,22 @@ }, "Trigger": { "description": "Trigger details.", - "required": [ "kind" ], + "required": [ + "kind" + ], "type": "object", - "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], "properties": { "kind": { "description": "Trigger Kind.", - "enum": [ "FileEvent", "PeriodicTimerEvent" ], + "enum": [ + "FileEvent", + "PeriodicTimerEvent" + ], "type": "string", "x-ms-enum": { "name": "TriggerEventType", @@ -4531,7 +5849,9 @@ "value": { "description": "The list of triggers.", "type": "array", - "items": { "$ref": "#/definitions/Trigger" }, + "items": { + "$ref": "#/definitions/Trigger" + }, "readOnly": true }, "nextLink": { @@ -4547,7 +5867,12 @@ "properties": { "downloadPhase": { "description": "The download phase.", - "enum": [ "Unknown", "Initializing", "Downloading", "Verifying" ], + "enum": [ + "Unknown", + "Initializing", + "Downloading", + "Verifying" + ], "type": "string", "readOnly": true, "x-ms-enum": { @@ -4614,7 +5939,11 @@ "UpdateSummary": { "description": "Details about ongoing updates and availability of updates on the device.", "type": "object", - "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], "properties": { "properties": { "$ref": "#/definitions/UpdateSummaryProperties", @@ -4677,7 +6006,11 @@ }, "rebootBehavior": { "description": "Indicates if updates are available and at least one of the updates needs a reboot.", - "enum": [ "NeverReboots", "RequiresReboot", "RequestReboot" ], + "enum": [ + "NeverReboots", + "RequiresReboot", + "RequestReboot" + ], "type": "string", "readOnly": true, "x-ms-enum": { @@ -4687,7 +6020,12 @@ }, "ongoingUpdateOperation": { "description": "The current update operation.", - "enum": [ "None", "Scan", "Download", "Install" ], + "enum": [ + "None", + "Scan", + "Download", + "Install" + ], "type": "string", "readOnly": true, "x-ms-enum": { @@ -4720,7 +6058,9 @@ "updateTitles": { "description": "The list of updates available for install.", "type": "array", - "items": { "type": "string" }, + "items": { + "type": "string" + }, "readOnly": true }, "totalUpdateSizeInBytes": { @@ -4733,7 +6073,9 @@ }, "UploadCertificateRequest": { "description": "The upload certificate request.", - "required": [ "properties" ], + "required": [ + "properties" + ], "type": "object", "properties": { "properties": { @@ -4749,7 +6091,10 @@ "properties": { "authType": { "description": "Specifies authentication type.", - "enum": [ "Invalid", "AzureActiveDirectory" ], + "enum": [ + "Invalid", + "AzureActiveDirectory" + ], "type": "string", "x-ms-enum": { "name": "AuthenticationType", @@ -4795,9 +6140,15 @@ }, "User": { "description": "Represents a user who has access to one or more shares on the Data Box Edge/Gateway device.", - "required": [ "properties" ], + "required": [ + "properties" + ], "type": "object", - "allOf": [ { "$ref": "#/definitions/ARMBaseModel" } ], + "allOf": [ + { + "$ref": "#/definitions/ARMBaseModel" + } + ], "properties": { "properties": { "$ref": "#/definitions/UserProperties", @@ -4808,7 +6159,10 @@ }, "UserAccessRight": { "description": "The mapping between a particular user and the access type on the SMB share.", - "required": [ "userId", "accessType" ], + "required": [ + "userId", + "accessType" + ], "type": "object", "properties": { "userId": { @@ -4817,7 +6171,11 @@ }, "accessType": { "description": "Type of access to be allowed for the user.", - "enum": [ "Change", "Read", "Custom" ], + "enum": [ + "Change", + "Read", + "Custom" + ], "type": "string", "x-ms-enum": { "name": "ShareAccessType", @@ -4833,7 +6191,9 @@ "value": { "description": "The list of users.", "type": "array", - "items": { "$ref": "#/definitions/User" }, + "items": { + "$ref": "#/definitions/User" + }, "readOnly": true }, "nextLink": { @@ -4845,7 +6205,9 @@ }, "UserProperties": { "description": "The user properties.", - "required": [ "userType" ], + "required": [ + "userType" + ], "type": "object", "properties": { "encryptedPassword": { @@ -4855,11 +6217,17 @@ "shareAccessRights": { "description": "List of shares that the user has rights on. This field should not be specified during user creation.", "type": "array", - "items": { "$ref": "#/definitions/ShareAccessRight" } + "items": { + "$ref": "#/definitions/ShareAccessRight" + } }, "userType": { "description": "Type of the user.", - "enum": [ "Share", "LocalManagement", "ARM" ], + "enum": [ + "Share", + "LocalManagement", + "ARM" + ], "type": "string", "x-ms-enum": { "name": "UserType", @@ -4907,8 +6275,16 @@ "description": "Azure Active Directory OAuth2 Flow.", "flow": "implicit", "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", - "scopes": { "user_impersonation": "impersonate your user account." } + "scopes": { + "user_impersonation": "impersonate your user account." + } } }, - "security": [ { "azure_auth": [ "user_impersonation" ] } ] -} \ No newline at end of file + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ContainerDelete.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ContainerDelete.json index 21d6ff1b8e13..5ac6072612a8 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ContainerDelete.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ContainerDelete.json @@ -17,4 +17,4 @@ "202": {}, "204": {} } -} \ No newline at end of file +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ContainerGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ContainerGet.json index 3985acbca7a0..de6eeb106e7a 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ContainerGet.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ContainerGet.json @@ -13,16 +13,16 @@ "responses": { "200": { "body": { - "properties": { - "containerStatus": "OK", - "dataFormat": "BlockBlob", - "refreshDetails": {}, - "createdDateTime": "2019-10-20T23:13:27.8545799Z" - }, - "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccounts/storageaccount1/containers/blobcontainer1", - "name": "blobcontainer1", - "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts/containers" - } + "properties": { + "containerStatus": "OK", + "dataFormat": "BlockBlob", + "refreshDetails": {}, + "createdDateTime": "2019-10-20T23:13:27.8545799Z" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccounts/storageaccount1/containers/blobcontainer1", + "name": "blobcontainer1", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts/containers" + } } } } diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ContainerListAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ContainerListAllInDevice.json index 42b135e7b1d8..3878df4838b8 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ContainerListAllInDevice.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ContainerListAllInDevice.json @@ -4,8 +4,8 @@ "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", "resourceGroupName": "GroupForEdgeAutomation", "deviceName": "testedgedevice", - "storageAccountName":"storageaccount1", - "x-ms-client-request-id": [ + "storageAccountName": "storageaccount1", + "x-ms-client-request-id": [ "a93b39a3-1ff4-42b8-a56f-43368d47e37a" ], "accept-language": [ @@ -14,44 +14,43 @@ }, "responses": { "200": { - "body": - { - "value": [ - { - "properties": { - "containerStatus": "OK", - "dataFormat": "BlockBlob", - "refreshDetails": {}, - "createdDateTime": "2019-10-20T23:14:32.3016929Z" - }, - "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/EAuToWIN-6LJVNIFFB411021190437191/storageAccounts/storageaccount1/containers/blobcontainer1", - "name": "blobcontainer1", - "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts/containers" - }, - { - "properties": { - "containerStatus": "OK", - "dataFormat": "BlockBlob", - "refreshDetails": {}, - "createdDateTime": "2019-10-20T23:15:38.0077675Z" - }, - "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/EAuToWIN-6LJVNIFFB411021190437191/storageAccounts/storageaccount1/containers/blobcontainer2", - "name": "blobcontainer2", - "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts/containers" - }, - { - "properties": { - "containerStatus": "OK", - "dataFormat": "BlockBlob", - "refreshDetails": {}, - "createdDateTime": "2019-10-20T23:13:27.8545799Z" - }, - "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/EAuToWIN-6LJVNIFFB411021190437191/storageAccounts/storageaccount1/containers/blobcontainer3", - "name": "blobcontainer3", - "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts/containers" - } - ] - } + "body": { + "value": [ + { + "properties": { + "containerStatus": "OK", + "dataFormat": "BlockBlob", + "refreshDetails": {}, + "createdDateTime": "2019-10-20T23:14:32.3016929Z" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/EAuToWIN-6LJVNIFFB411021190437191/storageAccounts/storageaccount1/containers/blobcontainer1", + "name": "blobcontainer1", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts/containers" + }, + { + "properties": { + "containerStatus": "OK", + "dataFormat": "BlockBlob", + "refreshDetails": {}, + "createdDateTime": "2019-10-20T23:15:38.0077675Z" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/EAuToWIN-6LJVNIFFB411021190437191/storageAccounts/storageaccount1/containers/blobcontainer2", + "name": "blobcontainer2", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts/containers" + }, + { + "properties": { + "containerStatus": "OK", + "dataFormat": "BlockBlob", + "refreshDetails": {}, + "createdDateTime": "2019-10-20T23:13:27.8545799Z" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/EAuToWIN-6LJVNIFFB411021190437191/storageAccounts/storageaccount1/containers/blobcontainer3", + "name": "blobcontainer3", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts/containers" + } + ] + } } } -} \ No newline at end of file +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ContainerPut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ContainerPut.json index 7addeda919b8..87e90781c08b 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ContainerPut.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ContainerPut.json @@ -19,24 +19,24 @@ "en-US" ], "container": { - "properties": { - "dataFormat": "BlockBlob" - } + "properties": { + "dataFormat": "BlockBlob" + } } }, "responses": { "200": { "body": { - "properties": { - "containerStatus": "OK", - "dataFormat": "BlockBlob", - "refreshDetails": {}, - "createdDateTime": "2019-10-20T23:13:27.8545799Z" - }, - "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccounts/storageaccount1/containers/blobcontainer1", - "name": "blobcontainer-5e155efe", - "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts/containers" - } + "properties": { + "containerStatus": "OK", + "dataFormat": "BlockBlob", + "refreshDetails": {}, + "createdDateTime": "2019-10-20T23:13:27.8545799Z" + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccounts/storageaccount1/containers/blobcontainer1", + "name": "blobcontainer-5e155efe", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts/containers" + } }, "202": {} } diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/DataBoxEdgeDeviceGetByName.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/DataBoxEdgeDeviceGetByName.json index 61b74fefee04..3e3686c2465f 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/DataBoxEdgeDeviceGetByName.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/DataBoxEdgeDeviceGetByName.json @@ -14,7 +14,7 @@ "responses": { "200": { "body": { - "location": "WUS", + "location": "eastus", "tags": {}, "sku": { "name": "Edge", diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/DataBoxEdgeDeviceGetByResourceGroup.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/DataBoxEdgeDeviceGetByResourceGroup.json index d6a3fe4ad374..637a5d608090 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/DataBoxEdgeDeviceGetByResourceGroup.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/DataBoxEdgeDeviceGetByResourceGroup.json @@ -15,7 +15,7 @@ "body": { "value": [ { - "location": "WUS", + "location": "eastus", "tags": {}, "sku": { "name": "Edge", @@ -32,7 +32,7 @@ "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices" }, { - "location": "WUS", + "location": "eastus", "tags": {}, "sku": { "name": "Edge", @@ -49,7 +49,7 @@ "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices" }, { - "location": "WUS", + "location": "eastus", "tags": {}, "sku": { "name": "Edge", diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/DataBoxEdgeDeviceGetBySubscription.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/DataBoxEdgeDeviceGetBySubscription.json index a89a11939ee1..2fe3054b72f4 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/DataBoxEdgeDeviceGetBySubscription.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/DataBoxEdgeDeviceGetBySubscription.json @@ -14,7 +14,7 @@ "body": { "value": [ { - "location": "WUS", + "location": "eastus", "tags": {}, "sku": { "name": "Edge", @@ -31,7 +31,7 @@ "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices" }, { - "location": "WUS", + "location": "eastus", "tags": {}, "sku": { "name": "Edge", @@ -48,7 +48,7 @@ "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices" }, { - "location": "WUS", + "location": "eastus", "tags": {}, "sku": { "name": "Edge", diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/DataBoxEdgeDevicePatch.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/DataBoxEdgeDevicePatch.json index c4d66a76b89c..f909ee883d83 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/DataBoxEdgeDevicePatch.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/DataBoxEdgeDevicePatch.json @@ -26,7 +26,7 @@ "responses": { "200": { "body": { - "location": "WUS", + "location": "eastus", "tags": { "Key1": "value1", "Key2": "value2" diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/DataBoxEdgeDevicePut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/DataBoxEdgeDevicePut.json index 7280ada153e6..1867839c31a7 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/DataBoxEdgeDevicePut.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/DataBoxEdgeDevicePut.json @@ -17,7 +17,7 @@ "en-US" ], "DataBoxEdgeDevice": { - "location": "WUS", + "location": "eastus", "tags": {}, "sku": { "name": "Edge", @@ -28,7 +28,7 @@ "responses": { "200": { "body": { - "location": "WUS", + "location": "eastus", "tags": {}, "sku": { "name": "Edge", diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ListSkus.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ListSkus.json index 8a9f51268479..141f5fb4ccbd 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ListSkus.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/ListSkus.json @@ -1,51 +1,51 @@ { - "parameters": { - "api-version": "2019-08-01", - "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", - "location": "westus", - "x-ms-client-request-id": [ - "a93b39a3-1ff4-42b8-a56f-43368d47e37a" - ], - "accept-language": [ - "en-US" - ] - }, - "responses": { - "200": { - "body": { - "value": [ - { - "resourceType": "dataBoxEdeDevices", - "name": "Gateway", - "tier": "Standard", - "locations": [ - "West US" - ], - "locationInfo": [ - { - "location": "West US" - } - ], - "apiVersions": [ - "2019-08-01" - ], - "restrictions": [ - { - "type": "location", - "values": [ - "East US" - ], - "restrictionInfo": { - "locations": [ - "East US" - ] - }, - "reasonCode": "NotAvailableForSubscription" - } - ] - } - ] - } - } - } -} \ No newline at end of file + "parameters": { + "api-version": "2019-08-01", + "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", + "location": "westus", + "x-ms-client-request-id": [ + "a93b39a3-1ff4-42b8-a56f-43368d47e37a" + ], + "accept-language": [ + "en-US" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "dataBoxEdeDevices", + "name": "Gateway", + "tier": "Standard", + "locations": [ + "West US" + ], + "locationInfo": [ + { + "location": "West US" + } + ], + "apiVersions": [ + "2019-08-01" + ], + "restrictions": [ + { + "type": "location", + "values": [ + "East US" + ], + "restrictionInfo": { + "locations": [ + "East US" + ] + }, + "reasonCode": "NotAvailableForSubscription" + } + ] + } + ] + } + } + } +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/NodeGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/NodeGetAllInDevice.json index db0cd973b7e2..8c09ba8fa442 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/NodeGetAllInDevice.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/NodeGetAllInDevice.json @@ -4,7 +4,7 @@ "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", "resourceGroupName": "GroupForEdgeAutomation", "deviceName": "testedgedevice", - "x-ms-client-request-id": [ + "x-ms-client-request-id": [ "a93b39a3-1ff4-42b8-a56f-43368d47e37a" ], "accept-language": [ @@ -13,39 +13,38 @@ }, "responses": { "200": { - "body": - { - "value": [ - { - "properties": { - "nodeStatus": "Unknown", - "nodeChassisSerialNumber": "1D6QHQ2", - "nodeSerialNumber": "1D6QHQ2", - "nodeDisplayName": "Controller 1", - "nodeFriendlySoftwareVersion": "Data Box Edge 1908", - "nodeHcsVersion": "1.6.961.8307", - "nodeInstanceId": "ad051874-7d27-4ac4-a7b1-b6f231d8a035" - }, - "id": "/subscriptions/db4e2fdb-6d80-4e6e-b7cd-736098270664/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/DataBoxEdgeDevices/testedgedevice/nodes/1D6QHQ2", - "name": "1D6QHQ2", - "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/nodes" - }, - { - "properties": { - "nodeStatus": "Unknown", - "nodeChassisSerialNumber": "1D6QHQ2", - "nodeSerialNumber": "1DCNHQ2", - "nodeDisplayName": "Controller 1", - "nodeFriendlySoftwareVersion": "Data Box Edge 1908", - "nodeHcsVersion": "1.6.961.8307", - "nodeInstanceId": "ddf3a76d-ada4-44af-99c6-a69a0e21bcb6" - }, - "id": "/subscriptions/db4e2fdb-6d80-4e6e-b7cd-736098270664/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/DataBoxEdgeDevices/testedgedevice/nodes/1DCNHQ2", - "name": "1DCNHQ2", - "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/nodes" - } - ] - } + "body": { + "value": [ + { + "properties": { + "nodeStatus": "Unknown", + "nodeChassisSerialNumber": "1D6QHQ2", + "nodeSerialNumber": "1D6QHQ2", + "nodeDisplayName": "Controller 1", + "nodeFriendlySoftwareVersion": "Data Box Edge 1908", + "nodeHcsVersion": "1.6.961.8307", + "nodeInstanceId": "ad051874-7d27-4ac4-a7b1-b6f231d8a035" + }, + "id": "/subscriptions/db4e2fdb-6d80-4e6e-b7cd-736098270664/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/DataBoxEdgeDevices/testedgedevice/nodes/1D6QHQ2", + "name": "1D6QHQ2", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/nodes" + }, + { + "properties": { + "nodeStatus": "Unknown", + "nodeChassisSerialNumber": "1D6QHQ2", + "nodeSerialNumber": "1DCNHQ2", + "nodeDisplayName": "Controller 1", + "nodeFriendlySoftwareVersion": "Data Box Edge 1908", + "nodeHcsVersion": "1.6.961.8307", + "nodeInstanceId": "ddf3a76d-ada4-44af-99c6-a69a0e21bcb6" + }, + "id": "/subscriptions/db4e2fdb-6d80-4e6e-b7cd-736098270664/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/DataBoxEdgeDevices/testedgedevice/nodes/1DCNHQ2", + "name": "1DCNHQ2", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/nodes" + } + ] + } } } -} \ No newline at end of file +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/OrderPut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/OrderPut.json index 152c52c28702..9e0e6d8fbdd6 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/OrderPut.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/OrderPut.json @@ -82,4 +82,4 @@ }, "202": {} } -} \ No newline at end of file +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/SACPut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/SACPut.json index 3d0cb495a293..a3205f176911 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/SACPut.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/SACPut.json @@ -47,4 +47,4 @@ }, "202": {} } -} \ No newline at end of file +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/StorageAccountDelete.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/StorageAccountDelete.json index 27d6e1b897f4..754dba79f505 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/StorageAccountDelete.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/StorageAccountDelete.json @@ -16,4 +16,4 @@ "202": {}, "204": {} } -} \ No newline at end of file +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/StorageAccountGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/StorageAccountGet.json index b3460383c119..cde01eaafb9a 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/StorageAccountGet.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/StorageAccountGet.json @@ -12,18 +12,18 @@ "responses": { "200": { "body": { - "properties": { - "description": "It's an awesome storage account", - "storageAccountStatus": "OK", - "dataPolicy": "Cloud", - "storageAccountCredentialId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/cisbvt", - "blobEndpoint": "https://blobstorageaccount1.blob.testedge.microsoftdatabox.com/", - "containerCount": 0 - }, - "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccounts/blobstorageaccount1", - "name": "blobstorageaccount1", - "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts" - } + "properties": { + "description": "It's an awesome storage account", + "storageAccountStatus": "OK", + "dataPolicy": "Cloud", + "storageAccountCredentialId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/cisbvt", + "blobEndpoint": "https://blobstorageaccount1.blob.testedge.microsoftdatabox.com/", + "containerCount": 0 + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccounts/blobstorageaccount1", + "name": "blobstorageaccount1", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts" + } } } } diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/StorageAccountGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/StorageAccountGetAllInDevice.json index bf13d8e4616a..188917b45f75 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/StorageAccountGetAllInDevice.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/StorageAccountGetAllInDevice.json @@ -4,7 +4,7 @@ "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce", "resourceGroupName": "GroupForEdgeAutomation", "deviceName": "testedgedevice", - "x-ms-client-request-id": [ + "x-ms-client-request-id": [ "a93b39a3-1ff4-42b8-a56f-43368d47e37a" ], "accept-language": [ @@ -13,24 +13,23 @@ }, "responses": { "200": { - "body": - { - "value": [ - { - "properties": { - "description": "It's an awesome storage account", - "storageAccountStatus": "OK", - "dataPolicy": "Cloud", - "storageAccountCredentialId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/cisbvt", - "blobEndpoint": "https://blobstorageaccount1.blob.testedge.microsoftdatabox.com/", - "containerCount": 0 - }, - "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccounts/blobstorageaccount1", - "name": "blobstorageaccount1", - "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts" - } - ] - } + "body": { + "value": [ + { + "properties": { + "description": "It's an awesome storage account", + "storageAccountStatus": "OK", + "dataPolicy": "Cloud", + "storageAccountCredentialId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/cisbvt", + "blobEndpoint": "https://blobstorageaccount1.blob.testedge.microsoftdatabox.com/", + "containerCount": 0 + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccounts/blobstorageaccount1", + "name": "blobstorageaccount1", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts" + } + ] + } } } -} \ No newline at end of file +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/StorageAccountPut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/StorageAccountPut.json index 9b914d8fe444..0f7b8bf58983 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/StorageAccountPut.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/StorageAccountPut.json @@ -19,28 +19,28 @@ ], "storageAccount": { "properties": { - "description": "It's an awesome storage account", - "storageAccountStatus": "OK", - "dataPolicy": "Cloud", - "storageAccountCredentialId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/cisbvt" - } + "description": "It's an awesome storage account", + "storageAccountStatus": "OK", + "dataPolicy": "Cloud", + "storageAccountCredentialId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/cisbvt" + } } }, "responses": { "200": { "body": { - "properties": { - "description": "It's an awesome storage account", - "storageAccountStatus": "OK", - "dataPolicy": "Cloud", - "storageAccountCredentialId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/cisbvt", - "blobEndpoint": "https://blobstorageaccount1.blob.testedge.microsoftdatabox.com/", - "containerCount": 0 - }, - "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccounts/blobstorageaccount1", - "name": "blobstorageaccount1", - "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts" - } + "properties": { + "description": "It's an awesome storage account", + "storageAccountStatus": "OK", + "dataPolicy": "Cloud", + "storageAccountCredentialId": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccountCredentials/cisbvt", + "blobEndpoint": "https://blobstorageaccount1.blob.testedge.microsoftdatabox.com/", + "containerCount": 0 + }, + "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForDataBoxEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/storageAccounts/blobstorageaccount1", + "name": "blobstorageaccount1", + "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts" + } }, "202": {} } diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/TriggerPut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/TriggerPut.json index 80ede46f2d01..74dba07c709f 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/TriggerPut.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/TriggerPut.json @@ -50,4 +50,4 @@ }, "202": {} } -} \ No newline at end of file +} diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/UserGet.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/UserGet.json index 319034b98e6b..0a28cd3ae102 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/UserGet.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/UserGet.json @@ -15,7 +15,9 @@ "responses": { "200": { "body": { - "properties": {"userType":"Share"}, + "properties": { + "userType": "Share" + }, "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/users/user1", "name": "user1", "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/users" diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/UserGetAllInDevice.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/UserGetAllInDevice.json index a06b4b1a4641..2b1debde372d 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/UserGetAllInDevice.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/UserGetAllInDevice.json @@ -16,13 +16,17 @@ "body": { "value": [ { - "properties": {"userType": "Share"}, + "properties": { + "userType": "Share" + }, "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/users/user2", "name": "user2", "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/users" }, { - "properties": {"userType": "Share"}, + "properties": { + "userType": "Share" + }, "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/users/user1", "name": "user1", "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/users" diff --git a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/UserPut.json b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/UserPut.json index b86dd062624e..eb630da5bed3 100644 --- a/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/UserPut.json +++ b/specification/databoxedge/resource-manager/Microsoft.DataBoxEdge/stable/2019-08-01/examples/UserPut.json @@ -25,14 +25,16 @@ "encryptionCertThumbprint": "blah" }, "shareAccessRights": [], - "userType": "Share" + "userType": "Share" } } }, "responses": { "200": { "body": { - "properties": {"userType": "Share"}, + "properties": { + "userType": "Share" + }, "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/GroupForEdgeAutomation/providers/Microsoft.DataBoxEdge/dataBoxEdgeDevices/testedgedevice/users/user1", "name": "user1", "type": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/users" diff --git a/specification/databoxedge/resource-manager/readme.cli.md b/specification/databoxedge/resource-manager/readme.cli.md new file mode 100644 index 000000000000..5716aafd4672 --- /dev/null +++ b/specification/databoxedge/resource-manager/readme.cli.md @@ -0,0 +1,70 @@ +## CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +cli: + cli-name: databoxedge + package-name: azure-mgmt-databoxedge + namespace: azure.mgmt.databoxedge + test-scenario: + - name: DataBoxEdgeDevicePut + - name: UserPut + - name: RolePut + - name: SharePut + - name: OrderPut + - name: TriggerPut + - name: StorageAccountPut + - name: BandwidthSchedulePut + - name: SACPut + - name: ContainerPut + - name: ContainerGet + - name: SACGet + - name: ContainerListAllInDevice + - name: BandwidthScheduleGet + - name: OperationsStatusGet + - name: StorageAccountGet + - name: NetworkSettingsGet + - name: UpdateSummaryGet + - name: TriggerGet + - name: SACGetAllInDevice + - name: AlertGet + - name: ShareGet + - name: OrderGet + - name: UserGet + - name: RoleGet + - name: JobsGet + - name: BandwidthScheduleGetAllInDevice + - name: StorageAccountGetAllInDevice + - name: TriggerGetAllInDevice + - name: OrderGetAllInDevice + - name: AlertGetAllInDevice + - name: ShareGetAllInDevice + - name: NodesGetAllInDevice + - name: RoleGetAllInDevice + - name: UserGetAllInDevice + - name: DataBoxEdgeDeviceGetByName + - name: DataBoxEdgeDeviceGetByResourceGroup + - name: DataBoxEdgeDeviceGetBySubscription + - name: ListSkus + - name: OperationsGet + - name: ContainerRefresh + - name: CreateOrUpdateSecuritySettings + - name: ShareRefreshPost + - name: ExtendedInfoPost + - name: UploadCertificatePost + - name: DownloadUpdatesPost + - name: ScanForUpdatesPost + - name: InstallUpdatesPost + - name: DataBoxEdgeDevicePatch + - name: ContainerDelete + - name: SACDelete + - name: BandwidthScheduleDelete + - name: StorageAccountDelete + - name: TriggerDelete + - name: ShareDelete + - name: OrderDelete + - name: UserDelete + - name: RoleDelete + - name: DataBoxEdgeDeviceDelete +``` \ No newline at end of file diff --git a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/databricks.json b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/databricks.json index abc6368cb41c..24cd79cd6ed7 100644 --- a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/databricks.json +++ b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/databricks.json @@ -70,9 +70,6 @@ "$ref": "#/definitions/Workspace" } }, - "404": { - "description": "Not Found" - }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -113,6 +110,9 @@ "202": { "description": "Accepted - Returns this status until the asynchronous operation has completed." }, + "200": { + "description": "OK. The request has succeeded." + }, "default": { "description": "Error response describing why the operation failed.", "schema": { @@ -401,6 +401,28 @@ "items": { "$ref": "#/definitions/WorkspaceProviderAuthorization" } + }, + "createdBy": { + "description": "Indicates the Object ID, PUID and Application ID of entity that created the workspace.", + "$ref": "#/definitions/CreatedBy" + }, + "updatedBy": { + "description": "Indicates the Object ID, PUID and Application ID of entity that last updated the workspace.", + "$ref": "#/definitions/CreatedBy" + }, + "createdDateTime": { + "description": "Specifies the date and time when the workspace is created.", + "$ref": "#/definitions/CreatedDateTime" + }, + "workspaceId": { + "readOnly": true, + "description": "The unique identifier of the databricks workspace in databricks control plane.", + "type": "string" + }, + "workspaceUrl": { + "readOnly": true, + "description": "The workspace URL which is of the format 'adb-{workspaceId}.{random}.azuredatabricks.net'", + "type": "string" } }, "required": [ @@ -564,10 +586,6 @@ }, "WorkspaceCustomParameters": { "properties": { - "amlWorkspaceId": { - "$ref": "#/definitions/WorkspaceCustomStringParameter", - "description": "The Workspace ID of an Azure Machine Learning Workspace" - }, "customVirtualNetworkId": { "$ref": "#/definitions/WorkspaceCustomStringParameter", "description": "The ID of a Virtual Network where this Databricks Cluster should be created" @@ -579,41 +597,37 @@ "customPrivateSubnetName": { "$ref": "#/definitions/WorkspaceCustomStringParameter", "description": "The name of the Private Subnet within the Virtual Network" + } + }, + "description": "Custom Parameters used for Cluster Creation." + }, + "CreatedDateTime": { + "type": "string", + "format": "date-time", + "description": "The date and time stamp when the workspace was created.", + "readOnly": true + }, + "CreatedBy": { + "properties": { + "oid": { + "type": "string", + "format": "uuid", + "description": "The Object ID that created the workspace.", + "readOnly": true }, - "enableNoPublicIp": { - "$ref": "#/definitions/WorkspaceCustomBooleanParameter", - "description": "Should the Public IP be Disabled?" - }, - "loadBalancerBackendPoolName": { - "$ref": "#/definitions/WorkspaceCustomStringParameter", - "description": "The name of a Backend Address Pool within an Azure Load Balancer" - }, - "loadBalancerId": { - "$ref": "#/definitions/WorkspaceCustomStringParameter", - "description": "The Resource ID of an Azure Load Balancer" - }, - "relayNamespaceName": { - "$ref": "#/definitions/WorkspaceCustomStringParameter", - "description": "The name of an Azure Relay Namespace" - }, - "storageAccountName": { - "$ref": "#/definitions/WorkspaceCustomStringParameter", - "description": "The name which should be used for the Storage Account" - }, - "storageAccountSkuName": { - "$ref": "#/definitions/WorkspaceCustomStringParameter", - "description": "The SKU which should be used for this Storage Account" - }, - "resourceTags": { - "$ref": "#/definitions/WorkspaceCustomObjectParameter", - "description": "A map of Tags which should be applied to the resources used by this Databricks Cluster." + "puid": { + "type": "string", + "description": "The Personal Object ID corresponding to the object ID above", + "readOnly": true }, - "vnetAddressPrefix": { - "$ref": "#/definitions/WorkspaceCustomStringParameter", - "description": "The first 2 octets of the virtual network /16 address range (e.g., '10.139' for the address range 10.139.0.0/16)." + "applicationId": { + "type": "string", + "format": "uuid", + "description": "The application ID of the application that initiated the creation of the workspace. For example, Azure Portal.", + "readOnly": true } }, - "description": "Custom Parameters used for Cluster Creation." + "description": "Provides details of the entity that created/updated the workspace." }, "WorkspaceProviderAuthorization": { "properties": { diff --git a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/OperationsList.json b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/OperationsList.json index ae621c5399a9..4da476627d55 100644 --- a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/OperationsList.json +++ b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/OperationsList.json @@ -31,6 +31,33 @@ "operation": "Remove Workspace", "description": "Removes an workspace." } + }, + { + "name": "Microsoft.Databricks/workspaces/virtualNetworkPeerings/read", + "display": { + "provider": "Microsoft Databricks", + "resource": "Virtual Network Peering", + "operation": "Get Virtual Network Peering", + "description": "Gets the virtual network peering." + } + }, + { + "name": "Microsoft.Databricks/workspaces/virtualNetworkPeerings/write", + "display": { + "provider": "Microsoft Databricks", + "resource": "Virtual Network Peering", + "operation": "Add Virtual Network Peering", + "description": "Add or modify virtual network peering" + } + }, + { + "name": "Microsoft.Databricks/workspaces/virtualNetworkPeerings/delete", + "display": { + "provider": "Microsoft Databricks", + "resource": "Virtual Network Peering", + "operation": "Delete Virtual Network Peering", + "description": "Deletes a virtual network peering" + } } ] } diff --git a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceCreate.json b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceCreate.json index 977b42112e3b..2c2962677166 100644 --- a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceCreate.json +++ b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceCreate.json @@ -19,13 +19,32 @@ "location": "East US 2", "tags": null, "sku": { - "name": "skuName" + "name": "premium" }, "properties": { "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", "parameters": null, - "provisioningState": "Created", - "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json" + "provisioningState": "Accepted", + "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json", + "authorizations": [ + { + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "11111111-1111-1111-1111-111111111111" + } + ], + "createdBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "updatedBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "createdDateTime": "2020-02-20T00:10:29.2858439Z", + "workspaceId": "5555555555555555", + "workspaceUrl": "adb-5555555555555555.19.azuredatabricks.net" } } }, @@ -35,15 +54,34 @@ "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace", "type": "Microsoft.Databricks/workspaces", "location": "East US 2", - "tags": null, + "tags": { + "environment": "dev" + }, "sku": { - "name": "skuName" + "name": "premium" }, "properties": { "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", "parameters": null, - "provisioningState": "Created", - "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json" + "provisioningState": "Accepted", + "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json", + "authorizations": [ + { + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "11111111-1111-1111-1111-111111111111" + } + ], + "createdBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "updatedBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "createdDateTime": "2020-02-20T00:10:29.2858439Z" } } } diff --git a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceCreateWithParameters.json b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceCreateWithParameters.json index 4e9773afc9be..4a6d36ecbcff 100644 --- a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceCreateWithParameters.json +++ b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceCreateWithParameters.json @@ -6,7 +6,18 @@ "api-version": "2018-04-01", "parameters": { "properties": { - "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG" + "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", + "parameters": { + "customVirtualNetworkId": { + "value": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/myNetwork" + }, + "customPublicSubnetName": { + "value": "myPublicSubnet" + }, + "customPrivateSubnetName": { + "value": "myPrivateSubnet" + } + } }, "location": "westus" } @@ -20,64 +31,45 @@ "location": "East US 2", "tags": null, "sku": { - "name": "skuName" + "name": "premium" }, "properties": { "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", "parameters": { - "amlWorkspaceId": { - "type": "String", - "value": "11112222-3333-4444-5555-666677778888" - }, "customPrivateSubnetName": { "type": "String", - "value": "PrivateBob" + "value": "myPrivateSubnet" }, "customPublicSubnetName": { "type": "String", - "value": "PublicSarah" + "value": "myPublicSubnet" }, "customVirtualNetworkId": { "type": "String", "value": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/myNetwork" - }, - "enableNoPublicIp": { - "type": "Bool", - "value": true - }, - "loadBalancerBackendPoolName": { - "type": "String", - "value": "CustomBackendAddressPool" - }, - "loadBalancerId": { - "type": "String", - "value": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/loadBalancers/lb1" - }, - "relayNamespaceName": { - "type": "String", - "value": "test" - }, - "resourceTags": { - "type": "Object", - "value": { - "hello": "world" - } - }, - "storageAccountName": { - "type": "String", - "value": "mysa999" - }, - "storageAccountSkuName": { - "type": "String", - "value": "Standard_GRS" - }, - "vnetAddressPrefix": { - "type": "String", - "value": "10.139" } }, - "provisioningState": "Created", - "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json" + "provisioningState": "Succeeded", + "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json", + "authorizations": [ + { + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "11111111-1111-1111-1111-111111111111" + } + ], + "createdBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "updatedBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "createdDateTime": "2020-02-20T00:10:29.2858439Z", + "workspaceId": "5555555555555555", + "workspaceUrl": "adb-5555555555555555.19.azuredatabricks.net" } } }, @@ -88,66 +80,33 @@ "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace", "type": "Microsoft.Databricks/workspaces", "location": "East US 2", - "tags": null, + "tags": { + "environment": "dev" + }, "sku": { - "name": "skuName" + "name": "premium" }, "properties": { "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", - "parameters": { - "amlWorkspaceId": { - "type": "String", - "value": "11112222-3333-4444-5555-666677778888" - }, - "customPrivateSubnetName": { - "type": "String", - "value": "PrivateBob" - }, - "customPublicSubnetName": { - "type": "String", - "value": "PublicSarah" - }, - "customVirtualNetworkId": { - "type": "String", - "value": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/myNetwork" - }, - "enableNoPublicIp": { - "type": "Bool", - "value": true - }, - "loadBalancerBackendPoolName": { - "type": "String", - "value": "CustomBackendAddressPool" - }, - "loadBalancerId": { - "type": "String", - "value": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/loadBalancers/lb1" - }, - "relayNamespaceName": { - "type": "String", - "value": "test" - }, - "resourceTags": { - "type": "Object", - "value": { - "hello": "world" - } - }, - "storageAccountName": { - "type": "String", - "value": "mysa999" - }, - "storageAccountSkuName": { - "type": "String", - "value": "Standard_GRS" - }, - "vnetAddressPrefix": { - "type": "String", - "value": "10.139" + "provisioningState": "Accepted", + "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json", + "authorizations": [ + { + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "11111111-1111-1111-1111-111111111111" } + ], + "createdBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "updatedBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" }, - "provisioningState": "Created", - "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json" + "createdDateTime": "2020-02-20T00:10:29.2858439Z" } } } diff --git a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceDelete.json b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceDelete.json index f3362fe69807..affad060724a 100644 --- a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceDelete.json +++ b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceDelete.json @@ -6,6 +6,7 @@ "subscriptionId": "subid" }, "responses": { + "200": {}, "202": {}, "204": {} } diff --git a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceGet.json b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceGet.json index 699d03663b88..48fe6d0b4990 100644 --- a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceGet.json +++ b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceGet.json @@ -12,15 +12,36 @@ "name": "myWorkspace", "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace", "type": "Microsoft.Databricks/workspaces", + "sku": { + "name": "premium" + }, "location": "East US 2", "properties": { "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", "parameters": null, - "provisioningState": "Created", - "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json" + "provisioningState": "Succeeded", + "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json", + "authorizations": [ + { + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "11111111-1111-1111-1111-111111111111" + } + ], + "createdBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "updatedBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "createdDateTime": "2020-02-20T00:10:29.2858439Z", + "workspaceId": "5555555555555555", + "workspaceUrl": "adb-5555555555555555.19.azuredatabricks.net" } } - }, - "404": {} + } } } diff --git a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceGetParameters.json b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceGetParameters.json index d2afb9f36a5f..7babe97ee78a 100644 --- a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceGetParameters.json +++ b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceGetParameters.json @@ -13,6 +13,9 @@ "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Databricks/workspaces/myWorkspace", "type": "Microsoft.Databricks/workspaces", "location": "East US 2", + "sku": { + "name": "premium" + }, "properties": { "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", "parameters": { @@ -27,53 +30,31 @@ "customVirtualNetworkId": { "type": "String", "value": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/virtualNetworks/myNetwork" - }, - "enableNoPublicIp": { - "type": "Bool", - "value": true - }, - "loadBalancerBackendPoolName": { - "type": "String", - "value": "" - }, - "loadBalancerId": { - "type": "String", - "value": "" - }, - "relayNamespaceName": { - "type": "String", - "value": "test" - }, - "storageAccountName": { - "type": "String", - "value": "examplesa99" - }, - "storageAccountSkuName": { - "type": "String", - "value": "Standard_GRS" - }, - "vnetAddressPrefix": { - "type": "String", - "value": "10.139" - }, - "resourceTags": { - "type": "Object", - "value": { - "application": "databricks", - "databricks-environment": "true", - "Environment": "Production" - } - }, - "amlWorkspaceId": { - "type": "String", - "value": "" } }, - "provisioningState": "Created", - "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json" + "provisioningState": "Succeeded", + "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json", + "authorizations": [ + { + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "11111111-1111-1111-1111-111111111111" + } + ], + "createdBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "updatedBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "createdDateTime": "2020-02-20T00:10:29.2858439Z", + "workspaceId": "5555555555555555", + "workspaceUrl": "adb-5555555555555555.19.azuredatabricks.net" } } - }, - "404": {} + } } } diff --git a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceUpdate.json b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceUpdate.json index e386347fa0a2..766bbcd78728 100644 --- a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceUpdate.json +++ b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspaceUpdate.json @@ -20,11 +20,33 @@ "tags": { "mytag1": "myvalue1" }, + "sku": { + "name": "premium" + }, "properties": { "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", "parameters": null, - "provisioningState": "Created", - "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json" + "provisioningState": "Succeeded", + "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json", + "authorizations": [ + { + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "11111111-1111-1111-1111-111111111111" + } + ], + "createdBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "updatedBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "createdDateTime": "2020-02-20T00:10:29.2858439Z", + "workspaceId": "6666666666666666", + "workspaceUrl": "adb-6666666666666666.19.azuredatabricks.net" } } }, diff --git a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspacesListByResourceGroup.json b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspacesListByResourceGroup.json index e53b60c320e1..f8fad446745f 100644 --- a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspacesListByResourceGroup.json +++ b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspacesListByResourceGroup.json @@ -16,13 +16,32 @@ "location": "East US 2", "tags": null, "sku": { - "name": "skuName" + "name": "premium" }, "properties": { "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", "parameters": null, - "provisioningState": "Created", - "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json" + "provisioningState": "Succeeded", + "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json", + "authorizations": [ + { + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "11111111-1111-1111-1111-111111111111" + } + ], + "createdBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "updatedBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "createdDateTime": "2020-02-20T00:10:29.2858439Z", + "workspaceId": "5555555555555555", + "workspaceUrl": "adb-5555555555555555.19.azuredatabricks.net" } }, { @@ -32,13 +51,32 @@ "location": "East US 2", "tags": null, "sku": { - "name": "skuName" + "name": "standard" }, "properties": { "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", "parameters": null, - "provisioningState": "Created", - "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json" + "provisioningState": "Succeeded", + "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json", + "authorizations": [ + { + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "11111111-1111-1111-1111-111111111111" + } + ], + "createdBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "updatedBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "createdDateTime": "2020-02-20T00:10:29.2858439Z", + "workspaceId": "6666666666666666", + "workspaceUrl": "adb-6666666666666666.19.azuredatabricks.net" } } ] diff --git a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspacesListBySubscription.json b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspacesListBySubscription.json index 4fbbf3fc1d89..de92bdaeaf18 100644 --- a/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspacesListBySubscription.json +++ b/specification/databricks/resource-manager/Microsoft.Databricks/stable/2018-04-01/examples/WorkspacesListBySubscription.json @@ -15,13 +15,32 @@ "location": "East US 2", "tags": null, "sku": { - "name": "skuName" + "name": "premium" }, "properties": { "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", "parameters": null, - "provisioningState": "Created", - "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json" + "provisioningState": "Succeeded", + "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json", + "authorizations": [ + { + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "11111111-1111-1111-1111-111111111111" + } + ], + "createdBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "updatedBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "createdDateTime": "2020-02-20T00:10:29.2858439Z", + "workspaceId": "5555555555555555", + "workspaceUrl": "adb-5555555555555555.19.azuredatabricks.net" } }, { @@ -31,13 +50,32 @@ "location": "East US 2", "tags": null, "sku": { - "name": "skuName" + "name": "standard" }, "properties": { "managedResourceGroupId": "/subscriptions/subid/resourceGroups/myManagedRG", "parameters": null, - "provisioningState": "Created", - "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json" + "provisioningState": "Succeeded", + "uiDefinitionUri": "https://path/to/workspaceCreateUiDefinition.json", + "authorizations": [ + { + "principalId": "00000000-0000-0000-0000-000000000000", + "roleDefinitionId": "11111111-1111-1111-1111-111111111111" + } + ], + "createdBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "updatedBy": { + "oid": "22222222-2222-2222-2222-222222222222", + "puid": "33333333", + "applicationId": "44444444-4444-4444-4444-444444444444" + }, + "createdDateTime": "2020-02-20T00:10:29.2858439Z", + "workspaceId": "6666666666666666", + "workspaceUrl": "adb-6666666666666666.19.azuredatabricks.net" } } ] diff --git a/specification/databricks/resource-manager/readme.cli.md b/specification/databricks/resource-manager/readme.cli.md new file mode 100644 index 000000000000..aed267b657de --- /dev/null +++ b/specification/databricks/resource-manager/readme.cli.md @@ -0,0 +1,20 @@ +## CLI + +These settings don't need to apply `--cli` on the command line. + +``` yaml +cli: + cli-name: databricks + package-name: azure-mgmt-databricks + namespace: azure.mgmt.databricks + test-scenario: + - name: Create or update workspace + - name: Create or update workspace with custom parameters + - name: Get a workspace with custom parameters + - name: Get a workspace + - name: Lists workspaces + - name: Lists workspaces + - name: Operations + - name: Update a workspace's tags. + - name: Delete a workspace +``` \ No newline at end of file diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json index dc93bc487aea..abb09d4b737c 100644 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/datafactory.json @@ -2335,6 +2335,14 @@ "type": "string", "x-ms-parameter-location": "method" }, + { + "name": "startFromFailure", + "description": "In recovery mode, if set to true, the rerun will start from failed activities. The property will be used only if startActivityName is not specified.", + "in": "query", + "required": false, + "type": "boolean", + "x-ms-parameter-location": "method" + }, { "name": "parameters", "description": "Parameters of the pipeline run. These parameters will be used only if the runId is not specified.", @@ -2605,6 +2613,57 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataFactory/factories/{factoryName}/querytriggers": { + "post": { + "tags": [ + "triggers" + ], + "operationId": "Triggers_QueryByFactory", + "x-ms-examples": { + "Triggers_QueryByFactory": { + "$ref": "./examples/Triggers_QueryByFactory.json" + } + }, + "description": "Query triggers.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/factoryName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "filterParameters", + "description": "Parameters to filter the triggers.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TriggerFilterParameters" + } + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/TriggerQueryResponse" + } + }, + "default": { + "description": "An error response received from the Azure Data Factory service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataFactory/factories/{factoryName}/triggers/{triggerName}": { "put": { "tags": [ @@ -3039,249 +3098,6 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataFactory/factories/{factoryName}/triggers/{triggerName}/rerunTriggers/{rerunTriggerName}": { - "put": { - "tags": [ - "rerunTriggers" - ], - "operationId": "RerunTriggers_Create", - "x-ms-examples": { - "RerunTriggers_Create": { - "$ref": "./examples/RerunTriggers_Create.json" - } - }, - "description": "Creates a rerun trigger.", - "parameters": [ - { - "$ref": "#/parameters/subscriptionId" - }, - { - "$ref": "#/parameters/resourceGroupName" - }, - { - "$ref": "#/parameters/factoryName" - }, - { - "$ref": "#/parameters/triggerName" - }, - { - "$ref": "#/parameters/rerunTriggerName" - }, - { - "$ref": "#/parameters/api-version" - }, - { - "name": "rerunTumblingWindowTriggerActionParameters", - "description": "Rerun tumbling window trigger action parameters.", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/RerunTumblingWindowTriggerActionParameters" - } - } - ], - "responses": { - "200": { - "description": "OK.", - "schema": { - "$ref": "#/definitions/TriggerResource" - } - }, - "default": { - "description": "An error response received from the Azure Data Factory service.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataFactory/factories/{factoryName}/triggers/{triggerName}/rerunTriggers/{rerunTriggerName}/start": { - "post": { - "tags": [ - "rerunTriggers" - ], - "operationId": "RerunTriggers_Start", - "x-ms-examples": { - "RerunTriggers_Start": { - "$ref": "./examples/RerunTriggers_Start.json" - } - }, - "description": "Starts a trigger.", - "x-ms-long-running-operation": true, - "parameters": [ - { - "$ref": "#/parameters/subscriptionId" - }, - { - "$ref": "#/parameters/resourceGroupName" - }, - { - "$ref": "#/parameters/factoryName" - }, - { - "$ref": "#/parameters/triggerName" - }, - { - "$ref": "#/parameters/rerunTriggerName" - }, - { - "$ref": "#/parameters/api-version" - } - ], - "responses": { - "200": { - "description": "Trigger has been started successfully." - }, - "default": { - "description": "An error response received from the Azure Data Factory service.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataFactory/factories/{factoryName}/triggers/{triggerName}/rerunTriggers/{rerunTriggerName}/stop": { - "post": { - "tags": [ - "rerunTriggers" - ], - "operationId": "RerunTriggers_Stop", - "x-ms-examples": { - "RerunTriggers_Stop": { - "$ref": "./examples/RerunTriggers_Stop.json" - } - }, - "description": "Stops a trigger.", - "x-ms-long-running-operation": true, - "parameters": [ - { - "$ref": "#/parameters/subscriptionId" - }, - { - "$ref": "#/parameters/resourceGroupName" - }, - { - "$ref": "#/parameters/factoryName" - }, - { - "$ref": "#/parameters/triggerName" - }, - { - "$ref": "#/parameters/rerunTriggerName" - }, - { - "$ref": "#/parameters/api-version" - } - ], - "responses": { - "200": { - "description": "Trigger has been stopped successfully." - }, - "default": { - "description": "An error response received from the Azure Data Factory service.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataFactory/factories/{factoryName}/triggers/{triggerName}/rerunTriggers/{rerunTriggerName}/cancel": { - "post": { - "tags": [ - "rerunTriggers" - ], - "operationId": "RerunTriggers_Cancel", - "x-ms-examples": { - "RerunTriggers_Cancel": { - "$ref": "./examples/RerunTriggers_Cancel.json" - } - }, - "description": "Cancels a trigger.", - "x-ms-long-running-operation": true, - "parameters": [ - { - "$ref": "#/parameters/subscriptionId" - }, - { - "$ref": "#/parameters/resourceGroupName" - }, - { - "$ref": "#/parameters/factoryName" - }, - { - "$ref": "#/parameters/triggerName" - }, - { - "$ref": "#/parameters/rerunTriggerName" - }, - { - "$ref": "#/parameters/api-version" - } - ], - "responses": { - "200": { - "description": "Trigger has been canceled successfully." - }, - "default": { - "description": "An error response received from the Azure Data Factory service.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataFactory/factories/{factoryName}/triggers/{triggerName}/rerunTriggers": { - "get": { - "tags": [ - "rerunTriggers" - ], - "operationId": "RerunTriggers_ListByTrigger", - "x-ms-examples": { - "RerunTriggers_ListByTrigger": { - "$ref": "./examples/RerunTriggers_ListByTrigger.json" - } - }, - "description": "Lists rerun triggers by an original trigger name.", - "parameters": [ - { - "$ref": "#/parameters/subscriptionId" - }, - { - "$ref": "#/parameters/resourceGroupName" - }, - { - "$ref": "#/parameters/factoryName" - }, - { - "$ref": "#/parameters/triggerName" - }, - { - "$ref": "#/parameters/api-version" - } - ], - "responses": { - "200": { - "description": "OK.", - "schema": { - "$ref": "#/definitions/RerunTriggerListResponse" - } - }, - "default": { - "description": "An error response received from the Azure Data Factory service.", - "schema": { - "$ref": "#/definitions/CloudError" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataFactory/factories/{factoryName}/queryTriggerRuns": { "post": { "tags": [ @@ -4217,6 +4033,26 @@ } } }, + "TriggerQueryResponse": { + "description": "A query of triggers.", + "type": "object", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "array", + "description": "List of triggers.", + "items": { + "$ref": "#/definitions/TriggerResource" + } + }, + "continuationToken": { + "description": "The continuation token for getting the next page of results, if any remaining results exist, null otherwise.", + "type": "string" + } + } + }, "TriggerListResponse": { "description": "A list of trigger resources.", "type": "object", @@ -4848,6 +4684,20 @@ "properties" ] }, + "TriggerFilterParameters": { + "description": "Query parameters for triggers.", + "type": "object", + "properties": { + "continuationToken": { + "description": "The continuation token for getting the next page of results. Null for first page.", + "type": "string" + }, + "parentTriggerName": { + "description": "The name of the parent TumblingWindowTrigger to get the child rerun triggers", + "type": "string" + } + } + }, "RunFilterParameters": { "description": "Query parameters for listing runs.", "type": "object", @@ -5302,71 +5152,6 @@ "type": "object" } }, - "RerunTumblingWindowTriggerActionParameters": { - "description": "Rerun tumbling window trigger Parameters.", - "type": "object", - "properties": { - "startTime": { - "description": "The start time for the time period for which restatement is initiated. Only UTC time is currently supported.", - "type": "string", - "format": "date-time" - }, - "endTime": { - "description": "The end time for the time period for which restatement is initiated. Only UTC time is currently supported.", - "type": "string", - "format": "date-time" - }, - "maxConcurrency": { - "description": "The max number of parallel time windows (ready for execution) for which a rerun is triggered.", - "type": "integer", - "minimum": 1, - "maximum": 50 - } - }, - "required": [ - "startTime", - "endTime", - "maxConcurrency" - ] - }, - "RerunTriggerListResponse": { - "description": "A list of rerun triggers.", - "type": "object", - "required": [ - "value" - ], - "properties": { - "value": { - "type": "array", - "description": "List of rerun triggers.", - "items": { - "$ref": "#/definitions/RerunTriggerResource" - } - }, - "nextLink": { - "description": "The continuation token for getting the next page of results, if any remaining results exist, null otherwise.", - "type": "string", - "readOnly": true - } - } - }, - "RerunTriggerResource": { - "description": "RerunTrigger resource type.", - "allOf": [ - { - "$ref": "#/definitions/SubResource" - } - ], - "properties": { - "properties": { - "$ref": "./entityTypes/Trigger.json#/definitions/RerunTumblingWindowTrigger", - "description": "Properties of the rerun trigger." - } - }, - "required": [ - "properties" - ] - }, "OperationListResponse": { "description": "A list of operations that can be performed by the Data Factory service.", "properties": { @@ -6068,17 +5853,6 @@ "maxLength": 260, "x-ms-parameter-location": "method" }, - "rerunTriggerName": { - "name": "rerunTriggerName", - "description": "The rerun trigger name.", - "in": "path", - "required": true, - "type": "string", - "pattern": "^[A-Za-z0-9_][^<>*#.%&:\\\\+?/]*$", - "minLength": 1, - "maxLength": 260, - "x-ms-parameter-location": "method" - }, "runId": { "name": "runId", "description": "The pipeline run identifier.", 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 830aeb5779c1..8e1e0fcb1665 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 @@ -3070,6 +3070,65 @@ "$ref": "#/definitions/GenericDatasetTypeProperties" } } + }, + "SnowflakeDataset": { + "x-ms-discriminator-value": "SnowflakeTable", + "description": "The snowflake dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Snowflake dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SnowflakeDatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SnowflakeDatasetTypeProperties": { + "description": "Snowflake dataset properties.", + "properties": { + "schema": { + "type": "object", + "description": "The schema name of the Snowflake database. Type: string (or Expression with resultType string)." + }, + "table": { + "type": "object", + "description": "The table name of the Snowflake database. Type: string (or Expression with resultType string)." + } + } + }, + "SharePointOnlineListResourceDataset": { + "x-ms-discriminator-value": "SharePointOnlineListResource", + "description": "The sharepoint online list resource dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Sharepoint online list dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SharePointOnlineListDatasetTypeProperties" + } + } + }, + "SharePointOnlineListDatasetTypeProperties": { + "description": "Sharepoint online list dataset properties.", + "properties": { + "listName": { + "type": "object", + "description": "The name of the SharePoint Online list. Type: string (or Expression with resultType string)." + } + } } } } 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 df0fd8d28231..0804d441a8f4 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 @@ -215,6 +215,13 @@ "items": { "$ref": "#/definitions/CustomSetupBase" } + }, + "packageStores": { + "description": "Package stores for the SSIS Integration Runtime.", + "type": "array", + "items": { + "$ref": "#/definitions/PackageStore" + } } }, "additionalProperties": { @@ -290,6 +297,24 @@ } } }, + "PackageStore": { + "description": "Package store for the SSIS integration runtime.", + "type": "object", + "properties": { + "name": { + "description": "The name of the package store", + "type": "string" + }, + "packageStoreLinkedService": { + "description": "The package store linked service reference.", + "$ref": "#/definitions/EntityReference" + } + }, + "required": [ + "name", + "packageStoreLinkedService" + ] + }, "CustomSetupBase": { "description": "The base definition of the custom setup.", "type": "object", 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 9862ee577cb7..4b63d84add83 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 @@ -945,14 +945,31 @@ "description": "Password to logon the server.", "$ref": "../datafactory.json#/definitions/SecretBase" }, + "connectionString": { + "type": "object", + "description": "The connection string. It is mutually exclusive with sasUri property. Type: string, SecureString or AzureKeyVaultSecretReference." + }, + "accountKey": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of accountKey in connection string." + }, + "sasUri": { + "description": "SAS URI of the Azure File resource. It is mutually exclusive with connectionString property. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "sasToken": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of sasToken in sas uri." + }, + "fileShare": { + "description": "The azure file share name. It is required when auth with accountKey/sasToken. Type: string (or Expression with resultType string).", + "type": "object" + }, "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": [ - "host" - ] + } }, "GoogleCloudStorageLinkedService": { "x-ms-discriminator-value": "GoogleCloudStorage", @@ -1243,16 +1260,20 @@ "Db2LinkedServiceTypeProperties": { "description": "DB2 linked service properties.", "properties": { + "connectionString": { + "type": "object", + "description": "The connection string. It is mutually exclusive with server, database, authenticationType, userName, packageCollection and certificateCommonName property. Type: string, SecureString or AzureKeyVaultSecretReference." + }, "server": { "type": "object", - "description": "Server name for connection. Type: string (or Expression with resultType string)." + "description": "Server name for connection. It is mutually exclusive with connectionString property. Type: string (or Expression with resultType string)." }, "database": { "type": "object", - "description": "Database name for connection. Type: string (or Expression with resultType string)." + "description": "Database name for connection. It is mutually exclusive with connectionString property. Type: string (or Expression with resultType string)." }, "authenticationType": { - "description": "AuthenticationType to be used for connection.", + "description": "AuthenticationType to be used for connection. It is mutually exclusive with connectionString property.", "type": "string", "enum": [ "Basic" @@ -1264,7 +1285,7 @@ }, "username": { "type": "object", - "description": "Username for authentication. Type: string (or Expression with resultType string)." + "description": "Username for authentication. It is mutually exclusive with connectionString property. Type: string (or Expression with resultType string)." }, "password": { "description": "Password for authentication.", @@ -1272,21 +1293,17 @@ }, "packageCollection": { "type": "object", - "description": "Under where packages are created when querying database. Type: string (or Expression with resultType string)." + "description": "Under where packages are created when querying database. It is mutually exclusive with connectionString property. Type: string (or Expression with resultType string)." }, "certificateCommonName": { "type": "object", - "description": "Certificate Common Name when TLS is enabled. Type: string (or Expression with resultType string)." + "description": "Certificate Common Name when TLS is enabled. It is mutually exclusive with connectionString property. 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)." + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. It is mutually exclusive with connectionString property. Type: string (or Expression with resultType string)." } - }, - "required": [ - "server", - "database" - ] + } }, "TeradataLinkedService": { "x-ms-discriminator-value": "Teradata", @@ -2263,9 +2280,13 @@ "$ref": "../datafactory.json#/definitions/SecretBase" }, "securityToken": { - "description": "The security token is required to remotely access Salesforce instance.", + "description": "The security token is optional to remotely access Salesforce instance.", "$ref": "../datafactory.json#/definitions/SecretBase" }, + "apiVersion": { + "type": "object", + "description": "The Salesforce API version used in ADF. 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)." @@ -2308,9 +2329,13 @@ "$ref": "../datafactory.json#/definitions/SecretBase" }, "securityToken": { - "description": "The security token is required to remotely access Salesforce instance.", + "description": "The security token is optional to remotely access Salesforce instance.", "$ref": "../datafactory.json#/definitions/SecretBase" }, + "apiVersion": { + "type": "object", + "description": "The Salesforce API version used in ADF. Type: string (or Expression with resultType string)." + }, "extendedProperties": { "type": "object", "description": "Extended properties appended to the connection string. Type: string (or Expression with resultType string)." @@ -3028,10 +3053,7 @@ "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": [ - "server" - ] + } }, "AmazonMWSLinkedService": { "x-ms-discriminator-value": "AmazonMWS", @@ -5684,6 +5706,97 @@ "required": [ "functionAppUrl" ] + }, + "SnowflakeLinkedService": { + "x-ms-discriminator-value": "Snowflake", + "description": "Snowflake linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Snowflake linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SnowflakeLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SnowflakeLinkedServiceTypeProperties": { + "description": "Snowflake linked service properties.", + "properties": { + "connectionString": { + "description": "The connection string of snowflake. Type: string, SecureString.", + "type": "object" + }, + "password": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection 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": [ + "connectionString" + ] + }, + "SharePointOnlineListLinkedService": { + "x-ms-discriminator-value": "SharePointOnlineList", + "description": "SharePoint Online List linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "SharePoint Online List linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SharePointOnlineListLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SharePointOnlineListLinkedServiceTypeProperties": { + "description": "SharePoint Online List linked service properties.", + "properties": { + "siteUrl": { + "type": "object", + "description": "The URL of the SharePoint Online site. For example, https://contoso.sharepoint.com/sites/siteName. Type: string (or Expression with resultType string)." + }, + "tenantId": { + "type": "object", + "description": "The tenant ID under which your application resides. You can find it from Azure portal Active Directory overview page. Type: string (or Expression with resultType string)." + }, + "servicePrincipalId": { + "type": "object", + "description": "The application (client) ID of your application registered in Azure Active Directory. Make sure to grant SharePoint site permission to this application. Type: string (or Expression with resultType string)." + }, + "servicePrincipalKey": { + "description": "The client secret of your application registered in Azure Active Directory. Type: string (or Expression with resultType string).", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "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": [ + "siteUrl", + "tenantId", + "servicePrincipalId", + "servicePrincipalKey" + ] } } } 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 460eca46990d..ec82ec1adffc 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 @@ -259,10 +259,18 @@ "type": "object", "description": "The prefix filter for the Azure Blob name. Type: string (or Expression with resultType string)." }, + "fileListPath": { + "type": "object", + "description": "Point to a text file that lists each file (relative path to the path configured in the dataset) that you want to copy. Type: string (or Expression with resultType string)." + }, "enablePartitionDiscovery": { "type": "boolean", "description": "Indicates whether to enable partition discovery." }, + "partitionRootPath": { + "type": "object", + "description": "Specify the root path where partition discovery starts from. Type: string (or Expression with resultType string)." + }, "modifiedDatetimeStart": { "type": "object", "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." @@ -294,10 +302,18 @@ "type": "object", "description": "Azure blobFS wildcardFileName. Type: string (or Expression with resultType string)." }, + "fileListPath": { + "type": "object", + "description": "Point to a text file that lists each file (relative path to the path configured in the dataset) that you want to copy. Type: string (or Expression with resultType string)." + }, "enablePartitionDiscovery": { "type": "boolean", "description": "Indicates whether to enable partition discovery." }, + "partitionRootPath": { + "type": "object", + "description": "Specify the root path where partition discovery starts from. Type: string (or Expression with resultType string)." + }, "modifiedDatetimeStart": { "type": "object", "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." @@ -329,10 +345,18 @@ "type": "object", "description": "ADLS wildcardFileName. Type: string (or Expression with resultType string)." }, + "fileListPath": { + "type": "object", + "description": "Point to a text file that lists each file (relative path to the path configured in the dataset) that you want to copy. Type: string (or Expression with resultType string)." + }, "enablePartitionDiscovery": { "type": "boolean", "description": "Indicates whether to enable partition discovery." }, + "partitionRootPath": { + "type": "object", + "description": "Specify the root path where partition discovery starts from. Type: string (or Expression with resultType string)." + }, "modifiedDatetimeStart": { "type": "object", "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." @@ -368,10 +392,18 @@ "type": "object", "description": "The prefix filter for the S3 object name. Type: string (or Expression with resultType string)." }, + "fileListPath": { + "type": "object", + "description": "Point to a text file that lists each file (relative path to the path configured in the dataset) that you want to copy. Type: string (or Expression with resultType string)." + }, "enablePartitionDiscovery": { "type": "boolean", "description": "Indicates whether to enable partition discovery." }, + "partitionRootPath": { + "type": "object", + "description": "Specify the root path where partition discovery starts from. Type: string (or Expression with resultType string)." + }, "modifiedDatetimeStart": { "type": "object", "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." @@ -403,10 +435,18 @@ "type": "object", "description": "FileServer wildcardFileName. Type: string (or Expression with resultType string)." }, + "fileListPath": { + "type": "object", + "description": "Point to a text file that lists each file (relative path to the path configured in the dataset) that you want to copy. Type: string (or Expression with resultType string)." + }, "enablePartitionDiscovery": { "type": "boolean", "description": "Indicates whether to enable partition discovery." }, + "partitionRootPath": { + "type": "object", + "description": "Specify the root path where partition discovery starts from. Type: string (or Expression with resultType string)." + }, "modifiedDatetimeStart": { "type": "object", "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." @@ -414,6 +454,10 @@ "modifiedDatetimeEnd": { "type": "object", "description": "The end of file's modified datetime. Type: string (or Expression with resultType string)." + }, + "fileFilter": { + "type": "object", + "description": "Specify a filter to be used to select a subset of files in the folderPath rather than all files. Type: string (or Expression with resultType string)." } } }, @@ -438,10 +482,22 @@ "type": "object", "description": "Azure File Storage wildcardFileName. Type: string (or Expression with resultType string)." }, + "prefix": { + "type": "object", + "description": "The prefix filter for the Azure File name starting from root path. Type: string (or Expression with resultType string)." + }, + "fileListPath": { + "type": "object", + "description": "Point to a text file that lists each file (relative path to the path configured in the dataset) that you want to copy. Type: string (or Expression with resultType string)." + }, "enablePartitionDiscovery": { "type": "boolean", "description": "Indicates whether to enable partition discovery." }, + "partitionRootPath": { + "type": "object", + "description": "Specify the root path where partition discovery starts from. Type: string (or Expression with resultType string)." + }, "modifiedDatetimeStart": { "type": "object", "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." @@ -464,6 +520,10 @@ "operationTimeout": { "description": "Specifies the timeout for writing each chunk to SFTP server. Default value: 01:00:00 (one hour). Type: string (or Expression with resultType string).", "type": "object" + }, + "useTempFileRename": { + "description": "Upload to temporary file(s) and rename. Disable this option if your SFTP server doesn't support rename operation. Type: boolean (or Expression with resultType boolean).", + "type": "object" } } }, @@ -492,10 +552,18 @@ "type": "object", "description": "The prefix filter for the Google Cloud Storage object name. Type: string (or Expression with resultType string)." }, + "fileListPath": { + "type": "object", + "description": "Point to a text file that lists each file (relative path to the path configured in the dataset) that you want to copy. Type: string (or Expression with resultType string)." + }, "enablePartitionDiscovery": { "type": "boolean", "description": "Indicates whether to enable partition discovery." }, + "partitionRootPath": { + "type": "object", + "description": "Specify the root path where partition discovery starts from. Type: string (or Expression with resultType string)." + }, "modifiedDatetimeStart": { "type": "object", "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." @@ -527,6 +595,18 @@ "type": "object", "description": "Ftp wildcardFileName. Type: string (or Expression with resultType string)." }, + "enablePartitionDiscovery": { + "type": "boolean", + "description": "Indicates whether to enable partition discovery." + }, + "partitionRootPath": { + "type": "object", + "description": "Specify the root path where partition discovery starts from. Type: string (or Expression with resultType string)." + }, + "fileListPath": { + "type": "object", + "description": "Point to a text file that lists each file (relative path to the path configured in the dataset) that you want to copy. Type: string (or Expression with resultType string)." + }, "useBinaryTransfer": { "type": "boolean", "description": "Specify whether to use binary transfer mode for FTP stores." @@ -554,6 +634,18 @@ "type": "object", "description": "Sftp wildcardFileName. Type: string (or Expression with resultType string)." }, + "enablePartitionDiscovery": { + "type": "boolean", + "description": "Indicates whether to enable partition discovery." + }, + "partitionRootPath": { + "type": "object", + "description": "Specify the root path where partition discovery starts from. Type: string (or Expression with resultType string)." + }, + "fileListPath": { + "type": "object", + "description": "Point to a text file that lists each file (relative path to the path configured in the dataset) that you want to copy. Type: string (or Expression with resultType string)." + }, "modifiedDatetimeStart": { "type": "object", "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." @@ -588,6 +680,14 @@ "requestTimeout": { "type": "object", "description": "Specifies the timeout for a HTTP client to get HTTP response from HTTP server." + }, + "enablePartitionDiscovery": { + "type": "boolean", + "description": "Indicates whether to enable partition discovery." + }, + "partitionRootPath": { + "type": "object", + "description": "Specify the root path where partition discovery starts from. Type: string (or Expression with resultType string)." } } }, @@ -612,10 +712,18 @@ "type": "object", "description": "HDFS wildcardFileName. Type: string (or Expression with resultType string)." }, + "fileListPath": { + "type": "object", + "description": "Point to a text file that lists each file (relative path to the path configured in the dataset) that you want to copy. Type: string (or Expression with resultType string)." + }, "enablePartitionDiscovery": { "type": "boolean", "description": "Indicates whether to enable partition discovery." }, + "partitionRootPath": { + "type": "object", + "description": "Specify the root path where partition discovery starts from. Type: string (or Expression with resultType string)." + }, "modifiedDatetimeStart": { "type": "object", "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." @@ -692,7 +800,13 @@ { "$ref": "#/definitions/StoreWriteSettings" } - ] + ], + "properties": { + "expiryDateTime": { + "description": "Specifies the expiry time of the written files. The time is applied to the UTC time zone in the format of \"2018-12-01T05:00:00Z\". Default value is NULL. Type: integer (or Expression with resultType integer).", + "type": "object" + } + } }, "FileServerWriteSettings": { "description": "File server write settings.", @@ -720,6 +834,38 @@ "type" ] }, + "CompressionReadSettings": { + "description": "Compression read settings.", + "discriminator": "type", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The Compression setting type." + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "ZipDeflateReadSettings": { + "description": "The ZipDeflate compression read settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CompressionReadSettings" + } + ], + "properties": { + "preserveZipFileNameAsFolder": { + "description": "Preserve the zip file name as folder path. Type: boolean (or Expression with resultType boolean).", + "type": "object" + } + } + }, "DelimitedTextReadSettings": { "description": "Delimited text read settings.", "type": "object", @@ -732,6 +878,40 @@ "skipLineCount": { "type": "object", "description": "Indicates the number of non-empty rows to skip when reading data from input files. Type: integer (or Expression with resultType integer)." + }, + "compressionProperties": { + "$ref": "#/definitions/CompressionReadSettings", + "description": "Compression settings." + } + } + }, + "JsonReadSettings": { + "description": "Json read settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FormatReadSettings" + } + ], + "properties": { + "compressionProperties": { + "$ref": "#/definitions/CompressionReadSettings", + "description": "Compression settings." + } + } + }, + "BinaryReadSettings": { + "description": "Binary read settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FormatReadSettings" + } + ], + "properties": { + "compressionProperties": { + "$ref": "#/definitions/CompressionReadSettings", + "description": "Compression settings." } } }, @@ -828,6 +1008,13 @@ "storeSettings": { "$ref": "#/definitions/StoreReadSettings", "description": "Avro store settings." + }, + "additionalColumns": { + "type": "array", + "description": "Specifies the additional columns to be added to source data. Type: array of objects (or Expression with resultType array of objects).", + "items": { + "$ref": "#/definitions/AdditionalColumns" + } } } }, @@ -843,6 +1030,13 @@ "storeSettings": { "$ref": "#/definitions/StoreReadSettings", "description": "Parquet store settings." + }, + "additionalColumns": { + "type": "array", + "description": "Specifies the additional columns to be added to source data. Type: array of objects (or Expression with resultType array of objects).", + "items": { + "$ref": "#/definitions/AdditionalColumns" + } } } }, @@ -862,6 +1056,13 @@ "formatSettings": { "$ref": "#/definitions/DelimitedTextReadSettings", "description": "DelimitedText format settings." + }, + "additionalColumns": { + "type": "array", + "description": "Specifies the additional columns to be added to source data. Type: array of objects (or Expression with resultType array of objects).", + "items": { + "$ref": "#/definitions/AdditionalColumns" + } } } }, @@ -877,6 +1078,17 @@ "storeSettings": { "$ref": "#/definitions/StoreReadSettings", "description": "Json store settings." + }, + "formatSettings": { + "$ref": "#/definitions/JsonReadSettings", + "description": "Json format settings." + }, + "additionalColumns": { + "type": "array", + "description": "Specifies the additional columns to be added to source data. Type: array of objects (or Expression with resultType array of objects).", + "items": { + "$ref": "#/definitions/AdditionalColumns" + } } } }, @@ -892,6 +1104,13 @@ "storeSettings": { "$ref": "#/definitions/StoreReadSettings", "description": "ORC store settings." + }, + "additionalColumns": { + "type": "array", + "description": "Specifies the additional columns to be added to source data. Type: array of objects (or Expression with resultType array of objects).", + "items": { + "$ref": "#/definitions/AdditionalColumns" + } } } }, @@ -1020,6 +1239,10 @@ "description": "Redirect incompatible row settings when EnableSkipIncompatibleRow is true.", "$ref": "#/definitions/RedirectIncompatibleRowSettings" }, + "logStorageSettings": { + "description": "Log storage settings customer need to provide when enabling session log.", + "$ref": "#/definitions/LogStorageSettings" + }, "preserveRules": { "type": "array", "items": { @@ -1035,6 +1258,14 @@ "description": "Type: string (or Expression with resultType string)." }, "description": "Preserve rules." + }, + "validateDataConsistency": { + "type": "object", + "description": "Whether to enable Data Consistency validation. Type: boolean (or Expression with resultType boolean)." + }, + "skipErrorFile": { + "description": "Specify the fault tolerance for data consistency.", + "$ref": "#/definitions/SkipErrorFile" } }, "required": [ @@ -1083,6 +1314,10 @@ "storeSettings": { "$ref": "#/definitions/StoreReadSettings", "description": "Binary store settings." + }, + "formatSettings": { + "$ref": "#/definitions/BinaryReadSettings", + "description": "Binary format settings." } } }, @@ -1098,6 +1333,13 @@ "queryTimeout": { "type": "object", "description": "Query timeout. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + }, + "additionalColumns": { + "type": "array", + "description": "Specifies the additional columns to be added to source data. Type: array of objects (or Expression with resultType array of objects).", + "items": { + "$ref": "#/definitions/AdditionalColumns" + } } } }, @@ -1163,6 +1405,13 @@ "queryTimeout": { "type": "object", "description": "Query timeout. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + }, + "additionalColumns": { + "type": "array", + "description": "Specifies the additional columns to be added to source data. Type: array of objects (or Expression with resultType array of objects).", + "items": { + "$ref": "#/definitions/AdditionalColumns" + } } } }, @@ -1186,6 +1435,13 @@ "preferredRegions": { "type": "object", "description": "Preferred regions. Type: array of strings (or Expression with resultType array of strings)." + }, + "additionalColumns": { + "type": "array", + "description": "Specifies the additional columns to be added to source data. Type: array of objects (or Expression with resultType array of objects).", + "items": { + "$ref": "#/definitions/AdditionalColumns" + } } } }, @@ -1201,6 +1457,13 @@ "query": { "type": "object", "description": "FetchXML is a proprietary query language that is used in Microsoft Dynamics (online & on-premises). Type: string (or Expression with resultType string)." + }, + "additionalColumns": { + "type": "array", + "description": "Specifies the additional columns to be added to source data. Type: array of objects (or Expression with resultType array of objects).", + "items": { + "$ref": "#/definitions/AdditionalColumns" + } } } }, @@ -1216,6 +1479,13 @@ "query": { "type": "object", "description": "FetchXML is a proprietary query language that is used in Microsoft Dynamics CRM (online & on-premises). Type: string (or Expression with resultType string)." + }, + "additionalColumns": { + "type": "array", + "description": "Specifies the additional columns to be added to source data. Type: array of objects (or Expression with resultType array of objects).", + "items": { + "$ref": "#/definitions/AdditionalColumns" + } } } }, @@ -1231,6 +1501,13 @@ "query": { "type": "object", "description": "FetchXML is a proprietary query language that is used in Microsoft Common Data Service for Apps (online & on-premises). Type: string (or Expression with resultType string)." + }, + "additionalColumns": { + "type": "array", + "description": "Specifies the additional columns to be added to source data. Type: array of objects (or Expression with resultType array of objects).", + "items": { + "$ref": "#/definitions/AdditionalColumns" + } } } }, @@ -1246,6 +1523,13 @@ "query": { "type": "object", "description": "Database query. Type: string (or Expression with resultType string)." + }, + "additionalColumns": { + "type": "array", + "description": "Specifies the additional columns to be added to source data. Type: array of objects (or Expression with resultType array of objects).", + "items": { + "$ref": "#/definitions/AdditionalColumns" + } } } }, @@ -1276,6 +1560,13 @@ "query": { "type": "object", "description": "Database query. Type: string (or Expression with resultType string)." + }, + "additionalColumns": { + "type": "array", + "description": "Specifies the additional columns to be added to source data. Type: array of objects (or Expression with resultType array of objects).", + "items": { + "$ref": "#/definitions/AdditionalColumns" + } } } }, @@ -1381,6 +1672,17 @@ "query": { "type": "object", "description": "OData query. For example, \"$top=1\". Type: string (or Expression with resultType string)." + }, + "httpRequestTimeout": { + "type": "object", + "description": "The timeout (TimeSpan) to get an HTTP response. It is the timeout to get a response, not the timeout to read response data. Default value: 00:05:00. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + }, + "additionalColumns": { + "type": "array", + "description": "Specifies the additional columns to be added to source data. Type: array of objects (or Expression with resultType array of objects).", + "items": { + "$ref": "#/definitions/AdditionalColumns" + } } } }, @@ -1435,6 +1737,13 @@ "name": "SalesforceSourceReadBehavior", "modelAsString": true } + }, + "additionalColumns": { + "type": "array", + "description": "Specifies the additional columns to be added to source data. Type: array of objects (or Expression with resultType array of objects).", + "items": { + "$ref": "#/definitions/AdditionalColumns" + } } } }, @@ -1450,6 +1759,10 @@ "query": { "type": "object", "description": "SAP Cloud for Customer OData query. For example, \"$top=1\". Type: string (or Expression with resultType string)." + }, + "httpRequestTimeout": { + "type": "object", + "description": "The timeout (TimeSpan) to get an HTTP response. It is the timeout to get a response, not the timeout to read response data. Default value: 00:05:00. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." } } }, @@ -1465,6 +1778,10 @@ "query": { "type": "object", "description": "SAP ECC OData query. For example, \"$top=1\". Type: string (or Expression with resultType string)." + }, + "httpRequestTimeout": { + "type": "object", + "description": "The timeout (TimeSpan) to get an HTTP response. It is the timeout to get a response, not the timeout to read response data. Default value: 00:05:00. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." } } }, @@ -1642,6 +1959,13 @@ "requestInterval": { "type": "object", "description": "The time to await before sending next page request. " + }, + "additionalColumns": { + "type": "array", + "description": "Specifies the additional columns to be added to source data. Type: array of objects (or Expression with resultType array of objects).", + "items": { + "$ref": "#/definitions/AdditionalColumns" + } } } }, @@ -1668,6 +1992,10 @@ "additionalProperties": { "$ref": "#/definitions/StoredProcedureParameter" } + }, + "isolationLevel": { + "description": "Specifies the transaction locking behavior for the SQL source. Allowed values: ReadCommitted/ReadUncommitted/RepeatableRead/Serializable/Snapshot. The default value is ReadCommitted. Type: string (or Expression with resultType string).", + "type": "object" } } }, @@ -1796,6 +2124,13 @@ "recursive": { "type": "object", "description": "If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean)." + }, + "additionalColumns": { + "type": "array", + "description": "Specifies the additional columns to be added to source data. Type: array of objects (or Expression with resultType array of objects).", + "items": { + "$ref": "#/definitions/AdditionalColumns" + } } } }, @@ -1875,6 +2210,13 @@ "queryTimeout": { "type": "object", "description": "Query timeout. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9])).." + }, + "additionalColumns": { + "type": "array", + "description": "Specifies the additional columns to be added to source data. Type: array of objects (or Expression with resultType array of objects).", + "items": { + "$ref": "#/definitions/AdditionalColumns" + } } }, "required": [ @@ -1914,6 +2256,13 @@ "partitionSettings": { "description": "The settings that will be leveraged for Oracle source partitioning.", "$ref": "#/definitions/OraclePartitionSettings" + }, + "additionalColumns": { + "type": "array", + "description": "Specifies the additional columns to be added to source data. Type: array of objects (or Expression with resultType array of objects).", + "items": { + "$ref": "#/definitions/AdditionalColumns" + } } } }, @@ -2001,7 +2350,15 @@ "$ref": "#/definitions/CopySource" } ], - "properties": {} + "properties": { + "additionalColumns": { + "type": "array", + "description": "Specifies the additional columns to be added to source data. Type: array of objects (or Expression with resultType array of objects).", + "items": { + "$ref": "#/definitions/AdditionalColumns" + } + } + } }, "CassandraSource": { "description": "A copy activity source for a Cassandra database.", @@ -2050,6 +2407,13 @@ "query": { "type": "object", "description": "Database query. Should be a SQL-92 query expression. Type: string (or Expression with resultType string)." + }, + "additionalColumns": { + "type": "array", + "description": "Specifies the additional columns to be added to source data. Type: array of objects (or Expression with resultType array of objects).", + "items": { + "$ref": "#/definitions/AdditionalColumns" + } } } }, @@ -2077,6 +2441,13 @@ "queryTimeout": { "type": "object", "description": "Query timeout. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + }, + "additionalColumns": { + "type": "array", + "description": "Specifies the additional columns to be added to source data. Type: array of objects (or Expression with resultType array of objects).", + "items": { + "$ref": "#/definitions/AdditionalColumns" + } } } }, @@ -2104,6 +2475,13 @@ "queryTimeout": { "type": "object", "description": "Query timeout. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + }, + "additionalColumns": { + "type": "array", + "description": "Specifies the additional columns to be added to source data. Type: array of objects (or Expression with resultType array of objects).", + "items": { + "$ref": "#/definitions/AdditionalColumns" + } } } }, @@ -2762,6 +3140,10 @@ "query": { "type": "object", "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + }, + "httpRequestTimeout": { + "type": "object", + "description": "The timeout (TimeSpan) to get an HTTP response. It is the timeout to get a response, not the timeout to read response data. Default value: 00:05:00. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." } } }, @@ -2832,6 +3214,67 @@ "bucketName" ] }, + "SnowflakeSource": { + "description": "A copy activity snowflake source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Snowflake Sql query. Type: string (or Expression with resultType string)." + }, + "exportSettings": { + "$ref": "#/definitions/SnowflakeExportCopyCommand", + "description": "Snowflake export settings." + } + } + }, + "ExportSettings": { + "description": "Export command settings.", + "discriminator": "type", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The export setting type." + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "SnowflakeExportCopyCommand": { + "description": "Snowflake export command settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ExportSettings" + } + ], + "properties": { + "additionalCopyOptions": { + "type": "object", + "description": "Additional copy options directly passed to snowflake Copy Command. Type: key value pairs (value should be string type) (or Expression with resultType object). Example: \"additionalCopyOptions\": { \"DATE_FORMAT\": \"MM/DD/YYYY\", \"TIME_FORMAT\": \"'HH24:MI:SS.FF'\" }", + "additionalProperties": { + "type": "object" + } + }, + "additionalFormatOptions": { + "type": "object", + "description": "Additional format options directly passed to snowflake Copy Command. Type: key value pairs (value should be string type) (or Expression with resultType object). Example: \"additionalFormatOptions\": { \"OVERWRITE\": \"TRUE\", \"MAX_FILE_SIZE\": \"'FALSE'\" }", + "additionalProperties": { + "type": "object" + } + } + } + }, "StoredProcedureParameter": { "description": "SQL stored procedure parameter.", "type": "object", @@ -2920,6 +3363,10 @@ "name": "SapCloudForCustomerSinkWriteBehavior", "modelAsString": true } + }, + "httpRequestTimeout": { + "type": "object", + "description": "The timeout (TimeSpan) to get an HTTP response. It is the timeout to get a response, not the timeout to read response data. Default value: 00:05:00. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." } } }, @@ -3356,6 +3803,67 @@ } } }, + "SnowflakeSink": { + "description": "A copy activity snowflake 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/SnowflakeImportCopyCommand", + "description": "Snowflake import settings." + } + } + }, + "ImportSettings": { + "description": "Import command settings.", + "discriminator": "type", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The import setting type." + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "SnowflakeImportCopyCommand": { + "description": "Snowflake import command settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ImportSettings" + } + ], + "properties": { + "additionalCopyOptions": { + "type": "object", + "description": "Additional copy options directly passed to snowflake Copy Command. Type: key value pairs (value should be string type) (or Expression with resultType object). Example: \"additionalCopyOptions\": { \"DATE_FORMAT\": \"MM/DD/YYYY\", \"TIME_FORMAT\": \"'HH24:MI:SS.FF'\" }", + "additionalProperties": { + "type": "object" + } + }, + "additionalFormatOptions": { + "type": "object", + "description": "Additional format options directly passed to snowflake Copy Command. Type: key value pairs (value should be string type) (or Expression with resultType object). Example: \"additionalFormatOptions\": { \"FORCE\": \"TRUE\", \"LOAD_UNCERTAIN_FILES\": \"'FALSE'\" }", + "additionalProperties": { + "type": "object" + } + } + } + }, "LogStorageSettings": { "description": "Log storage settings.", "type": "object", @@ -3420,6 +3928,34 @@ "linkedServiceName" ] }, + "SkipErrorFile": { + "description": "Skip error file.", + "type": "object", + "properties": { + "fileMissing": { + "type": "object", + "description": "Skip if file is deleted by other client during copy. Default is true. Type: boolean (or Expression with resultType boolean)." + }, + "dataInconsistency": { + "type": "object", + "description": "Skip if source/sink file changed by other concurrent write. Default is false. Type: boolean (or Expression with resultType boolean)." + } + } + }, + "AdditionalColumns": { + "description": "Specify the column name and value of additional columns.", + "type": "object", + "properties": { + "name": { + "type": "object", + "description": "Additional column name. Type: string (or Expression with resultType string)." + }, + "value": { + "type": "object", + "description": "Additional column value. Type: string (or Expression with resultType string)." + } + } + }, "OracleSink": { "description": "A copy activity Oracle sink.", "type": "object", @@ -4269,7 +4805,8 @@ "enum": [ "SSISDB", "File", - "InlinePackage" + "InlinePackage", + "PackageStore" ], "x-ms-enum": { "name": "SsisPackageLocationType", @@ -4299,6 +4836,10 @@ "description": "The configuration file of the package execution. Type: string (or Expression with resultType string).", "type": "object" }, + "configurationAccessCredential": { + "description": "The configuration file access credential.", + "$ref": "#/definitions/SSISAccessCredential" + }, "packageName": { "description": "The package name.", "type": "string" @@ -5831,6 +6372,25 @@ "required": [ "dataFlow" ] + }, + "SharePointOnlineListSource": { + "description": "A copy activity source for sharePoint online list source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "The OData query to filter the data in SharePoint Online list. For example, \"$top=1\". Type: string (or Expression with resultType string)." + }, + "httpRequestTimeout": { + "type": "object", + "description": "The wait time to get a response from SharePoint Online. Default value is 5 minutes (00:05:00). Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + } + } } } } 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 5356af606b83..6423f41ed7d3 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 @@ -504,7 +504,7 @@ "offset": { "description": "Timespan applied to the start time of a tumbling window when evaluating dependency.", "type": "string", - "pattern": "((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))", + "pattern": "-?((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))", "minLength": 8, "maxLength": 15 }, @@ -529,7 +529,7 @@ "offset": { "description": "Timespan applied to the start time of a tumbling window when evaluating dependency.", "type": "string", - "pattern": "((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))", + "pattern": "-((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))", "minLength": 8, "maxLength": 15 }, @@ -572,7 +572,7 @@ "format": "date-time", "description": "The end time for the time period for which restatement is initiated. Only UTC time is currently supported." }, - "maxConcurrency": { + "rerunConcurrency": { "description": "The max number of parallel time windows (ready for execution) for which a rerun is triggered.", "type": "integer", "minimum": 1, @@ -580,9 +580,10 @@ } }, "required": [ + "parentTrigger", "requestedStartTime", "requestedEndTime", - "maxConcurrency" + "rerunConcurrency" ] } }, diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/RerunTriggers_Cancel.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/RerunTriggers_Cancel.json deleted file mode 100644 index 1e3d8b98ec8b..000000000000 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/RerunTriggers_Cancel.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "parameters": { - "subscriptionId": "12345678-1234-1234-1234-12345678abc", - "resourceGroupName": "exampleResourceGroup", - "factoryName": "exampleFactoryName", - "triggerName": "exampleTrigger", - "rerunTriggerName": "exampleRerunTrigger", - "api-version": "2018-06-01" - }, - "responses": { - "200": {} - } -} diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/RerunTriggers_Create.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/RerunTriggers_Create.json deleted file mode 100644 index 7463511ef117..000000000000 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/RerunTriggers_Create.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "parameters": { - "subscriptionId": "12345678-1234-1234-1234-12345678abc", - "resourceGroupName": "exampleResourceGroup", - "factoryName": "exampleFactoryName", - "triggerName": "exampleTrigger", - "rerunTriggerName": "exampleRerunTrigger", - "rerunTumblingWindowTriggerActionParameters": { - "startTime": "2018-06-16T00:39:13.8441801Z", - "endTime": "2018-06-16T00:55:13.8441801Z", - "maxConcurrency": 4 - }, - "api-version": "2018-06-01" - }, - "responses": { - "200": { - "headers": { - "Date": "Sat, 16 Jun 2018 00:40:14 GMT", - "X-Content-Type-Options": "nosniff", - "x-ms-ratelimit-remaining-subscription-writes": "1186", - "x-ms-request-id": "373f1a49-685d-4c07-8857-0fcf1bcaffcb", - "x-ms-correlation-request-id": "373f1a49-685d-4c07-8857-0fcf1bcaffcb" - }, - "body": { - "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.DataFactory/factories/exampleFactoryName/triggers/exampleTrigger/rerunTriggers/exampleRerunTrigger", - "name": "exampleRerunTrigger", - "type": "Microsoft.DataFactory/factories/triggers/rerunTriggers", - "properties": { - "type": "RerunTumblingWindowTrigger", - "typeProperties": { - "requestedStartTime": "2018-06-16T00:39:13.8441801Z", - "requestedEndTime": "2018-06-16T00:55:13.8441801Z", - "maxConcurrency": 4 - } - } - } - } - } -} diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/RerunTriggers_ListByTrigger.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/RerunTriggers_ListByTrigger.json deleted file mode 100644 index e6ea096fb88f..000000000000 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/RerunTriggers_ListByTrigger.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "parameters": { - "subscriptionId": "12345678-1234-1234-1234-12345678abc", - "resourceGroupName": "exampleResourceGroup", - "factoryName": "exampleFactoryName", - "triggerName": "exampleTrigger", - "api-version": "2018-06-01" - }, - "responses": { - "200": { - "headers": { - "Date": "Sat, 16 Jun 2018 00:40:20 GMT", - "X-Content-Type-Options": "nosniff", - "x-ms-ratelimit-remaining-subscription-reads": "14986", - "x-ms-request-id": "e474f8f8-b34f-4536-b059-ca740e6b44c3", - "x-ms-correlation-request-id": "e474f8f8-b34f-4536-b059-ca740e6b44c3" - }, - "body": { - "value": [ - { - "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.DataFactory/factories/exampleFactoryName/triggers/exampleTrigger/rerunTriggers/exampleRerunTrigger", - "name": "exampleRerunTrigger", - "type": "Microsoft.DataFactory/factories/triggers/rerunTriggers", - "properties": { - "type": "RerunTumblingWindowTrigger", - "typeProperties": { - "requestedStartTime": "2018-06-16T00:39:14.905167Z", - "requestedEndTime": "2018-06-16T00:55:14.905167Z", - "maxConcurrency": 4 - }, - "description": "Example description" - } - } - ] - } - } - } -} diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/RerunTriggers_Start.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/RerunTriggers_Start.json deleted file mode 100644 index 1e3d8b98ec8b..000000000000 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/RerunTriggers_Start.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "parameters": { - "subscriptionId": "12345678-1234-1234-1234-12345678abc", - "resourceGroupName": "exampleResourceGroup", - "factoryName": "exampleFactoryName", - "triggerName": "exampleTrigger", - "rerunTriggerName": "exampleRerunTrigger", - "api-version": "2018-06-01" - }, - "responses": { - "200": {} - } -} diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/RerunTriggers_Stop.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/RerunTriggers_Stop.json deleted file mode 100644 index 1e3d8b98ec8b..000000000000 --- a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/RerunTriggers_Stop.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "parameters": { - "subscriptionId": "12345678-1234-1234-1234-12345678abc", - "resourceGroupName": "exampleResourceGroup", - "factoryName": "exampleFactoryName", - "triggerName": "exampleTrigger", - "rerunTriggerName": "exampleRerunTrigger", - "api-version": "2018-06-01" - }, - "responses": { - "200": {} - } -} diff --git a/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/Triggers_QueryByFactory.json b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/Triggers_QueryByFactory.json new file mode 100644 index 000000000000..7a266ba3b59e --- /dev/null +++ b/specification/datafactory/resource-manager/Microsoft.DataFactory/stable/2018-06-01/examples/Triggers_QueryByFactory.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "factoryName": "exampleFactoryName", + "triggerName": "exampleTrigger", + "api-version": "2018-06-01", + "filterParameters": { + "parentTriggerName": "exampleTrigger" + } + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:40:20 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14986", + "x-ms-request-id": "e474f8f8-b34f-4536-b059-ca740e6b44c3", + "x-ms-correlation-request-id": "e474f8f8-b34f-4536-b059-ca740e6b44c3" + }, + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.DataFactory/factories/exampleFactoryName/triggers/exampleRerunTrigger", + "name": "exampleRerunTrigger", + "type": "Microsoft.DataFactory/factories/triggers", + "properties": { + "type": "RerunTumblingWindowTrigger", + "typeProperties": { + "parentTrigger": "exampleTrigger", + "requestedStartTime": "2018-06-16T00:39:14.905167Z", + "requestedEndTime": "2018-06-16T00:55:14.905167Z", + "rerunConcurrency": 4 + }, + "description": "Example description" + } + } + ] + } + } + } +} diff --git a/specification/datafactory/resource-manager/readme.cli.md b/specification/datafactory/resource-manager/readme.cli.md new file mode 100644 index 000000000000..67b563417786 --- /dev/null +++ b/specification/datafactory/resource-manager/readme.cli.md @@ -0,0 +1,91 @@ +## CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +cli: + namespace: azure.mgmt.datafactory + flatten-all: true + test-scenario: + - name: Factories_CreateOrUpdate + #- name: Datasets_Create + #- name: Datasets_Update + #- name: Triggers_Update + #- name: Triggers_Create + #- name: DataFlows_Update + #- name: Pipelines_Create + #- name: DataFlows_Create + #- name: Pipelines_Update + #- name: LinkedServices_Create + #- name: LinkedServices_Update + #- name: IntegrationRuntimes_Create + #- name: RerunTriggers_Create + #- name: IntegrationRuntimeNodes_Get + #- name: IntegrationRuntimes_Get + #- name: RerunTriggers_ListByTrigger + #- name: LinkedServices_Get + #- name: PipelineRuns_Get + #- name: Pipelines_Get + #- name: DataFlows_Get + #- name: Datasets_Get + #- name: Triggers_Get + #- name: IntegrationRuntimes_ListByFactory + #- name: LinkedServices_ListByFactory + #- name: DataFlows_ListByFactory + #- name: Pipelines_ListByFactory + #- name: Triggers_ListByFactory + #- name: Datasets_ListByFactory + #- name: Factories_Get + #- name: Factories_ListByResourceGroup + #- name: Factories_List + #- name: Operations_List + #- name: IntegrationRuntimeNodes_GetIpAddress + #- name: IntegrationRuntimes_CreateLinkedIntegrationRuntime + #- name: RerunTriggers_Cancel + #- name: RerunTriggers_Start + #- name: IntegrationRuntimeNodes_Update + #- name: IntegrationRuntimeObjectMetadata_Refresh + #- name: RerunTriggers_Stop + #- name: IntegrationRuntimes_RegenerateAuthKey + #- name: Triggers_Rerun + #- name: IntegrationRuntimeObjectMetadata_Get + #- name: IntegrationRuntimes_GetConnectionInfo + #- name: IntegrationRuntimes_SyncCredentials + #- name: IntegrationRuntimes_GetMonitoringData + #- name: IntegrationRuntimes_ListAuthKeys + #- name: IntegrationRuntimes_Upgrade + #- name: IntegrationRuntimes_GetStatus + #- name: IntegrationRuntimes_Upgrade + #- name: IntegrationRuntimes_Start + #- name: IntegrationRuntimes_Stop + #- name: Triggers_GetEventSubscriptionStatus + #- name: ActivityRuns_QueryByPipelineRun + #- name: IntegrationRuntimes_Update + #- name: Triggers_UnsubscribeFromEvents + #- name: Triggers_SubscribeToEvents + #- name: PipelineRuns_Cancel + #- name: Pipelines_CreateRun + #- name: Triggers_Start + #- name: Triggers_Stop + #- name: DataFlowDebugSession_ExecuteCommand + #- name: DataFlowDebugSession_Delete + #- name: DataFlowDebugSession_Create + #- name: DataFlowDebugSession_QueryByFactory + #- name: DataFlowDebugSession_AddDataFlow + #- name: Factories_GetGitHubAccessToken + #- name: Factories_GetDataPlaneAccess + #- name: PipelineRuns_QueryByFactory + #- name: TriggerRuns_QueryByFactory + #- name: ExposureControl_GetFeatureValueByFactory + #- name: Factories_Update + #- name: Factories_ConfigureFactoryRepo + #- name: ExposureControl_GetFeatureValue + #- name: IntegrationRuntimesNodes_Delete + #- name: IntegrationRuntimes_Delete + #- name: LinkedServices_Delete + #- name: Pipelines_Delete + #- name: DataFlows_Delete + #- name: Datasets_Delete + #- name: Triggers_Delete + #- name: Factories_Delete +``` diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/Common.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/Common.json index 651b9c6840cf..3b65d498f5b7 100644 --- a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/Common.json +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/Common.json @@ -393,6 +393,16 @@ "port": { "type": "integer", "description": "Port for Server" + }, + "encryptConnection": { + "type": "boolean", + "description": "Whether to encrypt the connection", + "default": true + }, + "trustServerCertificate": { + "type": "boolean", + "description": "Whether to trust the server certificate", + "default": false } }, "allOf": [ diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/ConnectToSourceSqlServerTask.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/ConnectToSourceSqlServerTask.json index 8a573d43aafe..19a87e4bb176 100644 --- a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/ConnectToSourceSqlServerTask.json +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/ConnectToSourceSqlServerTask.json @@ -70,10 +70,12 @@ }, "resultType": { "description": "Type of result - database level or task level", - "type": "string", - "readOnly": true + "type": "string" } }, + "required": [ + "resultType" + ], "discriminator": "resultType" }, "ConnectToSourceSqlServerTaskOutputTaskLevel": { diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateMySqlAzureDbForMySqlSyncTask.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateMySqlAzureDbForMySqlSyncTask.json index dc648c4c78a7..fe9b45ba782e 100644 --- a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateMySqlAzureDbForMySqlSyncTask.json +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateMySqlAzureDbForMySqlSyncTask.json @@ -54,10 +54,12 @@ }, "resultType": { "description": "Result type", - "type": "string", - "readOnly": true + "type": "string" } }, + "required": [ + "resultType" + ], "discriminator": "resultType" }, "MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel": { diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigratePostgreSqlAzureDbForPostgreSqlSyncTask.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigratePostgreSqlAzureDbForPostgreSqlSyncTask.json index 5ab3f23177f0..1d7ffee88df1 100644 --- a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigratePostgreSqlAzureDbForPostgreSqlSyncTask.json +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigratePostgreSqlAzureDbForPostgreSqlSyncTask.json @@ -54,10 +54,12 @@ }, "resultType": { "description": "Result type", - "type": "string", - "readOnly": true + "type": "string" } }, + "required": [ + "resultType" + ], "discriminator": "resultType" }, "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel": { @@ -95,6 +97,21 @@ "type": "string", "description": "Target server name", "readOnly": true + }, + "sourceServerType": { + "$ref": "./TasksCommon.json#/definitions/ScenarioSource", + "description": "Source server type.", + "readOnly": true + }, + "targetServerType": { + "$ref": "./TasksCommon.json#/definitions/ScenarioTarget", + "description": "Target server type.", + "readOnly": true + }, + "state": { + "$ref": "./TasksCommon.json#/definitions/ReplicateMigrationState", + "description": "Migration status", + "readOnly": true } }, "allOf": [ diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSqlServerSqlDbSyncTask.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSqlServerSqlDbSyncTask.json index d4c66c777f15..4511cc58cf01 100644 --- a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSqlServerSqlDbSyncTask.json +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSqlServerSqlDbSyncTask.json @@ -53,10 +53,12 @@ }, "resultType": { "description": "Result type", - "type": "string", - "readOnly": true + "type": "string" } }, + "required": [ + "resultType" + ], "discriminator": "resultType" }, "MigrateSqlServerSqlDbSyncTaskOutputMigrationLevel": { diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSqlServerSqlDbTask.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSqlServerSqlDbTask.json index 77ae665ddf80..3c5c2a8c8b88 100644 --- a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSqlServerSqlDbTask.json +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSqlServerSqlDbTask.json @@ -53,10 +53,12 @@ }, "resultType": { "description": "Result type", - "type": "string", - "readOnly": true + "type": "string" } }, + "required": [ + "resultType" + ], "discriminator": "resultType" }, "MigrateSqlServerSqlDbTaskOutputMigrationLevel": { diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSqlServerSqlMITask.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSqlServerSqlMITask.json index 5ce2a2fd1e18..199a98afbf0e 100644 --- a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSqlServerSqlMITask.json +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSqlServerSqlMITask.json @@ -80,10 +80,12 @@ }, "resultType": { "description": "Result type", - "type": "string", - "readOnly": true + "type": "string" } }, + "required": [ + "resultType" + ], "discriminator": "resultType" }, "MigrateSqlServerSqlMITaskOutputMigrationLevel": { diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSqlServerSqlMiSyncTask.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSqlServerSqlMiSyncTask.json index e64e894a2411..7c02d9a79d76 100644 --- a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSqlServerSqlMiSyncTask.json +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSqlServerSqlMiSyncTask.json @@ -37,10 +37,12 @@ }, "resultType": { "description": "Result type", - "type": "string", - "readOnly": true + "type": "string" } }, + "required": [ + "resultType" + ], "discriminator": "resultType" }, "MigrateSqlServerSqlMISyncTaskOutputMigrationLevel": { diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSsisTask.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSsisTask.json index 38df9713771b..0816af05f169 100644 --- a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSsisTask.json +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MigrateSsisTask.json @@ -46,10 +46,12 @@ }, "resultType": { "description": "Result type", - "type": "string", - "readOnly": true + "type": "string" } }, + "required": [ + "resultType" + ], "discriminator": "resultType" }, "MigrateSsisTaskOutputMigrationLevel": { diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MongoDbTasks.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MongoDbTasks.json index 8496860bbae8..f77fd75f1558 100644 --- a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MongoDbTasks.json +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/MongoDbTasks.json @@ -442,7 +442,7 @@ "totalBytes", "totalDocuments" ], - "discriminator": "ResultType" + "discriminator": "resultType" }, "MongoDbMigrationProgress": { "x-ms-discriminator-value": "Migration", diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/OracleAzureDbPostgreSqlSyncTask.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/OracleAzureDbPostgreSqlSyncTask.json index b647d8d3ab5e..f5ac9f85f20a 100644 --- a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/OracleAzureDbPostgreSqlSyncTask.json +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/OracleAzureDbPostgreSqlSyncTask.json @@ -272,10 +272,12 @@ }, "resultType": { "description": "Result type", - "type": "string", - "readOnly": true + "type": "string" } }, + "required": [ + "resultType" + ], "discriminator": "resultType" }, "MigrateOracleAzureDbPostgreSqlSyncTaskOutputMigrationLevel": { diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/Tasks.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/Tasks.json index 8c8798a0d89b..a3f00403cf7f 100644 --- a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/Tasks.json +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/Tasks.json @@ -635,7 +635,7 @@ ] }, "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties": { - "x-ms-discriminator-value": "Migrate.PostgreSql.AzureDbForPostgreSql.Sync", + "x-ms-discriminator-value": "Migrate.PostgreSql.AzureDbForPostgreSql.SyncV2", "type": "object", "description": "Properties for the task that migrates PostgreSQL databases to Azure Database for PostgreSQL for online migrations", "properties": { diff --git a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/TasksCommon.json b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/TasksCommon.json index 7f0496f4d91a..58fd0c288280 100644 --- a/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/TasksCommon.json +++ b/specification/datamigration/resource-manager/Microsoft.DataMigration/preview/2018-07-15-preview/definitions/TasksCommon.json @@ -142,6 +142,60 @@ "modelAsString": true } }, + "ScenarioSource": { + "type": "string", + "description": "An enumeration of source type", + "enum": [ + "Access", + "DB2", + "MySQL", + "Oracle", + "SQL", + "Sybase", + "PostgreSQL", + "MongoDB", + "SQLRDS", + "MySQLRDS", + "PostgreSQLRDS" + ], + "x-ms-enum": { + "name": "ScenarioSource", + "modelAsString": true + } + }, + "ScenarioTarget": { + "type": "string", + "description": "An enumeration of target type", + "enum": [ + "SQLServer", + "SQLDB", + "SQLDW", + "SQLMI", + "AzureDBForMySql", + "AzureDBForPostgresSQL", + "MongoDB" + ], + "x-ms-enum": { + "name": "ScenarioTarget", + "modelAsString": true + } + }, + "ReplicateMigrationState": { + "type": "string", + "description": "Wrapper for replicate reported migration states.", + "enum": [ + "UNDEFINED", + "VALIDATING", + "PENDING", + "COMPLETE", + "ACTION_REQUIRED", + "FAILED" + ], + "x-ms-enum": { + "name": "ReplicateMigrationState", + "modelAsString": true + } + }, "DatabaseObjectName": { "type": "object", "description": "A representation of the name of an object in a database", @@ -1040,7 +1094,14 @@ "COMPLETE", "CANCELLING", "CANCELLED", - "FAILED" + "FAILED", + "VALIDATING", + "VALIDATION_COMPLETE", + "VALIDATION_FAILED", + "RESTORE_IN_PROGRESS", + "RESTORE_COMPLETED", + "BACKUP_IN_PROGRESS", + "BACKUP_COMPLETED" ], "x-ms-enum": { "name": "SyncDatabaseMigrationReportingState", diff --git a/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/DataShare.json b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/DataShare.json index 5894b2c12efc..16a12f490476 100644 --- a/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/DataShare.json +++ b/specification/datashare/resource-manager/Microsoft.DataShare/preview/2018-11-01-preview/DataShare.json @@ -513,7 +513,7 @@ "tags": [ "DataSet" ], - "summary": "Adds a new data set to an existing share or updates it if existing.", + "summary": "Adds a new data set to an existing share.", "description": "Create a DataSet ", "operationId": "DataSets_Create", "parameters": [ @@ -2500,7 +2500,7 @@ "tags": [ "SynchronizationSetting" ], - "summary": "Adds a new synchronization setting to an existing share or updates it if existing.", + "summary": "Adds a new synchronization setting to an existing share.", "description": "Create or update a synchronizationSetting ", "operationId": "SynchronizationSettings_Create", "parameters": [ diff --git a/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/DataShare.json b/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/DataShare.json index c0398a1681e0..07c0de6b472b 100644 --- a/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/DataShare.json +++ b/specification/datashare/resource-manager/Microsoft.DataShare/stable/2019-11-01/DataShare.json @@ -513,7 +513,7 @@ "tags": [ "DataSet" ], - "summary": "Adds a new data set to an existing share or updates it if existing.", + "summary": "Adds a new data set to an existing share.", "description": "Create a DataSet ", "operationId": "DataSets_Create", "parameters": [ @@ -2500,7 +2500,7 @@ "tags": [ "SynchronizationSetting" ], - "summary": "Adds a new synchronization setting to an existing share or updates it if existing.", + "summary": "Adds a new synchronization setting to an existing share.", "description": "Create or update a synchronizationSetting ", "operationId": "SynchronizationSettings_Create", "parameters": [ diff --git a/specification/datashare/resource-manager/readme.az.md b/specification/datashare/resource-manager/readme.az.md new file mode 100644 index 000000000000..adec34b35089 --- /dev/null +++ b/specification/datashare/resource-manager/readme.az.md @@ -0,0 +1,24 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +``` yaml $(az) +az: + extensions: datashare + namespace: azure.mgmt.datashare + package-name: azure-mgmt-datashare +az-output-folder: $(azure-cli-extension-folder)/src/datashare +python-sdk-output-folder: "$(az-output-folder)/azext_datashare/vendored_sdks/datashare" + +#cli: +# cli-directive: +# directive on operationGroup +# - select: 'operationGroup' +# where: +# operationGroup: 'operations' +# hidden: true +# - where: +# parameter: location +# required: true + +``` diff --git a/specification/datashare/resource-manager/readme.cli.md b/specification/datashare/resource-manager/readme.cli.md new file mode 100644 index 000000000000..a9e918eefe21 --- /dev/null +++ b/specification/datashare/resource-manager/readme.cli.md @@ -0,0 +1,9 @@ + CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +#cli: +# test-scenario: +# - name: Factories_CreateOrUpdate +``` diff --git a/specification/datashare/resource-manager/readme.md b/specification/datashare/resource-manager/readme.md index f6dc9607cdb6..5d1040195bd8 100644 --- a/specification/datashare/resource-manager/readme.md +++ b/specification/datashare/resource-manager/readme.md @@ -62,6 +62,7 @@ swagger-to-sdk: - repo: azure-sdk-for-net - repo: azure-sdk-for-python - repo: azure-sdk-for-go + - repo: azure-cli-extensions ``` diff --git a/specification/datashare/resource-manager/readme.python.md b/specification/datashare/resource-manager/readme.python.md new file mode 100644 index 000000000000..aa1ddf769499 --- /dev/null +++ b/specification/datashare/resource-manager/readme.python.md @@ -0,0 +1,25 @@ +## 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 + namespace: azure.mgmt.datashare + package-name: azure-mgmt-datashare + package-version: 2019-11-01 + clear-output-folder: true +``` + +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/datashare/azure-mgmt-datashare/azure/mgmt/datashare +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/datashare/azure-mgmt-datashare +``` \ No newline at end of file diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/deploymentmanager.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/deploymentmanager.json index b627b27b959f..b47f17c0a57f 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/deploymentmanager.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/deploymentmanager.json @@ -1067,7 +1067,7 @@ "operationId": "Rollouts_List", "summary": "Lists the rollouts in a resource group.", "x-ms-examples": { - "List rollouts by resource group" : { + "List rollouts by resource group": { "$ref": "./examples/rollouts_list.json" } }, @@ -2495,4 +2495,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsource_createorupdate.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsource_createorupdate.json index f20743c1a4af..33fc29f32d8e 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsource_createorupdate.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsource_createorupdate.json @@ -1,40 +1,40 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "artifactSourceName": "myArtifactSource", - "api-version": "2019-11-01-preview", - "artifactSourceInfo": { - "location": "centralus", - "tags": {}, - "properties": { - "sourceType": "AzureStorage", - "authentication": { - "type": "Sas", - "properties": { - "sasUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" - } - } - } + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "artifactSourceName": "myArtifactSource", + "api-version": "2019-11-01-preview", + "artifactSourceInfo": { + "location": "centralus", + "tags": {}, + "properties": { + "sourceType": "AzureStorage", + "authentication": { + "type": "Sas", + "properties": { + "sasUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" + } } - }, - "responses": { - "201": { - "body": { - "name": "myArtifactSource", - "type": "Microsoft.DeploymentManager/artifactSources", - "location": "centralus", - "tags": {}, - "properties": { - "sourceType": "AzureStorage", - "authentication": { - "type": "Sas", - "properties": { - "sasUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" - } - } - } + } + } + }, + "responses": { + "201": { + "body": { + "name": "myArtifactSource", + "type": "Microsoft.DeploymentManager/artifactSources", + "location": "centralus", + "tags": {}, + "properties": { + "sourceType": "AzureStorage", + "authentication": { + "type": "Sas", + "properties": { + "sasUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" } + } } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsource_createorupdate_artifactroot.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsource_createorupdate_artifactroot.json index 9d664c0186d8..35571cebc988 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsource_createorupdate_artifactroot.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsource_createorupdate_artifactroot.json @@ -1,41 +1,41 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "artifactSourceName": "myArtifactSource", - "api-version": "2019-11-01-preview", - "artifactSourceInfo": { - "location": "centralus", - "tags": {}, - "properties": { - "sourceType": "AzureStorage", - "artifactRoot": "1.0.0.0", - "authentication": { - "type": "Sas", - "properties": { - "sasUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" - } - } - } + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "artifactSourceName": "myArtifactSource", + "api-version": "2019-11-01-preview", + "artifactSourceInfo": { + "location": "centralus", + "tags": {}, + "properties": { + "sourceType": "AzureStorage", + "artifactRoot": "1.0.0.0", + "authentication": { + "type": "Sas", + "properties": { + "sasUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" + } } - }, - "responses": { - "201": { - "body": { - "name": "myArtifactSource", - "type": "Microsoft.DeploymentManager/artifactSources", - "location": "centralus", - "tags": {}, - "properties": { - "sourceType": "AzureStorage", - "authentication": { - "type": "Sas", - "properties": { - "sasUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" - } - } - } + } + } + }, + "responses": { + "201": { + "body": { + "name": "myArtifactSource", + "type": "Microsoft.DeploymentManager/artifactSources", + "location": "centralus", + "tags": {}, + "properties": { + "sourceType": "AzureStorage", + "authentication": { + "type": "Sas", + "properties": { + "sasUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" } + } } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsource_delete.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsource_delete.json index 9bdd1a2b8df3..0b1a1669cd5b 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsource_delete.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsource_delete.json @@ -1,12 +1,12 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "artifactSourceName": "myArtifactSource", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": {}, - "204": {} - } -} \ No newline at end of file + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "artifactSourceName": "myArtifactSource", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsource_get.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsource_get.json index 6008aaf71d99..10b2de4cbe8f 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsource_get.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsource_get.json @@ -1,27 +1,27 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "artifactSourceName": "myArtifactSource", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": { - "body": { - "name": "myArtifactSource", - "type": "Microsoft.DeploymentManager/artifactSources", - "location": "centralus", - "tags": {}, - "properties": { - "sourceType": "AzureStorage", - "authentication": { - "type": "Sas", - "properties": { - "sasUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" - } - } - } + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "artifactSourceName": "myArtifactSource", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "myArtifactSource", + "type": "Microsoft.DeploymentManager/artifactSources", + "location": "centralus", + "tags": {}, + "properties": { + "sourceType": "AzureStorage", + "authentication": { + "type": "Sas", + "properties": { + "sasUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" } + } } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsources_list.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsources_list.json index c96954920d11..0b269f9f6f25 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsources_list.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/artifactsources_list.json @@ -1,44 +1,44 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": { - "body": [ - { - "name": "TemplatesArtifactSource", - "type": "Microsoft.DeploymentManager/artifactSources", - "location": "centralus", - "tags": {}, - "properties": { - "sourceType": "AzureStorage", - "authentication": { - "type": "Sas", - "properties": { - "sasUri": "https://mystorageaccount.blob.core.windows.net/templates?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" - } - } - } - }, - { - "name": "BinariesArtifactSource", - "type": "Microsoft.DeploymentManager/artifactSources", - "location": "centralus", - "tags": {}, - "properties": { - "sourceType": "AzureStorage", - "artifactRoot": "builds/1.0.0.1", - "authentication": { - "type": "Sas", - "properties": { - "sasUri": "https://mystorageaccount.blob.core.windows.net/binaries?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" - } - } - } - } - ] + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": [ + { + "name": "TemplatesArtifactSource", + "type": "Microsoft.DeploymentManager/artifactSources", + "location": "centralus", + "tags": {}, + "properties": { + "sourceType": "AzureStorage", + "authentication": { + "type": "Sas", + "properties": { + "sasUri": "https://mystorageaccount.blob.core.windows.net/templates?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" + } + } + } + }, + { + "name": "BinariesArtifactSource", + "type": "Microsoft.DeploymentManager/artifactSources", + "location": "centralus", + "tags": {}, + "properties": { + "sourceType": "AzureStorage", + "artifactRoot": "builds/1.0.0.1", + "authentication": { + "type": "Sas", + "properties": { + "sasUri": "https://mystorageaccount.blob.core.windows.net/binaries?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" + } + } + } } + ] } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/operations_list.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/operations_list.json index e7afad6252df..4eead345f910 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/operations_list.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/operations_list.json @@ -1,166 +1,166 @@ { - "parameters": { - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "name": "Microsoft.DeploymentManager/serviceTopologies/read", - "display": { - "provider": "Azure Deployment Manager", - "resource": "ServiceTopology", - "operation": "View service topology", - "description": "View the properties of a service topology" - } - }, - { - "name": "Microsoft.DeploymentManager/serviceTopologies/write", - "display": { - "provider": "Azure Deployment Manager", - "resource": "ServiceTopology", - "operation": "Update the service topology", - "description": "Create a new topology or update the properties of an existing topology" - } - }, - { - "name": "Microsoft.DeploymentManager/serviceTopologies/delete", - "display": { - "provider": "Azure Deployment Manager", - "resource": "ServiceTopology", - "operation": "Delete service topology", - "description": "Deletes an existing topology." - } - }, - { - "name": "Microsoft.DeploymentManager/serviceTopologies/services/read", - "display": { - "provider": "Azure Deployment Manager", - "resource": "Service", - "operation": "View service in a topology", - "description": "View the properties of a service in a service topology" - } - }, - { - "name": "Microsoft.DeploymentManager/serviceTopologies/services/write", - "display": { - "provider": "Azure Deployment Manager", - "resource": "Service", - "operation": "Update the service in a topology", - "description": "Create a new service or update the properties of an existing service" - } - }, - { - "name": "Microsoft.DeploymentManager/serviceTopologies/services/delete", - "display": { - "provider": "Azure Deployment Manager", - "resource": "Service", - "operation": "Delete service", - "description": "Deletes an existing service in a service topology." - } - }, - { - "name": "Microsoft.DeploymentManager/serviceTopologies/services/serviceUnits/read", - "display": { - "provider": "Azure Deployment Manager", - "resource": "ServiceUnit", - "operation": "View service unit", - "description": "View the properties of a service unit" - } - }, - { - "name": "Microsoft.DeploymentManager/serviceTopologies/services/serviceUnits/write", - "display": { - "provider": "Azure Deployment Manager", - "resource": "ServiceUnit", - "operation": "Update the service unit", - "description": "Create a new service unit or update the properties of an existing service unit" - } - }, - { - "name": "Microsoft.DeploymentManager/serviceTopologies/services/serviceUnits/delete", - "display": { - "provider": "Azure Deployment Manager", - "resource": "ServiceUnit", - "operation": "Delete service unit", - "description": "Deletes an existing service unit." - } - }, - { - "name": "Microsoft.DeploymentManager/artifactSources/read", - "display": { - "provider": "Azure Deployment Manager", - "resource": "ArtifactSource", - "operation": "View artifact source", - "description": "View the properties of an artifact source." - } - }, - { - "name": "Microsoft.DeploymentManager/artifactSources/write", - "display": { - "provider": "Azure Deployment Manager", - "resource": "ArtifactSource", - "operation": "Update the artifact source", - "description": "Create a new artifact source or updates the properties of an existing artifact source." - } - }, - { - "name": "Microsoft.DeploymentManager/artifactSources/delete", - "display": { - "provider": "Azure Deployment Manager", - "resource": "ArtifactSource", - "operation": "Delete artifact source", - "description": "Deletes an existing artifact source." - } - }, - { - "name": "Microsoft.DeploymentManager/rollouts/read", - "display": { - "provider": "Azure Deployment Manager", - "resource": "Rollout", - "operation": "View rollout", - "description": "View the properties of rollout." - } - }, - { - "name": "Microsoft.DeploymentManager/rollouts/write", - "display": { - "provider": "Azure Deployment Manager", - "resource": "Rollout", - "operation": "Create or update a rollout.", - "description": "Create a new rollout or update an existing rollout." - } - }, - { - "name": "Microsoft.DeploymentManager/rollouts/restart", - "display": { - "provider": "Azure Deployment Manager", - "resource": "Rollout", - "operation": "Restart a rollout", - "description": "Restarts a failed rollout." - } - }, - { - "name": "Microsoft.DeploymentManager/rollouts/cancel", - "display": { - "provider": "Azure Deployment Manager", - "resource": "Rollout", - "operation": "Cancel a rollout", - "description": "Cancel a rollout in progress." - } - }, - { - "name": "Microsoft.DeploymentManager/rollouts/delete", - "display": { - "provider": "Azure Deployment Manager", - "resource": "Rollout", - "operation": "Delete rollout", - "description": "Deletes an existing rollout." - } - } - ] - } - } + "parameters": { + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.DeploymentManager/serviceTopologies/read", + "display": { + "provider": "Azure Deployment Manager", + "resource": "ServiceTopology", + "operation": "View service topology", + "description": "View the properties of a service topology" + } + }, + { + "name": "Microsoft.DeploymentManager/serviceTopologies/write", + "display": { + "provider": "Azure Deployment Manager", + "resource": "ServiceTopology", + "operation": "Update the service topology", + "description": "Create a new topology or update the properties of an existing topology" + } + }, + { + "name": "Microsoft.DeploymentManager/serviceTopologies/delete", + "display": { + "provider": "Azure Deployment Manager", + "resource": "ServiceTopology", + "operation": "Delete service topology", + "description": "Deletes an existing topology." + } + }, + { + "name": "Microsoft.DeploymentManager/serviceTopologies/services/read", + "display": { + "provider": "Azure Deployment Manager", + "resource": "Service", + "operation": "View service in a topology", + "description": "View the properties of a service in a service topology" + } + }, + { + "name": "Microsoft.DeploymentManager/serviceTopologies/services/write", + "display": { + "provider": "Azure Deployment Manager", + "resource": "Service", + "operation": "Update the service in a topology", + "description": "Create a new service or update the properties of an existing service" + } + }, + { + "name": "Microsoft.DeploymentManager/serviceTopologies/services/delete", + "display": { + "provider": "Azure Deployment Manager", + "resource": "Service", + "operation": "Delete service", + "description": "Deletes an existing service in a service topology." + } + }, + { + "name": "Microsoft.DeploymentManager/serviceTopologies/services/serviceUnits/read", + "display": { + "provider": "Azure Deployment Manager", + "resource": "ServiceUnit", + "operation": "View service unit", + "description": "View the properties of a service unit" + } + }, + { + "name": "Microsoft.DeploymentManager/serviceTopologies/services/serviceUnits/write", + "display": { + "provider": "Azure Deployment Manager", + "resource": "ServiceUnit", + "operation": "Update the service unit", + "description": "Create a new service unit or update the properties of an existing service unit" + } + }, + { + "name": "Microsoft.DeploymentManager/serviceTopologies/services/serviceUnits/delete", + "display": { + "provider": "Azure Deployment Manager", + "resource": "ServiceUnit", + "operation": "Delete service unit", + "description": "Deletes an existing service unit." + } + }, + { + "name": "Microsoft.DeploymentManager/artifactSources/read", + "display": { + "provider": "Azure Deployment Manager", + "resource": "ArtifactSource", + "operation": "View artifact source", + "description": "View the properties of an artifact source." + } + }, + { + "name": "Microsoft.DeploymentManager/artifactSources/write", + "display": { + "provider": "Azure Deployment Manager", + "resource": "ArtifactSource", + "operation": "Update the artifact source", + "description": "Create a new artifact source or updates the properties of an existing artifact source." + } + }, + { + "name": "Microsoft.DeploymentManager/artifactSources/delete", + "display": { + "provider": "Azure Deployment Manager", + "resource": "ArtifactSource", + "operation": "Delete artifact source", + "description": "Deletes an existing artifact source." + } + }, + { + "name": "Microsoft.DeploymentManager/rollouts/read", + "display": { + "provider": "Azure Deployment Manager", + "resource": "Rollout", + "operation": "View rollout", + "description": "View the properties of rollout." + } + }, + { + "name": "Microsoft.DeploymentManager/rollouts/write", + "display": { + "provider": "Azure Deployment Manager", + "resource": "Rollout", + "operation": "Create or update a rollout.", + "description": "Create a new rollout or update an existing rollout." + } + }, + { + "name": "Microsoft.DeploymentManager/rollouts/restart", + "display": { + "provider": "Azure Deployment Manager", + "resource": "Rollout", + "operation": "Restart a rollout", + "description": "Restarts a failed rollout." + } + }, + { + "name": "Microsoft.DeploymentManager/rollouts/cancel", + "display": { + "provider": "Azure Deployment Manager", + "resource": "Rollout", + "operation": "Cancel a rollout", + "description": "Cancel a rollout in progress." + } + }, + { + "name": "Microsoft.DeploymentManager/rollouts/delete", + "display": { + "provider": "Azure Deployment Manager", + "resource": "Rollout", + "operation": "Delete rollout", + "description": "Deletes an existing rollout." + } + } + ] + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_createorupdate.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_createorupdate.json index 5ecd2a2b9313..613903aa42a3 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_createorupdate.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_createorupdate.json @@ -1,122 +1,122 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "rolloutName": "myRollout", - "api-version": "2019-11-01-preview", - "rolloutRequest": { - "location": "centralus", - "tags": {}, - "identity": { - "type": "userAssigned", - "identityIds": [ - "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userassignedidentities/myuseridentity" - ] + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "rolloutName": "myRollout", + "api-version": "2019-11-01-preview", + "rolloutRequest": { + "location": "centralus", + "tags": {}, + "identity": { + "type": "userAssigned", + "identityIds": [ + "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userassignedidentities/myuseridentity" + ] + }, + "properties": { + "buildVersion": "1.0.0.1", + "artifactSourceId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/artifactSources/myArtifactSource", + "targetServiceTopologyId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/serviceTopologies/myTopology", + "stepGroups": [ + { + "name": "FirstRegion", + "preDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep1" + }, + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep2" + } + ], + "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit1'", + "postDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/postDeployStep1" + } + ] + }, + { + "name": "SecondRegion", + "preDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep3" + }, + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep4" + } + ], + "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit2'", + "postDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/postDeployStep5" + } + ], + "dependsOnStepGroups": [ + "FirstRegion" + ] + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "name": "myRollout", + "type": "Microsoft.DeploymentManager/rollouts", + "location": "centralus", + "tags": {}, + "identity": { + "type": "userAssigned", + "identityIds": [ + "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userassignedidentities/myuseridentity" + ] + }, + "properties": { + "buildVersion": "1.0.0.1", + "artifactSourceId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/artifactSources/myArtifactSource", + "targetServiceTopologyId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/serviceTopologies/myTopology", + "stepGroups": [ + { + "name": "FirstRegion", + "preDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep1" + }, + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep2" + } + ], + "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit1'", + "postDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/postDeployStep1" + } + ] }, - "properties": { - "buildVersion": "1.0.0.1", - "artifactSourceId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/artifactSources/myArtifactSource", - "targetServiceTopologyId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/serviceTopologies/myTopology", - "stepGroups": [ - { - "name": "FirstRegion", - "preDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep1" - }, - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep2" - } - ], - "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit1'", - "postDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/postDeployStep1" - } - ] - }, - { - "name": "SecondRegion", - "preDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep3" - }, - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep4" - } - ], - "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit2'", - "postDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/postDeployStep5" - } - ], - "dependsOnStepGroups": [ - "FirstRegion" - ] - } - ] - } - } - }, - "responses": { - "201": { - "body": { - "name": "myRollout", - "type": "Microsoft.DeploymentManager/rollouts", - "location": "centralus", - "tags": {}, - "identity": { - "type": "userAssigned", - "identityIds": [ - "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userassignedidentities/myuseridentity" - ] + { + "name": "SecondRegion", + "preDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep3" }, - "properties": { - "buildVersion": "1.0.0.1", - "artifactSourceId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/artifactSources/myArtifactSource", - "targetServiceTopologyId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/serviceTopologies/myTopology", - "stepGroups": [ - { - "name": "FirstRegion", - "preDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep1" - }, - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep2" - } - ], - "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit1'", - "postDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/postDeployStep1" - } - ] - }, - { - "name": "SecondRegion", - "preDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep3" - }, - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep4" - } - ], - "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit2'", - "postDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/postDeployStep5" - } - ], - "dependsOnStepGroups": [ - "FirstRegion" - ] - } - ] + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep4" + } + ], + "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit2'", + "postDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/postDeployStep5" } + ], + "dependsOnStepGroups": [ + "FirstRegion" + ] } + ] } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_delete.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_delete.json index acc12c224ca5..f333360355b2 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_delete.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_delete.json @@ -1,12 +1,12 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "rolloutName": "myRollout", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": {}, - "204": {} - } -} \ No newline at end of file + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "rolloutName": "myRollout", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_get.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_get.json index 9e25323db3e6..1792416c65a1 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_get.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_get.json @@ -1,124 +1,124 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "rolloutName": "myRollout", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": { - "body": { - "name": "myRollout", - "type": "Microsoft.DeploymentManager/rollouts", - "location": "centralus", - "tags": {}, - "identity": { - "type": "userAssigned", - "identityIds": [ - "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userassignedidentities/myuseridentity" - ] + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "rolloutName": "myRollout", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "myRollout", + "type": "Microsoft.DeploymentManager/rollouts", + "location": "centralus", + "tags": {}, + "identity": { + "type": "userAssigned", + "identityIds": [ + "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userassignedidentities/myuseridentity" + ] + }, + "properties": { + "status": "Running", + "operationInfo": { + "startTime": "2018-08-28T03:33:56.386Z", + "retryAttempt": 0 + }, + "totalRetryAttempts": 0, + "buildVersion": "1.0.0.1", + "artifactSourceId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/artifactSources/myArtifactSource", + "targetServiceTopologyId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/serviceTopologies/myTopology", + "stepGroups": [ + { + "name": "FirstRegion", + "preDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep1" }, - "properties": { - "status": "Running", - "operationInfo": { + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep2" + } + ], + "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit1'", + "postDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/postDeployStep1" + } + ] + }, + { + "name": "SecondRegion", + "preDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep3" + }, + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep4" + } + ], + "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit2'", + "postDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/postDeployStep5" + } + ], + "dependsOnStepGroups": [ + "FirstRegion" + ] + } + ], + "services": [ + { + "name": "myService1", + "targetSubscriptionId": "600c95c5-3ee5-44fe-b190-ca38a19adcd7", + "targetLocation": "centralus", + "serviceUnits": [ + { + "name": "myTopologyUni1", + "targetResourceGroup": "myDeploymentResourceGroup", + "deploymentMode": "Incremental", + "steps": [ + { + "name": "preDeploymentStep1", + "status": "succeeded", + "operationInfo": { "startTime": "2018-08-28T03:33:56.386Z", - "retryAttempt": 0 + "endTime": "2018-08-28T03:35:28.556Z" + } }, - "totalRetryAttempts": 0, - "buildVersion": "1.0.0.1", - "artifactSourceId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/artifactSources/myArtifactSource", - "targetServiceTopologyId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/serviceTopologies/myTopology", - "stepGroups": [ - { - "name": "FirstRegion", - "preDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep1" - }, - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep2" - } - ], - "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit1'", - "postDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/postDeployStep1" - } - ] - }, - { - "name": "SecondRegion", - "preDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep3" - }, - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep4" - } - ], - "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit2'", - "postDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/postDeployStep5" - } - ], - "dependsOnStepGroups": [ - "FirstRegion" - ] - } - ], - "services": [ + { + "name": "preDeploymentStep2", + "status": "succeeded", + "operationInfo": { + "startTime": "2018-08-28T03:36:56.386Z", + "endTime": "2018-08-28T03:37:28.556Z" + } + }, + { + "name": "deploy", + "status": "running", + "operationInfo": { + "startTime": "2018-08-28T03:38:56.386Z", + "lastUpdatedTime": "2018-08-28T03:39:28.556Z" + }, + "resourceOperations": [ { - "name": "myService1", - "targetSubscriptionId": "600c95c5-3ee5-44fe-b190-ca38a19adcd7", - "targetLocation": "centralus", - "serviceUnits": [ - { - "name": "myTopologyUni1", - "targetResourceGroup": "myDeploymentResourceGroup", - "deploymentMode": "Incremental", - "steps": [ - { - "name": "preDeploymentStep1", - "status": "succeeded", - "operationInfo": { - "startTime": "2018-08-28T03:33:56.386Z", - "endTime": "2018-08-28T03:35:28.556Z" - } - }, - { - "name": "preDeploymentStep2", - "status": "succeeded", - "operationInfo": { - "startTime": "2018-08-28T03:36:56.386Z", - "endTime": "2018-08-28T03:37:28.556Z" - } - }, - { - "name": "deploy", - "status": "running", - "operationInfo": { - "startTime": "2018-08-28T03:38:56.386Z", - "lastUpdatedTime": "2018-08-28T03:39:28.556Z" - }, - "resourceOperations": [ - { - "resourceName": "keyVaultcentralus", - "operationId": "20FC5A21382DA306", - "resourceType": "Microsoft.KeyVault/vaults", - "provisioningState": "Succeeded", - "statusMessage": "", - "statusCode": "OK" - } - ] - } - ] - } - ] + "resourceName": "keyVaultcentralus", + "operationId": "20FC5A21382DA306", + "resourceType": "Microsoft.KeyVault/vaults", + "provisioningState": "Succeeded", + "statusMessage": "", + "statusCode": "OK" } - ] + ] + } + ] } + ] } + ] } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_post_cancel.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_post_cancel.json index 0e701fec5a02..0c70c7ad973e 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_post_cancel.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_post_cancel.json @@ -1,124 +1,124 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "rolloutName": "myRollout", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": { - "body": { - "name": "myRollout", - "type": "Microsoft.DeploymentManager/rollouts", - "location": "centralus", - "tags": {}, - "identity": { - "type": "userAssigned", - "identityIds": [ - "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userassignedidentities/myuseridentity" - ] + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "rolloutName": "myRollout", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "myRollout", + "type": "Microsoft.DeploymentManager/rollouts", + "location": "centralus", + "tags": {}, + "identity": { + "type": "userAssigned", + "identityIds": [ + "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userassignedidentities/myuseridentity" + ] + }, + "properties": { + "status": "Canceling", + "operationInfo": { + "startTime": "2018-08-28T03:33:56.386Z", + "retryAttempt": 0 + }, + "totalRetryAttempts": 0, + "buildVersion": "1.0.0.1", + "artifactSourceId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/artifactSources/myArtifactSource", + "targetServiceTopologyId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/serviceTopologies/myTopology", + "stepGroups": [ + { + "name": "FirstRegion", + "preDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep1" }, - "properties": { - "status": "Canceling", - "operationInfo": { + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep2" + } + ], + "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit1'", + "postDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/postDeployStep1" + } + ] + }, + { + "name": "SecondRegion", + "preDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep3" + }, + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep4" + } + ], + "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit2'", + "postDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/postDeployStep5" + } + ], + "dependsOnStepGroups": [ + "FirstRegion" + ] + } + ], + "services": [ + { + "name": "myService1", + "targetSubscriptionId": "600c95c5-3ee5-44fe-b190-ca38a19adcd7", + "targetLocation": "centralus", + "serviceUnits": [ + { + "name": "myTopologyUni1", + "targetResourceGroup": "myDeploymentResourceGroup", + "deploymentMode": "Incremental", + "steps": [ + { + "name": "preDeploymentStep1", + "status": "succeeded", + "operationInfo": { "startTime": "2018-08-28T03:33:56.386Z", - "retryAttempt": 0 + "endTime": "2018-08-28T03:35:28.556Z" + } }, - "totalRetryAttempts": 0, - "buildVersion": "1.0.0.1", - "artifactSourceId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/artifactSources/myArtifactSource", - "targetServiceTopologyId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/serviceTopologies/myTopology", - "stepGroups": [ - { - "name": "FirstRegion", - "preDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep1" - }, - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep2" - } - ], - "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit1'", - "postDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/postDeployStep1" - } - ] - }, - { - "name": "SecondRegion", - "preDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep3" - }, - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep4" - } - ], - "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit2'", - "postDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/postDeployStep5" - } - ], - "dependsOnStepGroups": [ - "FirstRegion" - ] - } - ], - "services": [ + { + "name": "preDeploymentStep2", + "status": "succeeded", + "operationInfo": { + "startTime": "2018-08-28T03:36:56.386Z", + "endTime": "2018-08-28T03:37:28.556Z" + } + }, + { + "name": "deploy", + "status": "running", + "operationInfo": { + "startTime": "2018-08-28T03:38:56.386Z", + "lastUpdatedTime": "2018-08-28T03:39:28.556Z" + }, + "resourceOperations": [ { - "name": "myService1", - "targetSubscriptionId": "600c95c5-3ee5-44fe-b190-ca38a19adcd7", - "targetLocation": "centralus", - "serviceUnits": [ - { - "name": "myTopologyUni1", - "targetResourceGroup": "myDeploymentResourceGroup", - "deploymentMode": "Incremental", - "steps": [ - { - "name": "preDeploymentStep1", - "status": "succeeded", - "operationInfo": { - "startTime": "2018-08-28T03:33:56.386Z", - "endTime": "2018-08-28T03:35:28.556Z" - } - }, - { - "name": "preDeploymentStep2", - "status": "succeeded", - "operationInfo": { - "startTime": "2018-08-28T03:36:56.386Z", - "endTime": "2018-08-28T03:37:28.556Z" - } - }, - { - "name": "deploy", - "status": "running", - "operationInfo": { - "startTime": "2018-08-28T03:38:56.386Z", - "lastUpdatedTime": "2018-08-28T03:39:28.556Z" - }, - "resourceOperations": [ - { - "resourceName": "keyVaultcentralus", - "operationId": "20FC5A21382DA306", - "resourceType": "Microsoft.KeyVault/vaults", - "provisioningState": "Succeeded", - "statusMessage": "", - "statusCode": "OK" - } - ] - } - ] - } - ] + "resourceName": "keyVaultcentralus", + "operationId": "20FC5A21382DA306", + "resourceType": "Microsoft.KeyVault/vaults", + "provisioningState": "Succeeded", + "statusMessage": "", + "statusCode": "OK" } - ] + ] + } + ] } + ] } + ] } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_post_restart.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_post_restart.json index c9b4fef98cd6..a31926654dd9 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_post_restart.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollout_post_restart.json @@ -1,75 +1,75 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "rolloutName": "myRollout", - "skipSucceeded": true, - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": { - "body": { - "name": "myRollout", - "type": "Microsoft.DeploymentManager/rollouts", - "location": "centralus", - "tags": {}, - "identity": { - "type": "userAssigned", - "identityIds": [ - "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userassignedidentities/myuseridentity" - ] + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "rolloutName": "myRollout", + "skipSucceeded": true, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "myRollout", + "type": "Microsoft.DeploymentManager/rollouts", + "location": "centralus", + "tags": {}, + "identity": { + "type": "userAssigned", + "identityIds": [ + "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userassignedidentities/myuseridentity" + ] + }, + "properties": { + "status": "Running", + "operationInfo": { + "startTime": "2018-08-28T03:33:56.386Z", + "retryAttempt": 1 + }, + "totalRetryAttempts": 1, + "buildVersion": "1.0.0.1", + "artifactSourceId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/artifactSources/myArtifactSource", + "targetServiceTopologyId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/serviceTopologies/myTopology", + "stepGroups": [ + { + "name": "FirstRegion", + "preDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep1" }, - "properties": { - "status": "Running", - "operationInfo": { - "startTime": "2018-08-28T03:33:56.386Z", - "retryAttempt": 1 - }, - "totalRetryAttempts": 1, - "buildVersion": "1.0.0.1", - "artifactSourceId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/artifactSources/myArtifactSource", - "targetServiceTopologyId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/serviceTopologies/myTopology", - "stepGroups": [ - { - "name": "FirstRegion", - "preDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep1" - }, - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep2" - } - ], - "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit1'", - "postDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/postDeployStep1" - } - ] - }, - { - "name": "SecondRegion", - "preDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep3" - }, - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep4" - } - ], - "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit2'", - "postDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/postDeployStep5" - } - ], - "dependsOnStepGroups": [ - "FirstRegion" - ] - } - ] + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep2" } + ], + "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit1'", + "postDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/postDeployStep1" + } + ] + }, + { + "name": "SecondRegion", + "preDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep3" + }, + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep4" + } + ], + "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit2'", + "postDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/postDeployStep5" + } + ], + "dependsOnStepGroups": [ + "FirstRegion" + ] } + ] } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollouts_list.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollouts_list.json index dd2d56e65529..1649daa12071 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollouts_list.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/rollouts_list.json @@ -1,101 +1,101 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": { - "body": [ - { - "name": "CanaryRollout", - "type": "Microsoft.DeploymentManager/rollouts", - "location": "centralus", - "tags": {}, - "identity": { - "type": "userAssigned", - "identityIds": [ - "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userassignedidentities/myuseridentity" - ] - }, - "properties": { - "status": "Succeeded", - "operationInfo": { - "startTime": "2018-08-28T03:33:56.386Z", - "endTime": "2018-08-28T03:43:55.010Z", - "retryAttempt": 0 - }, - "totalRetryAttempts": 0, - "buildVersion": "1.0.0.1", - "artifactSourceId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/artifactSources/binariesArtifactSource", - "targetServiceTopologyId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/serviceTopologies/myTopology", - "stepGroups": [ - { - "name": "FirstRegion", - "preDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep1" - }, - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep2" - } - ], - "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit1'", - "postDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/postDeployStep1" - } - ] - } - ] - } - }, - { - "name": "ProdRollout", - "type": "Microsoft.DeploymentManager/rollouts", - "location": "centralus", - "tags": {}, - "identity": { - "type": "userAssigned", - "identityIds": [ - "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userassignedidentities/myuseridentity" - ] - }, - "properties": { - "status": "Running", - "operationInfo": { - "startTime": "2019-05-02T03:33:56.386Z", - "retryAttempt": 0 - }, - "totalRetryAttempts": 0, - "buildVersion": "1.0.0.1", - "artifactSourceId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/artifactSources/binariesArtifactSource", - "targetServiceTopologyId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/serviceTopologies/myTopology", - "stepGroups": [ - { - "name": "ProdRegion", - "preDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep" - }, - { - "stepId": "Microsoft.DeploymentManager/steps/preDeployStep2" - } - ], - "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit2'", - "postDeploymentSteps": [ - { - "stepId": "Microsoft.DeploymentManager/steps/postDeployStep3" - } - ], - "dependsOnStepGroups": [ - "FirstRegion" - ] - } - ] - } - } + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": [ + { + "name": "CanaryRollout", + "type": "Microsoft.DeploymentManager/rollouts", + "location": "centralus", + "tags": {}, + "identity": { + "type": "userAssigned", + "identityIds": [ + "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userassignedidentities/myuseridentity" ] + }, + "properties": { + "status": "Succeeded", + "operationInfo": { + "startTime": "2018-08-28T03:33:56.386Z", + "endTime": "2018-08-28T03:43:55.010Z", + "retryAttempt": 0 + }, + "totalRetryAttempts": 0, + "buildVersion": "1.0.0.1", + "artifactSourceId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/artifactSources/binariesArtifactSource", + "targetServiceTopologyId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/serviceTopologies/myTopology", + "stepGroups": [ + { + "name": "FirstRegion", + "preDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep1" + }, + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep2" + } + ], + "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit1'", + "postDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/postDeployStep1" + } + ] + } + ] + } + }, + { + "name": "ProdRollout", + "type": "Microsoft.DeploymentManager/rollouts", + "location": "centralus", + "tags": {}, + "identity": { + "type": "userAssigned", + "identityIds": [ + "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/providers/Microsoft.ManagedIdentity/userassignedidentities/myuseridentity" + ] + }, + "properties": { + "status": "Running", + "operationInfo": { + "startTime": "2019-05-02T03:33:56.386Z", + "retryAttempt": 0 + }, + "totalRetryAttempts": 0, + "buildVersion": "1.0.0.1", + "artifactSourceId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/artifactSources/binariesArtifactSource", + "targetServiceTopologyId": "/subscriptions/caac1590-e859-444f-a9e0-62091c0f5929/resourceGroups/myResourceGroup/Microsoft.DeploymentManager/serviceTopologies/myTopology", + "stepGroups": [ + { + "name": "ProdRegion", + "preDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep" + }, + { + "stepId": "Microsoft.DeploymentManager/steps/preDeployStep2" + } + ], + "deploymentTargetId": "Microsoft.DeploymentManager/serviceTopologies/myTopology/services/myService/serviceUnits/myServiceUnit2'", + "postDeploymentSteps": [ + { + "stepId": "Microsoft.DeploymentManager/steps/postDeployStep3" + } + ], + "dependsOnStepGroups": [ + "FirstRegion" + ] + } + ] + } } + ] } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/service_createorupdate.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/service_createorupdate.json index 5ca7e868a588..e61a5441d174 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/service_createorupdate.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/service_createorupdate.json @@ -1,31 +1,31 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "serviceTopologyName": "myTopology", - "serviceName": "myService", - "api-version": "2019-11-01-preview", - "serviceInfo": { - "location": "centralus", - "tags": {}, - "properties": { - "targetLocation": "centralus", - "targetSubscriptionId": "600c95c5-3ee5-44fe-b190-ca38a19adcd7" - } - } - }, - "responses": { - "201": { - "body": { - "name": "myService", - "type": "Microsoft.DeploymentManager/serviceTopologies/services", - "location": "centralus", - "tags": {}, - "properties": { - "targetLocation": "centralus", - "targetSubscriptionId": "600c95c5-3ee5-44fe-b190-ca38a19adcd7" - } - } + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "serviceTopologyName": "myTopology", + "serviceName": "myService", + "api-version": "2019-11-01-preview", + "serviceInfo": { + "location": "centralus", + "tags": {}, + "properties": { + "targetLocation": "centralus", + "targetSubscriptionId": "600c95c5-3ee5-44fe-b190-ca38a19adcd7" + } + } + }, + "responses": { + "201": { + "body": { + "name": "myService", + "type": "Microsoft.DeploymentManager/serviceTopologies/services", + "location": "centralus", + "tags": {}, + "properties": { + "targetLocation": "centralus", + "targetSubscriptionId": "600c95c5-3ee5-44fe-b190-ca38a19adcd7" } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/service_delete.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/service_delete.json index 00f626eb62cf..1a5bf772f1da 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/service_delete.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/service_delete.json @@ -1,13 +1,13 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "serviceTopologyName": "myTopology", - "serviceName": "myService", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": {}, - "204": {} - } -} \ No newline at end of file + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "serviceTopologyName": "myTopology", + "serviceName": "myService", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/service_get.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/service_get.json index e9f59cca7cc0..e0b301b255f0 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/service_get.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/service_get.json @@ -1,23 +1,23 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "serviceTopologyName": "myTopology", - "serviceName": "myService", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": { - "body": { - "name": "myService", - "type": "Microsoft.DeploymentManager/serviceTopologies/services", - "location": "centralus", - "tags": {}, - "properties": { - "targetLocation": "centralus", - "targetSubscriptionId": "600c95c5-3ee5-44fe-b190-ca38a19adcd7" - } - } + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "serviceTopologyName": "myTopology", + "serviceName": "myService", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "myService", + "type": "Microsoft.DeploymentManager/serviceTopologies/services", + "location": "centralus", + "tags": {}, + "properties": { + "targetLocation": "centralus", + "targetSubscriptionId": "600c95c5-3ee5-44fe-b190-ca38a19adcd7" } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/services_list.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/services_list.json index 8edd60ad4200..1c0e781d0ec2 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/services_list.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/services_list.json @@ -1,34 +1,34 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "serviceTopologyName": "myTopology", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": { - "body": [ - { - "name": "Service East", - "type": "Microsoft.DeploymentManager/serviceTopologies/services", - "location": "centralus", - "tags": {}, - "properties": { - "targetLocation": "eastus", - "targetSubscriptionId": "600c95c5-3ee5-44fe-b190-ca38a19adcd7" - } - }, - { - "name": "Service West", - "type": "Microsoft.DeploymentManager/serviceTopologies/services", - "location": "centralus", - "tags": {}, - "properties": { - "targetLocation": "westus", - "targetSubscriptionId": "600c95c5-3ee5-44fe-b190-ca38a19adcd7" - } - } - ] + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "serviceTopologyName": "myTopology", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": [ + { + "name": "Service East", + "type": "Microsoft.DeploymentManager/serviceTopologies/services", + "location": "centralus", + "tags": {}, + "properties": { + "targetLocation": "eastus", + "targetSubscriptionId": "600c95c5-3ee5-44fe-b190-ca38a19adcd7" + } + }, + { + "name": "Service West", + "type": "Microsoft.DeploymentManager/serviceTopologies/services", + "location": "centralus", + "tags": {}, + "properties": { + "targetLocation": "westus", + "targetSubscriptionId": "600c95c5-3ee5-44fe-b190-ca38a19adcd7" + } } + ] } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopologies_list.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopologies_list.json index 2fdd120aa40e..f9ffda6feb65 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopologies_list.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopologies_list.json @@ -1,31 +1,31 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": { - "body": [ - { - "name": "ContosoSvc1Topology", - "type": "Microsoft.DeploymentManager/serviceTopologies", - "location": "centralus", - "tags": {}, - "properties": { - "artifactSourceId": "Microsoft.DeploymentManager/artifactSources/contoso1ArtifactSource" - } - }, - { - "name": "ContosoSvc2Topology", - "type": "Microsoft.DeploymentManager/serviceTopologies", - "location": "centralus", - "tags": {}, - "properties": { - "artifactSourceId": "Microsoft.DeploymentManager/artifactSources/contoso2ArtifactSource" - } - } - ] + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": [ + { + "name": "ContosoSvc1Topology", + "type": "Microsoft.DeploymentManager/serviceTopologies", + "location": "centralus", + "tags": {}, + "properties": { + "artifactSourceId": "Microsoft.DeploymentManager/artifactSources/contoso1ArtifactSource" + } + }, + { + "name": "ContosoSvc2Topology", + "type": "Microsoft.DeploymentManager/serviceTopologies", + "location": "centralus", + "tags": {}, + "properties": { + "artifactSourceId": "Microsoft.DeploymentManager/artifactSources/contoso2ArtifactSource" + } } + ] } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopology_createorupdate.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopology_createorupdate.json index fbf1d2590f05..fdc32d53fffb 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopology_createorupdate.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopology_createorupdate.json @@ -1,28 +1,28 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "serviceTopologyName": "myTopology", - "api-version": "2019-11-01-preview", - "serviceTopologyInfo": { - "location": "centralus", - "tags": {}, - "properties": { - "artifactSourceId": "Microsoft.DeploymentManager/artifactSources/myArtifactSource" - } - } - }, - "responses": { - "201": { - "body": { - "name": "myTopology", - "type": "Microsoft.DeploymentManager/serviceTopologies", - "location": "centralus", - "tags": {}, - "properties": { - "artifactSourceId": "Microsoft.DeploymentManager/artifactSources/myArtifactSource" - } - } + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "serviceTopologyName": "myTopology", + "api-version": "2019-11-01-preview", + "serviceTopologyInfo": { + "location": "centralus", + "tags": {}, + "properties": { + "artifactSourceId": "Microsoft.DeploymentManager/artifactSources/myArtifactSource" + } + } + }, + "responses": { + "201": { + "body": { + "name": "myTopology", + "type": "Microsoft.DeploymentManager/serviceTopologies", + "location": "centralus", + "tags": {}, + "properties": { + "artifactSourceId": "Microsoft.DeploymentManager/artifactSources/myArtifactSource" } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopology_createorupdate_noartifactsource.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopology_createorupdate_noartifactsource.json index e622f7fa11e8..792c63cf4fbf 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopology_createorupdate_noartifactsource.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopology_createorupdate_noartifactsource.json @@ -1,26 +1,24 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "serviceTopologyName": "myTopology", - "api-version": "2019-11-01-preview", - "serviceTopologyInfo": { - "location": "centralus", - "tags": {}, - "properties": { - } - } - }, - "responses": { - "201": { - "body": { - "name": "myTopology", - "type": "Microsoft.DeploymentManager/serviceTopologies", - "location": "centralus", - "tags": {}, - "properties": { - } - } - } + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "serviceTopologyName": "myTopology", + "api-version": "2019-11-01-preview", + "serviceTopologyInfo": { + "location": "centralus", + "tags": {}, + "properties": {} } -} \ No newline at end of file + }, + "responses": { + "201": { + "body": { + "name": "myTopology", + "type": "Microsoft.DeploymentManager/serviceTopologies", + "location": "centralus", + "tags": {}, + "properties": {} + } + } + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopology_delete.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopology_delete.json index ef0abe0d2609..475c1dd213d6 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopology_delete.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopology_delete.json @@ -1,12 +1,12 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "serviceTopologyName": "myTopology", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": {}, - "204": {} - } -} \ No newline at end of file + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "serviceTopologyName": "myTopology", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopology_get.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopology_get.json index ac036b32147d..1c1d32c3031e 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopology_get.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/servicetopology_get.json @@ -1,21 +1,21 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "serviceTopologyName": "myTopology", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": { - "body": { - "name": "myTopology", - "type": "Microsoft.DeploymentManager/serviceTopologies", - "location": "centralus", - "tags": {}, - "properties": { - "artifactSourceId": "Microsoft.DeploymentManager/artifactSources/myArtifactSource" - } - } + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "serviceTopologyName": "myTopology", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "myTopology", + "type": "Microsoft.DeploymentManager/serviceTopologies", + "location": "centralus", + "tags": {}, + "properties": { + "artifactSourceId": "Microsoft.DeploymentManager/artifactSources/myArtifactSource" } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunit_createorupdate.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunit_createorupdate.json index 96edfad758e8..e1b0f0af48c8 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunit_createorupdate.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunit_createorupdate.json @@ -1,40 +1,40 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "serviceTopologyName": "myTopology", - "serviceName": "myService", - "serviceUnitName": "myServiceUnit", - "api-version": "2019-11-01-preview", - "serviceUnitInfo": { - "location": "centralus", - "tags": {}, - "properties": { - "targetResourceGroup": "myDeploymentResourceGroup", - "deploymentMode": "Incremental", - "artifacts": { - "templateArtifactSourceRelativePath": "templates/myTopologyUnit.template.json", - "parametersArtifactSourceRelativePath": "parameter/myTopologyUnit.parameters.json" - } - } + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "serviceTopologyName": "myTopology", + "serviceName": "myService", + "serviceUnitName": "myServiceUnit", + "api-version": "2019-11-01-preview", + "serviceUnitInfo": { + "location": "centralus", + "tags": {}, + "properties": { + "targetResourceGroup": "myDeploymentResourceGroup", + "deploymentMode": "Incremental", + "artifacts": { + "templateArtifactSourceRelativePath": "templates/myTopologyUnit.template.json", + "parametersArtifactSourceRelativePath": "parameter/myTopologyUnit.parameters.json" } - }, - "responses": { - "201": { - "body": { - "name": "myServiceUnit", - "type": "Microsoft.DeploymentManager/serviceTopologies/services/serviceUnits", - "location": "centralus", - "tags": {}, - "properties": { - "targetResourceGroup": "myDeploymentResourceGroup", - "deploymentMode": "Incremental", - "artifacts": { - "templateArtifactSourceRelativePath": "templates/myTopologyUnit.template.json", - "parametersArtifactSourceRelativePath": "parameter/myTopologyUnit.parameters.json" - } - } - } + } + } + }, + "responses": { + "201": { + "body": { + "name": "myServiceUnit", + "type": "Microsoft.DeploymentManager/serviceTopologies/services/serviceUnits", + "location": "centralus", + "tags": {}, + "properties": { + "targetResourceGroup": "myDeploymentResourceGroup", + "deploymentMode": "Incremental", + "artifacts": { + "templateArtifactSourceRelativePath": "templates/myTopologyUnit.template.json", + "parametersArtifactSourceRelativePath": "parameter/myTopologyUnit.parameters.json" + } } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunit_createorupdate_noartifactsource.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunit_createorupdate_noartifactsource.json index a5a4bd897d0e..6db5d722105b 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunit_createorupdate_noartifactsource.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunit_createorupdate_noartifactsource.json @@ -1,40 +1,40 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "serviceTopologyName": "myTopology", - "serviceName": "myService", - "serviceUnitName": "myServiceUnit", - "api-version": "2019-11-01-preview", - "serviceUnitInfo": { - "location": "centralus", - "tags": {}, - "properties": { - "targetResourceGroup": "myDeploymentResourceGroup", - "deploymentMode": "Incremental", - "artifacts": { - "templateUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource/templates/myTopologyUnit.template.json?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D", - "parametersUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource/parameter/myTopologyUnit.parameters.json?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" - } - } + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "serviceTopologyName": "myTopology", + "serviceName": "myService", + "serviceUnitName": "myServiceUnit", + "api-version": "2019-11-01-preview", + "serviceUnitInfo": { + "location": "centralus", + "tags": {}, + "properties": { + "targetResourceGroup": "myDeploymentResourceGroup", + "deploymentMode": "Incremental", + "artifacts": { + "templateUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource/templates/myTopologyUnit.template.json?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D", + "parametersUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource/parameter/myTopologyUnit.parameters.json?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" } - }, - "responses": { - "201": { - "body": { - "name": "myServiceUnit", - "type": "Microsoft.DeploymentManager/serviceTopologies/services/serviceUnits", - "location": "centralus", - "tags": {}, - "properties": { - "targetResourceGroup": "myDeploymentResourceGroup", - "deploymentMode": "Incremental", - "artifacts": { - "templateUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource/templates/myTopologyUnit.template.json?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D", - "parametersUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource/parameter/myTopologyUnit.parameters.json?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" - } - } - } + } + } + }, + "responses": { + "201": { + "body": { + "name": "myServiceUnit", + "type": "Microsoft.DeploymentManager/serviceTopologies/services/serviceUnits", + "location": "centralus", + "tags": {}, + "properties": { + "targetResourceGroup": "myDeploymentResourceGroup", + "deploymentMode": "Incremental", + "artifacts": { + "templateUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource/templates/myTopologyUnit.template.json?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D", + "parametersUri": "https://mystorageaccount.blob.core.windows.net/myartifactsource/parameter/myTopologyUnit.parameters.json?st=2018-07-07T14%3A10%3A00Z&se=2019-12-31T15%3A10%3A00Z&sp=rl&sv=2017-04-17&sr=c&sig=Yh2SoJ1NhhLRwCLln7de%2Fkabcdefghijklmno5sWEIk%3D" + } } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunit_delete.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunit_delete.json index 2e9ecdc6183f..d01b54bd7666 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunit_delete.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunit_delete.json @@ -1,14 +1,14 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "serviceTopologyName": "myTopology", - "serviceName": "myService", - "serviceUnitName": "myServiceUnit", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": {}, - "204": {} - } -} \ No newline at end of file + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "serviceTopologyName": "myTopology", + "serviceName": "myService", + "serviceUnitName": "myServiceUnit", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunit_get.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunit_get.json index 1bdbe6f34d6f..39d26d54d6ca 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunit_get.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunit_get.json @@ -1,28 +1,28 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "serviceTopologyName": "myTopology", - "serviceName": "myService", - "serviceUnitName": "myServiceUnit", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": { - "body": { - "name": "myServiceUnit", - "type": "Microsoft.DeploymentManager/servicetopologies/services/serviceunits", - "location": "centralus", - "tags": {}, - "properties": { - "targetResourceGroup": "myDeploymentResourceGroup", - "deploymentMode": "Incremental", - "artifacts": { - "templateArtifactSourceRelativePath": "templates/myTopologyUnit.template.json", - "parametersArtifactSourceRelativePath": "parameter/myTopologyUnit.parameters.json" - } - } - } + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "serviceTopologyName": "myTopology", + "serviceName": "myService", + "serviceUnitName": "myServiceUnit", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "myServiceUnit", + "type": "Microsoft.DeploymentManager/servicetopologies/services/serviceunits", + "location": "centralus", + "tags": {}, + "properties": { + "targetResourceGroup": "myDeploymentResourceGroup", + "deploymentMode": "Incremental", + "artifacts": { + "templateArtifactSourceRelativePath": "templates/myTopologyUnit.template.json", + "parametersArtifactSourceRelativePath": "parameter/myTopologyUnit.parameters.json" + } } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunits_list.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunits_list.json index c7d5a4e0d71b..7a3348c56b35 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunits_list.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/serviceunits_list.json @@ -1,43 +1,43 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "serviceTopologyName": "myTopology", - "serviceName": "myService", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": { - "body": [ - { - "name": "BackEndServiceUnit", - "type": "Microsoft.DeploymentManager/servicetopologies/services/serviceunits", - "location": "centralus", - "tags": {}, - "properties": { - "targetResourceGroup": "myDeploymentResourceGroup", - "deploymentMode": "Incremental", - "artifacts": { - "templateArtifactSourceRelativePath": "templates/backend.template.json", - "parametersArtifactSourceRelativePath": "parameter/backend.parameters.json" - } - } - }, - { - "name": "FrontEndServiceUnit", - "type": "Microsoft.DeploymentManager/servicetopologies/services/serviceunits", - "location": "centralus", - "tags": {}, - "properties": { - "targetResourceGroup": "myDeploymentResourceGroup", - "deploymentMode": "Complete", - "artifacts": { - "templateArtifactSourceRelativePath": "templates/frontend.template.json", - "parametersArtifactSourceRelativePath": "parameter/frontend.parameters.json" - } - } - } - ] + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "serviceTopologyName": "myTopology", + "serviceName": "myService", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": [ + { + "name": "BackEndServiceUnit", + "type": "Microsoft.DeploymentManager/servicetopologies/services/serviceunits", + "location": "centralus", + "tags": {}, + "properties": { + "targetResourceGroup": "myDeploymentResourceGroup", + "deploymentMode": "Incremental", + "artifacts": { + "templateArtifactSourceRelativePath": "templates/backend.template.json", + "parametersArtifactSourceRelativePath": "parameter/backend.parameters.json" + } + } + }, + { + "name": "FrontEndServiceUnit", + "type": "Microsoft.DeploymentManager/servicetopologies/services/serviceunits", + "location": "centralus", + "tags": {}, + "properties": { + "targetResourceGroup": "myDeploymentResourceGroup", + "deploymentMode": "Complete", + "artifacts": { + "templateArtifactSourceRelativePath": "templates/frontend.template.json", + "parametersArtifactSourceRelativePath": "parameter/frontend.parameters.json" + } + } } + ] } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/step_delete.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/step_delete.json index 987f1fa0c2ff..a15bc6d95257 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/step_delete.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/step_delete.json @@ -1,12 +1,12 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "stepName": "deploymentStep1", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": {}, - "204": {} - } -} \ No newline at end of file + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "stepName": "deploymentStep1", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/step_get.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/step_get.json index da493554e61a..9003d66939ed 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/step_get.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/step_get.json @@ -1,24 +1,24 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "stepName": "waitStep", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": { - "body": { - "name": "deploymentStep1", - "type": "Microsoft.DeploymentManager/steps", - "location": "centralus", - "tags": {}, - "properties": { - "stepType": "Wait", - "attributes": { - "duration": "PT20M" - } - } - } + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "stepName": "waitStep", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "deploymentStep1", + "type": "Microsoft.DeploymentManager/steps", + "location": "centralus", + "tags": {}, + "properties": { + "stepType": "Wait", + "attributes": { + "duration": "PT20M" + } } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/step_health_check_createorupdate.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/step_health_check_createorupdate.json index cc21360eb0f5..b7c5e8bd2b2a 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/step_health_check_createorupdate.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/step_health_check_createorupdate.json @@ -1,150 +1,150 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "stepName": "healthCheckStep", - "api-version": "2019-11-01-preview", - "stepInfo": { - "location": "centralus", - "tags": {}, - "properties": { - "stepType": "HealthCheck", - "attributes": { - "waitDuration": "PT15M", - "maxElasticDuration": "PT30M", - "healthyStateDuration": "PT2H", - "type": "REST", - "properties": { - "healthChecks": [ - { - "name": "appHealth", - "request": { - "method": "GET", - "uri": "https://resthealth.healthservice.com/api/applications/contosoApp/healthStatus", - "authentication": { - "type": "ApiKey", - "name": "Code", - "in": "Query", - "value": "NBCapiMOBQyAAbCkeytoPadnvO0eGHmidwFz5rXpappznKp3Jt7LLg==" - } - }, - "response": { - "successStatusCodes": [ - "OK" - ], - "regex": { - "matchQuantifier": "All", - "matches": [ - "(?i)Contoso-App", - "(?i)\"health_status\":((.|\n)*)\"(green|yellow)\"", - "(?mi)^(\"application_host\": 94781052)$" - ] - } - } - }, - { - "name": "serviceHealth", - "request": { - "method": "GET", - "uri": "https://resthealth.healthservice.com/api/services/contosoService/healthStatus", - "authentication": { - "type": "ApiKey", - "name": "code", - "in": "Header", - "value": "NBCapiMOBQyAAbCkeytoPadnvO0eGHmidwFz5rXpappznKp3Jt7LLg==" - } - }, - "response": { - "successStatusCodes": [ - "OK" - ], - "regex": { - "matchQuantifier": "All", - "matches": [ - "(?i)Contoso-Service-EndToEnd", - "(?i)\"health_status\":((.|\n)*)\"(green)\"" - ] - } - } - } - ] - } + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "stepName": "healthCheckStep", + "api-version": "2019-11-01-preview", + "stepInfo": { + "location": "centralus", + "tags": {}, + "properties": { + "stepType": "HealthCheck", + "attributes": { + "waitDuration": "PT15M", + "maxElasticDuration": "PT30M", + "healthyStateDuration": "PT2H", + "type": "REST", + "properties": { + "healthChecks": [ + { + "name": "appHealth", + "request": { + "method": "GET", + "uri": "https://resthealth.healthservice.com/api/applications/contosoApp/healthStatus", + "authentication": { + "type": "ApiKey", + "name": "Code", + "in": "Query", + "value": "NBCapiMOBQyAAbCkeytoPadnvO0eGHmidwFz5rXpappznKp3Jt7LLg==" + } + }, + "response": { + "successStatusCodes": [ + "OK" + ], + "regex": { + "matchQuantifier": "All", + "matches": [ + "(?i)Contoso-App", + "(?i)\"health_status\":((.|\n)*)\"(green|yellow)\"", + "(?mi)^(\"application_host\": 94781052)$" + ] + } } - } + }, + { + "name": "serviceHealth", + "request": { + "method": "GET", + "uri": "https://resthealth.healthservice.com/api/services/contosoService/healthStatus", + "authentication": { + "type": "ApiKey", + "name": "code", + "in": "Header", + "value": "NBCapiMOBQyAAbCkeytoPadnvO0eGHmidwFz5rXpappznKp3Jt7LLg==" + } + }, + "response": { + "successStatusCodes": [ + "OK" + ], + "regex": { + "matchQuantifier": "All", + "matches": [ + "(?i)Contoso-Service-EndToEnd", + "(?i)\"health_status\":((.|\n)*)\"(green)\"" + ] + } + } + } + ] + } } - }, - "responses": { - "201": { - "body": { - "name": "healthCheckStep", - "type": "Microsoft.DeploymentManager/steps", - "location": "centralus", - "tags": {}, - "properties": { - "stepType": "HealthCheck", - "attributes": { - "waitDuration": "PT15M", - "maxElasticDuration": "PT30M", - "healthyStateDuration": "PT2H", - "type": "REST", - "properties": { - "healthChecks": [ - { - "name": "appHealth", - "request": { - "method": "GET", - "uri": "https://resthealth.healthservice.com/api/applications/contosoApp/healthStatus", - "authentication": { - "type": "ApiKey", - "name": "Code", - "in": "Query", - "value": "NBCapiMOBQyAAbCkeytoPadnvO0eGHmidwFz5rXpappznKp3Jt7LLg==" - } - }, - "response": { - "successStatusCodes": [ - "OK" - ], - "regex": { - "matchQuantifier": "All", - "matches": [ - "(?i)Contoso-App", - "(?i)\"health_status\":((.|\n)*)\"(green|yellow)\"", - "(?mi)^(\"application_host\": 94781052)$" - ] - } - } - }, - { - "name": "serviceHealth", - "request": { - "method": "GET", - "uri": "https://resthealth.healthservice.com/api/services/contosoService/healthStatus", - "authentication": { - "type": "ApiKey", - "name": "code", - "in": "Header", - "value": "NBCapiMOBQyAAbCkeytoPadnvO0eGHmidwFz5rXpappznKp3Jt7LLg==" - } - }, - "response": { - "successStatusCodes": [ - "OK" - ], - "regex": { - "matchQuantifier": "All", - "matches": [ - "(?i)Contoso-Service-EndToEnd", - "(?i)\"health_status\":((.|\n)*)\"(green)\"" - ] - } - } - } - ] - } + } + } + }, + "responses": { + "201": { + "body": { + "name": "healthCheckStep", + "type": "Microsoft.DeploymentManager/steps", + "location": "centralus", + "tags": {}, + "properties": { + "stepType": "HealthCheck", + "attributes": { + "waitDuration": "PT15M", + "maxElasticDuration": "PT30M", + "healthyStateDuration": "PT2H", + "type": "REST", + "properties": { + "healthChecks": [ + { + "name": "appHealth", + "request": { + "method": "GET", + "uri": "https://resthealth.healthservice.com/api/applications/contosoApp/healthStatus", + "authentication": { + "type": "ApiKey", + "name": "Code", + "in": "Query", + "value": "NBCapiMOBQyAAbCkeytoPadnvO0eGHmidwFz5rXpappznKp3Jt7LLg==" + } + }, + "response": { + "successStatusCodes": [ + "OK" + ], + "regex": { + "matchQuantifier": "All", + "matches": [ + "(?i)Contoso-App", + "(?i)\"health_status\":((.|\n)*)\"(green|yellow)\"", + "(?mi)^(\"application_host\": 94781052)$" + ] + } + } + }, + { + "name": "serviceHealth", + "request": { + "method": "GET", + "uri": "https://resthealth.healthservice.com/api/services/contosoService/healthStatus", + "authentication": { + "type": "ApiKey", + "name": "code", + "in": "Header", + "value": "NBCapiMOBQyAAbCkeytoPadnvO0eGHmidwFz5rXpappznKp3Jt7LLg==" + } + }, + "response": { + "successStatusCodes": [ + "OK" + ], + "regex": { + "matchQuantifier": "All", + "matches": [ + "(?i)Contoso-Service-EndToEnd", + "(?i)\"health_status\":((.|\n)*)\"(green)\"" + ] } + } } + ] } + } } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/step_wait_createorupdate.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/step_wait_createorupdate.json index 92a3f5563add..b296e83f2281 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/step_wait_createorupdate.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/step_wait_createorupdate.json @@ -1,34 +1,34 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "stepName": "waitStep", - "api-version": "2019-11-01-preview", - "stepInfo": { - "location": "centralus", - "tags": {}, - "properties": { - "stepType": "Wait", - "attributes": { - "duration": "PT20M" - } - } + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "stepName": "waitStep", + "api-version": "2019-11-01-preview", + "stepInfo": { + "location": "centralus", + "tags": {}, + "properties": { + "stepType": "Wait", + "attributes": { + "duration": "PT20M" } - }, - "responses": { - "201": { - "body": { - "name": "waitStep", - "type": "Microsoft.DeploymentManager/steps", - "location": "centralus", - "tags": {}, - "properties": { - "stepType": "Wait", - "attributes": { - "duration": "PT20M" - } - } - } + } + } + }, + "responses": { + "201": { + "body": { + "name": "waitStep", + "type": "Microsoft.DeploymentManager/steps", + "location": "centralus", + "tags": {}, + "properties": { + "stepType": "Wait", + "attributes": { + "duration": "PT20M" + } } + } } -} \ No newline at end of file + } +} diff --git a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/steps_list.json b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/steps_list.json index b18db31e93f2..6990300763ab 100644 --- a/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/steps_list.json +++ b/specification/deploymentmanager/resource-manager/Microsoft.DeploymentManager/preview/2019-11-01-preview/examples/steps_list.json @@ -1,37 +1,37 @@ { - "parameters": { - "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", - "resourceGroupName": "myResourceGroup", - "api-version": "2019-11-01-preview" - }, - "responses": { - "200": { - "body": [ - { - "name": "waitStepfrontEnd", - "type": "Microsoft.DeploymentManager/steps", - "location": "centralus", - "tags": {}, - "properties": { - "stepType": "Wait", - "attributes": { - "duration": "PT10M" - } - } - }, - { - "name": "waitStepBackEnd", - "type": "Microsoft.DeploymentManager/steps", - "location": "centralus", - "tags": {}, - "properties": { - "stepType": "Wait", - "attributes": { - "duration": "PT30M" - } - } - } - ] + "parameters": { + "subscriptionId": "caac1590-e859-444f-a9e0-62091c0f5929", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": [ + { + "name": "waitStepfrontEnd", + "type": "Microsoft.DeploymentManager/steps", + "location": "centralus", + "tags": {}, + "properties": { + "stepType": "Wait", + "attributes": { + "duration": "PT10M" + } + } + }, + { + "name": "waitStepBackEnd", + "type": "Microsoft.DeploymentManager/steps", + "location": "centralus", + "tags": {}, + "properties": { + "stepType": "Wait", + "attributes": { + "duration": "PT30M" + } + } } + ] } -} \ No newline at end of file + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSCertificateCreateOrUpdate.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSCertificateCreateOrUpdate.json new file mode 100644 index 000000000000..bad1dd6fb8c4 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSCertificateCreateOrUpdate.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "certificateDescription": { + "certificate": "############################################" + } + }, + "responses": { + "200": { + "body": { + "properties": { + "subject": "CN=testdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "97388663832D0393C9246CAB4FBA2C8677185A25", + "isVerified": false, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:23:50 GMT" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServives/myFirstProvisioningService/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/ProvisioningServices/Certificates", + "etag": "AAAAAAExpNs=" + } + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSCheckNameAvailability.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSCheckNameAvailability.json new file mode 100644 index 000000000000..e32b22fe2bf3 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSCheckNameAvailability.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "arguments": { + "name": "test213123" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true, + "reason": "Invalid", + "message": "name is valid" + } + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSCreate.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSCreate.json new file mode 100644 index 000000000000..985e43062210 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSCreate.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "iotDpsDescription": { + "location": "East US", + "properties": {}, + "sku": { + "name": "S1", + "capacity": 1 + }, + "tags": {} + } + }, + "responses": { + "200": { + "body": { + "etag": "AAAAAAAADGk=", + "name": "myFirstProvisioningService", + "location": "eastus", + "properties": { + "state": "Active", + "allocationPolicy": "Hashed", + "serviceOperationsHostName": "myFirstProvisioningService.azure-devices-provisioning.net", + "deviceProvisioningHostName": "global.azure-devices-provisioning.net", + "idScope": "0ne00000012", + "authorizationPolicies": [] + }, + "type": "Microsoft.Devices/ProvisioningServices", + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups//providers/Microsoft.Devices/ProvisioningServices/myFirstProvisioningService", + "tags": {}, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + }, + "201": { + "body": { + "etag": "AAAAAAAADGk=", + "name": "myFirstProvisioningService", + "location": "eastus", + "properties": { + "state": "Active", + "allocationPolicy": "Hashed", + "serviceOperationsHostName": "myFirstProvisioningService.azure-devices-provisioning.net", + "deviceProvisioningHostName": "global.azure-devices-provisioning.net", + "idScope": "0ne00000012", + "authorizationPolicies": [] + }, + "type": "Microsoft.Devices/ProvisioningServices", + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups//providers/Microsoft.Devices/ProvisioningServices/myFirstProvisioningService", + "tags": {}, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSDelete.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSDelete.json new file mode 100644 index 000000000000..6268ef59e80e --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": {}, + "204": {}, + "202": {}, + "404": {} + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSDeleteCertificate.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSDeleteCertificate.json new file mode 100644 index 000000000000..a75650efd323 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSDeleteCertificate.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "If-Match": "AAAAAAAADGk=" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGenerateVerificationCode.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGenerateVerificationCode.json new file mode 100644 index 000000000000..e28a4c4bf1f3 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGenerateVerificationCode.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "If-Match": "AAAAAAAADGk=" + }, + "responses": { + "200": { + "body": { + "name": "cert", + "properties": { + "verificationCode": "##################################", + "subject": "CN=andbucdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "##############################", + "isVerified": false, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:26:56 GMT" + } + } + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGet.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGet.json new file mode 100644 index 000000000000..b44b366b80b5 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "etag": "AAAAAAAADGk=", + "name": "myFirstProvisioningService", + "location": "eastus", + "properties": { + "state": "Active", + "allocationPolicy": "Hashed", + "serviceOperationsHostName": "myFirstProvisioningService.azure-devices-provisioning.net", + "deviceProvisioningHostName": "global.azure-devices-provisioning.net", + "idScope": "0ne00000012", + "authorizationPolicies": [] + }, + "type": "Microsoft.Devices/ProvisioningServices", + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServices/myFirstProvisioningService", + "tags": {}, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetCertificate.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetCertificate.json new file mode 100644 index 000000000000..c477bfea1fa6 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetCertificate.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert" + }, + "responses": { + "200": { + "body": { + "properties": { + "subject": "CN=testdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "97388663832D0393C9246CAB4FBA2C8677185A25", + "isVerified": false, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:23:50 GMT" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/andbuc-hub/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/ProvisioningServices/Certificates", + "etag": "AAAAAAExpNs=" + } + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetCertificates.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetCertificates.json new file mode 100644 index 000000000000..9f307d6e87a9 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetCertificates.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "subject": "CN=testdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "97388663832D0393C9246CAB4FBA2C8677185A25", + "isVerified": false, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:23:50 GMT" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/andbuc-hub/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/ProvisioningServices/Certificates", + "etag": "AAAAAAExpNs=" + } + ] + } + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetKey.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetKey.json new file mode 100644 index 000000000000..d4ee8aa65833 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetKey.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "keyName": "testKey" + }, + "responses": { + "200": { + "body": { + "keyName": "testKey", + "primaryKey": "##################################", + "secondaryKey": "################################", + "rights": "RegistrationStatusWrite" + } + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetOperationResult.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetOperationResult.json new file mode 100644 index 000000000000..38169a6a6832 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetOperationResult.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "operationId": "MTY5OTNmZDctODI5Yy00N2E2LTkxNDQtMDU1NGIyYzY1ZjRl", + "asyncinfo": "1508265712453" + }, + "responses": { + "200": { + "body": { + "status": "Succeeded" + } + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetValidSku.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetValidSku.json new file mode 100644 index 000000000000..bd010bd38ccf --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSGetValidSku.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "S1" + } + ] + } + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSListByResourceGroup.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSListByResourceGroup.json new file mode 100644 index 000000000000..5606e0a06bb4 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSListByResourceGroup.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "resourceGroupName": "myResourceGroup" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "etag": "AAAAAAAADGk=", + "name": "myFirstProvisioningService", + "location": "eastus", + "properties": { + "state": "Active", + "allocationPolicy": "Hashed", + "serviceOperationsHostName": "myFirstProvisioningService.azure-devices-provisioning.net", + "deviceProvisioningHostName": "global.azure-devices-provisioning.net", + "idScope": "0ne00000012" + }, + "type": "Microsoft.Devices/ProvisioningServices", + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServices/myFirstProvisioningService", + "tags": {}, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + }, + { + "etag": "AAAAAAAADGk=", + "name": "mySecondProvisioningService", + "location": "eastus", + "properties": { + "state": "Active", + "allocationPolicy": "Hashed", + "serviceOperationsHostName": "mySecondProvisioningService.azure-devices-provisioning.net", + "deviceProvisioningHostName": "global.azure-devices-provisioning.net", + "idScope": "0ne00000012" + }, + "type": "Microsoft.Devices/ProvisioningServices", + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServices/mySecondProvisioningService", + "tags": {}, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + ] + } + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSListBySubscription.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSListBySubscription.json new file mode 100644 index 000000000000..ae139fc87d88 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSListBySubscription.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "etag": "AAAAAAAADGk=", + "name": "myFirstProvisioningService", + "location": "eastus", + "properties": { + "state": "Active", + "allocationPolicy": "Hashed", + "serviceOperationsHostName": "myFirstProvisioningService.azure-devices-provisioning.net", + "deviceProvisioningHostName": "global.azure-devices-provisioning.net", + "idScope": "0ne00000012" + }, + "type": "Microsoft.Devices/ProvisioningServices", + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServices/myFirstProvisioningService", + "tags": {}, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + }, + { + "etag": "AAAAAAAADGk=", + "name": "mySecondProvisioningService", + "location": "eastus", + "properties": { + "state": "Active", + "allocationPolicy": "Hashed", + "serviceOperationsHostName": "myFirstProvisioningService.azure-devices-provisioning.net", + "deviceProvisioningHostName": "global.azure-devices-provisioning.net", + "idScope": "0ne00000012" + }, + "type": "Microsoft.Devices/ProvisioningServices", + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServices/mySecondProvisioningService", + "tags": {}, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + ] + } + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSListKeys.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSListKeys.json new file mode 100644 index 000000000000..aca0af4ab6b7 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSListKeys.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "keyName": "key1", + "primaryKey": "#####################################", + "secondaryKey": "###################################", + "rights": "ServiceConfig" + }, + { + "keyName": "key2", + "primaryKey": "#######################################", + "secondaryKey": "####################################=", + "rights": "ServiceConfig" + } + ] + } + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSOperations.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSOperations.json new file mode 100644 index 000000000000..63fccdb5acfe --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSOperations.json @@ -0,0 +1,293 @@ +{ + "parameters": { + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Devices/register/action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Register Resource Provider" + } + }, + { + "name": "Microsoft.Devices/IotHubs/diagnosticSettings/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Diagnostic Setting" + } + }, + { + "name": "Microsoft.Devices/IotHubs/diagnosticSettings/write", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Set Diagnostic Setting" + } + }, + { + "name": "Microsoft.Devices/IotHubs/metricDefinitions/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Read IotHub service metric definitions" + } + }, + { + "name": "Microsoft.Devices/IotHubs/logDefinitions/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Read IotHub service log definitions" + } + }, + { + "name": "Microsoft.Devices/operations/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get All ResourceProvider Operations" + } + }, + { + "name": "Microsoft.Devices/checkNameAvailability/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Check If IotHub name is available" + } + }, + { + "name": "Microsoft.Devices/usages/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Subscription Usages" + } + }, + { + "name": "Microsoft.Devices/iotHubs/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get IotHub(s)" + } + }, + { + "name": "Microsoft.Devices/iotHubs/Write", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Create or update IotHub Resource" + } + }, + { + "name": "Microsoft.Devices/iotHubs/Delete", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Delete IotHub Resource" + } + }, + { + "name": "Microsoft.Devices/iotHubs/iotHubStats/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get IotHub Statistics" + } + }, + { + "name": "Microsoft.Devices/iotHubs/skus/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get valid IotHub Skus" + } + }, + { + "name": "Microsoft.Devices/iotHubs/listkeys/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get all IotHub Keys" + } + }, + { + "name": "Microsoft.Devices/iotHubs/iotHubKeys/listkeys/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get IotHub Key for the given name" + } + }, + { + "name": "Microsoft.Devices/iotHubs/eventHubEndpoints/consumerGroups/Write", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Create EventHub Consumer Group" + } + }, + { + "name": "Microsoft.Devices/iotHubs/eventHubEndpoints/consumerGroups/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get EventHub Consumer Group(s)" + } + }, + { + "name": "Microsoft.Devices/iotHubs/eventHubEndpoints/consumerGroups/Delete", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Delete EventHub Consumer Group" + } + }, + { + "name": "Microsoft.Devices/iotHubs/exportDevices/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Export Devices" + } + }, + { + "name": "Microsoft.Devices/iotHubs/importDevices/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Import Devices" + } + }, + { + "name": "Microsoft.Devices/iotHubs/jobs/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get the Job(s) on IotHub" + } + }, + { + "name": "Microsoft.Devices/iotHubs/quotaMetrics/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Quota Metrics" + } + }, + { + "name": "Microsoft.Devices/iotHubs/routing/routes/$testall/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Routing Rule Test All" + } + }, + { + "name": "Microsoft.Devices/iotHubs/routing/routes/$testnew/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Routing Rule Test Route" + } + }, + { + "name": "Microsoft.Devices/iotHubs/routingEndpointsHealth/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Endpoint Health" + } + }, + { + "name": "Microsoft.Devices/ProvisioningServices/diagnosticSettings/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Diagnostic Setting" + } + }, + { + "name": "Microsoft.Devices/ProvisioningServices/diagnosticSettings/write", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Set Diagnostic Setting" + } + }, + { + "name": "Microsoft.Devices/ProvisioningServices/metricDefinitions/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Read DPS service metric definitions" + } + }, + { + "name": "Microsoft.Devices/ProvisioningServices/logDefinitions/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Read DPS service log definitions" + } + }, + { + "name": "Microsoft.Devices/checkProvisioningServiceNameAvailability/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServives", + "operation": "Check If Provisioning Service name is available" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "Get Provisioning Service resource" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/Write", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "Create Provisioning Service resource" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/Delete", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "Delete Provisioning Service resource" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/skus/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "Delete Provisioning Service resource" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/listkeys/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "get security related metadata" + } + } + ] + } + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSPatch.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSPatch.json new file mode 100644 index 000000000000..631bd5151555 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSPatch.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "location": "East US", + "type": "Microsoft.Devices/ProvisioningServices", + "ProvisioningServiceTags": { + "tags": { + "foo": "bar" + } + } + }, + "responses": { + "200": { + "body": { + "etag": "AAAAAAAADGk=", + "name": "myFirstProvisioningService", + "location": "eastus", + "properties": { + "state": "Active", + "allocationPolicy": "Hashed", + "serviceOperationsHostName": "myFirstProvisioningService.azure-devices-provisioning.net", + "deviceProvisioningHostName": "global.azure-devices-provisioning.net", + "idScope": "0ne00000012" + }, + "type": "Microsoft.Devices/ProvisioningServices", + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServices/myFirstProvisioningService", + "tags": { + "foo": "bar" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSVerifyCertificate.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSVerifyCertificate.json new file mode 100644 index 000000000000..92fd1b91fbf6 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/examples/DPSVerifyCertificate.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "provisioningServiceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-01-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "If-Match": "AAAAAAAADGk=", + "request": { + "certificate": "#####################################" + } + }, + "responses": { + "200": { + "body": { + "properties": { + "subject": "CN=andbucdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "97388663832D0393C9246CAB4FBA2C8677185A25", + "isVerified": true, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:26:56 GMT" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServices/myFirstProvisioningService/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/ProvisioningServices/Certificates", + "etag": "AAAAAAExpTQ=" + } + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/iotdps.json b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/iotdps.json new file mode 100644 index 000000000000..70ea10d42a16 --- /dev/null +++ b/specification/deviceprovisioningservices/resource-manager/Microsoft.Devices/stable/2020-01-01/iotdps.json @@ -0,0 +1,2003 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-01-01", + "x-ms-code-generation-settings": { + "host": "management.azure.com" + }, + "title": "iotDpsClient", + "description": "API for using the Azure IoT Hub Device Provisioning Service features." + }, + "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": { + "/providers/Microsoft.Devices/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "x-ms-examples": { + "DPSOperations": { + "$ref": "./examples/DPSOperations.json" + } + }, + "description": "Lists all of the available Microsoft.Devices REST API operations.", + "parameters": [ + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/provisioningServices/{provisioningServiceName}/certificates/{certificateName}": { + "get": { + "tags": [ + "GET" + ], + "operationId": "DpsCertificate_Get", + "description": "Get the certificate from the provisioning service.", + "x-ms-examples": { + "DPSGetCertificate": { + "$ref": "./examples/DPSGetCertificate.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "certificateName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the certificate to retrieve." + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Resource group identifier." + }, + { + "name": "provisioningServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the provisioning service the certificate is associated with." + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "ETag of the certificate." + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Metadata for the specified certificate.", + "schema": { + "$ref": "#/definitions/CertificateResponse" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + }, + "put": { + "tags": [ + "PUT" + ], + "summary": "Upload the certificate to the provisioning service.", + "description": "Add new certificate or update an existing certificate.", + "operationId": "DpsCertificate_CreateOrUpdate", + "x-ms-examples": { + "DPSCreateOrUpdateCertificate": { + "$ref": "./examples/DPSCertificateCreateOrUpdate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group identifier.", + "required": true, + "type": "string" + }, + { + "name": "provisioningServiceName", + "in": "path", + "description": "The name of the provisioning service.", + "required": true, + "type": "string" + }, + { + "name": "certificateName", + "in": "path", + "description": "The name of the certificate create or update.", + "required": true, + "type": "string", + "maxLength": 256 + }, + { + "name": "certificateDescription", + "in": "body", + "description": "The certificate body.", + "required": true, + "schema": { + "$ref": "#/definitions/CertificateBodyDescription" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "ETag of the certificate. This is required to update an existing certificate, and ignored while creating a brand new certificate." + } + ], + "responses": { + "200": { + "description": "If certificate already exist and update was successful, the operation returns HTTP status code of 201 (OK).", + "schema": { + "$ref": "#/definitions/CertificateResponse" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "delete": { + "tags": [ + "DELETE" + ], + "operationId": "DpsCertificate_Delete", + "summary": "Delete the Provisioning Service Certificate.", + "description": "Deletes the specified certificate associated with the Provisioning Service", + "x-ms-examples": { + "DPSDeleteCertificate": { + "$ref": "./examples/DPSDeleteCertificate.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Resource group identifier." + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "ETag of the certificate" + }, + { + "name": "provisioningServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the provisioning service." + }, + { + "name": "certificateName", + "in": "path", + "required": true, + "type": "string", + "description": "This is a mandatory field, and is the logical name of the certificate that the provisioning service will access by." + }, + { + "name": "certificate.name", + "in": "query", + "required": false, + "type": "string", + "description": "This is optional, and it is the Common Name of the certificate." + }, + { + "name": "certificate.rawBytes", + "in": "query", + "required": false, + "type": "string", + "format": "byte", + "description": "Raw data within the certificate." + }, + { + "name": "certificate.isVerified", + "in": "query", + "required": false, + "type": "boolean", + "description": "Indicates if certificate has been verified by owner of the private key." + }, + { + "name": "certificate.purpose", + "in": "query", + "required": false, + "type": "string", + "description": "A description that mentions the purpose of the certificate.", + "enum": [ + "clientAuthentication", + "serverAuthentication" + ], + "x-ms-enum": { + "name": "CertificatePurpose", + "modelAsString": true + } + }, + { + "name": "certificate.created", + "in": "query", + "description": "Time the certificate is created.", + "required": false, + "type": "string", + "format": "date-time" + }, + { + "name": "certificate.lastUpdated", + "in": "query", + "required": false, + "type": "string", + "description": "Time the certificate is last updated.", + "format": "date-time" + }, + { + "name": "certificate.hasPrivateKey", + "in": "query", + "required": false, + "type": "boolean", + "description": "Indicates if the certificate contains a private key." + }, + { + "name": "certificate.nonce", + "in": "query", + "required": false, + "type": "string", + "description": "Random number generated to indicate Proof of Possession." + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "204": { + "description": "No content." + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/provisioningServices/{provisioningServiceName}": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the non-security related metadata of the provisioning service.", + "description": "Get the metadata of the provisioning service without SAS keys.", + "operationId": "IotDpsResource_Get", + "x-ms-examples": { + "DPSGet": { + "$ref": "./examples/DPSGet.json" + } + }, + "parameters": [ + { + "name": "provisioningServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the provisioning service to retrieve." + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Resource group name." + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Provisioning service description with no keys is included in the response.", + "schema": { + "$ref": "#/definitions/ProvisioningServiceDescription" + } + }, + "default": { + "description": "Default error response", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "put": { + "tags": [ + "PUT" + ], + "summary": "Create or update the metadata of the provisioning service.", + "description": "Create or update the metadata of the provisioning service. The usual pattern to modify a property is to retrieve the provisioning service metadata and security metadata, and then combine them with the modified values in a new body to update the provisioning service.", + "x-ms-long-running-operation": true, + "operationId": "IotDpsResource_CreateOrUpdate", + "x-ms-examples": { + "DPSCreate": { + "$ref": "./examples/DPSCreate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Resource group identifier." + }, + { + "name": "provisioningServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of provisioning service to create or update." + }, + { + "name": "iotDpsDescription", + "in": "body", + "required": true, + "description": "Description of the provisioning service to create or update.", + "schema": { + "$ref": "#/definitions/ProvisioningServiceDescription" + } + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "The body contains all the non-security properties of the provisioning service. Security-related properties are set to null.", + "schema": { + "$ref": "#/definitions/ProvisioningServiceDescription" + } + }, + "201": { + "description": "This is a long running operation. The operation returns a 201 if the validation is complete. The response includes an Azure-AsyncOperation header that contains a status URL. Clients are expected to poll the status URL for the status of the operation. If successful, the operation returns HTTP status code of 201 (OK).", + "schema": { + "$ref": "#/definitions/ProvisioningServiceDescription" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "patch": { + "tags": [ + "PATCH" + ], + "summary": "Update an existing provisioning service's tags.", + "description": "Update an existing provisioning service's tags. to update other fields use the CreateOrUpdate method", + "x-ms-long-running-operation": true, + "operationId": "IotDpsResource_Update", + "x-ms-examples": { + "DPSPatch": { + "$ref": "./examples/DPSPatch.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Resource group identifier." + }, + { + "name": "provisioningServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of provisioning service to create or update." + }, + { + "name": "ProvisioningServiceTags", + "in": "body", + "required": true, + "description": "Updated tag information to set into the provisioning service instance.", + "schema": { + "$ref": "#/definitions/TagsResource" + } + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Provisioning Service was successfully updated", + "schema": { + "$ref": "#/definitions/ProvisioningServiceDescription" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "delete": { + "tags": [ + "DELETE" + ], + "summary": "Delete the Provisioning Service", + "description": "Deletes the Provisioning Service.", + "x-ms-long-running-operation": true, + "operationId": "IotDpsResource_Delete", + "x-ms-examples": { + "DPSDelete": { + "$ref": "./examples/DPSDelete.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "provisioningServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of provisioning service to delete." + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Resource group identifier." + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "202": { + "description": "The provisioning service resource provider always returns a 202 Accepted status code with valid Location and Retry-After headers. The resource provider also sets the Azure-AsyncOperation header with a URL that points to the operation resource for this operation. Subsequent GET attempts on the resource after a DELETE operation return a resource representation that indicates a transitional provisioning state (such as Terminating). To retrieve the status of the operation, a client can either poll the URL returned in the Location header after the Retry-After interval, get the provisioning service status directly, or query the operation resource." + }, + "200": { + "description": "This is returned as a response to the status polling request for the delete operation. The body contains the resource representation that indicates a transitional provisioning state." + }, + "204": { + "description": "Once the long running delete operation completes successfully, a 204 No Content status code is returned when the status polling request finds the provisioning service metadata in the service and the status of the delete operation is set to a completed state." + }, + "404": { + "description": "After the long running delete operation completes successfully, a 404 Not Found is returned when the status polling request no longer finds the provisioning service metadata in the service." + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/provisioningServices/{provisioningServiceName}/certificates": { + "get": { + "tags": [ + "GET" + ], + "operationId": "DpsCertificate_List", + "description": "Get all the certificates tied to the provisioning service.", + "x-ms-examples": { + "DPSGetCertificates": { + "$ref": "./examples/DPSGetCertificates.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of resource group." + }, + { + "name": "provisioningServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of provisioning service to retrieve certificates for." + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "List of certificate descriptions in a JSON-serialized array.", + "schema": { + "$ref": "#/definitions/CertificateListDescription" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Devices/provisioningServices": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get all the provisioning services in a subscription.", + "description": "List all the provisioning services for a given subscription id.", + "operationId": "IotDpsResource_ListBySubscription", + "x-ms-examples": { + "DPSListBySubscription": { + "$ref": "./examples/DPSListBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of the metadata from all the provisioning services in the subscription.", + "schema": { + "$ref": "#/definitions/ProvisioningServiceDescriptionListResult" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/provisioningServices": { + "get": { + "tags": [ + "GET" + ], + "operationId": "IotDpsResource_ListByResourceGroup", + "description": "Get a list of all provisioning services in the given resource group.", + "x-ms-examples": { + "DPSListByResourceGroup": { + "$ref": "./examples/DPSListByResourceGroup.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Resource group identifier." + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "List of provisioning services in the resource group.", + "schema": { + "$ref": "#/definitions/ProvisioningServiceDescriptionListResult" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/provisioningServices/{provisioningServiceName}/operationresults/{operationId}": { + "get": { + "tags": [ + "GET" + ], + "operationId": "IotDpsResource_GetOperationResult", + "description": "Gets the status of a long running operation, such as create, update or delete a provisioning service.", + "x-ms-examples": { + "DPSGetOperationResult": { + "$ref": "./examples/DPSGetOperationResult.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "Operation id corresponding to long running operation. Use this to poll for the status." + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Resource group identifier." + }, + { + "name": "provisioningServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of provisioning service that the operation is running on." + }, + { + "name": "asyncinfo", + "in": "query", + "description": "Async header used to poll on the status of the operation, obtained while creating the long running operation.", + "required": true, + "type": "string", + "default": "true" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "The status of the long running operation.", + "schema": { + "$ref": "#/definitions/AsyncOperationResult" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/provisioningServices/{provisioningServiceName}/skus": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the list of valid SKUs for a provisioning service.", + "description": "Gets the list of valid SKUs and tiers for a provisioning service.", + "operationId": "IotDpsResource_listValidSkus", + "x-ms-examples": { + "DPSGetValidSku": { + "$ref": "./examples/DPSGetValidSku.json" + } + }, + "parameters": [ + { + "name": "provisioningServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of provisioning service." + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of resource group." + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of the valid SKUs for this provisioning service.", + "schema": { + "$ref": "#/definitions/IotDpsSkuDefinitionListResult" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/provisioningServices/{provisioningServiceName}/certificates/{certificateName}/generateVerificationCode": { + "post": { + "tags": [ + "POST" + ], + "operationId": "DpsCertificate_GenerateVerificationCode", + "description": "Generate verification code for Proof of Possession.", + "x-ms-examples": { + "DPSGenerateVerificationCode": { + "$ref": "./examples/DPSGenerateVerificationCode.json" + } + }, + "parameters": [ + { + "name": "certificateName", + "in": "path", + "required": true, + "type": "string", + "description": "The mandatory logical name of the certificate, that the provisioning service uses to access." + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "ETag of the certificate. This is required to update an existing certificate, and ignored while creating a brand new certificate." + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "name of resource group." + }, + { + "name": "provisioningServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of provisioning service." + }, + { + "name": "certificate.name", + "in": "query", + "required": false, + "type": "string", + "description": "Common Name for the certificate." + }, + { + "name": "certificate.rawBytes", + "in": "query", + "required": false, + "type": "string", + "format": "byte", + "description": "Raw data of certificate." + }, + { + "name": "certificate.isVerified", + "in": "query", + "required": false, + "type": "boolean", + "description": "Indicates if the certificate has been verified by owner of the private key." + }, + { + "name": "certificate.purpose", + "in": "query", + "required": false, + "type": "string", + "description": "Description mentioning the purpose of the certificate.", + "enum": [ + "clientAuthentication", + "serverAuthentication" + ], + "x-ms-enum": { + "name": "CertificatePurpose", + "modelAsString": true + } + }, + { + "name": "certificate.created", + "in": "query", + "required": false, + "type": "string", + "format": "date-time", + "description": "Certificate creation time." + }, + { + "name": "certificate.lastUpdated", + "in": "query", + "required": false, + "type": "string", + "format": "date-time", + "description": "Certificate last updated time." + }, + { + "name": "certificate.hasPrivateKey", + "in": "query", + "required": false, + "type": "boolean", + "description": "Indicates if the certificate contains private key." + }, + { + "name": "certificate.nonce", + "in": "query", + "required": false, + "type": "string", + "description": "Random number generated to indicate Proof of Possession." + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Generated verification code for that certificate is returned.", + "schema": { + "$ref": "#/definitions/VerificationCodeResponse" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/provisioningServices/{provisioningServiceName}/certificates/{certificateName}/verify": { + "post": { + "tags": [ + "POST" + ], + "operationId": "DpsCertificate_VerifyCertificate", + "summary": "Verify certificate's private key possession.", + "description": "Verifies the certificate's private key possession by providing the leaf cert issued by the verifying pre uploaded certificate.", + "x-ms-examples": { + "DPSVerifyCertificate": { + "$ref": "./examples/DPSVerifyCertificate.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "certificateName", + "in": "path", + "required": true, + "type": "string", + "description": "The mandatory logical name of the certificate, that the provisioning service uses to access." + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "ETag of the certificate." + }, + { + "name": "request", + "in": "body", + "required": true, + "description": "The name of the certificate", + "schema": { + "$ref": "#/definitions/VerificationCodeRequest" + } + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Resource group name." + }, + { + "name": "provisioningServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Provisioning service name." + }, + { + "name": "certificate.name", + "in": "query", + "required": false, + "type": "string", + "description": "Common Name for the certificate." + }, + { + "name": "certificate.rawBytes", + "in": "query", + "required": false, + "type": "string", + "format": "byte", + "description": "Raw data of certificate." + }, + { + "name": "certificate.isVerified", + "in": "query", + "required": false, + "type": "boolean", + "description": "Indicates if the certificate has been verified by owner of the private key." + }, + { + "name": "certificate.purpose", + "in": "query", + "required": false, + "description": "Describe the purpose of the certificate.", + "type": "string", + "enum": [ + "clientAuthentication", + "serverAuthentication" + ], + "x-ms-enum": { + "name": "CertificatePurpose", + "modelAsString": true + } + }, + { + "name": "certificate.created", + "in": "query", + "required": false, + "type": "string", + "format": "date-time", + "description": "Certificate creation time." + }, + { + "name": "certificate.lastUpdated", + "in": "query", + "required": false, + "type": "string", + "format": "date-time", + "description": "Certificate last updated time." + }, + { + "name": "certificate.hasPrivateKey", + "in": "query", + "required": false, + "type": "boolean", + "description": "Indicates if the certificate contains private key." + }, + { + "name": "certificate.nonce", + "in": "query", + "required": false, + "type": "string", + "description": "Random number generated to indicate Proof of Possession." + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CertificateResponse" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Devices/checkProvisioningServiceNameAvailability": { + "post": { + "tags": [ + "POST" + ], + "operationId": "IotDpsResource_CheckProvisioningServiceNameAvailability", + "x-ms-examples": { + "DPSCheckName": { + "$ref": "./examples/DPSCheckNameAvailability.json" + } + }, + "summary": "Check if a provisioning service name is available.", + "description": "Check if a provisioning service name is available. This will validate if the name is syntactically valid and if the name is usable", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "arguments", + "in": "body", + "required": true, + "description": "Set the name parameter in the OperationInputs structure to the name of the provisioning service to check.", + "schema": { + "$ref": "#/definitions/OperationInputs" + } + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized response that specifies whether the provisioning service name is available. If the name is not available, the body contains the reason.", + "schema": { + "$ref": "#/definitions/NameAvailabilityInfo" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/provisioningServices/{provisioningServiceName}/listkeys": { + "post": { + "tags": [ + "POST" + ], + "operationId": "IotDpsResource_ListKeys", + "x-ms-examples": { + "DPSListKeys": { + "$ref": "./examples/DPSListKeys.json" + } + }, + "summary": "Get the security metadata for a provisioning service.", + "description": "List the primary and secondary keys for a provisioning service.", + "parameters": [ + { + "name": "provisioningServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "The provisioning service name to get the shared access keys for." + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "resource group name" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of shared access policies, including keys, that you can use to access the provisioning service endpoints.", + "schema": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRuleListResult" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/provisioningServices/{provisioningServiceName}/keys/{keyName}/listkeys": { + "post": { + "tags": [ + "POST" + ], + "operationId": "IotDpsResource_ListKeysForKeyName", + "x-ms-examples": { + "DPSGetKey": { + "$ref": "./examples/DPSGetKey.json" + } + }, + "summary": "Get a shared access policy by name from a provisioning service.", + "description": "List primary and secondary keys for a specific key name", + "parameters": [ + { + "name": "provisioningServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the provisioning service." + }, + { + "name": "keyName", + "in": "path", + "required": true, + "type": "string", + "description": "Logical key name to get key-values for." + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "description": "The name of the resource group that contains the provisioning service.", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized shared access policy, including keys, that you can use to access one or more provisioning service endpoints.", + "schema": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRule[AccessRightsDescription]" + } + }, + "default": { + "description": "Default error response.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + } + } + }, + "definitions": { + "AsyncOperationResult": { + "type": "object", + "description": "Result of a long running operation.", + "properties": { + "status": { + "description": "current status of a long running operation.", + "type": "string" + }, + "error": { + "description": "Error message containing code, description and details", + "$ref": "#/definitions/ErrorMesssage" + } + } + }, + "ErrorMesssage": { + "description": "Error response containing message and code.", + "type": "object", + "properties": { + "code": { + "description": "standard error code", + "type": "string" + }, + "message": { + "description": "standard error description", + "type": "string" + }, + "details": { + "description": "detailed summary of error", + "type": "string" + } + } + }, + "CertificateListDescription": { + "description": "The JSON-serialized array of Certificate objects.", + "type": "object", + "properties": { + "value": { + "description": "The array of Certificate objects.", + "type": "array", + "items": { + "$ref": "#/definitions/CertificateResponse" + } + } + } + }, + "CertificateBodyDescription": { + "description": "The JSON-serialized X509 Certificate.", + "type": "object", + "properties": { + "certificate": { + "description": "Base-64 representation of the X509 leaf certificate .cer file or just .pem file content.", + "type": "string" + } + } + }, + "CertificateResponse": { + "description": "The X509 Certificate.", + "type": "object", + "properties": { + "properties": { + "description": "properties of a certificate", + "$ref": "#/definitions/CertificateProperties" + }, + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "name": { + "description": "The name of the certificate.", + "type": "string", + "readOnly": true + }, + "etag": { + "description": "The entity tag.", + "type": "string", + "readOnly": true + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + } + }, + "x-ms-azure-resource": true + }, + "CertificateProperties": { + "description": "The description of an X509 CA Certificate.", + "type": "object", + "properties": { + "subject": { + "description": "The certificate's subject name.", + "type": "string", + "readOnly": true + }, + "expiry": { + "description": "The certificate's expiration date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "thumbprint": { + "description": "The certificate's thumbprint.", + "type": "string", + "readOnly": true + }, + "isVerified": { + "description": "Determines whether certificate has been verified.", + "type": "boolean", + "readOnly": true + }, + "created": { + "description": "The certificate's creation date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "updated": { + "description": "The certificate's last update date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + } + } + }, + "IotDpsSkuInfo": { + "type": "object", + "description": "List of possible provisioning service SKUs.", + "properties": { + "name": { + "description": "Sku name.", + "enum": [ + "S1" + ], + "type": "string", + "x-ms-enum": { + "name": "IotDpsSku", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "readOnly": true, + "description": "Pricing tier name of the provisioning service." + }, + "capacity": { + "format": "int64", + "type": "integer", + "description": "The number of units to provision" + } + } + }, + "ProvisioningServiceDescription": { + "description": "The description of the provisioning service.", + "type": "object", + "properties": { + "etag": { + "description": "The Etag field is *not* required. If it is provided in the response body, it must also be provided as a header per the normal ETag convention.", + "type": "string" + }, + "properties": { + "description": "Service specific properties for a provisioning service", + "$ref": "#/definitions/IotDpsPropertiesDescription" + }, + "sku": { + "description": "Sku info for a provisioning Service.", + "$ref": "#/definitions/IotDpsSkuInfo" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "required": [ + "sku", + "properties" + ] + }, + "IotDpsPropertiesDescription": { + "description": "the service specific properties of a provisioning service, including keys, linked iot hubs, current state, and system generated properties such as hostname and idScope", + "type": "object", + "properties": { + "state": { + "description": "Current state of the provisioning service.", + "enum": [ + "Activating", + "Active", + "Deleting", + "Deleted", + "ActivationFailed", + "DeletionFailed", + "Transitioning", + "Suspending", + "Suspended", + "Resuming", + "FailingOver", + "FailoverFailed" + ], + "type": "string", + "x-ms-enum": { + "name": "state", + "modelAsString": true + } + }, + "ipFilterRules": { + "description": "The IP filter rules.", + "type": "array", + "items": { + "$ref": "#/definitions/IpFilterRule" + } + }, + "provisioningState": { + "description": "The ARM provisioning state of the provisioning service.", + "type": "string" + }, + "iotHubs": { + "type": "array", + "description": "List of IoT hubs associated with this provisioning service.", + "items": { + "$ref": "#/definitions/IotHubDefinitionDescription" + } + }, + "allocationPolicy": { + "enum": [ + "Hashed", + "GeoLatency", + "Static" + ], + "type": "string", + "description": "Allocation policy to be used by this provisioning service.", + "x-ms-enum": { + "name": "AllocationPolicy", + "modelAsString": true + } + }, + "serviceOperationsHostName": { + "description": "Service endpoint for provisioning service.", + "type": "string", + "readOnly": true + }, + "deviceProvisioningHostName": { + "type": "string", + "description": "Device endpoint for this provisioning service.", + "readOnly": true + }, + "idScope": { + "type": "string", + "description": "Unique identifier of this provisioning service.", + "readOnly": true + }, + "authorizationPolicies": { + "description": "List of authorization keys for a provisioning service.", + "type": "array", + "items": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRule[AccessRightsDescription]" + } + } + } + }, + "IotHubDefinitionDescription": { + "type": "object", + "description": "Description of the IoT hub.", + "properties": { + "applyAllocationPolicy": { + "description": "flag for applying allocationPolicy or not for a given iot hub.", + "type": "boolean" + }, + "allocationWeight": { + "description": "weight to apply for a given iot h.", + "format": "int32", + "type": "integer" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Host name of the IoT hub." + }, + "connectionString": { + "type": "string", + "description": "Connection string og the IoT hub." + }, + "location": { + "type": "string", + "description": "ARM region of the IoT hub." + } + }, + "required": [ + "connectionString", + "location" + ] + }, + "IpFilterRule": { + "description": "The IP filter rules for the IoT dps.", + "type": "object", + "properties": { + "filterName": { + "description": "The name of the IP filter rule.", + "type": "string" + }, + "action": { + "description": "The desired action for requests captured by this rule.", + "enum": [ + "Accept", + "Reject" + ], + "type": "string", + "x-ms-enum": { + "name": "IpFilterActionType", + "modelAsString": false + } + }, + "ipMask": { + "description": "A string that contains the IP address range in CIDR notation for the rule.", + "type": "string" + }, + "target": { + "description": "Target for requests captured by this rule.", + "enum": [ + "all", + "serviceApi", + "deviceApi" + ], + "type": "string", + "x-ms-enum": { + "name": "IpFilterTargetType", + "modelAsString": false + } + } + }, + "required": [ + "filterName", + "action", + "ipMask" + ] + }, + "SharedAccessSignatureAuthorizationRule[AccessRightsDescription]": { + "type": "object", + "description": "Description of the shared access key.", + "properties": { + "keyName": { + "type": "string", + "description": "Name of the key." + }, + "primaryKey": { + "type": "string", + "description": "Primary SAS key value." + }, + "secondaryKey": { + "type": "string", + "description": "Secondary SAS key value." + }, + "rights": { + "description": "Rights that this key has.", + "enum": [ + "ServiceConfig", + "EnrollmentRead", + "EnrollmentWrite", + "DeviceConnect", + "RegistrationStatusRead", + "RegistrationStatusWrite" + ], + "type": "string", + "x-ms-enum": { + "name": "AccessRightsDescription", + "modelAsString": true + } + } + }, + "required": [ + "keyName", + "rights" + ] + }, + "Resource": { + "description": "The common properties of an Azure resource.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The resource name.", + "pattern": "^(?![0-9]+$)(?!-)[a-zA-Z0-9-]{2,49}[a-zA-Z0-9]$" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "location": { + "type": "string", + "description": "The resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The resource tags." + } + }, + "x-ms-azure-resource": true, + "required": [ + "location" + ] + }, + "OperationListResult": { + "description": "Result of the request to list IoT Hub operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "description": "List of IoT Hub operations supported by the Microsoft.Devices resource provider.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Operation" + } + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "Operation": { + "description": "IoT Hub REST API operation.", + "type": "object", + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Operation name: {provider}/{resource}/{read | write | action | delete}" + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "provider": { + "readOnly": true, + "type": "string", + "description": "Service provider: Microsoft Devices." + }, + "resource": { + "readOnly": true, + "type": "string", + "description": "Resource Type: ProvisioningServices." + }, + "operation": { + "readOnly": true, + "type": "string", + "description": "Name of the operation." + } + } + } + } + }, + "ErrorDetails": { + "description": "Error details.", + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "httpStatusCode": { + "description": "The HTTP status code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The error message.", + "type": "string", + "readOnly": true + }, + "details": { + "description": "The error details.", + "type": "string", + "readOnly": true + } + } + }, + "SharedAccessSignatureAuthorizationRuleListResult": { + "type": "object", + "description": "List of shared access keys.", + "properties": { + "value": { + "description": "The list of shared access policies.", + "type": "array", + "items": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRule[AccessRightsDescription]" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "IotDpsSkuDefinitionListResult": { + "type": "object", + "description": "List of available SKUs.", + "properties": { + "value": { + "description": "The list of SKUs", + "type": "array", + "items": { + "$ref": "#/definitions/IotDpsSkuDefinition" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "IotDpsSkuDefinition": { + "type": "object", + "description": "Available SKUs of tier and units.", + "properties": { + "name": { + "description": "Sku name.", + "enum": [ + "S1" + ], + "type": "string", + "x-ms-enum": { + "name": "IotDpsSku", + "modelAsString": true + } + } + } + }, + "OperationInputs": { + "description": "Input values for operation results call.", + "type": "object", + "properties": { + "name": { + "description": "The name of the Provisioning Service to check.", + "type": "string" + } + }, + "required": [ + "name" + ] + }, + "NameAvailabilityInfo": { + "type": "object", + "description": "Description of name availability.", + "properties": { + "nameAvailable": { + "description": "specifies if a name is available or not", + "type": "boolean" + }, + "reason": { + "description": "specifies the reason a name is unavailable", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "type": "string", + "x-ms-enum": { + "name": "NameUnavailabilityReason", + "modelAsString": true + } + }, + "message": { + "description": "message containing a detailed reason name is unavailable", + "type": "string" + } + } + }, + "TagsResource": { + "properties": { + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "description": "A container holding only the Tags for a resource, allowing the user to update the tags on a Provisioning Service instance." + }, + "ProvisioningServiceDescriptionListResult": { + "type": "object", + "description": "List of provisioning service descriptions.", + "properties": { + "value": { + "description": "List of provisioning service descriptions.", + "type": "array", + "items": { + "$ref": "#/definitions/ProvisioningServiceDescription" + } + }, + "nextLink": { + "description": "the next link", + "type": "string", + "readOnly": true + } + } + }, + "VerificationCodeResponse": { + "type": "object", + "description": "Description of the response of the verification code.", + "properties": { + "name": { + "type": "string", + "description": "Name of certificate.", + "readOnly": true + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "Request etag." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "properties": { + "type": "object", + "properties": { + "verificationCode": { + "type": "string", + "description": "Verification code." + }, + "subject": { + "type": "string", + "description": "Certificate subject." + }, + "expiry": { + "type": "string", + "description": "Code expiry." + }, + "thumbprint": { + "type": "string", + "description": "Certificate thumbprint." + }, + "isVerified": { + "type": "boolean", + "description": "Indicate if the certificate is verified by owner of private key." + }, + "created": { + "type": "string", + "description": "Certificate created time." + }, + "updated": { + "type": "string", + "description": "Certificate updated time." + } + } + } + }, + "x-ms-azure-resource": true + }, + "VerificationCodeRequest": { + "type": "object", + "description": "The JSON-serialized leaf certificate", + "properties": { + "certificate": { + "description": "base-64 representation of X509 certificate .cer file or just .pem file content.", + "type": "string" + } + } + } + }, + "parameters": { + "subscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription identifier.", + "required": true, + "type": "string" + }, + "api-version": { + "name": "api-version", + "in": "query", + "description": "The version of the API.", + "required": true, + "type": "string" + } + } +} diff --git a/specification/deviceprovisioningservices/resource-manager/readme.md b/specification/deviceprovisioningservices/resource-manager/readme.md index 12b9dedbbe9a..9d6a860f4177 100644 --- a/specification/deviceprovisioningservices/resource-manager/readme.md +++ b/specification/deviceprovisioningservices/resource-manager/readme.md @@ -54,6 +54,15 @@ input-file: - Microsoft.Devices/stable/2018-01-22/iotdps.json ``` +### Tag: package-2020-01 + +These settings apply only when `--tag=package-2020-01` is specified on the command line. + +``` yaml $(tag) == 'package-2020-01' +input-file: +- Microsoft.Devices/stable/2020-01-01/iotdps.json +``` + --- # Code Generation @@ -198,6 +207,7 @@ 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 ``` diff --git a/specification/devspaces/resource-manager/Microsoft.DevSpaces/stable/2019-04-01/devspaces.json b/specification/devspaces/resource-manager/Microsoft.DevSpaces/stable/2019-04-01/devspaces.json index df71ae6c0d71..0073aece4f84 100644 --- a/specification/devspaces/resource-manager/Microsoft.DevSpaces/stable/2019-04-01/devspaces.json +++ b/specification/devspaces/resource-manager/Microsoft.DevSpaces/stable/2019-04-01/devspaces.json @@ -287,7 +287,7 @@ } }, "default": { - "description": "Error response describing the reason for operation failure. 404 - NotFound(Azure Dev Spaces Controller doesn't exist.), 400 - BadRequest(One or more update parameters are invalid.)", + "description": "Error response describing the reason for operation failure. 404 - NotFound(Azure Dev Spaces Controller doesn't exist.), 400 - BadRequest(One or more update parameters are invalid.), 409 - Conflict(Target container host is not in a supported state.)", "schema": { "$ref": "#/definitions/DevSpacesErrorResponse" } @@ -583,6 +583,11 @@ "type": "string", "readOnly": true }, + "targetContainerHostApiServerFqdn": { + "description": "DNS of the target container host's API server", + "type": "string", + "readOnly": true + }, "targetContainerHostResourceId": { "description": "Resource ID of the target container host", "type": "string", diff --git a/specification/devspaces/resource-manager/Microsoft.DevSpaces/stable/2019-04-01/examples/ControllersCreate_example.json b/specification/devspaces/resource-manager/Microsoft.DevSpaces/stable/2019-04-01/examples/ControllersCreate_example.json index 34e94e7497a7..2c28e07a3c73 100644 --- a/specification/devspaces/resource-manager/Microsoft.DevSpaces/stable/2019-04-01/examples/ControllersCreate_example.json +++ b/specification/devspaces/resource-manager/Microsoft.DevSpaces/stable/2019-04-01/examples/ControllersCreate_example.json @@ -32,7 +32,8 @@ "properties": { "provisioningState": "Succeeded", "dataPlaneFqdn": "dataplane.azds.io", - "targetContainerHostResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerService/managedClusters/myCluster" + "targetContainerHostResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerService/managedClusters/myCluster", + "targetContainerHostApiServerFqdn": "myCluster.hcp.eastus.azmk8s.io" } } }, @@ -49,7 +50,8 @@ }, "properties": { "provisioningState": "Creating", - "targetContainerHostResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerService/managedClusters/myCluster" + "targetContainerHostResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerService/managedClusters/myCluster", + "targetContainerHostApiServerFqdn": "myCluster.hcp.eastus.azmk8s.io" } } } diff --git a/specification/devspaces/resource-manager/Microsoft.DevSpaces/stable/2019-04-01/examples/ControllersGet_example.json b/specification/devspaces/resource-manager/Microsoft.DevSpaces/stable/2019-04-01/examples/ControllersGet_example.json index f4a48472b31a..aec6e6812917 100644 --- a/specification/devspaces/resource-manager/Microsoft.DevSpaces/stable/2019-04-01/examples/ControllersGet_example.json +++ b/specification/devspaces/resource-manager/Microsoft.DevSpaces/stable/2019-04-01/examples/ControllersGet_example.json @@ -20,7 +20,8 @@ "properties": { "provisioningState": "Succeeded", "dataPlaneFqdn": "dataplane.azds.io", - "targetContainerHostResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerService/managedClusters/myCluster" + "targetContainerHostResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerService/managedClusters/myCluster", + "targetContainerHostApiServerFqdn": "myCluster.hcp.eastus.azmk8s.io" } } } diff --git a/specification/devspaces/resource-manager/Microsoft.DevSpaces/stable/2019-04-01/examples/ControllersListByResourceGroup_example.json b/specification/devspaces/resource-manager/Microsoft.DevSpaces/stable/2019-04-01/examples/ControllersListByResourceGroup_example.json index fdbddaaa8eb7..146977ebe96e 100644 --- a/specification/devspaces/resource-manager/Microsoft.DevSpaces/stable/2019-04-01/examples/ControllersListByResourceGroup_example.json +++ b/specification/devspaces/resource-manager/Microsoft.DevSpaces/stable/2019-04-01/examples/ControllersListByResourceGroup_example.json @@ -21,7 +21,8 @@ "properties": { "provisioningState": "Succeeded", "dataPlaneFqdn": "dataplane.azds.io", - "targetContainerHostResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerService/managedClusters/myCluster" + "targetContainerHostResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerService/managedClusters/myCluster", + "targetContainerHostApiServerFqdn": "myCluster.hcp.eastus.azmk8s.io" } } ] diff --git a/specification/devspaces/resource-manager/Microsoft.DevSpaces/stable/2019-04-01/examples/ControllersList_example.json b/specification/devspaces/resource-manager/Microsoft.DevSpaces/stable/2019-04-01/examples/ControllersList_example.json index b9cf7143c638..9ef66aaebcea 100644 --- a/specification/devspaces/resource-manager/Microsoft.DevSpaces/stable/2019-04-01/examples/ControllersList_example.json +++ b/specification/devspaces/resource-manager/Microsoft.DevSpaces/stable/2019-04-01/examples/ControllersList_example.json @@ -20,7 +20,8 @@ "properties": { "provisioningState": "Succeeded", "dataPlaneFqdn": "dataplane.azds.io", - "targetContainerHostResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerService/managedClusters/myCluster" + "targetContainerHostResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerService/managedClusters/myCluster", + "targetContainerHostApiServerFqdn": "myCluster.hcp.eastus.azmk8s.io" } } ] diff --git a/specification/devspaces/resource-manager/Microsoft.DevSpaces/stable/2019-04-01/examples/ControllersUpdate_example.json b/specification/devspaces/resource-manager/Microsoft.DevSpaces/stable/2019-04-01/examples/ControllersUpdate_example.json index 1f192b025a37..49f68fdb7c70 100644 --- a/specification/devspaces/resource-manager/Microsoft.DevSpaces/stable/2019-04-01/examples/ControllersUpdate_example.json +++ b/specification/devspaces/resource-manager/Microsoft.DevSpaces/stable/2019-04-01/examples/ControllersUpdate_example.json @@ -28,7 +28,8 @@ "properties": { "provisioningState": "Succeeded", "dataPlaneFqdn": "dataplane.azds.io", - "targetContainerHostResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerService/managedClusters/myCluster" + "targetContainerHostResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerService/managedClusters/myCluster", + "targetContainerHostApiServerFqdn": "myCluster.hcp.eastus.azmk8s.io" } } }, @@ -48,7 +49,8 @@ "properties": { "provisioningState": "Updating", "dataPlaneFqdn": "dataplane.azds.io", - "targetContainerHostResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerService/managedClusters/myCluster" + "targetContainerHostResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.ContainerService/managedClusters/myCluster", + "targetContainerHostApiServerFqdn": "myCluster.hcp.eastus.azmk8s.io" } } } diff --git a/specification/devspaces/resource-manager/readme.md b/specification/devspaces/resource-manager/readme.md index 8a5943bee542..9bd342062655 100644 --- a/specification/devspaces/resource-manager/readme.md +++ b/specification/devspaces/resource-manager/readme.md @@ -135,3 +135,10 @@ uncomment the `exclude-file` section below and add the file paths. # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` +## Suppression +``` yaml +directive: + - from: devspaces.json + suppress: OAV131 # DISCRIMINATOR_NOT_REQUIRED + reason: instanceType is a non-settable property from the client. +``` diff --git a/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/preview/2020-03-01-preview/digitaltwins.json b/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/preview/2020-03-01-preview/digitaltwins.json index dd60faec5208..f508d048a176 100644 --- a/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/preview/2020-03-01-preview/digitaltwins.json +++ b/specification/digitaltwins/resource-manager/Microsoft.DigitalTwins/preview/2020-03-01-preview/digitaltwins.json @@ -1177,7 +1177,6 @@ ], "properties": { "properties": { - "x-ms-client-flatten": true, "description": "DigitalTwinsInstance endpoint resource properties.", "$ref": "#/definitions/DigitalTwinsEndpointResourceProperties" } diff --git a/specification/digitaltwins/resource-manager/readme.md b/specification/digitaltwins/resource-manager/readme.md index 3637629ef595..7e6c12494037 100644 --- a/specification/digitaltwins/resource-manager/readme.md +++ b/specification/digitaltwins/resource-manager/readme.md @@ -24,7 +24,7 @@ For other options on installation see [Installing AutoRest](https://aka.ms/autor These are the global settings for the digitaltwins. -```yaml +``` yaml openapi-type: arm tag: package-2020-03-01-preview ``` @@ -33,7 +33,7 @@ tag: package-2020-03-01-preview These settings apply only when `--tag=package-2020-03-01-preview` is specified on the command line. -```yaml $(tag) == 'package-2020-03-01-preview' +``` yaml $(tag) == 'package-2020-03-01-preview' input-file: - Microsoft.DigitalTwins/preview/2020-03-01-preview/digitaltwins.json ``` @@ -47,7 +47,7 @@ input-file: This section describes what SDK should be generated by the automatic system. This is not used by Autorest itself. -```yaml $(swagger-to-sdk) +``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-python - repo: azure-sdk-for-java @@ -78,7 +78,7 @@ See configuration in [readme.typescript.md](./readme.typescript.md) See configuration in [readme.csharp.md](./readme.csharp.md) -## Multi-API/Profile support for AutoRest v3 generators +## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. @@ -94,7 +94,7 @@ input-file: ``` -If there are files that should not be in the `all-api-versions` set, +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' @@ -102,3 +102,14 @@ uncomment the `exclude-file` section below and add the file paths. # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` +## Suppression + +``` yaml +directive: + - suppress: AvoidNestedProperties + where: $.definitions.DigitalTwinsEndpointResource.properties.properties + from: digitaltwins.json + reason: |- + Flattening properties generates SDK (using autorest) that does not support polymorphism. + In this case DigitalTwinsEndpointResourceProperties is used as a base class for EventGrid, EventHub and ServiceBus. Flattening DigitalTwinsEndpointResourceProperties removes the link between DigitalTwinsEndpointResource and resources above. +``` diff --git a/specification/digitaltwins/resource-manager/readme.python.md b/specification/digitaltwins/resource-manager/readme.python.md index e17563d2181a..24e1b64ff0e7 100644 --- a/specification/digitaltwins/resource-manager/readme.python.md +++ b/specification/digitaltwins/resource-manager/readme.python.md @@ -8,8 +8,8 @@ python: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION payload-flattening-threshold: 2 - namespace: Microsoft.DigitalTwins - package-name: digitaltwins + namespace: azure.mgmt.digitaltwins + package-name: azure-mgmt-digitaltwins package-version: 2020-03-01-preview clear-output-folder: true ``` @@ -17,5 +17,5 @@ python: ```yaml $(python) python: no-namespace-folders: true - output-folder: $(python-sdks-folder)/azure-mgmt/digitaltwins + output-folder: $(python-sdks-folder)/digitaltwins/azure-mgmt-digitaltwins/azure/mgmt/digitaltwins ``` diff --git a/specification/dns/resource-manager/readme.cli.md b/specification/dns/resource-manager/readme.cli.md new file mode 100644 index 000000000000..f9d7f22c0541 --- /dev/null +++ b/specification/dns/resource-manager/readme.cli.md @@ -0,0 +1,65 @@ + +# Dns +This directory contains the Cli common model for the Dns service. + +> Metadata +``` yaml +# Migrated from Powershell's readme + +title: Dns + +cli: + cli-directive: + - select: 'parameter' + where: + operationGroup: 'recordSets' + parameter: 'parameters' + set: + name: 'record_set' + required: true + - select: 'parameter' + where: + operationGroup: 'recordSets' + parameter: 'relativeRecordSetName' + set: + name: 'name' + alias: relative_record_set_name + - select: 'parameter' + where: + operationGroup: 'recordSets' + parameter: '(recordsetnamesuffix|recordSetNameSuffix)' + set: + name: 'name_suffix' + - select: 'operation' + where: + operationGroup: 'recordSets' + operation: '^(createOrUpdate|update)$' + hidden: true + - select: 'parameter' + where: + operationGroup: 'dnsResourceReference' + parameter: 'parameters' + set: + name: 'resource_reference' + - select: 'operation' + where: + operationGroup: 'dnsResourceReference' + operation: 'getByTargetResources' + hidden: true + - select: 'operation' + where: + operationGroup: 'zones' + operation: 'update' + removed: true + - select: 'parameter' + where: + operationGroup: 'zones' + parameter: 'parameters' + set: + name: 'zone' + - select: 'operation' + where: + operationGroup: 'zones' + operation: 'createOrUpdate' + hidden: true +``` diff --git a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/domainservices.json b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/domainservices.json index 052a5e20473b..5654c5f25f55 100644 --- a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/domainservices.json +++ b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/domainservices.json @@ -491,7 +491,7 @@ } } }, - "ReplicaSet": { + "ReplicaSet": { "description": "Replica Set Definition", "properties": { "replicaSetId": { diff --git a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/CreateDomainService.json b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/CreateDomainService.json index 417bcb7fe6db..472a34281067 100644 --- a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/CreateDomainService.json +++ b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/CreateDomainService.json @@ -47,11 +47,11 @@ "location": "West US", "etag": "W/\"datetime'2017-04-10T04%3A42%3A19.7067387Z'\"", "properties": { - "version": 2, + "version": 2, "tenantId": "3f8cd22c-7b32-48aa-a01c-f533133b1def", "domainName": "TestDomainService.com", "deploymentId": "4a619871-0150-41c4-aeb4-0b10deb7940a", - "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", "replicaSets": [ { "replicaSetId": "4a619871-0150-41c4-aeb4-0b10deb7940a", @@ -100,11 +100,11 @@ "location": "West US", "etag": "W/\"datetime'2017-04-10T04%3A42%3A19.7067387Z'\"", "properties": { - "version": 2, + "version": 2, "tenantId": "3f8cd22c-7b32-48aa-a01c-f533133b1def", "domainName": "TestDomainService.com", "deploymentId": "4a619871-0150-41c4-aeb4-0b10deb7940a", - "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", "replicaSets": [ { "replicaSetId": "4a619871-0150-41c4-aeb4-0b10deb7940a", @@ -153,7 +153,7 @@ "location": "West US", "etag": "W/\"datetime'2017-04-10T04%3A42%3A19.7067387Z'\"", "properties": { - "version": 2, + "version": 2, "tenantId": "3f8cd22c-7b32-48aa-a01c-f533133b1def", "domainName": "TestDomainService.com", "replicaSets": [ diff --git a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/GetDomainService.json b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/GetDomainService.json index 9553e3590a05..da5850f9784d 100644 --- a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/GetDomainService.json +++ b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/GetDomainService.json @@ -18,11 +18,11 @@ }, "etag": "W/\"datetime'2017-04-10T04%3A42%3A19.7067387Z'\"", "properties": { - "version": 2, + "version": 2, "tenantId": "3f8cd22c-7b32-48aa-a01c-f533133b1def", "domainName": "TestDomainService.com", "deploymentId": "4a619871-0150-41c4-aeb4-0b10deb7940a", - "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", "replicaSets": [ { "replicaSetId": "4a619871-0150-41c4-aeb4-0b10deb7940a", diff --git a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/ListDomainServicesByResourceGroup.json b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/ListDomainServicesByResourceGroup.json index f1536af06a21..6fc61d10bb04 100644 --- a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/ListDomainServicesByResourceGroup.json +++ b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/ListDomainServicesByResourceGroup.json @@ -19,11 +19,11 @@ }, "etag": "W/\"datetime'2017-04-10T04%3A42%3A19.7067387Z'\"", "properties": { - "version": 2, + "version": 2, "tenantId": "3f8cd22c-7b32-48aa-a01c-f533133b1def", "domainName": "TestDomainService.com", "deploymentId": "4a619871-0150-41c4-aeb4-0b10deb7940a", - "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", "replicaSets": [ { "replicaSetId": "4a619871-0150-41c4-aeb4-0b10deb7940a", diff --git a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/ListDomainServicesBySubscription.json b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/ListDomainServicesBySubscription.json index 4181f4bb3ffb..553e034a9af0 100644 --- a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/ListDomainServicesBySubscription.json +++ b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/ListDomainServicesBySubscription.json @@ -18,11 +18,11 @@ }, "etag": "W/\"datetime'2017-04-10T04%3A42%3A19.7067387Z'\"", "properties": { - "version": 2, + "version": 2, "tenantId": "3f8cd22c-7b32-48aa-a01c-f533133b1def", "domainName": "TestDomainService.com", "deploymentId": "4a619871-0150-41c4-aeb4-0b10deb7940a", - "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", "replicaSets": [ { "replicaSetId": "4a619871-0150-41c4-aeb4-0b10deb7940a", diff --git a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/UpdateDomainService.json b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/UpdateDomainService.json index 35de395e3988..1d5d8b684199 100644 --- a/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/UpdateDomainService.json +++ b/specification/domainservices/resource-manager/Microsoft.AAD/stable/2020-01-01/examples/UpdateDomainService.json @@ -10,7 +10,7 @@ "replicaSets": [ { "location": "West US", - "subnetId": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/TestNetworkResourceGroup/providers/Microsoft.Network/virtualNetworks/TestVnetWUS/subnets/TestSubnetWUS" + "subnetId": "/subscriptions/1639790a-76a2-4ac4-98d9-8562f5dfcb4d/resourceGroups/TestNetworkResourceGroup/providers/Microsoft.Network/virtualNetworks/TestVnetWUS/subnets/TestSubnetWUS" }, { "location": "East US", @@ -53,11 +53,11 @@ }, "etag": "W/\"datetime'2017-04-10T04%3A42%3A19.7067387Z'\"", "properties": { - "version": 2, + "version": 2, "tenantId": "3f8cd22c-7b32-48aa-a01c-f533133b1def", "domainName": "TestDomainService.com", "deploymentId": "4a619871-0150-41c4-aeb4-0b10deb7940a", - "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", "replicaSets": [ { "replicaSetId": "4a619871-0150-41c4-aeb4-0b10deb7940a", @@ -117,11 +117,11 @@ "location": "West US", "etag": "W/\"datetime'2017-04-10T04%3A42%3A19.7067387Z'\"", "properties": { - "version": 2, + "version": 2, "tenantId": "3f8cd22c-7b32-48aa-a01c-f533133b1def", "domainName": "TestDomainService.com", "deploymentId": "4a619871-0150-41c4-aeb4-0b10deb7940a", - "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", + "syncOwner": "4a619871-0150-41c4-aeb4-0b10deb7940a", "replicaSets": [ { "replicaSetId": "4a619871-0150-41c4-aeb4-0b10deb7940a", diff --git a/specification/eventgrid/data-plane/Microsoft.Cache/stable/2018-01-01/RedisCache.json b/specification/eventgrid/data-plane/Microsoft.Cache/stable/2018-01-01/RedisCache.json new file mode 100644 index 000000000000..7bab3caac3a0 --- /dev/null +++ b/specification/eventgrid/data-plane/Microsoft.Cache/stable/2018-01-01/RedisCache.json @@ -0,0 +1,87 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-01-01", + "title": "Schema of Redis Cache events published to Azure Event Grid", + "description": "Describes the schema of the Redis Cache events published to Azure Event Grid. This corresponds to the Data property of an EventGridEvent." + }, + "paths": {}, + "definitions": { + "RedisPatchingCompletedEventData": { + "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Cache.PatchingCompleted event.", + "type": "object", + "properties": { + "timestamp": { + "description": "The time at which the event occurred.", + "format": "date-time", + "type": "string" + }, + "name": { + "description": "The name of this event.", + "type": "string" + }, + "status": { + "description": "The status of this event. Failed or succeeded ", + "type": "string" + } + } + }, + "RedisScalingCompletedEventData": { + "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Cache.ScalingCompleted event.", + "type": "object", + "properties": { + "timestamp": { + "description": "The time at which the event occurred.", + "format": "date-time", + "type": "string" + }, + "name": { + "description": "The name of this event.", + "type": "string" + }, + "status": { + "description": "The status of this event. Failed or succeeded ", + "type": "string" + } + } + }, + "RedisExportRDBCompletedEventData": { + "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Cache.ExportRDBCompleted event.", + "type": "object", + "properties": { + "timestamp": { + "description": "The time at which the event occurred.", + "format": "date-time", + "type": "string" + }, + "name": { + "description": "The name of this event.", + "type": "string" + }, + "status": { + "description": "The status of this event. Failed or succeeded ", + "type": "string" + } + } + }, + "RedisImportRDBCompletedEventData": { + "description": "Schema of the Data property of an EventGridEvent for an Microsoft.Cache.ImportRDBCompleted event.", + "type": "object", + "properties": { + "timestamp": { + "description": "The time at which the event occurred.", + "format": "date-time", + "type": "string" + }, + "name": { + "description": "The name of this event.", + "type": "string" + }, + "status": { + "description": "The status of this event. Failed or succeeded ", + "type": "string" + } + } + } + } +} diff --git a/specification/eventgrid/data-plane/Microsoft.MachineLearningServices/stable/2018-01-01/MachineLearningServices.json b/specification/eventgrid/data-plane/Microsoft.MachineLearningServices/stable/2018-01-01/MachineLearningServices.json index 0934272be086..7f2bc6f2bc4a 100644 --- a/specification/eventgrid/data-plane/Microsoft.MachineLearningServices/stable/2018-01-01/MachineLearningServices.json +++ b/specification/eventgrid/data-plane/Microsoft.MachineLearningServices/stable/2018-01-01/MachineLearningServices.json @@ -17,7 +17,7 @@ }, "modelVersion": { "description": "The version of the model that was registered.", - "type": "integer" + "type": "string" }, "modelTags": { "description": "The tags of the model that was registered.", @@ -125,6 +125,40 @@ "format": "date-time" } } + }, + "MachineLearningServicesRunStatusChangedEventData": { + "description": "Schema of the Data property of an EventGridEvent for an Microsoft.MachineLearningServices.RunStatusChanged event.", + "type": "object", + "properties": { + "experimentId": { + "description": "The ID of the experiment that the Machine Learning Run belongs to.", + "type": "string" + }, + "experimentName": { + "description": "The name of the experiment that the Machine Learning Run belongs to.", + "type": "string" + }, + "runId": { + "description": "The ID of the Machine Learning Run.", + "type": "string" + }, + "runType": { + "description": "The Run Type of the Machine Learning Run.", + "type": "string" + }, + "runTags": { + "description": "The tags of the Machine Learning Run.", + "type": "object" + }, + "runProperties": { + "description": "The properties of the Machine Learning Run.", + "type": "object" + }, + "runStatus": { + "description": "The status of the Machine Learning Run.", + "type": "string" + } + } } } } diff --git a/specification/eventgrid/data-plane/readme.md b/specification/eventgrid/data-plane/readme.md index 9d7fa706249b..aa5a71eb52c0 100644 --- a/specification/eventgrid/data-plane/readme.md +++ b/specification/eventgrid/data-plane/readme.md @@ -57,6 +57,7 @@ input-file: - Microsoft.SignalRService/stable/2018-01-01/SignalRService.json - Microsoft.KeyVault/stable/2018-01-01/KeyVault.json - Microsoft.MachineLearningServices/stable/2018-01-01/MachineLearningServices.json +- Microsoft.Cache/stable/2018-01-01/RedisCache.json ``` --- @@ -137,6 +138,7 @@ input-file: - $(this-folder)/Microsoft.SignalRService/stable/2018-01-01/SignalRService.json - $(this-folder)/Microsoft.KeyVault/stable/2018-01-01/KeyVault.json - $(this-folder)/Microsoft.MachineLearningServices/stable/2018-01-01/MachineLearningServices.json + - $(this-folder)/Microsoft.Cache/stable/2018-01-01/RedisCache.json ``` diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/EventGrid.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/EventGrid.json index 9278b810fb27..4c189d18d19f 100644 --- a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/EventGrid.json +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/EventGrid.json @@ -225,6 +225,9 @@ } ], "responses": { + "200": { + "description": "OK" + }, "201": { "description": "Domain update request accepted.", "schema": { @@ -695,6 +698,255 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerNamespaces/{partnerNamespaceName}/eventChannels/{eventChannelName}": { + "get": { + "tags": [ + "EventChannels" + ], + "summary": "Get an event channel.", + "description": "Get properties of an event channel.", + "operationId": "EventChannels_Get", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "partnerNamespaceName", + "in": "path", + "description": "Name of the partner namespace.", + "required": true, + "type": "string" + }, + { + "name": "eventChannelName", + "in": "path", + "description": "Name of the event channel.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EventChannel" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "EventChannels_Get": { + "$ref": "./examples/EventChannels_Get.json" + } + } + }, + "put": { + "tags": [ + "EventChannels" + ], + "summary": "Create an event channel.", + "description": "Asynchronously creates a new event channel with the specified parameters.", + "operationId": "EventChannels_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "partnerNamespaceName", + "in": "path", + "description": "Name of the partner namespace.", + "required": true, + "type": "string" + }, + { + "name": "eventChannelName", + "in": "path", + "description": "Name of the event channel.", + "required": true, + "type": "string" + }, + { + "name": "eventChannelInfo", + "in": "body", + "description": "EventChannel information.", + "required": true, + "schema": { + "$ref": "#/definitions/EventChannel" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EventChannel" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "EventChannels_CreateOrUpdate": { + "$ref": "./examples/EventChannels_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "EventChannels" + ], + "summary": "Delete an event channel.", + "description": "Delete existing event channel.", + "operationId": "EventChannels_Delete", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "partnerNamespaceName", + "in": "path", + "description": "Name of the partner namespace.", + "required": true, + "type": "string" + }, + { + "name": "eventChannelName", + "in": "path", + "description": "Name of the event channel.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 404 Not Found.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "EventChannels_Delete": { + "$ref": "./examples/EventChannels_Delete.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerNamespaces/{partnerNamespaceName}/eventChannels": { + "get": { + "tags": [ + "EventChannels" + ], + "summary": "List event channels.", + "description": "List all the event channels in a partner namespace.", + "operationId": "EventChannels_ListByPartnerNamespace", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "partnerNamespaceName", + "in": "path", + "description": "Name of the partner namespace.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FilterParameter" + }, + { + "$ref": "#/parameters/TopParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EventChannelsListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "EventChannels_ListByPartnerNamespace": { + "$ref": "./examples/EventChannels_ListByPartnerNamespace.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, "/{scope}/providers/Microsoft.EventGrid/eventSubscriptions/{eventSubscriptionName}": { "get": { "tags": [ @@ -962,31 +1214,40 @@ "x-ms-long-running-operation": true } }, - "/{scope}/providers/Microsoft.EventGrid/eventSubscriptions/{eventSubscriptionName}/getFullUrl": { - "post": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/systemTopics/{systemTopicName}/eventSubscriptions/{eventSubscriptionName}": { + "get": { "tags": [ "EventSubscriptions" ], - "summary": "Get full URL of an event subscription.", - "description": "Get the full endpoint URL for an event subscription.", - "operationId": "EventSubscriptions_GetFullUrl", + "summary": "Get an event subscription of a system topic.", + "description": "Get an event subscription.", + "operationId": "SystemTopicEventSubscriptions_Get", "consumes": [], "produces": [ "application/json" ], "parameters": [ { - "name": "scope", + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", "in": "path", - "description": "The scope of the event subscription. The scope can be a subscription, or a resource group, or a top level resource belonging to a resource provider namespace, or an EventGrid topic. For example, use '/subscriptions/{subscriptionId}/' for a subscription, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for a resource group, and '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}' for a resource, and '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/topics/{topicName}' for an EventGrid topic.", + "description": "The name of the resource group within the user's subscription.", "required": true, - "type": "string", - "x-ms-skip-url-encoding": true + "type": "string" + }, + { + "name": "systemTopicName", + "in": "path", + "description": "Name of the system topic.", + "required": true, + "type": "string" }, { "name": "eventSubscriptionName", "in": "path", - "description": "Name of the event subscription.", + "description": "Name of the event subscription to be created. Event subscription names must be between 3 and 100 characters in length and use alphanumeric letters only.", "required": true, "type": "string" }, @@ -998,7 +1259,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/EventSubscriptionFullUrl" + "$ref": "#/definitions/EventSubscription" } }, "default": { @@ -1006,30 +1267,21 @@ } }, "x-ms-examples": { - "EventSubscriptions_GetFullUrlForSubscription": { - "$ref": "./examples/EventSubscriptions_GetFullUrlForSubscription.json" - }, - "EventSubscriptions_GetFullUrlForResourceGroup": { - "$ref": "./examples/EventSubscriptions_GetFullUrlForResourceGroup.json" - }, - "EventSubscriptions_GetFullUrlForResource": { - "$ref": "./examples/EventSubscriptions_GetFullUrlForResource.json" - }, - "EventSubscriptions_GetFullUrlForCustomTopic": { - "$ref": "./examples/EventSubscriptions_GetFullUrlForCustomTopic.json" + "SystemTopicEventSubscriptions_Get": { + "$ref": "./examples/SystemTopicEventSubscriptions_Get.json" } } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.EventGrid/eventSubscriptions": { - "get": { + }, + "put": { "tags": [ "EventSubscriptions" ], - "summary": "Get an aggregated list of all global event subscriptions under an Azure subscription.", - "description": "List all aggregated global event subscriptions under a specific Azure subscription.", - "operationId": "EventSubscriptions_ListGlobalBySubscription", - "consumes": [], + "summary": "Create or update an event subscription for a system topic.", + "description": "Asynchronously creates or updates an event subscription with the specified parameters. Existing event subscriptions will be updated with this API.", + "operationId": "SystemTopicEventSubscriptions_CreateOrUpdate", + "consumes": [ + "application/json" + ], "produces": [ "application/json" ], @@ -1038,20 +1290,44 @@ "$ref": "#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" - }, + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, { - "$ref": "#/parameters/FilterParameter" + "name": "systemTopicName", + "in": "path", + "description": "Name of the system topic.", + "required": true, + "type": "string" }, { - "$ref": "#/parameters/TopParameter" + "name": "eventSubscriptionName", + "in": "path", + "description": "Name of the event subscription to be created. Event subscription names must be between 3 and 100 characters in length and use alphanumeric letters only.", + "required": true, + "type": "string" + }, + { + "name": "eventSubscriptionInfo", + "in": "body", + "description": "Event subscription properties containing the destination and filter information.", + "required": true, + "schema": { + "$ref": "#/definitions/EventSubscription" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" } ], "responses": { - "200": { - "description": "OK", + "201": { + "description": "Created", "schema": { - "$ref": "#/definitions/EventSubscriptionsListResult" + "$ref": "#/definitions/EventSubscription" } }, "default": { @@ -1059,23 +1335,19 @@ } }, "x-ms-examples": { - "EventSubscriptions_ListGlobalBySubscription": { - "$ref": "./examples/EventSubscriptions_ListGlobalBySubscription.json" + "SystemTopicEventSubscriptions_CreateOrUpdate": { + "$ref": "./examples/SystemTopicEventSubscriptions_CreateOrUpdate.json" } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.EventGrid/topicTypes/{topicTypeName}/eventSubscriptions": { - "get": { + "x-ms-long-running-operation": true + }, + "delete": { "tags": [ "EventSubscriptions" ], - "summary": "List all global event subscriptions for a topic type.", - "description": "List all global event subscriptions under an Azure subscription for a topic type.", - "operationId": "EventSubscriptions_ListGlobalBySubscriptionForTopicType", + "summary": "Delete an event subscription of a system topic.", + "description": "Delete an event subscription of a system topic.", + "operationId": "SystemTopicEventSubscriptions_Delete", "consumes": [], "produces": [ "application/json" @@ -1085,52 +1357,58 @@ "$ref": "#/parameters/SubscriptionIdParameter" }, { - "name": "topicTypeName", + "name": "resourceGroupName", "in": "path", - "description": "Name of the topic type.", + "description": "The name of the resource group within the user's subscription.", "required": true, "type": "string" }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "systemTopicName", + "in": "path", + "description": "Name of the system topic.", + "required": true, + "type": "string" }, { - "$ref": "#/parameters/FilterParameter" + "name": "eventSubscriptionName", + "in": "path", + "description": "Name of the event subscription to be created. Event subscription names must be between 3 and 100 characters in length and use alphanumeric letters only.", + "required": true, + "type": "string" }, { - "$ref": "#/parameters/TopParameter" + "$ref": "#/parameters/ApiVersionParameter" } ], "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/EventSubscriptionsListResult" - } + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" }, "default": { - "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 404 Not Found.\n\n * 500 Internal Server Error." } }, "x-ms-examples": { - "EventSubscriptions_ListGlobalBySubscriptionForTopicType": { - "$ref": "./examples/EventSubscriptions_ListGlobalBySubscriptionForTopicType.json" + "SystemTopicEventSubscriptions_Delete": { + "$ref": "./examples/SystemTopicEventSubscriptions_Delete.json" } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/eventSubscriptions": { - "get": { + "x-ms-long-running-operation": true + }, + "patch": { "tags": [ "EventSubscriptions" ], - "summary": "List all global event subscriptions under an Azure subscription and resource group.", - "description": "List all global event subscriptions under a specific Azure subscription and resource group.", - "operationId": "EventSubscriptions_ListGlobalByResourceGroup", - "consumes": [], + "summary": "Update event subscription of a system topic.", + "description": "Update event subscription of a system topic.", + "operationId": "SystemTopicEventSubscriptions_Update", + "consumes": [ + "application/json" + ], "produces": [ "application/json" ], @@ -1146,20 +1424,37 @@ "type": "string" }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "systemTopicName", + "in": "path", + "description": "Name of the system topic.", + "required": true, + "type": "string" }, { - "$ref": "#/parameters/FilterParameter" + "name": "eventSubscriptionName", + "in": "path", + "description": "Name of the event subscription to be created. Event subscription names must be between 3 and 100 characters in length and use alphanumeric letters only.", + "required": true, + "type": "string" }, { - "$ref": "#/parameters/TopParameter" + "name": "eventSubscriptionUpdateParameters", + "in": "body", + "description": "Updated event subscription information.", + "required": true, + "schema": { + "$ref": "#/definitions/EventSubscriptionUpdateParameters" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" } ], "responses": { - "200": { - "description": "OK", + "201": { + "description": "Created", "schema": { - "$ref": "#/definitions/EventSubscriptionsListResult" + "$ref": "#/definitions/EventSubscription" } }, "default": { @@ -1167,23 +1462,21 @@ } }, "x-ms-examples": { - "EventSubscriptions_ListGlobalByResourceGroup": { - "$ref": "./examples/EventSubscriptions_ListGlobalByResourceGroup.json" + "SystemTopicEventSubscriptions_Update": { + "$ref": "./examples/SystemTopicEventSubscriptions_Update.json" } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } + "x-ms-long-running-operation": true } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/topicTypes/{topicTypeName}/eventSubscriptions": { - "get": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/systemTopics/{systemTopicName}/eventSubscriptions/{eventSubscriptionName}/getFullUrl": { + "post": { "tags": [ "EventSubscriptions" ], - "summary": "List all global event subscriptions under a resource group for a topic type.", - "description": "List all global event subscriptions under a resource group for a specific topic type.", - "operationId": "EventSubscriptions_ListGlobalByResourceGroupForTopicType", + "summary": "Get full URL of an event subscription of a system topic", + "description": "Get the full endpoint URL for an event subscription of a system topic.", + "operationId": "SystemTopicEventSubscriptions_GetFullUrl", "consumes": [], "produces": [ "application/json" @@ -1200,27 +1493,28 @@ "type": "string" }, { - "name": "topicTypeName", + "name": "systemTopicName", "in": "path", - "description": "Name of the topic type.", + "description": "Name of the system topic.", "required": true, "type": "string" }, { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/FilterParameter" + "name": "eventSubscriptionName", + "in": "path", + "description": "Name of the event subscription to be created. Event subscription names must be between 3 and 100 characters in length and use alphanumeric letters only.", + "required": true, + "type": "string" }, { - "$ref": "#/parameters/TopParameter" + "$ref": "#/parameters/ApiVersionParameter" } ], "responses": { "200": { "description": "OK", "schema": { - "$ref": "#/definitions/EventSubscriptionsListResult" + "$ref": "#/definitions/EventSubscriptionFullUrl" } }, "default": { @@ -1228,53 +1522,49 @@ } }, "x-ms-examples": { - "EventSubscriptions_ListGlobalByResourceGroupForTopicType": { - "$ref": "./examples/EventSubscriptions_ListGlobalByResourceGroupForTopicType.json" + "SystemTopicEventSubscriptions_GetFullUrl": { + "$ref": "./examples/SystemTopicEventSubscriptions_GetFullUrl.json" } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.EventGrid/locations/{location}/eventSubscriptions": { - "get": { + "/{scope}/providers/Microsoft.EventGrid/eventSubscriptions/{eventSubscriptionName}/getFullUrl": { + "post": { "tags": [ "EventSubscriptions" ], - "summary": "List all regional event subscriptions under an Azure subscription.", - "description": "List all event subscriptions from the given location under a specific Azure subscription.", - "operationId": "EventSubscriptions_ListRegionalBySubscription", + "summary": "Get full URL of an event subscription.", + "description": "Get the full endpoint URL for an event subscription.", + "operationId": "EventSubscriptions_GetFullUrl", "consumes": [], "produces": [ "application/json" ], "parameters": [ { - "$ref": "#/parameters/SubscriptionIdParameter" + "name": "scope", + "in": "path", + "description": "The scope of the event subscription. The scope can be a subscription, or a resource group, or a top level resource belonging to a resource provider namespace, or an EventGrid topic. For example, use '/subscriptions/{subscriptionId}/' for a subscription, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for a resource group, and '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}' for a resource, and '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/topics/{topicName}' for an EventGrid topic.", + "required": true, + "type": "string", + "x-ms-skip-url-encoding": true }, { - "name": "location", + "name": "eventSubscriptionName", "in": "path", - "description": "Name of the location.", + "description": "Name of the event subscription.", "required": true, "type": "string" }, { "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/FilterParameter" - }, - { - "$ref": "#/parameters/TopParameter" } ], "responses": { "200": { "description": "OK", "schema": { - "$ref": "#/definitions/EventSubscriptionsListResult" + "$ref": "#/definitions/EventSubscriptionFullUrl" } }, "default": { @@ -1282,23 +1572,29 @@ } }, "x-ms-examples": { - "EventSubscriptions_ListRegionalBySubscription": { - "$ref": "./examples/EventSubscriptions_ListRegionalBySubscription.json" + "EventSubscriptions_GetFullUrlForSubscription": { + "$ref": "./examples/EventSubscriptions_GetFullUrlForSubscription.json" + }, + "EventSubscriptions_GetFullUrlForResourceGroup": { + "$ref": "./examples/EventSubscriptions_GetFullUrlForResourceGroup.json" + }, + "EventSubscriptions_GetFullUrlForResource": { + "$ref": "./examples/EventSubscriptions_GetFullUrlForResource.json" + }, + "EventSubscriptions_GetFullUrlForCustomTopic": { + "$ref": "./examples/EventSubscriptions_GetFullUrlForCustomTopic.json" } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/locations/{location}/eventSubscriptions": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/systemTopics/{systemTopicName}/eventSubscriptions": { "get": { "tags": [ "EventSubscriptions" ], - "summary": "List all regional event subscriptions under an Azure subscription and resource group.", - "description": "List all event subscriptions from the given location under a specific Azure subscription and resource group.", - "operationId": "EventSubscriptions_ListRegionalByResourceGroup", + "summary": "List event subscriptions of a system topic.", + "description": "List event subscriptions that belong to a specific system topic.", + "operationId": "SystemTopicEventSubscriptions_ListBySystemTopic", "consumes": [], "produces": [ "application/json" @@ -1315,9 +1611,9 @@ "type": "string" }, { - "name": "location", + "name": "systemTopicName", "in": "path", - "description": "Name of the location.", + "description": "Name of the system topic.", "required": true, "type": "string" }, @@ -1343,8 +1639,8 @@ } }, "x-ms-examples": { - "EventSubscriptions_ListRegionalByResourceGroup": { - "$ref": "./examples/EventSubscriptions_ListRegionalByResourceGroup.json" + "SystemTopicEventSubscriptions_ListBySystemTopic": { + "$ref": "./examples/SystemTopicEventSubscriptions_ListBySystemTopic.json" } }, "x-ms-pageable": { @@ -1352,14 +1648,14 @@ } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.EventGrid/locations/{location}/topicTypes/{topicTypeName}/eventSubscriptions": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerTopics/{partnerTopicName}/eventSubscriptions/{eventSubscriptionName}": { "get": { "tags": [ "EventSubscriptions" ], - "summary": "List all regional event subscriptions under an Azure subscription for a topic type.", - "description": "List all event subscriptions from the given location under a specific Azure subscription and topic type.", - "operationId": "EventSubscriptions_ListRegionalBySubscriptionForTopicType", + "summary": "Get an event subscription of a partner topic.", + "description": "Get an event subscription of a partner topic.", + "operationId": "PartnerTopicEventSubscriptions_Get", "consumes": [], "produces": [ "application/json" @@ -1369,34 +1665,35 @@ "$ref": "#/parameters/SubscriptionIdParameter" }, { - "name": "location", + "name": "resourceGroupName", "in": "path", - "description": "Name of the location.", + "description": "The name of the resource group within the user's subscription.", "required": true, "type": "string" }, { - "name": "topicTypeName", + "name": "partnerTopicName", "in": "path", - "description": "Name of the topic type.", + "description": "Name of the partner topic.", "required": true, "type": "string" }, { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/FilterParameter" + "name": "eventSubscriptionName", + "in": "path", + "description": "Name of the event subscription to be found. Event subscription names must be between 3 and 100 characters in length and use alphanumeric letters only.", + "required": true, + "type": "string" }, { - "$ref": "#/parameters/TopParameter" + "$ref": "#/parameters/ApiVersionParameter" } ], "responses": { "200": { "description": "OK", "schema": { - "$ref": "#/definitions/EventSubscriptionsListResult" + "$ref": "#/definitions/EventSubscription" } }, "default": { @@ -1404,24 +1701,21 @@ } }, "x-ms-examples": { - "EventSubscriptions_ListRegionalBySubscriptionForTopicType": { - "$ref": "./examples/EventSubscriptions_ListRegionalBySubscriptionForTopicType.json" + "PartnerTopicEventSubscriptions_Get": { + "$ref": "./examples/PartnerTopicEventSubscriptions_Get.json" } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/locations/{location}/topicTypes/{topicTypeName}/eventSubscriptions": { - "get": { + }, + "put": { "tags": [ "EventSubscriptions" ], - "summary": "List all regional event subscriptions under an Azure subscription and resource group for a topic type.", - "description": "List all event subscriptions from the given location under a specific Azure subscription and resource group and topic type.", - "operationId": "EventSubscriptions_ListRegionalByResourceGroupForTopicType", - "consumes": [], + "summary": "Create or update an event subscription of a partner topic.", + "description": "Asynchronously creates or updates an event subscription of a partner topic with the specified parameters. Existing event subscriptions will be updated with this API.", + "operationId": "PartnerTopicEventSubscriptions_CreateOrUpdate", + "consumes": [ + "application/json" + ], "produces": [ "application/json" ], @@ -1437,34 +1731,37 @@ "type": "string" }, { - "name": "location", + "name": "partnerTopicName", "in": "path", - "description": "Name of the location.", + "description": "Name of the partner topic.", "required": true, "type": "string" }, { - "name": "topicTypeName", + "name": "eventSubscriptionName", "in": "path", - "description": "Name of the topic type.", + "description": "Name of the event subscription to be created. Event subscription names must be between 3 and 100 characters in length and use alphanumeric letters only.", "required": true, "type": "string" }, { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/FilterParameter" - }, - { - "$ref": "#/parameters/TopParameter" + "name": "eventSubscriptionInfo", + "in": "body", + "description": "Event subscription properties containing the destination and filter information.", + "required": true, + "schema": { + "$ref": "#/definitions/EventSubscription" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" } ], "responses": { - "200": { - "description": "OK", + "201": { + "description": "Created", "schema": { - "$ref": "#/definitions/EventSubscriptionsListResult" + "$ref": "#/definitions/EventSubscription" } }, "default": { @@ -1472,23 +1769,19 @@ } }, "x-ms-examples": { - "EventSubscriptions_ListRegionalByResourceGroupForTopicType": { - "$ref": "./examples/EventSubscriptions_ListRegionalByResourceGroupForTopicType.json" + "PartnerTopicEventSubscriptions_CreateOrUpdate": { + "$ref": "./examples/PartnerTopicEventSubscriptions_CreateOrUpdate.json" } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{providerNamespace}/{resourceTypeName}/{resourceName}/providers/Microsoft.EventGrid/eventSubscriptions": { - "get": { + "x-ms-long-running-operation": true + }, + "delete": { "tags": [ "EventSubscriptions" ], - "summary": "List all event subscriptions for a specific topic.", - "description": "List all event subscriptions that have been created for a specific topic.", - "operationId": "EventSubscriptions_ListByResource", + "summary": "Delete an event subscription of a partner topic.", + "description": "Delete an event subscription of a partner topic.", + "operationId": "PartnerTopicEventSubscriptions_Delete", "consumes": [], "produces": [ "application/json" @@ -1505,66 +1798,51 @@ "type": "string" }, { - "name": "providerNamespace", - "in": "path", - "description": "Namespace of the provider of the topic.", - "required": true, - "type": "string" - }, - { - "name": "resourceTypeName", + "name": "partnerTopicName", "in": "path", - "description": "Name of the resource type.", + "description": "Name of the partner topic.", "required": true, "type": "string" }, { - "name": "resourceName", + "name": "eventSubscriptionName", "in": "path", - "description": "Name of the resource.", + "description": "Name of the event subscription to be created. Event subscription names must be between 3 and 100 characters in length and use alphanumeric letters only.", "required": true, "type": "string" }, { "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/FilterParameter" - }, - { - "$ref": "#/parameters/TopParameter" } ], "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/EventSubscriptionsListResult" - } + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" }, "default": { - "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 404 Not Found.\n\n * 500 Internal Server Error." } }, "x-ms-examples": { - "EventSubscriptions_ListByResource": { - "$ref": "./examples/EventSubscriptions_ListByResource.json" + "PartnerTopicEventSubscriptions_Delete": { + "$ref": "./examples/PartnerTopicEventSubscriptions_Delete.json" } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/domains/{domainName}/topics/{topicName}/providers/Microsoft.EventGrid/eventSubscriptions": { - "get": { + "x-ms-long-running-operation": true + }, + "patch": { "tags": [ "EventSubscriptions" ], - "summary": "List all event subscriptions for a specific domain topic.", - "description": "List all event subscriptions that have been created for a specific domain topic.", - "operationId": "EventSubscriptions_ListByDomainTopic", - "consumes": [], + "summary": "Update event subscription of a partner topic.", + "description": "Update event subscription of a partner topic.", + "operationId": "PartnerTopicEventSubscriptions_Update", + "consumes": [ + "application/json" + ], "produces": [ "application/json" ], @@ -1580,34 +1858,37 @@ "type": "string" }, { - "name": "domainName", + "name": "partnerTopicName", "in": "path", - "description": "Name of the top level domain.", + "description": "Name of the partner topic.", "required": true, "type": "string" }, { - "name": "topicName", + "name": "eventSubscriptionName", "in": "path", - "description": "Name of the domain topic.", + "description": "Name of the event subscription to be created. Event subscription names must be between 3 and 100 characters in length and use alphanumeric letters only.", "required": true, "type": "string" }, { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/FilterParameter" + "name": "eventSubscriptionUpdateParameters", + "in": "body", + "description": "Updated event subscription information.", + "required": true, + "schema": { + "$ref": "#/definitions/EventSubscriptionUpdateParameters" + } }, { - "$ref": "#/parameters/TopParameter" + "$ref": "#/parameters/ApiVersionParameter" } ], "responses": { - "200": { - "description": "OK", + "201": { + "description": "Created", "schema": { - "$ref": "#/definitions/EventSubscriptionsListResult" + "$ref": "#/definitions/EventSubscription" } }, "default": { @@ -1615,28 +1896,50 @@ } }, "x-ms-examples": { - "EventSubscriptions_ListByDomainTopic": { - "$ref": "./examples/EventSubscriptions_ListByDomainTopic.json" + "PartnerTopicEventSubscriptions_Update": { + "$ref": "./examples/PartnerTopicEventSubscriptions_Update.json" } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } + "x-ms-long-running-operation": true } }, - "/providers/Microsoft.EventGrid/operations": { - "get": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerTopics/{partnerTopicName}/eventSubscriptions/{eventSubscriptionName}/getFullUrl": { + "post": { "tags": [ - "Operations" + "EventSubscriptions" ], - "summary": "List available operations.", - "description": "List the available operations supported by the Microsoft.EventGrid resource provider.", - "operationId": "Operations_List", + "summary": "Get full URL of an event subscription of a partner topic.", + "description": "Get the full endpoint URL for an event subscription of a partner topic.", + "operationId": "PartnerTopicEventSubscriptions_GetFullUrl", "consumes": [], "produces": [ "application/json" ], "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "partnerTopicName", + "in": "path", + "description": "Name of the partner topic.", + "required": true, + "type": "string" + }, + { + "name": "eventSubscriptionName", + "in": "path", + "description": "Name of the event subscription to be created. Event subscription names must be between 3 and 100 characters in length and use alphanumeric letters only.", + "required": true, + "type": "string" + }, { "$ref": "#/parameters/ApiVersionParameter" } @@ -1645,7 +1948,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/OperationsListResult" + "$ref": "#/definitions/EventSubscriptionFullUrl" } }, "default": { @@ -1653,23 +1956,20 @@ } }, "x-ms-examples": { - "Operations_List": { - "$ref": "./examples/Operations_List.json" + "PartnerTopicEventSubscriptions_GetFullUrl": { + "$ref": "./examples/PartnerTopicEventSubscriptions_GetFullUrl.json" } - }, - "x-ms-pageable": { - "nextLinkName": null } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/topics/{topicName}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerTopics/{partnerTopicName}/eventSubscriptions": { "get": { "tags": [ - "Topics" + "EventSubscriptions" ], - "summary": "Get a topic.", - "description": "Get properties of a topic.", - "operationId": "Topics_Get", + "summary": "List event subscriptions of a partner topic.", + "description": "List event subscriptions that belong to a specific partner topic.", + "operationId": "PartnerTopicEventSubscriptions_ListByPartnerTopic", "consumes": [], "produces": [ "application/json" @@ -1686,21 +1986,27 @@ "type": "string" }, { - "name": "topicName", + "name": "partnerTopicName", "in": "path", - "description": "Name of the topic.", + "description": "Name of the partner topic.", "required": true, "type": "string" }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FilterParameter" + }, + { + "$ref": "#/parameters/TopParameter" } ], "responses": { "200": { "description": "OK", "schema": { - "$ref": "#/definitions/Topic" + "$ref": "#/definitions/EventSubscriptionsListResult" } }, "default": { @@ -1708,21 +2014,24 @@ } }, "x-ms-examples": { - "Topics_Get": { - "$ref": "./examples/Topics_Get.json" + "PartnerTopicEventSubscriptions_ListByPartnerTopic": { + "$ref": "./examples/PartnerTopicEventSubscriptions_ListByPartnerTopic.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } - }, - "put": { + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.EventGrid/eventSubscriptions": { + "get": { "tags": [ - "Topics" - ], - "summary": "Create a topic.", - "description": "Asynchronously creates a new topic with the specified parameters.", - "operationId": "Topics_CreateOrUpdate", - "consumes": [ - "application/json" + "EventSubscriptions" ], + "summary": "Get an aggregated list of all global event subscriptions under an Azure subscription.", + "description": "List all aggregated global event subscriptions under a specific Azure subscription.", + "operationId": "EventSubscriptions_ListGlobalBySubscription", + "consumes": [], "produces": [ "application/json" ], @@ -1731,37 +2040,20 @@ "$ref": "#/parameters/SubscriptionIdParameter" }, { - "name": "resourceGroupName", - "in": "path", - "description": "The name of the resource group within the user's subscription.", - "required": true, - "type": "string" - }, - { - "name": "topicName", - "in": "path", - "description": "Name of the topic.", - "required": true, - "type": "string" + "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "topicInfo", - "in": "body", - "description": "Topic information.", - "required": true, - "schema": { - "$ref": "#/definitions/Topic" - } + "$ref": "#/parameters/FilterParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/TopParameter" } ], "responses": { - "201": { - "description": "Created", + "200": { + "description": "OK", "schema": { - "$ref": "#/definitions/Topic" + "$ref": "#/definitions/EventSubscriptionsListResult" } }, "default": { @@ -1769,19 +2061,23 @@ } }, "x-ms-examples": { - "Topics_CreateOrUpdate": { - "$ref": "./examples/Topics_CreateOrUpdate.json" + "EventSubscriptions_ListGlobalBySubscription": { + "$ref": "./examples/EventSubscriptions_ListGlobalBySubscription.json" } }, - "x-ms-long-running-operation": true - }, - "delete": { + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.EventGrid/topicTypes/{topicTypeName}/eventSubscriptions": { + "get": { "tags": [ - "Topics" + "EventSubscriptions" ], - "summary": "Delete a topic.", - "description": "Delete existing topic.", - "operationId": "Topics_Delete", + "summary": "List all global event subscriptions for a topic type.", + "description": "List all global event subscriptions under an Azure subscription for a topic type.", + "operationId": "EventSubscriptions_ListGlobalBySubscriptionForTopicType", "consumes": [], "produces": [ "application/json" @@ -1791,51 +2087,52 @@ "$ref": "#/parameters/SubscriptionIdParameter" }, { - "name": "resourceGroupName", + "name": "topicTypeName", "in": "path", - "description": "The name of the resource group within the user's subscription.", + "description": "Name of the topic type.", "required": true, "type": "string" }, { - "name": "topicName", - "in": "path", - "description": "Name of the topic.", - "required": true, - "type": "string" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/FilterParameter" + }, + { + "$ref": "#/parameters/TopParameter" } ], "responses": { - "202": { - "description": "Accepted" - }, - "204": { - "description": "NoContent" + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EventSubscriptionsListResult" + } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 404 Not Found.\n\n * 500 Internal Server Error." + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." } }, "x-ms-examples": { - "Topics_Delete": { - "$ref": "./examples/Topics_Delete.json" + "EventSubscriptions_ListGlobalBySubscriptionForTopicType": { + "$ref": "./examples/EventSubscriptions_ListGlobalBySubscriptionForTopicType.json" } }, - "x-ms-long-running-operation": true - }, - "patch": { + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/eventSubscriptions": { + "get": { "tags": [ - "Topics" - ], - "summary": "Update a topic.", - "description": "Asynchronously updates a topic with the specified parameters.", - "operationId": "Topics_Update", - "consumes": [ - "application/json" + "EventSubscriptions" ], + "summary": "List all global event subscriptions under an Azure subscription and resource group.", + "description": "List all global event subscriptions under a specific Azure subscription and resource group.", + "operationId": "EventSubscriptions_ListGlobalByResourceGroup", + "consumes": [], "produces": [ "application/json" ], @@ -1851,30 +2148,20 @@ "type": "string" }, { - "name": "topicName", - "in": "path", - "description": "Name of the topic.", - "required": true, - "type": "string" + "$ref": "#/parameters/ApiVersionParameter" }, { - "name": "topicUpdateParameters", - "in": "body", - "description": "Topic update information.", - "required": true, - "schema": { - "$ref": "#/definitions/TopicUpdateParameters" - } + "$ref": "#/parameters/FilterParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/TopParameter" } ], "responses": { - "201": { - "description": "Topic update request accepted.", + "200": { + "description": "OK", "schema": { - "$ref": "#/definitions/Topic" + "$ref": "#/definitions/EventSubscriptionsListResult" } }, "default": { @@ -1882,21 +2169,23 @@ } }, "x-ms-examples": { - "Topics_Update": { - "$ref": "./examples/Topics_Update.json" + "EventSubscriptions_ListGlobalByResourceGroup": { + "$ref": "./examples/EventSubscriptions_ListGlobalByResourceGroup.json" } }, - "x-ms-long-running-operation": true + "x-ms-pageable": { + "nextLinkName": "nextLink" + } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.EventGrid/topics": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/topicTypes/{topicTypeName}/eventSubscriptions": { "get": { "tags": [ - "Topics" + "EventSubscriptions" ], - "summary": "List topics under an Azure subscription.", - "description": "List all the topics under an Azure subscription.", - "operationId": "Topics_ListBySubscription", + "summary": "List all global event subscriptions under a resource group for a topic type.", + "description": "List all global event subscriptions under a resource group for a specific topic type.", + "operationId": "EventSubscriptions_ListGlobalByResourceGroupForTopicType", "consumes": [], "produces": [ "application/json" @@ -1905,6 +2194,20 @@ { "$ref": "#/parameters/SubscriptionIdParameter" }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "topicTypeName", + "in": "path", + "description": "Name of the topic type.", + "required": true, + "type": "string" + }, { "$ref": "#/parameters/ApiVersionParameter" }, @@ -1919,7 +2222,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/TopicsListResult" + "$ref": "#/definitions/EventSubscriptionsListResult" } }, "default": { @@ -1927,8 +2230,8 @@ } }, "x-ms-examples": { - "Topics_ListBySubscription": { - "$ref": "./examples/Topics_ListBySubscription.json" + "EventSubscriptions_ListGlobalByResourceGroupForTopicType": { + "$ref": "./examples/EventSubscriptions_ListGlobalByResourceGroupForTopicType.json" } }, "x-ms-pageable": { @@ -1936,14 +2239,14 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/topics": { + "/subscriptions/{subscriptionId}/providers/Microsoft.EventGrid/locations/{location}/eventSubscriptions": { "get": { "tags": [ - "Topics" + "EventSubscriptions" ], - "summary": "List topics under a resource group.", - "description": "List all the topics under a resource group.", - "operationId": "Topics_ListByResourceGroup", + "summary": "List all regional event subscriptions under an Azure subscription.", + "description": "List all event subscriptions from the given location under a specific Azure subscription.", + "operationId": "EventSubscriptions_ListRegionalBySubscription", "consumes": [], "produces": [ "application/json" @@ -1953,9 +2256,9 @@ "$ref": "#/parameters/SubscriptionIdParameter" }, { - "name": "resourceGroupName", + "name": "location", "in": "path", - "description": "The name of the resource group within the user's subscription.", + "description": "Name of the location.", "required": true, "type": "string" }, @@ -1973,7 +2276,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/TopicsListResult" + "$ref": "#/definitions/EventSubscriptionsListResult" } }, "default": { @@ -1981,8 +2284,8 @@ } }, "x-ms-examples": { - "Topics_ListByResourceGroup": { - "$ref": "./examples/Topics_ListByResourceGroup.json" + "EventSubscriptions_ListRegionalBySubscription": { + "$ref": "./examples/EventSubscriptions_ListRegionalBySubscription.json" } }, "x-ms-pageable": { @@ -1990,14 +2293,14 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/topics/{topicName}/listKeys": { - "post": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/locations/{location}/eventSubscriptions": { + "get": { "tags": [ - "Topics" + "EventSubscriptions" ], - "summary": "List keys for a topic.", - "description": "List the two keys used to publish to a topic.", - "operationId": "Topics_ListSharedAccessKeys", + "summary": "List all regional event subscriptions under an Azure subscription and resource group.", + "description": "List all event subscriptions from the given location under a specific Azure subscription and resource group.", + "operationId": "EventSubscriptions_ListRegionalByResourceGroup", "consumes": [], "produces": [ "application/json" @@ -2014,21 +2317,27 @@ "type": "string" }, { - "name": "topicName", + "name": "location", "in": "path", - "description": "Name of the topic.", + "description": "Name of the location.", "required": true, "type": "string" }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FilterParameter" + }, + { + "$ref": "#/parameters/TopParameter" } ], "responses": { "200": { "description": "OK", "schema": { - "$ref": "#/definitions/TopicSharedAccessKeys" + "$ref": "#/definitions/EventSubscriptionsListResult" } }, "default": { @@ -2036,23 +2345,24 @@ } }, "x-ms-examples": { - "Topics_ListSharedAccessKeys": { - "$ref": "./examples/Topics_ListSharedAccessKeys.json" + "EventSubscriptions_ListRegionalByResourceGroup": { + "$ref": "./examples/EventSubscriptions_ListRegionalByResourceGroup.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/topics/{topicName}/regenerateKey": { - "post": { + "/subscriptions/{subscriptionId}/providers/Microsoft.EventGrid/locations/{location}/topicTypes/{topicTypeName}/eventSubscriptions": { + "get": { "tags": [ - "Topics" - ], - "summary": "Regenerate key for a topic.", - "description": "Regenerate a shared access key for a topic.", - "operationId": "Topics_RegenerateKey", - "consumes": [ - "application/json" + "EventSubscriptions" ], + "summary": "List all regional event subscriptions under an Azure subscription for a topic type.", + "description": "List all event subscriptions from the given location under a specific Azure subscription and topic type.", + "operationId": "EventSubscriptions_ListRegionalBySubscriptionForTopicType", + "consumes": [], "produces": [ "application/json" ], @@ -2061,37 +2371,34 @@ "$ref": "#/parameters/SubscriptionIdParameter" }, { - "name": "resourceGroupName", + "name": "location", "in": "path", - "description": "The name of the resource group within the user's subscription.", + "description": "Name of the location.", "required": true, "type": "string" }, { - "name": "topicName", + "name": "topicTypeName", "in": "path", - "description": "Name of the topic.", + "description": "Name of the topic type.", "required": true, "type": "string" }, { - "name": "regenerateKeyRequest", - "in": "body", - "description": "Request body to regenerate key.", - "required": true, - "schema": { - "$ref": "#/definitions/TopicRegenerateKeyRequest" - } + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/FilterParameter" + }, + { + "$ref": "#/parameters/TopParameter" } ], "responses": { "200": { "description": "OK", "schema": { - "$ref": "#/definitions/TopicSharedAccessKeys" + "$ref": "#/definitions/EventSubscriptionsListResult" } }, "default": { @@ -2099,20 +2406,23 @@ } }, "x-ms-examples": { - "Topics_RegenerateKey": { - "$ref": "./examples/Topics_RegenerateKey.json" + "EventSubscriptions_ListRegionalBySubscriptionForTopicType": { + "$ref": "./examples/EventSubscriptions_ListRegionalBySubscriptionForTopicType.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{providerNamespace}/{resourceTypeName}/{resourceName}/providers/Microsoft.EventGrid/eventTypes": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/locations/{location}/topicTypes/{topicTypeName}/eventSubscriptions": { "get": { "tags": [ - "Topics" + "EventSubscriptions" ], - "summary": "List topic event types.", - "description": "List event types for a topic.", - "operationId": "Topics_ListEventTypes", + "summary": "List all regional event subscriptions under an Azure subscription and resource group for a topic type.", + "description": "List all event subscriptions from the given location under a specific Azure subscription and resource group and topic type.", + "operationId": "EventSubscriptions_ListRegionalByResourceGroupForTopicType", "consumes": [], "produces": [ "application/json" @@ -2129,35 +2439,34 @@ "type": "string" }, { - "name": "providerNamespace", + "name": "location", "in": "path", - "description": "Namespace of the provider of the topic.", + "description": "Name of the location.", "required": true, "type": "string" }, { - "name": "resourceTypeName", + "name": "topicTypeName", "in": "path", "description": "Name of the topic type.", "required": true, "type": "string" }, { - "name": "resourceName", - "in": "path", - "description": "Name of the topic.", - "required": true, - "type": "string" + "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "#/parameters/FilterParameter" + }, + { + "$ref": "#/parameters/TopParameter" } ], "responses": { "200": { "description": "OK", "schema": { - "$ref": "#/definitions/EventTypesListResult" + "$ref": "#/definitions/EventSubscriptionsListResult" } }, "default": { @@ -2165,115 +2474,171 @@ } }, "x-ms-examples": { - "Topics_ListEventTypes": { - "$ref": "./examples/Topics_ListEventTypes.json" + "EventSubscriptions_ListRegionalByResourceGroupForTopicType": { + "$ref": "./examples/EventSubscriptions_ListRegionalByResourceGroupForTopicType.json" } }, "x-ms-pageable": { - "nextLinkName": null + "nextLinkName": "nextLink" } } }, - "/providers/Microsoft.EventGrid/topicTypes": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{providerNamespace}/{resourceTypeName}/{resourceName}/providers/Microsoft.EventGrid/eventSubscriptions": { "get": { "tags": [ - "TopicTypes" + "EventSubscriptions" ], - "summary": "List topic types.", - "description": "List all registered topic types.", - "operationId": "TopicTypes_List", + "summary": "List all event subscriptions for a specific topic.", + "description": "List all event subscriptions that have been created for a specific topic.", + "operationId": "EventSubscriptions_ListByResource", "consumes": [], "produces": [ "application/json" ], "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/TopicTypesListResult" - } + "$ref": "#/parameters/SubscriptionIdParameter" }, - "default": { - "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 404 Not Found.\n\n * 500 Internal Server Error." - } - }, - "x-ms-examples": { - "TopicTypes_List": { - "$ref": "./examples/TopicTypes_List.json" - } - }, - "x-ms-pageable": { - "nextLinkName": null + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "providerNamespace", + "in": "path", + "description": "Namespace of the provider of the topic.", + "required": true, + "type": "string" + }, + { + "name": "resourceTypeName", + "in": "path", + "description": "Name of the resource type.", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Name of the resource.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FilterParameter" + }, + { + "$ref": "#/parameters/TopParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EventSubscriptionsListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "EventSubscriptions_ListByResource": { + "$ref": "./examples/EventSubscriptions_ListByResource.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/providers/Microsoft.EventGrid/topicTypes/{topicTypeName}": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/domains/{domainName}/topics/{topicName}/providers/Microsoft.EventGrid/eventSubscriptions": { "get": { "tags": [ - "TopicTypes" + "EventSubscriptions" ], - "summary": "Get a topic type.", - "description": "Get information about a topic type.", - "operationId": "TopicTypes_Get", + "summary": "List all event subscriptions for a specific domain topic.", + "description": "List all event subscriptions that have been created for a specific domain topic.", + "operationId": "EventSubscriptions_ListByDomainTopic", "consumes": [], "produces": [ "application/json" ], "parameters": [ { - "name": "topicTypeName", + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", "in": "path", - "description": "Name of the topic type.", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "domainName", + "in": "path", + "description": "Name of the top level domain.", + "required": true, + "type": "string" + }, + { + "name": "topicName", + "in": "path", + "description": "Name of the domain topic.", "required": true, "type": "string" }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FilterParameter" + }, + { + "$ref": "#/parameters/TopParameter" } ], "responses": { "200": { "description": "OK", "schema": { - "$ref": "#/definitions/TopicTypeInfo" + "$ref": "#/definitions/EventSubscriptionsListResult" } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 404 Not Found.\n\n * 500 Internal Server Error." + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." } }, "x-ms-examples": { - "TopicTypes_Get": { - "$ref": "./examples/TopicTypes_Get.json" + "EventSubscriptions_ListByDomainTopic": { + "$ref": "./examples/EventSubscriptions_ListByDomainTopic.json" } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, - "/providers/Microsoft.EventGrid/topicTypes/{topicTypeName}/eventTypes": { + "/providers/Microsoft.EventGrid/operations": { "get": { "tags": [ - "TopicTypes" + "Operations" ], - "summary": "List event types", - "description": "List event types for a topic type", - "operationId": "TopicTypes_ListEventTypes", + "summary": "List available operations.", + "description": "List the available operations supported by the Microsoft.EventGrid resource provider.", + "operationId": "Operations_List", "consumes": [], "produces": [ "application/json" ], "parameters": [ - { - "name": "topicTypeName", - "in": "path", - "description": "Name of the topic type", - "required": true, - "type": "string" - }, { "$ref": "#/parameters/ApiVersionParameter" } @@ -2282,346 +2647,3578 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/EventTypesListResult" + "$ref": "#/definitions/OperationsListResult" } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 404 Not Found.\n\n * 500 Internal Server Error." + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." } }, "x-ms-examples": { - "TopicTypes_ListEventTypes": { - "$ref": "./examples/TopicTypes_ListEventTypes.json" + "Operations_List": { + "$ref": "./examples/Operations_List.json" } }, "x-ms-pageable": { "nextLinkName": null } } - } - }, - "definitions": { - "DomainProperties": { - "description": "Properties of the Domain.", - "type": "object", - "properties": { - "provisioningState": { - "description": "Provisioning state of the domain.", - "enum": [ - "Creating", - "Updating", - "Deleting", - "Succeeded", - "Canceled", - "Failed" - ], - "type": "string", - "readOnly": true, - "x-ms-enum": { - "name": "DomainProvisioningState", - "modelAsString": true + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerNamespaces/{partnerNamespaceName}": { + "get": { + "tags": [ + "PartnerNamespaces" + ], + "summary": "Get a partner namespace.", + "description": "Get properties of a partner namespace.", + "operationId": "PartnerNamespaces_Get", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "partnerNamespaceName", + "in": "path", + "description": "Name of the partner namespace.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" } - }, - "endpoint": { - "description": "Endpoint for the domain.", - "type": "string", - "readOnly": true - }, - "inputSchema": { - "description": "This determines the format that Event Grid should expect for incoming events published to the domain.", - "enum": [ - "EventGridSchema", - "CustomEventSchema", - "CloudEventSchemaV1_0" - ], - "type": "string", - "x-ms-enum": { - "name": "InputSchema", - "modelAsString": true + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PartnerNamespace" + } }, - "default": "EventGridSchema" - }, - "inputSchemaMapping": { - "$ref": "#/definitions/InputSchemaMapping", - "description": "Information about the InputSchemaMapping which specified the info about mapping event payload." - }, - "metricResourceId": { - "description": "Metric resource id for the domain.", - "type": "string" - }, - "allowTrafficFromAllIPs": { - "description": "This determines if IP filtering rules ought to be evaluated or not. By default it will not evaluate and will allow traffic from all IPs.", - "type": "boolean" - }, - "inboundIpRules": { - "description": "This determines the IP filtering rules that ought be applied when events are received on this domain.", - "type": "array", - "items": { - "$ref": "#/definitions/InboundIpRule" + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." } - } - } - }, - "InboundIpRule": { - "type": "object", - "properties": { - "ipMask": { - "description": "IP Address in CIDR notation e.g., 10.0.0.0/8.", - "type": "string" }, - "action": { - "description": "Action to perform based on the match or no match of the IpMask.", - "enum": [ - "Allow" - ], - "type": "string", - "x-ms-enum": { - "name": "IpActionType", - "modelAsString": true + "x-ms-examples": { + "PartnerNamespaces_Get": { + "$ref": "./examples/PartnerNamespaces_Get.json" } } - } - }, - "Resource": { - "description": "Definition of a Resource", - "type": "object", - "properties": { - "id": { - "description": "Fully qualified identifier of the resource.", - "type": "string", - "readOnly": true - }, - "name": { - "description": "Name of the resource", - "type": "string", - "readOnly": true - }, - "type": { - "description": "Type of the resource", - "type": "string", - "readOnly": true - } }, - "x-ms-azure-resource": true + "put": { + "tags": [ + "PartnerNamespaces" + ], + "summary": "Create a partner namespace.", + "description": "Asynchronously creates a new partner namespace with the specified parameters.", + "operationId": "PartnerNamespaces_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "partnerNamespaceName", + "in": "path", + "description": "Name of the partner namespace.", + "required": true, + "type": "string" + }, + { + "name": "partnerNamespaceInfo", + "in": "body", + "description": "PartnerNamespace information.", + "required": true, + "schema": { + "$ref": "#/definitions/PartnerNamespace" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/PartnerNamespace" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "PartnerNamespaces_CreateOrUpdate": { + "$ref": "./examples/PartnerNamespaces_CreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "PartnerNamespaces" + ], + "summary": "Delete a partner namespace.", + "description": "Delete existing partner namespace.", + "operationId": "PartnerNamespaces_Delete", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "partnerNamespaceName", + "in": "path", + "description": "Name of the partner namespace.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 404 Not Found.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "PartnerNamespaces_Delete": { + "$ref": "./examples/PartnerNamespaces_Delete.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "PartnerNamespaces" + ], + "summary": "Update a partner namespace.", + "description": "Asynchronously updates a partner namespace with the specified parameters.", + "operationId": "PartnerNamespaces_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "partnerNamespaceName", + "in": "path", + "description": "Name of the partner namespace.", + "required": true, + "type": "string" + }, + { + "name": "partnerNamespaceUpdateParameters", + "in": "body", + "description": "Partner namespace update information.", + "required": true, + "schema": { + "$ref": "#/definitions/PartnerNamespaceUpdateParameters" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "201": { + "description": "Partner namespace update request accepted.", + "schema": { + "$ref": "#/definitions/PartnerNamespace" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "PartnerNamespaces_Update": { + "$ref": "./examples/PartnerNamespaces_Update.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.EventGrid/partnerNamespaces": { + "get": { + "tags": [ + "PartnerNamespaces" + ], + "summary": "List partner namespaces under an Azure subscription.", + "description": "List all the partner namespaces under an Azure subscription.", + "operationId": "PartnerNamespaces_ListBySubscription", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FilterParameter" + }, + { + "$ref": "#/parameters/TopParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PartnerNamespacesListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "PartnerNamespaces_ListBySubscription": { + "$ref": "./examples/PartnerNamespaces_ListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerNamespaces": { + "get": { + "tags": [ + "PartnerNamespaces" + ], + "summary": "List partner namespaces under a resource group.", + "description": "List all the partner namespaces under a resource group.", + "operationId": "PartnerNamespaces_ListByResourceGroup", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FilterParameter" + }, + { + "$ref": "#/parameters/TopParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PartnerNamespacesListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "PartnerNamespaces_ListByResourceGroup": { + "$ref": "./examples/PartnerNamespaces_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerNamespaces/{partnerNamespaceName}/listKeys": { + "post": { + "tags": [ + "PartnerNamespaces" + ], + "summary": "List keys for a partner namespace.", + "description": "List the two keys used to publish to a partner namespace.", + "operationId": "PartnerNamespaces_ListSharedAccessKeys", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "partnerNamespaceName", + "in": "path", + "description": "Name of the partner namespace.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PartnerNamespaceSharedAccessKeys" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "PartnerNamespaces_ListSharedAccessKeys": { + "$ref": "./examples/PartnerNamespaces_ListSharedAccessKeys.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerNamespaces/{partnerNamespaceName}/regenerateKey": { + "post": { + "tags": [ + "PartnerNamespaces" + ], + "summary": "Regenerate key for a partner namespace.", + "description": "Regenerate a shared access key for a partner namespace.", + "operationId": "PartnerNamespaces_RegenerateKey", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "partnerNamespaceName", + "in": "path", + "description": "Name of the partner namespace.", + "required": true, + "type": "string" + }, + { + "name": "regenerateKeyRequest", + "in": "body", + "description": "Request body to regenerate key.", + "required": true, + "schema": { + "$ref": "#/definitions/PartnerNamespaceRegenerateKeyRequest" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PartnerNamespaceSharedAccessKeys" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "PartnerNamespaces_RegenerateKey": { + "$ref": "./examples/PartnerNamespaces_RegenerateKey.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerRegistrations/{partnerRegistrationName}": { + "get": { + "tags": [ + "PartnerRegistrations" + ], + "summary": "Get a partner registration.", + "description": "Gets a partner registration with the specified parameters.", + "operationId": "PartnerRegistrations_Get", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "partnerRegistrationName", + "in": "path", + "description": "Name of the partner registration.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PartnerRegistration" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 404 Not Found.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "PartnerRegistrations_Get": { + "$ref": "./examples/PartnerRegistrations_Get.json" + } + } + }, + "put": { + "tags": [ + "PartnerRegistrations" + ], + "summary": "Create a partner registration.", + "description": "Creates a new partner registration with the specified parameters.", + "operationId": "PartnerRegistrations_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "partnerRegistrationName", + "in": "path", + "description": "Name of the partner registration.", + "required": true, + "type": "string" + }, + { + "name": "partnerRegistrationInfo", + "in": "body", + "description": "PartnerRegistration information.", + "required": true, + "schema": { + "$ref": "#/definitions/PartnerRegistration" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PartnerRegistration" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/PartnerRegistration" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 404 Not Found.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "PartnerRegistrations_CreateOrUpdate": { + "$ref": "./examples/PartnerRegistrations_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "PartnerRegistrations" + ], + "summary": "Delete a partner registration.", + "description": "Deletes a partner registration with the specified parameters.", + "operationId": "PartnerRegistrations_Delete", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "partnerRegistrationName", + "in": "path", + "description": "Name of the partner registration.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 404 Not Found.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "PartnerRegistrations_Delete": { + "$ref": "./examples/PartnerRegistrations_Delete.json" + } + } + }, + "patch": { + "tags": [ + "PartnerRegistrations" + ], + "summary": "Update a partner registration.", + "description": "Updates a partner registration with the specified parameters.", + "operationId": "PartnerRegistrations_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "partnerRegistrationName", + "in": "path", + "description": "Name of the partner registration.", + "required": true, + "type": "string" + }, + { + "name": "partnerRegistrationUpdateParameters", + "in": "body", + "description": "Partner registration update information.", + "required": true, + "schema": { + "$ref": "#/definitions/PartnerRegistrationUpdateParameters" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "201": { + "description": "Partner registration update request accepted.", + "schema": { + "$ref": "#/definitions/PartnerRegistration" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 404 Not Found.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "PartnerRegistrations_Update": { + "$ref": "./examples/PartnerRegistrations_Update.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.EventGrid/partnerRegistrations": { + "get": { + "tags": [ + "PartnerRegistrations" + ], + "summary": "List partner registrations under an Azure subscription.", + "description": "List all the partner registrations under an Azure subscription.", + "operationId": "PartnerRegistrations_ListBySubscription", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FilterParameter" + }, + { + "$ref": "#/parameters/TopParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PartnerRegistrationsListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "PartnerRegistrations_ListBySubscription": { + "$ref": "./examples/PartnerRegistrations_ListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerRegistrations": { + "get": { + "tags": [ + "PartnerRegistrations" + ], + "summary": "List partner registrations under a resource group.", + "description": "List all the partner registrations under a resource group.", + "operationId": "PartnerRegistrations_ListByResourceGroup", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FilterParameter" + }, + { + "$ref": "#/parameters/TopParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PartnerRegistrationsListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "PartnerRegistrations_ListByResourceGroup": { + "$ref": "./examples/PartnerRegistrations_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.EventGrid/partnerRegistrations": { + "get": { + "tags": [ + "PartnerRegistrations" + ], + "summary": "List all available partners registrations.", + "description": "List all partners registrations.", + "operationId": "PartnerRegistrations_List", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PartnerRegistrationsListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "PartnerRegistrations_List": { + "$ref": "./examples/PartnerRegistrations_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerTopics/{partnerTopicName}": { + "get": { + "tags": [ + "PartnerTopics" + ], + "summary": "Get a partner topic.", + "description": "Get properties of a partner topic.", + "operationId": "PartnerTopics_Get", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "partnerTopicName", + "in": "path", + "description": "Name of the partner topic.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PartnerTopic" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "PartnerTopics_Get": { + "$ref": "./examples/PartnerTopics_Get.json" + } + } + }, + "delete": { + "tags": [ + "PartnerTopics" + ], + "summary": "Delete a partner topic.", + "description": "Delete existing partner topic.", + "operationId": "PartnerTopics_Delete", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "partnerTopicName", + "in": "path", + "description": "Name of the partner topic.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 404 Not Found.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "PartnerTopics_Delete": { + "$ref": "./examples/PartnerTopics_Delete.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "PartnerTopics" + ], + "summary": "Update a partner topic.", + "description": "Asynchronously updates a partner topic with the specified parameters.", + "operationId": "PartnerTopics_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "partnerTopicName", + "in": "path", + "description": "Name of the partner topic.", + "required": true, + "type": "string" + }, + { + "name": "partnerTopicUpdateParameters", + "in": "body", + "description": "PartnerTopic update information.", + "required": true, + "schema": { + "$ref": "#/definitions/PartnerTopicUpdateParameters" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "201": { + "description": "Partner Topic update request accepted.", + "schema": { + "$ref": "#/definitions/PartnerTopic" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "PartnerTopics_Update": { + "$ref": "./examples/PartnerTopics_Update.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.EventGrid/partnerTopics": { + "get": { + "tags": [ + "PartnerTopics" + ], + "summary": "List partner topics under an Azure subscription.", + "description": "List all the partner topics under an Azure subscription.", + "operationId": "PartnerTopics_ListBySubscription", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FilterParameter" + }, + { + "$ref": "#/parameters/TopParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PartnerTopicsListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "PartnerTopics_ListBySubscription": { + "$ref": "./examples/PartnerTopics_ListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerTopics": { + "get": { + "tags": [ + "PartnerTopics" + ], + "summary": "List partner topics under a resource group.", + "description": "List all the partner topics under a resource group.", + "operationId": "PartnerTopics_ListByResourceGroup", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FilterParameter" + }, + { + "$ref": "#/parameters/TopParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PartnerTopicsListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "PartnerTopics_ListByResourceGroup": { + "$ref": "./examples/PartnerTopics_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerTopics/{partnerTopicName}/activate": { + "post": { + "tags": [ + "PartnerTopics" + ], + "summary": "Activate a partner topic.", + "description": "Activate a newly created partner topic.", + "operationId": "PartnerTopics_Activate", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "partnerTopicName", + "in": "path", + "description": "Name of the partner topic.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PartnerTopic" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "PartnerTopics_Activate": { + "$ref": "./examples/PartnerTopics_Activate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerTopics/{partnerTopicName}/deactivate": { + "post": { + "tags": [ + "PartnerTopics" + ], + "summary": "Deactivate a partner topic.", + "description": "Deactivate specific partner topic.", + "operationId": "PartnerTopics_Deactivate", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "partnerTopicName", + "in": "path", + "description": "Name of the partner topic.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PartnerTopic" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "PartnerTopics_Deactivate": { + "$ref": "./examples/PartnerTopics_Deactivate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/{parentType}/{parentName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "summary": "Get a specific private endpoint connection.", + "description": "Get a specific private endpoint connection under a topic or domain.", + "operationId": "PrivateEndpointConnections_Get", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "parentType", + "in": "path", + "description": "The type of the parent resource. This can be either \\'topics\\' or \\'domains\\'.", + "required": true, + "type": "string" + }, + { + "name": "parentName", + "in": "path", + "description": "The name of the parent resource (namely, either, the topic name or domain name).", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection connection.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "PrivateEndpointConnections_Get": { + "$ref": "./examples/PrivateEndpointConnections_Get.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "summary": "Update a specific private endpoint connection.", + "description": "Update a specific private endpoint connection under a topic or domain.", + "operationId": "PrivateEndpointConnections_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "parentType", + "in": "path", + "description": "The type of the parent resource. This can be either \\'topics\\' or \\'domains\\'.", + "required": true, + "type": "string" + }, + { + "name": "parentName", + "in": "path", + "description": "The name of the parent resource (namely, either, the topic name or domain name).", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection connection.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnection", + "in": "body", + "description": "The private endpoint connection object to update.", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "PrivateEndpointConnections_Update": { + "$ref": "./examples/PrivateEndpointConnections_Update.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "summary": "Delete a specific private endpoint connection.", + "description": "Delete a specific private endpoint connection under a topic or domain.", + "operationId": "PrivateEndpointConnections_Delete", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "parentType", + "in": "path", + "description": "The type of the parent resource. This can be either \\'topics\\' or \\'domains\\'.", + "required": true, + "type": "string" + }, + { + "name": "parentName", + "in": "path", + "description": "The name of the parent resource (namely, either, the topic name or domain name).", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection connection.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 404 Not Found.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "PrivateEndpointConnections_Delete": { + "$ref": "./examples/PrivateEndpointConnections_Delete.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/{parentType}/{parentName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "summary": "Lists all private endpoint connections under a resource.", + "description": "Get all private endpoint connections under a topic or domain.", + "operationId": "PrivateEndpointConnections_ListByResource", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "parentType", + "in": "path", + "description": "The type of the parent resource. This can be either \\'topics\\' or \\'domains\\'.", + "required": true, + "type": "string" + }, + { + "name": "parentName", + "in": "path", + "description": "The name of the parent resource (namely, either, the topic name or domain name).", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FilterParameter" + }, + { + "$ref": "#/parameters/TopParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "PrivateEndpointConnections_ListByResource": { + "$ref": "./examples/PrivateEndpointConnections_ListByResource.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/{parentType}/{parentName}/privateLinkResources/{privateLinkResourceName}": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "summary": "Get a private link resource.", + "description": "Get properties of a private link resource.", + "operationId": "PrivateLinkResources_Get", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "parentType", + "in": "path", + "description": "The type of the parent resource. This can be either \\'topics\\' or \\'domains\\'.", + "required": true, + "type": "string" + }, + { + "name": "parentName", + "in": "path", + "description": "The name of the parent resource (namely, either, the topic name or domain name).", + "required": true, + "type": "string" + }, + { + "name": "privateLinkResourceName", + "in": "path", + "description": "The name of private link resource.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "PrivateLinkResources_Get": { + "$ref": "./examples/PrivateLinkResources_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/{parentType}/{parentName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "summary": "List private link resources under specific topic or domain.", + "description": "List all the private link resources under a topic or domain.", + "operationId": "PrivateLinkResources_ListByResource", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "parentType", + "in": "path", + "description": "The type of the parent resource. This can be either \\'topics\\' or \\'domains\\'.", + "required": true, + "type": "string" + }, + { + "name": "parentName", + "in": "path", + "description": "The name of the parent resource (namely, either, the topic name or domain name).", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FilterParameter" + }, + { + "$ref": "#/parameters/TopParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateLinkResourcesListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "PrivateLinkResources_ListByResource": { + "$ref": "./examples/PrivateLinkResources_ListByResource.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/systemTopics/{systemTopicName}": { + "get": { + "tags": [ + "SystemTopics" + ], + "summary": "Get a system topic.", + "description": "Get properties of a system topic.", + "operationId": "SystemTopics_Get", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "systemTopicName", + "in": "path", + "description": "Name of the system topic.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SystemTopic" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "SystemTopics_Get": { + "$ref": "./examples/SystemTopics_Get.json" + } + } + }, + "put": { + "tags": [ + "SystemTopics" + ], + "summary": "Create a system topic.", + "description": "Asynchronously creates a new system topic with the specified parameters.", + "operationId": "SystemTopics_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "systemTopicName", + "in": "path", + "description": "Name of the system topic.", + "required": true, + "type": "string" + }, + { + "name": "systemTopicInfo", + "in": "body", + "description": "System Topic information.", + "required": true, + "schema": { + "$ref": "#/definitions/SystemTopic" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SystemTopic" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/SystemTopic" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "SystemTopics_CreateOrUpdate": { + "$ref": "./examples/SystemTopics_CreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "SystemTopics" + ], + "summary": "Delete a system topic.", + "description": "Delete existing system topic.", + "operationId": "SystemTopics_Delete", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "systemTopicName", + "in": "path", + "description": "Name of the system topic.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 404 Not Found.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "SystemTopics_Delete": { + "$ref": "./examples/SystemTopics_Delete.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "SystemTopics" + ], + "summary": "Update a system topic.", + "description": "Asynchronously updates a system topic with the specified parameters.", + "operationId": "SystemTopics_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "systemTopicName", + "in": "path", + "description": "Name of the system topic.", + "required": true, + "type": "string" + }, + { + "name": "systemTopicUpdateParameters", + "in": "body", + "description": "SystemTopic update information.", + "required": true, + "schema": { + "$ref": "#/definitions/SystemTopicUpdateParameters" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "System Topic update request accepted.", + "schema": { + "$ref": "#/definitions/SystemTopic" + } + }, + "201": { + "description": "System Topic update request accepted.", + "schema": { + "$ref": "#/definitions/SystemTopic" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "SystemTopics_Update": { + "$ref": "./examples/SystemTopics_Update.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.EventGrid/systemTopics": { + "get": { + "tags": [ + "SystemTopics" + ], + "summary": "List system topics under an Azure subscription.", + "description": "List all the system topics under an Azure subscription.", + "operationId": "SystemTopics_ListBySubscription", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FilterParameter" + }, + { + "$ref": "#/parameters/TopParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SystemTopicsListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "SystemTopics_ListBySubscription": { + "$ref": "./examples/SystemTopics_ListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/systemTopics": { + "get": { + "tags": [ + "SystemTopics" + ], + "summary": "List system topics under a resource group.", + "description": "List all the system topics under a resource group.", + "operationId": "SystemTopics_ListByResourceGroup", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FilterParameter" + }, + { + "$ref": "#/parameters/TopParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SystemTopicsListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "SystemTopics_ListByResourceGroup": { + "$ref": "./examples/SystemTopics_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/topics/{topicName}": { + "get": { + "tags": [ + "Topics" + ], + "summary": "Get a topic.", + "description": "Get properties of a topic.", + "operationId": "Topics_Get", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "topicName", + "in": "path", + "description": "Name of the topic.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Topic" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "Topics_Get": { + "$ref": "./examples/Topics_Get.json" + } + } + }, + "put": { + "tags": [ + "Topics" + ], + "summary": "Create a topic.", + "description": "Asynchronously creates a new topic with the specified parameters.", + "operationId": "Topics_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "topicName", + "in": "path", + "description": "Name of the topic.", + "required": true, + "type": "string" + }, + { + "name": "topicInfo", + "in": "body", + "description": "Topic information.", + "required": true, + "schema": { + "$ref": "#/definitions/Topic" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/Topic" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "Topics_CreateOrUpdate": { + "$ref": "./examples/Topics_CreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Topics" + ], + "summary": "Delete a topic.", + "description": "Delete existing topic.", + "operationId": "Topics_Delete", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "topicName", + "in": "path", + "description": "Name of the topic.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 404 Not Found.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "Topics_Delete": { + "$ref": "./examples/Topics_Delete.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Topics" + ], + "summary": "Update a topic.", + "description": "Asynchronously updates a topic with the specified parameters.", + "operationId": "Topics_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "topicName", + "in": "path", + "description": "Name of the topic.", + "required": true, + "type": "string" + }, + { + "name": "topicUpdateParameters", + "in": "body", + "description": "Topic update information.", + "required": true, + "schema": { + "$ref": "#/definitions/TopicUpdateParameters" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "201": { + "description": "Topic update request accepted.", + "schema": { + "$ref": "#/definitions/Topic" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "Topics_Update": { + "$ref": "./examples/Topics_Update.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.EventGrid/topics": { + "get": { + "tags": [ + "Topics" + ], + "summary": "List topics under an Azure subscription.", + "description": "List all the topics under an Azure subscription.", + "operationId": "Topics_ListBySubscription", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FilterParameter" + }, + { + "$ref": "#/parameters/TopParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TopicsListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "Topics_ListBySubscription": { + "$ref": "./examples/Topics_ListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/topics": { + "get": { + "tags": [ + "Topics" + ], + "summary": "List topics under a resource group.", + "description": "List all the topics under a resource group.", + "operationId": "Topics_ListByResourceGroup", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/FilterParameter" + }, + { + "$ref": "#/parameters/TopParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TopicsListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "Topics_ListByResourceGroup": { + "$ref": "./examples/Topics_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/topics/{topicName}/listKeys": { + "post": { + "tags": [ + "Topics" + ], + "summary": "List keys for a topic.", + "description": "List the two keys used to publish to a topic.", + "operationId": "Topics_ListSharedAccessKeys", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "topicName", + "in": "path", + "description": "Name of the topic.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TopicSharedAccessKeys" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "Topics_ListSharedAccessKeys": { + "$ref": "./examples/Topics_ListSharedAccessKeys.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/topics/{topicName}/regenerateKey": { + "post": { + "tags": [ + "Topics" + ], + "summary": "Regenerate key for a topic.", + "description": "Regenerate a shared access key for a topic.", + "operationId": "Topics_RegenerateKey", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "topicName", + "in": "path", + "description": "Name of the topic.", + "required": true, + "type": "string" + }, + { + "name": "regenerateKeyRequest", + "in": "body", + "description": "Request body to regenerate key.", + "required": true, + "schema": { + "$ref": "#/definitions/TopicRegenerateKeyRequest" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TopicSharedAccessKeys" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "Topics_RegenerateKey": { + "$ref": "./examples/Topics_RegenerateKey.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{providerNamespace}/{resourceTypeName}/{resourceName}/providers/Microsoft.EventGrid/eventTypes": { + "get": { + "tags": [ + "Topics" + ], + "summary": "List topic event types.", + "description": "List event types for a topic.", + "operationId": "Topics_ListEventTypes", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group within the user's subscription.", + "required": true, + "type": "string" + }, + { + "name": "providerNamespace", + "in": "path", + "description": "Namespace of the provider of the topic.", + "required": true, + "type": "string" + }, + { + "name": "resourceTypeName", + "in": "path", + "description": "Name of the topic type.", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Name of the topic.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EventTypesListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "Topics_ListEventTypes": { + "$ref": "./examples/Topics_ListEventTypes.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/{scope}/providers/Microsoft.EventGrid/extensionTopics/default": { + "get": { + "tags": [ + "Topics" + ], + "summary": "Get properties of an extension topic.", + "description": "Get the properties of an extension topic.", + "operationId": "ExtensionTopics_Get", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "scope", + "in": "path", + "description": "The identifier of the resource to which extension topic is queried. The scope can be a subscription, or a resource group, or a top level resource belonging to a resource provider namespace. For example, use '/subscriptions/{subscriptionId}/' for a subscription, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for a resource group, and '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}' for Azure resource.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ExtensionTopic" + } + } + }, + "x-ms-examples": { + "ExtensionTopics_Get": { + "$ref": "./examples/ExtensionTopics_Get.json" + } + } + } + }, + "/providers/Microsoft.EventGrid/topicTypes": { + "get": { + "tags": [ + "TopicTypes" + ], + "summary": "List topic types.", + "description": "List all registered topic types.", + "operationId": "TopicTypes_List", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TopicTypesListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 404 Not Found.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "TopicTypes_List": { + "$ref": "./examples/TopicTypes_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/providers/Microsoft.EventGrid/topicTypes/{topicTypeName}": { + "get": { + "tags": [ + "TopicTypes" + ], + "summary": "Get a topic type.", + "description": "Get information about a topic type.", + "operationId": "TopicTypes_Get", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "topicTypeName", + "in": "path", + "description": "Name of the topic type.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TopicTypeInfo" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 404 Not Found.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "TopicTypes_Get": { + "$ref": "./examples/TopicTypes_Get.json" + } + } + } + }, + "/providers/Microsoft.EventGrid/topicTypes/{topicTypeName}/eventTypes": { + "get": { + "tags": [ + "TopicTypes" + ], + "summary": "List event types.", + "description": "List event types for a topic type.", + "operationId": "TopicTypes_ListEventTypes", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "topicTypeName", + "in": "path", + "description": "Name of the topic type.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EventTypesListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 Bad Request.\n\n * 404 Not Found.\n\n * 500 Internal Server Error." + } + }, + "x-ms-examples": { + "TopicTypes_ListEventTypes": { + "$ref": "./examples/TopicTypes_ListEventTypes.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + } + }, + "definitions": { + "DomainProperties": { + "description": "Properties of the Domain.", + "type": "object", + "properties": { + "privateEndpointConnections": { + "description": "List of private endpoint connections.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "provisioningState": { + "description": "Provisioning state of the domain.", + "enum": [ + "Creating", + "Updating", + "Deleting", + "Succeeded", + "Canceled", + "Failed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "DomainProvisioningState", + "modelAsString": true + } + }, + "endpoint": { + "description": "Endpoint for the domain.", + "type": "string", + "readOnly": true + }, + "inputSchema": { + "description": "This determines the format that Event Grid should expect for incoming events published to the domain.", + "enum": [ + "EventGridSchema", + "CustomEventSchema", + "CloudEventSchemaV1_0" + ], + "type": "string", + "x-ms-enum": { + "name": "InputSchema", + "modelAsString": true + }, + "default": "EventGridSchema" + }, + "inputSchemaMapping": { + "$ref": "#/definitions/InputSchemaMapping", + "description": "Information about the InputSchemaMapping which specified the info about mapping event payload." + }, + "metricResourceId": { + "description": "Metric resource id for the domain.", + "type": "string", + "readOnly": true + }, + "publicNetworkAccess": { + "description": "This determines if traffic is allowed over public network. By default it is enabled. \r\nYou can further restrict to specific IPs by configuring ", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "PublicNetworkAccess", + "modelAsString": true + } + }, + "inboundIpRules": { + "description": "This can be used to restrict traffic from specific IPs instead of all IPs. Note: These are considered only if PublicNetworkAccess is enabled.", + "type": "array", + "items": { + "$ref": "#/definitions/InboundIpRule" + } + } + } + }, + "ResourceSku": { + "description": "Describes an EventGrid Resource Sku.", + "type": "object", + "properties": { + "name": { + "description": "the Sku name of the resource.\r\nthe possible values: Basic; Premium", + "enum": [ + "Basic", + "Premium" + ], + "type": "string", + "x-ms-enum": { + "name": "Sku", + "modelAsString": true + } + } + } + }, + "IdentityInfo": { + "description": "The identity information for the resource.", + "type": "object", + "properties": { + "type": { + "description": "The type of managed identity used. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user-assigned identities. The type 'None' will remove any identity.", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned" + ], + "type": "string", + "x-ms-enum": { + "name": "IdentityType", + "modelAsString": true + } + }, + "principalId": { + "description": "The principal ID of resource identity.", + "type": "string" + }, + "tenantId": { + "description": "The tenant ID of resource.", + "type": "string" + }, + "userAssignedIdentities": { + "description": "The list of user identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form:\r\n'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.\r\nThis property is currently not used and reserved for future usage.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserIdentityProperties" + } + } + } + }, + "PrivateEndpointConnection": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Properties of the PrivateEndpointConnection.", + "x-ms-client-flatten": true + } + } + }, + "InboundIpRule": { + "type": "object", + "properties": { + "ipMask": { + "description": "IP Address in CIDR notation e.g., 10.0.0.0/8.", + "type": "string" + }, + "action": { + "description": "Action to perform based on the match or no match of the IpMask.", + "enum": [ + "Allow" + ], + "type": "string", + "x-ms-enum": { + "name": "IpActionType", + "modelAsString": true + } + } + } + }, + "UserIdentityProperties": { + "description": "The information about the user identity.", + "type": "object", + "properties": { + "principalId": { + "description": "The principal id of user assigned identity.", + "type": "string" + }, + "clientId": { + "description": "The client id of user assigned identity.", + "type": "string" + } + } + }, + "Resource": { + "description": "Definition of a Resource", + "type": "object", + "properties": { + "id": { + "description": "Fully qualified identifier of the resource.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the resource", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of the resource", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "PrivateEndpointConnectionProperties": { + "description": "Properties of the private endpoint connection resource.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "The Private Endpoint resource for this Connection." + }, + "groupIds": { + "description": "GroupIds from the private link service resource.", + "type": "array", + "items": { + "type": "string" + } + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/ConnectionState", + "description": "Details about the state of the connection." + }, + "provisioningState": { + "description": "Provisioning state of the Private Endpoint Connection.", + "enum": [ + "Creating", + "Updating", + "Deleting", + "Succeeded", + "Canceled", + "Failed" + ], + "type": "string", + "x-ms-enum": { + "name": "ResourceProvisioningState", + "modelAsString": true + } + } + } + }, + "PrivateEndpoint": { + "description": "PrivateEndpoint information.", + "type": "object", + "properties": { + "id": { + "description": "The ARM identifier for Private Endpoint.", + "type": "string" + } + } + }, + "ConnectionState": { + "description": "ConnectionState information.", + "type": "object", + "properties": { + "status": { + "description": "Status of the connection.", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ], + "type": "string", + "x-ms-enum": { + "name": "PersistedConnectionStatus", + "modelAsString": true + } + }, + "description": { + "description": "Description of the connection state.", + "type": "string" + }, + "actionsRequired": { + "description": "Actions required (if any).", + "type": "string" + } + } + }, + "JsonInputSchemaMappingProperties": { + "description": "This can be used to map properties of a source schema (or default values, for certain supported properties) to properties of the EventGridEvent schema.", + "type": "object", + "properties": { + "id": { + "$ref": "#/definitions/JsonField", + "description": "The mapping information for the Id property of the Event Grid Event." + }, + "topic": { + "$ref": "#/definitions/JsonField", + "description": "The mapping information for the Topic property of the Event Grid Event." + }, + "eventTime": { + "$ref": "#/definitions/JsonField", + "description": "The mapping information for the EventTime property of the Event Grid Event." + }, + "eventType": { + "$ref": "#/definitions/JsonFieldWithDefault", + "description": "The mapping information for the EventType property of the Event Grid Event." + }, + "subject": { + "$ref": "#/definitions/JsonFieldWithDefault", + "description": "The mapping information for the Subject property of the Event Grid Event." + }, + "dataVersion": { + "$ref": "#/definitions/JsonFieldWithDefault", + "description": "The mapping information for the DataVersion property of the Event Grid Event." + } + } + }, + "JsonField": { + "description": "This is used to express the source of an input schema mapping for a single target field in the Event Grid Event schema. This is currently used in the mappings for the 'id', 'topic' and 'eventtime' properties. This represents a field in the input event schema.", + "type": "object", + "properties": { + "sourceField": { + "description": "Name of a field in the input event schema that's to be used as the source of a mapping.", + "type": "string" + } + } + }, + "JsonFieldWithDefault": { + "description": "This is used to express the source of an input schema mapping for a single target field\r\nin the Event Grid Event schema. This is currently used in the mappings for the 'subject',\r\n'eventtype' and 'dataversion' properties. This represents a field in the input event schema\r\nalong with a default value to be used, and at least one of these two properties should be provided.", + "type": "object", + "properties": { + "sourceField": { + "description": "Name of a field in the input event schema that's to be used as the source of a mapping.", + "type": "string" + }, + "defaultValue": { + "description": "The default value to be used for mapping when a SourceField is not provided or if there's no property with the specified name in the published JSON event payload.", + "type": "string" + } + } + }, + "JsonInputSchemaMapping": { + "description": "This enables publishing to Event Grid using a custom input schema. This can be used to map properties from a custom input JSON schema to the Event Grid event schema.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/InputSchemaMapping" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/JsonInputSchemaMappingProperties", + "description": "JSON Properties of the input schema mapping", + "x-ms-client-flatten": true + } + }, + "x-ms-discriminator-value": "Json" + }, + "InputSchemaMapping": { + "description": "By default, Event Grid expects events to be in the Event Grid event schema. Specifying an input schema mapping enables publishing to Event Grid using a custom input schema. Currently, the only supported type of InputSchemaMapping is 'JsonInputSchemaMapping'.", + "required": [ + "inputSchemaMappingType" + ], + "type": "object", + "properties": { + "inputSchemaMappingType": { + "description": "Type of the custom mapping", + "enum": [ + "Json" + ], + "type": "string", + "x-ms-enum": { + "name": "InputSchemaMappingType", + "modelAsString": true + } + } + }, + "discriminator": "inputSchemaMappingType" + }, + "TrackedResource": { + "description": "Definition of a Tracked Resource.", + "required": [ + "location" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "location": { + "description": "Location of the resource.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "tags": { + "description": "Tags of the resource.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "Domain": { + "description": "EventGrid Domain.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DomainProperties", + "description": "Properties of the domain.", + "x-ms-client-flatten": true + }, + "sku": { + "$ref": "#/definitions/ResourceSku", + "description": "The Sku pricing tier for the domain." + }, + "identity": { + "$ref": "#/definitions/IdentityInfo", + "description": "Identity information for the resource." + } + } + }, + "DomainUpdateParameters": { + "description": "Properties of the Domain update.", + "type": "object", + "properties": { + "tags": { + "description": "Tags of the domains resource.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "properties": { + "$ref": "#/definitions/DomainUpdateParameterProperties", + "description": "Properties of the resource.", + "x-ms-client-flatten": true + }, + "identity": { + "$ref": "#/definitions/IdentityInfo", + "description": "Identity information for the resource." + }, + "sku": { + "$ref": "#/definitions/ResourceSku", + "description": "The Sku pricing tier for the domain." + } + } + }, + "DomainUpdateParameterProperties": { + "description": "Information of domain update parameter properties.", + "type": "object", + "properties": { + "publicNetworkAccess": { + "description": "This determines if traffic is allowed over public network. By default it is enabled. \r\nYou can further restrict to specific IPs by configuring ", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "PublicNetworkAccess", + "modelAsString": true + } + }, + "inboundIpRules": { + "description": "This can be used to restrict traffic from specific IPs instead of all IPs. Note: These are considered only if PublicNetworkAccess is enabled.", + "type": "array", + "items": { + "$ref": "#/definitions/InboundIpRule" + } + } + } }, - "JsonInputSchemaMappingProperties": { - "description": "This can be used to map properties of a source schema (or default values, for certain supported properties) to properties of the EventGridEvent schema.", + "DomainsListResult": { + "description": "Result of the List Domains operation", "type": "object", "properties": { - "id": { - "$ref": "#/definitions/JsonField", - "description": "The mapping information for the Id property of the Event Grid Event." + "value": { + "description": "A collection of Domains", + "type": "array", + "items": { + "$ref": "#/definitions/Domain" + } }, - "topic": { - "$ref": "#/definitions/JsonField", - "description": "The mapping information for the Topic property of the Event Grid Event." + "nextLink": { + "description": "A link for the next page of domains", + "type": "string" + } + } + }, + "DomainSharedAccessKeys": { + "description": "Shared access keys of the Domain.", + "type": "object", + "properties": { + "key1": { + "description": "Shared access key1 for the domain.", + "type": "string" }, - "eventTime": { - "$ref": "#/definitions/JsonField", - "description": "The mapping information for the EventTime property of the Event Grid Event." + "key2": { + "description": "Shared access key2 for the domain.", + "type": "string" + } + } + }, + "DomainRegenerateKeyRequest": { + "description": "Domain regenerate share access key request.", + "required": [ + "keyName" + ], + "type": "object", + "properties": { + "keyName": { + "description": "Key name to regenerate key1 or key2.", + "type": "string" + } + } + }, + "DomainTopicProperties": { + "description": "Properties of the Domain Topic.", + "type": "object", + "properties": { + "provisioningState": { + "description": "Provisioning state of the domain topic.", + "enum": [ + "Creating", + "Updating", + "Deleting", + "Succeeded", + "Canceled", + "Failed" + ], + "type": "string", + "x-ms-enum": { + "name": "DomainTopicProvisioningState", + "modelAsString": true + } + } + } + }, + "DomainTopic": { + "description": "Domain Topic.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DomainTopicProperties", + "description": "Properties of the Domain Topic.", + "x-ms-client-flatten": true + } + } + }, + "DomainTopicsListResult": { + "description": "Result of the List Domain Topics operation", + "type": "object", + "properties": { + "value": { + "description": "A collection of Domain Topics", + "type": "array", + "items": { + "$ref": "#/definitions/DomainTopic" + } }, - "eventType": { - "$ref": "#/definitions/JsonFieldWithDefault", - "description": "The mapping information for the EventType property of the Event Grid Event." + "nextLink": { + "description": "A link for the next page of domain topics", + "type": "string" + } + } + }, + "EventChannelProperties": { + "description": "Properties of the Event Channel.", + "type": "object", + "properties": { + "source": { + "$ref": "#/definitions/EventChannelSource", + "description": "Source of the event channel. This represents a unique resource in the partner's resource model." }, - "subject": { - "$ref": "#/definitions/JsonFieldWithDefault", - "description": "The mapping information for the Subject property of the Event Grid Event." + "destination": { + "$ref": "#/definitions/EventChannelDestination", + "description": "Represents the destination of an event channel." }, - "dataVersion": { - "$ref": "#/definitions/JsonFieldWithDefault", - "description": "The mapping information for the DataVersion property of the Event Grid Event." + "provisioningState": { + "description": "Provisioning state of the event channel.", + "enum": [ + "Creating", + "Updating", + "Deleting", + "Succeeded", + "Canceled", + "Failed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "EventChannelProvisioningState", + "modelAsString": true + } + }, + "filter": { + "$ref": "#/definitions/EventChannelFilter", + "description": "Information about the filter for the event channel." } } }, - "JsonField": { - "description": "This is used to express the source of an input schema mapping for a single target field in the Event Grid Event schema. This is currently used in the mappings for the 'id', 'topic' and 'eventtime' properties. This represents a field in the input event schema.", + "EventChannelSource": { + "description": "Properties of the source of an event channel.", "type": "object", "properties": { - "sourceField": { - "description": "Name of a field in the input event schema that's to be used as the source of a mapping.", + "source": { + "description": "The identifier of the resource that's the source of the events.\r\nThis represents a unique resource in the partner's resource model.", "type": "string" } } }, - "JsonFieldWithDefault": { - "description": "This is used to express the source of an input schema mapping for a single target field\r\nin the Event Grid Event schema. This is currently used in the mappings for the 'subject',\r\n'eventtype' and 'dataversion' properties. This represents a field in the input event schema\r\nalong with a default value to be used, and at least one of these two properties should be provided.", + "EventChannelDestination": { + "description": "Properties of the destination of an event channel.", + "type": "object", + "properties": { + "azureSubscriptionId": { + "description": "Azure subscription ID of the customer creating the event channel. The partner topic\r\nassociated with the event channel will be created under this Azure subscription.", + "type": "string" + }, + "resourceGroup": { + "description": "Azure Resource Group of the customer creating the event channel. The partner topic\r\nassociated with the event channel will be created under this resource group.", + "type": "string" + }, + "partnerTopicName": { + "description": "Name of the partner topic associated with the event channel.", + "type": "string" + } + } + }, + "EventChannelFilter": { + "description": "Filter for the Event Channel.", + "type": "object", + "properties": { + "subjectBeginsWith": { + "description": "An optional string to filter events for an event channel based on a resource path prefix.\r\nThe format of this depends on the publisher of the events. Wildcard characters are not supported in this path.", + "type": "string" + }, + "subjectEndsWith": { + "description": "An optional string to filter events for an event channel based on a resource path suffix.\r\nWildcard characters are not supported in this path.", + "type": "string" + }, + "includedEventTypes": { + "description": "A list of applicable event types that need to be part of the event channel. If it is desired to subscribe to all default event types, set the IncludedEventTypes to null.", + "type": "array", + "items": { + "type": "string" + } + }, + "isSubjectCaseSensitive": { + "description": "Specifies if the SubjectBeginsWith and SubjectEndsWith properties of the filter\r\nshould be compared in a case sensitive manner.", + "type": "boolean" + }, + "advancedFilters": { + "description": "An array of advanced filters that are used for filtering event channels.", + "type": "array", + "items": { + "$ref": "#/definitions/AdvancedFilter" + } + } + } + }, + "NumberInAdvancedFilter": { + "description": "NumberIn Advanced Filter.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AdvancedFilter" + } + ], + "properties": { + "values": { + "description": "The set of filter values.", + "type": "array", + "items": { + "format": "double", + "type": "number" + } + } + }, + "x-ms-discriminator-value": "NumberIn" + }, + "NumberNotInAdvancedFilter": { + "description": "NumberNotIn Advanced Filter.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AdvancedFilter" + } + ], + "properties": { + "values": { + "description": "The set of filter values.", + "type": "array", + "items": { + "format": "double", + "type": "number" + } + } + }, + "x-ms-discriminator-value": "NumberNotIn" + }, + "NumberLessThanAdvancedFilter": { + "description": "NumberLessThan Advanced Filter.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AdvancedFilter" + } + ], + "properties": { + "value": { + "format": "double", + "description": "The filter value.", + "type": "number" + } + }, + "x-ms-discriminator-value": "NumberLessThan" + }, + "NumberGreaterThanAdvancedFilter": { + "description": "NumberGreaterThan Advanced Filter.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AdvancedFilter" + } + ], + "properties": { + "value": { + "format": "double", + "description": "The filter value.", + "type": "number" + } + }, + "x-ms-discriminator-value": "NumberGreaterThan" + }, + "NumberLessThanOrEqualsAdvancedFilter": { + "description": "NumberLessThanOrEquals Advanced Filter.", "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AdvancedFilter" + } + ], "properties": { - "sourceField": { - "description": "Name of a field in the input event schema that's to be used as the source of a mapping.", - "type": "string" - }, - "defaultValue": { - "description": "The default value to be used for mapping when a SourceField is not provided or if there's no property with the specified name in the published JSON event payload.", - "type": "string" + "value": { + "format": "double", + "description": "The filter value.", + "type": "number" } - } + }, + "x-ms-discriminator-value": "NumberLessThanOrEquals" }, - "JsonInputSchemaMapping": { - "description": "This enables publishing to Event Grid using a custom input schema. This can be used to map properties from a custom input JSON schema to the Event Grid event schema.", + "NumberGreaterThanOrEqualsAdvancedFilter": { + "description": "NumberGreaterThanOrEquals Advanced Filter.", "type": "object", "allOf": [ { - "$ref": "#/definitions/InputSchemaMapping" + "$ref": "#/definitions/AdvancedFilter" } ], "properties": { - "properties": { - "$ref": "#/definitions/JsonInputSchemaMappingProperties", - "description": "JSON Properties of the input schema mapping", - "x-ms-client-flatten": true + "value": { + "format": "double", + "description": "The filter value.", + "type": "number" } }, - "x-ms-discriminator-value": "Json" + "x-ms-discriminator-value": "NumberGreaterThanOrEquals" }, - "InputSchemaMapping": { - "description": "By default, Event Grid expects events to be in the Event Grid event schema. Specifying an input schema mapping enables publishing to Event Grid using a custom input schema. Currently, the only supported type of InputSchemaMapping is 'JsonInputSchemaMapping'.", + "BoolEqualsAdvancedFilter": { + "description": "BoolEquals Advanced Filter.", "type": "object", - "required": [ - "inputSchemaMappingType" + "allOf": [ + { + "$ref": "#/definitions/AdvancedFilter" + } ], "properties": { - "inputSchemaMappingType": { - "description": "Type of the custom mapping", - "enum": [ - "Json" - ], - "type": "string", - "x-ms-enum": { - "name": "InputSchemaMappingType", - "modelAsString": true - } + "value": { + "description": "The boolean filter value.", + "type": "boolean" } }, - "discriminator": "inputSchemaMappingType" + "x-ms-discriminator-value": "BoolEquals" }, - "TrackedResource": { - "description": "Definition of a Tracked Resource.", - "required": [ - "location" - ], + "StringInAdvancedFilter": { + "description": "StringIn Advanced Filter.", "type": "object", "allOf": [ { - "$ref": "#/definitions/Resource" + "$ref": "#/definitions/AdvancedFilter" } ], "properties": { - "location": { - "description": "Location of the resource.", - "type": "string", - "x-ms-mutability": [ - "read", - "create" - ] - }, - "tags": { - "description": "Tags of the resource.", - "type": "object", - "additionalProperties": { + "values": { + "description": "The set of filter values.", + "type": "array", + "items": { "type": "string" } } - } + }, + "x-ms-discriminator-value": "StringIn" }, - "Domain": { - "description": "EventGrid Domain.", + "StringNotInAdvancedFilter": { + "description": "StringNotIn Advanced Filter.", "type": "object", "allOf": [ { - "$ref": "#/definitions/TrackedResource" + "$ref": "#/definitions/AdvancedFilter" } ], "properties": { - "properties": { - "$ref": "#/definitions/DomainProperties", - "description": "Properties of the domain.", - "x-ms-client-flatten": true + "values": { + "description": "The set of filter values.", + "type": "array", + "items": { + "type": "string" + } } - } + }, + "x-ms-discriminator-value": "StringNotIn" }, - "DomainUpdateParameters": { - "description": "Properties of the Domain update", + "StringBeginsWithAdvancedFilter": { + "description": "StringBeginsWith Advanced Filter.", "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AdvancedFilter" + } + ], "properties": { - "tags": { - "description": "Tags of the domains resource", - "type": "object", - "additionalProperties": { + "values": { + "description": "The set of filter values.", + "type": "array", + "items": { "type": "string" } } - } + }, + "x-ms-discriminator-value": "StringBeginsWith" }, - "DomainsListResult": { - "description": "Result of the List Domains operation", + "StringEndsWithAdvancedFilter": { + "description": "StringEndsWith Advanced Filter.", "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AdvancedFilter" + } + ], "properties": { - "value": { - "description": "A collection of Domains", + "values": { + "description": "The set of filter values.", "type": "array", "items": { - "$ref": "#/definitions/Domain" + "type": "string" } - }, - "nextLink": { - "description": "A link for the next page of domains", - "type": "string" } - } + }, + "x-ms-discriminator-value": "StringEndsWith" }, - "DomainSharedAccessKeys": { - "description": "Shared access keys of the Domain.", + "StringContainsAdvancedFilter": { + "description": "StringContains Advanced Filter.", "type": "object", - "properties": { - "key1": { - "description": "Shared access key1 for the domain.", - "type": "string" - }, - "key2": { - "description": "Shared access key2 for the domain.", - "type": "string" + "allOf": [ + { + "$ref": "#/definitions/AdvancedFilter" } - } - }, - "DomainRegenerateKeyRequest": { - "description": "Domain regenerate share access key request.", - "required": [ - "keyName" ], - "type": "object", "properties": { - "keyName": { - "description": "Key name to regenerate key1 or key2.", - "type": "string" + "values": { + "description": "The set of filter values.", + "type": "array", + "items": { + "type": "string" + } } - } + }, + "x-ms-discriminator-value": "StringContains" }, - "DomainTopicProperties": { - "description": "Properties of the Domain Topic.", + "AdvancedFilter": { + "description": "This is the base type that represents an advanced filter. To configure an advanced filter, do not directly instantiate an object of this class. Instead, instantiate an object of a derived class such as BoolEqualsAdvancedFilter, NumberInAdvancedFilter, StringEqualsAdvancedFilter etc. depending on the type of the key based on which you want to filter.", + "required": [ + "operatorType" + ], "type": "object", "properties": { - "provisioningState": { - "description": "Provisioning state of the domain topic.", + "operatorType": { + "description": "The operator type used for filtering, e.g., NumberIn, StringContains, BoolEquals and others.", "enum": [ - "Creating", - "Updating", - "Deleting", - "Succeeded", - "Canceled", - "Failed" + "NumberIn", + "NumberNotIn", + "NumberLessThan", + "NumberGreaterThan", + "NumberLessThanOrEquals", + "NumberGreaterThanOrEquals", + "BoolEquals", + "StringIn", + "StringNotIn", + "StringBeginsWith", + "StringEndsWith", + "StringContains" ], "type": "string", "x-ms-enum": { - "name": "DomainTopicProvisioningState", + "name": "AdvancedFilterOperatorType", "modelAsString": true } + }, + "key": { + "description": "The field/property in the event based on which you want to filter.", + "type": "string" } - } + }, + "discriminator": "operatorType" }, - "DomainTopic": { - "description": "Domain Topic.", + "EventChannel": { + "description": "Event Channel.", "type": "object", "allOf": [ { @@ -2630,25 +6227,25 @@ ], "properties": { "properties": { - "$ref": "#/definitions/DomainTopicProperties", - "description": "Properties of the Domain Topic.", + "$ref": "#/definitions/EventChannelProperties", + "description": "Properties of the EventChannel.", "x-ms-client-flatten": true } } }, - "DomainTopicsListResult": { - "description": "Result of the List Domain Topics operation", + "EventChannelsListResult": { + "description": "Result of the List Event Channels operation", "type": "object", "properties": { "value": { - "description": "A collection of Domain Topics", + "description": "A collection of Event Channels", "type": "array", "items": { - "$ref": "#/definitions/DomainTopic" + "$ref": "#/definitions/EventChannel" } }, "nextLink": { - "description": "A link for the next page of domain topics", + "description": "A link for the next page of event channels", "type": "string" } } @@ -2682,7 +6279,11 @@ }, "destination": { "$ref": "#/definitions/EventSubscriptionDestination", - "description": "Information about the destination where events have to be delivered for the event subscription." + "description": "Information about the destination where events have to be delivered for the event subscription.\r\nUses Azure Event Grid's identity to acquire the authentication tokens being used during delivery / dead-lettering." + }, + "deliveryWithResourceIdentity": { + "$ref": "#/definitions/DeliveryWithResourceIdentity", + "description": "Information about the destination where events have to be delivered for the event subscription.\r\nUses the managed identity setup on the parent resource (namely, topic or domain) to acquire the authentication tokens being used during delivery / dead-lettering." }, "filter": { "$ref": "#/definitions/EventSubscriptionFilter", @@ -2719,7 +6320,25 @@ }, "deadLetterDestination": { "$ref": "#/definitions/DeadLetterDestination", - "description": "The DeadLetter destination of the event subscription." + "description": "The dead letter destination of the event subscription. Any event that cannot be delivered to its' destination is sent to the dead letter destination.\r\nUses Azure Event Grid's identity to acquire the authentication tokens being used during delivery / dead-lettering." + }, + "deadLetterWithResourceIdentity": { + "$ref": "#/definitions/DeadLetterWithResourceIdentity", + "description": "The dead letter destination of the event subscription. Any event that cannot be delivered to its' destination is sent to the dead letter destination.\r\nUses the managed identity setup on the parent resource (namely, topic or domain) to acquire the authentication tokens being used during delivery / dead-lettering." + } + } + }, + "DeliveryWithResourceIdentity": { + "description": "Information about the delivery for an event subscription with resource identity.", + "type": "object", + "properties": { + "identity": { + "$ref": "#/definitions/EventSubscriptionIdentity", + "description": "The identity to use when delivering events." + }, + "destination": { + "$ref": "#/definitions/EventSubscriptionDestination", + "description": "Information about the destination where events have to be delivered for the event subscription.\r\nUses Azure Event Grid's identity to acquire the authentication tokens being used during delivery / dead-lettering." } } }, @@ -2765,10 +6384,46 @@ "description": "Maximum number of delivery retry attempts for events.", "type": "integer" }, - "eventTimeToLiveInMinutes": { - "format": "int32", - "description": "Time To Live (in minutes) for events.", - "type": "integer" + "eventTimeToLiveInMinutes": { + "format": "int32", + "description": "Time To Live (in minutes) for events.", + "type": "integer" + } + } + }, + "DeadLetterWithResourceIdentity": { + "description": "Information about the deadletter destination with resource identity.", + "type": "object", + "properties": { + "identity": { + "$ref": "#/definitions/EventSubscriptionIdentity", + "description": "The identity to use when dead-lettering events." + }, + "deadLetterDestination": { + "$ref": "#/definitions/DeadLetterDestination", + "description": "Information about the destination where events have to be delivered for the event subscription.\r\nUses the managed identity setup on the parent resource (namely, topic or domain) to acquire the authentication tokens being used during delivery / dead-lettering." + } + } + }, + "EventSubscriptionIdentity": { + "description": "The identity information with the event subscription.", + "type": "object", + "properties": { + "type": { + "description": "The type of managed identity used. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user-assigned identities. The type 'None' will remove any identity.", + "enum": [ + "SystemAssigned", + "UserAssigned" + ], + "type": "string", + "x-ms-enum": { + "name": "EventSubscriptionIdentityType", + "modelAsString": true + } + }, + "userAssignedIdentity": { + "description": "The user identity associated with the resource.", + "type": "string" } } }, @@ -2819,521 +6474,860 @@ } } }, - "NumberInAdvancedFilter": { - "description": "NumberIn Advanced Filter.", + "StorageBlobDeadLetterDestination": { + "description": "Information about the storage blob based dead letter destination.", "type": "object", "allOf": [ { - "$ref": "#/definitions/AdvancedFilter" + "$ref": "#/definitions/DeadLetterDestination" } ], "properties": { - "values": { - "description": "The set of filter values.", - "type": "array", - "items": { - "format": "double", - "type": "number" + "properties": { + "$ref": "#/definitions/StorageBlobDeadLetterDestinationProperties", + "description": "The properties of the Storage Blob based deadletter destination", + "x-ms-client-flatten": true + } + }, + "x-ms-discriminator-value": "StorageBlob" + }, + "WebHookEventSubscriptionDestination": { + "description": "Information about the webhook destination for an event subscription.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/EventSubscriptionDestination" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/WebHookEventSubscriptionDestinationProperties", + "description": "WebHook Properties of the event subscription destination.", + "x-ms-client-flatten": true + } + }, + "x-ms-discriminator-value": "WebHook" + }, + "DeadLetterDestination": { + "description": "Information about the dead letter destination for an event subscription. To configure a deadletter destination, do not directly instantiate an object of this class. Instead, instantiate an object of a derived class. Currently, StorageBlobDeadLetterDestination is the only class that derives from this class.", + "required": [ + "endpointType" + ], + "type": "object", + "properties": { + "endpointType": { + "description": "Type of the endpoint for the dead letter destination", + "enum": [ + "StorageBlob" + ], + "type": "string", + "x-ms-enum": { + "name": "DeadLetterEndPointType", + "modelAsString": true } } }, - "x-ms-discriminator-value": "NumberIn" + "discriminator": "endpointType" }, - "StorageBlobDeadLetterDestination": { - "description": "Information about the storage blob based dead letter destination.", + "EventHubEventSubscriptionDestinationProperties": { + "description": "The properties for a event hub destination.", + "type": "object", + "properties": { + "resourceId": { + "description": "The Azure Resource Id that represents the endpoint of an Event Hub destination of an event subscription.", + "type": "string" + } + } + }, + "EventHubEventSubscriptionDestination": { + "description": "Information about the event hub destination for an event subscription.", "type": "object", "allOf": [ { - "$ref": "#/definitions/DeadLetterDestination" + "$ref": "#/definitions/EventSubscriptionDestination" } ], "properties": { "properties": { - "$ref": "#/definitions/StorageBlobDeadLetterDestinationProperties", - "description": "The properties of the Storage Blob based deadletter destination", + "$ref": "#/definitions/EventHubEventSubscriptionDestinationProperties", + "description": "Event Hub Properties of the event subscription destination.", "x-ms-client-flatten": true } }, - "x-ms-discriminator-value": "StorageBlob" + "x-ms-discriminator-value": "EventHub" }, - "NumberNotInAdvancedFilter": { - "description": "NumberNotIn Advanced Filter.", + "StorageQueueEventSubscriptionDestinationProperties": { + "description": "The properties for a storage queue destination.", + "type": "object", + "properties": { + "resourceId": { + "description": "The Azure Resource ID of the storage account that contains the queue that is the destination of an event subscription.", + "type": "string" + }, + "queueName": { + "description": "The name of the Storage queue under a storage account that is the destination of an event subscription.", + "type": "string" + } + } + }, + "StorageQueueEventSubscriptionDestination": { + "description": "Information about the storage queue destination for an event subscription.", "type": "object", "allOf": [ { - "$ref": "#/definitions/AdvancedFilter" + "$ref": "#/definitions/EventSubscriptionDestination" } ], "properties": { - "values": { - "description": "The set of filter values.", - "type": "array", - "items": { - "format": "double", - "type": "number" - } + "properties": { + "$ref": "#/definitions/StorageQueueEventSubscriptionDestinationProperties", + "description": "Storage Queue Properties of the event subscription destination.", + "x-ms-client-flatten": true } }, - "x-ms-discriminator-value": "NumberNotIn" + "x-ms-discriminator-value": "StorageQueue" }, - "NumberLessThanAdvancedFilter": { - "description": "NumberLessThan Advanced Filter.", + "HybridConnectionEventSubscriptionDestinationProperties": { + "description": "The properties for a hybrid connection destination.", + "type": "object", + "properties": { + "resourceId": { + "description": "The Azure Resource ID of an hybrid connection that is the destination of an event subscription.", + "type": "string" + } + } + }, + "HybridConnectionEventSubscriptionDestination": { + "description": "Information about the HybridConnection destination for an event subscription.", "type": "object", "allOf": [ { - "$ref": "#/definitions/AdvancedFilter" + "$ref": "#/definitions/EventSubscriptionDestination" } ], "properties": { - "value": { - "format": "double", - "description": "The filter value.", - "type": "number" + "properties": { + "$ref": "#/definitions/HybridConnectionEventSubscriptionDestinationProperties", + "description": "Hybrid connection Properties of the event subscription destination.", + "x-ms-client-flatten": true } }, - "x-ms-discriminator-value": "NumberLessThan" + "x-ms-discriminator-value": "HybridConnection" }, - "NumberGreaterThanAdvancedFilter": { - "description": "NumberGreaterThan Advanced Filter.", + "ServiceBusQueueEventSubscriptionDestinationProperties": { + "description": "The properties that represent the Service Bus destination of an event subscription.", + "type": "object", + "properties": { + "resourceId": { + "description": "The Azure Resource Id that represents the endpoint of the Service Bus destination of an event subscription.", + "type": "string" + } + } + }, + "ServiceBusQueueEventSubscriptionDestination": { + "description": "Information about the service bus destination for an event subscription.", "type": "object", "allOf": [ { - "$ref": "#/definitions/AdvancedFilter" + "$ref": "#/definitions/EventSubscriptionDestination" } ], "properties": { - "value": { - "format": "double", - "description": "The filter value.", - "type": "number" + "properties": { + "$ref": "#/definitions/ServiceBusQueueEventSubscriptionDestinationProperties", + "description": "Service Bus Properties of the event subscription destination.", + "x-ms-client-flatten": true } }, - "x-ms-discriminator-value": "NumberGreaterThan" + "x-ms-discriminator-value": "ServiceBusQueue" }, - "NumberLessThanOrEqualsAdvancedFilter": { - "description": "NumberLessThanOrEquals Advanced Filter.", + "ServiceBusTopicEventSubscriptionDestinationProperties": { + "description": "The properties that represent the Service Bus Topic destination of an event subscription.", + "type": "object", + "properties": { + "resourceId": { + "description": "The Azure Resource Id that represents the endpoint of the Service Bus Topic destination of an event subscription.", + "type": "string" + } + } + }, + "ServiceBusTopicEventSubscriptionDestination": { + "description": "Information about the service bus topic destination for an event subscription.", "type": "object", "allOf": [ { - "$ref": "#/definitions/AdvancedFilter" + "$ref": "#/definitions/EventSubscriptionDestination" } ], "properties": { - "value": { - "format": "double", - "description": "The filter value.", - "type": "number" + "properties": { + "$ref": "#/definitions/ServiceBusTopicEventSubscriptionDestinationProperties", + "description": "Service Bus Topic Properties of the event subscription destination.", + "x-ms-client-flatten": true } }, - "x-ms-discriminator-value": "NumberLessThanOrEquals" + "x-ms-discriminator-value": "ServiceBusTopic" }, - "NumberGreaterThanOrEqualsAdvancedFilter": { - "description": "NumberGreaterThanOrEquals Advanced Filter.", + "AzureFunctionEventSubscriptionDestinationProperties": { + "description": "The properties that represent the Azure Function destination of an event subscription.", + "type": "object", + "properties": { + "resourceId": { + "description": "The Azure Resource Id that represents the endpoint of the Azure Function destination of an event subscription.", + "type": "string" + }, + "maxEventsPerBatch": { + "format": "int32", + "description": "Maximum number of events per batch.", + "type": "integer" + }, + "preferredBatchSizeInKilobytes": { + "format": "int32", + "description": "Preferred batch size in Kilobytes.", + "type": "integer" + } + } + }, + "AzureFunctionEventSubscriptionDestination": { + "description": "Information about the azure function destination for an event subscription.", "type": "object", "allOf": [ { - "$ref": "#/definitions/AdvancedFilter" + "$ref": "#/definitions/EventSubscriptionDestination" } ], "properties": { - "value": { - "format": "double", - "description": "The filter value.", - "type": "number" + "properties": { + "$ref": "#/definitions/AzureFunctionEventSubscriptionDestinationProperties", + "description": "Azure Function Properties of the event subscription destination.", + "x-ms-client-flatten": true + } + }, + "x-ms-discriminator-value": "AzureFunction" + }, + "EventSubscriptionDestination": { + "description": "Information about the destination for an event subscription.", + "required": [ + "endpointType" + ], + "type": "object", + "properties": { + "endpointType": { + "description": "Type of the endpoint for the event subscription destination.", + "enum": [ + "WebHook", + "EventHub", + "StorageQueue", + "HybridConnection", + "ServiceBusQueue", + "ServiceBusTopic", + "AzureFunction" + ], + "type": "string", + "x-ms-enum": { + "name": "EndpointType", + "modelAsString": true + } } }, - "x-ms-discriminator-value": "NumberGreaterThanOrEquals" + "discriminator": "endpointType" }, - "BoolEqualsAdvancedFilter": { - "description": "BoolEquals Advanced Filter.", + "EventSubscription": { + "description": "Event Subscription", "type": "object", "allOf": [ { - "$ref": "#/definitions/AdvancedFilter" + "$ref": "#/definitions/Resource" } ], "properties": { - "value": { - "description": "The boolean filter value.", - "type": "boolean" + "properties": { + "$ref": "#/definitions/EventSubscriptionProperties", + "description": "Properties of the event subscription.", + "x-ms-client-flatten": true } - }, - "x-ms-discriminator-value": "BoolEquals" + } }, - "StringInAdvancedFilter": { - "description": "StringIn Advanced Filter.", + "EventSubscriptionUpdateParameters": { + "description": "Properties of the Event Subscription update.", "type": "object", - "allOf": [ - { - "$ref": "#/definitions/AdvancedFilter" - } - ], "properties": { - "values": { - "description": "The set of filter values.", + "destination": { + "$ref": "#/definitions/EventSubscriptionDestination", + "description": "Information about the destination where events have to be delivered for the event subscription.\r\nUses Azure Event Grid's identity to acquire the authentication tokens being used during delivery / dead-lettering." + }, + "deliveryWithResourceIdentity": { + "$ref": "#/definitions/DeliveryWithResourceIdentity", + "description": "Information about the destination where events have to be delivered for the event subscription.\r\nUses the managed identity setup on the parent resource (topic / domain) to acquire the authentication tokens being used during delivery / dead-lettering." + }, + "filter": { + "$ref": "#/definitions/EventSubscriptionFilter", + "description": "Information about the filter for the event subscription." + }, + "labels": { + "description": "List of user defined labels.", "type": "array", "items": { "type": "string" } + }, + "expirationTimeUtc": { + "format": "date-time", + "description": "Information about the expiration time for the event subscription.", + "type": "string" + }, + "eventDeliverySchema": { + "description": "The event delivery schema for the event subscription.", + "enum": [ + "EventGridSchema", + "CustomInputSchema", + "CloudEventSchemaV1_0" + ], + "type": "string", + "x-ms-enum": { + "name": "EventDeliverySchema", + "modelAsString": true + } + }, + "retryPolicy": { + "$ref": "#/definitions/RetryPolicy", + "description": "The retry policy for events. This can be used to configure maximum number of delivery attempts and time to live for events." + }, + "deadLetterDestination": { + "$ref": "#/definitions/DeadLetterDestination", + "description": "The dead letter destination of the event subscription. Any event that cannot be delivered to its' destination is sent to the dead letter destination.\r\nUses Azure Event Grid's identity to acquire the authentication tokens being used during delivery / dead-lettering." + }, + "deadLetterWithResourceIdentity": { + "$ref": "#/definitions/DeadLetterWithResourceIdentity", + "description": "The dead letter destination of the event subscription. Any event that cannot be delivered to its' destination is sent to the dead letter destination.\r\nUses the managed identity setup on the parent resource (topic / domain) to acquire the authentication tokens being used during delivery / dead-lettering." } - }, - "x-ms-discriminator-value": "StringIn" + } }, - "StringNotInAdvancedFilter": { - "description": "StringNotIn Advanced Filter.", + "EventSubscriptionFullUrl": { + "description": "Full endpoint url of an event subscription", "type": "object", - "allOf": [ - { - "$ref": "#/definitions/AdvancedFilter" - } - ], "properties": { - "values": { - "description": "The set of filter values.", - "type": "array", - "items": { - "type": "string" - } + "endpointUrl": { + "description": "The URL that represents the endpoint of the destination of an event subscription.", + "type": "string" } - }, - "x-ms-discriminator-value": "StringNotIn" + } }, - "StringBeginsWithAdvancedFilter": { - "description": "StringBeginsWith Advanced Filter.", + "EventSubscriptionsListResult": { + "description": "Result of the List EventSubscriptions operation", "type": "object", - "allOf": [ - { - "$ref": "#/definitions/AdvancedFilter" - } - ], "properties": { - "values": { - "description": "The set of filter values.", + "value": { + "description": "A collection of EventSubscriptions", "type": "array", "items": { - "type": "string" + "$ref": "#/definitions/EventSubscription" } + }, + "nextLink": { + "description": "A link for the next page of event subscriptions", + "type": "string" } - }, - "x-ms-discriminator-value": "StringBeginsWith" + } }, - "StringEndsWithAdvancedFilter": { - "description": "StringEndsWith Advanced Filter.", + "OperationsListResult": { + "description": "Result of the List Operations operation", "type": "object", - "allOf": [ - { - "$ref": "#/definitions/AdvancedFilter" - } - ], "properties": { - "values": { - "description": "The set of filter values.", + "value": { + "description": "A collection of operations", "type": "array", "items": { - "type": "string" + "$ref": "#/definitions/Operation" } } - }, - "x-ms-discriminator-value": "StringEndsWith" + } }, - "StringContainsAdvancedFilter": { - "description": "StringContains Advanced Filter.", + "Operation": { + "description": "Represents an operation returned by the GetOperations request", "type": "object", - "allOf": [ - { - "$ref": "#/definitions/AdvancedFilter" + "properties": { + "name": { + "description": "Name of the operation", + "type": "string" + }, + "display": { + "$ref": "#/definitions/OperationInfo", + "description": "Display name of the operation" + }, + "origin": { + "description": "Origin of the operation", + "type": "string" + }, + "properties": { + "description": "Properties of the operation", + "type": "object", + "x-ms-client-flatten": true } - ], + } + }, + "OperationInfo": { + "description": "Information about an operation", + "type": "object", "properties": { - "values": { - "description": "The set of filter values.", - "type": "array", - "items": { - "type": "string" - } + "provider": { + "description": "Name of the provider", + "type": "string" + }, + "resource": { + "description": "Name of the resource type", + "type": "string" + }, + "operation": { + "description": "Name of the operation", + "type": "string" + }, + "description": { + "description": "Description of the operation", + "type": "string" } - }, - "x-ms-discriminator-value": "StringContains" + } }, - "AdvancedFilter": { - "description": "This is the base type that represents an advanced filter. To configure an advanced filter, do not directly instantiate an object of this class. Instead, instantiate an object of a derived class such as BoolEqualsAdvancedFilter, NumberInAdvancedFilter, StringEqualsAdvancedFilter etc. depending on the type of the key based on which you want to filter.", - "required": [ - "operatorType" - ], + "PartnerNamespaceProperties": { + "description": "Properties of the partner namespace.", "type": "object", "properties": { - "operatorType": { - "description": "The operator type used for filtering, e.g., NumberIn, StringContains, BoolEquals and others.", + "provisioningState": { + "description": "Provisioning state of the partner namespace.", "enum": [ - "NumberIn", - "NumberNotIn", - "NumberLessThan", - "NumberGreaterThan", - "NumberLessThanOrEquals", - "NumberGreaterThanOrEquals", - "BoolEquals", - "StringIn", - "StringNotIn", - "StringBeginsWith", - "StringEndsWith", - "StringContains" + "Creating", + "Updating", + "Deleting", + "Succeeded", + "Canceled", + "Failed" ], "type": "string", + "readOnly": true, "x-ms-enum": { - "name": "AdvancedFilterOperatorType", + "name": "PartnerNamespaceProvisioningState", "modelAsString": true } }, - "key": { - "description": "The field/property in the event based on which you want to filter.", + "partnerRegistrationFullyQualifiedId": { + "description": "The fully qualified ARM Id of the partner registration that should be associated with this partner namespace. This takes the following format:\r\n/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerRegistrations/{partnerRegistrationName}.", "type": "string" + }, + "endpoint": { + "description": "Endpoint for the partner namespace.", + "type": "string", + "readOnly": true } - }, - "discriminator": "operatorType" + } }, - "WebHookEventSubscriptionDestination": { - "description": "Information about the webhook destination for an event subscription.", + "PartnerNamespace": { + "description": "EventGrid Partner Namespace.", "type": "object", "allOf": [ { - "$ref": "#/definitions/EventSubscriptionDestination" + "$ref": "#/definitions/TrackedResource" } ], "properties": { "properties": { - "$ref": "#/definitions/WebHookEventSubscriptionDestinationProperties", - "description": "WebHook Properties of the event subscription destination.", + "$ref": "#/definitions/PartnerNamespaceProperties", + "description": "Properties of the partner namespace.", "x-ms-client-flatten": true } - }, - "x-ms-discriminator-value": "WebHook" + } + }, + "PartnerNamespaceUpdateParameters": { + "description": "Properties of the PartnerNamespace update.", + "type": "object", + "properties": { + "tags": { + "description": "Tags of the partner namespace.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "PartnerNamespacesListResult": { + "description": "Result of the List Partner Namespaces operation", + "type": "object", + "properties": { + "value": { + "description": "A collection of partner namespaces.", + "type": "array", + "items": { + "$ref": "#/definitions/PartnerNamespace" + } + }, + "nextLink": { + "description": "A link for the next page of partner namespaces.", + "type": "string" + } + } + }, + "PartnerNamespaceSharedAccessKeys": { + "description": "Shared access keys of the partner namespace.", + "type": "object", + "properties": { + "key1": { + "description": "Shared access key1 for the partner namespace.", + "type": "string" + }, + "key2": { + "description": "Shared access key2 for the partner namespace.", + "type": "string" + } + } }, - "DeadLetterDestination": { - "description": "Information about the dead letter destination for an event subscription. To configure a deadletter destination, do not directly instantiate an object of this class. Instead, instantiate an object of a derived class. Currently, StorageBlobDeadLetterDestination is the only class that derives from this class.", + "PartnerNamespaceRegenerateKeyRequest": { + "description": "PartnerNamespace regenerate shared access key request.", "required": [ - "endpointType" + "keyName" ], "type": "object", "properties": { - "endpointType": { - "description": "Type of the endpoint for the dead letter destination", + "keyName": { + "description": "Key name to regenerate (key1 or key2).", + "type": "string" + } + } + }, + "PartnerRegistrationProperties": { + "description": "Properties of the partner registration.", + "type": "object", + "properties": { + "provisioningState": { + "description": "Provisioning state of the partner registration.", "enum": [ - "StorageBlob" + "Creating", + "Updating", + "Deleting", + "Succeeded", + "Canceled", + "Failed" ], "type": "string", + "readOnly": true, "x-ms-enum": { - "name": "DeadLetterEndPointType", + "name": "PartnerRegistrationProvisioningState", "modelAsString": true } - } - }, - "discriminator": "endpointType" - }, - "EventHubEventSubscriptionDestinationProperties": { - "description": "The properties for a event hub destination.", - "type": "object", - "properties": { - "resourceId": { - "description": "The Azure Resource Id that represents the endpoint of an Event Hub destination of an event subscription.", + }, + "partnerName": { + "description": "Official name of the partner name. For example: \"Contoso\".", + "type": "string" + }, + "partnerResourceTypeName": { + "description": "Name of the partner resource type.", + "type": "string" + }, + "partnerResourceTypeDisplayName": { + "description": "Display name of the partner resource type.", + "type": "string" + }, + "partnerResourceTypeDescription": { + "description": "Description of the partner resource type.", + "type": "string" + }, + "setupUri": { + "description": "URI of the partner website that can be used by Azure customers to setup Event Grid\r\nintegration on an event source.", + "type": "string" + }, + "logoUri": { + "description": "URI of the logo.", "type": "string" + }, + "visibilityState": { + "description": "Visibility state of the partner registration.", + "enum": [ + "Hidden", + "PublicPreview", + "GenerallyAvailable" + ], + "type": "string", + "x-ms-enum": { + "name": "PartnerRegistrationVisibilityState", + "modelAsString": true + } + }, + "authorizedAzureSubscriptionIds": { + "description": "List of Azure subscription Ids that are authorized to create a partner namespace\r\nassociated with this partner registration. This is an optional property. Creating\r\npartner namespaces is always permitted under the same Azure subscription as the one used\r\nfor creating the partner registration.", + "type": "array", + "items": { + "type": "string" + } } } }, - "EventHubEventSubscriptionDestination": { - "description": "Information about the event hub destination for an event subscription.", + "PartnerRegistration": { + "description": "Information about a partner registration.", "type": "object", "allOf": [ { - "$ref": "#/definitions/EventSubscriptionDestination" + "$ref": "#/definitions/TrackedResource" } ], "properties": { "properties": { - "$ref": "#/definitions/EventHubEventSubscriptionDestinationProperties", - "description": "Event Hub Properties of the event subscription destination.", + "$ref": "#/definitions/PartnerRegistrationProperties", + "description": "Properties of the partner registration.", "x-ms-client-flatten": true } - }, - "x-ms-discriminator-value": "EventHub" + } }, - "StorageQueueEventSubscriptionDestinationProperties": { - "description": "The properties for a storage queue destination.", + "PartnerRegistrationUpdateParameters": { + "description": "Properties of the Partner Registration update.", "type": "object", "properties": { - "resourceId": { - "description": "The Azure Resource ID of the storage account that contains the queue that is the destination of an event subscription.", + "tags": { + "description": "Tags of the partner registration resource.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "partnerTopicTypeName": { + "description": "Name of the partner topic type.", "type": "string" }, - "queueName": { - "description": "The name of the Storage queue under a storage account that is the destination of an event subscription.", + "partnerTopicTypeDisplayName": { + "description": "Display name of the partner topic type.", + "type": "string" + }, + "partnerTopicTypeDescription": { + "description": "Description of the partner topic type.", + "type": "string" + }, + "setupUri": { + "description": "URI of the partner website that can be used by Azure customers to setup Event Grid\r\nintegration on an event source.", + "type": "string" + }, + "logoUri": { + "description": "URI of the partner logo.", "type": "string" + }, + "authorizedAzureSubscriptionIds": { + "description": "List of IDs of Azure AD applications that are authorized to create a partner namespace\r\nassociated with this partner registration. This is an optional property. Creating\r\npartner namespaces is always permitted under the same Azure subscription as the one used\r\nfor creating the partner registration.", + "type": "array", + "items": { + "type": "string" + } } } }, - "StorageQueueEventSubscriptionDestination": { - "description": "Information about the storage queue destination for an event subscription.", + "PartnerRegistrationsListResult": { + "description": "Result of the List Partner Registrations operation.", "type": "object", - "allOf": [ - { - "$ref": "#/definitions/EventSubscriptionDestination" - } - ], "properties": { - "properties": { - "$ref": "#/definitions/StorageQueueEventSubscriptionDestinationProperties", - "description": "Storage Queue Properties of the event subscription destination.", - "x-ms-client-flatten": true + "value": { + "description": "A collection of partner registrations.", + "type": "array", + "items": { + "$ref": "#/definitions/PartnerRegistration" + } + }, + "nextLink": { + "description": "A link for the next page of partner registrations.", + "type": "string" } - }, - "x-ms-discriminator-value": "StorageQueue" + } }, - "HybridConnectionEventSubscriptionDestinationProperties": { - "description": "The properties for a hybrid connection destination.", + "EventTypeProperties": { + "description": "Properties of the event type", "type": "object", "properties": { - "resourceId": { - "description": "The Azure Resource ID of an hybrid connection that is the destination of an event subscription.", + "displayName": { + "description": "Display name of the event type.", + "type": "string" + }, + "description": { + "description": "Description of the event type.", + "type": "string" + }, + "schemaUrl": { + "description": "Url of the schema for this event type.", "type": "string" + }, + "isInDefaultSet": { + "description": "IsInDefaultSet flag of the event type.", + "type": "boolean" } } }, - "HybridConnectionEventSubscriptionDestination": { - "description": "Information about the HybridConnection destination for an event subscription.", + "EventType": { + "description": "Event Type for a subject under a topic", "type": "object", "allOf": [ { - "$ref": "#/definitions/EventSubscriptionDestination" + "$ref": "#/definitions/Resource" } ], "properties": { "properties": { - "$ref": "#/definitions/HybridConnectionEventSubscriptionDestinationProperties", - "description": "Hybrid connection Properties of the event subscription destination.", + "$ref": "#/definitions/EventTypeProperties", + "description": "Properties of the event type.", "x-ms-client-flatten": true } - }, - "x-ms-discriminator-value": "HybridConnection" + } }, - "ServiceBusQueueEventSubscriptionDestinationProperties": { - "description": "The properties that represent the Service Bus destination of an event subscription.", + "PartnerRegistrationEventTypesListResult": { + "description": "Result of the List Partner Registration Event Types operation.", "type": "object", "properties": { - "resourceId": { - "description": "The Azure Resource Id that represents the endpoint of the Service Bus destination of an event subscription.", + "value": { + "description": "A collection of partner registration event types.", + "type": "array", + "items": { + "$ref": "#/definitions/EventType" + } + }, + "nextLink": { + "description": "A link for the next page of partner registration event types.", "type": "string" } } }, - "ServiceBusQueueEventSubscriptionDestination": { - "description": "Information about the service bus destination for an event subscription.", + "PartnerTopicUpdateParameters": { + "description": "Properties of the Partner Topic update.", "type": "object", - "allOf": [ - { - "$ref": "#/definitions/EventSubscriptionDestination" - } - ], "properties": { - "properties": { - "$ref": "#/definitions/ServiceBusQueueEventSubscriptionDestinationProperties", - "description": "Service Bus Properties of the event subscription destination.", - "x-ms-client-flatten": true + "tags": { + "description": "Tags of the partner topic.", + "type": "object", + "additionalProperties": { + "type": "string" + } } - }, - "x-ms-discriminator-value": "ServiceBusQueue" + } }, - "ServiceBusTopicEventSubscriptionDestinationProperties": { - "description": "The properties that represent the Service Bus Topic destination of an event subscription.", + "PartnerTopicProperties": { + "description": "Properties of the Partner Topic.", "type": "object", "properties": { - "resourceId": { - "description": "The Azure Resource Id that represents the endpoint of the Service Bus Topic destination of an event subscription.", + "source": { + "description": "Source associated with this partner topic. This represents a unique partner resource.", "type": "string" + }, + "provisioningState": { + "description": "Provisioning state of the partner topic.", + "enum": [ + "Creating", + "Updating", + "Deleting", + "Succeeded", + "Canceled", + "Failed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PartnerTopicProvisioningState", + "modelAsString": true + } + }, + "activationState": { + "description": "Activation state of the partner topic.", + "enum": [ + "NeverActivated", + "Activated", + "Deactivated" + ], + "type": "string", + "x-ms-enum": { + "name": "PartnerTopicActivationState", + "modelAsString": true + } } } }, - "ServiceBusTopicEventSubscriptionDestination": { - "description": "Information about the service bus topic destination for an event subscription.", + "PartnerTopic": { + "description": "EventGrid Partner Topic.", "type": "object", "allOf": [ { - "$ref": "#/definitions/EventSubscriptionDestination" + "$ref": "#/definitions/TrackedResource" } ], "properties": { "properties": { - "$ref": "#/definitions/ServiceBusTopicEventSubscriptionDestinationProperties", - "description": "Service Bus Topic Properties of the event subscription destination.", + "$ref": "#/definitions/PartnerTopicProperties", + "description": "Properties of the partner topic.", "x-ms-client-flatten": true } - }, - "x-ms-discriminator-value": "ServiceBusTopic" + } }, - "AzureFunctionEventSubscriptionDestinationProperties": { - "description": "The properties that represent the Azure Function destination of an event subscription.", + "PartnerTopicsListResult": { + "description": "Result of the List Partner Topics operation.", "type": "object", "properties": { - "resourceId": { - "description": "The Azure Resource Id that represents the endpoint of the Azure Function destination of an event subscription.", - "type": "string" - }, - "maxEventsPerBatch": { - "format": "int32", - "description": "Maximum number of events per batch.", - "type": "integer" + "value": { + "description": "A collection of partner topics.", + "type": "array", + "items": { + "$ref": "#/definitions/PartnerTopic" + } }, - "preferredBatchSizeInKilobytes": { - "format": "int32", - "description": "Preferred batch size in Kilobytes.", - "type": "integer" + "nextLink": { + "description": "A link for the next page of partner topics.", + "type": "string" } } }, - "AzureFunctionEventSubscriptionDestination": { - "description": "Information about the azure function destination for an event subscription.", + "PartnerTopicTypesListResult": { + "description": "Result of the List Partner Topic Types operation.", "type": "object", - "allOf": [ - { - "$ref": "#/definitions/EventSubscriptionDestination" - } - ], "properties": { - "properties": { - "$ref": "#/definitions/AzureFunctionEventSubscriptionDestinationProperties", - "description": "Azure Function Properties of the event subscription destination.", - "x-ms-client-flatten": true + "value": { + "description": "A collection of partner topic types.", + "type": "array", + "items": { + "$ref": "#/definitions/PartnerTopicType" + } } - }, - "x-ms-discriminator-value": "AzureFunction" + } }, - "EventSubscriptionDestination": { - "description": "Information about the destination for an event subscription", - "required": [ - "endpointType" - ], + "PartnerTopicTypeProperties": { + "description": "Properties of a partner topic type.", "type": "object", "properties": { - "endpointType": { - "description": "Type of the endpoint for the event subscription destination", + "partnerName": { + "description": "Official name of the partner.", + "type": "string" + }, + "topicTypeName": { + "description": "Name of the partner topic type. This name should be unique among all partner topic types names.", + "type": "string" + }, + "displayName": { + "description": "Display Name for the partner topic type.", + "type": "string" + }, + "description": { + "description": "Description of the partner topic type.", + "type": "string" + }, + "setupUri": { + "description": "URI of the partner website that can be used by Azure customers to setup Event Grid\r\nintegration on an event source.", + "type": "string" + }, + "authorizationState": { + "description": "Status of whether the customer has authorized a partner to create partner topics\r\nin the customer's subscription.", "enum": [ - "WebHook", - "EventHub", - "StorageQueue", - "HybridConnection", - "ServiceBusQueue", - "ServiceBusTopic", - "AzureFunction" + "NotApplicable", + "NotAuthorized", + "Authorized" ], "type": "string", "x-ms-enum": { - "name": "EndpointType", + "name": "PartnerTopicTypeAuthorizationState", "modelAsString": true } } - }, - "discriminator": "endpointType" + } }, - "EventSubscription": { - "description": "Event Subscription", + "PartnerTopicType": { + "description": "Properties of a partner topic type.", "type": "object", "allOf": [ { @@ -3342,140 +7336,183 @@ ], "properties": { "properties": { - "$ref": "#/definitions/EventSubscriptionProperties", - "description": "Properties of the event subscription.", + "$ref": "#/definitions/PartnerTopicTypeProperties", + "description": "Properties of the partner topic type.", "x-ms-client-flatten": true } } }, - "EventSubscriptionUpdateParameters": { - "description": "Properties of the Event Subscription update.", + "EventTypesListResult": { + "description": "Result of the List Event Types operation", "type": "object", "properties": { - "destination": { - "$ref": "#/definitions/EventSubscriptionDestination", - "description": "Information about the destination where events have to be delivered for the event subscription." - }, - "filter": { - "$ref": "#/definitions/EventSubscriptionFilter", - "description": "Information about the filter for the event subscription." - }, - "labels": { - "description": "List of user defined labels.", + "value": { + "description": "A collection of event types", "type": "array", "items": { - "type": "string" + "$ref": "#/definitions/EventType" } - }, - "expirationTimeUtc": { - "format": "date-time", - "description": "Information about the expiration time for the event subscription.", - "type": "string" - }, - "eventDeliverySchema": { - "description": "The event delivery schema for the event subscription.", - "enum": [ - "EventGridSchema", - "CustomInputSchema", - "CloudEventSchemaV1_0" - ], - "type": "string", - "x-ms-enum": { - "name": "EventDeliverySchema", - "modelAsString": true + } + } + }, + "PrivateEndpointConnectionListResult": { + "description": "Result of the list of all private endpoint connections operation.", + "type": "object", + "properties": { + "value": { + "description": "A collection of private endpoint connection resources.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" } }, - "retryPolicy": { - "$ref": "#/definitions/RetryPolicy", - "description": "The retry policy for events. This can be used to configure maximum number of delivery attempts and time to live for events." - }, - "deadLetterDestination": { - "$ref": "#/definitions/DeadLetterDestination", - "description": "The DeadLetter destination of the event subscription." + "nextLink": { + "description": "A link for the next page of private endpoint connection resources.", + "type": "string" } } }, - "EventSubscriptionFullUrl": { - "description": "Full endpoint url of an event subscription", + "PrivateLinkResource": { + "description": "Information of the private link resource.", "type": "object", "properties": { - "endpointUrl": { - "description": "The URL that represents the endpoint of the destination of an event subscription.", + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Properties of the private link resource.", + "x-ms-client-flatten": true + }, + "id": { + "description": "Fully qualified identifier of the resource.", + "type": "string" + }, + "name": { + "description": "Name of the resource", + "type": "string" + }, + "type": { + "description": "Type of the resource", "type": "string" } } }, - "EventSubscriptionsListResult": { - "description": "Result of the List EventSubscriptions operation", + "PrivateLinkResourceProperties": { "type": "object", "properties": { - "value": { - "description": "A collection of EventSubscriptions", + "groupId": { + "type": "string" + }, + "displayName": { + "type": "string" + }, + "requiredMembers": { "type": "array", "items": { - "$ref": "#/definitions/EventSubscription" + "type": "string" } }, - "nextLink": { - "description": "A link for the next page of event subscriptions", - "type": "string" + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + } } } }, - "OperationsListResult": { - "description": "Result of the List Operations operation", + "PrivateLinkResourcesListResult": { + "description": "Result of the List private link resources operation.", "type": "object", "properties": { "value": { - "description": "A collection of operations", + "description": "A collection of private link resources", "type": "array", "items": { - "$ref": "#/definitions/Operation" + "$ref": "#/definitions/PrivateLinkResource" } + }, + "nextLink": { + "description": "A link for the next page of private link resources.", + "type": "string" } } }, - "Operation": { - "description": "Represents an operation returned by the GetOperations request", + "SystemTopicProperties": { + "description": "Properties of the System Topic.", "type": "object", "properties": { - "name": { - "description": "Name of the operation", - "type": "string" + "provisioningState": { + "description": "Provisioning state of the system topic.", + "enum": [ + "Creating", + "Updating", + "Deleting", + "Succeeded", + "Canceled", + "Failed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ResourceProvisioningState", + "modelAsString": true + } }, - "display": { - "$ref": "#/definitions/OperationInfo", - "description": "Display name of the operation" + "source": { + "description": "Source for the system topic.", + "type": "string" }, - "origin": { - "description": "Origin of the operation", + "topicType": { + "description": "TopicType for the system topic.", "type": "string" }, + "metricResourceId": { + "description": "Metric resource id for the system topic.", + "type": "string", + "readOnly": true + } + } + }, + "SystemTopic": { + "description": "EventGrid System Topic.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "properties": { "properties": { - "description": "Properties of the operation", - "type": "object", + "$ref": "#/definitions/SystemTopicProperties", + "description": "Properties of the system topic.", "x-ms-client-flatten": true } } }, - "OperationInfo": { - "description": "Information about an operation", + "SystemTopicUpdateParameters": { + "description": "Properties of the System Topic update.", "type": "object", "properties": { - "provider": { - "description": "Name of the provider", - "type": "string" - }, - "resource": { - "description": "Name of the resource type", - "type": "string" - }, - "operation": { - "description": "Name of the operation", - "type": "string" + "tags": { + "description": "Tags of the system topic.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "SystemTopicsListResult": { + "description": "Result of the List System topics operation.", + "type": "object", + "properties": { + "value": { + "description": "A collection of system Topics.", + "type": "array", + "items": { + "$ref": "#/definitions/SystemTopic" + } }, - "description": { - "description": "Description of the operation", + "nextLink": { + "description": "A link for the next page of topics.", "type": "string" } } @@ -3484,6 +7521,12 @@ "description": "Properties of the Topic", "type": "object", "properties": { + "privateEndpointConnections": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, "provisioningState": { "description": "Provisioning state of the topic.", "enum": [ @@ -3526,14 +7569,23 @@ }, "metricResourceId": { "description": "Metric resource id for the topic.", - "type": "string" + "type": "string", + "readOnly": true }, - "allowTrafficFromAllIPs": { - "description": "This determines if IP filtering rules ought to be evaluated or not. By default it will not evaluate and will allow traffic from all IPs.", - "type": "boolean" + "publicNetworkAccess": { + "description": "This determines if traffic is allowed over public network. By default it is enabled. \r\nYou can further restrict to specific IPs by configuring ", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "PublicNetworkAccess", + "modelAsString": true + } }, "inboundIpRules": { - "description": "This determines the IP filtering rules that ought to be applied when events are received on this topic.", + "description": "This can be used to restrict traffic from specific IPs instead of all IPs. Note: These are considered only if PublicNetworkAccess is enabled.", "type": "array", "items": { "$ref": "#/definitions/InboundIpRule" @@ -3552,8 +7604,16 @@ "properties": { "properties": { "$ref": "#/definitions/TopicProperties", - "description": "Properties of the topic", + "description": "Properties of the topic.", "x-ms-client-flatten": true + }, + "sku": { + "$ref": "#/definitions/ResourceSku", + "description": "The Sku pricing tier for the topic." + }, + "identity": { + "$ref": "#/definitions/IdentityInfo", + "description": "Identity information for the resource." } } }, @@ -3567,6 +7627,44 @@ "additionalProperties": { "type": "string" } + }, + "identity": { + "$ref": "#/definitions/IdentityInfo", + "description": "Resource identity information." + }, + "properties": { + "$ref": "#/definitions/TopicUpdateParameterProperties", + "description": "Properties of the resource.", + "x-ms-client-flatten": true + }, + "sku": { + "$ref": "#/definitions/ResourceSku", + "description": "The Sku pricing tier for the topic." + } + } + }, + "TopicUpdateParameterProperties": { + "description": "Information of topic update parameter properties.", + "type": "object", + "properties": { + "publicNetworkAccess": { + "description": "This determines if traffic is allowed over public network. By default it is enabled. \r\nYou can further restrict to specific IPs by configuring ", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "PublicNetworkAccess", + "modelAsString": true + } + }, + "inboundIpRules": { + "description": "This can be used to restrict traffic from specific IPs instead of all IPs. Note: These are considered only if PublicNetworkAccess is enabled.", + "type": "array", + "items": { + "$ref": "#/definitions/InboundIpRule" + } } } }, @@ -3614,43 +7712,22 @@ } } }, - "EventTypesListResult": { - "description": "Result of the List Event Types operation", - "type": "object", - "properties": { - "value": { - "description": "A collection of event types", - "type": "array", - "items": { - "$ref": "#/definitions/EventType" - } - } - } - }, - "EventTypeProperties": { - "description": "Properties of the event type", + "ExtensionTopicProperties": { + "description": "Properties of the Extension Topic", "type": "object", "properties": { - "displayName": { - "description": "Display name of the event type.", - "type": "string" - }, "description": { - "description": "Description of the event type.", + "description": "Description of the extension topic.", "type": "string" }, - "schemaUrl": { - "description": "Url of the schema for this event type.", + "systemTopic": { + "description": "System topic resource id which is mapped to the source.", "type": "string" - }, - "isInDefaultSet": { - "description": "IsInDefaultSet flag of the event type.", - "type": "boolean" } } }, - "EventType": { - "description": "Event Type for a subject under a topic", + "ExtensionTopic": { + "description": "Event grid Extension Topic. This is used for getting Event Grid related metrics for Azure resources.", "type": "object", "allOf": [ { @@ -3659,8 +7736,8 @@ ], "properties": { "properties": { - "$ref": "#/definitions/EventTypeProperties", - "description": "Properties of the event type.", + "$ref": "#/definitions/ExtensionTopicProperties", + "description": "Properties of the extension topic", "x-ms-client-flatten": true } } diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/Domains_CreateOrUpdate.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/Domains_CreateOrUpdate.json index 6b5e3fb62810..75423f7c4dd3 100644 --- a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/Domains_CreateOrUpdate.json +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/Domains_CreateOrUpdate.json @@ -11,7 +11,7 @@ "tag2": "value2" }, "properties": { - "allowTrafficFromAllIPs": false, + "publicNetworkAccess": "Enabled", "inboundIpRules": [ { "ipMask": "12.18.30.15", @@ -31,7 +31,7 @@ "properties": { "endpoint": "https://exampledomain1.westus2-1.eventgrid.azure.net/api/events", "provisioningState": "Succeeded", - "allowTrafficFromAllIPs": false, + "publicNetworkAccess": "Enabled", "inboundIpRules": [ { "ipMask": "12.18.30.15", diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/Domains_Update.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/Domains_Update.json index 2b946735f493..3e59834b75b9 100644 --- a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/Domains_Update.json +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/Domains_Update.json @@ -8,15 +8,40 @@ "tags": { "tag1": "value1", "tag2": "value2" + }, + "properties": { + "publicNetworkAccess": "Enabled", + "inboundIpRules": [ + { + "ipMask": "12.18.30.15", + "action": "Allow" + }, + { + "ipMask": "12.18.176.1", + "action": "Allow" + } + ] } } }, "responses": { + "200": {}, "201": { "body": { "properties": { "endpoint": "https://exampledomain1.westus2-1.eventgrid.azure.net/api/events", - "provisioningState": "Succeeded" + "provisioningState": "Succeeded", + "publicNetworkAccess": "Enabled", + "inboundIpRules": [ + { + "ipMask": "12.18.30.15", + "action": "Allow" + }, + { + "ipMask": "12.18.176.1", + "action": "Allow" + } + ] }, "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/domains/exampledomain1", "location": "westus2", diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/EventChannels_CreateOrUpdate.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/EventChannels_CreateOrUpdate.json new file mode 100644 index 000000000000..9991248c29a3 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/EventChannels_CreateOrUpdate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "partnerNamespaceName": "examplePartnerNamespaceName1", + "eventChannelName": "exampleEventChannelName1", + "api-version": "2020-04-01-preview", + "eventChannelInfo": { + "properties": { + "source": { + "source": "ContosoCorp.Accounts.User1" + }, + "destination": { + "azureSubscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroup": "examplerg2", + "partnerTopicName": "examplePartnerTopic1" + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "source": { + "source": "ContosoCorp.Accounts.User1" + }, + "destination": { + "azureSubscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroup": "examplerg2", + "partnerTopicName": "examplePartnerTopic1" + }, + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/partnerNamespaces/partnerNamespace123/eventChannels/exampleEventChannelName1", + "name": "exampleEventChannelName1", + "type": "Microsoft.EventGrid/partnerNamespaces/eventChannels" + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/EventChannels_Delete.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/EventChannels_Delete.json new file mode 100644 index 000000000000..57d161ae1989 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/EventChannels_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "partnerNamespaceName": "examplePartnerNamespaceName1", + "eventChannelName": "exampleEventChannelName", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/EventChannels_Get.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/EventChannels_Get.json new file mode 100644 index 000000000000..d1b210f56039 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/EventChannels_Get.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "partnerNamespaceName": "examplePartnerNamespaceName1", + "eventChannelName": "exampleEventChannelName1", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "source": { + "source": "ContosoCorp.Accounts.User1" + }, + "destination": { + "azureSubscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroup": "examplerg2", + "partnerTopicName": "examplePartnerTopic1" + }, + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/partnerNamespaces/partnerNamespace123/eventChannels/exampleEventChannelName1", + "name": "exampleEventChannelName1", + "type": "Microsoft.EventGrid/partnerNamespaces/eventChannels" + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/EventChannels_ListByPartnerNamespace.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/EventChannels_ListByPartnerNamespace.json new file mode 100644 index 000000000000..b0052cd7f4c3 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/EventChannels_ListByPartnerNamespace.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "partnerNamespaceName": "partnerNamespace123", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "source": { + "source": "ContosoCorp.Accounts.User1" + }, + "destination": { + "azureSubscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroup": "amh", + "partnerTopicName": "examplePartnerTopic1" + }, + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/amh/providers/Microsoft.EventGrid/partnerNamespaces/partnerNamespace123/eventChannels/eventChannel1234", + "name": "eventChannel1234", + "type": "Microsoft.EventGrid/partnerNamespaces/eventChannels" + } + ] + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/ExtensionTopics_Get.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/ExtensionTopics_Get.json new file mode 100644 index 000000000000..8cb9b40ae017 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/ExtensionTopics_Get.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "scope": "subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/microsoft.storage/storageaccounts/exampleResourceName/providers/Microsoft.eventgrid/extensionTopics/default", + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerNamespace": "microsoft.storage", + "resourceTypeName": "storageaccounts", + "resourceName": "exampleResourceName", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "description": "Extension topic for /subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/microsoft.storage/storageaccounts/exampleResourceName/providers/Microsoft.eventgrid/extensionTopics/default that can be used to obtain metrics", + "systemTopic": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/systemTopics/exampleResourceName-2a41650f-00dd-4790-b3ab-dabd12d227cb" + }, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/microsoft.storage/storageaccounts/exampleResourceName/providers/Microsoft.eventgrid/extensionTopics/default", + "name": "default", + "type": "providers/Microsoft.EventGrid/extensionTopics" + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerNamespaces_CreateOrUpdate.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerNamespaces_CreateOrUpdate.json new file mode 100644 index 000000000000..4ea9e84cf950 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerNamespaces_CreateOrUpdate.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "partnerNamespaceName": "examplePartnerNamespaceName1", + "api-version": "2020-04-01-preview", + "partnerNamespaceInfo": { + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "partnerRegistrationFullyQualifiedId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/partnerRegistrations/ContosoCorpAccount1" + } + } + }, + "responses": { + "201": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "partnerRegistrationFullyQualifiedId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/partnerRegistrations/ContosoCorpAccount1", + "endpoint": "https://examplePartnerNamespaceName1.centraluseuap-1.eventgrid.azure.net/api/events" + }, + "location": "westus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/partnerNamespaces/examplePartnerNamespaceName1", + "name": "examplePartnerNamespaceName1", + "type": "Microsoft.EventGrid/partnerNamespaces" + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerNamespaces_Delete.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerNamespaces_Delete.json new file mode 100644 index 000000000000..0705701a6575 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerNamespaces_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "partnerNamespaceName": "examplePartnerNamespaceName1", + "api-version": "2020-04-01-preview" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerNamespaces_Get.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerNamespaces_Get.json new file mode 100644 index 000000000000..d12b18afc339 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerNamespaces_Get.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "partnerNamespaceName": "examplePartnerNamespaceName1", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "partnerRegistrationFullyQualifiedId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/partnerRegistrations/ContosoCorpAccount1", + "endpoint": "https://examplePartnerNamespaceName1.centraluseuap-1.eventgrid.azure.net/api/events" + }, + "location": "Central US EUAP", + "tags": { + "key1": "value1", + "key2": "value2", + "key3": "value3" + }, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/partnerNamespaces/examplePartnerNamespaceName1", + "name": "examplePartnerNamespaceName1", + "type": "Microsoft.EventGrid/partnerNamespaces" + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerNamespaces_ListByResourceGroup.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerNamespaces_ListByResourceGroup.json new file mode 100644 index 000000000000..bcbb5bfcd74a --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerNamespaces_ListByResourceGroup.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "provisioningState": "Succeeded", + "partnerRegistrationFullyQualifiedId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/partnerRegistrations/ContosoCorpAccount1", + "endpoint": "https://partnernamespace123.centraluseuap-1.eventgrid.azure.net/api/events" + }, + "location": "Central US EUAP", + "tags": { + "key1": "value1", + "key2": "value2", + "key3": "value3" + }, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/partnerNamespaces/partnerNamespace123", + "name": "partnerNamespace123", + "type": "Microsoft.EventGrid/partnerNamespaces" + } + ] + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerNamespaces_ListBySubscription.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerNamespaces_ListBySubscription.json new file mode 100644 index 000000000000..b0700bf832ce --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerNamespaces_ListBySubscription.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "provisioningState": "Succeeded", + "partnerRegistrationFullyQualifiedId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/amh/providers/Microsoft.EventGrid/partnerRegistrations/ContosoCorpAccount1", + "endpoint": "https://partnernamespace123.centraluseuap-1.eventgrid.azure.net/api/events" + }, + "location": "Central US EUAP", + "tags": { + "key1": "value1", + "key2": "value2", + "key3": "value3" + }, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/amh/providers/Microsoft.EventGrid/partnerNamespaces/partnerNamespace123", + "name": "partnerNamespace123", + "type": "Microsoft.EventGrid/partnerNamespaces" + } + ] + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerNamespaces_ListSharedAccessKeys.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerNamespaces_ListSharedAccessKeys.json new file mode 100644 index 000000000000..e389e0fdf373 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerNamespaces_ListSharedAccessKeys.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "partnerNamespaceName": "examplePartnerNamespaceName1", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "key1": "Rqfq5wWxtQnIQJyswP0Uh/hqQfDDMUOYyQSYEpx5e5g=", + "key2": "sesymbkIXMtZVqXEFHarJmdGmZjjnY+BZC8yRD/FeuA=" + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerNamespaces_RegenerateKey.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerNamespaces_RegenerateKey.json new file mode 100644 index 000000000000..679ee436151e --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerNamespaces_RegenerateKey.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "partnerNamespaceName": "examplePartnerNamespaceName1", + "api-version": "2020-04-01-preview", + "regenerateKeyRequest": { + "keyName": "key1" + } + }, + "responses": { + "200": { + "body": { + "key1": "Rqfq5wWxtQnIQJyswP0Uh/hqQfDDMUOYyQSYEpx5e5g=", + "key2": "sesymbkIXMtZVqXEFHarJmdGmZjjnY+BZC8yRD/FeuA=" + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerNamespaces_Update.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerNamespaces_Update.json new file mode 100644 index 000000000000..917f7bbdbce2 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerNamespaces_Update.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "partnerNamespaceName": "examplePartnerNamespaceName1", + "api-version": "2020-04-01-preview", + "partnerNamespaceUpdateParameters": { + "tags": { + "tag1": "value1" + } + } + }, + "responses": { + "200": {}, + "201": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "partnerRegistrationFullyQualifiedId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/partnerRegistrations/ContosoCorpAccount1", + "endpoint": "https://examplePartnerNamespaceName1.centraluseuap-1.eventgrid.azure.net/api/events" + }, + "location": "Central US EUAP", + "tags": { + "key1": "value1" + }, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/partnerNamespaces/examplePartnerNamespaceName1", + "name": "examplePartnerNamespaceName1", + "type": "Microsoft.EventGrid/partnerNamespaces" + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerRegistrations_CreateOrUpdate.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerRegistrations_CreateOrUpdate.json new file mode 100644 index 000000000000..fc0a725e3690 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerRegistrations_CreateOrUpdate.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "partnerRegistrationName": "examplePartnerRegistrationName1", + "api-version": "2020-04-01-preview", + "partnerRegistrationInfo": { + "properties": { + "partnerName": "ContosoCorp", + "partnerResourceTypeName": "ContosoCorp.Accounts", + "partnerResourceTypeDisplayName": "ContocoCorp Accounts DisplayName Text", + "partnerResourceTypeDescription": "ContocoCorp Accounts Description Text", + "setupUri": "https://www.example.com/setup.html", + "logoUri": "https://www.example.com/logo.png", + "authorizedAzureSubscriptionIds": [ + "d48566a8-2428-4a6c-8347-9675d09fb851" + ] + }, + "location": "global", + "tags": { + "key1": "value1", + "key2": "Value2", + "key3": "Value3" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "partnerName": "ContosoCorp", + "partnerResourceTypeName": "ContosoCorp.Accounts", + "partnerResourceTypeDisplayName": "ContocoCorp Accounts DisplayName Text", + "partnerResourceTypeDescription": "ContocoCorp Accounts Description Text", + "setupUri": "https://www.example.com/setup.html", + "logoUri": "https://www.example.com/logo.png", + "visibilityState": "Hidden", + "authorizedAzureSubscriptionIds": [ + "d48566a8-2428-4a6c-8347-9675d09fb851" + ] + }, + "location": "global", + "tags": { + "key1": "value1", + "key2": "Value2", + "key3": "Value3" + }, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/partnerRegistrations/examplePartnerRegistrationName1", + "name": "examplePartnerRegistrationName1", + "type": "Microsoft.EventGrid/partnerRegistrations" + } + }, + "202": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "partnerName": "ContosoCorp", + "partnerResourceTypeName": "ContosoCorp.Accounts", + "partnerResourceTypeDisplayName": "ContocoCorp Accounts DisplayName Text", + "partnerResourceTypeDescription": "ContocoCorp Accounts Description Text", + "setupUri": "https://www.example.com/setup.html", + "logoUri": "https://www.example.com/logo.png", + "visibilityState": "Hidden", + "authorizedAzureSubscriptionIds": [ + "d48566a8-2428-4a6c-8347-9675d09fb851" + ] + }, + "location": "global", + "tags": { + "key1": "value1", + "key2": "Value2", + "key3": "Value3" + }, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/partnerRegistrations/examplePartnerRegistrationName1", + "name": "examplePartnerRegistrationName1", + "type": "Microsoft.EventGrid/partnerRegistrations" + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerRegistrations_Delete.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerRegistrations_Delete.json new file mode 100644 index 000000000000..b85f479cb030 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerRegistrations_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "partnerRegistrationName": "examplePartnerRegistrationName1", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerRegistrations_Get.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerRegistrations_Get.json new file mode 100644 index 000000000000..8a1f8b97310b --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerRegistrations_Get.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "partnerRegistrationName": "examplePartnerRegistrationName1", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "partnerName": "ContosoCorp", + "partnerResourceTypeName": "ContosoCorp.Accounts", + "partnerResourceTypeDisplayName": "ContocoCorp Accounts DisplayName Text", + "partnerResourceTypeDescription": "ContocoCorp Accounts Description Text", + "setupUri": "https://www.example.com/setup.html", + "logoUri": "https://www.example.com/logo.png", + "visibilityState": "Hidden", + "authorizedAzureSubscriptionIds": [ + "348566c8-1238-3a6c-83bb-6575d12fb00f" + ] + }, + "location": "global", + "tags": { + "key1": "value1", + "key2": "Value2", + "key3": "Value3" + }, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/partnerRegistrations/examplePartnerRegistrationName1", + "name": "examplePartnerRegistrationName1", + "type": "Microsoft.EventGrid/partnerRegistrations" + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerRegistrations_List.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerRegistrations_List.json new file mode 100644 index 000000000000..78020739efbb --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerRegistrations_List.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "provisioningState": "Succeeded", + "partnerName": "ContosoCorp", + "partnerResourceTypeName": "ContosoCorp.Accounts", + "partnerResourceTypeDisplayName": "ContocoCorp Accounts DisplayName Text", + "partnerResourceTypeDescription": "ContocoCorp Accounts Description Text", + "setupUri": "https://www.example.com/setup.html", + "logoUri": "https://www.example.com/logo.png", + "visibilityState": "Hidden", + "authorizedAzureSubscriptionIds": [ + "d48566a8-2428-4a6c-8347-9675d09fb851" + ] + }, + "location": "global", + "tags": { + "key1": "value1", + "key2": "Value2", + "key3": "Value3" + }, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/amh/providers/Microsoft.EventGrid/partnerRegistrations/ContosoCorpAccount1", + "name": "ContosoCorpAccount1", + "type": "Microsoft.EventGrid/partnerRegistrations" + } + ] + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerRegistrations_ListByResourceGroup.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerRegistrations_ListByResourceGroup.json new file mode 100644 index 000000000000..0b1136207811 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerRegistrations_ListByResourceGroup.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "provisioningState": "Succeeded", + "partnerName": "ContosoCorp", + "partnerResourceTypeName": "ContosoCorp.Accounts", + "partnerResourceTypeDisplayName": "ContocoCorp Accounts DisplayName Text", + "partnerResourceTypeDescription": "ContocoCorp Accounts Description Text", + "setupUri": "https://www.example.com/setup.html", + "logoUri": "https://www.example.com/logo.png", + "visibilityState": "Hidden", + "authorizedAzureSubscriptionIds": [ + "d48566a8-2428-4a6c-8347-9675d09fb851" + ] + }, + "location": "global", + "tags": { + "key1": "value1", + "key2": "Value2", + "key3": "Value3" + }, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/amh/providers/Microsoft.EventGrid/partnerRegistrations/ContosoCorpAccount1", + "name": "ContosoCorpAccount1", + "type": "Microsoft.EventGrid/partnerRegistrations" + } + ] + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerRegistrations_ListBySubscription.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerRegistrations_ListBySubscription.json new file mode 100644 index 000000000000..cde2e9775a5d --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerRegistrations_ListBySubscription.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "provisioningState": "Succeeded", + "partnerName": "ContosoCorp", + "partnerResourceTypeName": "ContosoCorp.Accounts", + "partnerResourceTypeDisplayName": "ContocoCorp Accounts DisplayName Text", + "partnerResourceTypeDescription": "ContocoCorp Accounts Description Text", + "setupUri": "https://www.example.com/setup.html", + "logoUri": "https://www.example.com/logo.png", + "visibilityState": "Hidden", + "authorizedAzureSubscriptionIds": [ + "d48566a8-2428-4a6c-8347-9675d09fb851" + ] + }, + "location": "global", + "tags": { + "key1": "value1", + "key2": "Value2", + "key3": "Value3" + }, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/amh/providers/Microsoft.EventGrid/partnerRegistrations/ContosoCorpAccount1", + "name": "ContosoCorpAccount1", + "type": "Microsoft.EventGrid/partnerRegistrations" + } + ] + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerRegistrations_Update.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerRegistrations_Update.json new file mode 100644 index 000000000000..fcb7c4f60d93 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerRegistrations_Update.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "partnerRegistrationName": "examplePartnerRegistrationName1", + "api-version": "2020-04-01-preview", + "partnerRegistrationUpdateParameters": { + "setupUri": "https://www.example.com/newsetup.html", + "logoUri": "https://www.example.com/newlogo.png" + } + }, + "responses": { + "200": {}, + "201": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "partnerName": "ContosoCorp", + "partnerResourceTypeName": "ContosoCorp.Accounts", + "partnerResourceTypeDisplayName": "ContocoCorp Accounts DisplayName Text", + "partnerResourceTypeDescription": "ContocoCorp Accounts Description Text", + "setupUri": "https://www.example.com/newsetup.html", + "logoUri": "https://www.example.com/newlogo.png", + "visibilityState": "Hidden", + "authorizedAzureSubscriptionIds": [ + "d48566a8-2428-4a6c-8347-9675d09fb851" + ] + }, + "location": "global", + "tags": { + "key1": "value1" + }, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/partnerRegistrations/examplePartnerRegistrationName1", + "name": "examplePartnerRegistrationName1", + "type": "Microsoft.EventGrid/partnerRegistrations" + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopicEventSubscriptions_CreateOrUpdate.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopicEventSubscriptions_CreateOrUpdate.json new file mode 100644 index 000000000000..b20a6b2c86fa --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopicEventSubscriptions_CreateOrUpdate.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "partnerTopicName": "examplePartnerTopic1", + "eventSubscriptionName": "exampleEventSubscriptionName1", + "api-version": "2020-04-01-preview", + "eventSubscriptionInfo": { + "properties": { + "destination": { + "endpointType": "WebHook", + "properties": { + "endpointUrl": "https://requestb.in/15ksip71" + } + }, + "filter": { + "isSubjectCaseSensitive": false, + "subjectBeginsWith": "ExamplePrefix", + "subjectEndsWith": "ExampleSuffix" + } + } + } + }, + "responses": { + "201": { + "body": { + "properties": { + "destination": { + "properties": { + "endpointBaseUrl": "https://requestb.in/15ksip71" + }, + "endpointType": "WebHook" + }, + "filter": { + "isSubjectCaseSensitive": false, + "subjectBeginsWith": "ExamplePrefix", + "subjectEndsWith": "ExampleSuffix" + }, + "labels": null, + "eventDeliverySchema": "EventGridSchema", + "retryPolicy": { + "maxDeliveryAttempts": 30, + "eventTimeToLiveInMinutes": 1440 + }, + "provisioningState": "Succeeded", + "topic": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/partnerTopics/examplePartnerTopic1" + }, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/partnerTopics/examplePartnerTopic1/eventSubscriptions/exampleEventSubscriptionName1", + "name": "exampleEventSubscriptionName1", + "type": "Microsoft.EventGrid/partnerTopics/eventSubscriptions" + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopicEventSubscriptions_Delete.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopicEventSubscriptions_Delete.json new file mode 100644 index 000000000000..542fabb75ef6 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopicEventSubscriptions_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "partnerTopicName": "examplePartnerTopic1", + "eventSubscriptionName": "examplesubscription1", + "api-version": "2020-04-01-preview" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopicEventSubscriptions_Get.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopicEventSubscriptions_Get.json new file mode 100644 index 000000000000..977a8ed7ad5e --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopicEventSubscriptions_Get.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "partnerTopicName": "examplePartnerTopic1", + "eventSubscriptionName": "examplesubscription1", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "topic": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/partnerTopics/examplePartnerTopic1", + "provisioningState": "Succeeded", + "destination": { + "properties": { + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.Storage/storageAccounts/testtrackedsource", + "queueName": "que" + }, + "endpointType": "StorageQueue" + }, + "filter": { + "isSubjectCaseSensitive": false, + "subjectBeginsWith": "ExamplePrefix", + "subjectEndsWith": "ExampleSuffix", + "includedEventTypes": [ + "Microsoft.Storage.BlobCreated", + "Microsoft.Storage.BlobDeleted" + ] + }, + "labels": [ + "label1", + "label2" + ], + "eventDeliverySchema": "EventGridSchema", + "retryPolicy": { + "maxDeliveryAttempts": 30, + "eventTimeToLiveInMinutes": 1440 + } + }, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/partnerTopics/examplePartnerTopic1/eventSubscriptions/examplesubscription1", + "name": "examplesubscription1", + "type": "Microsoft.EventGrid/partnerTopics/eventSubscriptions" + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopicEventSubscriptions_GetFullUrl.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopicEventSubscriptions_GetFullUrl.json new file mode 100644 index 000000000000..27986bbcf738 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopicEventSubscriptions_GetFullUrl.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "partnerTopicName": "examplePartnerTopic1", + "eventSubscriptionName": "examplesubscription1", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "endpointUrl": "https://requestb.in/15ksip71" + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopicEventSubscriptions_ListByPartnerTopic.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopicEventSubscriptions_ListByPartnerTopic.json new file mode 100644 index 000000000000..0a2753cb6ed9 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopicEventSubscriptions_ListByPartnerTopic.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "partnerTopicName": "examplePartnerTopic1", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "topic": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/partnerTopics/examplePartnerTopic1", + "provisioningState": "Succeeded", + "destination": { + "properties": { + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.Storage/storageAccounts/testtrackedsource", + "queueName": "que" + }, + "endpointType": "StorageQueue" + }, + "filter": { + "subjectBeginsWith": "", + "subjectEndsWith": "" + }, + "labels": [], + "eventDeliverySchema": "EventGridSchema", + "retryPolicy": { + "maxDeliveryAttempts": 10, + "eventTimeToLiveInMinutes": 1440 + } + }, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/partnerTopics/examplePartnerTopic1/eventSubscriptions/examplesubscription1", + "name": "examplesubscription1", + "type": "Microsoft.EventGrid/partnerTopics/eventSubscriptions" + }, + { + "properties": { + "topic": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/partnerTopics/examplePartnerTopic1", + "provisioningState": "Succeeded", + "destination": { + "properties": { + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.Storage/storageAccounts/testtrackedsource", + "queueName": "que" + }, + "endpointType": "StorageQueue" + }, + "filter": { + "isSubjectCaseSensitive": false, + "subjectBeginsWith": "ExamplePrefix", + "subjectEndsWith": "ExampleSuffix", + "includedEventTypes": [ + "Microsoft.Storage.BlobCreated", + "Microsoft.Storage.BlobDeleted" + ] + }, + "labels": [ + "label1", + "label2" + ], + "eventDeliverySchema": "EventGridSchema", + "retryPolicy": { + "maxDeliveryAttempts": 30, + "eventTimeToLiveInMinutes": 1440 + } + }, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/partnerTopics/examplePartnerTopic1/eventSubscriptions/examplesubscription2", + "name": "examplesubscription2", + "type": "Microsoft.EventGrid/partnerTopics/eventSubscriptions" + } + ] + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopicEventSubscriptions_Update.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopicEventSubscriptions_Update.json new file mode 100644 index 000000000000..ed5b576077a3 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopicEventSubscriptions_Update.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "partnerTopicName": "examplePartnerTopic1", + "eventSubscriptionName": "exampleEventSubscriptionName1", + "api-version": "2020-04-01-preview", + "eventSubscriptionUpdateParameters": { + "destination": { + "endpointType": "WebHook", + "properties": { + "endpointUrl": "https://requestb.in/15ksip71" + } + }, + "filter": { + "isSubjectCaseSensitive": true, + "subjectBeginsWith": "existingPrefix", + "subjectEndsWith": "newSuffix" + }, + "labels": [ + "label1", + "label2" + ] + } + }, + "responses": { + "201": { + "body": { + "properties": { + "destination": { + "properties": { + "endpointBaseUrl": "https://requestb.in/15ksip71" + }, + "endpointType": "WebHook" + }, + "filter": { + "isSubjectCaseSensitive": true, + "subjectBeginsWith": "existingPrefix", + "subjectEndsWith": "newSuffix" + }, + "labels": [ + "label1", + "label2" + ], + "eventDeliverySchema": "EventGridSchema", + "retryPolicy": { + "maxDeliveryAttempts": 30, + "eventTimeToLiveInMinutes": 1440 + }, + "provisioningState": "Succeeded", + "topic": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/partnerTopics/examplePartnerTopic1" + }, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/partnerTopics/examplePartnerTopic1/eventSubscriptions/exampleEventSubscriptionName1", + "name": "exampleEventSubscriptionName1", + "type": "Microsoft.EventGrid/partnerTopics/eventSubscriptions" + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopics_Activate.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopics_Activate.json new file mode 100644 index 000000000000..a6ebb24c3da2 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopics_Activate.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "partnerTopicName": "examplePartnerTopic1", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "source": "ContosoCorp.Accounts.User1", + "provisioningState": "Succeeded", + "activationState": "Activated" + }, + "location": "centraluseuap", + "tags": null, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/partnerTopics/examplePartnerTopic1", + "name": "examplePartnerTopic1", + "type": "Microsoft.EventGrid/partnerTopics" + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopics_Deactivate.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopics_Deactivate.json new file mode 100644 index 000000000000..9d4c165d7d13 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopics_Deactivate.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "partnerTopicName": "examplePartnerTopic1", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "source": "ContosoCorp.Accounts.User1", + "provisioningState": "Succeeded", + "activationState": "Deactivated" + }, + "location": "centraluseuap", + "tags": null, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/partnerTopics/examplePartnerTopic1", + "name": "examplePartnerTopic1", + "type": "Microsoft.EventGrid/partnerTopics" + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopics_Delete.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopics_Delete.json new file mode 100644 index 000000000000..df7009ab6b0d --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopics_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "partnerTopicName": "examplePartnerTopicName1", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopics_Get.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopics_Get.json new file mode 100644 index 000000000000..00088dd6b4f1 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopics_Get.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "partnerTopicName": "examplePartnerTopicName1", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "source": "ContosoCorp.Accounts.User1", + "provisioningState": "Succeeded", + "activationState": "NeverActivated" + }, + "location": "centraluseuap", + "tags": null, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/partnerTopics/examplePartnerTopicName1", + "name": "examplePartnerTopicName1", + "type": "Microsoft.EventGrid/partnerTopics" + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopics_ListByResourceGroup.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopics_ListByResourceGroup.json new file mode 100644 index 000000000000..80a85dffcb0a --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopics_ListByResourceGroup.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "source": "ContosoCorp.Accounts.User1", + "provisioningState": "Succeeded", + "activationState": "NeverActivated" + }, + "location": "centraluseuap", + "tags": null, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/amh/providers/Microsoft.EventGrid/partnerTopics/examplePartnerTopic1", + "name": "examplePartnerTopic1", + "type": "Microsoft.EventGrid/partnerTopics" + } + ] + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopics_ListBySubscription.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopics_ListBySubscription.json new file mode 100644 index 000000000000..39318c96e3ec --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopics_ListBySubscription.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "source": "ContosoCorp.Accounts.User1", + "provisioningState": "Succeeded", + "activationState": "NeverActivated" + }, + "location": "centraluseuap", + "tags": null, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/amh/providers/Microsoft.EventGrid/partnerTopics/examplePartnerTopic1", + "name": "examplePartnerTopic1", + "type": "Microsoft.EventGrid/partnerTopics" + } + ] + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopics_Update.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopics_Update.json new file mode 100644 index 000000000000..ed79d97a16b5 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PartnerTopics_Update.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "partnerTopicName": "examplePartnerTopicName1", + "api-version": "2020-04-01-preview", + "partnerTopicUpdateParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": {}, + "201": { + "body": { + "properties": { + "source": "ContosoCorp.Accounts.User1", + "provisioningState": "Succeeded", + "activationState": "NeverActivated" + }, + "location": "centraluseuap", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/amh/providers/Microsoft.EventGrid/partnerTopics/examplePartnerTopic1", + "name": "examplePartnerTopic1", + "type": "Microsoft.EventGrid/partnerTopics" + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PrivateEndpointConnections_Delete.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PrivateEndpointConnections_Delete.json new file mode 100644 index 000000000000..0b9b52011235 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PrivateEndpointConnections_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "parentType": "topics", + "parentName": "exampletopic1", + "privateEndpointConnectionName": "BMTPE5.8A30D251-4C61-489D-A1AA-B37C4A329B8B", + "api-version": "2020-04-01-preview" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PrivateEndpointConnections_Get.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PrivateEndpointConnections_Get.json new file mode 100644 index 000000000000..650d12fc40e1 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PrivateEndpointConnections_Get.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "parentType": "topics", + "parentName": "exampletopic1", + "privateEndpointConnectionName": "BMTPE5.8A30D251-4C61-489D-A1AA-B37C4A329B8B", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "privateEndpoint": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.Network/privateEndpoints/bmtpe5" + }, + "groupIds": [ + "topic" + ], + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Test", + "actionsRequired": "None" + }, + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/5B4B650E-28B9-4790-B3AB-DDBD88D727C4/resourceGroups/examplerg/providers/Microsoft.EventGrid/topics/exampletopic1/privateEndpointConnections/BMTPE5.8A30D251-4C61-489D-A1AA-B37C4A329B8B", + "name": "BMTPE5.8A30D251-4C61-489D-A1AA-B37C4A329B8B", + "type": "Microsoft.EventGrid/topics/privateEndpointConnections" + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PrivateEndpointConnections_ListByResource.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PrivateEndpointConnections_ListByResource.json new file mode 100644 index 000000000000..c16c488defbc --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PrivateEndpointConnections_ListByResource.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "parentType": "topics", + "parentName": "exampletopic1", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "privateEndpoint": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.Network/privateEndpoints/bmtpe5" + }, + "groupIds": [ + "topic" + ], + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Test", + "actionsRequired": "None" + }, + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/5B4B650E-28B9-4790-B3AB-DDBD88D727C4/resourceGroups/examplerg/providers/Microsoft.EventGrid/topics/exampletopic1/privateEndpointConnections/BMTPE5.8A30D251-4C61-489D-A1AA-B37C4A329B8B", + "name": "BMTPE5.8A30D251-4C61-489D-A1AA-B37C4A329B8B", + "type": "Microsoft.EventGrid/topics/privateEndpointConnections" + } + ] + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PrivateEndpointConnections_Update.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PrivateEndpointConnections_Update.json new file mode 100644 index 000000000000..05dbe5771842 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PrivateEndpointConnections_Update.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "parentType": "topics", + "parentName": "exampletopic1", + "privateEndpointConnectionName": "BMTPE5.8A30D251-4C61-489D-A1AA-B37C4A329B8B", + "api-version": "2020-04-01-preview", + "privateEndpointConnection": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approving connection", + "actionsRequired": "None" + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "privateEndpoint": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.Network/privateEndpoints/bmtpe5" + }, + "groupIds": [ + "topic" + ], + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approving connection", + "actionsRequired": "None" + }, + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/5B4B650E-28B9-4790-B3AB-DDBD88D727C4/resourceGroups/examplerg/providers/Microsoft.EventGrid/topics/exampletopic1/privateEndpointConnections/BMTPE5.8A30D251-4C61-489D-A1AA-B37C4A329B8B", + "name": "BMTPE5.8A30D251-4C61-489D-A1AA-B37C4A329B8B", + "type": "Microsoft.EventGrid/topics/privateEndpointConnections" + } + }, + "201": { + "body": { + "properties": { + "privateEndpoint": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.Network/privateEndpoints/bmtpe5" + }, + "groupIds": [ + "topic" + ], + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approving connection", + "actionsRequired": "None" + }, + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/5B4B650E-28B9-4790-B3AB-DDBD88D727C4/resourceGroups/examplerg/providers/Microsoft.EventGrid/topics/exampletopic1/privateEndpointConnections/BMTPE5.8A30D251-4C61-489D-A1AA-B37C4A329B8B", + "name": "BMTPE5.8A30D251-4C61-489D-A1AA-B37C4A329B8B", + "type": "Microsoft.EventGrid/topics/privateEndpointConnections" + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PrivateLinkResources_Get.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PrivateLinkResources_Get.json new file mode 100644 index 000000000000..aaca5edd77a2 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PrivateLinkResources_Get.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "parentType": "topics", + "parentName": "exampletopic1", + "privateLinkResourceName": "topic", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "groupId": "topic", + "displayName": "Event Grid topic", + "requiredMembers": [ + "topic" + ], + "requiredZoneNames": [ + "privatelink.eventgrid.azure.net" + ] + }, + "id": "/subscriptions/5B4B650E-28B9-4790-B3AB-DDBD88D727C4/resourceGroups/amh/providers/Microsoft.EventGrid/topics/exampletopic1/privateLinkResources/topic", + "name": "topic", + "type": "Microsoft.EventGrid/topics/privateLinkResources" + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PrivateLinkResources_ListByResource.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PrivateLinkResources_ListByResource.json new file mode 100644 index 000000000000..613d05b44e05 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/PrivateLinkResources_ListByResource.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "parentType": "topics", + "parentName": "exampletopic1", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "groupId": "topic", + "displayName": "Event Grid topic", + "requiredMembers": [ + "topic" + ], + "requiredZoneNames": [ + "privatelink.eventgrid.azure.net" + ] + }, + "id": "/subscriptions/5B4B650E-28B9-4790-B3AB-DDBD88D727C4/resourceGroups/amh/providers/Microsoft.EventGrid/topics/exampletopic1/privateLinkResources/topic", + "name": "topic", + "type": "Microsoft.EventGrid/topics/privateLinkResources" + } + ] + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopicEventSubscriptions_CreateOrUpdate.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopicEventSubscriptions_CreateOrUpdate.json new file mode 100644 index 000000000000..f6d8df0e863e --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopicEventSubscriptions_CreateOrUpdate.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "systemTopicName": "exampleSystemTopic1", + "eventSubscriptionName": "exampleEventSubscriptionName1", + "api-version": "2020-04-01-preview", + "eventSubscriptionInfo": { + "properties": { + "destination": { + "endpointType": "WebHook", + "properties": { + "endpointUrl": "https://requestb.in/15ksip71" + } + }, + "filter": { + "isSubjectCaseSensitive": false, + "subjectBeginsWith": "ExamplePrefix", + "subjectEndsWith": "ExampleSuffix" + } + } + } + }, + "responses": { + "201": { + "body": { + "properties": { + "destination": { + "properties": { + "endpointBaseUrl": "https://requestb.in/15ksip71" + }, + "endpointType": "WebHook" + }, + "filter": { + "isSubjectCaseSensitive": false, + "subjectBeginsWith": "ExamplePrefix", + "subjectEndsWith": "ExampleSuffix" + }, + "labels": null, + "eventDeliverySchema": "EventGridSchema", + "retryPolicy": { + "maxDeliveryAttempts": 30, + "eventTimeToLiveInMinutes": 1440 + }, + "provisioningState": "Succeeded", + "topic": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/systemTopics/exampleSystemTopic1" + }, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/systemTopics/exampleSystemTopic1/eventSubscriptions/exampleEventSubscriptionName1", + "name": "exampleEventSubscriptionName1", + "type": "Microsoft.EventGrid/systemTopics/eventSubscriptions" + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopicEventSubscriptions_Delete.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopicEventSubscriptions_Delete.json new file mode 100644 index 000000000000..2c6bf3ea129c --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopicEventSubscriptions_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "systemTopicName": "exampleSystemTopic1", + "eventSubscriptionName": "examplesubscription1", + "api-version": "2020-04-01-preview" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopicEventSubscriptions_Get.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopicEventSubscriptions_Get.json new file mode 100644 index 000000000000..5e2893190548 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopicEventSubscriptions_Get.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "systemTopicName": "exampleSystemTopic1", + "eventSubscriptionName": "examplesubscription1", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "topic": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/systemTopics/exampleSystemTopic1", + "provisioningState": "Succeeded", + "destination": { + "properties": { + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.Storage/storageAccounts/testtrackedsource", + "queueName": "que" + }, + "endpointType": "StorageQueue" + }, + "filter": { + "isSubjectCaseSensitive": false, + "subjectBeginsWith": "ExamplePrefix", + "subjectEndsWith": "ExampleSuffix", + "includedEventTypes": [ + "Microsoft.Storage.BlobCreated", + "Microsoft.Storage.BlobDeleted" + ] + }, + "labels": [ + "label1", + "label2" + ], + "eventDeliverySchema": "EventGridSchema", + "retryPolicy": { + "maxDeliveryAttempts": 30, + "eventTimeToLiveInMinutes": 1440 + } + }, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/systemTopics/exampleSystemTopic1/eventSubscriptions/examplesubscription1", + "name": "examplesubscription1", + "type": "Microsoft.EventGrid/systemTopics/eventSubscriptions" + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopicEventSubscriptions_GetFullUrl.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopicEventSubscriptions_GetFullUrl.json new file mode 100644 index 000000000000..3b333bc11c10 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopicEventSubscriptions_GetFullUrl.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "systemTopicName": "exampleSystemTopic1", + "eventSubscriptionName": "examplesubscription1", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "endpointUrl": "https://requestb.in/15ksip71" + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopicEventSubscriptions_ListBySystemTopic.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopicEventSubscriptions_ListBySystemTopic.json new file mode 100644 index 000000000000..57c01465793f --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopicEventSubscriptions_ListBySystemTopic.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "systemTopicName": "exampleSystemTopic1", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "topic": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/systemTopics/exampleSystemTopic1", + "provisioningState": "Succeeded", + "destination": { + "properties": { + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.Storage/storageAccounts/testtrackedsource", + "queueName": "que" + }, + "endpointType": "StorageQueue" + }, + "filter": { + "subjectBeginsWith": "", + "subjectEndsWith": "" + }, + "labels": [], + "eventDeliverySchema": "EventGridSchema", + "retryPolicy": { + "maxDeliveryAttempts": 10, + "eventTimeToLiveInMinutes": 1440 + } + }, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/systemTopics/exampleSystemTopic1/eventSubscriptions/examplesubscription1", + "name": "examplesubscription1", + "type": "Microsoft.EventGrid/systemTopics/eventSubscriptions" + }, + { + "properties": { + "topic": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/systemTopics/exampleSystemTopic1", + "provisioningState": "Succeeded", + "destination": { + "properties": { + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.Storage/storageAccounts/testtrackedsource", + "queueName": "que" + }, + "endpointType": "StorageQueue" + }, + "filter": { + "isSubjectCaseSensitive": false, + "subjectBeginsWith": "ExamplePrefix", + "subjectEndsWith": "ExampleSuffix", + "includedEventTypes": [ + "Microsoft.Storage.BlobCreated", + "Microsoft.Storage.BlobDeleted" + ] + }, + "labels": [ + "label1", + "label2" + ], + "eventDeliverySchema": "EventGridSchema", + "retryPolicy": { + "maxDeliveryAttempts": 30, + "eventTimeToLiveInMinutes": 1440 + } + }, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/systemTopics/exampleSystemTopic1/eventSubscriptions/examplesubscription2", + "name": "examplesubscription2", + "type": "Microsoft.EventGrid/systemTopics/eventSubscriptions" + } + ] + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopicEventSubscriptions_Update.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopicEventSubscriptions_Update.json new file mode 100644 index 000000000000..67a976a393ea --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopicEventSubscriptions_Update.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "systemTopicName": "exampleSystemTopic1", + "eventSubscriptionName": "exampleEventSubscriptionName1", + "api-version": "2020-04-01-preview", + "eventSubscriptionUpdateParameters": { + "destination": { + "endpointType": "WebHook", + "properties": { + "endpointUrl": "https://requestb.in/15ksip71" + } + }, + "filter": { + "isSubjectCaseSensitive": true, + "subjectBeginsWith": "existingPrefix", + "subjectEndsWith": "newSuffix" + }, + "labels": [ + "label1", + "label2" + ] + } + }, + "responses": { + "201": { + "body": { + "properties": { + "destination": { + "properties": { + "endpointBaseUrl": "https://requestb.in/15ksip71" + }, + "endpointType": "WebHook" + }, + "filter": { + "isSubjectCaseSensitive": true, + "subjectBeginsWith": "existingPrefix", + "subjectEndsWith": "newSuffix" + }, + "labels": [ + "label1", + "label2" + ], + "eventDeliverySchema": "EventGridSchema", + "retryPolicy": { + "maxDeliveryAttempts": 30, + "eventTimeToLiveInMinutes": 1440 + }, + "provisioningState": "Succeeded", + "topic": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/systemTopics/exampleSystemTopic1" + }, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/systemTopics/exampleSystemTopic1/eventSubscriptions/exampleEventSubscriptionName1", + "name": "exampleEventSubscriptionName1", + "type": "Microsoft.EventGrid/systemTopics/eventSubscriptions" + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopics_CreateOrUpdate.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopics_CreateOrUpdate.json new file mode 100644 index 000000000000..86fe988b9e37 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopics_CreateOrUpdate.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "systemTopicName": "exampleSystemTopic1", + "api-version": "2020-04-01-preview", + "systemTopicInfo": { + "location": "westus2", + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "source": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/azureeventgridrunnerrgcentraluseuap/providers/microsoft.storage/storageaccounts/pubstgrunnerb71cd29e", + "topicType": "microsoft.storage.storageaccounts", + "metricResourceId": "183c0fb1-17ff-47b6-ac77-5a47420ab01e" + }, + "location": "centraluseuap", + "tags": null, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/systemTopics/exampleSystemTopic2", + "name": "exampleSystemTopic2", + "type": "Microsoft.EventGrid/systemTopics" + } + }, + "201": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "source": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/azureeventgridrunnerrgcentraluseuap/providers/microsoft.storage/storageaccounts/pubstgrunnerb71cd29e", + "topicType": "microsoft.storage.storageaccounts", + "metricResourceId": "183c0fb1-17ff-47b6-ac77-5a47420ab01e" + }, + "location": "centraluseuap", + "tags": null, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/systemTopics/exampleSystemTopic2", + "name": "exampleSystemTopic2", + "type": "Microsoft.EventGrid/systemTopics" + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopics_Delete.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopics_Delete.json new file mode 100644 index 000000000000..2bab4abe8b38 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopics_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "systemTopicName": "exampleSystemTopic1", + "api-version": "2020-04-01-preview" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopics_Get.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopics_Get.json new file mode 100644 index 000000000000..f3a92d3cf345 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopics_Get.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "systemTopicName": "exampleSystemTopic2", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "source": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/azureeventgridrunnerrgcentraluseuap/providers/microsoft.storage/storageaccounts/pubstgrunnerb71cd29e", + "topicType": "microsoft.storage.storageaccounts", + "metricResourceId": "183c0fb1-17ff-47b6-ac77-5a47420ab01e" + }, + "location": "centraluseuap", + "tags": null, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/systemTopics/exampleSystemTopic2", + "name": "exampleSystemTopic2", + "type": "Microsoft.EventGrid/systemTopics" + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopics_ListByResourceGroup.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopics_ListByResourceGroup.json new file mode 100644 index 000000000000..83e6ce36f0dd --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopics_ListByResourceGroup.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "provisioningState": "Succeeded", + "source": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/azureeventgridrunnerrgcentraluseuap/providers/microsoft.storage/storageaccounts/pubstgrunnerb71cd29e", + "topicType": "microsoft.storage.storageaccounts", + "metricResourceId": "183c0fb1-17ff-47b6-ac77-5a47420ab01e" + }, + "location": "centraluseuap", + "tags": null, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/systemTopics/pubstgrunnerb71cd29e-86fad330-7bac-4238-8cab-9e46b75165aa", + "name": "pubstgrunnerb71cd29e-86fad330-7bac-4238-8cab-9e46b75165aa", + "type": "Microsoft.EventGrid/systemTopics" + } + ] + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopics_ListBySubscription.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopics_ListBySubscription.json new file mode 100644 index 000000000000..2f3d18050b4f --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopics_ListBySubscription.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "api-version": "2020-04-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "provisioningState": "Succeeded", + "source": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/azureeventgridrunnerrgcentraluseuap/providers/microsoft.storage/storageaccounts/pubstgrunnerb71cd29e", + "topicType": "microsoft.storage.storageaccounts", + "metricResourceId": "183c0fb1-17ff-47b6-ac77-5a47420ab01e" + }, + "location": "centraluseuap", + "tags": null, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/systemTopics/exampleSystemTopic2", + "name": "exampleSystemTopic2", + "type": "Microsoft.EventGrid/systemTopics" + } + ] + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopics_Update.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopics_Update.json new file mode 100644 index 000000000000..ecce81c2aca9 --- /dev/null +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/SystemTopics_Update.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "systemTopicName": "exampleSystemTopic1", + "api-version": "2020-04-01-preview", + "systemTopicUpdateParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "source": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/azureeventgridrunnerrgcentraluseuap/providers/microsoft.storage/storageaccounts/pubstgrunnerb71cd29e", + "topicType": "microsoft.storage.storageaccounts", + "metricResourceId": "183c0fb1-17ff-47b6-ac77-5a47420ab01e" + }, + "location": "centraluseuap", + "tags": null, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/systemTopics/exampleSystemTopic2", + "name": "exampleSystemTopic2", + "type": "Microsoft.EventGrid/systemTopics" + } + }, + "201": { + "body": { + "properties": { + "provisioningState": "Succeeded", + "source": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/azureeventgridrunnerrgcentraluseuap/providers/microsoft.storage/storageaccounts/pubstgrunnerb71cd29e", + "topicType": "microsoft.storage.storageaccounts", + "metricResourceId": "183c0fb1-17ff-47b6-ac77-5a47420ab01e" + }, + "location": "centraluseuap", + "tags": null, + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/systemTopics/exampleSystemTopic2", + "name": "exampleSystemTopic2", + "type": "Microsoft.EventGrid/systemTopics" + } + } + } +} diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/Topics_CreateOrUpdate.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/Topics_CreateOrUpdate.json index 33f427d107a0..5df2e89d6b4c 100644 --- a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/Topics_CreateOrUpdate.json +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/Topics_CreateOrUpdate.json @@ -11,7 +11,7 @@ "tag2": "value2" }, "properties": { - "allowTrafficFromAllIPs": false, + "publicNetworkAccess": "Enabled", "inboundIpRules": [ { "ipMask": "12.18.30.15", @@ -31,7 +31,7 @@ "properties": { "endpoint": "https://exampletopic1.westus2-1.eventgrid.azure.net/api/events", "provisioningState": "Succeeded", - "allowTrafficFromAllIPs": false, + "publicNetworkAccess": "Enabled", "inboundIpRules": [ { "ipMask": "12.18.30.15", diff --git a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/Topics_Update.json b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/Topics_Update.json index 9157576d137f..71edda7cf0a7 100644 --- a/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/Topics_Update.json +++ b/specification/eventgrid/resource-manager/Microsoft.EventGrid/preview/2020-04-01-preview/examples/Topics_Update.json @@ -8,15 +8,40 @@ "tags": { "tag1": "value1", "tag2": "value2" + }, + "properties": { + "publicNetworkAccess": "Enabled", + "inboundIpRules": [ + { + "ipMask": "12.18.30.15", + "action": "Allow" + }, + { + "ipMask": "12.18.176.1", + "action": "Allow" + } + ] } } }, "responses": { + "200": {}, "201": { "body": { "properties": { "endpoint": "https://exampletopic1.westus2-1.eventgrid.azure.net/api/events", - "provisioningState": "Succeeded" + "provisioningState": "Succeeded", + "publicNetworkAccess": "Enabled", + "inboundIpRules": [ + { + "ipMask": "12.18.30.15", + "action": "Allow" + }, + { + "ipMask": "12.18.176.1", + "action": "Allow" + } + ] }, "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/topics/exampletopic1", "location": "westus2", diff --git a/specification/eventgrid/resource-manager/readme.java.md b/specification/eventgrid/resource-manager/readme.java.md index 7f0e1b379b95..b092844a2960 100644 --- a/specification/eventgrid/resource-manager/readme.java.md +++ b/specification/eventgrid/resource-manager/readme.java.md @@ -26,7 +26,7 @@ batch: - tag: package-2018-01 ``` -### Tag: package-2020-01-preview and java +### Tag: package-2020-04-preview and java These settings apply only when `--tag=package-2020-04-preview --java` is specified on the command line. diff --git a/specification/eventhub/resource-manager/readme.python.md b/specification/eventhub/resource-manager/readme.python.md index 592e52af5d37..f4828241cafb 100644 --- a/specification/eventhub/resource-manager/readme.python.md +++ b/specification/eventhub/resource-manager/readme.python.md @@ -2,7 +2,7 @@ These settings apply only when `--python` is specified on the command line. -``` yaml $(python) +``` yaml !$(track2) python: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION @@ -12,23 +12,49 @@ python: no-namespace-folders: 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-eventhub +no-namespace-folders: true +``` + ### Python multi-api Generate all API versions currently shipped for this package -```yaml $(python) && $(multiapi) +```yaml $(multiapi) && !$(track2) batch: - tag: package-2018-01-preview - tag: package-2017-04 - tag: package-2015-08 ``` +```yaml $(multiapi) && $(track2) +clear-output-folder: true +batch: + - tag: package-2018-01-preview + - tag: package-2017-04 + - tag: package-2015-08 + - multiapiscript: true +``` + +``` yaml $(multiapiscript) +output-folder: $(python-sdks-folder)/eventhub/azure-mgmt-eventhub/azure/mgmt/eventhub/ +clear-output-folder: false +perform-load: false +``` + ### Tag: package-2018-01-preview and python These settings apply only when `--tag=package-2018-01-preview --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-01-preview' && $(python) +``` yaml $(tag) == 'package-2018-01-preview' +namespace: azure.mgmt.eventhub.v2018_01_01_preview +output-folder: $(python-sdks-folder)/eventhub/azure-mgmt-eventhub/azure/mgmt/eventhub/v2018_01_01_preview python: namespace: azure.mgmt.eventhub.v2018_01_01_preview output-folder: $(python-sdks-folder)/eventhub/azure-mgmt-eventhub/azure/mgmt/eventhub/v2018_01_01_preview @@ -39,7 +65,9 @@ python: These settings apply only when `--tag=package-2017-04 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2017-04' && $(python) +``` yaml $(tag) == 'package-2017-04' +namespace: azure.mgmt.eventhub.v2017_04_01 +output-folder: $(python-sdks-folder)/eventhub/azure-mgmt-eventhub/azure/mgmt/eventhub/v2017_04_01 python: namespace: azure.mgmt.eventhub.v2017_04_01 output-folder: $(python-sdks-folder)/eventhub/azure-mgmt-eventhub/azure/mgmt/eventhub/v2017_04_01 @@ -50,7 +78,9 @@ python: These settings apply only when `--tag=package-2015-08 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2015-08' && $(python) +``` yaml $(tag) == 'package-2015-08' +namespace: azure.mgmt.eventhub.v2015_08_01 +output-folder: $(python-sdks-folder)/eventhub/azure-mgmt-eventhub/azure/mgmt/eventhub/v2015_08_01 python: namespace: azure.mgmt.eventhub.v2015_08_01 output-folder: $(python-sdks-folder)/eventhub/azure-mgmt-eventhub/azure/mgmt/eventhub/v2015_08_01 diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2019-03-01/examples/WafListManagedRuleSets.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2019-03-01/examples/WafListManagedRuleSets.json index 81204161f8e5..d402d461c310 100644 --- a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2019-03-01/examples/WafListManagedRuleSets.json +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2019-03-01/examples/WafListManagedRuleSets.json @@ -13,6 +13,7 @@ "type": "Microsoft.Network/frontdoorwebapplicationfirewallmanagedrulesets", "properties": { "provisioningState": "Succeeded", + "ruleSetId": "8125d145-ddc5-4d90-9bc3-24c5f2de69a2", "ruleSetType": "DefaultRuleSet", "ruleSetVersion": "1.0", "ruleGroups": [ diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2019-03-01/webapplicationfirewall.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2019-03-01/webapplicationfirewall.json index e40f2d2a4c0a..8b1220b8b23a 100644 --- a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2019-03-01/webapplicationfirewall.json +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2019-03-01/webapplicationfirewall.json @@ -667,6 +667,11 @@ "readOnly": true, "description": "Provisioning state of the managed rule set." }, + "ruleSetId": { + "type": "string", + "readOnly": true, + "description": "Id of the managed rule set." + }, "ruleSetType": { "type": "string", "readOnly": true, diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2019-10-01/examples/WafListManagedRuleSets.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2019-10-01/examples/WafListManagedRuleSets.json index 7871f2cd7bb4..37aa69bf2cb2 100644 --- a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2019-10-01/examples/WafListManagedRuleSets.json +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2019-10-01/examples/WafListManagedRuleSets.json @@ -13,6 +13,7 @@ "type": "Microsoft.Network/frontdoorwebapplicationfirewallmanagedrulesets", "properties": { "provisioningState": "Succeeded", + "ruleSetId": "8125d145-ddc5-4d90-9bc3-24c5f2de69a2", "ruleSetType": "DefaultRuleSet", "ruleSetVersion": "1.0", "ruleGroups": [ diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2019-10-01/webapplicationfirewall.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2019-10-01/webapplicationfirewall.json index dafd0a1d5780..bed6e08c018e 100644 --- a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2019-10-01/webapplicationfirewall.json +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2019-10-01/webapplicationfirewall.json @@ -688,6 +688,11 @@ "readOnly": true, "description": "Provisioning state of the managed rule set." }, + "ruleSetId": { + "type": "string", + "readOnly": true, + "description": "Id of the managed rule set." + }, "ruleSetType": { "type": "string", "readOnly": true, diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/README.md b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/README.md new file mode 100644 index 000000000000..cdb350ea928f --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/README.md @@ -0,0 +1,21 @@ +# General Availability API specification for FrontDoor Azure Resource +> see https://aka.ms/autorest + +This directory contains the schema specifications for the Front Door Azure Resource. The API will be added to support Front Door on Azure Resource Manager. + +The base swagger document for new features for Frontdoor: [frontdoor.json](./frontdoor.json) + +## Overview +The Front Door ARM API supports CRUD functionality on four objects in the resource schema: +`FrontDoor`, a collection of child objects `BackendPool`, a collection of child objects `FrontendEndpoints` and the primary child object `RoutingRule`, which each reference one `BackendPool` and `FrontendEndpoints` . Each routing rule encapsulates +all of the settings needed to configure the AzureFD backend infrastructure to set up a +reverse-proxy route to accelerate traffic, detect backend availability, +and balance between healthy members of the pool. + +## Generated object-model UML diagram +This diagram is generated from the swagger spec by "[`oav`](https://github.com/Azure/oav) `generate-uml`" +![Generated UML snapshot](./assets/frontdoor.svg) + +## Swagger and JSON specification reference and tools +- [OpenAPI specification v2.0 (aka Swagger 2.0)](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md) +- [Swagger.io online editor](https://editor.swagger.io/) diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/assets/frontdoor.svg b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/assets/frontdoor.svg new file mode 100644 index 000000000000..2806bba823df --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/assets/frontdoor.svg @@ -0,0 +1,668 @@ + + + + + + +G + + + +A0 + +Frontdoor + +-properties:FrontdoorProperties + + + +A2 + +FrontdoorProperties + +-resourceState:ResourceState +-provisioningState:string +-cname:string + + + +A0->A2 + + + + + +A1 + +FrontdoorUpdateParameters + +-friendlyName:string +-routingRules:Array<RoutingRule> +-loadBalancingSettings:Array<LoadBalancingSettingsModel> +-healthProbeSettings:Array<HealthProbeSettingsModel> +-backendPools:Array<BackendPool> +-frontendEndpoints:Array<FrontendEndpoint> +-enabledState:string + + + +A1->A2 + + +allOf + + + +A5 + +RoutingRule + +-properties:RoutingRuleProperties +-name:string +-type:string + + + +A1->A5 + + + + + +A10 + +LoadBalancingSettingsModel + +-properties:LoadBalancingSettingsProperties +-name:string +-type:string + + + +A1->A10 + + + + + +A14 + +HealthProbeSettingsModel + +-properties:HealthProbeSettingsProperties +-name:string +-type:string + + + +A1->A14 + + + + + +A18 + +BackendPool + +-properties:BackendPoolProperties +-name:string +-type:string + + + +A1->A18 + + + + + +A26 + +FrontendEndpoint + +-properties:FrontendEndpointProperties +-name:string +-type:string + + + +A1->A26 + + + + + +A30 + +ResourceState + + + +A2->A30 + + + + + +A3 + +FrontdoorListResult + +-value:Array<Frontdoor> +-nextLink:string + + + +A3->A0 + + + + + +A4 + +PurgeParameters + +-contentPaths:Array<string> + + + +A6 + +RoutingRuleProperties + +-resourceState:ResourceState + + + +A5->A6 + + + + + +A6->A30 + + + + + +A7 + +RoutingRuleListResult + +-value:Array<RoutingRule> +-nextLink:string + + + +A7->A5 + + + + + +A8 + +RoutingRuleUpdateParameters + +-frontendEndpoints:Array<SubResource> +-acceptedProtocols:Array<string> +-patternsToMatch:Array<string> +-customForwardingPath:string +-forwardingProtocol:string +-cacheConfiguration:CacheConfiguration +-backendPool:SubResource +-enabledState:string + + + +A8->A6 + + +allOf + + + +A22 + +CacheConfiguration + +-queryParameterStripDirective:string +-dynamicCompression:string + + + +A8->A22 + + + + + +A38 + +SubResource + +-id:string + + + +A8->A38 + + + + + +A8->A38 + + + + + +A9 + +Backend + +-address:string +-httpPort: +-httpsPort: +-enabledState:string +-priority: +-weight: +-backendHostHeader:string + + + +A11 + +LoadBalancingSettingsProperties + +-resourceState:ResourceState + + + +A10->A11 + + + + + +A11->A30 + + + + + +A12 + +LoadBalancingSettingsListResult + +-value:Array<LoadBalancingSettingsModel> +-nextLink:string + + + +A12->A10 + + + + + +A13 + +LoadBalancingSettingsUpdateParameters + +-sampleSize: +-successfulSamplesRequired: +-additionalLatencyMilliseconds: + + + +A13->A11 + + +allOf + + + +A15 + +HealthProbeSettingsProperties + +-resourceState:ResourceState + + + +A14->A15 + + + + + +A15->A30 + + + + + +A16 + +HealthProbeSettingsListResult + +-value:Array<HealthProbeSettingsModel> +-nextLink:string + + + +A16->A14 + + + + + +A17 + +HealthProbeSettingsUpdateParameters + +-path:string +-protocol:string +-intervalInSeconds: + + + +A17->A15 + + +allOf + + + +A20 + +BackendPoolProperties + +-resourceState:ResourceState + + + +A18->A20 + + + + + +A19 + +BackendPoolUpdateParameters + +-backends:Array<Backend> +-loadBalancingSettings:SubResource +-healthProbeSettings:SubResource + + + +A19->A9 + + + + + +A19->A20 + + +allOf + + + +A19->A38 + + + + + +A19->A38 + + + + + +A20->A30 + + + + + +A21 + +BackendPoolListResult + +-value:Array<BackendPool> +-nextLink:string + + + +A21->A18 + + + + + +A23 + +KeyVaultCertificateSourceParameters + +-vault:Object +-secretName:string +-secretVersion:string + + + +A24 + +FrontdoorCertificateSourceParameters + +-certificateType:string + + + +A25 + +CustomHttpsConfiguration + +-certificateSource:string +-protocolType:string +-keyVaultCertificateSourceParameters:KeyVaultCertificateSourceParameters +-frontdoorCertificateSourceParameters:FrontdoorCertificateSourceParameters + + + +A25->A23 + + + + + +A25->A24 + + + + + +A27 + +FrontendEndpointProperties + +-resourceState:ResourceState +-customHttpsProvisioningState:string +-customHttpsProvisioningSubstate:string +-customHttpsConfiguration:CustomHttpsConfiguration + + + +A26->A27 + + + + + +A27->A25 + + + + + +A27->A30 + + + + + +A28 + +FrontendEndpointUpdateParameters + +-hostName:string +-sessionAffinityEnabledState:string +-sessionAffinityTtlSeconds: +-webApplicationFirewallPolicyLink:Object + + + +A28->A27 + + +allOf + + + +A29 + +FrontendEndpointsListResult + +-value:Array<FrontendEndpoint> +-nextLink:string + + + +A29->A26 + + + + + +A31 + +ValidateCustomDomainInput + +-hostName:string + + + +A32 + +ValidateCustomDomainOutput + +-customDomainValidated:boolean +-reason:string +-message:string + + + +A33 + +ErrorResponse + +-code:string +-message:string + + + +A34 + +CheckNameAvailabilityInput + +-name:string +-type:ResourceType + + + +A36 + +ResourceType + + + +A34->A36 + + + + + +A35 + +CheckNameAvailabilityOutput + +-nameAvailability:string +-reason:string +-message:string + + + +A37 + +Resource + +-id:string +-name:string +-type:string +-location:string +-tags:Dictionary<string> + + + +A37->A0 + + +allOf + + + +A38->A5 + + +allOf + + + +A38->A10 + + +allOf + + + +A38->A14 + + +allOf + + + +A38->A18 + + +allOf + + + +A38->A26 + + +allOf + + + diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/CheckFrontdoorNameAvailability.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/CheckFrontdoorNameAvailability.json new file mode 100644 index 000000000000..d7723818dcdf --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/CheckFrontdoorNameAvailability.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "checkFrontDoorNameAvailabilityInput": { + "name": "sampleName", + "type": "Microsoft.Network/frontDoors" + } + }, + "responses": { + "200": { + "body": { + "nameAvailability": "Unavailable", + "reason": "Name is already in use", + "message": "Name not available" + } + } + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/CheckFrontdoorNameAvailabilityWithSubscription.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/CheckFrontdoorNameAvailabilityWithSubscription.json new file mode 100644 index 000000000000..8bff42be6b8a --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/CheckFrontdoorNameAvailabilityWithSubscription.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "subid", + "checkFrontDoorNameAvailabilityInput": { + "name": "sampleName", + "type": "Microsoft.Network/frontDoors/frontendEndpoints" + } + }, + "responses": { + "200": { + "body": { + "nameAvailability": "Unavailable", + "reason": "Name is already in use", + "message": "Name not available" + } + } + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorCreate.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorCreate.json new file mode 100644 index 000000000000..1e75091a2451 --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorCreate.json @@ -0,0 +1,556 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "frontDoorName": "frontDoor1", + "frontDoorParameters": { + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "routingRules": [ + { + "name": "routingRule1", + "properties": { + "frontendEndpoints": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default" + } + ], + "acceptedProtocols": [ + "Http" + ], + "patternsToMatch": [ + "/*" + ], + "routeConfiguration": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration", + "backendPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1" + } + }, + "rulesEngine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/rulesEngines/rulesEngine1" + }, + "enabledState": "Enabled" + } + } + ], + "healthProbeSettings": [ + { + "name": "healthProbeSettings1", + "properties": { + "path": "/", + "protocol": "Http", + "intervalInSeconds": 120, + "enabledState": "Enabled", + "healthProbeMethod": "HEAD" + } + } + ], + "loadBalancingSettings": [ + { + "name": "loadBalancingSettings1", + "properties": { + "sampleSize": 4, + "successfulSamplesRequired": 2 + } + } + ], + "backendPools": [ + { + "name": "backendPool1", + "properties": { + "backends": [ + { + "address": "w3.contoso.com", + "httpPort": 80, + "httpsPort": 443, + "weight": 1, + "priority": 2 + }, + { + "address": "contoso.com.website-us-west-2.othercloud.net", + "httpPort": 80, + "httpsPort": 443, + "weight": 2, + "priority": 1 + }, + { + "privateLinkAlias": "SQLSERVER.d84e61f0-0870-4d24-9746-7438fa0019d1.westus2.azure.privatelinkservice", + "privateLinkApprovalMessage": "Please approve this request to connect to the Private Link", + "address": "10.0.1.5", + "httpPort": 80, + "httpsPort": 443, + "weight": 1, + "priority": 1 + } + ], + "loadBalancingSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/loadBalancingSettings/loadBalancingSettings1" + }, + "healthProbeSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/healthProbeSettings/healthProbeSettings1" + } + } + } + ], + "frontendEndpoints": [ + { + "name": "frontendEndpoint1", + "properties": { + "hostName": "www.contoso.com", + "sessionAffinityEnabledState": "Enabled", + "sessionAffinityTtlSeconds": 60, + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoorWebApplicationFirewallPolicies/policy1" + } + } + }, + { + "name": "default", + "properties": { + "hostName": "frontDoor1.azurefd.net" + } + } + ], + "backendPoolsSettings": { + "enforceCertificateNameCheck": "Enabled", + "sendRecvTimeoutSeconds": 60 + }, + "enabledState": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1", + "name": "frontDoor1", + "type": "Microsoft.Network/frontDoor", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "routingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/routingRules/routingRule1", + "name": "routingRule1", + "properties": { + "frontendEndpoints": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default" + } + ], + "acceptedProtocols": [ + "Http" + ], + "patternsToMatch": [ + "/*" + ], + "routeConfiguration": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration", + "customForwardingPath": "", + "forwardingProtocol": "MatchRequest", + "backendPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1" + } + }, + "rulesEngine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/rulesEngines/rulesEngine1" + }, + "enabledState": "Enabled" + } + } + ], + "healthProbeSettings": [ + { + "name": "healthProbeSettings1", + "properties": { + "path": "/", + "protocol": "Http", + "intervalInSeconds": 120, + "enabledState": "Enabled", + "healthProbeMethod": "HEAD" + } + } + ], + "loadBalancingSettings": [ + { + "name": "loadBalancingSettings1", + "properties": { + "sampleSize": 4, + "successfulSamplesRequired": 2 + } + } + ], + "backendPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1", + "name": "backendPool1", + "properties": { + "backends": [ + { + "address": "w3.contoso.com", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 1, + "priority": 2 + }, + { + "address": "contoso.com.website-us-west-2.othercloud.net", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 2, + "priority": 1 + }, + { + "privateLinkAlias": "SQLSERVER.d84e61f0-0870-4d24-9746-7438fa0019d1.westus2.azure.privatelinkservice", + "privateEndpointStatus": "Pending", + "privateLinkApprovalMessage": "Please approve the connection request for this Private Link", + "address": "10.0.1.5", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 1, + "priority": 1 + } + ], + "loadBalancingSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/loadBalancingSettings/loadBalancingSettings1" + }, + "healthProbeSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/healthProbeSettings/healthProbeSettings1" + } + } + } + ], + "frontendEndpoints": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1", + "name": "frontendEndpoint1", + "properties": { + "hostName": "www.contoso.com", + "sessionAffinityEnabledState": "Enabled", + "sessionAffinityTtlSeconds": 60, + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoorWebApplicationFirewallPolicies/policy1" + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default", + "name": "default", + "properties": { + "hostName": "frontDoor1.azurefd.net" + } + } + ], + "backendPoolsSettings": { + "enforceCertificateNameCheck": "Enabled", + "sendRecvTimeoutSeconds": 60 + }, + "enabledState": "Enabled", + "resourceState": "Creating", + "provisioningState": "Succeeded", + "cname": "frontDoor1.azurefd.net" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1", + "name": "frontDoor1", + "type": "Microsoft.Network/frontDoor", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "routingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/routingRules/routingRule1", + "name": "routingRule1", + "properties": { + "frontendEndpoints": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default" + } + ], + "acceptedProtocols": [ + "Http" + ], + "patternsToMatch": [ + "/*" + ], + "routeConfiguration": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration", + "customForwardingPath": "", + "forwardingProtocol": "MatchRequest", + "backendPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1" + } + }, + "rulesEngine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/rulesEngines/rulesEngine1" + }, + "enabledState": "Enabled" + } + } + ], + "healthProbeSettings": [ + { + "name": "healthProbeSettings1", + "properties": { + "path": "/", + "protocol": "Http", + "intervalInSeconds": 120, + "enabledState": "Enabled", + "healthProbeMethod": "HEAD" + } + } + ], + "loadBalancingSettings": [ + { + "name": "loadBalancingSettings1", + "properties": { + "sampleSize": 4, + "successfulSamplesRequired": 2 + } + } + ], + "backendPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1", + "name": "backendPool1", + "properties": { + "backends": [ + { + "address": "w3.contoso.com", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 1, + "priority": 2 + }, + { + "address": "contoso.com.website-us-west-2.othercloud.net", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 2, + "priority": 1 + }, + { + "privateLinkAlias": "SQLSERVER.d84e61f0-0870-4d24-9746-7438fa0019d1.westus2.azure.privatelinkservice", + "privateEndpointStatus": "Approved", + "privateLinkApprovalMessage": "Please approve the connection request for this Private Link", + "address": "10.0.1.5", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 1, + "priority": 1 + } + ], + "loadBalancingSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/loadBalancingSettings/loadBalancingSettings1" + }, + "healthProbeSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/healthProbeSettings/healthProbeSettings1" + } + } + } + ], + "frontendEndpoints": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1", + "name": "frontendEndpoint1", + "properties": { + "hostName": "www.contoso.com", + "sessionAffinityEnabledState": "Enabled", + "sessionAffinityTtlSeconds": 60, + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoorWebApplicationFirewallPolicies/policy1" + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default", + "name": "default", + "properties": { + "hostName": "frontDoor1.azurefd.net" + } + } + ], + "backendPoolsSettings": { + "enforceCertificateNameCheck": "Enabled", + "sendRecvTimeoutSeconds": 60 + }, + "enabledState": "Enabled", + "resourceState": "Creating", + "provisioningState": "Provisioning", + "cname": "frontDoor1.azurefd.net" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1", + "name": "frontDoor1", + "type": "Microsoft.Network/frontDoor", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "routingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/routingRules/routingRule1", + "name": "routingRule1", + "properties": { + "frontendEndpoints": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default" + } + ], + "acceptedProtocols": [ + "Http" + ], + "patternsToMatch": [ + "/*" + ], + "routeConfiguration": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration", + "customForwardingPath": "", + "forwardingProtocol": "MatchRequest", + "backendPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1" + } + }, + "rulesEngine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/rulesEngines/rulesEngine1" + }, + "enabledState": "Enabled" + } + } + ], + "healthProbeSettings": [ + { + "name": "healthProbeSettings1", + "properties": { + "path": "/", + "protocol": "Http", + "intervalInSeconds": 120, + "enabledState": "Enabled", + "healthProbeMethod": "HEAD" + } + } + ], + "loadBalancingSettings": [ + { + "name": "loadBalancingSettings1", + "properties": { + "sampleSize": 4, + "successfulSamplesRequired": 2 + } + } + ], + "backendPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1", + "name": "backendPool1", + "properties": { + "backends": [ + { + "address": "w3.contoso.com", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 1, + "priority": 2 + }, + { + "address": "contoso.com.website-us-west-2.othercloud.net", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 2, + "priority": 1 + }, + { + "privateLinkAlias": "SQLSERVER.d84e61f0-0870-4d24-9746-7438fa0019d1.westus2.azure.privatelinkservice", + "privateEndpointStatus": "Approved", + "privateLinkApprovalMessage": "Please approve the connection request for this Private Link", + "address": "10.0.1.5", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 1, + "priority": 1 + } + ], + "loadBalancingSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/loadBalancingSettings/loadBalancingSettings1" + }, + "healthProbeSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/healthProbeSettings/healthProbeSettings1" + } + } + } + ], + "frontendEndpoints": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1", + "name": "frontendEndpoint1", + "properties": { + "hostName": "www.contoso.com", + "sessionAffinityEnabledState": "Enabled", + "sessionAffinityTtlSeconds": 60, + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoorWebApplicationFirewallPolicies/policy1" + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default", + "name": "default", + "properties": { + "hostName": "frontDoor1.azurefd.net" + } + } + ], + "backendPoolsSettings": { + "enforceCertificateNameCheck": "Enabled", + "sendRecvTimeoutSeconds": 60 + }, + "enabledState": "Enabled", + "resourceState": "Creating", + "provisioningState": "Provisioning", + "cname": "frontDoor1.azurefd.net" + } + } + } + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorDelete.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorDelete.json new file mode 100644 index 000000000000..814d7e07b8f4 --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "frontDoorName": "frontDoor1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorDisableHttps.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorDisableHttps.json new file mode 100644 index 000000000000..06f099fbbbf3 --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorDisableHttps.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "frontDoorName": "frontDoor1", + "frontendEndpointName": "frontendEndpoint1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorEnableHttps.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorEnableHttps.json new file mode 100644 index 000000000000..6e76f15751a9 --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorEnableHttps.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "frontDoorName": "frontDoor1", + "frontendEndpointName": "frontendEndpoint1", + "customHttpsConfiguration": { + "certificateSource": "AzureKeyVault", + "protocolType": "ServerNameIndication", + "minimumTlsVersion": "1.0", + "keyVaultCertificateSourceParameters": { + "vault": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.KeyVault/vaults/vault1" + }, + "secretName": "secret1", + "secretVersion": "00000000-0000-0000-0000-000000000000" + } + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorFrontendEndpointGet.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorFrontendEndpointGet.json new file mode 100644 index 000000000000..0c988091e7b2 --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorFrontendEndpointGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "frontDoorName": "frontDoor1", + "frontendEndpointName": "frontendEndpoint1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1", + "name": "frontendEndpoint1", + "properties": { + "hostName": "www.contoso.com", + "sessionAffinityEnabledState": "Enabled", + "sessionAffinityTtlSeconds": 60, + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoorWebApplicationFirewallPolicies/policy1" + } + } + } + } + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorFrontendEndpointList.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorFrontendEndpointList.json new file mode 100644 index 000000000000..05964d2aaec6 --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorFrontendEndpointList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "frontDoorName": "frontDoor1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1", + "name": "frontendEndpoint1", + "properties": { + "hostName": "www.contoso.com", + "sessionAffinityEnabledState": "Enabled", + "sessionAffinityTtlSeconds": 60, + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoorWebApplicationFirewallPolicies/policy1" + } + } + } + ] + } + } + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorGet.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorGet.json new file mode 100644 index 000000000000..ee642abc01b3 --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorGet.json @@ -0,0 +1,211 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "frontDoorName": "frontDoor1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1", + "name": "frontDoor1", + "type": "Microsoft.Network/frontDoor", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "routingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/routingRules/routingRule1", + "name": "routingRule1", + "properties": { + "frontendEndpoints": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default" + } + ], + "acceptedProtocols": [ + "Http" + ], + "patternsToMatch": [ + "/*" + ], + "routeConfiguration": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration", + "customForwardingPath": "", + "forwardingProtocol": "MatchRequest", + "backendPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1" + } + }, + "rulesEngine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/rulesEngines/rulesEngine1" + }, + "enabledState": "Enabled" + } + } + ], + "healthProbeSettings": [ + { + "name": "healthProbeSettings1", + "properties": { + "path": "/", + "protocol": "Http", + "intervalInSeconds": 120, + "enabledState": "Enabled", + "healthProbeMethod": "HEAD" + } + } + ], + "loadBalancingSettings": [ + { + "name": "loadBalancingSettings1", + "properties": { + "sampleSize": 4, + "successfulSamplesRequired": 2 + } + } + ], + "backendPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1", + "name": "backendPool1", + "properties": { + "backends": [ + { + "address": "w3.contoso.com", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 1, + "priority": 2 + }, + { + "address": "contoso.com.website-us-west-2.othercloud.net", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 2, + "priority": 1 + }, + { + "privateLinkAlias": "SQLSERVER.d84e61f0-0870-4d24-9746-7438fa0019d1.westus2.azure.privatelinkservice", + "privateEndpointStatus": "Approved", + "privateLinkApprovalMessage": "Please approve the connection request for this Private Link", + "address": "10.0.1.5", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 1, + "priority": 1 + } + ], + "loadBalancingSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/loadBalancingSettings/loadBalancingSettings1" + }, + "healthProbeSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/healthProbeSettings/healthProbeSettings1" + } + } + } + ], + "frontendEndpoints": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1", + "name": "frontendEndpoint1", + "properties": { + "hostName": "www.contoso.com", + "sessionAffinityEnabledState": "Enabled", + "sessionAffinityTtlSeconds": 60, + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoorWebApplicationFirewallPolicies/policy1" + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default", + "name": "default", + "properties": { + "hostName": "frontDoor1.azurefd.net" + } + } + ], + "rulesEngines": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/rulesEngines/rulesEngine1", + "name": "rulesEngine1", + "properties": { + "rules": [ + { + "name": "Rule1", + "priority": 1, + "action": { + "routeConfigurationOverride": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration", + "redirectType": "Moved", + "redirectProtocol": "HttpsOnly", + "customHost": "www.bing.com", + "customPath": "/api", + "customFragment": "fragment", + "customQueryString": "a=b" + } + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RemoteAddr", + "rulesEngineOperator": "GeoMatch", + "rulesEngineMatchValue": [ + "CH" + ] + } + ], + "matchProcessingBehavior": "Stop" + }, + { + "name": "Rule2", + "priority": 2, + "action": { + "responseHeaderActions": [ + { + "headerActionType": "Overwrite", + "headerName": "Cache-Control", + "value": "public, max-age=31536000" + } + ] + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "FilenameExtension", + "rulesEngineOperator": "Equal", + "rulesEngineMatchValue": [ + "jpg" + ], + "transforms": [ + "Lowercase" + ] + } + ] + } + ] + } + } + ], + "backendPoolsSettings": { + "enforceCertificateNameCheck": "Enabled", + "sendRecvTimeoutSeconds": 60 + }, + "enabledState": "Enabled", + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "cname": "frontDoor1.azurefd.net" + } + } + } + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorList.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorList.json new file mode 100644 index 000000000000..5affee4eeac4 --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorList.json @@ -0,0 +1,214 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1", + "name": "frontDoor1", + "type": "Microsoft.Network/frontDoor", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "routingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/routingRules/routingRule1", + "name": "routingRule1", + "properties": { + "frontendEndpoints": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default" + } + ], + "acceptedProtocols": [ + "Http" + ], + "patternsToMatch": [ + "/*" + ], + "routeConfiguration": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration", + "customForwardingPath": "", + "forwardingProtocol": "MatchRequest", + "backendPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1" + } + }, + "rulesEngine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/rulesEngines/rulesEngine1" + }, + "enabledState": "Enabled" + } + } + ], + "healthProbeSettings": [ + { + "name": "healthProbeSettings1", + "properties": { + "path": "/", + "protocol": "Http", + "intervalInSeconds": 120, + "enabledState": "Enabled", + "healthProbeMethod": "HEAD" + } + } + ], + "loadBalancingSettings": [ + { + "name": "loadBalancingSettings1", + "properties": { + "sampleSize": 4, + "successfulSamplesRequired": 2 + } + } + ], + "backendPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1", + "name": "backendPool1", + "properties": { + "backends": [ + { + "address": "w3.contoso.com", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 1, + "priority": 2 + }, + { + "address": "contoso.com.website-us-west-2.othercloud.net", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 2, + "priority": 1 + }, + { + "privateLinkAlias": "SQLSERVER.d84e61f0-0870-4d24-9746-7438fa0019d1.westus2.azure.privatelinkservice", + "privateEndpointStatus": "Approved", + "privateLinkApprovalMessage": "Please approve the connection request for this Private Link", + "address": "10.0.1.5", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 1, + "priority": 1 + } + ], + "loadBalancingSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/loadBalancingSettings/loadBalancingSettings1" + }, + "healthProbeSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/healthProbeSettings/healthProbeSettings1" + } + } + } + ], + "frontendEndpoints": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1", + "name": "frontendEndpoint1", + "properties": { + "hostName": "www.contoso.com", + "sessionAffinityEnabledState": "Enabled", + "sessionAffinityTtlSeconds": 60, + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoorWebApplicationFirewallPolicies/policy1" + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default", + "name": "default", + "properties": { + "hostName": "frontDoor1.azurefd.net" + } + } + ], + "rulesEngines": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/routingRules/rulesEngine1", + "name": "rulesEngine1", + "properties": { + "rules": [ + { + "name": "Rule1", + "priority": 1, + "action": { + "routeConfigurationOverride": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration", + "redirectType": "Moved", + "redirectProtocol": "HttpsOnly", + "customHost": "www.bing.com", + "customPath": "/api", + "customFragment": "fragment", + "customQueryString": "a=b" + } + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RemoteAddr", + "rulesEngineOperator": "GeoMatch", + "rulesEngineMatchValue": [ + "CH" + ] + } + ], + "matchProcessingBehavior": "Stop" + }, + { + "name": "Rule2", + "priority": 2, + "action": { + "responseHeaderActions": [ + { + "headerActionType": "Overwrite", + "headerName": "Cache-Control", + "value": "public, max-age=31536000" + } + ] + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "FilenameExtension", + "rulesEngineOperator": "Equal", + "rulesEngineMatchValue": [ + "jpg" + ], + "transforms": [ + "Lowercase" + ] + } + ] + } + ] + } + } + ], + "backendPoolsSettings": { + "enforceCertificateNameCheck": "Enabled", + "sendRecvTimeoutSeconds": 60 + }, + "enabledState": "Enabled", + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "cname": "frontDoor1.azurefd.net" + } + } + ] + } + } + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorListAll.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorListAll.json new file mode 100644 index 000000000000..3975d2759a87 --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorListAll.json @@ -0,0 +1,212 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1", + "name": "frontDoor1", + "type": "Microsoft.Network/frontDoor", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "routingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/routingRules/routingRule1", + "name": "routingRule1", + "properties": { + "frontendEndpoints": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default" + } + ], + "acceptedProtocols": [ + "Http" + ], + "patternsToMatch": [ + "/*" + ], + "routeConfiguration": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration", + "customForwardingPath": "", + "forwardingProtocol": "MatchRequest", + "backendPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1" + } + }, + "rulesEngine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/rulesEngines/rulesEngine1" + }, + "enabledState": "Enabled" + } + } + ], + "healthProbeSettings": [ + { + "name": "healthProbeSettings1", + "properties": { + "path": "/", + "protocol": "Http", + "intervalInSeconds": 120, + "enabledState": "Enabled", + "healthProbeMethod": "HEAD" + } + } + ], + "loadBalancingSettings": [ + { + "name": "loadBalancingSettings1", + "properties": { + "sampleSize": 4, + "successfulSamplesRequired": 2 + } + } + ], + "backendPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1", + "name": "backendPool1", + "properties": { + "backends": [ + { + "address": "w3.contoso.com", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 1, + "priority": 2 + }, + { + "address": "contoso.com.website-us-west-2.othercloud.net", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 2, + "priority": 1 + }, + { + "privateLinkAlias": "SQLSERVER.d84e61f0-0870-4d24-9746-7438fa0019d1.westus2.azure.privatelinkservice", + "privateEndpointStatus": "Approved", + "privateLinkApprovalMessage": "Please approve the connection request for this Private Link", + "address": "10.0.1.5", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled", + "weight": 1, + "priority": 1 + } + ], + "loadBalancingSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/loadBalancingSettings/loadBalancingSettings1" + }, + "healthProbeSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/healthProbeSettings/healthProbeSettings1" + } + } + } + ], + "frontendEndpoints": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1", + "name": "frontendEndpoint1", + "properties": { + "hostName": "www.contoso.com", + "sessionAffinityEnabledState": "Enabled", + "sessionAffinityTtlSeconds": 60, + "webApplicationFirewallPolicyLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoorWebApplicationFirewallPolicies/policy1" + } + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default", + "name": "default", + "properties": { + "hostName": "frontDoor1.azurefd.net" + } + } + ], + "rulesEngines": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/routingRules/rulesEngine1", + "name": "rulesEngine1", + "properties": { + "rules": [ + { + "name": "Rule1", + "priority": 1, + "action": { + "routeConfigurationOverride": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration", + "redirectType": "Moved", + "redirectProtocol": "HttpsOnly", + "customHost": "www.bing.com", + "customPath": "/api", + "customFragment": "fragment", + "customQueryString": "a=b" + } + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RemoteAddr", + "rulesEngineOperator": "GeoMatch", + "rulesEngineMatchValue": [ + "CH" + ] + } + ], + "matchProcessingBehavior": "Stop" + }, + { + "name": "Rule2", + "priority": 2, + "action": { + "responseHeaderActions": [ + { + "headerActionType": "Overwrite", + "headerName": "Cache-Control", + "value": "public, max-age=31536000" + } + ] + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "FilenameExtension", + "rulesEngineOperator": "Equal", + "rulesEngineMatchValue": [ + "jpg" + ], + "transforms": [ + "Lowercase" + ] + } + ] + } + ] + } + } + ], + "backendPoolsSettings": { + "enforceCertificateNameCheck": "Enabled" + }, + "enabledState": "Enabled", + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "cname": "frontDoor1.azurefd.net" + } + } + ] + } + } + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorPurgeContent.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorPurgeContent.json new file mode 100644 index 000000000000..3b4e998f963d --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorPurgeContent.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "frontDoorName": "frontDoor1", + "contentFilePaths": { + "contentPaths": [ + "/pictures.aspx", + "/pictures/*" + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorRulesEngineCreate.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorRulesEngineCreate.json new file mode 100644 index 000000000000..e7d7da48aca3 --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorRulesEngineCreate.json @@ -0,0 +1,281 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "frontDoorName": "frontDoor1", + "rulesEngineName": "rulesEngine1", + "rulesEngineParameters": { + "properties": { + "rules": [ + { + "name": "Rule1", + "priority": 1, + "action": { + "routeConfigurationOverride": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration", + "redirectType": "Moved", + "redirectProtocol": "HttpsOnly", + "customHost": "www.bing.com", + "customPath": "/api", + "customFragment": "fragment", + "customQueryString": "a=b" + } + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RemoteAddr", + "rulesEngineOperator": "GeoMatch", + "rulesEngineMatchValue": [ + "CH" + ] + } + ], + "matchProcessingBehavior": "Stop" + }, + { + "name": "Rule2", + "priority": 2, + "action": { + "responseHeaderActions": [ + { + "headerActionType": "Overwrite", + "headerName": "Cache-Control", + "value": "public, max-age=31536000" + } + ] + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RequestFilenameExtension", + "rulesEngineOperator": "Equal", + "rulesEngineMatchValue": [ + "jpg" + ], + "transforms": [ + "Lowercase" + ] + } + ] + }, + { + "name": "Rule3", + "priority": 3, + "action": { + "routeConfigurationOverride": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration", + "customForwardingPath": null, + "forwardingProtocol": "HttpsOnly", + "cacheConfiguration": { + "queryParameterStripDirective": "StripOnly", + "queryParameters": "a=b,p=q", + "dynamicCompression": "Disabled", + "cacheDuration": "P1DT12H20M30S" + }, + "backendPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1" + } + } + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RequestHeader", + "rulesEngineOperator": "Equal", + "rulesEngineMatchValue": [ + "allowoverride" + ], + "transforms": [ + "Lowercase" + ], + "negateCondition": false, + "selector": "Rules-Engine-Route-Forward" + } + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/rulesEngines/rulesEngine1", + "name": "rulesEngine1", + "properties": { + "rules": [ + { + "name": "Rule1", + "priority": 1, + "action": { + "routeConfigurationOverride": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration", + "redirectType": "Moved", + "redirectProtocol": "HttpsOnly", + "customHost": "www.bing.com", + "customPath": "/api", + "customFragment": "fragment", + "customQueryString": "a=b" + } + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RemoteAddr", + "rulesEngineOperator": "GeoMatch", + "rulesEngineMatchValue": [ + "CH" + ] + } + ], + "matchProcessingBehavior": "Stop" + }, + { + "name": "Rule2", + "priority": 2, + "action": { + "responseHeaderActions": [ + { + "headerActionType": "Overwrite", + "headerName": "Cache-Control", + "value": "public, max-age=31536000" + } + ] + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RequestFilenameExtension", + "rulesEngineOperator": "Equal", + "rulesEngineMatchValue": [ + "jpg" + ], + "transforms": [ + "Lowercase" + ] + } + ] + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/rulesEngines/rulesEngine1", + "name": "rulesEngine1", + "properties": { + "rules": [ + { + "name": "Rule1", + "priority": 1, + "action": { + "routeConfigurationOverride": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration", + "redirectType": "Moved", + "redirectProtocol": "HttpsOnly", + "customHost": "www.bing.com", + "customPath": "/api", + "customFragment": "fragment", + "customQueryString": "a=b" + } + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RemoteAddr", + "rulesEngineOperator": "GeoMatch", + "rulesEngineMatchValue": [ + "CH" + ] + } + ], + "matchProcessingBehavior": "Stop" + }, + { + "name": "Rule2", + "priority": 2, + "action": { + "responseHeaderActions": [ + { + "headerActionType": "Overwrite", + "headerName": "Cache-Control", + "value": "public, max-age=31536000" + } + ] + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RequestFilenameExtension", + "rulesEngineOperator": "Equal", + "rulesEngineMatchValue": [ + "jpg" + ], + "transforms": [ + "Lowercase" + ] + } + ] + } + ] + } + } + }, + "202": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/rulesEngines/rulesEngine1", + "name": "rulesEngine1", + "properties": { + "rules": [ + { + "name": "Rule1", + "priority": 1, + "action": { + "routeConfigurationOverride": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration", + "redirectType": "Moved", + "redirectProtocol": "HttpsOnly", + "customHost": "www.bing.com", + "customPath": "/api", + "customFragment": "fragment", + "customQueryString": "a=b" + } + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RemoteAddr", + "rulesEngineOperator": "GeoMatch", + "rulesEngineMatchValue": [ + "CH" + ] + } + ], + "matchProcessingBehavior": "Stop" + }, + { + "name": "Rule2", + "priority": 2, + "action": { + "responseHeaderActions": [ + { + "headerActionType": "Overwrite", + "headerName": "Cache-Control", + "value": "public, max-age=31536000" + } + ] + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "FilenameExtension", + "rulesEngineOperator": "Equal", + "rulesEngineMatchValue": [ + "jpg" + ], + "transforms": [ + "Lowercase" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorRulesEngineDelete.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorRulesEngineDelete.json new file mode 100644 index 000000000000..5d700c9ac01e --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorRulesEngineDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "frontDoorName": "frontDoor1", + "rulesEngineName": "rulesEngine1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorRulesEngineGet.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorRulesEngineGet.json new file mode 100644 index 000000000000..329e370ff82f --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorRulesEngineGet.json @@ -0,0 +1,105 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "frontDoorName": "frontDoor1", + "rulesEngineName": "rulesEngine1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/rulesEngines/rulesEngine1", + "name": "rulesEngine1", + "properties": { + "rules": [ + { + "name": "Rule1", + "priority": 1, + "action": { + "routeConfigurationOverride": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration", + "redirectType": "Moved", + "redirectProtocol": "HttpsOnly", + "customHost": "www.bing.com", + "customPath": "/api", + "customFragment": "fragment", + "customQueryString": "a=b" + } + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RemoteAddr", + "rulesEngineOperator": "GeoMatch", + "rulesEngineMatchValue": [ + "CH" + ] + } + ], + "matchProcessingBehavior": "Stop" + }, + { + "name": "Rule2", + "priority": 2, + "action": { + "responseHeaderActions": [ + { + "headerActionType": "Overwrite", + "headerName": "Cache-Control", + "value": "public, max-age=31536000" + } + ] + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RequestFilenameExtension", + "rulesEngineOperator": "Equal", + "rulesEngineMatchValue": [ + "jpg" + ], + "transforms": [ + "Lowercase" + ] + } + ] + }, + { + "name": "Rule3", + "priority": 3, + "action": { + "routeConfigurationOverride": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration", + "customForwardingPath": null, + "forwardingProtocol": "HttpsOnly", + "cacheConfiguration": { + "queryParameterStripDirective": "StripOnly", + "queryParameters": "a=b,p=q", + "dynamicCompression": "Disabled", + "cacheDuration": "P1DT12H20M30S" + }, + "backendPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1" + } + } + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RequestHeader", + "rulesEngineOperator": "Equal", + "rulesEngineMatchValue": [ + "allowoverride" + ], + "transforms": [ + "Lowercase" + ], + "negateCondition": false, + "selector": "Rules-Engine-Route-Forward" + } + ] + } + ] + } + } + } + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorRulesEngineList.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorRulesEngineList.json new file mode 100644 index 000000000000..bf1c2190f8e0 --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorRulesEngineList.json @@ -0,0 +1,108 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "frontDoorName": "frontDoor1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/rulesEngines/rulesEngine1", + "name": "rulesEngine1", + "properties": { + "rules": [ + { + "name": "Rule1", + "priority": 1, + "action": { + "routeConfigurationOverride": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration", + "redirectType": "Moved", + "redirectProtocol": "HttpsOnly", + "customHost": "www.bing.com", + "customPath": "/api", + "customFragment": "fragment", + "customQueryString": "a=b" + } + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RemoteAddr", + "rulesEngineOperator": "GeoMatch", + "rulesEngineMatchValue": [ + "CH" + ] + } + ], + "matchProcessingBehavior": "Stop" + }, + { + "name": "Rule2", + "priority": 2, + "action": { + "responseHeaderActions": [ + { + "headerActionType": "Overwrite", + "headerName": "Cache-Control", + "value": "public, max-age=31536000" + } + ] + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RequestFilenameExtension", + "rulesEngineOperator": "Equal", + "rulesEngineMatchValue": [ + "jpg" + ], + "transforms": [ + "Lowercase" + ] + } + ] + }, + { + "name": "Rule3", + "priority": 3, + "action": { + "routeConfigurationOverride": { + "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration", + "customForwardingPath": null, + "forwardingProtocol": "HttpsOnly", + "cacheConfiguration": { + "queryParameterStripDirective": "StripOnly", + "queryParameters": "a=b,p=q", + "dynamicCompression": "Disabled", + "cacheDuration": "P1DT12H20M30S" + }, + "backendPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1" + } + } + }, + "matchConditions": [ + { + "rulesEngineMatchVariable": "RequestHeader", + "rulesEngineOperator": "Equal", + "rulesEngineMatchValue": [ + "allowoverride" + ], + "transforms": [ + "Lowercase" + ], + "negateCondition": false, + "selector": "Rules-Engine-Route-Forward" + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorValidateCustomDomain.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorValidateCustomDomain.json new file mode 100644 index 000000000000..fe9797031ed6 --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/examples/FrontdoorValidateCustomDomain.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "frontDoorName": "frontDoor1", + "customDomainProperties": { + "hostName": "www.someDomain.com" + } + }, + "responses": { + "200": { + "body": { + "customDomainValidated": true, + "message": null, + "reason": null + } + } + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/frontdoor.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/frontdoor.json new file mode 100644 index 000000000000..1fac62bfeda9 --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/frontdoor.json @@ -0,0 +1,2340 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-01-01", + "title": "FrontDoorManagementClient", + "description": "Use these APIs to manage Azure Front Door resources through the Azure Resource Manager. You must make sure that requests made to these resources are secure." + }, + "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": { + "/providers/Microsoft.Network/checkFrontDoorNameAvailability": { + "post": { + "tags": [ + "CheckFrontDoorNameAvailability" + ], + "description": "Check the availability of a Front Door resource name.", + "operationId": "CheckFrontDoorNameAvailability", + "x-ms-examples": { + "CheckNameAvailability": { + "$ref": "./examples/CheckFrontdoorNameAvailability.json" + } + }, + "parameters": [ + { + "name": "checkFrontDoorNameAvailabilityInput", + "in": "body", + "description": "Input to check.", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityInput" + } + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityOutput" + } + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/checkFrontDoorNameAvailability": { + "post": { + "tags": [ + "CheckFrontDoorNameAvailabilityWithSubscription" + ], + "description": "Check the availability of a Front Door subdomain.", + "operationId": "CheckFrontDoorNameAvailabilityWithSubscription", + "x-ms-examples": { + "CheckNameAvailabilityWithSubscription": { + "$ref": "./examples/CheckFrontdoorNameAvailabilityWithSubscription.json" + } + }, + "parameters": [ + { + "name": "checkFrontDoorNameAvailabilityInput", + "in": "body", + "description": "Input to check.", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityInput" + } + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityOutput" + } + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/frontDoors": { + "get": { + "tags": [ + "FrontDoors" + ], + "description": "Lists all of the Front Doors within an Azure subscription.", + "operationId": "FrontDoors_List", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/FrontDoorListResult" + } + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List all Front Doors": { + "$ref": "./examples/FrontdoorListAll.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors": { + "get": { + "tags": [ + "FrontDoors" + ], + "description": "Lists all of the Front Doors within a resource group under a subscription.", + "operationId": "FrontDoors_ListByResourceGroup", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/FrontDoorListResult" + } + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Front Doors in a Resource Group": { + "$ref": "./examples/FrontdoorList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}": { + "get": { + "tags": [ + "FrontDoors" + ], + "description": "Gets a Front Door with the specified Front Door name under the specified subscription and resource group.", + "operationId": "FrontDoors_Get", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/frontDoorNameParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/FrontDoor" + } + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Front Door": { + "$ref": "./examples/FrontdoorGet.json" + } + } + }, + "put": { + "tags": [ + "FrontDoors" + ], + "description": "Creates a new Front Door with a Front Door name under the specified subscription and resource group.", + "operationId": "FrontDoors_CreateOrUpdate", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/frontDoorNameParameter" + }, + { + "description": "Front Door properties needed to create a new Front Door.", + "in": "body", + "name": "frontDoorParameters", + "required": true, + "schema": { + "$ref": "#/definitions/FrontDoor" + } + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/FrontDoor" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new Front Door has been created.", + "schema": { + "$ref": "#/definitions/FrontDoor" + } + }, + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/FrontDoor" + } + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update specific Front Door": { + "$ref": "./examples/FrontdoorCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "tags": [ + "FrontDoors" + ], + "description": "Deletes an existing Front Door with the specified parameters.", + "operationId": "FrontDoors_Delete", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/frontDoorNameParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously." + }, + "204": { + "description": "No Content. The request has been accepted but the Front Door was not found." + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete Front Door": { + "$ref": "./examples/FrontdoorDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/frontendEndpoints": { + "get": { + "tags": [ + "FrontDoors" + ], + "description": "Lists all of the frontend endpoints within a Front Door.", + "operationId": "FrontendEndpoints_ListByFrontDoor", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/frontDoorNameParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/FrontendEndpointsListResult" + } + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Frontend endpoints in a Front Door": { + "$ref": "./examples/FrontdoorFrontendEndpointList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/frontendEndpoints/{frontendEndpointName}": { + "get": { + "tags": [ + "FrontDoors" + ], + "description": "Gets a Frontend endpoint with the specified name within the specified Front Door.", + "operationId": "FrontendEndpoints_Get", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/frontDoorNameParameter" + }, + { + "$ref": "#/parameters/frontendEndpointNameParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/FrontendEndpoint" + } + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Frontend Endpoint": { + "$ref": "./examples/FrontdoorFrontendEndpointGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/purge": { + "post": { + "tags": [ + "FrontDoors" + ], + "description": "Removes a content from Front Door.", + "operationId": "Endpoints_PurgeContent", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/frontDoorNameParameter" + }, + { + "name": "contentFilePaths", + "in": "body", + "description": "The path to the content to be purged. Path can be a full URL, e.g. '/pictures/city.png' which removes a single file, or a directory with a wildcard, e.g. '/pictures/*' which removes all folders and files in the directory.", + "required": true, + "schema": { + "$ref": "#/definitions/PurgeParameters" + } + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Purge content from Front Door": { + "$ref": "./examples/FrontdoorPurgeContent.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/frontendEndpoints/{frontendEndpointName}/enableHttps": { + "post": { + "tags": [ + "FrontDoors" + ], + "description": "Enables a frontendEndpoint for HTTPS traffic", + "operationId": "FrontendEndpoints_EnableHttps", + "x-ms-examples": { + "FrontendEndpoints_EnableHttps": { + "$ref": "./examples/FrontdoorEnableHttps.json" + } + }, + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/frontDoorNameParameter" + }, + { + "$ref": "#/parameters/frontendEndpointNameParameter" + }, + { + "name": "customHttpsConfiguration", + "in": "body", + "description": "The configuration specifying how to enable HTTPS", + "required": true, + "schema": { + "$ref": "#/definitions/CustomHttpsConfiguration" + } + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/frontendEndpoints/{frontendEndpointName}/disableHttps": { + "post": { + "tags": [ + "FrontDoors" + ], + "description": "Disables a frontendEndpoint for HTTPS traffic", + "operationId": "FrontendEndpoints_DisableHttps", + "x-ms-examples": { + "FrontendEndpoints_DisableHttps": { + "$ref": "./examples/FrontdoorDisableHttps.json" + } + }, + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/frontDoorNameParameter" + }, + { + "$ref": "#/parameters/frontendEndpointNameParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/validateCustomDomain": { + "post": { + "tags": [ + "FrontDoors" + ], + "description": "Validates the custom domain mapping to ensure it maps to the correct Front Door endpoint in DNS.", + "operationId": "FrontDoors_ValidateCustomDomain", + "x-ms-examples": { + "FrontDoor_ValidateCustomDomain": { + "$ref": "./examples/FrontdoorValidateCustomDomain.json" + } + }, + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/frontDoorNameParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "customDomainProperties", + "in": "body", + "description": "Custom domain to be validated.", + "required": true, + "schema": { + "$ref": "#/definitions/ValidateCustomDomainInput" + } + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ValidateCustomDomainOutput" + } + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/rulesEngines": { + "get": { + "tags": [ + "FrontDoors" + ], + "description": "Lists all of the Rules Engine Configurations within a Front Door.", + "operationId": "RulesEngines_ListByFrontDoor", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/frontDoorNameParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/RulesEngineListResult" + } + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Rules Engine Configurations in a Front Door": { + "$ref": "./examples/FrontdoorRulesEngineList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/rulesEngines/{rulesEngineName}": { + "get": { + "tags": [ + "FrontDoors" + ], + "description": "Gets a Rules Engine Configuration with the specified name within the specified Front Door.", + "operationId": "RulesEngines_Get", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/frontDoorNameParameter" + }, + { + "$ref": "#/parameters/rulesEngineNameParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/RulesEngine" + } + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Rules Engine Configuration": { + "$ref": "./examples/FrontdoorRulesEngineGet.json" + } + } + }, + "put": { + "tags": [ + "FrontDoors" + ], + "description": "Creates a new Rules Engine Configuration with the specified name within the specified Front Door.", + "operationId": "RulesEngines_CreateOrUpdate", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/frontDoorNameParameter" + }, + { + "$ref": "#/parameters/rulesEngineNameParameter" + }, + { + "description": "Rules Engine Configuration properties needed to create a new Rules Engine Configuration.", + "in": "body", + "name": "rulesEngineParameters", + "required": true, + "schema": { + "$ref": "#/definitions/RulesEngine" + } + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/RulesEngine" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new RulesEngine has been created.", + "schema": { + "$ref": "#/definitions/RulesEngine" + } + }, + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/RulesEngine" + } + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update a specific Rules Engine Configuration": { + "$ref": "./examples/FrontdoorRulesEngineCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "tags": [ + "FrontDoors" + ], + "description": "Deletes an existing Rules Engine Configuration with the specified parameters.", + "operationId": "RulesEngines_Delete", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/frontDoorNameParameter" + }, + { + "$ref": "#/parameters/rulesEngineNameParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously." + }, + "204": { + "description": "No Content. The request has been accepted but the Rules Engine Configuration was not found." + }, + "default": { + "description": "Front Door error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete Rules Engine Configuration": { + "$ref": "./examples/FrontdoorRulesEngineDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + } + }, + "definitions": { + "FrontDoor": { + "properties": { + "properties": { + "description": "Properties of the Front Door Load Balancer", + "x-ms-client-flatten": true, + "$ref": "#/definitions/FrontDoorProperties" + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Front Door represents a collection of backend endpoints to route traffic to along with rules that specify how traffic is sent there." + }, + "FrontDoorUpdateParameters": { + "description": "The properties needed to update a Front Door", + "properties": { + "friendlyName": { + "description": "A friendly name for the frontDoor", + "type": "string" + }, + "routingRules": { + "description": "Routing rules associated with this Front Door.", + "type": "array", + "items": { + "description": "A routing rule", + "$ref": "#/definitions/RoutingRule" + } + }, + "loadBalancingSettings": { + "description": "Load balancing settings associated with this Front Door instance.", + "type": "array", + "items": { + "description": "A load balancing settings", + "$ref": "#/definitions/LoadBalancingSettingsModel" + } + }, + "healthProbeSettings": { + "description": "Health probe settings associated with this Front Door instance.", + "type": "array", + "items": { + "description": "A health probe settings", + "$ref": "#/definitions/HealthProbeSettingsModel" + } + }, + "backendPools": { + "description": "Backend pools available to routing rules.", + "type": "array", + "items": { + "description": "A backend pool", + "$ref": "#/definitions/BackendPool" + } + }, + "frontendEndpoints": { + "description": "Frontend endpoints available to routing rules.", + "type": "array", + "items": { + "description": "A frontend endpoint", + "$ref": "#/definitions/FrontendEndpoint" + } + }, + "backendPoolsSettings": { + "description": "Settings for all backendPools", + "$ref": "#/definitions/BackendPoolsSettings" + }, + "enabledState": { + "description": "Operational status of the Front Door load balancer. Permitted values are 'Enabled' or 'Disabled'", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "FrontDoorEnabledState", + "modelAsString": true + } + } + } + }, + "FrontDoorProperties": { + "description": "The JSON object that contains the properties required to create an endpoint.", + "allOf": [ + { + "$ref": "#/definitions/FrontDoorUpdateParameters" + } + ], + "properties": { + "resourceState": { + "description": "Resource status of the Front Door.", + "$ref": "#/definitions/ResourceState" + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "Provisioning state of the Front Door." + }, + "cname": { + "readOnly": true, + "type": "string", + "description": "The host that each frontendEndpoint must CNAME to." + }, + "frontdoorId": { + "readOnly": true, + "type": "string", + "description": "The Id of the frontdoor." + }, + "rulesEngines": { + "readOnly": true, + "description": "Rules Engine Configurations available to routing rules.", + "type": "array", + "items": { + "description": "A rules engine configuration.", + "$ref": "#/definitions/RulesEngine" + } + } + } + }, + "FrontDoorListResult": { + "description": "Result of the request to list Front Doors. It contains a list of Front Door objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/FrontDoor" + }, + "description": "List of Front Doors within a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of Front Door objects if there are any." + } + } + }, + "PurgeParameters": { + "type": "object", + "description": "Parameters required for content purge.", + "required": [ + "contentPaths" + ], + "properties": { + "contentPaths": { + "description": "The path to the content to be purged. Can describe a file path or a wild card directory.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "RoutingRule": { + "properties": { + "properties": { + "description": "Properties of the Front Door Routing Rule", + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoutingRuleProperties" + }, + "name": { + "type": "string", + "description": "Resource name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "A routing rule represents a specification for traffic to treat and where to send it, along with health probe information." + }, + "RoutingRuleProperties": { + "description": "The JSON object that contains the properties required to create a routing rule.", + "allOf": [ + { + "$ref": "#/definitions/RoutingRuleUpdateParameters" + } + ], + "properties": { + "resourceState": { + "description": "Resource status.", + "$ref": "#/definitions/ResourceState" + } + } + }, + "RoutingRuleListResult": { + "description": "Result of the request to list Routing Rules. It contains a list of Routing Rule objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/RoutingRule" + }, + "description": "List of Routing Rules within a Front Door." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of RoutingRule objects if there are any." + } + } + }, + "RoutingRuleUpdateParameters": { + "description": "Routing rules to apply to an endpoint", + "type": "object", + "properties": { + "frontendEndpoints": { + "description": "Frontend endpoints associated with this rule", + "type": "array", + "items": { + "description": "A reference to a frontend endpoint", + "$ref": "./network.json#/definitions/SubResource" + } + }, + "acceptedProtocols": { + "description": "Protocol schemes to match for this rule", + "type": "array", + "items": { + "type": "string", + "description": "Accepted protocol schemes.", + "enum": [ + "Http", + "Https" + ], + "x-ms-enum": { + "name": "FrontDoorProtocol", + "modelAsString": true + } + } + }, + "patternsToMatch": { + "description": "The route patterns of the rule.", + "type": "array", + "items": { + "type": "string", + "description": "A route pattern of the rule. Must not have any * except possibly after the final / at the end of the path." + } + }, + "enabledState": { + "description": "Whether to enable use of this rule. Permitted values are 'Enabled' or 'Disabled'", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "routingRuleEnabledState", + "modelAsString": true + } + }, + "routeConfiguration": { + "description": "A reference to the routing configuration.", + "$ref": "#/definitions/RouteConfiguration" + }, + "rulesEngine": { + "description": "A reference to a specific Rules Engine Configuration to apply to this route.", + "$ref": "./network.json#/definitions/SubResource" + } + } + }, + "RouteConfiguration": { + "discriminator": "@odata.type", + "description": "Base class for all types of Route.", + "properties": { + "@odata.type": { + "type": "string" + } + }, + "required": [ + "@odata.type" + ] + }, + "ForwardingConfiguration": { + "description": "Describes Forwarding Route.", + "x-ms-discriminator-value": "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration", + "properties": { + "customForwardingPath": { + "description": "A custom path used to rewrite resource paths matched by this rule. Leave empty to use incoming path.", + "type": "string" + }, + "forwardingProtocol": { + "description": "Protocol this rule will use when forwarding traffic to backends.", + "type": "string", + "enum": [ + "HttpOnly", + "HttpsOnly", + "MatchRequest" + ], + "x-ms-enum": { + "name": "FrontDoorForwardingProtocol", + "modelAsString": true + } + }, + "cacheConfiguration": { + "description": "The caching configuration associated with this rule.", + "$ref": "#/definitions/CacheConfiguration" + }, + "backendPool": { + "description": "A reference to the BackendPool which this rule routes to.", + "$ref": "./network.json#/definitions/SubResource" + } + }, + "allOf": [ + { + "$ref": "#/definitions/RouteConfiguration" + } + ] + }, + "RedirectConfiguration": { + "description": "Describes Redirect Route.", + "x-ms-discriminator-value": "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration", + "properties": { + "redirectType": { + "description": "The redirect type the rule will use when redirecting traffic.", + "type": "string", + "enum": [ + "Moved", + "Found", + "TemporaryRedirect", + "PermanentRedirect" + ], + "x-ms-enum": { + "name": "FrontDoorRedirectType", + "modelAsString": true + } + }, + "redirectProtocol": { + "description": "The protocol of the destination to where the traffic is redirected", + "type": "string", + "enum": [ + "HttpOnly", + "HttpsOnly", + "MatchRequest" + ], + "x-ms-enum": { + "name": "FrontDoorRedirectProtocol", + "modelAsString": true + } + }, + "customHost": { + "type": "string", + "description": "Host to redirect. Leave empty to use the incoming host as the destination host." + }, + "customPath": { + "type": "string", + "description": "The full path to redirect. Path cannot be empty and must start with /. Leave empty to use the incoming path as destination path." + }, + "customFragment": { + "type": "string", + "description": "Fragment to add to the redirect URL. Fragment is the part of the URL that comes after #. Do not include the #." + }, + "customQueryString": { + "description": "The set of query strings to be placed in the redirect URL. Setting this value would replace any existing query string; leave empty to preserve the incoming query string. Query string must be in = format. The first ? and & will be added automatically so do not include them in the front, but do separate multiple query strings with &.", + "type": "string" + } + }, + "allOf": [ + { + "$ref": "#/definitions/RouteConfiguration" + } + ] + }, + "Backend": { + "description": "Backend address of a frontDoor load balancer.", + "type": "object", + "properties": { + "address": { + "description": "Location of the backend (IP address or FQDN)", + "type": "string" + }, + "privateLinkAlias": { + "description": "The Alias of the Private Link resource. Populating this optional field indicates that this backend is 'Private'", + "type": "string" + }, + "privateEndpointStatus": { + "description": "The Approval status for the connection to the Private Link", + "type": "string", + "readOnly": true, + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected", + "Timeout" + ], + "x-ms-enum": { + "name": "PrivateEndpointStatus", + "modelAsString": false + } + }, + "privateLinkApprovalMessage": { + "description": "A custom message to be included in the approval request to connect to the Private Link", + "type": "string" + }, + "httpPort": { + "description": "The HTTP TCP port number. Must be between 1 and 65535.", + "type": "integer", + "maximum": 65535, + "exclusiveMaximum": false, + "minimum": 1, + "exclusiveMinimum": false + }, + "httpsPort": { + "description": "The HTTPS TCP port number. Must be between 1 and 65535.", + "type": "integer", + "maximum": 65535, + "exclusiveMaximum": false, + "minimum": 1, + "exclusiveMinimum": false + }, + "enabledState": { + "description": "Whether to enable use of this backend. Permitted values are 'Enabled' or 'Disabled'", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "backendEnabledState", + "modelAsString": true + } + }, + "priority": { + "description": "Priority to use for load balancing. Higher priorities will not be used for load balancing if any lower priority backend is healthy.", + "type": "integer", + "maximum": 5, + "minimum": 1 + }, + "weight": { + "description": "Weight of this endpoint for load balancing purposes.", + "type": "integer", + "maximum": 1000, + "minimum": 1 + }, + "backendHostHeader": { + "description": "The value to use as the host header sent to the backend. If blank or unspecified, this defaults to the incoming host.", + "type": "string" + } + } + }, + "LoadBalancingSettingsModel": { + "properties": { + "properties": { + "description": "Properties of the load balancing settings", + "x-ms-client-flatten": true, + "$ref": "#/definitions/LoadBalancingSettingsProperties" + }, + "name": { + "type": "string", + "description": "Resource name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Load balancing settings for a backend pool" + }, + "LoadBalancingSettingsProperties": { + "description": "The JSON object that contains the properties required to create load balancing settings", + "allOf": [ + { + "$ref": "#/definitions/LoadBalancingSettingsUpdateParameters" + } + ], + "properties": { + "resourceState": { + "description": "Resource status.", + "$ref": "#/definitions/ResourceState" + } + } + }, + "LoadBalancingSettingsListResult": { + "description": "Result of the request to list load balancing settings. It contains a list of load balancing settings objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/LoadBalancingSettingsModel" + }, + "description": "List of Backend Pools within a Front Door." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of LoadBalancingSettings objects if there are any." + } + } + }, + "LoadBalancingSettingsUpdateParameters": { + "description": "Round-Robin load balancing settings for a backend pool", + "type": "object", + "properties": { + "sampleSize": { + "description": "The number of samples to consider for load balancing decisions", + "type": "integer" + }, + "successfulSamplesRequired": { + "description": "The number of samples within the sample period that must succeed", + "type": "integer" + }, + "additionalLatencyMilliseconds": { + "description": "The additional latency in milliseconds for probes to fall into the lowest latency bucket", + "type": "integer" + } + } + }, + "HealthProbeSettingsModel": { + "properties": { + "properties": { + "description": "Properties of the health probe settings", + "x-ms-client-flatten": true, + "$ref": "#/definitions/HealthProbeSettingsProperties" + }, + "name": { + "type": "string", + "description": "Resource name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Load balancing settings for a backend pool" + }, + "HealthProbeSettingsProperties": { + "description": "The JSON object that contains the properties required to create a health probe settings.", + "allOf": [ + { + "$ref": "#/definitions/HealthProbeSettingsUpdateParameters" + } + ], + "properties": { + "resourceState": { + "description": "Resource status.", + "$ref": "#/definitions/ResourceState" + } + } + }, + "HealthProbeSettingsListResult": { + "description": "Result of the request to list HealthProbeSettings. It contains a list of HealthProbeSettings objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/HealthProbeSettingsModel" + }, + "description": "List of HealthProbeSettings within a Front Door." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of HealthProbeSettings objects if there are any." + } + } + }, + "HealthProbeSettingsUpdateParameters": { + "description": "L7 health probe settings for a backend pool", + "type": "object", + "properties": { + "path": { + "description": "The path to use for the health probe. Default is /", + "type": "string" + }, + "protocol": { + "description": "Protocol scheme to use for this probe", + "type": "string", + "enum": [ + "Http", + "Https" + ], + "x-ms-enum": { + "name": "FrontDoorProtocol", + "modelAsString": true + } + }, + "intervalInSeconds": { + "description": "The number of seconds between health probes.", + "type": "integer" + }, + "healthProbeMethod": { + "description": "Configures which HTTP method to use to probe the backends defined under backendPools.", + "type": "string", + "enum": [ + "GET", + "HEAD" + ], + "x-ms-enum": { + "name": "FrontDoorHealthProbeMethod", + "modelAsString": true + }, + "default": "HEAD" + }, + "enabledState": { + "description": "Whether to enable health probes to be made against backends defined under backendPools. Health probes can only be disabled if there is a single enabled backend in single enabled backend pool.", + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "HealthProbeEnabled", + "modelAsString": true + } + } + } + }, + "BackendPool": { + "properties": { + "properties": { + "description": "Properties of the Front Door Backend Pool", + "x-ms-client-flatten": true, + "$ref": "#/definitions/BackendPoolProperties" + }, + "name": { + "type": "string", + "description": "Resource name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "A backend pool is a collection of backends that can be routed to." + }, + "BackendPoolUpdateParameters": { + "description": "A collection of backends that can be routed to.", + "type": "object", + "properties": { + "backends": { + "description": "The set of backends for this pool", + "type": "array", + "items": { + "$ref": "#/definitions/Backend" + } + }, + "loadBalancingSettings": { + "description": "Load balancing settings for a backend pool", + "$ref": "./network.json#/definitions/SubResource" + }, + "healthProbeSettings": { + "description": "L7 health probe settings for a backend pool", + "$ref": "./network.json#/definitions/SubResource" + } + } + }, + "BackendPoolProperties": { + "description": "The JSON object that contains the properties required to create a Backend Pool.", + "allOf": [ + { + "$ref": "#/definitions/BackendPoolUpdateParameters" + } + ], + "properties": { + "resourceState": { + "description": "Resource status.", + "$ref": "#/definitions/ResourceState" + } + } + }, + "BackendPoolListResult": { + "description": "Result of the request to list Backend Pools. It contains a list of Backend Pools objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/BackendPool" + }, + "description": "List of Backend Pools within a Front Door." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of BackendPool objects if there are any." + } + } + }, + "CacheConfiguration": { + "description": "Caching settings for a caching-type route. To disable caching, do not provide a cacheConfiguration object.", + "type": "object", + "properties": { + "queryParameterStripDirective": { + "description": "Treatment of URL query terms when forming the cache key.", + "enum": [ + "StripNone", + "StripAll", + "StripOnly", + "StripAllExcept" + ], + "type": "string", + "x-ms-enum": { + "name": "FrontDoorQuery", + "modelAsString": true + } + }, + "queryParameters": { + "description": "query parameters to include or exclude (comma separated).", + "type": "string" + }, + "dynamicCompression": { + "description": "Whether to use dynamic compression for cached content", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "DynamicCompressionEnabled", + "modelAsString": true + } + }, + "cacheDuration": { + "description": "The duration for which the content needs to be cached. Allowed format is in ISO 8601 format (http://en.wikipedia.org/wiki/ISO_8601#Durations). HTTP requires the value to be no more than a year", + "type": "string", + "format": "duration" + } + } + }, + "KeyVaultCertificateSourceParameters": { + "description": "Parameters required for bring-your-own-certification via Key Vault", + "type": "object", + "properties": { + "vault": { + "description": "The Key Vault containing the SSL certificate", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + } + } + }, + "secretName": { + "type": "string", + "description": "The name of the Key Vault secret representing the full certificate PFX" + }, + "secretVersion": { + "type": "string", + "description": "The version of the Key Vault secret representing the full certificate PFX" + } + } + }, + "FrontDoorCertificateSourceParameters": { + "description": "Parameters required for enabling SSL with Front Door-managed certificates", + "type": "object", + "properties": { + "certificateType": { + "description": "Defines the type of the certificate used for secure connections to a frontendEndpoint", + "enum": [ + "Dedicated" + ], + "type": "string", + "x-ms-enum": { + "name": "FrontDoorCertificateType", + "modelAsString": true + } + } + } + }, + "CustomHttpsConfiguration": { + "description": "Https settings for a domain", + "type": "object", + "required": [ + "minimumTlsVersion", + "certificateSource", + "protocolType" + ], + "properties": { + "certificateSource": { + "description": "Defines the source of the SSL certificate", + "enum": [ + "AzureKeyVault", + "FrontDoor" + ], + "type": "string", + "x-ms-enum": { + "name": "FrontDoorCertificateSource", + "modelAsString": true + } + }, + "protocolType": { + "description": "Defines the TLS extension protocol that is used for secure delivery", + "enum": [ + "ServerNameIndication" + ], + "type": "string", + "x-ms-enum": { + "name": "FrontDoorTlsProtocolType", + "modelAsString": true + } + }, + "minimumTlsVersion": { + "description": "The minimum TLS version required from the clients to establish an SSL handshake with Front Door.", + "enum": [ + "1.0", + "1.2" + ], + "type": "string", + "x-ms-enum": { + "name": "MinimumTLSVersion", + "modelAsString": true + } + }, + "keyVaultCertificateSourceParameters": { + "description": "KeyVault certificate source parameters (if certificateSource=AzureKeyVault)", + "x-ms-client-flatten": true, + "$ref": "#/definitions/KeyVaultCertificateSourceParameters" + }, + "frontDoorCertificateSourceParameters": { + "description": "Parameters required for enabling SSL with Front Door-managed certificates (if certificateSource=FrontDoor)", + "x-ms-client-flatten": true, + "$ref": "#/definitions/FrontDoorCertificateSourceParameters" + } + } + }, + "FrontendEndpoint": { + "properties": { + "properties": { + "description": "Properties of the Frontend endpoint", + "x-ms-client-flatten": true, + "$ref": "#/definitions/FrontendEndpointProperties" + }, + "name": { + "type": "string", + "description": "Resource name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "A frontend endpoint used for routing." + }, + "FrontendEndpointProperties": { + "description": "The JSON object that contains the properties required to create a frontend endpoint.", + "allOf": [ + { + "$ref": "#/definitions/FrontendEndpointUpdateParameters" + } + ], + "properties": { + "resourceState": { + "description": "Resource status.", + "$ref": "#/definitions/ResourceState" + }, + "customHttpsProvisioningState": { + "description": "Provisioning status of Custom Https of the frontendEndpoint.", + "readOnly": true, + "enum": [ + "Enabling", + "Enabled", + "Disabling", + "Disabled", + "Failed" + ], + "type": "string", + "x-ms-enum": { + "name": "CustomHttpsProvisioningState", + "modelAsString": true + } + }, + "customHttpsProvisioningSubstate": { + "description": "Provisioning substate shows the progress of custom HTTPS enabling/disabling process step by step.", + "readOnly": true, + "enum": [ + "SubmittingDomainControlValidationRequest", + "PendingDomainControlValidationREquestApproval", + "DomainControlValidationRequestApproved", + "DomainControlValidationRequestRejected", + "DomainControlValidationRequestTimedOut", + "IssuingCertificate", + "DeployingCertificate", + "CertificateDeployed", + "DeletingCertificate", + "CertificateDeleted" + ], + "type": "string", + "x-ms-enum": { + "name": "CustomHttpsProvisioningSubstate", + "modelAsString": true + } + }, + "customHttpsConfiguration": { + "description": "The configuration specifying how to enable HTTPS", + "readOnly": true, + "$ref": "#/definitions/CustomHttpsConfiguration" + } + } + }, + "FrontendEndpointUpdateParameters": { + "description": "Frontend endpoint used in routing rule", + "type": "object", + "properties": { + "hostName": { + "description": "The host name of the frontendEndpoint. Must be a domain name.", + "type": "string" + }, + "sessionAffinityEnabledState": { + "description": "Whether to allow session affinity on this host. Valid options are 'Enabled' or 'Disabled'", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "SessionAffinityEnabledState", + "modelAsString": true + } + }, + "sessionAffinityTtlSeconds": { + "description": "UNUSED. This field will be ignored. The TTL to use in seconds for session affinity, if applicable.", + "type": "integer" + }, + "webApplicationFirewallPolicyLink": { + "description": "Defines the Web Application Firewall policy for each host (if applicable)", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + } + } + } + } + }, + "FrontendEndpointsListResult": { + "description": "Result of the request to list frontend endpoints. It contains a list of Frontend endpoint objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/FrontendEndpoint" + }, + "description": "List of Frontend endpoints within a Front Door." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of frontend endpoints if there are any." + } + } + }, + "BackendPoolsSettings": { + "description": "Settings that apply to all backend pools.", + "type": "object", + "properties": { + "enforceCertificateNameCheck": { + "description": "Whether to enforce certificate name check on HTTPS requests to all backend pools. No effect on non-HTTPS requests.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "enforceCertificateNameCheckEnabledState", + "modelAsString": true + }, + "default": "Enabled" + }, + "sendRecvTimeoutSeconds": { + "description": "Send and receive timeout on forwarding request to the backend. When timeout is reached, the request fails and returns.", + "type": "integer", + "minimum": 16, + "exclusiveMinimum": false + } + } + }, + "HeaderAction": { + "description": "An action that can manipulate an http header.", + "required": [ + "headerActionType", + "headerName" + ], + "properties": { + "headerActionType": { + "description": "Which type of manipulation to apply to the header.", + "type": "string", + "enum": [ + "Append", + "Delete", + "Overwrite" + ], + "x-ms-enum": { + "name": "headerActionType", + "modelAsString": true + } + }, + "headerName": { + "description": "The name of the header this action will apply to.", + "type": "string" + }, + "value": { + "description": "The value to update the given header name with. This value is not used if the actionType is Delete.", + "type": "string" + } + } + }, + "RulesEngineMatchCondition": { + "description": "Define a match condition", + "required": [ + "rulesEngineMatchVariable", + "rulesEngineOperator", + "rulesEngineMatchValue" + ], + "properties": { + "rulesEngineMatchVariable": { + "description": "Match Variable", + "type": "string", + "enum": [ + "IsMobile", + "RemoteAddr", + "RequestMethod", + "QueryString", + "PostArgs", + "RequestUri", + "RequestPath", + "RequestFilename", + "RequestFilenameExtension", + "RequestHeader", + "RequestBody", + "RequestScheme" + ], + "x-ms-enum": { + "name": "RulesEngineMatchVariable", + "modelAsString": true + } + }, + "selector": { + "description": "Name of selector in RequestHeader or RequestBody to be matched", + "type": "string" + }, + "rulesEngineOperator": { + "description": "Describes operator to apply to the match condition.", + "type": "string", + "enum": [ + "Any", + "IPMatch", + "GeoMatch", + "Equal", + "Contains", + "LessThan", + "GreaterThan", + "LessThanOrEqual", + "GreaterThanOrEqual", + "BeginsWith", + "EndsWith" + ], + "x-ms-enum": { + "name": "RulesEngineOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "rulesEngineMatchValue": { + "description": "Match values to match against. The operator will apply to each value in here with OR semantics. If any of them match the variable with the given operator this match condition is considered a match.", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "ResourceState": { + "title": "Resource status of the Front Door or Front Door SubResource.", + "readOnly": true, + "enum": [ + "Creating", + "Enabling", + "Enabled", + "Disabling", + "Disabled", + "Deleting" + ], + "type": "string", + "x-ms-enum": { + "name": "FrontDoorResourceState", + "modelAsString": true + } + }, + "RulesEngineAction": { + "description": "One or more actions that will execute, modifying the request and/or response.", + "properties": { + "requestHeaderActions": { + "description": "A list of header actions to apply from the request from AFD to the origin.", + "type": "array", + "items": { + "$ref": "#/definitions/HeaderAction" + } + }, + "responseHeaderActions": { + "description": "A list of header actions to apply from the response from AFD to the client.", + "type": "array", + "items": { + "$ref": "#/definitions/HeaderAction" + } + }, + "routeConfigurationOverride": { + "description": "Override the route configuration.", + "$ref": "#/definitions/RouteConfiguration" + } + } + }, + "RulesEngine": { + "description": "A rules engine configuration containing a list of rules that will run to modify the runtime behavior of the request and response.", + "properties": { + "properties": { + "description": "Properties of the Rules Engine Configuration.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/RulesEngineProperties" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type." + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource ID." + } + }, + "x-ms-azure-resource": true + }, + "RulesEngineListResult": { + "description": "Result of the request to list Rules Engine Configurations. It contains a list of RulesEngine objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/RulesEngine" + }, + "description": "List of rulesEngines within a Front Door." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of RulesEngine objects if there are any." + } + } + }, + "RulesEngineProperties": { + "description": "The JSON object that contains the properties required to create a Rules Engine Configuration.", + "allOf": [ + { + "$ref": "#/definitions/RulesEngineUpdateParameters" + } + ], + "properties": { + "resourceState": { + "description": "Resource status.", + "$ref": "#/definitions/ResourceState" + } + } + }, + "RulesEngineRule": { + "description": "Contains a list of match conditions, and an action on how to modify the request/response. If multiple rules match, the actions from one rule that conflict with a previous rule overwrite for a singular action, or append in the case of headers manipulation.", + "required": [ + "action", + "name", + "priority" + ], + "properties": { + "name": { + "description": "A name to refer to this specific rule.", + "type": "string" + }, + "priority": { + "description": "A priority assigned to this rule. ", + "type": "integer" + }, + "action": { + "description": "Actions to perform on the request and response if all of the match conditions are met.", + "$ref": "#/definitions/RulesEngineAction" + }, + "matchConditions": { + "description": "A list of match conditions that must meet in order for the actions of this rule to run. Having no match conditions means the actions will always run.", + "type": "array", + "items": { + "$ref": "#/definitions/RulesEngineMatchCondition" + } + }, + "matchProcessingBehavior": { + "description": "If this rule is a match should the rules engine continue running the remaining rules or stop. If not present, defaults to Continue.", + "type": "string", + "enum": [ + "Continue", + "Stop" + ], + "x-ms-enum": { + "name": "MatchProcessingBehavior", + "modelAsString": true + } + } + } + }, + "RulesEngineUpdateParameters": { + "description": "Rules Engine Configuration to apply to a Routing Rule.", + "type": "object", + "properties": { + "rules": { + "description": "A list of rules that define a particular Rules Engine Configuration.", + "type": "array", + "items": { + "$ref": "#/definitions/RulesEngineRule" + } + } + } + }, + "transform": { + "description": "Describes what transforms are applied before matching", + "type": "string", + "enum": [ + "Lowercase", + "Uppercase", + "Trim", + "UrlDecode", + "UrlEncode", + "RemoveNulls" + ], + "x-ms-enum": { + "name": "transform", + "modelAsString": true + } + }, + "ValidateCustomDomainInput": { + "description": "Input of the custom domain to be validated for DNS mapping.", + "type": "object", + "required": [ + "hostName" + ], + "properties": { + "hostName": { + "description": "The host name of the custom domain. Must be a domain name.", + "type": "string" + } + } + }, + "ValidateCustomDomainOutput": { + "description": "Output of custom domain validation.", + "type": "object", + "properties": { + "customDomainValidated": { + "description": "Indicates whether the custom domain is valid or not.", + "readOnly": true, + "type": "boolean" + }, + "reason": { + "description": "The reason why the custom domain is not valid.", + "readOnly": true, + "type": "string" + }, + "message": { + "description": "Error message describing why the custom domain is not valid.", + "readOnly": true, + "type": "string" + } + } + }, + "ErrorResponse": { + "description": "Error response indicates Front Door service is not able to process the incoming request. The reason is provided in the error message.", + "type": "object", + "properties": { + "code": { + "description": "Error code.", + "readOnly": true, + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "readOnly": true, + "type": "string" + } + } + }, + "CheckNameAvailabilityInput": { + "description": "Input of CheckNameAvailability API.", + "type": "object", + "required": [ + "name", + "type" + ], + "properties": { + "name": { + "description": "The resource name to validate.", + "type": "string" + }, + "type": { + "description": "The type of the resource whose name is to be validated.", + "$ref": "#/definitions/ResourceType" + } + } + }, + "CheckNameAvailabilityOutput": { + "description": "Output of check name availability API.", + "type": "object", + "properties": { + "nameAvailability": { + "description": "Indicates whether the name is available.", + "readOnly": true, + "enum": [ + "Available", + "Unavailable" + ], + "type": "string", + "x-ms-enum": { + "name": "Availability", + "modelAsString": true + } + }, + "reason": { + "description": "The reason why the name is not available.", + "readOnly": true, + "type": "string" + }, + "message": { + "description": "The detailed error message describing why the name is not available.", + "readOnly": true, + "type": "string" + } + } + }, + "ResourceType": { + "description": "Type of Front Door resource used in CheckNameAvailability.", + "enum": [ + "Microsoft.Network/frontDoors", + "Microsoft.Network/frontDoors/frontendEndpoints" + ], + "type": "string", + "x-ms-enum": { + "name": "ResourceType", + "modelAsString": false + } + } + }, + "parameters": { + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9_\\-\\(\\)\\.]*[^\\.]$", + "minLength": 1, + "maxLength": 80, + "x-ms-parameter-location": "method", + "description": "Name of the Resource group within the Azure subscription." + }, + "frontDoorNameParameter": { + "name": "frontDoorName", + "in": "path", + "required": true, + "type": "string", + "x-new-pattern": "^[a-zA-Z0-9]+([-a-zA-Z0-9]?[a-zA-Z0-9])*$", + "pattern": "^[a-zA-Z0-9]+([-a-zA-Z0-9]?[a-zA-Z0-9])*$", + "minLength": 5, + "maxLength": 64, + "x-ms-parameter-location": "method", + "description": "Name of the Front Door which is globally unique." + }, + "routingRuleNameParameter": { + "name": "routingRuleName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$", + "x-previous-pattern": "^[-\\w\\d\\._]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method", + "description": "Name of the Routing Rule which is unique within the Front Door." + }, + "healthProbeSettingsNameParameter": { + "name": "healthProbeSettingsName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$", + "x-previous-pattern": "^[-\\w\\d\\._]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method", + "description": "Name of the health probe settings which is unique within the Front Door." + }, + "loadBalancingSettingsNameParameter": { + "name": "loadBalancingSettingsName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$", + "x-previous-pattern": "^[-\\w\\d\\._]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method", + "description": "Name of the load balancing settings which is unique within the Front Door." + }, + "backendPoolNameParameter": { + "name": "backendPoolName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$", + "x-previous-pattern": "^[-\\w\\d\\._]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method", + "description": "Name of the Backend Pool which is unique within the Front Door." + }, + "frontendEndpointNameParameter": { + "name": "frontendEndpointName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$", + "x-previous-pattern": "^[-\\w\\d\\._]+$", + "minLength": 1, + "maxLength": 255, + "x-ms-parameter-location": "method", + "description": "Name of the Frontend endpoint which is unique within the Front Door." + }, + "rulesEngineNameParameter": { + "name": "rulesEngineName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$", + "x-previous-pattern": "^[-\\w\\d\\._]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method", + "description": "Name of the Rules Engine which is unique within the Front Door." + } + } +} diff --git a/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/network.json b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/network.json new file mode 100644 index 000000000000..a40a10abc826 --- /dev/null +++ b/specification/frontdoor/resource-manager/Microsoft.Network/stable/2020-01-01/network.json @@ -0,0 +1,167 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-01-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json", + "text/json" + ], + "produces": [ + "application/json", + "text/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": {}, + "definitions": { + "ErrorDetails": { + "properties": { + "code": { + "type": "string" + }, + "target": { + "type": "string" + }, + "message": { + "type": "string" + } + } + }, + "Error": { + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "target": { + "type": "string" + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDetails" + } + }, + "innerError": { + "type": "string" + } + } + }, + "AzureAsyncOperationResult": { + "properties": { + "status": { + "type": "string", + "description": "Status of the Azure async operation. Possible values are: 'InProgress', 'Succeeded', and 'Failed'.", + "enum": [ + "InProgress", + "Succeeded", + "Failed" + ], + "x-ms-enum": { + "name": "NetworkOperationStatus", + "modelAsString": true + } + }, + "error": { + "$ref": "#/definitions/Error" + } + }, + "description": "The response body contains the status of the specified asynchronous operation, indicating whether it has succeeded, is in progress, or has failed. Note that this status is distinct from the HTTP status code returned for the Get Operation Status operation itself. If the asynchronous operation succeeded, the response body includes the HTTP status code for the successful request. If the asynchronous operation failed, the response body includes the HTTP status code for the failed request and error information regarding the failure." + }, + "Resource": { + "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." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "description": "Common resource representation.", + "x-ms-azure-resource": true + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + } + }, + "description": "Reference to another subresource.", + "x-ms-azure-resource": true + }, + "TagsObject": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "description": "Tags object for patch operations." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/frontdoor/resource-manager/readme.go.md b/specification/frontdoor/resource-manager/readme.go.md index b61c0b33bdd5..3c365d88b43e 100644 --- a/specification/frontdoor/resource-manager/readme.go.md +++ b/specification/frontdoor/resource-manager/readme.go.md @@ -18,6 +18,16 @@ batch: - tag: package-2018-08-preview - tag: package-2019-04 - tag: package-2019-05 + - tag: package-2020-01 + +``` +### Tag: package-2020-01 and go + +These settings apply only when `--tag=package-2020-01 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2020-01' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2020-01-01/$(namespace) ``` ### Tag: package-2019-11 and go diff --git a/specification/frontdoor/resource-manager/readme.md b/specification/frontdoor/resource-manager/readme.md index 6c153cef5bf3..fe51a0221451 100644 --- a/specification/frontdoor/resource-manager/readme.md +++ b/specification/frontdoor/resource-manager/readme.md @@ -28,9 +28,27 @@ These are the global settings for the FrontDoor API. title: FrontDoorManagementClient description: FrontDoor Client openapi-type: arm -tag: package-2019-11 +tag: package-2020-01 ``` +### Tag: package-2020-01 + +These settings apply only when `--tag=package-2020-01` is specified on the command line. + +``` yaml $(tag) == 'package-2020-01' +input-file: +- Microsoft.Network/stable/2020-01-01/network.json +- Microsoft.Network/stable/2019-11-01/networkexperiment.json +- Microsoft.Network/stable/2020-01-01/frontdoor.json +- Microsoft.Network/stable/2019-10-01/webapplicationfirewall.json +directive: + - where: + - $.paths + suppress: + - OperationsAPIImplementation +``` + + ### Tag: package-2019-11 These settings apply only when `--tag=package-2019-11` is specified on the command line. @@ -215,10 +233,12 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: - - $(this-folder)/Microsoft.Network/stable/2019-11-01/network.json + - $(this-folder)/Microsoft.Network/stable/2020-01-01/network.json - $(this-folder)/Microsoft.Network/stable/2019-11-01/networkexperiment.json - - $(this-folder)/Microsoft.Network/stable/2019-05-01/frontdoor.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 diff --git a/specification/graphrbac/data-plane/Microsoft.GraphRbac/stable/1.6/graphrbac.json b/specification/graphrbac/data-plane/Microsoft.GraphRbac/stable/1.6/graphrbac.json index c8f7b0c108c0..1446c44d6531 100644 --- a/specification/graphrbac/data-plane/Microsoft.GraphRbac/stable/1.6/graphrbac.json +++ b/specification/graphrbac/data-plane/Microsoft.GraphRbac/stable/1.6/graphrbac.json @@ -2707,8 +2707,7 @@ }, "objectType": { "type": "string", - "description": "The object type.", - "readOnly": true + "description": "The object type." }, "deletionTimestamp": { "type": "string", @@ -2717,6 +2716,9 @@ "readOnly": true } }, + "required": [ + "objectType" + ], "additionalProperties": { "type": "object" }, @@ -2837,6 +2839,7 @@ "description": "Specifies an OAuth 2.0 permission scope or an app role that an application requires. The resourceAccess property of the RequiredResourceAccess type is a collection of ResourceAccess." }, "GroupMembershipClaims": { + "type": "string", "description": "Configures the groups claim issued in a user or OAuth 2.0 access token that the app expects.", "enum": [ "None", diff --git a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2017-11-03-preview/hanaonazure.json b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2017-11-03-preview/hanaonazure.json index df1eeb0cceec..49473e2cb23f 100644 --- a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2017-11-03-preview/hanaonazure.json +++ b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2017-11-03-preview/hanaonazure.json @@ -883,23 +883,39 @@ "S192xm", "S96", "S112", + "S224", "S224m", - "S224o", "S224om", "S224oo", "S224oom", "S224ooo", - "S224oxm", - "S224oxxm", "S384", "S384m", "S384xm", "S384xxm", + "S448", + "S448m", + "S448om", + "S448oo", + "S448oom", + "S448ooo", "S576m", "S576xm", + "S672", + "S672m", + "S672om", + "S672oo", + "S672oom", + "S672ooo", "S768", "S768m", "S768xm", + "S896", + "S896m", + "S896om", + "S896oo", + "S896oom", + "S896ooo", "S960m" ], "x-ms-enum": { diff --git a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/ProviderInstances_Create.json b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/ProviderInstances_Create.json new file mode 100644 index 000000000000..df9837f434fc --- /dev/null +++ b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/ProviderInstances_Create.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2020-02-07-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "sapMonitorName": "mySapMonitor", + "providerInstanceName": "myProviderInstance", + "providerInstanceParameter": { + "properties": { + "type": "hana", + "properties": "{\"hostname\":\"10.0.0.10\",\"dbName\":\"SYSTEMDB\",\"sqlPort\":30015,\"dbUsername\":\"SYSTEM\",\"dbPassword\":\"PASSWORD\"}", + "metadata": "{\"key\":\"value\"}" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.HanaOnAzure/sapMonitors/mySapMonitor/providerInstances/myProviderInstance", + "name": "myProviderInstance", + "type": "Microsoft.HanaOnAzure/sapMonitors/providerInstances", + "properties": { + "type": "hana", + "properties": "{\"hostname\":\"10.0.0.10\",\"dbName\":\"SYSTEMDB\",\"sqlPort\":30015,\"dbUsername\":\"SYSTEM\"}", + "metadata": "{\"key\":\"value\"}" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.HanaOnAzure/sapMonitors/mySapMonitor/providerInstances/myProviderInstance", + "name": "myProviderInstance", + "type": "Microsoft.HanaOnAzure/sapMonitors/providerInstances", + "properties": { + "type": "hana", + "properties": "{\"hostname\":\"10.0.0.10\",\"dbName\":\"SYSTEMDB\",\"sqlPort\":30015,\"dbUsername\":\"SYSTEM\"}", + "metadata": "{\"key\":\"value\"}" + } + } + } + } +} diff --git a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/ProviderInstances_Delete.json b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/ProviderInstances_Delete.json new file mode 100644 index 000000000000..1e0a487fc052 --- /dev/null +++ b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/ProviderInstances_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-02-07-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "sapMonitorName": "mySapMonitor", + "providerInstanceName": "myProviderInstance" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/ProviderInstances_Get.json b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/ProviderInstances_Get.json new file mode 100644 index 000000000000..5193d6e9aaa8 --- /dev/null +++ b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/ProviderInstances_Get.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2020-02-07-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "sapMonitorName": "mySapMonitor", + "providerInstanceName": "myProviderInstance" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.HanaOnAzure/sapMonitors/mySapMonitor/providerInstances/myProviderInstance", + "name": "myProviderInstance", + "type": "Microsoft.HanaOnAzure/sapMonitors/providerInstances", + "properties": { + "type": "hana", + "properties": "{\"hostname\":\"10.0.0.10\",\"dbName\":\"SYSTEMDB\",\"sqlPort\":30015,\"dbUsername\":\"SYSTEM\"}", + "metadata": "{\"key\":\"value\"}" + } + } + } + } +} diff --git a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/ProviderInstances_List.json b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/ProviderInstances_List.json new file mode 100644 index 000000000000..4a01efc99c4d --- /dev/null +++ b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/ProviderInstances_List.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2020-02-07-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "sapMonitorName": "mySapMonitor" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.HanaOnAzure/sapMonitors/mySapMonitor/providerInstances/myProviderInstance1", + "name": "myProviderInstance1", + "type": "Microsoft.HanaOnAzure/sapMonitors/providerInstances", + "properties": { + "type": "hana", + "properties": "{\"hostname\":\"10.0.0.10\",\"dbName\":\"SYSTEMDB\",\"sqlPort\":30015,\"dbUsername\":\"SYSTEM\"}", + "metadata": "{\"key\":\"value\"}" + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.HanaOnAzure/sapMonitors/mySapMonitor/providerInstances/myProviderInstance2", + "name": "myProviderInstance2", + "type": "Microsoft.HanaOnAzure/sapMonitors/providerInstances", + "properties": { + "type": "hana", + "properties": "{\"hostname\":\"10.0.0.11\",\"dbName\":\"SYSTEMDB\",\"sqlPort\":30015,\"dbUsername\":\"SYSTEM\"}", + "metadata": "{\"key\":\"value\"}" + } + } + ] + } + } + } +} diff --git a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_Create.json b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_Create.json new file mode 100644 index 000000000000..4d22ed6eca0c --- /dev/null +++ b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_Create.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2020-02-07-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "sapMonitorName": "mySapMonitor", + "sapMonitorParameter": { + "location": "westus", + "tags": { + "key": "value" + }, + "properties": { + "enableCustomerAnalytics": true, + "logAnalyticsWorkspaceArmId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.operationalinsights/workspaces/myWorkspace", + "logAnalyticsWorkspaceId": "00000000-0000-0000-0000-000000000000", + "logAnalyticsWorkspaceSharedKey": "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000==", + "monitorSubnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.HanaOnAzure/hanaInstances/myHanaInstance", + "name": "myHanaInstance", + "type": "Microsoft.HanaOnAzure/hanaInstances", + "location": "westus", + "tags": { + "key": "value" + }, + "properties": { + "enableCustomerAnalytics": true, + "logAnalyticsWorkspaceArmId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.operationalinsights/workspaces/myWorkspace", + "logAnalyticsWorkspaceId": "00000000-0000-0000-0000-000000000000", + "logAnalyticsWorkspaceSharedKey": "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000==", + "monitorSubnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet", + "managedResourceGroupName": "myManagedResourceGroup", + "sapMonitorCollectorVersion": "v1.0", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.HanaOnAzure/hanaInstances/myHanaInstance", + "name": "myHanaInstance", + "type": "Microsoft.HanaOnAzure/hanaInstances", + "location": "westus", + "tags": { + "key": "value" + }, + "properties": { + "enableCustomerAnalytics": true, + "logAnalyticsWorkspaceArmId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.operationalinsights/workspaces/myWorkspace", + "logAnalyticsWorkspaceId": "00000000-0000-0000-0000-000000000000", + "logAnalyticsWorkspaceSharedKey": "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000==", + "monitorSubnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet", + "managedResourceGroupName": "myManagedResourceGroup", + "sapMonitorCollectorVersion": "v1.0", + "provisioningState": "Accepted" + } + } + } + } +} diff --git a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_Delete.json b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_Delete.json new file mode 100644 index 000000000000..94841d22526a --- /dev/null +++ b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-02-07-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "sapMonitorName": "mySapMonitor" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_Get.json b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_Get.json new file mode 100644 index 000000000000..2635740401b3 --- /dev/null +++ b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_Get.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2020-02-07-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "sapMonitorName": "mySapMonitor" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.HanaOnAzure/sapMonitors/mySapMonitor", + "name": "mySapMonitor", + "type": "Microsoft.HanaOnAzure/sapMonitors", + "location": "westus", + "tags": { + "key": "value" + }, + "properties": { + "enableCustomerAnalytics": true, + "logAnalyticsWorkspaceArmId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.operationalinsights/workspaces/myWorkspace", + "logAnalyticsWorkspaceId": "00000000-0000-0000-0000-000000000000", + "logAnalyticsWorkspaceSharedKey": "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000==", + "monitorSubnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet", + "managedResourceGroupName": "myManagedResourceGroup", + "sapMonitorCollectorVersion": "v1.0", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_List.json b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_List.json new file mode 100644 index 000000000000..10735125135e --- /dev/null +++ b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_List.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2020-02-07-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.HanaOnAzure/sapMonitors/mySapMonitor1", + "name": "mySapMonitor1", + "type": "Microsoft.HanaOnAzure/sapMonitors", + "location": "westus", + "tags": { + "key": "value" + }, + "properties": { + "enableCustomerAnalytics": true, + "logAnalyticsWorkspaceArmId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.operationalinsights/workspaces/myWorkspace", + "logAnalyticsWorkspaceId": "00000000-0000-0000-0000-000000000000", + "logAnalyticsWorkspaceSharedKey": "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000==", + "monitorSubnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet", + "managedResourceGroupName": "myManagedResourceGroup", + "sapMonitorCollectorVersion": "v1.0", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.HanaOnAzure/sapMonitors/mySapMonitor2", + "name": "mySapMonitor2", + "type": "Microsoft.HanaOnAzure/sapMonitors", + "location": "westus", + "tags": { + "key": "value" + }, + "properties": { + "enableCustomerAnalytics": true, + "logAnalyticsWorkspaceArmId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.operationalinsights/workspaces/myWorkspace", + "logAnalyticsWorkspaceId": "00000000-0000-0000-0000-000000000000", + "logAnalyticsWorkspaceSharedKey": "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000==", + "monitorSubnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet", + "managedResourceGroupName": "myManagedResourceGroup", + "sapMonitorCollectorVersion": "v1.0", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_PatchTags.json b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_PatchTags.json new file mode 100644 index 000000000000..14f23ba45375 --- /dev/null +++ b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_PatchTags.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2020-02-07-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "sapMonitorName": "mySapMonitor", + "tagsParameter": { + "tags": { + "testkey": "testvalue" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.HanaOnAzure/sapMonitors/mySapMonitor", + "name": "mySapMonitor", + "type": "Microsoft.HanaOnAzure/sapMonitors", + "location": "westus", + "tags": { + "testkey": "testvalue" + }, + "properties": { + "enableCustomerAnalytics": true, + "logAnalyticsWorkspaceArmId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.operationalinsights/workspaces/myWorkspace", + "logAnalyticsWorkspaceId": "00000000-0000-0000-0000-000000000000", + "logAnalyticsWorkspaceSharedKey": "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000==", + "monitorSubnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet", + "managedResourceGroupName": "myManagedResourceGroup", + "sapMonitorCollectorVersion": "v1.0", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_PatchTags_Delete.json b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_PatchTags_Delete.json new file mode 100644 index 000000000000..dfbb3fe1a0c2 --- /dev/null +++ b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/examples/SapMonitors_PatchTags_Delete.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-02-07-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "sapMonitorName": "mySapMonitor", + "tagsParameter": { + "tags": {} + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.HanaOnAzure/sapMonitors/mySapMonitor", + "name": "mySapMonitor", + "type": "Microsoft.HanaOnAzure/sapMonitors", + "location": "westus", + "tags": {}, + "properties": { + "enableCustomerAnalytics": true, + "logAnalyticsWorkspaceArmId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/myResourceGroup/providers/microsoft.operationalinsights/workspaces/myWorkspace", + "logAnalyticsWorkspaceId": "00000000-0000-0000-0000-000000000000", + "logAnalyticsWorkspaceSharedKey": "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000==", + "monitorSubnet": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet", + "managedResourceGroupName": "myManagedResourceGroup", + "sapMonitorCollectorVersion": "v1.0", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/hanaonazure.json b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/hanaonazure.json new file mode 100644 index 000000000000..5f24eddee896 --- /dev/null +++ b/specification/hanaonazure/resource-manager/Microsoft.HanaOnAzure/preview/2020-02-07-preview/hanaonazure.json @@ -0,0 +1,765 @@ +{ + "swagger": "2.0", + "info": { + "title": "HanaManagementClient", + "description": "The SAP HANA on Azure Management Client.", + "version": "2020-02-07-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "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.HanaOnAzure/sapMonitors": { + "get": { + "tags": [ + "HanaOnAzure" + ], + "operationId": "SapMonitors_List", + "summary": "Gets a list of SAP monitors in the specified subscription.", + "description": "Gets a list of SAP monitors in the specified subscription. The operations returns various properties of each SAP monitor.", + "x-ms-examples": { + "List all SAP Monitors in a subscription": { + "$ref": "./examples/SapMonitors_List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SapMonitorListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HanaOnAzure/sapMonitors/{sapMonitorName}": { + "get": { + "tags": [ + "HanaOnAzure" + ], + "operationId": "SapMonitors_Get", + "summary": "Gets properties of a SAP monitor.", + "description": "Gets properties of a SAP monitor for the specified subscription, resource group, and resource name.", + "x-ms-examples": { + "Get properties of a SAP monitor": { + "$ref": "./examples/SapMonitors_Get.json" + } + }, + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SapMonitorNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SapMonitor" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "HanaOnAzure" + ], + "operationId": "SapMonitors_Create", + "x-ms-long-running-operation": true, + "summary": "Creates a SAP monitor.", + "description": "Creates a SAP monitor for the specified subscription, resource group, and resource name.", + "x-ms-examples": { + "Create a SAP Monitor": { + "$ref": "./examples/SapMonitors_Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SapMonitorNameParameter" + }, + { + "$ref": "#/parameters/SapMonitorParameter" + } + ], + "responses": { + "200": { + "description": "Created SapMonitor", + "schema": { + "$ref": "#/definitions/SapMonitor" + } + }, + "201": { + "description": "Creating SapMonitor", + "schema": { + "$ref": "#/definitions/SapMonitor" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "HanaOnAzure" + ], + "operationId": "SapMonitors_Delete", + "x-ms-long-running-operation": true, + "summary": "Deletes a SAP monitor.", + "description": "Deletes a SAP monitor with the specified subscription, resource group, and monitor name.", + "x-ms-examples": { + "Deletes a SAP monitor": { + "$ref": "./examples/SapMonitors_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SapMonitorNameParameter" + } + ], + "responses": { + "200": { + "description": "Deleted SapMonitor" + }, + "202": { + "description": "Deleting SapMonitor" + }, + "204": { + "description": "No SapMonitor to delete" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "HanaOnAzure" + ], + "operationId": "SapMonitors_Update", + "summary": "Patches the Tags field of a SAP monitor.", + "description": "Patches the Tags field of a SAP monitor for the specified subscription, resource group, and monitor name.", + "x-ms-examples": { + "Update Tags field of a SAP monitor": { + "$ref": "./examples/SapMonitors_PatchTags.json" + }, + "Delete Tags field of a SAP monitor": { + "$ref": "./examples/SapMonitors_PatchTags_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SapMonitorNameParameter" + }, + { + "$ref": "#/parameters/TagsParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SapMonitor" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HanaOnAzure/sapMonitors/{sapMonitorName}/providerInstances": { + "get": { + "tags": [ + "HanaOnAzure" + ], + "operationId": "ProviderInstances_List", + "summary": "Gets a list of provider instances in the specified SAP monitor.", + "description": "Gets a list of provider instances in the specified SAP monitor. The operations returns various properties of each provider instances.", + "x-ms-examples": { + "List all SAP Monitors in a subscription": { + "$ref": "./examples/ProviderInstances_List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SapMonitorNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProviderInstanceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HanaOnAzure/sapMonitors/{sapMonitorName}/providerInstances/{providerInstanceName}": { + "get": { + "tags": [ + "HanaOnAzure" + ], + "operationId": "ProviderInstances_Get", + "summary": "Gets properties of a provider instance.", + "description": "Gets properties of a provider instance for the specified subscription, resource group, SapMonitor name, and resource name.", + "x-ms-examples": { + "Get properties of a SAP monitor": { + "$ref": "./examples/ProviderInstances_Get.json" + } + }, + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SapMonitorNameParameter" + }, + { + "$ref": "#/parameters/ProviderInstanceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProviderInstance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "HanaOnAzure" + ], + "operationId": "ProviderInstances_Create", + "x-ms-long-running-operation": true, + "summary": "Creates a provider instance.", + "description": "Creates a provider instance for the specified subscription, resource group, SapMonitor name, and resource name.", + "x-ms-examples": { + "Create a SAP Monitor": { + "$ref": "./examples/ProviderInstances_Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SapMonitorNameParameter" + }, + { + "$ref": "#/parameters/ProviderInstanceNameParameter" + }, + { + "$ref": "#/parameters/ProviderInstanceParameter" + } + ], + "responses": { + "200": { + "description": "Created provider instance", + "schema": { + "$ref": "#/definitions/ProviderInstance" + } + }, + "201": { + "description": "Creating provider instance", + "schema": { + "$ref": "#/definitions/ProviderInstance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "HanaOnAzure" + ], + "operationId": "ProviderInstances_Delete", + "x-ms-long-running-operation": true, + "summary": "Deletes a provider instance.", + "description": "Deletes a provider instance for the specified subscription, resource group, SapMonitor name, and resource name.", + "x-ms-examples": { + "Deletes a SAP monitor": { + "$ref": "./examples/ProviderInstances_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SapMonitorNameParameter" + }, + { + "$ref": "#/parameters/ProviderInstanceNameParameter" + } + ], + "responses": { + "200": { + "description": "Deleted provider instance" + }, + "202": { + "description": "Deleting provider instance" + }, + "204": { + "description": "No provider instance to delete" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "Resource": { + "description": "The core properties of ARM resources", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Fully qualified resource Id for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/trafficManagerProfiles/{resourceName}" + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the resource" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the resource. Ex- Microsoft.Network/trafficManagerProfiles." + } + }, + "x-ms-azure-resource": true + }, + "TrackedResource": { + "description": "The resource model definition for a ARM tracked top level resource", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Resource tags." + }, + "location": { + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ], + "description": "The Azure Region where the resource lives" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ] + }, + "ProxyResource": { + "description": "The resource model definition for a ARM proxy resource. It will have everything other than required location and tags", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ] + }, + "ErrorResponse": { + "description": "Describes the format of Error response.", + "type": "object", + "properties": { + "code": { + "description": "Error code", + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + } + }, + "Tags": { + "type": "object", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Tags field of the resource." + } + }, + "description": "Tags field of the resource." + }, + "SapMonitorListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SapMonitor" + }, + "description": "The list of SAP monitors." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of SAP monitors." + } + }, + "description": "The response from the List SAP monitors operation." + }, + "SapMonitor": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SapMonitorProperties", + "description": "SAP monitor properties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "description": "SAP monitor info on Azure (ARM properties and SAP monitor properties)" + }, + "SapMonitorProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "enum": [ + "Accepted", + "Creating", + "Updating", + "Failed", + "Succeeded", + "Deleting", + "Migrating" + ], + "x-ms-enum": { + "name": "HanaProvisioningStatesEnum", + "modelAsString": true + }, + "description": "State of provisioning of the HanaInstance" + }, + "managedResourceGroupName": { + "readOnly": true, + "type": "string", + "description": "The name of the resource group the SAP Monitor resources get deployed into." + }, + "logAnalyticsWorkspaceArmId": { + "type": "string", + "description": "The ARM ID of the Log Analytics Workspace that is used for monitoring" + }, + "enableCustomerAnalytics": { + "type": "boolean", + "description": "The value indicating whether to send analytics to Microsoft" + }, + "logAnalyticsWorkspaceId": { + "type": "string", + "description": "The workspace ID of the log analytics workspace to be used for monitoring" + }, + "logAnalyticsWorkspaceSharedKey": { + "type": "string", + "description": "The shared key of the log analytics workspace that is used for monitoring" + }, + "sapMonitorCollectorVersion": { + "readOnly": true, + "type": "string", + "description": "The version of the payload running in the Collector VM" + }, + "monitorSubnet": { + "type": "string", + "description": "The subnet which the SAP monitor will be deployed in" + } + }, + "description": "Describes the properties of a SAP monitor." + }, + "ProviderInstanceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ProviderInstance" + }, + "description": "The list of provider instances." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of provider instances." + } + }, + "description": "The response from the List provider instances operation." + }, + "ProviderInstance": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProviderInstanceProperties", + "description": "Provider Instance properties" + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "enum": [ + "Accepted", + "Creating", + "Updating", + "Failed", + "Succeeded", + "Deleting", + "Migrating" + ], + "x-ms-enum": { + "name": "HanaProvisioningStatesEnum", + "modelAsString": true + }, + "description": "State of provisioning of the provider instance" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "description": "A provider instance associated with a SAP monitor." + }, + "ProviderInstanceProperties": { + "properties": { + "type": { + "type": "string", + "description": "The type of provider instance." + }, + "properties": { + "type": "string", + "description": "A JSON string containing the properties of the provider instance." + }, + "metadata": { + "type": "string", + "description": "A JSON string containing metadata of the provider instance." + } + }, + "description": "Describes the properties of a provider instance." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription ID which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the resource group.", + "x-ms-parameter-location": "method" + }, + "SapMonitorNameParameter": { + "name": "sapMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the SAP monitor resource.", + "x-ms-parameter-location": "method" + }, + "ProviderInstanceNameParameter": { + "name": "providerInstanceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the provider instance.", + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + }, + "TagsParameter": { + "name": "tagsParameter", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Tags" + }, + "description": "Request body that only contains the new Tags field", + "x-ms-parameter-location": "method" + }, + "SapMonitorParameter": { + "name": "sapMonitorParameter", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SapMonitor" + }, + "description": "Request body representing a SAP Monitor", + "x-ms-parameter-location": "method" + }, + "ProviderInstanceParameter": { + "name": "providerInstanceParameter", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ProviderInstance" + }, + "description": "Request body representing a provider instance", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/hanaonazure/resource-manager/readme.md b/specification/hanaonazure/resource-manager/readme.md index 2faae789bcf4..e44a10cc10b4 100644 --- a/specification/hanaonazure/resource-manager/readme.md +++ b/specification/hanaonazure/resource-manager/readme.md @@ -42,6 +42,16 @@ input-file: - Microsoft.HanaOnAzure/preview/2017-11-03-preview/hanaonazure.json ``` +### Tag: package-2020-02-07-preview + +These settings apply only when `--tag=package-2020-02-07-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2020-02-07-preview' +input-file: +- Microsoft.HanaOnAzure/preview/2020-02-07-preview/hanaonazure.json +``` + + # Code Generation @@ -112,6 +122,7 @@ 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 ``` diff --git a/specification/hdinsight/hdinsight-kafka-rest-proxy/proxy.json b/specification/hdinsight/hdinsight-kafka-rest-proxy/proxy.json index 8b7e5335e37a..b36831cb27a7 100644 --- a/specification/hdinsight/hdinsight-kafka-rest-proxy/proxy.json +++ b/specification/hdinsight/hdinsight-kafka-rest-proxy/proxy.json @@ -32,16 +32,24 @@ "description": "Manage Kafka topics" } ], - "schemes": [ "https" ], + "schemes": [ + "https" + ], "paths": { "/v1/consumer/topics/{topic}/partitions/{partition}/offsets/{offset}": { "get": { - "tags": [ "v1consumer" ], + "tags": [ + "v1consumer" + ], "summary": "Consume records using a simple consumer", "description": "Consume records from one partition of a topic beginning with a specific offset. By default count is 1. It can read maximum of 6 megabytes of data at once", - "operationId": "consumeTopicInPartitionWithOffset", - "consumes": [ "application/json" ], - "produces": [ "application/json" ], + "operationId": "Consumer_ConsumeTopicInPartitionWithOffset", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], "parameters": [ { "name": "topic", @@ -108,12 +116,18 @@ }, "/v1/metadata/brokers": { "get": { - "tags": [ "v1metadata" ], + "tags": [ + "v1metadata" + ], "summary": "Get a list of Kafka brokers", "description": "Get a list of Kafka brokers with hostname, port, and broker id", - "operationId": "getBrokers", - "consumes": [ "application/json" ], - "produces": [ "application/json" ], + "operationId": "Metadata_GetBrokers", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], "responses": { "200": { "description": "successful operation", @@ -144,12 +158,18 @@ }, "/v1/metadata/topics": { "get": { - "tags": [ "v1metadata" ], + "tags": [ + "v1metadata" + ], "summary": "Get a list of Kafka topics", "description": "Get a list of Kafka topics. If it is a newly created topic, please wait a few seconds for it to show up.", - "operationId": "getTopics", - "consumes": [ "application/json" ], - "produces": [ "application/json" ], + "operationId": "Metadata_GetTopics", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], "responses": { "200": { "description": "successful operation", @@ -180,12 +200,18 @@ }, "/v1/metadata/topics/{topic}/partitions": { "get": { - "tags": [ "v1metadata" ], + "tags": [ + "v1metadata" + ], "summary": "Get metadata about all partitions for a specific topic", "description": "Get metadata about all partitions for a specific topic with partition ID, earliest offset, latest offset, leader, replicas, and in-sync replicas", - "operationId": "getPartitions", - "consumes": [ "application/json" ], - "produces": [ "application/json" ], + "operationId": "Metadata_GetTopicPartitions", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], "parameters": [ { "name": "topic", @@ -225,12 +251,18 @@ }, "/v1/metadata/topics/{topic}/partitions/{partition}": { "get": { - "tags": [ "v1metadata" ], + "tags": [ + "v1metadata" + ], "summary": "Get metadata about a specific Kafka topic-partition", "description": "Get metadata about a specific Kafka topic-partition with partition ID, earliest offset, latest offset, leader, replicas, and in-sync replicas", - "operationId": "getPartitionMetadata", - "consumes": [ "application/json" ], - "produces": [ "application/json" ], + "operationId": "Metadata_GetMetadataForPartition", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], "parameters": [ { "name": "topic", @@ -278,12 +310,18 @@ }, "/v1/producer/topics/{topic}": { "post": { - "tags": [ "v1producer" ], + "tags": [ + "v1producer" + ], "summary": "Produce records", "description": "Produce records to a topic in Kafka. If producing records to a newly created topic, please wait a few seconds for the topic to show up.", - "operationId": "produceMessageToTopic", - "consumes": [ "application/json" ], - "produces": [ "application/json" ], + "operationId": "Producer_ProduceMessageToTopic", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], "parameters": [ { "name": "topic", @@ -332,12 +370,18 @@ }, "/v1/status": { "get": { - "tags": [ "v1status" ], + "tags": [ + "v1status" + ], "summary": "Check the status of Kafka Rest proxy server", "description": "Check the status of Kafka Rest proxy server", - "operationId": "checkRestproxyStatus", - "consumes": [ "application/json" ], - "produces": [ "application/json" ], + "operationId": "Admin_CheckRestProxyStatus", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], "responses": { "200": { "description": "successful operation", @@ -350,12 +394,18 @@ }, "/v1/topics/{topic}": { "put": { - "tags": [ "v1topics" ], + "tags": [ + "v1topics" + ], "summary": "Create a topic", "description": "Create a topic in Kafka with topic configuration", - "operationId": "putTopics", - "consumes": [ "application/json" ], - "produces": [ "application/json" ], + "operationId": "Admin_CreateTopic", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], "parameters": [ { "name": "topic", @@ -428,6 +478,17 @@ "format": "int64", "description": "Offset for consumer record", "readOnly": true + }, + "timestamp": { + "type": "integer", + "format": "int64", + "description": "Timestamp for consumer record", + "readOnly": true + }, + "timestampType": { + "type": "string", + "description": "Timestamp type for consumer record such as log append time or create time", + "readOnly": true } }, "description": "List of consumer records" @@ -447,7 +508,9 @@ }, "ProducerRecord": { "type": "object", - "required": [ "value" ], + "required": [ + "value" + ], "properties": { "value": { "type": "object", diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/OperationResultsGet.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/OperationResultsGet.json index b2c5a86ba5d5..cfb8b4232752 100644 --- a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/OperationResultsGet.json +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/OperationResultsGet.json @@ -2,7 +2,7 @@ "parameters": { "api-version": "2018-08-20-preview", "subscriptionId": "subid", - "locationName": "westus", + "locationName": "eastus", "operationResultId": "exampleid" }, "responses": { diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServiceCreate.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServiceCreate.json index 1666fd6636b6..51ee6ed9cae2 100644 --- a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServiceCreate.json +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServiceCreate.json @@ -5,7 +5,7 @@ "api-version": "2018-08-20-preview", "subscriptionId": "subid", "serviceDescription": { - "location": "westus", + "location": "eastus", "tags": {}, "kind": "fhir", "properties": { @@ -51,7 +51,7 @@ "body": { "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.HealthcareApis/services/service1", "name": "service1", - "location": "West US", + "location": "eastus", "type": "Microsoft.HealthcareApis/services", "kind": "fhir", "etag": "etagvalue", diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServiceGet.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServiceGet.json index 4357adb437d4..c996935b16d7 100644 --- a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServiceGet.json +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServiceGet.json @@ -10,7 +10,7 @@ "body": { "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.HealthcareApis/services/service1", "name": "service1", - "location": "West US", + "location": "eastus", "type": "Microsoft.HealthcareApis/services", "kind": "fhir", "etag": "etagvalue", diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServiceList.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServiceList.json index 3c85327e70e2..7824bc5a8aea 100644 --- a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServiceList.json +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServiceList.json @@ -10,7 +10,7 @@ { "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.HealthcareApis/services/service1", "name": "service1", - "location": "West US", + "location": "eastus", "type": "Microsoft.HealthcareApis/services", "kind": "fhir", "etag": "etag", diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServiceListByResourceGroup.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServiceListByResourceGroup.json index 05d7ba2d83e9..b1d2ff69d429 100644 --- a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServiceListByResourceGroup.json +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServiceListByResourceGroup.json @@ -11,7 +11,7 @@ { "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.HealthcareApis/services/dddb8dcb-effb-4290-bb47-ce1e8440c729", "name": "service1", - "location": "westus", + "location": "eastus", "type": "Microsoft.HealthcareApis/services", "kind": "fhir", "tags": {}, diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServicePatch.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServicePatch.json index 7e655a7d09be..2087c5d8f491 100644 --- a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServicePatch.json +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/examples/ServicePatch.json @@ -16,7 +16,7 @@ "body": { "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.HealthcareApis/services/service1", "name": "service1", - "location": "West US", + "location": "eastus", "type": "Microsoft.HealthcareApis/services", "kind": "fhir", "etag": "etagvalue", diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/healthcare-apis.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/healthcare-apis.json index 403e851ff328..7d276651d131 100644 --- a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/healthcare-apis.json +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/preview/2018-08-20-preview/healthcare-apis.json @@ -354,7 +354,7 @@ "description": "Check if a service instance name is available.", "operationId": "Services_CheckNameAvailability", "x-ms-examples": { - "ServiceList": { + "CheckNameAvailabilityPost": { "$ref": "./examples/CheckNameAvailabilityPost.json" } }, diff --git a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/healthcare-apis.json b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/healthcare-apis.json index 9ed9c916676a..9237bfeb2960 100644 --- a/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/healthcare-apis.json +++ b/specification/healthcareapis/resource-manager/Microsoft.HealthcareApis/stable/2019-09-16/healthcare-apis.json @@ -683,22 +683,22 @@ "type": "string" }, "identity": { - "type": "object", - "description": "Setting indicating whether the service has a managed identity associated with it.", - "properties": { - "type":{ - "description" : "Type of identity being specified, currently SystemAssigned and None are allowed.", - "type": "string", - "enum": [ - "SystemAssigned", - "None" - ], - "x-ms-enum": { - "name": "ManagedServiceIdentityType", - "modelAsString": true - } - } + "type": "object", + "description": "Setting indicating whether the service has a managed identity associated with it.", + "properties": { + "type": { + "description": "Type of identity being specified, currently SystemAssigned and None are allowed.", + "type": "string", + "enum": [ + "SystemAssigned", + "None" + ], + "x-ms-enum": { + "name": "ManagedServiceIdentityType", + "modelAsString": true + } } + } } }, "x-ms-azure-resource": true, diff --git a/specification/healthcareapis/resource-manager/readme.cli.md b/specification/healthcareapis/resource-manager/readme.cli.md index 0c3b77b2754a..9793e16b0693 100644 --- a/specification/healthcareapis/resource-manager/readme.cli.md +++ b/specification/healthcareapis/resource-manager/readme.cli.md @@ -14,14 +14,14 @@ cli: "/properties/corsconfiguration": "Cors*/" "/properties/cosmosdbconfiguration": "CosmosDb*/" "/properties/accesspolicies": "AccessPolicies*/" - test-setup: - - name: Check name availability - - name: Lists all of the available Healthcare service REST API operations. - - name: Create or Update a service with all parameters - - name: Delete service - - name: Create or Update a service with minimum parameters - - name: Get the metadata of a service instance. - - name: List all services in subscription - - name: List all services in resource group - - name: Delete service + test-scenario: + - name: ServicePut + - name: OperationResultsGet + - name: ServiceGet + - name: ServiceListByResourceGroup + - name: ServiceList + - name: OperationsList + - name: ServicePatch + - name: CheckNameAvailabilityPost + - name: ServiceDelete ``` diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/HybridCompute.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/HybridCompute.json new file mode 100644 index 000000000000..f096d8437dba --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/HybridCompute.json @@ -0,0 +1,1223 @@ +{ + "swagger": "2.0", + "info": { + "title": "HybridComputeManagementClient", + "description": "The Hybrid Compute Management Client.", + "version": "2019-12-12" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{name}": { + "put": { + "tags": [ + "machines" + ], + "operationId": "Machines_CreateOrUpdate", + "description": "The operation to create or update a hybrid machine resource identity in Azure.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Machine" + }, + "description": "Parameters supplied to the Create hybrid machine operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Machine" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update a machine resource.": { + "$ref": "./examples/Machines_CreateOrUpdate.json" + } + } + }, + "patch": { + "tags": [ + "machines" + ], + "operationId": "Machines_Update", + "description": "The operation to update a hybrid machine.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MachineUpdate" + }, + "description": "Parameters supplied to the Update hybrid machine operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Machine" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update a machine resource.": { + "$ref": "./examples/Machines_Update.json" + } + } + }, + "delete": { + "tags": [ + "machines" + ], + "operationId": "Machines_Delete", + "description": "The operation to remove a hybrid machine identity in Azure.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a machine resource.": { + "$ref": "./examples/Machines_Delete.json" + } + } + }, + "get": { + "tags": [ + "machines" + ], + "operationId": "Machines_Get", + "description": "Retrieves information about the model view or the instance view of a hybrid machine.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation.", + "enum": [ + "instanceView" + ], + "x-ms-enum": { + "name": "InstanceViewTypes", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Machine" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a machine resource.": { + "$ref": "./examples/Machines_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{name}/reconnect": { + "post": { + "tags": [ + "machines" + ], + "operationId": "Machines_Reconnect", + "description": "The operation to reconnect a hybrid machine resource to its identity in Azure.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the hybrid machine." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MachineReconnect" + }, + "description": "Parameters supplied to the Reconnect hybrid machine operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Machine" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Reconnect a machine resource.": { + "$ref": "./examples/Machines_Reconnect.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines": { + "get": { + "tags": [ + "machines" + ], + "operationId": "Machines_ListByResourceGroup", + "description": "Lists all the hybrid machines in the specified resource group. Use the nextLink property in the response to get the next page of hybrid machines.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get all machine resources in a resource group.": { + "$ref": "./examples/Machines_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridCompute/machines": { + "get": { + "tags": [ + "machines" + ], + "operationId": "Machines_ListBySubscription", + "description": "Lists all the hybrid machines in the specified subscription. Use the nextLink property in the response to get the next page of hybrid machines.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get all machine resources in a subscription.": { + "$ref": "./examples/Machines_ListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{name}/extensions/{extensionName}": { + "put": { + "tags": [ + "MachineExtensions" + ], + "operationId": "MachineExtensions_CreateOrUpdate", + "description": "The operation to create or update the extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine where the extension should be created or updated." + }, + { + "name": "extensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MachineExtension" + }, + "description": "Parameters supplied to the Create Machine Extension operation." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineExtension" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-examples": { + "Create or Update a Machine Extension": { + "$ref": "./examples/PUTExtension.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "MachineExtensions" + ], + "operationId": "MachineExtensions_Update", + "description": "The operation to create or update the extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine where the extension should be created or updated." + }, + { + "name": "extensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine extension." + }, + { + "name": "extensionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MachineExtensionUpdate" + }, + "description": "Parameters supplied to the Create Machine Extension operation." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineExtension" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-examples": { + "Create or Update a Machine Extension": { + "$ref": "./examples/UpdateExtension.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "MachineExtensions" + ], + "operationId": "MachineExtensions_Delete", + "description": "The operation to delete the extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine where the extension should be deleted." + }, + { + "name": "extensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine extension." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete a Machine Extension": { + "$ref": "./examples/DELETEExtension.json" + } + } + }, + "get": { + "tags": [ + "MachineExtensions" + ], + "operationId": "MachineExtensions_Get", + "description": "The operation to get the extension.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine containing the extension." + }, + { + "name": "extensionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine extension." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineExtension" + } + } + }, + "x-ms-examples": { + "GET Machine Extension": { + "$ref": "./examples/GETExtension.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridCompute/machines/{name}/extensions": { + "get": { + "tags": [ + "MachineExtensions" + ], + "operationId": "MachineExtensions_List", + "description": "The operation to get all extensions of a non-Azure machine", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the machine containing the extension." + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The expand expression to apply on the operation." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MachineExtensionsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GET all Machine Extensions": { + "$ref": "./examples/LISTExtension.json" + } + } + } + }, + "/providers/Microsoft.HybridCompute/operations": { + "get": { + "tags": [ + "operations" + ], + "operationId": "Operations_List", + "description": "Gets a list of hybrid compute operations.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + } + }, + "definitions": { + "OperationListResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/OperationValue" + }, + "description": "The list of compute operations" + } + }, + "description": "The List Compute Operation operation response." + }, + "OperationValue": { + "properties": { + "origin": { + "type": "string", + "readOnly": true, + "description": "The origin of the compute operation." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the compute operation." + }, + "display": { + "x-ms-client-flatten": true, + "allOf": [ + { + "$ref": "#/definitions/OperationValueDisplay" + } + ], + "description": "Display properties" + } + }, + "description": "Describes the properties of a Compute Operation value." + }, + "OperationValueDisplay": { + "properties": { + "operation": { + "type": "string", + "readOnly": true, + "description": "The display name of the compute operation." + }, + "resource": { + "type": "string", + "readOnly": true, + "description": "The display name of the resource the operation applies to." + }, + "description": { + "type": "string", + "readOnly": true, + "description": "The description of the operation." + }, + "provider": { + "type": "string", + "readOnly": true, + "description": "The resource provider for the operation." + } + }, + "description": "Describes the properties of a Hybrid Compute Operation Value Display." + }, + "OSProfile": { + "readOnly": true, + "properties": { + "computerName": { + "type": "string", + "readOnly": true, + "description": "Specifies the host OS name of the hybrid machine." + } + }, + "description": "Specifies the operating system settings for the hybrid machine." + }, + "MachineProperties": { + "properties": { + "locationData": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/locationData" + }, + "osProfile": { + "allOf": [ + { + "$ref": "#/definitions/OSProfile" + } + ], + "description": "Specifies the operating system settings for the hybrid machine." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "status": { + "readOnly": true, + "type": "string", + "description": "The status of the hybrid machine agent.", + "enum": [ + "Connected", + "Disconnected", + "Error" + ], + "x-ms-enum": { + "name": "StatusTypes", + "modelAsString": true + } + }, + "lastStatusChange": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The time of the last status change." + }, + "errorDetails": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDetail" + }, + "description": "Details about the error state." + }, + "agentVersion": { + "readOnly": true, + "type": "string", + "description": "The hybrid machine agent full version." + }, + "vmId": { + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ], + "description": "Specifies the hybrid machine unique ID." + }, + "displayName": { + "readOnly": true, + "type": "string", + "description": "Specifies the hybrid machine display name." + }, + "machineFqdn": { + "readOnly": true, + "type": "string", + "description": "Specifies the hybrid machine FQDN." + }, + "clientPublicKey": { + "type": "string", + "description": "Public Key that the client provides to be used during initial resource onboarding" + }, + "osName": { + "readOnly": true, + "type": "string", + "description": "The Operating System running on the hybrid machine." + }, + "osVersion": { + "readOnly": true, + "type": "string", + "description": "The version of Operating System running on the hybrid machine." + }, + "extensions": { + "type": "array", + "items": { + "$ref": "#/definitions/MachineExtensionInstanceView" + }, + "description": "Machine Extensions information" + } + }, + "description": "Describes the properties of a hybrid machine." + }, + "MachineReconnectProperties": { + "properties": { + "vmId": { + "type": "string", + "description": "Specifies the hybrid machine unique ID." + }, + "clientPublicKey": { + "type": "string", + "description": "Public Key that the client provides to be used during initial resource onboarding." + } + }, + "description": "Describes the properties required to reconnect a hybrid machine." + }, + "MachineUpdateProperties": { + "properties": { + "locationData": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/locationData" + } + }, + "description": "Describes the ARM updatable properties of a hybrid machine." + }, + "Machine": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "allOf": [ + { + "$ref": "#/definitions/MachineProperties" + } + ], + "description": "Hybrid Compute Machine properties" + }, + "identity": { + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Identity" + } + ] + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "description": "Describes a hybrid machine." + }, + "MachineUpdate": { + "properties": { + "identity": { + "x-ms-client-flatten": true, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Identity" + } + ], + "description": "Hybrid Compute Machine Managed Identity" + }, + "properties": { + "x-ms-client-flatten": true, + "allOf": [ + { + "$ref": "#/definitions/MachineUpdateProperties" + } + ], + "description": "Hybrid Compute Machine properties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Describes a hybrid machine Update." + }, + "MachineReconnect": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "allOf": [ + { + "$ref": "#/definitions/MachineReconnectProperties" + } + ], + "description": "Hybrid Compute Machine properties" + } + }, + "description": "Describes a hybrid machine reconnect." + }, + "MachineListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Machine" + }, + "description": "The list of hybrid machines." + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of Machines. Call ListNext() with this URI to fetch the next page of hybrid machines." + } + }, + "required": [ + "value" + ], + "description": "The List hybrid machine operation response." + }, + "UpdateResource": { + "description": "The Update Resource model definition.", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + } + }, + "ErrorDetail": { + "title": "Error details.", + "type": "object", + "properties": { + "code": { + "description": "The error's code.", + "type": "string" + }, + "message": { + "description": "A human readable error message.", + "type": "string" + }, + "target": { + "description": "Indicates which property in the request is responsible for the error.", + "type": "string" + }, + "details": { + "description": "Additional error details.", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDetail" + } + } + }, + "required": [ + "code", + "message" + ] + }, + "MachineExtension": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "allOf": [ + { + "$ref": "#/definitions/MachineExtensionProperties" + } + ], + "description": "Describes Machine Extension Properties." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "description": "Describes a Machine Extension." + }, + "MachineExtensionUpdate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "allOf": [ + { + "$ref": "#/definitions/MachineExtensionUpdateProperties" + } + ], + "description": "Describes Machine Extension Update Properties." + } + }, + "allOf": [ + { + "$ref": "#/definitions/UpdateResource" + } + ], + "description": "Describes a Machine Extension Update." + }, + "MachineExtensionProperties": { + "properties": { + "forceUpdateTag": { + "type": "string", + "description": "How the extension handler should be forced to update even if the extension configuration has not changed." + }, + "publisher": { + "type": "string", + "description": "The name of the extension handler publisher." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "autoUpgradeMinorVersion": { + "type": "boolean", + "description": "Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true." + }, + "settings": { + "type": "object", + "description": "Json formatted public settings for the extension." + }, + "protectedSettings": { + "type": "object", + "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state, which only appears in the response." + }, + "instanceView": { + "allOf": [ + { + "$ref": "#/definitions/MachineExtensionInstanceView" + } + ], + "description": "The machine extension instance view." + } + }, + "description": "Describes the properties of a Machine Extension." + }, + "MachineExtensionUpdateProperties": { + "properties": { + "forceUpdateTag": { + "type": "string", + "description": "How the extension handler should be forced to update even if the extension configuration has not changed." + }, + "publisher": { + "type": "string", + "description": "The name of the extension handler publisher." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "autoUpgradeMinorVersion": { + "type": "boolean", + "description": "Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true." + }, + "settings": { + "type": "object", + "description": "Json formatted public settings for the extension." + }, + "protectedSettings": { + "type": "object", + "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all." + } + }, + "description": "Describes the properties of a Machine Extension." + }, + "MachineExtensionInstanceView": { + "properties": { + "name": { + "type": "string", + "description": "The machine extension name." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + }, + "status": { + "properties": { + "code": { + "type": "string", + "description": "The status code." + }, + "level": { + "type": "string", + "description": "The level code.", + "enum": [ + "Info", + "Warning", + "Error" + ], + "x-ms-enum": { + "name": "StatusLevelTypes", + "modelAsString": true + } + }, + "displayStatus": { + "type": "string", + "description": "The short localizable label for the status." + }, + "message": { + "type": "string", + "description": "The detailed status message, including for alerts and error messages." + }, + "time": { + "type": "string", + "format": "date-time", + "description": "The time of the status." + } + }, + "description": "Instance view status." + } + }, + "description": "Describes the Machine Extension Instance View." + }, + "MachineExtensionsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/MachineExtension" + }, + "description": "The list of extensions" + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of machine extensions. Call ListNext() with this to fetch the next page of extensions." + } + }, + "description": "Describes the Machine Extensions List Result." + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/DELETEExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/DELETEExtension.json new file mode 100644 index 000000000000..7903f7eb1276 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/DELETEExtension.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "name": "myMachine", + "extensionName": "MMA", + "api-version": "2019-12-12" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/GETExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/GETExtension.json new file mode 100644 index 000000000000..87f84fda53e4 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/GETExtension.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "b5e4748c-f69a-467c-8749-e2f9c8cd3db0", + "resourceGroupName": "extRG", + "name": "extdemo", + "extensionName": "CustomScriptExtension", + "api-version": "2019-08-02-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/b5e4748c-f69a-467c-8749-e2f9c8cd3db0/resourcegroups/extRG/providers/Microsoft.HybridCompute/Machines/extdemo/Extensions/CustomScriptExtension", + "name": "CustomScriptExtension", + "type": "Microsoft.HybridCompute/machines/extensions", + "location": "eastus2euap", + "properties": { + "publisher": "Microsoft.Compute", + "type": "string", + "typeHandlerVersion": "1.10.3", + "autoUpgradeMinorVersion": false, + "settings": "@{commandToExecute=powershell.exe -c \"Get-Process | Where-Object { $_.CPU -gt 10000 }\"}", + "protectedSettings": {}, + "provisioningState": "Succeeded", + "instanceView": { + "name": "CustomScriptExtension", + "type": "CustomScriptExtension", + "typeHandlerVersion": "1.10.3", + "status": { + "code": "success", + "level": "Information", + "message": "Finished executing command, StdOut: , StdErr:", + "time": "2019-08-08T20:42:10.999Z" + } + } + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/LISTExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/LISTExtension.json new file mode 100644 index 000000000000..cf066fc889cf --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/LISTExtension.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "b5e4748c-f69a-467c-8749-e2f9c8cd3db0", + "resourceGroupName": "extRG", + "name": "extdemo", + "api-version": "2019-08-02-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/b5e4748c-f69a-467c-8749-e2f9c8cd3db0/resourcegroups/extRG/providers/Microsoft.HybridCompute/Machines/extdemo/Extensions/CustomScriptExtension", + "name": "CustomScriptExtension", + "location": "eastus2euap", + "type": "Microsoft.HybridCompute/machines/extensions", + "properties": { + "publisher": "Microsoft.Compute", + "type": "CustomScriptExtension", + "typeHandlerVersion": "1.10.3", + "autoUpgradeMinorVersion": false, + "settings": { + "commandToExecute": "powershell.exe -c \"Get-Process | Where-Object { $_.CPU -gt 10000 }\"" + }, + "provisioningState": "Succeeded", + "instanceView": { + "name": "CustomScriptExtension", + "type": "CustomScriptExtension", + "typeHandlerVersion": "1.10.3", + "status": { + "code": "success", + "level": "Information", + "message": "formattedMessage: Finished executing command, StdOut: , StdErr: " + } + } + } + }, + { + "id": "/subscriptions/b5e4748c-f69a-467c-8749-e2f9c8cd3db0/resourcegroups/extRG/providers/Microsoft.HybridCompute/Machines/extdemo/Extensions/winosupdateextension", + "name": "winosupdateextension", + "location": "eastus2euap", + "type": "Microsoft.HybridCompute/machines/extensions", + "properties": { + "publisher": "microsoft.softwareupdatemanagement.test", + "type": "windowsosupdateextension", + "typeHandlerVersion": "1.0.0.0", + "autoUpgradeMinorVersion": false, + "settings": {}, + "provisioningState": "Creating", + "instanceView": { + "name": "winosupdateextension", + "type": "windowsosupdateextension", + "typeHandlerVersion": "1.0.0.0", + "status": {} + } + } + } + ] + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/Machines_CreateOrUpdate.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/Machines_CreateOrUpdate.json new file mode 100644 index 000000000000..949d455b011a --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/Machines_CreateOrUpdate.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "name": "myMachine", + "api-version": "2019-12-12", + "parameters": { + "location": "eastus2euap", + "properties": { + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCqGKukO1De7zhZj6+H0qtjTkVxwTCpvKe4eCZ0FPqri0cb2JZfXJ/DgYSF6vUpwmJG8wVQZKjeGcjDOL5UlsuusFncCzWBQ7RKNUSesmQRMSGkVb1/3j+skZ6UtW+5u09lHNsj6tQ51s1SPrCBkedbNf0Tp0GbMJDyR4e9T04ZZwIDAQAB" + }, + "identity": { + "type": "SystemAssigned" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/machines/myMachine", + "name": "myMachine", + "location": "eastus2euap", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "f7a068cc-b0b8-46e8-a203-22f301a62a8f", + "tenantId": "c4098cc-91b8-46c2-a205-d82ab1a62a8f" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCqGKukO1De7zhZj6+H0qtjTkVxwTCpvKe4eCZ0FPqri0cb2JZfXJ/DgYSF6vUpwmJG8wVQZKjeGcjDOL5UlsuusFncCzWBQ7RKNUSesmQRMSGkVb1/3j+skZ6UtW+5u09lHNsj6tQ51s1SPrCBkedbNf0Tp0GbMJDyR4e9T04ZZwIDAQAB" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/Machines_Delete.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/Machines_Delete.json new file mode 100644 index 000000000000..6f5f762b008c --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/Machines_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "name": "myMachine", + "api-version": "2019-12-12" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/Machines_Get.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/Machines_Get.json new file mode 100644 index 000000000000..8bf98b1072ed --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/Machines_Get.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "name": "myMachine", + "api-version": "2019-12-12" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/machines/myMachine", + "name": "myMachine", + "location": "eastus2euap", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "f7a068cc-b0b8-46e8-a203-22f301a62a8f", + "tenantId": "c4098cc-91b8-46c2-a205-d82ab1a62a8f" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCqGKukO1De7zhZj6+H0qtjTkVxwTCpvKe4eCZ0FPqri0cb2JZfXJ/DgYSF6vUpwmJG8wVQZKjeGcjDOL5UlsuusFncCzWBQ7RKNUSesmQRMSGkVb1/3j+skZ6UtW+5u09lHNsj6tQ51s1SPrCBkedbNf0Tp0GbMJDyR4e9T04ZZwIDAQAB" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/Machines_ListByResourceGroup.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/Machines_ListByResourceGroup.json new file mode 100644 index 000000000000..da8e28bc175b --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/Machines_ListByResourceGroup.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-12" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/machines/myMachine", + "name": "myMachine", + "location": "eastus2euap", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "f7a068cc-b0b8-46e8-a203-22f301a62a8f", + "tenantId": "c4098cc-91b8-46c2-a205-d82ab1a62a8f" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCqGKukO1De7zhZj6+H0qtjTkVxwTCpvKe4eCZ0FPqri0cb2JZfXJ/DgYSF6vUpwmJG8wVQZKjeGcjDOL5UlsuusFncCzWBQ7RKNUSesmQRMSGkVb1/3j+skZ6UtW+5u09lHNsj6tQ51s1SPrCBkedbNf0Tp0GbMJDyR4e9T04ZZwIDAQAB" + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/machines/myMachine2", + "name": "myMachine2", + "location": "westus2", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "e7a068cc-b0b8-46e8-a203-22f301a62a8f", + "tenantId": "c4098cc-91b8-46c2-a205-d82ab1a62a8f" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "a4a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCqGKukO1De7zhZj6+H0qtjpkVxwTCpvKe4eCZ0FPqri0cb2JZfXJ/DgYSF6vUpwmJG8wVQZKjfGcjDOL5UlsuusFncCzWBQ7RKNUSesmQRMSGkVb1/3j+skZ6UtW+5u09lHNsj6tQ51s1SPrCBkedbNf0Tp0GbMJDyR4e9T04ZZwIDAQAB" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/Machines_ListBySubscription.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/Machines_ListBySubscription.json new file mode 100644 index 000000000000..e85a10d23720 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/Machines_ListBySubscription.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2019-12-12" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup1/providers/Microsoft.HybridCompute/machines/myMachine", + "name": "myMachine", + "location": "eastus2euap", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "f7a068cc-b0b8-46e8-a203-22f301a62a8f", + "tenantId": "c4098cc-91b8-46c2-a205-d82ab1a62a8f" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCqGKukO1De7zhZj6+H0qtjTkVxwTCpvKe4eCZ0FPqri0cb2JZfXJ/DgYSF6vUpwmJG8wVQZKjeGcjDOL5UlsuusFncCzWBQ7RKNUSesmQRMSGkVb1/3j+skZ6UtW+5u09lHNsj6tQ51s1SPrCBkedbNf0Tp0GbMJDyR4e9T04ZZwIDAQAB" + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup2/providers/Microsoft.HybridCompute/machines/myMachine2", + "name": "myMachine2", + "location": "westus2", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "e7a068cc-b0b8-46e8-a203-22f301a62a8f", + "tenantId": "c4098cc-91b8-46c2-a205-d82ab1a62a8f" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "a4a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCqGKukO1De7zhZj6+H0qtjpkVxwTCpvKe4eCZ0FPqri0cb2JZfXJ/DgYSF6vUpwmJG8wVQZKjfGcjDOL5UlsuusFncCzWBQ7RKNUSesmQRMSGkVb1/3j+skZ6UtW+5u09lHNsj6tQ51s1SPrCBkedbNf0Tp0GbMJDyR4e9T04ZZwIDAQAB" + } + } + ], + "nextLink": "string" + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/Machines_Reconnect.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/Machines_Reconnect.json new file mode 100644 index 000000000000..59606d17fc3d --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/Machines_Reconnect.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "name": "myMachine", + "api-version": "2019-12-12", + "parameters": { + "properties": { + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "clientPublicKey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCqGKukO1De7zhZj6+H0qtjTkVxwTCpvKe4eCZ0FPqri0cb2JZfXJ/DgYSF6vUpwmJG8wVQZKjeGcjDOL5UlsuusFncCzWBQ7RKNUSesmQRMSGkVb1/3j+skZ6UtW+5u09lHNsj6tQ51s1SPrCBkedbNf0Tp0GbMJDyR4e9T04ZZwIDAQAB" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/machines/myMachine", + "name": "myMachine", + "location": "eastus2euap", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "f7a068cc-b0b8-46e8-a203-22f301a62a8f", + "tenantId": "c4098cc-91b8-46c2-a205-d82ab1a62a8f" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCqGKukO1De7zhZj6+H0qtjTkVxwTCpvKe4eCZ0FPqri0cb2JZfXJ/DgYSF6vUpwmJG8wVQZKjeGcjDOL5UlsuusFncCzWBQ7RKNUSesmQRMSGkVb1/3j+skZ6UtW+5u09lHNsj6tQ51s1SPrCBkedbNf0Tp0GbMJDyR4e9T04ZZwIDAQAB" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/Machines_Update.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/Machines_Update.json new file mode 100644 index 000000000000..e1ec976eca4c --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/Machines_Update.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "name": "myMachine", + "api-version": "2019-12-12", + "location": "eastus2euap", + "parameters": { + "properties": { + "locationData": { + "name": "Redmond" + } + }, + "identity": { + "type": "SystemAssigned" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.HybridCompute/machines/myMachine", + "name": "myMachine", + "location": "eastus2euap", + "tags": null, + "identity": { + "type": "SystemAssigned", + "principalId": "f7a068cc-b0b8-46e8-a203-22f301a62a8f", + "tenantId": "c4098cc-91b8-46c2-a205-d82ab1a62a8f" + }, + "type": "Microsoft.HybridCompute/machines", + "properties": { + "provisioningState": "Succeeded", + "agentVersion": null, + "status": null, + "lastStatusChange": null, + "errorDetails": null, + "displayName": null, + "machineFqdn": null, + "osName": null, + "osVersion": null, + "osProfile": { + "computerName": null + }, + "vmId": "b7a098cc-b0b8-46e8-a205-62f301a62a8f", + "locationData": { + "name": "Redmond" + }, + "clientPublicKey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCqGKukO1De7zhZj6+H0qtjTkVxwTCpvKe4eCZ0FPqri0cb2JZfXJ/DgYSF6vUpwmJG8wVQZKjeGcjDOL5UlsuusFncCzWBQ7RKNUSesmQRMSGkVb1/3j+skZ6UtW+5u09lHNsj6tQ51s1SPrCBkedbNf0Tp0GbMJDyR4e9T04ZZwIDAQAB" + } + } + } + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/PUTExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/PUTExtension.json new file mode 100644 index 000000000000..f02fecd0c34d --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/PUTExtension.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "b5e4748c-f69a-467c-8749-e2f9c8cd3db0", + "resourceGroupName": "extRG", + "name": "extdemo", + "extensionName": "CustomScriptExtension", + "api-version": "2019-08-02-preview", + "extensionParameters": { + "location": "eastus2euap", + "properties": { + "publisher": "Microsoft.Compute", + "typeHandlerVersion": "1.10", + "type": "CustomScriptExtension", + "settings": { + "commandToExecute": "powershell.exe -c \"Get-Process | Where-Object { $_.CPU -gt 10000 }\"" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/b5e4748c-f69a-467c-8749-e2f9c8cd3db0/resourcegroups/extRG/providers/Microsoft.HybridCompute/Machines/extdemo/Extensions/CustomScriptExtension", + "name": "CustomScriptExtension", + "type": "Microsoft.HybridCompute/machines/extensions", + "location": "eastus2euap", + "properties": { + "publisher": "Microsoft.Compute", + "type": "string", + "typeHandlerVersion": "1.10.3", + "autoUpgradeMinorVersion": false, + "settings": "@{commandToExecute=powershell.exe -c \"Get-Process | Where-Object { $_.CPU -gt 10000 }\"}", + "protectedSettings": {}, + "provisioningState": "Succeeded", + "instanceView": { + "name": "CustomScriptExtension", + "type": "CustomScriptExtension", + "typeHandlerVersion": "1.10.3", + "status": { + "code": "success", + "level": "Information", + "message": "Finished executing command, StdOut: , StdErr:", + "time": "2019-08-08T20:42:10.999Z" + } + } + } + } + }, + "202": {} + } +} diff --git a/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/UpdateExtension.json b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/UpdateExtension.json new file mode 100644 index 000000000000..87f5bb253271 --- /dev/null +++ b/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2019-12-12/examples/UpdateExtension.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "b5e4748c-f69a-467c-8749-e2f9c8cd3db0", + "resourceGroupName": "extRG", + "name": "extdemo", + "extensionName": "CustomScriptExtension", + "api-version": "2019-08-02-preview", + "extensionParameters": { + "properties": { + "publisher": "Microsoft.Compute", + "typeHandlerVersion": "1.10", + "type": "CustomScriptExtension", + "settings": { + "commandToExecute": "powershell.exe -c \"Get-Process | Where-Object { $_.CPU -lt 100 }\"" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/b5e4748c-f69a-467c-8749-e2f9c8cd3db0/resourcegroups/extRG/providers/Microsoft.HybridCompute/Machines/extdemo/Extensions/CustomScriptExtension", + "name": "CustomScriptExtension", + "type": "Microsoft.HybridCompute/machines/extensions", + "location": "eastus2euap", + "properties": { + "publisher": "Microsoft.Compute", + "type": "string", + "typeHandlerVersion": "1.10.3", + "autoUpgradeMinorVersion": false, + "settings": "@{commandToExecute=powershell.exe -c \"Get-Process | Where-Object { $_.CPU -lt 100 }\"}", + "protectedSettings": {}, + "provisioningState": "Succeeded", + "instanceView": { + "name": "CustomScriptExtension", + "type": "CustomScriptExtension", + "typeHandlerVersion": "1.10.3", + "status": { + "code": "success", + "level": "Information", + "message": "Finished executing command, StdOut: , StdErr:", + "time": "2020-01-08T20:42:10.999Z" + } + } + } + } + }, + "202": {} + } +} diff --git a/specification/hybridcompute/resource-manager/readme.cli.md b/specification/hybridcompute/resource-manager/readme.cli.md new file mode 100644 index 000000000000..98ef22df6da5 --- /dev/null +++ b/specification/hybridcompute/resource-manager/readme.cli.md @@ -0,0 +1,27 @@ + +# Dns +This directory contains the Cli common model for the Dns service. + +> Metadata +``` yaml +# Migrated from Powershell's readme + +title: 'ConnectedMachine' + +cli: + cli-directive: + - select: 'operationGroup' + where: + operatoinGroup: 'operations' + hidden: true + - select: 'operation' + where: + operationGroup: 'machines' + operation: '(reconnect|createOrUpdate|update)' + removed: true + - select: 'operation' + where: + operationGroup: 'machineExtensions' + operation: '(createOrUpdate|update|delete|get|list)' + removed: true +``` \ No newline at end of file diff --git a/specification/hybridcompute/resource-manager/readme.md b/specification/hybridcompute/resource-manager/readme.md index 230c9e666f5c..e5c4d2515794 100644 --- a/specification/hybridcompute/resource-manager/readme.md +++ b/specification/hybridcompute/resource-manager/readme.md @@ -24,7 +24,7 @@ These are the global settings for the HybridCompute API. ``` yaml openapi-type: arm -tag: package-2019-08 +tag: package-2019-12 ``` ### Tag: package-2019-03 @@ -45,6 +45,15 @@ input-file: - Microsoft.HybridCompute/preview/2019-08-02/HybridCompute.json ``` +### Tag: package-2019-12 + +These settings apply only when `--tag=package-2019-12` is specified on the command line. + +``` yaml $(tag) == 'package-2019-12' +input-file: +- Microsoft.HybridCompute/stable/2019-12-12/HybridCompute.json +``` + --- # Code Generation @@ -170,16 +179,16 @@ go: ``` yaml $(go) && $(multiapi) batch: - - tag: package-2019-03 + - tag: package-2019-12 ``` -### Tag: package-2019-03 and go +### Tag: package-2019-12 and go -These settings apply only when `--tag=package-2019-03 --go` is specified on the command line. +These settings apply only when `--tag=package-2019-12 --go` is specified on the command line. Please also specify `--go-sdk-folder=`. -``` yaml $(tag)=='package-2019-03' && $(go) -output-folder: $(go-sdk-folder)/services/preview/hybridcompute/mgmt/2019-03-18-preview/hybridcompute +``` yaml $(tag)=='package-2019-12' && $(go) +output-folder: $(go-sdk-folder)/services/preview/hybridcompute/mgmt/2019-12-12/hybridcompute ``` ## Java @@ -200,18 +209,18 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-hybridcompute ``` yaml $(java) && $(multiapi) batch: - - tag: package-2019-03 + - tag: package-2019-12 ``` -### Tag: package-2019-03 and java +### Tag: package-2019-12 and java -These settings apply only when `--tag=package-2019-03 --java` is specified on the command line. +These settings apply only when `--tag=package-2019-12 --java` is specified on the command line. Please also specify `--azure-libraries-for-java=`. -``` yaml $(tag) == 'package-2019-03' && $(java) && $(multiapi) +``` yaml $(tag) == 'package-2019-12' && $(java) && $(multiapi) java: - namespace: com.microsoft.azure.management.hybridcompute.v2019_03_18 - output-folder: $(azure-libraries-for-java-folder)/sdk/hybridcompute/mgmt-v2019_03_18 + namespace: com.microsoft.azure.management.hybridcompute.v2019_12_12 + output-folder: $(azure-libraries-for-java-folder)/sdk/hybridcompute/mgmt-v2019_12_12 regenerate-manager: true generate-interface: true @@ -231,6 +240,7 @@ require: $(this-folder)/../../../profiles/readme.md input-file: - $(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 ``` diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_Create-PUT-example-41.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_Create-PUT-example-41.json new file mode 100644 index 000000000000..1085bb6edafb --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_Create-PUT-example-41.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "3f518b96-c63c-4e1e-b627-aa5650877eb6" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "28" + ], + "dataManager": { + "location": "westus" + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "etag": "W/\"datetime'2020-02-05T08%3A45%3A27.420781Z'\"_W/\"datetime'2020-02-05T08%3A45%3A27.4264561Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations", + "name": "TestAzureSDKOperations", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_Delete-DELETE-example-41.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_Delete-DELETE-example-41.json new file mode 100644 index 000000000000..85f5946d67a8 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_Delete-DELETE-example-41.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "4d2994de-4214-499b-a7eb-e3b5fb8b45af" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_Get-GET-example-41.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_Get-GET-example-41.json new file mode 100644 index 000000000000..9a3d5c9bf0fd --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_Get-GET-example-41.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "5b81ff26-1135-4fb5-ba2a-d197fc7a1d9f" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "etag": "W/\"datetime'2020-02-05T04%3A22%3A40.6354864Z'\"_W/\"datetime'2020-02-05T04%3A22%3A40.7912864Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations", + "name": "TestAzureSDKOperations", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_List-GET-example-21.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_List-GET-example-21.json new file mode 100644 index 000000000000..ee99cc8e0c92 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_List-GET-example-21.json @@ -0,0 +1,902 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "6004f9f8-2f56-4b46-98f5-0ff58b24cdd8" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "etag": "W/\"datetime'2018-07-23T09%3A58%3A15.3299896Z'\"_W/\"datetime'2018-07-23T09%3A58%3A15.3500041Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/batchcertneafterdep1", + "name": "batchcertneafterdep1", + "type": "Microsoft.HybridData/dataManagers", + "location": "northeurope", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-07-16T09%3A46%3A06.3239385Z'\"_W/\"datetime'2018-07-16T09%3A46%3A06.3289422Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/batchcertneold", + "name": "batchcertneold", + "type": "Microsoft.HybridData/dataManagers", + "location": "northeurope", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-03-15T10%3A53%3A10.0933461Z'\"_W/\"datetime'2018-03-15T10%3A53%3A10.1213654Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/dmsnesmoketest", + "name": "dmsnesmoketest", + "type": "Microsoft.HybridData/dataManagers", + "location": "northeurope", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-07-10T06%3A36%3A18.0878861Z'\"_W/\"datetime'2018-07-10T06%3A36%3A18.1139046Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/ne-07-10", + "name": "ne-07-10", + "type": "Microsoft.HybridData/dataManagers", + "location": "northeurope", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-04-10T06%3A09%3A32.3093315Z'\"_W/\"datetime'2018-04-10T06%3A09%3A32.3243425Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/dms-04-10", + "name": "dms-04-10", + "type": "Microsoft.HybridData/dataManagers", + "location": "eastus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-07-07T19%3A05%3A00.7594128Z'\"_W/\"datetime'2018-07-07T19%3A05%3A00.7664174Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/eus-07-08", + "name": "eus-07-08", + "type": "Microsoft.HybridData/dataManagers", + "location": "eastus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-07-10T06%3A36%3A46.642745Z'\"_W/\"datetime'2018-07-10T06%3A36%3A46.7658314Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/eus-07-10", + "name": "eus-07-10", + "type": "Microsoft.HybridData/dataManagers", + "location": "eastus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-07-23T07%3A44%3A12.1141909Z'\"_W/\"datetime'2018-07-23T07%3A44%3A12.1432118Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/batchcertwus2afterdep1", + "name": "batchcertwus2afterdep1", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus2", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-07-16T09%3A44%3A49.261222Z'\"_W/\"datetime'2018-07-16T09%3A44%3A49.2702259Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/batchcertwus2old", + "name": "batchcertwus2old", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus2", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-03-20T08%3A08%3A52.7007451Z'\"_W/\"datetime'2018-03-20T08%3A08%3A52.7207592Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/smoketestwus2", + "name": "smoketestwus2", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus2", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-02-17T14%3A50%3A37.866739Z'\"_W/\"datetime'2019-02-17T14%3A50%3A38.038859Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/AzureSDKOperations", + "name": "AzureSDKOperations", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus2", + "tags": {}, + "sku": {} + }, + { + "etag": "W/\"datetime'2018-07-18T04%3A48%3A50.1962283Z'\"_W/\"datetime'2018-07-18T04%3A48%3A50.3433306Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/batchcertwcusafterdep1", + "name": "batchcertwcusafterdep1", + "type": "Microsoft.HybridData/dataManagers", + "location": "westcentralus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-07-16T09%3A43%3A43.569014Z'\"_W/\"datetime'2018-07-16T09%3A43%3A43.5740171Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/batchcertwcusold", + "name": "batchcertwcusold", + "type": "Microsoft.HybridData/dataManagers", + "location": "westcentralus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-03-20T08%3A08%3A11.5901685Z'\"_W/\"datetime'2018-03-20T08%3A08%3A11.6161871Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/smoketestwcus", + "name": "smoketestwcus", + "type": "Microsoft.HybridData/dataManagers", + "location": "westcentralus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-04-13T09%3A17%3A33.9031753Z'\"_W/\"datetime'2018-04-13T09%3A17%3A33.9301949Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/wcus04-13", + "name": "wcus04-13", + "type": "Microsoft.HybridData/dataManagers", + "location": "westcentralus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-07-05T14%3A40%3A04.7506699Z'\"_W/\"datetime'2018-07-05T14%3A40%3A04.7776888Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/wcus07-05", + "name": "wcus07-05", + "type": "Microsoft.HybridData/dataManagers", + "location": "westcentralus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-06-05T11%3A17%3A08.7276428Z'\"_W/\"datetime'2018-06-05T11%3A17%3A08.7336469Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/wcussmoketest", + "name": "wcussmoketest", + "type": "Microsoft.HybridData/dataManagers", + "location": "westcentralus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-05-17T09%3A53%3A29.1283879Z'\"_W/\"datetime'2019-05-17T09%3A53%3A29.1844278Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/ForDMS/providers/Microsoft.HybridData/dataManagers/smoketest", + "name": "smoketest", + "type": "Microsoft.HybridData/dataManagers", + "location": "westcentralus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-07-06T16%3A47%3A17.0360354Z'\"_W/\"datetime'2019-07-06T16%3A47%3A17.2111588Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/amemigration/providers/Microsoft.HybridData/dataManagers/seasmoketestresource", + "name": "seasmoketestresource", + "type": "Microsoft.HybridData/dataManagers", + "location": "southeastasia", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-07-23T08%3A24%3A48.4779951Z'\"_W/\"datetime'2018-07-23T08%3A24%3A48.5120189Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/batchcertseaafterdep1", + "name": "batchcertseaafterdep1", + "type": "Microsoft.HybridData/dataManagers", + "location": "southeastasia", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-07-16T10%3A00%3A28.3513242Z'\"_W/\"datetime'2018-07-16T10%3A00%3A28.3583291Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/batchcertseaold", + "name": "batchcertseaold", + "type": "Microsoft.HybridData/dataManagers", + "location": "southeastasia", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-06-13T18%3A04%3A02.4340032Z'\"_W/\"datetime'2018-06-13T18%3A04%3A02.4430097Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/testresourceon613", + "name": "testresourceon613", + "type": "Microsoft.HybridData/dataManagers", + "location": "southeastasia", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-05-24T10%3A28%3A41.92206Z'\"_W/\"datetime'2019-05-24T10%3A28%3A42.0641646Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/copyspeedexp/providers/Microsoft.HybridData/dataManagers/copyexp-wus-int", + "name": "copyexp-wus-int", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-02-22T11%3A13%3A22.4906285Z'\"_W/\"datetime'2018-02-22T11%3A13%3A22.6667555Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/DmsBvtRG3/providers/Microsoft.HybridData/dataManagers/testServiceIncident", + "name": "testServiceIncident", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-11-29T04%3A12%3A49.3583436Z'\"_W/\"datetime'2019-11-29T04%3A12%3A49.5344699Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/DmsBvtRG/providers/Microsoft.HybridData/dataManagers/prtankWusTestRes", + "name": "prtankWusTestRes", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-11-19T08%3A06%3A46.7263604Z'\"_W/\"datetime'2019-11-19T08%3A06%3A46.7824012Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/DmsBvtRG/providers/Microsoft.HybridData/dataManagers/storagemanagerresource", + "name": "storagemanagerresource", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": { + "doNotDelete": "Yes" + }, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-05-27T05%3A27%3A35.150482Z'\"_W/\"datetime'2019-05-27T05%3A27%3A35.3105951Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsdatasource/providers/Microsoft.HybridData/dataManagers/sdf", + "name": "sdf", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-11-29T07%3A55%3A30.6749871Z'\"_W/\"datetime'2018-11-29T07%3A55%3A30.6809932Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsintrg/providers/Microsoft.HybridData/dataManagers/int-wus-11-29", + "name": "int-wus-11-29", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-03-17T15%3A03%3A36.5993632Z'\"_W/\"datetime'2018-03-17T15%3A03%3A36.7594788Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsintrg/providers/Microsoft.HybridData/dataManagers/intnewresource", + "name": "intnewresource", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-03-13T08%3A11%3A39.9025375Z'\"_W/\"datetime'2018-03-13T08%3A11%3A40.1036797Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsintrg/providers/Microsoft.HybridData/dataManagers/intresource", + "name": "intresource", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-10-30T09%3A56%3A32.9053638Z'\"_W/\"datetime'2018-10-30T09%3A56%3A33.0704765Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsintrg/providers/Microsoft.HybridData/dataManagers/intresource-10-30", + "name": "intresource-10-30", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-03-13T08%3A11%3A40.1389003Z'\"_W/\"datetime'2018-03-13T08%3A11%3A40.2479789Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsintrg/providers/Microsoft.HybridData/dataManagers/testresourceint", + "name": "testresourceint", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-07-12T09%3A46%3A50.1774789Z'\"_W/\"datetime'2018-07-12T09%3A46%3A50.3215821Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/batchcertoldresource", + "name": "batchcertoldresource", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-03-01T11%3A52%3A02.7715263Z'\"_W/\"datetime'2018-03-01T11%3A52%3A02.7765292Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/dmswusresource", + "name": "dmswusresource", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-06-07T13%3A08%3A29.4575101Z'\"_W/\"datetime'2018-06-07T13%3A08%3A29.629632Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/dsmsnodebinarytest", + "name": "dsmsnodebinarytest", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-05-23T08%3A45%3A40.8795252Z'\"_W/\"datetime'2018-05-23T08%3A45%3A41.0666584Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/dsmsresource", + "name": "dsmsresource", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-06-05T05%3A02%3A54.5475181Z'\"_W/\"datetime'2018-06-05T05%3A02%3A54.73265Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/dsmsresource1", + "name": "dsmsresource1", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-06-05T05%3A34%3A59.227556Z'\"_W/\"datetime'2018-06-05T05%3A34%3A59.4357029Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/dsmsresource2", + "name": "dsmsresource2", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-06-05T11%3A02%3A52.3744002Z'\"_W/\"datetime'2018-06-05T11%3A02%3A52.5365141Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/dsmsresource3", + "name": "dsmsresource3", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-06-08T15%3A58%3A07.1761866Z'\"_W/\"datetime'2018-06-08T15%3A58%3A07.3703309Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/dsmsresource4", + "name": "dsmsresource4", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-10-03T08%3A03%3A21.5040402Z'\"_W/\"datetime'2018-10-03T08%3A03%3A21.6421388Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/govtcloudtest", + "name": "govtcloudtest", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-02-01T10%3A38%3A07.9487894Z'\"_W/\"datetime'2018-02-01T10%3A38%3A08.1499556Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/intresource2", + "name": "intresource2", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-07-03T15%3A33%3A45.7585904Z'\"_W/\"datetime'2018-07-03T15%3A33%3A45.932713Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/intresource3rdjuly", + "name": "intresource3rdjuly", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-09-24T12%3A01%3A29.4312765Z'\"_W/\"datetime'2018-09-24T12%3A01%3A29.489317Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/intsmallfiles", + "name": "intsmallfiles", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-05-31T09%3A41%3A28.6739766Z'\"_W/\"datetime'2018-05-31T09%3A41%3A28.8551054Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/longrunningjob", + "name": "longrunningjob", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-02-21T10%3A06%3A55.2175183Z'\"_W/\"datetime'2018-02-21T10%3A06%3A55.2235223Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/sampleclientdatamanager", + "name": "sampleclientdatamanager", + "type": "Microsoft.HybridData/dataManagers", + "location": "WestUS", + "tags": {}, + "sku": {} + }, + { + "etag": "W/\"datetime'2018-04-23T10%3A16%3A00.5751127Z'\"_W/\"datetime'2018-04-23T10%3A16%3A00.5841193Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/ssdmbcdrresource", + "name": "ssdmbcdrresource", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-12-06T05%3A48%3A21.5818324Z'\"_W/\"datetime'2018-12-06T05%3A48%3A21.7748343Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/copyspeedexp/providers/Microsoft.HybridData/dataManagers/copyexp-we-int1", + "name": "copyexp-we-int1", + "type": "Microsoft.HybridData/dataManagers", + "location": "westeurope", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-11-19T08%3A08%3A48.3033932Z'\"_W/\"datetime'2019-11-19T08%3A08%3A48.319407Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/DmsBvtRG/providers/Microsoft.HybridData/dataManagers/prtankbvttest", + "name": "prtankbvttest", + "type": "Microsoft.HybridData/dataManagers", + "location": "westeurope", + "tags": { + "test": "true", + "doNotDelete": "yes" + }, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2020-01-30T10%3A18%3A35.3300821Z'\"_W/\"datetime'2020-01-30T10%3A18%3A35.3460951Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/DmsBvtRG/providers/Microsoft.HybridData/dataManagers/prtankBvtWeTest", + "name": "prtankBvtWeTest", + "type": "Microsoft.HybridData/dataManagers", + "location": "westeurope", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-11-28T10%3A55%3A58.530785Z'\"_W/\"datetime'2018-11-28T10%3A55%3A58.8107858Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/we-int-1", + "name": "we-int-1", + "type": "Microsoft.HybridData/dataManagers", + "location": "westeurope", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-08-06T11%3A48%3A28.3406561Z'\"_W/\"datetime'2019-08-06T11%3A48%3A28.5107985Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/ForDMS/providers/Microsoft.HybridData/dataManagers/mrinsaha-dms-we", + "name": "mrinsaha-dms-we", + "type": "Microsoft.HybridData/dataManagers", + "location": "westeurope", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-05-14T09%3A07%3A12.3469862Z'\"_W/\"datetime'2019-05-14T09%3A07%3A12.3589889Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/ForDMS/providers/Microsoft.HybridData/dataManagers/testdurga2", + "name": "testdurga2", + "type": "Microsoft.HybridData/dataManagers", + "location": "westeurope", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-11-14T02%3A42%3A38.6041538Z'\"_W/\"datetime'2018-11-14T02%3A42%3A38.6081571Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/amemigration/providers/Microsoft.HybridData/dataManagers/ecy-aftermigration", + "name": "ecy-aftermigration", + "type": "Microsoft.HybridData/dataManagers", + "location": "eastus2euap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-11-11T03%3A11%3A40.5411975Z'\"_W/\"datetime'2018-11-11T03%3A11%3A40.6752923Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/amemigration/providers/Microsoft.HybridData/dataManagers/ecy-ame", + "name": "ecy-ame", + "type": "Microsoft.HybridData/dataManagers", + "location": "eastus2euap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-04-15T09%3A05%3A36.2264018Z'\"_W/\"datetime'2019-04-15T09%3A05%3A36.2854433Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/cleanupservice/providers/Microsoft.HybridData/dataManagers/ecysmoketest", + "name": "ecysmoketest", + "type": "Microsoft.HybridData/dataManagers", + "location": "eastus2euap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-05-09T09%3A51%3A11.720705Z'\"_W/\"datetime'2019-05-09T09%3A51%3A11.8728117Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/copyspeedexp/providers/Microsoft.HybridData/dataManagers/copyspeed-ecy", + "name": "copyspeed-ecy", + "type": "Microsoft.HybridData/dataManagers", + "location": "eastus2euap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-04-10T09%3A41%3A03.749493Z'\"_W/\"datetime'2018-04-10T09%3A41%3A03.8805855Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/ecyresource-04-10", + "name": "ecyresource-04-10", + "type": "Microsoft.HybridData/dataManagers", + "location": "eastus2euap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-02-20T10%3A01%3A55.2712681Z'\"_W/\"datetime'2018-02-20T10%3A01%3A55.441388Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/feb20ecyresource", + "name": "feb20ecyresource", + "type": "Microsoft.HybridData/dataManagers", + "location": "eastus2euap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-02-06T08%3A37%3A23.6486177Z'\"_W/\"datetime'2018-02-06T08%3A37%3A23.7857152Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/hari-dms-analysis-ecy", + "name": "hari-dms-analysis-ecy", + "type": "Microsoft.HybridData/dataManagers", + "location": "eastus2euap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-01-14T05%3A16%3A38.9573714Z'\"_W/\"datetime'2019-01-14T05%3A16%3A39.0774564Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/ForDMS/providers/Microsoft.HybridData/dataManagers/EcySmoke", + "name": "EcySmoke", + "type": "Microsoft.HybridData/dataManagers", + "location": "eastus2euap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-08-12T10%3A20%3A40.4679832Z'\"_W/\"datetime'2019-08-12T10%3A20%3A40.6030796Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/EcyTestDMSRes", + "name": "EcyTestDMSRes", + "type": "Microsoft.HybridData/dataManagers", + "location": "eastus2euap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-11-11T03%3A13%3A19.0340832Z'\"_W/\"datetime'2018-11-11T03%3A13%3A19.038086Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/amemigration/providers/Microsoft.HybridData/dataManagers/ccy-ame", + "name": "ccy-ame", + "type": "Microsoft.HybridData/dataManagers", + "location": "centraluseuap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-03-26T04%3A54%3A23.06065Z'\"_W/\"datetime'2019-03-26T04%3A54%3A23.1216929Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/amemigration/providers/Microsoft.HybridData/dataManagers/ccytest-26-march", + "name": "ccytest-26-march", + "type": "Microsoft.HybridData/dataManagers", + "location": "Central US EUAP", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-07-12T09%3A47%3A44.2155827Z'\"_W/\"datetime'2018-07-12T09%3A47%3A44.2235883Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/batchcertoldccy", + "name": "batchcertoldccy", + "type": "Microsoft.HybridData/dataManagers", + "location": "centraluseuap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-09-04T06%3A47%3A31.8676921Z'\"_W/\"datetime'2018-09-04T06%3A47%3A32.0268062Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/ccylargenumberoffiles", + "name": "ccylargenumberoffiles", + "type": "Microsoft.HybridData/dataManagers", + "location": "centraluseuap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-02-20T10%3A02%3A19.8430119Z'\"_W/\"datetime'2018-02-20T10%3A02%3A20.0291444Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/feb20ccyresoirce", + "name": "feb20ccyresoirce", + "type": "Microsoft.HybridData/dataManagers", + "location": "centraluseuap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-09-24T05%3A24%3A44.2753634Z'\"_W/\"datetime'2018-09-24T05%3A24%3A44.4114594Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/dmsResourceGroup/providers/Microsoft.HybridData/dataManagers/smallfilesccyjob", + "name": "smallfilesccyjob", + "type": "Microsoft.HybridData/dataManagers", + "location": "centraluseuap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-04-22T07%3A45%3A22.6635575Z'\"_W/\"datetime'2019-04-22T07%3A45%3A22.8346781Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/ForDMS/providers/Microsoft.HybridData/dataManagers/MSCCY", + "name": "MSCCY", + "type": "Microsoft.HybridData/dataManagers", + "location": "centraluseuap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-02-07T09%3A38%3A22.6976591Z'\"_W/\"datetime'2019-02-07T09%3A38%3A22.8767865Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/ForDMS/providers/Microsoft.HybridData/dataManagers/res4ccyBCDR", + "name": "res4ccyBCDR", + "type": "Microsoft.HybridData/dataManagers", + "location": "centraluseuap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-09-25T07%3A11%3A55.7616108Z'\"_W/\"datetime'2018-09-25T07%3A11%3A55.8957061Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/prpare/providers/Microsoft.HybridData/dataManagers/prpare50lakhsmallfiles", + "name": "prpare50lakhsmallfiles", + "type": "Microsoft.HybridData/dataManagers", + "location": "centraluseuap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-08-13T04%3A47%3A07.5063631Z'\"_W/\"datetime'2019-08-13T04%3A47%3A07.5113667Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/CcyTestDMSRes2", + "name": "CcyTestDMSRes2", + "type": "Microsoft.HybridData/dataManagers", + "location": "centraluseuap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2018-06-15T07%3A04%3A34.2882012Z'\"_W/\"datetime'2018-06-15T07%3A04%3A34.3472441Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/test-varavi/providers/Microsoft.HybridData/dataManagers/ccytestingpav2", + "name": "ccytestingpav2", + "type": "Microsoft.HybridData/dataManagers", + "location": "centraluseuap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + } + ], + "nextLink": "https://management.azure.com/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/providers/Microsoft.HybridData/dataManagers?api-version=2019-06-01&%24skiptoken=fVLbbqMwFPyXaLtvaQyFNlSqVmm4JCjQxCE28GbHbgIY4gIhl6r%2fvm6ibbXSaiXLss9l5njG772KH9tZVhVN7%2fG9h51ltFr2HnvbtpXN42BQkopseMmr9pac9zW%2fXe%2fKQbOnzbrOZJvtqmZwz4GuWa9m%2f05%2fIH3j7t7sW8B47QOTc2boKsgeBrLedRnjdTMIsnW9a3av7e3kROuM2aQlA6a24EJVN7%2bIzPqdKlXoTzrQrD647wPt54%2bmyGS0K3j1NLctg%2bLDhpXotNZFR3OQBUvjMM2eBS3DLvXEPj2DjMWwnEWOPs2HNzq1F7vhQrf2TGUZdgHB1h55Vp1i45rdTO2jTXVTZUwtiaFU5xXVW0FzIxxno810PBqiL07jNMtHw5mWinUVqtovlPFoM3ehufZWChd5bka9lar7E1FzfCJt5o4p%2bAQuktgH5Mo2S%2bNC9QRL5xjYo21UaogB7Q1GiBCBQBRLP9BEFNjPIRfFMXJhzYA5wTEMoZs2WDAYONrbMgpTpDlnPJHjtPRj6smcRuI%2byX0SOMeW2CilhTzggi2JByewTEOYixqjrbr7MaxQinTYJLoZzqJDF5XIYO7zdl1BqdTraNEKHn1rcs37HQOX%2bHEabcAUhy2qZBZoqYkjHzNXJIuKbdEZ7a9zhW3qXXkTsX3hSCZRlRbYkW%2fqHQXH0zOqWMILv0zO4QvRfdWf5oHmS4W35H%2fjo%2b85v%2bb49sxzT6mu9POs%2fOrrp1eriS8pdk9cvVC59I%2bKi1P2ofvvrxnOQNhRpQyt0PaijoAd0dF%2bvrm5Y2r1Pj5%2bAw%3d%3d" + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_ListByResourceGroup-GET-example-31.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_ListByResourceGroup-GET-example-31.json new file mode 100644 index 000000000000..c0b852b18d76 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_ListByResourceGroup-GET-example-31.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "bc4254ce-7ff0-4dbb-9ef3-af4b4295ca5f" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "etag": "W/\"datetime'2019-02-17T14%3A50%3A37.866739Z'\"_W/\"datetime'2019-02-17T14%3A50%3A38.038859Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/AzureSDKOperations", + "name": "AzureSDKOperations", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus2", + "tags": {}, + "sku": {} + }, + { + "etag": "W/\"datetime'2019-03-30T06%3A35%3A01.1816182Z'\"_W/\"datetime'2019-03-30T06%3A35%3A01.2846913Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/AzSDKOps", + "name": "AzSDKOps", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": { + "new": "true", + "hello": "World", + "helL00000": "dlrow" + }, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2020-02-05T04%3A22%3A40.6354864Z'\"_W/\"datetime'2020-02-05T04%3A22%3A40.7912864Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations", + "name": "TestAzureSDKOperations", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-08-12T10%3A20%3A40.4679832Z'\"_W/\"datetime'2019-08-12T10%3A20%3A40.6030796Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/EcyTestDMSRes", + "name": "EcyTestDMSRes", + "type": "Microsoft.HybridData/dataManagers", + "location": "eastus2euap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + }, + { + "etag": "W/\"datetime'2019-08-13T04%3A47%3A07.5063631Z'\"_W/\"datetime'2019-08-13T04%3A47%3A07.5113667Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourcegroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/CcyTestDMSRes2", + "name": "CcyTestDMSRes2", + "type": "Microsoft.HybridData/dataManagers", + "location": "centraluseuap", + "tags": {}, + "sku": { + "name": "DS0", + "tier": "Standard" + } + } + ] + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_Update-PATCH-example-43.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_Update-PATCH-example-43.json new file mode 100644 index 000000000000..e568d973a4a5 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataManagers_Update-PATCH-example-43.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "741a70f2-32a6-408f-b3ba-88609a9a931e" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "130" + ], + "dataManagerUpdateParameter": { + "sku": { + "name": "DS0", + "tier": "Standard" + }, + "tags": { + "UpdateDateTime": "05-Feb-20 2:17:22 PM" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "etag": "W/\"datetime'2020-02-05T08%3A47%3A23.8171822Z'\"_W/\"datetime'2020-02-05T08%3A47%3A23.8361957Z'\"", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations", + "name": "TestAzureSDKOperations", + "type": "Microsoft.HybridData/dataManagers", + "location": "westus", + "tags": { + "updateDateTime": "05-Feb-20 2:17:22 PM" + }, + "sku": { + "name": "DS0", + "tier": "Standard" + } + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataServices_Get-GET-example-62.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataServices_Get-GET-example-62.json new file mode 100644 index 000000000000..8b7f50d96134 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataServices_Get-GET-example-62.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataServiceName": "DataTransformation", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "cf35b680-dc80-4815-ab83-9364acc3bce6" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "state": "Enabled", + "supportedDataSinkTypes": [ + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/AzureStorageAccount", + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/AzureMediaServicesAccount" + ], + "supportedDataSourceTypes": [ + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/StorSimple8000Series" + ] + }, + "name": "DataTransformation", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation", + "type": "Microsoft.HybridData/dataManagers/dataServices" + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataServices_ListByDataManager-GET-example-51.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataServices_ListByDataManager-GET-example-51.json new file mode 100644 index 000000000000..c714fa2956e4 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataServices_ListByDataManager-GET-example-51.json @@ -0,0 +1,109 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "23af7f48-27fe-4aa3-b6e2-7045b784b6f9" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "state": "Enabled", + "supportedDataSinkTypes": [ + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/AzureStorageAccount", + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/AzureMediaServicesAccount" + ], + "supportedDataSourceTypes": [ + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/StorSimple8000Series" + ] + }, + "name": "DataTransformation", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation", + "type": "Microsoft.HybridData/dataManagers/dataServices" + }, + { + "properties": { + "state": "Supported", + "supportedDataSinkTypes": [], + "supportedDataSourceTypes": [] + }, + "name": "KeyRollover", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/KeyRollover", + "type": "Microsoft.HybridData/dataManagers/dataServices" + }, + { + "properties": { + "state": "Supported", + "supportedDataSinkTypes": [], + "supportedDataSourceTypes": [] + }, + "name": "DataSecurity", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataSecurity", + "type": "Microsoft.HybridData/dataManagers/dataServices" + }, + { + "properties": { + "state": "Supported", + "supportedDataSinkTypes": [], + "supportedDataSourceTypes": [] + }, + "name": "DataInsights", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataInsights", + "type": "Microsoft.HybridData/dataManagers/dataServices" + }, + { + "properties": { + "state": "Supported", + "supportedDataSinkTypes": [], + "supportedDataSourceTypes": [] + }, + "name": "DataHealth", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataHealth", + "type": "Microsoft.HybridData/dataManagers/dataServices" + }, + { + "properties": { + "state": "Supported", + "supportedDataSinkTypes": [], + "supportedDataSourceTypes": [] + }, + "name": "RunnerService", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/RunnerService", + "type": "Microsoft.HybridData/dataManagers/dataServices" + }, + { + "properties": { + "state": "Enabled", + "supportedDataSinkTypes": [ + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/SqlServer" + ], + "supportedDataSourceTypes": [ + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/StorSimple8000Series", + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/AzureStorageAccount" + ] + }, + "name": "IndexingAndSearch", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/IndexingAndSearch", + "type": "Microsoft.HybridData/dataManagers/dataServices" + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStoreTypes_Get-GET-example-182.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStoreTypes_Get-GET-example-182.json new file mode 100644 index 000000000000..d8f9d213c0da --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStoreTypes_Get-GET-example-182.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataStoreTypeName": "StorSimple8000Series", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "0e9a7d14-9e60-4523-b30b-2ade6a80c3cb" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "repositoryType": "Microsoft.StorSimple/managers", + "state": "Enabled", + "supportedDataServicesAsSink": [], + "supportedDataServicesAsSource": [ + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation", + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/IndexingAndSearch" + ] + }, + "name": "StorSimple8000Series", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/StorSimple8000Series", + "type": "Microsoft.HybridData/dataManagers/dataStoreTypes" + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStoreTypes_Get-GET-example-183.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStoreTypes_Get-GET-example-183.json new file mode 100644 index 000000000000..9fd57ee6dd64 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStoreTypes_Get-GET-example-183.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataStoreTypeName": "AzureStorageAccount", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "76840018-321d-4eee-9bde-089e9c0c20e6" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "repositoryType": "Microsoft.Storage/storageAccounts", + "state": "Enabled", + "supportedDataServicesAsSink": [ + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation" + ], + "supportedDataServicesAsSource": [ + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/IndexingAndSearch" + ] + }, + "name": "AzureStorageAccount", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/AzureStorageAccount", + "type": "Microsoft.HybridData/dataManagers/dataStoreTypes" + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStoreTypes_ListByDataManager-GET-example-171.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStoreTypes_ListByDataManager-GET-example-171.json new file mode 100644 index 000000000000..42c20dcfac58 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStoreTypes_ListByDataManager-GET-example-171.json @@ -0,0 +1,104 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "6267bb46-ab0a-446a-af65-34d208290382" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "repositoryType": "Microsoft.StorSimple/managers", + "state": "Enabled", + "supportedDataServicesAsSink": [], + "supportedDataServicesAsSource": [ + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation", + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/IndexingAndSearch" + ] + }, + "name": "StorSimple8000Series", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/StorSimple8000Series", + "type": "Microsoft.HybridData/dataManagers/dataStoreTypes" + }, + { + "properties": { + "repositoryType": "Microsoft.Storage/storageAccounts", + "state": "Enabled", + "supportedDataServicesAsSink": [ + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation" + ], + "supportedDataServicesAsSource": [ + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/IndexingAndSearch" + ] + }, + "name": "AzureStorageAccount", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/AzureStorageAccount", + "type": "Microsoft.HybridData/dataManagers/dataStoreTypes" + }, + { + "properties": { + "repositoryType": "Microsoft.Media/mediaservices", + "state": "Enabled", + "supportedDataServicesAsSink": [ + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation" + ], + "supportedDataServicesAsSource": [] + }, + "name": "AzureMediaServicesAccount", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/AzureMediaServicesAccount", + "type": "Microsoft.HybridData/dataManagers/dataStoreTypes" + }, + { + "properties": { + "state": "Enabled", + "supportedDataServicesAsSink": [], + "supportedDataServicesAsSource": [] + }, + "name": "RunnerDataSource", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/RunnerDataSource", + "type": "Microsoft.HybridData/dataManagers/dataStoreTypes" + }, + { + "properties": { + "state": "Enabled", + "supportedDataServicesAsSink": [], + "supportedDataServicesAsSource": [] + }, + "name": "RunnerDataSink", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/RunnerDataSink", + "type": "Microsoft.HybridData/dataManagers/dataStoreTypes" + }, + { + "properties": { + "repositoryType": "Microsoft.Sql/servers", + "state": "Enabled", + "supportedDataServicesAsSink": [ + "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/IndexingAndSearch" + ], + "supportedDataServicesAsSource": [] + }, + "name": "SqlServer", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/SqlServer", + "type": "Microsoft.HybridData/dataManagers/dataStoreTypes" + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_CreateOrUpdate_DataSink-PUT-example-162.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_CreateOrUpdate_DataSink-PUT-example-162.json new file mode 100644 index 000000000000..711ac3c593d4 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_CreateOrUpdate_DataSink-PUT-example-162.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataStoreName": "TestAzureStorage1", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "83706695-2c05-4e9a-89ed-39fcd304e510" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "2546" + ], + "dataStore": { + "properties": { + "repositoryId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.Storage/storageAccounts/dmsdatasink", + "state": "Enabled", + "extendedProperties": { + "storageAccountNameForQueue": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.Storage/storageAccounts/dmsdatasink", + "extendedSaName": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.Storage/storageAccounts/dmsdatasink", + "extendedSaKey": null + }, + "dataStoreTypeId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/AzureStorageAccount", + "customerSecrets": [ + { + "keyIdentifier": "StorageAccountAccessKey", + "keyValue": "Of4H9eF03G8QuxvkZQEbFWv3YdN3U//WugzuqReQekbXXQyg+QSicVKrwSOOKVi1zWMYGbKg7d5/ES2gdz+O5ZEw89bvE4mJD/wQmkIsqhPnbN0gyVK6nZePXVUU1A+UzjLfvhSA6KyUQfzNAZ5/TLt6fo1JyQrKTtkvnkLFyfv1AqBZ+dw8JK3RZi/rEN8HD3R3qsBwUYfyEuGLGiujy2CGrr/1uPiUVMR6QuFWRsjm39eMSHa4maLg4tQ0IY/jIy8rMlx3KjF3CcCbPzAqEq5vXy37wkjZbus771te1gLSrzcpVKIMg4DrmgaoJ02jAu+izBjNgLXAFPSUneQ8yw==:ezMkh4PMhCnjJtYkpTaP0SdblP5VAeRe4glW2PgIzICHw3T8ZyGDoaTrCv4/m5wtcEhWdtxhta+j1MQWlK5MIA+hvf8QjIDIjQv696ov5y+pcFe/upd2ekGOei7FCwB2u7I8WnkAtIKTUkf6eDQBZXm26DjfG1Dlc+Mjjq+AerukEa6WpOyqrD7Qub26Pgmj4AsuBx19X1EAmTZacubkoiNagXM8V+IDanHOhLMvfgQ7rw8oZhWfofxi4m+eJqjOXXaqSyorNK8UEcqP6P9pDP8AN8ulXEx6rZy2B5Oi0vSV+wlRLbUuQslga4ItOGxctW/ZX8uWozt+5A3k4URt6A==", + "algorithm": "RSA1_5" + }, + { + "keyIdentifier": "StorageAccountAccessKeyForQueue", + "keyValue": "Of4H9eF03G8QuxvkZQEbFWv3YdN3U//WugzuqReQekbXXQyg+QSicVKrwSOOKVi1zWMYGbKg7d5/ES2gdz+O5ZEw89bvE4mJD/wQmkIsqhPnbN0gyVK6nZePXVUU1A+UzjLfvhSA6KyUQfzNAZ5/TLt6fo1JyQrKTtkvnkLFyfv1AqBZ+dw8JK3RZi/rEN8HD3R3qsBwUYfyEuGLGiujy2CGrr/1uPiUVMR6QuFWRsjm39eMSHa4maLg4tQ0IY/jIy8rMlx3KjF3CcCbPzAqEq5vXy37wkjZbus771te1gLSrzcpVKIMg4DrmgaoJ02jAu+izBjNgLXAFPSUneQ8yw==:ezMkh4PMhCnjJtYkpTaP0SdblP5VAeRe4glW2PgIzICHw3T8ZyGDoaTrCv4/m5wtcEhWdtxhta+j1MQWlK5MIA+hvf8QjIDIjQv696ov5y+pcFe/upd2ekGOei7FCwB2u7I8WnkAtIKTUkf6eDQBZXm26DjfG1Dlc+Mjjq+AerukEa6WpOyqrD7Qub26Pgmj4AsuBx19X1EAmTZacubkoiNagXM8V+IDanHOhLMvfgQ7rw8oZhWfofxi4m+eJqjOXXaqSyorNK8UEcqP6P9pDP8AN8ulXEx6rZy2B5Oi0vSV+wlRLbUuQslga4ItOGxctW/ZX8uWozt+5A3k4URt6A==", + "algorithm": "RSA1_5" + } + ] + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "properties": { + "repositoryId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.Storage/storageAccounts/dmsdatasink", + "state": "Enabled", + "extendedProperties": { + "StorageAccountNameForQueue": "dmsdatasink" + }, + "dataStoreTypeId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/AzureStorageAccount" + }, + "name": "TestAzureStorage1", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStores/TestAzureStorage1", + "type": "Microsoft.HybridData/dataManagers/dataStores" + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_CreateOrUpdate_DataSource-PUT-example-162.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_CreateOrUpdate_DataSource-PUT-example-162.json new file mode 100644 index 000000000000..fb4abf60137f --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_CreateOrUpdate_DataSource-PUT-example-162.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataStoreName": "TestStorSimpleSource1", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "5e723454-6124-491f-b7bb-364ab9a0167c" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "1478" + ], + "dataStore": { + "properties": { + "repositoryId": "/subscriptions/c5fc377d-0085-41b9-86b7-cc96dc56d1e9/resourceGroups/ForDMS/providers/Microsoft.StorSimple/managers/BLR8600", + "state": "Enabled", + "extendedProperties": { + "resourceId": "/subscriptions/c5fc377d-0085-41b9-86b7-cc96dc56d1e9/resourceGroups/ForDMS/providers/Microsoft.StorSimple/managers/BLR8600", + "extendedSaKey": null + }, + "dataStoreTypeId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/StorSimple8000Series", + "customerSecrets": [ + { + "keyIdentifier": "ServiceEncryptionKey", + "keyValue": "EVuEBV40qv23xDRL4NZBuMms4e3So6ikHjrQYRvG9NloqxdgPOg+ZYzpho5lytI4fmv0ANmRIvDiDboRXcUVSjbB9T2gm19fMIuwZa4FK2+LYEgMqKK1GaLkk7xC8f5IeFUXLo6KyBBpaAiayTnWDcHuYEpMiGrV7trDDcbhMRefO3CHecmH3Z7ye8L0RQ/e7WW8GlCKZj3m0BaG7OrJgjai8gyDfMfGAG5rTqEhDVh2hLQ+TjvUjcOFwHvJusqKTENtbJTNQYmL9wZXsnwBvUwxqrGieILNB7V3GD1Ow9OiV0UCDW1e9LnMueukg+l7YJCU9FUhIPh/nSif6p32zw==:jCfio+pDtY3BSPZDpDJ0L6QdXLYMeOmxaFWtYTOZkNqNTgT8Loc/KSQRjtWS5K4N4btbznuSJ/dzg0aZEzlXgKDSuZgMfd4Ch92ZwAC/BkeCmVrTjiKJsoQXO1IICCUf7GHGBbYnnpsNJcEn4vyc9NXyKwOBjeU+I9AyK7PtYiC03RLpTS6xttFCICteBV0uoBHAiV0chZ5VIIUUMjO9u8EhHqRY7NNcGbWdVJeAb6J3vH4E/DHkQj+DXlpjcLvmK/uqBwxfNju30RJhR04Nmz6zcv/zTcvS0uN5hEPQoHLyv84hjnc4omg/gmNjo2cDW64QxA3RTJ5Sl///4xTBkg==", + "algorithm": "RSA1_5" + } + ] + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "properties": { + "repositoryId": "/subscriptions/c5fc377d-0085-41b9-86b7-cc96dc56d1e9/resourceGroups/ForDMS/providers/Microsoft.StorSimple/managers/BLR8600", + "state": "Enabled", + "extendedProperties": { + "resourceId": "/subscriptions/c5fc377d-0085-41b9-86b7-cc96dc56d1e9/resourceGroups/ForDMS/providers/Microsoft.StorSimple/managers/BLR8600", + "extendedSaKey": null + }, + "dataStoreTypeId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/StorSimple8000Series" + }, + "name": "TestStorSimpleSource1", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStores/TestStorSimpleSource1", + "type": "Microsoft.HybridData/dataManagers/dataStores" + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_Delete_DataSink-DELETE-example-161.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_Delete_DataSink-DELETE-example-161.json new file mode 100644 index 000000000000..2407fc177b90 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_Delete_DataSink-DELETE-example-161.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataStoreName": "TestAzureStorage1", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "24fe155b-4142-435d-80fc-0549d33d278c" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_Delete_DataSource-DELETE-example-161.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_Delete_DataSource-DELETE-example-161.json new file mode 100644 index 000000000000..e18d27a7117e --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_Delete_DataSource-DELETE-example-161.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataStoreName": "TestStorSimpleSource1", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "df4369fc-8343-43ba-8100-3010537e2f19" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_Get-GET-example-161.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_Get-GET-example-161.json new file mode 100644 index 000000000000..18a67a71ae5c --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_Get-GET-example-161.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataStoreName": "TestStorSimpleSource1", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "e3c128ff-0678-4dc2-aacd-622eb2833e01" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "repositoryId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ForDMS/providers/Microsoft.StorSimple/managers/BLR8600", + "state": "Enabled", + "extendedProperties": { + "resourceId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ForDMS/providers/Microsoft.StorSimple/managers/BLR8600", + "extendedSaKey": null + }, + "dataStoreTypeId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/StorSimple8000Series" + }, + "name": "TestStorSimpleSource1", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStores/TestStorSimpleSource1", + "type": "Microsoft.HybridData/dataManagers/dataStores" + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_Get-GET-example-162.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_Get-GET-example-162.json new file mode 100644 index 000000000000..0deeb8857478 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_Get-GET-example-162.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataStoreName": "TestAzureStorage1", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "b753ced5-1fa8-497c-a3ff-6bdd003fd7ab" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "repositoryId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.Storage/storageAccounts/dmsdatasink", + "state": "Enabled", + "extendedProperties": { + "StorageAccountNameForQueue": "dmsdatasink" + }, + "dataStoreTypeId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/AzureStorageAccount" + }, + "name": "TestAzureStorage1", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStores/TestAzureStorage1", + "type": "Microsoft.HybridData/dataManagers/dataStores" + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_ListByDataManager-GET-example-151.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_ListByDataManager-GET-example-151.json new file mode 100644 index 000000000000..330e851042aa --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/DataStores_ListByDataManager-GET-example-151.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "c8bc3615-68e3-4d43-a64d-a6c2f5b7ae6b" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "repositoryId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.Storage/storageAccounts/dmsdatasink", + "state": "Enabled", + "extendedProperties": { + "StorageAccountNameForQueue": "dmsdatasink" + }, + "dataStoreTypeId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/AzureStorageAccount" + }, + "name": "TestAzureStorage1", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStores/TestAzureStorage1", + "type": "Microsoft.HybridData/dataManagers/dataStores" + }, + { + "properties": { + "repositoryId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ForDMS/providers/Microsoft.StorSimple/managers/BLR8600", + "state": "Enabled", + "extendedProperties": { + "resourceId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ForDMS/providers/Microsoft.StorSimple/managers/BLR8600", + "extendedSaKey": null + }, + "dataStoreTypeId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStoreTypes/StorSimple8000Series" + }, + "name": "TestStorSimpleSource1", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStores/TestStorSimpleSource1", + "type": "Microsoft.HybridData/dataManagers/dataStores" + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_CreateOrUpdate-PUT-example-83.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_CreateOrUpdate-PUT-example-83.json new file mode 100644 index 000000000000..032e7dc9c3cf --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_CreateOrUpdate-PUT-example-83.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataServiceName": "DataTransformation", + "jobDefinitionName": "jobdeffromtestcode1", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "b2b20143-84aa-4b49-b8e3-08df8bc50860" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "921" + ], + "jobDefinition": { + "properties": { + "dataSourceId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStores/TestStorSimpleSource1", + "dataSinkId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStores/TestAzureStorage1", + "state": "Enabled", + "runLocation": "westus", + "userConfirmation": "Required", + "dataServiceInput": { + "DeviceName": "8600-SHG0997877L71FC", + "FileNameFilter": "*", + "ContainerName": "containerfromtest", + "RootDirectories": [ + "\\" + ], + "VolumeNames": [ + "TestAutomation" + ], + "BackupChoice": "UseExistingLatest", + "IsDirectoryMode": false, + "AzureStorageType": "Blob" + } + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "properties": { + "dataSourceId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStores/TestStorSimpleSource1", + "dataSinkId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStores/TestAzureStorage1", + "schedules": [], + "state": "Enabled", + "lastModifiedTime": "2020-02-05T08:51:43.3662184Z", + "runLocation": "westus", + "userConfirmation": "Required", + "dataServiceInput": { + "DeviceName": "8600-SHG0997877L71FC", + "FileNameFilter": "*", + "ContainerName": "containerfromtest", + "RootDirectories": [ + "\\" + ], + "VolumeNames": [ + "TestAutomation" + ], + "BackupChoice": "UseExistingLatest", + "IsDirectoryMode": false, + "AzureStorageType": "Blob" + } + }, + "name": "jobdeffromtestcode1", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation/jobDefinitions/jobdeffromtestcode1", + "type": "Microsoft.HybridData/dataManagers/dataServices/jobDefinitions" + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_Delete-DELETE-example-81.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_Delete-DELETE-example-81.json new file mode 100644 index 000000000000..31d4748ad412 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_Delete-DELETE-example-81.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataServiceName": "DataTransformation", + "jobDefinitionName": "jobdeffromtestcode1", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "09a4dbea-78fc-4639-8489-edaa73da5709" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_Get-GET-example-81.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_Get-GET-example-81.json new file mode 100644 index 000000000000..d8ee72a4845a --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_Get-GET-example-81.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataServiceName": "DataTransformation", + "jobDefinitionName": "jobdeffromtestcode1", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "e91b8b61-1086-4b5d-b50a-a86b94c05a22" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "dataSourceId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStores/TestStorSimpleSource1", + "dataSinkId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStores/TestAzureStorage1", + "schedules": [], + "state": "Enabled", + "lastModifiedTime": "2020-02-05T08:51:43.3662184Z", + "runLocation": "westus", + "userConfirmation": "Required", + "dataServiceInput": { + "DeviceName": "8600-SHG0997877L71FC", + "FileNameFilter": "*", + "ContainerName": "containerfromtest", + "RootDirectories": [ + "\\" + ], + "VolumeNames": [ + "TestAutomation" + ], + "BackupChoice": "UseExistingLatest", + "IsDirectoryMode": false, + "AzureStorageType": "Blob" + } + }, + "name": "jobdeffromtestcode1", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation/jobDefinitions/jobdeffromtestcode1", + "type": "Microsoft.HybridData/dataManagers/dataServices/jobDefinitions" + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_ListByDataManager-GET-example-191.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_ListByDataManager-GET-example-191.json new file mode 100644 index 000000000000..b3f3fbd0378a --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_ListByDataManager-GET-example-191.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "e748acd1-8bb5-4ccc-8b29-8b0c99dd79c5" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "dataSourceId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStores/TestStorSimpleSource1", + "dataSinkId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStores/TestAzureStorage1", + "schedules": [], + "state": "Enabled", + "lastModifiedTime": "2020-02-05T08:51:43.3662184Z", + "runLocation": "westus", + "userConfirmation": "Required", + "dataServiceInput": { + "DeviceName": "8600-SHG0997877L71FC", + "FileNameFilter": "*", + "ContainerName": "containerfromtest", + "RootDirectories": [ + "\\" + ], + "VolumeNames": [ + "TestAutomation" + ], + "BackupChoice": "UseExistingLatest", + "IsDirectoryMode": false, + "AzureStorageType": "Blob" + } + }, + "name": "jobdeffromtestcode1", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation/jobDefinitions/jobdeffromtestcode1", + "type": "Microsoft.HybridData/dataManagers/dataServices/jobDefinitions" + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_ListByDataService-GET-example-71.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_ListByDataService-GET-example-71.json new file mode 100644 index 000000000000..a8685ab9695f --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_ListByDataService-GET-example-71.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataServiceName": "DataTransformation", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "de083d46-ec64-44a3-8594-947fcd04c018" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "dataSourceId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStores/TestStorSimpleSource1", + "dataSinkId": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataStores/TestAzureStorage1", + "schedules": [], + "state": "Enabled", + "lastModifiedTime": "2020-02-05T08:51:43.3662184Z", + "runLocation": "westus", + "userConfirmation": "Required", + "dataServiceInput": { + "DeviceName": "8600-SHG0997877L71FC", + "FileNameFilter": "*", + "ContainerName": "containerfromtest", + "RootDirectories": [ + "\\" + ], + "VolumeNames": [ + "TestAutomation" + ], + "BackupChoice": "UseExistingLatest", + "IsDirectoryMode": false, + "AzureStorageType": "Blob" + } + }, + "name": "jobdeffromtestcode1", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation/jobDefinitions/jobdeffromtestcode1", + "type": "Microsoft.HybridData/dataManagers/dataServices/jobDefinitions" + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_Run-POST-example-132.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_Run-POST-example-132.json new file mode 100644 index 000000000000..e4e9506cb12b --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/JobDefinitions_Run-POST-example-132.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataServiceName": "DataTransformation", + "jobDefinitionName": "jobdeffromtestcode1", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "24f384ac-62d6-4288-811f-f991ca18300a" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ], + "Content-Type": [ + "application/json; charset=utf-8" + ], + "Content-Length": [ + "417" + ], + "runParameters": { + "userConfirmation": "NotRequired", + "dataServiceInput": { + "DeviceName": "8600-SHG0997877L71FC", + "FileNameFilter": "*", + "ContainerName": "containerfromtest", + "RootDirectories": [ + "\\" + ], + "VolumeNames": [ + "TestAutomation" + ], + "BackupChoice": "UseExistingLatest", + "IsDirectoryMode": false, + "AzureStorageType": "Blob" + }, + "customerSecrets": [] + } + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_Cancel-POST-example-111.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_Cancel-POST-example-111.json new file mode 100644 index 000000000000..b7dff4786eea --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_Cancel-POST-example-111.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataServiceName": "DataTransformation", + "jobDefinitionName": "jobdeffromtestcode1", + "jobId": "6eca9b3d-5ffe-4b44-9607-1ba838371ff7", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "8a116a8b-ce2c-4bbd-a3d9-d0bc72adc2f4" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_Get-GET-example-101.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_Get-GET-example-101.json new file mode 100644 index 000000000000..7e146a454a6e --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_Get-GET-example-101.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataServiceName": "DataTransformation", + "jobDefinitionName": "jobdeffromtestcode1", + "jobId": "99ef93fe-36be-43e4-bebf-de6746730601", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "8f58956d-2caa-4702-bc32-4c96cb805aeb" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "status": "InProgress", + "startTime": "2020-02-05T04:42:59.2771412Z", + "properties": { + "isCancellable": "Cancellable", + "bytesProcessed": 0, + "itemsProcessed": 0, + "totalBytesToProcess": 0, + "totalItemsToProcess": 0 + }, + "name": "99ef93fe-36be-43e4-bebf-de6746730601", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation/jobDefinitions/jobdeffromtestcode1/jobs/99ef93fe-36be-43e4-bebf-de6746730601", + "type": "Microsoft.HybridData/dataManagers/jobs" + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_ListByDataManager-GET-example-201.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_ListByDataManager-GET-example-201.json new file mode 100644 index 000000000000..da16147e1748 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_ListByDataManager-GET-example-201.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "6e284b77-f52e-4c3f-85be-8ac240b61e8f" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "status": "InProgress", + "startTime": "2020-02-05T04:42:59.2771412Z", + "properties": { + "isCancellable": "Cancellable", + "bytesProcessed": 0, + "itemsProcessed": 0, + "totalBytesToProcess": 0, + "totalItemsToProcess": 0 + }, + "name": "99ef93fe-36be-43e4-bebf-de6746730601", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation/jobDefinitions/jobdeffromtestcode1/jobs/99ef93fe-36be-43e4-bebf-de6746730601", + "type": "Microsoft.HybridData/dataManagers/jobs" + }, + { + "status": "InProgress", + "startTime": "2020-02-05T04:42:10.6059757Z", + "properties": { + "isCancellable": "Cancellable", + "bytesProcessed": 0, + "itemsProcessed": 0, + "totalBytesToProcess": 0, + "totalItemsToProcess": 0 + }, + "name": "aeb6aa32-cf46-4fa0-819f-48e0fe376f6e", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation/jobDefinitions/jobdeffromtestcode1/jobs/aeb6aa32-cf46-4fa0-819f-48e0fe376f6e", + "type": "Microsoft.HybridData/dataManagers/jobs" + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_ListByDataService-GET-example-141.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_ListByDataService-GET-example-141.json new file mode 100644 index 000000000000..a2eb1437987b --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_ListByDataService-GET-example-141.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataServiceName": "DataTransformation", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "a4fec9c0-69a3-4bf1-89d6-83dfe1dcb9dd" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "status": "InProgress", + "startTime": "2020-02-05T04:42:59.2771412Z", + "properties": { + "isCancellable": "Cancellable", + "bytesProcessed": 0, + "itemsProcessed": 0, + "totalBytesToProcess": 0, + "totalItemsToProcess": 0 + }, + "name": "99ef93fe-36be-43e4-bebf-de6746730601", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation/jobDefinitions/jobdeffromtestcode1/jobs/99ef93fe-36be-43e4-bebf-de6746730601", + "type": "Microsoft.HybridData/dataManagers/jobs" + }, + { + "status": "InProgress", + "startTime": "2020-02-05T04:42:10.6059757Z", + "properties": { + "isCancellable": "Cancellable", + "bytesProcessed": 0, + "itemsProcessed": 0, + "totalBytesToProcess": 0, + "totalItemsToProcess": 0 + }, + "name": "aeb6aa32-cf46-4fa0-819f-48e0fe376f6e", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation/jobDefinitions/jobdeffromtestcode1/jobs/aeb6aa32-cf46-4fa0-819f-48e0fe376f6e", + "type": "Microsoft.HybridData/dataManagers/jobs" + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_ListByJobDefinition-GET-example-91.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_ListByJobDefinition-GET-example-91.json new file mode 100644 index 000000000000..fc4454125cda --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_ListByJobDefinition-GET-example-91.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataServiceName": "DataTransformation", + "jobDefinitionName": "jobdeffromtestcode1", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "91a0109e-dc91-4b98-9971-4262e293e728" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "status": "InProgress", + "startTime": "2020-02-05T04:42:59.2771412Z", + "properties": { + "isCancellable": "Cancellable", + "bytesProcessed": 0, + "itemsProcessed": 0, + "totalBytesToProcess": 0, + "totalItemsToProcess": 0 + }, + "name": "99ef93fe-36be-43e4-bebf-de6746730601", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation/jobDefinitions/jobdeffromtestcode1/jobs/99ef93fe-36be-43e4-bebf-de6746730601", + "type": "Microsoft.HybridData/dataManagers/jobs" + }, + { + "status": "InProgress", + "startTime": "2020-02-05T04:42:10.6059757Z", + "properties": { + "isCancellable": "Cancellable", + "bytesProcessed": 0, + "itemsProcessed": 0, + "totalBytesToProcess": 0, + "totalItemsToProcess": 0 + }, + "name": "aeb6aa32-cf46-4fa0-819f-48e0fe376f6e", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/dataServices/DataTransformation/jobDefinitions/jobdeffromtestcode1/jobs/aeb6aa32-cf46-4fa0-819f-48e0fe376f6e", + "type": "Microsoft.HybridData/dataManagers/jobs" + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_Resume-POST-example-121.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_Resume-POST-example-121.json new file mode 100644 index 000000000000..8c968202ae82 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Jobs_Resume-POST-example-121.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "dataServiceName": "DataTransformation", + "jobDefinitionName": "jobdeffromtestcode1", + "jobId": "99ef93fe-36be-43e4-bebf-de6746730601", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "d40aa23c-0a31-45cf-a8ae-6e4ab2818961" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Operations_List-GET-example-11.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Operations_List-GET-example-11.json new file mode 100644 index 000000000000..03287674b77d --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/Operations_List-GET-example-11.json @@ -0,0 +1,300 @@ +{ + "parameters": { + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "d5161882-ff1d-499a-b9ea-706aa59e1687" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.HybridData/dataManagers/dataServices/jobDefinitions/write", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Job definitions", + "operation": "Creates or updates Job definitions", + "description": "Create or update Job definitions" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/dataServices/jobDefinitions/delete", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Job definitions", + "operation": "Delete Job definitions", + "description": "Delete Job definitions" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/dataServices/jobDefinitions/read", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Job definitions", + "operation": "Get Job definitions", + "description": "Read Job definitions" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/jobDefinitions/read", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Job definitions", + "operation": "Get Job definitions", + "description": "Read Job definitions" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/dataServices/jobDefinitions/listResults/action", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Job definitions", + "operation": "Get job definitions", + "description": "Get job defintions" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/dataServices/jobDefinitions/run/action", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Job definitions", + "operation": "Run job definitions", + "description": "Run job defintions" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/dataStores/operationResults/read", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Operation results", + "operation": "Get Operation results", + "description": "Read Operation results" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/dataServices/jobDefinitions/operationResults/read", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Operation results", + "operation": "Get Operation results", + "description": "Read Operation results" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/dataServices/jobDefinitions/jobs/operationResults/read", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Operation results", + "operation": "Get Operation results", + "description": "Read Operation results" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/operationResults/read", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Operation results", + "operation": "Get Operation results", + "description": "Read Operation results" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/publicKeys/read", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Public keys", + "operation": "Get Public keys", + "description": "Read Public keys" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/dataServices/read", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Data services", + "operation": "Get Data services", + "description": "Read Data services" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/dataStores/write", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Datastores", + "operation": "Creates or updates Datastores", + "description": "Create or update Datastores" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/dataStores/delete", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Datastores", + "operation": "Delete Datastores", + "description": "Delete Datastores" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/dataStores/read", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Datastores", + "operation": "Get Datastores", + "description": "Read Datastores" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/dataStoreTypes/read", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Datastore types", + "operation": "Get Datastore types", + "description": "Read Datastore types" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/delete", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Data managers", + "operation": "Delete Data managers", + "description": "Delete Data managers" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/read", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Data managers", + "operation": "Get Data managers", + "description": "Read Data managers" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/write", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Data managers", + "operation": "Creates or updates Data managers", + "description": "Create or update Data managers" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/dataServices/jobDefinitions/jobs/cancel/action", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Jobs", + "operation": "Cancel jobs", + "description": "Cancel jobs" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/dataServices/jobDefinitions/jobs/read", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Jobs", + "operation": "Get Jobs", + "description": "Read Jobs" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/jobs/read", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Jobs", + "operation": "Get Jobs", + "description": "Read Jobs" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/dataServices/jobs/read", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Jobs", + "operation": "Get Jobs", + "description": "Read Jobs" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/dataManagers/dataServices/jobDefinitions/jobs/resume/action", + "display": { + "provider": "Microsoft.HybridData", + "resource": "Jobs", + "operation": "Resumes jobs", + "description": "Resume jobs" + }, + "origin": "user", + "properties": {} + }, + { + "name": "Microsoft.HybridData/read", + "display": { + "provider": "Microsoft.HybridData", + "resource": "ArmApiRes_Microsoft.HybridData", + "operation": "Get ArmApiRes_Microsoft.HybridData", + "description": "Read ArmApiRes_Microsoft.HybridData" + }, + "origin": "user", + "properties": {} + } + ] + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/PublicKeys_Get-GET-example-222.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/PublicKeys_Get-GET-example-222.json new file mode 100644 index 000000000000..6c50cf95b239 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/PublicKeys_Get-GET-example-222.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "publicKeyName": "default", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "7f00c10d-7c0c-4004-8157-e1a0e61d620e" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "properties": { + "dataServiceLevel1Key": { + "keyModulus": "mjDxqxGmawhC15TUM/oKCe2rRg6nM+IEqujgn17vc1litm3TPmv7rtDr4Y/L/t+tYCug7aXxJtwGA9ETOUF9iUoGPE3zBKMGPJhO5nRF3IW27OzYUNTdHgUjlV0ba5QlZQ/f5ideEboJvdlw05ofPVQKZ9Hh95/9sOFYuNBKP0LPwKz1VrrhvM7tVgdIhZdekuIOt4S+7WjRV5J+XT0jlhwUBEIxx8knRPagmxygSZM3h/FbX+mEbduIwVy+y1HwtfwVq3PyR9YIDjVDuc3+6VNZd69TEIHqRQlbwb2jkitgEHx/Vs32KtDyfRZgkhA6ZGZRlnEiX3R0YRzjCt5xCw==", + "keyExponent": "AQAB", + "encryptionChunkSizeInBytes": 245 + }, + "dataServiceLevel2Key": { + "keyModulus": "rtCsQNdCaDwLHIvgkhkKldvUNjili+rsj8CVaKGTwAyQGvAIwKOe3zfwW3TFaeycTFAQ1payBjY2tW9uWSWDTJRpHZVYTTX/1mjnXHTqcZYsgSkblt0PhLWbbYATGMmyBie0XM3Xfy1ilwAMYNHu+YaW56NyFpepyNcheZbmkD4/Vveh+5JStwObqEp1vsagraQ/IqUDCAETRxFc3iIWJZnqW2yfIWZshky20fkmyBnRrpe5fexpj6Xz4VHT76Lj+7bTEbsFSq7fNUjRcCIf2gat8bBN4HD2w//GZVCKarQG6G0kilA0bDZHFAzVeTs2+UYB+1GA+r+Uy3SOEIdLPw==", + "keyExponent": "AQAB", + "encryptionChunkSizeInBytes": 245 + } + }, + "name": "default", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/publicKeys/default", + "type": "Microsoft.HybridData/dataManagers/publicKeys" + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/PublicKeys_ListByDataManager-GET-example-211.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/PublicKeys_ListByDataManager-GET-example-211.json new file mode 100644 index 000000000000..ee7d7fb81831 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/examples/PublicKeys_ListByDataManager-GET-example-211.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "6e0219f5-327a-4365-904f-05eed4227ad7", + "resourceGroupName": "ResourceGroupForSDKTest", + "dataManagerName": "TestAzureSDKOperations", + "api-version": "2019-06-01", + "x-ms-client-request-id": [ + "c808bbd4-459a-409d-8930-6149e5419cd1" + ], + "accept-language": [ + "en-US" + ], + "User-Agent": [ + "FxVersion/4.6.26614.01", + "OSName/Windows", + "OSVersion/Microsoft.Windows.10.0.19555.", + "Microsoft.Azure.Management.HybridData.HybridDataManagementClient/1.0.1.preview" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "dataServiceLevel1Key": { + "keyModulus": "mjDxqxGmawhC15TUM/oKCe2rRg6nM+IEqujgn17vc1litm3TPmv7rtDr4Y/L/t+tYCug7aXxJtwGA9ETOUF9iUoGPE3zBKMGPJhO5nRF3IW27OzYUNTdHgUjlV0ba5QlZQ/f5ideEboJvdlw05ofPVQKZ9Hh95/9sOFYuNBKP0LPwKz1VrrhvM7tVgdIhZdekuIOt4S+7WjRV5J+XT0jlhwUBEIxx8knRPagmxygSZM3h/FbX+mEbduIwVy+y1HwtfwVq3PyR9YIDjVDuc3+6VNZd69TEIHqRQlbwb2jkitgEHx/Vs32KtDyfRZgkhA6ZGZRlnEiX3R0YRzjCt5xCw==", + "keyExponent": "AQAB", + "encryptionChunkSizeInBytes": 245 + }, + "dataServiceLevel2Key": { + "keyModulus": "rtCsQNdCaDwLHIvgkhkKldvUNjili+rsj8CVaKGTwAyQGvAIwKOe3zfwW3TFaeycTFAQ1payBjY2tW9uWSWDTJRpHZVYTTX/1mjnXHTqcZYsgSkblt0PhLWbbYATGMmyBie0XM3Xfy1ilwAMYNHu+YaW56NyFpepyNcheZbmkD4/Vveh+5JStwObqEp1vsagraQ/IqUDCAETRxFc3iIWJZnqW2yfIWZshky20fkmyBnRrpe5fexpj6Xz4VHT76Lj+7bTEbsFSq7fNUjRcCIf2gat8bBN4HD2w//GZVCKarQG6G0kilA0bDZHFAzVeTs2+UYB+1GA+r+Uy3SOEIdLPw==", + "keyExponent": "AQAB", + "encryptionChunkSizeInBytes": 245 + } + }, + "name": "default", + "id": "/subscriptions/6e0219f5-327a-4365-904f-05eed4227ad7/resourceGroups/ResourceGroupForSDKTest/providers/Microsoft.HybridData/dataManagers/TestAzureSDKOperations/publicKeys/default", + "type": "Microsoft.HybridData/dataManagers/publicKeys" + } + ] + } + } + } +} diff --git a/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/hybriddata.json b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/hybriddata.json new file mode 100644 index 000000000000..35ffbf12ad47 --- /dev/null +++ b/specification/hybriddatamanager/resource-manager/Microsoft.HybridData/stable/2019-06-01/hybriddata.json @@ -0,0 +1,2654 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-06-01", + "title": "HybridDataManagementClient" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/providers/Microsoft.HybridData/operations": { + "get": { + "tags": [ + "Operations" + ], + "summary": "The list of operations for Microsoft.HybridData provider.", + "operationId": "Operations_List", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list of operations for Microsoft.HybridData provider.", + "schema": { + "$ref": "#/definitions/AvailableProviderOperations" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Operations_ListGET11": { + "$ref": "./examples/Operations_List-GET-example-11.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.HybridData/dataManagers": { + "get": { + "tags": [ + "DataManagers" + ], + "description": "Lists all the data manager resources available under the subscription.", + "operationId": "DataManagers_List", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "List of data manager resources available under the subscription.", + "schema": { + "$ref": "#/definitions/DataManagerList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "DataManagers_ListGET21": { + "$ref": "./examples/DataManagers_List-GET-example-21.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers": { + "get": { + "tags": [ + "DataManagers" + ], + "description": "Lists all the data manager resources available under the given resource group.", + "operationId": "DataManagers_ListByResourceGroup", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "List of data manager resources by resource group.", + "schema": { + "$ref": "#/definitions/DataManagerList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "DataManagers_ListByResourceGroupGET31": { + "$ref": "./examples/DataManagers_ListByResourceGroup-GET-example-31.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}": { + "get": { + "tags": [ + "DataManagers" + ], + "description": "Gets information about the specified data manager resource.", + "operationId": "DataManagers_Get", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Data Manager Resource object.", + "schema": { + "$ref": "#/definitions/DataManager" + } + } + }, + "x-ms-examples": { + "DataManagers_GetGET41": { + "$ref": "./examples/DataManagers_Get-GET-example-41.json" + } + } + }, + "put": { + "tags": [ + "DataManagers" + ], + "description": "Creates a new data manager resource with the specified parameters. Existing resources cannot be updated with this API\r\nand should instead be updated with the Update data manager resource API.", + "operationId": "DataManagers_Create", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "dataManager", + "in": "body", + "description": "Data manager resource details from request body.", + "required": true, + "schema": { + "$ref": "#/definitions/DataManager" + } + } + ], + "responses": { + "200": { + "description": "Completed request for Create. Returns the Data Manager Resource object.", + "schema": { + "$ref": "#/definitions/DataManager" + } + }, + "202": { + "description": "Accepted request for Create." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "DataManagers_CreatePUT41": { + "$ref": "./examples/DataManagers_Create-PUT-example-41.json" + } + } + }, + "delete": { + "tags": [ + "DataManagers" + ], + "description": "Deletes a data manager resource in Microsoft Azure.", + "operationId": "DataManagers_Delete", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Data Manager Resource deleted." + }, + "204": { + "description": "Data Manager Resource deleted." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "DataManagers_DeleteDELETE41": { + "$ref": "./examples/DataManagers_Delete-DELETE-example-41.json" + } + } + }, + "patch": { + "tags": [ + "DataManagers" + ], + "description": "Updates the properties of an existing data manager resource.", + "operationId": "DataManagers_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "If-Match", + "in": "header", + "description": "Defines the If-Match condition. The patch will be performed only if the ETag of the data manager resource on the server matches this value.", + "type": "string" + }, + { + "name": "dataManagerUpdateParameter", + "in": "body", + "description": "Data manager resource details from request body.", + "required": true, + "schema": { + "$ref": "#/definitions/DataManagerUpdateParameter" + } + } + ], + "responses": { + "200": { + "description": "Completed request for Updated. Returns the Data Manager Resource object.", + "schema": { + "$ref": "#/definitions/DataManager" + } + }, + "202": { + "description": "Accepted request for Data Manager Update." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "DataManagers_UpdatePATCH43": { + "$ref": "./examples/DataManagers_Update-PATCH-example-43.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/dataServices": { + "get": { + "tags": [ + "DataServices" + ], + "description": "This method gets all the data services.", + "operationId": "DataServices_ListByDataManager", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list of data services.", + "schema": { + "$ref": "#/definitions/DataServiceList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "DataServices_ListByDataManagerGET51": { + "$ref": "./examples/DataServices_ListByDataManager-GET-example-51.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/dataServices/{dataServiceName}": { + "get": { + "tags": [ + "DataServices" + ], + "description": "Gets the data service that matches the data service name given.", + "operationId": "DataServices_Get", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "dataServiceName", + "in": "path", + "description": "The name of the data service that is being queried.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The data service that matches the name.", + "schema": { + "$ref": "#/definitions/DataService" + } + } + }, + "x-ms-examples": { + "DataServices_GetGET62": { + "$ref": "./examples/DataServices_Get-GET-example-62.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/dataServices/{dataServiceName}/jobDefinitions": { + "get": { + "tags": [ + "JobDefinitions" + ], + "description": "This method gets all the job definitions of the given data service name.", + "operationId": "JobDefinitions_ListByDataService", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "dataServiceName", + "in": "path", + "description": "The data service type of interest.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "OData Filter options", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The list of job definitions of the given data service type.", + "schema": { + "$ref": "#/definitions/JobDefinitionList" + } + } + }, + "x-ms-odata": "#/definitions/JobDefinitionFilter", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "JobDefinitions_ListByDataServiceGET71": { + "$ref": "./examples/JobDefinitions_ListByDataService-GET-example-71.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/dataServices/{dataServiceName}/jobDefinitions/{jobDefinitionName}": { + "get": { + "tags": [ + "JobDefinitions" + ], + "description": "This method gets job definition object by name.", + "operationId": "JobDefinitions_Get", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "dataServiceName", + "in": "path", + "description": "The data service name of the job definition", + "required": true, + "type": "string" + }, + { + "name": "jobDefinitionName", + "in": "path", + "description": "The job definition name that is being queried.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The job definition that matches the criteria.", + "schema": { + "$ref": "#/definitions/JobDefinition" + } + } + }, + "x-ms-examples": { + "JobDefinitions_GetGET81": { + "$ref": "./examples/JobDefinitions_Get-GET-example-81.json" + } + } + }, + "put": { + "tags": [ + "JobDefinitions" + ], + "description": "Creates or updates a job definition.", + "operationId": "JobDefinitions_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "dataServiceName", + "in": "path", + "description": "The data service type of the job definition.", + "required": true, + "type": "string" + }, + { + "name": "jobDefinitionName", + "in": "path", + "description": "The job definition name to be created or updated.", + "required": true, + "type": "string" + }, + { + "name": "jobDefinition", + "in": "body", + "description": "Job Definition object to be created or updated.", + "required": true, + "schema": { + "$ref": "#/definitions/JobDefinition" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Completed request for Create or Update. Returns the JobDefinition object.", + "schema": { + "$ref": "#/definitions/JobDefinition" + } + }, + "202": { + "description": "Accepted request for create/update." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "JobDefinitions_CreateOrUpdatePUT83": { + "$ref": "./examples/JobDefinitions_CreateOrUpdate-PUT-example-83.json" + } + } + }, + "delete": { + "tags": [ + "JobDefinitions" + ], + "description": "This method deletes the given job definition.", + "operationId": "JobDefinitions_Delete", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "dataServiceName", + "in": "path", + "description": "The data service type of the job definition.", + "required": true, + "type": "string" + }, + { + "name": "jobDefinitionName", + "in": "path", + "description": "The job definition name to be deleted.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted request for JobDefinition deletion." + }, + "204": { + "description": "Completed request for Delete JobDefinition." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "JobDefinitions_DeleteDELETE81": { + "$ref": "./examples/JobDefinitions_Delete-DELETE-example-81.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/dataServices/{dataServiceName}/jobDefinitions/{jobDefinitionName}/jobs": { + "get": { + "tags": [ + "Jobs" + ], + "description": "This method gets all the jobs of a given job definition.", + "operationId": "Jobs_ListByJobDefinition", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "dataServiceName", + "in": "path", + "description": "The name of the data service of the job definition.", + "required": true, + "type": "string" + }, + { + "name": "jobDefinitionName", + "in": "path", + "description": "The name of the job definition for which jobs are needed.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "OData Filter options", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The list of jobs.", + "schema": { + "$ref": "#/definitions/JobList" + } + } + }, + "x-ms-odata": "#/definitions/JobFilter", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Jobs_ListByJobDefinitionGET91": { + "$ref": "./examples/Jobs_ListByJobDefinition-GET-example-91.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/dataServices/{dataServiceName}/jobDefinitions/{jobDefinitionName}/jobs/{jobId}": { + "get": { + "tags": [ + "Jobs" + ], + "description": "This method gets a data manager job given the jobId.", + "operationId": "Jobs_Get", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "dataServiceName", + "in": "path", + "description": "The name of the data service of the job definition.", + "required": true, + "type": "string" + }, + { + "name": "jobDefinitionName", + "in": "path", + "description": "The name of the job definition of the job.", + "required": true, + "type": "string" + }, + { + "name": "jobId", + "in": "path", + "description": "The job id of the job queried.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$expand", + "in": "query", + "description": "$expand is supported on details parameter for job, which provides details on the job stages.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The job that matches the given criteria.", + "schema": { + "$ref": "#/definitions/Job" + } + } + }, + "x-ms-examples": { + "Jobs_GetGET101": { + "$ref": "./examples/Jobs_Get-GET-example-101.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/dataServices/{dataServiceName}/jobDefinitions/{jobDefinitionName}/jobs/{jobId}/cancel": { + "post": { + "tags": [ + "Jobs" + ], + "description": "Cancels the given job.", + "operationId": "Jobs_Cancel", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "dataServiceName", + "in": "path", + "description": "The name of the data service of the job definition.", + "required": true, + "type": "string" + }, + { + "name": "jobDefinitionName", + "in": "path", + "description": "The name of the job definition of the job.", + "required": true, + "type": "string" + }, + { + "name": "jobId", + "in": "path", + "description": "The job id of the job queried.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted job cancellation request." + }, + "204": { + "description": "Completed request for job Cancel." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Jobs_CancelPOST111": { + "$ref": "./examples/Jobs_Cancel-POST-example-111.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/dataServices/{dataServiceName}/jobDefinitions/{jobDefinitionName}/jobs/{jobId}/resume": { + "post": { + "tags": [ + "Jobs" + ], + "description": "Resumes the given job.", + "operationId": "Jobs_Resume", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "dataServiceName", + "in": "path", + "description": "The name of the data service of the job definition.", + "required": true, + "type": "string" + }, + { + "name": "jobDefinitionName", + "in": "path", + "description": "The name of the job definition of the job.", + "required": true, + "type": "string" + }, + { + "name": "jobId", + "in": "path", + "description": "The job id of the job queried.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted job resume request." + }, + "204": { + "description": "Complete request for Job resume." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Jobs_ResumePOST121": { + "$ref": "./examples/Jobs_Resume-POST-example-121.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/dataServices/{dataServiceName}/jobDefinitions/{jobDefinitionName}/run": { + "post": { + "tags": [ + "JobDefinitions" + ], + "description": "This method runs a job instance of the given job definition.", + "operationId": "JobDefinitions_Run", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "dataServiceName", + "in": "path", + "description": "The data service type of the job definition.", + "required": true, + "type": "string" + }, + { + "name": "jobDefinitionName", + "in": "path", + "description": "Name of the job definition.", + "required": true, + "type": "string" + }, + { + "name": "runParameters", + "in": "body", + "description": "Run time parameters for the job definition.", + "required": true, + "schema": { + "$ref": "#/definitions/RunParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Job run accepted." + }, + "204": { + "description": "Completed request for Job run. Run has started." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "JobDefinitions_RunPOST132": { + "$ref": "./examples/JobDefinitions_Run-POST-example-132.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/dataServices/{dataServiceName}/jobs": { + "get": { + "tags": [ + "Jobs" + ], + "description": "This method gets all the jobs of a data service type in a given resource.", + "operationId": "Jobs_ListByDataService", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "dataServiceName", + "in": "path", + "description": "The name of the data service of interest.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "OData Filter options", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The list of jobs that match the service and resource.", + "schema": { + "$ref": "#/definitions/JobList" + } + } + }, + "x-ms-odata": "#/definitions/JobFilter", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Jobs_ListByDataServiceGET141": { + "$ref": "./examples/Jobs_ListByDataService-GET-example-141.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/dataStores": { + "get": { + "tags": [ + "DataStores" + ], + "description": "Gets all the data stores/repositories in the given resource.", + "operationId": "DataStores_ListByDataManager", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "OData Filter options", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The list of data stores/repositories in the given resource.", + "schema": { + "$ref": "#/definitions/DataStoreList" + } + } + }, + "x-ms-odata": "#/definitions/DataStoreFilter", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "DataStores_ListByDataManagerGET151": { + "$ref": "./examples/DataStores_ListByDataManager-GET-example-151.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/dataStores/{dataStoreName}": { + "get": { + "tags": [ + "DataStores" + ], + "description": "This method gets the data store/repository by name.", + "operationId": "DataStores_Get", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "dataStoreName", + "in": "path", + "description": "The data store/repository name queried.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The data store/repository which matches the name given.", + "schema": { + "$ref": "#/definitions/DataStore" + } + } + }, + "x-ms-examples": { + "DataStores_GetGET161": { + "$ref": "./examples/DataStores_Get-GET-example-161.json" + }, + "DataStores_GetGET162": { + "$ref": "./examples/DataStores_Get-GET-example-162.json" + } + } + }, + "put": { + "tags": [ + "DataStores" + ], + "description": "Creates or updates the data store/repository in the data manager.", + "operationId": "DataStores_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "dataStoreName", + "in": "path", + "description": "The data store/repository name to be created or updated.", + "required": true, + "type": "string" + }, + { + "name": "dataStore", + "in": "body", + "description": "The data store/repository object to be created or updated.", + "required": true, + "schema": { + "$ref": "#/definitions/DataStore" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Completed request for Create/Update. Returns the Data Store/Repository object.", + "schema": { + "$ref": "#/definitions/DataStore" + } + }, + "202": { + "description": "Accepted request for create/update." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "DataStores_CreateOrUpdate_DataSinkPUT162": { + "$ref": "./examples/DataStores_CreateOrUpdate_DataSink-PUT-example-162.json" + }, + "DataStores_CreateOrUpdate_DataSourcePUT162": { + "$ref": "./examples/DataStores_CreateOrUpdate_DataSource-PUT-example-162.json" + } + } + }, + "delete": { + "tags": [ + "DataStores" + ], + "description": "This method deletes the given data store/repository.", + "operationId": "DataStores_Delete", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "dataStoreName", + "in": "path", + "description": "The data store/repository name to be deleted.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted request for DataStore deletion." + }, + "204": { + "description": "Completed request for Delete Data Store." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "DataStores_Delete_DataSinkDELETE161": { + "$ref": "./examples/DataStores_Delete_DataSink-DELETE-example-161.json" + }, + "DataStores_Delete_DataSourceDELETE161": { + "$ref": "./examples/DataStores_Delete_DataSource-DELETE-example-161.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/dataStoreTypes": { + "get": { + "tags": [ + "DataStoreTypes" + ], + "description": "Gets all the data store/repository types that the resource supports.", + "operationId": "DataStoreTypes_ListByDataManager", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list of data store types that are supported.", + "schema": { + "$ref": "#/definitions/DataStoreTypeList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "DataStoreTypes_ListByDataManagerGET171": { + "$ref": "./examples/DataStoreTypes_ListByDataManager-GET-example-171.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/dataStoreTypes/{dataStoreTypeName}": { + "get": { + "tags": [ + "DataStoreTypes" + ], + "description": "Gets the data store/repository type given its name.", + "operationId": "DataStoreTypes_Get", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "dataStoreTypeName", + "in": "path", + "description": "The data store/repository type name for which details are needed.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The data store/repository type.", + "schema": { + "$ref": "#/definitions/DataStoreType" + } + } + }, + "x-ms-examples": { + "DataStoreTypes_GetGET182": { + "$ref": "./examples/DataStoreTypes_Get-GET-example-182.json" + }, + "DataStoreTypes_GetGET183": { + "$ref": "./examples/DataStoreTypes_Get-GET-example-183.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/jobDefinitions": { + "get": { + "tags": [ + "JobDefinitions" + ], + "description": "This method gets all the job definitions of the given data manager resource.", + "operationId": "JobDefinitions_ListByDataManager", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "OData Filter options", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The list of job definitions in that resource.", + "schema": { + "$ref": "#/definitions/JobDefinitionList" + } + } + }, + "x-ms-odata": "#/definitions/JobDefinitionFilter", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "JobDefinitions_ListByDataManagerGET191": { + "$ref": "./examples/JobDefinitions_ListByDataManager-GET-example-191.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/jobs": { + "get": { + "tags": [ + "Jobs" + ], + "description": "This method gets all the jobs at the data manager resource level.", + "operationId": "Jobs_ListByDataManager", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "description": "OData Filter options", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "The list of jobs in the resource specified.", + "schema": { + "$ref": "#/definitions/JobList" + } + } + }, + "x-ms-odata": "#/definitions/JobFilter", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Jobs_ListByDataManagerGET201": { + "$ref": "./examples/Jobs_ListByDataManager-GET-example-201.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/publicKeys": { + "get": { + "tags": [ + "PublicKeys" + ], + "description": "This method gets the list view of public keys, however it will only have one element.", + "operationId": "PublicKeys_ListByDataManager", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The list of public keys.", + "schema": { + "$ref": "#/definitions/PublicKeyList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "PublicKeys_ListByDataManagerGET211": { + "$ref": "./examples/PublicKeys_ListByDataManager-GET-example-211.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HybridData/dataManagers/{dataManagerName}/publicKeys/{publicKeyName}": { + "get": { + "tags": [ + "PublicKeys" + ], + "description": "This method gets the public keys.", + "operationId": "PublicKeys_Get", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "publicKeyName", + "in": "path", + "description": "Name of the public key.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/dataManagerNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The public keys.", + "schema": { + "$ref": "#/definitions/PublicKey" + } + } + }, + "x-ms-examples": { + "PublicKeys_GetGET222": { + "$ref": "./examples/PublicKeys_Get-GET-example-222.json" + } + } + } + } + }, + "definitions": { + "AvailableProviderOperation": { + "description": "Class represents provider operation", + "required": [ + "name" + ], + "type": "object", + "properties": { + "name": { + "description": "Gets or Sets Name of the operations", + "type": "string" + }, + "display": { + "$ref": "#/definitions/AvailableProviderOperationDisplay", + "description": "Gets or sets Display information\r\nContains the localized display information for this particular operation/action" + }, + "origin": { + "description": "Gets or sets Origin\r\nThe intended executor of the operation; governs the display of the operation in the RBAC UX and the audit logs UX.\r\nDefault value is “user,system”", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/AvailableProviderOperationProperties", + "description": "Gets or sets Properties\r\nReserved for future use", + "x-ms-client-flatten": true + } + } + }, + "AvailableProviderOperationDisplay": { + "description": "Contains the localized display information for this particular operation / action. \r\nThese value will be used by several clients for \r\n(1) custom role definitions for RBAC; \r\n(2) complex query filters for the event service; and (3) audit history / records for management operations.", + "type": "object", + "properties": { + "provider": { + "description": "Gets or sets Provider\r\nThe localized friendly form of the resource provider name – it is expected to also include the publisher/company responsible. \r\nIt should use Title Casing and begin with “Microsoft” for 1st party services.", + "type": "string" + }, + "resource": { + "description": "Gets or sets Resource\r\nThe localized friendly form of the resource type related to this action/operation – it should match the public documentation for the resource provider. \r\nIt should use Title Casing – for examples, please refer to the “name” section.", + "type": "string" + }, + "operation": { + "description": "Gets or sets Operation\r\nThe localized friendly name for the operation, as it should be shown to the user. \r\nIt should be concise (to fit in drop downs) but clear (i.e. self-documenting). It should use Title Casing and include the entity/resource to which it applies.", + "type": "string" + }, + "description": { + "description": "Gets or sets Description\r\nThe localized friendly description for the operation, as it should be shown to the user. \r\nIt should be thorough, yet concise – it will be used in tool tips and detailed views.", + "type": "string" + } + } + }, + "AvailableProviderOperationProperties": { + "description": "Class represents Properties in AvailableProviderOperations", + "type": "object", + "properties": {} + }, + "AvailableProviderOperations": { + "description": "Class for set of operations used for discovery of available provider operations.", + "type": "object", + "properties": { + "value": { + "description": "List of operations.", + "type": "array", + "items": { + "$ref": "#/definitions/AvailableProviderOperation" + } + }, + "nextLink": { + "description": "Link for the next set of operations.", + "type": "string" + } + } + }, + "CustomerSecret": { + "description": "The pair of customer secret.", + "required": [ + "keyIdentifier", + "keyValue", + "algorithm" + ], + "type": "object", + "properties": { + "keyIdentifier": { + "description": "The identifier to the data service input object which this secret corresponds to.", + "type": "string" + }, + "keyValue": { + "description": "It contains the encrypted customer secret.", + "type": "string" + }, + "algorithm": { + "description": "The encryption algorithm used to encrypt data.", + "enum": [ + "None", + "RSA1_5", + "RSA_OAEP", + "PlainText" + ], + "type": "string", + "x-ms-enum": { + "name": "SupportedAlgorithm", + "modelAsString": false + } + } + } + }, + "DataManager": { + "description": "The DataManager resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "etag": { + "description": "Etag of the Resource.", + "type": "string" + } + } + }, + "DataManagerList": { + "description": "DataManager resources Collection.", + "type": "object", + "properties": { + "value": { + "description": "List of data manager resources.", + "type": "array", + "items": { + "$ref": "#/definitions/DataManager" + } + }, + "nextLink": { + "description": "Link for the next set of data stores.", + "type": "string" + } + } + }, + "DataManagerUpdateParameter": { + "description": "The DataManagerUpdateParameter.", + "type": "object", + "properties": { + "sku": { + "$ref": "#/definitions/Sku", + "description": "The sku type." + }, + "tags": { + "description": "The list of key value pairs that describe the resource. These tags can be used in viewing and grouping this resource\r\n(across resource groups).", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "DataService": { + "description": "Data Service.", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DmsBaseObject" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DataServiceProperties", + "description": "DataService properties.", + "x-ms-client-flatten": true + } + } + }, + "DataServiceList": { + "description": "Data Service Collection.", + "type": "object", + "properties": { + "value": { + "description": "List of data services.", + "type": "array", + "items": { + "$ref": "#/definitions/DataService" + } + }, + "nextLink": { + "description": "Link for the next set of data services.", + "type": "string" + } + } + }, + "DataServiceProperties": { + "description": "Data Service properties.", + "required": [ + "state" + ], + "type": "object", + "properties": { + "state": { + "description": "State of the data service.", + "enum": [ + "Disabled", + "Enabled", + "Supported" + ], + "type": "string", + "x-ms-enum": { + "name": "State", + "modelAsString": false + } + }, + "supportedDataSinkTypes": { + "description": "Supported data store types which can be used as a sink.", + "type": "array", + "items": { + "type": "string" + } + }, + "supportedDataSourceTypes": { + "description": "Supported data store types which can be used as a source.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "DataStore": { + "description": "Data store.", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DmsBaseObject" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DataStoreProperties", + "description": "DataStore properties.", + "x-ms-client-flatten": true + } + } + }, + "DataStoreFilter": { + "description": "Contains the information about the filters for the DataStore.", + "type": "object", + "properties": { + "dataStoreTypeId": { + "description": "The data store type id.", + "type": "string" + } + } + }, + "DataStoreList": { + "description": "Data Store Collection.", + "type": "object", + "properties": { + "value": { + "description": "List of data stores.", + "type": "array", + "items": { + "$ref": "#/definitions/DataStore" + } + }, + "nextLink": { + "description": "Link for the next set of data stores.", + "type": "string" + } + } + }, + "DataStoreProperties": { + "description": "Data Store for sources and sinks", + "required": [ + "state", + "dataStoreTypeId" + ], + "type": "object", + "properties": { + "repositoryId": { + "description": "Arm Id for the manager resource to which the data source is associated. This is optional.", + "type": "string" + }, + "state": { + "description": "State of the data source.", + "enum": [ + "Disabled", + "Enabled", + "Supported" + ], + "type": "string", + "x-ms-enum": { + "name": "State", + "modelAsString": false + } + }, + "extendedProperties": { + "description": "A generic json used differently by each data source type.", + "type": "object" + }, + "dataStoreTypeId": { + "description": "The arm id of the data store type.", + "type": "string" + }, + "customerSecrets": { + "description": "List of customer secrets containing a key identifier and key value. The key identifier is a way for the specific data source to understand the key. Value contains customer secret encrypted by the encryptionKeys.", + "type": "array", + "items": { + "$ref": "#/definitions/CustomerSecret" + } + } + } + }, + "DataStoreType": { + "description": "Data Store Type.", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DmsBaseObject" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DataStoreTypeProperties", + "description": "DataStoreType properties.", + "x-ms-client-flatten": true + } + } + }, + "DataStoreTypeList": { + "description": "Data Store Type Collection.", + "type": "object", + "properties": { + "value": { + "description": "List of DataStoreType.", + "type": "array", + "items": { + "$ref": "#/definitions/DataStoreType" + } + }, + "nextLink": { + "description": "Link for the next set of data store types.", + "type": "string" + } + } + }, + "DataStoreTypeProperties": { + "description": "Data Store Type properties.", + "required": [ + "state" + ], + "type": "object", + "properties": { + "repositoryType": { + "description": "Arm type for the manager resource to which the data source type is associated. This is optional.", + "type": "string" + }, + "state": { + "description": "State of the data store type.", + "enum": [ + "Disabled", + "Enabled", + "Supported" + ], + "type": "string", + "x-ms-enum": { + "name": "State", + "modelAsString": false + } + }, + "supportedDataServicesAsSink": { + "description": "Supported data services where it can be used as a sink.", + "type": "array", + "items": { + "type": "string" + } + }, + "supportedDataServicesAsSource": { + "description": "Supported data services where it can be used as a source.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "DmsBaseObject": { + "description": "Base class for all objects under DataManager Service", + "type": "object", + "properties": { + "name": { + "description": "Name of the object.", + "type": "string", + "readOnly": true + }, + "id": { + "description": "Id of the object.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of the object.", + "type": "string", + "readOnly": true + } + } + }, + "Error": { + "description": "Top level error for the job.", + "required": [ + "code" + ], + "type": "object", + "properties": { + "code": { + "description": "Error code that can be used to programmatically identify the error.", + "type": "string" + }, + "message": { + "description": "Describes the error in detail and provides debugging information.", + "type": "string" + } + } + }, + "ErrorDetails": { + "description": "Error Details", + "type": "object", + "properties": { + "errorMessage": { + "description": "Error message.", + "type": "string" + }, + "errorCode": { + "format": "int32", + "description": "Error code.", + "type": "integer" + }, + "recommendedAction": { + "description": "Recommended action for the error.", + "type": "string" + }, + "exceptionMessage": { + "description": "Contains the non localized exception message", + "type": "string" + } + } + }, + "Job": { + "description": "Data service job.", + "required": [ + "status", + "startTime", + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DmsBaseObject" + } + ], + "properties": { + "status": { + "description": "Status of the job.", + "enum": [ + "None", + "InProgress", + "Succeeded", + "WaitingForAction", + "Failed", + "Cancelled", + "Cancelling", + "PartiallySucceeded" + ], + "type": "string", + "x-ms-enum": { + "name": "JobStatus", + "modelAsString": false + } + }, + "startTime": { + "format": "date-time", + "description": "Time at which the job was started in UTC ISO 8601 format.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "Time at which the job ended in UTC ISO 8601 format.", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/JobProperties", + "description": "Job properties.", + "x-ms-client-flatten": true + }, + "error": { + "$ref": "#/definitions/Error", + "description": "Top level error for the job." + } + } + }, + "JobDefinition": { + "description": "Job Definition.", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DmsBaseObject" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/JobDefinitionProperties", + "description": "JobDefinition properties.", + "x-ms-client-flatten": true + } + } + }, + "JobDefinitionFilter": { + "description": "Contains the supported job definition filters.", + "required": [ + "state" + ], + "type": "object", + "properties": { + "state": { + "description": "The state of the job definition.", + "enum": [ + "Disabled", + "Enabled", + "Supported" + ], + "type": "string", + "x-ms-enum": { + "name": "State", + "modelAsString": false + } + }, + "dataSource": { + "description": "The data source associated with the job definition", + "type": "string" + }, + "lastModified": { + "format": "date-time", + "description": "The last modified date time of the data source.", + "type": "string" + } + } + }, + "JobDefinitionList": { + "description": "Job Definition Collection.", + "type": "object", + "properties": { + "value": { + "description": "List of job definitions.", + "type": "array", + "items": { + "$ref": "#/definitions/JobDefinition" + } + }, + "nextLink": { + "description": "Link for the next set of job definitions.", + "type": "string" + } + } + }, + "JobDefinitionProperties": { + "description": "Job Definition", + "required": [ + "dataSourceId", + "dataSinkId", + "state" + ], + "type": "object", + "properties": { + "dataSourceId": { + "description": "Data Source Id associated to the job definition.", + "type": "string" + }, + "dataSinkId": { + "description": "Data Sink Id associated to the job definition.", + "type": "string" + }, + "schedules": { + "description": "Schedule for running the job definition", + "type": "array", + "items": { + "$ref": "#/definitions/Schedule" + } + }, + "state": { + "description": "State of the job definition.", + "enum": [ + "Disabled", + "Enabled", + "Supported" + ], + "type": "string", + "x-ms-enum": { + "name": "State", + "modelAsString": false + } + }, + "lastModifiedTime": { + "format": "date-time", + "description": "Last modified time of the job definition.", + "type": "string" + }, + "runLocation": { + "description": "This is the preferred geo location for the job to run.", + "enum": [ + "none", + "australiaeast", + "australiasoutheast", + "brazilsouth", + "canadacentral", + "canadaeast", + "centralindia", + "centralus", + "eastasia", + "eastus", + "eastus2", + "japaneast", + "japanwest", + "koreacentral", + "koreasouth", + "southeastasia", + "southcentralus", + "southindia", + "northcentralus", + "northeurope", + "uksouth", + "ukwest", + "westcentralus", + "westeurope", + "westindia", + "westus", + "westus2" + ], + "type": "string", + "x-ms-enum": { + "name": "RunLocation", + "modelAsString": false + } + }, + "userConfirmation": { + "description": "Enum to detect if user confirmation is required. If not passed will default to NotRequired.", + "default": "NotRequired", + "enum": [ + "NotRequired", + "Required" + ], + "type": "string", + "x-ms-enum": { + "name": "UserConfirmation", + "modelAsString": false + } + }, + "dataServiceInput": { + "description": "A generic json used differently by each data service type.", + "type": "object" + }, + "customerSecrets": { + "description": "List of customer secrets containing a key identifier and key value. The key identifier is a way for the specific data source to understand the key. Value contains customer secret encrypted by the encryptionKeys.", + "type": "array", + "items": { + "$ref": "#/definitions/CustomerSecret" + } + } + } + }, + "JobDetails": { + "description": "Job details.", + "type": "object", + "properties": { + "jobStages": { + "description": "List of stages that ran in the job", + "type": "array", + "items": { + "$ref": "#/definitions/JobStages" + } + }, + "jobDefinition": { + "$ref": "#/definitions/JobDefinition", + "description": "JobDefinition at the time of the run" + }, + "errorDetails": { + "description": "Error details for failure. This is optional.", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDetails" + } + }, + "itemDetailsLink": { + "description": "Item Details Link to download files or see details", + "type": "string" + } + } + }, + "JobFilter": { + "description": "Contains the information about the filters for the job.", + "required": [ + "status" + ], + "type": "object", + "properties": { + "status": { + "description": "The status of the job.", + "enum": [ + "None", + "InProgress", + "Succeeded", + "WaitingForAction", + "Failed", + "Cancelled", + "Cancelling", + "PartiallySucceeded" + ], + "type": "string", + "x-ms-enum": { + "name": "JobStatus", + "modelAsString": false + } + }, + "startTime": { + "format": "date-time", + "description": "The start time of the job.", + "type": "string" + } + } + }, + "JobList": { + "description": "Job Collection.", + "type": "object", + "properties": { + "value": { + "description": "List of jobs.", + "type": "array", + "items": { + "$ref": "#/definitions/Job" + } + }, + "nextLink": { + "description": "Link for the next set of jobs.", + "type": "string" + } + } + }, + "JobProperties": { + "description": "Job Properties", + "required": [ + "isCancellable" + ], + "type": "object", + "properties": { + "isCancellable": { + "description": "Describes whether the job is cancellable.", + "enum": [ + "NotCancellable", + "Cancellable" + ], + "type": "string", + "x-ms-enum": { + "name": "IsJobCancellable", + "modelAsString": false + } + }, + "bytesProcessed": { + "format": "int64", + "description": "Number of bytes processed by the job as of now.", + "type": "integer" + }, + "itemsProcessed": { + "format": "int64", + "description": "Number of items processed by the job as of now", + "type": "integer" + }, + "totalBytesToProcess": { + "format": "int64", + "description": "Number of bytes to be processed by the job in total.", + "type": "integer" + }, + "totalItemsToProcess": { + "format": "int64", + "description": "Number of items to be processed by the job in total", + "type": "integer" + }, + "details": { + "$ref": "#/definitions/JobDetails", + "description": "Details of a job run. This field will only be sent for expand details filter." + }, + "dataSourceName": { + "description": "Name of the data source on which the job was triggered.", + "type": "string" + }, + "dataSinkName": { + "description": "Name of the data sink on which the job was triggered.", + "type": "string" + } + } + }, + "JobStages": { + "description": "Job stages.", + "required": [ + "stageStatus" + ], + "type": "object", + "properties": { + "stageName": { + "description": "Name of the job stage.", + "type": "string" + }, + "stageStatus": { + "description": "Status of the job stage.", + "enum": [ + "None", + "InProgress", + "Succeeded", + "WaitingForAction", + "Failed", + "Cancelled", + "Cancelling", + "PartiallySucceeded" + ], + "type": "string", + "x-ms-enum": { + "name": "JobStatus", + "modelAsString": false + } + }, + "jobStageDetails": { + "description": "Job Stage Details", + "type": "object" + }, + "errorDetails": { + "description": "Error details for the stage. This is optional", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + }, + "Key": { + "description": "Encryption Key.", + "required": [ + "keyModulus", + "keyExponent", + "encryptionChunkSizeInBytes" + ], + "type": "object", + "properties": { + "keyModulus": { + "description": "Modulus of the encryption key.", + "type": "string" + }, + "keyExponent": { + "description": "Exponent of the encryption key.", + "type": "string" + }, + "encryptionChunkSizeInBytes": { + "format": "int32", + "description": "The maximum byte size that can be encrypted by the key. For a key size larger than the size, break into chunks and encrypt each chunk, append each encrypted chunk with : to mark the end of the chunk.", + "type": "integer" + } + } + }, + "PublicKey": { + "description": "Public key", + "required": [ + "properties" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DmsBaseObject" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PublicKeyProperties", + "description": "Public key property.", + "x-ms-client-flatten": true + } + } + }, + "PublicKeyList": { + "description": "PublicKey Collection", + "type": "object", + "properties": { + "value": { + "description": "List of public keys.", + "type": "array", + "items": { + "$ref": "#/definitions/PublicKey" + } + }, + "nextLink": { + "description": "Link for the next set of public keys.", + "type": "string" + } + } + }, + "PublicKeyProperties": { + "description": "PublicKey Properties", + "required": [ + "dataServiceLevel1Key", + "dataServiceLevel2Key" + ], + "type": "object", + "properties": { + "dataServiceLevel1Key": { + "$ref": "#/definitions/Key", + "description": "Level one public key for encryption" + }, + "dataServiceLevel2Key": { + "$ref": "#/definitions/Key", + "description": "Level two public key for encryption" + } + } + }, + "Resource": { + "description": "Model of the Resource.", + "required": [ + "location" + ], + "type": "object", + "properties": { + "id": { + "description": "The Resource Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The Resource Name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The Resource type.", + "type": "string", + "readOnly": true + }, + "location": { + "description": "The location of the resource. This will be one of the supported and registered Azure Geo Regions (e.g. West US, East\r\nUS, Southeast Asia, etc.). The geo region of a resource cannot be changed once it is created, but if an identical geo\r\nregion is specified on update the request will succeed.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "tags": { + "description": "The list of key value pairs that describe the resource. These tags can be used in viewing and grouping this resource\r\n(across resource groups).", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The sku type." + } + }, + "x-ms-azure-resource": true + }, + "RunParameters": { + "description": "Run parameters for a job.", + "type": "object", + "properties": { + "userConfirmation": { + "description": "Enum to detect if user confirmation is required. If not passed will default to NotRequired.", + "default": "NotRequired", + "enum": [ + "NotRequired", + "Required" + ], + "type": "string", + "x-ms-enum": { + "name": "UserConfirmation", + "modelAsString": false + } + }, + "dataServiceInput": { + "description": "A generic json used differently by each data service type.", + "type": "object" + }, + "customerSecrets": { + "description": "List of customer secrets containing a key identifier and key value. The key identifier is a way for the specific data source to understand the key. Value contains customer secret encrypted by the encryptionKeys.", + "type": "array", + "items": { + "$ref": "#/definitions/CustomerSecret" + } + } + } + }, + "Schedule": { + "description": "Schedule for the job run.", + "type": "object", + "properties": { + "name": { + "description": "Name of the schedule.", + "type": "string" + }, + "policyList": { + "description": "A list of repetition intervals in ISO 8601 format.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "Sku": { + "description": "The sku type.", + "type": "object", + "properties": { + "name": { + "description": "The sku name. Required for data manager creation, optional for update.", + "type": "string" + }, + "tier": { + "description": "The sku tier. This is based on the SKU name.", + "type": "string" + } + } + } + }, + "parameters": { + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "The API Version", + "required": true, + "type": "string" + }, + "dataManagerNameParameter": { + "name": "dataManagerName", + "in": "path", + "description": "The name of the DataManager Resource within the specified resource group. DataManager names must be between 3 and 24 characters in length and use any alphanumeric and underscore only", + "required": true, + "type": "string", + "maxLength": 24, + "minLength": 3, + "pattern": "^[-\\w\\.]+$", + "x-ms-parameter-location": "method" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The Resource Group Name", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "The Subscription Id", + "required": true, + "type": "string" + } + }, + "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" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/hybriddatamanager/resource-manager/readme.go.md b/specification/hybriddatamanager/resource-manager/readme.go.md index e4bc8ccadfce..02bb59efe6d8 100644 --- a/specification/hybriddatamanager/resource-manager/readme.go.md +++ b/specification/hybriddatamanager/resource-manager/readme.go.md @@ -13,9 +13,19 @@ go: ```yaml $(go) && $(multiapi) batch: + - tag: package-2019-06 - tag: package-2016-06 ``` +### Tag: package-2019-06 and go + +These settings apply only when `--tag=package-2019-06 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +```yaml $(tag) == 'package-2019-06' && $(go) +output-folder: $(go-sdk-folder)/services/hybriddatamanager/mgmt/2019-06-01/$(namespace) +``` + ### Tag: package-2016-06 and go These settings apply only when `--tag=package-2016-06 --go` is specified on the command line. diff --git a/specification/hybriddatamanager/resource-manager/readme.md b/specification/hybriddatamanager/resource-manager/readme.md index ed026f8c21b5..d05458e528e2 100644 --- a/specification/hybriddatamanager/resource-manager/readme.md +++ b/specification/hybriddatamanager/resource-manager/readme.md @@ -24,6 +24,25 @@ To see additional help and options, run: ### Basic Information These are the global settings for the HybridDataManager API. +``` yaml +openapi-type: arm +tag: package-2019-06 +``` + + +### Tag: package-2019-06 + +These settings apply only when `--tag=package-2019-06` is specified on the command line. + +``` yaml $(tag) == 'package-2019-06' +input-file: +- Microsoft.HybridData/stable/2019-06-01/hybriddata.json +directive: + - suppress: + - R1001 #to suppress (OperationIdNounVerb/R1001/SDKViolation) + - R2062 #to suppress (XmsResourceInPutResponse/R2062/ARMViolation) +``` + ``` yaml openapi-type: arm tag: package-2016-06 @@ -143,6 +162,7 @@ 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 ``` diff --git a/specification/hybriddatamanager/resource-manager/readme.ruby.md b/specification/hybriddatamanager/resource-manager/readme.ruby.md index 02e45f681f87..491295393d0b 100644 --- a/specification/hybriddatamanager/resource-manager/readme.ruby.md +++ b/specification/hybriddatamanager/resource-manager/readme.ruby.md @@ -13,9 +13,20 @@ ruby: ``` yaml $(ruby) && $(multiapi) batch: + - tag: package-2019-06 - tag: package-2016-06 ``` +### Tag: package-2019-06 and ruby + +These settings apply only when `--tag=package-2019-06 --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2019-06' && $(ruby) +namespace: "Azure::HybridDataManager::Mgmt::V2019-06-01" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_hybriddatamanager/lib +``` + ### Tag: package-2016-06 and ruby These settings apply only when `--tag=package-2016-06 --ruby` is specified on the command line. 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 new file mode 100644 index 000000000000..831f3567dbf4 --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/connectedClusters.json @@ -0,0 +1,690 @@ +{ + "swagger": "2.0", + "info": { + "title": "KubernetesConnectRPClient", + "version": "2020-01-01-preview", + "description": "Azure Connected Cluster Resource Provider API for adopting any Kubernetes Cluster" + }, + "schemes": [ + "https" + ], + "host": "management.azure.com", + "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}/resourcegroups/{resourceGroupName}/providers/Microsoft.Kubernetes/connectedClusters/{clusterName}": { + "put": { + "summary": "Register a new Kubernetes cluster with Azure Resource Manager.", + "operationId": "ConnectedCluster_Create", + "description": "API to register a new Kubernetes cluster and create a tracked resource in Azure Resource Manager (ARM).", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "CreateClusterExample": { + "$ref": "./examples/CreateClusterExample.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterNamePathParam" + }, + { + "in": "body", + "name": "ConnectedCluster", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectedCluster" + }, + "description": "Parameters supplied to Create a Connected Cluster." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConnectedCluster" + } + }, + "201": { + "description": "Resource creation request accepted", + "schema": { + "$ref": "#/definitions/ConnectedCluster" + } + }, + "default": { + "description": "Resource Provider error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "summary": "Updates a connected cluster.", + "operationId": "ConnectedCluster_Update", + "description": "API to update certain properties of the connected cluster resource", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "UpdateClusterExample": { + "$ref": "./examples/UpdateClusterExample.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterNamePathParam" + }, + { + "in": "body", + "name": "ConnectedClusterPatch", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectedClusterPatch" + }, + "description": "Parameters supplied to update Connected Cluster." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConnectedCluster" + } + }, + "default": { + "description": "Resource Provider error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "summary": "Get the properties of the specified connected cluster.", + "operationId": "ConnectedCluster_Get", + "description": "Returns the properties of the specified connected cluster, including name, identity, properties, and additional cluster details.", + "produces": [ + "application/json" + ], + "x-ms-examples": { + "GetClusterExample": { + "$ref": "./examples/GetClusterExample.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterNamePathParam" + } + ], + "responses": { + "200": { + "description": "Resource retrieved successfully.", + "schema": { + "$ref": "#/definitions/ConnectedCluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "summary": "Delete a connected cluster.", + "operationId": "ConnectedCluster_Delete", + "description": "Delete a connected cluster, removing the tracked resource in Azure Resource Manager (ARM).", + "produces": [ + "application/json" + ], + "x-ms-examples": { + "DeleteClusterExample": { + "$ref": "./examples/DeleteClusterExample.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterNamePathParam" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Resource deletion is in progress" + }, + "204": { + "description": "The resource was not found but the request is well formed" + }, + "default": { + "description": "Resource Provider error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Kubernetes/connectedClusters/{clusterName}/listClusterUserCredentials": { + "post": { + "summary": "Gets cluster user credentials of a connected cluster", + "operationId": "ConnectedCluster_ListClusterUserCredentials", + "description": "Gets cluster user credentials of the connected cluster with a specified resource group and name.", + "produces": [ + "application/json" + ], + "x-ms-examples": { + "ListClusterUserCredentialsExample": { + "$ref": "./examples/ConnectedClustersListClusterCredentialsResult.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterNamePathParam" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CredentialResults" + } + }, + "default": { + "description": "Resource Provider error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Kubernetes/connectedClusters": { + "get": { + "summary": "Lists all connected clusters", + "operationId": "ConnectedCluster_ListByResourceGroup", + "description": "API to enumerate registered connected K8s clusters under a Resource Group", + "produces": [ + "application/json" + ], + "x-ms-examples": { + "GetClustersExample": { + "$ref": "./examples/GetClustersByResourceGroupExample.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConnectedClusterList" + } + }, + "default": { + "description": "Resource Provider error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Kubernetes/connectedClusters": { + "get": { + "summary": "Lists all connected clusters", + "operationId": "ConnectedCluster_ListBySubscription", + "description": "API to enumerate registered connected K8s clusters under a Subscription", + "produces": [ + "application/json" + ], + "x-ms-examples": { + "GetClustersExample": { + "$ref": "./examples/GetClustersBySubscriptionExample.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConnectedClusterList" + } + }, + "default": { + "description": "Resource Provider error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Kubernetes/operations": { + "get": { + "description": "Lists all of the available API operations for Connected Cluster resource.", + "operationId": "Operations_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationList" + } + }, + "default": { + "description": "Resource Provider error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ListConnectedClusterOperationsExample": { + "$ref": "./examples/ListConnectedClusterOperationsExample.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "OperationList": { + "description": "The paginated list of connected cluster API operations.", + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "The list of connected cluster API operations." + }, + "nextLink": { + "type": "string", + "description": "The link to fetch the next page of connected cluster API operations." + } + } + }, + "Operation": { + "type": "object", + "description": "The Connected cluster API operation", + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Operation name: {Microsoft.Kubernetes}/{resource}/{operation}" + }, + "display": { + "readOnly": true, + "description": "The object that represents the operation.", + "properties": { + "provider": { + "type": "string", + "description": "Service provider: Microsoft.connectedClusters" + }, + "resource": { + "type": "string", + "description": "Connected Cluster Resource on which the operation is performed" + }, + "operation": { + "type": "string", + "description": "Operation type: Read, write, delete, etc." + }, + "description": { + "type": "string", + "description": "Description of the operation." + } + } + } + } + }, + "ConnectedClusterList": { + "description": "The paginated list of connected Clusters", + "type": "object", + "properties": { + "value": { + "description": "The list of connected clusters", + "type": "array", + "items": { + "$ref": "#/definitions/ConnectedCluster" + } + }, + "nextLink": { + "description": "The link to fetch the next page of connected cluster", + "type": "string" + } + } + }, + "ConnectedCluster": { + "type": "object", + "required": [ + "properties", + "identity" + ], + "properties": { + "identity": { + "$ref": "#/definitions/ConnectedClusterIdentity", + "description": "The identity of the connected cluster." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConnectedClusterProperties", + "description": "Describes the connected cluster resource properties." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "description": "Represents a connected cluster." + }, + "ConnectedClusterIdentity": { + "type": "object", + "required": [ + "type" + ], + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of connected cluster identity. This property will only be provided for a system assigned identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id associated with the connected cluster. This property will only be provided for a system assigned identity." + }, + "type": { + "type": "string", + "description": "The type of identity used for the connected cluster. The type 'SystemAssigned, includes a system created identity. The type 'None' means no identity is assigned to the connected cluster.", + "enum": [ + "None", + "SystemAssigned" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + } + }, + "description": "Identity for the connected cluster." + }, + "ConnectedClusterProperties": { + "type": "object", + "required": [ + "agentPublicKeyCertificate", + "aadProfile" + ], + "properties": { + "agentPublicKeyCertificate": { + "type": "string", + "description": "Base64 encoded public certificate used by the agent to do the initial handshake to the backend services in Azure." + }, + "aadProfile": { + "$ref": "#/definitions/ConnectedClusterAADProfile" + }, + "kubernetesVersion": { + "readOnly": true, + "type": "string", + "description": "The Kubernetes version of the connected cluster resource" + }, + "totalNodeCount": { + "readOnly": true, + "type": "integer", + "description": "Number of nodes present in the connected cluster resource" + }, + "agentVersion": { + "readOnly": true, + "type": "string", + "description": "Version of the agent running on the connected cluster resource" + }, + "provisioningState": { + "$ref": "#/definitions/ConnectedClusterProvisioningState" + } + } + }, + "CredentialResults": { + "properties": { + "kubeconfigs": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/CredentialResult" + }, + "description": "Base64-encoded Kubernetes configuration file." + } + }, + "description": "The list of credential result response." + }, + "CredentialResult": { + "type": "object", + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the credential." + }, + "value": { + "type": "string", + "format": "byte", + "readOnly": true, + "description": "Base64-encoded Kubernetes configuration file." + } + }, + "description": "The credential result response." + }, + "ConnectedClusterAADProfile": { + "type": "object", + "required": [ + "tenantId", + "clientAppId", + "serverAppId" + ], + "properties": { + "tenantId": { + "type": "string", + "description": "The aad tenant id which is configured on target K8s cluster" + }, + "clientAppId": { + "type": "string", + "description": "The client app id configured on target K8 cluster " + }, + "serverAppId": { + "type": "string", + "description": "The server app id to access AD server" + } + } + }, + "ConnectedClusterProvisioningState": { + "type": "string", + "description": "The current deployment state of connectedClusters.", + "enum": [ + "Succeeded", + "Failed", + "Canceled", + "Provisioning", + "Updating", + "Deleting", + "Accepted" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "ConnectedClusterPatch": { + "type": "object", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConnectedClusterPatchProperties", + "description": "Describes the connected cluster resource properties that can be updated during PATCH operation." + } + }, + "description": "Object containing updates for patch operations." + }, + "ConnectedClusterPatchProperties": { + "type": "object", + "properties": { + "agentPublicKeyCertificate": { + "type": "string", + "description": "Base64 encoded public certificate used by the agent to do the initial handshake to the backend services in Azure." + } + } + }, + "ErrorResponse": { + "description": "The error response that indicates why an operation has failed.", + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "ErrorDetails": { + "description": "The error response details containing error code and error message", + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The error message.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ClusterNamePathParam": { + "name": "clusterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Kubernetes cluster on which get is called.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/ConnectedClustersListClusterCredentialsResult.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/ConnectedClustersListClusterCredentialsResult.json new file mode 100644 index 000000000000..86e32e51ea00 --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/ConnectedClustersListClusterCredentialsResult.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "1bfbb5d0-917e-4346-9026-1d3b344417f5", + "resourceGroupName": "k8sc-rg", + "clusterName": "testCluster", + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": { + "body": { + "kubeconfigs": [ + { + "name": "credentialName1", + "value": "YXBpVmVyc2lvbjogdjENCmNsdXN0ZXJzOg0KLSBjbHVzdGVyOg0KICAgIGNlcnRpZmljYXRlLWF1dGhvcml0eS1kYXRhOiBMUzB0TFMxQ1JVZEpUaUJEUlZKVVNVWkpRMEZVUlMwdExTMHRDazFKU1VWNGVrTkRRWEVyWjBGM1NVSkJaMGxSVTJ0dVdsWnZaekp1VmpKVmNYZEtjblZYTTFCSGVrRk9RbWRyY1docmFVYzVkekJDUVZGelJrRkVRVTRLVFZGemQwTlJXVVJXVVZGRVJYZEthbGVsSlEwbHFRVTVDWjJ0eGFHdHBSemwzTUVKQlVVVkdRVUZQUTBGbk9FRk5TVWxEUTJkTFEwRm5SVUUwV1hCNUNsUmtUMVJSU1dNdmVsaERlR3hTZWtVMF" + } + ] + } + } + } +} diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/CreateClusterExample.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/CreateClusterExample.json new file mode 100644 index 000000000000..033ddcd945d1 --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/CreateClusterExample.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "1bfbb5d0-917e-4346-9026-1d3b344417f5", + "resourceGroupName": "k8sc-rg", + "clusterName": "testCluster", + "api-version": "2020-01-01-preview", + "ConnectedCluster": { + "location": "East US", + "tags": {}, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "aadProfile": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "clientAppId": "f8cd1fd9-154f-4da7-b348-595f283c13a3", + "serverAppId": "45c27b16-e262-4c55-b572-b3b8f7788eb8" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "name": "connectedCluster1", + "type": "Microsoft.Kubernetes/connectedClusters", + "location": "East US", + "tags": {}, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "aadProfile": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "clientAppId": "f8cd1fd9-154f-4da7-b348-595f283c13a3", + "serverAppId": "45c27b16-e262-4c55-b572-b3b8f7788eb8" + }, + "kubernetesVersion": "1.17.0", + "totalNodeCount": 2, + "agentVersion": "0.1.0" + } + } + }, + "201": { + "body": { + "id": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "name": "connectedCluster1", + "type": "Microsoft.Kubernetes/connectedClusters", + "location": "East US", + "tags": {}, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "aadProfile": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "clientAppId": "f8cd1fd9-154f-4da7-b348-595f283c13a3", + "serverAppId": "45c27b16-e262-4c55-b572-b3b8f7788eb8" + }, + "kubernetesVersion": "1.17.0", + "totalNodeCount": 2, + "agentVersion": "0.1.0", + "provisioningState": "Accepted" + } + } + } + } +} diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/DeleteClusterExample.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/DeleteClusterExample.json new file mode 100644 index 000000000000..5cef979b6395 --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/DeleteClusterExample.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "1bfbb5d0-917e-4346-9026-1d3b344417f5", + "resourceGroupName": "k8sc-rg", + "clusterName": "testCluster", + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/GetClusterExample.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/GetClusterExample.json new file mode 100644 index 000000000000..cde2327f4aee --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/GetClusterExample.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "1bfbb5d0-917e-4346-9026-1d3b344417f5", + "resourceGroupName": "k8sc-rg", + "clusterName": "testCluster", + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "name": "connectedCluster1", + "type": "Microsoft.Kubernetes/connectedClusters", + "location": "East US", + "tags": {}, + "identity": { + "principalId": "d8cd1fd9-154f-4da7-b348-595f283c13a3", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "aadProfile": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "clientAppId": "f8cd1fd9-154f-4da7-b348-595f283c13a3", + "serverAppId": "45c27b16-e262-4c55-b572-b3b8f7788eb8" + }, + "kubernetesVersion": "1.17.0", + "totalNodeCount": 2, + "agentVersion": "0.1.0" + } + } + } + } +} diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/GetClustersByResourceGroupExample.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/GetClustersByResourceGroupExample.json new file mode 100644 index 000000000000..4bfe14f142fa --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/GetClustersByResourceGroupExample.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "1bfbb5d0-917e-4346-9026-1d3b344417f5", + "resourceGroupName": "k8sc-rg", + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "72f988bf-86f1-41af-91ab-2d7cd011db48", + "name": "connectedCluster1", + "type": "Microsoft.Kubernetes/connectedClusters", + "location": "East US", + "tags": {}, + "identity": { + "principalId": "d8cd1fd9-154f-4da7-b348-595f283c13a3", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "aadProfile": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "clientAppId": "f8cd1fd9-154f-4da7-b348-595f283c13a3", + "serverAppId": "45c27b16-e262-4c55-b572-b3b8f7788eb8" + }, + "kubernetesVersion": "1.17.0", + "totalNodeCount": 2, + "agentVersion": "0.1.0" + } + }, + { + "id": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "name": "connectedCluster1", + "type": "Microsoft.Kubernetes/connectedClusters", + "location": "East US", + "tags": {}, + "identity": { + "principalId": "d8cd1fd9-154f-4da7-b348-595f283c13a3", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "XIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "aadProfile": { + "tenantId": "0ea9fc98-15d7-498e-833c-8f7207740190", + "clientAppId": "d8cd1fd9-154f-4da7-b348-595f283c13a3", + "serverAppId": "45c27b16-e262-4c55-b572-b3b8f7788eb8" + }, + "kubernetesVersion": "1.1", + "totalNodeCount": 2, + "agentVersion": "0.1.0" + } + } + ], + "nextLink": "https://serviceRoot/subscriptions/subId/resourcegroups/resourceGroupName/providers/Microsoft.Kubernetes/connectedClusters?api-version=2019-11-01-preview&$skiptoken=X'12345'" + } + } + } +} diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/GetClustersBySubscriptionExample.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/GetClustersBySubscriptionExample.json new file mode 100644 index 000000000000..a0128f14cc55 --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/GetClustersBySubscriptionExample.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "1bfbb5d0-917e-4346-9026-1d3b344417f5", + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "name": "connectedCluster1", + "type": "Microsoft.Kubernetes/connectedClusters", + "location": "East US", + "tags": {}, + "identity": { + "principalId": "d8cd1fd9-154f-4da7-b348-595f283c13a3", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "aadProfile": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "clientAppId": "f8cd1fd9-154f-4da7-b348-595f283c13a3", + "serverAppId": "45c27b16-e262-4c55-b572-b3b8f7788eb8" + }, + "kubernetesVersion": "1.17.0", + "totalNodeCount": 2, + "agentVersion": "0.1.0" + } + }, + { + "id": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "name": "connectedCluster2", + "type": "Microsoft.Kubernetes/connectedClusters", + "location": "East US", + "tags": {}, + "identity": { + "principalId": "d8cd1fd9-154f-4da7-b348-595f283c13a3", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "XIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "aadProfile": { + "tenantId": "0ea9fc98-15d7-498e-833c-8f7207740190", + "clientAppId": "d8cd1fd9-154f-4da7-b348-595f283c13a3", + "serverAppId": "45c27b16-e262-4c55-b572-b3b8f7788eb8" + }, + "kubernetesVersion": "1.16.3", + "totalNodeCount": 4, + "agentVersion": "0.1.0" + } + } + ], + "nextLink": "https://serviceRoot/subscriptions/subId/resourcegroups/resourceGroupName/providers/Microsoft.Kubernetes/connectedClusters?api-version=2019-11-01-preview&$skiptoken=X'12345'" + } + } + } +} diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/ListConnectedClusterOperationsExample.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/ListConnectedClusterOperationsExample.json new file mode 100644 index 000000000000..2cfea76ffbfa --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/ListConnectedClusterOperationsExample.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Kubernetes/connectedClusters/write", + "display": { + "provider": "Microsoft.connectedClusters", + "resource": "connectedClusters", + "operation": "Create ConnectedCluster", + "description": "Create any ConnectedCluster" + } + }, + { + "name": "Microsoft.Kubernetes/connectedClusters/read", + "display": { + "provider": "Microsoft.Kubernetes", + "resource": "connectedClusters", + "operation": "Get ConnectedCluster", + "description": "Get any ConnectedCluster" + } + }, + { + "name": "Microsoft.Kubernetes/connectedClusters/delete", + "display": { + "provider": "Microsoft.Kubernetes", + "resource": "connectedClusters", + "operation": "Delete ConnectedCluster", + "description": "Delete any ConnectedCluster" + } + } + ], + "nextLink": "https://serviceRoot/subscriptions/subId/resourcegroups/resourceGroupName/providers/Microsoft.Kubernetes/connectedClusters?api-version=2019-11-01-preview&$skiptoken=X'12345'" + } + } + } +} diff --git a/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/UpdateClusterExample.json b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/UpdateClusterExample.json new file mode 100644 index 000000000000..0dc7871fdba6 --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/Microsoft.Kubernetes/preview/2020-01-01-preview/examples/UpdateClusterExample.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview", + "subscriptionId": "1bfbb5d0-917e-4346-9026-1d3b344417f5", + "resourceGroupName": "k8sc-rg", + "clusterName": "testCluster", + "ConnectedClusterPatch": { + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO" + } + } + }, + "responses": { + "200": { + "body": { + "id": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "name": "connectedCluster1", + "type": "Microsoft.Kubernetes/connectedClusters", + "location": "East US", + "tags": {}, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "agentPublicKeyCertificate": "MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiM D6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO", + "aadProfile": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "clientAppId": "f8cd1fd9-154f-4da7-b348-595f283c13a3", + "serverAppId": "45c27b16-e262-4c55-b572-b3b8f7788eb8" + }, + "kubernetesVersion": "1.17.0", + "totalNodeCount": 2, + "agentVersion": "0.1.0" + } + } + } + } +} diff --git a/specification/hybridkubernetes/resource-manager/readme.csharp.md b/specification/hybridkubernetes/resource-manager/readme.csharp.md new file mode 100644 index 000000000000..e09e4c73fa28 --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/readme.csharp.md @@ -0,0 +1,16 @@ + +## 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.Kubernetes + output-folder: $(csharp-sdks-folder)/Kubernetes/Management.Kubernetes/Generated +``` diff --git a/specification/hybridkubernetes/resource-manager/readme.go.md b/specification/hybridkubernetes/resource-manager/readme.go.md new file mode 100644 index 000000000000..d8aa1554afc0 --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/readme.go.md @@ -0,0 +1,19 @@ +## Go + +These settings apply only when `--go` is specified on the command line. + +```yaml $(go) +go: + license-header: MICROSOFT_APACHE_NO_VERSION + clear-output-folder: true +``` + +### Tag: package-2020-01-01-preview and go + +These settings apply only when `--tag=package-2020-01-01-preview --go` is specified on the command line. +Please also specify `--go-sdks-folder=`. + +```yaml $(tag) == 'package-2020-01-01-preview' && $(go) +namespace: hybridkubernetes +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2020-01-01-preview/$(namespace) +``` \ No newline at end of file diff --git a/specification/hybridkubernetes/resource-manager/readme.java.md b/specification/hybridkubernetes/resource-manager/readme.java.md new file mode 100644 index 000000000000..be92fcf47bdc --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/readme.java.md @@ -0,0 +1,34 @@ + +These settings apply only when `--java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(java) +azure-arm: true +fluent: true +namespace: com.microsoft.azure.management.hybridkubernetes +license-header: MICROSOFT_MIT_NO_CODEGEN +payload-flattening-threshold: 1 +output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-hybridkubernetes +title: HybridKubernetesManagementClient +description: "Hybrid Kubernetes Client" +``` + +### Java multi-api + +``` yaml $(java) && $(multiapi) +batch: + - tag: package-2020-01-01-preview +``` + +### Tag: package-2020-01-01-preview and java + +These settings apply only when `--tag=package-2020-01-01-preview` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2020-01-01-preview' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.hybridkubernetes.v2020_01_01_preview + output-folder: $(azure-libraries-for-java-folder)/hybridkubernetes/resource-manager/v2020_01_01_preview +regenerate-manager: true +generate-interface: true +``` \ No newline at end of file diff --git a/specification/hybridkubernetes/resource-manager/readme.md b/specification/hybridkubernetes/resource-manager/readme.md new file mode 100644 index 000000000000..e60faf4e7f2d --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/readme.md @@ -0,0 +1,104 @@ + +# KubernetesConnect + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for hybrid kubernetes. + +## Getting Started + +To build the SDKs for Connected Cluster 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 Kubernetes Connect RP. + +```yaml +openapi-type: arm +tag: package-2020-01-01-preview +``` + +### Tag: package-2020-01-01-preview + +These settings apply only when `--tag=package-2020-01-01-preview` is specified on the command line. + +```yaml $(tag) == 'package-2020-01-01-preview' +input-file: +- Microsoft.Kubernetes/preview/2020-01-01-preview/connectedClusters.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-python + - repo: azure-sdk-for-java + - repo: azure-sdk-for-go + - repo: azure-sdk-for-ruby + - repo: azure-sdk-for-net + after_scripts: + - bundle install && rake arm:regen_all_profiles['azure_mgmt_hybridkubernetes'] +``` + +## Go + +See configuration in [readme.go.md](./readme.go.md) + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## Ruby + +See configuration in [readme.ruby.md](./readme.ruby.md) + +## CSharp + +See configuration in [readme.csharp.md](./readme.csharp.md) + +## Java + +See configuration in [readme.java.md](./readme.java.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/hybridkubernetes/resource-manager/readme.nodejs.md b/specification/hybridkubernetes/resource-manager/readme.nodejs.md new file mode 100644 index 000000000000..66bc22e0161c --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/readme.nodejs.md @@ -0,0 +1,14 @@ +## Node.js + +These settings apply only when `--nodejs` is specified on the command line. +Please also specify `--node-sdks-folder=`. + +``` yaml $(nodejs) +nodejs: + azure-arm: true + package-name: azure-arm-hybridkubernetes + output-folder: $(node-sdks-folder)/lib/services/hybridkubernetesManagement + generate-license-txt: true + generate-package-json: true + generate-readme-md: true +``` \ No newline at end of file diff --git a/specification/hybridkubernetes/resource-manager/readme.python.md b/specification/hybridkubernetes/resource-manager/readme.python.md new file mode 100644 index 000000000000..c9a7c10980ad --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/readme.python.md @@ -0,0 +1,27 @@ +## 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 $(python) +python: + python-mode: create + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: azure.mgmt.hybridkubernetes + package-name: azure-mgmt-hybridkubernetes + package-version: 0.1.1 + clear-output-folder: true +``` +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/hybridkubernetes/azure-mgmt-hybridkubernetes/azure/mgmt/hybridkubernetes +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/hybridkubernetes/azure-mgmt-hybridkubernetes +``` \ No newline at end of file diff --git a/specification/hybridkubernetes/resource-manager/readme.ruby.md b/specification/hybridkubernetes/resource-manager/readme.ruby.md new file mode 100644 index 000000000000..6bd035dbde51 --- /dev/null +++ b/specification/hybridkubernetes/resource-manager/readme.ruby.md @@ -0,0 +1,27 @@ + +## Ruby + +These settings apply only when `--ruby` is specified on the command line. + +```yaml +package-name: azure_mgmt_hybridkubernetes +package-version: 2020-01-01-preview +azure-arm: true +``` + +### Ruby multi-api + +``` yaml $(ruby) && $(multiapi) +batch: + - tag: package-2020-01-01-preview +``` + +### Tag: package-2020-01-01-preview and ruby + +These settings apply only when `--tag=package-2020-01-01-preview --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +```yaml $(tag) == 'package-2020-01-01-preview' && $(ruby) +namespace: "Azure::Kubernetes::Mgmt::V2020_01_01_preview" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_hybridkubernetes/lib +``` diff --git a/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/preview/2019-05-01-preview/examples/ListImageTemplatesByRg.json b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/preview/2019-05-01-preview/examples/ListImageTemplatesByRg.json index 3a893044eadb..c20bbb54691b 100644 --- a/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/preview/2019-05-01-preview/examples/ListImageTemplatesByRg.json +++ b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/preview/2019-05-01-preview/examples/ListImageTemplatesByRg.json @@ -72,7 +72,10 @@ { "type": "SharedImage", "galleryImageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/gallery/baseimages/images/baseimage", - "replicationRegions":[ "eastus", "westus"], + "replicationRegions": [ + "eastus", + "westus" + ], "runOutputName": "gallery" } ], diff --git a/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/CancelImageBuild.json b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/CancelImageBuild.json new file mode 100644 index 000000000000..088a634ea1e1 --- /dev/null +++ b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/CancelImageBuild.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "imageTemplateName": "myImageTemplate", + "api-version": "2020-02-14" + }, + "responses": { + "204": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/{subscription-id}/providers/Microsoft.VirtualMachineImages/locations/{location}/operations/{operation-id}?api-version=2020-02-14" + } + } + } +} diff --git a/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/CreateImageTemplateLinux.json b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/CreateImageTemplateLinux.json new file mode 100644 index 000000000000..fa6908fb1ca2 --- /dev/null +++ b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/CreateImageTemplateLinux.json @@ -0,0 +1,123 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-02-14", + "imageTemplateName": "myImageTemplate", + "parameters": { + "location": "westus", + "tags": { + "imagetemplate_tag1": "IT_T1", + "imagetemplate_tag2": "IT_T2" + }, + "properties": { + "source": { + "type": "ManagedImage", + "imageId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Compute/images/source_image" + }, + "customize": [ + { + "type": "Shell", + "name": "Shell Customizer Example", + "scriptUri": "https://example.com/path/to/script.sh" + } + ], + "distribute": [ + { + "type": "ManagedImage", + "location": "1_location", + "runOutputName": "image_it_pir_1", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/image_it_1", + "artifactTags": { + "tagName": "value" + } + } + ], + "vmProfile": { + "vmSize": "Standard_D2s_v3", + "osDiskSizeGB": 64, + "vnetConfig": { + "subnetId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet_name/subnets/subnet_name" + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/myImageTemplate", + "name": "myImageTemplate", + "location": "westus", + "type": "Microsoft.VirtualMachineImages/imageTemplate", + "properties": { + "source": { + "type": "ManagedImage", + "imageId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Compute/images/source_image" + }, + "customize": [ + { + "type": "Shell", + "name": "Shell Customizer Example", + "scriptUri": "https://example.com/path/to/script.sh" + } + ], + "distribute": [ + { + "type": "ManagedImage", + "location": "1_location", + "runOutputName": "image_it_pir_1", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/image_it_1", + "artifactTags": { + "tagName": "value" + } + } + ], + "vmProfile": { + "vmSize": "Standard_D2s_v3", + "osDiskSizeGB": 64, + "vnetConfig": { + "subnetId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet_name/subnets/subnet_name" + } + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/myImageTemplate", + "name": "myImageTemplate", + "location": "westus", + "type": "Microsoft.VirtualMachineImages/imageTemplate", + "properties": { + "source": { + "type": "ManagedImage", + "imageId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Compute/images/source_image" + }, + "customize": [ + { + "type": "Shell", + "name": "Shell Customizer Example", + "scriptUri": "https://example.com/path/to/script.sh" + } + ], + "distribute": [ + { + "type": "ManagedImage", + "location": "1_location", + "runOutputName": "image_it_pir_1", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/image_it_1", + "artifactTags": { + "tagName": "value" + } + } + ], + "vmProfile": { + "vmSize": "Standard_D2s_v3", + "osDiskSizeGB": 64 + } + } + } + } + } +} diff --git a/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/CreateImageTemplateWindows.json b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/CreateImageTemplateWindows.json new file mode 100644 index 000000000000..0d062e7bba28 --- /dev/null +++ b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/CreateImageTemplateWindows.json @@ -0,0 +1,152 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-02-14", + "imageTemplateName": "myImageTemplate", + "parameters": { + "location": "westus", + "tags": { + "imagetemplate_tag1": "IT_T1", + "imagetemplate_tag2": "IT_T2" + }, + "properties": { + "source": { + "type": "ManagedImage", + "imageId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Compute/images/source_image" + }, + "customize": [ + { + "type": "PowerShell", + "name": "PowerShell (inline) Customizer Example", + "inline": [ + "Powershell command-1", + "Powershell command-2", + "Powershell command-3" + ] + }, + { + "type": "PowerShell", + "name": "PowerShell (script) Customizer Example", + "scriptUri": "https://example.com/path/to/script.ps1", + "validExitCodes": [ + 0, + 1 + ] + }, + { + "type": "WindowsRestart", + "name": "Restart Customizer Example", + "restartCommand": "shutdown /f /r /t 0 /c \"packer restart\"", + "restartCheckCommand": "powershell -command \"& {Write-Output 'restarted.'}\"", + "restartTimeout": "10m" + }, + { + "type": "WindowsUpdate", + "name": "Windows Update Customizer Example", + "searchCriteria": "BrowseOnly=0 and IsInstalled=0", + "filters": [ + "$_.BrowseOnly" + ], + "updateLimit": 100 + } + ], + "distribute": [ + { + "type": "ManagedImage", + "location": "1_location", + "runOutputName": "image_it_pir_1", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/image_it_1", + "artifactTags": { + "tagName": "value" + } + } + ], + "vmProfile": { + "vmSize": "Standard_D2s_v3", + "osDiskSizeGB": 64, + "vnetConfig": { + "subnetId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet_name/subnets/subnet_name" + } + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/myImageTemplate", + "name": "myImageTemplate", + "location": "westus", + "type": "Microsoft.VirtualMachineImages/imageTemplate", + "properties": { + "source": { + "type": "ManagedImage", + "imageId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Compute/images/source_image" + }, + "customize": [ + { + "type": "Shell", + "name": "Shell Customizer Example", + "scriptUri": "https://example.com/path/to/script.sh" + } + ], + "distribute": [ + { + "type": "ManagedImage", + "location": "1_location", + "runOutputName": "image_it_pir_1", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/image_it_1", + "artifactTags": { + "tagName": "value" + } + } + ], + "vmProfile": { + "vmSize": "Standard_D2s_v3", + "osDiskSizeGB": 64, + "vnetConfig": { + "subnetId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet_name/subnets/subnet_name" + } + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/myImageTemplate", + "name": "myImageTemplate", + "location": "westus", + "type": "Microsoft.VirtualMachineImages/imageTemplate", + "properties": { + "source": { + "type": "ManagedImage", + "imageId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Compute/images/source_image" + }, + "customize": [ + { + "type": "Shell", + "name": "Shell Customizer Example", + "scriptUri": "https://example.com/path/to/script.sh" + } + ], + "distribute": [ + { + "type": "ManagedImage", + "location": "1_location", + "runOutputName": "image_it_pir_1", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/image_it_1", + "artifactTags": { + "tagName": "value" + } + } + ], + "vmProfile": { + "vmSize": "Standard_D2s_v3", + "osDiskSizeGB": 64 + } + } + } + } + } +} diff --git a/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/CreateImageTemplateWithUserAssignedIdentity.json b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/CreateImageTemplateWithUserAssignedIdentity.json new file mode 100644 index 000000000000..1b9970d8d04a --- /dev/null +++ b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/CreateImageTemplateWithUserAssignedIdentity.json @@ -0,0 +1,141 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-02-14", + "imageTemplateName": "myImageTemplate", + "parameters": { + "location": "westus", + "tags": { + "imagetemplate_tag1": "IT_T1", + "imagetemplate_tag2": "IT_T2" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity_1": {} + } + }, + "properties": { + "source": { + "type": "ManagedImage", + "imageId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Compute/images/source_image" + }, + "customize": [ + { + "type": "Shell", + "name": "Shell Customizer Example", + "scriptUri": "https://example.com/path/to/script.sh" + } + ], + "distribute": [ + { + "type": "ManagedImage", + "location": "1_location", + "runOutputName": "image_it_pir_1", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/image_it_1", + "artifactTags": { + "tagName": "value" + } + } + ], + "vmProfile": { + "vmSize": "Standard_D2s_v3", + "osDiskSizeGB": 64 + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/myImageTemplate", + "name": "myImageTemplate", + "location": "westus", + "type": "Microsoft.VirtualMachineImages/imageTemplate", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity_1": { + "clientId": "00000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + } + } + }, + "properties": { + "source": { + "type": "ManagedImage", + "imageId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Compute/images/source_image" + }, + "customize": [ + { + "type": "Shell", + "name": "Shell Customizer Example", + "scriptUri": "https://example.com/path/to/script.sh" + } + ], + "distribute": [ + { + "type": "ManagedImage", + "location": "1_location", + "runOutputName": "image_it_pir_1", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/image_it_1", + "artifactTags": { + "tagName": "value" + } + } + ], + "vmProfile": { + "vmSize": "Standard_D2s_v3", + "osDiskSizeGB": 64 + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/myImageTemplate", + "name": "myImageTemplate", + "location": "westus", + "type": "Microsoft.VirtualMachineImages/imageTemplate", + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity_1": { + "clientId": "00000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + } + } + }, + "properties": { + "source": { + "type": "ManagedImage", + "imageId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.Compute/images/source_image" + }, + "customize": [ + { + "type": "Shell", + "name": "Shell Customizer Example", + "scriptUri": "https://example.com/path/to/script.sh" + } + ], + "distribute": [ + { + "type": "ManagedImage", + "location": "1_location", + "runOutputName": "image_it_pir_1", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/image_it_1", + "artifactTags": { + "tagName": "value" + } + } + ], + "vmProfile": { + "vmSize": "Standard_D2s_v3", + "osDiskSizeGB": 64 + } + } + } + } + } +} diff --git a/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/DeleteImageTemplate.json b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/DeleteImageTemplate.json new file mode 100644 index 000000000000..0ae9833a53b9 --- /dev/null +++ b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/DeleteImageTemplate.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "imageTemplateName": "myImageTemplate", + "api-version": "2020-02-14" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/{subscription-id}/providers/Microsoft.VirtualMachineImages/locations/{location}/operations/{operation-id}?api-version=2020-02-14" + } + }, + "200": {}, + "204": {} + } +} diff --git a/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/GetImageTemplate.json b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/GetImageTemplate.json new file mode 100644 index 000000000000..7880d2da1d8d --- /dev/null +++ b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/GetImageTemplate.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-02-14", + "imageTemplateName": "myImageTemplate" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/myImageTemplate", + "name": "myImageTemplate", + "location": "westus", + "type": "Microsoft.VirtualMachineImages/imageTemplate", + "properties": { + "source": { + "type": "ManagedImage", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/source_rg/providers/Microsoft.Compute/images/source_image" + }, + "customize": [ + { + "type": "Shell", + "name": "Shell Customizer Example", + "scriptUri": "https://example.com/path/to/script.sh" + } + ], + "distribute": [ + { + "type": "ManagedImage", + "location": "1_location", + "runOutputName": "image_it_pir_1", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/image_it_1", + "artifactTags": { + "tagName": "value" + } + } + ], + "vmProfile": { + "vmSize": "Standard_D2s_v3", + "osDiskSizeGB": 64 + } + } + } + } + } +} diff --git a/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/GetRunOutput.json b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/GetRunOutput.json new file mode 100644 index 000000000000..af93537a6335 --- /dev/null +++ b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/GetRunOutput.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "imageTemplateName": "myImageTemplate", + "runOutputName": "myManagedImageOutput", + "api-version": "2020-02-14" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourcegroups/myResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/myImageTemplate/runOutputs/myManagedImageOutput", + "name": "myManagedImageOutput", + "properties": { + "artifactId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/output_managed_image", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.VirtualMachineImages/imageTemplates/runOutputs" + } + } + } +} diff --git a/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/ListImageTemplates.json b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/ListImageTemplates.json new file mode 100644 index 000000000000..93f1ff55494a --- /dev/null +++ b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/ListImageTemplates.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "api-version": "2020-02-14" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/myImageTemplate", + "name": "myImageTemplate", + "location": "westus", + "type": "Microsoft.VirtualMachineImages/imageTemplate", + "properties": { + "source": { + "type": "ManagedImage", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/source_rg/providers/Microsoft.Compute/images/source_image" + }, + "customize": [ + { + "type": "Shell", + "name": "Shell customization example", + "scriptUri": "https://example.com/path/to/script.sh" + } + ], + "distribute": [ + { + "type": "ManagedImage", + "location": "1_location", + "runOutputName": "image_it_pir_1", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/image_it_1", + "artifactTags": { + "tagName": "value" + } + } + ], + "vmProfile": { + "vmSize": "Standard_D2s_v3", + "osDiskSizeGB": 64 + } + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myOtherResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/mySecondImageTemplate", + "name": "mySecondImageTemplate", + "location": "westus", + "type": "Microsoft.VirtualMachineImages/imageTemplate", + "properties": { + "source": { + "type": "PlatformImage", + "publisher": "Canonical", + "offer": "UbuntuServer", + "sku": "18.04-LTS", + "version": "18.04.201902121", + "planInfo": { + "planName": "example_plan_name", + "planProduct": "example_plan_product", + "planPublisher": "example_plan_publisher" + } + }, + "customize": [ + { + "type": "Shell", + "name": "Shell customization example", + "scriptUri": "https://example.com/path/to/script.sh" + } + ], + "distribute": [ + { + "type": "ManagedImage", + "location": "eastus", + "runOutputName": "eus", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/mySecondImage-eus", + "artifactTags": { + "stage": "development" + } + } + ], + "vmProfile": { + "vmSize": "Standard_D8s_v3", + "osDiskSizeGB": 32 + } + } + } + ], + "nextLink": "/subscriptions/{subscription-id}/providers/Microsoft.VirtualMachineImages/imageTemplates?api-version=2018-02-01-preview&skip-token=2" + } + } + } +} diff --git a/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/ListImageTemplatesByRg.json b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/ListImageTemplatesByRg.json new file mode 100644 index 000000000000..0fae34193c72 --- /dev/null +++ b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/ListImageTemplatesByRg.json @@ -0,0 +1,100 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-02-14" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/myImageTemplate", + "name": "myImageTemplate", + "location": "westus", + "type": "Microsoft.VirtualMachineImages/imageTemplate", + "properties": { + "source": { + "type": "ManagedImage", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/source_rg/providers/Microsoft.Compute/images/source_image" + }, + "customize": [ + { + "type": "Shell", + "name": "Shell customization example", + "scriptUri": "https://example.com/path/to/script.sh" + } + ], + "distribute": [ + { + "type": "ManagedImage", + "location": "1_location", + "runOutputName": "image_it_pir_1", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/image_it_1", + "artifactTags": { + "tagName": "value" + } + } + ], + "vmProfile": { + "vmSize": "Standard_D2s_v3", + "osDiskSizeGB": 64 + } + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/myOtherImageTemplate", + "name": "myOtherImageTemplate", + "location": "eastus", + "type": "Microsoft.VirtualMachineImages/imageTemplate", + "properties": { + "source": { + "type": "PlatformImage", + "publisher": "Canonical", + "offer": "UbuntuServer", + "sku": "18.04-LTS", + "version": "18.04.201902121", + "planInfo": { + "planName": "example_plan_name", + "planProduct": "example_plan_product", + "planPublisher": "example_plan_publisher" + } + }, + "customize": [ + { + "type": "Shell", + "name": "Shell customization example", + "scriptUri": "https://example.com/path/to/script.sh" + } + ], + "distribute": [ + { + "type": "ManagedImage", + "location": "centralus", + "runOutputName": "singleImage", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/baseimage-cus" + }, + { + "type": "SharedImage", + "galleryImageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/gallery/baseimages/images/baseimage", + "replicationRegions": [ + "eastus", + "westus" + ], + "runOutputName": "gallery", + "excludeFromLatest": true, + "storageAccountType": "Standard_LRS" + } + ], + "vmProfile": { + "vmSize": "Standard_D8s_v3", + "osDiskSizeGB": 64 + } + } + } + ], + "nextLink": "/subscriptions/{subscription-id}/resourceGroup/myResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates?api-version=2020-02-14&skip-token=2" + } + } + } +} diff --git a/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/ListRunOutputs.json b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/ListRunOutputs.json new file mode 100644 index 000000000000..9800dfd27088 --- /dev/null +++ b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/ListRunOutputs.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "imageTemplateName": "myImageTemplate", + "api-version": "2020-02-14" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourcegroups/myResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/myImageTemplate/runOutputs/myManagedImageOutput", + "name": "myManagedImageOutput", + "properties": { + "artifactId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/output_managed_image", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.VirtualMachineImages/imageTemplates/runOutputs" + }, + { + "id": "/subscriptions/{subscription-id}/resourcegroups/myResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/myImageTemplate/runOutputs/mySharedImageOutput", + "name": "mySharedImageOutput", + "properties": { + "artifactId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/galleries/Gallery1/images/SharedImageOutput/imageversions/1.2.3", + "provisioningState": "Succeeded" + }, + "type": "Microsoft.VirtualMachineImages/imageTemplates/runOutputs" + } + ], + "nextLink": "/subscriptions/{subscription-id}/resourcegroups/myResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/myImageTemplate/runOutputs?api-version=2018-02-01-preview&$skipToken=3" + } + } + } +} diff --git a/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/RunImageTemplate.json b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/RunImageTemplate.json new file mode 100644 index 000000000000..bf61cbeecee5 --- /dev/null +++ b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/RunImageTemplate.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "imageTemplateName": "myImageTemplate", + "api-version": "2020-02-14" + }, + "responses": { + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/{subscription-id}/providers/Microsoft.VirtualMachineImages/locations/{location}/operations/{operation-id}?api-version=2020-02-14" + } + }, + "204": {} + } +} diff --git a/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/UpdateImageTemplateTags.json b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/UpdateImageTemplateTags.json new file mode 100644 index 000000000000..0d99573bea25 --- /dev/null +++ b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/UpdateImageTemplateTags.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "imageTemplateName": "myImageTemplate", + "api-version": "2020-02-14", + "parameters": { + "tags": { + "new-tag": "new-value" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/myImageTemplate", + "name": "myImageTemplate", + "location": "westus", + "type": "Microsoft.VirtualMachineImages/imageTemplate", + "tags": { + "new-tag": "new-value" + }, + "properties": { + "source": { + "type": "ManagedImage", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/source_rg/providers/Microsoft.Compute/images/source_image" + }, + "customize": [ + { + "type": "Shell", + "name": "Shell customization example", + "scriptUri": "https://example.com/path/to/script.sh" + } + ], + "distribute": [ + { + "type": "ManagedImage", + "location": "1_location", + "runOutputName": "image_it_pir_1", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/image_it_1", + "artifactTags": { + "tagName": "value" + } + } + ], + "vmProfile": { + "vmSize": "Standard_D2s_v3", + "osDiskSizeGB": 64 + } + } + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/{subscription-id}/providers/Microsoft.VirtualMachineImages/locations/{location}/operations/{operation-id}?api-version=2020-02-14" + } + } + } +} diff --git a/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/UpdateImageTemplateToRemoveIdentities.json b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/UpdateImageTemplateToRemoveIdentities.json new file mode 100644 index 000000000000..af55358db823 --- /dev/null +++ b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/examples/UpdateImageTemplateToRemoveIdentities.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "myResourceGroup", + "imageTemplateName": "myImageTemplate", + "api-version": "2020-02-14", + "parameters": { + "identity": { + "type": "None" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.VirtualMachineImages/imageTemplates/myImageTemplate", + "name": "myImageTemplate", + "location": "westus", + "type": "Microsoft.VirtualMachineImages/imageTemplate", + "identity": { + "type": "None" + }, + "tags": { + "new-tag": "new-value" + }, + "properties": { + "source": { + "type": "ManagedImage", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/source_rg/providers/Microsoft.Compute/images/source_image" + }, + "customize": [ + { + "type": "Shell", + "name": "Shell customization example", + "scriptUri": "https://example.com/path/to/script.sh" + } + ], + "distribute": [ + { + "type": "ManagedImage", + "location": "1_location", + "runOutputName": "image_it_pir_1", + "imageId": "/subscriptions/{subscription-id}/resourceGroups/rg1/providers/Microsoft.Compute/images/image_it_1", + "artifactTags": { + "tagName": "value" + } + } + ], + "vmProfile": { + "vmSize": "Standard_D2s_v3", + "osDiskSizeGB": 64 + } + } + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/{subscription-id}/providers/Microsoft.VirtualMachineImages/locations/{location}/operations/{operation-id}?api-version=2020-02-14" + } + } + } +} diff --git a/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/imagebuilder.json b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/imagebuilder.json new file mode 100644 index 000000000000..16c3411621c9 --- /dev/null +++ b/specification/imagebuilder/resource-manager/Microsoft.VirtualMachineImages/stable/2020-02-14/imagebuilder.json @@ -0,0 +1,1445 @@ +{ + "swagger": "2.0", + "info": { + "title": "VirtualMachineImageTemplate", + "description": "Virtual Machine Image Template", + "version": "2020-02-14" + }, + "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.VirtualMachineImages/imageTemplates": { + "get": { + "tags": [ + "VirtualMachineImageTemplate" + ], + "operationId": "VirtualMachineImageTemplates_List", + "description": "Gets information about the VM image templates associated with the subscription.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ImageTemplateListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List images by subscription.": { + "$ref": "./examples/ListImageTemplates.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VirtualMachineImages/imageTemplates": { + "get": { + "tags": [ + "VirtualMachineImageTemplate" + ], + "operationId": "VirtualMachineImageTemplates_ListByResourceGroup", + "description": "Gets information about the VM image templates associated with the specified resource group.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ImageTemplateListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List images by resource group": { + "$ref": "./examples/ListImageTemplatesByRg.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VirtualMachineImages/imageTemplates/{imageTemplateName}": { + "put": { + "tags": [ + "VirtualMachineImageTemplate" + ], + "operationId": "VirtualMachineImageTemplates_CreateOrUpdate", + "description": "Create or update a virtual machine image template", + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ImageTemplate" + }, + "description": "Parameters supplied to the CreateImageTemplate operation" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ImageTemplateNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ImageTemplate" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/ImageTemplate" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create an Image Template for Linux.": { + "$ref": "./examples/CreateImageTemplateLinux.json" + }, + "Create an Image Template for Windows.": { + "$ref": "./examples/CreateImageTemplateWindows.json" + }, + "Create an Image Template with a user assigned identity configured": { + "$ref": "./examples/CreateImageTemplateWithUserAssignedIdentity.json" + } + } + }, + "patch": { + "tags": [ + "VirtualMachineImageTemplate" + ], + "operationId": "VirtualMachineImageTemplates_Update", + "description": "Update the tags for this Virtual Machine Image Template", + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ImageTemplateUpdateParameters" + }, + "description": "Additional parameters for Image Template update." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ImageTemplateNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ImageTemplate" + } + }, + "202": { + "description": "The operation will be completed asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Update the tags for an Image Template.": { + "$ref": "./examples/UpdateImageTemplateTags.json" + }, + "Remove identities for an Image Template.": { + "$ref": "./examples/UpdateImageTemplateToRemoveIdentities.json" + } + } + }, + "get": { + "tags": [ + "VirtualMachineImageTemplate" + ], + "operationId": "VirtualMachineImageTemplates_Get", + "description": "Get information about a virtual machine image template", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ImageTemplateNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ImageTemplate" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "Retrieve an Image Template.": { + "$ref": "./examples/GetImageTemplate.json" + } + } + }, + "delete": { + "tags": [ + "VirtualMachineImageTemplate" + ], + "operationId": "VirtualMachineImageTemplates_Delete", + "description": "Delete a virtual machine image template", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ImageTemplateNameParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful." + }, + "202": { + "description": "The operation will be completed asynchronously." + }, + "204": { + "description": "NoContent -- VM image template does not exist in the subscription." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Delete an Image Template.": { + "$ref": "./examples/DeleteImageTemplate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VirtualMachineImages/imageTemplates/{imageTemplateName}/run": { + "post": { + "tags": [ + "VirtualMachineImageTemplate" + ], + "operationId": "VirtualMachineImageTemplates_Run", + "description": "Create artifacts from a existing image template", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ImageTemplateNameParameter" + } + ], + "responses": { + "204": { + "description": "The operation was successful." + }, + "202": { + "description": "The operation will be completed asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create image(s) from existing imageTemplate.": { + "$ref": "./examples/RunImageTemplate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VirtualMachineImages/imageTemplates/{imageTemplateName}/cancel": { + "post": { + "tags": [ + "VirtualMachineImageTemplate" + ], + "operationId": "VirtualMachineImageTemplates_Cancel", + "description": "Cancel the long running image build based on the image template", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ImageTemplateNameParameter" + } + ], + "responses": { + "204": { + "description": "The long running image build has been canceled." + }, + "202": { + "description": "The request is accepted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Cancel the image build based on the imageTemplate.": { + "$ref": "./examples/CancelImageBuild.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VirtualMachineImages/imageTemplates/{imageTemplateName}/runOutputs": { + "get": { + "tags": [ + "VirtualMachineImageTemplate" + ], + "operationId": "VirtualMachineImageTemplates_ListRunOutputs", + "description": "List all run outputs for the specified Image Template resource", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ImageTemplateNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RunOutputCollection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Retrieve a list of all outputs created by the last run of an Image Template": { + "$ref": "./examples/ListRunOutputs.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VirtualMachineImages/imageTemplates/{imageTemplateName}/runOutputs/{runOutputName}": { + "get": { + "tags": [ + "VirtualMachineImageTemplate" + ], + "operationId": "VirtualMachineImageTemplates_GetRunOutput", + "description": "Get the specified run output for the specified image template resource", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ImageTemplateNameParameter" + }, + { + "$ref": "#/parameters/RunOutputNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RunOutput" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "Retrieve single runOutput": { + "$ref": "./examples/GetRunOutput.json" + } + } + } + }, + "/providers/Microsoft.VirtualMachineImages/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "description": "Lists available operations for the Microsoft.VirtualMachineImages provider", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the list of available operations.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ImageTemplateListResult": { + "description": "The result of List image templates operation", + "properties": { + "value": { + "description": "An array of image templates", + "type": "array", + "items": { + "$ref": "#/definitions/ImageTemplate" + } + }, + "nextLink": { + "type": "string", + "description": "The continuation token." + } + } + }, + "ImageTemplateSource": { + "description": "Describes a virtual machine image source for building, customizing and distributing", + "discriminator": "type", + "properties": { + "type": { + "type": "string", + "description": "Specifies the type of source image you want to start with." + } + }, + "required": [ + "type" + ] + }, + "ImageTemplatePlatformImageSource": { + "description": "Describes an image source from [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages).", + "x-ms-discriminator-value": "PlatformImage", + "allOf": [ + { + "$ref": "#/definitions/ImageTemplateSource" + } + ], + "properties": { + "publisher": { + "type": "string", + "description": "Image Publisher in [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages)." + }, + "offer": { + "type": "string", + "description": "Image offer from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages)." + }, + "sku": { + "type": "string", + "description": "Image sku from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages)." + }, + "version": { + "type": "string", + "description": "Image version from the [Azure Gallery Images](https://docs.microsoft.com/en-us/rest/api/compute/virtualmachineimages)." + }, + "planInfo": { + "$ref": "#/definitions/PlatformImagePurchasePlan", + "description": "Optional configuration of purchase plan for platform image." + } + } + }, + "ImageTemplateManagedImageSource": { + "description": "Describes an image source that is a managed image in customer subscription.", + "x-ms-discriminator-value": "ManagedImage", + "allOf": [ + { + "$ref": "#/definitions/ImageTemplateSource" + } + ], + "properties": { + "imageId": { + "type": "string", + "description": "ARM resource id of the managed image in customer subscription" + } + }, + "required": [ + "imageId" + ] + }, + "ImageTemplateSharedImageVersionSource": { + "description": "Describes an image source that is an image version in a shared image gallery.", + "x-ms-discriminator-value": "SharedImageVersion", + "allOf": [ + { + "$ref": "#/definitions/ImageTemplateSource" + } + ], + "properties": { + "imageVersionId": { + "type": "string", + "description": "ARM resource id of the image version in the shared image gallery" + } + }, + "required": [ + "imageVersionId" + ] + }, + "ImageTemplateCustomizer": { + "description": "Describes a unit of image customization", + "discriminator": "type", + "properties": { + "type": { + "type": "string", + "description": "The type of customization tool you want to use on the Image. For example, \"Shell\" can be shell customizer" + }, + "name": { + "type": "string", + "description": "Friendly Name to provide context on what this customization step does" + } + }, + "required": [ + "type" + ] + }, + "ImageTemplateShellCustomizer": { + "description": "Runs a shell script during the customization phase (Linux). Corresponds to Packer shell provisioner. Exactly one of 'scriptUri' or 'inline' can be specified.", + "x-ms-discriminator-value": "Shell", + "allOf": [ + { + "$ref": "#/definitions/ImageTemplateCustomizer" + } + ], + "properties": { + "scriptUri": { + "type": "string", + "description": "URI of the shell script to be run for customizing. It can be a github link, SAS URI for Azure Storage, etc" + }, + "sha256Checksum": { + "type": "string", + "description": "SHA256 checksum of the shell script provided in the scriptUri field" + }, + "inline": { + "type": "array", + "description": "Array of shell commands to execute", + "items": { + "type": "string" + } + } + } + }, + "ImageTemplateRestartCustomizer": { + "description": "Reboots a VM and waits for it to come back online (Windows). Corresponds to Packer windows-restart provisioner", + "x-ms-discriminator-value": "WindowsRestart", + "allOf": [ + { + "$ref": "#/definitions/ImageTemplateCustomizer" + } + ], + "properties": { + "restartCommand": { + "type": "string", + "description": "Command to execute the restart [Default: 'shutdown /r /f /t 0 /c \"packer restart\"']" + }, + "restartCheckCommand": { + "type": "string", + "description": "Command to check if restart succeeded [Default: '']" + }, + "restartTimeout": { + "type": "string", + "description": "Restart timeout specified as a string of magnitude and unit, e.g. '5m' (5 minutes) or '2h' (2 hours) [Default: '5m']" + } + } + }, + "ImageTemplateWindowsUpdateCustomizer": { + "description": "Installs Windows Updates. Corresponds to Packer Windows Update Provisioner (https://github.com/rgl/packer-provisioner-windows-update)", + "x-ms-discriminator-value": "WindowsUpdate", + "allOf": [ + { + "$ref": "#/definitions/ImageTemplateCustomizer" + } + ], + "properties": { + "searchCriteria": { + "type": "string", + "description": "Criteria to search updates. Omit or specify empty string to use the default (search all). Refer to above link for examples and detailed description of this field." + }, + "filters": { + "type": "array", + "description": "Array of filters to select updates to apply. Omit or specify empty array to use the default (no filter). Refer to above link for examples and detailed description of this field.", + "items": { + "type": "string" + } + }, + "updateLimit": { + "type": "integer", + "minimum": 0, + "description": "Maximum number of updates to apply at a time. Omit or specify 0 to use the default (1000)" + } + } + }, + "ImageTemplatePowerShellCustomizer": { + "description": "Runs the specified PowerShell on the VM (Windows). Corresponds to Packer powershell provisioner. Exactly one of 'scriptUri' or 'inline' can be specified.", + "x-ms-discriminator-value": "PowerShell", + "allOf": [ + { + "$ref": "#/definitions/ImageTemplateCustomizer" + } + ], + "properties": { + "scriptUri": { + "type": "string", + "description": "URI of the PowerShell script to be run for customizing. It can be a github link, SAS URI for Azure Storage, etc" + }, + "sha256Checksum": { + "type": "string", + "description": "SHA256 checksum of the power shell script provided in the scriptUri field above" + }, + "inline": { + "type": "array", + "description": "Array of PowerShell commands to execute", + "items": { + "type": "string" + } + }, + "runElevated": { + "type": "boolean", + "description": "If specified, the PowerShell script will be run with elevated privileges" + }, + "validExitCodes": { + "type": "array", + "description": "Valid exit codes for the PowerShell script. [Default: 0]", + "items": { + "type": "integer" + } + } + } + }, + "ImageTemplateFileCustomizer": { + "description": "Uploads files to VMs (Linux, Windows). Corresponds to Packer file provisioner", + "x-ms-discriminator-value": "File", + "allOf": [ + { + "$ref": "#/definitions/ImageTemplateCustomizer" + } + ], + "properties": { + "sourceUri": { + "type": "string", + "description": "The URI of the file to be uploaded for customizing the VM. It can be a github link, SAS URI for Azure Storage, etc" + }, + "sha256Checksum": { + "type": "string", + "description": "SHA256 checksum of the file provided in the sourceUri field above" + }, + "destination": { + "type": "string", + "description": "The absolute path to a file (with nested directory structures already created) where the file (from sourceUri) will be uploaded to in the VM" + } + } + }, + "ImageTemplateDistributor": { + "type": "object", + "description": "Generic distribution object", + "discriminator": "type", + "properties": { + "type": { + "type": "string", + "description": "Type of distribution." + }, + "runOutputName": { + "type": "string", + "description": "The name to be used for the associated RunOutput.", + "pattern": "^[A-Za-z0-9-_.]{1,64}$" + }, + "artifactTags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Tags that will be applied to the artifact once it has been created/updated by the distributor." + } + }, + "required": [ + "type", + "runOutputName" + ] + }, + "ImageTemplateManagedImageDistributor": { + "x-ms-discriminator-value": "ManagedImage", + "description": "Distribute as a Managed Disk Image.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ImageTemplateDistributor" + } + ], + "properties": { + "imageId": { + "type": "string", + "description": "Resource Id of the Managed Disk Image" + }, + "location": { + "type": "string", + "description": "Azure location for the image, should match if image already exists" + } + }, + "required": [ + "imageId", + "location" + ] + }, + "ImageTemplateSharedImageDistributor": { + "x-ms-discriminator-value": "SharedImage", + "description": "Distribute via Shared Image Gallery.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ImageTemplateDistributor" + } + ], + "properties": { + "galleryImageId": { + "type": "string", + "description": "Resource Id of the Shared Image Gallery image" + }, + "replicationRegions": { + "description": "A list of regions that the image will be replicated to", + "type": "array", + "items": { + "type": "string" + } + }, + "excludeFromLatest": { + "type": "boolean", + "description": "Flag that indicates whether created image version should be excluded from latest. Omit to use the default (false)." + }, + "storageAccountType": { + "type": "string", + "enum": [ + "Standard_LRS", + "Standard_ZRS" + ], + "x-ms-enum": { + "name": "SharedImageStorageAccountType", + "modelAsString": false + }, + "description": "Storage account type to be used to store the shared image. Omit to use the default (Standard_LRS)." + } + }, + "required": [ + "galleryImageId", + "replicationRegions" + ] + }, + "ImageTemplateVhdDistributor": { + "x-ms-discriminator-value": "VHD", + "description": "Distribute via VHD in a storage account.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ImageTemplateDistributor" + } + ] + }, + "PlatformImagePurchasePlan": { + "description": "Purchase plan configuration for platform image.", + "properties": { + "planName": { + "type": "string", + "description": "Name of the purchase plan." + }, + "planProduct": { + "type": "string", + "description": "Product of the purchase plan." + }, + "planPublisher": { + "type": "string", + "description": "Publisher of the purchase plan." + } + }, + "required": [ + "planName", + "planProduct", + "planPublisher" + ] + }, + "VirtualNetworkConfig": { + "description": "Virtual Network configuration.", + "properties": { + "subnetId": { + "type": "string", + "description": "Resource id of a pre-existing subnet." + } + } + }, + "ImageTemplateVmProfile": { + "description": "Describes the virtual machine used to build, customize and capture images", + "properties": { + "vmSize": { + "type": "string", + "description": "Size of the virtual machine used to build, customize and capture images. Omit or specify empty string to use the default (Standard_D1_v2)." + }, + "osDiskSizeGB": { + "type": "integer", + "minimum": 0, + "description": "Size of the OS disk in GB. Omit or specify 0 to use Azure's default OS disk size." + }, + "vnetConfig": { + "$ref": "#/definitions/VirtualNetworkConfig", + "description": "Optional configuration of the virtual network to use to deploy the build virtual machine in. Omit if no specific virtual network needs to be used." + } + } + }, + "ProvisioningState": { + "type": "string", + "enum": [ + "Creating", + "Updating", + "Succeeded", + "Failed", + "Deleting" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": false + }, + "description": "Provisioning state of the resource" + }, + "ProvisioningError": { + "description": "Describes the error happened when create or update an image template", + "properties": { + "provisioningErrorCode": { + "type": "string", + "enum": [ + "BadSourceType", + "BadPIRSource", + "BadManagedImageSource", + "BadSharedImageVersionSource", + "BadCustomizerType", + "UnsupportedCustomizerType", + "NoCustomizerScript", + "BadDistributeType", + "BadSharedImageDistribute", + "ServerError", + "Other" + ], + "x-ms-enum": { + "name": "ProvisioningErrorCode", + "modelAsString": true + }, + "description": "Error code of the provisioning failure" + }, + "message": { + "type": "string", + "description": "Verbose error message about the provisioning failure" + } + } + }, + "ImageTemplateLastRunStatus": { + "description": "Describes the latest status of running an image template", + "properties": { + "startTime": { + "type": "string", + "format": "date-time", + "description": "Start time of the last run (UTC)" + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "End time of the last run (UTC)" + }, + "runState": { + "type": "string", + "enum": [ + "Running", + "Canceling", + "Succeeded", + "PartiallySucceeded", + "Failed", + "Canceled" + ], + "x-ms-enum": { + "name": "RunState", + "modelAsString": false + }, + "description": "State of the last run" + }, + "runSubState": { + "type": "string", + "enum": [ + "Queued", + "Building", + "Customizing", + "Distributing" + ], + "x-ms-enum": { + "name": "RunSubState", + "modelAsString": false + }, + "description": "Sub-state of the last run" + }, + "message": { + "type": "string", + "description": "Verbose information about the last run state" + } + } + }, + "ImageTemplateProperties": { + "description": "Describes the properties of an image template", + "properties": { + "source": { + "$ref": "#/definitions/ImageTemplateSource", + "description": "Specifies the properties used to describe the source image." + }, + "customize": { + "type": "array", + "items": { + "$ref": "#/definitions/ImageTemplateCustomizer" + }, + "description": "Specifies the properties used to describe the customization steps of the image, like Image source etc" + }, + "distribute": { + "type": "array", + "items": { + "$ref": "#/definitions/ImageTemplateDistributor" + }, + "description": "The distribution targets where the image output needs to go to." + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "Provisioning state of the resource", + "readOnly": true + }, + "provisioningError": { + "$ref": "#/definitions/ProvisioningError", + "description": "Provisioning error, if any", + "readOnly": true + }, + "lastRunStatus": { + "$ref": "#/definitions/ImageTemplateLastRunStatus", + "description": "State of 'run' that is currently executing or was last executed.", + "readOnly": true + }, + "buildTimeoutInMinutes": { + "type": "integer", + "minimum": 0, + "maximum": 960, + "description": "Maximum duration to wait while building the image template. Omit or specify 0 to use the default (4 hours)." + }, + "vmProfile": { + "$ref": "#/definitions/ImageTemplateVmProfile", + "description": "Describes how virtual machine is set up to build images" + } + }, + "required": [ + "source", + "distribute" + ] + }, + "ImageTemplateIdentity": { + "properties": { + "type": { + "type": "string", + "description": "The type of identity used for the image template. The type 'None' will remove any identities from the image template.", + "enum": [ + "UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "description": "The list of user identities associated with the image template. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "description": "Identity for the image template." + }, + "RunOutputProperties": { + "description": "Describes the properties of a run output", + "properties": { + "artifactId": { + "type": "string", + "description": "The resource id of the artifact." + }, + "artifactUri": { + "type": "string", + "description": "The location URI of the artifact." + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "Provisioning state of the resource", + "readOnly": true + } + } + }, + "ImageTemplate": { + "description": "Image template is an ARM resource managed by Microsoft.VirtualMachineImages provider", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ImageTemplateProperties", + "description": "The properties of the image template" + }, + "identity": { + "$ref": "#/definitions/ImageTemplateIdentity", + "description": "The identity of the image template, if configured." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ] + }, + "ImageTemplateUpdateParameters": { + "properties": { + "identity": { + "$ref": "#/definitions/ImageTemplateIdentity", + "description": "The identity of the image template, if configured." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The user-specified tags associated with the image template." + } + }, + "description": "Parameters for updating an image template." + }, + "RunOutput": { + "description": "Represents an output that was created by running an image template.", + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/RunOutputProperties", + "x-ms-client-flatten": true, + "description": "The properties of the run output" + } + } + }, + "RunOutputCollection": { + "description": "The result of List run outputs operation", + "properties": { + "value": { + "description": "An array of run outputs", + "type": "array", + "items": { + "$ref": "#/definitions/RunOutput" + } + }, + "nextLink": { + "type": "string", + "description": "The continuation token." + } + } + }, + "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" + }, + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "required": [ + "location" + ], + "x-ms-azure-resource": true + }, + "SubResource": { + "description": "The Sub Resource model definition.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id" + }, + "name": { + "type": "string", + "description": "Resource name" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type" + } + }, + "required": [ + "name" + ] + }, + "Operation": { + "title": "A REST API operation", + "type": "object", + "properties": { + "name": { + "title": "The operation name.", + "description": "This is of the format {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "title": "The object that describes the operation.", + "properties": { + "provider": { + "title": "Friendly name of the resource provider.", + "type": "string" + }, + "operation": { + "title": "The operation type.", + "description": "For example: read, write, delete, or listKeys/action", + "type": "string" + }, + "resource": { + "title": "The resource type on which the operation is performed.", + "type": "string" + }, + "description": { + "title": "The friendly name of the operation", + "type": "string" + } + } + }, + "origin": { + "title": "The intended executor of the operation.", + "type": "string" + }, + "properties": { + "title": "Properties of the operation.", + "type": "object" + }, + "isDataAction": { + "title": "The flag that indicates whether the operation applies to data plane.", + "type": "boolean" + } + } + }, + "OperationListResult": { + "title": "Result of the request to list REST API operations. It contains a list of operations and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "title": "The list of operations supported by the resource provider." + }, + "nextLink": { + "type": "string", + "title": "The URL to get the next set of operation list results if there are any." + } + } + }, + "ApiErrorBase": { + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "target": { + "type": "string", + "description": "The target of the particular error." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "Api error base." + }, + "InnerError": { + "properties": { + "exceptionType": { + "type": "string", + "description": "The exception type." + }, + "errorDetail": { + "type": "string", + "description": "The internal error message or exception dump." + } + }, + "description": "Inner error details." + }, + "ApiError": { + "properties": { + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ApiErrorBase" + }, + "description": "The Api error details" + }, + "innerError": { + "$ref": "#/definitions/InnerError", + "description": "The Api inner error" + }, + "code": { + "type": "string", + "description": "The error code." + }, + "target": { + "type": "string", + "description": "The target of the particular error." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "Api error." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription Id forms part of the URI for every service call." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "ImageTemplateNameParameter": { + "name": "imageTemplateName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the image Template", + "pattern": "^[A-Za-z0-9-_.]{1,64}$", + "x-ms-parameter-location": "method" + }, + "RunOutputNameParameter": { + "name": "runOutputName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the run output", + "pattern": "^[A-Za-z0-9-_.]{1,64}$", + "x-ms-parameter-location": "method" + }, + "LocationParameter": { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "Location of the service.", + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + } + } +} diff --git a/specification/imagebuilder/resource-manager/readme.md b/specification/imagebuilder/resource-manager/readme.md index 6bf671ebfe8e..9d1af6e035c1 100644 --- a/specification/imagebuilder/resource-manager/readme.md +++ b/specification/imagebuilder/resource-manager/readme.md @@ -28,19 +28,28 @@ These are the global settings for the Virtual Machine Image Builder API. title: ImageBuilderClient description: Azure Virtual Machine Image Builder Client openapi-type: arm -tag: package-preview-2019-05 +tag: package-2020-02 azure-arm: true ``` +### Tag: package-2020-02 + +These settings apply only when `--tag=package-2020-02` is specified on the command line. + +```yaml $(tag) == 'package-2020-02' +input-file: + - Microsoft.VirtualMachineImages/stable/2020-02-14/imagebuilder.json +``` ### Tag: package-preview-2019-05 These settings apply only when `--tag=package-preview-2019-05` is specified on the command line. -```yaml $(tag) == 'package-preview-2019-05' +``` yaml $(tag) == 'package-preview-2019-05' input-file: - Microsoft.VirtualMachineImages/preview/2019-05-01-preview/imagebuilder.json ``` + ### Tag: package-2018-02 These settings apply only when `--tag=package-2018-02` is specified on the command line. @@ -156,7 +165,7 @@ regenerate-manager: true generate-interface: true ``` -## Multi-API/Profile support for AutoRest v3 generators +## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. @@ -168,17 +177,17 @@ 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, +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/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicecredentials_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicecredentials_get.json index e1112eba7214..fca7fc82f2c1 100644 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicecredentials_get.json +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicecredentials_get.json @@ -9,7 +9,7 @@ "responses": { "200": { "body": { - "scopeId": "0ne0005F266", + "idScope": "", "symmetricKey": { "primaryKey": "XaMfV3vryCQw963L2IALf1SdApQRzSIBQd13/fassqM=", "secondaryKey": "s+4uT31TRZJcTSGxZUPZb1yznjTicu4jr9tXNrg+xIQ=" diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_delete.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_delete.json new file mode 100644 index 000000000000..849e3a8acda5 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_delete.json @@ -0,0 +1,12 @@ +{ + "title": "Delete device attestation", + "description": "Deletes the attestation for a device.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "subdomain": "appsubdomain", + "device_id": "Checkout4" + }, + "responses": { + "204": {} + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_get.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_get.json new file mode 100644 index 000000000000..87efc9c7b2d3 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_get.json @@ -0,0 +1,25 @@ +{ + "title": "Get device attestation", + "description": "Gets the attestation for a device.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "subdomain": "appsubdomain", + "device_id": "CheckoutThermostat" + }, + "responses": { + "200": { + "body": { + "type": "X509Attestation", + "x509": { + "clientCertificates": { + "primary": { + "info": { + "sha1Thumbprint": "" + } + } + } + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_set_symmetricKey.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_set_symmetricKey.json new file mode 100644 index 000000000000..42fdabd7c518 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_set_symmetricKey.json @@ -0,0 +1,27 @@ +{ + "title": "Set device attestation - Symmetric key", + "description": "Creates or updates the symmetric key attestation for a device.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "subdomain": "appsubdomain", + "device_id": "CheckoutThermostat", + "body": { + "type": "SymmetricKeyAttestation", + "symmetricKey": { + "primaryKey": "XaMfV3vryCQw963L2IALf1SdApQRzSIBQd13/fassqM=", + "secondaryKey": "s+4uT31TRZJcTSGxZUPZb1yznjTicu4jr9tXNrg+xIQ=" + } + } + }, + "responses": { + "200": { + "body": { + "type": "SymmetricKeyAttestation", + "symmetricKey": { + "primaryKey": "XaMfV3vryCQw963L2IALf1SdApQRzSIBQd13/fassqM=", + "secondaryKey": "s+4uT31TRZJcTSGxZUPZb1yznjTicu4jr9tXNrg+xIQ=" + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_set_tpm.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_set_tpm.json new file mode 100644 index 000000000000..35fb1496150d --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_set_tpm.json @@ -0,0 +1,25 @@ +{ + "title": "Set device attestation - TPM", + "description": "Creates or updates the TPM attestation for a device.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "subdomain": "appsubdomain", + "device_id": "CheckoutThermostat", + "body": { + "type": "TpmAttestation", + "tpm": { + "endorsementKey": "AToAAQALAAMAsgAgg3GXZ0SEs/gakMyNRqXXJP1S124GUgtk8qHaGzMUaaoABgCAAEMAEAgAAAAAAAEAxsj2gUScTk1UjuioeTlfGYZrrimExB+bScH75adUMRIi2UOMxG1kw4y+9RW/IVoMl4e620VxZad0ARX2gUqVjYO7KPVt3dyKhZS3dkcvfBisBhP1XH9B33VqHG9SHnbnQXdBUaCgKAfxome8UmBKfe+naTsE5fkvjb/do3/dD6l4sGBwFCnKRdln4XpM03zLpoHFao8zOwt8l/uP3qUIxmCYv9A7m69Ms+5/pCkTu/rK4mRDsfhZ0QLfbzVI6zQFOKF/rwsfBtFeWlWtcuJMKlXdD8TXWElTzgh7JS4qhFzreL0c1mI0GCj+Aws0usZh7dLIVPnlgZcBhgy1SSDQMQ==" + } + } + }, + "responses": { + "200": { + "body": { + "type": "TpmAttestation", + "tpm": { + "endorsementKey": "AToAAQALAAMAsgAgg3GXZ0SEs/gakMyNRqXXJP1S124GUgtk8qHaGzMUaaoABgCAAEMAEAgAAAAAAAEAxsj2gUScTk1UjuioeTlfGYZrrimExB+bScH75adUMRIi2UOMxG1kw4y+9RW/IVoMl4e620VxZad0ARX2gUqVjYO7KPVt3dyKhZS3dkcvfBisBhP1XH9B33VqHG9SHnbnQXdBUaCgKAfxome8UmBKfe+naTsE5fkvjb/do3/dD6l4sGBwFCnKRdln4XpM03zLpoHFao8zOwt8l/uP3qUIxmCYv9A7m69Ms+5/pCkTu/rK4mRDsfhZ0QLfbzVI6zQFOKF/rwsfBtFeWlWtcuJMKlXdD8TXWElTzgh7JS4qhFzreL0c1mI0GCj+Aws0usZh7dLIVPnlgZcBhgy1SSDQMQ==" + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_set_x509.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_set_x509.json new file mode 100644 index 000000000000..c468cbb516a1 --- /dev/null +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devices_attestations_set_x509.json @@ -0,0 +1,35 @@ +{ + "title": "Set device attestation - X509", + "description": "Creates or updates the X509 attestation for a device.", + "parameters": { + "centralDnsSuffixInPath": "azureiotcentral.com", + "subdomain": "appsubdomain", + "device_id": "CheckoutThermostat", + "body": { + "type": "X509Attestation", + "x509": { + "clientCertificates": { + "primary": { + "certificate": "" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "type": "X509Attestation", + "x509": { + "clientCertificates": { + "primary": { + "info": { + "sha1Thumbprint": "" + } + } + } + } + } + } + } +} diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicetemplates_create.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicetemplates_create.json index a5ca1e93dfa9..5013639058c3 100644 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicetemplates_create.json +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/examples/devicetemplates_create.json @@ -70,56 +70,6 @@ "@context": [ "http://azureiot.com/v1/contexts/IoTModel.json" ] - }, - "solutionModel": { - "@id": "urn:1dsfbt7i:modelDefinition:zadjfmgvh", - "@type": [ - "SolutionModel" - ], - "cloudProperties": [ - { - "@id": "urn:1dsfbt7i:modelDefinition:AssetId", - "@type": [ - "CloudProperty" - ], - "displayName": "Asset Id", - "name": "AssetId", - "schema": "string", - "valueDetail": { - "@id": "urn:1dsfbt7i:modelDefinition:AssetId:valueDetail", - "@type": [ - "ValueDetail/StringValueDetail" - ] - } - } - ], - "initialValues": [], - "overrides": [ - { - "@id": "urn:1dsfbt7i:modelDefinition:1qehkys5", - "@type": [ - "Override" - ], - "capability": { - "@type": [ - "CapabilityReference" - ], - "component": "urn:storeAnalyticsCheckoutPnp:capabilityModel:fyy5xn_y:1", - "reference": "urn:storeAnalyticsCheckoutPnp:Interface:Occupancy:1" - }, - "valueDetail": { - "@type": [ - "ValueDetail/NumberValueDetail" - ], - "maxValue": { - "@value": "50" - }, - "minValue": { - "@value": "0" - } - } - } - ] } } }, @@ -191,58 +141,6 @@ "@context": [ "http://azureiot.com/v1/contexts/IoTModel.json" ] - }, - "solutionModel": { - "@id": "urn:1dsfbt7i:modelDefinition:zadjfmgvh", - "@type": [ - "SolutionModel" - ], - "cloudProperties": [ - { - "@id": "urn:1dsfbt7i:modelDefinition:AssetId", - "@type": [ - "CloudProperty" - ], - "displayName": "Asset Id", - "name": "AssetId", - "schema": "string", - "valueDetail": { - "@id": "urn:1dsfbt7i:modelDefinition:AssetId:valueDetail", - "@type": [ - "ValueDetail/StringValueDetail" - ] - } - } - ], - "initialValues": [], - "overrides": [ - { - "@id": "urn:1dsfbt7i:modelDefinition:1qehkys5", - "@type": [ - "Override" - ], - "capability": { - "@id": "urn:1dsfbt7i:modelDefinition:1qehkys5:6wq2v5i7j", - "@type": [ - "CapabilityReference" - ], - "component": "urn:storeAnalyticsCheckoutPnp:capabilityModel:fyy5xn_y:1", - "reference": "urn:storeAnalyticsCheckoutPnp:Interface:Occupancy:1" - }, - "valueDetail": { - "@id": "urn:1dsfbt7i:modelDefinition:1qehkys5:_covclwk_", - "@type": [ - "ValueDetail/NumberValueDetail" - ], - "maxValue": { - "@value": "50" - }, - "minValue": { - "@value": "0" - } - } - } - ] } } } diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/iotcentral.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/iotcentral.json index f7f799c7cd66..80190d5f74d3 100644 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/iotcentral.json +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/iotcentral.json @@ -17,25 +17,25 @@ ], "definitions": { "ApiToken": { - "type": "object", "allOf": [ { "$ref": "#/definitions/Permission" }, { + "type": "object", "properties": { "id": { - "description": "Unique ID of the api token.", + "description": "Unique ID of the API token.", "type": "string", "readOnly": true }, "token": { - "description": "Value of the api token.", + "description": "Value of the API token.", "type": "string", "readOnly": true }, "expiry": { - "description": "String-formatted date representing the time when the token expires", + "description": "String-formatted date representing the time when the token expires.", "type": "string", "format": "date-time" } @@ -47,41 +47,201 @@ "type": "object", "properties": { "value": { - "description": "The collection of api tokens.", + "description": "The collection of API tokens.", "type": "array", "items": { "$ref": "#/definitions/ApiToken" } + }, + "nextLink": { + "description": "URL to get the next page of API tokens.", + "type": "string" } }, "required": [ "value" ] }, - "Capability": { + "Attestation": { "type": "object", + "properties": { + "type": { + "description": "Type of the attestation.", + "type": "string" + } + }, + "required": [ + "type" + ], + "discriminator": "type" + }, + "SymmetricKeyAttestation": { + "x-ms-discriminator-value": "SymmetricKeyAttestation", + "allOf": [ + { + "$ref": "#/definitions/Attestation" + }, + { + "type": "object", + "properties": { + "symmetricKey": { + "description": "The symmetric key credentials for this attestation.", + "$ref": "#/definitions/SymmetricKey" + } + }, + "required": [ + "symmetricKey" + ] + } + ] + }, + "X509Attestation": { + "x-ms-discriminator-value": "X509Attestation", + "allOf": [ + { + "$ref": "#/definitions/Attestation" + }, + { + "type": "object", + "properties": { + "x509": { + "description": "The X.509 credentials for this attestation.", + "$ref": "#/definitions/X509" + } + }, + "required": [ + "x509" + ] + } + ] + }, + "TpmAttestation": { + "x-ms-discriminator-value": "TpmAttestation", + "allOf": [ + { + "$ref": "#/definitions/Attestation" + }, + { + "type": "object", + "properties": { + "tpm": { + "description": "The TPM credentials for this attestation.", + "$ref": "#/definitions/Tpm" + } + }, + "required": [ + "tpm" + ] + } + ] + }, + "SchemaField": { "allOf": [ { "$ref": "#/definitions/NamedEntity" }, { + "type": "object", "properties": { - "name": { - "description": "The programmatic name of the named entity.", + "schema": { + "description": "The schema of this field." + }, + "displayUnit": { + "description": "The display name of the unit of this field.", + "type": "string" + }, + "unit": { + "description": "The unit of this field.", + "type": "string" + } + }, + "required": [ + "schema" + ] + } + ] + }, + "Capability": { + "allOf": [ + { + "$ref": "#/definitions/NamedEntity" + }, + { + "type": "object", + "properties": { + "schema": { + "description": "The schema of this field." + }, + "displayUnit": { + "description": "The display name of the unit of this field.", "type": "string" + }, + "unit": { + "description": "The unit of this field.", + "type": "string" + } + } + }, + { + "type": "object", + "properties": { + "commandType": { + "description": "The call pattern of this command.", + "x-ms-enum": { + "name": "CommandTypes", + "modelAsString": true + }, + "type": "string", + "enum": [ + "synchronous", + "asynchronous" + ] + }, + "request": { + "description": "The request definition for this command.", + "$ref": "#/definitions/SchemaField" + }, + "response": { + "description": "The response definition for this command.", + "$ref": "#/definitions/SchemaField" + } + } + }, + { + "type": "object", + "properties": { + "writable": { + "description": "Whether this property is writable.", + "type": "boolean" + } + } + }, + { + "type": "object", + "properties": { + "target": { + "description": "The target capability models for this relationship.", + "type": "array", + "items": { + "type": "string" + }, + "minItems": 1 + }, + "maxMultiplicity": { + "description": "The maximum multiplicity for this relationship.", + "type": "integer" } } } - ], - "additionalProperties": true + ] }, "Interface": { - "type": "object", "allOf": [ { "$ref": "#/definitions/Entity" }, { + "type": "object", "properties": { "contents": { "description": "The data definitions contained by the interface.", @@ -95,12 +255,12 @@ ] }, "Component": { - "type": "object", "allOf": [ { "$ref": "#/definitions/NamedEntity" }, { + "type": "object", "properties": { "schema": { "description": "The interface used by this component.", @@ -111,12 +271,12 @@ ] }, "CapabilityModel": { - "type": "object", "allOf": [ { "$ref": "#/definitions/Entity" }, { + "type": "object", "properties": { "implements": { "description": "The component implemented by the capability model.", @@ -129,7 +289,7 @@ "description": "The relationships contained by the capability model.", "type": "array", "items": { - "$ref": "#/definitions/NamedEntity" + "$ref": "#/definitions/Capability" } } } @@ -276,7 +436,7 @@ "type": "string" }, "instanceOf": { - "description": "The model definition for the device.", + "description": "The device template definition for the device.", "type": "string" }, "simulated": { @@ -316,6 +476,11 @@ "value" ] }, + "DeviceCloudProperties": { + "description": "Cloud property values associated with the device.", + "type": "object", + "additionalProperties": true + }, "DeviceCommand": { "type": "object", "properties": { @@ -333,7 +498,7 @@ }, "responseCode": { "description": "The status code of the device command response.", - "type": "number", + "type": "integer", "readOnly": true } } @@ -347,49 +512,38 @@ "items": { "$ref": "#/definitions/DeviceCommand" } - } - }, - "required": [ - "value" - ] - }, - "DeviceCloudProperties": { - "description": "Cloud property values associated with the device.", - "type": "object", - "additionalProperties": true - }, - "SymmetricKey": { - "type": "object", - "properties": { - "primaryKey": { - "description": "The primary key for the credential.", - "type": "string" }, - "secondaryKey": { - "description": "The secondary key for the credential.", + "nextLink": { + "description": "URL to get the next page of device command executions.", "type": "string" } }, "required": [ - "primaryKey", - "secondaryKey" + "value" ] }, "DeviceCredentials": { "type": "object", "properties": { - "scopeId": { - "description": "Scope id for connecting to device provisioning service.", + "idScope": { + "description": "ID scope for connecting to the IoT Central application.", "type": "string" }, "symmetricKey": { "description": "The symmetric key credentials for the device.", "$ref": "#/definitions/SymmetricKey" + }, + "x509": { + "description": "The X.509 credential information for the device.", + "$ref": "#/definitions/X509" + }, + "tpm": { + "description": "The TPM credentials for the device.", + "$ref": "#/definitions/Tpm" } }, "required": [ - "scopeId", - "symmetricKey" + "idScope" ] }, "DeviceProperties": { @@ -397,6 +551,19 @@ "type": "object", "additionalProperties": true }, + "DeviceTelemetry": { + "type": "object", + "properties": { + "value": { + "description": "The last known value of this device telemetry." + }, + "timestamp": { + "description": "String-formatted date representing the time when the telemetry value was sent.", + "type": "string", + "format": "date-time" + } + } + }, "DeviceTemplate": { "type": "object", "properties": { @@ -425,9 +592,11 @@ "type": "string" }, "capabilityModel": { + "description": "The capability model utilized by this device template.", "$ref": "#/definitions/CapabilityModel" }, "solutionModel": { + "description": "The solution model utilized by this device template.", "$ref": "#/definitions/SolutionModel" } }, @@ -455,6 +624,89 @@ "value" ] }, + "SymmetricKey": { + "type": "object", + "properties": { + "primaryKey": { + "description": "The primary key for this credential.", + "type": "string" + }, + "secondaryKey": { + "description": "The secondary key for this credential.", + "type": "string" + } + }, + "required": [ + "primaryKey", + "secondaryKey" + ] + }, + "Tpm": { + "type": "object", + "properties": { + "endorsementKey": { + "description": "The TPM endorsement key for this credential.", + "type": "string" + } + }, + "required": [ + "endorsementKey" + ] + }, + "X509": { + "type": "object", + "properties": { + "clientCertificates": { + "description": "The X.509 client certificates for this credential.", + "$ref": "#/definitions/X509Certificates" + } + }, + "required": [ + "clientCertificates" + ] + }, + "X509Certificates": { + "type": "object", + "properties": { + "primary": { + "description": "The primary X.509 certificate for this credential.", + "$ref": "#/definitions/X509Certificate" + }, + "secondary": { + "description": "The secondary X.509 certificate for this credential.", + "$ref": "#/definitions/X509Certificate" + } + }, + "required": [ + "primary" + ] + }, + "X509Certificate": { + "type": "object", + "properties": { + "certificate": { + "description": "The string representation of this certificate.", + "type": "string" + }, + "info": { + "description": "Information about this certificate.", + "readOnly": true, + "$ref": "#/definitions/X509CertificateInfo" + } + } + }, + "X509CertificateInfo": { + "type": "object", + "properties": { + "sha1Thumbprint": { + "description": "The SHA-1 hash value of the certificate.", + "type": "string" + } + }, + "required": [ + "sha1Thumbprint" + ] + }, "Entity": { "type": "object", "properties": { @@ -491,12 +743,12 @@ ] }, "NamedEntity": { - "type": "object", "allOf": [ { "$ref": "#/definitions/Entity" }, { + "type": "object", "properties": { "name": { "description": "The programmatic name of the named entity.", @@ -513,7 +765,7 @@ "type": "object", "properties": { "roles": { - "description": "Roles that the permission has been granted permission to.", + "description": "List of role IDs that specify the permissions to access the application.", "type": "array", "items": { "type": "string" @@ -526,14 +778,6 @@ "roles" ] }, - "Value": { - "type": "object", - "properties": { - "value": { - "description": "The value of this API response." - } - } - }, "Role": { "type": "object", "properties": { @@ -557,6 +801,10 @@ "items": { "$ref": "#/definitions/Role" } + }, + "nextLink": { + "description": "URL to get the next page of roles.", + "type": "string" } }, "required": [ @@ -564,12 +812,12 @@ ] }, "SolutionModel": { - "type": "object", "allOf": [ { "$ref": "#/definitions/Entity" }, { + "type": "object", "properties": { "cloudProperties": { "description": "The cloud properties defined by the solution model.", @@ -597,14 +845,15 @@ ] }, "InitialValue": { - "type": "object", "allOf": [ { "$ref": "#/definitions/Entity" }, { + "type": "object", "properties": { "capability": { + "description": "The reference to the capability for which an initial value is being provided.", "$ref": "#/definitions/CapabilityReference" }, "value": { @@ -615,29 +864,31 @@ ] }, "Override": { - "type": "object", "allOf": [ { "$ref": "#/definitions/Entity" }, { + "type": "object", "properties": { "capability": { + "description": "The reference to the capability which is being overridden.", "$ref": "#/definitions/CapabilityReference" }, "displayUnit": { - "description": "The overridden display unit.", + "description": "The overridden display unit for the referenced capability.", "type": "string" }, "semanticType": { - "description": "The overridden semantic type.", + "description": "The overridden semantic type for the referenced capability.", "type": "string" }, "unit": { - "description": "The overridden unit.", + "description": "The overridden unit for the referenced capability.", "type": "string" }, "valueDetail": { + "description": "Visualization details for the referenced capability.", "$ref": "#/definitions/ValueDetail" } } @@ -645,22 +896,93 @@ ] }, "ValueDetail": { - "description": "Visualization details for the referenced capability.", - "type": "object", "allOf": [ { "$ref": "#/definitions/Entity" + }, + { + "type": "object", + "properties": { + "falseName": { + "description": "The string representation of a false value.", + "type": "string" + }, + "trueName": { + "description": "The string representation of a true value.", + "type": "string" + } + } + }, + { + "type": "object", + "properties": { + "hideTime": { + "description": "Specifies that the time portion of the date-time value should be hidden.", + "type": "boolean" + } + } + }, + { + "type": "object", + "properties": { + "severity": { + "description": "Specifies the severity of the event.", + "x-ms-enum": { + "name": "EventSeverity", + "modelAsString": true + }, + "type": "string", + "enum": [ + "error", + "warning", + "information" + ] + } + } + }, + { + "type": "object", + "properties": { + "decimalPlaces": { + "description": "The number of decimal places that should be displayed for the number.", + "type": "integer" + }, + "maxValue": { + "description": "The maximum expected value of the number.", + "type": "number" + }, + "minValue": { + "description": "The minimum expected value of the number.", + "type": "number" + } + } + }, + { + "type": "object", + "properties": { + "maxLength": { + "description": "The maximum expected length of the string.", + "type": "integer" + }, + "minLength": { + "description": "The minimum expected length of the string.", + "type": "integer" + }, + "trimWhitespace": { + "description": "Specifies the visual and storage treatment of white spaces in the string.", + "type": "boolean" + } + } } - ], - "additionalProperties": true + ] }, "CapabilityReference": { - "type": "object", "allOf": [ { "$ref": "#/definitions/Entity" }, { + "type": "object", "properties": { "component": { "description": "The name of the component being referenced.", @@ -685,6 +1007,9 @@ "$ref": "./examples/apitoken_list.json" } }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "responses": { "200": { "description": "Success", @@ -692,13 +1017,19 @@ "$ref": "#/definitions/ApiTokenCollection" } } - }, - "x-ms-pageable": { - "nextLinkName": null } } }, "/apiTokens/{token_id}": { + "parameters": [ + { + "in": "path", + "name": "token_id", + "description": "Unique ID for the API token.", + "type": "string", + "required": true + } + ], "get": { "operationId": "ApiTokens_Get", "summary": "Get an API token by ID.", @@ -707,15 +1038,6 @@ "$ref": "./examples/apitoken_get.json" } }, - "parameters": [ - { - "in": "path", - "name": "token_id", - "description": "Unique ID for the API token.", - "type": "string", - "required": true - } - ], "responses": { "200": { "description": "Success", @@ -784,105 +1106,6 @@ } } }, - "/devices": { - "get": { - "operationId": "Devices_List", - "summary": "Get the list of devices in an application", - "x-ms-examples": { - "List devices": { - "$ref": "./examples/devices_list.json" - } - }, - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceCollection" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - } - } - }, - "/devices/{device_id}": { - "get": { - "operationId": "Devices_Get", - "summary": "Get a device by ID", - "description": "Get details about an existing device by device ID.", - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - } - ], - "x-ms-examples": { - "Get device by Id": { - "$ref": "./examples/devices_get.json" - } - }, - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/Device" - } - } - } - }, - "put": { - "operationId": "Devices_Set", - "summary": "Create or update a device", - "description": "Create a new device or update an existing one by device ID.", - "x-ms-examples": { - "Create device": { - "$ref": "./examples/devices_create.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "name": "body", - "in": "body", - "description": "Device body.", - "required": true, - "schema": { - "$ref": "#/definitions/Device" - } - } - ], - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/Device" - } - } - } - }, - "delete": { - "operationId": "Devices_Remove", - "summary": "Delete a device", - "description": "Delete an existing device by device ID.", - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - } - ], - "x-ms-examples": { - "Delete device": { - "$ref": "./examples/devices_delete.json" - } - }, - "responses": { - "204": { - "description": "Success" - } - } - } - }, "/continuousDataExports": { "get": { "operationId": "ContinuousDataExports_List", @@ -892,6 +1115,9 @@ "$ref": "./examples/continuousdataexports_list.json" } }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "responses": { "200": { "description": "Success", @@ -899,25 +1125,22 @@ "$ref": "#/definitions/ContinuousDataExportCollection" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, "/continuousDataExports/{export_id}": { + "parameters": [ + { + "in": "path", + "name": "export_id", + "description": "Unique ID for the continuous data export.", + "type": "string", + "required": true + } + ], "get": { "operationId": "ContinuousDataExports_Get", "summary": "Get a continuous data export by ID.", - "parameters": [ - { - "in": "path", - "name": "export_id", - "description": "Unique ID for the continuous data export.", - "type": "string", - "required": true - } - ], "x-ms-examples": { "Get export": { "$ref": "./examples/continuousdataexports_get.json" @@ -1000,6 +1223,9 @@ "$ref": "./examples/devicetemplates_list.json" } }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "responses": { "200": { "description": "Success", @@ -1007,9 +1233,6 @@ "$ref": "#/definitions/DeviceTemplateCollection" } } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" } } }, @@ -1058,7 +1281,7 @@ }, "put": { "operationId": "DeviceTemplates_Set", - "summary": "Create or update a device template by ID", + "summary": "Create or update a device template", "x-ms-examples": { "Create a device template": { "$ref": "./examples/devicetemplates_create.json" @@ -1126,6 +1349,9 @@ "$ref": "./examples/devices_list_by_template.json" } }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "responses": { "200": { "description": "Success", @@ -1133,9 +1359,105 @@ "$ref": "#/definitions/DeviceCollection" } } + } + } + }, + "/devices": { + "get": { + "operationId": "Devices_List", + "summary": "Get the list of devices in an application", + "x-ms-examples": { + "List devices": { + "$ref": "./examples/devices_list.json" + } }, "x-ms-pageable": { "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceCollection" + } + } + } + } + }, + "/devices/{device_id}": { + "get": { + "operationId": "Devices_Get", + "summary": "Get a device by ID", + "description": "Get details about an existing device by device ID.", + "parameters": [ + { + "$ref": "#/parameters/DeviceId" + } + ], + "x-ms-examples": { + "Get device by Id": { + "$ref": "./examples/devices_get.json" + } + }, + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Device" + } + } + } + }, + "put": { + "operationId": "Devices_Set", + "summary": "Create or update a device", + "description": "Create a new device or update an existing one by device ID.", + "x-ms-examples": { + "Create device": { + "$ref": "./examples/devices_create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/DeviceId" + }, + { + "name": "body", + "in": "body", + "description": "Device body.", + "required": true, + "schema": { + "$ref": "#/definitions/Device" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Device" + } + } + } + }, + "delete": { + "operationId": "Devices_Remove", + "summary": "Delete a device", + "description": "Delete an existing device by device ID.", + "parameters": [ + { + "$ref": "#/parameters/DeviceId" + } + ], + "x-ms-examples": { + "Delete device": { + "$ref": "./examples/devices_delete.json" + } + }, + "responses": { + "204": { + "description": "Success" + } } } }, @@ -1148,6 +1470,9 @@ "$ref": "./examples/roles_list.json" } }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "responses": { "200": { "description": "Success", @@ -1155,9 +1480,6 @@ "$ref": "#/definitions/RoleCollection" } } - }, - "x-ms-pageable": { - "nextLinkName": null } } }, @@ -1189,16 +1511,96 @@ } } }, - "/devices/{device_id}/cloudProperties": { + "/devices/{device_id}/attestation": { + "parameters": [ + { + "$ref": "#/parameters/DeviceId" + } + ], "get": { - "operationId": "Devices_GetCloudProperties", - "summary": "Get device cloud properties", - "description": "Get all cloud property values of a device by device ID.", + "operationId": "Devices_GetAttestation", + "summary": "Get device attestation", + "x-ms-examples": { + "Get device attestation": { + "$ref": "./examples/devices_attestations_get.json" + } + }, + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Attestation" + } + } + } + }, + "put": { + "operationId": "Devices_SetAttestation", + "summary": "Create or update an individual device attestation", + "parameters": [ + { + "$ref": "#/parameters/DeviceId" + }, + { + "name": "body", + "in": "body", + "description": "Individual device attestation body.", + "required": true, + "schema": { + "$ref": "#/definitions/Attestation" + } + } + ], + "x-ms-examples": { + "Create or update device attestation - Symmetric Key": { + "$ref": "./examples/devices_attestations_set_symmetricKey.json" + }, + "Create or update device attestation - X509": { + "$ref": "./examples/devices_attestations_set_x509.json" + }, + "Create or update device attestation - TPM": { + "$ref": "./examples/devices_attestations_set_tpm.json" + } + }, + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/Attestation" + } + } + } + }, + "delete": { + "operationId": "Devices_RemoveAttestation", + "summary": "Remove an individual device attestation", "parameters": [ { "$ref": "#/parameters/DeviceId" } ], + "x-ms-examples": { + "Delete device attestation": { + "$ref": "./examples/devices_attestations_delete.json" + } + }, + "responses": { + "204": { + "description": "Success" + } + } + } + }, + "/devices/{device_id}/cloudProperties": { + "parameters": [ + { + "$ref": "#/parameters/DeviceId" + } + ], + "get": { + "operationId": "Devices_GetCloudProperties", + "summary": "Get device cloud properties", + "description": "Get all cloud property values of a device by device ID.", "x-ms-examples": { "Get cloud properties": { "$ref": "./examples/devices_cloudproperties_get.json" @@ -1223,9 +1625,6 @@ } }, "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, { "name": "body", "in": "body", @@ -1247,30 +1646,33 @@ } }, "/devices/{device_id}/components/{component_name}/commands/{command_name}": { + "parameters": [ + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ComponentName" + }, + { + "in": "path", + "name": "command_name", + "description": "Name of this device command.", + "x-ms-parameter-location": "method", + "type": "string", + "required": true + } + ], "get": { "operationId": "Devices_GetCommandHistory", "summary": "Get device command history", - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "$ref": "#/parameters/ComponentName" - }, - { - "in": "path", - "name": "command_name", - "description": "Name of this device command.", - "x-ms-parameter-location": "method", - "type": "string", - "required": true - } - ], "x-ms-examples": { "Get command history": { "$ref": "./examples/devices_commandshistory_get.json" } }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, "responses": { "200": { "description": "Success", @@ -1278,9 +1680,6 @@ "$ref": "#/definitions/DeviceCommandCollection" } } - }, - "x-ms-pageable": { - "nextLinkName": null } }, "post": { @@ -1293,20 +1692,6 @@ } }, "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "$ref": "#/parameters/ComponentName" - }, - { - "in": "path", - "name": "command_name", - "description": "Name of this device command.", - "x-ms-parameter-location": "method", - "type": "string", - "required": true - }, { "name": "body", "in": "body", @@ -1327,16 +1712,40 @@ } } }, + "/devices/{device_id}/credentials": { + "parameters": [ + { + "$ref": "#/parameters/DeviceId" + } + ], + "get": { + "operationId": "Devices_GetCredentials", + "summary": "Get device credentials", + "x-ms-examples": { + "Get device credentials": { + "$ref": "./examples/devicecredentials_get.json" + } + }, + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/DeviceCredentials" + } + } + } + } + }, "/devices/{device_id}/properties": { + "parameters": [ + { + "$ref": "#/parameters/DeviceId" + } + ], "get": { "operationId": "Devices_GetProperties", "summary": "Get device properties", "description": "Get all property values of a device by device ID.", - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - } - ], "x-ms-examples": { "Get properties": { "$ref": "./examples/devices_properties_get.json" @@ -1361,9 +1770,6 @@ } }, "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, { "name": "body", "in": "body", @@ -1385,17 +1791,17 @@ } }, "/devices/{device_id}/components/{component_name}/properties": { + "parameters": [ + { + "$ref": "#/parameters/DeviceId" + }, + { + "$ref": "#/parameters/ComponentName" + } + ], "get": { "operationId": "Devices_GetComponentProperties", "summary": "Get device properties for a specific component", - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "$ref": "#/parameters/ComponentName" - } - ], "x-ms-examples": { "Get properties on components": { "$ref": "./examples/devices_properties_components_get.json" @@ -1419,12 +1825,6 @@ } }, "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "$ref": "#/parameters/ComponentName" - }, { "name": "body", "in": "body", @@ -1445,50 +1845,26 @@ } } }, - "/devices/{device_id}/credentials": { - "get": { - "operationId": "Devices_GetCredentials", - "summary": "Get device credentials", - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - } - ], - "x-ms-examples": { - "Get device credentials": { - "$ref": "./examples/devicecredentials_get.json" - } + "/devices/{device_id}/components/{component_name}/telemetry/{telemetry_name}": { + "parameters": [ + { + "$ref": "#/parameters/DeviceId" }, - "responses": { - "200": { - "description": "Success", - "schema": { - "$ref": "#/definitions/DeviceCredentials" - } - } + { + "$ref": "#/parameters/ComponentName" + }, + { + "in": "path", + "name": "telemetry_name", + "description": "Name of this device telemetry.", + "x-ms-parameter-location": "method", + "type": "string", + "required": true } - } - }, - "/devices/{device_id}/components/{component_name}/telemetry/{telemetry_name}": { + ], "get": { "operationId": "Devices_GetTelemetryValue", "summary": "Get device telemetry value", - "parameters": [ - { - "$ref": "#/parameters/DeviceId" - }, - { - "$ref": "#/parameters/ComponentName" - }, - { - "in": "path", - "name": "telemetry_name", - "description": "Name of this device telemetry.", - "x-ms-parameter-location": "method", - "type": "string", - "required": true - } - ], "x-ms-examples": { "Get telemetry": { "$ref": "./examples/devices_telemetry_get.json" @@ -1498,7 +1874,7 @@ "200": { "description": "Success", "schema": { - "$ref": "#/definitions/Value" + "$ref": "#/definitions/DeviceTelemetry" } } } @@ -1506,26 +1882,26 @@ } }, "parameters": { - "DeviceId": { + "DeviceTemplateId": { "in": "path", - "name": "device_id", - "description": "Unique ID of the device.", + "name": "device_template_id", + "description": "Unique ID of the device template.", "x-ms-parameter-location": "method", "type": "string", "required": true }, - "ComponentName": { + "DeviceId": { "in": "path", - "name": "component_name", - "description": "Name of the device component.", + "name": "device_id", + "description": "Unique ID of the device.", "x-ms-parameter-location": "method", "type": "string", "required": true }, - "DeviceTemplateId": { + "ComponentName": { "in": "path", - "name": "device_template_id", - "description": "Unique ID of the device template.", + "name": "component_name", + "description": "Name of the component. In the device template editor in your app, this is the interface instance name.", "x-ms-parameter-location": "method", "type": "string", "required": true diff --git a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/iotcentralapps.json b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/iotcentralapps.json index b96efc68645e..51e8c8ea2184 100644 --- a/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/iotcentralapps.json +++ b/specification/iotcentral/data-plane/Microsoft.IoTCentral/preview/2019-10-28-preview/iotcentralapps.json @@ -1,7 +1,7 @@ { "swagger": "2.0", "info": { - "version": "1.0.0", + "version": "preview", "title": "Azure IoT Central", "description": "Azure IoT Central is a service that makes it easy to connect, monitor, and manage your IoT devices at scale." }, diff --git a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/stable/2018-09-01/iotcentral.json b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/stable/2018-09-01/iotcentral.json index 89cda44e28af..8958ac279f14 100644 --- a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/stable/2018-09-01/iotcentral.json +++ b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/stable/2018-09-01/iotcentral.json @@ -70,7 +70,7 @@ "default": { "description": "Default error response", "schema": { - "$ref": "#/definitions/ErrorDetails" + "$ref": "#/definitions/CloudError" } } }, @@ -130,7 +130,7 @@ "default": { "description": "DefaultErrorResponse", "schema": { - "$ref": "#/definitions/ErrorDetails" + "$ref": "#/definitions/CloudError" } } }, @@ -184,7 +184,7 @@ "default": { "description": "DefaultErrorResponse", "schema": { - "$ref": "#/definitions/ErrorDetails" + "$ref": "#/definitions/CloudError" } } }, @@ -229,7 +229,7 @@ "default": { "description": "DefaultErrorResponse", "schema": { - "$ref": "#/definitions/ErrorDetails" + "$ref": "#/definitions/CloudError" } } } @@ -268,7 +268,7 @@ "default": { "description": "DefaultErrorResponse", "schema": { - "$ref": "#/definitions/ErrorDetails" + "$ref": "#/definitions/CloudError" } } }, @@ -311,7 +311,7 @@ "default": { "description": "DefaultErrorResponse", "schema": { - "$ref": "#/definitions/ErrorDetails" + "$ref": "#/definitions/CloudError" } } }, @@ -357,7 +357,7 @@ "default": { "description": "DefaultErrorResponse", "schema": { - "$ref": "#/definitions/ErrorDetails" + "$ref": "#/definitions/CloudError" } } }, @@ -403,7 +403,7 @@ "default": { "description": "DefaultErrorResponse", "schema": { - "$ref": "#/definitions/ErrorDetails" + "$ref": "#/definitions/CloudError" } } }, @@ -443,7 +443,7 @@ "default": { "description": "DefaultErrorResponse", "schema": { - "$ref": "#/definitions/ErrorDetails" + "$ref": "#/definitions/CloudError" } } }, @@ -480,7 +480,7 @@ "default": { "description": "DefaultErrorResponse", "schema": { - "$ref": "#/definitions/ErrorDetails" + "$ref": "#/definitions/CloudError" } } }, @@ -500,13 +500,11 @@ }, "displayName": { "description": "The display name of the application.", - "type": "string", - "pattern": "^.{1,200}$" + "type": "string" }, "subdomain": { "description": "The subdomain of the application.", - "type": "string", - "pattern": "^[a-z0-9-]{1,63}$" + "type": "string" }, "template": { "description": "The ID of the application template, which is a blueprint that defines the characteristics and behaviors of an application. Optional; if not specified, defaults to a blank blueprint and allows the application to be defined from scratch.", @@ -624,17 +622,18 @@ "location" ] }, - "ErrorDetails": { + "CloudError": { "description": "Error details.", + "x-ms-external": true, "properties": { "error": { "description": "Error response body.", "x-ms-client-flatten": true, - "$ref": "#/definitions/ErrorResponseBody" + "$ref": "#/definitions/CloudErrorBody" } } }, - "ErrorResponseBody": { + "CloudErrorBody": { "description": "Details of error response.", "type": "object", "properties": { @@ -657,7 +656,7 @@ "type": "array", "description": "A list of additional details about the error.", "items": { - "$ref": "#/definitions/ErrorResponseBody" + "$ref": "#/definitions/CloudErrorBody" } } } @@ -744,8 +743,7 @@ "properties": { "name": { "description": "The name of the IoT Central application instance to check.", - "type": "string", - "pattern": "^[a-z0-9-]{1,63}$" + "type": "string" }, "type": { "description": "The type of the IoT Central resource to query.", diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/IotHub_ManualFailover.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/IotHub_ManualFailover.json new file mode 100644 index 000000000000..dfb3e6bb2f81 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/IotHub_ManualFailover.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "iotHubName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "failoverInput": { + "failoverRegion": "testHub" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/checkNameAvailability.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/checkNameAvailability.json new file mode 100644 index 000000000000..84850f566de2 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/checkNameAvailability.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "operationInputs": { + "name": "test-request" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true, + "reason": "Invalid", + "message": "" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_certificatescreateorupdate.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_certificatescreateorupdate.json new file mode 100644 index 000000000000..d2124b1ab874 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_certificatescreateorupdate.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "resourceName": "iothub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "certificateDescription": { + "certificate": "############################################" + } + }, + "responses": { + "201": { + "body": { + "properties": { + "subject": "CN=testdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "97388663832D0393C9246CAB4FBA2C8677185A25", + "isVerified": false, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:23:50 GMT" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServives/myFirstProvisioningService/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/IotHubs/Certificates", + "etag": "AAAAAAExpNs=" + } + }, + "200": { + "body": { + "properties": { + "subject": "CN=testdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "97388663832D0393C9246CAB4FBA2C8677185A25", + "isVerified": false, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:23:50 GMT" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServives/myFirstProvisioningService/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/IotHubs/Certificates", + "etag": "AAAAAAExpNs=" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_certificatesdelete.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_certificatesdelete.json new file mode 100644 index 000000000000..52f4ea171758 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_certificatesdelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "resourceName": "myhub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "If-Match": "AAAAAAAADGk=" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_certverify.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_certverify.json new file mode 100644 index 000000000000..28ec873da73a --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_certverify.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "resourceName": "myFirstProvisioningService", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "If-Match": "AAAAAAAADGk=", + "certificateVerificationBody": { + "certificate": "#####################################" + } + }, + "responses": { + "200": { + "body": { + "properties": { + "subject": "CN=andbucdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "97388663832D0393C9246CAB4FBA2C8677185A25", + "isVerified": true, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:26:56 GMT" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/ProvisioningServices/myFirstProvisioningService/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/IotHubs/Certificates", + "etag": "AAAAAAExpTQ=" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_createOrUpdate.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_createOrUpdate.json new file mode 100644 index 000000000000..846ad2933e22 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_createOrUpdate.json @@ -0,0 +1,223 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "iotHubDescription": { + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "ipFilterRules": [], + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2 + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "capacity": 1 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ae24ff83-d2ca-4fc8-9717-05dae4bba489/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [], + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + }, + "201": { + "body": { + "id": "/subscriptions/ae24ff83-d2ca-4fc8-9717-05dae4bba489/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [], + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_createconsumergroup.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_createconsumergroup.json new file mode 100644 index 000000000000..f3b921c7f795 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_createconsumergroup.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "eventHubEndpointName": "events", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "name": "test" + }, + "responses": { + "200": { + "body": { + "properties": { + "created": "Thu, 15 Jun 2017 19:20:58 GMT" + }, + "id": "/subscriptions/cmd-sub-1/resourceGroups/cmd-rg-1/providers/Microsoft.Devices/IotHubs/test-hub-2/eventHubEndpoints/events/ConsumerGroups/%24Default", + "name": "test", + "type": "Microsoft.Devices/IotHubs/EventHubEndpoints/ConsumerGroups", + "etag": "AAAAAAFD6M4=" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_delete.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_delete.json new file mode 100644 index 000000000000..5ce4dfb1059f --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_delete.json @@ -0,0 +1,164 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [], + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + }, + "204": {}, + "202": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [], + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + }, + "404": { + "body": {} + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_deleteconsumergroup.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_deleteconsumergroup.json new file mode 100644 index 000000000000..5ce69f559861 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_deleteconsumergroup.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "eventHubEndpointName": "events", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "name": "test" + }, + "responses": { + "200": {} + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_deleteprivateendpointconnection.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_deleteprivateendpointconnection.json new file mode 100644 index 000000000000..3c5f1ef07441 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_deleteprivateendpointconnection.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "privateEndpointConnectionName": "myPrivateEndpointConnection" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub/PrivateEndpointConnections/myPrivateEndpointConnection", + "name": "myPrivateEndpointConnection", + "type": "Microsoft.Devices/IotHubs/PrivateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/a9eba280-4734-4d49-878f-b5549d1d0453/resourceGroups/networkResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Disconnected", + "description": "Deleted", + "actionsRequired": "None" + } + } + } + }, + "202": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub/PrivateEndpointConnections/myPrivateEndpointConnection", + "name": "myPrivateEndpointConnection", + "type": "Microsoft.Devices/IotHubs/PrivateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/a9eba280-4734-4d49-878f-b5549d1d0453/resourceGroups/networkResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Disconnected", + "description": "Deleted", + "actionsRequired": "None" + } + } + } + }, + "204": {} + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_exportdevices.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_exportdevices.json new file mode 100644 index 000000000000..2cf3db8f1c95 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_exportdevices.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "exportDevicesParameters": { + "exportBlobContainerUri": "testBlob", + "excludeKeys": true + } + }, + "responses": { + "200": { + "body": { + "jobId": "test", + "startTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "endTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "type": "unknown", + "status": "unknown" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_generateverificationcode.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_generateverificationcode.json new file mode 100644 index 000000000000..473bfc8b67d3 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_generateverificationcode.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert", + "If-Match": "AAAAAAAADGk=" + }, + "responses": { + "200": { + "body": { + "name": "cert", + "properties": { + "verificationCode": "##################################", + "subject": "CN=andbucdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "##############################", + "isVerified": false, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:26:56 GMT" + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_get.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_get.json new file mode 100644 index 000000000000..a1232882eedb --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_get.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [], + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None", + "locations": [ + { + "location": "West US", + "role": "primary" + }, + { + "location": "East US", + "role": "secondary" + } + ] + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getcertificate.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getcertificate.json new file mode 100644 index 000000000000..645c3b25ec44 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getcertificate.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "resourceName": "testhub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "certificateName": "cert" + }, + "responses": { + "200": { + "body": { + "properties": { + "subject": "CN=testdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "97388663832D0393C9246CAB4FBA2C8677185A25", + "isVerified": false, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:23:50 GMT" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/andbuc-hub/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/IotHubs/Certificates", + "etag": "AAAAAAExpNs=" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getconsumergroup.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getconsumergroup.json new file mode 100644 index 000000000000..f3b921c7f795 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getconsumergroup.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "eventHubEndpointName": "events", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "name": "test" + }, + "responses": { + "200": { + "body": { + "properties": { + "created": "Thu, 15 Jun 2017 19:20:58 GMT" + }, + "id": "/subscriptions/cmd-sub-1/resourceGroups/cmd-rg-1/providers/Microsoft.Devices/IotHubs/test-hub-2/eventHubEndpoints/events/ConsumerGroups/%24Default", + "name": "test", + "type": "Microsoft.Devices/IotHubs/EventHubEndpoints/ConsumerGroups", + "etag": "AAAAAAFD6M4=" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getjob.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getjob.json new file mode 100644 index 000000000000..7033fc29d30b --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getjob.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "jobId": "test" + }, + "responses": { + "200": { + "body": { + "jobId": "test", + "startTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "endTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "type": "unknown", + "status": "unknown" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getkey.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getkey.json new file mode 100644 index 000000000000..7a701c1da9cf --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getkey.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "keyName": "iothubowner" + }, + "responses": { + "200": { + "body": { + "keyName": "iothubowner", + "primaryKey": "2aWPrKloLLdcug12ZHNpA0e07yJmRRmYMXDLpEOTd/Y=", + "secondaryKey": "DLyFnDTGMDK0BU2QjT5TCkNBQ4h08mi20vOqWMC7TxU=", + "rights": "RegistryWrite, ServiceConnect, DeviceConnect" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getprivateendpointconnection.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getprivateendpointconnection.json new file mode 100644 index 000000000000..31adf125cbb7 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getprivateendpointconnection.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "privateEndpointConnectionName": "myPrivateEndpointConnection" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub/PrivateEndpointConnections/myPrivateEndpointConnection", + "name": "myPrivateEndpointConnection", + "type": "Microsoft.Devices/IotHubs/PrivateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/a9eba280-4734-4d49-878f-b5549d1d0453/resourceGroups/networkResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Please approve my request!", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getprivatelinkresources.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getprivatelinkresources.json new file mode 100644 index 000000000000..7269c08b11bf --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getprivatelinkresources.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "groupId": "iotHub" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub/PrivateLinkResources/iotHub", + "name": "iotHub", + "type": "Microsoft.Devices/IotHubs/PrivateLinkResources", + "properties": { + "groupId": "iotHub", + "requiredMembers": [ + "iotHub" + ], + "requiredZoneNames": [ + "privatelink.azure-devices.net" + ] + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getskus.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getskus.json new file mode 100644 index 000000000000..a2cd6ce1cfb0 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_getskus.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "Microsoft.Devices/IotHubs", + "sku": { + "name": "S1", + "tier": "Standard" + }, + "capacity": { + "default": 1, + "scaleType": "Manual" + } + }, + { + "resourceType": "Microsoft.Devices/IotHubs", + "sku": { + "name": "S2", + "tier": "Standard" + }, + "capacity": { + "minimum": 1, + "maximum": 200, + "default": 1, + "scaleType": "Manual" + } + }, + { + "resourceType": "Microsoft.Devices/IotHubs", + "sku": { + "name": "S3", + "tier": "Standard" + }, + "capacity": { + "minimum": 1, + "maximum": 10, + "default": 1, + "scaleType": "Manual" + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_importdevices.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_importdevices.json new file mode 100644 index 000000000000..25f1099799ff --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_importdevices.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "importDevicesParameters": { + "inputBlobContainerUri": "testBlob", + "outputBlobContainerUri": "testBlob" + } + }, + "responses": { + "200": { + "body": { + "jobId": "test", + "startTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "endTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "type": "unknown", + "status": "unknown" + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listbyrg.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listbyrg.json new file mode 100644 index 000000000000..44a38d3e4ed6 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listbyrg.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [], + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listbysubscription.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listbysubscription.json new file mode 100644 index 000000000000..6e48d005194d --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listbysubscription.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "resourceName": "testHub", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": {}, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [], + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listcertificates.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listcertificates.json new file mode 100644 index 000000000000..df1aef21ac37 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listcertificates.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "resourceName": "testhub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "subject": "CN=testdevice1", + "expiry": "Sat, 31 Dec 2039 23:59:59 GMT", + "thumbprint": "97388663832D0393C9246CAB4FBA2C8677185A25", + "isVerified": false, + "created": "Thu, 12 Oct 2017 19:23:50 GMT", + "updated": "Thu, 12 Oct 2017 19:23:50 GMT" + }, + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/andbuc-hub/certificates/cert", + "name": "cert", + "type": "Microsoft.Devices/IotHubs/Certificates", + "etag": "AAAAAAExpNs=" + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listehgroups.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listehgroups.json new file mode 100644 index 000000000000..bf62547de092 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listehgroups.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "eventHubEndpointName": "events", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "created": "Thu, 15 Jun 2017 19:20:58 GMT" + }, + "id": "/subscriptions/cmd-sub-1/resourceGroups/cmd-rg-1/providers/Microsoft.Devices/IotHubs/test-hub-2/eventHubEndpoints/events/ConsumerGroups/%24Default", + "name": "$Default", + "type": "Microsoft.Devices/IotHubs/EventHubEndpoints/ConsumerGroups", + "etag": "AAAAAAFD6M4=" + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listjobs.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listjobs.json new file mode 100644 index 000000000000..0f0a6c67a801 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listjobs.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "jobId": "test", + "startTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "endTimeUtc": "Thu, 15 Jun 2017 19:20:58 GMT", + "type": "unknown", + "status": "unknown" + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listkeys.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listkeys.json new file mode 100644 index 000000000000..11f7e90d03b6 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listkeys.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "keyName": "iothubowner", + "primaryKey": "2aWPrKloLLdcug12ZHNpA0e07yJmRRmYMXDLpEOTd/Y=", + "secondaryKey": "DLyFnDTGMDK0BU2QjT5TCkNBQ4h08mi20vOqWMC7TxU=", + "rights": "RegistryWrite, ServiceConnect, DeviceConnect" + }, + { + "keyName": "service", + "primaryKey": "DinqxWW+s814W2Pc3dLxleelksqSYGy8Jfymt8J7a4c=", + "secondaryKey": "5G8KgJ9Wx2T0f6HRIn25TgYcFmJnBSivawNaHssiP9Y=", + "rights": "ServiceConnect" + }, + { + "keyName": "device", + "primaryKey": "o/9gPc0oD8LY/r2lRurgl9U/sKFcL2c/tmFLKAiz+e0=", + "secondaryKey": "YOeBMHnYP95vH+ykR8OeapnhS6W8raMsXOdNFwqg4lg=", + "rights": "DeviceConnect" + }, + { + "keyName": "registryRead", + "primaryKey": "h2d4mPxy6jPCWX6mO+katV9QPNJivzt4aFq0iGVc1A8=", + "secondaryKey": "3TdcalZNTB7BZHl88LGsG1Z5T6+ElEODunrs1vylwGg=", + "rights": "RegistryRead" + }, + { + "keyName": "registryReadWrite", + "primaryKey": "tyNRcaI38fXL+gQTjCmrVZGTP4YFF7uACk7pppWLWzY=", + "secondaryKey": "6P6DXOp0W3HO5/IotzcPS1kx7PHiOdesaND07Im5cYI=", + "rights": "RegistryWrite" + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listprivateendpointconnections.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listprivateendpointconnections.json new file mode 100644 index 000000000000..9595bfaac824 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listprivateendpointconnections.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": [ + { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub/PrivateEndpointConnections/myPrivateEndpointConnection", + "name": "myPrivateEndpointConnection", + "type": "Microsoft.Devices/IotHubs/PrivateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/a9eba280-4734-4d49-878f-b5549d1d0453/resourceGroups/networkResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Please approve my request!", + "actionsRequired": "None" + } + } + } + ] + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listprivatelinkresources.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listprivatelinkresources.json new file mode 100644 index 000000000000..2261900d8ed6 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_listprivatelinkresources.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub/PrivateLinkResources/iotHub", + "name": "iotHub", + "type": "Microsoft.Devices/IotHubs/PrivateLinkResources", + "properties": { + "groupId": "iotHub", + "requiredMembers": [ + "iotHub" + ], + "requiredZoneNames": [ + "privatelink.azure-devices.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_operations.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_operations.json new file mode 100644 index 000000000000..61d02e4d1f7c --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_operations.json @@ -0,0 +1,328 @@ +{ + "parameters": { + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Devices/register/action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Register Resource Provider", + "description": "Register the subscription for the IotHub resource provider and enables the creation of IotHub resources" + } + }, + { + "name": "Microsoft.Devices/IotHubs/diagnosticSettings/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Diagnostic Setting", + "description": "Gets the diagnostic setting for the resource" + } + }, + { + "name": "Microsoft.Devices/IotHubs/diagnosticSettings/write", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Set Diagnostic Setting", + "description": "Creates or updates the diagnostic setting for the resource" + } + }, + { + "name": "Microsoft.Devices/IotHubs/metricDefinitions/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Read IotHub service metric definitions", + "description": "Gets the available metrics for the IotHub service" + } + }, + { + "name": "Microsoft.Devices/IotHubs/logDefinitions/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Read IotHub service log definitions", + "description": "Gets the available log definitions for the IotHub Service" + } + }, + { + "name": "Microsoft.Devices/operations/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get All ResourceProvider Operations", + "description": "Get All ResourceProvider Operations" + } + }, + { + "name": "Microsoft.Devices/checkNameAvailability/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Check If IotHub name is available", + "description": "Check If IotHub name is available" + } + }, + { + "name": "Microsoft.Devices/usages/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Subscription Usages", + "description": "Get subscription usage details for this provider." + } + }, + { + "name": "Microsoft.Devices/iotHubs/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get IotHub(s)", + "description": "Gets the IotHub resource(s)" + } + }, + { + "name": "Microsoft.Devices/iotHubs/Write", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Create or update IotHub Resource", + "description": "Create or update IotHub Resource" + } + }, + { + "name": "Microsoft.Devices/iotHubs/Delete", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Delete IotHub Resource", + "description": "Delete IotHub Resource" + } + }, + { + "name": "Microsoft.Devices/iotHubs/iotHubStats/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get IotHub Statistics", + "description": "Get IotHub Statistics" + } + }, + { + "name": "Microsoft.Devices/iotHubs/skus/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get valid IotHub Skus", + "description": "Get valid IotHub Skus" + } + }, + { + "name": "Microsoft.Devices/iotHubs/listkeys/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get all IotHub Keys", + "description": "Get all IotHub Keys" + } + }, + { + "name": "Microsoft.Devices/iotHubs/iotHubKeys/listkeys/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get IotHub Key for the given name", + "description": "Get IotHub Key for the given name" + } + }, + { + "name": "Microsoft.Devices/iotHubs/eventHubEndpoints/consumerGroups/Write", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Create EventHub Consumer Group", + "description": "Create EventHub Consumer Group" + } + }, + { + "name": "Microsoft.Devices/iotHubs/eventHubEndpoints/consumerGroups/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get EventHub Consumer Group(s)", + "description": "Get EventHub Consumer Group(s)" + } + }, + { + "name": "Microsoft.Devices/iotHubs/eventHubEndpoints/consumerGroups/Delete", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Delete EventHub Consumer Group", + "description": "Delete EventHub Consumer Group" + } + }, + { + "name": "Microsoft.Devices/iotHubs/exportDevices/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Export Devices", + "description": "Export Devices" + } + }, + { + "name": "Microsoft.Devices/iotHubs/importDevices/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Import Devices", + "description": "Import Devices" + } + }, + { + "name": "Microsoft.Devices/iotHubs/jobs/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get the Job(s) on IotHub", + "description": "Get Job(s) details submitted on given IotHub" + } + }, + { + "name": "Microsoft.Devices/iotHubs/quotaMetrics/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Quota Metrics", + "description": "Get Quota Metrics" + } + }, + { + "name": "Microsoft.Devices/iotHubs/routing/routes/$testall/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Routing Rule Test All", + "description": "Test a message against all existing Routes" + } + }, + { + "name": "Microsoft.Devices/iotHubs/routing/routes/$testnew/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Routing Rule Test Route", + "description": "Test a message against a provided test Route" + } + }, + { + "name": "Microsoft.Devices/iotHubs/routingEndpointsHealth/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Endpoint Health", + "description": "Gets the health of all routing Endpoints for an IotHub" + } + }, + { + "name": "Microsoft.Devices/ProvisioningServices/diagnosticSettings/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Get Diagnostic Setting", + "description": "Gets the diagnostic setting for the resource" + } + }, + { + "name": "Microsoft.Devices/ProvisioningServices/diagnosticSettings/write", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Set Diagnostic Setting", + "description": "Creates or updates the diagnostic setting for the resource" + } + }, + { + "name": "Microsoft.Devices/ProvisioningServices/metricDefinitions/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Read DPS service metric definitions", + "description": "Gets the available metrics for the DPS service" + } + }, + { + "name": "Microsoft.Devices/ProvisioningServices/logDefinitions/read", + "display": { + "provider": "Microsoft Devices", + "resource": "IotHubs", + "operation": "Read DPS service log definitions", + "description": "Gets the available log definitions for the DPS Service" + } + }, + { + "name": "Microsoft.Devices/checkProvisioningServiceNameAvailability/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServives", + "operation": "Check If Provisioning Service name is available", + "description": "Check If Provisioning Service name is available" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "Get Provisioning Service resource", + "description": "Get Provisioning Service resource" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/Write", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "Create Provisioning Service resource", + "description": "Create Provisioning Service resource" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/Delete", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "Delete Provisioning Service resource", + "description": "Delete Provisioning Service resource" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/skus/Read", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "Delete Provisioning Service resource", + "description": "Delete Provisioning Service resource" + } + }, + { + "name": "Microsoft.Devices/provisioningServices/listkeys/Action", + "display": { + "provider": "Microsoft Devices", + "resource": "ProvisioningServices", + "operation": "get security related metadata", + "description": "get security related metadata" + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_patch.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_patch.json new file mode 100644 index 000000000000..5bca99dfd85d --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_patch.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "resourceName": "myHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "location": "East US", + "type": "Microsoft.Devices/IotHubs", + "IotHubTags": { + "tags": { + "foo": "bar" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ae24ff83-d2ca-4fc8-9717-05dae4bba489/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub", + "name": "testHub", + "type": "Microsoft.Devices/IotHubs", + "location": "centraluseuap", + "tags": { + "foo": "bar" + }, + "etag": "AAAAAAFD6M4=", + "properties": { + "state": "Active", + "provisioningState": "Succeeded", + "ipFilterRules": [], + "hostName": "iot-dps-cit-hub-1.azure-devices.net", + "eventHubEndpoints": { + "events": { + "retentionTimeInDays": 1, + "partitionCount": 2, + "partitionIds": [ + "0", + "1" + ], + "path": "iot-dps-cit-hub-1", + "endpoint": "sb://iothub-ns-iot-dps-ci-245306-76aca8e13b.servicebus.windows.net/" + } + }, + "routing": { + "endpoints": { + "serviceBusQueues": [], + "serviceBusTopics": [], + "eventHubs": [], + "storageContainers": [] + }, + "routes": [], + "fallbackRoute": { + "name": "$fallback", + "source": "DeviceMessages", + "condition": "true", + "endpointNames": [ + "events" + ], + "isEnabled": true + } + }, + "storageEndpoints": { + "$default": { + "sasTtlAsIso8601": "PT1H", + "connectionString": "", + "containerName": "" + } + }, + "messagingEndpoints": { + "fileNotifications": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "enableFileUploadNotifications": false, + "cloudToDevice": { + "maxDeliveryCount": 10, + "defaultTtlAsIso8601": "PT1H", + "feedback": { + "lockDurationAsIso8601": "PT1M", + "ttlAsIso8601": "PT1H", + "maxDeliveryCount": 10 + } + }, + "features": "None" + }, + "sku": { + "name": "S1", + "tier": "Standard", + "capacity": 1 + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_quotametrics.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_quotametrics.json new file mode 100644 index 000000000000..2595fbd0d518 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_quotametrics.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "TotalMessages", + "currentValue": 0, + "maxValue": 400000 + }, + { + "name": "TotalDeviceCount", + "currentValue": 0, + "maxValue": 500000 + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_routingendpointhealth.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_routingendpointhealth.json new file mode 100644 index 000000000000..f0591c64f206 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_routingendpointhealth.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "iotHubName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "endpointId": "id1", + "healthStatus": "healthy" + }, + { + "endpointId": "id2", + "healthStatus": "unknown" + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_stats.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_stats.json new file mode 100644 index 000000000000..1a7bcb918e7e --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_stats.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2018-04-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "totalDeviceCount": 0, + "enabledDeviceCount": 0, + "disabledDeviceCount": 0 + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_testallroutes.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_testallroutes.json new file mode 100644 index 000000000000..d6b5ff32b995 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_testallroutes.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "iotHubName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "input": { + "routingSource": "DeviceMessages", + "message": { + "body": "Body of message", + "appProperties": { + "key1": "value1" + }, + "systemProperties": { + "key1": "value1" + } + } + } + }, + "responses": { + "200": { + "body": { + "routes": [ + { + "properties": { + "name": "Routeid", + "source": "DeviceMessages", + "endpointNames": [ + "id1" + ], + "isEnabled": true + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_testnewroute.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_testnewroute.json new file mode 100644 index 000000000000..c127a5dbbcbc --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_testnewroute.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "iotHubName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "input": { + "message": { + "body": "Body of message", + "appProperties": { + "key1": "value1" + }, + "systemProperties": { + "key1": "value1" + } + }, + "route": { + "name": "Routeid", + "source": "DeviceMessages", + "endpointNames": [ + "id1" + ], + "isEnabled": true + } + } + }, + "responses": { + "200": { + "body": { + "result": "false", + "details": { + "compilationErrors": [ + { + "message": "string response", + "severity": "error", + "location": { + "start": { + "line": 12, + "column": 12 + }, + "end": { + "line": 12, + "column": 24 + } + } + } + ] + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_updateprivateendpointconnection.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_updateprivateendpointconnection.json new file mode 100644 index 000000000000..2971665b887b --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_updateprivateendpointconnection.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "resourceName": "testHub", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0", + "privateEndpointConnectionName": "myPrivateEndpointConnection", + "privateEndpointConnection": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub/PrivateEndpointConnections/myPrivateEndpointConnection", + "name": "myPrivateEndpointConnection", + "type": "Microsoft.Devices/IotHubs/PrivateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/a9eba280-4734-4d49-878f-b5549d1d0453/resourceGroups/networkResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com", + "actionsRequired": "None" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/91d12660-3dec-467a-be2a-213b5544ddc0/resourceGroups/myResourceGroup/providers/Microsoft.Devices/IotHubs/testHub/PrivateEndpointConnections/myPrivateEndpointConnection", + "name": "myPrivateEndpointConnection", + "type": "Microsoft.Devices/IotHubs/PrivateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/a9eba280-4734-4d49-878f-b5549d1d0453/resourceGroups/networkResourceGroup/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_usages.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_usages.json new file mode 100644 index 000000000000..a34b4fcacd27 --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/examples/iothub_usages.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "91d12660-3dec-467a-be2a-213b5544ddc0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscription/91d12660-3dec-467a-be2a-213b5544ddc0/providers/Microsoft.Devices/usages/freeHubCount", + "type": "/subscription/91d12660-3dec-467a-be2a-213b5544ddc0/providers/Microsoft.Devices/usages", + "unit": "count", + "currentValue": 1, + "limit": 1, + "name": { + "value": "FreeHubCount", + "localizedValue": "Free Hub Count" + } + } + ] + } + } + } +} diff --git a/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/iothub.json b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/iothub.json new file mode 100644 index 000000000000..d00dd0132bfd --- /dev/null +++ b/specification/iothub/resource-manager/Microsoft.Devices/stable/2020-03-01/iothub.json @@ -0,0 +1,4144 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-03-01", + "title": "iotHubClient", + "description": "Use this API to manage the IoT hubs in your Azure subscription.", + "x-ms-code-generation-settings": { + "header": "MICROSOFT_MIT_NO_VERSION" + } + }, + "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": { + "/providers/Microsoft.Devices/operations": { + "get": { + "tags": [ + "Operations" + ], + "x-ms-examples": { + "Operations_List": { + "$ref": "./examples/iothub_operations.json" + } + }, + "operationId": "Operations_List", + "description": "Lists all of the available IoT Hub REST API operations.", + "parameters": [ + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the non-security related metadata of an IoT hub", + "description": "Get the non-security related metadata of an IoT hub.", + "operationId": "IotHubResource_Get", + "x-ms-examples": { + "IotHubResource_Get": { + "$ref": "./examples/iothub_get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "The body contains all the non-security properties of the IoT hub. Security-related properties are set to null.", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "put": { + "tags": [ + "PUT" + ], + "summary": "Create or update the metadata of an IoT hub.", + "description": "Create or update the metadata of an Iot hub. The usual pattern to modify a property is to retrieve the IoT hub metadata and security metadata, and then combine them with the modified values in a new body to update the IoT hub.", + "operationId": "IotHubResource_CreateOrUpdate", + "x-ms-examples": { + "IotHubResource_CreateOrUpdate": { + "$ref": "./examples/iothub_createOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "iotHubDescription", + "in": "body", + "description": "The IoT hub metadata and security metadata.", + "required": true, + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "ETag of the IoT Hub. Do not specify for creating a brand new IoT Hub. Required to update an existing IoT Hub." + } + ], + "responses": { + "201": { + "description": "This is a long running operation. The operation returns a 201 if the validation is complete. The response includes an Azure-AsyncOperation header that contains a status URL. Clients are expected to poll the status URL for the status of the operation. If successful, the operation returns HTTP status code of 201 (OK).", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "200": { + "description": "This is returned as a response to the status polling request for the create or update operation. The body contains the resource representation that indicates a transitional provisioning state.", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "patch": { + "tags": [ + "PATCH" + ], + "summary": "Update an existing IoT Hubs tags.", + "description": "Update an existing IoT Hub tags. to update other fields use the CreateOrUpdate method", + "x-ms-long-running-operation": true, + "operationId": "IotHubResource_Update", + "x-ms-examples": { + "IotHubResource_Update": { + "$ref": "./examples/iothub_patch.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Resource group identifier." + }, + { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of iot hub to update." + }, + { + "name": "IotHubTags", + "in": "body", + "required": true, + "description": "Updated tag information to set into the iot hub instance.", + "schema": { + "$ref": "#/definitions/TagsResource" + } + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Iot Hub was successfully updated", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + } + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ] + }, + "delete": { + "tags": [ + "DELETE" + ], + "summary": "Delete an IoT hub", + "description": "Delete an IoT hub.", + "operationId": "IotHubResource_Delete", + "x-ms-examples": { + "IotHubResource_Delete": { + "$ref": "./examples/iothub_delete.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "202": { + "description": "The Iot Hub resource provider always returns a 202 Accepted status code with valid Location and Retry-After headers. The resource provider also sets the Azure-AsyncOperation header with a URL that points to the operation resource for this operation. Subsequent GET attempts on the resource after a DELETE operation return a resource representation that indicates a transitional provisioning state (such as Terminating). To retrieve the status of the operation, a client can either poll the URL returned in the Location header after the Retry-After interval, get the IoT Hub service status directly, or query the operation resource.", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "200": { + "description": "This is returned as a response to the status polling request for the delete operation. The body contains the resource representation that indicates a transitional provisioning state.", + "schema": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "204": { + "description": "Once the long running delete operation completes successfully, a 204 No Content status code is returned when the status polling request finds the Iot hub metadata in the service and the status of the delete operation is set to a completed state." + }, + "404": { + "description": "After the long running delete operation completes successfully, a 404 Not Found is returned when the status polling request no longer finds the Iot hub metadata in the service.", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Devices/IotHubs": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get all the IoT hubs in a subscription", + "description": "Get all the IoT hubs in a subscription.", + "operationId": "IotHubResource_ListBySubscription", + "x-ms-examples": { + "IotHubResource_ListBySubscription": { + "$ref": "./examples/iothub_listbysubscription.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of the metadata from all the IoT hubs in the subscription.", + "schema": { + "$ref": "#/definitions/IotHubDescriptionListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get all the IoT hubs in a resource group", + "description": "Get all the IoT hubs in a resource group.", + "operationId": "IotHubResource_ListByResourceGroup", + "x-ms-examples": { + "IotHubResource_ListByResourceGroup": { + "$ref": "./examples/iothub_listbyrg.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of the metadata from all the IoT hubs in the resource group.", + "schema": { + "$ref": "#/definitions/IotHubDescriptionListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/IotHubStats": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the statistics from an IoT hub", + "description": "Get the statistics from an IoT hub.", + "operationId": "IotHubResource_GetStats", + "x-ms-examples": { + "IotHubResource_GetStats": { + "$ref": "./examples/iothub_stats.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains JSON-serialized statistics from the identity registry in the IoT hub.", + "schema": { + "$ref": "#/definitions/RegistryStatistics" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/skus": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the list of valid SKUs for an IoT hub", + "description": "Get the list of valid SKUs for an IoT hub.", + "operationId": "IotHubResource_GetValidSkus", + "x-ms-examples": { + "IotHubResource_GetValidSkus": { + "$ref": "./examples/iothub_getskus.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of the valid SKUs for this IoT hub.", + "schema": { + "$ref": "#/definitions/IotHubSkuDescriptionListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/eventHubEndpoints/{eventHubEndpointName}/ConsumerGroups": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get a list of the consumer groups in the Event Hub-compatible device-to-cloud endpoint in an IoT hub", + "description": "Get a list of the consumer groups in the Event Hub-compatible device-to-cloud endpoint in an IoT hub.", + "operationId": "IotHubResource_ListEventHubConsumerGroups", + "x-ms-examples": { + "IotHubResource_ListEventHubConsumerGroups": { + "$ref": "./examples/iothub_listehgroups.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "eventHubEndpointName", + "in": "path", + "description": "The name of the Event Hub-compatible endpoint.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized list of the consumer groups in the Event Hub-compatible endpoint in this IoT hub", + "schema": { + "$ref": "#/definitions/EventHubConsumerGroupsListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/eventHubEndpoints/{eventHubEndpointName}/ConsumerGroups/{name}": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get a consumer group from the Event Hub-compatible device-to-cloud endpoint for an IoT hub", + "description": "Get a consumer group from the Event Hub-compatible device-to-cloud endpoint for an IoT hub.", + "operationId": "IotHubResource_GetEventHubConsumerGroup", + "x-ms-examples": { + "IotHubResource_ListEventHubConsumerGroups": { + "$ref": "./examples/iothub_getconsumergroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "eventHubEndpointName", + "in": "path", + "description": "The name of the Event Hub-compatible endpoint in the IoT hub.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the consumer group to retrieve.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized consumer group.", + "schema": { + "$ref": "#/definitions/EventHubConsumerGroupInfo" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "put": { + "tags": [ + "PUT" + ], + "summary": "Add a consumer group to an Event Hub-compatible endpoint in an IoT hub", + "description": "Add a consumer group to an Event Hub-compatible endpoint in an IoT hub.", + "operationId": "IotHubResource_CreateEventHubConsumerGroup", + "x-ms-examples": { + "IotHubResource_CreateEventHubConsumerGroup": { + "$ref": "./examples/iothub_createconsumergroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "eventHubEndpointName", + "in": "path", + "description": "The name of the Event Hub-compatible endpoint in the IoT hub.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the consumer group to add.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation.", + "schema": { + "$ref": "#/definitions/EventHubConsumerGroupInfo" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "delete": { + "tags": [ + "DELETE" + ], + "summary": "Delete a consumer group from an Event Hub-compatible endpoint in an IoT hub", + "description": "Delete a consumer group from an Event Hub-compatible endpoint in an IoT hub.", + "operationId": "IotHubResource_DeleteEventHubConsumerGroup", + "x-ms-examples": { + "IotHubResource_DeleteEventHubConsumerGroup": { + "$ref": "./examples/iothub_deleteconsumergroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "eventHubEndpointName", + "in": "path", + "description": "The name of the Event Hub-compatible endpoint in the IoT hub.", + "required": true, + "type": "string" + }, + { + "name": "name", + "in": "path", + "description": "The name of the consumer group to delete.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation." + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/jobs": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get a list of all the jobs in an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry", + "description": "Get a list of all the jobs in an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry.", + "operationId": "IotHubResource_ListJobs", + "x-ms-examples": { + "IotHubResource_ListJobs": { + "$ref": "./examples/iothub_listjobs.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The response contains a JSON-serialized array of all the jobs in the IoT hub.", + "schema": { + "$ref": "#/definitions/JobResponseListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/jobs/{jobId}": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the details of a job from an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry", + "description": "Get the details of a job from an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry.", + "operationId": "IotHubResource_GetJob", + "x-ms-examples": { + "IotHubResource_GetJob": { + "$ref": "./examples/iothub_getjob.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "jobId", + "in": "path", + "description": "The job identifier.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The response contains a JSON-serialized description of the job in the IoT hub.", + "schema": { + "$ref": "#/definitions/JobResponse" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/quotaMetrics": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the quota metrics for an IoT hub", + "description": "Get the quota metrics for an IoT hub.", + "operationId": "IotHubResource_GetQuotaMetrics", + "x-ms-examples": { + "IotHubResource_GetQuotaMetrics": { + "$ref": "./examples/iothub_quotametrics.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The response contains a JSON-serialized array of the quota metrics for the IoT hub.", + "schema": { + "$ref": "#/definitions/IotHubQuotaMetricInfoListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{iotHubName}/routingEndpointsHealth": { + "get": { + "tags": [ + "GET" + ], + "operationId": "IotHubResource_GetEndpointHealth", + "summary": "Get the health for routing endpoints", + "description": "Get the health for routing endpoints.", + "x-ms-examples": { + "IotHubResource_GetEndpointHealth": { + "$ref": "./examples/iothub_routingendpointhealth.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "iotHubName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EndpointHealthDataListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Devices/checkNameAvailability": { + "post": { + "tags": [ + "POST" + ], + "summary": "Check if an IoT hub name is available", + "description": "Check if an IoT hub name is available.", + "operationId": "IotHubResource_CheckNameAvailability", + "x-ms-examples": { + "IotHubResource_CheckNameAvailability": { + "$ref": "./examples/checkNameAvailability.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "operationInputs", + "in": "body", + "description": "Set the name parameter in the OperationInputs structure to the name of the IoT hub to check.", + "required": true, + "schema": { + "$ref": "#/definitions/OperationInputs" + } + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized response that specifies whether the IoT hub name is available. If the name is not available, the body contains the reason.", + "schema": { + "$ref": "#/definitions/IotHubNameAvailabilityInfo" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Devices/usages": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the number of iot hubs in the subscription", + "description": "Get the number of free and paid iot hubs in the subscription", + "operationId": "ResourceProviderCommon_GetSubscriptionQuota", + "x-ms-examples": { + "ResourceProviderCommon_GetSubscriptionQuota": { + "$ref": "./examples/iothub_usages.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/UserSubscriptionQuotaListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{iotHubName}/routing/routes/$testall": { + "post": { + "tags": [ + "POST" + ], + "operationId": "IotHubResource_TestAllRoutes", + "summary": "Test all routes", + "description": "Test all routes configured in this Iot Hub", + "x-ms-examples": { + "IotHubResource_TestAllRoutes": { + "$ref": "./examples/iothub_testallroutes.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "input", + "description": "Input for testing all routes", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TestAllRoutesInput" + } + }, + { + "name": "iotHubName", + "description": "IotHub to be tested", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "description": "resource group which Iot Hub belongs to", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TestAllRoutesResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{iotHubName}/routing/routes/$testnew": { + "post": { + "tags": [ + "POST" + ], + "operationId": "IotHubResource_TestRoute", + "summary": "Test the new route", + "description": "Test the new route for this Iot Hub", + "x-ms-examples": { + "IotHubResource_TestRoute": { + "$ref": "./examples/iothub_testnewroute.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "input", + "description": "Route that needs to be tested", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TestRouteInput" + } + }, + { + "name": "iotHubName", + "description": "IotHub to be tested", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "description": "resource group which Iot Hub belongs to", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TestRouteResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/listkeys": { + "post": { + "tags": [ + "POST" + ], + "summary": "Get the security metadata for an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-security", + "description": "Get the security metadata for an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-security.", + "operationId": "IotHubResource_ListKeys", + "x-ms-examples": { + "IotHubResource_ListKeys": { + "$ref": "./examples/iothub_listkeys.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of shared access policies, including keys, that you can use to access the IoT hub endpoints.", + "schema": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRuleListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/IotHubKeys/{keyName}/listkeys": { + "post": { + "tags": [ + "POST" + ], + "summary": "Get a shared access policy by name from an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-security", + "description": "Get a shared access policy by name from an IoT hub. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-security.", + "operationId": "IotHubResource_GetKeysForKeyName", + "x-ms-examples": { + "IotHubResource_GetKeysForKeyName": { + "$ref": "./examples/iothub_getkey.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the shared access policy.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized shared access policy, including keys, that you can use to access one or more IoT hub endpoints.", + "schema": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRule" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/exportDevices": { + "post": { + "tags": [ + "POST" + ], + "summary": "Exports all the device identities in the IoT hub identity registry to an Azure Storage blob container. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry#import-and-export-device-identities", + "description": "Exports all the device identities in the IoT hub identity registry to an Azure Storage blob container. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry#import-and-export-device-identities.", + "operationId": "IotHubResource_ExportDevices", + "x-ms-examples": { + "IotHubResource_ExportDevices": { + "$ref": "./examples/iothub_exportdevices.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "exportDevicesParameters", + "in": "body", + "description": "The parameters that specify the export devices operation.", + "required": true, + "schema": { + "$ref": "#/definitions/ExportDevicesRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JobResponse" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/importDevices": { + "post": { + "tags": [ + "POST" + ], + "summary": "Import, update, or delete device identities in the IoT hub identity registry from a blob. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry#import-and-export-device-identities", + "description": "Import, update, or delete device identities in the IoT hub identity registry from a blob. For more information, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-identity-registry#import-and-export-device-identities.", + "operationId": "IotHubResource_ImportDevices", + "x-ms-examples": { + "IotHubResource_ImportDevices": { + "$ref": "./examples/iothub_importdevices.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "importDevicesParameters", + "in": "body", + "description": "The parameters that specify the import devices operation.", + "required": true, + "schema": { + "$ref": "#/definitions/ImportDevicesRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JobResponse" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/certificates": { + "get": { + "tags": [ + "Certificates" + ], + "summary": "Get the certificate list.", + "description": "Returns the list of certificates.", + "operationId": "Certificates_ListByIotHub", + "x-ms-examples": { + "Certificates_ListByIotHub": { + "$ref": "./examples/iothub_listcertificates.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "The body contains all the certificate list.", + "schema": { + "$ref": "#/definitions/CertificateListDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/certificates/{certificateName}": { + "get": { + "tags": [ + "Certificates" + ], + "summary": "Get the certificate.", + "description": "Returns the certificate.", + "operationId": "Certificates_Get", + "x-ms-examples": { + "Certificates_Get": { + "$ref": "./examples/iothub_getcertificate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/certificateName" + } + ], + "responses": { + "200": { + "description": "The body contains the certificate.", + "schema": { + "$ref": "#/definitions/CertificateDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "put": { + "tags": [ + "Certificates" + ], + "summary": "Upload the certificate to the IoT hub.", + "description": "Adds new or replaces existing certificate.", + "operationId": "Certificates_CreateOrUpdate", + "x-ms-examples": { + "Certificates_CreateOrUpdate": { + "$ref": "./examples/iothub_certificatescreateorupdate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/certificateName" + }, + { + "name": "certificateDescription", + "in": "body", + "description": "The certificate body.", + "required": true, + "schema": { + "$ref": "#/definitions/CertificateBodyDescription" + } + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "ETag of the Certificate. Do not specify for creating a brand new certificate. Required to update an existing certificate." + } + ], + "responses": { + "201": { + "description": "If certificate didn't exist creation was successful, the operation returns HTTP status code of 201 (OK).", + "schema": { + "$ref": "#/definitions/CertificateDescription" + } + }, + "200": { + "description": "If certificate already exist and update was successful, the operation returns HTTP status code of 201 (OK).", + "schema": { + "$ref": "#/definitions/CertificateDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "delete": { + "tags": [ + "Certificates" + ], + "summary": "Delete an X509 certificate.", + "description": "Deletes an existing X509 certificate or does nothing if it does not exist.", + "operationId": "Certificates_Delete", + "x-ms-examples": { + "Certificates_Delete": { + "$ref": "./examples/iothub_certificatesdelete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/certificateName" + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "ETag of the Certificate." + } + ], + "responses": { + "200": { + "description": "Certificate has been deleted." + }, + "204": { + "description": "Certificate does not exist." + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/certificates/{certificateName}/generateVerificationCode": { + "post": { + "tags": [ + "Certificates" + ], + "summary": "Generate verification code for proof of possession flow.", + "description": "Generates verification code for proof of possession flow. The verification code will be used to generate a leaf certificate.", + "operationId": "Certificates_GenerateVerificationCode", + "x-ms-examples": { + "Certificates_GenerateVerificationCode": { + "$ref": "./examples/iothub_generateverificationcode.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/certificateName" + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "ETag of the Certificate." + } + ], + "responses": { + "200": { + "description": "The body contains the certificate.", + "schema": { + "$ref": "#/definitions/CertificateWithNonceDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{resourceName}/certificates/{certificateName}/verify": { + "post": { + "tags": [ + "Certificates" + ], + "summary": "Verify certificate's private key possession.", + "description": "Verifies the certificate's private key possession by providing the leaf cert issued by the verifying pre uploaded certificate.", + "operationId": "Certificates_Verify", + "x-ms-examples": { + "Certificates_Verify": { + "$ref": "./examples/iothub_certverify.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/certificateName" + }, + { + "name": "certificateVerificationBody", + "in": "body", + "description": "The name of the certificate", + "required": true, + "schema": { + "$ref": "#/definitions/CertificateVerificationDescription" + } + }, + { + "name": "If-Match", + "in": "header", + "required": true, + "type": "string", + "description": "ETag of the Certificate." + } + ], + "responses": { + "200": { + "description": "The body contains the certificate.", + "schema": { + "$ref": "#/definitions/CertificateDescription" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/IotHubs/{iotHubName}/failover": { + "post": { + "tags": [ + "POST" + ], + "operationId": "IotHub_ManualFailover", + "summary": "Manually initiate a failover for the IoT Hub to its secondary region", + "description": "Manually initiate a failover for the IoT Hub to its secondary region. To learn more, see https://aka.ms/manualfailover", + "x-ms-examples": { + "IotHub_ManualFailover": { + "$ref": "./examples/IotHub_ManualFailover.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "parameters": [ + { + "name": "iotHubName", + "description": "Name of the IoT hub to failover", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "failoverInput", + "description": "Region to failover to. Must be the Azure paired region. Get the value from the secondary location in the locations property. To learn more, see https://aka.ms/manualfailover/region", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FailoverInput" + } + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "resourceGroupName", + "description": "Name of the resource group containing the IoT hub resource", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "Long running manual failover operation for the IoT hub completed" + }, + "202": { + "description": "Manual failover initiated" + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/iotHubs/{resourceName}/privateLinkResources": { + "get": { + "tags": [ + "GET" + ], + "summary": "List private link resources", + "description": "List private link resources for the given IotHub", + "operationId": "PrivateLinkResources_List", + "x-ms-examples": { + "PrivateLinkResources_List": { + "$ref": "./examples/iothub_listprivatelinkresources.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "The body contains the list of private link resources", + "schema": { + "$ref": "#/definitions/PrivateLinkResources" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/iotHubs/{resourceName}/privateLinkResources/{groupId}": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get the specified private link resource", + "description": "Get the specified private link resource for the given IotHub", + "operationId": "PrivateLinkResources_Get", + "x-ms-examples": { + "PrivateLinkResources_List": { + "$ref": "./examples/iothub_getprivatelinkresources.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/groupId" + } + ], + "responses": { + "200": { + "description": "The body contains the specified of private link resource", + "schema": { + "$ref": "#/definitions/GroupIdInformation" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/iotHubs/{resourceName}/privateEndpointConnections": { + "get": { + "tags": [ + "GET" + ], + "summary": "List private endpoint connections", + "description": "List private endpoint connection properties", + "operationId": "PrivateEndpointConnections_List", + "x-ms-examples": { + "PrivateEndpointConnections_List": { + "$ref": "./examples/iothub_listprivateendpointconnections.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "The body contains the list of private endpoint connection properties", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionsList" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Devices/iotHubs/{resourceName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "GET" + ], + "summary": "Get private endpoint connection", + "description": "Get private endpoint connection properties", + "operationId": "PrivateEndpointConnections_Get", + "x-ms-examples": { + "PrivateEndpointConnection_Get": { + "$ref": "./examples/iothub_getprivateendpointconnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/privateEndpointConnectionName" + } + ], + "responses": { + "200": { + "description": "The body contains the private endpoint connection properties", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "put": { + "tags": [ + "PUT" + ], + "summary": "Update private endpoint connection", + "description": "Update the status of a private endpoint connection with the specified name", + "operationId": "PrivateEndpointConnections_Update", + "x-ms-examples": { + "PrivateEndpointConnection_Update": { + "$ref": "./examples/iothub_updateprivateendpointconnection.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/privateEndpointConnectionName" + }, + { + "name": "privateEndpointConnection", + "in": "body", + "description": "The private endpoint connection with updated properties", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + ], + "responses": { + "201": { + "description": "This is a long running operation. The operation returns a 201 if the validation is complete. The response includes an Azure-AsyncOperation header that contains a status URL. Clients are expected to poll the status URL for the status of the operation. If successful, the operation returns HTTP status code of 201 (OK).", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "200": { + "description": "This is returned as a response to the status polling request for the update operation.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + }, + "delete": { + "tags": [ + "DELETE" + ], + "summary": "Delete private endpoint connection", + "description": "Delete private endpoint connection with the specified name", + "operationId": "PrivateEndpointConnections_Delete", + "x-ms-examples": { + "PrivateEndpointConnection_Delete": { + "$ref": "./examples/iothub_deleteprivateendpointconnection.json" + } + }, + "x-ms-long-running-operation": true, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/privateEndpointConnectionName" + } + ], + "responses": { + "202": { + "description": "This is a long running operation. The operation returns a 202 if the validation is complete. The response includes an Azure-AsyncOperation header that contains a status URL. Clients are expected to poll the status URL for the status of the operation.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "200": { + "description": "This is returned as a response to the status polling request for the delete operation.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "204": { + "description": "PrivateEndpoint does not exist." + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "deprecated": false + } + } + }, + "definitions": { + "CertificateVerificationDescription": { + "description": "The JSON-serialized leaf certificate", + "type": "object", + "properties": { + "certificate": { + "description": "base-64 representation of X509 certificate .cer file or just .pem file content.", + "type": "string" + } + } + }, + "CertificateListDescription": { + "description": "The JSON-serialized array of Certificate objects.", + "type": "object", + "properties": { + "value": { + "description": "The array of Certificate objects.", + "type": "array", + "items": { + "$ref": "#/definitions/CertificateDescription" + } + } + } + }, + "CertificateBodyDescription": { + "description": "The JSON-serialized X509 Certificate.", + "type": "object", + "properties": { + "certificate": { + "description": "base-64 representation of the X509 leaf certificate .cer file or just .pem file content.", + "type": "string" + } + } + }, + "CertificateDescription": { + "description": "The X509 Certificate.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/CertificateProperties" + }, + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "name": { + "description": "The name of the certificate.", + "type": "string", + "readOnly": true + }, + "etag": { + "description": "The entity tag.", + "type": "string", + "readOnly": true + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + } + }, + "x-ms-azure-resource": true + }, + "CertificateWithNonceDescription": { + "description": "The X509 Certificate.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/CertificatePropertiesWithNonce" + }, + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "name": { + "description": "The name of the certificate.", + "type": "string", + "readOnly": true + }, + "etag": { + "description": "The entity tag.", + "type": "string", + "readOnly": true + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + } + }, + "x-ms-azure-resource": true + }, + "SharedAccessSignatureAuthorizationRule": { + "description": "The properties of an IoT hub shared access policy.", + "type": "object", + "properties": { + "keyName": { + "description": "The name of the shared access policy.", + "type": "string" + }, + "primaryKey": { + "description": "The primary key.", + "type": "string" + }, + "secondaryKey": { + "description": "The secondary key.", + "type": "string" + }, + "rights": { + "description": "The permissions assigned to the shared access policy.", + "enum": [ + "RegistryRead", + "RegistryWrite", + "ServiceConnect", + "DeviceConnect", + "RegistryRead, RegistryWrite", + "RegistryRead, ServiceConnect", + "RegistryRead, DeviceConnect", + "RegistryWrite, ServiceConnect", + "RegistryWrite, DeviceConnect", + "ServiceConnect, DeviceConnect", + "RegistryRead, RegistryWrite, ServiceConnect", + "RegistryRead, RegistryWrite, DeviceConnect", + "RegistryRead, ServiceConnect, DeviceConnect", + "RegistryWrite, ServiceConnect, DeviceConnect", + "RegistryRead, RegistryWrite, ServiceConnect, DeviceConnect" + ], + "type": "string", + "x-ms-enum": { + "name": "AccessRights", + "modelAsString": false + } + } + }, + "required": [ + "keyName", + "rights" + ] + }, + "CertificateProperties": { + "description": "The description of an X509 CA Certificate.", + "type": "object", + "properties": { + "subject": { + "description": "The certificate's subject name.", + "type": "string", + "readOnly": true + }, + "expiry": { + "description": "The certificate's expiration date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "thumbprint": { + "description": "The certificate's thumbprint.", + "type": "string", + "readOnly": true + }, + "isVerified": { + "description": "Determines whether certificate has been verified.", + "type": "boolean", + "readOnly": true + }, + "created": { + "description": "The certificate's create date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "updated": { + "description": "The certificate's last update date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "certificate": { + "description": "The certificate content", + "type": "string" + } + } + }, + "CertificatePropertiesWithNonce": { + "description": "The description of an X509 CA Certificate including the challenge nonce issued for the Proof-Of-Possession flow.", + "type": "object", + "properties": { + "subject": { + "description": "The certificate's subject name.", + "type": "string", + "readOnly": true + }, + "expiry": { + "description": "The certificate's expiration date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "thumbprint": { + "description": "The certificate's thumbprint.", + "type": "string", + "readOnly": true + }, + "isVerified": { + "description": "Determines whether certificate has been verified.", + "type": "boolean", + "readOnly": true + }, + "created": { + "description": "The certificate's create date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "updated": { + "description": "The certificate's last update date and time.", + "type": "string", + "format": "date-time-rfc1123", + "readOnly": true + }, + "verificationCode": { + "description": "The certificate's verification code that will be used for proof of possession.", + "type": "string", + "readOnly": true + }, + "certificate": { + "description": "The certificate content", + "type": "string", + "readOnly": true + } + } + }, + "IotHubProperties": { + "description": "The properties of an IoT hub.", + "type": "object", + "properties": { + "authorizationPolicies": { + "description": "The shared access policies you can use to secure a connection to the IoT hub.", + "type": "array", + "items": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRule" + } + }, + "publicNetworkAccess": { + "type": "string", + "description": "Whether requests from Public Network are allowed", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "modelAsString": true, + "name": "PublicNetworkAccess" + } + }, + "ipFilterRules": { + "description": "The IP filter rules.", + "type": "array", + "items": { + "$ref": "#/definitions/IpFilterRule" + } + }, + "privateEndpointConnections": { + "description": "Private endpoint connections created on this IotHub", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "provisioningState": { + "description": "The provisioning state.", + "type": "string", + "readOnly": true + }, + "state": { + "description": "The hub state.", + "type": "string", + "readOnly": true + }, + "hostName": { + "description": "The name of the host.", + "type": "string", + "readOnly": true + }, + "eventHubEndpoints": { + "description": "The Event Hub-compatible endpoint properties. The only possible keys to this dictionary is events. This key has to be present in the dictionary while making create or update calls for the IoT hub.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/EventHubProperties" + } + }, + "routing": { + "$ref": "#/definitions/RoutingProperties" + }, + "storageEndpoints": { + "description": "The list of Azure Storage endpoints where you can upload files. Currently you can configure only one Azure Storage account and that MUST have its key as $default. Specifying more than one storage account causes an error to be thrown. Not specifying a value for this property when the enableFileUploadNotifications property is set to True, causes an error to be thrown.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/StorageEndpointProperties" + } + }, + "messagingEndpoints": { + "description": "The messaging endpoint properties for the file upload notification queue.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/MessagingEndpointProperties" + } + }, + "enableFileUploadNotifications": { + "description": "If True, file upload notifications are enabled.", + "type": "boolean" + }, + "cloudToDevice": { + "$ref": "#/definitions/CloudToDeviceProperties" + }, + "comments": { + "description": "IoT hub comments.", + "type": "string" + }, + "features": { + "description": "The capabilities and features enabled for the IoT hub.", + "enum": [ + "None", + "DeviceManagement" + ], + "type": "string", + "x-ms-enum": { + "name": "Capabilities", + "modelAsString": true + } + }, + "locations": { + "description": "Primary and secondary location for iot hub", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/IotHubLocationDescription" + } + } + } + }, + "IotHubSkuInfo": { + "description": "Information about the SKU of the IoT hub.", + "type": "object", + "properties": { + "name": { + "description": "The name of the SKU.", + "enum": [ + "F1", + "S1", + "S2", + "S3", + "B1", + "B2", + "B3" + ], + "type": "string", + "x-ms-enum": { + "name": "IotHubSku", + "modelAsString": true + } + }, + "tier": { + "description": "The billing tier for the IoT hub.", + "enum": [ + "Free", + "Standard", + "Basic" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "IotHubSkuTier", + "modelAsString": false + } + }, + "capacity": { + "format": "int64", + "description": "The number of provisioned IoT Hub units. See: https://docs.microsoft.com/azure/azure-subscription-service-limits#iot-hub-limits.", + "type": "integer" + } + }, + "required": [ + "name" + ] + }, + "EventHubProperties": { + "description": "The properties of the provisioned Event Hub-compatible endpoint used by the IoT hub.", + "type": "object", + "properties": { + "retentionTimeInDays": { + "format": "int64", + "description": "The retention time for device-to-cloud messages in days. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#device-to-cloud-messages", + "type": "integer" + }, + "partitionCount": { + "format": "int32", + "description": "The number of partitions for receiving device-to-cloud messages in the Event Hub-compatible endpoint. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#device-to-cloud-messages.", + "type": "integer" + }, + "partitionIds": { + "description": "The partition ids in the Event Hub-compatible endpoint.", + "readOnly": true, + "type": "array", + "items": { + "type": "string" + } + }, + "path": { + "description": "The Event Hub-compatible name.", + "type": "string", + "readOnly": true + }, + "endpoint": { + "description": "The Event Hub-compatible endpoint.", + "type": "string", + "readOnly": true + } + } + }, + "StorageEndpointProperties": { + "description": "The properties of the Azure Storage endpoint for file upload.", + "type": "object", + "properties": { + "sasTtlAsIso8601": { + "description": "The period of time for which the SAS URI generated by IoT Hub for file upload is valid. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload#file-upload-notification-configuration-options.", + "type": "string", + "format": "duration" + }, + "connectionString": { + "description": "The connection string for the Azure Storage account to which files are uploaded.", + "type": "string" + }, + "containerName": { + "description": "The name of the root container where you upload files. The container need not exist but should be creatable using the connectionString specified.", + "type": "string" + }, + "authenticationType": { + "description": "Specifies authentication type being used for connecting to the storage account.", + "enum": [ + "keyBased", + "identityBased" + ], + "type": "string", + "x-ms-enum": { + "name": "AuthenticationType", + "modelAsString": true + } + } + }, + "required": [ + "connectionString", + "containerName" + ] + }, + "MessagingEndpointProperties": { + "description": "The properties of the messaging endpoints used by this IoT hub.", + "type": "object", + "properties": { + "lockDurationAsIso8601": { + "description": "The lock duration. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload.", + "type": "string", + "format": "duration" + }, + "ttlAsIso8601": { + "description": "The period of time for which a message is available to consume before it is expired by the IoT hub. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload.", + "type": "string", + "format": "duration" + }, + "maxDeliveryCount": { + "description": "The number of times the IoT hub attempts to deliver a message. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload.", + "format": "int32", + "type": "integer", + "minimum": 1, + "maximum": 100 + } + } + }, + "CloudToDeviceProperties": { + "description": "The IoT hub cloud-to-device messaging properties.", + "type": "object", + "properties": { + "maxDeliveryCount": { + "description": "The max delivery count for cloud-to-device messages in the device queue. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages.", + "format": "int32", + "type": "integer", + "minimum": 1, + "maximum": 100 + }, + "defaultTtlAsIso8601": { + "description": "The default time to live for cloud-to-device messages in the device queue. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages.", + "type": "string", + "format": "duration" + }, + "feedback": { + "$ref": "#/definitions/FeedbackProperties" + } + } + }, + "IpFilterRule": { + "description": "The IP filter rules for the IoT hub.", + "type": "object", + "properties": { + "filterName": { + "description": "The name of the IP filter rule.", + "type": "string" + }, + "action": { + "description": "The desired action for requests captured by this rule.", + "enum": [ + "Accept", + "Reject" + ], + "type": "string", + "x-ms-enum": { + "name": "IpFilterActionType", + "modelAsString": false + } + }, + "ipMask": { + "description": "A string that contains the IP address range in CIDR notation for the rule.", + "type": "string" + } + }, + "required": [ + "filterName", + "action", + "ipMask" + ] + }, + "PrivateLinkResources": { + "description": "The available private link resources for an IotHub", + "type": "object", + "properties": { + "value": { + "description": "The list of available private link resources for an IotHub", + "type": "array", + "items": { + "$ref": "#/definitions/GroupIdInformation" + } + } + } + }, + "GroupIdInformation": { + "description": "The group information for creating a private endpoint on an IotHub", + "type": "object", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The resource name.", + "pattern": "^(?![0-9]+$)(?!-)[a-zA-Z0-9-]{2,49}[a-zA-Z0-9]$" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "properties": { + "$ref": "#/definitions/GroupIdInformationProperties" + } + }, + "required": [ + "properties" + ] + }, + "GroupIdInformationProperties": { + "description": "The properties for a group information object", + "type": "object", + "properties": { + "groupId": { + "type": "string", + "description": "The group id" + }, + "requiredMembers": { + "description": "The required members for a specific group id", + "type": "array", + "items": { + "type": "string" + } + }, + "requiredZoneNames": { + "description": "The required DNS zones for a specific group id", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "PrivateEndpointConnectionsList": { + "description": "The list of private endpoint connections for an IotHub", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "PrivateEndpointConnection": { + "description": "The private endpoint connection of an IotHub", + "x-ms-azure-resource": true, + "type": "object", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The resource name.", + "pattern": "^(?![0-9]+$)(?!-)[a-zA-Z0-9-]{2,49}[a-zA-Z0-9]$" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties" + } + }, + "required": [ + "properties" + ] + }, + "PrivateEndpointConnectionProperties": { + "description": "The properties of a private endpoint connection", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState" + } + }, + "required": [ + "privateLinkServiceConnectionState" + ] + }, + "PrivateEndpoint": { + "description": "The private endpoint property of a private endpoint connection", + "type": "object", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + } + } + }, + "PrivateLinkServiceConnectionState": { + "description": "The current state of a private endpoint connection", + "type": "object", + "properties": { + "status": { + "description": "The status of a private endpoint connection", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ], + "type": "string", + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStatus", + "modelAsString": true + } + }, + "description": { + "type": "string", + "description": "The description for the current state of a private endpoint connection" + }, + "actionsRequired": { + "type": "string", + "description": "Actions required for a private endpoint connection" + } + }, + "required": [ + "status", + "description" + ] + }, + "FeedbackProperties": { + "description": "The properties of the feedback queue for cloud-to-device messages.", + "type": "object", + "properties": { + "lockDurationAsIso8601": { + "description": "The lock duration for the feedback queue. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages.", + "type": "string", + "format": "duration" + }, + "ttlAsIso8601": { + "description": "The period of time for which a message is available to consume before it is expired by the IoT hub. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages.", + "type": "string", + "format": "duration" + }, + "maxDeliveryCount": { + "description": "The number of times the IoT hub attempts to deliver a message on the feedback queue. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages.", + "format": "int32", + "type": "integer", + "minimum": 1, + "maximum": 100 + } + } + }, + "RoutingProperties": { + "description": "The routing related properties of the IoT hub. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging", + "type": "object", + "properties": { + "endpoints": { + "$ref": "#/definitions/RoutingEndpoints" + }, + "routes": { + "description": "The list of user-provided routing rules that the IoT hub uses to route messages to built-in and custom endpoints. A maximum of 100 routing rules are allowed for paid hubs and a maximum of 5 routing rules are allowed for free hubs.", + "type": "array", + "items": { + "$ref": "#/definitions/RouteProperties" + } + }, + "fallbackRoute": { + "description": "The properties of the route that is used as a fall-back route when none of the conditions specified in the 'routes' section are met. This is an optional parameter. When this property is not set, the messages which do not meet any of the conditions specified in the 'routes' section get routed to the built-in eventhub endpoint.", + "$ref": "#/definitions/FallbackRouteProperties" + }, + "enrichments": { + "description": "The list of user-provided enrichments that the IoT hub applies to messages to be delivered to built-in and custom endpoints. See: https://aka.ms/telemetryoneventgrid", + "type": "array", + "items": { + "$ref": "#/definitions/EnrichmentProperties" + } + } + } + }, + "RoutingEndpoints": { + "description": "The properties related to the custom endpoints to which your IoT hub routes messages based on the routing rules. A maximum of 10 custom endpoints are allowed across all endpoint types for paid hubs and only 1 custom endpoint is allowed across all endpoint types for free hubs.", + "type": "object", + "properties": { + "serviceBusQueues": { + "description": "The list of Service Bus queue endpoints that IoT hub routes the messages to, based on the routing rules.", + "type": "array", + "items": { + "$ref": "#/definitions/RoutingServiceBusQueueEndpointProperties" + } + }, + "serviceBusTopics": { + "description": "The list of Service Bus topic endpoints that the IoT hub routes the messages to, based on the routing rules.", + "type": "array", + "items": { + "$ref": "#/definitions/RoutingServiceBusTopicEndpointProperties" + } + }, + "eventHubs": { + "description": "The list of Event Hubs endpoints that IoT hub routes messages to, based on the routing rules. This list does not include the built-in Event Hubs endpoint.", + "type": "array", + "items": { + "$ref": "#/definitions/RoutingEventHubProperties" + } + }, + "storageContainers": { + "description": "The list of storage container endpoints that IoT hub routes messages to, based on the routing rules.", + "type": "array", + "items": { + "$ref": "#/definitions/RoutingStorageContainerProperties" + } + } + } + }, + "RoutingServiceBusQueueEndpointProperties": { + "description": "The properties related to service bus queue endpoint types.", + "type": "object", + "properties": { + "id": { + "description": "Id of the service bus queue endpoint", + "type": "string" + }, + "connectionString": { + "description": "The connection string of the service bus queue endpoint.", + "type": "string" + }, + "endpointUri": { + "description": "The url of the service bus queue endpoint. It must include the protocol sb://", + "type": "string" + }, + "entityPath": { + "description": "Queue name on the service bus namespace", + "type": "string" + }, + "authenticationType": { + "description": "Method used to authenticate against the service bus queue endpoint", + "enum": [ + "keyBased", + "identityBased" + ], + "type": "string", + "x-ms-enum": { + "name": "authenticationType", + "modelAsString": true + } + }, + "name": { + "description": "The name that identifies this endpoint. The name can only include alphanumeric characters, periods, underscores, hyphens and has a maximum length of 64 characters. The following names are reserved: events, fileNotifications, $default. Endpoint names must be unique across endpoint types. The name need not be the same as the actual queue name.", + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + "subscriptionId": { + "description": "The subscription identifier of the service bus queue endpoint.", + "type": "string" + }, + "resourceGroup": { + "description": "The name of the resource group of the service bus queue endpoint.", + "type": "string" + } + }, + "required": [ + "name" + ] + }, + "RoutingServiceBusTopicEndpointProperties": { + "description": "The properties related to service bus topic endpoint types.", + "type": "object", + "properties": { + "id": { + "description": "Id of the service bus topic endpoint", + "type": "string" + }, + "connectionString": { + "description": "The connection string of the service bus topic endpoint.", + "type": "string" + }, + "endpointUri": { + "description": "The url of the service bus topic endpoint. It must include the protocol sb://", + "type": "string" + }, + "entityPath": { + "description": "Queue name on the service bus topic", + "type": "string" + }, + "authenticationType": { + "description": "Method used to authenticate against the service bus topic endpoint", + "enum": [ + "keyBased", + "identityBased" + ], + "type": "string", + "x-ms-enum": { + "name": "authenticationType", + "modelAsString": true + } + }, + "name": { + "description": "The name that identifies this endpoint. The name can only include alphanumeric characters, periods, underscores, hyphens and has a maximum length of 64 characters. The following names are reserved: events, fileNotifications, $default. Endpoint names must be unique across endpoint types. The name need not be the same as the actual topic name.", + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + "subscriptionId": { + "description": "The subscription identifier of the service bus topic endpoint.", + "type": "string" + }, + "resourceGroup": { + "description": "The name of the resource group of the service bus topic endpoint.", + "type": "string" + } + }, + "required": [ + "name" + ] + }, + "RoutingEventHubProperties": { + "description": "The properties related to an event hub endpoint.", + "type": "object", + "properties": { + "id": { + "description": "Id of the event hub endpoint", + "type": "string" + }, + "connectionString": { + "description": "The connection string of the event hub endpoint. ", + "type": "string" + }, + "endpointUri": { + "description": "The url of the event hub endpoint. It must include the protocol sb://", + "type": "string" + }, + "entityPath": { + "description": "Event hub name on the event hub namespace", + "type": "string" + }, + "authenticationType": { + "description": "Method used to authenticate against the event hub endpoint", + "enum": [ + "keyBased", + "identityBased" + ], + "type": "string", + "x-ms-enum": { + "name": "authenticationType", + "modelAsString": true + } + }, + "name": { + "description": "The name that identifies this endpoint. The name can only include alphanumeric characters, periods, underscores, hyphens and has a maximum length of 64 characters. The following names are reserved: events, fileNotifications, $default. Endpoint names must be unique across endpoint types.", + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + "subscriptionId": { + "description": "The subscription identifier of the event hub endpoint.", + "type": "string" + }, + "resourceGroup": { + "description": "The name of the resource group of the event hub endpoint.", + "type": "string" + } + }, + "required": [ + "name" + ] + }, + "RoutingStorageContainerProperties": { + "description": "The properties related to a storage container endpoint.", + "type": "object", + "properties": { + "id": { + "description": "Id of the storage container endpoint", + "type": "string" + }, + "connectionString": { + "description": "The connection string of the storage account.", + "type": "string" + }, + "endpointUri": { + "description": "The url of the storage endpoint. It must include the protocol https://", + "type": "string" + }, + "authenticationType": { + "description": "Method used to authenticate against the storage endpoint", + "enum": [ + "keyBased", + "identityBased" + ], + "type": "string", + "x-ms-enum": { + "name": "authenticationType", + "modelAsString": true + } + }, + "name": { + "description": "The name that identifies this endpoint. The name can only include alphanumeric characters, periods, underscores, hyphens and has a maximum length of 64 characters. The following names are reserved: events, fileNotifications, $default. Endpoint names must be unique across endpoint types.", + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + "subscriptionId": { + "description": "The subscription identifier of the storage account.", + "type": "string" + }, + "resourceGroup": { + "description": "The name of the resource group of the storage account.", + "type": "string" + }, + "containerName": { + "description": "The name of storage container in the storage account.", + "type": "string" + }, + "fileNameFormat": { + "description": "File name format for the blob. Default format is {iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}. All parameters are mandatory but can be reordered.", + "type": "string" + }, + "batchFrequencyInSeconds": { + "description": "Time interval at which blobs are written to storage. Value should be between 60 and 720 seconds. Default value is 300 seconds.", + "format": "int32", + "type": "integer", + "maximum": 720, + "minimum": 60 + }, + "maxChunkSizeInBytes": { + "description": "Maximum number of bytes for each blob written to storage. Value should be between 10485760(10MB) and 524288000(500MB). Default value is 314572800(300MB).", + "format": "int32", + "type": "integer", + "maximum": 524288000, + "minimum": 10485760 + }, + "encoding": { + "description": "Encoding that is used to serialize messages to blobs. Supported values are 'avro', 'avrodeflate', and 'JSON'. Default value is 'avro'.", + "type": "string", + "enum": [ + "Avro", + "AvroDeflate", + "JSON" + ] + } + }, + "required": [ + "name", + "containerName" + ] + }, + "RouteProperties": { + "description": "The properties of a routing rule that your IoT hub uses to route messages to endpoints.", + "type": "object", + "properties": { + "name": { + "description": "The name of the route. The name can only include alphanumeric characters, periods, underscores, hyphens, has a maximum length of 64 characters, and must be unique.", + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + "source": { + "description": "The source that the routing rule is to be applied to, such as DeviceMessages.", + "enum": [ + "Invalid", + "DeviceMessages", + "TwinChangeEvents", + "DeviceLifecycleEvents", + "DeviceJobLifecycleEvents" + ], + "type": "string", + "x-ms-enum": { + "name": "RoutingSource", + "modelAsString": true + } + }, + "condition": { + "description": "The condition that is evaluated to apply the routing rule. If no condition is provided, it evaluates to true by default. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language", + "type": "string" + }, + "endpointNames": { + "description": "The list of endpoints to which messages that satisfy the condition are routed. Currently only one endpoint is allowed.", + "minItems": 1, + "maxItems": 1, + "type": "array", + "items": { + "type": "string" + } + }, + "isEnabled": { + "description": "Used to specify whether a route is enabled.", + "type": "boolean" + } + }, + "required": [ + "name", + "endpointNames", + "source", + "isEnabled" + ] + }, + "FallbackRouteProperties": { + "description": "The properties of the fallback route. IoT Hub uses these properties when it routes messages to the fallback endpoint.", + "type": "object", + "properties": { + "name": { + "description": "The name of the route. The name can only include alphanumeric characters, periods, underscores, hyphens, has a maximum length of 64 characters, and must be unique.", + "type": "string" + }, + "source": { + "description": "The source to which the routing rule is to be applied to. For example, DeviceMessages", + "enum": [ + "DeviceMessages" + ], + "type": "string", + "x-ms-enum": { + "name": "RoutingSource", + "modelAsString": true + } + }, + "condition": { + "description": "The condition which is evaluated in order to apply the fallback route. If the condition is not provided it will evaluate to true by default. For grammar, See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language", + "type": "string" + }, + "endpointNames": { + "description": "The list of endpoints to which the messages that satisfy the condition are routed to. Currently only 1 endpoint is allowed.", + "minItems": 1, + "maxItems": 1, + "type": "array", + "items": { + "type": "string" + } + }, + "isEnabled": { + "description": "Used to specify whether the fallback route is enabled.", + "type": "boolean" + } + }, + "required": [ + "endpointNames", + "source", + "isEnabled" + ] + }, + "EnrichmentProperties": { + "description": "The properties of an enrichment that your IoT hub applies to messages delivered to endpoints.", + "type": "object", + "properties": { + "key": { + "description": "The key or name for the enrichment property.", + "type": "string" + }, + "value": { + "description": "The value for the enrichment property.", + "type": "string" + }, + "endpointNames": { + "description": "The list of endpoints for which the enrichment is applied to the message.", + "minItems": 1, + "type": "array", + "items": { + "type": "string" + } + } + }, + "required": [ + "key", + "value", + "endpointNames" + ] + }, + "IotHubDescription": { + "description": "The description of the IoT hub.", + "type": "object", + "properties": { + "etag": { + "description": "The Etag field is *not* required. If it is provided in the response body, it must also be provided as a header per the normal ETag convention.", + "type": "string" + }, + "properties": { + "description": "IotHub properties", + "$ref": "#/definitions/IotHubProperties" + }, + "sku": { + "description": "IotHub SKU info", + "$ref": "#/definitions/IotHubSkuInfo" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "required": [ + "sku" + ] + }, + "Resource": { + "description": "The common properties of an Azure resource.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The resource identifier." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The resource name.", + "pattern": "^(?![0-9]+$)(?!-)[a-zA-Z0-9-]{2,49}[a-zA-Z0-9]$" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "location": { + "type": "string", + "description": "The resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The resource tags." + } + }, + "x-ms-azure-resource": true, + "required": [ + "location" + ] + }, + "SharedAccessSignatureAuthorizationRuleListResult": { + "description": "The list of shared access policies with a next link.", + "type": "object", + "properties": { + "value": { + "description": "The list of shared access policies.", + "type": "array", + "items": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRule" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "OperationListResult": { + "description": "Result of the request to list IoT Hub operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "description": "List of IoT Hub operations supported by the Microsoft.Devices resource provider.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Operation" + } + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "Operation": { + "description": "IoT Hub REST API operation", + "type": "object", + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Operation name: {provider}/{resource}/{read | write | action | delete}" + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "provider": { + "readOnly": true, + "type": "string", + "description": "Service provider: Microsoft Devices" + }, + "resource": { + "readOnly": true, + "type": "string", + "description": "Resource Type: IotHubs" + }, + "operation": { + "readOnly": true, + "type": "string", + "description": "Name of the operation" + }, + "description": { + "readOnly": true, + "type": "string", + "description": "Description of the operation" + } + } + } + } + }, + "ErrorDetails": { + "description": "Error details.", + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "httpStatusCode": { + "description": "The HTTP status code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The error message.", + "type": "string", + "readOnly": true + }, + "details": { + "description": "The error details.", + "type": "string", + "readOnly": true + } + } + }, + "IotHubQuotaMetricInfoListResult": { + "description": "The JSON-serialized array of IotHubQuotaMetricInfo objects with a next link.", + "type": "object", + "properties": { + "value": { + "description": "The array of quota metrics objects.", + "type": "array", + "items": { + "$ref": "#/definitions/IotHubQuotaMetricInfo" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "EndpointHealthDataListResult": { + "description": "The JSON-serialized array of EndpointHealthData objects with a next link.", + "type": "object", + "properties": { + "value": { + "description": "JSON-serialized array of Endpoint health data", + "type": "array", + "items": { + "$ref": "#/definitions/EndpointHealthData" + } + }, + "nextLink": { + "description": "Link to more results", + "type": "string", + "readOnly": true + } + } + }, + "EndpointHealthData": { + "description": "The health data for an endpoint", + "type": "object", + "properties": { + "endpointId": { + "description": "Id of the endpoint", + "type": "string" + }, + "healthStatus": { + "description": "Health statuses have following meanings. The 'healthy' status shows that the endpoint is accepting messages as expected. The 'unhealthy' status shows that the endpoint is not accepting messages as expected and IoT Hub is retrying to send data to this endpoint. The status of an unhealthy endpoint will be updated to healthy when IoT Hub has established an eventually consistent state of health. The 'dead' status shows that the endpoint is not accepting messages, after IoT Hub retried sending messages for the retrial period. See IoT Hub metrics to identify errors and monitor issues with endpoints. The 'unknown' status shows that the IoT Hub has not established a connection with the endpoint. No messages have been delivered to or rejected from this endpoint", + "enum": [ + "unknown", + "healthy", + "unhealthy", + "dead" + ], + "type": "string", + "x-ms-enum": { + "name": "EndpointHealthStatus", + "modelAsString": true + } + } + } + }, + "RegistryStatistics": { + "description": "Identity registry statistics.", + "type": "object", + "properties": { + "totalDeviceCount": { + "format": "int64", + "description": "The total count of devices in the identity registry.", + "type": "integer", + "readOnly": true + }, + "enabledDeviceCount": { + "format": "int64", + "description": "The count of enabled devices in the identity registry.", + "type": "integer", + "readOnly": true + }, + "disabledDeviceCount": { + "format": "int64", + "description": "The count of disabled devices in the identity registry.", + "type": "integer", + "readOnly": true + } + } + }, + "JobResponseListResult": { + "description": "The JSON-serialized array of JobResponse objects with a next link.", + "type": "object", + "properties": { + "value": { + "description": "The array of JobResponse objects.", + "type": "array", + "items": { + "$ref": "#/definitions/JobResponse" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "IotHubSkuDescription": { + "description": "SKU properties.", + "type": "object", + "properties": { + "resourceType": { + "description": "The type of the resource.", + "type": "string", + "readOnly": true + }, + "sku": { + "description": "The type of the resource.", + "$ref": "#/definitions/IotHubSkuInfo" + }, + "capacity": { + "description": "IotHub capacity", + "$ref": "#/definitions/IotHubCapacity" + } + }, + "required": [ + "sku", + "capacity" + ] + }, + "TagsResource": { + "properties": { + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "description": "A container holding only the Tags for a resource, allowing the user to update the tags on an IoT Hub instance." + }, + "IotHubCapacity": { + "description": "IoT Hub capacity information.", + "type": "object", + "properties": { + "minimum": { + "format": "int64", + "description": "The minimum number of units.", + "type": "integer", + "minimum": 1, + "maximum": 1, + "readOnly": true + }, + "maximum": { + "format": "int64", + "description": "The maximum number of units.", + "type": "integer", + "readOnly": true + }, + "default": { + "format": "int64", + "description": "The default number of units.", + "type": "integer", + "readOnly": true + }, + "scaleType": { + "description": "The type of the scaling enabled.", + "enum": [ + "Automatic", + "Manual", + "None" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "name": "IotHubScaleType", + "modelAsString": false + } + } + } + }, + "EventHubConsumerGroupsListResult": { + "description": "The JSON-serialized array of Event Hub-compatible consumer group names with a next link.", + "type": "object", + "properties": { + "value": { + "description": "List of consumer groups objects", + "type": "array", + "items": { + "$ref": "#/definitions/EventHubConsumerGroupInfo" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "EventHubConsumerGroupInfo": { + "description": "The properties of the EventHubConsumerGroupInfo object.", + "x-ms-azure-resource": true, + "type": "object", + "properties": { + "properties": { + "description": "The tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "id": { + "description": "The Event Hub-compatible consumer group identifier.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The Event Hub-compatible consumer group name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "the resource type.", + "type": "string", + "readOnly": true + }, + "etag": { + "description": "The etag.", + "type": "string", + "readOnly": true + } + } + }, + "IotHubSkuDescriptionListResult": { + "description": "The JSON-serialized array of IotHubSkuDescription objects with a next link.", + "type": "object", + "properties": { + "value": { + "description": "The array of IotHubSkuDescription.", + "type": "array", + "items": { + "$ref": "#/definitions/IotHubSkuDescription" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "JobResponse": { + "description": "The properties of the Job Response object.", + "type": "object", + "properties": { + "jobId": { + "description": "The job identifier.", + "type": "string", + "readOnly": true + }, + "startTimeUtc": { + "format": "date-time-rfc1123", + "description": "The start time of the job.", + "type": "string", + "readOnly": true + }, + "endTimeUtc": { + "format": "date-time-rfc1123", + "description": "The time the job stopped processing.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of the job.", + "enum": [ + "unknown", + "export", + "import", + "backup", + "readDeviceProperties", + "writeDeviceProperties", + "updateDeviceConfiguration", + "rebootDevice", + "factoryResetDevice", + "firmwareUpdate" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "JobType", + "modelAsString": true + } + }, + "status": { + "description": "The status of the job.", + "enum": [ + "unknown", + "enqueued", + "running", + "completed", + "failed", + "cancelled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "JobStatus", + "modelAsString": false + } + }, + "failureReason": { + "description": "If status == failed, this string containing the reason for the failure.", + "type": "string", + "readOnly": true + }, + "statusMessage": { + "description": "The status message for the job.", + "type": "string", + "readOnly": true + }, + "parentJobId": { + "description": "The job identifier of the parent job, if any.", + "type": "string", + "readOnly": true + } + } + }, + "IotHubDescriptionListResult": { + "description": "The JSON-serialized array of IotHubDescription objects with a next link.", + "type": "object", + "properties": { + "value": { + "description": "The array of IotHubDescription objects.", + "type": "array", + "items": { + "$ref": "#/definitions/IotHubDescription" + } + }, + "nextLink": { + "description": "The next link.", + "type": "string", + "readOnly": true + } + } + }, + "IotHubQuotaMetricInfo": { + "description": "Quota metrics properties.", + "type": "object", + "properties": { + "name": { + "description": "The name of the quota metric.", + "type": "string", + "readOnly": true + }, + "currentValue": { + "format": "int64", + "description": "The current value for the quota metric.", + "type": "integer", + "readOnly": true + }, + "maxValue": { + "format": "int64", + "description": "The maximum value of the quota metric.", + "type": "integer", + "readOnly": true + } + } + }, + "OperationInputs": { + "description": "Input values.", + "type": "object", + "properties": { + "name": { + "description": "The name of the IoT hub to check.", + "type": "string" + } + }, + "required": [ + "name" + ] + }, + "IotHubNameAvailabilityInfo": { + "description": "The properties indicating whether a given IoT hub name is available.", + "type": "object", + "properties": { + "nameAvailable": { + "description": "The value which indicates whether the provided name is available.", + "type": "boolean", + "readOnly": true + }, + "reason": { + "description": "The reason for unavailability.", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "IotHubNameUnavailabilityReason", + "modelAsString": false + } + }, + "message": { + "description": "The detailed reason message.", + "type": "string" + } + } + }, + "UserSubscriptionQuotaListResult": { + "type": "object", + "description": "Json-serialized array of User subscription quota response", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/UserSubscriptionQuota" + } + }, + "nextLink": { + "type": "string", + "readOnly": true + } + } + }, + "UserSubscriptionQuota": { + "description": "User subscription quota response", + "type": "object", + "properties": { + "id": { + "description": "IotHub type id", + "type": "string" + }, + "type": { + "description": "Response type", + "type": "string" + }, + "unit": { + "description": "Unit of IotHub type", + "type": "string" + }, + "currentValue": { + "description": "Current number of IotHub type", + "format": "int32", + "type": "integer" + }, + "limit": { + "description": "Numerical limit on IotHub type", + "format": "int32", + "type": "integer" + }, + "name": { + "description": "IotHub type", + "$ref": "#/definitions/Name" + } + } + }, + "Name": { + "description": "Name of Iot Hub type", + "type": "object", + "properties": { + "value": { + "description": "IotHub type", + "type": "string" + }, + "localizedValue": { + "description": "Localized value of name", + "type": "string" + } + } + }, + "TestAllRoutesInput": { + "description": "Input for testing all routes", + "type": "object", + "properties": { + "routingSource": { + "description": "Routing source", + "enum": [ + "Invalid", + "DeviceMessages", + "TwinChangeEvents", + "DeviceLifecycleEvents", + "DeviceJobLifecycleEvents" + ], + "type": "string", + "x-ms-enum": { + "name": "RoutingSource", + "modelAsString": true + } + }, + "message": { + "description": "Routing message", + "$ref": "#/definitions/RoutingMessage" + }, + "twin": { + "description": "Routing Twin Reference", + "$ref": "#/definitions/RoutingTwin" + } + } + }, + "RoutingTwin": { + "description": "Twin reference input parameter. This is an optional parameter", + "type": "object", + "properties": { + "tags": { + "description": "Twin Tags", + "type": "object" + }, + "properties": { + "properties": { + "desired": { + "description": "Twin desired properties", + "type": "object" + }, + "reported": { + "description": "Twin desired properties", + "type": "object" + } + } + } + } + }, + "RoutingMessage": { + "description": "Routing message", + "type": "object", + "properties": { + "body": { + "description": "Body of routing message", + "type": "string" + }, + "appProperties": { + "description": "App properties", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "systemProperties": { + "description": "System properties", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "TestAllRoutesResult": { + "description": "Result of testing all routes", + "type": "object", + "properties": { + "routes": { + "description": "JSON-serialized array of matched routes", + "type": "array", + "items": { + "$ref": "#/definitions/MatchedRoute" + } + } + } + }, + "MatchedRoute": { + "description": "Routes that matched", + "type": "object", + "properties": { + "properties": { + "description": "Properties of routes that matched", + "$ref": "#/definitions/RouteProperties" + } + } + }, + "TestRouteInput": { + "required": [ + "route" + ], + "description": "Input for testing route", + "type": "object", + "properties": { + "message": { + "description": "Routing message", + "$ref": "#/definitions/RoutingMessage" + }, + "route": { + "description": "Route properties", + "$ref": "#/definitions/RouteProperties" + }, + "twin": { + "description": "Routing Twin Reference", + "$ref": "#/definitions/RoutingTwin" + } + } + }, + "TestRouteResult": { + "description": "Result of testing one route", + "type": "object", + "properties": { + "result": { + "description": "Result of testing route", + "enum": [ + "undefined", + "false", + "true" + ], + "type": "string", + "x-ms-enum": { + "name": "TestResultStatus", + "modelAsString": true + } + }, + "details": { + "description": "Detailed result of testing route", + "$ref": "#/definitions/TestRouteResultDetails" + } + } + }, + "TestRouteResultDetails": { + "description": "Detailed result of testing a route", + "type": "object", + "properties": { + "compilationErrors": { + "description": "JSON-serialized list of route compilation errors", + "type": "array", + "items": { + "$ref": "#/definitions/RouteCompilationError" + } + } + } + }, + "RouteCompilationError": { + "description": "Compilation error when evaluating route", + "type": "object", + "properties": { + "message": { + "description": "Route error message", + "type": "string" + }, + "severity": { + "description": "Severity of the route error", + "enum": [ + "error", + "warning" + ], + "type": "string", + "x-ms-enum": { + "name": "RouteErrorSeverity", + "modelAsString": true + } + }, + "location": { + "description": "Location where the route error happened", + "$ref": "#/definitions/RouteErrorRange" + } + } + }, + "RouteErrorRange": { + "description": "Range of route errors", + "type": "object", + "properties": { + "start": { + "description": "Start where the route error happened", + "$ref": "#/definitions/RouteErrorPosition" + }, + "end": { + "description": "End where the route error happened", + "$ref": "#/definitions/RouteErrorPosition" + } + } + }, + "RouteErrorPosition": { + "description": "Position where the route error happened", + "type": "object", + "properties": { + "line": { + "description": "Line where the route error happened", + "format": "int32", + "type": "integer" + }, + "column": { + "description": "Column where the route error happened", + "format": "int32", + "type": "integer" + } + } + }, + "ExportDevicesRequest": { + "description": "Use to provide parameters when requesting an export of all devices in the IoT hub.", + "type": "object", + "properties": { + "exportBlobContainerUri": { + "description": "The export blob container URI.", + "type": "string" + }, + "excludeKeys": { + "description": "The value indicating whether keys should be excluded during export.", + "type": "boolean" + }, + "exportBlobName": { + "description": "The name of the blob that will be created in the provided output blob container. This blob will contain the exported device registry information for the IoT Hub.", + "type": "string" + }, + "authenticationType": { + "description": "Specifies authentication type being used for connecting to the storage account.", + "enum": [ + "keyBased", + "identityBased" + ], + "type": "string", + "x-ms-enum": { + "name": "AuthenticationType", + "modelAsString": true + } + } + }, + "required": [ + "exportBlobContainerUri", + "excludeKeys" + ] + }, + "ImportDevicesRequest": { + "description": "Use to provide parameters when requesting an import of all devices in the hub.", + "type": "object", + "properties": { + "inputBlobContainerUri": { + "description": "The input blob container URI.", + "type": "string" + }, + "outputBlobContainerUri": { + "description": "The output blob container URI.", + "type": "string" + }, + "inputBlobName": { + "description": "The blob name to be used when importing from the provided input blob container.", + "type": "string" + }, + "outputBlobName": { + "description": "The blob name to use for storing the status of the import job.", + "type": "string" + }, + "authenticationType": { + "description": "Specifies authentication type being used for connecting to the storage account.", + "enum": [ + "keyBased", + "identityBased" + ], + "type": "string", + "x-ms-enum": { + "name": "AuthenticationType", + "modelAsString": true + } + } + }, + "required": [ + "inputBlobContainerUri", + "outputBlobContainerUri" + ] + }, + "FailoverInput": { + "description": "Use to provide failover region when requesting manual Failover for a hub.", + "type": "object", + "properties": { + "failoverRegion": { + "description": "Region the hub will be failed over to", + "type": "string" + } + }, + "required": [ + "failoverRegion" + ] + }, + "IotHubLocationDescription": { + "description": "Public representation of one of the locations where a resource is provisioned.", + "type": "object", + "properties": { + "location": { + "description": "The name of the Azure region", + "type": "string" + }, + "role": { + "description": "The role of the region, can be either primary or secondary. The primary region is where the IoT hub is currently provisioned. The secondary region is the Azure disaster recovery (DR) paired region and also the region where the IoT hub can failover to.", + "enum": [ + "primary", + "secondary" + ], + "type": "string", + "x-ms-enum": { + "name": "IotHubReplicaRoleType", + "modelAsString": true + } + } + } + } + }, + "parameters": { + "subscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription identifier.", + "required": true, + "type": "string" + }, + "api-version": { + "name": "api-version", + "in": "query", + "description": "The version of the API.", + "required": true, + "type": "string" + }, + "resourceGroupName": { + "name": "resourceGroupName", + "description": "The name of the resource group that contains the IoT hub.", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "resourceName": { + "name": "resourceName", + "in": "path", + "description": "The name of the IoT hub.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "certificateName": { + "name": "certificateName", + "in": "path", + "description": "The name of the certificate", + "required": true, + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$", + "x-ms-parameter-location": "method" + }, + "groupId": { + "name": "groupId", + "in": "path", + "description": "The name of the private link resource", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "privateEndpointConnectionName": { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/iothub/resource-manager/readme.md b/specification/iothub/resource-manager/readme.md index 877cffa54cf0..8e78febbb821 100644 --- a/specification/iothub/resource-manager/readme.md +++ b/specification/iothub/resource-manager/readme.md @@ -26,18 +26,27 @@ These are the global settings for the IotHub API. ``` yaml openapi-type: arm -tag: package-2019-11 +tag: package-2020-03 ``` +### Tag: package-2020-03 + +These settings apply only when `--tag=package-2020-03` is specified on the command line. + +```yaml $(tag) == 'package-2020-03' +input-file: + - Microsoft.Devices/stable/2020-03-01/iothub.json +``` ### Tag: package-2019-11 These settings apply only when `--tag=package-2019-11` is specified on the command line. -```yaml $(tag) == 'package-2019-11' +``` yaml $(tag) == 'package-2019-11' input-file: - Microsoft.Devices/stable/2019-11-04/iothub.json ``` + ### Tag: package-preview-2019-07 These settings apply only when `--tag=package-preview-2019-07` is specified on the command line. @@ -177,6 +186,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(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 diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/BackupCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/BackupCertificate-example.json index a839a7cb5054..b712e531393c 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/BackupCertificate-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/BackupCertificate-example.json @@ -1,6 +1,7 @@ { "parameters": { - "certificateName": "testcert", + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "testcert", "api-version": "7.0-preview" }, "responses": { diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/BackupKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/BackupKey-example.json index 0d227c2810e1..5b6676a8723a 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/BackupKey-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/BackupKey-example.json @@ -1,5 +1,6 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "key-name": "testkey", "api-version": "7.0-preview" }, diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/BackupSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/BackupSecret-example.json index ac70f58a6232..fbfaed9fcafb 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/BackupSecret-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/BackupSecret-example.json @@ -1,5 +1,6 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "secret-name": "testsecret", "api-version": "7.0-preview" }, diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/CreateCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/CreateCertificate-example.json index 68f237edb19d..ac0e0d3b4a0b 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/CreateCertificate-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/CreateCertificate-example.json @@ -1,5 +1,6 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "certificate-name": "selfSignedCert01", "api-version": "7.0-preview", "parameters": { @@ -31,7 +32,7 @@ "responses": { "202": { "body": { - "id": "https://testvault1021.vault.azure.net/certificates/selfSignedCert01/pending", + "id": "https://myvault.vault.azure.net/certificates/selfSignedCert01/pending", "issuer": { "name": "Self" }, diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/CreateKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/CreateKey-example.json index a238e45105a9..6982adc52475 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/CreateKey-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/CreateKey-example.json @@ -1,5 +1,6 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "key-name": "CreateSoftKeyTest", "api-version": "7.0-preview", "parameters": { @@ -24,7 +25,7 @@ "200": { "body": { "key": { - "kid": "https://kv-sdk-test.vault-int.azure-int.net/keys/CreateSoftKeyTest/78deebed173b48e48f55abf87ed4cf71", + "kid": "https://myvault.vault.azure.net/keys/CreateSoftKeyTest/78deebed173b48e48f55abf87ed4cf71", "kty": "RSA", "key_ops": [ "encrypt", diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/DeleteCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/DeleteCertificate-example.json index 5a2af499ec2a..17ef2f56cf62 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/DeleteCertificate-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/DeleteCertificate-example.json @@ -1,17 +1,18 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "certificate-name": "importCert01", "api-version": "7.0-preview" }, "responses": { "200": { "body": { - "recoveryId": "https://kv-sdk-test.vault-int.azure-int.net/deletedcertificates/importCert01", + "recoveryId": "https://myvault.vault.azure.net/deletedcertificates/importCert01", "deletedDate": 1493938558, "scheduledPurgeDate": 1501714558, - "id": "https://kv-sdk-test.vault-int.azure-int.net/certificates/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", - "kid": "https://kv-sdk-test.vault-int.azure-int.net/keys/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", - "sid": "https://kv-sdk-test.vault-int.azure-int.net/secrets/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "id": "https://myvault.vault.azure.net/certificates/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "kid": "https://myvault.vault.azure.net/keys/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "sid": "https://myvault.vault.azure.net/secrets/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", "cer": "MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=", "attributes": { @@ -23,7 +24,7 @@ "recoveryLevel": "Recoverable+Purgeable" }, "policy": { - "id": "https://kv-sdk-test.vault-int.azure-int.net/certificates/importCert01/policy", + "id": "https://myvault.vault.azure.net/certificates/importCert01/policy", "key_props": { "exportable": true, "kty": "RSA", @@ -37,10 +38,7 @@ "subject": "CN=KeyVaultTest", "ekus": [], "key_usage": [], - "validity_months": 297, - "basic_constraints": { - "ca": false - } + "validity_months": 297 }, "lifetime_actions": [ { diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/DeleteCertificateContacts-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/DeleteCertificateContacts-example.json index 6e5fef8ff00b..60d761c9d728 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/DeleteCertificateContacts-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/DeleteCertificateContacts-example.json @@ -1,11 +1,12 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "api-version": "7.0-preview" }, "responses": { "200": { "body": { - "id": "https://karlaugsoftdeletesdk.vault-int.azure-int.net/certificates/contacts", + "id": "https://myvault.vault.azure.net/certificates/contacts", "contacts": [ { "email": "admin@contoso.com", diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/DeleteCertificateIssuer-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/DeleteCertificateIssuer-example.json index 81e6a4387c6b..7d109dfc0ded 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/DeleteCertificateIssuer-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/DeleteCertificateIssuer-example.json @@ -1,18 +1,18 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "issuer-name": "issuer01", "api-version": "7.0-preview" }, "responses": { "200": { "body": { - "id": "https://karlaugsoftdeletesdk.vault-int.azure-int.net/certificates/issuers/issuer01", + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer01", "provider": "Test", "credentials": { "account_id": "keyvaultuser" }, "org_details": { - "zip": 0, "admin_details": [ { "first_name": "John", diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/DeleteCertificateOperation-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/DeleteCertificateOperation-example.json index 9f70eddbd5ce..f706f40bf809 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/DeleteCertificateOperation-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/DeleteCertificateOperation-example.json @@ -1,12 +1,13 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "certificate-name": "deletedRequestedCert01", "api-version": "7.0-preview" }, "responses": { "200": { "body": { - "id": "https://testvault1021.vault.azure.net/certificates/deletedRequestedCert01/pending", + "id": "https://myvault.vault.azure.net/certificates/deletedRequestedCert01/pending", "issuer": { "name": "issuer03" }, diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/DeleteKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/DeleteKey-example.json index fa6c22cf55f6..54ae59c6b01f 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/DeleteKey-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/DeleteKey-example.json @@ -1,16 +1,17 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "key-name": "CreateSoftKeyTest", "api-version": "7.0-preview" }, "responses": { "200": { "body": { - "recoveryId": "https://kv-sdk-test.vault-int.azure-int.net/deletedkeys/CreateSoftKeyTest", + "recoveryId": "https://myvault.vault.azure.net/deletedkeys/CreateSoftKeyTest", "deletedDate": 1493942452, "scheduledPurgeDate": 1501718452, "key": { - "kid": "https://kv-sdk-test.vault-int.azure-int.net/keys/CreateSoftKeyTest/78deebed173b48e48f55abf87ed4cf71", + "kid": "https://myvault.vault.azure.net/keys/CreateSoftKeyTest/78deebed173b48e48f55abf87ed4cf71", "kty": "RSA", "key_ops": [ "encrypt", diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/DeleteSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/DeleteSecret-example.json index ff70c553c28e..a43ef5b0c458 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/DeleteSecret-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/DeleteSecret-example.json @@ -1,15 +1,16 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "secret-name": "GetDeletedSecretTest", "api-version": "7.0-preview" }, "responses": { "200": { "body": { - "recoveryId": "https://kv-sdk-test.vault-int.azure-int.net/deletedsecrets/GetDeletedSecretTest", + "recoveryId": "https://myvault.vault.azure.net/deletedsecrets/GetDeletedSecretTest", "deletedDate": 1493938433, "scheduledPurgeDate": 1501714433, - "id": "https://kv-sdk-test.vault-int.azure-int.net/secrets/GetDeletedSecretTest/b595353d9c39413d80626575b3b5d865", + "id": "https://myvault.vault.azure.net/secrets/GetDeletedSecretTest/b595353d9c39413d80626575b3b5d865", "attributes": { "enabled": true, "created": 1493938433, diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetCertificate-example.json index 247cb13f6545..73db17cd7c7f 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetCertificate-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetCertificate-example.json @@ -1,5 +1,6 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "certificate-name": "selfSignedCert01", "certificate-version": "pending", "api-version": "7.0-preview" @@ -7,15 +8,55 @@ "responses": { "200": { "body": { - "id": "https://testvault1021.vault.azure.net/certificates/selfSignedCert01/pending", - "issuer": { - "name": "Self" + "id": "https://myvault.vault.azure.net/certificates/selfSignedCert01/f60f2a4f8ae442cfb41ca2090bd4b769", + "kid": "https://myvault.vault.azure.net/keys/selfSignedCert01/f60f2a4f8ae442cfb41ca2090bd4b769", + "sid": "https://myvault.vault.azure.net/secrets/selfSignedCert01/f60f2a4f8ae442cfb41ca2090bd4b769", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "cer": "MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1493938289, + "updated": 1493938291, + "recoveryLevel": "Recoverable+Purgeable" }, - "csr": "MIIC4zCCAcsCAQAwGjEYMBYGA1UEAwwPKi5taWNyb3NvZnQuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqe8aINnShK+wQC8QU7fwsviQc9+yiOnqU3adXA6qNjn21HTdRBa7cyQIk1STxHIBLTT/GaEJwqsUi6UvZaPEHokOWsr1bP9M7xOPTicBcRyMrr6bOxsmGczYtu1z2TzzXDD7q7IEignE7/LowGEaIADCIU9iuWk7TiJ+1Q/VLh/B3xPsgVjY+n7zEQ53gBiDHSl7XfELfwmslOQ28TVNogUyXsxHcVxQQYJeI7HqqY448LeleK69Ld86lkBixLEm1pD7HSbEx3WI2lyUQAGR6hD3YFaiIWVpQeEyI7p1jmtQlnfZdEL4q9wdlEEcwd3h3PAZpEBhCixahF54fci3pwIDAQABoIGDMIGABgkqhkiG9w0BCQ4xczBxMA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwNQYDVR0RBC4wLIIWb25lZHJpdmUubWljcm9zb2Z0LmNvbYISeGJveC5taWNyb3NvZnQuY29tMAkGA1UdEwQCMAAwDQYJKoZIhvcNAQELBQADggEBACiLeghirF+yCuYGVUPDB3wKQJn2iLY1za9ncxCehIVqOkFK09AphzoxF6Yid90AKCaa/dT/Ohm7oTyVQ+YcZnT00LUNFVG48AOE8YDiw9tjAG9OORsAz80xnv2qaLw2TCVIQ6NjrI83LqAm1GJ8rAnpdD/ZTuWM7TvSO5g/jm/Q0oSuKpMgj3YxpwgB9Ac6YEfVzOnm76OkUcpvR5MS4BoTfRv4thdSnU+uwqxM+HtdSVTbHQeC2U/hM1cyzDMpl1rZRklmiEOoPUeDasEIBVTJhAxR8xAeKJJD7Wzj4mJPw4UMvF8zQZzW8EKYvB1hkVYY+HQ85L+XcXd8lco7hU4=", - "cancellation_requested": false, - "status": "completed", - "target": "https://testvault1021.vault.azure.net/certificates/selfSignedCert01", - "request_id": "6faacd568ab049a2803861e8dd3ae21f" + "policy": { + "id": "https://myvault.vault.azure.net/certificates/selfSignedCert01/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Unknown" + }, + "attributes": { + "enabled": true, + "created": 1493938289, + "updated": 1493938291 + } + } } } } diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetCertificateContacts-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetCertificateContacts-example.json index 6e5fef8ff00b..60d761c9d728 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetCertificateContacts-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetCertificateContacts-example.json @@ -1,11 +1,12 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "api-version": "7.0-preview" }, "responses": { "200": { "body": { - "id": "https://karlaugsoftdeletesdk.vault-int.azure-int.net/certificates/contacts", + "id": "https://myvault.vault.azure.net/certificates/contacts", "contacts": [ { "email": "admin@contoso.com", diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetCertificateIssuer-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetCertificateIssuer-example.json index 81e6a4387c6b..7d109dfc0ded 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetCertificateIssuer-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetCertificateIssuer-example.json @@ -1,18 +1,18 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "issuer-name": "issuer01", "api-version": "7.0-preview" }, "responses": { "200": { "body": { - "id": "https://karlaugsoftdeletesdk.vault-int.azure-int.net/certificates/issuers/issuer01", + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer01", "provider": "Test", "credentials": { "account_id": "keyvaultuser" }, "org_details": { - "zip": 0, "admin_details": [ { "first_name": "John", diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetCertificateIssuers-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetCertificateIssuers-example.json index 9ef51c5d9b06..6da4b4065965 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetCertificateIssuers-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetCertificateIssuers-example.json @@ -1,5 +1,6 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "api-version": "7.0-preview" }, "responses": { @@ -7,15 +8,15 @@ "body": { "value": [ { - "id": "https://karlaugsoftdeletesdk.vault-int.azure-int.net/certificates/issuers/issuer01", + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer01", "provider": "Test" }, { - "id": "https://karlaugsoftdeletesdk.vault-int.azure-int.net/certificates/issuers/issuer02", + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer02", "provider": "Test" }, { - "id": "https://karlaugsoftdeletesdk.vault-int.azure-int.net/certificates/issuers/issuer03", + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer03", "provider": "Test" } ], diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetCertificateOperation-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetCertificateOperation-example.json index 5ef3287ec1b1..ef7dd2cab838 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetCertificateOperation-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetCertificateOperation-example.json @@ -1,12 +1,13 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "certificate-name": "selfSignedCert01", "api-version": "7.0-preview" }, "responses": { "200": { "body": { - "id": "https://testvault1021.vault.azure.net/certificates/selfSignedCert01/pending", + "id": "https://myvault.vault.azure.net/certificates/selfSignedCert01/pending", "issuer": { "name": "Self" }, diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetCertificatePolicy-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetCertificatePolicy-example.json index 9dbcc169bb20..7fc85032ba6d 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetCertificatePolicy-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetCertificatePolicy-example.json @@ -1,12 +1,13 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "certificate-name": "updateCert01", "api-version": "7.0-preview" }, "responses": { "200": { "body": { - "id": "https://testvault1021.vault.azure.net/certificates/updateCert01/policy", + "id": "https://myvault.vault.azure.net/certificates/updateCert01/policy", "key_props": { "exportable": true, "kty": "RSA", @@ -20,10 +21,7 @@ "subject": "CN=KeyVaultTest", "ekus": [], "key_usage": [], - "validity_months": 297, - "basic_constraints": { - "ca": false - } + "validity_months": 297 }, "lifetime_actions": [ { diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetCertificateVersions-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetCertificateVersions-example.json index 5458cec4a9b9..c091dec83b46 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetCertificateVersions-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetCertificateVersions-example.json @@ -1,5 +1,6 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "certificate-name": "listVersionsCert01", "api-version": "7.0-preview" }, @@ -8,7 +9,7 @@ "body": { "value": [ { - "id": "https://karlaugsoftdeletesdk.vault-int.azure-int.net/certificates/listVersionsCert01/002ade539442463aba45c0efb42e3e84", + "id": "https://myvault.vault.azure.net/certificates/listVersionsCert01/002ade539442463aba45c0efb42e3e84", "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", "attributes": { "enabled": true, @@ -19,7 +20,7 @@ } }, { - "id": "https://karlaugsoftdeletesdk.vault-int.azure-int.net/certificates/listVersionsCert01/7fcb3e9eb8bf43f3a6ff4b9c3740801d", + "id": "https://myvault.vault.azure.net/certificates/listVersionsCert01/7fcb3e9eb8bf43f3a6ff4b9c3740801d", "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", "attributes": { "enabled": true, diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetCertificates-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetCertificates-example.json index c657f284a4c1..0c3de7e9c532 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetCertificates-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetCertificates-example.json @@ -1,5 +1,6 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "api-version": "7.0-preview" }, "responses": { @@ -7,7 +8,7 @@ "body": { "value": [ { - "id": "https://testvault1021.vault.azure.net/certificates/listCert01", + "id": "https://myvault.vault.azure.net/certificates/listCert01", "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", "attributes": { "enabled": true, @@ -18,7 +19,7 @@ } }, { - "id": "https://testvault1021.vault.azure.net/certificates/listCert02", + "id": "https://myvault.vault.azure.net/certificates/listCert02", "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", "attributes": { "enabled": true, diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetDeletedCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetDeletedCertificate-example.json index a3c9aadab809..c06f6417bd3a 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetDeletedCertificate-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetDeletedCertificate-example.json @@ -1,5 +1,6 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "certificate-name": "getDeletedCert", "api-version": "7.0-preview" }, @@ -7,12 +8,12 @@ "200": { "headers": {}, "body": { - "recoveryId": "https://kv-sdk-test.vault-int.azure-int.net/deletedcertificates/getDeletedCert", + "recoveryId": "https://myvault.vault.azure.net/deletedcertificates/getDeletedCert", "deletedDate": 1493938292, "scheduledPurgeDate": 1501714292, - "id": "https://kv-sdk-test.vault-int.azure-int.net/certificates/getDeletedCert/f60f2a4f8ae442cfb41ca2090bd4b769", - "kid": "https://kv-sdk-test.vault-int.azure-int.net/keys/getDeletedCert/f60f2a4f8ae442cfb41ca2090bd4b769", - "sid": "https://kv-sdk-test.vault-int.azure-int.net/secrets/getDeletedCert/f60f2a4f8ae442cfb41ca2090bd4b769", + "id": "https://myvault.vault.azure.net/certificates/getDeletedCert/f60f2a4f8ae442cfb41ca2090bd4b769", + "kid": "https://myvault.vault.azure.net/keys/getDeletedCert/f60f2a4f8ae442cfb41ca2090bd4b769", + "sid": "https://myvault.vault.azure.net/secrets/getDeletedCert/f60f2a4f8ae442cfb41ca2090bd4b769", "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", "cer": "MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=", "attributes": { @@ -24,7 +25,7 @@ "recoveryLevel": "Recoverable+Purgeable" }, "policy": { - "id": "https://kv-sdk-test.vault-int.azure-int.net/certificates/getDeletedCert/policy", + "id": "https://myvault.vault.azure.net/certificates/getDeletedCert/policy", "key_props": { "exportable": true, "kty": "RSA", @@ -38,10 +39,7 @@ "subject": "CN=KeyVaultTest", "ekus": [], "key_usage": [], - "validity_months": 297, - "basic_constraints": { - "ca": false - } + "validity_months": 297 }, "lifetime_actions": [ { diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetDeletedCertificates-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetDeletedCertificates-example.json index 1fbafb085fc0..24630e73a40d 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetDeletedCertificates-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetDeletedCertificates-example.json @@ -1,17 +1,18 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "api-version": "7.0-preview", - "maxresults": "1" + "maxresults": 1 }, "responses": { "200": { "body": { "value": [ { - "recoveryId": "https://kv-sdk-test.vault-int.azure-int.net/deletedcertificates/listdeletedcerttest0", + "recoveryId": "https://myvault.vault.azure.net/deletedcertificates/listdeletedcerttest0", "deletedDate": 1493937659, "scheduledPurgeDate": 1501713659, - "id": "https://kv-sdk-test.vault-int.azure-int.net/certificates/listdeletedcerttest0", + "id": "https://myvault.vault.azure.net/certificates/listdeletedcerttest0", "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", "attributes": { "enabled": true, @@ -23,7 +24,7 @@ } } ], - "nextLink": "https://kv-sdk-test.vault-int.azure-int.net:443/deletedcertificates?api-version=7.0-preview&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExMTIhTURBd01ETTVJV05sY25ScFptbGpZWFJsTDB4SlUxUkVSVXhGVkVWRVEwVlNWRlJGVTFRd0wxQlBURWxEV1NFd01EQXdNamdoT1RrNU9TMHhNaTB6TVZReU16bzFPVG8xT1M0NU9UazVPVGs1V2lFLSIsIlRhcmdldExvY2F0aW9uIjowfQ&maxresults=1" + "nextLink": "https://myvault.vault.azure.net:443/deletedcertificates?api-version=7.1&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExMTIhTURBd01ETTVJV05sY25ScFptbGpZWFJsTDB4SlUxUkVSVXhGVkVWRVEwVlNWRlJGVTFRd0wxQlBURWxEV1NFd01EQXdNamdoT1RrNU9TMHhNaTB6TVZReU16bzFPVG8xT1M0NU9UazVPVGs1V2lFLSIsIlRhcmdldExvY2F0aW9uIjowfQ&maxresults=1" } } } diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetDeletedKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetDeletedKey-example.json index fa6c22cf55f6..54ae59c6b01f 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetDeletedKey-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetDeletedKey-example.json @@ -1,16 +1,17 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "key-name": "CreateSoftKeyTest", "api-version": "7.0-preview" }, "responses": { "200": { "body": { - "recoveryId": "https://kv-sdk-test.vault-int.azure-int.net/deletedkeys/CreateSoftKeyTest", + "recoveryId": "https://myvault.vault.azure.net/deletedkeys/CreateSoftKeyTest", "deletedDate": 1493942452, "scheduledPurgeDate": 1501718452, "key": { - "kid": "https://kv-sdk-test.vault-int.azure-int.net/keys/CreateSoftKeyTest/78deebed173b48e48f55abf87ed4cf71", + "kid": "https://myvault.vault.azure.net/keys/CreateSoftKeyTest/78deebed173b48e48f55abf87ed4cf71", "kty": "RSA", "key_ops": [ "encrypt", diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetDeletedKeys-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetDeletedKeys-example.json index 32124c3da1a1..5ceb0712b861 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetDeletedKeys-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetDeletedKeys-example.json @@ -1,7 +1,8 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "api-version": "7.0-preview", - "maxresults": "1", + "maxresults": 1, "$skiptoken": "eyJOZXh0TWFya2VyIjoiMiE5MiFNREF3TURJeklXdGxlUzlNU1ZOVVJFVk1SVlJGUkV0RldWUkZVMVF3SVRBd01EQXlPQ0V5TURFM0xUQTFMVEEwVkRJeU9qRTJPakF5TGpnM09URXpOemxhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ" }, "responses": { @@ -9,10 +10,10 @@ "body": { "value": [ { - "recoveryId": "https://kv-sdk-test.vault-int.azure-int.net/deletedkeys/listdeletedkeytest0", + "recoveryId": "https://myvault.vault.azure.net/deletedkeys/listdeletedkeytest0", "deletedDate": 1493938031, "scheduledPurgeDate": 1501714031, - "kid": "https://kv-sdk-test.vault-int.azure-int.net/keys/listdeletedkeytest0", + "kid": "https://myvault.vault.azure.net/keys/listdeletedkeytest0", "attributes": { "enabled": true, "created": 1493938031, @@ -21,7 +22,7 @@ } } ], - "nextLink": "https://kv-sdk-test.vault-int.azure-int.net:443/deletedkeys?api-version=7.0-preview&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExMzYhTURBd01EVTJJV3RsZVM5TVNWTlVSRVZNUlZSRlJFdEZXVlJGVTFRd0x6RkRRa0ZGTkVaQk5qQTBNelJGTmtZNE9FUXdORE5GTkRFM09FUkNPVFE1SVRBd01EQXlPQ0V5TURFM0xUQTFMVEEwVkRJeU9qUTNPakU1TGpVeU1UZ3dPVEZhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ&maxresults=1" + "nextLink": "https://myvault.vault.azure.net:443/deletedkeys?api-version=7.1&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExMzYhTURBd01EVTJJV3RsZVM5TVNWTlVSRVZNUlZSRlJFdEZXVlJGVTFRd0x6RkRRa0ZGTkVaQk5qQTBNelJGTmtZNE9FUXdORE5GTkRFM09FUkNPVFE1SVRBd01EQXlPQ0V5TURFM0xUQTFMVEEwVkRJeU9qUTNPakU1TGpVeU1UZ3dPVEZhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ&maxresults=1" } } } diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetDeletedSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetDeletedSecret-example.json index ff70c553c28e..a43ef5b0c458 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetDeletedSecret-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetDeletedSecret-example.json @@ -1,15 +1,16 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "secret-name": "GetDeletedSecretTest", "api-version": "7.0-preview" }, "responses": { "200": { "body": { - "recoveryId": "https://kv-sdk-test.vault-int.azure-int.net/deletedsecrets/GetDeletedSecretTest", + "recoveryId": "https://myvault.vault.azure.net/deletedsecrets/GetDeletedSecretTest", "deletedDate": 1493938433, "scheduledPurgeDate": 1501714433, - "id": "https://kv-sdk-test.vault-int.azure-int.net/secrets/GetDeletedSecretTest/b595353d9c39413d80626575b3b5d865", + "id": "https://myvault.vault.azure.net/secrets/GetDeletedSecretTest/b595353d9c39413d80626575b3b5d865", "attributes": { "enabled": true, "created": 1493938433, diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetDeletedSecrets-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetDeletedSecrets-example.json index ebe9ce629c57..ccc1f2659a37 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetDeletedSecrets-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetDeletedSecrets-example.json @@ -1,7 +1,8 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "api-version": "7.0-preview", - "maxresults": "1", + "maxresults": 1, "$skiptoken": "eyJOZXh0TWFya2VyIjoiMiExMDAhTURBd01ESTVJWE5sWTNKbGRDOU1TVk5VUkVWTVJWUkZSRk5GUTFKRlZGUkZVMVF3SVRBd01EQXlPQ0V5TURFM0xUQTFMVEEwVkRFNU9qSTFPakU0TGpJNE5qUXdORFZhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ" }, "responses": { @@ -9,11 +10,11 @@ "body": { "value": [ { - "recoveryId": "https://kv-sdk-test.vault-int.azure-int.net/deletedsecrets/listdeletedsecrettest0", + "recoveryId": "https://myvault.vault.azure.net/deletedsecrets/listdeletedsecrettest0", "deletedDate": 1493937855, "scheduledPurgeDate": 1501713855, "contentType": "plainText", - "id": "https://kv-sdk-test.vault-int.azure-int.net/secrets/listdeletedsecrettest0", + "id": "https://myvault.vault.azure.net/secrets/listdeletedsecrettest0", "attributes": { "enabled": true, "created": 1493937855, @@ -22,7 +23,7 @@ } } ], - "nextLink": "https://kv-sdk-test.vault-int.azure-int.net:443/deletedsecrets?api-version=7.0-preview&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExNDQhTURBd01EWXlJWE5sWTNKbGRDOU1TVk5VUkVWTVJWUkZSRk5GUTFKRlZGUkZVMVF3THpZMU16ZERSRVJGTlRJNU5qUkRSa1pDTVRkQ1JVWXhORGszUXpSQ1JEZEVJVEF3TURBeU9DRXlNREUzTFRBMUxUQTBWREl5T2pRME9qUXdMamsxTnpZeE1UbGFJUS0tIiwiVGFyZ2V0TG9jYXRpb24iOjB9&maxresults=1" + "nextLink": "https://myvault.vault.azure.net:443/deletedsecrets?api-version=7.1&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExNDQhTURBd01EWXlJWE5sWTNKbGRDOU1TVk5VUkVWTVJWUkZSRk5GUTFKRlZGUkZVMVF3THpZMU16ZERSRVJGTlRJNU5qUkRSa1pDTVRkQ1JVWXhORGszUXpSQ1JEZEVJVEF3TURBeU9DRXlNREUzTFRBMUxUQTBWREl5T2pRME9qUXdMamsxTnpZeE1UbGFJUS0tIiwiVGFyZ2V0TG9jYXRpb24iOjB9&maxresults=1" } } } diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetKey-example.json index 3685be8a6aa9..9add060e4c3b 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetKey-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetKey-example.json @@ -1,5 +1,6 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "key-name": "CreateSoftKeyTest", "key-version": "78deebed173b48e48f55abf87ed4cf71", "api-version": "7.0-preview" @@ -8,7 +9,7 @@ "200": { "body": { "key": { - "kid": "https://kv-sdk-test.vault-int.azure-int.net/keys/CreateSoftKeyTest/78deebed173b48e48f55abf87ed4cf71", + "kid": "https://myvault.vault.azure.net/keys/CreateSoftKeyTest/78deebed173b48e48f55abf87ed4cf71", "kty": "RSA", "key_ops": [ "encrypt", diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetKeyVersions-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetKeyVersions-example.json index df8e30508004..e0364717114c 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetKeyVersions-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetKeyVersions-example.json @@ -1,8 +1,9 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "key-name": "listkeyversionstest", "api-version": "7.0-preview", - "maxresults": "1", + "maxresults": 1, "$skiptoken": "eyJOZXh0TWFya2VyIjoiMiExMzYhTURBd01EVTJJV3RsZVM5TVNWTlVTMFZaVmtWU1UwbFBUbE5VUlZOVUx6ZERPVVJETmpjM05VUXdSVFF4TnpjNE1qZERORVk1T0VZME9ESkdRekV5SVRBd01EQXlPQ0U1T1RrNUxURXlMVE14VkRJek9qVTVPalU1TGprNU9UazVPVGxhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ" }, "responses": { @@ -10,7 +11,7 @@ "body": { "value": [ { - "kid": "https://kv-sdk-test.vault-int.azure-int.net/keys/listkeyversionstest/7c9dc6775d0e4177827c4f98f482fc12", + "kid": "https://myvault.vault.azure.net/keys/listkeyversionstest/7c9dc6775d0e4177827c4f98f482fc12", "attributes": { "enabled": true, "created": 1493937851, @@ -19,7 +20,7 @@ } } ], - "nextLink": "https://kv-sdk-test.vault-int.azure-int.net:443/keys/listkeyversionstest/versions?api-version=7.0-preview&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExMzYhTURBd01EVTJJV3RsZVM5TVNWTlVTMFZaVmtWU1UwbFBUbE5VUlZOVUwwRXdPRUZDUVVVNE1UZ3pNalF5TVRsQ05EUXpPREZFTWpoRVJURkdSVEJESVRBd01EQXlPQ0U1T1RrNUxURXlMVE14VkRJek9qVTVPalU1TGprNU9UazVPVGxhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ&maxresults=1" + "nextLink": "https://myvault.vault.azure.net:443/keys/listkeyversionstest/versions?api-version=7.1&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExMzYhTURBd01EVTJJV3RsZVM5TVNWTlVTMFZaVmtWU1UwbFBUbE5VUlZOVUwwRXdPRUZDUVVVNE1UZ3pNalF5TVRsQ05EUXpPREZFTWpoRVJURkdSVEJESVRBd01EQXlPQ0U1T1RrNUxURXlMVE14VkRJek9qVTVPalU1TGprNU9UazVPVGxhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ&maxresults=1" } } } diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetKeys-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetKeys-example.json index fc022b1fc358..443d891b83ae 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetKeys-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetKeys-example.json @@ -1,7 +1,8 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "api-version": "7.0-preview", - "maxresults": "1", + "maxresults": 1, "$skiptoken": "eyJOZXh0TWFya2VyIjoiMiE4MCFNREF3TURFMElXdGxlUzlUUkV0VVJWTlVTMFZaSVRBd01EQXlPQ0V5TURFM0xUQXlMVEUzVkRBd09qQXhPakEyTGpnd056azBOemhhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ" }, "responses": { @@ -9,7 +10,7 @@ "body": { "value": [ { - "kid": "https://kv-sdk-test.vault-int.azure-int.net/keys/sdktestkey", + "kid": "https://myvault.vault.azure.net/keys/sdktestkey", "attributes": { "enabled": true, "created": 1493937656, @@ -18,7 +19,7 @@ } } ], - "nextLink": "https://kv-sdk-test.vault-int.azure-int.net:443/keys?api-version=7.0-preview&$skiptoken=eyJOZXh0TWFya2VyIjoiMiE5NiFNREF3TURJM0lXdGxlUzlWVUVSQlZFVkxSVmxCVkZSU1NVSlZWRVZUVkVWVFZDRXdNREF3TWpnaE1qQXhOeTB3TlMwd05GUXdNVG94TVRveE5pNDNNekE0TnpReVdpRS0iLCJUYXJnZXRMb2NhdGlvbiI6MH0&maxresults=1" + "nextLink": "https://myvault.vault.azure.net:443/keys?api-version=7.1&$skiptoken=eyJOZXh0TWFya2VyIjoiMiE5NiFNREF3TURJM0lXdGxlUzlWVUVSQlZFVkxSVmxCVkZSU1NVSlZWRVZUVkVWVFZDRXdNREF3TWpnaE1qQXhOeTB3TlMwd05GUXdNVG94TVRveE5pNDNNekE0TnpReVdpRS0iLCJUYXJnZXRMb2NhdGlvbiI6MH0&maxresults=1" } } } diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetSecret-example.json index ffd197f19a36..97977f4b0dc7 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetSecret-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetSecret-example.json @@ -1,5 +1,6 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "secret-name": "mysecretname", "secret-version": "4387e9f3d6e14c459867679a90fd0f79", "api-version": "7.0-preview" @@ -8,7 +9,7 @@ "200": { "body": { "value": "mysecretvalue", - "id": "https://kv-sdk-test.vault-int.azure-int.net/secrets/mysecretname/4387e9f3d6e14c459867679a90fd0f79", + "id": "https://myvault.vault.azure.net/secrets/mysecretname/4387e9f3d6e14c459867679a90fd0f79", "attributes": { "enabled": true, "created": 1493938410, diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetSecretVersions-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetSecretVersions-example.json index 06888b41321f..cf9a28d2a024 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetSecretVersions-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetSecretVersions-example.json @@ -1,15 +1,16 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "secret-name": "listsecretversionstest", "api-version": "7.0-preview", - "maxresults": "1" + "maxresults": 1 }, "responses": { "200": { "body": { "value": [ { - "id": "https://testvault1021.vault.azure.net/secrets/listsecretversionstest/11a536561da34d6b8b452d880df58f3a", + "id": "https://myvault.vault.azure.net/secrets/listsecretversionstest/11a536561da34d6b8b452d880df58f3a", "attributes": { "enabled": true, "created": 1481851699, @@ -17,7 +18,7 @@ } } ], - "nextLink": "https://testvault1021.vault.azure.net:443/secrets/listsecretversionstest/versions?api-version=7.0-preview&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExNDQhTURBd01EWXlJWE5sWTNKbGRDOU1TVk5VVTBWRFVrVlVWa1ZTVTBsUFRsTlVSVk5VTHpGRU5EazJNa0l4UlVRM09EUkVRa1k0T1RsR016TXpNa1UwTnpZNFFqY3dJVEF3TURBeU9DRTVPVGs1TFRFeUxUTXhWREl6T2pVNU9qVTVMams1T1RrNU9UbGFJUS0tIiwiVGFyZ2V0TG9jYXRpb24iOjB9&maxresults=1" + "nextLink": "https://myvault.vault.azure.net:443/secrets/listsecretversionstest/versions?api-version=7.1&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExNDQhTURBd01EWXlJWE5sWTNKbGRDOU1TVk5VVTBWRFVrVlVWa1ZTVTBsUFRsTlVSVk5VTHpGRU5EazJNa0l4UlVRM09EUkVRa1k0T1RsR016TXpNa1UwTnpZNFFqY3dJVEF3TURBeU9DRTVPVGs1TFRFeUxUTXhWREl6T2pVNU9qVTVMams1T1RrNU9UbGFJUS0tIiwiVGFyZ2V0TG9jYXRpb24iOjB9&maxresults=1" } } } diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetSecrets-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetSecrets-example.json index 76428d17076f..104e24af858d 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetSecrets-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/GetSecrets-example.json @@ -1,7 +1,8 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "api-version": "7.0-preview", - "maxresults": "1" + "maxresults": 1 }, "responses": { "200": { @@ -9,7 +10,7 @@ "value": [ { "contentType": "plainText", - "id": "https://testvault1021.vault.azure.net/secrets/listsecrettest0", + "id": "https://myvault.vault.azure.net/secrets/listsecrettest0", "attributes": { "enabled": true, "created": 1482189047, @@ -17,7 +18,7 @@ } } ], - "nextLink": "https://testvault1021.vault.azure.net:443/secrets?api-version=7.0-preview&$skiptoken=eyJOZXh0TWFya2VyIjoiMiE4OCFNREF3TURJeUlYTmxZM0psZEM5TVNWTlVVMFZEVWtWVVZFVlRWREVoTURBd01ESTRJVEl3TVRZdE1USXRNVGxVTWpNNk1UQTZORFV1T0RneE9ERXhNRm9oIiwiVGFyZ2V0TG9jYXRpb24iOjB9&maxresults=1" + "nextLink": "https://myvault.vault.azure.net:443/secrets?api-version=7.1&$skiptoken=eyJOZXh0TWFya2VyIjoiMiE4OCFNREF3TURJeUlYTmxZM0psZEM5TVNWTlVVMFZEVWtWVVZFVlRWREVoTURBd01ESTRJVEl3TVRZdE1USXRNVGxVTWpNNk1UQTZORFV1T0RneE9ERXhNRm9oIiwiVGFyZ2V0TG9jYXRpb24iOjB9&maxresults=1" } } } diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/ImportCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/ImportCertificate-example.json index c5a4616ddff8..b5e23eb1533e 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/ImportCertificate-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/ImportCertificate-example.json @@ -1,5 +1,6 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "certificate-name": "importCert01", "api-version": "7.0-preview", "parameters": { @@ -21,9 +22,9 @@ "responses": { "200": { "body": { - "id": "https://kv-sdk-test.vault-int.azure-int.net/certificates/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", - "kid": "https://kv-sdk-test.vault-int.azure-int.net/keys/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", - "sid": "https://kv-sdk-test.vault-int.azure-int.net/secrets/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "id": "https://myvault.vault.azure.net/certificates/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "kid": "https://myvault.vault.azure.net/keys/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "sid": "https://myvault.vault.azure.net/secrets/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", "cer": "MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=", "attributes": { @@ -35,7 +36,7 @@ "recoveryLevel": "Recoverable+Purgeable" }, "policy": { - "id": "https://kv-sdk-test.vault-int.azure-int.net/certificates/importCert01/policy", + "id": "https://myvault.vault.azure.net/certificates/importCert01/policy", "key_props": { "exportable": true, "kty": "RSA", @@ -49,10 +50,7 @@ "subject": "CN=KeyVaultTest", "ekus": [], "key_usage": [], - "validity_months": 297, - "basic_constraints": { - "ca": false - } + "validity_months": 297 }, "lifetime_actions": [ { diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/ImportKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/ImportKey-example.json index a329d88e31da..cda79fa3cd24 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/ImportKey-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/ImportKey-example.json @@ -1,5 +1,6 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "key-name": "ImportSoftKeyTest", "api-version": "7.0-preview", "parameters": { @@ -23,7 +24,7 @@ "200": { "body": { "key": { - "kid": "https://kv-sdk-test.vault-int.azure-int.net/keys/ImportSoftKeyTest/2eb4a15d74184c6f84159c3ca90f0f4b", + "kid": "https://myvault.vault.azure.net/keys/ImportSoftKeyTest/2eb4a15d74184c6f84159c3ca90f0f4b", "kty": "RSA", "key_ops": [ "encrypt", diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/MergeCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/MergeCertificate-example.json index 7dd537aba904..cff69469b22e 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/MergeCertificate-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/MergeCertificate-example.json @@ -1,5 +1,6 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "certificate-name": "testcert", "api-version": "7.0-preview", "parameters": { @@ -11,7 +12,7 @@ "responses": { "201": { "body": { - "id": "https://mykeyvault.vault.azure.net/certificates/mycert1/f366e1a9dd774288ad84a45a5f620352", + "id": "https://myvault.vault.azure.net/certificates/mycert1/f366e1a9dd774288ad84a45a5f620352", "kid": "https:// mykeyvault.vault.azure.net/keys/mycert1/f366e1a9dd774288ad84a45a5f620352", "sid": " mykeyvault.vault.azure.net/secrets/mycert1/f366e1a9dd774288ad84a45a5f620352", "cer": "……de34534……", @@ -23,9 +24,6 @@ "created": 1435699919, "updated": 1435699919 }, - "pending": { - "id": "https:// mykeyvault.vault.azure.net/certificates/mycert1/pending" - }, "policy": { "id": "https:// mykeyvault.vault.azure.net/certificates/mycert1/policy", "key_props": { diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/PurgeDeletedCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/PurgeDeletedCertificate-example.json index 1d54cb14b985..3032468ba344 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/PurgeDeletedCertificate-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/PurgeDeletedCertificate-example.json @@ -1,11 +1,10 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "certificate-name": "deletedcertificates", "api-version": "7.0-preview" }, "responses": { - "204": { - "body": "" - } + "204": {} } } diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/PurgeDeletedKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/PurgeDeletedKey-example.json index 9f0953506260..0a603c42b9ad 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/PurgeDeletedKey-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/PurgeDeletedKey-example.json @@ -1,11 +1,10 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "key-name": "testdeletedkey", "api-version": "7.0-preview" }, "responses": { - "204": { - "body": "" - } + "204": {} } } diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/PurgeDeletedSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/PurgeDeletedSecret-example.json index 91ecb3be1f33..222b08b1aca7 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/PurgeDeletedSecret-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/PurgeDeletedSecret-example.json @@ -1,11 +1,10 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "secret-name": "testsecret", "api-version": "7.0-preview" }, "responses": { - "204": { - "body": "" - } + "204": {} } } diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/RecoverDeletedCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/RecoverDeletedCertificate-example.json index 1d1f23b871a3..45d5d209030d 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/RecoverDeletedCertificate-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/RecoverDeletedCertificate-example.json @@ -1,14 +1,15 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "certificate-name": "CertCreateDeleteRecoverPurgeTest", "api-version": "7.0-preview" }, "responses": { "200": { "body": { - "id": "https://kv-sdk-test.vault-int.azure-int.net/certificates/CertCreateDeleteRecoverPurgeTest/9ff2572a2c3145679057da8b7f6a4b1d", - "kid": "https://kv-sdk-test.vault-int.azure-int.net/keys/CertCreateDeleteRecoverPurgeTest/9ff2572a2c3145679057da8b7f6a4b1d", - "sid": "https://kv-sdk-test.vault-int.azure-int.net/secrets/CertCreateDeleteRecoverPurgeTest/9ff2572a2c3145679057da8b7f6a4b1d", + "id": "https://myvault.vault.azure.net/certificates/CertCreateDeleteRecoverPurgeTest/9ff2572a2c3145679057da8b7f6a4b1d", + "kid": "https://myvault.vault.azure.net/keys/CertCreateDeleteRecoverPurgeTest/9ff2572a2c3145679057da8b7f6a4b1d", + "sid": "https://myvault.vault.azure.net/secrets/CertCreateDeleteRecoverPurgeTest/9ff2572a2c3145679057da8b7f6a4b1d", "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", "cer": "MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=", "attributes": { @@ -20,7 +21,7 @@ "recoveryLevel": "Recoverable+Purgeable" }, "policy": { - "id": "https://kv-sdk-test.vault-int.azure-int.net/certificates/CertCreateDeleteRecoverPurgeTest/policy", + "id": "https://myvault.vault.azure.net/certificates/CertCreateDeleteRecoverPurgeTest/policy", "key_props": { "exportable": true, "kty": "RSA", @@ -34,10 +35,7 @@ "subject": "CN=KeyVaultTest", "ekus": [], "key_usage": [], - "validity_months": 297, - "basic_constraints": { - "ca": false - } + "validity_months": 297 }, "lifetime_actions": [ { diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/RecoverDeletedKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/RecoverDeletedKey-example.json index 8aab34afd4b7..8a8e3733009e 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/RecoverDeletedKey-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/RecoverDeletedKey-example.json @@ -1,5 +1,6 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "key-name": "CreateDeleteRecoverPurgeTest", "api-version": "7.0-preview" }, @@ -7,7 +8,7 @@ "200": { "body": { "key": { - "kid": "https://kv-sdk-test.vault-int.azure-int.net/keys/CreateDeleteRecoverPurgeTest/6fc2be54c6be4a7ea7bbb8a2a99a1996", + "kid": "https://myvault.vault.azure.net/keys/CreateDeleteRecoverPurgeTest/6fc2be54c6be4a7ea7bbb8a2a99a1996", "kty": "RSA", "key_ops": [ "encrypt", diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/RecoverDeletedSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/RecoverDeletedSecret-example.json index 6faab6c77fb1..139a028d78eb 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/RecoverDeletedSecret-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/RecoverDeletedSecret-example.json @@ -1,12 +1,13 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "secret-name": "SecretCreateDeleteRecoverPurgeTest", "api-version": "7.0-preview" }, "responses": { "200": { "body": { - "id": "https://kv-sdk-test.vault-int.azure-int.net/secrets/SecretCreateDeleteRecoverPurgeTest/16f5f7feb7004280b7f3b8ac50cd01f9", + "id": "https://myvault.vault.azure.net/secrets/SecretCreateDeleteRecoverPurgeTest/16f5f7feb7004280b7f3b8ac50cd01f9", "attributes": { "enabled": true, "created": 1493937960, diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/RestoreCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/RestoreCertificate-example.json index 49e9eb32f5ed..a510c0f8b45e 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/RestoreCertificate-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/RestoreCertificate-example.json @@ -1,15 +1,17 @@ { "parameters": { - "certificateName": "testcert", - "api-version": "7.0-preview", - "value": "JkF6dXJlS2V5VmF1bHRLZXlCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUkwTXpnMVlqQTNZaTFrTlRRM0xUUXlaVFV0WVdVNVpTMDJNVEJrWXpNNVpHWmhaamdpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLm85bmpNWEFSZWVla2NaRXBsVTNjdUxQcVZlWmxFbGRDM01XOWpYR0h6bnBXRTdHRGVOSXJraGZscHdTWXFnQnBYQkozMFpUQkRpRmpROENXSnJfUGlsUWNDRkZyN0xrdWJhWUs0TW1zcVh5WGIzbkRJcUJkQmZIUVNpZ1ZET0J5Ym9sUlRNNDYzYjBTbXhLVzJheEdFS2NuZzQ5WFkycG1SR0Vrb0plcHJWZ0tyRkpOUGQ3cGJIS3hQSWdDOFlnT2xudnZxR280RlRDSzh0ZWotcUt2UzBfRGV6Uk5vdTZqZ25SekpxX0g2NGxWMk1hQ0NnUy0xbTlyOGVOTVVvSlhTV1hwc0lneng1RzdEbzIya1ZEY25vMW9rajlCMXNvbklkWmtuY1JybDJBVHNRZVlzZXdkUVd1VmhxRzVLN0pNQWo5YzBRdkxhTmlpdl9PY2pFcm5qUS4zbmI4azJ3SEcyNHFJelNNb184WG13LnJzc3NMNjJ1aUNfTm9IbG5zQlgzcEEtck1uY3g5R3V2NmJYSHpKamxwOWNMUnVaSDBSWlJYVXRwU3BPQWdyZ20tU3BxeEdWSjd2bmprbV9FSzJwYy1sZHNjUWtRSDB4bVFVcGZFNzN5b1VTYTNXVVNMS2VIVnJLdUg5MUtJR0tLODE5ejc5d1Y5Y0F3UjlzcHJxbFFWZnlKdlNFM2tnZTh1RVBpRFFVMFl5WnJqVjBsMGJCU3VkeTN1MVlsVHB6Wk1EWmpUcE05ZGtMclgtaGdxZ1FGa2xFa1hNRWlzd0RDZVM3Y3J2bFg1bnVzbWh5SkZCMklCd3dxNWJieHptV1diU3JOc3lFMmJmWEpXOWN4TFlQcnJJZFpfbkd0X29RSGVQcUFZTS1iVnpTdzdBRGJjMU15NTZwclBGLW9PSm40MHptOTBaaFBTVGMyQXNKRGFBa3R5WFU4WktOYUhFVUlHLWI1SGhUdFBuZ20wN0FrWEtQNngwaDhzZ3ZIaGdCeGpfdWRfQVpQc3pLWG1HdUhFTW9lRGhpT3NkQVdRR0pwR2t0NHVlbmZyamNSeXVlaXJiTC1RV3o4MEtZUnk1QklxbzVJc19RVHpWN2dqMGstYS0td24tazNsNTJ4YjhaNkRXd2tWZ3hqUlNXOXZnV0pVd2U5M1ZrVWtHM3NLRW5SOE9ueTNjWlhQVl9LbWtBTEdlR0ZzQm53SmQwY3dueTBCN2I5VWQyQ19kWEZ0N1BvbnFVNldfT016cC1Nb1NtRzRHbEFpUkVfQ3FrWlhkalhIMVItSmpObUNfdXlPUTdaN1BVaDAtNmd2YUxpcE1CamlWR1FwdzlEZDhmVmtCbWk4VW5uOUxPYXJmSXVtcEJyUE43TTJhM05KdjN6b0NkanhZVFVUMTN1aElpYWl3aExoUFZhT2pUbFRmTkpqbHhIbG5lbGJ1RWJsZTk0bVV1bW8wcjhKRlFMSDdfRjhXMVo0OC1BcjhYYXJwMXhIY0FReHk1WWYwclktdUU1dTAyRnRHUHlPZ0JfNV9WdFlNR2VfRE1mdENLOGVMZGFnVllMRDJDNDUxTldZeVVfeHdNUWdQbXBaMWFnSEdCb2s0ejhsSFBndVhCQ3R2WFFuTHBXQTVBamdOLWNoWjNwUGJmc2RkNjBhekJuWDVaVXQza2hYaWNDdWk4b0xidEtzQUdmckNOZzFwT2Q0MHBHMEJlVy1lNVE1WWQydjY4eFh5a2RiTXhFblFCM3Fzd1djVlh1QXBIR18wREZVVmZvSlc2aVBZcDNWVE51amM5M3QtMDcxWnlZbUZ4V0RfVThMYTAtM19RLV8yZ0pwMVBaVV8tMVBRM1huLXdSWk1vb3JkZGZQa1VPZ0lqdWkwa1IwZWt5RjZvdWdLNnJrSVZHaGp3YUp0ekdKczJLdGxncnRCcEs2MXZEaE5zbFR5VHU5OUp2T2RFTXhwRG5lTEg4NnlvVnhxT3lIT3lxNjByXzdpTHgtdy03Q3FzWTloT3dmQlBZZ3BQVlM2bm9oZVBocTkwaGJTX0lrM21YbnRkRUNMREtSMi1wWFh6bjlPRjZIN09EdHB4S0VXQkdCaHJ0Ykxmd2JZS3dmWmZSVTJVUHpkLUxFd1lQdDloU203Z3lSODNoYkZiSFNBV1cySncxRWl1c3FURWRsRW1lQ3k2cFp1MVFZWko0TUQ0OG5rVXMwdmVHUVhTU2Ytb2RhQm1fYjZZdVh1cWcyWk03MlZjUTd4ZzV4MmpFenFqcllmdjdTTGJINFZBcWp0aFg5LUdRaWEwWEZaS18xempIenhkd1B0R2lSOHJfMkFFZTgtRXFoNi1FaTZKdjRFZjYyMnRrNWFJUWx3R1pETWpGSVNuUkpRdV8xcnJiY1E3enZsbWhUSWFQcUJNRFVxeHBEOXNWUlhuSHdIaTl1b1BCUTllbWJIMkV5WDV6MEhWRXlDa1JEbUd3cmR2RGdsOFVzMUhURjVwYXlYZmF2WkZUZjl3WFZyQXpsRFBEQkFJVFMzWnVJMEJWR2pJUGV1SnRiako4S1pTczRFQVNRRTVyVjViTUpNQXcwa19nYkVRTEZGSjJVb0ZzcWU1QUszM2xGXzR5cGMxU0JaWjJfUzYtbEQyNkpyRFVJSjFFRmJhbWtoUk12bWJIT1Utc0hDT0lRcHdadlJzV3Q3NExSQ1ZyQ09jMGpUdE5TT1JPUW5XRHVXRlFXSzk1TkRGMG96WjIyLVFEMU9YOE9iU3daaHdOXzNfS1pHRmtVMEhNdzNjSTI5LWUxbFltRDV3cmJ0ZlRFbllOeHJKOGpuUWFBY2FoNy14Q0JKeUQ3elo1MXIzRVVyY2VnazBzc1dLeHRPVjRLcTZENmxuVmU3bFpUT1dfTU5aZi1JSzJUbnZCaVZIMHk0SkVGaUxzSDJHbTM1d28yYlZVaXJsT1ljVEk1NlZhdDhMRWhGaEotVlUyNk84NHo2dUJFZmJucEZLbmdKc3pfYVlucW1zNWV1bmd3ek5ndjdlT0U0cUdKSURyMTRBUXRWdEYxcWdrZHNnVllWVXg4U29SQ0NobE5VUzRNRGxhc1hwS1VmV19ENWIxbDRkbXZiNEZNRHJqakJ6djk5dGJSeGZFYUVOSFlYTHZFZnJ0b0pMeW9na2tmNkxlbVoxVDZRbnRtNlR4S1IycU81WU1vMnRJZHlQNmZNRmkweEYtdE1IaHNSdVN3VEpybW1nREcteHVpZllVNkpfaElSNkMzVmo2VkFMMW1oZy0xeW1pRXZuanVLbElONzc4NmFWdVNpNmx5TjJJNzZqY0R6SHZ0VW1ibkVvWWtORHNPQXdqQk9MNFBlS0VjR1hWcm5YNDJhNW5IRWM2cmZQdjZ0Q2tVSUI0UldIdzEyUTFiNDM2N1JvRS1PTWN3TnV6ampob1M0S1ZJbHo4UEFMOW9YYTR4NXlQeG1aVzZ0UUVna1pKeFhEcS00SWRtd1UzTnpVZUoxdGpNaXFsc0xRWDdlc29fTHRtTWJ3bm83YkI3bjRlVnZ4aUtQU3p3dW94c25aaGs1b3ZSSE1xU0NtZjU2MjJvUTZvWEdmNUJLWExlQWdqaE1Sd21razEtUzlGajlyc1hlT19VYjJOMF9hVEFLemlidXIxNVcxaHI3Wk1PVFlxOFlSSGVPaWxSX3Bkdjl5NTlDRDQ1WmE0ZXFURHVrNmRxZ1d4YnoyVVVtMnpwM3pvTHVKSVZ1Y3FIaUVRTVNfMnFKcy1xQTAwT2FFY3huZTM2Q1RsZVNwZjF5cjh2VjNWNW1mQU5zRnJBa21CMnBRWTNfZ21UbldTYTJ3UWlMa2RFRllPSExTeEk5UVowNHo4ZFRfbW5QMmIwWV96N3ZLa0VGQmFpNU02UFdPWjVIOUx1M3Rnay1fR0g0ODd6ZHpuQm0weWZZY3ZIOHJUd1QyQl9UZVRFMG4xcWFRdDRiQ0diUkFQNE1DTDl0SGlIcmlzWEllejQzZlZ3b1c4R2x4YmxKanlLWkpXbmlRNjlBYks3SmYyUER6d2NVSHhkZU5HNGxEZmt6WmFxU2lybGRzZlhXOHBGLWZ6WFVVWHR4eDF4Um5nQ1hJVkxLbU5ZbV9CNnNrNGo0VzROVFMwQTBOcFhsZGJCWjZWWmFDMDNvRHVGUFY0MGtwdWQ0WEd3Q1l3M244ZjFHb0Z6Sk42QjFqOTRLeTdtNE5YT1JsQ3ZaRW5qZTl6T241T1d1ZG9USWRoRzBobXVDUTZ6TXI2YkVaTUFoV1ZFdlREY19iXzZsOWdLWmVxNmVtekxvcmptOEQzLXcyLXRBYlE2Tmpjd0J3eEhMZzlCRllRRFdvaU9UVmJKN2VBcUVFMHVxVkhBcE9KbFVIc2tmQy1uV3NzOV9fRTFURHBLcjRfRE93NFhPUGNzT3dlVU9EUWg3cVFXRE1ZcDVHU1poVWE4MVVHczhmemZKU3JPbmtaTmRVTS10Y0h3R01mX3didy11dmt4UFUtV0tvNUNqR2M2aU5KMDB4MjZZdUpCWXd6TVFyeDBJQWgxMjVBWlozX2FvaFFpLWw3a1pZVE82Q0JVOVZsYllNMndrZXp4ZGhrQ1oxd080Z1NNbDlKU3A5ejhxNV84SU1WM1pma00xV1VqSGZMQk4xRXdFMjRxZFVzcWxyU3NZN1hQaVlpcXQ5ZktXVmZDTWw4RU0yd2ZHYlhxMUI4eWl2UlpMcko0eEk2MUdVUWJFVGU4akNTYTF2aUxxZ0FIa25IYjVjVHIwbDRhTW1EZGZKWnJxZEdpb1lPb2IwdHBuc3IxanRfZm1obGhJa1NSQnREUk5XWEU1OXBjVXlULXpyVjBxZl9sOHN2TlNEV2N3d09YQ3lITWZzLWw0T29xMldVWTVLQi1nSG1HYUJod0oxa19ra3V2S0hlMl9TY0loc3JjTXV1eW5aLW14Vzl5NHBBS3pvdVFsQjR0ZGZvbHdSRk5KX0tHYWJPZXJiWFdDT0ZTd0JVTjdNaG0wOXNyVS1VWG5od1IwdTYyTjVvMDlfbGN5eThnWDg1ZUVrenhuOGZ2NHd2T0Y2dUd1cFk5UGxpSTRLMTNqSHlOd0ZuY2VmRlp2b0dxVlhkcUg5RGJkYS0zY1FhbVFlNmlMek0wRDlnLXlFc2NBTkpKS3ltelVzemZZdV8yY0p0TEhsd0I3NVhLeW1EMG9nUkRvRkRwTmNPd1dRRUlwdVJwU0pfdWtzR2EwZkd3MGVBTU4tQmc1OUs3emhRWHJISUZOckN1S1VPMVdvTkV5WkM2UGlKSUwtUlRsTFQ2WlBNZmdSZzZiUl9aQk43X2dseHBIakNDaFZXMkZ3MnJFUDJJX1pSeHFqdS1WbmVwV2o4eU1CaHZXZzdXNm9QWm1odmVtUTBkQUljNVZTbVVaelhvNFVURmJxSFN2MGlyVTNscVk2eUl1MGRPd2t2MlF4ZENfQVdRUmdLSGRUeG1xYXFUSXJwclZyUHZ1MDFQSGlFbVRnaDZZVEZ6Yllqb3JEeFExWDhlTUN5Rl80cWNjMnhOdTJRblBIdUR0RGZkSy1NV2xJUDhHUEhSMmhPMjlCa0JJSEM4TlgxZmxDN1ZSZkZsQ09McGVIeWl0MGRSd1d2S2tieGNIWl9fRE5ZLVBNQlZMZGpyR3lxT2JoQnpQZHZMeFpXWVU3THNRbnM1dmxiMTc5YXczX3VmclRIWGs0MVpjaDY2ekFRRl9tekQ3ZEVuMm1fb2tBaTh6NTRwdzdxUDAwNHkzenNPd0RmR0htYWF2c3dGMW5NMUN2YXhXajRINE45dVNUaV9DM1oza3lTRHlUNGdUZjNqc0FKUEJybXdSQVBpaU5PTTU3c0x2Y3dJRk9ENnA5QkdWbjFwbjQyZGRTU3A1M3JieTZEcnlwcHdDaDFrampQX3lCbTZRZnd6MElGUWJiSG1zVDNVa2RMb1dURjFSMF9sbjJtR1kxU0hHT2o3VHl1YnQ5d2xLVW5nczVMTWhVcHo3NU1LR3F6UkFnWXNKcHVKUVl1RVpKeGFPSHNmY2VwakdrcFdoMEtfWkhZUEJESzIwOFVqb3FqMDdlVVVueTBaXzJrNXUxTjQzWGJ3V0ZvWVBhdndheW1MYkhWdkRwbzdwMU9JT1IyNkt0SzdPeGlnZ0ZybGVISWNaODFwQzRCdlNzRnZsY1BCZEpHLTZxWTU0Q3J0R2xhaDRvQWplUXgxWS1YU0NLNnZLYUIwWnZHc2lIajhRQ0ZURjRuLUJqTWIzWDcycDJ5Q0tPRlpMRk5qcVR1aHJoYXNnMi1pWTNOTWdwVEQ5eVBSdjA2X1VpcEVfYjVsQ0R0Mmx5QU5NYVpZR1RvSmJTSVhBcFlyU1hEM1dFWllhTGUzQmFSUEJUYTAyeWpyVFZPRDRGNHRFR3c5MkZJZThOSk5NYXRXMFhPSFAwVWxKTXlQUDF2MVdvOUh5aFllaDFfdWg3SlRLcS1hWnJjOS1Xd0ItQXBKTHBQeGxmRzlGZkgwdjNwSTl0Z1VndWJmSkJQVjMwNll2MlNqQ0M2MmVYN3VFTUgzcXQ3TmFYcFVsNXZEVHpfMF9Vc3VlWERQcDNqV01XQTMwenFaYTRFT0dXdElMb0tEM1RjRWNVcmJONGV1bHFQSkFNcWdWdmk2YWRGdTgxU2w5cU1rVVUwaWpqMjZhZDFaeVlEUUZtWlJ4NjJYUW9ZdG81bXJ0eFZhYWtNNndqbkVPSUdJaHhBTnJoX0dNVzVxREhzMEV6TDU4b3lOY0Q5dE1MUC03N1FCbTZwUTFsR0swMVJ6Y3FzTk14ZzRMTzl2ZHQ3NFpIdEhMXzA1TjF2TUt4TE5GbkdhZmwxN1E0eEM0Z3NQeXpYdzBjcklyV2tIQlNQX0NoWE94SmZORWdyNjJOMXEzQVJZa0U1TVlCbzctM3djb3dNT09GcTlrakN1ZGpoekplRjRTUHdfMnFVWVhZRTZsNXJTYjYwUFlFSkJxdW82Skh5ZmdlOXFJX0Rzdmg4eEY1STJfLWtLT2pxU3FZam02NjU0cXVES3phQ3JWLUJFLWtQNF9DOU5OQ0xTaEVWUV92Z3hYdDhzbTRWNGNRMElDRmFzaWV6VnNuV1QtYmRQTGxBT2RqOS15RmhYVTRUYVF3YnZqQ0E2UHQ0aDNVWGdnQzNqWU5IMmJtRGpYSzhFdFJYRTV6cmJsTDRKMFZ1OGxHQVBZaGtOcGNOakNrNWhSSW5jT0dybE9aUk9jdTdSeVczR2JWM2Y1MGJKN0xLNHJjMnJCMTZuemhBdk41WXlydWdwQzdCOE9OR3NTY25ha1V1alJzRzZGYVpydDNzTDJMOW5RTUNoNE9INFF3VWpKWFZKUFJ2MHhPTF9jVEQtdjk0QWgwbWdtcFJ2Q1dhUkl5MXRxeDZHTmZ1R1Nyb0tObmtHYjRiRE1oblpZMmwxQWluWHlCMG5uRGlvci1EUmo1cjhRZi1iaUR6cGhTallzZTZrakdLR0ZObzU4WjFfaGxEaGFob1pQX1lRdlBtWi1Tb2pNaGhMRXZqMXEyZzZWRVd6a1FDWTdIWVEwM1Y3cHVCVm4yaXM1NXpBSGV4cGpERWoxWDgxWU92bnVTdXRhMGx3VkFEMkRoNjZDcmM2VVh2SEtUZTBCeFlsQWdVdkhQc1BkSy1OdVk4S3RaeGNqTWNDVWM0OVl6VW43RVBTamFNaHJ2Ni1mM0pwc09Na3JwREpLM0dPTUVRMUV4cnhYV1lGaGtLaHR2UXZkMXZCVS12b0pRcWJveU9vS1hMM29Xb0FRVnljWlR3Y2laeW4wbUtkVF96NDNFZGhNcDNKS3N5blJ3OVZtSzk3Q3lldGl5LV9HaWVMSngtWDladVMzOUdNa0YxaFVmYmkyc3FJZGZMZ0diem5uMTluTlRVUDlOR3dhaWhybU9Ib1lZeUJ6WE4tby1UWUxhSS01bkNuQ2FSSW9QTF9XSVhyWDZPSzdZU21IWjk4a2xJS19JNTlPSXlWSllrMVh6bGVwd1lPLXUwU0x6bTEtN0dKSE54RGVOMlZhUEk3TThVem10X0x5alliWWxocFFJQnNyUktsMmZZeExKaGt6Q3NjcWp2bVhDemRLVDNhNFV3NDJ4eDlsOWl6dFQ0UmtnV21fYV9YWWk0b0gwdjNCUXRSZ3NfUTBPaGo2T2Y2dEtyZU5XZmcxVDRjMk01SERJd3UxTkl2QXBqNzZtOXJWQkdPWTZFUnhfa2Y3d2twb1g5dWRvcjBCbEx4a1FCc0lwZXpUdzc1MTBncU81Nm1UWXlBUzFCUVdOY1Q2aWhfN3F4ZTVoUkVlZVB5YUpFMnhqR2JNWGg3V1hGYjN0ejVWVWJOTFpxMjBiM3E0UFdkdjJXX1Foc2VUY0JTRDY1eVFPYndTai1UcVpNNi1teUZHb3B6dVdfRWcxU3pzNzRaY3RMSUxyN3pMLXRyeC1WTTVfVHllMVZXbG9ZOTZVYUJyUktpQWU1SVhKMlBQd2RIY1p4SWx4N3dBRXdueXVOZXA2b2NKcXRwZUJ1elB0LTFaX3UyWjZrQmR4V0lpYlVEaGxOU3AxM1NkTGw0Z2hkemVqZWFaYVllRDVtTGltWWJ4dEhsQ1ZiTm0yNU1ZbDYxMFU3QlZnNVJJSXB6VUdmZ2Z5NnpJRzRLQjBMR3BISzNhdHRRUExvQ1VlTDRYNVdBUUFsb3BRa0RKOU5lTHFGdHN4cWpZaGJnZ1Z5am9ScjNPOVhzYzlJVEtVaXJaUDlyTVl0eFduT0tUck9YYVk2WVR2Wi05QUhpT3ZfdTRhOElTS01DVng3OUlnXzdqTjFfREhjdGd5cEEzVnpkbjNKdlJJQTlfbHZDV2dTSS1NUjlPQ19xekhIUmU5dENqWklDVzhwRURSYVhZOHc4UUQ0bXJicmFLTTNsWmtTNUF2NVp2WjFRTDJlZkExbXlJdmN2czhmekxRUFM0Nm0xX3ZPVzcxN05ydDQzeUcwbUZxZnk4aExaZEUzQ2RkMzRtVVFXWVdqSkdvQXZ0VHBXRmpwWkwwOERjQUd0RzVzdkU0Mi1WWjRqSVVYQ2JsemZaczl3N2VsNThvRkJLUng5dUJLby1PWmYxTVloVEZrSlU1V3YtUEVreXRPSVpfU09nZVM2RTVMTUZsOVpZenZ0QkJuWWF0bDY4NGpEdWx0STh4LXpmSHdwUEFwNk9CQVpxalk3S3JoSVJuVGRoc2Y1VUpCcmtvU1JGUFlaaXE4RjJLWHA2Nm1PbDMyRm5RTVprMUlDVkxiYVpnUFlWNnl5UXpZdEdhbjhOc3BFTG10RWkwMVlTZE1ySUxkUF9TVTZwXzJ1NU1oY0RPMDF0Y2hwMHp6eUVfTVp4YWJodXpMWUVIeXJvYl83cjFKdWNjZUQ4SlM5T3JBdEk1YXdsbEhGSFRRWExOWGJuTHdTQ2JrdHNiTGFoa05ya0ZXR1RDNFRzUlBfYTlHMVhFTE5DRkhaMVhvS3NsQTdMMzFGaWpyNFpEYjRQeW5hT1BrSlhCcEx6MGNLN2FmeFVxNWlySHhZNEQyVkdNT3gwUmc5UEJJeE1vdzN6TmVGZ3Y5dzRTdkJ5VUpQdjNGV3huX004M3g5dldiWFh3bU9LbHlLNVpWQi11LWxKVno5Rm81YWRfVEtwUkxqSGdNWURKNU9Ka2dhaEFQMmhOaG9lb0FicnBPNzVYT2tYZ3pONDdwVW1kdzhmZV9FN3ZSeUREZi1LNVZNS2UzOXRPSi0xRmxtemJVc0pET0lScHp5WVl0Y2Q4cGtPU3JQYnIzMWdJNFRIUjJHV2xwZWJCZ3VhYmppck9UTjI1Zy02MmRPWWVKNHVwNjI3MjdnbWNQWF9EYmJfSFdrTnVLaXBmdkJ1UmVNN2J1WE9LVzg2bllHSW5ZNzJZZ2lvYVpIaEJnY3pHbktuUUlkWTJ2U3NzQ3E2b1FSUGJqeHRQZ1gxT1h2bXNucmNBencwN01ULTNueWF1RDBfNG90RGJueF92dm1fM203ajBwcjBGUWZ6NWs1UEVNUG1sOFVhenFxX2xEU3djV2JOU21JbWF3OWt3U2NXN2xrOUViNTRLRTRhaWt2bVRxXzRuN3lkSDNQblI3bC1RMXE2X2k5VWdHUVFfSmk5UDZQbmszQzd6TTVYbDBpYllEVXVUV2FUdlRrX2ZjaXo0VUJXWkV1T0lLU2xZaHVBVzFQUTJPU3NiUWxPbDU4U3ZvTEYtS2w3TmNkRXRBODJVWjdkLVFCN2xKNWFCcnd0Vmx6TDFxX2Y1UGd6a2NtcW1pLVViM2tUQ0xlNjJYbzN1MmFvSnNTQ0c4bXhwZkJ6dVFVVkk3WXdTa2ktWUtNUnlJSGhuOG9xRDNQS0xMbHk2LVZkZy1VREE1RWhhLXA0TnZYb2lLb3ptRHdBZFFpeG1IcnJTdUEwWmh0eE14N0FSc0pqc285blZKR1BOSzhCeTMtbXQycnNOOHlMdHpyRXdkUzBtLW1sRHRKak9CWHJ1NmhWOFBPeV9vSWVzYmJtWkcxSk96Tkl5YmhPOWdNakpsNTBSQXVmcW1sSXJpOEVXQk9vdzdVT1RKQjgtTkR6VzVXdWNiS0VLOGotdWtSYXhhQklPcTJBTnI1Tl9hTEF2RFpmalp1cDl1RGNTc2FUOTNWR0dmQlhHX1BYRlhGWnNtd2NnamxsQWN3bkhCS2V6QWd3SnprRXpFaEdEOFhQMVh0dXJPZHh2YTRyd2ZtVG1yM1pHVWFmY0tTUm5malpnVERSVThVRFd4ZjRwMjB1T1h5RzBBUzlJLUF6WGN0Nm5EOFVQUlB1WDQ3UG1fN05mdWFVTkt4SEZ2RFdOdWYwcVE1OFlvZmhydjJlRDlzUFJFWV9CWjhXWm9IYy0tbVZ5MmM0aDdvTTUzQlFKbTQzRzNkaXotclRwWE0xUDExakc4em5XU3RBQkJxbW40LXdKVVl1UGpDV0VtY29qdGtRZEZmcjQzRUNqTzE1SDJaZGN6MkphZmpUcmxPdWlQOG96ZjEwa2RTYjBURTFVOXI1dHRIU0ZzOUxPVlZHVjJnQUxjUGtMU3R0clgwMXZHMWZLS1ZTRVI2TzlZM0pZYW02X0FwU2xONnlRbmlqM3NJTzdKc2xYdHhaMzY2bXI2Vnl6WmphajVVODlJSjdJUlY3eXBkOWtuZy1RRlZMT0FhRGU1eENvZG1jRjY4ZGp4LTZBVWpQWnBHOFYxVG04OXh5c3BTaU40M0lmLURacTlaMXFjSXNDOUJ4XzlxTHE2S3kwNTIydnBKWkw4NEdCZElXM0FuUUdKbFY2dkRXbThpcF9LMjg2NG8zcEg4UTdFWnpqc05KZ3p6RFU2SkU2Y2psTVdhMDR5dkVMa2dnUm9feVM1MWUzam1BNUFFdWpXLUJ6TXlzTjVkeUpiZC1HcnN4VFltck1wMWI0dFNhMXV1ZHBSdWl2cUFLdV9qbTBvYTA4UHZqRjJyNjRXYXZQZHVxcUs2VGUtMDc1RkFQNHFEZE5ocmpJSHpneWEtUWowY2NCRWtZbUo3di1mUWxneUxzaF80bHJZQmVyWnNCMDM1Z2Z2b19CakQ0Q1VWVWFTRkRya2U2OE41N1prblU0UkZXN1NNQXViaE93WjlCd1pmT0tuajV3bDhfemRFTDVLVDBQUm5IejRjQk01OTZGNXhleDFORzNqME80Y3JDbzVod0xMMUVwMnVweVlULXpfTkdkT1MwMG50bGt0dnNKMGFZSURuQy1SSDRYcUdBUXlpY3hJVzNnTXh3LUNvYlIyUGdPa1dLTVBJN2xFelNLN0VKcjZkZENmblhHRF9scE9HSXgtUTROdjFOU3E4VGw1dkRtdmdOXzZCOEhHbmV5bXdpQUlJZ3NpWWhfUmR0NnBrdWJLVF92aFkwMTI1WWZkck9NaW9keTFLbEpNR3NJNGxqX1dJYVRHQjdoY1dtY0stMy1NNWlZVnJUSktaR2RZbUFobXI3bkZVT28zWFFCZkVVZFpKb2Itc1R6eDdNYWttd2JEcHdQdHB5OXFQem03akI0ZC1yYmlncDI3azRTYlVFOXNFWTZVeVVJVk80Y2l5R3ltZThpOEdLY2dSWXJ3YTZmVlItTnNvcm16dmd5eGZVcDFGWDZuR0xNbE5VMDNEblBVU0JLT1RWTzVnM2JuNG1DNWI3anBVQnUwQTk5R2ZkTEJGaXg4dURwR2NsQm51TFhncjcyRFdCRmFKeldkZXNZbTlaLWk0WDBaUTh4cVZwdGpXTnI5Sm5sVDlLeDVKZXdRSHZkeXRRdHRaTXc3TS01Unc5UHJreklWd1JPZE5PVkxwRWl5RmVqM3YyZmJGRFVoRmg2ME00NWRMQ0hqU0k5eC15dDZ6LUVtQlBpdGtkcWpUT3hLam1qVV9WNzIta09tVndhZkY3MzdTcVRKa0lpWlVic002bEJoQ3Rxd2cwNi1DelR4U1pMYVgzOF95dE51aUY1S0JfcXVwcU54SGJ4TTVZN0l5SnJUcGR4MG9qNFZzWDlxWkFjTGxCZnRNaTFUSTVLMkJRSERSNW5FY2UwT2J1SWpjdlNrcjNYMmZwUWQ1cHlLdnBXcXpNbnNuQ3NsVnYyWUY5ZDZHVWFKeHlfQ2MzRVJqOXZIMnRJb2hBckh6VzJlN1lNUTRyQnducnowOXc0aWNnNG11TDdVSnVsVnJLcjdJS3FDYjJyWFViTDBIRUVrTUd3T0pISEVnVWxlYzRGajRNQl9ZNnh4SFJuekVKMVVBRXVTeDJaZG9Bd1JsSjMwRHZYTWMxcFo0NWktYXE5eV9oOFJxaUZSUlQwSktjYzFpeFA1Y1JWRmVpbFhKWXN0cDV6X1pKZ1FrSTdCQlBaR0M2bkZ5RC11LWh4MzhQN0IzQjdUUzdoWVlXdm9ETFpGSkI0a1ZGRUhvNlRKdWNDVlpJaEFMdHlfN3dreFFxdU1mMFNOREQtV0FPWUJkY3JpZzZmYnNKSVhvc2lMSWNDM3hOOGw2X1dzNk1UMXdXODZkcWRUWkJnN1Z6YUlnREJ2RDRNakRLdjk2M0k2c3ZmeG5FWWNEQ3dDalo5M2JwUGRJd0htZEY1ZE0xTGZVLTExMktBN3dCQTJWYjU2cFdBMWk2QXo3Z1N6RXhQRkZvVkNBdFlJUnBFcHh5SVBaQUVHV05zeDNpNEk2Z2lyZi1hUmFWejFXUURCemd3ZDd3TlpqV2xrRVlyRFBBZTFPVnl0bU9HQWlGZmZiQWVPaVF0V1lzMHYzVGFTOGcydk9peXRvakE4ZzM2dDQwQTB6T3pKYnlzUUM0Z0hjODJuVDdQUDJBTFdPU0RLTmxSX2M0eHFWTkxjdlhxZHFBNmpVRlBUY1FONzk4U1FRbGprcmd1bzhEcGxTZTBnODl1VHUwV0ttcFltSFA0WEtmeXRGRWlBR1FDSmIwZUl6NVZsTlAyVnFiRGRMcW1JSzhuNVlNSUtDY2ItY0FUdGFoRXU4QkxQcVE2VC1aa2t4MF93M2RmZjhVX3ZCZUFwS090SERMWUVqcTBnVktxUHhaUWczY3RJS2oxdXJPeTIybnJ5aTlnZWZVc2QzZUYyMnBCQkx2YWVWSk96QUZndk5YdnRiTXFsUW1CXzQxNG1tVGVtaGFlNktjOW9KRF9sLUxKWDZPU1FISlo4MHQ4Ql9VZkdacFZES1NubmFmMmY4UHYyMy1EUmlGNlNyQ0ZKN0d4TEhUNXJSNzU2MW1YUlV5Qy1leWtocVI1ZFZSZDZhOVQwSGY0TlZSbjJiaVdxeWhPR2VUa0hKazE0YllOUFdYTm5XSHl1VTdyNEZoOVVsb2lES2xIQjQ0VjlmYS1YMzE0c2VHZHRqUFNLdWhFRHBMeV90VU95aWU3aThJaGNIaE1XOHlFNi1Oa0lZSnF4cU5EbjAwdUkzSEhEUWtGYzFQV0RYdlVIcnBJUFRJcFFBQ3c1dkNWT2JpUmFoQVBJM2tFRFh4ZkY1S2VLMXRuS1hsZWRxQmRIc3lCUkZuNnp6T1p1UHdOWktKNHlYVDhoS2wyamQtNTlqdWpibDBmNF9WdVJFdmVQOW9FWWtTOHU3UmlBVEVHa1lPVkg3MkZXTzBzLVNJWGVRRkQzX3VvWjdrM0xjSm9GVjlXMDZrQUVWY1dURVZGRUlwamtNMy1FYnJSUVdMcy1heWVYQkNFSUxsQ2t0di1LblA2N0pyZFV0bTI2cnFlVXZ5MzdTMTBCTE53YjRiNHBvREhMS2FveGFuZy1iRjZUb29PR01UU01MWXUzaUlLc0R3Wm9kZG1WR0xyQ3FxNWJJR1BFZTNoMnc1RjFNZ1hyVEU2TmFubXpKckh5eHVPc0VyaGctaEpGeGVCcWE4WjZZWFduTXIxNDhLanNoYVAyeVpFSWV6OG81UEc3cWRWaHFRenhYT1c3eEQwSTUycjBvbkhxM1hzcV9SOGhFby1UYVdPbmY1NW1YYTNWMk81LV9XanZxZThWdzdwTUF5dG95dmh2NTVTVk9xcVdkNXNIdGhITzd0OWlMdDNFYVMxX0ZnaU8zVmVENmlvUVBNNjZsWmhaYkpZZHo4b1RFeU9SR09KbkpjSVpqVm1YSlJIbXF2eXZsUlpjdkVMM19KR1hEOEZGNHlBVE0zaGhlNDN6VEJVdk9oYlRjckhNQTRLZjhWczR4cU02QWFsczVBZzRUbVZSSnVLLUVRWFZCaFE0TEpBbEgxVXZzN3lKYTdLM2hsQlZEMWo5WXRWS2htMVhPNFJySTNrZmVxYmxoMTRHQ1NEdnI2OExyTk53SUZsY1JEY1pKalBOQi1GWGhUd25PbW50ZVItOFY0UTJVa19tczdTTm9ZUElWRnJqY1R6X1ZkQ3dYRTFmMjNocHpqQ2tnWGlsSUlNNEpNMkZmcDNTZTY2c1JHc1RXXzBBbF81R3Fqd3ZfZFBYWDA0RHJNMFI5dGljTHhLczBnM3hkSXF1M0huamxBRFU3S0c1Yl9NUmxUdWJCQ3pEamtJQWRRUEFwcUhaWktnODYyLWloMDE4bERfbFViWEwyMGhFNFBNbTE0eEg3R0dPQ3FWa1o3RVU4ekd5Yl9xWHV4RF9LZHFLSVR5eUc2WC00MHhOeTJ1cWpDMmlvVVpiM25Tam5kZWFiX19kbC1jMDBLWkU4RnhTRnRMN0RreWxpTWM2Yy1VQXBhUlZKQy1aa2NBaXlPZ2NBOVZQa0x5a2xlcGRNYXY1Y1J2a3FvTHhmS3RMU2FhS0taWEdveFd5OWp2am5KZHZfMmZDTXlUeFdOUWl6MzI5NG9mNkNNY09sTmc5VW5iaUlHb1JVX20tMHQzamNRWHBrZ0pDWlMwcmQyZ3RGVExYdUVlYU9ZTnJjZ2dPWkVQMkstc19kNUlCU2JqNXE1QS1HYU9hbzFuRmdFOEFlMDdEVXVzeTBYeVEzd0cxb3JIOXUtSUxpSHpyd01Ickx5ZWkwYmpYSm9HcVBuSWd5d29nWjdZRmF6a1ZSTGE4OTBZQjlXR2p2SEdqZ19yYmVabWRDWkFoalNiTlRveFN3bGkxMnh0bl93WkNWVkhlNzUtSGNkTHZHaGgyekwwVjlROG84NFI1NUFKVV9fNjI2REMxT2w0cXVLcEt1Z1EwMHowZElPbzMwcG5IT3hqa2xlcGRMM0dyN3dHNXZsSUJKbXVWMlBReC1Hc0JmX3lYbUhxOXBZZ2RJeXl3ZjNqSjlDcmROYXM1RGNseUExUS1Sa3MzdWtyU3dublN1ZE5OeTNCRlJ5ZkgtbHhWQmpYSHQxUUlQM2JLbjRvNmRPSHNLclc5XzRPVnBNREQ0UjNMRmpYNFM3MDJ5ZmdXSkk5Wld6TDFadk40X2t0Zy1iVHNYOC1zdzJfa2Y3dXVldmJmMkYzLThmM3lvNDNUZ2dQaDU2TEZjbFNidGdaNE05MDRTLWF5SGQ2NkhVbmU5T1Axc1NldGdKWXdZZVN6TTgzY2FUUXVqRVA4bFhEQWxKZGJ0MTRhZ2FValJkNlBNLVVIUGdGUmNtRTd5Y0k4YzNSdWxrVkU2Wk5qeUU4VkNnaFRoN2JMNTJNYXhUcVMzQWJKNUpHak9ESkk4ZTczV1BFZHZPZ1FPNnZvak0xNDFnSjFtaW9rTFNIbXNwVWRhSFdIdkNkc2VHeTZyZmJfYktmeGJGS3FNTEN6T3VKbjhxd3hlNUxJQms2djJCUmNzM1I4ZnI1VjBSQXB5U3J3bmRuWExFRHdVRU90YzdwSTBqajVNeGFJaWxKU1FMb00ydXpiWXZaVE1INklXSndEdU1hNW04MlFCRnV3TWFZRDd6WmNwM0RGb2dFc0N5YnFjZFd5SFBhV3NxQk5GSDRuYXdwRnMwQ2xZMWMwbGZQR1RnTWZJeTRxRnV5U012cHNkYWZORUdBdVFpYU5zRzROSnNJV2NYbFNFQ1FsLVhRaHF2YkpUWE03NldPVTVld0RneGRGeG5WREVhdFRlQWZZaUVEN1ZBelFNUXNFenU4VUx4VmI3RWJzX3RsUW5hU2hVX3E3RjNUVEV3VUpPdDNCeFdPcWFCbmhNdUdOdU5CNXJabFd3YVhrUTFNdGxwOEFmWTBXSF9kX2F3VXdQbUpCQXFEX0xKRncybWVBS25OZl85NlZiUW5iU2J1ME5uejlvTnVXVmNMcWZIeDIzX1JfVVE5enZibTlkaGlSaUxSMnVDUzN2d21XS1UzVG9vbks2c1NpeWNmYnh2QjE1TnFnN2l4UUV6M2U2emVkX3pQYy1GdF91ckRrR1dOTFJ1d2Zyb001REQ5XzQ0UFVvLU1SQ2NiVGp1emxqQmVjOXRUc1NRdnZWVnp3WHdNY004Zl8yWEJxcU5OVl91b3V6dVRPWkFfbkNVTDV0T1dFSXZIZmlDRWxJV3lrS0U1TUFUUVlUY3FRd0VwNUlBeDFDOXdudnZtVk5NcmFFNHpDSDJuZllsUGNIYWpMUGlXcHpUdUR4anJGeFhIbVBUc1JTM0Q1YU1yTmM5emwyZkR6ckJsbzV0Y1pPT0ladlR4X0ExeFA3RlFnNjMtbUZzTGlRZG16NzM1bWVjUEFmdkROMnV4dWp3YXFITGx5NGlLelljVVRjbHFhYV92X25VM09ESUxkcWt1S1pCZFZzZGwwX19YeDdkSlFHNG5nN3kxU0d1V2Z1NEdRRnV3azE5b1hJM0ptU0c2WVZHSW5wSUlNYjcwSy1BREliMlZBWjlVaUloMW1HNmpUZWRHWHJtMzF5b3Jnak1PUlRERU1rYnZCeTFaazVrR0E0V05aSmRKRnlSQUtXT3VNbVZOVXRWcTFWRHpkTkpNdGhaWUZHQUU5MEtBZVlaZDdmaFRSZlY3ZlFYdzhWOENmM3IxdmdMTXJyZ2JSOGwzeUsybFBLMnhMcFl0cVpRanFaREpvSjlwUHBlcHEwRF9Dc1JEcVlDVi0zNE5GbldXWklZQmtmZTRPSGFFZTRlXzNQOGxNVTFKUWlJY1dXWmJ1ZUJXSnlpNDQ1b24wRm0zVzdlYTRnUUJCN2c1MzU4MUJBZW9ZQVRUYnFFV0J0LWU4OS1YMDd1Nk1vSDVKUU80OV9kSW0wNU11VVlrV3ZQODFHNDMySDFPYmgxRUJBNG1WdHYtM2ZqeGVDRldiZHVzTWxxa3RYbXVodjBEVWdmWGh4OEoxS2JaMUdjN3cyT1E4S29KZXNGM2QyTzIycjFkdHRIamdmbHBUZlVXOGFaN2hPZ2otSy0wRHg5dXV3ZmNVVWMwUnd6bkNMbVdqd0lnZ2NfQWZJbVRpd1ljZWgzQzlpVnpLdkcyV3BfZHpCMjgzM3YycGI3SlRKbmFYT3VSSlhiM1JQS0pONGcyVXV1NnNYc1JBd2FlTnVtVVVpM1B5b0pCY3dhZFRsbVVrQ2JNcjJMQzBzYmZkbjNMOHk0bTd1UGg3VTJ1RE5EaGk1LTZaWUNYZE5SRVNzajVrR0QxNzJoUHRSVEV6RzhUeEN6Nlp4dE5MQ004a3pHVWtjS2FLeVctZFdaaFVWRENsZVdnQ3F0NWdvNUI1OEVaV2RJbi1SRTRxREZ5RlBDNDg3bk9nMUVyVmZBN0NHWldha1F2QXN5ZUhKb3dkc0RrdzZIV0x0Y2ZwQTJENHEyZ1Z2aDdraHVNMmwxSE5DdWxNOWJSXzZZYlhuTGlCMzIzN3Zjc1d2bHpBVmJCd0J3WHRQT3RGWEEwc0V3c3Qtb2N5V3Z4WFNsT19kdlhRNUdHa2pLcjhFX1hzM0dvZmlqaHpsZF91OWFROGNTek1XbE5xRGNPWncxdncxNUtaeFNXR1QzcDJ4S1VHLWtSZW1Jc1h6VW91TFdma2RCbk41Vk1tUTdJTXA1RkFfcmdHWnFwVHByaHJMSlVaeTNZN3I4bG1McW15Z055a2FMNWkyVEpIT3RWVHB2eHVzck1LMnUtSzdpbUJVMHlkQndFaHNOS1RWMXlGZng4Q2JZazJTeUo2QVlWeWZLM1FhVEdqb2FFMGxocGNPRUIycmpfUDhFWHAydlJ3TWZsYjBtc2daYTFCOE93d1BXRUJMdlROVjVzUEYycFpUaFlnM2xWVzFjSlZlTlBLRTJfYU1zS0p3UGVIY19YTTNrdDBXVkpMbTBnZzE2ek5EMjlsaUlfNTBjOW1VN2NpVG1hNEd5ZzJtSkUzVkg3VWxUanVkRldmNTZpSEZHNlJpU0FqVUFtMmtBTkNGMjFyb3ljVUhFTGo1aVlQZF90S09vcmJvRDlWRGcweDRDc3BQMmRKZWVzMVR6aVMwNU5qU096cnd4dG5qMTBBZ3kyd3B5XzUtbVl6dVJvYTUtNXVPSFhDRkFNSW5QQ2doakFudHVYUGw5REJRb1ZSMWYwUS1NdnJWQU1Qc3pfaXMxc2xZaTlFT3NDUWp1R2hsNGlxYmVNWWRhbFVZZllGYnd5dktaTGNlZndjaVdpY3EycWhpM2FxaWQ5WkVwVGRyR0FvRjItdmd5cWVsSjlRb2NfSG8xRldZdjFrVUR3RTBmQ2ZlV1FteHBFMTQyYmlZNVNnV01CaE9tVTBKWkt1c0hCV3B1ZWJ1TDVlc2RHVEJwRWtpcEpHWmtQSlB0YzBvTlJSVU90TVdZTTYxbXZaXzRTTFpqOW9kZ2U1akMwMHBzSHVYTUExTG5USDZ0R3FnSDlTd1Izd08zOTNTQnRMRU5oNy10UEVEVWc0dHpJeXAxTHQ4R2dWS09DTl8tc2RCbnlpSjJaNmYwSThEMXVPQnJYN0JGb3E2aHlkOWtMWnZiX2E1VHFUdzNKZDJCdHRzOHBWS3hhaXFtTW1WUmZPbU4xYmRJSHhlVUNCQzdXdE1LZUc0M2FNLXpYZDBfUmI4MkxJTVVVRDJadUxXb0MwUGZzUmpiYWNpOVhBOFlBVTE1WllTOVh1YV82NUZYT2xxcl9sT1RuUjd5Y0JZY2J5T2tIeGpIWVFmRGkyQmZRV0NkMElXaF9WcUxNZWozT3ZEUW5FZDZvNEU1N21FQ1lQUEJUSkFIZTNHTjU2UEl6T2xLNTRtVV9USUNpX0JKTkRXemJvdl8wSnVEWExZMmUxZnhCOXNURmc4c1hINUozYUhYY2dpYUdSaHlnMjRKZElJV3dkcXFRbmlLZWNfS1IxVTJhbEVqX2xPQTNNb3FadHk5Zzhnc2RCMjRmQlRLOWJZUnc5eW9OVWhrSl9fM2NxNlozVVFvc3VrWklreDJwVlRoTkU3THdEQ2gxbnVRYlpvUlZrN1NKc1pjWkZ1TTd1SUJRWUNVMGRIQzFRS2lublQxc3R5WDduM3RRLXZPWGRsSENaOEtmSERpR2tsemdKUkhVSFUwdU9JQUNuNGtUbkRzN1ZrRGtEZ2YxalBhYXVYLUR4X19Cdm5oWXIxRFp5eS01N2x3SG85c21rZDFNcGFUVGRLR0cxOVktUDh3MmcyNXJCcVlWQjhBZXRlbXQ1bEtZdE8yckhJNmZSSDZrLVhSM2I3WkVlSFA5MV9UTkc4QVZtV1djMUhaMmdYN0gySzgyUzRoUk1JcEItdkxUaFI2QmV4bTdDeXJHSFZqNHN3M0dtZWd0cG1obmJlNEZQRVo1UTZnNGhScUpmYTJvOUswZDI1aktwaURBTFllRVY3Y1VDUjhBVjRYNU5WR3hWdWppOVdYN0gwaU1mUjZHMmpIVkFZSmloSkxOSC1JSENWcVhxdng0ZWNSRmVxNGRqUjNBWjRITm5kNUJBaGlTSHRObkhlM3EzeG93cFduQVh4M0hHeFZKcUozZ0pVdDVtdGcyb29pYnJiTTVFVU1HT290QlZGT0k5eGd4RmZYT3dhYXNPNWxIbTVoQnFWZVczOHlXS1FqYU50VG16TjlITjFrRWFfS0JacHU0d3RGeGswNkdWTmFEUS1QbmZBV0FJalByQ1FjSjJMQ25kS2FBSHJyYTQ3WTI0dWJYd1hPNUZsSVh6NElaZzI3Z3NzTXpVR3kwdUtGc29LdnJrZkFLdjVWblR1WlJ6aklrZzNoZExLR2FMb3RPVmFwZkp5VnNidGh6T0JrSERUMDllcVlOYkFwbWdYWGdoVTZSb05nV3IwOURSMmZQV1FyaUVzbm9Gc21yZWc1MUUtc2JUWjJCb3FqVW1zRnlndjJZdVhpdTVXdFFUNGtKQ1NxczZZVEw0cGhoQy1sTEhubWs3Q0ZKVnNMUHpUM2ZUcVF5M2V6Sno5dUxyUWJKRXVVMGgyWHQtNGwzaENtNU1hQlVVUGU1SU0tWHZhVk5QM3FQUGN6NjEzZkt1WmwzV3NmZVVtYzl4OWhrbElxRlI4RE1aOFdpYnhJSG5CXy1vTnpvcGV3SXZkOU1RV18wQ0hJRlNWWV9lMDNfNlN4SDBiLU5DX1Y3MXZHNXpNTXpqUkc2WXB1d3hMVUQzQnV6cHNWSVR5ZTd4M1RSWFBxNE42aXF4cFlTeWpyMUUwVnk2UXhzWGc1Q0NsZEozN0p0R082b3pTY1gtdDNKOFJBbVk5Zk41WTRURUZCZkxFT3VtdkQ0WXdjd0xuVktKMnVYN3A5MWZjTTUzVVRhTVc4UTZSZ2JFaTlnZjg5SXl1OFc0WTBIQ0REbDE2dVhCSXdZR3IxX1lyRy1zOUU1dU9FbjVpVm9oY1JsX0RrZlNNenBsSUhPWkJzLVM2X0tud2lZMXZYeThhTWlqb2tFaTVOZnBMbUdZdklwdk1MUFViUzBrQXhGTWo3dktnRXR0S09pU2wxVTJleFF5d0tsYnJtUGxFamZ3YnFjRVZkbmZvTFhIYXpfNlhYTE1Qb1FobWhKUWtvVFN6UDFIb2J4UWY4Uk53VmpaeGF0enpxMGtpMjVmUXlTNTlET0wtVGtiWlFqOTByUnpCQ0hVaTZlNWFmNUN2b3p1T2NIdEJmRnJHVkw4R0JQMk1JWi1UTGsxZXcteFpBbE10UVRITEVuUE1US1Q3X0VwY2dJalNDQTVsZHFXQndZVWxJaXZWd3NzNXRlWEswQkNvWjY3OWxyTVdTOEIwUmRwbjM1djlPU1JOejh3TUFTNER4UVV3OXhOTzBrSjdCWHdUM1dOem90dVFFVDFIeWpEcDV0UHY2MVZuVlVDc3pRME1TaTcwakU2OGtnVm9TM0sxaHFxNUhyZlJoYTVEM2MzZDFBWnJzaUVsMXpMNU5OamktNnBpZENKVmxZeFNBa0gyc2VlZ3lGeUVVV2p3ejZRZzBzeWYtUGtCWVFaRGtKOGJsUWFyUjRMdVJGVmViUTZ0bnQtVThmS0M1d3kydzFXMUhiWUZOWHRzUnVkcm03WWVtUDI2eVVNRzNPUEktLS1zV3VEUW1VblIzemNaVGZkcVBkc3ZyRmtES1JESWZfN3hsbDBLVGtIbHEyRjJOTTBiYjlDb281SG5RdERpX1pJZmIxa3pZd1BHTDZMV1hsazdhcENaQ3daWVBLNWNmbHkyWU84QzRuX2w4eDJkLXdkclBMWGNMRi1xZnRtX2RzZmNrNjBrNUtGenozZEJKV0otY2l1ZWM0S010Sm1JMklxUm50MVpJRnNTOGhEcTF3b0ItLXVTX3ZfZ3lMMVRxRklNWE80b1dUZktOV0l6d1NOUVM3UGdCYXdIMHVIemZDeFJ1bmh5enRMTEdMZEtBamZxc3d6R2dDMnV0THcyOVJoZWtLWVNyaElGWFVoNFFjZF9GOUxfNXZyc3pSaXpKekRUMGVkWlhSVkZNdTFsV29zQUs2YV8wUGVZbFI5cC1XMS03eWo3dGJveGZGdzMyd3o2VlNWamJrMHlIUnpRYmtwNkp6QlIwcm1QU3VlU1QtcHNCSWVwSGI3S0dHQjA0ZmJvLXk2N3VSRkxKTHZlcTJua1o3dDFIRGozQ2taVGduUmJ0S0xYRVNkb3RFY0toQ1ZXaXNrTDZabURLVWJJTkF1MXpLMlJhZkJhNzVDNlVPX2llVnAweTBJX1JnT3hEd1Z4QzVReS0zdVZkc2trcFo5VGduUGhXQWlURF9tQlBmeWhQN2NCbFZvUUhoY1lKYWVjQ21jQmtVcTd3cmx1emdEWEduUkFveUp6MXlwZWNjWC1IUnlqOEFFYXhxSkVUeGpWTFpNODBNS0xtRjNXZWt1dVMxSDIxLTFYUFcyaDBfSkE1OTg1cm9uWnBCSUtoaXptUU44YVNndjBIbFlmVi03cTl1Vi0wLXFrNXVQWnljQkRDYnpUZnlGaEdzWGdKU0tPSm5PYkU0QWktMW14NHpJY3FSRmNiWkt1cF80clc5Z2lFX1pfYjBpTWlMTGlBUHJ5dGo5T241ckx1MnJhY2UxUHFvb2VrZzFuWWxCRllTdzA0eHBWSjNGNURCOTBDMHh0SzAyMEtEakpRU1VCZW52dUpsZ3V4WVMwWnQ1N3dKcnVXdmFpYUlIalFBTmRjMU1lSVJEZjF1Z2EwZ1NwVjZPbEltMlY2aTVDMllfcmY1eHJITmVlWjdwU3A1X3c1UTk5YlU4RkdEMHZNbXE5azc1eTdsR3NTMVlwc2stY2RZd0pSek5oa3RPeW5GOFZBNlcxSjkzVmZsa2Q0NTFnMGRJM3dGd05kY0FqWG8xdUMzWF9zdU1JOUl2ZU9jcWFqWlVNcEFCMTZzbU9waHVpQXlBcjNTbTltMTJMMVBvbzVVVDE4V1lEbFl6eXhNYkRmWmRUX0I2R2lNUnpFYVlHSENyQjJoaUhsYXlDdlpCNW9lbkVTUG1rS1c0dFNmOXhRc0R4U2U1ZnR0UGh4enJ4UWxieEM1V2dINlBibzdYdFcxdUpMUEVzVnlwdGRjS2lPSHczQ0d4dXA1NnVNdjhlRW50SGRHdVFERmVfalk5TUJYZXNsdnMtQTdBVzg0VUFvWE0xd0RYUFo0SVZjdmozSWRpbTh1WUVDU0dXMHlPcUo2MEVBYk9nM2ZERW1wbEpNVTBuc2kzREZmbWlqNkVRZ25hdk4yVUN0Z1lKVUUtUVoxU3lHTEY3OVlIRXhFVFRUZ0RheHNIYnZCX2NibWFwNC0zaGhPS041OXlQUmN1ZldZTGtrMUhpODg2c3V6VWJZa2MxTkZRWlBGekdYV28yUUFvUXlCQm5DS01YT2QyZzBPS2RaSFBYRUtVR05FM3A2blo1WVFCMUx4dXJhTVJCSUNqV2lHN1E2cC1XdXRpNHFvNnRvUjgyQlFFZUtqSC1KV2t4a0NoZ2tFaXpUSjFGcjlHRFZ0c3duOUdFcTBKZjJ0aFhKWXZUTkdTY2tTVFEwUzFIa0NlcVNLOXAyN0p3NHl4RTlocmFVdHYzaXl4MEhFZmNnTlNLVTk0WmpFa0R5UFozUXNLUUlCa0xweHJReGRsZ1hSV2ptMEpJSWQ3WmRiT3I0YUZPN2ozZlM2a3EwQk5SVzFBVnhRWXpkLThFWkV3b2w0MFNyNmFfaG5tUUo4WWZvYlFoTDBhZFBfWUNaT3dBc0g3alc4U0lKbGV1b0hLX2hPc2Fha1hkTnJPaFNoQ2VVYjNpNUQxRmxkak12SWFEajJFN1dfUDJodmVna25PNkFhOFJlZ1JRN1dvQkVpdGU4OEszeVdPOWJkdmZ1NjFJaTBIRU1RUm5LQVBILU83RVpMVWdzTmd1ak5YRW1jRmdmRmhmU1Zudko4Vjd1UnNmbE9NcEZkTmZzNU1KUDdEcEF6R3Q0aGRQaG14ZlBseDdqTXh4cnpOQ19GS0tvRDBwcWdJdWtTVnlMZzdrbXkwOE9paTk1QUNMREZsTnlQZjNtaUVUMHRfaHBmWFZrckhCZDB1Qk5Banltb2J6WmF5bW05SFhLTTFVSUFJN21WQWdUZnVUYmQ3eEY5TjlDNUJTZXVyVDJtYnNaY0JtWFNfa3hZTWtSWjFkSkdjN3FwVFBSZUxOVm10UURBVzZWdTZUWlpHNDREMHdRNllKalItNlFiVnNSR2NReGtxR09KQ2MyYm44SEdvMnZCSG50TTdEZVM0RXdLUXh0bVduVXdITTNVT0ZHaWVOVmRvZDhzcllzaE9sM2tvZlN1YUxIUkZiRGdVQlZoaHBFV3dUejF1VlhOd2VVN003N0R1dGJZYTFiRXRJY0hneXJjQUJTVW41dlh4cEhhbVY1RTJHczhEeDhYTmlBaWdYREJfbmhFZEdWWkVqSmd1TDg5VXltR0c0X3Z0cVMtN3hGYmtJaFpPMXBEVHZTMm1KM04zNUduNGI2S1FWcUEyWEY5amJwRFF0VFY0bEgwZWhiLUFyeGtGMkJjbnA0RUdNZWs0eDRXN1RfNEdtNzlFb3V0TjJzSW9iSFhXYi14bURJbUVId3ZHZkFsYkc5ZFFLZ1pDT3Rrb3EzUHJvY0hEMVFUTElpNEpQYU0zc1VFNngwcy00NXR5cEFHQ3N2MDhralVkUW5GbUVTYUhTYzJjSE5CUEFFX2ZzMGU2bm1fakRLektON095RkV5Ymd1bHZ5RTRsb2ZxWkxfcnNxWFlPN3lvT2oxX2FLVHhGa2ptallGNWhiS2FjcDhCNWstRUZUWVZYMzMzWG9OelJreDRnOFNWZW0xVUNibE1QOTJxb3BLUklPaWNJQWpmN2dkS2hhQmZTaE04UUt6bDJBVjBVU3lwMkdrUFRja0NrWEtXUXhhbl9RLWhtZ2l0V2w5ZVpOR3BpUjVSUGxqR3VRaVRYNlJENGZKcUdEQWNMSnEwYjZYZGhva24zMHd0Tmktc2J0RUN6NC1HV1ZOZVVBYThETl9haFNaMXAwT1MwMkRkbGVKOG1ZcW5vYThEbF90ZGZEV0xiNDg4WVplU3JwUmV2WlBJWm5OQ1lQUngxTDdxMVVGcWhfajVrQ1N3Q0VWTEpDUFdzaXlKSzluXzU5c3lUaW9DemxyM2tuTVZ2bDBZSnFYdXF2eW95TUZrcDdGdVdBbWtfYUR4eURaYm1mRGNLNVFnM0c2YlVwVXhPQVJyamgteWtreVpfcmxsa1hLUjVrTnJJMFFKYkw5UHBiWFNtMzZVSTFNajB4alVael9IYmx1Z3J3c2lzRUtGcGw0T0k2bUY1cUNLZVAwWmFmaW1nblhxS0d0RW9wNU9kTHNGRXNoa3BSSWh4Wk02eTVta0RZM0FrX0c5N0FuLUxzaVVWdG5IN2NYNUJPbHZIMVktREFGdzhkQTBpOFhPbkJoWnZ4aFZqdXctbWtHWjBITURVS0RMWk5uUVR1RXNnVEpDT1RQOVc5R0xtaGNfMGRSS1UwQTQ0RFVRU0l4SmxEYzNYWmdYOV9XdWxMY08tdjJib3pvLUhLcTB3blN0dmlPSU9YQ21BRW9PWDFodWROaUJmdktBc2NYTnE1bGc1YmtaN3dDR0xSQWoxUjRSelhDMnVsaUkyZ3lpMTFHZU1VanpoU0h5Ylk4NG5vWGpDODNJcGFTX1FTYl9WUFEyeWhMWExVdnp4SHJ4YldpajQ1a1VEMWJEZUkxOHhhQmd4UzJ6VlRVMF9FcW1WaU9wbjRnTWczd2oxMW5tV0JYOHVHUHlkUENhV2dtbFJTVXNxVXVGQ0dYZ3RNUFN2R09XRkl0LV82YzFWdVlzMGJDNzl3QnhwYy1MdENkRXIweVM4NWZKQTE3aktoclFINUJLQXNneUhKbzFVU21FZGMtTDRweWpkMS1obnZUYzZxRHBXQmhSREhieV9DeXBfc28ycERfYk12eFZ1YnBDX3FIT0dlaVRLSkpTcHdmMC1OdFRLSnAyUzloUXNQYnhIeUFlQy11ZThIMXA0WlcwWVVyWGpJRDVoS2pKRzQ4b1E2THBsaEJTWlNCa0xpczRqNm5nV2ozN0dLZEFNN01jNlpKVFZRdEw4RXZjWWNTSUlEN0liMHAzXzBIQzRKX21NTEtjRlZWWVp4TjlvSkVPZWJLUFVzbndwelVUX05KbjQ4VVZrMGwzeGtDaFlEVDVmMENoNl9MSmhSSzY3ckI0dXk2WTY3N2ZKN3RjRGFfWWsxZlotcmVpSlBRNHhMTnNOZ05hU0FoQ2tqZE5Nb241bmlPUFNhQUtVcWdDbkhsZzN5bDhPOXFhcVk1aXk0TzFlS1hHcmY1THkxV0lNX1luNmcyeFg4aF9TZ3hlcTdRN2ZOYlhIT0Ztd1Ywdk04aXhhRmJZYnF0N2hHT1pjWnVQaFVOaVdDSF8xb0MyUHlIUE1IcEtWcWdaOUNYYkdQNmFhY3J0UmpRMkxZdUZNSnNWRVhlN1gxNm1xMDZpd0dLUWxsUlZxXzZoZGtqUUs2SVpDVTNzMXV3cFlGeHdaTW1CQVVCaG1lb2kzUVItQlhrYnc0RU9nYXllQTJkSUV6a2g3cXFOYmNXNlNBdnp2eXd4cUlQT1FTSWYtMVlSRnZfSDBpYXN2MmQ0R0kxNHpDWXUtXzMwT0hqYzYyX0VMLWg4V29pa2Z3cTNXZWZNMTduN2hGSmZzMFNWNTVHY2U3UTdDQkxxNEVkSTlXc0t1MDlxeWhNWHJwUlZPWTBrZzdsNjYxa281c0VsN1RxYzgxNWl6OU1wS3RZU1RlV1lsd3pnb011clJDNktNYmZEV2poUmlldGo0Z0RkSW9GaUQ0dHJGNjZvU2k0WTE2WkNxYkVPMWVKNGNseWZZWk8zbzBwSk1NQ0gybUlwTVZPMkRueGJSSURIOUxiSEU2VE1qQjYtZkw1a3d3WUVoSHI3UnNaMnFFYUdWMDdXcFkwMUdoTWpEZXE5dGI3Qm0xXzFvcWtsdVcwMjZRUng5Vzcxa0RwU0xPNkxia1RWS2xuMlB4VmdZa3F5V0pHNlZUbU81T21fRWxlblhQMmx0bV9VVXN4MXgwdkxWczR1ejlHV1VYTGZKbVlzZnViQXBwVF85anZyRDlkV2xWc3NKdUMwRlVVNWxOUVUyOEJWSXpycV9ublJVRUJjc3BLR2d1RmN0Mjk0V2xFVjZzNFdTSU5vNG8zaVM1RWtfX1FsZEp3c3JKT3ZQS2M0S05OM1F2cFJDa3hPQ2VwZGpZZEMtbVdfMGxNdWVoVzVmcGUzRnhFMGhjeHFrZmkyUXA1Mk5VYkVZVWpPV2JRZ3UySVVmX3ZBMWpIRW9UTzRQNS1vYTBrRHZaUmxPQldRbTMyS0g0RkhwYWpiNndLTWVIOU1VZ2ZlS0dBNWVJRDRxaWwxWURONkRMa1BKT3FkeU91UGdqMTQ2WWJkZEtQdmFDOF9YS2w5Nm5BV1lfMVo3ZTNKYW9NNzhZR2pMaEV3alFpdHlSOElLRTV1ZmFDZHdYMWNPMG5FQlRnYTZPNzFrSEJkMEpGLTQ5X2FPX2RoWWo0WmVLWVNxOVhkQ1NHNGQzSFNxVGVsT2ozX0tzUGp5dk5ScmkzY0loVmJVWHkwcVoyN1NqdlRRcHFEaW5yMDBra1Q2OC13SXMxcXJhazQtcjZoQUFUeTM4S2FrUFJWYy1WMUQxUVppR3hFYUdrbUg5bF9YT2hFOEtHREIzZFgxNVNOREptRi1PR1dKSlJZNWhqZmpFWVNEVUhmb1NHTElNei01Wk5hVUs5cm42cFBMcWZfcTc1dkZ1TWRISzZhcTl3eWUtQTdLTjZyS0xqMlNfclV3RHk4dnBlbFBBTktNTG5Td09mV2U2eXdFRmFJTDRVLS01Z0NvczJBbGd0OWE4QmRKOVpsUDBUSzZEb0RVY0JTbE9VTWNJNGZXb0lDYkhwc3FnS1d3MUJXc0xGTFU1UnNSZVF0ZHhmSFNZdWs4azFWUlNhQnZnSEh5Uk9NemJXYzhSWmJCVjlQc1doaEpMeVpMM3RldzJ0RkhaM2h2U1A2SUVidWpxSE0tYnRWSXFqb3BEOHFDMG90YkNERnNqdXV0bFdVekgxTXhNVFFGdk1KY1Rfa0swM3NOSVBNTnc1MVlrQm1fV0hiQTNZY1V6d3BPd1JNNnQ4YWFVV2diRUkyNm93Szlhd3BUTzJmVHVncjdzNTJoWTFBNVRpMXRobDM4TU84UGNfeTFyYWJBeEVsMGloTUw3VlRFWmxhUml2VW5JS09ORDdXSXE0U2RHbjZzbXJLWW1LUGRFNy1vZzJfMXVhWkJyblRScHNrd1FiZUVlM09tT0lRUjltb3ZmNkRCdlZlVGtieG4zTHgyM2hwUVRRYlpFSTRORFFHMnlzTXcwSnQ4OHl2dEo3NkpwSEFYbWhkZUpBNWI0QTBYb2JvSW80a1JGTjNlUWlCQlB1eTVsZU1qeEZnVVE0N3Y2M0pyNmtibXpfSEVTZHowOGhNeUozakN4Q3ViNWdJVGhtbVdkQ1lIUjZRYjRtWlowMjhIT0ZCNTl6MkY4QVVENXNwU2wyZmhKZHBtUl9aZ1BsaVBuUm9YNGVPU25Dc2ZLTW95X1YwNk1KRTl3VGZPSXU1ME40cEhoTE9qQXNUX3NCSHBfYWJMb0x1ekpJZXdtV29SRThVR2xWVENOX2hJQk1pdWI1V01lbDgwa09nbHJTNXRMZnNCdW1qTTZXUEladUpjRG1jWlozdXpEeFBkRWdHbFZydXE0ZmpfMFBoUF9uNS1FcEVtYTkzZDFaLURCTXU3Wk54QWYwS1ZBOXVJOXZ1WFNQRDJOVmRpMG5QRFFjbFRCRWhKYW8wM01uc1VGbkxBNVZqQlJnQVV2Y05Cd3ZlYzRfOE9WMDJLRVRxZ0hMZ2tzbkIxdU1jZ0cxYnVQWHF5cmJJelN3WGJiTFViOTFWSkZERl9ZNGFTWGhWR0kyUzFpdGdZOVlsYzl3aFlJYU9pQy1KcTNiRUZiVnZiZnJnemMwOUtiYl9ya214ZjFpWDVRczh0blYybHpSaVB1eExibGx6dmlEYkM4ZkpMRE44VHo4NExMa0lMZHNmdjBHaWtkRThSelU5cFNnMVU5ZURUT0RnVktDRmtzaXdJbEJ5MDRqd0d5NnNwb1BudUxweG53OWhKQnpUc0M5dVRUTmlZeUk0SmxpdWs4Z3ZpR0JTT2lMeGNiRVlXTGFpN2NNQUYtcnI4VTYya2hDYlZZVU1mVGhnQjg5aklmNlZSa3pVSGs0QXVSR1k1QnpraWxBcDhHeHg2M1RacnVXR3ZMa1FKek5wNS1PVGN3V3hEN2N1VlFULU5icVNZRmZYMnZVcEt2Unp0WjNxeTJOMTRIYmdIeUZMYnl6SVVoTXdiNkY2M3dwcnlIN0hfMHp3OGRfb0N3bWVCMVBTQVBUcFhiYjhRZjluQlRXbjFCWlBMbUNVc1ZCaUFYQV8zUWp2SWkwUXlrN3gtb3BGc1E3OFdJUVpadkhsb0NRNWI4UGd0bVdaNUFwVDhPc1dXQU1sYkFzdXRLdXZjTFkzbW9DeFZIOGxzclZxOHVXSjhlQzgxUV9uOG5YNGFqcnZiNm51M2ZXTXRDNmxFeWwzSW1JSHRHd3lvVVZOVW4xZWlBQVpnYzdiQUlnNlBoV1pxS25DMkFyU19lbEVheVFUd0ZTWWxrM2Zjdlo4Z3RMOHB5THY0YkpEalI5NUprM1g4NGJEek5uSndfY2o2Y2Fqb0F3WW9nc3RRZFRnd0pqTU1WaU1Fa2hraVE2SVRUU3lDNUJmOTBCa2VXbWZwM2N3Y3c2cThwMG5NZEdnMjNDc0p4VHNla18zbFotRS1KcHZESHJnVUV4d3g1Z3lCVy1STjdrX2xnaGd3OUw3QUNTbHdGb2pHVzlZSzA4T0J3Tjg4ZEQwLVlmMkZSRmFnaFVQY0RfWXhmaC1qNDkyaGY1SnE1WWtyOGJMZENiZjdBTGgyeUp6UTRoUGREMDdnNW1uNThnT3ZMUWo4Z2tvTTBfMHVGOHBRaHpqenRjVlRaM2NBNkZobEI2a0Zkdk9OQXZVLXI5YkpFb2NOaW5fRTJmb1B4VUxqOVdEdGxaX3N2bWtEVzBjR05fRWRlR1dKLXhLcTdWNDRzck5vd0lCOEprZHE4dUhZXzFadVg3bWV6MHNYc0lNSEFFSWhkSnBJelpYQzVjYW9lTDRfalVxelB3dzJzMG1IU29CSlpQNjNWODhFQVpMVkdtaklwaC1PTkhQeU9QemFlQ21xajFlTVFaODdJSGNhYm1yUGNaWDFITTVvRi1meTZ5RFVzdUJyRkx1dmRyX0VJQ21TM0sxWEZmWVhsMkZCU1ZsRGNpUDJ0YVF1RzR0dHhjaWhoRWpERDVDcEZ4S2dha0lRSWc3VVFBTy1rUTN3THZHdW5CcG4wVy04eGpWRFBoU28zUUNOc29sNF9zWnFqVTBoeEVNTVo3YkVxTzNSVDNTVW1OM3RjdG9LWTBySzBxZmR1bk5iSXNjdG5TcUVPYzg3dWd4VTBXNHlQYjBNOEoyQUwySkV0bXlRZmN5RTBDalkzVjVZMjNlN19UVV83bEk5alBTbnhvVi0wdUhCRjZ0Z2xYN3p1akdJSG82MU5CMHo2MHpXZ01hYklqd0Rha3dPYXV2Uy1yX2RqbEZpeUUyZlJvQnNPNDN5WlI1OGJqcHhpRHJxOWdnMEtJcktBQ0gtWjliTUdxeFBIbHVrb1FGeHAtMWszQjdndE5GdGh4dEJqMng5Q1FBVUJwMFNZYXRhUmgwVlBPRGptMWhLd2FUTnUyNDlxZW0tbERiNTRhNFplaGZqVExkS1RoalFiMktwY2FCbVg4ekpQbnRhVlA2MXdDeVRGVDBSN2RIVHloZUhfS0NYbHA0WDN0ekdoRTg5VDVVWjVxVEZJWmNDR2I4YzM1c0pjYnh5bWZ0aUJJd05sUFRlbkNid3dfQXlOUWhreG95Wk1iai1lQ3NBN1M4V3FaUEp6ZVozWE5iV0ZJeS13S3hFMnVyTTJKRXd4eExXRllwOFQ1cFBQQVF1NG1NT0k3SDlfNzRTcWpMRFpCU1Myd3dUdU1YZW1aSDJuWVI0WmdCUF94UkZENzYyM204ZzRuLUdNNGhibVZPMW1LTllJbDlHdzljbkpQOHpSSWlNbUppWEdXTjktbjRPVHFRWExFVnlKbnlUQ0RCMzFTSFctTThyeUJMemEtOUxOdFZhUzVTWkM1UG1vem9EMFZyY2hFVEZmelhwREJfZGYwNk1aYS1icEpBQklTVWJidi1hM0Zobm9JUU0yRW1uT1N2Rkw1ZFdDRlZMcXAwREJOZEVOS0FiQmJaNGdaaGNEREVoSVQwQzh4dWJ5MjN1MW55ZlowRld0WXFoTTh1TS0xVzVOTlNLZGkwVFVhQ2d5OHhBdEh5Wk9YeWgzVFRMVTh2ME1rbjFRRjh5ODRsOVJlejE5VTR5Z2JqX01CVUJreGYtNnhpSFRVQkNpQmN1UnoxM1pSTkVMNUFzTUZLalQ3Y25zRDJxNS1fdDk4dEZ3SmNQejBTLVctbzFtVnBRSkFjZWZ1ZXBRcUdvVzdLNWIzMWFCVHUwWVc3MTZCeW1pSVEwTU5VdC1Cbnc0VTZtdG9wWWJVRjExVXhSSHl2R050dVVUMlp1MDFJSWlKTVRvYmxoZXlYQkFraEVUaDJTXy1Cckc4cG5oZWFZaE94a2wwZE1nZy1ISlJ6V0RXSHJTZ2tUN2plaThNNnhOY0Nwc19veC1kNkdsX1FwYnRkRGZWaGQ3clRaTzhCNTFQSVN3Yk9aYUhkZHotRlhUZmd1c3p6S0RwZmtSWjN0T010VFJ0U1ZWR2t3eG8wRWdfQW9iRVJSNnBBblRfN1hZQmpFWl9BSVVwQkhmYldjZENyUkN5YnR4b2VUU0RvS0twblJkV0E3cnpiLUtDQmVzNG9mdWhicnNldEdWXy1rT0dLc2FuT0lPbkNPQWdHc2VFb19NTnBvZVpjWmd5QlRlaHFmNXlCQ3FZN2FmM2E2Q0F0V2hfSE1IVzl4cGk1TVlZVk9sRVBWWHZHTFp4bi1xS2hzUDVwM0g4a0VHam10d21CWGFuQVhkNE1HemZtWnA2UkZ2d0VIaFJHNFJQQkZYSkZld3laMW1oSzZZVDZXYnpuUGloTC1PTjJPVnJEc25CSWdEUGVtclpnaVJIVWdnMkk0MXNnX1RMWTQ2N2NYUm1JZUc4NWpUTmRieEhkRkt5UWhNS045UUVBYXhDTGJsaF9FZFF1LWJtcnFfNVZoRmIwSDlocF93S0M2bFlOM3BFR3ZsajN5QzNIYU1LTW8xSVlBTkROcmhGM096U2VHUS1SWmZHeFQtZTNwdmRzc2ROTHE5XzNrdWdGZnB5ck1GY01iMkl5MFk1ajN2bF9vNTFvLVdiYUN1Wl9KZEZfb19JZV9zZ1ZnTUhoTVA0elIzRlBEVjVjVUR0bEtWWldSa25XMTRaZ1hnbFNRRG5kSG5lbmpqR1N0WkZnelh6c0FqX2xibm5BXzZnS2ktZHQ5SXk4aW92cFN1SzhTMmMxRFdqU2xIQ1FMS2tCdWR0REI4RFRaYjZneHJCZ0piNEpFUWp1LV9mUXlPR1NOellNZ01ISHFiVTVVbmpxOFVlQkFlclNnQnEzTWRza0xRNjlRVS04clRZbGszVEVLeFQzS3hhTUx6MmxWTkZSMzRkUDl5Zm9HMnZvOW9PS1VEb3VUaXRwNkdhV29Vdm5jWkdDME52bktJaUIzc1NiQ3pOWFdWbFpDWDhWdFhRQnB4NV9USDNhYi14bUJOUnVQMUZ4dlExNERsanZHQVBOM19DcHhxaHAwTmxzbk9xNzlqYmV0TmtqVHVrUTFZLVVhS1lUVFZOaTlQV21CbWJJTGx6X1FfQ21lSml1M1BwVVUyM28yNHlkR0JFTzZNZFg3aldMdHp5c1hxSVJyV1JUS0g1dG1rT3VwNlQzck03UGotb0NNMURacGZHdFUycU9aVW5hZF9TNGR2V3RBT0EzMVVsLU1DQjlLLUpHZEhyU1NKS0xoODNqM2d1ZDdoTUswVFJmYzVXLWdaZzdiT2xUc2EwcTB5anVKTzAxYmZQdjdQTjN2cTRkT1RabWluNnBJMzJSbzBTQU5NZzlBRkdvR1g3TElaR0Y5bVRMZkZGbkJTUlctaW5taW0yRW1NR1piQV9hNUdvTWxOamhmV2JvLW5aNHZubkI0M1NjZlNwZnI2LWRvRzd2VUZzMHlPUURuM0VvZF9ZcHBwUUwtLWtKR3VlYndlTVk4ZmdtVy14NktjRENjSEl6NU04MzhROC1KTEpPNzVLS0ZqREZGa3JtTGZfTGF5ZTJuekpKVGxhN0NnMUMyWS1kMFJGZnd3ODRHb1JjaGpVS0RPQnlFUDVlNzRpcnVSc2hjQjl4QVUweFpyZlIydmdQM2gwbG9UYjJ5UG9wekVwaXV3N01XZDA0eGhsMWhJUm1haXloRFMxc3R3WFh3aDN5SlNuWE5NMngwdnY5bGpQTmRDTzBiQ1lyZVQ1SXY3eFp0WEl1VW5jaWI3eldUQWZNZHM2cXF6Unp6Wkx5YXFTT0JrQkxJLW82R05SMm9PX3F6dTZteG5tMlJGOUlMcEdxYnRnZHhYTTdScVNkNVBEa1RfVjhrVzdOOXlfTUJuc2RpV05uelo3WndPNldrUlNvbkJPc0licVFVS3NXR1dUZ1E4ajE4dy1hd3hnWVJNQlhrY3lEakt5S0piMjZrWjhnRXNlcVQtM3RPTHdFeGM5cjh1MEtLT1M5YlROZDF3YTRFTWZHMEhFeE1SdmdqQ2N5QTlLa1pnU3Y3eTlNRm1BS2k1M3FXNnVvRHRfX1Bwa0lFLVpqUGhLLTdSa3Y1TmJUQnI1bmctTlR6ekFHc2s2enVPdnBpU05JSWxBRXNlUUJERWNES0c0M1Fsa0N0X3g0VmJ2QW9kQk9lTVJpZWNMeTVtLXo2SVZyME9xX0Jnek16ZW85Wl9xZFhWdFZobTU5ZkhDek1rcEM5WEN2dTVXaVU5UzhsV3Y0VmM1STZXa294QW9vZ081QXJFVVV4T3JsMzlma0ZpR2FvUmNBbWM0dG81anhUUjhuWVJXQ2tFdUQ1dEoxcFFUNkhpaW9XMk1OTXR0OExMTTFpeUMwejI4bWFlcmdBZUxGQ3pTODZ6QnJybXVTWFJEQlhhaW9DWGM3VkoxSEtmSUFYcDY2ZEZ3RjhRUkdUOE9LMm55dlZIMzlvRWhSX2M2T1NiRzJvYkxTOXdWM2RFSUFiY0RhR3hjVUpCU1JXeTdUR0ZhcWdhemlwRVRnejF0NThlNUZhS1AyUnoxMHV3LVRHSWN3VVJtRXhlSzVnbDZJWWdMVThKYmVNdWtpbTM4dVFXaklVQXEwOWhva3RsRFNueG8zRFg2STJjdFYtRk9xYk9rX1dLRURHRG9aRG9neG84UFNELUJWeGJrQldRZEwtTUNENUpzblBGRjZhLV9BdFBaWktKYnZoM0t5bWQwNXVfbk9qTURUdXFKU0xuNUV4MjFPbXAzQW9WZlpNYVlTV1hzaXpOWU10cEVReEMwbWp4aDFFLTNmRm5uOE9GdzVnTXFXNXN5d0ZHRklYcUF5MFlmc0Fsb0ZBTkstRVZvVmpCbjY0b0Q5X1NsNVBwZmxFZVlaSFFRS09IRmxWazVwdUhlZHdpckNfZGhkdGp2TnV2ZlNSb1BLU0VJWGxnV2owRHRrRkFiaXJkd1FNTFBUc21CT2pOYnhSWFkzVG9Qd0RSZGo3eC03VVJxY2Ftbjh2VW9UT1MxYWE4WVRMNm5FNVhsVHpuOW01MEh6ek1Rb2tnemcxQlFLSjRsMFJkbWw1a1RiX2tTRm5XY0hobHp5UGt3RUxvZnZfYnlBN0lSXzV0d21LLUZGcUVsYnE5WW1IaXNrR1BWMlpHTDFmTDFGaU1RSmtxLXNzeFlTNjZJRVZ3b1pCaGw4dUZJbnVidXhFeGJaSEpTX2xQY0pLTnQzcExWazJJSzJpc2duVFgwTnlJRWNzMG9pdDlfQVRERUJ5OHZwWTYyTjIxYk9la1lJM1o1Q0pleFFpVTc5VU1wektndTJvTGlaWnBaeXJ4TnVMa3BWSzJpT2toanNaN3gzNDhRdjBSUjdRN3p1aWM4b2hnbWYySUs5cjltOW93MTg4MlpRNFlETTdlOGlxc0t3dkZkOWZuOERlcWl2cmROQUhRcjFlQTZnN3BVSkpZZTNiUDJKLWpGSnN1azQwWXBFUXZVdGFaZjF0cUpPQlMtWlhvOE00aGEwUE5KTWx0bFhmZGJub2x6aHRnYVF5blR3WHJBRTBSZmtnWjlMaHFtenI3ay16TWEyM0t3UHdncDJmUGgzSmV0Z202Nkp4eHBnVjQ2dVl3UTVwSUFibll3MDFOTUxFTXlQaUNySlFFRWtwaXo4WG9hOGtJMkdRdkh3b1pTYlMtNzFZcHMzQ2oyLVZkRTBNaV8zUnRJUEZyaVVTUERfS2cxQ25pQlduN0IzS1pUYjd1MFFwOXl0VE1TdDNRbUNwcnR4YlktVWFwWEtESUYwYVVCN1RPaDRuN2lFZ0pQYzV5M1A1LVZkQ1VxUHJKS2VwckUxN3AzMmFyWjE4VFFwZE5rRHdXRWJWZFlMZDNvc2tTdkhCMHBmbTFablpMZzNpSGo3SmxFX0VsT0RIOVQ4MXRBS3ZyUFlzZUJsWnZQbEdUbDdRN29XN0tSZ21zVDJHMmlqOW11RlVEWEoyLU9ycFhHTWFURGxpdGNhcmpXR0tjMXFJRWhzQ0IybjI3LUlDX2FnbDdHbG4xUkdCRC02bEZGQjFuTVBWcHJpVGljQjA3THJZblNHSTVRdzFpY0pYNnV1TzYyOHRTMEh6Z0llUEdRVzhPMEtyR0xEZkktX2ozQkphbEN1eEpMeW5sdmE4MDVaWFZ3RUdCcEcyaGFOSlVleXhJeWFSamM2SGdOZzNHXzNIbFItWXhiUjBfSmtEODJwczhfd1VmZTBGOW4yYkUzWEVNeEd1bm9rbWdWbTdxQ3I0TzNxQk1HZ0dvN3ExNFRVTGhndk9GeXVZU3BKdkJ2a290NVptZS02SC1idVYySlVjNENQYUN6Y0pFSnB6QlNmTnk3eEFlQmNvbEN4Q0w2MzZDZS0yeUFGVTFFdjJ0NkN1U1BHZUlyY0RrRlUzT2RWOWxvRVlJaG5nNUdEdDdXUjN1RDJsRkh0M1dWLS1ieHkwSFU4YkZmT0c4b0hoU25NN1hsOWtGR1ROWUVxUndIUjk4eENYeXVlS1ZEMHVlN0ZPNnotY3dxV1NxX3BFb0ZUX0V4OFlHU0EtS1k4N1RCRFY1ODlYSEdMYW05bm43RXJybTdNc1p5Znp4V0NBb0U4YkktX0hRN3dTLVVTc3JuZkh0eVJCVkRMcHRSUDVXWDhTSW5jekUwbTFsZFdRUFRZdDFZTVdld1M1Wk5GWll0SFFVSU9FUzNRVlZ5dWlrcXZQczBQWE5Db1p1ZUJoVVViZlVab0E1WFpDTXFYWVdsQnBUMzRVWkRTV3RxUnRVcXhjZlk5YmpvNzZWNjRfSFAxUHJ4V2NQMFZFVi1QVmhxTE55VmRZd0VsRTB5YnlyWlNsRjRwVlM4VTdsd1VlS01UMnpHNWVDLUktakxpUEU5S1M0eWU5WEdtZjlVZEZjd1V3cXBiMjl0cVFFdXRUNFRmUU54elM1dzFqblUySF9BVmxvNm5LZGJiLWt5RjB5WGZyRXB4VHJtR1VSZTRqMEVzMHBXbU0xOVZxY05yeDJDczh0UDlGTlFxNlptQnJ1QVY5ajE0SlpOdUhvY1ozMmU3cTdsN2tfcWlseEtDN1hjR3lRS3U0YlpXdS1qWUEzdm5OSDVORnAyaEd4aWFLVmRka1pDQVlTUnBqMHVNZ1FuVGNEUkppTTJoV1piaGY0OXBUaUVwak90dmhIbHV0WDdYdmpnTDVZcWtVRzNBbUZVelZIOWs1QkFpUXo2VUtwVVJjUFVNUnFPTG5fbkpMd0VsY2xKUE0xYldZdEhZNHNTdzl0OTMzSjZxdzdENFdNRGJRLVI0QlJubkxwNUZZRUtSY2Z1cHVKWWtxV29xd3dQUzc4b1E1UmZfSF9VbVlBZEFOUXhsLVU0MUw5RTE1TEZqaFBsMUZObFhNLUp5ZVNJNjhlbUJ1NGNWY1l4d0oyMGd6Y2NuSWs5UEtjdXdUWE1IUjVIMmNtZENxRnVBY3lYUlJCaGhGRVBfNjFmbmxnRjMxMFZSdS02c3JmOVhnTGFuMEdtaVNZSC1UaVpmcUFrUjItRVlvdWxFUG9UWUw5OUhTekcwQTBveXhpc2YyaER3Z1NxNDVpbjJaTU9BQnRrNGpGT2ZKQ2kyOVZxMkV5YXVOQmRodkFQeUVzVHJpcV9ydHZPN1phUUs1Ulc3QndPZ0RsY3k5b0ROcmVfRG5mZm9jRUNmc3hMVndab0Z0Sm02eUpoNmU5SDVTOFdMcmF3MEhDTklaR2QyaWNTUTJEMG5oMjh6b3JSY1lfanpIYjBwX0VIZk1iNjhxa1hoQmREVE80ZVQxeGNtRmZuUXRCQnRCMVJYaEd6cW1MRlhTUXJRRWxHWFY0czZxNWFYRlJQNkljdGowQk02VkxHWXVpOUdZb3YxZEVrWVRaS3Y0QUtnQndySWRGazl4N0hOT29YRm8yRlgzY0hWTUpWU0hzck4xY00wekN5SVNGdDNkaHB4TnVsVHY5TkdfQWZmUUg4X3NQa05Ua1R6clcyRlM1RkZpTjVrQXJLeUZRRGlWNEZHZTRxWE5WbFhfOURtLW1Hdk03Q2lPWDg2Q3Z1OEg2c2JEckxFR2VxdVJFSHdxaE9DYnR1VDljczNIYlBsbDlvODhxTkw4TV9CSzc3aUh2a0lSQUc2Qkl3Qkt5ZFo1QUNpVnh0NVhIZ0tEUE05a1VaMTdLM3FwYXFUblk1YWw1QjF3bXVYMkwwSDVGckxxQjJTTFBPUE9zcU1RTlNidGExQXBkai1KMm0ybzFWY1JPaGhWeVJza29iLVNOUDd5WGJrbGlUOWJTSHl5YzFvbzFXcTZKYnNZd2hwdVI5aS1YX1cwYkc5M0hyYS10c2pvYmZPYjFBeW5sRXotRGpqZXl1eEt1UGVtLXVvRVlTWkZfbXRsd1JxbVNFSkFwWmlxQms5VHFTZW04LVBCZWxRR000MVhBOWtFeHc3cm41anROODZEdTdUX3JvRnRTWGxpakFQUm44ZTI4XzcyNEwyTWtrN3FPREpLMkg4Mzdvc3J5bjNXRWE5MW80OTJuTS1BcGNTZ0pfUUEzbURqUTJtaHZNVElPakh5TFRCZlBjaW4tby1UQzRhc28wdmpJUEhLZ3pUeE5oWnpYNHMySjFSRF9ldW91cHhfNXhocDdCTDZSTWt4eWVMd0o3Y2VwZFhDVmNmdzdzRDEwQnlyVGVtSnVoT2oxaWhrc1lVUmdEZFI4M3pweFl1Sk11a0ZqbjlxbEQ2a3c5YndNWnRpU2h4QjFZUHNuV1daV3U0TXFsVTg3SldZQzlEMzFUdXhiNFltYndsd1RsQTV6dFBTS3diTk1fYUI4aXZVUUhUazBPdFFwcndXMTlCdU9FbjFtWnpBYnJ0WkUyZ3NFQ2w3TTREWjZWR29nMGtza3gwSUlDVks3WkxEQmZRYXhIWmxFOFk2SGFCS0JrekhKSHE3MUNfcnMwcEo0UWZRV1NiNGdkRFpIeVpWY3JaNktPbEZsQTBma25LdEN4YnpjM3U2TUM5enFXa1ZYWWZZeWVvM1JSNUg3UVJZaUJqM1R6SjJVMVF4U1VqQjZyU19XeW9vWlhnNHNyeG5QRWdKak01TTdfMC1yY3NWVlVVdVNzT2RXMXFybjRlSy1Kd3Q0elkwUHhLYU5wZzRkMTFLUURIVXJkRjdPbnd4UmJ0NktLSFlGYW03UGh0ZVozV0dGbnBIbktzdHJYOVk2bEREYjBTLW5KQ3o4ODF5cUhUSmZ5YkhfRWFxS3R0ZU5ub3dDc190Nkt4NTVBS3o4c2VaU1psOXJnb0k1V0FrVkR5YmlfSlFFdTJnZnp0YzN0M1hCMnlTVDg4bl9BcDJNbU80X0V4QXBoVEpfNzdrYmJvWkl1Yll2ejA2Sjh5ZjR5Mk1yXzgySlFLVVBQYWhuNEozejR3eS16d2EtaDFLRkkyZThQTDZzODF3YmZ1QndrNlBHNFItZWg4UVhybEJrSXVqMkJ4eGU4VUZ3VUZONW9kbzY4VC1SWTF0bVdPRlZndnpDUkJKc1Zjb3htLU1CTGZsdW5XbTBVdDRvd0F1MlRKQ3lUaTRpWDhIM3E0X1lQTy1zMXBiQnRRaU0wQU01azVFNkdoZlc3MS1lQjJ2cHMtMjRORzE5R2gzTEhvTzNlelJtWmhwX3k3QXYxV0I5OURrbmJ6NXZ6dGxwcW92Y2hNNWRDOFNQalFkMDBDRW5NRmtwaVQ3SDZZTmFKVG5BcnVoanhTU2RKLXUxSmdGSE1ObzJpNEtfR0xxY1BlSGlIaTlPZDM5S2NGdVNQeHAxOV9wc0Z5bHRzWVp5cXhoNldJSG55bkRvdEpiOHd4dFU0bk1FMWFvazFZNk9yc1FUeGFtNnBFQnludFljbzFoLUlhanZHSGliWkV2UGdLNjgyc2RoZ295RjJ5OG1na2JTNWxHVDd6U2tYWm0yeUZwOGk0X0tVUnlYWUtqUndFZWdKTmktQ0gxWWs3ZHgwbExOaElOVzJEWkdyN3RFd1dOd2tFMzFHdWwtaXZWZzdGMTNMN2xXNW9OWTk1WXFXQlh0RzBsRHVoUlduSHg5dTNWV0twSDFmT0xDcnVIS1VXdzM3MmhtX21KS3U5UW1tQjNrWDF3SURXSkQ0SnFfeWlaekMxWEdIOEFzRmJfOFhtTGo3YW1aUmRwRFRRSmV3WlE2NXFJem44VEx0ekFhTUktUUlQZXJDSEZmeDFYWW81ZUpWdHc4MWphVHFRQWJCLVZ5X3ZXMG4zNXhUVklEOGdJUlpYakhRVEg3YTgtaDY3ZVFPdUNtS00yR2NZQjlFSmNRLVRPdUd5ck5Cd0lBckNxSGxDSzF3SjlPZjFYMjQ2cjY3dnd6MkJCQUdRWWp5dF9yZ09PcFFadGthV0pMd25ncXEwRE1pYWt5cE5LSlVJbEViX3ZkUGp6SFFKMV9IVzlMSFB2UWVHUmVJRTY2YzEyWlBBTm5tcndDaXR4M3hzcWNJZVd2d0Vya0ZzcWMteUlZbFd0V1Y4ejVmdklMY2JvSWRxVTJ4c3RqR0lvZDhudEp3RVRMeDJJQTZ6TUZHZ2E1UDZkcVhiMm85TUtxT3U3Z3UxYzBUaGtjVzB1QUFSb1F5ZzhDcnMzX0VfcC1YRXpCZGVWNzBIWUhXNk5CaV91OUVfLWVKVm13Vl9RcmJxanM4bEJxeEhsR1ZyUHVIbjd0ZU1ncXk5cjY4b0c4RVZRRFZUV0tXYWZ1U3Q1bHJpWXlTMlk5QnFqbXduUlBFR3lqTzJtLXVNRTRHQU84d0s2eFZVeWF1emlRQ0FyLnN4blQ5QmJTbklGT0RKQ1Y4WGR3RXc" + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "parameters": { + "value": "JkF6dXJlS2V5VmF1bHRLZXlCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUkwTXpnMVlqQTNZaTFrTlRRM0xUUXlaVFV0WVdVNVpTMDJNVEJrWXpNNVpHWmhaamdpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLm85bmpNWEFSZWVla2NaRXBsVTNjdUxQcVZlWmxFbGRDM01XOWpYR0h6bnBXRTdHRGVOSXJraGZscHdTWXFnQnBYQkozMFpUQkRpRmpROENXSnJfUGlsUWNDRkZyN0xrdWJhWUs0TW1zcVh5WGIzbkRJcUJkQmZIUVNpZ1ZET0J5Ym9sUlRNNDYzYjBTbXhLVzJheEdFS2NuZzQ5WFkycG1SR0Vrb0plcHJWZ0tyRkpOUGQ3cGJIS3hQSWdDOFlnT2xudnZxR280RlRDSzh0ZWotcUt2UzBfRGV6Uk5vdTZqZ25SekpxX0g2NGxWMk1hQ0NnUy0xbTlyOGVOTVVvSlhTV1hwc0lneng1RzdEbzIya1ZEY25vMW9rajlCMXNvbklkWmtuY1JybDJBVHNRZVlzZXdkUVd1VmhxRzVLN0pNQWo5YzBRdkxhTmlpdl9PY2pFcm5qUS4zbmI4azJ3SEcyNHFJelNNb184WG13LnJzc3NMNjJ1aUNfTm9IbG5zQlgzcEEtck1uY3g5R3V2NmJYSHpKamxwOWNMUnVaSDBSWlJYVXRwU3BPQWdyZ20tU3BxeEdWSjd2bmprbV9FSzJwYy1sZHNjUWtRSDB4bVFVcGZFNzN5b1VTYTNXVVNMS2VIVnJLdUg5MUtJR0tLODE5ejc5d1Y5Y0F3UjlzcHJxbFFWZnlKdlNFM2tnZTh1RVBpRFFVMFl5WnJqVjBsMGJCU3VkeTN1MVlsVHB6Wk1EWmpUcE05ZGtMclgtaGdxZ1FGa2xFa1hNRWlzd0RDZVM3Y3J2bFg1bnVzbWh5SkZCMklCd3dxNWJieHptV1diU3JOc3lFMmJmWEpXOWN4TFlQcnJJZFpfbkd0X29RSGVQcUFZTS1iVnpTdzdBRGJjMU15NTZwclBGLW9PSm40MHptOTBaaFBTVGMyQXNKRGFBa3R5WFU4WktOYUhFVUlHLWI1SGhUdFBuZ20wN0FrWEtQNngwaDhzZ3ZIaGdCeGpfdWRfQVpQc3pLWG1HdUhFTW9lRGhpT3NkQVdRR0pwR2t0NHVlbmZyamNSeXVlaXJiTC1RV3o4MEtZUnk1QklxbzVJc19RVHpWN2dqMGstYS0td24tazNsNTJ4YjhaNkRXd2tWZ3hqUlNXOXZnV0pVd2U5M1ZrVWtHM3NLRW5SOE9ueTNjWlhQVl9LbWtBTEdlR0ZzQm53SmQwY3dueTBCN2I5VWQyQ19kWEZ0N1BvbnFVNldfT016cC1Nb1NtRzRHbEFpUkVfQ3FrWlhkalhIMVItSmpObUNfdXlPUTdaN1BVaDAtNmd2YUxpcE1CamlWR1FwdzlEZDhmVmtCbWk4VW5uOUxPYXJmSXVtcEJyUE43TTJhM05KdjN6b0NkanhZVFVUMTN1aElpYWl3aExoUFZhT2pUbFRmTkpqbHhIbG5lbGJ1RWJsZTk0bVV1bW8wcjhKRlFMSDdfRjhXMVo0OC1BcjhYYXJwMXhIY0FReHk1WWYwclktdUU1dTAyRnRHUHlPZ0JfNV9WdFlNR2VfRE1mdENLOGVMZGFnVllMRDJDNDUxTldZeVVfeHdNUWdQbXBaMWFnSEdCb2s0ejhsSFBndVhCQ3R2WFFuTHBXQTVBamdOLWNoWjNwUGJmc2RkNjBhekJuWDVaVXQza2hYaWNDdWk4b0xidEtzQUdmckNOZzFwT2Q0MHBHMEJlVy1lNVE1WWQydjY4eFh5a2RiTXhFblFCM3Fzd1djVlh1QXBIR18wREZVVmZvSlc2aVBZcDNWVE51amM5M3QtMDcxWnlZbUZ4V0RfVThMYTAtM19RLV8yZ0pwMVBaVV8tMVBRM1huLXdSWk1vb3JkZGZQa1VPZ0lqdWkwa1IwZWt5RjZvdWdLNnJrSVZHaGp3YUp0ekdKczJLdGxncnRCcEs2MXZEaE5zbFR5VHU5OUp2T2RFTXhwRG5lTEg4NnlvVnhxT3lIT3lxNjByXzdpTHgtdy03Q3FzWTloT3dmQlBZZ3BQVlM2bm9oZVBocTkwaGJTX0lrM21YbnRkRUNMREtSMi1wWFh6bjlPRjZIN09EdHB4S0VXQkdCaHJ0Ykxmd2JZS3dmWmZSVTJVUHpkLUxFd1lQdDloU203Z3lSODNoYkZiSFNBV1cySncxRWl1c3FURWRsRW1lQ3k2cFp1MVFZWko0TUQ0OG5rVXMwdmVHUVhTU2Ytb2RhQm1fYjZZdVh1cWcyWk03MlZjUTd4ZzV4MmpFenFqcllmdjdTTGJINFZBcWp0aFg5LUdRaWEwWEZaS18xempIenhkd1B0R2lSOHJfMkFFZTgtRXFoNi1FaTZKdjRFZjYyMnRrNWFJUWx3R1pETWpGSVNuUkpRdV8xcnJiY1E3enZsbWhUSWFQcUJNRFVxeHBEOXNWUlhuSHdIaTl1b1BCUTllbWJIMkV5WDV6MEhWRXlDa1JEbUd3cmR2RGdsOFVzMUhURjVwYXlYZmF2WkZUZjl3WFZyQXpsRFBEQkFJVFMzWnVJMEJWR2pJUGV1SnRiako4S1pTczRFQVNRRTVyVjViTUpNQXcwa19nYkVRTEZGSjJVb0ZzcWU1QUszM2xGXzR5cGMxU0JaWjJfUzYtbEQyNkpyRFVJSjFFRmJhbWtoUk12bWJIT1Utc0hDT0lRcHdadlJzV3Q3NExSQ1ZyQ09jMGpUdE5TT1JPUW5XRHVXRlFXSzk1TkRGMG96WjIyLVFEMU9YOE9iU3daaHdOXzNfS1pHRmtVMEhNdzNjSTI5LWUxbFltRDV3cmJ0ZlRFbllOeHJKOGpuUWFBY2FoNy14Q0JKeUQ3elo1MXIzRVVyY2VnazBzc1dLeHRPVjRLcTZENmxuVmU3bFpUT1dfTU5aZi1JSzJUbnZCaVZIMHk0SkVGaUxzSDJHbTM1d28yYlZVaXJsT1ljVEk1NlZhdDhMRWhGaEotVlUyNk84NHo2dUJFZmJucEZLbmdKc3pfYVlucW1zNWV1bmd3ek5ndjdlT0U0cUdKSURyMTRBUXRWdEYxcWdrZHNnVllWVXg4U29SQ0NobE5VUzRNRGxhc1hwS1VmV19ENWIxbDRkbXZiNEZNRHJqakJ6djk5dGJSeGZFYUVOSFlYTHZFZnJ0b0pMeW9na2tmNkxlbVoxVDZRbnRtNlR4S1IycU81WU1vMnRJZHlQNmZNRmkweEYtdE1IaHNSdVN3VEpybW1nREcteHVpZllVNkpfaElSNkMzVmo2VkFMMW1oZy0xeW1pRXZuanVLbElONzc4NmFWdVNpNmx5TjJJNzZqY0R6SHZ0VW1ibkVvWWtORHNPQXdqQk9MNFBlS0VjR1hWcm5YNDJhNW5IRWM2cmZQdjZ0Q2tVSUI0UldIdzEyUTFiNDM2N1JvRS1PTWN3TnV6ampob1M0S1ZJbHo4UEFMOW9YYTR4NXlQeG1aVzZ0UUVna1pKeFhEcS00SWRtd1UzTnpVZUoxdGpNaXFsc0xRWDdlc29fTHRtTWJ3bm83YkI3bjRlVnZ4aUtQU3p3dW94c25aaGs1b3ZSSE1xU0NtZjU2MjJvUTZvWEdmNUJLWExlQWdqaE1Sd21razEtUzlGajlyc1hlT19VYjJOMF9hVEFLemlidXIxNVcxaHI3Wk1PVFlxOFlSSGVPaWxSX3Bkdjl5NTlDRDQ1WmE0ZXFURHVrNmRxZ1d4YnoyVVVtMnpwM3pvTHVKSVZ1Y3FIaUVRTVNfMnFKcy1xQTAwT2FFY3huZTM2Q1RsZVNwZjF5cjh2VjNWNW1mQU5zRnJBa21CMnBRWTNfZ21UbldTYTJ3UWlMa2RFRllPSExTeEk5UVowNHo4ZFRfbW5QMmIwWV96N3ZLa0VGQmFpNU02UFdPWjVIOUx1M3Rnay1fR0g0ODd6ZHpuQm0weWZZY3ZIOHJUd1QyQl9UZVRFMG4xcWFRdDRiQ0diUkFQNE1DTDl0SGlIcmlzWEllejQzZlZ3b1c4R2x4YmxKanlLWkpXbmlRNjlBYks3SmYyUER6d2NVSHhkZU5HNGxEZmt6WmFxU2lybGRzZlhXOHBGLWZ6WFVVWHR4eDF4Um5nQ1hJVkxLbU5ZbV9CNnNrNGo0VzROVFMwQTBOcFhsZGJCWjZWWmFDMDNvRHVGUFY0MGtwdWQ0WEd3Q1l3M244ZjFHb0Z6Sk42QjFqOTRLeTdtNE5YT1JsQ3ZaRW5qZTl6T241T1d1ZG9USWRoRzBobXVDUTZ6TXI2YkVaTUFoV1ZFdlREY19iXzZsOWdLWmVxNmVtekxvcmptOEQzLXcyLXRBYlE2Tmpjd0J3eEhMZzlCRllRRFdvaU9UVmJKN2VBcUVFMHVxVkhBcE9KbFVIc2tmQy1uV3NzOV9fRTFURHBLcjRfRE93NFhPUGNzT3dlVU9EUWg3cVFXRE1ZcDVHU1poVWE4MVVHczhmemZKU3JPbmtaTmRVTS10Y0h3R01mX3didy11dmt4UFUtV0tvNUNqR2M2aU5KMDB4MjZZdUpCWXd6TVFyeDBJQWgxMjVBWlozX2FvaFFpLWw3a1pZVE82Q0JVOVZsYllNMndrZXp4ZGhrQ1oxd080Z1NNbDlKU3A5ejhxNV84SU1WM1pma00xV1VqSGZMQk4xRXdFMjRxZFVzcWxyU3NZN1hQaVlpcXQ5ZktXVmZDTWw4RU0yd2ZHYlhxMUI4eWl2UlpMcko0eEk2MUdVUWJFVGU4akNTYTF2aUxxZ0FIa25IYjVjVHIwbDRhTW1EZGZKWnJxZEdpb1lPb2IwdHBuc3IxanRfZm1obGhJa1NSQnREUk5XWEU1OXBjVXlULXpyVjBxZl9sOHN2TlNEV2N3d09YQ3lITWZzLWw0T29xMldVWTVLQi1nSG1HYUJod0oxa19ra3V2S0hlMl9TY0loc3JjTXV1eW5aLW14Vzl5NHBBS3pvdVFsQjR0ZGZvbHdSRk5KX0tHYWJPZXJiWFdDT0ZTd0JVTjdNaG0wOXNyVS1VWG5od1IwdTYyTjVvMDlfbGN5eThnWDg1ZUVrenhuOGZ2NHd2T0Y2dUd1cFk5UGxpSTRLMTNqSHlOd0ZuY2VmRlp2b0dxVlhkcUg5RGJkYS0zY1FhbVFlNmlMek0wRDlnLXlFc2NBTkpKS3ltelVzemZZdV8yY0p0TEhsd0I3NVhLeW1EMG9nUkRvRkRwTmNPd1dRRUlwdVJwU0pfdWtzR2EwZkd3MGVBTU4tQmc1OUs3emhRWHJISUZOckN1S1VPMVdvTkV5WkM2UGlKSUwtUlRsTFQ2WlBNZmdSZzZiUl9aQk43X2dseHBIakNDaFZXMkZ3MnJFUDJJX1pSeHFqdS1WbmVwV2o4eU1CaHZXZzdXNm9QWm1odmVtUTBkQUljNVZTbVVaelhvNFVURmJxSFN2MGlyVTNscVk2eUl1MGRPd2t2MlF4ZENfQVdRUmdLSGRUeG1xYXFUSXJwclZyUHZ1MDFQSGlFbVRnaDZZVEZ6Yllqb3JEeFExWDhlTUN5Rl80cWNjMnhOdTJRblBIdUR0RGZkSy1NV2xJUDhHUEhSMmhPMjlCa0JJSEM4TlgxZmxDN1ZSZkZsQ09McGVIeWl0MGRSd1d2S2tieGNIWl9fRE5ZLVBNQlZMZGpyR3lxT2JoQnpQZHZMeFpXWVU3THNRbnM1dmxiMTc5YXczX3VmclRIWGs0MVpjaDY2ekFRRl9tekQ3ZEVuMm1fb2tBaTh6NTRwdzdxUDAwNHkzenNPd0RmR0htYWF2c3dGMW5NMUN2YXhXajRINE45dVNUaV9DM1oza3lTRHlUNGdUZjNqc0FKUEJybXdSQVBpaU5PTTU3c0x2Y3dJRk9ENnA5QkdWbjFwbjQyZGRTU3A1M3JieTZEcnlwcHdDaDFrampQX3lCbTZRZnd6MElGUWJiSG1zVDNVa2RMb1dURjFSMF9sbjJtR1kxU0hHT2o3VHl1YnQ5d2xLVW5nczVMTWhVcHo3NU1LR3F6UkFnWXNKcHVKUVl1RVpKeGFPSHNmY2VwakdrcFdoMEtfWkhZUEJESzIwOFVqb3FqMDdlVVVueTBaXzJrNXUxTjQzWGJ3V0ZvWVBhdndheW1MYkhWdkRwbzdwMU9JT1IyNkt0SzdPeGlnZ0ZybGVISWNaODFwQzRCdlNzRnZsY1BCZEpHLTZxWTU0Q3J0R2xhaDRvQWplUXgxWS1YU0NLNnZLYUIwWnZHc2lIajhRQ0ZURjRuLUJqTWIzWDcycDJ5Q0tPRlpMRk5qcVR1aHJoYXNnMi1pWTNOTWdwVEQ5eVBSdjA2X1VpcEVfYjVsQ0R0Mmx5QU5NYVpZR1RvSmJTSVhBcFlyU1hEM1dFWllhTGUzQmFSUEJUYTAyeWpyVFZPRDRGNHRFR3c5MkZJZThOSk5NYXRXMFhPSFAwVWxKTXlQUDF2MVdvOUh5aFllaDFfdWg3SlRLcS1hWnJjOS1Xd0ItQXBKTHBQeGxmRzlGZkgwdjNwSTl0Z1VndWJmSkJQVjMwNll2MlNqQ0M2MmVYN3VFTUgzcXQ3TmFYcFVsNXZEVHpfMF9Vc3VlWERQcDNqV01XQTMwenFaYTRFT0dXdElMb0tEM1RjRWNVcmJONGV1bHFQSkFNcWdWdmk2YWRGdTgxU2w5cU1rVVUwaWpqMjZhZDFaeVlEUUZtWlJ4NjJYUW9ZdG81bXJ0eFZhYWtNNndqbkVPSUdJaHhBTnJoX0dNVzVxREhzMEV6TDU4b3lOY0Q5dE1MUC03N1FCbTZwUTFsR0swMVJ6Y3FzTk14ZzRMTzl2ZHQ3NFpIdEhMXzA1TjF2TUt4TE5GbkdhZmwxN1E0eEM0Z3NQeXpYdzBjcklyV2tIQlNQX0NoWE94SmZORWdyNjJOMXEzQVJZa0U1TVlCbzctM3djb3dNT09GcTlrakN1ZGpoekplRjRTUHdfMnFVWVhZRTZsNXJTYjYwUFlFSkJxdW82Skh5ZmdlOXFJX0Rzdmg4eEY1STJfLWtLT2pxU3FZam02NjU0cXVES3phQ3JWLUJFLWtQNF9DOU5OQ0xTaEVWUV92Z3hYdDhzbTRWNGNRMElDRmFzaWV6VnNuV1QtYmRQTGxBT2RqOS15RmhYVTRUYVF3YnZqQ0E2UHQ0aDNVWGdnQzNqWU5IMmJtRGpYSzhFdFJYRTV6cmJsTDRKMFZ1OGxHQVBZaGtOcGNOakNrNWhSSW5jT0dybE9aUk9jdTdSeVczR2JWM2Y1MGJKN0xLNHJjMnJCMTZuemhBdk41WXlydWdwQzdCOE9OR3NTY25ha1V1alJzRzZGYVpydDNzTDJMOW5RTUNoNE9INFF3VWpKWFZKUFJ2MHhPTF9jVEQtdjk0QWgwbWdtcFJ2Q1dhUkl5MXRxeDZHTmZ1R1Nyb0tObmtHYjRiRE1oblpZMmwxQWluWHlCMG5uRGlvci1EUmo1cjhRZi1iaUR6cGhTallzZTZrakdLR0ZObzU4WjFfaGxEaGFob1pQX1lRdlBtWi1Tb2pNaGhMRXZqMXEyZzZWRVd6a1FDWTdIWVEwM1Y3cHVCVm4yaXM1NXpBSGV4cGpERWoxWDgxWU92bnVTdXRhMGx3VkFEMkRoNjZDcmM2VVh2SEtUZTBCeFlsQWdVdkhQc1BkSy1OdVk4S3RaeGNqTWNDVWM0OVl6VW43RVBTamFNaHJ2Ni1mM0pwc09Na3JwREpLM0dPTUVRMUV4cnhYV1lGaGtLaHR2UXZkMXZCVS12b0pRcWJveU9vS1hMM29Xb0FRVnljWlR3Y2laeW4wbUtkVF96NDNFZGhNcDNKS3N5blJ3OVZtSzk3Q3lldGl5LV9HaWVMSngtWDladVMzOUdNa0YxaFVmYmkyc3FJZGZMZ0diem5uMTluTlRVUDlOR3dhaWhybU9Ib1lZeUJ6WE4tby1UWUxhSS01bkNuQ2FSSW9QTF9XSVhyWDZPSzdZU21IWjk4a2xJS19JNTlPSXlWSllrMVh6bGVwd1lPLXUwU0x6bTEtN0dKSE54RGVOMlZhUEk3TThVem10X0x5alliWWxocFFJQnNyUktsMmZZeExKaGt6Q3NjcWp2bVhDemRLVDNhNFV3NDJ4eDlsOWl6dFQ0UmtnV21fYV9YWWk0b0gwdjNCUXRSZ3NfUTBPaGo2T2Y2dEtyZU5XZmcxVDRjMk01SERJd3UxTkl2QXBqNzZtOXJWQkdPWTZFUnhfa2Y3d2twb1g5dWRvcjBCbEx4a1FCc0lwZXpUdzc1MTBncU81Nm1UWXlBUzFCUVdOY1Q2aWhfN3F4ZTVoUkVlZVB5YUpFMnhqR2JNWGg3V1hGYjN0ejVWVWJOTFpxMjBiM3E0UFdkdjJXX1Foc2VUY0JTRDY1eVFPYndTai1UcVpNNi1teUZHb3B6dVdfRWcxU3pzNzRaY3RMSUxyN3pMLXRyeC1WTTVfVHllMVZXbG9ZOTZVYUJyUktpQWU1SVhKMlBQd2RIY1p4SWx4N3dBRXdueXVOZXA2b2NKcXRwZUJ1elB0LTFaX3UyWjZrQmR4V0lpYlVEaGxOU3AxM1NkTGw0Z2hkemVqZWFaYVllRDVtTGltWWJ4dEhsQ1ZiTm0yNU1ZbDYxMFU3QlZnNVJJSXB6VUdmZ2Z5NnpJRzRLQjBMR3BISzNhdHRRUExvQ1VlTDRYNVdBUUFsb3BRa0RKOU5lTHFGdHN4cWpZaGJnZ1Z5am9ScjNPOVhzYzlJVEtVaXJaUDlyTVl0eFduT0tUck9YYVk2WVR2Wi05QUhpT3ZfdTRhOElTS01DVng3OUlnXzdqTjFfREhjdGd5cEEzVnpkbjNKdlJJQTlfbHZDV2dTSS1NUjlPQ19xekhIUmU5dENqWklDVzhwRURSYVhZOHc4UUQ0bXJicmFLTTNsWmtTNUF2NVp2WjFRTDJlZkExbXlJdmN2czhmekxRUFM0Nm0xX3ZPVzcxN05ydDQzeUcwbUZxZnk4aExaZEUzQ2RkMzRtVVFXWVdqSkdvQXZ0VHBXRmpwWkwwOERjQUd0RzVzdkU0Mi1WWjRqSVVYQ2JsemZaczl3N2VsNThvRkJLUng5dUJLby1PWmYxTVloVEZrSlU1V3YtUEVreXRPSVpfU09nZVM2RTVMTUZsOVpZenZ0QkJuWWF0bDY4NGpEdWx0STh4LXpmSHdwUEFwNk9CQVpxalk3S3JoSVJuVGRoc2Y1VUpCcmtvU1JGUFlaaXE4RjJLWHA2Nm1PbDMyRm5RTVprMUlDVkxiYVpnUFlWNnl5UXpZdEdhbjhOc3BFTG10RWkwMVlTZE1ySUxkUF9TVTZwXzJ1NU1oY0RPMDF0Y2hwMHp6eUVfTVp4YWJodXpMWUVIeXJvYl83cjFKdWNjZUQ4SlM5T3JBdEk1YXdsbEhGSFRRWExOWGJuTHdTQ2JrdHNiTGFoa05ya0ZXR1RDNFRzUlBfYTlHMVhFTE5DRkhaMVhvS3NsQTdMMzFGaWpyNFpEYjRQeW5hT1BrSlhCcEx6MGNLN2FmeFVxNWlySHhZNEQyVkdNT3gwUmc5UEJJeE1vdzN6TmVGZ3Y5dzRTdkJ5VUpQdjNGV3huX004M3g5dldiWFh3bU9LbHlLNVpWQi11LWxKVno5Rm81YWRfVEtwUkxqSGdNWURKNU9Ka2dhaEFQMmhOaG9lb0FicnBPNzVYT2tYZ3pONDdwVW1kdzhmZV9FN3ZSeUREZi1LNVZNS2UzOXRPSi0xRmxtemJVc0pET0lScHp5WVl0Y2Q4cGtPU3JQYnIzMWdJNFRIUjJHV2xwZWJCZ3VhYmppck9UTjI1Zy02MmRPWWVKNHVwNjI3MjdnbWNQWF9EYmJfSFdrTnVLaXBmdkJ1UmVNN2J1WE9LVzg2bllHSW5ZNzJZZ2lvYVpIaEJnY3pHbktuUUlkWTJ2U3NzQ3E2b1FSUGJqeHRQZ1gxT1h2bXNucmNBencwN01ULTNueWF1RDBfNG90RGJueF92dm1fM203ajBwcjBGUWZ6NWs1UEVNUG1sOFVhenFxX2xEU3djV2JOU21JbWF3OWt3U2NXN2xrOUViNTRLRTRhaWt2bVRxXzRuN3lkSDNQblI3bC1RMXE2X2k5VWdHUVFfSmk5UDZQbmszQzd6TTVYbDBpYllEVXVUV2FUdlRrX2ZjaXo0VUJXWkV1T0lLU2xZaHVBVzFQUTJPU3NiUWxPbDU4U3ZvTEYtS2w3TmNkRXRBODJVWjdkLVFCN2xKNWFCcnd0Vmx6TDFxX2Y1UGd6a2NtcW1pLVViM2tUQ0xlNjJYbzN1MmFvSnNTQ0c4bXhwZkJ6dVFVVkk3WXdTa2ktWUtNUnlJSGhuOG9xRDNQS0xMbHk2LVZkZy1VREE1RWhhLXA0TnZYb2lLb3ptRHdBZFFpeG1IcnJTdUEwWmh0eE14N0FSc0pqc285blZKR1BOSzhCeTMtbXQycnNOOHlMdHpyRXdkUzBtLW1sRHRKak9CWHJ1NmhWOFBPeV9vSWVzYmJtWkcxSk96Tkl5YmhPOWdNakpsNTBSQXVmcW1sSXJpOEVXQk9vdzdVT1RKQjgtTkR6VzVXdWNiS0VLOGotdWtSYXhhQklPcTJBTnI1Tl9hTEF2RFpmalp1cDl1RGNTc2FUOTNWR0dmQlhHX1BYRlhGWnNtd2NnamxsQWN3bkhCS2V6QWd3SnprRXpFaEdEOFhQMVh0dXJPZHh2YTRyd2ZtVG1yM1pHVWFmY0tTUm5malpnVERSVThVRFd4ZjRwMjB1T1h5RzBBUzlJLUF6WGN0Nm5EOFVQUlB1WDQ3UG1fN05mdWFVTkt4SEZ2RFdOdWYwcVE1OFlvZmhydjJlRDlzUFJFWV9CWjhXWm9IYy0tbVZ5MmM0aDdvTTUzQlFKbTQzRzNkaXotclRwWE0xUDExakc4em5XU3RBQkJxbW40LXdKVVl1UGpDV0VtY29qdGtRZEZmcjQzRUNqTzE1SDJaZGN6MkphZmpUcmxPdWlQOG96ZjEwa2RTYjBURTFVOXI1dHRIU0ZzOUxPVlZHVjJnQUxjUGtMU3R0clgwMXZHMWZLS1ZTRVI2TzlZM0pZYW02X0FwU2xONnlRbmlqM3NJTzdKc2xYdHhaMzY2bXI2Vnl6WmphajVVODlJSjdJUlY3eXBkOWtuZy1RRlZMT0FhRGU1eENvZG1jRjY4ZGp4LTZBVWpQWnBHOFYxVG04OXh5c3BTaU40M0lmLURacTlaMXFjSXNDOUJ4XzlxTHE2S3kwNTIydnBKWkw4NEdCZElXM0FuUUdKbFY2dkRXbThpcF9LMjg2NG8zcEg4UTdFWnpqc05KZ3p6RFU2SkU2Y2psTVdhMDR5dkVMa2dnUm9feVM1MWUzam1BNUFFdWpXLUJ6TXlzTjVkeUpiZC1HcnN4VFltck1wMWI0dFNhMXV1ZHBSdWl2cUFLdV9qbTBvYTA4UHZqRjJyNjRXYXZQZHVxcUs2VGUtMDc1RkFQNHFEZE5ocmpJSHpneWEtUWowY2NCRWtZbUo3di1mUWxneUxzaF80bHJZQmVyWnNCMDM1Z2Z2b19CakQ0Q1VWVWFTRkRya2U2OE41N1prblU0UkZXN1NNQXViaE93WjlCd1pmT0tuajV3bDhfemRFTDVLVDBQUm5IejRjQk01OTZGNXhleDFORzNqME80Y3JDbzVod0xMMUVwMnVweVlULXpfTkdkT1MwMG50bGt0dnNKMGFZSURuQy1SSDRYcUdBUXlpY3hJVzNnTXh3LUNvYlIyUGdPa1dLTVBJN2xFelNLN0VKcjZkZENmblhHRF9scE9HSXgtUTROdjFOU3E4VGw1dkRtdmdOXzZCOEhHbmV5bXdpQUlJZ3NpWWhfUmR0NnBrdWJLVF92aFkwMTI1WWZkck9NaW9keTFLbEpNR3NJNGxqX1dJYVRHQjdoY1dtY0stMy1NNWlZVnJUSktaR2RZbUFobXI3bkZVT28zWFFCZkVVZFpKb2Itc1R6eDdNYWttd2JEcHdQdHB5OXFQem03akI0ZC1yYmlncDI3azRTYlVFOXNFWTZVeVVJVk80Y2l5R3ltZThpOEdLY2dSWXJ3YTZmVlItTnNvcm16dmd5eGZVcDFGWDZuR0xNbE5VMDNEblBVU0JLT1RWTzVnM2JuNG1DNWI3anBVQnUwQTk5R2ZkTEJGaXg4dURwR2NsQm51TFhncjcyRFdCRmFKeldkZXNZbTlaLWk0WDBaUTh4cVZwdGpXTnI5Sm5sVDlLeDVKZXdRSHZkeXRRdHRaTXc3TS01Unc5UHJreklWd1JPZE5PVkxwRWl5RmVqM3YyZmJGRFVoRmg2ME00NWRMQ0hqU0k5eC15dDZ6LUVtQlBpdGtkcWpUT3hLam1qVV9WNzIta09tVndhZkY3MzdTcVRKa0lpWlVic002bEJoQ3Rxd2cwNi1DelR4U1pMYVgzOF95dE51aUY1S0JfcXVwcU54SGJ4TTVZN0l5SnJUcGR4MG9qNFZzWDlxWkFjTGxCZnRNaTFUSTVLMkJRSERSNW5FY2UwT2J1SWpjdlNrcjNYMmZwUWQ1cHlLdnBXcXpNbnNuQ3NsVnYyWUY5ZDZHVWFKeHlfQ2MzRVJqOXZIMnRJb2hBckh6VzJlN1lNUTRyQnducnowOXc0aWNnNG11TDdVSnVsVnJLcjdJS3FDYjJyWFViTDBIRUVrTUd3T0pISEVnVWxlYzRGajRNQl9ZNnh4SFJuekVKMVVBRXVTeDJaZG9Bd1JsSjMwRHZYTWMxcFo0NWktYXE5eV9oOFJxaUZSUlQwSktjYzFpeFA1Y1JWRmVpbFhKWXN0cDV6X1pKZ1FrSTdCQlBaR0M2bkZ5RC11LWh4MzhQN0IzQjdUUzdoWVlXdm9ETFpGSkI0a1ZGRUhvNlRKdWNDVlpJaEFMdHlfN3dreFFxdU1mMFNOREQtV0FPWUJkY3JpZzZmYnNKSVhvc2lMSWNDM3hOOGw2X1dzNk1UMXdXODZkcWRUWkJnN1Z6YUlnREJ2RDRNakRLdjk2M0k2c3ZmeG5FWWNEQ3dDalo5M2JwUGRJd0htZEY1ZE0xTGZVLTExMktBN3dCQTJWYjU2cFdBMWk2QXo3Z1N6RXhQRkZvVkNBdFlJUnBFcHh5SVBaQUVHV05zeDNpNEk2Z2lyZi1hUmFWejFXUURCemd3ZDd3TlpqV2xrRVlyRFBBZTFPVnl0bU9HQWlGZmZiQWVPaVF0V1lzMHYzVGFTOGcydk9peXRvakE4ZzM2dDQwQTB6T3pKYnlzUUM0Z0hjODJuVDdQUDJBTFdPU0RLTmxSX2M0eHFWTkxjdlhxZHFBNmpVRlBUY1FONzk4U1FRbGprcmd1bzhEcGxTZTBnODl1VHUwV0ttcFltSFA0WEtmeXRGRWlBR1FDSmIwZUl6NVZsTlAyVnFiRGRMcW1JSzhuNVlNSUtDY2ItY0FUdGFoRXU4QkxQcVE2VC1aa2t4MF93M2RmZjhVX3ZCZUFwS090SERMWUVqcTBnVktxUHhaUWczY3RJS2oxdXJPeTIybnJ5aTlnZWZVc2QzZUYyMnBCQkx2YWVWSk96QUZndk5YdnRiTXFsUW1CXzQxNG1tVGVtaGFlNktjOW9KRF9sLUxKWDZPU1FISlo4MHQ4Ql9VZkdacFZES1NubmFmMmY4UHYyMy1EUmlGNlNyQ0ZKN0d4TEhUNXJSNzU2MW1YUlV5Qy1leWtocVI1ZFZSZDZhOVQwSGY0TlZSbjJiaVdxeWhPR2VUa0hKazE0YllOUFdYTm5XSHl1VTdyNEZoOVVsb2lES2xIQjQ0VjlmYS1YMzE0c2VHZHRqUFNLdWhFRHBMeV90VU95aWU3aThJaGNIaE1XOHlFNi1Oa0lZSnF4cU5EbjAwdUkzSEhEUWtGYzFQV0RYdlVIcnBJUFRJcFFBQ3c1dkNWT2JpUmFoQVBJM2tFRFh4ZkY1S2VLMXRuS1hsZWRxQmRIc3lCUkZuNnp6T1p1UHdOWktKNHlYVDhoS2wyamQtNTlqdWpibDBmNF9WdVJFdmVQOW9FWWtTOHU3UmlBVEVHa1lPVkg3MkZXTzBzLVNJWGVRRkQzX3VvWjdrM0xjSm9GVjlXMDZrQUVWY1dURVZGRUlwamtNMy1FYnJSUVdMcy1heWVYQkNFSUxsQ2t0di1LblA2N0pyZFV0bTI2cnFlVXZ5MzdTMTBCTE53YjRiNHBvREhMS2FveGFuZy1iRjZUb29PR01UU01MWXUzaUlLc0R3Wm9kZG1WR0xyQ3FxNWJJR1BFZTNoMnc1RjFNZ1hyVEU2TmFubXpKckh5eHVPc0VyaGctaEpGeGVCcWE4WjZZWFduTXIxNDhLanNoYVAyeVpFSWV6OG81UEc3cWRWaHFRenhYT1c3eEQwSTUycjBvbkhxM1hzcV9SOGhFby1UYVdPbmY1NW1YYTNWMk81LV9XanZxZThWdzdwTUF5dG95dmh2NTVTVk9xcVdkNXNIdGhITzd0OWlMdDNFYVMxX0ZnaU8zVmVENmlvUVBNNjZsWmhaYkpZZHo4b1RFeU9SR09KbkpjSVpqVm1YSlJIbXF2eXZsUlpjdkVMM19KR1hEOEZGNHlBVE0zaGhlNDN6VEJVdk9oYlRjckhNQTRLZjhWczR4cU02QWFsczVBZzRUbVZSSnVLLUVRWFZCaFE0TEpBbEgxVXZzN3lKYTdLM2hsQlZEMWo5WXRWS2htMVhPNFJySTNrZmVxYmxoMTRHQ1NEdnI2OExyTk53SUZsY1JEY1pKalBOQi1GWGhUd25PbW50ZVItOFY0UTJVa19tczdTTm9ZUElWRnJqY1R6X1ZkQ3dYRTFmMjNocHpqQ2tnWGlsSUlNNEpNMkZmcDNTZTY2c1JHc1RXXzBBbF81R3Fqd3ZfZFBYWDA0RHJNMFI5dGljTHhLczBnM3hkSXF1M0huamxBRFU3S0c1Yl9NUmxUdWJCQ3pEamtJQWRRUEFwcUhaWktnODYyLWloMDE4bERfbFViWEwyMGhFNFBNbTE0eEg3R0dPQ3FWa1o3RVU4ekd5Yl9xWHV4RF9LZHFLSVR5eUc2WC00MHhOeTJ1cWpDMmlvVVpiM25Tam5kZWFiX19kbC1jMDBLWkU4RnhTRnRMN0RreWxpTWM2Yy1VQXBhUlZKQy1aa2NBaXlPZ2NBOVZQa0x5a2xlcGRNYXY1Y1J2a3FvTHhmS3RMU2FhS0taWEdveFd5OWp2am5KZHZfMmZDTXlUeFdOUWl6MzI5NG9mNkNNY09sTmc5VW5iaUlHb1JVX20tMHQzamNRWHBrZ0pDWlMwcmQyZ3RGVExYdUVlYU9ZTnJjZ2dPWkVQMkstc19kNUlCU2JqNXE1QS1HYU9hbzFuRmdFOEFlMDdEVXVzeTBYeVEzd0cxb3JIOXUtSUxpSHpyd01Ickx5ZWkwYmpYSm9HcVBuSWd5d29nWjdZRmF6a1ZSTGE4OTBZQjlXR2p2SEdqZ19yYmVabWRDWkFoalNiTlRveFN3bGkxMnh0bl93WkNWVkhlNzUtSGNkTHZHaGgyekwwVjlROG84NFI1NUFKVV9fNjI2REMxT2w0cXVLcEt1Z1EwMHowZElPbzMwcG5IT3hqa2xlcGRMM0dyN3dHNXZsSUJKbXVWMlBReC1Hc0JmX3lYbUhxOXBZZ2RJeXl3ZjNqSjlDcmROYXM1RGNseUExUS1Sa3MzdWtyU3dublN1ZE5OeTNCRlJ5ZkgtbHhWQmpYSHQxUUlQM2JLbjRvNmRPSHNLclc5XzRPVnBNREQ0UjNMRmpYNFM3MDJ5ZmdXSkk5Wld6TDFadk40X2t0Zy1iVHNYOC1zdzJfa2Y3dXVldmJmMkYzLThmM3lvNDNUZ2dQaDU2TEZjbFNidGdaNE05MDRTLWF5SGQ2NkhVbmU5T1Axc1NldGdKWXdZZVN6TTgzY2FUUXVqRVA4bFhEQWxKZGJ0MTRhZ2FValJkNlBNLVVIUGdGUmNtRTd5Y0k4YzNSdWxrVkU2Wk5qeUU4VkNnaFRoN2JMNTJNYXhUcVMzQWJKNUpHak9ESkk4ZTczV1BFZHZPZ1FPNnZvak0xNDFnSjFtaW9rTFNIbXNwVWRhSFdIdkNkc2VHeTZyZmJfYktmeGJGS3FNTEN6T3VKbjhxd3hlNUxJQms2djJCUmNzM1I4ZnI1VjBSQXB5U3J3bmRuWExFRHdVRU90YzdwSTBqajVNeGFJaWxKU1FMb00ydXpiWXZaVE1INklXSndEdU1hNW04MlFCRnV3TWFZRDd6WmNwM0RGb2dFc0N5YnFjZFd5SFBhV3NxQk5GSDRuYXdwRnMwQ2xZMWMwbGZQR1RnTWZJeTRxRnV5U012cHNkYWZORUdBdVFpYU5zRzROSnNJV2NYbFNFQ1FsLVhRaHF2YkpUWE03NldPVTVld0RneGRGeG5WREVhdFRlQWZZaUVEN1ZBelFNUXNFenU4VUx4VmI3RWJzX3RsUW5hU2hVX3E3RjNUVEV3VUpPdDNCeFdPcWFCbmhNdUdOdU5CNXJabFd3YVhrUTFNdGxwOEFmWTBXSF9kX2F3VXdQbUpCQXFEX0xKRncybWVBS25OZl85NlZiUW5iU2J1ME5uejlvTnVXVmNMcWZIeDIzX1JfVVE5enZibTlkaGlSaUxSMnVDUzN2d21XS1UzVG9vbks2c1NpeWNmYnh2QjE1TnFnN2l4UUV6M2U2emVkX3pQYy1GdF91ckRrR1dOTFJ1d2Zyb001REQ5XzQ0UFVvLU1SQ2NiVGp1emxqQmVjOXRUc1NRdnZWVnp3WHdNY004Zl8yWEJxcU5OVl91b3V6dVRPWkFfbkNVTDV0T1dFSXZIZmlDRWxJV3lrS0U1TUFUUVlUY3FRd0VwNUlBeDFDOXdudnZtVk5NcmFFNHpDSDJuZllsUGNIYWpMUGlXcHpUdUR4anJGeFhIbVBUc1JTM0Q1YU1yTmM5emwyZkR6ckJsbzV0Y1pPT0ladlR4X0ExeFA3RlFnNjMtbUZzTGlRZG16NzM1bWVjUEFmdkROMnV4dWp3YXFITGx5NGlLelljVVRjbHFhYV92X25VM09ESUxkcWt1S1pCZFZzZGwwX19YeDdkSlFHNG5nN3kxU0d1V2Z1NEdRRnV3azE5b1hJM0ptU0c2WVZHSW5wSUlNYjcwSy1BREliMlZBWjlVaUloMW1HNmpUZWRHWHJtMzF5b3Jnak1PUlRERU1rYnZCeTFaazVrR0E0V05aSmRKRnlSQUtXT3VNbVZOVXRWcTFWRHpkTkpNdGhaWUZHQUU5MEtBZVlaZDdmaFRSZlY3ZlFYdzhWOENmM3IxdmdMTXJyZ2JSOGwzeUsybFBLMnhMcFl0cVpRanFaREpvSjlwUHBlcHEwRF9Dc1JEcVlDVi0zNE5GbldXWklZQmtmZTRPSGFFZTRlXzNQOGxNVTFKUWlJY1dXWmJ1ZUJXSnlpNDQ1b24wRm0zVzdlYTRnUUJCN2c1MzU4MUJBZW9ZQVRUYnFFV0J0LWU4OS1YMDd1Nk1vSDVKUU80OV9kSW0wNU11VVlrV3ZQODFHNDMySDFPYmgxRUJBNG1WdHYtM2ZqeGVDRldiZHVzTWxxa3RYbXVodjBEVWdmWGh4OEoxS2JaMUdjN3cyT1E4S29KZXNGM2QyTzIycjFkdHRIamdmbHBUZlVXOGFaN2hPZ2otSy0wRHg5dXV3ZmNVVWMwUnd6bkNMbVdqd0lnZ2NfQWZJbVRpd1ljZWgzQzlpVnpLdkcyV3BfZHpCMjgzM3YycGI3SlRKbmFYT3VSSlhiM1JQS0pONGcyVXV1NnNYc1JBd2FlTnVtVVVpM1B5b0pCY3dhZFRsbVVrQ2JNcjJMQzBzYmZkbjNMOHk0bTd1UGg3VTJ1RE5EaGk1LTZaWUNYZE5SRVNzajVrR0QxNzJoUHRSVEV6RzhUeEN6Nlp4dE5MQ004a3pHVWtjS2FLeVctZFdaaFVWRENsZVdnQ3F0NWdvNUI1OEVaV2RJbi1SRTRxREZ5RlBDNDg3bk9nMUVyVmZBN0NHWldha1F2QXN5ZUhKb3dkc0RrdzZIV0x0Y2ZwQTJENHEyZ1Z2aDdraHVNMmwxSE5DdWxNOWJSXzZZYlhuTGlCMzIzN3Zjc1d2bHpBVmJCd0J3WHRQT3RGWEEwc0V3c3Qtb2N5V3Z4WFNsT19kdlhRNUdHa2pLcjhFX1hzM0dvZmlqaHpsZF91OWFROGNTek1XbE5xRGNPWncxdncxNUtaeFNXR1QzcDJ4S1VHLWtSZW1Jc1h6VW91TFdma2RCbk41Vk1tUTdJTXA1RkFfcmdHWnFwVHByaHJMSlVaeTNZN3I4bG1McW15Z055a2FMNWkyVEpIT3RWVHB2eHVzck1LMnUtSzdpbUJVMHlkQndFaHNOS1RWMXlGZng4Q2JZazJTeUo2QVlWeWZLM1FhVEdqb2FFMGxocGNPRUIycmpfUDhFWHAydlJ3TWZsYjBtc2daYTFCOE93d1BXRUJMdlROVjVzUEYycFpUaFlnM2xWVzFjSlZlTlBLRTJfYU1zS0p3UGVIY19YTTNrdDBXVkpMbTBnZzE2ek5EMjlsaUlfNTBjOW1VN2NpVG1hNEd5ZzJtSkUzVkg3VWxUanVkRldmNTZpSEZHNlJpU0FqVUFtMmtBTkNGMjFyb3ljVUhFTGo1aVlQZF90S09vcmJvRDlWRGcweDRDc3BQMmRKZWVzMVR6aVMwNU5qU096cnd4dG5qMTBBZ3kyd3B5XzUtbVl6dVJvYTUtNXVPSFhDRkFNSW5QQ2doakFudHVYUGw5REJRb1ZSMWYwUS1NdnJWQU1Qc3pfaXMxc2xZaTlFT3NDUWp1R2hsNGlxYmVNWWRhbFVZZllGYnd5dktaTGNlZndjaVdpY3EycWhpM2FxaWQ5WkVwVGRyR0FvRjItdmd5cWVsSjlRb2NfSG8xRldZdjFrVUR3RTBmQ2ZlV1FteHBFMTQyYmlZNVNnV01CaE9tVTBKWkt1c0hCV3B1ZWJ1TDVlc2RHVEJwRWtpcEpHWmtQSlB0YzBvTlJSVU90TVdZTTYxbXZaXzRTTFpqOW9kZ2U1akMwMHBzSHVYTUExTG5USDZ0R3FnSDlTd1Izd08zOTNTQnRMRU5oNy10UEVEVWc0dHpJeXAxTHQ4R2dWS09DTl8tc2RCbnlpSjJaNmYwSThEMXVPQnJYN0JGb3E2aHlkOWtMWnZiX2E1VHFUdzNKZDJCdHRzOHBWS3hhaXFtTW1WUmZPbU4xYmRJSHhlVUNCQzdXdE1LZUc0M2FNLXpYZDBfUmI4MkxJTVVVRDJadUxXb0MwUGZzUmpiYWNpOVhBOFlBVTE1WllTOVh1YV82NUZYT2xxcl9sT1RuUjd5Y0JZY2J5T2tIeGpIWVFmRGkyQmZRV0NkMElXaF9WcUxNZWozT3ZEUW5FZDZvNEU1N21FQ1lQUEJUSkFIZTNHTjU2UEl6T2xLNTRtVV9USUNpX0JKTkRXemJvdl8wSnVEWExZMmUxZnhCOXNURmc4c1hINUozYUhYY2dpYUdSaHlnMjRKZElJV3dkcXFRbmlLZWNfS1IxVTJhbEVqX2xPQTNNb3FadHk5Zzhnc2RCMjRmQlRLOWJZUnc5eW9OVWhrSl9fM2NxNlozVVFvc3VrWklreDJwVlRoTkU3THdEQ2gxbnVRYlpvUlZrN1NKc1pjWkZ1TTd1SUJRWUNVMGRIQzFRS2lublQxc3R5WDduM3RRLXZPWGRsSENaOEtmSERpR2tsemdKUkhVSFUwdU9JQUNuNGtUbkRzN1ZrRGtEZ2YxalBhYXVYLUR4X19Cdm5oWXIxRFp5eS01N2x3SG85c21rZDFNcGFUVGRLR0cxOVktUDh3MmcyNXJCcVlWQjhBZXRlbXQ1bEtZdE8yckhJNmZSSDZrLVhSM2I3WkVlSFA5MV9UTkc4QVZtV1djMUhaMmdYN0gySzgyUzRoUk1JcEItdkxUaFI2QmV4bTdDeXJHSFZqNHN3M0dtZWd0cG1obmJlNEZQRVo1UTZnNGhScUpmYTJvOUswZDI1aktwaURBTFllRVY3Y1VDUjhBVjRYNU5WR3hWdWppOVdYN0gwaU1mUjZHMmpIVkFZSmloSkxOSC1JSENWcVhxdng0ZWNSRmVxNGRqUjNBWjRITm5kNUJBaGlTSHRObkhlM3EzeG93cFduQVh4M0hHeFZKcUozZ0pVdDVtdGcyb29pYnJiTTVFVU1HT290QlZGT0k5eGd4RmZYT3dhYXNPNWxIbTVoQnFWZVczOHlXS1FqYU50VG16TjlITjFrRWFfS0JacHU0d3RGeGswNkdWTmFEUS1QbmZBV0FJalByQ1FjSjJMQ25kS2FBSHJyYTQ3WTI0dWJYd1hPNUZsSVh6NElaZzI3Z3NzTXpVR3kwdUtGc29LdnJrZkFLdjVWblR1WlJ6aklrZzNoZExLR2FMb3RPVmFwZkp5VnNidGh6T0JrSERUMDllcVlOYkFwbWdYWGdoVTZSb05nV3IwOURSMmZQV1FyaUVzbm9Gc21yZWc1MUUtc2JUWjJCb3FqVW1zRnlndjJZdVhpdTVXdFFUNGtKQ1NxczZZVEw0cGhoQy1sTEhubWs3Q0ZKVnNMUHpUM2ZUcVF5M2V6Sno5dUxyUWJKRXVVMGgyWHQtNGwzaENtNU1hQlVVUGU1SU0tWHZhVk5QM3FQUGN6NjEzZkt1WmwzV3NmZVVtYzl4OWhrbElxRlI4RE1aOFdpYnhJSG5CXy1vTnpvcGV3SXZkOU1RV18wQ0hJRlNWWV9lMDNfNlN4SDBiLU5DX1Y3MXZHNXpNTXpqUkc2WXB1d3hMVUQzQnV6cHNWSVR5ZTd4M1RSWFBxNE42aXF4cFlTeWpyMUUwVnk2UXhzWGc1Q0NsZEozN0p0R082b3pTY1gtdDNKOFJBbVk5Zk41WTRURUZCZkxFT3VtdkQ0WXdjd0xuVktKMnVYN3A5MWZjTTUzVVRhTVc4UTZSZ2JFaTlnZjg5SXl1OFc0WTBIQ0REbDE2dVhCSXdZR3IxX1lyRy1zOUU1dU9FbjVpVm9oY1JsX0RrZlNNenBsSUhPWkJzLVM2X0tud2lZMXZYeThhTWlqb2tFaTVOZnBMbUdZdklwdk1MUFViUzBrQXhGTWo3dktnRXR0S09pU2wxVTJleFF5d0tsYnJtUGxFamZ3YnFjRVZkbmZvTFhIYXpfNlhYTE1Qb1FobWhKUWtvVFN6UDFIb2J4UWY4Uk53VmpaeGF0enpxMGtpMjVmUXlTNTlET0wtVGtiWlFqOTByUnpCQ0hVaTZlNWFmNUN2b3p1T2NIdEJmRnJHVkw4R0JQMk1JWi1UTGsxZXcteFpBbE10UVRITEVuUE1US1Q3X0VwY2dJalNDQTVsZHFXQndZVWxJaXZWd3NzNXRlWEswQkNvWjY3OWxyTVdTOEIwUmRwbjM1djlPU1JOejh3TUFTNER4UVV3OXhOTzBrSjdCWHdUM1dOem90dVFFVDFIeWpEcDV0UHY2MVZuVlVDc3pRME1TaTcwakU2OGtnVm9TM0sxaHFxNUhyZlJoYTVEM2MzZDFBWnJzaUVsMXpMNU5OamktNnBpZENKVmxZeFNBa0gyc2VlZ3lGeUVVV2p3ejZRZzBzeWYtUGtCWVFaRGtKOGJsUWFyUjRMdVJGVmViUTZ0bnQtVThmS0M1d3kydzFXMUhiWUZOWHRzUnVkcm03WWVtUDI2eVVNRzNPUEktLS1zV3VEUW1VblIzemNaVGZkcVBkc3ZyRmtES1JESWZfN3hsbDBLVGtIbHEyRjJOTTBiYjlDb281SG5RdERpX1pJZmIxa3pZd1BHTDZMV1hsazdhcENaQ3daWVBLNWNmbHkyWU84QzRuX2w4eDJkLXdkclBMWGNMRi1xZnRtX2RzZmNrNjBrNUtGenozZEJKV0otY2l1ZWM0S010Sm1JMklxUm50MVpJRnNTOGhEcTF3b0ItLXVTX3ZfZ3lMMVRxRklNWE80b1dUZktOV0l6d1NOUVM3UGdCYXdIMHVIemZDeFJ1bmh5enRMTEdMZEtBamZxc3d6R2dDMnV0THcyOVJoZWtLWVNyaElGWFVoNFFjZF9GOUxfNXZyc3pSaXpKekRUMGVkWlhSVkZNdTFsV29zQUs2YV8wUGVZbFI5cC1XMS03eWo3dGJveGZGdzMyd3o2VlNWamJrMHlIUnpRYmtwNkp6QlIwcm1QU3VlU1QtcHNCSWVwSGI3S0dHQjA0ZmJvLXk2N3VSRkxKTHZlcTJua1o3dDFIRGozQ2taVGduUmJ0S0xYRVNkb3RFY0toQ1ZXaXNrTDZabURLVWJJTkF1MXpLMlJhZkJhNzVDNlVPX2llVnAweTBJX1JnT3hEd1Z4QzVReS0zdVZkc2trcFo5VGduUGhXQWlURF9tQlBmeWhQN2NCbFZvUUhoY1lKYWVjQ21jQmtVcTd3cmx1emdEWEduUkFveUp6MXlwZWNjWC1IUnlqOEFFYXhxSkVUeGpWTFpNODBNS0xtRjNXZWt1dVMxSDIxLTFYUFcyaDBfSkE1OTg1cm9uWnBCSUtoaXptUU44YVNndjBIbFlmVi03cTl1Vi0wLXFrNXVQWnljQkRDYnpUZnlGaEdzWGdKU0tPSm5PYkU0QWktMW14NHpJY3FSRmNiWkt1cF80clc5Z2lFX1pfYjBpTWlMTGlBUHJ5dGo5T241ckx1MnJhY2UxUHFvb2VrZzFuWWxCRllTdzA0eHBWSjNGNURCOTBDMHh0SzAyMEtEakpRU1VCZW52dUpsZ3V4WVMwWnQ1N3dKcnVXdmFpYUlIalFBTmRjMU1lSVJEZjF1Z2EwZ1NwVjZPbEltMlY2aTVDMllfcmY1eHJITmVlWjdwU3A1X3c1UTk5YlU4RkdEMHZNbXE5azc1eTdsR3NTMVlwc2stY2RZd0pSek5oa3RPeW5GOFZBNlcxSjkzVmZsa2Q0NTFnMGRJM3dGd05kY0FqWG8xdUMzWF9zdU1JOUl2ZU9jcWFqWlVNcEFCMTZzbU9waHVpQXlBcjNTbTltMTJMMVBvbzVVVDE4V1lEbFl6eXhNYkRmWmRUX0I2R2lNUnpFYVlHSENyQjJoaUhsYXlDdlpCNW9lbkVTUG1rS1c0dFNmOXhRc0R4U2U1ZnR0UGh4enJ4UWxieEM1V2dINlBibzdYdFcxdUpMUEVzVnlwdGRjS2lPSHczQ0d4dXA1NnVNdjhlRW50SGRHdVFERmVfalk5TUJYZXNsdnMtQTdBVzg0VUFvWE0xd0RYUFo0SVZjdmozSWRpbTh1WUVDU0dXMHlPcUo2MEVBYk9nM2ZERW1wbEpNVTBuc2kzREZmbWlqNkVRZ25hdk4yVUN0Z1lKVUUtUVoxU3lHTEY3OVlIRXhFVFRUZ0RheHNIYnZCX2NibWFwNC0zaGhPS041OXlQUmN1ZldZTGtrMUhpODg2c3V6VWJZa2MxTkZRWlBGekdYV28yUUFvUXlCQm5DS01YT2QyZzBPS2RaSFBYRUtVR05FM3A2blo1WVFCMUx4dXJhTVJCSUNqV2lHN1E2cC1XdXRpNHFvNnRvUjgyQlFFZUtqSC1KV2t4a0NoZ2tFaXpUSjFGcjlHRFZ0c3duOUdFcTBKZjJ0aFhKWXZUTkdTY2tTVFEwUzFIa0NlcVNLOXAyN0p3NHl4RTlocmFVdHYzaXl4MEhFZmNnTlNLVTk0WmpFa0R5UFozUXNLUUlCa0xweHJReGRsZ1hSV2ptMEpJSWQ3WmRiT3I0YUZPN2ozZlM2a3EwQk5SVzFBVnhRWXpkLThFWkV3b2w0MFNyNmFfaG5tUUo4WWZvYlFoTDBhZFBfWUNaT3dBc0g3alc4U0lKbGV1b0hLX2hPc2Fha1hkTnJPaFNoQ2VVYjNpNUQxRmxkak12SWFEajJFN1dfUDJodmVna25PNkFhOFJlZ1JRN1dvQkVpdGU4OEszeVdPOWJkdmZ1NjFJaTBIRU1RUm5LQVBILU83RVpMVWdzTmd1ak5YRW1jRmdmRmhmU1Zudko4Vjd1UnNmbE9NcEZkTmZzNU1KUDdEcEF6R3Q0aGRQaG14ZlBseDdqTXh4cnpOQ19GS0tvRDBwcWdJdWtTVnlMZzdrbXkwOE9paTk1QUNMREZsTnlQZjNtaUVUMHRfaHBmWFZrckhCZDB1Qk5Banltb2J6WmF5bW05SFhLTTFVSUFJN21WQWdUZnVUYmQ3eEY5TjlDNUJTZXVyVDJtYnNaY0JtWFNfa3hZTWtSWjFkSkdjN3FwVFBSZUxOVm10UURBVzZWdTZUWlpHNDREMHdRNllKalItNlFiVnNSR2NReGtxR09KQ2MyYm44SEdvMnZCSG50TTdEZVM0RXdLUXh0bVduVXdITTNVT0ZHaWVOVmRvZDhzcllzaE9sM2tvZlN1YUxIUkZiRGdVQlZoaHBFV3dUejF1VlhOd2VVN003N0R1dGJZYTFiRXRJY0hneXJjQUJTVW41dlh4cEhhbVY1RTJHczhEeDhYTmlBaWdYREJfbmhFZEdWWkVqSmd1TDg5VXltR0c0X3Z0cVMtN3hGYmtJaFpPMXBEVHZTMm1KM04zNUduNGI2S1FWcUEyWEY5amJwRFF0VFY0bEgwZWhiLUFyeGtGMkJjbnA0RUdNZWs0eDRXN1RfNEdtNzlFb3V0TjJzSW9iSFhXYi14bURJbUVId3ZHZkFsYkc5ZFFLZ1pDT3Rrb3EzUHJvY0hEMVFUTElpNEpQYU0zc1VFNngwcy00NXR5cEFHQ3N2MDhralVkUW5GbUVTYUhTYzJjSE5CUEFFX2ZzMGU2bm1fakRLektON095RkV5Ymd1bHZ5RTRsb2ZxWkxfcnNxWFlPN3lvT2oxX2FLVHhGa2ptallGNWhiS2FjcDhCNWstRUZUWVZYMzMzWG9OelJreDRnOFNWZW0xVUNibE1QOTJxb3BLUklPaWNJQWpmN2dkS2hhQmZTaE04UUt6bDJBVjBVU3lwMkdrUFRja0NrWEtXUXhhbl9RLWhtZ2l0V2w5ZVpOR3BpUjVSUGxqR3VRaVRYNlJENGZKcUdEQWNMSnEwYjZYZGhva24zMHd0Tmktc2J0RUN6NC1HV1ZOZVVBYThETl9haFNaMXAwT1MwMkRkbGVKOG1ZcW5vYThEbF90ZGZEV0xiNDg4WVplU3JwUmV2WlBJWm5OQ1lQUngxTDdxMVVGcWhfajVrQ1N3Q0VWTEpDUFdzaXlKSzluXzU5c3lUaW9DemxyM2tuTVZ2bDBZSnFYdXF2eW95TUZrcDdGdVdBbWtfYUR4eURaYm1mRGNLNVFnM0c2YlVwVXhPQVJyamgteWtreVpfcmxsa1hLUjVrTnJJMFFKYkw5UHBiWFNtMzZVSTFNajB4alVael9IYmx1Z3J3c2lzRUtGcGw0T0k2bUY1cUNLZVAwWmFmaW1nblhxS0d0RW9wNU9kTHNGRXNoa3BSSWh4Wk02eTVta0RZM0FrX0c5N0FuLUxzaVVWdG5IN2NYNUJPbHZIMVktREFGdzhkQTBpOFhPbkJoWnZ4aFZqdXctbWtHWjBITURVS0RMWk5uUVR1RXNnVEpDT1RQOVc5R0xtaGNfMGRSS1UwQTQ0RFVRU0l4SmxEYzNYWmdYOV9XdWxMY08tdjJib3pvLUhLcTB3blN0dmlPSU9YQ21BRW9PWDFodWROaUJmdktBc2NYTnE1bGc1YmtaN3dDR0xSQWoxUjRSelhDMnVsaUkyZ3lpMTFHZU1VanpoU0h5Ylk4NG5vWGpDODNJcGFTX1FTYl9WUFEyeWhMWExVdnp4SHJ4YldpajQ1a1VEMWJEZUkxOHhhQmd4UzJ6VlRVMF9FcW1WaU9wbjRnTWczd2oxMW5tV0JYOHVHUHlkUENhV2dtbFJTVXNxVXVGQ0dYZ3RNUFN2R09XRkl0LV82YzFWdVlzMGJDNzl3QnhwYy1MdENkRXIweVM4NWZKQTE3aktoclFINUJLQXNneUhKbzFVU21FZGMtTDRweWpkMS1obnZUYzZxRHBXQmhSREhieV9DeXBfc28ycERfYk12eFZ1YnBDX3FIT0dlaVRLSkpTcHdmMC1OdFRLSnAyUzloUXNQYnhIeUFlQy11ZThIMXA0WlcwWVVyWGpJRDVoS2pKRzQ4b1E2THBsaEJTWlNCa0xpczRqNm5nV2ozN0dLZEFNN01jNlpKVFZRdEw4RXZjWWNTSUlEN0liMHAzXzBIQzRKX21NTEtjRlZWWVp4TjlvSkVPZWJLUFVzbndwelVUX05KbjQ4VVZrMGwzeGtDaFlEVDVmMENoNl9MSmhSSzY3ckI0dXk2WTY3N2ZKN3RjRGFfWWsxZlotcmVpSlBRNHhMTnNOZ05hU0FoQ2tqZE5Nb241bmlPUFNhQUtVcWdDbkhsZzN5bDhPOXFhcVk1aXk0TzFlS1hHcmY1THkxV0lNX1luNmcyeFg4aF9TZ3hlcTdRN2ZOYlhIT0Ztd1Ywdk04aXhhRmJZYnF0N2hHT1pjWnVQaFVOaVdDSF8xb0MyUHlIUE1IcEtWcWdaOUNYYkdQNmFhY3J0UmpRMkxZdUZNSnNWRVhlN1gxNm1xMDZpd0dLUWxsUlZxXzZoZGtqUUs2SVpDVTNzMXV3cFlGeHdaTW1CQVVCaG1lb2kzUVItQlhrYnc0RU9nYXllQTJkSUV6a2g3cXFOYmNXNlNBdnp2eXd4cUlQT1FTSWYtMVlSRnZfSDBpYXN2MmQ0R0kxNHpDWXUtXzMwT0hqYzYyX0VMLWg4V29pa2Z3cTNXZWZNMTduN2hGSmZzMFNWNTVHY2U3UTdDQkxxNEVkSTlXc0t1MDlxeWhNWHJwUlZPWTBrZzdsNjYxa281c0VsN1RxYzgxNWl6OU1wS3RZU1RlV1lsd3pnb011clJDNktNYmZEV2poUmlldGo0Z0RkSW9GaUQ0dHJGNjZvU2k0WTE2WkNxYkVPMWVKNGNseWZZWk8zbzBwSk1NQ0gybUlwTVZPMkRueGJSSURIOUxiSEU2VE1qQjYtZkw1a3d3WUVoSHI3UnNaMnFFYUdWMDdXcFkwMUdoTWpEZXE5dGI3Qm0xXzFvcWtsdVcwMjZRUng5Vzcxa0RwU0xPNkxia1RWS2xuMlB4VmdZa3F5V0pHNlZUbU81T21fRWxlblhQMmx0bV9VVXN4MXgwdkxWczR1ejlHV1VYTGZKbVlzZnViQXBwVF85anZyRDlkV2xWc3NKdUMwRlVVNWxOUVUyOEJWSXpycV9ublJVRUJjc3BLR2d1RmN0Mjk0V2xFVjZzNFdTSU5vNG8zaVM1RWtfX1FsZEp3c3JKT3ZQS2M0S05OM1F2cFJDa3hPQ2VwZGpZZEMtbVdfMGxNdWVoVzVmcGUzRnhFMGhjeHFrZmkyUXA1Mk5VYkVZVWpPV2JRZ3UySVVmX3ZBMWpIRW9UTzRQNS1vYTBrRHZaUmxPQldRbTMyS0g0RkhwYWpiNndLTWVIOU1VZ2ZlS0dBNWVJRDRxaWwxWURONkRMa1BKT3FkeU91UGdqMTQ2WWJkZEtQdmFDOF9YS2w5Nm5BV1lfMVo3ZTNKYW9NNzhZR2pMaEV3alFpdHlSOElLRTV1ZmFDZHdYMWNPMG5FQlRnYTZPNzFrSEJkMEpGLTQ5X2FPX2RoWWo0WmVLWVNxOVhkQ1NHNGQzSFNxVGVsT2ozX0tzUGp5dk5ScmkzY0loVmJVWHkwcVoyN1NqdlRRcHFEaW5yMDBra1Q2OC13SXMxcXJhazQtcjZoQUFUeTM4S2FrUFJWYy1WMUQxUVppR3hFYUdrbUg5bF9YT2hFOEtHREIzZFgxNVNOREptRi1PR1dKSlJZNWhqZmpFWVNEVUhmb1NHTElNei01Wk5hVUs5cm42cFBMcWZfcTc1dkZ1TWRISzZhcTl3eWUtQTdLTjZyS0xqMlNfclV3RHk4dnBlbFBBTktNTG5Td09mV2U2eXdFRmFJTDRVLS01Z0NvczJBbGd0OWE4QmRKOVpsUDBUSzZEb0RVY0JTbE9VTWNJNGZXb0lDYkhwc3FnS1d3MUJXc0xGTFU1UnNSZVF0ZHhmSFNZdWs4azFWUlNhQnZnSEh5Uk9NemJXYzhSWmJCVjlQc1doaEpMeVpMM3RldzJ0RkhaM2h2U1A2SUVidWpxSE0tYnRWSXFqb3BEOHFDMG90YkNERnNqdXV0bFdVekgxTXhNVFFGdk1KY1Rfa0swM3NOSVBNTnc1MVlrQm1fV0hiQTNZY1V6d3BPd1JNNnQ4YWFVV2diRUkyNm93Szlhd3BUTzJmVHVncjdzNTJoWTFBNVRpMXRobDM4TU84UGNfeTFyYWJBeEVsMGloTUw3VlRFWmxhUml2VW5JS09ORDdXSXE0U2RHbjZzbXJLWW1LUGRFNy1vZzJfMXVhWkJyblRScHNrd1FiZUVlM09tT0lRUjltb3ZmNkRCdlZlVGtieG4zTHgyM2hwUVRRYlpFSTRORFFHMnlzTXcwSnQ4OHl2dEo3NkpwSEFYbWhkZUpBNWI0QTBYb2JvSW80a1JGTjNlUWlCQlB1eTVsZU1qeEZnVVE0N3Y2M0pyNmtibXpfSEVTZHowOGhNeUozakN4Q3ViNWdJVGhtbVdkQ1lIUjZRYjRtWlowMjhIT0ZCNTl6MkY4QVVENXNwU2wyZmhKZHBtUl9aZ1BsaVBuUm9YNGVPU25Dc2ZLTW95X1YwNk1KRTl3VGZPSXU1ME40cEhoTE9qQXNUX3NCSHBfYWJMb0x1ekpJZXdtV29SRThVR2xWVENOX2hJQk1pdWI1V01lbDgwa09nbHJTNXRMZnNCdW1qTTZXUEladUpjRG1jWlozdXpEeFBkRWdHbFZydXE0ZmpfMFBoUF9uNS1FcEVtYTkzZDFaLURCTXU3Wk54QWYwS1ZBOXVJOXZ1WFNQRDJOVmRpMG5QRFFjbFRCRWhKYW8wM01uc1VGbkxBNVZqQlJnQVV2Y05Cd3ZlYzRfOE9WMDJLRVRxZ0hMZ2tzbkIxdU1jZ0cxYnVQWHF5cmJJelN3WGJiTFViOTFWSkZERl9ZNGFTWGhWR0kyUzFpdGdZOVlsYzl3aFlJYU9pQy1KcTNiRUZiVnZiZnJnemMwOUtiYl9ya214ZjFpWDVRczh0blYybHpSaVB1eExibGx6dmlEYkM4ZkpMRE44VHo4NExMa0lMZHNmdjBHaWtkRThSelU5cFNnMVU5ZURUT0RnVktDRmtzaXdJbEJ5MDRqd0d5NnNwb1BudUxweG53OWhKQnpUc0M5dVRUTmlZeUk0SmxpdWs4Z3ZpR0JTT2lMeGNiRVlXTGFpN2NNQUYtcnI4VTYya2hDYlZZVU1mVGhnQjg5aklmNlZSa3pVSGs0QXVSR1k1QnpraWxBcDhHeHg2M1RacnVXR3ZMa1FKek5wNS1PVGN3V3hEN2N1VlFULU5icVNZRmZYMnZVcEt2Unp0WjNxeTJOMTRIYmdIeUZMYnl6SVVoTXdiNkY2M3dwcnlIN0hfMHp3OGRfb0N3bWVCMVBTQVBUcFhiYjhRZjluQlRXbjFCWlBMbUNVc1ZCaUFYQV8zUWp2SWkwUXlrN3gtb3BGc1E3OFdJUVpadkhsb0NRNWI4UGd0bVdaNUFwVDhPc1dXQU1sYkFzdXRLdXZjTFkzbW9DeFZIOGxzclZxOHVXSjhlQzgxUV9uOG5YNGFqcnZiNm51M2ZXTXRDNmxFeWwzSW1JSHRHd3lvVVZOVW4xZWlBQVpnYzdiQUlnNlBoV1pxS25DMkFyU19lbEVheVFUd0ZTWWxrM2Zjdlo4Z3RMOHB5THY0YkpEalI5NUprM1g4NGJEek5uSndfY2o2Y2Fqb0F3WW9nc3RRZFRnd0pqTU1WaU1Fa2hraVE2SVRUU3lDNUJmOTBCa2VXbWZwM2N3Y3c2cThwMG5NZEdnMjNDc0p4VHNla18zbFotRS1KcHZESHJnVUV4d3g1Z3lCVy1STjdrX2xnaGd3OUw3QUNTbHdGb2pHVzlZSzA4T0J3Tjg4ZEQwLVlmMkZSRmFnaFVQY0RfWXhmaC1qNDkyaGY1SnE1WWtyOGJMZENiZjdBTGgyeUp6UTRoUGREMDdnNW1uNThnT3ZMUWo4Z2tvTTBfMHVGOHBRaHpqenRjVlRaM2NBNkZobEI2a0Zkdk9OQXZVLXI5YkpFb2NOaW5fRTJmb1B4VUxqOVdEdGxaX3N2bWtEVzBjR05fRWRlR1dKLXhLcTdWNDRzck5vd0lCOEprZHE4dUhZXzFadVg3bWV6MHNYc0lNSEFFSWhkSnBJelpYQzVjYW9lTDRfalVxelB3dzJzMG1IU29CSlpQNjNWODhFQVpMVkdtaklwaC1PTkhQeU9QemFlQ21xajFlTVFaODdJSGNhYm1yUGNaWDFITTVvRi1meTZ5RFVzdUJyRkx1dmRyX0VJQ21TM0sxWEZmWVhsMkZCU1ZsRGNpUDJ0YVF1RzR0dHhjaWhoRWpERDVDcEZ4S2dha0lRSWc3VVFBTy1rUTN3THZHdW5CcG4wVy04eGpWRFBoU28zUUNOc29sNF9zWnFqVTBoeEVNTVo3YkVxTzNSVDNTVW1OM3RjdG9LWTBySzBxZmR1bk5iSXNjdG5TcUVPYzg3dWd4VTBXNHlQYjBNOEoyQUwySkV0bXlRZmN5RTBDalkzVjVZMjNlN19UVV83bEk5alBTbnhvVi0wdUhCRjZ0Z2xYN3p1akdJSG82MU5CMHo2MHpXZ01hYklqd0Rha3dPYXV2Uy1yX2RqbEZpeUUyZlJvQnNPNDN5WlI1OGJqcHhpRHJxOWdnMEtJcktBQ0gtWjliTUdxeFBIbHVrb1FGeHAtMWszQjdndE5GdGh4dEJqMng5Q1FBVUJwMFNZYXRhUmgwVlBPRGptMWhLd2FUTnUyNDlxZW0tbERiNTRhNFplaGZqVExkS1RoalFiMktwY2FCbVg4ekpQbnRhVlA2MXdDeVRGVDBSN2RIVHloZUhfS0NYbHA0WDN0ekdoRTg5VDVVWjVxVEZJWmNDR2I4YzM1c0pjYnh5bWZ0aUJJd05sUFRlbkNid3dfQXlOUWhreG95Wk1iai1lQ3NBN1M4V3FaUEp6ZVozWE5iV0ZJeS13S3hFMnVyTTJKRXd4eExXRllwOFQ1cFBQQVF1NG1NT0k3SDlfNzRTcWpMRFpCU1Myd3dUdU1YZW1aSDJuWVI0WmdCUF94UkZENzYyM204ZzRuLUdNNGhibVZPMW1LTllJbDlHdzljbkpQOHpSSWlNbUppWEdXTjktbjRPVHFRWExFVnlKbnlUQ0RCMzFTSFctTThyeUJMemEtOUxOdFZhUzVTWkM1UG1vem9EMFZyY2hFVEZmelhwREJfZGYwNk1aYS1icEpBQklTVWJidi1hM0Zobm9JUU0yRW1uT1N2Rkw1ZFdDRlZMcXAwREJOZEVOS0FiQmJaNGdaaGNEREVoSVQwQzh4dWJ5MjN1MW55ZlowRld0WXFoTTh1TS0xVzVOTlNLZGkwVFVhQ2d5OHhBdEh5Wk9YeWgzVFRMVTh2ME1rbjFRRjh5ODRsOVJlejE5VTR5Z2JqX01CVUJreGYtNnhpSFRVQkNpQmN1UnoxM1pSTkVMNUFzTUZLalQ3Y25zRDJxNS1fdDk4dEZ3SmNQejBTLVctbzFtVnBRSkFjZWZ1ZXBRcUdvVzdLNWIzMWFCVHUwWVc3MTZCeW1pSVEwTU5VdC1Cbnc0VTZtdG9wWWJVRjExVXhSSHl2R050dVVUMlp1MDFJSWlKTVRvYmxoZXlYQkFraEVUaDJTXy1Cckc4cG5oZWFZaE94a2wwZE1nZy1ISlJ6V0RXSHJTZ2tUN2plaThNNnhOY0Nwc19veC1kNkdsX1FwYnRkRGZWaGQ3clRaTzhCNTFQSVN3Yk9aYUhkZHotRlhUZmd1c3p6S0RwZmtSWjN0T010VFJ0U1ZWR2t3eG8wRWdfQW9iRVJSNnBBblRfN1hZQmpFWl9BSVVwQkhmYldjZENyUkN5YnR4b2VUU0RvS0twblJkV0E3cnpiLUtDQmVzNG9mdWhicnNldEdWXy1rT0dLc2FuT0lPbkNPQWdHc2VFb19NTnBvZVpjWmd5QlRlaHFmNXlCQ3FZN2FmM2E2Q0F0V2hfSE1IVzl4cGk1TVlZVk9sRVBWWHZHTFp4bi1xS2hzUDVwM0g4a0VHam10d21CWGFuQVhkNE1HemZtWnA2UkZ2d0VIaFJHNFJQQkZYSkZld3laMW1oSzZZVDZXYnpuUGloTC1PTjJPVnJEc25CSWdEUGVtclpnaVJIVWdnMkk0MXNnX1RMWTQ2N2NYUm1JZUc4NWpUTmRieEhkRkt5UWhNS045UUVBYXhDTGJsaF9FZFF1LWJtcnFfNVZoRmIwSDlocF93S0M2bFlOM3BFR3ZsajN5QzNIYU1LTW8xSVlBTkROcmhGM096U2VHUS1SWmZHeFQtZTNwdmRzc2ROTHE5XzNrdWdGZnB5ck1GY01iMkl5MFk1ajN2bF9vNTFvLVdiYUN1Wl9KZEZfb19JZV9zZ1ZnTUhoTVA0elIzRlBEVjVjVUR0bEtWWldSa25XMTRaZ1hnbFNRRG5kSG5lbmpqR1N0WkZnelh6c0FqX2xibm5BXzZnS2ktZHQ5SXk4aW92cFN1SzhTMmMxRFdqU2xIQ1FMS2tCdWR0REI4RFRaYjZneHJCZ0piNEpFUWp1LV9mUXlPR1NOellNZ01ISHFiVTVVbmpxOFVlQkFlclNnQnEzTWRza0xRNjlRVS04clRZbGszVEVLeFQzS3hhTUx6MmxWTkZSMzRkUDl5Zm9HMnZvOW9PS1VEb3VUaXRwNkdhV29Vdm5jWkdDME52bktJaUIzc1NiQ3pOWFdWbFpDWDhWdFhRQnB4NV9USDNhYi14bUJOUnVQMUZ4dlExNERsanZHQVBOM19DcHhxaHAwTmxzbk9xNzlqYmV0TmtqVHVrUTFZLVVhS1lUVFZOaTlQV21CbWJJTGx6X1FfQ21lSml1M1BwVVUyM28yNHlkR0JFTzZNZFg3aldMdHp5c1hxSVJyV1JUS0g1dG1rT3VwNlQzck03UGotb0NNMURacGZHdFUycU9aVW5hZF9TNGR2V3RBT0EzMVVsLU1DQjlLLUpHZEhyU1NKS0xoODNqM2d1ZDdoTUswVFJmYzVXLWdaZzdiT2xUc2EwcTB5anVKTzAxYmZQdjdQTjN2cTRkT1RabWluNnBJMzJSbzBTQU5NZzlBRkdvR1g3TElaR0Y5bVRMZkZGbkJTUlctaW5taW0yRW1NR1piQV9hNUdvTWxOamhmV2JvLW5aNHZubkI0M1NjZlNwZnI2LWRvRzd2VUZzMHlPUURuM0VvZF9ZcHBwUUwtLWtKR3VlYndlTVk4ZmdtVy14NktjRENjSEl6NU04MzhROC1KTEpPNzVLS0ZqREZGa3JtTGZfTGF5ZTJuekpKVGxhN0NnMUMyWS1kMFJGZnd3ODRHb1JjaGpVS0RPQnlFUDVlNzRpcnVSc2hjQjl4QVUweFpyZlIydmdQM2gwbG9UYjJ5UG9wekVwaXV3N01XZDA0eGhsMWhJUm1haXloRFMxc3R3WFh3aDN5SlNuWE5NMngwdnY5bGpQTmRDTzBiQ1lyZVQ1SXY3eFp0WEl1VW5jaWI3eldUQWZNZHM2cXF6Unp6Wkx5YXFTT0JrQkxJLW82R05SMm9PX3F6dTZteG5tMlJGOUlMcEdxYnRnZHhYTTdScVNkNVBEa1RfVjhrVzdOOXlfTUJuc2RpV05uelo3WndPNldrUlNvbkJPc0licVFVS3NXR1dUZ1E4ajE4dy1hd3hnWVJNQlhrY3lEakt5S0piMjZrWjhnRXNlcVQtM3RPTHdFeGM5cjh1MEtLT1M5YlROZDF3YTRFTWZHMEhFeE1SdmdqQ2N5QTlLa1pnU3Y3eTlNRm1BS2k1M3FXNnVvRHRfX1Bwa0lFLVpqUGhLLTdSa3Y1TmJUQnI1bmctTlR6ekFHc2s2enVPdnBpU05JSWxBRXNlUUJERWNES0c0M1Fsa0N0X3g0VmJ2QW9kQk9lTVJpZWNMeTVtLXo2SVZyME9xX0Jnek16ZW85Wl9xZFhWdFZobTU5ZkhDek1rcEM5WEN2dTVXaVU5UzhsV3Y0VmM1STZXa294QW9vZ081QXJFVVV4T3JsMzlma0ZpR2FvUmNBbWM0dG81anhUUjhuWVJXQ2tFdUQ1dEoxcFFUNkhpaW9XMk1OTXR0OExMTTFpeUMwejI4bWFlcmdBZUxGQ3pTODZ6QnJybXVTWFJEQlhhaW9DWGM3VkoxSEtmSUFYcDY2ZEZ3RjhRUkdUOE9LMm55dlZIMzlvRWhSX2M2T1NiRzJvYkxTOXdWM2RFSUFiY0RhR3hjVUpCU1JXeTdUR0ZhcWdhemlwRVRnejF0NThlNUZhS1AyUnoxMHV3LVRHSWN3VVJtRXhlSzVnbDZJWWdMVThKYmVNdWtpbTM4dVFXaklVQXEwOWhva3RsRFNueG8zRFg2STJjdFYtRk9xYk9rX1dLRURHRG9aRG9neG84UFNELUJWeGJrQldRZEwtTUNENUpzblBGRjZhLV9BdFBaWktKYnZoM0t5bWQwNXVfbk9qTURUdXFKU0xuNUV4MjFPbXAzQW9WZlpNYVlTV1hzaXpOWU10cEVReEMwbWp4aDFFLTNmRm5uOE9GdzVnTXFXNXN5d0ZHRklYcUF5MFlmc0Fsb0ZBTkstRVZvVmpCbjY0b0Q5X1NsNVBwZmxFZVlaSFFRS09IRmxWazVwdUhlZHdpckNfZGhkdGp2TnV2ZlNSb1BLU0VJWGxnV2owRHRrRkFiaXJkd1FNTFBUc21CT2pOYnhSWFkzVG9Qd0RSZGo3eC03VVJxY2Ftbjh2VW9UT1MxYWE4WVRMNm5FNVhsVHpuOW01MEh6ek1Rb2tnemcxQlFLSjRsMFJkbWw1a1RiX2tTRm5XY0hobHp5UGt3RUxvZnZfYnlBN0lSXzV0d21LLUZGcUVsYnE5WW1IaXNrR1BWMlpHTDFmTDFGaU1RSmtxLXNzeFlTNjZJRVZ3b1pCaGw4dUZJbnVidXhFeGJaSEpTX2xQY0pLTnQzcExWazJJSzJpc2duVFgwTnlJRWNzMG9pdDlfQVRERUJ5OHZwWTYyTjIxYk9la1lJM1o1Q0pleFFpVTc5VU1wektndTJvTGlaWnBaeXJ4TnVMa3BWSzJpT2toanNaN3gzNDhRdjBSUjdRN3p1aWM4b2hnbWYySUs5cjltOW93MTg4MlpRNFlETTdlOGlxc0t3dkZkOWZuOERlcWl2cmROQUhRcjFlQTZnN3BVSkpZZTNiUDJKLWpGSnN1azQwWXBFUXZVdGFaZjF0cUpPQlMtWlhvOE00aGEwUE5KTWx0bFhmZGJub2x6aHRnYVF5blR3WHJBRTBSZmtnWjlMaHFtenI3ay16TWEyM0t3UHdncDJmUGgzSmV0Z202Nkp4eHBnVjQ2dVl3UTVwSUFibll3MDFOTUxFTXlQaUNySlFFRWtwaXo4WG9hOGtJMkdRdkh3b1pTYlMtNzFZcHMzQ2oyLVZkRTBNaV8zUnRJUEZyaVVTUERfS2cxQ25pQlduN0IzS1pUYjd1MFFwOXl0VE1TdDNRbUNwcnR4YlktVWFwWEtESUYwYVVCN1RPaDRuN2lFZ0pQYzV5M1A1LVZkQ1VxUHJKS2VwckUxN3AzMmFyWjE4VFFwZE5rRHdXRWJWZFlMZDNvc2tTdkhCMHBmbTFablpMZzNpSGo3SmxFX0VsT0RIOVQ4MXRBS3ZyUFlzZUJsWnZQbEdUbDdRN29XN0tSZ21zVDJHMmlqOW11RlVEWEoyLU9ycFhHTWFURGxpdGNhcmpXR0tjMXFJRWhzQ0IybjI3LUlDX2FnbDdHbG4xUkdCRC02bEZGQjFuTVBWcHJpVGljQjA3THJZblNHSTVRdzFpY0pYNnV1TzYyOHRTMEh6Z0llUEdRVzhPMEtyR0xEZkktX2ozQkphbEN1eEpMeW5sdmE4MDVaWFZ3RUdCcEcyaGFOSlVleXhJeWFSamM2SGdOZzNHXzNIbFItWXhiUjBfSmtEODJwczhfd1VmZTBGOW4yYkUzWEVNeEd1bm9rbWdWbTdxQ3I0TzNxQk1HZ0dvN3ExNFRVTGhndk9GeXVZU3BKdkJ2a290NVptZS02SC1idVYySlVjNENQYUN6Y0pFSnB6QlNmTnk3eEFlQmNvbEN4Q0w2MzZDZS0yeUFGVTFFdjJ0NkN1U1BHZUlyY0RrRlUzT2RWOWxvRVlJaG5nNUdEdDdXUjN1RDJsRkh0M1dWLS1ieHkwSFU4YkZmT0c4b0hoU25NN1hsOWtGR1ROWUVxUndIUjk4eENYeXVlS1ZEMHVlN0ZPNnotY3dxV1NxX3BFb0ZUX0V4OFlHU0EtS1k4N1RCRFY1ODlYSEdMYW05bm43RXJybTdNc1p5Znp4V0NBb0U4YkktX0hRN3dTLVVTc3JuZkh0eVJCVkRMcHRSUDVXWDhTSW5jekUwbTFsZFdRUFRZdDFZTVdld1M1Wk5GWll0SFFVSU9FUzNRVlZ5dWlrcXZQczBQWE5Db1p1ZUJoVVViZlVab0E1WFpDTXFYWVdsQnBUMzRVWkRTV3RxUnRVcXhjZlk5YmpvNzZWNjRfSFAxUHJ4V2NQMFZFVi1QVmhxTE55VmRZd0VsRTB5YnlyWlNsRjRwVlM4VTdsd1VlS01UMnpHNWVDLUktakxpUEU5S1M0eWU5WEdtZjlVZEZjd1V3cXBiMjl0cVFFdXRUNFRmUU54elM1dzFqblUySF9BVmxvNm5LZGJiLWt5RjB5WGZyRXB4VHJtR1VSZTRqMEVzMHBXbU0xOVZxY05yeDJDczh0UDlGTlFxNlptQnJ1QVY5ajE0SlpOdUhvY1ozMmU3cTdsN2tfcWlseEtDN1hjR3lRS3U0YlpXdS1qWUEzdm5OSDVORnAyaEd4aWFLVmRka1pDQVlTUnBqMHVNZ1FuVGNEUkppTTJoV1piaGY0OXBUaUVwak90dmhIbHV0WDdYdmpnTDVZcWtVRzNBbUZVelZIOWs1QkFpUXo2VUtwVVJjUFVNUnFPTG5fbkpMd0VsY2xKUE0xYldZdEhZNHNTdzl0OTMzSjZxdzdENFdNRGJRLVI0QlJubkxwNUZZRUtSY2Z1cHVKWWtxV29xd3dQUzc4b1E1UmZfSF9VbVlBZEFOUXhsLVU0MUw5RTE1TEZqaFBsMUZObFhNLUp5ZVNJNjhlbUJ1NGNWY1l4d0oyMGd6Y2NuSWs5UEtjdXdUWE1IUjVIMmNtZENxRnVBY3lYUlJCaGhGRVBfNjFmbmxnRjMxMFZSdS02c3JmOVhnTGFuMEdtaVNZSC1UaVpmcUFrUjItRVlvdWxFUG9UWUw5OUhTekcwQTBveXhpc2YyaER3Z1NxNDVpbjJaTU9BQnRrNGpGT2ZKQ2kyOVZxMkV5YXVOQmRodkFQeUVzVHJpcV9ydHZPN1phUUs1Ulc3QndPZ0RsY3k5b0ROcmVfRG5mZm9jRUNmc3hMVndab0Z0Sm02eUpoNmU5SDVTOFdMcmF3MEhDTklaR2QyaWNTUTJEMG5oMjh6b3JSY1lfanpIYjBwX0VIZk1iNjhxa1hoQmREVE80ZVQxeGNtRmZuUXRCQnRCMVJYaEd6cW1MRlhTUXJRRWxHWFY0czZxNWFYRlJQNkljdGowQk02VkxHWXVpOUdZb3YxZEVrWVRaS3Y0QUtnQndySWRGazl4N0hOT29YRm8yRlgzY0hWTUpWU0hzck4xY00wekN5SVNGdDNkaHB4TnVsVHY5TkdfQWZmUUg4X3NQa05Ua1R6clcyRlM1RkZpTjVrQXJLeUZRRGlWNEZHZTRxWE5WbFhfOURtLW1Hdk03Q2lPWDg2Q3Z1OEg2c2JEckxFR2VxdVJFSHdxaE9DYnR1VDljczNIYlBsbDlvODhxTkw4TV9CSzc3aUh2a0lSQUc2Qkl3Qkt5ZFo1QUNpVnh0NVhIZ0tEUE05a1VaMTdLM3FwYXFUblk1YWw1QjF3bXVYMkwwSDVGckxxQjJTTFBPUE9zcU1RTlNidGExQXBkai1KMm0ybzFWY1JPaGhWeVJza29iLVNOUDd5WGJrbGlUOWJTSHl5YzFvbzFXcTZKYnNZd2hwdVI5aS1YX1cwYkc5M0hyYS10c2pvYmZPYjFBeW5sRXotRGpqZXl1eEt1UGVtLXVvRVlTWkZfbXRsd1JxbVNFSkFwWmlxQms5VHFTZW04LVBCZWxRR000MVhBOWtFeHc3cm41anROODZEdTdUX3JvRnRTWGxpakFQUm44ZTI4XzcyNEwyTWtrN3FPREpLMkg4Mzdvc3J5bjNXRWE5MW80OTJuTS1BcGNTZ0pfUUEzbURqUTJtaHZNVElPakh5TFRCZlBjaW4tby1UQzRhc28wdmpJUEhLZ3pUeE5oWnpYNHMySjFSRF9ldW91cHhfNXhocDdCTDZSTWt4eWVMd0o3Y2VwZFhDVmNmdzdzRDEwQnlyVGVtSnVoT2oxaWhrc1lVUmdEZFI4M3pweFl1Sk11a0ZqbjlxbEQ2a3c5YndNWnRpU2h4QjFZUHNuV1daV3U0TXFsVTg3SldZQzlEMzFUdXhiNFltYndsd1RsQTV6dFBTS3diTk1fYUI4aXZVUUhUazBPdFFwcndXMTlCdU9FbjFtWnpBYnJ0WkUyZ3NFQ2w3TTREWjZWR29nMGtza3gwSUlDVks3WkxEQmZRYXhIWmxFOFk2SGFCS0JrekhKSHE3MUNfcnMwcEo0UWZRV1NiNGdkRFpIeVpWY3JaNktPbEZsQTBma25LdEN4YnpjM3U2TUM5enFXa1ZYWWZZeWVvM1JSNUg3UVJZaUJqM1R6SjJVMVF4U1VqQjZyU19XeW9vWlhnNHNyeG5QRWdKak01TTdfMC1yY3NWVlVVdVNzT2RXMXFybjRlSy1Kd3Q0elkwUHhLYU5wZzRkMTFLUURIVXJkRjdPbnd4UmJ0NktLSFlGYW03UGh0ZVozV0dGbnBIbktzdHJYOVk2bEREYjBTLW5KQ3o4ODF5cUhUSmZ5YkhfRWFxS3R0ZU5ub3dDc190Nkt4NTVBS3o4c2VaU1psOXJnb0k1V0FrVkR5YmlfSlFFdTJnZnp0YzN0M1hCMnlTVDg4bl9BcDJNbU80X0V4QXBoVEpfNzdrYmJvWkl1Yll2ejA2Sjh5ZjR5Mk1yXzgySlFLVVBQYWhuNEozejR3eS16d2EtaDFLRkkyZThQTDZzODF3YmZ1QndrNlBHNFItZWg4UVhybEJrSXVqMkJ4eGU4VUZ3VUZONW9kbzY4VC1SWTF0bVdPRlZndnpDUkJKc1Zjb3htLU1CTGZsdW5XbTBVdDRvd0F1MlRKQ3lUaTRpWDhIM3E0X1lQTy1zMXBiQnRRaU0wQU01azVFNkdoZlc3MS1lQjJ2cHMtMjRORzE5R2gzTEhvTzNlelJtWmhwX3k3QXYxV0I5OURrbmJ6NXZ6dGxwcW92Y2hNNWRDOFNQalFkMDBDRW5NRmtwaVQ3SDZZTmFKVG5BcnVoanhTU2RKLXUxSmdGSE1ObzJpNEtfR0xxY1BlSGlIaTlPZDM5S2NGdVNQeHAxOV9wc0Z5bHRzWVp5cXhoNldJSG55bkRvdEpiOHd4dFU0bk1FMWFvazFZNk9yc1FUeGFtNnBFQnludFljbzFoLUlhanZHSGliWkV2UGdLNjgyc2RoZ295RjJ5OG1na2JTNWxHVDd6U2tYWm0yeUZwOGk0X0tVUnlYWUtqUndFZWdKTmktQ0gxWWs3ZHgwbExOaElOVzJEWkdyN3RFd1dOd2tFMzFHdWwtaXZWZzdGMTNMN2xXNW9OWTk1WXFXQlh0RzBsRHVoUlduSHg5dTNWV0twSDFmT0xDcnVIS1VXdzM3MmhtX21KS3U5UW1tQjNrWDF3SURXSkQ0SnFfeWlaekMxWEdIOEFzRmJfOFhtTGo3YW1aUmRwRFRRSmV3WlE2NXFJem44VEx0ekFhTUktUUlQZXJDSEZmeDFYWW81ZUpWdHc4MWphVHFRQWJCLVZ5X3ZXMG4zNXhUVklEOGdJUlpYakhRVEg3YTgtaDY3ZVFPdUNtS00yR2NZQjlFSmNRLVRPdUd5ck5Cd0lBckNxSGxDSzF3SjlPZjFYMjQ2cjY3dnd6MkJCQUdRWWp5dF9yZ09PcFFadGthV0pMd25ncXEwRE1pYWt5cE5LSlVJbEViX3ZkUGp6SFFKMV9IVzlMSFB2UWVHUmVJRTY2YzEyWlBBTm5tcndDaXR4M3hzcWNJZVd2d0Vya0ZzcWMteUlZbFd0V1Y4ejVmdklMY2JvSWRxVTJ4c3RqR0lvZDhudEp3RVRMeDJJQTZ6TUZHZ2E1UDZkcVhiMm85TUtxT3U3Z3UxYzBUaGtjVzB1QUFSb1F5ZzhDcnMzX0VfcC1YRXpCZGVWNzBIWUhXNk5CaV91OUVfLWVKVm13Vl9RcmJxanM4bEJxeEhsR1ZyUHVIbjd0ZU1ncXk5cjY4b0c4RVZRRFZUV0tXYWZ1U3Q1bHJpWXlTMlk5QnFqbXduUlBFR3lqTzJtLXVNRTRHQU84d0s2eFZVeWF1emlRQ0FyLnN4blQ5QmJTbklGT0RKQ1Y4WGR3RXc" + }, + "api-version": "7.0-preview" }, "responses": { "200": { "body": { - "id": "https://demovault-rude-junior-95.vault.azure.net/certificates/testcert/21983500952149bbb3129b0c60e367a6", - "kid": "https://demovault-rude-junior-95.vault.azure.net/keys/testcert/21983500952149bbb3129b0c60e367a6", - "sid": "https://demovault-rude-junior-95.vault.azure.net/secrets/testcert/21983500952149bbb3129b0c60e367a6", + "id": "https://myvault.vault.azure.net/certificates/testcert/21983500952149bbb3129b0c60e367a6", + "kid": "https://myvault.vault.azure.net/keys/testcert/21983500952149bbb3129b0c60e367a6", + "sid": "https://myvault.vault.azure.net/secrets/testcert/21983500952149bbb3129b0c60e367a6", "x5t": "Z-n6Mydb08bmyOgk7bmx5HT8tyo", "cer": "MIIDMjCCAhqgAwIBAgIQGn/FrGQZT/Cd9kgXIsytEjANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDEwtleGFtcGxlLmNvbTAeFw0xODA0MTcxODI2MjZaFw0xOTA0MTcxODM2MjZaMBYxFDASBgNVBAMTC2V4YW1wbGUuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsODIu9EJhfnn57k4++j6dC1M6Egi9aZucFQ9Jc29vFG9L9BkzllPGluKKdH1ypsrAUif7yGaq5d1nDyLhZUncU8dV/YIA7oll/fC+d0H4A37kVbM/60zXhXnKRx+DRZ2hJQzNBOodCaZpyZZEuYvtWdSCSILpa0R7yXYevjLaG5LfckOzuurXqeos7WB+l2q1c+6zx1KbNXbBl7QOz2nzk9oJU7CdhPOc+LOLppmsXRwwluKtmCDyKdrKAF/dANp5zGXFsognQcRctLSGQp8FbgBVQyZ+v81n9bPpSaBoUQMcH4uG9jPO6CWwbDSWE+FVYAm5kgjuW/1hqRSnOEV8QIDAQABo3wwejAOBgNVHQ8BAf8EBAMCBaAwCQYDVR0TBAIwADAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwHwYDVR0jBBgwFoAUaYJoBFokrORdsxOTA8sgrosMOmgwHQYDVR0OBBYEFGmCaARaJKzkXbMTkwPLIK6LDDpoMA0GCSqGSIb3DQEBCwUAA4IBAQAxL3t0kV1dq/PGUztjW+qK6Nh4sx7jsU59JtjON6zcibJ4hM+Q3Z+cEvW9zuGkuTbLz6fKNL9VnkF1LnlWTsyRmS7bF15/7iOgfdrr0vkJKVM1Zv/tqKEpBJ7Cbc0vW/VJQxZN+OlqGNc9bcx3cnqkRwpkgM25T0dVpoWtCgMwayUtbPFbTZWHHbpzHLF2BzYf5HyW1BoKXcVPM3r/rS7RETasRRsz2GqXXdfhjCd+HKVyv5kD9N3WcFNUsaq3TqAUZyOx9bO0Cn3gkmgz05JpfhPEylXwVpVAccOoXsNoFdxEKGO0w7pk7PwOhsW8sFprdXWp6OxtL0rrCNFF/llT", "attributes": { @@ -21,7 +23,7 @@ "recoveryLevel": "Purgeable" }, "policy": { - "id": "https://rude-junior-95.vault.azure.net/certificates/testcert/policy", + "id": "https://myvault.vault.azure.net/certificates/testcert/policy", "key_props": { "exportable": true, "kty": "RSA", @@ -41,10 +43,7 @@ "digitalSignature", "keyEncipherment" ], - "validity_months": 12, - "basic_constraints": { - "ca": false - } + "validity_months": 12 }, "lifetime_actions": [ { diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/RestoreKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/RestoreKey-example.json index 680b973eaa8a..e9926e3a5dec 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/RestoreKey-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/RestoreKey-example.json @@ -1,14 +1,16 @@ { "parameters": { - "key-name": "testkey", - "api-version": "7.0-preview", - "value": "JkF6dXJlS2V5VmF1bHRLZXlCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUppTlRjMk5ESTVaaTB5TlRZNExUUTFZbVV0WW1aaFlTMHpOMlZrTURkbVl6QmpPREVpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLllNSVBfTXJRcTQ2X2ZwRExfSDNSSkpzSUotM05oeUJkMXlrOWJCS05JOGdnTjMxYWg2cWVoY1BISExnSnJ4OGprQkxMWFBxcDVmMXpsaWxfclVrLUtrT3J5YzhaSTljc3NNNV9TeTN4cEk0Wnk2V0ljNWNqUFd1R0NDbUJwQXlydEdPVnpoalF4bzNyVFcxRFNxZ1pVdnI4VEpseTJQS3J2aUlfUmduRWQ2LVJWS3V1Vk40ZWZWYUs5WFZUbW4xdmZ5Z3pwVHJfVFdDOVBGbXpoT0p6Z1U5OF85X25WcldWSE5TMXVMWEpYbldoQU9mUll0VlJORVFJRU5lTGMtZzNjTXJLOTFzNk5XeE5xZkZfR0w2UHg2cVhHMldXQ09nMzU3ZkJnT1ZTdERLaVZINk4xTWVkUTVwaWFkeHhUVDZMSFpva0I0eDFKbEFJZkxfYlU2OVBWdy5GOVFiM3RWbE1LcHJDS0stWUVpODJ3LlQwTVFpYXV3MGw5TWJfRFdEY1hvbzFqTjZJWXU1OVk3U0VMMm1ndFUweDNYTDl5VHNqZUY0Y2I0NExBaF9vUDdnbUgzbjdKLVZEX3hKN2hXY01XNnlTNDlFX005aXlndDlTQ2w5ZjRTdWtpM0NZdkwwUUVSVFlLSW1qMi1BRkRMWkl3Tm1HYmE4RzhheFBxR2NOS3NSZ0daZ1lUVG9pWUxxQnJ5cmJ2TEp1ZENxZ2plUWRpNU1tdHlQRnBhZ0hwSHZLa3VjRkdwLVhtSjFLYk8yQTJRT1dRVFFaOUNlcmVCcXJDbjI0SXdhUXJVQzRyTkQydzBVQTFUY3dFZXVWQkdFTGRKWm9zWHM2Q0dEZmpaSHFjdnB6NzRKd3g1T0VpcV9EUHM5VEtya01ob3djRXBsWjhaSk1jTlFSZnU5Sjg5ZDdZWGdHZEI1aWtKenA1WlY4OXcxMmIwekNITllKamdkZEhTNjJmalZlYUUxT09QXzd5Zlg1dEpiNmQ1QVhpZ3ItSkozbGI3Y2JhOXE2NHBsYmlhck1LemFiNUhtMkxNRnVLQnI1TmFrbzVQMDBoUUJnR2M2aXBJSzhNT2NLc2RhQjJGcjUwX1ViNnJEUzA4NnUzNy1DSHRGRnF5LTFBaGlDaXhRakNNTF9rWGtJMHZEYmJqRi1feGtNZGFCVi1BdTc5TzZ6V2pzRGVlV0t0VXZWUW5CMGM0Qnk3SVdDTGVWdzIyaTA5WWk3MnpCcWZPRjRyTmd4VTNrSjdfLTVib1dteVlXNndNOGVzTjR4R1kzUGhVNHlLRV91RGc2dk5Od3Q1c2NXWW9TMHh4NlBDb3M4S0R0Y3ItVXlwUTkydGhVX0ZYZ3E5U3RUWXEyWWdWV0dQbnM1Q0RMT0RBSi1sMTFJNklpdGxQN0hoeUxvMzlqNzdpV2ZUS0RnTDVrcDdEOUUzX3FkUFprdGpWUER1M1pRY1Q3MzlOMnp6XzFrWHJEb20tNlBQcXdWUzZtUXpBVW1xaXhTaXZjcWJxalpJRnRPbGxLRkE2cWVyaDJlU0FZelRNU0N1d0p4REJSQjUtbjBNUWxJSGpDMTdkTFpoVnFEMVNiNlBycV95OXN2Mml2V3E5TGE5R2ZHbEhBNlZZM1QzUWRTQ3VrWVJqWFhxLUItTm5WZGhGTVZhbFZ2b3NySmZuSEZhWGZMaTBnczVVOUt1NHlqRDdRb1cxeVIxSVk5T3JaNHFSUXdrcG5tOU8ycnJIMXBtX1hTekxRVDRrWmNLYnVneHNvWXRsRE9TaW9iS0RYdTFNdENxdkRudnh6OEZ3MUdwTXJCdUxrVlFEVmVlUDJqNFp3TGxPbkxUTmk4YlNjTm1fN3ZUc1RQbTRJRDltanBXSThCYXA4M1RLaTNkelAxazFpM0dncnIxSEpVQU96Q0NjUTRnaWxES1o4UkVsUWUyMUJBcUo3eUVublZsdWN5RzZBV2E3dmlZWXV4eEJIa0RsN1hHZHZYMGpJMjZyd2NTX0ZIMnlOaWFmZDN3SkkxMzQyWEF2VDdDUWVoOGRaZWRKU3FYUUdqQjVCSGF5Vl9vZnplVXBfOEhqRkRoS1VkcmNJNGkwa0ZwcEhkUFhNQXUxMjh3RHUyTG5VenlNNEpad1NJdW1fbmpiUTNJU1R5bUVMTngzd3QyV1NFT2Q3QUt5S3lCNEJzU3NkUE1HZXdLSTFnc2otSENFb05Cd3hQQkF2VnFDSUkzbGY5NG0tRU04LVh6TnRCVXFpT3Y5ZERCa2d2ekptSTlrMk9fVmpjbUZrbkdKb2kxVnpZcGlRVTRYbElaempDd3NDRHFrYWh1YmNxWFdyMDhVdFBtV0hGRXk0Q0tvclZMN1VIaVhsVnJPR1VHdFN2dWN3S2RjS1RPeldsUngtRGNGMExDek1kR1p3Y2czZWk1bWl0bFliRjJVbGJOMmJaU0NQWDljOWxFU2RBUUhxUEVsNXJhVDY3aDlWeGxPc3doYW54SkZvNGVuRENaYWZObURGRzJMYTY5RXFCVjZLTHowXzR1S1pDNW14YXZEazZXS3lmb0ROeXFzdVZMdG83WXNqUk4xNTJYMDVYSEhuRVN6NG5lM2MwandXYXo2MFpJR0Q1TUhNUUhQeTdPNFdnYWthVnNKZU9mYUNza3diYjQ5cV9tQnNYME5mWlBjcWFiRFhoWjdCWUxROVhFUkdibndkM0pEQmgtX1RUN2s2WERpY0tUblZQdWVGN3dzVl80aE9HUkpkVEk2UFRmV2o1dWY4dTdxRU9BdUt5NmV1Vk1LeTk3TVdLT1Q4LVpRbDBoSWowcmJWR1pILVI0cnFIMXZfVmdRUGRpLXFXb3FXcWt5MGFaSzNDTkEzUXhXZnRMR3AwcUVXcHU2T1EtQ2hONy12eE4wdFVlZGREWlF5V1d0d3g2VFcxS2hDQldaR2pabTlBQzY4YlUyQnVOTUU1NW9VV0dsbmNOOUVuRnpnTm1RTVR1SzV2VGd3WkJITWpmUXpsSUdfeWZ3QXVtSHljSzVPT092eDk1SGM3d0RBRDJXMVdSb2h5MDV5TFJkbEJ2XzREUXJyTWthZEVwZjB1dHZod1V3ZXZSNU1jVkV5Yk93VUw2Z2Y5a3JDNEw0YlR1bUJRbG9Ccng1aDNuTHhZdzkwcmlqbG5LajVZYkthZWpyTXdiSW15Ri1xVk5NbWpTd2I1MlN0SjB3T0czeE9HZkJRRHhQWHJtSXhoMERSOEdzSzBkeS0xSElJZWo1LW9STWRfSjlhVkt6MFk0d3g2VjIzaC1qUDNxMjRKYmF3dndsQTZyVjVpVUZkaDZKUXJpTU5DLV9hRF91X181VTd0OENIN1pWQ3VQM25JaTV4N2dtcWFsSzNlZ0htM3BkYl9sb3dYRTRaRUJETHZ0a2lobC13LVBGc3VZb1VKSUZWcUZ2VnM1RW5TU01XMFBJWE9TZlZNWW1KWmVrYmlHX1FqeGtCMjNCaHpZclNqQ3oxcW5TTXg5a3ZicDlRaDFuZFJYSkpJUFUyamVIdUxCNE9nVzNoenluQ2FxQXZQRXVHMlhuS3B4WGZ4QUtOeldpTElOLTBsUTRfUXQ0dHctZmphWVJVVjVLVWpyYlZnazI1MDZIUG1ZVEdWUVdRX203Z1NBU1BaajZEYklua3U3SzhFWnI2b3d1SDI1M1hxazlrSWwyTE1CcHZqT2tOTWFRTXhLcjItMllkUEV5LS1mTUFQTHBfVU15MnhqbEtMS2s3blhJdV9IMXZSbmdfVlVyVkhuZUdqRmFuODdRRU9SU1Y3clRBcHJPMmZUMmpfOWhoNkptdFlrUXFnRzg2WXlKa3NValdzM3hwZGk2TlBGRUxqQWd5T0ZDLTRrTWdLbGdJM2lUSElCV1Ezamp0U2UwR2N0MUs3QnBCSlJySUFGLTFVQjZKVDZjSjI4Z01zd0k5OGt1ZDVob1hZbVQ1bEEtWmFELUk4ZE0wcUZ0SEg4a1lXX256em85bTY5LWlZZlZfd3N5Mm1CdnVlb05RZGRRS0JrbWlVTW54VjkwdEF5RWc4WXJaWUwxck9jWHFjb2VJNl84UmV0bXZZeFZNMWJwdXFfajlmTXYtelRBOUpDZXlKMXFBTjVWQWFpY0lnZzFKWElDTEI5amVTT09zUXcxYXZxdk03TjFBcndDcjZvTUhycTVaQ0VLODV5VmI1RzhjY3Rld29pSFlzdVlPT0hnSDNMbmNoV3pmSjNNaUVjTTZfVjdSZHZCUWQwM2tQekdFVjh1STJ1aDl0bUxrNkY3VUt6WU02RXhJNW1LUEM5LVFOMk14ZTB6NDZrZTJteEdHR3cteXFMNjFHR0FpS0FjcENsSzVHeHlRbVBuREo4RHFKTk9WWDNoX283YTExVW8zMmtkdEcyaHVYcERVc2F5NkU4VGJ5R1dFZ3dmWDdaVnZrN1VNM2VqdDNqWXBxYmRZSlBNTUJCMGdNOU9mSVFjS0lUcm9IMHJEbFE2Wmt4UGM0ZHBlQ21NMzg3NXBXTlFrZzFKSnVRZzN4cE9WZ0VGallabEVENTBFaVZKNzg3cUM1YUdtakxRWl9yLVA3X2hJN09lcExWZ1BHSEFTUkxsd0dOLUZwTDc4UW9VempfWHUwNlBkNkF1VExtYmpoVmlERC11ZG5xdTVVR3dKNGxZamJqSkNBN3VQT2VfdWpzUWhZd1VHQV9YQnlsbkVySWxMN09YSE9UeGFEbEpHSDQtNHdNcm9hbmhPWTVoZ2NWZHZVQlpVZ1JEVWg0MGwzejhGVWJhUmxpaEUxeXQwdU5vR3F3TWRyWnZoTkl3YVFjUFlQeVV3UTdBdWh1dl9qSXRVcWlGQm9ncnlSb3Njd3oycXR0am12OEFRWUh5QWx5OXVqdmJ1cnk1TGNJaF9FUWZUekJuSnlfcDVZdzBDWG5CSzg3ZkVIOHJhWkh4V0VUcHFseHlmWWRWZjlQakRYTGJMYWJWQ2J6TXNSMnNYZkFvNm00VmhnaEYtQ0dOV3lta25EMDBUbWU0TGE0Vy1BLU9lR2o3Mi1uOFZjNmI5Zzc4d25tYkF0dGRyUThQWVdLUXZjdXlEbHZ5RUdHSF81VW10bFN5ajJKbHRLZXN3N1dzai1hazhDWDFidGRzU2xoQldjYUJ0dGozUmp3bEN4aEQyTXlWdHR6dDIwN3JPQjdxdEFJeVg1enJZMUxaSHB3RW1NeDhkWnM3NDdlY2ZhZVM0ZFFCWmN6U3lCNFZFWVRRWGdIeWdFX3EtYndfZXhqNWs5c0RHeHNTRnF5elFCVm9VOUtlbmFtZTRESnNMWFdaaW51UEhZUVNtWDJUZFBabXNkSHhCa3BBcHJiLUg0SGdFSnBPYWxCa0d3aFhza0hwYjZUTkhQeHktb09tLWhBaXptTVZPZzlnTDJOSHpSdUFtb0kzVTRFd2FfR0Vub3d0ZUFRU0xlY016WjZxZ3l1ZGswcG51UnlONlAxbTNCU1ExODRXUzNqeDFDNDYwTEFKM2FySS00QWV1aW5fMFZYM3FHdmEzNDR2ZXQ4N0RSN0liTUUzS01rWWtUdXotaHpqbnhHVVQ1cXZhWnYwNzdQVHExbTVDUVBUZGVlNlNnMzRmLXlseGg3MGoxSS1OWnZ3aFAyTFZ2OTJkdVZ4SlJSN3hzbEp6UzU3NXE3aWZ1UEcwUnp0NE55M1lESno0TWVDTk5wWklwTUJKeGR2bkc3azhsbXlvQlVRYmR6OHhCdW5YT3FsRDFHU205M05LYy13bzdxZnpJanYwWjF6WVpwLW5LN0o2NEUtSnp4MkQxZ2xJRG5vZGw5R215UzlwbzMzOUlZYU9QZlJnSTNad1FTVkdwcEJQN0dNRUdsRkVxbG83bTUtNFNZWEc2SmRYYU5yM2lRVmdoUEtkQWVpLWJDTEFQbGJGSkNFQVU1NXJfSEVmS2xUNS0zNlN5ZHRlcWFTZEdvMVhGRXpadWFILV96OEJsd1hXME4wdFJpdHo3SXh1OU5BTkM4R3V0Z2t2WHVFUl9Obnc1VUlsYXJlcE02VERfWl9lOHJGRDdoYXhWMVd0b1pkOUJTd05iUm1JeXU2Y2ZaelgyeFNPVlJVSndWSEctWTNaRGRpcWtzb19XR0J2TFJKQlRWT3NvZVZucWUxWktqb0NRSzFEYUZPb3B4UDdTTWhwOVlpY29XRk9VUU5ONS1EQjMtNjhDbURzdjE1LXMzRFRxUUM1OHhpd2JZLTRuWWt0eVNRV2F5elRvYlZOWG1idmI5SzktdWowYVRWRkx6SDFHMFl2TG1oU1NTd2tfM08tY3RSUExFblhQU1FWNkdVT2p5d0xIT1hTRDZfY1lTN1JrVXR4Mmc4bV8xbmhJUW0wOFd1aTVNSkdQR0JEb0RmN0szd3oyMnRnUVFXTDEwY2J0SlVvQkYyNjJVaUg3TE5pMjJWQ2tsMElYMVVRNy13cEkwcDhkV1NvV282U25PYTdkUTVpQkliZjlQX3JRd1dhYVl1NV9aQlpwQ000VXFWY2dhR1NZVnNxRHpXRVY4LXRjazBYOE51STJyZ3JSOTRDSnhjSms5MWwtb3owbldhTUFocHJubjJfd3hSWEdOYXkzNmJqU3EzWXhNMXN0dDFNN1JjenU3UTJQei1mZGpHWUFOSHZxQUtYUTZpbUphQXNwbE50Skh1SUp1andyTlRQd0ZzNGE5bDRkWHdNMDRRSWZoYzR5em1icDlYRjdVWVU0MjNXTWhRU2RMNUpaTld5QXVxOEFuRzdtd2dTUDNUMjROVGh1U0Z6Zjd1Tk5ySmdfUFk5VUNWcmlPS3FEN1lVS0FSZ1FFQ0EtTmthbG5YU0V1VEN2azJpZkVYOEh6cTJJbDV3TEZyOVFKVjBmT19EUkNyUzVzRHVaVmJ3RDI0Y2VqT3libWd1VWFuTDhiMklqS3h6TFVPT2tlMkVPNVRRTXRQUWZjeTYydkV5c2NwQzJFYXd6YUN2V3ViMVNXS2RZVnUtcVBzdFV4eWlPUHNpcFR3V1kzTXVNRkpwclNscWFVUDFJa3N6M0Q0VGpqSElzb0c2TUFsbFRZcUItSWpuSEhmYzI2blM3cmExeVVjbHRIRWtEd3Q4R1I2bmctNk9XNWJtT0J2VFFDamRUUDhSbXZ3b2tIRXZGQTlXbGs2OVZIVFpFSlNaNGdRZXFzcW83SEJJQ0h3dlViOW16YkhnaU50bGQ1WUFHT3V1U3BOTE1UcTM5LTMzVVZoTjBLa0hLUXZCenI1OXFmaFBIU3lVRnVMZzI4b2pYMGRvb3gySlFEZ1BobHZVYkR3cGluREJqVHBiMDdsY09EYVI3ZWN2M0tDOUhJQVdreDlhV0lza21Yb0FWYVNWTDBsZ05NQzNHVkxSMURfcGVoQTZySWs2Rl9qbDY0N0w4SERqRFJEbjZRRnRIa21BYW10TU9WSzdPMS1UXy1UTldwaDZ3YVFOdTBrV1ktZXAyRERndDk2enRYUkZTVWdNOXJMMnk3OENOMkVFWW1mQUktM1VjamdUblUxRnJXaEZ3dC1JNlVmNFZwNlY4XzZxTjJzVDJyeWFLWHo0Y0JJY0NoNm8tS0RpOW95SDV3MFF5eDhWb0xTNlN0YVEyYU5FejlKamctZ0N4aVp0Q1JYeWlnaWx3NTQ5VWFWMldreHR2bDZkeWRmZmFTM2ptYUxqaDRmOXhHa1JQRUdqZmZvMVY0dUN5QkI5QkNoaVVCZG1qVGxlVlJROG5Ccm5WQW5qYXVIYTRsV3VkNkhjSzU5VjJNTlpNTVdtS0tvb0E4cWtuMzVUY25EdXluSjJITUNnZElCSnVQVU9TeTI1QnhuZnA4RU5NSlZrV19UeU9uTXk5b3JtNTVobHhmSjRENThad2FRREs0QWlFZk1IVHdJc09uZ2pnU0o0S1JDdjFRa1NVeDdYRVhNU0lNUWtUYTBqS19aNS1PQ1ZNc3NBbzEzVzg1VlFKbVpDQ0tZRzZWbS1ybnVYSUdZZlZWLTg1OG93OEJZUGhDYVRhVzRkVnBLWERDRDVfc1FsamdJSnd0Vmc0T0RKY1dxelJpWWpUaXMyVzVjdlBvT1haNUIyZnFaVTlCWGVPQWM4S3Y2a2ZDVWp0OFV5UDFTaGswN2xtZ1A5b25PMWJ0eVc5VnhQSE5uUHcxNjZDeXJmVVcxaEFHQjB1YTFNYmtEVTdfdk40SlowY3VWNV9iLW9sUm80eV9yeGQ3UGRWREJsZHBWTUxsV3haLVhiV1VqdFpTVndaT01rOEtvV2F0bld6NVI0S1ZLNkFnbWJFTHhpa1MxSjYxZ1lJNlhTcm8wRnF1N0dNM2JXdlZQYm1xR3Q4SV9UcjNHamlKeDZ3OUhvZGlLbEZQc2JMakE3OWJuSG5DcHdwSEZBWGI5d3E3dmMtSF8wTU1WVGw3eE56bzhIZ1FfR2tPWEl1OV9uMVJiZS1SRDRXUmlId1RuYm5ZbXpHNjN4b3dHTlBJN2c4R203ZkxfTnpDWGhveDdUSUhXMjh0WFFCeVk4ZmR3X3YtMUtvU2lhSjNwNHBJUnlRQm1rQnpmOTlGRlpPS2g1bUxLMnBrSE9INWFlblFFNng2cHFDakNkcW53Uzk3eGJ0Skp1TkF4M1V6UDdHM2l5WlN5ZWw4SEd0YU1UZVdITzFuaE9lZFNlcTVhaGk4dEFFeVp2MFFScUxsQTRaQUxrVGh5ZUNZckpBd1cyaUJaOW5DRUVnemxqT01wdTJndHpDRnk5WktZWUloaWZKdVQ3dlBHdVhGTUtLVlg0WFU5ZmVoOFhIMUVWbnZ4cENuRjl5eEZneThuVW5CdUdsRkVWOFVCVU5oOE5BcElZY3BlTDd5Q1F5bDZQN3Fock43SEhINEloNmhLS2lVaUItWjRNMHJUSk9mZkd6MFhGWmlaSDdYT21KazBNc3pCbEVhaEFFbjJTU1JaaVFXTThsRFRRcEdrX0p3QkpRX1FVTmtMZnhCcHpsSzBUMGFxS1d3M2doWFktT3FqelM4cTFXOHVBYzNabFRUMFZHRWdWdU8yNl9vRXpXTnZYYnpKMUVfVEFxUkVWS0xfOWFlem1zM3JqYy1GdldSR2pMV09OTXhUdGw5ZzE5RFdhbFA2alJlUlJFeEg3djBLTEdvSHV1RW5IVHNQX2hsMnZuM05WWWl3dFFualFCOXpiMjZKRmxwZzZFaEF1STN4bFZMM3hwRE9qZUlPNXM3MllKY1MzcjAzYkIzbTVHMUljRVU4SkR2WTF5MjJQaG5iOGVmNno1cmk4RDY5clVLWThFOXFraExXYVhOMjRTLTZBYjNRZUtKcmxIR09yaEc2ZkpCdElqTF93Rk9kWjJqOFo0bVBZdmJaNUNEUTdnM01yYVh1aVJ6cWdvdXk3TkliempzOEZETkQ4ZHNMR1Z0OUNLanRVMnR5a0JrSUpQZlhrZ3U0LUpSVFRETjNINGdwek9md1B5V18xOXRMdlBKNEpRbHlzbnhKaEptSW5TUEtUUTljclJHVFFlS0F3THZZemdCMG5QWkIxd2dQVWJHaXRsaHlTV1pqbWplVU5oSnNnb0Z3ZHRFdTloTjRDejROWUVLZ1ozWnBKTC1sZmVJbmp0VEIwN1A4dWtpV3FHeGNBaVI5TDRPdl94VmxNYm9hblduNENNLThVSnZjRGhVRGtpTGt0eHRJOE03Zk01bngtMkFSX3MwcnlDV0F1YmVmQUxRdHVEUnQ1MVZrZnlJZkJ2UWFyb3dINnpIX1ZfZ1lJWFdOdDlvTElMT3FrNHlqcmR5Z0ZXWTl2QXZQN1Y4Q1lraUZuSVVrWGNaeUNsT2dmcTM5bXRKeHBMM2Nzb3VaWFRIcDExZ0xibWRUNUVTbjIwRThiblpEcTVvSEVEWGxPbGZHSE9ldmx6RnRCX1V4R1h0S1lYOUoxQWlLekJyZGI3QmJvemRFcDAteHVpeTZYRFp1Yjc5LW1LcnVQTDJaWWIxaTVoVmpRQUN2RnAyUHBaT2k3eFVmSlJoT0Z3Zi00OUphVE9XTjMtYVhVb0N1a0NpMWdqODhkQ29QWWNVdWs5WmxNelpkV1hJcDlnQ1gyN196U0U1WURCYWlWQ1dPc3c0Q0pGYmMta1FUOUNaMzRkU1hiczZ4S1N0OS1haHI5b3NpY2JHY2laMUlDV182WWRLM0l6ckh1UUV6TnNDQ0tEdW9iVVFRZFpBUlFMeWFlR2w0NWczN21Gb0tQN2J4b01aY1AzRjB3MzdBR0xMVzFjVi02dU5uaWhZQ1p0dThZckZQdWF4aF9VVUxPTk1SZXN5TFVsRHVydmxuQVV5ajFVMU1TbEMxTGtPbV9VV29NdVBzX1VqU2M3SDc3RTgwcmd2QmZCQTdaMkRQMmpWOFFRUmI2Q1RieEtpRkk5TFhmRlI3MjlFcURZVXVRRUk1ZDN0Y3liN3U4TzJlQnZfVGo5TzRPREx5Wjk3Z3BMdVZ3dUpVb3FqQVJnRU91U2lHdWwxaFJxYTl5NlZ0ZmpMNE5qajJJYjFsY2JyQS5OcXpkcGU4Yjdxc2MzQmpYRlhaWVpR" + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "parameters": { + "value": "JkF6dXJlS2V5VmF1bHRLZXlCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUppTlRjMk5ESTVaaTB5TlRZNExUUTFZbVV0WW1aaFlTMHpOMlZrTURkbVl6QmpPREVpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLllNSVBfTXJRcTQ2X2ZwRExfSDNSSkpzSUotM05oeUJkMXlrOWJCS05JOGdnTjMxYWg2cWVoY1BISExnSnJ4OGprQkxMWFBxcDVmMXpsaWxfclVrLUtrT3J5YzhaSTljc3NNNV9TeTN4cEk0Wnk2V0ljNWNqUFd1R0NDbUJwQXlydEdPVnpoalF4bzNyVFcxRFNxZ1pVdnI4VEpseTJQS3J2aUlfUmduRWQ2LVJWS3V1Vk40ZWZWYUs5WFZUbW4xdmZ5Z3pwVHJfVFdDOVBGbXpoT0p6Z1U5OF85X25WcldWSE5TMXVMWEpYbldoQU9mUll0VlJORVFJRU5lTGMtZzNjTXJLOTFzNk5XeE5xZkZfR0w2UHg2cVhHMldXQ09nMzU3ZkJnT1ZTdERLaVZINk4xTWVkUTVwaWFkeHhUVDZMSFpva0I0eDFKbEFJZkxfYlU2OVBWdy5GOVFiM3RWbE1LcHJDS0stWUVpODJ3LlQwTVFpYXV3MGw5TWJfRFdEY1hvbzFqTjZJWXU1OVk3U0VMMm1ndFUweDNYTDl5VHNqZUY0Y2I0NExBaF9vUDdnbUgzbjdKLVZEX3hKN2hXY01XNnlTNDlFX005aXlndDlTQ2w5ZjRTdWtpM0NZdkwwUUVSVFlLSW1qMi1BRkRMWkl3Tm1HYmE4RzhheFBxR2NOS3NSZ0daZ1lUVG9pWUxxQnJ5cmJ2TEp1ZENxZ2plUWRpNU1tdHlQRnBhZ0hwSHZLa3VjRkdwLVhtSjFLYk8yQTJRT1dRVFFaOUNlcmVCcXJDbjI0SXdhUXJVQzRyTkQydzBVQTFUY3dFZXVWQkdFTGRKWm9zWHM2Q0dEZmpaSHFjdnB6NzRKd3g1T0VpcV9EUHM5VEtya01ob3djRXBsWjhaSk1jTlFSZnU5Sjg5ZDdZWGdHZEI1aWtKenA1WlY4OXcxMmIwekNITllKamdkZEhTNjJmalZlYUUxT09QXzd5Zlg1dEpiNmQ1QVhpZ3ItSkozbGI3Y2JhOXE2NHBsYmlhck1LemFiNUhtMkxNRnVLQnI1TmFrbzVQMDBoUUJnR2M2aXBJSzhNT2NLc2RhQjJGcjUwX1ViNnJEUzA4NnUzNy1DSHRGRnF5LTFBaGlDaXhRakNNTF9rWGtJMHZEYmJqRi1feGtNZGFCVi1BdTc5TzZ6V2pzRGVlV0t0VXZWUW5CMGM0Qnk3SVdDTGVWdzIyaTA5WWk3MnpCcWZPRjRyTmd4VTNrSjdfLTVib1dteVlXNndNOGVzTjR4R1kzUGhVNHlLRV91RGc2dk5Od3Q1c2NXWW9TMHh4NlBDb3M4S0R0Y3ItVXlwUTkydGhVX0ZYZ3E5U3RUWXEyWWdWV0dQbnM1Q0RMT0RBSi1sMTFJNklpdGxQN0hoeUxvMzlqNzdpV2ZUS0RnTDVrcDdEOUUzX3FkUFprdGpWUER1M1pRY1Q3MzlOMnp6XzFrWHJEb20tNlBQcXdWUzZtUXpBVW1xaXhTaXZjcWJxalpJRnRPbGxLRkE2cWVyaDJlU0FZelRNU0N1d0p4REJSQjUtbjBNUWxJSGpDMTdkTFpoVnFEMVNiNlBycV95OXN2Mml2V3E5TGE5R2ZHbEhBNlZZM1QzUWRTQ3VrWVJqWFhxLUItTm5WZGhGTVZhbFZ2b3NySmZuSEZhWGZMaTBnczVVOUt1NHlqRDdRb1cxeVIxSVk5T3JaNHFSUXdrcG5tOU8ycnJIMXBtX1hTekxRVDRrWmNLYnVneHNvWXRsRE9TaW9iS0RYdTFNdENxdkRudnh6OEZ3MUdwTXJCdUxrVlFEVmVlUDJqNFp3TGxPbkxUTmk4YlNjTm1fN3ZUc1RQbTRJRDltanBXSThCYXA4M1RLaTNkelAxazFpM0dncnIxSEpVQU96Q0NjUTRnaWxES1o4UkVsUWUyMUJBcUo3eUVublZsdWN5RzZBV2E3dmlZWXV4eEJIa0RsN1hHZHZYMGpJMjZyd2NTX0ZIMnlOaWFmZDN3SkkxMzQyWEF2VDdDUWVoOGRaZWRKU3FYUUdqQjVCSGF5Vl9vZnplVXBfOEhqRkRoS1VkcmNJNGkwa0ZwcEhkUFhNQXUxMjh3RHUyTG5VenlNNEpad1NJdW1fbmpiUTNJU1R5bUVMTngzd3QyV1NFT2Q3QUt5S3lCNEJzU3NkUE1HZXdLSTFnc2otSENFb05Cd3hQQkF2VnFDSUkzbGY5NG0tRU04LVh6TnRCVXFpT3Y5ZERCa2d2ekptSTlrMk9fVmpjbUZrbkdKb2kxVnpZcGlRVTRYbElaempDd3NDRHFrYWh1YmNxWFdyMDhVdFBtV0hGRXk0Q0tvclZMN1VIaVhsVnJPR1VHdFN2dWN3S2RjS1RPeldsUngtRGNGMExDek1kR1p3Y2czZWk1bWl0bFliRjJVbGJOMmJaU0NQWDljOWxFU2RBUUhxUEVsNXJhVDY3aDlWeGxPc3doYW54SkZvNGVuRENaYWZObURGRzJMYTY5RXFCVjZLTHowXzR1S1pDNW14YXZEazZXS3lmb0ROeXFzdVZMdG83WXNqUk4xNTJYMDVYSEhuRVN6NG5lM2MwandXYXo2MFpJR0Q1TUhNUUhQeTdPNFdnYWthVnNKZU9mYUNza3diYjQ5cV9tQnNYME5mWlBjcWFiRFhoWjdCWUxROVhFUkdibndkM0pEQmgtX1RUN2s2WERpY0tUblZQdWVGN3dzVl80aE9HUkpkVEk2UFRmV2o1dWY4dTdxRU9BdUt5NmV1Vk1LeTk3TVdLT1Q4LVpRbDBoSWowcmJWR1pILVI0cnFIMXZfVmdRUGRpLXFXb3FXcWt5MGFaSzNDTkEzUXhXZnRMR3AwcUVXcHU2T1EtQ2hONy12eE4wdFVlZGREWlF5V1d0d3g2VFcxS2hDQldaR2pabTlBQzY4YlUyQnVOTUU1NW9VV0dsbmNOOUVuRnpnTm1RTVR1SzV2VGd3WkJITWpmUXpsSUdfeWZ3QXVtSHljSzVPT092eDk1SGM3d0RBRDJXMVdSb2h5MDV5TFJkbEJ2XzREUXJyTWthZEVwZjB1dHZod1V3ZXZSNU1jVkV5Yk93VUw2Z2Y5a3JDNEw0YlR1bUJRbG9Ccng1aDNuTHhZdzkwcmlqbG5LajVZYkthZWpyTXdiSW15Ri1xVk5NbWpTd2I1MlN0SjB3T0czeE9HZkJRRHhQWHJtSXhoMERSOEdzSzBkeS0xSElJZWo1LW9STWRfSjlhVkt6MFk0d3g2VjIzaC1qUDNxMjRKYmF3dndsQTZyVjVpVUZkaDZKUXJpTU5DLV9hRF91X181VTd0OENIN1pWQ3VQM25JaTV4N2dtcWFsSzNlZ0htM3BkYl9sb3dYRTRaRUJETHZ0a2lobC13LVBGc3VZb1VKSUZWcUZ2VnM1RW5TU01XMFBJWE9TZlZNWW1KWmVrYmlHX1FqeGtCMjNCaHpZclNqQ3oxcW5TTXg5a3ZicDlRaDFuZFJYSkpJUFUyamVIdUxCNE9nVzNoenluQ2FxQXZQRXVHMlhuS3B4WGZ4QUtOeldpTElOLTBsUTRfUXQ0dHctZmphWVJVVjVLVWpyYlZnazI1MDZIUG1ZVEdWUVdRX203Z1NBU1BaajZEYklua3U3SzhFWnI2b3d1SDI1M1hxazlrSWwyTE1CcHZqT2tOTWFRTXhLcjItMllkUEV5LS1mTUFQTHBfVU15MnhqbEtMS2s3blhJdV9IMXZSbmdfVlVyVkhuZUdqRmFuODdRRU9SU1Y3clRBcHJPMmZUMmpfOWhoNkptdFlrUXFnRzg2WXlKa3NValdzM3hwZGk2TlBGRUxqQWd5T0ZDLTRrTWdLbGdJM2lUSElCV1Ezamp0U2UwR2N0MUs3QnBCSlJySUFGLTFVQjZKVDZjSjI4Z01zd0k5OGt1ZDVob1hZbVQ1bEEtWmFELUk4ZE0wcUZ0SEg4a1lXX256em85bTY5LWlZZlZfd3N5Mm1CdnVlb05RZGRRS0JrbWlVTW54VjkwdEF5RWc4WXJaWUwxck9jWHFjb2VJNl84UmV0bXZZeFZNMWJwdXFfajlmTXYtelRBOUpDZXlKMXFBTjVWQWFpY0lnZzFKWElDTEI5amVTT09zUXcxYXZxdk03TjFBcndDcjZvTUhycTVaQ0VLODV5VmI1RzhjY3Rld29pSFlzdVlPT0hnSDNMbmNoV3pmSjNNaUVjTTZfVjdSZHZCUWQwM2tQekdFVjh1STJ1aDl0bUxrNkY3VUt6WU02RXhJNW1LUEM5LVFOMk14ZTB6NDZrZTJteEdHR3cteXFMNjFHR0FpS0FjcENsSzVHeHlRbVBuREo4RHFKTk9WWDNoX283YTExVW8zMmtkdEcyaHVYcERVc2F5NkU4VGJ5R1dFZ3dmWDdaVnZrN1VNM2VqdDNqWXBxYmRZSlBNTUJCMGdNOU9mSVFjS0lUcm9IMHJEbFE2Wmt4UGM0ZHBlQ21NMzg3NXBXTlFrZzFKSnVRZzN4cE9WZ0VGallabEVENTBFaVZKNzg3cUM1YUdtakxRWl9yLVA3X2hJN09lcExWZ1BHSEFTUkxsd0dOLUZwTDc4UW9VempfWHUwNlBkNkF1VExtYmpoVmlERC11ZG5xdTVVR3dKNGxZamJqSkNBN3VQT2VfdWpzUWhZd1VHQV9YQnlsbkVySWxMN09YSE9UeGFEbEpHSDQtNHdNcm9hbmhPWTVoZ2NWZHZVQlpVZ1JEVWg0MGwzejhGVWJhUmxpaEUxeXQwdU5vR3F3TWRyWnZoTkl3YVFjUFlQeVV3UTdBdWh1dl9qSXRVcWlGQm9ncnlSb3Njd3oycXR0am12OEFRWUh5QWx5OXVqdmJ1cnk1TGNJaF9FUWZUekJuSnlfcDVZdzBDWG5CSzg3ZkVIOHJhWkh4V0VUcHFseHlmWWRWZjlQakRYTGJMYWJWQ2J6TXNSMnNYZkFvNm00VmhnaEYtQ0dOV3lta25EMDBUbWU0TGE0Vy1BLU9lR2o3Mi1uOFZjNmI5Zzc4d25tYkF0dGRyUThQWVdLUXZjdXlEbHZ5RUdHSF81VW10bFN5ajJKbHRLZXN3N1dzai1hazhDWDFidGRzU2xoQldjYUJ0dGozUmp3bEN4aEQyTXlWdHR6dDIwN3JPQjdxdEFJeVg1enJZMUxaSHB3RW1NeDhkWnM3NDdlY2ZhZVM0ZFFCWmN6U3lCNFZFWVRRWGdIeWdFX3EtYndfZXhqNWs5c0RHeHNTRnF5elFCVm9VOUtlbmFtZTRESnNMWFdaaW51UEhZUVNtWDJUZFBabXNkSHhCa3BBcHJiLUg0SGdFSnBPYWxCa0d3aFhza0hwYjZUTkhQeHktb09tLWhBaXptTVZPZzlnTDJOSHpSdUFtb0kzVTRFd2FfR0Vub3d0ZUFRU0xlY016WjZxZ3l1ZGswcG51UnlONlAxbTNCU1ExODRXUzNqeDFDNDYwTEFKM2FySS00QWV1aW5fMFZYM3FHdmEzNDR2ZXQ4N0RSN0liTUUzS01rWWtUdXotaHpqbnhHVVQ1cXZhWnYwNzdQVHExbTVDUVBUZGVlNlNnMzRmLXlseGg3MGoxSS1OWnZ3aFAyTFZ2OTJkdVZ4SlJSN3hzbEp6UzU3NXE3aWZ1UEcwUnp0NE55M1lESno0TWVDTk5wWklwTUJKeGR2bkc3azhsbXlvQlVRYmR6OHhCdW5YT3FsRDFHU205M05LYy13bzdxZnpJanYwWjF6WVpwLW5LN0o2NEUtSnp4MkQxZ2xJRG5vZGw5R215UzlwbzMzOUlZYU9QZlJnSTNad1FTVkdwcEJQN0dNRUdsRkVxbG83bTUtNFNZWEc2SmRYYU5yM2lRVmdoUEtkQWVpLWJDTEFQbGJGSkNFQVU1NXJfSEVmS2xUNS0zNlN5ZHRlcWFTZEdvMVhGRXpadWFILV96OEJsd1hXME4wdFJpdHo3SXh1OU5BTkM4R3V0Z2t2WHVFUl9Obnc1VUlsYXJlcE02VERfWl9lOHJGRDdoYXhWMVd0b1pkOUJTd05iUm1JeXU2Y2ZaelgyeFNPVlJVSndWSEctWTNaRGRpcWtzb19XR0J2TFJKQlRWT3NvZVZucWUxWktqb0NRSzFEYUZPb3B4UDdTTWhwOVlpY29XRk9VUU5ONS1EQjMtNjhDbURzdjE1LXMzRFRxUUM1OHhpd2JZLTRuWWt0eVNRV2F5elRvYlZOWG1idmI5SzktdWowYVRWRkx6SDFHMFl2TG1oU1NTd2tfM08tY3RSUExFblhQU1FWNkdVT2p5d0xIT1hTRDZfY1lTN1JrVXR4Mmc4bV8xbmhJUW0wOFd1aTVNSkdQR0JEb0RmN0szd3oyMnRnUVFXTDEwY2J0SlVvQkYyNjJVaUg3TE5pMjJWQ2tsMElYMVVRNy13cEkwcDhkV1NvV282U25PYTdkUTVpQkliZjlQX3JRd1dhYVl1NV9aQlpwQ000VXFWY2dhR1NZVnNxRHpXRVY4LXRjazBYOE51STJyZ3JSOTRDSnhjSms5MWwtb3owbldhTUFocHJubjJfd3hSWEdOYXkzNmJqU3EzWXhNMXN0dDFNN1JjenU3UTJQei1mZGpHWUFOSHZxQUtYUTZpbUphQXNwbE50Skh1SUp1andyTlRQd0ZzNGE5bDRkWHdNMDRRSWZoYzR5em1icDlYRjdVWVU0MjNXTWhRU2RMNUpaTld5QXVxOEFuRzdtd2dTUDNUMjROVGh1U0Z6Zjd1Tk5ySmdfUFk5VUNWcmlPS3FEN1lVS0FSZ1FFQ0EtTmthbG5YU0V1VEN2azJpZkVYOEh6cTJJbDV3TEZyOVFKVjBmT19EUkNyUzVzRHVaVmJ3RDI0Y2VqT3libWd1VWFuTDhiMklqS3h6TFVPT2tlMkVPNVRRTXRQUWZjeTYydkV5c2NwQzJFYXd6YUN2V3ViMVNXS2RZVnUtcVBzdFV4eWlPUHNpcFR3V1kzTXVNRkpwclNscWFVUDFJa3N6M0Q0VGpqSElzb0c2TUFsbFRZcUItSWpuSEhmYzI2blM3cmExeVVjbHRIRWtEd3Q4R1I2bmctNk9XNWJtT0J2VFFDamRUUDhSbXZ3b2tIRXZGQTlXbGs2OVZIVFpFSlNaNGdRZXFzcW83SEJJQ0h3dlViOW16YkhnaU50bGQ1WUFHT3V1U3BOTE1UcTM5LTMzVVZoTjBLa0hLUXZCenI1OXFmaFBIU3lVRnVMZzI4b2pYMGRvb3gySlFEZ1BobHZVYkR3cGluREJqVHBiMDdsY09EYVI3ZWN2M0tDOUhJQVdreDlhV0lza21Yb0FWYVNWTDBsZ05NQzNHVkxSMURfcGVoQTZySWs2Rl9qbDY0N0w4SERqRFJEbjZRRnRIa21BYW10TU9WSzdPMS1UXy1UTldwaDZ3YVFOdTBrV1ktZXAyRERndDk2enRYUkZTVWdNOXJMMnk3OENOMkVFWW1mQUktM1VjamdUblUxRnJXaEZ3dC1JNlVmNFZwNlY4XzZxTjJzVDJyeWFLWHo0Y0JJY0NoNm8tS0RpOW95SDV3MFF5eDhWb0xTNlN0YVEyYU5FejlKamctZ0N4aVp0Q1JYeWlnaWx3NTQ5VWFWMldreHR2bDZkeWRmZmFTM2ptYUxqaDRmOXhHa1JQRUdqZmZvMVY0dUN5QkI5QkNoaVVCZG1qVGxlVlJROG5Ccm5WQW5qYXVIYTRsV3VkNkhjSzU5VjJNTlpNTVdtS0tvb0E4cWtuMzVUY25EdXluSjJITUNnZElCSnVQVU9TeTI1QnhuZnA4RU5NSlZrV19UeU9uTXk5b3JtNTVobHhmSjRENThad2FRREs0QWlFZk1IVHdJc09uZ2pnU0o0S1JDdjFRa1NVeDdYRVhNU0lNUWtUYTBqS19aNS1PQ1ZNc3NBbzEzVzg1VlFKbVpDQ0tZRzZWbS1ybnVYSUdZZlZWLTg1OG93OEJZUGhDYVRhVzRkVnBLWERDRDVfc1FsamdJSnd0Vmc0T0RKY1dxelJpWWpUaXMyVzVjdlBvT1haNUIyZnFaVTlCWGVPQWM4S3Y2a2ZDVWp0OFV5UDFTaGswN2xtZ1A5b25PMWJ0eVc5VnhQSE5uUHcxNjZDeXJmVVcxaEFHQjB1YTFNYmtEVTdfdk40SlowY3VWNV9iLW9sUm80eV9yeGQ3UGRWREJsZHBWTUxsV3haLVhiV1VqdFpTVndaT01rOEtvV2F0bld6NVI0S1ZLNkFnbWJFTHhpa1MxSjYxZ1lJNlhTcm8wRnF1N0dNM2JXdlZQYm1xR3Q4SV9UcjNHamlKeDZ3OUhvZGlLbEZQc2JMakE3OWJuSG5DcHdwSEZBWGI5d3E3dmMtSF8wTU1WVGw3eE56bzhIZ1FfR2tPWEl1OV9uMVJiZS1SRDRXUmlId1RuYm5ZbXpHNjN4b3dHTlBJN2c4R203ZkxfTnpDWGhveDdUSUhXMjh0WFFCeVk4ZmR3X3YtMUtvU2lhSjNwNHBJUnlRQm1rQnpmOTlGRlpPS2g1bUxLMnBrSE9INWFlblFFNng2cHFDakNkcW53Uzk3eGJ0Skp1TkF4M1V6UDdHM2l5WlN5ZWw4SEd0YU1UZVdITzFuaE9lZFNlcTVhaGk4dEFFeVp2MFFScUxsQTRaQUxrVGh5ZUNZckpBd1cyaUJaOW5DRUVnemxqT01wdTJndHpDRnk5WktZWUloaWZKdVQ3dlBHdVhGTUtLVlg0WFU5ZmVoOFhIMUVWbnZ4cENuRjl5eEZneThuVW5CdUdsRkVWOFVCVU5oOE5BcElZY3BlTDd5Q1F5bDZQN3Fock43SEhINEloNmhLS2lVaUItWjRNMHJUSk9mZkd6MFhGWmlaSDdYT21KazBNc3pCbEVhaEFFbjJTU1JaaVFXTThsRFRRcEdrX0p3QkpRX1FVTmtMZnhCcHpsSzBUMGFxS1d3M2doWFktT3FqelM4cTFXOHVBYzNabFRUMFZHRWdWdU8yNl9vRXpXTnZYYnpKMUVfVEFxUkVWS0xfOWFlem1zM3JqYy1GdldSR2pMV09OTXhUdGw5ZzE5RFdhbFA2alJlUlJFeEg3djBLTEdvSHV1RW5IVHNQX2hsMnZuM05WWWl3dFFualFCOXpiMjZKRmxwZzZFaEF1STN4bFZMM3hwRE9qZUlPNXM3MllKY1MzcjAzYkIzbTVHMUljRVU4SkR2WTF5MjJQaG5iOGVmNno1cmk4RDY5clVLWThFOXFraExXYVhOMjRTLTZBYjNRZUtKcmxIR09yaEc2ZkpCdElqTF93Rk9kWjJqOFo0bVBZdmJaNUNEUTdnM01yYVh1aVJ6cWdvdXk3TkliempzOEZETkQ4ZHNMR1Z0OUNLanRVMnR5a0JrSUpQZlhrZ3U0LUpSVFRETjNINGdwek9md1B5V18xOXRMdlBKNEpRbHlzbnhKaEptSW5TUEtUUTljclJHVFFlS0F3THZZemdCMG5QWkIxd2dQVWJHaXRsaHlTV1pqbWplVU5oSnNnb0Z3ZHRFdTloTjRDejROWUVLZ1ozWnBKTC1sZmVJbmp0VEIwN1A4dWtpV3FHeGNBaVI5TDRPdl94VmxNYm9hblduNENNLThVSnZjRGhVRGtpTGt0eHRJOE03Zk01bngtMkFSX3MwcnlDV0F1YmVmQUxRdHVEUnQ1MVZrZnlJZkJ2UWFyb3dINnpIX1ZfZ1lJWFdOdDlvTElMT3FrNHlqcmR5Z0ZXWTl2QXZQN1Y4Q1lraUZuSVVrWGNaeUNsT2dmcTM5bXRKeHBMM2Nzb3VaWFRIcDExZ0xibWRUNUVTbjIwRThiblpEcTVvSEVEWGxPbGZHSE9ldmx6RnRCX1V4R1h0S1lYOUoxQWlLekJyZGI3QmJvemRFcDAteHVpeTZYRFp1Yjc5LW1LcnVQTDJaWWIxaTVoVmpRQUN2RnAyUHBaT2k3eFVmSlJoT0Z3Zi00OUphVE9XTjMtYVhVb0N1a0NpMWdqODhkQ29QWWNVdWs5WmxNelpkV1hJcDlnQ1gyN196U0U1WURCYWlWQ1dPc3c0Q0pGYmMta1FUOUNaMzRkU1hiczZ4S1N0OS1haHI5b3NpY2JHY2laMUlDV182WWRLM0l6ckh1UUV6TnNDQ0tEdW9iVVFRZFpBUlFMeWFlR2w0NWczN21Gb0tQN2J4b01aY1AzRjB3MzdBR0xMVzFjVi02dU5uaWhZQ1p0dThZckZQdWF4aF9VVUxPTk1SZXN5TFVsRHVydmxuQVV5ajFVMU1TbEMxTGtPbV9VV29NdVBzX1VqU2M3SDc3RTgwcmd2QmZCQTdaMkRQMmpWOFFRUmI2Q1RieEtpRkk5TFhmRlI3MjlFcURZVXVRRUk1ZDN0Y3liN3U4TzJlQnZfVGo5TzRPREx5Wjk3Z3BMdVZ3dUpVb3FqQVJnRU91U2lHdWwxaFJxYTl5NlZ0ZmpMNE5qajJJYjFsY2JyQS5OcXpkcGU4Yjdxc2MzQmpYRlhaWVpR" + }, + "api-version": "7.0-preview" }, "responses": { "200": { "body": { "key": { - "kid": "https://kv-sdk-test.vault-int.azure-int.net/keys/KeyBackupRestoreTest/d7a019f5da8843aea30722a7edcc37f7", + "kid": "https://myvault.vault.azure.net/keys/KeyBackupRestoreTest/d7a019f5da8843aea30722a7edcc37f7", "kty": "RSA", "key_ops": [ "encrypt", diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/RestoreSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/RestoreSecret-example.json index 37c4933dc08a..4e14015bb5cc 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/RestoreSecret-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/RestoreSecret-example.json @@ -1,5 +1,6 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "api-version": "7.0-preview", "parameters": { "value": "KUF6dXJlS2V5VmF1bHRTZWNyZXRCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUppTlRjMk5ESTVaaTB5TlRZNExUUTFZbVV0WW1aaFlTMHpOMlZrTURkbVl6QmpPREVpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLmhERDdfVW9aU1ptR2JYN1dYUTU5WDkxZ0FQb05kdDcwZE1BbmgzbjQ3eWNjbkRNOU5vTm1hY0NHZmlNeUwxU0FlZDk0UjhBNDAtVE81TDNfQ05Qal9pdWIyaW03Z21nbHNPNnFFUVVIWU1tOEh2Wl9odFRrdEl4QzRPWEowYTB0S2hscnczZlBvVVFDZHVGcFg0ekEzYTR4VTZXTUNfYjZZVXZqUjZnSGM5TFRUR2tIazh1RTY0aVQ4cmt5RDRrU3RNcXhnU2lfRVZwUUdjWGdfNE9wQ1dBOUFha0N1NkpybGRaQW9BLUtXTWpQbGhaWHFYWGMyVkJlbUJjRTQ1YzY3QWhqYjJrSi1uQ1c5dHBjWS1JZ3JEUHFzWkswOS1WbHVtcl9SbzQzcG5FeW5jVFpTdzZlX1h6VnN0dUFOZHdiM0E2OVR1c1hfYkJKZ0J2SGQ4cDJSUS5WMTlhMVRacjZ2UjJHdEVaWGtOOXJRLmhwMU5IMmwtZklWbVgwWlNfTlRzekJfUEs1aktDUU5rSnJyRUhRQmZjQ2VjdHhmVU5uVlB6MVBqRWNDblZuV0pCUk4zTlFKZm01MjFLRHp1MzBIVUFEUGVmVHJyMFVFS2x5QTM2cThoWFY3VTdoQ0dHNk85NVpYclRsZlVENDI5RTNTNTQxdVBmWGpGR2cxbHlucFNTNnAtVkFzaXFlY1lpQWNuM1hhNzRhUm5xS3N3ZzhyU1ZOX09hSVU3ak1VVUhYZWY1ZmN0NlFrdWFfYkt6Z2dtR2ZiT2RTdVdNRmVQaF9mMkJMUFNGN3k1NThEMFZxSVlNY0JJR0dMU3BQUU93Q094OFF3Y3NVUEp4ZDFuWkVYYjRVNEJZYlhBcmFMX0NwekYxZlhYWVBsdmVUSGdKNVdrR28tWXNJVzAtT3ZqVGdLN2hIamxpR1psd29HOVUtbTJSVDZfbkhseHhVRFMyY3JseGNmay1OOTlXd0tEdUxFMTM5ZE1mN2RCSEl1aTdxd0RXdm1TN2JMTHYzM05Wd19XSl9DT1VGQjgycy1ELXk0UEdIRzVackhsSDgxa25mLVpRblU0SmZfY2lhMWhmWlY3ZFMxb21UZDQtNnJwZmpTMGxFT3VfZTQ5bUpYUGFpZ0hyLWFQYkFzTXJJQ2JvOUVIR2IzMXJ5SlR2QXF2ZmJDbU10bkdLUDV6aUNiZFh3SU5ONzBJTk5lZnJLWGZkZFBUd0RSV3d1ZkxCcGNlU0U0SG5EWVZVQmdkMDl4UUZidG12UDhhTXhhUlpGSTNpWG1fbmpCNmZfdlNhZUNUakdVYVVuRE1QQkdOQWQ5T2xVX3dvUnMtalNCVnVqd1FQSGlGcm5RWElkXzBRdXRYSm54cTU4aUtlTGJvNDJtOHgwaXBRcnB4aEZoUDdHNmZOWXAwVmxXR0RxZ1Q0VlpPQkZsZWRKUU0yaDQtb2xTbXdtUms0M0Y1cjdKd3h4aENqU1JReWx1MGEyQ0ZONWMyZjIxTElZaFliLWNReWFXMDNpV3hsb04zWld5cDJIb1FlUmZPR3lXUzBiU2NBT3JndGpBYnJaUFIwMGRRNnpSOHNBczFYUzh3dzBlaVczbFpsdjJwVWFxOVpTeVhnTS14b2NTOS1ueXRaWGtWWlUwX2dDVXJBV0ZKNG5XdW9oTGM1RkkyRWFQNWR0SXVWa3dnbXlsR1gtYk9ZeHp3dzVGYmI1V3VEbnJ5aDBMSnVic3Q4VXdLdnl3bk1jQ3duMjZSVTNxQVRudGJubVhJS0FyeGkwMldQVk9oTXdpUWZuX2h1TWk5emp3MEVuaXNWdktNWUNnR2xqNWlGZW5Tc0FKUXBiLUY4bng3OWFJQlJaTUc1a0huUDR5dGxmNm9FTkRsRXNJY21aeEtOdEIzcmJPdVROYUhLTXZBNmxSNzlMMDJZSTZrcEdrUUZnaHpIaTBjTWkwbFdCejRTM1AzUEMzZElZSVlQZ0Q2S05kT2FLWHkta0dWdUlsWFNmVlVrMnpzM0NBeTJhZEJjV0NMV094ZkRoQnlwNTl4MHpBRExvdnZySHRLOWF6TGN3N0lTbVl6eUhYMkpobVdReUYtTFd1VzhfcW41SkFVYlB5Z0RTRDYyMi1PTGZQVDZmc2VTWUVBUTFLVWRwZTFnSV9hZWxVT3FaRWN1aE5SckU1YUp0LTN5TEVLVWZIWXF6WTlGbHJrUE5MUC03Y2xRbmEySEhfZmMzZV9LTGtGUDFhQTJjM0RVaERseGhsTzB2bFVmV0c5eXpXaDNZN0NmRFlFMlBaUzZBcFBlYy0wa1NDcEVKMmtCcnFzWG4yeDJDX0FDdTdCTTVGZXNJQkN0M2NqSEdQSVVQRnEteGVmT0RCXzBQcXZDTXpBOHg5Zm10Ny1sNHhVQlJaa0dtZExhZFoxVzdFUXRNRVpsSWMtbDF1V1UzTU15cFZpVWR0OWxJUHVQVUEwc1NrbWxrTGhNSjgyNE5QN0hyVi01dC1ZNDcxaWVKMHdEUjFxMmU4MU8yazdNeTFlTDY3TlY4OVBHYU81SVR5WG1ueUVXMGtVbl9qa3l1UVRkV3dsS09HZVZIYkJWNFpxSXZHWjdQUS02TEE5eXc3a0dyZFRhVFZXOEdOOV9GY1c2VUhjbzA0U3dqTzY2S2x4VlFJWWpBdEZPZlBjWW5xNzF1RndyQS1UZHVDZG1sUFBHOVpjc2tiQmdrbF8wVk90dmhuc0pwYXZKZ2Zka0d3OF9qMkQzd0Jzemd0VndHNk9nNW16eVFwM2pFc0w3UmNtcXd6WFBOaDdKYXdHVDBJMlRvZHYyQ1Z3MDkzWjJlODFXR1NxRnlIejAxdjFBaGN2T2VWdmFjUGM2Y1JJaVduNW93ZF80d2FBdjlyNjVVdmtWa1FLRXpHUmo5eTZILXdZTTMyV1JyMzBlOU9MRTNKUU5POV9kNjRTRmIwSjZHa2VxUmtnNkVXc2xqN1JYLVU1VlhrS1BtMzNpS3c5dGU2NVBqQUNnZThRVDBYVWZEaUx5a1pGeUdpZ09ZMS1TVDFxUlE1eUhMTXhEc3BPRjFXd1lMQ2c2b3hocTlWMm55Z0U1cUJ2ZnYyWUtFaDdjM1dWNjJrYkw3UXJ2d0xkMHVRZ1FwYmUza3E3dGJzcC1lNWlud3cyY0YxQzByeHNScGZJRHlJMmg4b2xHMi1RQUZkWmtlMUlmaE1FZmNfdUdXX2pqSGJSWXVzYnZCRnpKMDdaOVJsVnFMR1A2WXBnTDFsRTFOY09xUVJyYVdxckdDTWZ6SzZMVENQSl93aHJRam9WTzdVRDJIUEVnUjZ2S3U3cWlmTmo3UjE5OUJuRi1EZmlnbk1TYTFKZkZadDNuVXVZOEhMUXRoUzN4MUMxOE50d3dsaDVuNGxYS3d5MERHenljbVNweE05QkdPNTFRckFmSXRfY0xHbUlzMlJ4MzMyeDRIdEZ3Z05nRzFBazNIUno4TlJ4V3lhNWhjb1NoYURXekhES2gyOVp3Vm4wYXVzeWJpal9uNlFGcnZZbjRSOHdPNlRQV3FrS09JcHkxc1lQNWxyNDc1anZSRVZGaFdCWDBiUXdJdnNlM0Q0a0dFQzgzU3FWYkhxY3phZTNwOFNxaG5tQW5ZYzBIbWp4clJfZUMzT0hYVFBGUFZmNDlVWHdrQjIwY1lvcjJ1dzBaTzJ2TUg3S1QwcjBSWDBQVy1qcGpORFpjSGRSNVVCMXFacGlWLWxaYkw0eF9IZW14aWUxY0RPOHNQSXhIOElUSWtOV0tTR1N2eWdraHBBbGl2RzVEZXJObElkeFE2c0tHQ3RtMDEyT2xjN2thaVFaNHh0TjR5ZVpPU2xyS0s0OTlIcWhObzhkNTNsbFFfMW5ncWlHbzhUSDlzWkFrclYwclc3dkJOSF92UlhBdTc2MnlpZGhZUURYYXJXSEFUMm9DU2hEN1lOdnotekoyZGtEajJMcW5CdFNCWFh5T2xsM3o0ZWFITDd2MDZ1QTgxMVBKQU5YZUdoenNaNFVQQUQ2Q0E4cGlxSHB4WGkxODRHNEJETVU4S2VHeHZLWnJiUlNOT2pTOFNrQUJKZERfSklIZ1RhNEFhNzdPUmNZcVY3OWZ5djFZVHNma2lLR2NUYzZIUjZzUVpsamt2U0NQNjdtTTRGUHRqTHlfX1pDQlNwdnRSVWd5UlpNM1dSOUViNHkxa29uRG4zUjMzN2lpSzdfbGtIa1UtZ21VbUpZUVdnUjYzT01pZUdRUHdNR3BSZXlRWE5yckJVTDN2Z2JYdjlac1ZDcDh1NHRwQjBleXJvUXgxZC1KSWJvOWVyR1VlX0ZzU1Fpd0tIaGFIUk02Nzh5dENkcHJFbDBWeG92TFVrX0xNcTFjN1R4MG5jbFl2WE4yUjhEMXNhU2FibkJSd19CU2tZMFNMSXdhb2RpY2o2ZzdLd0ZfMXB2eThhNF9LbnJNLUNkenBvdHA0aTd4QUJuY2JRVUEwWkpsYlp1elRpR0F4ZjFnclk1Z0dZOTVoWi1XZG1lOWlSazBHRTJGN3d4MlJyLUVvS3lZRjNjak0xMWt6MWFmME9fNFdyOXJoU3JrX1NHU3l2a3ZCTW9NZ0xOX0tSS1BlTjlqUnpwRlVST2VnN2NCbGlhdy1odnZhY2lCeDN2UWRqTE5jTldQdU1UbzVmME1QbmU4TUtXcFBoWjBySElMaEVuYW1pcG82X3pzNjczcE9ma09FS0JWWE9mUDEzR0UwS25SWTBab2JPLWRub254LVdBY1dodFZvX08xbkwwTWE5ZXFMMURhRGhJU0JNbVRIM1hkY2dDTnF0emIwcVMtS1l5Mk9zRzZOakRDVEM1aEI3MXIwU09WMUprNFV2QjdYemxTTW9YUXJnTzF2ZFVwSGtxaVhUM1RJZmlQMWRKcDEweDlSMlp5R0lzUzljQUtNMEZyMGRxQmJmQy16NTJpcWZweW4zUVVqb1Fld2hPYnJwUEZGOF9lUmVNRlIwSXZjUkxnMHpwek56UzU1N1pkQkZhemxNTThLcnkwN2QyUDAyTnZtclUtN1ZjOW8wZm1qem9WOHVVTG9PMkJHdmFRdnFJNmtBTmQ5VWo1X2JkY2NVUzBhcklzcGFZa1UtUXQtNnQxYU5YUUdGZEtUbFMwSVowek54bkNIZWRySEE4SkYtOFg3d1ZpRW1McXJQbU1Sd25sbWx3SnhxLVlReWMydmdUallSbUxCVU5TS3VrZkJsa2VnMmlCRWdySksxVlNyRWswX0ZvOXkzV1EwVlZuNXhEZXlGc1JuWDI4Tkl6alFQLVNXaHhYbzdPYm5YY1cxZHlWNE1fYjdzM096cEMwOTJWcGZYQkpaTDhBeHgxNGY2TmJzTEpXLW95VEdsaTJFb2FCZHJKQ2JkQlNOdWJlbGdRRmU2V2hqSjRGdlNrYVJISjFTT3ltbGFtQmYwaVNDOGM2X1g2SkZORjNmOXYuQjc5SDJvbVIyTU52SndydHVzclJ4UQ" @@ -9,7 +10,7 @@ "200": { "body": { "contentType": "text", - "id": "https://kv-sdk-test.vault-int.azure-int.net/secrets/SecretBackupRestoreTest/01ddd6e3a0d34d35bb5bccecb1251837", + "id": "https://myvault.vault.azure.net/secrets/SecretBackupRestoreTest/01ddd6e3a0d34d35bb5bccecb1251837", "attributes": { "enabled": true, "nbf": 1262332800, diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/SetCertificateContacts-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/SetCertificateContacts-example.json index d3404fcc7a11..c139820c3958 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/SetCertificateContacts-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/SetCertificateContacts-example.json @@ -1,5 +1,6 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "api-version": "7.0-preview", "contacts": { "contacts": [ @@ -19,7 +20,7 @@ "responses": { "200": { "body": { - "id": "https://karlaugsoftdeletesdk.vault-int.azure-int.net/certificates/contacts", + "id": "https://myvault.vault.azure.net/certificates/contacts", "contacts": [ { "email": "admin@contoso.com", diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/SetCertificateIssuer-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/SetCertificateIssuer-example.json index ea55cc65dd1e..7e86b2a0d897 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/SetCertificateIssuer-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/SetCertificateIssuer-example.json @@ -1,8 +1,9 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "issuer-name": "issuer01", "api-version": "7.0-preview", - "parameters": { + "parameter": { "provider": "Test", "credentials": { "account_id": "keyvaultuser", @@ -23,13 +24,12 @@ "responses": { "200": { "body": { - "id": "https://karlaugsoftdeletesdk.vault-int.azure-int.net/certificates/issuers/issuer01", + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer01", "provider": "Test", "credentials": { "account_id": "keyvaultuser" }, "org_details": { - "zip": 0, "admin_details": [ { "first_name": "John", diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/SetSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/SetSecret-example.json index 964807163f98..9380d84b2bc0 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/SetSecret-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/SetSecret-example.json @@ -1,5 +1,6 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "secret-name": "crpsecret", "api-version": "7.0-preview", "parameters": { @@ -10,7 +11,7 @@ "200": { "body": { "value": "mysecretvalue", - "id": "https://kv-sdk-test.vault-int.azure-int.net/secrets/crpsecret/03bcccc7c8cf4546a0e3e21e52560441", + "id": "https://myvault.vault.azure.net/secrets/crpsecret/03bcccc7c8cf4546a0e3e21e52560441", "attributes": { "enabled": true, "created": 1493938459, diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/UpdateCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/UpdateCertificate-example.json index fbaef38e44ae..820d5c607691 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/UpdateCertificate-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/UpdateCertificate-example.json @@ -1,5 +1,6 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "certificate-name": "updateCert01", "certificate-version": "c3d31d7b36c942ad83ef36fc0785a4fc", "api-version": "7.0-preview", @@ -17,9 +18,9 @@ "responses": { "200": { "body": { - "id": "https://testvault1021.vault.azure.net/certificates/updateCert01/c3d31d7b36c942ad83ef36fc0785a4fc", - "kid": "https://testvault1021.vault.azure.net/keys/updateCert01/c3d31d7b36c942ad83ef36fc0785a4fc", - "sid": "https://testvault1021.vault.azure.net/secrets/updateCert01/c3d31d7b36c942ad83ef36fc0785a4fc", + "id": "https://myvault.vault.azure.net/certificates/updateCert01/c3d31d7b36c942ad83ef36fc0785a4fc", + "kid": "https://myvault.vault.azure.net/keys/updateCert01/c3d31d7b36c942ad83ef36fc0785a4fc", + "sid": "https://myvault.vault.azure.net/secrets/updateCert01/c3d31d7b36c942ad83ef36fc0785a4fc", "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", "cer": "MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=", "attributes": { diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/UpdateCertificateIssuer-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/UpdateCertificateIssuer-example.json index 62069c408477..2f045ed74452 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/UpdateCertificateIssuer-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/UpdateCertificateIssuer-example.json @@ -1,8 +1,9 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "issuer-name": "issuer01", "api-version": "7.0-preview", - "parameters": { + "parameter": { "provider": "Test", "credentials": { "account_id": "newuseraccount", @@ -13,13 +14,12 @@ "responses": { "200": { "body": { - "id": "https://karlaugsoftdeletesdk.vault-int.azure-int.net/certificates/issuers/issuer01", + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer01", "provider": "Test", "credentials": { "account_id": "newuseraccount" }, "org_details": { - "zip": 0, "admin_details": [ { "first_name": "John", diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/UpdateCertificateOperation-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/UpdateCertificateOperation-example.json index 0b22b11dd02d..87d04f7ec048 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/UpdateCertificateOperation-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/UpdateCertificateOperation-example.json @@ -1,5 +1,6 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "certificate-name": "cancellationRequestedCert01", "api-version": "7.0-preview", "certificateOperation": { @@ -9,7 +10,7 @@ "responses": { "200": { "body": { - "id": "https://testvault1021.vault.azure.net/certificates/cancellationRequestedCert01/pending", + "id": "https://myvault.vault.azure.net/certificates/cancellationRequestedCert01/pending", "issuer": { "name": "issuer02" }, diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/UpdateCertificatePolicy-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/UpdateCertificatePolicy-example.json index eb2a657671e4..49c63aaef9d2 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/UpdateCertificatePolicy-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/UpdateCertificatePolicy-example.json @@ -1,5 +1,6 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "certificate-name": "updateCert01", "api-version": "7.0-preview", "certificatePolicy": { @@ -39,7 +40,7 @@ "responses": { "200": { "body": { - "id": "https://testvault1021.vault.azure.net/certificates/updateCert01/policy", + "id": "https://myvault.vault.azure.net/certificates/updateCert01/policy", "key_props": { "exportable": true, "kty": "RSA", @@ -53,10 +54,7 @@ "subject": "CN=KeyVaultTest", "ekus": [], "key_usage": [], - "validity_months": 297, - "basic_constraints": { - "ca": false - } + "validity_months": 297 }, "lifetime_actions": [ { diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/UpdateKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/UpdateKey-example.json index 02e7327242c5..0ec5f1a5c8ef 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/UpdateKey-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/UpdateKey-example.json @@ -1,5 +1,6 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "key-name": "UpdateKeyAttributesTest", "key-version": "3d31e6e5c4c14eaf9be8d42c00225088", "api-version": "7.0-preview", @@ -19,7 +20,7 @@ "200": { "body": { "key": { - "kid": "https://kv-sdk-test.vault-int.azure-int.net/keys/UpdateKeyAttributesTest/3d31e6e5c4c14eaf9be8d42c00225088", + "kid": "https://myvault.vault.azure.net/keys/UpdateKeyAttributesTest/3d31e6e5c4c14eaf9be8d42c00225088", "kty": "RSA", "key_ops": [ "decrypt", diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/UpdateSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/UpdateSecret-example.json index 590155d920d3..41cd6f77674c 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/UpdateSecret-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/UpdateSecret-example.json @@ -1,5 +1,6 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "secret-name": "crpsecret", "secret-version": "03bcccc7c8cf4546a0e3e21e52560441", "api-version": "7.0-preview", @@ -16,7 +17,7 @@ "responses": { "200": { "body": { - "id": "https://kv-sdk-test.vault-int.azure-int.net/secrets/crpsecret/03bcccc7c8cf4546a0e3e21e52560441", + "id": "https://myvault.vault.azure.net/secrets/crpsecret/03bcccc7c8cf4546a0e3e21e52560441", "contentType": "myContentType", "attributes": { "enabled": true, diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/backupStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/backupStorageAccount.json index ef12fe59469c..629c52058d5f 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/backupStorageAccount.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/backupStorageAccount.json @@ -1,6 +1,6 @@ { "parameters": { - "vaultBaseUrl": "https://storage-sdk-test.vault-int.azure-int.net/", + "vaultBaseUrl": "https://myvault.vault.azure.net/", "storage-account-name": "backupStrg01", "api-version": "7.0-preview" }, diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/decrypt-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/decrypt-example.json index a6f632067c84..e5a57a83770b 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/decrypt-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/decrypt-example.json @@ -1,5 +1,6 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "key-name": "sdktestkey", "key-version": "4eb68492b5f6421e835d961ad2be3155", "api-version": "7.0-preview", @@ -11,7 +12,7 @@ "responses": { "200": { "body": { - "kid": "https://testvault1021.vault.azure.net/keys/sdktestkey/4eb68492b5f6421e835d961ad2be3155", + "kid": "https://myvault.vault.azure.net/keys/sdktestkey/4eb68492b5f6421e835d961ad2be3155", "value": "dvDmrSBpjRjtYg" } } diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/deleteStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/deleteStorageAccount.json index 16bc75b07254..83fe664d9082 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/deleteStorageAccount.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/deleteStorageAccount.json @@ -1,6 +1,6 @@ { "parameters": { - "vaultBaseUrl": "https://storage-sdk-test.vault-int.azure-int.net/", + "vaultBaseUrl": "https://myvault.vault.azure.net/", "storage-account-name": "deleteStrg01", "api-version": "7.0-preview" }, @@ -8,12 +8,12 @@ "200": { "headers": {}, "body": { - "id": "https://storage-sdk-test.vault-int.azure-int.net/storage/deleteStrg01", + "id": "https://myvault.vault.azure.net/storage/deleteStrg01", "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", "activeKeyName": "key1", "autoRegenerateKey": true, "regenerationPeriod": "P30D", - "recoveryId": "https://storage-sdk-test.vault-int.azure-int.net/deletedstorage/deleteStrg01", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/deleteStrg01", "scheduledPurgeDate": 1490790000, "deletedDate": 1490760000, "attributes": { diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/deleteStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/deleteStorageSasDefinition.json index 6ba8e3347bdd..fd00dc8c066c 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/deleteStorageSasDefinition.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/deleteStorageSasDefinition.json @@ -1,6 +1,6 @@ { "parameters": { - "vaultBaseUrl": "https://storage-sdk-test.vault-int.azure-int.net/", + "vaultBaseUrl": "https://myvault.vault.azure.net/", "storage-account-name": "deletesas01", "sas-definition-name": "deleteStrgSasDef01", "api-version": "7.0-preview" @@ -9,12 +9,12 @@ "200": { "headers": {}, "body": { - "id": "https://storage-sdk-test.vault-int.azure-int.net/storage/deletesas01/sas/deleteStrgSasDef01", - "sid": "https://storage-sdk-test.vault-int.azure-int.net/secrets/deletesas01-deleteStrgSasDef01", + "id": "https://myvault.vault.azure.net/storage/deletesas01/sas/deleteStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/deletesas01-deleteStrgSasDef01", "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", "sasType": "service", "validityPeriod": "P15D", - "recoveryId": "https://storage-sdk-test.vault-int.azure-int.net/deletedstorage/deletesas01/sas/deleteStrgSasDef01", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/deletesas01/sas/deleteStrgSasDef01", "scheduledPurgeDate": 1490790000, "deletedDate": 1490760000, "attributes": { diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/encrypt-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/encrypt-example.json index 133f30570712..9605f24416c2 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/encrypt-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/encrypt-example.json @@ -1,5 +1,6 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "key-name": "sdktestkey", "key-version": "f6bc1f3d37c14b2bb1a2ebb4b24e9535", "api-version": "7.0-preview", @@ -11,7 +12,7 @@ "responses": { "200": { "body": { - "kid": "https://karlaugsoftdeletesdk.vault-int.azure-int.net/keys/sdktestkey/f6bc1f3d37c14b2bb1a2ebb4b24e9535", + "kid": "https://myvault.vault.azure.net/keys/sdktestkey/f6bc1f3d37c14b2bb1a2ebb4b24e9535", "value": "CR0Hk0z72oOit5TxObqRpo-WFGZkb5BeN1C0xJFKHxzdDCESYPCNB-OkiWVAnMcSyu6g2aC8riVRRxY5MC2CWKj-CJ_SMke5X2kTi5yi4hJ5vuOLzmg_M6Bmqib7LsI-TeJHr9rs3-tZaSCdZ2zICeFWYduWV5rPjTnAD98epTorT8AA1zMaYHMIhKpmttcj18-dHr0E0T55dgRtsjK04uC3FlRd3odl4RhO1UHAmYpDd5FUqN-20R0dK0Zk8F8sOtThLhEmuLvqPHOCUBiGUhHA4nRDq1La4SUbThu2KMQJL6BbxxEymuliaYcNNtW7MxgVOf6V3mFxVNRY622i9g" } } diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/getDeletedStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/getDeletedStorageAccount.json index 16bc75b07254..83fe664d9082 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/getDeletedStorageAccount.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/getDeletedStorageAccount.json @@ -1,6 +1,6 @@ { "parameters": { - "vaultBaseUrl": "https://storage-sdk-test.vault-int.azure-int.net/", + "vaultBaseUrl": "https://myvault.vault.azure.net/", "storage-account-name": "deleteStrg01", "api-version": "7.0-preview" }, @@ -8,12 +8,12 @@ "200": { "headers": {}, "body": { - "id": "https://storage-sdk-test.vault-int.azure-int.net/storage/deleteStrg01", + "id": "https://myvault.vault.azure.net/storage/deleteStrg01", "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", "activeKeyName": "key1", "autoRegenerateKey": true, "regenerationPeriod": "P30D", - "recoveryId": "https://storage-sdk-test.vault-int.azure-int.net/deletedstorage/deleteStrg01", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/deleteStrg01", "scheduledPurgeDate": 1490790000, "deletedDate": 1490760000, "attributes": { diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/getDeletedStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/getDeletedStorageSasDefinition.json index 6ba8e3347bdd..fd00dc8c066c 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/getDeletedStorageSasDefinition.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/getDeletedStorageSasDefinition.json @@ -1,6 +1,6 @@ { "parameters": { - "vaultBaseUrl": "https://storage-sdk-test.vault-int.azure-int.net/", + "vaultBaseUrl": "https://myvault.vault.azure.net/", "storage-account-name": "deletesas01", "sas-definition-name": "deleteStrgSasDef01", "api-version": "7.0-preview" @@ -9,12 +9,12 @@ "200": { "headers": {}, "body": { - "id": "https://storage-sdk-test.vault-int.azure-int.net/storage/deletesas01/sas/deleteStrgSasDef01", - "sid": "https://storage-sdk-test.vault-int.azure-int.net/secrets/deletesas01-deleteStrgSasDef01", + "id": "https://myvault.vault.azure.net/storage/deletesas01/sas/deleteStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/deletesas01-deleteStrgSasDef01", "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", "sasType": "service", "validityPeriod": "P15D", - "recoveryId": "https://storage-sdk-test.vault-int.azure-int.net/deletedstorage/deletesas01/sas/deleteStrgSasDef01", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/deletesas01/sas/deleteStrgSasDef01", "scheduledPurgeDate": 1490790000, "deletedDate": 1490760000, "attributes": { diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/getStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/getStorageAccount.json index 6d96f89c7521..98ab9d5f1c89 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/getStorageAccount.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/getStorageAccount.json @@ -1,6 +1,6 @@ { "parameters": { - "vaultBaseUrl": "https://storage-sdk-test.vault-int.azure-int.net/", + "vaultBaseUrl": "https://myvault.vault.azure.net/", "storage-account-name": "readStrg01", "api-version": "7.0-preview" }, @@ -8,7 +8,7 @@ "200": { "headers": {}, "body": { - "id": "https://storage-sdk-test.vault-int.azure-int.net/storage/readStrg01", + "id": "https://myvault.vault.azure.net/storage/readStrg01", "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", "activeKeyName": "key1", "autoRegenerateKey": true, diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/getStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/getStorageSasDefinition.json index 38bcdb9d6b10..311c09c26ae5 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/getStorageSasDefinition.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/getStorageSasDefinition.json @@ -1,6 +1,6 @@ { "parameters": { - "vaultBaseUrl": "https://storage-sdk-test.vault-int.azure-int.net/", + "vaultBaseUrl": "https://myvault.vault.azure.net/", "storage-account-name": "getsas01", "sas-definition-name": "getStrgSasDef01", "api-version": "7.0-preview" @@ -9,8 +9,8 @@ "200": { "headers": {}, "body": { - "id": "https://storage-sdk-test.vault-int.azure-int.net/storage/getsas01/sas/getStrgSasDef01", - "sid": "https://storage-sdk-test.vault-int.azure-int.net/secrets/getsas01-getStrgSasDef01", + "id": "https://myvault.vault.azure.net/storage/getsas01/sas/getStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/getsas01-getStrgSasDef01", "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", "sasType": "service", "validityPeriod": "P15D", diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/listDeletedStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/listDeletedStorageAccount.json index aeaa5efd20a8..2cc7d6763335 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/listDeletedStorageAccount.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/listDeletedStorageAccount.json @@ -1,6 +1,6 @@ { "parameters": { - "vaultBaseUrl": "https://storage-sdk-test.vault-int.azure-int.net/", + "vaultBaseUrl": "https://myvault.vault.azure.net/", "api-version": "7.0-preview" }, "responses": { @@ -9,9 +9,9 @@ "body": { "value": [ { - "id": "https://storage-sdk-test.vault-int.azure-int.net/storage/listDeletedStorage01", + "id": "https://myvault.vault.azure.net/storage/listDeletedStorage01", "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc1", - "recoveryId": "https://storage-sdk-test.vault-int.azure-int.net/deletedstorage/listDeletedStorage01", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/listDeletedStorage01", "scheduledPurgeDate": 1490790000, "deletedDate": 1490760000, "attributes": { @@ -26,9 +26,9 @@ } }, { - "id": "https://storage-sdk-test.vault-int.azure-int.net/storage/listDeletedStorage02", + "id": "https://myvault.vault.azure.net/storage/listDeletedStorage02", "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc2", - "recoveryId": "https://storage-sdk-test.vault-int.azure-int.net/deletedstorage/listDeletedStorage02", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/listDeletedStorage02", "scheduledPurgeDate": 1490790000, "deletedDate": 1490760000, "attributes": { @@ -43,7 +43,7 @@ } } ], - "nextLink": "https://{BaseUri}/storage?api-version=7.0-preview&%24skiptoken=" + "nextLink": "https://{BaseUri}/storage?api-version=7.1&%24skiptoken=" } } } diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/listDeletedStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/listDeletedStorageSasDefinition.json index f736ad775ed9..255bba9830db 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/listDeletedStorageSasDefinition.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/listDeletedStorageSasDefinition.json @@ -1,6 +1,6 @@ { "parameters": { - "vaultBaseUrl": "https://storage-sdk-test.vault-int.azure-int.net/", + "vaultBaseUrl": "https://myvault.vault.azure.net/", "storage-account-name": "listsas01", "api-version": "7.0-preview" }, @@ -10,9 +10,9 @@ "body": { "value": [ { - "id": "https://storage-sdk-test.vault-int.azure-int.net/storage/listsas01/sas/listDeletedSasDef01", - "sid": "https://storage-sdk-test.vault-int.azure-int.net/secrets/listsas01-listDeletedSasDef01", - "recoveryId": "https://storage-sdk-test.vault-int.azure-int.net/deletedstorage/listsas01/sas/listDeletedSasDef01", + "id": "https://myvault.vault.azure.net/storage/listsas01/sas/listDeletedSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/listsas01-listDeletedSasDef01", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/listsas01/sas/listDeletedSasDef01", "scheduledPurgeDate": 1490790000, "deletedDate": 1490760000, "attributes": { @@ -23,9 +23,9 @@ } }, { - "id": "https://storage-sdk-test.vault-int.azure-int.net/storage/listsas01/sas/listDeletedSasDef02", - "sid": "https://storage-sdk-test.vault-int.azure-int.net/secrets/listsas01-listDeletedSasDef02", - "recoveryId": "https://storage-sdk-test.vault-int.azure-int.net/deletedstorage/listsas01/sas/listDeletedSasDef02", + "id": "https://myvault.vault.azure.net/storage/listsas01/sas/listDeletedSasDef02", + "sid": "https://myvault.vault.azure.net/secrets/listsas01-listDeletedSasDef02", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/listsas01/sas/listDeletedSasDef02", "scheduledPurgeDate": 1490790000, "deletedDate": 1490760000, "attributes": { @@ -36,7 +36,7 @@ } } ], - "nextLink": "https://{BaseUri}/deletedstorage/listsas01/sas?api-version=7.0-preview&%24skiptoken=" + "nextLink": "https://{BaseUri}/deletedstorage/listsas01/sas?api-version=7.1&%24skiptoken=" } } } diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/listStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/listStorageAccount.json index 16ce3a6251c1..eaecae4520d3 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/listStorageAccount.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/listStorageAccount.json @@ -1,6 +1,6 @@ { "parameters": { - "vaultBaseUrl": "https://storage-sdk-test.vault-int.azure-int.net/", + "vaultBaseUrl": "https://myvault.vault.azure.net/", "api-version": "7.0-preview" }, "responses": { @@ -9,7 +9,7 @@ "body": { "value": [ { - "id": "https://storage-sdk-test.vault-int.azure-int.net/storage/listStorage01", + "id": "https://myvault.vault.azure.net/storage/listStorage01", "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc1", "attributes": { "enabled": true, @@ -23,7 +23,7 @@ } }, { - "id": "https://storage-sdk-test.vault-int.azure-int.net/storage/listStorage02", + "id": "https://myvault.vault.azure.net/storage/listStorage02", "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc2", "attributes": { "enabled": true, @@ -37,7 +37,7 @@ } } ], - "nextLink": "https://{BaseUri}/storage?api-version=7.0-preview&%24skiptoken=" + "nextLink": "https://{BaseUri}/storage?api-version=7.1&%24skiptoken=" } } } diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/listStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/listStorageSasDefinition.json index e79fea5eb0a1..5116bee081fd 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/listStorageSasDefinition.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/listStorageSasDefinition.json @@ -1,6 +1,6 @@ { "parameters": { - "vaultBaseUrl": "https://storage-sdk-test.vault-int.azure-int.net/", + "vaultBaseUrl": "https://myvault.vault.azure.net/", "storage-account-name": "listsas01", "api-version": "7.0-preview" }, @@ -10,8 +10,8 @@ "body": { "value": [ { - "id": "https://storage-sdk-test.vault-int.azure-int.net/storage/listsas01/sas/listStrgSasDef01", - "sid": "https://storage-sdk-test.vault-int.azure-int.net/secrets/listsas01-listStrgSasDef01", + "id": "https://myvault.vault.azure.net/storage/listsas01/sas/listStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/listsas01-listStrgSasDef01", "attributes": { "enabled": true, "created": 1490738438, @@ -20,8 +20,8 @@ } }, { - "id": "https://storage-sdk-test.vault-int.azure-int.net/storage/listsas01/sas/listStrgSasDef02", - "sid": "https://storage-sdk-test.vault-int.azure-int.net/secrets/listsas01-listStrgSasDef02", + "id": "https://myvault.vault.azure.net/storage/listsas01/sas/listStrgSasDef02", + "sid": "https://myvault.vault.azure.net/secrets/listsas01-listStrgSasDef02", "attributes": { "enabled": true, "created": 1490738438, @@ -30,7 +30,7 @@ } } ], - "nextLink": "https://{BaseUri}/storage/listsas01/sas?api-version=7.0-preview&%24skiptoken=" + "nextLink": "https://{BaseUri}/storage/listsas01/sas?api-version=7.1&%24skiptoken=" } } } diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/purgeStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/purgeStorageAccount.json index 2f26c2b078df..9763913310e2 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/purgeStorageAccount.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/purgeStorageAccount.json @@ -1,13 +1,12 @@ { "parameters": { - "vaultBaseUrl": "https://storage-sdk-test.vault-int.azure-int.net/", + "vaultBaseUrl": "https://myvault.vault.azure.net/", "storage-account-name": "purgeStrg01", "api-version": "7.0-preview" }, "responses": { "204": { - "headers": {}, - "body": {} + "headers": {} } } } diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/recoverStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/recoverStorageAccount.json index 24f371bcd444..4a78522b1e89 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/recoverStorageAccount.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/recoverStorageAccount.json @@ -1,6 +1,6 @@ { "parameters": { - "vaultBaseUrl": "https://storage-sdk-test.vault-int.azure-int.net/", + "vaultBaseUrl": "https://myvault.vault.azure.net/", "storage-account-name": "recoverStrg01", "api-version": "7.0-preview" }, @@ -8,7 +8,7 @@ "200": { "headers": {}, "body": { - "id": "https://storage-sdk-test.vault-int.azure-int.net/storage/recoverStrg01", + "id": "https://myvault.vault.azure.net/storage/recoverStrg01", "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", "activeKeyName": "key1", "autoRegenerateKey": true, diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/recoverStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/recoverStorageSasDefinition.json index 323edb8a506d..bbb8947f2800 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/recoverStorageSasDefinition.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/recoverStorageSasDefinition.json @@ -1,6 +1,6 @@ { "parameters": { - "vaultBaseUrl": "https://storage-sdk-test.vault-int.azure-int.net/", + "vaultBaseUrl": "https://myvault.vault.azure.net/", "storage-account-name": "recoversas01", "sas-definition-name": "recoverStrgSasDef01", "api-version": "7.0-preview" @@ -9,8 +9,8 @@ "200": { "headers": {}, "body": { - "id": "https://storage-sdk-test.vault-int.azure-int.net/storage/recoversas01/sas/recoverStrgSasDef01", - "sid": "https://storage-sdk-test.vault-int.azure-int.net/secrets/recoversas01-recoverStrgSasDef01", + "id": "https://myvault.vault.azure.net/storage/recoversas01/sas/recoverStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/recoversas01-recoverStrgSasDef01", "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", "sasType": "service", "validityPeriod": "P15D", diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/regenerateStorageAccountKey.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/regenerateStorageAccountKey.json index 8bbae89934d7..c247b6dfa9cb 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/regenerateStorageAccountKey.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/regenerateStorageAccountKey.json @@ -1,6 +1,6 @@ { "parameters": { - "vaultBaseUrl": "https://storage-sdk-test.vault-int.azure-int.net/", + "vaultBaseUrl": "https://myvault.vault.azure.net/", "storage-account-name": "regenerateKey01", "api-version": "7.0-preview", "parameters": { @@ -11,7 +11,7 @@ "200": { "headers": {}, "body": { - "id": "https://storage-sdk-test.vault-int.azure-int.net/storage/regenerateKey01", + "id": "https://myvault.vault.azure.net/storage/regenerateKey01", "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", "activeKeyName": "key2", "autoRegenerateKey": true, diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/restoreStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/restoreStorageAccount.json index d6432ee09b4c..ea48285fb9c4 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/restoreStorageAccount.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/restoreStorageAccount.json @@ -1,6 +1,6 @@ { "parameters": { - "vaultBaseUrl": "https://storage-sdk-test.vault-int.azure-int.net/", + "vaultBaseUrl": "https://myvault.vault.azure.net/", "storage-account-name": "readStrg01", "api-version": "7.0-preview", "parameters": { @@ -11,7 +11,7 @@ "200": { "headers": {}, "body": { - "id": "https://storage-sdk-test.vault-int.azure-int.net/storage/restoreStrg01", + "id": "https://myvault.vault.azure.net/storage/restoreStrg01", "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", "activeKeyName": "key1", "autoRegenerateKey": true, diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/setStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/setStorageAccount.json index 9aedc60f1a9d..f69e22601a29 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/setStorageAccount.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/setStorageAccount.json @@ -1,6 +1,6 @@ { "parameters": { - "vaultBaseUrl": "https://storage-sdk-test.vault-int.azure-int.net/", + "vaultBaseUrl": "https://myvault.vault.azure.net/", "storage-account-name": "setStrg01", "api-version": "7.0-preview", "parameters": { @@ -21,7 +21,7 @@ "200": { "headers": {}, "body": { - "id": "https://storage-sdk-test.vault-int.azure-int.net/storage/setStrg01", + "id": "https://myvault.vault.azure.net/storage/setStrg01", "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", "activeKeyName": "key2", "autoRegenerateKey": true, diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/setStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/setStorageSasDefinition.json index dad8193fa019..054f229a0b03 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/setStorageSasDefinition.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/setStorageSasDefinition.json @@ -1,6 +1,6 @@ { "parameters": { - "vaultBaseUrl": "https://storage-sdk-test.vault-int.azure-int.net/", + "vaultBaseUrl": "https://myvault.vault.azure.net/", "storage-account-name": "setsas01", "sas-definition-name": "setStrgSasDef01", "api-version": "7.0-preview", @@ -17,8 +17,8 @@ "200": { "headers": {}, "body": { - "id": "https://storage-sdk-test.vault-int.azure-int.net/storage/setsas01/sas/setStrgSasDef01", - "sid": "https://storage-sdk-test.vault-int.azure-int.net/secrets/setsas01-setStrgSasDef01", + "id": "https://myvault.vault.azure.net/storage/setsas01/sas/setStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/setsas01-setStrgSasDef01", "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", "sasType": "service", "validityPeriod": "P15D", diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/sign-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/sign-example.json index a141e0530517..abe2dc2868f0 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/sign-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/sign-example.json @@ -1,5 +1,6 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "key-name": "testkey", "key-version": "9885aa558e8d448789683188f8c194b0", "api-version": "7.0-preview", @@ -11,7 +12,7 @@ "responses": { "200": { "body": { - "kid": "https://demo-test-vault.vault.azure.net/keys/testkey/9885aa558e8d448789683188f8c194b0", + "kid": "https://myvault.vault.azure.net/keys/testkey/9885aa558e8d448789683188f8c194b0", "value": "aKFG8NXcfTzqyR44rW42484K_zZI_T7zZuebvWuNgAoEI1gXYmxrshp42CunSmmu4oqo4-IrCikPkNIBkHXnAW2cv03Ad0UpwXhVfepK8zzDBaJPMKVGS-ZRz8CshEyGDKaLlb3J3zEkXpM3RrSEr0mdV6hndHD_mznLB5RmFui5DsKAhez4vUqajgtkgcPfCekMqeSwp6r9ItVL-gEoAohx8XMDsPedqu-7BuZcBcdayaPuBRL4wWoTDULA11P-UN_sJ5qMj3BbiRYhIlBWGR04wIGfZ3pkJjHJUpOvgH2QajdYPzUBauOCewMYbq9XkLRSzI_A7HkkDVycugSeAA" } } diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/unwrapKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/unwrapKey-example.json index 2639e64fa266..42068991f557 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/unwrapKey-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/unwrapKey-example.json @@ -1,5 +1,6 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "key-name": "sdktestkey", "key-version": "0698c2156c1a4e1da5b6bab6f6422fd6", "api-version": "7.0-preview", @@ -11,7 +12,7 @@ "responses": { "200": { "body": { - "kid": "https://karlaugsoftdeletesdk.vault-int.azure-int.net/keys/sdktestkey/0698c2156c1a4e1da5b6bab6f6422fd6", + "kid": "https://myvault.vault.azure.net/keys/sdktestkey/0698c2156c1a4e1da5b6bab6f6422fd6", "value": "ovQIlbB0DgWhZA7sgkPxbg9H-Ly-VlNGPSgGrrZvlIo" } } diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/updateStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/updateStorageAccount.json index 6b4f9c41e307..6f90c9e244ce 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/updateStorageAccount.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/updateStorageAccount.json @@ -1,6 +1,6 @@ { "parameters": { - "vaultBaseUrl": "https://storage-sdk-test.vault-int.azure-int.net/", + "vaultBaseUrl": "https://myvault.vault.azure.net/", "storage-account-name": "patchStrg01", "api-version": "7.0-preview", "parameters": { @@ -12,7 +12,7 @@ "200": { "headers": {}, "body": { - "id": "https://storage-sdk-test.vault-int.azure-int.net/storage/patchStrg01", + "id": "https://myvault.vault.azure.net/storage/patchStrg01", "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", "activeKeyName": "key1", "autoRegenerateKey": true, diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/updateStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/updateStorageSasDefinition.json index 54dff75db657..f24a3668e990 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/updateStorageSasDefinition.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/updateStorageSasDefinition.json @@ -1,6 +1,6 @@ { "parameters": { - "vaultBaseUrl": "https://storage-sdk-test.vault-int.azure-int.net/", + "vaultBaseUrl": "https://myvault.vault.azure.net/", "storage-account-name": "patchsas01", "sas-definition-name": "patchStrgSasDef01", "api-version": "7.0-preview", @@ -17,8 +17,8 @@ "200": { "headers": {}, "body": { - "id": "https://storage-sdk-test.vault-int.azure-int.net/storage/patchsas01/sas/patchStrgSasDef01", - "sid": "https://storage-sdk-test.vault-int.azure-int.net/secrets/patchsas01-patchStrgSasDef01", + "id": "https://myvault.vault.azure.net/storage/patchsas01/sas/patchStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/patchsas01-patchStrgSasDef01", "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", "sasType": "service", "validityPeriod": "P15D", diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/verify-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/verify-example.json index 8bd13aff08b7..3587edcc9579 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/verify-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/verify-example.json @@ -1,11 +1,13 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "key-name": "testkey", "key-version": "9885aa558e8d448789683188f8c194b0", "api-version": "7.0-preview", "parameters": { "alg": "RS512", - "value": "RUE3Nzg4NTQ4QjQ5RjFFN0U2NzAyQzhDNEMwMkJDOTA1MTYyOTUzNjI5NDhBNzZDQTlFOTM1NDA2M0ZGMjk2Mg" + "value": "RUE3Nzg4NTQ4QjQ5RjFFN0U2NzAyQzhDNEMwMkJDOTA1MTYyOTUzNjI5NDhBNzZDQTlFOTM1NDA2M0ZGMjk2Mg", + "digest": "aKFG8NXcfTzqyR44rW42484K_zZI_T7zZuebvWuNgAoEI1gXYmxrshp42CunSmmu4oqo4-IrCikPkNIBkHXnAW2cv03Ad0UpwXhVfepK8zzDBaJPMKVGS-ZRz8CshEyGDKaLlb3J3zEkXpM3RrSEr0mdV6hndHD_mznLB5RmFui5DsKAhez4vUqajgtkgcPfCekMqeSwp6r9ItVL-gEoAohx8XMDsPedqu-7BuZcBcdayaPuBRL4wWoTDULA11P-UN_sJ5qMj3BbiRYhIlBWGR04wIGfZ3pkJjHJUpOvgH2QajdYPzUBauOCewMYbq9XkLRSzI_A7HkkDVycugSeAA" } }, "responses": { diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/wrapKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/wrapKey-example.json index 63af7b37f6d6..8005ececd266 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/wrapKey-example.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.0/examples/wrapKey-example.json @@ -1,5 +1,6 @@ { "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", "key-name": "sdktestkey", "key-version": "0698c2156c1a4e1da5b6bab6f6422fd6", "api-version": "7.0-preview", @@ -11,7 +12,7 @@ "responses": { "200": { "body": { - "kid": "https://karlaugsoftdeletesdk.vault-int.azure-int.net/keys/sdktestkey/0698c2156c1a4e1da5b6bab6f6422fd6", + "kid": "https://myvault.vault.azure.net/keys/sdktestkey/0698c2156c1a4e1da5b6bab6f6422fd6", "value": "khwIe26NuAZazS7upywDBpGRmRNMW5-4h_JQKxOdB78nYVxZWnBXwCxOv7a3Sr_mCjiVzKsoQQZwL-CJzhYa0512tfYem56zls5a44y5QsdcfvuSzOvpthVhA9XkEfCJSqSY_sip5d8BelT_w_ikvd_8KqiQ_0H54RqYUN8svCpu28paHgBocHFNXTQ9NtU9ec2qgESXk7Jp4OTy9HJtQJavKDUqTJ3YmtLxUgsgBCe0FNMHUSEYC0Ys6PavYzdTwIzYCq84idmAxJOj-O_6eALJFH2sDTOQYHjzOae2t8eFmw6C-t55qjrCI91a9mUJEGPhYixiG4gR4PaEJ7wGvw" } } diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/certificates.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/certificates.json new file mode 100644 index 000000000000..072cfce9477d --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/certificates.json @@ -0,0 +1,2054 @@ +{ + "swagger": "2.0", + "info": { + "title": "KeyVaultClient", + "description": "The key vault client performs cryptographic key operations and vault operations against the Key Vault service.", + "version": "7.1-preview" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{vaultBaseUrl}", + "useSchemePrefix": false, + "positionInOperation": "first", + "parameters": [ + { + "name": "vaultBaseUrl", + "description": "The vault name, for example https://myvault.vault.azure.net.", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + ] + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/certificates": { + "get": { + "tags": [ + "Certificates" + ], + "operationId": "GetCertificates", + "summary": "List certificates in a specified key vault", + "description": "The GetCertificates operation returns the set of certificates resources in the specified key vault. This operation requires the certificates/list permission.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "name": "includePending", + "in": "query", + "required": false, + "type": "boolean", + "description": "Specifies whether to include certificates which are not completely provisioned." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of certificates along with a link to the next page of certificates.", + "schema": { + "$ref": "#/definitions/CertificateListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetCertificates": { + "$ref": "./examples/GetCertificates-example.json" + } + } + } + }, + "/certificates/{certificate-name}": { + "delete": { + "tags": [ + "Certificates" + ], + "operationId": "DeleteCertificate", + "summary": "Deletes a certificate from a specified key vault.", + "description": "Deletes all versions of a certificate object along with its associated policy. Delete certificate cannot be used to remove individual versions of a certificate object. This operation requires the certificates/delete permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The deleted certificate.", + "schema": { + "$ref": "#/definitions/DeletedCertificateBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "DeleteCertificate": { + "$ref": "./examples/DeleteCertificate-example.json" + } + } + } + }, + "/certificates/contacts": { + "put": { + "tags": [ + "Certificates" + ], + "operationId": "SetCertificateContacts", + "description": "Sets the certificate contacts for the specified key vault. This operation requires the certificates/managecontacts permission.", + "summary": "Sets the certificate contacts for the specified key vault.", + "parameters": [ + { + "name": "contacts", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Contacts" + }, + "description": "The contacts for the key vault certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The contacts for the key vault certificate.", + "schema": { + "$ref": "#/definitions/Contacts" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "SetCertificateContacts": { + "$ref": "./examples/SetCertificateContacts-example.json" + } + } + }, + "get": { + "tags": [ + "Certificates" + ], + "operationId": "GetCertificateContacts", + "summary": "Lists the certificate contacts for a specified key vault.", + "description": "The GetCertificateContacts operation returns the set of certificate contact resources in the specified key vault. This operation requires the certificates/managecontacts permission.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The contacts for the key vault certificate.", + "schema": { + "$ref": "#/definitions/Contacts" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetCertificateContacts": { + "$ref": "./examples/GetCertificateContacts-example.json" + } + } + }, + "delete": { + "tags": [ + "Certificates" + ], + "operationId": "DeleteCertificateContacts", + "description": "Deletes the certificate contacts for a specified key vault certificate. This operation requires the certificates/managecontacts permission.", + "summary": "Deletes the certificate contacts for a specified key vault.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The contacts for the key vault certificate.", + "schema": { + "$ref": "#/definitions/Contacts" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "DeleteCertificateContacts": { + "$ref": "./examples/DeleteCertificateContacts-example.json" + } + } + } + }, + "/certificates/issuers": { + "get": { + "tags": [ + "Certificates" + ], + "operationId": "GetCertificateIssuers", + "summary": "List certificate issuers for a specified key vault.", + "description": "The GetCertificateIssuers operation returns the set of certificate issuer resources in the specified key vault. This operation requires the certificates/manageissuers/getissuers permission.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of certificate issuers in a key vault along with a link to the next page of certificate issuers.", + "schema": { + "$ref": "#/definitions/CertificateIssuerListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetCertificateIssuers": { + "$ref": "./examples/GetCertificateIssuers-example.json" + } + } + } + }, + "/certificates/issuers/{issuer-name}": { + "put": { + "tags": [ + "Certificates" + ], + "operationId": "SetCertificateIssuer", + "summary": "Sets the specified certificate issuer.", + "description": "The SetCertificateIssuer operation adds or updates the specified certificate issuer. This operation requires the certificates/setissuers permission.", + "parameters": [ + { + "name": "issuer-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the issuer." + }, + { + "name": "parameter", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CertificateIssuerSetParameters" + }, + "description": "Certificate issuer set parameter." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The issuer for the key vault certificate.", + "schema": { + "$ref": "#/definitions/IssuerBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "SetCertificateIssuer": { + "$ref": "./examples/SetCertificateIssuer-example.json" + } + } + }, + "patch": { + "tags": [ + "Certificates" + ], + "operationId": "UpdateCertificateIssuer", + "summary": "Updates the specified certificate issuer.", + "description": "The UpdateCertificateIssuer operation performs an update on the specified certificate issuer entity. This operation requires the certificates/setissuers permission.", + "parameters": [ + { + "name": "issuer-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the issuer." + }, + { + "name": "parameter", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CertificateIssuerUpdateParameters" + }, + "description": "Certificate issuer update parameter." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The issuer for the key vault certificate.", + "schema": { + "$ref": "#/definitions/IssuerBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "UpdateCertificateIssuer": { + "$ref": "./examples/UpdateCertificateIssuer-example.json" + } + } + }, + "get": { + "tags": [ + "Certificates" + ], + "operationId": "GetCertificateIssuer", + "summary": "Lists the specified certificate issuer.", + "description": "The GetCertificateIssuer operation returns the specified certificate issuer resources in the specified key vault. This operation requires the certificates/manageissuers/getissuers permission.", + "parameters": [ + { + "name": "issuer-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the issuer." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The issuer for the key vault certificate.", + "schema": { + "$ref": "#/definitions/IssuerBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetCertificateIssuer": { + "$ref": "./examples/GetCertificateIssuer-example.json" + } + } + }, + "delete": { + "tags": [ + "Certificates" + ], + "operationId": "DeleteCertificateIssuer", + "summary": "Deletes the specified certificate issuer.", + "description": "The DeleteCertificateIssuer operation permanently removes the specified certificate issuer from the vault. This operation requires the certificates/manageissuers/deleteissuers permission.", + "parameters": [ + { + "name": "issuer-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the issuer." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The issuer for the key vault certificate.", + "schema": { + "$ref": "#/definitions/IssuerBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "DeleteCertificateIssuer": { + "$ref": "./examples/DeleteCertificateIssuer-example.json" + } + } + } + }, + "/certificates/{certificate-name}/create": { + "post": { + "tags": [ + "Certificates" + ], + "operationId": "CreateCertificate", + "summary": "Creates a new certificate.", + "description": "If this is the first version, the certificate resource is created. This operation requires the certificates/create permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z-]+$", + "description": "The name of the certificate." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CertificateCreateParameters" + }, + "description": "The parameters to create a certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Created certificate bundle.", + "schema": { + "$ref": "#/definitions/CertificateOperation" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "CreateCertificate": { + "$ref": "./examples/CreateCertificate-example.json" + } + } + } + }, + "/certificates/{certificate-name}/import": { + "post": { + "tags": [ + "Certificates" + ], + "operationId": "ImportCertificate", + "summary": "Imports a certificate into a specified key vault.", + "description": "Imports an existing valid certificate, containing a private key, into Azure Key Vault. The certificate to be imported can be in either PFX or PEM format. If the certificate is in PEM format the PEM file must contain the key as well as x509 certificates. This operation requires the certificates/import permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z-]+$", + "description": "The name of the certificate." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CertificateImportParameters" + }, + "description": "The parameters to import the certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Imported certificate bundle to the vault.", + "schema": { + "$ref": "#/definitions/CertificateBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "ImportCertificate": { + "$ref": "./examples/ImportCertificate-example.json" + } + } + } + }, + "/certificates/{certificate-name}/versions": { + "get": { + "tags": [ + "Certificates" + ], + "operationId": "GetCertificateVersions", + "summary": "List the versions of a certificate.", + "description": "The GetCertificateVersions operation returns the versions of a certificate in the specified key vault. This operation requires the certificates/list permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate." + }, + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of certificates in the key vault along with a link to the next page of keys.", + "schema": { + "$ref": "#/definitions/CertificateListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetCertificateVersions": { + "$ref": "./examples/GetCertificateVersions-example.json" + } + } + } + }, + "/certificates/{certificate-name}/policy": { + "get": { + "tags": [ + "Certificates" + ], + "operationId": "GetCertificatePolicy", + "summary": "Lists the policy for a certificate.", + "description": "The GetCertificatePolicy operation returns the specified certificate policy resources in the specified key vault. This operation requires the certificates/get permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate in a given key vault." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The certificate policy.", + "schema": { + "$ref": "#/definitions/CertificatePolicy" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetCertificatePolicy": { + "$ref": "./examples/GetCertificatePolicy-example.json" + } + } + }, + "patch": { + "tags": [ + "Certificates" + ], + "operationId": "UpdateCertificatePolicy", + "summary": "Updates the policy for a certificate.", + "description": "Set specified members in the certificate policy. Leave others as null. This operation requires the certificates/update permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate in the given vault." + }, + { + "name": "certificatePolicy", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CertificatePolicy" + }, + "description": "The policy for the certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The certificate policy", + "schema": { + "$ref": "#/definitions/CertificatePolicy" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "UpdateCertificatePolicy": { + "$ref": "./examples/UpdateCertificatePolicy-example.json" + } + } + } + }, + "/certificates/{certificate-name}/{certificate-version}": { + "patch": { + "tags": [ + "Certificates" + ], + "operationId": "UpdateCertificate", + "summary": "Updates the specified attributes associated with the given certificate.", + "description": "The UpdateCertificate operation applies the specified update on the given certificate; the only elements updated are the certificate's attributes. This operation requires the certificates/update permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate in the given key vault." + }, + { + "name": "certificate-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the certificate." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CertificateUpdateParameters" + }, + "description": "The parameters for certificate update." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The updated certificate.", + "schema": { + "$ref": "#/definitions/CertificateBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "UpdateCertificate": { + "$ref": "./examples/UpdateCertificate-example.json" + } + } + }, + "get": { + "tags": [ + "Certificates" + ], + "operationId": "GetCertificate", + "summary": "Gets information about a certificate.", + "description": "Gets information about a specific certificate. This operation requires the certificates/get permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate in the given vault." + }, + { + "name": "certificate-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The retrieved certificate.", + "schema": { + "$ref": "#/definitions/CertificateBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetCertificate": { + "$ref": "./examples/GetCertificate-example.json" + } + } + } + }, + "/certificates/{certificate-name}/pending": { + "patch": { + "tags": [ + "Certificates" + ], + "operationId": "UpdateCertificateOperation", + "summary": "Updates a certificate operation.", + "description": "Updates a certificate creation operation that is already in progress. This operation requires the certificates/update permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate." + }, + { + "name": "certificateOperation", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CertificateOperationUpdateParameter" + }, + "description": "The certificate operation response." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A message containing the certificate operation response.", + "schema": { + "$ref": "#/definitions/CertificateOperation" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "UpdateCertificateOperation": { + "$ref": "./examples/UpdateCertificateOperation-example.json" + } + } + }, + "get": { + "tags": [ + "Certificates" + ], + "operationId": "GetCertificateOperation", + "summary": "Gets the creation operation of a certificate.", + "description": "Gets the creation operation associated with a specified certificate. This operation requires the certificates/get permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The certificate operation response.", + "schema": { + "$ref": "#/definitions/CertificateOperation" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetCertificateOperation": { + "$ref": "./examples/GetCertificateOperation-example.json" + } + } + }, + "delete": { + "tags": [ + "Certificates" + ], + "operationId": "DeleteCertificateOperation", + "summary": "Deletes the creation operation for a specific certificate.", + "description": "Deletes the creation operation for a specified certificate that is in the process of being created. The certificate is no longer created. This operation requires the certificates/update permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A message containing the certificate operation response.", + "schema": { + "$ref": "#/definitions/CertificateOperation" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "DeleteCertificateOperation": { + "$ref": "./examples/DeleteCertificateOperation-example.json" + } + } + } + }, + "/certificates/{certificate-name}/pending/merge": { + "post": { + "tags": [ + "Certificates" + ], + "operationId": "MergeCertificate", + "summary": "Merges a certificate or a certificate chain with a key pair existing on the server.", + "description": "The MergeCertificate operation performs the merging of a certificate or certificate chain with a key pair currently available in the service. This operation requires the certificates/create permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CertificateMergeParameters" + }, + "description": "The parameters to merge certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Merged certificate bundle to the vault.", + "schema": { + "$ref": "#/definitions/CertificateBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "MergeCertificate": { + "$ref": "./examples/MergeCertificate-example.json" + } + } + } + }, + "/certificates/{certificate-name}/backup": { + "post": { + "tags": [ + "Certificates" + ], + "operationId": "BackupCertificate", + "summary": "Backs up the specified certificate.", + "description": "Requests that a backup of the specified certificate be downloaded to the client. All versions of the certificate will be downloaded. This operation requires the certificates/backup permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The backup blob containing the backed up certificate.", + "schema": { + "$ref": "#/definitions/BackupCertificateResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "BackupCertificate": { + "$ref": "./examples/BackupCertificate-example.json" + } + } + } + }, + "/certificates/restore": { + "post": { + "tags": [ + "Certificates" + ], + "operationId": "RestoreCertificate", + "summary": "Restores a backed up certificate to a vault.", + "description": "Restores a backed up certificate, and all its versions, to a vault. This operation requires the certificates/restore permission.", + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CertificateRestoreParameters" + }, + "description": "The parameters to restore the certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Restored certificate bundle in the vault.", + "schema": { + "$ref": "#/definitions/CertificateBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "RestoreCertificate": { + "$ref": "./examples/RestoreCertificate-example.json" + } + } + } + }, + "/deletedcertificates": { + "get": { + "tags": [ + "DeletedCertificates" + ], + "operationId": "GetDeletedCertificates", + "summary": "Lists the deleted certificates in the specified vault currently available for recovery.", + "description": "The GetDeletedCertificates operation retrieves the certificates in the current vault which are in a deleted state and ready for recovery or purging. This operation includes deletion-specific information. This operation requires the certificates/get/list permission. This operation can only be enabled on soft-delete enabled vaults.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "name": "includePending", + "in": "query", + "required": false, + "type": "boolean", + "description": "Specifies whether to include certificates which are not completely provisioned." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of deleted certificates in the vault along with a link to the next page of deleted certificates", + "schema": { + "$ref": "#/definitions/DeletedCertificateListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetDeletedCertificates": { + "$ref": "./examples/GetDeletedCertificates-example.json" + } + } + } + }, + "/deletedcertificates/{certificate-name}": { + "get": { + "tags": [ + "DeletedCertificates" + ], + "operationId": "GetDeletedCertificate", + "summary": "Retrieves information about the specified deleted certificate.", + "description": "The GetDeletedCertificate operation retrieves the deleted certificate information plus its attributes, such as retention interval, scheduled permanent deletion and the current deletion recovery level. This operation requires the certificates/get permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A Certificate bundle of the certificate and its attributes", + "schema": { + "$ref": "#/definitions/DeletedCertificateBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetDeletedCertificate": { + "$ref": "./examples/GetDeletedCertificate-example.json" + } + } + }, + "delete": { + "tags": [ + "DeletedCertificates" + ], + "operationId": "PurgeDeletedCertificate", + "summary": "Permanently deletes the specified deleted certificate.", + "description": "The PurgeDeletedCertificate operation performs an irreversible deletion of the specified certificate, without possibility for recovery. The operation is not available if the recovery level does not specify 'Purgeable'. This operation requires the certificate/purge permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No content signaling that the certificate was purged forever." + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "PurgeDeletedCertificate": { + "$ref": "./examples/PurgeDeletedCertificate-example.json" + } + } + } + }, + "/deletedcertificates/{certificate-name}/recover": { + "post": { + "tags": [ + "DeletedCertificates" + ], + "operationId": "RecoverDeletedCertificate", + "summary": "Recovers the deleted certificate back to its current version under /certificates.", + "description": "The RecoverDeletedCertificate operation performs the reversal of the Delete operation. The operation is applicable in vaults enabled for soft-delete, and must be issued during the retention interval (available in the deleted certificate's attributes). This operation requires the certificates/recover permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deleted certificate" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A Certificate bundle of the original certificate and its attributes", + "schema": { + "$ref": "#/definitions/CertificateBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "RecoverDeletedCertificate": { + "$ref": "./examples/RecoverDeletedCertificate-example.json" + } + } + } + } + }, + "definitions": { + "CertificateAttributes": { + "allOf": [ + { + "$ref": "common.json#/definitions/Attributes" + } + ], + "properties": { + "recoverableDays": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "softDelete data retention days. Value should be >=7 and <=90 when softDelete enabled, otherwise 0." + }, + "recoveryLevel": { + "type": "string", + "description": "Reflects the deletion recovery level currently in effect for certificates in the current vault. If it contains 'Purgeable', the certificate can be permanently deleted by a privileged user; otherwise, only the system can purge the certificate, at the end of the retention interval.", + "enum": [ + "Purgeable", + "Recoverable+Purgeable", + "Recoverable", + "Recoverable+ProtectedSubscription", + "CustomizedRecoverable+Purgeable", + "CustomizedRecoverable", + "CustomizedRecoverable+ProtectedSubscription" + ], + "x-ms-enum": { + "name": "DeletionRecoveryLevel", + "modelAsString": true + }, + "readOnly": true, + "x-nullable": false + } + }, + "description": "The certificate management attributes." + }, + "CertificateItem": { + "properties": { + "id": { + "type": "string", + "description": "Certificate identifier." + }, + "attributes": { + "$ref": "#/definitions/CertificateAttributes", + "description": "The certificate management attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + }, + "x5t": { + "x-ms-client-name": "X509Thumbprint", + "type": "string", + "format": "base64url", + "description": "Thumbprint of the certificate." + } + }, + "description": "The certificate item containing certificate metadata." + }, + "CertificateIssuerItem": { + "properties": { + "id": { + "type": "string", + "description": "Certificate Identifier." + }, + "provider": { + "type": "string", + "description": "The issuer provider." + } + }, + "description": "The certificate issuer item containing certificate issuer metadata." + }, + "CertificateBundle": { + "properties": { + "id": { + "type": "string", + "description": "The certificate id.", + "readOnly": true + }, + "kid": { + "type": "string", + "description": "The key id.", + "readOnly": true + }, + "sid": { + "type": "string", + "description": "The secret id.", + "readOnly": true + }, + "x5t": { + "x-ms-client-name": "X509Thumbprint", + "type": "string", + "format": "base64url", + "description": "Thumbprint of the certificate.", + "readOnly": true + }, + "policy": { + "$ref": "#/definitions/CertificatePolicy", + "description": "The management policy.", + "readOnly": true + }, + "cer": { + "type": "string", + "format": "byte", + "description": "CER contents of x509 certificate." + }, + "contentType": { + "type": "string", + "description": "The content type of the secret." + }, + "attributes": { + "$ref": "#/definitions/CertificateAttributes", + "description": "The certificate attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs" + } + }, + "description": "A certificate bundle consists of a certificate (X509) plus its attributes." + }, + "DeletedCertificateBundle": { + "allOf": [ + { + "$ref": "#/definitions/CertificateBundle" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted certificate." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the certificate is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the certificate was deleted, in UTC" + } + }, + "description": "A Deleted Certificate consisting of its previous id, attributes and its tags, as well as information on when it will be purged." + }, + "DeletedCertificateItem": { + "allOf": [ + { + "$ref": "#/definitions/CertificateItem" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted certificate." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the certificate is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the certificate was deleted, in UTC" + } + }, + "description": "The deleted certificate item containing metadata about the deleted certificate." + }, + "CertificateOperation": { + "properties": { + "id": { + "type": "string", + "description": "The certificate id.", + "readOnly": true + }, + "issuer": { + "x-ms-client-name": "IssuerParameters", + "$ref": "#/definitions/IssuerParameters", + "description": "Parameters for the issuer of the X509 component of a certificate." + }, + "csr": { + "type": "string", + "format": "byte", + "description": "The certificate signing request (CSR) that is being used in the certificate operation." + }, + "cancellation_requested": { + "type": "boolean", + "description": "Indicates if cancellation was requested on the certificate operation." + }, + "status": { + "type": "string", + "description": "Status of the certificate operation." + }, + "status_details": { + "type": "string", + "description": "The status details of the certificate operation." + }, + "error": { + "$ref": "common.json#/definitions/Error", + "description": "Error encountered, if any, during the certificate operation." + }, + "target": { + "type": "string", + "description": "Location which contains the result of the certificate operation." + }, + "request_id": { + "type": "string", + "description": "Identifier for the certificate operation." + } + }, + "description": "A certificate operation is returned in case of asynchronous requests." + }, + "CertificatePolicy": { + "properties": { + "id": { + "type": "string", + "description": "The certificate id.", + "readOnly": true + }, + "key_props": { + "x-ms-client-name": "KeyProperties", + "$ref": "keys.json#/definitions/KeyProperties", + "description": "Properties of the key backing a certificate." + }, + "secret_props": { + "x-ms-client-name": "SecretProperties", + "$ref": "secrets.json#/definitions/SecretProperties", + "description": "Properties of the secret backing a certificate." + }, + "x509_props": { + "x-ms-client-name": "X509CertificateProperties", + "$ref": "#/definitions/X509CertificateProperties", + "description": "Properties of the X509 component of a certificate." + }, + "lifetime_actions": { + "type": "array", + "items": { + "$ref": "#/definitions/LifetimeAction" + }, + "description": "Actions that will be performed by Key Vault over the lifetime of a certificate." + }, + "issuer": { + "x-ms-client-name": "IssuerParameters", + "$ref": "#/definitions/IssuerParameters", + "description": "Parameters for the issuer of the X509 component of a certificate." + }, + "attributes": { + "$ref": "#/definitions/CertificateAttributes", + "description": "The certificate attributes." + } + }, + "description": "Management policy for a certificate." + }, + "X509CertificateProperties": { + "properties": { + "subject": { + "type": "string", + "description": "The subject name. Should be a valid X509 distinguished Name." + }, + "ekus": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The enhanced key usage." + }, + "sans": { + "x-ms-client-name": "SubjectAlternativeNames", + "$ref": "#/definitions/SubjectAlternativeNames", + "description": "The subject alternative names." + }, + "key_usage": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "digitalSignature", + "nonRepudiation", + "keyEncipherment", + "dataEncipherment", + "keyAgreement", + "keyCertSign", + "cRLSign", + "encipherOnly", + "decipherOnly" + ], + "x-ms-enum": { + "name": "KeyUsageType", + "modelAsString": true + } + }, + "description": "List of key usages." + }, + "validity_months": { + "x-ms-client-name": "ValidityInMonths", + "type": "integer", + "format": "int32", + "minimum": 0, + "description": "The duration that the certificate is valid in months." + } + }, + "description": "Properties of the X509 component of a certificate." + }, + "IssuerParameters": { + "properties": { + "name": { + "type": "string", + "description": "Name of the referenced issuer object or reserved names; for example, 'Self' or 'Unknown'." + }, + "cty": { + "x-ms-client-name": "CertificateType", + "type": "string", + "description": "Certificate type as supported by the provider (optional); for example 'OV-SSL', 'EV-SSL'" + }, + "cert_transparency": { + "x-ms-client-name": "CertificateTransparency", + "type": "boolean", + "description": "Indicates if the certificates generated under this policy should be published to certificate transparency logs." + } + }, + "description": "Parameters for the issuer of the X509 component of a certificate." + }, + "LifetimeAction": { + "properties": { + "trigger": { + "$ref": "#/definitions/Trigger", + "description": "The condition that will execute the action." + }, + "action": { + "$ref": "#/definitions/Action", + "description": "The action that will be executed." + } + }, + "description": "Action and its trigger that will be performed by Key Vault over the lifetime of a certificate." + }, + "Action": { + "properties": { + "action_type": { + "type": "string", + "description": "The type of the action.", + "enum": [ + "EmailContacts", + "AutoRenew" + ], + "x-ms-enum": { + "name": "ActionType", + "modelAsString": false + } + } + }, + "description": "The action that will be executed." + }, + "Trigger": { + "properties": { + "lifetime_percentage": { + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 99, + "description": "Percentage of lifetime at which to trigger. Value should be between 1 and 99." + }, + "days_before_expiry": { + "type": "integer", + "format": "int32", + "description": "Days before expiry to attempt renewal. Value should be between 1 and validity_in_months multiplied by 27. If validity_in_months is 36, then value should be between 1 and 972 (36 * 27)." + } + }, + "description": "A condition to be satisfied for an action to be executed." + }, + "SubjectAlternativeNames": { + "properties": { + "emails": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Email addresses." + }, + "dns_names": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Domain names." + }, + "upns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "User principal names." + } + }, + "description": "The subject alternate names of a X509 object." + }, + "IssuerBundle": { + "properties": { + "id": { + "type": "string", + "description": "Identifier for the issuer object.", + "readOnly": true + }, + "provider": { + "type": "string", + "description": "The issuer provider." + }, + "credentials": { + "$ref": "#/definitions/IssuerCredentials", + "description": "The credentials to be used for the issuer." + }, + "org_details": { + "x-ms-client-name": "OrganizationDetails", + "$ref": "#/definitions/OrganizationDetails", + "description": "Details of the organization as provided to the issuer." + }, + "attributes": { + "$ref": "#/definitions/IssuerAttributes", + "description": "Attributes of the issuer object." + } + }, + "description": "The issuer for Key Vault certificate." + }, + "IssuerAttributes": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Determines whether the issuer is enabled." + }, + "created": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Creation time in UTC." + }, + "updated": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Last updated time in UTC." + } + }, + "description": "The attributes of an issuer managed by the Key Vault service." + }, + "IssuerCredentials": { + "properties": { + "account_id": { + "type": "string", + "description": "The user name/account name/account id." + }, + "pwd": { + "x-ms-client-name": "Password", + "type": "string", + "description": "The password/secret/account key." + } + }, + "description": "The credentials to be used for the certificate issuer." + }, + "OrganizationDetails": { + "properties": { + "id": { + "type": "string", + "description": "Id of the organization." + }, + "admin_details": { + "type": "array", + "items": { + "$ref": "#/definitions/AdministratorDetails" + }, + "description": "Details of the organization administrator." + } + }, + "description": "Details of the organization of the certificate issuer." + }, + "AdministratorDetails": { + "properties": { + "first_name": { + "type": "string", + "description": "First name." + }, + "last_name": { + "type": "string", + "description": "Last name." + }, + "email": { + "x-ms-client-name": "EmailAddress", + "type": "string", + "description": "Email address." + }, + "phone": { + "type": "string", + "description": "Phone number." + } + }, + "description": "Details of the organization administrator of the certificate issuer." + }, + "Contacts": { + "properties": { + "id": { + "type": "string", + "description": "Identifier for the contacts collection.", + "readOnly": true + }, + "contacts": { + "x-ms-client-name": "ContactList", + "type": "array", + "items": { + "$ref": "#/definitions/Contact" + }, + "description": "The contact list for the vault certificates." + } + }, + "description": "The contacts for the vault certificates." + }, + "Contact": { + "properties": { + "email": { + "x-ms-client-name": "EmailAddress", + "type": "string", + "description": "Email address." + }, + "name": { + "type": "string", + "description": "Name." + }, + "phone": { + "type": "string", + "description": "Phone number." + } + }, + "description": "The contact information for the vault certificates." + }, + "CertificateCreateParameters": { + "properties": { + "policy": { + "x-ms-client-name": "CertificatePolicy", + "$ref": "#/definitions/CertificatePolicy", + "description": "The management policy for the certificate." + }, + "attributes": { + "x-ms-client-name": "CertificateAttributes", + "$ref": "#/definitions/CertificateAttributes", + "description": "The attributes of the certificate (optional)." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The certificate create parameters." + }, + "CertificateImportParameters": { + "properties": { + "value": { + "x-ms-client-name": "base64EncodedCertificate", + "type": "string", + "description": "Base64 encoded representation of the certificate object to import. This certificate needs to contain the private key." + }, + "pwd": { + "x-ms-client-name": "password", + "type": "string", + "description": "If the private key in base64EncodedCertificate is encrypted, the password used for encryption." + }, + "policy": { + "x-ms-client-name": "CertificatePolicy", + "$ref": "#/definitions/CertificatePolicy", + "description": "The management policy for the certificate." + }, + "attributes": { + "x-ms-client-name": "CertificateAttributes", + "$ref": "#/definitions/CertificateAttributes", + "description": "The attributes of the certificate (optional)." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The certificate import parameters.", + "required": [ + "value" + ] + }, + "CertificateUpdateParameters": { + "properties": { + "policy": { + "x-ms-client-name": "CertificatePolicy", + "$ref": "#/definitions/CertificatePolicy", + "description": "The management policy for the certificate." + }, + "attributes": { + "x-ms-client-name": "CertificateAttributes", + "$ref": "#/definitions/CertificateAttributes", + "description": "The attributes of the certificate (optional)." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The certificate update parameters." + }, + "CertificateMergeParameters": { + "properties": { + "x5c": { + "x-ms-client-name": "x509Certificates", + "type": "array", + "items": { + "type": "string", + "format": "byte" + }, + "description": "The certificate or the certificate chain to merge." + }, + "attributes": { + "x-ms-client-name": "CertificateAttributes", + "$ref": "#/definitions/CertificateAttributes", + "description": "The attributes of the certificate (optional)." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The certificate merge parameters", + "required": [ + "x5c" + ] + }, + "CertificateIssuerSetParameters": { + "properties": { + "provider": { + "type": "string", + "description": "The issuer provider." + }, + "credentials": { + "$ref": "#/definitions/IssuerCredentials", + "description": "The credentials to be used for the issuer." + }, + "org_details": { + "x-ms-client-name": "OrganizationDetails", + "$ref": "#/definitions/OrganizationDetails", + "description": "Details of the organization as provided to the issuer." + }, + "attributes": { + "$ref": "#/definitions/IssuerAttributes", + "description": "Attributes of the issuer object." + } + }, + "description": "The certificate issuer set parameters.", + "required": [ + "provider" + ] + }, + "CertificateIssuerUpdateParameters": { + "properties": { + "provider": { + "type": "string", + "description": "The issuer provider." + }, + "credentials": { + "$ref": "#/definitions/IssuerCredentials", + "description": "The credentials to be used for the issuer." + }, + "org_details": { + "x-ms-client-name": "OrganizationDetails", + "$ref": "#/definitions/OrganizationDetails", + "description": "Details of the organization as provided to the issuer." + }, + "attributes": { + "$ref": "#/definitions/IssuerAttributes", + "description": "Attributes of the issuer object." + } + }, + "description": "The certificate issuer update parameters." + }, + "CertificateOperationUpdateParameter": { + "properties": { + "cancellation_requested": { + "type": "boolean", + "description": "Indicates if cancellation was requested on the certificate operation." + } + }, + "description": "The certificate operation update parameters.", + "required": [ + "cancellation_requested" + ] + }, + "CertificateListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/CertificateItem" + }, + "readOnly": true, + "description": "A response message containing a list of certificates in the key vault along with a link to the next page of certificates." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of certificates." + } + }, + "description": "The certificate list result." + }, + "DeletedCertificateListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeletedCertificateItem" + }, + "readOnly": true, + "description": "A response message containing a list of deleted certificates in the vault along with a link to the next page of deleted certificates" + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of deleted certificates." + } + }, + "description": "A list of certificates that have been deleted in this vault." + }, + "CertificateIssuerListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/CertificateIssuerItem" + }, + "readOnly": true, + "description": "A response message containing a list of certificate issuers in the key vault along with a link to the next page of certificate issuers." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of certificate issuers." + } + }, + "description": "The certificate issuer list result." + }, + "PendingCertificateSigningRequestResult": { + "properties": { + "value": { + "type": "string", + "readOnly": true, + "description": "The pending certificate signing request as Base64 encoded string." + } + }, + "description": "The pending certificate signing request result." + }, + "CertificateRestoreParameters": { + "properties": { + "value": { + "type": "string", + "x-ms-client-name": "certificateBundleBackup", + "format": "base64url", + "description": "The backup blob associated with a certificate bundle." + } + }, + "description": "The certificate restore parameters.", + "required": [ + "value" + ] + }, + "BackupCertificateResult": { + "properties": { + "value": { + "type": "string", + "format": "base64url", + "readOnly": true, + "description": "The backup blob containing the backed up certificate." + } + }, + "description": "The backup certificate result, containing the backup blob." + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/common.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/common.json new file mode 100644 index 000000000000..19d9e833357a --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/common.json @@ -0,0 +1,73 @@ +{ + "swagger": "2.0", + "info": { + "title": "KeyVaultClient", + "description": "The key vault client performs cryptographic key operations and vault operations against the Key Vault service.", + "version": "7.1-preview" + }, + "paths": {}, + "definitions": { + "Attributes": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Determines whether the object is enabled." + }, + "nbf": { + "x-ms-client-name": "NotBefore", + "type": "integer", + "format": "unixtime", + "description": "Not before date in UTC." + }, + "exp": { + "x-ms-client-name": "Expires", + "type": "integer", + "format": "unixtime", + "description": "Expiry date in UTC." + }, + "created": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Creation time in UTC." + }, + "updated": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Last updated time in UTC." + } + }, + "description": "The object attributes managed by the KeyVault service." + }, + "KeyVaultError": { + "properties": { + "error": { + "readOnly": true, + "$ref": "#/definitions/Error" + } + }, + "description": "The key vault error exception." + }, + "Error": { + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The error code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The error message." + }, + "innererror": { + "x-ms-client-name": "innerError", + "readOnly": true, + "$ref": "#/definitions/Error" + } + }, + "description": "The key vault server error." + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/BackupCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/BackupCertificate-example.json new file mode 100644 index 000000000000..f5a66f3dba97 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/BackupCertificate-example.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "testcert", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "body": { + "value": "JkF6dXJlS2V5VmF1bHRLZXlCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUkwTXpnMVlqQTNZaTFrTlRRM0xUUXlaVFV0WVdVNVpTMDJNVEJrWXpNNVpHWmhaamdpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLm85bmpNWEFSZWVla2NaRXBsVTNjdUxQcVZlWmxFbGRDM01XOWpYR0h6bnBXRTdHRGVOSXJraGZscHdTWXFnQnBYQkozMFpUQkRpRmpROENXSnJfUGlsUWNDRkZyN0xrdWJhWUs0TW1zcVh5WGIzbkRJcUJkQmZIUVNpZ1ZET0J5Ym9sUlRNNDYzYjBTbXhLVzJheEdFS2NuZzQ5WFkycG1SR0Vrb0plcHJWZ0tyRkpOUGQ3cGJIS3hQSWdDOFlnT2xudnZxR280RlRDSzh0ZWotcUt2UzBfRGV6Uk5vdTZqZ25SekpxX0g2NGxWMk1hQ0NnUy0xbTlyOGVOTVVvSlhTV1hwc0lneng1RzdEbzIya1ZEY25vMW9rajlCMXNvbklkWmtuY1JybDJBVHNRZVlzZXdkUVd1VmhxRzVLN0pNQWo5YzBRdkxhTmlpdl9PY2pFcm5qUS4zbmI4azJ3SEcyNHFJelNNb184WG13LnJzc3NMNjJ1aUNfTm9IbG5zQlgzcEEtck1uY3g5R3V2NmJYSHpKamxwOWNMUnVaSDBSWlJYVXRwU3BPQWdyZ20tU3BxeEdWSjd2bmprbV9FSzJwYy1sZHNjUWtRSDB4bVFVcGZFNzN5b1VTYTNXVVNMS2VIVnJLdUg5MUtJR0tLODE5ejc5d1Y5Y0F3UjlzcHJxbFFWZnlKdlNFM2tnZTh1RVBpRFFVMFl5WnJqVjBsMGJCU3VkeTN1MVlsVHB6Wk1EWmpUcE05ZGtMclgtaGdxZ1FGa2xFa1hNRWlzd0RDZVM3Y3J2bFg1bnVzbWh5SkZCMklCd3dxNWJieHptV1diU3JOc3lFMmJmWEpXOWN4TFlQcnJJZFpfbkd0X29RSGVQcUFZTS1iVnpTdzdBRGJjMU15NTZwclBGLW9PSm40MHptOTBaaFBTVGMyQXNKRGFBa3R5WFU4WktOYUhFVUlHLWI1SGhUdFBuZ20wN0FrWEtQNngwaDhzZ3ZIaGdCeGpfdWRfQVpQc3pLWG1HdUhFTW9lRGhpT3NkQVdRR0pwR2t0NHVlbmZyamNSeXVlaXJiTC1RV3o4MEtZUnk1QklxbzVJc19RVHpWN2dqMGstYS0td24tazNsNTJ4YjhaNkRXd2tWZ3hqUlNXOXZnV0pVd2U5M1ZrVWtHM3NLRW5SOE9ueTNjWlhQVl9LbWtBTEdlR0ZzQm53SmQwY3dueTBCN2I5VWQyQ19kWEZ0N1BvbnFVNldfT016cC1Nb1NtRzRHbEFpUkVfQ3FrWlhkalhIMVItSmpObUNfdXlPUTdaN1BVaDAtNmd2YUxpcE1CamlWR1FwdzlEZDhmVmtCbWk4VW5uOUxPYXJmSXVtcEJyUE43TTJhM05KdjN6b0NkanhZVFVUMTN1aElpYWl3aExoUFZhT2pUbFRmTkpqbHhIbG5lbGJ1RWJsZTk0bVV1bW8wcjhKRlFMSDdfRjhXMVo0OC1BcjhYYXJwMXhIY0FReHk1WWYwclktdUU1dTAyRnRHUHlPZ0JfNV9WdFlNR2VfRE1mdENLOGVMZGFnVllMRDJDNDUxTldZeVVfeHdNUWdQbXBaMWFnSEdCb2s0ejhsSFBndVhCQ3R2WFFuTHBXQTVBamdOLWNoWjNwUGJmc2RkNjBhekJuWDVaVXQza2hYaWNDdWk4b0xidEtzQUdmckNOZzFwT2Q0MHBHMEJlVy1lNVE1WWQydjY4eFh5a2RiTXhFblFCM3Fzd1djVlh1QXBIR18wREZVVmZvSlc2aVBZcDNWVE51amM5M3QtMDcxWnlZbUZ4V0RfVThMYTAtM19RLV8yZ0pwMVBaVV8tMVBRM1huLXdSWk1vb3JkZGZQa1VPZ0lqdWkwa1IwZWt5RjZvdWdLNnJrSVZHaGp3YUp0ekdKczJLdGxncnRCcEs2MXZEaE5zbFR5VHU5OUp2T2RFTXhwRG5lTEg4NnlvVnhxT3lIT3lxNjByXzdpTHgtdy03Q3FzWTloT3dmQlBZZ3BQVlM2bm9oZVBocTkwaGJTX0lrM21YbnRkRUNMREtSMi1wWFh6bjlPRjZIN09EdHB4S0VXQkdCaHJ0Ykxmd2JZS3dmWmZSVTJVUHpkLUxFd1lQdDloU203Z3lSODNoYkZiSFNBV1cySncxRWl1c3FURWRsRW1lQ3k2cFp1MVFZWko0TUQ0OG5rVXMwdmVHUVhTU2Ytb2RhQm1fYjZZdVh1cWcyWk03MlZjUTd4ZzV4MmpFenFqcllmdjdTTGJINFZBcWp0aFg5LUdRaWEwWEZaS18xempIenhkd1B0R2lSOHJfMkFFZTgtRXFoNi1FaTZKdjRFZjYyMnRrNWFJUWx3R1pETWpGSVNuUkpRdV8xcnJiY1E3enZsbWhUSWFQcUJNRFVxeHBEOXNWUlhuSHdIaTl1b1BCUTllbWJIMkV5WDV6MEhWRXlDa1JEbUd3cmR2RGdsOFVzMUhURjVwYXlYZmF2WkZUZjl3WFZyQXpsRFBEQkFJVFMzWnVJMEJWR2pJUGV1SnRiako4S1pTczRFQVNRRTVyVjViTUpNQXcwa19nYkVRTEZGSjJVb0ZzcWU1QUszM2xGXzR5cGMxU0JaWjJfUzYtbEQyNkpyRFVJSjFFRmJhbWtoUk12bWJIT1Utc0hDT0lRcHdadlJzV3Q3NExSQ1ZyQ09jMGpUdE5TT1JPUW5XRHVXRlFXSzk1TkRGMG96WjIyLVFEMU9YOE9iU3daaHdOXzNfS1pHRmtVMEhNdzNjSTI5LWUxbFltRDV3cmJ0ZlRFbllOeHJKOGpuUWFBY2FoNy14Q0JKeUQ3elo1MXIzRVVyY2VnazBzc1dLeHRPVjRLcTZENmxuVmU3bFpUT1dfTU5aZi1JSzJUbnZCaVZIMHk0SkVGaUxzSDJHbTM1d28yYlZVaXJsT1ljVEk1NlZhdDhMRWhGaEotVlUyNk84NHo2dUJFZmJucEZLbmdKc3pfYVlucW1zNWV1bmd3ek5ndjdlT0U0cUdKSURyMTRBUXRWdEYxcWdrZHNnVllWVXg4U29SQ0NobE5VUzRNRGxhc1hwS1VmV19ENWIxbDRkbXZiNEZNRHJqakJ6djk5dGJSeGZFYUVOSFlYTHZFZnJ0b0pMeW9na2tmNkxlbVoxVDZRbnRtNlR4S1IycU81WU1vMnRJZHlQNmZNRmkweEYtdE1IaHNSdVN3VEpybW1nREcteHVpZllVNkpfaElSNkMzVmo2VkFMMW1oZy0xeW1pRXZuanVLbElONzc4NmFWdVNpNmx5TjJJNzZqY0R6SHZ0VW1ibkVvWWtORHNPQXdqQk9MNFBlS0VjR1hWcm5YNDJhNW5IRWM2cmZQdjZ0Q2tVSUI0UldIdzEyUTFiNDM2N1JvRS1PTWN3TnV6ampob1M0S1ZJbHo4UEFMOW9YYTR4NXlQeG1aVzZ0UUVna1pKeFhEcS00SWRtd1UzTnpVZUoxdGpNaXFsc0xRWDdlc29fTHRtTWJ3bm83YkI3bjRlVnZ4aUtQU3p3dW94c25aaGs1b3ZSSE1xU0NtZjU2MjJvUTZvWEdmNUJLWExlQWdqaE1Sd21razEtUzlGajlyc1hlT19VYjJOMF9hVEFLemlidXIxNVcxaHI3Wk1PVFlxOFlSSGVPaWxSX3Bkdjl5NTlDRDQ1WmE0ZXFURHVrNmRxZ1d4YnoyVVVtMnpwM3pvTHVKSVZ1Y3FIaUVRTVNfMnFKcy1xQTAwT2FFY3huZTM2Q1RsZVNwZjF5cjh2VjNWNW1mQU5zRnJBa21CMnBRWTNfZ21UbldTYTJ3UWlMa2RFRllPSExTeEk5UVowNHo4ZFRfbW5QMmIwWV96N3ZLa0VGQmFpNU02UFdPWjVIOUx1M3Rnay1fR0g0ODd6ZHpuQm0weWZZY3ZIOHJUd1QyQl9UZVRFMG4xcWFRdDRiQ0diUkFQNE1DTDl0SGlIcmlzWEllejQzZlZ3b1c4R2x4YmxKanlLWkpXbmlRNjlBYks3SmYyUER6d2NVSHhkZU5HNGxEZmt6WmFxU2lybGRzZlhXOHBGLWZ6WFVVWHR4eDF4Um5nQ1hJVkxLbU5ZbV9CNnNrNGo0VzROVFMwQTBOcFhsZGJCWjZWWmFDMDNvRHVGUFY0MGtwdWQ0WEd3Q1l3M244ZjFHb0Z6Sk42QjFqOTRLeTdtNE5YT1JsQ3ZaRW5qZTl6T241T1d1ZG9USWRoRzBobXVDUTZ6TXI2YkVaTUFoV1ZFdlREY19iXzZsOWdLWmVxNmVtekxvcmptOEQzLXcyLXRBYlE2Tmpjd0J3eEhMZzlCRllRRFdvaU9UVmJKN2VBcUVFMHVxVkhBcE9KbFVIc2tmQy1uV3NzOV9fRTFURHBLcjRfRE93NFhPUGNzT3dlVU9EUWg3cVFXRE1ZcDVHU1poVWE4MVVHczhmemZKU3JPbmtaTmRVTS10Y0h3R01mX3didy11dmt4UFUtV0tvNUNqR2M2aU5KMDB4MjZZdUpCWXd6TVFyeDBJQWgxMjVBWlozX2FvaFFpLWw3a1pZVE82Q0JVOVZsYllNMndrZXp4ZGhrQ1oxd080Z1NNbDlKU3A5ejhxNV84SU1WM1pma00xV1VqSGZMQk4xRXdFMjRxZFVzcWxyU3NZN1hQaVlpcXQ5ZktXVmZDTWw4RU0yd2ZHYlhxMUI4eWl2UlpMcko0eEk2MUdVUWJFVGU4akNTYTF2aUxxZ0FIa25IYjVjVHIwbDRhTW1EZGZKWnJxZEdpb1lPb2IwdHBuc3IxanRfZm1obGhJa1NSQnREUk5XWEU1OXBjVXlULXpyVjBxZl9sOHN2TlNEV2N3d09YQ3lITWZzLWw0T29xMldVWTVLQi1nSG1HYUJod0oxa19ra3V2S0hlMl9TY0loc3JjTXV1eW5aLW14Vzl5NHBBS3pvdVFsQjR0ZGZvbHdSRk5KX0tHYWJPZXJiWFdDT0ZTd0JVTjdNaG0wOXNyVS1VWG5od1IwdTYyTjVvMDlfbGN5eThnWDg1ZUVrenhuOGZ2NHd2T0Y2dUd1cFk5UGxpSTRLMTNqSHlOd0ZuY2VmRlp2b0dxVlhkcUg5RGJkYS0zY1FhbVFlNmlMek0wRDlnLXlFc2NBTkpKS3ltelVzemZZdV8yY0p0TEhsd0I3NVhLeW1EMG9nUkRvRkRwTmNPd1dRRUlwdVJwU0pfdWtzR2EwZkd3MGVBTU4tQmc1OUs3emhRWHJISUZOckN1S1VPMVdvTkV5WkM2UGlKSUwtUlRsTFQ2WlBNZmdSZzZiUl9aQk43X2dseHBIakNDaFZXMkZ3MnJFUDJJX1pSeHFqdS1WbmVwV2o4eU1CaHZXZzdXNm9QWm1odmVtUTBkQUljNVZTbVVaelhvNFVURmJxSFN2MGlyVTNscVk2eUl1MGRPd2t2MlF4ZENfQVdRUmdLSGRUeG1xYXFUSXJwclZyUHZ1MDFQSGlFbVRnaDZZVEZ6Yllqb3JEeFExWDhlTUN5Rl80cWNjMnhOdTJRblBIdUR0RGZkSy1NV2xJUDhHUEhSMmhPMjlCa0JJSEM4TlgxZmxDN1ZSZkZsQ09McGVIeWl0MGRSd1d2S2tieGNIWl9fRE5ZLVBNQlZMZGpyR3lxT2JoQnpQZHZMeFpXWVU3THNRbnM1dmxiMTc5YXczX3VmclRIWGs0MVpjaDY2ekFRRl9tekQ3ZEVuMm1fb2tBaTh6NTRwdzdxUDAwNHkzenNPd0RmR0htYWF2c3dGMW5NMUN2YXhXajRINE45dVNUaV9DM1oza3lTRHlUNGdUZjNqc0FKUEJybXdSQVBpaU5PTTU3c0x2Y3dJRk9ENnA5QkdWbjFwbjQyZGRTU3A1M3JieTZEcnlwcHdDaDFrampQX3lCbTZRZnd6MElGUWJiSG1zVDNVa2RMb1dURjFSMF9sbjJtR1kxU0hHT2o3VHl1YnQ5d2xLVW5nczVMTWhVcHo3NU1LR3F6UkFnWXNKcHVKUVl1RVpKeGFPSHNmY2VwakdrcFdoMEtfWkhZUEJESzIwOFVqb3FqMDdlVVVueTBaXzJrNXUxTjQzWGJ3V0ZvWVBhdndheW1MYkhWdkRwbzdwMU9JT1IyNkt0SzdPeGlnZ0ZybGVISWNaODFwQzRCdlNzRnZsY1BCZEpHLTZxWTU0Q3J0R2xhaDRvQWplUXgxWS1YU0NLNnZLYUIwWnZHc2lIajhRQ0ZURjRuLUJqTWIzWDcycDJ5Q0tPRlpMRk5qcVR1aHJoYXNnMi1pWTNOTWdwVEQ5eVBSdjA2X1VpcEVfYjVsQ0R0Mmx5QU5NYVpZR1RvSmJTSVhBcFlyU1hEM1dFWllhTGUzQmFSUEJUYTAyeWpyVFZPRDRGNHRFR3c5MkZJZThOSk5NYXRXMFhPSFAwVWxKTXlQUDF2MVdvOUh5aFllaDFfdWg3SlRLcS1hWnJjOS1Xd0ItQXBKTHBQeGxmRzlGZkgwdjNwSTl0Z1VndWJmSkJQVjMwNll2MlNqQ0M2MmVYN3VFTUgzcXQ3TmFYcFVsNXZEVHpfMF9Vc3VlWERQcDNqV01XQTMwenFaYTRFT0dXdElMb0tEM1RjRWNVcmJONGV1bHFQSkFNcWdWdmk2YWRGdTgxU2w5cU1rVVUwaWpqMjZhZDFaeVlEUUZtWlJ4NjJYUW9ZdG81bXJ0eFZhYWtNNndqbkVPSUdJaHhBTnJoX0dNVzVxREhzMEV6TDU4b3lOY0Q5dE1MUC03N1FCbTZwUTFsR0swMVJ6Y3FzTk14ZzRMTzl2ZHQ3NFpIdEhMXzA1TjF2TUt4TE5GbkdhZmwxN1E0eEM0Z3NQeXpYdzBjcklyV2tIQlNQX0NoWE94SmZORWdyNjJOMXEzQVJZa0U1TVlCbzctM3djb3dNT09GcTlrakN1ZGpoekplRjRTUHdfMnFVWVhZRTZsNXJTYjYwUFlFSkJxdW82Skh5ZmdlOXFJX0Rzdmg4eEY1STJfLWtLT2pxU3FZam02NjU0cXVES3phQ3JWLUJFLWtQNF9DOU5OQ0xTaEVWUV92Z3hYdDhzbTRWNGNRMElDRmFzaWV6VnNuV1QtYmRQTGxBT2RqOS15RmhYVTRUYVF3YnZqQ0E2UHQ0aDNVWGdnQzNqWU5IMmJtRGpYSzhFdFJYRTV6cmJsTDRKMFZ1OGxHQVBZaGtOcGNOakNrNWhSSW5jT0dybE9aUk9jdTdSeVczR2JWM2Y1MGJKN0xLNHJjMnJCMTZuemhBdk41WXlydWdwQzdCOE9OR3NTY25ha1V1alJzRzZGYVpydDNzTDJMOW5RTUNoNE9INFF3VWpKWFZKUFJ2MHhPTF9jVEQtdjk0QWgwbWdtcFJ2Q1dhUkl5MXRxeDZHTmZ1R1Nyb0tObmtHYjRiRE1oblpZMmwxQWluWHlCMG5uRGlvci1EUmo1cjhRZi1iaUR6cGhTallzZTZrakdLR0ZObzU4WjFfaGxEaGFob1pQX1lRdlBtWi1Tb2pNaGhMRXZqMXEyZzZWRVd6a1FDWTdIWVEwM1Y3cHVCVm4yaXM1NXpBSGV4cGpERWoxWDgxWU92bnVTdXRhMGx3VkFEMkRoNjZDcmM2VVh2SEtUZTBCeFlsQWdVdkhQc1BkSy1OdVk4S3RaeGNqTWNDVWM0OVl6VW43RVBTamFNaHJ2Ni1mM0pwc09Na3JwREpLM0dPTUVRMUV4cnhYV1lGaGtLaHR2UXZkMXZCVS12b0pRcWJveU9vS1hMM29Xb0FRVnljWlR3Y2laeW4wbUtkVF96NDNFZGhNcDNKS3N5blJ3OVZtSzk3Q3lldGl5LV9HaWVMSngtWDladVMzOUdNa0YxaFVmYmkyc3FJZGZMZ0diem5uMTluTlRVUDlOR3dhaWhybU9Ib1lZeUJ6WE4tby1UWUxhSS01bkNuQ2FSSW9QTF9XSVhyWDZPSzdZU21IWjk4a2xJS19JNTlPSXlWSllrMVh6bGVwd1lPLXUwU0x6bTEtN0dKSE54RGVOMlZhUEk3TThVem10X0x5alliWWxocFFJQnNyUktsMmZZeExKaGt6Q3NjcWp2bVhDemRLVDNhNFV3NDJ4eDlsOWl6dFQ0UmtnV21fYV9YWWk0b0gwdjNCUXRSZ3NfUTBPaGo2T2Y2dEtyZU5XZmcxVDRjMk01SERJd3UxTkl2QXBqNzZtOXJWQkdPWTZFUnhfa2Y3d2twb1g5dWRvcjBCbEx4a1FCc0lwZXpUdzc1MTBncU81Nm1UWXlBUzFCUVdOY1Q2aWhfN3F4ZTVoUkVlZVB5YUpFMnhqR2JNWGg3V1hGYjN0ejVWVWJOTFpxMjBiM3E0UFdkdjJXX1Foc2VUY0JTRDY1eVFPYndTai1UcVpNNi1teUZHb3B6dVdfRWcxU3pzNzRaY3RMSUxyN3pMLXRyeC1WTTVfVHllMVZXbG9ZOTZVYUJyUktpQWU1SVhKMlBQd2RIY1p4SWx4N3dBRXdueXVOZXA2b2NKcXRwZUJ1elB0LTFaX3UyWjZrQmR4V0lpYlVEaGxOU3AxM1NkTGw0Z2hkemVqZWFaYVllRDVtTGltWWJ4dEhsQ1ZiTm0yNU1ZbDYxMFU3QlZnNVJJSXB6VUdmZ2Z5NnpJRzRLQjBMR3BISzNhdHRRUExvQ1VlTDRYNVdBUUFsb3BRa0RKOU5lTHFGdHN4cWpZaGJnZ1Z5am9ScjNPOVhzYzlJVEtVaXJaUDlyTVl0eFduT0tUck9YYVk2WVR2Wi05QUhpT3ZfdTRhOElTS01DVng3OUlnXzdqTjFfREhjdGd5cEEzVnpkbjNKdlJJQTlfbHZDV2dTSS1NUjlPQ19xekhIUmU5dENqWklDVzhwRURSYVhZOHc4UUQ0bXJicmFLTTNsWmtTNUF2NVp2WjFRTDJlZkExbXlJdmN2czhmekxRUFM0Nm0xX3ZPVzcxN05ydDQzeUcwbUZxZnk4aExaZEUzQ2RkMzRtVVFXWVdqSkdvQXZ0VHBXRmpwWkwwOERjQUd0RzVzdkU0Mi1WWjRqSVVYQ2JsemZaczl3N2VsNThvRkJLUng5dUJLby1PWmYxTVloVEZrSlU1V3YtUEVreXRPSVpfU09nZVM2RTVMTUZsOVpZenZ0QkJuWWF0bDY4NGpEdWx0STh4LXpmSHdwUEFwNk9CQVpxalk3S3JoSVJuVGRoc2Y1VUpCcmtvU1JGUFlaaXE4RjJLWHA2Nm1PbDMyRm5RTVprMUlDVkxiYVpnUFlWNnl5UXpZdEdhbjhOc3BFTG10RWkwMVlTZE1ySUxkUF9TVTZwXzJ1NU1oY0RPMDF0Y2hwMHp6eUVfTVp4YWJodXpMWUVIeXJvYl83cjFKdWNjZUQ4SlM5T3JBdEk1YXdsbEhGSFRRWExOWGJuTHdTQ2JrdHNiTGFoa05ya0ZXR1RDNFRzUlBfYTlHMVhFTE5DRkhaMVhvS3NsQTdMMzFGaWpyNFpEYjRQeW5hT1BrSlhCcEx6MGNLN2FmeFVxNWlySHhZNEQyVkdNT3gwUmc5UEJJeE1vdzN6TmVGZ3Y5dzRTdkJ5VUpQdjNGV3huX004M3g5dldiWFh3bU9LbHlLNVpWQi11LWxKVno5Rm81YWRfVEtwUkxqSGdNWURKNU9Ka2dhaEFQMmhOaG9lb0FicnBPNzVYT2tYZ3pONDdwVW1kdzhmZV9FN3ZSeUREZi1LNVZNS2UzOXRPSi0xRmxtemJVc0pET0lScHp5WVl0Y2Q4cGtPU3JQYnIzMWdJNFRIUjJHV2xwZWJCZ3VhYmppck9UTjI1Zy02MmRPWWVKNHVwNjI3MjdnbWNQWF9EYmJfSFdrTnVLaXBmdkJ1UmVNN2J1WE9LVzg2bllHSW5ZNzJZZ2lvYVpIaEJnY3pHbktuUUlkWTJ2U3NzQ3E2b1FSUGJqeHRQZ1gxT1h2bXNucmNBencwN01ULTNueWF1RDBfNG90RGJueF92dm1fM203ajBwcjBGUWZ6NWs1UEVNUG1sOFVhenFxX2xEU3djV2JOU21JbWF3OWt3U2NXN2xrOUViNTRLRTRhaWt2bVRxXzRuN3lkSDNQblI3bC1RMXE2X2k5VWdHUVFfSmk5UDZQbmszQzd6TTVYbDBpYllEVXVUV2FUdlRrX2ZjaXo0VUJXWkV1T0lLU2xZaHVBVzFQUTJPU3NiUWxPbDU4U3ZvTEYtS2w3TmNkRXRBODJVWjdkLVFCN2xKNWFCcnd0Vmx6TDFxX2Y1UGd6a2NtcW1pLVViM2tUQ0xlNjJYbzN1MmFvSnNTQ0c4bXhwZkJ6dVFVVkk3WXdTa2ktWUtNUnlJSGhuOG9xRDNQS0xMbHk2LVZkZy1VREE1RWhhLXA0TnZYb2lLb3ptRHdBZFFpeG1IcnJTdUEwWmh0eE14N0FSc0pqc285blZKR1BOSzhCeTMtbXQycnNOOHlMdHpyRXdkUzBtLW1sRHRKak9CWHJ1NmhWOFBPeV9vSWVzYmJtWkcxSk96Tkl5YmhPOWdNakpsNTBSQXVmcW1sSXJpOEVXQk9vdzdVT1RKQjgtTkR6VzVXdWNiS0VLOGotdWtSYXhhQklPcTJBTnI1Tl9hTEF2RFpmalp1cDl1RGNTc2FUOTNWR0dmQlhHX1BYRlhGWnNtd2NnamxsQWN3bkhCS2V6QWd3SnprRXpFaEdEOFhQMVh0dXJPZHh2YTRyd2ZtVG1yM1pHVWFmY0tTUm5malpnVERSVThVRFd4ZjRwMjB1T1h5RzBBUzlJLUF6WGN0Nm5EOFVQUlB1WDQ3UG1fN05mdWFVTkt4SEZ2RFdOdWYwcVE1OFlvZmhydjJlRDlzUFJFWV9CWjhXWm9IYy0tbVZ5MmM0aDdvTTUzQlFKbTQzRzNkaXotclRwWE0xUDExakc4em5XU3RBQkJxbW40LXdKVVl1UGpDV0VtY29qdGtRZEZmcjQzRUNqTzE1SDJaZGN6MkphZmpUcmxPdWlQOG96ZjEwa2RTYjBURTFVOXI1dHRIU0ZzOUxPVlZHVjJnQUxjUGtMU3R0clgwMXZHMWZLS1ZTRVI2TzlZM0pZYW02X0FwU2xONnlRbmlqM3NJTzdKc2xYdHhaMzY2bXI2Vnl6WmphajVVODlJSjdJUlY3eXBkOWtuZy1RRlZMT0FhRGU1eENvZG1jRjY4ZGp4LTZBVWpQWnBHOFYxVG04OXh5c3BTaU40M0lmLURacTlaMXFjSXNDOUJ4XzlxTHE2S3kwNTIydnBKWkw4NEdCZElXM0FuUUdKbFY2dkRXbThpcF9LMjg2NG8zcEg4UTdFWnpqc05KZ3p6RFU2SkU2Y2psTVdhMDR5dkVMa2dnUm9feVM1MWUzam1BNUFFdWpXLUJ6TXlzTjVkeUpiZC1HcnN4VFltck1wMWI0dFNhMXV1ZHBSdWl2cUFLdV9qbTBvYTA4UHZqRjJyNjRXYXZQZHVxcUs2VGUtMDc1RkFQNHFEZE5ocmpJSHpneWEtUWowY2NCRWtZbUo3di1mUWxneUxzaF80bHJZQmVyWnNCMDM1Z2Z2b19CakQ0Q1VWVWFTRkRya2U2OE41N1prblU0UkZXN1NNQXViaE93WjlCd1pmT0tuajV3bDhfemRFTDVLVDBQUm5IejRjQk01OTZGNXhleDFORzNqME80Y3JDbzVod0xMMUVwMnVweVlULXpfTkdkT1MwMG50bGt0dnNKMGFZSURuQy1SSDRYcUdBUXlpY3hJVzNnTXh3LUNvYlIyUGdPa1dLTVBJN2xFelNLN0VKcjZkZENmblhHRF9scE9HSXgtUTROdjFOU3E4VGw1dkRtdmdOXzZCOEhHbmV5bXdpQUlJZ3NpWWhfUmR0NnBrdWJLVF92aFkwMTI1WWZkck9NaW9keTFLbEpNR3NJNGxqX1dJYVRHQjdoY1dtY0stMy1NNWlZVnJUSktaR2RZbUFobXI3bkZVT28zWFFCZkVVZFpKb2Itc1R6eDdNYWttd2JEcHdQdHB5OXFQem03akI0ZC1yYmlncDI3azRTYlVFOXNFWTZVeVVJVk80Y2l5R3ltZThpOEdLY2dSWXJ3YTZmVlItTnNvcm16dmd5eGZVcDFGWDZuR0xNbE5VMDNEblBVU0JLT1RWTzVnM2JuNG1DNWI3anBVQnUwQTk5R2ZkTEJGaXg4dURwR2NsQm51TFhncjcyRFdCRmFKeldkZXNZbTlaLWk0WDBaUTh4cVZwdGpXTnI5Sm5sVDlLeDVKZXdRSHZkeXRRdHRaTXc3TS01Unc5UHJreklWd1JPZE5PVkxwRWl5RmVqM3YyZmJGRFVoRmg2ME00NWRMQ0hqU0k5eC15dDZ6LUVtQlBpdGtkcWpUT3hLam1qVV9WNzIta09tVndhZkY3MzdTcVRKa0lpWlVic002bEJoQ3Rxd2cwNi1DelR4U1pMYVgzOF95dE51aUY1S0JfcXVwcU54SGJ4TTVZN0l5SnJUcGR4MG9qNFZzWDlxWkFjTGxCZnRNaTFUSTVLMkJRSERSNW5FY2UwT2J1SWpjdlNrcjNYMmZwUWQ1cHlLdnBXcXpNbnNuQ3NsVnYyWUY5ZDZHVWFKeHlfQ2MzRVJqOXZIMnRJb2hBckh6VzJlN1lNUTRyQnducnowOXc0aWNnNG11TDdVSnVsVnJLcjdJS3FDYjJyWFViTDBIRUVrTUd3T0pISEVnVWxlYzRGajRNQl9ZNnh4SFJuekVKMVVBRXVTeDJaZG9Bd1JsSjMwRHZYTWMxcFo0NWktYXE5eV9oOFJxaUZSUlQwSktjYzFpeFA1Y1JWRmVpbFhKWXN0cDV6X1pKZ1FrSTdCQlBaR0M2bkZ5RC11LWh4MzhQN0IzQjdUUzdoWVlXdm9ETFpGSkI0a1ZGRUhvNlRKdWNDVlpJaEFMdHlfN3dreFFxdU1mMFNOREQtV0FPWUJkY3JpZzZmYnNKSVhvc2lMSWNDM3hOOGw2X1dzNk1UMXdXODZkcWRUWkJnN1Z6YUlnREJ2RDRNakRLdjk2M0k2c3ZmeG5FWWNEQ3dDalo5M2JwUGRJd0htZEY1ZE0xTGZVLTExMktBN3dCQTJWYjU2cFdBMWk2QXo3Z1N6RXhQRkZvVkNBdFlJUnBFcHh5SVBaQUVHV05zeDNpNEk2Z2lyZi1hUmFWejFXUURCemd3ZDd3TlpqV2xrRVlyRFBBZTFPVnl0bU9HQWlGZmZiQWVPaVF0V1lzMHYzVGFTOGcydk9peXRvakE4ZzM2dDQwQTB6T3pKYnlzUUM0Z0hjODJuVDdQUDJBTFdPU0RLTmxSX2M0eHFWTkxjdlhxZHFBNmpVRlBUY1FONzk4U1FRbGprcmd1bzhEcGxTZTBnODl1VHUwV0ttcFltSFA0WEtmeXRGRWlBR1FDSmIwZUl6NVZsTlAyVnFiRGRMcW1JSzhuNVlNSUtDY2ItY0FUdGFoRXU4QkxQcVE2VC1aa2t4MF93M2RmZjhVX3ZCZUFwS090SERMWUVqcTBnVktxUHhaUWczY3RJS2oxdXJPeTIybnJ5aTlnZWZVc2QzZUYyMnBCQkx2YWVWSk96QUZndk5YdnRiTXFsUW1CXzQxNG1tVGVtaGFlNktjOW9KRF9sLUxKWDZPU1FISlo4MHQ4Ql9VZkdacFZES1NubmFmMmY4UHYyMy1EUmlGNlNyQ0ZKN0d4TEhUNXJSNzU2MW1YUlV5Qy1leWtocVI1ZFZSZDZhOVQwSGY0TlZSbjJiaVdxeWhPR2VUa0hKazE0YllOUFdYTm5XSHl1VTdyNEZoOVVsb2lES2xIQjQ0VjlmYS1YMzE0c2VHZHRqUFNLdWhFRHBMeV90VU95aWU3aThJaGNIaE1XOHlFNi1Oa0lZSnF4cU5EbjAwdUkzSEhEUWtGYzFQV0RYdlVIcnBJUFRJcFFBQ3c1dkNWT2JpUmFoQVBJM2tFRFh4ZkY1S2VLMXRuS1hsZWRxQmRIc3lCUkZuNnp6T1p1UHdOWktKNHlYVDhoS2wyamQtNTlqdWpibDBmNF9WdVJFdmVQOW9FWWtTOHU3UmlBVEVHa1lPVkg3MkZXTzBzLVNJWGVRRkQzX3VvWjdrM0xjSm9GVjlXMDZrQUVWY1dURVZGRUlwamtNMy1FYnJSUVdMcy1heWVYQkNFSUxsQ2t0di1LblA2N0pyZFV0bTI2cnFlVXZ5MzdTMTBCTE53YjRiNHBvREhMS2FveGFuZy1iRjZUb29PR01UU01MWXUzaUlLc0R3Wm9kZG1WR0xyQ3FxNWJJR1BFZTNoMnc1RjFNZ1hyVEU2TmFubXpKckh5eHVPc0VyaGctaEpGeGVCcWE4WjZZWFduTXIxNDhLanNoYVAyeVpFSWV6OG81UEc3cWRWaHFRenhYT1c3eEQwSTUycjBvbkhxM1hzcV9SOGhFby1UYVdPbmY1NW1YYTNWMk81LV9XanZxZThWdzdwTUF5dG95dmh2NTVTVk9xcVdkNXNIdGhITzd0OWlMdDNFYVMxX0ZnaU8zVmVENmlvUVBNNjZsWmhaYkpZZHo4b1RFeU9SR09KbkpjSVpqVm1YSlJIbXF2eXZsUlpjdkVMM19KR1hEOEZGNHlBVE0zaGhlNDN6VEJVdk9oYlRjckhNQTRLZjhWczR4cU02QWFsczVBZzRUbVZSSnVLLUVRWFZCaFE0TEpBbEgxVXZzN3lKYTdLM2hsQlZEMWo5WXRWS2htMVhPNFJySTNrZmVxYmxoMTRHQ1NEdnI2OExyTk53SUZsY1JEY1pKalBOQi1GWGhUd25PbW50ZVItOFY0UTJVa19tczdTTm9ZUElWRnJqY1R6X1ZkQ3dYRTFmMjNocHpqQ2tnWGlsSUlNNEpNMkZmcDNTZTY2c1JHc1RXXzBBbF81R3Fqd3ZfZFBYWDA0RHJNMFI5dGljTHhLczBnM3hkSXF1M0huamxBRFU3S0c1Yl9NUmxUdWJCQ3pEamtJQWRRUEFwcUhaWktnODYyLWloMDE4bERfbFViWEwyMGhFNFBNbTE0eEg3R0dPQ3FWa1o3RVU4ekd5Yl9xWHV4RF9LZHFLSVR5eUc2WC00MHhOeTJ1cWpDMmlvVVpiM25Tam5kZWFiX19kbC1jMDBLWkU4RnhTRnRMN0RreWxpTWM2Yy1VQXBhUlZKQy1aa2NBaXlPZ2NBOVZQa0x5a2xlcGRNYXY1Y1J2a3FvTHhmS3RMU2FhS0taWEdveFd5OWp2am5KZHZfMmZDTXlUeFdOUWl6MzI5NG9mNkNNY09sTmc5VW5iaUlHb1JVX20tMHQzamNRWHBrZ0pDWlMwcmQyZ3RGVExYdUVlYU9ZTnJjZ2dPWkVQMkstc19kNUlCU2JqNXE1QS1HYU9hbzFuRmdFOEFlMDdEVXVzeTBYeVEzd0cxb3JIOXUtSUxpSHpyd01Ickx5ZWkwYmpYSm9HcVBuSWd5d29nWjdZRmF6a1ZSTGE4OTBZQjlXR2p2SEdqZ19yYmVabWRDWkFoalNiTlRveFN3bGkxMnh0bl93WkNWVkhlNzUtSGNkTHZHaGgyekwwVjlROG84NFI1NUFKVV9fNjI2REMxT2w0cXVLcEt1Z1EwMHowZElPbzMwcG5IT3hqa2xlcGRMM0dyN3dHNXZsSUJKbXVWMlBReC1Hc0JmX3lYbUhxOXBZZ2RJeXl3ZjNqSjlDcmROYXM1RGNseUExUS1Sa3MzdWtyU3dublN1ZE5OeTNCRlJ5ZkgtbHhWQmpYSHQxUUlQM2JLbjRvNmRPSHNLclc5XzRPVnBNREQ0UjNMRmpYNFM3MDJ5ZmdXSkk5Wld6TDFadk40X2t0Zy1iVHNYOC1zdzJfa2Y3dXVldmJmMkYzLThmM3lvNDNUZ2dQaDU2TEZjbFNidGdaNE05MDRTLWF5SGQ2NkhVbmU5T1Axc1NldGdKWXdZZVN6TTgzY2FUUXVqRVA4bFhEQWxKZGJ0MTRhZ2FValJkNlBNLVVIUGdGUmNtRTd5Y0k4YzNSdWxrVkU2Wk5qeUU4VkNnaFRoN2JMNTJNYXhUcVMzQWJKNUpHak9ESkk4ZTczV1BFZHZPZ1FPNnZvak0xNDFnSjFtaW9rTFNIbXNwVWRhSFdIdkNkc2VHeTZyZmJfYktmeGJGS3FNTEN6T3VKbjhxd3hlNUxJQms2djJCUmNzM1I4ZnI1VjBSQXB5U3J3bmRuWExFRHdVRU90YzdwSTBqajVNeGFJaWxKU1FMb00ydXpiWXZaVE1INklXSndEdU1hNW04MlFCRnV3TWFZRDd6WmNwM0RGb2dFc0N5YnFjZFd5SFBhV3NxQk5GSDRuYXdwRnMwQ2xZMWMwbGZQR1RnTWZJeTRxRnV5U012cHNkYWZORUdBdVFpYU5zRzROSnNJV2NYbFNFQ1FsLVhRaHF2YkpUWE03NldPVTVld0RneGRGeG5WREVhdFRlQWZZaUVEN1ZBelFNUXNFenU4VUx4VmI3RWJzX3RsUW5hU2hVX3E3RjNUVEV3VUpPdDNCeFdPcWFCbmhNdUdOdU5CNXJabFd3YVhrUTFNdGxwOEFmWTBXSF9kX2F3VXdQbUpCQXFEX0xKRncybWVBS25OZl85NlZiUW5iU2J1ME5uejlvTnVXVmNMcWZIeDIzX1JfVVE5enZibTlkaGlSaUxSMnVDUzN2d21XS1UzVG9vbks2c1NpeWNmYnh2QjE1TnFnN2l4UUV6M2U2emVkX3pQYy1GdF91ckRrR1dOTFJ1d2Zyb001REQ5XzQ0UFVvLU1SQ2NiVGp1emxqQmVjOXRUc1NRdnZWVnp3WHdNY004Zl8yWEJxcU5OVl91b3V6dVRPWkFfbkNVTDV0T1dFSXZIZmlDRWxJV3lrS0U1TUFUUVlUY3FRd0VwNUlBeDFDOXdudnZtVk5NcmFFNHpDSDJuZllsUGNIYWpMUGlXcHpUdUR4anJGeFhIbVBUc1JTM0Q1YU1yTmM5emwyZkR6ckJsbzV0Y1pPT0ladlR4X0ExeFA3RlFnNjMtbUZzTGlRZG16NzM1bWVjUEFmdkROMnV4dWp3YXFITGx5NGlLelljVVRjbHFhYV92X25VM09ESUxkcWt1S1pCZFZzZGwwX19YeDdkSlFHNG5nN3kxU0d1V2Z1NEdRRnV3azE5b1hJM0ptU0c2WVZHSW5wSUlNYjcwSy1BREliMlZBWjlVaUloMW1HNmpUZWRHWHJtMzF5b3Jnak1PUlRERU1rYnZCeTFaazVrR0E0V05aSmRKRnlSQUtXT3VNbVZOVXRWcTFWRHpkTkpNdGhaWUZHQUU5MEtBZVlaZDdmaFRSZlY3ZlFYdzhWOENmM3IxdmdMTXJyZ2JSOGwzeUsybFBLMnhMcFl0cVpRanFaREpvSjlwUHBlcHEwRF9Dc1JEcVlDVi0zNE5GbldXWklZQmtmZTRPSGFFZTRlXzNQOGxNVTFKUWlJY1dXWmJ1ZUJXSnlpNDQ1b24wRm0zVzdlYTRnUUJCN2c1MzU4MUJBZW9ZQVRUYnFFV0J0LWU4OS1YMDd1Nk1vSDVKUU80OV9kSW0wNU11VVlrV3ZQODFHNDMySDFPYmgxRUJBNG1WdHYtM2ZqeGVDRldiZHVzTWxxa3RYbXVodjBEVWdmWGh4OEoxS2JaMUdjN3cyT1E4S29KZXNGM2QyTzIycjFkdHRIamdmbHBUZlVXOGFaN2hPZ2otSy0wRHg5dXV3ZmNVVWMwUnd6bkNMbVdqd0lnZ2NfQWZJbVRpd1ljZWgzQzlpVnpLdkcyV3BfZHpCMjgzM3YycGI3SlRKbmFYT3VSSlhiM1JQS0pONGcyVXV1NnNYc1JBd2FlTnVtVVVpM1B5b0pCY3dhZFRsbVVrQ2JNcjJMQzBzYmZkbjNMOHk0bTd1UGg3VTJ1RE5EaGk1LTZaWUNYZE5SRVNzajVrR0QxNzJoUHRSVEV6RzhUeEN6Nlp4dE5MQ004a3pHVWtjS2FLeVctZFdaaFVWRENsZVdnQ3F0NWdvNUI1OEVaV2RJbi1SRTRxREZ5RlBDNDg3bk9nMUVyVmZBN0NHWldha1F2QXN5ZUhKb3dkc0RrdzZIV0x0Y2ZwQTJENHEyZ1Z2aDdraHVNMmwxSE5DdWxNOWJSXzZZYlhuTGlCMzIzN3Zjc1d2bHpBVmJCd0J3WHRQT3RGWEEwc0V3c3Qtb2N5V3Z4WFNsT19kdlhRNUdHa2pLcjhFX1hzM0dvZmlqaHpsZF91OWFROGNTek1XbE5xRGNPWncxdncxNUtaeFNXR1QzcDJ4S1VHLWtSZW1Jc1h6VW91TFdma2RCbk41Vk1tUTdJTXA1RkFfcmdHWnFwVHByaHJMSlVaeTNZN3I4bG1McW15Z055a2FMNWkyVEpIT3RWVHB2eHVzck1LMnUtSzdpbUJVMHlkQndFaHNOS1RWMXlGZng4Q2JZazJTeUo2QVlWeWZLM1FhVEdqb2FFMGxocGNPRUIycmpfUDhFWHAydlJ3TWZsYjBtc2daYTFCOE93d1BXRUJMdlROVjVzUEYycFpUaFlnM2xWVzFjSlZlTlBLRTJfYU1zS0p3UGVIY19YTTNrdDBXVkpMbTBnZzE2ek5EMjlsaUlfNTBjOW1VN2NpVG1hNEd5ZzJtSkUzVkg3VWxUanVkRldmNTZpSEZHNlJpU0FqVUFtMmtBTkNGMjFyb3ljVUhFTGo1aVlQZF90S09vcmJvRDlWRGcweDRDc3BQMmRKZWVzMVR6aVMwNU5qU096cnd4dG5qMTBBZ3kyd3B5XzUtbVl6dVJvYTUtNXVPSFhDRkFNSW5QQ2doakFudHVYUGw5REJRb1ZSMWYwUS1NdnJWQU1Qc3pfaXMxc2xZaTlFT3NDUWp1R2hsNGlxYmVNWWRhbFVZZllGYnd5dktaTGNlZndjaVdpY3EycWhpM2FxaWQ5WkVwVGRyR0FvRjItdmd5cWVsSjlRb2NfSG8xRldZdjFrVUR3RTBmQ2ZlV1FteHBFMTQyYmlZNVNnV01CaE9tVTBKWkt1c0hCV3B1ZWJ1TDVlc2RHVEJwRWtpcEpHWmtQSlB0YzBvTlJSVU90TVdZTTYxbXZaXzRTTFpqOW9kZ2U1akMwMHBzSHVYTUExTG5USDZ0R3FnSDlTd1Izd08zOTNTQnRMRU5oNy10UEVEVWc0dHpJeXAxTHQ4R2dWS09DTl8tc2RCbnlpSjJaNmYwSThEMXVPQnJYN0JGb3E2aHlkOWtMWnZiX2E1VHFUdzNKZDJCdHRzOHBWS3hhaXFtTW1WUmZPbU4xYmRJSHhlVUNCQzdXdE1LZUc0M2FNLXpYZDBfUmI4MkxJTVVVRDJadUxXb0MwUGZzUmpiYWNpOVhBOFlBVTE1WllTOVh1YV82NUZYT2xxcl9sT1RuUjd5Y0JZY2J5T2tIeGpIWVFmRGkyQmZRV0NkMElXaF9WcUxNZWozT3ZEUW5FZDZvNEU1N21FQ1lQUEJUSkFIZTNHTjU2UEl6T2xLNTRtVV9USUNpX0JKTkRXemJvdl8wSnVEWExZMmUxZnhCOXNURmc4c1hINUozYUhYY2dpYUdSaHlnMjRKZElJV3dkcXFRbmlLZWNfS1IxVTJhbEVqX2xPQTNNb3FadHk5Zzhnc2RCMjRmQlRLOWJZUnc5eW9OVWhrSl9fM2NxNlozVVFvc3VrWklreDJwVlRoTkU3THdEQ2gxbnVRYlpvUlZrN1NKc1pjWkZ1TTd1SUJRWUNVMGRIQzFRS2lublQxc3R5WDduM3RRLXZPWGRsSENaOEtmSERpR2tsemdKUkhVSFUwdU9JQUNuNGtUbkRzN1ZrRGtEZ2YxalBhYXVYLUR4X19Cdm5oWXIxRFp5eS01N2x3SG85c21rZDFNcGFUVGRLR0cxOVktUDh3MmcyNXJCcVlWQjhBZXRlbXQ1bEtZdE8yckhJNmZSSDZrLVhSM2I3WkVlSFA5MV9UTkc4QVZtV1djMUhaMmdYN0gySzgyUzRoUk1JcEItdkxUaFI2QmV4bTdDeXJHSFZqNHN3M0dtZWd0cG1obmJlNEZQRVo1UTZnNGhScUpmYTJvOUswZDI1aktwaURBTFllRVY3Y1VDUjhBVjRYNU5WR3hWdWppOVdYN0gwaU1mUjZHMmpIVkFZSmloSkxOSC1JSENWcVhxdng0ZWNSRmVxNGRqUjNBWjRITm5kNUJBaGlTSHRObkhlM3EzeG93cFduQVh4M0hHeFZKcUozZ0pVdDVtdGcyb29pYnJiTTVFVU1HT290QlZGT0k5eGd4RmZYT3dhYXNPNWxIbTVoQnFWZVczOHlXS1FqYU50VG16TjlITjFrRWFfS0JacHU0d3RGeGswNkdWTmFEUS1QbmZBV0FJalByQ1FjSjJMQ25kS2FBSHJyYTQ3WTI0dWJYd1hPNUZsSVh6NElaZzI3Z3NzTXpVR3kwdUtGc29LdnJrZkFLdjVWblR1WlJ6aklrZzNoZExLR2FMb3RPVmFwZkp5VnNidGh6T0JrSERUMDllcVlOYkFwbWdYWGdoVTZSb05nV3IwOURSMmZQV1FyaUVzbm9Gc21yZWc1MUUtc2JUWjJCb3FqVW1zRnlndjJZdVhpdTVXdFFUNGtKQ1NxczZZVEw0cGhoQy1sTEhubWs3Q0ZKVnNMUHpUM2ZUcVF5M2V6Sno5dUxyUWJKRXVVMGgyWHQtNGwzaENtNU1hQlVVUGU1SU0tWHZhVk5QM3FQUGN6NjEzZkt1WmwzV3NmZVVtYzl4OWhrbElxRlI4RE1aOFdpYnhJSG5CXy1vTnpvcGV3SXZkOU1RV18wQ0hJRlNWWV9lMDNfNlN4SDBiLU5DX1Y3MXZHNXpNTXpqUkc2WXB1d3hMVUQzQnV6cHNWSVR5ZTd4M1RSWFBxNE42aXF4cFlTeWpyMUUwVnk2UXhzWGc1Q0NsZEozN0p0R082b3pTY1gtdDNKOFJBbVk5Zk41WTRURUZCZkxFT3VtdkQ0WXdjd0xuVktKMnVYN3A5MWZjTTUzVVRhTVc4UTZSZ2JFaTlnZjg5SXl1OFc0WTBIQ0REbDE2dVhCSXdZR3IxX1lyRy1zOUU1dU9FbjVpVm9oY1JsX0RrZlNNenBsSUhPWkJzLVM2X0tud2lZMXZYeThhTWlqb2tFaTVOZnBMbUdZdklwdk1MUFViUzBrQXhGTWo3dktnRXR0S09pU2wxVTJleFF5d0tsYnJtUGxFamZ3YnFjRVZkbmZvTFhIYXpfNlhYTE1Qb1FobWhKUWtvVFN6UDFIb2J4UWY4Uk53VmpaeGF0enpxMGtpMjVmUXlTNTlET0wtVGtiWlFqOTByUnpCQ0hVaTZlNWFmNUN2b3p1T2NIdEJmRnJHVkw4R0JQMk1JWi1UTGsxZXcteFpBbE10UVRITEVuUE1US1Q3X0VwY2dJalNDQTVsZHFXQndZVWxJaXZWd3NzNXRlWEswQkNvWjY3OWxyTVdTOEIwUmRwbjM1djlPU1JOejh3TUFTNER4UVV3OXhOTzBrSjdCWHdUM1dOem90dVFFVDFIeWpEcDV0UHY2MVZuVlVDc3pRME1TaTcwakU2OGtnVm9TM0sxaHFxNUhyZlJoYTVEM2MzZDFBWnJzaUVsMXpMNU5OamktNnBpZENKVmxZeFNBa0gyc2VlZ3lGeUVVV2p3ejZRZzBzeWYtUGtCWVFaRGtKOGJsUWFyUjRMdVJGVmViUTZ0bnQtVThmS0M1d3kydzFXMUhiWUZOWHRzUnVkcm03WWVtUDI2eVVNRzNPUEktLS1zV3VEUW1VblIzemNaVGZkcVBkc3ZyRmtES1JESWZfN3hsbDBLVGtIbHEyRjJOTTBiYjlDb281SG5RdERpX1pJZmIxa3pZd1BHTDZMV1hsazdhcENaQ3daWVBLNWNmbHkyWU84QzRuX2w4eDJkLXdkclBMWGNMRi1xZnRtX2RzZmNrNjBrNUtGenozZEJKV0otY2l1ZWM0S010Sm1JMklxUm50MVpJRnNTOGhEcTF3b0ItLXVTX3ZfZ3lMMVRxRklNWE80b1dUZktOV0l6d1NOUVM3UGdCYXdIMHVIemZDeFJ1bmh5enRMTEdMZEtBamZxc3d6R2dDMnV0THcyOVJoZWtLWVNyaElGWFVoNFFjZF9GOUxfNXZyc3pSaXpKekRUMGVkWlhSVkZNdTFsV29zQUs2YV8wUGVZbFI5cC1XMS03eWo3dGJveGZGdzMyd3o2VlNWamJrMHlIUnpRYmtwNkp6QlIwcm1QU3VlU1QtcHNCSWVwSGI3S0dHQjA0ZmJvLXk2N3VSRkxKTHZlcTJua1o3dDFIRGozQ2taVGduUmJ0S0xYRVNkb3RFY0toQ1ZXaXNrTDZabURLVWJJTkF1MXpLMlJhZkJhNzVDNlVPX2llVnAweTBJX1JnT3hEd1Z4QzVReS0zdVZkc2trcFo5VGduUGhXQWlURF9tQlBmeWhQN2NCbFZvUUhoY1lKYWVjQ21jQmtVcTd3cmx1emdEWEduUkFveUp6MXlwZWNjWC1IUnlqOEFFYXhxSkVUeGpWTFpNODBNS0xtRjNXZWt1dVMxSDIxLTFYUFcyaDBfSkE1OTg1cm9uWnBCSUtoaXptUU44YVNndjBIbFlmVi03cTl1Vi0wLXFrNXVQWnljQkRDYnpUZnlGaEdzWGdKU0tPSm5PYkU0QWktMW14NHpJY3FSRmNiWkt1cF80clc5Z2lFX1pfYjBpTWlMTGlBUHJ5dGo5T241ckx1MnJhY2UxUHFvb2VrZzFuWWxCRllTdzA0eHBWSjNGNURCOTBDMHh0SzAyMEtEakpRU1VCZW52dUpsZ3V4WVMwWnQ1N3dKcnVXdmFpYUlIalFBTmRjMU1lSVJEZjF1Z2EwZ1NwVjZPbEltMlY2aTVDMllfcmY1eHJITmVlWjdwU3A1X3c1UTk5YlU4RkdEMHZNbXE5azc1eTdsR3NTMVlwc2stY2RZd0pSek5oa3RPeW5GOFZBNlcxSjkzVmZsa2Q0NTFnMGRJM3dGd05kY0FqWG8xdUMzWF9zdU1JOUl2ZU9jcWFqWlVNcEFCMTZzbU9waHVpQXlBcjNTbTltMTJMMVBvbzVVVDE4V1lEbFl6eXhNYkRmWmRUX0I2R2lNUnpFYVlHSENyQjJoaUhsYXlDdlpCNW9lbkVTUG1rS1c0dFNmOXhRc0R4U2U1ZnR0UGh4enJ4UWxieEM1V2dINlBibzdYdFcxdUpMUEVzVnlwdGRjS2lPSHczQ0d4dXA1NnVNdjhlRW50SGRHdVFERmVfalk5TUJYZXNsdnMtQTdBVzg0VUFvWE0xd0RYUFo0SVZjdmozSWRpbTh1WUVDU0dXMHlPcUo2MEVBYk9nM2ZERW1wbEpNVTBuc2kzREZmbWlqNkVRZ25hdk4yVUN0Z1lKVUUtUVoxU3lHTEY3OVlIRXhFVFRUZ0RheHNIYnZCX2NibWFwNC0zaGhPS041OXlQUmN1ZldZTGtrMUhpODg2c3V6VWJZa2MxTkZRWlBGekdYV28yUUFvUXlCQm5DS01YT2QyZzBPS2RaSFBYRUtVR05FM3A2blo1WVFCMUx4dXJhTVJCSUNqV2lHN1E2cC1XdXRpNHFvNnRvUjgyQlFFZUtqSC1KV2t4a0NoZ2tFaXpUSjFGcjlHRFZ0c3duOUdFcTBKZjJ0aFhKWXZUTkdTY2tTVFEwUzFIa0NlcVNLOXAyN0p3NHl4RTlocmFVdHYzaXl4MEhFZmNnTlNLVTk0WmpFa0R5UFozUXNLUUlCa0xweHJReGRsZ1hSV2ptMEpJSWQ3WmRiT3I0YUZPN2ozZlM2a3EwQk5SVzFBVnhRWXpkLThFWkV3b2w0MFNyNmFfaG5tUUo4WWZvYlFoTDBhZFBfWUNaT3dBc0g3alc4U0lKbGV1b0hLX2hPc2Fha1hkTnJPaFNoQ2VVYjNpNUQxRmxkak12SWFEajJFN1dfUDJodmVna25PNkFhOFJlZ1JRN1dvQkVpdGU4OEszeVdPOWJkdmZ1NjFJaTBIRU1RUm5LQVBILU83RVpMVWdzTmd1ak5YRW1jRmdmRmhmU1Zudko4Vjd1UnNmbE9NcEZkTmZzNU1KUDdEcEF6R3Q0aGRQaG14ZlBseDdqTXh4cnpOQ19GS0tvRDBwcWdJdWtTVnlMZzdrbXkwOE9paTk1QUNMREZsTnlQZjNtaUVUMHRfaHBmWFZrckhCZDB1Qk5Banltb2J6WmF5bW05SFhLTTFVSUFJN21WQWdUZnVUYmQ3eEY5TjlDNUJTZXVyVDJtYnNaY0JtWFNfa3hZTWtSWjFkSkdjN3FwVFBSZUxOVm10UURBVzZWdTZUWlpHNDREMHdRNllKalItNlFiVnNSR2NReGtxR09KQ2MyYm44SEdvMnZCSG50TTdEZVM0RXdLUXh0bVduVXdITTNVT0ZHaWVOVmRvZDhzcllzaE9sM2tvZlN1YUxIUkZiRGdVQlZoaHBFV3dUejF1VlhOd2VVN003N0R1dGJZYTFiRXRJY0hneXJjQUJTVW41dlh4cEhhbVY1RTJHczhEeDhYTmlBaWdYREJfbmhFZEdWWkVqSmd1TDg5VXltR0c0X3Z0cVMtN3hGYmtJaFpPMXBEVHZTMm1KM04zNUduNGI2S1FWcUEyWEY5amJwRFF0VFY0bEgwZWhiLUFyeGtGMkJjbnA0RUdNZWs0eDRXN1RfNEdtNzlFb3V0TjJzSW9iSFhXYi14bURJbUVId3ZHZkFsYkc5ZFFLZ1pDT3Rrb3EzUHJvY0hEMVFUTElpNEpQYU0zc1VFNngwcy00NXR5cEFHQ3N2MDhralVkUW5GbUVTYUhTYzJjSE5CUEFFX2ZzMGU2bm1fakRLektON095RkV5Ymd1bHZ5RTRsb2ZxWkxfcnNxWFlPN3lvT2oxX2FLVHhGa2ptallGNWhiS2FjcDhCNWstRUZUWVZYMzMzWG9OelJreDRnOFNWZW0xVUNibE1QOTJxb3BLUklPaWNJQWpmN2dkS2hhQmZTaE04UUt6bDJBVjBVU3lwMkdrUFRja0NrWEtXUXhhbl9RLWhtZ2l0V2w5ZVpOR3BpUjVSUGxqR3VRaVRYNlJENGZKcUdEQWNMSnEwYjZYZGhva24zMHd0Tmktc2J0RUN6NC1HV1ZOZVVBYThETl9haFNaMXAwT1MwMkRkbGVKOG1ZcW5vYThEbF90ZGZEV0xiNDg4WVplU3JwUmV2WlBJWm5OQ1lQUngxTDdxMVVGcWhfajVrQ1N3Q0VWTEpDUFdzaXlKSzluXzU5c3lUaW9DemxyM2tuTVZ2bDBZSnFYdXF2eW95TUZrcDdGdVdBbWtfYUR4eURaYm1mRGNLNVFnM0c2YlVwVXhPQVJyamgteWtreVpfcmxsa1hLUjVrTnJJMFFKYkw5UHBiWFNtMzZVSTFNajB4alVael9IYmx1Z3J3c2lzRUtGcGw0T0k2bUY1cUNLZVAwWmFmaW1nblhxS0d0RW9wNU9kTHNGRXNoa3BSSWh4Wk02eTVta0RZM0FrX0c5N0FuLUxzaVVWdG5IN2NYNUJPbHZIMVktREFGdzhkQTBpOFhPbkJoWnZ4aFZqdXctbWtHWjBITURVS0RMWk5uUVR1RXNnVEpDT1RQOVc5R0xtaGNfMGRSS1UwQTQ0RFVRU0l4SmxEYzNYWmdYOV9XdWxMY08tdjJib3pvLUhLcTB3blN0dmlPSU9YQ21BRW9PWDFodWROaUJmdktBc2NYTnE1bGc1YmtaN3dDR0xSQWoxUjRSelhDMnVsaUkyZ3lpMTFHZU1VanpoU0h5Ylk4NG5vWGpDODNJcGFTX1FTYl9WUFEyeWhMWExVdnp4SHJ4YldpajQ1a1VEMWJEZUkxOHhhQmd4UzJ6VlRVMF9FcW1WaU9wbjRnTWczd2oxMW5tV0JYOHVHUHlkUENhV2dtbFJTVXNxVXVGQ0dYZ3RNUFN2R09XRkl0LV82YzFWdVlzMGJDNzl3QnhwYy1MdENkRXIweVM4NWZKQTE3aktoclFINUJLQXNneUhKbzFVU21FZGMtTDRweWpkMS1obnZUYzZxRHBXQmhSREhieV9DeXBfc28ycERfYk12eFZ1YnBDX3FIT0dlaVRLSkpTcHdmMC1OdFRLSnAyUzloUXNQYnhIeUFlQy11ZThIMXA0WlcwWVVyWGpJRDVoS2pKRzQ4b1E2THBsaEJTWlNCa0xpczRqNm5nV2ozN0dLZEFNN01jNlpKVFZRdEw4RXZjWWNTSUlEN0liMHAzXzBIQzRKX21NTEtjRlZWWVp4TjlvSkVPZWJLUFVzbndwelVUX05KbjQ4VVZrMGwzeGtDaFlEVDVmMENoNl9MSmhSSzY3ckI0dXk2WTY3N2ZKN3RjRGFfWWsxZlotcmVpSlBRNHhMTnNOZ05hU0FoQ2tqZE5Nb241bmlPUFNhQUtVcWdDbkhsZzN5bDhPOXFhcVk1aXk0TzFlS1hHcmY1THkxV0lNX1luNmcyeFg4aF9TZ3hlcTdRN2ZOYlhIT0Ztd1Ywdk04aXhhRmJZYnF0N2hHT1pjWnVQaFVOaVdDSF8xb0MyUHlIUE1IcEtWcWdaOUNYYkdQNmFhY3J0UmpRMkxZdUZNSnNWRVhlN1gxNm1xMDZpd0dLUWxsUlZxXzZoZGtqUUs2SVpDVTNzMXV3cFlGeHdaTW1CQVVCaG1lb2kzUVItQlhrYnc0RU9nYXllQTJkSUV6a2g3cXFOYmNXNlNBdnp2eXd4cUlQT1FTSWYtMVlSRnZfSDBpYXN2MmQ0R0kxNHpDWXUtXzMwT0hqYzYyX0VMLWg4V29pa2Z3cTNXZWZNMTduN2hGSmZzMFNWNTVHY2U3UTdDQkxxNEVkSTlXc0t1MDlxeWhNWHJwUlZPWTBrZzdsNjYxa281c0VsN1RxYzgxNWl6OU1wS3RZU1RlV1lsd3pnb011clJDNktNYmZEV2poUmlldGo0Z0RkSW9GaUQ0dHJGNjZvU2k0WTE2WkNxYkVPMWVKNGNseWZZWk8zbzBwSk1NQ0gybUlwTVZPMkRueGJSSURIOUxiSEU2VE1qQjYtZkw1a3d3WUVoSHI3UnNaMnFFYUdWMDdXcFkwMUdoTWpEZXE5dGI3Qm0xXzFvcWtsdVcwMjZRUng5Vzcxa0RwU0xPNkxia1RWS2xuMlB4VmdZa3F5V0pHNlZUbU81T21fRWxlblhQMmx0bV9VVXN4MXgwdkxWczR1ejlHV1VYTGZKbVlzZnViQXBwVF85anZyRDlkV2xWc3NKdUMwRlVVNWxOUVUyOEJWSXpycV9ublJVRUJjc3BLR2d1RmN0Mjk0V2xFVjZzNFdTSU5vNG8zaVM1RWtfX1FsZEp3c3JKT3ZQS2M0S05OM1F2cFJDa3hPQ2VwZGpZZEMtbVdfMGxNdWVoVzVmcGUzRnhFMGhjeHFrZmkyUXA1Mk5VYkVZVWpPV2JRZ3UySVVmX3ZBMWpIRW9UTzRQNS1vYTBrRHZaUmxPQldRbTMyS0g0RkhwYWpiNndLTWVIOU1VZ2ZlS0dBNWVJRDRxaWwxWURONkRMa1BKT3FkeU91UGdqMTQ2WWJkZEtQdmFDOF9YS2w5Nm5BV1lfMVo3ZTNKYW9NNzhZR2pMaEV3alFpdHlSOElLRTV1ZmFDZHdYMWNPMG5FQlRnYTZPNzFrSEJkMEpGLTQ5X2FPX2RoWWo0WmVLWVNxOVhkQ1NHNGQzSFNxVGVsT2ozX0tzUGp5dk5ScmkzY0loVmJVWHkwcVoyN1NqdlRRcHFEaW5yMDBra1Q2OC13SXMxcXJhazQtcjZoQUFUeTM4S2FrUFJWYy1WMUQxUVppR3hFYUdrbUg5bF9YT2hFOEtHREIzZFgxNVNOREptRi1PR1dKSlJZNWhqZmpFWVNEVUhmb1NHTElNei01Wk5hVUs5cm42cFBMcWZfcTc1dkZ1TWRISzZhcTl3eWUtQTdLTjZyS0xqMlNfclV3RHk4dnBlbFBBTktNTG5Td09mV2U2eXdFRmFJTDRVLS01Z0NvczJBbGd0OWE4QmRKOVpsUDBUSzZEb0RVY0JTbE9VTWNJNGZXb0lDYkhwc3FnS1d3MUJXc0xGTFU1UnNSZVF0ZHhmSFNZdWs4azFWUlNhQnZnSEh5Uk9NemJXYzhSWmJCVjlQc1doaEpMeVpMM3RldzJ0RkhaM2h2U1A2SUVidWpxSE0tYnRWSXFqb3BEOHFDMG90YkNERnNqdXV0bFdVekgxTXhNVFFGdk1KY1Rfa0swM3NOSVBNTnc1MVlrQm1fV0hiQTNZY1V6d3BPd1JNNnQ4YWFVV2diRUkyNm93Szlhd3BUTzJmVHVncjdzNTJoWTFBNVRpMXRobDM4TU84UGNfeTFyYWJBeEVsMGloTUw3VlRFWmxhUml2VW5JS09ORDdXSXE0U2RHbjZzbXJLWW1LUGRFNy1vZzJfMXVhWkJyblRScHNrd1FiZUVlM09tT0lRUjltb3ZmNkRCdlZlVGtieG4zTHgyM2hwUVRRYlpFSTRORFFHMnlzTXcwSnQ4OHl2dEo3NkpwSEFYbWhkZUpBNWI0QTBYb2JvSW80a1JGTjNlUWlCQlB1eTVsZU1qeEZnVVE0N3Y2M0pyNmtibXpfSEVTZHowOGhNeUozakN4Q3ViNWdJVGhtbVdkQ1lIUjZRYjRtWlowMjhIT0ZCNTl6MkY4QVVENXNwU2wyZmhKZHBtUl9aZ1BsaVBuUm9YNGVPU25Dc2ZLTW95X1YwNk1KRTl3VGZPSXU1ME40cEhoTE9qQXNUX3NCSHBfYWJMb0x1ekpJZXdtV29SRThVR2xWVENOX2hJQk1pdWI1V01lbDgwa09nbHJTNXRMZnNCdW1qTTZXUEladUpjRG1jWlozdXpEeFBkRWdHbFZydXE0ZmpfMFBoUF9uNS1FcEVtYTkzZDFaLURCTXU3Wk54QWYwS1ZBOXVJOXZ1WFNQRDJOVmRpMG5QRFFjbFRCRWhKYW8wM01uc1VGbkxBNVZqQlJnQVV2Y05Cd3ZlYzRfOE9WMDJLRVRxZ0hMZ2tzbkIxdU1jZ0cxYnVQWHF5cmJJelN3WGJiTFViOTFWSkZERl9ZNGFTWGhWR0kyUzFpdGdZOVlsYzl3aFlJYU9pQy1KcTNiRUZiVnZiZnJnemMwOUtiYl9ya214ZjFpWDVRczh0blYybHpSaVB1eExibGx6dmlEYkM4ZkpMRE44VHo4NExMa0lMZHNmdjBHaWtkRThSelU5cFNnMVU5ZURUT0RnVktDRmtzaXdJbEJ5MDRqd0d5NnNwb1BudUxweG53OWhKQnpUc0M5dVRUTmlZeUk0SmxpdWs4Z3ZpR0JTT2lMeGNiRVlXTGFpN2NNQUYtcnI4VTYya2hDYlZZVU1mVGhnQjg5aklmNlZSa3pVSGs0QXVSR1k1QnpraWxBcDhHeHg2M1RacnVXR3ZMa1FKek5wNS1PVGN3V3hEN2N1VlFULU5icVNZRmZYMnZVcEt2Unp0WjNxeTJOMTRIYmdIeUZMYnl6SVVoTXdiNkY2M3dwcnlIN0hfMHp3OGRfb0N3bWVCMVBTQVBUcFhiYjhRZjluQlRXbjFCWlBMbUNVc1ZCaUFYQV8zUWp2SWkwUXlrN3gtb3BGc1E3OFdJUVpadkhsb0NRNWI4UGd0bVdaNUFwVDhPc1dXQU1sYkFzdXRLdXZjTFkzbW9DeFZIOGxzclZxOHVXSjhlQzgxUV9uOG5YNGFqcnZiNm51M2ZXTXRDNmxFeWwzSW1JSHRHd3lvVVZOVW4xZWlBQVpnYzdiQUlnNlBoV1pxS25DMkFyU19lbEVheVFUd0ZTWWxrM2Zjdlo4Z3RMOHB5THY0YkpEalI5NUprM1g4NGJEek5uSndfY2o2Y2Fqb0F3WW9nc3RRZFRnd0pqTU1WaU1Fa2hraVE2SVRUU3lDNUJmOTBCa2VXbWZwM2N3Y3c2cThwMG5NZEdnMjNDc0p4VHNla18zbFotRS1KcHZESHJnVUV4d3g1Z3lCVy1STjdrX2xnaGd3OUw3QUNTbHdGb2pHVzlZSzA4T0J3Tjg4ZEQwLVlmMkZSRmFnaFVQY0RfWXhmaC1qNDkyaGY1SnE1WWtyOGJMZENiZjdBTGgyeUp6UTRoUGREMDdnNW1uNThnT3ZMUWo4Z2tvTTBfMHVGOHBRaHpqenRjVlRaM2NBNkZobEI2a0Zkdk9OQXZVLXI5YkpFb2NOaW5fRTJmb1B4VUxqOVdEdGxaX3N2bWtEVzBjR05fRWRlR1dKLXhLcTdWNDRzck5vd0lCOEprZHE4dUhZXzFadVg3bWV6MHNYc0lNSEFFSWhkSnBJelpYQzVjYW9lTDRfalVxelB3dzJzMG1IU29CSlpQNjNWODhFQVpMVkdtaklwaC1PTkhQeU9QemFlQ21xajFlTVFaODdJSGNhYm1yUGNaWDFITTVvRi1meTZ5RFVzdUJyRkx1dmRyX0VJQ21TM0sxWEZmWVhsMkZCU1ZsRGNpUDJ0YVF1RzR0dHhjaWhoRWpERDVDcEZ4S2dha0lRSWc3VVFBTy1rUTN3THZHdW5CcG4wVy04eGpWRFBoU28zUUNOc29sNF9zWnFqVTBoeEVNTVo3YkVxTzNSVDNTVW1OM3RjdG9LWTBySzBxZmR1bk5iSXNjdG5TcUVPYzg3dWd4VTBXNHlQYjBNOEoyQUwySkV0bXlRZmN5RTBDalkzVjVZMjNlN19UVV83bEk5alBTbnhvVi0wdUhCRjZ0Z2xYN3p1akdJSG82MU5CMHo2MHpXZ01hYklqd0Rha3dPYXV2Uy1yX2RqbEZpeUUyZlJvQnNPNDN5WlI1OGJqcHhpRHJxOWdnMEtJcktBQ0gtWjliTUdxeFBIbHVrb1FGeHAtMWszQjdndE5GdGh4dEJqMng5Q1FBVUJwMFNZYXRhUmgwVlBPRGptMWhLd2FUTnUyNDlxZW0tbERiNTRhNFplaGZqVExkS1RoalFiMktwY2FCbVg4ekpQbnRhVlA2MXdDeVRGVDBSN2RIVHloZUhfS0NYbHA0WDN0ekdoRTg5VDVVWjVxVEZJWmNDR2I4YzM1c0pjYnh5bWZ0aUJJd05sUFRlbkNid3dfQXlOUWhreG95Wk1iai1lQ3NBN1M4V3FaUEp6ZVozWE5iV0ZJeS13S3hFMnVyTTJKRXd4eExXRllwOFQ1cFBQQVF1NG1NT0k3SDlfNzRTcWpMRFpCU1Myd3dUdU1YZW1aSDJuWVI0WmdCUF94UkZENzYyM204ZzRuLUdNNGhibVZPMW1LTllJbDlHdzljbkpQOHpSSWlNbUppWEdXTjktbjRPVHFRWExFVnlKbnlUQ0RCMzFTSFctTThyeUJMemEtOUxOdFZhUzVTWkM1UG1vem9EMFZyY2hFVEZmelhwREJfZGYwNk1aYS1icEpBQklTVWJidi1hM0Zobm9JUU0yRW1uT1N2Rkw1ZFdDRlZMcXAwREJOZEVOS0FiQmJaNGdaaGNEREVoSVQwQzh4dWJ5MjN1MW55ZlowRld0WXFoTTh1TS0xVzVOTlNLZGkwVFVhQ2d5OHhBdEh5Wk9YeWgzVFRMVTh2ME1rbjFRRjh5ODRsOVJlejE5VTR5Z2JqX01CVUJreGYtNnhpSFRVQkNpQmN1UnoxM1pSTkVMNUFzTUZLalQ3Y25zRDJxNS1fdDk4dEZ3SmNQejBTLVctbzFtVnBRSkFjZWZ1ZXBRcUdvVzdLNWIzMWFCVHUwWVc3MTZCeW1pSVEwTU5VdC1Cbnc0VTZtdG9wWWJVRjExVXhSSHl2R050dVVUMlp1MDFJSWlKTVRvYmxoZXlYQkFraEVUaDJTXy1Cckc4cG5oZWFZaE94a2wwZE1nZy1ISlJ6V0RXSHJTZ2tUN2plaThNNnhOY0Nwc19veC1kNkdsX1FwYnRkRGZWaGQ3clRaTzhCNTFQSVN3Yk9aYUhkZHotRlhUZmd1c3p6S0RwZmtSWjN0T010VFJ0U1ZWR2t3eG8wRWdfQW9iRVJSNnBBblRfN1hZQmpFWl9BSVVwQkhmYldjZENyUkN5YnR4b2VUU0RvS0twblJkV0E3cnpiLUtDQmVzNG9mdWhicnNldEdWXy1rT0dLc2FuT0lPbkNPQWdHc2VFb19NTnBvZVpjWmd5QlRlaHFmNXlCQ3FZN2FmM2E2Q0F0V2hfSE1IVzl4cGk1TVlZVk9sRVBWWHZHTFp4bi1xS2hzUDVwM0g4a0VHam10d21CWGFuQVhkNE1HemZtWnA2UkZ2d0VIaFJHNFJQQkZYSkZld3laMW1oSzZZVDZXYnpuUGloTC1PTjJPVnJEc25CSWdEUGVtclpnaVJIVWdnMkk0MXNnX1RMWTQ2N2NYUm1JZUc4NWpUTmRieEhkRkt5UWhNS045UUVBYXhDTGJsaF9FZFF1LWJtcnFfNVZoRmIwSDlocF93S0M2bFlOM3BFR3ZsajN5QzNIYU1LTW8xSVlBTkROcmhGM096U2VHUS1SWmZHeFQtZTNwdmRzc2ROTHE5XzNrdWdGZnB5ck1GY01iMkl5MFk1ajN2bF9vNTFvLVdiYUN1Wl9KZEZfb19JZV9zZ1ZnTUhoTVA0elIzRlBEVjVjVUR0bEtWWldSa25XMTRaZ1hnbFNRRG5kSG5lbmpqR1N0WkZnelh6c0FqX2xibm5BXzZnS2ktZHQ5SXk4aW92cFN1SzhTMmMxRFdqU2xIQ1FMS2tCdWR0REI4RFRaYjZneHJCZ0piNEpFUWp1LV9mUXlPR1NOellNZ01ISHFiVTVVbmpxOFVlQkFlclNnQnEzTWRza0xRNjlRVS04clRZbGszVEVLeFQzS3hhTUx6MmxWTkZSMzRkUDl5Zm9HMnZvOW9PS1VEb3VUaXRwNkdhV29Vdm5jWkdDME52bktJaUIzc1NiQ3pOWFdWbFpDWDhWdFhRQnB4NV9USDNhYi14bUJOUnVQMUZ4dlExNERsanZHQVBOM19DcHhxaHAwTmxzbk9xNzlqYmV0TmtqVHVrUTFZLVVhS1lUVFZOaTlQV21CbWJJTGx6X1FfQ21lSml1M1BwVVUyM28yNHlkR0JFTzZNZFg3aldMdHp5c1hxSVJyV1JUS0g1dG1rT3VwNlQzck03UGotb0NNMURacGZHdFUycU9aVW5hZF9TNGR2V3RBT0EzMVVsLU1DQjlLLUpHZEhyU1NKS0xoODNqM2d1ZDdoTUswVFJmYzVXLWdaZzdiT2xUc2EwcTB5anVKTzAxYmZQdjdQTjN2cTRkT1RabWluNnBJMzJSbzBTQU5NZzlBRkdvR1g3TElaR0Y5bVRMZkZGbkJTUlctaW5taW0yRW1NR1piQV9hNUdvTWxOamhmV2JvLW5aNHZubkI0M1NjZlNwZnI2LWRvRzd2VUZzMHlPUURuM0VvZF9ZcHBwUUwtLWtKR3VlYndlTVk4ZmdtVy14NktjRENjSEl6NU04MzhROC1KTEpPNzVLS0ZqREZGa3JtTGZfTGF5ZTJuekpKVGxhN0NnMUMyWS1kMFJGZnd3ODRHb1JjaGpVS0RPQnlFUDVlNzRpcnVSc2hjQjl4QVUweFpyZlIydmdQM2gwbG9UYjJ5UG9wekVwaXV3N01XZDA0eGhsMWhJUm1haXloRFMxc3R3WFh3aDN5SlNuWE5NMngwdnY5bGpQTmRDTzBiQ1lyZVQ1SXY3eFp0WEl1VW5jaWI3eldUQWZNZHM2cXF6Unp6Wkx5YXFTT0JrQkxJLW82R05SMm9PX3F6dTZteG5tMlJGOUlMcEdxYnRnZHhYTTdScVNkNVBEa1RfVjhrVzdOOXlfTUJuc2RpV05uelo3WndPNldrUlNvbkJPc0licVFVS3NXR1dUZ1E4ajE4dy1hd3hnWVJNQlhrY3lEakt5S0piMjZrWjhnRXNlcVQtM3RPTHdFeGM5cjh1MEtLT1M5YlROZDF3YTRFTWZHMEhFeE1SdmdqQ2N5QTlLa1pnU3Y3eTlNRm1BS2k1M3FXNnVvRHRfX1Bwa0lFLVpqUGhLLTdSa3Y1TmJUQnI1bmctTlR6ekFHc2s2enVPdnBpU05JSWxBRXNlUUJERWNES0c0M1Fsa0N0X3g0VmJ2QW9kQk9lTVJpZWNMeTVtLXo2SVZyME9xX0Jnek16ZW85Wl9xZFhWdFZobTU5ZkhDek1rcEM5WEN2dTVXaVU5UzhsV3Y0VmM1STZXa294QW9vZ081QXJFVVV4T3JsMzlma0ZpR2FvUmNBbWM0dG81anhUUjhuWVJXQ2tFdUQ1dEoxcFFUNkhpaW9XMk1OTXR0OExMTTFpeUMwejI4bWFlcmdBZUxGQ3pTODZ6QnJybXVTWFJEQlhhaW9DWGM3VkoxSEtmSUFYcDY2ZEZ3RjhRUkdUOE9LMm55dlZIMzlvRWhSX2M2T1NiRzJvYkxTOXdWM2RFSUFiY0RhR3hjVUpCU1JXeTdUR0ZhcWdhemlwRVRnejF0NThlNUZhS1AyUnoxMHV3LVRHSWN3VVJtRXhlSzVnbDZJWWdMVThKYmVNdWtpbTM4dVFXaklVQXEwOWhva3RsRFNueG8zRFg2STJjdFYtRk9xYk9rX1dLRURHRG9aRG9neG84UFNELUJWeGJrQldRZEwtTUNENUpzblBGRjZhLV9BdFBaWktKYnZoM0t5bWQwNXVfbk9qTURUdXFKU0xuNUV4MjFPbXAzQW9WZlpNYVlTV1hzaXpOWU10cEVReEMwbWp4aDFFLTNmRm5uOE9GdzVnTXFXNXN5d0ZHRklYcUF5MFlmc0Fsb0ZBTkstRVZvVmpCbjY0b0Q5X1NsNVBwZmxFZVlaSFFRS09IRmxWazVwdUhlZHdpckNfZGhkdGp2TnV2ZlNSb1BLU0VJWGxnV2owRHRrRkFiaXJkd1FNTFBUc21CT2pOYnhSWFkzVG9Qd0RSZGo3eC03VVJxY2Ftbjh2VW9UT1MxYWE4WVRMNm5FNVhsVHpuOW01MEh6ek1Rb2tnemcxQlFLSjRsMFJkbWw1a1RiX2tTRm5XY0hobHp5UGt3RUxvZnZfYnlBN0lSXzV0d21LLUZGcUVsYnE5WW1IaXNrR1BWMlpHTDFmTDFGaU1RSmtxLXNzeFlTNjZJRVZ3b1pCaGw4dUZJbnVidXhFeGJaSEpTX2xQY0pLTnQzcExWazJJSzJpc2duVFgwTnlJRWNzMG9pdDlfQVRERUJ5OHZwWTYyTjIxYk9la1lJM1o1Q0pleFFpVTc5VU1wektndTJvTGlaWnBaeXJ4TnVMa3BWSzJpT2toanNaN3gzNDhRdjBSUjdRN3p1aWM4b2hnbWYySUs5cjltOW93MTg4MlpRNFlETTdlOGlxc0t3dkZkOWZuOERlcWl2cmROQUhRcjFlQTZnN3BVSkpZZTNiUDJKLWpGSnN1azQwWXBFUXZVdGFaZjF0cUpPQlMtWlhvOE00aGEwUE5KTWx0bFhmZGJub2x6aHRnYVF5blR3WHJBRTBSZmtnWjlMaHFtenI3ay16TWEyM0t3UHdncDJmUGgzSmV0Z202Nkp4eHBnVjQ2dVl3UTVwSUFibll3MDFOTUxFTXlQaUNySlFFRWtwaXo4WG9hOGtJMkdRdkh3b1pTYlMtNzFZcHMzQ2oyLVZkRTBNaV8zUnRJUEZyaVVTUERfS2cxQ25pQlduN0IzS1pUYjd1MFFwOXl0VE1TdDNRbUNwcnR4YlktVWFwWEtESUYwYVVCN1RPaDRuN2lFZ0pQYzV5M1A1LVZkQ1VxUHJKS2VwckUxN3AzMmFyWjE4VFFwZE5rRHdXRWJWZFlMZDNvc2tTdkhCMHBmbTFablpMZzNpSGo3SmxFX0VsT0RIOVQ4MXRBS3ZyUFlzZUJsWnZQbEdUbDdRN29XN0tSZ21zVDJHMmlqOW11RlVEWEoyLU9ycFhHTWFURGxpdGNhcmpXR0tjMXFJRWhzQ0IybjI3LUlDX2FnbDdHbG4xUkdCRC02bEZGQjFuTVBWcHJpVGljQjA3THJZblNHSTVRdzFpY0pYNnV1TzYyOHRTMEh6Z0llUEdRVzhPMEtyR0xEZkktX2ozQkphbEN1eEpMeW5sdmE4MDVaWFZ3RUdCcEcyaGFOSlVleXhJeWFSamM2SGdOZzNHXzNIbFItWXhiUjBfSmtEODJwczhfd1VmZTBGOW4yYkUzWEVNeEd1bm9rbWdWbTdxQ3I0TzNxQk1HZ0dvN3ExNFRVTGhndk9GeXVZU3BKdkJ2a290NVptZS02SC1idVYySlVjNENQYUN6Y0pFSnB6QlNmTnk3eEFlQmNvbEN4Q0w2MzZDZS0yeUFGVTFFdjJ0NkN1U1BHZUlyY0RrRlUzT2RWOWxvRVlJaG5nNUdEdDdXUjN1RDJsRkh0M1dWLS1ieHkwSFU4YkZmT0c4b0hoU25NN1hsOWtGR1ROWUVxUndIUjk4eENYeXVlS1ZEMHVlN0ZPNnotY3dxV1NxX3BFb0ZUX0V4OFlHU0EtS1k4N1RCRFY1ODlYSEdMYW05bm43RXJybTdNc1p5Znp4V0NBb0U4YkktX0hRN3dTLVVTc3JuZkh0eVJCVkRMcHRSUDVXWDhTSW5jekUwbTFsZFdRUFRZdDFZTVdld1M1Wk5GWll0SFFVSU9FUzNRVlZ5dWlrcXZQczBQWE5Db1p1ZUJoVVViZlVab0E1WFpDTXFYWVdsQnBUMzRVWkRTV3RxUnRVcXhjZlk5YmpvNzZWNjRfSFAxUHJ4V2NQMFZFVi1QVmhxTE55VmRZd0VsRTB5YnlyWlNsRjRwVlM4VTdsd1VlS01UMnpHNWVDLUktakxpUEU5S1M0eWU5WEdtZjlVZEZjd1V3cXBiMjl0cVFFdXRUNFRmUU54elM1dzFqblUySF9BVmxvNm5LZGJiLWt5RjB5WGZyRXB4VHJtR1VSZTRqMEVzMHBXbU0xOVZxY05yeDJDczh0UDlGTlFxNlptQnJ1QVY5ajE0SlpOdUhvY1ozMmU3cTdsN2tfcWlseEtDN1hjR3lRS3U0YlpXdS1qWUEzdm5OSDVORnAyaEd4aWFLVmRka1pDQVlTUnBqMHVNZ1FuVGNEUkppTTJoV1piaGY0OXBUaUVwak90dmhIbHV0WDdYdmpnTDVZcWtVRzNBbUZVelZIOWs1QkFpUXo2VUtwVVJjUFVNUnFPTG5fbkpMd0VsY2xKUE0xYldZdEhZNHNTdzl0OTMzSjZxdzdENFdNRGJRLVI0QlJubkxwNUZZRUtSY2Z1cHVKWWtxV29xd3dQUzc4b1E1UmZfSF9VbVlBZEFOUXhsLVU0MUw5RTE1TEZqaFBsMUZObFhNLUp5ZVNJNjhlbUJ1NGNWY1l4d0oyMGd6Y2NuSWs5UEtjdXdUWE1IUjVIMmNtZENxRnVBY3lYUlJCaGhGRVBfNjFmbmxnRjMxMFZSdS02c3JmOVhnTGFuMEdtaVNZSC1UaVpmcUFrUjItRVlvdWxFUG9UWUw5OUhTekcwQTBveXhpc2YyaER3Z1NxNDVpbjJaTU9BQnRrNGpGT2ZKQ2kyOVZxMkV5YXVOQmRodkFQeUVzVHJpcV9ydHZPN1phUUs1Ulc3QndPZ0RsY3k5b0ROcmVfRG5mZm9jRUNmc3hMVndab0Z0Sm02eUpoNmU5SDVTOFdMcmF3MEhDTklaR2QyaWNTUTJEMG5oMjh6b3JSY1lfanpIYjBwX0VIZk1iNjhxa1hoQmREVE80ZVQxeGNtRmZuUXRCQnRCMVJYaEd6cW1MRlhTUXJRRWxHWFY0czZxNWFYRlJQNkljdGowQk02VkxHWXVpOUdZb3YxZEVrWVRaS3Y0QUtnQndySWRGazl4N0hOT29YRm8yRlgzY0hWTUpWU0hzck4xY00wekN5SVNGdDNkaHB4TnVsVHY5TkdfQWZmUUg4X3NQa05Ua1R6clcyRlM1RkZpTjVrQXJLeUZRRGlWNEZHZTRxWE5WbFhfOURtLW1Hdk03Q2lPWDg2Q3Z1OEg2c2JEckxFR2VxdVJFSHdxaE9DYnR1VDljczNIYlBsbDlvODhxTkw4TV9CSzc3aUh2a0lSQUc2Qkl3Qkt5ZFo1QUNpVnh0NVhIZ0tEUE05a1VaMTdLM3FwYXFUblk1YWw1QjF3bXVYMkwwSDVGckxxQjJTTFBPUE9zcU1RTlNidGExQXBkai1KMm0ybzFWY1JPaGhWeVJza29iLVNOUDd5WGJrbGlUOWJTSHl5YzFvbzFXcTZKYnNZd2hwdVI5aS1YX1cwYkc5M0hyYS10c2pvYmZPYjFBeW5sRXotRGpqZXl1eEt1UGVtLXVvRVlTWkZfbXRsd1JxbVNFSkFwWmlxQms5VHFTZW04LVBCZWxRR000MVhBOWtFeHc3cm41anROODZEdTdUX3JvRnRTWGxpakFQUm44ZTI4XzcyNEwyTWtrN3FPREpLMkg4Mzdvc3J5bjNXRWE5MW80OTJuTS1BcGNTZ0pfUUEzbURqUTJtaHZNVElPakh5TFRCZlBjaW4tby1UQzRhc28wdmpJUEhLZ3pUeE5oWnpYNHMySjFSRF9ldW91cHhfNXhocDdCTDZSTWt4eWVMd0o3Y2VwZFhDVmNmdzdzRDEwQnlyVGVtSnVoT2oxaWhrc1lVUmdEZFI4M3pweFl1Sk11a0ZqbjlxbEQ2a3c5YndNWnRpU2h4QjFZUHNuV1daV3U0TXFsVTg3SldZQzlEMzFUdXhiNFltYndsd1RsQTV6dFBTS3diTk1fYUI4aXZVUUhUazBPdFFwcndXMTlCdU9FbjFtWnpBYnJ0WkUyZ3NFQ2w3TTREWjZWR29nMGtza3gwSUlDVks3WkxEQmZRYXhIWmxFOFk2SGFCS0JrekhKSHE3MUNfcnMwcEo0UWZRV1NiNGdkRFpIeVpWY3JaNktPbEZsQTBma25LdEN4YnpjM3U2TUM5enFXa1ZYWWZZeWVvM1JSNUg3UVJZaUJqM1R6SjJVMVF4U1VqQjZyU19XeW9vWlhnNHNyeG5QRWdKak01TTdfMC1yY3NWVlVVdVNzT2RXMXFybjRlSy1Kd3Q0elkwUHhLYU5wZzRkMTFLUURIVXJkRjdPbnd4UmJ0NktLSFlGYW03UGh0ZVozV0dGbnBIbktzdHJYOVk2bEREYjBTLW5KQ3o4ODF5cUhUSmZ5YkhfRWFxS3R0ZU5ub3dDc190Nkt4NTVBS3o4c2VaU1psOXJnb0k1V0FrVkR5YmlfSlFFdTJnZnp0YzN0M1hCMnlTVDg4bl9BcDJNbU80X0V4QXBoVEpfNzdrYmJvWkl1Yll2ejA2Sjh5ZjR5Mk1yXzgySlFLVVBQYWhuNEozejR3eS16d2EtaDFLRkkyZThQTDZzODF3YmZ1QndrNlBHNFItZWg4UVhybEJrSXVqMkJ4eGU4VUZ3VUZONW9kbzY4VC1SWTF0bVdPRlZndnpDUkJKc1Zjb3htLU1CTGZsdW5XbTBVdDRvd0F1MlRKQ3lUaTRpWDhIM3E0X1lQTy1zMXBiQnRRaU0wQU01azVFNkdoZlc3MS1lQjJ2cHMtMjRORzE5R2gzTEhvTzNlelJtWmhwX3k3QXYxV0I5OURrbmJ6NXZ6dGxwcW92Y2hNNWRDOFNQalFkMDBDRW5NRmtwaVQ3SDZZTmFKVG5BcnVoanhTU2RKLXUxSmdGSE1ObzJpNEtfR0xxY1BlSGlIaTlPZDM5S2NGdVNQeHAxOV9wc0Z5bHRzWVp5cXhoNldJSG55bkRvdEpiOHd4dFU0bk1FMWFvazFZNk9yc1FUeGFtNnBFQnludFljbzFoLUlhanZHSGliWkV2UGdLNjgyc2RoZ295RjJ5OG1na2JTNWxHVDd6U2tYWm0yeUZwOGk0X0tVUnlYWUtqUndFZWdKTmktQ0gxWWs3ZHgwbExOaElOVzJEWkdyN3RFd1dOd2tFMzFHdWwtaXZWZzdGMTNMN2xXNW9OWTk1WXFXQlh0RzBsRHVoUlduSHg5dTNWV0twSDFmT0xDcnVIS1VXdzM3MmhtX21KS3U5UW1tQjNrWDF3SURXSkQ0SnFfeWlaekMxWEdIOEFzRmJfOFhtTGo3YW1aUmRwRFRRSmV3WlE2NXFJem44VEx0ekFhTUktUUlQZXJDSEZmeDFYWW81ZUpWdHc4MWphVHFRQWJCLVZ5X3ZXMG4zNXhUVklEOGdJUlpYakhRVEg3YTgtaDY3ZVFPdUNtS00yR2NZQjlFSmNRLVRPdUd5ck5Cd0lBckNxSGxDSzF3SjlPZjFYMjQ2cjY3dnd6MkJCQUdRWWp5dF9yZ09PcFFadGthV0pMd25ncXEwRE1pYWt5cE5LSlVJbEViX3ZkUGp6SFFKMV9IVzlMSFB2UWVHUmVJRTY2YzEyWlBBTm5tcndDaXR4M3hzcWNJZVd2d0Vya0ZzcWMteUlZbFd0V1Y4ejVmdklMY2JvSWRxVTJ4c3RqR0lvZDhudEp3RVRMeDJJQTZ6TUZHZ2E1UDZkcVhiMm85TUtxT3U3Z3UxYzBUaGtjVzB1QUFSb1F5ZzhDcnMzX0VfcC1YRXpCZGVWNzBIWUhXNk5CaV91OUVfLWVKVm13Vl9RcmJxanM4bEJxeEhsR1ZyUHVIbjd0ZU1ncXk5cjY4b0c4RVZRRFZUV0tXYWZ1U3Q1bHJpWXlTMlk5QnFqbXduUlBFR3lqTzJtLXVNRTRHQU84d0s2eFZVeWF1emlRQ0FyLnN4blQ5QmJTbklGT0RKQ1Y4WGR3RXc" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/BackupKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/BackupKey-example.json new file mode 100644 index 000000000000..75f77e8bc42f --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/BackupKey-example.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "testkey", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "body": { + "value": "JkF6dXJlS2V5VmF1bHRLZXlCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUppTlRjMk5ESTVaaTB5TlRZNExUUTFZbVV0WW1aaFlTMHpOMlZrTURkbVl6QmpPREVpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLllNSVBfTXJRcTQ2X2ZwRExfSDNSSkpzSUotM05oeUJkMXlrOWJCS05JOGdnTjMxYWg2cWVoY1BISExnSnJ4OGprQkxMWFBxcDVmMXpsaWxfclVrLUtrT3J5YzhaSTljc3NNNV9TeTN4cEk0Wnk2V0ljNWNqUFd1R0NDbUJwQXlydEdPVnpoalF4bzNyVFcxRFNxZ1pVdnI4VEpseTJQS3J2aUlfUmduRWQ2LVJWS3V1Vk40ZWZWYUs5WFZUbW4xdmZ5Z3pwVHJfVFdDOVBGbXpoT0p6Z1U5OF85X25WcldWSE5TMXVMWEpYbldoQU9mUll0VlJORVFJRU5lTGMtZzNjTXJLOTFzNk5XeE5xZkZfR0w2UHg2cVhHMldXQ09nMzU3ZkJnT1ZTdERLaVZINk4xTWVkUTVwaWFkeHhUVDZMSFpva0I0eDFKbEFJZkxfYlU2OVBWdy5GOVFiM3RWbE1LcHJDS0stWUVpODJ3LlQwTVFpYXV3MGw5TWJfRFdEY1hvbzFqTjZJWXU1OVk3U0VMMm1ndFUweDNYTDl5VHNqZUY0Y2I0NExBaF9vUDdnbUgzbjdKLVZEX3hKN2hXY01XNnlTNDlFX005aXlndDlTQ2w5ZjRTdWtpM0NZdkwwUUVSVFlLSW1qMi1BRkRMWkl3Tm1HYmE4RzhheFBxR2NOS3NSZ0daZ1lUVG9pWUxxQnJ5cmJ2TEp1ZENxZ2plUWRpNU1tdHlQRnBhZ0hwSHZLa3VjRkdwLVhtSjFLYk8yQTJRT1dRVFFaOUNlcmVCcXJDbjI0SXdhUXJVQzRyTkQydzBVQTFUY3dFZXVWQkdFTGRKWm9zWHM2Q0dEZmpaSHFjdnB6NzRKd3g1T0VpcV9EUHM5VEtya01ob3djRXBsWjhaSk1jTlFSZnU5Sjg5ZDdZWGdHZEI1aWtKenA1WlY4OXcxMmIwekNITllKamdkZEhTNjJmalZlYUUxT09QXzd5Zlg1dEpiNmQ1QVhpZ3ItSkozbGI3Y2JhOXE2NHBsYmlhck1LemFiNUhtMkxNRnVLQnI1TmFrbzVQMDBoUUJnR2M2aXBJSzhNT2NLc2RhQjJGcjUwX1ViNnJEUzA4NnUzNy1DSHRGRnF5LTFBaGlDaXhRakNNTF9rWGtJMHZEYmJqRi1feGtNZGFCVi1BdTc5TzZ6V2pzRGVlV0t0VXZWUW5CMGM0Qnk3SVdDTGVWdzIyaTA5WWk3MnpCcWZPRjRyTmd4VTNrSjdfLTVib1dteVlXNndNOGVzTjR4R1kzUGhVNHlLRV91RGc2dk5Od3Q1c2NXWW9TMHh4NlBDb3M4S0R0Y3ItVXlwUTkydGhVX0ZYZ3E5U3RUWXEyWWdWV0dQbnM1Q0RMT0RBSi1sMTFJNklpdGxQN0hoeUxvMzlqNzdpV2ZUS0RnTDVrcDdEOUUzX3FkUFprdGpWUER1M1pRY1Q3MzlOMnp6XzFrWHJEb20tNlBQcXdWUzZtUXpBVW1xaXhTaXZjcWJxalpJRnRPbGxLRkE2cWVyaDJlU0FZelRNU0N1d0p4REJSQjUtbjBNUWxJSGpDMTdkTFpoVnFEMVNiNlBycV95OXN2Mml2V3E5TGE5R2ZHbEhBNlZZM1QzUWRTQ3VrWVJqWFhxLUItTm5WZGhGTVZhbFZ2b3NySmZuSEZhWGZMaTBnczVVOUt1NHlqRDdRb1cxeVIxSVk5T3JaNHFSUXdrcG5tOU8ycnJIMXBtX1hTekxRVDRrWmNLYnVneHNvWXRsRE9TaW9iS0RYdTFNdENxdkRudnh6OEZ3MUdwTXJCdUxrVlFEVmVlUDJqNFp3TGxPbkxUTmk4YlNjTm1fN3ZUc1RQbTRJRDltanBXSThCYXA4M1RLaTNkelAxazFpM0dncnIxSEpVQU96Q0NjUTRnaWxES1o4UkVsUWUyMUJBcUo3eUVublZsdWN5RzZBV2E3dmlZWXV4eEJIa0RsN1hHZHZYMGpJMjZyd2NTX0ZIMnlOaWFmZDN3SkkxMzQyWEF2VDdDUWVoOGRaZWRKU3FYUUdqQjVCSGF5Vl9vZnplVXBfOEhqRkRoS1VkcmNJNGkwa0ZwcEhkUFhNQXUxMjh3RHUyTG5VenlNNEpad1NJdW1fbmpiUTNJU1R5bUVMTngzd3QyV1NFT2Q3QUt5S3lCNEJzU3NkUE1HZXdLSTFnc2otSENFb05Cd3hQQkF2VnFDSUkzbGY5NG0tRU04LVh6TnRCVXFpT3Y5ZERCa2d2ekptSTlrMk9fVmpjbUZrbkdKb2kxVnpZcGlRVTRYbElaempDd3NDRHFrYWh1YmNxWFdyMDhVdFBtV0hGRXk0Q0tvclZMN1VIaVhsVnJPR1VHdFN2dWN3S2RjS1RPeldsUngtRGNGMExDek1kR1p3Y2czZWk1bWl0bFliRjJVbGJOMmJaU0NQWDljOWxFU2RBUUhxUEVsNXJhVDY3aDlWeGxPc3doYW54SkZvNGVuRENaYWZObURGRzJMYTY5RXFCVjZLTHowXzR1S1pDNW14YXZEazZXS3lmb0ROeXFzdVZMdG83WXNqUk4xNTJYMDVYSEhuRVN6NG5lM2MwandXYXo2MFpJR0Q1TUhNUUhQeTdPNFdnYWthVnNKZU9mYUNza3diYjQ5cV9tQnNYME5mWlBjcWFiRFhoWjdCWUxROVhFUkdibndkM0pEQmgtX1RUN2s2WERpY0tUblZQdWVGN3dzVl80aE9HUkpkVEk2UFRmV2o1dWY4dTdxRU9BdUt5NmV1Vk1LeTk3TVdLT1Q4LVpRbDBoSWowcmJWR1pILVI0cnFIMXZfVmdRUGRpLXFXb3FXcWt5MGFaSzNDTkEzUXhXZnRMR3AwcUVXcHU2T1EtQ2hONy12eE4wdFVlZGREWlF5V1d0d3g2VFcxS2hDQldaR2pabTlBQzY4YlUyQnVOTUU1NW9VV0dsbmNOOUVuRnpnTm1RTVR1SzV2VGd3WkJITWpmUXpsSUdfeWZ3QXVtSHljSzVPT092eDk1SGM3d0RBRDJXMVdSb2h5MDV5TFJkbEJ2XzREUXJyTWthZEVwZjB1dHZod1V3ZXZSNU1jVkV5Yk93VUw2Z2Y5a3JDNEw0YlR1bUJRbG9Ccng1aDNuTHhZdzkwcmlqbG5LajVZYkthZWpyTXdiSW15Ri1xVk5NbWpTd2I1MlN0SjB3T0czeE9HZkJRRHhQWHJtSXhoMERSOEdzSzBkeS0xSElJZWo1LW9STWRfSjlhVkt6MFk0d3g2VjIzaC1qUDNxMjRKYmF3dndsQTZyVjVpVUZkaDZKUXJpTU5DLV9hRF91X181VTd0OENIN1pWQ3VQM25JaTV4N2dtcWFsSzNlZ0htM3BkYl9sb3dYRTRaRUJETHZ0a2lobC13LVBGc3VZb1VKSUZWcUZ2VnM1RW5TU01XMFBJWE9TZlZNWW1KWmVrYmlHX1FqeGtCMjNCaHpZclNqQ3oxcW5TTXg5a3ZicDlRaDFuZFJYSkpJUFUyamVIdUxCNE9nVzNoenluQ2FxQXZQRXVHMlhuS3B4WGZ4QUtOeldpTElOLTBsUTRfUXQ0dHctZmphWVJVVjVLVWpyYlZnazI1MDZIUG1ZVEdWUVdRX203Z1NBU1BaajZEYklua3U3SzhFWnI2b3d1SDI1M1hxazlrSWwyTE1CcHZqT2tOTWFRTXhLcjItMllkUEV5LS1mTUFQTHBfVU15MnhqbEtMS2s3blhJdV9IMXZSbmdfVlVyVkhuZUdqRmFuODdRRU9SU1Y3clRBcHJPMmZUMmpfOWhoNkptdFlrUXFnRzg2WXlKa3NValdzM3hwZGk2TlBGRUxqQWd5T0ZDLTRrTWdLbGdJM2lUSElCV1Ezamp0U2UwR2N0MUs3QnBCSlJySUFGLTFVQjZKVDZjSjI4Z01zd0k5OGt1ZDVob1hZbVQ1bEEtWmFELUk4ZE0wcUZ0SEg4a1lXX256em85bTY5LWlZZlZfd3N5Mm1CdnVlb05RZGRRS0JrbWlVTW54VjkwdEF5RWc4WXJaWUwxck9jWHFjb2VJNl84UmV0bXZZeFZNMWJwdXFfajlmTXYtelRBOUpDZXlKMXFBTjVWQWFpY0lnZzFKWElDTEI5amVTT09zUXcxYXZxdk03TjFBcndDcjZvTUhycTVaQ0VLODV5VmI1RzhjY3Rld29pSFlzdVlPT0hnSDNMbmNoV3pmSjNNaUVjTTZfVjdSZHZCUWQwM2tQekdFVjh1STJ1aDl0bUxrNkY3VUt6WU02RXhJNW1LUEM5LVFOMk14ZTB6NDZrZTJteEdHR3cteXFMNjFHR0FpS0FjcENsSzVHeHlRbVBuREo4RHFKTk9WWDNoX283YTExVW8zMmtkdEcyaHVYcERVc2F5NkU4VGJ5R1dFZ3dmWDdaVnZrN1VNM2VqdDNqWXBxYmRZSlBNTUJCMGdNOU9mSVFjS0lUcm9IMHJEbFE2Wmt4UGM0ZHBlQ21NMzg3NXBXTlFrZzFKSnVRZzN4cE9WZ0VGallabEVENTBFaVZKNzg3cUM1YUdtakxRWl9yLVA3X2hJN09lcExWZ1BHSEFTUkxsd0dOLUZwTDc4UW9VempfWHUwNlBkNkF1VExtYmpoVmlERC11ZG5xdTVVR3dKNGxZamJqSkNBN3VQT2VfdWpzUWhZd1VHQV9YQnlsbkVySWxMN09YSE9UeGFEbEpHSDQtNHdNcm9hbmhPWTVoZ2NWZHZVQlpVZ1JEVWg0MGwzejhGVWJhUmxpaEUxeXQwdU5vR3F3TWRyWnZoTkl3YVFjUFlQeVV3UTdBdWh1dl9qSXRVcWlGQm9ncnlSb3Njd3oycXR0am12OEFRWUh5QWx5OXVqdmJ1cnk1TGNJaF9FUWZUekJuSnlfcDVZdzBDWG5CSzg3ZkVIOHJhWkh4V0VUcHFseHlmWWRWZjlQakRYTGJMYWJWQ2J6TXNSMnNYZkFvNm00VmhnaEYtQ0dOV3lta25EMDBUbWU0TGE0Vy1BLU9lR2o3Mi1uOFZjNmI5Zzc4d25tYkF0dGRyUThQWVdLUXZjdXlEbHZ5RUdHSF81VW10bFN5ajJKbHRLZXN3N1dzai1hazhDWDFidGRzU2xoQldjYUJ0dGozUmp3bEN4aEQyTXlWdHR6dDIwN3JPQjdxdEFJeVg1enJZMUxaSHB3RW1NeDhkWnM3NDdlY2ZhZVM0ZFFCWmN6U3lCNFZFWVRRWGdIeWdFX3EtYndfZXhqNWs5c0RHeHNTRnF5elFCVm9VOUtlbmFtZTRESnNMWFdaaW51UEhZUVNtWDJUZFBabXNkSHhCa3BBcHJiLUg0SGdFSnBPYWxCa0d3aFhza0hwYjZUTkhQeHktb09tLWhBaXptTVZPZzlnTDJOSHpSdUFtb0kzVTRFd2FfR0Vub3d0ZUFRU0xlY016WjZxZ3l1ZGswcG51UnlONlAxbTNCU1ExODRXUzNqeDFDNDYwTEFKM2FySS00QWV1aW5fMFZYM3FHdmEzNDR2ZXQ4N0RSN0liTUUzS01rWWtUdXotaHpqbnhHVVQ1cXZhWnYwNzdQVHExbTVDUVBUZGVlNlNnMzRmLXlseGg3MGoxSS1OWnZ3aFAyTFZ2OTJkdVZ4SlJSN3hzbEp6UzU3NXE3aWZ1UEcwUnp0NE55M1lESno0TWVDTk5wWklwTUJKeGR2bkc3azhsbXlvQlVRYmR6OHhCdW5YT3FsRDFHU205M05LYy13bzdxZnpJanYwWjF6WVpwLW5LN0o2NEUtSnp4MkQxZ2xJRG5vZGw5R215UzlwbzMzOUlZYU9QZlJnSTNad1FTVkdwcEJQN0dNRUdsRkVxbG83bTUtNFNZWEc2SmRYYU5yM2lRVmdoUEtkQWVpLWJDTEFQbGJGSkNFQVU1NXJfSEVmS2xUNS0zNlN5ZHRlcWFTZEdvMVhGRXpadWFILV96OEJsd1hXME4wdFJpdHo3SXh1OU5BTkM4R3V0Z2t2WHVFUl9Obnc1VUlsYXJlcE02VERfWl9lOHJGRDdoYXhWMVd0b1pkOUJTd05iUm1JeXU2Y2ZaelgyeFNPVlJVSndWSEctWTNaRGRpcWtzb19XR0J2TFJKQlRWT3NvZVZucWUxWktqb0NRSzFEYUZPb3B4UDdTTWhwOVlpY29XRk9VUU5ONS1EQjMtNjhDbURzdjE1LXMzRFRxUUM1OHhpd2JZLTRuWWt0eVNRV2F5elRvYlZOWG1idmI5SzktdWowYVRWRkx6SDFHMFl2TG1oU1NTd2tfM08tY3RSUExFblhQU1FWNkdVT2p5d0xIT1hTRDZfY1lTN1JrVXR4Mmc4bV8xbmhJUW0wOFd1aTVNSkdQR0JEb0RmN0szd3oyMnRnUVFXTDEwY2J0SlVvQkYyNjJVaUg3TE5pMjJWQ2tsMElYMVVRNy13cEkwcDhkV1NvV282U25PYTdkUTVpQkliZjlQX3JRd1dhYVl1NV9aQlpwQ000VXFWY2dhR1NZVnNxRHpXRVY4LXRjazBYOE51STJyZ3JSOTRDSnhjSms5MWwtb3owbldhTUFocHJubjJfd3hSWEdOYXkzNmJqU3EzWXhNMXN0dDFNN1JjenU3UTJQei1mZGpHWUFOSHZxQUtYUTZpbUphQXNwbE50Skh1SUp1andyTlRQd0ZzNGE5bDRkWHdNMDRRSWZoYzR5em1icDlYRjdVWVU0MjNXTWhRU2RMNUpaTld5QXVxOEFuRzdtd2dTUDNUMjROVGh1U0Z6Zjd1Tk5ySmdfUFk5VUNWcmlPS3FEN1lVS0FSZ1FFQ0EtTmthbG5YU0V1VEN2azJpZkVYOEh6cTJJbDV3TEZyOVFKVjBmT19EUkNyUzVzRHVaVmJ3RDI0Y2VqT3libWd1VWFuTDhiMklqS3h6TFVPT2tlMkVPNVRRTXRQUWZjeTYydkV5c2NwQzJFYXd6YUN2V3ViMVNXS2RZVnUtcVBzdFV4eWlPUHNpcFR3V1kzTXVNRkpwclNscWFVUDFJa3N6M0Q0VGpqSElzb0c2TUFsbFRZcUItSWpuSEhmYzI2blM3cmExeVVjbHRIRWtEd3Q4R1I2bmctNk9XNWJtT0J2VFFDamRUUDhSbXZ3b2tIRXZGQTlXbGs2OVZIVFpFSlNaNGdRZXFzcW83SEJJQ0h3dlViOW16YkhnaU50bGQ1WUFHT3V1U3BOTE1UcTM5LTMzVVZoTjBLa0hLUXZCenI1OXFmaFBIU3lVRnVMZzI4b2pYMGRvb3gySlFEZ1BobHZVYkR3cGluREJqVHBiMDdsY09EYVI3ZWN2M0tDOUhJQVdreDlhV0lza21Yb0FWYVNWTDBsZ05NQzNHVkxSMURfcGVoQTZySWs2Rl9qbDY0N0w4SERqRFJEbjZRRnRIa21BYW10TU9WSzdPMS1UXy1UTldwaDZ3YVFOdTBrV1ktZXAyRERndDk2enRYUkZTVWdNOXJMMnk3OENOMkVFWW1mQUktM1VjamdUblUxRnJXaEZ3dC1JNlVmNFZwNlY4XzZxTjJzVDJyeWFLWHo0Y0JJY0NoNm8tS0RpOW95SDV3MFF5eDhWb0xTNlN0YVEyYU5FejlKamctZ0N4aVp0Q1JYeWlnaWx3NTQ5VWFWMldreHR2bDZkeWRmZmFTM2ptYUxqaDRmOXhHa1JQRUdqZmZvMVY0dUN5QkI5QkNoaVVCZG1qVGxlVlJROG5Ccm5WQW5qYXVIYTRsV3VkNkhjSzU5VjJNTlpNTVdtS0tvb0E4cWtuMzVUY25EdXluSjJITUNnZElCSnVQVU9TeTI1QnhuZnA4RU5NSlZrV19UeU9uTXk5b3JtNTVobHhmSjRENThad2FRREs0QWlFZk1IVHdJc09uZ2pnU0o0S1JDdjFRa1NVeDdYRVhNU0lNUWtUYTBqS19aNS1PQ1ZNc3NBbzEzVzg1VlFKbVpDQ0tZRzZWbS1ybnVYSUdZZlZWLTg1OG93OEJZUGhDYVRhVzRkVnBLWERDRDVfc1FsamdJSnd0Vmc0T0RKY1dxelJpWWpUaXMyVzVjdlBvT1haNUIyZnFaVTlCWGVPQWM4S3Y2a2ZDVWp0OFV5UDFTaGswN2xtZ1A5b25PMWJ0eVc5VnhQSE5uUHcxNjZDeXJmVVcxaEFHQjB1YTFNYmtEVTdfdk40SlowY3VWNV9iLW9sUm80eV9yeGQ3UGRWREJsZHBWTUxsV3haLVhiV1VqdFpTVndaT01rOEtvV2F0bld6NVI0S1ZLNkFnbWJFTHhpa1MxSjYxZ1lJNlhTcm8wRnF1N0dNM2JXdlZQYm1xR3Q4SV9UcjNHamlKeDZ3OUhvZGlLbEZQc2JMakE3OWJuSG5DcHdwSEZBWGI5d3E3dmMtSF8wTU1WVGw3eE56bzhIZ1FfR2tPWEl1OV9uMVJiZS1SRDRXUmlId1RuYm5ZbXpHNjN4b3dHTlBJN2c4R203ZkxfTnpDWGhveDdUSUhXMjh0WFFCeVk4ZmR3X3YtMUtvU2lhSjNwNHBJUnlRQm1rQnpmOTlGRlpPS2g1bUxLMnBrSE9INWFlblFFNng2cHFDakNkcW53Uzk3eGJ0Skp1TkF4M1V6UDdHM2l5WlN5ZWw4SEd0YU1UZVdITzFuaE9lZFNlcTVhaGk4dEFFeVp2MFFScUxsQTRaQUxrVGh5ZUNZckpBd1cyaUJaOW5DRUVnemxqT01wdTJndHpDRnk5WktZWUloaWZKdVQ3dlBHdVhGTUtLVlg0WFU5ZmVoOFhIMUVWbnZ4cENuRjl5eEZneThuVW5CdUdsRkVWOFVCVU5oOE5BcElZY3BlTDd5Q1F5bDZQN3Fock43SEhINEloNmhLS2lVaUItWjRNMHJUSk9mZkd6MFhGWmlaSDdYT21KazBNc3pCbEVhaEFFbjJTU1JaaVFXTThsRFRRcEdrX0p3QkpRX1FVTmtMZnhCcHpsSzBUMGFxS1d3M2doWFktT3FqelM4cTFXOHVBYzNabFRUMFZHRWdWdU8yNl9vRXpXTnZYYnpKMUVfVEFxUkVWS0xfOWFlem1zM3JqYy1GdldSR2pMV09OTXhUdGw5ZzE5RFdhbFA2alJlUlJFeEg3djBLTEdvSHV1RW5IVHNQX2hsMnZuM05WWWl3dFFualFCOXpiMjZKRmxwZzZFaEF1STN4bFZMM3hwRE9qZUlPNXM3MllKY1MzcjAzYkIzbTVHMUljRVU4SkR2WTF5MjJQaG5iOGVmNno1cmk4RDY5clVLWThFOXFraExXYVhOMjRTLTZBYjNRZUtKcmxIR09yaEc2ZkpCdElqTF93Rk9kWjJqOFo0bVBZdmJaNUNEUTdnM01yYVh1aVJ6cWdvdXk3TkliempzOEZETkQ4ZHNMR1Z0OUNLanRVMnR5a0JrSUpQZlhrZ3U0LUpSVFRETjNINGdwek9md1B5V18xOXRMdlBKNEpRbHlzbnhKaEptSW5TUEtUUTljclJHVFFlS0F3THZZemdCMG5QWkIxd2dQVWJHaXRsaHlTV1pqbWplVU5oSnNnb0Z3ZHRFdTloTjRDejROWUVLZ1ozWnBKTC1sZmVJbmp0VEIwN1A4dWtpV3FHeGNBaVI5TDRPdl94VmxNYm9hblduNENNLThVSnZjRGhVRGtpTGt0eHRJOE03Zk01bngtMkFSX3MwcnlDV0F1YmVmQUxRdHVEUnQ1MVZrZnlJZkJ2UWFyb3dINnpIX1ZfZ1lJWFdOdDlvTElMT3FrNHlqcmR5Z0ZXWTl2QXZQN1Y4Q1lraUZuSVVrWGNaeUNsT2dmcTM5bXRKeHBMM2Nzb3VaWFRIcDExZ0xibWRUNUVTbjIwRThiblpEcTVvSEVEWGxPbGZHSE9ldmx6RnRCX1V4R1h0S1lYOUoxQWlLekJyZGI3QmJvemRFcDAteHVpeTZYRFp1Yjc5LW1LcnVQTDJaWWIxaTVoVmpRQUN2RnAyUHBaT2k3eFVmSlJoT0Z3Zi00OUphVE9XTjMtYVhVb0N1a0NpMWdqODhkQ29QWWNVdWs5WmxNelpkV1hJcDlnQ1gyN196U0U1WURCYWlWQ1dPc3c0Q0pGYmMta1FUOUNaMzRkU1hiczZ4S1N0OS1haHI5b3NpY2JHY2laMUlDV182WWRLM0l6ckh1UUV6TnNDQ0tEdW9iVVFRZFpBUlFMeWFlR2w0NWczN21Gb0tQN2J4b01aY1AzRjB3MzdBR0xMVzFjVi02dU5uaWhZQ1p0dThZckZQdWF4aF9VVUxPTk1SZXN5TFVsRHVydmxuQVV5ajFVMU1TbEMxTGtPbV9VV29NdVBzX1VqU2M3SDc3RTgwcmd2QmZCQTdaMkRQMmpWOFFRUmI2Q1RieEtpRkk5TFhmRlI3MjlFcURZVXVRRUk1ZDN0Y3liN3U4TzJlQnZfVGo5TzRPREx5Wjk3Z3BMdVZ3dUpVb3FqQVJnRU91U2lHdWwxaFJxYTl5NlZ0ZmpMNE5qajJJYjFsY2JyQS5OcXpkcGU4Yjdxc2MzQmpYRlhaWVpR" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/BackupSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/BackupSecret-example.json new file mode 100644 index 000000000000..e8738d0fc023 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/BackupSecret-example.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "testsecret", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "body": { + "value": "KUF6dXJlS2V5VmF1bHRTZWNyZXRCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUppTlRjMk5ESTVaaTB5TlRZNExUUTFZbVV0WW1aaFlTMHpOMlZrTURkbVl6QmpPREVpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLmhERDdfVW9aU1ptR2JYN1dYUTU5WDkxZ0FQb05kdDcwZE1BbmgzbjQ3eWNjbkRNOU5vTm1hY0NHZmlNeUwxU0FlZDk0UjhBNDAtVE81TDNfQ05Qal9pdWIyaW03Z21nbHNPNnFFUVVIWU1tOEh2Wl9odFRrdEl4QzRPWEowYTB0S2hscnczZlBvVVFDZHVGcFg0ekEzYTR4VTZXTUNfYjZZVXZqUjZnSGM5TFRUR2tIazh1RTY0aVQ4cmt5RDRrU3RNcXhnU2lfRVZwUUdjWGdfNE9wQ1dBOUFha0N1NkpybGRaQW9BLUtXTWpQbGhaWHFYWGMyVkJlbUJjRTQ1YzY3QWhqYjJrSi1uQ1c5dHBjWS1JZ3JEUHFzWkswOS1WbHVtcl9SbzQzcG5FeW5jVFpTdzZlX1h6VnN0dUFOZHdiM0E2OVR1c1hfYkJKZ0J2SGQ4cDJSUS5WMTlhMVRacjZ2UjJHdEVaWGtOOXJRLmhwMU5IMmwtZklWbVgwWlNfTlRzekJfUEs1aktDUU5rSnJyRUhRQmZjQ2VjdHhmVU5uVlB6MVBqRWNDblZuV0pCUk4zTlFKZm01MjFLRHp1MzBIVUFEUGVmVHJyMFVFS2x5QTM2cThoWFY3VTdoQ0dHNk85NVpYclRsZlVENDI5RTNTNTQxdVBmWGpGR2cxbHlucFNTNnAtVkFzaXFlY1lpQWNuM1hhNzRhUm5xS3N3ZzhyU1ZOX09hSVU3ak1VVUhYZWY1ZmN0NlFrdWFfYkt6Z2dtR2ZiT2RTdVdNRmVQaF9mMkJMUFNGN3k1NThEMFZxSVlNY0JJR0dMU3BQUU93Q094OFF3Y3NVUEp4ZDFuWkVYYjRVNEJZYlhBcmFMX0NwekYxZlhYWVBsdmVUSGdKNVdrR28tWXNJVzAtT3ZqVGdLN2hIamxpR1psd29HOVUtbTJSVDZfbkhseHhVRFMyY3JseGNmay1OOTlXd0tEdUxFMTM5ZE1mN2RCSEl1aTdxd0RXdm1TN2JMTHYzM05Wd19XSl9DT1VGQjgycy1ELXk0UEdIRzVackhsSDgxa25mLVpRblU0SmZfY2lhMWhmWlY3ZFMxb21UZDQtNnJwZmpTMGxFT3VfZTQ5bUpYUGFpZ0hyLWFQYkFzTXJJQ2JvOUVIR2IzMXJ5SlR2QXF2ZmJDbU10bkdLUDV6aUNiZFh3SU5ONzBJTk5lZnJLWGZkZFBUd0RSV3d1ZkxCcGNlU0U0SG5EWVZVQmdkMDl4UUZidG12UDhhTXhhUlpGSTNpWG1fbmpCNmZfdlNhZUNUakdVYVVuRE1QQkdOQWQ5T2xVX3dvUnMtalNCVnVqd1FQSGlGcm5RWElkXzBRdXRYSm54cTU4aUtlTGJvNDJtOHgwaXBRcnB4aEZoUDdHNmZOWXAwVmxXR0RxZ1Q0VlpPQkZsZWRKUU0yaDQtb2xTbXdtUms0M0Y1cjdKd3h4aENqU1JReWx1MGEyQ0ZONWMyZjIxTElZaFliLWNReWFXMDNpV3hsb04zWld5cDJIb1FlUmZPR3lXUzBiU2NBT3JndGpBYnJaUFIwMGRRNnpSOHNBczFYUzh3dzBlaVczbFpsdjJwVWFxOVpTeVhnTS14b2NTOS1ueXRaWGtWWlUwX2dDVXJBV0ZKNG5XdW9oTGM1RkkyRWFQNWR0SXVWa3dnbXlsR1gtYk9ZeHp3dzVGYmI1V3VEbnJ5aDBMSnVic3Q4VXdLdnl3bk1jQ3duMjZSVTNxQVRudGJubVhJS0FyeGkwMldQVk9oTXdpUWZuX2h1TWk5emp3MEVuaXNWdktNWUNnR2xqNWlGZW5Tc0FKUXBiLUY4bng3OWFJQlJaTUc1a0huUDR5dGxmNm9FTkRsRXNJY21aeEtOdEIzcmJPdVROYUhLTXZBNmxSNzlMMDJZSTZrcEdrUUZnaHpIaTBjTWkwbFdCejRTM1AzUEMzZElZSVlQZ0Q2S05kT2FLWHkta0dWdUlsWFNmVlVrMnpzM0NBeTJhZEJjV0NMV094ZkRoQnlwNTl4MHpBRExvdnZySHRLOWF6TGN3N0lTbVl6eUhYMkpobVdReUYtTFd1VzhfcW41SkFVYlB5Z0RTRDYyMi1PTGZQVDZmc2VTWUVBUTFLVWRwZTFnSV9hZWxVT3FaRWN1aE5SckU1YUp0LTN5TEVLVWZIWXF6WTlGbHJrUE5MUC03Y2xRbmEySEhfZmMzZV9LTGtGUDFhQTJjM0RVaERseGhsTzB2bFVmV0c5eXpXaDNZN0NmRFlFMlBaUzZBcFBlYy0wa1NDcEVKMmtCcnFzWG4yeDJDX0FDdTdCTTVGZXNJQkN0M2NqSEdQSVVQRnEteGVmT0RCXzBQcXZDTXpBOHg5Zm10Ny1sNHhVQlJaa0dtZExhZFoxVzdFUXRNRVpsSWMtbDF1V1UzTU15cFZpVWR0OWxJUHVQVUEwc1NrbWxrTGhNSjgyNE5QN0hyVi01dC1ZNDcxaWVKMHdEUjFxMmU4MU8yazdNeTFlTDY3TlY4OVBHYU81SVR5WG1ueUVXMGtVbl9qa3l1UVRkV3dsS09HZVZIYkJWNFpxSXZHWjdQUS02TEE5eXc3a0dyZFRhVFZXOEdOOV9GY1c2VUhjbzA0U3dqTzY2S2x4VlFJWWpBdEZPZlBjWW5xNzF1RndyQS1UZHVDZG1sUFBHOVpjc2tiQmdrbF8wVk90dmhuc0pwYXZKZ2Zka0d3OF9qMkQzd0Jzemd0VndHNk9nNW16eVFwM2pFc0w3UmNtcXd6WFBOaDdKYXdHVDBJMlRvZHYyQ1Z3MDkzWjJlODFXR1NxRnlIejAxdjFBaGN2T2VWdmFjUGM2Y1JJaVduNW93ZF80d2FBdjlyNjVVdmtWa1FLRXpHUmo5eTZILXdZTTMyV1JyMzBlOU9MRTNKUU5POV9kNjRTRmIwSjZHa2VxUmtnNkVXc2xqN1JYLVU1VlhrS1BtMzNpS3c5dGU2NVBqQUNnZThRVDBYVWZEaUx5a1pGeUdpZ09ZMS1TVDFxUlE1eUhMTXhEc3BPRjFXd1lMQ2c2b3hocTlWMm55Z0U1cUJ2ZnYyWUtFaDdjM1dWNjJrYkw3UXJ2d0xkMHVRZ1FwYmUza3E3dGJzcC1lNWlud3cyY0YxQzByeHNScGZJRHlJMmg4b2xHMi1RQUZkWmtlMUlmaE1FZmNfdUdXX2pqSGJSWXVzYnZCRnpKMDdaOVJsVnFMR1A2WXBnTDFsRTFOY09xUVJyYVdxckdDTWZ6SzZMVENQSl93aHJRam9WTzdVRDJIUEVnUjZ2S3U3cWlmTmo3UjE5OUJuRi1EZmlnbk1TYTFKZkZadDNuVXVZOEhMUXRoUzN4MUMxOE50d3dsaDVuNGxYS3d5MERHenljbVNweE05QkdPNTFRckFmSXRfY0xHbUlzMlJ4MzMyeDRIdEZ3Z05nRzFBazNIUno4TlJ4V3lhNWhjb1NoYURXekhES2gyOVp3Vm4wYXVzeWJpal9uNlFGcnZZbjRSOHdPNlRQV3FrS09JcHkxc1lQNWxyNDc1anZSRVZGaFdCWDBiUXdJdnNlM0Q0a0dFQzgzU3FWYkhxY3phZTNwOFNxaG5tQW5ZYzBIbWp4clJfZUMzT0hYVFBGUFZmNDlVWHdrQjIwY1lvcjJ1dzBaTzJ2TUg3S1QwcjBSWDBQVy1qcGpORFpjSGRSNVVCMXFacGlWLWxaYkw0eF9IZW14aWUxY0RPOHNQSXhIOElUSWtOV0tTR1N2eWdraHBBbGl2RzVEZXJObElkeFE2c0tHQ3RtMDEyT2xjN2thaVFaNHh0TjR5ZVpPU2xyS0s0OTlIcWhObzhkNTNsbFFfMW5ncWlHbzhUSDlzWkFrclYwclc3dkJOSF92UlhBdTc2MnlpZGhZUURYYXJXSEFUMm9DU2hEN1lOdnotekoyZGtEajJMcW5CdFNCWFh5T2xsM3o0ZWFITDd2MDZ1QTgxMVBKQU5YZUdoenNaNFVQQUQ2Q0E4cGlxSHB4WGkxODRHNEJETVU4S2VHeHZLWnJiUlNOT2pTOFNrQUJKZERfSklIZ1RhNEFhNzdPUmNZcVY3OWZ5djFZVHNma2lLR2NUYzZIUjZzUVpsamt2U0NQNjdtTTRGUHRqTHlfX1pDQlNwdnRSVWd5UlpNM1dSOUViNHkxa29uRG4zUjMzN2lpSzdfbGtIa1UtZ21VbUpZUVdnUjYzT01pZUdRUHdNR3BSZXlRWE5yckJVTDN2Z2JYdjlac1ZDcDh1NHRwQjBleXJvUXgxZC1KSWJvOWVyR1VlX0ZzU1Fpd0tIaGFIUk02Nzh5dENkcHJFbDBWeG92TFVrX0xNcTFjN1R4MG5jbFl2WE4yUjhEMXNhU2FibkJSd19CU2tZMFNMSXdhb2RpY2o2ZzdLd0ZfMXB2eThhNF9LbnJNLUNkenBvdHA0aTd4QUJuY2JRVUEwWkpsYlp1elRpR0F4ZjFnclk1Z0dZOTVoWi1XZG1lOWlSazBHRTJGN3d4MlJyLUVvS3lZRjNjak0xMWt6MWFmME9fNFdyOXJoU3JrX1NHU3l2a3ZCTW9NZ0xOX0tSS1BlTjlqUnpwRlVST2VnN2NCbGlhdy1odnZhY2lCeDN2UWRqTE5jTldQdU1UbzVmME1QbmU4TUtXcFBoWjBySElMaEVuYW1pcG82X3pzNjczcE9ma09FS0JWWE9mUDEzR0UwS25SWTBab2JPLWRub254LVdBY1dodFZvX08xbkwwTWE5ZXFMMURhRGhJU0JNbVRIM1hkY2dDTnF0emIwcVMtS1l5Mk9zRzZOakRDVEM1aEI3MXIwU09WMUprNFV2QjdYemxTTW9YUXJnTzF2ZFVwSGtxaVhUM1RJZmlQMWRKcDEweDlSMlp5R0lzUzljQUtNMEZyMGRxQmJmQy16NTJpcWZweW4zUVVqb1Fld2hPYnJwUEZGOF9lUmVNRlIwSXZjUkxnMHpwek56UzU1N1pkQkZhemxNTThLcnkwN2QyUDAyTnZtclUtN1ZjOW8wZm1qem9WOHVVTG9PMkJHdmFRdnFJNmtBTmQ5VWo1X2JkY2NVUzBhcklzcGFZa1UtUXQtNnQxYU5YUUdGZEtUbFMwSVowek54bkNIZWRySEE4SkYtOFg3d1ZpRW1McXJQbU1Sd25sbWx3SnhxLVlReWMydmdUallSbUxCVU5TS3VrZkJsa2VnMmlCRWdySksxVlNyRWswX0ZvOXkzV1EwVlZuNXhEZXlGc1JuWDI4Tkl6alFQLVNXaHhYbzdPYm5YY1cxZHlWNE1fYjdzM096cEMwOTJWcGZYQkpaTDhBeHgxNGY2TmJzTEpXLW95VEdsaTJFb2FCZHJKQ2JkQlNOdWJlbGdRRmU2V2hqSjRGdlNrYVJISjFTT3ltbGFtQmYwaVNDOGM2X1g2SkZORjNmOXYuQjc5SDJvbVIyTU52SndydHVzclJ4UQ" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/CreateCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/CreateCertificate-example.json new file mode 100644 index 000000000000..ea610b9eab30 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/CreateCertificate-example.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "selfSignedCert01", + "api-version": "7.1-preview", + "parameters": { + "policy": { + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=*.microsoft.com", + "sans": { + "dns_names": [ + "onedrive.microsoft.com", + "xbox.microsoft.com" + ] + } + }, + "issuer": { + "name": "Self" + } + } + } + }, + "responses": { + "202": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/selfSignedCert01/pending", + "issuer": { + "name": "Self" + }, + "csr": "MIIC4zCCAcsCAQAwGjEYMBYGA1UEAwwPKi5taWNyb3NvZnQuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqe8aINnShK+wQC8QU7fwsviQc9+yiOnqU3adXA6qNjn21HTdRBa7cyQIk1STxHIBLTT/GaEJwqsUi6UvZaPEHokOWsr1bP9M7xOPTicBcRyMrr6bOxsmGczYtu1z2TzzXDD7q7IEignE7/LowGEaIADCIU9iuWk7TiJ+1Q/VLh/B3xPsgVjY+n7zEQ53gBiDHSl7XfELfwmslOQ28TVNogUyXsxHcVxQQYJeI7HqqY448LeleK69Ld86lkBixLEm1pD7HSbEx3WI2lyUQAGR6hD3YFaiIWVpQeEyI7p1jmtQlnfZdEL4q9wdlEEcwd3h3PAZpEBhCixahF54fci3pwIDAQABoIGDMIGABgkqhkiG9w0BCQ4xczBxMA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwNQYDVR0RBC4wLIIWb25lZHJpdmUubWljcm9zb2Z0LmNvbYISeGJveC5taWNyb3NvZnQuY29tMAkGA1UdEwQCMAAwDQYJKoZIhvcNAQELBQADggEBACiLeghirF+yCuYGVUPDB3wKQJn2iLY1za9ncxCehIVqOkFK09AphzoxF6Yid90AKCaa/dT/Ohm7oTyVQ+YcZnT00LUNFVG48AOE8YDiw9tjAG9OORsAz80xnv2qaLw2TCVIQ6NjrI83LqAm1GJ8rAnpdD/ZTuWM7TvSO5g/jm/Q0oSuKpMgj3YxpwgB9Ac6YEfVzOnm76OkUcpvR5MS4BoTfRv4thdSnU+uwqxM+HtdSVTbHQeC2U/hM1cyzDMpl1rZRklmiEOoPUeDasEIBVTJhAxR8xAeKJJD7Wzj4mJPw4UMvF8zQZzW8EKYvB1hkVYY+HQ85L+XcXd8lco7hU4=", + "cancellation_requested": false, + "status": "inProgress", + "status_details": "Pending certificate created. Certificate request is in progress. This may take some time based on the issuer provider. Please check again later.", + "request_id": "6faacd568ab049a2803861e8dd3ae21f" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/CreateKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/CreateKey-example.json new file mode 100644 index 000000000000..0d8234244135 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/CreateKey-example.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "CreateSoftKeyTest", + "api-version": "7.1-preview", + "parameters": { + "kty": "RSA", + "key_size": 2048, + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "attributes": {}, + "tags": { + "purpose": "unit test", + "test name ": "CreateGetDeleteKeyTest" + } + } + }, + "responses": { + "200": { + "body": { + "key": { + "kid": "https://myvault.vault.azure.net/keys/CreateSoftKeyTest/78deebed173b48e48f55abf87ed4cf71", + "kty": "RSA", + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "n": "2HJAE5fU3Cw2Rt9hEuq-F6XjINKGa-zskfISVqopqUy60GOs2eyhxbWbJBeUXNor_gf-tXtNeuqeBgitLeVa640UDvnEjYTKWjCniTxZRaU7ewY8BfTSk-7KxoDdLsPSpX_MX4rwlAx-_1UGk5t4sQgTbm9T6Fm2oqFd37dsz5-Gj27UP2GTAShfJPFD7MqU_zIgOI0pfqsbNL5xTQVM29K6rX4jSPtylZV3uWJtkoQIQnrIHhk1d0SC0KwlBV3V7R_LVYjiXLyIXsFzSNYgQ68ZjAwt8iL7I8Osa-ehQLM13DVvLASaf7Jnu3sC3CWl3Gyirgded6cfMmswJzY87w", + "e": "AQAB" + }, + "attributes": { + "enabled": true, + "created": 1493942451, + "updated": 1493942451, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "purpose": "unit test", + "test name ": "CreateGetDeleteKeyTest" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/DeleteCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/DeleteCertificate-example.json new file mode 100644 index 000000000000..d807b55f63bf --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/DeleteCertificate-example.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "importCert01", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "body": { + "recoveryId": "https://myvault.vault.azure.net/deletedcertificates/importCert01", + "deletedDate": 1493938558, + "scheduledPurgeDate": 1501714558, + "id": "https://myvault.vault.azure.net/certificates/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "kid": "https://myvault.vault.azure.net/keys/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "sid": "https://myvault.vault.azure.net/secrets/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "cer": "MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1493938557, + "updated": 1493938557, + "recoveryLevel": "Recoverable+Purgeable" + }, + "policy": { + "id": "https://myvault.vault.azure.net/certificates/importCert01/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Unknown" + }, + "attributes": { + "enabled": true, + "created": 1493938557, + "updated": 1493938557 + } + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/DeleteCertificateContacts-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/DeleteCertificateContacts-example.json new file mode 100644 index 000000000000..641726a705f7 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/DeleteCertificateContacts-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/contacts", + "contacts": [ + { + "email": "admin@contoso.com", + "name": "John Doe", + "phone": "1111111111" + }, + { + "email": "admin@contoso2.com", + "name": "Johnathan Doeman", + "phone": "2222222222" + } + ] + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/DeleteCertificateIssuer-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/DeleteCertificateIssuer-example.json new file mode 100644 index 000000000000..ea4a25328565 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/DeleteCertificateIssuer-example.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "issuer-name": "issuer01", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer01", + "provider": "Test", + "credentials": { + "account_id": "keyvaultuser" + }, + "org_details": { + "admin_details": [ + { + "first_name": "John", + "last_name": "Doe", + "email": "admin@microsoft.com", + "phone": "4255555555" + } + ] + }, + "attributes": { + "enabled": true, + "created": 1482188806, + "updated": 1482189526 + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/DeleteCertificateOperation-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/DeleteCertificateOperation-example.json new file mode 100644 index 000000000000..b6a3a6583b17 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/DeleteCertificateOperation-example.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "deletedRequestedCert01", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/deletedRequestedCert01/pending", + "issuer": { + "name": "issuer03" + }, + "csr": "MIIC4zCCAcsCAQAwGjEYMBYGA1UEAwwPKi5taWNyb3NvZnQuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApf+kGcL+5uivj/ToYbQ15zcx3caEnpzXaX2eJgL0/Kwaz4u2/bNJ9+hoXnlOFFbCp4canVoNvgu8fw5NOu9U3gJNFQwjHeAqfsg8okZGkIk0riIpp4MMb/4GQb2y3B28AcTu2FANdzLoZzBqmQs51KBe1RONkdtqDYXIvnb5G+9+P7PCy5G//Ga0JAP6Y6P8+TrE9JLEj6Sny0ljLMpMyt4rIRAtNfKYSeiWVQmYX4jZfImIW3iq91zwMsRlrzTm80mNfHPCv7V/8NmYuh0MQgCr49lLbbKCgzDyo9h8sblVQvR5TAylpIk7bSQNf4tSdVNHnsF6CJWu6Pg31hyMpQIDAQABoIGDMIGABgkqhkiG9w0BCQ4xczBxMA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwNQYDVR0RBC4wLIIWb25lZHJpdmUubWljcm9zb2Z0LmNvbYISeGJveC5taWNyb3NvZnQuY29tMAkGA1UdEwQCMAAwDQYJKoZIhvcNAQELBQADggEBAHVjmYFs3FmecaJ1ExhK1WCFJaQJUTVbPJ1xJ93UJlLivhzI1yhQO9nMC2DKV+E+UCxceqjae6OG5LUhXfYAziS0HTc80+ZcUqrZRb5ZRt+8HU0TPbTDDqjj8wMZ4VlgQ3eXGAGesMfZV3AqWwa5itofvqm8KAmL4Yn/XMSHcKfRx3h9WnC6RXgZ8WNYK+r5o+gHlmuF7/AaNFh8UjIsjjOZQ0Yin/vA4yBEYTt1/OC7pScs3bdL9CIf4rC98qaMSf4B2W/vfrXUo0gGPYcep25jy7xnIltSY80Trn3Mty5YQ0IT+KPQcJKhbryGg6bIy4jJDwS7zkn51MR1q3kNoOA=", + "cancellation_requested": false, + "status": "inProgress", + "status_details": "Pending certificate created. Certificate request is in progress. This may take some time based on the issuer provider. Please check again later.", + "request_id": "b88791e33d9c4d609d3e3cc3d2d40d11" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/DeleteKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/DeleteKey-example.json new file mode 100644 index 000000000000..b4b3218765e4 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/DeleteKey-example.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "CreateSoftKeyTest", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "body": { + "recoveryId": "https://myvault.vault.azure.net/deletedkeys/CreateSoftKeyTest", + "deletedDate": 1493942452, + "scheduledPurgeDate": 1501718452, + "key": { + "kid": "https://myvault.vault.azure.net/keys/CreateSoftKeyTest/78deebed173b48e48f55abf87ed4cf71", + "kty": "RSA", + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "n": "2HJAE5fU3Cw2Rt9hEuq-F6XjINKGa-zskfISVqopqUy60GOs2eyhxbWbJBeUXNor_gf-tXtNeuqeBgitLeVa640UDvnEjYTKWjCniTxZRaU7ewY8BfTSk-7KxoDdLsPSpX_MX4rwlAx-_1UGk5t4sQgTbm9T6Fm2oqFd37dsz5-Gj27UP2GTAShfJPFD7MqU_zIgOI0pfqsbNL5xTQVM29K6rX4jSPtylZV3uWJtkoQIQnrIHhk1d0SC0KwlBV3V7R_LVYjiXLyIXsFzSNYgQ68ZjAwt8iL7I8Osa-ehQLM13DVvLASaf7Jnu3sC3CWl3Gyirgded6cfMmswJzY87w", + "e": "AQAB" + }, + "attributes": { + "enabled": true, + "created": 1493942451, + "updated": 1493942451, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "purpose": "unit test", + "test name ": "CreateGetDeleteKeyTest" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/DeleteSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/DeleteSecret-example.json new file mode 100644 index 000000000000..0128f59c7e91 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/DeleteSecret-example.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "GetDeletedSecretTest", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "body": { + "recoveryId": "https://myvault.vault.azure.net/deletedsecrets/GetDeletedSecretTest", + "deletedDate": 1493938433, + "scheduledPurgeDate": 1501714433, + "id": "https://myvault.vault.azure.net/secrets/GetDeletedSecretTest/b595353d9c39413d80626575b3b5d865", + "attributes": { + "enabled": true, + "created": 1493938433, + "updated": 1493938433, + "recoveryLevel": "Recoverable+Purgeable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetCertificate-example.json new file mode 100644 index 000000000000..126b9a0a042d --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetCertificate-example.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "selfSignedCert01", + "certificate-version": "pending", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/selfSignedCert01/f60f2a4f8ae442cfb41ca2090bd4b769", + "kid": "https://myvault.vault.azure.net/keys/selfSignedCert01/f60f2a4f8ae442cfb41ca2090bd4b769", + "sid": "https://myvault.vault.azure.net/secrets/selfSignedCert01/f60f2a4f8ae442cfb41ca2090bd4b769", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "cer": "MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1493938289, + "updated": 1493938291, + "recoveryLevel": "Recoverable+Purgeable" + }, + "policy": { + "id": "https://myvault.vault.azure.net/certificates/selfSignedCert01/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Unknown" + }, + "attributes": { + "enabled": true, + "created": 1493938289, + "updated": 1493938291 + } + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetCertificateContacts-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetCertificateContacts-example.json new file mode 100644 index 000000000000..641726a705f7 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetCertificateContacts-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/contacts", + "contacts": [ + { + "email": "admin@contoso.com", + "name": "John Doe", + "phone": "1111111111" + }, + { + "email": "admin@contoso2.com", + "name": "Johnathan Doeman", + "phone": "2222222222" + } + ] + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetCertificateIssuer-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetCertificateIssuer-example.json new file mode 100644 index 000000000000..ea4a25328565 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetCertificateIssuer-example.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "issuer-name": "issuer01", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer01", + "provider": "Test", + "credentials": { + "account_id": "keyvaultuser" + }, + "org_details": { + "admin_details": [ + { + "first_name": "John", + "last_name": "Doe", + "email": "admin@microsoft.com", + "phone": "4255555555" + } + ] + }, + "attributes": { + "enabled": true, + "created": 1482188806, + "updated": 1482189526 + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetCertificateIssuers-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetCertificateIssuers-example.json new file mode 100644 index 000000000000..ca7fd0bff6e9 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetCertificateIssuers-example.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer01", + "provider": "Test" + }, + { + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer02", + "provider": "Test" + }, + { + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer03", + "provider": "Test" + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetCertificateOperation-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetCertificateOperation-example.json new file mode 100644 index 000000000000..95e56903b8db --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetCertificateOperation-example.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "selfSignedCert01", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/selfSignedCert01/pending", + "issuer": { + "name": "Self" + }, + "csr": "MIIC4zCCAcsCAQAwGjEYMBYGA1UEAwwPKi5taWNyb3NvZnQuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqe8aINnShK+wQC8QU7fwsviQc9+yiOnqU3adXA6qNjn21HTdRBa7cyQIk1STxHIBLTT/GaEJwqsUi6UvZaPEHokOWsr1bP9M7xOPTicBcRyMrr6bOxsmGczYtu1z2TzzXDD7q7IEignE7/LowGEaIADCIU9iuWk7TiJ+1Q/VLh/B3xPsgVjY+n7zEQ53gBiDHSl7XfELfwmslOQ28TVNogUyXsxHcVxQQYJeI7HqqY448LeleK69Ld86lkBixLEm1pD7HSbEx3WI2lyUQAGR6hD3YFaiIWVpQeEyI7p1jmtQlnfZdEL4q9wdlEEcwd3h3PAZpEBhCixahF54fci3pwIDAQABoIGDMIGABgkqhkiG9w0BCQ4xczBxMA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwNQYDVR0RBC4wLIIWb25lZHJpdmUubWljcm9zb2Z0LmNvbYISeGJveC5taWNyb3NvZnQuY29tMAkGA1UdEwQCMAAwDQYJKoZIhvcNAQELBQADggEBACiLeghirF+yCuYGVUPDB3wKQJn2iLY1za9ncxCehIVqOkFK09AphzoxF6Yid90AKCaa/dT/Ohm7oTyVQ+YcZnT00LUNFVG48AOE8YDiw9tjAG9OORsAz80xnv2qaLw2TCVIQ6NjrI83LqAm1GJ8rAnpdD/ZTuWM7TvSO5g/jm/Q0oSuKpMgj3YxpwgB9Ac6YEfVzOnm76OkUcpvR5MS4BoTfRv4thdSnU+uwqxM+HtdSVTbHQeC2U/hM1cyzDMpl1rZRklmiEOoPUeDasEIBVTJhAxR8xAeKJJD7Wzj4mJPw4UMvF8zQZzW8EKYvB1hkVYY+HQ85L+XcXd8lco7hU4=", + "cancellation_requested": false, + "status": "inProgress", + "status_details": "Pending certificate created. Certificate request is in progress. This may take some time based on the issuer provider. Please check again later.", + "request_id": "6faacd568ab049a2803861e8dd3ae21f" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetCertificatePolicy-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetCertificatePolicy-example.json new file mode 100644 index 000000000000..8821e02856b6 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetCertificatePolicy-example.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "updateCert01", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/updateCert01/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Unknown" + }, + "attributes": { + "enabled": true, + "created": 1482188947, + "updated": 1482188947 + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetCertificateVersions-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetCertificateVersions-example.json new file mode 100644 index 000000000000..9c17fd802d09 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetCertificateVersions-example.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "listVersionsCert01", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "https://myvault.vault.azure.net/certificates/listVersionsCert01/002ade539442463aba45c0efb42e3e84", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1482189534, + "updated": 1482189534 + } + }, + { + "id": "https://myvault.vault.azure.net/certificates/listVersionsCert01/7fcb3e9eb8bf43f3a6ff4b9c3740801d", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1482189532, + "updated": 1482189532 + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetCertificates-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetCertificates-example.json new file mode 100644 index 000000000000..a3dc0dea373b --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetCertificates-example.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "https://myvault.vault.azure.net/certificates/listCert01", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1482188987, + "updated": 1482188987 + } + }, + { + "id": "https://myvault.vault.azure.net/certificates/listCert02", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1482188988, + "updated": 1482188988 + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetDeletedCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetDeletedCertificate-example.json new file mode 100644 index 000000000000..800db0dac699 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetDeletedCertificate-example.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "getDeletedCert", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "recoveryId": "https://myvault.vault.azure.net/deletedcertificates/getDeletedCert", + "deletedDate": 1493938292, + "scheduledPurgeDate": 1501714292, + "id": "https://myvault.vault.azure.net/certificates/getDeletedCert/f60f2a4f8ae442cfb41ca2090bd4b769", + "kid": "https://myvault.vault.azure.net/keys/getDeletedCert/f60f2a4f8ae442cfb41ca2090bd4b769", + "sid": "https://myvault.vault.azure.net/secrets/getDeletedCert/f60f2a4f8ae442cfb41ca2090bd4b769", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "cer": "MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1493938289, + "updated": 1493938291, + "recoveryLevel": "Recoverable+Purgeable" + }, + "policy": { + "id": "https://myvault.vault.azure.net/certificates/getDeletedCert/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Unknown" + }, + "attributes": { + "enabled": true, + "created": 1493938289, + "updated": 1493938291 + } + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetDeletedCertificates-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetDeletedCertificates-example.json new file mode 100644 index 000000000000..92b9777bf528 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetDeletedCertificates-example.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.1-preview", + "maxresults": 1 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "recoveryId": "https://myvault.vault.azure.net/deletedcertificates/listdeletedcerttest0", + "deletedDate": 1493937659, + "scheduledPurgeDate": 1501713659, + "id": "https://myvault.vault.azure.net/certificates/listdeletedcerttest0", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1493937658, + "updated": 1493937658, + "recoveryLevel": "Recoverable+Purgeable" + } + } + ], + "nextLink": "https://myvault.vault.azure.net:443/deletedcertificates?api-version=7.1&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExMTIhTURBd01ETTVJV05sY25ScFptbGpZWFJsTDB4SlUxUkVSVXhGVkVWRVEwVlNWRlJGVTFRd0wxQlBURWxEV1NFd01EQXdNamdoT1RrNU9TMHhNaTB6TVZReU16bzFPVG8xT1M0NU9UazVPVGs1V2lFLSIsIlRhcmdldExvY2F0aW9uIjowfQ&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetDeletedKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetDeletedKey-example.json new file mode 100644 index 000000000000..b4b3218765e4 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetDeletedKey-example.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "CreateSoftKeyTest", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "body": { + "recoveryId": "https://myvault.vault.azure.net/deletedkeys/CreateSoftKeyTest", + "deletedDate": 1493942452, + "scheduledPurgeDate": 1501718452, + "key": { + "kid": "https://myvault.vault.azure.net/keys/CreateSoftKeyTest/78deebed173b48e48f55abf87ed4cf71", + "kty": "RSA", + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "n": "2HJAE5fU3Cw2Rt9hEuq-F6XjINKGa-zskfISVqopqUy60GOs2eyhxbWbJBeUXNor_gf-tXtNeuqeBgitLeVa640UDvnEjYTKWjCniTxZRaU7ewY8BfTSk-7KxoDdLsPSpX_MX4rwlAx-_1UGk5t4sQgTbm9T6Fm2oqFd37dsz5-Gj27UP2GTAShfJPFD7MqU_zIgOI0pfqsbNL5xTQVM29K6rX4jSPtylZV3uWJtkoQIQnrIHhk1d0SC0KwlBV3V7R_LVYjiXLyIXsFzSNYgQ68ZjAwt8iL7I8Osa-ehQLM13DVvLASaf7Jnu3sC3CWl3Gyirgded6cfMmswJzY87w", + "e": "AQAB" + }, + "attributes": { + "enabled": true, + "created": 1493942451, + "updated": 1493942451, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "purpose": "unit test", + "test name ": "CreateGetDeleteKeyTest" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetDeletedKeys-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetDeletedKeys-example.json new file mode 100644 index 000000000000..45d3a78b0619 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetDeletedKeys-example.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.1-preview", + "maxresults": 1, + "$skiptoken": "eyJOZXh0TWFya2VyIjoiMiE5MiFNREF3TURJeklXdGxlUzlNU1ZOVVJFVk1SVlJGUkV0RldWUkZVMVF3SVRBd01EQXlPQ0V5TURFM0xUQTFMVEEwVkRJeU9qRTJPakF5TGpnM09URXpOemxhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "recoveryId": "https://myvault.vault.azure.net/deletedkeys/listdeletedkeytest0", + "deletedDate": 1493938031, + "scheduledPurgeDate": 1501714031, + "kid": "https://myvault.vault.azure.net/keys/listdeletedkeytest0", + "attributes": { + "enabled": true, + "created": 1493938031, + "updated": 1493938031, + "recoveryLevel": "Recoverable+Purgeable" + } + } + ], + "nextLink": "https://myvault.vault.azure.net:443/deletedkeys?api-version=7.1&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExMzYhTURBd01EVTJJV3RsZVM5TVNWTlVSRVZNUlZSRlJFdEZXVlJGVTFRd0x6RkRRa0ZGTkVaQk5qQTBNelJGTmtZNE9FUXdORE5GTkRFM09FUkNPVFE1SVRBd01EQXlPQ0V5TURFM0xUQTFMVEEwVkRJeU9qUTNPakU1TGpVeU1UZ3dPVEZhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetDeletedSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetDeletedSecret-example.json new file mode 100644 index 000000000000..0128f59c7e91 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetDeletedSecret-example.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "GetDeletedSecretTest", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "body": { + "recoveryId": "https://myvault.vault.azure.net/deletedsecrets/GetDeletedSecretTest", + "deletedDate": 1493938433, + "scheduledPurgeDate": 1501714433, + "id": "https://myvault.vault.azure.net/secrets/GetDeletedSecretTest/b595353d9c39413d80626575b3b5d865", + "attributes": { + "enabled": true, + "created": 1493938433, + "updated": 1493938433, + "recoveryLevel": "Recoverable+Purgeable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetDeletedSecrets-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetDeletedSecrets-example.json new file mode 100644 index 000000000000..7945b71d581a --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetDeletedSecrets-example.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.1-preview", + "maxresults": 1, + "$skiptoken": "eyJOZXh0TWFya2VyIjoiMiExMDAhTURBd01ESTVJWE5sWTNKbGRDOU1TVk5VUkVWTVJWUkZSRk5GUTFKRlZGUkZVMVF3SVRBd01EQXlPQ0V5TURFM0xUQTFMVEEwVkRFNU9qSTFPakU0TGpJNE5qUXdORFZhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "recoveryId": "https://myvault.vault.azure.net/deletedsecrets/listdeletedsecrettest0", + "deletedDate": 1493937855, + "scheduledPurgeDate": 1501713855, + "contentType": "plainText", + "id": "https://myvault.vault.azure.net/secrets/listdeletedsecrettest0", + "attributes": { + "enabled": true, + "created": 1493937855, + "updated": 1493937855, + "recoveryLevel": "Recoverable+Purgeable" + } + } + ], + "nextLink": "https://myvault.vault.azure.net:443/deletedsecrets?api-version=7.1&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExNDQhTURBd01EWXlJWE5sWTNKbGRDOU1TVk5VUkVWTVJWUkZSRk5GUTFKRlZGUkZVMVF3THpZMU16ZERSRVJGTlRJNU5qUkRSa1pDTVRkQ1JVWXhORGszUXpSQ1JEZEVJVEF3TURBeU9DRXlNREUzTFRBMUxUQTBWREl5T2pRME9qUXdMamsxTnpZeE1UbGFJUS0tIiwiVGFyZ2V0TG9jYXRpb24iOjB9&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetKey-example.json new file mode 100644 index 000000000000..88b8b64f366a --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetKey-example.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "CreateSoftKeyTest", + "key-version": "78deebed173b48e48f55abf87ed4cf71", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "body": { + "key": { + "kid": "https://myvault.vault.azure.net/keys/CreateSoftKeyTest/78deebed173b48e48f55abf87ed4cf71", + "kty": "RSA", + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "n": "2HJAE5fU3Cw2Rt9hEuq-F6XjINKGa-zskfISVqopqUy60GOs2eyhxbWbJBeUXNor_gf-tXtNeuqeBgitLeVa640UDvnEjYTKWjCniTxZRaU7ewY8BfTSk-7KxoDdLsPSpX_MX4rwlAx-_1UGk5t4sQgTbm9T6Fm2oqFd37dsz5-Gj27UP2GTAShfJPFD7MqU_zIgOI0pfqsbNL5xTQVM29K6rX4jSPtylZV3uWJtkoQIQnrIHhk1d0SC0KwlBV3V7R_LVYjiXLyIXsFzSNYgQ68ZjAwt8iL7I8Osa-ehQLM13DVvLASaf7Jnu3sC3CWl3Gyirgded6cfMmswJzY87w", + "e": "AQAB" + }, + "attributes": { + "enabled": true, + "created": 1493942451, + "updated": 1493942451, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "purpose": "unit test", + "test name ": "CreateGetDeleteKeyTest" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetKeyVersions-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetKeyVersions-example.json new file mode 100644 index 000000000000..0175a93e993b --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetKeyVersions-example.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "listkeyversionstest", + "api-version": "7.1-preview", + "maxresults": 1, + "$skiptoken": "eyJOZXh0TWFya2VyIjoiMiExMzYhTURBd01EVTJJV3RsZVM5TVNWTlVTMFZaVmtWU1UwbFBUbE5VUlZOVUx6ZERPVVJETmpjM05VUXdSVFF4TnpjNE1qZERORVk1T0VZME9ESkdRekV5SVRBd01EQXlPQ0U1T1RrNUxURXlMVE14VkRJek9qVTVPalU1TGprNU9UazVPVGxhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "kid": "https://myvault.vault.azure.net/keys/listkeyversionstest/7c9dc6775d0e4177827c4f98f482fc12", + "attributes": { + "enabled": true, + "created": 1493937851, + "updated": 1493937851, + "recoveryLevel": "Recoverable+Purgeable" + } + } + ], + "nextLink": "https://myvault.vault.azure.net:443/keys/listkeyversionstest/versions?api-version=7.1&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExMzYhTURBd01EVTJJV3RsZVM5TVNWTlVTMFZaVmtWU1UwbFBUbE5VUlZOVUwwRXdPRUZDUVVVNE1UZ3pNalF5TVRsQ05EUXpPREZFTWpoRVJURkdSVEJESVRBd01EQXlPQ0U1T1RrNUxURXlMVE14VkRJek9qVTVPalU1TGprNU9UazVPVGxhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetKeys-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetKeys-example.json new file mode 100644 index 000000000000..a35443775395 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetKeys-example.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.1-preview", + "maxresults": 1, + "$skiptoken": "eyJOZXh0TWFya2VyIjoiMiE4MCFNREF3TURFMElXdGxlUzlUUkV0VVJWTlVTMFZaSVRBd01EQXlPQ0V5TURFM0xUQXlMVEUzVkRBd09qQXhPakEyTGpnd056azBOemhhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "kid": "https://myvault.vault.azure.net/keys/sdktestkey", + "attributes": { + "enabled": true, + "created": 1493937656, + "updated": 1493937656, + "recoveryLevel": "Recoverable+Purgeable" + } + } + ], + "nextLink": "https://myvault.vault.azure.net:443/keys?api-version=7.1&$skiptoken=eyJOZXh0TWFya2VyIjoiMiE5NiFNREF3TURJM0lXdGxlUzlWVUVSQlZFVkxSVmxCVkZSU1NVSlZWRVZUVkVWVFZDRXdNREF3TWpnaE1qQXhOeTB3TlMwd05GUXdNVG94TVRveE5pNDNNekE0TnpReVdpRS0iLCJUYXJnZXRMb2NhdGlvbiI6MH0&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetSecret-example.json new file mode 100644 index 000000000000..71a86eb8df2f --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetSecret-example.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "mysecretname", + "secret-version": "4387e9f3d6e14c459867679a90fd0f79", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "body": { + "value": "mysecretvalue", + "id": "https://myvault.vault.azure.net/secrets/mysecretname/4387e9f3d6e14c459867679a90fd0f79", + "attributes": { + "enabled": true, + "created": 1493938410, + "updated": 1493938410, + "recoveryLevel": "Recoverable+Purgeable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetSecretVersions-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetSecretVersions-example.json new file mode 100644 index 000000000000..918ac3a7f87b --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetSecretVersions-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "listsecretversionstest", + "api-version": "7.1-preview", + "maxresults": 1 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "https://myvault.vault.azure.net/secrets/listsecretversionstest/11a536561da34d6b8b452d880df58f3a", + "attributes": { + "enabled": true, + "created": 1481851699, + "updated": 1481851699 + } + } + ], + "nextLink": "https://myvault.vault.azure.net:443/secrets/listsecretversionstest/versions?api-version=7.1&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExNDQhTURBd01EWXlJWE5sWTNKbGRDOU1TVk5VVTBWRFVrVlVWa1ZTVTBsUFRsTlVSVk5VTHpGRU5EazJNa0l4UlVRM09EUkVRa1k0T1RsR016TXpNa1UwTnpZNFFqY3dJVEF3TURBeU9DRTVPVGs1TFRFeUxUTXhWREl6T2pVNU9qVTVMams1T1RrNU9UbGFJUS0tIiwiVGFyZ2V0TG9jYXRpb24iOjB9&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetSecrets-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetSecrets-example.json new file mode 100644 index 000000000000..1b809e12af92 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/GetSecrets-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.1-preview", + "maxresults": 1 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "contentType": "plainText", + "id": "https://myvault.vault.azure.net/secrets/listsecrettest0", + "attributes": { + "enabled": true, + "created": 1482189047, + "updated": 1482189047 + } + } + ], + "nextLink": "https://myvault.vault.azure.net:443/secrets?api-version=7.1&$skiptoken=eyJOZXh0TWFya2VyIjoiMiE4OCFNREF3TURJeUlYTmxZM0psZEM5TVNWTlVVMFZEVWtWVVZFVlRWREVoTURBd01ESTRJVEl3TVRZdE1USXRNVGxVTWpNNk1UQTZORFV1T0RneE9ERXhNRm9oIiwiVGFyZ2V0TG9jYXRpb24iOjB9&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/ImportCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/ImportCertificate-example.json new file mode 100644 index 000000000000..83486a6a6589 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/ImportCertificate-example.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "importCert01", + "api-version": "7.1-preview", + "parameters": { + "value": "MIIJOwIBAzCCCPcGCSqGSIb3DQEHAaCCCOgEggjkMIII4DCCBgkGCSqGSIb3DQEHAaCCBfoEggX2MIIF8jCCBe4GCyqGSIb3DQEMCgECoIIE/jCCBPowHAYKKoZIhvcNAQwBAzAOBAj15YH9pOE58AICB9AEggTYLrI+SAru2dBZRQRlJY7XQ3LeLkah2FcRR3dATDshZ2h0IA2oBrkQIdsLyAAWZ32qYR1qkWxLHn9AqXgu27AEbOk35+pITZaiy63YYBkkpR+pDdngZt19Z0PWrGwHEq5z6BHS2GLyyN8SSOCbdzCz7blj3+7IZYoMj4WOPgOm/tQ6U44SFWek46QwN2zeA4i97v7ftNNns27ms52jqfhOvTA9c/wyfZKAY4aKJfYYUmycKjnnRl012ldS2lOkASFt+lu4QCa72IY6ePtRudPCvmzRv2pkLYS6z3cI7omT8nHP3DymNOqLbFqr5O2M1ZYaLC63Q3xt3eVvbcPh3N08D1hHkhz/KDTvkRAQpvrW8ISKmgDdmzN55Pe55xHfSWGB7gPw8sZea57IxFzWHTK2yvTslooWoosmGxanYY2IG/no3EbPOWDKjPZ4ilYJe5JJ2immlxPz+2e2EOCKpDI+7fzQcRz3PTd3BK+budZ8aXX8aW/lOgKS8WmxZoKnOJBNWeTNWQFugmktXfdPHAdxMhjUXqeGQd8wTvZ4EzQNNafovwkI7IV/ZYoa++RGofVR3ZbRSiBNF6TDj/qXFt0wN/CQnsGAmQAGNiN+D4mY7i25dtTu/Jc7OxLdhAUFpHyJpyrYWLfvOiS5WYBeEDHkiPUa/8eZSPA3MXWZR1RiuDvuNqMjct1SSwdXADTtF68l/US1ksU657+XSC+6ly1A/upz+X71+C4Ho6W0751j5ZMT6xKjGh5pee7MVuduxIzXjWIy3YSd0fIT3U0A5NLEvJ9rfkx6JiHjRLx6V1tqsrtT6BsGtmCQR1UCJPLqsKVDvAINx3cPA/CGqr5OX2BGZlAihGmN6n7gv8w4O0k0LPTAe5YefgXN3m9pE867N31GtHVZaJ/UVgDNYS2jused4rw76ZWN41akx2QN0JSeMJqHXqVz6AKfz8ICS/dFnEGyBNpXiMRxrY/QPKi/wONwqsbDxRW7vZRVKs78pBkE0ksaShlZk5GkeayDWC/7Hi/NqUFtIloK9XB3paLxo1DGu5qqaF34jZdktzkXp0uZqpp+FfKZaiovMjt8F7yHCPk+LYpRsU2Cyc9DVoDA6rIgf+uEP4jppgehsxyT0lJHax2t869R2jYdsXwYUXjgwHIV0voj7bJYPGFlFjXOp6ZW86scsHM5xfsGQoK2Fp838VT34SHE1ZXU/puM7rviREHYW72pfpgGZUILQMohuTPnd8tFtAkbrmjLDo+k9xx7HUvgoFTiNNWuq/cRjr70FKNguMMTIrid+HwfmbRoaxENWdLcOTNeascER2a+37UQolKD5ksrPJG6RdNA7O2pzp3micDYRs/+s28cCIxO//J/d4nsgHp6RTuCu4+Jm9k0YTw2Xg75b2cWKrxGnDUgyIlvNPaZTB5QbMid4x44/lE0LLi9kcPQhRgrK07OnnrMgZvVGjt1CLGhKUv7KFc3xV1r1rwKkosxnoG99oCoTQtregcX5rIMjHgkc1IdflGJkZzaWMkYVFOJ4Weynz008i4ddkske5vabZs37Lb8iggUYNBYZyGzalruBgnQyK4fz38Fae4nWYjyildVfgyo/fCePR2ovOfphx9OQJi+M9BoFmPrAg+8ARDZ+R+5yzYuEc9ZoVX7nkp7LTGB3DANBgkrBgEEAYI3EQIxADATBgkqhkiG9w0BCRUxBgQEAQAAADBXBgkqhkiG9w0BCRQxSh5IAGEAOAAwAGQAZgBmADgANgAtAGUAOQA2AGUALQA0ADIAMgA0AC0AYQBhADEAMQAtAGIAZAAxADkANABkADUAYQA2AGIANwA3MF0GCSsGAQQBgjcRATFQHk4ATQBpAGMAcgBvAHMAbwBmAHQAIABTAHQAcgBvAG4AZwAgAEMAcgB5AHAAdABvAGcAcgBhAHAAaABpAGMAIABQAHIAbwB2AGkAZABlAHIwggLPBgkqhkiG9w0BBwagggLAMIICvAIBADCCArUGCSqGSIb3DQEHATAcBgoqhkiG9w0BDAEGMA4ECNX+VL2MxzzWAgIH0ICCAojmRBO+CPfVNUO0s+BVuwhOzikAGNBmQHNChmJ/pyzPbMUbx7tO63eIVSc67iERda2WCEmVwPigaVQkPaumsfp8+L6iV/BMf5RKlyRXcwh0vUdu2Qa7qadD+gFQ2kngf4Dk6vYo2/2HxayuIf6jpwe8vql4ca3ZtWXfuRix2fwgltM0bMz1g59d7x/glTfNqxNlsty0A/rWrPJjNbOPRU2XykLuc3AtlTtYsQ32Zsmu67A7UNBw6tVtkEXlFDqhavEhUEO3dvYqMY+QLxzpZhA0q44ZZ9/ex0X6QAFNK5wuWxCbupHWsgxRwKftrxyszMHsAvNoNcTlqcctee+ecNwTJQa1/MDbnhO6/qHA7cfG1qYDq8Th635vGNMW1w3sVS7l0uEvdayAsBHWTcOC2tlMa5bfHrhY8OEIqj5bN5H9RdFy8G/W239tjDu1OYjBDydiBqzBn8HG1DSj1Pjc0kd/82d4ZU0308KFTC3yGcRad0GnEH0Oi3iEJ9HbriUbfVMbXNHOF+MktWiDVqzndGMKmuJSdfTBKvGFvejAWVO5E4mgLvoaMmbchc3BO7sLeraHnJN5hvMBaLcQI38N86mUfTR8AP6AJ9c2k514KaDLclm4z6J8dMz60nUeo5D3YD09G6BavFHxSvJ8MF0Lu5zOFzEePDRFm9mH8W0N/sFlIaYfD/GWU/w44mQucjaBk95YtqOGRIj58tGDWr8iUdHwaYKGqU24zGeRae9DhFXPzZshV1ZGsBQFRaoYkyLAwdJWIXTi+c37YaC8FRSEnnNmS79Dou1Kc3BvK4EYKAD2KxjtUebrV174gD0Q+9YuJ0GXOTspBvCFd5VT2Rw5zDNrA/J3F5fMCk4wOzAfMAcGBSsOAwIaBBSxgh2xyF+88V4vAffBmZXv8Txt4AQU4O/NX4MjxSodbE7ApNAMIvrtREwCAgfQ", + "pwd": "123", + "policy": { + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "kid": "https://myvault.vault.azure.net/keys/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "sid": "https://myvault.vault.azure.net/secrets/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "cer": "MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1493938557, + "updated": 1493938557, + "recoveryLevel": "Recoverable+Purgeable" + }, + "policy": { + "id": "https://myvault.vault.azure.net/certificates/importCert01/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Unknown" + }, + "attributes": { + "enabled": true, + "created": 1493938557, + "updated": 1493938557 + } + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/ImportKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/ImportKey-example.json new file mode 100644 index 000000000000..697de87ed238 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/ImportKey-example.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "ImportSoftKeyTest", + "api-version": "7.1-preview", + "parameters": { + "key": { + "kty": "RSA", + "n": "nKAwarTrOpzd1hhH4cQNdVTgRF-b0ubPD8ZNVf0UXjb62QuAk3Dn68ESThcF7SoDYRx2QVcfoMC9WCcuQUQDieJF-lvJTSer1TwH72NBovwKlHvrXqEI0a6_uVYY5n-soGt7qFZNbwQLdWWA6PrbqTLIkv6r01dcuhTiQQAn6OWEa0JbFvWfF1kILQIaSBBBaaQ4R7hZs7-VQTHGD7J1xGteof4gw2VTiwNdcE8p5UG5b6S9KQwAeET4yB4KFPwQ3TDdzxJQ89mwYVi_sgAIggN54hTq4oEKYJHBOMtFGIN0_HQ60ZSUnpOi87xNC-8VFqnv4rfTQ7nkK6XMvjMVfw", + "e": "AQAB", + "d": "GeT1_D5LAZa7qlC7WZ0DKJnOth8kcPrN0urTEFtWCbmHQWkAad_px_VUpGp0BWDDzENbXbQcu4QCCdf4crve5eXt8dVI86OSah-RpEdBq8OFsETIhg2Tmq8MbYTJexoynRcIC62xAaCmkFMmu931gQSvWnYWTEuOPgmD2oE_F-bP9TFlGRc69a6MSbtcSRyFTsd5KsUr40QS4zf2W4kZCOWejyLuxk88SXgUqcJx86Ulc1Ol1KkTBLadvReAZCyCMwKBlNRGw46BU_iK0vK7rTD9fmEd639Gjti6eLpnyQYpnVe8uGgwVU1fHBkAKyapWoEG6VMhMntcrvgukKLIsQ", + "dp": "ZGnmWx-Nca71z9a9vvT4g02iv3S-3kSgmhl8JST09YQwK8tfiK7nXnNMtXJi2K4dLKKnLicGtCzB6W3mXdLcP2SUOWDOeStoBt8HEBT4MrI1psCKqnBum78WkHju90rBFj99amkP6UeQy5EASAzgmKQu2nUaUnRV0lYP8LHMCkE", + "dq": "dtpke0foFs04hPS6XYLA5lc7-1MAHfZKN4CkMAofwDqPmRQzCxpDJUk0gMWGJEdU_Lqfbg22Py44cci0dczH36NW3UU5BL86T2_SPPDOuyX7kDscrIJCdowxQCGJHGRBEozM_uTL46wu6UnUIv7m7cuGgodJyZBcdwpo6ziFink", + "qi": "Y9KD5GaHkAYmAqpOfAQUMr71QuAAaBb0APzMuUvoEYw39PD3_vJeh9HZ15QmJ8zCX10-nlzUB-bWwvK-rGcJXbK4pArilr5MiaYv7e8h5eW2zs2_itDJ6Oebi-wVbMhg7DvUTBbkCvPhhIedE4UlDQmMYP7RhzVVs7SfmkGs_DQ", + "p": "v1jeCPnuJQM2PW2690Q9KJk0Ulok8VFGjkcHUHVi3orKdy7y_TCIWM6ZGvgFzI6abinzYbTEPKV4wFdMAwvOWmawXj5YrsoeB44_HXJ0ak_5_iP6XXR8MLGXbd0ZqsxvAZyzMj9vyle7EN2cBod6aenI2QZoRDucPvjPwZsZotk", + "q": "0Yv-Dj6qnvx_LL70lUnKA6MgHE_bUC4drl5ZNDDsUdUUYfxIK4G1rGU45kHGtp-Qg-Uyf9s52ywLylhcVE3jfbjOgEozlSwKyhqfXkLpMLWHqOKj9fcfYd4PWKPOgpzWsqjA6fJbBUMYo0CU2G9cWCtVodO7sBJVSIZunWrAlBc" + }, + "tags": { + "purpose": "unit test" + } + } + }, + "responses": { + "200": { + "body": { + "key": { + "kid": "https://myvault.vault.azure.net/keys/ImportSoftKeyTest/2eb4a15d74184c6f84159c3ca90f0f4b", + "kty": "RSA", + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "n": "nKAwarTrOpzd1hhH4cQNdVTgRF-b0ubPD8ZNVf0UXjb62QuAk3Dn68ESThcF7SoDYRx2QVcfoMC9WCcuQUQDieJF-lvJTSer1TwH72NBovwKlHvrXqEI0a6_uVYY5n-soGt7qFZNbwQLdWWA6PrbqTLIkv6r01dcuhTiQQAn6OWEa0JbFvWfF1kILQIaSBBBaaQ4R7hZs7-VQTHGD7J1xGteof4gw2VTiwNdcE8p5UG5b6S9KQwAeET4yB4KFPwQ3TDdzxJQ89mwYVi_sgAIggN54hTq4oEKYJHBOMtFGIN0_HQ60ZSUnpOi87xNC-8VFqnv4rfTQ7nkK6XMvjMVfw", + "e": "AQAB" + }, + "attributes": { + "enabled": true, + "created": 1493942691, + "updated": 1493942691, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "purpose": "unit test" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/MergeCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/MergeCertificate-example.json new file mode 100644 index 000000000000..75271d4c3cba --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/MergeCertificate-example.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "testcert", + "api-version": "7.1-preview", + "parameters": { + "x5c": [ + "MIICxTCCAb....trimmed for brevitiy...EPAQj8=" + ] + } + }, + "responses": { + "201": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/mycert1/f366e1a9dd774288ad84a45a5f620352", + "kid": "https:// mykeyvault.vault.azure.net/keys/mycert1/f366e1a9dd774288ad84a45a5f620352", + "sid": " mykeyvault.vault.azure.net/secrets/mycert1/f366e1a9dd774288ad84a45a5f620352", + "cer": "……de34534……", + "x5t": "n14q2wbvyXr71Pcb58NivuiwJKk", + "attributes": { + "enabled": true, + "exp": 1530394215, + "nbf": 1435699215, + "created": 1435699919, + "updated": 1435699919 + }, + "policy": { + "id": "https:// mykeyvault.vault.azure.net/certificates/mycert1/policy", + "key_props": { + "exportable": false, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=Mycert1", + "ekus": [ + "1.3.6.1.5.5.7.3.1", + "1.3.6.1.5.5.7.3.2" + ], + "validity_months": 12 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Unknown" + }, + "attributes": { + "enabled": true, + "created": 1435699811, + "updated": 1435699811 + } + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/PurgeDeletedCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/PurgeDeletedCertificate-example.json new file mode 100644 index 000000000000..791e8aadb9b0 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/PurgeDeletedCertificate-example.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "deletedcertificates", + "api-version": "7.1-preview" + }, + "responses": { + "204": {} + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/PurgeDeletedKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/PurgeDeletedKey-example.json new file mode 100644 index 000000000000..886e95260d84 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/PurgeDeletedKey-example.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "testdeletedkey", + "api-version": "7.1-preview" + }, + "responses": { + "204": {} + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/PurgeDeletedSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/PurgeDeletedSecret-example.json new file mode 100644 index 000000000000..e1c29cd31581 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/PurgeDeletedSecret-example.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "testsecret", + "api-version": "7.1-preview" + }, + "responses": { + "204": {} + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/RecoverDeletedCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/RecoverDeletedCertificate-example.json new file mode 100644 index 000000000000..603f35ea65c5 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/RecoverDeletedCertificate-example.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "CertCreateDeleteRecoverPurgeTest", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/CertCreateDeleteRecoverPurgeTest/9ff2572a2c3145679057da8b7f6a4b1d", + "kid": "https://myvault.vault.azure.net/keys/CertCreateDeleteRecoverPurgeTest/9ff2572a2c3145679057da8b7f6a4b1d", + "sid": "https://myvault.vault.azure.net/secrets/CertCreateDeleteRecoverPurgeTest/9ff2572a2c3145679057da8b7f6a4b1d", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "cer": "MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1493938486, + "updated": 1493938486, + "recoveryLevel": "Recoverable+Purgeable" + }, + "policy": { + "id": "https://myvault.vault.azure.net/certificates/CertCreateDeleteRecoverPurgeTest/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Unknown" + }, + "attributes": { + "enabled": true, + "created": 1493938486, + "updated": 1493938486 + } + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/RecoverDeletedKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/RecoverDeletedKey-example.json new file mode 100644 index 000000000000..2050fc2a86fa --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/RecoverDeletedKey-example.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "CreateDeleteRecoverPurgeTest", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "body": { + "key": { + "kid": "https://myvault.vault.azure.net/keys/CreateDeleteRecoverPurgeTest/6fc2be54c6be4a7ea7bbb8a2a99a1996", + "kty": "RSA", + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "n": "v-SWMCmPNKoK_rB_pNXUl6Iwh9Kqd3XzQlh6SXi_slBishqP7pyKEFjNbUvMSlyvPt21rJupLbJr-yhsK2Rq2V6O0doGuCsoadgNGih1aVAuUJAJls1-b-G1IJjD18ArM4RitnCvJmQFqyK2RVHa3EpEfaQW4gcRrsRAhiJDjc1L1S3skdt-E_rZfL7DIh1ZtqFyQAqIWSAG0BXDdbgfEx1kJKqH-HRokDKeMCIaJtKZof6e-DJr3e9Iy8aAR7V-BsZ7vY7JMjyeEukMzEji4MEsIyOESL67DgFllDEi4OM_3WKyxr6uXxzHDzmppWsk2ykLsYA_ALLnR3ZNZCuL9Q", + "e": "AQAB" + }, + "attributes": { + "enabled": true, + "created": 1493938342, + "updated": 1493938342, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "purpose": "unit test", + "test name ": "CreateDeleteRecoverPurgeTest" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/RecoverDeletedSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/RecoverDeletedSecret-example.json new file mode 100644 index 000000000000..ab95a4ca7246 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/RecoverDeletedSecret-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "SecretCreateDeleteRecoverPurgeTest", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/secrets/SecretCreateDeleteRecoverPurgeTest/16f5f7feb7004280b7f3b8ac50cd01f9", + "attributes": { + "enabled": true, + "created": 1493937960, + "updated": 1493937960, + "recoveryLevel": "Recoverable+Purgeable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/RestoreCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/RestoreCertificate-example.json new file mode 100644 index 000000000000..f9c71ae7bbc9 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/RestoreCertificate-example.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "parameters": { + "value": "JkF6dXJlS2V5VmF1bHRLZXlCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUkwTXpnMVlqQTNZaTFrTlRRM0xUUXlaVFV0WVdVNVpTMDJNVEJrWXpNNVpHWmhaamdpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLm85bmpNWEFSZWVla2NaRXBsVTNjdUxQcVZlWmxFbGRDM01XOWpYR0h6bnBXRTdHRGVOSXJraGZscHdTWXFnQnBYQkozMFpUQkRpRmpROENXSnJfUGlsUWNDRkZyN0xrdWJhWUs0TW1zcVh5WGIzbkRJcUJkQmZIUVNpZ1ZET0J5Ym9sUlRNNDYzYjBTbXhLVzJheEdFS2NuZzQ5WFkycG1SR0Vrb0plcHJWZ0tyRkpOUGQ3cGJIS3hQSWdDOFlnT2xudnZxR280RlRDSzh0ZWotcUt2UzBfRGV6Uk5vdTZqZ25SekpxX0g2NGxWMk1hQ0NnUy0xbTlyOGVOTVVvSlhTV1hwc0lneng1RzdEbzIya1ZEY25vMW9rajlCMXNvbklkWmtuY1JybDJBVHNRZVlzZXdkUVd1VmhxRzVLN0pNQWo5YzBRdkxhTmlpdl9PY2pFcm5qUS4zbmI4azJ3SEcyNHFJelNNb184WG13LnJzc3NMNjJ1aUNfTm9IbG5zQlgzcEEtck1uY3g5R3V2NmJYSHpKamxwOWNMUnVaSDBSWlJYVXRwU3BPQWdyZ20tU3BxeEdWSjd2bmprbV9FSzJwYy1sZHNjUWtRSDB4bVFVcGZFNzN5b1VTYTNXVVNMS2VIVnJLdUg5MUtJR0tLODE5ejc5d1Y5Y0F3UjlzcHJxbFFWZnlKdlNFM2tnZTh1RVBpRFFVMFl5WnJqVjBsMGJCU3VkeTN1MVlsVHB6Wk1EWmpUcE05ZGtMclgtaGdxZ1FGa2xFa1hNRWlzd0RDZVM3Y3J2bFg1bnVzbWh5SkZCMklCd3dxNWJieHptV1diU3JOc3lFMmJmWEpXOWN4TFlQcnJJZFpfbkd0X29RSGVQcUFZTS1iVnpTdzdBRGJjMU15NTZwclBGLW9PSm40MHptOTBaaFBTVGMyQXNKRGFBa3R5WFU4WktOYUhFVUlHLWI1SGhUdFBuZ20wN0FrWEtQNngwaDhzZ3ZIaGdCeGpfdWRfQVpQc3pLWG1HdUhFTW9lRGhpT3NkQVdRR0pwR2t0NHVlbmZyamNSeXVlaXJiTC1RV3o4MEtZUnk1QklxbzVJc19RVHpWN2dqMGstYS0td24tazNsNTJ4YjhaNkRXd2tWZ3hqUlNXOXZnV0pVd2U5M1ZrVWtHM3NLRW5SOE9ueTNjWlhQVl9LbWtBTEdlR0ZzQm53SmQwY3dueTBCN2I5VWQyQ19kWEZ0N1BvbnFVNldfT016cC1Nb1NtRzRHbEFpUkVfQ3FrWlhkalhIMVItSmpObUNfdXlPUTdaN1BVaDAtNmd2YUxpcE1CamlWR1FwdzlEZDhmVmtCbWk4VW5uOUxPYXJmSXVtcEJyUE43TTJhM05KdjN6b0NkanhZVFVUMTN1aElpYWl3aExoUFZhT2pUbFRmTkpqbHhIbG5lbGJ1RWJsZTk0bVV1bW8wcjhKRlFMSDdfRjhXMVo0OC1BcjhYYXJwMXhIY0FReHk1WWYwclktdUU1dTAyRnRHUHlPZ0JfNV9WdFlNR2VfRE1mdENLOGVMZGFnVllMRDJDNDUxTldZeVVfeHdNUWdQbXBaMWFnSEdCb2s0ejhsSFBndVhCQ3R2WFFuTHBXQTVBamdOLWNoWjNwUGJmc2RkNjBhekJuWDVaVXQza2hYaWNDdWk4b0xidEtzQUdmckNOZzFwT2Q0MHBHMEJlVy1lNVE1WWQydjY4eFh5a2RiTXhFblFCM3Fzd1djVlh1QXBIR18wREZVVmZvSlc2aVBZcDNWVE51amM5M3QtMDcxWnlZbUZ4V0RfVThMYTAtM19RLV8yZ0pwMVBaVV8tMVBRM1huLXdSWk1vb3JkZGZQa1VPZ0lqdWkwa1IwZWt5RjZvdWdLNnJrSVZHaGp3YUp0ekdKczJLdGxncnRCcEs2MXZEaE5zbFR5VHU5OUp2T2RFTXhwRG5lTEg4NnlvVnhxT3lIT3lxNjByXzdpTHgtdy03Q3FzWTloT3dmQlBZZ3BQVlM2bm9oZVBocTkwaGJTX0lrM21YbnRkRUNMREtSMi1wWFh6bjlPRjZIN09EdHB4S0VXQkdCaHJ0Ykxmd2JZS3dmWmZSVTJVUHpkLUxFd1lQdDloU203Z3lSODNoYkZiSFNBV1cySncxRWl1c3FURWRsRW1lQ3k2cFp1MVFZWko0TUQ0OG5rVXMwdmVHUVhTU2Ytb2RhQm1fYjZZdVh1cWcyWk03MlZjUTd4ZzV4MmpFenFqcllmdjdTTGJINFZBcWp0aFg5LUdRaWEwWEZaS18xempIenhkd1B0R2lSOHJfMkFFZTgtRXFoNi1FaTZKdjRFZjYyMnRrNWFJUWx3R1pETWpGSVNuUkpRdV8xcnJiY1E3enZsbWhUSWFQcUJNRFVxeHBEOXNWUlhuSHdIaTl1b1BCUTllbWJIMkV5WDV6MEhWRXlDa1JEbUd3cmR2RGdsOFVzMUhURjVwYXlYZmF2WkZUZjl3WFZyQXpsRFBEQkFJVFMzWnVJMEJWR2pJUGV1SnRiako4S1pTczRFQVNRRTVyVjViTUpNQXcwa19nYkVRTEZGSjJVb0ZzcWU1QUszM2xGXzR5cGMxU0JaWjJfUzYtbEQyNkpyRFVJSjFFRmJhbWtoUk12bWJIT1Utc0hDT0lRcHdadlJzV3Q3NExSQ1ZyQ09jMGpUdE5TT1JPUW5XRHVXRlFXSzk1TkRGMG96WjIyLVFEMU9YOE9iU3daaHdOXzNfS1pHRmtVMEhNdzNjSTI5LWUxbFltRDV3cmJ0ZlRFbllOeHJKOGpuUWFBY2FoNy14Q0JKeUQ3elo1MXIzRVVyY2VnazBzc1dLeHRPVjRLcTZENmxuVmU3bFpUT1dfTU5aZi1JSzJUbnZCaVZIMHk0SkVGaUxzSDJHbTM1d28yYlZVaXJsT1ljVEk1NlZhdDhMRWhGaEotVlUyNk84NHo2dUJFZmJucEZLbmdKc3pfYVlucW1zNWV1bmd3ek5ndjdlT0U0cUdKSURyMTRBUXRWdEYxcWdrZHNnVllWVXg4U29SQ0NobE5VUzRNRGxhc1hwS1VmV19ENWIxbDRkbXZiNEZNRHJqakJ6djk5dGJSeGZFYUVOSFlYTHZFZnJ0b0pMeW9na2tmNkxlbVoxVDZRbnRtNlR4S1IycU81WU1vMnRJZHlQNmZNRmkweEYtdE1IaHNSdVN3VEpybW1nREcteHVpZllVNkpfaElSNkMzVmo2VkFMMW1oZy0xeW1pRXZuanVLbElONzc4NmFWdVNpNmx5TjJJNzZqY0R6SHZ0VW1ibkVvWWtORHNPQXdqQk9MNFBlS0VjR1hWcm5YNDJhNW5IRWM2cmZQdjZ0Q2tVSUI0UldIdzEyUTFiNDM2N1JvRS1PTWN3TnV6ampob1M0S1ZJbHo4UEFMOW9YYTR4NXlQeG1aVzZ0UUVna1pKeFhEcS00SWRtd1UzTnpVZUoxdGpNaXFsc0xRWDdlc29fTHRtTWJ3bm83YkI3bjRlVnZ4aUtQU3p3dW94c25aaGs1b3ZSSE1xU0NtZjU2MjJvUTZvWEdmNUJLWExlQWdqaE1Sd21razEtUzlGajlyc1hlT19VYjJOMF9hVEFLemlidXIxNVcxaHI3Wk1PVFlxOFlSSGVPaWxSX3Bkdjl5NTlDRDQ1WmE0ZXFURHVrNmRxZ1d4YnoyVVVtMnpwM3pvTHVKSVZ1Y3FIaUVRTVNfMnFKcy1xQTAwT2FFY3huZTM2Q1RsZVNwZjF5cjh2VjNWNW1mQU5zRnJBa21CMnBRWTNfZ21UbldTYTJ3UWlMa2RFRllPSExTeEk5UVowNHo4ZFRfbW5QMmIwWV96N3ZLa0VGQmFpNU02UFdPWjVIOUx1M3Rnay1fR0g0ODd6ZHpuQm0weWZZY3ZIOHJUd1QyQl9UZVRFMG4xcWFRdDRiQ0diUkFQNE1DTDl0SGlIcmlzWEllejQzZlZ3b1c4R2x4YmxKanlLWkpXbmlRNjlBYks3SmYyUER6d2NVSHhkZU5HNGxEZmt6WmFxU2lybGRzZlhXOHBGLWZ6WFVVWHR4eDF4Um5nQ1hJVkxLbU5ZbV9CNnNrNGo0VzROVFMwQTBOcFhsZGJCWjZWWmFDMDNvRHVGUFY0MGtwdWQ0WEd3Q1l3M244ZjFHb0Z6Sk42QjFqOTRLeTdtNE5YT1JsQ3ZaRW5qZTl6T241T1d1ZG9USWRoRzBobXVDUTZ6TXI2YkVaTUFoV1ZFdlREY19iXzZsOWdLWmVxNmVtekxvcmptOEQzLXcyLXRBYlE2Tmpjd0J3eEhMZzlCRllRRFdvaU9UVmJKN2VBcUVFMHVxVkhBcE9KbFVIc2tmQy1uV3NzOV9fRTFURHBLcjRfRE93NFhPUGNzT3dlVU9EUWg3cVFXRE1ZcDVHU1poVWE4MVVHczhmemZKU3JPbmtaTmRVTS10Y0h3R01mX3didy11dmt4UFUtV0tvNUNqR2M2aU5KMDB4MjZZdUpCWXd6TVFyeDBJQWgxMjVBWlozX2FvaFFpLWw3a1pZVE82Q0JVOVZsYllNMndrZXp4ZGhrQ1oxd080Z1NNbDlKU3A5ejhxNV84SU1WM1pma00xV1VqSGZMQk4xRXdFMjRxZFVzcWxyU3NZN1hQaVlpcXQ5ZktXVmZDTWw4RU0yd2ZHYlhxMUI4eWl2UlpMcko0eEk2MUdVUWJFVGU4akNTYTF2aUxxZ0FIa25IYjVjVHIwbDRhTW1EZGZKWnJxZEdpb1lPb2IwdHBuc3IxanRfZm1obGhJa1NSQnREUk5XWEU1OXBjVXlULXpyVjBxZl9sOHN2TlNEV2N3d09YQ3lITWZzLWw0T29xMldVWTVLQi1nSG1HYUJod0oxa19ra3V2S0hlMl9TY0loc3JjTXV1eW5aLW14Vzl5NHBBS3pvdVFsQjR0ZGZvbHdSRk5KX0tHYWJPZXJiWFdDT0ZTd0JVTjdNaG0wOXNyVS1VWG5od1IwdTYyTjVvMDlfbGN5eThnWDg1ZUVrenhuOGZ2NHd2T0Y2dUd1cFk5UGxpSTRLMTNqSHlOd0ZuY2VmRlp2b0dxVlhkcUg5RGJkYS0zY1FhbVFlNmlMek0wRDlnLXlFc2NBTkpKS3ltelVzemZZdV8yY0p0TEhsd0I3NVhLeW1EMG9nUkRvRkRwTmNPd1dRRUlwdVJwU0pfdWtzR2EwZkd3MGVBTU4tQmc1OUs3emhRWHJISUZOckN1S1VPMVdvTkV5WkM2UGlKSUwtUlRsTFQ2WlBNZmdSZzZiUl9aQk43X2dseHBIakNDaFZXMkZ3MnJFUDJJX1pSeHFqdS1WbmVwV2o4eU1CaHZXZzdXNm9QWm1odmVtUTBkQUljNVZTbVVaelhvNFVURmJxSFN2MGlyVTNscVk2eUl1MGRPd2t2MlF4ZENfQVdRUmdLSGRUeG1xYXFUSXJwclZyUHZ1MDFQSGlFbVRnaDZZVEZ6Yllqb3JEeFExWDhlTUN5Rl80cWNjMnhOdTJRblBIdUR0RGZkSy1NV2xJUDhHUEhSMmhPMjlCa0JJSEM4TlgxZmxDN1ZSZkZsQ09McGVIeWl0MGRSd1d2S2tieGNIWl9fRE5ZLVBNQlZMZGpyR3lxT2JoQnpQZHZMeFpXWVU3THNRbnM1dmxiMTc5YXczX3VmclRIWGs0MVpjaDY2ekFRRl9tekQ3ZEVuMm1fb2tBaTh6NTRwdzdxUDAwNHkzenNPd0RmR0htYWF2c3dGMW5NMUN2YXhXajRINE45dVNUaV9DM1oza3lTRHlUNGdUZjNqc0FKUEJybXdSQVBpaU5PTTU3c0x2Y3dJRk9ENnA5QkdWbjFwbjQyZGRTU3A1M3JieTZEcnlwcHdDaDFrampQX3lCbTZRZnd6MElGUWJiSG1zVDNVa2RMb1dURjFSMF9sbjJtR1kxU0hHT2o3VHl1YnQ5d2xLVW5nczVMTWhVcHo3NU1LR3F6UkFnWXNKcHVKUVl1RVpKeGFPSHNmY2VwakdrcFdoMEtfWkhZUEJESzIwOFVqb3FqMDdlVVVueTBaXzJrNXUxTjQzWGJ3V0ZvWVBhdndheW1MYkhWdkRwbzdwMU9JT1IyNkt0SzdPeGlnZ0ZybGVISWNaODFwQzRCdlNzRnZsY1BCZEpHLTZxWTU0Q3J0R2xhaDRvQWplUXgxWS1YU0NLNnZLYUIwWnZHc2lIajhRQ0ZURjRuLUJqTWIzWDcycDJ5Q0tPRlpMRk5qcVR1aHJoYXNnMi1pWTNOTWdwVEQ5eVBSdjA2X1VpcEVfYjVsQ0R0Mmx5QU5NYVpZR1RvSmJTSVhBcFlyU1hEM1dFWllhTGUzQmFSUEJUYTAyeWpyVFZPRDRGNHRFR3c5MkZJZThOSk5NYXRXMFhPSFAwVWxKTXlQUDF2MVdvOUh5aFllaDFfdWg3SlRLcS1hWnJjOS1Xd0ItQXBKTHBQeGxmRzlGZkgwdjNwSTl0Z1VndWJmSkJQVjMwNll2MlNqQ0M2MmVYN3VFTUgzcXQ3TmFYcFVsNXZEVHpfMF9Vc3VlWERQcDNqV01XQTMwenFaYTRFT0dXdElMb0tEM1RjRWNVcmJONGV1bHFQSkFNcWdWdmk2YWRGdTgxU2w5cU1rVVUwaWpqMjZhZDFaeVlEUUZtWlJ4NjJYUW9ZdG81bXJ0eFZhYWtNNndqbkVPSUdJaHhBTnJoX0dNVzVxREhzMEV6TDU4b3lOY0Q5dE1MUC03N1FCbTZwUTFsR0swMVJ6Y3FzTk14ZzRMTzl2ZHQ3NFpIdEhMXzA1TjF2TUt4TE5GbkdhZmwxN1E0eEM0Z3NQeXpYdzBjcklyV2tIQlNQX0NoWE94SmZORWdyNjJOMXEzQVJZa0U1TVlCbzctM3djb3dNT09GcTlrakN1ZGpoekplRjRTUHdfMnFVWVhZRTZsNXJTYjYwUFlFSkJxdW82Skh5ZmdlOXFJX0Rzdmg4eEY1STJfLWtLT2pxU3FZam02NjU0cXVES3phQ3JWLUJFLWtQNF9DOU5OQ0xTaEVWUV92Z3hYdDhzbTRWNGNRMElDRmFzaWV6VnNuV1QtYmRQTGxBT2RqOS15RmhYVTRUYVF3YnZqQ0E2UHQ0aDNVWGdnQzNqWU5IMmJtRGpYSzhFdFJYRTV6cmJsTDRKMFZ1OGxHQVBZaGtOcGNOakNrNWhSSW5jT0dybE9aUk9jdTdSeVczR2JWM2Y1MGJKN0xLNHJjMnJCMTZuemhBdk41WXlydWdwQzdCOE9OR3NTY25ha1V1alJzRzZGYVpydDNzTDJMOW5RTUNoNE9INFF3VWpKWFZKUFJ2MHhPTF9jVEQtdjk0QWgwbWdtcFJ2Q1dhUkl5MXRxeDZHTmZ1R1Nyb0tObmtHYjRiRE1oblpZMmwxQWluWHlCMG5uRGlvci1EUmo1cjhRZi1iaUR6cGhTallzZTZrakdLR0ZObzU4WjFfaGxEaGFob1pQX1lRdlBtWi1Tb2pNaGhMRXZqMXEyZzZWRVd6a1FDWTdIWVEwM1Y3cHVCVm4yaXM1NXpBSGV4cGpERWoxWDgxWU92bnVTdXRhMGx3VkFEMkRoNjZDcmM2VVh2SEtUZTBCeFlsQWdVdkhQc1BkSy1OdVk4S3RaeGNqTWNDVWM0OVl6VW43RVBTamFNaHJ2Ni1mM0pwc09Na3JwREpLM0dPTUVRMUV4cnhYV1lGaGtLaHR2UXZkMXZCVS12b0pRcWJveU9vS1hMM29Xb0FRVnljWlR3Y2laeW4wbUtkVF96NDNFZGhNcDNKS3N5blJ3OVZtSzk3Q3lldGl5LV9HaWVMSngtWDladVMzOUdNa0YxaFVmYmkyc3FJZGZMZ0diem5uMTluTlRVUDlOR3dhaWhybU9Ib1lZeUJ6WE4tby1UWUxhSS01bkNuQ2FSSW9QTF9XSVhyWDZPSzdZU21IWjk4a2xJS19JNTlPSXlWSllrMVh6bGVwd1lPLXUwU0x6bTEtN0dKSE54RGVOMlZhUEk3TThVem10X0x5alliWWxocFFJQnNyUktsMmZZeExKaGt6Q3NjcWp2bVhDemRLVDNhNFV3NDJ4eDlsOWl6dFQ0UmtnV21fYV9YWWk0b0gwdjNCUXRSZ3NfUTBPaGo2T2Y2dEtyZU5XZmcxVDRjMk01SERJd3UxTkl2QXBqNzZtOXJWQkdPWTZFUnhfa2Y3d2twb1g5dWRvcjBCbEx4a1FCc0lwZXpUdzc1MTBncU81Nm1UWXlBUzFCUVdOY1Q2aWhfN3F4ZTVoUkVlZVB5YUpFMnhqR2JNWGg3V1hGYjN0ejVWVWJOTFpxMjBiM3E0UFdkdjJXX1Foc2VUY0JTRDY1eVFPYndTai1UcVpNNi1teUZHb3B6dVdfRWcxU3pzNzRaY3RMSUxyN3pMLXRyeC1WTTVfVHllMVZXbG9ZOTZVYUJyUktpQWU1SVhKMlBQd2RIY1p4SWx4N3dBRXdueXVOZXA2b2NKcXRwZUJ1elB0LTFaX3UyWjZrQmR4V0lpYlVEaGxOU3AxM1NkTGw0Z2hkemVqZWFaYVllRDVtTGltWWJ4dEhsQ1ZiTm0yNU1ZbDYxMFU3QlZnNVJJSXB6VUdmZ2Z5NnpJRzRLQjBMR3BISzNhdHRRUExvQ1VlTDRYNVdBUUFsb3BRa0RKOU5lTHFGdHN4cWpZaGJnZ1Z5am9ScjNPOVhzYzlJVEtVaXJaUDlyTVl0eFduT0tUck9YYVk2WVR2Wi05QUhpT3ZfdTRhOElTS01DVng3OUlnXzdqTjFfREhjdGd5cEEzVnpkbjNKdlJJQTlfbHZDV2dTSS1NUjlPQ19xekhIUmU5dENqWklDVzhwRURSYVhZOHc4UUQ0bXJicmFLTTNsWmtTNUF2NVp2WjFRTDJlZkExbXlJdmN2czhmekxRUFM0Nm0xX3ZPVzcxN05ydDQzeUcwbUZxZnk4aExaZEUzQ2RkMzRtVVFXWVdqSkdvQXZ0VHBXRmpwWkwwOERjQUd0RzVzdkU0Mi1WWjRqSVVYQ2JsemZaczl3N2VsNThvRkJLUng5dUJLby1PWmYxTVloVEZrSlU1V3YtUEVreXRPSVpfU09nZVM2RTVMTUZsOVpZenZ0QkJuWWF0bDY4NGpEdWx0STh4LXpmSHdwUEFwNk9CQVpxalk3S3JoSVJuVGRoc2Y1VUpCcmtvU1JGUFlaaXE4RjJLWHA2Nm1PbDMyRm5RTVprMUlDVkxiYVpnUFlWNnl5UXpZdEdhbjhOc3BFTG10RWkwMVlTZE1ySUxkUF9TVTZwXzJ1NU1oY0RPMDF0Y2hwMHp6eUVfTVp4YWJodXpMWUVIeXJvYl83cjFKdWNjZUQ4SlM5T3JBdEk1YXdsbEhGSFRRWExOWGJuTHdTQ2JrdHNiTGFoa05ya0ZXR1RDNFRzUlBfYTlHMVhFTE5DRkhaMVhvS3NsQTdMMzFGaWpyNFpEYjRQeW5hT1BrSlhCcEx6MGNLN2FmeFVxNWlySHhZNEQyVkdNT3gwUmc5UEJJeE1vdzN6TmVGZ3Y5dzRTdkJ5VUpQdjNGV3huX004M3g5dldiWFh3bU9LbHlLNVpWQi11LWxKVno5Rm81YWRfVEtwUkxqSGdNWURKNU9Ka2dhaEFQMmhOaG9lb0FicnBPNzVYT2tYZ3pONDdwVW1kdzhmZV9FN3ZSeUREZi1LNVZNS2UzOXRPSi0xRmxtemJVc0pET0lScHp5WVl0Y2Q4cGtPU3JQYnIzMWdJNFRIUjJHV2xwZWJCZ3VhYmppck9UTjI1Zy02MmRPWWVKNHVwNjI3MjdnbWNQWF9EYmJfSFdrTnVLaXBmdkJ1UmVNN2J1WE9LVzg2bllHSW5ZNzJZZ2lvYVpIaEJnY3pHbktuUUlkWTJ2U3NzQ3E2b1FSUGJqeHRQZ1gxT1h2bXNucmNBencwN01ULTNueWF1RDBfNG90RGJueF92dm1fM203ajBwcjBGUWZ6NWs1UEVNUG1sOFVhenFxX2xEU3djV2JOU21JbWF3OWt3U2NXN2xrOUViNTRLRTRhaWt2bVRxXzRuN3lkSDNQblI3bC1RMXE2X2k5VWdHUVFfSmk5UDZQbmszQzd6TTVYbDBpYllEVXVUV2FUdlRrX2ZjaXo0VUJXWkV1T0lLU2xZaHVBVzFQUTJPU3NiUWxPbDU4U3ZvTEYtS2w3TmNkRXRBODJVWjdkLVFCN2xKNWFCcnd0Vmx6TDFxX2Y1UGd6a2NtcW1pLVViM2tUQ0xlNjJYbzN1MmFvSnNTQ0c4bXhwZkJ6dVFVVkk3WXdTa2ktWUtNUnlJSGhuOG9xRDNQS0xMbHk2LVZkZy1VREE1RWhhLXA0TnZYb2lLb3ptRHdBZFFpeG1IcnJTdUEwWmh0eE14N0FSc0pqc285blZKR1BOSzhCeTMtbXQycnNOOHlMdHpyRXdkUzBtLW1sRHRKak9CWHJ1NmhWOFBPeV9vSWVzYmJtWkcxSk96Tkl5YmhPOWdNakpsNTBSQXVmcW1sSXJpOEVXQk9vdzdVT1RKQjgtTkR6VzVXdWNiS0VLOGotdWtSYXhhQklPcTJBTnI1Tl9hTEF2RFpmalp1cDl1RGNTc2FUOTNWR0dmQlhHX1BYRlhGWnNtd2NnamxsQWN3bkhCS2V6QWd3SnprRXpFaEdEOFhQMVh0dXJPZHh2YTRyd2ZtVG1yM1pHVWFmY0tTUm5malpnVERSVThVRFd4ZjRwMjB1T1h5RzBBUzlJLUF6WGN0Nm5EOFVQUlB1WDQ3UG1fN05mdWFVTkt4SEZ2RFdOdWYwcVE1OFlvZmhydjJlRDlzUFJFWV9CWjhXWm9IYy0tbVZ5MmM0aDdvTTUzQlFKbTQzRzNkaXotclRwWE0xUDExakc4em5XU3RBQkJxbW40LXdKVVl1UGpDV0VtY29qdGtRZEZmcjQzRUNqTzE1SDJaZGN6MkphZmpUcmxPdWlQOG96ZjEwa2RTYjBURTFVOXI1dHRIU0ZzOUxPVlZHVjJnQUxjUGtMU3R0clgwMXZHMWZLS1ZTRVI2TzlZM0pZYW02X0FwU2xONnlRbmlqM3NJTzdKc2xYdHhaMzY2bXI2Vnl6WmphajVVODlJSjdJUlY3eXBkOWtuZy1RRlZMT0FhRGU1eENvZG1jRjY4ZGp4LTZBVWpQWnBHOFYxVG04OXh5c3BTaU40M0lmLURacTlaMXFjSXNDOUJ4XzlxTHE2S3kwNTIydnBKWkw4NEdCZElXM0FuUUdKbFY2dkRXbThpcF9LMjg2NG8zcEg4UTdFWnpqc05KZ3p6RFU2SkU2Y2psTVdhMDR5dkVMa2dnUm9feVM1MWUzam1BNUFFdWpXLUJ6TXlzTjVkeUpiZC1HcnN4VFltck1wMWI0dFNhMXV1ZHBSdWl2cUFLdV9qbTBvYTA4UHZqRjJyNjRXYXZQZHVxcUs2VGUtMDc1RkFQNHFEZE5ocmpJSHpneWEtUWowY2NCRWtZbUo3di1mUWxneUxzaF80bHJZQmVyWnNCMDM1Z2Z2b19CakQ0Q1VWVWFTRkRya2U2OE41N1prblU0UkZXN1NNQXViaE93WjlCd1pmT0tuajV3bDhfemRFTDVLVDBQUm5IejRjQk01OTZGNXhleDFORzNqME80Y3JDbzVod0xMMUVwMnVweVlULXpfTkdkT1MwMG50bGt0dnNKMGFZSURuQy1SSDRYcUdBUXlpY3hJVzNnTXh3LUNvYlIyUGdPa1dLTVBJN2xFelNLN0VKcjZkZENmblhHRF9scE9HSXgtUTROdjFOU3E4VGw1dkRtdmdOXzZCOEhHbmV5bXdpQUlJZ3NpWWhfUmR0NnBrdWJLVF92aFkwMTI1WWZkck9NaW9keTFLbEpNR3NJNGxqX1dJYVRHQjdoY1dtY0stMy1NNWlZVnJUSktaR2RZbUFobXI3bkZVT28zWFFCZkVVZFpKb2Itc1R6eDdNYWttd2JEcHdQdHB5OXFQem03akI0ZC1yYmlncDI3azRTYlVFOXNFWTZVeVVJVk80Y2l5R3ltZThpOEdLY2dSWXJ3YTZmVlItTnNvcm16dmd5eGZVcDFGWDZuR0xNbE5VMDNEblBVU0JLT1RWTzVnM2JuNG1DNWI3anBVQnUwQTk5R2ZkTEJGaXg4dURwR2NsQm51TFhncjcyRFdCRmFKeldkZXNZbTlaLWk0WDBaUTh4cVZwdGpXTnI5Sm5sVDlLeDVKZXdRSHZkeXRRdHRaTXc3TS01Unc5UHJreklWd1JPZE5PVkxwRWl5RmVqM3YyZmJGRFVoRmg2ME00NWRMQ0hqU0k5eC15dDZ6LUVtQlBpdGtkcWpUT3hLam1qVV9WNzIta09tVndhZkY3MzdTcVRKa0lpWlVic002bEJoQ3Rxd2cwNi1DelR4U1pMYVgzOF95dE51aUY1S0JfcXVwcU54SGJ4TTVZN0l5SnJUcGR4MG9qNFZzWDlxWkFjTGxCZnRNaTFUSTVLMkJRSERSNW5FY2UwT2J1SWpjdlNrcjNYMmZwUWQ1cHlLdnBXcXpNbnNuQ3NsVnYyWUY5ZDZHVWFKeHlfQ2MzRVJqOXZIMnRJb2hBckh6VzJlN1lNUTRyQnducnowOXc0aWNnNG11TDdVSnVsVnJLcjdJS3FDYjJyWFViTDBIRUVrTUd3T0pISEVnVWxlYzRGajRNQl9ZNnh4SFJuekVKMVVBRXVTeDJaZG9Bd1JsSjMwRHZYTWMxcFo0NWktYXE5eV9oOFJxaUZSUlQwSktjYzFpeFA1Y1JWRmVpbFhKWXN0cDV6X1pKZ1FrSTdCQlBaR0M2bkZ5RC11LWh4MzhQN0IzQjdUUzdoWVlXdm9ETFpGSkI0a1ZGRUhvNlRKdWNDVlpJaEFMdHlfN3dreFFxdU1mMFNOREQtV0FPWUJkY3JpZzZmYnNKSVhvc2lMSWNDM3hOOGw2X1dzNk1UMXdXODZkcWRUWkJnN1Z6YUlnREJ2RDRNakRLdjk2M0k2c3ZmeG5FWWNEQ3dDalo5M2JwUGRJd0htZEY1ZE0xTGZVLTExMktBN3dCQTJWYjU2cFdBMWk2QXo3Z1N6RXhQRkZvVkNBdFlJUnBFcHh5SVBaQUVHV05zeDNpNEk2Z2lyZi1hUmFWejFXUURCemd3ZDd3TlpqV2xrRVlyRFBBZTFPVnl0bU9HQWlGZmZiQWVPaVF0V1lzMHYzVGFTOGcydk9peXRvakE4ZzM2dDQwQTB6T3pKYnlzUUM0Z0hjODJuVDdQUDJBTFdPU0RLTmxSX2M0eHFWTkxjdlhxZHFBNmpVRlBUY1FONzk4U1FRbGprcmd1bzhEcGxTZTBnODl1VHUwV0ttcFltSFA0WEtmeXRGRWlBR1FDSmIwZUl6NVZsTlAyVnFiRGRMcW1JSzhuNVlNSUtDY2ItY0FUdGFoRXU4QkxQcVE2VC1aa2t4MF93M2RmZjhVX3ZCZUFwS090SERMWUVqcTBnVktxUHhaUWczY3RJS2oxdXJPeTIybnJ5aTlnZWZVc2QzZUYyMnBCQkx2YWVWSk96QUZndk5YdnRiTXFsUW1CXzQxNG1tVGVtaGFlNktjOW9KRF9sLUxKWDZPU1FISlo4MHQ4Ql9VZkdacFZES1NubmFmMmY4UHYyMy1EUmlGNlNyQ0ZKN0d4TEhUNXJSNzU2MW1YUlV5Qy1leWtocVI1ZFZSZDZhOVQwSGY0TlZSbjJiaVdxeWhPR2VUa0hKazE0YllOUFdYTm5XSHl1VTdyNEZoOVVsb2lES2xIQjQ0VjlmYS1YMzE0c2VHZHRqUFNLdWhFRHBMeV90VU95aWU3aThJaGNIaE1XOHlFNi1Oa0lZSnF4cU5EbjAwdUkzSEhEUWtGYzFQV0RYdlVIcnBJUFRJcFFBQ3c1dkNWT2JpUmFoQVBJM2tFRFh4ZkY1S2VLMXRuS1hsZWRxQmRIc3lCUkZuNnp6T1p1UHdOWktKNHlYVDhoS2wyamQtNTlqdWpibDBmNF9WdVJFdmVQOW9FWWtTOHU3UmlBVEVHa1lPVkg3MkZXTzBzLVNJWGVRRkQzX3VvWjdrM0xjSm9GVjlXMDZrQUVWY1dURVZGRUlwamtNMy1FYnJSUVdMcy1heWVYQkNFSUxsQ2t0di1LblA2N0pyZFV0bTI2cnFlVXZ5MzdTMTBCTE53YjRiNHBvREhMS2FveGFuZy1iRjZUb29PR01UU01MWXUzaUlLc0R3Wm9kZG1WR0xyQ3FxNWJJR1BFZTNoMnc1RjFNZ1hyVEU2TmFubXpKckh5eHVPc0VyaGctaEpGeGVCcWE4WjZZWFduTXIxNDhLanNoYVAyeVpFSWV6OG81UEc3cWRWaHFRenhYT1c3eEQwSTUycjBvbkhxM1hzcV9SOGhFby1UYVdPbmY1NW1YYTNWMk81LV9XanZxZThWdzdwTUF5dG95dmh2NTVTVk9xcVdkNXNIdGhITzd0OWlMdDNFYVMxX0ZnaU8zVmVENmlvUVBNNjZsWmhaYkpZZHo4b1RFeU9SR09KbkpjSVpqVm1YSlJIbXF2eXZsUlpjdkVMM19KR1hEOEZGNHlBVE0zaGhlNDN6VEJVdk9oYlRjckhNQTRLZjhWczR4cU02QWFsczVBZzRUbVZSSnVLLUVRWFZCaFE0TEpBbEgxVXZzN3lKYTdLM2hsQlZEMWo5WXRWS2htMVhPNFJySTNrZmVxYmxoMTRHQ1NEdnI2OExyTk53SUZsY1JEY1pKalBOQi1GWGhUd25PbW50ZVItOFY0UTJVa19tczdTTm9ZUElWRnJqY1R6X1ZkQ3dYRTFmMjNocHpqQ2tnWGlsSUlNNEpNMkZmcDNTZTY2c1JHc1RXXzBBbF81R3Fqd3ZfZFBYWDA0RHJNMFI5dGljTHhLczBnM3hkSXF1M0huamxBRFU3S0c1Yl9NUmxUdWJCQ3pEamtJQWRRUEFwcUhaWktnODYyLWloMDE4bERfbFViWEwyMGhFNFBNbTE0eEg3R0dPQ3FWa1o3RVU4ekd5Yl9xWHV4RF9LZHFLSVR5eUc2WC00MHhOeTJ1cWpDMmlvVVpiM25Tam5kZWFiX19kbC1jMDBLWkU4RnhTRnRMN0RreWxpTWM2Yy1VQXBhUlZKQy1aa2NBaXlPZ2NBOVZQa0x5a2xlcGRNYXY1Y1J2a3FvTHhmS3RMU2FhS0taWEdveFd5OWp2am5KZHZfMmZDTXlUeFdOUWl6MzI5NG9mNkNNY09sTmc5VW5iaUlHb1JVX20tMHQzamNRWHBrZ0pDWlMwcmQyZ3RGVExYdUVlYU9ZTnJjZ2dPWkVQMkstc19kNUlCU2JqNXE1QS1HYU9hbzFuRmdFOEFlMDdEVXVzeTBYeVEzd0cxb3JIOXUtSUxpSHpyd01Ickx5ZWkwYmpYSm9HcVBuSWd5d29nWjdZRmF6a1ZSTGE4OTBZQjlXR2p2SEdqZ19yYmVabWRDWkFoalNiTlRveFN3bGkxMnh0bl93WkNWVkhlNzUtSGNkTHZHaGgyekwwVjlROG84NFI1NUFKVV9fNjI2REMxT2w0cXVLcEt1Z1EwMHowZElPbzMwcG5IT3hqa2xlcGRMM0dyN3dHNXZsSUJKbXVWMlBReC1Hc0JmX3lYbUhxOXBZZ2RJeXl3ZjNqSjlDcmROYXM1RGNseUExUS1Sa3MzdWtyU3dublN1ZE5OeTNCRlJ5ZkgtbHhWQmpYSHQxUUlQM2JLbjRvNmRPSHNLclc5XzRPVnBNREQ0UjNMRmpYNFM3MDJ5ZmdXSkk5Wld6TDFadk40X2t0Zy1iVHNYOC1zdzJfa2Y3dXVldmJmMkYzLThmM3lvNDNUZ2dQaDU2TEZjbFNidGdaNE05MDRTLWF5SGQ2NkhVbmU5T1Axc1NldGdKWXdZZVN6TTgzY2FUUXVqRVA4bFhEQWxKZGJ0MTRhZ2FValJkNlBNLVVIUGdGUmNtRTd5Y0k4YzNSdWxrVkU2Wk5qeUU4VkNnaFRoN2JMNTJNYXhUcVMzQWJKNUpHak9ESkk4ZTczV1BFZHZPZ1FPNnZvak0xNDFnSjFtaW9rTFNIbXNwVWRhSFdIdkNkc2VHeTZyZmJfYktmeGJGS3FNTEN6T3VKbjhxd3hlNUxJQms2djJCUmNzM1I4ZnI1VjBSQXB5U3J3bmRuWExFRHdVRU90YzdwSTBqajVNeGFJaWxKU1FMb00ydXpiWXZaVE1INklXSndEdU1hNW04MlFCRnV3TWFZRDd6WmNwM0RGb2dFc0N5YnFjZFd5SFBhV3NxQk5GSDRuYXdwRnMwQ2xZMWMwbGZQR1RnTWZJeTRxRnV5U012cHNkYWZORUdBdVFpYU5zRzROSnNJV2NYbFNFQ1FsLVhRaHF2YkpUWE03NldPVTVld0RneGRGeG5WREVhdFRlQWZZaUVEN1ZBelFNUXNFenU4VUx4VmI3RWJzX3RsUW5hU2hVX3E3RjNUVEV3VUpPdDNCeFdPcWFCbmhNdUdOdU5CNXJabFd3YVhrUTFNdGxwOEFmWTBXSF9kX2F3VXdQbUpCQXFEX0xKRncybWVBS25OZl85NlZiUW5iU2J1ME5uejlvTnVXVmNMcWZIeDIzX1JfVVE5enZibTlkaGlSaUxSMnVDUzN2d21XS1UzVG9vbks2c1NpeWNmYnh2QjE1TnFnN2l4UUV6M2U2emVkX3pQYy1GdF91ckRrR1dOTFJ1d2Zyb001REQ5XzQ0UFVvLU1SQ2NiVGp1emxqQmVjOXRUc1NRdnZWVnp3WHdNY004Zl8yWEJxcU5OVl91b3V6dVRPWkFfbkNVTDV0T1dFSXZIZmlDRWxJV3lrS0U1TUFUUVlUY3FRd0VwNUlBeDFDOXdudnZtVk5NcmFFNHpDSDJuZllsUGNIYWpMUGlXcHpUdUR4anJGeFhIbVBUc1JTM0Q1YU1yTmM5emwyZkR6ckJsbzV0Y1pPT0ladlR4X0ExeFA3RlFnNjMtbUZzTGlRZG16NzM1bWVjUEFmdkROMnV4dWp3YXFITGx5NGlLelljVVRjbHFhYV92X25VM09ESUxkcWt1S1pCZFZzZGwwX19YeDdkSlFHNG5nN3kxU0d1V2Z1NEdRRnV3azE5b1hJM0ptU0c2WVZHSW5wSUlNYjcwSy1BREliMlZBWjlVaUloMW1HNmpUZWRHWHJtMzF5b3Jnak1PUlRERU1rYnZCeTFaazVrR0E0V05aSmRKRnlSQUtXT3VNbVZOVXRWcTFWRHpkTkpNdGhaWUZHQUU5MEtBZVlaZDdmaFRSZlY3ZlFYdzhWOENmM3IxdmdMTXJyZ2JSOGwzeUsybFBLMnhMcFl0cVpRanFaREpvSjlwUHBlcHEwRF9Dc1JEcVlDVi0zNE5GbldXWklZQmtmZTRPSGFFZTRlXzNQOGxNVTFKUWlJY1dXWmJ1ZUJXSnlpNDQ1b24wRm0zVzdlYTRnUUJCN2c1MzU4MUJBZW9ZQVRUYnFFV0J0LWU4OS1YMDd1Nk1vSDVKUU80OV9kSW0wNU11VVlrV3ZQODFHNDMySDFPYmgxRUJBNG1WdHYtM2ZqeGVDRldiZHVzTWxxa3RYbXVodjBEVWdmWGh4OEoxS2JaMUdjN3cyT1E4S29KZXNGM2QyTzIycjFkdHRIamdmbHBUZlVXOGFaN2hPZ2otSy0wRHg5dXV3ZmNVVWMwUnd6bkNMbVdqd0lnZ2NfQWZJbVRpd1ljZWgzQzlpVnpLdkcyV3BfZHpCMjgzM3YycGI3SlRKbmFYT3VSSlhiM1JQS0pONGcyVXV1NnNYc1JBd2FlTnVtVVVpM1B5b0pCY3dhZFRsbVVrQ2JNcjJMQzBzYmZkbjNMOHk0bTd1UGg3VTJ1RE5EaGk1LTZaWUNYZE5SRVNzajVrR0QxNzJoUHRSVEV6RzhUeEN6Nlp4dE5MQ004a3pHVWtjS2FLeVctZFdaaFVWRENsZVdnQ3F0NWdvNUI1OEVaV2RJbi1SRTRxREZ5RlBDNDg3bk9nMUVyVmZBN0NHWldha1F2QXN5ZUhKb3dkc0RrdzZIV0x0Y2ZwQTJENHEyZ1Z2aDdraHVNMmwxSE5DdWxNOWJSXzZZYlhuTGlCMzIzN3Zjc1d2bHpBVmJCd0J3WHRQT3RGWEEwc0V3c3Qtb2N5V3Z4WFNsT19kdlhRNUdHa2pLcjhFX1hzM0dvZmlqaHpsZF91OWFROGNTek1XbE5xRGNPWncxdncxNUtaeFNXR1QzcDJ4S1VHLWtSZW1Jc1h6VW91TFdma2RCbk41Vk1tUTdJTXA1RkFfcmdHWnFwVHByaHJMSlVaeTNZN3I4bG1McW15Z055a2FMNWkyVEpIT3RWVHB2eHVzck1LMnUtSzdpbUJVMHlkQndFaHNOS1RWMXlGZng4Q2JZazJTeUo2QVlWeWZLM1FhVEdqb2FFMGxocGNPRUIycmpfUDhFWHAydlJ3TWZsYjBtc2daYTFCOE93d1BXRUJMdlROVjVzUEYycFpUaFlnM2xWVzFjSlZlTlBLRTJfYU1zS0p3UGVIY19YTTNrdDBXVkpMbTBnZzE2ek5EMjlsaUlfNTBjOW1VN2NpVG1hNEd5ZzJtSkUzVkg3VWxUanVkRldmNTZpSEZHNlJpU0FqVUFtMmtBTkNGMjFyb3ljVUhFTGo1aVlQZF90S09vcmJvRDlWRGcweDRDc3BQMmRKZWVzMVR6aVMwNU5qU096cnd4dG5qMTBBZ3kyd3B5XzUtbVl6dVJvYTUtNXVPSFhDRkFNSW5QQ2doakFudHVYUGw5REJRb1ZSMWYwUS1NdnJWQU1Qc3pfaXMxc2xZaTlFT3NDUWp1R2hsNGlxYmVNWWRhbFVZZllGYnd5dktaTGNlZndjaVdpY3EycWhpM2FxaWQ5WkVwVGRyR0FvRjItdmd5cWVsSjlRb2NfSG8xRldZdjFrVUR3RTBmQ2ZlV1FteHBFMTQyYmlZNVNnV01CaE9tVTBKWkt1c0hCV3B1ZWJ1TDVlc2RHVEJwRWtpcEpHWmtQSlB0YzBvTlJSVU90TVdZTTYxbXZaXzRTTFpqOW9kZ2U1akMwMHBzSHVYTUExTG5USDZ0R3FnSDlTd1Izd08zOTNTQnRMRU5oNy10UEVEVWc0dHpJeXAxTHQ4R2dWS09DTl8tc2RCbnlpSjJaNmYwSThEMXVPQnJYN0JGb3E2aHlkOWtMWnZiX2E1VHFUdzNKZDJCdHRzOHBWS3hhaXFtTW1WUmZPbU4xYmRJSHhlVUNCQzdXdE1LZUc0M2FNLXpYZDBfUmI4MkxJTVVVRDJadUxXb0MwUGZzUmpiYWNpOVhBOFlBVTE1WllTOVh1YV82NUZYT2xxcl9sT1RuUjd5Y0JZY2J5T2tIeGpIWVFmRGkyQmZRV0NkMElXaF9WcUxNZWozT3ZEUW5FZDZvNEU1N21FQ1lQUEJUSkFIZTNHTjU2UEl6T2xLNTRtVV9USUNpX0JKTkRXemJvdl8wSnVEWExZMmUxZnhCOXNURmc4c1hINUozYUhYY2dpYUdSaHlnMjRKZElJV3dkcXFRbmlLZWNfS1IxVTJhbEVqX2xPQTNNb3FadHk5Zzhnc2RCMjRmQlRLOWJZUnc5eW9OVWhrSl9fM2NxNlozVVFvc3VrWklreDJwVlRoTkU3THdEQ2gxbnVRYlpvUlZrN1NKc1pjWkZ1TTd1SUJRWUNVMGRIQzFRS2lublQxc3R5WDduM3RRLXZPWGRsSENaOEtmSERpR2tsemdKUkhVSFUwdU9JQUNuNGtUbkRzN1ZrRGtEZ2YxalBhYXVYLUR4X19Cdm5oWXIxRFp5eS01N2x3SG85c21rZDFNcGFUVGRLR0cxOVktUDh3MmcyNXJCcVlWQjhBZXRlbXQ1bEtZdE8yckhJNmZSSDZrLVhSM2I3WkVlSFA5MV9UTkc4QVZtV1djMUhaMmdYN0gySzgyUzRoUk1JcEItdkxUaFI2QmV4bTdDeXJHSFZqNHN3M0dtZWd0cG1obmJlNEZQRVo1UTZnNGhScUpmYTJvOUswZDI1aktwaURBTFllRVY3Y1VDUjhBVjRYNU5WR3hWdWppOVdYN0gwaU1mUjZHMmpIVkFZSmloSkxOSC1JSENWcVhxdng0ZWNSRmVxNGRqUjNBWjRITm5kNUJBaGlTSHRObkhlM3EzeG93cFduQVh4M0hHeFZKcUozZ0pVdDVtdGcyb29pYnJiTTVFVU1HT290QlZGT0k5eGd4RmZYT3dhYXNPNWxIbTVoQnFWZVczOHlXS1FqYU50VG16TjlITjFrRWFfS0JacHU0d3RGeGswNkdWTmFEUS1QbmZBV0FJalByQ1FjSjJMQ25kS2FBSHJyYTQ3WTI0dWJYd1hPNUZsSVh6NElaZzI3Z3NzTXpVR3kwdUtGc29LdnJrZkFLdjVWblR1WlJ6aklrZzNoZExLR2FMb3RPVmFwZkp5VnNidGh6T0JrSERUMDllcVlOYkFwbWdYWGdoVTZSb05nV3IwOURSMmZQV1FyaUVzbm9Gc21yZWc1MUUtc2JUWjJCb3FqVW1zRnlndjJZdVhpdTVXdFFUNGtKQ1NxczZZVEw0cGhoQy1sTEhubWs3Q0ZKVnNMUHpUM2ZUcVF5M2V6Sno5dUxyUWJKRXVVMGgyWHQtNGwzaENtNU1hQlVVUGU1SU0tWHZhVk5QM3FQUGN6NjEzZkt1WmwzV3NmZVVtYzl4OWhrbElxRlI4RE1aOFdpYnhJSG5CXy1vTnpvcGV3SXZkOU1RV18wQ0hJRlNWWV9lMDNfNlN4SDBiLU5DX1Y3MXZHNXpNTXpqUkc2WXB1d3hMVUQzQnV6cHNWSVR5ZTd4M1RSWFBxNE42aXF4cFlTeWpyMUUwVnk2UXhzWGc1Q0NsZEozN0p0R082b3pTY1gtdDNKOFJBbVk5Zk41WTRURUZCZkxFT3VtdkQ0WXdjd0xuVktKMnVYN3A5MWZjTTUzVVRhTVc4UTZSZ2JFaTlnZjg5SXl1OFc0WTBIQ0REbDE2dVhCSXdZR3IxX1lyRy1zOUU1dU9FbjVpVm9oY1JsX0RrZlNNenBsSUhPWkJzLVM2X0tud2lZMXZYeThhTWlqb2tFaTVOZnBMbUdZdklwdk1MUFViUzBrQXhGTWo3dktnRXR0S09pU2wxVTJleFF5d0tsYnJtUGxFamZ3YnFjRVZkbmZvTFhIYXpfNlhYTE1Qb1FobWhKUWtvVFN6UDFIb2J4UWY4Uk53VmpaeGF0enpxMGtpMjVmUXlTNTlET0wtVGtiWlFqOTByUnpCQ0hVaTZlNWFmNUN2b3p1T2NIdEJmRnJHVkw4R0JQMk1JWi1UTGsxZXcteFpBbE10UVRITEVuUE1US1Q3X0VwY2dJalNDQTVsZHFXQndZVWxJaXZWd3NzNXRlWEswQkNvWjY3OWxyTVdTOEIwUmRwbjM1djlPU1JOejh3TUFTNER4UVV3OXhOTzBrSjdCWHdUM1dOem90dVFFVDFIeWpEcDV0UHY2MVZuVlVDc3pRME1TaTcwakU2OGtnVm9TM0sxaHFxNUhyZlJoYTVEM2MzZDFBWnJzaUVsMXpMNU5OamktNnBpZENKVmxZeFNBa0gyc2VlZ3lGeUVVV2p3ejZRZzBzeWYtUGtCWVFaRGtKOGJsUWFyUjRMdVJGVmViUTZ0bnQtVThmS0M1d3kydzFXMUhiWUZOWHRzUnVkcm03WWVtUDI2eVVNRzNPUEktLS1zV3VEUW1VblIzemNaVGZkcVBkc3ZyRmtES1JESWZfN3hsbDBLVGtIbHEyRjJOTTBiYjlDb281SG5RdERpX1pJZmIxa3pZd1BHTDZMV1hsazdhcENaQ3daWVBLNWNmbHkyWU84QzRuX2w4eDJkLXdkclBMWGNMRi1xZnRtX2RzZmNrNjBrNUtGenozZEJKV0otY2l1ZWM0S010Sm1JMklxUm50MVpJRnNTOGhEcTF3b0ItLXVTX3ZfZ3lMMVRxRklNWE80b1dUZktOV0l6d1NOUVM3UGdCYXdIMHVIemZDeFJ1bmh5enRMTEdMZEtBamZxc3d6R2dDMnV0THcyOVJoZWtLWVNyaElGWFVoNFFjZF9GOUxfNXZyc3pSaXpKekRUMGVkWlhSVkZNdTFsV29zQUs2YV8wUGVZbFI5cC1XMS03eWo3dGJveGZGdzMyd3o2VlNWamJrMHlIUnpRYmtwNkp6QlIwcm1QU3VlU1QtcHNCSWVwSGI3S0dHQjA0ZmJvLXk2N3VSRkxKTHZlcTJua1o3dDFIRGozQ2taVGduUmJ0S0xYRVNkb3RFY0toQ1ZXaXNrTDZabURLVWJJTkF1MXpLMlJhZkJhNzVDNlVPX2llVnAweTBJX1JnT3hEd1Z4QzVReS0zdVZkc2trcFo5VGduUGhXQWlURF9tQlBmeWhQN2NCbFZvUUhoY1lKYWVjQ21jQmtVcTd3cmx1emdEWEduUkFveUp6MXlwZWNjWC1IUnlqOEFFYXhxSkVUeGpWTFpNODBNS0xtRjNXZWt1dVMxSDIxLTFYUFcyaDBfSkE1OTg1cm9uWnBCSUtoaXptUU44YVNndjBIbFlmVi03cTl1Vi0wLXFrNXVQWnljQkRDYnpUZnlGaEdzWGdKU0tPSm5PYkU0QWktMW14NHpJY3FSRmNiWkt1cF80clc5Z2lFX1pfYjBpTWlMTGlBUHJ5dGo5T241ckx1MnJhY2UxUHFvb2VrZzFuWWxCRllTdzA0eHBWSjNGNURCOTBDMHh0SzAyMEtEakpRU1VCZW52dUpsZ3V4WVMwWnQ1N3dKcnVXdmFpYUlIalFBTmRjMU1lSVJEZjF1Z2EwZ1NwVjZPbEltMlY2aTVDMllfcmY1eHJITmVlWjdwU3A1X3c1UTk5YlU4RkdEMHZNbXE5azc1eTdsR3NTMVlwc2stY2RZd0pSek5oa3RPeW5GOFZBNlcxSjkzVmZsa2Q0NTFnMGRJM3dGd05kY0FqWG8xdUMzWF9zdU1JOUl2ZU9jcWFqWlVNcEFCMTZzbU9waHVpQXlBcjNTbTltMTJMMVBvbzVVVDE4V1lEbFl6eXhNYkRmWmRUX0I2R2lNUnpFYVlHSENyQjJoaUhsYXlDdlpCNW9lbkVTUG1rS1c0dFNmOXhRc0R4U2U1ZnR0UGh4enJ4UWxieEM1V2dINlBibzdYdFcxdUpMUEVzVnlwdGRjS2lPSHczQ0d4dXA1NnVNdjhlRW50SGRHdVFERmVfalk5TUJYZXNsdnMtQTdBVzg0VUFvWE0xd0RYUFo0SVZjdmozSWRpbTh1WUVDU0dXMHlPcUo2MEVBYk9nM2ZERW1wbEpNVTBuc2kzREZmbWlqNkVRZ25hdk4yVUN0Z1lKVUUtUVoxU3lHTEY3OVlIRXhFVFRUZ0RheHNIYnZCX2NibWFwNC0zaGhPS041OXlQUmN1ZldZTGtrMUhpODg2c3V6VWJZa2MxTkZRWlBGekdYV28yUUFvUXlCQm5DS01YT2QyZzBPS2RaSFBYRUtVR05FM3A2blo1WVFCMUx4dXJhTVJCSUNqV2lHN1E2cC1XdXRpNHFvNnRvUjgyQlFFZUtqSC1KV2t4a0NoZ2tFaXpUSjFGcjlHRFZ0c3duOUdFcTBKZjJ0aFhKWXZUTkdTY2tTVFEwUzFIa0NlcVNLOXAyN0p3NHl4RTlocmFVdHYzaXl4MEhFZmNnTlNLVTk0WmpFa0R5UFozUXNLUUlCa0xweHJReGRsZ1hSV2ptMEpJSWQ3WmRiT3I0YUZPN2ozZlM2a3EwQk5SVzFBVnhRWXpkLThFWkV3b2w0MFNyNmFfaG5tUUo4WWZvYlFoTDBhZFBfWUNaT3dBc0g3alc4U0lKbGV1b0hLX2hPc2Fha1hkTnJPaFNoQ2VVYjNpNUQxRmxkak12SWFEajJFN1dfUDJodmVna25PNkFhOFJlZ1JRN1dvQkVpdGU4OEszeVdPOWJkdmZ1NjFJaTBIRU1RUm5LQVBILU83RVpMVWdzTmd1ak5YRW1jRmdmRmhmU1Zudko4Vjd1UnNmbE9NcEZkTmZzNU1KUDdEcEF6R3Q0aGRQaG14ZlBseDdqTXh4cnpOQ19GS0tvRDBwcWdJdWtTVnlMZzdrbXkwOE9paTk1QUNMREZsTnlQZjNtaUVUMHRfaHBmWFZrckhCZDB1Qk5Banltb2J6WmF5bW05SFhLTTFVSUFJN21WQWdUZnVUYmQ3eEY5TjlDNUJTZXVyVDJtYnNaY0JtWFNfa3hZTWtSWjFkSkdjN3FwVFBSZUxOVm10UURBVzZWdTZUWlpHNDREMHdRNllKalItNlFiVnNSR2NReGtxR09KQ2MyYm44SEdvMnZCSG50TTdEZVM0RXdLUXh0bVduVXdITTNVT0ZHaWVOVmRvZDhzcllzaE9sM2tvZlN1YUxIUkZiRGdVQlZoaHBFV3dUejF1VlhOd2VVN003N0R1dGJZYTFiRXRJY0hneXJjQUJTVW41dlh4cEhhbVY1RTJHczhEeDhYTmlBaWdYREJfbmhFZEdWWkVqSmd1TDg5VXltR0c0X3Z0cVMtN3hGYmtJaFpPMXBEVHZTMm1KM04zNUduNGI2S1FWcUEyWEY5amJwRFF0VFY0bEgwZWhiLUFyeGtGMkJjbnA0RUdNZWs0eDRXN1RfNEdtNzlFb3V0TjJzSW9iSFhXYi14bURJbUVId3ZHZkFsYkc5ZFFLZ1pDT3Rrb3EzUHJvY0hEMVFUTElpNEpQYU0zc1VFNngwcy00NXR5cEFHQ3N2MDhralVkUW5GbUVTYUhTYzJjSE5CUEFFX2ZzMGU2bm1fakRLektON095RkV5Ymd1bHZ5RTRsb2ZxWkxfcnNxWFlPN3lvT2oxX2FLVHhGa2ptallGNWhiS2FjcDhCNWstRUZUWVZYMzMzWG9OelJreDRnOFNWZW0xVUNibE1QOTJxb3BLUklPaWNJQWpmN2dkS2hhQmZTaE04UUt6bDJBVjBVU3lwMkdrUFRja0NrWEtXUXhhbl9RLWhtZ2l0V2w5ZVpOR3BpUjVSUGxqR3VRaVRYNlJENGZKcUdEQWNMSnEwYjZYZGhva24zMHd0Tmktc2J0RUN6NC1HV1ZOZVVBYThETl9haFNaMXAwT1MwMkRkbGVKOG1ZcW5vYThEbF90ZGZEV0xiNDg4WVplU3JwUmV2WlBJWm5OQ1lQUngxTDdxMVVGcWhfajVrQ1N3Q0VWTEpDUFdzaXlKSzluXzU5c3lUaW9DemxyM2tuTVZ2bDBZSnFYdXF2eW95TUZrcDdGdVdBbWtfYUR4eURaYm1mRGNLNVFnM0c2YlVwVXhPQVJyamgteWtreVpfcmxsa1hLUjVrTnJJMFFKYkw5UHBiWFNtMzZVSTFNajB4alVael9IYmx1Z3J3c2lzRUtGcGw0T0k2bUY1cUNLZVAwWmFmaW1nblhxS0d0RW9wNU9kTHNGRXNoa3BSSWh4Wk02eTVta0RZM0FrX0c5N0FuLUxzaVVWdG5IN2NYNUJPbHZIMVktREFGdzhkQTBpOFhPbkJoWnZ4aFZqdXctbWtHWjBITURVS0RMWk5uUVR1RXNnVEpDT1RQOVc5R0xtaGNfMGRSS1UwQTQ0RFVRU0l4SmxEYzNYWmdYOV9XdWxMY08tdjJib3pvLUhLcTB3blN0dmlPSU9YQ21BRW9PWDFodWROaUJmdktBc2NYTnE1bGc1YmtaN3dDR0xSQWoxUjRSelhDMnVsaUkyZ3lpMTFHZU1VanpoU0h5Ylk4NG5vWGpDODNJcGFTX1FTYl9WUFEyeWhMWExVdnp4SHJ4YldpajQ1a1VEMWJEZUkxOHhhQmd4UzJ6VlRVMF9FcW1WaU9wbjRnTWczd2oxMW5tV0JYOHVHUHlkUENhV2dtbFJTVXNxVXVGQ0dYZ3RNUFN2R09XRkl0LV82YzFWdVlzMGJDNzl3QnhwYy1MdENkRXIweVM4NWZKQTE3aktoclFINUJLQXNneUhKbzFVU21FZGMtTDRweWpkMS1obnZUYzZxRHBXQmhSREhieV9DeXBfc28ycERfYk12eFZ1YnBDX3FIT0dlaVRLSkpTcHdmMC1OdFRLSnAyUzloUXNQYnhIeUFlQy11ZThIMXA0WlcwWVVyWGpJRDVoS2pKRzQ4b1E2THBsaEJTWlNCa0xpczRqNm5nV2ozN0dLZEFNN01jNlpKVFZRdEw4RXZjWWNTSUlEN0liMHAzXzBIQzRKX21NTEtjRlZWWVp4TjlvSkVPZWJLUFVzbndwelVUX05KbjQ4VVZrMGwzeGtDaFlEVDVmMENoNl9MSmhSSzY3ckI0dXk2WTY3N2ZKN3RjRGFfWWsxZlotcmVpSlBRNHhMTnNOZ05hU0FoQ2tqZE5Nb241bmlPUFNhQUtVcWdDbkhsZzN5bDhPOXFhcVk1aXk0TzFlS1hHcmY1THkxV0lNX1luNmcyeFg4aF9TZ3hlcTdRN2ZOYlhIT0Ztd1Ywdk04aXhhRmJZYnF0N2hHT1pjWnVQaFVOaVdDSF8xb0MyUHlIUE1IcEtWcWdaOUNYYkdQNmFhY3J0UmpRMkxZdUZNSnNWRVhlN1gxNm1xMDZpd0dLUWxsUlZxXzZoZGtqUUs2SVpDVTNzMXV3cFlGeHdaTW1CQVVCaG1lb2kzUVItQlhrYnc0RU9nYXllQTJkSUV6a2g3cXFOYmNXNlNBdnp2eXd4cUlQT1FTSWYtMVlSRnZfSDBpYXN2MmQ0R0kxNHpDWXUtXzMwT0hqYzYyX0VMLWg4V29pa2Z3cTNXZWZNMTduN2hGSmZzMFNWNTVHY2U3UTdDQkxxNEVkSTlXc0t1MDlxeWhNWHJwUlZPWTBrZzdsNjYxa281c0VsN1RxYzgxNWl6OU1wS3RZU1RlV1lsd3pnb011clJDNktNYmZEV2poUmlldGo0Z0RkSW9GaUQ0dHJGNjZvU2k0WTE2WkNxYkVPMWVKNGNseWZZWk8zbzBwSk1NQ0gybUlwTVZPMkRueGJSSURIOUxiSEU2VE1qQjYtZkw1a3d3WUVoSHI3UnNaMnFFYUdWMDdXcFkwMUdoTWpEZXE5dGI3Qm0xXzFvcWtsdVcwMjZRUng5Vzcxa0RwU0xPNkxia1RWS2xuMlB4VmdZa3F5V0pHNlZUbU81T21fRWxlblhQMmx0bV9VVXN4MXgwdkxWczR1ejlHV1VYTGZKbVlzZnViQXBwVF85anZyRDlkV2xWc3NKdUMwRlVVNWxOUVUyOEJWSXpycV9ublJVRUJjc3BLR2d1RmN0Mjk0V2xFVjZzNFdTSU5vNG8zaVM1RWtfX1FsZEp3c3JKT3ZQS2M0S05OM1F2cFJDa3hPQ2VwZGpZZEMtbVdfMGxNdWVoVzVmcGUzRnhFMGhjeHFrZmkyUXA1Mk5VYkVZVWpPV2JRZ3UySVVmX3ZBMWpIRW9UTzRQNS1vYTBrRHZaUmxPQldRbTMyS0g0RkhwYWpiNndLTWVIOU1VZ2ZlS0dBNWVJRDRxaWwxWURONkRMa1BKT3FkeU91UGdqMTQ2WWJkZEtQdmFDOF9YS2w5Nm5BV1lfMVo3ZTNKYW9NNzhZR2pMaEV3alFpdHlSOElLRTV1ZmFDZHdYMWNPMG5FQlRnYTZPNzFrSEJkMEpGLTQ5X2FPX2RoWWo0WmVLWVNxOVhkQ1NHNGQzSFNxVGVsT2ozX0tzUGp5dk5ScmkzY0loVmJVWHkwcVoyN1NqdlRRcHFEaW5yMDBra1Q2OC13SXMxcXJhazQtcjZoQUFUeTM4S2FrUFJWYy1WMUQxUVppR3hFYUdrbUg5bF9YT2hFOEtHREIzZFgxNVNOREptRi1PR1dKSlJZNWhqZmpFWVNEVUhmb1NHTElNei01Wk5hVUs5cm42cFBMcWZfcTc1dkZ1TWRISzZhcTl3eWUtQTdLTjZyS0xqMlNfclV3RHk4dnBlbFBBTktNTG5Td09mV2U2eXdFRmFJTDRVLS01Z0NvczJBbGd0OWE4QmRKOVpsUDBUSzZEb0RVY0JTbE9VTWNJNGZXb0lDYkhwc3FnS1d3MUJXc0xGTFU1UnNSZVF0ZHhmSFNZdWs4azFWUlNhQnZnSEh5Uk9NemJXYzhSWmJCVjlQc1doaEpMeVpMM3RldzJ0RkhaM2h2U1A2SUVidWpxSE0tYnRWSXFqb3BEOHFDMG90YkNERnNqdXV0bFdVekgxTXhNVFFGdk1KY1Rfa0swM3NOSVBNTnc1MVlrQm1fV0hiQTNZY1V6d3BPd1JNNnQ4YWFVV2diRUkyNm93Szlhd3BUTzJmVHVncjdzNTJoWTFBNVRpMXRobDM4TU84UGNfeTFyYWJBeEVsMGloTUw3VlRFWmxhUml2VW5JS09ORDdXSXE0U2RHbjZzbXJLWW1LUGRFNy1vZzJfMXVhWkJyblRScHNrd1FiZUVlM09tT0lRUjltb3ZmNkRCdlZlVGtieG4zTHgyM2hwUVRRYlpFSTRORFFHMnlzTXcwSnQ4OHl2dEo3NkpwSEFYbWhkZUpBNWI0QTBYb2JvSW80a1JGTjNlUWlCQlB1eTVsZU1qeEZnVVE0N3Y2M0pyNmtibXpfSEVTZHowOGhNeUozakN4Q3ViNWdJVGhtbVdkQ1lIUjZRYjRtWlowMjhIT0ZCNTl6MkY4QVVENXNwU2wyZmhKZHBtUl9aZ1BsaVBuUm9YNGVPU25Dc2ZLTW95X1YwNk1KRTl3VGZPSXU1ME40cEhoTE9qQXNUX3NCSHBfYWJMb0x1ekpJZXdtV29SRThVR2xWVENOX2hJQk1pdWI1V01lbDgwa09nbHJTNXRMZnNCdW1qTTZXUEladUpjRG1jWlozdXpEeFBkRWdHbFZydXE0ZmpfMFBoUF9uNS1FcEVtYTkzZDFaLURCTXU3Wk54QWYwS1ZBOXVJOXZ1WFNQRDJOVmRpMG5QRFFjbFRCRWhKYW8wM01uc1VGbkxBNVZqQlJnQVV2Y05Cd3ZlYzRfOE9WMDJLRVRxZ0hMZ2tzbkIxdU1jZ0cxYnVQWHF5cmJJelN3WGJiTFViOTFWSkZERl9ZNGFTWGhWR0kyUzFpdGdZOVlsYzl3aFlJYU9pQy1KcTNiRUZiVnZiZnJnemMwOUtiYl9ya214ZjFpWDVRczh0blYybHpSaVB1eExibGx6dmlEYkM4ZkpMRE44VHo4NExMa0lMZHNmdjBHaWtkRThSelU5cFNnMVU5ZURUT0RnVktDRmtzaXdJbEJ5MDRqd0d5NnNwb1BudUxweG53OWhKQnpUc0M5dVRUTmlZeUk0SmxpdWs4Z3ZpR0JTT2lMeGNiRVlXTGFpN2NNQUYtcnI4VTYya2hDYlZZVU1mVGhnQjg5aklmNlZSa3pVSGs0QXVSR1k1QnpraWxBcDhHeHg2M1RacnVXR3ZMa1FKek5wNS1PVGN3V3hEN2N1VlFULU5icVNZRmZYMnZVcEt2Unp0WjNxeTJOMTRIYmdIeUZMYnl6SVVoTXdiNkY2M3dwcnlIN0hfMHp3OGRfb0N3bWVCMVBTQVBUcFhiYjhRZjluQlRXbjFCWlBMbUNVc1ZCaUFYQV8zUWp2SWkwUXlrN3gtb3BGc1E3OFdJUVpadkhsb0NRNWI4UGd0bVdaNUFwVDhPc1dXQU1sYkFzdXRLdXZjTFkzbW9DeFZIOGxzclZxOHVXSjhlQzgxUV9uOG5YNGFqcnZiNm51M2ZXTXRDNmxFeWwzSW1JSHRHd3lvVVZOVW4xZWlBQVpnYzdiQUlnNlBoV1pxS25DMkFyU19lbEVheVFUd0ZTWWxrM2Zjdlo4Z3RMOHB5THY0YkpEalI5NUprM1g4NGJEek5uSndfY2o2Y2Fqb0F3WW9nc3RRZFRnd0pqTU1WaU1Fa2hraVE2SVRUU3lDNUJmOTBCa2VXbWZwM2N3Y3c2cThwMG5NZEdnMjNDc0p4VHNla18zbFotRS1KcHZESHJnVUV4d3g1Z3lCVy1STjdrX2xnaGd3OUw3QUNTbHdGb2pHVzlZSzA4T0J3Tjg4ZEQwLVlmMkZSRmFnaFVQY0RfWXhmaC1qNDkyaGY1SnE1WWtyOGJMZENiZjdBTGgyeUp6UTRoUGREMDdnNW1uNThnT3ZMUWo4Z2tvTTBfMHVGOHBRaHpqenRjVlRaM2NBNkZobEI2a0Zkdk9OQXZVLXI5YkpFb2NOaW5fRTJmb1B4VUxqOVdEdGxaX3N2bWtEVzBjR05fRWRlR1dKLXhLcTdWNDRzck5vd0lCOEprZHE4dUhZXzFadVg3bWV6MHNYc0lNSEFFSWhkSnBJelpYQzVjYW9lTDRfalVxelB3dzJzMG1IU29CSlpQNjNWODhFQVpMVkdtaklwaC1PTkhQeU9QemFlQ21xajFlTVFaODdJSGNhYm1yUGNaWDFITTVvRi1meTZ5RFVzdUJyRkx1dmRyX0VJQ21TM0sxWEZmWVhsMkZCU1ZsRGNpUDJ0YVF1RzR0dHhjaWhoRWpERDVDcEZ4S2dha0lRSWc3VVFBTy1rUTN3THZHdW5CcG4wVy04eGpWRFBoU28zUUNOc29sNF9zWnFqVTBoeEVNTVo3YkVxTzNSVDNTVW1OM3RjdG9LWTBySzBxZmR1bk5iSXNjdG5TcUVPYzg3dWd4VTBXNHlQYjBNOEoyQUwySkV0bXlRZmN5RTBDalkzVjVZMjNlN19UVV83bEk5alBTbnhvVi0wdUhCRjZ0Z2xYN3p1akdJSG82MU5CMHo2MHpXZ01hYklqd0Rha3dPYXV2Uy1yX2RqbEZpeUUyZlJvQnNPNDN5WlI1OGJqcHhpRHJxOWdnMEtJcktBQ0gtWjliTUdxeFBIbHVrb1FGeHAtMWszQjdndE5GdGh4dEJqMng5Q1FBVUJwMFNZYXRhUmgwVlBPRGptMWhLd2FUTnUyNDlxZW0tbERiNTRhNFplaGZqVExkS1RoalFiMktwY2FCbVg4ekpQbnRhVlA2MXdDeVRGVDBSN2RIVHloZUhfS0NYbHA0WDN0ekdoRTg5VDVVWjVxVEZJWmNDR2I4YzM1c0pjYnh5bWZ0aUJJd05sUFRlbkNid3dfQXlOUWhreG95Wk1iai1lQ3NBN1M4V3FaUEp6ZVozWE5iV0ZJeS13S3hFMnVyTTJKRXd4eExXRllwOFQ1cFBQQVF1NG1NT0k3SDlfNzRTcWpMRFpCU1Myd3dUdU1YZW1aSDJuWVI0WmdCUF94UkZENzYyM204ZzRuLUdNNGhibVZPMW1LTllJbDlHdzljbkpQOHpSSWlNbUppWEdXTjktbjRPVHFRWExFVnlKbnlUQ0RCMzFTSFctTThyeUJMemEtOUxOdFZhUzVTWkM1UG1vem9EMFZyY2hFVEZmelhwREJfZGYwNk1aYS1icEpBQklTVWJidi1hM0Zobm9JUU0yRW1uT1N2Rkw1ZFdDRlZMcXAwREJOZEVOS0FiQmJaNGdaaGNEREVoSVQwQzh4dWJ5MjN1MW55ZlowRld0WXFoTTh1TS0xVzVOTlNLZGkwVFVhQ2d5OHhBdEh5Wk9YeWgzVFRMVTh2ME1rbjFRRjh5ODRsOVJlejE5VTR5Z2JqX01CVUJreGYtNnhpSFRVQkNpQmN1UnoxM1pSTkVMNUFzTUZLalQ3Y25zRDJxNS1fdDk4dEZ3SmNQejBTLVctbzFtVnBRSkFjZWZ1ZXBRcUdvVzdLNWIzMWFCVHUwWVc3MTZCeW1pSVEwTU5VdC1Cbnc0VTZtdG9wWWJVRjExVXhSSHl2R050dVVUMlp1MDFJSWlKTVRvYmxoZXlYQkFraEVUaDJTXy1Cckc4cG5oZWFZaE94a2wwZE1nZy1ISlJ6V0RXSHJTZ2tUN2plaThNNnhOY0Nwc19veC1kNkdsX1FwYnRkRGZWaGQ3clRaTzhCNTFQSVN3Yk9aYUhkZHotRlhUZmd1c3p6S0RwZmtSWjN0T010VFJ0U1ZWR2t3eG8wRWdfQW9iRVJSNnBBblRfN1hZQmpFWl9BSVVwQkhmYldjZENyUkN5YnR4b2VUU0RvS0twblJkV0E3cnpiLUtDQmVzNG9mdWhicnNldEdWXy1rT0dLc2FuT0lPbkNPQWdHc2VFb19NTnBvZVpjWmd5QlRlaHFmNXlCQ3FZN2FmM2E2Q0F0V2hfSE1IVzl4cGk1TVlZVk9sRVBWWHZHTFp4bi1xS2hzUDVwM0g4a0VHam10d21CWGFuQVhkNE1HemZtWnA2UkZ2d0VIaFJHNFJQQkZYSkZld3laMW1oSzZZVDZXYnpuUGloTC1PTjJPVnJEc25CSWdEUGVtclpnaVJIVWdnMkk0MXNnX1RMWTQ2N2NYUm1JZUc4NWpUTmRieEhkRkt5UWhNS045UUVBYXhDTGJsaF9FZFF1LWJtcnFfNVZoRmIwSDlocF93S0M2bFlOM3BFR3ZsajN5QzNIYU1LTW8xSVlBTkROcmhGM096U2VHUS1SWmZHeFQtZTNwdmRzc2ROTHE5XzNrdWdGZnB5ck1GY01iMkl5MFk1ajN2bF9vNTFvLVdiYUN1Wl9KZEZfb19JZV9zZ1ZnTUhoTVA0elIzRlBEVjVjVUR0bEtWWldSa25XMTRaZ1hnbFNRRG5kSG5lbmpqR1N0WkZnelh6c0FqX2xibm5BXzZnS2ktZHQ5SXk4aW92cFN1SzhTMmMxRFdqU2xIQ1FMS2tCdWR0REI4RFRaYjZneHJCZ0piNEpFUWp1LV9mUXlPR1NOellNZ01ISHFiVTVVbmpxOFVlQkFlclNnQnEzTWRza0xRNjlRVS04clRZbGszVEVLeFQzS3hhTUx6MmxWTkZSMzRkUDl5Zm9HMnZvOW9PS1VEb3VUaXRwNkdhV29Vdm5jWkdDME52bktJaUIzc1NiQ3pOWFdWbFpDWDhWdFhRQnB4NV9USDNhYi14bUJOUnVQMUZ4dlExNERsanZHQVBOM19DcHhxaHAwTmxzbk9xNzlqYmV0TmtqVHVrUTFZLVVhS1lUVFZOaTlQV21CbWJJTGx6X1FfQ21lSml1M1BwVVUyM28yNHlkR0JFTzZNZFg3aldMdHp5c1hxSVJyV1JUS0g1dG1rT3VwNlQzck03UGotb0NNMURacGZHdFUycU9aVW5hZF9TNGR2V3RBT0EzMVVsLU1DQjlLLUpHZEhyU1NKS0xoODNqM2d1ZDdoTUswVFJmYzVXLWdaZzdiT2xUc2EwcTB5anVKTzAxYmZQdjdQTjN2cTRkT1RabWluNnBJMzJSbzBTQU5NZzlBRkdvR1g3TElaR0Y5bVRMZkZGbkJTUlctaW5taW0yRW1NR1piQV9hNUdvTWxOamhmV2JvLW5aNHZubkI0M1NjZlNwZnI2LWRvRzd2VUZzMHlPUURuM0VvZF9ZcHBwUUwtLWtKR3VlYndlTVk4ZmdtVy14NktjRENjSEl6NU04MzhROC1KTEpPNzVLS0ZqREZGa3JtTGZfTGF5ZTJuekpKVGxhN0NnMUMyWS1kMFJGZnd3ODRHb1JjaGpVS0RPQnlFUDVlNzRpcnVSc2hjQjl4QVUweFpyZlIydmdQM2gwbG9UYjJ5UG9wekVwaXV3N01XZDA0eGhsMWhJUm1haXloRFMxc3R3WFh3aDN5SlNuWE5NMngwdnY5bGpQTmRDTzBiQ1lyZVQ1SXY3eFp0WEl1VW5jaWI3eldUQWZNZHM2cXF6Unp6Wkx5YXFTT0JrQkxJLW82R05SMm9PX3F6dTZteG5tMlJGOUlMcEdxYnRnZHhYTTdScVNkNVBEa1RfVjhrVzdOOXlfTUJuc2RpV05uelo3WndPNldrUlNvbkJPc0licVFVS3NXR1dUZ1E4ajE4dy1hd3hnWVJNQlhrY3lEakt5S0piMjZrWjhnRXNlcVQtM3RPTHdFeGM5cjh1MEtLT1M5YlROZDF3YTRFTWZHMEhFeE1SdmdqQ2N5QTlLa1pnU3Y3eTlNRm1BS2k1M3FXNnVvRHRfX1Bwa0lFLVpqUGhLLTdSa3Y1TmJUQnI1bmctTlR6ekFHc2s2enVPdnBpU05JSWxBRXNlUUJERWNES0c0M1Fsa0N0X3g0VmJ2QW9kQk9lTVJpZWNMeTVtLXo2SVZyME9xX0Jnek16ZW85Wl9xZFhWdFZobTU5ZkhDek1rcEM5WEN2dTVXaVU5UzhsV3Y0VmM1STZXa294QW9vZ081QXJFVVV4T3JsMzlma0ZpR2FvUmNBbWM0dG81anhUUjhuWVJXQ2tFdUQ1dEoxcFFUNkhpaW9XMk1OTXR0OExMTTFpeUMwejI4bWFlcmdBZUxGQ3pTODZ6QnJybXVTWFJEQlhhaW9DWGM3VkoxSEtmSUFYcDY2ZEZ3RjhRUkdUOE9LMm55dlZIMzlvRWhSX2M2T1NiRzJvYkxTOXdWM2RFSUFiY0RhR3hjVUpCU1JXeTdUR0ZhcWdhemlwRVRnejF0NThlNUZhS1AyUnoxMHV3LVRHSWN3VVJtRXhlSzVnbDZJWWdMVThKYmVNdWtpbTM4dVFXaklVQXEwOWhva3RsRFNueG8zRFg2STJjdFYtRk9xYk9rX1dLRURHRG9aRG9neG84UFNELUJWeGJrQldRZEwtTUNENUpzblBGRjZhLV9BdFBaWktKYnZoM0t5bWQwNXVfbk9qTURUdXFKU0xuNUV4MjFPbXAzQW9WZlpNYVlTV1hzaXpOWU10cEVReEMwbWp4aDFFLTNmRm5uOE9GdzVnTXFXNXN5d0ZHRklYcUF5MFlmc0Fsb0ZBTkstRVZvVmpCbjY0b0Q5X1NsNVBwZmxFZVlaSFFRS09IRmxWazVwdUhlZHdpckNfZGhkdGp2TnV2ZlNSb1BLU0VJWGxnV2owRHRrRkFiaXJkd1FNTFBUc21CT2pOYnhSWFkzVG9Qd0RSZGo3eC03VVJxY2Ftbjh2VW9UT1MxYWE4WVRMNm5FNVhsVHpuOW01MEh6ek1Rb2tnemcxQlFLSjRsMFJkbWw1a1RiX2tTRm5XY0hobHp5UGt3RUxvZnZfYnlBN0lSXzV0d21LLUZGcUVsYnE5WW1IaXNrR1BWMlpHTDFmTDFGaU1RSmtxLXNzeFlTNjZJRVZ3b1pCaGw4dUZJbnVidXhFeGJaSEpTX2xQY0pLTnQzcExWazJJSzJpc2duVFgwTnlJRWNzMG9pdDlfQVRERUJ5OHZwWTYyTjIxYk9la1lJM1o1Q0pleFFpVTc5VU1wektndTJvTGlaWnBaeXJ4TnVMa3BWSzJpT2toanNaN3gzNDhRdjBSUjdRN3p1aWM4b2hnbWYySUs5cjltOW93MTg4MlpRNFlETTdlOGlxc0t3dkZkOWZuOERlcWl2cmROQUhRcjFlQTZnN3BVSkpZZTNiUDJKLWpGSnN1azQwWXBFUXZVdGFaZjF0cUpPQlMtWlhvOE00aGEwUE5KTWx0bFhmZGJub2x6aHRnYVF5blR3WHJBRTBSZmtnWjlMaHFtenI3ay16TWEyM0t3UHdncDJmUGgzSmV0Z202Nkp4eHBnVjQ2dVl3UTVwSUFibll3MDFOTUxFTXlQaUNySlFFRWtwaXo4WG9hOGtJMkdRdkh3b1pTYlMtNzFZcHMzQ2oyLVZkRTBNaV8zUnRJUEZyaVVTUERfS2cxQ25pQlduN0IzS1pUYjd1MFFwOXl0VE1TdDNRbUNwcnR4YlktVWFwWEtESUYwYVVCN1RPaDRuN2lFZ0pQYzV5M1A1LVZkQ1VxUHJKS2VwckUxN3AzMmFyWjE4VFFwZE5rRHdXRWJWZFlMZDNvc2tTdkhCMHBmbTFablpMZzNpSGo3SmxFX0VsT0RIOVQ4MXRBS3ZyUFlzZUJsWnZQbEdUbDdRN29XN0tSZ21zVDJHMmlqOW11RlVEWEoyLU9ycFhHTWFURGxpdGNhcmpXR0tjMXFJRWhzQ0IybjI3LUlDX2FnbDdHbG4xUkdCRC02bEZGQjFuTVBWcHJpVGljQjA3THJZblNHSTVRdzFpY0pYNnV1TzYyOHRTMEh6Z0llUEdRVzhPMEtyR0xEZkktX2ozQkphbEN1eEpMeW5sdmE4MDVaWFZ3RUdCcEcyaGFOSlVleXhJeWFSamM2SGdOZzNHXzNIbFItWXhiUjBfSmtEODJwczhfd1VmZTBGOW4yYkUzWEVNeEd1bm9rbWdWbTdxQ3I0TzNxQk1HZ0dvN3ExNFRVTGhndk9GeXVZU3BKdkJ2a290NVptZS02SC1idVYySlVjNENQYUN6Y0pFSnB6QlNmTnk3eEFlQmNvbEN4Q0w2MzZDZS0yeUFGVTFFdjJ0NkN1U1BHZUlyY0RrRlUzT2RWOWxvRVlJaG5nNUdEdDdXUjN1RDJsRkh0M1dWLS1ieHkwSFU4YkZmT0c4b0hoU25NN1hsOWtGR1ROWUVxUndIUjk4eENYeXVlS1ZEMHVlN0ZPNnotY3dxV1NxX3BFb0ZUX0V4OFlHU0EtS1k4N1RCRFY1ODlYSEdMYW05bm43RXJybTdNc1p5Znp4V0NBb0U4YkktX0hRN3dTLVVTc3JuZkh0eVJCVkRMcHRSUDVXWDhTSW5jekUwbTFsZFdRUFRZdDFZTVdld1M1Wk5GWll0SFFVSU9FUzNRVlZ5dWlrcXZQczBQWE5Db1p1ZUJoVVViZlVab0E1WFpDTXFYWVdsQnBUMzRVWkRTV3RxUnRVcXhjZlk5YmpvNzZWNjRfSFAxUHJ4V2NQMFZFVi1QVmhxTE55VmRZd0VsRTB5YnlyWlNsRjRwVlM4VTdsd1VlS01UMnpHNWVDLUktakxpUEU5S1M0eWU5WEdtZjlVZEZjd1V3cXBiMjl0cVFFdXRUNFRmUU54elM1dzFqblUySF9BVmxvNm5LZGJiLWt5RjB5WGZyRXB4VHJtR1VSZTRqMEVzMHBXbU0xOVZxY05yeDJDczh0UDlGTlFxNlptQnJ1QVY5ajE0SlpOdUhvY1ozMmU3cTdsN2tfcWlseEtDN1hjR3lRS3U0YlpXdS1qWUEzdm5OSDVORnAyaEd4aWFLVmRka1pDQVlTUnBqMHVNZ1FuVGNEUkppTTJoV1piaGY0OXBUaUVwak90dmhIbHV0WDdYdmpnTDVZcWtVRzNBbUZVelZIOWs1QkFpUXo2VUtwVVJjUFVNUnFPTG5fbkpMd0VsY2xKUE0xYldZdEhZNHNTdzl0OTMzSjZxdzdENFdNRGJRLVI0QlJubkxwNUZZRUtSY2Z1cHVKWWtxV29xd3dQUzc4b1E1UmZfSF9VbVlBZEFOUXhsLVU0MUw5RTE1TEZqaFBsMUZObFhNLUp5ZVNJNjhlbUJ1NGNWY1l4d0oyMGd6Y2NuSWs5UEtjdXdUWE1IUjVIMmNtZENxRnVBY3lYUlJCaGhGRVBfNjFmbmxnRjMxMFZSdS02c3JmOVhnTGFuMEdtaVNZSC1UaVpmcUFrUjItRVlvdWxFUG9UWUw5OUhTekcwQTBveXhpc2YyaER3Z1NxNDVpbjJaTU9BQnRrNGpGT2ZKQ2kyOVZxMkV5YXVOQmRodkFQeUVzVHJpcV9ydHZPN1phUUs1Ulc3QndPZ0RsY3k5b0ROcmVfRG5mZm9jRUNmc3hMVndab0Z0Sm02eUpoNmU5SDVTOFdMcmF3MEhDTklaR2QyaWNTUTJEMG5oMjh6b3JSY1lfanpIYjBwX0VIZk1iNjhxa1hoQmREVE80ZVQxeGNtRmZuUXRCQnRCMVJYaEd6cW1MRlhTUXJRRWxHWFY0czZxNWFYRlJQNkljdGowQk02VkxHWXVpOUdZb3YxZEVrWVRaS3Y0QUtnQndySWRGazl4N0hOT29YRm8yRlgzY0hWTUpWU0hzck4xY00wekN5SVNGdDNkaHB4TnVsVHY5TkdfQWZmUUg4X3NQa05Ua1R6clcyRlM1RkZpTjVrQXJLeUZRRGlWNEZHZTRxWE5WbFhfOURtLW1Hdk03Q2lPWDg2Q3Z1OEg2c2JEckxFR2VxdVJFSHdxaE9DYnR1VDljczNIYlBsbDlvODhxTkw4TV9CSzc3aUh2a0lSQUc2Qkl3Qkt5ZFo1QUNpVnh0NVhIZ0tEUE05a1VaMTdLM3FwYXFUblk1YWw1QjF3bXVYMkwwSDVGckxxQjJTTFBPUE9zcU1RTlNidGExQXBkai1KMm0ybzFWY1JPaGhWeVJza29iLVNOUDd5WGJrbGlUOWJTSHl5YzFvbzFXcTZKYnNZd2hwdVI5aS1YX1cwYkc5M0hyYS10c2pvYmZPYjFBeW5sRXotRGpqZXl1eEt1UGVtLXVvRVlTWkZfbXRsd1JxbVNFSkFwWmlxQms5VHFTZW04LVBCZWxRR000MVhBOWtFeHc3cm41anROODZEdTdUX3JvRnRTWGxpakFQUm44ZTI4XzcyNEwyTWtrN3FPREpLMkg4Mzdvc3J5bjNXRWE5MW80OTJuTS1BcGNTZ0pfUUEzbURqUTJtaHZNVElPakh5TFRCZlBjaW4tby1UQzRhc28wdmpJUEhLZ3pUeE5oWnpYNHMySjFSRF9ldW91cHhfNXhocDdCTDZSTWt4eWVMd0o3Y2VwZFhDVmNmdzdzRDEwQnlyVGVtSnVoT2oxaWhrc1lVUmdEZFI4M3pweFl1Sk11a0ZqbjlxbEQ2a3c5YndNWnRpU2h4QjFZUHNuV1daV3U0TXFsVTg3SldZQzlEMzFUdXhiNFltYndsd1RsQTV6dFBTS3diTk1fYUI4aXZVUUhUazBPdFFwcndXMTlCdU9FbjFtWnpBYnJ0WkUyZ3NFQ2w3TTREWjZWR29nMGtza3gwSUlDVks3WkxEQmZRYXhIWmxFOFk2SGFCS0JrekhKSHE3MUNfcnMwcEo0UWZRV1NiNGdkRFpIeVpWY3JaNktPbEZsQTBma25LdEN4YnpjM3U2TUM5enFXa1ZYWWZZeWVvM1JSNUg3UVJZaUJqM1R6SjJVMVF4U1VqQjZyU19XeW9vWlhnNHNyeG5QRWdKak01TTdfMC1yY3NWVlVVdVNzT2RXMXFybjRlSy1Kd3Q0elkwUHhLYU5wZzRkMTFLUURIVXJkRjdPbnd4UmJ0NktLSFlGYW03UGh0ZVozV0dGbnBIbktzdHJYOVk2bEREYjBTLW5KQ3o4ODF5cUhUSmZ5YkhfRWFxS3R0ZU5ub3dDc190Nkt4NTVBS3o4c2VaU1psOXJnb0k1V0FrVkR5YmlfSlFFdTJnZnp0YzN0M1hCMnlTVDg4bl9BcDJNbU80X0V4QXBoVEpfNzdrYmJvWkl1Yll2ejA2Sjh5ZjR5Mk1yXzgySlFLVVBQYWhuNEozejR3eS16d2EtaDFLRkkyZThQTDZzODF3YmZ1QndrNlBHNFItZWg4UVhybEJrSXVqMkJ4eGU4VUZ3VUZONW9kbzY4VC1SWTF0bVdPRlZndnpDUkJKc1Zjb3htLU1CTGZsdW5XbTBVdDRvd0F1MlRKQ3lUaTRpWDhIM3E0X1lQTy1zMXBiQnRRaU0wQU01azVFNkdoZlc3MS1lQjJ2cHMtMjRORzE5R2gzTEhvTzNlelJtWmhwX3k3QXYxV0I5OURrbmJ6NXZ6dGxwcW92Y2hNNWRDOFNQalFkMDBDRW5NRmtwaVQ3SDZZTmFKVG5BcnVoanhTU2RKLXUxSmdGSE1ObzJpNEtfR0xxY1BlSGlIaTlPZDM5S2NGdVNQeHAxOV9wc0Z5bHRzWVp5cXhoNldJSG55bkRvdEpiOHd4dFU0bk1FMWFvazFZNk9yc1FUeGFtNnBFQnludFljbzFoLUlhanZHSGliWkV2UGdLNjgyc2RoZ295RjJ5OG1na2JTNWxHVDd6U2tYWm0yeUZwOGk0X0tVUnlYWUtqUndFZWdKTmktQ0gxWWs3ZHgwbExOaElOVzJEWkdyN3RFd1dOd2tFMzFHdWwtaXZWZzdGMTNMN2xXNW9OWTk1WXFXQlh0RzBsRHVoUlduSHg5dTNWV0twSDFmT0xDcnVIS1VXdzM3MmhtX21KS3U5UW1tQjNrWDF3SURXSkQ0SnFfeWlaekMxWEdIOEFzRmJfOFhtTGo3YW1aUmRwRFRRSmV3WlE2NXFJem44VEx0ekFhTUktUUlQZXJDSEZmeDFYWW81ZUpWdHc4MWphVHFRQWJCLVZ5X3ZXMG4zNXhUVklEOGdJUlpYakhRVEg3YTgtaDY3ZVFPdUNtS00yR2NZQjlFSmNRLVRPdUd5ck5Cd0lBckNxSGxDSzF3SjlPZjFYMjQ2cjY3dnd6MkJCQUdRWWp5dF9yZ09PcFFadGthV0pMd25ncXEwRE1pYWt5cE5LSlVJbEViX3ZkUGp6SFFKMV9IVzlMSFB2UWVHUmVJRTY2YzEyWlBBTm5tcndDaXR4M3hzcWNJZVd2d0Vya0ZzcWMteUlZbFd0V1Y4ejVmdklMY2JvSWRxVTJ4c3RqR0lvZDhudEp3RVRMeDJJQTZ6TUZHZ2E1UDZkcVhiMm85TUtxT3U3Z3UxYzBUaGtjVzB1QUFSb1F5ZzhDcnMzX0VfcC1YRXpCZGVWNzBIWUhXNk5CaV91OUVfLWVKVm13Vl9RcmJxanM4bEJxeEhsR1ZyUHVIbjd0ZU1ncXk5cjY4b0c4RVZRRFZUV0tXYWZ1U3Q1bHJpWXlTMlk5QnFqbXduUlBFR3lqTzJtLXVNRTRHQU84d0s2eFZVeWF1emlRQ0FyLnN4blQ5QmJTbklGT0RKQ1Y4WGR3RXc" + }, + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/testcert/21983500952149bbb3129b0c60e367a6", + "kid": "https://myvault.vault.azure.net/keys/testcert/21983500952149bbb3129b0c60e367a6", + "sid": "https://myvault.vault.azure.net/secrets/testcert/21983500952149bbb3129b0c60e367a6", + "x5t": "Z-n6Mydb08bmyOgk7bmx5HT8tyo", + "cer": "MIIDMjCCAhqgAwIBAgIQGn/FrGQZT/Cd9kgXIsytEjANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDEwtleGFtcGxlLmNvbTAeFw0xODA0MTcxODI2MjZaFw0xOTA0MTcxODM2MjZaMBYxFDASBgNVBAMTC2V4YW1wbGUuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsODIu9EJhfnn57k4++j6dC1M6Egi9aZucFQ9Jc29vFG9L9BkzllPGluKKdH1ypsrAUif7yGaq5d1nDyLhZUncU8dV/YIA7oll/fC+d0H4A37kVbM/60zXhXnKRx+DRZ2hJQzNBOodCaZpyZZEuYvtWdSCSILpa0R7yXYevjLaG5LfckOzuurXqeos7WB+l2q1c+6zx1KbNXbBl7QOz2nzk9oJU7CdhPOc+LOLppmsXRwwluKtmCDyKdrKAF/dANp5zGXFsognQcRctLSGQp8FbgBVQyZ+v81n9bPpSaBoUQMcH4uG9jPO6CWwbDSWE+FVYAm5kgjuW/1hqRSnOEV8QIDAQABo3wwejAOBgNVHQ8BAf8EBAMCBaAwCQYDVR0TBAIwADAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwHwYDVR0jBBgwFoAUaYJoBFokrORdsxOTA8sgrosMOmgwHQYDVR0OBBYEFGmCaARaJKzkXbMTkwPLIK6LDDpoMA0GCSqGSIb3DQEBCwUAA4IBAQAxL3t0kV1dq/PGUztjW+qK6Nh4sx7jsU59JtjON6zcibJ4hM+Q3Z+cEvW9zuGkuTbLz6fKNL9VnkF1LnlWTsyRmS7bF15/7iOgfdrr0vkJKVM1Zv/tqKEpBJ7Cbc0vW/VJQxZN+OlqGNc9bcx3cnqkRwpkgM25T0dVpoWtCgMwayUtbPFbTZWHHbpzHLF2BzYf5HyW1BoKXcVPM3r/rS7RETasRRsz2GqXXdfhjCd+HKVyv5kD9N3WcFNUsaq3TqAUZyOx9bO0Cn3gkmgz05JpfhPEylXwVpVAccOoXsNoFdxEKGO0w7pk7PwOhsW8sFprdXWp6OxtL0rrCNFF/llT", + "attributes": { + "enabled": true, + "nbf": 1523989586, + "exp": 1555526186, + "created": 1523990186, + "updated": 1523990186, + "recoveryLevel": "Purgeable" + }, + "policy": { + "id": "https://myvault.vault.azure.net/certificates/testcert/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=example.com", + "ekus": [ + "1.3.6.1.5.5.7.3.1", + "1.3.6.1.5.5.7.3.2" + ], + "key_usage": [ + "digitalSignature", + "keyEncipherment" + ], + "validity_months": 12 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "AutoRenew" + } + } + ], + "issuer": { + "name": "Self" + }, + "attributes": { + "enabled": true, + "created": 1523990175, + "updated": 1523990175 + } + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/RestoreKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/RestoreKey-example.json new file mode 100644 index 000000000000..db05afe61e74 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/RestoreKey-example.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "parameters": { + "value": "JkF6dXJlS2V5VmF1bHRLZXlCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUppTlRjMk5ESTVaaTB5TlRZNExUUTFZbVV0WW1aaFlTMHpOMlZrTURkbVl6QmpPREVpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLllNSVBfTXJRcTQ2X2ZwRExfSDNSSkpzSUotM05oeUJkMXlrOWJCS05JOGdnTjMxYWg2cWVoY1BISExnSnJ4OGprQkxMWFBxcDVmMXpsaWxfclVrLUtrT3J5YzhaSTljc3NNNV9TeTN4cEk0Wnk2V0ljNWNqUFd1R0NDbUJwQXlydEdPVnpoalF4bzNyVFcxRFNxZ1pVdnI4VEpseTJQS3J2aUlfUmduRWQ2LVJWS3V1Vk40ZWZWYUs5WFZUbW4xdmZ5Z3pwVHJfVFdDOVBGbXpoT0p6Z1U5OF85X25WcldWSE5TMXVMWEpYbldoQU9mUll0VlJORVFJRU5lTGMtZzNjTXJLOTFzNk5XeE5xZkZfR0w2UHg2cVhHMldXQ09nMzU3ZkJnT1ZTdERLaVZINk4xTWVkUTVwaWFkeHhUVDZMSFpva0I0eDFKbEFJZkxfYlU2OVBWdy5GOVFiM3RWbE1LcHJDS0stWUVpODJ3LlQwTVFpYXV3MGw5TWJfRFdEY1hvbzFqTjZJWXU1OVk3U0VMMm1ndFUweDNYTDl5VHNqZUY0Y2I0NExBaF9vUDdnbUgzbjdKLVZEX3hKN2hXY01XNnlTNDlFX005aXlndDlTQ2w5ZjRTdWtpM0NZdkwwUUVSVFlLSW1qMi1BRkRMWkl3Tm1HYmE4RzhheFBxR2NOS3NSZ0daZ1lUVG9pWUxxQnJ5cmJ2TEp1ZENxZ2plUWRpNU1tdHlQRnBhZ0hwSHZLa3VjRkdwLVhtSjFLYk8yQTJRT1dRVFFaOUNlcmVCcXJDbjI0SXdhUXJVQzRyTkQydzBVQTFUY3dFZXVWQkdFTGRKWm9zWHM2Q0dEZmpaSHFjdnB6NzRKd3g1T0VpcV9EUHM5VEtya01ob3djRXBsWjhaSk1jTlFSZnU5Sjg5ZDdZWGdHZEI1aWtKenA1WlY4OXcxMmIwekNITllKamdkZEhTNjJmalZlYUUxT09QXzd5Zlg1dEpiNmQ1QVhpZ3ItSkozbGI3Y2JhOXE2NHBsYmlhck1LemFiNUhtMkxNRnVLQnI1TmFrbzVQMDBoUUJnR2M2aXBJSzhNT2NLc2RhQjJGcjUwX1ViNnJEUzA4NnUzNy1DSHRGRnF5LTFBaGlDaXhRakNNTF9rWGtJMHZEYmJqRi1feGtNZGFCVi1BdTc5TzZ6V2pzRGVlV0t0VXZWUW5CMGM0Qnk3SVdDTGVWdzIyaTA5WWk3MnpCcWZPRjRyTmd4VTNrSjdfLTVib1dteVlXNndNOGVzTjR4R1kzUGhVNHlLRV91RGc2dk5Od3Q1c2NXWW9TMHh4NlBDb3M4S0R0Y3ItVXlwUTkydGhVX0ZYZ3E5U3RUWXEyWWdWV0dQbnM1Q0RMT0RBSi1sMTFJNklpdGxQN0hoeUxvMzlqNzdpV2ZUS0RnTDVrcDdEOUUzX3FkUFprdGpWUER1M1pRY1Q3MzlOMnp6XzFrWHJEb20tNlBQcXdWUzZtUXpBVW1xaXhTaXZjcWJxalpJRnRPbGxLRkE2cWVyaDJlU0FZelRNU0N1d0p4REJSQjUtbjBNUWxJSGpDMTdkTFpoVnFEMVNiNlBycV95OXN2Mml2V3E5TGE5R2ZHbEhBNlZZM1QzUWRTQ3VrWVJqWFhxLUItTm5WZGhGTVZhbFZ2b3NySmZuSEZhWGZMaTBnczVVOUt1NHlqRDdRb1cxeVIxSVk5T3JaNHFSUXdrcG5tOU8ycnJIMXBtX1hTekxRVDRrWmNLYnVneHNvWXRsRE9TaW9iS0RYdTFNdENxdkRudnh6OEZ3MUdwTXJCdUxrVlFEVmVlUDJqNFp3TGxPbkxUTmk4YlNjTm1fN3ZUc1RQbTRJRDltanBXSThCYXA4M1RLaTNkelAxazFpM0dncnIxSEpVQU96Q0NjUTRnaWxES1o4UkVsUWUyMUJBcUo3eUVublZsdWN5RzZBV2E3dmlZWXV4eEJIa0RsN1hHZHZYMGpJMjZyd2NTX0ZIMnlOaWFmZDN3SkkxMzQyWEF2VDdDUWVoOGRaZWRKU3FYUUdqQjVCSGF5Vl9vZnplVXBfOEhqRkRoS1VkcmNJNGkwa0ZwcEhkUFhNQXUxMjh3RHUyTG5VenlNNEpad1NJdW1fbmpiUTNJU1R5bUVMTngzd3QyV1NFT2Q3QUt5S3lCNEJzU3NkUE1HZXdLSTFnc2otSENFb05Cd3hQQkF2VnFDSUkzbGY5NG0tRU04LVh6TnRCVXFpT3Y5ZERCa2d2ekptSTlrMk9fVmpjbUZrbkdKb2kxVnpZcGlRVTRYbElaempDd3NDRHFrYWh1YmNxWFdyMDhVdFBtV0hGRXk0Q0tvclZMN1VIaVhsVnJPR1VHdFN2dWN3S2RjS1RPeldsUngtRGNGMExDek1kR1p3Y2czZWk1bWl0bFliRjJVbGJOMmJaU0NQWDljOWxFU2RBUUhxUEVsNXJhVDY3aDlWeGxPc3doYW54SkZvNGVuRENaYWZObURGRzJMYTY5RXFCVjZLTHowXzR1S1pDNW14YXZEazZXS3lmb0ROeXFzdVZMdG83WXNqUk4xNTJYMDVYSEhuRVN6NG5lM2MwandXYXo2MFpJR0Q1TUhNUUhQeTdPNFdnYWthVnNKZU9mYUNza3diYjQ5cV9tQnNYME5mWlBjcWFiRFhoWjdCWUxROVhFUkdibndkM0pEQmgtX1RUN2s2WERpY0tUblZQdWVGN3dzVl80aE9HUkpkVEk2UFRmV2o1dWY4dTdxRU9BdUt5NmV1Vk1LeTk3TVdLT1Q4LVpRbDBoSWowcmJWR1pILVI0cnFIMXZfVmdRUGRpLXFXb3FXcWt5MGFaSzNDTkEzUXhXZnRMR3AwcUVXcHU2T1EtQ2hONy12eE4wdFVlZGREWlF5V1d0d3g2VFcxS2hDQldaR2pabTlBQzY4YlUyQnVOTUU1NW9VV0dsbmNOOUVuRnpnTm1RTVR1SzV2VGd3WkJITWpmUXpsSUdfeWZ3QXVtSHljSzVPT092eDk1SGM3d0RBRDJXMVdSb2h5MDV5TFJkbEJ2XzREUXJyTWthZEVwZjB1dHZod1V3ZXZSNU1jVkV5Yk93VUw2Z2Y5a3JDNEw0YlR1bUJRbG9Ccng1aDNuTHhZdzkwcmlqbG5LajVZYkthZWpyTXdiSW15Ri1xVk5NbWpTd2I1MlN0SjB3T0czeE9HZkJRRHhQWHJtSXhoMERSOEdzSzBkeS0xSElJZWo1LW9STWRfSjlhVkt6MFk0d3g2VjIzaC1qUDNxMjRKYmF3dndsQTZyVjVpVUZkaDZKUXJpTU5DLV9hRF91X181VTd0OENIN1pWQ3VQM25JaTV4N2dtcWFsSzNlZ0htM3BkYl9sb3dYRTRaRUJETHZ0a2lobC13LVBGc3VZb1VKSUZWcUZ2VnM1RW5TU01XMFBJWE9TZlZNWW1KWmVrYmlHX1FqeGtCMjNCaHpZclNqQ3oxcW5TTXg5a3ZicDlRaDFuZFJYSkpJUFUyamVIdUxCNE9nVzNoenluQ2FxQXZQRXVHMlhuS3B4WGZ4QUtOeldpTElOLTBsUTRfUXQ0dHctZmphWVJVVjVLVWpyYlZnazI1MDZIUG1ZVEdWUVdRX203Z1NBU1BaajZEYklua3U3SzhFWnI2b3d1SDI1M1hxazlrSWwyTE1CcHZqT2tOTWFRTXhLcjItMllkUEV5LS1mTUFQTHBfVU15MnhqbEtMS2s3blhJdV9IMXZSbmdfVlVyVkhuZUdqRmFuODdRRU9SU1Y3clRBcHJPMmZUMmpfOWhoNkptdFlrUXFnRzg2WXlKa3NValdzM3hwZGk2TlBGRUxqQWd5T0ZDLTRrTWdLbGdJM2lUSElCV1Ezamp0U2UwR2N0MUs3QnBCSlJySUFGLTFVQjZKVDZjSjI4Z01zd0k5OGt1ZDVob1hZbVQ1bEEtWmFELUk4ZE0wcUZ0SEg4a1lXX256em85bTY5LWlZZlZfd3N5Mm1CdnVlb05RZGRRS0JrbWlVTW54VjkwdEF5RWc4WXJaWUwxck9jWHFjb2VJNl84UmV0bXZZeFZNMWJwdXFfajlmTXYtelRBOUpDZXlKMXFBTjVWQWFpY0lnZzFKWElDTEI5amVTT09zUXcxYXZxdk03TjFBcndDcjZvTUhycTVaQ0VLODV5VmI1RzhjY3Rld29pSFlzdVlPT0hnSDNMbmNoV3pmSjNNaUVjTTZfVjdSZHZCUWQwM2tQekdFVjh1STJ1aDl0bUxrNkY3VUt6WU02RXhJNW1LUEM5LVFOMk14ZTB6NDZrZTJteEdHR3cteXFMNjFHR0FpS0FjcENsSzVHeHlRbVBuREo4RHFKTk9WWDNoX283YTExVW8zMmtkdEcyaHVYcERVc2F5NkU4VGJ5R1dFZ3dmWDdaVnZrN1VNM2VqdDNqWXBxYmRZSlBNTUJCMGdNOU9mSVFjS0lUcm9IMHJEbFE2Wmt4UGM0ZHBlQ21NMzg3NXBXTlFrZzFKSnVRZzN4cE9WZ0VGallabEVENTBFaVZKNzg3cUM1YUdtakxRWl9yLVA3X2hJN09lcExWZ1BHSEFTUkxsd0dOLUZwTDc4UW9VempfWHUwNlBkNkF1VExtYmpoVmlERC11ZG5xdTVVR3dKNGxZamJqSkNBN3VQT2VfdWpzUWhZd1VHQV9YQnlsbkVySWxMN09YSE9UeGFEbEpHSDQtNHdNcm9hbmhPWTVoZ2NWZHZVQlpVZ1JEVWg0MGwzejhGVWJhUmxpaEUxeXQwdU5vR3F3TWRyWnZoTkl3YVFjUFlQeVV3UTdBdWh1dl9qSXRVcWlGQm9ncnlSb3Njd3oycXR0am12OEFRWUh5QWx5OXVqdmJ1cnk1TGNJaF9FUWZUekJuSnlfcDVZdzBDWG5CSzg3ZkVIOHJhWkh4V0VUcHFseHlmWWRWZjlQakRYTGJMYWJWQ2J6TXNSMnNYZkFvNm00VmhnaEYtQ0dOV3lta25EMDBUbWU0TGE0Vy1BLU9lR2o3Mi1uOFZjNmI5Zzc4d25tYkF0dGRyUThQWVdLUXZjdXlEbHZ5RUdHSF81VW10bFN5ajJKbHRLZXN3N1dzai1hazhDWDFidGRzU2xoQldjYUJ0dGozUmp3bEN4aEQyTXlWdHR6dDIwN3JPQjdxdEFJeVg1enJZMUxaSHB3RW1NeDhkWnM3NDdlY2ZhZVM0ZFFCWmN6U3lCNFZFWVRRWGdIeWdFX3EtYndfZXhqNWs5c0RHeHNTRnF5elFCVm9VOUtlbmFtZTRESnNMWFdaaW51UEhZUVNtWDJUZFBabXNkSHhCa3BBcHJiLUg0SGdFSnBPYWxCa0d3aFhza0hwYjZUTkhQeHktb09tLWhBaXptTVZPZzlnTDJOSHpSdUFtb0kzVTRFd2FfR0Vub3d0ZUFRU0xlY016WjZxZ3l1ZGswcG51UnlONlAxbTNCU1ExODRXUzNqeDFDNDYwTEFKM2FySS00QWV1aW5fMFZYM3FHdmEzNDR2ZXQ4N0RSN0liTUUzS01rWWtUdXotaHpqbnhHVVQ1cXZhWnYwNzdQVHExbTVDUVBUZGVlNlNnMzRmLXlseGg3MGoxSS1OWnZ3aFAyTFZ2OTJkdVZ4SlJSN3hzbEp6UzU3NXE3aWZ1UEcwUnp0NE55M1lESno0TWVDTk5wWklwTUJKeGR2bkc3azhsbXlvQlVRYmR6OHhCdW5YT3FsRDFHU205M05LYy13bzdxZnpJanYwWjF6WVpwLW5LN0o2NEUtSnp4MkQxZ2xJRG5vZGw5R215UzlwbzMzOUlZYU9QZlJnSTNad1FTVkdwcEJQN0dNRUdsRkVxbG83bTUtNFNZWEc2SmRYYU5yM2lRVmdoUEtkQWVpLWJDTEFQbGJGSkNFQVU1NXJfSEVmS2xUNS0zNlN5ZHRlcWFTZEdvMVhGRXpadWFILV96OEJsd1hXME4wdFJpdHo3SXh1OU5BTkM4R3V0Z2t2WHVFUl9Obnc1VUlsYXJlcE02VERfWl9lOHJGRDdoYXhWMVd0b1pkOUJTd05iUm1JeXU2Y2ZaelgyeFNPVlJVSndWSEctWTNaRGRpcWtzb19XR0J2TFJKQlRWT3NvZVZucWUxWktqb0NRSzFEYUZPb3B4UDdTTWhwOVlpY29XRk9VUU5ONS1EQjMtNjhDbURzdjE1LXMzRFRxUUM1OHhpd2JZLTRuWWt0eVNRV2F5elRvYlZOWG1idmI5SzktdWowYVRWRkx6SDFHMFl2TG1oU1NTd2tfM08tY3RSUExFblhQU1FWNkdVT2p5d0xIT1hTRDZfY1lTN1JrVXR4Mmc4bV8xbmhJUW0wOFd1aTVNSkdQR0JEb0RmN0szd3oyMnRnUVFXTDEwY2J0SlVvQkYyNjJVaUg3TE5pMjJWQ2tsMElYMVVRNy13cEkwcDhkV1NvV282U25PYTdkUTVpQkliZjlQX3JRd1dhYVl1NV9aQlpwQ000VXFWY2dhR1NZVnNxRHpXRVY4LXRjazBYOE51STJyZ3JSOTRDSnhjSms5MWwtb3owbldhTUFocHJubjJfd3hSWEdOYXkzNmJqU3EzWXhNMXN0dDFNN1JjenU3UTJQei1mZGpHWUFOSHZxQUtYUTZpbUphQXNwbE50Skh1SUp1andyTlRQd0ZzNGE5bDRkWHdNMDRRSWZoYzR5em1icDlYRjdVWVU0MjNXTWhRU2RMNUpaTld5QXVxOEFuRzdtd2dTUDNUMjROVGh1U0Z6Zjd1Tk5ySmdfUFk5VUNWcmlPS3FEN1lVS0FSZ1FFQ0EtTmthbG5YU0V1VEN2azJpZkVYOEh6cTJJbDV3TEZyOVFKVjBmT19EUkNyUzVzRHVaVmJ3RDI0Y2VqT3libWd1VWFuTDhiMklqS3h6TFVPT2tlMkVPNVRRTXRQUWZjeTYydkV5c2NwQzJFYXd6YUN2V3ViMVNXS2RZVnUtcVBzdFV4eWlPUHNpcFR3V1kzTXVNRkpwclNscWFVUDFJa3N6M0Q0VGpqSElzb0c2TUFsbFRZcUItSWpuSEhmYzI2blM3cmExeVVjbHRIRWtEd3Q4R1I2bmctNk9XNWJtT0J2VFFDamRUUDhSbXZ3b2tIRXZGQTlXbGs2OVZIVFpFSlNaNGdRZXFzcW83SEJJQ0h3dlViOW16YkhnaU50bGQ1WUFHT3V1U3BOTE1UcTM5LTMzVVZoTjBLa0hLUXZCenI1OXFmaFBIU3lVRnVMZzI4b2pYMGRvb3gySlFEZ1BobHZVYkR3cGluREJqVHBiMDdsY09EYVI3ZWN2M0tDOUhJQVdreDlhV0lza21Yb0FWYVNWTDBsZ05NQzNHVkxSMURfcGVoQTZySWs2Rl9qbDY0N0w4SERqRFJEbjZRRnRIa21BYW10TU9WSzdPMS1UXy1UTldwaDZ3YVFOdTBrV1ktZXAyRERndDk2enRYUkZTVWdNOXJMMnk3OENOMkVFWW1mQUktM1VjamdUblUxRnJXaEZ3dC1JNlVmNFZwNlY4XzZxTjJzVDJyeWFLWHo0Y0JJY0NoNm8tS0RpOW95SDV3MFF5eDhWb0xTNlN0YVEyYU5FejlKamctZ0N4aVp0Q1JYeWlnaWx3NTQ5VWFWMldreHR2bDZkeWRmZmFTM2ptYUxqaDRmOXhHa1JQRUdqZmZvMVY0dUN5QkI5QkNoaVVCZG1qVGxlVlJROG5Ccm5WQW5qYXVIYTRsV3VkNkhjSzU5VjJNTlpNTVdtS0tvb0E4cWtuMzVUY25EdXluSjJITUNnZElCSnVQVU9TeTI1QnhuZnA4RU5NSlZrV19UeU9uTXk5b3JtNTVobHhmSjRENThad2FRREs0QWlFZk1IVHdJc09uZ2pnU0o0S1JDdjFRa1NVeDdYRVhNU0lNUWtUYTBqS19aNS1PQ1ZNc3NBbzEzVzg1VlFKbVpDQ0tZRzZWbS1ybnVYSUdZZlZWLTg1OG93OEJZUGhDYVRhVzRkVnBLWERDRDVfc1FsamdJSnd0Vmc0T0RKY1dxelJpWWpUaXMyVzVjdlBvT1haNUIyZnFaVTlCWGVPQWM4S3Y2a2ZDVWp0OFV5UDFTaGswN2xtZ1A5b25PMWJ0eVc5VnhQSE5uUHcxNjZDeXJmVVcxaEFHQjB1YTFNYmtEVTdfdk40SlowY3VWNV9iLW9sUm80eV9yeGQ3UGRWREJsZHBWTUxsV3haLVhiV1VqdFpTVndaT01rOEtvV2F0bld6NVI0S1ZLNkFnbWJFTHhpa1MxSjYxZ1lJNlhTcm8wRnF1N0dNM2JXdlZQYm1xR3Q4SV9UcjNHamlKeDZ3OUhvZGlLbEZQc2JMakE3OWJuSG5DcHdwSEZBWGI5d3E3dmMtSF8wTU1WVGw3eE56bzhIZ1FfR2tPWEl1OV9uMVJiZS1SRDRXUmlId1RuYm5ZbXpHNjN4b3dHTlBJN2c4R203ZkxfTnpDWGhveDdUSUhXMjh0WFFCeVk4ZmR3X3YtMUtvU2lhSjNwNHBJUnlRQm1rQnpmOTlGRlpPS2g1bUxLMnBrSE9INWFlblFFNng2cHFDakNkcW53Uzk3eGJ0Skp1TkF4M1V6UDdHM2l5WlN5ZWw4SEd0YU1UZVdITzFuaE9lZFNlcTVhaGk4dEFFeVp2MFFScUxsQTRaQUxrVGh5ZUNZckpBd1cyaUJaOW5DRUVnemxqT01wdTJndHpDRnk5WktZWUloaWZKdVQ3dlBHdVhGTUtLVlg0WFU5ZmVoOFhIMUVWbnZ4cENuRjl5eEZneThuVW5CdUdsRkVWOFVCVU5oOE5BcElZY3BlTDd5Q1F5bDZQN3Fock43SEhINEloNmhLS2lVaUItWjRNMHJUSk9mZkd6MFhGWmlaSDdYT21KazBNc3pCbEVhaEFFbjJTU1JaaVFXTThsRFRRcEdrX0p3QkpRX1FVTmtMZnhCcHpsSzBUMGFxS1d3M2doWFktT3FqelM4cTFXOHVBYzNabFRUMFZHRWdWdU8yNl9vRXpXTnZYYnpKMUVfVEFxUkVWS0xfOWFlem1zM3JqYy1GdldSR2pMV09OTXhUdGw5ZzE5RFdhbFA2alJlUlJFeEg3djBLTEdvSHV1RW5IVHNQX2hsMnZuM05WWWl3dFFualFCOXpiMjZKRmxwZzZFaEF1STN4bFZMM3hwRE9qZUlPNXM3MllKY1MzcjAzYkIzbTVHMUljRVU4SkR2WTF5MjJQaG5iOGVmNno1cmk4RDY5clVLWThFOXFraExXYVhOMjRTLTZBYjNRZUtKcmxIR09yaEc2ZkpCdElqTF93Rk9kWjJqOFo0bVBZdmJaNUNEUTdnM01yYVh1aVJ6cWdvdXk3TkliempzOEZETkQ4ZHNMR1Z0OUNLanRVMnR5a0JrSUpQZlhrZ3U0LUpSVFRETjNINGdwek9md1B5V18xOXRMdlBKNEpRbHlzbnhKaEptSW5TUEtUUTljclJHVFFlS0F3THZZemdCMG5QWkIxd2dQVWJHaXRsaHlTV1pqbWplVU5oSnNnb0Z3ZHRFdTloTjRDejROWUVLZ1ozWnBKTC1sZmVJbmp0VEIwN1A4dWtpV3FHeGNBaVI5TDRPdl94VmxNYm9hblduNENNLThVSnZjRGhVRGtpTGt0eHRJOE03Zk01bngtMkFSX3MwcnlDV0F1YmVmQUxRdHVEUnQ1MVZrZnlJZkJ2UWFyb3dINnpIX1ZfZ1lJWFdOdDlvTElMT3FrNHlqcmR5Z0ZXWTl2QXZQN1Y4Q1lraUZuSVVrWGNaeUNsT2dmcTM5bXRKeHBMM2Nzb3VaWFRIcDExZ0xibWRUNUVTbjIwRThiblpEcTVvSEVEWGxPbGZHSE9ldmx6RnRCX1V4R1h0S1lYOUoxQWlLekJyZGI3QmJvemRFcDAteHVpeTZYRFp1Yjc5LW1LcnVQTDJaWWIxaTVoVmpRQUN2RnAyUHBaT2k3eFVmSlJoT0Z3Zi00OUphVE9XTjMtYVhVb0N1a0NpMWdqODhkQ29QWWNVdWs5WmxNelpkV1hJcDlnQ1gyN196U0U1WURCYWlWQ1dPc3c0Q0pGYmMta1FUOUNaMzRkU1hiczZ4S1N0OS1haHI5b3NpY2JHY2laMUlDV182WWRLM0l6ckh1UUV6TnNDQ0tEdW9iVVFRZFpBUlFMeWFlR2w0NWczN21Gb0tQN2J4b01aY1AzRjB3MzdBR0xMVzFjVi02dU5uaWhZQ1p0dThZckZQdWF4aF9VVUxPTk1SZXN5TFVsRHVydmxuQVV5ajFVMU1TbEMxTGtPbV9VV29NdVBzX1VqU2M3SDc3RTgwcmd2QmZCQTdaMkRQMmpWOFFRUmI2Q1RieEtpRkk5TFhmRlI3MjlFcURZVXVRRUk1ZDN0Y3liN3U4TzJlQnZfVGo5TzRPREx5Wjk3Z3BMdVZ3dUpVb3FqQVJnRU91U2lHdWwxaFJxYTl5NlZ0ZmpMNE5qajJJYjFsY2JyQS5OcXpkcGU4Yjdxc2MzQmpYRlhaWVpR" + }, + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "body": { + "key": { + "kid": "https://myvault.vault.azure.net/keys/KeyBackupRestoreTest/d7a019f5da8843aea30722a7edcc37f7", + "kty": "RSA", + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "n": "v6XXEveP0G4tVvtszozRrSSo6zYDOScH8YBVBBY1CR2MCXBk-iMnKgzUyePi9_ofP3AmOxXx-2AsLC8rxi6n3jQNbGtIvQ4oMdUEhWVcVkmwdl0XyOouofEmIHeSxRg6wXFG4tYAKLmKsO9HqmU5n7ebdDlYngcobc1xHsP0u8e0ltntlgWBlSthmY8AMKW9Sb_teEYhilbkvt_ALr00G_4XHmfq7hSOZePWbGSWQW6yC7__9MrlDfzaSlHyBIyLppPEB7u6Zewrl_eNJWoUVrouIGA32qNETIOr_wxXRVGKoerTt-wFC-CXPn30W_6CmKSxoFBNvnzijg5hAU9V0w", + "e": "AQAB" + }, + "attributes": { + "enabled": false, + "nbf": 1262332800, + "exp": 1893484800, + "created": 1493938217, + "updated": 1493938217, + "recoveryLevel": "Recoverable+Purgeable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/RestoreSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/RestoreSecret-example.json new file mode 100644 index 000000000000..4c2e8342b043 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/RestoreSecret-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.1-preview", + "parameters": { + "value": "KUF6dXJlS2V5VmF1bHRTZWNyZXRCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUppTlRjMk5ESTVaaTB5TlRZNExUUTFZbVV0WW1aaFlTMHpOMlZrTURkbVl6QmpPREVpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLmhERDdfVW9aU1ptR2JYN1dYUTU5WDkxZ0FQb05kdDcwZE1BbmgzbjQ3eWNjbkRNOU5vTm1hY0NHZmlNeUwxU0FlZDk0UjhBNDAtVE81TDNfQ05Qal9pdWIyaW03Z21nbHNPNnFFUVVIWU1tOEh2Wl9odFRrdEl4QzRPWEowYTB0S2hscnczZlBvVVFDZHVGcFg0ekEzYTR4VTZXTUNfYjZZVXZqUjZnSGM5TFRUR2tIazh1RTY0aVQ4cmt5RDRrU3RNcXhnU2lfRVZwUUdjWGdfNE9wQ1dBOUFha0N1NkpybGRaQW9BLUtXTWpQbGhaWHFYWGMyVkJlbUJjRTQ1YzY3QWhqYjJrSi1uQ1c5dHBjWS1JZ3JEUHFzWkswOS1WbHVtcl9SbzQzcG5FeW5jVFpTdzZlX1h6VnN0dUFOZHdiM0E2OVR1c1hfYkJKZ0J2SGQ4cDJSUS5WMTlhMVRacjZ2UjJHdEVaWGtOOXJRLmhwMU5IMmwtZklWbVgwWlNfTlRzekJfUEs1aktDUU5rSnJyRUhRQmZjQ2VjdHhmVU5uVlB6MVBqRWNDblZuV0pCUk4zTlFKZm01MjFLRHp1MzBIVUFEUGVmVHJyMFVFS2x5QTM2cThoWFY3VTdoQ0dHNk85NVpYclRsZlVENDI5RTNTNTQxdVBmWGpGR2cxbHlucFNTNnAtVkFzaXFlY1lpQWNuM1hhNzRhUm5xS3N3ZzhyU1ZOX09hSVU3ak1VVUhYZWY1ZmN0NlFrdWFfYkt6Z2dtR2ZiT2RTdVdNRmVQaF9mMkJMUFNGN3k1NThEMFZxSVlNY0JJR0dMU3BQUU93Q094OFF3Y3NVUEp4ZDFuWkVYYjRVNEJZYlhBcmFMX0NwekYxZlhYWVBsdmVUSGdKNVdrR28tWXNJVzAtT3ZqVGdLN2hIamxpR1psd29HOVUtbTJSVDZfbkhseHhVRFMyY3JseGNmay1OOTlXd0tEdUxFMTM5ZE1mN2RCSEl1aTdxd0RXdm1TN2JMTHYzM05Wd19XSl9DT1VGQjgycy1ELXk0UEdIRzVackhsSDgxa25mLVpRblU0SmZfY2lhMWhmWlY3ZFMxb21UZDQtNnJwZmpTMGxFT3VfZTQ5bUpYUGFpZ0hyLWFQYkFzTXJJQ2JvOUVIR2IzMXJ5SlR2QXF2ZmJDbU10bkdLUDV6aUNiZFh3SU5ONzBJTk5lZnJLWGZkZFBUd0RSV3d1ZkxCcGNlU0U0SG5EWVZVQmdkMDl4UUZidG12UDhhTXhhUlpGSTNpWG1fbmpCNmZfdlNhZUNUakdVYVVuRE1QQkdOQWQ5T2xVX3dvUnMtalNCVnVqd1FQSGlGcm5RWElkXzBRdXRYSm54cTU4aUtlTGJvNDJtOHgwaXBRcnB4aEZoUDdHNmZOWXAwVmxXR0RxZ1Q0VlpPQkZsZWRKUU0yaDQtb2xTbXdtUms0M0Y1cjdKd3h4aENqU1JReWx1MGEyQ0ZONWMyZjIxTElZaFliLWNReWFXMDNpV3hsb04zWld5cDJIb1FlUmZPR3lXUzBiU2NBT3JndGpBYnJaUFIwMGRRNnpSOHNBczFYUzh3dzBlaVczbFpsdjJwVWFxOVpTeVhnTS14b2NTOS1ueXRaWGtWWlUwX2dDVXJBV0ZKNG5XdW9oTGM1RkkyRWFQNWR0SXVWa3dnbXlsR1gtYk9ZeHp3dzVGYmI1V3VEbnJ5aDBMSnVic3Q4VXdLdnl3bk1jQ3duMjZSVTNxQVRudGJubVhJS0FyeGkwMldQVk9oTXdpUWZuX2h1TWk5emp3MEVuaXNWdktNWUNnR2xqNWlGZW5Tc0FKUXBiLUY4bng3OWFJQlJaTUc1a0huUDR5dGxmNm9FTkRsRXNJY21aeEtOdEIzcmJPdVROYUhLTXZBNmxSNzlMMDJZSTZrcEdrUUZnaHpIaTBjTWkwbFdCejRTM1AzUEMzZElZSVlQZ0Q2S05kT2FLWHkta0dWdUlsWFNmVlVrMnpzM0NBeTJhZEJjV0NMV094ZkRoQnlwNTl4MHpBRExvdnZySHRLOWF6TGN3N0lTbVl6eUhYMkpobVdReUYtTFd1VzhfcW41SkFVYlB5Z0RTRDYyMi1PTGZQVDZmc2VTWUVBUTFLVWRwZTFnSV9hZWxVT3FaRWN1aE5SckU1YUp0LTN5TEVLVWZIWXF6WTlGbHJrUE5MUC03Y2xRbmEySEhfZmMzZV9LTGtGUDFhQTJjM0RVaERseGhsTzB2bFVmV0c5eXpXaDNZN0NmRFlFMlBaUzZBcFBlYy0wa1NDcEVKMmtCcnFzWG4yeDJDX0FDdTdCTTVGZXNJQkN0M2NqSEdQSVVQRnEteGVmT0RCXzBQcXZDTXpBOHg5Zm10Ny1sNHhVQlJaa0dtZExhZFoxVzdFUXRNRVpsSWMtbDF1V1UzTU15cFZpVWR0OWxJUHVQVUEwc1NrbWxrTGhNSjgyNE5QN0hyVi01dC1ZNDcxaWVKMHdEUjFxMmU4MU8yazdNeTFlTDY3TlY4OVBHYU81SVR5WG1ueUVXMGtVbl9qa3l1UVRkV3dsS09HZVZIYkJWNFpxSXZHWjdQUS02TEE5eXc3a0dyZFRhVFZXOEdOOV9GY1c2VUhjbzA0U3dqTzY2S2x4VlFJWWpBdEZPZlBjWW5xNzF1RndyQS1UZHVDZG1sUFBHOVpjc2tiQmdrbF8wVk90dmhuc0pwYXZKZ2Zka0d3OF9qMkQzd0Jzemd0VndHNk9nNW16eVFwM2pFc0w3UmNtcXd6WFBOaDdKYXdHVDBJMlRvZHYyQ1Z3MDkzWjJlODFXR1NxRnlIejAxdjFBaGN2T2VWdmFjUGM2Y1JJaVduNW93ZF80d2FBdjlyNjVVdmtWa1FLRXpHUmo5eTZILXdZTTMyV1JyMzBlOU9MRTNKUU5POV9kNjRTRmIwSjZHa2VxUmtnNkVXc2xqN1JYLVU1VlhrS1BtMzNpS3c5dGU2NVBqQUNnZThRVDBYVWZEaUx5a1pGeUdpZ09ZMS1TVDFxUlE1eUhMTXhEc3BPRjFXd1lMQ2c2b3hocTlWMm55Z0U1cUJ2ZnYyWUtFaDdjM1dWNjJrYkw3UXJ2d0xkMHVRZ1FwYmUza3E3dGJzcC1lNWlud3cyY0YxQzByeHNScGZJRHlJMmg4b2xHMi1RQUZkWmtlMUlmaE1FZmNfdUdXX2pqSGJSWXVzYnZCRnpKMDdaOVJsVnFMR1A2WXBnTDFsRTFOY09xUVJyYVdxckdDTWZ6SzZMVENQSl93aHJRam9WTzdVRDJIUEVnUjZ2S3U3cWlmTmo3UjE5OUJuRi1EZmlnbk1TYTFKZkZadDNuVXVZOEhMUXRoUzN4MUMxOE50d3dsaDVuNGxYS3d5MERHenljbVNweE05QkdPNTFRckFmSXRfY0xHbUlzMlJ4MzMyeDRIdEZ3Z05nRzFBazNIUno4TlJ4V3lhNWhjb1NoYURXekhES2gyOVp3Vm4wYXVzeWJpal9uNlFGcnZZbjRSOHdPNlRQV3FrS09JcHkxc1lQNWxyNDc1anZSRVZGaFdCWDBiUXdJdnNlM0Q0a0dFQzgzU3FWYkhxY3phZTNwOFNxaG5tQW5ZYzBIbWp4clJfZUMzT0hYVFBGUFZmNDlVWHdrQjIwY1lvcjJ1dzBaTzJ2TUg3S1QwcjBSWDBQVy1qcGpORFpjSGRSNVVCMXFacGlWLWxaYkw0eF9IZW14aWUxY0RPOHNQSXhIOElUSWtOV0tTR1N2eWdraHBBbGl2RzVEZXJObElkeFE2c0tHQ3RtMDEyT2xjN2thaVFaNHh0TjR5ZVpPU2xyS0s0OTlIcWhObzhkNTNsbFFfMW5ncWlHbzhUSDlzWkFrclYwclc3dkJOSF92UlhBdTc2MnlpZGhZUURYYXJXSEFUMm9DU2hEN1lOdnotekoyZGtEajJMcW5CdFNCWFh5T2xsM3o0ZWFITDd2MDZ1QTgxMVBKQU5YZUdoenNaNFVQQUQ2Q0E4cGlxSHB4WGkxODRHNEJETVU4S2VHeHZLWnJiUlNOT2pTOFNrQUJKZERfSklIZ1RhNEFhNzdPUmNZcVY3OWZ5djFZVHNma2lLR2NUYzZIUjZzUVpsamt2U0NQNjdtTTRGUHRqTHlfX1pDQlNwdnRSVWd5UlpNM1dSOUViNHkxa29uRG4zUjMzN2lpSzdfbGtIa1UtZ21VbUpZUVdnUjYzT01pZUdRUHdNR3BSZXlRWE5yckJVTDN2Z2JYdjlac1ZDcDh1NHRwQjBleXJvUXgxZC1KSWJvOWVyR1VlX0ZzU1Fpd0tIaGFIUk02Nzh5dENkcHJFbDBWeG92TFVrX0xNcTFjN1R4MG5jbFl2WE4yUjhEMXNhU2FibkJSd19CU2tZMFNMSXdhb2RpY2o2ZzdLd0ZfMXB2eThhNF9LbnJNLUNkenBvdHA0aTd4QUJuY2JRVUEwWkpsYlp1elRpR0F4ZjFnclk1Z0dZOTVoWi1XZG1lOWlSazBHRTJGN3d4MlJyLUVvS3lZRjNjak0xMWt6MWFmME9fNFdyOXJoU3JrX1NHU3l2a3ZCTW9NZ0xOX0tSS1BlTjlqUnpwRlVST2VnN2NCbGlhdy1odnZhY2lCeDN2UWRqTE5jTldQdU1UbzVmME1QbmU4TUtXcFBoWjBySElMaEVuYW1pcG82X3pzNjczcE9ma09FS0JWWE9mUDEzR0UwS25SWTBab2JPLWRub254LVdBY1dodFZvX08xbkwwTWE5ZXFMMURhRGhJU0JNbVRIM1hkY2dDTnF0emIwcVMtS1l5Mk9zRzZOakRDVEM1aEI3MXIwU09WMUprNFV2QjdYemxTTW9YUXJnTzF2ZFVwSGtxaVhUM1RJZmlQMWRKcDEweDlSMlp5R0lzUzljQUtNMEZyMGRxQmJmQy16NTJpcWZweW4zUVVqb1Fld2hPYnJwUEZGOF9lUmVNRlIwSXZjUkxnMHpwek56UzU1N1pkQkZhemxNTThLcnkwN2QyUDAyTnZtclUtN1ZjOW8wZm1qem9WOHVVTG9PMkJHdmFRdnFJNmtBTmQ5VWo1X2JkY2NVUzBhcklzcGFZa1UtUXQtNnQxYU5YUUdGZEtUbFMwSVowek54bkNIZWRySEE4SkYtOFg3d1ZpRW1McXJQbU1Sd25sbWx3SnhxLVlReWMydmdUallSbUxCVU5TS3VrZkJsa2VnMmlCRWdySksxVlNyRWswX0ZvOXkzV1EwVlZuNXhEZXlGc1JuWDI4Tkl6alFQLVNXaHhYbzdPYm5YY1cxZHlWNE1fYjdzM096cEMwOTJWcGZYQkpaTDhBeHgxNGY2TmJzTEpXLW95VEdsaTJFb2FCZHJKQ2JkQlNOdWJlbGdRRmU2V2hqSjRGdlNrYVJISjFTT3ltbGFtQmYwaVNDOGM2X1g2SkZORjNmOXYuQjc5SDJvbVIyTU52SndydHVzclJ4UQ" + } + }, + "responses": { + "200": { + "body": { + "contentType": "text", + "id": "https://myvault.vault.azure.net/secrets/SecretBackupRestoreTest/01ddd6e3a0d34d35bb5bccecb1251837", + "attributes": { + "enabled": true, + "nbf": 1262332800, + "exp": 1893484800, + "created": 1493938113, + "updated": 1493938113, + "recoveryLevel": "Recoverable+Purgeable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/SetCertificateContacts-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/SetCertificateContacts-example.json new file mode 100644 index 000000000000..4619c4780013 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/SetCertificateContacts-example.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.1-preview", + "contacts": { + "contacts": [ + { + "email": "admin@contoso.com", + "name": "John Doe", + "phone": "1111111111" + }, + { + "email": "admin@contoso2.com", + "name": "Johnathan Doeman", + "phone": "2222222222" + } + ] + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/contacts", + "contacts": [ + { + "email": "admin@contoso.com", + "name": "John Doe", + "phone": "1111111111" + }, + { + "email": "admin@contoso2.com", + "name": "Johnathan Doeman", + "phone": "2222222222" + } + ] + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/SetCertificateIssuer-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/SetCertificateIssuer-example.json new file mode 100644 index 000000000000..df86dd885438 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/SetCertificateIssuer-example.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "issuer-name": "issuer01", + "api-version": "7.1-preview", + "parameter": { + "provider": "Test", + "credentials": { + "account_id": "keyvaultuser", + "pwd": "password" + }, + "org_details": { + "admin_details": [ + { + "first_name": "John", + "last_name": "Doe", + "email": "admin@microsoft.com", + "phone": "4255555555" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer01", + "provider": "Test", + "credentials": { + "account_id": "keyvaultuser" + }, + "org_details": { + "admin_details": [ + { + "first_name": "John", + "last_name": "Doe", + "email": "admin@microsoft.com", + "phone": "4255555555" + } + ] + }, + "attributes": { + "enabled": true, + "created": 1482188806, + "updated": 1482189526 + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/SetSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/SetSecret-example.json new file mode 100644 index 000000000000..895cc8ad0202 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/SetSecret-example.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "crpsecret", + "api-version": "7.1-preview", + "parameters": { + "value": "mysecretvalue" + } + }, + "responses": { + "200": { + "body": { + "value": "mysecretvalue", + "id": "https://myvault.vault.azure.net/secrets/crpsecret/03bcccc7c8cf4546a0e3e21e52560441", + "attributes": { + "enabled": true, + "created": 1493938459, + "updated": 1493938459, + "recoveryLevel": "Recoverable+Purgeable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/UpdateCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/UpdateCertificate-example.json new file mode 100644 index 000000000000..b1ad4a7b07be --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/UpdateCertificate-example.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "updateCert01", + "certificate-version": "c3d31d7b36c942ad83ef36fc0785a4fc", + "api-version": "7.1-preview", + "parameters": { + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799 + }, + "tags": { + "department": "KeyVaultTest" + } + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/updateCert01/c3d31d7b36c942ad83ef36fc0785a4fc", + "kid": "https://myvault.vault.azure.net/keys/updateCert01/c3d31d7b36c942ad83ef36fc0785a4fc", + "sid": "https://myvault.vault.azure.net/secrets/updateCert01/c3d31d7b36c942ad83ef36fc0785a4fc", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "cer": "MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1482188981, + "updated": 1482188981 + }, + "tags": { + "department": "KeyVaultTest" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/UpdateCertificateIssuer-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/UpdateCertificateIssuer-example.json new file mode 100644 index 000000000000..d41f5d589cc6 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/UpdateCertificateIssuer-example.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "issuer-name": "issuer01", + "api-version": "7.1-preview", + "parameter": { + "provider": "Test", + "credentials": { + "account_id": "newuseraccount", + "pwd": "newpassword" + } + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer01", + "provider": "Test", + "credentials": { + "account_id": "newuseraccount" + }, + "org_details": { + "admin_details": [ + { + "first_name": "John", + "last_name": "Doe", + "email": "admin@microsoft.com", + "phone": "4255555555" + } + ] + }, + "attributes": { + "enabled": true, + "created": 1482188806, + "updated": 1482189526 + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/UpdateCertificateOperation-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/UpdateCertificateOperation-example.json new file mode 100644 index 000000000000..3d4a3d36932e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/UpdateCertificateOperation-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "cancellationRequestedCert01", + "api-version": "7.1-preview", + "certificateOperation": { + "cancellation_requested": true + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/cancellationRequestedCert01/pending", + "issuer": { + "name": "issuer02" + }, + "csr": "MIIC4zCCAcsCAQAwGjEYMBYGA1UEAwwPKi5taWNyb3NvZnQuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxxM2zqnPtpH8aiHX5TdEoZLO0Y6fsjk9QcjKgnHomrwUc9vK20UYYEPKt9aGOT7HNx0do8OulPCnLPrKowci8UHu1qRW/qHvsOJQ/UrQoMCHxtXptVc7Avx8WQb045sCdgp/Cl4xO8LMZa70kE4dghZU9zmNZk8wqDIxyYdh1lqqfGe49EWOxcfszTeeKs8KCsQznjExbsudBHLLWoX4VFTGMe3VcIPcV6iFf70buHKznDMXFiRC0IYwkc/GyWIadB1CSEae8k/0evsPI5lYYZLaO/kLffEUtzysqxZNCQR+S0eVPTGTLHa+fndnPPs65XZDzSZi2fZL01oXUfCAQQIDAQABoIGDMIGABgkqhkiG9w0BCQ4xczBxMA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwNQYDVR0RBC4wLIIWb25lZHJpdmUubWljcm9zb2Z0LmNvbYISeGJveC5taWNyb3NvZnQuY29tMAkGA1UdEwQCMAAwDQYJKoZIhvcNAQELBQADggEBAKto/ZF9+02fQ3sLuIsRuap/O/AZz3IhAubNfyCaWvVGVAQz/Aqpf5c/liyKhxqRG6LR9Zu50oxRK5222ezR+56vJikjdXRVShf2xYsMm1CbCM1JuzsnkTeoUHHE12xx1srH/9TH+DVZIk6NXxc4wVIagbpwxiS5gR3Nly5k0ZVv7R1B79J0GUqSwK6qjuooWrBsYMEx319hz8fB/Y4jnPE8p+Cnn3AGEqnebVngXncq/QnHxnrRVfvKFVySqRvlsvM8buILmBbIaywEUqwhNtZX2i9E7reEJ8aeZcf+lAeKF3YDvffaXGTc75aiZlBk30Lv/hn0vs9T0/FedUnIae4=", + "cancellation_requested": true, + "status": "inProgress", + "status_details": "Pending certificate created. Certificate request is in progress. This may take some time based on the issuer provider. Please check again later.", + "request_id": "3dd81d528cc84c5a837c607f1a50f2e1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/UpdateCertificatePolicy-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/UpdateCertificatePolicy-example.json new file mode 100644 index 000000000000..1ed42e67df95 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/UpdateCertificatePolicy-example.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "updateCert01", + "api-version": "7.1-preview", + "certificatePolicy": { + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Self" + }, + "attributes": { + "enabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/updateCert01/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Self" + }, + "attributes": { + "enabled": true, + "created": 1482188947, + "updated": 1482188948 + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/UpdateKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/UpdateKey-example.json new file mode 100644 index 000000000000..c0c888ce2e35 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/UpdateKey-example.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "UpdateKeyAttributesTest", + "key-version": "3d31e6e5c4c14eaf9be8d42c00225088", + "api-version": "7.1-preview", + "parameters": { + "key_ops": [ + "decrypt", + "encrypt" + ], + "attributes": { + "enabled": false, + "nbf": 631180800, + "exp": 662716800 + } + } + }, + "responses": { + "200": { + "body": { + "key": { + "kid": "https://myvault.vault.azure.net/keys/UpdateKeyAttributesTest/3d31e6e5c4c14eaf9be8d42c00225088", + "kty": "RSA", + "key_ops": [ + "decrypt", + "encrypt" + ], + "n": "tHCSyq1FqGHXIFHs1m4riKYgPFNSTlJGPzxwfUyZJUxxZsFWMxmZRzbM3kcXC5N40AJfeqDOMs0gY0LZEfhw8kJHBf2GEH2Sz923E4OQjLk_ECdAiKPW_8t22cqD_pGIuB7uibjLZgFFRv7oe0t8cTXKn7IwAH5gQBLs8NNV7hx1Ozy82ekCgOovFldmD3c3P1oZQ_v_-jOP6O202aEfDcZut42J6zI8eYwvGiDKmo2fCPPeth1LYBOeUMnrEZGT_f_w3yAgqvuSkHCL0x4MjZzc2EoNI_3ooAHZohDaPHLRfz8neDPADZzbHA6SDn3GgvC1K_Je5GBmqjTH3aIMlw", + "e": "AQAB" + }, + "attributes": { + "enabled": false, + "nbf": 631180800, + "exp": 662716800, + "created": 1493860275, + "updated": 1493860277, + "recoveryLevel": "Recoverable+Purgeable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/UpdateSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/UpdateSecret-example.json new file mode 100644 index 000000000000..0ab17dd1cfaa --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/UpdateSecret-example.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "crpsecret", + "secret-version": "03bcccc7c8cf4546a0e3e21e52560441", + "api-version": "7.1-preview", + "parameters": { + "tags": { + "mytag": "myvalue" + }, + "contentType": "myContentType", + "attributes": { + "enabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/secrets/crpsecret/03bcccc7c8cf4546a0e3e21e52560441", + "contentType": "myContentType", + "attributes": { + "enabled": true, + "created": 1493938459, + "updated": 1493938459, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "mytag": "myvalue" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/backupStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/backupStorageAccount.json new file mode 100644 index 000000000000..3658a1fd74af --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/backupStorageAccount.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "backupStrg01", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": "KUF6dXJlS2V5VmF1bHRTZWNyZXRCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUkwTXpnMVlqQTNZaTFrTlRRM0xUUXlaVFV0WVdVNVpTMDJNVEJrWXpNNVpHWmhaamdpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLk1JeFMyLXh0eHAxekpaZ3ZrTUY3d2pGMWxiLVJyNWFrbHFMLXpBaVVOODJKZFJNUDFwak5iS0phRktIOXBRcDg4ODBKeERDSmdESUZHc19OOGlnYmdIZ0Q1c0xVMi1pRzdKM29Hc00taFRMb05oaUd6aGY1YVREakYzWjZpZVhxcFMzVFVOVUFkeFhpTkpIYk94YjBmWHNtcWFtNnA0dXJ3Yzl3Qnk1c2pwRnJheHNRM3NRcHBDLXZybXlVZExaelJIWS0xYnhwaFQxVUdiS0Zsd1dSODU5TmFSQ1BZOFhDWUVrX0hxNnc5S0lWSXRTTlRYYWYxUWFzUDJob0NHT19PMzkzVUNzWGp0NzRtOURqdi1vTHRoMUl6TU5sSWp0STg2MTRhTGs0RTFMUXd6ZUx2X2Y1cndKeXJOWkF1c3VWRlRieFp1Zzh6T3BfYTdCOGhGSEJyQS5rc3pPdTN3blllb1ZUUjRLc2dqMUxBLmYyY3huVE1BbU13Ty1RcmdHSUFYUFN2bEdZUDRYWmJvMFVFOGxtY2xZa3ZhRE5ab3E0Wm41MVNKTDNuUFZsVnBaRFlrUmlpd05BSUxvRS12QWtVbmZoLUczOWo3RHhqWm1zZW02bXBmOWxoZjBnZFFNTDdmejBqRDZ0dW1xSVFaWUhFalV3VG5xdDloeEw5N0lnUUV0WmtFV0VnUEJETnJJNFpYWXdNU2ZyR0FfdkgzYXU1MWpabDFTWjlGajJsTHpEblNqbFd0U05QSzc3X2RwbUxrTXNCSmMtamRteUpxYmVxdmdRcGFTSUNsOXpUUXFQM2RxN1VQV2c1R1ZDNmlNZjlTcnBoUVRKX1V2bnp4LWk4ZWR6ZUppd2hYNW9HQ043RDNDWjkxTzNLQkhmYklOX1VvQWlQVWxzazFveU9KOEVjMk5mbHhOaFlrNFRKUTFBN2xnbXlLRlNQeVMyaFlwUDA2VEpTb0JUenVTQk5OTVdmT0RaTDFfV3V5eThJcDktdlVHMW5JOENDQ1hIeEVVN2FVLW5nRVR5aFBfbWt3Q2FGLWx2WTNqZlV1Z29wSllLR3VscXZadk1VZHhLYU1oemR2a05ubFdGeXlJNXdiRUdZcWgzWEJ0MS11TThrOFZVTDdQallzVUt4S1dYbzBMblJPZmFTbTZpTm9ZTmFOTm5YbF9fVW9rd05fSWM0eVVYR3RuMFhUcTZ4anQwZUpEajlET3FyYmdiLTZoclltRmxLTUNqalVxSGtLU1VPaHVYSE9jOFdFa0JEM1hiR29idi03b3c0c0gyN0YxbHh2UVh0OVgtOUl1akN5dHBMYmt6YnJVdHZJT2puY19xTUNjMXFFTG1wZHJCTGFoMzVmWHZQZXotVk9zSXBNOGdsekhWUUgyWWZHU0UwaTJqVkxpVllkZlFHeDNwdTZPamdUc1hPUm5acldlbFExMVlNbUJkWlVqWFNlZkVlQkxuT1lBbUNtYWM0dHNTa2JHTXZzQm92OWNEc1NRLWlsQUhsT1Fsanp3Umt1bnIxdk1ITlFhRDJLUEE5eGxxZ2NKU3FGT3d3RzROSzBxamhyb0NoZDFxM2RHR2V3U2tTd2xZbW44ZlM0VEJ5VjFMYmtWb2NZZHpiWDhiZG54dHRhVDhKS0pUbjJETWxjVFpvR1hFbWQzN2ZZVnlaNm5uMXdxZExtVW9XLW5OQXc3T3RLV3hyMXJUNV9qOHZjRGhTWk1HdTF6aV81NDEyVTRLcG01dlQ3c3BpWXA4aDl3Rk5scmFjYnVjZGVlaS1zMWR6cDlqWGo2NjRuWWxoYzNjOHJubjJ4ZWlna09YLTNUSWxnbmdxeXpJWG5ROHU0dTc5TC1ObXk1VFNjLU4wTnJVTUxQVE51MnhsUlE4Y0VLT0h4QkJGQV80Nk1yVXlhbjUwODFMSlYtTVVyaXAycl9tS3FJRjJET2wxS2V1aGg5am9PeFVybUk0T19MYkduVjJTbUdoZEZSd3FxUS15U2pxcFE2OFBza3hlQmxTdDZnX28tLVl6Qkg3dDI4V3ZYYzdIT3paNFBwa0psTjVmWFRwOXgtOGNuTGptcG5Pc2hUZWxTUXRYaDMwcTU3LXJZbVJzc2t2cFZfaTZFX2JUMTk2VWtTOHo2WUp1QXh3LXdlZ2tPY1ZITUxkeW5vaDU2UUtuWDhMVFdHdjhqWWNQazlaSlNSbXljTExOcWNtRnpUU1JEbzBXMXBkQVJXY2tqRFM2VFZIdTlHSElsTG9oRnpONEU1T3FqdUMxRjEwSFZjUGxoNTc5UmczWk1SNWJoVjltSEZNOFhJZU9HTHAxZFkxbnNLY2dqRVVlUW5qcF9za0RzanJZMVVncXRkTTVNVWhNSHlEZlhaZ3libk1jSDVRaml0YjdWZktrQk1YcGRwU3pLQWx0WDNjelIwODRPVm5nVGtiV2JZQURDTUQ2N1dlLWM1ZDFONHI2WFdFb2RXelNyWlhyZmc0RVRNNG1UZnV3ZjB0d3NORkRJdW5BWDkwbnZJWm1Ualo2RktpTjBiRnVNWmRpR1NKNTZNUEZMcFd3N3p0dmVmN0xENmhjNHJESXBQbEkwTVlVWTJSLWZGakdaZ29JTmdKMkVuMGFFM0c1V1RySjRxcHhhdHB4MVk3ZUgzOUk3WTYzcEJFWEtkRWIwTmstM0tnM0ljbDJPSkp6SU1fM1VHSlJTTmRQWGlfV3ViNGRTMDV4eURzZTR0d1FXdm9rb1QybHlZNGphNlVOc3lvYWN1eGFsTUZvUFR5dHF4YlVTaXFIMEZab0pWcm84amZja2wyYklmSzRqRzN6TnJIOWU1c3VUVWJDV09wYjczeFNMMG9TLVQ0T1JSNnBRbTZHQk05bFJ0eUhtMHJUMy1sNXc0c2ItNnRDcTM4S3FRdURRTGVTcDI1Rk8zMU1uVE5nTFlUeEUwUEZDT3hmRG1RY3BOOFRoWHBGbzZLNHNrd0dmQkpKTU9BTWtIUWZnMUM0c0V5cS1PLS1FWFhjbVV6QjJGRnR4c1gwR3o0aGJSdTFiUlhXcWMxU0IyUk82d0JsWGdPUmJqZjJlLWJQUFFMdmtGcWR3bFpUTE1kaWVUdjQyQmd1SFd3dzI5OEVqcnNNUXg1WG9aRG11MDFRTzlZSjFmTEYtWjkwWEVOU2p5OTM0M3UyUHhrNjhheG10bnp2ZTdwd3Q3Z0ZMMUoxZlZEd3BqMUtBZDdwdGZoWG4yUzJmT1Bfc3JOM3QxNk1qX29qOUVLQm5VNC1jQ3RLWGRkZS1EWk5zQkNhSGZ1bEtHSkFHYmx1UWs2Yi1kQk5oUS05Z19kajdfcjZub2Z2aDRielEybGlQd1E3M1RTazNiQTdzd2EzclZ5ZTVDTVNlOVotNkVKV1phek1sN0w4VUJ3cFllN0J0eHhUNEVBVGo2SXBvYWhGNTgtRHpiMmRsc1c1ZDZIWmpYZUNMTGtVRmQ5Mll3eDBibFlCanc4eTVzM040OEJMME84WG51ak42c0F0eG04Sm9hWXFVUUd3LXNBS1pTZHAzNk1GNlZXYkpUcHBoZHQ2aEhWQjFoRzdpSGN1STBTRzY0WjczNXEzZ0tSYXFHdzhIUXItSWNyeks0VEQwenk5b01NMHpRLVFBSE1PdzAyX0ozU3pVQWZ1bzFWNU42ajB0VGsyeEt0TFp3cmlHOHJNRl9NWTJrN09mdkxqNFlCb3VNN2lBNVM4LnNfM0VabFhIb1lrV283ZzdpRUp1bHc" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/decrypt-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/decrypt-example.json new file mode 100644 index 000000000000..9dee38a345af --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/decrypt-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "sdktestkey", + "key-version": "4eb68492b5f6421e835d961ad2be3155", + "api-version": "7.1-preview", + "parameters": { + "alg": "RSA-OAEP", + "value": "sid-4nG3FzRIFWXLXlG-FZo6H1-kzbNX5Exe0_VRqcGLuJWjI9oSofsn-2IagDsQzkpNAXv9V8aoIizelrK_14darhxaAV8OejO7Oh7spjxa7IxMVS3e-cwcLdEHzMbMfM1uFpDyRFqEUASHI0H8F1M2m1e9TUSXOVW3KMqm7cK94ZQMFvd4AYdLfmfnStMp_MqIQh4kpIkB6h2b1M3possVrLKH_l2L3uT-qFiwQlH9-dt0Cje5mrkpsYCy4hAXNFUPhIyBWAZwOQylIE2sPuopFs55lRIHpWP2CqNe-IK8tX87BRuJ_Vy3GIFxDjD5uu74scIyQCKMImB6xQ_-mQ" + } + }, + "responses": { + "200": { + "body": { + "kid": "https://myvault.vault.azure.net/keys/sdktestkey/4eb68492b5f6421e835d961ad2be3155", + "value": "dvDmrSBpjRjtYg" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/deleteStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/deleteStorageAccount.json new file mode 100644 index 000000000000..e998aef334f5 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/deleteStorageAccount.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "deleteStrg01", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/deleteStrg01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key1", + "autoRegenerateKey": true, + "regenerationPeriod": "P30D", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/deleteStrg01", + "scheduledPurgeDate": 1490790000, + "deletedDate": 1490760000, + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/deleteStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/deleteStorageSasDefinition.json new file mode 100644 index 000000000000..ffcb779ef8ad --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/deleteStorageSasDefinition.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "deletesas01", + "sas-definition-name": "deleteStrgSasDef01", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/deletesas01/sas/deleteStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/deletesas01-deleteStrgSasDef01", + "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", + "sasType": "service", + "validityPeriod": "P15D", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/deletesas01/sas/deleteStrgSasDef01", + "scheduledPurgeDate": 1490790000, + "deletedDate": 1490760000, + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/encrypt-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/encrypt-example.json new file mode 100644 index 000000000000..75471c1b6fb9 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/encrypt-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "sdktestkey", + "key-version": "f6bc1f3d37c14b2bb1a2ebb4b24e9535", + "api-version": "7.1-preview", + "parameters": { + "alg": "RSA1_5", + "value": "5ka5IVsnGrzufA" + } + }, + "responses": { + "200": { + "body": { + "kid": "https://myvault.vault.azure.net/keys/sdktestkey/f6bc1f3d37c14b2bb1a2ebb4b24e9535", + "value": "CR0Hk0z72oOit5TxObqRpo-WFGZkb5BeN1C0xJFKHxzdDCESYPCNB-OkiWVAnMcSyu6g2aC8riVRRxY5MC2CWKj-CJ_SMke5X2kTi5yi4hJ5vuOLzmg_M6Bmqib7LsI-TeJHr9rs3-tZaSCdZ2zICeFWYduWV5rPjTnAD98epTorT8AA1zMaYHMIhKpmttcj18-dHr0E0T55dgRtsjK04uC3FlRd3odl4RhO1UHAmYpDd5FUqN-20R0dK0Zk8F8sOtThLhEmuLvqPHOCUBiGUhHA4nRDq1La4SUbThu2KMQJL6BbxxEymuliaYcNNtW7MxgVOf6V3mFxVNRY622i9g" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/getDeletedStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/getDeletedStorageAccount.json new file mode 100644 index 000000000000..e998aef334f5 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/getDeletedStorageAccount.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "deleteStrg01", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/deleteStrg01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key1", + "autoRegenerateKey": true, + "regenerationPeriod": "P30D", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/deleteStrg01", + "scheduledPurgeDate": 1490790000, + "deletedDate": 1490760000, + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/getDeletedStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/getDeletedStorageSasDefinition.json new file mode 100644 index 000000000000..ffcb779ef8ad --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/getDeletedStorageSasDefinition.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "deletesas01", + "sas-definition-name": "deleteStrgSasDef01", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/deletesas01/sas/deleteStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/deletesas01-deleteStrgSasDef01", + "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", + "sasType": "service", + "validityPeriod": "P15D", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/deletesas01/sas/deleteStrgSasDef01", + "scheduledPurgeDate": 1490790000, + "deletedDate": 1490760000, + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/getStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/getStorageAccount.json new file mode 100644 index 000000000000..e5364e6e27db --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/getStorageAccount.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "readStrg01", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/readStrg01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key1", + "autoRegenerateKey": true, + "regenerationPeriod": "P30D", + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/getStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/getStorageSasDefinition.json new file mode 100644 index 000000000000..3138c53528e0 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/getStorageSasDefinition.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "getsas01", + "sas-definition-name": "getStrgSasDef01", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/getsas01/sas/getStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/getsas01-getStrgSasDef01", + "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", + "sasType": "service", + "validityPeriod": "P15D", + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/listDeletedStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/listDeletedStorageAccount.json new file mode 100644 index 000000000000..6a674d3a821b --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/listDeletedStorageAccount.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "https://myvault.vault.azure.net/storage/listDeletedStorage01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc1", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/listDeletedStorage01", + "scheduledPurgeDate": 1490790000, + "deletedDate": 1490760000, + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + }, + { + "id": "https://myvault.vault.azure.net/storage/listDeletedStorage02", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc2", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/listDeletedStorage02", + "scheduledPurgeDate": 1490790000, + "deletedDate": 1490760000, + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag3": "val3", + "tag4": "val4" + } + } + ], + "nextLink": "https://{BaseUri}/storage?api-version=7.1&%24skiptoken=" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/listDeletedStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/listDeletedStorageSasDefinition.json new file mode 100644 index 000000000000..6ab29214b8cc --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/listDeletedStorageSasDefinition.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "listsas01", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "https://myvault.vault.azure.net/storage/listsas01/sas/listDeletedSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/listsas01-listDeletedSasDef01", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/listsas01/sas/listDeletedSasDef01", + "scheduledPurgeDate": 1490790000, + "deletedDate": 1490760000, + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + }, + { + "id": "https://myvault.vault.azure.net/storage/listsas01/sas/listDeletedSasDef02", + "sid": "https://myvault.vault.azure.net/secrets/listsas01-listDeletedSasDef02", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/listsas01/sas/listDeletedSasDef02", + "scheduledPurgeDate": 1490790000, + "deletedDate": 1490760000, + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + } + ], + "nextLink": "https://{BaseUri}/deletedstorage/listsas01/sas?api-version=7.1&%24skiptoken=" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/listStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/listStorageAccount.json new file mode 100644 index 000000000000..d7b35375d228 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/listStorageAccount.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "https://myvault.vault.azure.net/storage/listStorage01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc1", + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + }, + { + "id": "https://myvault.vault.azure.net/storage/listStorage02", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc2", + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag3": "val3", + "tag4": "val4" + } + } + ], + "nextLink": "https://{BaseUri}/storage?api-version=7.1&%24skiptoken=" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/listStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/listStorageSasDefinition.json new file mode 100644 index 000000000000..260874456f95 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/listStorageSasDefinition.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "listsas01", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "https://myvault.vault.azure.net/storage/listsas01/sas/listStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/listsas01-listStrgSasDef01", + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + }, + { + "id": "https://myvault.vault.azure.net/storage/listsas01/sas/listStrgSasDef02", + "sid": "https://myvault.vault.azure.net/secrets/listsas01-listStrgSasDef02", + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + } + ], + "nextLink": "https://{BaseUri}/storage/listsas01/sas?api-version=7.1&%24skiptoken=" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/purgeStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/purgeStorageAccount.json new file mode 100644 index 000000000000..41793f6caa30 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/purgeStorageAccount.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "purgeStrg01", + "api-version": "7.1-preview" + }, + "responses": { + "204": { + "headers": {} + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/recoverStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/recoverStorageAccount.json new file mode 100644 index 000000000000..bd48fa55ffa6 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/recoverStorageAccount.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "recoverStrg01", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/recoverStrg01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key1", + "autoRegenerateKey": true, + "regenerationPeriod": "P30D", + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/recoverStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/recoverStorageSasDefinition.json new file mode 100644 index 000000000000..137b0df38e94 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/recoverStorageSasDefinition.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "recoversas01", + "sas-definition-name": "recoverStrgSasDef01", + "api-version": "7.1-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/recoversas01/sas/recoverStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/recoversas01-recoverStrgSasDef01", + "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", + "sasType": "service", + "validityPeriod": "P15D", + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/regenerateStorageAccountKey.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/regenerateStorageAccountKey.json new file mode 100644 index 000000000000..591ce92c9d60 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/regenerateStorageAccountKey.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "regenerateKey01", + "api-version": "7.1-preview", + "parameters": { + "keyName": "key2" + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/regenerateKey01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key2", + "autoRegenerateKey": true, + "regenerationPeriod": "P10D", + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/restoreStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/restoreStorageAccount.json new file mode 100644 index 000000000000..e01195776d1c --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/restoreStorageAccount.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "readStrg01", + "api-version": "7.1-preview", + "parameters": { + "value": "KUF6dXJlS2V5VmF1bHRTZWNyZXRCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUkwTXpnMVlqQTNZaTFrTlRRM0xUUXlaVFV0WVdVNVpTMDJNVEJrWXpNNVpHWmhaamdpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLk1JeFMyLXh0eHAxekpaZ3ZrTUY3d2pGMWxiLVJyNWFrbHFMLXpBaVVOODJKZFJNUDFwak5iS0phRktIOXBRcDg4ODBKeERDSmdESUZHc19OOGlnYmdIZ0Q1c0xVMi1pRzdKM29Hc00taFRMb05oaUd6aGY1YVREakYzWjZpZVhxcFMzVFVOVUFkeFhpTkpIYk94YjBmWHNtcWFtNnA0dXJ3Yzl3Qnk1c2pwRnJheHNRM3NRcHBDLXZybXlVZExaelJIWS0xYnhwaFQxVUdiS0Zsd1dSODU5TmFSQ1BZOFhDWUVrX0hxNnc5S0lWSXRTTlRYYWYxUWFzUDJob0NHT19PMzkzVUNzWGp0NzRtOURqdi1vTHRoMUl6TU5sSWp0STg2MTRhTGs0RTFMUXd6ZUx2X2Y1cndKeXJOWkF1c3VWRlRieFp1Zzh6T3BfYTdCOGhGSEJyQS5rc3pPdTN3blllb1ZUUjRLc2dqMUxBLmYyY3huVE1BbU13Ty1RcmdHSUFYUFN2bEdZUDRYWmJvMFVFOGxtY2xZa3ZhRE5ab3E0Wm41MVNKTDNuUFZsVnBaRFlrUmlpd05BSUxvRS12QWtVbmZoLUczOWo3RHhqWm1zZW02bXBmOWxoZjBnZFFNTDdmejBqRDZ0dW1xSVFaWUhFalV3VG5xdDloeEw5N0lnUUV0WmtFV0VnUEJETnJJNFpYWXdNU2ZyR0FfdkgzYXU1MWpabDFTWjlGajJsTHpEblNqbFd0U05QSzc3X2RwbUxrTXNCSmMtamRteUpxYmVxdmdRcGFTSUNsOXpUUXFQM2RxN1VQV2c1R1ZDNmlNZjlTcnBoUVRKX1V2bnp4LWk4ZWR6ZUppd2hYNW9HQ043RDNDWjkxTzNLQkhmYklOX1VvQWlQVWxzazFveU9KOEVjMk5mbHhOaFlrNFRKUTFBN2xnbXlLRlNQeVMyaFlwUDA2VEpTb0JUenVTQk5OTVdmT0RaTDFfV3V5eThJcDktdlVHMW5JOENDQ1hIeEVVN2FVLW5nRVR5aFBfbWt3Q2FGLWx2WTNqZlV1Z29wSllLR3VscXZadk1VZHhLYU1oemR2a05ubFdGeXlJNXdiRUdZcWgzWEJ0MS11TThrOFZVTDdQallzVUt4S1dYbzBMblJPZmFTbTZpTm9ZTmFOTm5YbF9fVW9rd05fSWM0eVVYR3RuMFhUcTZ4anQwZUpEajlET3FyYmdiLTZoclltRmxLTUNqalVxSGtLU1VPaHVYSE9jOFdFa0JEM1hiR29idi03b3c0c0gyN0YxbHh2UVh0OVgtOUl1akN5dHBMYmt6YnJVdHZJT2puY19xTUNjMXFFTG1wZHJCTGFoMzVmWHZQZXotVk9zSXBNOGdsekhWUUgyWWZHU0UwaTJqVkxpVllkZlFHeDNwdTZPamdUc1hPUm5acldlbFExMVlNbUJkWlVqWFNlZkVlQkxuT1lBbUNtYWM0dHNTa2JHTXZzQm92OWNEc1NRLWlsQUhsT1Fsanp3Umt1bnIxdk1ITlFhRDJLUEE5eGxxZ2NKU3FGT3d3RzROSzBxamhyb0NoZDFxM2RHR2V3U2tTd2xZbW44ZlM0VEJ5VjFMYmtWb2NZZHpiWDhiZG54dHRhVDhKS0pUbjJETWxjVFpvR1hFbWQzN2ZZVnlaNm5uMXdxZExtVW9XLW5OQXc3T3RLV3hyMXJUNV9qOHZjRGhTWk1HdTF6aV81NDEyVTRLcG01dlQ3c3BpWXA4aDl3Rk5scmFjYnVjZGVlaS1zMWR6cDlqWGo2NjRuWWxoYzNjOHJubjJ4ZWlna09YLTNUSWxnbmdxeXpJWG5ROHU0dTc5TC1ObXk1VFNjLU4wTnJVTUxQVE51MnhsUlE4Y0VLT0h4QkJGQV80Nk1yVXlhbjUwODFMSlYtTVVyaXAycl9tS3FJRjJET2wxS2V1aGg5am9PeFVybUk0T19MYkduVjJTbUdoZEZSd3FxUS15U2pxcFE2OFBza3hlQmxTdDZnX28tLVl6Qkg3dDI4V3ZYYzdIT3paNFBwa0psTjVmWFRwOXgtOGNuTGptcG5Pc2hUZWxTUXRYaDMwcTU3LXJZbVJzc2t2cFZfaTZFX2JUMTk2VWtTOHo2WUp1QXh3LXdlZ2tPY1ZITUxkeW5vaDU2UUtuWDhMVFdHdjhqWWNQazlaSlNSbXljTExOcWNtRnpUU1JEbzBXMXBkQVJXY2tqRFM2VFZIdTlHSElsTG9oRnpONEU1T3FqdUMxRjEwSFZjUGxoNTc5UmczWk1SNWJoVjltSEZNOFhJZU9HTHAxZFkxbnNLY2dqRVVlUW5qcF9za0RzanJZMVVncXRkTTVNVWhNSHlEZlhaZ3libk1jSDVRaml0YjdWZktrQk1YcGRwU3pLQWx0WDNjelIwODRPVm5nVGtiV2JZQURDTUQ2N1dlLWM1ZDFONHI2WFdFb2RXelNyWlhyZmc0RVRNNG1UZnV3ZjB0d3NORkRJdW5BWDkwbnZJWm1Ualo2RktpTjBiRnVNWmRpR1NKNTZNUEZMcFd3N3p0dmVmN0xENmhjNHJESXBQbEkwTVlVWTJSLWZGakdaZ29JTmdKMkVuMGFFM0c1V1RySjRxcHhhdHB4MVk3ZUgzOUk3WTYzcEJFWEtkRWIwTmstM0tnM0ljbDJPSkp6SU1fM1VHSlJTTmRQWGlfV3ViNGRTMDV4eURzZTR0d1FXdm9rb1QybHlZNGphNlVOc3lvYWN1eGFsTUZvUFR5dHF4YlVTaXFIMEZab0pWcm84amZja2wyYklmSzRqRzN6TnJIOWU1c3VUVWJDV09wYjczeFNMMG9TLVQ0T1JSNnBRbTZHQk05bFJ0eUhtMHJUMy1sNXc0c2ItNnRDcTM4S3FRdURRTGVTcDI1Rk8zMU1uVE5nTFlUeEUwUEZDT3hmRG1RY3BOOFRoWHBGbzZLNHNrd0dmQkpKTU9BTWtIUWZnMUM0c0V5cS1PLS1FWFhjbVV6QjJGRnR4c1gwR3o0aGJSdTFiUlhXcWMxU0IyUk82d0JsWGdPUmJqZjJlLWJQUFFMdmtGcWR3bFpUTE1kaWVUdjQyQmd1SFd3dzI5OEVqcnNNUXg1WG9aRG11MDFRTzlZSjFmTEYtWjkwWEVOU2p5OTM0M3UyUHhrNjhheG10bnp2ZTdwd3Q3Z0ZMMUoxZlZEd3BqMUtBZDdwdGZoWG4yUzJmT1Bfc3JOM3QxNk1qX29qOUVLQm5VNC1jQ3RLWGRkZS1EWk5zQkNhSGZ1bEtHSkFHYmx1UWs2Yi1kQk5oUS05Z19kajdfcjZub2Z2aDRielEybGlQd1E3M1RTazNiQTdzd2EzclZ5ZTVDTVNlOVotNkVKV1phek1sN0w4VUJ3cFllN0J0eHhUNEVBVGo2SXBvYWhGNTgtRHpiMmRsc1c1ZDZIWmpYZUNMTGtVRmQ5Mll3eDBibFlCanc4eTVzM040OEJMME84WG51ak42c0F0eG04Sm9hWXFVUUd3LXNBS1pTZHAzNk1GNlZXYkpUcHBoZHQ2aEhWQjFoRzdpSGN1STBTRzY0WjczNXEzZ0tSYXFHdzhIUXItSWNyeks0VEQwenk5b01NMHpRLVFBSE1PdzAyX0ozU3pVQWZ1bzFWNU42ajB0VGsyeEt0TFp3cmlHOHJNRl9NWTJrN09mdkxqNFlCb3VNN2lBNVM4LnNfM0VabFhIb1lrV283ZzdpRUp1bHc" + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/restoreStrg01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key1", + "autoRegenerateKey": true, + "regenerationPeriod": "P30D", + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/setStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/setStorageAccount.json new file mode 100644 index 000000000000..6bedc35bb149 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/setStorageAccount.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "setStrg01", + "api-version": "7.1-preview", + "parameters": { + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key2", + "autoRegenerateKey": true, + "regenerationPeriod": "P15D", + "attributes": { + "enabled": true + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/setStrg01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key2", + "autoRegenerateKey": true, + "regenerationPeriod": "P15D", + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/setStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/setStorageSasDefinition.json new file mode 100644 index 000000000000..5f32c9a5be6e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/setStorageSasDefinition.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "setsas01", + "sas-definition-name": "setStrgSasDef01", + "api-version": "7.1-preview", + "parameters": { + "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", + "sasType": "service", + "validityPeriod": "P15D", + "attributes": { + "enabled": true + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/setsas01/sas/setStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/setsas01-setStrgSasDef01", + "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", + "sasType": "service", + "validityPeriod": "P15D", + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/sign-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/sign-example.json new file mode 100644 index 000000000000..424eb5f84a80 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/sign-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "testkey", + "key-version": "9885aa558e8d448789683188f8c194b0", + "api-version": "7.1-preview", + "parameters": { + "alg": "RS512", + "value": "RUE3Nzg4NTQ4QjQ5RjFFN0U2NzAyQzhDNEMwMkJDOTA1MTYyOTUzNjI5NDhBNzZDQTlFOTM1NDA2M0ZGMjk2Mg" + } + }, + "responses": { + "200": { + "body": { + "kid": "https://myvault.vault.azure.net/keys/testkey/9885aa558e8d448789683188f8c194b0", + "value": "aKFG8NXcfTzqyR44rW42484K_zZI_T7zZuebvWuNgAoEI1gXYmxrshp42CunSmmu4oqo4-IrCikPkNIBkHXnAW2cv03Ad0UpwXhVfepK8zzDBaJPMKVGS-ZRz8CshEyGDKaLlb3J3zEkXpM3RrSEr0mdV6hndHD_mznLB5RmFui5DsKAhez4vUqajgtkgcPfCekMqeSwp6r9ItVL-gEoAohx8XMDsPedqu-7BuZcBcdayaPuBRL4wWoTDULA11P-UN_sJ5qMj3BbiRYhIlBWGR04wIGfZ3pkJjHJUpOvgH2QajdYPzUBauOCewMYbq9XkLRSzI_A7HkkDVycugSeAA" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/unwrapKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/unwrapKey-example.json new file mode 100644 index 000000000000..47470b3d63d7 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/unwrapKey-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "sdktestkey", + "key-version": "0698c2156c1a4e1da5b6bab6f6422fd6", + "api-version": "7.1-preview", + "parameters": { + "alg": "RSA1_5", + "value": "khwIe26NuAZazS7upywDBpGRmRNMW5-4h_JQKxOdB78nYVxZWnBXwCxOv7a3Sr_mCjiVzKsoQQZwL-CJzhYa0512tfYem56zls5a44y5QsdcfvuSzOvpthVhA9XkEfCJSqSY_sip5d8BelT_w_ikvd_8KqiQ_0H54RqYUN8svCpu28paHgBocHFNXTQ9NtU9ec2qgESXk7Jp4OTy9HJtQJavKDUqTJ3YmtLxUgsgBCe0FNMHUSEYC0Ys6PavYzdTwIzYCq84idmAxJOj-O_6eALJFH2sDTOQYHjzOae2t8eFmw6C-t55qjrCI91a9mUJEGPhYixiG4gR4PaEJ7wGvw" + } + }, + "responses": { + "200": { + "body": { + "kid": "https://myvault.vault.azure.net/keys/sdktestkey/0698c2156c1a4e1da5b6bab6f6422fd6", + "value": "ovQIlbB0DgWhZA7sgkPxbg9H-Ly-VlNGPSgGrrZvlIo" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/updateStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/updateStorageAccount.json new file mode 100644 index 000000000000..eacece3bfbe8 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/updateStorageAccount.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "patchStrg01", + "api-version": "7.1-preview", + "parameters": { + "activeKeyName": "key1", + "regenerationPeriod": "P10D" + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/patchStrg01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key1", + "autoRegenerateKey": true, + "regenerationPeriod": "P10D", + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/updateStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/updateStorageSasDefinition.json new file mode 100644 index 000000000000..a03e7e2e189e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/updateStorageSasDefinition.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "patchsas01", + "sas-definition-name": "patchStrgSasDef01", + "api-version": "7.1-preview", + "parameters": { + "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", + "sasType": "service", + "validityPeriod": "P15D", + "attributes": { + "enabled": true + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/patchsas01/sas/patchStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/patchsas01-patchStrgSasDef01", + "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", + "sasType": "service", + "validityPeriod": "P15D", + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/verify-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/verify-example.json new file mode 100644 index 000000000000..9d26d3e0547a --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/verify-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "testkey", + "key-version": "9885aa558e8d448789683188f8c194b0", + "api-version": "7.1-preview", + "parameters": { + "alg": "RS512", + "value": "RUE3Nzg4NTQ4QjQ5RjFFN0U2NzAyQzhDNEMwMkJDOTA1MTYyOTUzNjI5NDhBNzZDQTlFOTM1NDA2M0ZGMjk2Mg", + "digest": "aKFG8NXcfTzqyR44rW42484K_zZI_T7zZuebvWuNgAoEI1gXYmxrshp42CunSmmu4oqo4-IrCikPkNIBkHXnAW2cv03Ad0UpwXhVfepK8zzDBaJPMKVGS-ZRz8CshEyGDKaLlb3J3zEkXpM3RrSEr0mdV6hndHD_mznLB5RmFui5DsKAhez4vUqajgtkgcPfCekMqeSwp6r9ItVL-gEoAohx8XMDsPedqu-7BuZcBcdayaPuBRL4wWoTDULA11P-UN_sJ5qMj3BbiRYhIlBWGR04wIGfZ3pkJjHJUpOvgH2QajdYPzUBauOCewMYbq9XkLRSzI_A7HkkDVycugSeAA" + } + }, + "responses": { + "200": { + "body": { + "value": true + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/wrapKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/wrapKey-example.json new file mode 100644 index 000000000000..e6f14caacc3e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/examples/wrapKey-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "sdktestkey", + "key-version": "0698c2156c1a4e1da5b6bab6f6422fd6", + "api-version": "7.1-preview", + "parameters": { + "alg": "RSA1_5", + "value": "ovQIlbB0DgWhZA7sgkPxbg9H-Ly-VlNGPSgGrrZvlIo" + } + }, + "responses": { + "200": { + "body": { + "kid": "https://myvault.vault.azure.net/keys/sdktestkey/0698c2156c1a4e1da5b6bab6f6422fd6", + "value": "khwIe26NuAZazS7upywDBpGRmRNMW5-4h_JQKxOdB78nYVxZWnBXwCxOv7a3Sr_mCjiVzKsoQQZwL-CJzhYa0512tfYem56zls5a44y5QsdcfvuSzOvpthVhA9XkEfCJSqSY_sip5d8BelT_w_ikvd_8KqiQ_0H54RqYUN8svCpu28paHgBocHFNXTQ9NtU9ec2qgESXk7Jp4OTy9HJtQJavKDUqTJ3YmtLxUgsgBCe0FNMHUSEYC0Ys6PavYzdTwIzYCq84idmAxJOj-O_6eALJFH2sDTOQYHjzOae2t8eFmw6C-t55qjrCI91a9mUJEGPhYixiG4gR4PaEJ7wGvw" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/index.md b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/index.md new file mode 100644 index 000000000000..1d8c9d77ab0e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/index.md @@ -0,0 +1,26 @@ +--- +ms.assetid: 357c9947-1098-4a03-9f1e-7b27e5aa75bf +ms.title: Azure Key Vault REST Reference +ms.prod: +ms.service: azure-keyvault +author: BrucePerlerMS +ms.author: bruceper +ms.manager: mbaldwin +--- + +# Azure Key Vault + +Azure Key Vault enables users to store and use cryptographic keys within the Microsoft Azure environment. Azure Key Vault supports multiple key types and algorithms, and enables the use of Hardware Security Modules (HSM) for high value customer keys. Key Vault also supports storage of secrets, limited size octet objects. Certificate management is also available through Key Vault including support for renewal processing and working with a range of certificate authorities. + +## REST Operation Groups + +| Operation Group | Description | +|-----------------|-------------| +|Keys | Operations for interacting with keys including create, import, update, and delete.| +|Secrets | Operations for interacting with secrets including create, update, and delete.| +|Certificates | Operations for interacting with certificates including create, import, update, delete and a set of contact and renewal management tasks.| +|Storage | Operations for interacting with storage accounts including create, read, update, delete, list, regeneratekey and a set of sas definition related tasks.| + +## See Also + +- [About keys, secrets, certificates and storage](link) diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/keys.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/keys.json new file mode 100644 index 000000000000..f1177248f673 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/keys.json @@ -0,0 +1,1704 @@ +{ + "swagger": "2.0", + "info": { + "title": "KeyVaultClient", + "description": "The key vault client performs cryptographic key operations and vault operations against the Key Vault service.", + "version": "7.1-preview" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{vaultBaseUrl}", + "useSchemePrefix": false, + "positionInOperation": "first", + "parameters": [ + { + "name": "vaultBaseUrl", + "description": "The vault name, for example https://myvault.vault.azure.net.", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + ] + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/keys/{key-name}/create": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "CreateKey", + "summary": "Creates a new key, stores it, then returns key parameters and attributes to the client.", + "description": "The create key operation can be used to create any key type in Azure Key Vault. If the named key already exists, Azure Key Vault creates a new version of the key. It requires the keys/create permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z-]+$", + "description": "The name for the new key. The system will generate the version name for the new key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyCreateParameters" + }, + "description": "The parameters to create a key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A key bundle containing the result of the create key request.", + "schema": { + "$ref": "#/definitions/KeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Create key": { + "$ref": "./examples/CreateKey-example.json" + } + } + } + }, + "/keys/{key-name}": { + "put": { + "tags": [ + "Keys" + ], + "operationId": "ImportKey", + "summary": "Imports an externally created key, stores it, and returns key parameters and attributes to the client.", + "description": "The import key operation may be used to import any key type into an Azure Key Vault. If the named key already exists, Azure Key Vault creates a new version of the key. This operation requires the keys/import permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z-]+$", + "description": "Name for the imported key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyImportParameters" + }, + "description": "The parameters to import a key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Imported key bundle to the vault.", + "schema": { + "$ref": "#/definitions/KeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Import key": { + "$ref": "./examples/ImportKey-example.json" + } + } + }, + "delete": { + "tags": [ + "Keys" + ], + "operationId": "DeleteKey", + "summary": "Deletes a key of any type from storage in Azure Key Vault.", + "description": "The delete key operation cannot be used to remove individual versions of a key. This operation removes the cryptographic material associated with the key, which means the key is not usable for Sign/Verify, Wrap/Unwrap or Encrypt/Decrypt operations. This operation requires the keys/delete permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key to delete." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The public part of the deleted key and deletion information on when the key will be purged.", + "schema": { + "$ref": "#/definitions/DeletedKeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Delete key": { + "$ref": "./examples/DeleteKey-example.json" + } + } + } + }, + "/keys/{key-name}/{key-version}": { + "patch": { + "tags": [ + "Keys" + ], + "operationId": "UpdateKey", + "summary": "The update key operation changes specified attributes of a stored key and can be applied to any key type and key version stored in Azure Key Vault.", + "description": "In order to perform this operation, the key must already exist in the Key Vault. Note: The cryptographic material of a key itself cannot be changed. This operation requires the keys/update permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of key to update." + }, + { + "name": "key-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the key to update." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyUpdateParameters" + }, + "description": "The parameters of the key to update." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The updated key.", + "schema": { + "$ref": "#/definitions/KeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Update key": { + "$ref": "./examples/UpdateKey-example.json" + } + } + }, + "get": { + "tags": [ + "Keys" + ], + "operationId": "GetKey", + "summary": "Gets the public part of a stored key.", + "description": "The get key operation is applicable to all key types. If the requested key is symmetric, then no key material is released in the response. This operation requires the keys/get permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key to get." + }, + { + "name": "key-version", + "in": "path", + "required": true, + "type": "string", + "description": "Adding the version parameter retrieves a specific version of a key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A key bundle containing the key and its attributes.", + "schema": { + "$ref": "#/definitions/KeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Get key": { + "$ref": "./examples/GetKey-example.json" + } + } + } + }, + "/keys/{key-name}/versions": { + "get": { + "tags": [ + "Keys" + ], + "operationId": "GetKeyVersions", + "summary": "Retrieves a list of individual key versions with the same key name.", + "description": "The full key identifier, attributes, and tags are provided in the response. This operation requires the keys/list permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of keys along with a link to the next page of keys.", + "schema": { + "$ref": "#/definitions/KeyListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetKeyVersions": { + "$ref": "./examples/GetKeyVersions-example.json" + } + } + } + }, + "/keys": { + "get": { + "tags": [ + "Keys" + ], + "operationId": "GetKeys", + "summary": "List keys in the specified vault.", + "description": "Retrieves a list of the keys in the Key Vault as JSON Web Key structures that contain the public part of a stored key. The LIST operation is applicable to all key types, however only the base key identifier, attributes, and tags are provided in the response. Individual versions of a key are not listed in the response. This operation requires the keys/list permission.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of keys in the vault along with a link to the next page of keys.", + "schema": { + "$ref": "#/definitions/KeyListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetKeys": { + "$ref": "./examples/GetKeys-example.json" + } + } + } + }, + "/keys/{key-name}/backup": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "BackupKey", + "summary": "Requests that a backup of the specified key be downloaded to the client.", + "description": "The Key Backup operation exports a key from Azure Key Vault in a protected form. Note that this operation does NOT return key material in a form that can be used outside the Azure Key Vault system, the returned key material is either protected to a Azure Key Vault HSM or to Azure Key Vault itself. The intent of this operation is to allow a client to GENERATE a key in one Azure Key Vault instance, BACKUP the key, and then RESTORE it into another Azure Key Vault instance. The BACKUP operation may be used to export, in protected form, any key type from Azure Key Vault. Individual versions of a key cannot be backed up. BACKUP / RESTORE can be performed within geographical boundaries only; meaning that a BACKUP from one geographical area cannot be restored to another geographical area. For example, a backup from the US geographical area cannot be restored in an EU geographical area. This operation requires the key/backup permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The backup blob containing the backed up key.", + "schema": { + "$ref": "#/definitions/BackupKeyResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "BackupKey": { + "$ref": "./examples/BackupKey-example.json" + } + } + } + }, + "/keys/restore": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "RestoreKey", + "summary": "Restores a backed up key to a vault.", + "description": "Imports a previously backed up key into Azure Key Vault, restoring the key, its key identifier, attributes and access control policies. The RESTORE operation may be used to import a previously backed up key. Individual versions of a key cannot be restored. The key is restored in its entirety with the same key name as it had when it was backed up. If the key name is not available in the target Key Vault, the RESTORE operation will be rejected. While the key name is retained during restore, the final key identifier will change if the key is restored to a different vault. Restore will restore all versions and preserve version identifiers. The RESTORE operation is subject to security constraints: The target Key Vault must be owned by the same Microsoft Azure Subscription as the source Key Vault The user must have RESTORE permission in the target Key Vault. This operation requires the keys/restore permission.", + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyRestoreParameters" + }, + "description": "The parameters to restore the key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Restored key bundle in the vault.", + "schema": { + "$ref": "#/definitions/KeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "RestoreKey": { + "$ref": "./examples/RestoreKey-example.json" + } + } + } + }, + "/keys/{key-name}/{key-version}/encrypt": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "encrypt", + "summary": "Encrypts an arbitrary sequence of bytes using an encryption key that is stored in a key vault.", + "description": "The ENCRYPT operation encrypts an arbitrary sequence of bytes using an encryption key that is stored in Azure Key Vault. Note that the ENCRYPT operation only supports a single block of data, the size of which is dependent on the target key and the encryption algorithm to be used. The ENCRYPT operation is only strictly necessary for symmetric keys stored in Azure Key Vault since protection with an asymmetric key can be performed using public portion of the key. This operation is supported for asymmetric keys as a convenience for callers that have a key-reference but do not have access to the public key material. This operation requires the keys/encrypt permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "name": "key-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyOperationsParameters" + }, + "description": "The parameters for the encryption operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The encryption result.", + "schema": { + "$ref": "#/definitions/KeyOperationResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Encrypt example": { + "$ref": "./examples/encrypt-example.json" + } + } + } + }, + "/keys/{key-name}/{key-version}/decrypt": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "decrypt", + "summary": "Decrypts a single block of encrypted data.", + "description": "The DECRYPT operation decrypts a well-formed block of ciphertext using the target encryption key and specified algorithm. This operation is the reverse of the ENCRYPT operation; only a single block of data may be decrypted, the size of this block is dependent on the target key and the algorithm to be used. The DECRYPT operation applies to asymmetric and symmetric keys stored in Azure Key Vault since it uses the private portion of the key. This operation requires the keys/decrypt permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "name": "key-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyOperationsParameters" + }, + "description": "The parameters for the decryption operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The decryption result.", + "schema": { + "$ref": "#/definitions/KeyOperationResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Decrypt example": { + "$ref": "./examples/decrypt-example.json" + } + } + } + }, + "/keys/{key-name}/{key-version}/sign": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "sign", + "summary": "Creates a signature from a digest using the specified key.", + "description": "The SIGN operation is applicable to asymmetric and symmetric keys stored in Azure Key Vault since this operation uses the private portion of the key. This operation requires the keys/sign permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "name": "key-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeySignParameters" + }, + "description": "The parameters for the signing operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The signature value.", + "schema": { + "$ref": "#/definitions/KeyOperationResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Sign": { + "$ref": "./examples/sign-example.json" + } + } + } + }, + "/keys/{key-name}/{key-version}/verify": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "verify", + "summary": "Verifies a signature using a specified key.", + "description": "The VERIFY operation is applicable to symmetric keys stored in Azure Key Vault. VERIFY is not strictly necessary for asymmetric keys stored in Azure Key Vault since signature verification can be performed using the public portion of the key but this operation is supported as a convenience for callers that only have a key-reference and not the public portion of the key. This operation requires the keys/verify permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "name": "key-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyVerifyParameters" + }, + "description": "The parameters for verify operations." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The verification result.", + "schema": { + "$ref": "#/definitions/KeyVerifyResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Verify": { + "$ref": "./examples/verify-example.json" + } + } + } + }, + "/keys/{key-name}/{key-version}/wrapkey": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "wrapKey", + "summary": "Wraps a symmetric key using a specified key.", + "description": "The WRAP operation supports encryption of a symmetric key using a key encryption key that has previously been stored in an Azure Key Vault. The WRAP operation is only strictly necessary for symmetric keys stored in Azure Key Vault since protection with an asymmetric key can be performed using the public portion of the key. This operation is supported for asymmetric keys as a convenience for callers that have a key-reference but do not have access to the public key material. This operation requires the keys/wrapKey permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "name": "key-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyOperationsParameters" + }, + "description": "The parameters for wrap operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The wrapped symmetric key.", + "schema": { + "$ref": "#/definitions/KeyOperationResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Wrapkey": { + "$ref": "./examples/wrapKey-example.json" + } + } + } + }, + "/keys/{key-name}/{key-version}/unwrapkey": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "unwrapKey", + "summary": "Unwraps a symmetric key using the specified key that was initially used for wrapping that key.", + "description": "The UNWRAP operation supports decryption of a symmetric key using the target key encryption key. This operation is the reverse of the WRAP operation. The UNWRAP operation applies to asymmetric and symmetric keys stored in Azure Key Vault since it uses the private portion of the key. This operation requires the keys/unwrapKey permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "name": "key-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyOperationsParameters" + }, + "description": "The parameters for the key operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The unwrapped symmetric key.", + "schema": { + "$ref": "#/definitions/KeyOperationResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Unwrapkey": { + "$ref": "./examples/unwrapKey-example.json" + } + } + } + }, + "/deletedkeys": { + "get": { + "tags": [ + "DeletedKeys" + ], + "operationId": "GetDeletedKeys", + "summary": "Lists the deleted keys in the specified vault.", + "description": "Retrieves a list of the keys in the Key Vault as JSON Web Key structures that contain the public part of a deleted key. This operation includes deletion-specific information. The Get Deleted Keys operation is applicable for vaults enabled for soft-delete. While the operation can be invoked on any vault, it will return an error if invoked on a non soft-delete enabled vault. This operation requires the keys/list permission.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of deleted keys in the vault along with a link to the next page of deleted keys.", + "schema": { + "$ref": "#/definitions/DeletedKeyListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetDeletedKeys": { + "$ref": "./examples/GetDeletedKeys-example.json" + } + } + } + }, + "/deletedkeys/{key-name}": { + "get": { + "tags": [ + "DeletedKeys" + ], + "operationId": "GetDeletedKey", + "summary": "Gets the public part of a deleted key.", + "description": "The Get Deleted Key operation is applicable for soft-delete enabled vaults. While the operation can be invoked on any vault, it will return an error if invoked on a non soft-delete enabled vault. This operation requires the keys/get permission. ", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A DeletedKeyBundle consisting of a WebKey plus its Attributes and deletion information.", + "schema": { + "$ref": "#/definitions/DeletedKeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetDeletedKey": { + "$ref": "./examples/GetDeletedKey-example.json" + } + } + }, + "delete": { + "tags": [ + "DeletedKeys" + ], + "operationId": "PurgeDeletedKey", + "summary": "Permanently deletes the specified key.", + "description": "The Purge Deleted Key operation is applicable for soft-delete enabled vaults. While the operation can be invoked on any vault, it will return an error if invoked on a non soft-delete enabled vault. This operation requires the keys/purge permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No content, signaling that the key was permanently purged." + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "PurgeDeletedKey": { + "$ref": "./examples/PurgeDeletedKey-example.json" + } + } + } + }, + "/deletedkeys/{key-name}/recover": { + "post": { + "tags": [ + "DeletedKeys" + ], + "operationId": "RecoverDeletedKey", + "summary": "Recovers the deleted key to its latest version.", + "description": "The Recover Deleted Key operation is applicable for deleted keys in soft-delete enabled vaults. It recovers the deleted key back to its latest version under /keys. An attempt to recover an non-deleted key will return an error. Consider this the inverse of the delete operation on soft-delete enabled vaults. This operation requires the keys/recover permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deleted key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A Key bundle of the original key and its attributes", + "schema": { + "$ref": "#/definitions/KeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "RecoverDeletedKey": { + "$ref": "./examples/RecoverDeletedKey-example.json" + } + } + } + } + }, + "definitions": { + "JsonWebKey": { + "properties": { + "kid": { + "type": "string", + "description": "Key identifier." + }, + "kty": { + "type": "string", + "description": "JsonWebKey Key Type (kty), as defined in https://tools.ietf.org/html/draft-ietf-jose-json-web-algorithms-40.", + "enum": [ + "EC", + "EC-HSM", + "RSA", + "RSA-HSM", + "oct" + ], + "x-ms-enum": { + "name": "JsonWebKeyType", + "modelAsString": true, + "values": [ + { + "value": "EC", + "description": "Elliptic Curve." + }, + { + "value": "EC-HSM", + "description": "Elliptic Curve with a private key which is not exportable from the HSM." + }, + { + "value": "RSA", + "description": "RSA (https://tools.ietf.org/html/rfc3447)" + }, + { + "value": "RSA-HSM", + "description": "RSA with a private key which is not exportable from the HSM." + }, + { + "value": "oct", + "description": "Octet sequence (used to represent symmetric keys)" + } + ] + } + }, + "key_ops": { + "type": "array", + "items": { + "type": "string", + "description": "Supported key operations." + } + }, + "n": { + "type": "string", + "format": "base64url", + "description": "RSA modulus." + }, + "e": { + "type": "string", + "format": "base64url", + "description": "RSA public exponent." + }, + "d": { + "type": "string", + "format": "base64url", + "description": "RSA private exponent, or the D component of an EC private key." + }, + "dp": { + "x-ms-client-name": "DP", + "type": "string", + "format": "base64url", + "description": "RSA private key parameter." + }, + "dq": { + "x-ms-client-name": "DQ", + "type": "string", + "format": "base64url", + "description": "RSA private key parameter." + }, + "qi": { + "x-ms-client-name": "QI", + "type": "string", + "format": "base64url", + "description": "RSA private key parameter." + }, + "p": { + "type": "string", + "format": "base64url", + "description": "RSA secret prime." + }, + "q": { + "type": "string", + "format": "base64url", + "description": "RSA secret prime, with p < q." + }, + "k": { + "type": "string", + "format": "base64url", + "description": "Symmetric key." + }, + "key_hsm": { + "x-ms-client-name": "t", + "type": "string", + "format": "base64url", + "description": "HSM Token, used with 'Bring Your Own Key'." + }, + "crv": { + "type": "string", + "description": "Elliptic curve name. For valid values, see JsonWebKeyCurveName.", + "enum": [ + "P-256", + "P-384", + "P-521", + "P-256K" + ], + "x-ms-enum": { + "name": "JsonWebKeyCurveName", + "modelAsString": true, + "values": [ + { + "value": "P-256", + "description": "The NIST P-256 elliptic curve, AKA SECG curve SECP256R1." + }, + { + "value": "P-384", + "description": "The NIST P-384 elliptic curve, AKA SECG curve SECP384R1." + }, + { + "value": "P-521", + "description": "The NIST P-521 elliptic curve, AKA SECG curve SECP521R1." + }, + { + "value": "P-256K", + "description": "The SECG SECP256K1 elliptic curve." + } + ] + } + }, + "x": { + "type": "string", + "format": "base64url", + "description": "X component of an EC public key." + }, + "y": { + "type": "string", + "format": "base64url", + "description": "Y component of an EC public key." + } + }, + "description": "As of http://tools.ietf.org/html/draft-ietf-jose-json-web-key-18" + }, + "KeyAttributes": { + "allOf": [ + { + "$ref": "common.json#/definitions/Attributes" + } + ], + "properties": { + "recoverableDays": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "softDelete data retention days. Value should be >=7 and <=90 when softDelete enabled, otherwise 0." + }, + "recoveryLevel": { + "type": "string", + "description": "Reflects the deletion recovery level currently in effect for keys in the current vault. If it contains 'Purgeable' the key can be permanently deleted by a privileged user; otherwise, only the system can purge the key, at the end of the retention interval.", + "enum": [ + "Purgeable", + "Recoverable+Purgeable", + "Recoverable", + "Recoverable+ProtectedSubscription", + "CustomizedRecoverable+Purgeable", + "CustomizedRecoverable", + "CustomizedRecoverable+ProtectedSubscription" + ], + "x-ms-enum": { + "name": "DeletionRecoveryLevel", + "modelAsString": true + }, + "readOnly": true, + "x-nullable": false + } + }, + "description": "The attributes of a key managed by the key vault service." + }, + "KeyBundle": { + "properties": { + "key": { + "$ref": "#/definitions/JsonWebKey", + "description": "The Json web key." + }, + "attributes": { + "$ref": "#/definitions/KeyAttributes", + "description": "The key management attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + }, + "managed": { + "type": "boolean", + "readOnly": true, + "description": "True if the key's lifetime is managed by key vault. If this is a key backing a certificate, then managed will be true." + } + }, + "description": "A KeyBundle consisting of a WebKey plus its attributes." + }, + "KeyItem": { + "properties": { + "kid": { + "type": "string", + "description": "Key identifier." + }, + "attributes": { + "$ref": "#/definitions/KeyAttributes", + "description": "The key management attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + }, + "managed": { + "type": "boolean", + "readOnly": true, + "description": "True if the key's lifetime is managed by key vault. If this is a key backing a certificate, then managed will be true." + } + }, + "description": "The key item containing key metadata." + }, + "DeletedKeyBundle": { + "allOf": [ + { + "$ref": "#/definitions/KeyBundle" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted key." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the key is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the key was deleted, in UTC" + } + }, + "description": "A DeletedKeyBundle consisting of a WebKey plus its Attributes and deletion info" + }, + "DeletedKeyItem": { + "allOf": [ + { + "$ref": "#/definitions/KeyItem" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted key." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the key is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the key was deleted, in UTC" + } + }, + "description": "The deleted key item containing the deleted key metadata and information about deletion." + }, + "KeyProperties": { + "properties": { + "exportable": { + "type": "boolean", + "description": "Indicates if the private key can be exported." + }, + "kty": { + "x-ms-client-name": "keyType", + "type": "string", + "description": "The type of key pair to be used for the certificate.", + "enum": [ + "EC", + "EC-HSM", + "RSA", + "RSA-HSM", + "oct" + ], + "x-ms-enum": { + "name": "JsonWebKeyType", + "modelAsString": true + } + }, + "key_size": { + "type": "integer", + "format": "int32", + "description": "The key size in bits. For example: 2048, 3072, or 4096 for RSA." + }, + "reuse_key": { + "type": "boolean", + "description": "Indicates if the same key pair will be used on certificate renewal." + }, + "crv": { + "x-ms-client-name": "curve", + "type": "string", + "description": "Elliptic curve name. For valid values, see JsonWebKeyCurveName.", + "enum": [ + "P-256", + "P-384", + "P-521", + "P-256K" + ], + "x-ms-enum": { + "name": "JsonWebKeyCurveName", + "modelAsString": true + } + } + }, + "description": "Properties of the key pair backing a certificate." + }, + "KeyCreateParameters": { + "properties": { + "kty": { + "type": "string", + "minLength": 1, + "description": "The type of key to create. For valid values, see JsonWebKeyType.", + "enum": [ + "EC", + "EC-HSM", + "RSA", + "RSA-HSM", + "oct" + ], + "x-ms-enum": { + "name": "JsonWebKeyType", + "modelAsString": true + } + }, + "key_size": { + "type": "integer", + "format": "int32", + "description": "The key size in bits. For example: 2048, 3072, or 4096 for RSA." + }, + "key_ops": { + "type": "array", + "items": { + "type": "string", + "description": "JSON web key operations. For more information, see JsonWebKeyOperation.", + "enum": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey", + "import" + ], + "x-ms-enum": { + "name": "JsonWebKeyOperation", + "modelAsString": true + } + } + }, + "attributes": { + "x-ms-client-name": "keyAttributes", + "$ref": "#/definitions/KeyAttributes" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + }, + "crv": { + "x-ms-client-name": "curve", + "type": "string", + "description": "Elliptic curve name. For valid values, see JsonWebKeyCurveName.", + "enum": [ + "P-256", + "P-384", + "P-521", + "P-256K" + ], + "x-ms-enum": { + "name": "JsonWebKeyCurveName", + "modelAsString": true + } + } + }, + "description": "The key create parameters.", + "required": [ + "kty" + ] + }, + "KeyImportParameters": { + "properties": { + "Hsm": { + "type": "boolean", + "description": "Whether to import as a hardware key (HSM) or software key." + }, + "key": { + "$ref": "#/definitions/JsonWebKey", + "description": "The Json web key" + }, + "attributes": { + "x-ms-client-name": "keyAttributes", + "$ref": "#/definitions/KeyAttributes", + "description": "The key management attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The key import parameters.", + "required": [ + "key" + ] + }, + "KeyOperationsParameters": { + "properties": { + "alg": { + "x-ms-client-name": "algorithm", + "type": "string", + "minLength": 1, + "description": "algorithm identifier", + "enum": [ + "RSA-OAEP", + "RSA-OAEP-256", + "RSA1_5" + ], + "x-ms-enum": { + "name": "JsonWebKeyEncryptionAlgorithm", + "modelAsString": true + } + }, + "value": { + "type": "string", + "format": "base64url" + } + }, + "description": "The key operations parameters.", + "required": [ + "alg", + "value" + ] + }, + "KeySignParameters": { + "properties": { + "alg": { + "x-ms-client-name": "algorithm", + "type": "string", + "minLength": 1, + "description": "The signing/verification algorithm identifier. For more information on possible algorithm types, see JsonWebKeySignatureAlgorithm.", + "enum": [ + "PS256", + "PS384", + "PS512", + "RS256", + "RS384", + "RS512", + "RSNULL", + "ES256", + "ES384", + "ES512", + "ES256K" + ], + "x-ms-enum": { + "name": "JsonWebKeySignatureAlgorithm", + "modelAsString": true, + "values": [ + { + "value": "PS256", + "description": "RSASSA-PSS using SHA-256 and MGF1 with SHA-256, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "PS384", + "description": "RSASSA-PSS using SHA-384 and MGF1 with SHA-384, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "PS512", + "description": "RSASSA-PSS using SHA-512 and MGF1 with SHA-512, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "RS256", + "description": "RSASSA-PKCS1-v1_5 using SHA-256, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "RS384", + "description": "RSASSA-PKCS1-v1_5 using SHA-384, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "RS512", + "description": "RSASSA-PKCS1-v1_5 using SHA-512, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "RSNULL", + "description": "Reserved" + }, + { + "value": "ES256", + "description": "ECDSA using P-256 and SHA-256, as described in https://tools.ietf.org/html/rfc7518." + }, + { + "value": "ES384", + "description": "ECDSA using P-384 and SHA-384, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "ES512", + "description": "ECDSA using P-521 and SHA-512, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "ES256K", + "description": "ECDSA using P-256K and SHA-256, as described in https://tools.ietf.org/html/rfc7518" + } + ] + } + }, + "value": { + "type": "string", + "format": "base64url" + } + }, + "description": "The key operations parameters.", + "required": [ + "alg", + "value" + ] + }, + "KeyVerifyParameters": { + "properties": { + "alg": { + "x-ms-client-name": "algorithm", + "type": "string", + "minLength": 1, + "description": "The signing/verification algorithm. For more information on possible algorithm types, see JsonWebKeySignatureAlgorithm.", + "enum": [ + "PS256", + "PS384", + "PS512", + "RS256", + "RS384", + "RS512", + "RSNULL", + "ES256", + "ES384", + "ES512", + "ES256K" + ], + "x-ms-enum": { + "name": "JsonWebKeySignatureAlgorithm", + "modelAsString": true + } + }, + "digest": { + "type": "string", + "format": "base64url", + "description": "The digest used for signing." + }, + "value": { + "x-ms-client-name": "signature", + "type": "string", + "format": "base64url", + "description": "The signature to be verified." + } + }, + "description": "The key verify parameters.", + "required": [ + "alg", + "digest", + "value" + ] + }, + "KeyUpdateParameters": { + "properties": { + "key_ops": { + "type": "array", + "items": { + "type": "string", + "description": "JSON web key operations. For more information, see JsonWebKeyOperation.", + "enum": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey", + "import" + ], + "x-ms-enum": { + "name": "JsonWebKeyOperation", + "modelAsString": true + } + }, + "description": "Json web key operations. For more information on possible key operations, see JsonWebKeyOperation." + }, + "attributes": { + "x-ms-client-name": "keyAttributes", + "$ref": "#/definitions/KeyAttributes" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The key update parameters." + }, + "KeyRestoreParameters": { + "properties": { + "value": { + "type": "string", + "x-ms-client-name": "keyBundleBackup", + "format": "base64url", + "description": "The backup blob associated with a key bundle." + } + }, + "description": "The key restore parameters.", + "required": [ + "value" + ] + }, + "KeyOperationResult": { + "properties": { + "kid": { + "type": "string", + "description": "Key identifier", + "readOnly": true + }, + "value": { + "x-ms-client-name": "result", + "type": "string", + "format": "base64url", + "readOnly": true + } + }, + "description": "The key operation result." + }, + "KeyVerifyResult": { + "properties": { + "value": { + "type": "boolean", + "readOnly": true, + "description": "True if the signature is verified, otherwise false." + } + }, + "description": "The key verify result." + }, + "KeyListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/KeyItem" + }, + "readOnly": true, + "description": "A response message containing a list of keys in the key vault along with a link to the next page of keys." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of keys." + } + }, + "description": "The key list result." + }, + "DeletedKeyListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeletedKeyItem" + }, + "readOnly": true, + "description": "A response message containing a list of deleted keys in the vault along with a link to the next page of deleted keys" + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of deleted keys." + } + }, + "description": "A list of keys that have been deleted in this vault." + }, + "BackupKeyResult": { + "properties": { + "value": { + "type": "string", + "format": "base64url", + "readOnly": true, + "description": "The backup blob containing the backed up key." + } + }, + "description": "The backup key result, containing the backup blob." + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/secrets.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/secrets.json new file mode 100644 index 000000000000..b0c5f3b3542e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/secrets.json @@ -0,0 +1,861 @@ +{ + "swagger": "2.0", + "info": { + "title": "KeyVaultClient", + "description": "The key vault client performs cryptographic key operations and vault operations against the Key Vault service.", + "version": "7.1-preview" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{vaultBaseUrl}", + "useSchemePrefix": false, + "positionInOperation": "first", + "parameters": [ + { + "name": "vaultBaseUrl", + "description": "The vault name, for example https://myvault.vault.azure.net.", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + ] + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/secrets/{secret-name}": { + "put": { + "tags": [ + "Secrets" + ], + "operationId": "SetSecret", + "summary": "Sets a secret in a specified key vault.", + "description": " The SET operation adds a secret to the Azure Key Vault. If the named secret already exists, Azure Key Vault creates a new version of that secret. This operation requires the secrets/set permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z-]+$", + "description": "The name of the secret." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/SecretSetParameters" + }, + "description": "The parameters for setting the secret." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A secret bundle containing the result of the set secret request.", + "schema": { + "$ref": "#/definitions/SecretBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "SetSecret": { + "$ref": "./examples/SetSecret-example.json" + } + } + }, + "delete": { + "tags": [ + "Secrets" + ], + "operationId": "DeleteSecret", + "summary": "Deletes a secret from a specified key vault.", + "description": "The DELETE operation applies to any secret stored in Azure Key Vault. DELETE cannot be applied to an individual version of a secret. This operation requires the secrets/delete permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the secret." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The deleted secret and information on when the secret will be deleted, and how to recover the deleted secret.", + "schema": { + "$ref": "#/definitions/DeletedSecretBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "DeleteSecret": { + "$ref": "./examples/DeleteSecret-example.json" + } + } + } + }, + "/secrets/{secret-name}/{secret-version}": { + "patch": { + "tags": [ + "Secrets" + ], + "operationId": "UpdateSecret", + "summary": "Updates the attributes associated with a specified secret in a given key vault.", + "description": "The UPDATE operation changes specified attributes of an existing stored secret. Attributes that are not specified in the request are left unchanged. The value of a secret itself cannot be changed. This operation requires the secrets/set permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the secret." + }, + { + "name": "secret-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the secret." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/SecretUpdateParameters" + }, + "description": "The parameters for update secret operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The updated secret.", + "schema": { + "$ref": "#/definitions/SecretBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "UpdateSecret": { + "$ref": "./examples/UpdateSecret-example.json" + } + } + }, + "get": { + "tags": [ + "Secrets" + ], + "operationId": "GetSecret", + "summary": "Get a specified secret from a given key vault.", + "description": "The GET operation is applicable to any secret stored in Azure Key Vault. This operation requires the secrets/get permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the secret." + }, + { + "name": "secret-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the secret." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The retrieved secret.", + "schema": { + "$ref": "#/definitions/SecretBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetSecret": { + "$ref": "./examples/GetSecret-example.json" + } + } + } + }, + "/secrets": { + "get": { + "tags": [ + "Secrets" + ], + "operationId": "GetSecrets", + "summary": "List secrets in a specified key vault.", + "description": "The Get Secrets operation is applicable to the entire vault. However, only the base secret identifier and its attributes are provided in the response. Individual secret versions are not listed in the response. This operation requires the secrets/list permission.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified, the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of secrets in the vault along with a link to the next page of secrets.", + "schema": { + "$ref": "#/definitions/SecretListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetSecrets": { + "$ref": "./examples/GetSecrets-example.json" + } + } + } + }, + "/secrets/{secret-name}/versions": { + "get": { + "tags": [ + "Secrets" + ], + "operationId": "GetSecretVersions", + "summary": "List all versions of the specified secret.", + "description": "The full secret identifier and attributes are provided in the response. No values are returned for the secrets. This operations requires the secrets/list permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the secret." + }, + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified, the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of secrets along with a link to the next page of secrets.", + "schema": { + "$ref": "#/definitions/SecretListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetSecretVersions": { + "$ref": "./examples/GetSecretVersions-example.json" + } + } + } + }, + "/deletedsecrets": { + "get": { + "tags": [ + "DeletedSecrets" + ], + "operationId": "GetDeletedSecrets", + "summary": "Lists deleted secrets for the specified vault.", + "description": "The Get Deleted Secrets operation returns the secrets that have been deleted for a vault enabled for soft-delete. This operation requires the secrets/list permission.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of deleted secrets in the vault, along with a link to the next page of deleted secrets.", + "schema": { + "$ref": "#/definitions/DeletedSecretListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetDeletedSecrets": { + "$ref": "./examples/GetDeletedSecrets-example.json" + } + } + } + }, + "/deletedsecrets/{secret-name}": { + "get": { + "tags": [ + "DeletedSecrets" + ], + "operationId": "GetDeletedSecret", + "summary": "Gets the specified deleted secret.", + "description": "The Get Deleted Secret operation returns the specified deleted secret along with its attributes. This operation requires the secrets/get permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the secret." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A secret bundle of the secret and its attributes.", + "schema": { + "$ref": "#/definitions/DeletedSecretBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetDeletedSecret": { + "$ref": "./examples/GetDeletedSecret-example.json" + } + } + }, + "delete": { + "tags": [ + "DeletedSecrets" + ], + "operationId": "PurgeDeletedSecret", + "summary": "Permanently deletes the specified secret.", + "description": "The purge deleted secret operation removes the secret permanently, without the possibility of recovery. This operation can only be enabled on a soft-delete enabled vault. This operation requires the secrets/purge permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the secret." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No content signaling that the secret was purged forever." + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "PurgeDeletedSecret": { + "$ref": "./examples/PurgeDeletedSecret-example.json" + } + } + } + }, + "/deletedsecrets/{secret-name}/recover": { + "post": { + "tags": [ + "DeletedSecrets" + ], + "operationId": "RecoverDeletedSecret", + "summary": "Recovers the deleted secret to the latest version.", + "description": "Recovers the deleted secret in the specified vault. This operation can only be performed on a soft-delete enabled vault. This operation requires the secrets/recover permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deleted secret." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A Secret bundle of the original secret and its attributes.", + "schema": { + "$ref": "#/definitions/SecretBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "RecoverDeletedSecret": { + "$ref": "./examples/RecoverDeletedSecret-example.json" + } + } + } + }, + "/secrets/{secret-name}/backup": { + "post": { + "tags": [ + "Secrets" + ], + "operationId": "BackupSecret", + "summary": "Backs up the specified secret.", + "description": "Requests that a backup of the specified secret be downloaded to the client. All versions of the secret will be downloaded. This operation requires the secrets/backup permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the secret." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The backup blob containing the backed up secret.", + "schema": { + "$ref": "#/definitions/BackupSecretResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "BackupSecret": { + "$ref": "./examples/BackupSecret-example.json" + } + } + } + }, + "/secrets/restore": { + "post": { + "tags": [ + "Secrets" + ], + "operationId": "RestoreSecret", + "summary": "Restores a backed up secret to a vault.", + "description": "Restores a backed up secret, and all its versions, to a vault. This operation requires the secrets/restore permission.", + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/SecretRestoreParameters" + }, + "description": "The parameters to restore the secret." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Restored secret bundle in the vault.", + "schema": { + "$ref": "#/definitions/SecretBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "RestoreSecret": { + "$ref": "./examples/RestoreSecret-example.json" + } + } + } + } + }, + "definitions": { + "SecretBundle": { + "properties": { + "value": { + "type": "string", + "description": "The secret value." + }, + "id": { + "type": "string", + "description": "The secret id." + }, + "contentType": { + "type": "string", + "description": "The content type of the secret." + }, + "attributes": { + "$ref": "#/definitions/SecretAttributes", + "description": "The secret management attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + }, + "kid": { + "type": "string", + "readOnly": true, + "description": "If this is a secret backing a KV certificate, then this field specifies the corresponding key backing the KV certificate." + }, + "managed": { + "type": "boolean", + "readOnly": true, + "description": "True if the secret's lifetime is managed by key vault. If this is a secret backing a certificate, then managed will be true." + } + }, + "description": "A secret consisting of a value, id and its attributes." + }, + "SecretItem": { + "properties": { + "id": { + "type": "string", + "description": "Secret identifier." + }, + "attributes": { + "$ref": "#/definitions/SecretAttributes", + "description": "The secret management attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + }, + "contentType": { + "type": "string", + "description": "Type of the secret value such as a password." + }, + "managed": { + "type": "boolean", + "readOnly": true, + "description": "True if the secret's lifetime is managed by key vault. If this is a key backing a certificate, then managed will be true." + } + }, + "description": "The secret item containing secret metadata." + }, + "DeletedSecretBundle": { + "allOf": [ + { + "$ref": "#/definitions/SecretBundle" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted secret." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the secret is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the secret was deleted, in UTC" + } + }, + "description": "A Deleted Secret consisting of its previous id, attributes and its tags, as well as information on when it will be purged." + }, + "DeletedSecretItem": { + "allOf": [ + { + "$ref": "#/definitions/SecretItem" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted secret." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the secret is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the secret was deleted, in UTC" + } + }, + "description": "The deleted secret item containing metadata about the deleted secret." + }, + "SecretAttributes": { + "allOf": [ + { + "$ref": "common.json#/definitions/Attributes" + } + ], + "properties": { + "recoverableDays": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "softDelete data retention days. Value should be >=7 and <=90 when softDelete enabled, otherwise 0." + }, + "recoveryLevel": { + "type": "string", + "description": "Reflects the deletion recovery level currently in effect for secrets in the current vault. If it contains 'Purgeable', the secret can be permanently deleted by a privileged user; otherwise, only the system can purge the secret, at the end of the retention interval.", + "enum": [ + "Purgeable", + "Recoverable+Purgeable", + "Recoverable", + "Recoverable+ProtectedSubscription", + "CustomizedRecoverable+Purgeable", + "CustomizedRecoverable", + "CustomizedRecoverable+ProtectedSubscription" + ], + "x-ms-enum": { + "name": "DeletionRecoveryLevel", + "modelAsString": true + }, + "readOnly": true, + "x-nullable": false + } + }, + "description": "The secret management attributes." + }, + "SecretRestoreParameters": { + "properties": { + "value": { + "type": "string", + "x-ms-client-name": "secretBundleBackup", + "format": "base64url", + "description": "The backup blob associated with a secret bundle." + } + }, + "description": "The secret restore parameters.", + "required": [ + "value" + ] + }, + "SecretProperties": { + "properties": { + "contentType": { + "type": "string", + "description": "The media type (MIME type)." + } + }, + "description": "Properties of the key backing a certificate." + }, + "SecretSetParameters": { + "properties": { + "value": { + "type": "string", + "description": "The value of the secret." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + }, + "contentType": { + "type": "string", + "description": "Type of the secret value such as a password." + }, + "attributes": { + "x-ms-client-name": "secretAttributes", + "$ref": "#/definitions/SecretAttributes", + "description": "The secret management attributes." + } + }, + "description": "The secret set parameters.", + "required": [ + "value" + ] + }, + "SecretUpdateParameters": { + "properties": { + "contentType": { + "type": "string", + "description": "Type of the secret value such as a password." + }, + "attributes": { + "x-ms-client-name": "secretAttributes", + "$ref": "#/definitions/SecretAttributes", + "description": "The secret management attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The secret update parameters." + }, + "SecretListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SecretItem" + }, + "readOnly": true, + "description": "A response message containing a list of secrets in the key vault along with a link to the next page of secrets." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of secrets." + } + }, + "description": "The secret list result." + }, + "DeletedSecretListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeletedSecretItem" + }, + "readOnly": true, + "description": "A response message containing a list of the deleted secrets in the vault along with a link to the next page of deleted secrets" + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of deleted secrets." + } + }, + "description": "The deleted secret list result" + }, + "BackupSecretResult": { + "properties": { + "value": { + "type": "string", + "format": "base64url", + "readOnly": true, + "description": "The backup blob containing the backed up secret." + } + }, + "description": "The backup secret result, containing the backup blob." + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/storage.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/storage.json new file mode 100644 index 000000000000..161b39a01a37 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.1/storage.json @@ -0,0 +1,1592 @@ +{ + "swagger": "2.0", + "info": { + "title": "KeyVaultClient", + "description": "The key vault client performs cryptographic key operations and vault operations against the Key Vault service.", + "version": "7.1-preview" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{vaultBaseUrl}", + "useSchemePrefix": false, + "positionInOperation": "first", + "parameters": [ + { + "name": "vaultBaseUrl", + "description": "The vault name, for example https://myvault.vault.azure.net.", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + ] + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/storage": { + "get": { + "tags": [ + "Storage" + ], + "operationId": "GetStorageAccounts", + "description": "List storage accounts managed by the specified key vault. This operation requires the storage/list permission.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of storage accounts along with a link to the next page of storage accounts.", + "schema": { + "$ref": "#/definitions/StorageListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Storage account": { + "$ref": "./examples/listStorageAccount.json" + } + } + } + }, + "/deletedstorage": { + "get": { + "tags": [ + "DeletedStorage" + ], + "operationId": "GetDeletedStorageAccounts", + "summary": "Lists deleted storage accounts for the specified vault.", + "description": "The Get Deleted Storage Accounts operation returns the storage accounts that have been deleted for a vault enabled for soft-delete. This operation requires the storage/list permission.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of deleted storage accounts in the vault, along with a link to the next page of deleted storage accounts.", + "schema": { + "$ref": "#/definitions/DeletedStorageListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Deleted Storage Accounts": { + "$ref": "./examples/listDeletedStorageAccount.json" + } + } + } + }, + "/deletedstorage/{storage-account-name}": { + "get": { + "tags": [ + "DeletedStorage" + ], + "operationId": "GetDeletedStorageAccount", + "summary": "Gets the specified deleted storage account.", + "description": "The Get Deleted Storage Account operation returns the specified deleted storage account along with its attributes. This operation requires the storage/get permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The deleted storage account and information on when it will be purged, and how to recover the deleted storage account.", + "schema": { + "$ref": "#/definitions/DeletedStorageBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Get Deleted Storage": { + "$ref": "./examples/getDeletedStorageAccount.json" + } + } + }, + "delete": { + "tags": [ + "DeletedStorage" + ], + "operationId": "PurgeDeletedStorageAccount", + "summary": "Permanently deletes the specified storage account.", + "description": "The purge deleted storage account operation removes the secret permanently, without the possibility of recovery. This operation can only be performed on a soft-delete enabled vault. This operation requires the storage/purge permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No content signaling that the storage account was purged forever." + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Purge Deleted Storage Account": { + "$ref": "./examples/purgeStorageAccount.json" + } + } + } + }, + "/deletedstorage/{storage-account-name}/recover": { + "post": { + "tags": [ + "DeletedStorage" + ], + "operationId": "RecoverDeletedStorageAccount", + "summary": "Recovers the deleted storage account.", + "description": "Recovers the deleted storage account in the specified vault. This operation can only be performed on a soft-delete enabled vault. This operation requires the storage/recover permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A storage bundle of the original storage account and its attributes.", + "schema": { + "$ref": "#/definitions/StorageBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Recover Deleted Storage Account": { + "$ref": "./examples/recoverStorageAccount.json" + } + } + } + }, + "/storage/{storage-account-name}/backup": { + "post": { + "tags": [ + "Storage" + ], + "operationId": "BackupStorageAccount", + "summary": "Backs up the specified storage account.", + "description": "Requests that a backup of the specified storage account be downloaded to the client. This operation requires the storage/backup permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The backup blob containing the backed up storage account.", + "schema": { + "$ref": "#/definitions/BackupStorageResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Backup Storage Account": { + "$ref": "./examples/backupStorageAccount.json" + } + } + } + }, + "/storage/restore": { + "post": { + "tags": [ + "Storage" + ], + "operationId": "RestoreStorageAccount", + "summary": "Restores a backed up storage account to a vault.", + "description": "Restores a backed up storage account to a vault. This operation requires the storage/restore permission.", + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/StorageRestoreParameters" + }, + "description": "The parameters to restore the storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Restored storage account bundle in the vault.", + "schema": { + "$ref": "#/definitions/StorageBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Restore Storage Account": { + "$ref": "./examples/restoreStorageAccount.json" + } + } + } + }, + "/storage/{storage-account-name}": { + "delete": { + "tags": [ + "Storage" + ], + "operationId": "DeleteStorageAccount", + "description": "Deletes a storage account. This operation requires the storage/delete permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The deleted storage account and information on when the storage account will be deleted, and how to recover the deleted storage account.", + "schema": { + "$ref": "#/definitions/DeletedStorageBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Delete Storage account": { + "$ref": "./examples/deleteStorageAccount.json" + } + } + }, + "get": { + "tags": [ + "Storage" + ], + "operationId": "GetStorageAccount", + "description": "Gets information about a specified storage account. This operation requires the storage/get permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The retrieved storage account.", + "schema": { + "$ref": "#/definitions/StorageBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Get Storage account": { + "$ref": "./examples/getStorageAccount.json" + } + } + }, + "put": { + "tags": [ + "Storage" + ], + "operationId": "SetStorageAccount", + "description": "Creates or updates a new storage account. This operation requires the storage/set permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/StorageAccountCreateParameters" + }, + "description": "The parameters to create a storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The created storage account.", + "schema": { + "$ref": "#/definitions/StorageBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Set Storage account": { + "$ref": "./examples/setStorageAccount.json" + } + } + }, + "patch": { + "tags": [ + "Storage" + ], + "operationId": "UpdateStorageAccount", + "description": "Updates the specified attributes associated with the given storage account. This operation requires the storage/set/update permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/StorageAccountUpdateParameters" + }, + "description": "The parameters to update a storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The updated storage account.", + "schema": { + "$ref": "#/definitions/StorageBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Update Storage account": { + "$ref": "./examples/updateStorageAccount.json" + } + } + } + }, + "/storage/{storage-account-name}/regeneratekey": { + "post": { + "tags": [ + "Storage" + ], + "operationId": "RegenerateStorageAccountKey", + "description": "Regenerates the specified key value for the given storage account. This operation requires the storage/regeneratekey permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/StorageAccountRegenerteKeyParameters" + }, + "description": "The parameters to regenerate storage account key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The updated storage account.", + "schema": { + "$ref": "#/definitions/StorageBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Regenerate Storage account key": { + "$ref": "./examples/regenerateStorageAccountKey.json" + } + } + } + }, + "/storage/{storage-account-name}/sas": { + "get": { + "tags": [ + "Storage" + ], + "operationId": "GetSasDefinitions", + "description": "List storage SAS definitions for the given storage account. This operation requires the storage/listsas permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of SAS definitions along with a link to the next page of SAS definitions.", + "schema": { + "$ref": "#/definitions/SasDefinitionListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Storage Sas Definition": { + "$ref": "./examples/listStorageSasDefinition.json" + } + } + } + }, + "/deletedstorage/{storage-account-name}/sas": { + "get": { + "tags": [ + "DeletedStorage" + ], + "operationId": "GetDeletedSasDefinitions", + "summary": "Lists deleted SAS definitions for the specified vault and storage account.", + "description": "The Get Deleted Sas Definitions operation returns the SAS definitions that have been deleted for a vault enabled for soft-delete. This operation requires the storage/listsas permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of deleted SAS definitions for the storage account, along with a link to the next page of deleted SAS definitions.", + "schema": { + "$ref": "#/definitions/DeletedSasDefinitionListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Deleted Storage Sas Definitions": { + "$ref": "./examples/listDeletedStorageSasDefinition.json" + } + } + } + }, + "/deletedstorage/{storage-account-name}/sas/{sas-definition-name}": { + "get": { + "tags": [ + "DeletedStorage" + ], + "operationId": "GetDeletedSasDefinition", + "summary": "Gets the specified deleted sas definition.", + "description": "The Get Deleted SAS Definition operation returns the specified deleted SAS definition along with its attributes. This operation requires the storage/getsas permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "sas-definition-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the SAS definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The deleted SAS definition and information on when the it will be purged, and how to recover the deleted SAS definition.", + "schema": { + "$ref": "#/definitions/DeletedSasDefinitionBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Get Deleted Storage Sas Definition": { + "$ref": "./examples/getDeletedStorageSasDefinition.json" + } + } + } + }, + "/deletedstorage/{storage-account-name}/sas/{sas-definition-name}/recover": { + "post": { + "tags": [ + "DeletedStorage" + ], + "operationId": "RecoverDeletedSasDefinition", + "summary": "Recovers the deleted SAS definition.", + "description": "Recovers the deleted SAS definition for the specified storage account. This operation can only be performed on a soft-delete enabled vault. This operation requires the storage/recover permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "sas-definition-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the SAS definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A SAS definition bundle of the original SAS definition and its attributes.", + "schema": { + "$ref": "#/definitions/SasDefinitionBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Recover Deleted Storage Sas Definition": { + "$ref": "./examples/recoverStorageSasDefinition.json" + } + } + } + }, + "/storage/{storage-account-name}/sas/{sas-definition-name}": { + "delete": { + "tags": [ + "Storage" + ], + "operationId": "DeleteSasDefinition", + "description": "Deletes a SAS definition from a specified storage account. This operation requires the storage/deletesas permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "sas-definition-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the SAS definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The deleted SAS definition and information on when the SAS definition will be deleted, and how to recover the deleted SAS definition.", + "schema": { + "$ref": "#/definitions/DeletedSasDefinitionBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Delete Storage Sas Definition": { + "$ref": "./examples/deleteStorageSasDefinition.json" + } + } + }, + "get": { + "tags": [ + "Storage" + ], + "operationId": "GetSasDefinition", + "description": "Gets information about a SAS definition for the specified storage account. This operation requires the storage/getsas permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "sas-definition-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the SAS definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The retrieved SAS definition.", + "schema": { + "$ref": "#/definitions/SasDefinitionBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Get Storage Sas Definition": { + "$ref": "./examples/getStorageSasDefinition.json" + } + } + }, + "put": { + "tags": [ + "Storage" + ], + "operationId": "SetSasDefinition", + "description": "Creates or updates a new SAS definition for the specified storage account. This operation requires the storage/setsas permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "sas-definition-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the SAS definition." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/SasDefinitionCreateParameters" + }, + "description": "The parameters to create a SAS definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The created SAS definition.", + "schema": { + "$ref": "#/definitions/SasDefinitionBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Set Storage Sas definition": { + "$ref": "./examples/setStorageSasDefinition.json" + } + } + }, + "patch": { + "tags": [ + "Storage" + ], + "operationId": "UpdateSasDefinition", + "description": "Updates the specified attributes associated with the given SAS definition. This operation requires the storage/setsas permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "sas-definition-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the SAS definition." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/SasDefinitionUpdateParameters" + }, + "description": "The parameters to update a SAS definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The updated SAS definition.", + "schema": { + "$ref": "#/definitions/SasDefinitionBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Update Storage Sas definition": { + "$ref": "./examples/updateStorageSasDefinition.json" + } + } + } + } + }, + "definitions": { + "StorageRestoreParameters": { + "properties": { + "value": { + "type": "string", + "x-ms-client-name": "storageBundleBackup", + "format": "base64url", + "description": "The backup blob associated with a storage account." + } + }, + "description": "The secret restore parameters.", + "required": [ + "value" + ] + }, + "StorageAccountAttributes": { + "properties": { + "enabled": { + "type": "boolean", + "description": "the enabled state of the object." + }, + "created": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Creation time in UTC." + }, + "updated": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Last updated time in UTC." + }, + "recoverableDays": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "softDelete data retention days. Value should be >=7 and <=90 when softDelete enabled, otherwise 0." + }, + "recoveryLevel": { + "type": "string", + "description": "Reflects the deletion recovery level currently in effect for storage accounts in the current vault. If it contains 'Purgeable' the storage account can be permanently deleted by a privileged user; otherwise, only the system can purge the storage account, at the end of the retention interval.", + "enum": [ + "Purgeable", + "Recoverable+Purgeable", + "Recoverable", + "Recoverable+ProtectedSubscription", + "CustomizedRecoverable+Purgeable", + "CustomizedRecoverable", + "CustomizedRecoverable+ProtectedSubscription" + ], + "x-ms-enum": { + "name": "DeletionRecoveryLevel", + "modelAsString": true + }, + "readOnly": true, + "x-nullable": false + } + }, + "description": "The storage account management attributes." + }, + "StorageBundle": { + "properties": { + "id": { + "type": "string", + "description": "The storage account id.", + "readOnly": true + }, + "resourceId": { + "type": "string", + "description": "The storage account resource id.", + "readOnly": true + }, + "activeKeyName": { + "type": "string", + "description": "The current active storage account key name.", + "readOnly": true + }, + "autoRegenerateKey": { + "type": "boolean", + "description": "whether keyvault should manage the storage account for the user.", + "readOnly": true + }, + "regenerationPeriod": { + "type": "string", + "description": "The key regeneration time duration specified in ISO-8601 format.", + "readOnly": true + }, + "attributes": { + "$ref": "#/definitions/StorageAccountAttributes", + "description": "The storage account attributes.", + "readOnly": true + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs", + "readOnly": true + } + }, + "description": "A Storage account bundle consists of key vault storage account details plus its attributes." + }, + "DeletedStorageBundle": { + "allOf": [ + { + "$ref": "#/definitions/StorageBundle" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted storage account." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the storage account is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the storage account was deleted, in UTC" + } + }, + "description": "A deleted storage account bundle consisting of its previous id, attributes and its tags, as well as information on when it will be purged." + }, + "StorageAccountCreateParameters": { + "properties": { + "resourceId": { + "type": "string", + "description": "Storage account resource id." + }, + "activeKeyName": { + "type": "string", + "description": "Current active storage account key name." + }, + "autoRegenerateKey": { + "type": "boolean", + "description": "whether keyvault should manage the storage account for the user." + }, + "regenerationPeriod": { + "type": "string", + "description": "The key regeneration time duration specified in ISO-8601 format." + }, + "attributes": { + "x-ms-client-name": "StorageAccountAttributes", + "$ref": "#/definitions/StorageAccountAttributes", + "description": "The attributes of the storage account." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The storage account create parameters.", + "required": [ + "resourceId", + "activeKeyName", + "autoRegenerateKey" + ] + }, + "StorageAccountUpdateParameters": { + "properties": { + "activeKeyName": { + "type": "string", + "description": "The current active storage account key name." + }, + "autoRegenerateKey": { + "type": "boolean", + "description": "whether keyvault should manage the storage account for the user." + }, + "regenerationPeriod": { + "type": "string", + "description": "The key regeneration time duration specified in ISO-8601 format." + }, + "attributes": { + "x-ms-client-name": "StorageAccountAttributes", + "$ref": "#/definitions/StorageAccountAttributes", + "description": "The attributes of the storage account." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The storage account update parameters." + }, + "StorageAccountRegenerteKeyParameters": { + "properties": { + "keyName": { + "type": "string", + "description": "The storage account key name." + } + }, + "description": "The storage account key regenerate parameters.", + "required": [ + "keyName" + ] + }, + "StorageAccountItem": { + "properties": { + "id": { + "type": "string", + "description": "Storage identifier.", + "readOnly": true + }, + "resourceId": { + "type": "string", + "description": "Storage account resource Id.", + "readOnly": true + }, + "attributes": { + "$ref": "#/definitions/StorageAccountAttributes", + "description": "The storage account management attributes.", + "readOnly": true + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs.", + "readOnly": true + } + }, + "description": "The storage account item containing storage account metadata." + }, + "DeletedStorageAccountItem": { + "allOf": [ + { + "$ref": "#/definitions/StorageAccountItem" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted storage account." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the storage account is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the storage account was deleted, in UTC" + } + }, + "description": "The deleted storage account item containing metadata about the deleted storage account." + }, + "StorageListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/StorageAccountItem" + }, + "readOnly": true, + "description": "A response message containing a list of storage accounts in the key vault along with a link to the next page of storage accounts." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of storage accounts." + } + }, + "description": "The storage accounts list result." + }, + "DeletedStorageListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeletedStorageAccountItem" + }, + "readOnly": true, + "description": "A response message containing a list of the deleted storage accounts in the vault along with a link to the next page of deleted storage accounts" + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of deleted storage accounts." + } + }, + "description": "The deleted storage account list result" + }, + "SasDefinitionAttributes": { + "properties": { + "enabled": { + "type": "boolean", + "description": "the enabled state of the object." + }, + "created": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Creation time in UTC." + }, + "updated": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Last updated time in UTC." + }, + "recoverableDays": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "softDelete data retention days. Value should be >=7 and <=90 when softDelete enabled, otherwise 0." + }, + "recoveryLevel": { + "type": "string", + "description": "Reflects the deletion recovery level currently in effect for SAS definitions in the current vault. If it contains 'Purgeable' the SAS definition can be permanently deleted by a privileged user; otherwise, only the system can purge the SAS definition, at the end of the retention interval.", + "enum": [ + "Purgeable", + "Recoverable+Purgeable", + "Recoverable", + "Recoverable+ProtectedSubscription", + "CustomizedRecoverable+Purgeable", + "CustomizedRecoverable", + "CustomizedRecoverable+ProtectedSubscription" + ], + "x-ms-enum": { + "name": "DeletionRecoveryLevel", + "modelAsString": true + }, + "readOnly": true, + "x-nullable": false + } + }, + "description": "The SAS definition management attributes." + }, + "SasDefinitionBundle": { + "properties": { + "id": { + "type": "string", + "description": "The SAS definition id.", + "readOnly": true + }, + "sid": { + "x-ms-client-name": "SecretId", + "type": "string", + "description": "Storage account SAS definition secret id.", + "readOnly": true + }, + "templateUri": { + "type": "string", + "description": "The SAS definition token template signed with an arbitrary key. Tokens created according to the SAS definition will have the same properties as the template.", + "readOnly": true + }, + "sasType": { + "type": "string", + "description": "The type of SAS token the SAS definition will create.", + "enum": [ + "account", + "service" + ], + "x-ms-enum": { + "name": "SasTokenType", + "modelAsString": true + }, + "readOnly": true + }, + "validityPeriod": { + "type": "string", + "description": "The validity period of SAS tokens created according to the SAS definition.", + "readOnly": true + }, + "attributes": { + "$ref": "#/definitions/SasDefinitionAttributes", + "description": "The SAS definition attributes.", + "readOnly": true + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs", + "readOnly": true + } + }, + "description": "A SAS definition bundle consists of key vault SAS definition details plus its attributes." + }, + "DeletedSasDefinitionBundle": { + "allOf": [ + { + "$ref": "#/definitions/SasDefinitionBundle" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted SAS definition." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the SAS definition is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the SAS definition was deleted, in UTC" + } + }, + "description": "A deleted SAS definition bundle consisting of its previous id, attributes and its tags, as well as information on when it will be purged." + }, + "SasDefinitionItem": { + "properties": { + "id": { + "type": "string", + "description": "The storage SAS identifier.", + "readOnly": true + }, + "sid": { + "x-ms-client-name": "SecretId", + "type": "string", + "description": "The storage account SAS definition secret id.", + "readOnly": true + }, + "attributes": { + "$ref": "#/definitions/SasDefinitionAttributes", + "description": "The SAS definition management attributes.", + "readOnly": true + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs.", + "readOnly": true + } + }, + "description": "The SAS definition item containing storage SAS definition metadata." + }, + "DeletedSasDefinitionItem": { + "allOf": [ + { + "$ref": "#/definitions/SasDefinitionItem" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted SAS definition." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the SAS definition is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the SAS definition was deleted, in UTC" + } + }, + "description": "The deleted SAS definition item containing metadata about the deleted SAS definition." + }, + "SasDefinitionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SasDefinitionItem" + }, + "readOnly": true, + "description": "A response message containing a list of SAS definitions along with a link to the next page of SAS definitions." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of SAS definitions." + } + }, + "description": "The storage account SAS definition list result." + }, + "DeletedSasDefinitionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeletedSasDefinitionItem" + }, + "readOnly": true, + "description": "A response message containing a list of the deleted SAS definitions in the vault along with a link to the next page of deleted sas definitions" + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of deleted SAS definitions." + } + }, + "description": "The deleted SAS definition list result" + }, + "SasDefinitionCreateParameters": { + "properties": { + "templateUri": { + "type": "string", + "description": "The SAS definition token template signed with an arbitrary key. Tokens created according to the SAS definition will have the same properties as the template." + }, + "sasType": { + "type": "string", + "description": "The type of SAS token the SAS definition will create.", + "enum": [ + "account", + "service" + ], + "x-ms-enum": { + "name": "SasTokenType", + "modelAsString": true + } + }, + "validityPeriod": { + "type": "string", + "description": "The validity period of SAS tokens created according to the SAS definition." + }, + "attributes": { + "x-ms-client-name": "SasDefinitionAttributes", + "$ref": "#/definitions/SasDefinitionAttributes", + "description": "The attributes of the SAS definition." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The SAS definition create parameters.", + "required": [ + "templateUri", + "sasType", + "validityPeriod" + ] + }, + "SasDefinitionUpdateParameters": { + "properties": { + "templateUri": { + "type": "string", + "description": "The SAS definition token template signed with an arbitrary key. Tokens created according to the SAS definition will have the same properties as the template." + }, + "sasType": { + "type": "string", + "description": "The type of SAS token the SAS definition will create.", + "enum": [ + "account", + "service" + ], + "x-ms-enum": { + "name": "SasTokenType", + "modelAsString": true + } + }, + "validityPeriod": { + "type": "string", + "description": "The validity period of SAS tokens created according to the SAS definition." + }, + "attributes": { + "x-ms-client-name": "SasDefinitionAttributes", + "$ref": "#/definitions/SasDefinitionAttributes", + "description": "The attributes of the SAS definition." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The SAS definition update parameters." + }, + "BackupStorageResult": { + "properties": { + "value": { + "type": "string", + "format": "base64url", + "readOnly": true, + "description": "The backup blob containing the backed up storage account." + } + }, + "description": "The backup storage result, containing the backup blob." + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/backuprestore.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/backuprestore.json new file mode 100644 index 000000000000..d3539a6a3040 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/backuprestore.json @@ -0,0 +1,306 @@ +{ + "swagger": "2.0", + "info": { + "title": "KeyVaultClient", + "description": "The key vault client performs cryptographic key operations and vault operations against the Key Vault service.", + "version": "7.2-preview" + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/backup": { + "post": { + "tags": [ + "FullBackup" + ], + "operationId": "FullBackup", + "description": "Creates a full backup using a user-provided SAS token to an Azure blob storage container.", + "parameters": [ + { + "in": "body", + "name": "azureStorageBlobContainerUri", + "schema": { + "$ref": "#/definitions/SASTokenParameter" + }, + "description": "Azure blob shared access signature token pointing to a valid Azure blob container where full backup needs to be stored. This token needs to be valid for at least next 24 hours from the time of making this call" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Started full backup", + "headers": { + "Retry-After": { + "description": "The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.", + "type": "integer" + }, + "Azure-AsyncOperation": { + "description": "The URI to poll for completion status.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/FullBackupOperation" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Create full backup": { + "$ref": "./examples/FullBackup-example.json" + } + } + } + }, + "/backup/{jobId}/pending": { + "get": { + "tags": [ + "FullBackup" + ], + "operationId": "FullBackupStatus", + "description": "Returns the status of full backup operation", + "parameters": [ + { + "name": "jobId", + "in": "path", + "required": true, + "type": "string", + "description": "The id returned as part of the backup request" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the full backup status", + "schema": { + "$ref": "#/definitions/FullBackupOperation" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Full backup status": { + "$ref": "./examples/FullBackup-pending-example.json" + } + } + } + }, + "/restore": { + "put": { + "tags": [ + "FullRestore" + ], + "operationId": "FullRestoreOperation", + "description": "Restores all key materials using the SAS token pointing to a previously stored Azure Blob storage backup folder", + "parameters": [ + { + "name": "restoreBlobDetails", + "in": "body", + "schema": { + "$ref": "#/definitions/RestoreOperationParameters" + }, + "description": "The Azure blob SAS token pointing to a folder where the previous successful full backup was stored" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Started restore operation from the previously stored backup", + "headers": { + "Retry-After": { + "description": "The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.", + "type": "integer" + }, + "Azure-AsyncOperation": { + "description": "The URI to poll for completion status.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/FullRestoreOperation" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Create full restore from backup": { + "$ref": "./examples/FullRestore-example.json" + } + } + } + }, + "/restore/{jobId}/pending": { + "get": { + "tags": [ + "FullRestore" + ], + "operationId": "FullRestoreStatus", + "description": "Returns the status of full restore operation", + "parameters": [ + { + "name": "jobId", + "in": "path", + "required": true, + "type": "string", + "description": "The Job Id returned part of the full restore operation" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns the full restore status", + "schema": { + "$ref": "#/definitions/FullRestoreOperation" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Full restore status": { + "$ref": "./examples/FullRestore-pending-example.json" + } + } + } + } + }, + "definitions": { + "RestoreOperationParameters": { + "properties": { + "sasTokenParameters": { + "$ref": "#/definitions/SASTokenParameter" + }, + "folderToRestore": { + "type": "string", + "description": "The Folder name of the blob where the previous successful full backup was stored" + } + }, + "required": [ + "folderToRestore", + "sasTokenParameters" + ] + }, + "SASTokenParameter": { + "properties": { + "storageResourceUri": { + "type": "string", + "description": "Azure Blob storage container Uri" + }, + "token": { + "type": "string", + "description": "The SAS token pointing to an Azure Blob storage container" + } + }, + "required": [ + "storageResourceUri", + "token" + ] + }, + "FullBackupOperation": { + "properties": { + "status": { + "type": "string", + "description": "Status of the backup operation." + }, + "statusDetails": { + "type": "string", + "description": "The status details of backup operation." + }, + "error": { + "$ref": "common.json#/definitions/Error", + "description": "Error encountered, if any, during the full backup operation." + }, + "startTime": { + "type": "integer", + "format": "unixtime", + "description": "The start time of the backup operation in UTC" + }, + "endTime": { + "type": "integer", + "format": "unixtime", + "description": "The end time of the backup operation in UTC" + }, + "jobId": { + "type": "string", + "description": "Identifier for the full backup operation." + }, + "azureStorageBlobContainerUri": { + "type": "string", + "description": "The Azure blob storage container Uri which contains the full backup" + } + }, + "description": "Full backup operation" + }, + "FullRestoreOperation": { + "properties": { + "status": { + "type": "string", + "description": "Status of the restore operation." + }, + "statusDetails": { + "type": "string", + "description": "The status details of restore operation." + }, + "error": { + "$ref": "common.json#/definitions/Error", + "description": "Error encountered, if any, during the full restore operation." + }, + "jobId": { + "type": "string", + "description": "Identifier for the full restore operation." + }, + "startTime": { + "type": "integer", + "format": "unixtime", + "description": "The start time of the restore operation" + }, + "endTime": { + "type": "integer", + "format": "unixtime", + "description": "The end time of the restore operation" + } + }, + "description": "Full restore operation" + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/certificates.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/certificates.json new file mode 100644 index 000000000000..ddcae29d2b30 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/certificates.json @@ -0,0 +1,2054 @@ +{ + "swagger": "2.0", + "info": { + "title": "KeyVaultClient", + "description": "The key vault client performs cryptographic key operations and vault operations against the Key Vault service.", + "version": "7.2-preview" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{vaultBaseUrl}", + "useSchemePrefix": false, + "positionInOperation": "first", + "parameters": [ + { + "name": "vaultBaseUrl", + "description": "The vault name, for example https://myvault.vault.azure.net.", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + ] + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/certificates": { + "get": { + "tags": [ + "Certificates" + ], + "operationId": "GetCertificates", + "summary": "List certificates in a specified key vault", + "description": "The GetCertificates operation returns the set of certificates resources in the specified key vault. This operation requires the certificates/list permission.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "name": "includePending", + "in": "query", + "required": false, + "type": "boolean", + "description": "Specifies whether to include certificates which are not completely provisioned." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of certificates along with a link to the next page of certificates.", + "schema": { + "$ref": "#/definitions/CertificateListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetCertificates": { + "$ref": "./examples/GetCertificates-example.json" + } + } + } + }, + "/certificates/{certificate-name}": { + "delete": { + "tags": [ + "Certificates" + ], + "operationId": "DeleteCertificate", + "summary": "Deletes a certificate from a specified key vault.", + "description": "Deletes all versions of a certificate object along with its associated policy. Delete certificate cannot be used to remove individual versions of a certificate object. This operation requires the certificates/delete permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The deleted certificate.", + "schema": { + "$ref": "#/definitions/DeletedCertificateBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "DeleteCertificate": { + "$ref": "./examples/DeleteCertificate-example.json" + } + } + } + }, + "/certificates/contacts": { + "put": { + "tags": [ + "Certificates" + ], + "operationId": "SetCertificateContacts", + "description": "Sets the certificate contacts for the specified key vault. This operation requires the certificates/managecontacts permission.", + "summary": "Sets the certificate contacts for the specified key vault.", + "parameters": [ + { + "name": "contacts", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Contacts" + }, + "description": "The contacts for the key vault certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The contacts for the key vault certificate.", + "schema": { + "$ref": "#/definitions/Contacts" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "SetCertificateContacts": { + "$ref": "./examples/SetCertificateContacts-example.json" + } + } + }, + "get": { + "tags": [ + "Certificates" + ], + "operationId": "GetCertificateContacts", + "summary": "Lists the certificate contacts for a specified key vault.", + "description": "The GetCertificateContacts operation returns the set of certificate contact resources in the specified key vault. This operation requires the certificates/managecontacts permission.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The contacts for the key vault certificate.", + "schema": { + "$ref": "#/definitions/Contacts" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetCertificateContacts": { + "$ref": "./examples/GetCertificateContacts-example.json" + } + } + }, + "delete": { + "tags": [ + "Certificates" + ], + "operationId": "DeleteCertificateContacts", + "description": "Deletes the certificate contacts for a specified key vault certificate. This operation requires the certificates/managecontacts permission.", + "summary": "Deletes the certificate contacts for a specified key vault.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The contacts for the key vault certificate.", + "schema": { + "$ref": "#/definitions/Contacts" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "DeleteCertificateContacts": { + "$ref": "./examples/DeleteCertificateContacts-example.json" + } + } + } + }, + "/certificates/issuers": { + "get": { + "tags": [ + "Certificates" + ], + "operationId": "GetCertificateIssuers", + "summary": "List certificate issuers for a specified key vault.", + "description": "The GetCertificateIssuers operation returns the set of certificate issuer resources in the specified key vault. This operation requires the certificates/manageissuers/getissuers permission.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of certificate issuers in a key vault along with a link to the next page of certificate issuers.", + "schema": { + "$ref": "#/definitions/CertificateIssuerListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetCertificateIssuers": { + "$ref": "./examples/GetCertificateIssuers-example.json" + } + } + } + }, + "/certificates/issuers/{issuer-name}": { + "put": { + "tags": [ + "Certificates" + ], + "operationId": "SetCertificateIssuer", + "summary": "Sets the specified certificate issuer.", + "description": "The SetCertificateIssuer operation adds or updates the specified certificate issuer. This operation requires the certificates/setissuers permission.", + "parameters": [ + { + "name": "issuer-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the issuer." + }, + { + "name": "parameter", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CertificateIssuerSetParameters" + }, + "description": "Certificate issuer set parameter." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The issuer for the key vault certificate.", + "schema": { + "$ref": "#/definitions/IssuerBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "SetCertificateIssuer": { + "$ref": "./examples/SetCertificateIssuer-example.json" + } + } + }, + "patch": { + "tags": [ + "Certificates" + ], + "operationId": "UpdateCertificateIssuer", + "summary": "Updates the specified certificate issuer.", + "description": "The UpdateCertificateIssuer operation performs an update on the specified certificate issuer entity. This operation requires the certificates/setissuers permission.", + "parameters": [ + { + "name": "issuer-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the issuer." + }, + { + "name": "parameter", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CertificateIssuerUpdateParameters" + }, + "description": "Certificate issuer update parameter." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The issuer for the key vault certificate.", + "schema": { + "$ref": "#/definitions/IssuerBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "UpdateCertificateIssuer": { + "$ref": "./examples/UpdateCertificateIssuer-example.json" + } + } + }, + "get": { + "tags": [ + "Certificates" + ], + "operationId": "GetCertificateIssuer", + "summary": "Lists the specified certificate issuer.", + "description": "The GetCertificateIssuer operation returns the specified certificate issuer resources in the specified key vault. This operation requires the certificates/manageissuers/getissuers permission.", + "parameters": [ + { + "name": "issuer-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the issuer." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The issuer for the key vault certificate.", + "schema": { + "$ref": "#/definitions/IssuerBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetCertificateIssuer": { + "$ref": "./examples/GetCertificateIssuer-example.json" + } + } + }, + "delete": { + "tags": [ + "Certificates" + ], + "operationId": "DeleteCertificateIssuer", + "summary": "Deletes the specified certificate issuer.", + "description": "The DeleteCertificateIssuer operation permanently removes the specified certificate issuer from the vault. This operation requires the certificates/manageissuers/deleteissuers permission.", + "parameters": [ + { + "name": "issuer-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the issuer." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The issuer for the key vault certificate.", + "schema": { + "$ref": "#/definitions/IssuerBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "DeleteCertificateIssuer": { + "$ref": "./examples/DeleteCertificateIssuer-example.json" + } + } + } + }, + "/certificates/{certificate-name}/create": { + "post": { + "tags": [ + "Certificates" + ], + "operationId": "CreateCertificate", + "summary": "Creates a new certificate.", + "description": "If this is the first version, the certificate resource is created. This operation requires the certificates/create permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z-]+$", + "description": "The name of the certificate." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CertificateCreateParameters" + }, + "description": "The parameters to create a certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Created certificate bundle.", + "schema": { + "$ref": "#/definitions/CertificateOperation" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "CreateCertificate": { + "$ref": "./examples/CreateCertificate-example.json" + } + } + } + }, + "/certificates/{certificate-name}/import": { + "post": { + "tags": [ + "Certificates" + ], + "operationId": "ImportCertificate", + "summary": "Imports a certificate into a specified key vault.", + "description": "Imports an existing valid certificate, containing a private key, into Azure Key Vault. The certificate to be imported can be in either PFX or PEM format. If the certificate is in PEM format the PEM file must contain the key as well as x509 certificates. This operation requires the certificates/import permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z-]+$", + "description": "The name of the certificate." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CertificateImportParameters" + }, + "description": "The parameters to import the certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Imported certificate bundle to the vault.", + "schema": { + "$ref": "#/definitions/CertificateBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "ImportCertificate": { + "$ref": "./examples/ImportCertificate-example.json" + } + } + } + }, + "/certificates/{certificate-name}/versions": { + "get": { + "tags": [ + "Certificates" + ], + "operationId": "GetCertificateVersions", + "summary": "List the versions of a certificate.", + "description": "The GetCertificateVersions operation returns the versions of a certificate in the specified key vault. This operation requires the certificates/list permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate." + }, + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of certificates in the key vault along with a link to the next page of keys.", + "schema": { + "$ref": "#/definitions/CertificateListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetCertificateVersions": { + "$ref": "./examples/GetCertificateVersions-example.json" + } + } + } + }, + "/certificates/{certificate-name}/policy": { + "get": { + "tags": [ + "Certificates" + ], + "operationId": "GetCertificatePolicy", + "summary": "Lists the policy for a certificate.", + "description": "The GetCertificatePolicy operation returns the specified certificate policy resources in the specified key vault. This operation requires the certificates/get permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate in a given key vault." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The certificate policy.", + "schema": { + "$ref": "#/definitions/CertificatePolicy" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetCertificatePolicy": { + "$ref": "./examples/GetCertificatePolicy-example.json" + } + } + }, + "patch": { + "tags": [ + "Certificates" + ], + "operationId": "UpdateCertificatePolicy", + "summary": "Updates the policy for a certificate.", + "description": "Set specified members in the certificate policy. Leave others as null. This operation requires the certificates/update permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate in the given vault." + }, + { + "name": "certificatePolicy", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CertificatePolicy" + }, + "description": "The policy for the certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The certificate policy", + "schema": { + "$ref": "#/definitions/CertificatePolicy" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "UpdateCertificatePolicy": { + "$ref": "./examples/UpdateCertificatePolicy-example.json" + } + } + } + }, + "/certificates/{certificate-name}/{certificate-version}": { + "patch": { + "tags": [ + "Certificates" + ], + "operationId": "UpdateCertificate", + "summary": "Updates the specified attributes associated with the given certificate.", + "description": "The UpdateCertificate operation applies the specified update on the given certificate; the only elements updated are the certificate's attributes. This operation requires the certificates/update permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate in the given key vault." + }, + { + "name": "certificate-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the certificate." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CertificateUpdateParameters" + }, + "description": "The parameters for certificate update." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The updated certificate.", + "schema": { + "$ref": "#/definitions/CertificateBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "UpdateCertificate": { + "$ref": "./examples/UpdateCertificate-example.json" + } + } + }, + "get": { + "tags": [ + "Certificates" + ], + "operationId": "GetCertificate", + "summary": "Gets information about a certificate.", + "description": "Gets information about a specific certificate. This operation requires the certificates/get permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate in the given vault." + }, + { + "name": "certificate-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The retrieved certificate.", + "schema": { + "$ref": "#/definitions/CertificateBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetCertificate": { + "$ref": "./examples/GetCertificate-example.json" + } + } + } + }, + "/certificates/{certificate-name}/pending": { + "patch": { + "tags": [ + "Certificates" + ], + "operationId": "UpdateCertificateOperation", + "summary": "Updates a certificate operation.", + "description": "Updates a certificate creation operation that is already in progress. This operation requires the certificates/update permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate." + }, + { + "name": "certificateOperation", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CertificateOperationUpdateParameter" + }, + "description": "The certificate operation response." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A message containing the certificate operation response.", + "schema": { + "$ref": "#/definitions/CertificateOperation" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "UpdateCertificateOperation": { + "$ref": "./examples/UpdateCertificateOperation-example.json" + } + } + }, + "get": { + "tags": [ + "Certificates" + ], + "operationId": "GetCertificateOperation", + "summary": "Gets the creation operation of a certificate.", + "description": "Gets the creation operation associated with a specified certificate. This operation requires the certificates/get permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The certificate operation response.", + "schema": { + "$ref": "#/definitions/CertificateOperation" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetCertificateOperation": { + "$ref": "./examples/GetCertificateOperation-example.json" + } + } + }, + "delete": { + "tags": [ + "Certificates" + ], + "operationId": "DeleteCertificateOperation", + "summary": "Deletes the creation operation for a specific certificate.", + "description": "Deletes the creation operation for a specified certificate that is in the process of being created. The certificate is no longer created. This operation requires the certificates/update permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A message containing the certificate operation response.", + "schema": { + "$ref": "#/definitions/CertificateOperation" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "DeleteCertificateOperation": { + "$ref": "./examples/DeleteCertificateOperation-example.json" + } + } + } + }, + "/certificates/{certificate-name}/pending/merge": { + "post": { + "tags": [ + "Certificates" + ], + "operationId": "MergeCertificate", + "summary": "Merges a certificate or a certificate chain with a key pair existing on the server.", + "description": "The MergeCertificate operation performs the merging of a certificate or certificate chain with a key pair currently available in the service. This operation requires the certificates/create permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CertificateMergeParameters" + }, + "description": "The parameters to merge certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Merged certificate bundle to the vault.", + "schema": { + "$ref": "#/definitions/CertificateBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "MergeCertificate": { + "$ref": "./examples/MergeCertificate-example.json" + } + } + } + }, + "/certificates/{certificate-name}/backup": { + "post": { + "tags": [ + "Certificates" + ], + "operationId": "BackupCertificate", + "summary": "Backs up the specified certificate.", + "description": "Requests that a backup of the specified certificate be downloaded to the client. All versions of the certificate will be downloaded. This operation requires the certificates/backup permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The backup blob containing the backed up certificate.", + "schema": { + "$ref": "#/definitions/BackupCertificateResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "BackupCertificate": { + "$ref": "./examples/BackupCertificate-example.json" + } + } + } + }, + "/certificates/restore": { + "post": { + "tags": [ + "Certificates" + ], + "operationId": "RestoreCertificate", + "summary": "Restores a backed up certificate to a vault.", + "description": "Restores a backed up certificate, and all its versions, to a vault. This operation requires the certificates/restore permission.", + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/CertificateRestoreParameters" + }, + "description": "The parameters to restore the certificate." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Restored certificate bundle in the vault.", + "schema": { + "$ref": "#/definitions/CertificateBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "RestoreCertificate": { + "$ref": "./examples/RestoreCertificate-example.json" + } + } + } + }, + "/deletedcertificates": { + "get": { + "tags": [ + "DeletedCertificates" + ], + "operationId": "GetDeletedCertificates", + "summary": "Lists the deleted certificates in the specified vault currently available for recovery.", + "description": "The GetDeletedCertificates operation retrieves the certificates in the current vault which are in a deleted state and ready for recovery or purging. This operation includes deletion-specific information. This operation requires the certificates/get/list permission. This operation can only be enabled on soft-delete enabled vaults.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "name": "includePending", + "in": "query", + "required": false, + "type": "boolean", + "description": "Specifies whether to include certificates which are not completely provisioned." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of deleted certificates in the vault along with a link to the next page of deleted certificates", + "schema": { + "$ref": "#/definitions/DeletedCertificateListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetDeletedCertificates": { + "$ref": "./examples/GetDeletedCertificates-example.json" + } + } + } + }, + "/deletedcertificates/{certificate-name}": { + "get": { + "tags": [ + "DeletedCertificates" + ], + "operationId": "GetDeletedCertificate", + "summary": "Retrieves information about the specified deleted certificate.", + "description": "The GetDeletedCertificate operation retrieves the deleted certificate information plus its attributes, such as retention interval, scheduled permanent deletion and the current deletion recovery level. This operation requires the certificates/get permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A Certificate bundle of the certificate and its attributes", + "schema": { + "$ref": "#/definitions/DeletedCertificateBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetDeletedCertificate": { + "$ref": "./examples/GetDeletedCertificate-example.json" + } + } + }, + "delete": { + "tags": [ + "DeletedCertificates" + ], + "operationId": "PurgeDeletedCertificate", + "summary": "Permanently deletes the specified deleted certificate.", + "description": "The PurgeDeletedCertificate operation performs an irreversible deletion of the specified certificate, without possibility for recovery. The operation is not available if the recovery level does not specify 'Purgeable'. This operation requires the certificate/purge permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the certificate" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No content signaling that the certificate was purged forever." + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "PurgeDeletedCertificate": { + "$ref": "./examples/PurgeDeletedCertificate-example.json" + } + } + } + }, + "/deletedcertificates/{certificate-name}/recover": { + "post": { + "tags": [ + "DeletedCertificates" + ], + "operationId": "RecoverDeletedCertificate", + "summary": "Recovers the deleted certificate back to its current version under /certificates.", + "description": "The RecoverDeletedCertificate operation performs the reversal of the Delete operation. The operation is applicable in vaults enabled for soft-delete, and must be issued during the retention interval (available in the deleted certificate's attributes). This operation requires the certificates/recover permission.", + "parameters": [ + { + "name": "certificate-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deleted certificate" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A Certificate bundle of the original certificate and its attributes", + "schema": { + "$ref": "#/definitions/CertificateBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "RecoverDeletedCertificate": { + "$ref": "./examples/RecoverDeletedCertificate-example.json" + } + } + } + } + }, + "definitions": { + "CertificateAttributes": { + "allOf": [ + { + "$ref": "common.json#/definitions/Attributes" + } + ], + "properties": { + "recoverableDays": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "softDelete data retention days. Value should be >=7 and <=90 when softDelete enabled, otherwise 0." + }, + "recoveryLevel": { + "type": "string", + "description": "Reflects the deletion recovery level currently in effect for certificates in the current vault. If it contains 'Purgeable', the certificate can be permanently deleted by a privileged user; otherwise, only the system can purge the certificate, at the end of the retention interval.", + "enum": [ + "Purgeable", + "Recoverable+Purgeable", + "Recoverable", + "Recoverable+ProtectedSubscription", + "CustomizedRecoverable+Purgeable", + "CustomizedRecoverable", + "CustomizedRecoverable+ProtectedSubscription" + ], + "x-ms-enum": { + "name": "DeletionRecoveryLevel", + "modelAsString": true + }, + "readOnly": true, + "x-nullable": false + } + }, + "description": "The certificate management attributes." + }, + "CertificateItem": { + "properties": { + "id": { + "type": "string", + "description": "Certificate identifier." + }, + "attributes": { + "$ref": "#/definitions/CertificateAttributes", + "description": "The certificate management attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + }, + "x5t": { + "x-ms-client-name": "X509Thumbprint", + "type": "string", + "format": "base64url", + "description": "Thumbprint of the certificate." + } + }, + "description": "The certificate item containing certificate metadata." + }, + "CertificateIssuerItem": { + "properties": { + "id": { + "type": "string", + "description": "Certificate Identifier." + }, + "provider": { + "type": "string", + "description": "The issuer provider." + } + }, + "description": "The certificate issuer item containing certificate issuer metadata." + }, + "CertificateBundle": { + "properties": { + "id": { + "type": "string", + "description": "The certificate id.", + "readOnly": true + }, + "kid": { + "type": "string", + "description": "The key id.", + "readOnly": true + }, + "sid": { + "type": "string", + "description": "The secret id.", + "readOnly": true + }, + "x5t": { + "x-ms-client-name": "X509Thumbprint", + "type": "string", + "format": "base64url", + "description": "Thumbprint of the certificate.", + "readOnly": true + }, + "policy": { + "$ref": "#/definitions/CertificatePolicy", + "description": "The management policy.", + "readOnly": true + }, + "cer": { + "type": "string", + "format": "byte", + "description": "CER contents of x509 certificate." + }, + "contentType": { + "type": "string", + "description": "The content type of the secret." + }, + "attributes": { + "$ref": "#/definitions/CertificateAttributes", + "description": "The certificate attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs" + } + }, + "description": "A certificate bundle consists of a certificate (X509) plus its attributes." + }, + "DeletedCertificateBundle": { + "allOf": [ + { + "$ref": "#/definitions/CertificateBundle" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted certificate." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the certificate is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the certificate was deleted, in UTC" + } + }, + "description": "A Deleted Certificate consisting of its previous id, attributes and its tags, as well as information on when it will be purged." + }, + "DeletedCertificateItem": { + "allOf": [ + { + "$ref": "#/definitions/CertificateItem" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted certificate." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the certificate is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the certificate was deleted, in UTC" + } + }, + "description": "The deleted certificate item containing metadata about the deleted certificate." + }, + "CertificateOperation": { + "properties": { + "id": { + "type": "string", + "description": "The certificate id.", + "readOnly": true + }, + "issuer": { + "x-ms-client-name": "IssuerParameters", + "$ref": "#/definitions/IssuerParameters", + "description": "Parameters for the issuer of the X509 component of a certificate." + }, + "csr": { + "type": "string", + "format": "byte", + "description": "The certificate signing request (CSR) that is being used in the certificate operation." + }, + "cancellation_requested": { + "type": "boolean", + "description": "Indicates if cancellation was requested on the certificate operation." + }, + "status": { + "type": "string", + "description": "Status of the certificate operation." + }, + "status_details": { + "type": "string", + "description": "The status details of the certificate operation." + }, + "error": { + "$ref": "common.json#/definitions/Error", + "description": "Error encountered, if any, during the certificate operation." + }, + "target": { + "type": "string", + "description": "Location which contains the result of the certificate operation." + }, + "request_id": { + "type": "string", + "description": "Identifier for the certificate operation." + } + }, + "description": "A certificate operation is returned in case of asynchronous requests." + }, + "CertificatePolicy": { + "properties": { + "id": { + "type": "string", + "description": "The certificate id.", + "readOnly": true + }, + "key_props": { + "x-ms-client-name": "KeyProperties", + "$ref": "keys.json#/definitions/KeyProperties", + "description": "Properties of the key backing a certificate." + }, + "secret_props": { + "x-ms-client-name": "SecretProperties", + "$ref": "secrets.json#/definitions/SecretProperties", + "description": "Properties of the secret backing a certificate." + }, + "x509_props": { + "x-ms-client-name": "X509CertificateProperties", + "$ref": "#/definitions/X509CertificateProperties", + "description": "Properties of the X509 component of a certificate." + }, + "lifetime_actions": { + "type": "array", + "items": { + "$ref": "#/definitions/LifetimeAction" + }, + "description": "Actions that will be performed by Key Vault over the lifetime of a certificate." + }, + "issuer": { + "x-ms-client-name": "IssuerParameters", + "$ref": "#/definitions/IssuerParameters", + "description": "Parameters for the issuer of the X509 component of a certificate." + }, + "attributes": { + "$ref": "#/definitions/CertificateAttributes", + "description": "The certificate attributes." + } + }, + "description": "Management policy for a certificate." + }, + "X509CertificateProperties": { + "properties": { + "subject": { + "type": "string", + "description": "The subject name. Should be a valid X509 distinguished Name." + }, + "ekus": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The enhanced key usage." + }, + "sans": { + "x-ms-client-name": "SubjectAlternativeNames", + "$ref": "#/definitions/SubjectAlternativeNames", + "description": "The subject alternative names." + }, + "key_usage": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "digitalSignature", + "nonRepudiation", + "keyEncipherment", + "dataEncipherment", + "keyAgreement", + "keyCertSign", + "cRLSign", + "encipherOnly", + "decipherOnly" + ], + "x-ms-enum": { + "name": "KeyUsageType", + "modelAsString": true + } + }, + "description": "List of key usages." + }, + "validity_months": { + "x-ms-client-name": "ValidityInMonths", + "type": "integer", + "format": "int32", + "minimum": 0, + "description": "The duration that the certificate is valid in months." + } + }, + "description": "Properties of the X509 component of a certificate." + }, + "IssuerParameters": { + "properties": { + "name": { + "type": "string", + "description": "Name of the referenced issuer object or reserved names; for example, 'Self' or 'Unknown'." + }, + "cty": { + "x-ms-client-name": "CertificateType", + "type": "string", + "description": "Certificate type as supported by the provider (optional); for example 'OV-SSL', 'EV-SSL'" + }, + "cert_transparency": { + "x-ms-client-name": "CertificateTransparency", + "type": "boolean", + "description": "Indicates if the certificates generated under this policy should be published to certificate transparency logs." + } + }, + "description": "Parameters for the issuer of the X509 component of a certificate." + }, + "LifetimeAction": { + "properties": { + "trigger": { + "$ref": "#/definitions/Trigger", + "description": "The condition that will execute the action." + }, + "action": { + "$ref": "#/definitions/Action", + "description": "The action that will be executed." + } + }, + "description": "Action and its trigger that will be performed by Key Vault over the lifetime of a certificate." + }, + "Action": { + "properties": { + "action_type": { + "type": "string", + "description": "The type of the action.", + "enum": [ + "EmailContacts", + "AutoRenew" + ], + "x-ms-enum": { + "name": "ActionType", + "modelAsString": false + } + } + }, + "description": "The action that will be executed." + }, + "Trigger": { + "properties": { + "lifetime_percentage": { + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 99, + "description": "Percentage of lifetime at which to trigger. Value should be between 1 and 99." + }, + "days_before_expiry": { + "type": "integer", + "format": "int32", + "description": "Days before expiry to attempt renewal. Value should be between 1 and validity_in_months multiplied by 27. If validity_in_months is 36, then value should be between 1 and 972 (36 * 27)." + } + }, + "description": "A condition to be satisfied for an action to be executed." + }, + "SubjectAlternativeNames": { + "properties": { + "emails": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Email addresses." + }, + "dns_names": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Domain names." + }, + "upns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "User principal names." + } + }, + "description": "The subject alternate names of a X509 object." + }, + "IssuerBundle": { + "properties": { + "id": { + "type": "string", + "description": "Identifier for the issuer object.", + "readOnly": true + }, + "provider": { + "type": "string", + "description": "The issuer provider." + }, + "credentials": { + "$ref": "#/definitions/IssuerCredentials", + "description": "The credentials to be used for the issuer." + }, + "org_details": { + "x-ms-client-name": "OrganizationDetails", + "$ref": "#/definitions/OrganizationDetails", + "description": "Details of the organization as provided to the issuer." + }, + "attributes": { + "$ref": "#/definitions/IssuerAttributes", + "description": "Attributes of the issuer object." + } + }, + "description": "The issuer for Key Vault certificate." + }, + "IssuerAttributes": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Determines whether the issuer is enabled." + }, + "created": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Creation time in UTC." + }, + "updated": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Last updated time in UTC." + } + }, + "description": "The attributes of an issuer managed by the Key Vault service." + }, + "IssuerCredentials": { + "properties": { + "account_id": { + "type": "string", + "description": "The user name/account name/account id." + }, + "pwd": { + "x-ms-client-name": "Password", + "type": "string", + "description": "The password/secret/account key." + } + }, + "description": "The credentials to be used for the certificate issuer." + }, + "OrganizationDetails": { + "properties": { + "id": { + "type": "string", + "description": "Id of the organization." + }, + "admin_details": { + "type": "array", + "items": { + "$ref": "#/definitions/AdministratorDetails" + }, + "description": "Details of the organization administrator." + } + }, + "description": "Details of the organization of the certificate issuer." + }, + "AdministratorDetails": { + "properties": { + "first_name": { + "type": "string", + "description": "First name." + }, + "last_name": { + "type": "string", + "description": "Last name." + }, + "email": { + "x-ms-client-name": "EmailAddress", + "type": "string", + "description": "Email address." + }, + "phone": { + "type": "string", + "description": "Phone number." + } + }, + "description": "Details of the organization administrator of the certificate issuer." + }, + "Contacts": { + "properties": { + "id": { + "type": "string", + "description": "Identifier for the contacts collection.", + "readOnly": true + }, + "contacts": { + "x-ms-client-name": "ContactList", + "type": "array", + "items": { + "$ref": "#/definitions/Contact" + }, + "description": "The contact list for the vault certificates." + } + }, + "description": "The contacts for the vault certificates." + }, + "Contact": { + "properties": { + "email": { + "x-ms-client-name": "EmailAddress", + "type": "string", + "description": "Email address." + }, + "name": { + "type": "string", + "description": "Name." + }, + "phone": { + "type": "string", + "description": "Phone number." + } + }, + "description": "The contact information for the vault certificates." + }, + "CertificateCreateParameters": { + "properties": { + "policy": { + "x-ms-client-name": "CertificatePolicy", + "$ref": "#/definitions/CertificatePolicy", + "description": "The management policy for the certificate." + }, + "attributes": { + "x-ms-client-name": "CertificateAttributes", + "$ref": "#/definitions/CertificateAttributes", + "description": "The attributes of the certificate (optional)." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The certificate create parameters." + }, + "CertificateImportParameters": { + "properties": { + "value": { + "x-ms-client-name": "base64EncodedCertificate", + "type": "string", + "description": "Base64 encoded representation of the certificate object to import. This certificate needs to contain the private key." + }, + "pwd": { + "x-ms-client-name": "password", + "type": "string", + "description": "If the private key in base64EncodedCertificate is encrypted, the password used for encryption." + }, + "policy": { + "x-ms-client-name": "CertificatePolicy", + "$ref": "#/definitions/CertificatePolicy", + "description": "The management policy for the certificate." + }, + "attributes": { + "x-ms-client-name": "CertificateAttributes", + "$ref": "#/definitions/CertificateAttributes", + "description": "The attributes of the certificate (optional)." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The certificate import parameters.", + "required": [ + "value" + ] + }, + "CertificateUpdateParameters": { + "properties": { + "policy": { + "x-ms-client-name": "CertificatePolicy", + "$ref": "#/definitions/CertificatePolicy", + "description": "The management policy for the certificate." + }, + "attributes": { + "x-ms-client-name": "CertificateAttributes", + "$ref": "#/definitions/CertificateAttributes", + "description": "The attributes of the certificate (optional)." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The certificate update parameters." + }, + "CertificateMergeParameters": { + "properties": { + "x5c": { + "x-ms-client-name": "x509Certificates", + "type": "array", + "items": { + "type": "string", + "format": "byte" + }, + "description": "The certificate or the certificate chain to merge." + }, + "attributes": { + "x-ms-client-name": "CertificateAttributes", + "$ref": "#/definitions/CertificateAttributes", + "description": "The attributes of the certificate (optional)." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The certificate merge parameters", + "required": [ + "x5c" + ] + }, + "CertificateIssuerSetParameters": { + "properties": { + "provider": { + "type": "string", + "description": "The issuer provider." + }, + "credentials": { + "$ref": "#/definitions/IssuerCredentials", + "description": "The credentials to be used for the issuer." + }, + "org_details": { + "x-ms-client-name": "OrganizationDetails", + "$ref": "#/definitions/OrganizationDetails", + "description": "Details of the organization as provided to the issuer." + }, + "attributes": { + "$ref": "#/definitions/IssuerAttributes", + "description": "Attributes of the issuer object." + } + }, + "description": "The certificate issuer set parameters.", + "required": [ + "provider" + ] + }, + "CertificateIssuerUpdateParameters": { + "properties": { + "provider": { + "type": "string", + "description": "The issuer provider." + }, + "credentials": { + "$ref": "#/definitions/IssuerCredentials", + "description": "The credentials to be used for the issuer." + }, + "org_details": { + "x-ms-client-name": "OrganizationDetails", + "$ref": "#/definitions/OrganizationDetails", + "description": "Details of the organization as provided to the issuer." + }, + "attributes": { + "$ref": "#/definitions/IssuerAttributes", + "description": "Attributes of the issuer object." + } + }, + "description": "The certificate issuer update parameters." + }, + "CertificateOperationUpdateParameter": { + "properties": { + "cancellation_requested": { + "type": "boolean", + "description": "Indicates if cancellation was requested on the certificate operation." + } + }, + "description": "The certificate operation update parameters.", + "required": [ + "cancellation_requested" + ] + }, + "CertificateListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/CertificateItem" + }, + "readOnly": true, + "description": "A response message containing a list of certificates in the key vault along with a link to the next page of certificates." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of certificates." + } + }, + "description": "The certificate list result." + }, + "DeletedCertificateListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeletedCertificateItem" + }, + "readOnly": true, + "description": "A response message containing a list of deleted certificates in the vault along with a link to the next page of deleted certificates" + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of deleted certificates." + } + }, + "description": "A list of certificates that have been deleted in this vault." + }, + "CertificateIssuerListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/CertificateIssuerItem" + }, + "readOnly": true, + "description": "A response message containing a list of certificate issuers in the key vault along with a link to the next page of certificate issuers." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of certificate issuers." + } + }, + "description": "The certificate issuer list result." + }, + "PendingCertificateSigningRequestResult": { + "properties": { + "value": { + "type": "string", + "readOnly": true, + "description": "The pending certificate signing request as Base64 encoded string." + } + }, + "description": "The pending certificate signing request result." + }, + "CertificateRestoreParameters": { + "properties": { + "value": { + "type": "string", + "x-ms-client-name": "certificateBundleBackup", + "format": "base64url", + "description": "The backup blob associated with a certificate bundle." + } + }, + "description": "The certificate restore parameters.", + "required": [ + "value" + ] + }, + "BackupCertificateResult": { + "properties": { + "value": { + "type": "string", + "format": "base64url", + "readOnly": true, + "description": "The backup blob containing the backed up certificate." + } + }, + "description": "The backup certificate result, containing the backup blob." + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/common.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/common.json new file mode 100644 index 000000000000..6b913677029b --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/common.json @@ -0,0 +1,73 @@ +{ + "swagger": "2.0", + "info": { + "title": "KeyVaultClient", + "description": "The key vault client performs cryptographic key operations and vault operations against the Key Vault service.", + "version": "7.2-preview" + }, + "paths": {}, + "definitions": { + "Attributes": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Determines whether the object is enabled." + }, + "nbf": { + "x-ms-client-name": "NotBefore", + "type": "integer", + "format": "unixtime", + "description": "Not before date in UTC." + }, + "exp": { + "x-ms-client-name": "Expires", + "type": "integer", + "format": "unixtime", + "description": "Expiry date in UTC." + }, + "created": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Creation time in UTC." + }, + "updated": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Last updated time in UTC." + } + }, + "description": "The object attributes managed by the KeyVault service." + }, + "KeyVaultError": { + "properties": { + "error": { + "readOnly": true, + "$ref": "#/definitions/Error" + } + }, + "description": "The key vault error exception." + }, + "Error": { + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The error code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The error message." + }, + "innererror": { + "x-ms-client-name": "innerError", + "readOnly": true, + "$ref": "#/definitions/Error" + } + }, + "description": "The key vault server error." + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/BackupCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/BackupCertificate-example.json new file mode 100644 index 000000000000..ceca585def29 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/BackupCertificate-example.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "testcert", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "value": "JkF6dXJlS2V5VmF1bHRLZXlCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUkwTXpnMVlqQTNZaTFrTlRRM0xUUXlaVFV0WVdVNVpTMDJNVEJrWXpNNVpHWmhaamdpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLm85bmpNWEFSZWVla2NaRXBsVTNjdUxQcVZlWmxFbGRDM01XOWpYR0h6bnBXRTdHRGVOSXJraGZscHdTWXFnQnBYQkozMFpUQkRpRmpROENXSnJfUGlsUWNDRkZyN0xrdWJhWUs0TW1zcVh5WGIzbkRJcUJkQmZIUVNpZ1ZET0J5Ym9sUlRNNDYzYjBTbXhLVzJheEdFS2NuZzQ5WFkycG1SR0Vrb0plcHJWZ0tyRkpOUGQ3cGJIS3hQSWdDOFlnT2xudnZxR280RlRDSzh0ZWotcUt2UzBfRGV6Uk5vdTZqZ25SekpxX0g2NGxWMk1hQ0NnUy0xbTlyOGVOTVVvSlhTV1hwc0lneng1RzdEbzIya1ZEY25vMW9rajlCMXNvbklkWmtuY1JybDJBVHNRZVlzZXdkUVd1VmhxRzVLN0pNQWo5YzBRdkxhTmlpdl9PY2pFcm5qUS4zbmI4azJ3SEcyNHFJelNNb184WG13LnJzc3NMNjJ1aUNfTm9IbG5zQlgzcEEtck1uY3g5R3V2NmJYSHpKamxwOWNMUnVaSDBSWlJYVXRwU3BPQWdyZ20tU3BxeEdWSjd2bmprbV9FSzJwYy1sZHNjUWtRSDB4bVFVcGZFNzN5b1VTYTNXVVNMS2VIVnJLdUg5MUtJR0tLODE5ejc5d1Y5Y0F3UjlzcHJxbFFWZnlKdlNFM2tnZTh1RVBpRFFVMFl5WnJqVjBsMGJCU3VkeTN1MVlsVHB6Wk1EWmpUcE05ZGtMclgtaGdxZ1FGa2xFa1hNRWlzd0RDZVM3Y3J2bFg1bnVzbWh5SkZCMklCd3dxNWJieHptV1diU3JOc3lFMmJmWEpXOWN4TFlQcnJJZFpfbkd0X29RSGVQcUFZTS1iVnpTdzdBRGJjMU15NTZwclBGLW9PSm40MHptOTBaaFBTVGMyQXNKRGFBa3R5WFU4WktOYUhFVUlHLWI1SGhUdFBuZ20wN0FrWEtQNngwaDhzZ3ZIaGdCeGpfdWRfQVpQc3pLWG1HdUhFTW9lRGhpT3NkQVdRR0pwR2t0NHVlbmZyamNSeXVlaXJiTC1RV3o4MEtZUnk1QklxbzVJc19RVHpWN2dqMGstYS0td24tazNsNTJ4YjhaNkRXd2tWZ3hqUlNXOXZnV0pVd2U5M1ZrVWtHM3NLRW5SOE9ueTNjWlhQVl9LbWtBTEdlR0ZzQm53SmQwY3dueTBCN2I5VWQyQ19kWEZ0N1BvbnFVNldfT016cC1Nb1NtRzRHbEFpUkVfQ3FrWlhkalhIMVItSmpObUNfdXlPUTdaN1BVaDAtNmd2YUxpcE1CamlWR1FwdzlEZDhmVmtCbWk4VW5uOUxPYXJmSXVtcEJyUE43TTJhM05KdjN6b0NkanhZVFVUMTN1aElpYWl3aExoUFZhT2pUbFRmTkpqbHhIbG5lbGJ1RWJsZTk0bVV1bW8wcjhKRlFMSDdfRjhXMVo0OC1BcjhYYXJwMXhIY0FReHk1WWYwclktdUU1dTAyRnRHUHlPZ0JfNV9WdFlNR2VfRE1mdENLOGVMZGFnVllMRDJDNDUxTldZeVVfeHdNUWdQbXBaMWFnSEdCb2s0ejhsSFBndVhCQ3R2WFFuTHBXQTVBamdOLWNoWjNwUGJmc2RkNjBhekJuWDVaVXQza2hYaWNDdWk4b0xidEtzQUdmckNOZzFwT2Q0MHBHMEJlVy1lNVE1WWQydjY4eFh5a2RiTXhFblFCM3Fzd1djVlh1QXBIR18wREZVVmZvSlc2aVBZcDNWVE51amM5M3QtMDcxWnlZbUZ4V0RfVThMYTAtM19RLV8yZ0pwMVBaVV8tMVBRM1huLXdSWk1vb3JkZGZQa1VPZ0lqdWkwa1IwZWt5RjZvdWdLNnJrSVZHaGp3YUp0ekdKczJLdGxncnRCcEs2MXZEaE5zbFR5VHU5OUp2T2RFTXhwRG5lTEg4NnlvVnhxT3lIT3lxNjByXzdpTHgtdy03Q3FzWTloT3dmQlBZZ3BQVlM2bm9oZVBocTkwaGJTX0lrM21YbnRkRUNMREtSMi1wWFh6bjlPRjZIN09EdHB4S0VXQkdCaHJ0Ykxmd2JZS3dmWmZSVTJVUHpkLUxFd1lQdDloU203Z3lSODNoYkZiSFNBV1cySncxRWl1c3FURWRsRW1lQ3k2cFp1MVFZWko0TUQ0OG5rVXMwdmVHUVhTU2Ytb2RhQm1fYjZZdVh1cWcyWk03MlZjUTd4ZzV4MmpFenFqcllmdjdTTGJINFZBcWp0aFg5LUdRaWEwWEZaS18xempIenhkd1B0R2lSOHJfMkFFZTgtRXFoNi1FaTZKdjRFZjYyMnRrNWFJUWx3R1pETWpGSVNuUkpRdV8xcnJiY1E3enZsbWhUSWFQcUJNRFVxeHBEOXNWUlhuSHdIaTl1b1BCUTllbWJIMkV5WDV6MEhWRXlDa1JEbUd3cmR2RGdsOFVzMUhURjVwYXlYZmF2WkZUZjl3WFZyQXpsRFBEQkFJVFMzWnVJMEJWR2pJUGV1SnRiako4S1pTczRFQVNRRTVyVjViTUpNQXcwa19nYkVRTEZGSjJVb0ZzcWU1QUszM2xGXzR5cGMxU0JaWjJfUzYtbEQyNkpyRFVJSjFFRmJhbWtoUk12bWJIT1Utc0hDT0lRcHdadlJzV3Q3NExSQ1ZyQ09jMGpUdE5TT1JPUW5XRHVXRlFXSzk1TkRGMG96WjIyLVFEMU9YOE9iU3daaHdOXzNfS1pHRmtVMEhNdzNjSTI5LWUxbFltRDV3cmJ0ZlRFbllOeHJKOGpuUWFBY2FoNy14Q0JKeUQ3elo1MXIzRVVyY2VnazBzc1dLeHRPVjRLcTZENmxuVmU3bFpUT1dfTU5aZi1JSzJUbnZCaVZIMHk0SkVGaUxzSDJHbTM1d28yYlZVaXJsT1ljVEk1NlZhdDhMRWhGaEotVlUyNk84NHo2dUJFZmJucEZLbmdKc3pfYVlucW1zNWV1bmd3ek5ndjdlT0U0cUdKSURyMTRBUXRWdEYxcWdrZHNnVllWVXg4U29SQ0NobE5VUzRNRGxhc1hwS1VmV19ENWIxbDRkbXZiNEZNRHJqakJ6djk5dGJSeGZFYUVOSFlYTHZFZnJ0b0pMeW9na2tmNkxlbVoxVDZRbnRtNlR4S1IycU81WU1vMnRJZHlQNmZNRmkweEYtdE1IaHNSdVN3VEpybW1nREcteHVpZllVNkpfaElSNkMzVmo2VkFMMW1oZy0xeW1pRXZuanVLbElONzc4NmFWdVNpNmx5TjJJNzZqY0R6SHZ0VW1ibkVvWWtORHNPQXdqQk9MNFBlS0VjR1hWcm5YNDJhNW5IRWM2cmZQdjZ0Q2tVSUI0UldIdzEyUTFiNDM2N1JvRS1PTWN3TnV6ampob1M0S1ZJbHo4UEFMOW9YYTR4NXlQeG1aVzZ0UUVna1pKeFhEcS00SWRtd1UzTnpVZUoxdGpNaXFsc0xRWDdlc29fTHRtTWJ3bm83YkI3bjRlVnZ4aUtQU3p3dW94c25aaGs1b3ZSSE1xU0NtZjU2MjJvUTZvWEdmNUJLWExlQWdqaE1Sd21razEtUzlGajlyc1hlT19VYjJOMF9hVEFLemlidXIxNVcxaHI3Wk1PVFlxOFlSSGVPaWxSX3Bkdjl5NTlDRDQ1WmE0ZXFURHVrNmRxZ1d4YnoyVVVtMnpwM3pvTHVKSVZ1Y3FIaUVRTVNfMnFKcy1xQTAwT2FFY3huZTM2Q1RsZVNwZjF5cjh2VjNWNW1mQU5zRnJBa21CMnBRWTNfZ21UbldTYTJ3UWlMa2RFRllPSExTeEk5UVowNHo4ZFRfbW5QMmIwWV96N3ZLa0VGQmFpNU02UFdPWjVIOUx1M3Rnay1fR0g0ODd6ZHpuQm0weWZZY3ZIOHJUd1QyQl9UZVRFMG4xcWFRdDRiQ0diUkFQNE1DTDl0SGlIcmlzWEllejQzZlZ3b1c4R2x4YmxKanlLWkpXbmlRNjlBYks3SmYyUER6d2NVSHhkZU5HNGxEZmt6WmFxU2lybGRzZlhXOHBGLWZ6WFVVWHR4eDF4Um5nQ1hJVkxLbU5ZbV9CNnNrNGo0VzROVFMwQTBOcFhsZGJCWjZWWmFDMDNvRHVGUFY0MGtwdWQ0WEd3Q1l3M244ZjFHb0Z6Sk42QjFqOTRLeTdtNE5YT1JsQ3ZaRW5qZTl6T241T1d1ZG9USWRoRzBobXVDUTZ6TXI2YkVaTUFoV1ZFdlREY19iXzZsOWdLWmVxNmVtekxvcmptOEQzLXcyLXRBYlE2Tmpjd0J3eEhMZzlCRllRRFdvaU9UVmJKN2VBcUVFMHVxVkhBcE9KbFVIc2tmQy1uV3NzOV9fRTFURHBLcjRfRE93NFhPUGNzT3dlVU9EUWg3cVFXRE1ZcDVHU1poVWE4MVVHczhmemZKU3JPbmtaTmRVTS10Y0h3R01mX3didy11dmt4UFUtV0tvNUNqR2M2aU5KMDB4MjZZdUpCWXd6TVFyeDBJQWgxMjVBWlozX2FvaFFpLWw3a1pZVE82Q0JVOVZsYllNMndrZXp4ZGhrQ1oxd080Z1NNbDlKU3A5ejhxNV84SU1WM1pma00xV1VqSGZMQk4xRXdFMjRxZFVzcWxyU3NZN1hQaVlpcXQ5ZktXVmZDTWw4RU0yd2ZHYlhxMUI4eWl2UlpMcko0eEk2MUdVUWJFVGU4akNTYTF2aUxxZ0FIa25IYjVjVHIwbDRhTW1EZGZKWnJxZEdpb1lPb2IwdHBuc3IxanRfZm1obGhJa1NSQnREUk5XWEU1OXBjVXlULXpyVjBxZl9sOHN2TlNEV2N3d09YQ3lITWZzLWw0T29xMldVWTVLQi1nSG1HYUJod0oxa19ra3V2S0hlMl9TY0loc3JjTXV1eW5aLW14Vzl5NHBBS3pvdVFsQjR0ZGZvbHdSRk5KX0tHYWJPZXJiWFdDT0ZTd0JVTjdNaG0wOXNyVS1VWG5od1IwdTYyTjVvMDlfbGN5eThnWDg1ZUVrenhuOGZ2NHd2T0Y2dUd1cFk5UGxpSTRLMTNqSHlOd0ZuY2VmRlp2b0dxVlhkcUg5RGJkYS0zY1FhbVFlNmlMek0wRDlnLXlFc2NBTkpKS3ltelVzemZZdV8yY0p0TEhsd0I3NVhLeW1EMG9nUkRvRkRwTmNPd1dRRUlwdVJwU0pfdWtzR2EwZkd3MGVBTU4tQmc1OUs3emhRWHJISUZOckN1S1VPMVdvTkV5WkM2UGlKSUwtUlRsTFQ2WlBNZmdSZzZiUl9aQk43X2dseHBIakNDaFZXMkZ3MnJFUDJJX1pSeHFqdS1WbmVwV2o4eU1CaHZXZzdXNm9QWm1odmVtUTBkQUljNVZTbVVaelhvNFVURmJxSFN2MGlyVTNscVk2eUl1MGRPd2t2MlF4ZENfQVdRUmdLSGRUeG1xYXFUSXJwclZyUHZ1MDFQSGlFbVRnaDZZVEZ6Yllqb3JEeFExWDhlTUN5Rl80cWNjMnhOdTJRblBIdUR0RGZkSy1NV2xJUDhHUEhSMmhPMjlCa0JJSEM4TlgxZmxDN1ZSZkZsQ09McGVIeWl0MGRSd1d2S2tieGNIWl9fRE5ZLVBNQlZMZGpyR3lxT2JoQnpQZHZMeFpXWVU3THNRbnM1dmxiMTc5YXczX3VmclRIWGs0MVpjaDY2ekFRRl9tekQ3ZEVuMm1fb2tBaTh6NTRwdzdxUDAwNHkzenNPd0RmR0htYWF2c3dGMW5NMUN2YXhXajRINE45dVNUaV9DM1oza3lTRHlUNGdUZjNqc0FKUEJybXdSQVBpaU5PTTU3c0x2Y3dJRk9ENnA5QkdWbjFwbjQyZGRTU3A1M3JieTZEcnlwcHdDaDFrampQX3lCbTZRZnd6MElGUWJiSG1zVDNVa2RMb1dURjFSMF9sbjJtR1kxU0hHT2o3VHl1YnQ5d2xLVW5nczVMTWhVcHo3NU1LR3F6UkFnWXNKcHVKUVl1RVpKeGFPSHNmY2VwakdrcFdoMEtfWkhZUEJESzIwOFVqb3FqMDdlVVVueTBaXzJrNXUxTjQzWGJ3V0ZvWVBhdndheW1MYkhWdkRwbzdwMU9JT1IyNkt0SzdPeGlnZ0ZybGVISWNaODFwQzRCdlNzRnZsY1BCZEpHLTZxWTU0Q3J0R2xhaDRvQWplUXgxWS1YU0NLNnZLYUIwWnZHc2lIajhRQ0ZURjRuLUJqTWIzWDcycDJ5Q0tPRlpMRk5qcVR1aHJoYXNnMi1pWTNOTWdwVEQ5eVBSdjA2X1VpcEVfYjVsQ0R0Mmx5QU5NYVpZR1RvSmJTSVhBcFlyU1hEM1dFWllhTGUzQmFSUEJUYTAyeWpyVFZPRDRGNHRFR3c5MkZJZThOSk5NYXRXMFhPSFAwVWxKTXlQUDF2MVdvOUh5aFllaDFfdWg3SlRLcS1hWnJjOS1Xd0ItQXBKTHBQeGxmRzlGZkgwdjNwSTl0Z1VndWJmSkJQVjMwNll2MlNqQ0M2MmVYN3VFTUgzcXQ3TmFYcFVsNXZEVHpfMF9Vc3VlWERQcDNqV01XQTMwenFaYTRFT0dXdElMb0tEM1RjRWNVcmJONGV1bHFQSkFNcWdWdmk2YWRGdTgxU2w5cU1rVVUwaWpqMjZhZDFaeVlEUUZtWlJ4NjJYUW9ZdG81bXJ0eFZhYWtNNndqbkVPSUdJaHhBTnJoX0dNVzVxREhzMEV6TDU4b3lOY0Q5dE1MUC03N1FCbTZwUTFsR0swMVJ6Y3FzTk14ZzRMTzl2ZHQ3NFpIdEhMXzA1TjF2TUt4TE5GbkdhZmwxN1E0eEM0Z3NQeXpYdzBjcklyV2tIQlNQX0NoWE94SmZORWdyNjJOMXEzQVJZa0U1TVlCbzctM3djb3dNT09GcTlrakN1ZGpoekplRjRTUHdfMnFVWVhZRTZsNXJTYjYwUFlFSkJxdW82Skh5ZmdlOXFJX0Rzdmg4eEY1STJfLWtLT2pxU3FZam02NjU0cXVES3phQ3JWLUJFLWtQNF9DOU5OQ0xTaEVWUV92Z3hYdDhzbTRWNGNRMElDRmFzaWV6VnNuV1QtYmRQTGxBT2RqOS15RmhYVTRUYVF3YnZqQ0E2UHQ0aDNVWGdnQzNqWU5IMmJtRGpYSzhFdFJYRTV6cmJsTDRKMFZ1OGxHQVBZaGtOcGNOakNrNWhSSW5jT0dybE9aUk9jdTdSeVczR2JWM2Y1MGJKN0xLNHJjMnJCMTZuemhBdk41WXlydWdwQzdCOE9OR3NTY25ha1V1alJzRzZGYVpydDNzTDJMOW5RTUNoNE9INFF3VWpKWFZKUFJ2MHhPTF9jVEQtdjk0QWgwbWdtcFJ2Q1dhUkl5MXRxeDZHTmZ1R1Nyb0tObmtHYjRiRE1oblpZMmwxQWluWHlCMG5uRGlvci1EUmo1cjhRZi1iaUR6cGhTallzZTZrakdLR0ZObzU4WjFfaGxEaGFob1pQX1lRdlBtWi1Tb2pNaGhMRXZqMXEyZzZWRVd6a1FDWTdIWVEwM1Y3cHVCVm4yaXM1NXpBSGV4cGpERWoxWDgxWU92bnVTdXRhMGx3VkFEMkRoNjZDcmM2VVh2SEtUZTBCeFlsQWdVdkhQc1BkSy1OdVk4S3RaeGNqTWNDVWM0OVl6VW43RVBTamFNaHJ2Ni1mM0pwc09Na3JwREpLM0dPTUVRMUV4cnhYV1lGaGtLaHR2UXZkMXZCVS12b0pRcWJveU9vS1hMM29Xb0FRVnljWlR3Y2laeW4wbUtkVF96NDNFZGhNcDNKS3N5blJ3OVZtSzk3Q3lldGl5LV9HaWVMSngtWDladVMzOUdNa0YxaFVmYmkyc3FJZGZMZ0diem5uMTluTlRVUDlOR3dhaWhybU9Ib1lZeUJ6WE4tby1UWUxhSS01bkNuQ2FSSW9QTF9XSVhyWDZPSzdZU21IWjk4a2xJS19JNTlPSXlWSllrMVh6bGVwd1lPLXUwU0x6bTEtN0dKSE54RGVOMlZhUEk3TThVem10X0x5alliWWxocFFJQnNyUktsMmZZeExKaGt6Q3NjcWp2bVhDemRLVDNhNFV3NDJ4eDlsOWl6dFQ0UmtnV21fYV9YWWk0b0gwdjNCUXRSZ3NfUTBPaGo2T2Y2dEtyZU5XZmcxVDRjMk01SERJd3UxTkl2QXBqNzZtOXJWQkdPWTZFUnhfa2Y3d2twb1g5dWRvcjBCbEx4a1FCc0lwZXpUdzc1MTBncU81Nm1UWXlBUzFCUVdOY1Q2aWhfN3F4ZTVoUkVlZVB5YUpFMnhqR2JNWGg3V1hGYjN0ejVWVWJOTFpxMjBiM3E0UFdkdjJXX1Foc2VUY0JTRDY1eVFPYndTai1UcVpNNi1teUZHb3B6dVdfRWcxU3pzNzRaY3RMSUxyN3pMLXRyeC1WTTVfVHllMVZXbG9ZOTZVYUJyUktpQWU1SVhKMlBQd2RIY1p4SWx4N3dBRXdueXVOZXA2b2NKcXRwZUJ1elB0LTFaX3UyWjZrQmR4V0lpYlVEaGxOU3AxM1NkTGw0Z2hkemVqZWFaYVllRDVtTGltWWJ4dEhsQ1ZiTm0yNU1ZbDYxMFU3QlZnNVJJSXB6VUdmZ2Z5NnpJRzRLQjBMR3BISzNhdHRRUExvQ1VlTDRYNVdBUUFsb3BRa0RKOU5lTHFGdHN4cWpZaGJnZ1Z5am9ScjNPOVhzYzlJVEtVaXJaUDlyTVl0eFduT0tUck9YYVk2WVR2Wi05QUhpT3ZfdTRhOElTS01DVng3OUlnXzdqTjFfREhjdGd5cEEzVnpkbjNKdlJJQTlfbHZDV2dTSS1NUjlPQ19xekhIUmU5dENqWklDVzhwRURSYVhZOHc4UUQ0bXJicmFLTTNsWmtTNUF2NVp2WjFRTDJlZkExbXlJdmN2czhmekxRUFM0Nm0xX3ZPVzcxN05ydDQzeUcwbUZxZnk4aExaZEUzQ2RkMzRtVVFXWVdqSkdvQXZ0VHBXRmpwWkwwOERjQUd0RzVzdkU0Mi1WWjRqSVVYQ2JsemZaczl3N2VsNThvRkJLUng5dUJLby1PWmYxTVloVEZrSlU1V3YtUEVreXRPSVpfU09nZVM2RTVMTUZsOVpZenZ0QkJuWWF0bDY4NGpEdWx0STh4LXpmSHdwUEFwNk9CQVpxalk3S3JoSVJuVGRoc2Y1VUpCcmtvU1JGUFlaaXE4RjJLWHA2Nm1PbDMyRm5RTVprMUlDVkxiYVpnUFlWNnl5UXpZdEdhbjhOc3BFTG10RWkwMVlTZE1ySUxkUF9TVTZwXzJ1NU1oY0RPMDF0Y2hwMHp6eUVfTVp4YWJodXpMWUVIeXJvYl83cjFKdWNjZUQ4SlM5T3JBdEk1YXdsbEhGSFRRWExOWGJuTHdTQ2JrdHNiTGFoa05ya0ZXR1RDNFRzUlBfYTlHMVhFTE5DRkhaMVhvS3NsQTdMMzFGaWpyNFpEYjRQeW5hT1BrSlhCcEx6MGNLN2FmeFVxNWlySHhZNEQyVkdNT3gwUmc5UEJJeE1vdzN6TmVGZ3Y5dzRTdkJ5VUpQdjNGV3huX004M3g5dldiWFh3bU9LbHlLNVpWQi11LWxKVno5Rm81YWRfVEtwUkxqSGdNWURKNU9Ka2dhaEFQMmhOaG9lb0FicnBPNzVYT2tYZ3pONDdwVW1kdzhmZV9FN3ZSeUREZi1LNVZNS2UzOXRPSi0xRmxtemJVc0pET0lScHp5WVl0Y2Q4cGtPU3JQYnIzMWdJNFRIUjJHV2xwZWJCZ3VhYmppck9UTjI1Zy02MmRPWWVKNHVwNjI3MjdnbWNQWF9EYmJfSFdrTnVLaXBmdkJ1UmVNN2J1WE9LVzg2bllHSW5ZNzJZZ2lvYVpIaEJnY3pHbktuUUlkWTJ2U3NzQ3E2b1FSUGJqeHRQZ1gxT1h2bXNucmNBencwN01ULTNueWF1RDBfNG90RGJueF92dm1fM203ajBwcjBGUWZ6NWs1UEVNUG1sOFVhenFxX2xEU3djV2JOU21JbWF3OWt3U2NXN2xrOUViNTRLRTRhaWt2bVRxXzRuN3lkSDNQblI3bC1RMXE2X2k5VWdHUVFfSmk5UDZQbmszQzd6TTVYbDBpYllEVXVUV2FUdlRrX2ZjaXo0VUJXWkV1T0lLU2xZaHVBVzFQUTJPU3NiUWxPbDU4U3ZvTEYtS2w3TmNkRXRBODJVWjdkLVFCN2xKNWFCcnd0Vmx6TDFxX2Y1UGd6a2NtcW1pLVViM2tUQ0xlNjJYbzN1MmFvSnNTQ0c4bXhwZkJ6dVFVVkk3WXdTa2ktWUtNUnlJSGhuOG9xRDNQS0xMbHk2LVZkZy1VREE1RWhhLXA0TnZYb2lLb3ptRHdBZFFpeG1IcnJTdUEwWmh0eE14N0FSc0pqc285blZKR1BOSzhCeTMtbXQycnNOOHlMdHpyRXdkUzBtLW1sRHRKak9CWHJ1NmhWOFBPeV9vSWVzYmJtWkcxSk96Tkl5YmhPOWdNakpsNTBSQXVmcW1sSXJpOEVXQk9vdzdVT1RKQjgtTkR6VzVXdWNiS0VLOGotdWtSYXhhQklPcTJBTnI1Tl9hTEF2RFpmalp1cDl1RGNTc2FUOTNWR0dmQlhHX1BYRlhGWnNtd2NnamxsQWN3bkhCS2V6QWd3SnprRXpFaEdEOFhQMVh0dXJPZHh2YTRyd2ZtVG1yM1pHVWFmY0tTUm5malpnVERSVThVRFd4ZjRwMjB1T1h5RzBBUzlJLUF6WGN0Nm5EOFVQUlB1WDQ3UG1fN05mdWFVTkt4SEZ2RFdOdWYwcVE1OFlvZmhydjJlRDlzUFJFWV9CWjhXWm9IYy0tbVZ5MmM0aDdvTTUzQlFKbTQzRzNkaXotclRwWE0xUDExakc4em5XU3RBQkJxbW40LXdKVVl1UGpDV0VtY29qdGtRZEZmcjQzRUNqTzE1SDJaZGN6MkphZmpUcmxPdWlQOG96ZjEwa2RTYjBURTFVOXI1dHRIU0ZzOUxPVlZHVjJnQUxjUGtMU3R0clgwMXZHMWZLS1ZTRVI2TzlZM0pZYW02X0FwU2xONnlRbmlqM3NJTzdKc2xYdHhaMzY2bXI2Vnl6WmphajVVODlJSjdJUlY3eXBkOWtuZy1RRlZMT0FhRGU1eENvZG1jRjY4ZGp4LTZBVWpQWnBHOFYxVG04OXh5c3BTaU40M0lmLURacTlaMXFjSXNDOUJ4XzlxTHE2S3kwNTIydnBKWkw4NEdCZElXM0FuUUdKbFY2dkRXbThpcF9LMjg2NG8zcEg4UTdFWnpqc05KZ3p6RFU2SkU2Y2psTVdhMDR5dkVMa2dnUm9feVM1MWUzam1BNUFFdWpXLUJ6TXlzTjVkeUpiZC1HcnN4VFltck1wMWI0dFNhMXV1ZHBSdWl2cUFLdV9qbTBvYTA4UHZqRjJyNjRXYXZQZHVxcUs2VGUtMDc1RkFQNHFEZE5ocmpJSHpneWEtUWowY2NCRWtZbUo3di1mUWxneUxzaF80bHJZQmVyWnNCMDM1Z2Z2b19CakQ0Q1VWVWFTRkRya2U2OE41N1prblU0UkZXN1NNQXViaE93WjlCd1pmT0tuajV3bDhfemRFTDVLVDBQUm5IejRjQk01OTZGNXhleDFORzNqME80Y3JDbzVod0xMMUVwMnVweVlULXpfTkdkT1MwMG50bGt0dnNKMGFZSURuQy1SSDRYcUdBUXlpY3hJVzNnTXh3LUNvYlIyUGdPa1dLTVBJN2xFelNLN0VKcjZkZENmblhHRF9scE9HSXgtUTROdjFOU3E4VGw1dkRtdmdOXzZCOEhHbmV5bXdpQUlJZ3NpWWhfUmR0NnBrdWJLVF92aFkwMTI1WWZkck9NaW9keTFLbEpNR3NJNGxqX1dJYVRHQjdoY1dtY0stMy1NNWlZVnJUSktaR2RZbUFobXI3bkZVT28zWFFCZkVVZFpKb2Itc1R6eDdNYWttd2JEcHdQdHB5OXFQem03akI0ZC1yYmlncDI3azRTYlVFOXNFWTZVeVVJVk80Y2l5R3ltZThpOEdLY2dSWXJ3YTZmVlItTnNvcm16dmd5eGZVcDFGWDZuR0xNbE5VMDNEblBVU0JLT1RWTzVnM2JuNG1DNWI3anBVQnUwQTk5R2ZkTEJGaXg4dURwR2NsQm51TFhncjcyRFdCRmFKeldkZXNZbTlaLWk0WDBaUTh4cVZwdGpXTnI5Sm5sVDlLeDVKZXdRSHZkeXRRdHRaTXc3TS01Unc5UHJreklWd1JPZE5PVkxwRWl5RmVqM3YyZmJGRFVoRmg2ME00NWRMQ0hqU0k5eC15dDZ6LUVtQlBpdGtkcWpUT3hLam1qVV9WNzIta09tVndhZkY3MzdTcVRKa0lpWlVic002bEJoQ3Rxd2cwNi1DelR4U1pMYVgzOF95dE51aUY1S0JfcXVwcU54SGJ4TTVZN0l5SnJUcGR4MG9qNFZzWDlxWkFjTGxCZnRNaTFUSTVLMkJRSERSNW5FY2UwT2J1SWpjdlNrcjNYMmZwUWQ1cHlLdnBXcXpNbnNuQ3NsVnYyWUY5ZDZHVWFKeHlfQ2MzRVJqOXZIMnRJb2hBckh6VzJlN1lNUTRyQnducnowOXc0aWNnNG11TDdVSnVsVnJLcjdJS3FDYjJyWFViTDBIRUVrTUd3T0pISEVnVWxlYzRGajRNQl9ZNnh4SFJuekVKMVVBRXVTeDJaZG9Bd1JsSjMwRHZYTWMxcFo0NWktYXE5eV9oOFJxaUZSUlQwSktjYzFpeFA1Y1JWRmVpbFhKWXN0cDV6X1pKZ1FrSTdCQlBaR0M2bkZ5RC11LWh4MzhQN0IzQjdUUzdoWVlXdm9ETFpGSkI0a1ZGRUhvNlRKdWNDVlpJaEFMdHlfN3dreFFxdU1mMFNOREQtV0FPWUJkY3JpZzZmYnNKSVhvc2lMSWNDM3hOOGw2X1dzNk1UMXdXODZkcWRUWkJnN1Z6YUlnREJ2RDRNakRLdjk2M0k2c3ZmeG5FWWNEQ3dDalo5M2JwUGRJd0htZEY1ZE0xTGZVLTExMktBN3dCQTJWYjU2cFdBMWk2QXo3Z1N6RXhQRkZvVkNBdFlJUnBFcHh5SVBaQUVHV05zeDNpNEk2Z2lyZi1hUmFWejFXUURCemd3ZDd3TlpqV2xrRVlyRFBBZTFPVnl0bU9HQWlGZmZiQWVPaVF0V1lzMHYzVGFTOGcydk9peXRvakE4ZzM2dDQwQTB6T3pKYnlzUUM0Z0hjODJuVDdQUDJBTFdPU0RLTmxSX2M0eHFWTkxjdlhxZHFBNmpVRlBUY1FONzk4U1FRbGprcmd1bzhEcGxTZTBnODl1VHUwV0ttcFltSFA0WEtmeXRGRWlBR1FDSmIwZUl6NVZsTlAyVnFiRGRMcW1JSzhuNVlNSUtDY2ItY0FUdGFoRXU4QkxQcVE2VC1aa2t4MF93M2RmZjhVX3ZCZUFwS090SERMWUVqcTBnVktxUHhaUWczY3RJS2oxdXJPeTIybnJ5aTlnZWZVc2QzZUYyMnBCQkx2YWVWSk96QUZndk5YdnRiTXFsUW1CXzQxNG1tVGVtaGFlNktjOW9KRF9sLUxKWDZPU1FISlo4MHQ4Ql9VZkdacFZES1NubmFmMmY4UHYyMy1EUmlGNlNyQ0ZKN0d4TEhUNXJSNzU2MW1YUlV5Qy1leWtocVI1ZFZSZDZhOVQwSGY0TlZSbjJiaVdxeWhPR2VUa0hKazE0YllOUFdYTm5XSHl1VTdyNEZoOVVsb2lES2xIQjQ0VjlmYS1YMzE0c2VHZHRqUFNLdWhFRHBMeV90VU95aWU3aThJaGNIaE1XOHlFNi1Oa0lZSnF4cU5EbjAwdUkzSEhEUWtGYzFQV0RYdlVIcnBJUFRJcFFBQ3c1dkNWT2JpUmFoQVBJM2tFRFh4ZkY1S2VLMXRuS1hsZWRxQmRIc3lCUkZuNnp6T1p1UHdOWktKNHlYVDhoS2wyamQtNTlqdWpibDBmNF9WdVJFdmVQOW9FWWtTOHU3UmlBVEVHa1lPVkg3MkZXTzBzLVNJWGVRRkQzX3VvWjdrM0xjSm9GVjlXMDZrQUVWY1dURVZGRUlwamtNMy1FYnJSUVdMcy1heWVYQkNFSUxsQ2t0di1LblA2N0pyZFV0bTI2cnFlVXZ5MzdTMTBCTE53YjRiNHBvREhMS2FveGFuZy1iRjZUb29PR01UU01MWXUzaUlLc0R3Wm9kZG1WR0xyQ3FxNWJJR1BFZTNoMnc1RjFNZ1hyVEU2TmFubXpKckh5eHVPc0VyaGctaEpGeGVCcWE4WjZZWFduTXIxNDhLanNoYVAyeVpFSWV6OG81UEc3cWRWaHFRenhYT1c3eEQwSTUycjBvbkhxM1hzcV9SOGhFby1UYVdPbmY1NW1YYTNWMk81LV9XanZxZThWdzdwTUF5dG95dmh2NTVTVk9xcVdkNXNIdGhITzd0OWlMdDNFYVMxX0ZnaU8zVmVENmlvUVBNNjZsWmhaYkpZZHo4b1RFeU9SR09KbkpjSVpqVm1YSlJIbXF2eXZsUlpjdkVMM19KR1hEOEZGNHlBVE0zaGhlNDN6VEJVdk9oYlRjckhNQTRLZjhWczR4cU02QWFsczVBZzRUbVZSSnVLLUVRWFZCaFE0TEpBbEgxVXZzN3lKYTdLM2hsQlZEMWo5WXRWS2htMVhPNFJySTNrZmVxYmxoMTRHQ1NEdnI2OExyTk53SUZsY1JEY1pKalBOQi1GWGhUd25PbW50ZVItOFY0UTJVa19tczdTTm9ZUElWRnJqY1R6X1ZkQ3dYRTFmMjNocHpqQ2tnWGlsSUlNNEpNMkZmcDNTZTY2c1JHc1RXXzBBbF81R3Fqd3ZfZFBYWDA0RHJNMFI5dGljTHhLczBnM3hkSXF1M0huamxBRFU3S0c1Yl9NUmxUdWJCQ3pEamtJQWRRUEFwcUhaWktnODYyLWloMDE4bERfbFViWEwyMGhFNFBNbTE0eEg3R0dPQ3FWa1o3RVU4ekd5Yl9xWHV4RF9LZHFLSVR5eUc2WC00MHhOeTJ1cWpDMmlvVVpiM25Tam5kZWFiX19kbC1jMDBLWkU4RnhTRnRMN0RreWxpTWM2Yy1VQXBhUlZKQy1aa2NBaXlPZ2NBOVZQa0x5a2xlcGRNYXY1Y1J2a3FvTHhmS3RMU2FhS0taWEdveFd5OWp2am5KZHZfMmZDTXlUeFdOUWl6MzI5NG9mNkNNY09sTmc5VW5iaUlHb1JVX20tMHQzamNRWHBrZ0pDWlMwcmQyZ3RGVExYdUVlYU9ZTnJjZ2dPWkVQMkstc19kNUlCU2JqNXE1QS1HYU9hbzFuRmdFOEFlMDdEVXVzeTBYeVEzd0cxb3JIOXUtSUxpSHpyd01Ickx5ZWkwYmpYSm9HcVBuSWd5d29nWjdZRmF6a1ZSTGE4OTBZQjlXR2p2SEdqZ19yYmVabWRDWkFoalNiTlRveFN3bGkxMnh0bl93WkNWVkhlNzUtSGNkTHZHaGgyekwwVjlROG84NFI1NUFKVV9fNjI2REMxT2w0cXVLcEt1Z1EwMHowZElPbzMwcG5IT3hqa2xlcGRMM0dyN3dHNXZsSUJKbXVWMlBReC1Hc0JmX3lYbUhxOXBZZ2RJeXl3ZjNqSjlDcmROYXM1RGNseUExUS1Sa3MzdWtyU3dublN1ZE5OeTNCRlJ5ZkgtbHhWQmpYSHQxUUlQM2JLbjRvNmRPSHNLclc5XzRPVnBNREQ0UjNMRmpYNFM3MDJ5ZmdXSkk5Wld6TDFadk40X2t0Zy1iVHNYOC1zdzJfa2Y3dXVldmJmMkYzLThmM3lvNDNUZ2dQaDU2TEZjbFNidGdaNE05MDRTLWF5SGQ2NkhVbmU5T1Axc1NldGdKWXdZZVN6TTgzY2FUUXVqRVA4bFhEQWxKZGJ0MTRhZ2FValJkNlBNLVVIUGdGUmNtRTd5Y0k4YzNSdWxrVkU2Wk5qeUU4VkNnaFRoN2JMNTJNYXhUcVMzQWJKNUpHak9ESkk4ZTczV1BFZHZPZ1FPNnZvak0xNDFnSjFtaW9rTFNIbXNwVWRhSFdIdkNkc2VHeTZyZmJfYktmeGJGS3FNTEN6T3VKbjhxd3hlNUxJQms2djJCUmNzM1I4ZnI1VjBSQXB5U3J3bmRuWExFRHdVRU90YzdwSTBqajVNeGFJaWxKU1FMb00ydXpiWXZaVE1INklXSndEdU1hNW04MlFCRnV3TWFZRDd6WmNwM0RGb2dFc0N5YnFjZFd5SFBhV3NxQk5GSDRuYXdwRnMwQ2xZMWMwbGZQR1RnTWZJeTRxRnV5U012cHNkYWZORUdBdVFpYU5zRzROSnNJV2NYbFNFQ1FsLVhRaHF2YkpUWE03NldPVTVld0RneGRGeG5WREVhdFRlQWZZaUVEN1ZBelFNUXNFenU4VUx4VmI3RWJzX3RsUW5hU2hVX3E3RjNUVEV3VUpPdDNCeFdPcWFCbmhNdUdOdU5CNXJabFd3YVhrUTFNdGxwOEFmWTBXSF9kX2F3VXdQbUpCQXFEX0xKRncybWVBS25OZl85NlZiUW5iU2J1ME5uejlvTnVXVmNMcWZIeDIzX1JfVVE5enZibTlkaGlSaUxSMnVDUzN2d21XS1UzVG9vbks2c1NpeWNmYnh2QjE1TnFnN2l4UUV6M2U2emVkX3pQYy1GdF91ckRrR1dOTFJ1d2Zyb001REQ5XzQ0UFVvLU1SQ2NiVGp1emxqQmVjOXRUc1NRdnZWVnp3WHdNY004Zl8yWEJxcU5OVl91b3V6dVRPWkFfbkNVTDV0T1dFSXZIZmlDRWxJV3lrS0U1TUFUUVlUY3FRd0VwNUlBeDFDOXdudnZtVk5NcmFFNHpDSDJuZllsUGNIYWpMUGlXcHpUdUR4anJGeFhIbVBUc1JTM0Q1YU1yTmM5emwyZkR6ckJsbzV0Y1pPT0ladlR4X0ExeFA3RlFnNjMtbUZzTGlRZG16NzM1bWVjUEFmdkROMnV4dWp3YXFITGx5NGlLelljVVRjbHFhYV92X25VM09ESUxkcWt1S1pCZFZzZGwwX19YeDdkSlFHNG5nN3kxU0d1V2Z1NEdRRnV3azE5b1hJM0ptU0c2WVZHSW5wSUlNYjcwSy1BREliMlZBWjlVaUloMW1HNmpUZWRHWHJtMzF5b3Jnak1PUlRERU1rYnZCeTFaazVrR0E0V05aSmRKRnlSQUtXT3VNbVZOVXRWcTFWRHpkTkpNdGhaWUZHQUU5MEtBZVlaZDdmaFRSZlY3ZlFYdzhWOENmM3IxdmdMTXJyZ2JSOGwzeUsybFBLMnhMcFl0cVpRanFaREpvSjlwUHBlcHEwRF9Dc1JEcVlDVi0zNE5GbldXWklZQmtmZTRPSGFFZTRlXzNQOGxNVTFKUWlJY1dXWmJ1ZUJXSnlpNDQ1b24wRm0zVzdlYTRnUUJCN2c1MzU4MUJBZW9ZQVRUYnFFV0J0LWU4OS1YMDd1Nk1vSDVKUU80OV9kSW0wNU11VVlrV3ZQODFHNDMySDFPYmgxRUJBNG1WdHYtM2ZqeGVDRldiZHVzTWxxa3RYbXVodjBEVWdmWGh4OEoxS2JaMUdjN3cyT1E4S29KZXNGM2QyTzIycjFkdHRIamdmbHBUZlVXOGFaN2hPZ2otSy0wRHg5dXV3ZmNVVWMwUnd6bkNMbVdqd0lnZ2NfQWZJbVRpd1ljZWgzQzlpVnpLdkcyV3BfZHpCMjgzM3YycGI3SlRKbmFYT3VSSlhiM1JQS0pONGcyVXV1NnNYc1JBd2FlTnVtVVVpM1B5b0pCY3dhZFRsbVVrQ2JNcjJMQzBzYmZkbjNMOHk0bTd1UGg3VTJ1RE5EaGk1LTZaWUNYZE5SRVNzajVrR0QxNzJoUHRSVEV6RzhUeEN6Nlp4dE5MQ004a3pHVWtjS2FLeVctZFdaaFVWRENsZVdnQ3F0NWdvNUI1OEVaV2RJbi1SRTRxREZ5RlBDNDg3bk9nMUVyVmZBN0NHWldha1F2QXN5ZUhKb3dkc0RrdzZIV0x0Y2ZwQTJENHEyZ1Z2aDdraHVNMmwxSE5DdWxNOWJSXzZZYlhuTGlCMzIzN3Zjc1d2bHpBVmJCd0J3WHRQT3RGWEEwc0V3c3Qtb2N5V3Z4WFNsT19kdlhRNUdHa2pLcjhFX1hzM0dvZmlqaHpsZF91OWFROGNTek1XbE5xRGNPWncxdncxNUtaeFNXR1QzcDJ4S1VHLWtSZW1Jc1h6VW91TFdma2RCbk41Vk1tUTdJTXA1RkFfcmdHWnFwVHByaHJMSlVaeTNZN3I4bG1McW15Z055a2FMNWkyVEpIT3RWVHB2eHVzck1LMnUtSzdpbUJVMHlkQndFaHNOS1RWMXlGZng4Q2JZazJTeUo2QVlWeWZLM1FhVEdqb2FFMGxocGNPRUIycmpfUDhFWHAydlJ3TWZsYjBtc2daYTFCOE93d1BXRUJMdlROVjVzUEYycFpUaFlnM2xWVzFjSlZlTlBLRTJfYU1zS0p3UGVIY19YTTNrdDBXVkpMbTBnZzE2ek5EMjlsaUlfNTBjOW1VN2NpVG1hNEd5ZzJtSkUzVkg3VWxUanVkRldmNTZpSEZHNlJpU0FqVUFtMmtBTkNGMjFyb3ljVUhFTGo1aVlQZF90S09vcmJvRDlWRGcweDRDc3BQMmRKZWVzMVR6aVMwNU5qU096cnd4dG5qMTBBZ3kyd3B5XzUtbVl6dVJvYTUtNXVPSFhDRkFNSW5QQ2doakFudHVYUGw5REJRb1ZSMWYwUS1NdnJWQU1Qc3pfaXMxc2xZaTlFT3NDUWp1R2hsNGlxYmVNWWRhbFVZZllGYnd5dktaTGNlZndjaVdpY3EycWhpM2FxaWQ5WkVwVGRyR0FvRjItdmd5cWVsSjlRb2NfSG8xRldZdjFrVUR3RTBmQ2ZlV1FteHBFMTQyYmlZNVNnV01CaE9tVTBKWkt1c0hCV3B1ZWJ1TDVlc2RHVEJwRWtpcEpHWmtQSlB0YzBvTlJSVU90TVdZTTYxbXZaXzRTTFpqOW9kZ2U1akMwMHBzSHVYTUExTG5USDZ0R3FnSDlTd1Izd08zOTNTQnRMRU5oNy10UEVEVWc0dHpJeXAxTHQ4R2dWS09DTl8tc2RCbnlpSjJaNmYwSThEMXVPQnJYN0JGb3E2aHlkOWtMWnZiX2E1VHFUdzNKZDJCdHRzOHBWS3hhaXFtTW1WUmZPbU4xYmRJSHhlVUNCQzdXdE1LZUc0M2FNLXpYZDBfUmI4MkxJTVVVRDJadUxXb0MwUGZzUmpiYWNpOVhBOFlBVTE1WllTOVh1YV82NUZYT2xxcl9sT1RuUjd5Y0JZY2J5T2tIeGpIWVFmRGkyQmZRV0NkMElXaF9WcUxNZWozT3ZEUW5FZDZvNEU1N21FQ1lQUEJUSkFIZTNHTjU2UEl6T2xLNTRtVV9USUNpX0JKTkRXemJvdl8wSnVEWExZMmUxZnhCOXNURmc4c1hINUozYUhYY2dpYUdSaHlnMjRKZElJV3dkcXFRbmlLZWNfS1IxVTJhbEVqX2xPQTNNb3FadHk5Zzhnc2RCMjRmQlRLOWJZUnc5eW9OVWhrSl9fM2NxNlozVVFvc3VrWklreDJwVlRoTkU3THdEQ2gxbnVRYlpvUlZrN1NKc1pjWkZ1TTd1SUJRWUNVMGRIQzFRS2lublQxc3R5WDduM3RRLXZPWGRsSENaOEtmSERpR2tsemdKUkhVSFUwdU9JQUNuNGtUbkRzN1ZrRGtEZ2YxalBhYXVYLUR4X19Cdm5oWXIxRFp5eS01N2x3SG85c21rZDFNcGFUVGRLR0cxOVktUDh3MmcyNXJCcVlWQjhBZXRlbXQ1bEtZdE8yckhJNmZSSDZrLVhSM2I3WkVlSFA5MV9UTkc4QVZtV1djMUhaMmdYN0gySzgyUzRoUk1JcEItdkxUaFI2QmV4bTdDeXJHSFZqNHN3M0dtZWd0cG1obmJlNEZQRVo1UTZnNGhScUpmYTJvOUswZDI1aktwaURBTFllRVY3Y1VDUjhBVjRYNU5WR3hWdWppOVdYN0gwaU1mUjZHMmpIVkFZSmloSkxOSC1JSENWcVhxdng0ZWNSRmVxNGRqUjNBWjRITm5kNUJBaGlTSHRObkhlM3EzeG93cFduQVh4M0hHeFZKcUozZ0pVdDVtdGcyb29pYnJiTTVFVU1HT290QlZGT0k5eGd4RmZYT3dhYXNPNWxIbTVoQnFWZVczOHlXS1FqYU50VG16TjlITjFrRWFfS0JacHU0d3RGeGswNkdWTmFEUS1QbmZBV0FJalByQ1FjSjJMQ25kS2FBSHJyYTQ3WTI0dWJYd1hPNUZsSVh6NElaZzI3Z3NzTXpVR3kwdUtGc29LdnJrZkFLdjVWblR1WlJ6aklrZzNoZExLR2FMb3RPVmFwZkp5VnNidGh6T0JrSERUMDllcVlOYkFwbWdYWGdoVTZSb05nV3IwOURSMmZQV1FyaUVzbm9Gc21yZWc1MUUtc2JUWjJCb3FqVW1zRnlndjJZdVhpdTVXdFFUNGtKQ1NxczZZVEw0cGhoQy1sTEhubWs3Q0ZKVnNMUHpUM2ZUcVF5M2V6Sno5dUxyUWJKRXVVMGgyWHQtNGwzaENtNU1hQlVVUGU1SU0tWHZhVk5QM3FQUGN6NjEzZkt1WmwzV3NmZVVtYzl4OWhrbElxRlI4RE1aOFdpYnhJSG5CXy1vTnpvcGV3SXZkOU1RV18wQ0hJRlNWWV9lMDNfNlN4SDBiLU5DX1Y3MXZHNXpNTXpqUkc2WXB1d3hMVUQzQnV6cHNWSVR5ZTd4M1RSWFBxNE42aXF4cFlTeWpyMUUwVnk2UXhzWGc1Q0NsZEozN0p0R082b3pTY1gtdDNKOFJBbVk5Zk41WTRURUZCZkxFT3VtdkQ0WXdjd0xuVktKMnVYN3A5MWZjTTUzVVRhTVc4UTZSZ2JFaTlnZjg5SXl1OFc0WTBIQ0REbDE2dVhCSXdZR3IxX1lyRy1zOUU1dU9FbjVpVm9oY1JsX0RrZlNNenBsSUhPWkJzLVM2X0tud2lZMXZYeThhTWlqb2tFaTVOZnBMbUdZdklwdk1MUFViUzBrQXhGTWo3dktnRXR0S09pU2wxVTJleFF5d0tsYnJtUGxFamZ3YnFjRVZkbmZvTFhIYXpfNlhYTE1Qb1FobWhKUWtvVFN6UDFIb2J4UWY4Uk53VmpaeGF0enpxMGtpMjVmUXlTNTlET0wtVGtiWlFqOTByUnpCQ0hVaTZlNWFmNUN2b3p1T2NIdEJmRnJHVkw4R0JQMk1JWi1UTGsxZXcteFpBbE10UVRITEVuUE1US1Q3X0VwY2dJalNDQTVsZHFXQndZVWxJaXZWd3NzNXRlWEswQkNvWjY3OWxyTVdTOEIwUmRwbjM1djlPU1JOejh3TUFTNER4UVV3OXhOTzBrSjdCWHdUM1dOem90dVFFVDFIeWpEcDV0UHY2MVZuVlVDc3pRME1TaTcwakU2OGtnVm9TM0sxaHFxNUhyZlJoYTVEM2MzZDFBWnJzaUVsMXpMNU5OamktNnBpZENKVmxZeFNBa0gyc2VlZ3lGeUVVV2p3ejZRZzBzeWYtUGtCWVFaRGtKOGJsUWFyUjRMdVJGVmViUTZ0bnQtVThmS0M1d3kydzFXMUhiWUZOWHRzUnVkcm03WWVtUDI2eVVNRzNPUEktLS1zV3VEUW1VblIzemNaVGZkcVBkc3ZyRmtES1JESWZfN3hsbDBLVGtIbHEyRjJOTTBiYjlDb281SG5RdERpX1pJZmIxa3pZd1BHTDZMV1hsazdhcENaQ3daWVBLNWNmbHkyWU84QzRuX2w4eDJkLXdkclBMWGNMRi1xZnRtX2RzZmNrNjBrNUtGenozZEJKV0otY2l1ZWM0S010Sm1JMklxUm50MVpJRnNTOGhEcTF3b0ItLXVTX3ZfZ3lMMVRxRklNWE80b1dUZktOV0l6d1NOUVM3UGdCYXdIMHVIemZDeFJ1bmh5enRMTEdMZEtBamZxc3d6R2dDMnV0THcyOVJoZWtLWVNyaElGWFVoNFFjZF9GOUxfNXZyc3pSaXpKekRUMGVkWlhSVkZNdTFsV29zQUs2YV8wUGVZbFI5cC1XMS03eWo3dGJveGZGdzMyd3o2VlNWamJrMHlIUnpRYmtwNkp6QlIwcm1QU3VlU1QtcHNCSWVwSGI3S0dHQjA0ZmJvLXk2N3VSRkxKTHZlcTJua1o3dDFIRGozQ2taVGduUmJ0S0xYRVNkb3RFY0toQ1ZXaXNrTDZabURLVWJJTkF1MXpLMlJhZkJhNzVDNlVPX2llVnAweTBJX1JnT3hEd1Z4QzVReS0zdVZkc2trcFo5VGduUGhXQWlURF9tQlBmeWhQN2NCbFZvUUhoY1lKYWVjQ21jQmtVcTd3cmx1emdEWEduUkFveUp6MXlwZWNjWC1IUnlqOEFFYXhxSkVUeGpWTFpNODBNS0xtRjNXZWt1dVMxSDIxLTFYUFcyaDBfSkE1OTg1cm9uWnBCSUtoaXptUU44YVNndjBIbFlmVi03cTl1Vi0wLXFrNXVQWnljQkRDYnpUZnlGaEdzWGdKU0tPSm5PYkU0QWktMW14NHpJY3FSRmNiWkt1cF80clc5Z2lFX1pfYjBpTWlMTGlBUHJ5dGo5T241ckx1MnJhY2UxUHFvb2VrZzFuWWxCRllTdzA0eHBWSjNGNURCOTBDMHh0SzAyMEtEakpRU1VCZW52dUpsZ3V4WVMwWnQ1N3dKcnVXdmFpYUlIalFBTmRjMU1lSVJEZjF1Z2EwZ1NwVjZPbEltMlY2aTVDMllfcmY1eHJITmVlWjdwU3A1X3c1UTk5YlU4RkdEMHZNbXE5azc1eTdsR3NTMVlwc2stY2RZd0pSek5oa3RPeW5GOFZBNlcxSjkzVmZsa2Q0NTFnMGRJM3dGd05kY0FqWG8xdUMzWF9zdU1JOUl2ZU9jcWFqWlVNcEFCMTZzbU9waHVpQXlBcjNTbTltMTJMMVBvbzVVVDE4V1lEbFl6eXhNYkRmWmRUX0I2R2lNUnpFYVlHSENyQjJoaUhsYXlDdlpCNW9lbkVTUG1rS1c0dFNmOXhRc0R4U2U1ZnR0UGh4enJ4UWxieEM1V2dINlBibzdYdFcxdUpMUEVzVnlwdGRjS2lPSHczQ0d4dXA1NnVNdjhlRW50SGRHdVFERmVfalk5TUJYZXNsdnMtQTdBVzg0VUFvWE0xd0RYUFo0SVZjdmozSWRpbTh1WUVDU0dXMHlPcUo2MEVBYk9nM2ZERW1wbEpNVTBuc2kzREZmbWlqNkVRZ25hdk4yVUN0Z1lKVUUtUVoxU3lHTEY3OVlIRXhFVFRUZ0RheHNIYnZCX2NibWFwNC0zaGhPS041OXlQUmN1ZldZTGtrMUhpODg2c3V6VWJZa2MxTkZRWlBGekdYV28yUUFvUXlCQm5DS01YT2QyZzBPS2RaSFBYRUtVR05FM3A2blo1WVFCMUx4dXJhTVJCSUNqV2lHN1E2cC1XdXRpNHFvNnRvUjgyQlFFZUtqSC1KV2t4a0NoZ2tFaXpUSjFGcjlHRFZ0c3duOUdFcTBKZjJ0aFhKWXZUTkdTY2tTVFEwUzFIa0NlcVNLOXAyN0p3NHl4RTlocmFVdHYzaXl4MEhFZmNnTlNLVTk0WmpFa0R5UFozUXNLUUlCa0xweHJReGRsZ1hSV2ptMEpJSWQ3WmRiT3I0YUZPN2ozZlM2a3EwQk5SVzFBVnhRWXpkLThFWkV3b2w0MFNyNmFfaG5tUUo4WWZvYlFoTDBhZFBfWUNaT3dBc0g3alc4U0lKbGV1b0hLX2hPc2Fha1hkTnJPaFNoQ2VVYjNpNUQxRmxkak12SWFEajJFN1dfUDJodmVna25PNkFhOFJlZ1JRN1dvQkVpdGU4OEszeVdPOWJkdmZ1NjFJaTBIRU1RUm5LQVBILU83RVpMVWdzTmd1ak5YRW1jRmdmRmhmU1Zudko4Vjd1UnNmbE9NcEZkTmZzNU1KUDdEcEF6R3Q0aGRQaG14ZlBseDdqTXh4cnpOQ19GS0tvRDBwcWdJdWtTVnlMZzdrbXkwOE9paTk1QUNMREZsTnlQZjNtaUVUMHRfaHBmWFZrckhCZDB1Qk5Banltb2J6WmF5bW05SFhLTTFVSUFJN21WQWdUZnVUYmQ3eEY5TjlDNUJTZXVyVDJtYnNaY0JtWFNfa3hZTWtSWjFkSkdjN3FwVFBSZUxOVm10UURBVzZWdTZUWlpHNDREMHdRNllKalItNlFiVnNSR2NReGtxR09KQ2MyYm44SEdvMnZCSG50TTdEZVM0RXdLUXh0bVduVXdITTNVT0ZHaWVOVmRvZDhzcllzaE9sM2tvZlN1YUxIUkZiRGdVQlZoaHBFV3dUejF1VlhOd2VVN003N0R1dGJZYTFiRXRJY0hneXJjQUJTVW41dlh4cEhhbVY1RTJHczhEeDhYTmlBaWdYREJfbmhFZEdWWkVqSmd1TDg5VXltR0c0X3Z0cVMtN3hGYmtJaFpPMXBEVHZTMm1KM04zNUduNGI2S1FWcUEyWEY5amJwRFF0VFY0bEgwZWhiLUFyeGtGMkJjbnA0RUdNZWs0eDRXN1RfNEdtNzlFb3V0TjJzSW9iSFhXYi14bURJbUVId3ZHZkFsYkc5ZFFLZ1pDT3Rrb3EzUHJvY0hEMVFUTElpNEpQYU0zc1VFNngwcy00NXR5cEFHQ3N2MDhralVkUW5GbUVTYUhTYzJjSE5CUEFFX2ZzMGU2bm1fakRLektON095RkV5Ymd1bHZ5RTRsb2ZxWkxfcnNxWFlPN3lvT2oxX2FLVHhGa2ptallGNWhiS2FjcDhCNWstRUZUWVZYMzMzWG9OelJreDRnOFNWZW0xVUNibE1QOTJxb3BLUklPaWNJQWpmN2dkS2hhQmZTaE04UUt6bDJBVjBVU3lwMkdrUFRja0NrWEtXUXhhbl9RLWhtZ2l0V2w5ZVpOR3BpUjVSUGxqR3VRaVRYNlJENGZKcUdEQWNMSnEwYjZYZGhva24zMHd0Tmktc2J0RUN6NC1HV1ZOZVVBYThETl9haFNaMXAwT1MwMkRkbGVKOG1ZcW5vYThEbF90ZGZEV0xiNDg4WVplU3JwUmV2WlBJWm5OQ1lQUngxTDdxMVVGcWhfajVrQ1N3Q0VWTEpDUFdzaXlKSzluXzU5c3lUaW9DemxyM2tuTVZ2bDBZSnFYdXF2eW95TUZrcDdGdVdBbWtfYUR4eURaYm1mRGNLNVFnM0c2YlVwVXhPQVJyamgteWtreVpfcmxsa1hLUjVrTnJJMFFKYkw5UHBiWFNtMzZVSTFNajB4alVael9IYmx1Z3J3c2lzRUtGcGw0T0k2bUY1cUNLZVAwWmFmaW1nblhxS0d0RW9wNU9kTHNGRXNoa3BSSWh4Wk02eTVta0RZM0FrX0c5N0FuLUxzaVVWdG5IN2NYNUJPbHZIMVktREFGdzhkQTBpOFhPbkJoWnZ4aFZqdXctbWtHWjBITURVS0RMWk5uUVR1RXNnVEpDT1RQOVc5R0xtaGNfMGRSS1UwQTQ0RFVRU0l4SmxEYzNYWmdYOV9XdWxMY08tdjJib3pvLUhLcTB3blN0dmlPSU9YQ21BRW9PWDFodWROaUJmdktBc2NYTnE1bGc1YmtaN3dDR0xSQWoxUjRSelhDMnVsaUkyZ3lpMTFHZU1VanpoU0h5Ylk4NG5vWGpDODNJcGFTX1FTYl9WUFEyeWhMWExVdnp4SHJ4YldpajQ1a1VEMWJEZUkxOHhhQmd4UzJ6VlRVMF9FcW1WaU9wbjRnTWczd2oxMW5tV0JYOHVHUHlkUENhV2dtbFJTVXNxVXVGQ0dYZ3RNUFN2R09XRkl0LV82YzFWdVlzMGJDNzl3QnhwYy1MdENkRXIweVM4NWZKQTE3aktoclFINUJLQXNneUhKbzFVU21FZGMtTDRweWpkMS1obnZUYzZxRHBXQmhSREhieV9DeXBfc28ycERfYk12eFZ1YnBDX3FIT0dlaVRLSkpTcHdmMC1OdFRLSnAyUzloUXNQYnhIeUFlQy11ZThIMXA0WlcwWVVyWGpJRDVoS2pKRzQ4b1E2THBsaEJTWlNCa0xpczRqNm5nV2ozN0dLZEFNN01jNlpKVFZRdEw4RXZjWWNTSUlEN0liMHAzXzBIQzRKX21NTEtjRlZWWVp4TjlvSkVPZWJLUFVzbndwelVUX05KbjQ4VVZrMGwzeGtDaFlEVDVmMENoNl9MSmhSSzY3ckI0dXk2WTY3N2ZKN3RjRGFfWWsxZlotcmVpSlBRNHhMTnNOZ05hU0FoQ2tqZE5Nb241bmlPUFNhQUtVcWdDbkhsZzN5bDhPOXFhcVk1aXk0TzFlS1hHcmY1THkxV0lNX1luNmcyeFg4aF9TZ3hlcTdRN2ZOYlhIT0Ztd1Ywdk04aXhhRmJZYnF0N2hHT1pjWnVQaFVOaVdDSF8xb0MyUHlIUE1IcEtWcWdaOUNYYkdQNmFhY3J0UmpRMkxZdUZNSnNWRVhlN1gxNm1xMDZpd0dLUWxsUlZxXzZoZGtqUUs2SVpDVTNzMXV3cFlGeHdaTW1CQVVCaG1lb2kzUVItQlhrYnc0RU9nYXllQTJkSUV6a2g3cXFOYmNXNlNBdnp2eXd4cUlQT1FTSWYtMVlSRnZfSDBpYXN2MmQ0R0kxNHpDWXUtXzMwT0hqYzYyX0VMLWg4V29pa2Z3cTNXZWZNMTduN2hGSmZzMFNWNTVHY2U3UTdDQkxxNEVkSTlXc0t1MDlxeWhNWHJwUlZPWTBrZzdsNjYxa281c0VsN1RxYzgxNWl6OU1wS3RZU1RlV1lsd3pnb011clJDNktNYmZEV2poUmlldGo0Z0RkSW9GaUQ0dHJGNjZvU2k0WTE2WkNxYkVPMWVKNGNseWZZWk8zbzBwSk1NQ0gybUlwTVZPMkRueGJSSURIOUxiSEU2VE1qQjYtZkw1a3d3WUVoSHI3UnNaMnFFYUdWMDdXcFkwMUdoTWpEZXE5dGI3Qm0xXzFvcWtsdVcwMjZRUng5Vzcxa0RwU0xPNkxia1RWS2xuMlB4VmdZa3F5V0pHNlZUbU81T21fRWxlblhQMmx0bV9VVXN4MXgwdkxWczR1ejlHV1VYTGZKbVlzZnViQXBwVF85anZyRDlkV2xWc3NKdUMwRlVVNWxOUVUyOEJWSXpycV9ublJVRUJjc3BLR2d1RmN0Mjk0V2xFVjZzNFdTSU5vNG8zaVM1RWtfX1FsZEp3c3JKT3ZQS2M0S05OM1F2cFJDa3hPQ2VwZGpZZEMtbVdfMGxNdWVoVzVmcGUzRnhFMGhjeHFrZmkyUXA1Mk5VYkVZVWpPV2JRZ3UySVVmX3ZBMWpIRW9UTzRQNS1vYTBrRHZaUmxPQldRbTMyS0g0RkhwYWpiNndLTWVIOU1VZ2ZlS0dBNWVJRDRxaWwxWURONkRMa1BKT3FkeU91UGdqMTQ2WWJkZEtQdmFDOF9YS2w5Nm5BV1lfMVo3ZTNKYW9NNzhZR2pMaEV3alFpdHlSOElLRTV1ZmFDZHdYMWNPMG5FQlRnYTZPNzFrSEJkMEpGLTQ5X2FPX2RoWWo0WmVLWVNxOVhkQ1NHNGQzSFNxVGVsT2ozX0tzUGp5dk5ScmkzY0loVmJVWHkwcVoyN1NqdlRRcHFEaW5yMDBra1Q2OC13SXMxcXJhazQtcjZoQUFUeTM4S2FrUFJWYy1WMUQxUVppR3hFYUdrbUg5bF9YT2hFOEtHREIzZFgxNVNOREptRi1PR1dKSlJZNWhqZmpFWVNEVUhmb1NHTElNei01Wk5hVUs5cm42cFBMcWZfcTc1dkZ1TWRISzZhcTl3eWUtQTdLTjZyS0xqMlNfclV3RHk4dnBlbFBBTktNTG5Td09mV2U2eXdFRmFJTDRVLS01Z0NvczJBbGd0OWE4QmRKOVpsUDBUSzZEb0RVY0JTbE9VTWNJNGZXb0lDYkhwc3FnS1d3MUJXc0xGTFU1UnNSZVF0ZHhmSFNZdWs4azFWUlNhQnZnSEh5Uk9NemJXYzhSWmJCVjlQc1doaEpMeVpMM3RldzJ0RkhaM2h2U1A2SUVidWpxSE0tYnRWSXFqb3BEOHFDMG90YkNERnNqdXV0bFdVekgxTXhNVFFGdk1KY1Rfa0swM3NOSVBNTnc1MVlrQm1fV0hiQTNZY1V6d3BPd1JNNnQ4YWFVV2diRUkyNm93Szlhd3BUTzJmVHVncjdzNTJoWTFBNVRpMXRobDM4TU84UGNfeTFyYWJBeEVsMGloTUw3VlRFWmxhUml2VW5JS09ORDdXSXE0U2RHbjZzbXJLWW1LUGRFNy1vZzJfMXVhWkJyblRScHNrd1FiZUVlM09tT0lRUjltb3ZmNkRCdlZlVGtieG4zTHgyM2hwUVRRYlpFSTRORFFHMnlzTXcwSnQ4OHl2dEo3NkpwSEFYbWhkZUpBNWI0QTBYb2JvSW80a1JGTjNlUWlCQlB1eTVsZU1qeEZnVVE0N3Y2M0pyNmtibXpfSEVTZHowOGhNeUozakN4Q3ViNWdJVGhtbVdkQ1lIUjZRYjRtWlowMjhIT0ZCNTl6MkY4QVVENXNwU2wyZmhKZHBtUl9aZ1BsaVBuUm9YNGVPU25Dc2ZLTW95X1YwNk1KRTl3VGZPSXU1ME40cEhoTE9qQXNUX3NCSHBfYWJMb0x1ekpJZXdtV29SRThVR2xWVENOX2hJQk1pdWI1V01lbDgwa09nbHJTNXRMZnNCdW1qTTZXUEladUpjRG1jWlozdXpEeFBkRWdHbFZydXE0ZmpfMFBoUF9uNS1FcEVtYTkzZDFaLURCTXU3Wk54QWYwS1ZBOXVJOXZ1WFNQRDJOVmRpMG5QRFFjbFRCRWhKYW8wM01uc1VGbkxBNVZqQlJnQVV2Y05Cd3ZlYzRfOE9WMDJLRVRxZ0hMZ2tzbkIxdU1jZ0cxYnVQWHF5cmJJelN3WGJiTFViOTFWSkZERl9ZNGFTWGhWR0kyUzFpdGdZOVlsYzl3aFlJYU9pQy1KcTNiRUZiVnZiZnJnemMwOUtiYl9ya214ZjFpWDVRczh0blYybHpSaVB1eExibGx6dmlEYkM4ZkpMRE44VHo4NExMa0lMZHNmdjBHaWtkRThSelU5cFNnMVU5ZURUT0RnVktDRmtzaXdJbEJ5MDRqd0d5NnNwb1BudUxweG53OWhKQnpUc0M5dVRUTmlZeUk0SmxpdWs4Z3ZpR0JTT2lMeGNiRVlXTGFpN2NNQUYtcnI4VTYya2hDYlZZVU1mVGhnQjg5aklmNlZSa3pVSGs0QXVSR1k1QnpraWxBcDhHeHg2M1RacnVXR3ZMa1FKek5wNS1PVGN3V3hEN2N1VlFULU5icVNZRmZYMnZVcEt2Unp0WjNxeTJOMTRIYmdIeUZMYnl6SVVoTXdiNkY2M3dwcnlIN0hfMHp3OGRfb0N3bWVCMVBTQVBUcFhiYjhRZjluQlRXbjFCWlBMbUNVc1ZCaUFYQV8zUWp2SWkwUXlrN3gtb3BGc1E3OFdJUVpadkhsb0NRNWI4UGd0bVdaNUFwVDhPc1dXQU1sYkFzdXRLdXZjTFkzbW9DeFZIOGxzclZxOHVXSjhlQzgxUV9uOG5YNGFqcnZiNm51M2ZXTXRDNmxFeWwzSW1JSHRHd3lvVVZOVW4xZWlBQVpnYzdiQUlnNlBoV1pxS25DMkFyU19lbEVheVFUd0ZTWWxrM2Zjdlo4Z3RMOHB5THY0YkpEalI5NUprM1g4NGJEek5uSndfY2o2Y2Fqb0F3WW9nc3RRZFRnd0pqTU1WaU1Fa2hraVE2SVRUU3lDNUJmOTBCa2VXbWZwM2N3Y3c2cThwMG5NZEdnMjNDc0p4VHNla18zbFotRS1KcHZESHJnVUV4d3g1Z3lCVy1STjdrX2xnaGd3OUw3QUNTbHdGb2pHVzlZSzA4T0J3Tjg4ZEQwLVlmMkZSRmFnaFVQY0RfWXhmaC1qNDkyaGY1SnE1WWtyOGJMZENiZjdBTGgyeUp6UTRoUGREMDdnNW1uNThnT3ZMUWo4Z2tvTTBfMHVGOHBRaHpqenRjVlRaM2NBNkZobEI2a0Zkdk9OQXZVLXI5YkpFb2NOaW5fRTJmb1B4VUxqOVdEdGxaX3N2bWtEVzBjR05fRWRlR1dKLXhLcTdWNDRzck5vd0lCOEprZHE4dUhZXzFadVg3bWV6MHNYc0lNSEFFSWhkSnBJelpYQzVjYW9lTDRfalVxelB3dzJzMG1IU29CSlpQNjNWODhFQVpMVkdtaklwaC1PTkhQeU9QemFlQ21xajFlTVFaODdJSGNhYm1yUGNaWDFITTVvRi1meTZ5RFVzdUJyRkx1dmRyX0VJQ21TM0sxWEZmWVhsMkZCU1ZsRGNpUDJ0YVF1RzR0dHhjaWhoRWpERDVDcEZ4S2dha0lRSWc3VVFBTy1rUTN3THZHdW5CcG4wVy04eGpWRFBoU28zUUNOc29sNF9zWnFqVTBoeEVNTVo3YkVxTzNSVDNTVW1OM3RjdG9LWTBySzBxZmR1bk5iSXNjdG5TcUVPYzg3dWd4VTBXNHlQYjBNOEoyQUwySkV0bXlRZmN5RTBDalkzVjVZMjNlN19UVV83bEk5alBTbnhvVi0wdUhCRjZ0Z2xYN3p1akdJSG82MU5CMHo2MHpXZ01hYklqd0Rha3dPYXV2Uy1yX2RqbEZpeUUyZlJvQnNPNDN5WlI1OGJqcHhpRHJxOWdnMEtJcktBQ0gtWjliTUdxeFBIbHVrb1FGeHAtMWszQjdndE5GdGh4dEJqMng5Q1FBVUJwMFNZYXRhUmgwVlBPRGptMWhLd2FUTnUyNDlxZW0tbERiNTRhNFplaGZqVExkS1RoalFiMktwY2FCbVg4ekpQbnRhVlA2MXdDeVRGVDBSN2RIVHloZUhfS0NYbHA0WDN0ekdoRTg5VDVVWjVxVEZJWmNDR2I4YzM1c0pjYnh5bWZ0aUJJd05sUFRlbkNid3dfQXlOUWhreG95Wk1iai1lQ3NBN1M4V3FaUEp6ZVozWE5iV0ZJeS13S3hFMnVyTTJKRXd4eExXRllwOFQ1cFBQQVF1NG1NT0k3SDlfNzRTcWpMRFpCU1Myd3dUdU1YZW1aSDJuWVI0WmdCUF94UkZENzYyM204ZzRuLUdNNGhibVZPMW1LTllJbDlHdzljbkpQOHpSSWlNbUppWEdXTjktbjRPVHFRWExFVnlKbnlUQ0RCMzFTSFctTThyeUJMemEtOUxOdFZhUzVTWkM1UG1vem9EMFZyY2hFVEZmelhwREJfZGYwNk1aYS1icEpBQklTVWJidi1hM0Zobm9JUU0yRW1uT1N2Rkw1ZFdDRlZMcXAwREJOZEVOS0FiQmJaNGdaaGNEREVoSVQwQzh4dWJ5MjN1MW55ZlowRld0WXFoTTh1TS0xVzVOTlNLZGkwVFVhQ2d5OHhBdEh5Wk9YeWgzVFRMVTh2ME1rbjFRRjh5ODRsOVJlejE5VTR5Z2JqX01CVUJreGYtNnhpSFRVQkNpQmN1UnoxM1pSTkVMNUFzTUZLalQ3Y25zRDJxNS1fdDk4dEZ3SmNQejBTLVctbzFtVnBRSkFjZWZ1ZXBRcUdvVzdLNWIzMWFCVHUwWVc3MTZCeW1pSVEwTU5VdC1Cbnc0VTZtdG9wWWJVRjExVXhSSHl2R050dVVUMlp1MDFJSWlKTVRvYmxoZXlYQkFraEVUaDJTXy1Cckc4cG5oZWFZaE94a2wwZE1nZy1ISlJ6V0RXSHJTZ2tUN2plaThNNnhOY0Nwc19veC1kNkdsX1FwYnRkRGZWaGQ3clRaTzhCNTFQSVN3Yk9aYUhkZHotRlhUZmd1c3p6S0RwZmtSWjN0T010VFJ0U1ZWR2t3eG8wRWdfQW9iRVJSNnBBblRfN1hZQmpFWl9BSVVwQkhmYldjZENyUkN5YnR4b2VUU0RvS0twblJkV0E3cnpiLUtDQmVzNG9mdWhicnNldEdWXy1rT0dLc2FuT0lPbkNPQWdHc2VFb19NTnBvZVpjWmd5QlRlaHFmNXlCQ3FZN2FmM2E2Q0F0V2hfSE1IVzl4cGk1TVlZVk9sRVBWWHZHTFp4bi1xS2hzUDVwM0g4a0VHam10d21CWGFuQVhkNE1HemZtWnA2UkZ2d0VIaFJHNFJQQkZYSkZld3laMW1oSzZZVDZXYnpuUGloTC1PTjJPVnJEc25CSWdEUGVtclpnaVJIVWdnMkk0MXNnX1RMWTQ2N2NYUm1JZUc4NWpUTmRieEhkRkt5UWhNS045UUVBYXhDTGJsaF9FZFF1LWJtcnFfNVZoRmIwSDlocF93S0M2bFlOM3BFR3ZsajN5QzNIYU1LTW8xSVlBTkROcmhGM096U2VHUS1SWmZHeFQtZTNwdmRzc2ROTHE5XzNrdWdGZnB5ck1GY01iMkl5MFk1ajN2bF9vNTFvLVdiYUN1Wl9KZEZfb19JZV9zZ1ZnTUhoTVA0elIzRlBEVjVjVUR0bEtWWldSa25XMTRaZ1hnbFNRRG5kSG5lbmpqR1N0WkZnelh6c0FqX2xibm5BXzZnS2ktZHQ5SXk4aW92cFN1SzhTMmMxRFdqU2xIQ1FMS2tCdWR0REI4RFRaYjZneHJCZ0piNEpFUWp1LV9mUXlPR1NOellNZ01ISHFiVTVVbmpxOFVlQkFlclNnQnEzTWRza0xRNjlRVS04clRZbGszVEVLeFQzS3hhTUx6MmxWTkZSMzRkUDl5Zm9HMnZvOW9PS1VEb3VUaXRwNkdhV29Vdm5jWkdDME52bktJaUIzc1NiQ3pOWFdWbFpDWDhWdFhRQnB4NV9USDNhYi14bUJOUnVQMUZ4dlExNERsanZHQVBOM19DcHhxaHAwTmxzbk9xNzlqYmV0TmtqVHVrUTFZLVVhS1lUVFZOaTlQV21CbWJJTGx6X1FfQ21lSml1M1BwVVUyM28yNHlkR0JFTzZNZFg3aldMdHp5c1hxSVJyV1JUS0g1dG1rT3VwNlQzck03UGotb0NNMURacGZHdFUycU9aVW5hZF9TNGR2V3RBT0EzMVVsLU1DQjlLLUpHZEhyU1NKS0xoODNqM2d1ZDdoTUswVFJmYzVXLWdaZzdiT2xUc2EwcTB5anVKTzAxYmZQdjdQTjN2cTRkT1RabWluNnBJMzJSbzBTQU5NZzlBRkdvR1g3TElaR0Y5bVRMZkZGbkJTUlctaW5taW0yRW1NR1piQV9hNUdvTWxOamhmV2JvLW5aNHZubkI0M1NjZlNwZnI2LWRvRzd2VUZzMHlPUURuM0VvZF9ZcHBwUUwtLWtKR3VlYndlTVk4ZmdtVy14NktjRENjSEl6NU04MzhROC1KTEpPNzVLS0ZqREZGa3JtTGZfTGF5ZTJuekpKVGxhN0NnMUMyWS1kMFJGZnd3ODRHb1JjaGpVS0RPQnlFUDVlNzRpcnVSc2hjQjl4QVUweFpyZlIydmdQM2gwbG9UYjJ5UG9wekVwaXV3N01XZDA0eGhsMWhJUm1haXloRFMxc3R3WFh3aDN5SlNuWE5NMngwdnY5bGpQTmRDTzBiQ1lyZVQ1SXY3eFp0WEl1VW5jaWI3eldUQWZNZHM2cXF6Unp6Wkx5YXFTT0JrQkxJLW82R05SMm9PX3F6dTZteG5tMlJGOUlMcEdxYnRnZHhYTTdScVNkNVBEa1RfVjhrVzdOOXlfTUJuc2RpV05uelo3WndPNldrUlNvbkJPc0licVFVS3NXR1dUZ1E4ajE4dy1hd3hnWVJNQlhrY3lEakt5S0piMjZrWjhnRXNlcVQtM3RPTHdFeGM5cjh1MEtLT1M5YlROZDF3YTRFTWZHMEhFeE1SdmdqQ2N5QTlLa1pnU3Y3eTlNRm1BS2k1M3FXNnVvRHRfX1Bwa0lFLVpqUGhLLTdSa3Y1TmJUQnI1bmctTlR6ekFHc2s2enVPdnBpU05JSWxBRXNlUUJERWNES0c0M1Fsa0N0X3g0VmJ2QW9kQk9lTVJpZWNMeTVtLXo2SVZyME9xX0Jnek16ZW85Wl9xZFhWdFZobTU5ZkhDek1rcEM5WEN2dTVXaVU5UzhsV3Y0VmM1STZXa294QW9vZ081QXJFVVV4T3JsMzlma0ZpR2FvUmNBbWM0dG81anhUUjhuWVJXQ2tFdUQ1dEoxcFFUNkhpaW9XMk1OTXR0OExMTTFpeUMwejI4bWFlcmdBZUxGQ3pTODZ6QnJybXVTWFJEQlhhaW9DWGM3VkoxSEtmSUFYcDY2ZEZ3RjhRUkdUOE9LMm55dlZIMzlvRWhSX2M2T1NiRzJvYkxTOXdWM2RFSUFiY0RhR3hjVUpCU1JXeTdUR0ZhcWdhemlwRVRnejF0NThlNUZhS1AyUnoxMHV3LVRHSWN3VVJtRXhlSzVnbDZJWWdMVThKYmVNdWtpbTM4dVFXaklVQXEwOWhva3RsRFNueG8zRFg2STJjdFYtRk9xYk9rX1dLRURHRG9aRG9neG84UFNELUJWeGJrQldRZEwtTUNENUpzblBGRjZhLV9BdFBaWktKYnZoM0t5bWQwNXVfbk9qTURUdXFKU0xuNUV4MjFPbXAzQW9WZlpNYVlTV1hzaXpOWU10cEVReEMwbWp4aDFFLTNmRm5uOE9GdzVnTXFXNXN5d0ZHRklYcUF5MFlmc0Fsb0ZBTkstRVZvVmpCbjY0b0Q5X1NsNVBwZmxFZVlaSFFRS09IRmxWazVwdUhlZHdpckNfZGhkdGp2TnV2ZlNSb1BLU0VJWGxnV2owRHRrRkFiaXJkd1FNTFBUc21CT2pOYnhSWFkzVG9Qd0RSZGo3eC03VVJxY2Ftbjh2VW9UT1MxYWE4WVRMNm5FNVhsVHpuOW01MEh6ek1Rb2tnemcxQlFLSjRsMFJkbWw1a1RiX2tTRm5XY0hobHp5UGt3RUxvZnZfYnlBN0lSXzV0d21LLUZGcUVsYnE5WW1IaXNrR1BWMlpHTDFmTDFGaU1RSmtxLXNzeFlTNjZJRVZ3b1pCaGw4dUZJbnVidXhFeGJaSEpTX2xQY0pLTnQzcExWazJJSzJpc2duVFgwTnlJRWNzMG9pdDlfQVRERUJ5OHZwWTYyTjIxYk9la1lJM1o1Q0pleFFpVTc5VU1wektndTJvTGlaWnBaeXJ4TnVMa3BWSzJpT2toanNaN3gzNDhRdjBSUjdRN3p1aWM4b2hnbWYySUs5cjltOW93MTg4MlpRNFlETTdlOGlxc0t3dkZkOWZuOERlcWl2cmROQUhRcjFlQTZnN3BVSkpZZTNiUDJKLWpGSnN1azQwWXBFUXZVdGFaZjF0cUpPQlMtWlhvOE00aGEwUE5KTWx0bFhmZGJub2x6aHRnYVF5blR3WHJBRTBSZmtnWjlMaHFtenI3ay16TWEyM0t3UHdncDJmUGgzSmV0Z202Nkp4eHBnVjQ2dVl3UTVwSUFibll3MDFOTUxFTXlQaUNySlFFRWtwaXo4WG9hOGtJMkdRdkh3b1pTYlMtNzFZcHMzQ2oyLVZkRTBNaV8zUnRJUEZyaVVTUERfS2cxQ25pQlduN0IzS1pUYjd1MFFwOXl0VE1TdDNRbUNwcnR4YlktVWFwWEtESUYwYVVCN1RPaDRuN2lFZ0pQYzV5M1A1LVZkQ1VxUHJKS2VwckUxN3AzMmFyWjE4VFFwZE5rRHdXRWJWZFlMZDNvc2tTdkhCMHBmbTFablpMZzNpSGo3SmxFX0VsT0RIOVQ4MXRBS3ZyUFlzZUJsWnZQbEdUbDdRN29XN0tSZ21zVDJHMmlqOW11RlVEWEoyLU9ycFhHTWFURGxpdGNhcmpXR0tjMXFJRWhzQ0IybjI3LUlDX2FnbDdHbG4xUkdCRC02bEZGQjFuTVBWcHJpVGljQjA3THJZblNHSTVRdzFpY0pYNnV1TzYyOHRTMEh6Z0llUEdRVzhPMEtyR0xEZkktX2ozQkphbEN1eEpMeW5sdmE4MDVaWFZ3RUdCcEcyaGFOSlVleXhJeWFSamM2SGdOZzNHXzNIbFItWXhiUjBfSmtEODJwczhfd1VmZTBGOW4yYkUzWEVNeEd1bm9rbWdWbTdxQ3I0TzNxQk1HZ0dvN3ExNFRVTGhndk9GeXVZU3BKdkJ2a290NVptZS02SC1idVYySlVjNENQYUN6Y0pFSnB6QlNmTnk3eEFlQmNvbEN4Q0w2MzZDZS0yeUFGVTFFdjJ0NkN1U1BHZUlyY0RrRlUzT2RWOWxvRVlJaG5nNUdEdDdXUjN1RDJsRkh0M1dWLS1ieHkwSFU4YkZmT0c4b0hoU25NN1hsOWtGR1ROWUVxUndIUjk4eENYeXVlS1ZEMHVlN0ZPNnotY3dxV1NxX3BFb0ZUX0V4OFlHU0EtS1k4N1RCRFY1ODlYSEdMYW05bm43RXJybTdNc1p5Znp4V0NBb0U4YkktX0hRN3dTLVVTc3JuZkh0eVJCVkRMcHRSUDVXWDhTSW5jekUwbTFsZFdRUFRZdDFZTVdld1M1Wk5GWll0SFFVSU9FUzNRVlZ5dWlrcXZQczBQWE5Db1p1ZUJoVVViZlVab0E1WFpDTXFYWVdsQnBUMzRVWkRTV3RxUnRVcXhjZlk5YmpvNzZWNjRfSFAxUHJ4V2NQMFZFVi1QVmhxTE55VmRZd0VsRTB5YnlyWlNsRjRwVlM4VTdsd1VlS01UMnpHNWVDLUktakxpUEU5S1M0eWU5WEdtZjlVZEZjd1V3cXBiMjl0cVFFdXRUNFRmUU54elM1dzFqblUySF9BVmxvNm5LZGJiLWt5RjB5WGZyRXB4VHJtR1VSZTRqMEVzMHBXbU0xOVZxY05yeDJDczh0UDlGTlFxNlptQnJ1QVY5ajE0SlpOdUhvY1ozMmU3cTdsN2tfcWlseEtDN1hjR3lRS3U0YlpXdS1qWUEzdm5OSDVORnAyaEd4aWFLVmRka1pDQVlTUnBqMHVNZ1FuVGNEUkppTTJoV1piaGY0OXBUaUVwak90dmhIbHV0WDdYdmpnTDVZcWtVRzNBbUZVelZIOWs1QkFpUXo2VUtwVVJjUFVNUnFPTG5fbkpMd0VsY2xKUE0xYldZdEhZNHNTdzl0OTMzSjZxdzdENFdNRGJRLVI0QlJubkxwNUZZRUtSY2Z1cHVKWWtxV29xd3dQUzc4b1E1UmZfSF9VbVlBZEFOUXhsLVU0MUw5RTE1TEZqaFBsMUZObFhNLUp5ZVNJNjhlbUJ1NGNWY1l4d0oyMGd6Y2NuSWs5UEtjdXdUWE1IUjVIMmNtZENxRnVBY3lYUlJCaGhGRVBfNjFmbmxnRjMxMFZSdS02c3JmOVhnTGFuMEdtaVNZSC1UaVpmcUFrUjItRVlvdWxFUG9UWUw5OUhTekcwQTBveXhpc2YyaER3Z1NxNDVpbjJaTU9BQnRrNGpGT2ZKQ2kyOVZxMkV5YXVOQmRodkFQeUVzVHJpcV9ydHZPN1phUUs1Ulc3QndPZ0RsY3k5b0ROcmVfRG5mZm9jRUNmc3hMVndab0Z0Sm02eUpoNmU5SDVTOFdMcmF3MEhDTklaR2QyaWNTUTJEMG5oMjh6b3JSY1lfanpIYjBwX0VIZk1iNjhxa1hoQmREVE80ZVQxeGNtRmZuUXRCQnRCMVJYaEd6cW1MRlhTUXJRRWxHWFY0czZxNWFYRlJQNkljdGowQk02VkxHWXVpOUdZb3YxZEVrWVRaS3Y0QUtnQndySWRGazl4N0hOT29YRm8yRlgzY0hWTUpWU0hzck4xY00wekN5SVNGdDNkaHB4TnVsVHY5TkdfQWZmUUg4X3NQa05Ua1R6clcyRlM1RkZpTjVrQXJLeUZRRGlWNEZHZTRxWE5WbFhfOURtLW1Hdk03Q2lPWDg2Q3Z1OEg2c2JEckxFR2VxdVJFSHdxaE9DYnR1VDljczNIYlBsbDlvODhxTkw4TV9CSzc3aUh2a0lSQUc2Qkl3Qkt5ZFo1QUNpVnh0NVhIZ0tEUE05a1VaMTdLM3FwYXFUblk1YWw1QjF3bXVYMkwwSDVGckxxQjJTTFBPUE9zcU1RTlNidGExQXBkai1KMm0ybzFWY1JPaGhWeVJza29iLVNOUDd5WGJrbGlUOWJTSHl5YzFvbzFXcTZKYnNZd2hwdVI5aS1YX1cwYkc5M0hyYS10c2pvYmZPYjFBeW5sRXotRGpqZXl1eEt1UGVtLXVvRVlTWkZfbXRsd1JxbVNFSkFwWmlxQms5VHFTZW04LVBCZWxRR000MVhBOWtFeHc3cm41anROODZEdTdUX3JvRnRTWGxpakFQUm44ZTI4XzcyNEwyTWtrN3FPREpLMkg4Mzdvc3J5bjNXRWE5MW80OTJuTS1BcGNTZ0pfUUEzbURqUTJtaHZNVElPakh5TFRCZlBjaW4tby1UQzRhc28wdmpJUEhLZ3pUeE5oWnpYNHMySjFSRF9ldW91cHhfNXhocDdCTDZSTWt4eWVMd0o3Y2VwZFhDVmNmdzdzRDEwQnlyVGVtSnVoT2oxaWhrc1lVUmdEZFI4M3pweFl1Sk11a0ZqbjlxbEQ2a3c5YndNWnRpU2h4QjFZUHNuV1daV3U0TXFsVTg3SldZQzlEMzFUdXhiNFltYndsd1RsQTV6dFBTS3diTk1fYUI4aXZVUUhUazBPdFFwcndXMTlCdU9FbjFtWnpBYnJ0WkUyZ3NFQ2w3TTREWjZWR29nMGtza3gwSUlDVks3WkxEQmZRYXhIWmxFOFk2SGFCS0JrekhKSHE3MUNfcnMwcEo0UWZRV1NiNGdkRFpIeVpWY3JaNktPbEZsQTBma25LdEN4YnpjM3U2TUM5enFXa1ZYWWZZeWVvM1JSNUg3UVJZaUJqM1R6SjJVMVF4U1VqQjZyU19XeW9vWlhnNHNyeG5QRWdKak01TTdfMC1yY3NWVlVVdVNzT2RXMXFybjRlSy1Kd3Q0elkwUHhLYU5wZzRkMTFLUURIVXJkRjdPbnd4UmJ0NktLSFlGYW03UGh0ZVozV0dGbnBIbktzdHJYOVk2bEREYjBTLW5KQ3o4ODF5cUhUSmZ5YkhfRWFxS3R0ZU5ub3dDc190Nkt4NTVBS3o4c2VaU1psOXJnb0k1V0FrVkR5YmlfSlFFdTJnZnp0YzN0M1hCMnlTVDg4bl9BcDJNbU80X0V4QXBoVEpfNzdrYmJvWkl1Yll2ejA2Sjh5ZjR5Mk1yXzgySlFLVVBQYWhuNEozejR3eS16d2EtaDFLRkkyZThQTDZzODF3YmZ1QndrNlBHNFItZWg4UVhybEJrSXVqMkJ4eGU4VUZ3VUZONW9kbzY4VC1SWTF0bVdPRlZndnpDUkJKc1Zjb3htLU1CTGZsdW5XbTBVdDRvd0F1MlRKQ3lUaTRpWDhIM3E0X1lQTy1zMXBiQnRRaU0wQU01azVFNkdoZlc3MS1lQjJ2cHMtMjRORzE5R2gzTEhvTzNlelJtWmhwX3k3QXYxV0I5OURrbmJ6NXZ6dGxwcW92Y2hNNWRDOFNQalFkMDBDRW5NRmtwaVQ3SDZZTmFKVG5BcnVoanhTU2RKLXUxSmdGSE1ObzJpNEtfR0xxY1BlSGlIaTlPZDM5S2NGdVNQeHAxOV9wc0Z5bHRzWVp5cXhoNldJSG55bkRvdEpiOHd4dFU0bk1FMWFvazFZNk9yc1FUeGFtNnBFQnludFljbzFoLUlhanZHSGliWkV2UGdLNjgyc2RoZ295RjJ5OG1na2JTNWxHVDd6U2tYWm0yeUZwOGk0X0tVUnlYWUtqUndFZWdKTmktQ0gxWWs3ZHgwbExOaElOVzJEWkdyN3RFd1dOd2tFMzFHdWwtaXZWZzdGMTNMN2xXNW9OWTk1WXFXQlh0RzBsRHVoUlduSHg5dTNWV0twSDFmT0xDcnVIS1VXdzM3MmhtX21KS3U5UW1tQjNrWDF3SURXSkQ0SnFfeWlaekMxWEdIOEFzRmJfOFhtTGo3YW1aUmRwRFRRSmV3WlE2NXFJem44VEx0ekFhTUktUUlQZXJDSEZmeDFYWW81ZUpWdHc4MWphVHFRQWJCLVZ5X3ZXMG4zNXhUVklEOGdJUlpYakhRVEg3YTgtaDY3ZVFPdUNtS00yR2NZQjlFSmNRLVRPdUd5ck5Cd0lBckNxSGxDSzF3SjlPZjFYMjQ2cjY3dnd6MkJCQUdRWWp5dF9yZ09PcFFadGthV0pMd25ncXEwRE1pYWt5cE5LSlVJbEViX3ZkUGp6SFFKMV9IVzlMSFB2UWVHUmVJRTY2YzEyWlBBTm5tcndDaXR4M3hzcWNJZVd2d0Vya0ZzcWMteUlZbFd0V1Y4ejVmdklMY2JvSWRxVTJ4c3RqR0lvZDhudEp3RVRMeDJJQTZ6TUZHZ2E1UDZkcVhiMm85TUtxT3U3Z3UxYzBUaGtjVzB1QUFSb1F5ZzhDcnMzX0VfcC1YRXpCZGVWNzBIWUhXNk5CaV91OUVfLWVKVm13Vl9RcmJxanM4bEJxeEhsR1ZyUHVIbjd0ZU1ncXk5cjY4b0c4RVZRRFZUV0tXYWZ1U3Q1bHJpWXlTMlk5QnFqbXduUlBFR3lqTzJtLXVNRTRHQU84d0s2eFZVeWF1emlRQ0FyLnN4blQ5QmJTbklGT0RKQ1Y4WGR3RXc" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/BackupKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/BackupKey-example.json new file mode 100644 index 000000000000..a618f0472d7f --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/BackupKey-example.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "testkey", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "value": "JkF6dXJlS2V5VmF1bHRLZXlCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUppTlRjMk5ESTVaaTB5TlRZNExUUTFZbVV0WW1aaFlTMHpOMlZrTURkbVl6QmpPREVpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLllNSVBfTXJRcTQ2X2ZwRExfSDNSSkpzSUotM05oeUJkMXlrOWJCS05JOGdnTjMxYWg2cWVoY1BISExnSnJ4OGprQkxMWFBxcDVmMXpsaWxfclVrLUtrT3J5YzhaSTljc3NNNV9TeTN4cEk0Wnk2V0ljNWNqUFd1R0NDbUJwQXlydEdPVnpoalF4bzNyVFcxRFNxZ1pVdnI4VEpseTJQS3J2aUlfUmduRWQ2LVJWS3V1Vk40ZWZWYUs5WFZUbW4xdmZ5Z3pwVHJfVFdDOVBGbXpoT0p6Z1U5OF85X25WcldWSE5TMXVMWEpYbldoQU9mUll0VlJORVFJRU5lTGMtZzNjTXJLOTFzNk5XeE5xZkZfR0w2UHg2cVhHMldXQ09nMzU3ZkJnT1ZTdERLaVZINk4xTWVkUTVwaWFkeHhUVDZMSFpva0I0eDFKbEFJZkxfYlU2OVBWdy5GOVFiM3RWbE1LcHJDS0stWUVpODJ3LlQwTVFpYXV3MGw5TWJfRFdEY1hvbzFqTjZJWXU1OVk3U0VMMm1ndFUweDNYTDl5VHNqZUY0Y2I0NExBaF9vUDdnbUgzbjdKLVZEX3hKN2hXY01XNnlTNDlFX005aXlndDlTQ2w5ZjRTdWtpM0NZdkwwUUVSVFlLSW1qMi1BRkRMWkl3Tm1HYmE4RzhheFBxR2NOS3NSZ0daZ1lUVG9pWUxxQnJ5cmJ2TEp1ZENxZ2plUWRpNU1tdHlQRnBhZ0hwSHZLa3VjRkdwLVhtSjFLYk8yQTJRT1dRVFFaOUNlcmVCcXJDbjI0SXdhUXJVQzRyTkQydzBVQTFUY3dFZXVWQkdFTGRKWm9zWHM2Q0dEZmpaSHFjdnB6NzRKd3g1T0VpcV9EUHM5VEtya01ob3djRXBsWjhaSk1jTlFSZnU5Sjg5ZDdZWGdHZEI1aWtKenA1WlY4OXcxMmIwekNITllKamdkZEhTNjJmalZlYUUxT09QXzd5Zlg1dEpiNmQ1QVhpZ3ItSkozbGI3Y2JhOXE2NHBsYmlhck1LemFiNUhtMkxNRnVLQnI1TmFrbzVQMDBoUUJnR2M2aXBJSzhNT2NLc2RhQjJGcjUwX1ViNnJEUzA4NnUzNy1DSHRGRnF5LTFBaGlDaXhRakNNTF9rWGtJMHZEYmJqRi1feGtNZGFCVi1BdTc5TzZ6V2pzRGVlV0t0VXZWUW5CMGM0Qnk3SVdDTGVWdzIyaTA5WWk3MnpCcWZPRjRyTmd4VTNrSjdfLTVib1dteVlXNndNOGVzTjR4R1kzUGhVNHlLRV91RGc2dk5Od3Q1c2NXWW9TMHh4NlBDb3M4S0R0Y3ItVXlwUTkydGhVX0ZYZ3E5U3RUWXEyWWdWV0dQbnM1Q0RMT0RBSi1sMTFJNklpdGxQN0hoeUxvMzlqNzdpV2ZUS0RnTDVrcDdEOUUzX3FkUFprdGpWUER1M1pRY1Q3MzlOMnp6XzFrWHJEb20tNlBQcXdWUzZtUXpBVW1xaXhTaXZjcWJxalpJRnRPbGxLRkE2cWVyaDJlU0FZelRNU0N1d0p4REJSQjUtbjBNUWxJSGpDMTdkTFpoVnFEMVNiNlBycV95OXN2Mml2V3E5TGE5R2ZHbEhBNlZZM1QzUWRTQ3VrWVJqWFhxLUItTm5WZGhGTVZhbFZ2b3NySmZuSEZhWGZMaTBnczVVOUt1NHlqRDdRb1cxeVIxSVk5T3JaNHFSUXdrcG5tOU8ycnJIMXBtX1hTekxRVDRrWmNLYnVneHNvWXRsRE9TaW9iS0RYdTFNdENxdkRudnh6OEZ3MUdwTXJCdUxrVlFEVmVlUDJqNFp3TGxPbkxUTmk4YlNjTm1fN3ZUc1RQbTRJRDltanBXSThCYXA4M1RLaTNkelAxazFpM0dncnIxSEpVQU96Q0NjUTRnaWxES1o4UkVsUWUyMUJBcUo3eUVublZsdWN5RzZBV2E3dmlZWXV4eEJIa0RsN1hHZHZYMGpJMjZyd2NTX0ZIMnlOaWFmZDN3SkkxMzQyWEF2VDdDUWVoOGRaZWRKU3FYUUdqQjVCSGF5Vl9vZnplVXBfOEhqRkRoS1VkcmNJNGkwa0ZwcEhkUFhNQXUxMjh3RHUyTG5VenlNNEpad1NJdW1fbmpiUTNJU1R5bUVMTngzd3QyV1NFT2Q3QUt5S3lCNEJzU3NkUE1HZXdLSTFnc2otSENFb05Cd3hQQkF2VnFDSUkzbGY5NG0tRU04LVh6TnRCVXFpT3Y5ZERCa2d2ekptSTlrMk9fVmpjbUZrbkdKb2kxVnpZcGlRVTRYbElaempDd3NDRHFrYWh1YmNxWFdyMDhVdFBtV0hGRXk0Q0tvclZMN1VIaVhsVnJPR1VHdFN2dWN3S2RjS1RPeldsUngtRGNGMExDek1kR1p3Y2czZWk1bWl0bFliRjJVbGJOMmJaU0NQWDljOWxFU2RBUUhxUEVsNXJhVDY3aDlWeGxPc3doYW54SkZvNGVuRENaYWZObURGRzJMYTY5RXFCVjZLTHowXzR1S1pDNW14YXZEazZXS3lmb0ROeXFzdVZMdG83WXNqUk4xNTJYMDVYSEhuRVN6NG5lM2MwandXYXo2MFpJR0Q1TUhNUUhQeTdPNFdnYWthVnNKZU9mYUNza3diYjQ5cV9tQnNYME5mWlBjcWFiRFhoWjdCWUxROVhFUkdibndkM0pEQmgtX1RUN2s2WERpY0tUblZQdWVGN3dzVl80aE9HUkpkVEk2UFRmV2o1dWY4dTdxRU9BdUt5NmV1Vk1LeTk3TVdLT1Q4LVpRbDBoSWowcmJWR1pILVI0cnFIMXZfVmdRUGRpLXFXb3FXcWt5MGFaSzNDTkEzUXhXZnRMR3AwcUVXcHU2T1EtQ2hONy12eE4wdFVlZGREWlF5V1d0d3g2VFcxS2hDQldaR2pabTlBQzY4YlUyQnVOTUU1NW9VV0dsbmNOOUVuRnpnTm1RTVR1SzV2VGd3WkJITWpmUXpsSUdfeWZ3QXVtSHljSzVPT092eDk1SGM3d0RBRDJXMVdSb2h5MDV5TFJkbEJ2XzREUXJyTWthZEVwZjB1dHZod1V3ZXZSNU1jVkV5Yk93VUw2Z2Y5a3JDNEw0YlR1bUJRbG9Ccng1aDNuTHhZdzkwcmlqbG5LajVZYkthZWpyTXdiSW15Ri1xVk5NbWpTd2I1MlN0SjB3T0czeE9HZkJRRHhQWHJtSXhoMERSOEdzSzBkeS0xSElJZWo1LW9STWRfSjlhVkt6MFk0d3g2VjIzaC1qUDNxMjRKYmF3dndsQTZyVjVpVUZkaDZKUXJpTU5DLV9hRF91X181VTd0OENIN1pWQ3VQM25JaTV4N2dtcWFsSzNlZ0htM3BkYl9sb3dYRTRaRUJETHZ0a2lobC13LVBGc3VZb1VKSUZWcUZ2VnM1RW5TU01XMFBJWE9TZlZNWW1KWmVrYmlHX1FqeGtCMjNCaHpZclNqQ3oxcW5TTXg5a3ZicDlRaDFuZFJYSkpJUFUyamVIdUxCNE9nVzNoenluQ2FxQXZQRXVHMlhuS3B4WGZ4QUtOeldpTElOLTBsUTRfUXQ0dHctZmphWVJVVjVLVWpyYlZnazI1MDZIUG1ZVEdWUVdRX203Z1NBU1BaajZEYklua3U3SzhFWnI2b3d1SDI1M1hxazlrSWwyTE1CcHZqT2tOTWFRTXhLcjItMllkUEV5LS1mTUFQTHBfVU15MnhqbEtMS2s3blhJdV9IMXZSbmdfVlVyVkhuZUdqRmFuODdRRU9SU1Y3clRBcHJPMmZUMmpfOWhoNkptdFlrUXFnRzg2WXlKa3NValdzM3hwZGk2TlBGRUxqQWd5T0ZDLTRrTWdLbGdJM2lUSElCV1Ezamp0U2UwR2N0MUs3QnBCSlJySUFGLTFVQjZKVDZjSjI4Z01zd0k5OGt1ZDVob1hZbVQ1bEEtWmFELUk4ZE0wcUZ0SEg4a1lXX256em85bTY5LWlZZlZfd3N5Mm1CdnVlb05RZGRRS0JrbWlVTW54VjkwdEF5RWc4WXJaWUwxck9jWHFjb2VJNl84UmV0bXZZeFZNMWJwdXFfajlmTXYtelRBOUpDZXlKMXFBTjVWQWFpY0lnZzFKWElDTEI5amVTT09zUXcxYXZxdk03TjFBcndDcjZvTUhycTVaQ0VLODV5VmI1RzhjY3Rld29pSFlzdVlPT0hnSDNMbmNoV3pmSjNNaUVjTTZfVjdSZHZCUWQwM2tQekdFVjh1STJ1aDl0bUxrNkY3VUt6WU02RXhJNW1LUEM5LVFOMk14ZTB6NDZrZTJteEdHR3cteXFMNjFHR0FpS0FjcENsSzVHeHlRbVBuREo4RHFKTk9WWDNoX283YTExVW8zMmtkdEcyaHVYcERVc2F5NkU4VGJ5R1dFZ3dmWDdaVnZrN1VNM2VqdDNqWXBxYmRZSlBNTUJCMGdNOU9mSVFjS0lUcm9IMHJEbFE2Wmt4UGM0ZHBlQ21NMzg3NXBXTlFrZzFKSnVRZzN4cE9WZ0VGallabEVENTBFaVZKNzg3cUM1YUdtakxRWl9yLVA3X2hJN09lcExWZ1BHSEFTUkxsd0dOLUZwTDc4UW9VempfWHUwNlBkNkF1VExtYmpoVmlERC11ZG5xdTVVR3dKNGxZamJqSkNBN3VQT2VfdWpzUWhZd1VHQV9YQnlsbkVySWxMN09YSE9UeGFEbEpHSDQtNHdNcm9hbmhPWTVoZ2NWZHZVQlpVZ1JEVWg0MGwzejhGVWJhUmxpaEUxeXQwdU5vR3F3TWRyWnZoTkl3YVFjUFlQeVV3UTdBdWh1dl9qSXRVcWlGQm9ncnlSb3Njd3oycXR0am12OEFRWUh5QWx5OXVqdmJ1cnk1TGNJaF9FUWZUekJuSnlfcDVZdzBDWG5CSzg3ZkVIOHJhWkh4V0VUcHFseHlmWWRWZjlQakRYTGJMYWJWQ2J6TXNSMnNYZkFvNm00VmhnaEYtQ0dOV3lta25EMDBUbWU0TGE0Vy1BLU9lR2o3Mi1uOFZjNmI5Zzc4d25tYkF0dGRyUThQWVdLUXZjdXlEbHZ5RUdHSF81VW10bFN5ajJKbHRLZXN3N1dzai1hazhDWDFidGRzU2xoQldjYUJ0dGozUmp3bEN4aEQyTXlWdHR6dDIwN3JPQjdxdEFJeVg1enJZMUxaSHB3RW1NeDhkWnM3NDdlY2ZhZVM0ZFFCWmN6U3lCNFZFWVRRWGdIeWdFX3EtYndfZXhqNWs5c0RHeHNTRnF5elFCVm9VOUtlbmFtZTRESnNMWFdaaW51UEhZUVNtWDJUZFBabXNkSHhCa3BBcHJiLUg0SGdFSnBPYWxCa0d3aFhza0hwYjZUTkhQeHktb09tLWhBaXptTVZPZzlnTDJOSHpSdUFtb0kzVTRFd2FfR0Vub3d0ZUFRU0xlY016WjZxZ3l1ZGswcG51UnlONlAxbTNCU1ExODRXUzNqeDFDNDYwTEFKM2FySS00QWV1aW5fMFZYM3FHdmEzNDR2ZXQ4N0RSN0liTUUzS01rWWtUdXotaHpqbnhHVVQ1cXZhWnYwNzdQVHExbTVDUVBUZGVlNlNnMzRmLXlseGg3MGoxSS1OWnZ3aFAyTFZ2OTJkdVZ4SlJSN3hzbEp6UzU3NXE3aWZ1UEcwUnp0NE55M1lESno0TWVDTk5wWklwTUJKeGR2bkc3azhsbXlvQlVRYmR6OHhCdW5YT3FsRDFHU205M05LYy13bzdxZnpJanYwWjF6WVpwLW5LN0o2NEUtSnp4MkQxZ2xJRG5vZGw5R215UzlwbzMzOUlZYU9QZlJnSTNad1FTVkdwcEJQN0dNRUdsRkVxbG83bTUtNFNZWEc2SmRYYU5yM2lRVmdoUEtkQWVpLWJDTEFQbGJGSkNFQVU1NXJfSEVmS2xUNS0zNlN5ZHRlcWFTZEdvMVhGRXpadWFILV96OEJsd1hXME4wdFJpdHo3SXh1OU5BTkM4R3V0Z2t2WHVFUl9Obnc1VUlsYXJlcE02VERfWl9lOHJGRDdoYXhWMVd0b1pkOUJTd05iUm1JeXU2Y2ZaelgyeFNPVlJVSndWSEctWTNaRGRpcWtzb19XR0J2TFJKQlRWT3NvZVZucWUxWktqb0NRSzFEYUZPb3B4UDdTTWhwOVlpY29XRk9VUU5ONS1EQjMtNjhDbURzdjE1LXMzRFRxUUM1OHhpd2JZLTRuWWt0eVNRV2F5elRvYlZOWG1idmI5SzktdWowYVRWRkx6SDFHMFl2TG1oU1NTd2tfM08tY3RSUExFblhQU1FWNkdVT2p5d0xIT1hTRDZfY1lTN1JrVXR4Mmc4bV8xbmhJUW0wOFd1aTVNSkdQR0JEb0RmN0szd3oyMnRnUVFXTDEwY2J0SlVvQkYyNjJVaUg3TE5pMjJWQ2tsMElYMVVRNy13cEkwcDhkV1NvV282U25PYTdkUTVpQkliZjlQX3JRd1dhYVl1NV9aQlpwQ000VXFWY2dhR1NZVnNxRHpXRVY4LXRjazBYOE51STJyZ3JSOTRDSnhjSms5MWwtb3owbldhTUFocHJubjJfd3hSWEdOYXkzNmJqU3EzWXhNMXN0dDFNN1JjenU3UTJQei1mZGpHWUFOSHZxQUtYUTZpbUphQXNwbE50Skh1SUp1andyTlRQd0ZzNGE5bDRkWHdNMDRRSWZoYzR5em1icDlYRjdVWVU0MjNXTWhRU2RMNUpaTld5QXVxOEFuRzdtd2dTUDNUMjROVGh1U0Z6Zjd1Tk5ySmdfUFk5VUNWcmlPS3FEN1lVS0FSZ1FFQ0EtTmthbG5YU0V1VEN2azJpZkVYOEh6cTJJbDV3TEZyOVFKVjBmT19EUkNyUzVzRHVaVmJ3RDI0Y2VqT3libWd1VWFuTDhiMklqS3h6TFVPT2tlMkVPNVRRTXRQUWZjeTYydkV5c2NwQzJFYXd6YUN2V3ViMVNXS2RZVnUtcVBzdFV4eWlPUHNpcFR3V1kzTXVNRkpwclNscWFVUDFJa3N6M0Q0VGpqSElzb0c2TUFsbFRZcUItSWpuSEhmYzI2blM3cmExeVVjbHRIRWtEd3Q4R1I2bmctNk9XNWJtT0J2VFFDamRUUDhSbXZ3b2tIRXZGQTlXbGs2OVZIVFpFSlNaNGdRZXFzcW83SEJJQ0h3dlViOW16YkhnaU50bGQ1WUFHT3V1U3BOTE1UcTM5LTMzVVZoTjBLa0hLUXZCenI1OXFmaFBIU3lVRnVMZzI4b2pYMGRvb3gySlFEZ1BobHZVYkR3cGluREJqVHBiMDdsY09EYVI3ZWN2M0tDOUhJQVdreDlhV0lza21Yb0FWYVNWTDBsZ05NQzNHVkxSMURfcGVoQTZySWs2Rl9qbDY0N0w4SERqRFJEbjZRRnRIa21BYW10TU9WSzdPMS1UXy1UTldwaDZ3YVFOdTBrV1ktZXAyRERndDk2enRYUkZTVWdNOXJMMnk3OENOMkVFWW1mQUktM1VjamdUblUxRnJXaEZ3dC1JNlVmNFZwNlY4XzZxTjJzVDJyeWFLWHo0Y0JJY0NoNm8tS0RpOW95SDV3MFF5eDhWb0xTNlN0YVEyYU5FejlKamctZ0N4aVp0Q1JYeWlnaWx3NTQ5VWFWMldreHR2bDZkeWRmZmFTM2ptYUxqaDRmOXhHa1JQRUdqZmZvMVY0dUN5QkI5QkNoaVVCZG1qVGxlVlJROG5Ccm5WQW5qYXVIYTRsV3VkNkhjSzU5VjJNTlpNTVdtS0tvb0E4cWtuMzVUY25EdXluSjJITUNnZElCSnVQVU9TeTI1QnhuZnA4RU5NSlZrV19UeU9uTXk5b3JtNTVobHhmSjRENThad2FRREs0QWlFZk1IVHdJc09uZ2pnU0o0S1JDdjFRa1NVeDdYRVhNU0lNUWtUYTBqS19aNS1PQ1ZNc3NBbzEzVzg1VlFKbVpDQ0tZRzZWbS1ybnVYSUdZZlZWLTg1OG93OEJZUGhDYVRhVzRkVnBLWERDRDVfc1FsamdJSnd0Vmc0T0RKY1dxelJpWWpUaXMyVzVjdlBvT1haNUIyZnFaVTlCWGVPQWM4S3Y2a2ZDVWp0OFV5UDFTaGswN2xtZ1A5b25PMWJ0eVc5VnhQSE5uUHcxNjZDeXJmVVcxaEFHQjB1YTFNYmtEVTdfdk40SlowY3VWNV9iLW9sUm80eV9yeGQ3UGRWREJsZHBWTUxsV3haLVhiV1VqdFpTVndaT01rOEtvV2F0bld6NVI0S1ZLNkFnbWJFTHhpa1MxSjYxZ1lJNlhTcm8wRnF1N0dNM2JXdlZQYm1xR3Q4SV9UcjNHamlKeDZ3OUhvZGlLbEZQc2JMakE3OWJuSG5DcHdwSEZBWGI5d3E3dmMtSF8wTU1WVGw3eE56bzhIZ1FfR2tPWEl1OV9uMVJiZS1SRDRXUmlId1RuYm5ZbXpHNjN4b3dHTlBJN2c4R203ZkxfTnpDWGhveDdUSUhXMjh0WFFCeVk4ZmR3X3YtMUtvU2lhSjNwNHBJUnlRQm1rQnpmOTlGRlpPS2g1bUxLMnBrSE9INWFlblFFNng2cHFDakNkcW53Uzk3eGJ0Skp1TkF4M1V6UDdHM2l5WlN5ZWw4SEd0YU1UZVdITzFuaE9lZFNlcTVhaGk4dEFFeVp2MFFScUxsQTRaQUxrVGh5ZUNZckpBd1cyaUJaOW5DRUVnemxqT01wdTJndHpDRnk5WktZWUloaWZKdVQ3dlBHdVhGTUtLVlg0WFU5ZmVoOFhIMUVWbnZ4cENuRjl5eEZneThuVW5CdUdsRkVWOFVCVU5oOE5BcElZY3BlTDd5Q1F5bDZQN3Fock43SEhINEloNmhLS2lVaUItWjRNMHJUSk9mZkd6MFhGWmlaSDdYT21KazBNc3pCbEVhaEFFbjJTU1JaaVFXTThsRFRRcEdrX0p3QkpRX1FVTmtMZnhCcHpsSzBUMGFxS1d3M2doWFktT3FqelM4cTFXOHVBYzNabFRUMFZHRWdWdU8yNl9vRXpXTnZYYnpKMUVfVEFxUkVWS0xfOWFlem1zM3JqYy1GdldSR2pMV09OTXhUdGw5ZzE5RFdhbFA2alJlUlJFeEg3djBLTEdvSHV1RW5IVHNQX2hsMnZuM05WWWl3dFFualFCOXpiMjZKRmxwZzZFaEF1STN4bFZMM3hwRE9qZUlPNXM3MllKY1MzcjAzYkIzbTVHMUljRVU4SkR2WTF5MjJQaG5iOGVmNno1cmk4RDY5clVLWThFOXFraExXYVhOMjRTLTZBYjNRZUtKcmxIR09yaEc2ZkpCdElqTF93Rk9kWjJqOFo0bVBZdmJaNUNEUTdnM01yYVh1aVJ6cWdvdXk3TkliempzOEZETkQ4ZHNMR1Z0OUNLanRVMnR5a0JrSUpQZlhrZ3U0LUpSVFRETjNINGdwek9md1B5V18xOXRMdlBKNEpRbHlzbnhKaEptSW5TUEtUUTljclJHVFFlS0F3THZZemdCMG5QWkIxd2dQVWJHaXRsaHlTV1pqbWplVU5oSnNnb0Z3ZHRFdTloTjRDejROWUVLZ1ozWnBKTC1sZmVJbmp0VEIwN1A4dWtpV3FHeGNBaVI5TDRPdl94VmxNYm9hblduNENNLThVSnZjRGhVRGtpTGt0eHRJOE03Zk01bngtMkFSX3MwcnlDV0F1YmVmQUxRdHVEUnQ1MVZrZnlJZkJ2UWFyb3dINnpIX1ZfZ1lJWFdOdDlvTElMT3FrNHlqcmR5Z0ZXWTl2QXZQN1Y4Q1lraUZuSVVrWGNaeUNsT2dmcTM5bXRKeHBMM2Nzb3VaWFRIcDExZ0xibWRUNUVTbjIwRThiblpEcTVvSEVEWGxPbGZHSE9ldmx6RnRCX1V4R1h0S1lYOUoxQWlLekJyZGI3QmJvemRFcDAteHVpeTZYRFp1Yjc5LW1LcnVQTDJaWWIxaTVoVmpRQUN2RnAyUHBaT2k3eFVmSlJoT0Z3Zi00OUphVE9XTjMtYVhVb0N1a0NpMWdqODhkQ29QWWNVdWs5WmxNelpkV1hJcDlnQ1gyN196U0U1WURCYWlWQ1dPc3c0Q0pGYmMta1FUOUNaMzRkU1hiczZ4S1N0OS1haHI5b3NpY2JHY2laMUlDV182WWRLM0l6ckh1UUV6TnNDQ0tEdW9iVVFRZFpBUlFMeWFlR2w0NWczN21Gb0tQN2J4b01aY1AzRjB3MzdBR0xMVzFjVi02dU5uaWhZQ1p0dThZckZQdWF4aF9VVUxPTk1SZXN5TFVsRHVydmxuQVV5ajFVMU1TbEMxTGtPbV9VV29NdVBzX1VqU2M3SDc3RTgwcmd2QmZCQTdaMkRQMmpWOFFRUmI2Q1RieEtpRkk5TFhmRlI3MjlFcURZVXVRRUk1ZDN0Y3liN3U4TzJlQnZfVGo5TzRPREx5Wjk3Z3BMdVZ3dUpVb3FqQVJnRU91U2lHdWwxaFJxYTl5NlZ0ZmpMNE5qajJJYjFsY2JyQS5OcXpkcGU4Yjdxc2MzQmpYRlhaWVpR" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/BackupSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/BackupSecret-example.json new file mode 100644 index 000000000000..7065c8b0b740 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/BackupSecret-example.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "testsecret", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "value": "KUF6dXJlS2V5VmF1bHRTZWNyZXRCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUppTlRjMk5ESTVaaTB5TlRZNExUUTFZbVV0WW1aaFlTMHpOMlZrTURkbVl6QmpPREVpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLmhERDdfVW9aU1ptR2JYN1dYUTU5WDkxZ0FQb05kdDcwZE1BbmgzbjQ3eWNjbkRNOU5vTm1hY0NHZmlNeUwxU0FlZDk0UjhBNDAtVE81TDNfQ05Qal9pdWIyaW03Z21nbHNPNnFFUVVIWU1tOEh2Wl9odFRrdEl4QzRPWEowYTB0S2hscnczZlBvVVFDZHVGcFg0ekEzYTR4VTZXTUNfYjZZVXZqUjZnSGM5TFRUR2tIazh1RTY0aVQ4cmt5RDRrU3RNcXhnU2lfRVZwUUdjWGdfNE9wQ1dBOUFha0N1NkpybGRaQW9BLUtXTWpQbGhaWHFYWGMyVkJlbUJjRTQ1YzY3QWhqYjJrSi1uQ1c5dHBjWS1JZ3JEUHFzWkswOS1WbHVtcl9SbzQzcG5FeW5jVFpTdzZlX1h6VnN0dUFOZHdiM0E2OVR1c1hfYkJKZ0J2SGQ4cDJSUS5WMTlhMVRacjZ2UjJHdEVaWGtOOXJRLmhwMU5IMmwtZklWbVgwWlNfTlRzekJfUEs1aktDUU5rSnJyRUhRQmZjQ2VjdHhmVU5uVlB6MVBqRWNDblZuV0pCUk4zTlFKZm01MjFLRHp1MzBIVUFEUGVmVHJyMFVFS2x5QTM2cThoWFY3VTdoQ0dHNk85NVpYclRsZlVENDI5RTNTNTQxdVBmWGpGR2cxbHlucFNTNnAtVkFzaXFlY1lpQWNuM1hhNzRhUm5xS3N3ZzhyU1ZOX09hSVU3ak1VVUhYZWY1ZmN0NlFrdWFfYkt6Z2dtR2ZiT2RTdVdNRmVQaF9mMkJMUFNGN3k1NThEMFZxSVlNY0JJR0dMU3BQUU93Q094OFF3Y3NVUEp4ZDFuWkVYYjRVNEJZYlhBcmFMX0NwekYxZlhYWVBsdmVUSGdKNVdrR28tWXNJVzAtT3ZqVGdLN2hIamxpR1psd29HOVUtbTJSVDZfbkhseHhVRFMyY3JseGNmay1OOTlXd0tEdUxFMTM5ZE1mN2RCSEl1aTdxd0RXdm1TN2JMTHYzM05Wd19XSl9DT1VGQjgycy1ELXk0UEdIRzVackhsSDgxa25mLVpRblU0SmZfY2lhMWhmWlY3ZFMxb21UZDQtNnJwZmpTMGxFT3VfZTQ5bUpYUGFpZ0hyLWFQYkFzTXJJQ2JvOUVIR2IzMXJ5SlR2QXF2ZmJDbU10bkdLUDV6aUNiZFh3SU5ONzBJTk5lZnJLWGZkZFBUd0RSV3d1ZkxCcGNlU0U0SG5EWVZVQmdkMDl4UUZidG12UDhhTXhhUlpGSTNpWG1fbmpCNmZfdlNhZUNUakdVYVVuRE1QQkdOQWQ5T2xVX3dvUnMtalNCVnVqd1FQSGlGcm5RWElkXzBRdXRYSm54cTU4aUtlTGJvNDJtOHgwaXBRcnB4aEZoUDdHNmZOWXAwVmxXR0RxZ1Q0VlpPQkZsZWRKUU0yaDQtb2xTbXdtUms0M0Y1cjdKd3h4aENqU1JReWx1MGEyQ0ZONWMyZjIxTElZaFliLWNReWFXMDNpV3hsb04zWld5cDJIb1FlUmZPR3lXUzBiU2NBT3JndGpBYnJaUFIwMGRRNnpSOHNBczFYUzh3dzBlaVczbFpsdjJwVWFxOVpTeVhnTS14b2NTOS1ueXRaWGtWWlUwX2dDVXJBV0ZKNG5XdW9oTGM1RkkyRWFQNWR0SXVWa3dnbXlsR1gtYk9ZeHp3dzVGYmI1V3VEbnJ5aDBMSnVic3Q4VXdLdnl3bk1jQ3duMjZSVTNxQVRudGJubVhJS0FyeGkwMldQVk9oTXdpUWZuX2h1TWk5emp3MEVuaXNWdktNWUNnR2xqNWlGZW5Tc0FKUXBiLUY4bng3OWFJQlJaTUc1a0huUDR5dGxmNm9FTkRsRXNJY21aeEtOdEIzcmJPdVROYUhLTXZBNmxSNzlMMDJZSTZrcEdrUUZnaHpIaTBjTWkwbFdCejRTM1AzUEMzZElZSVlQZ0Q2S05kT2FLWHkta0dWdUlsWFNmVlVrMnpzM0NBeTJhZEJjV0NMV094ZkRoQnlwNTl4MHpBRExvdnZySHRLOWF6TGN3N0lTbVl6eUhYMkpobVdReUYtTFd1VzhfcW41SkFVYlB5Z0RTRDYyMi1PTGZQVDZmc2VTWUVBUTFLVWRwZTFnSV9hZWxVT3FaRWN1aE5SckU1YUp0LTN5TEVLVWZIWXF6WTlGbHJrUE5MUC03Y2xRbmEySEhfZmMzZV9LTGtGUDFhQTJjM0RVaERseGhsTzB2bFVmV0c5eXpXaDNZN0NmRFlFMlBaUzZBcFBlYy0wa1NDcEVKMmtCcnFzWG4yeDJDX0FDdTdCTTVGZXNJQkN0M2NqSEdQSVVQRnEteGVmT0RCXzBQcXZDTXpBOHg5Zm10Ny1sNHhVQlJaa0dtZExhZFoxVzdFUXRNRVpsSWMtbDF1V1UzTU15cFZpVWR0OWxJUHVQVUEwc1NrbWxrTGhNSjgyNE5QN0hyVi01dC1ZNDcxaWVKMHdEUjFxMmU4MU8yazdNeTFlTDY3TlY4OVBHYU81SVR5WG1ueUVXMGtVbl9qa3l1UVRkV3dsS09HZVZIYkJWNFpxSXZHWjdQUS02TEE5eXc3a0dyZFRhVFZXOEdOOV9GY1c2VUhjbzA0U3dqTzY2S2x4VlFJWWpBdEZPZlBjWW5xNzF1RndyQS1UZHVDZG1sUFBHOVpjc2tiQmdrbF8wVk90dmhuc0pwYXZKZ2Zka0d3OF9qMkQzd0Jzemd0VndHNk9nNW16eVFwM2pFc0w3UmNtcXd6WFBOaDdKYXdHVDBJMlRvZHYyQ1Z3MDkzWjJlODFXR1NxRnlIejAxdjFBaGN2T2VWdmFjUGM2Y1JJaVduNW93ZF80d2FBdjlyNjVVdmtWa1FLRXpHUmo5eTZILXdZTTMyV1JyMzBlOU9MRTNKUU5POV9kNjRTRmIwSjZHa2VxUmtnNkVXc2xqN1JYLVU1VlhrS1BtMzNpS3c5dGU2NVBqQUNnZThRVDBYVWZEaUx5a1pGeUdpZ09ZMS1TVDFxUlE1eUhMTXhEc3BPRjFXd1lMQ2c2b3hocTlWMm55Z0U1cUJ2ZnYyWUtFaDdjM1dWNjJrYkw3UXJ2d0xkMHVRZ1FwYmUza3E3dGJzcC1lNWlud3cyY0YxQzByeHNScGZJRHlJMmg4b2xHMi1RQUZkWmtlMUlmaE1FZmNfdUdXX2pqSGJSWXVzYnZCRnpKMDdaOVJsVnFMR1A2WXBnTDFsRTFOY09xUVJyYVdxckdDTWZ6SzZMVENQSl93aHJRam9WTzdVRDJIUEVnUjZ2S3U3cWlmTmo3UjE5OUJuRi1EZmlnbk1TYTFKZkZadDNuVXVZOEhMUXRoUzN4MUMxOE50d3dsaDVuNGxYS3d5MERHenljbVNweE05QkdPNTFRckFmSXRfY0xHbUlzMlJ4MzMyeDRIdEZ3Z05nRzFBazNIUno4TlJ4V3lhNWhjb1NoYURXekhES2gyOVp3Vm4wYXVzeWJpal9uNlFGcnZZbjRSOHdPNlRQV3FrS09JcHkxc1lQNWxyNDc1anZSRVZGaFdCWDBiUXdJdnNlM0Q0a0dFQzgzU3FWYkhxY3phZTNwOFNxaG5tQW5ZYzBIbWp4clJfZUMzT0hYVFBGUFZmNDlVWHdrQjIwY1lvcjJ1dzBaTzJ2TUg3S1QwcjBSWDBQVy1qcGpORFpjSGRSNVVCMXFacGlWLWxaYkw0eF9IZW14aWUxY0RPOHNQSXhIOElUSWtOV0tTR1N2eWdraHBBbGl2RzVEZXJObElkeFE2c0tHQ3RtMDEyT2xjN2thaVFaNHh0TjR5ZVpPU2xyS0s0OTlIcWhObzhkNTNsbFFfMW5ncWlHbzhUSDlzWkFrclYwclc3dkJOSF92UlhBdTc2MnlpZGhZUURYYXJXSEFUMm9DU2hEN1lOdnotekoyZGtEajJMcW5CdFNCWFh5T2xsM3o0ZWFITDd2MDZ1QTgxMVBKQU5YZUdoenNaNFVQQUQ2Q0E4cGlxSHB4WGkxODRHNEJETVU4S2VHeHZLWnJiUlNOT2pTOFNrQUJKZERfSklIZ1RhNEFhNzdPUmNZcVY3OWZ5djFZVHNma2lLR2NUYzZIUjZzUVpsamt2U0NQNjdtTTRGUHRqTHlfX1pDQlNwdnRSVWd5UlpNM1dSOUViNHkxa29uRG4zUjMzN2lpSzdfbGtIa1UtZ21VbUpZUVdnUjYzT01pZUdRUHdNR3BSZXlRWE5yckJVTDN2Z2JYdjlac1ZDcDh1NHRwQjBleXJvUXgxZC1KSWJvOWVyR1VlX0ZzU1Fpd0tIaGFIUk02Nzh5dENkcHJFbDBWeG92TFVrX0xNcTFjN1R4MG5jbFl2WE4yUjhEMXNhU2FibkJSd19CU2tZMFNMSXdhb2RpY2o2ZzdLd0ZfMXB2eThhNF9LbnJNLUNkenBvdHA0aTd4QUJuY2JRVUEwWkpsYlp1elRpR0F4ZjFnclk1Z0dZOTVoWi1XZG1lOWlSazBHRTJGN3d4MlJyLUVvS3lZRjNjak0xMWt6MWFmME9fNFdyOXJoU3JrX1NHU3l2a3ZCTW9NZ0xOX0tSS1BlTjlqUnpwRlVST2VnN2NCbGlhdy1odnZhY2lCeDN2UWRqTE5jTldQdU1UbzVmME1QbmU4TUtXcFBoWjBySElMaEVuYW1pcG82X3pzNjczcE9ma09FS0JWWE9mUDEzR0UwS25SWTBab2JPLWRub254LVdBY1dodFZvX08xbkwwTWE5ZXFMMURhRGhJU0JNbVRIM1hkY2dDTnF0emIwcVMtS1l5Mk9zRzZOakRDVEM1aEI3MXIwU09WMUprNFV2QjdYemxTTW9YUXJnTzF2ZFVwSGtxaVhUM1RJZmlQMWRKcDEweDlSMlp5R0lzUzljQUtNMEZyMGRxQmJmQy16NTJpcWZweW4zUVVqb1Fld2hPYnJwUEZGOF9lUmVNRlIwSXZjUkxnMHpwek56UzU1N1pkQkZhemxNTThLcnkwN2QyUDAyTnZtclUtN1ZjOW8wZm1qem9WOHVVTG9PMkJHdmFRdnFJNmtBTmQ5VWo1X2JkY2NVUzBhcklzcGFZa1UtUXQtNnQxYU5YUUdGZEtUbFMwSVowek54bkNIZWRySEE4SkYtOFg3d1ZpRW1McXJQbU1Sd25sbWx3SnhxLVlReWMydmdUallSbUxCVU5TS3VrZkJsa2VnMmlCRWdySksxVlNyRWswX0ZvOXkzV1EwVlZuNXhEZXlGc1JuWDI4Tkl6alFQLVNXaHhYbzdPYm5YY1cxZHlWNE1fYjdzM096cEMwOTJWcGZYQkpaTDhBeHgxNGY2TmJzTEpXLW95VEdsaTJFb2FCZHJKQ2JkQlNOdWJlbGdRRmU2V2hqSjRGdlNrYVJISjFTT3ltbGFtQmYwaVNDOGM2X1g2SkZORjNmOXYuQjc5SDJvbVIyTU52SndydHVzclJ4UQ" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/CreateCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/CreateCertificate-example.json new file mode 100644 index 000000000000..3981088aa212 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/CreateCertificate-example.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "selfSignedCert01", + "api-version": "7.2-preview", + "parameters": { + "policy": { + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=*.microsoft.com", + "sans": { + "dns_names": [ + "onedrive.microsoft.com", + "xbox.microsoft.com" + ] + } + }, + "issuer": { + "name": "Self" + } + } + } + }, + "responses": { + "202": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/selfSignedCert01/pending", + "issuer": { + "name": "Self" + }, + "csr": "MIIC4zCCAcsCAQAwGjEYMBYGA1UEAwwPKi5taWNyb3NvZnQuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqe8aINnShK+wQC8QU7fwsviQc9+yiOnqU3adXA6qNjn21HTdRBa7cyQIk1STxHIBLTT/GaEJwqsUi6UvZaPEHokOWsr1bP9M7xOPTicBcRyMrr6bOxsmGczYtu1z2TzzXDD7q7IEignE7/LowGEaIADCIU9iuWk7TiJ+1Q/VLh/B3xPsgVjY+n7zEQ53gBiDHSl7XfELfwmslOQ28TVNogUyXsxHcVxQQYJeI7HqqY448LeleK69Ld86lkBixLEm1pD7HSbEx3WI2lyUQAGR6hD3YFaiIWVpQeEyI7p1jmtQlnfZdEL4q9wdlEEcwd3h3PAZpEBhCixahF54fci3pwIDAQABoIGDMIGABgkqhkiG9w0BCQ4xczBxMA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwNQYDVR0RBC4wLIIWb25lZHJpdmUubWljcm9zb2Z0LmNvbYISeGJveC5taWNyb3NvZnQuY29tMAkGA1UdEwQCMAAwDQYJKoZIhvcNAQELBQADggEBACiLeghirF+yCuYGVUPDB3wKQJn2iLY1za9ncxCehIVqOkFK09AphzoxF6Yid90AKCaa/dT/Ohm7oTyVQ+YcZnT00LUNFVG48AOE8YDiw9tjAG9OORsAz80xnv2qaLw2TCVIQ6NjrI83LqAm1GJ8rAnpdD/ZTuWM7TvSO5g/jm/Q0oSuKpMgj3YxpwgB9Ac6YEfVzOnm76OkUcpvR5MS4BoTfRv4thdSnU+uwqxM+HtdSVTbHQeC2U/hM1cyzDMpl1rZRklmiEOoPUeDasEIBVTJhAxR8xAeKJJD7Wzj4mJPw4UMvF8zQZzW8EKYvB1hkVYY+HQ85L+XcXd8lco7hU4=", + "cancellation_requested": false, + "status": "inProgress", + "status_details": "Pending certificate created. Certificate request is in progress. This may take some time based on the issuer provider. Please check again later.", + "request_id": "6faacd568ab049a2803861e8dd3ae21f" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/CreateKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/CreateKey-example.json new file mode 100644 index 000000000000..7eac406d7eb2 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/CreateKey-example.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "CreateSoftKeyTest", + "api-version": "7.2-preview", + "parameters": { + "kty": "RSA", + "key_size": 2048, + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "attributes": {}, + "tags": { + "purpose": "unit test", + "test name ": "CreateGetDeleteKeyTest" + } + } + }, + "responses": { + "200": { + "body": { + "key": { + "kid": "https://myvault.vault.azure.net/keys/CreateSoftKeyTest/78deebed173b48e48f55abf87ed4cf71", + "kty": "RSA", + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "n": "2HJAE5fU3Cw2Rt9hEuq-F6XjINKGa-zskfISVqopqUy60GOs2eyhxbWbJBeUXNor_gf-tXtNeuqeBgitLeVa640UDvnEjYTKWjCniTxZRaU7ewY8BfTSk-7KxoDdLsPSpX_MX4rwlAx-_1UGk5t4sQgTbm9T6Fm2oqFd37dsz5-Gj27UP2GTAShfJPFD7MqU_zIgOI0pfqsbNL5xTQVM29K6rX4jSPtylZV3uWJtkoQIQnrIHhk1d0SC0KwlBV3V7R_LVYjiXLyIXsFzSNYgQ68ZjAwt8iL7I8Osa-ehQLM13DVvLASaf7Jnu3sC3CWl3Gyirgded6cfMmswJzY87w", + "e": "AQAB" + }, + "attributes": { + "enabled": true, + "created": 1493942451, + "updated": 1493942451, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "purpose": "unit test", + "test name ": "CreateGetDeleteKeyTest" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteCertificate-example.json new file mode 100644 index 000000000000..63633ad93b96 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteCertificate-example.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "importCert01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "recoveryId": "https://myvault.vault.azure.net/deletedcertificates/importCert01", + "deletedDate": 1493938558, + "scheduledPurgeDate": 1501714558, + "id": "https://myvault.vault.azure.net/certificates/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "kid": "https://myvault.vault.azure.net/keys/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "sid": "https://myvault.vault.azure.net/secrets/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "cer": "MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1493938557, + "updated": 1493938557, + "recoveryLevel": "Recoverable+Purgeable" + }, + "policy": { + "id": "https://myvault.vault.azure.net/certificates/importCert01/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Unknown" + }, + "attributes": { + "enabled": true, + "created": 1493938557, + "updated": 1493938557 + } + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteCertificateContacts-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteCertificateContacts-example.json new file mode 100644 index 000000000000..1a79b1304ccb --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteCertificateContacts-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/contacts", + "contacts": [ + { + "email": "admin@contoso.com", + "name": "John Doe", + "phone": "1111111111" + }, + { + "email": "admin@contoso2.com", + "name": "Johnathan Doeman", + "phone": "2222222222" + } + ] + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteCertificateIssuer-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteCertificateIssuer-example.json new file mode 100644 index 000000000000..431121987593 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteCertificateIssuer-example.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "issuer-name": "issuer01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer01", + "provider": "Test", + "credentials": { + "account_id": "keyvaultuser" + }, + "org_details": { + "admin_details": [ + { + "first_name": "John", + "last_name": "Doe", + "email": "admin@microsoft.com", + "phone": "4255555555" + } + ] + }, + "attributes": { + "enabled": true, + "created": 1482188806, + "updated": 1482189526 + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteCertificateOperation-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteCertificateOperation-example.json new file mode 100644 index 000000000000..ab8aa73dc458 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteCertificateOperation-example.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "deletedRequestedCert01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/deletedRequestedCert01/pending", + "issuer": { + "name": "issuer03" + }, + "csr": "MIIC4zCCAcsCAQAwGjEYMBYGA1UEAwwPKi5taWNyb3NvZnQuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApf+kGcL+5uivj/ToYbQ15zcx3caEnpzXaX2eJgL0/Kwaz4u2/bNJ9+hoXnlOFFbCp4canVoNvgu8fw5NOu9U3gJNFQwjHeAqfsg8okZGkIk0riIpp4MMb/4GQb2y3B28AcTu2FANdzLoZzBqmQs51KBe1RONkdtqDYXIvnb5G+9+P7PCy5G//Ga0JAP6Y6P8+TrE9JLEj6Sny0ljLMpMyt4rIRAtNfKYSeiWVQmYX4jZfImIW3iq91zwMsRlrzTm80mNfHPCv7V/8NmYuh0MQgCr49lLbbKCgzDyo9h8sblVQvR5TAylpIk7bSQNf4tSdVNHnsF6CJWu6Pg31hyMpQIDAQABoIGDMIGABgkqhkiG9w0BCQ4xczBxMA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwNQYDVR0RBC4wLIIWb25lZHJpdmUubWljcm9zb2Z0LmNvbYISeGJveC5taWNyb3NvZnQuY29tMAkGA1UdEwQCMAAwDQYJKoZIhvcNAQELBQADggEBAHVjmYFs3FmecaJ1ExhK1WCFJaQJUTVbPJ1xJ93UJlLivhzI1yhQO9nMC2DKV+E+UCxceqjae6OG5LUhXfYAziS0HTc80+ZcUqrZRb5ZRt+8HU0TPbTDDqjj8wMZ4VlgQ3eXGAGesMfZV3AqWwa5itofvqm8KAmL4Yn/XMSHcKfRx3h9WnC6RXgZ8WNYK+r5o+gHlmuF7/AaNFh8UjIsjjOZQ0Yin/vA4yBEYTt1/OC7pScs3bdL9CIf4rC98qaMSf4B2W/vfrXUo0gGPYcep25jy7xnIltSY80Trn3Mty5YQ0IT+KPQcJKhbryGg6bIy4jJDwS7zkn51MR1q3kNoOA=", + "cancellation_requested": false, + "status": "inProgress", + "status_details": "Pending certificate created. Certificate request is in progress. This may take some time based on the issuer provider. Please check again later.", + "request_id": "b88791e33d9c4d609d3e3cc3d2d40d11" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteKey-example.json new file mode 100644 index 000000000000..d108bd70c52d --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteKey-example.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "CreateSoftKeyTest", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "recoveryId": "https://myvault.vault.azure.net/deletedkeys/CreateSoftKeyTest", + "deletedDate": 1493942452, + "scheduledPurgeDate": 1501718452, + "key": { + "kid": "https://myvault.vault.azure.net/keys/CreateSoftKeyTest/78deebed173b48e48f55abf87ed4cf71", + "kty": "RSA", + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "n": "2HJAE5fU3Cw2Rt9hEuq-F6XjINKGa-zskfISVqopqUy60GOs2eyhxbWbJBeUXNor_gf-tXtNeuqeBgitLeVa640UDvnEjYTKWjCniTxZRaU7ewY8BfTSk-7KxoDdLsPSpX_MX4rwlAx-_1UGk5t4sQgTbm9T6Fm2oqFd37dsz5-Gj27UP2GTAShfJPFD7MqU_zIgOI0pfqsbNL5xTQVM29K6rX4jSPtylZV3uWJtkoQIQnrIHhk1d0SC0KwlBV3V7R_LVYjiXLyIXsFzSNYgQ68ZjAwt8iL7I8Osa-ehQLM13DVvLASaf7Jnu3sC3CWl3Gyirgded6cfMmswJzY87w", + "e": "AQAB" + }, + "attributes": { + "enabled": true, + "created": 1493942451, + "updated": 1493942451, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "purpose": "unit test", + "test name ": "CreateGetDeleteKeyTest" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteRoleAssignments-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteRoleAssignments-example.json new file mode 100644 index 000000000000..317d74658f8f --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteRoleAssignments-example.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "scope": "keys", + "roleAssignmentName": "roleAssignmentName", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "roleDefinitionId": "/keys/providers/Microsoft.Authorization/roleDefinitions/roleDefinitionId", + "principalId": "principalId", + "scope": "/keys" + }, + "id": "/keys/providers/Microsoft.Authorization/roleAssignments/roleAssignmentId", + "type": "Microsoft.Authorization/roleAssignments", + "name": "roleAssignmentId" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteSecret-example.json new file mode 100644 index 000000000000..d3bfeae2b89a --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/DeleteSecret-example.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "GetDeletedSecretTest", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "recoveryId": "https://myvault.vault.azure.net/deletedsecrets/GetDeletedSecretTest", + "deletedDate": 1493938433, + "scheduledPurgeDate": 1501714433, + "id": "https://myvault.vault.azure.net/secrets/GetDeletedSecretTest/b595353d9c39413d80626575b3b5d865", + "attributes": { + "enabled": true, + "created": 1493938433, + "updated": 1493938433, + "recoveryLevel": "Recoverable+Purgeable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/FullBackup-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/FullBackup-example.json new file mode 100644 index 000000000000..94db87470eab --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/FullBackup-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "azureStorageBlobContainerUri": { + "storageResourceUri": "https://myaccount.blob.core.windows.net/sascontainer/sasContainer", + "token": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D" + }, + "api-version": "7.2-preview" + }, + "responses": { + "202": { + "headers": { + "Retry-After": 5, + "Azure-AsyncOperation": "https://myvault.vault.azure.net/backup/45aacd568ab049a2803861e8dd3ae21f/pending" + }, + "body": { + "status": "InProgress", + "statusDetails": "Full backup is in progress", + "azureStorageBlobContainerUri": "https://myaccount.blob.core.windows.net/sascontainer/fullbackup-pool-61e8dd3ae21f-1579243113", + "jobId": "45aacd568ab049a2803861e8dd3ae21f", + "startTime": 1490790000, + "endTime": 0 + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/FullBackup-pending-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/FullBackup-pending-example.json new file mode 100644 index 000000000000..9396af3e5d5d --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/FullBackup-pending-example.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "jobId": "45aacd568ab049a2803861e8dd3ae21f", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "status": "InProgress", + "statusDetails": "Full backup is in progress", + "azureStorageBlobContainerUri": "https://myaccount.blob.core.windows.net/sascontainer/.fullbackup-pool-61e8dd3ae21f-1579243113", + "jobId": "45aacd568ab049a2803861e8dd3ae21f", + "startTime": 1490790000, + "endTime": 0 + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/FullRestore-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/FullRestore-example.json new file mode 100644 index 000000000000..cd9c7278ab29 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/FullRestore-example.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "restoreBlobDetails": { + "sasTokenParameters": { + "storageResourceUri": "https://myaccount.blob.core.windows.net/sascontainer/sasContainer", + "token": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D" + }, + "folderToRestore": "1490790332" + }, + "api-version": "7.2-preview" + }, + "responses": { + "202": { + "headers": { + "Retry-After": 5, + "Azure-AsyncOperation": "https://myvault.vault.azure.net/restore/45aacd568ab049a2803861e8dd3ae21f/pending" + }, + "body": { + "status": "InProgress", + "statusDetails": "Full restore is in progress", + "jobId": "45aacd568ab049a2803861e8dd3ae21f", + "startTime": 1490790000, + "endTime": 0 + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/FullRestore-pending-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/FullRestore-pending-example.json new file mode 100644 index 000000000000..70786dedfba1 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/FullRestore-pending-example.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "jobId": "45aacd568ab049a2803861e8dd3ae21f", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "status": "InProgress", + "statusDetails": "Full restore is in progress", + "jobId": "45aacd568ab049a2803861e8dd3ae21f", + "startTime": 1490790000, + "endTime": 0 + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificate-example.json new file mode 100644 index 000000000000..cea282bca125 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificate-example.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "selfSignedCert01", + "certificate-version": "pending", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/selfSignedCert01/f60f2a4f8ae442cfb41ca2090bd4b769", + "kid": "https://myvault.vault.azure.net/keys/selfSignedCert01/f60f2a4f8ae442cfb41ca2090bd4b769", + "sid": "https://myvault.vault.azure.net/secrets/selfSignedCert01/f60f2a4f8ae442cfb41ca2090bd4b769", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "cer": "MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1493938289, + "updated": 1493938291, + "recoveryLevel": "Recoverable+Purgeable" + }, + "policy": { + "id": "https://myvault.vault.azure.net/certificates/selfSignedCert01/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Unknown" + }, + "attributes": { + "enabled": true, + "created": 1493938289, + "updated": 1493938291 + } + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateContacts-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateContacts-example.json new file mode 100644 index 000000000000..1a79b1304ccb --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateContacts-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/contacts", + "contacts": [ + { + "email": "admin@contoso.com", + "name": "John Doe", + "phone": "1111111111" + }, + { + "email": "admin@contoso2.com", + "name": "Johnathan Doeman", + "phone": "2222222222" + } + ] + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateIssuer-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateIssuer-example.json new file mode 100644 index 000000000000..431121987593 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateIssuer-example.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "issuer-name": "issuer01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer01", + "provider": "Test", + "credentials": { + "account_id": "keyvaultuser" + }, + "org_details": { + "admin_details": [ + { + "first_name": "John", + "last_name": "Doe", + "email": "admin@microsoft.com", + "phone": "4255555555" + } + ] + }, + "attributes": { + "enabled": true, + "created": 1482188806, + "updated": 1482189526 + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateIssuers-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateIssuers-example.json new file mode 100644 index 000000000000..f37e64c8288f --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateIssuers-example.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer01", + "provider": "Test" + }, + { + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer02", + "provider": "Test" + }, + { + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer03", + "provider": "Test" + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateOperation-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateOperation-example.json new file mode 100644 index 000000000000..696d07122254 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateOperation-example.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "selfSignedCert01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/selfSignedCert01/pending", + "issuer": { + "name": "Self" + }, + "csr": "MIIC4zCCAcsCAQAwGjEYMBYGA1UEAwwPKi5taWNyb3NvZnQuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqe8aINnShK+wQC8QU7fwsviQc9+yiOnqU3adXA6qNjn21HTdRBa7cyQIk1STxHIBLTT/GaEJwqsUi6UvZaPEHokOWsr1bP9M7xOPTicBcRyMrr6bOxsmGczYtu1z2TzzXDD7q7IEignE7/LowGEaIADCIU9iuWk7TiJ+1Q/VLh/B3xPsgVjY+n7zEQ53gBiDHSl7XfELfwmslOQ28TVNogUyXsxHcVxQQYJeI7HqqY448LeleK69Ld86lkBixLEm1pD7HSbEx3WI2lyUQAGR6hD3YFaiIWVpQeEyI7p1jmtQlnfZdEL4q9wdlEEcwd3h3PAZpEBhCixahF54fci3pwIDAQABoIGDMIGABgkqhkiG9w0BCQ4xczBxMA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwNQYDVR0RBC4wLIIWb25lZHJpdmUubWljcm9zb2Z0LmNvbYISeGJveC5taWNyb3NvZnQuY29tMAkGA1UdEwQCMAAwDQYJKoZIhvcNAQELBQADggEBACiLeghirF+yCuYGVUPDB3wKQJn2iLY1za9ncxCehIVqOkFK09AphzoxF6Yid90AKCaa/dT/Ohm7oTyVQ+YcZnT00LUNFVG48AOE8YDiw9tjAG9OORsAz80xnv2qaLw2TCVIQ6NjrI83LqAm1GJ8rAnpdD/ZTuWM7TvSO5g/jm/Q0oSuKpMgj3YxpwgB9Ac6YEfVzOnm76OkUcpvR5MS4BoTfRv4thdSnU+uwqxM+HtdSVTbHQeC2U/hM1cyzDMpl1rZRklmiEOoPUeDasEIBVTJhAxR8xAeKJJD7Wzj4mJPw4UMvF8zQZzW8EKYvB1hkVYY+HQ85L+XcXd8lco7hU4=", + "cancellation_requested": false, + "status": "inProgress", + "status_details": "Pending certificate created. Certificate request is in progress. This may take some time based on the issuer provider. Please check again later.", + "request_id": "6faacd568ab049a2803861e8dd3ae21f" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificatePolicy-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificatePolicy-example.json new file mode 100644 index 000000000000..5df0ab3fea31 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificatePolicy-example.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "updateCert01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/updateCert01/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Unknown" + }, + "attributes": { + "enabled": true, + "created": 1482188947, + "updated": 1482188947 + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateVersions-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateVersions-example.json new file mode 100644 index 000000000000..083dd8b8fa81 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificateVersions-example.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "listVersionsCert01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "https://myvault.vault.azure.net/certificates/listVersionsCert01/002ade539442463aba45c0efb42e3e84", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1482189534, + "updated": 1482189534 + } + }, + { + "id": "https://myvault.vault.azure.net/certificates/listVersionsCert01/7fcb3e9eb8bf43f3a6ff4b9c3740801d", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1482189532, + "updated": 1482189532 + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificates-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificates-example.json new file mode 100644 index 000000000000..984bc1bb79e0 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetCertificates-example.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "https://myvault.vault.azure.net/certificates/listCert01", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1482188987, + "updated": 1482188987 + } + }, + { + "id": "https://myvault.vault.azure.net/certificates/listCert02", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1482188988, + "updated": 1482188988 + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedCertificate-example.json new file mode 100644 index 000000000000..4a71c5d3c017 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedCertificate-example.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "getDeletedCert", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "recoveryId": "https://myvault.vault.azure.net/deletedcertificates/getDeletedCert", + "deletedDate": 1493938292, + "scheduledPurgeDate": 1501714292, + "id": "https://myvault.vault.azure.net/certificates/getDeletedCert/f60f2a4f8ae442cfb41ca2090bd4b769", + "kid": "https://myvault.vault.azure.net/keys/getDeletedCert/f60f2a4f8ae442cfb41ca2090bd4b769", + "sid": "https://myvault.vault.azure.net/secrets/getDeletedCert/f60f2a4f8ae442cfb41ca2090bd4b769", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "cer": "MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1493938289, + "updated": 1493938291, + "recoveryLevel": "Recoverable+Purgeable" + }, + "policy": { + "id": "https://myvault.vault.azure.net/certificates/getDeletedCert/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Unknown" + }, + "attributes": { + "enabled": true, + "created": 1493938289, + "updated": 1493938291 + } + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedCertificates-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedCertificates-example.json new file mode 100644 index 000000000000..c53660f9f66b --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedCertificates-example.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2-preview", + "maxresults": 1 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "recoveryId": "https://myvault.vault.azure.net/deletedcertificates/listdeletedcerttest0", + "deletedDate": 1493937659, + "scheduledPurgeDate": 1501713659, + "id": "https://myvault.vault.azure.net/certificates/listdeletedcerttest0", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1493937658, + "updated": 1493937658, + "recoveryLevel": "Recoverable+Purgeable" + } + } + ], + "nextLink": "https://myvault.vault.azure.net:443/deletedcertificates?api-version=7.2&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExMTIhTURBd01ETTVJV05sY25ScFptbGpZWFJsTDB4SlUxUkVSVXhGVkVWRVEwVlNWRlJGVTFRd0wxQlBURWxEV1NFd01EQXdNamdoT1RrNU9TMHhNaTB6TVZReU16bzFPVG8xT1M0NU9UazVPVGs1V2lFLSIsIlRhcmdldExvY2F0aW9uIjowfQ&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedKey-example.json new file mode 100644 index 000000000000..d108bd70c52d --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedKey-example.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "CreateSoftKeyTest", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "recoveryId": "https://myvault.vault.azure.net/deletedkeys/CreateSoftKeyTest", + "deletedDate": 1493942452, + "scheduledPurgeDate": 1501718452, + "key": { + "kid": "https://myvault.vault.azure.net/keys/CreateSoftKeyTest/78deebed173b48e48f55abf87ed4cf71", + "kty": "RSA", + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "n": "2HJAE5fU3Cw2Rt9hEuq-F6XjINKGa-zskfISVqopqUy60GOs2eyhxbWbJBeUXNor_gf-tXtNeuqeBgitLeVa640UDvnEjYTKWjCniTxZRaU7ewY8BfTSk-7KxoDdLsPSpX_MX4rwlAx-_1UGk5t4sQgTbm9T6Fm2oqFd37dsz5-Gj27UP2GTAShfJPFD7MqU_zIgOI0pfqsbNL5xTQVM29K6rX4jSPtylZV3uWJtkoQIQnrIHhk1d0SC0KwlBV3V7R_LVYjiXLyIXsFzSNYgQ68ZjAwt8iL7I8Osa-ehQLM13DVvLASaf7Jnu3sC3CWl3Gyirgded6cfMmswJzY87w", + "e": "AQAB" + }, + "attributes": { + "enabled": true, + "created": 1493942451, + "updated": 1493942451, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "purpose": "unit test", + "test name ": "CreateGetDeleteKeyTest" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedKeys-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedKeys-example.json new file mode 100644 index 000000000000..d82110ee6656 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedKeys-example.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2-preview", + "maxresults": 1, + "$skiptoken": "eyJOZXh0TWFya2VyIjoiMiE5MiFNREF3TURJeklXdGxlUzlNU1ZOVVJFVk1SVlJGUkV0RldWUkZVMVF3SVRBd01EQXlPQ0V5TURFM0xUQTFMVEEwVkRJeU9qRTJPakF5TGpnM09URXpOemxhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "recoveryId": "https://myvault.vault.azure.net/deletedkeys/listdeletedkeytest0", + "deletedDate": 1493938031, + "scheduledPurgeDate": 1501714031, + "kid": "https://myvault.vault.azure.net/keys/listdeletedkeytest0", + "attributes": { + "enabled": true, + "created": 1493938031, + "updated": 1493938031, + "recoveryLevel": "Recoverable+Purgeable" + } + } + ], + "nextLink": "https://myvault.vault.azure.net:443/deletedkeys?api-version=7.2&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExMzYhTURBd01EVTJJV3RsZVM5TVNWTlVSRVZNUlZSRlJFdEZXVlJGVTFRd0x6RkRRa0ZGTkVaQk5qQTBNelJGTmtZNE9FUXdORE5GTkRFM09FUkNPVFE1SVRBd01EQXlPQ0V5TURFM0xUQTFMVEEwVkRJeU9qUTNPakU1TGpVeU1UZ3dPVEZhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedSecret-example.json new file mode 100644 index 000000000000..d3bfeae2b89a --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedSecret-example.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "GetDeletedSecretTest", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "recoveryId": "https://myvault.vault.azure.net/deletedsecrets/GetDeletedSecretTest", + "deletedDate": 1493938433, + "scheduledPurgeDate": 1501714433, + "id": "https://myvault.vault.azure.net/secrets/GetDeletedSecretTest/b595353d9c39413d80626575b3b5d865", + "attributes": { + "enabled": true, + "created": 1493938433, + "updated": 1493938433, + "recoveryLevel": "Recoverable+Purgeable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedSecrets-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedSecrets-example.json new file mode 100644 index 000000000000..e612053cbbbc --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetDeletedSecrets-example.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2-preview", + "maxresults": 1, + "$skiptoken": "eyJOZXh0TWFya2VyIjoiMiExMDAhTURBd01ESTVJWE5sWTNKbGRDOU1TVk5VUkVWTVJWUkZSRk5GUTFKRlZGUkZVMVF3SVRBd01EQXlPQ0V5TURFM0xUQTFMVEEwVkRFNU9qSTFPakU0TGpJNE5qUXdORFZhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "recoveryId": "https://myvault.vault.azure.net/deletedsecrets/listdeletedsecrettest0", + "deletedDate": 1493937855, + "scheduledPurgeDate": 1501713855, + "contentType": "plainText", + "id": "https://myvault.vault.azure.net/secrets/listdeletedsecrettest0", + "attributes": { + "enabled": true, + "created": 1493937855, + "updated": 1493937855, + "recoveryLevel": "Recoverable+Purgeable" + } + } + ], + "nextLink": "https://myvault.vault.azure.net:443/deletedsecrets?api-version=7.2&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExNDQhTURBd01EWXlJWE5sWTNKbGRDOU1TVk5VUkVWTVJWUkZSRk5GUTFKRlZGUkZVMVF3THpZMU16ZERSRVJGTlRJNU5qUkRSa1pDTVRkQ1JVWXhORGszUXpSQ1JEZEVJVEF3TURBeU9DRXlNREUzTFRBMUxUQTBWREl5T2pRME9qUXdMamsxTnpZeE1UbGFJUS0tIiwiVGFyZ2V0TG9jYXRpb24iOjB9&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetKey-example.json new file mode 100644 index 000000000000..3cf36eaaff9b --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetKey-example.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "CreateSoftKeyTest", + "key-version": "78deebed173b48e48f55abf87ed4cf71", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "key": { + "kid": "https://myvault.vault.azure.net/keys/CreateSoftKeyTest/78deebed173b48e48f55abf87ed4cf71", + "kty": "RSA", + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "n": "2HJAE5fU3Cw2Rt9hEuq-F6XjINKGa-zskfISVqopqUy60GOs2eyhxbWbJBeUXNor_gf-tXtNeuqeBgitLeVa640UDvnEjYTKWjCniTxZRaU7ewY8BfTSk-7KxoDdLsPSpX_MX4rwlAx-_1UGk5t4sQgTbm9T6Fm2oqFd37dsz5-Gj27UP2GTAShfJPFD7MqU_zIgOI0pfqsbNL5xTQVM29K6rX4jSPtylZV3uWJtkoQIQnrIHhk1d0SC0KwlBV3V7R_LVYjiXLyIXsFzSNYgQ68ZjAwt8iL7I8Osa-ehQLM13DVvLASaf7Jnu3sC3CWl3Gyirgded6cfMmswJzY87w", + "e": "AQAB" + }, + "attributes": { + "enabled": true, + "created": 1493942451, + "updated": 1493942451, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "purpose": "unit test", + "test name ": "CreateGetDeleteKeyTest" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetKeyVersions-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetKeyVersions-example.json new file mode 100644 index 000000000000..52729f0da174 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetKeyVersions-example.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "listkeyversionstest", + "api-version": "7.2-preview", + "maxresults": 1, + "$skiptoken": "eyJOZXh0TWFya2VyIjoiMiExMzYhTURBd01EVTJJV3RsZVM5TVNWTlVTMFZaVmtWU1UwbFBUbE5VUlZOVUx6ZERPVVJETmpjM05VUXdSVFF4TnpjNE1qZERORVk1T0VZME9ESkdRekV5SVRBd01EQXlPQ0U1T1RrNUxURXlMVE14VkRJek9qVTVPalU1TGprNU9UazVPVGxhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "kid": "https://myvault.vault.azure.net/keys/listkeyversionstest/7c9dc6775d0e4177827c4f98f482fc12", + "attributes": { + "enabled": true, + "created": 1493937851, + "updated": 1493937851, + "recoveryLevel": "Recoverable+Purgeable" + } + } + ], + "nextLink": "https://myvault.vault.azure.net:443/keys/listkeyversionstest/versions?api-version=7.2&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExMzYhTURBd01EVTJJV3RsZVM5TVNWTlVTMFZaVmtWU1UwbFBUbE5VUlZOVUwwRXdPRUZDUVVVNE1UZ3pNalF5TVRsQ05EUXpPREZFTWpoRVJURkdSVEJESVRBd01EQXlPQ0U1T1RrNUxURXlMVE14VkRJek9qVTVPalU1TGprNU9UazVPVGxhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetKeys-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetKeys-example.json new file mode 100644 index 000000000000..3985f554ef70 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetKeys-example.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2-preview", + "maxresults": 1, + "$skiptoken": "eyJOZXh0TWFya2VyIjoiMiE4MCFNREF3TURFMElXdGxlUzlUUkV0VVJWTlVTMFZaSVRBd01EQXlPQ0V5TURFM0xUQXlMVEUzVkRBd09qQXhPakEyTGpnd056azBOemhhSVEtLSIsIlRhcmdldExvY2F0aW9uIjowfQ" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "kid": "https://myvault.vault.azure.net/keys/sdktestkey", + "attributes": { + "enabled": true, + "created": 1493937656, + "updated": 1493937656, + "recoveryLevel": "Recoverable+Purgeable" + } + } + ], + "nextLink": "https://myvault.vault.azure.net:443/keys?api-version=7.2&$skiptoken=eyJOZXh0TWFya2VyIjoiMiE5NiFNREF3TURJM0lXdGxlUzlWVUVSQlZFVkxSVmxCVkZSU1NVSlZWRVZUVkVWVFZDRXdNREF3TWpnaE1qQXhOeTB3TlMwd05GUXdNVG94TVRveE5pNDNNekE0TnpReVdpRS0iLCJUYXJnZXRMb2NhdGlvbiI6MH0&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetRoleAssignments-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetRoleAssignments-example.json new file mode 100644 index 000000000000..317d74658f8f --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetRoleAssignments-example.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "scope": "keys", + "roleAssignmentName": "roleAssignmentName", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "roleDefinitionId": "/keys/providers/Microsoft.Authorization/roleDefinitions/roleDefinitionId", + "principalId": "principalId", + "scope": "/keys" + }, + "id": "/keys/providers/Microsoft.Authorization/roleAssignments/roleAssignmentId", + "type": "Microsoft.Authorization/roleAssignments", + "name": "roleAssignmentId" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetSecret-example.json new file mode 100644 index 000000000000..021ff12af60b --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetSecret-example.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "mysecretname", + "secret-version": "4387e9f3d6e14c459867679a90fd0f79", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "value": "mysecretvalue", + "id": "https://myvault.vault.azure.net/secrets/mysecretname/4387e9f3d6e14c459867679a90fd0f79", + "attributes": { + "enabled": true, + "created": 1493938410, + "updated": 1493938410, + "recoveryLevel": "Recoverable+Purgeable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetSecretVersions-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetSecretVersions-example.json new file mode 100644 index 000000000000..f6c80c664df1 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetSecretVersions-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "listsecretversionstest", + "api-version": "7.2-preview", + "maxresults": 1 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "https://myvault.vault.azure.net/secrets/listsecretversionstest/11a536561da34d6b8b452d880df58f3a", + "attributes": { + "enabled": true, + "created": 1481851699, + "updated": 1481851699 + } + } + ], + "nextLink": "https://myvault.vault.azure.net:443/secrets/listsecretversionstest/versions?api-version=7.2&$skiptoken=eyJOZXh0TWFya2VyIjoiMiExNDQhTURBd01EWXlJWE5sWTNKbGRDOU1TVk5VVTBWRFVrVlVWa1ZTVTBsUFRsTlVSVk5VTHpGRU5EazJNa0l4UlVRM09EUkVRa1k0T1RsR016TXpNa1UwTnpZNFFqY3dJVEF3TURBeU9DRTVPVGs1TFRFeUxUTXhWREl6T2pVNU9qVTVMams1T1RrNU9UbGFJUS0tIiwiVGFyZ2V0TG9jYXRpb24iOjB9&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetSecrets-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetSecrets-example.json new file mode 100644 index 000000000000..ed29be2d6983 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/GetSecrets-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2-preview", + "maxresults": 1 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "contentType": "plainText", + "id": "https://myvault.vault.azure.net/secrets/listsecrettest0", + "attributes": { + "enabled": true, + "created": 1482189047, + "updated": 1482189047 + } + } + ], + "nextLink": "https://myvault.vault.azure.net:443/secrets?api-version=7.2&$skiptoken=eyJOZXh0TWFya2VyIjoiMiE4OCFNREF3TURJeUlYTmxZM0psZEM5TVNWTlVVMFZEVWtWVVZFVlRWREVoTURBd01ESTRJVEl3TVRZdE1USXRNVGxVTWpNNk1UQTZORFV1T0RneE9ERXhNRm9oIiwiVGFyZ2V0TG9jYXRpb24iOjB9&maxresults=1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/ImportCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/ImportCertificate-example.json new file mode 100644 index 000000000000..9f7ab9b35836 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/ImportCertificate-example.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "importCert01", + "api-version": "7.2-preview", + "parameters": { + "value": "MIIJOwIBAzCCCPcGCSqGSIb3DQEHAaCCCOgEggjkMIII4DCCBgkGCSqGSIb3DQEHAaCCBfoEggX2MIIF8jCCBe4GCyqGSIb3DQEMCgECoIIE/jCCBPowHAYKKoZIhvcNAQwBAzAOBAj15YH9pOE58AICB9AEggTYLrI+SAru2dBZRQRlJY7XQ3LeLkah2FcRR3dATDshZ2h0IA2oBrkQIdsLyAAWZ32qYR1qkWxLHn9AqXgu27AEbOk35+pITZaiy63YYBkkpR+pDdngZt19Z0PWrGwHEq5z6BHS2GLyyN8SSOCbdzCz7blj3+7IZYoMj4WOPgOm/tQ6U44SFWek46QwN2zeA4i97v7ftNNns27ms52jqfhOvTA9c/wyfZKAY4aKJfYYUmycKjnnRl012ldS2lOkASFt+lu4QCa72IY6ePtRudPCvmzRv2pkLYS6z3cI7omT8nHP3DymNOqLbFqr5O2M1ZYaLC63Q3xt3eVvbcPh3N08D1hHkhz/KDTvkRAQpvrW8ISKmgDdmzN55Pe55xHfSWGB7gPw8sZea57IxFzWHTK2yvTslooWoosmGxanYY2IG/no3EbPOWDKjPZ4ilYJe5JJ2immlxPz+2e2EOCKpDI+7fzQcRz3PTd3BK+budZ8aXX8aW/lOgKS8WmxZoKnOJBNWeTNWQFugmktXfdPHAdxMhjUXqeGQd8wTvZ4EzQNNafovwkI7IV/ZYoa++RGofVR3ZbRSiBNF6TDj/qXFt0wN/CQnsGAmQAGNiN+D4mY7i25dtTu/Jc7OxLdhAUFpHyJpyrYWLfvOiS5WYBeEDHkiPUa/8eZSPA3MXWZR1RiuDvuNqMjct1SSwdXADTtF68l/US1ksU657+XSC+6ly1A/upz+X71+C4Ho6W0751j5ZMT6xKjGh5pee7MVuduxIzXjWIy3YSd0fIT3U0A5NLEvJ9rfkx6JiHjRLx6V1tqsrtT6BsGtmCQR1UCJPLqsKVDvAINx3cPA/CGqr5OX2BGZlAihGmN6n7gv8w4O0k0LPTAe5YefgXN3m9pE867N31GtHVZaJ/UVgDNYS2jused4rw76ZWN41akx2QN0JSeMJqHXqVz6AKfz8ICS/dFnEGyBNpXiMRxrY/QPKi/wONwqsbDxRW7vZRVKs78pBkE0ksaShlZk5GkeayDWC/7Hi/NqUFtIloK9XB3paLxo1DGu5qqaF34jZdktzkXp0uZqpp+FfKZaiovMjt8F7yHCPk+LYpRsU2Cyc9DVoDA6rIgf+uEP4jppgehsxyT0lJHax2t869R2jYdsXwYUXjgwHIV0voj7bJYPGFlFjXOp6ZW86scsHM5xfsGQoK2Fp838VT34SHE1ZXU/puM7rviREHYW72pfpgGZUILQMohuTPnd8tFtAkbrmjLDo+k9xx7HUvgoFTiNNWuq/cRjr70FKNguMMTIrid+HwfmbRoaxENWdLcOTNeascER2a+37UQolKD5ksrPJG6RdNA7O2pzp3micDYRs/+s28cCIxO//J/d4nsgHp6RTuCu4+Jm9k0YTw2Xg75b2cWKrxGnDUgyIlvNPaZTB5QbMid4x44/lE0LLi9kcPQhRgrK07OnnrMgZvVGjt1CLGhKUv7KFc3xV1r1rwKkosxnoG99oCoTQtregcX5rIMjHgkc1IdflGJkZzaWMkYVFOJ4Weynz008i4ddkske5vabZs37Lb8iggUYNBYZyGzalruBgnQyK4fz38Fae4nWYjyildVfgyo/fCePR2ovOfphx9OQJi+M9BoFmPrAg+8ARDZ+R+5yzYuEc9ZoVX7nkp7LTGB3DANBgkrBgEEAYI3EQIxADATBgkqhkiG9w0BCRUxBgQEAQAAADBXBgkqhkiG9w0BCRQxSh5IAGEAOAAwAGQAZgBmADgANgAtAGUAOQA2AGUALQA0ADIAMgA0AC0AYQBhADEAMQAtAGIAZAAxADkANABkADUAYQA2AGIANwA3MF0GCSsGAQQBgjcRATFQHk4ATQBpAGMAcgBvAHMAbwBmAHQAIABTAHQAcgBvAG4AZwAgAEMAcgB5AHAAdABvAGcAcgBhAHAAaABpAGMAIABQAHIAbwB2AGkAZABlAHIwggLPBgkqhkiG9w0BBwagggLAMIICvAIBADCCArUGCSqGSIb3DQEHATAcBgoqhkiG9w0BDAEGMA4ECNX+VL2MxzzWAgIH0ICCAojmRBO+CPfVNUO0s+BVuwhOzikAGNBmQHNChmJ/pyzPbMUbx7tO63eIVSc67iERda2WCEmVwPigaVQkPaumsfp8+L6iV/BMf5RKlyRXcwh0vUdu2Qa7qadD+gFQ2kngf4Dk6vYo2/2HxayuIf6jpwe8vql4ca3ZtWXfuRix2fwgltM0bMz1g59d7x/glTfNqxNlsty0A/rWrPJjNbOPRU2XykLuc3AtlTtYsQ32Zsmu67A7UNBw6tVtkEXlFDqhavEhUEO3dvYqMY+QLxzpZhA0q44ZZ9/ex0X6QAFNK5wuWxCbupHWsgxRwKftrxyszMHsAvNoNcTlqcctee+ecNwTJQa1/MDbnhO6/qHA7cfG1qYDq8Th635vGNMW1w3sVS7l0uEvdayAsBHWTcOC2tlMa5bfHrhY8OEIqj5bN5H9RdFy8G/W239tjDu1OYjBDydiBqzBn8HG1DSj1Pjc0kd/82d4ZU0308KFTC3yGcRad0GnEH0Oi3iEJ9HbriUbfVMbXNHOF+MktWiDVqzndGMKmuJSdfTBKvGFvejAWVO5E4mgLvoaMmbchc3BO7sLeraHnJN5hvMBaLcQI38N86mUfTR8AP6AJ9c2k514KaDLclm4z6J8dMz60nUeo5D3YD09G6BavFHxSvJ8MF0Lu5zOFzEePDRFm9mH8W0N/sFlIaYfD/GWU/w44mQucjaBk95YtqOGRIj58tGDWr8iUdHwaYKGqU24zGeRae9DhFXPzZshV1ZGsBQFRaoYkyLAwdJWIXTi+c37YaC8FRSEnnNmS79Dou1Kc3BvK4EYKAD2KxjtUebrV174gD0Q+9YuJ0GXOTspBvCFd5VT2Rw5zDNrA/J3F5fMCk4wOzAfMAcGBSsOAwIaBBSxgh2xyF+88V4vAffBmZXv8Txt4AQU4O/NX4MjxSodbE7ApNAMIvrtREwCAgfQ", + "pwd": "123", + "policy": { + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "kid": "https://myvault.vault.azure.net/keys/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "sid": "https://myvault.vault.azure.net/secrets/importCert01/f00e72f0ddee4dddadc27c0f605d84d7", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "cer": "MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1493938557, + "updated": 1493938557, + "recoveryLevel": "Recoverable+Purgeable" + }, + "policy": { + "id": "https://myvault.vault.azure.net/certificates/importCert01/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Unknown" + }, + "attributes": { + "enabled": true, + "created": 1493938557, + "updated": 1493938557 + } + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/ImportKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/ImportKey-example.json new file mode 100644 index 000000000000..4899bda68da6 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/ImportKey-example.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "ImportSoftKeyTest", + "api-version": "7.2-preview", + "parameters": { + "key": { + "kty": "RSA", + "n": "nKAwarTrOpzd1hhH4cQNdVTgRF-b0ubPD8ZNVf0UXjb62QuAk3Dn68ESThcF7SoDYRx2QVcfoMC9WCcuQUQDieJF-lvJTSer1TwH72NBovwKlHvrXqEI0a6_uVYY5n-soGt7qFZNbwQLdWWA6PrbqTLIkv6r01dcuhTiQQAn6OWEa0JbFvWfF1kILQIaSBBBaaQ4R7hZs7-VQTHGD7J1xGteof4gw2VTiwNdcE8p5UG5b6S9KQwAeET4yB4KFPwQ3TDdzxJQ89mwYVi_sgAIggN54hTq4oEKYJHBOMtFGIN0_HQ60ZSUnpOi87xNC-8VFqnv4rfTQ7nkK6XMvjMVfw", + "e": "AQAB", + "d": "GeT1_D5LAZa7qlC7WZ0DKJnOth8kcPrN0urTEFtWCbmHQWkAad_px_VUpGp0BWDDzENbXbQcu4QCCdf4crve5eXt8dVI86OSah-RpEdBq8OFsETIhg2Tmq8MbYTJexoynRcIC62xAaCmkFMmu931gQSvWnYWTEuOPgmD2oE_F-bP9TFlGRc69a6MSbtcSRyFTsd5KsUr40QS4zf2W4kZCOWejyLuxk88SXgUqcJx86Ulc1Ol1KkTBLadvReAZCyCMwKBlNRGw46BU_iK0vK7rTD9fmEd639Gjti6eLpnyQYpnVe8uGgwVU1fHBkAKyapWoEG6VMhMntcrvgukKLIsQ", + "dp": "ZGnmWx-Nca71z9a9vvT4g02iv3S-3kSgmhl8JST09YQwK8tfiK7nXnNMtXJi2K4dLKKnLicGtCzB6W3mXdLcP2SUOWDOeStoBt8HEBT4MrI1psCKqnBum78WkHju90rBFj99amkP6UeQy5EASAzgmKQu2nUaUnRV0lYP8LHMCkE", + "dq": "dtpke0foFs04hPS6XYLA5lc7-1MAHfZKN4CkMAofwDqPmRQzCxpDJUk0gMWGJEdU_Lqfbg22Py44cci0dczH36NW3UU5BL86T2_SPPDOuyX7kDscrIJCdowxQCGJHGRBEozM_uTL46wu6UnUIv7m7cuGgodJyZBcdwpo6ziFink", + "qi": "Y9KD5GaHkAYmAqpOfAQUMr71QuAAaBb0APzMuUvoEYw39PD3_vJeh9HZ15QmJ8zCX10-nlzUB-bWwvK-rGcJXbK4pArilr5MiaYv7e8h5eW2zs2_itDJ6Oebi-wVbMhg7DvUTBbkCvPhhIedE4UlDQmMYP7RhzVVs7SfmkGs_DQ", + "p": "v1jeCPnuJQM2PW2690Q9KJk0Ulok8VFGjkcHUHVi3orKdy7y_TCIWM6ZGvgFzI6abinzYbTEPKV4wFdMAwvOWmawXj5YrsoeB44_HXJ0ak_5_iP6XXR8MLGXbd0ZqsxvAZyzMj9vyle7EN2cBod6aenI2QZoRDucPvjPwZsZotk", + "q": "0Yv-Dj6qnvx_LL70lUnKA6MgHE_bUC4drl5ZNDDsUdUUYfxIK4G1rGU45kHGtp-Qg-Uyf9s52ywLylhcVE3jfbjOgEozlSwKyhqfXkLpMLWHqOKj9fcfYd4PWKPOgpzWsqjA6fJbBUMYo0CU2G9cWCtVodO7sBJVSIZunWrAlBc" + }, + "tags": { + "purpose": "unit test" + } + } + }, + "responses": { + "200": { + "body": { + "key": { + "kid": "https://myvault.vault.azure.net/keys/ImportSoftKeyTest/2eb4a15d74184c6f84159c3ca90f0f4b", + "kty": "RSA", + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "n": "nKAwarTrOpzd1hhH4cQNdVTgRF-b0ubPD8ZNVf0UXjb62QuAk3Dn68ESThcF7SoDYRx2QVcfoMC9WCcuQUQDieJF-lvJTSer1TwH72NBovwKlHvrXqEI0a6_uVYY5n-soGt7qFZNbwQLdWWA6PrbqTLIkv6r01dcuhTiQQAn6OWEa0JbFvWfF1kILQIaSBBBaaQ4R7hZs7-VQTHGD7J1xGteof4gw2VTiwNdcE8p5UG5b6S9KQwAeET4yB4KFPwQ3TDdzxJQ89mwYVi_sgAIggN54hTq4oEKYJHBOMtFGIN0_HQ60ZSUnpOi87xNC-8VFqnv4rfTQ7nkK6XMvjMVfw", + "e": "AQAB" + }, + "attributes": { + "enabled": true, + "created": 1493942691, + "updated": 1493942691, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "purpose": "unit test" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/ListRoleAssignments-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/ListRoleAssignments-example.json new file mode 100644 index 000000000000..315956103c44 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/ListRoleAssignments-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "scope": "keys", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "roleDefinitionId": "/keys/providers/Microsoft.Authorization/roleDefinitions/roleDefinitionId", + "principalId": "principalId", + "scope": "/keys" + }, + "id": "/keys/providers/Microsoft.Authorization/roleAssignments/roleAssignmentId", + "type": "Microsoft.Authorization/roleAssignments", + "name": "roleAssignmentId" + } + ] + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/ListRoleDefinitions-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/ListRoleDefinitions-example.json new file mode 100644 index 000000000000..63f7a352e33e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/ListRoleDefinitions-example.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "scope": "keys", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "roleName": "Role name", + "type": "roletype", + "description": "Role description", + "assignableScopes": [ + "/keys" + ], + "permissions": [ + { + "actions": [ + "get" + ], + "notActions": [] + } + ] + }, + "id": "/keys/providers/Microsoft.Authorization/roleDefinitions/roleDefinitionId", + "type": "Microsoft.Authorization/roleDefinitions", + "name": "roleDefinitionId" + } + ] + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/MergeCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/MergeCertificate-example.json new file mode 100644 index 000000000000..db516527c986 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/MergeCertificate-example.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "testcert", + "api-version": "7.2-preview", + "parameters": { + "x5c": [ + "MIICxTCCAb....trimmed for brevitiy...EPAQj8=" + ] + } + }, + "responses": { + "201": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/mycert1/f366e1a9dd774288ad84a45a5f620352", + "kid": "https:// mykeyvault.vault.azure.net/keys/mycert1/f366e1a9dd774288ad84a45a5f620352", + "sid": " mykeyvault.vault.azure.net/secrets/mycert1/f366e1a9dd774288ad84a45a5f620352", + "cer": "……de34534……", + "x5t": "n14q2wbvyXr71Pcb58NivuiwJKk", + "attributes": { + "enabled": true, + "exp": 1530394215, + "nbf": 1435699215, + "created": 1435699919, + "updated": 1435699919 + }, + "policy": { + "id": "https:// mykeyvault.vault.azure.net/certificates/mycert1/policy", + "key_props": { + "exportable": false, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=Mycert1", + "ekus": [ + "1.3.6.1.5.5.7.3.1", + "1.3.6.1.5.5.7.3.2" + ], + "validity_months": 12 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Unknown" + }, + "attributes": { + "enabled": true, + "created": 1435699811, + "updated": 1435699811 + } + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/PurgeDeletedCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/PurgeDeletedCertificate-example.json new file mode 100644 index 000000000000..0de37263e68c --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/PurgeDeletedCertificate-example.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "deletedcertificates", + "api-version": "7.2-preview" + }, + "responses": { + "204": {} + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/PurgeDeletedKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/PurgeDeletedKey-example.json new file mode 100644 index 000000000000..b33e3aae3817 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/PurgeDeletedKey-example.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "testdeletedkey", + "api-version": "7.2-preview" + }, + "responses": { + "204": {} + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/PurgeDeletedSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/PurgeDeletedSecret-example.json new file mode 100644 index 000000000000..f2e055ade934 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/PurgeDeletedSecret-example.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "testsecret", + "api-version": "7.2-preview" + }, + "responses": { + "204": {} + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/PutRoleAssignments-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/PutRoleAssignments-example.json new file mode 100644 index 000000000000..88d12b135657 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/PutRoleAssignments-example.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "scope": "keys", + "roleAssignmentName": "roleAssignmentName", + "parameters": { + "properties": { + "roleDefinitionId": "/keys/providers/Microsoft.Authorization/roleDefinitions/roleDefinitionId", + "principalId": "principalId" + } + }, + "api-version": "7.2-preview" + }, + "responses": { + "201": { + "body": { + "properties": { + "roleDefinitionId": "/keys/providers/Microsoft.Authorization/roleDefinitions/roleDefinitionId", + "principalId": "principalId", + "scope": "/keys" + }, + "id": "/keys/providers/Microsoft.Authorization/roleAssignments/roleAssignmentId", + "type": "Microsoft.Authorization/roleAssignments", + "name": "roleAssignmentId" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RecoverDeletedCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RecoverDeletedCertificate-example.json new file mode 100644 index 000000000000..86c587612d5b --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RecoverDeletedCertificate-example.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "CertCreateDeleteRecoverPurgeTest", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/CertCreateDeleteRecoverPurgeTest/9ff2572a2c3145679057da8b7f6a4b1d", + "kid": "https://myvault.vault.azure.net/keys/CertCreateDeleteRecoverPurgeTest/9ff2572a2c3145679057da8b7f6a4b1d", + "sid": "https://myvault.vault.azure.net/secrets/CertCreateDeleteRecoverPurgeTest/9ff2572a2c3145679057da8b7f6a4b1d", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "cer": "MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1493938486, + "updated": 1493938486, + "recoveryLevel": "Recoverable+Purgeable" + }, + "policy": { + "id": "https://myvault.vault.azure.net/certificates/CertCreateDeleteRecoverPurgeTest/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Unknown" + }, + "attributes": { + "enabled": true, + "created": 1493938486, + "updated": 1493938486 + } + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RecoverDeletedKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RecoverDeletedKey-example.json new file mode 100644 index 000000000000..4faeb016849e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RecoverDeletedKey-example.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "CreateDeleteRecoverPurgeTest", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "key": { + "kid": "https://myvault.vault.azure.net/keys/CreateDeleteRecoverPurgeTest/6fc2be54c6be4a7ea7bbb8a2a99a1996", + "kty": "RSA", + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "n": "v-SWMCmPNKoK_rB_pNXUl6Iwh9Kqd3XzQlh6SXi_slBishqP7pyKEFjNbUvMSlyvPt21rJupLbJr-yhsK2Rq2V6O0doGuCsoadgNGih1aVAuUJAJls1-b-G1IJjD18ArM4RitnCvJmQFqyK2RVHa3EpEfaQW4gcRrsRAhiJDjc1L1S3skdt-E_rZfL7DIh1ZtqFyQAqIWSAG0BXDdbgfEx1kJKqH-HRokDKeMCIaJtKZof6e-DJr3e9Iy8aAR7V-BsZ7vY7JMjyeEukMzEji4MEsIyOESL67DgFllDEi4OM_3WKyxr6uXxzHDzmppWsk2ykLsYA_ALLnR3ZNZCuL9Q", + "e": "AQAB" + }, + "attributes": { + "enabled": true, + "created": 1493938342, + "updated": 1493938342, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "purpose": "unit test", + "test name ": "CreateDeleteRecoverPurgeTest" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RecoverDeletedSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RecoverDeletedSecret-example.json new file mode 100644 index 000000000000..8af235e108f3 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RecoverDeletedSecret-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "SecretCreateDeleteRecoverPurgeTest", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/secrets/SecretCreateDeleteRecoverPurgeTest/16f5f7feb7004280b7f3b8ac50cd01f9", + "attributes": { + "enabled": true, + "created": 1493937960, + "updated": 1493937960, + "recoveryLevel": "Recoverable+Purgeable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RestoreCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RestoreCertificate-example.json new file mode 100644 index 000000000000..2fd0d194e664 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RestoreCertificate-example.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "parameters": { + "value": "JkF6dXJlS2V5VmF1bHRLZXlCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUkwTXpnMVlqQTNZaTFrTlRRM0xUUXlaVFV0WVdVNVpTMDJNVEJrWXpNNVpHWmhaamdpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLm85bmpNWEFSZWVla2NaRXBsVTNjdUxQcVZlWmxFbGRDM01XOWpYR0h6bnBXRTdHRGVOSXJraGZscHdTWXFnQnBYQkozMFpUQkRpRmpROENXSnJfUGlsUWNDRkZyN0xrdWJhWUs0TW1zcVh5WGIzbkRJcUJkQmZIUVNpZ1ZET0J5Ym9sUlRNNDYzYjBTbXhLVzJheEdFS2NuZzQ5WFkycG1SR0Vrb0plcHJWZ0tyRkpOUGQ3cGJIS3hQSWdDOFlnT2xudnZxR280RlRDSzh0ZWotcUt2UzBfRGV6Uk5vdTZqZ25SekpxX0g2NGxWMk1hQ0NnUy0xbTlyOGVOTVVvSlhTV1hwc0lneng1RzdEbzIya1ZEY25vMW9rajlCMXNvbklkWmtuY1JybDJBVHNRZVlzZXdkUVd1VmhxRzVLN0pNQWo5YzBRdkxhTmlpdl9PY2pFcm5qUS4zbmI4azJ3SEcyNHFJelNNb184WG13LnJzc3NMNjJ1aUNfTm9IbG5zQlgzcEEtck1uY3g5R3V2NmJYSHpKamxwOWNMUnVaSDBSWlJYVXRwU3BPQWdyZ20tU3BxeEdWSjd2bmprbV9FSzJwYy1sZHNjUWtRSDB4bVFVcGZFNzN5b1VTYTNXVVNMS2VIVnJLdUg5MUtJR0tLODE5ejc5d1Y5Y0F3UjlzcHJxbFFWZnlKdlNFM2tnZTh1RVBpRFFVMFl5WnJqVjBsMGJCU3VkeTN1MVlsVHB6Wk1EWmpUcE05ZGtMclgtaGdxZ1FGa2xFa1hNRWlzd0RDZVM3Y3J2bFg1bnVzbWh5SkZCMklCd3dxNWJieHptV1diU3JOc3lFMmJmWEpXOWN4TFlQcnJJZFpfbkd0X29RSGVQcUFZTS1iVnpTdzdBRGJjMU15NTZwclBGLW9PSm40MHptOTBaaFBTVGMyQXNKRGFBa3R5WFU4WktOYUhFVUlHLWI1SGhUdFBuZ20wN0FrWEtQNngwaDhzZ3ZIaGdCeGpfdWRfQVpQc3pLWG1HdUhFTW9lRGhpT3NkQVdRR0pwR2t0NHVlbmZyamNSeXVlaXJiTC1RV3o4MEtZUnk1QklxbzVJc19RVHpWN2dqMGstYS0td24tazNsNTJ4YjhaNkRXd2tWZ3hqUlNXOXZnV0pVd2U5M1ZrVWtHM3NLRW5SOE9ueTNjWlhQVl9LbWtBTEdlR0ZzQm53SmQwY3dueTBCN2I5VWQyQ19kWEZ0N1BvbnFVNldfT016cC1Nb1NtRzRHbEFpUkVfQ3FrWlhkalhIMVItSmpObUNfdXlPUTdaN1BVaDAtNmd2YUxpcE1CamlWR1FwdzlEZDhmVmtCbWk4VW5uOUxPYXJmSXVtcEJyUE43TTJhM05KdjN6b0NkanhZVFVUMTN1aElpYWl3aExoUFZhT2pUbFRmTkpqbHhIbG5lbGJ1RWJsZTk0bVV1bW8wcjhKRlFMSDdfRjhXMVo0OC1BcjhYYXJwMXhIY0FReHk1WWYwclktdUU1dTAyRnRHUHlPZ0JfNV9WdFlNR2VfRE1mdENLOGVMZGFnVllMRDJDNDUxTldZeVVfeHdNUWdQbXBaMWFnSEdCb2s0ejhsSFBndVhCQ3R2WFFuTHBXQTVBamdOLWNoWjNwUGJmc2RkNjBhekJuWDVaVXQza2hYaWNDdWk4b0xidEtzQUdmckNOZzFwT2Q0MHBHMEJlVy1lNVE1WWQydjY4eFh5a2RiTXhFblFCM3Fzd1djVlh1QXBIR18wREZVVmZvSlc2aVBZcDNWVE51amM5M3QtMDcxWnlZbUZ4V0RfVThMYTAtM19RLV8yZ0pwMVBaVV8tMVBRM1huLXdSWk1vb3JkZGZQa1VPZ0lqdWkwa1IwZWt5RjZvdWdLNnJrSVZHaGp3YUp0ekdKczJLdGxncnRCcEs2MXZEaE5zbFR5VHU5OUp2T2RFTXhwRG5lTEg4NnlvVnhxT3lIT3lxNjByXzdpTHgtdy03Q3FzWTloT3dmQlBZZ3BQVlM2bm9oZVBocTkwaGJTX0lrM21YbnRkRUNMREtSMi1wWFh6bjlPRjZIN09EdHB4S0VXQkdCaHJ0Ykxmd2JZS3dmWmZSVTJVUHpkLUxFd1lQdDloU203Z3lSODNoYkZiSFNBV1cySncxRWl1c3FURWRsRW1lQ3k2cFp1MVFZWko0TUQ0OG5rVXMwdmVHUVhTU2Ytb2RhQm1fYjZZdVh1cWcyWk03MlZjUTd4ZzV4MmpFenFqcllmdjdTTGJINFZBcWp0aFg5LUdRaWEwWEZaS18xempIenhkd1B0R2lSOHJfMkFFZTgtRXFoNi1FaTZKdjRFZjYyMnRrNWFJUWx3R1pETWpGSVNuUkpRdV8xcnJiY1E3enZsbWhUSWFQcUJNRFVxeHBEOXNWUlhuSHdIaTl1b1BCUTllbWJIMkV5WDV6MEhWRXlDa1JEbUd3cmR2RGdsOFVzMUhURjVwYXlYZmF2WkZUZjl3WFZyQXpsRFBEQkFJVFMzWnVJMEJWR2pJUGV1SnRiako4S1pTczRFQVNRRTVyVjViTUpNQXcwa19nYkVRTEZGSjJVb0ZzcWU1QUszM2xGXzR5cGMxU0JaWjJfUzYtbEQyNkpyRFVJSjFFRmJhbWtoUk12bWJIT1Utc0hDT0lRcHdadlJzV3Q3NExSQ1ZyQ09jMGpUdE5TT1JPUW5XRHVXRlFXSzk1TkRGMG96WjIyLVFEMU9YOE9iU3daaHdOXzNfS1pHRmtVMEhNdzNjSTI5LWUxbFltRDV3cmJ0ZlRFbllOeHJKOGpuUWFBY2FoNy14Q0JKeUQ3elo1MXIzRVVyY2VnazBzc1dLeHRPVjRLcTZENmxuVmU3bFpUT1dfTU5aZi1JSzJUbnZCaVZIMHk0SkVGaUxzSDJHbTM1d28yYlZVaXJsT1ljVEk1NlZhdDhMRWhGaEotVlUyNk84NHo2dUJFZmJucEZLbmdKc3pfYVlucW1zNWV1bmd3ek5ndjdlT0U0cUdKSURyMTRBUXRWdEYxcWdrZHNnVllWVXg4U29SQ0NobE5VUzRNRGxhc1hwS1VmV19ENWIxbDRkbXZiNEZNRHJqakJ6djk5dGJSeGZFYUVOSFlYTHZFZnJ0b0pMeW9na2tmNkxlbVoxVDZRbnRtNlR4S1IycU81WU1vMnRJZHlQNmZNRmkweEYtdE1IaHNSdVN3VEpybW1nREcteHVpZllVNkpfaElSNkMzVmo2VkFMMW1oZy0xeW1pRXZuanVLbElONzc4NmFWdVNpNmx5TjJJNzZqY0R6SHZ0VW1ibkVvWWtORHNPQXdqQk9MNFBlS0VjR1hWcm5YNDJhNW5IRWM2cmZQdjZ0Q2tVSUI0UldIdzEyUTFiNDM2N1JvRS1PTWN3TnV6ampob1M0S1ZJbHo4UEFMOW9YYTR4NXlQeG1aVzZ0UUVna1pKeFhEcS00SWRtd1UzTnpVZUoxdGpNaXFsc0xRWDdlc29fTHRtTWJ3bm83YkI3bjRlVnZ4aUtQU3p3dW94c25aaGs1b3ZSSE1xU0NtZjU2MjJvUTZvWEdmNUJLWExlQWdqaE1Sd21razEtUzlGajlyc1hlT19VYjJOMF9hVEFLemlidXIxNVcxaHI3Wk1PVFlxOFlSSGVPaWxSX3Bkdjl5NTlDRDQ1WmE0ZXFURHVrNmRxZ1d4YnoyVVVtMnpwM3pvTHVKSVZ1Y3FIaUVRTVNfMnFKcy1xQTAwT2FFY3huZTM2Q1RsZVNwZjF5cjh2VjNWNW1mQU5zRnJBa21CMnBRWTNfZ21UbldTYTJ3UWlMa2RFRllPSExTeEk5UVowNHo4ZFRfbW5QMmIwWV96N3ZLa0VGQmFpNU02UFdPWjVIOUx1M3Rnay1fR0g0ODd6ZHpuQm0weWZZY3ZIOHJUd1QyQl9UZVRFMG4xcWFRdDRiQ0diUkFQNE1DTDl0SGlIcmlzWEllejQzZlZ3b1c4R2x4YmxKanlLWkpXbmlRNjlBYks3SmYyUER6d2NVSHhkZU5HNGxEZmt6WmFxU2lybGRzZlhXOHBGLWZ6WFVVWHR4eDF4Um5nQ1hJVkxLbU5ZbV9CNnNrNGo0VzROVFMwQTBOcFhsZGJCWjZWWmFDMDNvRHVGUFY0MGtwdWQ0WEd3Q1l3M244ZjFHb0Z6Sk42QjFqOTRLeTdtNE5YT1JsQ3ZaRW5qZTl6T241T1d1ZG9USWRoRzBobXVDUTZ6TXI2YkVaTUFoV1ZFdlREY19iXzZsOWdLWmVxNmVtekxvcmptOEQzLXcyLXRBYlE2Tmpjd0J3eEhMZzlCRllRRFdvaU9UVmJKN2VBcUVFMHVxVkhBcE9KbFVIc2tmQy1uV3NzOV9fRTFURHBLcjRfRE93NFhPUGNzT3dlVU9EUWg3cVFXRE1ZcDVHU1poVWE4MVVHczhmemZKU3JPbmtaTmRVTS10Y0h3R01mX3didy11dmt4UFUtV0tvNUNqR2M2aU5KMDB4MjZZdUpCWXd6TVFyeDBJQWgxMjVBWlozX2FvaFFpLWw3a1pZVE82Q0JVOVZsYllNMndrZXp4ZGhrQ1oxd080Z1NNbDlKU3A5ejhxNV84SU1WM1pma00xV1VqSGZMQk4xRXdFMjRxZFVzcWxyU3NZN1hQaVlpcXQ5ZktXVmZDTWw4RU0yd2ZHYlhxMUI4eWl2UlpMcko0eEk2MUdVUWJFVGU4akNTYTF2aUxxZ0FIa25IYjVjVHIwbDRhTW1EZGZKWnJxZEdpb1lPb2IwdHBuc3IxanRfZm1obGhJa1NSQnREUk5XWEU1OXBjVXlULXpyVjBxZl9sOHN2TlNEV2N3d09YQ3lITWZzLWw0T29xMldVWTVLQi1nSG1HYUJod0oxa19ra3V2S0hlMl9TY0loc3JjTXV1eW5aLW14Vzl5NHBBS3pvdVFsQjR0ZGZvbHdSRk5KX0tHYWJPZXJiWFdDT0ZTd0JVTjdNaG0wOXNyVS1VWG5od1IwdTYyTjVvMDlfbGN5eThnWDg1ZUVrenhuOGZ2NHd2T0Y2dUd1cFk5UGxpSTRLMTNqSHlOd0ZuY2VmRlp2b0dxVlhkcUg5RGJkYS0zY1FhbVFlNmlMek0wRDlnLXlFc2NBTkpKS3ltelVzemZZdV8yY0p0TEhsd0I3NVhLeW1EMG9nUkRvRkRwTmNPd1dRRUlwdVJwU0pfdWtzR2EwZkd3MGVBTU4tQmc1OUs3emhRWHJISUZOckN1S1VPMVdvTkV5WkM2UGlKSUwtUlRsTFQ2WlBNZmdSZzZiUl9aQk43X2dseHBIakNDaFZXMkZ3MnJFUDJJX1pSeHFqdS1WbmVwV2o4eU1CaHZXZzdXNm9QWm1odmVtUTBkQUljNVZTbVVaelhvNFVURmJxSFN2MGlyVTNscVk2eUl1MGRPd2t2MlF4ZENfQVdRUmdLSGRUeG1xYXFUSXJwclZyUHZ1MDFQSGlFbVRnaDZZVEZ6Yllqb3JEeFExWDhlTUN5Rl80cWNjMnhOdTJRblBIdUR0RGZkSy1NV2xJUDhHUEhSMmhPMjlCa0JJSEM4TlgxZmxDN1ZSZkZsQ09McGVIeWl0MGRSd1d2S2tieGNIWl9fRE5ZLVBNQlZMZGpyR3lxT2JoQnpQZHZMeFpXWVU3THNRbnM1dmxiMTc5YXczX3VmclRIWGs0MVpjaDY2ekFRRl9tekQ3ZEVuMm1fb2tBaTh6NTRwdzdxUDAwNHkzenNPd0RmR0htYWF2c3dGMW5NMUN2YXhXajRINE45dVNUaV9DM1oza3lTRHlUNGdUZjNqc0FKUEJybXdSQVBpaU5PTTU3c0x2Y3dJRk9ENnA5QkdWbjFwbjQyZGRTU3A1M3JieTZEcnlwcHdDaDFrampQX3lCbTZRZnd6MElGUWJiSG1zVDNVa2RMb1dURjFSMF9sbjJtR1kxU0hHT2o3VHl1YnQ5d2xLVW5nczVMTWhVcHo3NU1LR3F6UkFnWXNKcHVKUVl1RVpKeGFPSHNmY2VwakdrcFdoMEtfWkhZUEJESzIwOFVqb3FqMDdlVVVueTBaXzJrNXUxTjQzWGJ3V0ZvWVBhdndheW1MYkhWdkRwbzdwMU9JT1IyNkt0SzdPeGlnZ0ZybGVISWNaODFwQzRCdlNzRnZsY1BCZEpHLTZxWTU0Q3J0R2xhaDRvQWplUXgxWS1YU0NLNnZLYUIwWnZHc2lIajhRQ0ZURjRuLUJqTWIzWDcycDJ5Q0tPRlpMRk5qcVR1aHJoYXNnMi1pWTNOTWdwVEQ5eVBSdjA2X1VpcEVfYjVsQ0R0Mmx5QU5NYVpZR1RvSmJTSVhBcFlyU1hEM1dFWllhTGUzQmFSUEJUYTAyeWpyVFZPRDRGNHRFR3c5MkZJZThOSk5NYXRXMFhPSFAwVWxKTXlQUDF2MVdvOUh5aFllaDFfdWg3SlRLcS1hWnJjOS1Xd0ItQXBKTHBQeGxmRzlGZkgwdjNwSTl0Z1VndWJmSkJQVjMwNll2MlNqQ0M2MmVYN3VFTUgzcXQ3TmFYcFVsNXZEVHpfMF9Vc3VlWERQcDNqV01XQTMwenFaYTRFT0dXdElMb0tEM1RjRWNVcmJONGV1bHFQSkFNcWdWdmk2YWRGdTgxU2w5cU1rVVUwaWpqMjZhZDFaeVlEUUZtWlJ4NjJYUW9ZdG81bXJ0eFZhYWtNNndqbkVPSUdJaHhBTnJoX0dNVzVxREhzMEV6TDU4b3lOY0Q5dE1MUC03N1FCbTZwUTFsR0swMVJ6Y3FzTk14ZzRMTzl2ZHQ3NFpIdEhMXzA1TjF2TUt4TE5GbkdhZmwxN1E0eEM0Z3NQeXpYdzBjcklyV2tIQlNQX0NoWE94SmZORWdyNjJOMXEzQVJZa0U1TVlCbzctM3djb3dNT09GcTlrakN1ZGpoekplRjRTUHdfMnFVWVhZRTZsNXJTYjYwUFlFSkJxdW82Skh5ZmdlOXFJX0Rzdmg4eEY1STJfLWtLT2pxU3FZam02NjU0cXVES3phQ3JWLUJFLWtQNF9DOU5OQ0xTaEVWUV92Z3hYdDhzbTRWNGNRMElDRmFzaWV6VnNuV1QtYmRQTGxBT2RqOS15RmhYVTRUYVF3YnZqQ0E2UHQ0aDNVWGdnQzNqWU5IMmJtRGpYSzhFdFJYRTV6cmJsTDRKMFZ1OGxHQVBZaGtOcGNOakNrNWhSSW5jT0dybE9aUk9jdTdSeVczR2JWM2Y1MGJKN0xLNHJjMnJCMTZuemhBdk41WXlydWdwQzdCOE9OR3NTY25ha1V1alJzRzZGYVpydDNzTDJMOW5RTUNoNE9INFF3VWpKWFZKUFJ2MHhPTF9jVEQtdjk0QWgwbWdtcFJ2Q1dhUkl5MXRxeDZHTmZ1R1Nyb0tObmtHYjRiRE1oblpZMmwxQWluWHlCMG5uRGlvci1EUmo1cjhRZi1iaUR6cGhTallzZTZrakdLR0ZObzU4WjFfaGxEaGFob1pQX1lRdlBtWi1Tb2pNaGhMRXZqMXEyZzZWRVd6a1FDWTdIWVEwM1Y3cHVCVm4yaXM1NXpBSGV4cGpERWoxWDgxWU92bnVTdXRhMGx3VkFEMkRoNjZDcmM2VVh2SEtUZTBCeFlsQWdVdkhQc1BkSy1OdVk4S3RaeGNqTWNDVWM0OVl6VW43RVBTamFNaHJ2Ni1mM0pwc09Na3JwREpLM0dPTUVRMUV4cnhYV1lGaGtLaHR2UXZkMXZCVS12b0pRcWJveU9vS1hMM29Xb0FRVnljWlR3Y2laeW4wbUtkVF96NDNFZGhNcDNKS3N5blJ3OVZtSzk3Q3lldGl5LV9HaWVMSngtWDladVMzOUdNa0YxaFVmYmkyc3FJZGZMZ0diem5uMTluTlRVUDlOR3dhaWhybU9Ib1lZeUJ6WE4tby1UWUxhSS01bkNuQ2FSSW9QTF9XSVhyWDZPSzdZU21IWjk4a2xJS19JNTlPSXlWSllrMVh6bGVwd1lPLXUwU0x6bTEtN0dKSE54RGVOMlZhUEk3TThVem10X0x5alliWWxocFFJQnNyUktsMmZZeExKaGt6Q3NjcWp2bVhDemRLVDNhNFV3NDJ4eDlsOWl6dFQ0UmtnV21fYV9YWWk0b0gwdjNCUXRSZ3NfUTBPaGo2T2Y2dEtyZU5XZmcxVDRjMk01SERJd3UxTkl2QXBqNzZtOXJWQkdPWTZFUnhfa2Y3d2twb1g5dWRvcjBCbEx4a1FCc0lwZXpUdzc1MTBncU81Nm1UWXlBUzFCUVdOY1Q2aWhfN3F4ZTVoUkVlZVB5YUpFMnhqR2JNWGg3V1hGYjN0ejVWVWJOTFpxMjBiM3E0UFdkdjJXX1Foc2VUY0JTRDY1eVFPYndTai1UcVpNNi1teUZHb3B6dVdfRWcxU3pzNzRaY3RMSUxyN3pMLXRyeC1WTTVfVHllMVZXbG9ZOTZVYUJyUktpQWU1SVhKMlBQd2RIY1p4SWx4N3dBRXdueXVOZXA2b2NKcXRwZUJ1elB0LTFaX3UyWjZrQmR4V0lpYlVEaGxOU3AxM1NkTGw0Z2hkemVqZWFaYVllRDVtTGltWWJ4dEhsQ1ZiTm0yNU1ZbDYxMFU3QlZnNVJJSXB6VUdmZ2Z5NnpJRzRLQjBMR3BISzNhdHRRUExvQ1VlTDRYNVdBUUFsb3BRa0RKOU5lTHFGdHN4cWpZaGJnZ1Z5am9ScjNPOVhzYzlJVEtVaXJaUDlyTVl0eFduT0tUck9YYVk2WVR2Wi05QUhpT3ZfdTRhOElTS01DVng3OUlnXzdqTjFfREhjdGd5cEEzVnpkbjNKdlJJQTlfbHZDV2dTSS1NUjlPQ19xekhIUmU5dENqWklDVzhwRURSYVhZOHc4UUQ0bXJicmFLTTNsWmtTNUF2NVp2WjFRTDJlZkExbXlJdmN2czhmekxRUFM0Nm0xX3ZPVzcxN05ydDQzeUcwbUZxZnk4aExaZEUzQ2RkMzRtVVFXWVdqSkdvQXZ0VHBXRmpwWkwwOERjQUd0RzVzdkU0Mi1WWjRqSVVYQ2JsemZaczl3N2VsNThvRkJLUng5dUJLby1PWmYxTVloVEZrSlU1V3YtUEVreXRPSVpfU09nZVM2RTVMTUZsOVpZenZ0QkJuWWF0bDY4NGpEdWx0STh4LXpmSHdwUEFwNk9CQVpxalk3S3JoSVJuVGRoc2Y1VUpCcmtvU1JGUFlaaXE4RjJLWHA2Nm1PbDMyRm5RTVprMUlDVkxiYVpnUFlWNnl5UXpZdEdhbjhOc3BFTG10RWkwMVlTZE1ySUxkUF9TVTZwXzJ1NU1oY0RPMDF0Y2hwMHp6eUVfTVp4YWJodXpMWUVIeXJvYl83cjFKdWNjZUQ4SlM5T3JBdEk1YXdsbEhGSFRRWExOWGJuTHdTQ2JrdHNiTGFoa05ya0ZXR1RDNFRzUlBfYTlHMVhFTE5DRkhaMVhvS3NsQTdMMzFGaWpyNFpEYjRQeW5hT1BrSlhCcEx6MGNLN2FmeFVxNWlySHhZNEQyVkdNT3gwUmc5UEJJeE1vdzN6TmVGZ3Y5dzRTdkJ5VUpQdjNGV3huX004M3g5dldiWFh3bU9LbHlLNVpWQi11LWxKVno5Rm81YWRfVEtwUkxqSGdNWURKNU9Ka2dhaEFQMmhOaG9lb0FicnBPNzVYT2tYZ3pONDdwVW1kdzhmZV9FN3ZSeUREZi1LNVZNS2UzOXRPSi0xRmxtemJVc0pET0lScHp5WVl0Y2Q4cGtPU3JQYnIzMWdJNFRIUjJHV2xwZWJCZ3VhYmppck9UTjI1Zy02MmRPWWVKNHVwNjI3MjdnbWNQWF9EYmJfSFdrTnVLaXBmdkJ1UmVNN2J1WE9LVzg2bllHSW5ZNzJZZ2lvYVpIaEJnY3pHbktuUUlkWTJ2U3NzQ3E2b1FSUGJqeHRQZ1gxT1h2bXNucmNBencwN01ULTNueWF1RDBfNG90RGJueF92dm1fM203ajBwcjBGUWZ6NWs1UEVNUG1sOFVhenFxX2xEU3djV2JOU21JbWF3OWt3U2NXN2xrOUViNTRLRTRhaWt2bVRxXzRuN3lkSDNQblI3bC1RMXE2X2k5VWdHUVFfSmk5UDZQbmszQzd6TTVYbDBpYllEVXVUV2FUdlRrX2ZjaXo0VUJXWkV1T0lLU2xZaHVBVzFQUTJPU3NiUWxPbDU4U3ZvTEYtS2w3TmNkRXRBODJVWjdkLVFCN2xKNWFCcnd0Vmx6TDFxX2Y1UGd6a2NtcW1pLVViM2tUQ0xlNjJYbzN1MmFvSnNTQ0c4bXhwZkJ6dVFVVkk3WXdTa2ktWUtNUnlJSGhuOG9xRDNQS0xMbHk2LVZkZy1VREE1RWhhLXA0TnZYb2lLb3ptRHdBZFFpeG1IcnJTdUEwWmh0eE14N0FSc0pqc285blZKR1BOSzhCeTMtbXQycnNOOHlMdHpyRXdkUzBtLW1sRHRKak9CWHJ1NmhWOFBPeV9vSWVzYmJtWkcxSk96Tkl5YmhPOWdNakpsNTBSQXVmcW1sSXJpOEVXQk9vdzdVT1RKQjgtTkR6VzVXdWNiS0VLOGotdWtSYXhhQklPcTJBTnI1Tl9hTEF2RFpmalp1cDl1RGNTc2FUOTNWR0dmQlhHX1BYRlhGWnNtd2NnamxsQWN3bkhCS2V6QWd3SnprRXpFaEdEOFhQMVh0dXJPZHh2YTRyd2ZtVG1yM1pHVWFmY0tTUm5malpnVERSVThVRFd4ZjRwMjB1T1h5RzBBUzlJLUF6WGN0Nm5EOFVQUlB1WDQ3UG1fN05mdWFVTkt4SEZ2RFdOdWYwcVE1OFlvZmhydjJlRDlzUFJFWV9CWjhXWm9IYy0tbVZ5MmM0aDdvTTUzQlFKbTQzRzNkaXotclRwWE0xUDExakc4em5XU3RBQkJxbW40LXdKVVl1UGpDV0VtY29qdGtRZEZmcjQzRUNqTzE1SDJaZGN6MkphZmpUcmxPdWlQOG96ZjEwa2RTYjBURTFVOXI1dHRIU0ZzOUxPVlZHVjJnQUxjUGtMU3R0clgwMXZHMWZLS1ZTRVI2TzlZM0pZYW02X0FwU2xONnlRbmlqM3NJTzdKc2xYdHhaMzY2bXI2Vnl6WmphajVVODlJSjdJUlY3eXBkOWtuZy1RRlZMT0FhRGU1eENvZG1jRjY4ZGp4LTZBVWpQWnBHOFYxVG04OXh5c3BTaU40M0lmLURacTlaMXFjSXNDOUJ4XzlxTHE2S3kwNTIydnBKWkw4NEdCZElXM0FuUUdKbFY2dkRXbThpcF9LMjg2NG8zcEg4UTdFWnpqc05KZ3p6RFU2SkU2Y2psTVdhMDR5dkVMa2dnUm9feVM1MWUzam1BNUFFdWpXLUJ6TXlzTjVkeUpiZC1HcnN4VFltck1wMWI0dFNhMXV1ZHBSdWl2cUFLdV9qbTBvYTA4UHZqRjJyNjRXYXZQZHVxcUs2VGUtMDc1RkFQNHFEZE5ocmpJSHpneWEtUWowY2NCRWtZbUo3di1mUWxneUxzaF80bHJZQmVyWnNCMDM1Z2Z2b19CakQ0Q1VWVWFTRkRya2U2OE41N1prblU0UkZXN1NNQXViaE93WjlCd1pmT0tuajV3bDhfemRFTDVLVDBQUm5IejRjQk01OTZGNXhleDFORzNqME80Y3JDbzVod0xMMUVwMnVweVlULXpfTkdkT1MwMG50bGt0dnNKMGFZSURuQy1SSDRYcUdBUXlpY3hJVzNnTXh3LUNvYlIyUGdPa1dLTVBJN2xFelNLN0VKcjZkZENmblhHRF9scE9HSXgtUTROdjFOU3E4VGw1dkRtdmdOXzZCOEhHbmV5bXdpQUlJZ3NpWWhfUmR0NnBrdWJLVF92aFkwMTI1WWZkck9NaW9keTFLbEpNR3NJNGxqX1dJYVRHQjdoY1dtY0stMy1NNWlZVnJUSktaR2RZbUFobXI3bkZVT28zWFFCZkVVZFpKb2Itc1R6eDdNYWttd2JEcHdQdHB5OXFQem03akI0ZC1yYmlncDI3azRTYlVFOXNFWTZVeVVJVk80Y2l5R3ltZThpOEdLY2dSWXJ3YTZmVlItTnNvcm16dmd5eGZVcDFGWDZuR0xNbE5VMDNEblBVU0JLT1RWTzVnM2JuNG1DNWI3anBVQnUwQTk5R2ZkTEJGaXg4dURwR2NsQm51TFhncjcyRFdCRmFKeldkZXNZbTlaLWk0WDBaUTh4cVZwdGpXTnI5Sm5sVDlLeDVKZXdRSHZkeXRRdHRaTXc3TS01Unc5UHJreklWd1JPZE5PVkxwRWl5RmVqM3YyZmJGRFVoRmg2ME00NWRMQ0hqU0k5eC15dDZ6LUVtQlBpdGtkcWpUT3hLam1qVV9WNzIta09tVndhZkY3MzdTcVRKa0lpWlVic002bEJoQ3Rxd2cwNi1DelR4U1pMYVgzOF95dE51aUY1S0JfcXVwcU54SGJ4TTVZN0l5SnJUcGR4MG9qNFZzWDlxWkFjTGxCZnRNaTFUSTVLMkJRSERSNW5FY2UwT2J1SWpjdlNrcjNYMmZwUWQ1cHlLdnBXcXpNbnNuQ3NsVnYyWUY5ZDZHVWFKeHlfQ2MzRVJqOXZIMnRJb2hBckh6VzJlN1lNUTRyQnducnowOXc0aWNnNG11TDdVSnVsVnJLcjdJS3FDYjJyWFViTDBIRUVrTUd3T0pISEVnVWxlYzRGajRNQl9ZNnh4SFJuekVKMVVBRXVTeDJaZG9Bd1JsSjMwRHZYTWMxcFo0NWktYXE5eV9oOFJxaUZSUlQwSktjYzFpeFA1Y1JWRmVpbFhKWXN0cDV6X1pKZ1FrSTdCQlBaR0M2bkZ5RC11LWh4MzhQN0IzQjdUUzdoWVlXdm9ETFpGSkI0a1ZGRUhvNlRKdWNDVlpJaEFMdHlfN3dreFFxdU1mMFNOREQtV0FPWUJkY3JpZzZmYnNKSVhvc2lMSWNDM3hOOGw2X1dzNk1UMXdXODZkcWRUWkJnN1Z6YUlnREJ2RDRNakRLdjk2M0k2c3ZmeG5FWWNEQ3dDalo5M2JwUGRJd0htZEY1ZE0xTGZVLTExMktBN3dCQTJWYjU2cFdBMWk2QXo3Z1N6RXhQRkZvVkNBdFlJUnBFcHh5SVBaQUVHV05zeDNpNEk2Z2lyZi1hUmFWejFXUURCemd3ZDd3TlpqV2xrRVlyRFBBZTFPVnl0bU9HQWlGZmZiQWVPaVF0V1lzMHYzVGFTOGcydk9peXRvakE4ZzM2dDQwQTB6T3pKYnlzUUM0Z0hjODJuVDdQUDJBTFdPU0RLTmxSX2M0eHFWTkxjdlhxZHFBNmpVRlBUY1FONzk4U1FRbGprcmd1bzhEcGxTZTBnODl1VHUwV0ttcFltSFA0WEtmeXRGRWlBR1FDSmIwZUl6NVZsTlAyVnFiRGRMcW1JSzhuNVlNSUtDY2ItY0FUdGFoRXU4QkxQcVE2VC1aa2t4MF93M2RmZjhVX3ZCZUFwS090SERMWUVqcTBnVktxUHhaUWczY3RJS2oxdXJPeTIybnJ5aTlnZWZVc2QzZUYyMnBCQkx2YWVWSk96QUZndk5YdnRiTXFsUW1CXzQxNG1tVGVtaGFlNktjOW9KRF9sLUxKWDZPU1FISlo4MHQ4Ql9VZkdacFZES1NubmFmMmY4UHYyMy1EUmlGNlNyQ0ZKN0d4TEhUNXJSNzU2MW1YUlV5Qy1leWtocVI1ZFZSZDZhOVQwSGY0TlZSbjJiaVdxeWhPR2VUa0hKazE0YllOUFdYTm5XSHl1VTdyNEZoOVVsb2lES2xIQjQ0VjlmYS1YMzE0c2VHZHRqUFNLdWhFRHBMeV90VU95aWU3aThJaGNIaE1XOHlFNi1Oa0lZSnF4cU5EbjAwdUkzSEhEUWtGYzFQV0RYdlVIcnBJUFRJcFFBQ3c1dkNWT2JpUmFoQVBJM2tFRFh4ZkY1S2VLMXRuS1hsZWRxQmRIc3lCUkZuNnp6T1p1UHdOWktKNHlYVDhoS2wyamQtNTlqdWpibDBmNF9WdVJFdmVQOW9FWWtTOHU3UmlBVEVHa1lPVkg3MkZXTzBzLVNJWGVRRkQzX3VvWjdrM0xjSm9GVjlXMDZrQUVWY1dURVZGRUlwamtNMy1FYnJSUVdMcy1heWVYQkNFSUxsQ2t0di1LblA2N0pyZFV0bTI2cnFlVXZ5MzdTMTBCTE53YjRiNHBvREhMS2FveGFuZy1iRjZUb29PR01UU01MWXUzaUlLc0R3Wm9kZG1WR0xyQ3FxNWJJR1BFZTNoMnc1RjFNZ1hyVEU2TmFubXpKckh5eHVPc0VyaGctaEpGeGVCcWE4WjZZWFduTXIxNDhLanNoYVAyeVpFSWV6OG81UEc3cWRWaHFRenhYT1c3eEQwSTUycjBvbkhxM1hzcV9SOGhFby1UYVdPbmY1NW1YYTNWMk81LV9XanZxZThWdzdwTUF5dG95dmh2NTVTVk9xcVdkNXNIdGhITzd0OWlMdDNFYVMxX0ZnaU8zVmVENmlvUVBNNjZsWmhaYkpZZHo4b1RFeU9SR09KbkpjSVpqVm1YSlJIbXF2eXZsUlpjdkVMM19KR1hEOEZGNHlBVE0zaGhlNDN6VEJVdk9oYlRjckhNQTRLZjhWczR4cU02QWFsczVBZzRUbVZSSnVLLUVRWFZCaFE0TEpBbEgxVXZzN3lKYTdLM2hsQlZEMWo5WXRWS2htMVhPNFJySTNrZmVxYmxoMTRHQ1NEdnI2OExyTk53SUZsY1JEY1pKalBOQi1GWGhUd25PbW50ZVItOFY0UTJVa19tczdTTm9ZUElWRnJqY1R6X1ZkQ3dYRTFmMjNocHpqQ2tnWGlsSUlNNEpNMkZmcDNTZTY2c1JHc1RXXzBBbF81R3Fqd3ZfZFBYWDA0RHJNMFI5dGljTHhLczBnM3hkSXF1M0huamxBRFU3S0c1Yl9NUmxUdWJCQ3pEamtJQWRRUEFwcUhaWktnODYyLWloMDE4bERfbFViWEwyMGhFNFBNbTE0eEg3R0dPQ3FWa1o3RVU4ekd5Yl9xWHV4RF9LZHFLSVR5eUc2WC00MHhOeTJ1cWpDMmlvVVpiM25Tam5kZWFiX19kbC1jMDBLWkU4RnhTRnRMN0RreWxpTWM2Yy1VQXBhUlZKQy1aa2NBaXlPZ2NBOVZQa0x5a2xlcGRNYXY1Y1J2a3FvTHhmS3RMU2FhS0taWEdveFd5OWp2am5KZHZfMmZDTXlUeFdOUWl6MzI5NG9mNkNNY09sTmc5VW5iaUlHb1JVX20tMHQzamNRWHBrZ0pDWlMwcmQyZ3RGVExYdUVlYU9ZTnJjZ2dPWkVQMkstc19kNUlCU2JqNXE1QS1HYU9hbzFuRmdFOEFlMDdEVXVzeTBYeVEzd0cxb3JIOXUtSUxpSHpyd01Ickx5ZWkwYmpYSm9HcVBuSWd5d29nWjdZRmF6a1ZSTGE4OTBZQjlXR2p2SEdqZ19yYmVabWRDWkFoalNiTlRveFN3bGkxMnh0bl93WkNWVkhlNzUtSGNkTHZHaGgyekwwVjlROG84NFI1NUFKVV9fNjI2REMxT2w0cXVLcEt1Z1EwMHowZElPbzMwcG5IT3hqa2xlcGRMM0dyN3dHNXZsSUJKbXVWMlBReC1Hc0JmX3lYbUhxOXBZZ2RJeXl3ZjNqSjlDcmROYXM1RGNseUExUS1Sa3MzdWtyU3dublN1ZE5OeTNCRlJ5ZkgtbHhWQmpYSHQxUUlQM2JLbjRvNmRPSHNLclc5XzRPVnBNREQ0UjNMRmpYNFM3MDJ5ZmdXSkk5Wld6TDFadk40X2t0Zy1iVHNYOC1zdzJfa2Y3dXVldmJmMkYzLThmM3lvNDNUZ2dQaDU2TEZjbFNidGdaNE05MDRTLWF5SGQ2NkhVbmU5T1Axc1NldGdKWXdZZVN6TTgzY2FUUXVqRVA4bFhEQWxKZGJ0MTRhZ2FValJkNlBNLVVIUGdGUmNtRTd5Y0k4YzNSdWxrVkU2Wk5qeUU4VkNnaFRoN2JMNTJNYXhUcVMzQWJKNUpHak9ESkk4ZTczV1BFZHZPZ1FPNnZvak0xNDFnSjFtaW9rTFNIbXNwVWRhSFdIdkNkc2VHeTZyZmJfYktmeGJGS3FNTEN6T3VKbjhxd3hlNUxJQms2djJCUmNzM1I4ZnI1VjBSQXB5U3J3bmRuWExFRHdVRU90YzdwSTBqajVNeGFJaWxKU1FMb00ydXpiWXZaVE1INklXSndEdU1hNW04MlFCRnV3TWFZRDd6WmNwM0RGb2dFc0N5YnFjZFd5SFBhV3NxQk5GSDRuYXdwRnMwQ2xZMWMwbGZQR1RnTWZJeTRxRnV5U012cHNkYWZORUdBdVFpYU5zRzROSnNJV2NYbFNFQ1FsLVhRaHF2YkpUWE03NldPVTVld0RneGRGeG5WREVhdFRlQWZZaUVEN1ZBelFNUXNFenU4VUx4VmI3RWJzX3RsUW5hU2hVX3E3RjNUVEV3VUpPdDNCeFdPcWFCbmhNdUdOdU5CNXJabFd3YVhrUTFNdGxwOEFmWTBXSF9kX2F3VXdQbUpCQXFEX0xKRncybWVBS25OZl85NlZiUW5iU2J1ME5uejlvTnVXVmNMcWZIeDIzX1JfVVE5enZibTlkaGlSaUxSMnVDUzN2d21XS1UzVG9vbks2c1NpeWNmYnh2QjE1TnFnN2l4UUV6M2U2emVkX3pQYy1GdF91ckRrR1dOTFJ1d2Zyb001REQ5XzQ0UFVvLU1SQ2NiVGp1emxqQmVjOXRUc1NRdnZWVnp3WHdNY004Zl8yWEJxcU5OVl91b3V6dVRPWkFfbkNVTDV0T1dFSXZIZmlDRWxJV3lrS0U1TUFUUVlUY3FRd0VwNUlBeDFDOXdudnZtVk5NcmFFNHpDSDJuZllsUGNIYWpMUGlXcHpUdUR4anJGeFhIbVBUc1JTM0Q1YU1yTmM5emwyZkR6ckJsbzV0Y1pPT0ladlR4X0ExeFA3RlFnNjMtbUZzTGlRZG16NzM1bWVjUEFmdkROMnV4dWp3YXFITGx5NGlLelljVVRjbHFhYV92X25VM09ESUxkcWt1S1pCZFZzZGwwX19YeDdkSlFHNG5nN3kxU0d1V2Z1NEdRRnV3azE5b1hJM0ptU0c2WVZHSW5wSUlNYjcwSy1BREliMlZBWjlVaUloMW1HNmpUZWRHWHJtMzF5b3Jnak1PUlRERU1rYnZCeTFaazVrR0E0V05aSmRKRnlSQUtXT3VNbVZOVXRWcTFWRHpkTkpNdGhaWUZHQUU5MEtBZVlaZDdmaFRSZlY3ZlFYdzhWOENmM3IxdmdMTXJyZ2JSOGwzeUsybFBLMnhMcFl0cVpRanFaREpvSjlwUHBlcHEwRF9Dc1JEcVlDVi0zNE5GbldXWklZQmtmZTRPSGFFZTRlXzNQOGxNVTFKUWlJY1dXWmJ1ZUJXSnlpNDQ1b24wRm0zVzdlYTRnUUJCN2c1MzU4MUJBZW9ZQVRUYnFFV0J0LWU4OS1YMDd1Nk1vSDVKUU80OV9kSW0wNU11VVlrV3ZQODFHNDMySDFPYmgxRUJBNG1WdHYtM2ZqeGVDRldiZHVzTWxxa3RYbXVodjBEVWdmWGh4OEoxS2JaMUdjN3cyT1E4S29KZXNGM2QyTzIycjFkdHRIamdmbHBUZlVXOGFaN2hPZ2otSy0wRHg5dXV3ZmNVVWMwUnd6bkNMbVdqd0lnZ2NfQWZJbVRpd1ljZWgzQzlpVnpLdkcyV3BfZHpCMjgzM3YycGI3SlRKbmFYT3VSSlhiM1JQS0pONGcyVXV1NnNYc1JBd2FlTnVtVVVpM1B5b0pCY3dhZFRsbVVrQ2JNcjJMQzBzYmZkbjNMOHk0bTd1UGg3VTJ1RE5EaGk1LTZaWUNYZE5SRVNzajVrR0QxNzJoUHRSVEV6RzhUeEN6Nlp4dE5MQ004a3pHVWtjS2FLeVctZFdaaFVWRENsZVdnQ3F0NWdvNUI1OEVaV2RJbi1SRTRxREZ5RlBDNDg3bk9nMUVyVmZBN0NHWldha1F2QXN5ZUhKb3dkc0RrdzZIV0x0Y2ZwQTJENHEyZ1Z2aDdraHVNMmwxSE5DdWxNOWJSXzZZYlhuTGlCMzIzN3Zjc1d2bHpBVmJCd0J3WHRQT3RGWEEwc0V3c3Qtb2N5V3Z4WFNsT19kdlhRNUdHa2pLcjhFX1hzM0dvZmlqaHpsZF91OWFROGNTek1XbE5xRGNPWncxdncxNUtaeFNXR1QzcDJ4S1VHLWtSZW1Jc1h6VW91TFdma2RCbk41Vk1tUTdJTXA1RkFfcmdHWnFwVHByaHJMSlVaeTNZN3I4bG1McW15Z055a2FMNWkyVEpIT3RWVHB2eHVzck1LMnUtSzdpbUJVMHlkQndFaHNOS1RWMXlGZng4Q2JZazJTeUo2QVlWeWZLM1FhVEdqb2FFMGxocGNPRUIycmpfUDhFWHAydlJ3TWZsYjBtc2daYTFCOE93d1BXRUJMdlROVjVzUEYycFpUaFlnM2xWVzFjSlZlTlBLRTJfYU1zS0p3UGVIY19YTTNrdDBXVkpMbTBnZzE2ek5EMjlsaUlfNTBjOW1VN2NpVG1hNEd5ZzJtSkUzVkg3VWxUanVkRldmNTZpSEZHNlJpU0FqVUFtMmtBTkNGMjFyb3ljVUhFTGo1aVlQZF90S09vcmJvRDlWRGcweDRDc3BQMmRKZWVzMVR6aVMwNU5qU096cnd4dG5qMTBBZ3kyd3B5XzUtbVl6dVJvYTUtNXVPSFhDRkFNSW5QQ2doakFudHVYUGw5REJRb1ZSMWYwUS1NdnJWQU1Qc3pfaXMxc2xZaTlFT3NDUWp1R2hsNGlxYmVNWWRhbFVZZllGYnd5dktaTGNlZndjaVdpY3EycWhpM2FxaWQ5WkVwVGRyR0FvRjItdmd5cWVsSjlRb2NfSG8xRldZdjFrVUR3RTBmQ2ZlV1FteHBFMTQyYmlZNVNnV01CaE9tVTBKWkt1c0hCV3B1ZWJ1TDVlc2RHVEJwRWtpcEpHWmtQSlB0YzBvTlJSVU90TVdZTTYxbXZaXzRTTFpqOW9kZ2U1akMwMHBzSHVYTUExTG5USDZ0R3FnSDlTd1Izd08zOTNTQnRMRU5oNy10UEVEVWc0dHpJeXAxTHQ4R2dWS09DTl8tc2RCbnlpSjJaNmYwSThEMXVPQnJYN0JGb3E2aHlkOWtMWnZiX2E1VHFUdzNKZDJCdHRzOHBWS3hhaXFtTW1WUmZPbU4xYmRJSHhlVUNCQzdXdE1LZUc0M2FNLXpYZDBfUmI4MkxJTVVVRDJadUxXb0MwUGZzUmpiYWNpOVhBOFlBVTE1WllTOVh1YV82NUZYT2xxcl9sT1RuUjd5Y0JZY2J5T2tIeGpIWVFmRGkyQmZRV0NkMElXaF9WcUxNZWozT3ZEUW5FZDZvNEU1N21FQ1lQUEJUSkFIZTNHTjU2UEl6T2xLNTRtVV9USUNpX0JKTkRXemJvdl8wSnVEWExZMmUxZnhCOXNURmc4c1hINUozYUhYY2dpYUdSaHlnMjRKZElJV3dkcXFRbmlLZWNfS1IxVTJhbEVqX2xPQTNNb3FadHk5Zzhnc2RCMjRmQlRLOWJZUnc5eW9OVWhrSl9fM2NxNlozVVFvc3VrWklreDJwVlRoTkU3THdEQ2gxbnVRYlpvUlZrN1NKc1pjWkZ1TTd1SUJRWUNVMGRIQzFRS2lublQxc3R5WDduM3RRLXZPWGRsSENaOEtmSERpR2tsemdKUkhVSFUwdU9JQUNuNGtUbkRzN1ZrRGtEZ2YxalBhYXVYLUR4X19Cdm5oWXIxRFp5eS01N2x3SG85c21rZDFNcGFUVGRLR0cxOVktUDh3MmcyNXJCcVlWQjhBZXRlbXQ1bEtZdE8yckhJNmZSSDZrLVhSM2I3WkVlSFA5MV9UTkc4QVZtV1djMUhaMmdYN0gySzgyUzRoUk1JcEItdkxUaFI2QmV4bTdDeXJHSFZqNHN3M0dtZWd0cG1obmJlNEZQRVo1UTZnNGhScUpmYTJvOUswZDI1aktwaURBTFllRVY3Y1VDUjhBVjRYNU5WR3hWdWppOVdYN0gwaU1mUjZHMmpIVkFZSmloSkxOSC1JSENWcVhxdng0ZWNSRmVxNGRqUjNBWjRITm5kNUJBaGlTSHRObkhlM3EzeG93cFduQVh4M0hHeFZKcUozZ0pVdDVtdGcyb29pYnJiTTVFVU1HT290QlZGT0k5eGd4RmZYT3dhYXNPNWxIbTVoQnFWZVczOHlXS1FqYU50VG16TjlITjFrRWFfS0JacHU0d3RGeGswNkdWTmFEUS1QbmZBV0FJalByQ1FjSjJMQ25kS2FBSHJyYTQ3WTI0dWJYd1hPNUZsSVh6NElaZzI3Z3NzTXpVR3kwdUtGc29LdnJrZkFLdjVWblR1WlJ6aklrZzNoZExLR2FMb3RPVmFwZkp5VnNidGh6T0JrSERUMDllcVlOYkFwbWdYWGdoVTZSb05nV3IwOURSMmZQV1FyaUVzbm9Gc21yZWc1MUUtc2JUWjJCb3FqVW1zRnlndjJZdVhpdTVXdFFUNGtKQ1NxczZZVEw0cGhoQy1sTEhubWs3Q0ZKVnNMUHpUM2ZUcVF5M2V6Sno5dUxyUWJKRXVVMGgyWHQtNGwzaENtNU1hQlVVUGU1SU0tWHZhVk5QM3FQUGN6NjEzZkt1WmwzV3NmZVVtYzl4OWhrbElxRlI4RE1aOFdpYnhJSG5CXy1vTnpvcGV3SXZkOU1RV18wQ0hJRlNWWV9lMDNfNlN4SDBiLU5DX1Y3MXZHNXpNTXpqUkc2WXB1d3hMVUQzQnV6cHNWSVR5ZTd4M1RSWFBxNE42aXF4cFlTeWpyMUUwVnk2UXhzWGc1Q0NsZEozN0p0R082b3pTY1gtdDNKOFJBbVk5Zk41WTRURUZCZkxFT3VtdkQ0WXdjd0xuVktKMnVYN3A5MWZjTTUzVVRhTVc4UTZSZ2JFaTlnZjg5SXl1OFc0WTBIQ0REbDE2dVhCSXdZR3IxX1lyRy1zOUU1dU9FbjVpVm9oY1JsX0RrZlNNenBsSUhPWkJzLVM2X0tud2lZMXZYeThhTWlqb2tFaTVOZnBMbUdZdklwdk1MUFViUzBrQXhGTWo3dktnRXR0S09pU2wxVTJleFF5d0tsYnJtUGxFamZ3YnFjRVZkbmZvTFhIYXpfNlhYTE1Qb1FobWhKUWtvVFN6UDFIb2J4UWY4Uk53VmpaeGF0enpxMGtpMjVmUXlTNTlET0wtVGtiWlFqOTByUnpCQ0hVaTZlNWFmNUN2b3p1T2NIdEJmRnJHVkw4R0JQMk1JWi1UTGsxZXcteFpBbE10UVRITEVuUE1US1Q3X0VwY2dJalNDQTVsZHFXQndZVWxJaXZWd3NzNXRlWEswQkNvWjY3OWxyTVdTOEIwUmRwbjM1djlPU1JOejh3TUFTNER4UVV3OXhOTzBrSjdCWHdUM1dOem90dVFFVDFIeWpEcDV0UHY2MVZuVlVDc3pRME1TaTcwakU2OGtnVm9TM0sxaHFxNUhyZlJoYTVEM2MzZDFBWnJzaUVsMXpMNU5OamktNnBpZENKVmxZeFNBa0gyc2VlZ3lGeUVVV2p3ejZRZzBzeWYtUGtCWVFaRGtKOGJsUWFyUjRMdVJGVmViUTZ0bnQtVThmS0M1d3kydzFXMUhiWUZOWHRzUnVkcm03WWVtUDI2eVVNRzNPUEktLS1zV3VEUW1VblIzemNaVGZkcVBkc3ZyRmtES1JESWZfN3hsbDBLVGtIbHEyRjJOTTBiYjlDb281SG5RdERpX1pJZmIxa3pZd1BHTDZMV1hsazdhcENaQ3daWVBLNWNmbHkyWU84QzRuX2w4eDJkLXdkclBMWGNMRi1xZnRtX2RzZmNrNjBrNUtGenozZEJKV0otY2l1ZWM0S010Sm1JMklxUm50MVpJRnNTOGhEcTF3b0ItLXVTX3ZfZ3lMMVRxRklNWE80b1dUZktOV0l6d1NOUVM3UGdCYXdIMHVIemZDeFJ1bmh5enRMTEdMZEtBamZxc3d6R2dDMnV0THcyOVJoZWtLWVNyaElGWFVoNFFjZF9GOUxfNXZyc3pSaXpKekRUMGVkWlhSVkZNdTFsV29zQUs2YV8wUGVZbFI5cC1XMS03eWo3dGJveGZGdzMyd3o2VlNWamJrMHlIUnpRYmtwNkp6QlIwcm1QU3VlU1QtcHNCSWVwSGI3S0dHQjA0ZmJvLXk2N3VSRkxKTHZlcTJua1o3dDFIRGozQ2taVGduUmJ0S0xYRVNkb3RFY0toQ1ZXaXNrTDZabURLVWJJTkF1MXpLMlJhZkJhNzVDNlVPX2llVnAweTBJX1JnT3hEd1Z4QzVReS0zdVZkc2trcFo5VGduUGhXQWlURF9tQlBmeWhQN2NCbFZvUUhoY1lKYWVjQ21jQmtVcTd3cmx1emdEWEduUkFveUp6MXlwZWNjWC1IUnlqOEFFYXhxSkVUeGpWTFpNODBNS0xtRjNXZWt1dVMxSDIxLTFYUFcyaDBfSkE1OTg1cm9uWnBCSUtoaXptUU44YVNndjBIbFlmVi03cTl1Vi0wLXFrNXVQWnljQkRDYnpUZnlGaEdzWGdKU0tPSm5PYkU0QWktMW14NHpJY3FSRmNiWkt1cF80clc5Z2lFX1pfYjBpTWlMTGlBUHJ5dGo5T241ckx1MnJhY2UxUHFvb2VrZzFuWWxCRllTdzA0eHBWSjNGNURCOTBDMHh0SzAyMEtEakpRU1VCZW52dUpsZ3V4WVMwWnQ1N3dKcnVXdmFpYUlIalFBTmRjMU1lSVJEZjF1Z2EwZ1NwVjZPbEltMlY2aTVDMllfcmY1eHJITmVlWjdwU3A1X3c1UTk5YlU4RkdEMHZNbXE5azc1eTdsR3NTMVlwc2stY2RZd0pSek5oa3RPeW5GOFZBNlcxSjkzVmZsa2Q0NTFnMGRJM3dGd05kY0FqWG8xdUMzWF9zdU1JOUl2ZU9jcWFqWlVNcEFCMTZzbU9waHVpQXlBcjNTbTltMTJMMVBvbzVVVDE4V1lEbFl6eXhNYkRmWmRUX0I2R2lNUnpFYVlHSENyQjJoaUhsYXlDdlpCNW9lbkVTUG1rS1c0dFNmOXhRc0R4U2U1ZnR0UGh4enJ4UWxieEM1V2dINlBibzdYdFcxdUpMUEVzVnlwdGRjS2lPSHczQ0d4dXA1NnVNdjhlRW50SGRHdVFERmVfalk5TUJYZXNsdnMtQTdBVzg0VUFvWE0xd0RYUFo0SVZjdmozSWRpbTh1WUVDU0dXMHlPcUo2MEVBYk9nM2ZERW1wbEpNVTBuc2kzREZmbWlqNkVRZ25hdk4yVUN0Z1lKVUUtUVoxU3lHTEY3OVlIRXhFVFRUZ0RheHNIYnZCX2NibWFwNC0zaGhPS041OXlQUmN1ZldZTGtrMUhpODg2c3V6VWJZa2MxTkZRWlBGekdYV28yUUFvUXlCQm5DS01YT2QyZzBPS2RaSFBYRUtVR05FM3A2blo1WVFCMUx4dXJhTVJCSUNqV2lHN1E2cC1XdXRpNHFvNnRvUjgyQlFFZUtqSC1KV2t4a0NoZ2tFaXpUSjFGcjlHRFZ0c3duOUdFcTBKZjJ0aFhKWXZUTkdTY2tTVFEwUzFIa0NlcVNLOXAyN0p3NHl4RTlocmFVdHYzaXl4MEhFZmNnTlNLVTk0WmpFa0R5UFozUXNLUUlCa0xweHJReGRsZ1hSV2ptMEpJSWQ3WmRiT3I0YUZPN2ozZlM2a3EwQk5SVzFBVnhRWXpkLThFWkV3b2w0MFNyNmFfaG5tUUo4WWZvYlFoTDBhZFBfWUNaT3dBc0g3alc4U0lKbGV1b0hLX2hPc2Fha1hkTnJPaFNoQ2VVYjNpNUQxRmxkak12SWFEajJFN1dfUDJodmVna25PNkFhOFJlZ1JRN1dvQkVpdGU4OEszeVdPOWJkdmZ1NjFJaTBIRU1RUm5LQVBILU83RVpMVWdzTmd1ak5YRW1jRmdmRmhmU1Zudko4Vjd1UnNmbE9NcEZkTmZzNU1KUDdEcEF6R3Q0aGRQaG14ZlBseDdqTXh4cnpOQ19GS0tvRDBwcWdJdWtTVnlMZzdrbXkwOE9paTk1QUNMREZsTnlQZjNtaUVUMHRfaHBmWFZrckhCZDB1Qk5Banltb2J6WmF5bW05SFhLTTFVSUFJN21WQWdUZnVUYmQ3eEY5TjlDNUJTZXVyVDJtYnNaY0JtWFNfa3hZTWtSWjFkSkdjN3FwVFBSZUxOVm10UURBVzZWdTZUWlpHNDREMHdRNllKalItNlFiVnNSR2NReGtxR09KQ2MyYm44SEdvMnZCSG50TTdEZVM0RXdLUXh0bVduVXdITTNVT0ZHaWVOVmRvZDhzcllzaE9sM2tvZlN1YUxIUkZiRGdVQlZoaHBFV3dUejF1VlhOd2VVN003N0R1dGJZYTFiRXRJY0hneXJjQUJTVW41dlh4cEhhbVY1RTJHczhEeDhYTmlBaWdYREJfbmhFZEdWWkVqSmd1TDg5VXltR0c0X3Z0cVMtN3hGYmtJaFpPMXBEVHZTMm1KM04zNUduNGI2S1FWcUEyWEY5amJwRFF0VFY0bEgwZWhiLUFyeGtGMkJjbnA0RUdNZWs0eDRXN1RfNEdtNzlFb3V0TjJzSW9iSFhXYi14bURJbUVId3ZHZkFsYkc5ZFFLZ1pDT3Rrb3EzUHJvY0hEMVFUTElpNEpQYU0zc1VFNngwcy00NXR5cEFHQ3N2MDhralVkUW5GbUVTYUhTYzJjSE5CUEFFX2ZzMGU2bm1fakRLektON095RkV5Ymd1bHZ5RTRsb2ZxWkxfcnNxWFlPN3lvT2oxX2FLVHhGa2ptallGNWhiS2FjcDhCNWstRUZUWVZYMzMzWG9OelJreDRnOFNWZW0xVUNibE1QOTJxb3BLUklPaWNJQWpmN2dkS2hhQmZTaE04UUt6bDJBVjBVU3lwMkdrUFRja0NrWEtXUXhhbl9RLWhtZ2l0V2w5ZVpOR3BpUjVSUGxqR3VRaVRYNlJENGZKcUdEQWNMSnEwYjZYZGhva24zMHd0Tmktc2J0RUN6NC1HV1ZOZVVBYThETl9haFNaMXAwT1MwMkRkbGVKOG1ZcW5vYThEbF90ZGZEV0xiNDg4WVplU3JwUmV2WlBJWm5OQ1lQUngxTDdxMVVGcWhfajVrQ1N3Q0VWTEpDUFdzaXlKSzluXzU5c3lUaW9DemxyM2tuTVZ2bDBZSnFYdXF2eW95TUZrcDdGdVdBbWtfYUR4eURaYm1mRGNLNVFnM0c2YlVwVXhPQVJyamgteWtreVpfcmxsa1hLUjVrTnJJMFFKYkw5UHBiWFNtMzZVSTFNajB4alVael9IYmx1Z3J3c2lzRUtGcGw0T0k2bUY1cUNLZVAwWmFmaW1nblhxS0d0RW9wNU9kTHNGRXNoa3BSSWh4Wk02eTVta0RZM0FrX0c5N0FuLUxzaVVWdG5IN2NYNUJPbHZIMVktREFGdzhkQTBpOFhPbkJoWnZ4aFZqdXctbWtHWjBITURVS0RMWk5uUVR1RXNnVEpDT1RQOVc5R0xtaGNfMGRSS1UwQTQ0RFVRU0l4SmxEYzNYWmdYOV9XdWxMY08tdjJib3pvLUhLcTB3blN0dmlPSU9YQ21BRW9PWDFodWROaUJmdktBc2NYTnE1bGc1YmtaN3dDR0xSQWoxUjRSelhDMnVsaUkyZ3lpMTFHZU1VanpoU0h5Ylk4NG5vWGpDODNJcGFTX1FTYl9WUFEyeWhMWExVdnp4SHJ4YldpajQ1a1VEMWJEZUkxOHhhQmd4UzJ6VlRVMF9FcW1WaU9wbjRnTWczd2oxMW5tV0JYOHVHUHlkUENhV2dtbFJTVXNxVXVGQ0dYZ3RNUFN2R09XRkl0LV82YzFWdVlzMGJDNzl3QnhwYy1MdENkRXIweVM4NWZKQTE3aktoclFINUJLQXNneUhKbzFVU21FZGMtTDRweWpkMS1obnZUYzZxRHBXQmhSREhieV9DeXBfc28ycERfYk12eFZ1YnBDX3FIT0dlaVRLSkpTcHdmMC1OdFRLSnAyUzloUXNQYnhIeUFlQy11ZThIMXA0WlcwWVVyWGpJRDVoS2pKRzQ4b1E2THBsaEJTWlNCa0xpczRqNm5nV2ozN0dLZEFNN01jNlpKVFZRdEw4RXZjWWNTSUlEN0liMHAzXzBIQzRKX21NTEtjRlZWWVp4TjlvSkVPZWJLUFVzbndwelVUX05KbjQ4VVZrMGwzeGtDaFlEVDVmMENoNl9MSmhSSzY3ckI0dXk2WTY3N2ZKN3RjRGFfWWsxZlotcmVpSlBRNHhMTnNOZ05hU0FoQ2tqZE5Nb241bmlPUFNhQUtVcWdDbkhsZzN5bDhPOXFhcVk1aXk0TzFlS1hHcmY1THkxV0lNX1luNmcyeFg4aF9TZ3hlcTdRN2ZOYlhIT0Ztd1Ywdk04aXhhRmJZYnF0N2hHT1pjWnVQaFVOaVdDSF8xb0MyUHlIUE1IcEtWcWdaOUNYYkdQNmFhY3J0UmpRMkxZdUZNSnNWRVhlN1gxNm1xMDZpd0dLUWxsUlZxXzZoZGtqUUs2SVpDVTNzMXV3cFlGeHdaTW1CQVVCaG1lb2kzUVItQlhrYnc0RU9nYXllQTJkSUV6a2g3cXFOYmNXNlNBdnp2eXd4cUlQT1FTSWYtMVlSRnZfSDBpYXN2MmQ0R0kxNHpDWXUtXzMwT0hqYzYyX0VMLWg4V29pa2Z3cTNXZWZNMTduN2hGSmZzMFNWNTVHY2U3UTdDQkxxNEVkSTlXc0t1MDlxeWhNWHJwUlZPWTBrZzdsNjYxa281c0VsN1RxYzgxNWl6OU1wS3RZU1RlV1lsd3pnb011clJDNktNYmZEV2poUmlldGo0Z0RkSW9GaUQ0dHJGNjZvU2k0WTE2WkNxYkVPMWVKNGNseWZZWk8zbzBwSk1NQ0gybUlwTVZPMkRueGJSSURIOUxiSEU2VE1qQjYtZkw1a3d3WUVoSHI3UnNaMnFFYUdWMDdXcFkwMUdoTWpEZXE5dGI3Qm0xXzFvcWtsdVcwMjZRUng5Vzcxa0RwU0xPNkxia1RWS2xuMlB4VmdZa3F5V0pHNlZUbU81T21fRWxlblhQMmx0bV9VVXN4MXgwdkxWczR1ejlHV1VYTGZKbVlzZnViQXBwVF85anZyRDlkV2xWc3NKdUMwRlVVNWxOUVUyOEJWSXpycV9ublJVRUJjc3BLR2d1RmN0Mjk0V2xFVjZzNFdTSU5vNG8zaVM1RWtfX1FsZEp3c3JKT3ZQS2M0S05OM1F2cFJDa3hPQ2VwZGpZZEMtbVdfMGxNdWVoVzVmcGUzRnhFMGhjeHFrZmkyUXA1Mk5VYkVZVWpPV2JRZ3UySVVmX3ZBMWpIRW9UTzRQNS1vYTBrRHZaUmxPQldRbTMyS0g0RkhwYWpiNndLTWVIOU1VZ2ZlS0dBNWVJRDRxaWwxWURONkRMa1BKT3FkeU91UGdqMTQ2WWJkZEtQdmFDOF9YS2w5Nm5BV1lfMVo3ZTNKYW9NNzhZR2pMaEV3alFpdHlSOElLRTV1ZmFDZHdYMWNPMG5FQlRnYTZPNzFrSEJkMEpGLTQ5X2FPX2RoWWo0WmVLWVNxOVhkQ1NHNGQzSFNxVGVsT2ozX0tzUGp5dk5ScmkzY0loVmJVWHkwcVoyN1NqdlRRcHFEaW5yMDBra1Q2OC13SXMxcXJhazQtcjZoQUFUeTM4S2FrUFJWYy1WMUQxUVppR3hFYUdrbUg5bF9YT2hFOEtHREIzZFgxNVNOREptRi1PR1dKSlJZNWhqZmpFWVNEVUhmb1NHTElNei01Wk5hVUs5cm42cFBMcWZfcTc1dkZ1TWRISzZhcTl3eWUtQTdLTjZyS0xqMlNfclV3RHk4dnBlbFBBTktNTG5Td09mV2U2eXdFRmFJTDRVLS01Z0NvczJBbGd0OWE4QmRKOVpsUDBUSzZEb0RVY0JTbE9VTWNJNGZXb0lDYkhwc3FnS1d3MUJXc0xGTFU1UnNSZVF0ZHhmSFNZdWs4azFWUlNhQnZnSEh5Uk9NemJXYzhSWmJCVjlQc1doaEpMeVpMM3RldzJ0RkhaM2h2U1A2SUVidWpxSE0tYnRWSXFqb3BEOHFDMG90YkNERnNqdXV0bFdVekgxTXhNVFFGdk1KY1Rfa0swM3NOSVBNTnc1MVlrQm1fV0hiQTNZY1V6d3BPd1JNNnQ4YWFVV2diRUkyNm93Szlhd3BUTzJmVHVncjdzNTJoWTFBNVRpMXRobDM4TU84UGNfeTFyYWJBeEVsMGloTUw3VlRFWmxhUml2VW5JS09ORDdXSXE0U2RHbjZzbXJLWW1LUGRFNy1vZzJfMXVhWkJyblRScHNrd1FiZUVlM09tT0lRUjltb3ZmNkRCdlZlVGtieG4zTHgyM2hwUVRRYlpFSTRORFFHMnlzTXcwSnQ4OHl2dEo3NkpwSEFYbWhkZUpBNWI0QTBYb2JvSW80a1JGTjNlUWlCQlB1eTVsZU1qeEZnVVE0N3Y2M0pyNmtibXpfSEVTZHowOGhNeUozakN4Q3ViNWdJVGhtbVdkQ1lIUjZRYjRtWlowMjhIT0ZCNTl6MkY4QVVENXNwU2wyZmhKZHBtUl9aZ1BsaVBuUm9YNGVPU25Dc2ZLTW95X1YwNk1KRTl3VGZPSXU1ME40cEhoTE9qQXNUX3NCSHBfYWJMb0x1ekpJZXdtV29SRThVR2xWVENOX2hJQk1pdWI1V01lbDgwa09nbHJTNXRMZnNCdW1qTTZXUEladUpjRG1jWlozdXpEeFBkRWdHbFZydXE0ZmpfMFBoUF9uNS1FcEVtYTkzZDFaLURCTXU3Wk54QWYwS1ZBOXVJOXZ1WFNQRDJOVmRpMG5QRFFjbFRCRWhKYW8wM01uc1VGbkxBNVZqQlJnQVV2Y05Cd3ZlYzRfOE9WMDJLRVRxZ0hMZ2tzbkIxdU1jZ0cxYnVQWHF5cmJJelN3WGJiTFViOTFWSkZERl9ZNGFTWGhWR0kyUzFpdGdZOVlsYzl3aFlJYU9pQy1KcTNiRUZiVnZiZnJnemMwOUtiYl9ya214ZjFpWDVRczh0blYybHpSaVB1eExibGx6dmlEYkM4ZkpMRE44VHo4NExMa0lMZHNmdjBHaWtkRThSelU5cFNnMVU5ZURUT0RnVktDRmtzaXdJbEJ5MDRqd0d5NnNwb1BudUxweG53OWhKQnpUc0M5dVRUTmlZeUk0SmxpdWs4Z3ZpR0JTT2lMeGNiRVlXTGFpN2NNQUYtcnI4VTYya2hDYlZZVU1mVGhnQjg5aklmNlZSa3pVSGs0QXVSR1k1QnpraWxBcDhHeHg2M1RacnVXR3ZMa1FKek5wNS1PVGN3V3hEN2N1VlFULU5icVNZRmZYMnZVcEt2Unp0WjNxeTJOMTRIYmdIeUZMYnl6SVVoTXdiNkY2M3dwcnlIN0hfMHp3OGRfb0N3bWVCMVBTQVBUcFhiYjhRZjluQlRXbjFCWlBMbUNVc1ZCaUFYQV8zUWp2SWkwUXlrN3gtb3BGc1E3OFdJUVpadkhsb0NRNWI4UGd0bVdaNUFwVDhPc1dXQU1sYkFzdXRLdXZjTFkzbW9DeFZIOGxzclZxOHVXSjhlQzgxUV9uOG5YNGFqcnZiNm51M2ZXTXRDNmxFeWwzSW1JSHRHd3lvVVZOVW4xZWlBQVpnYzdiQUlnNlBoV1pxS25DMkFyU19lbEVheVFUd0ZTWWxrM2Zjdlo4Z3RMOHB5THY0YkpEalI5NUprM1g4NGJEek5uSndfY2o2Y2Fqb0F3WW9nc3RRZFRnd0pqTU1WaU1Fa2hraVE2SVRUU3lDNUJmOTBCa2VXbWZwM2N3Y3c2cThwMG5NZEdnMjNDc0p4VHNla18zbFotRS1KcHZESHJnVUV4d3g1Z3lCVy1STjdrX2xnaGd3OUw3QUNTbHdGb2pHVzlZSzA4T0J3Tjg4ZEQwLVlmMkZSRmFnaFVQY0RfWXhmaC1qNDkyaGY1SnE1WWtyOGJMZENiZjdBTGgyeUp6UTRoUGREMDdnNW1uNThnT3ZMUWo4Z2tvTTBfMHVGOHBRaHpqenRjVlRaM2NBNkZobEI2a0Zkdk9OQXZVLXI5YkpFb2NOaW5fRTJmb1B4VUxqOVdEdGxaX3N2bWtEVzBjR05fRWRlR1dKLXhLcTdWNDRzck5vd0lCOEprZHE4dUhZXzFadVg3bWV6MHNYc0lNSEFFSWhkSnBJelpYQzVjYW9lTDRfalVxelB3dzJzMG1IU29CSlpQNjNWODhFQVpMVkdtaklwaC1PTkhQeU9QemFlQ21xajFlTVFaODdJSGNhYm1yUGNaWDFITTVvRi1meTZ5RFVzdUJyRkx1dmRyX0VJQ21TM0sxWEZmWVhsMkZCU1ZsRGNpUDJ0YVF1RzR0dHhjaWhoRWpERDVDcEZ4S2dha0lRSWc3VVFBTy1rUTN3THZHdW5CcG4wVy04eGpWRFBoU28zUUNOc29sNF9zWnFqVTBoeEVNTVo3YkVxTzNSVDNTVW1OM3RjdG9LWTBySzBxZmR1bk5iSXNjdG5TcUVPYzg3dWd4VTBXNHlQYjBNOEoyQUwySkV0bXlRZmN5RTBDalkzVjVZMjNlN19UVV83bEk5alBTbnhvVi0wdUhCRjZ0Z2xYN3p1akdJSG82MU5CMHo2MHpXZ01hYklqd0Rha3dPYXV2Uy1yX2RqbEZpeUUyZlJvQnNPNDN5WlI1OGJqcHhpRHJxOWdnMEtJcktBQ0gtWjliTUdxeFBIbHVrb1FGeHAtMWszQjdndE5GdGh4dEJqMng5Q1FBVUJwMFNZYXRhUmgwVlBPRGptMWhLd2FUTnUyNDlxZW0tbERiNTRhNFplaGZqVExkS1RoalFiMktwY2FCbVg4ekpQbnRhVlA2MXdDeVRGVDBSN2RIVHloZUhfS0NYbHA0WDN0ekdoRTg5VDVVWjVxVEZJWmNDR2I4YzM1c0pjYnh5bWZ0aUJJd05sUFRlbkNid3dfQXlOUWhreG95Wk1iai1lQ3NBN1M4V3FaUEp6ZVozWE5iV0ZJeS13S3hFMnVyTTJKRXd4eExXRllwOFQ1cFBQQVF1NG1NT0k3SDlfNzRTcWpMRFpCU1Myd3dUdU1YZW1aSDJuWVI0WmdCUF94UkZENzYyM204ZzRuLUdNNGhibVZPMW1LTllJbDlHdzljbkpQOHpSSWlNbUppWEdXTjktbjRPVHFRWExFVnlKbnlUQ0RCMzFTSFctTThyeUJMemEtOUxOdFZhUzVTWkM1UG1vem9EMFZyY2hFVEZmelhwREJfZGYwNk1aYS1icEpBQklTVWJidi1hM0Zobm9JUU0yRW1uT1N2Rkw1ZFdDRlZMcXAwREJOZEVOS0FiQmJaNGdaaGNEREVoSVQwQzh4dWJ5MjN1MW55ZlowRld0WXFoTTh1TS0xVzVOTlNLZGkwVFVhQ2d5OHhBdEh5Wk9YeWgzVFRMVTh2ME1rbjFRRjh5ODRsOVJlejE5VTR5Z2JqX01CVUJreGYtNnhpSFRVQkNpQmN1UnoxM1pSTkVMNUFzTUZLalQ3Y25zRDJxNS1fdDk4dEZ3SmNQejBTLVctbzFtVnBRSkFjZWZ1ZXBRcUdvVzdLNWIzMWFCVHUwWVc3MTZCeW1pSVEwTU5VdC1Cbnc0VTZtdG9wWWJVRjExVXhSSHl2R050dVVUMlp1MDFJSWlKTVRvYmxoZXlYQkFraEVUaDJTXy1Cckc4cG5oZWFZaE94a2wwZE1nZy1ISlJ6V0RXSHJTZ2tUN2plaThNNnhOY0Nwc19veC1kNkdsX1FwYnRkRGZWaGQ3clRaTzhCNTFQSVN3Yk9aYUhkZHotRlhUZmd1c3p6S0RwZmtSWjN0T010VFJ0U1ZWR2t3eG8wRWdfQW9iRVJSNnBBblRfN1hZQmpFWl9BSVVwQkhmYldjZENyUkN5YnR4b2VUU0RvS0twblJkV0E3cnpiLUtDQmVzNG9mdWhicnNldEdWXy1rT0dLc2FuT0lPbkNPQWdHc2VFb19NTnBvZVpjWmd5QlRlaHFmNXlCQ3FZN2FmM2E2Q0F0V2hfSE1IVzl4cGk1TVlZVk9sRVBWWHZHTFp4bi1xS2hzUDVwM0g4a0VHam10d21CWGFuQVhkNE1HemZtWnA2UkZ2d0VIaFJHNFJQQkZYSkZld3laMW1oSzZZVDZXYnpuUGloTC1PTjJPVnJEc25CSWdEUGVtclpnaVJIVWdnMkk0MXNnX1RMWTQ2N2NYUm1JZUc4NWpUTmRieEhkRkt5UWhNS045UUVBYXhDTGJsaF9FZFF1LWJtcnFfNVZoRmIwSDlocF93S0M2bFlOM3BFR3ZsajN5QzNIYU1LTW8xSVlBTkROcmhGM096U2VHUS1SWmZHeFQtZTNwdmRzc2ROTHE5XzNrdWdGZnB5ck1GY01iMkl5MFk1ajN2bF9vNTFvLVdiYUN1Wl9KZEZfb19JZV9zZ1ZnTUhoTVA0elIzRlBEVjVjVUR0bEtWWldSa25XMTRaZ1hnbFNRRG5kSG5lbmpqR1N0WkZnelh6c0FqX2xibm5BXzZnS2ktZHQ5SXk4aW92cFN1SzhTMmMxRFdqU2xIQ1FMS2tCdWR0REI4RFRaYjZneHJCZ0piNEpFUWp1LV9mUXlPR1NOellNZ01ISHFiVTVVbmpxOFVlQkFlclNnQnEzTWRza0xRNjlRVS04clRZbGszVEVLeFQzS3hhTUx6MmxWTkZSMzRkUDl5Zm9HMnZvOW9PS1VEb3VUaXRwNkdhV29Vdm5jWkdDME52bktJaUIzc1NiQ3pOWFdWbFpDWDhWdFhRQnB4NV9USDNhYi14bUJOUnVQMUZ4dlExNERsanZHQVBOM19DcHhxaHAwTmxzbk9xNzlqYmV0TmtqVHVrUTFZLVVhS1lUVFZOaTlQV21CbWJJTGx6X1FfQ21lSml1M1BwVVUyM28yNHlkR0JFTzZNZFg3aldMdHp5c1hxSVJyV1JUS0g1dG1rT3VwNlQzck03UGotb0NNMURacGZHdFUycU9aVW5hZF9TNGR2V3RBT0EzMVVsLU1DQjlLLUpHZEhyU1NKS0xoODNqM2d1ZDdoTUswVFJmYzVXLWdaZzdiT2xUc2EwcTB5anVKTzAxYmZQdjdQTjN2cTRkT1RabWluNnBJMzJSbzBTQU5NZzlBRkdvR1g3TElaR0Y5bVRMZkZGbkJTUlctaW5taW0yRW1NR1piQV9hNUdvTWxOamhmV2JvLW5aNHZubkI0M1NjZlNwZnI2LWRvRzd2VUZzMHlPUURuM0VvZF9ZcHBwUUwtLWtKR3VlYndlTVk4ZmdtVy14NktjRENjSEl6NU04MzhROC1KTEpPNzVLS0ZqREZGa3JtTGZfTGF5ZTJuekpKVGxhN0NnMUMyWS1kMFJGZnd3ODRHb1JjaGpVS0RPQnlFUDVlNzRpcnVSc2hjQjl4QVUweFpyZlIydmdQM2gwbG9UYjJ5UG9wekVwaXV3N01XZDA0eGhsMWhJUm1haXloRFMxc3R3WFh3aDN5SlNuWE5NMngwdnY5bGpQTmRDTzBiQ1lyZVQ1SXY3eFp0WEl1VW5jaWI3eldUQWZNZHM2cXF6Unp6Wkx5YXFTT0JrQkxJLW82R05SMm9PX3F6dTZteG5tMlJGOUlMcEdxYnRnZHhYTTdScVNkNVBEa1RfVjhrVzdOOXlfTUJuc2RpV05uelo3WndPNldrUlNvbkJPc0licVFVS3NXR1dUZ1E4ajE4dy1hd3hnWVJNQlhrY3lEakt5S0piMjZrWjhnRXNlcVQtM3RPTHdFeGM5cjh1MEtLT1M5YlROZDF3YTRFTWZHMEhFeE1SdmdqQ2N5QTlLa1pnU3Y3eTlNRm1BS2k1M3FXNnVvRHRfX1Bwa0lFLVpqUGhLLTdSa3Y1TmJUQnI1bmctTlR6ekFHc2s2enVPdnBpU05JSWxBRXNlUUJERWNES0c0M1Fsa0N0X3g0VmJ2QW9kQk9lTVJpZWNMeTVtLXo2SVZyME9xX0Jnek16ZW85Wl9xZFhWdFZobTU5ZkhDek1rcEM5WEN2dTVXaVU5UzhsV3Y0VmM1STZXa294QW9vZ081QXJFVVV4T3JsMzlma0ZpR2FvUmNBbWM0dG81anhUUjhuWVJXQ2tFdUQ1dEoxcFFUNkhpaW9XMk1OTXR0OExMTTFpeUMwejI4bWFlcmdBZUxGQ3pTODZ6QnJybXVTWFJEQlhhaW9DWGM3VkoxSEtmSUFYcDY2ZEZ3RjhRUkdUOE9LMm55dlZIMzlvRWhSX2M2T1NiRzJvYkxTOXdWM2RFSUFiY0RhR3hjVUpCU1JXeTdUR0ZhcWdhemlwRVRnejF0NThlNUZhS1AyUnoxMHV3LVRHSWN3VVJtRXhlSzVnbDZJWWdMVThKYmVNdWtpbTM4dVFXaklVQXEwOWhva3RsRFNueG8zRFg2STJjdFYtRk9xYk9rX1dLRURHRG9aRG9neG84UFNELUJWeGJrQldRZEwtTUNENUpzblBGRjZhLV9BdFBaWktKYnZoM0t5bWQwNXVfbk9qTURUdXFKU0xuNUV4MjFPbXAzQW9WZlpNYVlTV1hzaXpOWU10cEVReEMwbWp4aDFFLTNmRm5uOE9GdzVnTXFXNXN5d0ZHRklYcUF5MFlmc0Fsb0ZBTkstRVZvVmpCbjY0b0Q5X1NsNVBwZmxFZVlaSFFRS09IRmxWazVwdUhlZHdpckNfZGhkdGp2TnV2ZlNSb1BLU0VJWGxnV2owRHRrRkFiaXJkd1FNTFBUc21CT2pOYnhSWFkzVG9Qd0RSZGo3eC03VVJxY2Ftbjh2VW9UT1MxYWE4WVRMNm5FNVhsVHpuOW01MEh6ek1Rb2tnemcxQlFLSjRsMFJkbWw1a1RiX2tTRm5XY0hobHp5UGt3RUxvZnZfYnlBN0lSXzV0d21LLUZGcUVsYnE5WW1IaXNrR1BWMlpHTDFmTDFGaU1RSmtxLXNzeFlTNjZJRVZ3b1pCaGw4dUZJbnVidXhFeGJaSEpTX2xQY0pLTnQzcExWazJJSzJpc2duVFgwTnlJRWNzMG9pdDlfQVRERUJ5OHZwWTYyTjIxYk9la1lJM1o1Q0pleFFpVTc5VU1wektndTJvTGlaWnBaeXJ4TnVMa3BWSzJpT2toanNaN3gzNDhRdjBSUjdRN3p1aWM4b2hnbWYySUs5cjltOW93MTg4MlpRNFlETTdlOGlxc0t3dkZkOWZuOERlcWl2cmROQUhRcjFlQTZnN3BVSkpZZTNiUDJKLWpGSnN1azQwWXBFUXZVdGFaZjF0cUpPQlMtWlhvOE00aGEwUE5KTWx0bFhmZGJub2x6aHRnYVF5blR3WHJBRTBSZmtnWjlMaHFtenI3ay16TWEyM0t3UHdncDJmUGgzSmV0Z202Nkp4eHBnVjQ2dVl3UTVwSUFibll3MDFOTUxFTXlQaUNySlFFRWtwaXo4WG9hOGtJMkdRdkh3b1pTYlMtNzFZcHMzQ2oyLVZkRTBNaV8zUnRJUEZyaVVTUERfS2cxQ25pQlduN0IzS1pUYjd1MFFwOXl0VE1TdDNRbUNwcnR4YlktVWFwWEtESUYwYVVCN1RPaDRuN2lFZ0pQYzV5M1A1LVZkQ1VxUHJKS2VwckUxN3AzMmFyWjE4VFFwZE5rRHdXRWJWZFlMZDNvc2tTdkhCMHBmbTFablpMZzNpSGo3SmxFX0VsT0RIOVQ4MXRBS3ZyUFlzZUJsWnZQbEdUbDdRN29XN0tSZ21zVDJHMmlqOW11RlVEWEoyLU9ycFhHTWFURGxpdGNhcmpXR0tjMXFJRWhzQ0IybjI3LUlDX2FnbDdHbG4xUkdCRC02bEZGQjFuTVBWcHJpVGljQjA3THJZblNHSTVRdzFpY0pYNnV1TzYyOHRTMEh6Z0llUEdRVzhPMEtyR0xEZkktX2ozQkphbEN1eEpMeW5sdmE4MDVaWFZ3RUdCcEcyaGFOSlVleXhJeWFSamM2SGdOZzNHXzNIbFItWXhiUjBfSmtEODJwczhfd1VmZTBGOW4yYkUzWEVNeEd1bm9rbWdWbTdxQ3I0TzNxQk1HZ0dvN3ExNFRVTGhndk9GeXVZU3BKdkJ2a290NVptZS02SC1idVYySlVjNENQYUN6Y0pFSnB6QlNmTnk3eEFlQmNvbEN4Q0w2MzZDZS0yeUFGVTFFdjJ0NkN1U1BHZUlyY0RrRlUzT2RWOWxvRVlJaG5nNUdEdDdXUjN1RDJsRkh0M1dWLS1ieHkwSFU4YkZmT0c4b0hoU25NN1hsOWtGR1ROWUVxUndIUjk4eENYeXVlS1ZEMHVlN0ZPNnotY3dxV1NxX3BFb0ZUX0V4OFlHU0EtS1k4N1RCRFY1ODlYSEdMYW05bm43RXJybTdNc1p5Znp4V0NBb0U4YkktX0hRN3dTLVVTc3JuZkh0eVJCVkRMcHRSUDVXWDhTSW5jekUwbTFsZFdRUFRZdDFZTVdld1M1Wk5GWll0SFFVSU9FUzNRVlZ5dWlrcXZQczBQWE5Db1p1ZUJoVVViZlVab0E1WFpDTXFYWVdsQnBUMzRVWkRTV3RxUnRVcXhjZlk5YmpvNzZWNjRfSFAxUHJ4V2NQMFZFVi1QVmhxTE55VmRZd0VsRTB5YnlyWlNsRjRwVlM4VTdsd1VlS01UMnpHNWVDLUktakxpUEU5S1M0eWU5WEdtZjlVZEZjd1V3cXBiMjl0cVFFdXRUNFRmUU54elM1dzFqblUySF9BVmxvNm5LZGJiLWt5RjB5WGZyRXB4VHJtR1VSZTRqMEVzMHBXbU0xOVZxY05yeDJDczh0UDlGTlFxNlptQnJ1QVY5ajE0SlpOdUhvY1ozMmU3cTdsN2tfcWlseEtDN1hjR3lRS3U0YlpXdS1qWUEzdm5OSDVORnAyaEd4aWFLVmRka1pDQVlTUnBqMHVNZ1FuVGNEUkppTTJoV1piaGY0OXBUaUVwak90dmhIbHV0WDdYdmpnTDVZcWtVRzNBbUZVelZIOWs1QkFpUXo2VUtwVVJjUFVNUnFPTG5fbkpMd0VsY2xKUE0xYldZdEhZNHNTdzl0OTMzSjZxdzdENFdNRGJRLVI0QlJubkxwNUZZRUtSY2Z1cHVKWWtxV29xd3dQUzc4b1E1UmZfSF9VbVlBZEFOUXhsLVU0MUw5RTE1TEZqaFBsMUZObFhNLUp5ZVNJNjhlbUJ1NGNWY1l4d0oyMGd6Y2NuSWs5UEtjdXdUWE1IUjVIMmNtZENxRnVBY3lYUlJCaGhGRVBfNjFmbmxnRjMxMFZSdS02c3JmOVhnTGFuMEdtaVNZSC1UaVpmcUFrUjItRVlvdWxFUG9UWUw5OUhTekcwQTBveXhpc2YyaER3Z1NxNDVpbjJaTU9BQnRrNGpGT2ZKQ2kyOVZxMkV5YXVOQmRodkFQeUVzVHJpcV9ydHZPN1phUUs1Ulc3QndPZ0RsY3k5b0ROcmVfRG5mZm9jRUNmc3hMVndab0Z0Sm02eUpoNmU5SDVTOFdMcmF3MEhDTklaR2QyaWNTUTJEMG5oMjh6b3JSY1lfanpIYjBwX0VIZk1iNjhxa1hoQmREVE80ZVQxeGNtRmZuUXRCQnRCMVJYaEd6cW1MRlhTUXJRRWxHWFY0czZxNWFYRlJQNkljdGowQk02VkxHWXVpOUdZb3YxZEVrWVRaS3Y0QUtnQndySWRGazl4N0hOT29YRm8yRlgzY0hWTUpWU0hzck4xY00wekN5SVNGdDNkaHB4TnVsVHY5TkdfQWZmUUg4X3NQa05Ua1R6clcyRlM1RkZpTjVrQXJLeUZRRGlWNEZHZTRxWE5WbFhfOURtLW1Hdk03Q2lPWDg2Q3Z1OEg2c2JEckxFR2VxdVJFSHdxaE9DYnR1VDljczNIYlBsbDlvODhxTkw4TV9CSzc3aUh2a0lSQUc2Qkl3Qkt5ZFo1QUNpVnh0NVhIZ0tEUE05a1VaMTdLM3FwYXFUblk1YWw1QjF3bXVYMkwwSDVGckxxQjJTTFBPUE9zcU1RTlNidGExQXBkai1KMm0ybzFWY1JPaGhWeVJza29iLVNOUDd5WGJrbGlUOWJTSHl5YzFvbzFXcTZKYnNZd2hwdVI5aS1YX1cwYkc5M0hyYS10c2pvYmZPYjFBeW5sRXotRGpqZXl1eEt1UGVtLXVvRVlTWkZfbXRsd1JxbVNFSkFwWmlxQms5VHFTZW04LVBCZWxRR000MVhBOWtFeHc3cm41anROODZEdTdUX3JvRnRTWGxpakFQUm44ZTI4XzcyNEwyTWtrN3FPREpLMkg4Mzdvc3J5bjNXRWE5MW80OTJuTS1BcGNTZ0pfUUEzbURqUTJtaHZNVElPakh5TFRCZlBjaW4tby1UQzRhc28wdmpJUEhLZ3pUeE5oWnpYNHMySjFSRF9ldW91cHhfNXhocDdCTDZSTWt4eWVMd0o3Y2VwZFhDVmNmdzdzRDEwQnlyVGVtSnVoT2oxaWhrc1lVUmdEZFI4M3pweFl1Sk11a0ZqbjlxbEQ2a3c5YndNWnRpU2h4QjFZUHNuV1daV3U0TXFsVTg3SldZQzlEMzFUdXhiNFltYndsd1RsQTV6dFBTS3diTk1fYUI4aXZVUUhUazBPdFFwcndXMTlCdU9FbjFtWnpBYnJ0WkUyZ3NFQ2w3TTREWjZWR29nMGtza3gwSUlDVks3WkxEQmZRYXhIWmxFOFk2SGFCS0JrekhKSHE3MUNfcnMwcEo0UWZRV1NiNGdkRFpIeVpWY3JaNktPbEZsQTBma25LdEN4YnpjM3U2TUM5enFXa1ZYWWZZeWVvM1JSNUg3UVJZaUJqM1R6SjJVMVF4U1VqQjZyU19XeW9vWlhnNHNyeG5QRWdKak01TTdfMC1yY3NWVlVVdVNzT2RXMXFybjRlSy1Kd3Q0elkwUHhLYU5wZzRkMTFLUURIVXJkRjdPbnd4UmJ0NktLSFlGYW03UGh0ZVozV0dGbnBIbktzdHJYOVk2bEREYjBTLW5KQ3o4ODF5cUhUSmZ5YkhfRWFxS3R0ZU5ub3dDc190Nkt4NTVBS3o4c2VaU1psOXJnb0k1V0FrVkR5YmlfSlFFdTJnZnp0YzN0M1hCMnlTVDg4bl9BcDJNbU80X0V4QXBoVEpfNzdrYmJvWkl1Yll2ejA2Sjh5ZjR5Mk1yXzgySlFLVVBQYWhuNEozejR3eS16d2EtaDFLRkkyZThQTDZzODF3YmZ1QndrNlBHNFItZWg4UVhybEJrSXVqMkJ4eGU4VUZ3VUZONW9kbzY4VC1SWTF0bVdPRlZndnpDUkJKc1Zjb3htLU1CTGZsdW5XbTBVdDRvd0F1MlRKQ3lUaTRpWDhIM3E0X1lQTy1zMXBiQnRRaU0wQU01azVFNkdoZlc3MS1lQjJ2cHMtMjRORzE5R2gzTEhvTzNlelJtWmhwX3k3QXYxV0I5OURrbmJ6NXZ6dGxwcW92Y2hNNWRDOFNQalFkMDBDRW5NRmtwaVQ3SDZZTmFKVG5BcnVoanhTU2RKLXUxSmdGSE1ObzJpNEtfR0xxY1BlSGlIaTlPZDM5S2NGdVNQeHAxOV9wc0Z5bHRzWVp5cXhoNldJSG55bkRvdEpiOHd4dFU0bk1FMWFvazFZNk9yc1FUeGFtNnBFQnludFljbzFoLUlhanZHSGliWkV2UGdLNjgyc2RoZ295RjJ5OG1na2JTNWxHVDd6U2tYWm0yeUZwOGk0X0tVUnlYWUtqUndFZWdKTmktQ0gxWWs3ZHgwbExOaElOVzJEWkdyN3RFd1dOd2tFMzFHdWwtaXZWZzdGMTNMN2xXNW9OWTk1WXFXQlh0RzBsRHVoUlduSHg5dTNWV0twSDFmT0xDcnVIS1VXdzM3MmhtX21KS3U5UW1tQjNrWDF3SURXSkQ0SnFfeWlaekMxWEdIOEFzRmJfOFhtTGo3YW1aUmRwRFRRSmV3WlE2NXFJem44VEx0ekFhTUktUUlQZXJDSEZmeDFYWW81ZUpWdHc4MWphVHFRQWJCLVZ5X3ZXMG4zNXhUVklEOGdJUlpYakhRVEg3YTgtaDY3ZVFPdUNtS00yR2NZQjlFSmNRLVRPdUd5ck5Cd0lBckNxSGxDSzF3SjlPZjFYMjQ2cjY3dnd6MkJCQUdRWWp5dF9yZ09PcFFadGthV0pMd25ncXEwRE1pYWt5cE5LSlVJbEViX3ZkUGp6SFFKMV9IVzlMSFB2UWVHUmVJRTY2YzEyWlBBTm5tcndDaXR4M3hzcWNJZVd2d0Vya0ZzcWMteUlZbFd0V1Y4ejVmdklMY2JvSWRxVTJ4c3RqR0lvZDhudEp3RVRMeDJJQTZ6TUZHZ2E1UDZkcVhiMm85TUtxT3U3Z3UxYzBUaGtjVzB1QUFSb1F5ZzhDcnMzX0VfcC1YRXpCZGVWNzBIWUhXNk5CaV91OUVfLWVKVm13Vl9RcmJxanM4bEJxeEhsR1ZyUHVIbjd0ZU1ncXk5cjY4b0c4RVZRRFZUV0tXYWZ1U3Q1bHJpWXlTMlk5QnFqbXduUlBFR3lqTzJtLXVNRTRHQU84d0s2eFZVeWF1emlRQ0FyLnN4blQ5QmJTbklGT0RKQ1Y4WGR3RXc" + }, + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/testcert/21983500952149bbb3129b0c60e367a6", + "kid": "https://myvault.vault.azure.net/keys/testcert/21983500952149bbb3129b0c60e367a6", + "sid": "https://myvault.vault.azure.net/secrets/testcert/21983500952149bbb3129b0c60e367a6", + "x5t": "Z-n6Mydb08bmyOgk7bmx5HT8tyo", + "cer": "MIIDMjCCAhqgAwIBAgIQGn/FrGQZT/Cd9kgXIsytEjANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDEwtleGFtcGxlLmNvbTAeFw0xODA0MTcxODI2MjZaFw0xOTA0MTcxODM2MjZaMBYxFDASBgNVBAMTC2V4YW1wbGUuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsODIu9EJhfnn57k4++j6dC1M6Egi9aZucFQ9Jc29vFG9L9BkzllPGluKKdH1ypsrAUif7yGaq5d1nDyLhZUncU8dV/YIA7oll/fC+d0H4A37kVbM/60zXhXnKRx+DRZ2hJQzNBOodCaZpyZZEuYvtWdSCSILpa0R7yXYevjLaG5LfckOzuurXqeos7WB+l2q1c+6zx1KbNXbBl7QOz2nzk9oJU7CdhPOc+LOLppmsXRwwluKtmCDyKdrKAF/dANp5zGXFsognQcRctLSGQp8FbgBVQyZ+v81n9bPpSaBoUQMcH4uG9jPO6CWwbDSWE+FVYAm5kgjuW/1hqRSnOEV8QIDAQABo3wwejAOBgNVHQ8BAf8EBAMCBaAwCQYDVR0TBAIwADAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwHwYDVR0jBBgwFoAUaYJoBFokrORdsxOTA8sgrosMOmgwHQYDVR0OBBYEFGmCaARaJKzkXbMTkwPLIK6LDDpoMA0GCSqGSIb3DQEBCwUAA4IBAQAxL3t0kV1dq/PGUztjW+qK6Nh4sx7jsU59JtjON6zcibJ4hM+Q3Z+cEvW9zuGkuTbLz6fKNL9VnkF1LnlWTsyRmS7bF15/7iOgfdrr0vkJKVM1Zv/tqKEpBJ7Cbc0vW/VJQxZN+OlqGNc9bcx3cnqkRwpkgM25T0dVpoWtCgMwayUtbPFbTZWHHbpzHLF2BzYf5HyW1BoKXcVPM3r/rS7RETasRRsz2GqXXdfhjCd+HKVyv5kD9N3WcFNUsaq3TqAUZyOx9bO0Cn3gkmgz05JpfhPEylXwVpVAccOoXsNoFdxEKGO0w7pk7PwOhsW8sFprdXWp6OxtL0rrCNFF/llT", + "attributes": { + "enabled": true, + "nbf": 1523989586, + "exp": 1555526186, + "created": 1523990186, + "updated": 1523990186, + "recoveryLevel": "Purgeable" + }, + "policy": { + "id": "https://myvault.vault.azure.net/certificates/testcert/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=example.com", + "ekus": [ + "1.3.6.1.5.5.7.3.1", + "1.3.6.1.5.5.7.3.2" + ], + "key_usage": [ + "digitalSignature", + "keyEncipherment" + ], + "validity_months": 12 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "AutoRenew" + } + } + ], + "issuer": { + "name": "Self" + }, + "attributes": { + "enabled": true, + "created": 1523990175, + "updated": 1523990175 + } + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RestoreKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RestoreKey-example.json new file mode 100644 index 000000000000..6b1fc8a641cc --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RestoreKey-example.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "parameters": { + "value": "JkF6dXJlS2V5VmF1bHRLZXlCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUppTlRjMk5ESTVaaTB5TlRZNExUUTFZbVV0WW1aaFlTMHpOMlZrTURkbVl6QmpPREVpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLllNSVBfTXJRcTQ2X2ZwRExfSDNSSkpzSUotM05oeUJkMXlrOWJCS05JOGdnTjMxYWg2cWVoY1BISExnSnJ4OGprQkxMWFBxcDVmMXpsaWxfclVrLUtrT3J5YzhaSTljc3NNNV9TeTN4cEk0Wnk2V0ljNWNqUFd1R0NDbUJwQXlydEdPVnpoalF4bzNyVFcxRFNxZ1pVdnI4VEpseTJQS3J2aUlfUmduRWQ2LVJWS3V1Vk40ZWZWYUs5WFZUbW4xdmZ5Z3pwVHJfVFdDOVBGbXpoT0p6Z1U5OF85X25WcldWSE5TMXVMWEpYbldoQU9mUll0VlJORVFJRU5lTGMtZzNjTXJLOTFzNk5XeE5xZkZfR0w2UHg2cVhHMldXQ09nMzU3ZkJnT1ZTdERLaVZINk4xTWVkUTVwaWFkeHhUVDZMSFpva0I0eDFKbEFJZkxfYlU2OVBWdy5GOVFiM3RWbE1LcHJDS0stWUVpODJ3LlQwTVFpYXV3MGw5TWJfRFdEY1hvbzFqTjZJWXU1OVk3U0VMMm1ndFUweDNYTDl5VHNqZUY0Y2I0NExBaF9vUDdnbUgzbjdKLVZEX3hKN2hXY01XNnlTNDlFX005aXlndDlTQ2w5ZjRTdWtpM0NZdkwwUUVSVFlLSW1qMi1BRkRMWkl3Tm1HYmE4RzhheFBxR2NOS3NSZ0daZ1lUVG9pWUxxQnJ5cmJ2TEp1ZENxZ2plUWRpNU1tdHlQRnBhZ0hwSHZLa3VjRkdwLVhtSjFLYk8yQTJRT1dRVFFaOUNlcmVCcXJDbjI0SXdhUXJVQzRyTkQydzBVQTFUY3dFZXVWQkdFTGRKWm9zWHM2Q0dEZmpaSHFjdnB6NzRKd3g1T0VpcV9EUHM5VEtya01ob3djRXBsWjhaSk1jTlFSZnU5Sjg5ZDdZWGdHZEI1aWtKenA1WlY4OXcxMmIwekNITllKamdkZEhTNjJmalZlYUUxT09QXzd5Zlg1dEpiNmQ1QVhpZ3ItSkozbGI3Y2JhOXE2NHBsYmlhck1LemFiNUhtMkxNRnVLQnI1TmFrbzVQMDBoUUJnR2M2aXBJSzhNT2NLc2RhQjJGcjUwX1ViNnJEUzA4NnUzNy1DSHRGRnF5LTFBaGlDaXhRakNNTF9rWGtJMHZEYmJqRi1feGtNZGFCVi1BdTc5TzZ6V2pzRGVlV0t0VXZWUW5CMGM0Qnk3SVdDTGVWdzIyaTA5WWk3MnpCcWZPRjRyTmd4VTNrSjdfLTVib1dteVlXNndNOGVzTjR4R1kzUGhVNHlLRV91RGc2dk5Od3Q1c2NXWW9TMHh4NlBDb3M4S0R0Y3ItVXlwUTkydGhVX0ZYZ3E5U3RUWXEyWWdWV0dQbnM1Q0RMT0RBSi1sMTFJNklpdGxQN0hoeUxvMzlqNzdpV2ZUS0RnTDVrcDdEOUUzX3FkUFprdGpWUER1M1pRY1Q3MzlOMnp6XzFrWHJEb20tNlBQcXdWUzZtUXpBVW1xaXhTaXZjcWJxalpJRnRPbGxLRkE2cWVyaDJlU0FZelRNU0N1d0p4REJSQjUtbjBNUWxJSGpDMTdkTFpoVnFEMVNiNlBycV95OXN2Mml2V3E5TGE5R2ZHbEhBNlZZM1QzUWRTQ3VrWVJqWFhxLUItTm5WZGhGTVZhbFZ2b3NySmZuSEZhWGZMaTBnczVVOUt1NHlqRDdRb1cxeVIxSVk5T3JaNHFSUXdrcG5tOU8ycnJIMXBtX1hTekxRVDRrWmNLYnVneHNvWXRsRE9TaW9iS0RYdTFNdENxdkRudnh6OEZ3MUdwTXJCdUxrVlFEVmVlUDJqNFp3TGxPbkxUTmk4YlNjTm1fN3ZUc1RQbTRJRDltanBXSThCYXA4M1RLaTNkelAxazFpM0dncnIxSEpVQU96Q0NjUTRnaWxES1o4UkVsUWUyMUJBcUo3eUVublZsdWN5RzZBV2E3dmlZWXV4eEJIa0RsN1hHZHZYMGpJMjZyd2NTX0ZIMnlOaWFmZDN3SkkxMzQyWEF2VDdDUWVoOGRaZWRKU3FYUUdqQjVCSGF5Vl9vZnplVXBfOEhqRkRoS1VkcmNJNGkwa0ZwcEhkUFhNQXUxMjh3RHUyTG5VenlNNEpad1NJdW1fbmpiUTNJU1R5bUVMTngzd3QyV1NFT2Q3QUt5S3lCNEJzU3NkUE1HZXdLSTFnc2otSENFb05Cd3hQQkF2VnFDSUkzbGY5NG0tRU04LVh6TnRCVXFpT3Y5ZERCa2d2ekptSTlrMk9fVmpjbUZrbkdKb2kxVnpZcGlRVTRYbElaempDd3NDRHFrYWh1YmNxWFdyMDhVdFBtV0hGRXk0Q0tvclZMN1VIaVhsVnJPR1VHdFN2dWN3S2RjS1RPeldsUngtRGNGMExDek1kR1p3Y2czZWk1bWl0bFliRjJVbGJOMmJaU0NQWDljOWxFU2RBUUhxUEVsNXJhVDY3aDlWeGxPc3doYW54SkZvNGVuRENaYWZObURGRzJMYTY5RXFCVjZLTHowXzR1S1pDNW14YXZEazZXS3lmb0ROeXFzdVZMdG83WXNqUk4xNTJYMDVYSEhuRVN6NG5lM2MwandXYXo2MFpJR0Q1TUhNUUhQeTdPNFdnYWthVnNKZU9mYUNza3diYjQ5cV9tQnNYME5mWlBjcWFiRFhoWjdCWUxROVhFUkdibndkM0pEQmgtX1RUN2s2WERpY0tUblZQdWVGN3dzVl80aE9HUkpkVEk2UFRmV2o1dWY4dTdxRU9BdUt5NmV1Vk1LeTk3TVdLT1Q4LVpRbDBoSWowcmJWR1pILVI0cnFIMXZfVmdRUGRpLXFXb3FXcWt5MGFaSzNDTkEzUXhXZnRMR3AwcUVXcHU2T1EtQ2hONy12eE4wdFVlZGREWlF5V1d0d3g2VFcxS2hDQldaR2pabTlBQzY4YlUyQnVOTUU1NW9VV0dsbmNOOUVuRnpnTm1RTVR1SzV2VGd3WkJITWpmUXpsSUdfeWZ3QXVtSHljSzVPT092eDk1SGM3d0RBRDJXMVdSb2h5MDV5TFJkbEJ2XzREUXJyTWthZEVwZjB1dHZod1V3ZXZSNU1jVkV5Yk93VUw2Z2Y5a3JDNEw0YlR1bUJRbG9Ccng1aDNuTHhZdzkwcmlqbG5LajVZYkthZWpyTXdiSW15Ri1xVk5NbWpTd2I1MlN0SjB3T0czeE9HZkJRRHhQWHJtSXhoMERSOEdzSzBkeS0xSElJZWo1LW9STWRfSjlhVkt6MFk0d3g2VjIzaC1qUDNxMjRKYmF3dndsQTZyVjVpVUZkaDZKUXJpTU5DLV9hRF91X181VTd0OENIN1pWQ3VQM25JaTV4N2dtcWFsSzNlZ0htM3BkYl9sb3dYRTRaRUJETHZ0a2lobC13LVBGc3VZb1VKSUZWcUZ2VnM1RW5TU01XMFBJWE9TZlZNWW1KWmVrYmlHX1FqeGtCMjNCaHpZclNqQ3oxcW5TTXg5a3ZicDlRaDFuZFJYSkpJUFUyamVIdUxCNE9nVzNoenluQ2FxQXZQRXVHMlhuS3B4WGZ4QUtOeldpTElOLTBsUTRfUXQ0dHctZmphWVJVVjVLVWpyYlZnazI1MDZIUG1ZVEdWUVdRX203Z1NBU1BaajZEYklua3U3SzhFWnI2b3d1SDI1M1hxazlrSWwyTE1CcHZqT2tOTWFRTXhLcjItMllkUEV5LS1mTUFQTHBfVU15MnhqbEtMS2s3blhJdV9IMXZSbmdfVlVyVkhuZUdqRmFuODdRRU9SU1Y3clRBcHJPMmZUMmpfOWhoNkptdFlrUXFnRzg2WXlKa3NValdzM3hwZGk2TlBGRUxqQWd5T0ZDLTRrTWdLbGdJM2lUSElCV1Ezamp0U2UwR2N0MUs3QnBCSlJySUFGLTFVQjZKVDZjSjI4Z01zd0k5OGt1ZDVob1hZbVQ1bEEtWmFELUk4ZE0wcUZ0SEg4a1lXX256em85bTY5LWlZZlZfd3N5Mm1CdnVlb05RZGRRS0JrbWlVTW54VjkwdEF5RWc4WXJaWUwxck9jWHFjb2VJNl84UmV0bXZZeFZNMWJwdXFfajlmTXYtelRBOUpDZXlKMXFBTjVWQWFpY0lnZzFKWElDTEI5amVTT09zUXcxYXZxdk03TjFBcndDcjZvTUhycTVaQ0VLODV5VmI1RzhjY3Rld29pSFlzdVlPT0hnSDNMbmNoV3pmSjNNaUVjTTZfVjdSZHZCUWQwM2tQekdFVjh1STJ1aDl0bUxrNkY3VUt6WU02RXhJNW1LUEM5LVFOMk14ZTB6NDZrZTJteEdHR3cteXFMNjFHR0FpS0FjcENsSzVHeHlRbVBuREo4RHFKTk9WWDNoX283YTExVW8zMmtkdEcyaHVYcERVc2F5NkU4VGJ5R1dFZ3dmWDdaVnZrN1VNM2VqdDNqWXBxYmRZSlBNTUJCMGdNOU9mSVFjS0lUcm9IMHJEbFE2Wmt4UGM0ZHBlQ21NMzg3NXBXTlFrZzFKSnVRZzN4cE9WZ0VGallabEVENTBFaVZKNzg3cUM1YUdtakxRWl9yLVA3X2hJN09lcExWZ1BHSEFTUkxsd0dOLUZwTDc4UW9VempfWHUwNlBkNkF1VExtYmpoVmlERC11ZG5xdTVVR3dKNGxZamJqSkNBN3VQT2VfdWpzUWhZd1VHQV9YQnlsbkVySWxMN09YSE9UeGFEbEpHSDQtNHdNcm9hbmhPWTVoZ2NWZHZVQlpVZ1JEVWg0MGwzejhGVWJhUmxpaEUxeXQwdU5vR3F3TWRyWnZoTkl3YVFjUFlQeVV3UTdBdWh1dl9qSXRVcWlGQm9ncnlSb3Njd3oycXR0am12OEFRWUh5QWx5OXVqdmJ1cnk1TGNJaF9FUWZUekJuSnlfcDVZdzBDWG5CSzg3ZkVIOHJhWkh4V0VUcHFseHlmWWRWZjlQakRYTGJMYWJWQ2J6TXNSMnNYZkFvNm00VmhnaEYtQ0dOV3lta25EMDBUbWU0TGE0Vy1BLU9lR2o3Mi1uOFZjNmI5Zzc4d25tYkF0dGRyUThQWVdLUXZjdXlEbHZ5RUdHSF81VW10bFN5ajJKbHRLZXN3N1dzai1hazhDWDFidGRzU2xoQldjYUJ0dGozUmp3bEN4aEQyTXlWdHR6dDIwN3JPQjdxdEFJeVg1enJZMUxaSHB3RW1NeDhkWnM3NDdlY2ZhZVM0ZFFCWmN6U3lCNFZFWVRRWGdIeWdFX3EtYndfZXhqNWs5c0RHeHNTRnF5elFCVm9VOUtlbmFtZTRESnNMWFdaaW51UEhZUVNtWDJUZFBabXNkSHhCa3BBcHJiLUg0SGdFSnBPYWxCa0d3aFhza0hwYjZUTkhQeHktb09tLWhBaXptTVZPZzlnTDJOSHpSdUFtb0kzVTRFd2FfR0Vub3d0ZUFRU0xlY016WjZxZ3l1ZGswcG51UnlONlAxbTNCU1ExODRXUzNqeDFDNDYwTEFKM2FySS00QWV1aW5fMFZYM3FHdmEzNDR2ZXQ4N0RSN0liTUUzS01rWWtUdXotaHpqbnhHVVQ1cXZhWnYwNzdQVHExbTVDUVBUZGVlNlNnMzRmLXlseGg3MGoxSS1OWnZ3aFAyTFZ2OTJkdVZ4SlJSN3hzbEp6UzU3NXE3aWZ1UEcwUnp0NE55M1lESno0TWVDTk5wWklwTUJKeGR2bkc3azhsbXlvQlVRYmR6OHhCdW5YT3FsRDFHU205M05LYy13bzdxZnpJanYwWjF6WVpwLW5LN0o2NEUtSnp4MkQxZ2xJRG5vZGw5R215UzlwbzMzOUlZYU9QZlJnSTNad1FTVkdwcEJQN0dNRUdsRkVxbG83bTUtNFNZWEc2SmRYYU5yM2lRVmdoUEtkQWVpLWJDTEFQbGJGSkNFQVU1NXJfSEVmS2xUNS0zNlN5ZHRlcWFTZEdvMVhGRXpadWFILV96OEJsd1hXME4wdFJpdHo3SXh1OU5BTkM4R3V0Z2t2WHVFUl9Obnc1VUlsYXJlcE02VERfWl9lOHJGRDdoYXhWMVd0b1pkOUJTd05iUm1JeXU2Y2ZaelgyeFNPVlJVSndWSEctWTNaRGRpcWtzb19XR0J2TFJKQlRWT3NvZVZucWUxWktqb0NRSzFEYUZPb3B4UDdTTWhwOVlpY29XRk9VUU5ONS1EQjMtNjhDbURzdjE1LXMzRFRxUUM1OHhpd2JZLTRuWWt0eVNRV2F5elRvYlZOWG1idmI5SzktdWowYVRWRkx6SDFHMFl2TG1oU1NTd2tfM08tY3RSUExFblhQU1FWNkdVT2p5d0xIT1hTRDZfY1lTN1JrVXR4Mmc4bV8xbmhJUW0wOFd1aTVNSkdQR0JEb0RmN0szd3oyMnRnUVFXTDEwY2J0SlVvQkYyNjJVaUg3TE5pMjJWQ2tsMElYMVVRNy13cEkwcDhkV1NvV282U25PYTdkUTVpQkliZjlQX3JRd1dhYVl1NV9aQlpwQ000VXFWY2dhR1NZVnNxRHpXRVY4LXRjazBYOE51STJyZ3JSOTRDSnhjSms5MWwtb3owbldhTUFocHJubjJfd3hSWEdOYXkzNmJqU3EzWXhNMXN0dDFNN1JjenU3UTJQei1mZGpHWUFOSHZxQUtYUTZpbUphQXNwbE50Skh1SUp1andyTlRQd0ZzNGE5bDRkWHdNMDRRSWZoYzR5em1icDlYRjdVWVU0MjNXTWhRU2RMNUpaTld5QXVxOEFuRzdtd2dTUDNUMjROVGh1U0Z6Zjd1Tk5ySmdfUFk5VUNWcmlPS3FEN1lVS0FSZ1FFQ0EtTmthbG5YU0V1VEN2azJpZkVYOEh6cTJJbDV3TEZyOVFKVjBmT19EUkNyUzVzRHVaVmJ3RDI0Y2VqT3libWd1VWFuTDhiMklqS3h6TFVPT2tlMkVPNVRRTXRQUWZjeTYydkV5c2NwQzJFYXd6YUN2V3ViMVNXS2RZVnUtcVBzdFV4eWlPUHNpcFR3V1kzTXVNRkpwclNscWFVUDFJa3N6M0Q0VGpqSElzb0c2TUFsbFRZcUItSWpuSEhmYzI2blM3cmExeVVjbHRIRWtEd3Q4R1I2bmctNk9XNWJtT0J2VFFDamRUUDhSbXZ3b2tIRXZGQTlXbGs2OVZIVFpFSlNaNGdRZXFzcW83SEJJQ0h3dlViOW16YkhnaU50bGQ1WUFHT3V1U3BOTE1UcTM5LTMzVVZoTjBLa0hLUXZCenI1OXFmaFBIU3lVRnVMZzI4b2pYMGRvb3gySlFEZ1BobHZVYkR3cGluREJqVHBiMDdsY09EYVI3ZWN2M0tDOUhJQVdreDlhV0lza21Yb0FWYVNWTDBsZ05NQzNHVkxSMURfcGVoQTZySWs2Rl9qbDY0N0w4SERqRFJEbjZRRnRIa21BYW10TU9WSzdPMS1UXy1UTldwaDZ3YVFOdTBrV1ktZXAyRERndDk2enRYUkZTVWdNOXJMMnk3OENOMkVFWW1mQUktM1VjamdUblUxRnJXaEZ3dC1JNlVmNFZwNlY4XzZxTjJzVDJyeWFLWHo0Y0JJY0NoNm8tS0RpOW95SDV3MFF5eDhWb0xTNlN0YVEyYU5FejlKamctZ0N4aVp0Q1JYeWlnaWx3NTQ5VWFWMldreHR2bDZkeWRmZmFTM2ptYUxqaDRmOXhHa1JQRUdqZmZvMVY0dUN5QkI5QkNoaVVCZG1qVGxlVlJROG5Ccm5WQW5qYXVIYTRsV3VkNkhjSzU5VjJNTlpNTVdtS0tvb0E4cWtuMzVUY25EdXluSjJITUNnZElCSnVQVU9TeTI1QnhuZnA4RU5NSlZrV19UeU9uTXk5b3JtNTVobHhmSjRENThad2FRREs0QWlFZk1IVHdJc09uZ2pnU0o0S1JDdjFRa1NVeDdYRVhNU0lNUWtUYTBqS19aNS1PQ1ZNc3NBbzEzVzg1VlFKbVpDQ0tZRzZWbS1ybnVYSUdZZlZWLTg1OG93OEJZUGhDYVRhVzRkVnBLWERDRDVfc1FsamdJSnd0Vmc0T0RKY1dxelJpWWpUaXMyVzVjdlBvT1haNUIyZnFaVTlCWGVPQWM4S3Y2a2ZDVWp0OFV5UDFTaGswN2xtZ1A5b25PMWJ0eVc5VnhQSE5uUHcxNjZDeXJmVVcxaEFHQjB1YTFNYmtEVTdfdk40SlowY3VWNV9iLW9sUm80eV9yeGQ3UGRWREJsZHBWTUxsV3haLVhiV1VqdFpTVndaT01rOEtvV2F0bld6NVI0S1ZLNkFnbWJFTHhpa1MxSjYxZ1lJNlhTcm8wRnF1N0dNM2JXdlZQYm1xR3Q4SV9UcjNHamlKeDZ3OUhvZGlLbEZQc2JMakE3OWJuSG5DcHdwSEZBWGI5d3E3dmMtSF8wTU1WVGw3eE56bzhIZ1FfR2tPWEl1OV9uMVJiZS1SRDRXUmlId1RuYm5ZbXpHNjN4b3dHTlBJN2c4R203ZkxfTnpDWGhveDdUSUhXMjh0WFFCeVk4ZmR3X3YtMUtvU2lhSjNwNHBJUnlRQm1rQnpmOTlGRlpPS2g1bUxLMnBrSE9INWFlblFFNng2cHFDakNkcW53Uzk3eGJ0Skp1TkF4M1V6UDdHM2l5WlN5ZWw4SEd0YU1UZVdITzFuaE9lZFNlcTVhaGk4dEFFeVp2MFFScUxsQTRaQUxrVGh5ZUNZckpBd1cyaUJaOW5DRUVnemxqT01wdTJndHpDRnk5WktZWUloaWZKdVQ3dlBHdVhGTUtLVlg0WFU5ZmVoOFhIMUVWbnZ4cENuRjl5eEZneThuVW5CdUdsRkVWOFVCVU5oOE5BcElZY3BlTDd5Q1F5bDZQN3Fock43SEhINEloNmhLS2lVaUItWjRNMHJUSk9mZkd6MFhGWmlaSDdYT21KazBNc3pCbEVhaEFFbjJTU1JaaVFXTThsRFRRcEdrX0p3QkpRX1FVTmtMZnhCcHpsSzBUMGFxS1d3M2doWFktT3FqelM4cTFXOHVBYzNabFRUMFZHRWdWdU8yNl9vRXpXTnZYYnpKMUVfVEFxUkVWS0xfOWFlem1zM3JqYy1GdldSR2pMV09OTXhUdGw5ZzE5RFdhbFA2alJlUlJFeEg3djBLTEdvSHV1RW5IVHNQX2hsMnZuM05WWWl3dFFualFCOXpiMjZKRmxwZzZFaEF1STN4bFZMM3hwRE9qZUlPNXM3MllKY1MzcjAzYkIzbTVHMUljRVU4SkR2WTF5MjJQaG5iOGVmNno1cmk4RDY5clVLWThFOXFraExXYVhOMjRTLTZBYjNRZUtKcmxIR09yaEc2ZkpCdElqTF93Rk9kWjJqOFo0bVBZdmJaNUNEUTdnM01yYVh1aVJ6cWdvdXk3TkliempzOEZETkQ4ZHNMR1Z0OUNLanRVMnR5a0JrSUpQZlhrZ3U0LUpSVFRETjNINGdwek9md1B5V18xOXRMdlBKNEpRbHlzbnhKaEptSW5TUEtUUTljclJHVFFlS0F3THZZemdCMG5QWkIxd2dQVWJHaXRsaHlTV1pqbWplVU5oSnNnb0Z3ZHRFdTloTjRDejROWUVLZ1ozWnBKTC1sZmVJbmp0VEIwN1A4dWtpV3FHeGNBaVI5TDRPdl94VmxNYm9hblduNENNLThVSnZjRGhVRGtpTGt0eHRJOE03Zk01bngtMkFSX3MwcnlDV0F1YmVmQUxRdHVEUnQ1MVZrZnlJZkJ2UWFyb3dINnpIX1ZfZ1lJWFdOdDlvTElMT3FrNHlqcmR5Z0ZXWTl2QXZQN1Y4Q1lraUZuSVVrWGNaeUNsT2dmcTM5bXRKeHBMM2Nzb3VaWFRIcDExZ0xibWRUNUVTbjIwRThiblpEcTVvSEVEWGxPbGZHSE9ldmx6RnRCX1V4R1h0S1lYOUoxQWlLekJyZGI3QmJvemRFcDAteHVpeTZYRFp1Yjc5LW1LcnVQTDJaWWIxaTVoVmpRQUN2RnAyUHBaT2k3eFVmSlJoT0Z3Zi00OUphVE9XTjMtYVhVb0N1a0NpMWdqODhkQ29QWWNVdWs5WmxNelpkV1hJcDlnQ1gyN196U0U1WURCYWlWQ1dPc3c0Q0pGYmMta1FUOUNaMzRkU1hiczZ4S1N0OS1haHI5b3NpY2JHY2laMUlDV182WWRLM0l6ckh1UUV6TnNDQ0tEdW9iVVFRZFpBUlFMeWFlR2w0NWczN21Gb0tQN2J4b01aY1AzRjB3MzdBR0xMVzFjVi02dU5uaWhZQ1p0dThZckZQdWF4aF9VVUxPTk1SZXN5TFVsRHVydmxuQVV5ajFVMU1TbEMxTGtPbV9VV29NdVBzX1VqU2M3SDc3RTgwcmd2QmZCQTdaMkRQMmpWOFFRUmI2Q1RieEtpRkk5TFhmRlI3MjlFcURZVXVRRUk1ZDN0Y3liN3U4TzJlQnZfVGo5TzRPREx5Wjk3Z3BMdVZ3dUpVb3FqQVJnRU91U2lHdWwxaFJxYTl5NlZ0ZmpMNE5qajJJYjFsY2JyQS5OcXpkcGU4Yjdxc2MzQmpYRlhaWVpR" + }, + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "body": { + "key": { + "kid": "https://myvault.vault.azure.net/keys/KeyBackupRestoreTest/d7a019f5da8843aea30722a7edcc37f7", + "kty": "RSA", + "key_ops": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey" + ], + "n": "v6XXEveP0G4tVvtszozRrSSo6zYDOScH8YBVBBY1CR2MCXBk-iMnKgzUyePi9_ofP3AmOxXx-2AsLC8rxi6n3jQNbGtIvQ4oMdUEhWVcVkmwdl0XyOouofEmIHeSxRg6wXFG4tYAKLmKsO9HqmU5n7ebdDlYngcobc1xHsP0u8e0ltntlgWBlSthmY8AMKW9Sb_teEYhilbkvt_ALr00G_4XHmfq7hSOZePWbGSWQW6yC7__9MrlDfzaSlHyBIyLppPEB7u6Zewrl_eNJWoUVrouIGA32qNETIOr_wxXRVGKoerTt-wFC-CXPn30W_6CmKSxoFBNvnzijg5hAU9V0w", + "e": "AQAB" + }, + "attributes": { + "enabled": false, + "nbf": 1262332800, + "exp": 1893484800, + "created": 1493938217, + "updated": 1493938217, + "recoveryLevel": "Recoverable+Purgeable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RestoreSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RestoreSecret-example.json new file mode 100644 index 000000000000..866c443a3a75 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/RestoreSecret-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2-preview", + "parameters": { + "value": "KUF6dXJlS2V5VmF1bHRTZWNyZXRCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUppTlRjMk5ESTVaaTB5TlRZNExUUTFZbVV0WW1aaFlTMHpOMlZrTURkbVl6QmpPREVpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLmhERDdfVW9aU1ptR2JYN1dYUTU5WDkxZ0FQb05kdDcwZE1BbmgzbjQ3eWNjbkRNOU5vTm1hY0NHZmlNeUwxU0FlZDk0UjhBNDAtVE81TDNfQ05Qal9pdWIyaW03Z21nbHNPNnFFUVVIWU1tOEh2Wl9odFRrdEl4QzRPWEowYTB0S2hscnczZlBvVVFDZHVGcFg0ekEzYTR4VTZXTUNfYjZZVXZqUjZnSGM5TFRUR2tIazh1RTY0aVQ4cmt5RDRrU3RNcXhnU2lfRVZwUUdjWGdfNE9wQ1dBOUFha0N1NkpybGRaQW9BLUtXTWpQbGhaWHFYWGMyVkJlbUJjRTQ1YzY3QWhqYjJrSi1uQ1c5dHBjWS1JZ3JEUHFzWkswOS1WbHVtcl9SbzQzcG5FeW5jVFpTdzZlX1h6VnN0dUFOZHdiM0E2OVR1c1hfYkJKZ0J2SGQ4cDJSUS5WMTlhMVRacjZ2UjJHdEVaWGtOOXJRLmhwMU5IMmwtZklWbVgwWlNfTlRzekJfUEs1aktDUU5rSnJyRUhRQmZjQ2VjdHhmVU5uVlB6MVBqRWNDblZuV0pCUk4zTlFKZm01MjFLRHp1MzBIVUFEUGVmVHJyMFVFS2x5QTM2cThoWFY3VTdoQ0dHNk85NVpYclRsZlVENDI5RTNTNTQxdVBmWGpGR2cxbHlucFNTNnAtVkFzaXFlY1lpQWNuM1hhNzRhUm5xS3N3ZzhyU1ZOX09hSVU3ak1VVUhYZWY1ZmN0NlFrdWFfYkt6Z2dtR2ZiT2RTdVdNRmVQaF9mMkJMUFNGN3k1NThEMFZxSVlNY0JJR0dMU3BQUU93Q094OFF3Y3NVUEp4ZDFuWkVYYjRVNEJZYlhBcmFMX0NwekYxZlhYWVBsdmVUSGdKNVdrR28tWXNJVzAtT3ZqVGdLN2hIamxpR1psd29HOVUtbTJSVDZfbkhseHhVRFMyY3JseGNmay1OOTlXd0tEdUxFMTM5ZE1mN2RCSEl1aTdxd0RXdm1TN2JMTHYzM05Wd19XSl9DT1VGQjgycy1ELXk0UEdIRzVackhsSDgxa25mLVpRblU0SmZfY2lhMWhmWlY3ZFMxb21UZDQtNnJwZmpTMGxFT3VfZTQ5bUpYUGFpZ0hyLWFQYkFzTXJJQ2JvOUVIR2IzMXJ5SlR2QXF2ZmJDbU10bkdLUDV6aUNiZFh3SU5ONzBJTk5lZnJLWGZkZFBUd0RSV3d1ZkxCcGNlU0U0SG5EWVZVQmdkMDl4UUZidG12UDhhTXhhUlpGSTNpWG1fbmpCNmZfdlNhZUNUakdVYVVuRE1QQkdOQWQ5T2xVX3dvUnMtalNCVnVqd1FQSGlGcm5RWElkXzBRdXRYSm54cTU4aUtlTGJvNDJtOHgwaXBRcnB4aEZoUDdHNmZOWXAwVmxXR0RxZ1Q0VlpPQkZsZWRKUU0yaDQtb2xTbXdtUms0M0Y1cjdKd3h4aENqU1JReWx1MGEyQ0ZONWMyZjIxTElZaFliLWNReWFXMDNpV3hsb04zWld5cDJIb1FlUmZPR3lXUzBiU2NBT3JndGpBYnJaUFIwMGRRNnpSOHNBczFYUzh3dzBlaVczbFpsdjJwVWFxOVpTeVhnTS14b2NTOS1ueXRaWGtWWlUwX2dDVXJBV0ZKNG5XdW9oTGM1RkkyRWFQNWR0SXVWa3dnbXlsR1gtYk9ZeHp3dzVGYmI1V3VEbnJ5aDBMSnVic3Q4VXdLdnl3bk1jQ3duMjZSVTNxQVRudGJubVhJS0FyeGkwMldQVk9oTXdpUWZuX2h1TWk5emp3MEVuaXNWdktNWUNnR2xqNWlGZW5Tc0FKUXBiLUY4bng3OWFJQlJaTUc1a0huUDR5dGxmNm9FTkRsRXNJY21aeEtOdEIzcmJPdVROYUhLTXZBNmxSNzlMMDJZSTZrcEdrUUZnaHpIaTBjTWkwbFdCejRTM1AzUEMzZElZSVlQZ0Q2S05kT2FLWHkta0dWdUlsWFNmVlVrMnpzM0NBeTJhZEJjV0NMV094ZkRoQnlwNTl4MHpBRExvdnZySHRLOWF6TGN3N0lTbVl6eUhYMkpobVdReUYtTFd1VzhfcW41SkFVYlB5Z0RTRDYyMi1PTGZQVDZmc2VTWUVBUTFLVWRwZTFnSV9hZWxVT3FaRWN1aE5SckU1YUp0LTN5TEVLVWZIWXF6WTlGbHJrUE5MUC03Y2xRbmEySEhfZmMzZV9LTGtGUDFhQTJjM0RVaERseGhsTzB2bFVmV0c5eXpXaDNZN0NmRFlFMlBaUzZBcFBlYy0wa1NDcEVKMmtCcnFzWG4yeDJDX0FDdTdCTTVGZXNJQkN0M2NqSEdQSVVQRnEteGVmT0RCXzBQcXZDTXpBOHg5Zm10Ny1sNHhVQlJaa0dtZExhZFoxVzdFUXRNRVpsSWMtbDF1V1UzTU15cFZpVWR0OWxJUHVQVUEwc1NrbWxrTGhNSjgyNE5QN0hyVi01dC1ZNDcxaWVKMHdEUjFxMmU4MU8yazdNeTFlTDY3TlY4OVBHYU81SVR5WG1ueUVXMGtVbl9qa3l1UVRkV3dsS09HZVZIYkJWNFpxSXZHWjdQUS02TEE5eXc3a0dyZFRhVFZXOEdOOV9GY1c2VUhjbzA0U3dqTzY2S2x4VlFJWWpBdEZPZlBjWW5xNzF1RndyQS1UZHVDZG1sUFBHOVpjc2tiQmdrbF8wVk90dmhuc0pwYXZKZ2Zka0d3OF9qMkQzd0Jzemd0VndHNk9nNW16eVFwM2pFc0w3UmNtcXd6WFBOaDdKYXdHVDBJMlRvZHYyQ1Z3MDkzWjJlODFXR1NxRnlIejAxdjFBaGN2T2VWdmFjUGM2Y1JJaVduNW93ZF80d2FBdjlyNjVVdmtWa1FLRXpHUmo5eTZILXdZTTMyV1JyMzBlOU9MRTNKUU5POV9kNjRTRmIwSjZHa2VxUmtnNkVXc2xqN1JYLVU1VlhrS1BtMzNpS3c5dGU2NVBqQUNnZThRVDBYVWZEaUx5a1pGeUdpZ09ZMS1TVDFxUlE1eUhMTXhEc3BPRjFXd1lMQ2c2b3hocTlWMm55Z0U1cUJ2ZnYyWUtFaDdjM1dWNjJrYkw3UXJ2d0xkMHVRZ1FwYmUza3E3dGJzcC1lNWlud3cyY0YxQzByeHNScGZJRHlJMmg4b2xHMi1RQUZkWmtlMUlmaE1FZmNfdUdXX2pqSGJSWXVzYnZCRnpKMDdaOVJsVnFMR1A2WXBnTDFsRTFOY09xUVJyYVdxckdDTWZ6SzZMVENQSl93aHJRam9WTzdVRDJIUEVnUjZ2S3U3cWlmTmo3UjE5OUJuRi1EZmlnbk1TYTFKZkZadDNuVXVZOEhMUXRoUzN4MUMxOE50d3dsaDVuNGxYS3d5MERHenljbVNweE05QkdPNTFRckFmSXRfY0xHbUlzMlJ4MzMyeDRIdEZ3Z05nRzFBazNIUno4TlJ4V3lhNWhjb1NoYURXekhES2gyOVp3Vm4wYXVzeWJpal9uNlFGcnZZbjRSOHdPNlRQV3FrS09JcHkxc1lQNWxyNDc1anZSRVZGaFdCWDBiUXdJdnNlM0Q0a0dFQzgzU3FWYkhxY3phZTNwOFNxaG5tQW5ZYzBIbWp4clJfZUMzT0hYVFBGUFZmNDlVWHdrQjIwY1lvcjJ1dzBaTzJ2TUg3S1QwcjBSWDBQVy1qcGpORFpjSGRSNVVCMXFacGlWLWxaYkw0eF9IZW14aWUxY0RPOHNQSXhIOElUSWtOV0tTR1N2eWdraHBBbGl2RzVEZXJObElkeFE2c0tHQ3RtMDEyT2xjN2thaVFaNHh0TjR5ZVpPU2xyS0s0OTlIcWhObzhkNTNsbFFfMW5ncWlHbzhUSDlzWkFrclYwclc3dkJOSF92UlhBdTc2MnlpZGhZUURYYXJXSEFUMm9DU2hEN1lOdnotekoyZGtEajJMcW5CdFNCWFh5T2xsM3o0ZWFITDd2MDZ1QTgxMVBKQU5YZUdoenNaNFVQQUQ2Q0E4cGlxSHB4WGkxODRHNEJETVU4S2VHeHZLWnJiUlNOT2pTOFNrQUJKZERfSklIZ1RhNEFhNzdPUmNZcVY3OWZ5djFZVHNma2lLR2NUYzZIUjZzUVpsamt2U0NQNjdtTTRGUHRqTHlfX1pDQlNwdnRSVWd5UlpNM1dSOUViNHkxa29uRG4zUjMzN2lpSzdfbGtIa1UtZ21VbUpZUVdnUjYzT01pZUdRUHdNR3BSZXlRWE5yckJVTDN2Z2JYdjlac1ZDcDh1NHRwQjBleXJvUXgxZC1KSWJvOWVyR1VlX0ZzU1Fpd0tIaGFIUk02Nzh5dENkcHJFbDBWeG92TFVrX0xNcTFjN1R4MG5jbFl2WE4yUjhEMXNhU2FibkJSd19CU2tZMFNMSXdhb2RpY2o2ZzdLd0ZfMXB2eThhNF9LbnJNLUNkenBvdHA0aTd4QUJuY2JRVUEwWkpsYlp1elRpR0F4ZjFnclk1Z0dZOTVoWi1XZG1lOWlSazBHRTJGN3d4MlJyLUVvS3lZRjNjak0xMWt6MWFmME9fNFdyOXJoU3JrX1NHU3l2a3ZCTW9NZ0xOX0tSS1BlTjlqUnpwRlVST2VnN2NCbGlhdy1odnZhY2lCeDN2UWRqTE5jTldQdU1UbzVmME1QbmU4TUtXcFBoWjBySElMaEVuYW1pcG82X3pzNjczcE9ma09FS0JWWE9mUDEzR0UwS25SWTBab2JPLWRub254LVdBY1dodFZvX08xbkwwTWE5ZXFMMURhRGhJU0JNbVRIM1hkY2dDTnF0emIwcVMtS1l5Mk9zRzZOakRDVEM1aEI3MXIwU09WMUprNFV2QjdYemxTTW9YUXJnTzF2ZFVwSGtxaVhUM1RJZmlQMWRKcDEweDlSMlp5R0lzUzljQUtNMEZyMGRxQmJmQy16NTJpcWZweW4zUVVqb1Fld2hPYnJwUEZGOF9lUmVNRlIwSXZjUkxnMHpwek56UzU1N1pkQkZhemxNTThLcnkwN2QyUDAyTnZtclUtN1ZjOW8wZm1qem9WOHVVTG9PMkJHdmFRdnFJNmtBTmQ5VWo1X2JkY2NVUzBhcklzcGFZa1UtUXQtNnQxYU5YUUdGZEtUbFMwSVowek54bkNIZWRySEE4SkYtOFg3d1ZpRW1McXJQbU1Sd25sbWx3SnhxLVlReWMydmdUallSbUxCVU5TS3VrZkJsa2VnMmlCRWdySksxVlNyRWswX0ZvOXkzV1EwVlZuNXhEZXlGc1JuWDI4Tkl6alFQLVNXaHhYbzdPYm5YY1cxZHlWNE1fYjdzM096cEMwOTJWcGZYQkpaTDhBeHgxNGY2TmJzTEpXLW95VEdsaTJFb2FCZHJKQ2JkQlNOdWJlbGdRRmU2V2hqSjRGdlNrYVJISjFTT3ltbGFtQmYwaVNDOGM2X1g2SkZORjNmOXYuQjc5SDJvbVIyTU52SndydHVzclJ4UQ" + } + }, + "responses": { + "200": { + "body": { + "contentType": "text", + "id": "https://myvault.vault.azure.net/secrets/SecretBackupRestoreTest/01ddd6e3a0d34d35bb5bccecb1251837", + "attributes": { + "enabled": true, + "nbf": 1262332800, + "exp": 1893484800, + "created": 1493938113, + "updated": 1493938113, + "recoveryLevel": "Recoverable+Purgeable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/SetCertificateContacts-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/SetCertificateContacts-example.json new file mode 100644 index 000000000000..990d571fce47 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/SetCertificateContacts-example.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2-preview", + "contacts": { + "contacts": [ + { + "email": "admin@contoso.com", + "name": "John Doe", + "phone": "1111111111" + }, + { + "email": "admin@contoso2.com", + "name": "Johnathan Doeman", + "phone": "2222222222" + } + ] + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/contacts", + "contacts": [ + { + "email": "admin@contoso.com", + "name": "John Doe", + "phone": "1111111111" + }, + { + "email": "admin@contoso2.com", + "name": "Johnathan Doeman", + "phone": "2222222222" + } + ] + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/SetCertificateIssuer-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/SetCertificateIssuer-example.json new file mode 100644 index 000000000000..de9035e34f8e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/SetCertificateIssuer-example.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "issuer-name": "issuer01", + "api-version": "7.2-preview", + "parameter": { + "provider": "Test", + "credentials": { + "account_id": "keyvaultuser", + "pwd": "password" + }, + "org_details": { + "admin_details": [ + { + "first_name": "John", + "last_name": "Doe", + "email": "admin@microsoft.com", + "phone": "4255555555" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer01", + "provider": "Test", + "credentials": { + "account_id": "keyvaultuser" + }, + "org_details": { + "admin_details": [ + { + "first_name": "John", + "last_name": "Doe", + "email": "admin@microsoft.com", + "phone": "4255555555" + } + ] + }, + "attributes": { + "enabled": true, + "created": 1482188806, + "updated": 1482189526 + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/SetSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/SetSecret-example.json new file mode 100644 index 000000000000..36dfa1ace97e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/SetSecret-example.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "crpsecret", + "api-version": "7.2-preview", + "parameters": { + "value": "mysecretvalue" + } + }, + "responses": { + "200": { + "body": { + "value": "mysecretvalue", + "id": "https://myvault.vault.azure.net/secrets/crpsecret/03bcccc7c8cf4546a0e3e21e52560441", + "attributes": { + "enabled": true, + "created": 1493938459, + "updated": 1493938459, + "recoveryLevel": "Recoverable+Purgeable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateCertificate-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateCertificate-example.json new file mode 100644 index 000000000000..b4d9e8f76c13 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateCertificate-example.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "updateCert01", + "certificate-version": "c3d31d7b36c942ad83ef36fc0785a4fc", + "api-version": "7.2-preview", + "parameters": { + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799 + }, + "tags": { + "department": "KeyVaultTest" + } + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/updateCert01/c3d31d7b36c942ad83ef36fc0785a4fc", + "kid": "https://myvault.vault.azure.net/keys/updateCert01/c3d31d7b36c942ad83ef36fc0785a4fc", + "sid": "https://myvault.vault.azure.net/secrets/updateCert01/c3d31d7b36c942ad83ef36fc0785a4fc", + "x5t": "fLi3U52HunIVNXubkEnf8tP6Wbo", + "cer": "MIICODCCAeagAwIBAgIQqHmpBAv+CY9IJFoUhlbziTAJBgUrDgMCHQUAMBYxFDASBgNVBAMTC1Jvb3QgQWdlbmN5MB4XDTE1MDQyOTIxNTM0MVoXDTM5MTIzMTIzNTk1OVowFzEVMBMGA1UEAxMMS2V5VmF1bHRUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5bVAT73zr4+N4WVv2+SvTunAw08ksS4BrJW/nNliz3S9XuzMBMXvmYzU5HJ8TtEgluBiZZYd5qsMJD+OXHSNbsLdmMhni0jYX09h3XlC2VJw2sGKeYF+xEaavXm337aZZaZyjrFBrrUl51UePaN+kVFXNlBb3N3TYpqa7KokXenJQuR+i9Gv9a77c0UsSsDSryxppYhKK7HvTZCpKrhVtulF5iPMswWe9np3uggfMamyIsK/0L7X9w9B2qN7993RR0A00nOk4H6CnkuwO77dSsD0KJsk6FyAoZBzRXDZh9+d9R76zCL506NcQy/jl0lCiQYwsUX73PG5pxOh02OwKwIDAQABo0swSTBHBgNVHQEEQDA+gBAS5AktBh0dTwCNYSHcFmRjoRgwFjEUMBIGA1UEAxMLUm9vdCBBZ2VuY3mCEAY3bACqAGSKEc+41KpcNfQwCQYFKw4DAh0FAANBAGqIjo2geVagzuzaZOe1ClGKhZeiCKfWAxklaGN+qlGUbVS4IN4V1lot3VKnzabasmkEHeNxPwLn1qvSD0cX9CE=", + "attributes": { + "enabled": true, + "nbf": 1430344421, + "exp": 2208988799, + "created": 1482188981, + "updated": 1482188981 + }, + "tags": { + "department": "KeyVaultTest" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateCertificateIssuer-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateCertificateIssuer-example.json new file mode 100644 index 000000000000..4641f2c52779 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateCertificateIssuer-example.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "issuer-name": "issuer01", + "api-version": "7.2-preview", + "parameter": { + "provider": "Test", + "credentials": { + "account_id": "newuseraccount", + "pwd": "newpassword" + } + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/issuers/issuer01", + "provider": "Test", + "credentials": { + "account_id": "newuseraccount" + }, + "org_details": { + "admin_details": [ + { + "first_name": "John", + "last_name": "Doe", + "email": "admin@microsoft.com", + "phone": "4255555555" + } + ] + }, + "attributes": { + "enabled": true, + "created": 1482188806, + "updated": 1482189526 + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateCertificateOperation-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateCertificateOperation-example.json new file mode 100644 index 000000000000..bba7358cdea7 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateCertificateOperation-example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "cancellationRequestedCert01", + "api-version": "7.2-preview", + "certificateOperation": { + "cancellation_requested": true + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/cancellationRequestedCert01/pending", + "issuer": { + "name": "issuer02" + }, + "csr": "MIIC4zCCAcsCAQAwGjEYMBYGA1UEAwwPKi5taWNyb3NvZnQuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxxM2zqnPtpH8aiHX5TdEoZLO0Y6fsjk9QcjKgnHomrwUc9vK20UYYEPKt9aGOT7HNx0do8OulPCnLPrKowci8UHu1qRW/qHvsOJQ/UrQoMCHxtXptVc7Avx8WQb045sCdgp/Cl4xO8LMZa70kE4dghZU9zmNZk8wqDIxyYdh1lqqfGe49EWOxcfszTeeKs8KCsQznjExbsudBHLLWoX4VFTGMe3VcIPcV6iFf70buHKznDMXFiRC0IYwkc/GyWIadB1CSEae8k/0evsPI5lYYZLaO/kLffEUtzysqxZNCQR+S0eVPTGTLHa+fndnPPs65XZDzSZi2fZL01oXUfCAQQIDAQABoIGDMIGABgkqhkiG9w0BCQ4xczBxMA4GA1UdDwEB/wQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwNQYDVR0RBC4wLIIWb25lZHJpdmUubWljcm9zb2Z0LmNvbYISeGJveC5taWNyb3NvZnQuY29tMAkGA1UdEwQCMAAwDQYJKoZIhvcNAQELBQADggEBAKto/ZF9+02fQ3sLuIsRuap/O/AZz3IhAubNfyCaWvVGVAQz/Aqpf5c/liyKhxqRG6LR9Zu50oxRK5222ezR+56vJikjdXRVShf2xYsMm1CbCM1JuzsnkTeoUHHE12xx1srH/9TH+DVZIk6NXxc4wVIagbpwxiS5gR3Nly5k0ZVv7R1B79J0GUqSwK6qjuooWrBsYMEx319hz8fB/Y4jnPE8p+Cnn3AGEqnebVngXncq/QnHxnrRVfvKFVySqRvlsvM8buILmBbIaywEUqwhNtZX2i9E7reEJ8aeZcf+lAeKF3YDvffaXGTc75aiZlBk30Lv/hn0vs9T0/FedUnIae4=", + "cancellation_requested": true, + "status": "inProgress", + "status_details": "Pending certificate created. Certificate request is in progress. This may take some time based on the issuer provider. Please check again later.", + "request_id": "3dd81d528cc84c5a837c607f1a50f2e1" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateCertificatePolicy-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateCertificatePolicy-example.json new file mode 100644 index 000000000000..4010092fd094 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateCertificatePolicy-example.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "certificate-name": "updateCert01", + "api-version": "7.2-preview", + "certificatePolicy": { + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Self" + }, + "attributes": { + "enabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/certificates/updateCert01/policy", + "key_props": { + "exportable": true, + "kty": "RSA", + "key_size": 2048, + "reuse_key": false + }, + "secret_props": { + "contentType": "application/x-pkcs12" + }, + "x509_props": { + "subject": "CN=KeyVaultTest", + "ekus": [], + "key_usage": [], + "validity_months": 297 + }, + "lifetime_actions": [ + { + "trigger": { + "lifetime_percentage": 80 + }, + "action": { + "action_type": "EmailContacts" + } + } + ], + "issuer": { + "name": "Self" + }, + "attributes": { + "enabled": true, + "created": 1482188947, + "updated": 1482188948 + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateKey-example.json new file mode 100644 index 000000000000..dcbbb282eafd --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateKey-example.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "UpdateKeyAttributesTest", + "key-version": "3d31e6e5c4c14eaf9be8d42c00225088", + "api-version": "7.2-preview", + "parameters": { + "key_ops": [ + "decrypt", + "encrypt" + ], + "attributes": { + "enabled": false, + "nbf": 631180800, + "exp": 662716800 + } + } + }, + "responses": { + "200": { + "body": { + "key": { + "kid": "https://myvault.vault.azure.net/keys/UpdateKeyAttributesTest/3d31e6e5c4c14eaf9be8d42c00225088", + "kty": "RSA", + "key_ops": [ + "decrypt", + "encrypt" + ], + "n": "tHCSyq1FqGHXIFHs1m4riKYgPFNSTlJGPzxwfUyZJUxxZsFWMxmZRzbM3kcXC5N40AJfeqDOMs0gY0LZEfhw8kJHBf2GEH2Sz923E4OQjLk_ECdAiKPW_8t22cqD_pGIuB7uibjLZgFFRv7oe0t8cTXKn7IwAH5gQBLs8NNV7hx1Ozy82ekCgOovFldmD3c3P1oZQ_v_-jOP6O202aEfDcZut42J6zI8eYwvGiDKmo2fCPPeth1LYBOeUMnrEZGT_f_w3yAgqvuSkHCL0x4MjZzc2EoNI_3ooAHZohDaPHLRfz8neDPADZzbHA6SDn3GgvC1K_Je5GBmqjTH3aIMlw", + "e": "AQAB" + }, + "attributes": { + "enabled": false, + "nbf": 631180800, + "exp": 662716800, + "created": 1493860275, + "updated": 1493860277, + "recoveryLevel": "Recoverable+Purgeable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateSecret-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateSecret-example.json new file mode 100644 index 000000000000..e0825bb9dfea --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/UpdateSecret-example.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "secret-name": "crpsecret", + "secret-version": "03bcccc7c8cf4546a0e3e21e52560441", + "api-version": "7.2-preview", + "parameters": { + "tags": { + "mytag": "myvalue" + }, + "contentType": "myContentType", + "attributes": { + "enabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "https://myvault.vault.azure.net/secrets/crpsecret/03bcccc7c8cf4546a0e3e21e52560441", + "contentType": "myContentType", + "attributes": { + "enabled": true, + "created": 1493938459, + "updated": 1493938459, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "mytag": "myvalue" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/backupStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/backupStorageAccount.json new file mode 100644 index 000000000000..d7c29c6d1282 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/backupStorageAccount.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "backupStrg01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": "KUF6dXJlS2V5VmF1bHRTZWNyZXRCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUkwTXpnMVlqQTNZaTFrTlRRM0xUUXlaVFV0WVdVNVpTMDJNVEJrWXpNNVpHWmhaamdpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLk1JeFMyLXh0eHAxekpaZ3ZrTUY3d2pGMWxiLVJyNWFrbHFMLXpBaVVOODJKZFJNUDFwak5iS0phRktIOXBRcDg4ODBKeERDSmdESUZHc19OOGlnYmdIZ0Q1c0xVMi1pRzdKM29Hc00taFRMb05oaUd6aGY1YVREakYzWjZpZVhxcFMzVFVOVUFkeFhpTkpIYk94YjBmWHNtcWFtNnA0dXJ3Yzl3Qnk1c2pwRnJheHNRM3NRcHBDLXZybXlVZExaelJIWS0xYnhwaFQxVUdiS0Zsd1dSODU5TmFSQ1BZOFhDWUVrX0hxNnc5S0lWSXRTTlRYYWYxUWFzUDJob0NHT19PMzkzVUNzWGp0NzRtOURqdi1vTHRoMUl6TU5sSWp0STg2MTRhTGs0RTFMUXd6ZUx2X2Y1cndKeXJOWkF1c3VWRlRieFp1Zzh6T3BfYTdCOGhGSEJyQS5rc3pPdTN3blllb1ZUUjRLc2dqMUxBLmYyY3huVE1BbU13Ty1RcmdHSUFYUFN2bEdZUDRYWmJvMFVFOGxtY2xZa3ZhRE5ab3E0Wm41MVNKTDNuUFZsVnBaRFlrUmlpd05BSUxvRS12QWtVbmZoLUczOWo3RHhqWm1zZW02bXBmOWxoZjBnZFFNTDdmejBqRDZ0dW1xSVFaWUhFalV3VG5xdDloeEw5N0lnUUV0WmtFV0VnUEJETnJJNFpYWXdNU2ZyR0FfdkgzYXU1MWpabDFTWjlGajJsTHpEblNqbFd0U05QSzc3X2RwbUxrTXNCSmMtamRteUpxYmVxdmdRcGFTSUNsOXpUUXFQM2RxN1VQV2c1R1ZDNmlNZjlTcnBoUVRKX1V2bnp4LWk4ZWR6ZUppd2hYNW9HQ043RDNDWjkxTzNLQkhmYklOX1VvQWlQVWxzazFveU9KOEVjMk5mbHhOaFlrNFRKUTFBN2xnbXlLRlNQeVMyaFlwUDA2VEpTb0JUenVTQk5OTVdmT0RaTDFfV3V5eThJcDktdlVHMW5JOENDQ1hIeEVVN2FVLW5nRVR5aFBfbWt3Q2FGLWx2WTNqZlV1Z29wSllLR3VscXZadk1VZHhLYU1oemR2a05ubFdGeXlJNXdiRUdZcWgzWEJ0MS11TThrOFZVTDdQallzVUt4S1dYbzBMblJPZmFTbTZpTm9ZTmFOTm5YbF9fVW9rd05fSWM0eVVYR3RuMFhUcTZ4anQwZUpEajlET3FyYmdiLTZoclltRmxLTUNqalVxSGtLU1VPaHVYSE9jOFdFa0JEM1hiR29idi03b3c0c0gyN0YxbHh2UVh0OVgtOUl1akN5dHBMYmt6YnJVdHZJT2puY19xTUNjMXFFTG1wZHJCTGFoMzVmWHZQZXotVk9zSXBNOGdsekhWUUgyWWZHU0UwaTJqVkxpVllkZlFHeDNwdTZPamdUc1hPUm5acldlbFExMVlNbUJkWlVqWFNlZkVlQkxuT1lBbUNtYWM0dHNTa2JHTXZzQm92OWNEc1NRLWlsQUhsT1Fsanp3Umt1bnIxdk1ITlFhRDJLUEE5eGxxZ2NKU3FGT3d3RzROSzBxamhyb0NoZDFxM2RHR2V3U2tTd2xZbW44ZlM0VEJ5VjFMYmtWb2NZZHpiWDhiZG54dHRhVDhKS0pUbjJETWxjVFpvR1hFbWQzN2ZZVnlaNm5uMXdxZExtVW9XLW5OQXc3T3RLV3hyMXJUNV9qOHZjRGhTWk1HdTF6aV81NDEyVTRLcG01dlQ3c3BpWXA4aDl3Rk5scmFjYnVjZGVlaS1zMWR6cDlqWGo2NjRuWWxoYzNjOHJubjJ4ZWlna09YLTNUSWxnbmdxeXpJWG5ROHU0dTc5TC1ObXk1VFNjLU4wTnJVTUxQVE51MnhsUlE4Y0VLT0h4QkJGQV80Nk1yVXlhbjUwODFMSlYtTVVyaXAycl9tS3FJRjJET2wxS2V1aGg5am9PeFVybUk0T19MYkduVjJTbUdoZEZSd3FxUS15U2pxcFE2OFBza3hlQmxTdDZnX28tLVl6Qkg3dDI4V3ZYYzdIT3paNFBwa0psTjVmWFRwOXgtOGNuTGptcG5Pc2hUZWxTUXRYaDMwcTU3LXJZbVJzc2t2cFZfaTZFX2JUMTk2VWtTOHo2WUp1QXh3LXdlZ2tPY1ZITUxkeW5vaDU2UUtuWDhMVFdHdjhqWWNQazlaSlNSbXljTExOcWNtRnpUU1JEbzBXMXBkQVJXY2tqRFM2VFZIdTlHSElsTG9oRnpONEU1T3FqdUMxRjEwSFZjUGxoNTc5UmczWk1SNWJoVjltSEZNOFhJZU9HTHAxZFkxbnNLY2dqRVVlUW5qcF9za0RzanJZMVVncXRkTTVNVWhNSHlEZlhaZ3libk1jSDVRaml0YjdWZktrQk1YcGRwU3pLQWx0WDNjelIwODRPVm5nVGtiV2JZQURDTUQ2N1dlLWM1ZDFONHI2WFdFb2RXelNyWlhyZmc0RVRNNG1UZnV3ZjB0d3NORkRJdW5BWDkwbnZJWm1Ualo2RktpTjBiRnVNWmRpR1NKNTZNUEZMcFd3N3p0dmVmN0xENmhjNHJESXBQbEkwTVlVWTJSLWZGakdaZ29JTmdKMkVuMGFFM0c1V1RySjRxcHhhdHB4MVk3ZUgzOUk3WTYzcEJFWEtkRWIwTmstM0tnM0ljbDJPSkp6SU1fM1VHSlJTTmRQWGlfV3ViNGRTMDV4eURzZTR0d1FXdm9rb1QybHlZNGphNlVOc3lvYWN1eGFsTUZvUFR5dHF4YlVTaXFIMEZab0pWcm84amZja2wyYklmSzRqRzN6TnJIOWU1c3VUVWJDV09wYjczeFNMMG9TLVQ0T1JSNnBRbTZHQk05bFJ0eUhtMHJUMy1sNXc0c2ItNnRDcTM4S3FRdURRTGVTcDI1Rk8zMU1uVE5nTFlUeEUwUEZDT3hmRG1RY3BOOFRoWHBGbzZLNHNrd0dmQkpKTU9BTWtIUWZnMUM0c0V5cS1PLS1FWFhjbVV6QjJGRnR4c1gwR3o0aGJSdTFiUlhXcWMxU0IyUk82d0JsWGdPUmJqZjJlLWJQUFFMdmtGcWR3bFpUTE1kaWVUdjQyQmd1SFd3dzI5OEVqcnNNUXg1WG9aRG11MDFRTzlZSjFmTEYtWjkwWEVOU2p5OTM0M3UyUHhrNjhheG10bnp2ZTdwd3Q3Z0ZMMUoxZlZEd3BqMUtBZDdwdGZoWG4yUzJmT1Bfc3JOM3QxNk1qX29qOUVLQm5VNC1jQ3RLWGRkZS1EWk5zQkNhSGZ1bEtHSkFHYmx1UWs2Yi1kQk5oUS05Z19kajdfcjZub2Z2aDRielEybGlQd1E3M1RTazNiQTdzd2EzclZ5ZTVDTVNlOVotNkVKV1phek1sN0w4VUJ3cFllN0J0eHhUNEVBVGo2SXBvYWhGNTgtRHpiMmRsc1c1ZDZIWmpYZUNMTGtVRmQ5Mll3eDBibFlCanc4eTVzM040OEJMME84WG51ak42c0F0eG04Sm9hWXFVUUd3LXNBS1pTZHAzNk1GNlZXYkpUcHBoZHQ2aEhWQjFoRzdpSGN1STBTRzY0WjczNXEzZ0tSYXFHdzhIUXItSWNyeks0VEQwenk5b01NMHpRLVFBSE1PdzAyX0ozU3pVQWZ1bzFWNU42ajB0VGsyeEt0TFp3cmlHOHJNRl9NWTJrN09mdkxqNFlCb3VNN2lBNVM4LnNfM0VabFhIb1lrV283ZzdpRUp1bHc" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/decrypt-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/decrypt-example.json new file mode 100644 index 000000000000..0a273d50313e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/decrypt-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "sdktestkey", + "key-version": "4eb68492b5f6421e835d961ad2be3155", + "api-version": "7.2-preview", + "parameters": { + "alg": "RSA-OAEP", + "value": "sid-4nG3FzRIFWXLXlG-FZo6H1-kzbNX5Exe0_VRqcGLuJWjI9oSofsn-2IagDsQzkpNAXv9V8aoIizelrK_14darhxaAV8OejO7Oh7spjxa7IxMVS3e-cwcLdEHzMbMfM1uFpDyRFqEUASHI0H8F1M2m1e9TUSXOVW3KMqm7cK94ZQMFvd4AYdLfmfnStMp_MqIQh4kpIkB6h2b1M3possVrLKH_l2L3uT-qFiwQlH9-dt0Cje5mrkpsYCy4hAXNFUPhIyBWAZwOQylIE2sPuopFs55lRIHpWP2CqNe-IK8tX87BRuJ_Vy3GIFxDjD5uu74scIyQCKMImB6xQ_-mQ" + } + }, + "responses": { + "200": { + "body": { + "kid": "https://myvault.vault.azure.net/keys/sdktestkey/4eb68492b5f6421e835d961ad2be3155", + "value": "dvDmrSBpjRjtYg" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/deleteStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/deleteStorageAccount.json new file mode 100644 index 000000000000..60160601ace8 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/deleteStorageAccount.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "deleteStrg01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/deleteStrg01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key1", + "autoRegenerateKey": true, + "regenerationPeriod": "P30D", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/deleteStrg01", + "scheduledPurgeDate": 1490790000, + "deletedDate": 1490760000, + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/deleteStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/deleteStorageSasDefinition.json new file mode 100644 index 000000000000..3f9069d59eb9 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/deleteStorageSasDefinition.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "deletesas01", + "sas-definition-name": "deleteStrgSasDef01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/deletesas01/sas/deleteStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/deletesas01-deleteStrgSasDef01", + "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", + "sasType": "service", + "validityPeriod": "P15D", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/deletesas01/sas/deleteStrgSasDef01", + "scheduledPurgeDate": 1490790000, + "deletedDate": 1490760000, + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/encrypt-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/encrypt-example.json new file mode 100644 index 000000000000..184c3d96a575 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/encrypt-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "sdktestkey", + "key-version": "f6bc1f3d37c14b2bb1a2ebb4b24e9535", + "api-version": "7.2-preview", + "parameters": { + "alg": "RSA1_5", + "value": "5ka5IVsnGrzufA" + } + }, + "responses": { + "200": { + "body": { + "kid": "https://myvault.vault.azure.net/keys/sdktestkey/f6bc1f3d37c14b2bb1a2ebb4b24e9535", + "value": "CR0Hk0z72oOit5TxObqRpo-WFGZkb5BeN1C0xJFKHxzdDCESYPCNB-OkiWVAnMcSyu6g2aC8riVRRxY5MC2CWKj-CJ_SMke5X2kTi5yi4hJ5vuOLzmg_M6Bmqib7LsI-TeJHr9rs3-tZaSCdZ2zICeFWYduWV5rPjTnAD98epTorT8AA1zMaYHMIhKpmttcj18-dHr0E0T55dgRtsjK04uC3FlRd3odl4RhO1UHAmYpDd5FUqN-20R0dK0Zk8F8sOtThLhEmuLvqPHOCUBiGUhHA4nRDq1La4SUbThu2KMQJL6BbxxEymuliaYcNNtW7MxgVOf6V3mFxVNRY622i9g" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/getDeletedStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/getDeletedStorageAccount.json new file mode 100644 index 000000000000..60160601ace8 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/getDeletedStorageAccount.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "deleteStrg01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/deleteStrg01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key1", + "autoRegenerateKey": true, + "regenerationPeriod": "P30D", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/deleteStrg01", + "scheduledPurgeDate": 1490790000, + "deletedDate": 1490760000, + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/getDeletedStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/getDeletedStorageSasDefinition.json new file mode 100644 index 000000000000..3f9069d59eb9 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/getDeletedStorageSasDefinition.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "deletesas01", + "sas-definition-name": "deleteStrgSasDef01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/deletesas01/sas/deleteStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/deletesas01-deleteStrgSasDef01", + "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", + "sasType": "service", + "validityPeriod": "P15D", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/deletesas01/sas/deleteStrgSasDef01", + "scheduledPurgeDate": 1490790000, + "deletedDate": 1490760000, + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/getStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/getStorageAccount.json new file mode 100644 index 000000000000..2c0a2bed0d91 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/getStorageAccount.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "readStrg01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/readStrg01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key1", + "autoRegenerateKey": true, + "regenerationPeriod": "P30D", + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/getStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/getStorageSasDefinition.json new file mode 100644 index 000000000000..113e07b78d33 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/getStorageSasDefinition.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "getsas01", + "sas-definition-name": "getStrgSasDef01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/getsas01/sas/getStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/getsas01-getStrgSasDef01", + "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", + "sasType": "service", + "validityPeriod": "P15D", + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/listDeletedStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/listDeletedStorageAccount.json new file mode 100644 index 000000000000..648e709d0fd8 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/listDeletedStorageAccount.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "https://myvault.vault.azure.net/storage/listDeletedStorage01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc1", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/listDeletedStorage01", + "scheduledPurgeDate": 1490790000, + "deletedDate": 1490760000, + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + }, + { + "id": "https://myvault.vault.azure.net/storage/listDeletedStorage02", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc2", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/listDeletedStorage02", + "scheduledPurgeDate": 1490790000, + "deletedDate": 1490760000, + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag3": "val3", + "tag4": "val4" + } + } + ], + "nextLink": "https://{BaseUri}/storage?api-version=7.2&%24skiptoken=" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/listDeletedStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/listDeletedStorageSasDefinition.json new file mode 100644 index 000000000000..918fb1b0fa15 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/listDeletedStorageSasDefinition.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "listsas01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "https://myvault.vault.azure.net/storage/listsas01/sas/listDeletedSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/listsas01-listDeletedSasDef01", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/listsas01/sas/listDeletedSasDef01", + "scheduledPurgeDate": 1490790000, + "deletedDate": 1490760000, + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + }, + { + "id": "https://myvault.vault.azure.net/storage/listsas01/sas/listDeletedSasDef02", + "sid": "https://myvault.vault.azure.net/secrets/listsas01-listDeletedSasDef02", + "recoveryId": "https://myvault.vault.azure.net/deletedstorage/listsas01/sas/listDeletedSasDef02", + "scheduledPurgeDate": 1490790000, + "deletedDate": 1490760000, + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + } + ], + "nextLink": "https://{BaseUri}/deletedstorage/listsas01/sas?api-version=7.2&%24skiptoken=" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/listStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/listStorageAccount.json new file mode 100644 index 000000000000..2f1f98127ace --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/listStorageAccount.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "https://myvault.vault.azure.net/storage/listStorage01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc1", + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + }, + { + "id": "https://myvault.vault.azure.net/storage/listStorage02", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc2", + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag3": "val3", + "tag4": "val4" + } + } + ], + "nextLink": "https://{BaseUri}/storage?api-version=7.2&%24skiptoken=" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/listStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/listStorageSasDefinition.json new file mode 100644 index 000000000000..8091a8d1ab70 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/listStorageSasDefinition.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "listsas01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "https://myvault.vault.azure.net/storage/listsas01/sas/listStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/listsas01-listStrgSasDef01", + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + }, + { + "id": "https://myvault.vault.azure.net/storage/listsas01/sas/listStrgSasDef02", + "sid": "https://myvault.vault.azure.net/secrets/listsas01-listStrgSasDef02", + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + } + ], + "nextLink": "https://{BaseUri}/storage/listsas01/sas?api-version=7.2&%24skiptoken=" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/purgeStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/purgeStorageAccount.json new file mode 100644 index 000000000000..3966fb536dac --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/purgeStorageAccount.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "purgeStrg01", + "api-version": "7.2-preview" + }, + "responses": { + "204": { + "headers": {} + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/recoverStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/recoverStorageAccount.json new file mode 100644 index 000000000000..dedf75b6ad1f --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/recoverStorageAccount.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "recoverStrg01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/recoverStrg01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key1", + "autoRegenerateKey": true, + "regenerationPeriod": "P30D", + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/recoverStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/recoverStorageSasDefinition.json new file mode 100644 index 000000000000..2f0ed31277ba --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/recoverStorageSasDefinition.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "recoversas01", + "sas-definition-name": "recoverStrgSasDef01", + "api-version": "7.2-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/recoversas01/sas/recoverStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/recoversas01-recoverStrgSasDef01", + "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", + "sasType": "service", + "validityPeriod": "P15D", + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/regenerateStorageAccountKey.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/regenerateStorageAccountKey.json new file mode 100644 index 000000000000..0297ccd313c2 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/regenerateStorageAccountKey.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "regenerateKey01", + "api-version": "7.2-preview", + "parameters": { + "keyName": "key2" + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/regenerateKey01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key2", + "autoRegenerateKey": true, + "regenerationPeriod": "P10D", + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/restoreStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/restoreStorageAccount.json new file mode 100644 index 000000000000..01ed62c74d7d --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/restoreStorageAccount.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "readStrg01", + "api-version": "7.2-preview", + "parameters": { + "value": "KUF6dXJlS2V5VmF1bHRTZWNyZXRCYWNrdXBWMS5taWNyb3NvZnQuY29tZXlKcmFXUWlPaUkwTXpnMVlqQTNZaTFrTlRRM0xUUXlaVFV0WVdVNVpTMDJNVEJrWXpNNVpHWmhaamdpTENKaGJHY2lPaUpTVTBFdFQwRkZVQ0lzSW1WdVl5STZJa0V4TWpoRFFrTXRTRk15TlRZaWZRLk1JeFMyLXh0eHAxekpaZ3ZrTUY3d2pGMWxiLVJyNWFrbHFMLXpBaVVOODJKZFJNUDFwak5iS0phRktIOXBRcDg4ODBKeERDSmdESUZHc19OOGlnYmdIZ0Q1c0xVMi1pRzdKM29Hc00taFRMb05oaUd6aGY1YVREakYzWjZpZVhxcFMzVFVOVUFkeFhpTkpIYk94YjBmWHNtcWFtNnA0dXJ3Yzl3Qnk1c2pwRnJheHNRM3NRcHBDLXZybXlVZExaelJIWS0xYnhwaFQxVUdiS0Zsd1dSODU5TmFSQ1BZOFhDWUVrX0hxNnc5S0lWSXRTTlRYYWYxUWFzUDJob0NHT19PMzkzVUNzWGp0NzRtOURqdi1vTHRoMUl6TU5sSWp0STg2MTRhTGs0RTFMUXd6ZUx2X2Y1cndKeXJOWkF1c3VWRlRieFp1Zzh6T3BfYTdCOGhGSEJyQS5rc3pPdTN3blllb1ZUUjRLc2dqMUxBLmYyY3huVE1BbU13Ty1RcmdHSUFYUFN2bEdZUDRYWmJvMFVFOGxtY2xZa3ZhRE5ab3E0Wm41MVNKTDNuUFZsVnBaRFlrUmlpd05BSUxvRS12QWtVbmZoLUczOWo3RHhqWm1zZW02bXBmOWxoZjBnZFFNTDdmejBqRDZ0dW1xSVFaWUhFalV3VG5xdDloeEw5N0lnUUV0WmtFV0VnUEJETnJJNFpYWXdNU2ZyR0FfdkgzYXU1MWpabDFTWjlGajJsTHpEblNqbFd0U05QSzc3X2RwbUxrTXNCSmMtamRteUpxYmVxdmdRcGFTSUNsOXpUUXFQM2RxN1VQV2c1R1ZDNmlNZjlTcnBoUVRKX1V2bnp4LWk4ZWR6ZUppd2hYNW9HQ043RDNDWjkxTzNLQkhmYklOX1VvQWlQVWxzazFveU9KOEVjMk5mbHhOaFlrNFRKUTFBN2xnbXlLRlNQeVMyaFlwUDA2VEpTb0JUenVTQk5OTVdmT0RaTDFfV3V5eThJcDktdlVHMW5JOENDQ1hIeEVVN2FVLW5nRVR5aFBfbWt3Q2FGLWx2WTNqZlV1Z29wSllLR3VscXZadk1VZHhLYU1oemR2a05ubFdGeXlJNXdiRUdZcWgzWEJ0MS11TThrOFZVTDdQallzVUt4S1dYbzBMblJPZmFTbTZpTm9ZTmFOTm5YbF9fVW9rd05fSWM0eVVYR3RuMFhUcTZ4anQwZUpEajlET3FyYmdiLTZoclltRmxLTUNqalVxSGtLU1VPaHVYSE9jOFdFa0JEM1hiR29idi03b3c0c0gyN0YxbHh2UVh0OVgtOUl1akN5dHBMYmt6YnJVdHZJT2puY19xTUNjMXFFTG1wZHJCTGFoMzVmWHZQZXotVk9zSXBNOGdsekhWUUgyWWZHU0UwaTJqVkxpVllkZlFHeDNwdTZPamdUc1hPUm5acldlbFExMVlNbUJkWlVqWFNlZkVlQkxuT1lBbUNtYWM0dHNTa2JHTXZzQm92OWNEc1NRLWlsQUhsT1Fsanp3Umt1bnIxdk1ITlFhRDJLUEE5eGxxZ2NKU3FGT3d3RzROSzBxamhyb0NoZDFxM2RHR2V3U2tTd2xZbW44ZlM0VEJ5VjFMYmtWb2NZZHpiWDhiZG54dHRhVDhKS0pUbjJETWxjVFpvR1hFbWQzN2ZZVnlaNm5uMXdxZExtVW9XLW5OQXc3T3RLV3hyMXJUNV9qOHZjRGhTWk1HdTF6aV81NDEyVTRLcG01dlQ3c3BpWXA4aDl3Rk5scmFjYnVjZGVlaS1zMWR6cDlqWGo2NjRuWWxoYzNjOHJubjJ4ZWlna09YLTNUSWxnbmdxeXpJWG5ROHU0dTc5TC1ObXk1VFNjLU4wTnJVTUxQVE51MnhsUlE4Y0VLT0h4QkJGQV80Nk1yVXlhbjUwODFMSlYtTVVyaXAycl9tS3FJRjJET2wxS2V1aGg5am9PeFVybUk0T19MYkduVjJTbUdoZEZSd3FxUS15U2pxcFE2OFBza3hlQmxTdDZnX28tLVl6Qkg3dDI4V3ZYYzdIT3paNFBwa0psTjVmWFRwOXgtOGNuTGptcG5Pc2hUZWxTUXRYaDMwcTU3LXJZbVJzc2t2cFZfaTZFX2JUMTk2VWtTOHo2WUp1QXh3LXdlZ2tPY1ZITUxkeW5vaDU2UUtuWDhMVFdHdjhqWWNQazlaSlNSbXljTExOcWNtRnpUU1JEbzBXMXBkQVJXY2tqRFM2VFZIdTlHSElsTG9oRnpONEU1T3FqdUMxRjEwSFZjUGxoNTc5UmczWk1SNWJoVjltSEZNOFhJZU9HTHAxZFkxbnNLY2dqRVVlUW5qcF9za0RzanJZMVVncXRkTTVNVWhNSHlEZlhaZ3libk1jSDVRaml0YjdWZktrQk1YcGRwU3pLQWx0WDNjelIwODRPVm5nVGtiV2JZQURDTUQ2N1dlLWM1ZDFONHI2WFdFb2RXelNyWlhyZmc0RVRNNG1UZnV3ZjB0d3NORkRJdW5BWDkwbnZJWm1Ualo2RktpTjBiRnVNWmRpR1NKNTZNUEZMcFd3N3p0dmVmN0xENmhjNHJESXBQbEkwTVlVWTJSLWZGakdaZ29JTmdKMkVuMGFFM0c1V1RySjRxcHhhdHB4MVk3ZUgzOUk3WTYzcEJFWEtkRWIwTmstM0tnM0ljbDJPSkp6SU1fM1VHSlJTTmRQWGlfV3ViNGRTMDV4eURzZTR0d1FXdm9rb1QybHlZNGphNlVOc3lvYWN1eGFsTUZvUFR5dHF4YlVTaXFIMEZab0pWcm84amZja2wyYklmSzRqRzN6TnJIOWU1c3VUVWJDV09wYjczeFNMMG9TLVQ0T1JSNnBRbTZHQk05bFJ0eUhtMHJUMy1sNXc0c2ItNnRDcTM4S3FRdURRTGVTcDI1Rk8zMU1uVE5nTFlUeEUwUEZDT3hmRG1RY3BOOFRoWHBGbzZLNHNrd0dmQkpKTU9BTWtIUWZnMUM0c0V5cS1PLS1FWFhjbVV6QjJGRnR4c1gwR3o0aGJSdTFiUlhXcWMxU0IyUk82d0JsWGdPUmJqZjJlLWJQUFFMdmtGcWR3bFpUTE1kaWVUdjQyQmd1SFd3dzI5OEVqcnNNUXg1WG9aRG11MDFRTzlZSjFmTEYtWjkwWEVOU2p5OTM0M3UyUHhrNjhheG10bnp2ZTdwd3Q3Z0ZMMUoxZlZEd3BqMUtBZDdwdGZoWG4yUzJmT1Bfc3JOM3QxNk1qX29qOUVLQm5VNC1jQ3RLWGRkZS1EWk5zQkNhSGZ1bEtHSkFHYmx1UWs2Yi1kQk5oUS05Z19kajdfcjZub2Z2aDRielEybGlQd1E3M1RTazNiQTdzd2EzclZ5ZTVDTVNlOVotNkVKV1phek1sN0w4VUJ3cFllN0J0eHhUNEVBVGo2SXBvYWhGNTgtRHpiMmRsc1c1ZDZIWmpYZUNMTGtVRmQ5Mll3eDBibFlCanc4eTVzM040OEJMME84WG51ak42c0F0eG04Sm9hWXFVUUd3LXNBS1pTZHAzNk1GNlZXYkpUcHBoZHQ2aEhWQjFoRzdpSGN1STBTRzY0WjczNXEzZ0tSYXFHdzhIUXItSWNyeks0VEQwenk5b01NMHpRLVFBSE1PdzAyX0ozU3pVQWZ1bzFWNU42ajB0VGsyeEt0TFp3cmlHOHJNRl9NWTJrN09mdkxqNFlCb3VNN2lBNVM4LnNfM0VabFhIb1lrV283ZzdpRUp1bHc" + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/restoreStrg01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key1", + "autoRegenerateKey": true, + "regenerationPeriod": "P30D", + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/setStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/setStorageAccount.json new file mode 100644 index 000000000000..c505dee19441 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/setStorageAccount.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "setStrg01", + "api-version": "7.2-preview", + "parameters": { + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key2", + "autoRegenerateKey": true, + "regenerationPeriod": "P15D", + "attributes": { + "enabled": true + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/setStrg01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key2", + "autoRegenerateKey": true, + "regenerationPeriod": "P15D", + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/setStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/setStorageSasDefinition.json new file mode 100644 index 000000000000..199e7f72446f --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/setStorageSasDefinition.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "setsas01", + "sas-definition-name": "setStrgSasDef01", + "api-version": "7.2-preview", + "parameters": { + "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", + "sasType": "service", + "validityPeriod": "P15D", + "attributes": { + "enabled": true + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/setsas01/sas/setStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/setsas01-setStrgSasDef01", + "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", + "sasType": "service", + "validityPeriod": "P15D", + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/sign-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/sign-example.json new file mode 100644 index 000000000000..a526d21dc5a1 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/sign-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "testkey", + "key-version": "9885aa558e8d448789683188f8c194b0", + "api-version": "7.2-preview", + "parameters": { + "alg": "RS512", + "value": "RUE3Nzg4NTQ4QjQ5RjFFN0U2NzAyQzhDNEMwMkJDOTA1MTYyOTUzNjI5NDhBNzZDQTlFOTM1NDA2M0ZGMjk2Mg" + } + }, + "responses": { + "200": { + "body": { + "kid": "https://myvault.vault.azure.net/keys/testkey/9885aa558e8d448789683188f8c194b0", + "value": "aKFG8NXcfTzqyR44rW42484K_zZI_T7zZuebvWuNgAoEI1gXYmxrshp42CunSmmu4oqo4-IrCikPkNIBkHXnAW2cv03Ad0UpwXhVfepK8zzDBaJPMKVGS-ZRz8CshEyGDKaLlb3J3zEkXpM3RrSEr0mdV6hndHD_mznLB5RmFui5DsKAhez4vUqajgtkgcPfCekMqeSwp6r9ItVL-gEoAohx8XMDsPedqu-7BuZcBcdayaPuBRL4wWoTDULA11P-UN_sJ5qMj3BbiRYhIlBWGR04wIGfZ3pkJjHJUpOvgH2QajdYPzUBauOCewMYbq9XkLRSzI_A7HkkDVycugSeAA" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/unwrapKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/unwrapKey-example.json new file mode 100644 index 000000000000..68c97df1d33d --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/unwrapKey-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "sdktestkey", + "key-version": "0698c2156c1a4e1da5b6bab6f6422fd6", + "api-version": "7.2-preview", + "parameters": { + "alg": "RSA1_5", + "value": "khwIe26NuAZazS7upywDBpGRmRNMW5-4h_JQKxOdB78nYVxZWnBXwCxOv7a3Sr_mCjiVzKsoQQZwL-CJzhYa0512tfYem56zls5a44y5QsdcfvuSzOvpthVhA9XkEfCJSqSY_sip5d8BelT_w_ikvd_8KqiQ_0H54RqYUN8svCpu28paHgBocHFNXTQ9NtU9ec2qgESXk7Jp4OTy9HJtQJavKDUqTJ3YmtLxUgsgBCe0FNMHUSEYC0Ys6PavYzdTwIzYCq84idmAxJOj-O_6eALJFH2sDTOQYHjzOae2t8eFmw6C-t55qjrCI91a9mUJEGPhYixiG4gR4PaEJ7wGvw" + } + }, + "responses": { + "200": { + "body": { + "kid": "https://myvault.vault.azure.net/keys/sdktestkey/0698c2156c1a4e1da5b6bab6f6422fd6", + "value": "ovQIlbB0DgWhZA7sgkPxbg9H-Ly-VlNGPSgGrrZvlIo" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/updateStorageAccount.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/updateStorageAccount.json new file mode 100644 index 000000000000..ab378028c902 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/updateStorageAccount.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "patchStrg01", + "api-version": "7.2-preview", + "parameters": { + "activeKeyName": "key1", + "regenerationPeriod": "P10D" + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/patchStrg01", + "resourceId": "/subscriptions/{subId}/resourceGroups/{rgName}/providers/Microsoft.Storage/storageAccounts/kvstorageacc", + "activeKeyName": "key1", + "autoRegenerateKey": true, + "regenerationPeriod": "P10D", + "attributes": { + "enabled": true, + "created": 1490738386, + "updated": 1490738386, + "recoveryLevel": "Recoverable+Purgeable" + }, + "tags": { + "tag1": "val1", + "tag2": "val2" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/updateStorageSasDefinition.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/updateStorageSasDefinition.json new file mode 100644 index 000000000000..13e3d3dc505c --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/updateStorageSasDefinition.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "storage-account-name": "patchsas01", + "sas-definition-name": "patchStrgSasDef01", + "api-version": "7.2-preview", + "parameters": { + "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", + "sasType": "service", + "validityPeriod": "P15D", + "attributes": { + "enabled": true + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "https://myvault.vault.azure.net/storage/patchsas01/sas/patchStrgSasDef01", + "sid": "https://myvault.vault.azure.net/secrets/patchsas01-patchStrgSasDef01", + "templateUri": "se=2018-02-01T00%3A00Z&spr=https&sv=2017-04-17&sr=b&sig=XXFNfuMCHYrBx0bhemJ7PWn0xGfImMXT6LfbXWvtRUk%3D", + "sasType": "service", + "validityPeriod": "P15D", + "attributes": { + "enabled": true, + "created": 1490738438, + "updated": 1490738438, + "recoveryLevel": "Recoverable" + } + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/verify-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/verify-example.json new file mode 100644 index 000000000000..7a410b6dabac --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/verify-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "testkey", + "key-version": "9885aa558e8d448789683188f8c194b0", + "api-version": "7.2-preview", + "parameters": { + "alg": "RS512", + "value": "RUE3Nzg4NTQ4QjQ5RjFFN0U2NzAyQzhDNEMwMkJDOTA1MTYyOTUzNjI5NDhBNzZDQTlFOTM1NDA2M0ZGMjk2Mg", + "digest": "aKFG8NXcfTzqyR44rW42484K_zZI_T7zZuebvWuNgAoEI1gXYmxrshp42CunSmmu4oqo4-IrCikPkNIBkHXnAW2cv03Ad0UpwXhVfepK8zzDBaJPMKVGS-ZRz8CshEyGDKaLlb3J3zEkXpM3RrSEr0mdV6hndHD_mznLB5RmFui5DsKAhez4vUqajgtkgcPfCekMqeSwp6r9ItVL-gEoAohx8XMDsPedqu-7BuZcBcdayaPuBRL4wWoTDULA11P-UN_sJ5qMj3BbiRYhIlBWGR04wIGfZ3pkJjHJUpOvgH2QajdYPzUBauOCewMYbq9XkLRSzI_A7HkkDVycugSeAA" + } + }, + "responses": { + "200": { + "body": { + "value": true + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/wrapKey-example.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/wrapKey-example.json new file mode 100644 index 000000000000..eeacfd9c36a0 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/examples/wrapKey-example.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "vaultBaseUrl": "https://myvault.vault.azure.net/", + "key-name": "sdktestkey", + "key-version": "0698c2156c1a4e1da5b6bab6f6422fd6", + "api-version": "7.2-preview", + "parameters": { + "alg": "RSA1_5", + "value": "ovQIlbB0DgWhZA7sgkPxbg9H-Ly-VlNGPSgGrrZvlIo" + } + }, + "responses": { + "200": { + "body": { + "kid": "https://myvault.vault.azure.net/keys/sdktestkey/0698c2156c1a4e1da5b6bab6f6422fd6", + "value": "khwIe26NuAZazS7upywDBpGRmRNMW5-4h_JQKxOdB78nYVxZWnBXwCxOv7a3Sr_mCjiVzKsoQQZwL-CJzhYa0512tfYem56zls5a44y5QsdcfvuSzOvpthVhA9XkEfCJSqSY_sip5d8BelT_w_ikvd_8KqiQ_0H54RqYUN8svCpu28paHgBocHFNXTQ9NtU9ec2qgESXk7Jp4OTy9HJtQJavKDUqTJ3YmtLxUgsgBCe0FNMHUSEYC0Ys6PavYzdTwIzYCq84idmAxJOj-O_6eALJFH2sDTOQYHjzOae2t8eFmw6C-t55qjrCI91a9mUJEGPhYixiG4gR4PaEJ7wGvw" + } + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/index.md b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/index.md new file mode 100644 index 000000000000..1d8c9d77ab0e --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/index.md @@ -0,0 +1,26 @@ +--- +ms.assetid: 357c9947-1098-4a03-9f1e-7b27e5aa75bf +ms.title: Azure Key Vault REST Reference +ms.prod: +ms.service: azure-keyvault +author: BrucePerlerMS +ms.author: bruceper +ms.manager: mbaldwin +--- + +# Azure Key Vault + +Azure Key Vault enables users to store and use cryptographic keys within the Microsoft Azure environment. Azure Key Vault supports multiple key types and algorithms, and enables the use of Hardware Security Modules (HSM) for high value customer keys. Key Vault also supports storage of secrets, limited size octet objects. Certificate management is also available through Key Vault including support for renewal processing and working with a range of certificate authorities. + +## REST Operation Groups + +| Operation Group | Description | +|-----------------|-------------| +|Keys | Operations for interacting with keys including create, import, update, and delete.| +|Secrets | Operations for interacting with secrets including create, update, and delete.| +|Certificates | Operations for interacting with certificates including create, import, update, delete and a set of contact and renewal management tasks.| +|Storage | Operations for interacting with storage accounts including create, read, update, delete, list, regeneratekey and a set of sas definition related tasks.| + +## See Also + +- [About keys, secrets, certificates and storage](link) diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/keys.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/keys.json new file mode 100644 index 000000000000..99327bcef69d --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/keys.json @@ -0,0 +1,1732 @@ +{ + "swagger": "2.0", + "info": { + "title": "KeyVaultClient", + "description": "The key vault client performs cryptographic key operations and vault operations against the Key Vault service.", + "version": "7.2-preview" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{vaultBaseUrl}", + "useSchemePrefix": false, + "positionInOperation": "first", + "parameters": [ + { + "name": "vaultBaseUrl", + "description": "The vault name, for example https://myvault.vault.azure.net.", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + ] + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/keys/{key-name}/create": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "CreateKey", + "summary": "Creates a new key, stores it, then returns key parameters and attributes to the client.", + "description": "The create key operation can be used to create any key type in Azure Key Vault. If the named key already exists, Azure Key Vault creates a new version of the key. It requires the keys/create permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z-]+$", + "description": "The name for the new key. The system will generate the version name for the new key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyCreateParameters" + }, + "description": "The parameters to create a key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A key bundle containing the result of the create key request.", + "schema": { + "$ref": "#/definitions/KeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Create key": { + "$ref": "./examples/CreateKey-example.json" + } + } + } + }, + "/keys/{key-name}": { + "put": { + "tags": [ + "Keys" + ], + "operationId": "ImportKey", + "summary": "Imports an externally created key, stores it, and returns key parameters and attributes to the client.", + "description": "The import key operation may be used to import any key type into an Azure Key Vault. If the named key already exists, Azure Key Vault creates a new version of the key. This operation requires the keys/import permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z-]+$", + "description": "Name for the imported key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyImportParameters" + }, + "description": "The parameters to import a key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Imported key bundle to the vault.", + "schema": { + "$ref": "#/definitions/KeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Import key": { + "$ref": "./examples/ImportKey-example.json" + } + } + }, + "delete": { + "tags": [ + "Keys" + ], + "operationId": "DeleteKey", + "summary": "Deletes a key of any type from storage in Azure Key Vault.", + "description": "The delete key operation cannot be used to remove individual versions of a key. This operation removes the cryptographic material associated with the key, which means the key is not usable for Sign/Verify, Wrap/Unwrap or Encrypt/Decrypt operations. This operation requires the keys/delete permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key to delete." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The public part of the deleted key and deletion information on when the key will be purged.", + "schema": { + "$ref": "#/definitions/DeletedKeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Delete key": { + "$ref": "./examples/DeleteKey-example.json" + } + } + } + }, + "/keys/{key-name}/{key-version}": { + "patch": { + "tags": [ + "Keys" + ], + "operationId": "UpdateKey", + "summary": "The update key operation changes specified attributes of a stored key and can be applied to any key type and key version stored in Azure Key Vault.", + "description": "In order to perform this operation, the key must already exist in the Key Vault. Note: The cryptographic material of a key itself cannot be changed. This operation requires the keys/update permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of key to update." + }, + { + "name": "key-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the key to update." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyUpdateParameters" + }, + "description": "The parameters of the key to update." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The updated key.", + "schema": { + "$ref": "#/definitions/KeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Update key": { + "$ref": "./examples/UpdateKey-example.json" + } + } + }, + "get": { + "tags": [ + "Keys" + ], + "operationId": "GetKey", + "summary": "Gets the public part of a stored key.", + "description": "The get key operation is applicable to all key types. If the requested key is symmetric, then no key material is released in the response. This operation requires the keys/get permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key to get." + }, + { + "name": "key-version", + "in": "path", + "required": true, + "type": "string", + "description": "Adding the version parameter retrieves a specific version of a key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A key bundle containing the key and its attributes.", + "schema": { + "$ref": "#/definitions/KeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Get key": { + "$ref": "./examples/GetKey-example.json" + } + } + } + }, + "/keys/{key-name}/versions": { + "get": { + "tags": [ + "Keys" + ], + "operationId": "GetKeyVersions", + "summary": "Retrieves a list of individual key versions with the same key name.", + "description": "The full key identifier, attributes, and tags are provided in the response. This operation requires the keys/list permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of keys along with a link to the next page of keys.", + "schema": { + "$ref": "#/definitions/KeyListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetKeyVersions": { + "$ref": "./examples/GetKeyVersions-example.json" + } + } + } + }, + "/keys": { + "get": { + "tags": [ + "Keys" + ], + "operationId": "GetKeys", + "summary": "List keys in the specified vault.", + "description": "Retrieves a list of the keys in the Key Vault as JSON Web Key structures that contain the public part of a stored key. The LIST operation is applicable to all key types, however only the base key identifier, attributes, and tags are provided in the response. Individual versions of a key are not listed in the response. This operation requires the keys/list permission.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of keys in the vault along with a link to the next page of keys.", + "schema": { + "$ref": "#/definitions/KeyListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetKeys": { + "$ref": "./examples/GetKeys-example.json" + } + } + } + }, + "/keys/{key-name}/backup": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "BackupKey", + "summary": "Requests that a backup of the specified key be downloaded to the client.", + "description": "The Key Backup operation exports a key from Azure Key Vault in a protected form. Note that this operation does NOT return key material in a form that can be used outside the Azure Key Vault system, the returned key material is either protected to a Azure Key Vault HSM or to Azure Key Vault itself. The intent of this operation is to allow a client to GENERATE a key in one Azure Key Vault instance, BACKUP the key, and then RESTORE it into another Azure Key Vault instance. The BACKUP operation may be used to export, in protected form, any key type from Azure Key Vault. Individual versions of a key cannot be backed up. BACKUP / RESTORE can be performed within geographical boundaries only; meaning that a BACKUP from one geographical area cannot be restored to another geographical area. For example, a backup from the US geographical area cannot be restored in an EU geographical area. This operation requires the key/backup permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The backup blob containing the backed up key.", + "schema": { + "$ref": "#/definitions/BackupKeyResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "BackupKey": { + "$ref": "./examples/BackupKey-example.json" + } + } + } + }, + "/keys/restore": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "RestoreKey", + "summary": "Restores a backed up key to a vault.", + "description": "Imports a previously backed up key into Azure Key Vault, restoring the key, its key identifier, attributes and access control policies. The RESTORE operation may be used to import a previously backed up key. Individual versions of a key cannot be restored. The key is restored in its entirety with the same key name as it had when it was backed up. If the key name is not available in the target Key Vault, the RESTORE operation will be rejected. While the key name is retained during restore, the final key identifier will change if the key is restored to a different vault. Restore will restore all versions and preserve version identifiers. The RESTORE operation is subject to security constraints: The target Key Vault must be owned by the same Microsoft Azure Subscription as the source Key Vault The user must have RESTORE permission in the target Key Vault. This operation requires the keys/restore permission.", + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyRestoreParameters" + }, + "description": "The parameters to restore the key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Restored key bundle in the vault.", + "schema": { + "$ref": "#/definitions/KeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "RestoreKey": { + "$ref": "./examples/RestoreKey-example.json" + } + } + } + }, + "/keys/{key-name}/{key-version}/encrypt": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "encrypt", + "summary": "Encrypts an arbitrary sequence of bytes using an encryption key that is stored in a key vault.", + "description": "The ENCRYPT operation encrypts an arbitrary sequence of bytes using an encryption key that is stored in Azure Key Vault. Note that the ENCRYPT operation only supports a single block of data, the size of which is dependent on the target key and the encryption algorithm to be used. The ENCRYPT operation is only strictly necessary for symmetric keys stored in Azure Key Vault since protection with an asymmetric key can be performed using public portion of the key. This operation is supported for asymmetric keys as a convenience for callers that have a key-reference but do not have access to the public key material. This operation requires the keys/encrypt permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "name": "key-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyOperationsParameters" + }, + "description": "The parameters for the encryption operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The encryption result.", + "schema": { + "$ref": "#/definitions/KeyOperationResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Encrypt example": { + "$ref": "./examples/encrypt-example.json" + } + } + } + }, + "/keys/{key-name}/{key-version}/decrypt": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "decrypt", + "summary": "Decrypts a single block of encrypted data.", + "description": "The DECRYPT operation decrypts a well-formed block of ciphertext using the target encryption key and specified algorithm. This operation is the reverse of the ENCRYPT operation; only a single block of data may be decrypted, the size of this block is dependent on the target key and the algorithm to be used. The DECRYPT operation applies to asymmetric and symmetric keys stored in Azure Key Vault since it uses the private portion of the key. This operation requires the keys/decrypt permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "name": "key-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyOperationsParameters" + }, + "description": "The parameters for the decryption operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The decryption result.", + "schema": { + "$ref": "#/definitions/KeyOperationResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Decrypt example": { + "$ref": "./examples/decrypt-example.json" + } + } + } + }, + "/keys/{key-name}/{key-version}/sign": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "sign", + "summary": "Creates a signature from a digest using the specified key.", + "description": "The SIGN operation is applicable to asymmetric and symmetric keys stored in Azure Key Vault since this operation uses the private portion of the key. This operation requires the keys/sign permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "name": "key-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeySignParameters" + }, + "description": "The parameters for the signing operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The signature value.", + "schema": { + "$ref": "#/definitions/KeyOperationResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Sign": { + "$ref": "./examples/sign-example.json" + } + } + } + }, + "/keys/{key-name}/{key-version}/verify": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "verify", + "summary": "Verifies a signature using a specified key.", + "description": "The VERIFY operation is applicable to symmetric keys stored in Azure Key Vault. VERIFY is not strictly necessary for asymmetric keys stored in Azure Key Vault since signature verification can be performed using the public portion of the key but this operation is supported as a convenience for callers that only have a key-reference and not the public portion of the key. This operation requires the keys/verify permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "name": "key-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyVerifyParameters" + }, + "description": "The parameters for verify operations." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The verification result.", + "schema": { + "$ref": "#/definitions/KeyVerifyResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Verify": { + "$ref": "./examples/verify-example.json" + } + } + } + }, + "/keys/{key-name}/{key-version}/wrapkey": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "wrapKey", + "summary": "Wraps a symmetric key using a specified key.", + "description": "The WRAP operation supports encryption of a symmetric key using a key encryption key that has previously been stored in an Azure Key Vault. The WRAP operation is only strictly necessary for symmetric keys stored in Azure Key Vault since protection with an asymmetric key can be performed using the public portion of the key. This operation is supported for asymmetric keys as a convenience for callers that have a key-reference but do not have access to the public key material. This operation requires the keys/wrapKey permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "name": "key-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyOperationsParameters" + }, + "description": "The parameters for wrap operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The wrapped symmetric key.", + "schema": { + "$ref": "#/definitions/KeyOperationResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Wrapkey": { + "$ref": "./examples/wrapKey-example.json" + } + } + } + }, + "/keys/{key-name}/{key-version}/unwrapkey": { + "post": { + "tags": [ + "Keys" + ], + "operationId": "unwrapKey", + "summary": "Unwraps a symmetric key using the specified key that was initially used for wrapping that key.", + "description": "The UNWRAP operation supports decryption of a symmetric key using the target key encryption key. This operation is the reverse of the WRAP operation. The UNWRAP operation applies to asymmetric and symmetric keys stored in Azure Key Vault since it uses the private portion of the key. This operation requires the keys/unwrapKey permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "name": "key-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the key." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/KeyOperationsParameters" + }, + "description": "The parameters for the key operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The unwrapped symmetric key.", + "schema": { + "$ref": "#/definitions/KeyOperationResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Unwrapkey": { + "$ref": "./examples/unwrapKey-example.json" + } + } + } + }, + "/deletedkeys": { + "get": { + "tags": [ + "DeletedKeys" + ], + "operationId": "GetDeletedKeys", + "summary": "Lists the deleted keys in the specified vault.", + "description": "Retrieves a list of the keys in the Key Vault as JSON Web Key structures that contain the public part of a deleted key. This operation includes deletion-specific information. The Get Deleted Keys operation is applicable for vaults enabled for soft-delete. While the operation can be invoked on any vault, it will return an error if invoked on a non soft-delete enabled vault. This operation requires the keys/list permission.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of deleted keys in the vault along with a link to the next page of deleted keys.", + "schema": { + "$ref": "#/definitions/DeletedKeyListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetDeletedKeys": { + "$ref": "./examples/GetDeletedKeys-example.json" + } + } + } + }, + "/deletedkeys/{key-name}": { + "get": { + "tags": [ + "DeletedKeys" + ], + "operationId": "GetDeletedKey", + "summary": "Gets the public part of a deleted key.", + "description": "The Get Deleted Key operation is applicable for soft-delete enabled vaults. While the operation can be invoked on any vault, it will return an error if invoked on a non soft-delete enabled vault. This operation requires the keys/get permission. ", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A DeletedKeyBundle consisting of a WebKey plus its Attributes and deletion information.", + "schema": { + "$ref": "#/definitions/DeletedKeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetDeletedKey": { + "$ref": "./examples/GetDeletedKey-example.json" + } + } + }, + "delete": { + "tags": [ + "DeletedKeys" + ], + "operationId": "PurgeDeletedKey", + "summary": "Permanently deletes the specified key.", + "description": "The Purge Deleted Key operation is applicable for soft-delete enabled vaults. While the operation can be invoked on any vault, it will return an error if invoked on a non soft-delete enabled vault. This operation requires the keys/purge permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the key" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No content, signaling that the key was permanently purged." + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "PurgeDeletedKey": { + "$ref": "./examples/PurgeDeletedKey-example.json" + } + } + } + }, + "/deletedkeys/{key-name}/recover": { + "post": { + "tags": [ + "DeletedKeys" + ], + "operationId": "RecoverDeletedKey", + "summary": "Recovers the deleted key to its latest version.", + "description": "The Recover Deleted Key operation is applicable for deleted keys in soft-delete enabled vaults. It recovers the deleted key back to its latest version under /keys. An attempt to recover an non-deleted key will return an error. Consider this the inverse of the delete operation on soft-delete enabled vaults. This operation requires the keys/recover permission.", + "parameters": [ + { + "name": "key-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deleted key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A Key bundle of the original key and its attributes", + "schema": { + "$ref": "#/definitions/KeyBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "RecoverDeletedKey": { + "$ref": "./examples/RecoverDeletedKey-example.json" + } + } + } + } + }, + "definitions": { + "JsonWebKey": { + "properties": { + "kid": { + "type": "string", + "description": "Key identifier." + }, + "kty": { + "type": "string", + "description": "JsonWebKey Key Type (kty), as defined in https://tools.ietf.org/html/draft-ietf-jose-json-web-algorithms-40.", + "enum": [ + "EC", + "EC-HSM", + "RSA", + "RSA-HSM", + "oct", + "oct-HSM" + ], + "x-ms-enum": { + "name": "JsonWebKeyType", + "modelAsString": true, + "values": [ + { + "value": "EC", + "description": "Elliptic Curve." + }, + { + "value": "EC-HSM", + "description": "Elliptic Curve with a private key which is not exportable from the HSM." + }, + { + "value": "RSA", + "description": "RSA (https://tools.ietf.org/html/rfc3447)" + }, + { + "value": "RSA-HSM", + "description": "RSA with a private key which is not exportable from the HSM." + }, + { + "value": "oct", + "description": "Octet sequence (used to represent symmetric keys)" + }, + { + "value": "oct-HSM", + "description": "Octet sequence (used to represent symmetric keys) which is not exportable from the HSM." + } + ] + } + }, + "key_ops": { + "type": "array", + "items": { + "type": "string", + "description": "Supported key operations." + } + }, + "n": { + "type": "string", + "format": "base64url", + "description": "RSA modulus." + }, + "e": { + "type": "string", + "format": "base64url", + "description": "RSA public exponent." + }, + "d": { + "type": "string", + "format": "base64url", + "description": "RSA private exponent, or the D component of an EC private key." + }, + "dp": { + "x-ms-client-name": "DP", + "type": "string", + "format": "base64url", + "description": "RSA private key parameter." + }, + "dq": { + "x-ms-client-name": "DQ", + "type": "string", + "format": "base64url", + "description": "RSA private key parameter." + }, + "qi": { + "x-ms-client-name": "QI", + "type": "string", + "format": "base64url", + "description": "RSA private key parameter." + }, + "p": { + "type": "string", + "format": "base64url", + "description": "RSA secret prime." + }, + "q": { + "type": "string", + "format": "base64url", + "description": "RSA secret prime, with p < q." + }, + "k": { + "type": "string", + "format": "base64url", + "description": "Symmetric key." + }, + "key_hsm": { + "x-ms-client-name": "t", + "type": "string", + "format": "base64url", + "description": "HSM Token, used with 'Bring Your Own Key'." + }, + "crv": { + "type": "string", + "description": "Elliptic curve name. For valid values, see JsonWebKeyCurveName.", + "enum": [ + "P-256", + "P-384", + "P-521", + "P-256K" + ], + "x-ms-enum": { + "name": "JsonWebKeyCurveName", + "modelAsString": true, + "values": [ + { + "value": "P-256", + "description": "The NIST P-256 elliptic curve, AKA SECG curve SECP256R1." + }, + { + "value": "P-384", + "description": "The NIST P-384 elliptic curve, AKA SECG curve SECP384R1." + }, + { + "value": "P-521", + "description": "The NIST P-521 elliptic curve, AKA SECG curve SECP521R1." + }, + { + "value": "P-256K", + "description": "The SECG SECP256K1 elliptic curve." + } + ] + } + }, + "x": { + "type": "string", + "format": "base64url", + "description": "X component of an EC public key." + }, + "y": { + "type": "string", + "format": "base64url", + "description": "Y component of an EC public key." + } + }, + "description": "As of http://tools.ietf.org/html/draft-ietf-jose-json-web-key-18" + }, + "KeyAttributes": { + "allOf": [ + { + "$ref": "common.json#/definitions/Attributes" + } + ], + "properties": { + "recoverableDays": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "softDelete data retention days. Value should be >=7 and <=90 when softDelete enabled, otherwise 0." + }, + "recoveryLevel": { + "type": "string", + "description": "Reflects the deletion recovery level currently in effect for keys in the current vault. If it contains 'Purgeable' the key can be permanently deleted by a privileged user; otherwise, only the system can purge the key, at the end of the retention interval.", + "enum": [ + "Purgeable", + "Recoverable+Purgeable", + "Recoverable", + "Recoverable+ProtectedSubscription", + "CustomizedRecoverable+Purgeable", + "CustomizedRecoverable", + "CustomizedRecoverable+ProtectedSubscription" + ], + "x-ms-enum": { + "name": "DeletionRecoveryLevel", + "modelAsString": true + }, + "readOnly": true, + "x-nullable": false + } + }, + "description": "The attributes of a key managed by the key vault service." + }, + "KeyBundle": { + "properties": { + "key": { + "$ref": "#/definitions/JsonWebKey", + "description": "The Json web key." + }, + "attributes": { + "$ref": "#/definitions/KeyAttributes", + "description": "The key management attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + }, + "managed": { + "type": "boolean", + "readOnly": true, + "description": "True if the key's lifetime is managed by key vault. If this is a key backing a certificate, then managed will be true." + } + }, + "description": "A KeyBundle consisting of a WebKey plus its attributes." + }, + "KeyItem": { + "properties": { + "kid": { + "type": "string", + "description": "Key identifier." + }, + "attributes": { + "$ref": "#/definitions/KeyAttributes", + "description": "The key management attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + }, + "managed": { + "type": "boolean", + "readOnly": true, + "description": "True if the key's lifetime is managed by key vault. If this is a key backing a certificate, then managed will be true." + } + }, + "description": "The key item containing key metadata." + }, + "DeletedKeyBundle": { + "allOf": [ + { + "$ref": "#/definitions/KeyBundle" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted key." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the key is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the key was deleted, in UTC" + } + }, + "description": "A DeletedKeyBundle consisting of a WebKey plus its Attributes and deletion info" + }, + "DeletedKeyItem": { + "allOf": [ + { + "$ref": "#/definitions/KeyItem" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted key." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the key is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the key was deleted, in UTC" + } + }, + "description": "The deleted key item containing the deleted key metadata and information about deletion." + }, + "KeyProperties": { + "properties": { + "exportable": { + "type": "boolean", + "description": "Indicates if the private key can be exported." + }, + "kty": { + "x-ms-client-name": "keyType", + "type": "string", + "description": "The type of key pair to be used for the certificate.", + "enum": [ + "EC", + "EC-HSM", + "RSA", + "RSA-HSM", + "oct", + "oct-HSM" + ], + "x-ms-enum": { + "name": "JsonWebKeyType", + "modelAsString": true + } + }, + "key_size": { + "type": "integer", + "format": "int32", + "description": "The key size in bits. For example: 2048, 3072, or 4096 for RSA." + }, + "reuse_key": { + "type": "boolean", + "description": "Indicates if the same key pair will be used on certificate renewal." + }, + "crv": { + "x-ms-client-name": "curve", + "type": "string", + "description": "Elliptic curve name. For valid values, see JsonWebKeyCurveName.", + "enum": [ + "P-256", + "P-384", + "P-521", + "P-256K" + ], + "x-ms-enum": { + "name": "JsonWebKeyCurveName", + "modelAsString": true + } + } + }, + "description": "Properties of the key pair backing a certificate." + }, + "KeyCreateParameters": { + "properties": { + "kty": { + "type": "string", + "minLength": 1, + "description": "The type of key to create. For valid values, see JsonWebKeyType.", + "enum": [ + "EC", + "EC-HSM", + "RSA", + "RSA-HSM", + "oct", + "oct-HSM" + ], + "x-ms-enum": { + "name": "JsonWebKeyType", + "modelAsString": true + } + }, + "key_size": { + "type": "integer", + "format": "int32", + "description": "The key size in bits. For example: 2048, 3072, or 4096 for RSA." + }, + "key_ops": { + "type": "array", + "items": { + "type": "string", + "description": "JSON web key operations. For more information, see JsonWebKeyOperation.", + "enum": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey", + "import" + ], + "x-ms-enum": { + "name": "JsonWebKeyOperation", + "modelAsString": true + } + } + }, + "attributes": { + "x-ms-client-name": "keyAttributes", + "$ref": "#/definitions/KeyAttributes" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + }, + "crv": { + "x-ms-client-name": "curve", + "type": "string", + "description": "Elliptic curve name. For valid values, see JsonWebKeyCurveName.", + "enum": [ + "P-256", + "P-384", + "P-521", + "P-256K" + ], + "x-ms-enum": { + "name": "JsonWebKeyCurveName", + "modelAsString": true + } + } + }, + "description": "The key create parameters.", + "required": [ + "kty" + ] + }, + "KeyImportParameters": { + "properties": { + "Hsm": { + "type": "boolean", + "description": "Whether to import as a hardware key (HSM) or software key." + }, + "key": { + "$ref": "#/definitions/JsonWebKey", + "description": "The Json web key" + }, + "attributes": { + "x-ms-client-name": "keyAttributes", + "$ref": "#/definitions/KeyAttributes", + "description": "The key management attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The key import parameters.", + "required": [ + "key" + ] + }, + "KeyOperationsParameters": { + "properties": { + "alg": { + "x-ms-client-name": "algorithm", + "type": "string", + "minLength": 1, + "description": "algorithm identifier", + "enum": [ + "RSA-OAEP", + "RSA-OAEP-256", + "RSA1_5", + "A128GCM", + "A192GCM", + "A256GCM", + "A128KW", + "A192KW", + "A256KW" + ], + "x-ms-enum": { + "name": "JsonWebKeyEncryptionAlgorithm", + "modelAsString": true + } + }, + "value": { + "type": "string", + "format": "base64url" + }, + "iv": { + "type": "string", + "format": "base64url", + "description": "Initialization vector for symmetric algorithms." + }, + "aad": { + "type": "string", + "format": "base64url", + "description": "Additional data to authenticate but not encrypt/decrypt when using authenticated crypto algorithms." + }, + "tag": { + "type": "string", + "format": "base64url", + "description": "The tag to authenticate when performing decryption with an authenticated algorithm." + } + }, + "description": "The key operations parameters.", + "required": [ + "alg", + "value" + ] + }, + "KeySignParameters": { + "properties": { + "alg": { + "x-ms-client-name": "algorithm", + "type": "string", + "minLength": 1, + "description": "The signing/verification algorithm identifier. For more information on possible algorithm types, see JsonWebKeySignatureAlgorithm.", + "enum": [ + "PS256", + "PS384", + "PS512", + "RS256", + "RS384", + "RS512", + "RSNULL", + "ES256", + "ES384", + "ES512", + "ES256K" + ], + "x-ms-enum": { + "name": "JsonWebKeySignatureAlgorithm", + "modelAsString": true, + "values": [ + { + "value": "PS256", + "description": "RSASSA-PSS using SHA-256 and MGF1 with SHA-256, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "PS384", + "description": "RSASSA-PSS using SHA-384 and MGF1 with SHA-384, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "PS512", + "description": "RSASSA-PSS using SHA-512 and MGF1 with SHA-512, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "RS256", + "description": "RSASSA-PKCS1-v1_5 using SHA-256, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "RS384", + "description": "RSASSA-PKCS1-v1_5 using SHA-384, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "RS512", + "description": "RSASSA-PKCS1-v1_5 using SHA-512, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "RSNULL", + "description": "Reserved" + }, + { + "value": "ES256", + "description": "ECDSA using P-256 and SHA-256, as described in https://tools.ietf.org/html/rfc7518." + }, + { + "value": "ES384", + "description": "ECDSA using P-384 and SHA-384, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "ES512", + "description": "ECDSA using P-521 and SHA-512, as described in https://tools.ietf.org/html/rfc7518" + }, + { + "value": "ES256K", + "description": "ECDSA using P-256K and SHA-256, as described in https://tools.ietf.org/html/rfc7518" + } + ] + } + }, + "value": { + "type": "string", + "format": "base64url" + } + }, + "description": "The key operations parameters.", + "required": [ + "alg", + "value" + ] + }, + "KeyVerifyParameters": { + "properties": { + "alg": { + "x-ms-client-name": "algorithm", + "type": "string", + "minLength": 1, + "description": "The signing/verification algorithm. For more information on possible algorithm types, see JsonWebKeySignatureAlgorithm.", + "enum": [ + "PS256", + "PS384", + "PS512", + "RS256", + "RS384", + "RS512", + "RSNULL", + "ES256", + "ES384", + "ES512", + "ES256K" + ], + "x-ms-enum": { + "name": "JsonWebKeySignatureAlgorithm", + "modelAsString": true + } + }, + "digest": { + "type": "string", + "format": "base64url", + "description": "The digest used for signing." + }, + "value": { + "x-ms-client-name": "signature", + "type": "string", + "format": "base64url", + "description": "The signature to be verified." + } + }, + "description": "The key verify parameters.", + "required": [ + "alg", + "digest", + "value" + ] + }, + "KeyUpdateParameters": { + "properties": { + "key_ops": { + "type": "array", + "items": { + "type": "string", + "description": "JSON web key operations. For more information, see JsonWebKeyOperation.", + "enum": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey", + "import" + ], + "x-ms-enum": { + "name": "JsonWebKeyOperation", + "modelAsString": true + } + }, + "description": "Json web key operations. For more information on possible key operations, see JsonWebKeyOperation." + }, + "attributes": { + "x-ms-client-name": "keyAttributes", + "$ref": "#/definitions/KeyAttributes" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The key update parameters." + }, + "KeyRestoreParameters": { + "properties": { + "value": { + "type": "string", + "x-ms-client-name": "keyBundleBackup", + "format": "base64url", + "description": "The backup blob associated with a key bundle." + } + }, + "description": "The key restore parameters.", + "required": [ + "value" + ] + }, + "KeyOperationResult": { + "properties": { + "kid": { + "type": "string", + "description": "Key identifier", + "readOnly": true + }, + "value": { + "x-ms-client-name": "result", + "type": "string", + "format": "base64url", + "readOnly": true + } + }, + "description": "The key operation result." + }, + "KeyVerifyResult": { + "properties": { + "value": { + "type": "boolean", + "readOnly": true, + "description": "True if the signature is verified, otherwise false." + } + }, + "description": "The key verify result." + }, + "KeyListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/KeyItem" + }, + "readOnly": true, + "description": "A response message containing a list of keys in the key vault along with a link to the next page of keys." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of keys." + } + }, + "description": "The key list result." + }, + "DeletedKeyListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeletedKeyItem" + }, + "readOnly": true, + "description": "A response message containing a list of deleted keys in the vault along with a link to the next page of deleted keys" + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of deleted keys." + } + }, + "description": "A list of keys that have been deleted in this vault." + }, + "BackupKeyResult": { + "properties": { + "value": { + "type": "string", + "format": "base64url", + "readOnly": true, + "description": "The backup blob containing the backed up key." + } + }, + "description": "The backup key result, containing the backup blob." + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/rbac.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/rbac.json new file mode 100644 index 000000000000..a15c7e1d7dfb --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/rbac.json @@ -0,0 +1,505 @@ +{ + "swagger": "2.0", + "info": { + "title": "KeyVaultClient", + "description": "The key vault client performs cryptographic key operations and vault operations against the Key Vault service.", + "version": "7.2-preview" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{vaultBaseUrl}", + "useSchemePrefix": false, + "positionInOperation": "first", + "parameters": [ + { + "name": "vaultBaseUrl", + "description": "The vault name, for example https://myvault.vault.azure.net.", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + ] + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/{scope}/providers/Microsoft.Authorization/roleDefinitions": { + "get": { + "tags": [ + "RoleDefinitions" + ], + "operationId": "RoleDefinitions_List", + "description": "Get all role definitions that are applicable at scope and above.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role definition.", + "x-ms-skip-url-encoding": true + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use atScopeAndBelow filter to search below the given scope as well." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of role definitions.", + "schema": { + "$ref": "#/definitions/RoleDefinitionListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ListRoleDefinitions": { + "$ref": "./examples/ListRoleDefinitions-example.json" + } + }, + "x-ms-odata": "#/definitions/RoleDefinitionFilter" + } + }, + "/{scope}/providers/Microsoft.Authorization/roleAssignments/{roleAssignmentName}": { + "delete": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_Delete", + "description": "Deletes a role assignment.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignment to delete.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the role assignment to delete." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "DeleteRoleAssignments": { + "$ref": "./examples/DeleteRoleAssignments-example.json" + } + } + }, + "put": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_Create", + "description": "Creates a role assignment.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignment to create.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the role assignment to create. It can be any valid GUID." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RoleAssignmentCreateParameters" + }, + "description": "Parameters for the role assignment." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Created - Returns information about the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "PutRoleAssignments": { + "$ref": "./examples/PutRoleAssignments-example.json" + } + } + }, + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_Get", + "description": "Get the specified role assignment.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignment.", + "x-ms-skip-url-encoding": true + }, + { + "name": "roleAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the role assignment to get." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the role assignment.", + "schema": { + "$ref": "#/definitions/RoleAssignment" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetRoleAssignments": { + "$ref": "./examples/GetRoleAssignments-example.json" + } + } + } + }, + "/{scope}/providers/Microsoft.Authorization/roleAssignments": { + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_ListForScope", + "description": "Gets role assignments for a scope.", + "parameters": [ + { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The scope of the role assignments.", + "x-ms-skip-url-encoding": true + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. Use $filter=atScope() to return all role assignments at or above the scope. Use $filter=principalId eq {id} to return all role assignments at, above or below the scope for the specified principal." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of role assignments.", + "schema": { + "$ref": "#/definitions/RoleAssignmentListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ListRoleAssignments": { + "$ref": "./examples/ListRoleAssignments-example.json" + } + }, + "x-ms-odata": "#/definitions/RoleAssignmentFilter" + } + } + }, + "definitions": { + "RoleAssignmentFilter": { + "properties": { + "principalId": { + "type": "string", + "description": "Returns role assignment of the specific principal." + } + }, + "description": "Role Assignments filter" + }, + "RoleAssignmentPropertiesWithScope": { + "properties": { + "scope": { + "type": "string", + "description": "The role assignment scope." + }, + "roleDefinitionId": { + "type": "string", + "description": "The role definition ID." + }, + "principalId": { + "type": "string", + "description": "The principal ID." + } + }, + "description": "Role assignment properties with scope." + }, + "RoleAssignment": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The role assignment ID." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The role assignment name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The role assignment type." + }, + "properties": { + "$ref": "#/definitions/RoleAssignmentPropertiesWithScope", + "description": "Role assignment properties." + } + }, + "description": "Role Assignments" + }, + "RoleAssignmentListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RoleAssignment" + }, + "description": "Role assignment list." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Role assignment list operation result." + }, + "RoleAssignmentProperties": { + "properties": { + "roleDefinitionId": { + "type": "string", + "description": "The role definition ID used in the role assignment." + }, + "principalId": { + "type": "string", + "description": "The principal ID assigned to the role. This maps to the ID inside the Active Directory. It can point to a user, service principal, or security group." + } + }, + "required": [ + "roleDefinitionId", + "principalId" + ], + "description": "Role assignment properties." + }, + "RoleAssignmentCreateParameters": { + "properties": { + "properties": { + "$ref": "#/definitions/RoleAssignmentProperties", + "description": "Role assignment properties." + } + }, + "required": [ + "properties" + ], + "description": "Role assignment create parameters." + }, + "RoleDefinitionFilter": { + "properties": { + "roleName": { + "type": "string", + "description": "Returns role definition with the specific name." + } + }, + "description": "Role Definitions filter" + }, + "Permission": { + "properties": { + "actions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Allowed actions." + }, + "notActions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Denied actions." + }, + "dataActions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Allowed Data actions." + }, + "notDataActions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Denied Data actions." + } + }, + "description": "Role definition permissions." + }, + "RoleDefinitionProperties": { + "properties": { + "roleName": { + "type": "string", + "description": "The role name." + }, + "description": { + "type": "string", + "description": "The role definition description." + }, + "type": { + "type": "string", + "description": "The role type.", + "x-ms-client-name": "roleType" + }, + "permissions": { + "type": "array", + "items": { + "$ref": "#/definitions/Permission" + }, + "description": "Role definition permissions." + }, + "assignableScopes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Role definition assignable scopes." + } + }, + "description": "Role definition properties." + }, + "RoleDefinition": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The role definition ID." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The role definition name." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The role definition type." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoleDefinitionProperties", + "description": "Role definition properties." + } + }, + "description": "Role definition." + }, + "RoleDefinitionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RoleDefinition" + }, + "description": "Role definition list." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Role definition list operation result." + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/secrets.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/secrets.json new file mode 100644 index 000000000000..56c3c00f2b27 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/secrets.json @@ -0,0 +1,861 @@ +{ + "swagger": "2.0", + "info": { + "title": "KeyVaultClient", + "description": "The key vault client performs cryptographic key operations and vault operations against the Key Vault service.", + "version": "7.2-preview" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{vaultBaseUrl}", + "useSchemePrefix": false, + "positionInOperation": "first", + "parameters": [ + { + "name": "vaultBaseUrl", + "description": "The vault name, for example https://myvault.vault.azure.net.", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + ] + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/secrets/{secret-name}": { + "put": { + "tags": [ + "Secrets" + ], + "operationId": "SetSecret", + "summary": "Sets a secret in a specified key vault.", + "description": " The SET operation adds a secret to the Azure Key Vault. If the named secret already exists, Azure Key Vault creates a new version of that secret. This operation requires the secrets/set permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z-]+$", + "description": "The name of the secret." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/SecretSetParameters" + }, + "description": "The parameters for setting the secret." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A secret bundle containing the result of the set secret request.", + "schema": { + "$ref": "#/definitions/SecretBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "SetSecret": { + "$ref": "./examples/SetSecret-example.json" + } + } + }, + "delete": { + "tags": [ + "Secrets" + ], + "operationId": "DeleteSecret", + "summary": "Deletes a secret from a specified key vault.", + "description": "The DELETE operation applies to any secret stored in Azure Key Vault. DELETE cannot be applied to an individual version of a secret. This operation requires the secrets/delete permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the secret." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The deleted secret and information on when the secret will be deleted, and how to recover the deleted secret.", + "schema": { + "$ref": "#/definitions/DeletedSecretBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "DeleteSecret": { + "$ref": "./examples/DeleteSecret-example.json" + } + } + } + }, + "/secrets/{secret-name}/{secret-version}": { + "patch": { + "tags": [ + "Secrets" + ], + "operationId": "UpdateSecret", + "summary": "Updates the attributes associated with a specified secret in a given key vault.", + "description": "The UPDATE operation changes specified attributes of an existing stored secret. Attributes that are not specified in the request are left unchanged. The value of a secret itself cannot be changed. This operation requires the secrets/set permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the secret." + }, + { + "name": "secret-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the secret." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/SecretUpdateParameters" + }, + "description": "The parameters for update secret operation." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The updated secret.", + "schema": { + "$ref": "#/definitions/SecretBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "UpdateSecret": { + "$ref": "./examples/UpdateSecret-example.json" + } + } + }, + "get": { + "tags": [ + "Secrets" + ], + "operationId": "GetSecret", + "summary": "Get a specified secret from a given key vault.", + "description": "The GET operation is applicable to any secret stored in Azure Key Vault. This operation requires the secrets/get permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the secret." + }, + { + "name": "secret-version", + "in": "path", + "required": true, + "type": "string", + "description": "The version of the secret." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The retrieved secret.", + "schema": { + "$ref": "#/definitions/SecretBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetSecret": { + "$ref": "./examples/GetSecret-example.json" + } + } + } + }, + "/secrets": { + "get": { + "tags": [ + "Secrets" + ], + "operationId": "GetSecrets", + "summary": "List secrets in a specified key vault.", + "description": "The Get Secrets operation is applicable to the entire vault. However, only the base secret identifier and its attributes are provided in the response. Individual secret versions are not listed in the response. This operation requires the secrets/list permission.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified, the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of secrets in the vault along with a link to the next page of secrets.", + "schema": { + "$ref": "#/definitions/SecretListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetSecrets": { + "$ref": "./examples/GetSecrets-example.json" + } + } + } + }, + "/secrets/{secret-name}/versions": { + "get": { + "tags": [ + "Secrets" + ], + "operationId": "GetSecretVersions", + "summary": "List all versions of the specified secret.", + "description": "The full secret identifier and attributes are provided in the response. No values are returned for the secrets. This operations requires the secrets/list permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the secret." + }, + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified, the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of secrets along with a link to the next page of secrets.", + "schema": { + "$ref": "#/definitions/SecretListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetSecretVersions": { + "$ref": "./examples/GetSecretVersions-example.json" + } + } + } + }, + "/deletedsecrets": { + "get": { + "tags": [ + "DeletedSecrets" + ], + "operationId": "GetDeletedSecrets", + "summary": "Lists deleted secrets for the specified vault.", + "description": "The Get Deleted Secrets operation returns the secrets that have been deleted for a vault enabled for soft-delete. This operation requires the secrets/list permission.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of deleted secrets in the vault, along with a link to the next page of deleted secrets.", + "schema": { + "$ref": "#/definitions/DeletedSecretListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetDeletedSecrets": { + "$ref": "./examples/GetDeletedSecrets-example.json" + } + } + } + }, + "/deletedsecrets/{secret-name}": { + "get": { + "tags": [ + "DeletedSecrets" + ], + "operationId": "GetDeletedSecret", + "summary": "Gets the specified deleted secret.", + "description": "The Get Deleted Secret operation returns the specified deleted secret along with its attributes. This operation requires the secrets/get permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the secret." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A secret bundle of the secret and its attributes.", + "schema": { + "$ref": "#/definitions/DeletedSecretBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "GetDeletedSecret": { + "$ref": "./examples/GetDeletedSecret-example.json" + } + } + }, + "delete": { + "tags": [ + "DeletedSecrets" + ], + "operationId": "PurgeDeletedSecret", + "summary": "Permanently deletes the specified secret.", + "description": "The purge deleted secret operation removes the secret permanently, without the possibility of recovery. This operation can only be enabled on a soft-delete enabled vault. This operation requires the secrets/purge permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the secret." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No content signaling that the secret was purged forever." + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "PurgeDeletedSecret": { + "$ref": "./examples/PurgeDeletedSecret-example.json" + } + } + } + }, + "/deletedsecrets/{secret-name}/recover": { + "post": { + "tags": [ + "DeletedSecrets" + ], + "operationId": "RecoverDeletedSecret", + "summary": "Recovers the deleted secret to the latest version.", + "description": "Recovers the deleted secret in the specified vault. This operation can only be performed on a soft-delete enabled vault. This operation requires the secrets/recover permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the deleted secret." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A Secret bundle of the original secret and its attributes.", + "schema": { + "$ref": "#/definitions/SecretBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "RecoverDeletedSecret": { + "$ref": "./examples/RecoverDeletedSecret-example.json" + } + } + } + }, + "/secrets/{secret-name}/backup": { + "post": { + "tags": [ + "Secrets" + ], + "operationId": "BackupSecret", + "summary": "Backs up the specified secret.", + "description": "Requests that a backup of the specified secret be downloaded to the client. All versions of the secret will be downloaded. This operation requires the secrets/backup permission.", + "parameters": [ + { + "name": "secret-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the secret." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The backup blob containing the backed up secret.", + "schema": { + "$ref": "#/definitions/BackupSecretResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "BackupSecret": { + "$ref": "./examples/BackupSecret-example.json" + } + } + } + }, + "/secrets/restore": { + "post": { + "tags": [ + "Secrets" + ], + "operationId": "RestoreSecret", + "summary": "Restores a backed up secret to a vault.", + "description": "Restores a backed up secret, and all its versions, to a vault. This operation requires the secrets/restore permission.", + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/SecretRestoreParameters" + }, + "description": "The parameters to restore the secret." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Restored secret bundle in the vault.", + "schema": { + "$ref": "#/definitions/SecretBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "RestoreSecret": { + "$ref": "./examples/RestoreSecret-example.json" + } + } + } + } + }, + "definitions": { + "SecretBundle": { + "properties": { + "value": { + "type": "string", + "description": "The secret value." + }, + "id": { + "type": "string", + "description": "The secret id." + }, + "contentType": { + "type": "string", + "description": "The content type of the secret." + }, + "attributes": { + "$ref": "#/definitions/SecretAttributes", + "description": "The secret management attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + }, + "kid": { + "type": "string", + "readOnly": true, + "description": "If this is a secret backing a KV certificate, then this field specifies the corresponding key backing the KV certificate." + }, + "managed": { + "type": "boolean", + "readOnly": true, + "description": "True if the secret's lifetime is managed by key vault. If this is a secret backing a certificate, then managed will be true." + } + }, + "description": "A secret consisting of a value, id and its attributes." + }, + "SecretItem": { + "properties": { + "id": { + "type": "string", + "description": "Secret identifier." + }, + "attributes": { + "$ref": "#/definitions/SecretAttributes", + "description": "The secret management attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + }, + "contentType": { + "type": "string", + "description": "Type of the secret value such as a password." + }, + "managed": { + "type": "boolean", + "readOnly": true, + "description": "True if the secret's lifetime is managed by key vault. If this is a key backing a certificate, then managed will be true." + } + }, + "description": "The secret item containing secret metadata." + }, + "DeletedSecretBundle": { + "allOf": [ + { + "$ref": "#/definitions/SecretBundle" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted secret." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the secret is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the secret was deleted, in UTC" + } + }, + "description": "A Deleted Secret consisting of its previous id, attributes and its tags, as well as information on when it will be purged." + }, + "DeletedSecretItem": { + "allOf": [ + { + "$ref": "#/definitions/SecretItem" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted secret." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the secret is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the secret was deleted, in UTC" + } + }, + "description": "The deleted secret item containing metadata about the deleted secret." + }, + "SecretAttributes": { + "allOf": [ + { + "$ref": "common.json#/definitions/Attributes" + } + ], + "properties": { + "recoverableDays": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "softDelete data retention days. Value should be >=7 and <=90 when softDelete enabled, otherwise 0." + }, + "recoveryLevel": { + "type": "string", + "description": "Reflects the deletion recovery level currently in effect for secrets in the current vault. If it contains 'Purgeable', the secret can be permanently deleted by a privileged user; otherwise, only the system can purge the secret, at the end of the retention interval.", + "enum": [ + "Purgeable", + "Recoverable+Purgeable", + "Recoverable", + "Recoverable+ProtectedSubscription", + "CustomizedRecoverable+Purgeable", + "CustomizedRecoverable", + "CustomizedRecoverable+ProtectedSubscription" + ], + "x-ms-enum": { + "name": "DeletionRecoveryLevel", + "modelAsString": true + }, + "readOnly": true, + "x-nullable": false + } + }, + "description": "The secret management attributes." + }, + "SecretRestoreParameters": { + "properties": { + "value": { + "type": "string", + "x-ms-client-name": "secretBundleBackup", + "format": "base64url", + "description": "The backup blob associated with a secret bundle." + } + }, + "description": "The secret restore parameters.", + "required": [ + "value" + ] + }, + "SecretProperties": { + "properties": { + "contentType": { + "type": "string", + "description": "The media type (MIME type)." + } + }, + "description": "Properties of the key backing a certificate." + }, + "SecretSetParameters": { + "properties": { + "value": { + "type": "string", + "description": "The value of the secret." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + }, + "contentType": { + "type": "string", + "description": "Type of the secret value such as a password." + }, + "attributes": { + "x-ms-client-name": "secretAttributes", + "$ref": "#/definitions/SecretAttributes", + "description": "The secret management attributes." + } + }, + "description": "The secret set parameters.", + "required": [ + "value" + ] + }, + "SecretUpdateParameters": { + "properties": { + "contentType": { + "type": "string", + "description": "Type of the secret value such as a password." + }, + "attributes": { + "x-ms-client-name": "secretAttributes", + "$ref": "#/definitions/SecretAttributes", + "description": "The secret management attributes." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The secret update parameters." + }, + "SecretListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SecretItem" + }, + "readOnly": true, + "description": "A response message containing a list of secrets in the key vault along with a link to the next page of secrets." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of secrets." + } + }, + "description": "The secret list result." + }, + "DeletedSecretListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeletedSecretItem" + }, + "readOnly": true, + "description": "A response message containing a list of the deleted secrets in the vault along with a link to the next page of deleted secrets" + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of deleted secrets." + } + }, + "description": "The deleted secret list result" + }, + "BackupSecretResult": { + "properties": { + "value": { + "type": "string", + "format": "base64url", + "readOnly": true, + "description": "The backup blob containing the backed up secret." + } + }, + "description": "The backup secret result, containing the backup blob." + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/storage.json b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/storage.json new file mode 100644 index 000000000000..39e250bafe15 --- /dev/null +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/preview/7.2/storage.json @@ -0,0 +1,1592 @@ +{ + "swagger": "2.0", + "info": { + "title": "KeyVaultClient", + "description": "The key vault client performs cryptographic key operations and vault operations against the Key Vault service.", + "version": "7.2-preview" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{vaultBaseUrl}", + "useSchemePrefix": false, + "positionInOperation": "first", + "parameters": [ + { + "name": "vaultBaseUrl", + "description": "The vault name, for example https://myvault.vault.azure.net.", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + } + ] + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/storage": { + "get": { + "tags": [ + "Storage" + ], + "operationId": "GetStorageAccounts", + "description": "List storage accounts managed by the specified key vault. This operation requires the storage/list permission.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of storage accounts along with a link to the next page of storage accounts.", + "schema": { + "$ref": "#/definitions/StorageListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Storage account": { + "$ref": "./examples/listStorageAccount.json" + } + } + } + }, + "/deletedstorage": { + "get": { + "tags": [ + "DeletedStorage" + ], + "operationId": "GetDeletedStorageAccounts", + "summary": "Lists deleted storage accounts for the specified vault.", + "description": "The Get Deleted Storage Accounts operation returns the storage accounts that have been deleted for a vault enabled for soft-delete. This operation requires the storage/list permission.", + "parameters": [ + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of deleted storage accounts in the vault, along with a link to the next page of deleted storage accounts.", + "schema": { + "$ref": "#/definitions/DeletedStorageListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Deleted Storage Accounts": { + "$ref": "./examples/listDeletedStorageAccount.json" + } + } + } + }, + "/deletedstorage/{storage-account-name}": { + "get": { + "tags": [ + "DeletedStorage" + ], + "operationId": "GetDeletedStorageAccount", + "summary": "Gets the specified deleted storage account.", + "description": "The Get Deleted Storage Account operation returns the specified deleted storage account along with its attributes. This operation requires the storage/get permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The deleted storage account and information on when it will be purged, and how to recover the deleted storage account.", + "schema": { + "$ref": "#/definitions/DeletedStorageBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Get Deleted Storage": { + "$ref": "./examples/getDeletedStorageAccount.json" + } + } + }, + "delete": { + "tags": [ + "DeletedStorage" + ], + "operationId": "PurgeDeletedStorageAccount", + "summary": "Permanently deletes the specified storage account.", + "description": "The purge deleted storage account operation removes the secret permanently, without the possibility of recovery. This operation can only be performed on a soft-delete enabled vault. This operation requires the storage/purge permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "204": { + "description": "No content signaling that the storage account was purged forever." + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Purge Deleted Storage Account": { + "$ref": "./examples/purgeStorageAccount.json" + } + } + } + }, + "/deletedstorage/{storage-account-name}/recover": { + "post": { + "tags": [ + "DeletedStorage" + ], + "operationId": "RecoverDeletedStorageAccount", + "summary": "Recovers the deleted storage account.", + "description": "Recovers the deleted storage account in the specified vault. This operation can only be performed on a soft-delete enabled vault. This operation requires the storage/recover permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A storage bundle of the original storage account and its attributes.", + "schema": { + "$ref": "#/definitions/StorageBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Recover Deleted Storage Account": { + "$ref": "./examples/recoverStorageAccount.json" + } + } + } + }, + "/storage/{storage-account-name}/backup": { + "post": { + "tags": [ + "Storage" + ], + "operationId": "BackupStorageAccount", + "summary": "Backs up the specified storage account.", + "description": "Requests that a backup of the specified storage account be downloaded to the client. This operation requires the storage/backup permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The backup blob containing the backed up storage account.", + "schema": { + "$ref": "#/definitions/BackupStorageResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Backup Storage Account": { + "$ref": "./examples/backupStorageAccount.json" + } + } + } + }, + "/storage/restore": { + "post": { + "tags": [ + "Storage" + ], + "operationId": "RestoreStorageAccount", + "summary": "Restores a backed up storage account to a vault.", + "description": "Restores a backed up storage account to a vault. This operation requires the storage/restore permission.", + "parameters": [ + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/StorageRestoreParameters" + }, + "description": "The parameters to restore the storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Restored storage account bundle in the vault.", + "schema": { + "$ref": "#/definitions/StorageBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Restore Storage Account": { + "$ref": "./examples/restoreStorageAccount.json" + } + } + } + }, + "/storage/{storage-account-name}": { + "delete": { + "tags": [ + "Storage" + ], + "operationId": "DeleteStorageAccount", + "description": "Deletes a storage account. This operation requires the storage/delete permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The deleted storage account and information on when the storage account will be deleted, and how to recover the deleted storage account.", + "schema": { + "$ref": "#/definitions/DeletedStorageBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Delete Storage account": { + "$ref": "./examples/deleteStorageAccount.json" + } + } + }, + "get": { + "tags": [ + "Storage" + ], + "operationId": "GetStorageAccount", + "description": "Gets information about a specified storage account. This operation requires the storage/get permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The retrieved storage account.", + "schema": { + "$ref": "#/definitions/StorageBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Get Storage account": { + "$ref": "./examples/getStorageAccount.json" + } + } + }, + "put": { + "tags": [ + "Storage" + ], + "operationId": "SetStorageAccount", + "description": "Creates or updates a new storage account. This operation requires the storage/set permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/StorageAccountCreateParameters" + }, + "description": "The parameters to create a storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The created storage account.", + "schema": { + "$ref": "#/definitions/StorageBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Set Storage account": { + "$ref": "./examples/setStorageAccount.json" + } + } + }, + "patch": { + "tags": [ + "Storage" + ], + "operationId": "UpdateStorageAccount", + "description": "Updates the specified attributes associated with the given storage account. This operation requires the storage/set/update permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/StorageAccountUpdateParameters" + }, + "description": "The parameters to update a storage account." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The updated storage account.", + "schema": { + "$ref": "#/definitions/StorageBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Update Storage account": { + "$ref": "./examples/updateStorageAccount.json" + } + } + } + }, + "/storage/{storage-account-name}/regeneratekey": { + "post": { + "tags": [ + "Storage" + ], + "operationId": "RegenerateStorageAccountKey", + "description": "Regenerates the specified key value for the given storage account. This operation requires the storage/regeneratekey permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/StorageAccountRegenerteKeyParameters" + }, + "description": "The parameters to regenerate storage account key." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The updated storage account.", + "schema": { + "$ref": "#/definitions/StorageBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Regenerate Storage account key": { + "$ref": "./examples/regenerateStorageAccountKey.json" + } + } + } + }, + "/storage/{storage-account-name}/sas": { + "get": { + "tags": [ + "Storage" + ], + "operationId": "GetSasDefinitions", + "description": "List storage SAS definitions for the given storage account. This operation requires the storage/listsas permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of SAS definitions along with a link to the next page of SAS definitions.", + "schema": { + "$ref": "#/definitions/SasDefinitionListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Storage Sas Definition": { + "$ref": "./examples/listStorageSasDefinition.json" + } + } + } + }, + "/deletedstorage/{storage-account-name}/sas": { + "get": { + "tags": [ + "DeletedStorage" + ], + "operationId": "GetDeletedSasDefinitions", + "summary": "Lists deleted SAS definitions for the specified vault and storage account.", + "description": "The Get Deleted Sas Definitions operation returns the SAS definitions that have been deleted for a vault enabled for soft-delete. This operation requires the storage/listsas permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "maxresults", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 25, + "description": "Maximum number of results to return in a page. If not specified the service will return up to 25 results." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A response message containing a list of deleted SAS definitions for the storage account, along with a link to the next page of deleted SAS definitions.", + "schema": { + "$ref": "#/definitions/DeletedSasDefinitionListResult" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Deleted Storage Sas Definitions": { + "$ref": "./examples/listDeletedStorageSasDefinition.json" + } + } + } + }, + "/deletedstorage/{storage-account-name}/sas/{sas-definition-name}": { + "get": { + "tags": [ + "DeletedStorage" + ], + "operationId": "GetDeletedSasDefinition", + "summary": "Gets the specified deleted sas definition.", + "description": "The Get Deleted SAS Definition operation returns the specified deleted SAS definition along with its attributes. This operation requires the storage/getsas permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "sas-definition-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the SAS definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The deleted SAS definition and information on when the it will be purged, and how to recover the deleted SAS definition.", + "schema": { + "$ref": "#/definitions/DeletedSasDefinitionBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Get Deleted Storage Sas Definition": { + "$ref": "./examples/getDeletedStorageSasDefinition.json" + } + } + } + }, + "/deletedstorage/{storage-account-name}/sas/{sas-definition-name}/recover": { + "post": { + "tags": [ + "DeletedStorage" + ], + "operationId": "RecoverDeletedSasDefinition", + "summary": "Recovers the deleted SAS definition.", + "description": "Recovers the deleted SAS definition for the specified storage account. This operation can only be performed on a soft-delete enabled vault. This operation requires the storage/recover permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "sas-definition-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the SAS definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "A SAS definition bundle of the original SAS definition and its attributes.", + "schema": { + "$ref": "#/definitions/SasDefinitionBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Recover Deleted Storage Sas Definition": { + "$ref": "./examples/recoverStorageSasDefinition.json" + } + } + } + }, + "/storage/{storage-account-name}/sas/{sas-definition-name}": { + "delete": { + "tags": [ + "Storage" + ], + "operationId": "DeleteSasDefinition", + "description": "Deletes a SAS definition from a specified storage account. This operation requires the storage/deletesas permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "sas-definition-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the SAS definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The deleted SAS definition and information on when the SAS definition will be deleted, and how to recover the deleted SAS definition.", + "schema": { + "$ref": "#/definitions/DeletedSasDefinitionBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Delete Storage Sas Definition": { + "$ref": "./examples/deleteStorageSasDefinition.json" + } + } + }, + "get": { + "tags": [ + "Storage" + ], + "operationId": "GetSasDefinition", + "description": "Gets information about a SAS definition for the specified storage account. This operation requires the storage/getsas permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "sas-definition-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the SAS definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The retrieved SAS definition.", + "schema": { + "$ref": "#/definitions/SasDefinitionBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Get Storage Sas Definition": { + "$ref": "./examples/getStorageSasDefinition.json" + } + } + }, + "put": { + "tags": [ + "Storage" + ], + "operationId": "SetSasDefinition", + "description": "Creates or updates a new SAS definition for the specified storage account. This operation requires the storage/setsas permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "sas-definition-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the SAS definition." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/SasDefinitionCreateParameters" + }, + "description": "The parameters to create a SAS definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The created SAS definition.", + "schema": { + "$ref": "#/definitions/SasDefinitionBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Set Storage Sas definition": { + "$ref": "./examples/setStorageSasDefinition.json" + } + } + }, + "patch": { + "tags": [ + "Storage" + ], + "operationId": "UpdateSasDefinition", + "description": "Updates the specified attributes associated with the given SAS definition. This operation requires the storage/setsas permission.", + "parameters": [ + { + "name": "storage-account-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the storage account." + }, + { + "name": "sas-definition-name", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[0-9a-zA-Z]+$", + "description": "The name of the SAS definition." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "x-ms-client-flatten": true, + "schema": { + "$ref": "#/definitions/SasDefinitionUpdateParameters" + }, + "description": "The parameters to update a SAS definition." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The updated SAS definition.", + "schema": { + "$ref": "#/definitions/SasDefinitionBundle" + } + }, + "default": { + "description": "Key Vault error response describing why the operation failed.", + "schema": { + "$ref": "common.json#/definitions/KeyVaultError" + } + } + }, + "x-ms-examples": { + "Update Storage Sas definition": { + "$ref": "./examples/updateStorageSasDefinition.json" + } + } + } + } + }, + "definitions": { + "StorageRestoreParameters": { + "properties": { + "value": { + "type": "string", + "x-ms-client-name": "storageBundleBackup", + "format": "base64url", + "description": "The backup blob associated with a storage account." + } + }, + "description": "The secret restore parameters.", + "required": [ + "value" + ] + }, + "StorageAccountAttributes": { + "properties": { + "enabled": { + "type": "boolean", + "description": "the enabled state of the object." + }, + "created": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Creation time in UTC." + }, + "updated": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Last updated time in UTC." + }, + "recoverableDays": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "softDelete data retention days. Value should be >=7 and <=90 when softDelete enabled, otherwise 0." + }, + "recoveryLevel": { + "type": "string", + "description": "Reflects the deletion recovery level currently in effect for storage accounts in the current vault. If it contains 'Purgeable' the storage account can be permanently deleted by a privileged user; otherwise, only the system can purge the storage account, at the end of the retention interval.", + "enum": [ + "Purgeable", + "Recoverable+Purgeable", + "Recoverable", + "Recoverable+ProtectedSubscription", + "CustomizedRecoverable+Purgeable", + "CustomizedRecoverable", + "CustomizedRecoverable+ProtectedSubscription" + ], + "x-ms-enum": { + "name": "DeletionRecoveryLevel", + "modelAsString": true + }, + "readOnly": true, + "x-nullable": false + } + }, + "description": "The storage account management attributes." + }, + "StorageBundle": { + "properties": { + "id": { + "type": "string", + "description": "The storage account id.", + "readOnly": true + }, + "resourceId": { + "type": "string", + "description": "The storage account resource id.", + "readOnly": true + }, + "activeKeyName": { + "type": "string", + "description": "The current active storage account key name.", + "readOnly": true + }, + "autoRegenerateKey": { + "type": "boolean", + "description": "whether keyvault should manage the storage account for the user.", + "readOnly": true + }, + "regenerationPeriod": { + "type": "string", + "description": "The key regeneration time duration specified in ISO-8601 format.", + "readOnly": true + }, + "attributes": { + "$ref": "#/definitions/StorageAccountAttributes", + "description": "The storage account attributes.", + "readOnly": true + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs", + "readOnly": true + } + }, + "description": "A Storage account bundle consists of key vault storage account details plus its attributes." + }, + "DeletedStorageBundle": { + "allOf": [ + { + "$ref": "#/definitions/StorageBundle" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted storage account." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the storage account is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the storage account was deleted, in UTC" + } + }, + "description": "A deleted storage account bundle consisting of its previous id, attributes and its tags, as well as information on when it will be purged." + }, + "StorageAccountCreateParameters": { + "properties": { + "resourceId": { + "type": "string", + "description": "Storage account resource id." + }, + "activeKeyName": { + "type": "string", + "description": "Current active storage account key name." + }, + "autoRegenerateKey": { + "type": "boolean", + "description": "whether keyvault should manage the storage account for the user." + }, + "regenerationPeriod": { + "type": "string", + "description": "The key regeneration time duration specified in ISO-8601 format." + }, + "attributes": { + "x-ms-client-name": "StorageAccountAttributes", + "$ref": "#/definitions/StorageAccountAttributes", + "description": "The attributes of the storage account." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The storage account create parameters.", + "required": [ + "resourceId", + "activeKeyName", + "autoRegenerateKey" + ] + }, + "StorageAccountUpdateParameters": { + "properties": { + "activeKeyName": { + "type": "string", + "description": "The current active storage account key name." + }, + "autoRegenerateKey": { + "type": "boolean", + "description": "whether keyvault should manage the storage account for the user." + }, + "regenerationPeriod": { + "type": "string", + "description": "The key regeneration time duration specified in ISO-8601 format." + }, + "attributes": { + "x-ms-client-name": "StorageAccountAttributes", + "$ref": "#/definitions/StorageAccountAttributes", + "description": "The attributes of the storage account." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The storage account update parameters." + }, + "StorageAccountRegenerteKeyParameters": { + "properties": { + "keyName": { + "type": "string", + "description": "The storage account key name." + } + }, + "description": "The storage account key regenerate parameters.", + "required": [ + "keyName" + ] + }, + "StorageAccountItem": { + "properties": { + "id": { + "type": "string", + "description": "Storage identifier.", + "readOnly": true + }, + "resourceId": { + "type": "string", + "description": "Storage account resource Id.", + "readOnly": true + }, + "attributes": { + "$ref": "#/definitions/StorageAccountAttributes", + "description": "The storage account management attributes.", + "readOnly": true + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs.", + "readOnly": true + } + }, + "description": "The storage account item containing storage account metadata." + }, + "DeletedStorageAccountItem": { + "allOf": [ + { + "$ref": "#/definitions/StorageAccountItem" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted storage account." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the storage account is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the storage account was deleted, in UTC" + } + }, + "description": "The deleted storage account item containing metadata about the deleted storage account." + }, + "StorageListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/StorageAccountItem" + }, + "readOnly": true, + "description": "A response message containing a list of storage accounts in the key vault along with a link to the next page of storage accounts." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of storage accounts." + } + }, + "description": "The storage accounts list result." + }, + "DeletedStorageListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeletedStorageAccountItem" + }, + "readOnly": true, + "description": "A response message containing a list of the deleted storage accounts in the vault along with a link to the next page of deleted storage accounts" + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of deleted storage accounts." + } + }, + "description": "The deleted storage account list result" + }, + "SasDefinitionAttributes": { + "properties": { + "enabled": { + "type": "boolean", + "description": "the enabled state of the object." + }, + "created": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Creation time in UTC." + }, + "updated": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "Last updated time in UTC." + }, + "recoverableDays": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "softDelete data retention days. Value should be >=7 and <=90 when softDelete enabled, otherwise 0." + }, + "recoveryLevel": { + "type": "string", + "description": "Reflects the deletion recovery level currently in effect for SAS definitions in the current vault. If it contains 'Purgeable' the SAS definition can be permanently deleted by a privileged user; otherwise, only the system can purge the SAS definition, at the end of the retention interval.", + "enum": [ + "Purgeable", + "Recoverable+Purgeable", + "Recoverable", + "Recoverable+ProtectedSubscription", + "CustomizedRecoverable+Purgeable", + "CustomizedRecoverable", + "CustomizedRecoverable+ProtectedSubscription" + ], + "x-ms-enum": { + "name": "DeletionRecoveryLevel", + "modelAsString": true + }, + "readOnly": true, + "x-nullable": false + } + }, + "description": "The SAS definition management attributes." + }, + "SasDefinitionBundle": { + "properties": { + "id": { + "type": "string", + "description": "The SAS definition id.", + "readOnly": true + }, + "sid": { + "x-ms-client-name": "SecretId", + "type": "string", + "description": "Storage account SAS definition secret id.", + "readOnly": true + }, + "templateUri": { + "type": "string", + "description": "The SAS definition token template signed with an arbitrary key. Tokens created according to the SAS definition will have the same properties as the template.", + "readOnly": true + }, + "sasType": { + "type": "string", + "description": "The type of SAS token the SAS definition will create.", + "enum": [ + "account", + "service" + ], + "x-ms-enum": { + "name": "SasTokenType", + "modelAsString": true + }, + "readOnly": true + }, + "validityPeriod": { + "type": "string", + "description": "The validity period of SAS tokens created according to the SAS definition.", + "readOnly": true + }, + "attributes": { + "$ref": "#/definitions/SasDefinitionAttributes", + "description": "The SAS definition attributes.", + "readOnly": true + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs", + "readOnly": true + } + }, + "description": "A SAS definition bundle consists of key vault SAS definition details plus its attributes." + }, + "DeletedSasDefinitionBundle": { + "allOf": [ + { + "$ref": "#/definitions/SasDefinitionBundle" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted SAS definition." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the SAS definition is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the SAS definition was deleted, in UTC" + } + }, + "description": "A deleted SAS definition bundle consisting of its previous id, attributes and its tags, as well as information on when it will be purged." + }, + "SasDefinitionItem": { + "properties": { + "id": { + "type": "string", + "description": "The storage SAS identifier.", + "readOnly": true + }, + "sid": { + "x-ms-client-name": "SecretId", + "type": "string", + "description": "The storage account SAS definition secret id.", + "readOnly": true + }, + "attributes": { + "$ref": "#/definitions/SasDefinitionAttributes", + "description": "The SAS definition management attributes.", + "readOnly": true + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs.", + "readOnly": true + } + }, + "description": "The SAS definition item containing storage SAS definition metadata." + }, + "DeletedSasDefinitionItem": { + "allOf": [ + { + "$ref": "#/definitions/SasDefinitionItem" + } + ], + "properties": { + "recoveryId": { + "type": "string", + "description": "The url of the recovery object, used to identify and recover the deleted SAS definition." + }, + "scheduledPurgeDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the SAS definition is scheduled to be purged, in UTC" + }, + "deletedDate": { + "type": "integer", + "format": "unixtime", + "readOnly": true, + "description": "The time when the SAS definition was deleted, in UTC" + } + }, + "description": "The deleted SAS definition item containing metadata about the deleted SAS definition." + }, + "SasDefinitionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SasDefinitionItem" + }, + "readOnly": true, + "description": "A response message containing a list of SAS definitions along with a link to the next page of SAS definitions." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of SAS definitions." + } + }, + "description": "The storage account SAS definition list result." + }, + "DeletedSasDefinitionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DeletedSasDefinitionItem" + }, + "readOnly": true, + "description": "A response message containing a list of the deleted SAS definitions in the vault along with a link to the next page of deleted sas definitions" + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of deleted SAS definitions." + } + }, + "description": "The deleted SAS definition list result" + }, + "SasDefinitionCreateParameters": { + "properties": { + "templateUri": { + "type": "string", + "description": "The SAS definition token template signed with an arbitrary key. Tokens created according to the SAS definition will have the same properties as the template." + }, + "sasType": { + "type": "string", + "description": "The type of SAS token the SAS definition will create.", + "enum": [ + "account", + "service" + ], + "x-ms-enum": { + "name": "SasTokenType", + "modelAsString": true + } + }, + "validityPeriod": { + "type": "string", + "description": "The validity period of SAS tokens created according to the SAS definition." + }, + "attributes": { + "x-ms-client-name": "SasDefinitionAttributes", + "$ref": "#/definitions/SasDefinitionAttributes", + "description": "The attributes of the SAS definition." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The SAS definition create parameters.", + "required": [ + "templateUri", + "sasType", + "validityPeriod" + ] + }, + "SasDefinitionUpdateParameters": { + "properties": { + "templateUri": { + "type": "string", + "description": "The SAS definition token template signed with an arbitrary key. Tokens created according to the SAS definition will have the same properties as the template." + }, + "sasType": { + "type": "string", + "description": "The type of SAS token the SAS definition will create.", + "enum": [ + "account", + "service" + ], + "x-ms-enum": { + "name": "SasTokenType", + "modelAsString": true + } + }, + "validityPeriod": { + "type": "string", + "description": "The validity period of SAS tokens created according to the SAS definition." + }, + "attributes": { + "x-ms-client-name": "SasDefinitionAttributes", + "$ref": "#/definitions/SasDefinitionAttributes", + "description": "The attributes of the SAS definition." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Application specific metadata in the form of key-value pairs." + } + }, + "description": "The SAS definition update parameters." + }, + "BackupStorageResult": { + "properties": { + "value": { + "type": "string", + "format": "base64url", + "readOnly": true, + "description": "The backup blob containing the backed up storage account." + } + }, + "description": "The backup storage result, containing the backup blob." + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.0/keyvault.json b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.0/keyvault.json index 81629df16667..bc7638a40ffd 100644 --- a/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.0/keyvault.json +++ b/specification/keyvault/data-plane/Microsoft.KeyVault/stable/7.0/keyvault.json @@ -245,7 +245,7 @@ { "name": "key-version", "in": "path", - "required": true, + "required": false, "type": "string", "description": "Adding the version parameter retrieves a specific version of a key." }, diff --git a/specification/keyvault/data-plane/readme.go.md b/specification/keyvault/data-plane/readme.go.md index e043e63f2f6f..cb56a1deb4dc 100644 --- a/specification/keyvault/data-plane/readme.go.md +++ b/specification/keyvault/data-plane/readme.go.md @@ -13,11 +13,31 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-7.2-preview + - tag: package-7.1-preview - tag: package-7.0 - tag: package-2016-10 - tag: package-2015-06 ``` +### Tag: package-7.2-preview and go + +These settings apply only when `--tag=package-7.2-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-7.2-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/v7.2-preview/$(namespace) +``` + +### Tag: package-7.1-preview and go + +These settings apply only when `--tag=package-7.1-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-7.1-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/v7.1-preview/$(namespace) +``` + ### Tag: package-7.0 and go These settings apply only when `--tag=package-7.0 --go` is specified on the command line. diff --git a/specification/keyvault/data-plane/readme.md b/specification/keyvault/data-plane/readme.md index 9f91edcd1746..eb859f72ce78 100644 --- a/specification/keyvault/data-plane/readme.md +++ b/specification/keyvault/data-plane/readme.md @@ -4,10 +4,10 @@ This is the AutoRest configuration file for KeyVault. - - --- + ## Getting Started + To build the SDK for KeyVault, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: > `autorest` @@ -15,18 +15,46 @@ To build the SDK for KeyVault, simply [Install AutoRest](https://aka.ms/autorest To see additional help and options, run: > `autorest --help` + --- ## Configuration - - ### Basic Information + These are the global settings for the KeyVault API. ``` yaml openapi-type: data-plane -tag: package-7.0 +tag: package-7.2-preview +``` + +### Tag: package-7.2-preview + +These settings apply only when `--tag=package-7.2-preview` is specified on the command line. + +```yaml $(tag) == 'package-7.2-preview' +input-file: +- Microsoft.KeyVault/preview/7.2/certificates.json +- Microsoft.KeyVault/preview/7.2/common.json +- Microsoft.KeyVault/preview/7.2/keys.json +- Microsoft.KeyVault/preview/7.2/rbac.json +- Microsoft.KeyVault/preview/7.2/secrets.json +- Microsoft.KeyVault/preview/7.2/storage.json +- Microsoft.KeyVault/preview/7.2/backuprestore.json +``` + +### Tag: package-7.1-preview + +These settings apply only when `--tag=package-7.1-preview` is specified on the command line. + +```yaml $(tag) == 'package-7.1-preview' +input-file: +- Microsoft.KeyVault/preview/7.1/certificates.json +- Microsoft.KeyVault/preview/7.1/common.json +- Microsoft.KeyVault/preview/7.1/keys.json +- Microsoft.KeyVault/preview/7.1/secrets.json +- Microsoft.KeyVault/preview/7.1/storage.json ``` ### Tag: package-7.0 @@ -38,6 +66,15 @@ input-file: - Microsoft.KeyVault/stable/7.0/keyvault.json ``` +### Tag: package-7.0-preview + +These settings apply only when `--tag=package-7.0-preview` is specified on the command line. + +``` yaml $(tag) == 'package-7.0-preview' +input-file: +- Microsoft.KeyVault/preview/7.0/keyvault.json +``` + ### Tag: package-2016-10 These settings apply only when `--tag=package-2016-10` is specified on the command line. @@ -56,10 +93,9 @@ input-file: - Microsoft.KeyVault/stable/2015-06-01/keyvault.json ``` - --- -# Code Generation +# Code Generation ## Swagger to SDK @@ -71,7 +107,6 @@ swagger-to-sdk: - repo: azure-sdk-for-go ``` - ## C# These settings apply only when `--csharp` is specified on the command line. @@ -87,7 +122,6 @@ csharp: clear-output-folder: true ``` - ## Go See configuration in [readme.go.md](./readme.go.md) @@ -106,7 +140,8 @@ java: output-folder: $(azure-libraries-for-java-folder)/azure-keyvault override-client-name: KeyVaultClientBase ``` -## Multi-API/Profile support for AutoRest v3 generators + +## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. @@ -118,13 +153,26 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.KeyVault/preview/7.2/certificates.json + - $(this-folder)/Microsoft.KeyVault/preview/7.2/common.json + - $(this-folder)/Microsoft.KeyVault/preview/7.2/keys.json + - $(this-folder)/Microsoft.KeyVault/preview/7.2/rbac.json + - $(this-folder)/Microsoft.KeyVault/preview/7.2/secrets.json + - $(this-folder)/Microsoft.KeyVault/preview/7.2/storage.json + - $(this-folder)/Microsoft.KeyVault/preview/7.2/backuprestore.json + - $(this-folder)/Microsoft.KeyVault/preview/7.1/certificates.json + - $(this-folder)/Microsoft.KeyVault/preview/7.1/common.json + - $(this-folder)/Microsoft.KeyVault/preview/7.1/keys.json + - $(this-folder)/Microsoft.KeyVault/preview/7.1/secrets.json + - $(this-folder)/Microsoft.KeyVault/preview/7.1/storage.json - $(this-folder)/Microsoft.KeyVault/stable/7.0/keyvault.json + - $(this-folder)/Microsoft.KeyVault/preview/7.0/keyvault.json - $(this-folder)/Microsoft.KeyVault/stable/2016-10-01/keyvault.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, +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' @@ -132,3 +180,143 @@ uncomment the `exclude-file` section below and add the file paths. # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` +## Suppression + +``` yaml +directive: + - suppress: DefinitionsPropertiesNamesCamelCase + from: certificates.json + where: $.definitions.CertificateOperation.properties.cancellation_requested + reason: Merely refactored existing definitions into new files. + - suppress: DefinitionsPropertiesNamesCamelCase + from: certificates.json + where: $.definitions.CertificateOperation.properties.status_details + reason: Merely refactored existing definitions into new files. + - suppress: DefinitionsPropertiesNamesCamelCase + from: certificates.json + where: $.definitions.CertificateOperation.properties.request_id + reason: Merely refactored existing definitions into new files. + - suppress: DefinitionsPropertiesNamesCamelCase + from: certificates.json + where: $.definitions.CertificatePolicy.properties.key_props + reason: Merely refactored existing definitions into new files. + - suppress: DefinitionsPropertiesNamesCamelCase + from: certificates.json + where: $.definitions.CertificatePolicy.properties.secret_props + reason: Merely refactored existing definitions into new files. + - suppress: DefinitionsPropertiesNamesCamelCase + from: certificates.json + where: $.definitions.CertificatePolicy.properties.x509_props + reason: Merely refactored existing definitions into new files. + - suppress: DefinitionsPropertiesNamesCamelCase + from: certificates.json + where: $.definitions.CertificatePolicy.properties.lifetime_actions + reason: Merely refactored existing definitions into new files. + - suppress: DefinitionsPropertiesNamesCamelCase + from: certificates.json + where: $.definitions.X509CertificateProperties.properties.key_usage + reason: Merely refactored existing definitions into new files. + - suppress: DefinitionsPropertiesNamesCamelCase + from: certificates.json + where: $.definitions.X509CertificateProperties.properties.validity_months + reason: Merely refactored existing definitions into new files. + - suppress: DefinitionsPropertiesNamesCamelCase + from: certificates.json + where: $.definitions.IssuerParameters.properties.cert_transparency + reason: Merely refactored existing definitions into new files. + - suppress: DefinitionsPropertiesNamesCamelCase + from: certificates.json + where: $.definitions.Action.properties.action_type + reason: Merely refactored existing definitions into new files. + - suppress: DefinitionsPropertiesNamesCamelCase + from: certificates.json + where: $.definitions.Trigger.properties.lifetime_percentage + reason: Merely refactored existing definitions into new files. + - suppress: DefinitionsPropertiesNamesCamelCase + from: certificates.json + where: $.definitions.Trigger.properties.days_before_expiry + reason: Merely refactored existing definitions into new files. + - suppress: DefinitionsPropertiesNamesCamelCase + from: certificates.json + where: $.definitions.SubjectAlternativeNames.properties.dns_names + reason: Merely refactored existing definitions into new files. + - suppress: DefinitionsPropertiesNamesCamelCase + from: certificates.json + where: $.definitions.IssuerBundle.properties.org_details + reason: Merely refactored existing definitions into new files. + - suppress: DefinitionsPropertiesNamesCamelCase + from: certificates.json + where: $.definitions.IssuerCredentials.properties.account_id + reason: Merely refactored existing definitions into new files. + - suppress: DefinitionsPropertiesNamesCamelCase + from: certificates.json + where: $.definitions.OrganizationDetails.properties.admin_details + reason: Merely refactored existing definitions into new files. + - suppress: DefinitionsPropertiesNamesCamelCase + from: certificates.json + where: $.definitions.AdministratorDetails.properties.first_name + reason: Merely refactored existing definitions into new files. + - suppress: DefinitionsPropertiesNamesCamelCase + from: certificates.json + where: $.definitions.AdministratorDetails.properties.last_name + reason: Merely refactored existing definitions into new files. + - suppress: DefinitionsPropertiesNamesCamelCase + from: certificates.json + where: $.definitions.CertificateIssuerSetParameters.properties.org_details + reason: Merely refactored existing definitions into new files. + - suppress: DefinitionsPropertiesNamesCamelCase + from: certificates.json + where: $.definitions.CertificateIssuerUpdateParameters.properties.org_details + reason: Merely refactored existing definitions into new files. + - suppress: DefinitionsPropertiesNamesCamelCase + from: certificates.json + where: $.definitions.CertificateOperationUpdateParameter.properties.cancellation_requested + reason: Merely refactored existing definitions into new files. + - suppress: DefinitionsPropertiesNamesCamelCase + from: keys.json + where: $.definitions.KeyProperties.properties.key_size + reason: Merely refactored existing definitions into new files. + - suppress: DefinitionsPropertiesNamesCamelCase + from: keys.json + where: $.definitions.KeyProperties.properties.reuse_key + reason: Merely refactored existing definitions into new files. + - suppress: DefinitionsPropertiesNamesCamelCase + from: keys.json + where: $.definitions.JsonWebKey.properties.key_ops + reason: Merely refactored existing definitions into new files. + - suppress: DefinitionsPropertiesNamesCamelCase + from: keys.json + where: $.definitions.JsonWebKey.properties.key_hsm + reason: Merely refactored existing definitions into new files. + - suppress: DefinitionsPropertiesNamesCamelCase + from: keys.json + where: $.definitions.KeyCreateParameters.properties.key_size + reason: Merely refactored existing definitions into new files. + - suppress: DefinitionsPropertiesNamesCamelCase + from: keys.json + where: $.definitions.KeyCreateParameters.properties.key_ops + reason: Merely refactored existing definitions into new files. + - suppress: DefinitionsPropertiesNamesCamelCase + from: keys.json + where: $.definitions.KeyImportParameters.properties.Hsm + reason: Merely refactored existing definitions into new files. + - suppress: DefinitionsPropertiesNamesCamelCase + from: keys.json + where: $.definitions.KeyUpdateParameters.properties.key_ops + reason: Merely refactored existing definitions into new files. + - suppress: MISSING_REQUIRED_PARAMETER + from: certificates.json + where: $..parameters[?(@.name=='vaultBaseUrl')] + reason: Suppress an invalid error caused by a bug in the linter. + - suppress: MISSING_REQUIRED_PARAMETER + from: keys.json + where: $..parameters[?(@.name=='vaultBaseUrl')] + reason: Suppress an invalid error caused by a bug in the linter. + - suppress: MISSING_REQUIRED_PARAMETER + from: secrets.json + where: $..parameters[?(@.name=='vaultBaseUrl')] + reason: Suppress an invalid error caused by a bug in the linter. + - suppress: MISSING_REQUIRED_PARAMETER + from: storage.json + reason: Suppress an invalid error caused by a bug in the linter. +``` diff --git a/specification/keyvault/data-plane/readme.python.md b/specification/keyvault/data-plane/readme.python.md index ec2eae88d568..e6c36cc73ae4 100644 --- a/specification/keyvault/data-plane/readme.python.md +++ b/specification/keyvault/data-plane/readme.python.md @@ -21,10 +21,32 @@ Generate all API versions currently shipped for this package ```yaml $(python) && $(multiapi) batch: + - tag: package-7.2-preview + - tag: package-7.1-preview - tag: package-7.0 - tag: package-2016-10 ``` +### Tag: package-7.2-preview and python + +These settings apply only when `--tag=package-7.2-preview --python` is specified on the command line. + +``` yaml $(tag) == 'package-7.2-preview' && $(python) +python: + namespace: azure.keyvault.v7_2 + output-folder: $(python-sdks-folder)/keyvault/azure-keyvault/azure/keyvault/v7_2_preview +``` + +### Tag: package-7.1-preview and python + +These settings apply only when `--tag=package-7.1-preview --python` is specified on the command line. + +``` yaml $(tag) == 'package-7.1-preview' && $(python) +python: + namespace: azure.keyvault.v7_1 + output-folder: $(python-sdks-folder)/keyvault/azure-keyvault/azure/keyvault/v7_1_preview +``` + ### Tag: package-7.0 and python These settings apply only when `--tag=package-7.0 --python` is specified on the command line. diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2018-02-14-preview/examples/deleteVault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2018-02-14-preview/examples/deleteVault.json index c2c9c0dfded1..56156cbd4816 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2018-02-14-preview/examples/deleteVault.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2018-02-14-preview/examples/deleteVault.json @@ -7,8 +7,7 @@ }, "responses": { "200": { - "headers": {}, - "body": "" + "headers": {} } } } diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2018-02-14-preview/examples/purgeDeletedVault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2018-02-14-preview/examples/purgeDeletedVault.json index a215ef70f74f..07b6fa9994f2 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2018-02-14-preview/examples/purgeDeletedVault.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2018-02-14-preview/examples/purgeDeletedVault.json @@ -7,10 +7,10 @@ }, "responses": { "200": { - "body": "" + "headers": {} }, "202": { - "body": "" + "headers": {} } } } diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2018-02-14-preview/keyvault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2018-02-14-preview/keyvault.json index ede2c4ba6953..b0819e1b6521 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2018-02-14-preview/keyvault.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/preview/2018-02-14-preview/keyvault.json @@ -855,7 +855,7 @@ "items": { "$ref": "#/definitions/AccessPolicyEntry" }, - "description": "An array of 0 to 16 identities that have access to the key vault. All identities in the array must use the same tenant ID as the key vault's tenant ID." + "description": "An array of 0 to 1024 identities that have access to the key vault. All identities in the array must use the same tenant ID as the key vault's tenant ID." }, "vaultUri": { "type": "string", diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2015-06-01/keyvault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2015-06-01/keyvault.json index b5615cbfa0c8..6c60337ce2c2 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2015-06-01/keyvault.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2015-06-01/keyvault.json @@ -101,6 +101,9 @@ "responses": { "200": { "description": "OK Response." + }, + "204": { + "description": "No Content." } } }, diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2016-10-01/examples/deleteVault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2016-10-01/examples/deleteVault.json index 43529414cf91..baaefb1ef99e 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2016-10-01/examples/deleteVault.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2016-10-01/examples/deleteVault.json @@ -7,8 +7,10 @@ }, "responses": { "200": { - "headers": {}, - "body": "" + "headers": {} + }, + "204": { + "headers": {} } } } diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2016-10-01/examples/purgeDeletedVault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2016-10-01/examples/purgeDeletedVault.json index 58190fc37a34..d298d9850818 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2016-10-01/examples/purgeDeletedVault.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2016-10-01/examples/purgeDeletedVault.json @@ -6,11 +6,7 @@ "api-version": "2016-10-01" }, "responses": { - "200": { - "body": "" - }, - "202": { - "body": "" - } + "200": {}, + "202": {} } } diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2016-10-01/keyvault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2016-10-01/keyvault.json index 815632dde72f..41355b3b055f 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2016-10-01/keyvault.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2016-10-01/keyvault.json @@ -170,6 +170,9 @@ "responses": { "200": { "description": "OK Response." + }, + "204": { + "description": "No Content." } }, "x-ms-examples": { diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/deletePrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/deletePrivateEndpointConnection.json new file mode 100644 index 000000000000..2e927897cf70 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/deletePrivateEndpointConnection.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "vaultName": "sample-vault", + "privateEndpointConnectionName": "sample-pec", + "api-version": "2018-02-14" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec", + "name": "sample-pec", + "type": "Microsoft.KeyVault/vaults/privateEndpointConnections", + "properties": { + "provisioningState": "Disconnected" + } + } + }, + "202": { + "headers": { + "Retry-After": "60", + "Location": "https://some.endpoint.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec?operationid=25334578" + } + }, + "204": {} + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/deleteVault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/deleteVault.json index fdbee300d776..05c12ee579b2 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/deleteVault.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/deleteVault.json @@ -7,8 +7,10 @@ }, "responses": { "200": { - "headers": {}, - "body": "" + "headers": {} + }, + "204": { + "headers": {} } } } diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/getPrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/getPrivateEndpointConnection.json new file mode 100644 index 000000000000..2fb84a554652 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/getPrivateEndpointConnection.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "vaultName": "sample-vault", + "privateEndpointConnectionName": "sample-pec", + "api-version": "2018-02-14" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec", + "name": "sample-pec", + "type": "Microsoft.KeyVault/vaults/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "This was automatically approved by user1234@contoso.com", + "actionRequired": "None" + } + } + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/listPrivateLinkResources.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/listPrivateLinkResources.json new file mode 100644 index 000000000000..f76786fad20e --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/listPrivateLinkResources.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "vaultName": "sample-vault", + "api-version": "2018-02-14" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateLinkResources/vault", + "name": "vault", + "type": "Microsoft.KeyVault/vaults/privateLinkResources", + "properties": { + "groupId": "vault", + "requiredMembers": [ + "default" + ], + "requiredZoneNames": [ + "privatelink.vaultcore.azure.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/purgeDeletedVault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/purgeDeletedVault.json index a9cf9fa4ed1b..27c107c0af95 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/purgeDeletedVault.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/purgeDeletedVault.json @@ -7,10 +7,10 @@ }, "responses": { "200": { - "body": "" + "headers": {} }, "202": { - "body": "" + "headers": {} } } } diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/putPrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/putPrivateEndpointConnection.json new file mode 100644 index 000000000000..2e37409c6098 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/examples/putPrivateEndpointConnection.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "vaultName": "sample-vault", + "privateEndpointConnectionName": "sample-pec", + "api-version": "2018-02-14", + "properties": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "My name is Joe and I'm approving this." + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec", + "name": "sample-pec", + "type": "Microsoft.KeyVault/vaults/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "My name is Joe and I'm approving this.", + "actionRequired": "None" + } + } + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/keyvault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/keyvault.json index 38124f55fd72..e83bef971bcb 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/keyvault.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2018-02-14/keyvault.json @@ -174,6 +174,9 @@ "responses": { "200": { "description": "OK Response." + }, + "204": { + "description": "No Content." } }, "x-ms-examples": { @@ -615,9 +618,6 @@ }, "produces": [ "application/json" - ], - "consumes": [ - "application/json" ] } }, @@ -665,9 +665,256 @@ "application/json" ] } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Get", + "description": "Gets the specified private endpoint connection associated with the key vault.", + "x-ms-examples": { + "KeyVaultGetPrivateEndpointConnection": { + "$ref": "./examples/getPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Private endpoint connection successfully returned.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Put", + "description": "Updates the specified private endpoint connection associated with the key vault.", + "x-ms-examples": { + "KeyVaultPutPrivateEndpointConnection": { + "$ref": "./examples/putPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The intended state of private endpoint connection." + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "The state of private endpoint connection was updated successfully.", + "headers": { + "Retry-After": { + "description": "(specified only if operation does not finish synchronously) The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.", + "type": "integer" + }, + "Azure-AsyncOperation": { + "description": "(specified only if operation does not finish synchronously) The URI to poll for completion status. The response of this URI may be synchronous or asynchronous.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Delete", + "description": "Deletes the specified private endpoint connection associated with the key vault.", + "x-ms-examples": { + "KeyVaultDeletePrivateEndpointConnection": { + "$ref": "./examples/deletePrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "The private endpoint connection was successfully deleted.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "202": { + "description": "The private endpoint connection is being deleted.", + "headers": { + "Retry-After": { + "description": "The recommended number of seconds to wait before calling the URI specified in the location header.", + "type": "integer" + }, + "Location": { + "description": "The URI to poll for completion status.", + "type": "string" + } + } + }, + "204": { + "description": "The private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "operationId": "PrivateLinkResources_ListByVault", + "description": "Gets the private link resources supported for the key vault.", + "x-ms-examples": { + "KeyVaultListPrivateLinkResources": { + "$ref": "./examples/listPrivateLinkResources.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } } }, "definitions": { + "CloudError": { + "description": "An error response from Key Vault resource provider", + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody" + } + }, + "x-ms-external": true + }, + "CloudErrorBody": { + "description": "An error response from Key Vault resource provider", + "properties": { + "code": { + "type": "string", + "description": "Error code. This is a mnemonic that can be consumed programmatically." + }, + "message": { + "type": "string", + "description": "User friendly error message. The message is typically localized and may vary with service version." + } + }, + "x-ms-external": true + }, "Sku": { "properties": { "family": { @@ -855,7 +1102,7 @@ "items": { "$ref": "#/definitions/AccessPolicyEntry" }, - "description": "An array of 0 to 16 identities that have access to the key vault. All identities in the array must use the same tenant ID as the key vault's tenant ID. When `createMode` is set to `recover`, access policies are not required. Otherwise, access policies are required." + "description": "An array of 0 to 1024 identities that have access to the key vault. All identities in the array must use the same tenant ID as the key vault's tenant ID. When `createMode` is set to `recover`, access policies are not required. Otherwise, access policies are required." }, "vaultUri": { "type": "string", @@ -895,7 +1142,15 @@ }, "networkAcls": { "$ref": "#/definitions/NetworkRuleSet", - "description": "A collection of rules governing the accessibility of the vault from specific network locations." + "description": "Rules governing the accessibility of the key vault from specific network locations." + }, + "privateEndpointConnections": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnectionItem" + }, + "description": "List of private endpoint connections associated with the key vault." } }, "required": [ @@ -1088,6 +1343,32 @@ }, "Vault": { "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Fully qualified identifier of the key vault resource." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the key vault resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type of the key vault resource." + }, + "location": { + "type": "string", + "description": "Azure location of the key vault resource." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Tags assigned to the key vault resource." + }, "properties": { "$ref": "#/definitions/VaultProperties", "description": "Properties of the vault" @@ -1096,12 +1377,8 @@ "required": [ "properties" ], - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], - "description": "Resource information with extended details." + "description": "Resource information with extended details.", + "x-ms-azure-resource": true }, "DeletedVault": { "properties": { @@ -1180,34 +1457,33 @@ "id": { "readOnly": true, "type": "string", - "description": "The Azure Resource Manager resource ID for the key vault." + "description": "Fully qualified identifier of the key vault resource." }, "name": { "readOnly": true, "type": "string", - "description": "The name of the key vault." + "description": "Name of the key vault resource." }, "type": { "readOnly": true, "type": "string", - "description": "The resource type of the key vault." + "description": "Resource type of the key vault resource." }, "location": { + "readOnly": true, "type": "string", - "description": "The supported Azure location where the key vault should be created." + "description": "Azure location of the key vault resource." }, "tags": { + "readOnly": true, "type": "object", "additionalProperties": { "type": "string" }, - "description": "The tags that will be assigned to the key vault. " + "description": "Tags assigned to the key vault resource." } }, "description": "Key Vault resource", - "required": [ - "location" - ], "x-ms-azure-resource": true }, "VaultCheckNameAvailabilityParameters": { @@ -1328,6 +1604,159 @@ "id" ], "description": "A rule governing the accessibility of a vault from a specific virtual network." + }, + "PrivateEndpointConnectionItem": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "x-ms-client-flatten": true, + "description": "Private endpoint connection properties." + } + }, + "description": "Private endpoint connection item." + }, + "PrivateEndpointConnection": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "x-ms-client-flatten": true, + "description": "Resource properties." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Private endpoint connection resource.", + "x-ms-azure-resource": true + }, + "PrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "Properties of the private endpoint object." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "Approval state of the private link connection." + }, + "provisioningState": { + "$ref": "#/definitions/PrivateEndpointConnectionProvisioningState", + "description": "Provisioning state of the private endpoint connection." + } + }, + "description": "Properties of the private endpoint connection resource." + }, + "PrivateEndpoint": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Full identifier of the private endpoint resource." + } + }, + "description": "Private endpoint object properties." + }, + "PrivateLinkServiceConnectionState": { + "properties": { + "status": { + "$ref": "#/definitions/PrivateEndpointServiceConnectionStatus", + "description": "Indicates whether the connection has been approved, rejected or removed by the key vault owner." + }, + "description": { + "type": "string", + "description": "The reason for approval or rejection." + }, + "actionRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + } + }, + "description": "An object that represents the approval state of the private link connection." + }, + "PrivateEndpointServiceConnectionStatus": { + "type": "string", + "description": "The private endpoint connection status.", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ], + "x-ms-enum": { + "name": "PrivateEndpointServiceConnectionStatus", + "modelAsString": true + } + }, + "PrivateEndpointConnectionProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Succeeded", + "Creating", + "Updating", + "Deleting", + "Failed", + "Disconnected" + ], + "x-ms-enum": { + "name": "PrivateEndpointConnectionProvisioningState", + "modelAsString": true + } + }, + "PrivateLinkResourceListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "description": "A list of private link resources" + }, + "PrivateLinkResource": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "A private link resource" + }, + "PrivateLinkResourceProperties": { + "properties": { + "groupId": { + "description": "Group identifier of private link resource.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "Required member names of private link resource.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Required DNS zone names of the the private link resource." + } + }, + "description": "Properties of a private link resource." } }, "parameters": { @@ -1338,6 +1767,31 @@ "type": "string", "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." }, + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the resource group that contains the key vault.", + "x-ms-parameter-location": "method" + }, + "VaultName": { + "name": "vaultName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-]{3,24}$", + "description": "The name of the key vault.", + "x-ms-parameter-location": "method" + }, + "PrivateEndpointConnectionName": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the private endpoint connection associated with the key vault.", + "x-ms-parameter-location": "method" + }, "ApiVersionParameter": { "name": "api-version", "in": "query", diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/examples/deletePrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/examples/deletePrivateEndpointConnection.json new file mode 100644 index 000000000000..2e927897cf70 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/examples/deletePrivateEndpointConnection.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "vaultName": "sample-vault", + "privateEndpointConnectionName": "sample-pec", + "api-version": "2018-02-14" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec", + "name": "sample-pec", + "type": "Microsoft.KeyVault/vaults/privateEndpointConnections", + "properties": { + "provisioningState": "Disconnected" + } + } + }, + "202": { + "headers": { + "Retry-After": "60", + "Location": "https://some.endpoint.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec?operationid=25334578" + } + }, + "204": {} + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/examples/deleteVault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/examples/deleteVault.json index 8480ffede0c5..bf878ab72f09 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/examples/deleteVault.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/examples/deleteVault.json @@ -8,6 +8,9 @@ "responses": { "200": { "headers": {} + }, + "204": { + "headers": {} } } } diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/examples/getPrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/examples/getPrivateEndpointConnection.json new file mode 100644 index 000000000000..2fb84a554652 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/examples/getPrivateEndpointConnection.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "vaultName": "sample-vault", + "privateEndpointConnectionName": "sample-pec", + "api-version": "2018-02-14" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec", + "name": "sample-pec", + "type": "Microsoft.KeyVault/vaults/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "This was automatically approved by user1234@contoso.com", + "actionRequired": "None" + } + } + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/examples/listPrivateLinkResources.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/examples/listPrivateLinkResources.json new file mode 100644 index 000000000000..f76786fad20e --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/examples/listPrivateLinkResources.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "vaultName": "sample-vault", + "api-version": "2018-02-14" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-resource-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateLinkResources/vault", + "name": "vault", + "type": "Microsoft.KeyVault/vaults/privateLinkResources", + "properties": { + "groupId": "vault", + "requiredMembers": [ + "default" + ], + "requiredZoneNames": [ + "privatelink.vaultcore.azure.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/examples/putPrivateEndpointConnection.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/examples/putPrivateEndpointConnection.json new file mode 100644 index 000000000000..2e37409c6098 --- /dev/null +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/examples/putPrivateEndpointConnection.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "sample-group", + "vaultName": "sample-vault", + "privateEndpointConnectionName": "sample-pec", + "api-version": "2018-02-14", + "properties": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "My name is Joe and I'm approving this." + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sample-group/providers/Microsoft.KeyVault/vaults/sample-vault/privateEndpointConnections/sample-pec", + "name": "sample-pec", + "type": "Microsoft.KeyVault/vaults/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-1234-000000000000/resourceGroups/sample-group/providers/Microsoft.Network/privateEndpoints/sample-pe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "My name is Joe and I'm approving this.", + "actionRequired": "None" + } + } + } + } + } +} diff --git a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/keyvault.json b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/keyvault.json index ff299b590eed..93c08798eb4a 100644 --- a/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/keyvault.json +++ b/specification/keyvault/resource-manager/Microsoft.KeyVault/stable/2019-09-01/keyvault.json @@ -174,6 +174,9 @@ "responses": { "200": { "description": "OK Response." + }, + "204": { + "description": "No Content." } }, "x-ms-examples": { @@ -615,9 +618,6 @@ }, "produces": [ "application/json" - ], - "consumes": [ - "application/json" ] } }, @@ -665,9 +665,256 @@ "application/json" ] } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Get", + "description": "Gets the specified private endpoint connection associated with the key vault.", + "x-ms-examples": { + "KeyVaultGetPrivateEndpointConnection": { + "$ref": "./examples/getPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Private endpoint connection successfully returned.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Put", + "description": "Updates the specified private endpoint connection associated with the key vault.", + "x-ms-examples": { + "KeyVaultPutPrivateEndpointConnection": { + "$ref": "./examples/putPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The intended state of private endpoint connection." + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "The state of private endpoint connection was updated successfully.", + "headers": { + "Retry-After": { + "description": "(specified only if operation does not finish synchronously) The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.", + "type": "integer" + }, + "Azure-AsyncOperation": { + "description": "(specified only if operation does not finish synchronously) The URI to poll for completion status. The response of this URI may be synchronous or asynchronous.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Delete", + "description": "Deletes the specified private endpoint connection associated with the key vault.", + "x-ms-examples": { + "KeyVaultDeletePrivateEndpointConnection": { + "$ref": "./examples/deletePrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "The private endpoint connection was successfully deleted.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "202": { + "description": "The private endpoint connection is being deleted.", + "headers": { + "Retry-After": { + "description": "The recommended number of seconds to wait before calling the URI specified in the location header.", + "type": "integer" + }, + "Location": { + "description": "The URI to poll for completion status.", + "type": "string" + } + } + }, + "204": { + "description": "The private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.KeyVault/vaults/{vaultName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "operationId": "PrivateLinkResources_ListByVault", + "description": "Gets the private link resources supported for the key vault.", + "x-ms-examples": { + "KeyVaultListPrivateLinkResources": { + "$ref": "./examples/listPrivateLinkResources.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } } }, "definitions": { + "CloudError": { + "description": "An error response from Key Vault resource provider", + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody" + } + }, + "x-ms-external": true + }, + "CloudErrorBody": { + "description": "An error response from Key Vault resource provider", + "properties": { + "code": { + "type": "string", + "description": "Error code. This is a mnemonic that can be consumed programmatically." + }, + "message": { + "type": "string", + "description": "User friendly error message. The message is typically localized and may vary with service version." + } + }, + "x-ms-external": true + }, "Sku": { "properties": { "family": { @@ -855,7 +1102,7 @@ "items": { "$ref": "#/definitions/AccessPolicyEntry" }, - "description": "An array of 0 to 16 identities that have access to the key vault. All identities in the array must use the same tenant ID as the key vault's tenant ID. When `createMode` is set to `recover`, access policies are not required. Otherwise, access policies are required." + "description": "An array of 0 to 1024 identities that have access to the key vault. All identities in the array must use the same tenant ID as the key vault's tenant ID. When `createMode` is set to `recover`, access policies are not required. Otherwise, access policies are required." }, "vaultUri": { "type": "string", @@ -875,7 +1122,19 @@ }, "enableSoftDelete": { "type": "boolean", - "description": "Property to specify whether the 'soft delete' functionality is enabled for this key vault. If it's not set to any value(true or false) when creating new key vault, it will be set to true by default. Once it's been set to true value, it can NOT be reverted to false." + "default": true, + "description": "Property to specify whether the 'soft delete' functionality is enabled for this key vault. If it's not set to any value(true or false) when creating new key vault, it will be set to true by default. Once set to true, it cannot be reverted to false." + }, + "softDeleteRetentionInDays": { + "type": "integer", + "format": "int32", + "default": 90, + "description": "softDelete data retention days. It accepts >=7 and <=90." + }, + "enableRbacAuthorization": { + "type": "boolean", + "default": false, + "description": "Property that controls how data actions are authorized. When true, the key vault will use Role Based Access Control (RBAC) for authorization of data actions, and the access policies specified in vault properties will be ignored (warning: this is a preview feature). When false, the key vault will use the access policies specified in vault properties, and any policy stored on Azure Resource Manager will be ignored. If null or not specified, the vault is created with the default value of false. Note that management actions are always authorized with RBAC." }, "createMode": { "type": "string", @@ -895,7 +1154,15 @@ }, "networkAcls": { "$ref": "#/definitions/NetworkRuleSet", - "description": "A collection of rules governing the accessibility of the vault from specific network locations." + "description": "Rules governing the accessibility of the key vault from specific network locations." + }, + "privateEndpointConnections": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnectionItem" + }, + "description": "List of private endpoint connections associated with the key vault." } }, "required": [ @@ -936,7 +1203,16 @@ }, "enableSoftDelete": { "type": "boolean", - "description": "Property to specify whether the 'soft delete' functionality is enabled for this key vault. If it's not set to any value(true or false) when creating new key vault, it will be set to true by default. Once it's been set to true value, it can NOT be reverted to false." + "description": "Property to specify whether the 'soft delete' functionality is enabled for this key vault. Once set to true, it cannot be reverted to false." + }, + "enableRbacAuthorization": { + "type": "boolean", + "description": "Property that controls how data actions are authorized. When true, the key vault will use Role Based Access Control (RBAC) for authorization of data actions, and the access policies specified in vault properties will be ignored (warning: this is a preview feature). When false, the key vault will use the access policies specified in vault properties, and any policy stored on Azure Resource Manager will be ignored. If null or not specified, the value of this property will not change." + }, + "softDeleteRetentionInDays": { + "type": "integer", + "format": "int32", + "description": "softDelete data retention days. It accepts >=7 and <=90." }, "createMode": { "type": "string", @@ -1088,6 +1364,32 @@ }, "Vault": { "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Fully qualified identifier of the key vault resource." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the key vault resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type of the key vault resource." + }, + "location": { + "type": "string", + "description": "Azure location of the key vault resource." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Tags assigned to the key vault resource." + }, "properties": { "$ref": "#/definitions/VaultProperties", "description": "Properties of the vault" @@ -1096,12 +1398,8 @@ "required": [ "properties" ], - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], - "description": "Resource information with extended details." + "description": "Resource information with extended details.", + "x-ms-azure-resource": true }, "DeletedVault": { "properties": { @@ -1180,34 +1478,33 @@ "id": { "readOnly": true, "type": "string", - "description": "The Azure Resource Manager resource ID for the key vault." + "description": "Fully qualified identifier of the key vault resource." }, "name": { "readOnly": true, "type": "string", - "description": "The name of the key vault." + "description": "Name of the key vault resource." }, "type": { "readOnly": true, "type": "string", - "description": "The resource type of the key vault." + "description": "Resource type of the key vault resource." }, "location": { + "readOnly": true, "type": "string", - "description": "The supported Azure location where the key vault should be created." + "description": "Azure location of the key vault resource." }, "tags": { + "readOnly": true, "type": "object", "additionalProperties": { "type": "string" }, - "description": "The tags that will be assigned to the key vault. " + "description": "Tags assigned to the key vault resource." } }, "description": "Key Vault resource", - "required": [ - "location" - ], "x-ms-azure-resource": true }, "VaultCheckNameAvailabilityParameters": { @@ -1328,6 +1625,159 @@ "id" ], "description": "A rule governing the accessibility of a vault from a specific virtual network." + }, + "PrivateEndpointConnectionItem": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "x-ms-client-flatten": true, + "description": "Private endpoint connection properties." + } + }, + "description": "Private endpoint connection item." + }, + "PrivateEndpointConnection": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "x-ms-client-flatten": true, + "description": "Resource properties." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Private endpoint connection resource.", + "x-ms-azure-resource": true + }, + "PrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "Properties of the private endpoint object." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "Approval state of the private link connection." + }, + "provisioningState": { + "$ref": "#/definitions/PrivateEndpointConnectionProvisioningState", + "description": "Provisioning state of the private endpoint connection." + } + }, + "description": "Properties of the private endpoint connection resource." + }, + "PrivateEndpoint": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Full identifier of the private endpoint resource." + } + }, + "description": "Private endpoint object properties." + }, + "PrivateLinkServiceConnectionState": { + "properties": { + "status": { + "$ref": "#/definitions/PrivateEndpointServiceConnectionStatus", + "description": "Indicates whether the connection has been approved, rejected or removed by the key vault owner." + }, + "description": { + "type": "string", + "description": "The reason for approval or rejection." + }, + "actionRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + } + }, + "description": "An object that represents the approval state of the private link connection." + }, + "PrivateEndpointServiceConnectionStatus": { + "type": "string", + "description": "The private endpoint connection status.", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ], + "x-ms-enum": { + "name": "PrivateEndpointServiceConnectionStatus", + "modelAsString": true + } + }, + "PrivateEndpointConnectionProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Succeeded", + "Creating", + "Updating", + "Deleting", + "Failed", + "Disconnected" + ], + "x-ms-enum": { + "name": "PrivateEndpointConnectionProvisioningState", + "modelAsString": true + } + }, + "PrivateLinkResourceListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "description": "A list of private link resources" + }, + "PrivateLinkResource": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "A private link resource" + }, + "PrivateLinkResourceProperties": { + "properties": { + "groupId": { + "description": "Group identifier of private link resource.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "Required member names of private link resource.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Required DNS zone names of the the private link resource." + } + }, + "description": "Properties of a private link resource." } }, "parameters": { @@ -1338,6 +1788,31 @@ "type": "string", "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." }, + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the resource group that contains the key vault.", + "x-ms-parameter-location": "method" + }, + "VaultName": { + "name": "vaultName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9-]{3,24}$", + "description": "The name of the key vault.", + "x-ms-parameter-location": "method" + }, + "PrivateEndpointConnectionName": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the private endpoint connection associated with the key vault.", + "x-ms-parameter-location": "method" + }, "ApiVersionParameter": { "name": "api-version", "in": "query", diff --git a/specification/keyvault/resource-manager/readme.cli.md b/specification/keyvault/resource-manager/readme.cli.md new file mode 100644 index 000000000000..f4547fe86214 --- /dev/null +++ b/specification/keyvault/resource-manager/readme.cli.md @@ -0,0 +1,110 @@ + +# Dns +This directory contains the Cli common model for the Dns service. + +> Metadata + + +``` yaml +# Migrated from Powershell's readme +title: KeyVault + +directive: + # we have to pick the model that will not be inlined in a circular reference. (was very bad previously) + - no-inline: + - Error + + - from: swagger-document + where: $["x-ms-parameterized-host"] + transform: > + return { + "hostTemplate": "https://{vaultName}.{keyVaultDnsSuffix}/", + "useSchemePrefix": false, + "positionInOperation": "first", + "parameters": [ + { + "name": "vaultName", + "description": "The name of the vault to execute operations on.", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + }, + { + "name": "keyVaultDnsSuffix", + "description": "The URI used as the base for all key vault requests.", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true, + "default": "vault.azure.net", + "x-ms-parameter-location": "client" + } + ]} + +cli: + test-scenario: + - name: /Vaults/put/Create a new vault or update an existing vault + - name: /Vaults/put/Create or update a vault with network acls + disabled: true + - name: /Vaults/put/Add an access policy, or update an access policy with new permissions + disabled: true + - name: /PrivateEndpointConnections/put/KeyVaultPutPrivateEndpointConnection + disabled: true + - name: /PrivateEndpointConnections/get/KeyVaultGetPrivateEndpointConnection + disabled: true + - name: /PrivateLinkResources/get/KeyVaultListPrivateLinkResources + disabled: true + - name: /Vaults/get/Retrieve a vault + - name: /Vaults/get/List vaults in the specified resource group + - name: /Vaults/get/List deleted vaults in the specified subscription + - name: /Vaults/get/List vaults in the specified subscription + - name: /Vaults/get/List vaults in the specified subscription + - name: /Operations/get/Lists available Rest API operations. + - name: /Vaults/patch/Update an existing vault + disabled: true + - name: /Vaults/post/Validate a vault name + - name: /PrivateEndpointConnections/delete/KeyVaultDeletePrivateEndpointConnection + disabled: true + - name: /Vaults/delete/Delete a vault + - name: /Vaults/get/Retrieve a deleted vault + disabled: true + - name: /Vaults/post/Purge a deleted vault + disabled: true + cli-directive: + - where: + resource: 'vaults' + op: '^(getDeleted|purgeDeleted)$' + hidden: true + - where: + enum: 'skuName' + alias: 'sku' + name: 'sku' + - where: + resource: 'vaults' + op: 'checkNameAvailability' + name: 'test' + hidden: true + - where: + resource: 'vaults' + op: 'update' + hidden: true + - where: + type: 'vault' + formatTable: + properties: + - Name + - ResourceGroupName + - Location + - Uri + - where: + type: 'deletedVault' + formatTable: + properties: + - Name + - ResourceGroupName + - Location + - DeletionDate + - ScheduledPurgeDate + +``` \ No newline at end of file diff --git a/specification/keyvault/resource-manager/readme.md b/specification/keyvault/resource-manager/readme.md index 24cac2e8b445..298f828af207 100644 --- a/specification/keyvault/resource-manager/readme.md +++ b/specification/keyvault/resource-manager/readme.md @@ -40,7 +40,6 @@ input-file: - Microsoft.KeyVault/stable/2019-09-01/providers.json ``` - ### Tag: package-2018-02-14-preview These settings apply only when `--tag=package-2018-02-14-preview` is specified on the command line. @@ -51,7 +50,6 @@ input-file: - Microsoft.KeyVault/preview/2018-02-14-preview/providers.json ``` - ### Tag: package-2018-02 These settings apply only when `--tag=package-2018-02` is specified on the command line. @@ -74,7 +72,6 @@ input-file: - Microsoft.KeyVault/stable/2016-10-01/providers.json ``` - ### Tag: package-2015-06 These settings apply only when `--tag=package-2015-06` is specified on the command line. @@ -84,6 +81,14 @@ input-file: - Microsoft.KeyVault/stable/2015-06-01/keyvault.json ``` +### Supressions + +``` yaml +directive: +- suppress: + - R3026 # The 'PrivateEndpointConnection' and 'PrivateLinkResource' sub-resources don't define PATCH as per Network Team's specification. + - R3025 # The 'PrivateLinkResource' is only accessible via List operation; does not define GET as per Network Team's specification. +``` --- # Code Generation diff --git a/specification/keyvault/resource-manager/readme.python.md b/specification/keyvault/resource-manager/readme.python.md index 799872f58e0f..883a0a256ffa 100644 --- a/specification/keyvault/resource-manager/readme.python.md +++ b/specification/keyvault/resource-manager/readme.python.md @@ -4,9 +4,9 @@ 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) -python-mode: create +``` yaml !$(track2) python: + python-mode: create azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION payload-flattening-threshold: 2 @@ -15,21 +15,60 @@ python: no-namespace-folders: 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-keyvault +no-namespace-folders: true +``` + ### Python multi-api Generate all API versions currently shipped for this package -```yaml $(python) && $(multiapi) +```yaml $(multiapi) && !$(track2) +batch: + - tag: package-2019-09 + - tag: package-2018-02 + - tag: package-2016-10 +``` + +```yaml $(multiapi) && $(track2) +clear-output-folder: true batch: + - tag: package-2019-09 - tag: package-2018-02 - tag: package-2016-10 + - multiapiscript: true +``` + +``` yaml $(multiapiscript) +output-folder: $(python-sdks-folder)/keyvault/azure-mgmt-keyvault/azure/mgmt/keyvault/ +clear-output-folder: false +perform-load: false +``` + +### Tag: package-2019-09 and python + +These settings apply only when `--tag=package-2019-09 --python` is specified on the command line. + +``` yaml $(tag) == 'package-2019-09' +namespace: azure.mgmt.keyvault.v2019_09_01 +output-folder: $(python-sdks-folder)/keyvault/azure-mgmt-keyvault/azure/mgmt/keyvault/v2019_09_01 +python: + namespace: azure.mgmt.keyvault.v2019_09_01 + output-folder: $(python-sdks-folder)/keyvault/azure-mgmt-keyvault/azure/mgmt/keyvault/v2019_09_01 ``` ### Tag: package-2018-02 and python These settings apply only when `--tag=package-2018-02 --python` is specified on the command line. -``` yaml $(tag) == 'package-2018-02' && $(python) +``` yaml $(tag) == 'package-2018-02' +namespace: azure.mgmt.keyvault.v2018_02_14 +output-folder: $(python-sdks-folder)/keyvault/azure-mgmt-keyvault/azure/mgmt/keyvault/v2018_02_14 python: namespace: azure.mgmt.keyvault.v2018_02_14 output-folder: $(python-sdks-folder)/keyvault/azure-mgmt-keyvault/azure/mgmt/keyvault/v2018_02_14 @@ -39,8 +78,10 @@ python: These settings apply only when `--tag=package-2016-10 --python` is specified on the command line. -``` yaml $(tag) == 'package-2016-10' && $(python) +``` yaml $(tag) == 'package-2016-10' +namespace: azure.mgmt.keyvault.v2016_10_01 +output-folder: $(python-sdks-folder)/keyvault/azure-mgmt-keyvault/azure/mgmt/keyvault/v2016_10_01 python: namespace: azure.mgmt.keyvault.v2016_10_01 - output-folder: $(python-sdks-folder/keyvault)/azure-mgmt-keyvault/azure/mgmt/keyvault/v2016_10_01 + output-folder: $(python-sdks-folder)/keyvault/azure-mgmt-keyvault/azure/mgmt/keyvault/v2016_10_01 ``` diff --git a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/CreateSourceControlConfiguration.json b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/CreateSourceControlConfiguration.json new file mode 100644 index 000000000000..619c3831e7e9 --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/CreateSourceControlConfiguration.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "subscriptionId": "subId1", + "resourceGroupName": "rg1", + "clusterRp": "Microsoft.Kubernetes", + "clusterResourceName": "connectedClusters", + "sourceControlConfigurationName": "SRS_GitHubConfig", + "api-version": "2019-11-01-preview", + "clusterName": "clusterName1", + "sourceControlConfiguration": { + "properties": { + "repositoryUrl": "git@github.com:k8sdeveloper425/flux-get-started", + "operatorNamespace": "SRS_Namespace", + "operatorInstanceName": "SRSGitHubFluxOp-01", + "operatorType": "Flux", + "operatorScope": "namespace", + "operatorParams": "--git-email=xyzgituser@users.srs.github.com", + "enableHelmOperator": "true", + "helmOperatorProperties": { + "chartVersion": "0.3.0", + "chartValues": "--set git.ssh.secretName=flux-git-deploy --set tillerNamespace=kube-system" + } + } + } + }, + "responses": { + "201": { + "headers": {}, + "description": "Details of the Kubernetes Configuration's current status.", + "body": { + "id": "/subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/sourceControlConfigurations/SRS_GitHubConfig", + "type": "Microsoft.KubernetesConfiguration/sourceControlConfigurations", + "name": "SRS_GitHubConfig", + "properties": { + "repositoryUrl": "git@github.com:k8sdeveloper425/flux-get-started", + "operatorNamespace": "SRS_Namespace", + "operatorInstanceName": "SRSGitHubFluxOp-01", + "operatorType": "Flux", + "operatorScope": "namespace", + "operatorParams": "--git-email=xyzgituser@users.srs.github.com", + "enableHelmOperator": "true", + "helmOperatorProperties": { + "chartVersion": "0.3.0", + "chartValues": "--set git.ssh.secretName=flux-git-deploy --set tillerNamespace=kube-system" + }, + "repositoryPublicKey": "ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAqvTzeL+BWgcHnC1CTBRMg2ZfCh9khlrvb2avFHiGG24rRvjLHlKqtfiiw+cZNCKskUyVKqamD2RHrhyn/wXvJ9fFRt0LhYLKn4hJhJaPx4IawdWnW1MUv4U+Mr8o3Cxps4EmiZemqri3fOrhzEIlPL272whKpzlDLV7L4W1XQIGmVPwQ93HTzKEd5uHuEuw6JyFftDDLlCnd3Q1kQ7HOabFEfcSSr9cMx2MU4j/Pjuf3Rd/CzeksvKtU009KSXSnWKm8LL1fihSc1H1WDTi8iuZtT63hsNYH1yxrPRpMVScs3ufLViAGO9NEHQSgDdl/OERQQqKisUn2Qm6adgmftw== rsa-key-20190909", + "provisioningState": "Succeeded", + "complianceStatus": { + "complianceState": "Pending", + "lastConfigApplied": "2019-09-10T05:10:57.027Z", + "message": "Configuration successfully created", + "messageLevel": "Info" + } + } + } + }, + "200": { + "headers": {}, + "description": "Details of the Kubernetes Configuration's current status.", + "body": { + "id": "/subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/sourceControlConfigurations/SRS_GitHubConfig", + "type": "Microsoft.KubernetesConfiguration/sourceControlConfigurations", + "name": "SRS_GitHubConfig", + "properties": { + "repositoryUrl": "git@github.com:k8sdeveloper425/flux-get-started", + "operatorNamespace": "SRS_Namespace", + "operatorInstanceName": "SRSGitHubFluxOp-01", + "operatorType": "Flux", + "operatorScope": "namespace", + "operatorParams": "--git-email=xyzgituser@users.srs.github.com", + "enableHelmOperator": "true", + "helmOperatorProperties": { + "chartVersion": "0.3.0", + "chartValues": "--set git.ssh.secretName=flux-git-deploy --set tillerNamespace=kube-system" + }, + "repositoryPublicKey": "ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAqvTzeL+BWgcHnC1CTBRMg2ZfCh9khlrvb2avFHiGG24rRvjLHlKqtfiiw+cZNCKskUyVKqamD2RHrhyn/wXvJ9fFRt0LhYLKn4hJhJaPx4IawdWnW1MUv4U+Mr8o3Cxps4EmiZemqri3fOrhzEIlPL272whKpzlDLV7L4W1XQIGmVPwQ93HTzKEd5uHuEuw6JyFftDDLlCnd3Q1kQ7HOabFEfcSSr9cMx2MU4j/Pjuf3Rd/CzeksvKtU009KSXSnWKm8LL1fihSc1H1WDTi8iuZtT63hsNYH1yxrPRpMVScs3ufLViAGO9NEHQSgDdl/OERQQqKisUn2Qm6adgmftw== rsa-key-20190909", + "provisioningState": "Succeeded", + "complianceStatus": { + "complianceState": "Pending", + "lastConfigApplied": "2019-09-10T05:10:57.027Z", + "message": "Configuration successfully created", + "messageLevel": "Info" + } + } + } + } + } +} diff --git a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/DeleteSourceControlConfiguration.json b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/DeleteSourceControlConfiguration.json new file mode 100644 index 000000000000..7b8df4bf751d --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/DeleteSourceControlConfiguration.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "subId1", + "resourceGroupName": "rg1", + "clusterRp": "Microsoft.Kubernetes", + "clusterResourceName": "connectedClusters", + "sourceControlConfigurationName": "SRS_GitHubConfig", + "api-version": "2019-11-01-preview", + "clusterName": "clusterName1" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/GetSourceControlConfiguration.json b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/GetSourceControlConfiguration.json new file mode 100644 index 000000000000..6773b204f031 --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/GetSourceControlConfiguration.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "subId1", + "resourceGroupName": "rg1", + "clusterRp": "Microsoft.Kubernetes", + "clusterResourceName": "connectedClusters", + "sourceControlConfigurationName": "SRS_GitHubConfig", + "api-version": "2019-11-01-preview", + "clusterName": "clusterName1" + }, + "responses": { + "200": { + "headers": {}, + "description": "Details of the Source Control Configuration's current status.", + "body": { + "id": "/subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/sourceControlConfigurations/SRS_GitHubConfig", + "type": "Microsoft.KubernetesConfiguration/sourceControlConfigurations", + "name": "SRS_GitHubConfig", + "properties": { + "repositoryUrl": "git@github.com:k8sdeveloper425/flux-get-started", + "operatorNamespace": "SRS_Namespace", + "operatorInstanceName": "SRSGitHubFluxOp-01", + "operatorType": "Flux", + "operatorScope": "namespace", + "operatorParams": "--git-email=xyzgituser@users.srs.github.com", + "helmOperatorProperties": { + "chartVersion": "0.3.0", + "chartValues": "--set git.ssh.secretName=flux-git-deploy --set tillerNamespace=kube-system" + }, + "repositoryPublicKey": "ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAqvTzeL+BWgcHnC1CTBRMg2ZfCh9khlrvb2avFHiGG24rRvjLHlKqtfiiw+cZNCKskUyVKqamD2RHrhyn/wXvJ9fFRt0LhYLKn4hJhJaPx4IawdWnW1MUv4U+Mr8o3Cxps4EmiZemqri3fOrhzEIlPL272whKpzlDLV7L4W1XQIGmVPwQ93HTzKEd5uHuEuw6JyFftDDLlCnd3Q1kQ7HOabFEfcSSr9cMx2MU4j/Pjuf3Rd/CzeksvKtU009KSXSnWKm8LL1fihSc1H1WDTi8iuZtT63hsNYH1yxrPRpMVScs3ufLViAGO9NEHQSgDdl/OERQQqKisUn2Qm6adgmftw== rsa-key-20190909", + "provisioningState": "Succeeded", + "complianceStatus": { + "complianceState": "Pending", + "lastConfigApplied": "2019-09-10T05:10:57.027Z", + "message": "Configuration successfully created", + "messageLevel": "Info" + } + } + } + } + } +} diff --git a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/ListSourceControlConfiguration.json b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/ListSourceControlConfiguration.json new file mode 100644 index 000000000000..1e1f51dba93a --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/ListSourceControlConfiguration.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "subId1", + "resourceGroupName": "rg1", + "clusterRp": "Microsoft.Kubernetes", + "clusterResourceName": "connectedClusters", + "api-version": "2019-11-01-preview", + "clusterName": "clusterName1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/sourceControlConfigurations/SRS_GitHubConfig", + "type": "Microsoft.KubernetesConfiguration/sourceControlConfigurations", + "name": "SRS_GitHubConfig", + "properties": { + "repositoryUrl": "git@github.com:k8sdeveloper425/SRSClusterconfigs", + "operatorNamespace": "SRS_Namespace", + "operatorInstanceName": "SRSGitHubFluxOp-01", + "operatorType": "Flux", + "operatorScope": "namespace", + "provisioningState": "Succeeded", + "complianceStatus": { + "complianceState": "Compliant" + } + } + }, + { + "id": "/subscriptions/subId1/resourceGroups/rg1/providers/Microsoft.Kubernetes/connectedClusters/clusterName1/providers/Microsoft.KubernetesConfiguration/sourceControlConfigurations/SCRS_GitHubConfig", + "type": "Microsoft.KubernetesConfiguration/sourceControlConfigurations", + "name": "SCRS_GitHubConfig", + "properties": { + "repositoryUrl": "git@github.com:k8sdeveloper425/SCRSClusterconfigs", + "operatorNamespace": "SCRS_Namespace", + "operatorInstanceName": "SCRSGitHubFluxOp-02", + "operatorType": "Flux", + "operatorScope": "cluster", + "provisioningState": "Succeeded", + "complianceStatus": { + "complianceState": "Compliant" + } + } + } + ] + } + } + } +} diff --git a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/OperationsList.json b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/OperationsList.json new file mode 100644 index 000000000000..1e988fe3ab4d --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/examples/OperationsList.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": [ + { + "name": "Microsoft.KubernetesConfiguration/sourceControlConfigurations/read", + "display": { + "provider": "Microsoft KubernetesConfiguration", + "resource": "sourceControlConfigurations", + "operation": "Get Source Control Configuration", + "description": "Get the specified Source Control Configuration." + } + }, + { + "name": "Microsoft.KubernetesConfiguration/sourceControlConfigurations/write", + "display": { + "provider": "Microsoft KubernetesConfiguration", + "resource": "sourceControlConfigurations", + "operation": "Create a Source Control Configuration", + "description": "Create the Source Control Configuration specified." + } + }, + { + "name": "Microsoft.KubernetesConfiguration/sourceControlConfigurations/delete", + "display": { + "provider": "Microsoft KubernetesConfiguration", + "resource": "sourceControlConfigurations", + "operation": "Delete Source Control Configuration", + "description": "Delete the specified Source Control Configuration." + } + } + ] + } + } +} diff --git a/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/kubernetesconfiguration.json b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/kubernetesconfiguration.json new file mode 100644 index 000000000000..7aaa1f02ce13 --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/kubernetesconfiguration.json @@ -0,0 +1,663 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-11-01-preview", + "title": "SourceControlConfigurationClient", + "description": "Use these APIs to create Source Control Configuration resources through ARM, for Kubernetes Clusters." + }, + "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}/resourceGroups/{resourceGroupName}/providers/{clusterRp}/{clusterResourceName}/{clusterName}/providers/Microsoft.KubernetesConfiguration/sourceControlConfigurations/{sourceControlConfigurationName}": { + "get": { + "tags": [ + "SourceControlConfiguration" + ], + "description": "Gets details of the Source Control Configuration.", + "operationId": "SourceControlConfigurations_Get", + "x-ms-examples": { + "Get Source Control Configuration": { + "$ref": "./examples/GetSourceControlConfiguration.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterRpParameter" + }, + { + "$ref": "#/parameters/ClusterResourceNameParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SourceControlConfigurationNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SourceControlConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "SourceControlConfiguration" + ], + "description": "Create a new Kubernetes Source Control Configuration.", + "operationId": "SourceControlConfigurations_CreateOrUpdate", + "x-ms-examples": { + "Create Source Control Configuration": { + "$ref": "./examples/CreateSourceControlConfiguration.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterRpParameter" + }, + { + "$ref": "#/parameters/ClusterResourceNameParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SourceControlConfigurationNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "sourceControlConfiguration", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SourceControlConfiguration" + }, + "description": "Properties necessary to Create KubernetesConfiguration." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SourceControlConfiguration" + } + }, + "201": { + "description": "Created.", + "schema": { + "$ref": "#/definitions/SourceControlConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "SourceControlConfiguration" + ], + "description": "This will delete the YAML file used to set up the Source control configuration, thus stopping future sync from the source repo.", + "operationId": "SourceControlConfigurations_Delete", + "x-ms-examples": { + "Delete Source Control Configuration": { + "$ref": "./examples/DeleteSourceControlConfiguration.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterRpParameter" + }, + { + "$ref": "#/parameters/ClusterResourceNameParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/SourceControlConfigurationNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has been completed successfully." + }, + "204": { + "description": "No Content. The request has been accepted but the configuration was not found." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{clusterRp}/{clusterResourceName}/{clusterName}/providers/Microsoft.KubernetesConfiguration/sourceControlConfigurations": { + "get": { + "tags": [ + "SourceControlConfiguration" + ], + "description": "List all Source Control Configurations.", + "operationId": "SourceControlConfigurations_List", + "x-ms-examples": { + "List Source Control Configuration": { + "$ref": "./examples/ListSourceControlConfiguration.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClusterRpParameter" + }, + { + "$ref": "#/parameters/ClusterResourceNameParameter" + }, + { + "$ref": "#/parameters/ClusterNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SourceControlConfigurationList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.KubernetesConfiguration/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "x-ms-examples": { + "BatchAccountDelete": { + "$ref": "./examples/OperationsList.json" + } + }, + "description": "List all the available operations the KubernetesConfiguration resource provider supports.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/ResourceProviderOperationList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "Resource": { + "description": "The Resource model definition.", + "type": "object", + "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" + } + }, + "x-ms-azure-resource": true + }, + "ProxyResource": { + "description": "ARM proxy resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": {} + }, + "Result": { + "description": "Sample result definition", + "properties": { + "sampleProperty": { + "type": "string", + "description": "Sample property of type string" + } + } + }, + "ErrorResponse": { + "description": "Error response.", + "properties": { + "error": { + "description": "Error definition.", + "$ref": "#/definitions/ErrorDefinition" + } + } + }, + "ErrorDefinition": { + "description": "Error definition.", + "properties": { + "code": { + "description": "Service specific error code which serves as the substatus for the HTTP error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Description of the error.", + "type": "string", + "readOnly": true + }, + "details": { + "description": "Internal error details.", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDefinition" + }, + "readOnly": true + } + } + }, + "ComplianceStatus": { + "description": "Compliance Status details", + "type": "object", + "readOnly": true, + "properties": { + "complianceState": { + "description": "The compliance state of the configuration.", + "$ref": "#/definitions/ComplianceState", + "readOnly": true + }, + "lastConfigApplied": { + "description": "Datetime the configuration was last applied.", + "type": "string", + "format": "date-time" + }, + "message": { + "description": "Message from when the configuration was applied.", + "type": "string" + }, + "messageLevel": { + "description": "Level of the message.", + "type": "string", + "enum": [ + "Error", + "Warning", + "Information" + ], + "x-ms-enum": { + "name": "messageLevel", + "modelAsString": true + } + } + } + }, + "ComplianceState": { + "description": "The compliance state of the configuration.", + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "complianceState", + "modelAsString": true + }, + "enum": [ + "Pending", + "Compliant", + "Noncompliant" + ] + }, + "ChartVersion": { + "description": "Version of the operator Helm chart.", + "type": "string" + }, + "ChartValues": { + "description": "Values override for the operator Helm chart.", + "type": "string" + }, + "HelmOperatorProperties": { + "description": "Properties for Helm operator.", + "type": "object", + "properties": { + "chartVersion": { + "description": "Version of the operator Helm chart.", + "$ref": "#/definitions/ChartVersion" + }, + "chartValues": { + "description": "Values override for the operator Helm chart.", + "$ref": "#/definitions/ChartValues" + } + } + }, + "SourceControlConfiguration": { + "description": "The SourceControl Configuration object.", + "properties": { + "properties": { + "type": "object", + "x-ms-client-flatten": true, + "description": "Properties to create a Source Control Configuration resource", + "properties": { + "repositoryUrl": { + "type": "string", + "description": "Url of the SourceControl Repository." + }, + "operatorNamespace": { + "description": "The namespace to which this operator is installed to. Maximum of 253 lower case alphanumeric characters, hyphen and period only.", + "type": "string", + "default": "default" + }, + "operatorInstanceName": { + "description": "Instance name of the operator - identifying the specific configuration.", + "type": "string" + }, + "operatorType": { + "description": "Type of the operator", + "type": "string", + "enum": [ + "Flux" + ], + "x-ms-enum": { + "name": "operatorType", + "modelAsString": true + } + }, + "operatorParams": { + "description": "Any Parameters for the Operator instance in string format.", + "type": "string" + }, + "operatorScope": { + "description": "Scope at which the operator will be installed.", + "type": "string", + "enum": [ + "cluster", + "namespace" + ], + "default": "cluster", + "x-ms-enum": { + "name": "operatorScope", + "modelAsString": true + } + }, + "repositoryPublicKey": { + "description": "Public Key associated with this SourceControl configuration (either generated within the cluster or provided by the user).", + "type": "string", + "readOnly": true + }, + "enableHelmOperator": { + "description": "Option to enable Helm Operator for this git configuration.", + "type": "string", + "enum": [ + "true", + "false" + ], + "x-ms-enum": { + "name": "enableHelmOperator", + "modelAsString": true + } + }, + "helmOperatorProperties": { + "description": "Properties for Helm operator.", + "type": "object", + "$ref": "#/definitions/HelmOperatorProperties" + }, + "provisioningState": { + "type": "string", + "description": "The provisioning state of the resource provider.", + "readOnly": true, + "x-ms-enum": { + "modelAsString": true, + "name": "ProvisioningState" + }, + "enum": [ + "Accepted", + "Deleting", + "Running", + "Succeeded", + "Failed" + ] + }, + "complianceStatus": { + "type": "object", + "description": "Compliance Status of the Configuration", + "readOnly": true, + "$ref": "#/definitions/ComplianceStatus" + } + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "SourceControlConfigurationList": { + "description": "Result of the request to list Source Control Configurations. It contains a list of SourceControlConfiguration objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SourceControlConfiguration" + }, + "description": "List of Source Control Configurations within a Kubernetes cluster." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "URL to get the next set of configuration objects, if any." + } + } + }, + "ResourceProviderOperation": { + "description": "Supported operation of this resource provider.", + "readOnly": true, + "properties": { + "name": { + "description": "Operation name, in format of {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "Display metadata associated with the operation.", + "properties": { + "provider": { + "description": "Resource provider: Microsoft KubernetesConfiguration.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "Type of operation: get, read, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of this operation.", + "type": "string" + } + } + } + } + }, + "ResourceProviderOperationList": { + "description": "Result of the request to list operations.", + "readOnly": true, + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceProviderOperation" + }, + "description": "List of operations supported by this resource provider." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "URL to the next set of results, if any." + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000)" + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "ClusterRpParameter": { + "name": "clusterRp", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "Microsoft.ContainerService", + "Microsoft.Kubernetes" + ], + "description": "The Kubernetes cluster RP - either Microsoft.ContainerService (for AKS clusters) or Microsoft.Kubernetes (for OnPrem K8S clusters).", + "x-ms-parameter-location": "method" + }, + "ClusterResourceNameParameter": { + "name": "clusterResourceName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "managedClusters", + "connectedClusters" + ], + "description": "The Kubernetes cluster resource name - either managedClusters (for AKS clusters) or connectedClusters (for OnPrem K8S clusters).", + "x-ms-parameter-location": "method" + }, + "ClusterNameParameter": { + "name": "clusterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the kubernetes cluster.", + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to be used with the HTTP request.", + "x-ms-parameter-location": "method" + }, + "SourceControlConfigurationNameParameter": { + "name": "sourceControlConfigurationName", + "in": "path", + "description": "Name of the Source Control Configuration.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/kubernetesconfiguration/resource-manager/readme.csharp.md b/specification/kubernetesconfiguration/resource-manager/readme.csharp.md new file mode 100644 index 000000000000..dce4dccdbb77 --- /dev/null +++ b/specification/kubernetesconfiguration/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.KubernetesConfiguration + output-folder: $(csharp-sdks-folder)/kubernetesconfiguration/Microsoft.Azure.Management.KubernetesConfiguration/src/Generated +``` diff --git a/specification/kubernetesconfiguration/resource-manager/readme.go.md b/specification/kubernetesconfiguration/resource-manager/readme.go.md new file mode 100644 index 000000000000..502ead02e2b4 --- /dev/null +++ b/specification/kubernetesconfiguration/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 + clear-output-folder: true +``` + +### Go multi-api + +``` yaml $(go) && $(multiapi) +batch: + - tag: package-2019-11-01-preview +``` + +### Tag: package-2019-11-01-preview and go + +These settings apply only when `--tag=package-2019-11-01-preview --go` is specified on the command line. +Please also specify `--go-sdks-folder=`. + +```yaml $(tag) == 'package-2019-11-01-preview' && $(go) +namespace: kubernetesconfiguration +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2019-11-01-preview/$(namespace) +``` diff --git a/specification/kubernetesconfiguration/resource-manager/readme.java.md b/specification/kubernetesconfiguration/resource-manager/readme.java.md new file mode 100644 index 000000000000..14b37a01d1b7 --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/readme.java.md @@ -0,0 +1,33 @@ +## Java + +These settings apply only when `--java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(java) +azure-arm: true +fluent: true +namespace: com.microsoft.azure.management.kubernetesconfiguration +license-header: MICROSOFT_MIT_NO_CODEGEN +payload-flattening-threshold: 1 +output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-kubernetesconfiguration +``` + +### Java multi-api + +``` yaml $(java) && $(multiapi) +batch: + - tag: package-2019-11-01-preview +``` + +### Tag: package-2019-11-01-preview and java + +These settings apply only when `--tag=package-2019-11-01-preview --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2019-11-01-preview' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.kubernetesconfiguration.v2019_11_01_preview + output-folder: $(azure-libraries-for-java-folder)/sdk/kubernetesconfiguration/mgmt-v2019_11_01_preview + regenerate-manager: true + generate-interface: true +``` diff --git a/specification/kubernetesconfiguration/resource-manager/readme.md b/specification/kubernetesconfiguration/resource-manager/readme.md new file mode 100644 index 000000000000..ff656db0746e --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/readme.md @@ -0,0 +1,104 @@ +# kubernetesconfiguration + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for kubernetesconfiguration. + +## 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 kubernetesconfiguration. + +```yaml +openapi-type: arm +tag: package-2019-11-01-preview +``` + +### Tag: package-2019-11-01-preview + +These settings apply only when `--tag=package-2019-11-01-preview` is specified on the command line. + +```yaml $(tag) == 'package-2019-11-01-preview' +input-file: + - Microsoft.KubernetesConfiguration/preview/2019-11-01-preview/kubernetesconfiguration.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-python + - repo: azure-sdk-for-java + - repo: azure-sdk-for-go + - repo: azure-sdk-for-js + - repo: azure-sdk-for-ruby + after_scripts: + - bundle install && rake arm:regen_all_profiles['azure_mgmt_kubernetesconfiguration'] +``` + +## Go + +See configuration in [readme.go.md](./readme.go.md) + +## 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) + +## 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 +``` + diff --git a/specification/kubernetesconfiguration/resource-manager/readme.python.md b/specification/kubernetesconfiguration/resource-manager/readme.python.md new file mode 100644 index 000000000000..cc0640133e87 --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/readme.python.md @@ -0,0 +1,27 @@ +## 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 $(python) +python: + python-mode: create + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: azure.mgmt.kubernetesconfiguration + package-name: azure-mgmt-kubernetesconfiguration + package-version: 0.1.1 + clear-output-folder: true +``` +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/kubernetesconfiguration/azure-mgmt-kubernetesconfiguration/azure/mgmt/kubernetesconfiguration +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/kubernetesconfiguration/azure-mgmt-kubernetesconfiguration +``` \ No newline at end of file diff --git a/specification/kubernetesconfiguration/resource-manager/readme.ruby.md b/specification/kubernetesconfiguration/resource-manager/readme.ruby.md new file mode 100644 index 000000000000..18eab73d201b --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/readme.ruby.md @@ -0,0 +1,26 @@ +## Ruby + +These settings apply only when `--ruby` is specified on the command line. + +```yaml +package-name: azure_mgmt_kubernetesconfiguration +package-version: "0.1.1" +azure-arm: true +``` + +### Ruby multi-api + +``` yaml $(ruby) && $(multiapi) +batch: + - tag: package-2019-11-01-preview' +``` + +### Tag: package-2019-11-01-preview and ruby + +These settings apply only when `--tag=package-2019-11-01-preview --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +```yaml $(tag) == 'package-2019-11-01-preview' && $(ruby) +namespace: "Azure::KubernetesConfiguration::Mgmt::V2019_11_01_preview" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_kubernetesconfiguration/lib +``` diff --git a/specification/kubernetesconfiguration/resource-manager/readme.typescript.md b/specification/kubernetesconfiguration/resource-manager/readme.typescript.md new file mode 100644 index 000000000000..f9fd82a61c46 --- /dev/null +++ b/specification/kubernetesconfiguration/resource-manager/readme.typescript.md @@ -0,0 +1,14 @@ +## 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: "@azure/arm-kubernetesconfiguration" + output-folder: "$(typescript-sdks-folder)/sdk/kubernetesconfiguration/arm-kubernetesconfiguration" + clear-output-folder: true + override-client-name: SourceControlConfigurationClient + generate-metadata: true +``` diff --git a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/IntegrationAccountAgreements_CreateOrUpdate.json b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/IntegrationAccountAgreements_CreateOrUpdate.json index 590e83a54302..7e1f29c9c31a 100644 --- a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/IntegrationAccountAgreements_CreateOrUpdate.json +++ b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/IntegrationAccountAgreements_CreateOrUpdate.json @@ -41,9 +41,9 @@ "sendMDNAsynchronously": true, "receiptDeliveryUrl": "http://tempuri.org", "dispositionNotificationTo": "http://tempuri.org", - "signOutboundMdnIfOptional": true, + "signOutboundMDNIfOptional": true, "mdnText": "Sample", - "sendInboundMdnToMessageBox": true, + "sendInboundMDNToMessageBox": true, "micHashingAlgorithm": "SHA1" }, "securitySettings": { @@ -107,9 +107,9 @@ "sendMDNAsynchronously": true, "receiptDeliveryUrl": "http://tempuri.org", "dispositionNotificationTo": "http://tempuri.org", - "signOutboundMdnIfOptional": true, + "signOutboundMDNIfOptional": true, "mdnText": "Sample", - "sendInboundMdnToMessageBox": true, + "sendInboundMDNToMessageBox": true, "micHashingAlgorithm": "SHA1" }, "securitySettings": { @@ -199,9 +199,9 @@ "sendMDNAsynchronously": true, "receiptDeliveryUrl": "http://tempuri.org", "dispositionNotificationTo": "http://tempuri.org", - "signOutboundMdnIfOptional": true, + "signOutboundMDNIfOptional": true, "mdnText": "Sample", - "sendInboundMdnToMessageBox": true, + "sendInboundMDNToMessageBox": true, "micHashingAlgorithm": "SHA1" }, "securitySettings": { @@ -265,9 +265,9 @@ "sendMDNAsynchronously": true, "receiptDeliveryUrl": "http://tempuri.org", "dispositionNotificationTo": "http://tempuri.org", - "signOutboundMdnIfOptional": true, + "signOutboundMDNIfOptional": true, "mdnText": "Sample", - "sendInboundMdnToMessageBox": true, + "sendInboundMDNToMessageBox": true, "micHashingAlgorithm": "SHA1" }, "securitySettings": { @@ -358,9 +358,9 @@ "sendMDNAsynchronously": true, "receiptDeliveryUrl": "http://tempuri.org", "dispositionNotificationTo": "http://tempuri.org", - "signOutboundMdnIfOptional": true, + "signOutboundMDNIfOptional": true, "mdnText": "Sample", - "sendInboundMdnToMessageBox": true, + "sendInboundMDNToMessageBox": true, "micHashingAlgorithm": "SHA1" }, "securitySettings": { @@ -424,9 +424,9 @@ "sendMDNAsynchronously": true, "receiptDeliveryUrl": "http://tempuri.org", "dispositionNotificationTo": "http://tempuri.org", - "signOutboundMdnIfOptional": true, + "signOutboundMDNIfOptional": true, "mdnText": "Sample", - "sendInboundMdnToMessageBox": true, + "sendInboundMDNToMessageBox": true, "micHashingAlgorithm": "SHA1" }, "securitySettings": { diff --git a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/IntegrationAccountAgreements_Get.json b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/IntegrationAccountAgreements_Get.json index 2c06d0e708ba..6e36a3f0cb3b 100644 --- a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/IntegrationAccountAgreements_Get.json +++ b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/IntegrationAccountAgreements_Get.json @@ -43,9 +43,9 @@ "sendMDNAsynchronously": true, "receiptDeliveryUrl": "http://tempuri.org", "dispositionNotificationTo": "http://tempuri.org", - "signOutboundMdnIfOptional": true, + "signOutboundMDNIfOptional": true, "mdnText": "Sample", - "sendInboundMdnToMessageBox": true, + "sendInboundMDNToMessageBox": true, "micHashingAlgorithm": "SHA1" }, "securitySettings": { @@ -109,9 +109,9 @@ "sendMDNAsynchronously": true, "receiptDeliveryUrl": "http://tempuri.org", "dispositionNotificationTo": "http://tempuri.org", - "signOutboundMdnIfOptional": true, + "signOutboundMDNIfOptional": true, "mdnText": "Sample", - "sendInboundMdnToMessageBox": true, + "sendInboundMDNToMessageBox": true, "micHashingAlgorithm": "SHA1" }, "securitySettings": { diff --git a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/IntegrationAccountAgreements_List.json b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/IntegrationAccountAgreements_List.json index c83a4c973eac..df12244a1c89 100644 --- a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/IntegrationAccountAgreements_List.json +++ b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/IntegrationAccountAgreements_List.json @@ -242,9 +242,9 @@ "sendMDNAsynchronously": true, "receiptDeliveryUrl": "http://tempuri.org", "dispositionNotificationTo": "http://tempuri.org", - "signOutboundMdnIfOptional": true, + "signOutboundMDNIfOptional": true, "mdnText": "Sample", - "sendInboundMdnToMessageBox": true, + "sendInboundMDNToMessageBox": true, "micHashingAlgorithm": "None" }, "securitySettings": { @@ -308,9 +308,9 @@ "sendMDNAsynchronously": true, "receiptDeliveryUrl": "http://tempuri.org", "dispositionNotificationTo": "http://tempuri.org", - "signOutboundMdnIfOptional": true, + "signOutboundMDNIfOptional": true, "mdnText": "Sample", - "sendInboundMdnToMessageBox": true, + "sendInboundMDNToMessageBox": true, "micHashingAlgorithm": "None" }, "securitySettings": { diff --git a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/WorkflowTriggerHistories_Get.json b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/WorkflowTriggerHistories_Get.json index 04f7c341dd01..fcf847c5db95 100644 --- a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/WorkflowTriggerHistories_Get.json +++ b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/WorkflowTriggerHistories_Get.json @@ -10,27 +10,25 @@ "responses": { "200": { "body": { - "value": { - "properties": { - "startTime": "2018-08-10T20:16:32.0387927Z", - "endTime": "2018-08-10T20:16:32.2987996Z", - "scheduledTime": "2018-08-10T20:16:31.6344174Z", - "status": "Succeeded", - "code": "OK", - "correlation": { - "clientTrackingId": "08586676746934337772206998657CU22" - }, - "fired": true, - "run": { - "name": "08586676746934337772206998657CU22", - "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testResourceGroup/providers/Microsoft.Logic/workflows/testWorkflowName/runs/08586676746934337772206998657CU22", - "type": "Microsoft.Logic/workflows/runs" - } + "properties": { + "startTime": "2018-08-10T20:16:32.0387927Z", + "endTime": "2018-08-10T20:16:32.2987996Z", + "scheduledTime": "2018-08-10T20:16:31.6344174Z", + "status": "Succeeded", + "code": "OK", + "correlation": { + "clientTrackingId": "08586676746934337772206998657CU22" }, - "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testResourceGroup/providers/Microsoft.Logic/workflows/testWorkflowName/triggers/testTriggerName/histories/08586676746934337772206998657CU22", - "name": "08586676746934337772206998657CU22", - "type": "Microsoft.Logic/workflows/triggers/histories" - } + "fired": true, + "run": { + "name": "08586676746934337772206998657CU22", + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testResourceGroup/providers/Microsoft.Logic/workflows/testWorkflowName/runs/08586676746934337772206998657CU22", + "type": "Microsoft.Logic/workflows/runs" + } + }, + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testResourceGroup/providers/Microsoft.Logic/workflows/testWorkflowName/triggers/testTriggerName/histories/08586676746934337772206998657CU22", + "name": "08586676746934337772206998657CU22", + "type": "Microsoft.Logic/workflows/triggers/histories" } } } diff --git a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/WorkflowTriggers_Run.json b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/WorkflowTriggers_Run.json index beaf47699d0a..43b3583040e2 100644 --- a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/WorkflowTriggers_Run.json +++ b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/WorkflowTriggers_Run.json @@ -7,6 +7,7 @@ "triggerName": "manual" }, "responses": { - "default": {} + "200": {}, + "202": {} } } diff --git a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/Workflows_Update.json b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/Workflows_Update.json index ae2ca279220f..8f8681c1026c 100644 --- a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/Workflows_Update.json +++ b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/Workflows_Update.json @@ -3,62 +3,7 @@ "api-version": "2019-05-01", "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", "resourceGroupName": "test-resource-group", - "workflowName": "test-workflow", - "workflow": { - "properties": { - "integrationAccount": { - "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/test-resource-group/providers/Microsoft.Logic/integrationAccounts/test-integration-account" - }, - "definition": { - "$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#", - "contentVersion": "1.0.0.0", - "parameters": { - "$connections": { - "defaultValue": {}, - "type": "Object" - } - }, - "triggers": { - "manual": { - "type": "Request", - "kind": "Http", - "inputs": { - "schema": {} - } - } - }, - "actions": { - "Find_pet_by_ID": { - "runAfter": {}, - "type": "ApiConnection", - "inputs": { - "host": { - "connection": { - "name": "@parameters('$connections')['test-custom-connector']['connectionId']" - } - }, - "method": "get", - "path": "/pet/@{encodeURIComponent('1')}" - } - } - }, - "outputs": {} - }, - "parameters": { - "$connections": { - "value": { - "test-custom-connector": { - "connectionId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/test-resource-group/providers/Microsoft.Web/connections/test-custom-connector", - "connectionName": "test-custom-connector", - "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/brazilsouth/managedApis/test-custom-connector" - } - } - } - } - }, - "location": "brazilsouth", - "tags": {} - } + "workflowName": "test-workflow" }, "responses": { "200": { diff --git a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/Workflows_ValidateByLocation.json b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/Workflows_ValidateByLocation.json index ba6aa2f78c69..91dc9bc4a5ad 100644 --- a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/Workflows_ValidateByLocation.json +++ b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/Workflows_ValidateByLocation.json @@ -8,9 +8,7 @@ "validate": { "properties": { "integrationAccount": { - "name": "test-integration-account", - "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/test-resource-group/providers/Microsoft.Logic/integrationAccounts/test-integration-account", - "type": "Microsoft.Logic/integrationAccounts" + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/test-resource-group/providers/Microsoft.Logic/integrationAccounts/test-integration-account" }, "definition": { "$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#", @@ -21,9 +19,6 @@ "outputs": {} } }, - "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/test-resource-group/providers/Microsoft.Logic/workflows/test-workflow", - "name": "test-workflow", - "type": "Microsoft.Logic/workflows", "location": "brazilsouth", "tags": {} } diff --git a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/Workflows_ValidateByResourceGroup.json b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/Workflows_ValidateByResourceGroup.json index 5cc3c89d8da1..fc050556f257 100644 --- a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/Workflows_ValidateByResourceGroup.json +++ b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/examples/Workflows_ValidateByResourceGroup.json @@ -18,8 +18,6 @@ "outputs": {} } }, - "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/test-resource-group/providers/Microsoft.Logic/workflows/test-workflow", - "name": "test-workflow", "location": "brazilsouth", "tags": {} } diff --git a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/logic.json b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/logic.json index c5cf4d81a7f2..d510adca0531 100644 --- a/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/logic.json +++ b/specification/logic/resource-manager/Microsoft.Logic/stable/2019-05-01/logic.json @@ -294,15 +294,6 @@ }, { "$ref": "#/parameters/api-version" - }, - { - "name": "workflow", - "description": "The workflow.", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Workflow" - } } ], "responses": { @@ -668,7 +659,7 @@ "in": "body", "required": true, "schema": { - "$ref": "#/definitions/Workflow" + "$ref": "#/definitions/WorkflowReference" } }, { @@ -1143,10 +1134,16 @@ } ], "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, "default": { - "description": "All status codes are acceptable.", + "description": "Error response describing why the trigger run failed.", "schema": { - "$ref": "#/definitions/Object" + "$ref": "#/definitions/ErrorResponse" } } } @@ -2733,6 +2730,15 @@ "required": true, "type": "string" }, + { + "name": "validate", + "description": "The workflow.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Workflow" + } + }, { "$ref": "#/parameters/api-version" } @@ -6508,8 +6514,13 @@ "$ref": "#/definitions/FlowEndpointsConfiguration", "description": "The endpoints configuration." }, + "accessControl": { + "$ref": "#/definitions/FlowAccessControlConfiguration", + "description": "The access control configuration." + }, "sku": { "$ref": "#/definitions/Sku", + "readOnly": true, "description": "The sku." }, "integrationAccount": { @@ -6580,6 +6591,11 @@ "WorkflowVersionProperties": { "type": "object", "properties": { + "provisioningState": { + "$ref": "#/definitions/WorkflowProvisioningState", + "readOnly": true, + "description": "The provisioning state." + }, "createdTime": { "type": "string", "format": "date-time", @@ -6606,8 +6622,17 @@ "readOnly": true, "description": "Gets the access endpoint." }, + "endpointsConfiguration": { + "$ref": "#/definitions/FlowEndpointsConfiguration", + "description": "The endpoints configuration." + }, + "accessControl": { + "$ref": "#/definitions/FlowAccessControlConfiguration", + "description": "The access control configuration." + }, "sku": { "$ref": "#/definitions/Sku", + "readOnly": true, "description": "The sku." }, "integrationAccount": { @@ -6858,6 +6883,12 @@ "readOnly": true, "description": "Gets the end time." }, + "scheduledTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The scheduled time." + }, "status": { "$ref": "#/definitions/WorkflowStatus", "readOnly": true, @@ -7119,7 +7150,7 @@ "description": "Gets the tracking id." }, "correlation": { - "$ref": "#/definitions/Correlation", + "$ref": "#/definitions/RunActionCorrelation", "description": "The correlation properties." }, "inputsLink": { @@ -7657,7 +7688,11 @@ "Registered", "Unregistering", "Unregistered", - "Completed" + "Completed", + "Renewing", + "Pending", + "Waiting", + "InProgress" ], "x-ms-enum": { "name": "WorkflowProvisioningState", @@ -8160,6 +8195,46 @@ "modelAsString": true } }, + "WorkflowTriggerReference": { + "type": "object", + "description": "The workflow trigger reference.", + "additionalProperties": false, + "properties": { + "name": { + "type": "string", + "description": "The workflow trigger resource reference name." + }, + "flowName": { + "type": "string", + "description": "The workflow name." + }, + "triggerName": { + "type": "string", + "description": "The workflow trigger name." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ResourceReference" + } + ] + }, + "WorkflowReference": { + "type": "object", + "description": "The workflow reference.", + "additionalProperties": false, + "properties": { + "name": { + "type": "string", + "description": "The workflow name." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ResourceReference" + } + ] + }, "ApiReference": { "type": "object", "description": "The Api reference.", @@ -8842,6 +8917,113 @@ "modelAsString": true } }, + "FlowAccessControlConfiguration": { + "type": "object", + "description": "The access control configuration.", + "properties": { + "triggers": { + "$ref": "#/definitions/FlowAccessControlConfigurationPolicy", + "description": "The access control configuration for invoking workflow triggers." + }, + "contents": { + "$ref": "#/definitions/FlowAccessControlConfigurationPolicy", + "description": "The access control configuration for accessing workflow run contents." + }, + "actions": { + "$ref": "#/definitions/FlowAccessControlConfigurationPolicy", + "description": "The access control configuration for workflow actions." + }, + "workflowManagement": { + "$ref": "#/definitions/FlowAccessControlConfigurationPolicy", + "description": "The access control configuration for workflow management." + } + } + }, + "FlowAccessControlConfigurationPolicy": { + "type": "object", + "description": "The access control configuration policy.", + "properties": { + "allowedCallerIpAddresses": { + "type": "array", + "description": "The allowed caller IP address ranges.", + "items": { + "$ref": "#/definitions/IpAddressRange", + "description": "The ip address range." + } + }, + "openAuthenticationPolicies": { + "$ref": "#/definitions/OpenAuthenticationAccessPolicies", + "description": "The authentication policies for workflow." + } + } + }, + "IpAddressRange": { + "type": "object", + "description": "The ip address range.", + "properties": { + "addressRange": { + "type": "string", + "description": "The IP address range." + } + } + }, + "OpenAuthenticationAccessPolicies": { + "type": "object", + "description": "AuthenticationPolicy of type Open.", + "properties": { + "policies": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/OpenAuthenticationAccessPolicy" + }, + "description": "Open authentication policies." + } + } + }, + "OpenAuthenticationAccessPolicy": { + "type": "object", + "description": "Open authentication access policy defined by user.", + "properties": { + "type": { + "$ref": "#/definitions/OpenAuthenticationProviderType", + "readOnly": true, + "description": "Type of provider for OAuth." + }, + "claims": { + "type": "array", + "description": "The access policy claims.", + "items": { + "$ref": "#/definitions/OpenAuthenticationPolicyClaim", + "description": "The access policy claim." + } + } + } + }, + "OpenAuthenticationProviderType": { + "type": "string", + "description": "Open authentication policy provider type.", + "enum": [ + "AAD" + ], + "x-ms-enum": { + "name": "OpenAuthenticationProviderType", + "modelAsString": true + } + }, + "OpenAuthenticationPolicyClaim": { + "type": "object", + "description": "Open authentication policy claim.", + "properties": { + "name": { + "type": "string", + "description": "The name of the claim." + }, + "value": { + "type": "string", + "description": "The value of the claim." + } + } + }, "FlowEndpointsConfiguration": { "type": "object", "description": "The endpoints configuration.", @@ -11785,6 +11967,10 @@ "description": "Logic REST API operation", "type": "object", "properties": { + "origin": { + "description": "Operation: origin", + "type": "string" + }, "name": { "description": "Operation name: {provider}/{resource}/{operation}", "type": "string" @@ -11804,8 +11990,17 @@ "operation": { "description": "Operation type: Read, write, delete, etc.", "type": "string" + }, + "description": { + "description": "Operation: description.", + "type": "string" } } + }, + "properties": { + "x-ms-client-flatten": true, + "description": "The properties.", + "$ref": "#/definitions/Object" } } }, @@ -11991,6 +12186,10 @@ "description": "The record type.", "$ref": "#/definitions/TrackingRecordType" }, + "record": { + "description": "The record.", + "$ref": "#/definitions/Object" + }, "error": { "description": "The error.", "$ref": "#/definitions/TrackingEventErrorInfo" @@ -12064,7 +12263,7 @@ "properties": { "source": { "description": "The source.", - "$ref": "#/definitions/WorkflowTrigger" + "$ref": "#/definitions/WorkflowTriggerReference" } } }, diff --git a/specification/logic/resource-manager/readme.az.md b/specification/logic/resource-manager/readme.az.md new file mode 100644 index 000000000000..0ebc4fc8a32b --- /dev/null +++ b/specification/logic/resource-manager/readme.az.md @@ -0,0 +1,26 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +``` yaml $(az) +az: + extensions: logic + namespace: azure.mgmt.logic + package-name: azure-mgmt-logic +az-output-folder: $(azure-cli-extension-folder)/src/logic +python-sdk-output-folder: "$(az-output-folder)/azext_logic/vendored_sdks/logic" + +# uncomment following to use json instead of flatten +#cli: +# cli-directive: +# - where: +# group: 'Workflows' +# op: 'CreateOrUpdate' +# param: 'workflow' +# json: true +# - where: +# type: 'workflow' +# prop: 'properties' +# flatten: false + +``` diff --git a/specification/logic/resource-manager/readme.cli.md b/specification/logic/resource-manager/readme.cli.md new file mode 100644 index 000000000000..a9e918eefe21 --- /dev/null +++ b/specification/logic/resource-manager/readme.cli.md @@ -0,0 +1,9 @@ + CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +#cli: +# test-scenario: +# - name: Factories_CreateOrUpdate +``` diff --git a/specification/logic/resource-manager/readme.go.md b/specification/logic/resource-manager/readme.go.md index 76c155f71d2f..443c49c31735 100644 --- a/specification/logic/resource-manager/readme.go.md +++ b/specification/logic/resource-manager/readme.go.md @@ -26,7 +26,7 @@ These settings apply only when `--tag=package-2019-05 --go` is specified on the Please also specify `--go-sdk-folder=`. ``` yaml $(tag) == 'package-2019-05' && $(go) -output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2019-05-01/$(namespace) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2019-05-01/$(namespace) ``` ### Tag: package-2018-07-preview and go diff --git a/specification/logic/resource-manager/readme.md b/specification/logic/resource-manager/readme.md index aa2e33ffeb33..995fb1b4b1bc 100644 --- a/specification/logic/resource-manager/readme.md +++ b/specification/logic/resource-manager/readme.md @@ -134,6 +134,7 @@ swagger-to-sdk: - repo: azure-sdk-for-ruby after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_logic'] + - repo: azure-cli-extensions ``` ## C# diff --git a/specification/logic/resource-manager/readme.python.md b/specification/logic/resource-manager/readme.python.md new file mode 100644 index 000000000000..211909639ce5 --- /dev/null +++ b/specification/logic/resource-manager/readme.python.md @@ -0,0 +1,25 @@ +## 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 + namespace: azure.mgmt.logic + package-name: azure-mgmt-logic + package-version: 2019-05-01 + clear-output-folder: true +``` + +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/logic/azure-mgmt-logic/azure/mgmt/logic +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/logic/azure-mgmt-logic +``` \ No newline at end of file diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2018-03-01-preview/examples/createWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2018-03-01-preview/examples/createWorkspace.json index cedbdb567567..4d43d29dd628 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2018-03-01-preview/examples/createWorkspace.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2018-03-01-preview/examples/createWorkspace.json @@ -6,6 +6,9 @@ "api-version": "2018-03-01-preview", "parameters": { "location": "eastus2euap", + "identity": { + "type": "SystemAssigned" + }, "properties": { "friendlyName": "HelloName", "description": "test description", @@ -24,6 +27,11 @@ "name": "testworkspace", "type": "Microsoft.MachineLearningServices/workspaces", "location": "eastus2euap", + "identity": { + "principalId": "00000000-1111-2222-3333-444444444444", + "tenantId": "00000000-1111-2222-3333-444444444444", + "type": "SystemAssigned" + }, "properties": { "batchaiWorkspace": "/subscriptions/00000000-1111-2222-3333-444444444444/resourcegroups/workspace-1234/providers/Microsoft.BatchAI/workspaces/testBatchAIWorkspace", "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2018-03-01-preview/machineLearningServices.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2018-03-01-preview/machineLearningServices.json index 782995dfe9c5..8868b1aa282e 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2018-03-01-preview/machineLearningServices.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2018-03-01-preview/machineLearningServices.json @@ -1046,7 +1046,6 @@ }, "identity": { "$ref": "#/definitions/Identity", - "readOnly": true, "description": "The identity of the resource." }, "location": { diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListSkus.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListSkus.json new file mode 100644 index 000000000000..d2762d31a31b --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListSkus.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "api-version": "2020-02-18-preview", + "subscriptionId": "{subscription-id}" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "workspaces", + "name": "Basic", + "tier": "Basic", + "locations": [ + "westus" + ], + "locationInfo": [ + { + "location": "westus", + "zones": [ + "westus-AZ02", + "westus-AZ01" + ] + } + ], + "capabilities": [ + { + "name": "automatedml_readhyperdrivesdk", + "value": "{\n \"id\": \"automatedml_ readhyperdrivesdk\",\n \"name\": \"Read hyperdrive SDK\",\n \"description\": \"Read only access to Hyperdrive in the SDK\"\n}" + }, + { + "name": "workspace_upgradeworkspacesdk", + "value": "{\n \"id\": \"workspace_upgradeworkspacesdk\",\n \"name\": \"Upgrade workspace SDK\",\n \"description\": \"Upgrade workspace from Basic to enterprise from the SDK\"\n}" + } + ], + "restrictions": [] + }, + { + "resourceType": "workspaces", + "name": "Enterprise", + "tier": "Enterprise", + "locations": [ + "westus" + ], + "locationInfo": [ + { + "location": "westus", + "zones": [ + "westus-AZ01" + ], + "zoneDetails": [ + { + "name": [ + "westus-AZ01" + ], + "capabilities": [ + { + "name": "automatedml_createeditexperimentssdk", + "value": "{\n \"id\": \"automatedml_createeditexperimentssdk\",\n \"name\": \"Create edit experiments SDK\",\n \"description\": \"Create, edit or delete AutoML experiments in the SDK\"\n}" + } + ] + } + ] + } + ], + "capabilities": [ + { + "name": "automatedml_createeditexperimentssdk", + "value": "{\n \"id\": \"automatedml_createeditexperimentssdk\",\n \"name\": \"Create edit experiments SDK\",\n \"description\": \"Create, edit or delete AutoML experiments in the SDK\"\n}" + } + ], + "restrictions": [] + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListUsages.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListUsages.json new file mode 100644 index 000000000000..b9026c10fc40 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListUsages.json @@ -0,0 +1,400 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages", + "type": "Microsoft.MachineLearningServices/totalCores/usages", + "currentValue": 7, + "limit": 100, + "name": { + "localizedValue": "Clusters", + "value": "Clusters" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages", + "type": "Microsoft.MachineLearningServices/dedicatedCores/usages", + "currentValue": 14, + "limit": 24, + "name": { + "localizedValue": "Total Cluster Dedicated Regional vCPUs", + "value": "Total Cluster Dedicated Regional vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 48, + "name": { + "localizedValue": "Standard D Family Cluster Dedicated vCPUs", + "value": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 2, + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/usages/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/usages", + "currentValue": 2, + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/computes/demo_cluster1_dsv2/usages/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/computes/usages", + "currentValue": 2, + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/computes/demo_cluster2_dsv2/usages/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/computes/usages", + "currentValue": 0, + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 24, + "name": { + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs", + "value": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 24, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 12, + "limit": 24, + "name": { + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs", + "value": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/usages", + "currentValue": 6, + "limit": 24, + "name": { + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs", + "value": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/computes/demo_cluster1_nc/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/computes/usages", + "currentValue": 6, + "limit": 24, + "name": { + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs", + "value": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/usages", + "currentValue": 6, + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/computes/demo_cluser1_nc/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/computes/usages", + "currentValue": 6, + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 0, + "name": { + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs", + "value": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 0, + "name": { + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs", + "value": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 0, + "name": { + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs", + "value": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 24, + "name": { + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs", + "value": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages", + "type": "Microsoft.MachineLearningServices/lowPriorityCores/usages", + "currentValue": 18, + "limit": 50, + "name": { + "localizedValue": "Total Cluster LowPriority Regional vCPUs", + "value": "Total Cluster LowPriority Regional vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_D_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "value": "Standard D Family Cluster LowPriority vCPUs", + "localizedValue": "Standard D Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_DSv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard DSv2 Family Cluster LowPriority vCPUs", + "value": "Standard DSv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_Dv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard Dv2 Family Cluster LowPriority vCPUs", + "value": "Standard Dv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_FSv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard FSv2 Family Cluster LowPriority vCPUs", + "value": "Standard FSv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 18, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/usages", + "currentValue": 6, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/computes/demo_cluster1_lowPriority_nc/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/computes/usages", + "currentValue": 6, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/usages", + "currentValue": 12, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/computes/demo_cluster2_lowPriority_nc/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/computes/usages", + "currentValue": 6, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/computes/demo_cluster3_lowPriority_nc/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/computes/usages", + "currentValue": 6, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NCv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard NCv2 Family Cluster LowPriority vCPUs", + "value": "Standard NCv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NCv3_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard NCv3 Family Cluster LowPriority vCPUs", + "value": "Standard NCv3 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_ND_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard ND Family Cluster LowPriority vCPUs", + "value": "Standard ND Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NDv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard NDv2 Family Cluster LowPriority vCPUs", + "value": "Standard NDv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NV_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard NV Family Cluster LowPriority vCPUs", + "value": "Standard NV Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListVMSizesResult.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListVMSizesResult.json new file mode 100644 index 000000000000..f6c8ebb8deb5 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListVMSizesResult.json @@ -0,0 +1,455 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "api-version": "2020-02-18-preview", + "location": "eastus" + }, + "responses": { + "200": { + "body": { + "amlCompute": [ + { + "name": "Standard_F2s_v2", + "family": "standardFSv2Family", + "vCPUs": 2, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 16384, + "memoryGB": 4.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F4s_v2", + "family": "standardFSv2Family", + "vCPUs": 4, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 32768, + "memoryGB": 8.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F8s_v2", + "family": "standardFSv2Family", + "vCPUs": 8, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 65536, + "memoryGB": 16.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F16s_v2", + "family": "standardFSv2Family", + "vCPUs": 16, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 131072, + "memoryGB": 32.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F32s_v2", + "family": "standardFSv2Family", + "vCPUs": 32, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 262144, + "memoryGB": 64.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F64s_v2", + "family": "standardFSv2Family", + "vCPUs": 64, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 524288, + "memoryGB": 128.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F72s_v2", + "family": "standardFSv2Family", + "vCPUs": 72, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 589824, + "memoryGB": 144.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_D1_v2", + "family": "standardDv2Family", + "vCPUs": 1, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 51200, + "memoryGB": 3.5, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D2_v2", + "family": "standardDv2Family", + "vCPUs": 2, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 102400, + "memoryGB": 7.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D3_v2", + "family": "standardDv2Family", + "vCPUs": 4, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 204800, + "memoryGB": 14.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D4_v2", + "family": "standardDv2Family", + "vCPUs": 8, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 409600, + "memoryGB": 28.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D11_v2", + "family": "standardDv2Family", + "vCPUs": 2, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 102400, + "memoryGB": 14.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D12_v2", + "family": "standardDv2Family", + "vCPUs": 4, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 204800, + "memoryGB": 28.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D13_v2", + "family": "standardDv2Family", + "vCPUs": 8, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 409600, + "memoryGB": 56.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D14_v2", + "family": "standardDv2Family", + "vCPUs": 16, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 819200, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_DS1_v2", + "family": "standardDSv2Family", + "vCPUs": 1, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 7168, + "memoryGB": 3.5, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS2_v2", + "family": "standardDSv2Family", + "vCPUs": 2, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 14336, + "memoryGB": 7.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS3_v2", + "family": "standardDSv2Family", + "vCPUs": 4, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 28672, + "memoryGB": 14.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS4_v2", + "family": "standardDSv2Family", + "vCPUs": 8, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 57344, + "memoryGB": 28.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS5_v2", + "family": "standardDSv2Family", + "vCPUs": 16, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 114688, + "memoryGB": 56.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS11_v2", + "family": "standardDSv2Family", + "vCPUs": 2, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 28672, + "memoryGB": 14.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS12_v2", + "family": "standardDSv2Family", + "vCPUs": 4, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 57344, + "memoryGB": 28.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS13_v2", + "family": "standardDSv2Family", + "vCPUs": 8, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 114688, + "memoryGB": 56.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS14_v2", + "family": "standardDSv2Family", + "vCPUs": 16, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 229376, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS15_v2", + "family": "standardDSv2Family", + "vCPUs": 20, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 286720, + "memoryGB": 140.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC6s_v2", + "family": "standardNCSv2Family", + "vCPUs": 6, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 344064, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC12s_v2", + "family": "standardNCSv2Family", + "vCPUs": 12, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 688128, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC24rs_v2", + "family": "standardNCSv2Family", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC24s_v2", + "family": "standardNCSv2Family", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC6s_v3", + "family": "standardNCSv3Family", + "vCPUs": 6, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 344064, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC12s_v3", + "family": "standardNCSv3Family", + "vCPUs": 12, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 688128, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC24rs_v3", + "family": "standardNCSv3Family", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC24s_v3", + "family": "standardNCSv3Family", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC6", + "family": "standardNCFamily", + "vCPUs": 6, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 389120, + "memoryGB": 56.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NC12", + "family": "standardNCFamily", + "vCPUs": 12, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 696320, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NC24", + "family": "standardNCFamily", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1474560, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NC24r", + "family": "standardNCFamily", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1474560, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NV6", + "family": "standardNVFamily", + "vCPUs": 6, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 389120, + "memoryGB": 56.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NV12", + "family": "standardNVFamily", + "vCPUs": 12, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 696320, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NV24", + "family": "standardNVFamily", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1474560, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_ND6s", + "family": "standardNDSFamily", + "vCPUs": 6, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 344064, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_ND12s", + "family": "standardNDSFamily", + "vCPUs": 12, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 688128, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_ND24rs", + "family": "standardNDSFamily", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_ND24s", + "family": "standardNDSFamily", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListWorkspaceFeatures.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListWorkspaceFeatures.json new file mode 100644 index 000000000000..6d6f05afcb3b --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListWorkspaceFeatures.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-02-18-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "workspaceName": "testworkspace" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "automatedml_createeditexperimentsui", + "displayName": "Create edit experiments UI", + "description": "Create, edit or delete AutoML experiments in the SDK" + }, + { + "id": "workspace_upgradeworkspaceui", + "displayName": "Upgrade workspace UI", + "description": "Upgrade workspace from Basic to enterprise from the UI" + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListWorkspaceQuotasByVMFamily.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListWorkspaceQuotasByVMFamily.json new file mode 100644 index 000000000000..e401271fe5bc --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/ListWorkspaceQuotasByVMFamily.json @@ -0,0 +1,415 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 48, + "name": { + "localizedValue": "Standard D Family Cluster Dedicated vCPUs", + "value": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard D Family Cluster Dedicated vCPUs", + "localizedValue": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard D Family Cluster Dedicated vCPUs", + "localizedValue": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard D Family Cluster Dedicated vCPUs", + "localizedValue": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quota", + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 24, + "name": { + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs", + "value": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard Dv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard Dv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard Dv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 24, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 24, + "name": { + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs", + "value": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 0, + "name": { + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs", + "value": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 0, + "name": { + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs", + "value": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv3 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv3 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv3 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 0, + "name": { + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs", + "value": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard ND Family Cluster Dedicated vCPUs", + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard ND Family Cluster Dedicated vCPUs", + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard ND Family Cluster Dedicated vCPUs", + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 24, + "name": { + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs", + "value": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NV Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NV Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NV Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/amlComputeListNodes.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/amlComputeListNodes.json new file mode 100644 index 000000000000..80a80592ec11 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/amlComputeListNodes.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": { + "body": { + "computeType": "AmlCompute", + "nodes": [ + { + "nodeId": "tvm-3601533753_1-20170719t162906z", + "privateIpAddress": "13.84.190.124", + "publicIpAddress": "13.84.190.134", + "port": 50000, + "nodeState": "running", + "runId": "2f378a44-38f2-443a-9f0d-9909d0b47890" + }, + { + "nodeId": "tvm-3601533753_2-20170719t162906z", + "privateIpAddress": "13.84.190.124", + "publicIpAddress": "13.84.190.134", + "port": 50001, + "nodeState": "idle" + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createBasicAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createBasicAKSCompute.json new file mode 100644 index 000000000000..f491e3784a91 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createBasicAKSCompute.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "AKS" + } + } + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AKS", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AKS", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createBasicAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createBasicAmlCompute.json new file mode 100644 index 000000000000..df6e59c449e1 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createBasicAmlCompute.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "properties": { + "vmSize": "STANDARD_NC6", + "vmPriority": "Dedicated", + "scaleSettings": { + "maxNodeCount": 1, + "minNodeCount": 0, + "nodeIdleTimeBeforeScaleDown": "PT5M" + }, + "remoteLoginPortPublicAccess": "NotSpecified" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createBasicDataFactoryCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createBasicDataFactoryCompute.json new file mode 100644 index 000000000000..cbac0e3b16ff --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createBasicDataFactoryCompute.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "DataFactory" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "DataFactory", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "DataFactory", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createComputeInstance.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createComputeInstance.json new file mode 100644 index 000000000000..ff84d4308695 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createComputeInstance.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "ComputeInstance", + "properties": { + "vmSize": "STANDARD_NC6", + "subnet": "test-subnet-resource-id", + "applicationSharingPolicy": "Personal", + "sshSettings": { + "sshPublicAccess": "Disabled" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "ComputeInstance", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "ComputeInstance", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createComputeInstanceMinimal.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createComputeInstanceMinimal.json new file mode 100644 index 000000000000..3aa86d408d76 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createComputeInstanceMinimal.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "ComputeInstance", + "properties": { + "vmSize": "STANDARD_NC6" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "ComputeInstance", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "ComputeInstance", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createWorkspace.json new file mode 100644 index 000000000000..5b35c4cde09a --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/createWorkspace.json @@ -0,0 +1,135 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2020-02-18-preview", + "parameters": { + "location": "eastus2euap", + "sku": { + "name": "Basic", + "tier": "Basic" + }, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "friendlyName": "HelloName", + "description": "test description", + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "encryption": { + "status": "Enabled", + "keyVaultProperties": { + "keyVaultArmId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "keyIdentifier": "https://testkv.vault.azure.net/keys/testkey/aabbccddee112233445566778899aabb", + "identityClientId": "" + } + }, + "hbiWorkspace": false + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Basic", + "tier": "Basic" + }, + "identity": { + "principalId": "00000000-1111-2222-3333-444444444444", + "tenantId": "00000000-1111-2222-3333-444444444444", + "type": "SystemAssigned" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description", + "encryption": { + "status": "Enabled", + "keyVaultProperties": { + "keyVaultArmId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "keyIdentifier": "https://testkv.vault.azure.net/keys/testkey/aabbccddee112233445566778899aabb", + "identityClientId": "" + } + }, + "hbiWorkspace": false + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Basic", + "tier": "Basic" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description", + "encryption": { + "status": "Enabled", + "keyVaultProperties": { + "keyVaultArmId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "keyIdentifier": "https://testkv.vault.azure.net/keys/testkey/aabbccddee112233445566778899aabb", + "identityClientId": "" + } + }, + "hbiWorkspace": false + } + } + }, + "202": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Basic", + "tier": "Basic" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description", + "encryption": { + "status": "Enabled", + "keyVaultProperties": { + "keyVaultArmId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "keyIdentifier": "https://testkv.vault.azure.net/keys/testkey/aabbccddee112233445566778899aabb", + "identityClientId": "" + } + }, + "hbiWorkspace": true + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/deleteCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/deleteCompute.json new file mode 100644 index 000000000000..42c0626dc9df --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/deleteCompute.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview", + "underlyingResourceAction": "Delete" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus...", + "Location": "https://management.azure.com/subscriptions/...pathToOperationResult..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/deleteWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/deleteWorkspace.json new file mode 100644 index 000000000000..a973a13a3e93 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/deleteWorkspace.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getAKSCompute.json new file mode 100644 index 000000000000..d42737e87c4b --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getAKSCompute.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getAmlCompute.json new file mode 100644 index 000000000000..6809f3c45a83 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getAmlCompute.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "createdOn": "2017-09-26T22:28:08.327Z", + "provisioningState": "Succeeded", + "properties": { + "vmSize": "STANDARD_NC6", + "vmPriority": "Dedicated", + "subnet": "test-subnet-resource-id", + "scaleSettings": { + "maxNodeCount": 1, + "minNodeCount": 0, + "nodeIdleTimeBeforeScaleDown": "PT5M" + }, + "remoteLoginPortPublicAccess": "Enabled", + "allocationState": "Resizing", + "allocationStateTransitionTime": "2017-09-27T22:28:08.998Z", + "errors": null, + "currentNodeCount": 0, + "targetNodeCount": 1, + "nodeStateCounts": { + "preparingNodeCount": 0, + "runningNodeCount": 0, + "idleNodeCount": 0, + "unusableNodeCount": 0, + "leavingNodeCount": 0, + "preemptedNodeCount": 0 + } + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getComputeInstance.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getComputeInstance.json new file mode 100644 index 000000000000..c368311a4b38 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getComputeInstance.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "ComputeInstance", + "createdOn": "2017-09-26T22:28:08.327Z", + "provisioningState": "Succeeded", + "properties": { + "vmSize": "STANDARD_NC6", + "subnet": "test-subnet-resource-id", + "applicationSharingPolicy": "Shared", + "sshSettings": { + "sshPublicAccess": "Enabled", + "adminUserName": "azureuser", + "sshPort": 22 + }, + "createdBy": { + "userName": "foobar@microsoft.com", + "userOrgId": "00000000-0000-0000-0000-000000000000", + "userId": "00000000-0000-0000-0000-000000000000" + }, + "connectivityEndpoints": { + "publicIpAddress": "10.0.0.1", + "privateIpAddress": "10.0.0.1" + }, + "applications": [ + { + "displayName": "Jupyter", + "endpointUri": "https://compute123.eastus2.azureml.net/jupyter" + } + ], + "errors": null, + "state": "Running" + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getComputes.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getComputes.json new file mode 100644 index 000000000000..fab1f721a9a8 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getComputes.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute1234", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute1234", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute1234-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Succeeded" + } + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getWorkspace.json new file mode 100644 index 000000000000..60c8f7e2353e --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getWorkspace.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Enterprise", + "tier": "Enterprise" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description", + "encryption": { + "status": "Enabled", + "keyVaultProperties": { + "keyVaultArmId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "keyIdentifier": "https://testkv.vault.azure.net/keys/testkey/aabbccddee112233445566778899aabb", + "identityClientId": "" + } + }, + "hbiWorkspace": false, + "serviceProvisionedResourceGroup": "testworkspace_0000111122223333" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getWorkspacesByResourceGroup.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getWorkspacesByResourceGroup.json new file mode 100644 index 000000000000..0c2c862eb8e7 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getWorkspacesByResourceGroup.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Basic", + "tier": "Basic" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace1", + "name": "testworkspace1", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Basic", + "tier": "Basic" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistryNew", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkvNew", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccountOld", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName 1", + "description": "test description" + } + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getWorkspacesBySubscription.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getWorkspacesBySubscription.json new file mode 100644 index 000000000000..17dac933ecc9 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/getWorkspacesBySubscription.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Enterprise", + "tier": "Enterprise" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-5678/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Enterprise", + "tier": "Enterprise" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistryNew", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkvNew", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccountOld", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description" + } + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/listKeysAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/listKeysAKSCompute.json new file mode 100644 index 000000000000..3d6c3a70801d --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/listKeysAKSCompute.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": { + "body": { + "computeType": "AKS", + "userKubeConfig": "user kube config...", + "adminKubeConfig": "admin kube config...", + "imagePullSecretName": "the image pull secret name" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/listWorkspaceKeys.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/listWorkspaceKeys.json new file mode 100644 index 000000000000..3fabc0a7bcc6 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/listWorkspaceKeys.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": { + "body": { + "userStorageKey": "r5rKCJ018TLk+bdAi/9YaVzgcQ0nkLsUqGyUN03KsdCFtqG0SjFGPV8+vT1frWqkvBL0bGoPpLc1BlZSSaZmOA==", + "userStorageResourceId": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/ragargeastus2euap/providers/Microsoft.Storage/storageAccounts/testdemoworkazashomr", + "appInsightsInstrumentationKey": null, + "containerRegistryCredentials": { + "location": null, + "username": "testdemoworkjmjmeykp", + "passwords": [ + { + "name": "password", + "value": "vBvVhYgAGtUSewVCUv3w95p4/q5Yrsnw" + }, + { + "name": "password2", + "value": "0KARRQoQHSUq1yViPWg7YFernOS=Ic/t" + } + ] + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/patchAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/patchAmlCompute.json new file mode 100644 index 000000000000..cc78aae3e43f --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/patchAmlCompute.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview", + "parameters": { + "properties": { + "scaleSettings": { + "maxNodeCount": 4, + "minNodeCount": 4, + "nodeIdleTimeBeforeScaleDown": "PT5M" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "provisioningState": "Updating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/restartComputeInstance.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/restartComputeInstance.json new file mode 100644 index 000000000000..04e8ec2789f3 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/restartComputeInstance.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/resyncWorkspaceKeys.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/resyncWorkspaceKeys.json new file mode 100644 index 000000000000..a93596d594d3 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/resyncWorkspaceKeys.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/startComputeInstance.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/startComputeInstance.json new file mode 100644 index 000000000000..04e8ec2789f3 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/startComputeInstance.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/stopComputeInstance.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/stopComputeInstance.json new file mode 100644 index 000000000000..04e8ec2789f3 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/stopComputeInstance.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/updateAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/updateAKSCompute.json new file mode 100644 index 000000000000..42e71959ac35 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/updateAKSCompute.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview", + "parameters": { + "id": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "properties": { + "agentCount": 4 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Updating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Updating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/updateAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/updateAmlCompute.json new file mode 100644 index 000000000000..8c543528291a --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/updateAmlCompute.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-02-18-preview", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "properties": { + "scaleSettings": { + "maxNodeCount": 4, + "minNodeCount": 4, + "nodeIdleTimeBeforeScaleDown": "PT5M" + } + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "provisioningState": "Updating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "provisioningState": "Updating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/updateQuota.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/updateQuota.json new file mode 100644 index 000000000000..98e40459697f --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/updateQuota.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "api-version": "2020-02-18-preview", + "parameters": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 100, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 200, + "unit": "Count" + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 100, + "unit": "Count", + "status": "Success" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 200, + "unit": "Count", + "status": "Success" + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/updateWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/updateWorkspace.json new file mode 100644 index 000000000000..665b69b2b198 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/updateWorkspace.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2020-02-18-preview", + "parameters": { + "sku": { + "name": "Enterprise", + "tier": "Enterprise" + }, + "properties": { + "friendlyName": "New friendly name", + "description": "new description" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Enterprise", + "tier": "Enterprise" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "New friendly name", + "description": "new description" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/workspaceDeletePrivateEndpointConnection.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/workspaceDeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..66ea9ba11e56 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/workspaceDeletePrivateEndpointConnection.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg-1234", + "workspaceName": "testworkspace", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2020-02-18-preview", + "monitor": "true" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/workspaceGetPrivateEndpointConnection.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/workspaceGetPrivateEndpointConnection.json new file mode 100644 index 000000000000..fefdc38a3acf --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/workspaceGetPrivateEndpointConnection.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg-1234", + "workspaceName": "testworkspace", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2020-02-18-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.MachineLearningServices/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionRequired": "None" + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/workspaceListPrivateLinkResources.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/workspaceListPrivateLinkResources.json new file mode 100644 index 000000000000..cae1379d01fe --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/workspaceListPrivateLinkResources.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg-1234", + "workspaceName": "testworkspace", + "api-version": "2020-02-18-preview", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/privateLinkResources/amlworkspace", + "name": "amlworkspace", + "type": "Microsoft.Storage/workspaces/privateLinkResources", + "properties": { + "groupId": "amlworkspace", + "requiredMembers": [ + "default" + ] + } + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/workspacePutPrivateEndpointConnection.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/workspacePutPrivateEndpointConnection.json new file mode 100644 index 000000000000..bcdaee3cab98 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/examples/workspacePutPrivateEndpointConnection.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg-1234", + "workspaceName": "testworkspace", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2020-02-18-preview", + "monitor": "true", + "properties": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.MachineLearningServices/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionRequired": "None" + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/machineLearningServices.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/machineLearningServices.json new file mode 100644 index 000000000000..6bde4dba311c --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/preview/2020-02-18-preview/machineLearningServices.json @@ -0,0 +1,3603 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Machine Learning Workspaces", + "description": "These APIs allow end users to operate on Azure Machine Learning Workspace resources.", + "version": "2020-02-18-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": { + "/providers/Microsoft.MachineLearningServices/operations": { + "get": { + "tags": [ + "Operation" + ], + "description": "Lists all of the available Azure Machine Learning Workspaces REST API operations.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Gets the properties of the specified machine learning workspace.", + "operationId": "Workspaces_Get", + "x-ms-examples": { + "Get Workspace": { + "$ref": "./examples/getWorkspace.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/Workspace" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "put": { + "tags": [ + "Workspaces" + ], + "description": "Creates or updates a workspace with the specified parameters.", + "operationId": "Workspaces_CreateOrUpdate", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create Workspace": { + "$ref": "./examples/createWorkspace.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The parameters for creating or updating a machine learning workspace.", + "required": true, + "schema": { + "$ref": "#/definitions/Workspace" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "201": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "202": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "delete": { + "tags": [ + "Workspaces" + ], + "description": "Deletes a machine learning workspace.", + "operationId": "Workspaces_Delete", + "x-ms-examples": { + "Delete Workspace": { + "$ref": "./examples/deleteWorkspace.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." + }, + "204": { + "description": "The machine learning workspace does not exist in the subscription." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "patch": { + "tags": [ + "Workspaces" + ], + "description": "Updates a machine learning workspace with the specified parameters.", + "operationId": "Workspaces_Update", + "x-ms-examples": { + "Update Workspace": { + "$ref": "./examples/updateWorkspace.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The parameters for updating a machine learning workspace.", + "required": true, + "schema": { + "$ref": "#/definitions/WorkspaceUpdateParameters" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/features": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Lists all enabled features for a workspace", + "operationId": "WorkspaceFeatures_List", + "x-ms-examples": { + "List Workspace features": { + "$ref": "./examples/ListWorkspaceFeatures.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/ListAmlUserFeatureResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Lists all the available machine learning workspaces under the specified resource group.", + "operationId": "Workspaces_ListByResourceGroup", + "x-ms-examples": { + "Get Workspaces by Resource Group": { + "$ref": "./examples/getWorkspacesByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/PaginationParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/WorkspaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/listKeys": { + "post": { + "tags": [ + "Workspaces" + ], + "description": "Lists all the keys associated with this workspace. This includes keys for the storage account, app insights and password for container registry", + "operationId": "Workspaces_ListKeys", + "x-ms-examples": { + "List Workspace Keys": { + "$ref": "./examples/listWorkspaceKeys.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/ListWorkspaceKeysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/resyncKeys": { + "post": { + "tags": [ + "Workspaces" + ], + "description": "Resync all the keys associated with this workspace. This includes keys for the storage account, app insights and password for container registry", + "operationId": "Workspaces_ResyncKeys", + "x-ms-examples": { + "Resync Workspace Keys": { + "$ref": "./examples/resyncWorkspaceKeys.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." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/usages": { + "get": { + "tags": [ + "Usage" + ], + "operationId": "Usages_List", + "description": "Gets the current 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/ListUsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Usages": { + "$ref": "./examples/ListUsages.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/vmSizes": { + "get": { + "tags": [ + "VirtualMachineSizes" + ], + "operationId": "VirtualMachineSizes_List", + "description": "Returns supported VM Sizes in a location", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location upon which virtual-machine-sizes is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineSizeListResult" + } + } + }, + "x-ms-examples": { + "List VM Sizes": { + "$ref": "./examples/ListVMSizesResult.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/updateQuotas": { + "post": { + "tags": [ + "Quota" + ], + "operationId": "Quotas_Update", + "description": "Update quota for each VM family in workspace.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location for update quota is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/QuotaUpdateParameters" + }, + "description": "Quota update parameters." + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful.", + "schema": { + "$ref": "#/definitions/UpdateWorkspaceQuotasResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-examples": { + "update quotas": { + "$ref": "./examples/updateQuota.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/Quotas": { + "get": { + "tags": [ + "Quota" + ], + "operationId": "Quotas_List", + "description": "Gets the currently assigned Workspace Quotas based on VMFamily.", + "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/ListWorkspaceQuotas" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List workspace quotas by VMFamily": { + "$ref": "./examples/ListWorkspaceQuotasByVMFamily.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/workspaces": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Lists all the available machine learning workspaces under the specified subscription.", + "operationId": "Workspaces_ListBySubscription", + "x-ms-examples": { + "Get Workspaces by subscription": { + "$ref": "./examples/getWorkspacesBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PaginationParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/WorkspaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes": { + "get": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "operationId": "MachineLearningCompute_ListByWorkspace", + "description": "Gets computes in specified workspace.", + "x-ms-examples": { + "Get Computes": { + "$ref": "./examples/getComputes.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/PaginationParameter" + } + ], + "responses": { + "200": { + "description": "The response includes a paginated array of Machine Learning computes and a URI to the next set of results, if any. For the more information the limits of the number of items in a resource group, see https://azure.microsoft.com/en-us/documentation/articles/azure-subscription-service-limits/.", + "schema": { + "$ref": "#/definitions/PaginatedComputeResourcesList" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}": { + "get": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_Get", + "description": "Gets compute definition by its name. Any secrets (storage keys, service credentials, etc) are not returned - use 'keys' nested resource to get them.", + "x-ms-examples": { + "Get a AKS Compute": { + "$ref": "./examples/getAKSCompute.json" + }, + "Get a AML Compute": { + "$ref": "./examples/getAmlCompute.json" + }, + "Get a ComputeInstance": { + "$ref": "./examples/getComputeInstance.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/ComputeResource" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "put": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_CreateOrUpdate", + "description": "Creates or updates compute. This call will overwrite a compute if it exists. This is a nonrecoverable operation. If your intent is to create a new compute, do a GET first to verify that it does not exist yet.", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create a AML Compute": { + "$ref": "./examples/createBasicAmlCompute.json" + }, + "Create a ComputeInstance Compute with minimal inputs": { + "$ref": "./examples/createComputeInstanceMinimal.json" + }, + "Create a ComputeInstance Compute": { + "$ref": "./examples/createComputeInstance.json" + }, + "Create AKS Compute": { + "$ref": "./examples/createBasicAKSCompute.json" + }, + "Create a DataFactory Compute": { + "$ref": "./examples/createBasicDataFactoryCompute.json" + }, + "Update a AML Compute": { + "$ref": "./examples/updateAmlCompute.json" + }, + "Update a AKS Compute": { + "$ref": "./examples/updateAKSCompute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/ComputeDefinitionParameter" + } + ], + "responses": { + "200": { + "description": "Compute creation or update initiated.", + "schema": { + "$ref": "#/definitions/ComputeResource" + } + }, + "201": { + "description": "Compute creation or update initiated.", + "headers": { + "Azure-AsyncOperation": { + "description": "URI to poll for asynchronous operation status.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/ComputeResource" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "patch": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_Update", + "description": "Updates properties of a compute. This call will overwrite a compute if it exists. This is a nonrecoverable operation.", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a AmlCompute Compute": { + "$ref": "./examples/patchAmlCompute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterUpdateParameters" + }, + "description": "Additional parameters for cluster update." + } + ], + "responses": { + "200": { + "description": "Compute update initiated.", + "schema": { + "$ref": "#/definitions/ComputeResource" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "delete": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_Delete", + "description": "Deletes specified Machine Learning compute.", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete Compute": { + "$ref": "./examples/deleteCompute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/UnderlyingResourceActionParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "202": { + "description": "Compute deletion initiated.", + "headers": { + "Azure-AsyncOperation": { + "description": "URI to poll for asynchronous operation status.", + "type": "string" + }, + "Location": { + "description": "URI to poll for asynchronous operation result.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}/listNodes": { + "post": { + "tags": [ + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_ListNodes", + "description": "Get the details (e.g IP address, port etc) of all the compute nodes in the compute.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the list of IP addresses.", + "schema": { + "$ref": "#/definitions/AmlComputeNodesInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-examples": { + "Get compute nodes information for a compute": { + "$ref": "./examples/amlComputeListNodes.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}/listKeys": { + "post": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_ListKeys", + "description": "Gets secrets related to Machine Learning compute (storage keys, service credentials, etc).", + "x-ms-examples": { + "List AKS Compute Keys": { + "$ref": "./examples/listKeysAKSCompute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/ComputeSecrets" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/workspaces/skus": { + "get": { + "tags": [ + "WorkspaceSkus" + ], + "description": "Lists all skus with associated features", + "operationId": "ListSkus", + "x-ms-examples": { + "List Skus": { + "$ref": "./examples/ListSkus.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/SkuListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "WorkspacePrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Get", + "description": "Gets the specified private endpoint connection associated with the workspace.", + "x-ms-examples": { + "WorkspaceGetPrivateEndpointConnection": { + "$ref": "./examples/workspaceGetPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Get the private endpoint connection properties successfully.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WorkspacePrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Put", + "description": "Update the state of specified private endpoint connection associated with the workspace.", + "x-ms-examples": { + "WorkspacePutPrivateEndpointConnection": { + "$ref": "./examples/workspacePutPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The private endpoint connection properties." + } + ], + "responses": { + "200": { + "description": "OK -- Update the private endpoint connection properties successfully.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WorkspacePrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Delete", + "description": "Deletes the specified private endpoint connection associated with the workspace.", + "x-ms-examples": { + "WorkspaceDeletePrivateEndpointConnection": { + "$ref": "./examples/workspaceDeletePrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Delete the private endpoint connection successfully." + }, + "204": { + "description": "No Content -- The private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/privateLinkResources": { + "get": { + "tags": [ + "WorkspacePrivateLinkResources" + ], + "operationId": "PrivateLinkResources_ListByWorkspace", + "description": "Gets the private link resources that need to be created for a workspace.", + "x-ms-examples": { + "WorkspaceListPrivateLinkResources": { + "$ref": "./examples/workspaceListPrivateLinkResources.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}/start": { + "post": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_Start", + "description": "Posts a start action to a compute instance", + "x-ms-examples": { + "Start ComputeInstance Compute": { + "$ref": "./examples/startComputeInstance.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}/stop": { + "post": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_Stop", + "description": "Posts a stop action to a compute instance", + "x-ms-examples": { + "Stop ComputeInstance Compute": { + "$ref": "./examples/stopComputeInstance.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}/restart": { + "post": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_Restart", + "description": "Posts a restart action to a compute instance", + "x-ms-examples": { + "Restart ComputeInstance Compute": { + "$ref": "./examples/restartComputeInstance.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "description": "Azure subscription identifier.", + "in": "path", + "type": "string", + "required": true + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "description": "Name of the resource group in which workspace is located.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "WorkspaceNameParameter": { + "name": "workspaceName", + "description": "Name of Azure Machine Learning workspace.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "ComputeNameParameter": { + "name": "computeName", + "description": "Name of the Azure Machine Learning compute.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "AsyncOperationIdParameter": { + "name": "asyncOperationId", + "description": "Identifier of an asynchronous Azure Machine Learning compute operation.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "LocationParameter": { + "name": "location", + "description": "The name of the Azure location/region.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "APIVersionParameter": { + "in": "query", + "name": "api-version", + "type": "string", + "description": "Version of Azure Machine Learning resource provider API.", + "required": true + }, + "PaginationParameter": { + "in": "query", + "name": "$skiptoken", + "type": "string", + "description": "Continuation token for pagination.", + "required": false, + "x-ms-parameter-location": "method" + }, + "ComputeDefinitionParameter": { + "in": "body", + "name": "parameters", + "description": "Payload with Machine Learning compute definition.", + "required": true, + "schema": { + "$ref": "#/definitions/ComputeResource" + }, + "x-ms-parameter-location": "method" + }, + "ComputeTypeParameter": { + "in": "query", + "name": "compute-type", + "type": "string", + "description": "Type of compute to filter by.", + "required": false, + "x-ms-parameter-location": "method" + }, + "UnderlyingResourceActionParameter": { + "in": "query", + "name": "underlyingResourceAction", + "type": "string", + "description": "Delete the underlying compute if 'Delete', or detach the underlying compute from workspace if 'Detach'.", + "required": true, + "enum": [ + "Delete", + "Detach" + ], + "x-ms-enum": { + "name": "UnderlyingResourceAction", + "modelAsString": true + }, + "x-ms-parameter-location": "method" + }, + "PrivateEndpointConnectionName": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint connection associated with the workspace", + "x-ms-parameter-location": "method" + } + }, + "definitions": { + "Operation": { + "description": "Azure Machine Learning workspace REST API operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "Display name of operation", + "properties": { + "provider": { + "description": "The resource provider name: Microsoft.MachineLearningExperimentation", + "type": "string" + }, + "resource": { + "description": "The resource on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "The operation that users can perform.", + "type": "string" + }, + "description": { + "description": "The description for the operation.", + "type": "string" + } + } + } + } + }, + "OperationListResult": { + "description": "An array of operations supported by the resource provider.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of AML workspace operations supported by the AML workspace resource provider." + } + } + }, + "Workspace": { + "type": "object", + "description": "An object that represents a machine learning workspace.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/WorkspaceProperties", + "description": "The properties of the machine learning workspace.", + "x-ms-client-flatten": true + } + } + }, + "WorkspaceProperties": { + "type": "object", + "description": "The properties of a machine learning workspace.", + "properties": { + "workspaceId": { + "description": "The immutable id associated with this workspace.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The description of this workspace.", + "type": "string" + }, + "friendlyName": { + "description": "The friendly name for this workspace. This name in mutable", + "type": "string" + }, + "creationTime": { + "format": "date-time", + "description": "The creation time of the machine learning workspace in ISO8601 format.", + "type": "string", + "readOnly": true + }, + "keyVault": { + "description": "ARM id of the key vault associated with this workspace. This cannot be changed once the workspace has been created", + "type": "string" + }, + "applicationInsights": { + "description": "ARM id of the application insights associated with this workspace. This cannot be changed once the workspace has been created", + "type": "string" + }, + "containerRegistry": { + "description": "ARM id of the container registry associated with this workspace. This cannot be changed once the workspace has been created", + "type": "string" + }, + "storageAccount": { + "description": "ARM id of the storage account associated with this workspace. This cannot be changed once the workspace has been created", + "type": "string" + }, + "discoveryUrl": { + "description": "Url for the discovery service to identify regional endpoints for machine learning experimentation services", + "type": "string" + }, + "provisioningState": { + "type": "string", + "enum": [ + "Unknown", + "Updating", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Canceled" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + }, + "readOnly": true, + "description": "The current deployment state of workspace resource. The provisioningState is to indicate states for resource provisioning." + }, + "encryption": { + "$ref": "#/definitions/EncryptionProperty", + "description": "The encryption settings of Azure ML workspace." + }, + "hbiWorkspace": { + "type": "boolean", + "description": "The flag to signal HBI data in the workspace and reduce diagnostic data collected by the service", + "default": false + }, + "serviceProvisionedResourceGroup": { + "type": "string", + "description": "The name of the managed resource group created by workspace RP in customer subscription if the workspace is CMK workspace", + "readOnly": true + } + } + }, + "WorkspaceUpdateParameters": { + "description": "The parameters for updating a machine learning workspace.", + "properties": { + "tags": { + "description": "The resource tags for the machine learning workspace.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The sku of the workspace." + }, + "properties": { + "$ref": "#/definitions/WorkspacePropertiesUpdateParameters", + "description": "The properties that the machine learning workspace will be updated with.", + "x-ms-client-flatten": true + } + } + }, + "WorkspacePropertiesUpdateParameters": { + "description": "The parameters for updating the properties of a machine learning workspace.", + "properties": { + "description": { + "description": "The description of this workspace.", + "type": "string" + }, + "friendlyName": { + "description": "The friendly name for this workspace.", + "type": "string" + } + } + }, + "AmlUserFeature": { + "description": "Features enabled for a workspace", + "type": "object", + "properties": { + "id": { + "description": "Specifies the feature ID", + "type": "string" + }, + "displayName": { + "description": "Specifies the feature name ", + "type": "string" + }, + "description": { + "description": "Describes the feature for user experience", + "type": "string" + } + } + }, + "ListAmlUserFeatureResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/AmlUserFeature" + }, + "description": "The list of AML user facing features." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URI to fetch the next page of AML user features information. Call ListNext() with this to fetch the next page of AML user features information." + } + }, + "description": "The List Aml user feature operation response." + }, + "UsageName": { + "properties": { + "value": { + "readOnly": true, + "type": "string", + "description": "The name of the resource." + }, + "localizedValue": { + "readOnly": true, + "type": "string", + "description": "The localized name of the resource." + } + }, + "description": "The Usage Names." + }, + "Usage": { + "type": "object", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource ID." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource type." + }, + "unit": { + "readOnly": true, + "type": "string", + "description": "An enum describing the unit of usage measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "UsageUnit", + "modelAsString": true + } + }, + "currentValue": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The current usage of the resource." + }, + "limit": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The maximum permitted usage of the resource." + }, + "name": { + "readOnly": true, + "$ref": "#/definitions/UsageName", + "description": "The name of the type of usage." + } + }, + "description": "Describes AML Resource Usage." + }, + "ListUsagesResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "The list of AML resource usages." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URI to fetch the next page of AML resource usage information. Call ListNext() with this to fetch the next page of AML resource usage information." + } + }, + "description": "The List Usages operation response." + }, + "VirtualMachineSize": { + "properties": { + "name": { + "type": "string", + "title": "Virtual Machine size name", + "description": "The name of the virtual machine size.", + "readOnly": true + }, + "family": { + "type": "string", + "title": "Virtual Machine family name", + "description": "The family name of the virtual machine size.", + "readOnly": true + }, + "vCPUs": { + "type": "integer", + "format": "int32", + "title": "Number of vPUs", + "description": "The number of vCPUs supported by the virtual machine size.", + "readOnly": true + }, + "gpus": { + "type": "integer", + "format": "int32", + "title": "Number of gPUs", + "description": "The number of gPUs supported by the virtual machine size.", + "readOnly": true + }, + "osVhdSizeMB": { + "type": "integer", + "format": "int32", + "title": "OS VHD Disk size", + "description": "The OS VHD disk size, in MB, allowed by the virtual machine size.", + "readOnly": true + }, + "maxResourceVolumeMB": { + "type": "integer", + "format": "int32", + "title": "Resource volume size", + "description": "The resource volume size, in MB, allowed by the virtual machine size.", + "readOnly": true + }, + "memoryGB": { + "type": "number", + "format": "double", + "title": "Memory size", + "description": "The amount of memory, in GB, supported by the virtual machine size.", + "readOnly": true + }, + "lowPriorityCapable": { + "type": "boolean", + "title": "Low priority capable", + "description": "Specifies if the virtual machine size supports low priority VMs.", + "readOnly": true + }, + "premiumIO": { + "type": "boolean", + "title": "Premium IO supported", + "description": "Specifies if the virtual machine size supports premium IO.", + "readOnly": true + } + }, + "description": "Describes the properties of a VM size." + }, + "VirtualMachineSizeListResult": { + "properties": { + "amlCompute": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineSize" + }, + "description": "The list of virtual machine sizes supported by AmlCompute." + } + }, + "description": "The List Virtual Machine size operation response." + }, + "WorkspaceListResult": { + "description": "The result of a request to list machine learning workspaces.", + "properties": { + "value": { + "description": "The list of machine learning workspaces. Since this list may be incomplete, the nextLink field should be used to request the next list of machine learning workspaces.", + "type": "array", + "items": { + "$ref": "#/definitions/Workspace" + } + }, + "nextLink": { + "description": "The URI that can be used to request the next list of machine learning workspaces.", + "type": "string" + } + } + }, + "QuotaBaseProperties": { + "properties": { + "id": { + "type": "string", + "description": "Specifies the resource ID." + }, + "type": { + "type": "string", + "description": "Specifies the resource type." + }, + "limit": { + "type": "integer", + "format": "int64", + "title": "Limit.", + "description": "The maximum permitted quota of the resource." + }, + "unit": { + "type": "string", + "description": "An enum describing the unit of quota measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "QuotaUnit", + "modelAsString": true + } + } + }, + "description": "The properties for Quota update or retrieval." + }, + "QuotaUpdateParameters": { + "properties": { + "value": { + "description": "The list for update quota.", + "type": "array", + "items": { + "$ref": "#/definitions/QuotaBaseProperties" + } + } + }, + "description": "Quota update parameters." + }, + "UpdateWorkspaceQuotasResult": { + "properties": { + "value": { + "description": "The list of workspace quota update result.", + "items": { + "$ref": "#/definitions/UpdateWorkspaceQuotas" + }, + "readOnly": true, + "type": "array" + }, + "nextLink": { + "description": "The URI to fetch the next page of workspace quota update result. Call ListNext() with this to fetch the next page of Workspace Quota update result.", + "readOnly": true, + "type": "string" + } + }, + "description": "The result of update workspace quota." + }, + "UpdateWorkspaceQuotas": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource ID." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource type." + }, + "limit": { + "type": "integer", + "format": "int64", + "title": "Limit.", + "description": "The maximum permitted quota of the resource." + }, + "unit": { + "readOnly": true, + "type": "string", + "description": "An enum describing the unit of quota measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "QuotaUnit", + "modelAsString": true + } + }, + "status": { + "type": "string", + "readOnly": false, + "title": "Update Workspace Quota Status.", + "description": "Status of update workspace quota.", + "enum": [ + "Undefined", + "Success", + "Failure", + "InvalidQuotaBelowClusterMinimum", + "InvalidQuotaExceedsSubscriptionLimit", + "InvalidVMFamilyName", + "OperationNotSupportedForSku", + "OperationNotEnabledForRegion" + ], + "x-ms-enum": { + "name": "status", + "modelAsString": true + } + } + }, + "description": "The properties for update Quota response." + }, + "ResourceName": { + "properties": { + "value": { + "readOnly": true, + "type": "string", + "description": "The name of the resource." + }, + "localizedValue": { + "readOnly": true, + "type": "string", + "description": "The localized name of the resource." + } + }, + "description": "The Resource Name." + }, + "ResourceQuota": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource ID." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource type." + }, + "name": { + "$ref": "#/definitions/ResourceName", + "description": "Name of the resource.", + "readOnly": true + }, + "limit": { + "readOnly": true, + "type": "integer", + "format": "int64", + "title": "Limit.", + "description": "The maximum permitted quota of the resource." + }, + "unit": { + "readOnly": true, + "type": "string", + "description": "An enum describing the unit of quota measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "QuotaUnit", + "modelAsString": true + } + } + }, + "description": "The quota assigned to a resource." + }, + "ListWorkspaceQuotas": { + "properties": { + "value": { + "description": "The list of Workspace Quotas by VM Family", + "items": { + "$ref": "#/definitions/ResourceQuota" + }, + "readOnly": true, + "type": "array" + }, + "nextLink": { + "description": "The URI to fetch the next page of workspace quota information by VM Family. Call ListNext() with this to fetch the next page of Workspace Quota information.", + "readOnly": true, + "type": "string" + } + }, + "description": "The List WorkspaceQuotasByVMFamily operation response." + }, + "Identity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of resource identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of resource." + }, + "type": { + "type": "string", + "description": "The identity type.", + "enum": [ + "SystemAssigned" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + } + }, + "description": "Identity for the resource." + }, + "Resource": { + "description": "Azure Resource Manager resource envelope.", + "x-ms-azure-resource": true, + "properties": { + "id": { + "description": "Specifies the resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Specifies the name of the resource.", + "type": "string", + "readOnly": true + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the resource." + }, + "location": { + "description": "Specifies the location of the resource.", + "type": "string" + }, + "type": { + "description": "Specifies the type of the resource.", + "type": "string", + "readOnly": true + }, + "tags": { + "description": "Contains resource tags defined as key/value pairs.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The sku of the workspace." + } + } + }, + "ResourceId": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the resource" + } + }, + "required": [ + "id" + ], + "description": "Represents a resource ID. For example, for a subnet, it is the resource URL for the subnet.", + "x-ms-azure-resource": true + }, + "ListWorkspaceKeysResult": { + "type": "object", + "properties": { + "userStorageKey": { + "readOnly": true, + "type": "string" + }, + "userStorageResourceId": { + "readOnly": true, + "type": "string" + }, + "appInsightsInstrumentationKey": { + "readOnly": true, + "type": "string" + }, + "containerRegistryCredentials": { + "readOnly": true, + "$ref": "#/definitions/RegistryListCredentialsResult" + } + } + }, + "RegistryListCredentialsResult": { + "type": "object", + "properties": { + "location": { + "readOnly": true, + "type": "string" + }, + "username": { + "readOnly": true, + "type": "string" + }, + "passwords": { + "type": "array", + "items": { + "$ref": "#/definitions/Password" + } + } + } + }, + "Password": { + "type": "object", + "properties": { + "name": { + "readOnly": true, + "type": "string" + }, + "value": { + "readOnly": true, + "type": "string" + } + } + }, + "PaginatedComputeResourcesList": { + "type": "object", + "description": "Paginated list of Machine Learning compute objects wrapped in ARM resource envelope.", + "properties": { + "value": { + "type": "array", + "description": "An array of Machine Learning compute objects wrapped in ARM resource envelope.", + "items": { + "$ref": "#/definitions/ComputeResource" + } + }, + "nextLink": { + "type": "string", + "description": "A continuation link (absolute URI) to the next page of results in the list." + } + } + }, + "ComputeResource": { + "type": "object", + "description": "Machine Learning compute object wrapped into ARM resource envelope.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + }, + { + "type": "object", + "properties": { + "properties": { + "description": "Compute properties", + "$ref": "#/definitions/Compute" + } + } + } + ] + }, + "Compute": { + "type": "object", + "description": "Machine Learning compute object.", + "discriminator": "computeType", + "properties": { + "computeType": { + "description": "The type of compute", + "$ref": "#/definitions/ComputeType" + }, + "computeLocation": { + "description": "Location for the underlying compute", + "type": "string" + }, + "provisioningState": { + "type": "string", + "description": "The provision state of the cluster. Valid values are Unknown, Updating, Provisioning, Succeeded, and Failed.", + "enum": [ + "Unknown", + "Updating", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Canceled" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + }, + "readOnly": true + }, + "description": { + "type": "string", + "description": "The description of the Machine Learning compute." + }, + "createdOn": { + "type": "string", + "description": "The date and time when the compute was created.", + "format": "date-time", + "readOnly": true + }, + "modifiedOn": { + "type": "string", + "description": "The date and time when the compute was last modified.", + "format": "date-time", + "readOnly": true + }, + "resourceId": { + "type": "string", + "description": "ARM resource id of the underlying compute" + }, + "provisioningErrors": { + "type": "array", + "description": "Errors during provisioning", + "items": { + "$ref": "#/definitions/MachineLearningServiceError" + }, + "readOnly": true + }, + "isAttachedCompute": { + "type": "boolean", + "description": "Indicating whether the compute was provisioned by user and brought from outside if true, or machine learning service provisioned it if false.", + "readOnly": true + } + }, + "required": [ + "computeType" + ] + }, + "AKS": { + "description": "A Machine Learning compute based on AKS.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "description": "AKS properties", + "properties": { + "clusterFqdn": { + "description": "Cluster full qualified domain name", + "type": "string" + }, + "systemServices": { + "type": "array", + "description": "System services", + "items": { + "$ref": "#/definitions/SystemService" + }, + "readOnly": true + }, + "agentCount": { + "description": "Number of agents", + "type": "integer", + "minimum": 1 + }, + "agentVMSize": { + "description": "Agent virtual machine size", + "type": "string" + }, + "sslConfiguration": { + "description": "SSL configuration", + "$ref": "#/definitions/SslConfiguration" + }, + "aksNetworkingConfiguration": { + "description": "AKS networking configuration for vnet", + "$ref": "#/definitions/AksNetworkingConfiguration" + } + } + } + } + } + ], + "x-ms-discriminator-value": "AKS" + }, + "AmlCompute": { + "description": "An Azure Machine Learning compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "description": "AML Compute properties", + "type": "object", + "properties": { + "vmSize": { + "description": "Virtual Machine Size", + "type": "string" + }, + "vmPriority": { + "description": "Virtual Machine priority", + "type": "string", + "enum": [ + "Dedicated", + "LowPriority" + ], + "x-ms-enum": { + "name": "VmPriority", + "modelAsString": true + } + }, + "osType": { + "type": "string", + "description": "OS Type.", + "default": "Linux", + "enum": [ + "Linux", + "Windows" + ], + "x-ms-enum": { + "name": "osType", + "modelAsString": true + } + }, + "virtualMachineImage": { + "title": "Custom VM image.", + "description": "The ARM resource identifier of the virtual machine image for the compute nodes. This is of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{gallery name}/images/{image definition name}/versions/{version id}. The virtual machine image must be in the same region and subscription as the cluster.", + "$ref": "#/definitions/ResourceId" + }, + "scaleSettings": { + "description": "Scale settings for AML Compute", + "$ref": "#/definitions/ScaleSettings" + }, + "userAccountCredentials": { + "title": "User account credentials.", + "description": "Credentials for an administrator user account that will be created on each compute node.", + "$ref": "#/definitions/UserAccountCredentials" + }, + "subnet": { + "title": "Subnet.", + "description": "Virtual network subnet resource ID the compute nodes belong to.", + "$ref": "#/definitions/ResourceId" + }, + "remoteLoginPortPublicAccess": { + "type": "string", + "default": "NotSpecified", + "title": "Close remote Login Access Port", + "description": "State of the public SSH port. Possible values are: Disabled - Indicates that the public ssh port is closed on all nodes of the cluster. Enabled - Indicates that the public ssh port is open on all nodes of the cluster. NotSpecified - Indicates that the public ssh port is closed on all nodes of the cluster if VNet is defined, else is open all public nodes. It can be default only during cluster creation time, after creation it will be either enabled or disabled.", + "enum": [ + "Enabled", + "Disabled", + "NotSpecified" + ], + "x-ms-enum": { + "name": "remoteLoginPortPublicAccess", + "modelAsString": true + } + }, + "allocationState": { + "type": "string", + "readOnly": true, + "title": "Allocation state.", + "description": "Allocation state of the compute. Possible values are: steady - Indicates that the compute is not resizing. There are no changes to the number of compute nodes in the compute in progress. A compute enters this state when it is created and when no operations are being performed on the compute to change the number of compute nodes. resizing - Indicates that the compute is resizing; that is, compute nodes are being added to or removed from the compute.", + "enum": [ + "Steady", + "Resizing" + ], + "x-ms-enum": { + "name": "AllocationState", + "modelAsString": true + } + }, + "allocationStateTransitionTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "title": "Allocation state transition time.", + "description": "The time at which the compute entered its current allocation state." + }, + "errors": { + "readOnly": true, + "title": "Errors.", + "description": "Collection of errors encountered by various compute nodes during node setup.", + "type": "array", + "items": { + "$ref": "#/definitions/MachineLearningServiceError" + } + }, + "currentNodeCount": { + "type": "integer", + "readOnly": true, + "format": "int32", + "title": "Current node count.", + "description": "The number of compute nodes currently assigned to the compute." + }, + "targetNodeCount": { + "type": "integer", + "readOnly": true, + "format": "int32", + "title": "Target node count.", + "description": "The target number of compute nodes for the compute. If the allocationState is resizing, this property denotes the target node count for the ongoing resize operation. If the allocationState is steady, this property denotes the target node count for the previous resize operation." + }, + "nodeStateCounts": { + "title": "Node state counts.", + "description": "Counts of various node states on the compute.", + "readOnly": true, + "$ref": "#/definitions/NodeStateCounts" + } + } + } + } + } + ], + "x-ms-discriminator-value": "AmlCompute" + }, + "ComputeInstance": { + "description": "An Azure Machine Learning compute instance.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "description": "Compute Instance properties", + "type": "object", + "properties": { + "vmSize": { + "description": "Virtual Machine Size", + "type": "string" + }, + "subnet": { + "title": "Subnet.", + "description": "Virtual network subnet resource ID the compute nodes belong to.", + "$ref": "#/definitions/ResourceId" + }, + "applicationSharingPolicy": { + "type": "string", + "default": "Shared", + "title": "Sharing policy for applications on this compute instance", + "description": "Policy for sharing applications on this compute instance among users of parent workspace. If Personal, only the creator can access applications on this compute instance. When Shared, any workspace user can access applications on this instance depending on his/her assigned role.", + "enum": [ + "Personal", + "Shared" + ], + "x-ms-enum": { + "name": "applicationSharingPolicy", + "modelAsString": true + } + }, + "sshSettings": { + "description": "Specifies policy and settings for SSH access.", + "$ref": "#/definitions/ComputeInstanceSshSettings" + }, + "connectivityEndpoints": { + "readOnly": true, + "description": "Describes all connectivity endpoints available for this ComputeInstance.", + "$ref": "#/definitions/ComputeInstanceConnectivityEndpoints" + }, + "applications": { + "type": "array", + "readOnly": true, + "description": "Describes available applications and their endpoints on this ComputeInstance.", + "items": { + "$ref": "#/definitions/ComputeInstanceApplication" + } + }, + "createdBy": { + "readOnly": true, + "description": "Describes information on user who created this ComputeInstance.", + "$ref": "#/definitions/ComputeInstanceCreatedBy" + }, + "errors": { + "readOnly": true, + "title": "Errors.", + "description": "Collection of errors encountered on this ComputeInstance.", + "type": "array", + "items": { + "$ref": "#/definitions/MachineLearningServiceError" + } + }, + "state": { + "description": "The current state of this ComputeInstance.", + "$ref": "#/definitions/ComputeInstanceState", + "readOnly": true + } + } + } + } + } + ], + "x-ms-discriminator-value": "ComputeInstance" + }, + "VirtualMachine": { + "description": "A Machine Learning compute based on Azure Virtual Machines.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "virtualMachineSize": { + "description": "Virtual Machine size", + "type": "string" + }, + "sshPort": { + "description": "Port open for ssh connections.", + "type": "integer" + }, + "address": { + "description": "Public IP address of the virtual machine.", + "type": "string" + }, + "administratorAccount": { + "description": "Admin credentials for virtual machine", + "$ref": "#/definitions/VirtualMachineSshCredentials" + } + } + } + } + } + ], + "x-ms-discriminator-value": "VirtualMachine" + }, + "HDInsight": { + "description": "A HDInsight compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "sshPort": { + "description": "Port open for ssh connections on the master node of the cluster.", + "type": "integer" + }, + "address": { + "description": "Public IP address of the master node of the cluster.", + "type": "string" + }, + "administratorAccount": { + "description": "Admin credentials for master node of the cluster", + "$ref": "#/definitions/VirtualMachineSshCredentials" + } + } + } + } + } + ], + "x-ms-discriminator-value": "HDInsight" + }, + "DataFactory": { + "description": "A DataFactory compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + } + ], + "x-ms-discriminator-value": "DataFactory" + }, + "Databricks": { + "description": "A DataFactory compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "databricksAccessToken": { + "description": "Databricks access token", + "type": "string" + } + } + } + } + } + ], + "x-ms-discriminator-value": "Databricks" + }, + "DataLakeAnalytics": { + "description": "A DataLakeAnalytics compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "dataLakeStoreAccountName": { + "description": "DataLake Store Account Name", + "type": "string" + } + } + } + } + } + ], + "x-ms-discriminator-value": "DataLakeAnalytics" + }, + "ServicePrincipalCredentials": { + "type": "object", + "description": "Service principal credentials.", + "properties": { + "clientId": { + "description": "Client Id", + "type": "string" + }, + "clientSecret": { + "description": "Client secret", + "type": "string" + } + }, + "required": [ + "clientId", + "clientSecret" + ] + }, + "SystemService": { + "type": "object", + "description": "A system service running on a compute.", + "properties": { + "systemServiceType": { + "description": "The type of this system service.", + "readOnly": true, + "type": "string" + }, + "publicIpAddress": { + "type": "string", + "description": "Public IP address", + "readOnly": true + }, + "version": { + "description": "The version for this type.", + "readOnly": true, + "type": "string" + } + } + }, + "SslConfiguration": { + "type": "object", + "description": "The ssl configuration for scoring", + "properties": { + "status": { + "description": "Enable or disable ssl for scoring", + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ] + }, + "cert": { + "description": "Cert data", + "type": "string" + }, + "key": { + "description": "Key data", + "type": "string" + }, + "cname": { + "description": "CNAME of the cert", + "type": "string" + } + } + }, + "AksNetworkingConfiguration": { + "type": "object", + "description": "Advance configuration for AKS networking", + "properties": { + "subnetId": { + "description": "Virtual network subnet resource ID the compute nodes belong to", + "type": "string" + }, + "serviceCidr": { + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$", + "description": "A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges.", + "type": "string" + }, + "dnsServiceIP": { + "pattern": "^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$", + "description": "An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr.", + "type": "string" + }, + "dockerBridgeCidr": { + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$", + "description": "A CIDR notation IP range assigned to the Docker bridge network. It must not overlap with any Subnet IP ranges or the Kubernetes service address range.", + "type": "string" + } + } + }, + "UserAccountCredentials": { + "properties": { + "adminUserName": { + "type": "string", + "title": "User name.", + "description": "Name of the administrator user account which can be used to SSH to nodes." + }, + "adminUserSshPublicKey": { + "type": "string", + "title": "SSH public key.", + "description": "SSH public key of the administrator user account. This property is only supported on Linux based clusters." + }, + "adminUserPassword": { + "type": "string", + "title": "Password.", + "description": "Password of the administrator user account." + } + }, + "required": [ + "adminUserName" + ], + "description": "Settings for user account that gets created on each on the nodes of a compute." + }, + "ScaleSettings": { + "type": "object", + "description": "scale settings for AML Compute", + "properties": { + "maxNodeCount": { + "description": "Max number of nodes to use", + "type": "integer" + }, + "minNodeCount": { + "description": "Min number of nodes to use", + "type": "integer", + "default": 0 + }, + "nodeIdleTimeBeforeScaleDown": { + "type": "string", + "format": "duration", + "description": "Node Idle Time before scaling down amlCompute" + } + }, + "required": [ + "maxNodeCount" + ] + }, + "NodeStateCounts": { + "properties": { + "idleNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Idle node count.", + "description": "Number of compute nodes in idle state." + }, + "runningNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Running node count.", + "description": "Number of compute nodes which are running jobs." + }, + "preparingNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Preparing node count.", + "description": "Number of compute nodes which are being prepared." + }, + "unusableNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Unusable node count.", + "description": "Number of compute nodes which are in unusable state." + }, + "leavingNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Leaving node count.", + "description": "Number of compute nodes which are leaving the amlCompute." + }, + "preemptedNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Preempted node count.", + "description": "Number of compute nodes which are in preempted state." + } + }, + "description": "Counts of various compute node states on the amlCompute." + }, + "ClusterUpdateProperties": { + "properties": { + "scaleSettings": { + "$ref": "#/definitions/ScaleSettings", + "title": "Scale settings.", + "description": "Desired scale settings for the amlCompute." + } + }, + "description": "The properties of a amlCompute that need to be updated." + }, + "ClusterUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterUpdateProperties", + "description": "The properties of the amlCompute." + } + }, + "description": "AmlCompute update parameters." + }, + "ComputeNodesInformation": { + "type": "object", + "description": "Compute nodes information related to a Machine Learning compute. Might differ for every type of compute.", + "discriminator": "computeType", + "properties": { + "computeType": { + "description": "The type of compute", + "$ref": "#/definitions/ComputeType" + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The continuation token." + } + }, + "required": [ + "computeType" + ] + }, + "AmlComputeNodesInformation": { + "description": "Compute node information related to a AmlCompute.", + "allOf": [ + { + "$ref": "#/definitions/ComputeNodesInformation" + }, + { + "type": "object", + "properties": { + "nodes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/AmlComputeNodeInformation" + }, + "description": "The collection of returned AmlCompute nodes details." + } + } + } + ], + "x-ms-discriminator-value": "AmlCompute" + }, + "AmlComputeNodeInformation": { + "description": "Compute node information related to a AmlCompute.", + "properties": { + "nodeId": { + "readOnly": true, + "type": "string", + "title": "Node ID.", + "description": "ID of the compute node." + }, + "privateIpAddress": { + "readOnly": true, + "type": "string", + "title": "Private IP address.", + "description": "Private IP address of the compute node." + }, + "publicIpAddress": { + "readOnly": true, + "type": "string", + "title": "Public IP address.", + "description": "Public IP address of the compute node." + }, + "port": { + "readOnly": true, + "type": "number", + "format": "int32", + "title": "Port.", + "description": "SSH port number of the node." + }, + "nodeState": { + "readOnly": true, + "type": "string", + "enum": [ + "idle", + "running", + "preparing", + "unusable", + "leaving", + "preempted" + ], + "description": "State of the compute node. Values are idle, running, preparing, unusable, leaving and preempted.", + "x-ms-enum": { + "name": "nodeState", + "modelAsString": true + } + }, + "runId": { + "readOnly": true, + "type": "string", + "title": "Run ID.", + "description": "ID of the Experiment running on the node, if any else null." + } + }, + "x-ms-discriminator-value": "AmlCompute" + }, + "VirtualMachineSshCredentials": { + "type": "object", + "description": "Admin credentials for virtual machine", + "properties": { + "username": { + "description": "Username of admin account", + "type": "string" + }, + "password": { + "description": "Password of admin account", + "type": "string" + }, + "publicKeyData": { + "description": "Public key data", + "type": "string" + }, + "privateKeyData": { + "description": "Private key data", + "type": "string" + } + } + }, + "ComputeSecrets": { + "type": "object", + "description": "Secrets related to a Machine Learning compute. Might differ for every type of compute.", + "discriminator": "computeType", + "properties": { + "computeType": { + "description": "The type of compute", + "$ref": "#/definitions/ComputeType" + } + }, + "required": [ + "computeType" + ] + }, + "AksComputeSecrets": { + "description": "Secrets related to a Machine Learning compute based on AKS.", + "allOf": [ + { + "$ref": "#/definitions/ComputeSecrets" + }, + { + "type": "object", + "properties": { + "userKubeConfig": { + "type": "string", + "description": "Content of kubeconfig file that can be used to connect to the Kubernetes cluster." + }, + "adminKubeConfig": { + "type": "string", + "description": "Content of kubeconfig file that can be used to connect to the Kubernetes cluster." + }, + "imagePullSecretName": { + "type": "string", + "description": "Image registry pull secret." + } + } + } + ], + "x-ms-discriminator-value": "AKS" + }, + "VirtualMachineSecrets": { + "description": "Secrets related to a Machine Learning compute based on AKS.", + "allOf": [ + { + "$ref": "#/definitions/ComputeSecrets" + }, + { + "type": "object", + "properties": { + "administratorAccount": { + "description": "Admin credentials for virtual machine.", + "$ref": "#/definitions/VirtualMachineSshCredentials" + } + } + } + ], + "x-ms-discriminator-value": "VirtualMachine" + }, + "DatabricksComputeSecrets": { + "description": "Secrets related to a Machine Learning compute based on Databricks.", + "allOf": [ + { + "$ref": "#/definitions/ComputeSecrets" + }, + { + "type": "object", + "properties": { + "databricksAccessToken": { + "description": "access token for databricks account.", + "type": "string" + } + } + } + ], + "x-ms-discriminator-value": "Databricks" + }, + "ComputeType": { + "type": "string", + "description": "The type of compute", + "enum": [ + "AKS", + "AmlCompute", + "ComputeInstance", + "DataFactory", + "VirtualMachine", + "HDInsight", + "Databricks", + "DataLakeAnalytics" + ], + "x-ms-enum": { + "name": "ComputeType", + "modelAsString": true + } + }, + "MachineLearningServiceError": { + "type": "object", + "description": "Wrapper for error response to follow ARM guidelines.", + "properties": { + "error": { + "description": "The error response.", + "$ref": "#/definitions/ErrorResponse", + "readOnly": true + } + } + }, + "ErrorResponse": { + "type": "object", + "description": "Error response information.", + "properties": { + "code": { + "type": "string", + "description": "Error code.", + "readOnly": true + }, + "message": { + "type": "string", + "description": "Error message.", + "readOnly": true + }, + "details": { + "type": "array", + "description": "An array of error detail objects.", + "items": { + "$ref": "#/definitions/ErrorDetail" + }, + "readOnly": true + } + } + }, + "ErrorDetail": { + "type": "object", + "description": "Error detail information.", + "properties": { + "code": { + "type": "string", + "description": "Error code." + }, + "message": { + "type": "string", + "description": "Error message." + } + }, + "required": [ + "code", + "message" + ] + }, + "SKUCapability": { + "description": "Features/user capabilities associated with the sku", + "type": "object", + "properties": { + "name": { + "description": "Capability/Feature ID", + "type": "string" + }, + "value": { + "description": "Details about the feature/capability", + "type": "string" + } + } + }, + "ResourceSkuLocationInfo": { + "properties": { + "location": { + "readOnly": true, + "type": "string", + "description": "Location of the SKU" + }, + "zones": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "List of availability zones where the SKU is supported." + }, + "zoneDetails": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ResourceSkuZoneDetails" + }, + "description": "Details of capabilities available to a SKU in specific zones." + } + } + }, + "ResourceSkuZoneDetails": { + "properties": { + "name": { + "type": "array", + "readOnly": true, + "items": { + "type": "string" + }, + "description": "The set of zones that the SKU is available in with the specified capabilities." + }, + "capabilities": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SKUCapability" + }, + "description": "A list of capabilities that are available for the SKU in the specified list of zones." + } + }, + "description": "Describes The zonal capabilities of a SKU." + }, + "WorkspaceSku": { + "description": "Describes Workspace Sku details and features", + "type": "object", + "properties": { + "locations": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The set of locations that the SKU is available. This will be supported and registered Azure Geo Regions (e.g. West US, East US, Southeast Asia, etc.)." + }, + "locationInfo": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ResourceSkuLocationInfo" + }, + "description": "A list of locations and availability zones in those locations where the SKU is available." + }, + "tier": { + "description": "Sku Tier like Basic or Enterprise", + "type": "string", + "readOnly": true + }, + "resourceType": { + "type": "string", + "readOnly": true + }, + "name": { + "type": "string", + "readOnly": true + }, + "capabilities": { + "description": "List of features/user capabilities associated with the sku", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/SKUCapability" + }, + "readOnly": true + }, + "restrictions": { + "type": "array", + "items": { + "$ref": "#/definitions/Restriction" + }, + "description": "The restrictions because of which SKU cannot be used. This is empty if there are no restrictions." + } + } + }, + "Restriction": { + "properties": { + "type": { + "readOnly": true, + "type": "string", + "description": "The type of restrictions. As of now only possible value for this is location." + }, + "values": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The value of restrictions. If the restriction type is set to location. This would be different locations where the SKU is restricted." + }, + "reasonCode": { + "type": "string", + "enum": [ + "NotSpecified", + "NotAvailableForRegion", + "NotAvailableForSubscription" + ], + "x-ms-enum": { + "name": "ReasonCode", + "modelAsString": true + }, + "description": "The reason for the restriction." + } + }, + "description": "The restriction because of which SKU cannot be used." + }, + "SkuListResult": { + "description": "List of skus with features", + "type": "object", + "properties": { + "value": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/WorkspaceSku" + } + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of Workspace Skus. Call ListNext() with this URI to fetch the next page of Workspace Skus" + } + } + }, + "Sku": { + "description": "Sku of the resource", + "type": "object", + "properties": { + "name": { + "description": "Name of the sku", + "type": "string" + }, + "tier": { + "description": "Tier of the sku like Basic or Enterprise", + "type": "string" + } + } + }, + "PrivateEndpointConnection": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "x-ms-client-flatten": true, + "description": "Resource properties." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "The Private Endpoint Connection resource." + }, + "PrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "The resource of private end point." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "provisioningState": { + "$ref": "#/definitions/PrivateEndpointConnectionProvisioningState", + "description": "The provisioning state of the private endpoint connection resource." + } + }, + "required": [ + "privateLinkServiceConnectionState" + ], + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "PrivateEndpoint": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ARM identifier for Private Endpoint" + } + }, + "description": "The Private Endpoint resource." + }, + "PrivateLinkServiceConnectionState": { + "properties": { + "status": { + "$ref": "#/definitions/PrivateEndpointServiceConnectionStatus", + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + }, + "description": { + "type": "string", + "description": "The reason for approval/rejection of the connection." + }, + "actionRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + } + }, + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "PrivateEndpointServiceConnectionStatus": { + "type": "string", + "description": "The private endpoint connection status.", + "enum": [ + "Pending", + "Approved", + "Rejected" + ], + "x-ms-enum": { + "name": "PrivateEndpointServiceConnectionStatus", + "modelAsString": true + } + }, + "PrivateEndpointConnectionProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Succeeded", + "Creating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "PrivateEndpointConnectionProvisioningState", + "modelAsString": true + } + }, + "PrivateLinkResourceListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "description": "A list of private link resources" + }, + "PrivateLinkResource": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "A private link resource" + }, + "PrivateLinkResourceProperties": { + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The private link resource Private link DNS zone name." + } + }, + "description": "Properties of a private link resource." + }, + "EncryptionProperty": { + "properties": { + "status": { + "description": "Indicates whether or not the encryption is enabled for the workspace.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "EncryptionStatus", + "modelAsString": true + } + }, + "keyVaultProperties": { + "$ref": "#/definitions/KeyVaultProperties", + "description": "Customer Key vault properties." + } + }, + "required": [ + "status", + "keyVaultProperties" + ], + "type": "object" + }, + "KeyVaultProperties": { + "properties": { + "keyVaultArmId": { + "description": "The ArmId of the keyVault where the customer owned encryption key is present.", + "type": "string" + }, + "keyIdentifier": { + "description": "Key vault uri to access the encryption key.", + "type": "string" + }, + "identityClientId": { + "description": "For future use - The client id of the identity which will be used to access key vault.", + "type": "string" + } + }, + "required": [ + "keyIdentifier", + "keyVaultArmId" + ], + "type": "object" + }, + "ComputeInstanceSshSettings": { + "type": "object", + "description": "Specifies policy and settings for SSH access.", + "properties": { + "sshPublicAccess": { + "type": "string", + "default": "Disabled", + "title": "Access policy for SSH", + "description": "State of the public SSH port. Possible values are: Disabled - Indicates that the public ssh port is closed on this instance. Enabled - Indicates that the public ssh port is open and accessible according to the VNet/subnet policy if applicable.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "sshPublicAccess", + "modelAsString": true + } + }, + "adminUserName": { + "type": "string", + "readOnly": true, + "description": "Describes the admin user name." + }, + "sshPort": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "Describes the port for connecting through SSH." + }, + "adminPublicKey": { + "type": "string", + "description": "Specifies the SSH rsa public key file as a string. Use \"ssh-keygen -t rsa -b 2048\" to generate your SSH key pairs." + } + } + }, + "ComputeInstanceState": { + "type": "string", + "description": "Current state of a ComputeInstance.", + "enum": [ + "Creating", + "CreateFailed", + "Deleting", + "Running", + "Restarting", + "RestartFailed", + "JobRunning", + "SettingUp", + "Starting", + "StartFailed", + "StopFailed", + "Stopped", + "Stopping", + "UserSettingUp", + "Unknown", + "Unusable" + ], + "x-ms-enum": { + "name": "ComputeInstanceState", + "modelAsString": true + } + }, + "ComputeInstanceApplication": { + "type": "object", + "description": "Defines an Aml Instance application and its connectivity endpoint URI.", + "properties": { + "displayName": { + "type": "string", + "description": "Name of the ComputeInstance application." + }, + "endpointUri": { + "type": "string", + "description": "Application' endpoint URI." + } + } + }, + "ComputeInstanceConnectivityEndpoints": { + "type": "object", + "readOnly": true, + "description": "Defines all connectivity endpoints and properties for a ComputeInstance.", + "properties": { + "publicIpAddress": { + "type": "string", + "readOnly": true, + "description": "Public IP Address of this ComputeInstance." + }, + "privateIpAddress": { + "type": "string", + "readOnly": true, + "description": "Private IP Address of this ComputeInstance (local to the VNET in which the compute instance is deployed)." + } + } + }, + "ComputeInstanceCreatedBy": { + "type": "object", + "readOnly": true, + "description": "Describes information on user who created this ComputeInstance.", + "properties": { + "userName": { + "type": "string", + "readOnly": true, + "description": "Name of the user." + }, + "userOrgId": { + "type": "string", + "readOnly": true, + "description": "Uniquely identifies user' Azure Active Directory organization." + }, + "userId": { + "type": "string", + "readOnly": true, + "description": "Uniquely identifies the user within his/her organization." + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2018-11-19/examples/createWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2018-11-19/examples/createWorkspace.json index 6a032335e30c..ce16a8fec87b 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2018-11-19/examples/createWorkspace.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2018-11-19/examples/createWorkspace.json @@ -6,6 +6,9 @@ "api-version": "2018-11-19", "parameters": { "location": "eastus2euap", + "identity": { + "type": "SystemAssigned" + }, "properties": { "friendlyName": "HelloName", "description": "test description", @@ -23,6 +26,11 @@ "name": "testworkspace", "type": "Microsoft.MachineLearningServices/workspaces", "location": "eastus2euap", + "identity": { + "principalId": "00000000-1111-2222-3333-444444444444", + "tenantId": "00000000-1111-2222-3333-444444444444", + "type": "SystemAssigned" + }, "properties": { "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", @@ -52,6 +60,24 @@ "description": "test description" } } + }, + "202": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description" + } + } } } } diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2018-11-19/machineLearningServices.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2018-11-19/machineLearningServices.json index d7f0af3f304d..0178bb7c73d3 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2018-11-19/machineLearningServices.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2018-11-19/machineLearningServices.json @@ -112,6 +112,7 @@ ], "description": "Creates or updates a workspace with the specified parameters.", "operationId": "Workspaces_CreateOrUpdate", + "x-ms-long-running-operation": true, "x-ms-examples": { "Create Workspace": { "$ref": "./examples/createWorkspace.json" @@ -153,6 +154,12 @@ "$ref": "#/definitions/Workspace" } }, + "202": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, "default": { "description": "Error response describing why the operation failed", "schema": { @@ -1322,7 +1329,6 @@ }, "identity": { "$ref": "#/definitions/Identity", - "readOnly": true, "description": "The identity of the resource." }, "location": { diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-05-01/examples/createWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-05-01/examples/createWorkspace.json index 1aab6c1ec2fb..e4f116952f59 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-05-01/examples/createWorkspace.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-05-01/examples/createWorkspace.json @@ -6,6 +6,9 @@ "api-version": "2019-05-01", "parameters": { "location": "eastus2euap", + "identity": { + "type": "SystemAssigned" + }, "properties": { "friendlyName": "HelloName", "description": "test description", @@ -23,6 +26,11 @@ "name": "testworkspace", "type": "Microsoft.MachineLearningServices/workspaces", "location": "eastus2euap", + "identity": { + "principalId": "00000000-1111-2222-3333-444444444444", + "tenantId": "00000000-1111-2222-3333-444444444444", + "type": "SystemAssigned" + }, "properties": { "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", @@ -52,6 +60,24 @@ "description": "test description" } } + }, + "202": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description" + } + } } } } diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-05-01/machineLearningServices.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-05-01/machineLearningServices.json index 750aeedeb7b6..03836d3773af 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-05-01/machineLearningServices.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-05-01/machineLearningServices.json @@ -112,6 +112,7 @@ ], "description": "Creates or updates a workspace with the specified parameters.", "operationId": "Workspaces_CreateOrUpdate", + "x-ms-long-running-operation": true, "x-ms-examples": { "Create Workspace": { "$ref": "./examples/createWorkspace.json" @@ -153,6 +154,12 @@ "$ref": "#/definitions/Workspace" } }, + "202": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, "default": { "description": "Error response describing why the operation failed", "schema": { @@ -1339,7 +1346,6 @@ }, "identity": { "$ref": "#/definitions/Identity", - "readOnly": true, "description": "The identity of the resource." }, "location": { diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createWorkspace.json index 79aec9534278..cc4735a1018d 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createWorkspace.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/examples/createWorkspace.json @@ -6,6 +6,9 @@ "api-version": "2019-06-01", "parameters": { "location": "eastus2euap", + "identity": { + "type": "SystemAssigned" + }, "properties": { "friendlyName": "HelloName", "description": "test description", @@ -23,6 +26,11 @@ "name": "testworkspace", "type": "Microsoft.MachineLearningServices/workspaces", "location": "eastus2euap", + "identity": { + "principalId": "00000000-1111-2222-3333-444444444444", + "tenantId": "00000000-1111-2222-3333-444444444444", + "type": "SystemAssigned" + }, "properties": { "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", @@ -52,6 +60,24 @@ "description": "test description" } } + }, + "202": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description" + } + } } } } diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/machineLearningServices.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/machineLearningServices.json index 5ab70e0c0465..8f6d8aa125f2 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/machineLearningServices.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-06-01/machineLearningServices.json @@ -112,6 +112,7 @@ ], "description": "Creates or updates a workspace with the specified parameters.", "operationId": "Workspaces_CreateOrUpdate", + "x-ms-long-running-operation": true, "x-ms-examples": { "Create Workspace": { "$ref": "./examples/createWorkspace.json" @@ -153,6 +154,12 @@ "$ref": "#/definitions/Workspace" } }, + "202": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, "default": { "description": "Error response describing why the operation failed", "schema": { @@ -1623,7 +1630,6 @@ }, "identity": { "$ref": "#/definitions/Identity", - "readOnly": true, "description": "The identity of the resource." }, "location": { diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-11-01/examples/createWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-11-01/examples/createWorkspace.json index ba5af54ddc9b..a66d8a6c1d34 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-11-01/examples/createWorkspace.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-11-01/examples/createWorkspace.json @@ -10,6 +10,9 @@ "name": "Basic", "tier": "Basic" }, + "identity": { + "type": "SystemAssigned" + }, "properties": { "friendlyName": "HelloName", "description": "test description", @@ -31,6 +34,11 @@ "name": "Basic", "tier": "Basic" }, + "identity": { + "principalId": "00000000-1111-2222-3333-444444444444", + "tenantId": "00000000-1111-2222-3333-444444444444", + "type": "SystemAssigned" + }, "properties": { "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", @@ -64,6 +72,28 @@ "description": "test description" } } + }, + "202": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Basic", + "tier": "Basic" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description" + } + } } } } diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-11-01/machineLearningServices.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-11-01/machineLearningServices.json index 07891f1595b2..dbd23458bf96 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-11-01/machineLearningServices.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2019-11-01/machineLearningServices.json @@ -112,6 +112,7 @@ ], "description": "Creates or updates a workspace with the specified parameters.", "operationId": "Workspaces_CreateOrUpdate", + "x-ms-long-running-operation": true, "x-ms-examples": { "Create Workspace": { "$ref": "./examples/createWorkspace.json" @@ -153,6 +154,12 @@ "$ref": "#/definitions/Workspace" } }, + "202": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, "default": { "description": "Error response describing why the operation failed", "schema": { diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-01-01/examples/createWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-01-01/examples/createWorkspace.json index dc3e25f56c28..937b370a452d 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-01-01/examples/createWorkspace.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-01-01/examples/createWorkspace.json @@ -10,6 +10,9 @@ "name": "Basic", "tier": "Basic" }, + "identity": { + "type": "SystemAssigned" + }, "properties": { "friendlyName": "HelloName", "description": "test description", @@ -40,6 +43,11 @@ "name": "Basic", "tier": "Basic" }, + "identity": { + "principalId": "00000000-1111-2222-3333-444444444444", + "tenantId": "00000000-1111-2222-3333-444444444444", + "type": "SystemAssigned" + }, "properties": { "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", @@ -91,6 +99,37 @@ "hbiWorkspace": false } } + }, + "202": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Basic", + "tier": "Basic" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description", + "encryption": { + "status": "Enabled", + "keyVaultProperties": { + "keyVaultArmId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "keyIdentifier": "https://testkv.vault.azure.net/keys/testkey/aabbccddee112233445566778899aabb", + "identityClientId": "" + } + }, + "hbiWorkspace": true + } + } } } } diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-01-01/examples/getWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-01-01/examples/getWorkspace.json index 6cb4b63cac77..c0efa8ee9212 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-01-01/examples/getWorkspace.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-01-01/examples/getWorkspace.json @@ -33,7 +33,8 @@ "identityClientId": "" } }, - "hbiWorkspace": false + "hbiWorkspace": false, + "serviceProvisionedResourceGroup": "testworkspace_0000111122223333" } } } diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-01-01/machineLearningServices.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-01-01/machineLearningServices.json index b4ab6015b709..1336b63c5e89 100644 --- a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-01-01/machineLearningServices.json +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-01-01/machineLearningServices.json @@ -112,6 +112,7 @@ ], "description": "Creates or updates a workspace with the specified parameters.", "operationId": "Workspaces_CreateOrUpdate", + "x-ms-long-running-operation": true, "x-ms-examples": { "Create Workspace": { "$ref": "./examples/createWorkspace.json" @@ -153,6 +154,12 @@ "$ref": "#/definitions/Workspace" } }, + "202": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, "default": { "description": "Error response describing why the operation failed", "schema": { @@ -1461,6 +1468,11 @@ "type": "boolean", "description": "The flag to signal HBI data in the workspace and reduce diagnostic data collected by the service", "default": false + }, + "serviceProvisionedResourceGroup": { + "type": "string", + "description": "The name of the managed resource group created by workspace RP in customer subscription if the workspace is CMK workspace", + "readOnly": true } } }, @@ -1931,7 +1943,6 @@ }, "identity": { "$ref": "#/definitions/Identity", - "readOnly": true, "description": "The identity of the resource." }, "location": { diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListSkus.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListSkus.json new file mode 100644 index 000000000000..38d64c4de09e --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListSkus.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "{subscription-id}" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "workspaces", + "name": "Basic", + "tier": "Basic", + "locations": [ + "westus" + ], + "locationInfo": [ + { + "location": "westus", + "zones": [ + "westus-AZ02", + "westus-AZ01" + ] + } + ], + "capabilities": [ + { + "name": "automatedml_readhyperdrivesdk", + "value": "{\n \"id\": \"automatedml_ readhyperdrivesdk\",\n \"name\": \"Read hyperdrive SDK\",\n \"description\": \"Read only access to Hyperdrive in the SDK\"\n}" + }, + { + "name": "workspace_upgradeworkspacesdk", + "value": "{\n \"id\": \"workspace_upgradeworkspacesdk\",\n \"name\": \"Upgrade workspace SDK\",\n \"description\": \"Upgrade workspace from Basic to enterprise from the SDK\"\n}" + } + ], + "restrictions": [] + }, + { + "resourceType": "workspaces", + "name": "Enterprise", + "tier": "Enterprise", + "locations": [ + "westus" + ], + "locationInfo": [ + { + "location": "westus", + "zones": [ + "westus-AZ01" + ], + "zoneDetails": [ + { + "name": [ + "westus-AZ01" + ], + "capabilities": [ + { + "name": "automatedml_createeditexperimentssdk", + "value": "{\n \"id\": \"automatedml_createeditexperimentssdk\",\n \"name\": \"Create edit experiments SDK\",\n \"description\": \"Create, edit or delete AutoML experiments in the SDK\"\n}" + } + ] + } + ] + } + ], + "capabilities": [ + { + "name": "automatedml_createeditexperimentssdk", + "value": "{\n \"id\": \"automatedml_createeditexperimentssdk\",\n \"name\": \"Create edit experiments SDK\",\n \"description\": \"Create, edit or delete AutoML experiments in the SDK\"\n}" + } + ], + "restrictions": [] + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListUsages.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListUsages.json new file mode 100644 index 000000000000..cdeefc855b53 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListUsages.json @@ -0,0 +1,400 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages", + "type": "Microsoft.MachineLearningServices/totalCores/usages", + "currentValue": 7, + "limit": 100, + "name": { + "localizedValue": "Clusters", + "value": "Clusters" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages", + "type": "Microsoft.MachineLearningServices/dedicatedCores/usages", + "currentValue": 14, + "limit": 24, + "name": { + "localizedValue": "Total Cluster Dedicated Regional vCPUs", + "value": "Total Cluster Dedicated Regional vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 48, + "name": { + "localizedValue": "Standard D Family Cluster Dedicated vCPUs", + "value": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 2, + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/usages/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/usages", + "currentValue": 2, + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/computes/demo_cluster1_dsv2/usages/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/computes/usages", + "currentValue": 2, + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/computes/demo_cluster2_dsv2/usages/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/computes/usages", + "currentValue": 0, + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 24, + "name": { + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs", + "value": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 24, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 12, + "limit": 24, + "name": { + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs", + "value": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/usages", + "currentValue": 6, + "limit": 24, + "name": { + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs", + "value": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/computes/demo_cluster1_nc/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/computes/usages", + "currentValue": 6, + "limit": 24, + "name": { + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs", + "value": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/usages", + "currentValue": 6, + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/computes/demo_cluser1_nc/usages/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/computes/usages", + "currentValue": 6, + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 0, + "name": { + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs", + "value": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 0, + "name": { + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs", + "value": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 0, + "name": { + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs", + "value": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": 24, + "name": { + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs", + "value": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages", + "type": "Microsoft.MachineLearningServices/lowPriorityCores/usages", + "currentValue": 18, + "limit": 50, + "name": { + "localizedValue": "Total Cluster LowPriority Regional vCPUs", + "value": "Total Cluster LowPriority Regional vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_D_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "value": "Standard D Family Cluster LowPriority vCPUs", + "localizedValue": "Standard D Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_DSv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard DSv2 Family Cluster LowPriority vCPUs", + "value": "Standard DSv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_Dv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard Dv2 Family Cluster LowPriority vCPUs", + "value": "Standard Dv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_FSv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard FSv2 Family Cluster LowPriority vCPUs", + "value": "Standard FSv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 18, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/usages", + "currentValue": 6, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/computes/demo_cluster1_lowPriority_nc/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/computes/usages", + "currentValue": 6, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/usages", + "currentValue": 12, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/computes/demo_cluster2_lowPriority_nc/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/computes/usages", + "currentValue": 6, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/computes/demo_cluster3_lowPriority_nc/usages/Standard_NC_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/workspace/computes/usages", + "currentValue": 6, + "limit": -1, + "name": { + "localizedValue": "Standard NC Family Cluster LowPriority vCPUs", + "value": "Standard NC Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NCv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard NCv2 Family Cluster LowPriority vCPUs", + "value": "Standard NCv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NCv3_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard NCv3 Family Cluster LowPriority vCPUs", + "value": "Standard NCv3 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_ND_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard ND Family Cluster LowPriority vCPUs", + "value": "Standard ND Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NDv2_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard NDv2 Family Cluster LowPriority vCPUs", + "value": "Standard NDv2 Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/usages/Standard_NV_Family_Cluster_LowPriority_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/usages", + "currentValue": 0, + "limit": -1, + "name": { + "localizedValue": "Standard NV Family Cluster LowPriority vCPUs", + "value": "Standard NV Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListVMSizesResult.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListVMSizesResult.json new file mode 100644 index 000000000000..b028e1cd3cc8 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListVMSizesResult.json @@ -0,0 +1,455 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "api-version": "2020-03-01", + "location": "eastus" + }, + "responses": { + "200": { + "body": { + "amlCompute": [ + { + "name": "Standard_F2s_v2", + "family": "standardFSv2Family", + "vCPUs": 2, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 16384, + "memoryGB": 4.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F4s_v2", + "family": "standardFSv2Family", + "vCPUs": 4, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 32768, + "memoryGB": 8.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F8s_v2", + "family": "standardFSv2Family", + "vCPUs": 8, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 65536, + "memoryGB": 16.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F16s_v2", + "family": "standardFSv2Family", + "vCPUs": 16, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 131072, + "memoryGB": 32.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F32s_v2", + "family": "standardFSv2Family", + "vCPUs": 32, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 262144, + "memoryGB": 64.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F64s_v2", + "family": "standardFSv2Family", + "vCPUs": 64, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 524288, + "memoryGB": 128.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_F72s_v2", + "family": "standardFSv2Family", + "vCPUs": 72, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 589824, + "memoryGB": 144.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_D1_v2", + "family": "standardDv2Family", + "vCPUs": 1, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 51200, + "memoryGB": 3.5, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D2_v2", + "family": "standardDv2Family", + "vCPUs": 2, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 102400, + "memoryGB": 7.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D3_v2", + "family": "standardDv2Family", + "vCPUs": 4, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 204800, + "memoryGB": 14.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D4_v2", + "family": "standardDv2Family", + "vCPUs": 8, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 409600, + "memoryGB": 28.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D11_v2", + "family": "standardDv2Family", + "vCPUs": 2, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 102400, + "memoryGB": 14.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D12_v2", + "family": "standardDv2Family", + "vCPUs": 4, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 204800, + "memoryGB": 28.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D13_v2", + "family": "standardDv2Family", + "vCPUs": 8, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 409600, + "memoryGB": 56.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_D14_v2", + "family": "standardDv2Family", + "vCPUs": 16, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 819200, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_DS1_v2", + "family": "standardDSv2Family", + "vCPUs": 1, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 7168, + "memoryGB": 3.5, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS2_v2", + "family": "standardDSv2Family", + "vCPUs": 2, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 14336, + "memoryGB": 7.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS3_v2", + "family": "standardDSv2Family", + "vCPUs": 4, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 28672, + "memoryGB": 14.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS4_v2", + "family": "standardDSv2Family", + "vCPUs": 8, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 57344, + "memoryGB": 28.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS5_v2", + "family": "standardDSv2Family", + "vCPUs": 16, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 114688, + "memoryGB": 56.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS11_v2", + "family": "standardDSv2Family", + "vCPUs": 2, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 28672, + "memoryGB": 14.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS12_v2", + "family": "standardDSv2Family", + "vCPUs": 4, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 57344, + "memoryGB": 28.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS13_v2", + "family": "standardDSv2Family", + "vCPUs": 8, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 114688, + "memoryGB": 56.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS14_v2", + "family": "standardDSv2Family", + "vCPUs": 16, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 229376, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_DS15_v2", + "family": "standardDSv2Family", + "vCPUs": 20, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 286720, + "memoryGB": 140.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC6s_v2", + "family": "standardNCSv2Family", + "vCPUs": 6, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 344064, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC12s_v2", + "family": "standardNCSv2Family", + "vCPUs": 12, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 688128, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC24rs_v2", + "family": "standardNCSv2Family", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC24s_v2", + "family": "standardNCSv2Family", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC6s_v3", + "family": "standardNCSv3Family", + "vCPUs": 6, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 344064, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC12s_v3", + "family": "standardNCSv3Family", + "vCPUs": 12, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 688128, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC24rs_v3", + "family": "standardNCSv3Family", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC24s_v3", + "family": "standardNCSv3Family", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_NC6", + "family": "standardNCFamily", + "vCPUs": 6, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 389120, + "memoryGB": 56.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NC12", + "family": "standardNCFamily", + "vCPUs": 12, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 696320, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NC24", + "family": "standardNCFamily", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1474560, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NC24r", + "family": "standardNCFamily", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1474560, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NV6", + "family": "standardNVFamily", + "vCPUs": 6, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 389120, + "memoryGB": 56.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NV12", + "family": "standardNVFamily", + "vCPUs": 12, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 696320, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_NV24", + "family": "standardNVFamily", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1474560, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": false + }, + { + "name": "Standard_ND6s", + "family": "standardNDSFamily", + "vCPUs": 6, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 344064, + "memoryGB": 112.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_ND12s", + "family": "standardNDSFamily", + "vCPUs": 12, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 688128, + "memoryGB": 224.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_ND24rs", + "family": "standardNDSFamily", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + }, + { + "name": "Standard_ND24s", + "family": "standardNDSFamily", + "vCPUs": 24, + "osVhdSizeMB": 1047552, + "maxResourceVolumeMB": 1376256, + "memoryGB": 448.0, + "lowPriorityCapable": true, + "premiumIO": true + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListWorkspaceFeatures.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListWorkspaceFeatures.json new file mode 100644 index 000000000000..580620035090 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListWorkspaceFeatures.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "myResourceGroup", + "workspaceName": "testworkspace" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "automatedml_createeditexperimentsui", + "displayName": "Create edit experiments UI", + "description": "Create, edit or delete AutoML experiments in the SDK" + }, + { + "id": "workspace_upgradeworkspaceui", + "displayName": "Upgrade workspace UI", + "description": "Upgrade workspace from Basic to enterprise from the UI" + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListWorkspaceQuotasByVMFamily.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListWorkspaceQuotasByVMFamily.json new file mode 100644 index 000000000000..8d352d678eb6 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/ListWorkspaceQuotasByVMFamily.json @@ -0,0 +1,415 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 48, + "name": { + "localizedValue": "Standard D Family Cluster Dedicated vCPUs", + "value": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard D Family Cluster Dedicated vCPUs", + "localizedValue": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard D Family Cluster Dedicated vCPUs", + "localizedValue": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_D_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard D Family Cluster Dedicated vCPUs", + "localizedValue": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quota", + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard DSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard DSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 24, + "name": { + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs", + "value": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard Dv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard Dv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_Dv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard Dv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard Dv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 24, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_FSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 12, + "name": { + "value": "Standard FSv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard FSv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 24, + "name": { + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs", + "value": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NC_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NC Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NC Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 0, + "name": { + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs", + "value": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NCv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 0, + "name": { + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs", + "value": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv3 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv3 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NCv3_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NCv3 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NCv3 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 0, + "name": { + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs", + "value": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard ND Family Cluster Dedicated vCPUs", + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard ND Family Cluster Dedicated vCPUs", + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_ND_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard ND Family Cluster Dedicated vCPUs", + "localizedValue": "Standard ND Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NDv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 0, + "name": { + "value": "Standard NDv2 Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NDv2 Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/quotas/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/vmFamily/quotas", + "limit": 24, + "name": { + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs", + "value": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NV Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NV Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace3/quotas/Standard_NV_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 24, + "name": { + "value": "Standard NV Family Cluster Dedicated vCPUs", + "localizedValue": "Standard NV Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/amlComputeListNodes.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/amlComputeListNodes.json new file mode 100644 index 000000000000..bf422bf16f77 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/amlComputeListNodes.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "computeType": "AmlCompute", + "nodes": [ + { + "nodeId": "tvm-3601533753_1-20170719t162906z", + "privateIpAddress": "13.84.190.124", + "publicIpAddress": "13.84.190.134", + "port": 50000, + "nodeState": "running", + "runId": "2f378a44-38f2-443a-9f0d-9909d0b47890" + }, + { + "nodeId": "tvm-3601533753_2-20170719t162906z", + "privateIpAddress": "13.84.190.124", + "publicIpAddress": "13.84.190.134", + "port": 50001, + "nodeState": "idle" + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/createBasicAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/createBasicAKSCompute.json new file mode 100644 index 000000000000..3593ab691c22 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/createBasicAKSCompute.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-03-01", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "AKS" + } + } + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AKS", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AKS", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/createBasicAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/createBasicAmlCompute.json new file mode 100644 index 000000000000..b2dc9a2db2f4 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/createBasicAmlCompute.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-03-01", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "properties": { + "vmSize": "STANDARD_NC6", + "vmPriority": "Dedicated", + "scaleSettings": { + "maxNodeCount": 1, + "minNodeCount": 0, + "nodeIdleTimeBeforeScaleDown": "PT5M" + }, + "remoteLoginPortPublicAccess": "NotSpecified" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/createBasicDataFactoryCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/createBasicDataFactoryCompute.json new file mode 100644 index 000000000000..81c9b689aae5 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/createBasicDataFactoryCompute.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-03-01", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "DataFactory" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "DataFactory", + "provisioningState": "Creating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "computeType": "DataFactory", + "provisioningState": "Creating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/createWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/createWorkspace.json new file mode 100644 index 000000000000..6f1de6f5b9f2 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/createWorkspace.json @@ -0,0 +1,140 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2020-03-01", + "parameters": { + "location": "eastus2euap", + "sku": { + "name": "Basic", + "tier": "Basic" + }, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "friendlyName": "HelloName", + "description": "test description", + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "encryption": { + "status": "Enabled", + "keyVaultProperties": { + "keyVaultArmId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "keyIdentifier": "https://testkv.vault.azure.net/keys/testkey/aabbccddee112233445566778899aabb", + "identityClientId": "" + } + }, + "hbiWorkspace": false, + "sharedPrivateLinkResources": [ + { + "name": "testdbresource", + "properties": { + "privateLinkResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.DocumentDB/databaseAccounts/testdbresource/privateLinkResources/Sql", + "groupId": "Sql", + "requestMessage": "Please approve", + "status": "Approved" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "identity": { + "principalId": "00000000-1111-2222-3333-444444444444", + "tenantId": "00000000-1111-2222-3333-444444444444", + "type": "SystemAssigned" + }, + "sku": { + "name": "Basic", + "tier": "Basic" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description", + "encryption": { + "status": "Enabled", + "keyVaultProperties": { + "keyVaultArmId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "keyIdentifier": "https://testkv.vault.azure.net/keys/testkey/aabbccddee112233445566778899aabb", + "identityClientId": "" + } + }, + "hbiWorkspace": false, + "allowPublicAccessWhenBehindVnet": false, + "sharedPrivateLinkResources": [ + { + "name": "testdbresource", + "properties": { + "privateLinkResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.DocumentDB/databaseAccounts/testdbresource/privateLinkResources/Sql", + "groupId": "Sql", + "requestMessage": "Please approve", + "status": "Approved" + } + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Basic", + "tier": "Basic" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description", + "encryption": { + "status": "Enabled", + "keyVaultProperties": { + "keyVaultArmId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "keyIdentifier": "https://testkv.vault.azure.net/keys/testkey/aabbccddee112233445566778899aabb", + "identityClientId": "" + } + }, + "hbiWorkspace": false, + "allowPublicAccessWhenBehindVnet": false, + "sharedPrivateLinkResources": [ + { + "name": "testdbresource", + "properties": { + "privateLinkResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.DocumentDB/databaseAccounts/testdbresource/privateLinkResources/Sql", + "groupId": "Sql", + "requestMessage": "Please approve", + "status": "Approved" + } + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/deleteCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/deleteCompute.json new file mode 100644 index 000000000000..0c62d5a99ac4 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/deleteCompute.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-03-01", + "underlyingResourceAction": "Delete" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus...", + "Location": "https://management.azure.com/subscriptions/...pathToOperationResult..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/deleteWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/deleteWorkspace.json new file mode 100644 index 000000000000..9b433ad2b4c6 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/deleteWorkspace.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2020-03-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getAKSCompute.json new file mode 100644 index 000000000000..6c84edb3d88e --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getAKSCompute.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getAmlCompute.json new file mode 100644 index 000000000000..0070b3bed219 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getAmlCompute.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "createdOn": "2017-09-26T22:28:08.327Z", + "provisioningState": "Succeeded", + "properties": { + "vmSize": "STANDARD_NC6", + "vmPriority": "Dedicated", + "subnet": "test-subnet-resource-id", + "scaleSettings": { + "maxNodeCount": 1, + "minNodeCount": 0, + "nodeIdleTimeBeforeScaleDown": "PT5M" + }, + "remoteLoginPortPublicAccess": "Enabled", + "allocationState": "Resizing", + "allocationStateTransitionTime": "2017-09-27T22:28:08.998Z", + "errors": null, + "currentNodeCount": 0, + "targetNodeCount": 1, + "nodeStateCounts": { + "preparingNodeCount": 0, + "runningNodeCount": 0, + "idleNodeCount": 0, + "unusableNodeCount": 0, + "leavingNodeCount": 0, + "preemptedNodeCount": 0 + } + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getComputes.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getComputes.json new file mode 100644 index 000000000000..ce37e26e1627 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getComputes.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute1234", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute1234", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute1234-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Succeeded" + } + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getWorkspace.json new file mode 100644 index 000000000000..045fd3332604 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getWorkspace.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Enterprise", + "tier": "Enterprise" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description", + "encryption": { + "status": "Enabled", + "keyVaultProperties": { + "keyVaultArmId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "keyIdentifier": "https://testkv.vault.azure.net/keys/testkey/aabbccddee112233445566778899aabb", + "identityClientId": "" + } + }, + "hbiWorkspace": false, + "serviceProvisionedResourceGroup": "testworkspace_0000111122223333", + "privateLinkCount": 0, + "allowPublicAccessWhenBehindVnet": false, + "imageBuildCompute": "testcompute", + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/privateEndpointConnections/testprivatelinkconnection", + "name": "testprivatelinkconnection", + "type": "Microsoft.MachineLearningServices/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + ], + "sharedPrivateLinkResources": [ + { + "name": "testcosmosdbresource", + "properties": { + "privateLinkResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.DocumentDB/databaseAccounts/testcosmosdbresource/privateLinkResources/Sql", + "groupId": "Sql", + "requestMessage": "Please approve", + "status": "Approved" + } + } + ] + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getWorkspacesByResourceGroup.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getWorkspacesByResourceGroup.json new file mode 100644 index 000000000000..c028c686089e --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getWorkspacesByResourceGroup.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Basic", + "tier": "Basic" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace1", + "name": "testworkspace1", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Basic", + "tier": "Basic" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistryNew", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkvNew", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccountOld", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName 1", + "description": "test description" + } + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getWorkspacesBySubscription.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getWorkspacesBySubscription.json new file mode 100644 index 000000000000..c12f24c3a78f --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/getWorkspacesBySubscription.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Enterprise", + "tier": "Enterprise" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-5678/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Enterprise", + "tier": "Enterprise" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistryNew", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkvNew", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccountOld", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "HelloName", + "description": "test description" + } + } + ], + "nextLink": "nextLink" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/listKeysAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/listKeysAKSCompute.json new file mode 100644 index 000000000000..ac102dbef366 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/listKeysAKSCompute.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "computeType": "AKS", + "userKubeConfig": "user kube config...", + "adminKubeConfig": "admin kube config...", + "imagePullSecretName": "the image pull secret name" + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/listWorkspaceKeys.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/listWorkspaceKeys.json new file mode 100644 index 000000000000..298a3d18e5ce --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/listWorkspaceKeys.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "userStorageKey": "r5rKCJ018TLk+bdAi/9YaVzgcQ0nkLsUqGyUN03KsdCFtqG0SjFGPV8+vT1frWqkvBL0bGoPpLc1BlZSSaZmOA==", + "userStorageResourceId": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/ragargeastus2euap/providers/Microsoft.Storage/storageAccounts/testdemoworkazashomr", + "appInsightsInstrumentationKey": null, + "containerRegistryCredentials": { + "location": null, + "username": "testdemoworkjmjmeykp", + "passwords": [ + { + "name": "password", + "value": "vBvVhYgAGtUSewVCUv3w95p4/q5Yrsnw" + }, + { + "name": "password2", + "value": "0KARRQoQHSUq1yViPWg7YFernOS=Ic/t" + } + ] + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/patchAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/patchAmlCompute.json new file mode 100644 index 000000000000..869dcacec863 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/patchAmlCompute.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-03-01", + "parameters": { + "properties": { + "scaleSettings": { + "maxNodeCount": 4, + "minNodeCount": 4, + "nodeIdleTimeBeforeScaleDown": "PT5M" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "provisioningState": "Updating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/resyncWorkspaceKeys.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/resyncWorkspaceKeys.json new file mode 100644 index 000000000000..691fa053dcbe --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/resyncWorkspaceKeys.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "api-version": "2020-03-01" + }, + "responses": { + "200": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/updateAKSCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/updateAKSCompute.json new file mode 100644 index 000000000000..bdd7cdb26f09 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/updateAKSCompute.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-03-01", + "parameters": { + "id": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "properties": { + "agentCount": 4 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Updating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus", + "properties": { + "description": "some compute", + "resourceId": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourcegroups/testrg123/providers/Microsoft.ContainerService/managedClusters/compute123-56826-c9b00420020b2", + "computeType": "AKS", + "provisioningState": "Updating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/updateAmlCompute.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/updateAmlCompute.json new file mode 100644 index 000000000000..33fc388db6d9 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/updateAmlCompute.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "testrg123", + "workspaceName": "workspaces123", + "computeName": "compute123", + "api-version": "2020-03-01", + "parameters": { + "location": "eastus", + "properties": { + "computeType": "AmlCompute", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "properties": { + "scaleSettings": { + "maxNodeCount": 4, + "minNodeCount": 4, + "nodeIdleTimeBeforeScaleDown": "PT5M" + } + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "provisioningState": "Updating" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/testrg123/providers/Microsoft.MachineLearningServices/workspaces/workspaces123/computes/compute123", + "type": "Microsoft.MachineLearningServices/workspaces/computes", + "name": "compute123", + "location": "eastus2", + "properties": { + "description": "some compute", + "computeType": "AmlCompute", + "provisioningState": "Updating" + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/...pathToOperationStatus..." + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/updateQuota.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/updateQuota.json new file mode 100644 index 000000000000..aaca8dcb2ec3 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/updateQuota.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "api-version": "2020-03-01", + "parameters": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 100, + "unit": "Count" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 200, + "unit": "Count" + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace1/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 100, + "unit": "Count", + "status": "Success" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.MachineLearningServices/workspaces/demo_workspace2/quotas/Standard_DSv2_Family_Cluster_Dedicated_vCPUs", + "type": "Microsoft.MachineLearningServices/workspaces/quotas", + "limit": 200, + "unit": "Count", + "status": "Success" + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/updateWorkspace.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/updateWorkspace.json new file mode 100644 index 000000000000..8b097ee2aeda --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/updateWorkspace.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "workspace-1234", + "workspaceName": "testworkspace", + "api-version": "2020-03-01", + "parameters": { + "sku": { + "name": "Enterprise", + "tier": "Enterprise" + }, + "properties": { + "friendlyName": "New friendly name", + "description": "new description" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace", + "name": "testworkspace", + "type": "Microsoft.MachineLearningServices/workspaces", + "location": "eastus2euap", + "sku": { + "name": "Enterprise", + "tier": "Enterprise" + }, + "properties": { + "containerRegistry": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.ContainerRegistry/registries/testRegistry", + "keyVault": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/Microsoft.KeyVault/vaults/testkv", + "applicationInsights": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/workspace-1234/providers/microsoft.insights/components/testinsights", + "storageAccount": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/accountcrud-1234/providers/Microsoft.Storage/storageAccounts/testStorageAccount", + "discoveryUrl": "http://example.com", + "creationTime": "2017-03-01T23:14:37.0707808Z", + "friendlyName": "New friendly name", + "description": "new description" + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/workspaceDeletePrivateEndpointConnection.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/workspaceDeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..5d42b9f60f62 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/workspaceDeletePrivateEndpointConnection.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg-1234", + "workspaceName": "testworkspace", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2020-03-01", + "monitor": "true" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/workspaceGetPrivateEndpointConnection.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/workspaceGetPrivateEndpointConnection.json new file mode 100644 index 000000000000..f7c835a59cdb --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/workspaceGetPrivateEndpointConnection.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg-1234", + "workspaceName": "testworkspace", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2020-03-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.MachineLearningServices/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/workspaceListPrivateLinkResources.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/workspaceListPrivateLinkResources.json new file mode 100644 index 000000000000..4ea136739207 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/workspaceListPrivateLinkResources.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg-1234", + "workspaceName": "testworkspace", + "api-version": "2020-03-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/privateLinkResources/amlworkspace", + "name": "amlworkspace", + "type": "Microsoft.Storage/workspaces/privateLinkResources", + "properties": { + "groupId": "amlworkspace", + "requiredMembers": [ + "default" + ] + } + } + ] + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/workspacePutPrivateEndpointConnection.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/workspacePutPrivateEndpointConnection.json new file mode 100644 index 000000000000..0f56bfbef7c8 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/examples/workspacePutPrivateEndpointConnection.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "rg-1234", + "workspaceName": "testworkspace", + "privateEndpointConnectionName": "{privateEndpointConnectionName}", + "api-version": "2020-03-01", + "monitor": "true", + "properties": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.MachineLearningServices/workspaces/testworkspace/privateEndpointConnections/{privateEndpointConnectionName}", + "name": "{privateEndpointConnectionName}", + "type": "Microsoft.MachineLearningServices/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/rg-1234/providers/Microsoft.Network/privateEndpoints/petest01" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/machineLearningServices.json b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/machineLearningServices.json new file mode 100644 index 000000000000..b5dede913fa4 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/Microsoft.MachineLearningServices/stable/2020-03-01/machineLearningServices.json @@ -0,0 +1,3316 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Machine Learning Workspaces", + "description": "These APIs allow end users to operate on Azure Machine Learning Workspace resources.", + "version": "2020-03-01" + }, + "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": { + "/providers/Microsoft.MachineLearningServices/operations": { + "get": { + "tags": [ + "Operation" + ], + "description": "Lists all of the available Azure Machine Learning Workspaces REST API operations.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Gets the properties of the specified machine learning workspace.", + "operationId": "Workspaces_Get", + "x-ms-examples": { + "Get Workspace": { + "$ref": "./examples/getWorkspace.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/Workspace" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "put": { + "tags": [ + "Workspaces" + ], + "description": "Creates or updates a workspace with the specified parameters.", + "operationId": "Workspaces_CreateOrUpdate", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create Workspace": { + "$ref": "./examples/createWorkspace.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The parameters for creating or updating a machine learning workspace.", + "required": true, + "schema": { + "$ref": "#/definitions/Workspace" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "201": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "202": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "delete": { + "tags": [ + "Workspaces" + ], + "description": "Deletes a machine learning workspace.", + "operationId": "Workspaces_Delete", + "x-ms-examples": { + "Delete Workspace": { + "$ref": "./examples/deleteWorkspace.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." + }, + "204": { + "description": "The machine learning workspace does not exist in the subscription." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "patch": { + "tags": [ + "Workspaces" + ], + "description": "Updates a machine learning workspace with the specified parameters.", + "operationId": "Workspaces_Update", + "x-ms-examples": { + "Update Workspace": { + "$ref": "./examples/updateWorkspace.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The parameters for updating a machine learning workspace.", + "required": true, + "schema": { + "$ref": "#/definitions/WorkspaceUpdateParameters" + } + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/features": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Lists all enabled features for a workspace", + "operationId": "WorkspaceFeatures_List", + "x-ms-examples": { + "List Workspace features": { + "$ref": "./examples/ListWorkspaceFeatures.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/ListAmlUserFeatureResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Lists all the available machine learning workspaces under the specified resource group.", + "operationId": "Workspaces_ListByResourceGroup", + "x-ms-examples": { + "Get Workspaces by Resource Group": { + "$ref": "./examples/getWorkspacesByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/PaginationParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/WorkspaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/listKeys": { + "post": { + "tags": [ + "Workspaces" + ], + "description": "Lists all the keys associated with this workspace. This includes keys for the storage account, app insights and password for container registry", + "operationId": "Workspaces_ListKeys", + "x-ms-examples": { + "List Workspace Keys": { + "$ref": "./examples/listWorkspaceKeys.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/ListWorkspaceKeysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/resyncKeys": { + "post": { + "tags": [ + "Workspaces" + ], + "description": "Resync all the keys associated with this workspace. This includes keys for the storage account, app insights and password for container registry", + "operationId": "Workspaces_ResyncKeys", + "x-ms-examples": { + "Resync Workspace Keys": { + "$ref": "./examples/resyncWorkspaceKeys.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." + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/usages": { + "get": { + "tags": [ + "Usage" + ], + "operationId": "Usages_List", + "description": "Gets the current 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/ListUsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Usages": { + "$ref": "./examples/ListUsages.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/vmSizes": { + "get": { + "tags": [ + "VirtualMachineSizes" + ], + "operationId": "VirtualMachineSizes_List", + "description": "Returns supported VM Sizes in a location", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location upon which virtual-machine-sizes is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VirtualMachineSizeListResult" + } + } + }, + "x-ms-examples": { + "List VM Sizes": { + "$ref": "./examples/ListVMSizesResult.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/updateQuotas": { + "post": { + "tags": [ + "Quota" + ], + "operationId": "Quotas_Update", + "description": "Update quota for each VM family in workspace.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location for update quota is queried.", + "pattern": "^[-\\w\\._]+$" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/QuotaUpdateParameters" + }, + "description": "Quota update parameters." + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful.", + "schema": { + "$ref": "#/definitions/UpdateWorkspaceQuotasResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-examples": { + "update quotas": { + "$ref": "./examples/updateQuota.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/locations/{location}/Quotas": { + "get": { + "tags": [ + "Quota" + ], + "operationId": "Quotas_List", + "description": "Gets the currently assigned Workspace Quotas based on VMFamily.", + "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/ListWorkspaceQuotas" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List workspace quotas by VMFamily": { + "$ref": "./examples/ListWorkspaceQuotasByVMFamily.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/workspaces": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Lists all the available machine learning workspaces under the specified subscription.", + "operationId": "Workspaces_ListBySubscription", + "x-ms-examples": { + "Get Workspaces by subscription": { + "$ref": "./examples/getWorkspacesBySubscription.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PaginationParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/WorkspaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes": { + "get": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "operationId": "MachineLearningCompute_ListByWorkspace", + "description": "Gets computes in specified workspace.", + "x-ms-examples": { + "Get Computes": { + "$ref": "./examples/getComputes.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/PaginationParameter" + } + ], + "responses": { + "200": { + "description": "The response includes a paginated array of Machine Learning computes and a URI to the next set of results, if any. For the more information the limits of the number of items in a resource group, see https://azure.microsoft.com/en-us/documentation/articles/azure-subscription-service-limits/.", + "schema": { + "$ref": "#/definitions/PaginatedComputeResourcesList" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}": { + "get": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_Get", + "description": "Gets compute definition by its name. Any secrets (storage keys, service credentials, etc) are not returned - use 'keys' nested resource to get them.", + "x-ms-examples": { + "Get a AKS Compute": { + "$ref": "./examples/getAKSCompute.json" + }, + "Get a AML Compute": { + "$ref": "./examples/getAmlCompute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/ComputeResource" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "put": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_CreateOrUpdate", + "description": "Creates or updates compute. This call will overwrite a compute if it exists. This is a nonrecoverable operation. If your intent is to create a new compute, do a GET first to verify that it does not exist yet.", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create a AML Compute": { + "$ref": "./examples/createBasicAmlCompute.json" + }, + "Create AKS Compute": { + "$ref": "./examples/createBasicAKSCompute.json" + }, + "Create a DataFactory Compute": { + "$ref": "./examples/createBasicDataFactoryCompute.json" + }, + "Update a AML Compute": { + "$ref": "./examples/updateAmlCompute.json" + }, + "Update a AKS Compute": { + "$ref": "./examples/updateAKSCompute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/ComputeDefinitionParameter" + } + ], + "responses": { + "200": { + "description": "Compute creation or update initiated.", + "schema": { + "$ref": "#/definitions/ComputeResource" + } + }, + "201": { + "description": "Compute creation or update initiated.", + "headers": { + "Azure-AsyncOperation": { + "description": "URI to poll for asynchronous operation status.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/ComputeResource" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "patch": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_Update", + "description": "Updates properties of a compute. This call will overwrite a compute if it exists. This is a nonrecoverable operation.", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a AmlCompute Compute": { + "$ref": "./examples/patchAmlCompute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterUpdateParameters" + }, + "description": "Additional parameters for cluster update." + } + ], + "responses": { + "200": { + "description": "Compute update initiated.", + "schema": { + "$ref": "#/definitions/ComputeResource" + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + }, + "delete": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_Delete", + "description": "Deletes specified Machine Learning compute.", + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete Compute": { + "$ref": "./examples/deleteCompute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/UnderlyingResourceActionParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly." + }, + "202": { + "description": "Compute deletion initiated.", + "headers": { + "Azure-AsyncOperation": { + "description": "URI to poll for asynchronous operation status.", + "type": "string" + }, + "Location": { + "description": "URI to poll for asynchronous operation result.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the request failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}/listNodes": { + "post": { + "tags": [ + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_ListNodes", + "description": "Get the details (e.g IP address, port etc) of all the compute nodes in the compute.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "The operation was successful. The response contains the list of IP addresses.", + "schema": { + "$ref": "#/definitions/AmlComputeNodesInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-examples": { + "Get compute nodes information for a compute": { + "$ref": "./examples/amlComputeListNodes.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/computes/{computeName}/listKeys": { + "post": { + "tags": [ + "OperationalizationClusters", + "MachineLearningComputes" + ], + "operationId": "MachineLearningCompute_ListKeys", + "description": "Gets secrets related to Machine Learning compute (storage keys, service credentials, etc).", + "x-ms-examples": { + "List AKS Compute Keys": { + "$ref": "./examples/listKeysAKSCompute.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ComputeNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success.", + "schema": { + "$ref": "#/definitions/ComputeSecrets" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.MachineLearningServices/workspaces/skus": { + "get": { + "tags": [ + "WorkspaceSkus" + ], + "description": "Lists all skus with associated features", + "operationId": "ListSkus", + "x-ms-examples": { + "List Skus": { + "$ref": "./examples/ListSkus.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful; the request was well-formed and received properly.", + "schema": { + "$ref": "#/definitions/SkuListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/MachineLearningServiceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "WorkspacePrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Get", + "description": "Gets the specified private endpoint connection associated with the workspace.", + "x-ms-examples": { + "WorkspaceGetPrivateEndpointConnection": { + "$ref": "./examples/workspaceGetPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Get the private endpoint connection properties successfully.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "WorkspacePrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Put", + "description": "Update the state of specified private endpoint connection associated with the workspace.", + "x-ms-examples": { + "WorkspacePutPrivateEndpointConnection": { + "$ref": "./examples/workspacePutPrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + }, + { + "$ref": "#/parameters/APIVersionParameter" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The private endpoint connection properties." + } + ], + "responses": { + "200": { + "description": "OK -- Update the private endpoint connection properties successfully.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "WorkspacePrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Delete", + "description": "Deletes the specified private endpoint connection associated with the workspace.", + "x-ms-examples": { + "WorkspaceDeletePrivateEndpointConnection": { + "$ref": "./examples/workspaceDeletePrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK -- Delete the private endpoint connection successfully." + }, + "204": { + "description": "No Content -- The private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.MachineLearningServices/workspaces/{workspaceName}/privateLinkResources": { + "get": { + "tags": [ + "WorkspacePrivateLinkResources" + ], + "operationId": "PrivateLinkResources_ListByWorkspace", + "description": "Gets the private link resources that need to be created for a workspace.", + "x-ms-examples": { + "WorkspaceListPrivateLinkResources": { + "$ref": "./examples/workspaceListPrivateLinkResources.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/APIVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + } + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "description": "Azure subscription identifier.", + "in": "path", + "type": "string", + "required": true + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "description": "Name of the resource group in which workspace is located.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "WorkspaceNameParameter": { + "name": "workspaceName", + "description": "Name of Azure Machine Learning workspace.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "ComputeNameParameter": { + "name": "computeName", + "description": "Name of the Azure Machine Learning compute.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "AsyncOperationIdParameter": { + "name": "asyncOperationId", + "description": "Identifier of an asynchronous Azure Machine Learning compute operation.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "LocationParameter": { + "name": "location", + "description": "The name of the Azure location/region.", + "in": "path", + "type": "string", + "required": true, + "x-ms-parameter-location": "method" + }, + "APIVersionParameter": { + "in": "query", + "name": "api-version", + "type": "string", + "description": "Version of Azure Machine Learning resource provider API.", + "required": true + }, + "PaginationParameter": { + "in": "query", + "name": "$skiptoken", + "type": "string", + "description": "Continuation token for pagination.", + "required": false, + "x-ms-parameter-location": "method" + }, + "ComputeDefinitionParameter": { + "in": "body", + "name": "parameters", + "description": "Payload with Machine Learning compute definition.", + "required": true, + "schema": { + "$ref": "#/definitions/ComputeResource" + }, + "x-ms-parameter-location": "method" + }, + "ComputeTypeParameter": { + "in": "query", + "name": "compute-type", + "type": "string", + "description": "Type of compute to filter by.", + "required": false, + "x-ms-parameter-location": "method" + }, + "UnderlyingResourceActionParameter": { + "in": "query", + "name": "underlyingResourceAction", + "type": "string", + "description": "Delete the underlying compute if 'Delete', or detach the underlying compute from workspace if 'Detach'.", + "required": true, + "enum": [ + "Delete", + "Detach" + ], + "x-ms-enum": { + "name": "UnderlyingResourceAction", + "modelAsString": true + }, + "x-ms-parameter-location": "method" + }, + "PrivateEndpointConnectionName": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint connection associated with the workspace", + "x-ms-parameter-location": "method" + } + }, + "definitions": { + "Operation": { + "description": "Azure Machine Learning workspace REST API operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "Display name of operation", + "properties": { + "provider": { + "description": "The resource provider name: Microsoft.MachineLearningExperimentation", + "type": "string" + }, + "resource": { + "description": "The resource on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "The operation that users can perform.", + "type": "string" + }, + "description": { + "description": "The description for the operation.", + "type": "string" + } + } + } + } + }, + "OperationListResult": { + "description": "An array of operations supported by the resource provider.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of AML workspace operations supported by the AML workspace resource provider." + } + } + }, + "Workspace": { + "type": "object", + "description": "An object that represents a machine learning workspace.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/WorkspaceProperties", + "description": "The properties of the machine learning workspace.", + "x-ms-client-flatten": true + } + } + }, + "WorkspaceProperties": { + "type": "object", + "description": "The properties of a machine learning workspace.", + "properties": { + "workspaceId": { + "description": "The immutable id associated with this workspace.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The description of this workspace.", + "type": "string" + }, + "friendlyName": { + "description": "The friendly name for this workspace. This name in mutable", + "type": "string" + }, + "creationTime": { + "format": "date-time", + "description": "The creation time of the machine learning workspace in ISO8601 format.", + "type": "string", + "readOnly": true + }, + "keyVault": { + "description": "ARM id of the key vault associated with this workspace. This cannot be changed once the workspace has been created", + "type": "string" + }, + "applicationInsights": { + "description": "ARM id of the application insights associated with this workspace. This cannot be changed once the workspace has been created", + "type": "string" + }, + "containerRegistry": { + "description": "ARM id of the container registry associated with this workspace. This cannot be changed once the workspace has been created", + "type": "string" + }, + "storageAccount": { + "description": "ARM id of the storage account associated with this workspace. This cannot be changed once the workspace has been created", + "type": "string" + }, + "discoveryUrl": { + "description": "Url for the discovery service to identify regional endpoints for machine learning experimentation services", + "type": "string" + }, + "provisioningState": { + "type": "string", + "enum": [ + "Unknown", + "Updating", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Canceled" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + }, + "readOnly": true, + "description": "The current deployment state of workspace resource. The provisioningState is to indicate states for resource provisioning." + }, + "encryption": { + "$ref": "#/definitions/EncryptionProperty", + "description": "The encryption settings of Azure ML workspace." + }, + "hbiWorkspace": { + "type": "boolean", + "description": "The flag to signal HBI data in the workspace and reduce diagnostic data collected by the service", + "default": false + }, + "serviceProvisionedResourceGroup": { + "type": "string", + "description": "The name of the managed resource group created by workspace RP in customer subscription if the workspace is CMK workspace", + "readOnly": true + }, + "privateLinkCount": { + "type": "integer", + "format": "int32", + "description": "Count of private connections in the workspace", + "readOnly": true + }, + "imageBuildCompute": { + "description": "The compute name for image build", + "type": "string" + }, + "allowPublicAccessWhenBehindVnet": { + "type": "boolean", + "description": "The flag to indicate whether to allow public access when behind VNet.", + "default": false + }, + "privateEndpointConnections": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The list of private endpoint connections in the workspace." + }, + "sharedPrivateLinkResources": { + "type": "array", + "items": { + "$ref": "#/definitions/SharedPrivateLinkResource" + }, + "description": "The list of shared private link resources in this workspace." + } + } + }, + "WorkspaceUpdateParameters": { + "description": "The parameters for updating a machine learning workspace.", + "properties": { + "tags": { + "description": "The resource tags for the machine learning workspace.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The sku of the workspace." + }, + "properties": { + "$ref": "#/definitions/WorkspacePropertiesUpdateParameters", + "description": "The properties that the machine learning workspace will be updated with.", + "x-ms-client-flatten": true + } + } + }, + "WorkspacePropertiesUpdateParameters": { + "description": "The parameters for updating the properties of a machine learning workspace.", + "properties": { + "description": { + "description": "The description of this workspace.", + "type": "string" + }, + "friendlyName": { + "description": "The friendly name for this workspace.", + "type": "string" + } + } + }, + "AmlUserFeature": { + "description": "Features enabled for a workspace", + "type": "object", + "properties": { + "id": { + "description": "Specifies the feature ID", + "type": "string" + }, + "displayName": { + "description": "Specifies the feature name ", + "type": "string" + }, + "description": { + "description": "Describes the feature for user experience", + "type": "string" + } + } + }, + "ListAmlUserFeatureResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/AmlUserFeature" + }, + "description": "The list of AML user facing features." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URI to fetch the next page of AML user features information. Call ListNext() with this to fetch the next page of AML user features information." + } + }, + "description": "The List Aml user feature operation response." + }, + "UsageName": { + "properties": { + "value": { + "readOnly": true, + "type": "string", + "description": "The name of the resource." + }, + "localizedValue": { + "readOnly": true, + "type": "string", + "description": "The localized name of the resource." + } + }, + "description": "The Usage Names." + }, + "Usage": { + "type": "object", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource ID." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource type." + }, + "unit": { + "readOnly": true, + "type": "string", + "description": "An enum describing the unit of usage measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "UsageUnit", + "modelAsString": true + } + }, + "currentValue": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The current usage of the resource." + }, + "limit": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The maximum permitted usage of the resource." + }, + "name": { + "readOnly": true, + "$ref": "#/definitions/UsageName", + "description": "The name of the type of usage." + } + }, + "description": "Describes AML Resource Usage." + }, + "ListUsagesResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "The list of AML resource usages." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URI to fetch the next page of AML resource usage information. Call ListNext() with this to fetch the next page of AML resource usage information." + } + }, + "description": "The List Usages operation response." + }, + "VirtualMachineSize": { + "properties": { + "name": { + "type": "string", + "title": "Virtual Machine size name", + "description": "The name of the virtual machine size.", + "readOnly": true + }, + "family": { + "type": "string", + "title": "Virtual Machine family name", + "description": "The family name of the virtual machine size.", + "readOnly": true + }, + "vCPUs": { + "type": "integer", + "format": "int32", + "title": "Number of vPUs", + "description": "The number of vCPUs supported by the virtual machine size.", + "readOnly": true + }, + "gpus": { + "type": "integer", + "format": "int32", + "title": "Number of gPUs", + "description": "The number of gPUs supported by the virtual machine size.", + "readOnly": true + }, + "osVhdSizeMB": { + "type": "integer", + "format": "int32", + "title": "OS VHD Disk size", + "description": "The OS VHD disk size, in MB, allowed by the virtual machine size.", + "readOnly": true + }, + "maxResourceVolumeMB": { + "type": "integer", + "format": "int32", + "title": "Resource volume size", + "description": "The resource volume size, in MB, allowed by the virtual machine size.", + "readOnly": true + }, + "memoryGB": { + "type": "number", + "format": "double", + "title": "Memory size", + "description": "The amount of memory, in GB, supported by the virtual machine size.", + "readOnly": true + }, + "lowPriorityCapable": { + "type": "boolean", + "title": "Low priority capable", + "description": "Specifies if the virtual machine size supports low priority VMs.", + "readOnly": true + }, + "premiumIO": { + "type": "boolean", + "title": "Premium IO supported", + "description": "Specifies if the virtual machine size supports premium IO.", + "readOnly": true + } + }, + "description": "Describes the properties of a VM size." + }, + "VirtualMachineSizeListResult": { + "properties": { + "amlCompute": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualMachineSize" + }, + "description": "The list of virtual machine sizes supported by AmlCompute." + } + }, + "description": "The List Virtual Machine size operation response." + }, + "WorkspaceListResult": { + "description": "The result of a request to list machine learning workspaces.", + "properties": { + "value": { + "description": "The list of machine learning workspaces. Since this list may be incomplete, the nextLink field should be used to request the next list of machine learning workspaces.", + "type": "array", + "items": { + "$ref": "#/definitions/Workspace" + } + }, + "nextLink": { + "description": "The URI that can be used to request the next list of machine learning workspaces.", + "type": "string" + } + } + }, + "QuotaBaseProperties": { + "properties": { + "id": { + "type": "string", + "description": "Specifies the resource ID." + }, + "type": { + "type": "string", + "description": "Specifies the resource type." + }, + "limit": { + "type": "integer", + "format": "int64", + "title": "Limit.", + "description": "The maximum permitted quota of the resource." + }, + "unit": { + "type": "string", + "description": "An enum describing the unit of quota measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "QuotaUnit", + "modelAsString": true + } + } + }, + "description": "The properties for Quota update or retrieval." + }, + "QuotaUpdateParameters": { + "properties": { + "value": { + "description": "The list for update quota.", + "type": "array", + "items": { + "$ref": "#/definitions/QuotaBaseProperties" + } + } + }, + "description": "Quota update parameters." + }, + "UpdateWorkspaceQuotasResult": { + "properties": { + "value": { + "description": "The list of workspace quota update result.", + "items": { + "$ref": "#/definitions/UpdateWorkspaceQuotas" + }, + "readOnly": true, + "type": "array" + }, + "nextLink": { + "description": "The URI to fetch the next page of workspace quota update result. Call ListNext() with this to fetch the next page of Workspace Quota update result.", + "readOnly": true, + "type": "string" + } + }, + "description": "The result of update workspace quota." + }, + "UpdateWorkspaceQuotas": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource ID." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource type." + }, + "limit": { + "type": "integer", + "format": "int64", + "title": "Limit.", + "description": "The maximum permitted quota of the resource." + }, + "unit": { + "readOnly": true, + "type": "string", + "description": "An enum describing the unit of quota measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "QuotaUnit", + "modelAsString": true + } + }, + "status": { + "type": "string", + "readOnly": false, + "title": "Update Workspace Quota Status.", + "description": "Status of update workspace quota.", + "enum": [ + "Undefined", + "Success", + "Failure", + "InvalidQuotaBelowClusterMinimum", + "InvalidQuotaExceedsSubscriptionLimit", + "InvalidVMFamilyName", + "OperationNotSupportedForSku", + "OperationNotEnabledForRegion" + ], + "x-ms-enum": { + "name": "status", + "modelAsString": true + } + } + }, + "description": "The properties for update Quota response." + }, + "ResourceName": { + "properties": { + "value": { + "readOnly": true, + "type": "string", + "description": "The name of the resource." + }, + "localizedValue": { + "readOnly": true, + "type": "string", + "description": "The localized name of the resource." + } + }, + "description": "The Resource Name." + }, + "ResourceQuota": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource ID." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Specifies the resource type." + }, + "name": { + "$ref": "#/definitions/ResourceName", + "description": "Name of the resource.", + "readOnly": true + }, + "limit": { + "readOnly": true, + "type": "integer", + "format": "int64", + "title": "Limit.", + "description": "The maximum permitted quota of the resource." + }, + "unit": { + "readOnly": true, + "type": "string", + "description": "An enum describing the unit of quota measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "QuotaUnit", + "modelAsString": true + } + } + }, + "description": "The quota assigned to a resource." + }, + "ListWorkspaceQuotas": { + "properties": { + "value": { + "description": "The list of Workspace Quotas by VM Family", + "items": { + "$ref": "#/definitions/ResourceQuota" + }, + "readOnly": true, + "type": "array" + }, + "nextLink": { + "description": "The URI to fetch the next page of workspace quota information by VM Family. Call ListNext() with this to fetch the next page of Workspace Quota information.", + "readOnly": true, + "type": "string" + } + }, + "description": "The List WorkspaceQuotasByVMFamily operation response." + }, + "Identity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of resource identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of resource." + }, + "type": { + "type": "string", + "description": "The identity type.", + "enum": [ + "SystemAssigned" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + } + }, + "description": "Identity for the resource." + }, + "Resource": { + "description": "Azure Resource Manager resource envelope.", + "x-ms-azure-resource": true, + "properties": { + "id": { + "description": "Specifies the resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Specifies the name of the resource.", + "type": "string", + "readOnly": true + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the resource." + }, + "location": { + "description": "Specifies the location of the resource.", + "type": "string" + }, + "type": { + "description": "Specifies the type of the resource.", + "type": "string", + "readOnly": true + }, + "tags": { + "description": "Contains resource tags defined as key/value pairs.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The sku of the workspace." + } + } + }, + "ResourceId": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the resource" + } + }, + "required": [ + "id" + ], + "description": "Represents a resource ID. For example, for a subnet, it is the resource URL for the subnet.", + "x-ms-azure-resource": true + }, + "ListWorkspaceKeysResult": { + "type": "object", + "properties": { + "userStorageKey": { + "readOnly": true, + "type": "string" + }, + "userStorageResourceId": { + "readOnly": true, + "type": "string" + }, + "appInsightsInstrumentationKey": { + "readOnly": true, + "type": "string" + }, + "containerRegistryCredentials": { + "readOnly": true, + "$ref": "#/definitions/RegistryListCredentialsResult" + } + } + }, + "RegistryListCredentialsResult": { + "type": "object", + "properties": { + "location": { + "readOnly": true, + "type": "string" + }, + "username": { + "readOnly": true, + "type": "string" + }, + "passwords": { + "type": "array", + "items": { + "$ref": "#/definitions/Password" + } + } + } + }, + "Password": { + "type": "object", + "properties": { + "name": { + "readOnly": true, + "type": "string" + }, + "value": { + "readOnly": true, + "type": "string" + } + } + }, + "PaginatedComputeResourcesList": { + "type": "object", + "description": "Paginated list of Machine Learning compute objects wrapped in ARM resource envelope.", + "properties": { + "value": { + "type": "array", + "description": "An array of Machine Learning compute objects wrapped in ARM resource envelope.", + "items": { + "$ref": "#/definitions/ComputeResource" + } + }, + "nextLink": { + "type": "string", + "description": "A continuation link (absolute URI) to the next page of results in the list." + } + } + }, + "ComputeResource": { + "type": "object", + "description": "Machine Learning compute object wrapped into ARM resource envelope.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + }, + { + "type": "object", + "properties": { + "properties": { + "description": "Compute properties", + "$ref": "#/definitions/Compute" + } + } + } + ] + }, + "Compute": { + "type": "object", + "description": "Machine Learning compute object.", + "discriminator": "computeType", + "properties": { + "computeType": { + "description": "The type of compute", + "$ref": "#/definitions/ComputeType" + }, + "computeLocation": { + "description": "Location for the underlying compute", + "type": "string" + }, + "provisioningState": { + "type": "string", + "description": "The provision state of the cluster. Valid values are Unknown, Updating, Provisioning, Succeeded, and Failed.", + "enum": [ + "Unknown", + "Updating", + "Creating", + "Deleting", + "Succeeded", + "Failed", + "Canceled" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + }, + "readOnly": true + }, + "description": { + "type": "string", + "description": "The description of the Machine Learning compute." + }, + "createdOn": { + "type": "string", + "description": "The date and time when the compute was created.", + "format": "date-time", + "readOnly": true + }, + "modifiedOn": { + "type": "string", + "description": "The date and time when the compute was last modified.", + "format": "date-time", + "readOnly": true + }, + "resourceId": { + "type": "string", + "description": "ARM resource id of the underlying compute" + }, + "provisioningErrors": { + "type": "array", + "description": "Errors during provisioning", + "items": { + "$ref": "#/definitions/MachineLearningServiceError" + }, + "readOnly": true + }, + "isAttachedCompute": { + "type": "boolean", + "description": "Indicating whether the compute was provisioned by user and brought from outside if true, or machine learning service provisioned it if false.", + "readOnly": true + } + }, + "required": [ + "computeType" + ] + }, + "AKS": { + "description": "A Machine Learning compute based on AKS.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "description": "AKS properties", + "properties": { + "clusterFqdn": { + "description": "Cluster full qualified domain name", + "type": "string" + }, + "systemServices": { + "type": "array", + "description": "System services", + "items": { + "$ref": "#/definitions/SystemService" + }, + "readOnly": true + }, + "agentCount": { + "description": "Number of agents", + "type": "integer", + "minimum": 1 + }, + "agentVMSize": { + "description": "Agent virtual machine size", + "type": "string" + }, + "sslConfiguration": { + "description": "SSL configuration", + "$ref": "#/definitions/SslConfiguration" + }, + "aksNetworkingConfiguration": { + "description": "AKS networking configuration for vnet", + "$ref": "#/definitions/AksNetworkingConfiguration" + } + } + } + } + } + ], + "x-ms-discriminator-value": "AKS" + }, + "AmlCompute": { + "description": "An Azure Machine Learning compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "description": "AML Compute properties", + "type": "object", + "properties": { + "vmSize": { + "description": "Virtual Machine Size", + "type": "string" + }, + "vmPriority": { + "description": "Virtual Machine priority", + "type": "string", + "enum": [ + "Dedicated", + "LowPriority" + ], + "x-ms-enum": { + "name": "VmPriority", + "modelAsString": true + } + }, + "scaleSettings": { + "description": "Scale settings for AML Compute", + "$ref": "#/definitions/ScaleSettings" + }, + "userAccountCredentials": { + "title": "User account credentials.", + "description": "Credentials for an administrator user account that will be created on each compute node.", + "$ref": "#/definitions/UserAccountCredentials" + }, + "subnet": { + "title": "Subnet.", + "description": "Virtual network subnet resource ID the compute nodes belong to.", + "$ref": "#/definitions/ResourceId" + }, + "remoteLoginPortPublicAccess": { + "type": "string", + "default": "NotSpecified", + "title": "Close remote Login Access Port", + "description": "State of the public SSH port. Possible values are: Disabled - Indicates that the public ssh port is closed on all nodes of the cluster. Enabled - Indicates that the public ssh port is open on all nodes of the cluster. NotSpecified - Indicates that the public ssh port is closed on all nodes of the cluster if VNet is defined, else is open all public nodes. It can be default only during cluster creation time, after creation it will be either enabled or disabled.", + "enum": [ + "Enabled", + "Disabled", + "NotSpecified" + ], + "x-ms-enum": { + "name": "remoteLoginPortPublicAccess", + "modelAsString": true + } + }, + "allocationState": { + "type": "string", + "readOnly": true, + "title": "Allocation state.", + "description": "Allocation state of the compute. Possible values are: steady - Indicates that the compute is not resizing. There are no changes to the number of compute nodes in the compute in progress. A compute enters this state when it is created and when no operations are being performed on the compute to change the number of compute nodes. resizing - Indicates that the compute is resizing; that is, compute nodes are being added to or removed from the compute.", + "enum": [ + "Steady", + "Resizing" + ], + "x-ms-enum": { + "name": "AllocationState", + "modelAsString": true + } + }, + "allocationStateTransitionTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "title": "Allocation state transition time.", + "description": "The time at which the compute entered its current allocation state." + }, + "errors": { + "readOnly": true, + "title": "Errors.", + "description": "Collection of errors encountered by various compute nodes during node setup.", + "type": "array", + "items": { + "$ref": "#/definitions/MachineLearningServiceError" + } + }, + "currentNodeCount": { + "type": "integer", + "readOnly": true, + "format": "int32", + "title": "Current node count.", + "description": "The number of compute nodes currently assigned to the compute." + }, + "targetNodeCount": { + "type": "integer", + "readOnly": true, + "format": "int32", + "title": "Target node count.", + "description": "The target number of compute nodes for the compute. If the allocationState is resizing, this property denotes the target node count for the ongoing resize operation. If the allocationState is steady, this property denotes the target node count for the previous resize operation." + }, + "nodeStateCounts": { + "title": "Node state counts.", + "description": "Counts of various node states on the compute.", + "readOnly": true, + "$ref": "#/definitions/NodeStateCounts" + } + } + } + } + } + ], + "x-ms-discriminator-value": "AmlCompute" + }, + "VirtualMachine": { + "description": "A Machine Learning compute based on Azure Virtual Machines.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "virtualMachineSize": { + "description": "Virtual Machine size", + "type": "string" + }, + "sshPort": { + "description": "Port open for ssh connections.", + "type": "integer" + }, + "address": { + "description": "Public IP address of the virtual machine.", + "type": "string" + }, + "administratorAccount": { + "description": "Admin credentials for virtual machine", + "$ref": "#/definitions/VirtualMachineSshCredentials" + } + } + } + } + } + ], + "x-ms-discriminator-value": "VirtualMachine" + }, + "HDInsight": { + "description": "A HDInsight compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "sshPort": { + "description": "Port open for ssh connections on the master node of the cluster.", + "type": "integer" + }, + "address": { + "description": "Public IP address of the master node of the cluster.", + "type": "string" + }, + "administratorAccount": { + "description": "Admin credentials for master node of the cluster", + "$ref": "#/definitions/VirtualMachineSshCredentials" + } + } + } + } + } + ], + "x-ms-discriminator-value": "HDInsight" + }, + "DataFactory": { + "description": "A DataFactory compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + } + ], + "x-ms-discriminator-value": "DataFactory" + }, + "Databricks": { + "description": "A DataFactory compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "databricksAccessToken": { + "description": "Databricks access token", + "type": "string" + } + } + } + } + } + ], + "x-ms-discriminator-value": "Databricks" + }, + "DataLakeAnalytics": { + "description": "A DataLakeAnalytics compute.", + "allOf": [ + { + "$ref": "#/definitions/Compute" + }, + { + "type": "object", + "properties": { + "properties": { + "type": "object", + "properties": { + "dataLakeStoreAccountName": { + "description": "DataLake Store Account Name", + "type": "string" + } + } + } + } + } + ], + "x-ms-discriminator-value": "DataLakeAnalytics" + }, + "ServicePrincipalCredentials": { + "type": "object", + "description": "Service principal credentials.", + "properties": { + "clientId": { + "description": "Client Id", + "type": "string" + }, + "clientSecret": { + "description": "Client secret", + "type": "string" + } + }, + "required": [ + "clientId", + "clientSecret" + ] + }, + "SystemService": { + "type": "object", + "description": "A system service running on a compute.", + "properties": { + "systemServiceType": { + "description": "The type of this system service.", + "readOnly": true, + "type": "string" + }, + "publicIpAddress": { + "type": "string", + "description": "Public IP address", + "readOnly": true + }, + "version": { + "description": "The version for this type.", + "readOnly": true, + "type": "string" + } + } + }, + "SslConfiguration": { + "type": "object", + "description": "The ssl configuration for scoring", + "properties": { + "status": { + "description": "Enable or disable ssl for scoring", + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ] + }, + "cert": { + "description": "Cert data", + "type": "string" + }, + "key": { + "description": "Key data", + "type": "string" + }, + "cname": { + "description": "CNAME of the cert", + "type": "string" + } + } + }, + "AksNetworkingConfiguration": { + "type": "object", + "description": "Advance configuration for AKS networking", + "properties": { + "subnetId": { + "description": "Virtual network subnet resource ID the compute nodes belong to", + "type": "string" + }, + "serviceCidr": { + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$", + "description": "A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges.", + "type": "string" + }, + "dnsServiceIP": { + "pattern": "^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$", + "description": "An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr.", + "type": "string" + }, + "dockerBridgeCidr": { + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$", + "description": "A CIDR notation IP range assigned to the Docker bridge network. It must not overlap with any Subnet IP ranges or the Kubernetes service address range.", + "type": "string" + } + } + }, + "UserAccountCredentials": { + "properties": { + "adminUserName": { + "type": "string", + "title": "User name.", + "description": "Name of the administrator user account which can be used to SSH to nodes." + }, + "adminUserSshPublicKey": { + "type": "string", + "title": "SSH public key.", + "description": "SSH public key of the administrator user account." + }, + "adminUserPassword": { + "type": "string", + "title": "Password.", + "description": "Password of the administrator user account." + } + }, + "required": [ + "adminUserName" + ], + "description": "Settings for user account that gets created on each on the nodes of a compute." + }, + "ScaleSettings": { + "type": "object", + "description": "scale settings for AML Compute", + "properties": { + "maxNodeCount": { + "description": "Max number of nodes to use", + "type": "integer" + }, + "minNodeCount": { + "description": "Min number of nodes to use", + "type": "integer", + "default": 0 + }, + "nodeIdleTimeBeforeScaleDown": { + "type": "string", + "format": "duration", + "description": "Node Idle Time before scaling down amlCompute" + } + }, + "required": [ + "maxNodeCount" + ] + }, + "NodeStateCounts": { + "properties": { + "idleNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Idle node count.", + "description": "Number of compute nodes in idle state." + }, + "runningNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Running node count.", + "description": "Number of compute nodes which are running jobs." + }, + "preparingNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Preparing node count.", + "description": "Number of compute nodes which are being prepared." + }, + "unusableNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Unusable node count.", + "description": "Number of compute nodes which are in unusable state." + }, + "leavingNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Leaving node count.", + "description": "Number of compute nodes which are leaving the amlCompute." + }, + "preemptedNodeCount": { + "readOnly": true, + "type": "integer", + "format": "int32", + "title": "Preempted node count.", + "description": "Number of compute nodes which are in preempted state." + } + }, + "description": "Counts of various compute node states on the amlCompute." + }, + "ClusterUpdateProperties": { + "properties": { + "scaleSettings": { + "$ref": "#/definitions/ScaleSettings", + "title": "Scale settings.", + "description": "Desired scale settings for the amlCompute." + } + }, + "description": "The properties of a amlCompute that need to be updated." + }, + "ClusterUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterUpdateProperties", + "description": "The properties of the amlCompute." + } + }, + "description": "AmlCompute update parameters." + }, + "ComputeNodesInformation": { + "type": "object", + "description": "Compute nodes information related to a Machine Learning compute. Might differ for every type of compute.", + "discriminator": "computeType", + "properties": { + "computeType": { + "description": "The type of compute", + "$ref": "#/definitions/ComputeType" + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The continuation token." + } + }, + "required": [ + "computeType" + ] + }, + "AmlComputeNodesInformation": { + "description": "Compute node information related to a AmlCompute.", + "allOf": [ + { + "$ref": "#/definitions/ComputeNodesInformation" + }, + { + "type": "object", + "properties": { + "nodes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/AmlComputeNodeInformation" + }, + "description": "The collection of returned AmlCompute nodes details." + } + } + } + ], + "x-ms-discriminator-value": "AmlCompute" + }, + "AmlComputeNodeInformation": { + "description": "Compute node information related to a AmlCompute.", + "properties": { + "nodeId": { + "readOnly": true, + "type": "string", + "title": "Node ID.", + "description": "ID of the compute node." + }, + "privateIpAddress": { + "readOnly": true, + "type": "string", + "title": "Private IP address.", + "description": "Private IP address of the compute node." + }, + "publicIpAddress": { + "readOnly": true, + "type": "string", + "title": "Public IP address.", + "description": "Public IP address of the compute node." + }, + "port": { + "readOnly": true, + "type": "number", + "format": "int32", + "title": "Port.", + "description": "SSH port number of the node." + }, + "nodeState": { + "readOnly": true, + "type": "string", + "enum": [ + "idle", + "running", + "preparing", + "unusable", + "leaving", + "preempted" + ], + "description": "State of the compute node. Values are idle, running, preparing, unusable, leaving and preempted.", + "x-ms-enum": { + "name": "nodeState", + "modelAsString": true + } + }, + "runId": { + "readOnly": true, + "type": "string", + "title": "Run ID.", + "description": "ID of the Experiment running on the node, if any else null." + } + }, + "x-ms-discriminator-value": "AmlCompute" + }, + "VirtualMachineSshCredentials": { + "type": "object", + "description": "Admin credentials for virtual machine", + "properties": { + "username": { + "description": "Username of admin account", + "type": "string" + }, + "password": { + "description": "Password of admin account", + "type": "string" + }, + "publicKeyData": { + "description": "Public key data", + "type": "string" + }, + "privateKeyData": { + "description": "Private key data", + "type": "string" + } + } + }, + "ComputeSecrets": { + "type": "object", + "description": "Secrets related to a Machine Learning compute. Might differ for every type of compute.", + "discriminator": "computeType", + "properties": { + "computeType": { + "description": "The type of compute", + "$ref": "#/definitions/ComputeType" + } + }, + "required": [ + "computeType" + ] + }, + "AksComputeSecrets": { + "description": "Secrets related to a Machine Learning compute based on AKS.", + "allOf": [ + { + "$ref": "#/definitions/ComputeSecrets" + }, + { + "type": "object", + "properties": { + "userKubeConfig": { + "type": "string", + "description": "Content of kubeconfig file that can be used to connect to the Kubernetes cluster." + }, + "adminKubeConfig": { + "type": "string", + "description": "Content of kubeconfig file that can be used to connect to the Kubernetes cluster." + }, + "imagePullSecretName": { + "type": "string", + "description": "Image registry pull secret." + } + } + } + ], + "x-ms-discriminator-value": "AKS" + }, + "VirtualMachineSecrets": { + "description": "Secrets related to a Machine Learning compute based on AKS.", + "allOf": [ + { + "$ref": "#/definitions/ComputeSecrets" + }, + { + "type": "object", + "properties": { + "administratorAccount": { + "description": "Admin credentials for virtual machine.", + "$ref": "#/definitions/VirtualMachineSshCredentials" + } + } + } + ], + "x-ms-discriminator-value": "VirtualMachine" + }, + "DatabricksComputeSecrets": { + "description": "Secrets related to a Machine Learning compute based on Databricks.", + "allOf": [ + { + "$ref": "#/definitions/ComputeSecrets" + }, + { + "type": "object", + "properties": { + "databricksAccessToken": { + "description": "access token for databricks account.", + "type": "string" + } + } + } + ], + "x-ms-discriminator-value": "Databricks" + }, + "ComputeType": { + "type": "string", + "description": "The type of compute", + "enum": [ + "AKS", + "AmlCompute", + "DataFactory", + "VirtualMachine", + "HDInsight", + "Databricks", + "DataLakeAnalytics" + ], + "x-ms-enum": { + "name": "ComputeType", + "modelAsString": true + } + }, + "MachineLearningServiceError": { + "type": "object", + "description": "Wrapper for error response to follow ARM guidelines.", + "properties": { + "error": { + "description": "The error response.", + "$ref": "#/definitions/ErrorResponse", + "readOnly": true + } + } + }, + "ErrorResponse": { + "type": "object", + "description": "Error response information.", + "properties": { + "code": { + "type": "string", + "description": "Error code.", + "readOnly": true + }, + "message": { + "type": "string", + "description": "Error message.", + "readOnly": true + }, + "details": { + "type": "array", + "description": "An array of error detail objects.", + "items": { + "$ref": "#/definitions/ErrorDetail" + }, + "readOnly": true + } + } + }, + "ErrorDetail": { + "type": "object", + "description": "Error detail information.", + "properties": { + "code": { + "type": "string", + "description": "Error code." + }, + "message": { + "type": "string", + "description": "Error message." + } + }, + "required": [ + "code", + "message" + ] + }, + "SKUCapability": { + "description": "Features/user capabilities associated with the sku", + "type": "object", + "properties": { + "name": { + "description": "Capability/Feature ID", + "type": "string" + }, + "value": { + "description": "Details about the feature/capability", + "type": "string" + } + } + }, + "ResourceSkuLocationInfo": { + "properties": { + "location": { + "readOnly": true, + "type": "string", + "description": "Location of the SKU" + }, + "zones": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "List of availability zones where the SKU is supported." + }, + "zoneDetails": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ResourceSkuZoneDetails" + }, + "description": "Details of capabilities available to a SKU in specific zones." + } + } + }, + "ResourceSkuZoneDetails": { + "properties": { + "name": { + "type": "array", + "readOnly": true, + "items": { + "type": "string" + }, + "description": "The set of zones that the SKU is available in with the specified capabilities." + }, + "capabilities": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SKUCapability" + }, + "description": "A list of capabilities that are available for the SKU in the specified list of zones." + } + }, + "description": "Describes The zonal capabilities of a SKU." + }, + "WorkspaceSku": { + "description": "Describes Workspace Sku details and features", + "type": "object", + "properties": { + "locations": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The set of locations that the SKU is available. This will be supported and registered Azure Geo Regions (e.g. West US, East US, Southeast Asia, etc.)." + }, + "locationInfo": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ResourceSkuLocationInfo" + }, + "description": "A list of locations and availability zones in those locations where the SKU is available." + }, + "tier": { + "description": "Sku Tier like Basic or Enterprise", + "type": "string", + "readOnly": true + }, + "resourceType": { + "type": "string", + "readOnly": true + }, + "name": { + "type": "string", + "readOnly": true + }, + "capabilities": { + "description": "List of features/user capabilities associated with the sku", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/SKUCapability" + }, + "readOnly": true + }, + "restrictions": { + "type": "array", + "items": { + "$ref": "#/definitions/Restriction" + }, + "description": "The restrictions because of which SKU cannot be used. This is empty if there are no restrictions." + } + } + }, + "Restriction": { + "properties": { + "type": { + "readOnly": true, + "type": "string", + "description": "The type of restrictions. As of now only possible value for this is location." + }, + "values": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The value of restrictions. If the restriction type is set to location. This would be different locations where the SKU is restricted." + }, + "reasonCode": { + "type": "string", + "enum": [ + "NotSpecified", + "NotAvailableForRegion", + "NotAvailableForSubscription" + ], + "x-ms-enum": { + "name": "ReasonCode", + "modelAsString": true + }, + "description": "The reason for the restriction." + } + }, + "description": "The restriction because of which SKU cannot be used." + }, + "SkuListResult": { + "description": "List of skus with features", + "type": "object", + "properties": { + "value": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/WorkspaceSku" + } + }, + "nextLink": { + "type": "string", + "description": "The URI to fetch the next page of Workspace Skus. Call ListNext() with this URI to fetch the next page of Workspace Skus" + } + } + }, + "Sku": { + "description": "Sku of the resource", + "type": "object", + "properties": { + "name": { + "description": "Name of the sku", + "type": "string" + }, + "tier": { + "description": "Tier of the sku like Basic or Enterprise", + "type": "string" + } + } + }, + "PrivateEndpointConnection": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "x-ms-client-flatten": true, + "description": "Resource properties." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "The Private Endpoint Connection resource." + }, + "PrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "The resource of private end point." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "provisioningState": { + "$ref": "#/definitions/PrivateEndpointConnectionProvisioningState", + "description": "The provisioning state of the private endpoint connection resource." + } + }, + "required": [ + "privateLinkServiceConnectionState" + ], + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "PrivateEndpoint": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ARM identifier for Private Endpoint" + } + }, + "description": "The Private Endpoint resource." + }, + "PrivateLinkServiceConnectionState": { + "properties": { + "status": { + "$ref": "#/definitions/PrivateEndpointServiceConnectionStatus", + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + }, + "description": { + "type": "string", + "description": "The reason for approval/rejection of the connection." + }, + "actionsRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + } + }, + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "PrivateEndpointServiceConnectionStatus": { + "type": "string", + "description": "The private endpoint connection status.", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected", + "Timeout" + ], + "x-ms-enum": { + "name": "PrivateEndpointServiceConnectionStatus", + "modelAsString": true + } + }, + "PrivateEndpointConnectionProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Succeeded", + "Creating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "PrivateEndpointConnectionProvisioningState", + "modelAsString": true + } + }, + "PrivateLinkResourceListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "description": "A list of private link resources" + }, + "PrivateLinkResource": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "A private link resource" + }, + "PrivateLinkResourceProperties": { + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The private link resource Private link DNS zone name." + } + }, + "description": "Properties of a private link resource." + }, + "SharedPrivateLinkResource": { + "properties": { + "name": { + "description": "Unique name of the private link.", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/SharedPrivateLinkResourceProperty", + "x-ms-client-flatten": true, + "description": "Resource properties." + } + } + }, + "SharedPrivateLinkResourceProperty": { + "properties": { + "privateLinkResourceId": { + "description": "The resource id that private link links to.", + "type": "string" + }, + "groupId": { + "description": "The private link resource group id.", + "type": "string" + }, + "requestMessage": { + "description": "Request message.", + "type": "string" + }, + "status": { + "$ref": "#/definitions/PrivateEndpointServiceConnectionStatus", + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + } + }, + "description": "Properties of a shared private link resource." + }, + "EncryptionProperty": { + "properties": { + "status": { + "description": "Indicates whether or not the encryption is enabled for the workspace.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "EncryptionStatus", + "modelAsString": true + } + }, + "keyVaultProperties": { + "$ref": "#/definitions/KeyVaultProperties", + "description": "Customer Key vault properties." + } + }, + "required": [ + "status", + "keyVaultProperties" + ], + "type": "object" + }, + "KeyVaultProperties": { + "properties": { + "keyVaultArmId": { + "description": "The ArmId of the keyVault where the customer owned encryption key is present.", + "type": "string" + }, + "keyIdentifier": { + "description": "Key vault uri to access the encryption key.", + "type": "string" + }, + "identityClientId": { + "description": "For future use - The client id of the identity which will be used to access key vault.", + "type": "string" + } + }, + "required": [ + "keyIdentifier", + "keyVaultArmId" + ], + "type": "object" + } + } +} diff --git a/specification/machinelearningservices/resource-manager/readme.az.md b/specification/machinelearningservices/resource-manager/readme.az.md new file mode 100644 index 000000000000..a236603e5744 --- /dev/null +++ b/specification/machinelearningservices/resource-manager/readme.az.md @@ -0,0 +1,20 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +``` yaml $(az) +az: + extensions: machinelearningservices + namespace: azure.mgmt.machinelearningservices + package-name: azure-mgmt-machinelearningservices +az-output-folder: $(azure-cli-extension-folder)/src/machinelearningservices +python-sdk-output-folder: "$(az-output-folder)/azext_machinelearningservices/vendored_sdks/machinelearningservices" + +cli: + cli-directive: + - where: + group: MachineLearningCompute + op: CreateOrUpdate + param: properties + poly-resource: true +``` diff --git a/specification/machinelearningservices/resource-manager/readme.cli.md b/specification/machinelearningservices/resource-manager/readme.cli.md new file mode 100644 index 000000000000..98b6efc498ad --- /dev/null +++ b/specification/machinelearningservices/resource-manager/readme.cli.md @@ -0,0 +1,9 @@ + CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +#cli: +# test-scenario: +# - name: Workspace_CreateOrUpdate +``` diff --git a/specification/machinelearningservices/resource-manager/readme.go.md b/specification/machinelearningservices/resource-manager/readme.go.md index d132e869b857..13ba41849b86 100644 --- a/specification/machinelearningservices/resource-manager/readme.go.md +++ b/specification/machinelearningservices/resource-manager/readme.go.md @@ -13,14 +13,25 @@ go: ```yaml $(go) && $(multiapi) batch: + - tag: package-2020-03-01 - tag: package-2020-01-01 - tag: package-2019-11-01 - tag: package-2019-06-01 - tag: package-2019-05-01 - tag: package-2018-11-19 + - tag: package-2020-02-18-preview - tag: package-2018-03-preview ``` +## Tag: package-2020-03-01 and go + +These settings apply only when `--tag=package-2020-03-01 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +```yaml $(tag)=='package-2020-03-01' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2020-03-01/$(namespace) +``` + ## Tag: package-2020-01-01 and go These settings apply only when `--tag=package-2020-01-01 --go` is specified on the command line. @@ -66,6 +77,15 @@ Please also specify `--go-sdk-folder=`. + +```yaml $(tag)=='package-2020-02-18-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2020-02-18-preview/$(namespace) +``` + ### Tag: package-2018-03-preview and go These settings apply only when `--tag=package-2018-03-preview --go` is specified on the command line. diff --git a/specification/machinelearningservices/resource-manager/readme.md b/specification/machinelearningservices/resource-manager/readme.md index 68e4aad373f0..e4181ee9e488 100644 --- a/specification/machinelearningservices/resource-manager/readme.md +++ b/specification/machinelearningservices/resource-manager/readme.md @@ -26,10 +26,19 @@ These are the global settings for the Machine Learning Services API. ``` yaml openapi-type: arm -tag: package-2020-01-01 +tag: package-2020-03-01 ``` +### Tag: package-2020-03-01 + +These settings apply only when `--tag=package-2020-03` is specified on the command line. + +```yaml $(tag) == 'package-2020-03-01' +input-file: + - Microsoft.MachineLearningServices/stable/2020-03-01/machineLearningServices.json +``` + ### Tag: package-2020-01-01 These settings apply only when `--tag=package-2020-01` is specified on the command line. @@ -75,6 +84,15 @@ input-file: - Microsoft.MachineLearningServices/stable/2018-11-19/machineLearningServices.json ``` +### Tag: package-2020-02-18-preview + +These settings apply only when `--tag=package-2020-02-18-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2020-02-18-preview' +input-file: +- Microsoft.MachineLearningServices/preview/2020-02-18-preview/machineLearningServices.json +``` + ### Tag: package-2018-03-preview These settings apply only when `--tag=package-2018-03-preview` is specified on the command line. @@ -100,6 +118,7 @@ swagger-to-sdk: - repo: azure-sdk-for-python - repo: azure-sdk-for-js - repo: azure-sdk-for-node + - repo: azure-cli-extensions ``` ## C# @@ -138,14 +157,29 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-machinelearning/ser ``` yaml $(java) && $(multiapi) batch: + - tag: package-2020-03-01 - tag: package-2020-01-01 - tag: package-2019-11-01 - tag: package-2019-06-01 - tag: package-2019-05-01 - tag: package-2018-11-19 + - tag: package-2020-02-18-preview - tag: package-2018-03-preview ``` +### Tag: package-2020-03-01 and java + +These settings apply only when `--tag=package-2020-03-01 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2020-03-01' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.machinelearningservices.v2020_03_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/machinelearningservices/mgmt-v2020_03_01 +regenerate-manager: true +generate-interface: true +``` + ### Tag: package-2020-01-01 and java These settings apply only when `--tag=package-2020-01-01 --java` is specified on the command line. @@ -236,11 +270,13 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(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-02-18-preview/machineLearningServices.json - $(this-folder)/Microsoft.MachineLearningServices/preview/2018-03-01-preview/machineLearningServices.json ``` diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/Maintenance.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/Maintenance.json new file mode 100644 index 000000000000..0188bcfd5c1e --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/Maintenance.json @@ -0,0 +1,1632 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-04-01", + "title": "MaintenanceManagementClient", + "description": "Azure Maintenance Management Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceParentType}/{resourceParentName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/applyUpdates/{applyUpdateName}": { + "get": { + "tags": [ + "ApplyUpdates" + ], + "summary": "Track Updates to resource with parent", + "description": "Track maintenance updates to resource with parent", + "operationId": "ApplyUpdates_GetParent", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "resourceParentType", + "in": "path", + "description": "Resource parent type", + "required": true, + "type": "string" + }, + { + "name": "resourceParentName", + "in": "path", + "description": "Resource parent identifier", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "name": "applyUpdateName", + "in": "path", + "description": "applyUpdate Id", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApplyUpdate" + } + } + }, + "x-ms-examples": { + "ApplyUpdates_GetParent": { + "$ref": "./examples/ApplyUpdates_GetParent.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/applyUpdates/{applyUpdateName}": { + "get": { + "tags": [ + "ApplyUpdates" + ], + "summary": "Track Updates to resource", + "description": "Track maintenance updates to resource", + "operationId": "ApplyUpdates_Get", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "name": "applyUpdateName", + "in": "path", + "description": "applyUpdate Id", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApplyUpdate" + } + } + }, + "x-ms-examples": { + "ApplyUpdates_Get": { + "$ref": "./examples/ApplyUpdates_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceParentType}/{resourceParentName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/applyUpdates/default": { + "put": { + "tags": [ + "ApplyUpdates" + ], + "summary": "Apply Updates to resource with parent", + "description": "Apply maintenance updates to resource with parent", + "operationId": "ApplyUpdates_CreateOrUpdateParent", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceParentType", + "in": "path", + "description": "Resource parent type", + "required": true, + "type": "string" + }, + { + "name": "resourceParentName", + "in": "path", + "description": "Resource parent identifier", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApplyUpdate" + } + } + }, + "x-ms-examples": { + "ApplyUpdates_CreateOrUpdateParent": { + "$ref": "./examples/ApplyUpdates_CreateOrUpdateParent.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/applyUpdates/default": { + "put": { + "tags": [ + "ApplyUpdates" + ], + "summary": "Apply Updates to resource", + "description": "Apply maintenance updates to resource", + "operationId": "ApplyUpdates_CreateOrUpdate", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ApplyUpdate" + } + } + }, + "x-ms-examples": { + "ApplyUpdates_CreateOrUpdate": { + "$ref": "./examples/ApplyUpdates_CreateOrUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceParentType}/{resourceParentName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/configurationAssignments/{configurationAssignmentName}": { + "put": { + "tags": [ + "ConfigurationAssignments" + ], + "summary": "Create configuration assignment", + "description": "Register configuration for resource.", + "operationId": "ConfigurationAssignments_CreateOrUpdateParent", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceParentType", + "in": "path", + "description": "Resource parent type", + "required": true, + "type": "string" + }, + { + "name": "resourceParentName", + "in": "path", + "description": "Resource parent identifier", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "name": "configurationAssignmentName", + "in": "path", + "description": "Configuration assignment name", + "required": true, + "type": "string" + }, + { + "name": "configurationAssignment", + "in": "body", + "description": "The configurationAssignment", + "required": true, + "schema": { + "$ref": "#/definitions/ConfigurationAssignment" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConfigurationAssignment" + } + } + }, + "x-ms-examples": { + "ConfigurationAssignments_CreateOrUpdateParent": { + "$ref": "./examples/ConfigurationAssignments_CreateOrUpdateParent.json" + } + } + }, + "delete": { + "tags": [ + "ConfigurationAssignments" + ], + "summary": "Unregister configuration for resource", + "description": "Unregister configuration for resource.", + "operationId": "ConfigurationAssignments_DeleteParent", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceParentType", + "in": "path", + "description": "Resource parent type", + "required": true, + "type": "string" + }, + { + "name": "resourceParentName", + "in": "path", + "description": "Resource parent identifier", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "name": "configurationAssignmentName", + "in": "path", + "description": "Unique configuration assignment name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConfigurationAssignment" + } + } + }, + "x-ms-examples": { + "ConfigurationAssignments_DeleteParent": { + "$ref": "./examples/ConfigurationAssignments_DeleteParent.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/configurationAssignments/{configurationAssignmentName}": { + "put": { + "tags": [ + "ConfigurationAssignments" + ], + "summary": "Create configuration assignment", + "description": "Register configuration for resource.", + "operationId": "ConfigurationAssignments_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "name": "configurationAssignmentName", + "in": "path", + "description": "Configuration assignment name", + "required": true, + "type": "string" + }, + { + "name": "configurationAssignment", + "in": "body", + "description": "The configurationAssignment", + "required": true, + "schema": { + "$ref": "#/definitions/ConfigurationAssignment" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConfigurationAssignment" + } + } + }, + "x-ms-examples": { + "ConfigurationAssignments_CreateOrUpdate": { + "$ref": "./examples/ConfigurationAssignments_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "ConfigurationAssignments" + ], + "summary": "Unregister configuration for resource", + "description": "Unregister configuration for resource.", + "operationId": "ConfigurationAssignments_Delete", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "name": "configurationAssignmentName", + "in": "path", + "description": "Unique configuration assignment name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ConfigurationAssignment" + } + } + }, + "x-ms-examples": { + "ConfigurationAssignments_Delete": { + "$ref": "./examples/ConfigurationAssignments_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceParentType}/{resourceParentName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/configurationAssignments": { + "get": { + "tags": [ + "ConfigurationAssignments" + ], + "summary": "List configurationAssignments for resource", + "description": "List configurationAssignments for resource.", + "operationId": "ConfigurationAssignments_ListParent", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceParentType", + "in": "path", + "description": "Resource parent type", + "required": true, + "type": "string" + }, + { + "name": "resourceParentName", + "in": "path", + "description": "Resource parent identifier", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListConfigurationAssignmentsResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "ConfigurationAssignments_ListParent": { + "$ref": "./examples/ConfigurationAssignments_ListParent.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/configurationAssignments": { + "get": { + "tags": [ + "ConfigurationAssignments" + ], + "summary": "List configurationAssignments for resource", + "description": "List configurationAssignments for resource.", + "operationId": "ConfigurationAssignments_List", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListConfigurationAssignmentsResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "ConfigurationAssignments_List": { + "$ref": "./examples/ConfigurationAssignments_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Maintenance/maintenanceConfigurations/{resourceName}": { + "get": { + "tags": [ + "MaintenanceConfigurations" + ], + "summary": "Get Configuration record", + "operationId": "MaintenanceConfigurations_Get", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource Group Name", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource Identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-examples": { + "MaintenanceConfigurations_GetForResource": { + "$ref": "./examples/MaintenanceConfigurations_GetForResource.json" + } + } + }, + "put": { + "tags": [ + "MaintenanceConfigurations" + ], + "summary": "Create or Update configuration record", + "operationId": "MaintenanceConfigurations_CreateOrUpdate", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource Group Name", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource Identifier", + "required": true, + "type": "string" + }, + { + "name": "configuration", + "in": "body", + "description": "The configuration", + "required": true, + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-examples": { + "MaintenanceConfigurations_CreateOrUpdateForResource": { + "$ref": "./examples/MaintenanceConfigurations_CreateOrUpdateForResource.json" + } + } + }, + "delete": { + "tags": [ + "MaintenanceConfigurations" + ], + "summary": "Delete Configuration record", + "operationId": "MaintenanceConfigurations_Delete", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource Group Name", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource Identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-examples": { + "MaintenanceConfigurations_DeleteForResource": { + "$ref": "./examples/MaintenanceConfigurations_DeleteForResource.json" + } + } + }, + "patch": { + "tags": [ + "MaintenanceConfigurations" + ], + "summary": "Patch configuration record", + "operationId": "MaintenanceConfigurations_Update", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource Group Name", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource Identifier", + "required": true, + "type": "string" + }, + { + "name": "configuration", + "in": "body", + "description": "The configuration", + "required": true, + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-examples": { + "MaintenanceConfigurations_UpdateForResource": { + "$ref": "./examples/MaintenanceConfigurations_UpdateForResource.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Maintenance/maintenanceConfigurations": { + "get": { + "tags": [ + "MaintenanceConfigurations" + ], + "summary": "Get Configuration records within a subscription", + "operationId": "MaintenanceConfigurations_List", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListMaintenanceConfigurationsResult" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "MaintenanceConfigurations_List": { + "$ref": "./examples/MaintenanceConfigurations_List.json" + } + } + } + }, + "/providers/Microsoft.Maintenance/operations": { + "get": { + "tags": [ + "Operations" + ], + "summary": "List available operations", + "description": "List the available operations supported by the Microsoft.Maintenance resource provider", + "operationId": "Operations_List", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationsListResult" + } + }, + "default": { + "description": "BadRequest", + "schema": { + "$ref": "#/definitions/MaintenanceError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Operations_List": { + "$ref": "./examples/Operations_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceParentType}/{resourceParentName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/updates": { + "get": { + "tags": [ + "Updates" + ], + "summary": "Get Updates to resource", + "description": "Get updates to resources.", + "operationId": "Updates_ListParent", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceParentType", + "in": "path", + "description": "Resource parent type", + "required": true, + "type": "string" + }, + { + "name": "resourceParentName", + "in": "path", + "description": "Resource parent identifier", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListUpdatesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Updates_ListParent": { + "$ref": "./examples/Updates_ListParent.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{providerName}/{resourceType}/{resourceName}/providers/Microsoft.Maintenance/updates": { + "get": { + "tags": [ + "Updates" + ], + "summary": "Get Updates to resource", + "description": "Get updates to resources.", + "operationId": "Updates_List", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "Resource group name", + "required": true, + "type": "string" + }, + { + "name": "providerName", + "in": "path", + "description": "Resource provider name", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "Resource type", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Resource identifier", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ListUpdatesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Updates_List": { + "$ref": "./examples/Updates_List.json" + } + } + } + } + }, + "definitions": { + "ApplyUpdateProperties": { + "description": "Properties for apply update", + "type": "object", + "properties": { + "status": { + "description": "The status", + "enum": [ + "Pending", + "InProgress", + "Completed", + "RetryNow", + "RetryLater" + ], + "type": "string", + "x-ms-enum": { + "name": "UpdateStatus", + "modelAsString": true + } + }, + "resourceId": { + "description": "The resourceId", + "type": "string" + }, + "lastUpdateTime": { + "format": "date-time", + "description": "Last Update time", + "type": "string" + } + } + }, + "Resource": { + "description": "Definition of a Resource", + "type": "object", + "properties": { + "id": { + "description": "Fully qualified identifier of the resource", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the resource", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of the resource", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "ApplyUpdate": { + "description": "Apply Update request", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ApplyUpdateProperties", + "description": "Properties of the apply update", + "x-ms-client-flatten": true + } + } + }, + "ConfigurationAssignmentProperties": { + "description": "Properties for configuration assignment", + "type": "object", + "properties": { + "maintenanceConfigurationId": { + "description": "The maintenance configuration Id", + "type": "string" + }, + "resourceId": { + "description": "The unique resourceId", + "type": "string" + } + } + }, + "ConfigurationAssignment": { + "description": "Configuration Assignment", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "location": { + "description": "Location of the resource", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/ConfigurationAssignmentProperties", + "description": "Properties of the configuration assignment", + "x-ms-client-flatten": true + } + } + }, + "ListConfigurationAssignmentsResult": { + "description": "Response for ConfigurationAssignments list", + "type": "object", + "properties": { + "value": { + "description": "The list of configuration Assignments", + "type": "array", + "items": { + "$ref": "#/definitions/ConfigurationAssignment" + } + } + } + }, + "MaintenanceConfigurationProperties": { + "description": "Properties for maintenance configuration", + "type": "object", + "properties": { + "namespace": { + "description": "Gets or sets namespace of the resource e.g. Microsoft.Maintenance or Microsoft.Sql", + "type": "string" + }, + "extensionProperties": { + "description": "Gets or sets extensionProperties of the maintenanceConfiguration. This is for future use only and would be a set of key value pairs for additional information e.g. whether to follow SDP etc.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "maintenanceScope": { + "description": "Gets or sets maintenanceScope of the configuration. It represent the impact area of the maintenance", + "enum": [ + "All", + "Host", + "Resource", + "InResource" + ], + "type": "string", + "x-ms-enum": { + "name": "MaintenanceScope", + "modelAsString": true + } + } + } + }, + "MaintenanceConfiguration": { + "description": "Maintenance configuration record type", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "location": { + "description": "Gets or sets location of the resource", + "type": "string" + }, + "tags": { + "description": "Gets or sets tags of the resource", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "properties": { + "$ref": "#/definitions/MaintenanceConfigurationProperties", + "description": "Gets or sets properties of the resource", + "x-ms-client-flatten": true + } + } + }, + "MaintenanceError": { + "description": "An error response received from the Azure Maintenance service.", + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/ErrorDetails", + "description": "Details of the error" + } + } + }, + "ErrorDetails": { + "description": "An error response details received from the Azure Maintenance service.", + "type": "object", + "properties": { + "code": { + "description": "Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response.", + "type": "string" + }, + "message": { + "description": "Human-readable representation of the error.", + "type": "string" + } + } + }, + "ListMaintenanceConfigurationsResult": { + "description": "Response for MaintenanceConfigurations list", + "type": "object", + "properties": { + "value": { + "description": "The list of maintenance Configurations", + "type": "array", + "items": { + "$ref": "#/definitions/MaintenanceConfiguration" + } + } + } + }, + "OperationsListResult": { + "description": "Result of the List Operations operation", + "type": "object", + "properties": { + "value": { + "description": "A collection of operations", + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + } + } + } + }, + "Operation": { + "description": "Represents an operation returned by the GetOperations request", + "type": "object", + "properties": { + "name": { + "description": "Name of the operation", + "type": "string" + }, + "display": { + "$ref": "#/definitions/OperationInfo", + "description": "Display name of the operation" + }, + "origin": { + "description": "Origin of the operation", + "type": "string" + }, + "properties": { + "description": "Properties of the operation", + "type": "object", + "x-ms-client-flatten": true + } + } + }, + "OperationInfo": { + "description": "Information about an operation", + "type": "object", + "properties": { + "provider": { + "description": "Name of the provider", + "type": "string" + }, + "resource": { + "description": "Name of the resource type", + "type": "string" + }, + "operation": { + "description": "Name of the operation", + "type": "string" + }, + "description": { + "description": "Description of the operation", + "type": "string" + } + } + }, + "ListUpdatesResult": { + "description": "Response for Updates list", + "type": "object", + "properties": { + "value": { + "description": "The pending updates", + "type": "array", + "items": { + "$ref": "#/definitions/Update" + } + } + } + }, + "Update": { + "description": "Maintenance update on a resource", + "type": "object", + "properties": { + "maintenanceScope": { + "description": "The impact area", + "enum": [ + "All", + "Host", + "Resource", + "InResource" + ], + "type": "string", + "x-ms-enum": { + "name": "MaintenanceScope", + "modelAsString": true + } + }, + "impactType": { + "description": "The impact type", + "enum": [ + "None", + "Freeze", + "Restart", + "Redeploy" + ], + "type": "string", + "x-ms-enum": { + "name": "ImpactType", + "modelAsString": true + } + }, + "status": { + "description": "The status", + "enum": [ + "Pending", + "InProgress", + "Completed", + "RetryNow", + "RetryLater" + ], + "type": "string", + "x-ms-enum": { + "name": "UpdateStatus", + "modelAsString": true + } + }, + "impactDurationInSec": { + "format": "int32", + "description": "Duration of impact in seconds", + "type": "integer" + }, + "notBefore": { + "format": "date-time", + "description": "Time when Azure will start force updates if not self-updated by customer before this time", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/UpdateProperties", + "description": "Properties of the apply update", + "x-ms-client-flatten": true + } + } + }, + "UpdateProperties": { + "description": "Properties for update", + "type": "object", + "properties": { + "resourceId": { + "description": "The resourceId", + "type": "string" + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Subscription credentials that uniquely identify a Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.", + "required": true, + "type": "string" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "Version of the API to be used with the client request.", + "required": true, + "type": "string" + } + }, + "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/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ApplyUpdates_CreateOrUpdate.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ApplyUpdates_CreateOrUpdate.json new file mode 100644 index 000000000000..724cf66e5513 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ApplyUpdates_CreateOrUpdate.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceType": "virtualMachineScaleSets", + "resourceName": "smdtest1", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/providers/Microsoft.Maintenance/applyUpdates/e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "name": "e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "type": "Microsoft.Maintenance/applyUpdates", + "properties": { + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1", + "status": "Pending" + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ApplyUpdates_CreateOrUpdateParent.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ApplyUpdates_CreateOrUpdateParent.json new file mode 100644 index 000000000000..70c87f579e40 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ApplyUpdates_CreateOrUpdateParent.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceParentType": "virtualMachineScaleSets", + "resourceParentName": "smdtest1", + "resourceType": "virtualMachines", + "resourceName": "smdvm1", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdvm1/providers/Microsoft.Maintenance/applyUpdates/e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "name": "e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "type": "Microsoft.Maintenance/applyUpdates", + "properties": { + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdvm1", + "status": "Pending" + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ApplyUpdates_Get.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ApplyUpdates_Get.json new file mode 100644 index 000000000000..9d92736c5723 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ApplyUpdates_Get.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceType": "virtualMachineScaleSets", + "resourceName": "smdtest1", + "applyUpdateName": "e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/providers/Microsoft.Maintenance/applyUpdates/e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "name": "e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "type": "Microsoft.Maintenance/applyUpdates", + "properties": { + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1", + "status": "Completed" + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ApplyUpdates_GetParent.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ApplyUpdates_GetParent.json new file mode 100644 index 000000000000..84f4c12f1e43 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ApplyUpdates_GetParent.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceParentType": "virtualMachineScaleSets", + "resourceParentName": "smdtest1", + "resourceType": "virtualMachines", + "resourceName": "smdvm1", + "applyUpdateName": "e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdvm1/providers/Microsoft.Maintenance/applyUpdates/e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "name": "e9b9685d-78e4-44c4-a81c-64a14f9b87b6", + "type": "Microsoft.Maintenance/applyUpdates", + "properties": { + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdvm1", + "status": "Completed" + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_CreateOrUpdate.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_CreateOrUpdate.json new file mode 100644 index 000000000000..4dec9e08e22f --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_CreateOrUpdate.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceType": "virtualMachineScaleSets", + "resourceName": "smdtest1", + "configurationAssignmentName": "workervmConfiguration", + "api-version": "2020-04-01", + "configurationAssignment": { + "properties": { + "maintenanceConfigurationId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/providers/Microsoft.Maintenance/configurationAssignments/workervmConfiguration", + "name": "workervmConfiguration", + "type": "Microsoft.Maintenance/configurationAssignments", + "properties": { + "maintenanceConfigurationId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1" + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_CreateOrUpdateParent.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_CreateOrUpdateParent.json new file mode 100644 index 000000000000..85fc09ce71b2 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_CreateOrUpdateParent.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceParentType": "virtualMachineScaleSets", + "resourceParentName": "smdtest1", + "resourceType": "virtualMachines", + "resourceName": "smdvm1", + "configurationAssignmentName": "workervmPolicy", + "api-version": "2020-04-01", + "configurationAssignment": { + "properties": { + "maintenanceConfigurationId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/policy1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdvm1/providers/Microsoft.Maintenance/configurationAssignments/workervmPolicy", + "name": "workervmPolicy", + "type": "Microsoft.Maintenance/configurationAssignments", + "properties": { + "maintenanceConfigurationId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/policy1", + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdvm1" + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_Delete.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_Delete.json new file mode 100644 index 000000000000..7f0d7b91cc4b --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_Delete.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceType": "virtualMachineScaleSets", + "resourceName": "smdtest1", + "configurationAssignmentName": "workervmConfiguration", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/providers/Microsoft.Maintenance/configurationAssignments/workervmConfiguration", + "name": "workervmConfiguration", + "type": "Microsoft.Maintenance/configurationAssignments" + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_DeleteParent.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_DeleteParent.json new file mode 100644 index 000000000000..35cf8541ebc8 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_DeleteParent.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceParentType": "virtualMachineScaleSets", + "resourceParentName": "smdtest1", + "resourceType": "virtualMachines", + "resourceName": "smdvm1", + "configurationAssignmentName": "workervmConfiguration", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/providers/Microsoft.Maintenance/configurationAssignments/workervmConfiguration", + "name": "workervmConfiguration", + "type": "Microsoft.Maintenance/configurationAssignments" + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_List.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_List.json new file mode 100644 index 000000000000..62033053c626 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_List.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceType": "virtualMachineScaleSets", + "resourceName": "smdtest1", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/providers/Microsoft.Maintenance/configurationAssignments/workervmConfiguration", + "name": "workervmConfiguration", + "type": "Microsoft.Maintenance/configurationAssignments", + "properties": { + "maintenanceConfigurationId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1" + } + } + ] + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_ListParent.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_ListParent.json new file mode 100644 index 000000000000..7b0f3af8e018 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/ConfigurationAssignments_ListParent.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceParentType": "virtualMachineScaleSets", + "resourceParentName": "smdtest1", + "resourceType": "virtualMachines", + "resourceName": "smdtestvm1", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdtestvm1/providers/Microsoft.Maintenance/configurationAssignments/workervmPolicy", + "name": "workervmPolicy", + "type": "Microsoft.Maintenance/configurationAssignments", + "properties": { + "maintenanceConfigurationId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/policy1", + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/smdtestvm1" + } + } + ] + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_CreateOrUpdateForResource.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_CreateOrUpdateForResource.json new file mode 100644 index 000000000000..452477570576 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_CreateOrUpdateForResource.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "resourceName": "configuration1", + "api-version": "2020-04-01", + "configuration": { + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "name": "configuration1", + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance", + "maintenanceScope": "All" + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_DeleteForResource.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_DeleteForResource.json new file mode 100644 index 000000000000..2633924f1fc6 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_DeleteForResource.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "resourceName": "example1", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "name": "configuration1", + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance" + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_GetForResource.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_GetForResource.json new file mode 100644 index 000000000000..7042e94c4b39 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_GetForResource.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "resourceName": "configuration1", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "name": "configuration1", + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance", + "maintenanceScope": "All" + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_List.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_List.json new file mode 100644 index 000000000000..95495ecb6bab --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_List.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "name": "configuration1", + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance", + "maintenanceScope": "All" + } + } + ] + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_UpdateForResource.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_UpdateForResource.json new file mode 100644 index 000000000000..452477570576 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/MaintenanceConfigurations_UpdateForResource.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "resourceName": "configuration1", + "api-version": "2020-04-01", + "configuration": { + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Maintenance/maintenanceConfigurations/configuration1", + "name": "configuration1", + "location": "westus2", + "properties": { + "namespace": "Microsoft.Maintenance", + "maintenanceScope": "All" + } + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/Operations_List.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/Operations_List.json new file mode 100644 index 000000000000..d1f0ff155c96 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/Operations_List.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [] + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/Updates_List.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/Updates_List.json new file mode 100644 index 000000000000..132354ce13ca --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/Updates_List.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceType": "virtualMachineScaleSets", + "resourceName": "smdtest1", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "maintenanceScope": "Resource", + "status": "Pending", + "impactType": "Reboot", + "impactDurationInSec": 1440, + "notBefore": "2018-10-09T06:17:44.235Z", + "properties": { + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1" + } + } + ] + } + } + } +} diff --git a/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/Updates_ListParent.json b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/Updates_ListParent.json new file mode 100644 index 000000000000..9af694695509 --- /dev/null +++ b/specification/maintenance/resource-manager/Microsoft.Maintenance/stable/2020-04-01/examples/Updates_ListParent.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "5b4b650e-28b9-4790-b3ab-ddbd88d727c4", + "resourceGroupName": "examplerg", + "providerName": "Microsoft.Compute", + "resourceParentType": "virtualMachineScaleSets", + "resourceParentName": "smdtest1", + "resourceType": "virtualMachines", + "resourceName": "1", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "maintenanceScope": "Resource", + "status": "Pending", + "impactType": "Reboot", + "impactDurationInSec": 1440, + "notBefore": "2018-10-09T06:17:44.235Z", + "properties": { + "resourceId": "/subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourcegroups/examplerg/providers/Microsoft.Compute/virtualMachineScaleSets/smdtest1/virtualMachines/1" + } + } + ] + } + } + } +} diff --git a/specification/maintenance/resource-manager/readme.go.md b/specification/maintenance/resource-manager/readme.go.md index 2344b31a0af4..5c36ca80143c 100644 --- a/specification/maintenance/resource-manager/readme.go.md +++ b/specification/maintenance/resource-manager/readme.go.md @@ -13,9 +13,19 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2020-04 - tag: package-2018-06-preview ``` +### Tag: package-2020-04 and go + +These settings apply only when `--tag=package-2020-04 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2020-04' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2020-04-01/$(namespace) +``` + ### Tag: package-2018-06-preview and go These settings apply only when `--tag=package-2018-06-preview --go` is specified on the command line. diff --git a/specification/maintenance/resource-manager/readme.java.md b/specification/maintenance/resource-manager/readme.java.md index ad4de62273c4..adbda7c68b21 100644 --- a/specification/maintenance/resource-manager/readme.java.md +++ b/specification/maintenance/resource-manager/readme.java.md @@ -16,9 +16,23 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-maintenance ``` yaml $(java) && $(multiapi) batch: + - tag: package-2020-04 - tag: package-2018-06-preview ``` +### Tag: package-2020-04 and java + +These settings apply only when `--tag=package-2020-04 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2020-04' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.maintenance.v2020_04_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/maintenance/mgmt-v2020_04_01 +regenerate-manager: true +generate-interface: true +``` + ### Tag: package-2018-06-preview and java These settings apply only when `--tag=package-2018-06-preview --java` is specified on the command line. diff --git a/specification/maintenance/resource-manager/readme.md b/specification/maintenance/resource-manager/readme.md index 68e06698e8ac..733545333792 100644 --- a/specification/maintenance/resource-manager/readme.md +++ b/specification/maintenance/resource-manager/readme.md @@ -26,9 +26,17 @@ These are the global settings for the Azure Maintenance API. ``` yaml openapi-type: arm -tag: package-2018-06-preview +tag: package-2020-04 ``` +### Tag: package-2020-04 + +These settings apply only when `--tag=package-2020-04` is specified on the command line. + +``` yaml $(tag) == 'package-2020-04' +input-file: +- Microsoft.Maintenance/stable/2020-04-01/Maintenance.json +``` ### Tag: package-2018-06-preview @@ -86,7 +94,7 @@ python: payload-flattening-threshold: 2 namespace: azure.mgmt.maintenance package-name: azure-mgmt-maintenance - package-version: 1.0.0 + package-version: 1.1.0 clear-output-folder: true ``` ``` yaml $(python) && $(python-mode) == 'update' @@ -120,6 +128,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/Microsoft.Maintenance/stable/2020-04-01/Maintenance.json - $(this-folder)/Microsoft.Maintenance/preview/2018-06-01-preview/Maintenance.json ``` diff --git a/specification/maintenance/resource-manager/readme.nodejs.md b/specification/maintenance/resource-manager/readme.nodejs.md index d0fd37dc9a62..7fa4c52b8200 100644 --- a/specification/maintenance/resource-manager/readme.nodejs.md +++ b/specification/maintenance/resource-manager/readme.nodejs.md @@ -7,7 +7,7 @@ Please also specify `--node-sdks-folder=`. + +``` yaml $(tag) == 'package-2020-04' && $(ruby) +namespace: "Azure::Maintenance::Mgmt::V2020_04_01" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_maintenance/lib +``` + ### Tag: package-2018-06-preview and ruby These settings apply only when `--tag=package-2017-06-preview --ruby` is specified on the command line. diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/AddManagementGroupSubscription.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/AddManagementGroupSubscription.json new file mode 100644 index 000000000000..ce672c8193d7 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/AddManagementGroupSubscription.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-02-01", + "groupId": "Group", + "subscriptionId": "728bcbe4-8d56-4510-86c2-4921b8beefbc", + "Cache-Control": "no-cache" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/CheckManagementGroupNameAvailability.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/CheckManagementGroupNameAvailability.json new file mode 100644 index 000000000000..bffc3e7d02f7 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/CheckManagementGroupNameAvailability.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2020-02-01", + "checkNameAvailabilityRequest": { + "name": "nameTocheck", + "type": "Microsoft.Management/managementGroups" + }, + "Cache-Control": "no-cache" + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "AlreadyExists", + "message": "Error message" + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/DeleteHierarchySettings.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/DeleteHierarchySettings.json new file mode 100644 index 000000000000..416b51173b65 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/DeleteHierarchySettings.json @@ -0,0 +1,9 @@ +{ + "parameters": { + "api-version": "2020-02-01", + "groupId": "root" + }, + "responses": { + "200": {} + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/DeleteManagementGroup.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/DeleteManagementGroup.json new file mode 100644 index 000000000000..719a59dab520 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/DeleteManagementGroup.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-02-01", + "groupId": "GroupToDelete", + "Cache-Control": "no-cache" + }, + "responses": { + "202": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/GroupToDelete", + "type": "Microsoft.Management/managementGroups", + "name": "GroupToDelete", + "status": "NotStarted" + } + }, + "204": {} + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/GetDescendants.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/GetDescendants.json new file mode 100644 index 000000000000..815d98631c84 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/GetDescendants.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-02-01", + "groupId": "20000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0001-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups", + "name": "20000000-0001-0000-0000-000000000000", + "properties": { + "displayName": "Group 1", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0000-0000-0000-000000000000" + } + } + }, + { + "id": "/subscriptions/20000000-0004-0000-0000-000000000000", + "type": "/subscriptions", + "name": "20000000-0004-0000-0000-000000000000", + "properties": { + "displayName": "Subscription 4", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0000-0000-0000-000000000000" + } + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/GetEntities.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/GetEntities.json new file mode 100644 index 000000000000..7617a91b28bc --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/GetEntities.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2020-02-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0001-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups", + "name": "20000000-0001-0000-0000-000000000000", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "displayName": "Group 1 Tenant 2", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0000-0000-0000-000000000000" + }, + "permissions": "view", + "inheritedPermissions": "view", + "parentDisplayNameChain": [ + "Tenant Root Group", + "Group 1 Tenant 2 Parent" + ], + "parentNameChain": [ + "TenantRootGroup", + "Group1Tenant2Parent" + ], + "numberOfDescendants": 3, + "numberOfChildren": 2, + "numberOfChildGroups": 1 + } + }, + { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0004-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups", + "name": "20000000-0004-0000-0000-000000000000", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "displayName": "Group 4 Tenant 2", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0000-0000-0000-000000000000" + }, + "permissions": "delete", + "inheritedPermissions": "delete", + "parentDisplayNameChain": [ + "Tenant Root Group", + "Group 4 Tenant 2 Parent" + ], + "parentNameChain": [ + "TenantRootGroup", + "Group4 Tenant2Parent" + ], + "numberOfDescendants": 0, + "numberOfChildren": 0, + "numberOfChildGroups": 0 + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/GetHierarchySettings.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/GetHierarchySettings.json new file mode 100644 index 000000000000..3cf3c130d240 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/GetHierarchySettings.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2020-02-01", + "groupId": "root" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/root/settings/default", + "type": "Microsoft.Management/managementGroups/settings", + "name": "root", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "defaultManagementGroup": "/providers/Microsoft.Management/managementGroups/DefaultGroup", + "requireAuthorizationForGroupCreation": true + } + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/GetManagementGroup.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/GetManagementGroup.json new file mode 100644 index 000000000000..6fa87315ee43 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/GetManagementGroup.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2020-02-01", + "groupId": "20000000-0001-0000-0000-000000000000", + "Cache-Control": "no-cache" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0001-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups", + "name": "20000000-0001-0000-0000-000000000000", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "displayName": "Group 1 Tenant 2", + "details": { + "version": 1, + "updatedTime": "2018-01-01T00:00:00.00Z", + "updatedBy": "16b8ef21-5c9f-420c-bcc9-e4f8c9f30b4b", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/RootGroup", + "name": "RootGroup", + "displayName": "RootGroup" + } + } + } + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/GetManagementGroupWithExpand.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/GetManagementGroupWithExpand.json new file mode 100644 index 000000000000..d77db9e630ba --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/GetManagementGroupWithExpand.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2020-02-01", + "groupId": "20000000-0001-0000-0000-000000000000", + "$expand": "children", + "Cache-Control": "no-cache" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0001-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups", + "name": "20000000-0001-0000-0000-000000000000", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "displayName": "Group 1 Tenant 2", + "details": { + "version": 1, + "updatedTime": "2018-01-01T00:00:00.00Z", + "updatedBy": "Test", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0000-0000-0000-000000000000", + "name": "20000000-0000-0000-0000-000000000000", + "displayName": "20000000-0000-0000-0000-000000000000" + } + }, + "children": [ + { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0002-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups", + "name": "20000000-0002-0000-0000-000000000000", + "displayName": "Group 2 Tenant 2" + }, + { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0003-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups", + "name": "20000000-0003-0000-0000-000000000000", + "displayName": "Group 3 Tenant 2" + }, + { + "id": "/subscriptions/10000000-F004-0000-0000-000000000000", + "type": "/subscriptions", + "name": "10000000-F004-0000-0000-000000000000", + "displayName": "Subscription 4 Tenant 1" + }, + { + "id": "/subscriptions/20000000-F005-0000-0000-000000000000", + "type": "/subscriptions", + "name": "20000000-F005-0000-0000-000000000000", + "displayName": "Subscription 5 Tenant 2" + }, + { + "id": "/subscriptions/30000000-F003-0000-0000-000000000000", + "type": "/subscriptions", + "name": "30000000-F003-0000-0000-000000000000", + "displayName": "Subscription 3 Tenant 3" + } + ] + } + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/GetManagementGroupWithExpandAndRecurse.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/GetManagementGroupWithExpandAndRecurse.json new file mode 100644 index 000000000000..398703ba8463 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/GetManagementGroupWithExpandAndRecurse.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "api-version": "2020-02-01", + "groupId": "20000000-0001-0000-0000-000000000000", + "$expand": "children", + "$recurse": true, + "Cache-Control": "no-cache" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/RootGroup", + "type": "Microsoft.Management/managementGroups", + "name": "RootGroup", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "displayName": "RootGroup", + "details": { + "version": 2, + "updatedTime": "2018-01-25T02:26:49.0022093Z", + "updatedBy": "bd490e30-04cb-433e-b8c8-6066959a8bab", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0000-0000-0000-000000000000", + "name": "20000000-0000-0000-0000-000000000000", + "displayName": "20000000-0000-0000-0000-000000000000" + } + }, + "children": [ + { + "id": "/providers/Microsoft.Management/managementGroups/Child", + "type": "Microsoft.Management/managementGroups", + "name": "Child", + "displayName": "Child", + "roles": [ + "/providers/Microsoft.Authorization/roleDefinitions/8e3af657-a8ff-443c-a75c-2fe8c4bcb635" + ], + "children": [ + { + "id": "/providers/Microsoft.Management/managementGroups/Leaf", + "type": "Microsoft.Management/managementGroups", + "name": "Leaf", + "displayName": "Leaf", + "roles": [ + "/providers/Microsoft.Authorization/roleDefinitions/8e3af657-a8ff-443c-a75c-2fe8c4bcb635" + ], + "children": [ + { + "id": "/subscriptions/728bcbe4-8d56-4510-86c2-4921b8beefbc", + "type": "/subscriptions", + "name": "728bcbe4-8d56-4510-86c2-4921b8beefbc", + "displayName": "Pay-As-You-Go", + "roles": [ + "/providers/Microsoft.Authorization/roleDefinitions/8e3af657-a8ff-443c-a75c-2fe8c4bcb635" + ] + } + ] + } + ] + }, + { + "id": "/providers/Microsoft.Management/managementGroups/AnotherChild", + "type": "Microsoft.Management/managementGroups", + "name": "AnotherChild", + "displayName": "Leaf", + "roles": [ + "/providers/Microsoft.Authorization/roleDefinitions/8e3af657-a8ff-443c-a75c-2fe8c4bcb635" + ] + } + ] + } + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/ListHierarchySettings.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/ListHierarchySettings.json new file mode 100644 index 000000000000..2810caf5d9d3 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/ListHierarchySettings.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2020-02-01", + "groupId": "root" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Management/managementGroups/root/settings/default", + "type": "Microsoft.Management/managementGroups/settings", + "name": "root", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "defaultManagementGroup": "/providers/Microsoft.Management/managementGroups/DefaultGroup", + "requireAuthorizationForGroupCreation": true + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/ListManagementGroups.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/ListManagementGroups.json new file mode 100644 index 000000000000..88a729a3a40b --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/ListManagementGroups.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-02-01", + "Cache-Control": "no-cache" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0001-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups", + "name": "20000000-0001-0000-0000-000000000000", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "displayName": "Group 1 Tenant 2" + } + }, + { + "id": "/providers/Microsoft.Management/managementGroups/20000000-0004-0000-0000-000000000000", + "type": "Microsoft.Management/managementGroups", + "name": "20000000-0004-0000-0000-000000000000", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "displayName": "Group 4 Tenant 2" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/PatchHierarchySettings.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/PatchHierarchySettings.json new file mode 100644 index 000000000000..e012db6d2cdd --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/PatchHierarchySettings.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-02-01", + "groupId": "root", + "CreateTenantSettingsRequest": { + "properties": { + "defaultManagementGroup": "/providers/Microsoft.Management/managementGroups/DefaultGroup", + "requireAuthorizationForGroupCreation": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/root/settings/default", + "type": "Microsoft.Management/managementGroups/settings", + "name": "root", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "defaultManagementGroup": "/providers/Microsoft.Management/managementGroups/DefaultGroup", + "requireAuthorizationForGroupCreation": true + } + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/PatchManagementGroup.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/PatchManagementGroup.json new file mode 100644 index 000000000000..ed65e0c11419 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/PatchManagementGroup.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2020-02-01", + "groupId": "ChildGroup", + "patchGroupRequest": { + "displayName": "AlternateDisplayName", + "parentGroupId": "/providers/Microsoft.Management/managementGroups/AlternateRootGroup" + }, + "Cache-Control": "no-cache" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/ChildGroup", + "type": "Microsoft.Management/managementGroups", + "name": "ChildGroup", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "displayName": "AlternateDisplayName", + "details": { + "version": 2, + "updatedTime": "2018-01-25T02:46:59.0545645Z", + "updatedBy": "bd490e30-04cb-433e-b8c8-6066959a8bab", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/AlternateRootGroup", + "name": "AlternateRootGroup", + "displayName": "AlternateRootGroup" + } + } + } + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/PutHierarchySettings.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/PutHierarchySettings.json new file mode 100644 index 000000000000..e012db6d2cdd --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/PutHierarchySettings.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-02-01", + "groupId": "root", + "CreateTenantSettingsRequest": { + "properties": { + "defaultManagementGroup": "/providers/Microsoft.Management/managementGroups/DefaultGroup", + "requireAuthorizationForGroupCreation": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/root/settings/default", + "type": "Microsoft.Management/managementGroups/settings", + "name": "root", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "defaultManagementGroup": "/providers/Microsoft.Management/managementGroups/DefaultGroup", + "requireAuthorizationForGroupCreation": true + } + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/PutManagementGroup.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/PutManagementGroup.json new file mode 100644 index 000000000000..df6aa5c14183 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/PutManagementGroup.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2020-02-01", + "groupId": "ChildGroup", + "createManagementGroupRequest": { + "properties": { + "displayName": "ChildGroup", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/RootGroup" + } + } + }, + "Cache-Control": "no-cache" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/ChildGroup", + "type": "Microsoft.Management/managementGroups", + "name": "ChildGroup", + "properties": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "displayName": "ChildGroup", + "details": { + "version": 1, + "updatedTime": "2018-01-01T00:00:00.00Z", + "updatedBy": "16b8ef21-5c9f-420c-bcc9-e4f8c9f30b4b", + "parent": { + "id": "/providers/Microsoft.Management/managementGroups/RootGroup", + "name": "RootGroup", + "displayName": "RootGroup" + } + } + } + } + }, + "202": { + "body": { + "id": "/providers/Microsoft.Management/managementGroups/ChildGroup", + "type": "Microsoft.Management/managementGroups", + "name": "ChildGroup", + "status": "NotStarted" + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/RemoveManagementGroupSubscription.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/RemoveManagementGroupSubscription.json new file mode 100644 index 000000000000..ce672c8193d7 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/RemoveManagementGroupSubscription.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-02-01", + "groupId": "Group", + "subscriptionId": "728bcbe4-8d56-4510-86c2-4921b8beefbc", + "Cache-Control": "no-cache" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/StartTenantBackfillRequest.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/StartTenantBackfillRequest.json new file mode 100644 index 000000000000..7c176e60d12b --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/StartTenantBackfillRequest.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-02-01", + "startTenantBackfillRequest": {} + }, + "responses": { + "200": { + "body": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "status": "Started" + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/TenantBackfillStatusRequest.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/TenantBackfillStatusRequest.json new file mode 100644 index 000000000000..5460120e4ca4 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/examples/TenantBackfillStatusRequest.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-02-01", + "tenantBackfillStatusRequest": {} + }, + "responses": { + "200": { + "body": { + "tenantId": "20000000-0000-0000-0000-000000000000", + "status": "Started" + } + } + } +} diff --git a/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/management.json b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/management.json new file mode 100644 index 000000000000..1506d1e38eb9 --- /dev/null +++ b/specification/managementgroups/resource-manager/Microsoft.Management/stable/2020-02-01/management.json @@ -0,0 +1,1996 @@ +{ + "swagger": "2.0", + "host": "management.azure.com", + "info": { + "version": "2020-02-01", + "title": "Management Groups API", + "description": "The Azure Management Groups API enables consolidation of multiple \nsubscriptions/resources into an organizational hierarchy and centrally \nmanage access control, policies, alerting and reporting for those resources.\n" + }, + "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" + } + } + }, + "tags": [ + { + "name": "ManagementGroups", + "description": "A Management Group is a customer defined scope (grouping mechanism) that \nprovides access control (authorization), policy management and reporting. \nManagement Groups are organized in a strictly tree-based hierarchy.\n" + }, + { + "name": "Operations", + "description": "Management operations supported by the Microsoft.Management resource provider.\n" + }, + { + "name": "Entities", + "description": "A list of entities that belong to the Management Groups.\n" + } + ], + "paths": { + "/providers/Microsoft.Management/managementGroups": { + "get": { + "tags": [ + "ManagementGroups" + ], + "operationId": "ManagementGroups_List", + "description": "List management groups for the authenticated user.\n", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/CacheControlHeader" + }, + { + "$ref": "#/parameters/SkipTokenParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagementGroupListResult" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ListManagementGroups": { + "$ref": "./examples/ListManagementGroups.json" + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}": { + "get": { + "tags": [ + "ManagementGroups" + ], + "operationId": "ManagementGroups_Get", + "description": "Get the details of the management group.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ExpandParameter" + }, + { + "$ref": "#/parameters/RecurseParameter" + }, + { + "$ref": "#/parameters/FilterParameter" + }, + { + "$ref": "#/parameters/CacheControlHeader" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagementGroup" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "GetManagementGroup": { + "$ref": "./examples/GetManagementGroup.json" + }, + "GetManagementGroupWithExpand": { + "$ref": "./examples/GetManagementGroupWithExpand.json" + }, + "GetManagementGroupsWithExpandAndRecurse": { + "$ref": "./examples/GetManagementGroupWithExpandAndRecurse.json" + } + } + }, + "put": { + "tags": [ + "ManagementGroups" + ], + "operationId": "ManagementGroups_CreateOrUpdate", + "description": "Create or update a management group.\nIf a management group is already created and a subsequent create request is issued with different properties, the management group properties will be updated.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/CacheControlHeader" + }, + { + "$ref": "#/parameters/CreateManagementGroupRequestParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagementGroup" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/AzureAsyncOperationResults" + }, + "headers": { + "Location": { + "description": "URL for determining when an operation has completed. Send a GET request to the URL in Location header.\nThe URI should return a 202 until the operation reaches a terminal state and 200 once it reaches a terminal state.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#202-accepted-and-location-headers", + "type": "string" + }, + "Azure-AsyncOperation": { + "description": "URL for checking the ongoing status of the operation.\nTo get the status of the asynchronous operation, send a GET request to the URL in Azure-AsyncOperation header value.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#asynchronous-operations", + "type": "string" + } + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PutManagementGroup": { + "$ref": "./examples/PutManagementGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "ManagementGroups" + ], + "operationId": "ManagementGroups_Update", + "description": "Update a management group.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/CacheControlHeader" + }, + { + "$ref": "#/parameters/PatchGroupRequestParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ManagementGroup" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "PatchManagementGroup": { + "$ref": "./examples/PatchManagementGroup.json" + } + } + }, + "delete": { + "tags": [ + "ManagementGroups" + ], + "operationId": "ManagementGroups_Delete", + "description": "Delete management group.\nIf a management group contains child resources, the request will fail.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/CacheControlHeader" + } + ], + "responses": { + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/AzureAsyncOperationResults" + }, + "headers": { + "Location": { + "description": "URL for determining when an operation has completed. Send a GET request to the URL in Location header.\nThe URI should return a 202 until the operation reaches a terminal state and 200 once it reaches a terminal state.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#202-accepted-and-location-headers", + "type": "string" + }, + "Azure-AsyncOperation": { + "description": "URL for checking the ongoing status of the operation.\nTo get the status of the asynchronous operation, send a GET request to the URL in Azure-AsyncOperation header value.\n\nFor more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#asynchronous-operations", + "type": "string" + } + } + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "DeleteManagementGroup": { + "$ref": "./examples/DeleteManagementGroup.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/descendants": { + "get": { + "tags": [ + "ManagementGroups" + ], + "operationId": "ManagementGroups_GetDescendants", + "description": "List all entities that descend from a management group.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SkipTokenParameter" + }, + { + "$ref": "#/parameters/TopParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DescendantListResult" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetDescendants": { + "$ref": "./examples/GetDescendants.json" + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/subscriptions/{subscriptionId}": { + "put": { + "tags": [ + "ManagementGroups" + ], + "operationId": "ManagementGroupSubscriptions_Create", + "description": "Associates existing subscription with the management group.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/CacheControlHeader" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "AddSubscriptionToManagementGroup": { + "$ref": "./examples/AddManagementGroupSubscription.json" + } + } + }, + "delete": { + "tags": [ + "ManagementGroups" + ], + "operationId": "ManagementGroupSubscriptions_Delete", + "description": "De-associates subscription from the management group.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/CacheControlHeader" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "DeleteSubscriptionFromManagementGroup": { + "$ref": "./examples/RemoveManagementGroupSubscription.json" + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/settings": { + "get": { + "tags": [ + "ManagementGroups" + ], + "operationId": "HierarchySettings_List", + "description": "Gets all the hierarchy settings defined at the Management Group level. Settings can only be set on the root Management Group of the hierarchy.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HierarchySettingsList" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "ListGroupSettings": { + "$ref": "./examples/ListHierarchySettings.json" + } + } + } + }, + "/providers/Microsoft.Management/managementGroups/{groupId}/settings/default": { + "get": { + "tags": [ + "ManagementGroups" + ], + "operationId": "HierarchySettings_Get", + "description": "Gets the hierarchy settings defined at the Management Group level. Settings can only be set on the root Management Group of the hierarchy.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HierarchySettings" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "GetGroupSettings": { + "$ref": "./examples/GetHierarchySettings.json" + } + } + }, + "put": { + "tags": [ + "ManagementGroups" + ], + "operationId": "HierarchySettings_CreateOrUpdate", + "description": "Creates or updates the hierarchy settings defined at the Management Group level.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/CreateOrUpdateManagementGroupSettingsRequestParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HierarchySettings" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "GetGroupSettings": { + "$ref": "./examples/PutHierarchySettings.json" + } + } + }, + "patch": { + "tags": [ + "ManagementGroups" + ], + "operationId": "HierarchySettings_Update", + "description": "Updates the hierarchy settings defined at the Management Group level.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/CreateOrUpdateManagementGroupSettingsRequestParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HierarchySettings" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "GetGroupSettings": { + "$ref": "./examples/PatchHierarchySettings.json" + } + } + }, + "delete": { + "tags": [ + "ManagementGroups" + ], + "operationId": "HierarchySettings_Delete", + "description": "Deletes the hierarchy settings defined at the Management Group level.\n", + "parameters": [ + { + "$ref": "#/parameters/GroupIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "GetGroupSettings": { + "$ref": "./examples/DeleteHierarchySettings.json" + } + } + } + }, + "/providers/Microsoft.Management/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "description": "Lists all of the available Management REST API operations.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Management/checkNameAvailability": { + "post": { + "tags": [ + "CheckNameAvailability" + ], + "operationId": "CheckNameAvailability", + "description": "Checks if the specified management group name is valid and unique", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/CheckNameAvailabilityParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "CheckManagementGroupNameAvailability": { + "$ref": "./examples/CheckManagementGroupNameAvailability.json" + } + } + } + }, + "/providers/Microsoft.Management/getEntities": { + "post": { + "tags": [ + "Entities" + ], + "operationId": "Entities_List", + "description": "List all entities (Management Groups, Subscriptions, etc.) for the authenticated user.\n", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SkipTokenParameter" + }, + { + "$ref": "#/parameters/SkipParameter" + }, + { + "$ref": "#/parameters/TopParameter" + }, + { + "$ref": "#/parameters/SelectParameter" + }, + { + "$ref": "#/parameters/SearchParameter" + }, + { + "$ref": "#/parameters/EntityFilterParameter" + }, + { + "$ref": "#/parameters/EntityViewParameter" + }, + { + "$ref": "#/parameters/GroupNameParameter" + }, + { + "$ref": "#/parameters/CacheControlHeader" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EntityListResult" + } + }, + "default": { + "description": "Error", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetEntities": { + "$ref": "./examples/GetEntities.json" + } + } + } + }, + "/providers/Microsoft.Management/startTenantBackfill": { + "post": { + "tags": [ + "TenantBackfill" + ], + "operationId": "StartTenantBackfill", + "description": "Starts backfilling subscriptions for the Tenant.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/TenantBackfillStatusResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "StartTenantBackfill": { + "$ref": "./examples/StartTenantBackfillRequest.json" + } + } + } + }, + "/providers/Microsoft.Management/tenantBackfillStatus": { + "post": { + "tags": [ + "TenantBackfill" + ], + "operationId": "TenantBackfillStatus", + "description": "Gets tenant backfill status", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/TenantBackfillStatusResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "TenantBackfillStatus": { + "$ref": "./examples/TenantBackfillStatusRequest.json" + } + } + } + } + }, + "definitions": { + "ErrorResponse": { + "description": "The error object.", + "properties": { + "error": { + "title": "Error", + "$ref": "#/definitions/ErrorDetails" + } + } + }, + "ErrorDetails": { + "description": "The details of the error.", + "properties": { + "code": { + "description": "One of a server-defined set of error codes.", + "type": "string" + }, + "message": { + "description": "A human-readable representation of the error.", + "type": "string" + }, + "details": { + "description": "A human-readable representation of the error's details.", + "type": "string" + } + } + }, + "Operation": { + "description": "Operation supported by the Microsoft.Management resource provider.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}.", + "type": "string", + "readOnly": true + }, + "display": { + "title": "Display", + "$ref": "#/definitions/OperationDisplayProperties" + } + } + }, + "OperationDisplayProperties": { + "description": "The object that represents the operation.", + "properties": { + "provider": { + "description": "The name of the provider.", + "type": "string", + "readOnly": true + }, + "resource": { + "description": "The resource on which the operation is performed.", + "type": "string", + "readOnly": true + }, + "operation": { + "description": "The operation that can be performed.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "Operation description.", + "type": "string", + "readOnly": true + } + } + }, + "OperationListResult": { + "description": "Describes the result of the request to list Microsoft.Management operations.", + "properties": { + "value": { + "description": "List of operations supported by the Microsoft.Management resource provider.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Operation" + } + }, + "nextLink": { + "description": "URL to get the next set of operation list results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "CheckNameAvailabilityResult": { + "description": "Describes the result of the request to check management group name availability.", + "properties": { + "nameAvailable": { + "description": "Required. True indicates name is valid and available. False indicates the name is invalid, unavailable, or both.", + "type": "boolean", + "readOnly": true + }, + "reason": { + "description": "Required if nameAvailable == false. Invalid indicates the name provided does not match the resource provider's naming requirements (incorrect length, unsupported characters, etc.) AlreadyExists indicates that the name is already in use and is therefore unavailable.", + "type": "string", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "x-ms-enum": { + "name": "Reason", + "modelAsString": false, + "values": [ + { + "value": "Invalid" + }, + { + "value": "AlreadyExists" + } + ] + }, + "readOnly": true + }, + "message": { + "description": "Required if nameAvailable == false. Localized. If reason == invalid, provide the user with the reason why the given name is invalid, and provide the resource naming requirements so that the user can select a valid name. If reason == AlreadyExists, explain that is already in use, and direct them to select a different name.", + "type": "string", + "readOnly": true + } + } + }, + "TenantBackfillStatusResult": { + "description": "The tenant backfill status", + "properties": { + "tenantId": { + "type": "string", + "description": "The AAD Tenant ID associated with the management group. For example, 00000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "status": { + "description": "The status of the Tenant Backfill", + "type": "string", + "enum": [ + "NotStarted", + "NotStartedButGroupsExist", + "Started", + "Failed", + "Cancelled", + "Completed" + ], + "x-ms-enum": { + "name": "Status", + "modelAsString": false, + "values": [ + { + "value": "NotStarted" + }, + { + "value": "NotStartedButGroupsExist" + }, + { + "value": "Started" + }, + { + "value": "Failed" + }, + { + "value": "Cancelled" + }, + { + "value": "Completed" + } + ] + }, + "readOnly": true + } + } + }, + "ManagementGroupListResult": { + "description": "Describes the result of the request to list management groups.", + "properties": { + "value": { + "description": "The list of management groups.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagementGroupInfo" + } + }, + "nextLink": { + "description": "The URL to use for getting the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "ManagementGroupInfo": { + "description": "The management group resource.", + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "type": { + "type": "string", + "description": "The type of the resource. For example, Microsoft.Management/managementGroups", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The name of the management group. For example, 00000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "properties": { + "x-ms-client-flatten": true, + "title": "Properties", + "$ref": "#/definitions/ManagementGroupInfoProperties" + } + } + }, + "ManagementGroupInfoProperties": { + "description": "The generic properties of a management group.", + "type": "object", + "properties": { + "tenantId": { + "type": "string", + "description": "The AAD Tenant ID associated with the management group. For example, 00000000-0000-0000-0000-000000000000" + }, + "displayName": { + "type": "string", + "description": "The friendly name of the management group." + } + } + }, + "ManagementGroup": { + "description": "The management group details.", + "x-ms-azure-resource": true, + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "type": { + "type": "string", + "description": "The type of the resource. For example, Microsoft.Management/managementGroups", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The name of the management group. For example, 00000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "properties": { + "title": "Properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ManagementGroupProperties" + } + } + }, + "ManagementGroupProperties": { + "description": "The generic properties of a management group.", + "type": "object", + "properties": { + "tenantId": { + "type": "string", + "description": "The AAD Tenant ID associated with the management group. For example, 00000000-0000-0000-0000-000000000000" + }, + "displayName": { + "type": "string", + "description": "The friendly name of the management group." + }, + "roles": { + "description": "The role definitions associated with the management group.", + "type": "array", + "x-nullable": true, + "items": { + "type": "string" + } + }, + "details": { + "title": "Details", + "$ref": "#/definitions/ManagementGroupDetails" + }, + "children": { + "description": "The list of children.", + "x-nullable": true, + "type": "array", + "items": { + "$ref": "#/definitions/ManagementGroupChildInfo" + } + }, + "path": { + "description": "The path from the root to the current group.", + "x-nullable": true, + "type": "array", + "items": { + "$ref": "#/definitions/ManagementGroupPathElement" + } + } + } + }, + "ManagementGroupDetails": { + "description": "The details of a management group.", + "type": "object", + "properties": { + "version": { + "type": "number", + "format": "int32", + "description": "The version number of the object." + }, + "updatedTime": { + "type": "string", + "format": "date-time", + "description": "The date and time when this object was last updated." + }, + "updatedBy": { + "type": "string", + "description": "The identity of the principal or process that updated the object." + }, + "parent": { + "title": "Parent", + "$ref": "#/definitions/ParentGroupInfo" + } + } + }, + "ManagementGroupChildInfo": { + "description": "The child information of a management group.", + "properties": { + "type": { + "title": "The type of child resource.", + "$ref": "#/definitions/ManagementGroupChildType", + "description": "The fully qualified resource type which includes provider namespace (e.g. Microsoft.Management/managementGroups)" + }, + "id": { + "type": "string", + "description": "The fully qualified ID for the child resource (management group or subscription). For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000" + }, + "name": { + "type": "string", + "description": "The name of the child entity." + }, + "displayName": { + "type": "string", + "description": "The friendly name of the child resource." + }, + "roles": { + "description": "The roles definitions associated with the management group.", + "type": "array", + "items": { + "type": "string" + } + }, + "children": { + "description": "The list of children.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagementGroupChildInfo" + } + } + } + }, + "ManagementGroupPathElement": { + "description": "A path element of a management group ancestors.", + "properties": { + "name": { + "type": "string", + "description": "The name of the group." + }, + "displayName": { + "type": "string", + "description": "The friendly name of the group." + } + } + }, + "ParentGroupInfo": { + "description": "(Optional) The ID of the parent management group.", + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the parent management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000" + }, + "name": { + "type": "string", + "description": "The name of the parent management group" + }, + "displayName": { + "type": "string", + "description": "The friendly name of the parent management group." + } + } + }, + "ManagementGroupChildType": { + "type": "string", + "enum": [ + "Microsoft.Management/managementGroups", + "/subscriptions" + ], + "description": "The type of child resource." + }, + "OperationResults": { + "description": "The results of an asynchronous operation.", + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "type": { + "type": "string", + "description": "The type of the resource. For example, Microsoft.Management/managementGroups", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The name of the management group. For example, 00000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "properties": { + "title": "Properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ManagementGroupInfoProperties" + } + } + }, + "AzureAsyncOperationResults": { + "description": "The results of Azure-AsyncOperation.", + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "type": { + "type": "string", + "description": "The type of the resource. For example, Microsoft.Management/managementGroups", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The name of the management group. For example, 00000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "status": { + "type": "string", + "description": "The current status of the asynchronous operation performed . For example, Running, Succeeded, Failed", + "readOnly": true + }, + "properties": { + "title": "Properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ManagementGroupInfoProperties" + } + } + }, + "HierarchySettings": { + "description": "Settings defined at the Management Group scope.", + "x-ms-azure-resource": true, + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the settings object. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000/settings/default.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "The type of the resource. For example, Microsoft.Management/managementGroups/settings.", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The name of the object. In this case, default.", + "readOnly": true + }, + "properties": { + "title": "Properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/HierarchySettingsProperties" + } + } + }, + "HierarchySettingsProperties": { + "description": "The generic properties of hierarchy settings.", + "type": "object", + "properties": { + "tenantId": { + "type": "string", + "description": "The AAD Tenant ID associated with the hierarchy settings. For example, 00000000-0000-0000-0000-000000000000" + }, + "requireAuthorizationForGroupCreation": { + "type": "boolean", + "description": "Indicates whether RBAC access is required upon group creation under the root Management Group. If set to true, user will require Microsoft.Management/managementGroups/write action on the root Management Group scope in order to create new Groups directly under the root. This will prevent new users from creating new Management Groups, unless they are given access." + }, + "defaultManagementGroup": { + "type": "string", + "description": "Settings that sets the default Management Group under which new subscriptions get added in this tenant. For example, /providers/Microsoft.Management/managementGroups/defaultGroup" + } + } + }, + "HierarchySettingsList": { + "description": "Lists all hierarchy settings.", + "properties": { + "value": { + "description": "The list of hierarchy settings.", + "type": "array", + "items": { + "$ref": "#/definitions/HierarchySettingsInfo" + } + }, + "nextLink": { + "description": "The URL to use for getting the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "HierarchySettingsInfo": { + "description": "The hierarchy settings resource.", + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the settings object. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000/settings/default.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "The type of the resource. For example, Microsoft.Management/managementGroups/settings.", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The name of the object. In this case, default.", + "readOnly": true + }, + "properties": { + "x-ms-client-flatten": true, + "title": "Properties", + "$ref": "#/definitions/HierarchySettingsProperties" + } + } + }, + "CreateOrUpdateSettingsRequest": { + "description": "Parameters for creating or updating Management Group settings", + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "properties": { + "title": "Properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CreateOrUpdateSettingsProperties" + } + } + }, + "CreateOrUpdateSettingsProperties": { + "description": "The properties of the request to create or update Management Group settings", + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "requireAuthorizationForGroupCreation": { + "type": "boolean", + "description": "Indicates whether RBAC access is required upon group creation under the root Management Group. If set to true, user will require Microsoft.Management/managementGroups/write action on the root Management Group scope in order to create new Groups directly under the root. This will prevent new users from creating new Management Groups, unless they are given access." + }, + "defaultManagementGroup": { + "type": "string", + "description": "Settings that sets the default Management Group under which new subscriptions get added in this tenant. For example, /providers/Microsoft.Management/managementGroups/defaultGroup" + } + } + }, + "DescendantListResult": { + "description": "Describes the result of the request to view descendants.", + "properties": { + "value": { + "description": "The list of descendants.", + "type": "array", + "items": { + "$ref": "#/definitions/DescendantInfo" + } + }, + "nextLink": { + "description": "The URL to use for getting the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "DescendantInfo": { + "description": "The descendant.", + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the descendant. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000 or /subscriptions/0000000-0000-0000-0000-000000000000", + "readOnly": true, + "x-nullable": true + }, + "type": { + "type": "string", + "description": "The type of the resource. For example, Microsoft.Management/managementGroups or /subscriptions", + "readOnly": true, + "x-nullable": true + }, + "name": { + "type": "string", + "description": "The name of the descendant. For example, 00000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "properties": { + "title": "Properties", + "x-ms-client-flatten": true, + "x-nullable": true, + "$ref": "#/definitions/DescendantInfoProperties" + } + } + }, + "DescendantInfoProperties": { + "description": "The generic properties of an descendant.", + "type": "object", + "properties": { + "displayName": { + "type": "string", + "description": "The friendly name of the management group.", + "x-nullable": true + }, + "parent": { + "title": "Parent", + "$ref": "#/definitions/DescendantParentGroupInfo", + "x-nullable": true + } + } + }, + "DescendantParentGroupInfo": { + "description": "The ID of the parent management group.", + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the parent management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000" + } + } + }, + "EntityListResult": { + "description": "Describes the result of the request to view entities.", + "properties": { + "value": { + "description": "The list of entities.", + "type": "array", + "items": { + "$ref": "#/definitions/EntityInfo" + } + }, + "count": { + "description": "Total count of records that match the filter", + "type": "integer", + "readOnly": true + }, + "nextLink": { + "description": "The URL to use for getting the next set of results.", + "type": "string", + "readOnly": true + } + } + }, + "EntityInfo": { + "description": "The entity.", + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the entity. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000", + "readOnly": true, + "x-nullable": true + }, + "type": { + "type": "string", + "description": "The type of the resource. For example, Microsoft.Management/managementGroups", + "readOnly": true, + "x-nullable": true + }, + "name": { + "type": "string", + "description": "The name of the entity. For example, 00000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "properties": { + "title": "Properties", + "x-ms-client-flatten": true, + "x-nullable": true, + "$ref": "#/definitions/EntityInfoProperties" + } + } + }, + "EntityInfoProperties": { + "description": "The generic properties of an entity.", + "type": "object", + "properties": { + "tenantId": { + "type": "string", + "description": "The AAD Tenant ID associated with the entity. For example, 00000000-0000-0000-0000-000000000000", + "x-nullable": true + }, + "displayName": { + "type": "string", + "description": "The friendly name of the management group.", + "x-nullable": true + }, + "parent": { + "title": "Parent", + "$ref": "#/definitions/EntityParentGroupInfo", + "x-nullable": true + }, + "permissions": { + "title": "Permissions", + "x-nullable": true, + "$ref": "#/definitions/Permissions" + }, + "inheritedPermissions": { + "title": "Inherited Permissions", + "x-nullable": true, + "$ref": "#/definitions/Permissions" + }, + "numberOfDescendants": { + "title": "Number of Descendants", + "type": "integer", + "x-nullable": true + }, + "numberOfChildren": { + "title": "Number of Children", + "description": "Number of children is the number of Groups and Subscriptions that are exactly one level underneath the current Group.", + "type": "integer", + "x-nullable": true + }, + "numberOfChildGroups": { + "title": "Number of Child Groups", + "description": "Number of children is the number of Groups that are exactly one level underneath the current Group.", + "type": "integer", + "x-nullable": true + }, + "parentDisplayNameChain": { + "type": "array", + "description": "The parent display name chain from the root group to the immediate parent", + "x-nullable": true, + "items": { + "type": "string" + } + }, + "parentNameChain": { + "type": "array", + "description": "The parent name chain from the root group to the immediate parent", + "x-nullable": true, + "items": { + "type": "string" + } + } + } + }, + "EntityParentGroupInfo": { + "description": "(Optional) The ID of the parent management group.", + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the parent management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000" + } + } + }, + "EntityHierarchyItem": { + "description": "The management group details for the hierarchy view.", + "x-ms-azure-resource": true, + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "type": { + "type": "string", + "description": "The type of the resource. For example, Microsoft.Management/managementGroups", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The name of the management group. For example, 00000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "properties": { + "title": "Properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/EntityHierarchyItemProperties" + } + } + }, + "EntityHierarchyItemProperties": { + "description": "The generic properties of a management group.", + "type": "object", + "properties": { + "displayName": { + "type": "string", + "description": "The friendly name of the management group." + }, + "permissions": { + "title": "Permissions", + "$ref": "#/definitions/Permissions" + }, + "children": { + "type": "array", + "description": "The list of children.", + "x-nullable": true, + "items": { + "$ref": "#/definitions/EntityHierarchyItem" + } + } + } + }, + "PatchManagementGroupRequest": { + "description": "Management group patch parameters.", + "type": "object", + "properties": { + "displayName": { + "type": "string", + "description": "The friendly name of the management group.", + "x-nullable": true + }, + "parentId": { + "type": "string", + "description": "(Optional) The fully qualified ID for the parent management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000", + "x-nullable": true + } + } + }, + "CreateManagementGroupRequest": { + "description": "Management group creation parameters.", + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000", + "readOnly": true + }, + "type": { + "type": "string", + "description": "The type of the resource. For example, Microsoft.Management/managementGroups", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The name of the management group. For example, 00000000-0000-0000-0000-000000000000" + }, + "properties": { + "title": "Properties", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CreateManagementGroupProperties" + } + } + }, + "CreateManagementGroupProperties": { + "description": "The generic properties of a management group used during creation.", + "type": "object", + "properties": { + "tenantId": { + "type": "string", + "readOnly": true, + "description": "The AAD Tenant ID associated with the management group. For example, 00000000-0000-0000-0000-000000000000" + }, + "displayName": { + "type": "string", + "description": "The friendly name of the management group. If no value is passed then this field will be set to the groupId.", + "x-nullable": true + }, + "roles": { + "description": "The roles definitions associated with the management group.", + "readOnly": true, + "type": "array", + "x-nullable": true, + "items": { + "type": "string" + } + }, + "details": { + "title": "Details", + "$ref": "#/definitions/CreateManagementGroupDetails" + }, + "children": { + "description": "The list of children.", + "readOnly": true, + "x-nullable": true, + "type": "array", + "items": { + "$ref": "#/definitions/CreateManagementGroupChildInfo" + } + } + } + }, + "CreateManagementGroupDetails": { + "description": "The details of a management group used during creation.", + "type": "object", + "properties": { + "version": { + "type": "number", + "readOnly": true, + "format": "int32", + "description": "The version number of the object." + }, + "updatedTime": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "The date and time when this object was last updated." + }, + "updatedBy": { + "type": "string", + "readOnly": true, + "description": "The identity of the principal or process that updated the object." + }, + "parent": { + "title": "Parent", + "$ref": "#/definitions/CreateParentGroupInfo" + } + } + }, + "CreateManagementGroupChildInfo": { + "description": "The child information of a management group used during creation.", + "properties": { + "type": { + "title": "The type of child resource.", + "readOnly": true, + "$ref": "#/definitions/ManagementGroupChildType", + "description": "The fully qualified resource type which includes provider namespace (e.g. Microsoft.Management/managementGroups)" + }, + "id": { + "type": "string", + "readOnly": true, + "description": "The fully qualified ID for the child resource (management group or subscription). For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the child entity." + }, + "displayName": { + "type": "string", + "readOnly": true, + "description": "The friendly name of the child resource." + }, + "roles": { + "description": "The roles definitions associated with the management group.", + "readOnly": true, + "type": "array", + "items": { + "type": "string" + } + }, + "children": { + "description": "The list of children.", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/CreateManagementGroupChildInfo" + } + } + } + }, + "CreateParentGroupInfo": { + "description": "(Optional) The ID of the parent management group used during creation.", + "properties": { + "id": { + "type": "string", + "description": "The fully qualified ID for the parent management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the parent management group" + }, + "displayName": { + "type": "string", + "readOnly": true, + "description": "The friendly name of the parent management group." + } + } + }, + "Permissions": { + "type": "string", + "enum": [ + "noaccess", + "view", + "edit", + "delete" + ], + "description": "The users specific permissions to this item." + }, + "CheckNameAvailabilityRequest": { + "description": "Management group name availability check parameters.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "the name to check for availability" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Management/managementGroup" + ], + "x-ms-enum": { + "name": "Type", + "modelAsString": false, + "values": [ + { + "value": "Microsoft.Management/managementGroup" + } + ] + }, + "description": "fully qualified resource type which includes provider namespace" + } + } + } + }, + "parameters": { + "GroupIdParameter": { + "name": "groupId", + "in": "path", + "required": true, + "type": "string", + "description": "Management Group ID.", + "x-ms-parameter-location": "method" + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription ID.", + "x-ms-parameter-location": "method" + }, + "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 2018-01-01-preview." + }, + "ExpandParameter": { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "children", + "path" + ], + "x-ms-parameter-location": "method", + "description": "The $expand=children query string parameter allows clients to request inclusion of children in the response payload. $expand=path includes the path from the root group to the current group." + }, + "RecurseParameter": { + "name": "$recurse", + "in": "query", + "required": false, + "type": "boolean", + "x-ms-parameter-location": "method", + "description": "The $recurse=true query string parameter allows clients to request inclusion of entire hierarchy in the response payload. Note that $expand=children must be passed up if $recurse is set to true." + }, + "CreateManagementGroupRequestParameter": { + "name": "createManagementGroupRequest", + "in": "body", + "required": true, + "description": "Management group creation parameters.", + "schema": { + "$ref": "#/definitions/CreateManagementGroupRequest" + }, + "x-ms-parameter-location": "client" + }, + "PatchGroupRequestParameter": { + "name": "patchGroupRequest", + "in": "body", + "required": true, + "description": "Management group patch parameters.", + "schema": { + "$ref": "#/definitions/PatchManagementGroupRequest" + }, + "x-ms-parameter-location": "client" + }, + "FilterParameter": { + "name": "$filter", + "in": "query", + "required": false, + "description": "A filter which allows the exclusion of subscriptions from results (i.e. '$filter=children.childType ne Subscription')", + "type": "string", + "x-ms-parameter-location": "method" + }, + "EntityFilterParameter": { + "name": "$filter", + "in": "query", + "required": false, + "description": "The filter parameter allows you to filter on the the name or display name fields. You can check for equality on the name field (e.g. name eq '{entityName}') and you can check for substrings on either the name or display name fields(e.g. contains(name, '{substringToSearch}'), contains(displayName, '{substringToSearch')). Note that the '{entityName}' and '{substringToSearch}' fields are checked case insensitively.", + "type": "string", + "x-ms-parameter-location": "method" + }, + "SelectParameter": { + "name": "$select", + "in": "query", + "required": false, + "description": "This parameter specifies the fields to include in the response. Can include any combination of Name,DisplayName,Type,ParentDisplayNameChain,ParentChain, e.g. '$select=Name,DisplayName,Type,ParentDisplayNameChain,ParentNameChain'. When specified the $select parameter can override select in $skipToken.", + "type": "string", + "x-ms-parameter-location": "method" + }, + "SearchParameter": { + "name": "$search", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "AllowedParents", + "AllowedChildren", + "ParentAndFirstLevelChildren", + "ParentOnly", + "ChildrenOnly" + ], + "x-ms-parameter-location": "method", + "description": "The $search parameter is used in conjunction with the $filter parameter to return three different outputs depending on the parameter passed in. \nWith $search=AllowedParents the API will return the entity info of all groups that the requested entity will be able to reparent to as determined by the user's permissions.\nWith $search=AllowedChildren the API will return the entity info of all entities that can be added as children of the requested entity.\nWith $search=ParentAndFirstLevelChildren the API will return the parent and first level of children that the user has either direct access to or indirect access via one of their descendants.\nWith $search=ParentOnly the API will return only the group if the user has access to at least one of the descendants of the group.\nWith $search=ChildrenOnly the API will return only the first level of children of the group entity info specified in $filter. The user must have direct access to the children entities or one of it's descendants for it to show up in the results." + }, + "GroupNameParameter": { + "name": "groupName", + "in": "query", + "required": false, + "description": "A filter which allows the get entities call to focus on a particular group (i.e. \"$filter=name eq 'groupName'\")", + "type": "string", + "x-ms-parameter-location": "method" + }, + "CreateOrUpdateManagementGroupSettingsRequestParameter": { + "name": "CreateTenantSettingsRequest", + "in": "body", + "required": true, + "description": "Tenant level settings request parameter.", + "schema": { + "$ref": "#/definitions/CreateOrUpdateSettingsRequest" + }, + "x-ms-parameter-location": "client" + }, + "OperationResultIdParameter": { + "name": "operationResultId", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "create", + "delete" + ], + "description": "The id of the operation result.", + "x-ms-parameter-location": "client" + }, + "CheckNameAvailabilityParameter": { + "name": "checkNameAvailabilityRequest", + "in": "body", + "required": true, + "description": "Management group name availability check parameters.", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityRequest" + }, + "x-ms-parameter-location": "client" + }, + "SkipParameter": { + "name": "$skip", + "in": "query", + "required": false, + "type": "integer", + "description": "Number of entities to skip over when retrieving results. Passing this in will override $skipToken.", + "x-ms-parameter-location": "client" + }, + "TopParameter": { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "description": "Number of elements to return when retrieving results. Passing this in will override $skipToken.", + "x-ms-parameter-location": "client" + }, + "SkipTokenParameter": { + "name": "$skiptoken", + "in": "query", + "required": false, + "type": "string", + "description": "Page continuation token is only used if a previous operation returned a partial result. \nIf a previous response contains a nextLink element, the value of the nextLink element will include a token parameter that specifies a starting point to use for subsequent calls.\n", + "x-ms-parameter-location": "client" + }, + "CacheControlHeader": { + "name": "Cache-Control", + "in": "header", + "default": "no-cache", + "description": "Indicates that the request shouldn't utilize any caches.", + "type": "string", + "x-ms-parameter-location": "method" + }, + "EntityViewParameter": { + "name": "$view", + "in": "query", + "required": false, + "type": "string", + "enum": [ + "FullHierarchy", + "GroupsOnly", + "SubscriptionsOnly", + "Audit" + ], + "x-ms-parameter-location": "method", + "description": "The view parameter allows clients to filter the type of data that is returned by the getEntities call." + } + } +} diff --git a/specification/managementgroups/resource-manager/readme.go.md b/specification/managementgroups/resource-manager/readme.go.md index b39d9b2ccfc1..11598a3f2966 100644 --- a/specification/managementgroups/resource-manager/readme.go.md +++ b/specification/managementgroups/resource-manager/readme.go.md @@ -13,12 +13,22 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2020-02 - tag: package-2019-11 - tag: package-2018-03 - tag: package-2018-01 - tag: package-2017-11 - tag: package-2017-08 ``` +### Tag: package-2020-02 and go + +These settings apply only when `--tag=package-2020-02 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag)=='package-2020-02' && $(go) +output-folder: $(go-sdk-folder)/services/preview/resources/mgmt/2020-02-01/$(namespace) +``` + ### Tag: package-2019-11 and go These settings apply only when `--tag=package-2019-11 --go` is specified on the command line. diff --git a/specification/managementgroups/resource-manager/readme.md b/specification/managementgroups/resource-manager/readme.md index 7b72c1d0fb84..a4124506a58a 100644 --- a/specification/managementgroups/resource-manager/readme.md +++ b/specification/managementgroups/resource-manager/readme.md @@ -24,7 +24,15 @@ These are the global settings for the API. ``` yaml openapi-type: arm -tag: package-2019-11 +tag: package-2020-02 +``` + +### Tag: package-2020-02 +These settings apply only when `--tag=package-2020-02` is specified on the command line. + +``` yaml $(tag) == 'package-2020-02' +input-file: + - Microsoft.Management/stable/2020-02-01/management.json ``` ### Tag: package-2019-11 @@ -154,6 +162,7 @@ batch: - tag: package-2018-01 - tag: package-2018-03 - tag: package-2019-11 + - tag: package-2020-02 ``` ### Tag: package-2017-08 and java @@ -219,6 +228,18 @@ java: regenerate-manager: true generate-interface: true ``` +### Tag: package-2020-02 and java + +These settings apply only when `--tag=package-2020-02 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2020-02' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.managementgroups.v2020_02_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/managementgroups/mgmt-v2020_02_01 +regenerate-manager: true +generate-interface: true +``` @@ -234,6 +255,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(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 diff --git a/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/ManagementPartner.json b/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/ManagementPartner.json index b1c131165ddb..d875c58cd7e7 100644 --- a/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/ManagementPartner.json +++ b/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/ManagementPartner.json @@ -291,7 +291,8 @@ "description": "This is the object id." }, "version": { - "type": "string", + "type": "integer", + "format": "int32", "description": "This is the version." }, "updatedTime": { diff --git a/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/examples/DeletePartnerDetails.json b/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/examples/DeletePartnerDetails.json index b43f1a6bfb16..745f15967d3e 100644 --- a/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/examples/DeletePartnerDetails.json +++ b/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/examples/DeletePartnerDetails.json @@ -4,8 +4,6 @@ "partnerId": "123456" }, "responses": { - "200": { - "body": "" - } + "200": {} } } diff --git a/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/examples/GetPartnerDetails.json b/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/examples/GetPartnerDetails.json index 52b8682e1987..eb0a2f6f853b 100644 --- a/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/examples/GetPartnerDetails.json +++ b/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/examples/GetPartnerDetails.json @@ -15,7 +15,7 @@ "partnerName": "Test_jefl", "tenantId": "1b1121dd-6900-412a-af73-e8d44f81e1c1", "objectId": "aa67f786-0552-423e-8849-244ed12bf581", - "version": "3", + "version": 3, "updatedTime": "2018-01-20T01:52:57.9126052Z", "createdTime": "2018-01-20T01:23:40.5280496Z", "state": "Active" diff --git a/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/examples/GetPartnerDetailsNoPartnerId.json b/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/examples/GetPartnerDetailsNoPartnerId.json index a21b73660aa4..75963a6d05a5 100644 --- a/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/examples/GetPartnerDetailsNoPartnerId.json +++ b/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/examples/GetPartnerDetailsNoPartnerId.json @@ -14,7 +14,7 @@ "partnerName": "Test_jefl", "tenantId": "1b1121dd-6900-412a-af73-e8d44f81e1c1", "objectId": "aa67f786-0552-423e-8849-244ed12bf581", - "version": "3", + "version": 3, "updatedTime": "2018-01-20T01:52:57.9126052Z", "createdTime": "2018-01-20T01:23:40.5280496Z", "state": "Active" diff --git a/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/examples/PatchPartnerDetails.json b/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/examples/PatchPartnerDetails.json index 52b8682e1987..eb0a2f6f853b 100644 --- a/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/examples/PatchPartnerDetails.json +++ b/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/examples/PatchPartnerDetails.json @@ -15,7 +15,7 @@ "partnerName": "Test_jefl", "tenantId": "1b1121dd-6900-412a-af73-e8d44f81e1c1", "objectId": "aa67f786-0552-423e-8849-244ed12bf581", - "version": "3", + "version": 3, "updatedTime": "2018-01-20T01:52:57.9126052Z", "createdTime": "2018-01-20T01:23:40.5280496Z", "state": "Active" diff --git a/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/examples/PutPartnerDetails.json b/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/examples/PutPartnerDetails.json index 52b8682e1987..eb0a2f6f853b 100644 --- a/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/examples/PutPartnerDetails.json +++ b/specification/managementpartner/resource-manager/Microsoft.ManagementPartner/preview/2018-02-01/examples/PutPartnerDetails.json @@ -15,7 +15,7 @@ "partnerName": "Test_jefl", "tenantId": "1b1121dd-6900-412a-af73-e8d44f81e1c1", "objectId": "aa67f786-0552-423e-8849-244ed12bf581", - "version": "3", + "version": 3, "updatedTime": "2018-01-20T01:52:57.9126052Z", "createdTime": "2018-01-20T01:23:40.5280496Z", "state": "Active" diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/CreateAccount.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/CreateAccount.json new file mode 100644 index 000000000000..479aa06c15d8 --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/CreateAccount.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2020-02-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount", + "MapsAccountCreateParameters": { + "location": "global", + "sku": { + "name": "S0" + }, + "tags": { + "test": "true" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount", + "name": "myMapsAccount", + "type": "Microsoft.Maps/accounts", + "location": "global", + "tags": { + "test": "true" + }, + "sku": { + "name": "S0", + "tier": "Standard" + }, + "properties": { + "x-ms-client-id": "string" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount", + "name": "myMapsAccount", + "type": "Microsoft.Maps/accounts", + "location": "global", + "tags": { + "test": "true" + }, + "sku": { + "name": "S0", + "tier": "Standard" + }, + "properties": { + "x-ms-client-id": "string" + } + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/CreatePrivateAtlas.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/CreatePrivateAtlas.json new file mode 100644 index 000000000000..2cdac095220f --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/CreatePrivateAtlas.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2020-02-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount", + "privateAtlasName": "myPrivateAtlas", + "PrivateAtlasCreateParameters": { + "location": "unitedstates", + "tags": { + "test": "true" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount/privateAtlases/myPrivateAtlas", + "name": "myPrivateAtlas", + "type": "Microsoft.Maps/accounts/privateAtlases", + "location": "unitedstates", + "tags": { + "test": "true" + }, + "properties": { + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount/privateAtlases/myPrivateAtlas", + "name": "myPrivateAtlas", + "type": "Microsoft.Maps/accounts/privateAtlases", + "location": "unitedstates", + "tags": { + "test": "true" + }, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/DeleteAccount.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/DeleteAccount.json new file mode 100644 index 000000000000..f1c3cf4b7431 --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/DeleteAccount.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-02-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/DeletePrivateAtlas.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/DeletePrivateAtlas.json new file mode 100644 index 000000000000..0fa27735df9f --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/DeletePrivateAtlas.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-02-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount", + "privateAtlasName": "myPrivateAtlas" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/GetAccount.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/GetAccount.json new file mode 100644 index 000000000000..3645484a919c --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/GetAccount.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2020-02-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount", + "name": "myMapsAccount", + "type": "Microsoft.Maps/accounts", + "location": "global", + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + }, + "tags": { + "test": "true" + }, + "sku": { + "name": "S0", + "tier": "Standard" + }, + "properties": { + "x-ms-client-id": "string" + } + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/GetOperations.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/GetOperations.json new file mode 100644 index 000000000000..5b1c4177aa9f --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/GetOperations.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "api-version": "2020-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Maps/register/action", + "display": { + "provider": "Microsoft Maps", + "resource": "Maps Account", + "operation": "Register the provider", + "description": "Register the provider" + } + }, + { + "name": "Microsoft.Maps/accounts/write", + "display": { + "provider": "Microsoft Maps", + "resource": "Maps Account", + "operation": "Create or update a Maps Account.", + "description": "Create or update a Maps Account." + } + }, + { + "name": "Microsoft.Maps/accounts/read", + "display": { + "provider": "Microsoft Maps", + "resource": "Maps Account", + "operation": "Get a Maps Account.", + "description": "Get a Maps Account." + } + }, + { + "name": "Microsoft.Maps/accounts/delete", + "display": { + "provider": "Microsoft Maps", + "resource": "Maps Account", + "operation": "Delete a Maps Account.", + "description": "Delete a Maps Account." + } + }, + { + "name": "Microsoft.Maps/accounts/listKeys/action", + "display": { + "provider": "Microsoft Maps", + "resource": "Maps Account", + "operation": "List keys", + "description": "List Maps Account keys" + } + }, + { + "name": "Microsoft.Maps/accounts/regenerateKey/action", + "display": { + "provider": "Microsoft Maps", + "resource": "Maps Account", + "operation": "Generate new primary or secondary key", + "description": "Generate new Maps Account primary or secondary key" + } + }, + { + "name": "Microsoft.Maps/accounts/privateAtlases/write", + "display": { + "provider": "Microsoft Maps", + "resource": "Private Atlas", + "operation": "Create or update a Private Atlas.", + "description": "Create or update a Private Atlas." + } + }, + { + "name": "Microsoft.Maps/accounts/privateAtlases/read", + "display": { + "provider": "Microsoft Maps", + "resource": "Private Atlas", + "operation": "Get a Private Atlas.", + "description": "Get a Private Atlas." + } + }, + { + "name": "Microsoft.Maps/accounts/privateAtlases/delete", + "display": { + "provider": "Microsoft Maps", + "resource": "Private Atlas", + "operation": "Delete a Private Atlas.", + "description": "Delete a Private Atlas." + } + } + ] + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/GetPrivateAtlas.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/GetPrivateAtlas.json new file mode 100644 index 000000000000..be395a1bdb57 --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/GetPrivateAtlas.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2020-02-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount", + "privateAtlasName": "myPrivateAtlas" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount/privateAtlases/myPrivateAtlas", + "name": "myPrivateAtlas", + "type": "Microsoft.Maps/accounts/privateAtlases", + "location": "unitedstates", + "tags": { + "test": "true" + }, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/ListAccountsByResourceGroup.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/ListAccountsByResourceGroup.json new file mode 100644 index 000000000000..d34e9c36e9a4 --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/ListAccountsByResourceGroup.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2020-02-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount2", + "name": "myMapsAccount2", + "type": "Microsoft.Maps/accounts", + "location": "global", + "tags": { + "test": "true" + }, + "sku": { + "name": "S0", + "tier": "Standard" + } + }, + { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount", + "name": "myMapsAccount", + "type": "Microsoft.Maps/accounts", + "location": "global", + "tags": { + "test": "true" + }, + "sku": { + "name": "S0", + "tier": "Standard" + } + } + ] + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/ListAccountsBySubscription.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/ListAccountsBySubscription.json new file mode 100644 index 000000000000..c95c95984281 --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/ListAccountsBySubscription.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-02-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount2", + "name": "myMapsAccount2", + "type": "Microsoft.Maps/accounts", + "location": "global", + "tags": { + "test": "true" + }, + "sku": { + "name": "S0", + "tier": "Standard" + } + }, + { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount", + "name": "myMapsAccount", + "type": "Microsoft.Maps/accounts", + "location": "global", + "tags": { + "test": "true" + }, + "sku": { + "name": "S0", + "tier": "Standard" + } + } + ] + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/ListKeys.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/ListKeys.json new file mode 100644 index 000000000000..06154cd25e3b --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/ListKeys.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2020-02-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount", + "primaryKey": "ZiBllKWCwXXLTO13S2TaoHoK8kPFYaoyYlAcnCcE4PQ", + "secondaryKey": "cJHpmUGNaGGO8H59p6NKGhfff9VjD278-2bi5wo0_mU" + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/ListPrivateAtlasByAccount.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/ListPrivateAtlasByAccount.json new file mode 100644 index 000000000000..1b678fa217a4 --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/ListPrivateAtlasByAccount.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-02-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount/privateAtlases/myPrivateAtlas", + "name": "myPrivateAtlas", + "type": "Microsoft.Maps/accounts/privateAtlases", + "location": "unitedstates", + "tags": { + "test": "true" + }, + "properties": { + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/RegenerateKey.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/RegenerateKey.json new file mode 100644 index 000000000000..d49a57b6e44c --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/RegenerateKey.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2020-02-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount", + "keySpecification": { + "keyType": "primary" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount", + "primaryKey": "uj0yqjjz8zG3IOSWvb_smi1q1QenGtupAqrOA1zCO6s", + "secondaryKey": "cJHpmUGNaGGO8H59p6NKGhfff9VjD278-2bi5wo0_mU" + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/UpdateAccount.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/UpdateAccount.json new file mode 100644 index 000000000000..cb2efc8fd0c1 --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/UpdateAccount.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-02-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount", + "MapsAccountUpdateParameters": { + "tags": { + "specialTag": "true" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount", + "name": "myMapsAccount", + "type": "Microsoft.Maps/accounts", + "location": "global", + "tags": { + "specialTag": "true" + }, + "sku": { + "name": "S0", + "tier": "Standard" + }, + "properties": { + "x-ms-client-id": "string" + } + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/UpdatePrivateAtlas.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/UpdatePrivateAtlas.json new file mode 100644 index 000000000000..7801c16868d7 --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/examples/UpdatePrivateAtlas.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2020-02-01-preview", + "subscriptionId": "21a9967a-e8a9-4656-a70b-96ff1c4d05a0", + "resourceGroupName": "myResourceGroup", + "accountName": "myMapsAccount", + "privateAtlasName": "myPrivateAtlas", + "PrivateAtlasUpdateParameters": { + "tags": { + "specialTag": "true" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/21a9967a-e8a9-4656-a70b-96ff1c4d05a0/resourceGroups/myResourceGroup/providers/Microsoft.Maps/accounts/myMapsAccount/privateAtlas/myPrivateAtlas", + "name": "myPrivateAtlas", + "type": "Microsoft.Maps/accounts/privateAtlas", + "location": "unitedstates", + "tags": { + "specialTag": "true" + }, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/maps-management.json b/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/maps-management.json new file mode 100644 index 000000000000..97ee2bdf9b10 --- /dev/null +++ b/specification/maps/resource-manager/Microsoft.Maps/preview/2020-02-01-preview/maps-management.json @@ -0,0 +1,977 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Maps Resource Provider", + "description": "Resource Provider", + "version": "2020-02-01-preview", + "x-ms-code-generation-settings": { + "name": "MapsManagementClient" + } + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Maps/accounts/{accountName}": { + "put": { + "tags": [ + "Accounts" + ], + "description": "Create or update a Maps Account. A Maps Account holds the keys which allow access to the Maps REST APIs.", + "operationId": "Accounts_CreateOrUpdate", + "x-ms-examples": { + "CreateAccount": { + "$ref": "./examples/CreateAccount.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "name": "MapsAccountCreateParameters", + "in": "body", + "description": "The new or updated parameters for the Maps Account.", + "required": true, + "schema": { + "$ref": "#/definitions/MapsAccountCreateParameters" + } + } + ], + "responses": { + "200": { + "description": "The Account was successfully updated.", + "schema": { + "$ref": "#/definitions/MapsAccount" + } + }, + "201": { + "description": "The Account was successfully created.", + "schema": { + "$ref": "#/definitions/MapsAccount" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Accounts" + ], + "description": "Updates a Maps Account. Only a subset of the parameters may be updated after creation, such as Sku and Tags.", + "operationId": "Accounts_Update", + "x-ms-examples": { + "UpdateAccount": { + "$ref": "./examples/UpdateAccount.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "name": "MapsAccountUpdateParameters", + "in": "body", + "description": "The updated parameters for the Maps Account.", + "required": true, + "schema": { + "$ref": "#/definitions/MapsAccountUpdateParameters" + } + } + ], + "responses": { + "200": { + "description": "The Account was successfully updated.", + "schema": { + "$ref": "#/definitions/MapsAccount" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Accounts" + ], + "description": "Delete a Maps Account.", + "operationId": "Accounts_Delete", + "x-ms-examples": { + "DeleteAccount": { + "$ref": "./examples/DeleteAccount.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + } + ], + "responses": { + "200": { + "description": "The Account was deleted successfully." + }, + "204": { + "description": "The specified Account was not found. Nothing was deleted." + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Accounts" + ], + "description": "Get a Maps Account.", + "operationId": "Accounts_Get", + "x-ms-examples": { + "GetAccount": { + "$ref": "./examples/GetAccount.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful.", + "schema": { + "$ref": "#/definitions/MapsAccount" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Maps/accounts": { + "get": { + "tags": [ + "Accounts" + ], + "description": "Get all Maps Accounts in a Resource Group", + "operationId": "Accounts_ListByResourceGroup", + "x-ms-examples": { + "ListAccountsByResourceGroup": { + "$ref": "./examples/ListAccountsByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null, + "itemName": "value" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful.", + "schema": { + "$ref": "#/definitions/MapsAccounts" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Maps/accounts": { + "get": { + "tags": [ + "Accounts" + ], + "description": "Get all Maps Accounts in a Subscription", + "operationId": "Accounts_ListBySubscription", + "x-ms-examples": { + "ListAccountsBySubscription": { + "$ref": "./examples/ListAccountsBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null, + "itemName": "value" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful.", + "schema": { + "$ref": "#/definitions/MapsAccounts" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Maps/accounts/{accountName}/listKeys": { + "post": { + "tags": [ + "Accounts" + ], + "description": "Get the keys to use with the Maps APIs. A key is used to authenticate and authorize access to the Maps REST APIs. Only one key is needed at a time; two are given to provide seamless key regeneration.", + "operationId": "Accounts_ListKeys", + "x-ms-examples": { + "ListKeys": { + "$ref": "./examples/ListKeys.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful.", + "schema": { + "$ref": "#/definitions/MapsAccountKeys" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Maps/accounts/{accountName}/regenerateKey": { + "post": { + "tags": [ + "Accounts" + ], + "description": "Regenerate either the primary or secondary key for use with the Maps APIs. The old key will stop working immediately.", + "operationId": "Accounts_RegenerateKeys", + "x-ms-examples": { + "RegenerateKey": { + "$ref": "./examples/RegenerateKey.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "name": "keySpecification", + "in": "body", + "required": true, + "description": "Which key to regenerate: primary or secondary.", + "schema": { + "$ref": "#/definitions/MapsKeySpecification" + } + } + ], + "responses": { + "200": { + "description": "The request was successful.", + "schema": { + "$ref": "#/definitions/MapsAccountKeys" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Maps/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "List operations available for the Maps Resource Provider", + "operationId": "Maps_ListOperations", + "x-ms-examples": { + "GetOperations": { + "$ref": "./examples/GetOperations.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null, + "itemName": "value" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful.", + "schema": { + "$ref": "#/definitions/MapsOperations" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Maps/accounts/{accountName}/privateAtlases/{privateAtlasName}": { + "put": { + "tags": [ + "Private Atlases" + ], + "description": "Create or update a Private Atlas resource. Private Atlas resource will enable the usage of Azure resources to build a custom set of mapping data. It requires an account to exist before it can be created.", + "operationId": "PrivateAtlases_CreateOrUpdate", + "x-ms-examples": { + "CreatePrivateAtlas": { + "$ref": "./examples/CreatePrivateAtlas.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/PrivateAtlasNameParameter" + }, + { + "name": "PrivateAtlasCreateParameters", + "in": "body", + "description": "The new or updated parameters for the Private Atlas resource.", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateAtlasCreateParameters" + } + } + ], + "responses": { + "200": { + "description": "The Private Atlas was successfully updated.", + "schema": { + "$ref": "#/definitions/PrivateAtlas" + } + }, + "201": { + "description": "The Private Atlas was successfully created.", + "schema": { + "$ref": "#/definitions/PrivateAtlas" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Private Atlases" + ], + "description": "Updates the Private Atlas resource. Only a subset of the parameters may be updated after creation, such as Tags.", + "operationId": "PrivateAtlases_Update", + "x-ms-examples": { + "UpdateAccount": { + "$ref": "./examples/UpdatePrivateAtlas.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/PrivateAtlasNameParameter" + }, + { + "name": "PrivateAtlasUpdateParameters", + "in": "body", + "description": "The updated parameters for the Private Atlas.", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateAtlasUpdateParameters" + } + } + ], + "responses": { + "200": { + "description": "The Private Atlas was successfully updated.", + "schema": { + "$ref": "#/definitions/PrivateAtlas" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "Private Atlases" + ], + "description": "Delete a Private Atlas resource.", + "operationId": "PrivateAtlases_Delete", + "x-ms-examples": { + "DeletePrivateAtlas": { + "$ref": "./examples/DeletePrivateAtlas.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/PrivateAtlasNameParameter" + } + ], + "responses": { + "200": { + "description": "The Private Atlas was deleted successfully." + }, + "204": { + "description": "The specified Private Atlas was not found. Nothing was deleted." + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Private Atlases" + ], + "description": "Get a Private Atlas resource.", + "operationId": "PrivateAtlases_Get", + "x-ms-examples": { + "GetPrivateAtlas": { + "$ref": "./examples/GetPrivateAtlas.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + }, + { + "$ref": "#/parameters/PrivateAtlasNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful.", + "schema": { + "$ref": "#/definitions/PrivateAtlas" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Maps/accounts/{accountName}/privateAtlases": { + "get": { + "tags": [ + "Private Atlases" + ], + "description": "Get all Private Atlas instances for an Azure Map Account", + "operationId": "PrivateAtlases_ListByAccount", + "x-ms-examples": { + "ListPrivateAtlasByAccount": { + "$ref": "./examples/ListPrivateAtlasByAccount.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null, + "itemName": "value" + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AccountNameParameter" + } + ], + "responses": { + "200": { + "description": "The request was successful.", + "schema": { + "$ref": "#/definitions/PrivateAtlasList" + } + }, + "default": { + "description": "An unexpected error occurred.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "parameters": { + "AccountNameParameter": { + "name": "accountName", + "in": "path", + "description": "The name of the Maps Account.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "PrivateAtlasNameParameter": { + "name": "privateAtlasName", + "in": "path", + "description": "The name of the Private Atlas instance.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + }, + "definitions": { + "PrivateAtlas": { + "description": "An Azure resource which represents which will provision the ability to create private location data.", + "type": "object", + "properties": { + "properties": { + "description": "The Private Atlas resource properties.", + "$ref": "#/definitions/PrivateAtlasProperties" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ] + }, + "MapsAccount": { + "description": "An Azure resource which represents access to a suite of Maps REST APIs.", + "type": "object", + "properties": { + "sku": { + "readOnly": true, + "description": "The SKU of this account.", + "$ref": "#/definitions/Sku" + }, + "systemData": { + "readOnly": true, + "description": "The system meta data relating to this resource.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" + }, + "properties": { + "readOnly": true, + "description": "The map account properties.", + "$ref": "#/definitions/MapsAccountProperties" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ] + }, + "MapsAccountCreateParameters": { + "description": "Parameters used to create a new Maps Account.", + "type": "object", + "properties": { + "location": { + "type": "string", + "description": "The location of the resource." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Gets or sets a list of key value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). Each tag must have a key no greater than 128 characters and value no greater than 256 characters." + }, + "sku": { + "description": "The SKU of this account.", + "$ref": "#/definitions/Sku" + } + }, + "required": [ + "location", + "sku" + ] + }, + "PrivateAtlasCreateParameters": { + "description": "Parameters used to create a new Private Atlas resource.", + "type": "object", + "properties": { + "location": { + "type": "string", + "description": "The location of the resource." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Gets or sets a list of key value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters." + } + }, + "required": [ + "location" + ] + }, + "MapsAccountUpdateParameters": { + "description": "Parameters used to update an existing Maps Account.", + "type": "object", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Gets or sets a list of key value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters." + }, + "sku": { + "description": "The SKU of this account.", + "$ref": "#/definitions/Sku" + } + } + }, + "PrivateAtlasUpdateParameters": { + "description": "Parameters used to update an existing Private Atlas resource.", + "type": "object", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Gets or sets a list of key value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters." + } + } + }, + "MapsAccounts": { + "description": "A list of Maps Accounts.", + "type": "object", + "properties": { + "value": { + "description": "a Maps Account.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/MapsAccount" + } + } + } + }, + "PrivateAtlasList": { + "description": "A list of Private Atlas resources.", + "type": "object", + "properties": { + "value": { + "description": "a Private Atlas.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/PrivateAtlas" + } + } + } + }, + "Sku": { + "description": "The SKU of the Maps Account.", + "properties": { + "name": { + "description": "The name of the SKU, in standard format (such as S0).", + "type": "string" + }, + "tier": { + "readOnly": true, + "type": "string", + "description": "Gets the sku tier. This is based on the SKU name." + } + }, + "required": [ + "name" + ] + }, + "MapsKeySpecification": { + "description": "Whether the operation refers to the primary or secondary key.", + "type": "object", + "required": [ + "keyType" + ], + "properties": { + "keyType": { + "type": "string", + "enum": [ + "primary", + "secondary" + ], + "x-ms-enum": { + "name": "KeyType", + "modelAsString": true + }, + "description": "Whether the operation refers to the primary or secondary key." + } + } + }, + "MapsAccountKeys": { + "description": "The set of keys which can be used to access the Maps REST APIs. Two keys are provided for key rotation without interruption.", + "type": "object", + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The full Azure resource identifier of the Maps Account." + }, + "primaryKey": { + "type": "string", + "readOnly": true, + "description": "The primary key for accessing the Maps REST APIs." + }, + "secondaryKey": { + "type": "string", + "readOnly": true, + "description": "The secondary key for accessing the Maps REST APIs." + } + } + }, + "MapsOperations": { + "description": "The set of operations available for Maps.", + "type": "object", + "properties": { + "value": { + "description": "An operation available for Maps.", + "type": "array", + "readOnly": true, + "items": { + "type": "object", + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "Operation name: {provider}/{resource}/{operation}." + }, + "display": { + "description": "The human-readable description of the operation.", + "type": "object", + "properties": { + "provider": { + "type": "string", + "readOnly": true, + "description": "Service provider: Microsoft Maps." + }, + "resource": { + "type": "string", + "readOnly": true, + "description": "Resource on which the operation is performed." + }, + "operation": { + "type": "string", + "readOnly": true, + "description": "The action that users can perform, based on their permission level." + }, + "description": { + "type": "string", + "readOnly": true, + "description": "The description of the operation." + } + } + }, + "origin": { + "type": "string", + "readOnly": true, + "description": "The origin of the operation." + } + } + } + } + } + }, + "MapsAccountProperties": { + "description": "Additional Map account properties", + "properties": { + "x-ms-client-id": { + "description": "A unique identifier for the maps account", + "type": "string" + } + } + }, + "PrivateAtlasProperties": { + "description": "Private Atlas resource properties", + "properties": { + "provisioningState": { + "description": "The state of the resource provisioning, terminal states: Succeeded, Failed, Canceled", + "type": "string" + } + } + } + } +} diff --git a/specification/maps/resource-manager/readme.cli.md b/specification/maps/resource-manager/readme.cli.md new file mode 100644 index 000000000000..7460e4ff02f5 --- /dev/null +++ b/specification/maps/resource-manager/readme.cli.md @@ -0,0 +1,21 @@ +## CLI + +These settings apply only when `--cli` is specified on the command line. +current tag-package=2018-05 +``` yaml $(cli) +cli: + cli-name: maps + package-name: azure-mgmt-maps + namespace: azure.mgmt.maps + test-scenario: + - name: CreateAccount + - name: GetAccount + - name: ListAccountsByResourceGroup + - name: ListAccountsBySubscription + - name: GetOperations + - name: RegenerateKey + - name: ListKeys + - name: UpdateAccount + - name: MoveAccounts + - name: DeleteAccount +``` \ No newline at end of file diff --git a/specification/maps/resource-manager/readme.go.md b/specification/maps/resource-manager/readme.go.md index 4920d9c3b794..620bc68e8b4c 100644 --- a/specification/maps/resource-manager/readme.go.md +++ b/specification/maps/resource-manager/readme.go.md @@ -15,6 +15,16 @@ go: batch: - tag: package-2018-05 - tag: package-2017-01 + - tag: package-preview-2020-02 +``` + +### Tag: package-preview-2020-02 and go + +These settings apply only when `--tag=package-preview-2020-02 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag)=='package-preview-2020-02' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2020-02-01-preview/$(namespace) ``` ### Tag: package-2018-05 and go diff --git a/specification/maps/resource-manager/readme.md b/specification/maps/resource-manager/readme.md index 6afc578c4420..6b8851d1d228 100644 --- a/specification/maps/resource-manager/readme.md +++ b/specification/maps/resource-manager/readme.md @@ -5,7 +5,9 @@ This is the AutoRest configuration file for Maps. --- + ## Getting Started + To build the SDK for Maps, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: > `autorest` @@ -13,20 +15,28 @@ To build the SDK for Maps, simply [Install AutoRest](https://aka.ms/autorest/ins To see additional help and options, run: > `autorest --help` + --- ## Configuration - - ### Basic Information + These are the global settings for the Maps API. ``` yaml openapi-type: arm -tag: package-2018-05 +tag: package-preview-2020-02 ``` +### Tag: package-preview-2020-02 + +These settings apply only when `--tag=package-preview-2020-02` is specified on the command line. + +```yaml $(tag) == 'package-preview-2020-02' +input-file: + - Microsoft.Maps/preview/2020-02-01-preview/maps-management.json +``` ### Tag: package-2017-01 @@ -47,8 +57,8 @@ input-file: ``` --- -# Code Generation +# Code Generation ## Swagger to SDK @@ -64,7 +74,6 @@ swagger-to-sdk: - repo: azure-sdk-for-node ``` - ## C# These settings apply only when `--csharp` is specified on the command line. @@ -107,6 +116,20 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-maps batch: - tag: package-2017-01 - tag: package-2018-05 + - tag: package-2020-02 +``` + +### Tag: package-2020-02 and java + +These settings apply only when `--tag=package-2020-02 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2020-02' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.maps.v2020_02_01_preview + output-folder: $(azure-libraries-for-java-folder)/sdk/maps/mgmt-v2020_02_01_preview +regenerate-manager: true +generate-interface: true ``` ### Tag: package-2017-01 and java @@ -135,9 +158,56 @@ regenerate-manager: true generate-interface: true ``` +## Suppression +``` yaml +directive: + - suppress: R2017 # PutRequestResponseScheme + where: + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Maps/accounts/{accountName}/privateAtlases/{privateAtlasName}"].put + - $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Maps/accounts/{accountName}"].put + from: maps-management.json + reason: + - Common type models are inherited. + - ClientId property will be ignored by requests + - suppress: R2001 # AvoidNestedProperties + where: + - $.definitions.PrivateAtlas.properties.properties + - $.definitions.MapsAccount.properties.properties + from: maps-management.json + reason: + - Flattening does not work well with polymorphic models. + - PrivateAtlas.properties is an arbitrary dictionary and cannot be flattened. + - MapsAccount.properties is an arbitrary dictionary and cannot be flattened. + - suppress: R3006 # BodyTopLevelProperties + where: + - $.definitions.MapsAccount.properties + reason: + - Currently systemData is not allowed. + - suppress: R3010 # TrackedResourceListByImmediateParent + where: + - $.definitions + reason: + - Pipeline runs are not listable. The operation PrivateAtlases_ListByAccount serves this purpose. + - suppress: R3027 # TrackedResourceListByResourceGroup + where: + - $.definitions.PrivateAtlas + reason: + - This is a nested tracked resource. + - suppress: R3028 # TrackedResourceListBySubscription + where: + - $.definitions.PrivateAtlas + reason: + - This is a nested tracked resource. + - suppress: R4000 # DescriptionAndTitleMissing + where: + - $.definitions.Resource + from: types.json + reason: + - Common type models are inherited. +``` -## Multi-API/Profile support for AutoRest v3 generators +## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. @@ -149,16 +219,16 @@ 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, +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/Microsoft.DBforMariaDB/stable/2018-06-01/PerformanceRecommendations.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/PerformanceRecommendations.json new file mode 100644 index 000000000000..50343a737eb8 --- /dev/null +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/PerformanceRecommendations.json @@ -0,0 +1,512 @@ +{ + "swagger": "2.0", + "info": { + "title": "MariaDBManagementClient", + "description": "The Microsoft Azure management API provides create, read, update, and delete functionality for Azure MariaDB resources including servers, databases, firewall rules, VNET rules, log files and configurations with new business model.", + "version": "2018-06-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/advisors/{advisorName}": { + "get": { + "tags": [ + "Advisors" + ], + "operationId": "Advisors_Get", + "x-ms-examples": { + "AdvisorsGet": { + "$ref": "./examples/AdvisorsGet.json" + } + }, + "description": "Get a recommendation action advisor.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/AdvisorNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Advisor" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/advisors": { + "get": { + "tags": [ + "Advisors" + ], + "operationId": "Advisors_ListByServer", + "x-ms-examples": { + "AdvisorsListByServer": { + "$ref": "./examples/AdvisorsListByServer.json" + } + }, + "description": "List recommendation action advisors.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AdvisorsResultList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/advisors/{advisorName}/createRecommendedActionSession": { + "post": { + "tags": [ + "RecommendedActionSessions" + ], + "operationId": "CreateRecommendedActionSession", + "x-ms-examples": { + "RecommendedActionSessionCreate": { + "$ref": "./examples/RecommendedActionSessionCreate.json" + } + }, + "description": "Create recommendation action session for the advisor.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/AdvisorNameParameter" + }, + { + "name": "databaseName", + "in": "query", + "required": true, + "type": "string", + "description": "The name of the database." + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/advisors/{advisorName}/recommendedActions/{recommendedActionName}": { + "get": { + "tags": [ + "RecommendedActions" + ], + "operationId": "RecommendedActions_Get", + "x-ms-examples": { + "RecommendedActionsGet": { + "$ref": "./examples/RecommendedActionsGet.json" + } + }, + "description": "Retrieve recommended actions from the advisor.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/AdvisorNameParameter" + }, + { + "$ref": "#/parameters/RecommendedActionNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecommendationAction" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/advisors/{advisorName}/recommendedActions": { + "get": { + "tags": [ + "RecommendedActions" + ], + "operationId": "RecommendedActions_ListByServer", + "x-ms-examples": { + "RecommendedActionsListByServer": { + "$ref": "./examples/RecommendedActionsListByServer.json" + } + }, + "description": "Retrieve recommended actions from the advisor.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/AdvisorNameParameter" + }, + { + "name": "sessionId", + "in": "query", + "required": false, + "type": "string", + "description": "The recommendation action session identifier." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecommendationActionsResultList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DBforMariaDB/locations/{locationName}/recommendedActionSessionsAzureAsyncOperation/{operationId}": { + "get": { + "tags": [ + "LocationBasedRecommendedActionSessionsOperationStatus" + ], + "operationId": "LocationBasedRecommendedActionSessionsOperationStatus_Get", + "x-ms-examples": { + "RecommendedActionSessionOperationStatus": { + "$ref": "./examples/RecommendedActionSessionOperationStatus.json" + } + }, + "description": "Recommendation action session operation status.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/LocationNameParameter" + }, + { + "$ref": "#/parameters/OperationIdParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/RecommendedActionSessionsOperationStatus" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DBforMariaDB/locations/{locationName}/recommendedActionSessionsOperationResults/{operationId}": { + "get": { + "tags": [ + "LocationBasedRecommendedActionSessionsResult" + ], + "operationId": "LocationBasedRecommendedActionSessionsResult_List", + "x-ms-examples": { + "RecommendedActionSessionResult": { + "$ref": "./examples/RecommendedActionSessionResult.json" + } + }, + "description": "Recommendation action session operation result.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/LocationNameParameter" + }, + { + "$ref": "#/parameters/OperationIdParameter" + } + ], + "responses": { + "200": { + "description": "Created", + "schema": { + "$ref": "#/definitions/RecommendationActionsResultList" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/RecommendationActionsResultList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AdvisorProperties": { + "properties": {}, + "description": "The properties of a recommendation action advisor." + }, + "Advisor": { + "properties": { + "properties": { + "$ref": "#/definitions/AdvisorProperties", + "x-ms-client-flatten": true, + "description": "The properties of a recommendation action advisor." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Represents a recommendation action advisor." + }, + "AdvisorsResultList": { + "description": "A list of query statistics.", + "type": "object", + "properties": { + "value": { + "description": "The list of recommendation action advisors.", + "type": "array", + "items": { + "$ref": "#/definitions/Advisor" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "RecommendationActionProperties": { + "properties": { + "advisorName": { + "type": "string", + "description": "Advisor name." + }, + "sessionId": { + "type": "string", + "description": "Recommendation action session identifier." + }, + "actionId": { + "type": "integer", + "format": "int32", + "description": "Recommendation action identifier." + }, + "createdTime": { + "type": "string", + "format": "date-time", + "description": "Recommendation action creation time." + }, + "expirationTime": { + "type": "string", + "format": "date-time", + "description": "Recommendation action expiration time." + }, + "reason": { + "type": "string", + "description": "Recommendation action reason." + }, + "recommendationType": { + "type": "string", + "description": "Recommendation action type." + }, + "details": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Recommendation action details." + } + }, + "description": "The properties of a recommendation action." + }, + "RecommendationAction": { + "properties": { + "properties": { + "$ref": "#/definitions/RecommendationActionProperties", + "x-ms-client-flatten": true, + "description": "The properties of a recommendation action." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Represents a Recommendation Action." + }, + "RecommendationActionsResultList": { + "description": "A list of recommendation actions.", + "type": "object", + "properties": { + "value": { + "description": "The list of recommendation action advisors.", + "type": "array", + "items": { + "$ref": "#/definitions/RecommendationAction" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "RecommendedActionSessionsOperationStatus": { + "properties": { + "name": { + "type": "string", + "description": "Operation identifier." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "Operation start time." + }, + "status": { + "type": "string", + "description": "Operation status." + } + }, + "description": "Recommendation action session operation status." + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the server.", + "x-ms-parameter-location": "method" + }, + "LocationNameParameter": { + "name": "locationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the location.", + "x-ms-parameter-location": "method" + }, + "AdvisorNameParameter": { + "name": "advisorName", + "in": "path", + "required": true, + "type": "string", + "description": "The advisor name for recommendation action.", + "x-ms-parameter-location": "method" + }, + "RecommendedActionNameParameter": { + "name": "recommendedActionName", + "in": "path", + "required": true, + "type": "string", + "description": "The recommended action name.", + "x-ms-parameter-location": "method" + }, + "OperationIdParameter": { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The operation identifier.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/PrivateEndpointConnections.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/PrivateEndpointConnections.json new file mode 100644 index 000000000000..7e8435eb8f0e --- /dev/null +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/PrivateEndpointConnections.json @@ -0,0 +1,416 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-06-01", + "title": "MariaDBManagementClient", + "description": "The Microsoft Azure management API provides create, read, update, and delete functionality for Azure MariaDB resources including servers, databases, firewall rules, VNET rules, security alert policies, log files and configurations with new business model." + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Gets a private endpoint connection.", + "operationId": "PrivateEndpointConnections_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/PrivateEndpointConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Approve or reject a private endpoint connection with a given name.", + "operationId": "PrivateEndpointConnections_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully approved or rejected private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Approve or reject a private endpoint connection with a given name.": { + "$ref": "./examples/PrivateEndpointConnectionUpdate.json" + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Deletes a private endpoint connection with a given name.", + "operationId": "PrivateEndpointConnections_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted private endpoint connection." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "Private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes a private endpoint connection with a given name.": { + "$ref": "./examples/PrivateEndpointConnectionDelete.json" + } + } + }, + "patch": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_UpdateTags", + "summary": "Updates tags on private endpoint connection.", + "description": "Updates private endpoint connection with the specified tags.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TagsObject" + }, + "description": "Parameters supplied to the Update private endpoint connection Tags operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update private endpoint connection Tags": { + "$ref": "./examples/PrivateEndpointConnectionUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Gets all private endpoint connections on a server.", + "operationId": "PrivateEndpointConnections_ListByServer", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private endpoint connections.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets list of private endpoint connections on a server.": { + "$ref": "./examples/PrivateEndpointConnectionList.json" + } + } + } + } + }, + "definitions": { + "PrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionStateProperty", + "description": "Connection state of the private endpoint connection." + }, + "provisioningState": { + "description": "State of the private endpoint connection.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateEndpointProperty": { + "type": "object", + "properties": { + "id": { + "description": "Resource id of the private endpoint.", + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "PrivateLinkServiceConnectionStateProperty": { + "required": [ + "status", + "description" + ], + "type": "object", + "properties": { + "status": { + "description": "The private link service connection status.", + "type": "string" + }, + "description": { + "description": "The private link service connection description.", + "type": "string" + }, + "actionsRequired": { + "description": "The actions required for private link service connection.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateEndpointConnection": { + "description": "A private endpoint connection", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "PrivateEndpointConnectionListResult": { + "description": "A list of private endpoint connections.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response from the Batch service." + }, + "TagsObject": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "description": "Tags object for patch operations." + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/PrivateLinkResources.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/PrivateLinkResources.json new file mode 100644 index 000000000000..dbe39a75c583 --- /dev/null +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/PrivateLinkResources.json @@ -0,0 +1,207 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-06-01", + "title": "MariaDBManagementClient", + "description": "The Microsoft Azure management API provides create, read, update, and delete functionality for Azure MariaDB resources including servers, databases, firewall rules, VNET rules, security alert policies, log files and configurations with new business model." + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "description": "Gets the private link resources for MariaDB server.", + "operationId": "PrivateLinkResources_ListByServer", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets private link resources for MariaDB.": { + "$ref": "./examples/PrivateLinkResourcesList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/privateLinkResources/{groupName}": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "description": "Gets a private link resource for MariaDB server.", + "operationId": "PrivateLinkResources_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "groupName", + "in": "path", + "description": "The name of the private link resource.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Gets a private link resource for MariaDB.": { + "$ref": "./examples/PrivateLinkResourcesGet.json" + } + } + } + } + }, + "definitions": { + "PrivateLinkResourceListResult": { + "description": "A list of private link resources", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateLinkResourceProperties": { + "description": "Properties of a private link resource.", + "type": "object", + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "PrivateLinkResource": { + "description": "A private link resource", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "The private link resource group id.", + "readOnly": true + } + } + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response from the Batch service." + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/QueryPerformanceInsights.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/QueryPerformanceInsights.json new file mode 100644 index 000000000000..eff98a2d7447 --- /dev/null +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/QueryPerformanceInsights.json @@ -0,0 +1,641 @@ +{ + "swagger": "2.0", + "info": { + "title": "MariaDBManagementClient", + "description": "The Microsoft Azure management API provides create, read, update, and delete functionality for Azure MariaDB resources including servers, databases, firewall rules, VNET rules, log files and configurations with new business model.", + "version": "2018-06-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/queryTexts/{queryId}": { + "get": { + "tags": [ + "QueryTexts" + ], + "operationId": "QueryTexts_Get", + "x-ms-examples": { + "QueryTextsGet": { + "$ref": "./examples/QueryTextsGet.json" + } + }, + "description": "Retrieve the Query-Store query texts for the queryId.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/QueryIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/QueryText" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/queryTexts": { + "get": { + "tags": [ + "QueryTexts" + ], + "operationId": "QueryTexts_ListByServer", + "x-ms-examples": { + "QueryTextsListByServer": { + "$ref": "./examples/QueryTextsListByServer.json" + } + }, + "description": "Retrieve the Query-Store query texts for specified queryIds.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "queryIds", + "in": "query", + "required": true, + "type": "array", + "collectionFormat": "multi", + "items": { + "type": "string" + }, + "description": "The query identifiers" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/QueryTextsResultList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/topQueryStatistics/{queryStatisticId}": { + "get": { + "tags": [ + "TopQueryStatistics" + ], + "operationId": "TopQueryStatistics_Get", + "x-ms-examples": { + "TopQueryStatisticsGet": { + "$ref": "./examples/TopQueryStatisticsGet.json" + } + }, + "description": "Retrieve the query statistic for specified identifier.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/QueryStatisticIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/QueryStatistic" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/topQueryStatistics": { + "get": { + "tags": [ + "TopQueryStatistics" + ], + "operationId": "TopQueryStatistics_ListByServer", + "x-ms-examples": { + "TopQueryStatisticsListByServer": { + "$ref": "./examples/TopQueryStatisticsListByServer.json" + } + }, + "description": "Retrieve the Query-Store top queries for specified metric and aggregation.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TopQueryStatisticsInput" + }, + "description": "The required parameters for retrieving top query statistics." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TopQueryStatisticsResultList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/waitStatistics/{waitStatisticsId}": { + "get": { + "tags": [ + "WaitStatistics" + ], + "operationId": "WaitStatistics_Get", + "x-ms-examples": { + "WaitStatisticsGet": { + "$ref": "./examples/WaitStatisticsGet.json" + } + }, + "description": "Retrieve wait statistics for specified identifier.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/WaitStatisticsIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WaitStatistic" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMariaDB/servers/{serverName}/waitStatistics": { + "get": { + "tags": [ + "WaitStatistics" + ], + "operationId": "WaitStatistics_ListByServer", + "x-ms-examples": { + "WaitStatisticsListByServer": { + "$ref": "./examples/WaitStatisticsListByServer.json" + } + }, + "description": "Retrieve wait statistics for specified aggregation window.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/WaitStatisticsInput" + }, + "description": "The required parameters for retrieving wait statistics." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WaitStatisticsResultList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "QueryTextProperties": { + "properties": { + "queryId": { + "type": "string", + "description": "Query identifier unique to the server." + }, + "queryText": { + "type": "string", + "description": "Query text." + } + }, + "description": "The properties of a query text." + }, + "QueryText": { + "properties": { + "properties": { + "$ref": "#/definitions/QueryTextProperties", + "x-ms-client-flatten": true, + "description": "The properties of a query text." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Represents a Query Text." + }, + "QueryTextsResultList": { + "description": "A list of query texts.", + "type": "object", + "properties": { + "value": { + "description": "The list of query texts.", + "type": "array", + "items": { + "$ref": "#/definitions/QueryText" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "TopQueryStatisticsInputProperties": { + "properties": { + "numberOfTopQueries": { + "type": "integer", + "format": "int32", + "description": "Max number of top queries to return." + }, + "aggregationFunction": { + "type": "string", + "description": "Aggregation function name." + }, + "observedMetric": { + "type": "string", + "description": "Observed metric name." + }, + "observationStartTime": { + "type": "string", + "format": "date-time", + "description": "Observation start time." + }, + "observationEndTime": { + "type": "string", + "format": "date-time", + "description": "Observation end time." + }, + "aggregationWindow": { + "type": "string", + "description": "Aggregation interval type in ISO 8601 format." + } + }, + "required": [ + "numberOfTopQueries", + "aggregationFunction", + "observedMetric", + "observationStartTime", + "observationEndTime", + "aggregationWindow" + ], + "description": "The properties for input to get top query statistics" + }, + "TopQueryStatisticsInput": { + "properties": { + "properties": { + "$ref": "#/definitions/TopQueryStatisticsInputProperties", + "x-ms-client-flatten": true, + "description": "The properties of a wait statistics input." + } + }, + "required": [ + "properties" + ], + "description": "Input to get top query statistics" + }, + "QueryStatisticProperties": { + "properties": { + "queryId": { + "type": "string", + "description": "Database query identifier." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "Observation start time." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "Observation end time." + }, + "aggregationFunction": { + "type": "string", + "description": "Aggregation function name." + }, + "databaseNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of database names." + }, + "queryExecutionCount": { + "type": "integer", + "format": "int64", + "description": "Number of query executions in this time interval." + }, + "metricName": { + "type": "string", + "description": "Metric name." + }, + "metricDisplayName": { + "type": "string", + "description": "Metric display name." + }, + "metricValue": { + "type": "number", + "format": "double", + "description": "Metric value." + }, + "metricValueUnit": { + "type": "string", + "description": "Metric value unit." + } + }, + "description": "The properties of a query statistic." + }, + "QueryStatistic": { + "properties": { + "properties": { + "$ref": "#/definitions/QueryStatisticProperties", + "x-ms-client-flatten": true, + "description": "The properties of a query statistic." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Represents a Query Statistic." + }, + "TopQueryStatisticsResultList": { + "description": "A list of query statistics.", + "type": "object", + "properties": { + "value": { + "description": "The list of top query statistics.", + "type": "array", + "items": { + "$ref": "#/definitions/QueryStatistic" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "WaitStatisticsInputProperties": { + "properties": { + "observationStartTime": { + "type": "string", + "format": "date-time", + "description": "Observation start time." + }, + "observationEndTime": { + "type": "string", + "format": "date-time", + "description": "Observation end time." + }, + "aggregationWindow": { + "type": "string", + "description": "Aggregation interval type in ISO 8601 format." + } + }, + "required": [ + "observationStartTime", + "observationEndTime", + "aggregationWindow" + ], + "description": "The properties for input to get wait statistics" + }, + "WaitStatisticsInput": { + "properties": { + "properties": { + "$ref": "#/definitions/WaitStatisticsInputProperties", + "x-ms-client-flatten": true, + "description": "The properties of a wait statistics input." + } + }, + "required": [ + "properties" + ], + "description": "Input to get wait statistics" + }, + "WaitStatisticProperties": { + "properties": { + "startTime": { + "type": "string", + "format": "date-time", + "description": "Observation start time." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "Observation end time." + }, + "eventName": { + "type": "string", + "description": "Wait event name." + }, + "eventTypeName": { + "type": "string", + "description": "Wait event type name." + }, + "queryId": { + "type": "integer", + "format": "int64", + "description": "Database query identifier." + }, + "databaseName": { + "type": "string", + "description": "Database Name." + }, + "userId": { + "type": "integer", + "format": "int64", + "description": "Database user identifier." + }, + "count": { + "type": "integer", + "format": "int64", + "description": "Wait event count observed in this time interval." + }, + "totalTimeInMs": { + "type": "number", + "format": "double", + "description": "Total time of wait in milliseconds in this time interval." + } + }, + "description": "The properties of a wait statistic." + }, + "WaitStatistic": { + "properties": { + "properties": { + "$ref": "#/definitions/WaitStatisticProperties", + "x-ms-client-flatten": true, + "description": "The properties of a wait statistic." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Represents a Wait Statistic." + }, + "WaitStatisticsResultList": { + "description": "A list of wait statistics.", + "type": "object", + "properties": { + "value": { + "description": "The list of wait statistics.", + "type": "array", + "items": { + "$ref": "#/definitions/WaitStatistic" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the server.", + "x-ms-parameter-location": "method" + }, + "QueryIdParameter": { + "name": "queryId", + "in": "path", + "required": true, + "type": "string", + "description": "The Query-Store query identifier.", + "x-ms-parameter-location": "method" + }, + "QueryStatisticIdParameter": { + "name": "queryStatisticId", + "in": "path", + "required": true, + "type": "string", + "description": "The Query Statistic identifier.", + "x-ms-parameter-location": "method" + }, + "WaitStatisticsIdParameter": { + "name": "waitStatisticsId", + "in": "path", + "required": true, + "type": "string", + "description": "The Wait Statistic identifier.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/AdvisorsGet.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/AdvisorsGet.json new file mode 100644 index 000000000000..d5ce78d88af7 --- /dev/null +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/AdvisorsGet.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2018-06-01", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testResourceGroupName", + "serverName": "testServerName", + "advisorName": "Index" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.DBforMariaDB/servers/testServerName/advisors/Index", + "name": "Index", + "type": "Microsoft.DBforMariaDB/servers/advisors", + "properties": {} + } + } + } +} diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/AdvisorsListByServer.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/AdvisorsListByServer.json new file mode 100644 index 000000000000..146628aee621 --- /dev/null +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/AdvisorsListByServer.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2018-06-01", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testResourceGroupName", + "serverName": "testServerName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.DBforMariaDB/servers/testServerName/advisors/Index", + "name": "Index", + "type": "Microsoft.DBforMariaDB/servers/advisors", + "properties": {} + } + ] + } + } + } +} diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/PrivateEndpointConnectionDelete.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/PrivateEndpointConnectionDelete.json new file mode 100644 index 000000000000..89d39b01da4e --- /dev/null +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/PrivateEndpointConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2018-06-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/PrivateEndpointConnectionGet.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/PrivateEndpointConnectionGet.json new file mode 100644 index 000000000000..2d6ebe9bf2b1 --- /dev/null +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/PrivateEndpointConnectionGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2018-06-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.DBforMariaDB/servers/test-svr/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.DBforMariaDB/servers/privateEndpointConnections", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/PrivateEndpointConnectionList.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/PrivateEndpointConnectionList.json new file mode 100644 index 000000000000..a7012147a862 --- /dev/null +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/PrivateEndpointConnectionList.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "api-version": "2018-06-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.DBforMariaDB/servers/test-svr/privateEndpointConnections/private-endpoint-connection-name-2", + "name": "private-endpoint-connection-name", + "type": "Microsoft.DBforMariaDB/servers/privateEndpointConnections", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.DBforMariaDB/servers/test-svr/privateEndpointConnections/private-endpoint-connection-name-2", + "name": "private-endpoint-connection-name-2", + "type": "Microsoft.DBforMariaDB/servers/privateEndpointConnections", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name-2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + } +} diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/PrivateEndpointConnectionUpdate.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/PrivateEndpointConnectionUpdate.json new file mode 100644 index 000000000000..8605e984228c --- /dev/null +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/PrivateEndpointConnectionUpdate.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2018-06-01", + "parameters": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.DBforMariaDB/servers/test-svr/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.DBforMariaDB/servers/privateEndpointConnections", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com", + "actionsRequired": "None" + } + } + } + }, + "202": {} + } +} diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/PrivateEndpointConnectionUpdateTags.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/PrivateEndpointConnectionUpdateTags.json new file mode 100644 index 000000000000..b753681f6514 --- /dev/null +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/PrivateEndpointConnectionUpdateTags.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2018-06-01", + "parameters": { + "tags": { + "key1": "val1", + "key2": "val2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.DBforMariaDB/servers/test-svr/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.DBforMariaDB/servers/privateEndpointConnections", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/PrivateLinkResourcesGet.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/PrivateLinkResourcesGet.json new file mode 100644 index 000000000000..f39e6963dd62 --- /dev/null +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/PrivateLinkResourcesGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "groupName": "plr", + "api-version": "2018-06-01" + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.DBforMariaDB/servers/test-svr/privateLinkResources/plr", + "name": "plr", + "type": "Microsoft.DBforMariaDB/servers/privateLinkResources", + "properties": { + "groupId": "mariadbServer", + "requiredMembers": [ + "mariadbServer" + ] + } + } + } + } +} diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/PrivateLinkResourcesList.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/PrivateLinkResourcesList.json new file mode 100644 index 000000000000..5511cf3f327d --- /dev/null +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/PrivateLinkResourcesList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "api-version": "2018-06-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.DBforMariaDB/servers/test-svr/privateLinkResources/plr", + "name": "plr", + "type": "Microsoft.DBforMariaDB/servers/privateLinkResources", + "properties": { + "groupId": "mariadbServer", + "requiredMembers": [ + "mariadbServer" + ] + } + } + ] + } + } + } +} diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/QueryTextsGet.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/QueryTextsGet.json new file mode 100644 index 000000000000..3e24bb7c4936 --- /dev/null +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/QueryTextsGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2018-06-01", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testResourceGroupName", + "serverName": "testServerName", + "queryId": 1 + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.DBforMariaDB/servers/testServerName/queryTexts/1", + "name": "1", + "type": "Microsoft.DBforMariaDB/servers/queryTexts", + "properties": { + "queryId": "1", + "queryText": "UPDATE `performance_schema`.`setup_instruments` SET `ENABLED` = ? , `TIMED` = ? WHERE NAME = ?" + } + } + } + } +} diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/QueryTextsListByServer.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/QueryTextsListByServer.json new file mode 100644 index 000000000000..e36e9bd19bac --- /dev/null +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/QueryTextsListByServer.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2018-06-01", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testResourceGroupName", + "serverName": "testServerName", + "queryIds": [ + "1", + "2" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.DBforMariaDB/servers/testServerName/queryTexts/1", + "name": "1", + "type": "Microsoft.DBforMariaDB/servers/queryTexts", + "properties": { + "queryId": "1", + "queryText": "UPDATE `performance_schema`.`setup_instruments` SET `ENABLED` = ? , `TIMED` = ? WHERE NAME = ?" + } + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.DBforMariaDB/servers/testServerName/queryTexts/2", + "name": "2", + "type": "Microsoft.DBforMariaDB/servers/queryTexts", + "properties": { + "queryId": "2", + "queryText": "UPDATE `performance_schema`.`setup_instruments` SET `ENABLED` = ? , `TIMED` = ? WHERE NAME LIKE ?" + } + } + ] + } + } + } +} diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/RecommendedActionSessionCreate.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/RecommendedActionSessionCreate.json new file mode 100644 index 000000000000..7496a76cac2a --- /dev/null +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/RecommendedActionSessionCreate.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2018-06-01", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testResourceGroupName", + "serverName": "testServerName", + "advisorName": "Index", + "databaseName": "someDatabaseName" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/RecommendedActionSessionOperationStatus.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/RecommendedActionSessionOperationStatus.json new file mode 100644 index 000000000000..61bd9a019661 --- /dev/null +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/RecommendedActionSessionOperationStatus.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2018-06-01", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "locationName": "WestUS", + "operationId": "aaaabbbb-cccc-dddd-0000-111122223333" + }, + "responses": { + "200": { + "body": { + "name": "aaaabbbb-cccc-dddd-0000-111122223333", + "startTime": "2019-05-01T17:15:00Z", + "status": "succeeded" + } + } + } +} diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/RecommendedActionSessionResult.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/RecommendedActionSessionResult.json new file mode 100644 index 000000000000..1244907367b9 --- /dev/null +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/RecommendedActionSessionResult.json @@ -0,0 +1,122 @@ +{ + "parameters": { + "api-version": "2018-06-01", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "locationName": "WestUS", + "operationId": "aaaabbbb-cccc-dddd-0000-111122223333" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.Sql/servers/testServerName/advisors/Index/recommendedActions/Index-1", + "name": "Index-1", + "type": "Microsoft.DBforMariaDB/servers/advisors/recommendedActions", + "properties": { + "advisorName": "Index", + "sessionId": "c63c2114-e2a4-4c7a-98c1-85577d1a5d50", + "actionId": 1, + "createdTime": "2019-05-01T23:43:24Z", + "expirationTime": "2019-05-08T23:43:24Z", + "reason": "Column `movies_genres`.`movie_id` appear in Join On clause(s).", + "recommendationType": "Add", + "details": { + "engine": "InnoDB", + "script": "alter table `movies`.`movies_genres` add index `idx_movie_id` (`movie_id`)", + "queryIds": "779", + "indexName": "idx_movie_id", + "indexType": "BTREE", + "tableName": "movies_genres", + "schemaName": "movies", + "indexColumns": "`movies_genres`.`movie_id`", + "parentTableName": "movies_genres" + } + } + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.Sql/servers/testServerName/advisors/Index/recommendedActions/Index-2", + "name": "Index-2", + "type": "Microsoft.DBforMariaDB/servers/advisors/recommendedActions", + "properties": { + "advisorName": "Index", + "sessionId": "c63c2114-e2a4-4c7a-98c1-85577d1a5d50", + "actionId": 2, + "createdTime": "2019-05-01T23:43:24Z", + "expirationTime": "2019-05-08T23:43:24Z", + "reason": "Column `movies_genres`.`genre` appear in Group By clause(s).", + "recommendationType": "Add", + "details": { + "engine": "InnoDB", + "script": "alter table `movies`.`movies_genres` add index `idx_genre` (`genre`)", + "queryIds": "779", + "indexName": "idx_genre", + "indexType": "BTREE", + "tableName": "movies_genres", + "schemaName": "movies", + "indexColumns": "`movies_genres`.`genre`", + "parentTableName": "movies_genres" + } + } + } + ] + } + }, + "201": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.Sql/servers/testServerName/advisors/Index/recommendedActions/Index-1", + "name": "Index-1", + "type": "Microsoft.DBforMariaDB/servers/advisors/recommendedActions", + "properties": { + "advisorName": "Index", + "sessionId": "c63c2114-e2a4-4c7a-98c1-85577d1a5d50", + "actionId": 1, + "createdTime": "2019-05-01T23:43:24Z", + "expirationTime": "2019-05-08T23:43:24Z", + "reason": "Column `movies_genres`.`movie_id` appear in Join On clause(s).", + "recommendationType": "Add", + "details": { + "engine": "InnoDB", + "script": "alter table `movies`.`movies_genres` add index `idx_movie_id` (`movie_id`)", + "queryIds": "779", + "indexName": "idx_movie_id", + "indexType": "BTREE", + "tableName": "movies_genres", + "schemaName": "movies", + "indexColumns": "`movies_genres`.`movie_id`", + "parentTableName": "movies_genres" + } + } + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.Sql/servers/testServerName/advisors/Index/recommendedActions/Index-2", + "name": "Index-2", + "type": "Microsoft.DBforMariaDB/servers/advisors/recommendedActions", + "properties": { + "advisorName": "Index", + "sessionId": "c63c2114-e2a4-4c7a-98c1-85577d1a5d50", + "actionId": 2, + "createdTime": "2019-05-01T23:43:24Z", + "expirationTime": "2019-05-08T23:43:24Z", + "reason": "Column `movies_genres`.`genre` appear in Group By clause(s).", + "recommendationType": "Add", + "details": { + "engine": "InnoDB", + "script": "alter table `movies`.`movies_genres` add index `idx_genre` (`genre`)", + "queryIds": "779", + "indexName": "idx_genre", + "indexType": "BTREE", + "tableName": "movies_genres", + "schemaName": "movies", + "indexColumns": "`movies_genres`.`genre`", + "parentTableName": "movies_genres" + } + } + } + ] + } + } + } +} diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/RecommendedActionsGet.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/RecommendedActionsGet.json new file mode 100644 index 000000000000..4a0db76164a7 --- /dev/null +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/RecommendedActionsGet.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2018-06-01", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testResourceGroupName", + "serverName": "testServerName", + "advisorName": "Index", + "recommendedActionName": "Index-1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.Sql/servers/testServerName/advisors/Index/recommendedActions/Index-1", + "name": "Index-1", + "type": "Microsoft.DBforMariaDB/servers/advisors/recommendedActions", + "properties": { + "advisorName": "Index", + "sessionId": "c63c2114-e2a4-4c7a-98c1-85577d1a5d50", + "actionId": 1, + "createdTime": "2019-05-01T23:43:24Z", + "expirationTime": "2019-05-08T23:43:24Z", + "reason": "Column `movies_genres`.`movie_id` appear in Join On clause(s).", + "recommendationType": "Add", + "details": { + "engine": "InnoDB", + "script": "alter table `movies`.`movies_genres` add index `idx_movie_id` (`movie_id`)", + "queryIds": "779", + "indexName": "idx_movie_id", + "indexType": "BTREE", + "tableName": "movies_genres", + "schemaName": "movies", + "indexColumns": "`movies_genres`.`movie_id`", + "parentTableName": "movies_genres" + } + } + } + } + } +} diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/RecommendedActionsListByServer.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/RecommendedActionsListByServer.json new file mode 100644 index 000000000000..a90b19361557 --- /dev/null +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/RecommendedActionsListByServer.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2018-06-01", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testResourceGroupName", + "serverName": "testServerName", + "advisorName": "Index" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.Sql/servers/testServerName/advisors/Index/recommendedActions/Index-1", + "name": "Index-1", + "type": "Microsoft.DBforMariaDB/servers/advisors/recommendedActions", + "properties": { + "advisorName": "Index", + "sessionId": "c63c2114-e2a4-4c7a-98c1-85577d1a5d50", + "actionId": 1, + "createdTime": "2019-05-01T23:43:24Z", + "expirationTime": "2019-05-08T23:43:24Z", + "reason": "Column `movies_genres`.`movie_id` appear in Join On clause(s).", + "recommendationType": "Add", + "details": { + "engine": "InnoDB", + "script": "alter table `movies`.`movies_genres` add index `idx_movie_id` (`movie_id`)", + "queryIds": "779", + "indexName": "idx_movie_id", + "indexType": "BTREE", + "tableName": "movies_genres", + "schemaName": "movies", + "indexColumns": "`movies_genres`.`movie_id`", + "parentTableName": "movies_genres" + } + } + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.Sql/servers/testServerName/advisors/Index/recommendedActions/Index-2", + "name": "Index-2", + "type": "Microsoft.DBforMariaDB/servers/advisors/recommendedActions", + "properties": { + "advisorName": "Index", + "sessionId": "c63c2114-e2a4-4c7a-98c1-85577d1a5d50", + "actionId": 2, + "createdTime": "2019-05-01T23:43:24Z", + "expirationTime": "2019-05-08T23:43:24Z", + "reason": "Column `movies_genres`.`genre` appear in Group By clause(s).", + "recommendationType": "Add", + "details": { + "engine": "InnoDB", + "script": "alter table `movies`.`movies_genres` add index `idx_genre` (`genre`)", + "queryIds": "779", + "indexName": "idx_genre", + "indexType": "BTREE", + "tableName": "movies_genres", + "schemaName": "movies", + "indexColumns": "`movies_genres`.`genre`", + "parentTableName": "movies_genres" + } + } + } + ] + } + } + } +} diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerGet.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerGet.json index fb8fdea3d1f7..1d5df012112a 100644 --- a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerGet.json +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerGet.json @@ -28,7 +28,24 @@ "earliestRestoreDate": "2018-03-14T18:02:41.577+00:00", "replicationRole": "None", "masterServerId": "", - "replicaCapacity": 5 + "replicaCapacity": 5, + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMariaDB/servers/mariadbtestsvc4/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] }, "location": "westus", "tags": { diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerList.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerList.json index de7b622078e6..fca509d4c1ad 100644 --- a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerList.json +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerList.json @@ -25,7 +25,9 @@ "sslEnforcement": "Enabled", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mariadbtestsvc1.mariadb.database.azure.com", - "earliestRestoreDate": "2018-02-28T23:56:02.627+00:00" + "earliestRestoreDate": "2018-02-28T23:56:02.627+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [] }, "location": "westus", "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMariaDB/servers/mariadbtestsvc1", @@ -50,7 +52,24 @@ "sslEnforcement": "Enabled", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mariadbtstsvc2.mariadb.database.azure.com", - "earliestRestoreDate": "2018-02-28T23:56:54.3+00:00" + "earliestRestoreDate": "2018-02-28T23:56:54.3+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMariaDB/servers/mariadbtstsvc2/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] }, "location": "westus", "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMariaDB/servers/mariadbtstsvc2", @@ -75,7 +94,24 @@ "sslEnforcement": "Enabled", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mariadbtestsvc3.mariadb.database.azure.com", - "earliestRestoreDate": "2018-02-28T23:59:44.847+00:00" + "earliestRestoreDate": "2018-02-28T23:59:44.847+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMariaDB/servers/mariadbtestsvc3/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] }, "location": "westus", "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg1/providers/Microsoft.DBforMariaDB/servers/mariadbtestsvc3", diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerListByResourceGroup.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerListByResourceGroup.json index 7331423f71cd..ad95643dfbb6 100644 --- a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerListByResourceGroup.json +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/ServerListByResourceGroup.json @@ -26,7 +26,9 @@ "sslEnforcement": "Enabled", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mariadbtestsvc1.mariadb.database.azure.com", - "earliestRestoreDate": "2018-03-07T18:17:35.729321+00:00" + "earliestRestoreDate": "2018-03-07T18:17:35.729321+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [] }, "location": "westus", "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMariaDB/servers/mariadbtestsvc1", @@ -51,7 +53,24 @@ "sslEnforcement": "Enabled", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mariadbtstsvc2.mariadb.database.azure.com", - "earliestRestoreDate": "2018-03-07T18:17:35.729321+00:00" + "earliestRestoreDate": "2018-03-07T18:17:35.729321+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMariaDB/servers/mariadbtstsvc2/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] }, "location": "westus", "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMariaDB/servers/mariadbtstsvc2", diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/TopQueryStatisticsGet.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/TopQueryStatisticsGet.json new file mode 100644 index 000000000000..27e775902f74 --- /dev/null +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/TopQueryStatisticsGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2018-06-01", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testResourceGroupName", + "serverName": "testServerName", + "queryStatisticId": "66-636923268000000000-636923277000000000-avg-duration" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.DBforMariaDB/servers/testServerName/queryStatistic/66-636923268000000000-636923277000000000-avg-duration", + "name": "66-636923268000000000-636923277000000000-avg-duration", + "type": "Microsoft.DBforMariaDB/servers/queryStatistics", + "properties": { + "aggregationFunction": "avg", + "databaseNames": [ + "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.DBforMariaDB/servers/testServerName/databases/mariadb" + ], + "startTime": "2019-05-01T17:00:00Z", + "endTime": "2019-05-01T17:15:00Z", + "metricDisplayName": "Query duration", + "metricName": "duration", + "metricValue": 123.301446136, + "metricValueUnit": "milliseconds", + "queryExecutionCount": 1, + "queryId": "66" + } + } + } + } +} diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/TopQueryStatisticsListByServer.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/TopQueryStatisticsListByServer.json new file mode 100644 index 000000000000..f76ac93e13a9 --- /dev/null +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/TopQueryStatisticsListByServer.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2018-06-01", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testResourceGroupName", + "serverName": "testServerName", + "parameters": { + "properties": { + "numberOfTopQueries": 5, + "aggregationFunction": "avg", + "observedMetric": "duration", + "observationStartTime": "2019-05-01T20:00:00.000Z", + "observationEndTime": "2019-05-07T20:00:00.000Z", + "aggregationWindow": "PT15M" + } + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.DBforMariaDB/servers/testServerName/queryStatistic/66-636923268000000000-636923277000000000-avg-duration", + "name": "66-636923268000000000-636923277000000000-avg-duration", + "type": "Microsoft.DBforMariaDB/servers/queryStatistics", + "properties": { + "aggregationFunction": "avg", + "databaseNames": [ + "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.DBforMariaDB/servers/testServerName/databases/mariadb" + ], + "startTime": "2019-05-01T17:00:00Z", + "endTime": "2019-05-01T17:15:00Z", + "metricDisplayName": "Query duration", + "metricName": "duration", + "metricValue": 123.301446136, + "metricValueUnit": "milliseconds", + "queryExecutionCount": 1, + "queryId": "66" + } + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.DBforMariaDB/servers/testServerName/queryStatistic/66-636924483000000000-636924492000000000-avg-duration", + "name": "66-636924483000000000-636924492000000000-avg-duration", + "type": "Microsoft.DBforMariaDB/servers/queryStatistics", + "properties": { + "aggregationFunction": "avg", + "databaseNames": [ + "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.DBforMariaDB/servers/testServerName/databases/mariadb" + ], + "startTime": "2019-05-03T02:45:00Z", + "endTime": "2019-05-03T03:00:00Z", + "metricDisplayName": "Query duration", + "metricName": "duration", + "metricValue": 1712.301446136, + "metricValueUnit": "milliseconds", + "queryExecutionCount": 1, + "queryId": "66" + } + } + ] + } + } + } +} diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/WaitStatisticsGet.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/WaitStatisticsGet.json new file mode 100644 index 000000000000..bd5c524d20be --- /dev/null +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/WaitStatisticsGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2018-06-01", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testResourceGroupName", + "serverName": "testServerName", + "waitStatisticsId": "636927606000000000-636927615000000000-send-wait/io/socket/sql/client_connection-2--0" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.DBforMariaDB/servers/testServerName/waitStatistics/636927606000000000-636927615000000000-send-wait/io/socket/sql/client_connection-2--0", + "name": "636927606000000000-636927615000000000-send-wait/io/socket/sql/client_connection-2--0", + "type": "Microsoft.DBforMariaDB/servers/waitStatistics", + "properties": { + "startTime": "2019-05-06T17:30:00Z", + "endTime": "2019-05-06T17:45:00Z", + "eventName": "wait/io/socket/sql/client_connection", + "eventTypeName": "send", + "queryId": 2, + "databaseName": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.DBforMariaDB/servers/testServerName/databases/mariadb", + "userId": 0, + "count": 2, + "totalTimeInMs": 12.346 + } + } + } + } +} diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/WaitStatisticsListByServer.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/WaitStatisticsListByServer.json new file mode 100644 index 000000000000..ba2113d29f99 --- /dev/null +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/examples/WaitStatisticsListByServer.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2018-06-01", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testResourceGroupName", + "serverName": "testServerName", + "parameters": { + "properties": { + "observationStartTime": "2019-05-01T20:00:00.000Z", + "observationEndTime": "2019-05-07T20:00:00.000Z", + "aggregationWindow": "PT15M" + } + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.DBforMariaDB/servers/testServerName/waitStatistics/636927606000000000-636927615000000000-send-wait/io/socket/sql/client_connection-2--0", + "name": "636927606000000000-636927615000000000-send-wait/io/socket/sql/client_connection-2--0", + "type": "Microsoft.DBforMariaDB/servers/waitStatistics", + "properties": { + "startTime": "2019-05-06T17:30:00Z", + "endTime": "2019-05-06T17:45:00Z", + "eventName": "wait/io/socket/sql/client_connection", + "eventTypeName": "send", + "queryId": 2, + "databaseName": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.DBforMariaDB/servers/testServerName/databases/mariadb", + "userId": 0, + "count": 2, + "totalTimeInMs": 12.345 + } + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/hyshim-test/providers/Microsoft.DBforMariaDB/servers/hyshim-wait-stats-fix/waitStatistics/636927606000000000-636927615000000000-lock-wait/synch/mutex/mysys/THR_LOCK::mutex-2--0", + "name": "636927606000000000-636927615000000000-lock-wait/synch/mutex/mysys/THR_LOCK::mutex-2--0", + "type": "Microsoft.DBforMariaDB/servers/waitStatistics", + "properties": { + "startTime": "2019-05-06T17:30:00Z", + "endTime": "2019-05-06T17:45:00Z", + "eventName": "wait/synch/mutex/mysys/THR_LOCK::mutex", + "eventTypeName": "lock", + "queryId": 2, + "databaseName": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/hyshim-test/providers/Microsoft.DBforMariaDB/servers/hyshim-wait-stats-fix/databases/", + "userId": 0, + "count": 4, + "totalTimeInMs": 56.789 + } + } + ] + } + } + } +} diff --git a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/mariadb.json b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/mariadb.json index 8a0ac15ca3bd..505dddb7cf92 100644 --- a/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/mariadb.json +++ b/specification/mariadb/resource-manager/Microsoft.DBforMariaDB/stable/2018-06-01/mariadb.json @@ -57,13 +57,13 @@ "description": "Creates a new server or updates an existing server. The update action will overwrite the existing server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -110,13 +110,13 @@ "description": "Updates an existing server. The request body can contain one to many of the properties present in the normal server definition.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -157,13 +157,13 @@ "description": "Deletes a server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -195,13 +195,13 @@ "description": "Gets information about a server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -231,13 +231,13 @@ "description": "List all the servers in a given resource group.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" } ], "responses": { @@ -267,10 +267,10 @@ "description": "List all the servers in a given subscription.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -300,13 +300,13 @@ "description": "Restarts a server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -343,13 +343,13 @@ "description": "List all the replicas for a given server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -382,13 +382,13 @@ "description": "Creates a new firewall rule or updates an existing firewall rule.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -438,13 +438,13 @@ "description": "Deletes a server firewall rule.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -479,13 +479,13 @@ "description": "Gets information about a server firewall rule.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -518,13 +518,13 @@ "description": "List all the firewall rules in a given server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -552,16 +552,16 @@ "operationId": "VirtualNetworkRules_Get", "parameters": [ { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/virtualNetworkRuleNameParameter" @@ -592,16 +592,16 @@ "operationId": "VirtualNetworkRules_CreateOrUpdate", "parameters": [ { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/virtualNetworkRuleNameParameter" @@ -651,7 +651,7 @@ "operationId": "VirtualNetworkRules_Delete", "parameters": [ { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -660,10 +660,10 @@ "$ref": "#/parameters/virtualNetworkRuleNameParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -697,16 +697,16 @@ "operationId": "VirtualNetworkRules_ListByServer", "parameters": [ { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -744,13 +744,13 @@ "description": "Creates a new database or updates an existing database.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -800,13 +800,13 @@ "description": "Deletes a database.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -841,13 +841,13 @@ "description": "Gets information about a database.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -880,13 +880,13 @@ "description": "List all the databases in a given server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -919,13 +919,13 @@ "description": "Updates a configuration of a server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -969,13 +969,13 @@ "description": "Gets information about a configuration of server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -1008,13 +1008,13 @@ "description": "List all the configurations in a given server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -1047,13 +1047,13 @@ "description": "List all the log files in a given server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -1086,10 +1086,10 @@ "description": "List all the performance tiers at specified location in a given subscription.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "#/parameters/LocationNameParameter" @@ -1122,10 +1122,10 @@ "description": "Check the availability of name for resource", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { "name": "nameAvailabilityRequest", @@ -1156,7 +1156,7 @@ "operationId": "ServerSecurityAlertPolicies_Get", "parameters": [ { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -1176,10 +1176,10 @@ } }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -1207,7 +1207,7 @@ "operationId": "ServerSecurityAlertPolicies_CreateOrUpdate", "parameters": [ { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -1236,10 +1236,10 @@ } }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -1281,7 +1281,7 @@ "description": "Lists all of the available REST API operations.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -1320,27 +1320,113 @@ "modelAsString": false } }, - "ProxyResource": { - "description": "Resource properties.", + "PublicNetworkAccess": { + "type": "string", + "description": "Whether or not public network access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccessEnum", + "modelAsString": true + } + }, + "ServerPrivateEndpointConnection": { + "description": "A private endpoint connection under a server", + "type": "object", "properties": { "id": { - "readOnly": true, + "description": "Resource Id of the private endpoint connection.", "type": "string", - "description": "Resource ID" + "readOnly": true }, - "name": { - "readOnly": true, - "type": "string", - "description": "Resource name." + "properties": { + "$ref": "#/definitions/ServerPrivateEndpointConnectionProperties", + "description": "Private endpoint connection properties", + "readOnly": true + } + } + }, + "ServerPrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." }, - "type": { - "readOnly": true, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/ServerPrivateLinkServiceConnectionStateProperty", + "description": "Connection state of the private endpoint connection." + }, + "provisioningState": { + "description": "State of the private endpoint connection.", + "enum": [ + "Approving", + "Ready", + "Dropping", + "Failed", + "Rejecting" + ], "type": "string", - "description": "Resource type." + "readOnly": true, + "x-ms-enum": { + "name": "PrivateEndpointProvisioningState", + "modelAsString": true + } + } + } + }, + "PrivateEndpointProperty": { + "type": "object", + "properties": { + "id": { + "description": "Resource id of the private endpoint.", + "type": "string" } }, "x-ms-azure-resource": true }, + "ServerPrivateLinkServiceConnectionStateProperty": { + "required": [ + "status", + "description" + ], + "type": "object", + "properties": { + "status": { + "description": "The private link service connection status.", + "enum": [ + "Approved", + "Pending", + "Rejected", + "Disconnected" + ], + "type": "string", + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStateStatus", + "modelAsString": true + } + }, + "description": { + "description": "The private link service connection description.", + "type": "string" + }, + "actionsRequired": { + "description": "The actions required for private link service connection.", + "enum": [ + "None" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStateActionsRequire", + "modelAsString": true + } + } + } + }, "TrackedResource": { "description": "Resource properties including location and tags for track resources.", "properties": { @@ -1362,7 +1448,7 @@ }, "allOf": [ { - "$ref": "#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" } ], "required": [ @@ -1422,6 +1508,18 @@ "format": "int32", "minimum": 0, "description": "The maximum number of replicas that a master server can have." + }, + "publicNetworkAccess": { + "$ref": "#/definitions/PublicNetworkAccess", + "description": "Whether or not public network access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'" + }, + "privateEndpointConnections": { + "description": "List of private endpoint connections on a server", + "type": "array", + "items": { + "$ref": "#/definitions/ServerPrivateEndpointConnection" + }, + "readOnly": true } }, "description": "The properties of a server." @@ -1478,6 +1576,10 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "publicNetworkAccess": { + "$ref": "#/definitions/PublicNetworkAccess", + "description": "Whether or not public network access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'" + }, "storageProfile": { "$ref": "#/definitions/StorageProfile", "description": "Storage profile of a server." @@ -1692,6 +1794,10 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "publicNetworkAccess": { + "$ref": "#/definitions/PublicNetworkAccess", + "description": "Whether or not public network access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'" + }, "replicationRole": { "type": "string", "description": "The replication role of the server." @@ -1751,7 +1857,7 @@ }, "allOf": [ { - "$ref": "#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" } ], "required": [ @@ -1809,7 +1915,7 @@ "type": "object", "allOf": [ { - "$ref": "#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" } ], "properties": { @@ -1862,7 +1968,7 @@ }, "allOf": [ { - "$ref": "#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" } ], "description": "Represents a Database." @@ -1922,7 +2028,7 @@ }, "allOf": [ { - "$ref": "#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" } ], "description": "Represents a Configuration." @@ -2060,7 +2166,7 @@ }, "allOf": [ { - "$ref": "#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" } ], "description": "Represents a log file." @@ -2234,7 +2340,7 @@ "type": "object", "allOf": [ { - "$ref": "#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" } ], "properties": { @@ -2249,60 +2355,13 @@ "x-ms-external": true, "properties": { "error": { - "$ref": "#/definitions/CloudErrorBody" - } - }, - "description": "An error response from the Batch service." - }, - "CloudErrorBody": { - "x-ms-external": true, - "properties": { - "code": { - "type": "string", - "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." - }, - "message": { - "type": "string", - "description": "A message describing the error, intended to be suitable for display in a user interface." - }, - "target": { - "type": "string", - "description": "The target of the particular error. For example, the name of the property in error." - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/CloudErrorBody" - }, - "description": "A list of additional details about the error." + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" } }, "description": "An error response from the Batch service." } }, "parameters": { - "SubscriptionIdParameter": { - "name": "subscriptionId", - "in": "path", - "required": true, - "type": "string", - "description": "The subscription ID that identifies an Azure subscription." - }, - "ApiVersionParameter": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the request." - }, - "ResourceGroupParameter": { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "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.", - "x-ms-parameter-location": "method" - }, "ServerNameParameter": { "name": "serverName", "in": "path", diff --git a/specification/mariadb/resource-manager/readme.cli.md b/specification/mariadb/resource-manager/readme.cli.md new file mode 100644 index 000000000000..007ce15453a7 --- /dev/null +++ b/specification/mariadb/resource-manager/readme.cli.md @@ -0,0 +1,64 @@ +## CLI + +These settings don't need to apply `--cli` on the command line. + +``` yaml +cli: + cli-name: mariadb + package-name: azure-mgmt-rdbms-mariadb + namespace: azure.mgmt.rdbms.mariadb + test-scenario: + - name: Create a new server + - name: Create a replica server + - name: Create a database as a point in time restore + - name: Create a server as a geo restore + - name: DatabaseCreate + - name: FirewallRuleCreate + - name: ConfigurationCreateOrUpdate + - name: Create or update a virtual network rule + - name: Update a server's threat detection policy with all parameters + - name: Update a server's threat detection policy with minimal parameters + - name: Approve or reject a private endpoint connection with a given name. + - name: RecommendedActionsGet + - name: RecommendedActionSessionOperationStatus + - name: Gets private endpoint connection. + - name: RecommendedActionSessionResult + - name: Get a server's threat detection policy + - name: Gets a private link resource for MariaDB. + - name: Gets a virtual network rule + - name: TopQueryStatisticsGet + - name: RecommendedActionsListByServer + - name: WaitStatisticsGet + - name: ConfigurationGet + - name: FirewallRuleGet + - name: QueryTextsGet + - name: DatabaseGet + - name: AdvisorsGet + - name: Gets list of private endpoint connections on a server. + - name: Gets private link resources for MariaDB. + - name: List virtual network rules + - name: TopQueryStatisticsListByServer + - name: WaitStatisticsListByServer + - name: ConfigurationList + - name: FirewallRuleList + - name: QueryTextsListByServer + - name: DatabaseList + - name: LogFileList + - name: AdvisorsListByServer + - name: ReplicasListByServer + - name: ServerGet + - name: PerformanceTiersList + - name: ServerListByResourceGroup + - name: ServerList + - name: OperationList + - name: Update private endpoint connection Tags + - name: RecommendedActionSessionCreate + - name: ServerRestart + - name: ServerUpdate + - name: NameAvailability + - name: Deletes a private endpoint connection with a given name. + - name: Delete a virtual network rule + - name: FirewallRuleDelete + - name: DatabaseDelete + - name: ServerDelete +``` \ No newline at end of file diff --git a/specification/mariadb/resource-manager/readme.md b/specification/mariadb/resource-manager/readme.md index b20c7e17bdd2..509479004dc0 100644 --- a/specification/mariadb/resource-manager/readme.md +++ b/specification/mariadb/resource-manager/readme.md @@ -26,7 +26,7 @@ These are the global settings for the MariaDB API. ``` yaml title: MariaDBManagementClient -description: MariaDB Client +description: The Microsoft Azure management API provides create, read, update, and delete functionality for Azure MariaDB resources including servers, databases, firewall rules, VNET rules, log files and configurations with new business model. openapi-type: arm tag: package-2018-06-01 ``` @@ -48,6 +48,10 @@ These settings apply only when `--tag=package-2018-06-01` is specified on the co ``` yaml $(tag) == 'package-2018-06-01' input-file: - Microsoft.DBforMariaDB/stable/2018-06-01/mariadb.json +- Microsoft.DBforMariaDB/stable/2018-06-01/QueryPerformanceInsights.json +- Microsoft.DBforMariaDB/stable/2018-06-01/PerformanceRecommendations.json +- Microsoft.DBforMariaDB/stable/2018-06-01/PrivateEndpointConnections.json +- Microsoft.DBforMariaDB/stable/2018-06-01/PrivateLinkResources.json ``` @@ -142,7 +146,7 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.java.md](./readme.java.md) -## Multi-API/Profile support for AutoRest v3 generators +## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. @@ -156,6 +160,10 @@ require: $(this-folder)/../../../profiles/readme.md 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/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 @@ -163,11 +171,10 @@ input-file: ``` -If there are files that should not be in the `all-api-versions` set, +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: +#exclude-file: # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` - diff --git a/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2019-12-01/Marketplace.json b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2019-12-01/Marketplace.json index c37f27897b3a..5aab7ea6c7a7 100644 --- a/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2019-12-01/Marketplace.json +++ b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2019-12-01/Marketplace.json @@ -72,97 +72,97 @@ } }, "parameters": { - "ApiVersionParameter": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the request." - }, - "subscriptionIdParameter": { - "name": "subscriptionId", - "in": "path", - "description": "The Azure subscription ID.", - "required": true, - "type": "string" - } + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the request." }, + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "The Azure subscription ID.", + "required": true, + "type": "string" + } + }, "definitions": { - "ErrorResponse": { - "description": "Error response indicates Microsoft.Marketplace service is not able to process the incoming request. The reason is provided in the error message.", - "type": "object", - "properties": { - "error": { - "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 - } + "ErrorResponse": { + "description": "Error response indicates Microsoft.Marketplace service is not able to process the incoming request. The reason is provided in the error message.", + "type": "object", + "properties": { + "error": { + "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 } } } - }, - "Operation": { - "description": "Microsoft.Marketplace REST API 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.Marketplace", - "type": "string" - }, - "resource": { - "description": "Resource on which the operation is performed: Amendments", - "type": "string" - }, - "operation": { - "description": "Operation type: Get Amendments etc.", - "type": "string" - } + } + }, + "Operation": { + "description": "Microsoft.Marketplace REST API 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.Marketplace", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed: Amendments", + "type": "string" + }, + "operation": { + "description": "Operation type: Get Amendments etc.", + "type": "string" } } } - }, - "OperationListResult": { - "description": "Result of the request to list Marketplace 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.Marketplace operations supported by the Microsoft.Marketplace resource provider." + } + }, + "OperationListResult": { + "description": "Result of the request to list Marketplace 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" }, - "nextLink": { - "type": "string", - "description": "URL to get the next set of operation list results if there are any.", - "readOnly": true - } + "description": "List of Microsoft.Marketplace operations supported by the Microsoft.Marketplace resource provider." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any.", + "readOnly": true } } - }, + } + }, "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" - } + "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" } } } +} diff --git a/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/Marketplace.json b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/Marketplace.json new file mode 100644 index 000000000000..3614928252c9 --- /dev/null +++ b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/Marketplace.json @@ -0,0 +1,576 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-01-01", + "title": "MarketplaceManagementClient", + "description": "REST APIs for Azure Marketplace" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "paths": { + "/providers/Microsoft.Marketplace/privateStores/{PrivateStoreId}/offers": { + "parameters": [ + { + "$ref": "#/parameters/PrivateStoreIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "get": { + "tags": [ + "PrivateStores" + ], + "operationId": "PrivateStoreOffers_List", + "description": "Get a list of all private offers in the given private store", + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OfferListResponse" + } + }, + "default": { + "description": "Microsoft.Marketplace error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetPrivateStoreOffers": { + "$ref": "./examples/GetPrivateStoreOffers.json" + } + } + } + }, + "/providers/Microsoft.Marketplace/privateStores/{PrivateStoreId}/offers/{OfferId}": { + "parameters": [ + { + "$ref": "#/parameters/OfferIdPathParameter" + }, + { + "$ref": "#/parameters/PrivateStoreIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "delete": { + "tags": [ + "PrivateStores" + ], + "operationId": "PrivateStoreOffer_Delete", + "description": "Deletes an offer from the given private store.", + "responses": { + "200": { + "description": "Offer was deleted successfully" + }, + "default": { + "description": "Microsoft.Marketplace error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "DeletePrivateStoreOffer": { + "$ref": "./examples/DeletePrivateStoreOffer.json" + } + } + }, + "get": { + "tags": [ + "PrivateStores" + ], + "operationId": "PrivateStoreOffer_Get", + "description": "Gets information about a specific offer.", + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Offer information retrieved", + "schema": { + "$ref": "#/definitions/Offer" + } + }, + "default": { + "description": "Microsoft.Marketplace error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "GetPrivateStoreOffer": { + "$ref": "./examples/GetPrivateStoreOffer.json" + } + } + }, + "put": { + "tags": [ + "PrivateStores" + ], + "operationId": "PrivateStoreOffer_CreateOrUpdate", + "description": "Update or add an offer to the default collection of the private store.", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "body", + "name": "payload", + "schema": { + "$ref": "#/definitions/Offer" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Offer" + } + }, + "default": { + "description": "Microsoft.Marketplace error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "UpdatePrivateStoreOffer": { + "$ref": "./examples/UpdatePrivateStoreOffer.json" + } + } + } + }, + "/providers/Microsoft.Marketplace/privateStores": { + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "get": { + "tags": [ + "PrivateStores" + ], + "operationId": "PrivateStore_List", + "description": "Gets the list of available private stores", + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/PrivateStoreList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "GetPrivateStores": { + "$ref": "./examples/GetPrivateStores.json" + } + } + } + }, + "/providers/Microsoft.Marketplace/privateStores/{PrivateStoreId}": { + "parameters": [ + { + "$ref": "#/parameters/PrivateStoreIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "get": { + "tags": [ + "PrivateStores" + ], + "operationId": "PrivateStore_Get", + "description": "Get information about the private store", + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/PrivateStoreProperties" + } + }, + "default": { + "description": "Microsoft.Marketplace error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "GetPrivateStore": { + "$ref": "./examples/GetPrivateStore.json" + } + } + }, + "delete": { + "tags": [ + "PrivateStores" + ], + "operationId": "PrivateStore_Delete", + "description": "Deletes the private store. All that is not saved will be lost.", + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "Private store was deleted successfully ." + }, + "default": { + "description": "Microsoft.Marketplace error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "DeletePrivateStores": { + "$ref": "./examples/DeletePrivateStore.json" + } + } + }, + "put": { + "tags": [ + "PrivateStores" + ], + "operationId": "PrivateStore_CreateOrUpdate", + "description": "Changes private store properties", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "in": "body", + "name": "payload", + "schema": { + "$ref": "#/definitions/PrivateStoreProperties" + } + } + ], + "responses": { + "200": { + "description": "Change successful" + }, + "default": { + "description": "Microsoft.Marketplace error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "UpdatePrivateStores": { + "$ref": "./examples/UpdatePrivateStore.json" + } + } + } + }, + "/providers/Microsoft.Marketplace/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all of the available Microsoft.Marketplace REST API operations.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Microsoft.Marketplace error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + } + }, + "parameters": { + "PrivateStoreIdParameter": { + "name": "PrivateStoreId", + "in": "path", + "required": true, + "type": "string", + "description": "The store ID - must use the tenant ID" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the request." + }, + "OfferIdPathParameter": { + "in": "path", + "name": "OfferId", + "type": "string", + "required": true, + "description": "The offer ID to update or delete" + }, + "offerObjectParameter": { + "in": "body", + "name": "offerObject", + "schema": { + "$ref": "#/definitions/offerSkuObject" + } + } + }, + "definitions": { + "offerSkuObject": { + "type": "object", + "required": [ + "isAvailable" + ], + "properties": { + "isAvailable": { + "type": "boolean" + } + } + }, + "offerObject": { + "type": "object", + "required": [ + "isAvailable" + ], + "properties": { + "isAvailable": { + "type": "boolean" + } + } + }, + "ErrorResponse": { + "description": "Error response indicates Microsoft.Marketplace service is not able to process the incoming request. The reason is provided in the error message.", + "type": "object", + "properties": { + "error": { + "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 + } + } + } + } + }, + "PrivateStoreList": { + "description": "Describes the json payload for the list of available private stores (between zero and one, inclusive)", + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateStoreProperties" + } + }, + "nextLink": { + "description": "URL to get the next set of PrivateStore list results if there are any.", + "type": "string" + } + } + }, + "PrivateStoreProperties": { + "description": "Describes the json payload on whether or not the private store is enabled for a given tenant", + "type": "object", + "properties": { + "availability": { + "description": "Indicates private store availability", + "type": "string", + "enum": [ + "enabled", + "disabled" + ], + "x-ms-enum": { + "name": "Availability", + "modelAsString": true + } + }, + "privateStoreId": { + "description": "Private Store id", + "type": "string" + }, + "eTag": { + "description": "Identifier for purposes of race condition", + "type": "string" + } + } + }, + "OfferListResponse": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Offer" + } + }, + "nextLink": { + "description": "URL to get the next set of offer list results if there are any.", + "type": "string" + } + } + }, + "Offer": { + "type": "object", + "properties": { + "uniqueOfferId": { + "description": "Offers unique id", + "type": "string", + "readOnly": true + }, + "offerDisplayName": { + "description": "It will be displayed prominently in the marketplace", + "type": "string", + "readOnly": true + }, + "publisherDisplayName": { + "description": "Publisher name that will be displayed prominently in the marketplace", + "type": "string", + "readOnly": true + }, + "eTag": { + "description": "Identifier for purposes of race condition", + "type": "string" + }, + "privateStoreId": { + "readOnly": true, + "description": "Private store unique id", + "type": "string" + }, + "plans": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Plan" + } + }, + "specificPlanIdsLimitation": { + "description": "Plan ids limitation for this offer", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "Plan": { + "type": "object", + "properties": { + "skuId": { + "description": "Identifier for this plan", + "type": "string", + "readOnly": true + }, + "planId": { + "description": "Text identifier for this plan", + "type": "string", + "readOnly": true + }, + "planDisplayName": { + "description": "Friendly name for the plan for display in the marketplace", + "type": "string", + "readOnly": true + } + } + }, + "Operation": { + "description": "Microsoft.Marketplace REST API 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.Marketplace", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed: Amendments", + "type": "string" + }, + "operation": { + "description": "Operation type: Get Amendments etc.", + "type": "string" + } + } + } + } + }, + "OperationListResult": { + "description": "Result of the request to list Marketplace 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.Marketplace operations supported by the Microsoft.Marketplace resource provider." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any.", + "readOnly": true + } + } + } + }, + "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" + } + } + } +} diff --git a/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/DeletePrivateStore.json b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/DeletePrivateStore.json new file mode 100644 index 000000000000..8bc56777425c --- /dev/null +++ b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/DeletePrivateStore.json @@ -0,0 +1,9 @@ +{ + "parameters": { + "PrivateStoreId": "a0e28e55-90c4-41d8-8e34-bb7ef7775406", + "api-version": "2020-01-01" + }, + "responses": { + "200": {} + } +} diff --git a/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/DeletePrivateStoreOffer.json b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/DeletePrivateStoreOffer.json new file mode 100644 index 000000000000..8939579051a0 --- /dev/null +++ b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/DeletePrivateStoreOffer.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "PrivateStoreId": "a0e28e55-90c4-41d8-8e34-bb7ef7775406", + "OfferId": "marketplacetestthirdparty.md-test-third-party-2", + "api-version": "2020-01-01" + }, + "responses": { + "200": {} + } +} diff --git a/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/GetPrivateStore.json b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/GetPrivateStore.json new file mode 100644 index 000000000000..9a4363e7764f --- /dev/null +++ b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/GetPrivateStore.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "PrivateStoreId": "a0e28e55-90c4-41d8-8e34-bb7ef7775406", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "privateStoreId": "a0e28e55-90c4-41d8-8e34-bb7ef7775406", + "availability": "enabled", + "eTag": "\"9301f4fd-0000-0100-0000-5e248b350345\"" + } + } + } +} diff --git a/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/GetPrivateStoreOffer.json b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/GetPrivateStoreOffer.json new file mode 100644 index 000000000000..2695c6be26c3 --- /dev/null +++ b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/GetPrivateStoreOffer.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "PrivateStoreId": "a0e28e55-90c4-41d8-8e34-bb7ef7775406", + "OfferId": "marketplacetestthirdparty.md-test-third-party-2", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "uniqueOfferId": "marketplacetestthirdparty.md-test-third-party-2", + "offerDisplayName": "md-test-third-party-2", + "publisherDisplayName": "Marketplace Test Third Party", + "privateStoreId": "a0e28e55-90c4-41d8-8e34-bb7ef7775406", + "eTag": "\"9301f4fd-0000-0100-0000-5e248b350000\"", + "specificPlanIdsLimitation": [ + "0001", + "0002", + "0003" + ], + "plans": [ + { + "skuId": "0001", + "planId": "text-iq-deep-concept-analysis", + "planDisplayName": "Text IQ Deep Concept Analysis" + }, + { + "skuId": "0002", + "planId": "new-md-sku-4", + "planDisplayName": "New Medic Solution" + } + ] + } + } + } +} diff --git a/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/GetPrivateStoreOffers.json b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/GetPrivateStoreOffers.json new file mode 100644 index 000000000000..48d67af2d602 --- /dev/null +++ b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/GetPrivateStoreOffers.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "PrivateStoreId": "a0e28e55-90c4-41d8-8e34-bb7ef7775406", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "nextLink": "", + "value": [ + { + "uniqueOfferId": "marketplacetestthirdparty.md-test-third-party-2", + "offerDisplayName": "md-test-third-party-2", + "publisherDisplayName": "Marketplace Test Third Party", + "privateStoreId": "a0e28e55-90c4-41d8-8e34-bb7ef7775406", + "eTag": "\"9301f4fd-0000-0100-0000-5e248b350000\"", + "specificPlanIdsLimitation": [ + "0001", + "0002", + "0003" + ], + "plans": [ + { + "skuId": "0001", + "planId": "text-iq-deep-concept-analysis", + "planDisplayName": "Text IQ Deep Concept Analysis" + }, + { + "skuId": "0002", + "planId": "new-md-sku-4", + "planDisplayName": "New Medic Solution" + } + ] + }, + { + "uniqueOfferId": "marketplacetestthirdparty.md-test-third-party-3", + "offerDisplayName": "md-test-third-party-3", + "publisherDisplayName": "Marketplace Test Third Party", + "privateStoreId": "a0e28e55-90c4-41d8-8e34-bb7ef7775406", + "eTag": "\"9301f4fd-0000-0100-0304-5e248b350043\"", + "specificPlanIdsLimitation": [ + "0001", + "0002" + ], + "plans": [ + { + "skuId": "0001", + "planId": "test-planId", + "planDisplayName": "Test Plan Id" + }, + { + "skuId": "0001", + "planId": "new-md-sku-6", + "planDisplayName": "New Medic Solution Sixth Generation" + } + ] + } + ] + } + } + } +} diff --git a/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/GetPrivateStores.json b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/GetPrivateStores.json new file mode 100644 index 000000000000..d9f26cc0e047 --- /dev/null +++ b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/GetPrivateStores.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "nextLink": "", + "value": [ + { + "privateStoreId": "a0e28e55-90c4-41d8-8e34-bb7ef7775406", + "availability": "enabled", + "eTag": "\"9301f4fd-0000-0100-0000-5e248b350332\"" + }, + { + "privateStoreId": "f4528e55-98c4-4328-8e34-bb7ef7775345", + "availability": "disabled", + "eTag": "\"9301f4fd-0000-0100-0000-5e234b350345\"" + } + ] + } + } + } +} diff --git a/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/UpdatePrivateStore.json b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/UpdatePrivateStore.json new file mode 100644 index 000000000000..884633dcd1cc --- /dev/null +++ b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/UpdatePrivateStore.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "PrivateStoreId": "a0e28e55-90c4-41d8-8e34-bb7ef7775406", + "api-version": "2020-01-01", + "parameters": { + "properties": { + "availability": "disabled", + "eTag": "\"9301f4fd-0000-0100-0000-5e248b350345\"" + } + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/UpdatePrivateStoreOffer.json b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/UpdatePrivateStoreOffer.json new file mode 100644 index 000000000000..f4f0d5285737 --- /dev/null +++ b/specification/marketplace/resource-manager/Microsoft.Marketplace/stable/2020-01-01/examples/UpdatePrivateStoreOffer.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "PrivateStoreId": "a0e28e55-90c4-41d8-8e34-bb7ef7775406", + "OfferId": "marketplacetestthirdparty.md-test-third-party-2", + "api-version": "2020-01-01", + "parameters": { + "properties": { + "specificPlanIdsLimitation": [ + "0001", + "0002" + ], + "eTag": "\"9301f4fd-0000-0100-0000-5e248b350666\"" + } + } + }, + "responses": { + "200": { + "body": { + "uniqueOfferId": "marketplacetestthirdparty.md-test-third-party-2", + "offerDisplayName": "md-test-third-party-2", + "publisherDisplayName": "Marketplace Test Third Party", + "privateStoreId": "a0e28e55-90c4-41d8-8e34-bb7ef7775406", + "eTag": "\"9301f4fd-0000-0100-0000-5e248b350666\"", + "specificPlanIdsLimitation": [ + "0001", + "0002" + ], + "plans": [ + { + "skuId": "0001", + "planId": "text-iq-deep-concept-analysis", + "planDisplayName": "Text IQ Deep Concept Analysis" + }, + { + "skuId": "0002", + "planId": "new-md-sku-4", + "planDisplayName": "New Medic Solution" + } + ] + } + } + } +} diff --git a/specification/marketplace/resource-manager/readme.md b/specification/marketplace/resource-manager/readme.md index 923abb21dfed..028203ab4e6d 100644 --- a/specification/marketplace/resource-manager/readme.md +++ b/specification/marketplace/resource-manager/readme.md @@ -1,11 +1,20 @@ # marketplace > see https://aka.ms/autorest -This is the AutoRest configuration file for marketplace. + +This is the AutoRest configuration file for Marketplace. + +--- ## Getting Started -There is no SDK for this endpoint, this is used internaly for calling markeplaceRP from Ibiza. +To build the SDK for Marketplace, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: + +> `autorest` + +To see additional help and options, run: + +> `autorest --help` --- @@ -24,6 +33,44 @@ These settings apply only when `--tag=package-2019-12-01` is specified on the co input-file: - Microsoft.Marketplace/stable/2019-12-01/Marketplace.json ``` + +### Tag: package-2020-01-01 + +These settings apply only when `--tag=package-2020-01-01` is specified on the command line. + +```yaml $(tag) == 'package-2020-01-01' +input-file: + - Microsoft.Marketplace/stable/2020-01-01/Marketplace.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 + after_scripts: + - bundle install && rake arm:regen_all_profiles['azure_mgmt_marketplace'] +``` + +## 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 + namespace: Microsoft.Azure.Management.Marketplace + output-folder: $(csharp-sdks-folder)/marketplace/Microsoft.Azure.Management.Marketplace/src/Generated + 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. @@ -37,6 +84,7 @@ 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 ``` @@ -47,4 +95,3 @@ uncomment the `exclude-file` section below and add the file paths. #exclude-file: # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` - diff --git a/specification/mediaservices/resource-manager/Microsoft.Media/preview/2019-09-01-preview/Common.json b/specification/mediaservices/resource-manager/Microsoft.Media/preview/2019-09-01-preview/Common.json index 8ffd3bd1f71a..a940d0c41995 100644 --- a/specification/mediaservices/resource-manager/Microsoft.Media/preview/2019-09-01-preview/Common.json +++ b/specification/mediaservices/resource-manager/Microsoft.Media/preview/2019-09-01-preview/Common.json @@ -2,7 +2,7 @@ "swagger": "2.0", "info": { "title": "Azure Media Services", - "version": "2018-07-01" + "version": "2019-09-01-preview" }, "securityDefinitions": { "azure_auth": { diff --git a/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/Common.json b/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/Common.json new file mode 100644 index 000000000000..1745b2883a4b --- /dev/null +++ b/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/Common.json @@ -0,0 +1,80 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Media Services", + "version": "2020-02-01-preview" + }, + "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": { + "Resource": { + "description": "The core properties of ARM resources.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Fully qualified resource ID for the resource." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the resource." + } + }, + "x-ms-azure-resource": true + }, + "TrackedResource": { + "description": "The resource model definition for a ARM tracked resource.", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Resource tags." + }, + "location": { + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ], + "description": "The Azure Region of the resource." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ] + }, + "ProxyResource": { + "description": "The resource model definition for a ARM proxy resource.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ] + } + } +} diff --git a/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/MediaGraphs.json b/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/MediaGraphs.json new file mode 100644 index 000000000000..5e38e2ae333f --- /dev/null +++ b/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/MediaGraphs.json @@ -0,0 +1,901 @@ +{ + "schemes": [ + "https" + ], + "swagger": "2.0", + "info": { + "title": "Azure Media Services", + "description": "This Swagger was generated by the API Framework.", + "version": "2020-02-01-preview" + }, + "host": "management.azure.com", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "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" + } + } + }, + "definitions": { + "MediaGraphProperties": { + "properties": { + "description": { + "type": "string", + "description": "Media Graph description." + }, + "state": { + "type": "string", + "enum": [ + "Running", + "Starting", + "Stopped", + "Stopping" + ], + "x-ms-enum": { + "name": "MediaGraphState", + "values": [ + { + "value": "Running", + "description": "Media Graph is Running." + }, + { + "value": "Starting", + "description": "Media Graph is Starting." + }, + { + "value": "Stopped", + "description": "Media Graph has Stopped." + }, + { + "value": "Stopping", + "description": "Media Graph is Stopping." + } + ], + "modelAsString": true + }, + "description": "Media Graph state which indicates the resource allocation status for running the media graph pipeline.", + "readOnly": true, + "x-nullable": false + }, + "created": { + "type": "string", + "format": "date-time", + "description": "Date the Media Graph was created.", + "readOnly": true, + "x-nullable": false + }, + "lastModified": { + "type": "string", + "format": "date-time", + "description": "Date the Media Graph was last modified.", + "readOnly": true, + "x-nullable": false + }, + "sources": { + "type": "array", + "items": { + "$ref": "#/definitions/MediaGraphSource" + }, + "description": "Media Graph sources." + }, + "sinks": { + "type": "array", + "items": { + "$ref": "#/definitions/MediaGraphSink" + }, + "description": "Media Graph sinks." + } + }, + "type": "object", + "required": [ + "sources", + "sinks" + ], + "description": "Class for Media Graph properties." + }, + "MediaGraphSource": { + "discriminator": "@odata.type", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types." + }, + "name": { + "type": "string", + "description": "Source name." + } + }, + "type": "object", + "required": [ + "@odata.type", + "name" + ], + "description": "Media source." + }, + "MediaGraphSink": { + "discriminator": "@odata.type", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types." + }, + "name": { + "type": "string", + "description": "Sink name." + }, + "inputs": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Sink inputs." + } + }, + "type": "object", + "required": [ + "@odata.type", + "name", + "inputs" + ], + "description": "Media Sink." + }, + "MediaGraphRtspSource": { + "x-ms-discriminator-value": "#Microsoft.Media.MediaGraphRtspSource", + "allOf": [ + { + "$ref": "#/definitions/MediaGraphSource" + } + ], + "properties": { + "transport": { + "type": "string", + "enum": [ + "Http", + "Tcp" + ], + "x-ms-enum": { + "name": "MediaGraphRtspTransport", + "values": [ + { + "value": "Http", + "description": "HTTP/HTTPS transport. This should be used when HTTP tunneling is desired." + }, + { + "value": "Tcp", + "description": "TCP transport. This should be used when HTTP tunneling is not desired." + } + ], + "modelAsString": true + }, + "description": "Underlying RTSP transport. This can be used to enable or disable HTTP tunneling." + }, + "endpoint": { + "$ref": "#/definitions/MediaGraphEndpoint", + "description": "RTSP endpoint of the stream being connected to." + } + }, + "type": "object", + "required": [ + "transport", + "endpoint" + ], + "description": "RTSP source." + }, + "MediaGraphEndpoint": { + "discriminator": "@odata.type", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types." + }, + "credentials": { + "$ref": "#/definitions/MediaGraphCredentials", + "description": "Polymorphic credentials to present to the endpoint." + }, + "url": { + "type": "string", + "description": "Url for the endpoint." + } + }, + "type": "object", + "required": [ + "@odata.type", + "url" + ], + "description": "Base class for endpoints." + }, + "MediaGraphAssetSink": { + "x-ms-discriminator-value": "#Microsoft.Media.MediaGraphAssetSink", + "allOf": [ + { + "$ref": "#/definitions/MediaGraphSink" + } + ], + "properties": { + "assetName": { + "type": "string", + "description": "Asset name." + } + }, + "type": "object", + "required": [ + "assetName" + ], + "description": "Asset sink." + }, + "MediaGraphCredentials": { + "discriminator": "@odata.type", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types." + } + }, + "type": "object", + "required": [ + "@odata.type" + ], + "description": "Credentials to present during authentication." + }, + "MediaGraphUsernamePasswordCredentials": { + "x-ms-discriminator-value": "#Microsoft.Media.MediaGraphUsernamePasswordCredentials", + "allOf": [ + { + "$ref": "#/definitions/MediaGraphCredentials" + } + ], + "properties": { + "username": { + "type": "string", + "description": "Username for a username/password pair." + }, + "password": { + "type": "string", + "description": "Password for a username/password pair." + } + }, + "type": "object", + "required": [ + "username", + "password" + ], + "description": "Username/password credential pair." + }, + "MediaGraphClearEndpoint": { + "x-ms-discriminator-value": "#Microsoft.Media.MediaGraphClearEndpoint", + "allOf": [ + { + "$ref": "#/definitions/MediaGraphEndpoint" + } + ], + "properties": {}, + "type": "object", + "description": "An endpoint to connect to with no encryption in transit." + }, + "MediaGraphTlsEndpoint": { + "x-ms-discriminator-value": "#Microsoft.Media.MediaGraphTlsEndpoint", + "allOf": [ + { + "$ref": "#/definitions/MediaGraphEndpoint" + } + ], + "properties": { + "trustedCertificates": { + "$ref": "#/definitions/MediaGraphCertificateSource", + "description": "What certificates should be trusted when authenticating a TLS connection. Null designates that Azure Media's source of trust should be used." + }, + "validationOptions": { + "$ref": "#/definitions/MediaGraphTlsValidationOptions", + "description": "Validation options to use when authenticating a TLS connection. By default, strict validation is used." + } + }, + "type": "object", + "description": "An endpoint which must be connected over TLS/SSL." + }, + "MediaGraphCertificateSource": { + "discriminator": "@odata.type", + "properties": { + "@odata.type": { + "type": "string", + "description": "The discriminator for derived types." + } + }, + "type": "object", + "required": [ + "@odata.type" + ], + "description": "Base class for certificate sources." + }, + "MediaGraphTlsValidationOptions": { + "properties": { + "ignoreHostname": { + "type": "boolean", + "description": "Ignore the host name (common name) during validation." + }, + "ignoreSignature": { + "type": "boolean", + "description": "Ignore the integrity of the certificate chain at the current time." + } + }, + "type": "object", + "required": [ + "ignoreHostname", + "ignoreSignature" + ], + "description": "Options for controlling the authentication of TLS endpoints." + }, + "MediaGraphPemCertificateList": { + "x-ms-discriminator-value": "#Microsoft.Media.MediaGraphPemCertificateList", + "allOf": [ + { + "$ref": "#/definitions/MediaGraphCertificateSource" + } + ], + "properties": { + "certificates": { + "type": "array", + "items": { + "type": "string" + }, + "description": "PEM formatted public certificates, one per entry." + } + }, + "type": "object", + "required": [ + "certificates" + ], + "description": "A list of PEM formatted certificates." + }, + "MediaGraph": { + "allOf": [ + { + "$ref": "./Common.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/MediaGraphProperties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "description": "The Media Graph." + }, + "MediaGraphOperationError": { + "properties": { + "code": { + "type": "string", + "description": "The operation error code." + }, + "message": { + "type": "string", + "description": "The operation error message." + } + }, + "type": "object", + "description": "The operation error." + }, + "MediaGraphOperationStatus": { + "properties": { + "name": { + "type": "string", + "description": "The name of the Media Graph operation." + }, + "status": { + "type": "string", + "description": "The status of the Media Graph operation." + }, + "error": { + "$ref": "#/definitions/MediaGraphOperationError", + "description": "The error details for the Media Graph operation." + } + }, + "type": "object", + "required": [ + "name" + ], + "description": "The status of the Media Graph operation." + }, + "MediaGraphOperationResult": { + "properties": {}, + "type": "object", + "description": "The result of the Media Graph operation." + }, + "ODataError": { + "properties": { + "code": { + "type": "string", + "description": "A language-independent error name." + }, + "message": { + "type": "string", + "description": "The error message." + }, + "target": { + "type": "string", + "description": "The target of the error (for example, the name of the property in error)." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ODataError" + }, + "description": "The error details." + } + }, + "type": "object", + "description": "Information about an error." + }, + "ApiError": { + "properties": { + "error": { + "$ref": "#/definitions/ODataError", + "description": "The error properties." + } + }, + "type": "object", + "description": "The API error." + }, + "MediaGraphCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/MediaGraph" + }, + "description": "A collection of MediaGraph items." + }, + "@odata.nextLink": { + "type": "string", + "description": "A link to the next page of the collection (when the collection contains too many results to return in one response)." + } + }, + "type": "object", + "description": "A collection of MediaGraph items." + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaServices/{accountName}/mediaGraphs": { + "get": { + "summary": "List Media Graphs", + "description": "Lists Media Graphs in the Media Services account.", + "operationId": "MediaGraphs_List", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MediaGraphCollection" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/MediaServicesAccountName" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "description": "Specifies a non-negative integer n that limits the number of items returned from a collection. The service returns the number of available items up to but not greater than the specified value n." + } + ], + "x-ms-pageable": { + "nextLinkName": "@odata.nextLink" + }, + "x-ms-examples": { + "List all Media Graphs": { + "$ref": "examples/media-graph-list-all.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaServices/{accountName}/mediaGraphs/{mediaGraphName}": { + "get": { + "summary": "Get a Media Graph", + "description": "Get the details of a Media Graph in the Media Services account.", + "operationId": "MediaGraphs_Get", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MediaGraph" + } + }, + "404": { + "description": "NotFound" + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/MediaServicesAccountName" + }, + { + "name": "mediaGraphName", + "in": "path", + "required": true, + "type": "string", + "description": "The Media Graph name." + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "x-ms-examples": { + "Get a Media Graph by name": { + "$ref": "examples/media-graph-get-by-name.json" + } + } + }, + "put": { + "summary": "Create or update a Media Graph", + "description": "Create or update a Media Graph in the Media Services account.", + "operationId": "MediaGraphs_CreateOrUpdate", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MediaGraph" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/MediaServicesAccountName" + }, + { + "name": "mediaGraphName", + "in": "path", + "required": true, + "type": "string", + "description": "The Media Graph name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/MediaGraph" + }, + "description": "The request parameters" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "x-ms-examples": { + "Create or update a Media Graph with a clear RTSP Source": { + "$ref": "examples/media-graph-create-clear-source.json" + }, + "Create or update a Media Graph with an encrypted RTSP Source": { + "$ref": "examples/media-graph-create-encrypted-source.json" + } + } + }, + "delete": { + "summary": "Delete a Media Graph", + "description": "Deletes a Media Graph in the Media Services account.", + "operationId": "MediaGraphs_Delete", + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/MediaServicesAccountName" + }, + { + "name": "mediaGraphName", + "in": "path", + "required": true, + "type": "string", + "description": "The Media Graph name." + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "x-ms-examples": { + "Delete a Media Graph": { + "$ref": "examples/media-graph-delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaServices/{accountName}/mediaGraphs/{mediaGraphName}/start": { + "post": { + "summary": "Start a Media Graph", + "description": "Start a Media Graph in the Media Services account.", + "operationId": "MediaGraphs_Start", + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/MediaServicesAccountName" + }, + { + "name": "mediaGraphName", + "in": "path", + "required": true, + "type": "string", + "description": "The Media Graph name." + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Start Media Graph": { + "$ref": "examples/media-graph-start.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaServices/{accountName}/mediaGraphs/{mediaGraphName}/stop": { + "post": { + "summary": "Stop a Media Graph", + "description": "Stop a Media Graph in the Media Services account.", + "operationId": "MediaGraphs_Stop", + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/MediaServicesAccountName" + }, + { + "name": "mediaGraphName", + "in": "path", + "required": true, + "type": "string", + "description": "The Media Graph name." + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Stop Media Graph": { + "$ref": "examples/media-graph-stop.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaServices/{accountName}/mediaGraphs/{mediaGraphName}/operationsStatus/{operationId}": { + "get": { + "summary": "Get the operation status", + "description": "Get the operation status of a Media Graph in the media services account.", + "operationId": "OperationsStatus_Get", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MediaGraphOperationStatus" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/MediaServicesAccountName" + }, + { + "name": "mediaGraphName", + "in": "path", + "required": true, + "type": "string", + "description": "The Media Graph name." + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The operation ID." + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "x-ms-examples": { + "Get the operation status.": { + "$ref": "examples/operation-status-get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaServices/{accountName}/mediaGraphs/{mediaGraphName}/operationResults/{operationId}": { + "get": { + "summary": "Get the operation result", + "description": "Get the operation result of a Media Graph in the Media Services account.", + "operationId": "OperationResults_Get", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/MediaGraphOperationResult" + } + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/MediaServicesAccountName" + }, + { + "name": "mediaGraphName", + "in": "path", + "required": true, + "type": "string", + "description": "The Media Graph name." + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The operation ID" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "x-ms-examples": { + "Get the operation result": { + "$ref": "examples/operation-result-get.json" + } + } + } + } + }, + "parameters": { + "SubscriptionId": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The unique identifier for a Microsoft Azure subscription." + }, + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group within the Azure subscription.", + "x-ms-parameter-location": "method" + }, + "MediaServicesAccountName": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Media Services account name.", + "x-ms-parameter-location": "method" + }, + "ApiVersion": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The Version of the API to be used with the client request." + } + } +} diff --git a/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/examples/media-graph-create-clear-source.json b/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/examples/media-graph-create-clear-source.json new file mode 100644 index 000000000000..ee95f1a0a46d --- /dev/null +++ b/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/examples/media-graph-create-clear-source.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contosomedia", + "mediaGraphName": "SampleMediaGraph", + "api-version": "2020-02-01-preview", + "parameters": { + "properties": { + "description": "updated description", + "sources": [ + { + "@odata.type": "#Microsoft.Media.MediaGraphRtspSource", + "name": "rtspSource", + "transport": "Http", + "endpoint": { + "@odata.type": "#Microsoft.Media.MediaGraphClearEndpoint", + "url": "rtsp://contoso.com:554/stream1", + "credentials": { + "@odata.type": "#Microsoft.Media.MediaGraphUsernamePasswordCredentials", + "username": "exampleusername", + "password": "examplepassword" + } + } + } + ], + "sinks": [ + { + "@odata.type": "#Microsoft.Media.MediaGraphAssetSink", + "name": "AssetSink", + "inputs": [ + "rtspSource" + ], + "assetName": "SampleAsset" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "SampleMediaGraph", + "properties": { + "description": "", + "state": "Stopped", + "created": "2019-09-01T00:00:00Z", + "lastModified": "2019-09-01T00:00:00Z", + "sources": [ + { + "@odata.type": "#Microsoft.Media.MediaGraphRtspSource", + "name": "RTSPSource1", + "transport": "Http", + "endpoint": { + "@odata.type": "#Microsoft.Media.MediaGraphClearEndpoint", + "url": "rtsp://contoso.com:554/stream1" + } + } + ], + "sinks": [ + { + "@odata.type": "#Microsoft.Media.MediaGraphAssetSink", + "name": "AssetSink1", + "inputs": [ + "RTSPSource1" + ], + "assetName": "SampleAsset1" + } + ] + } + } + } + } +} diff --git a/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/examples/media-graph-create-encrypted-source.json b/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/examples/media-graph-create-encrypted-source.json new file mode 100644 index 000000000000..2db8f6d07a5f --- /dev/null +++ b/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/examples/media-graph-create-encrypted-source.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contosomedia", + "mediaGraphName": "SampleMediaGraph", + "api-version": "2020-02-01-preview", + "parameters": { + "properties": { + "description": "updated description", + "sources": [ + { + "@odata.type": "#Microsoft.Media.MediaGraphRtspSource", + "name": "rtspSource", + "transport": "Http", + "endpoint": { + "@odata.type": "#Microsoft.Media.MediaGraphTlsEndpoint", + "url": "rtsps://contoso.com:443/stream1", + "credentials": { + "@odata.type": "#Microsoft.Media.MediaGraphUsernamePasswordCredentials", + "username": "exampleusername", + "password": "examplepassword" + }, + "trustedCertificates": { + "@odata.type": "#Microsoft.Media.MediaGraphPemCertificateList", + "certificates": [ + "-----BEGIN CERTIFICATE-----\nMIIDhTCCAm2gAwIBAgIUajvPKmoO+8qaO89/ZGATl7ZYnTswDQYJKoZIhvcNAQEL\nBQAwUTESMBAGA1UECgwJTWljcm9zb2Z0MRQwEgYDVQQLDAtBenVyZSBNZWRpYTEl\nMCMGA1UEAwwcKFVudHJ1c3RlZCkgVGVzdCBDZXJ0aWZpY2F0ZTAgFw0yMDAyMDYy\nMTI5MTlaGA8zMDE5MDYwOTIxMjkxOVowUTESMBAGA1UECgwJTWljcm9zb2Z0MRQw\nEgYDVQQLDAtBenVyZSBNZWRpYTElMCMGA1UEAwwcKFVudHJ1c3RlZCkgVGVzdCBD\nZXJ0aWZpY2F0ZTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAK2lg5ff\n7xXPaBZXHl/zrTukdiBtu7BNIOchHba51eloruPRzpvQx7Pedk3CVTut7LYinijf\nuol0EwkQ2FLt2i2jOqiva9nXR95ujIZHcKsEeMC4RSNSP4++k6SpP8FgyYVdv5ru\nf8GC+HyYQ4j0TqpR/cJs53l/LGRSldaFZ6fcDde1jeyca4VivAbAH1/WDIOvmjzo\n9XIGxZ10VSS5l5+DIgdkJZ+mDMLJIuVZ0YVF16ZGEB3beq1trk5lItvmSjQLTllH\nqMFm9UGY8jKZSo/BY8ewHEtnGSAFQK0TVuRx1HhUWwu6C9jk+2zmRS2090BNpQWa\nJMKFJrSPzFDPRX8CAwEAAaNTMFEwHQYDVR0OBBYEFIumbhu0lYk0EFDThEg0yyIn\n/wZZMB8GA1UdIwQYMBaAFIumbhu0lYk0EFDThEg0yyIn/wZZMA8GA1UdEwEB/wQF\nMAMBAf8wDQYJKoZIhvcNAQELBQADggEBADUNw+/NGNVtigq9tMJKqlk39MTpDn1s\nZ1BVIAuAWSQjlevYZJeDIPUiWNWFhRe+xN7oOLnn2+NIXEKKeMSyuPoZYbN0mBkB\n99oS3XVipSANpmDvIepNdCrOnjfqDFIifRF1Dqjtb6i1hb6v/qYKVPLQvcrgGur7\nPKKkAu9p4YRZ3RBdwwaUuMgojrj/l6DGbeJY6IRVnVMY39rryMnZjA5xUlhCu55n\noB3t/jsJLwnQN+JbAjLAeuqgOWtgARsEFzvpt+VvDsaj0YLOJPhyJwTvHgaa/slB\nnECzd3TuyFKYeGssSni/QQ1e7yZcLapQqz66g5otdriw0IRdOfDxm5M=\n-----END CERTIFICATE-----" + ] + }, + "validationOptions": { + "ignoreHostname": true, + "ignoreSignature": false + } + } + } + ], + "sinks": [ + { + "@odata.type": "#Microsoft.Media.MediaGraphAssetSink", + "name": "AssetSink", + "inputs": [ + "rtspSource" + ], + "assetName": "SampleAsset" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "SampleMediaGraph", + "properties": { + "description": "", + "state": "Stopped", + "created": "2019-09-01T00:00:00Z", + "lastModified": "2019-09-01T00:00:00Z", + "sources": [ + { + "@odata.type": "#Microsoft.Media.MediaGraphRtspSource", + "name": "RTSPSource1", + "transport": "Http", + "endpoint": { + "@odata.type": "#Microsoft.Media.MediaGraphTlsEndpoint", + "url": "rtsp://contoso.com:554/stream1", + "trustedCertificates": { + "@odata.type": "#Microsoft.Media.MediaGraphPemCertificateList", + "certificates": [ + "-----BEGIN CERTIFICATE-----\nMIIDhTCCAm2gAwIBAgIUajvPKmoO+8qaO89/ZGATl7ZYnTswDQYJKoZIhvcNAQEL\nBQAwUTESMBAGA1UECgwJTWljcm9zb2Z0MRQwEgYDVQQLDAtBenVyZSBNZWRpYTEl\nMCMGA1UEAwwcKFVudHJ1c3RlZCkgVGVzdCBDZXJ0aWZpY2F0ZTAgFw0yMDAyMDYy\nMTI5MTlaGA8zMDE5MDYwOTIxMjkxOVowUTESMBAGA1UECgwJTWljcm9zb2Z0MRQw\nEgYDVQQLDAtBenVyZSBNZWRpYTElMCMGA1UEAwwcKFVudHJ1c3RlZCkgVGVzdCBD\nZXJ0aWZpY2F0ZTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAK2lg5ff\n7xXPaBZXHl/zrTukdiBtu7BNIOchHba51eloruPRzpvQx7Pedk3CVTut7LYinijf\nuol0EwkQ2FLt2i2jOqiva9nXR95ujIZHcKsEeMC4RSNSP4++k6SpP8FgyYVdv5ru\nf8GC+HyYQ4j0TqpR/cJs53l/LGRSldaFZ6fcDde1jeyca4VivAbAH1/WDIOvmjzo\n9XIGxZ10VSS5l5+DIgdkJZ+mDMLJIuVZ0YVF16ZGEB3beq1trk5lItvmSjQLTllH\nqMFm9UGY8jKZSo/BY8ewHEtnGSAFQK0TVuRx1HhUWwu6C9jk+2zmRS2090BNpQWa\nJMKFJrSPzFDPRX8CAwEAAaNTMFEwHQYDVR0OBBYEFIumbhu0lYk0EFDThEg0yyIn\n/wZZMB8GA1UdIwQYMBaAFIumbhu0lYk0EFDThEg0yyIn/wZZMA8GA1UdEwEB/wQF\nMAMBAf8wDQYJKoZIhvcNAQELBQADggEBADUNw+/NGNVtigq9tMJKqlk39MTpDn1s\nZ1BVIAuAWSQjlevYZJeDIPUiWNWFhRe+xN7oOLnn2+NIXEKKeMSyuPoZYbN0mBkB\n99oS3XVipSANpmDvIepNdCrOnjfqDFIifRF1Dqjtb6i1hb6v/qYKVPLQvcrgGur7\nPKKkAu9p4YRZ3RBdwwaUuMgojrj/l6DGbeJY6IRVnVMY39rryMnZjA5xUlhCu55n\noB3t/jsJLwnQN+JbAjLAeuqgOWtgARsEFzvpt+VvDsaj0YLOJPhyJwTvHgaa/slB\nnECzd3TuyFKYeGssSni/QQ1e7yZcLapQqz66g5otdriw0IRdOfDxm5M=\n-----END CERTIFICATE-----" + ] + }, + "validationOptions": { + "ignoreHostname": true, + "ignoreSignature": false + } + } + } + ], + "sinks": [ + { + "@odata.type": "#Microsoft.Media.MediaGraphAssetSink", + "name": "AssetSink1", + "inputs": [ + "RTSPSource1" + ], + "assetName": "SampleAsset1" + } + ] + } + } + } + } +} diff --git a/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/examples/media-graph-delete.json b/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/examples/media-graph-delete.json new file mode 100644 index 000000000000..e77c43b37dbf --- /dev/null +++ b/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/examples/media-graph-delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contosomedia", + "mediaGraphName": "SampleMediaGraph", + "api-version": "2020-02-01-preview" + }, + "responses": { + "204": {}, + "200": {} + } +} diff --git a/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/examples/media-graph-get-by-name.json b/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/examples/media-graph-get-by-name.json new file mode 100644 index 000000000000..35a11344a843 --- /dev/null +++ b/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/examples/media-graph-get-by-name.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contosomedia", + "mediaGraphName": "SampleMediaGraph1", + "api-version": "2020-02-01-preview" + }, + "responses": { + "404": {}, + "200": { + "body": { + "name": "SampleMediaGraph1", + "properties": { + "description": "", + "state": "Stopped", + "created": "2019-09-01T00:00:00Z", + "lastModified": "2019-09-01T00:00:00Z", + "sources": [ + { + "@odata.type": "#Microsoft.Media.MediaGraphRtspSource", + "name": "RTSPSource1", + "transport": "Http", + "endpoint": { + "@odata.type": "#Microsoft.Media.MediaGraphClearEndpoint", + "url": "rtsp://contoso.com:554/stream1" + } + } + ], + "sinks": [ + { + "@odata.type": "#Microsoft.Media.MediaGraphAssetSink", + "name": "AssetSink1", + "inputs": [ + "RTSPSource1" + ], + "assetName": "SampleAsset1" + } + ] + } + } + } + } +} diff --git a/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/examples/media-graph-list-all.json b/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/examples/media-graph-list-all.json new file mode 100644 index 000000000000..99303e603261 --- /dev/null +++ b/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/examples/media-graph-list-all.json @@ -0,0 +1,106 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contosomedia", + "api-version": "2020-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "SampleMediaGraph0", + "properties": { + "description": "", + "state": "Stopped", + "created": "2019-09-01T00:00:00Z", + "lastModified": "2019-09-01T00:00:00Z", + "sources": [ + { + "@odata.type": "#Microsoft.Media.MediaGraphRtspSource", + "name": "RTSPSource0", + "transport": "Http", + "endpoint": { + "@odata.type": "#Microsoft.Media.MediaGraphClearEndpoint", + "url": "rtsp://contoso.com:554/stream0" + } + } + ], + "sinks": [ + { + "@odata.type": "#Microsoft.Media.MediaGraphAssetSink", + "name": "AssetSink0", + "inputs": [ + "RTSPSource0" + ], + "assetName": "SampleAsset0" + } + ] + } + }, + { + "name": "SampleMediaGraph1", + "properties": { + "description": "", + "state": "Starting", + "created": "2019-09-01T00:00:00Z", + "lastModified": "2019-09-01T00:00:00Z", + "sources": [ + { + "@odata.type": "#Microsoft.Media.MediaGraphRtspSource", + "name": "RTSPSource1", + "transport": "Http", + "endpoint": { + "@odata.type": "#Microsoft.Media.MediaGraphClearEndpoint", + "url": "rtsp://contoso.com:554/stream1" + } + } + ], + "sinks": [ + { + "@odata.type": "#Microsoft.Media.MediaGraphAssetSink", + "name": "AssetSink1", + "inputs": [ + "RTSPSource1" + ], + "assetName": "SampleAsset1" + } + ] + } + }, + { + "name": "SampleMediaGraph2", + "properties": { + "description": "", + "state": "Running", + "created": "2019-09-01T00:00:00Z", + "lastModified": "2019-09-01T00:00:00Z", + "sources": [ + { + "@odata.type": "#Microsoft.Media.MediaGraphRtspSource", + "name": "RTSPSource2", + "transport": "Http", + "endpoint": { + "@odata.type": "#Microsoft.Media.MediaGraphClearEndpoint", + "url": "rtsp://contoso.com:554/stream2" + } + } + ], + "sinks": [ + { + "@odata.type": "#Microsoft.Media.MediaGraphAssetSink", + "name": "AssetSink2", + "inputs": [ + "RTSPSource2" + ], + "assetName": "SampleAsset2" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/examples/media-graph-start.json b/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/examples/media-graph-start.json new file mode 100644 index 000000000000..0ac5e0014e43 --- /dev/null +++ b/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/examples/media-graph-start.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contosomedia", + "mediaGraphName": "SampleMediaGraph", + "api-version": "2020-02-01-preview" + }, + "responses": { + "202": {}, + "200": {} + } +} diff --git a/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/examples/media-graph-stop.json b/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/examples/media-graph-stop.json new file mode 100644 index 000000000000..0ac5e0014e43 --- /dev/null +++ b/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/examples/media-graph-stop.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contosomedia", + "mediaGraphName": "SampleMediaGraph", + "api-version": "2020-02-01-preview" + }, + "responses": { + "202": {}, + "200": {} + } +} diff --git a/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/examples/operation-result-get.json b/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/examples/operation-result-get.json new file mode 100644 index 000000000000..deb76584daeb --- /dev/null +++ b/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/examples/operation-result-get.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contosomedia", + "mediaGraphName": "SampleMediaGraph", + "operationId": "7877d0da-ae9b-4c5b-a1fa-c9ece3ef5d11", + "api-version": "2020-02-01-preview" + }, + "responses": { + "200": { + "body": {} + } + } +} diff --git a/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/examples/operation-status-get.json b/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/examples/operation-status-get.json new file mode 100644 index 000000000000..eecbc258949b --- /dev/null +++ b/specification/mediaservices/resource-manager/Microsoft.Media/preview/2020-02-01-preview/examples/operation-status-get.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contosomedia", + "mediaGraphName": "SampleMediaGraph", + "operationId": "7877d0da-ae9b-4c5b-a1fa-c9ece3ef5d11", + "api-version": "2020-02-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "7877d0da-ae9b-4c5b-a1fa-c9ece3ef5d11", + "status": "Succeeded" + } + } + } +} diff --git a/specification/mediaservices/resource-manager/readme.md b/specification/mediaservices/resource-manager/readme.md index f21dde020c01..db3b5caa0fc4 100644 --- a/specification/mediaservices/resource-manager/readme.md +++ b/specification/mediaservices/resource-manager/readme.md @@ -30,6 +30,23 @@ tag: package-2018-07 opt-in-extensible-enums: true ``` +### Tag: package-2020-02-preview + +These settings apply only when `--tag=package-2020-02-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2020-02-preview' +input-file: + - Microsoft.Media/stable/2018-07-01/AccountFilters.json + - Microsoft.Media/stable/2018-07-01/Accounts.json + - Microsoft.Media/stable/2018-07-01/AssetsAndAssetFilters.json + - Microsoft.Media/stable/2018-07-01/ContentKeyPolicies.json + - Microsoft.Media/stable/2018-07-01/Encoding.json + - Microsoft.Media/preview/2020-02-01-preview/MediaGraphs.json + - Microsoft.Media/stable/2018-07-01/StreamingPoliciesAndStreamingLocators.json + - Microsoft.Media/stable/2018-07-01/streamingservice.json +``` + + ### Tag: package-2019-09-preview These settings apply only when `--tag=package-2019-09-preview` is specified on the command line. @@ -308,9 +325,10 @@ input-file: - $(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/2019-09-01-preview/MediaGraphs.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 @@ -343,4 +361,3 @@ uncomment the `exclude-file` section below and add the file paths. #exclude-file: # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` - diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVCluster_Create.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVCluster_Create.json new file mode 100644 index 000000000000..b9fafa4cb1e6 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVCluster_Create.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "4bd2aa0f-2bd2-4d67-91a8-5a4533d58600", + "resourceGroupName": "pajindTest", + "siteName": "appliance1e39site", + "clusterName": "cluster1", + "api-version": "2020-01-01", + "body": { + "properties": { + "fqdn": "10.10.10.30", + "runAsAccountId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/runasaccounts/Account1" + } + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVCluster_Get.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVCluster_Get.json new file mode 100644 index 000000000000..50c13e72bf50 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVCluster_Get.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "4bd2aa0f-2bd2-4d67-91a8-5a4533d58600", + "resourceGroupName": "ipsahoo-RI-121119", + "siteName": "hyperv121319c813site", + "clusterName": "hypgqlclusrs1-ntdev-corp-micros-11e77b27-67cc-5e46-a5d8-0ff3dc2ef179", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/ipsahoo-RI-121119/providers/Microsoft.OffAzure/HyperVSites/hyperv121319c813site/clusters/hypgqlclusrs1-ntdev-corp-micros-11e77b27-67cc-5e46-a5d8-0ff3dc2ef179", + "name": "hypgqlclusrs1-ntdev-corp-micros-11e77b27-67cc-5e46-a5d8-0ff3dc2ef179", + "type": "Microsoft.OffAzure/HyperVSites/clusters", + "properties": { + "createdTimestamp": "2019-12-13T12:25:38.5392467Z", + "updatedTimestamp": "2019-12-13T12:27:00.6513315Z", + "fqdn": "HypGQLClusRS1.ntdev.corp.microsoft.com", + "functionalLevel": 9, + "status": null, + "runAsAccountId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/ipsahoo-RI-121119/providers/Microsoft.OffAzure/HyperVSites/hyperv121319c813site/runasaccounts/1aa83cc7-1391-566f-8fdb-c343761f7625", + "hostFqdnList": [ + "HypGQLClusN1", + "HypGQLClusN2" + ], + "errors": [] + } + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVCluster_ListBySite.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVCluster_ListBySite.json new file mode 100644 index 000000000000..3af964c99c4d --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVCluster_ListBySite.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "4bd2aa0f-2bd2-4d67-91a8-5a4533d58600", + "resourceGroupName": "ipsahoo-RI-121119", + "siteName": "hyperv121319c813site", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/ipsahoo-RI-121119/providers/Microsoft.OffAzure/HyperVSites/hyperv121319c813site/clusters/hypgqlclusrs1-ntdev-corp-micros-11e77b27-67cc-5e46-a5d8-0ff3dc2ef179", + "name": "hypgqlclusrs1-ntdev-corp-micros-11e77b27-67cc-5e46-a5d8-0ff3dc2ef179", + "type": "Microsoft.OffAzure/HyperVSites/clusters", + "properties": { + "createdTimestamp": "2019-12-13T12:25:38.5392467Z", + "updatedTimestamp": "2019-12-13T12:27:00.6513315Z", + "fqdn": "HypGQLClusRS1.ntdev.corp.microsoft.com", + "functionalLevel": 9, + "status": null, + "runAsAccountId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/ipsahoo-RI-121119/providers/Microsoft.OffAzure/HyperVSites/hyperv121319c813site/runasaccounts/1aa83cc7-1391-566f-8fdb-c343761f7625", + "hostFqdnList": [ + "HypGQLClusN1", + "HypGQLClusN2" + ], + "errors": [] + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVHost_Create.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVHost_Create.json new file mode 100644 index 000000000000..f0b067fbf016 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVHost_Create.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "4bd2aa0f-2bd2-4d67-91a8-5a4533d58600", + "resourceGroupName": "pajindTest", + "siteName": "appliance1e39site", + "hostName": "Host1", + "api-version": "2020-01-01", + "body": { + "properties": { + "fqdn": "10.10.10.20", + "runAsAccountId": "Account1" + } + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVHost_Get.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVHost_Get.json new file mode 100644 index 000000000000..0b7d122a6ffb --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVHost_Get.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "4bd2aa0f-2bd2-4d67-91a8-5a4533d58600", + "resourceGroupName": "pajindTest", + "siteName": "appliance1e39site", + "hostName": "bcdr-ewlab-46-ntdev-corp-micros-e4638031-3b19-5642-926d-385da60cfb8a", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-46-ntdev-corp-micros-e4638031-3b19-5642-926d-385da60cfb8a", + "name": "bcdr-ewlab-46-ntdev-corp-micros-e4638031-3b19-5642-926d-385da60cfb8a", + "type": "Microsoft.OffAzure/HyperVSites/hosts", + "properties": { + "createdTimestamp": "2019-05-09T07:53:58.2909088Z", + "updatedTimestamp": "2019-05-14T07:01:18.3589728Z", + "fqdn": "BCDR-EWLAB-46.ntdev.corp.microsoft.com", + "runAsAccountId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/runasaccounts/c21a65e1-9d1d-59dd-ad6d-ae9e58a6798b", + "version": "10.0.14393", + "errors": [] + } + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVHost_ListBySite.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVHost_ListBySite.json new file mode 100644 index 000000000000..76120a7fb5b6 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVHost_ListBySite.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "4bd2aa0f-2bd2-4d67-91a8-5a4533d58600", + "resourceGroupName": "pajindTest", + "siteName": "appliance1e39site", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-46-ntdev-corp-micros-e4638031-3b19-5642-926d-385da60cfb8a", + "name": "bcdr-ewlab-46-ntdev-corp-micros-e4638031-3b19-5642-926d-385da60cfb8a", + "type": "Microsoft.OffAzure/HyperVSites/hosts", + "properties": { + "createdTimestamp": "2019-05-09T07:53:58.2909088Z", + "updatedTimestamp": "2019-05-14T07:01:18.3589728Z", + "fqdn": "BCDR-EWLAB-46.ntdev.corp.microsoft.com", + "runAsAccountId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/runasaccounts/c21a65e1-9d1d-59dd-ad6d-ae9e58a6798b", + "version": "10.0.14393", + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-48-fareast-corp-micr-691cb67f-3474-55ee-b376-63a93b276ed6", + "name": "bcdr-ewlab-48-fareast-corp-micr-691cb67f-3474-55ee-b376-63a93b276ed6", + "type": "Microsoft.OffAzure/HyperVSites/hosts", + "properties": { + "createdTimestamp": "2019-05-09T07:54:59.3681907Z", + "updatedTimestamp": "2019-05-14T07:01:18.3902502Z", + "fqdn": "BCDR-EWLAB-48.fareast.corp.microsoft.com", + "runAsAccountId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/runasaccounts/c21a65e1-9d1d-59dd-ad6d-ae9e58a6798b", + "version": "10.0.14393", + "errors": [] + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVMachine_Get.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVMachine_Get.json new file mode 100644 index 000000000000..a644d6276f37 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVMachine_Get.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "subscriptionId": "4bd2aa0f-2bd2-4d67-91a8-5a4533d58600", + "resourceGroupName": "pajindTest", + "siteName": "appliance1e39site", + "machineName": "96d27052-052b-48db-aa84-b9978eddbf5d", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/96d27052-052b-48db-aa84-b9978eddbf5d", + "name": "96d27052-052b-48db-aa84-b9978eddbf5d", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-48.fareast.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-48-fareast-corp-micr-691cb67f-3474-55ee-b376-63a93b276ed6", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "8.0", + "highAvailability": "No", + "maxMemoryMB": 1048576, + "firmware": "BIOS", + "isDynamicMemoryEnabled": false, + "disks": [ + { + "instanceId": "Microsoft:96D27052-052B-48DB-AA84-B9978EDDBF5D\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "4845656d-75b2-1246-bc8f-13d900000000", + "maxSizeInBytes": 42949672960, + "name": "14393.0.amd64fre.rs1_release.160715-1616_server_serverstandard_de-de", + "diskType": "Dynamic", + "lun": 0, + "path": "D:\\VHDs\\14393.0.amd64fre.rs1_release.160715-1616_server_serverstandard_de-de.vhd" + }, + { + "instanceId": "Microsoft:96D27052-052B-48DB-AA84-B9978EDDBF5D\\523DA04B-C02E-451F-AF58-46925E56213D\\0\\0\\L", + "vhdId": "5d45e8e9-7ab3-4999-915c-d62c70e5a39d", + "maxSizeInBytes": 110595407872, + "name": "22", + "diskType": "Dynamic", + "lun": 0, + "path": "C:\\Users\\Public\\Documents\\Hyper-V\\Virtual hard disks\\22.vhdx" + } + ], + "networkAdapters": [ + { + "networkId": "QnJvYWRjb20gTmV0WHRyZW1lIEdpZ2FiaXQgRXRoZXJuZXQgLSBWaXJ0dWFsIFN3aXRjaA==", + "subnetName": "Broadcom NetXtreme Gigabit Ethernet - Virtual Switch", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:96D27052-052B-48DB-AA84-B9978EDDBF5D\\89DF59CE-0C5D-4204-BADF-F41E3EA37821", + "macAddress": "00:15:5d:0c:92:7a", + "ipAddressList": [ + "10.150.10.139", + "fe80::e989:d351:54d7:42a6", + "2404:f801:4800:25:e989:d351:54d7:42a6" + ], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "TestDeDe", + "numberOfProcessorCore": 8, + "allocatedMemoryInMB": 4096, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\96D27052-052B-48DB-AA84-B9978EDDBF5D.vmcx", + "operatingSystemDetails": { + "osType": null, + "osName": "Windows Server 2016 Standard", + "osVersion": "10.0.14393" + }, + "createdTimestamp": "2019-05-09T07:56:11.498307Z", + "updatedTimestamp": "2019-05-14T07:01:18.4058859Z", + "instanceUuid": "96d27052-052b-48db-aa84-b9978eddbf5d", + "powerStatus": "Running", + "biosSerialNumber": "5656-6486-4089-5091-2740-7319-66", + "vmFqdn": "WIN-VDE4EPC5D52", + "isDeleted": false, + "errors": [] + } + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVMachines_ListBySite.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVMachines_ListBySite.json new file mode 100644 index 000000000000..f05de2e7f446 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVMachines_ListBySite.json @@ -0,0 +1,2764 @@ +{ + "parameters": { + "subscriptionId": "4bd2aa0f-2bd2-4d67-91a8-5a4533d58600", + "resourceGroupName": "pajindTest", + "siteName": "appliance1e39site", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/96d27052-052b-48db-aa84-b9978eddbf5d", + "name": "96d27052-052b-48db-aa84-b9978eddbf5d", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-48.fareast.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-48-fareast-corp-micr-691cb67f-3474-55ee-b376-63a93b276ed6", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "8.0", + "highAvailability": "No", + "maxMemoryMB": 1048576, + "firmware": "BIOS", + "isDynamicMemoryEnabled": false, + "disks": [ + { + "instanceId": "Microsoft:96D27052-052B-48DB-AA84-B9978EDDBF5D\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "4845656d-75b2-1246-bc8f-13d900000000", + "maxSizeInBytes": 42949672960, + "name": "14393.0.amd64fre.rs1_release.160715-1616_server_serverstandard_de-de", + "diskType": "Dynamic", + "lun": 0, + "path": "D:\\VHDs\\14393.0.amd64fre.rs1_release.160715-1616_server_serverstandard_de-de.vhd" + }, + { + "instanceId": "Microsoft:96D27052-052B-48DB-AA84-B9978EDDBF5D\\523DA04B-C02E-451F-AF58-46925E56213D\\0\\0\\L", + "vhdId": "5d45e8e9-7ab3-4999-915c-d62c70e5a39d", + "maxSizeInBytes": 110595407872, + "name": "22", + "diskType": "Dynamic", + "lun": 0, + "path": "C:\\Users\\Public\\Documents\\Hyper-V\\Virtual hard disks\\22.vhdx" + } + ], + "networkAdapters": [ + { + "networkId": "QnJvYWRjb20gTmV0WHRyZW1lIEdpZ2FiaXQgRXRoZXJuZXQgLSBWaXJ0dWFsIFN3aXRjaA==", + "subnetName": "Broadcom NetXtreme Gigabit Ethernet - Virtual Switch", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:96D27052-052B-48DB-AA84-B9978EDDBF5D\\89DF59CE-0C5D-4204-BADF-F41E3EA37821", + "macAddress": "00:15:5d:0c:92:7a", + "ipAddressList": [ + "10.150.10.139", + "fe80::e989:d351:54d7:42a6", + "2404:f801:4800:25:e989:d351:54d7:42a6" + ], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "TestDeDe", + "numberOfProcessorCore": 8, + "allocatedMemoryInMB": 4096, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\96D27052-052B-48DB-AA84-B9978EDDBF5D.vmcx", + "operatingSystemDetails": { + "osType": null, + "osName": "Windows Server 2016 Standard", + "osVersion": "10.0.14393" + }, + "createdTimestamp": "2019-05-09T07:56:11.498307Z", + "updatedTimestamp": "2019-05-14T07:01:18.4058859Z", + "instanceUuid": "96d27052-052b-48db-aa84-b9978eddbf5d", + "powerStatus": "Running", + "biosSerialNumber": "5656-6486-4089-5091-2740-7319-66", + "vmFqdn": "WIN-VDE4EPC5D52", + "isDeleted": false, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/2f28e27b-d379-4dd4-98da-e14ce4b9a087", + "name": "2f28e27b-d379-4dd4-98da-e14ce4b9a087", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-48.fareast.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-48-fareast-corp-micr-691cb67f-3474-55ee-b376-63a93b276ed6", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "5.0", + "highAvailability": "No", + "maxMemoryMB": 16384, + "firmware": "BIOS", + "isDynamicMemoryEnabled": true, + "disks": [ + { + "instanceId": "Microsoft:2F28E27B-D379-4DD4-98DA-E14CE4B9A087\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "4845656d-75b2-1246-bc8f-13d900000000", + "maxSizeInBytes": 42949672960, + "name": "14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us", + "diskType": "Dynamic", + "lun": 0, + "path": "D:\\VHDs\\Downloaded0313\\AzureMigrateAppliance\\Virtual Hard Disks\\14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us.vhd" + } + ], + "networkAdapters": [ + { + "networkId": "QnJvYWRjb20gTmV0WHRyZW1lIEdpZ2FiaXQgRXRoZXJuZXQgLSBWaXJ0dWFsIFN3aXRjaA==", + "subnetName": "Broadcom NetXtreme Gigabit Ethernet - Virtual Switch", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:2F28E27B-D379-4DD4-98DA-E14CE4B9A087\\215DB7BF-CC42-4DD6-AD40-455FCF6288D8", + "macAddress": "00:15:5d:0c:92:7c", + "ipAddressList": [ + "10.150.9.247", + "fe80::3505:9e40:364c:cd9e", + "2404:f801:4800:25:3505:9e40:364c:cd9e" + ], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "rahasijaDND0313AzureMigrateAppliance0313", + "numberOfProcessorCore": 8, + "allocatedMemoryInMB": 8192, + "vmConfigurationFileLocation": "D:\\VHDs\\Downloaded0313\\AzureMigrateAppliance\\Virtual Machines\\2F28E27B-D379-4DD4-98DA-E14CE4B9A087.xml", + "operatingSystemDetails": { + "osType": null, + "osName": "Windows Server 2016 Datacenter Evaluation", + "osVersion": "10.0.14393" + }, + "createdTimestamp": "2019-05-09T07:56:11.5451977Z", + "updatedTimestamp": "2019-05-14T07:01:18.4215296Z", + "instanceUuid": "2f28e27b-d379-4dd4-98da-e14ce4b9a087", + "powerStatus": "Running", + "biosSerialNumber": "8474-2615-5073-6267-9939-5325-20", + "vmFqdn": "WIN-U8D2GHNKCC3", + "isDeleted": false, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/593763f7-fb5f-4405-ab25-c1b5225cd4fc", + "name": "593763f7-fb5f-4405-ab25-c1b5225cd4fc", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-48.fareast.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-48-fareast-corp-micr-691cb67f-3474-55ee-b376-63a93b276ed6", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "8.0", + "highAvailability": "No", + "maxMemoryMB": 1048576, + "firmware": "BIOS", + "isDynamicMemoryEnabled": false, + "disks": [ + { + "instanceId": "Microsoft:593763F7-FB5F-4405-AB25-C1B5225CD4FC\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "00000000-0000-0000-0000-000000000000", + "maxSizeInBytes": 0, + "name": "New Virtual Hard Disk", + "diskType": "Unknown", + "lun": 0, + "path": "\\\\priyank-z420\\share2\\New Virtual Hard Disk.vhdx" + } + ], + "networkAdapters": [ + { + "networkId": "", + "subnetName": "", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:593763F7-FB5F-4405-AB25-C1B5225CD4FC\\517B5569-A478-4B5E-9900-02BCBC7A0345", + "macAddress": "00:15:5d:0c:92:f9", + "ipAddressList": [], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "NoVHD", + "numberOfProcessorCore": 1, + "allocatedMemoryInMB": 1024, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\593763F7-FB5F-4405-AB25-C1B5225CD4FC.vmcx", + "operatingSystemDetails": { + "osType": null, + "osName": null, + "osVersion": null + }, + "createdTimestamp": "2019-05-09T07:56:11.5451977Z", + "updatedTimestamp": "2019-05-15T17:32:02.0630729Z", + "instanceUuid": "593763f7-fb5f-4405-ab25-c1b5225cd4fc", + "powerStatus": "PowerOff", + "biosSerialNumber": "5106-6535-1471-2750-0872-1505-43", + "vmFqdn": "", + "isDeleted": true, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/10178811-873a-4d13-bf1f-dfb48d46e809", + "name": "10178811-873a-4d13-bf1f-dfb48d46e809", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-46.ntdev.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-46-ntdev-corp-micros-e4638031-3b19-5642-926d-385da60cfb8a", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "5.0", + "highAvailability": "No", + "maxMemoryMB": 16384, + "firmware": "BIOS", + "isDynamicMemoryEnabled": true, + "disks": [ + { + "instanceId": "Microsoft:10178811-873A-4D13-BF1F-DFB48D46E809\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "4845656d-75b2-1246-bc8f-13d900000000", + "maxSizeInBytes": 42949672960, + "name": "14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us", + "diskType": "Dynamic", + "lun": 0, + "path": "C:\\Users\\Public\\Documents\\Hyper-V\\Virtual Hard Disks\\kuchaturBB01\\14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us.vhd" + } + ], + "networkAdapters": [ + { + "networkId": "VmlydHVhbCBTd2l0Y2gtIE5JQzQ=", + "subnetName": "Virtual Switch- NIC4", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:10178811-873A-4D13-BF1F-DFB48D46E809\\9621A776-FE27-4E22-B4B2-1B7B80568D63", + "macAddress": "00:15:5d:0a:58:1e", + "ipAddressList": [], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "AzureMigrateAppliance_v1.19.05.09_Kunal", + "numberOfProcessorCore": 8, + "allocatedMemoryInMB": 8192, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\10178811-873A-4D13-BF1F-DFB48D46E809.xml", + "operatingSystemDetails": { + "osType": null, + "osName": null, + "osVersion": null + }, + "createdTimestamp": "2019-05-09T07:56:11.5607543Z", + "updatedTimestamp": "2019-05-14T07:01:18.4370947Z", + "instanceUuid": "10178811-873a-4d13-bf1f-dfb48d46e809", + "powerStatus": "PowerOff", + "biosSerialNumber": "6707-1095-4598-5876-9535-2181-00", + "vmFqdn": "", + "isDeleted": false, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/6c00755a-90b2-427b-9343-c3fb088831a0", + "name": "6c00755a-90b2-427b-9343-c3fb088831a0", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-46.ntdev.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-46-ntdev-corp-micros-e4638031-3b19-5642-926d-385da60cfb8a", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "5.0", + "highAvailability": "No", + "maxMemoryMB": 16384, + "firmware": "BIOS", + "isDynamicMemoryEnabled": true, + "disks": [ + { + "instanceId": "Microsoft:6C00755A-90B2-427B-9343-C3FB088831A0\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "4845656d-75b2-1246-bc8f-13d900000000", + "maxSizeInBytes": 42949672960, + "name": "14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us", + "diskType": "Dynamic", + "lun": 0, + "path": "C:\\VHDs\\vamsi\\14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us.vhd" + } + ], + "networkAdapters": [ + { + "networkId": "VmlydHVhbCBTd2l0Y2gtIE5JQzQ=", + "subnetName": "Virtual Switch- NIC4", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:6C00755A-90B2-427B-9343-C3FB088831A0\\8959E4B6-FF79-4226-A096-BAB0F023A630", + "macAddress": "00:15:5d:0a:58:1a", + "ipAddressList": [ + "10.150.14.50", + "fe80::a8c2:1afa:648d:6e24", + "2404:f801:4800:25:a8c2:1afa:648d:6e24" + ], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "Vamsi-AzureMigrateAppliance_v1.19.05.07", + "numberOfProcessorCore": 8, + "allocatedMemoryInMB": 8192, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\6C00755A-90B2-427B-9343-C3FB088831A0.xml", + "operatingSystemDetails": { + "osType": null, + "osName": "Windows Server 2016 Datacenter Evaluation", + "osVersion": "10.0.14393" + }, + "createdTimestamp": "2019-05-09T07:56:11.5764063Z", + "updatedTimestamp": "2019-05-14T07:01:18.4370947Z", + "instanceUuid": "6c00755a-90b2-427b-9343-c3fb088831a0", + "powerStatus": "Running", + "biosSerialNumber": "8598-1456-4864-3355-6970-0716-71", + "vmFqdn": "WIN-K4NQGP8LD6S", + "isDeleted": false, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/caac8805-1489-4d56-9367-bc7a6eb9e7d5", + "name": "caac8805-1489-4d56-9367-bc7a6eb9e7d5", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-46.ntdev.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-46-ntdev-corp-micros-e4638031-3b19-5642-926d-385da60cfb8a", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "5.0", + "highAvailability": "No", + "maxMemoryMB": 16384, + "firmware": "BIOS", + "isDynamicMemoryEnabled": true, + "disks": [ + { + "instanceId": "Microsoft:CAAC8805-1489-4D56-9367-BC7A6EB9E7D5\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "00000000-0000-0000-0000-000000000000", + "maxSizeInBytes": 0, + "name": "14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us_3CCFC203-3908-4CDF-8491-0C51B10962FC", + "diskType": "Unknown", + "lun": 0, + "path": "c:\\VHDs\\AzureMigrateAppliance_v1.19.04.16\\Virtual Hard Disks\\14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us_3CCFC203-3908-4CDF-8491-0C51B10962FC.avhd" + } + ], + "networkAdapters": [ + { + "networkId": "VmlydHVhbCBTd2l0Y2gtIE5JQzQ=", + "subnetName": "Virtual Switch- NIC4", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:CAAC8805-1489-4D56-9367-BC7A6EB9E7D5\\CAE91133-8704-481A-A51A-EF2F50102D9E", + "macAddress": "00:15:5d:0a:58:11", + "ipAddressList": [], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "0331AiMA_v1.19.04.16", + "numberOfProcessorCore": 8, + "allocatedMemoryInMB": 8192, + "vmConfigurationFileLocation": "c:\\VHDs\\AzureMigrateAppliance_v1.19.04.16\\Virtual Machines\\CAAC8805-1489-4D56-9367-BC7A6EB9E7D5.xml", + "operatingSystemDetails": { + "osType": null, + "osName": null, + "osVersion": null + }, + "createdTimestamp": "2019-05-09T07:56:11.5764063Z", + "updatedTimestamp": "2019-05-15T17:32:02.0786997Z", + "instanceUuid": "caac8805-1489-4d56-9367-bc7a6eb9e7d5", + "powerStatus": "PowerOff", + "biosSerialNumber": "2115-0453-3079-1551-4796-8596-85", + "vmFqdn": "", + "isDeleted": true, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/77981ca7-4e6c-4c20-ae6e-47ca141ce2bf", + "name": "77981ca7-4e6c-4c20-ae6e-47ca141ce2bf", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-46.ntdev.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-46-ntdev-corp-micros-e4638031-3b19-5642-926d-385da60cfb8a", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "5.0", + "highAvailability": "No", + "maxMemoryMB": 16384, + "firmware": "BIOS", + "isDynamicMemoryEnabled": true, + "disks": [ + { + "instanceId": "Microsoft:77981CA7-4E6C-4C20-AE6E-47CA141CE2BF\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "4845656d-75b2-1246-bc8f-13d900000000", + "maxSizeInBytes": 42949672960, + "name": "14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us", + "diskType": "Dynamic", + "lun": 0, + "path": "C:\\ProgramData\\amitsriv2\\14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us.vhd" + } + ], + "networkAdapters": [ + { + "networkId": "VmlydHVhbCBTd2l0Y2gtIE5JQzQ=", + "subnetName": "Virtual Switch- NIC4", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:77981CA7-4E6C-4C20-AE6E-47CA141CE2BF\\9621A776-FE27-4E22-B4B2-1B7B80568D63", + "macAddress": "00:15:5d:0a:58:1d", + "ipAddressList": [ + "10.150.13.206", + "fe80::8de5:b75e:1936:44e5", + "2404:f801:4800:25:8de5:b75e:1936:44e5" + ], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "AzureMigrateAppliance_v1.19.05.09_Amit2", + "numberOfProcessorCore": 8, + "allocatedMemoryInMB": 8192, + "vmConfigurationFileLocation": "C:\\ProgramData\\amitsriv2\\Virtual Machines\\77981CA7-4E6C-4C20-AE6E-47CA141CE2BF.xml", + "operatingSystemDetails": { + "osType": null, + "osName": "Windows Server 2016 Datacenter Evaluation", + "osVersion": "10.0.14393" + }, + "createdTimestamp": "2019-05-09T07:56:11.5920949Z", + "updatedTimestamp": "2019-05-14T07:01:18.4683946Z", + "instanceUuid": "77981ca7-4e6c-4c20-ae6e-47ca141ce2bf", + "powerStatus": "Running", + "biosSerialNumber": "6707-1095-4598-5876-9535-2181-00", + "vmFqdn": "WIN-3TMQPJBIV1C", + "isDeleted": false, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/3125d511-6799-48f5-a183-6607b9755425", + "name": "3125d511-6799-48f5-a183-6607b9755425", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-46.ntdev.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-46-ntdev-corp-micros-e4638031-3b19-5642-926d-385da60cfb8a", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "5.0", + "highAvailability": "No", + "maxMemoryMB": 16384, + "firmware": "BIOS", + "isDynamicMemoryEnabled": true, + "disks": [ + { + "instanceId": "Microsoft:3125D511-6799-48F5-A183-6607B9755425\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "4845656d-75b2-1246-bc8f-13d900000000", + "maxSizeInBytes": 42949672960, + "name": "14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us", + "diskType": "Dynamic", + "lun": 0, + "path": "C:\\ProgramData\\amitsriv\\14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us.vhd" + } + ], + "networkAdapters": [ + { + "networkId": "VmlydHVhbCBTd2l0Y2gtIE5JQzQ=", + "subnetName": "Virtual Switch- NIC4", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:3125D511-6799-48F5-A183-6607B9755425\\9621A776-FE27-4E22-B4B2-1B7B80568D63", + "macAddress": "00:15:5d:0a:58:1c", + "ipAddressList": [ + "10.150.13.171", + "fe80::f431:ed86:fc0c:b1b7", + "2404:f801:4800:25:f431:ed86:fc0c:b1b7" + ], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "AzureMigrateAppliance_v1.19.05.09_Amit", + "numberOfProcessorCore": 8, + "allocatedMemoryInMB": 8192, + "vmConfigurationFileLocation": "C:\\ProgramData\\amitsriv\\Virtual Machines\\3125D511-6799-48F5-A183-6607B9755425.xml", + "operatingSystemDetails": { + "osType": null, + "osName": "Windows Server 2016 Datacenter Evaluation", + "osVersion": "10.0.14393" + }, + "createdTimestamp": "2019-05-09T07:56:11.6076688Z", + "updatedTimestamp": "2019-05-14T07:01:18.4683946Z", + "instanceUuid": "3125d511-6799-48f5-a183-6607b9755425", + "powerStatus": "Running", + "biosSerialNumber": "6707-1095-4598-5876-9535-2181-00", + "vmFqdn": "WIN-400CL2HTGML", + "isDeleted": false, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/74428ece-d2ee-4904-afe2-27959f5eca3b", + "name": "74428ece-d2ee-4904-afe2-27959f5eca3b", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-48.fareast.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-48-fareast-corp-micr-691cb67f-3474-55ee-b376-63a93b276ed6", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "8.0", + "highAvailability": "No", + "maxMemoryMB": 1048576, + "firmware": "BIOS", + "isDynamicMemoryEnabled": true, + "disks": [ + { + "instanceId": "Microsoft:74428ECE-D2EE-4904-AFE2-27959F5ECA3B\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "ee799e51-bd48-42cb-9098-3e41fcc9c795", + "maxSizeInBytes": 26843545600, + "name": "7601.23807.amd64fre.win7sp1_ldr.170512-0600_Server_ServerWeb_en-US", + "diskType": "Dynamic", + "lun": 0, + "path": "d:\\VHDs\\7601.23807.amd64fre.win7sp1_ldr.170512-0600_Server_ServerWeb_en-US.vhd" + } + ], + "networkAdapters": [ + { + "networkId": "QnJvYWRjb20gTmV0WHRyZW1lIEdpZ2FiaXQgRXRoZXJuZXQgLSBWaXJ0dWFsIFN3aXRjaA==", + "subnetName": "Broadcom NetXtreme Gigabit Ethernet - Virtual Switch", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:74428ECE-D2EE-4904-AFE2-27959F5ECA3B\\09AD1D8D-E44F-4C97-8E31-BA8AA63C03C8", + "macAddress": "00:15:5d:0c:92:3d", + "ipAddressList": [ + "10.150.13.31", + "fe80::187d:b8a9:8f1c:b009", + "2404:f801:4800:25:187d:b8a9:8f1c:b009" + ], + "networkName": null, + "ipAddressType": "Dynamic" + }, + { + "networkId": "QnJvYWRjb20gTmV0WHRyZW1lIEdpZ2FiaXQgRXRoZXJuZXQgLSBWaXJ0dWFsIFN3aXRjaA==", + "subnetName": "Broadcom NetXtreme Gigabit Ethernet - Virtual Switch", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:74428ECE-D2EE-4904-AFE2-27959F5ECA3B\\718032DA-6EFB-4EF4-8152-9A2FBDA945BF\\0", + "macAddress": "00:15:5d:0c:92:65", + "ipAddressList": null, + "networkName": null, + "ipAddressType": null + } + ], + "displayName": "2008R2x64onRS1", + "numberOfProcessorCore": 1, + "allocatedMemoryInMB": 1024, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\74428ECE-D2EE-4904-AFE2-27959F5ECA3B.vmcx", + "operatingSystemDetails": { + "osType": null, + "osName": "Windows Web Server 2008 R2", + "osVersion": "6.1.7601" + }, + "createdTimestamp": "2019-05-09T07:56:11.6232763Z", + "updatedTimestamp": "2019-05-15T11:02:00.599084Z", + "instanceUuid": "74428ece-d2ee-4904-afe2-27959f5eca3b", + "powerStatus": "Running", + "biosSerialNumber": "3875-8495-3239-8004-0619-0137-51", + "vmFqdn": "WIN-CLPMJOIKIFU", + "isDeleted": false, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/5285ca21-8c2e-45fc-8579-255d8756f164", + "name": "5285ca21-8c2e-45fc-8579-255d8756f164", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-48.fareast.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-48-fareast-corp-micr-691cb67f-3474-55ee-b376-63a93b276ed6", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 2, + "version": "8.0", + "highAvailability": "No", + "maxMemoryMB": 1048576, + "firmware": "UEFI", + "isDynamicMemoryEnabled": false, + "disks": [ + { + "instanceId": "Microsoft:5285CA21-8C2E-45FC-8579-255D8756F164\\98EDCA2C-8CF7-4532-8AE7-EC368FF0C74E\\0\\0\\L", + "vhdId": "92a511b2-587e-4d75-a62c-065c3f431599", + "maxSizeInBytes": 26843545600, + "name": "17763.1.amd64fre.rs5_release.180914-1434_server_serverdatacenter_en-us", + "diskType": "Dynamic", + "lun": 0, + "path": "D:\\RS5\\17763.1.amd64fre.rs5_release.180914-1434_server_serverdatacenter_en-us.vhdx" + }, + { + "instanceId": "Microsoft:5285CA21-8C2E-45FC-8579-255D8756F164\\98EDCA2C-8CF7-4532-8AE7-EC368FF0C74E\\0\\1\\L", + "vhdId": "d7a17760-c58a-42bd-a06c-97d6a0a558ce", + "maxSizeInBytes": 136365211648, + "name": "Data", + "diskType": "Dynamic", + "lun": 0, + "path": "D:\\RS5\\Data.vhdx" + } + ], + "networkAdapters": [ + { + "networkId": "QnJvYWRjb20gTmV0WHRyZW1lIEdpZ2FiaXQgRXRoZXJuZXQgLSBWaXJ0dWFsIFN3aXRjaA==", + "subnetName": "Broadcom NetXtreme Gigabit Ethernet - Virtual Switch", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:5285CA21-8C2E-45FC-8579-255D8756F164\\6CC21D5F-06FE-4ABC-BB7F-B3DA459899D3", + "macAddress": "00:15:5d:0c:92:b7", + "ipAddressList": [ + "10.150.13.94", + "fe80::6459:92f6:9a30:2730", + "2404:f801:4800:25:df55:af15:8ba4:3d9", + "2404:f801:4800:25:927e:7120:d390:d88f", + "2404:f801:4800:25:6459:92f6:9a30:2730" + ], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "2019Gen2", + "numberOfProcessorCore": 4, + "allocatedMemoryInMB": 4096, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\5285CA21-8C2E-45FC-8579-255D8756F164.vmcx", + "operatingSystemDetails": { + "osType": null, + "osName": "Windows Server 2019 Datacenter", + "osVersion": "10.0.17763" + }, + "createdTimestamp": "2019-05-09T07:56:11.6389274Z", + "updatedTimestamp": "2019-05-14T07:01:18.5309441Z", + "instanceUuid": "5285ca21-8c2e-45fc-8579-255d8756f164", + "powerStatus": "Running", + "biosSerialNumber": "3314-3263-8647-7142-5391-9114-13", + "vmFqdn": "WIN-OFFD4BFO804.ntdev.corp.microsoft.com", + "isDeleted": false, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/ef9def09-c4b7-4ee7-bc80-db31ae763d86", + "name": "ef9def09-c4b7-4ee7-bc80-db31ae763d86", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-48.fareast.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-48-fareast-corp-micr-691cb67f-3474-55ee-b376-63a93b276ed6", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "5.0", + "highAvailability": "No", + "maxMemoryMB": 16384, + "firmware": "BIOS", + "isDynamicMemoryEnabled": true, + "disks": [ + { + "instanceId": "Microsoft:EF9DEF09-C4B7-4EE7-BC80-DB31AE763D86\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "4845656d-75b2-1246-bc8f-13d900000000", + "maxSizeInBytes": 42949672960, + "name": "14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us", + "diskType": "Dynamic", + "lun": 0, + "path": "C:\\Users\\Public\\Documents\\Hyper-V\\Virtual hard disks\\hyperv\\14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us.vhd" + } + ], + "networkAdapters": [ + { + "networkId": "QnJvYWRjb20gTmV0WHRyZW1lIEdpZ2FiaXQgRXRoZXJuZXQgLSBWaXJ0dWFsIFN3aXRjaA==", + "subnetName": "Broadcom NetXtreme Gigabit Ethernet - Virtual Switch", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:EF9DEF09-C4B7-4EE7-BC80-DB31AE763D86\\9621A776-FE27-4E22-B4B2-1B7B80568D63", + "macAddress": "00:15:5d:0c:92:c9", + "ipAddressList": [ + "10.150.10.187", + "fe80::c9e0:8a7a:7fd2:80be", + "2404:f801:4800:25:c9e0:8a7a:7fd2:80be" + ], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "pajind-AzureMigrateAppliance_v1.19.05.09", + "numberOfProcessorCore": 8, + "allocatedMemoryInMB": 8192, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\EF9DEF09-C4B7-4EE7-BC80-DB31AE763D86.xml", + "operatingSystemDetails": { + "osType": null, + "osName": "Windows Server 2016 Datacenter Evaluation", + "osVersion": "10.0.14393" + }, + "createdTimestamp": "2019-05-09T07:56:11.6545775Z", + "updatedTimestamp": "2019-05-14T07:01:18.4995887Z", + "instanceUuid": "ef9def09-c4b7-4ee7-bc80-db31ae763d86", + "powerStatus": "Running", + "biosSerialNumber": "6707-1095-4598-5876-9535-2181-00", + "vmFqdn": "WIN-C7FE1AUQ8D2", + "isDeleted": false, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/ef15e94a-7be0-4780-ab49-d9812834077f", + "name": "ef15e94a-7be0-4780-ab49-d9812834077f", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-48.fareast.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-48-fareast-corp-micr-691cb67f-3474-55ee-b376-63a93b276ed6", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "8.0", + "highAvailability": "No", + "maxMemoryMB": 1048576, + "firmware": "BIOS", + "isDynamicMemoryEnabled": false, + "disks": [ + { + "instanceId": "Microsoft:EF15E94A-7BE0-4780-AB49-D9812834077F\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "00000000-0000-0000-0000-000000000000", + "maxSizeInBytes": 0, + "name": "6002.18005.x86fre.lh_sp2rtm.090410-1830_Server_ServerDatacenter_en-US", + "diskType": "Unknown", + "lun": 0, + "path": "D:\\VHDs\\6002.18005.x86fre.lh_sp2rtm.090410-1830_Server_ServerDatacenter_en-US.vhd" + } + ], + "networkAdapters": [ + { + "networkId": "QnJvYWRjb20gTmV0WHRyZW1lIEdpZ2FiaXQgRXRoZXJuZXQgLSBWaXJ0dWFsIFN3aXRjaA==", + "subnetName": "Broadcom NetXtreme Gigabit Ethernet - Virtual Switch", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:EF15E94A-7BE0-4780-AB49-D9812834077F\\BA7F9965-AC32-4825-AEA3-E34566385C60", + "macAddress": "00:15:5d:0c:92:3f", + "ipAddressList": [], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "W2K8SP2x86onRS1", + "numberOfProcessorCore": 2, + "allocatedMemoryInMB": 2024, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\EF15E94A-7BE0-4780-AB49-D9812834077F.vmcx", + "operatingSystemDetails": { + "osType": null, + "osName": null, + "osVersion": null + }, + "createdTimestamp": "2019-05-09T07:56:11.6545775Z", + "updatedTimestamp": "2019-05-15T17:32:02.0786997Z", + "instanceUuid": "ef15e94a-7be0-4780-ab49-d9812834077f", + "powerStatus": "PowerOff", + "biosSerialNumber": "2007-3254-5199-9924-8248-6886-60", + "vmFqdn": "", + "isDeleted": true, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/e7fb6b05-94e4-47b6-9f3a-e29f007a9622", + "name": "e7fb6b05-94e4-47b6-9f3a-e29f007a9622", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-46.ntdev.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-46-ntdev-corp-micros-e4638031-3b19-5642-926d-385da60cfb8a", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "8.0", + "highAvailability": "No", + "maxMemoryMB": 1048576, + "firmware": "BIOS", + "isDynamicMemoryEnabled": false, + "disks": [ + { + "instanceId": "Microsoft:E7FB6B05-94E4-47B6-9F3A-E29F007A9622\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "0cb2907e-1225-44fb-9059-9e004e7cd071", + "maxSizeInBytes": 42949672960, + "name": "LATEST-DATA-64", + "diskType": "Dynamic", + "lun": 0, + "path": "C:\\VHDs\\h2a-test-abgoyal\\LATEST-DATA-64.vhd" + } + ], + "networkAdapters": [ + { + "networkId": "VmlydHVhbCBTd2l0Y2gtIE5JQzQ=", + "subnetName": "Virtual Switch- NIC4", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:E7FB6B05-94E4-47B6-9F3A-E29F007A9622\\0F593E92-445E-43D0-8D2D-7B97A55D8E6F", + "macAddress": "00:15:5d:0a:58:13", + "ipAddressList": [ + "10.150.14.42", + "fe80::e8a5:3802:483f:21d6", + "2404:f801:4800:25:e8a5:3802:483f:21d6" + ], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "h2a-test-abgoyal", + "numberOfProcessorCore": 1, + "allocatedMemoryInMB": 4096, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\E7FB6B05-94E4-47B6-9F3A-E29F007A9622.vmcx", + "operatingSystemDetails": { + "osType": null, + "osName": "Windows Server Datacenter", + "osVersion": "10.0.17600" + }, + "createdTimestamp": "2019-05-09T07:56:11.6702321Z", + "updatedTimestamp": "2019-05-14T07:01:18.5309441Z", + "instanceUuid": "e7fb6b05-94e4-47b6-9f3a-e29f007a9622", + "powerStatus": "Running", + "biosSerialNumber": "0529-6539-9178-3979-0839-5502-94", + "vmFqdn": "V91E69869EC4E4A", + "isDeleted": false, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/aba95db8-bc64-461e-87b6-0d11be61f090", + "name": "aba95db8-bc64-461e-87b6-0d11be61f090", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-48.fareast.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-48-fareast-corp-micr-691cb67f-3474-55ee-b376-63a93b276ed6", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "8.0", + "highAvailability": "No", + "maxMemoryMB": 1048576, + "firmware": "BIOS", + "isDynamicMemoryEnabled": false, + "disks": [ + { + "instanceId": "Microsoft:ABA95DB8-BC64-461E-87B6-0D11BE61F090\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "00000000-0000-0000-0000-000000000000", + "maxSizeInBytes": 0, + "name": "9600.16384.amd64fre.winblue_rtm.130821-1623_server_serverstandard_en-us", + "diskType": "Unknown", + "lun": 0, + "path": "D:\\VHDs\\9600.16384.amd64fre.winblue_rtm.130821-1623_server_serverstandard_en-us.vhd" + }, + { + "instanceId": "Microsoft:ABA95DB8-BC64-461E-87B6-0D11BE61F090\\03A7EC65-4F69-4AA4-AFC4-FE85C348A222\\0\\0\\L", + "vhdId": "76883e1e-6e35-4c11-b7c8-1b3e65c025d2", + "maxSizeInBytes": 4294967296, + "name": "44", + "diskType": "Dynamic", + "lun": 0, + "path": "C:\\Users\\Public\\Documents\\Hyper-V\\Virtual Hard Disks\\44.vhdx" + } + ], + "networkAdapters": [ + { + "networkId": "QnJvYWRjb20gTmV0WHRyZW1lIEdpZ2FiaXQgRXRoZXJuZXQgLSBWaXJ0dWFsIFN3aXRjaA==", + "subnetName": "Broadcom NetXtreme Gigabit Ethernet - Virtual Switch", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:ABA95DB8-BC64-461E-87B6-0D11BE61F090\\9646805F-7259-4293-888F-42D182009C27", + "macAddress": "00:15:5d:0c:92:48", + "ipAddressList": [], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "WS2012 R21", + "numberOfProcessorCore": 4, + "allocatedMemoryInMB": 4096, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\ABA95DB8-BC64-461E-87B6-0D11BE61F090.vmcx", + "operatingSystemDetails": { + "osType": null, + "osName": null, + "osVersion": null + }, + "createdTimestamp": "2019-05-09T07:56:11.6861484Z", + "updatedTimestamp": "2019-05-15T17:32:02.0943228Z", + "instanceUuid": "aba95db8-bc64-461e-87b6-0d11be61f090", + "powerStatus": "PowerOff", + "biosSerialNumber": "3794-1628-1271-9986-9596-3948-70", + "vmFqdn": "", + "isDeleted": true, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/6f0830f0-622c-4ca9-847a-c76b34af9a8f", + "name": "6f0830f0-622c-4ca9-847a-c76b34af9a8f", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-46.ntdev.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-46-ntdev-corp-micros-e4638031-3b19-5642-926d-385da60cfb8a", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "8.0", + "highAvailability": "No", + "maxMemoryMB": 1048576, + "firmware": "BIOS", + "isDynamicMemoryEnabled": false, + "disks": [ + { + "instanceId": "Microsoft:6F0830F0-622C-4CA9-847A-C76B34AF9A8F\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "4845656d-75b2-1246-bc8f-13d900000000", + "maxSizeInBytes": 42949672960, + "name": "14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us", + "diskType": "Dynamic", + "lun": 0, + "path": "C:\\VHDs\\AzureMigrateAppliance-abgoyal-2904\\14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us.vhd" + } + ], + "networkAdapters": [ + { + "networkId": "VmlydHVhbCBTd2l0Y2gtIE5JQzQ=", + "subnetName": "Virtual Switch- NIC4", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:6F0830F0-622C-4CA9-847A-C76B34AF9A8F\\EB8335C4-8F6A-44EB-A9BE-448D626B389F", + "macAddress": "00:15:5d:0a:58:14", + "ipAddressList": [ + "10.150.14.46", + "fe80::dccd:c8cd:2539:5abf", + "2404:f801:4800:25:dccd:c8cd:2539:5abf" + ], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "AzureMigrateAppliance-abgoyal-2904", + "numberOfProcessorCore": 1, + "allocatedMemoryInMB": 4096, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\6F0830F0-622C-4CA9-847A-C76B34AF9A8F.vmcx", + "operatingSystemDetails": { + "osType": null, + "osName": "Windows Server 2016 Datacenter Evaluation", + "osVersion": "10.0.14393" + }, + "createdTimestamp": "2019-05-09T07:56:11.6861484Z", + "updatedTimestamp": "2019-05-14T07:01:18.5465064Z", + "instanceUuid": "6f0830f0-622c-4ca9-847a-c76b34af9a8f", + "powerStatus": "Running", + "biosSerialNumber": "7266-4247-1943-7768-9547-5184-40", + "vmFqdn": "WIN-MFCQRVE5UA8", + "isDeleted": false, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/f8554602-0e81-425d-8751-aca4a21de118", + "name": "f8554602-0e81-425d-8751-aca4a21de118", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-48.fareast.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-48-fareast-corp-micr-691cb67f-3474-55ee-b376-63a93b276ed6", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 2, + "version": "8.0", + "highAvailability": "No", + "maxMemoryMB": 16384, + "firmware": "UEFI", + "isDynamicMemoryEnabled": true, + "disks": [ + { + "instanceId": "Microsoft:F8554602-0E81-425D-8751-ACA4A21DE118\\8E16F944-93A6-462F-9D36-800000DE75E7\\0\\0\\L", + "vhdId": "51f204b1-e6d0-43d7-a3a3-8ee472205c5d", + "maxSizeInBytes": 215822106624, + "name": "49Host-1", + "diskType": "Dynamic", + "lun": 0, + "path": "E:\\CriticalVMs\\Virtual Hard Disks\\49Host-1.vhdx" + }, + { + "instanceId": "Microsoft:F8554602-0E81-425D-8751-ACA4A21DE118\\8E16F944-93A6-462F-9D36-800000DE75E7\\0\\1\\L", + "vhdId": "237a96fe-4b30-4d74-bd44-cbce03093df6", + "maxSizeInBytes": 137438953472, + "name": "Data1", + "diskType": "Dynamic", + "lun": 0, + "path": "E:\\CriticalVMs\\Virtual Hard Disks\\Data1.vhdx" + } + ], + "networkAdapters": [ + { + "networkId": "QnJvYWRjb20gTmV0WHRyZW1lIEdpZ2FiaXQgRXRoZXJuZXQgLSBWaXJ0dWFsIFN3aXRjaA==", + "subnetName": "Broadcom NetXtreme Gigabit Ethernet - Virtual Switch", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:F8554602-0E81-425D-8751-ACA4A21DE118\\57699473-62D6-4A6F-B26C-4667EC761CE7", + "macAddress": "00:15:5d:0c:92:50", + "ipAddressList": [ + "10.150.13.32", + "10.150.12.169", + "fe80::11f6:340c:cbf2:39a5", + "2404:f801:4800:25:918c:736:cd60:2747", + "2404:f801:4800:25:11f6:340c:cbf2:39a5" + ], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "ClusterNode1", + "numberOfProcessorCore": 8, + "allocatedMemoryInMB": 16384, + "vmConfigurationFileLocation": "E:\\CriticalVMs\\Virtual Machines\\F8554602-0E81-425D-8751-ACA4A21DE118.vmcx", + "operatingSystemDetails": { + "osType": null, + "osName": "Windows Server 2016 Datacenter", + "osVersion": "10.0.14393" + }, + "createdTimestamp": "2019-05-09T07:56:11.7013962Z", + "updatedTimestamp": "2019-05-17T01:32:04.5095247Z", + "instanceUuid": "f8554602-0e81-425d-8751-aca4a21de118", + "powerStatus": "Running", + "biosSerialNumber": "8576-9633-7376-1318-6484-3429-65", + "vmFqdn": "HypGQLClusN1.ntdev.corp.microsoft.com", + "isDeleted": false, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/bd9f48cd-03c6-43ff-aafd-5f58974db85b", + "name": "bd9f48cd-03c6-43ff-aafd-5f58974db85b", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-48.fareast.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-48-fareast-corp-micr-691cb67f-3474-55ee-b376-63a93b276ed6", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "8.0", + "highAvailability": "No", + "maxMemoryMB": 1048576, + "firmware": "BIOS", + "isDynamicMemoryEnabled": false, + "disks": [ + { + "instanceId": "Microsoft:BD9F48CD-03C6-43FF-AAFD-5F58974DB85B\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "00000000-0000-0000-0000-000000000000", + "maxSizeInBytes": 0, + "name": "14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us", + "diskType": "Unknown", + "lun": 0, + "path": "\\\\priyank-z420\\share2\\14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us.vhd" + }, + { + "instanceId": "Microsoft:BD9F48CD-03C6-43FF-AAFD-5F58974DB85B\\F52499C2-8940-412E-B798-ED9C225D2B15\\0\\0\\L", + "vhdId": "00000000-0000-0000-0000-000000000000", + "maxSizeInBytes": 0, + "name": "123", + "diskType": "Unknown", + "lun": 0, + "path": "\\\\priyank-z420\\share2\\123.vhdx" + } + ], + "networkAdapters": [ + { + "networkId": "", + "subnetName": "", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:BD9F48CD-03C6-43FF-AAFD-5F58974DB85B\\A541DA26-A51A-4E61-8FF7-2051D1CDE324", + "macAddress": "00:15:5d:0c:92:fa", + "ipAddressList": [], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "SMB", + "numberOfProcessorCore": 1, + "allocatedMemoryInMB": 1024, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\BD9F48CD-03C6-43FF-AAFD-5F58974DB85B.vmcx", + "operatingSystemDetails": { + "osType": null, + "osName": null, + "osVersion": null + }, + "createdTimestamp": "2019-05-09T07:56:11.7170488Z", + "updatedTimestamp": "2019-05-15T17:32:02.0943228Z", + "instanceUuid": "bd9f48cd-03c6-43ff-aafd-5f58974db85b", + "powerStatus": "PowerOff", + "biosSerialNumber": "5149-0934-1689-6981-5357-7684-40", + "vmFqdn": "", + "isDeleted": true, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/dcca6317-b8c7-4fa3-8e1f-9357b881650d", + "name": "dcca6317-b8c7-4fa3-8e1f-9357b881650d", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-46.ntdev.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-46-ntdev-corp-micros-e4638031-3b19-5642-926d-385da60cfb8a", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "5.0", + "highAvailability": "No", + "maxMemoryMB": 16384, + "firmware": "BIOS", + "isDynamicMemoryEnabled": true, + "disks": [ + { + "instanceId": "Microsoft:DCCA6317-B8C7-4FA3-8E1F-9357B881650D\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "66513e67-0d56-4e77-aac2-b77eaba47558", + "maxSizeInBytes": 42949672960, + "name": "14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us_2A9330F8-B08D-4A81-A9DC-800B0CA48800", + "diskType": "Differencing", + "lun": 0, + "path": "C:\\VHDs\\Priyank\\14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us_2A9330F8-B08D-4A81-A9DC-800B0CA48800.avhd" + } + ], + "networkAdapters": [ + { + "networkId": "VmlydHVhbCBTd2l0Y2gtIE5JQzQ=", + "subnetName": "Virtual Switch- NIC4", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:DCCA6317-B8C7-4FA3-8E1F-9357B881650D\\FA3626BD-BB8B-4F82-8C2A-2876FA71C4F6", + "macAddress": "00:15:5d:0a:58:19", + "ipAddressList": [ + "10.150.13.204", + "fe80::41ea:d59a:e7ab:b06b", + "2404:f801:4800:25:41ea:d59a:e7ab:b06b" + ], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "AzureMigrateAppliance_v1.19.05.02_Priyank", + "numberOfProcessorCore": 8, + "allocatedMemoryInMB": 8192, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\DCCA6317-B8C7-4FA3-8E1F-9357B881650D.xml", + "operatingSystemDetails": { + "osType": null, + "osName": "Windows Server 2016 Datacenter Evaluation", + "osVersion": "10.0.14393" + }, + "createdTimestamp": "2019-05-09T07:56:11.7326712Z", + "updatedTimestamp": "2019-05-14T07:01:18.5934347Z", + "instanceUuid": "dcca6317-b8c7-4fa3-8e1f-9357b881650d", + "powerStatus": "Running", + "biosSerialNumber": "7818-1323-0039-2182-5595-5550-42", + "vmFqdn": "WIN-5OPBUKJQG28", + "isDeleted": false, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/d28b6437-bc05-4399-90f8-62d286c33285", + "name": "d28b6437-bc05-4399-90f8-62d286c33285", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-48.fareast.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-48-fareast-corp-micr-691cb67f-3474-55ee-b376-63a93b276ed6", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "8.0", + "highAvailability": "No", + "maxMemoryMB": 1048576, + "firmware": "BIOS", + "isDynamicMemoryEnabled": false, + "disks": [ + { + "instanceId": "Microsoft:D28B6437-BC05-4399-90F8-62D286C33285\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "00000000-0000-0000-0000-000000000000", + "maxSizeInBytes": 0, + "name": "14393.0.amd64fre.rs1_release.160715-1616_server_serverstandardeval_en-us", + "diskType": "Unknown", + "lun": 0, + "path": "D:\\VHDs\\14393.0.amd64fre.rs1_release.160715-1616_server_serverstandardeval_en-us.vhd" + } + ], + "networkAdapters": [ + { + "networkId": "QnJvYWRjb20gTmV0WHRyZW1lIEdpZ2FiaXQgRXRoZXJuZXQgLSBWaXJ0dWFsIFN3aXRjaA==", + "subnetName": "Broadcom NetXtreme Gigabit Ethernet - Virtual Switch", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:D28B6437-BC05-4399-90F8-62D286C33285\\D06405C1-6F2A-4F7E-BD15-02975F3FCC5D", + "macAddress": "00:15:5d:0c:92:61", + "ipAddressList": [], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "RS1-NoUpdates", + "numberOfProcessorCore": 4, + "allocatedMemoryInMB": 4096, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\D28B6437-BC05-4399-90F8-62D286C33285.vmcx", + "operatingSystemDetails": { + "osType": null, + "osName": null, + "osVersion": null + }, + "createdTimestamp": "2019-05-09T07:56:11.7483029Z", + "updatedTimestamp": "2019-05-15T17:32:02.1099566Z", + "instanceUuid": "d28b6437-bc05-4399-90f8-62d286c33285", + "powerStatus": "PowerOff", + "biosSerialNumber": "2018-8141-1255-2053-1389-3960-25", + "vmFqdn": "", + "isDeleted": true, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/98ce14ff-04f8-4191-af0b-69d592e7e04e", + "name": "98ce14ff-04f8-4191-af0b-69d592e7e04e", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-46.ntdev.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-46-ntdev-corp-micros-e4638031-3b19-5642-926d-385da60cfb8a", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "5.0", + "highAvailability": "No", + "maxMemoryMB": 16384, + "firmware": "BIOS", + "isDynamicMemoryEnabled": true, + "disks": [ + { + "instanceId": "Microsoft:98CE14FF-04F8-4191-AF0B-69D592E7E04E\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "d1f22d98-a919-4a17-9007-92182a72b6e0", + "maxSizeInBytes": 42949672960, + "name": "14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us_F74C5867-5673-48A0-B64A-841A191E7B85", + "diskType": "Differencing", + "lun": 0, + "path": "C:\\VHDs\\14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us_F74C5867-5673-48A0-B64A-841A191E7B85.avhd" + } + ], + "networkAdapters": [ + { + "networkId": "VmlydHVhbCBTd2l0Y2gtIE5JQzQ=", + "subnetName": "Virtual Switch- NIC4", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:98CE14FF-04F8-4191-AF0B-69D592E7E04E\\FA3626BD-BB8B-4F82-8C2A-2876FA71C4F6", + "macAddress": "00:15:5d:0a:58:18", + "ipAddressList": [ + "10.150.9.156", + "fe80::fda4:7107:935e:d133", + "2404:f801:4800:25:fda4:7107:935e:d133" + ], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "AzureMigrateAppliance_v1.19.05.02_Kunal", + "numberOfProcessorCore": 8, + "allocatedMemoryInMB": 8192, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\98CE14FF-04F8-4191-AF0B-69D592E7E04E.xml", + "operatingSystemDetails": { + "osType": null, + "osName": "Windows Server 2016 Datacenter Evaluation", + "osVersion": "10.0.14393" + }, + "createdTimestamp": "2019-05-09T07:56:11.7483029Z", + "updatedTimestamp": "2019-05-14T07:01:18.6245851Z", + "instanceUuid": "98ce14ff-04f8-4191-af0b-69d592e7e04e", + "powerStatus": "Running", + "biosSerialNumber": "7818-1323-0039-2182-5595-5550-42", + "vmFqdn": "WIN-H04APHO2P7P", + "isDeleted": false, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/bacb7d76-b663-42a0-90c2-a63ddf362b4d", + "name": "bacb7d76-b663-42a0-90c2-a63ddf362b4d", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-48.fareast.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-48-fareast-corp-micr-691cb67f-3474-55ee-b376-63a93b276ed6", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "5.0", + "highAvailability": "No", + "maxMemoryMB": 16384, + "firmware": "BIOS", + "isDynamicMemoryEnabled": true, + "disks": [ + { + "instanceId": "Microsoft:BACB7D76-B663-42A0-90C2-A63DDF362B4D\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "6e74566d-d852-4281-85d1-08f7f39b75c3", + "maxSizeInBytes": 42949672960, + "name": "14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us_852E374B-A870-4510-95E3-92ECD3230805", + "diskType": "Differencing", + "lun": 0, + "path": "C:\\Users\\Public\\Documents\\Hyper-V\\Virtual Hard Disks\\rahulkum\\14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us_852E374B-A870-4510-95E3-92ECD3230805.avhd" + } + ], + "networkAdapters": [ + { + "networkId": "QnJvYWRjb20gTmV0WHRyZW1lIEdpZ2FiaXQgRXRoZXJuZXQgLSBWaXJ0dWFsIFN3aXRjaA==", + "subnetName": "Broadcom NetXtreme Gigabit Ethernet - Virtual Switch", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:BACB7D76-B663-42A0-90C2-A63DDF362B4D\\9621A776-FE27-4E22-B4B2-1B7B80568D63", + "macAddress": "00:15:5d:0c:92:ca", + "ipAddressList": [ + "10.150.10.193", + "fe80::6572:9ae9:5362:f1b2", + "2404:f801:4800:25:6572:9ae9:5362:f1b2" + ], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "RahulkumAppliance_v1.19.05.09", + "numberOfProcessorCore": 8, + "allocatedMemoryInMB": 8192, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\BACB7D76-B663-42A0-90C2-A63DDF362B4D.xml", + "operatingSystemDetails": { + "osType": null, + "osName": "Windows Server 2016 Datacenter Evaluation", + "osVersion": "10.0.14393" + }, + "createdTimestamp": "2019-05-09T07:56:11.7639154Z", + "updatedTimestamp": "2019-05-14T07:01:18.6245851Z", + "instanceUuid": "bacb7d76-b663-42a0-90c2-a63ddf362b4d", + "powerStatus": "Running", + "biosSerialNumber": "6707-1095-4598-5876-9535-2181-00", + "vmFqdn": "WIN-HPVEMK1D3D8", + "isDeleted": false, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/17577b0b-f3cf-4c54-a409-298bc0a898a6", + "name": "17577b0b-f3cf-4c54-a409-298bc0a898a6", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-48.fareast.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-48-fareast-corp-micr-691cb67f-3474-55ee-b376-63a93b276ed6", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "8.0", + "highAvailability": "No", + "maxMemoryMB": 1048576, + "firmware": "BIOS", + "isDynamicMemoryEnabled": false, + "disks": [ + { + "instanceId": "Microsoft:17577B0B-F3CF-4C54-A409-298BC0A898A6\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "00000000-0000-0000-0000-000000000000", + "maxSizeInBytes": 0, + "name": "VHDNotFound", + "diskType": "Unknown", + "lun": 0, + "path": "C:\\Users\\Public\\Documents\\Hyper-V\\Virtual Hard Disks\\VHDNotFound.vhdx" + } + ], + "networkAdapters": [ + { + "networkId": "QnJvYWRjb20gTmV0WHRyZW1lIEdpZ2FiaXQgRXRoZXJuZXQgLSBWaXJ0dWFsIFN3aXRjaA==", + "subnetName": "Broadcom NetXtreme Gigabit Ethernet - Virtual Switch", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:17577B0B-F3CF-4C54-A409-298BC0A898A6\\A37FCC48-FA4B-4886-96BD-F48A397EF60E", + "macAddress": "00:11:22:33:44:88", + "ipAddressList": [], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "VHDNotFound", + "numberOfProcessorCore": 1, + "allocatedMemoryInMB": 1024, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\17577B0B-F3CF-4C54-A409-298BC0A898A6.vmcx", + "operatingSystemDetails": { + "osType": null, + "osName": null, + "osVersion": null + }, + "createdTimestamp": "2019-05-09T07:56:11.779503Z", + "updatedTimestamp": "2019-05-15T17:32:02.1255781Z", + "instanceUuid": "17577b0b-f3cf-4c54-a409-298bc0a898a6", + "powerStatus": "PowerOff", + "biosSerialNumber": "4378-5168-7795-2379-2071-9034-81", + "vmFqdn": "", + "isDeleted": true, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/4890d3ef-cd22-4001-ad61-44cfe30783bb", + "name": "4890d3ef-cd22-4001-ad61-44cfe30783bb", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-48.fareast.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-48-fareast-corp-micr-691cb67f-3474-55ee-b376-63a93b276ed6", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "8.0", + "highAvailability": "No", + "maxMemoryMB": 8196, + "firmware": "BIOS", + "isDynamicMemoryEnabled": true, + "disks": [ + { + "instanceId": "Microsoft:4890D3EF-CD22-4001-AD61-44CFE30783BB\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "4845656d-75b2-1246-bc8f-13d900000000", + "maxSizeInBytes": 42949672960, + "name": "14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us", + "diskType": "Dynamic", + "lun": 0, + "path": "C:\\Users\\Public\\Documents\\Hyper-V\\Virtual hard disks\\NN\\14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us.vhd" + } + ], + "networkAdapters": [ + { + "networkId": "QnJvYWRjb20gTmV0WHRyZW1lIEdpZ2FiaXQgRXRoZXJuZXQgLSBWaXJ0dWFsIFN3aXRjaA==", + "subnetName": "Broadcom NetXtreme Gigabit Ethernet - Virtual Switch", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:4890D3EF-CD22-4001-AD61-44CFE30783BB\\2D913B79-CBFC-4E5F-BDD9-4BEB8B95305C", + "macAddress": "00:15:5d:0c:92:c8", + "ipAddressList": [ + "10.150.13.174", + "fe80::65bc:6654:b119:d63e", + "2404:f801:4800:25:65bc:6654:b119:d63e" + ], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "Nikhil", + "numberOfProcessorCore": 4, + "allocatedMemoryInMB": 4096, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\4890D3EF-CD22-4001-AD61-44CFE30783BB.vmcx", + "operatingSystemDetails": { + "osType": null, + "osName": "Windows Server 2016 Datacenter Evaluation", + "osVersion": "10.0.14393" + }, + "createdTimestamp": "2019-05-09T07:56:11.779503Z", + "updatedTimestamp": "2019-05-14T07:01:18.6559443Z", + "instanceUuid": "4890d3ef-cd22-4001-ad61-44cfe30783bb", + "powerStatus": "Running", + "biosSerialNumber": "9280-1017-7048-1199-7205-9151-54", + "vmFqdn": "WIN-RLHS81LFPG6", + "isDeleted": false, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/59bdeccd-3547-43d9-a17f-0a31f9139b6c", + "name": "59bdeccd-3547-43d9-a17f-0a31f9139b6c", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-48.fareast.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-48-fareast-corp-micr-691cb67f-3474-55ee-b376-63a93b276ed6", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 2, + "version": "8.0", + "highAvailability": "No", + "maxMemoryMB": 16384, + "firmware": "UEFI", + "isDynamicMemoryEnabled": true, + "disks": [ + { + "instanceId": "Microsoft:59BDECCD-3547-43D9-A17F-0A31F9139B6C\\5BF1E031-EAE7-429B-8033-1FB176400EB0\\0\\0\\L", + "vhdId": "51f204b1-e6d0-43d7-a3a3-8ee472205c5d", + "maxSizeInBytes": 76235669504, + "name": "49Host-2", + "diskType": "Dynamic", + "lun": 0, + "path": "E:\\CriticalVMs\\Virtual Hard Disks\\3\\49Host-2.vhdx" + }, + { + "instanceId": "Microsoft:59BDECCD-3547-43D9-A17F-0A31F9139B6C\\5BF1E031-EAE7-429B-8033-1FB176400EB0\\0\\1\\L", + "vhdId": "93ec225d-248b-45aa-b833-fa8ec33ca7b0", + "maxSizeInBytes": 136365211648, + "name": "Data2", + "diskType": "Dynamic", + "lun": 0, + "path": "E:\\CriticalVMs\\Virtual Hard Disks\\3\\Data2.vhdx" + } + ], + "networkAdapters": [ + { + "networkId": "QnJvYWRjb20gTmV0WHRyZW1lIEdpZ2FiaXQgRXRoZXJuZXQgLSBWaXJ0dWFsIFN3aXRjaA==", + "subnetName": "Broadcom NetXtreme Gigabit Ethernet - Virtual Switch", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:59BDECCD-3547-43D9-A17F-0A31F9139B6C\\0CCAA68A-5376-455F-AE5F-59555C7A1B2F", + "macAddress": "00:15:5d:0c:92:b9", + "ipAddressList": [ + "10.150.10.160", + "fe80::a435:7768:efd:254a", + "2404:f801:4800:25:a435:7768:efd:254a" + ], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "ClusterNode3", + "numberOfProcessorCore": 8, + "allocatedMemoryInMB": 16384, + "vmConfigurationFileLocation": "E:\\CriticalVMs\\Virtual Machines\\59BDECCD-3547-43D9-A17F-0A31F9139B6C.vmcx", + "operatingSystemDetails": { + "osType": null, + "osName": "Windows Server 2016 Datacenter", + "osVersion": "10.0.14393" + }, + "createdTimestamp": "2019-05-09T07:56:11.7952011Z", + "updatedTimestamp": "2019-05-14T07:01:18.6715166Z", + "instanceUuid": "59bdeccd-3547-43d9-a17f-0a31f9139b6c", + "powerStatus": "Running", + "biosSerialNumber": "4524-2107-8227-3442-2618-2687-03", + "vmFqdn": "HypGQLClusN31.ntdev.corp.microsoft.com", + "isDeleted": false, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/297a418d-74c4-4602-a99d-7d96bd578e2b", + "name": "297a418d-74c4-4602-a99d-7d96bd578e2b", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-48.fareast.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-48-fareast-corp-micr-691cb67f-3474-55ee-b376-63a93b276ed6", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 2, + "version": "8.0", + "highAvailability": "No", + "maxMemoryMB": 16384, + "firmware": "UEFI", + "isDynamicMemoryEnabled": true, + "disks": [ + { + "instanceId": "Microsoft:297A418D-74C4-4602-A99D-7D96BD578E2B\\5BF1E031-EAE7-429B-8033-1FB176400EB0\\0\\0\\L", + "vhdId": "51f204b1-e6d0-43d7-a3a3-8ee472205c5d", + "maxSizeInBytes": 76235669504, + "name": "49Host-2", + "diskType": "Dynamic", + "lun": 0, + "path": "E:\\CriticalVMs\\Virtual Hard Disks\\49Host-2.vhdx" + }, + { + "instanceId": "Microsoft:297A418D-74C4-4602-A99D-7D96BD578E2B\\5BF1E031-EAE7-429B-8033-1FB176400EB0\\0\\1\\L", + "vhdId": "93ec225d-248b-45aa-b833-fa8ec33ca7b0", + "maxSizeInBytes": 136365211648, + "name": "Data2", + "diskType": "Dynamic", + "lun": 0, + "path": "E:\\CriticalVMs\\Virtual Hard Disks\\Data2.vhdx" + } + ], + "networkAdapters": [ + { + "networkId": "QnJvYWRjb20gTmV0WHRyZW1lIEdpZ2FiaXQgRXRoZXJuZXQgLSBWaXJ0dWFsIFN3aXRjaA==", + "subnetName": "Broadcom NetXtreme Gigabit Ethernet - Virtual Switch", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:297A418D-74C4-4602-A99D-7D96BD578E2B\\0426D3E1-CF7C-47F3-AED1-5164CA01BB07", + "macAddress": "00:15:5d:0c:92:51", + "ipAddressList": [ + "10.150.12.209", + "10.150.12.207", + "fe80::f12b:a6eb:a910:48ac", + "2404:f801:4800:25:f12b:a6eb:a910:48ac", + "2404:f801:4800:25:aeb3:6659:945e:b291" + ], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "ClusterNode2", + "numberOfProcessorCore": 8, + "allocatedMemoryInMB": 16384, + "vmConfigurationFileLocation": "E:\\CriticalVMs\\Virtual Machines\\297A418D-74C4-4602-A99D-7D96BD578E2B.vmcx", + "operatingSystemDetails": { + "osType": null, + "osName": "Windows Server 2016 Datacenter", + "osVersion": "10.0.14393" + }, + "createdTimestamp": "2019-05-09T07:56:11.810794Z", + "updatedTimestamp": "2019-05-17T01:32:04.5251985Z", + "instanceUuid": "297a418d-74c4-4602-a99d-7d96bd578e2b", + "powerStatus": "Running", + "biosSerialNumber": "4524-2107-8227-3442-2618-2687-03", + "vmFqdn": "HypGQLClusN2.ntdev.corp.microsoft.com", + "isDeleted": false, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/e045bba8-38e6-4668-b98d-6fdd58391bfe", + "name": "e045bba8-38e6-4668-b98d-6fdd58391bfe", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-46.ntdev.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-46-ntdev-corp-micros-e4638031-3b19-5642-926d-385da60cfb8a", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "5.0", + "highAvailability": "No", + "maxMemoryMB": 16384, + "firmware": "BIOS", + "isDynamicMemoryEnabled": true, + "disks": [ + { + "instanceId": "Microsoft:E045BBA8-38E6-4668-B98D-6FDD58391BFE\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "4845656d-75b2-1246-bc8f-13d900000000", + "maxSizeInBytes": 42949672960, + "name": "14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us", + "diskType": "Dynamic", + "lun": 0, + "path": "C:\\Users\\Public\\Documents\\Hyper-V\\Virtual Hard Disks\\14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us.vhd" + } + ], + "networkAdapters": [ + { + "networkId": "VmlydHVhbCBTd2l0Y2gtIE5JQzQ=", + "subnetName": "Virtual Switch- NIC4", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:E045BBA8-38E6-4668-B98D-6FDD58391BFE\\9621A776-FE27-4E22-B4B2-1B7B80568D63", + "macAddress": "00:15:5d:0a:58:1b", + "ipAddressList": [ + "10.150.13.167", + "fe80::91a9:c8a8:a7ac:40c4", + "2404:f801:4800:25:91a9:c8a8:a7ac:40c4" + ], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "AzureMigrateAppliance_v1.19.05.09_Mahesh", + "numberOfProcessorCore": 8, + "allocatedMemoryInMB": 8192, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\E045BBA8-38E6-4668-B98D-6FDD58391BFE.xml", + "operatingSystemDetails": { + "osType": null, + "osName": "Windows Server 2016 Datacenter Evaluation", + "osVersion": "10.0.14393" + }, + "createdTimestamp": "2019-05-09T07:56:11.810794Z", + "updatedTimestamp": "2019-05-14T07:01:18.7027161Z", + "instanceUuid": "e045bba8-38e6-4668-b98d-6fdd58391bfe", + "powerStatus": "Running", + "biosSerialNumber": "6707-1095-4598-5876-9535-2181-00", + "vmFqdn": "WIN-UNEVOMBE0FN", + "isDeleted": false, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/ed3324bb-d73f-4012-b5a7-58f3a5d44601", + "name": "ed3324bb-d73f-4012-b5a7-58f3a5d44601", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-48.fareast.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-48-fareast-corp-micr-691cb67f-3474-55ee-b376-63a93b276ed6", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "8.0", + "highAvailability": "No", + "maxMemoryMB": 1048576, + "firmware": "BIOS", + "isDynamicMemoryEnabled": false, + "disks": [ + { + "instanceId": "Microsoft:ED3324BB-D73F-4012-B5A7-58F3A5D44601\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "4845656d-75b2-1246-bc8f-13d900000000", + "maxSizeInBytes": 42949672960, + "name": "14393.0.amd64fre.rs1_release.160715-1616_server_serveressentials_en-us", + "diskType": "Dynamic", + "lun": 0, + "path": "D:\\VHDs\\vhd_server_serveressentials_en-us\\14393.0.amd64fre.rs1_release.160715-1616_server_serveressentials_en-us.vhd" + } + ], + "networkAdapters": [ + { + "networkId": "QnJvYWRjb20gTmV0WHRyZW1lIEdpZ2FiaXQgRXRoZXJuZXQgLSBWaXJ0dWFsIFN3aXRjaA==", + "subnetName": "Broadcom NetXtreme Gigabit Ethernet - Virtual Switch", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:ED3324BB-D73F-4012-B5A7-58F3A5D44601\\5694A958-1E82-42A5-8EFB-85D77CAC763F", + "macAddress": "00:15:5d:0c:92:44", + "ipAddressList": [ + "10.150.13.137", + "fe80::44e2:af5d:fa6e:fcf9", + "2404:f801:4800:25:44e2:af5d:fa6e:fcf9" + ], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "WSEssential", + "numberOfProcessorCore": 8, + "allocatedMemoryInMB": 4096, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\ED3324BB-D73F-4012-B5A7-58F3A5D44601.vmcx", + "operatingSystemDetails": { + "osType": null, + "osName": "Windows Server 2016 Essentials", + "osVersion": "10.0.14393" + }, + "createdTimestamp": "2019-05-09T07:56:11.8263932Z", + "updatedTimestamp": "2019-05-14T07:01:18.7183952Z", + "instanceUuid": "ed3324bb-d73f-4012-b5a7-58f3a5d44601", + "powerStatus": "Running", + "biosSerialNumber": "4780-8967-4109-7601-4837-6793-66", + "vmFqdn": "WIN-TEASHKJT7DH", + "isDeleted": false, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/6ab71825-dd05-44f6-be0d-791bc0ee85d0", + "name": "6ab71825-dd05-44f6-be0d-791bc0ee85d0", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-46.ntdev.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-46-ntdev-corp-micros-e4638031-3b19-5642-926d-385da60cfb8a", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "8.0", + "highAvailability": "No", + "maxMemoryMB": 1048576, + "firmware": "BIOS", + "isDynamicMemoryEnabled": false, + "disks": [ + { + "instanceId": "Microsoft:6AB71825-DD05-44F6-BE0D-791BC0EE85D0\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "e5b03d4f-2b96-4d9d-b55b-81c7460eb207", + "maxSizeInBytes": 136365211648, + "name": "Linux-CentOS6.5-Gen1", + "diskType": "Dynamic", + "lun": 0, + "path": "c:\\VHDs\\Linux-CentOS6.5-Gen1.vhdx" + } + ], + "networkAdapters": [ + { + "networkId": "VmlydHVhbCBTd2l0Y2gtIE5JQzQ=", + "subnetName": "Virtual Switch- NIC4", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:6AB71825-DD05-44F6-BE0D-791BC0EE85D0\\3068D962-E6C2-4FAB-B305-7B0FE6532E80", + "macAddress": "00:15:5d:0a:58:0c", + "ipAddressList": [], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "CentOS", + "numberOfProcessorCore": 1, + "allocatedMemoryInMB": 2048, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\6AB71825-DD05-44F6-BE0D-791BC0EE85D0.vmcx", + "operatingSystemDetails": { + "osType": null, + "osName": null, + "osVersion": null + }, + "createdTimestamp": "2019-05-09T07:56:11.8420648Z", + "updatedTimestamp": "2019-05-14T07:01:18.7183952Z", + "instanceUuid": "6ab71825-dd05-44f6-be0d-791bc0ee85d0", + "powerStatus": "Running", + "biosSerialNumber": "9003-1248-9082-3222-2074-4726-50", + "vmFqdn": "", + "isDeleted": false, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/78be130c-418c-49cd-b89d-8f8f68371d05", + "name": "78be130c-418c-49cd-b89d-8f8f68371d05", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-46.ntdev.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-46-ntdev-corp-micros-e4638031-3b19-5642-926d-385da60cfb8a", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "8.0", + "highAvailability": "No", + "maxMemoryMB": 1048576, + "firmware": "BIOS", + "isDynamicMemoryEnabled": false, + "disks": [ + { + "instanceId": "Microsoft:78BE130C-418C-49CD-B89D-8F8F68371D05\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "4845656d-75b2-1246-bc8f-13d900000000", + "maxSizeInBytes": 42949672960, + "name": "14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us", + "diskType": "Dynamic", + "lun": 0, + "path": "C:\\VHDs\\AzureMigrateAppliance-mamudd\\14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us.vhd" + } + ], + "networkAdapters": [ + { + "networkId": "VmlydHVhbCBTd2l0Y2gtIE5JQzQ=", + "subnetName": "Virtual Switch- NIC4", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:78BE130C-418C-49CD-B89D-8F8F68371D05\\183B5209-16F9-407E-86B8-377BB83A0C8E", + "macAddress": "00:15:5d:0a:58:17", + "ipAddressList": [ + "10.150.9.208", + "fe80::d57f:a068:2022:1c31", + "2404:f801:4800:25:d57f:a068:2022:1c31" + ], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "AzureMigrateAppliance-mammud", + "numberOfProcessorCore": 1, + "allocatedMemoryInMB": 2048, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\78BE130C-418C-49CD-B89D-8F8F68371D05.vmcx", + "operatingSystemDetails": { + "osType": null, + "osName": "Windows Server 2016 Datacenter Evaluation", + "osVersion": "10.0.14393" + }, + "createdTimestamp": "2019-05-09T07:56:11.8420648Z", + "updatedTimestamp": "2019-05-14T07:01:18.7339598Z", + "instanceUuid": "78be130c-418c-49cd-b89d-8f8f68371d05", + "powerStatus": "Running", + "biosSerialNumber": "7407-3604-4544-7930-7587-9857-32", + "vmFqdn": "WIN-OEF2MV9HBC0", + "isDeleted": false, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/9e912d68-06a7-4c76-b762-171e240bf09d", + "name": "9e912d68-06a7-4c76-b762-171e240bf09d", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-48.fareast.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-48-fareast-corp-micr-691cb67f-3474-55ee-b376-63a93b276ed6", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "8.0", + "highAvailability": "No", + "maxMemoryMB": 1048576, + "firmware": "BIOS", + "isDynamicMemoryEnabled": false, + "disks": [ + { + "instanceId": "Microsoft:9E912D68-06A7-4C76-B762-171E240BF09D\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "84d519f0-b196-484a-8717-0e56235d8438", + "maxSizeInBytes": 136365211648, + "name": "ISOAttachedVM", + "diskType": "Dynamic", + "lun": 0, + "path": "C:\\Users\\Public\\Documents\\Hyper-V\\Virtual Hard Disks\\ISOAttachedVM.vhdx" + } + ], + "networkAdapters": [ + { + "networkId": "QnJvYWRjb20gTmV0WHRyZW1lIEdpZ2FiaXQgRXRoZXJuZXQgLSBWaXJ0dWFsIFN3aXRjaA==", + "subnetName": "Broadcom NetXtreme Gigabit Ethernet - Virtual Switch", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:9E912D68-06A7-4C76-B762-171E240BF09D\\0880FE0B-A000-46EF-9B87-2F1E4E57F7EA", + "macAddress": "00:00:00:00:00:00", + "ipAddressList": [], + "networkName": null, + "ipAddressType": "Dynamic" + }, + { + "networkId": "", + "subnetName": "", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:9E912D68-06A7-4C76-B762-171E240BF09D\\787FB221-4AA8-444A-9A66-9F56E12D2B98", + "macAddress": "00:00:00:00:00:00", + "ipAddressList": [], + "networkName": null, + "ipAddressType": "Dynamic" + }, + { + "networkId": "", + "subnetName": "", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:9E912D68-06A7-4C76-B762-171E240BF09D\\718032DA-6EFB-4EF4-8152-9A2FBDA945BF\\0", + "macAddress": "00:00:00:00:00:00", + "ipAddressList": null, + "networkName": null, + "ipAddressType": null + } + ], + "displayName": "ISOAttachedVM", + "numberOfProcessorCore": 3, + "allocatedMemoryInMB": 1024, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\9E912D68-06A7-4C76-B762-171E240BF09D.vmcx", + "operatingSystemDetails": { + "osType": null, + "osName": null, + "osVersion": null + }, + "createdTimestamp": "2019-05-09T07:56:11.8576382Z", + "updatedTimestamp": "2019-05-14T07:01:18.7496312Z", + "instanceUuid": "9e912d68-06a7-4c76-b762-171e240bf09d", + "powerStatus": "PowerOff", + "biosSerialNumber": "3715-6060-7222-2396-6105-4920-81", + "vmFqdn": "", + "isDeleted": false, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/59429fa6-644a-4b8a-9a2f-30b333919788", + "name": "59429fa6-644a-4b8a-9a2f-30b333919788", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-46.ntdev.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-46-ntdev-corp-micros-e4638031-3b19-5642-926d-385da60cfb8a", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "5.0", + "highAvailability": "No", + "maxMemoryMB": 16384, + "firmware": "BIOS", + "isDynamicMemoryEnabled": true, + "disks": [ + { + "instanceId": "Microsoft:59429FA6-644A-4B8A-9A2F-30B333919788\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "4845656d-75b2-1246-bc8f-13d900000000", + "maxSizeInBytes": 42949672960, + "name": "14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us", + "diskType": "Dynamic", + "lun": 0, + "path": "C:\\Users\\Public\\Documents\\Hyper-V\\Virtual Hard Disks\\Madhavi\\14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us.vhd" + } + ], + "networkAdapters": [ + { + "networkId": "VmlydHVhbCBTd2l0Y2gtIE5JQzQ=", + "subnetName": "Virtual Switch- NIC4", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:59429FA6-644A-4B8A-9A2F-30B333919788\\9621A776-FE27-4E22-B4B2-1B7B80568D63", + "macAddress": "00:15:5d:0a:58:1f", + "ipAddressList": [ + "10.150.14.29", + "fe80::9dca:2b9d:d02a:64a3", + "2404:f801:4800:25:9dca:2b9d:d02a:64a3" + ], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "AzureMigrateAppliance_v1.19.05.09_Madhavi", + "numberOfProcessorCore": 8, + "allocatedMemoryInMB": 8192, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\59429FA6-644A-4B8A-9A2F-30B333919788.xml", + "operatingSystemDetails": { + "osType": null, + "osName": "Windows Server 2016 Datacenter Evaluation", + "osVersion": "10.0.14393" + }, + "createdTimestamp": "2019-05-09T08:23:03.9890985Z", + "updatedTimestamp": "2019-05-14T07:01:18.6715166Z", + "instanceUuid": "59429fa6-644a-4b8a-9a2f-30b333919788", + "powerStatus": "Running", + "biosSerialNumber": "6707-1095-4598-5876-9535-2181-00", + "vmFqdn": "WIN-VC5PRVSDQUD", + "isDeleted": false, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/8f4a07fb-f0d1-41d9-8815-5fcdd5019595", + "name": "8f4a07fb-f0d1-41d9-8815-5fcdd5019595", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-48.fareast.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-48-fareast-corp-micr-691cb67f-3474-55ee-b376-63a93b276ed6", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "5.0", + "highAvailability": "No", + "maxMemoryMB": 16384, + "firmware": "BIOS", + "isDynamicMemoryEnabled": true, + "disks": [ + { + "instanceId": "Microsoft:8F4A07FB-F0D1-41D9-8815-5FCDD5019595\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "4845656d-75b2-1246-bc8f-13d900000000", + "maxSizeInBytes": 42949672960, + "name": "14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us", + "diskType": "Dynamic", + "lun": 0, + "path": "D:\\rahasija\\HyperV\\Virtual Hard Disks\\14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us.vhd" + } + ], + "networkAdapters": [ + { + "networkId": "QnJvYWRjb20gTmV0WHRyZW1lIEdpZ2FiaXQgRXRoZXJuZXQgLSBWaXJ0dWFsIFN3aXRjaA==", + "subnetName": "Broadcom NetXtreme Gigabit Ethernet - Virtual Switch", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:8F4A07FB-F0D1-41D9-8815-5FCDD5019595\\9621A776-FE27-4E22-B4B2-1B7B80568D63", + "macAddress": "00:15:5d:0c:92:cb", + "ipAddressList": [], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "rahasijaBugash0509", + "numberOfProcessorCore": 8, + "allocatedMemoryInMB": 8192, + "vmConfigurationFileLocation": "D:\\rahasija\\HyperV\\Virtual Machines\\8F4A07FB-F0D1-41D9-8815-5FCDD5019595.xml", + "operatingSystemDetails": { + "osType": null, + "osName": null, + "osVersion": null + }, + "createdTimestamp": "2019-05-09T09:03:53.2432706Z", + "updatedTimestamp": "2019-05-14T07:01:18.4995887Z", + "instanceUuid": "8f4a07fb-f0d1-41d9-8815-5fcdd5019595", + "powerStatus": "PowerOff", + "biosSerialNumber": "6707-1095-4598-5876-9535-2181-00", + "vmFqdn": "", + "isDeleted": false, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/304eb784-bac5-4db6-a377-24073a5986d1", + "name": "304eb784-bac5-4db6-a377-24073a5986d1", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-46.ntdev.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-46-ntdev-corp-micros-e4638031-3b19-5642-926d-385da60cfb8a", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "5.0", + "highAvailability": "No", + "maxMemoryMB": 16384, + "firmware": "BIOS", + "isDynamicMemoryEnabled": true, + "disks": [ + { + "instanceId": "Microsoft:304EB784-BAC5-4DB6-A377-24073A5986D1\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "4845656d-75b2-1246-bc8f-13d900000000", + "maxSizeInBytes": 42949672960, + "name": "14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us", + "diskType": "Dynamic", + "lun": 0, + "path": "C:\\Users\\Public\\Documents\\Hyper-V\\Virtual Hard Disks\\kuchaturBB02\\14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us.vhd" + } + ], + "networkAdapters": [ + { + "networkId": "VmlydHVhbCBTd2l0Y2gtIE5JQzQ=", + "subnetName": "Virtual Switch- NIC4", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:304EB784-BAC5-4DB6-A377-24073A5986D1\\9621A776-FE27-4E22-B4B2-1B7B80568D63", + "macAddress": "00:15:5d:0a:58:20", + "ipAddressList": [ + "10.150.9.159", + "fe80::510b:c816:e4c1:f64e", + "2404:f801:4800:25:510b:c816:e4c1:f64e" + ], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "AzureMigrateAppliance_v1.19.05.09_Kunal02", + "numberOfProcessorCore": 8, + "allocatedMemoryInMB": 8192, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\304EB784-BAC5-4DB6-A377-24073A5986D1.xml", + "operatingSystemDetails": { + "osType": null, + "osName": "Windows Server 2016 Datacenter Evaluation", + "osVersion": "10.0.14393" + }, + "createdTimestamp": "2019-05-09T10:53:02.4465824Z", + "updatedTimestamp": "2019-05-14T07:01:18.7496312Z", + "instanceUuid": "304eb784-bac5-4db6-a377-24073a5986d1", + "powerStatus": "Running", + "biosSerialNumber": "6707-1095-4598-5876-9535-2181-00", + "vmFqdn": "WIN-A8K9I2PTPR2", + "isDeleted": false, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/ccbb851a-0e4e-4284-9e3f-1336bc62528d", + "name": "ccbb851a-0e4e-4284-9e3f-1336bc62528d", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-46.ntdev.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-46-ntdev-corp-micros-e4638031-3b19-5642-926d-385da60cfb8a", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "5.0", + "highAvailability": "No", + "maxMemoryMB": 16384, + "firmware": "BIOS", + "isDynamicMemoryEnabled": true, + "disks": [ + { + "instanceId": "Microsoft:CCBB851A-0E4E-4284-9E3F-1336BC62528D\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "4845656d-75b2-1246-bc8f-13d900000000", + "maxSizeInBytes": 42949672960, + "name": "14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us", + "diskType": "Dynamic", + "lun": 0, + "path": "C:\\VHDs\\vamsi-ga-1\\14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us.vhd" + } + ], + "networkAdapters": [ + { + "networkId": "VmlydHVhbCBTd2l0Y2gtIE5JQzQ=", + "subnetName": "Virtual Switch- NIC4", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:CCBB851A-0E4E-4284-9E3F-1336BC62528D\\9621A776-FE27-4E22-B4B2-1B7B80568D63", + "macAddress": "00:15:5d:0a:58:21", + "ipAddressList": [ + "10.150.13.73", + "fe80::4097:bbda:cb91:94ee", + "2404:f801:4800:25:4097:bbda:cb91:94ee" + ], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "Vamsi1-AzureMigrateAppliance_v1.19.05.09", + "numberOfProcessorCore": 8, + "allocatedMemoryInMB": 8192, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\CCBB851A-0E4E-4284-9E3F-1336BC62528D.xml", + "operatingSystemDetails": { + "osType": null, + "osName": "Windows Server 2016 Datacenter Evaluation", + "osVersion": "10.0.14393" + }, + "createdTimestamp": "2019-05-09T12:53:02.7731781Z", + "updatedTimestamp": "2019-05-14T07:01:18.640232Z", + "instanceUuid": "ccbb851a-0e4e-4284-9e3f-1336bc62528d", + "powerStatus": "Running", + "biosSerialNumber": "6707-1095-4598-5876-9535-2181-00", + "vmFqdn": "WIN-4RS2CC5DSSO", + "isDeleted": false, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/df0c5121-164d-455e-9a20-2e9b0adb3a90", + "name": "df0c5121-164d-455e-9a20-2e9b0adb3a90", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-48.fareast.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-48-fareast-corp-micr-691cb67f-3474-55ee-b376-63a93b276ed6", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "8.0", + "highAvailability": "No", + "maxMemoryMB": 1048576, + "firmware": "BIOS", + "isDynamicMemoryEnabled": false, + "disks": [ + { + "instanceId": "Microsoft:DF0C5121-164D-455E-9A20-2E9B0ADB3A90\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "4845656d-75b2-1246-bc8f-13d900000000", + "maxSizeInBytes": 42949672960, + "name": "14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us", + "diskType": "Dynamic", + "lun": 0, + "path": "E:\\VHDAutomation\\VHDPath\\14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us.vhd" + } + ], + "networkAdapters": [ + { + "networkId": "QnJvYWRjb20gTmV0WHRyZW1lIEdpZ2FiaXQgRXRoZXJuZXQgLSBWaXJ0dWFsIFN3aXRjaA==", + "subnetName": "Broadcom NetXtreme Gigabit Ethernet - Virtual Switch", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:DF0C5121-164D-455E-9A20-2E9B0ADB3A90\\AC1AD8FB-F25A-41B1-A0CC-2DB129C18283", + "macAddress": "00:15:5d:0c:92:cc", + "ipAddressList": [], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "Test", + "numberOfProcessorCore": 8, + "allocatedMemoryInMB": 4096, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\DF0C5121-164D-455E-9A20-2E9B0ADB3A90.vmcx", + "operatingSystemDetails": { + "osType": null, + "osName": null, + "osVersion": null + }, + "createdTimestamp": "2019-05-10T11:53:06.3105265Z", + "updatedTimestamp": "2019-05-15T12:02:02.6815934Z", + "instanceUuid": "df0c5121-164d-455e-9a20-2e9b0adb3a90", + "powerStatus": "PowerOff", + "biosSerialNumber": "4103-3029-5928-5904-7855-3799-41", + "vmFqdn": "", + "isDeleted": true, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/328ce110-bc29-449d-af6f-d57d0c16602c", + "name": "328ce110-bc29-449d-af6f-d57d0c16602c", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-48.fareast.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-48-fareast-corp-micr-691cb67f-3474-55ee-b376-63a93b276ed6", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "5.0", + "highAvailability": "No", + "maxMemoryMB": 16384, + "firmware": "BIOS", + "isDynamicMemoryEnabled": true, + "disks": [ + { + "instanceId": "Microsoft:328CE110-BC29-449D-AF6F-D57D0C16602C\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "10b70c27-0b16-4dea-83a2-baeb093514e7", + "maxSizeInBytes": 42949672960, + "name": "14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us_2B73C7AA-EA47-48B8-91E4-C5F93225DA67", + "diskType": "Differencing", + "lun": 0, + "path": "E:\\VHDAutomation\\VHDPath\\14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us_2B73C7AA-EA47-48B8-91E4-C5F93225DA67.avhd" + } + ], + "networkAdapters": [ + { + "networkId": "QnJvYWRjb20gTmV0WHRyZW1lIEdpZ2FiaXQgRXRoZXJuZXQgLSBWaXJ0dWFsIFN3aXRjaA==", + "subnetName": "Broadcom NetXtreme Gigabit Ethernet - Virtual Switch", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:328CE110-BC29-449D-AF6F-D57D0C16602C\\EB437799-FBAE-494E-ABB3-723120435537", + "macAddress": "00:15:5d:0c:92:cd", + "ipAddressList": [ + "10.150.9.220", + "fe80::d451:64ad:3b59:9136", + "2404:f801:4800:25:d451:64ad:3b59:9136" + ], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "AzureMigrateAppliance_v1.19.05.10", + "numberOfProcessorCore": 8, + "allocatedMemoryInMB": 8192, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\328CE110-BC29-449D-AF6F-D57D0C16602C.xml", + "operatingSystemDetails": { + "osType": null, + "osName": "Windows Server 2016 Datacenter Evaluation", + "osVersion": "10.0.14393" + }, + "createdTimestamp": "2019-05-10T14:23:07.459259Z", + "updatedTimestamp": "2019-05-15T12:02:02.6972359Z", + "instanceUuid": "328ce110-bc29-449d-af6f-d57d0c16602c", + "powerStatus": "Running", + "biosSerialNumber": "1433-5871-9190-1858-3027-5681-64", + "vmFqdn": "WIN-O06N8M378GP", + "isDeleted": true, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/8f07e954-90fe-4567-a358-d6c6e9625503", + "name": "8f07e954-90fe-4567-a358-d6c6e9625503", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-48.fareast.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-48-fareast-corp-micr-691cb67f-3474-55ee-b376-63a93b276ed6", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "8.0", + "highAvailability": "No", + "maxMemoryMB": 1048576, + "firmware": "BIOS", + "isDynamicMemoryEnabled": false, + "disks": [ + { + "instanceId": "Microsoft:8F07E954-90FE-4567-A358-D6C6E9625503\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "4845656d-75b2-1246-bc8f-13d900000000", + "maxSizeInBytes": 42949672960, + "name": "14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us", + "diskType": "Dynamic", + "lun": 0, + "path": "E:\\VHDAutomation\\VHDPath\\14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us.vhd" + } + ], + "networkAdapters": [ + { + "networkId": "QnJvYWRjb20gTmV0WHRyZW1lIEdpZ2FiaXQgRXRoZXJuZXQgLSBWaXJ0dWFsIFN3aXRjaA==", + "subnetName": "Broadcom NetXtreme Gigabit Ethernet - Virtual Switch", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:8F07E954-90FE-4567-A358-D6C6E9625503\\66420E45-09C4-4285-80A4-415A4DE21770", + "macAddress": "00:15:5d:0c:92:ce", + "ipAddressList": [], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "Test", + "numberOfProcessorCore": 8, + "allocatedMemoryInMB": 4096, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\8F07E954-90FE-4567-A358-D6C6E9625503.vmcx", + "operatingSystemDetails": { + "osType": null, + "osName": null, + "osVersion": null + }, + "createdTimestamp": "2019-05-15T12:02:02.650338Z", + "updatedTimestamp": "2019-05-16T00:31:59.361658Z", + "instanceUuid": "8f07e954-90fe-4567-a358-d6c6e9625503", + "powerStatus": "PowerOff", + "biosSerialNumber": "6719-1523-3413-9109-3955-3485-46", + "vmFqdn": "", + "isDeleted": true, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/7d43ce9c-20bc-4a78-a3a0-4e7b9670c591", + "name": "7d43ce9c-20bc-4a78-a3a0-4e7b9670c591", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-48.fareast.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-48-fareast-corp-micr-691cb67f-3474-55ee-b376-63a93b276ed6", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "5.0", + "highAvailability": "No", + "maxMemoryMB": 16384, + "firmware": "BIOS", + "isDynamicMemoryEnabled": true, + "disks": [ + { + "instanceId": "Microsoft:7D43CE9C-20BC-4A78-A3A0-4E7B9670C591\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "b7904dd4-5813-4354-85e1-056cafc41482", + "maxSizeInBytes": 42949672960, + "name": "14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us_A9A82863-8AA6-4B4A-AA0D-524E62E64FFC", + "diskType": "Differencing", + "lun": 0, + "path": "E:\\VHDAutomation\\VHDPath\\14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us_A9A82863-8AA6-4B4A-AA0D-524E62E64FFC.avhd" + } + ], + "networkAdapters": [ + { + "networkId": "QnJvYWRjb20gTmV0WHRyZW1lIEdpZ2FiaXQgRXRoZXJuZXQgLSBWaXJ0dWFsIFN3aXRjaA==", + "subnetName": "Broadcom NetXtreme Gigabit Ethernet - Virtual Switch", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:7D43CE9C-20BC-4A78-A3A0-4E7B9670C591\\BC13125D-A56E-4CE4-AD47-DED3523DAB53", + "macAddress": "00:15:5d:0c:92:cf", + "ipAddressList": [ + "10.150.9.225", + "fe80::7026:aa77:f5a1:ac54", + "2404:f801:4800:25:7026:aa77:f5a1:ac54" + ], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "AzureMigrateAppliance_v1.19.05.15", + "numberOfProcessorCore": 8, + "allocatedMemoryInMB": 8192, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\7D43CE9C-20BC-4A78-A3A0-4E7B9670C591.xml", + "operatingSystemDetails": { + "osType": null, + "osName": "Windows Server 2016 Datacenter Evaluation", + "osVersion": "10.0.14393" + }, + "createdTimestamp": "2019-05-15T14:02:04.1961757Z", + "updatedTimestamp": "2019-05-16T00:31:59.3460092Z", + "instanceUuid": "7d43ce9c-20bc-4a78-a3a0-4e7b9670c591", + "powerStatus": "Running", + "biosSerialNumber": "8340-4355-4482-4399-2569-2180-82", + "vmFqdn": "WIN-EHIVHPB2BVJ", + "isDeleted": true, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/b343b5ec-aa25-4c33-a55f-1ec7422700a8", + "name": "b343b5ec-aa25-4c33-a55f-1ec7422700a8", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-48.fareast.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-48-fareast-corp-micr-691cb67f-3474-55ee-b376-63a93b276ed6", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "5.0", + "highAvailability": "No", + "maxMemoryMB": 16384, + "firmware": "BIOS", + "isDynamicMemoryEnabled": true, + "disks": [ + { + "instanceId": "Microsoft:B343B5EC-AA25-4C33-A55F-1EC7422700A8\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "4845656d-75b2-1246-bc8f-13d900000000", + "maxSizeInBytes": 42949672960, + "name": "14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us", + "diskType": "Dynamic", + "lun": 0, + "path": "E:\\vaindana\\VHD\\14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us.vhd" + } + ], + "networkAdapters": [ + { + "networkId": "QnJvYWRjb20gTmV0WHRyZW1lIEdpZ2FiaXQgRXRoZXJuZXQgLSBWaXJ0dWFsIFN3aXRjaA==", + "subnetName": "Broadcom NetXtreme Gigabit Ethernet - Virtual Switch", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:B343B5EC-AA25-4C33-A55F-1EC7422700A8\\BC13125D-A56E-4CE4-AD47-DED3523DAB53", + "macAddress": "00:15:5d:0c:92:d0", + "ipAddressList": [ + "10.150.13.145", + "fe80::584a:7b90:c043:257e", + "2404:f801:4800:25:584a:7b90:c043:257e" + ], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "Vamsi-AzureMigrateAppliance_v1.19.05.15", + "numberOfProcessorCore": 8, + "allocatedMemoryInMB": 8192, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\B343B5EC-AA25-4C33-A55F-1EC7422700A8.xml", + "operatingSystemDetails": { + "osType": null, + "osName": "Windows Server 2016 Datacenter Evaluation", + "osVersion": "10.0.14393" + }, + "createdTimestamp": "2019-05-15T16:32:05.6613468Z", + "updatedTimestamp": "2019-05-15T16:32:05.6613468Z", + "instanceUuid": "b343b5ec-aa25-4c33-a55f-1ec7422700a8", + "powerStatus": "Running", + "biosSerialNumber": "8340-4355-4482-4399-2569-2180-82", + "vmFqdn": "WIN-9KSSLIRK992", + "isDeleted": false, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/a0955ab6-eb5b-418a-9164-12f113e647d4", + "name": "a0955ab6-eb5b-418a-9164-12f113e647d4", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-48.fareast.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-48-fareast-corp-micr-691cb67f-3474-55ee-b376-63a93b276ed6", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "8.0", + "highAvailability": "No", + "maxMemoryMB": 1048576, + "firmware": "BIOS", + "isDynamicMemoryEnabled": false, + "disks": [ + { + "instanceId": "Microsoft:A0955AB6-EB5B-418A-9164-12F113E647D4\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "4845656d-75b2-1246-bc8f-13d900000000", + "maxSizeInBytes": 42949672960, + "name": "14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us", + "diskType": "Dynamic", + "lun": 0, + "path": "E:\\VHDAutomation\\VHDPath\\14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us.vhd" + } + ], + "networkAdapters": [ + { + "networkId": "QnJvYWRjb20gTmV0WHRyZW1lIEdpZ2FiaXQgRXRoZXJuZXQgLSBWaXJ0dWFsIFN3aXRjaA==", + "subnetName": "Broadcom NetXtreme Gigabit Ethernet - Virtual Switch", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:A0955AB6-EB5B-418A-9164-12F113E647D4\\C041D435-F83C-4B7C-8D0D-9979B21C789D", + "macAddress": "00:15:5d:0c:92:d1", + "ipAddressList": [], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "Test", + "numberOfProcessorCore": 8, + "allocatedMemoryInMB": 4096, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\A0955AB6-EB5B-418A-9164-12F113E647D4.vmcx", + "operatingSystemDetails": { + "osType": null, + "osName": null, + "osVersion": null + }, + "createdTimestamp": "2019-05-16T01:02:02.9558576Z", + "updatedTimestamp": "2019-05-17T00:32:02.5378357Z", + "instanceUuid": "a0955ab6-eb5b-418a-9164-12f113e647d4", + "powerStatus": "PowerOff", + "biosSerialNumber": "1588-2087-3284-3231-3594-2611-79", + "vmFqdn": "", + "isDeleted": true, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/ac334699-a6f6-4975-bac2-d24ee455962c", + "name": "ac334699-a6f6-4975-bac2-d24ee455962c", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-48.fareast.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-48-fareast-corp-micr-691cb67f-3474-55ee-b376-63a93b276ed6", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "5.0", + "highAvailability": "No", + "maxMemoryMB": 16384, + "firmware": "BIOS", + "isDynamicMemoryEnabled": true, + "disks": [ + { + "instanceId": "Microsoft:AC334699-A6F6-4975-BAC2-D24EE455962C\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "4845656d-75b2-1246-bc8f-13d900000000", + "maxSizeInBytes": 42949672960, + "name": "14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us", + "diskType": "Dynamic", + "lun": 0, + "path": "E:\\VHDAutomation\\VHDPath\\14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us.vhd" + } + ], + "networkAdapters": [ + { + "networkId": "QnJvYWRjb20gTmV0WHRyZW1lIEdpZ2FiaXQgRXRoZXJuZXQgLSBWaXJ0dWFsIFN3aXRjaA==", + "subnetName": "Broadcom NetXtreme Gigabit Ethernet - Virtual Switch", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:AC334699-A6F6-4975-BAC2-D24EE455962C\\E34FE1C2-FEF7-46D0-B35A-7E9401B4C3CA", + "macAddress": "00:15:5d:0c:92:d2", + "ipAddressList": [ + "10.150.9.176", + "fe80::d25:c354:5be:9547", + "2404:f801:4800:25:d25:c354:5be:9547" + ], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "AzureMigrateAppliance_v1.19.05.16", + "numberOfProcessorCore": 8, + "allocatedMemoryInMB": 8192, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\AC334699-A6F6-4975-BAC2-D24EE455962C.xml", + "operatingSystemDetails": { + "osType": null, + "osName": "Windows Server 2016 Datacenter Evaluation", + "osVersion": "10.0.14393" + }, + "createdTimestamp": "2019-05-16T02:32:01.7647451Z", + "updatedTimestamp": "2019-05-17T00:32:02.5378357Z", + "instanceUuid": "ac334699-a6f6-4975-bac2-d24ee455962c", + "powerStatus": "Running", + "biosSerialNumber": "0029-6339-8282-3741-9331-0247-99", + "vmFqdn": "WIN-L4SQKQV73T6", + "isDeleted": true, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/c6382927-93a4-4a9f-bb65-0630f3fdf713", + "name": "c6382927-93a4-4a9f-bb65-0630f3fdf713", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-48.fareast.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-48-fareast-corp-micr-691cb67f-3474-55ee-b376-63a93b276ed6", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "8.0", + "highAvailability": "No", + "maxMemoryMB": 1048576, + "firmware": "BIOS", + "isDynamicMemoryEnabled": false, + "disks": [ + { + "instanceId": "Microsoft:C6382927-93A4-4A9F-BB65-0630F3FDF713\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "4845656d-75b2-1246-bc8f-13d900000000", + "maxSizeInBytes": 42949672960, + "name": "14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us", + "diskType": "Dynamic", + "lun": 0, + "path": "E:\\VHDAutomation\\VHDPath\\14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us.vhd" + } + ], + "networkAdapters": [ + { + "networkId": "QnJvYWRjb20gTmV0WHRyZW1lIEdpZ2FiaXQgRXRoZXJuZXQgLSBWaXJ0dWFsIFN3aXRjaA==", + "subnetName": "Broadcom NetXtreme Gigabit Ethernet - Virtual Switch", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:C6382927-93A4-4A9F-BB65-0630F3FDF713\\051D0A1B-F760-4275-B42B-999CEE4443D8", + "macAddress": "00:15:5d:0c:92:d3", + "ipAddressList": [], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "Test", + "numberOfProcessorCore": 8, + "allocatedMemoryInMB": 4096, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\C6382927-93A4-4A9F-BB65-0630F3FDF713.vmcx", + "operatingSystemDetails": { + "osType": null, + "osName": null, + "osVersion": null + }, + "createdTimestamp": "2019-05-17T01:02:04.0322711Z", + "updatedTimestamp": "2019-05-17T02:32:05.7227028Z", + "instanceUuid": "c6382927-93a4-4a9f-bb65-0630f3fdf713", + "powerStatus": "PowerOff", + "biosSerialNumber": "2572-6880-9740-7445-0045-5654-24", + "vmFqdn": "", + "isDeleted": false, + "errors": [] + } + }, + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/machines/a47c9ea9-4388-49fc-918b-4598f201190b", + "name": "a47c9ea9-4388-49fc-918b-4598f201190b", + "type": "Microsoft.OffAzure/HyperVSites/machines", + "properties": { + "hostFqdn": "BCDR-EWLAB-48.fareast.corp.microsoft.com", + "hostId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/hosts/bcdr-ewlab-48-fareast-corp-micr-691cb67f-3474-55ee-b376-63a93b276ed6", + "clusterFqdn": null, + "clusterId": null, + "managementServerType": "Host", + "generation": 1, + "version": "5.0", + "highAvailability": "No", + "maxMemoryMB": 16384, + "firmware": "BIOS", + "isDynamicMemoryEnabled": true, + "disks": [ + { + "instanceId": "Microsoft:A47C9EA9-4388-49FC-918B-4598F201190B\\83F8638B-8DCA-4152-9EDA-2CA8B33039B4\\0\\0\\L", + "vhdId": "4845656d-75b2-1246-bc8f-13d900000000", + "maxSizeInBytes": 42949672960, + "name": "14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us", + "diskType": "Dynamic", + "lun": 0, + "path": "E:\\VHDAutomation\\VHDPath\\14393.0.amd64fre.rs1_release.160715-1616_server_serverdatacentereval_en-us.vhd" + } + ], + "networkAdapters": [ + { + "networkId": "QnJvYWRjb20gTmV0WHRyZW1lIEdpZ2FiaXQgRXRoZXJuZXQgLSBWaXJ0dWFsIFN3aXRjaA==", + "subnetName": "Broadcom NetXtreme Gigabit Ethernet - Virtual Switch", + "staticIpAddress": null, + "nicType": "NicType", + "nicId": "Microsoft:A47C9EA9-4388-49FC-918B-4598F201190B\\E1D29E95-1D19-4F52-B2D9-C475211BC4F3", + "macAddress": "00:00:00:00:00:00", + "ipAddressList": [], + "networkName": null, + "ipAddressType": "Dynamic" + } + ], + "displayName": "AzureMigrateAppliance_v1.19.05.17", + "numberOfProcessorCore": 8, + "allocatedMemoryInMB": 8192, + "vmConfigurationFileLocation": "C:\\ProgramData\\Microsoft\\Windows\\Hyper-V\\Virtual Machines\\A47C9EA9-4388-49FC-918B-4598F201190B.xml", + "operatingSystemDetails": { + "osType": null, + "osName": null, + "osVersion": null + }, + "createdTimestamp": "2019-05-17T02:32:05.7383069Z", + "updatedTimestamp": "2019-05-17T02:32:05.7383069Z", + "instanceUuid": "a47c9ea9-4388-49fc-918b-4598f201190b", + "powerStatus": "PowerOff", + "biosSerialNumber": "5276-4257-5155-5813-6540-4460-63", + "vmFqdn": "", + "isDeleted": false, + "errors": [] + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVOperationsStatus_Get.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVOperationsStatus_Get.json new file mode 100644 index 000000000000..654306ec52d4 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVOperationsStatus_Get.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "resourceGroupName": "myResourceGroup", + "siteName": "pajind_site1", + "operationStatusName": "996212ae-5c5f-419f-bb11-6f5c9b1ad90d", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.OffAzure/hypervsites/pajind10/operationsstatus/996212ae-5c5f-419f-bb11-6f5c9b1ad90d", + "name": "996212ae-5c5f-419f-bb11-6f5c9b1ad90d", + "status": "Running", + "startTime": null, + "endTime": null, + "error": null, + "properties": { + "result": null + } + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVRunAsAccount_Get.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVRunAsAccount_Get.json new file mode 100644 index 000000000000..d8ed7da1f82b --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVRunAsAccount_Get.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "4bd2aa0f-2bd2-4d67-91a8-5a4533d58600", + "resourceGroupName": "pajindTest", + "siteName": "appliance1e39site", + "accountName": "account1", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/runasaccounts/account1", + "name": "account1", + "type": "Microsoft.OffAzure/HyperVSites/runasaccounts", + "properties": { + "displayName": "account1", + "credentialType": "LinuxServer", + "createdTimestamp": "2019-05-14T07:01:18.3434076Z", + "updatedTimestamp": "2019-05-14T07:01:18.3434076Z" + } + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVRunAsAccounts_ListBySite.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVRunAsAccounts_ListBySite.json new file mode 100644 index 000000000000..2d0217496f4c --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVRunAsAccounts_ListBySite.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "4bd2aa0f-2bd2-4d67-91a8-5a4533d58600", + "resourceGroupName": "pajindTest", + "siteName": "appliance1e39site", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site/runasaccounts/account1", + "name": "account1", + "type": "Microsoft.OffAzure/HyperVSites/runasaccounts", + "properties": { + "displayName": "account1", + "credentialType": "LinuxServer", + "createdTimestamp": "2019-05-14T07:01:18.3434076Z", + "updatedTimestamp": "2019-05-14T07:01:18.3434076Z" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVSiteHealthSummary_Post.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVSiteHealthSummary_Post.json new file mode 100644 index 000000000000..3fa8dbaebca0 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVSiteHealthSummary_Post.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "8c3c936a-c09b-4de3-830b-3f5f244d72e9", + "resourceGroupName": "HMWalkthroughDay1-Scale", + "siteName": "HyperV1acf8site", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "applianceName": "HyperV1", + "errorMessage": "Server: 'WIN-BVO0984D4J6' The WinRM client cannot process the request because the server name cannot be resolved.", + "summaryMessage": "Unable to connect to host(s) or cluster as name cannot be resolved. WinRM error code: 0x803381B9.", + "errorId": 50004, + "errorCode": "NameResolutionFailed", + "affectedObjectsCount": 2, + "hitCount": 2, + "severity": "Error", + "remediationGuidance": "Update the hosts file on the appliance. Learn more (https://aka.ms/migrate/hyperv/nameresolution).", + "affectedResourceType": "Microsoft.OffAzure/HyperVSites/hosts", + "affectedResources": [ + "win-bvo0984d4j6-c738a150-0ec3-598f-b872-833bfcea2818", + "win-pps0bm5lv04-db27b8f3-8214-573c-985f-8e3026a7d34c" + ] + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVSiteSummary_Post.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVSiteSummary_Post.json new file mode 100644 index 000000000000..25dcce4b63f9 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVSiteSummary_Post.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "4bd2aa0f-2bd2-4d67-91a8-5a4533d58600", + "resourceGroupName": "pajindTest", + "siteName": "appliance1e39site", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "machineCount": 30, + "runAsAccountCount": 1, + "hostCount": 2, + "clusterCount": 0 + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVSite_Create.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVSite_Create.json new file mode 100644 index 000000000000..a8db17906bbe --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVSite_Create.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "subscriptionId": "4bd2aa0f-2bd2-4d67-91a8-5a4533d58600", + "resourceGroupName": "pajindTest", + "siteName": "appliance1e39site", + "api-version": "2020-01-01", + "body": { + "location": "eastus", + "properties": { + "servicePrincipalIdentityDetails": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "applicationId": "e9f013df-2a2a-4871-b766-e79867f30348", + "objectId": "2cd492bc-7ef3-4ee0-b301-59a88108b47b", + "audience": "https://72f988bf-86f1-41af-91ab-2d7cd011db47/MaheshSite17ac9agentauthaadapp", + "aadAuthority": "https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site", + "name": "appliance1e39site", + "type": "Microsoft.OffAzure/HyperVSites", + "eTag": null, + "location": "eastus", + "properties": { + "servicePrincipalIdentityDetails": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "applicationId": "e9f013df-2a2a-4871-b766-e79867f30348", + "objectId": "2cd492bc-7ef3-4ee0-b301-59a88108b47b", + "audience": "https://72f988bf-86f1-41af-91ab-2d7cd011db47/MaheshSite17ac9agentauthaadapp", + "aadAuthority": "https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", + "rawCertData": "string" + }, + "agentDetails": { + "id": "eb250c36-82e2-51f8-bdb8-0e35c6814cc0-agent", + "version": null, + "lastHeartBeatUtc": null, + "keyVaultUri": "string", + "keyVaultId": "string" + }, + "serviceEndpoint": "https://localhost", + "discoverySolutionId": "string", + "applianceName": "string" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site", + "name": "appliance1e39site", + "type": "Microsoft.OffAzure/HyperVSites", + "eTag": null, + "location": "eastus", + "properties": { + "servicePrincipalIdentityDetails": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "applicationId": "e9f013df-2a2a-4871-b766-e79867f30348", + "objectId": "2cd492bc-7ef3-4ee0-b301-59a88108b47b", + "audience": "https://72f988bf-86f1-41af-91ab-2d7cd011db47/MaheshSite17ac9agentauthaadapp", + "aadAuthority": "https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", + "rawCertData": "string" + }, + "agentDetails": { + "id": "eb250c36-82e2-51f8-bdb8-0e35c6814cc0-agent", + "version": null, + "lastHeartBeatUtc": null, + "keyVaultUri": "string", + "keyVaultId": "string" + }, + "serviceEndpoint": "https://localhost", + "discoverySolutionId": "string", + "applianceName": "string" + } + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVSite_Delete.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVSite_Delete.json new file mode 100644 index 000000000000..07691494192f --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVSite_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "4bd2aa0f-2bd2-4d67-91a8-5a4533d58600", + "resourceGroupName": "pajindTest", + "siteName": "appliance1e39site", + "api-version": "2020-01-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVSite_Get.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVSite_Get.json new file mode 100644 index 000000000000..44fe96091650 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVSite_Get.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "4bd2aa0f-2bd2-4d67-91a8-5a4533d58600", + "resourceGroupName": "pajindTest", + "siteName": "appliance1e39site", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site", + "name": "appliance1e39site", + "type": "Microsoft.OffAzure/HyperVSites", + "location": "westeurope", + "properties": { + "servicePrincipalIdentityDetails": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "applicationId": "61635e77-1e11-4c57-86d1-a8bf45d027fe", + "objectId": "809f96f7-5c3b-45cf-a1ee-65b5d1689919", + "audience": "https://72f988bf-86f1-41af-91ab-2d7cd011db47/appliance1e39agentauthaadapp", + "aadAuthority": "https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", + "rawCertData": "MIIDNDCCAhygAwIBAgIQcG1waNhSQHq+QWMteouKoDANBgkqhkiG9w0BAQsFADAXMRUwEwYDVQQDEwxBZ2VudFNwbkNlcnQwHhcNMTkwNTA5MDc0MDQ5WhcNMjIwNTA5MDc1MDQ5WjAXMRUwEwYDVQQDEwxBZ2VudFNwbkNlcnQwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCovoqe6ey6QROBYESERRC8ZECO0jqsSDUWYtoFpEsgmvPa5ht3nqQAx7ODGzbV3eIPGHF2dRz2E4quvmo9g7DK4n5mukloE7zIVeo9WCdxF6ru13X6Q8aKCz6BLl10L9DpmKTeQwrbohKV+9HSE4K8wXB0flezTrcUzRZGQRbB3CInpPhRJfWVLIQuZngSJ3qZ/Y6ejYLA4dUdKHMyvjDcmc//VGczZPhfLxZc9t8bhxiiYopWyAkF6ZWCeEUsMcFuiBOft5lNHEFNRkRVgADBekDSK5iJqcvBIzOezbagZewvum2GviQEbe3yxQF+TygjLB8xLL1XVYop4Y4xRu2bAgMBAAGjfDB6MA4GA1UdDwEB/wQEAwIFoDAJBgNVHRMEAjAAMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjAfBgNVHSMEGDAWgBSFDL/nQvfZoLGuuw+fwSiFMi8CSTAdBgNVHQ4EFgQUhQy/50L32aCxrrsPn8EohTIvAkkwDQYJKoZIhvcNAQELBQADggEBADxJp9gLn7x6tp4fmApAoMBIghIJb36KJjT6sjGz9wsXNfH4S0kHQbgj8EAJpz8TlSBpjNmJ7DkwxorNn1BeG/DrnBvUJ9sNeI3rISCXrrw89CHy86uGXtn7BZ+2Co1UTHy98nkWK/1pPyMrSM8HxneWQGAa1bLKTclp+QRJNnQwJ9pEPuAr5BaWJkT737YkiE5NNcaaGDA5nLW91ARL5HNumtpwIDoN+l7OtAfRIgu83HFLeiqlVaR6x+7wtnA7n+fomIznBQ4vsoIclSPZ9vSaudT98TXN8m8CkQGEZi6w4gpmjQnXTehzvpdTbv1H+9iKsuPIDkjwiiLmr6mUbXs=" + }, + "agentDetails": { + "id": "09c46a1c-15a7-45cf-b2de-77a2fc9dd091-agent", + "version": "1.0.8.227", + "lastHeartBeatUtc": "2019-05-17T06:46:16.8227519Z", + "keyVaultUri": "https://appliance1e39kv.vault.azure.net", + "keyVaultId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.KeyVault/vaults/appliance1e39kv" + }, + "serviceEndpoint": "https://discoverysrv-we.prod.migration.windowsazure.com", + "discoverySolutionId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.Migrate/MigrateProjects/WestEuropeTest/Solutions/Servers-Discovery-ServerDiscovery", + "applianceName": "appliance" + } + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVSite_Patch.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVSite_Patch.json new file mode 100644 index 000000000000..f4be9094cfc9 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVSite_Patch.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "subscriptionId": "4bd2aa0f-2bd2-4d67-91a8-5a4533d58600", + "resourceGroupName": "pajindTest", + "siteName": "appliance1e39site", + "api-version": "2020-01-01", + "body": { + "location": "westeurope", + "properties": { + "servicePrincipalIdentityDetails": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "applicationId": "61635e77-1e11-4c57-86d1-a8bf45d027fe", + "objectId": "809f96f7-5c3b-45cf-a1ee-65b5d1689919", + "audience": "https://72f988bf-86f1-41af-91ab-2d7cd011db47/appliance1e39agentauthaadapp", + "aadAuthority": "https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", + "rawCertData": "MIIDNDCCAhygAwIBAgIQcG1waNhSQHq+QWMteouKoDANBgkqhkiG9w0BAQsFADAXMRUwEwYDVQQDEwxBZ2VudFNwbkNlcnQwHhcNMTkwNTA5MDc0MDQ5WhcNMjIwNTA5MDc1MDQ5WjAXMRUwEwYDVQQDEwxBZ2VudFNwbkNlcnQwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCovoqe6ey6QROBYESERRC8ZECO0jqsSDUWYtoFpEsgmvPa5ht3nqQAx7ODGzbV3eIPGHF2dRz2E4quvmo9g7DK4n5mukloE7zIVeo9WCdxF6ru13X6Q8aKCz6BLl10L9DpmKTeQwrbohKV+9HSE4K8wXB0flezTrcUzRZGQRbB3CInpPhRJfWVLIQuZngSJ3qZ/Y6ejYLA4dUdKHMyvjDcmc//VGczZPhfLxZc9t8bhxiiYopWyAkF6ZWCeEUsMcFuiBOft5lNHEFNRkRVgADBekDSK5iJqcvBIzOezbagZewvum2GviQEbe3yxQF+TygjLB8xLL1XVYop4Y4xRu2bAgMBAAGjfDB6MA4GA1UdDwEB/wQEAwIFoDAJBgNVHRMEAjAAMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjAfBgNVHSMEGDAWgBSFDL/nQvfZoLGuuw+fwSiFMi8CSTAdBgNVHQ4EFgQUhQy/50L32aCxrrsPn8EohTIvAkkwDQYJKoZIhvcNAQELBQADggEBADxJp9gLn7x6tp4fmApAoMBIghIJb36KJjT6sjGz9wsXNfH4S0kHQbgj8EAJpz8TlSBpjNmJ7DkwxorNn1BeG/DrnBvUJ9sNeI3rISCXrrw89CHy86uGXtn7BZ+2Co1UTHy98nkWK/1pPyMrSM8HxneWQGAa1bLKTclp+QRJNnQwJ9pEPuAr5BaWJkT737YkiE5NNcaaGDA5nLW91ARL5HNumtpwIDoN+l7OtAfRIgu83HFLeiqlVaR6x+7wtnA7n+fomIznBQ4vsoIclSPZ9vSaudT98TXN8m8CkQGEZi6w4gpmjQnXTehzvpdTbv1H+9iKsuPIDkjwiiLmr6mUbXs=" + }, + "agentDetails": { + "keyVaultUri": "https://appliance1e39kv.vault.azure.net", + "keyVaultId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.KeyVault/vaults/appliance1e39kv" + }, + "discoverySolutionId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.Migrate/MigrateProjects/WestEuropeTest/Solutions/Servers-Discovery-ServerDiscovery", + "applianceName": "appliance" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site", + "name": "appliance1e39site", + "location": "westeurope", + "properties": { + "servicePrincipalIdentityDetails": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "applicationId": "61635e77-1e11-4c57-86d1-a8bf45d027fe", + "objectId": "809f96f7-5c3b-45cf-a1ee-65b5d1689919", + "audience": "https://72f988bf-86f1-41af-91ab-2d7cd011db47/appliance1e39agentauthaadapp", + "aadAuthority": "https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", + "rawCertData": "MIIDNDCCAhygAwIBAgIQcG1waNhSQHq+QWMteouKoDANBgkqhkiG9w0BAQsFADAXMRUwEwYDVQQDEwxBZ2VudFNwbkNlcnQwHhcNMTkwNTA5MDc0MDQ5WhcNMjIwNTA5MDc1MDQ5WjAXMRUwEwYDVQQDEwxBZ2VudFNwbkNlcnQwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCovoqe6ey6QROBYESERRC8ZECO0jqsSDUWYtoFpEsgmvPa5ht3nqQAx7ODGzbV3eIPGHF2dRz2E4quvmo9g7DK4n5mukloE7zIVeo9WCdxF6ru13X6Q8aKCz6BLl10L9DpmKTeQwrbohKV+9HSE4K8wXB0flezTrcUzRZGQRbB3CInpPhRJfWVLIQuZngSJ3qZ/Y6ejYLA4dUdKHMyvjDcmc//VGczZPhfLxZc9t8bhxiiYopWyAkF6ZWCeEUsMcFuiBOft5lNHEFNRkRVgADBekDSK5iJqcvBIzOezbagZewvum2GviQEbe3yxQF+TygjLB8xLL1XVYop4Y4xRu2bAgMBAAGjfDB6MA4GA1UdDwEB/wQEAwIFoDAJBgNVHRMEAjAAMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjAfBgNVHSMEGDAWgBSFDL/nQvfZoLGuuw+fwSiFMi8CSTAdBgNVHQ4EFgQUhQy/50L32aCxrrsPn8EohTIvAkkwDQYJKoZIhvcNAQELBQADggEBADxJp9gLn7x6tp4fmApAoMBIghIJb36KJjT6sjGz9wsXNfH4S0kHQbgj8EAJpz8TlSBpjNmJ7DkwxorNn1BeG/DrnBvUJ9sNeI3rISCXrrw89CHy86uGXtn7BZ+2Co1UTHy98nkWK/1pPyMrSM8HxneWQGAa1bLKTclp+QRJNnQwJ9pEPuAr5BaWJkT737YkiE5NNcaaGDA5nLW91ARL5HNumtpwIDoN+l7OtAfRIgu83HFLeiqlVaR6x+7wtnA7n+fomIznBQ4vsoIclSPZ9vSaudT98TXN8m8CkQGEZi6w4gpmjQnXTehzvpdTbv1H+9iKsuPIDkjwiiLmr6mUbXs=" + }, + "agentDetails": { + "id": "09c46a1c-15a7-45cf-b2de-77a2fc9dd091-agent", + "version": "1.0.8.227", + "lastHeartBeatUtc": "2019-05-17T06:46:16.8227519Z", + "keyVaultUri": "https://appliance1e39kv.vault.azure.net", + "keyVaultId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.KeyVault/vaults/appliance1e39kv" + }, + "serviceEndpoint": "https://discoverysrv-we.prod.migration.windowsazure.com", + "discoverySolutionId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.Migrate/MigrateProjects/WestEuropeTest/Solutions/Servers-Discovery-ServerDiscovery", + "applianceName": "appliance" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/HyperVSites/appliance1e39site", + "name": "appliance1e39site", + "location": "westeurope", + "properties": { + "servicePrincipalIdentityDetails": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "applicationId": "61635e77-1e11-4c57-86d1-a8bf45d027fe", + "objectId": "809f96f7-5c3b-45cf-a1ee-65b5d1689919", + "audience": "https://72f988bf-86f1-41af-91ab-2d7cd011db47/appliance1e39agentauthaadapp", + "aadAuthority": "https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", + "rawCertData": "MIIDNDCCAhygAwIBAgIQcG1waNhSQHq+QWMteouKoDANBgkqhkiG9w0BAQsFADAXMRUwEwYDVQQDEwxBZ2VudFNwbkNlcnQwHhcNMTkwNTA5MDc0MDQ5WhcNMjIwNTA5MDc1MDQ5WjAXMRUwEwYDVQQDEwxBZ2VudFNwbkNlcnQwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCovoqe6ey6QROBYESERRC8ZECO0jqsSDUWYtoFpEsgmvPa5ht3nqQAx7ODGzbV3eIPGHF2dRz2E4quvmo9g7DK4n5mukloE7zIVeo9WCdxF6ru13X6Q8aKCz6BLl10L9DpmKTeQwrbohKV+9HSE4K8wXB0flezTrcUzRZGQRbB3CInpPhRJfWVLIQuZngSJ3qZ/Y6ejYLA4dUdKHMyvjDcmc//VGczZPhfLxZc9t8bhxiiYopWyAkF6ZWCeEUsMcFuiBOft5lNHEFNRkRVgADBekDSK5iJqcvBIzOezbagZewvum2GviQEbe3yxQF+TygjLB8xLL1XVYop4Y4xRu2bAgMBAAGjfDB6MA4GA1UdDwEB/wQEAwIFoDAJBgNVHRMEAjAAMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjAfBgNVHSMEGDAWgBSFDL/nQvfZoLGuuw+fwSiFMi8CSTAdBgNVHQ4EFgQUhQy/50L32aCxrrsPn8EohTIvAkkwDQYJKoZIhvcNAQELBQADggEBADxJp9gLn7x6tp4fmApAoMBIghIJb36KJjT6sjGz9wsXNfH4S0kHQbgj8EAJpz8TlSBpjNmJ7DkwxorNn1BeG/DrnBvUJ9sNeI3rISCXrrw89CHy86uGXtn7BZ+2Co1UTHy98nkWK/1pPyMrSM8HxneWQGAa1bLKTclp+QRJNnQwJ9pEPuAr5BaWJkT737YkiE5NNcaaGDA5nLW91ARL5HNumtpwIDoN+l7OtAfRIgu83HFLeiqlVaR6x+7wtnA7n+fomIznBQ4vsoIclSPZ9vSaudT98TXN8m8CkQGEZi6w4gpmjQnXTehzvpdTbv1H+9iKsuPIDkjwiiLmr6mUbXs=" + }, + "agentDetails": { + "id": "09c46a1c-15a7-45cf-b2de-77a2fc9dd091-agent", + "version": "1.0.8.227", + "lastHeartBeatUtc": "2019-05-17T06:46:16.8227519Z", + "keyVaultUri": "https://appliance1e39kv.vault.azure.net", + "keyVaultId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.KeyVault/vaults/appliance1e39kv" + }, + "serviceEndpoint": "https://discoverysrv-we.prod.migration.windowsazure.com", + "discoverySolutionId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.Migrate/MigrateProjects/WestEuropeTest/Solutions/Servers-Discovery-ServerDiscovery", + "applianceName": "appliance" + } + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVSite_Refresh.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVSite_Refresh.json new file mode 100644 index 000000000000..e3e25e7fa8e3 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/HyperVSite_Refresh.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "4bd2aa0f-2bd2-4d67-91a8-5a4533d58600", + "resourceGroupName": "pajindTest", + "siteName": "appliance1e39site", + "api-version": "2020-01-01" + }, + "responses": { + "202": {} + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareMachine_Get.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareMachine_Get.json new file mode 100644 index 000000000000..60f940c7191a --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareMachine_Get.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "resourceGroupName": "myResourceGroup", + "siteName": "pajind_site1", + "machineName": "machine1", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.OffAzure/VMwareSites/pajind_site1/machines/machine1", + "name": "machine1", + "type": "Microsoft.OffAzure/VMwareSites/machines", + "properties": { + "dataCenterScope": "vCenter60-2", + "firmware": "bios", + "description": "", + "vCenterFQDN": "10.150.8.52", + "vCenterId": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.OffAzure/VMwareSites/vcenters/10-150-8-52-b090bef3-b733-5e34-bc8f-eb6f2701432a", + "vMwareToolsStatus": "NotInstalled", + "changeTrackingSupported": true, + "changeTrackingEnabled": true, + "maxSnapshots": -1, + "disks": [ + { + "uuid": "6000C299-7390-714b-91c1-8af030cfadf9", + "label": "Hard disk 1", + "diskProvisioningPolicy": "ThinProvisioned", + "diskScrubbingPolicy": "LazilyScrubbed", + "diskMode": "persistent", + "maxSizeInBytes": 42949672960, + "name": "scsi0:0", + "diskType": "Static", + "lun": 0, + "path": "[DS-FC-5TB-38-4] FPLWIN8R264-03/FPLWIN8R264-03.vmdk" + } + ], + "appsAndRoles": null, + "hostInMaintenanceMode": false, + "hostName": "10.150.8.38", + "hostPowerState": "unknown", + "hostVersion": "6.0.0", + "networkAdapters": [ + { + "label": "Network adapter 1", + "nicId": "4000", + "macAddress": "00:50:56:88:0d:3c", + "ipAddressList": [], + "networkName": "VM Network", + "ipAddressType": "Static" + } + ], + "dependencyMapping": "Disabled", + "dependencyMappingStartTime": null, + "displayName": "FPLWIN8R264-03", + "numberOfProcessorCore": 1, + "allocatedMemoryInMB": 4096, + "vmConfigurationFileLocation": "[DS-FC-5TB-38-4] FPLWIN8R264-03/FPLWIN8R264-03.vmx", + "operatingSystemDetails": { + "osType": "windowsguest", + "osName": "Microsoft Windows Server 2008 R2 (64-bit)", + "osVersion": null + }, + "guestOSDetails": { + "osType": null, + "osName": null, + "osVersion": null + }, + "numberOfApplications": 0, + "guestDetailsDiscoveryTimestamp": null, + "isGuestDetailsDiscoveryInProgress": true, + "createdTimestamp": "2019-10-14T08:52:34.0679641Z", + "updatedTimestamp": "2019-10-17T09:32:15.8814969Z", + "instanceUuid": "5008f0e5-71aa-84d6-6042-a118fb8e07c5", + "powerStatus": "ON", + "biosSerialNumber": "4208ef12-4a97-56d5-5fab-268058d3e3b5", + "biosGuid": "4208ef12-4a97-56d5-5fab-268058d3e3b5", + "vmFqdn": "", + "isDeleted": false, + "errors": [] + } + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareMachines_ListBySite.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareMachines_ListBySite.json new file mode 100644 index 000000000000..03ae50e9af5c --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareMachines_ListBySite.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "resourceGroupName": "myResourceGroup", + "siteName": "pajind_site1", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.OffAzure/VMwareSites/pajind_site1/machines/machine1", + "name": "machine1", + "type": "Microsoft.OffAzure/VMwareSites/machines", + "properties": { + "dataCenterScope": "vCenter60-2", + "firmware": "bios", + "description": "", + "vCenterFQDN": "10.150.8.52", + "vCenterId": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.OffAzure/VMwareSites/pajind_site1/vcenters/10-150-8-52-b090bef3-b733-5e34-bc8f-eb6f2701432a", + "vMwareToolsStatus": "NotInstalled", + "changeTrackingSupported": true, + "changeTrackingEnabled": true, + "maxSnapshots": -1, + "disks": [ + { + "uuid": "6000C299-7390-714b-91c1-8af030cfadf9", + "label": "Hard disk 1", + "diskProvisioningPolicy": "ThinProvisioned", + "diskScrubbingPolicy": "LazilyScrubbed", + "diskMode": "persistent", + "maxSizeInBytes": 42949672960, + "name": "scsi0:0", + "diskType": "Static", + "lun": 0, + "path": "[DS-FC-5TB-38-4] FPLWIN8R264-03/FPLWIN8R264-03.vmdk" + } + ], + "appsAndRoles": null, + "hostInMaintenanceMode": false, + "hostName": "10.150.8.38", + "hostPowerState": "unknown", + "hostVersion": "6.0.0", + "networkAdapters": [ + { + "label": "Network adapter 1", + "nicId": "4000", + "macAddress": "00:50:56:88:0d:3c", + "ipAddressList": [], + "networkName": "VM Network", + "ipAddressType": "Static" + } + ], + "dependencyMapping": "Disabled", + "dependencyMappingStartTime": null, + "displayName": "FPLWIN8R264-03", + "numberOfProcessorCore": 1, + "allocatedMemoryInMB": 4096, + "vmConfigurationFileLocation": "[DS-FC-5TB-38-4] FPLWIN8R264-03/FPLWIN8R264-03.vmx", + "operatingSystemDetails": { + "osType": "windowsguest", + "osName": "Microsoft Windows Server 2008 R2 (64-bit)", + "osVersion": null + }, + "guestOSDetails": { + "osType": null, + "osName": null, + "osVersion": null + }, + "numberOfApplications": 0, + "guestDetailsDiscoveryTimestamp": null, + "isGuestDetailsDiscoveryInProgress": true, + "createdTimestamp": "2019-10-14T08:52:34.0679641Z", + "updatedTimestamp": "2019-10-17T09:32:15.8814969Z", + "instanceUuid": "5008f0e5-71aa-84d6-6042-a118fb8e07c5", + "powerStatus": "ON", + "biosSerialNumber": "4208ef12-4a97-56d5-5fab-268058d3e3b5", + "biosGuid": "4208ef12-4a97-56d5-5fab-268058d3e3b5", + "vmFqdn": "", + "isDeleted": false, + "errors": [] + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareOperationsStatus_Get.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareOperationsStatus_Get.json new file mode 100644 index 000000000000..964795a28ab7 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareOperationsStatus_Get.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "resourceGroupName": "myResourceGroup", + "siteName": "pajind_site1", + "operationStatusName": "996212ae-5c5f-419f-bb11-6f5c9b1ad90d", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.OffAzure/vmwaresites/pajind10/operationsstatus/996212ae-5c5f-419f-bb11-6f5c9b1ad90d", + "name": "996212ae-5c5f-419f-bb11-6f5c9b1ad90d", + "status": "Running", + "startTime": null, + "endTime": null, + "error": null, + "properties": { + "result": null + } + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareRunAsAccount_Get.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareRunAsAccount_Get.json new file mode 100644 index 000000000000..f3df22520af0 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareRunAsAccount_Get.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "resourceGroupName": "myResourceGroup", + "siteName": "pajind_site1", + "accountName": "account1", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.OffAzure/vmwaresites/pajind_site1/runasaccounts/account1", + "name": "account1", + "type": "Microsoft.OffAzure/vmwaresites/runasaccounts", + "properties": { + "displayName": "account1", + "credentialType": "LinuxServer", + "createdTimestamp": "2018-10-09T12:09:38.9625535Z", + "updatedTimestamp": "2018-10-09T12:09:38.9625535Z" + } + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareRunAsAccount_ListBySite.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareRunAsAccount_ListBySite.json new file mode 100644 index 000000000000..2cb3f52f6123 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareRunAsAccount_ListBySite.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "resourceGroupName": "myResourceGroup", + "siteName": "pajind_site1", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.OffAzure/vmwaresites/pajind_site1/runasaccounts/account1", + "name": "account1", + "type": "Microsoft.OffAzure/vmwaresites/runasaccounts", + "properties": { + "displayName": "account1", + "credentialType": "LinuxServer", + "createdTimestamp": "2019-08-09T11:27:41.6015709Z", + "updatedTimestamp": "2019-08-09T11:27:41.6045624Z" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareSiteHealthSummary_Post.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareSiteHealthSummary_Post.json new file mode 100644 index 000000000000..50059d139733 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareSiteHealthSummary_Post.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "4bd2aa0f-2bd2-4d67-91a8-5a4533d58600", + "resourceGroupName": "rahasijaBugBash050919", + "siteName": "rahasapp122119d37csite", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "applianceName": "rahasapp122119", + "errorMessage": "Unable to discover applications due to VMware error: 'The operation is not allowed in the current state.'.", + "summaryMessage": "Action failed on vCenter/ESXi server.", + "errorId": 8084, + "errorCode": "VimException", + "affectedObjectsCount": 2, + "hitCount": 2, + "severity": "Error", + "remediationGuidance": "Review our documentation on how to fix the error.", + "affectedResourceType": "Microsoft.OffAzure/VMwareSites/machines", + "affectedResources": [ + "10-150-8-50-6af5f800-e9f6-56ff-9c3c-7be56d242c31_5027298a-5c7c-b63e-d038-42a90ad0ef22", + "10-150-8-50-6af5f800-e9f6-56ff-9c3c-7be56d242c31_5027dfb2-ecc3-47ad-e49c-3c6ebd685cc8" + ] + }, + { + "applianceName": "rahasapp122119", + "errorMessage": "Unable to discover the applications installed on the VM.", + "summaryMessage": "VMWare tool status is not Running.", + "errorId": 9002, + "errorCode": "VMWareToolStatusIsNotRunning", + "affectedObjectsCount": 7, + "hitCount": 7, + "severity": "Error", + "remediationGuidance": "Install/Reinstall the vmware tools in the VM and check if it is running.", + "affectedResourceType": "Microsoft.OffAzure/VMwareSites/machines", + "affectedResources": [ + "10-150-8-50-6af5f800-e9f6-56ff-9c3c-7be56d242c31_50279091-162f-3802-695e-de9dc653b478", + "10-150-8-50-6af5f800-e9f6-56ff-9c3c-7be56d242c31_5037b3e1-d9e9-e7a0-3c33-68786c1eb60d", + "10-150-8-50-6af5f800-e9f6-56ff-9c3c-7be56d242c31_5027af9e-44a0-6551-2458-85f4e7cde22c", + "10-150-8-50-6af5f800-e9f6-56ff-9c3c-7be56d242c31_5037163d-2fb5-4231-6a68-8bfdc59137db", + "10-150-8-50-6af5f800-e9f6-56ff-9c3c-7be56d242c31_5037a350-9bae-235e-4a59-aefd282b866f", + "10-150-8-50-6af5f800-e9f6-56ff-9c3c-7be56d242c31_50374089-90e7-d054-ba66-a7bd125cd39f", + "10-150-8-50-6af5f800-e9f6-56ff-9c3c-7be56d242c31_5037f46d-c732-867f-0270-2ac61d936410" + ] + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareSiteSummary_Post.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareSiteSummary_Post.json new file mode 100644 index 000000000000..5c49f0b735af --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareSiteSummary_Post.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "4bd2aa0f-2bd2-4d67-91a8-5a4533d58600", + "resourceGroupName": "rahasijaBugBash050919", + "siteName": "rahasapp122119d37csite", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "runAsAccountCount": 1, + "machineCount": 6 + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareSite_Create.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareSite_Create.json new file mode 100644 index 000000000000..e0816c78bc76 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareSite_Create.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "subscriptionId": "4bd2aa0f-2bd2-4d67-91a8-5a4533d58600", + "resourceGroupName": "pajindTest", + "siteName": "appliance1e39site", + "api-version": "2020-01-01", + "body": { + "location": "eastus", + "properties": { + "servicePrincipalIdentityDetails": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "applicationId": "e9f013df-2a2a-4871-b766-e79867f30348", + "objectId": "2cd492bc-7ef3-4ee0-b301-59a88108b47b", + "audience": "https://72f988bf-86f1-41af-91ab-2d7cd011db47/MaheshSite17ac9agentauthaadapp", + "aadAuthority": "https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/VMwareSites/appliance1e39site", + "name": "appliance1e39site", + "type": "Microsoft.OffAzure/VMwareSites", + "eTag": null, + "location": "", + "properties": { + "servicePrincipalIdentityDetails": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "applicationId": "e9f013df-2a2a-4871-b766-e79867f30348", + "objectId": "2cd492bc-7ef3-4ee0-b301-59a88108b47b", + "audience": "https://72f988bf-86f1-41af-91ab-2d7cd011db47/MaheshSite17ac9agentauthaadapp", + "aadAuthority": "https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", + "rawCertData": "string" + }, + "agentDetails": { + "id": "88762a5c-c43f-5a7a-ac2a-0abc594aa06e-agent", + "version": null, + "lastHeartBeatUtc": null, + "keyVaultUri": "string", + "keyVaultId": "string" + }, + "serviceEndpoint": "https://localhost", + "discoverySolutionId": "string", + "applianceName": "string" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/VMwareSites/appliance1e39site", + "name": "appliance1e39site", + "type": "Microsoft.OffAzure/VMwareSites", + "eTag": null, + "location": "", + "properties": { + "servicePrincipalIdentityDetails": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "applicationId": "e9f013df-2a2a-4871-b766-e79867f30348", + "objectId": "2cd492bc-7ef3-4ee0-b301-59a88108b47b", + "audience": "https://72f988bf-86f1-41af-91ab-2d7cd011db47/MaheshSite17ac9agentauthaadapp", + "aadAuthority": "https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", + "rawCertData": "string" + }, + "agentDetails": { + "id": "88762a5c-c43f-5a7a-ac2a-0abc594aa06e-agent", + "version": null, + "lastHeartBeatUtc": null, + "keyVaultUri": "string", + "keyVaultId": "string" + }, + "serviceEndpoint": "https://localhost", + "discoverySolutionId": "string", + "applianceName": "string" + } + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareSite_Delete.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareSite_Delete.json new file mode 100644 index 000000000000..5bff6842b990 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareSite_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "resourceGroupName": "myResourceGroup", + "siteName": "pajind_site1", + "api-version": "2020-01-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareSite_Get.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareSite_Get.json new file mode 100644 index 000000000000..866085d1c745 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareSite_Get.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "resourceGroupName": "myResourceGroup", + "siteName": "pajind_site1", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.OffAzure/VMwareSites/pajind_site1", + "name": "pajind_site1", + "type": "Microsoft.OffAzure/vmwaresites", + "eTag": null, + "location": "", + "properties": { + "servicePrincipalIdentityDetails": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "applicationId": "e9f013df-2a2a-4871-b766-e79867f30348", + "objectId": "2cd492bc-7ef3-4ee0-b301-59a88108b47b", + "audience": "https://72f988bf-86f1-41af-91ab-2d7cd011db47/MaheshSite17ac9agentauthaadapp", + "aadAuthority": "https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", + "rawCertData": "string" + }, + "agentDetails": { + "id": "6cf06006-b736-5081-9a10-41aa2f87bd84-agent", + "version": null, + "lastHeartBeatUtc": null, + "keyVaultUri": "string", + "keyVaultId": "string" + }, + "serviceEndpoint": "https://localhost", + "discoverySolutionId": "string", + "applianceName": "string" + } + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareSite_Patch.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareSite_Patch.json new file mode 100644 index 000000000000..e9f57f5dda02 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareSite_Patch.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "subscriptionId": "75dd7e42-4fd1-4512-af04-83ad9864335b", + "resourceGroupName": "myResourceGroup", + "siteName": "pajind_site1", + "api-version": "2020-01-01", + "body": { + "name": "pajind_site1", + "eTag": null, + "location": "", + "properties": { + "servicePrincipalIdentityDetails": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "applicationId": "e9f013df-2a2a-4871-b766-e79867f30348", + "objectId": "2cd492bc-7ef3-4ee0-b301-59a88108b47b", + "audience": "https://72f988bf-86f1-41af-91ab-2d7cd011db47/MaheshSite17ac9agentauthaadapp", + "aadAuthority": "https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", + "rawCertData": "string" + }, + "agentDetails": { + "keyVaultUri": "https://keyVaultUri", + "keyVaultId": "string" + }, + "discoverySolutionId": "string", + "applianceName": "string" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.OffAzure/VMwareSites/pajind_site1", + "name": "pajind_site1", + "type": "Microsoft.OffAzure/vmwaresites", + "eTag": null, + "location": "", + "properties": { + "servicePrincipalIdentityDetails": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "applicationId": "e9f013df-2a2a-4871-b766-e79867f30348", + "objectId": "2cd492bc-7ef3-4ee0-b301-59a88108b47b", + "audience": "https://72f988bf-86f1-41af-91ab-2d7cd011db47/MaheshSite17ac9agentauthaadapp", + "aadAuthority": "https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", + "rawCertData": "string" + }, + "agentDetails": { + "id": "6cf06006-b736-5081-9a10-41aa2f87bd84-agent", + "version": null, + "lastHeartBeatUtc": null, + "keyVaultUri": "https://keyVaultUri", + "keyVaultId": "string" + }, + "serviceEndpoint": "https://localhost", + "discoverySolutionId": "string", + "applianceName": "string" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/75dd7e42-4fd1-4512-af04-83ad9864335b/resourceGroups/myResourceGroup/providers/Microsoft.OffAzure/VMwareSites/pajind_site1", + "name": "pajind_site1", + "type": "Microsoft.OffAzure/vmwaresites", + "eTag": null, + "location": "", + "properties": { + "servicePrincipalIdentityDetails": { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "applicationId": "e9f013df-2a2a-4871-b766-e79867f30348", + "objectId": "2cd492bc-7ef3-4ee0-b301-59a88108b47b", + "audience": "https://72f988bf-86f1-41af-91ab-2d7cd011db47/MaheshSite17ac9agentauthaadapp", + "aadAuthority": "https://login.windows.net/72f988bf-86f1-41af-91ab-2d7cd011db47", + "rawCertData": "string" + }, + "agentDetails": { + "id": "6cf06006-b736-5081-9a10-41aa2f87bd84-agent", + "version": null, + "lastHeartBeatUtc": null, + "keyVaultUri": "https://keyVaultUri", + "keyVaultId": "string" + }, + "serviceEndpoint": "https://localhost", + "discoverySolutionId": "string", + "applianceName": "string" + } + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareSite_Refresh.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareSite_Refresh.json new file mode 100644 index 000000000000..e3e25e7fa8e3 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareSite_Refresh.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "4bd2aa0f-2bd2-4d67-91a8-5a4533d58600", + "resourceGroupName": "pajindTest", + "siteName": "appliance1e39site", + "api-version": "2020-01-01" + }, + "responses": { + "202": {} + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareVcenter_Create.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareVcenter_Create.json new file mode 100644 index 000000000000..7d7a7910dcdb --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareVcenter_Create.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "4bd2aa0f-2bd2-4d67-91a8-5a4533d58600", + "resourceGroupName": "pajindTest", + "siteName": "appliance1e39site", + "vcenterName": "vcenter1", + "api-version": "2020-01-01", + "body": { + "properties": { + "fqdn": "idclab-a226vc6", + "runAsAccountId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/pajindTest/providers/Microsoft.OffAzure/VMwareSites/appliance1e39site/runasaccounts/account1" + } + } + }, + "responses": { + "202": {} + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareVcenter_Delete.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareVcenter_Delete.json new file mode 100644 index 000000000000..b3c1c121a4e7 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareVcenter_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "4bd2aa0f-2bd2-4d67-91a8-5a4533d58600", + "resourceGroupName": "rahasijaBugBash050919", + "siteName": "rahasapp122119d37csite", + "vcenterName": "10-150-8-50-6af5f800-e9f6-56ff-9c3c-7be56d242c31", + "api-version": "2020-01-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareVcenter_Get.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareVcenter_Get.json new file mode 100644 index 000000000000..eaf7059328d3 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareVcenter_Get.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "4bd2aa0f-2bd2-4d67-91a8-5a4533d58600", + "resourceGroupName": "rahasijaBugBash050919", + "siteName": "rahasapp122119d37csite", + "vcenterName": "10-150-8-50-6af5f800-e9f6-56ff-9c3c-7be56d242c31", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/rahasijaBugBash050919/providers/Microsoft.OffAzure/VMwareSites/rahasapp122119d37csite/vcenters/10-150-8-50-6af5f800-e9f6-56ff-9c3c-7be56d242c31", + "name": "10-150-8-50-6af5f800-e9f6-56ff-9c3c-7be56d242c31", + "type": "Microsoft.OffAzure/VMwareSites/vcenters", + "properties": { + "createdTimestamp": "2019-12-21T07:00:52.0128932Z", + "updatedTimestamp": "2019-12-23T14:34:34.7509959Z", + "fqdn": "10.150.8.50", + "port": "443", + "runAsAccountId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/rahasijaBugBash050919/providers/Microsoft.OffAzure/VMwareSites/rahasapp122119d37csite/runasaccounts/6af5f800-e9f6-56ff-9c3c-7be56d242c31", + "version": "6.5.0", + "perfStatisticsLevel": "[{\"Level\":3,\"Name\":\"past day\",\"Enabled\":true,\"SamplingPeriod\":300,\"TimeLength\":86400},{\"Level\":3,\"Name\":\"past week\",\"Enabled\":true,\"SamplingPeriod\":1800,\"TimeLength\":604800},{\"Level\":3,\"Name\":\"past month\",\"Enabled\":true,\"SamplingPeriod \":7200,\"TimeLength\":2592000},{\"Level\":3,\"Name\":\"past year\",\"Enabled\":true,\"SamplingPeriod\":86400,\"TimeLength\":7776000}]", + "instanceUuid": "4c0e3b96-5e11-4574-b98a-2b868cd6950f", + "errors": [] + } + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareVcenter_ListBySite.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareVcenter_ListBySite.json new file mode 100644 index 000000000000..d8642c0be762 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/examples/VMwareVcenter_ListBySite.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "4bd2aa0f-2bd2-4d67-91a8-5a4533d58600", + "resourceGroupName": "rahasijaBugBash050919", + "siteName": "rahasapp122119d37csite", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/rahasijaBugBash050919/providers/Microsoft.OffAzure/VMwareSites/rahasapp122119d37csite/vcenters/10-150-8-50-6af5f800-e9f6-56ff-9c3c-7be56d242c31", + "name": "10-150-8-50-6af5f800-e9f6-56ff-9c3c-7be56d242c31", + "type": "Microsoft.OffAzure/VMwareSites/vcenters", + "properties": { + "createdTimestamp": "2019-12-21T07:00:52.0128932Z", + "updatedTimestamp": "2019-12-23T14:34:34.7509959Z", + "fqdn": "10.150.8.50", + "port": "443", + "runAsAccountId": "/subscriptions/4bd2aa0f-2bd2-4d67-91a8-5a4533d58600/resourceGroups/rahasijaBugBash050919/providers/Microsoft.OffAzure/VMwareSites/rahasapp122119d37csite/runasaccounts/6af5f800-e9f6-56ff-9c3c-7be56d242c31", + "version": "6.5.0", + "perfStatisticsLevel": "[{\"Level\":3,\"Name\":\"past day\",\"Enabled\":true,\"SamplingPeriod\":300,\"TimeLength\":86400},{\"Level\":3,\"Name\":\"past week\",\"Enabled\":true,\"SamplingPeriod\":1800,\"TimeLength\":604800},{\"Level\":3,\"Name\":\"past month\",\"Enabled\":true,\"SamplingPeriod \":7200,\"TimeLength\":2592000},{\"Level\":3,\"Name\":\"past year\",\"Enabled\":true,\"SamplingPeriod\":86400,\"TimeLength\":7776000}]", + "instanceUuid": "4c0e3b96-5e11-4574-b98a-2b868cd6950f", + "errors": [] + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/migrate.json b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/migrate.json new file mode 100644 index 000000000000..64709a3876c5 --- /dev/null +++ b/specification/migrate/resource-manager/Microsoft.OffAzure/stable/2020-01-01/migrate.json @@ -0,0 +1,4910 @@ +{ + "swagger": "2.0", + "info": { + "version": "v1", + "title": "Microsoft.Azure.FDS.WebRole" + }, + "host": "localhost", + "schemes": [ + "https" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/HyperVSites/{siteName}/clusters/{clusterName}": { + "get": { + "tags": [ + "HyperVCluster" + ], + "summary": "Method to get a Hyper-V cluster.", + "operationId": "HyperVCluster_GetCluster", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "clusterName", + "in": "path", + "description": "Cluster ARM name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HyperVCluster" + } + } + }, + "x-ms-examples": { + "Get cluster": { + "$ref": "./examples/HyperVCluster_Get.json" + } + }, + "deprecated": false + }, + "put": { + "tags": [ + "HyperVCluster" + ], + "summary": "Method to create or update a cluster in site.", + "operationId": "HyperVCluster_PutCluster", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "clusterName", + "in": "path", + "description": "Cluster ARM name.", + "required": true, + "type": "string" + }, + { + "name": "body", + "in": "body", + "description": "Put cluster body.", + "required": true, + "schema": { + "$ref": "#/definitions/HyperVCluster" + } + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted", + "headers": { + "Azure-AsyncOperation": { + "description": "Tracking URL for long running operation.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "Add new cluster": { + "$ref": "./examples/HyperVCluster_Create.json" + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/HyperVSites/{siteName}/clusters": { + "get": { + "tags": [ + "HyperVCluster" + ], + "summary": "Method to get all clusters in a site.", + "operationId": "HyperVCluster_GetAllClustersInSite", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HyperVClusterCollection" + } + } + }, + "x-ms-examples": { + "List cluster by site": { + "$ref": "./examples/HyperVCluster_ListBySite.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/HyperVSites/{siteName}/hosts/{hostName}": { + "get": { + "tags": [ + "HyperVHost" + ], + "summary": "Method to get a Hyper-V host.", + "operationId": "HyperVHost_GetHost", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "hostName", + "in": "path", + "description": "Host ARM name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HyperVHost" + } + } + }, + "x-ms-examples": { + "Get host": { + "$ref": "./examples/HyperVHost_Get.json" + } + }, + "deprecated": false + }, + "put": { + "tags": [ + "HyperVHost" + ], + "summary": "Method to create or update a host in site.", + "operationId": "HyperVHost_PutHost", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "hostName", + "in": "path", + "description": "Host ARM name.", + "required": true, + "type": "string" + }, + { + "name": "body", + "in": "body", + "description": "Put host body.", + "required": true, + "schema": { + "$ref": "#/definitions/HyperVHost" + } + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted", + "headers": { + "Azure-AsyncOperation": { + "description": "Tracking URL for long running operation.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "Add new host": { + "$ref": "./examples/HyperVHost_Create.json" + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/HyperVSites/{siteName}/hosts": { + "get": { + "tags": [ + "HyperVHost" + ], + "summary": "Method to get all hosts in a site.", + "operationId": "HyperVHost_GetAllHostsInSite", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HyperVHostCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List hosts by site": { + "$ref": "./examples/HyperVHost_ListBySite.json" + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/HyperVSites/{siteName}/jobs/{jobName}": { + "get": { + "tags": [ + "HyperVJobs" + ], + "summary": "Method to get job.", + "operationId": "HyperVJobs_GetJob", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "jobName", + "in": "path", + "description": "Job ARM name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HyperVJob" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/HyperVSites/{siteName}/jobs": { + "get": { + "tags": [ + "HyperVJobs" + ], + "summary": "Method to get all jobs in a site.", + "operationId": "HyperVJobs_GetAllJobsInSite", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HyperVJobCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/HyperVSites/{siteName}/machines/{machineName}": { + "get": { + "tags": [ + "HyperVMachines" + ], + "summary": "Method to get machine.", + "operationId": "HyperVMachines_GetMachine", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "machineName", + "in": "path", + "description": "Machine ARM name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HyperVMachine" + } + } + }, + "x-ms-examples": { + "Get machine.": { + "$ref": "./examples/HyperVMachine_Get.json" + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/HyperVSites/{siteName}/machines": { + "get": { + "tags": [ + "HyperVMachines" + ], + "summary": "Method to get machine.", + "operationId": "HyperVMachines_GetAllMachinesInSite", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "continuationToken", + "in": "query", + "description": "Optional parameter for continuation token.", + "required": false, + "type": "string" + }, + { + "name": "totalRecordCount", + "in": "query", + "description": "Total count of machines in the given site.", + "required": false, + "type": "integer", + "format": "int32" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HyperVMachineCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List hosts by site": { + "$ref": "./examples/HyperVMachines_ListBySite.json" + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/HyperVSites/{siteName}/operationsStatus/{operationStatusName}": { + "get": { + "tags": [ + "HyperVOperationsStatus" + ], + "summary": "Method to get operation status.", + "operationId": "HyperVOperationsStatus_GetOperationStatus", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "operationStatusName", + "in": "path", + "description": "Operation status ARM name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationStatus" + } + } + }, + "x-ms-examples": { + "Get operation status.": { + "$ref": "./examples/HyperVOperationsStatus_Get.json" + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/HyperVSites/{siteName}/runAsAccounts/{accountName}": { + "get": { + "tags": [ + "HyperVRunAsAccounts" + ], + "summary": "Method to get run as account.", + "operationId": "HyperVRunAsAccounts_GetRunAsAccount", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "accountName", + "in": "path", + "description": "Run as account ARM name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HyperVRunAsAccount" + } + } + }, + "x-ms-examples": { + "Get run as account.": { + "$ref": "./examples/HyperVRunAsAccount_Get.json" + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/HyperVSites/{siteName}/runAsAccounts": { + "get": { + "tags": [ + "HyperVRunAsAccounts" + ], + "summary": "Method to get run as accounts.", + "operationId": "HyperVRunAsAccounts_GetAllRunAsAccountsInSite", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HyperVRunAsAccountCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Run As Accounts by site": { + "$ref": "./examples/HyperVRunAsAccounts_ListBySite.json" + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/HyperVSites/{siteName}": { + "get": { + "tags": [ + "HyperVSites" + ], + "summary": "Method to get a site.", + "operationId": "HyperVSites_GetSite", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HyperVSite" + } + } + }, + "x-ms-examples": { + "Get Hyper-V site": { + "$ref": "./examples/HyperVSite_Get.json" + } + }, + "deprecated": false + }, + "put": { + "tags": [ + "HyperVSites" + ], + "summary": "Method to create or update a site.", + "operationId": "HyperVSites_PutSite", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "body", + "in": "body", + "description": "Body with site details.", + "required": true, + "schema": { + "$ref": "#/definitions/HyperVSite" + } + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HyperVSite" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/HyperVSite" + } + } + }, + "x-ms-examples": { + "Create Hyper-V site": { + "$ref": "./examples/HyperVSite_Create.json" + } + }, + "deprecated": false + }, + "delete": { + "tags": [ + "HyperVSites" + ], + "summary": "Method to delete a site.", + "operationId": "HyperVSites_DeleteSite", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-examples": { + "Delete Hyper-V site.": { + "$ref": "./examples/HyperVSite_Delete.json" + } + }, + "deprecated": false + }, + "patch": { + "tags": [ + "HyperVSites" + ], + "summary": "Method to patch an existing site.", + "operationId": "HyperVSites_PatchSite", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "body", + "in": "body", + "description": "Body with site details.", + "required": true, + "schema": { + "$ref": "#/definitions/HyperVSite" + } + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HyperVSite" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/HyperVSite" + } + } + }, + "x-ms-examples": { + "Patch Hyper-V site.": { + "$ref": "./examples/HyperVSite_Patch.json" + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/HyperVSites/{siteName}/refresh": { + "post": { + "tags": [ + "HyperVSites" + ], + "summary": "Method to refresh a site.", + "operationId": "HyperVSites_RefreshSite", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted", + "headers": { + "Azure-AsyncOperation": { + "description": "Tracking URL for long running operation.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "Refresh Hyper-V site.": { + "$ref": "./examples/HyperVSite_Refresh.json" + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/HyperVSites/{siteName}/healthSummary": { + "post": { + "tags": [ + "HyperVSites" + ], + "summary": "Method to get site health summary.", + "operationId": "HyperVSites_GetSiteHealthSummary", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteHealthSummaryCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get Hyper-V site health summary.": { + "$ref": "./examples/HyperVSiteHealthSummary_Post.json" + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/VMwareSites/{siteName}/jobs/{jobName}": { + "get": { + "tags": [ + "Jobs" + ], + "summary": "Method to get job.", + "operationId": "Jobs_GetJob", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "jobName", + "in": "path", + "description": "Job ARM name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VMwareJob" + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/VMwareSites/{siteName}/jobs": { + "get": { + "tags": [ + "Jobs" + ], + "summary": "Method to get all jobs in a site.", + "operationId": "Jobs_GetAllJobsInSite", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VMwareJobCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/VMwareSites/{siteName}/machines/{machineName}": { + "get": { + "tags": [ + "Machines" + ], + "summary": "Method to get machine.", + "operationId": "Machines_GetMachine", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "machineName", + "in": "path", + "description": "Machine ARM name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VMwareMachine" + } + } + }, + "x-ms-examples": { + "Get VMware machine.": { + "$ref": "./examples/VMwareMachine_Get.json" + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/VMwareSites/{siteName}/machines": { + "get": { + "tags": [ + "Machines" + ], + "summary": "Method to get machine.", + "operationId": "Machines_GetAllMachinesInSite", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "continuationToken", + "in": "query", + "description": "Optional parameter for continuation token.", + "required": false, + "type": "string" + }, + { + "name": "totalRecordCount", + "in": "query", + "description": "Total count of machines in the given site.", + "required": false, + "type": "integer", + "format": "int32" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VMwareMachineCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get VMware machines": { + "$ref": "./examples/VMwareMachines_ListBySite.json" + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/VMwareSites/{siteName}/machines/{machineName}/stop": { + "post": { + "tags": [ + "Machines" + ], + "summary": "Method to stop a machine.", + "operationId": "Machines_StopMachine", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "machineName", + "in": "path", + "description": "Machine ARM name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted", + "headers": { + "Azure-AsyncOperation": { + "description": "Tracking URL for long running operation.", + "type": "string" + } + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/VMwareSites/{siteName}/machines/{machineName}/start": { + "post": { + "tags": [ + "Machines" + ], + "summary": "Method to start a machine.", + "operationId": "Machines_StartMachine", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "machineName", + "in": "path", + "description": "Machine ARM name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted", + "headers": { + "Azure-AsyncOperation": { + "description": "Tracking URL for long running operation.", + "type": "string" + } + } + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/VMwareSites/{siteName}/runAsAccounts/{accountName}": { + "get": { + "tags": [ + "RunAsAccounts" + ], + "summary": "Method to get run as account.", + "operationId": "RunAsAccounts_GetRunAsAccount", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "accountName", + "in": "path", + "description": "Run as account ARM name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VMwareRunAsAccount" + } + } + }, + "x-ms-examples": { + "Get VMware run as account.": { + "$ref": "./examples/VMwareRunAsAccount_Get.json" + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/VMwareSites/{siteName}/runAsAccounts": { + "get": { + "tags": [ + "RunAsAccounts" + ], + "summary": "Method to get run as accounts.", + "operationId": "RunAsAccounts_GetAllRunAsAccountsInSite", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VMwareRunAsAccountCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List VMware run as account by site.": { + "$ref": "./examples/VMwareRunAsAccount_ListBySite.json" + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/VMwareSites/{siteName}": { + "get": { + "tags": [ + "Sites" + ], + "summary": "Method to get a site.", + "operationId": "Sites_GetSite", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VMwareSite" + } + } + }, + "x-ms-examples": { + "Get VMware site": { + "$ref": "./examples/VMwareSite_Get.json" + } + }, + "deprecated": false + }, + "put": { + "tags": [ + "Sites" + ], + "summary": "Method to create or update a site.", + "operationId": "Sites_PutSite", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "body", + "in": "body", + "description": "Body with site details.", + "required": true, + "schema": { + "$ref": "#/definitions/VMwareSite" + } + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VMwareSite" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VMwareSite" + } + } + }, + "x-ms-examples": { + "Create VMware site": { + "$ref": "./examples/VMwareSite_Create.json" + } + }, + "deprecated": false + }, + "delete": { + "tags": [ + "Sites" + ], + "summary": "Method to delete a site.", + "operationId": "Sites_DeleteSite", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-examples": { + "Delete VMware site": { + "$ref": "./examples/VMwareSite_Delete.json" + } + }, + "deprecated": false + }, + "patch": { + "tags": [ + "Sites" + ], + "summary": "Method to update an existing site.", + "operationId": "Sites_PatchSite", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "body", + "in": "body", + "description": "Body with site details.", + "required": true, + "schema": { + "$ref": "#/definitions/VMwareSite" + } + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VMwareSite" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VMwareSite" + } + } + }, + "x-ms-examples": { + "Patch VMware site": { + "$ref": "./examples/VMwareSite_Patch.json" + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/VMwareSites/{siteName}/refresh": { + "post": { + "tags": [ + "Sites" + ], + "summary": "Method to refresh a site.", + "operationId": "Sites_RefreshSite", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted", + "headers": { + "Azure-AsyncOperation": { + "description": "Tracking URL for long running operation.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "Refresh VMware site": { + "$ref": "./examples/VMwareSite_Refresh.json" + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/VMwareSites/{siteName}/healthSummary": { + "post": { + "tags": [ + "Sites" + ], + "summary": "Method to get site health summary.", + "operationId": "Sites_GetSiteHealthSummary", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SiteHealthSummaryCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get VMware site health summary.": { + "$ref": "./examples/VMwareSiteHealthSummary_Post.json" + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/VMwareSites/{siteName}/vCenters/{vcenterName}": { + "get": { + "tags": [ + "VCenter" + ], + "summary": "Method to get a vCenter.", + "operationId": "VCenter_GetVCenter", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "vcenterName", + "in": "path", + "description": "VCenter ARM name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VCenter" + } + } + }, + "x-ms-examples": { + "Get VMware Vcenter.": { + "$ref": "./examples/VMwareVcenter_Get.json" + } + }, + "deprecated": false + }, + "put": { + "tags": [ + "VCenter" + ], + "summary": "Method to create or update a vCenter in site.", + "operationId": "VCenter_PutVCenter", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "vcenterName", + "in": "path", + "description": "VCenter ARM name.", + "required": true, + "type": "string" + }, + { + "name": "body", + "in": "body", + "description": "Put vCenter body.", + "required": true, + "schema": { + "$ref": "#/definitions/VCenter" + } + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted", + "headers": { + "Azure-AsyncOperation": { + "description": "Tracking URL for long running operation.", + "type": "string" + } + } + } + }, + "x-ms-examples": { + "Create VMware Vcenter": { + "$ref": "./examples/VMwareVcenter_Create.json" + } + }, + "deprecated": false + }, + "delete": { + "tags": [ + "VCenter" + ], + "summary": "Method to delete vCenter in site.", + "operationId": "VCenter_DeleteVCenter", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "vcenterName", + "in": "path", + "description": "VCenter ARM name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + } + }, + "x-ms-examples": { + "Delete VMware Vcenter.": { + "$ref": "./examples/VMwareVcenter_Delete.json" + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/VMwareSites/{siteName}/vCenters": { + "get": { + "tags": [ + "VCenter" + ], + "summary": "Method to get all vCenters in a site.", + "operationId": "VCenter_GetAllVCentersInSite", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VCenterCollection" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List VMware vCenters by site": { + "$ref": "./examples/VMwareVcenter_ListBySite.json" + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/VMwareSites/{siteName}/operationsStatus/{operationStatusName}": { + "get": { + "tags": [ + "VMwareOperationsStatus" + ], + "summary": "Method to get operation status.", + "operationId": "VMwareOperationsStatus_GetOperationStatus", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "operationStatusName", + "in": "path", + "description": "Operation status ARM name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "description": "The API version to use for this operation.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationStatus" + } + } + }, + "x-ms-examples": { + "Get VMware operation status.": { + "$ref": "./examples/VMwareOperationsStatus_Get.json" + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/HyperVSites/{siteName}/summary": { + "post": { + "tags": [ + "HyperVSites" + ], + "summary": "Method to get site usage.", + "operationId": "HyperVSites_GetSiteUsage", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/HyperVSiteUsage" + } + } + }, + "x-ms-examples": { + "Get Hyper-V site summary/usage.": { + "$ref": "./examples/HyperVSiteSummary_Post.json" + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/VMwareSites/{siteName}/summary": { + "post": { + "tags": [ + "Sites" + ], + "summary": "Method to get site usage/summary.", + "operationId": "Sites_GetSiteUsage", + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "subscriptionId", + "in": "path", + "description": "The ID of the target subscription.", + "required": true, + "type": "string" + }, + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group. The name is case insensitive.", + "required": true, + "type": "string" + }, + { + "name": "siteName", + "in": "path", + "description": "Site name.", + "required": true, + "type": "string" + }, + { + "name": "api-version", + "in": "query", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VMwareSiteUsage" + } + } + }, + "x-ms-examples": { + "Get VMware site usage/summary.": { + "$ref": "./examples/VMwareSiteSummary_Post.json" + } + }, + "deprecated": false + } + } + }, + "definitions": { + "Object": { + "type": "object", + "properties": {} + }, + "HyperVCluster": { + "description": "Cluster REST Resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the cluster.", + "type": "string" + }, + "type": { + "description": "Type of resource. Type = Microsoft.OffAzure/hyperVSites/clusters.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/HyperVClusterProperties", + "description": "Nested properties of the cluster." + } + } + }, + "HyperVClusterProperties": { + "description": "Class for cluster properties.", + "type": "object", + "properties": { + "createdTimestamp": { + "description": "Timestamp marking Hyper-V cluster creation.", + "type": "string", + "readOnly": true + }, + "updatedTimestamp": { + "description": "Timestamp marking last updated on the Hyper-V cluster.", + "type": "string", + "readOnly": true + }, + "fqdn": { + "description": "FQDN/IPAddress of the Hyper-V cluster.", + "type": "string" + }, + "functionalLevel": { + "format": "int32", + "description": "Functional level of the Hyper-V cluster.", + "type": "integer", + "readOnly": true + }, + "status": { + "description": "Status of the Hyper-V cluster.", + "type": "string", + "readOnly": true + }, + "runAsAccountId": { + "description": "Run as account ID of the Hyper-V cluster.", + "type": "string" + }, + "hostFqdnList": { + "description": "List of hosts (FQDN) currently being tracked by the cluster.", + "type": "array", + "items": { + "type": "string" + } + }, + "errors": { + "description": "Errors for Hyper-V clusters.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthErrorDetails" + }, + "readOnly": true + } + } + }, + "HealthErrorDetails": { + "description": "Error contract returned when some exception occurs in Rest API.", + "type": "object", + "properties": { + "id": { + "format": "int64", + "description": "Error ID.", + "type": "integer", + "readOnly": true + }, + "code": { + "description": "Error name.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Error message.", + "type": "string", + "readOnly": true + }, + "possibleCauses": { + "description": "Possible causes of error.", + "type": "string", + "readOnly": true + }, + "recommendedAction": { + "description": "Recommended action to resolve error.", + "type": "string", + "readOnly": true + }, + "severity": { + "description": "Error severity.", + "type": "string", + "readOnly": true + }, + "summaryMessage": { + "description": "Error summary message.", + "type": "string", + "readOnly": true + }, + "source": { + "description": "Error source.", + "type": "string", + "readOnly": true + }, + "messageParameters": { + "description": "Message parameters.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "readOnly": true + } + } + }, + "HyperVClusterCollection": { + "description": "Collection of Hyper-V clusters.", + "type": "object", + "properties": { + "value": { + "description": "List of clusters.", + "type": "array", + "items": { + "$ref": "#/definitions/HyperVCluster" + }, + "readOnly": true + }, + "nextLink": { + "description": "Value of next link.", + "type": "string", + "readOnly": true + } + } + }, + "HyperVHost": { + "description": "Host REST Resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the host.", + "type": "string" + }, + "type": { + "description": "Type of resource. Type = Microsoft.OffAzure/hyperVSites/hosts.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/HyperVHostProperties", + "description": "Nested properties." + } + } + }, + "HyperVHostProperties": { + "description": "Class for host properties.", + "type": "object", + "properties": { + "createdTimestamp": { + "description": "Timestamp marking Hyper-V host creation.", + "type": "string", + "readOnly": true + }, + "updatedTimestamp": { + "description": "Timestamp marking last updated on the Hyper-V host.", + "type": "string", + "readOnly": true + }, + "fqdn": { + "description": "FQDN/IPAddress of the Hyper-V host.", + "type": "string" + }, + "runAsAccountId": { + "description": "Run as account ID of the Hyper-V host.", + "type": "string" + }, + "version": { + "description": "Version of the Hyper-V host.", + "type": "string", + "readOnly": true + }, + "errors": { + "description": "Errors for Hyper-V hosts.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthErrorDetails" + }, + "readOnly": true + } + } + }, + "HyperVHostCollection": { + "description": "Collection of Hyper-V hosts.", + "type": "object", + "properties": { + "value": { + "description": "List of hosts.", + "type": "array", + "items": { + "$ref": "#/definitions/HyperVHost" + }, + "readOnly": true + }, + "nextLink": { + "description": "Value of next link.", + "type": "string", + "readOnly": true + } + } + }, + "HyperVJob": { + "description": "Job REST Resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the Job.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of resource. Type = Microsoft.OffAzure/HyperVSites/Jobs.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/JobProperties", + "description": "nested properties of Hyper-V job.", + "readOnly": true + } + } + }, + "JobProperties": { + "description": "Class for machine properties.", + "type": "object", + "properties": { + "status": { + "description": "Operation status.", + "type": "string", + "readOnly": true + }, + "startTime": { + "description": "Operation start time.", + "type": "string", + "readOnly": true + }, + "endTime": { + "description": "Operation end time.", + "type": "string", + "readOnly": true + }, + "displayName": { + "description": "Display name of the Job.", + "type": "string", + "readOnly": true + }, + "clientRequestId": { + "description": "Client request Id used in the operation execution context.", + "type": "string", + "readOnly": true + }, + "activityId": { + "description": "Activity Id used in the operation execution context.", + "type": "string", + "readOnly": true + }, + "errors": { + "description": "Errors.", + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDetails" + }, + "readOnly": true + } + } + }, + "ErrorDetails": { + "description": "Error contract returned when some exception occurs in Rest API.", + "type": "object", + "properties": { + "code": { + "description": "Error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Error message.", + "type": "string", + "readOnly": true + }, + "possibleCauses": { + "description": "Possible causes of error.", + "type": "string", + "readOnly": true + }, + "recommendedAction": { + "description": "Recommended action to resolve error.", + "type": "string", + "readOnly": true + }, + "severity": { + "description": "Error severity.", + "type": "string", + "readOnly": true + }, + "isAgentReportedError": { + "description": "Value indicating whether the error originated from a agent or not.", + "type": "boolean", + "readOnly": true + }, + "agentErrorCode": { + "description": "Agent error code.", + "type": "string", + "readOnly": true + }, + "agentErrorMessage": { + "description": "Error message from the agent.", + "type": "string", + "readOnly": true + }, + "agentErrorPossibleCauses": { + "description": "Possible causes for the agent error.", + "type": "string", + "readOnly": true + }, + "agentErrorRecommendedAction": { + "description": "Recommended action for the agent error.", + "type": "string", + "readOnly": true + } + } + }, + "HyperVJobCollection": { + "description": "Collection of Hyper-V jobs.", + "type": "object", + "properties": { + "value": { + "description": "List of jobs.", + "type": "array", + "items": { + "$ref": "#/definitions/HyperVJob" + }, + "readOnly": true + }, + "nextLink": { + "description": "Value of next link.", + "type": "string", + "readOnly": true + } + } + }, + "HyperVMachine": { + "description": "Machine REST Resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the Sites.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of resource. Type = Microsoft.OffAzure/HyperVSites/Machines.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/HyperVMachineProperties", + "description": "Nested properties.", + "readOnly": true + } + } + }, + "HyperVMachineProperties": { + "description": "Class for machine properties.", + "type": "object", + "properties": { + "hostFqdn": { + "description": "Host FQDN/IPAddress.", + "type": "string", + "readOnly": true + }, + "hostId": { + "description": "Host ARM ID.", + "type": "string", + "readOnly": true + }, + "clusterFqdn": { + "description": "Cluster FQDN/IPAddress.", + "type": "string", + "readOnly": true + }, + "clusterId": { + "description": "Cluster ARM ID.", + "type": "string", + "readOnly": true + }, + "managementServerType": { + "description": "Management server type of the machine. It is either Host or Cluster.", + "type": "string", + "readOnly": true + }, + "generation": { + "format": "int32", + "description": "Generation of the virtual machine.", + "type": "integer", + "readOnly": true + }, + "version": { + "description": "VM version.", + "type": "string", + "readOnly": true + }, + "highAvailability": { + "description": "Value indicating whether the VM is highly available.", + "enum": [ + "Unknown", + "No", + "Yes" + ], + "x-ms-enum": { + "name": "HighlyAvailable", + "modelAsString": false + }, + "type": "string", + "readOnly": true + }, + "maxMemoryMB": { + "format": "int32", + "description": "Max memory of the virtual machine in MB.", + "type": "integer", + "readOnly": true + }, + "firmware": { + "description": "Firmware of the machine.", + "type": "string", + "readOnly": true + }, + "isDynamicMemoryEnabled": { + "description": "Value indicating whether dynamic memory is enabled for the VM.", + "type": "boolean", + "readOnly": true + }, + "disks": { + "description": "Disks attached to the machine.", + "type": "array", + "items": { + "$ref": "#/definitions/HyperVDisk" + }, + "readOnly": true + }, + "appsAndRoles": { + "$ref": "#/definitions/AppsAndRoles", + "description": "Apps and Roles of the VM.", + "readOnly": true + }, + "networkAdapters": { + "description": "Network adapters attached to the machine.", + "type": "array", + "items": { + "$ref": "#/definitions/HyperVNetworkAdapter" + }, + "readOnly": true + }, + "displayName": { + "description": "Display name of the machine.", + "type": "string", + "readOnly": true + }, + "numberOfProcessorCore": { + "format": "int32", + "description": "Number of Processor Cores allocated for the machine.", + "type": "integer", + "readOnly": true + }, + "allocatedMemoryInMB": { + "format": "double", + "description": "Allocated Memory in MB.", + "type": "number", + "readOnly": true + }, + "vmConfigurationFileLocation": { + "description": "Root location of the VM configuration file.", + "type": "string", + "readOnly": true + }, + "operatingSystemDetails": { + "$ref": "#/definitions/OperatingSystem", + "description": "Operating System Details installed on the machine.", + "readOnly": true + }, + "guestOSDetails": { + "$ref": "#/definitions/GuestOSDetails", + "description": "Operating System Details extracted from the guest by executing script inside the guest VM.", + "readOnly": true + }, + "numberOfApplications": { + "format": "int32", + "description": "Number of applications installed in the guest VM.", + "type": "integer", + "readOnly": true + }, + "guestDetailsDiscoveryTimestamp": { + "format": "date-time", + "description": "The last time at which the Guest Details of machine was discovered.", + "type": "string", + "readOnly": true + }, + "isGuestDetailsDiscoveryInProgress": { + "description": "Whether Refresh Fabric Layout Guest Details has been completed once. Portal will show discovery in progress, if this value is true.", + "type": "boolean", + "readOnly": true + }, + "createdTimestamp": { + "description": "Timestamp marking machine creation.", + "type": "string", + "readOnly": true + }, + "updatedTimestamp": { + "description": "Timestamp marking last updated on the machine.", + "type": "string", + "readOnly": true + }, + "instanceUuid": { + "description": "On-premise Instance UUID of the machine.", + "type": "string", + "readOnly": true + }, + "powerStatus": { + "description": "Machine power status.", + "type": "string", + "readOnly": true + }, + "biosSerialNumber": { + "description": "Machine BIOS serial number.", + "type": "string", + "readOnly": true + }, + "biosGuid": { + "description": "Machine BIOS GUID.", + "type": "string", + "readOnly": true + }, + "vmFqdn": { + "description": "Machine FQDN.", + "type": "string", + "readOnly": true + }, + "isDeleted": { + "description": "Value indicating whether VM is deleted.", + "type": "boolean", + "readOnly": true + }, + "errors": { + "description": "Errors for machine.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthErrorDetails" + }, + "readOnly": true + } + } + }, + "HyperVDisk": { + "description": "Second level object returned as part of Machine REST resource.", + "type": "object", + "properties": { + "instanceId": { + "description": "Id of the disk.", + "type": "string", + "readOnly": true + }, + "vhdId": { + "description": "VHD Id of the disk.", + "type": "string", + "readOnly": true + }, + "maxSizeInBytes": { + "format": "int64", + "description": "Bytes allocated for the disk.", + "type": "integer", + "readOnly": true + }, + "name": { + "description": "Name of the disk.", + "type": "string", + "readOnly": true + }, + "diskType": { + "description": "Type of the disk.", + "type": "string", + "readOnly": true + }, + "lun": { + "format": "int32", + "description": "LUN of the disk.", + "type": "integer", + "readOnly": true + }, + "path": { + "description": "Path of the disk.", + "type": "string", + "readOnly": true + } + } + }, + "AppsAndRoles": { + "description": "AppsAndRoles in the guest virtual machine.", + "type": "object", + "properties": { + "applications": { + "description": "Applications of the AppsAndRoles.", + "type": "array", + "items": { + "$ref": "#/definitions/Application" + }, + "readOnly": true + }, + "webApplications": { + "description": "WebApplications of the AppsAndRoles.", + "type": "array", + "items": { + "$ref": "#/definitions/WebApplication" + }, + "readOnly": true + }, + "features": { + "description": "Features of the AppsAndRoles.", + "type": "array", + "items": { + "$ref": "#/definitions/Feature" + }, + "readOnly": true + }, + "sqlServers": { + "description": "SQLServers of the AppsAndRoles.", + "type": "array", + "items": { + "$ref": "#/definitions/SQLServer" + }, + "readOnly": true + }, + "sharePointServers": { + "description": "SharePointServers of the AppsAndRoles.", + "type": "array", + "items": { + "$ref": "#/definitions/SharePointServer" + }, + "readOnly": true + }, + "systemCenters": { + "description": "SystemCenters of the AppsAndRoles.", + "type": "array", + "items": { + "$ref": "#/definitions/SystemCenter" + }, + "readOnly": true + }, + "bizTalkServers": { + "description": "BizTalkServers of the AppsAndRoles.", + "type": "array", + "items": { + "$ref": "#/definitions/BizTalkServer" + }, + "readOnly": true + }, + "exchangeServers": { + "description": "ExchangeServers of the AppsAndRoles.", + "type": "array", + "items": { + "$ref": "#/definitions/ExchangeServer" + }, + "readOnly": true + }, + "otherDatabases": { + "description": "OtherDatabaseServers of the AppsAndRoles.", + "type": "array", + "items": { + "$ref": "#/definitions/OtherDatabase" + }, + "readOnly": true + } + } + }, + "HyperVNetworkAdapter": { + "description": "Second level object represented in responses as part of Machine REST resource.", + "type": "object", + "properties": { + "networkId": { + "description": "Network Id.", + "type": "string", + "readOnly": true + }, + "subnetName": { + "description": "Name of the VM subnet within the virtual network the NIC is attached to.", + "type": "string", + "readOnly": true + }, + "staticIpAddress": { + "description": "Static IP address.", + "type": "string", + "readOnly": true + }, + "nicType": { + "description": "Mac address of the NIC.", + "type": "string", + "readOnly": true + }, + "nicId": { + "description": "NIC Id.", + "type": "string", + "readOnly": true + }, + "macAddress": { + "description": "Mac address of the NIC.", + "type": "string", + "readOnly": true + }, + "ipAddressList": { + "description": "IP addresses for the machine.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "networkName": { + "description": "Network Name.", + "type": "string", + "readOnly": true + }, + "ipAddressType": { + "description": "Type of the IP address.", + "type": "string", + "readOnly": true + } + } + }, + "OperatingSystem": { + "description": "Second level object returned as part of Machine REST resource.", + "type": "object", + "properties": { + "osType": { + "description": "Type of the operating system.", + "type": "string", + "readOnly": true + }, + "osName": { + "description": "Name of the operating system.", + "type": "string", + "readOnly": true + }, + "osVersion": { + "description": "Version of the operating system.", + "type": "string", + "readOnly": true + } + } + }, + "GuestOSDetails": { + "description": "Data related to a machine's operating system. Serialized and stored as part of Machine Rest object.", + "type": "object", + "properties": { + "osType": { + "description": "Type of the operating system.", + "type": "string" + }, + "osName": { + "description": "Name of the operating system.", + "type": "string", + "readOnly": true + }, + "osVersion": { + "description": "Version of the operating system.", + "type": "string", + "readOnly": true + } + } + }, + "Application": { + "description": "Application in the guest virtual machine.", + "type": "object", + "properties": { + "name": { + "description": "Name of the Application.", + "type": "string", + "readOnly": true + }, + "version": { + "description": "Version of the Application.", + "type": "string", + "readOnly": true + }, + "provider": { + "description": "Provider of the Application.", + "type": "string", + "readOnly": true + } + } + }, + "WebApplication": { + "description": "WebApplication in the guest virtual machine.", + "type": "object", + "properties": { + "name": { + "description": "Name of the WebApplication.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the WebApplication.", + "type": "string", + "readOnly": true + }, + "platform": { + "description": "Platform of the WebApplication.", + "type": "string", + "readOnly": true + }, + "groupName": { + "description": "GroupName of the WebApplication.", + "type": "string", + "readOnly": true + }, + "webServer": { + "description": "WebServer of the WebApplication.", + "type": "string", + "readOnly": true + }, + "applicationPool": { + "description": "ApplicationPool of the WebApplication.", + "type": "string", + "readOnly": true + } + } + }, + "Feature": { + "description": "Feature in the guest virtual machine.", + "type": "object", + "properties": { + "name": { + "description": "Name of the Feature.", + "type": "string", + "readOnly": true + }, + "featureType": { + "description": "FeatureType of the Feature.", + "type": "string", + "readOnly": true + }, + "parent": { + "description": "Parent of the Feature.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the Feature.", + "type": "string", + "readOnly": true + } + } + }, + "SQLServer": { + "description": "SQLServer in the guest virtual machine.", + "type": "object", + "properties": { + "name": { + "description": "Name of the SQLServer.", + "type": "string", + "readOnly": true + }, + "edition": { + "description": "Edition of the SQLServer.", + "type": "string", + "readOnly": true + }, + "servicePack": { + "description": "ServicePack of the SQLServer.", + "type": "string", + "readOnly": true + }, + "version": { + "description": "Version of the SQLServer.", + "type": "string", + "readOnly": true + }, + "clustered": { + "description": "Clustered of the SQLServer.", + "type": "string", + "readOnly": true + }, + "clusterName": { + "description": "ClusterName of the SQLServer.", + "type": "string", + "readOnly": true + } + } + }, + "SharePointServer": { + "description": "SharePointServer in the guest virtual machine.", + "type": "object", + "properties": { + "productName": { + "description": "ProductName of the SharePointServer.", + "type": "string", + "readOnly": true + }, + "isEnterprise": { + "description": "Value indicating whether the SharePointServer is Enterprise.", + "type": "boolean", + "readOnly": true + }, + "status": { + "description": "Status of the SharePointServer.", + "type": "string", + "readOnly": true + }, + "version": { + "description": "Version of the SharePointServer.", + "type": "string", + "readOnly": true + } + } + }, + "SystemCenter": { + "description": "SystemCenter in the guest virtual machine.", + "type": "object", + "properties": { + "productName": { + "description": "ProductName of the SystemCenter.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the SystemCenter.", + "type": "string", + "readOnly": true + }, + "version": { + "description": "Version of the SystemCenter.", + "type": "string", + "readOnly": true + } + } + }, + "BizTalkServer": { + "description": "BizTalkServer in the guest virtual machine.", + "type": "object", + "properties": { + "productName": { + "description": "ProductName of the BizTalkServer.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the BizTalkServer.", + "type": "string", + "readOnly": true + } + } + }, + "ExchangeServer": { + "description": "ExchangeServer in the guest virtual machine.", + "type": "object", + "properties": { + "productName": { + "description": "ProductName of the ExchangeServer.", + "type": "string", + "readOnly": true + }, + "edition": { + "description": "Edition of the ExchangeServer.", + "type": "string", + "readOnly": true + }, + "roles": { + "description": "Roles of the ExchangeServer.", + "type": "string", + "readOnly": true + }, + "servicePack": { + "description": "ServicePack of the ExchangeServer.", + "type": "string", + "readOnly": true + }, + "version": { + "description": "Version of the ExchangeServer.", + "type": "string", + "readOnly": true + } + } + }, + "OtherDatabase": { + "description": "OtherDatabase in the guest virtual machine.", + "type": "object", + "properties": { + "databaseType": { + "description": "DatabaseType of the OtherDatabase.", + "type": "string", + "readOnly": true + }, + "instance": { + "description": "Instance of the OtherDatabase.", + "type": "string", + "readOnly": true + }, + "version": { + "description": "Version of the OtherDatabase.", + "type": "string", + "readOnly": true + } + } + }, + "HyperVMachineCollection": { + "description": "Collection of Hyper-V machines.", + "type": "object", + "properties": { + "value": { + "description": "List of machines.", + "type": "array", + "items": { + "$ref": "#/definitions/HyperVMachine" + }, + "readOnly": true + }, + "nextLink": { + "description": "Value of next link.", + "type": "string", + "readOnly": true + } + } + }, + "OperationStatus": { + "description": "Operation status REST resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Operation name.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the operation. ARM expects the terminal status to be one of Succeeded/ Failed/ Canceled. All other values imply that the operation is still running.", + "type": "string", + "readOnly": true + }, + "startTime": { + "description": "Start time.", + "type": "string", + "readOnly": true + }, + "endTime": { + "description": "End time.", + "type": "string", + "readOnly": true + }, + "error": { + "$ref": "#/definitions/OperationStatusError", + "description": "Error stating all error details for the operation.", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/OperationStatusProperties", + "description": "Custom data.", + "readOnly": true + } + } + }, + "OperationStatusError": { + "description": "Class for operation status errors.", + "type": "object", + "properties": { + "code": { + "description": "Error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Error message.", + "type": "string", + "readOnly": true + } + } + }, + "OperationStatusProperties": { + "description": "Class for operation result properties.", + "type": "object", + "properties": { + "result": { + "description": "Result or output of the workflow.", + "type": "string" + } + } + }, + "HyperVRunAsAccount": { + "description": "Run as account REST Resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the Sites.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of resource. Type = Microsoft.OffAzure/HyperVSites/RunAsAccounts.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/RunAsAccountProperties", + "description": "Nested properties of run as account.", + "readOnly": true + } + } + }, + "RunAsAccountProperties": { + "description": "Class for run as account properties.", + "type": "object", + "properties": { + "displayName": { + "description": "Display name of the run as account.", + "type": "string", + "readOnly": true + }, + "credentialType": { + "description": "Credential type of the run as account.", + "enum": [ + "VMwareFabric", + "HyperVFabric", + "LinuxGuest", + "WindowsGuest", + "LinuxServer", + "WindowsServer" + ], + "x-ms-enum": { + "name": "CredentialType", + "modelAsString": true + }, + "type": "string", + "readOnly": true + }, + "createdTimestamp": { + "description": "Timestamp marking run as account creation.", + "type": "string", + "readOnly": true + }, + "updatedTimestamp": { + "description": "Timestamp marking last updated on the run as account.", + "type": "string", + "readOnly": true + } + } + }, + "HyperVRunAsAccountCollection": { + "description": "Collection of Hyper-V run as accounts.", + "type": "object", + "properties": { + "value": { + "description": "List of run as accounts.", + "type": "array", + "items": { + "$ref": "#/definitions/HyperVRunAsAccount" + }, + "readOnly": true + }, + "nextLink": { + "description": "Value of next link.", + "type": "string", + "readOnly": true + } + } + }, + "HyperVSite": { + "description": "Site REST Resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the Hyper-V site.", + "type": "string" + }, + "type": { + "description": "Type of resource. Type = Microsoft.OffAzure/HyperVSites.", + "type": "string", + "readOnly": true + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "eTag": { + "description": "eTag for concurrency control.", + "type": "string" + }, + "location": { + "description": "Azure location in which Sites is created.", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/SiteProperties", + "description": "Nested properties of Hyper-V site." + } + } + }, + "SiteProperties": { + "description": "Class for site properties.", + "type": "object", + "properties": { + "servicePrincipalIdentityDetails": { + "$ref": "#/definitions/SiteSpnProperties", + "description": "Service principal identity details used by agent for communication to the service." + }, + "agentDetails": { + "$ref": "#/definitions/SiteAgentProperties", + "description": "On-premises agent details." + }, + "serviceEndpoint": { + "description": "Service endpoint.", + "type": "string", + "readOnly": true + }, + "discoverySolutionId": { + "description": "ARM ID of migration hub solution for SDS.", + "type": "string" + }, + "applianceName": { + "description": "Appliance Name.", + "type": "string" + } + } + }, + "SiteSpnProperties": { + "description": "Class for site properties.", + "type": "object", + "properties": { + "tenantId": { + "description": "Tenant Id for the service principal with which the on-premise management/data plane components would communicate with our Azure services.", + "type": "string" + }, + "applicationId": { + "description": "Application/client Id for the service principal with which the on-premise management/data plane components would communicate with our Azure services.", + "type": "string" + }, + "objectId": { + "description": "Object Id of the service principal with which the on-premise management/data plane components would communicate with our Azure services.", + "type": "string" + }, + "audience": { + "description": "Intended audience for the service principal.", + "type": "string" + }, + "aadAuthority": { + "description": "AAD Authority URL which was used to request the token for the service principal.", + "type": "string" + }, + "rawCertData": { + "description": "Raw certificate data for building certificate expiry flows.", + "type": "string" + } + } + }, + "SiteAgentProperties": { + "description": "Class for site agent properties.", + "type": "object", + "properties": { + "id": { + "description": "ID of the agent.", + "type": "string", + "readOnly": true + }, + "version": { + "description": "Version of the agent.", + "type": "string", + "readOnly": true + }, + "lastHeartBeatUtc": { + "format": "date-time", + "description": "Last heartbeat time of the agent in UTC.", + "type": "string", + "readOnly": true + }, + "keyVaultUri": { + "description": "Key vault URI.", + "type": "string" + }, + "keyVaultId": { + "description": "Key vault ARM Id.", + "type": "string" + } + } + }, + "HyperVSiteUsage": { + "description": "Hyper-V site usage.", + "type": "object", + "properties": { + "machineCount": { + "format": "int32", + "description": "Number of machines discovered in the site.", + "type": "integer" + }, + "runAsAccountCount": { + "format": "int32", + "description": "Number of run as accounts in the site.", + "type": "integer" + }, + "hostCount": { + "format": "int32", + "description": "Number of hosts part of the site.", + "type": "integer" + }, + "clusterCount": { + "format": "int32", + "description": "Number of clusters part of the site.", + "type": "integer" + } + } + }, + "SiteHealthSummaryCollection": { + "description": "Collection of SiteHealthSummary.", + "type": "object", + "properties": { + "value": { + "description": "List of SiteHealthSummary.", + "type": "array", + "items": { + "$ref": "#/definitions/SiteHealthSummary" + }, + "readOnly": true + }, + "nextLink": { + "description": "Value of next link.", + "type": "string", + "readOnly": true + } + } + }, + "SiteHealthSummary": { + "description": "Site health summary model.", + "type": "object", + "properties": { + "applianceName": { + "description": "Appliance name.", + "type": "string", + "readOnly": true + }, + "errorMessage": { + "description": "Error message.", + "type": "string", + "readOnly": true + }, + "summaryMessage": { + "description": "Summary message.", + "type": "string", + "readOnly": true + }, + "errorId": { + "format": "int64", + "description": "Error Id.", + "type": "integer", + "readOnly": true + }, + "errorCode": { + "description": "Error code.", + "type": "string", + "readOnly": true + }, + "affectedObjectsCount": { + "format": "int64", + "description": "Count of affected objects.", + "type": "integer" + }, + "hitCount": { + "format": "int64", + "description": "Hit count of the error.", + "type": "integer" + }, + "severity": { + "description": "Severity of error.", + "type": "string", + "readOnly": true + }, + "remediationGuidance": { + "description": "Remediation guidance.", + "type": "string", + "readOnly": true + }, + "affectedResourceType": { + "description": "Affected resource type.", + "type": "string", + "readOnly": true + }, + "affectedResources": { + "description": "Affected resources.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "VMwareJob": { + "description": "Job REST Resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the job.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of resource. Type = Microsoft.OffAzure/VMWareSites/Jobs.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/JobProperties", + "description": "Nested properties of job.", + "readOnly": true + } + } + }, + "VMwareJobCollection": { + "description": "Collection of VMware jobs.", + "type": "object", + "properties": { + "value": { + "description": "List of jobs.", + "type": "array", + "items": { + "$ref": "#/definitions/VMwareJob" + }, + "readOnly": true + }, + "nextLink": { + "description": "Value of next link.", + "type": "string", + "readOnly": true + } + } + }, + "VMwareMachine": { + "description": "Machine REST Resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the Sites.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of resource. Type = Microsoft.OffAzure/VMWareSites/Machines.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/VMwareMachineProperties", + "description": "Nested properties.", + "readOnly": true + } + } + }, + "VMwareMachineProperties": { + "description": "Class for machine properties.", + "type": "object", + "properties": { + "dataCenterScope": { + "description": "Scope of the data center.", + "type": "string", + "readOnly": true + }, + "firmware": { + "description": "Firmware of the machine.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "User description of the machine.", + "type": "string", + "readOnly": true + }, + "vCenterFQDN": { + "description": "VCenter FQDN/IPAddress.", + "type": "string", + "readOnly": true + }, + "vCenterId": { + "description": "VCenter ARM ID.", + "type": "string", + "readOnly": true + }, + "vMwareToolsStatus": { + "description": "VMware tools status.", + "type": "string", + "readOnly": true + }, + "changeTrackingSupported": { + "description": "Value indicating whether change tracking is supported.", + "type": "boolean", + "readOnly": true + }, + "changeTrackingEnabled": { + "description": "Value indicating whether change tracking is enabled.", + "type": "boolean", + "readOnly": true + }, + "maxSnapshots": { + "format": "int32", + "description": "Maximum number of snapshots for the VM. Default value is -1.", + "type": "integer", + "readOnly": true + }, + "disks": { + "description": "Disks attached to the machine.", + "type": "array", + "items": { + "$ref": "#/definitions/VMwareDisk" + }, + "readOnly": true + }, + "appsAndRoles": { + "$ref": "#/definitions/AppsAndRoles", + "description": "Apps And Roles of the VM.", + "readOnly": true + }, + "hostInMaintenanceMode": { + "description": "Indicates whether the host is in maintenance mode.", + "type": "boolean", + "readOnly": true + }, + "hostName": { + "description": "The host name.", + "type": "string", + "readOnly": true + }, + "hostPowerState": { + "description": "The host power state.", + "type": "string", + "readOnly": true + }, + "hostVersion": { + "description": "The host version.", + "type": "string", + "readOnly": true + }, + "networkAdapters": { + "description": "Network adapters attached to the machine.", + "type": "array", + "items": { + "$ref": "#/definitions/VMwareNetworkAdapter" + }, + "readOnly": true + }, + "dependencyMapping": { + "description": "If dependency mapping feature is enabled or not for the VM.", + "type": "string", + "readOnly": true + }, + "dependencyMappingStartTime": { + "format": "date-time", + "description": "When dependency mapping collection is last started.", + "type": "string", + "readOnly": true + }, + "displayName": { + "description": "Display name of the machine.", + "type": "string", + "readOnly": true + }, + "numberOfProcessorCore": { + "format": "int32", + "description": "Number of Processor Cores allocated for the machine.", + "type": "integer", + "readOnly": true + }, + "allocatedMemoryInMB": { + "format": "double", + "description": "Allocated Memory in MB.", + "type": "number", + "readOnly": true + }, + "vmConfigurationFileLocation": { + "description": "Root location of the VM configuration file.", + "type": "string", + "readOnly": true + }, + "operatingSystemDetails": { + "$ref": "#/definitions/OperatingSystem", + "description": "Operating System Details installed on the machine.", + "readOnly": true + }, + "guestOSDetails": { + "$ref": "#/definitions/GuestOSDetails", + "description": "Operating System Details extracted from the guest bu executing script inside the guest VM.", + "readOnly": true + }, + "numberOfApplications": { + "format": "int32", + "description": "Number of applications installed in the guest VM.", + "type": "integer", + "readOnly": true + }, + "guestDetailsDiscoveryTimestamp": { + "format": "date-time", + "description": "The last time at which the Guest Details was discovered or the error while discovering guest details based discovery of the machine.", + "type": "string", + "readOnly": true + }, + "isGuestDetailsDiscoveryInProgress": { + "description": "Whether Refresh Fabric Layout Guest Details has been completed once. Portal will show discovery in progress, if this value is true.", + "type": "boolean", + "readOnly": true + }, + "createdTimestamp": { + "description": "Timestamp marking machine creation.", + "type": "string", + "readOnly": true + }, + "updatedTimestamp": { + "description": "Timestamp marking last updated on the machine.", + "type": "string", + "readOnly": true + }, + "instanceUuid": { + "description": "On-premise Instance UUID of the machine.", + "type": "string", + "readOnly": true + }, + "powerStatus": { + "description": "Machine power status.", + "type": "string", + "readOnly": true + }, + "biosSerialNumber": { + "description": "Machine BIOS serial number.", + "type": "string", + "readOnly": true + }, + "biosGuid": { + "description": "BIOS GUID.", + "type": "string", + "readOnly": true + }, + "vmFqdn": { + "description": "Machine FQDN.", + "type": "string", + "readOnly": true + }, + "isDeleted": { + "description": "Value indicating whether VM is deleted.", + "type": "boolean", + "readOnly": true + }, + "errors": { + "description": "Errors for machine.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthErrorDetails" + }, + "readOnly": true + } + } + }, + "VMwareDisk": { + "description": "Second level object returned as part of Machine REST resource.", + "type": "object", + "properties": { + "uuid": { + "description": "Disk UUID.", + "type": "string", + "readOnly": true + }, + "label": { + "description": "Label of the disk.", + "type": "string", + "readOnly": true + }, + "diskProvisioningPolicy": { + "description": "The provisioning policy of the disk. It is Thin or Thick or Unknown for the VMWare.", + "type": "string", + "readOnly": true + }, + "diskScrubbingPolicy": { + "description": "The scrubbing policy of disks which can be eagerly zeroed or lazily zeroed.", + "type": "string", + "readOnly": true + }, + "diskMode": { + "description": "Disk mode property used for identifying independent disks.", + "enum": [ + "persistent", + "independent_persistent", + "independent_nonpersistent", + "nonpersistent", + "undoable", + "append" + ], + "x-ms-enum": { + "name": "VirtualDiskMode", + "modelAsString": true + }, + "type": "string", + "readOnly": true + }, + "maxSizeInBytes": { + "format": "int64", + "description": "Bytes allocated for the disk.", + "type": "integer", + "readOnly": true + }, + "name": { + "description": "Name of the disk.", + "type": "string", + "readOnly": true + }, + "diskType": { + "description": "Type of the disk.", + "type": "string", + "readOnly": true + }, + "lun": { + "format": "int32", + "description": "LUN of the disk.", + "type": "integer", + "readOnly": true + }, + "path": { + "description": "Path of the disk.", + "type": "string", + "readOnly": true + } + } + }, + "VMwareNetworkAdapter": { + "description": "Second level object represented in responses as part of Machine REST resource.", + "type": "object", + "properties": { + "label": { + "description": "Label of the NIC.", + "type": "string", + "readOnly": true + }, + "nicId": { + "description": "NIC Id.", + "type": "string", + "readOnly": true + }, + "macAddress": { + "description": "Mac address of the NIC.", + "type": "string", + "readOnly": true + }, + "ipAddressList": { + "description": "IP addresses for the machine.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "networkName": { + "description": "Network Name.", + "type": "string", + "readOnly": true + }, + "ipAddressType": { + "description": "Type of the IP address.", + "type": "string", + "readOnly": true + } + } + }, + "VMwareMachineCollection": { + "description": "Collection of VMware machines.", + "type": "object", + "properties": { + "value": { + "description": "List of machines.", + "type": "array", + "items": { + "$ref": "#/definitions/VMwareMachine" + }, + "readOnly": true + }, + "nextLink": { + "description": "Value of next link.", + "type": "string", + "readOnly": true + } + } + }, + "VMwareRunAsAccount": { + "description": "Run as account REST Resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the Run as account.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of resource. Type = Microsoft.OffAzure/VMWareSites/RunAsAccounts.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/RunAsAccountProperties", + "description": "Nested properties of Run as account.", + "readOnly": true + } + } + }, + "VMwareRunAsAccountCollection": { + "description": "Collection of VMware run as accounts.", + "type": "object", + "properties": { + "value": { + "description": "List of run as accounts.", + "type": "array", + "items": { + "$ref": "#/definitions/VMwareRunAsAccount" + }, + "readOnly": true + }, + "nextLink": { + "description": "Value of next link.", + "type": "string", + "readOnly": true + } + } + }, + "VMwareSite": { + "description": "Site REST Resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the VMware site.", + "type": "string" + }, + "type": { + "description": "Type of resource. Type = Microsoft.OffAzure/VMWareSites.", + "type": "string", + "readOnly": true + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "eTag": { + "description": "eTag for concurrency control.", + "type": "string" + }, + "location": { + "description": "Azure location in which Sites is created.", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/SiteProperties", + "description": "Nested properties of VMWare site." + } + } + }, + "VMwareSiteUsage": { + "description": "VMware site usage.", + "type": "object", + "properties": { + "machineCount": { + "format": "int32", + "description": "Number of machines discovered in the site.", + "type": "integer" + }, + "runAsAccountCount": { + "format": "int32", + "description": "Number of run as accounts in the site.", + "type": "integer" + }, + "vCenterCount": { + "format": "int32", + "description": "Number of vCenters part of the site.", + "type": "integer" + } + } + }, + "VCenter": { + "description": "VCenter REST Resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the vCenter.", + "type": "string" + }, + "type": { + "description": "Type of resource. Type = Microsoft.OffAzure/VMWareSites/VCenters.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/VCenterProperties", + "description": "vCenter nested properties." + } + } + }, + "VCenterProperties": { + "description": "Class for vCenter properties.", + "type": "object", + "properties": { + "createdTimestamp": { + "description": "Timestamp marking vCenter creation.", + "type": "string", + "readOnly": true + }, + "updatedTimestamp": { + "description": "Timestamp marking last updated on the vCenter.", + "type": "string", + "readOnly": true + }, + "fqdn": { + "description": "FQDN/IPAddress of the vCenter.", + "type": "string" + }, + "port": { + "description": "Port of the vCenter.", + "type": "string" + }, + "runAsAccountId": { + "description": "Run as account ID of the vCenter.", + "type": "string" + }, + "version": { + "description": "Version of the vCenter.", + "type": "string", + "readOnly": true + }, + "perfStatisticsLevel": { + "description": "Performance statistics enabled on the vCenter.", + "type": "string", + "readOnly": true + }, + "instanceUuid": { + "description": "Instance UUID of the vCenter.", + "type": "string", + "readOnly": true + }, + "errors": { + "description": "Error details.", + "type": "array", + "items": { + "$ref": "#/definitions/HealthErrorDetails" + }, + "readOnly": true + } + } + }, + "VCenterCollection": { + "description": "Collection of vCenter.", + "type": "object", + "properties": { + "value": { + "description": "List of vCenter.", + "type": "array", + "items": { + "$ref": "#/definitions/VCenter" + }, + "readOnly": true + }, + "nextLink": { + "description": "Value of next link.", + "type": "string", + "readOnly": true + } + } + }, + "Machine": { + "type": "object", + "properties": { + "properties.timestamp": { + "format": "date-time", + "type": "string" + }, + "properties.monitoringState": { + "enum": [ + "monitored", + "discovered" + ], + "type": "string" + }, + "properties.virtualizationState": { + "enum": [ + "unknown", + "physical", + "virtual", + "hypervisor" + ], + "type": "string" + }, + "properties.displayName": { + "type": "string" + }, + "properties.computerName": { + "type": "string" + }, + "properties.fullyQualifiedDomainName": { + "type": "string" + }, + "properties.bootTime": { + "format": "date-time", + "type": "string" + }, + "properties.timezone": { + "$ref": "#/definitions/Timezone" + }, + "properties.agent": { + "$ref": "#/definitions/AgentConfiguration" + }, + "properties.resources": { + "$ref": "#/definitions/MachineResourcesConfiguration" + }, + "properties.networking": { + "$ref": "#/definitions/NetworkConfiguration" + }, + "properties.operatingSystem": { + "$ref": "#/definitions/OperatingSystemConfiguration" + }, + "properties.virtualMachine": { + "$ref": "#/definitions/VirtualMachineConfiguration" + }, + "properties.hypervisor": { + "$ref": "#/definitions/HypervisorConfiguration" + }, + "properties.hosting": { + "$ref": "#/definitions/HostingConfiguration" + }, + "etag": { + "type": "string" + }, + "id": { + "type": "string" + }, + "type": { + "type": "string" + }, + "name": { + "type": "string" + } + } + }, + "Timezone": { + "type": "object", + "properties": { + "fullName": { + "type": "string" + } + } + }, + "AgentConfiguration": { + "type": "object", + "properties": { + "agentId": { + "type": "string" + }, + "dependencyAgentId": { + "type": "string" + }, + "dependencyAgentVersion": { + "type": "string" + }, + "dependencyAgentRevision": { + "type": "string" + }, + "rebootStatus": { + "enum": [ + "unknown", + "rebooted", + "notRebooted" + ], + "type": "string" + }, + "clockGranularity": { + "format": "int32", + "type": "integer" + } + } + }, + "MachineResourcesConfiguration": { + "type": "object", + "properties": { + "physicalMemory": { + "format": "int32", + "type": "integer" + }, + "cpus": { + "format": "int32", + "type": "integer" + }, + "cpuSpeed": { + "format": "int32", + "type": "integer" + }, + "cpuSpeedAccuracy": { + "enum": [ + "actual", + "estimated" + ], + "type": "string" + } + } + }, + "NetworkConfiguration": { + "type": "object", + "properties": { + "ipv4Interfaces": { + "type": "array", + "items": { + "$ref": "#/definitions/Ipv4NetworkInterface" + } + }, + "ipv6Interfaces": { + "type": "array", + "items": { + "$ref": "#/definitions/Ipv6NetworkInterface" + } + }, + "defaultIpv4Gateways": { + "type": "array", + "items": { + "type": "string" + } + }, + "macAddresses": { + "type": "array", + "items": { + "type": "string" + } + }, + "dnsNames": { + "type": "array", + "items": { + "type": "string" + } + }, + "dnsQuestions": { + "type": "array", + "items": { + "type": "string" + } + }, + "dnsCanonicalNames": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "OperatingSystemConfiguration": { + "type": "object", + "properties": { + "family": { + "enum": [ + "unknown", + "windows", + "linux", + "solaris", + "aix" + ], + "type": "string" + }, + "fullName": { + "type": "string" + }, + "bitness": { + "enum": [ + "32bit", + "64bit" + ], + "type": "string" + } + } + }, + "VirtualMachineConfiguration": { + "type": "object", + "properties": { + "virtualMachineType": { + "enum": [ + "unknown", + "hyperv", + "ldom", + "lpar", + "vmware", + "virtualPc", + "xen" + ], + "type": "string" + }, + "nativeMachineId": { + "type": "string" + }, + "virtualMachineName": { + "type": "string" + }, + "nativeHostMachineId": { + "type": "string" + } + } + }, + "HypervisorConfiguration": { + "type": "object", + "properties": { + "hypervisorType": { + "enum": [ + "unknown", + "hyperv" + ], + "type": "string" + }, + "nativeHostMachineId": { + "type": "string" + } + } + }, + "HostingConfiguration": { + "type": "object", + "properties": { + "provider": { + "type": "string" + } + } + }, + "Ipv4NetworkInterface": { + "type": "object", + "properties": { + "ipAddress": { + "type": "string" + }, + "subnetMask": { + "type": "string" + } + } + }, + "Ipv6NetworkInterface": { + "type": "object", + "properties": { + "ipAddress": { + "type": "string" + } + } + } + } +} diff --git a/specification/migrate/resource-manager/readme.go.md b/specification/migrate/resource-manager/readme.go.md index 636e72175e29..cdf74f4c5db8 100644 --- a/specification/migrate/resource-manager/readme.go.md +++ b/specification/migrate/resource-manager/readme.go.md @@ -14,6 +14,7 @@ go: ``` yaml $(go) && $(multiapi) batch: - tag: package-2018-02 + - tag: package-2020-01 ``` ### Tag: package-2018-02 and go @@ -24,3 +25,12 @@ Please also specify `--go-sdk-folder=`. + +``` yaml $(tag)=='package-2020-01' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2020-01-01/$(namespace) +``` \ No newline at end of file diff --git a/specification/migrate/resource-manager/readme.md b/specification/migrate/resource-manager/readme.md index cef2a0085192..c88038586b1c 100644 --- a/specification/migrate/resource-manager/readme.md +++ b/specification/migrate/resource-manager/readme.md @@ -11,6 +11,7 @@ This is the AutoRest configuration file for Azure Migrate. ``` yaml $(java) && $(multiapi) batch: - tag: package-2018-02 + - tag: package-2020-01 ``` ### Tag: package-2018-02 and java @@ -26,6 +27,18 @@ regenerate-manager: true generate-interface: true ``` +### Tag: package-2020-01 and java + +These settings apply only when `--tag=package-2020-01 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2020-01' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.azuremigrate.v2020_01_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/azuremigrate/mgmt-v2020_01_01 +regenerate-manager: true +generate-interface: true +``` ## Getting Started To build the SDK for Migrate, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: @@ -68,6 +81,14 @@ input-file: - Microsoft.Migrate/stable/2019-10-01/migrate.json ``` +### Tag: package-2020-01 + +These settings apply only when `--tag=package-2020-01` is specified on the command line. + +``` yaml $(tag) == 'package-2020-01' +input-file: +- Microsoft.OffAzure/stable/2020-01-01/migrate.json +``` # Code Generation ## Swagger to SDK @@ -99,6 +120,7 @@ require: $(this-folder)/../../../profiles/readme.md input-file: - $(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 ``` diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/examples/createOrUpdateSubscriptionDiagnosticSetting.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/examples/createOrUpdateSubscriptionDiagnosticSetting.json index 8758bf0153d8..d4dfb6f6e2a7 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/examples/createOrUpdateSubscriptionDiagnosticSetting.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/examples/createOrUpdateSubscriptionDiagnosticSetting.json @@ -1,71 +1,71 @@ { - "parameters": { - "subscriptionId": "fb9f25f9-5785-4510-a38f-a62f188eb9f8", - "name": "ds4", - "api-version": "2017-05-01-preview", - "parameters": { - "properties": { - "storageAccountId": "/subscriptions/df602c9c-7aa0-407d-a6fb-eb20c8bd1192/resourceGroups/apptest/providers/Microsoft.Storage/storageAccounts/appteststorage1", - "workspaceId": "", - "eventHubAuthorizationRuleId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/montest/providers/microsoft.eventhub/namespaces/mynamespace/eventhubs/myeventhub/authorizationrules/myrule", - "eventHubName": "myeventhub", - "logs": [ - { - "category": "Security", - "enabled": true - } - ] - } - } - }, - "responses": { - "200": { - "headers": {}, - "body": { - "id": "subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/providers/AzureResourceManager/diagnosticSettings/ds4", - "type": null, - "name": "ds4", - "location": "global", - "properties": { - "storageAccountId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/Microsoft.Storage/storageAccounts/appteststorage1", - "workspaceId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/Microsoft.OperationalInsights/workspaces/test1", - "eventHubAuthorizationRuleId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/microsoft.eventhub/namespaces/mynamespace/eventhubs/myeventhub/authorizationrules/myrule", - "logs": [ - { - "category": "Security", - "enabled": true - }, - { - "category": "Administrative", - "enabled": true - }, - { - "category": "ServiceHealth", - "enabled": true - }, - { - "category": "Alert", - "enabled": true - }, - { - "category": "Recommendation", - "enabled": true - }, - { - "category": "Policy", - "enabled": true - }, - { - "category": "Autoscale", - "enabled": true - }, - { - "category": "ResourceHealth", - "enabled": true - } - ] - } - } - } - } -} \ No newline at end of file + "parameters": { + "subscriptionId": "fb9f25f9-5785-4510-a38f-a62f188eb9f8", + "name": "ds4", + "api-version": "2017-05-01-preview", + "parameters": { + "properties": { + "storageAccountId": "/subscriptions/df602c9c-7aa0-407d-a6fb-eb20c8bd1192/resourceGroups/apptest/providers/Microsoft.Storage/storageAccounts/appteststorage1", + "workspaceId": "", + "eventHubAuthorizationRuleId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/montest/providers/microsoft.eventhub/namespaces/mynamespace/eventhubs/myeventhub/authorizationrules/myrule", + "eventHubName": "myeventhub", + "logs": [ + { + "category": "Security", + "enabled": true + } + ] + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/providers/AzureResourceManager/diagnosticSettings/ds4", + "type": null, + "name": "ds4", + "location": "global", + "properties": { + "storageAccountId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/Microsoft.Storage/storageAccounts/appteststorage1", + "workspaceId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/Microsoft.OperationalInsights/workspaces/test1", + "eventHubAuthorizationRuleId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/microsoft.eventhub/namespaces/mynamespace/eventhubs/myeventhub/authorizationrules/myrule", + "logs": [ + { + "category": "Security", + "enabled": true + }, + { + "category": "Administrative", + "enabled": true + }, + { + "category": "ServiceHealth", + "enabled": true + }, + { + "category": "Alert", + "enabled": true + }, + { + "category": "Recommendation", + "enabled": true + }, + { + "category": "Policy", + "enabled": true + }, + { + "category": "Autoscale", + "enabled": true + }, + { + "category": "ResourceHealth", + "enabled": true + } + ] + } + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/examples/getSubscriptionDiagnosticSetting.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/examples/getSubscriptionDiagnosticSetting.json index de2d41d84c12..fb3a6d4ac89b 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/examples/getSubscriptionDiagnosticSetting.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/examples/getSubscriptionDiagnosticSetting.json @@ -1,57 +1,57 @@ { - "parameters": { - "subscriptionId": "fb9f25f9-5785-4510-a38f-a62f188eb9f8", - "name": "mysetting", - "api-version": "2017-05-01-preview" - }, - "responses": { - "200": { - "headers": {}, - "body": { - "id": "subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/providers/AzureResourceManager/diagnosticSettings/ds4", - "type": null, - "name": "ds4", - "location": "global", - "properties": { - "storageAccountId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/Microsoft.Storage/storageAccounts/appteststorage1", - "workspaceId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/Microsoft.OperationalInsights/workspaces/test1", - "eventHubAuthorizationRuleId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/microsoft.eventhub/namespaces/mynamespace/eventhubs/myeventhub/authorizationrules/myrule", - "logs": [ - { - "category": "Security", - "enabled": true - }, - { - "category": "Administrative", - "enabled": true - }, - { - "category": "ServiceHealth", - "enabled": true - }, - { - "category": "Alert", - "enabled": true - }, - { - "category": "Recommendation", - "enabled": true - }, - { - "category": "Policy", - "enabled": true - }, - { - "category": "Autoscale", - "enabled": true - }, - { - "category": "ResourceHealth", - "enabled": true - } - ] - } - } - } - } -} \ No newline at end of file + "parameters": { + "subscriptionId": "fb9f25f9-5785-4510-a38f-a62f188eb9f8", + "name": "mysetting", + "api-version": "2017-05-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/providers/AzureResourceManager/diagnosticSettings/ds4", + "type": null, + "name": "ds4", + "location": "global", + "properties": { + "storageAccountId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/Microsoft.Storage/storageAccounts/appteststorage1", + "workspaceId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/Microsoft.OperationalInsights/workspaces/test1", + "eventHubAuthorizationRuleId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/microsoft.eventhub/namespaces/mynamespace/eventhubs/myeventhub/authorizationrules/myrule", + "logs": [ + { + "category": "Security", + "enabled": true + }, + { + "category": "Administrative", + "enabled": true + }, + { + "category": "ServiceHealth", + "enabled": true + }, + { + "category": "Alert", + "enabled": true + }, + { + "category": "Recommendation", + "enabled": true + }, + { + "category": "Policy", + "enabled": true + }, + { + "category": "Autoscale", + "enabled": true + }, + { + "category": "ResourceHealth", + "enabled": true + } + ] + } + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/examples/listSubscriptionDiagnosticSettings.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/examples/listSubscriptionDiagnosticSettings.json index bcb42cf347fe..9123cfa0649c 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/examples/listSubscriptionDiagnosticSettings.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/examples/listSubscriptionDiagnosticSettings.json @@ -1,59 +1,59 @@ { - "parameters": { - "subscriptionId": "fb9f25f9-5785-4510-a38f-a62f188eb9f8", - "api-version": "2017-05-01-preview" - }, - "responses": { - "200": { - "headers": {}, - "body": { - "value": [ - { - "id": "subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/providers/AzureResourceManager/diagnosticSettings/ds4", - "type": null, - "name": "ds4", - "properties": { - "storageAccountId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/Microsoft.Storage/storageAccounts/appteststorage1", - "workspaceId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/Microsoft.OperationalInsights/workspaces/test1", - "eventHubAuthorizationRuleId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/microsoft.eventhub/namespaces/mynamespace/eventhubs/myeventhub/authorizationrules/myrule", - "logs": [ - { - "category": "Security", - "enabled": true - }, - { - "category": "Administrative", - "enabled": true - }, - { - "category": "ServiceHealth", - "enabled": true - }, - { - "category": "Alert", - "enabled": true - }, - { - "category": "Recommendation", - "enabled": true - }, - { - "category": "Policy", - "enabled": true - }, - { - "category": "Autoscale", - "enabled": true - }, - { - "category": "ResourceHealth", - "enabled": true - } - ] - } - } - ] - } - } - } -} \ No newline at end of file + "parameters": { + "subscriptionId": "fb9f25f9-5785-4510-a38f-a62f188eb9f8", + "api-version": "2017-05-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/providers/AzureResourceManager/diagnosticSettings/ds4", + "type": null, + "name": "ds4", + "properties": { + "storageAccountId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/Microsoft.Storage/storageAccounts/appteststorage1", + "workspaceId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/Microsoft.OperationalInsights/workspaces/test1", + "eventHubAuthorizationRuleId": "/subscriptions/fb9f25f9-5785-4510-a38f-a62f188eb9f8/resourceGroups/apptest/providers/microsoft.eventhub/namespaces/mynamespace/eventhubs/myeventhub/authorizationrules/myrule", + "logs": [ + { + "category": "Security", + "enabled": true + }, + { + "category": "Administrative", + "enabled": true + }, + { + "category": "ServiceHealth", + "enabled": true + }, + { + "category": "Alert", + "enabled": true + }, + { + "category": "Recommendation", + "enabled": true + }, + { + "category": "Policy", + "enabled": true + }, + { + "category": "Autoscale", + "enabled": true + }, + { + "category": "ResourceHealth", + "enabled": true + } + ] + } + } + ] + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/subscriptionDiagnosticsSettings_API.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/subscriptionDiagnosticsSettings_API.json index eeccf0af0225..06da44d826a0 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/subscriptionDiagnosticsSettings_API.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2017-05-01-preview/subscriptionDiagnosticsSettings_API.json @@ -1,341 +1,341 @@ { - "swagger": "2.0", - "info": { - "title": "MonitorManagementClient", - "x-ms-code-generation-settings": { - "name": "MonitorManagementClient" - }, - "version": "2017-05-01-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.insights/diagnosticSettings/{name}": { - "get": { - "tags": [ - "SubscriptionDiagnosticSettings" - ], - "operationId": "SubscriptionDiagnosticSettings_Get", - "description": "Gets the active subscription diagnostic settings for the specified resource.", - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/NameParameter" - } - ], - "responses": { - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - }, - "200": { - "description": "Successful request to get more information about diagnostic setting.", - "schema": { - "$ref": "#/definitions/SubscriptionDiagnosticSettingsResource" - } - } - }, - "x-ms-examples": { - "Gets the subscription diagnostic setting": { - "$ref": "./examples/getSubscriptionDiagnosticSetting.json" - } - } - }, - "put": { - "tags": [ - "SubscriptionDiagnosticSettings" - ], - "operationId": "SubscriptionDiagnosticSettings_CreateOrUpdate", - "description": "Creates or updates subscription diagnostic settings for the specified resource.", - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/SubscriptionDiagnosticSettingsResource" - }, - "description": "Parameters supplied to the operation." - }, - { - "$ref": "#/parameters/NameParameter" - } - ], - "responses": { - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - }, - "200": { - "description": "Successful request to create a subscription diagnostic setting", - "schema": { - "$ref": "#/definitions/SubscriptionDiagnosticSettingsResource" - } - } - }, - "x-ms-examples": { - "Creates or Updates the subscription diagnostic setting": { - "$ref": "./examples/createOrUpdateSubscriptionDiagnosticSetting.json" - } - } - }, - "delete": { - "tags": [ - "SubscriptionDiagnosticSettings" - ], - "operationId": "SubscriptionDiagnosticSettings_Delete", - "description": "Deletes existing subscription diagnostic settings for the specified resource.", - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/NameParameter" - } - ], - "responses": { - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - }, - "200": { - "description": "Successful request to remove a subscription diagnostic setting" - }, - "204": { - "description": "Successful request to remove a subscription diagnostic setting" - } - }, - "x-ms-examples": { - "Deletes the subscription diagnostic setting": { - "$ref": "./examples/deleteSubscriptionDiagnosticSetting.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/microsoft.insights/diagnosticSettings": { - "get": { - "tags": [ - "SubscriptionDiagnosticSettings" - ], - "operationId": "SubscriptionDiagnosticSettings_List", - "description": "Gets the active subscription diagnostic settings list for the specified subscriptionId.", - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ErrorResponse" - } - }, - "200": { - "description": "Successful request to get more information about subscription diagnostic setting", - "schema": { - "$ref": "#/definitions/SubscriptionDiagnosticSettingsResourceCollection" - } - } - }, - "x-ms-examples": { - "Gets the subscription diagnostic setting": { - "$ref": "./examples/listSubscriptionDiagnosticSettings.json" - } - } - } - } - }, - "definitions": { - "SubscriptionProxyOnlyResource": { - "properties": { - "id": { - "type": "string", - "readOnly": true, - "description": "Azure resource Id" - }, - "name": { - "type": "string", - "readOnly": true, - "description": "Azure resource name" - }, - "type": { - "type": "string", - "readOnly": true, - "description": "Azure resource type" - }, - "location": { - "type": "string", - "description": "Location of the resource" - } - }, - "x-ms-azure-resource": true, - "description": "A proxy only azure resource object" - }, - "SubscriptionLogSettings": { - "properties": { - "category": { - "type": "string", - "description": "Name of a Subscription Diagnostic Log category for a resource type this setting is applied to." - }, - "enabled": { - "type": "boolean", - "description": "a value indicating whether this log is enabled." - } - }, - "required": [ - "enabled" - ], - "description": "Part of Subscription diagnostic setting. Specifies the settings for a particular log." - }, - "SubscriptionDiagnosticSettings": { - "properties": { - "storageAccountId": { - "type": "string", - "description": "The resource ID of the storage account to which you would like to send Diagnostic Logs." - }, - "serviceBusRuleId": { - "type": "string", - "description": "The service bus rule Id of the diagnostic setting. This is here to maintain backwards compatibility." - }, - "eventHubAuthorizationRuleId": { - "type": "string", - "description": "The resource Id for the event hub authorization rule." - }, - "eventHubName": { - "type": "string", - "description": "The name of the event hub. If none is specified, the default event hub will be selected." - }, - "logs": { - "type": "array", - "items": { - "$ref": "#/definitions/SubscriptionLogSettings" - }, - "description": "The list of logs settings." - }, - "workspaceId": { - "type": "string", - "description": "The full ARM resource ID of the Log Analytics workspace to which you would like to send Diagnostic Logs. Example: /subscriptions/4b9e8510-67ab-4e9a-95a9-e2f1e570ea9c/resourceGroups/insights-integration/providers/Microsoft.OperationalInsights/workspaces/viruela2" - } - }, - "description": "The subscription diagnostic settings." - }, - "SubscriptionDiagnosticSettingsResource": { - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/SubscriptionProxyOnlyResource" - } - ], - "properties": { - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/SubscriptionDiagnosticSettings", - "description": "Properties of a Subscription Diagnostic Settings Resource." - } - }, - "description": "The subscription diagnostic setting resource." - }, - "SubscriptionDiagnosticSettingsResourceCollection": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/SubscriptionDiagnosticSettingsResource" - }, - "description": "The collection of subscription diagnostic settings resources." - } - }, - "description": "Represents a collection of subscription diagnostic settings resources." - }, - "ErrorResponse": { - "description": "Describes the format of Error response.", - "type": "object", - "properties": { - "code": { - "description": "Error code", - "type": "string" - }, - "message": { - "description": "Error message indicating why the operation failed.", - "type": "string" - } - } - } - }, - "parameters": { - "ApiVersionParameter": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "Client Api Version." - }, - "SubscriptionIdParameter": { - "name": "subscriptionId", - "in": "path", - "required": true, - "type": "string", - "description": "The subscription id.", - "x-ms-parameter-location": "method", - "x-ms-skip-url-encoding": true - }, - "NameParameter": { - "name": "name", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the diagnostic setting.", - "x-ms-parameter-location": "method" - } - } -} \ No newline at end of file + "swagger": "2.0", + "info": { + "title": "MonitorManagementClient", + "x-ms-code-generation-settings": { + "name": "MonitorManagementClient" + }, + "version": "2017-05-01-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.insights/diagnosticSettings/{name}": { + "get": { + "tags": [ + "SubscriptionDiagnosticSettings" + ], + "operationId": "SubscriptionDiagnosticSettings_Get", + "description": "Gets the active subscription diagnostic settings for the specified resource.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/NameParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Successful request to get more information about diagnostic setting.", + "schema": { + "$ref": "#/definitions/SubscriptionDiagnosticSettingsResource" + } + } + }, + "x-ms-examples": { + "Gets the subscription diagnostic setting": { + "$ref": "./examples/getSubscriptionDiagnosticSetting.json" + } + } + }, + "put": { + "tags": [ + "SubscriptionDiagnosticSettings" + ], + "operationId": "SubscriptionDiagnosticSettings_CreateOrUpdate", + "description": "Creates or updates subscription diagnostic settings for the specified resource.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SubscriptionDiagnosticSettingsResource" + }, + "description": "Parameters supplied to the operation." + }, + { + "$ref": "#/parameters/NameParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Successful request to create a subscription diagnostic setting", + "schema": { + "$ref": "#/definitions/SubscriptionDiagnosticSettingsResource" + } + } + }, + "x-ms-examples": { + "Creates or Updates the subscription diagnostic setting": { + "$ref": "./examples/createOrUpdateSubscriptionDiagnosticSetting.json" + } + } + }, + "delete": { + "tags": [ + "SubscriptionDiagnosticSettings" + ], + "operationId": "SubscriptionDiagnosticSettings_Delete", + "description": "Deletes existing subscription diagnostic settings for the specified resource.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/NameParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Successful request to remove a subscription diagnostic setting" + }, + "204": { + "description": "Successful request to remove a subscription diagnostic setting" + } + }, + "x-ms-examples": { + "Deletes the subscription diagnostic setting": { + "$ref": "./examples/deleteSubscriptionDiagnosticSetting.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/microsoft.insights/diagnosticSettings": { + "get": { + "tags": [ + "SubscriptionDiagnosticSettings" + ], + "operationId": "SubscriptionDiagnosticSettings_List", + "description": "Gets the active subscription diagnostic settings list for the specified subscriptionId.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + }, + "200": { + "description": "Successful request to get more information about subscription diagnostic setting", + "schema": { + "$ref": "#/definitions/SubscriptionDiagnosticSettingsResourceCollection" + } + } + }, + "x-ms-examples": { + "Gets the subscription diagnostic setting": { + "$ref": "./examples/listSubscriptionDiagnosticSettings.json" + } + } + } + } + }, + "definitions": { + "SubscriptionProxyOnlyResource": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Azure resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Azure resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Azure resource type" + }, + "location": { + "type": "string", + "description": "Location of the resource" + } + }, + "x-ms-azure-resource": true, + "description": "A proxy only azure resource object" + }, + "SubscriptionLogSettings": { + "properties": { + "category": { + "type": "string", + "description": "Name of a Subscription Diagnostic Log category for a resource type this setting is applied to." + }, + "enabled": { + "type": "boolean", + "description": "a value indicating whether this log is enabled." + } + }, + "required": [ + "enabled" + ], + "description": "Part of Subscription diagnostic setting. Specifies the settings for a particular log." + }, + "SubscriptionDiagnosticSettings": { + "properties": { + "storageAccountId": { + "type": "string", + "description": "The resource ID of the storage account to which you would like to send Diagnostic Logs." + }, + "serviceBusRuleId": { + "type": "string", + "description": "The service bus rule Id of the diagnostic setting. This is here to maintain backwards compatibility." + }, + "eventHubAuthorizationRuleId": { + "type": "string", + "description": "The resource Id for the event hub authorization rule." + }, + "eventHubName": { + "type": "string", + "description": "The name of the event hub. If none is specified, the default event hub will be selected." + }, + "logs": { + "type": "array", + "items": { + "$ref": "#/definitions/SubscriptionLogSettings" + }, + "description": "The list of logs settings." + }, + "workspaceId": { + "type": "string", + "description": "The full ARM resource ID of the Log Analytics workspace to which you would like to send Diagnostic Logs. Example: /subscriptions/4b9e8510-67ab-4e9a-95a9-e2f1e570ea9c/resourceGroups/insights-integration/providers/Microsoft.OperationalInsights/workspaces/viruela2" + } + }, + "description": "The subscription diagnostic settings." + }, + "SubscriptionDiagnosticSettingsResource": { + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SubscriptionProxyOnlyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SubscriptionDiagnosticSettings", + "description": "Properties of a Subscription Diagnostic Settings Resource." + } + }, + "description": "The subscription diagnostic setting resource." + }, + "SubscriptionDiagnosticSettingsResourceCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SubscriptionDiagnosticSettingsResource" + }, + "description": "The collection of subscription diagnostic settings resources." + } + }, + "description": "Represents a collection of subscription diagnostic settings resources." + }, + "ErrorResponse": { + "description": "Describes the format of Error response.", + "type": "object", + "properties": { + "code": { + "description": "Error code", + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + } + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The subscription id.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "NameParameter": { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the diagnostic setting.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateEndpointConnectionDelete.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateEndpointConnectionDelete.json new file mode 100644 index 000000000000..5cdf2735af50 --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateEndpointConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "MyResourceGroup", + "scopeName": "MyPrivateLinkScope", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2019-10-17-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateEndpointConnectionGet.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateEndpointConnectionGet.json new file mode 100644 index 000000000000..3904a59360bf --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateEndpointConnectionGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "MyResourceGroup", + "scopeName": "MyPrivateLinkScope", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2019-10-17-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/MyResourceGroup/providers/Microsoft.Insights/privateLinkScopes/MyPrivateLinkScope/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.Insights/privateLinkScopes/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateEndpointConnectionList.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateEndpointConnectionList.json new file mode 100644 index 000000000000..0677cc4d496f --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateEndpointConnectionList.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "MyResourceGroup", + "scopeName": "MyPrivateLinkScope", + "api-version": "2019-10-17-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/MyResourceGroup/providers/Microsoft.Insights/privateLinkScopes/MyPrivateLinkScope/privateEndpointConnections/private-endpoint-connection-name-2", + "name": "private-endpoint-connection-name", + "type": "Microsoft.Insights/privateLinkScopes/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/MyResourceGroup/providers/Microsoft.Insights/privateLinkScopes/MyPrivateLinkScope/privateEndpointConnections/private-endpoint-connection-name-2", + "name": "private-endpoint-connection-name-2", + "type": "Microsoft.Insights/privateLinkScopes/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name-2" + }, + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Please approve my connection.", + "actionsRequired": "None" + } + } + } + ] + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateEndpointConnectionUpdate.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateEndpointConnectionUpdate.json new file mode 100644 index 000000000000..b134697d0029 --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateEndpointConnectionUpdate.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "MyResourceGroup", + "scopeName": "MyPrivateLinkScope", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2019-10-17-preview", + "parameters": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/MyResourceGroup/providers/Microsoft.Insights/privateLinkScopes/MyPrivateLinkScope/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.Insights/privateLinkScopes/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com", + "actionsRequired": "None" + } + } + } + }, + "202": {} + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopePrivateLinkResourceGet.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopePrivateLinkResourceGet.json new file mode 100644 index 000000000000..da265d08e06b --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopePrivateLinkResourceGet.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "MyResourceGroup", + "scopeName": "MyPrivateLinkScope", + "api-version": "2019-10-17-preview", + "groupName": "azuremonitor" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/MyResourceGroup/providers/Microsoft.Insights/privateLinkScopes/MyPrivateLinkScope/privateLinkResources/azuremonitor", + "name": "azuremonitor", + "type": "Microsoft.Insights/privateLinkScopes/privateLinkResources", + "properties": { + "groupId": "azuremonitor", + "requiredMembers": [ + "draft", + "breeze", + "livemetrics", + "snapshotdebugger", + "profiler", + "oms-12300000-1111-2222-3333-444444444444", + "ods-12300000-1111-2222-3333-444444444444", + "agent-12300000-1111-2222-3333-444444444444" + ] + } + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopePrivateLinkResourceListGet.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopePrivateLinkResourceListGet.json new file mode 100644 index 000000000000..33b847a3a01a --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopePrivateLinkResourceListGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "MyResourceGroup", + "scopeName": "MyPrivateLinkScope", + "api-version": "2019-10-17-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/MyResourceGroup/providers/Microsoft.Insights/privateLinkScopes/MyPrivateLinkScope/privateLinkResources/azuremonitor", + "name": "azuremonitor", + "type": "Microsoft.Insights/privateLinkScopes/privateLinkResources", + "properties": { + "groupId": "azuremonitor", + "requiredMembers": [ + "draft", + "breeze", + "livemetrics", + "snapshotdebugger", + "profiler", + "oms-12300000-1111-2222-3333-444444444444", + "ods-12300000-1111-2222-3333-444444444444", + "agent-12300000-1111-2222-3333-444444444444" + ] + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopedResourceDelete.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopedResourceDelete.json new file mode 100644 index 000000000000..922b74207dc4 --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopedResourceDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "MyResourceGroup", + "scopeName": "MyPrivateLinkScope", + "name": "scoped-resource-name", + "api-version": "2019-10-17-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopedResourceGet.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopedResourceGet.json new file mode 100644 index 000000000000..4b9a64c2022f --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopedResourceGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "MyResourceGroup", + "scopeName": "MyPrivateLinkScope", + "name": "scoped-resource-name", + "api-version": "2019-10-17-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/MyResourceGroup/providers/Microsoft.Insights/privateLinkScopes/MyPrivateLinkScope/scopedResources/scoped-resource-name", + "name": "scoped-resource-name", + "type": "Microsoft.Insights/privateLinkScopes/scopedResources", + "properties": { + "linkedResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/MyResourceGroup/providers/Microsoft.Insights/components/my-component", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopedResourceList.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopedResourceList.json new file mode 100644 index 000000000000..db06a00da477 --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopedResourceList.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "MyResourceGroup", + "scopeName": "MyPrivateLinkScope", + "api-version": "2019-10-17-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/MyResourceGroup/providers/Microsoft.Insights/privateLinkScopes/MyPrivateLinkScope/scopedResources/scoped-resource-name", + "name": "scoped-resource-name", + "type": "Microsoft.Insights/privateLinkScopes/scopedResources", + "properties": { + "linkedResourceId": "/subscriptions/00000000-0000-2222-3333-444444444444/resourceGroups/MyComponentResourceGroup/providers/Microsoft.Insights/components/my-component", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/MyResourceGroup/providers/Microsoft.Insights/privateLinkScopes/MyPrivateLinkScope/scopedResources/other-scoped-resource-name", + "name": "other-scoped-resource-name", + "type": "Microsoft.Insights/privateLinkScopes/scopedResources", + "properties": { + "linkedResourceId": "/subscriptions/00000000-3333-2222-5555-444444444444/resourceGroups/MyWorkspaceResourceGroup/providers/Microsoft.OperationalInsights/workspaces/my-workspace", + "provisioningState": "Provisioning" + } + } + ] + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopedResourceUpdate.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopedResourceUpdate.json new file mode 100644 index 000000000000..75ade1086f4a --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopedResourceUpdate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "MyResourceGroup", + "scopeName": "MyPrivateLinkScope", + "name": "scoped-resource-name", + "api-version": "2019-10-17-preview", + "parameters": { + "properties": { + "linkedResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/MyResourceGroup/providers/Microsoft.Insights/components/my-component" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/MyResourceGroup/providers/Microsoft.Insights/privateLinkScopes/MyPrivateLinkScope/scopedResources/scoped-resource-name", + "name": "scoped-resource-name", + "type": "Microsoft.Insights/privateLinkScopes/scopedResources", + "properties": { + "linkedResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/MyResourceGroup/providers/Microsoft.Insights/components/my-component", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/MyResourceGroup/providers/Microsoft.Insights/privateLinkScopes/MyPrivateLinkScope/scopedResources/scoped-resource-name", + "name": "scoped-resource-name", + "type": "Microsoft.Insights/privateLinkScopes/scopedResources", + "properties": { + "linkedResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/MyResourceGroup/providers/Microsoft.Insights/components/my-component", + "provisioningState": "Succeeded" + } + } + }, + "202": {} + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopesCreate.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopesCreate.json new file mode 100644 index 000000000000..32c338344d10 --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopesCreate.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2019-10-17-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group", + "scopeName": "my-privatelinkscope", + "AzureMonitorPrivateLinkScopePayload": { + "location": "Global", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.insights/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.Insights/privateLinkScopes", + "location": "Global", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.insights/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.Insights/privateLinkScopes", + "location": "Global", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopesDelete.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopesDelete.json new file mode 100644 index 000000000000..0b0466392582 --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopesDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-10-17-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group", + "scopeName": "my-privatelinkscope" + }, + "responses": { + "200": {}, + "204": {}, + "202": {} + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopesGet.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopesGet.json new file mode 100644 index 000000000000..7c87e8d05e8d --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopesGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2019-10-17-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group", + "scopeName": "my-privatelinkscope" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.insights/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.Insights/privateLinkScopes", + "location": "Global", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopesList.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopesList.json new file mode 100644 index 000000000000..0db756216467 --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopesList.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2019-10-17-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.insights/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.Insights/privateLinkScopes", + "location": "Global", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-other-resource-group/providers/microsoft.insights/privateLinkScopes/my-other-privatelinkscope", + "name": "my-other-privatelinkscope", + "type": "Microsoft.Insights/privateLinkScopes", + "location": "Global", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopesListByResourceGroup.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopesListByResourceGroup.json new file mode 100644 index 000000000000..fba2f4d6e2ff --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopesListByResourceGroup.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2019-10-17-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.insights/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.Insights/privateLinkScopes", + "location": "Global", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.insights/privateLinkScopes/my-other-privatelinkscope", + "name": "my-other-privatelinkscope", + "type": "Microsoft.Insights/privateLinkScopes", + "location": "Global", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopesUpdate.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopesUpdate.json new file mode 100644 index 000000000000..30a69e25e933 --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopesUpdate.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2019-10-17-preview", + "subscriptionId": "86dc51d3-92ed-4d7e-947a-775ea79b4919", + "resourceGroupName": "my-resource-group", + "scopeName": "my-privatelinkscope", + "AzureMonitorPrivateLinkScopePayload": { + "location": "Global", + "tags": { + "Tag1": "Value1" + }, + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.insights/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.Insights/privateLinkScopes", + "location": "Global", + "tags": { + "Tag1": "Value1" + }, + "properties": { + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/86dc51d3-92ed-4d7e-947a-775ea79b4919/resourceGroups/my-resource-group/providers/microsoft.insights/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.Insights/privateLinkScopes", + "location": "Global", + "tags": { + "Tag1": "Value1" + }, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopesUpdateTagsOnly.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopesUpdateTagsOnly.json new file mode 100644 index 000000000000..a9e66c88fc2d --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/PrivateLinkScopesUpdateTagsOnly.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2019-10-17-preview", + "subscriptionId": "subid", + "resourceGroupName": "my-resource-group", + "scopeName": "my-privatelinkscope", + "PrivateLinkScopeTags": { + "tags": { + "Tag1": "Value1", + "Tag2": "Value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/my-resource-group/providers/microsoft.insights/privateLinkScopes/my-privatelinkscope", + "name": "my-privatelinkscope", + "type": "Microsoft.Insights/privateLinkScopes", + "location": "Global", + "tags": { + "Tag1": "Value1", + "Tag2": "Value2" + }, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/privateLinkScopeOperationStatuses.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/privateLinkScopeOperationStatuses.json new file mode 100644 index 000000000000..414e8cc08d12 --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/examples/privateLinkScopeOperationStatuses.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "613192d7-503f-477a-9cfe-4efc3ee2bd60", + "resourceGroupName": "MyResourceGroup", + "asyncOperationId": "713192d7-503f-477a-9cfe-4efc3ee2bd11", + "api-version": "2019-10-17-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/613192d7-503f-477a-9cfe-4efc3ee2bd60/resourceGroups/MyResourceGroup/providers/Microsoft.Insights/privateLinkScopeOperationStatuses/713192d7-503f-477a-9cfe-4efc3ee2bd11", + "name": "713192d7-503f-477a-9cfe-4efc3ee2bd11", + "startTime": "2017-01-01T13:13:13.933Z", + "endTime": "2017-01-01T16:13:13.933Z", + "status": "Succeeded" + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/privateLinkScopes_API.json b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/privateLinkScopes_API.json new file mode 100644 index 000000000000..c2cc37e31689 --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/preview/2019-10-17-preview/privateLinkScopes_API.json @@ -0,0 +1,1194 @@ +{ + "swagger": "2.0", + "info": { + "title": "MonitorManagementClient", + "x-ms-code-generation-settings": { + "name": "MonitorManagementClient" + }, + "description": "Azure Monitor API reference for Private Links Scopes management.", + "version": "2019-10-17-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.insights/privateLinkScopes": { + "get": { + "description": "Gets a list of all Azure Monitor PrivateLinkScopes within a subscription.", + "operationId": "PrivateLinkScopes_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A list containing 0 or more Azure Monitor PrivateLinkScope definitions.", + "schema": { + "$ref": "#/definitions/AzureMonitorPrivateLinkScopeListResult" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopesList.json": { + "$ref": "./examples/PrivateLinkScopesList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/privateLinkScopes": { + "get": { + "description": "Gets a list of Azure Monitor PrivateLinkScopes within a resource group.", + "operationId": "PrivateLinkScopes_ListByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "A list containing 0 or more Azure Monitor PrivateLinkScope definitions.", + "schema": { + "$ref": "#/definitions/AzureMonitorPrivateLinkScopeListResult" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopeListByResourceGroup": { + "$ref": "./examples/PrivateLinkScopesListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/privateLinkScopes/{scopeName}": { + "delete": { + "description": "Deletes a Azure Monitor PrivateLinkScope.", + "operationId": "PrivateLinkScopes_Delete", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + } + ], + "responses": { + "200": { + "description": "Successful request when deleting a Azure Monitor PrivateLinkScope." + }, + "204": { + "description": "The specified PrivateLinkScope does not exist." + }, + "202": { + "description": "Accepted." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "PrivateLinkScopesDelete": { + "$ref": "./examples/PrivateLinkScopesDelete.json" + } + } + }, + "get": { + "description": "Returns a Azure Monitor PrivateLinkScope.", + "operationId": "PrivateLinkScopes_Get", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + } + ], + "responses": { + "200": { + "description": "An Azure Monitor PrivateLinkScope definition.", + "schema": { + "$ref": "#/definitions/AzureMonitorPrivateLinkScope" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopeGet": { + "$ref": "./examples/PrivateLinkScopesGet.json" + } + } + }, + "put": { + "description": "Creates (or updates) a Azure Monitor PrivateLinkScope. Note: You cannot specify a different value for InstrumentationKey nor AppId in the Put operation.", + "operationId": "PrivateLinkScopes_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "name": "AzureMonitorPrivateLinkScopePayload", + "description": "Properties that need to be specified to create or update a Azure Monitor PrivateLinkScope.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AzureMonitorPrivateLinkScope" + } + } + ], + "responses": { + "200": { + "description": "Successful request when creating or updating a Azure Monitor PrivateLinkScope. The updated PrivateLinkScope is returned.", + "schema": { + "$ref": "#/definitions/AzureMonitorPrivateLinkScope" + } + }, + "201": { + "description": "Successful request when creating or updating a Azure Monitor PrivateLinkScope. The updated PrivateLinkScope was created and is returned.", + "schema": { + "$ref": "#/definitions/AzureMonitorPrivateLinkScope" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopeCreate": { + "$ref": "./examples/PrivateLinkScopesCreate.json" + }, + "PrivateLinkScopeUpdate": { + "$ref": "./examples/PrivateLinkScopesUpdate.json" + } + } + }, + "patch": { + "description": "Updates an existing PrivateLinkScope's tags. To update other fields use the CreateOrUpdate method.", + "operationId": "PrivateLinkScopes_UpdateTags", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "name": "PrivateLinkScopeTags", + "description": "Updated tag information to set into the PrivateLinkScope instance.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TagsResource" + } + } + ], + "responses": { + "200": { + "description": "Updating the Azure Monitor PrivateLinkScope's tags was successful. PrivateLinkScope tags are updated and returned with the rest of the PrivateLinkScope's object properties.", + "schema": { + "$ref": "#/definitions/AzureMonitorPrivateLinkScope" + } + } + }, + "x-ms-examples": { + "PrivateLinkScopeUpdateTagsOnly": { + "$ref": "./examples/PrivateLinkScopesUpdateTagsOnly.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/privateLinkScopeOperationStatuses/{asyncOperationId}": { + "get": { + "x-ms-examples": { + "Get specific operation status": { + "$ref": "./examples/privateLinkScopeOperationStatuses.json" + } + }, + "tags": [ + "asyncOperations" + ], + "operationId": "PrivateLinkScopeOperationStatus_Get", + "description": "Get the status of an azure asynchronous operation associated with a private link scope operation.", + "parameters": [ + { + "name": "asyncOperationId", + "in": "path", + "required": true, + "type": "string", + "description": "The operation Id." + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK. Operation status.", + "schema": { + "$ref": "#/definitions/OperationStatus" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/privateLinkScopes/{scopeName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "description": "Gets the private link resources that need to be created for a Azure Monitor PrivateLinkScope.", + "operationId": "PrivateLinkResources_ListByPrivateLinkScope", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/PrivateLinkScopePrivateLinkResourceListGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/privateLinkScopes/{scopeName}/privateLinkResources/{groupName}": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "description": "Gets the private link resources that need to be created for a Azure Monitor PrivateLinkScope.", + "operationId": "PrivateLinkResources_Get", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "$ref": "#/parameters/GroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified private link resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/PrivateLinkScopePrivateLinkResourceGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/privateLinkScopes/{scopeName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Gets a private endpoint connection.", + "operationId": "PrivateEndpointConnections_Get", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/PrivateEndpointConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Approve or reject a private endpoint connection with a given name.", + "operationId": "PrivateEndpointConnections_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + ], + "responses": { + "200": { + "description": "Successfully approved or rejected private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Approve or reject a private endpoint connection with a given name.": { + "$ref": "./examples/PrivateEndpointConnectionUpdate.json" + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Deletes a private endpoint connection with a given name.", + "operationId": "PrivateEndpointConnections_Delete", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Successfully deleted private endpoint connection." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "Private endpoint connection does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes a private endpoint connection with a given name.": { + "$ref": "./examples/PrivateEndpointConnectionDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/privateLinkScopes/{scopeName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Gets all private endpoint connections on a private link scope.", + "operationId": "PrivateEndpointConnections_ListByPrivateLinkScope", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private endpoint connections.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets list of private endpoint connections on a private link scope.": { + "$ref": "./examples/PrivateEndpointConnectionList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/privateLinkScopes/{scopeName}/scopedResources/{name}": { + "get": { + "tags": [ + "PrivateLinkScopedResources" + ], + "description": "Gets a scoped resource in a private link scope.", + "operationId": "PrivateLinkScopedResources_Get", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "name": "name", + "in": "path", + "description": "The name of the scoped resource object.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a scoped resource in a private link scope.", + "schema": { + "$ref": "#/definitions/ScopedResource" + } + } + }, + "x-ms-examples": { + "Gets private link scoped resource.": { + "$ref": "./examples/PrivateLinkScopedResourceGet.json" + } + } + }, + "put": { + "tags": [ + "PrivateLinkScopedResources" + ], + "description": "Approve or reject a private endpoint connection with a given name.", + "operationId": "PrivateLinkScopedResources_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "name": "name", + "in": "path", + "description": "The name of the scoped resource object.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ScopedResource" + } + } + ], + "responses": { + "200": { + "description": "Successfully create or updated a new azure monitor scoped resource in a private link scope.", + "schema": { + "$ref": "#/definitions/ScopedResource" + } + }, + "201": { + "description": "Successfully created a new azure monitor scoped resource in a private link scope.", + "schema": { + "$ref": "#/definitions/ScopedResource" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a scoped resource in a private link scope.": { + "$ref": "./examples/PrivateLinkScopedResourceUpdate.json" + } + } + }, + "delete": { + "tags": [ + "PrivateLinkScopedResources" + ], + "description": "Deletes a private endpoint connection with a given name.", + "operationId": "PrivateLinkScopedResources_Delete", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + }, + { + "name": "name", + "in": "path", + "description": "The name of the scoped resource object.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Successfully deleted scoped resource." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "Scoped resource does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes a scoped resource with a given name.": { + "$ref": "./examples/PrivateLinkScopedResourceDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/privateLinkScopes/{scopeName}/scopedResources": { + "get": { + "tags": [ + "PrivateLinkScopedResources" + ], + "description": "Gets all private endpoint connections on a private link scope.", + "operationId": "PrivateLinkScopedResources_ListByPrivateLinkScope", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/PrivateLinkScopeName" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved scoped resources in a private link scope.", + "schema": { + "$ref": "#/definitions/ScopedResourceListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets list of scoped resources in a private link scope.": { + "$ref": "./examples/PrivateLinkScopedResourceList.json" + } + } + } + } + }, + "definitions": { + "OperationStatus": { + "description": "The status of operation.", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The operation Id." + }, + "name": { + "type": "string", + "description": "The operation name." + }, + "startTime": { + "type": "string", + "format": "date-time", + "x-nullable": true, + "description": "Start time of the job in standard ISO8601 format." + }, + "endTime": { + "type": "string", + "format": "date-time", + "x-nullable": true, + "description": "End time of the job in standard ISO8601 format." + }, + "status": { + "type": "string", + "description": "The status of the operation." + }, + "error": { + "type": "object", + "description": "The error detail of the operation if any.", + "$ref": "#/definitions/ErrorResponseCommon", + "x-nullable": true + } + } + }, + "PrivateLinkScopesResource": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Azure resource Id" + }, + "name": { + "type": "string", + "description": "Azure resource name", + "readOnly": true + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Azure resource type" + }, + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "required": [ + "location" + ], + "x-ms-azure-resource": true, + "description": "An azure resource object" + }, + "TagsResource": { + "properties": { + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags" + } + }, + "description": "A container holding only the Tags for a resource, allowing the user to update the tags on a PrivateLinkScope instance." + }, + "AzureMonitorPrivateLinkScope": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties that define a Azure Monitor PrivateLinkScope resource.", + "$ref": "#/definitions/AzureMonitorPrivateLinkScopeProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/PrivateLinkScopesResource" + } + ], + "required": [ + "properties" + ], + "description": "An Azure Monitor PrivateLinkScope definition." + }, + "AzureMonitorPrivateLinkScopeProperties": { + "description": "Properties that define a Azure Monitor PrivateLinkScope resource.", + "properties": { + "provisioningState": { + "type": "string", + "description": "Current state of this PrivateLinkScope: whether or not is has been provisioned within the resource group it is defined. Users cannot change this value but are able to read from it. Values will include Provisioning ,Succeeded, Canceled and Failed.", + "readOnly": true + }, + "privateEndpointConnections": { + "readOnly": true, + "description": "List of private endpoint connections.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + } + }, + "AzureMonitorPrivateLinkScopeListResult": { + "description": "Describes the list of Azure Monitor PrivateLinkScope resources.", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "array", + "description": "List of Azure Monitor PrivateLinkScope definitions.", + "items": { + "$ref": "#/definitions/AzureMonitorPrivateLinkScope" + } + }, + "nextLink": { + "type": "string", + "description": "The URI to get the next set of Azure Monitor PrivateLinkScope definitions if too many PrivateLinkScopes where returned in the result set." + } + } + }, + "PrivateLinkResourceListResult": { + "description": "A list of private link resources", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateLinkResource": { + "description": "A private link resource", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "PrivateLinkResourceProperties": { + "description": "Properties of a private link resource.", + "type": "object", + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "PrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionStateProperty", + "description": "Connection state of the private endpoint connection." + }, + "provisioningState": { + "description": "State of the private endpoint connection.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateEndpointProperty": { + "description": "Private endpoint which the connection belongs to.", + "type": "object", + "properties": { + "id": { + "description": "Resource id of the private endpoint.", + "type": "string" + } + } + }, + "PrivateLinkServiceConnectionStateProperty": { + "description": "State of the private endpoint connection.", + "type": "object", + "required": [ + "status", + "description" + ], + "properties": { + "status": { + "description": "The private link service connection status.", + "type": "string" + }, + "description": { + "description": "The private link service connection description.", + "type": "string" + }, + "actionsRequired": { + "description": "The actions required for private link service connection.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateEndpointConnection": { + "description": "A private endpoint connection", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "PrivateEndpointConnectionListResult": { + "description": "A list of private endpoint connections.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ScopedResourceListResult": { + "description": "A list of scoped resources in a private link scope.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ScopedResource" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ScopedResource": { + "description": "A private link scoped resource", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ScopedResourceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ScopedResourceProperties": { + "description": "Properties of a private link scoped resource.", + "type": "object", + "properties": { + "linkedResourceId": { + "description": "The resource id of the scoped Azure monitor resource.", + "type": "string" + }, + "provisioningState": { + "description": "State of the private endpoint connection.", + "type": "string", + "readOnly": true + } + } + }, + "ProxyResource": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Azure resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Azure resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Azure resource type" + } + }, + "x-ms-azure-resource": true, + "description": "An azure resource object" + }, + "ErrorResponse": { + "description": "Describes the format of Error response.", + "type": "object", + "properties": { + "code": { + "description": "Error code", + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + } + }, + "ErrorResponseCommon": { + "allOf": [ + { + "$ref": "#/definitions/ErrorResponse" + } + ], + "properties": { + "details": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ErrorResponseCommon" + }, + "description": "The error details." + }, + "additionalInfo": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ErrorAdditionalInfo" + }, + "description": "The error additional info." + } + }, + "description": "The resource management error response." + }, + "ErrorAdditionalInfo": { + "properties": { + "type": { + "readOnly": true, + "type": "string", + "description": "The additional info type." + }, + "info": { + "readOnly": true, + "type": "object", + "description": "The additional info." + } + }, + "description": "The resource management error additional info." + } + }, + "parameters": { + "PrivateLinkScopeName": { + "name": "scopeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Monitor PrivateLinkScope resource.", + "x-ms-parameter-location": "method" + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "GroupNameParameter": { + "name": "groupName", + "in": "path", + "description": "The name of the private link resource.", + "required": true, + "x-ms-parameter-location": "method", + "type": "string" + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The Azure subscription Id." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/alertRules_API.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/alertRules_API.json index f9d1e42c1f5e..0f5f7a89919c 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/alertRules_API.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/alertRules_API.json @@ -38,7 +38,7 @@ "paths": { "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/microsoft.insights/alertrules/{ruleName}": { "put": { - "description": "Creates or updates an alert rule.", + "description": "Creates or updates a classic metric alert rule.", "tags": [ "AlertRules" ], @@ -93,7 +93,7 @@ } }, "delete": { - "description": "Deletes an alert rule", + "description": "Deletes a classic metric alert rule", "tags": [ "AlertRules" ], @@ -127,7 +127,7 @@ } }, "get": { - "description": "Gets an alert rule", + "description": "Gets a classic metric alert rule", "tags": [ "AlertRules" ], @@ -161,7 +161,7 @@ } }, "patch": { - "description": "Updates an existing AlertRuleResource. To update other fields use the CreateOrUpdate method.", + "description": "Updates an existing classic metric AlertRuleResource. To update other fields use the CreateOrUpdate method.", "operationId": "AlertRules_Update", "parameters": [ { @@ -219,7 +219,7 @@ "AlertRules" ], "operationId": "AlertRules_ListByResourceGroup", - "description": "List the alert rules within a resource group.", + "description": "List the classic metric alert rules within a resource group.", "parameters": [ { "$ref": "#/parameters/ResourceGroupNameParameter" @@ -255,7 +255,7 @@ "AlertRules" ], "operationId": "AlertRules_ListBySubscription", - "description": "List the alert rules within a subscription.", + "description": "List the classic metric alert rules within a subscription.", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/examples/createOrUpdateAlertRule.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/examples/createOrUpdateAlertRule.json index 50712ab18981..9b2847370ee1 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/examples/createOrUpdateAlertRule.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/examples/createOrUpdateAlertRule.json @@ -23,7 +23,6 @@ "windowSize": "PT5M", "timeAggregation": "Total" }, - "lastUpdatedTime": "2016-11-23T21:23:52.0221265Z", "actions": [] } } diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/examples/patchAlertRule.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/examples/patchAlertRule.json index df5d714900ba..4c7dca8d33cf 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/examples/patchAlertRule.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2016-03-01/examples/patchAlertRule.json @@ -24,7 +24,6 @@ "windowSize": "PT5M", "timeAggregation": "Total" }, - "lastUpdatedTime": "2016-11-23T21:23:52.0221265Z", "actions": [] } } diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-03-01/examples/createOrUpdateWebTestMetricAlert.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-03-01/examples/createOrUpdateWebTestMetricAlert.json new file mode 100644 index 000000000000..1929399d105b --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-03-01/examples/createOrUpdateWebTestMetricAlert.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789101", + "resourceGroupName": "rg-example", + "ruleName": "webtest-name-example", + "api-version": "2018-03-01", + "parameters": { + "location": "global", + "tags": { + "hidden-link:/subscriptions/12345678-1234-1234-1234-123456789101/resourcegroups/rg-example/providers/microsoft.insights/components/webtest-name-example": "Resource", + "hidden-link:/subscriptions/12345678-1234-1234-1234-123456789101/resourcegroups/rg-example/providers/microsoft.insights/webtests/component-example": "Resource" + }, + "properties": { + "description": "Automatically created alert rule for availability test \"component-example\" a", + "enabled": true, + "severity": 4, + "windowSize": "PT15M", + "evaluationFrequency": "PT1M", + "criteria": { + "failedLocationCount": 2, + "webTestId": "/subscriptions/12345678-1234-1234-1234-123456789101/resourcegroups/rg-example/providers/microsoft.insights/webtests/component-example", + "componentId": "/subscriptions/12345678-1234-1234-1234-123456789101/resourcegroups/rg-example/providers/microsoft.insights/components/webtest-name-example", + "odata.type": "Microsoft.Azure.Monitor.WebtestLocationAvailabilityCriteria" + }, + "actions": [], + "scopes": [ + "/subscriptions/12345678-1234-1234-1234-123456789101/resourcegroups/rg-example/providers/microsoft.insights/webtests/component-example", + "/subscriptions/12345678-1234-1234-1234-123456789101/resourcegroups/rg-example/providers/microsoft.insights/components/webtest-name-example" + ] + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "location": "global", + "type": "Microsoft.Insights/metricAlerts", + "name": "webtest-name-example", + "id": "/subscriptions/12345678-1234-1234-1234-123456789101/resourcegroups/rg-example/providers/microsoft.insights/metricalerts/webtest-name-example", + "tags": { + "hidden-link:/subscriptions/12345678-1234-1234-1234-123456789101/resourcegroups/rg-example/providers/microsoft.insights/components/component-example": "Resource", + "hidden-link:/subscriptions/12345678-1234-1234-1234-123456789101/resourcegroups/rg-example/providers/microsoft.insights/webtests/webtest-name-example": "Resource" + }, + "properties": { + "description": "Automatically created alert rule for availability test \"webtest-name-example\" a", + "severity": 4, + "enabled": true, + "scopes": [ + "/subscriptions/12345678-1234-1234-1234-123456789101/resourcegroups/rg-example/providers/microsoft.insights/webtests/webtest-name-example", + "/subscriptions/12345678-1234-1234-1234-123456789101/resourcegroups/rg-example/providers/microsoft.insights/components/component-example" + ], + "evaluationFrequency": "PT1M", + "windowSize": "PT15M", + "criteria": { + "webTestId": "/subscriptions/12345678-1234-1234-1234-123456789101/resourcegroups/rg-example/providers/microsoft.insights/webtests/webtest-name-example", + "componentId": "/subscriptions/12345678-1234-1234-1234-123456789101/resourcegroups/rg-example/providers/microsoft.insights/components/component-example", + "failedLocationCount": 2, + "odata.type": "Microsoft.Azure.Monitor.WebtestLocationAvailabilityCriteria" + }, + "actions": [] + } + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-03-01/examples/getWebTestMetricAlert.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-03-01/examples/getWebTestMetricAlert.json new file mode 100644 index 000000000000..498cfa7f1400 --- /dev/null +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-03-01/examples/getWebTestMetricAlert.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-123456789101", + "resourceGroupName": "rg-example", + "ruleName": "webtest-name-example", + "api-version": "2018-03-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "location": "global", + "type": "Microsoft.Insights/metricAlerts", + "name": "webtest-name-example", + "id": "/subscriptions/12345678-1234-1234-1234-123456789101/resourcegroups/rg-example/providers/microsoft.insights/metricalerts/webtest-name-example", + "tags": { + "hidden-link:/subscriptions/12345678-1234-1234-1234-123456789101/resourcegroups/rg-example/providers/microsoft.insights/components/component-example": "Resource", + "hidden-link:/subscriptions/12345678-1234-1234-1234-123456789101/resourcegroups/rg-example/providers/microsoft.insights/webtests/webtest-name-example": "Resource" + }, + "properties": { + "description": "Automatically created alert rule for availability test \"webtest-name-example\"", + "severity": 4, + "enabled": true, + "scopes": [ + "/subscriptions/12345678-1234-1234-1234-123456789101/resourcegroups/rg-example/providers/microsoft.insights/webtests/webtest-name-example", + "/subscriptions/12345678-1234-1234-1234-123456789101/resourcegroups/rg-example/providers/microsoft.insights/components/component-example" + ], + "evaluationFrequency": "PT1M", + "windowSize": "PT15M", + "criteria": { + "webTestId": "/subscriptions/12345678-1234-1234-1234-123456789101/resourcegroups/rg-example/providers/microsoft.insights/webtests/webtest-name-example", + "componentId": "/subscriptions/12345678-1234-1234-1234-123456789101/resourcegroups/rg-example/providers/microsoft.insights/components/component-example", + "failedLocationCount": 2, + "odata.type": "Microsoft.Azure.Monitor.WebtestLocationAvailabilityCriteria" + }, + "actions": [] + } + } + } + } +} diff --git a/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-03-01/metricAlert_API.json b/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-03-01/metricAlert_API.json index dfbf0b9cf660..e88efc9a9349 100644 --- a/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-03-01/metricAlert_API.json +++ b/specification/monitor/resource-manager/Microsoft.Insights/stable/2018-03-01/metricAlert_API.json @@ -171,6 +171,9 @@ }, "Get a dynamic alert rule for multiple resources": { "$ref": "./examples/getDynamicMetricAlertMultipleResource.json" + }, + "Get a web test alert rule": { + "$ref": "./examples/getWebTestMetricAlert.json" } } }, @@ -235,6 +238,9 @@ }, "Create or update a dynamic alert rule for Multiple Resources": { "$ref": "./examples/createOrUpdateDynamicMetricAlertMultipleResource.json" + }, + "Create or update a web test alert rule": { + "$ref": "./examples/createOrUpdateWebTestMetricAlert.json" } } }, @@ -308,11 +314,11 @@ } ], "responses": { - "204": { - "description": "No content: the request was successful, but the response is empty" - }, "200": { "description": "Successful request to delete an metric alert rule" + }, + "204": { + "description": "No content: the request was successful, but the response is empty" } }, "x-ms-examples": { @@ -519,7 +525,7 @@ }, "autoMitigate": { "type": "boolean", - "description": "the flag that indicates whether the alert should be auto resolved or not." + "description": "the flag that indicates whether the alert should be auto resolved or not. The default is true." }, "actions": { "type": "array", @@ -647,9 +653,11 @@ "discriminator": "odata.type", "properties": { "odata.type": { + "type": "string", "enum": [ "Microsoft.Azure.Monitor.SingleResourceMultipleMetricCriteria", - "Microsoft.Azure.Monitor.MultipleResourceMultipleMetricCriteria" + "Microsoft.Azure.Monitor.MultipleResourceMultipleMetricCriteria", + "Microsoft.Azure.Monitor.WebtestLocationAvailabilityCriteria" ], "x-ms-enum": { "name": "odatatype", @@ -682,6 +690,35 @@ }, "description": "Specifies the metric alert criteria for a single resource that has multiple metric criteria." }, + "WebtestLocationAvailabilityCriteria": { + "x-ms-discriminator-value": "Microsoft.Azure.Monitor.WebtestLocationAvailabilityCriteria", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/MetricAlertCriteria" + } + ], + "properties": { + "webTestId": { + "type": "string", + "description": "The Application Insights web test Id." + }, + "componentId": { + "type": "string", + "description": "The Application Insights resource Id." + }, + "failedLocationCount": { + "type": "number", + "description": "The number of failed locations." + } + }, + "required": [ + "webTestId", + "componentId", + "failedLocationCount" + ], + "description": "Specifies the metric alert rule criteria for a web test resource." + }, "MetricCriteria": { "x-ms-discriminator-value": "StaticThresholdCriterion", "type": "object", @@ -696,6 +733,7 @@ ], "properties": { "operator": { + "type": "string", "enum": [ "Equals", "NotEquals", @@ -770,6 +808,7 @@ "discriminator": "criterionType", "properties": { "criterionType": { + "type": "string", "enum": [ "StaticThresholdCriterion", "DynamicThresholdCriterion" @@ -795,10 +834,10 @@ "timeAggregation": { "enum": [ "Average", + "Count", "Minimum", "Maximum", - "Total", - "Count" + "Total" ], "x-ms-enum": { "name": "AggregationType", @@ -837,6 +876,7 @@ ], "properties": { "operator": { + "type": "string", "enum": [ "GreaterThan", "LessThan", @@ -849,6 +889,7 @@ "description": "The operator used to compare the metric value against the threshold." }, "alertSensitivity": { + "type": "string", "enum": [ "Low", "Medium", diff --git a/specification/monitor/resource-manager/readme.cli.md b/specification/monitor/resource-manager/readme.cli.md new file mode 100644 index 000000000000..c9fdaaa01b7c --- /dev/null +++ b/specification/monitor/resource-manager/readme.cli.md @@ -0,0 +1,110 @@ + +# Dns +This directory contains the Cli common model for the Dns service. + +> Metadata + + +``` yaml +# Migrated from Powershell's readme +title: Monitor +cli: + cli-directive: + - select: 'choiceValue' + where: + enum: 'comparisonOperationType' + value: 'equals' + set: + name: 'equal' + - select: 'choiceValue' + where: + enum: 'comparisonOperationType' + value: 'notEquals' + set: + name: 'not_equal' + - select: 'property' + where: + schemaObject: 'activityLogAlertLeafCondition' + property: 'equals' + set: + name: 'equal' + - select: 'operationGroup' + where: + operationGroup: 'metricAlertsStatus' + set: + name: 'metric_alert_status' + - select: 'operation' + where: + operationGroup: 'activityLogAlerts' + operation: 'update' + hidden: true + - select: 'operation' + where: + operationGroup: 'metricAlerts' + operation: '^(createOrUpdate|update)$' + hidden: true + - select: 'parameter' + where: + operationGroup: '^(metricAlerts|alertRules|alertRuleIncidents)$' + parameter: 'ruleName' + set: + name: name + - select: 'property' + where: + objectSchema: '^(AlertRule)$' + property: 'isEnabled' + set: + name: 'enabled' + - select: 'operation' + where: + operationGroup: 'alertRules' + operation: '^(createOrUpdate|delete|update)$' + hidden: true + - select: 'operation' + where: + operationGroup: 'logProfiles' + operation: '^(createOrUpdate|update)$' + hidden: true + - select: 'property' + where: + objectSchema: '^(AutoscaleSetting)$' + property: 'targetResourceUri' + set: + name: 'target_resource_id' + - where: + objectSchema: '^(actionGroup)$' + property: 'groupShortName' + name: 'short_name' + - where: + operationGroup: 'actionGroups' + operation: 'update' + removed: true + - where: + operationGroup: 'metrics' + parameter: 'interval' + alias: time_grain + - where: + operationGroup: 'metrics' + parameter: 'resourceUri' + name: 'resource_id' + - where: + operationGroup: 'metricDefinitions' + operation: 'list' + hidden: true + - where: + operationGroup: 'scheduledQueryRules' + parameter: 'ruleName' + name: name + - where: + operationGroup: 'scheduledQueryRules' + operation: '^(createOrUpdate|update)$' + hidden: true + - where: + operationGroup: 'diagnosticSettingsCategory' + parameter: 'resourceUri' + name: 'resource_id' + - where: + operationGroup: 'baselines' + operation: 'list' + removed: true +``` \ No newline at end of file diff --git a/specification/monitor/resource-manager/readme.md b/specification/monitor/resource-manager/readme.md index 041e6b5ddf9b..044ae1e3b1ec 100644 --- a/specification/monitor/resource-manager/readme.md +++ b/specification/monitor/resource-manager/readme.md @@ -31,6 +31,35 @@ openapi-type: arm tag: package-2019-06 ``` +### Tag: package-2020-03 + +These settings apply only when `--tag=package-2020-03` is specified on the command line. + +```yaml $(tag) == 'package-2020-03' +input-file: +- Microsoft.Insights/stable/2015-04-01/autoscale_API.json +- Microsoft.Insights/stable/2015-04-01/operations_API.json +- Microsoft.Insights/stable/2016-03-01/alertRulesIncidents_API.json +- Microsoft.Insights/stable/2016-03-01/alertRules_API.json +- Microsoft.Insights/stable/2016-03-01/logProfiles_API.json +- Microsoft.Insights/preview/2017-05-01-preview/diagnosticsSettings_API.json +- Microsoft.Insights/preview/2017-05-01-preview/diagnosticsSettingsCategories_API.json +- Microsoft.Insights/stable/2019-06-01/actionGroups_API.json +- Microsoft.Insights/stable/2017-04-01/activityLogAlerts_API.json +- Microsoft.Insights/stable/2015-04-01/activityLogs_API.json +- Microsoft.Insights/stable/2015-04-01/eventCategories_API.json +- Microsoft.Insights/stable/2015-04-01/tenantActivityLogs_API.json +- Microsoft.Insights/stable/2018-01-01/metricDefinitions_API.json +- Microsoft.Insights/stable/2018-01-01/metrics_API.json +- Microsoft.Insights/preview/2017-11-01-preview/baseline_API.json +- Microsoft.Insights/preview/2017-11-01-preview/calculateBaseline_API.json +- Microsoft.Insights/stable/2019-03-01/metricBaselines_API.json +- Microsoft.Insights/stable/2018-03-01/metricAlert_API.json +- Microsoft.Insights/stable/2018-04-16/scheduledQueryRule_API.json +- Microsoft.Insights/preview/2017-12-01-preview/metricNamespaces_API.json +- Microsoft.Insights/preview/2018-11-27-preview/vmInsightsOnboarding_API.json +- Microsoft.Insights/preview/2019-10-17-preview/privateLinkScopes_API.json +``` ### Tag: package-2019-11 @@ -60,8 +89,17 @@ input-file: - Microsoft.Insights/stable/2018-04-16/scheduledQueryRule_API.json - Microsoft.Insights/preview/2017-12-01-preview/metricNamespaces_API.json - Microsoft.Insights/preview/2018-11-27-preview/vmInsightsOnboarding_API.json +- Microsoft.Insights/preview/2019-10-17-preview/privateLinkScopes_API.json ``` +### Tag: package-2019-10-17-preview-only + +These settings apply only when `--tag=package-2019-10-17-preview-only` is specified on the command line. + +```yaml $(tag) == 'package-2019-10-17-preview-only' +input-file: +- Microsoft.Insights/preview/2019-10-17-preview/privateLinkScopes_API.json +``` ### Tag: package-2019-06 @@ -92,7 +130,6 @@ input-file: - Microsoft.Insights/preview/2018-11-27-preview/vmInsightsOnboarding_API.json ``` - ### Tag: package-2019-03 These settings apply only when `--tag=package-2019-03` is specified on the command line. @@ -569,7 +606,6 @@ input-file: - $(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/subscriptionDiagnosticsSettings_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 @@ -585,6 +621,8 @@ input-file: - $(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 diff --git a/specification/monitor/resource-manager/readme.python.md b/specification/monitor/resource-manager/readme.python.md index 753cfc0a5965..b2c18e532fda 100644 --- a/specification/monitor/resource-manager/readme.python.md +++ b/specification/monitor/resource-manager/readme.python.md @@ -2,7 +2,7 @@ These settings apply only when `--python` is specified on the command line. -``` yaml $(python) +``` yaml !$(track2) python: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION @@ -14,12 +14,23 @@ python: python-base-namespace: azure.mgmt.monitor ``` +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-eventhub +no-namespace-folders: true +python-base-folder: monitor/azure-mgmt-monitor/azure/mgmt/monitor +``` + ### Python multi-api Generate all API versions currently shipped for this package -```yaml $(python) && $(multiapi) +```yaml $(multiapi) && !$(track2) batch: + - tag: package-2019-10-17-preview-only - tag: package-2019-06-01-only - tag: package-2019-03-01-only - tag: package-2018-11-27-preview-only @@ -39,13 +50,51 @@ batch: - tag: package-2015-04-01-only ``` +```yaml $(multiapi) && $(track2) +clear-output-folder: true +batch: + - tag: package-2019-10-17-preview-only + - tag: package-2019-06-01-only + - tag: package-2019-03-01-only + - tag: package-2018-11-27-preview-only + - tag: package-2018-09-01-only + - tag: package-2018-06-01-preview-only + - tag: package-2018-04-16-only + - tag: package-2018-03-01-only + - tag: package-2018-01-01-only + - tag: package-2017-12-01-preview-only + - tag: package-2017-11-01-preview-only + - tag: package-2017-05-01-preview-only + - tag: package-2017-04-01-only + - tag: package-2017-03-01-preview-only + - tag: package-2016-09-01-only + - tag: package-2016-03-01-only + - tag: package-2015-07-01-only + - tag: package-2015-04-01-only + - multiapiscript: true +``` + +### Tag: package-2019-10-17-preview-only and python + +These settings apply only when `--tag=package-2019-10-17-preview-only --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2019-10-17-preview-only' +namespace: $(python-base-namespace).v2019_10_17 +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2019_10_17 +python: + namespace: $(python-base-namespace).v2019_10_17 + output-folder: $(python-sdks-folder)/$(python-base-folder)/v2019_10_17 +``` ### Tag: package-2019-06-01-only and python These settings apply only when `--tag=package-2019-06-01-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2019-06-01-only' && $(python) +``` yaml $(tag) == 'package-2019-06-01-only' +namespace: $(python-base-namespace).v2019_06_01 +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2019_06_01 python: namespace: $(python-base-namespace).v2019_06_01 output-folder: $(python-sdks-folder)/$(python-base-folder)/v2019_06_01 @@ -56,7 +105,9 @@ python: These settings apply only when `--tag=package-2019-03-01-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2019-03-01-only' && $(python) +``` yaml $(tag) == 'package-2019-03-01-only' +namespace: $(python-base-namespace).v2019_03_01 +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2019_03_01 python: namespace: $(python-base-namespace).v2019_03_01 output-folder: $(python-sdks-folder)/$(python-base-folder)/v2019_03_01 @@ -67,7 +118,9 @@ python: These settings apply only when `--tag=package-2018-11-27-preview-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-11-27-preview-only' && $(python) +``` yaml $(tag) == 'package-2018-11-27-preview-only' +namespace: $(python-base-namespace).v2018_11_27_preview +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2018_11_27_preview python: namespace: $(python-base-namespace).v2018_11_27_preview output-folder: $(python-sdks-folder)/$(python-base-folder)/v2018_11_27_preview @@ -78,7 +131,9 @@ python: These settings apply only when `--tag=package-2018-09-01-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-09-01-only' && $(python) +``` yaml $(tag) == 'package-2018-09-01-only' +namespace: $(python-base-namespace).v2018_09_01 +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2018_09_01 python: namespace: $(python-base-namespace).v2018_09_01 output-folder: $(python-sdks-folder)/$(python-base-folder)/v2018_09_01 @@ -89,7 +144,9 @@ python: These settings apply only when `--tag=package-2018-06-01-preview-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-06-01-preview-only' && $(python) +``` yaml $(tag) == 'package-2018-06-01-preview-only' +namespace: $(python-base-namespace).v2018_06_01_preview +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2018_06_01_preview python: namespace: $(python-base-namespace).v2018_06_01_preview output-folder: $(python-sdks-folder)/$(python-base-folder)/v2018_06_01_preview @@ -100,7 +157,9 @@ python: These settings apply only when `--tag=package-2018-04-16-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-04-16-only' && $(python) +``` yaml $(tag) == 'package-2018-04-16-only' +namespace: $(python-base-namespace).v2018_04_16 +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2018_04_16 python: namespace: $(python-base-namespace).v2018_04_16 output-folder: $(python-sdks-folder)/$(python-base-folder)/v2018_04_16 @@ -111,7 +170,9 @@ python: These settings apply only when `--tag=package-2018-03-01-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-03-01-only' && $(python) +``` yaml $(tag) == 'package-2018-03-01-only' +namespace: $(python-base-namespace).v2018_03_01 +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2018_03_01 python: namespace: $(python-base-namespace).v2018_03_01 output-folder: $(python-sdks-folder)/$(python-base-folder)/v2018_03_01 @@ -122,7 +183,9 @@ python: These settings apply only when `--tag=package-2018-01-01-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-01-01-only' && $(python) +``` yaml $(tag) == 'package-2018-01-01-only' +namespace: $(python-base-namespace).v2018_01_01 +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2018_01_01 python: namespace: $(python-base-namespace).v2018_01_01 output-folder: $(python-sdks-folder)/$(python-base-folder)/v2018_01_01 @@ -133,7 +196,9 @@ python: These settings apply only when `--tag=package-2017-12-01-preview-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2017-12-01-preview-only' && $(python) +``` yaml $(tag) == 'package-2017-12-01-preview-only' +namespace: $(python-base-namespace).v2017_12_01_preview +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2017_12_01_preview python: namespace: $(python-base-namespace).v2017_12_01_preview output-folder: $(python-sdks-folder)/$(python-base-folder)/v2017_12_01_preview @@ -144,7 +209,9 @@ python: These settings apply only when `--tag=package-2017-11-01-preview-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2017-11-01-preview-only' && $(python) +``` yaml $(tag) == 'package-2017-11-01-preview-only' +namespace: $(python-base-namespace).v2017_11_01_preview +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2017_11_01_preview python: namespace: $(python-base-namespace).v2017_11_01_preview output-folder: $(python-sdks-folder)/$(python-base-folder)/v2017_11_01_preview @@ -155,7 +222,9 @@ python: These settings apply only when `--tag=package-2017-05-01-preview-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2017-05-01-preview-only' && $(python) +``` yaml $(tag) == 'package-2017-05-01-preview-only' +namespace: $(python-base-namespace).v2017_05_01_preview +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2017_05_01_preview python: namespace: $(python-base-namespace).v2017_05_01_preview output-folder: $(python-sdks-folder)/$(python-base-folder)/v2017_05_01_preview @@ -166,7 +235,9 @@ python: These settings apply only when `--tag=package-2017-04-01-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2017-04-01-only' && $(python) +``` yaml $(tag) == 'package-2017-04-01-only' +namespace: $(python-base-namespace).v2017_04_01 +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2017_04_01 python: namespace: $(python-base-namespace).v2017_04_01 output-folder: $(python-sdks-folder)/$(python-base-folder)/v2017_04_01 @@ -177,7 +248,9 @@ python: These settings apply only when `--tag=package-2017-03-01-preview-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2017-03-01-preview-only' && $(python) +``` yaml $(tag) == 'package-2017-03-01-preview-only' +namespace: $(python-base-namespace).v2017_03_01_preview +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2017_03_01_preview python: namespace: $(python-base-namespace).v2017_03_01_preview output-folder: $(python-sdks-folder)/$(python-base-folder)/v2017_03_01_preview @@ -188,7 +261,9 @@ python: These settings apply only when `--tag=package-2016-09-01-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2016-09-01-only' && $(python) +``` yaml $(tag) == 'package-2016-09-01-only' +namespace: $(python-base-namespace).v2016_09_01 +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2016_09_01 python: namespace: $(python-base-namespace).v2016_09_01 output-folder: $(python-sdks-folder)/$(python-base-folder)/v2016_09_01 @@ -199,7 +274,9 @@ python: These settings apply only when `--tag=package-2016-03-01-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2016-03-01-only' && $(python) +``` yaml $(tag) == 'package-2016-03-01-only' +namespace: $(python-base-namespace).v2016_03_01 +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2016_03_01 python: namespace: $(python-base-namespace).v2016_03_01 output-folder: $(python-sdks-folder)/$(python-base-folder)/v2016_03_01 @@ -210,7 +287,9 @@ python: These settings apply only when `--tag=package-2015-07-01-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2015-07-01-only' && $(python) +``` yaml $(tag) == 'package-2015-07-01-only' +namespace: $(python-base-namespace).v2015_07_01 +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2015_07_01 python: namespace: $(python-base-namespace).v2015_07_01 output-folder: $(python-sdks-folder)/$(python-base-folder)/v2015_07_01 @@ -221,8 +300,10 @@ python: These settings apply only when `--tag=package-2015-04-01-only --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2015-04-01-only' && $(python) +``` yaml $(tag) == 'package-2015-04-01-only' +namespace: $(python-base-namespace).v2015_04_01 +output-folder: $(python-sdks-folder)/$(python-base-folder)/v2015_04_01 python: namespace: $(python-base-namespace).v2015_04_01 output-folder: $(python-sdks-folder)/$(python-base-folder)/v2015_04_01 -``` \ No newline at end of file +``` diff --git a/specification/msi/resource-manager/Microsoft.ManagedIdentity/preview/2015-08-31-preview/ManagedIdentity.json b/specification/msi/resource-manager/Microsoft.ManagedIdentity/preview/2015-08-31-preview/ManagedIdentity.json index 5e77b6691d3d..0c5cbed37da1 100644 --- a/specification/msi/resource-manager/Microsoft.ManagedIdentity/preview/2015-08-31-preview/ManagedIdentity.json +++ b/specification/msi/resource-manager/Microsoft.ManagedIdentity/preview/2015-08-31-preview/ManagedIdentity.json @@ -34,6 +34,39 @@ } }, "paths": { + "/{scope}/providers/Microsoft.ManagedIdentity/identities/default": { + "get": { + "operationId": "SystemAssignedIdentities_GetByScope", + "description": "Gets the systemAssignedIdentity available under the specified RP scope.", + "x-ms-examples": { + "MsiOperationsList": { + "$ref": "./examples/SystemAssignedIdentityGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The systemAssignedIdentity was retrieved and returned successfully.", + "schema": { + "$ref": "#/definitions/SystemAssignedIdentity" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, "/providers/Microsoft.ManagedIdentity/operations": { "get": { "operationId": "Operations_List", @@ -320,47 +353,58 @@ "definitions": { "Identity": { "properties": { - "id": { - "type": "string", - "readOnly": true, - "description": "The id of the created identity." - }, - "name": { - "type": "string", + "properties": { + "x-ms-client-flatten": true, "readOnly": true, - "description": "The name of the created identity." - }, + "description": "The properties associated with the identity.", + "$ref": "#/definitions/IdentityProperties" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "description": "Describes an identity resource." + }, + "SystemAssignedIdentity": { + "properties": { "location": { "type": "string", - "description": "The Azure region where the identity lives." + "x-ms-mutability": [ + "read", + "create" + ], + "description": "The geo-location where the resource lives" }, "tags": { "type": "object", "additionalProperties": { "type": "string" }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], "description": "Resource tags" }, "properties": { "x-ms-client-flatten": true, + "readOnly": true, "description": "The properties associated with the identity.", "$ref": "#/definitions/IdentityProperties" - }, - "type": { - "type": "string", - "readOnly": true, - "enum": [ - "Microsoft.ManagedIdentity/userAssignedIdentities" - ], - "x-ms-enum": { - "name": "UserAssignedIdentities", - "modelAsString": true - }, - "description": "The type of resource i.e. Microsoft.ManagedIdentity/userAssignedIdentities" } }, - "x-ms-azure-resource": true, - "description": "Describes an identity resource." + "required": [ + "location" + ], + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Describes a system assigned identity resource." }, "IdentityProperties": { "description": "The properties associated with the identity.", @@ -507,6 +551,15 @@ } }, "parameters": { + "ScopeParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The resource provider scope of the resource. Parent resource being extended by Managed Identities.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, "SubscriptionIdParameter": { "name": "subscriptionId", "in": "path", diff --git a/specification/msi/resource-manager/Microsoft.ManagedIdentity/preview/2015-08-31-preview/examples/SystemAssignedIdentityGet.json b/specification/msi/resource-manager/Microsoft.ManagedIdentity/preview/2015-08-31-preview/examples/SystemAssignedIdentityGet.json new file mode 100644 index 000000000000..839c51dba494 --- /dev/null +++ b/specification/msi/resource-manager/Microsoft.ManagedIdentity/preview/2015-08-31-preview/examples/SystemAssignedIdentityGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2015-08-31-preview", + "scope": "scope" + }, + "responses": { + "200": { + "body": { + "id": "/scope", + "location": "cus", + "name": "resourceName", + "properties": { + "clientId": "clientGUID", + "clientSecretUrl": "https://serviceRoot/scope/credentials?tid=tenantId&oid=principalId&aid=clientId", + "principalId": "identityObjectID", + "tenantId": "tenantGUID" + }, + "type": "ResourceProvider" + } + } + } +} diff --git a/specification/msi/resource-manager/Microsoft.ManagedIdentity/stable/2018-11-30/ManagedIdentity.json b/specification/msi/resource-manager/Microsoft.ManagedIdentity/stable/2018-11-30/ManagedIdentity.json index ac6419aeafd6..16695c387b30 100644 --- a/specification/msi/resource-manager/Microsoft.ManagedIdentity/stable/2018-11-30/ManagedIdentity.json +++ b/specification/msi/resource-manager/Microsoft.ManagedIdentity/stable/2018-11-30/ManagedIdentity.json @@ -34,6 +34,39 @@ } }, "paths": { + "/{scope}/providers/Microsoft.ManagedIdentity/identities/default": { + "get": { + "operationId": "SystemAssignedIdentities_GetByScope", + "description": "Gets the systemAssignedIdentity available under the specified RP scope.", + "x-ms-examples": { + "MsiOperationsList": { + "$ref": "./examples/SystemAssignedIdentityGet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ScopeParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The systemAssignedIdentity was retrieved and returned successfully.", + "schema": { + "$ref": "#/definitions/SystemAssignedIdentity" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, "/providers/Microsoft.ManagedIdentity/operations": { "get": { "operationId": "Operations_List", @@ -221,7 +254,7 @@ "in": "body", "required": true, "schema": { - "$ref": "#/definitions/Identity" + "$ref": "#/definitions/IdentityUpdate" }, "description": "Parameters to update the identity" } @@ -320,52 +353,99 @@ "definitions": { "Identity": { "properties": { - "id": { - "type": "string", - "readOnly": true, - "description": "The id of the created identity." - }, - "name": { - "type": "string", + "properties": { + "x-ms-client-flatten": true, "readOnly": true, - "description": "The name of the created identity." - }, + "description": "The properties associated with the identity.", + "$ref": "#/definitions/UserAssignedIdentityProperties" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "description": "Describes an identity resource." + }, + "IdentityUpdate": { + "properties": { "location": { "type": "string", - "description": "The Azure region where the identity lives." + "x-ms-mutability": [ + "read", + "create" + ], + "description": "The geo-location where the resource lives" }, "tags": { "type": "object", "additionalProperties": { "type": "string" }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], "description": "Resource tags" }, "properties": { "x-ms-client-flatten": true, + "readOnly": true, "description": "The properties associated with the identity.", - "$ref": "#/definitions/IdentityProperties" - }, - "type": { + "$ref": "#/definitions/UserAssignedIdentityProperties" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "Describes an identity resource." + }, + "SystemAssignedIdentity": { + "properties": { + "location": { "type": "string", - "readOnly": true, - "enum": [ - "Microsoft.ManagedIdentity/userAssignedIdentities" + "x-ms-mutability": [ + "read", + "create" ], - "x-ms-enum": { - "name": "UserAssignedIdentities", - "modelAsString": true + "description": "The geo-location where the resource lives" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" }, - "description": "The type of resource i.e. Microsoft.ManagedIdentity/userAssignedIdentities" + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Resource tags" + }, + "properties": { + "x-ms-client-flatten": true, + "readOnly": true, + "description": "The properties associated with the identity.", + "$ref": "#/definitions/SystemAssignedIdentityProperties" } }, - "x-ms-azure-resource": true, - "description": "Describes an identity resource." + "required": [ + "location" + ], + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Describes a system assigned identity resource." }, - "IdentityProperties": { - "description": "The properties associated with the identity.", + "SystemAssignedIdentityProperties": { + "description": "The properties associated with the system assigned identity.", "type": "object", - "title": "Identity properties.", + "title": "System Assigned Identity properties.", "properties": { "tenantId": { "type": "string", @@ -388,7 +468,32 @@ "clientSecretUrl": { "type": "string", "readOnly": true, - "description": " The ManagedServiceIdentity DataPlane URL that can be queried to obtain the identity credentials. If identity is user assigned, then the clientSecretUrl will not be present in the response, otherwise it will be present." + "description": " The ManagedServiceIdentity DataPlane URL that can be queried to obtain the identity credentials." + } + } + }, + "UserAssignedIdentityProperties": { + "description": "The properties associated with the user assigned identity.", + "type": "object", + "title": "User Assigned Identity properties.", + "properties": { + "tenantId": { + "type": "string", + "readOnly": true, + "format": "uuid", + "description": "The id of the tenant which the identity belongs to." + }, + "principalId": { + "type": "string", + "readOnly": true, + "format": "uuid", + "description": "The id of the service principal object associated with the created identity." + }, + "clientId": { + "type": "string", + "readOnly": true, + "format": "uuid", + "description": "The id of the app associated with the identity. This is a random generated UUID by MSI." } } }, @@ -507,6 +612,15 @@ } }, "parameters": { + "ScopeParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "The resource provider scope of the resource. Parent resource being extended by Managed Identities.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, "SubscriptionIdParameter": { "name": "subscriptionId", "in": "path", diff --git a/specification/msi/resource-manager/Microsoft.ManagedIdentity/stable/2018-11-30/examples/IdentityCreate.json b/specification/msi/resource-manager/Microsoft.ManagedIdentity/stable/2018-11-30/examples/IdentityCreate.json index 7d47798e0b0b..d57e15052a87 100644 --- a/specification/msi/resource-manager/Microsoft.ManagedIdentity/stable/2018-11-30/examples/IdentityCreate.json +++ b/specification/msi/resource-manager/Microsoft.ManagedIdentity/stable/2018-11-30/examples/IdentityCreate.json @@ -5,7 +5,7 @@ "resourceGroupName": "rgName", "resourceName": "resourceName", "parameters": { - "location": "cus", + "location": "eastus", "tags": { "key1": "value1", "key2": "value2" @@ -16,7 +16,7 @@ "201": { "body": { "id": "/subscriptions/subid/resourcegroups/rgName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identityName", - "location": "cus", + "location": "eastus", "name": "identityName", "properties": { "clientId": "clientGUID", @@ -33,7 +33,7 @@ "200": { "body": { "id": "/subscriptions/subid/resourcegroups/rgName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identityName", - "location": "cus", + "location": "eastus", "name": "identityName", "properties": { "clientId": "clientGUID", diff --git a/specification/msi/resource-manager/Microsoft.ManagedIdentity/stable/2018-11-30/examples/IdentityGet.json b/specification/msi/resource-manager/Microsoft.ManagedIdentity/stable/2018-11-30/examples/IdentityGet.json index 48d0b8321c92..f8dca8517fe4 100644 --- a/specification/msi/resource-manager/Microsoft.ManagedIdentity/stable/2018-11-30/examples/IdentityGet.json +++ b/specification/msi/resource-manager/Microsoft.ManagedIdentity/stable/2018-11-30/examples/IdentityGet.json @@ -9,7 +9,7 @@ "200": { "body": { "id": "/subscriptions/subid/resourcegroups/rgName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identityName", - "location": "cus", + "location": "eastus", "name": "identityName", "properties": { "clientId": "clientGUID", diff --git a/specification/msi/resource-manager/Microsoft.ManagedIdentity/stable/2018-11-30/examples/IdentityListByResourceGroup.json b/specification/msi/resource-manager/Microsoft.ManagedIdentity/stable/2018-11-30/examples/IdentityListByResourceGroup.json index 9b447a9d3889..d33cf94d2b6c 100644 --- a/specification/msi/resource-manager/Microsoft.ManagedIdentity/stable/2018-11-30/examples/IdentityListByResourceGroup.json +++ b/specification/msi/resource-manager/Microsoft.ManagedIdentity/stable/2018-11-30/examples/IdentityListByResourceGroup.json @@ -10,7 +10,7 @@ "value": [ { "id": "/subscriptions/subid/resourcegroups/rgName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identityName", - "location": "cus", + "location": "eastus", "name": "identityName", "properties": { "clientId": "clientGUID", diff --git a/specification/msi/resource-manager/Microsoft.ManagedIdentity/stable/2018-11-30/examples/IdentityListBySubscription.json b/specification/msi/resource-manager/Microsoft.ManagedIdentity/stable/2018-11-30/examples/IdentityListBySubscription.json index 4d17e0d6bb5b..ba8d11b3673f 100644 --- a/specification/msi/resource-manager/Microsoft.ManagedIdentity/stable/2018-11-30/examples/IdentityListBySubscription.json +++ b/specification/msi/resource-manager/Microsoft.ManagedIdentity/stable/2018-11-30/examples/IdentityListBySubscription.json @@ -9,7 +9,7 @@ "value": [ { "id": "/subscriptions/subid/resourcegroups/rgName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identityName", - "location": "cus", + "location": "eastus", "name": "identityName", "properties": { "clientId": "clientGUID", diff --git a/specification/msi/resource-manager/Microsoft.ManagedIdentity/stable/2018-11-30/examples/IdentityUpdate.json b/specification/msi/resource-manager/Microsoft.ManagedIdentity/stable/2018-11-30/examples/IdentityUpdate.json index 1f2d2a6cf7b4..53d7be02e667 100644 --- a/specification/msi/resource-manager/Microsoft.ManagedIdentity/stable/2018-11-30/examples/IdentityUpdate.json +++ b/specification/msi/resource-manager/Microsoft.ManagedIdentity/stable/2018-11-30/examples/IdentityUpdate.json @@ -5,7 +5,7 @@ "resourceGroupName": "rgName", "resourceName": "resourceName", "parameters": { - "location": "cus", + "location": "eastus", "tags": { "key1": "value1", "key2": "value2" @@ -16,7 +16,7 @@ "200": { "body": { "id": "/subscriptions/subid/resourcegroups/rgName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identityName", - "location": "cus", + "location": "eastus", "name": "identityName", "properties": { "clientId": "clientGUID", diff --git a/specification/msi/resource-manager/Microsoft.ManagedIdentity/stable/2018-11-30/examples/SystemAssignedIdentityGet.json b/specification/msi/resource-manager/Microsoft.ManagedIdentity/stable/2018-11-30/examples/SystemAssignedIdentityGet.json new file mode 100644 index 000000000000..f3e08728885f --- /dev/null +++ b/specification/msi/resource-manager/Microsoft.ManagedIdentity/stable/2018-11-30/examples/SystemAssignedIdentityGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2018-11-30", + "scope": "scope" + }, + "responses": { + "200": { + "body": { + "id": "/scope", + "location": "cus", + "name": "resourceName", + "properties": { + "clientId": "clientGUID", + "clientSecretUrl": "https://serviceRoot/scope/credentials?tid=tenantId&oid=principalId&aid=clientId", + "principalId": "identityObjectID", + "tenantId": "tenantGUID" + }, + "type": "ResourceProvider" + } + } + } +} diff --git a/specification/msi/resource-manager/readme.cli.md b/specification/msi/resource-manager/readme.cli.md new file mode 100644 index 000000000000..822686560d2f --- /dev/null +++ b/specification/msi/resource-manager/readme.cli.md @@ -0,0 +1,19 @@ +## CLI + +These settings don't need to apply `--cli` on the command line. + +``` yaml +cli: + cli-name: msi + package-name: azure-mgmt-msi + namespace: azure.mgmt.msi + test-scenario: + - name: IdentityCreate + - name: IdentityGet + - name: IdentityListByResourceGroup + - name: IdentityListBySubscription + - name: MsiOperationsList + - name: MsiOperationsList + - name: IdentityUpdate + - name: IdentityDelete +``` \ No newline at end of file diff --git a/specification/msi/resource-manager/readme.md b/specification/msi/resource-manager/readme.md index f1543b3dc76a..6540b93517b2 100644 --- a/specification/msi/resource-manager/readme.md +++ b/specification/msi/resource-manager/readme.md @@ -43,6 +43,15 @@ input-file: - Microsoft.ManagedIdentity/preview/2015-08-31-preview/ManagedIdentity.json ``` +## Suppression +``` yaml +directive: + - suppress: TrackedResourcePatchOperation + from: ManagedIdentity.json + where: $.definitions.SystemAssignedIdentity + reason: The identity type exposed under any scope is not a tracked resource since it is an extension. +``` + --- # Code Generation diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerAdminCreateUpdate.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerAdminCreateUpdate.json index 1679c78a39fc..ff3322eea174 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerAdminCreateUpdate.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerAdminCreateUpdate.json @@ -29,7 +29,17 @@ } }, "202": { - "body": "Accepted" + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/mysqltestsvc4/administrators/activeDirectory", + "name": "activeDirectory", + "type": "Microsoft.DBforMySQL/servers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } } } } diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerAdminDelete.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerAdminDelete.json index 10dc27f86aaa..135fbf49ac61 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerAdminDelete.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerAdminDelete.json @@ -7,14 +7,8 @@ "api-version": "2017-12-01-preview" }, "responses": { - "200": { - "body": "OK" - }, - "202": { - "body": "Accepted" - }, - "204": { - "body": "No Content" - } + "200": {}, + "202": {}, + "204": {} } } diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerCreate.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerCreate.json index dd25d294395a..31ab520e440d 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerCreate.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerCreate.json @@ -10,6 +10,7 @@ "administratorLogin": "cloudsa", "administratorLoginPassword": "pass$w0rd", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_2", "storageProfile": { "storageMB": 128000, "backupRetentionDays": 7, @@ -46,6 +47,7 @@ }, "version": "5.7", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_2", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mysqltestsvc4.mysql.database.azure.com", "earliestRestoreDate": "2018-03-14T18:02:41.577+00:00" diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerGet.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerGet.json index dd1f7afc6158..44e194ea6cdc 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerGet.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerGet.json @@ -23,6 +23,7 @@ }, "version": "5.7", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_0", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mysqltestsvc4.mysql.database.azure.com", "earliestRestoreDate": "2018-03-14T18:02:41.577+00:00", diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerList.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerList.json index ec45f333a798..9f0b8d612dfa 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerList.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/examples/ServerList.json @@ -23,6 +23,7 @@ }, "version": "5.7", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_2", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mysqltestsvc1.mysql.database.azure.com", "earliestRestoreDate": "2018-02-28T23:56:02.627+00:00" @@ -48,6 +49,7 @@ }, "version": "5.7", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_1", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mysqltstsvc2.mysql.database.azure.com", "earliestRestoreDate": "2018-02-28T23:56:54.3+00:00" @@ -73,6 +75,7 @@ }, "version": "5.7", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_0", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mysqltestsvc3.mysql.database.azure.com", "earliestRestoreDate": "2018-02-28T23:59:44.847+00:00" diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/mysql.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/mysql.json index e59c1a6f7444..930457495d0e 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/mysql.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2017-12-01-preview/mysql.json @@ -1149,13 +1149,13 @@ ], "responses": { "200": { - "description": "OK", + "description": "Successfully updated the active directory administrator", "schema": { "$ref": "#/definitions/ServerAdministratorResource" } }, "202": { - "description": "Accepted", + "description": "Operation in progress", "schema": { "$ref": "#/definitions/ServerAdministratorResource" } @@ -1196,22 +1196,13 @@ ], "responses": { "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ServerAdministratorResource" - } + "description": "Successfully deleted the active directory administrator" }, "202": { - "description": "Accepted", - "schema": { - "$ref": "#/definitions/ServerAdministratorResource" - } + "description": "Operation in progress" }, "204": { - "description": "NoContent", - "schema": { - "$ref": "#/definitions/ServerAdministratorResource" - } + "description": "The specified Server active directory administrator does not exist" }, "default": { "description": "Error response describing why the operation failed.", @@ -1228,7 +1219,7 @@ "tags": [ "ServerAdministrators" ], - "operationId": "ServerAdministrators_ListByServer", + "operationId": "ServerAdministrators_List", "description": "Returns a list of server Administrators.", "x-ms-examples": { "get a list of server administrators": { @@ -1517,6 +1508,115 @@ "modelAsString": false } }, + "MinimalTlsVersion": { + "type": "string", + "description": "Enforce a minimal Tls version for the server.", + "enum": [ + "TLS1_0", + "TLS1_1", + "TLS1_2", + "TLSEnforcementDisabled" + ], + "x-ms-enum": { + "name": "MinimalTlsVersionEnum", + "modelAsString": true + } + }, + "ServerPrivateEndpointConnection": { + "description": "A private endpoint connection under a server", + "type": "object", + "properties": { + "id": { + "description": "Resource Id of the private endpoint connection.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Private endpoint connection properties", + "readOnly": true + } + } + }, + "PrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionStateProperty", + "description": "Connection state of the private endpoint connection." + }, + "provisioningState": { + "description": "State of the private endpoint connection.", + "enum": [ + "Approving", + "Ready", + "Dropping", + "Failed", + "Rejecting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PrivateEndpointProvisioningState", + "modelAsString": true + } + } + } + }, + "PrivateEndpointProperty": { + "type": "object", + "properties": { + "id": { + "description": "Resource id of the private endpoint.", + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "PrivateLinkServiceConnectionStateProperty": { + "required": [ + "status", + "description" + ], + "type": "object", + "properties": { + "status": { + "description": "The private link service connection status.", + "enum": [ + "Approved", + "Pending", + "Rejected", + "Disconnected" + ], + "type": "string", + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStateStatus", + "modelAsString": true + } + }, + "description": { + "description": "The private link service connection description.", + "type": "string" + }, + "actionsRequired": { + "description": "The actions required for private link service connection.", + "enum": [ + "None" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStateActionsRequire", + "modelAsString": true + } + } + } + }, "ProxyResource": { "description": "Resource properties.", "properties": { @@ -1576,13 +1676,35 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, + "byokEnforcement": { + "type": "string", + "description": "Status showing whether the server data encryption is enabled with customer-managed keys.", + "readOnly": true + }, + "infrastructureEncryption": { + "type": "string", + "description": "Status showing whether the server enabled infrastructure encryption.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "InfrastructureEncryption", + "modelAsString": true + } + }, "userVisibleState": { "type": "string", "description": "A state of a server that is visible to user.", "enum": [ "Ready", "Dropping", - "Disabled" + "Disabled", + "Inaccessible" ], "x-ms-enum": { "name": "ServerState", @@ -1615,6 +1737,26 @@ "format": "int32", "minimum": 0, "description": "The maximum number of replicas that a master server can have." + }, + "publicNetworkAccess": { + "type": "string", + "description": "Whether or not public endpoint access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccessEnum", + "modelAsString": true + } + }, + "privateEndpointConnections": { + "description": "List of private endpoint connections on a server", + "type": "array", + "items": { + "$ref": "#/definitions/ServerPrivateEndpointConnection" + }, + "readOnly": true } }, "description": "The properties of a server." @@ -1671,6 +1813,10 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, "storageProfile": { "$ref": "#/definitions/StorageProfile", "description": "Storage profile of a server." @@ -1918,6 +2064,10 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, "replicationRole": { "type": "string", "description": "The replication role of the server." @@ -2517,7 +2667,7 @@ }, "login": { "type": "string", - "description": "The server administrator login value." + "description": "The server administrator login account name." }, "sid": { "type": "string", diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2018-06-01-privatepreview/examples/ServerAdminCreateUpdate.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2018-06-01-privatepreview/examples/ServerAdminCreateUpdate.json index f7344538d931..ed8f6e376d6f 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2018-06-01-privatepreview/examples/ServerAdminCreateUpdate.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2018-06-01-privatepreview/examples/ServerAdminCreateUpdate.json @@ -29,7 +29,17 @@ } }, "202": { - "body": "Accepted" + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/mysqltestsvc4/administrators/activeDirectory", + "name": "activeDirectory", + "type": "Microsoft.DBforMySQL/servers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } } } } diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2018-06-01-privatepreview/examples/ServerAdminDelete.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2018-06-01-privatepreview/examples/ServerAdminDelete.json index 27789e74bf1d..8f4ce2396f81 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2018-06-01-privatepreview/examples/ServerAdminDelete.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2018-06-01-privatepreview/examples/ServerAdminDelete.json @@ -7,14 +7,8 @@ "api-version": "2018-06-01-privatepreview" }, "responses": { - "200": { - "body": "OK" - }, - "202": { - "body": "Accepted" - }, - "204": { - "body": "No Content" - } + "200": {}, + "202": {}, + "204": {} } } diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2018-06-01-privatepreview/mysql.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2018-06-01-privatepreview/mysql.json index 1f59ebc01b05..8addd2520a3d 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2018-06-01-privatepreview/mysql.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/preview/2018-06-01-privatepreview/mysql.json @@ -1149,13 +1149,13 @@ ], "responses": { "200": { - "description": "OK", + "description": "Successfully updated the active directory administrator", "schema": { "$ref": "#/definitions/ServerAdministratorResource" } }, "202": { - "description": "Accepted", + "description": "Operation in progress", "schema": { "$ref": "#/definitions/ServerAdministratorResource" } @@ -1196,22 +1196,13 @@ ], "responses": { "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ServerAdministratorResource" - } + "description": "Successfully deleted the active directory administrator" }, "202": { - "description": "Accepted", - "schema": { - "$ref": "#/definitions/ServerAdministratorResource" - } + "description": "Operation in progress" }, "204": { - "description": "NoContent", - "schema": { - "$ref": "#/definitions/ServerAdministratorResource" - } + "description": "The specified Server active directory administrator does not exist" }, "default": { "description": "Error response describing why the operation failed.", @@ -1228,7 +1219,7 @@ "tags": [ "ServerAdministrators" ], - "operationId": "ServerAdministrators_ListByServer", + "operationId": "ServerAdministrators_List", "description": "Returns a list of server Administrators.", "x-ms-examples": { "get a list of server administrators": { @@ -2076,6 +2067,115 @@ "modelAsString": false } }, + "MinimalTlsVersion": { + "type": "string", + "description": "Enforce a minimal Tls version for the server.", + "enum": [ + "TLS1_0", + "TLS1_1", + "TLS1_2", + "TLSEnforcementDisabled" + ], + "x-ms-enum": { + "name": "MinimalTlsVersionEnum", + "modelAsString": true + } + }, + "ServerPrivateEndpointConnection": { + "description": "A private endpoint connection under a server", + "type": "object", + "properties": { + "id": { + "description": "Resource Id of the private endpoint connection.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/ServerPrivateEndpointConnectionProperties", + "description": "Private endpoint connection properties", + "readOnly": true + } + } + }, + "ServerPrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/ServerPrivateLinkServiceConnectionStateProperty", + "description": "Connection state of the private endpoint connection." + }, + "provisioningState": { + "description": "State of the private endpoint connection.", + "enum": [ + "Approving", + "Ready", + "Dropping", + "Failed", + "Rejecting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PrivateEndpointProvisioningState", + "modelAsString": true + } + } + } + }, + "PrivateEndpointProperty": { + "type": "object", + "properties": { + "id": { + "description": "Resource id of the private endpoint.", + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "ServerPrivateLinkServiceConnectionStateProperty": { + "required": [ + "status", + "description" + ], + "type": "object", + "properties": { + "status": { + "description": "The private link service connection status.", + "enum": [ + "Approved", + "Pending", + "Rejected", + "Disconnected" + ], + "type": "string", + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStateStatus", + "modelAsString": true + } + }, + "description": { + "description": "The private link service connection description.", + "type": "string" + }, + "actionsRequired": { + "description": "The actions required for private link service connection.", + "enum": [ + "None" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStateActionsRequire", + "modelAsString": true + } + } + } + }, "ProxyResource": { "description": "Resource properties.", "properties": { @@ -2135,13 +2235,35 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, + "byokEnforcement": { + "type": "string", + "description": "Status showing whether the server data encryption is enabled with customer-managed keys.", + "readOnly": true + }, + "infrastructureEncryption": { + "type": "string", + "description": "Status showing whether the server enabled infrastructure encryption.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "InfrastructureEncryption", + "modelAsString": true + } + }, "userVisibleState": { "type": "string", "description": "A state of a server that is visible to user.", "enum": [ "Ready", "Dropping", - "Disabled" + "Disabled", + "Inaccessible" ], "x-ms-enum": { "name": "ServerState", @@ -2174,6 +2296,26 @@ "format": "int32", "minimum": 0, "description": "The maximum number of replicas that a master server can have." + }, + "publicNetworkAccess": { + "type": "string", + "description": "Whether or not public endpoint access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccessEnum", + "modelAsString": true + } + }, + "privateEndpointConnections": { + "description": "List of private endpoint connections on a server", + "type": "array", + "items": { + "$ref": "#/definitions/ServerPrivateEndpointConnection" + }, + "readOnly": true } }, "description": "The properties of a server." @@ -2477,6 +2619,10 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, "replicationRole": { "type": "string", "description": "The replication role of the server." @@ -3076,7 +3222,7 @@ }, "login": { "type": "string", - "description": "The server administrator login value." + "description": "The server administrator login account name." }, "sid": { "type": "string", diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerAdminCreateUpdate.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerAdminCreateUpdate.json new file mode 100644 index 000000000000..54e6ad6f2f4e --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerAdminCreateUpdate.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "mysqltestsvc4", + "administratorName": "activeDirectory", + "api-version": "2017-12-01", + "properties": { + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/mysqltestsvc4/administrators/activeDirectory", + "name": "activeDirectory", + "type": "Microsoft.DBforMySQL/servers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/mysqltestsvc4/administrators/activeDirectory", + "name": "activeDirectory", + "type": "Microsoft.DBforMySQL/servers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerAdminDelete.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerAdminDelete.json new file mode 100644 index 000000000000..6dca003e1580 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerAdminDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "mysqltestsvc4", + "administratorName": "activeDirectory", + "api-version": "2017-12-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerAdminGet.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerAdminGet.json new file mode 100644 index 000000000000..c5871e0045a9 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerAdminGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "mysqltestsvc4", + "administratorName": "activeDirectory", + "api-version": "2017-12-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/mysqltestsvc4/administrators/activeDirectory", + "name": "activeDirectory", + "type": "Microsoft.DBforMySQL/servers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerAdminList.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerAdminList.json new file mode 100644 index 000000000000..770172c5f3ef --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerAdminList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "mysqltestsvc4", + "api-version": "2017-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/mysqltestsvc4/administrators/activeDirectory", + "name": "ActiveDirectory", + "type": "Microsoft.DBforMySQL/servers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } + ] + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerGet.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerGet.json index 2f315136b484..d2f64547f56a 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerGet.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerGet.json @@ -28,7 +28,24 @@ "earliestRestoreDate": "2018-03-14T18:02:41.577+00:00", "replicationRole": "None", "masterServerId": "", - "replicaCapacity": 5 + "replicaCapacity": 5, + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/mysqltestsvc4/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] }, "location": "westus", "tags": { diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerList.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerList.json index ea5765692f3d..30f53d481249 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerList.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerList.json @@ -25,7 +25,9 @@ "sslEnforcement": "Enabled", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mysqltestsvc1.mysql.database.azure.com", - "earliestRestoreDate": "2018-02-28T23:56:02.627+00:00" + "earliestRestoreDate": "2018-02-28T23:56:02.627+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [] }, "location": "westus", "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/mysqltestsvc1", @@ -50,7 +52,24 @@ "sslEnforcement": "Enabled", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mysqltstsvc2.mysql.database.azure.com", - "earliestRestoreDate": "2018-02-28T23:56:54.3+00:00" + "earliestRestoreDate": "2018-02-28T23:56:54.3+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/mysqltstsvc2/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] }, "location": "westus", "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/mysqltstsvc2", @@ -75,7 +94,24 @@ "sslEnforcement": "Enabled", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mysqltestsvc3.mysql.database.azure.com", - "earliestRestoreDate": "2018-02-28T23:59:44.847+00:00" + "earliestRestoreDate": "2018-02-28T23:59:44.847+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/mysqltestsvc3/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] }, "location": "westus", "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg1/providers/Microsoft.DBforMySQL/servers/mysqltestsvc3", diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerListByResourceGroup.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerListByResourceGroup.json index 6e0256e1c27c..adc7717c66b3 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerListByResourceGroup.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/examples/ServerListByResourceGroup.json @@ -26,7 +26,9 @@ "sslEnforcement": "Enabled", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mysqltestsvc1.mysql.database.azure.com", - "earliestRestoreDate": "2018-03-07T18:17:35.729321+00:00" + "earliestRestoreDate": "2018-03-07T18:17:35.729321+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [] }, "location": "westus", "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/mysqltestsvc1", @@ -51,7 +53,24 @@ "sslEnforcement": "Enabled", "userVisibleState": "Ready", "fullyQualifiedDomainName": "mysqltstsvc2.mysql.database.azure.com", - "earliestRestoreDate": "2018-03-07T18:17:35.729321+00:00" + "earliestRestoreDate": "2018-03-07T18:17:35.729321+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/mysqltstsvc2/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] }, "location": "westus", "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/mysqltstsvc2", diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/mysql.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/mysql.json index 236e154aed59..7f9bebd28eab 100644 --- a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/mysql.json +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2017-12-01/mysql.json @@ -57,13 +57,13 @@ "description": "Creates a new server or updates an existing server. The update action will overwrite the existing server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -110,13 +110,13 @@ "description": "Updates an existing server. The request body can contain one to many of the properties present in the normal server definition.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -157,13 +157,13 @@ "description": "Deletes a server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -195,13 +195,13 @@ "description": "Gets information about a server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -231,13 +231,13 @@ "description": "List all the servers in a given resource group.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" } ], "responses": { @@ -267,10 +267,10 @@ "description": "List all the servers in a given subscription.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -300,13 +300,13 @@ "description": "Restarts a server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -343,13 +343,13 @@ "description": "List all the replicas for a given server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -382,13 +382,13 @@ "description": "Creates a new firewall rule or updates an existing firewall rule.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -438,13 +438,13 @@ "description": "Deletes a server firewall rule.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -479,13 +479,13 @@ "description": "Gets information about a server firewall rule.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -518,13 +518,13 @@ "description": "List all the firewall rules in a given server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -552,16 +552,16 @@ "operationId": "VirtualNetworkRules_Get", "parameters": [ { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/virtualNetworkRuleNameParameter" @@ -592,16 +592,16 @@ "operationId": "VirtualNetworkRules_CreateOrUpdate", "parameters": [ { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/virtualNetworkRuleNameParameter" @@ -651,7 +651,7 @@ "operationId": "VirtualNetworkRules_Delete", "parameters": [ { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -660,10 +660,10 @@ "$ref": "#/parameters/virtualNetworkRuleNameParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -697,16 +697,16 @@ "operationId": "VirtualNetworkRules_ListByServer", "parameters": [ { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -744,13 +744,13 @@ "description": "Creates a new database or updates an existing database.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -800,13 +800,13 @@ "description": "Deletes a database.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -841,13 +841,13 @@ "description": "Gets information about a database.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -880,13 +880,13 @@ "description": "List all the databases in a given server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -919,13 +919,13 @@ "description": "Updates a configuration of a server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -969,13 +969,13 @@ "description": "Gets information about a configuration of server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -1008,13 +1008,13 @@ "description": "List all the configurations in a given server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -1047,13 +1047,13 @@ "description": "List all the log files in a given server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -1072,6 +1072,193 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/Administrators/activeDirectory": { + "get": { + "tags": [ + "ServerAdministrators" + ], + "operationId": "ServerAdministrators_Get", + "x-ms-examples": { + "ServerAdministratorGet": { + "$ref": "./examples/ServerAdminGet.json" + } + }, + "description": "Gets information about a AAD server administrator.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ServerAdministratorResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "ServerAdministrators" + ], + "operationId": "ServerAdministrators_CreateOrUpdate", + "x-ms-examples": { + "ServerAdministratorCreate": { + "$ref": "./examples/ServerAdminCreateUpdate.json" + } + }, + "description": "Creates or update active directory administrator on an existing server. The update action will overwrite the existing administrator.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ServerAdministratorResource" + }, + "description": "The required parameters for creating or updating an AAD server administrator." + } + ], + "responses": { + "200": { + "description": "Successfully updated the active directory administrator", + "schema": { + "$ref": "#/definitions/ServerAdministratorResource" + } + }, + "202": { + "description": "Operation in progress", + "schema": { + "$ref": "#/definitions/ServerAdministratorResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "ServerAdministrators" + ], + "operationId": "ServerAdministrators_Delete", + "x-ms-examples": { + "ServerAdministratorsDelete": { + "$ref": "./examples/ServerAdminDelete.json" + } + }, + "description": "Deletes server active directory administrator.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the active directory administrator" + }, + "202": { + "description": "Operation in progress" + }, + "204": { + "description": "The specified Server active directory administrator does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/administrators": { + "get": { + "tags": [ + "ServerAdministrators" + ], + "operationId": "ServerAdministrators_List", + "description": "Returns a list of server Administrators.", + "x-ms-examples": { + "get a list of server administrators": { + "$ref": "./examples/ServerAdminList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ServerAdministratorResourceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, "/subscriptions/{subscriptionId}/providers/Microsoft.DBforMySQL/locations/{locationName}/performanceTiers": { "get": { "tags": [ @@ -1086,10 +1273,10 @@ "description": "List all the performance tiers at specified location in a given subscription.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "#/parameters/LocationNameParameter" @@ -1122,10 +1309,10 @@ "description": "Check the availability of name for resource", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { "name": "nameAvailabilityRequest", @@ -1156,7 +1343,7 @@ "operationId": "ServerSecurityAlertPolicies_Get", "parameters": [ { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -1176,10 +1363,10 @@ } }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -1207,7 +1394,7 @@ "operationId": "ServerSecurityAlertPolicies_CreateOrUpdate", "parameters": [ { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -1236,10 +1423,10 @@ } }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -1281,7 +1468,7 @@ "description": "Lists all of the available REST API operations.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -1321,27 +1508,139 @@ "modelAsString": false } }, - "ProxyResource": { - "description": "Resource properties.", + "MinimalTlsVersion": { + "type": "string", + "description": "Enforce a minimal Tls version for the server.", + "enum": [ + "TLS1_0", + "TLS1_1", + "TLS1_2", + "TLSEnforcementDisabled" + ], + "x-ms-enum": { + "name": "MinimalTlsVersionEnum", + "modelAsString": true + } + }, + "InfrastructureEncryption": { + "type": "string", + "description": "Status showing whether the server enabled infrastructure encryption.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "InfrastructureEncryption", + "modelAsString": true + } + }, + "PublicNetworkAccess": { + "type": "string", + "description": "Whether or not public network access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccessEnum", + "modelAsString": true + } + }, + "ServerPrivateEndpointConnection": { + "description": "A private endpoint connection under a server", + "type": "object", "properties": { "id": { - "readOnly": true, + "description": "Resource Id of the private endpoint connection.", "type": "string", - "description": "Resource ID" + "readOnly": true }, - "name": { - "readOnly": true, - "type": "string", - "description": "Resource name." + "properties": { + "$ref": "#/definitions/ServerPrivateEndpointConnectionProperties", + "description": "Private endpoint connection properties", + "readOnly": true + } + } + }, + "ServerPrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." }, - "type": { - "readOnly": true, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/ServerPrivateLinkServiceConnectionStateProperty", + "description": "Connection state of the private endpoint connection." + }, + "provisioningState": { + "description": "State of the private endpoint connection.", + "enum": [ + "Approving", + "Ready", + "Dropping", + "Failed", + "Rejecting" + ], "type": "string", - "description": "Resource type." + "readOnly": true, + "x-ms-enum": { + "name": "PrivateEndpointProvisioningState", + "modelAsString": true + } + } + } + }, + "PrivateEndpointProperty": { + "type": "object", + "properties": { + "id": { + "description": "Resource id of the private endpoint.", + "type": "string" } }, "x-ms-azure-resource": true }, + "ServerPrivateLinkServiceConnectionStateProperty": { + "required": [ + "status", + "description" + ], + "type": "object", + "properties": { + "status": { + "description": "The private link service connection status.", + "enum": [ + "Approved", + "Pending", + "Rejected", + "Disconnected" + ], + "type": "string", + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStateStatus", + "modelAsString": true + } + }, + "description": { + "description": "The private link service connection description.", + "type": "string" + }, + "actionsRequired": { + "description": "The actions required for private link service connection.", + "enum": [ + "None" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStateActionsRequire", + "modelAsString": true + } + } + } + }, "TrackedResource": { "description": "Resource properties including location and tags for track resources.", "properties": { @@ -1359,7 +1658,7 @@ }, "allOf": [ { - "$ref": "#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" } ], "required": [ @@ -1380,13 +1679,27 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, + "byokEnforcement": { + "type": "string", + "description": "Status showing whether the server data encryption is enabled with customer-managed keys.", + "readOnly": true + }, + "infrastructureEncryption": { + "$ref": "#/definitions/InfrastructureEncryption", + "description": "Status showing whether the server enabled infrastructure encryption." + }, "userVisibleState": { "type": "string", "description": "A state of a server that is visible to user.", "enum": [ "Ready", "Dropping", - "Disabled" + "Disabled", + "Inaccessible" ], "x-ms-enum": { "name": "ServerState", @@ -1419,6 +1732,18 @@ "format": "int32", "minimum": 0, "description": "The maximum number of replicas that a master server can have." + }, + "publicNetworkAccess": { + "$ref": "#/definitions/PublicNetworkAccess", + "description": "Whether or not public network access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'" + }, + "privateEndpointConnections": { + "description": "List of private endpoint connections on a server", + "type": "array", + "items": { + "$ref": "#/definitions/ServerPrivateEndpointConnection" + }, + "readOnly": true } }, "description": "The properties of a server." @@ -1475,6 +1800,18 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, + "infrastructureEncryption": { + "$ref": "#/definitions/InfrastructureEncryption", + "description": "Status showing whether the server enabled infrastructure encryption." + }, + "publicNetworkAccess": { + "$ref": "#/definitions/PublicNetworkAccess", + "description": "Whether or not public network access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'" + }, "storageProfile": { "$ref": "#/definitions/StorageProfile", "description": "Storage profile of a server." @@ -1616,8 +1953,41 @@ }, "description": "Billing information related properties of a server." }, + "ResourceIdentity": { + "description": "Azure Active Directory identity configuration for a resource.", + "type": "object", + "properties": { + "principalId": { + "format": "uuid", + "description": "The Azure Active Directory principal id.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The identity type. Set this to 'SystemAssigned' in order to automatically create and assign an Azure Active Directory principal for the resource.", + "enum": [ + "SystemAssigned" + ], + "type": "string", + "x-ms-enum": { + "name": "IdentityType", + "modelAsString": true + } + }, + "tenantId": { + "format": "uuid", + "description": "The Azure Active Directory tenant id.", + "type": "string", + "readOnly": true + } + } + }, "Server": { "properties": { + "identity": { + "$ref": "#/definitions/ResourceIdentity", + "description": "The Azure Active Directory identity of the server." + }, "sku": { "$ref": "#/definitions/Sku", "description": "The SKU (pricing tier) of the server." @@ -1637,6 +2007,10 @@ }, "ServerForCreate": { "properties": { + "identity": { + "$ref": "#/definitions/ResourceIdentity", + "description": "The Azure Active Directory identity of the server." + }, "sku": { "$ref": "#/definitions/Sku", "description": "The SKU (pricing tier) of the server." @@ -1666,6 +2040,10 @@ }, "ServerUpdateParameters": { "properties": { + "identity": { + "$ref": "#/definitions/ResourceIdentity", + "description": "The Azure Active Directory identity of the server." + }, "sku": { "$ref": "#/definitions/Sku", "description": "The SKU (pricing tier) of the server." @@ -1689,6 +2067,14 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, + "publicNetworkAccess": { + "$ref": "#/definitions/PublicNetworkAccess", + "description": "Whether or not public network access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'" + }, "replicationRole": { "type": "string", "description": "The replication role of the server." @@ -1748,7 +2134,7 @@ }, "allOf": [ { - "$ref": "#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" } ], "required": [ @@ -1806,7 +2192,7 @@ "type": "object", "allOf": [ { - "$ref": "#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" } ], "properties": { @@ -1859,7 +2245,7 @@ }, "allOf": [ { - "$ref": "#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" } ], "description": "Represents a Database." @@ -1919,7 +2305,7 @@ }, "allOf": [ { - "$ref": "#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" } ], "description": "Represents a Configuration." @@ -2055,7 +2441,7 @@ }, "allOf": [ { - "$ref": "#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" } ], "description": "Represents a log file." @@ -2229,7 +2615,7 @@ "type": "object", "allOf": [ { - "$ref": "#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" } ], "properties": { @@ -2244,60 +2630,75 @@ "x-ms-external": true, "properties": { "error": { - "$ref": "#/definitions/CloudErrorBody" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" } }, "description": "An error response from the Batch service." }, - "CloudErrorBody": { - "x-ms-external": true, + "ServerAdministratorProperties": { "properties": { - "code": { + "administratorType": { "type": "string", - "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + "description": "The type of administrator.", + "enum": [ + "ActiveDirectory" + ], + "x-ms-enum": { + "name": "AdministratorType" + } }, - "message": { + "login": { "type": "string", - "description": "A message describing the error, intended to be suitable for display in a user interface." + "description": "The server administrator login account name." }, - "target": { + "sid": { "type": "string", - "description": "The target of the particular error. For example, the name of the property in error." + "description": "The server administrator Sid (Secure ID).", + "format": "uuid" }, - "details": { + "tenantId": { + "type": "string", + "description": "The server Active Directory Administrator tenant id.", + "format": "uuid" + } + }, + "required": [ + "tenantId", + "administratorType", + "login", + "sid" + ], + "description": "The properties of an server Administrator." + }, + "ServerAdministratorResource": { + "properties": { + "properties": { + "$ref": "#/definitions/ServerAdministratorProperties", + "x-ms-client-flatten": true, + "description": "Properties of the server AAD administrator." + } + }, + "description": "Represents a and external administrator to be created.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ] + }, + "ServerAdministratorResourceListResult": { + "properties": { + "value": { "type": "array", "items": { - "$ref": "#/definitions/CloudErrorBody" + "$ref": "#/definitions/ServerAdministratorResource" }, - "description": "A list of additional details about the error." + "description": "The list of server Active Directory Administrators for the server." } }, - "description": "An error response from the Batch service." + "description": "The response to a list Active Directory Administrators request." } }, "parameters": { - "SubscriptionIdParameter": { - "name": "subscriptionId", - "in": "path", - "required": true, - "type": "string", - "description": "The subscription ID that identifies an Azure subscription." - }, - "ApiVersionParameter": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the request." - }, - "ResourceGroupParameter": { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "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.", - "x-ms-parameter-location": "method" - }, "ServerNameParameter": { "name": "serverName", "in": "path", diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/PerformanceRecommendations.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/PerformanceRecommendations.json new file mode 100644 index 000000000000..089d4e1f7b68 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/PerformanceRecommendations.json @@ -0,0 +1,512 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-06-01", + "title": "MySQLManagementClient", + "description": "The Microsoft Azure management API provides create, read, update, and delete functionality for Azure MySQL resources including servers, databases, firewall rules, VNET rules, security alert policies, log files and configurations with new business model." + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/advisors/{advisorName}": { + "get": { + "tags": [ + "Advisors" + ], + "operationId": "Advisors_Get", + "x-ms-examples": { + "AdvisorsGet": { + "$ref": "./examples/AdvisorsGet.json" + } + }, + "description": "Get a recommendation action advisor.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/AdvisorNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Advisor" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/advisors": { + "get": { + "tags": [ + "Advisors" + ], + "operationId": "Advisors_ListByServer", + "x-ms-examples": { + "AdvisorsListByServer": { + "$ref": "./examples/AdvisorsListByServer.json" + } + }, + "description": "List recommendation action advisors.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AdvisorsResultList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/advisors/{advisorName}/createRecommendedActionSession": { + "post": { + "tags": [ + "RecommendedActionSessions" + ], + "operationId": "CreateRecommendedActionSession", + "x-ms-examples": { + "RecommendedActionSessionCreate": { + "$ref": "./examples/RecommendedActionSessionCreate.json" + } + }, + "description": "Create recommendation action session for the advisor.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/AdvisorNameParameter" + }, + { + "name": "databaseName", + "in": "query", + "required": true, + "type": "string", + "description": "The name of the database." + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/advisors/{advisorName}/recommendedActions/{recommendedActionName}": { + "get": { + "tags": [ + "RecommendedActions" + ], + "operationId": "RecommendedActions_Get", + "x-ms-examples": { + "RecommendedActionsGet": { + "$ref": "./examples/RecommendedActionsGet.json" + } + }, + "description": "Retrieve recommended actions from the advisor.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/AdvisorNameParameter" + }, + { + "$ref": "#/parameters/RecommendedActionNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecommendationAction" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/advisors/{advisorName}/recommendedActions": { + "get": { + "tags": [ + "RecommendedActions" + ], + "operationId": "RecommendedActions_ListByServer", + "x-ms-examples": { + "RecommendedActionsListByServer": { + "$ref": "./examples/RecommendedActionsListByServer.json" + } + }, + "description": "Retrieve recommended actions from the advisor.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/AdvisorNameParameter" + }, + { + "name": "sessionId", + "in": "query", + "required": false, + "type": "string", + "description": "The recommendation action session identifier." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecommendationActionsResultList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DBforMySQL/locations/{locationName}/recommendedActionSessionsAzureAsyncOperation/{operationId}": { + "get": { + "tags": [ + "LocationBasedRecommendedActionSessionsOperationStatus" + ], + "operationId": "LocationBasedRecommendedActionSessionsOperationStatus_Get", + "x-ms-examples": { + "RecommendedActionSessionOperationStatus": { + "$ref": "./examples/RecommendedActionSessionOperationStatus.json" + } + }, + "description": "Recommendation action session operation status.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/LocationNameParameter" + }, + { + "$ref": "#/parameters/OperationIdParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/RecommendedActionSessionsOperationStatus" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DBforMySQL/locations/{locationName}/recommendedActionSessionsOperationResults/{operationId}": { + "get": { + "tags": [ + "LocationBasedRecommendedActionSessionsResult" + ], + "operationId": "LocationBasedRecommendedActionSessionsResult_List", + "x-ms-examples": { + "RecommendedActionSessionResult": { + "$ref": "./examples/RecommendedActionSessionResult.json" + } + }, + "description": "Recommendation action session operation result.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/LocationNameParameter" + }, + { + "$ref": "#/parameters/OperationIdParameter" + } + ], + "responses": { + "200": { + "description": "Created", + "schema": { + "$ref": "#/definitions/RecommendationActionsResultList" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/RecommendationActionsResultList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AdvisorProperties": { + "properties": {}, + "description": "The properties of a recommendation action advisor." + }, + "Advisor": { + "properties": { + "properties": { + "$ref": "#/definitions/AdvisorProperties", + "x-ms-client-flatten": true, + "description": "The properties of a recommendation action advisor." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Represents a recommendation action advisor." + }, + "AdvisorsResultList": { + "description": "A list of query statistics.", + "type": "object", + "properties": { + "value": { + "description": "The list of recommendation action advisors.", + "type": "array", + "items": { + "$ref": "#/definitions/Advisor" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "RecommendationActionProperties": { + "properties": { + "advisorName": { + "type": "string", + "description": "Advisor name." + }, + "sessionId": { + "type": "string", + "description": "Recommendation action session identifier." + }, + "actionId": { + "type": "integer", + "format": "int32", + "description": "Recommendation action identifier." + }, + "createdTime": { + "type": "string", + "format": "date-time", + "description": "Recommendation action creation time." + }, + "expirationTime": { + "type": "string", + "format": "date-time", + "description": "Recommendation action expiration time." + }, + "reason": { + "type": "string", + "description": "Recommendation action reason." + }, + "recommendationType": { + "type": "string", + "description": "Recommendation action type." + }, + "details": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Recommendation action details." + } + }, + "description": "The properties of a recommendation action." + }, + "RecommendationAction": { + "properties": { + "properties": { + "$ref": "#/definitions/RecommendationActionProperties", + "x-ms-client-flatten": true, + "description": "The properties of a recommendation action." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Represents a Recommendation Action." + }, + "RecommendationActionsResultList": { + "description": "A list of recommendation actions.", + "type": "object", + "properties": { + "value": { + "description": "The list of recommendation action advisors.", + "type": "array", + "items": { + "$ref": "#/definitions/RecommendationAction" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "RecommendedActionSessionsOperationStatus": { + "properties": { + "name": { + "type": "string", + "description": "Operation identifier." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "Operation start time." + }, + "status": { + "type": "string", + "description": "Operation status." + } + }, + "description": "Recommendation action session operation status." + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "LocationNameParameter": { + "name": "locationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the location.", + "x-ms-parameter-location": "method" + }, + "AdvisorNameParameter": { + "name": "advisorName", + "in": "path", + "required": true, + "type": "string", + "description": "The advisor name for recommendation action.", + "x-ms-parameter-location": "method" + }, + "RecommendedActionNameParameter": { + "name": "recommendedActionName", + "in": "path", + "required": true, + "type": "string", + "description": "The recommended action name.", + "x-ms-parameter-location": "method" + }, + "OperationIdParameter": { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The operation identifier.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/PrivateEndpointConnections.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/PrivateEndpointConnections.json new file mode 100644 index 000000000000..fb573697b6ba --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/PrivateEndpointConnections.json @@ -0,0 +1,416 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-06-01", + "title": "MySQLManagementClient", + "description": "The Microsoft Azure management API provides create, read, update, and delete functionality for Azure MySQL resources including servers, databases, firewall rules, VNET rules, security alert policies, log files and configurations with new business model." + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Gets a private endpoint connection.", + "operationId": "PrivateEndpointConnections_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/PrivateEndpointConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Approve or reject a private endpoint connection with a given name.", + "operationId": "PrivateEndpointConnections_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully approved or rejected private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Approve or reject a private endpoint connection with a given name.": { + "$ref": "./examples/PrivateEndpointConnectionUpdate.json" + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Deletes a private endpoint connection with a given name.", + "operationId": "PrivateEndpointConnections_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted private endpoint connection." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "Private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes a private endpoint connection with a given name.": { + "$ref": "./examples/PrivateEndpointConnectionDelete.json" + } + } + }, + "patch": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_UpdateTags", + "summary": "Updates tags on private endpoint connection.", + "description": "Updates private endpoint connection with the specified tags.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TagsObject" + }, + "description": "Parameters supplied to the Update private endpoint connection Tags operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update private endpoint connection Tags": { + "$ref": "./examples/PrivateEndpointConnectionUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Gets all private endpoint connections on a server.", + "operationId": "PrivateEndpointConnections_ListByServer", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private endpoint connections.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets list of private endpoint connections on a server.": { + "$ref": "./examples/PrivateEndpointConnectionList.json" + } + } + } + } + }, + "definitions": { + "PrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionStateProperty", + "description": "Connection state of the private endpoint connection." + }, + "provisioningState": { + "description": "State of the private endpoint connection.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateEndpointProperty": { + "type": "object", + "properties": { + "id": { + "description": "Resource id of the private endpoint.", + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "PrivateLinkServiceConnectionStateProperty": { + "required": [ + "status", + "description" + ], + "type": "object", + "properties": { + "status": { + "description": "The private link service connection status.", + "type": "string" + }, + "description": { + "description": "The private link service connection description.", + "type": "string" + }, + "actionsRequired": { + "description": "The actions required for private link service connection.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateEndpointConnection": { + "description": "A private endpoint connection", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "PrivateEndpointConnectionListResult": { + "description": "A list of private endpoint connections.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response from the Batch service." + }, + "TagsObject": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "description": "Tags object for patch operations." + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/PrivateLinkResources.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/PrivateLinkResources.json new file mode 100644 index 000000000000..00c4910b1873 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/PrivateLinkResources.json @@ -0,0 +1,207 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-06-01", + "title": "MySQLManagementClient", + "description": "The Microsoft Azure management API provides create, read, update, and delete functionality for Azure MySQL resources including servers, databases, firewall rules, VNET rules, security alert policies, log files and configurations with new business model." + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "description": "Gets the private link resources for MySQL server.", + "operationId": "PrivateLinkResources_ListByServer", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets private link resources for MySQL.": { + "$ref": "./examples/PrivateLinkResourcesList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/privateLinkResources/{groupName}": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "description": "Gets a private link resource for MySQL server.", + "operationId": "PrivateLinkResources_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "groupName", + "in": "path", + "description": "The name of the private link resource.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Gets a private link resource for MySQL.": { + "$ref": "./examples/PrivateLinkResourcesGet.json" + } + } + } + } + }, + "definitions": { + "PrivateLinkResourceListResult": { + "description": "A list of private link resources", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateLinkResourceProperties": { + "description": "Properties of a private link resource.", + "type": "object", + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "PrivateLinkResource": { + "description": "A private link resource", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "The private link resource group id.", + "readOnly": true + } + } + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response from the Batch service." + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/QueryPerformanceInsights.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/QueryPerformanceInsights.json new file mode 100644 index 000000000000..f8f5aa52d1bc --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/QueryPerformanceInsights.json @@ -0,0 +1,641 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-06-01", + "title": "MySQLManagementClient", + "description": "The Microsoft Azure management API provides create, read, update, and delete functionality for Azure MySQL resources including servers, databases, firewall rules, VNET rules, security alert policies, log files and configurations with new business model." + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/queryTexts/{queryId}": { + "get": { + "tags": [ + "QueryTexts" + ], + "operationId": "QueryTexts_Get", + "x-ms-examples": { + "QueryTextsGet": { + "$ref": "./examples/QueryTextsGet.json" + } + }, + "description": "Retrieve the Query-Store query texts for the queryId.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/QueryIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/QueryText" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/queryTexts": { + "get": { + "tags": [ + "QueryTexts" + ], + "operationId": "QueryTexts_ListByServer", + "x-ms-examples": { + "QueryTextsListByServer": { + "$ref": "./examples/QueryTextsListByServer.json" + } + }, + "description": "Retrieve the Query-Store query texts for specified queryIds.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "queryIds", + "in": "query", + "required": true, + "type": "array", + "collectionFormat": "multi", + "items": { + "type": "string" + }, + "description": "The query identifiers" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/QueryTextsResultList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/topQueryStatistics/{queryStatisticId}": { + "get": { + "tags": [ + "TopQueryStatistics" + ], + "operationId": "TopQueryStatistics_Get", + "x-ms-examples": { + "TopQueryStatisticsGet": { + "$ref": "./examples/TopQueryStatisticsGet.json" + } + }, + "description": "Retrieve the query statistic for specified identifier.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/QueryStatisticIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/QueryStatistic" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/topQueryStatistics": { + "get": { + "tags": [ + "TopQueryStatistics" + ], + "operationId": "TopQueryStatistics_ListByServer", + "x-ms-examples": { + "TopQueryStatisticsListByServer": { + "$ref": "./examples/TopQueryStatisticsListByServer.json" + } + }, + "description": "Retrieve the Query-Store top queries for specified metric and aggregation.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TopQueryStatisticsInput" + }, + "description": "The required parameters for retrieving top query statistics." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TopQueryStatisticsResultList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/waitStatistics/{waitStatisticsId}": { + "get": { + "tags": [ + "WaitStatistics" + ], + "operationId": "WaitStatistics_Get", + "x-ms-examples": { + "WaitStatisticsGet": { + "$ref": "./examples/WaitStatisticsGet.json" + } + }, + "description": "Retrieve wait statistics for specified identifier.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/WaitStatisticsIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WaitStatistic" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/waitStatistics": { + "get": { + "tags": [ + "WaitStatistics" + ], + "operationId": "WaitStatistics_ListByServer", + "x-ms-examples": { + "WaitStatisticsListByServer": { + "$ref": "./examples/WaitStatisticsListByServer.json" + } + }, + "description": "Retrieve wait statistics for specified aggregation window.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/WaitStatisticsInput" + }, + "description": "The required parameters for retrieving wait statistics." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/WaitStatisticsResultList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "QueryTextProperties": { + "properties": { + "queryId": { + "type": "string", + "description": "Query identifier unique to the server." + }, + "queryText": { + "type": "string", + "description": "Query text." + } + }, + "description": "The properties of a query text." + }, + "QueryText": { + "properties": { + "properties": { + "$ref": "#/definitions/QueryTextProperties", + "x-ms-client-flatten": true, + "description": "The properties of a query text." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Represents a Query Text." + }, + "QueryTextsResultList": { + "description": "A list of query texts.", + "type": "object", + "properties": { + "value": { + "description": "The list of query texts.", + "type": "array", + "items": { + "$ref": "#/definitions/QueryText" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "TopQueryStatisticsInputProperties": { + "properties": { + "numberOfTopQueries": { + "type": "integer", + "format": "int32", + "description": "Max number of top queries to return." + }, + "aggregationFunction": { + "type": "string", + "description": "Aggregation function name." + }, + "observedMetric": { + "type": "string", + "description": "Observed metric name." + }, + "observationStartTime": { + "type": "string", + "format": "date-time", + "description": "Observation start time." + }, + "observationEndTime": { + "type": "string", + "format": "date-time", + "description": "Observation end time." + }, + "aggregationWindow": { + "type": "string", + "description": "Aggregation interval type in ISO 8601 format." + } + }, + "required": [ + "numberOfTopQueries", + "aggregationFunction", + "observedMetric", + "observationStartTime", + "observationEndTime", + "aggregationWindow" + ], + "description": "The properties for input to get top query statistics" + }, + "TopQueryStatisticsInput": { + "properties": { + "properties": { + "$ref": "#/definitions/TopQueryStatisticsInputProperties", + "x-ms-client-flatten": true, + "description": "The properties of a wait statistics input." + } + }, + "required": [ + "properties" + ], + "description": "Input to get top query statistics" + }, + "QueryStatisticProperties": { + "properties": { + "queryId": { + "type": "string", + "description": "Database query identifier." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "Observation start time." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "Observation end time." + }, + "aggregationFunction": { + "type": "string", + "description": "Aggregation function name." + }, + "databaseNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of database names." + }, + "queryExecutionCount": { + "type": "integer", + "format": "int64", + "description": "Number of query executions in this time interval." + }, + "metricName": { + "type": "string", + "description": "Metric name." + }, + "metricDisplayName": { + "type": "string", + "description": "Metric display name." + }, + "metricValue": { + "type": "number", + "format": "double", + "description": "Metric value." + }, + "metricValueUnit": { + "type": "string", + "description": "Metric value unit." + } + }, + "description": "The properties of a query statistic." + }, + "QueryStatistic": { + "properties": { + "properties": { + "$ref": "#/definitions/QueryStatisticProperties", + "x-ms-client-flatten": true, + "description": "The properties of a query statistic." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Represents a Query Statistic." + }, + "TopQueryStatisticsResultList": { + "description": "A list of query statistics.", + "type": "object", + "properties": { + "value": { + "description": "The list of top query statistics.", + "type": "array", + "items": { + "$ref": "#/definitions/QueryStatistic" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "WaitStatisticsInputProperties": { + "properties": { + "observationStartTime": { + "type": "string", + "format": "date-time", + "description": "Observation start time." + }, + "observationEndTime": { + "type": "string", + "format": "date-time", + "description": "Observation end time." + }, + "aggregationWindow": { + "type": "string", + "description": "Aggregation interval type in ISO 8601 format." + } + }, + "required": [ + "observationStartTime", + "observationEndTime", + "aggregationWindow" + ], + "description": "The properties for input to get wait statistics" + }, + "WaitStatisticsInput": { + "properties": { + "properties": { + "$ref": "#/definitions/WaitStatisticsInputProperties", + "x-ms-client-flatten": true, + "description": "The properties of a wait statistics input." + } + }, + "required": [ + "properties" + ], + "description": "Input to get wait statistics" + }, + "WaitStatisticProperties": { + "properties": { + "startTime": { + "type": "string", + "format": "date-time", + "description": "Observation start time." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "Observation end time." + }, + "eventName": { + "type": "string", + "description": "Wait event name." + }, + "eventTypeName": { + "type": "string", + "description": "Wait event type name." + }, + "queryId": { + "type": "integer", + "format": "int64", + "description": "Database query identifier." + }, + "databaseName": { + "type": "string", + "description": "Database Name." + }, + "userId": { + "type": "integer", + "format": "int64", + "description": "Database user identifier." + }, + "count": { + "type": "integer", + "format": "int64", + "description": "Wait event count observed in this time interval." + }, + "totalTimeInMs": { + "type": "number", + "format": "double", + "description": "Total time of wait in milliseconds in this time interval." + } + }, + "description": "The properties of a wait statistic." + }, + "WaitStatistic": { + "properties": { + "properties": { + "$ref": "#/definitions/WaitStatisticProperties", + "x-ms-client-flatten": true, + "description": "The properties of a wait statistic." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Represents a Wait Statistic." + }, + "WaitStatisticsResultList": { + "description": "A list of wait statistics.", + "type": "object", + "properties": { + "value": { + "description": "The list of wait statistics.", + "type": "array", + "items": { + "$ref": "#/definitions/WaitStatistic" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "QueryIdParameter": { + "name": "queryId", + "in": "path", + "required": true, + "type": "string", + "description": "The Query-Store query identifier.", + "x-ms-parameter-location": "method" + }, + "QueryStatisticIdParameter": { + "name": "queryStatisticId", + "in": "path", + "required": true, + "type": "string", + "description": "The Query Statistic identifier.", + "x-ms-parameter-location": "method" + }, + "WaitStatisticsIdParameter": { + "name": "waitStatisticsId", + "in": "path", + "required": true, + "type": "string", + "description": "The Wait Statistic identifier.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/AdvisorsGet.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/AdvisorsGet.json new file mode 100644 index 000000000000..5235a0706d4e --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/AdvisorsGet.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2018-06-01", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testResourceGroupName", + "serverName": "testServerName", + "advisorName": "Index" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.DBforMySQL/servers/testServerName/advisors/Index", + "name": "Index", + "type": "Microsoft.DBforMySQL/servers/advisors", + "properties": {} + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/AdvisorsListByServer.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/AdvisorsListByServer.json new file mode 100644 index 000000000000..cf808ec25d66 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/AdvisorsListByServer.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2018-06-01", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testResourceGroupName", + "serverName": "testServerName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.DBforMySQL/servers/testServerName/advisors/Index", + "name": "Index", + "type": "Microsoft.DBforMySQL/servers/advisors", + "properties": {} + } + ] + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/PrivateEndpointConnectionDelete.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/PrivateEndpointConnectionDelete.json new file mode 100644 index 000000000000..89d39b01da4e --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/PrivateEndpointConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2018-06-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/PrivateEndpointConnectionGet.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/PrivateEndpointConnectionGet.json new file mode 100644 index 000000000000..8fe9e347124e --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/PrivateEndpointConnectionGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2018-06-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.DBforMySQL/servers/test-svr/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.DBforMySQL/servers/privateEndpointConnections", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/PrivateEndpointConnectionList.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/PrivateEndpointConnectionList.json new file mode 100644 index 000000000000..573872a22773 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/PrivateEndpointConnectionList.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "api-version": "2018-06-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.DBforMySQL/servers/test-svr/privateEndpointConnections/private-endpoint-connection-name-2", + "name": "private-endpoint-connection-name", + "type": "Microsoft.DBforMySQL/servers/privateEndpointConnections", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.DBforMySQL/servers/test-svr/privateEndpointConnections/private-endpoint-connection-name-2", + "name": "private-endpoint-connection-name-2", + "type": "Microsoft.DBforMySQL/servers/privateEndpointConnections", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name-2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/PrivateEndpointConnectionUpdate.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/PrivateEndpointConnectionUpdate.json new file mode 100644 index 000000000000..69984df634d6 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/PrivateEndpointConnectionUpdate.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2018-06-01", + "parameters": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.DBforMySQL/servers/test-svr/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.DBforMySQL/servers/privateEndpointConnections", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com", + "actionsRequired": "None" + } + } + } + }, + "202": {} + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/PrivateEndpointConnectionUpdateTags.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/PrivateEndpointConnectionUpdateTags.json new file mode 100644 index 000000000000..1cf681ed5f12 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/PrivateEndpointConnectionUpdateTags.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2018-06-01", + "parameters": { + "tags": { + "key1": "val1", + "key2": "val2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.DBforMySQL/servers/test-svr/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.DBforMySQL/servers/privateEndpointConnections", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/PrivateLinkResourcesGet.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/PrivateLinkResourcesGet.json new file mode 100644 index 000000000000..e2a5877d6e3c --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/PrivateLinkResourcesGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "groupName": "plr", + "api-version": "2018-06-01" + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.DBforMySQL/servers/test-svr/privateLinkResources/plr", + "name": "plr", + "type": "Microsoft.DBforMySQL/servers/privateLinkResources", + "properties": { + "groupId": "mysqlServer", + "requiredMembers": [ + "mysqlServer" + ] + } + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/PrivateLinkResourcesList.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/PrivateLinkResourcesList.json new file mode 100644 index 000000000000..3157bf8f0f8f --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/PrivateLinkResourcesList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "api-version": "2018-06-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.DBforMySQL/servers/test-svr/privateLinkResources/plr", + "name": "plr", + "type": "Microsoft.DBforMySQL/servers/privateLinkResources", + "properties": { + "groupId": "mysqlServer", + "requiredMembers": [ + "mysqlServer" + ] + } + } + ] + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/QueryTextsGet.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/QueryTextsGet.json new file mode 100644 index 000000000000..d597415a1f5b --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/QueryTextsGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2018-06-01", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testResourceGroupName", + "serverName": "testServerName", + "queryId": 1 + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.DBforMySQL/servers/testServerName/queryTexts/1", + "name": "1", + "type": "Microsoft.DBforMySQL/servers/queryTexts", + "properties": { + "queryId": "1", + "queryText": "UPDATE `performance_schema`.`setup_instruments` SET `ENABLED` = ? , `TIMED` = ? WHERE NAME = ?" + } + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/QueryTextsListByServer.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/QueryTextsListByServer.json new file mode 100644 index 000000000000..7de6893f0265 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/QueryTextsListByServer.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2018-06-01", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testResourceGroupName", + "serverName": "testServerName", + "queryIds": [ + "1", + "2" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.DBforMySQL/servers/testServerName/queryTexts/1", + "name": "1", + "type": "Microsoft.DBforMySQL/servers/queryTexts", + "properties": { + "queryId": "1", + "queryText": "UPDATE `performance_schema`.`setup_instruments` SET `ENABLED` = ? , `TIMED` = ? WHERE NAME = ?" + } + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.DBforMySQL/servers/testServerName/queryTexts/2", + "name": "2", + "type": "Microsoft.DBforMySQL/servers/queryTexts", + "properties": { + "queryId": "2", + "queryText": "UPDATE `performance_schema`.`setup_instruments` SET `ENABLED` = ? , `TIMED` = ? WHERE NAME LIKE ?" + } + } + ] + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/RecommendedActionSessionCreate.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/RecommendedActionSessionCreate.json new file mode 100644 index 000000000000..7496a76cac2a --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/RecommendedActionSessionCreate.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2018-06-01", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testResourceGroupName", + "serverName": "testServerName", + "advisorName": "Index", + "databaseName": "someDatabaseName" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/RecommendedActionSessionOperationStatus.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/RecommendedActionSessionOperationStatus.json new file mode 100644 index 000000000000..61bd9a019661 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/RecommendedActionSessionOperationStatus.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2018-06-01", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "locationName": "WestUS", + "operationId": "aaaabbbb-cccc-dddd-0000-111122223333" + }, + "responses": { + "200": { + "body": { + "name": "aaaabbbb-cccc-dddd-0000-111122223333", + "startTime": "2019-05-01T17:15:00Z", + "status": "succeeded" + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/RecommendedActionSessionResult.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/RecommendedActionSessionResult.json new file mode 100644 index 000000000000..4ae3b7058305 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/RecommendedActionSessionResult.json @@ -0,0 +1,122 @@ +{ + "parameters": { + "api-version": "2018-06-01", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "locationName": "WestUS", + "operationId": "aaaabbbb-cccc-dddd-0000-111122223333" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.Sql/servers/testServerName/advisors/Index/recommendedActions/Index-1", + "name": "Index-1", + "type": "Microsoft.DBforMySQL/servers/advisors/recommendedActions", + "properties": { + "advisorName": "Index", + "sessionId": "c63c2114-e2a4-4c7a-98c1-85577d1a5d50", + "actionId": 1, + "createdTime": "2019-05-01T23:43:24Z", + "expirationTime": "2019-05-08T23:43:24Z", + "reason": "Column `movies_genres`.`movie_id` appear in Join On clause(s).", + "recommendationType": "Add", + "details": { + "engine": "InnoDB", + "script": "alter table `movies`.`movies_genres` add index `idx_movie_id` (`movie_id`)", + "queryIds": "779", + "indexName": "idx_movie_id", + "indexType": "BTREE", + "tableName": "movies_genres", + "schemaName": "movies", + "indexColumns": "`movies_genres`.`movie_id`", + "parentTableName": "movies_genres" + } + } + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.Sql/servers/testServerName/advisors/Index/recommendedActions/Index-2", + "name": "Index-2", + "type": "Microsoft.DBforMySQL/servers/advisors/recommendedActions", + "properties": { + "advisorName": "Index", + "sessionId": "c63c2114-e2a4-4c7a-98c1-85577d1a5d50", + "actionId": 2, + "createdTime": "2019-05-01T23:43:24Z", + "expirationTime": "2019-05-08T23:43:24Z", + "reason": "Column `movies_genres`.`genre` appear in Group By clause(s).", + "recommendationType": "Add", + "details": { + "engine": "InnoDB", + "script": "alter table `movies`.`movies_genres` add index `idx_genre` (`genre`)", + "queryIds": "779", + "indexName": "idx_genre", + "indexType": "BTREE", + "tableName": "movies_genres", + "schemaName": "movies", + "indexColumns": "`movies_genres`.`genre`", + "parentTableName": "movies_genres" + } + } + } + ] + } + }, + "201": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.Sql/servers/testServerName/advisors/Index/recommendedActions/Index-1", + "name": "Index-1", + "type": "Microsoft.DBforMySQL/servers/advisors/recommendedActions", + "properties": { + "advisorName": "Index", + "sessionId": "c63c2114-e2a4-4c7a-98c1-85577d1a5d50", + "actionId": 1, + "createdTime": "2019-05-01T23:43:24Z", + "expirationTime": "2019-05-08T23:43:24Z", + "reason": "Column `movies_genres`.`movie_id` appear in Join On clause(s).", + "recommendationType": "Add", + "details": { + "engine": "InnoDB", + "script": "alter table `movies`.`movies_genres` add index `idx_movie_id` (`movie_id`)", + "queryIds": "779", + "indexName": "idx_movie_id", + "indexType": "BTREE", + "tableName": "movies_genres", + "schemaName": "movies", + "indexColumns": "`movies_genres`.`movie_id`", + "parentTableName": "movies_genres" + } + } + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.Sql/servers/testServerName/advisors/Index/recommendedActions/Index-2", + "name": "Index-2", + "type": "Microsoft.DBforMySQL/servers/advisors/recommendedActions", + "properties": { + "advisorName": "Index", + "sessionId": "c63c2114-e2a4-4c7a-98c1-85577d1a5d50", + "actionId": 2, + "createdTime": "2019-05-01T23:43:24Z", + "expirationTime": "2019-05-08T23:43:24Z", + "reason": "Column `movies_genres`.`genre` appear in Group By clause(s).", + "recommendationType": "Add", + "details": { + "engine": "InnoDB", + "script": "alter table `movies`.`movies_genres` add index `idx_genre` (`genre`)", + "queryIds": "779", + "indexName": "idx_genre", + "indexType": "BTREE", + "tableName": "movies_genres", + "schemaName": "movies", + "indexColumns": "`movies_genres`.`genre`", + "parentTableName": "movies_genres" + } + } + } + ] + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/RecommendedActionsGet.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/RecommendedActionsGet.json new file mode 100644 index 000000000000..b312602dcc51 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/RecommendedActionsGet.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2018-06-01", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testResourceGroupName", + "serverName": "testServerName", + "advisorName": "Index", + "recommendedActionName": "Index-1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.Sql/servers/testServerName/advisors/Index/recommendedActions/Index-1", + "name": "Index-1", + "type": "Microsoft.DBforMySQL/servers/advisors/recommendedActions", + "properties": { + "advisorName": "Index", + "sessionId": "c63c2114-e2a4-4c7a-98c1-85577d1a5d50", + "actionId": 1, + "createdTime": "2019-05-01T23:43:24Z", + "expirationTime": "2019-05-08T23:43:24Z", + "reason": "Column `movies_genres`.`movie_id` appear in Join On clause(s).", + "recommendationType": "Add", + "details": { + "engine": "InnoDB", + "script": "alter table `movies`.`movies_genres` add index `idx_movie_id` (`movie_id`)", + "queryIds": "779", + "indexName": "idx_movie_id", + "indexType": "BTREE", + "tableName": "movies_genres", + "schemaName": "movies", + "indexColumns": "`movies_genres`.`movie_id`", + "parentTableName": "movies_genres" + } + } + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/RecommendedActionsListByServer.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/RecommendedActionsListByServer.json new file mode 100644 index 000000000000..068304468496 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/RecommendedActionsListByServer.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2018-06-01", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testResourceGroupName", + "serverName": "testServerName", + "advisorName": "Index" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.Sql/servers/testServerName/advisors/Index/recommendedActions/Index-1", + "name": "Index-1", + "type": "Microsoft.DBforMySQL/servers/advisors/recommendedActions", + "properties": { + "advisorName": "Index", + "sessionId": "c63c2114-e2a4-4c7a-98c1-85577d1a5d50", + "actionId": 1, + "createdTime": "2019-05-01T23:43:24Z", + "expirationTime": "2019-05-08T23:43:24Z", + "reason": "Column `movies_genres`.`movie_id` appear in Join On clause(s).", + "recommendationType": "Add", + "details": { + "engine": "InnoDB", + "script": "alter table `movies`.`movies_genres` add index `idx_movie_id` (`movie_id`)", + "queryIds": "779", + "indexName": "idx_movie_id", + "indexType": "BTREE", + "tableName": "movies_genres", + "schemaName": "movies", + "indexColumns": "`movies_genres`.`movie_id`", + "parentTableName": "movies_genres" + } + } + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.Sql/servers/testServerName/advisors/Index/recommendedActions/Index-2", + "name": "Index-2", + "type": "Microsoft.DBforMySQL/servers/advisors/recommendedActions", + "properties": { + "advisorName": "Index", + "sessionId": "c63c2114-e2a4-4c7a-98c1-85577d1a5d50", + "actionId": 2, + "createdTime": "2019-05-01T23:43:24Z", + "expirationTime": "2019-05-08T23:43:24Z", + "reason": "Column `movies_genres`.`genre` appear in Group By clause(s).", + "recommendationType": "Add", + "details": { + "engine": "InnoDB", + "script": "alter table `movies`.`movies_genres` add index `idx_genre` (`genre`)", + "queryIds": "779", + "indexName": "idx_genre", + "indexType": "BTREE", + "tableName": "movies_genres", + "schemaName": "movies", + "indexColumns": "`movies_genres`.`genre`", + "parentTableName": "movies_genres" + } + } + } + ] + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/TopQueryStatisticsGet.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/TopQueryStatisticsGet.json new file mode 100644 index 000000000000..b7cc865e9450 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/TopQueryStatisticsGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2018-06-01", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testResourceGroupName", + "serverName": "testServerName", + "queryStatisticId": "66-636923268000000000-636923277000000000-avg-duration" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.DBforMySQL/servers/testServerName/queryStatistic/66-636923268000000000-636923277000000000-avg-duration", + "name": "66-636923268000000000-636923277000000000-avg-duration", + "type": "Microsoft.DBforMySQL/servers/queryStatistics", + "properties": { + "aggregationFunction": "avg", + "databaseNames": [ + "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.DBforMySQL/servers/testServerName/databases/mysql" + ], + "startTime": "2019-05-01T17:00:00Z", + "endTime": "2019-05-01T17:15:00Z", + "metricDisplayName": "Query duration", + "metricName": "duration", + "metricValue": 123.301446136, + "metricValueUnit": "milliseconds", + "queryExecutionCount": 1, + "queryId": "66" + } + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/TopQueryStatisticsListByServer.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/TopQueryStatisticsListByServer.json new file mode 100644 index 000000000000..ba0ece08fde5 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/TopQueryStatisticsListByServer.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2018-06-01", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testResourceGroupName", + "serverName": "testServerName", + "parameters": { + "properties": { + "numberOfTopQueries": 5, + "aggregationFunction": "avg", + "observedMetric": "duration", + "observationStartTime": "2019-05-01T20:00:00.000Z", + "observationEndTime": "2019-05-07T20:00:00.000Z", + "aggregationWindow": "PT15M" + } + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.DBforMySQL/servers/testServerName/queryStatistic/66-636923268000000000-636923277000000000-avg-duration", + "name": "66-636923268000000000-636923277000000000-avg-duration", + "type": "Microsoft.DBforMySQL/servers/queryStatistics", + "properties": { + "aggregationFunction": "avg", + "databaseNames": [ + "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.DBforMySQL/servers/testServerName/databases/mysql" + ], + "startTime": "2019-05-01T17:00:00Z", + "endTime": "2019-05-01T17:15:00Z", + "metricDisplayName": "Query duration", + "metricName": "duration", + "metricValue": 123.301446136, + "metricValueUnit": "milliseconds", + "queryExecutionCount": 1, + "queryId": "66" + } + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.DBforMySQL/servers/testServerName/queryStatistic/66-636924483000000000-636924492000000000-avg-duration", + "name": "66-636924483000000000-636924492000000000-avg-duration", + "type": "Microsoft.DBforMySQL/servers/queryStatistics", + "properties": { + "aggregationFunction": "avg", + "databaseNames": [ + "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.DBforMySQL/servers/testServerName/databases/mysql" + ], + "startTime": "2019-05-03T02:45:00Z", + "endTime": "2019-05-03T03:00:00Z", + "metricDisplayName": "Query duration", + "metricName": "duration", + "metricValue": 1712.301446136, + "metricValueUnit": "milliseconds", + "queryExecutionCount": 1, + "queryId": "66" + } + } + ] + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/WaitStatisticsGet.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/WaitStatisticsGet.json new file mode 100644 index 000000000000..f6bd5ff40ed1 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/WaitStatisticsGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2018-06-01", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testResourceGroupName", + "serverName": "testServerName", + "waitStatisticsId": "636927606000000000-636927615000000000-send-wait/io/socket/sql/client_connection-2--0" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.DBforMySQL/servers/testServerName/waitStatistics/636927606000000000-636927615000000000-send-wait/io/socket/sql/client_connection-2--0", + "name": "636927606000000000-636927615000000000-send-wait/io/socket/sql/client_connection-2--0", + "type": "Microsoft.DBforMySQL/servers/waitStatistics", + "properties": { + "startTime": "2019-05-06T17:30:00Z", + "endTime": "2019-05-06T17:45:00Z", + "eventName": "wait/io/socket/sql/client_connection", + "eventTypeName": "send", + "queryId": 2, + "databaseName": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.DBforMySQL/servers/testServerName/databases/mysql", + "userId": 0, + "count": 3, + "totalTimeInMs": 12.345 + } + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/WaitStatisticsListByServer.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/WaitStatisticsListByServer.json new file mode 100644 index 000000000000..14565f9f0586 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2018-06-01/examples/WaitStatisticsListByServer.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2018-06-01", + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testResourceGroupName", + "serverName": "testServerName", + "parameters": { + "properties": { + "observationStartTime": "2019-05-01T20:00:00.000Z", + "observationEndTime": "2019-05-07T20:00:00.000Z", + "aggregationWindow": "PT15M" + } + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.DBforMySQL/servers/testServerName/waitStatistics/636927606000000000-636927615000000000-send-wait/io/socket/sql/client_connection-2--0", + "name": "636927606000000000-636927615000000000-send-wait/io/socket/sql/client_connection-2--0", + "type": "Microsoft.DBforMySQL/servers/waitStatistics", + "properties": { + "startTime": "2019-05-06T17:30:00Z", + "endTime": "2019-05-06T17:45:00Z", + "eventName": "wait/io/socket/sql/client_connection", + "eventTypeName": "send", + "queryId": 2, + "databaseName": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testResourceGroupName/providers/Microsoft.DBforMySQL/servers/testServerName/databases/mysql", + "userId": 0, + "count": 2, + "totalTimeInMs": 12.345 + } + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/hyshim-test/providers/Microsoft.DBforMySQL/servers/hyshim-wait-stats-fix/waitStatistics/636927606000000000-636927615000000000-lock-wait/synch/mutex/mysys/THR_LOCK::mutex-2--0", + "name": "636927606000000000-636927615000000000-lock-wait/synch/mutex/mysys/THR_LOCK::mutex-2--0", + "type": "Microsoft.DBforMySQL/servers/waitStatistics", + "properties": { + "startTime": "2019-05-06T17:30:00Z", + "endTime": "2019-05-06T17:45:00Z", + "eventName": "wait/synch/mutex/mysys/THR_LOCK::mutex", + "eventTypeName": "lock", + "queryId": 2, + "databaseName": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/hyshim-test/providers/Microsoft.DBforMySQL/servers/hyshim-wait-stats-fix/databases/", + "userId": 0, + "count": 4, + "totalTimeInMs": 56.789 + } + } + ] + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/DataEncryptionKeys.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/DataEncryptionKeys.json new file mode 100644 index 000000000000..19611e41a08f --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/DataEncryptionKeys.json @@ -0,0 +1,330 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-01-01", + "title": "MySQLManagementClient", + "description": "The Microsoft Azure management API provides create, read, update, and delete functionality for Azure MySQL resources including servers, databases, firewall rules, VNET rules, security alert policies, log files, encryption keys, active directory administrator and configurations." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/keys": { + "get": { + "tags": [ + "ServerKeys" + ], + "description": "Gets a list of Server keys.", + "operationId": "ServerKeys_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of MySQL Server keys.", + "schema": { + "$ref": "#/definitions/ServerKeyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List the keys for a MySQL Server.": { + "$ref": "./examples/ServerKeyList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforMySQL/servers/{serverName}/keys/{keyName}": { + "get": { + "tags": [ + "ServerKeys" + ], + "description": "Gets a MySQL Server key.", + "operationId": "ServerKeys_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the MySQL Server key to be retrieved.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified MySQL Server key.", + "schema": { + "$ref": "#/definitions/ServerKey" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get the MySQL Server key": { + "$ref": "./examples/ServerKeyGet.json" + } + } + }, + "put": { + "tags": [ + "ServerKeys" + ], + "description": "Creates or updates a MySQL Server key.", + "operationId": "ServerKeys_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the MySQL Server key to be operated on (updated or created).", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested MySQL Server key resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/ServerKey" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the MySQL Server key.", + "schema": { + "$ref": "#/definitions/ServerKey" + } + }, + "202": { + "description": "Operation in progress", + "schema": { + "$ref": "#/definitions/ServerKey" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates or updates a MySQL Server key": { + "$ref": "./examples/ServerKeyCreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "ServerKeys" + ], + "description": "Deletes the MySQL Server key with the given name.", + "operationId": "ServerKeys_Delete", + "parameters": [ + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the MySQL Server key to be deleted.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the MySQL Server key." + }, + "202": { + "description": "Operation in progress" + }, + "204": { + "description": "The specified MySQL Server key does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete the MySQL Server key": { + "$ref": "./examples/ServerKeyDelete.json" + } + } + } + } + }, + "definitions": { + "ServerKeyListResult": { + "description": "A list of MySQL Server keys.", + "type": "object", + "properties": { + "value": { + "description": "A list of MySQL Server keys.", + "type": "array", + "items": { + "$ref": "#/definitions/ServerKey" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ServerKeyProperties": { + "description": "Properties for a key execution.", + "required": [ + "serverKeyType" + ], + "type": "object", + "properties": { + "serverKeyType": { + "description": "The key type like 'AzureKeyVault'.", + "enum": [ + "AzureKeyVault" + ], + "type": "string", + "x-ms-enum": { + "name": "ServerKeyType", + "modelAsString": true + } + }, + "uri": { + "description": "The URI of the key.", + "type": "string" + }, + "creationDate": { + "format": "date-time", + "description": "The key creation date.", + "type": "string", + "readOnly": true + } + } + }, + "ServerKey": { + "description": "A MySQL Server key.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "kind": { + "description": "Kind of encryption protector used to protect the key.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/ServerKeyProperties", + "description": "Properties of the ServerKey Resource.", + "x-ms-client-flatten": true + } + } + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response from the Batch service." + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the server.", + "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/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/examples/ServerKeyCreateOrUpdate.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/examples/ServerKeyCreateOrUpdate.json new file mode 100644 index 000000000000..1738018661a5 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/examples/ServerKeyCreateOrUpdate.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "testserver", + "keyName": "someVault_someKey_01234567890123456789012345678901", + "api-version": "2020-01-01", + "parameters": { + "properties": { + "serverKeyType": "AzureKeyVault", + "uri": "https://someVault.vault.azure.net/keys/someKey/01234567890123456789012345678901" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/testserver/keys/someVault_someKey_01234567890123456789012345678901", + "name": "omeVault_someKey_01234567890123456789012345678901", + "type": "Microsoft.DBforMySQL/servers/keys", + "kind": "azurekeyvault", + "properties": { + "serverKeyType": "AzureKeyVault", + "uri": "https://someVault.vault.azure.net/keys/someKey/01234567890123456789012345678901", + "creationDate": "2017-05-01T00:00:00.0Z" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/testserver/keys/someVault_someKey_01234567890123456789012345678901", + "name": "omeVault_someKey_01234567890123456789012345678901", + "type": "Microsoft.DBforMySQL/servers/keys", + "kind": "azurekeyvault", + "properties": { + "serverKeyType": "AzureKeyVault", + "uri": "https://someVault.vault.azure.net/keys/someKey/01234567890123456789012345678901", + "creationDate": "2017-05-01T00:00:00.0Z" + } + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/examples/ServerKeyDelete.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/examples/ServerKeyDelete.json new file mode 100644 index 000000000000..fea5fcac6929 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/examples/ServerKeyDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "testserver", + "keyName": "someVault_someKey_01234567890123456789012345678901", + "api-version": "2020-01-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/examples/ServerKeyGet.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/examples/ServerKeyGet.json new file mode 100644 index 000000000000..6c53c35e4e72 --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/examples/ServerKeyGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "testserver", + "keyName": "someVault_someKey_01234567890123456789012345678901", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/testserver/keys/someVault_someKey_01234567890123456789012345678901", + "name": "someVault_someKey_01234567890123456789012345678901", + "type": "Microsoft.DBforMySQL/servers/keys", + "kind": "azurekeyvault", + "properties": { + "serverKeyType": "AzureKeyVault", + "uri": "https://someVault.vault.azure.net/keys/someKey/01234567890123456789012345678901", + "creationDate": "2019-12-01T00:00:00.0Z" + } + } + } + } +} diff --git a/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/examples/ServerKeyList.json b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/examples/ServerKeyList.json new file mode 100644 index 000000000000..0749b7db392e --- /dev/null +++ b/specification/mysql/resource-manager/Microsoft.DBforMySQL/stable/2020-01-01/examples/ServerKeyList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "testserver", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforMySQL/servers/testserver/keys/someVault_someKey_01234567890123456789012345678901", + "name": "someVault_someKey_01234567890123456789012345678901", + "type": "Microsoft.DBforMySQL/servers/keys", + "kind": "azurekeyvault", + "properties": { + "serverKeyType": "AzureKeyVault", + "uri": "https://someVault.vault.azure.net/keys/someKey/01234567890123456789012345678901", + "creationDate": "2019-12-01T00:00:00.0Z" + } + } + ] + } + } + } +} diff --git a/specification/mysql/resource-manager/readme.cli.md b/specification/mysql/resource-manager/readme.cli.md new file mode 100644 index 000000000000..18620233c14b --- /dev/null +++ b/specification/mysql/resource-manager/readme.cli.md @@ -0,0 +1,44 @@ +## CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +cli: + cli-name: mysql + package-name: azure-mgmt-rdbms-mysql + namespace: azure.mgmt.rdbms.mysql + test-scenario: + - name: Create a new server + - name: Create a server as a geo restore + - name: Create a replica server + - name: Create a database as a point in time restore + - name: DatabaseCreate + - name: FirewallRuleCreate + - name: ConfigurationCreateOrUpdate + - name: Create or update a virtual network rule + - name: Update a server's threat detection policy with all parameters + - name: Update a server's threat detection policy with minimal parameters + - name: Get a server's threat detection policy + - name: Gets a virtual network rule + - name: ConfigurationGet + - name: FirewallRuleGet + - name: DatabaseGet + - name: List virtual network rules + - name: ConfigurationList + - name: FirewallRuleList + - name: DatabaseList + - name: LogFileList + - name: ReplicasListByServer + - name: ServerGet + - name: PerformanceTiersList + - name: ServerListByResourceGroup + - name: ServerList + - name: OperationList + - name: ServerRestart + - name: ServerUpdate + - name: NameAvailability + - name: Delete a virtual network rule + - name: FirewallRuleDelete + - name: DatabaseDelete + - name: ServerDelete +``` \ No newline at end of file diff --git a/specification/mysql/resource-manager/readme.md b/specification/mysql/resource-manager/readme.md index 5398bb2d66a8..eff821babee7 100644 --- a/specification/mysql/resource-manager/readme.md +++ b/specification/mysql/resource-manager/readme.md @@ -2,7 +2,7 @@ > see https://aka.ms/autorest -This is the AutoRest configuration file for Sql. +This is the AutoRest configuration file for MySql. @@ -22,11 +22,13 @@ To see additional help and options, run: ### Basic Information -These are the global settings for the Sql API. +These are the global settings for the MySql API. ``` yaml +title: MySQLManagementClient +description: The Microsoft Azure management API provides create, read, update, and delete functionality for Azure MySQL resources including servers, databases, firewall rules, VNET rules, log files and configurations with new business model. openapi-type: arm -tag: package-2017-12-01 +tag: package-2020-01-01 ``` @@ -61,16 +63,44 @@ input-file: - Microsoft.DBforMySQL/preview/2018-06-01-privatepreview/PrivateLinkResources.json ``` + +### Tag: package-2018-06-01 + +These settings apply only when `--tag=package-2018-06-01` is specified on the command line. + +``` yaml $(tag) == 'package-2018-06-01' +input-file: +- Microsoft.DBforMySQL/stable/2017-12-01/mysql.json +- Microsoft.DBforMySQL/stable/2018-06-01/QueryPerformanceInsights.json +- Microsoft.DBforMySQL/stable/2018-06-01/PerformanceRecommendations.json +- Microsoft.DBforMySQL/stable/2018-06-01/PrivateEndpointConnections.json +- Microsoft.DBforMySQL/stable/2018-06-01/PrivateLinkResources.json +``` + + ### Tag: package-2020-01-01-privatepreview These settings apply only when `--tag=package-2020-01-01-privatepreview` is specified on the command line. - ``` yaml $(tag) == 'package-2020-01-01-privatepreview' input-file: - Microsoft.DBforMySQL/preview/2020-01-01-privatepreview/DataEncryptionKeys.json ``` +### Tag: package-2020-01-01 + +These settings apply only when `--tag=package-2020-01-01` is specified on the command line. + +``` yaml $(tag) == 'package-2020-01-01' +input-file: +- Microsoft.DBforMySQL/stable/2017-12-01/mysql.json +- Microsoft.DBforMySQL/stable/2018-06-01/QueryPerformanceInsights.json +- Microsoft.DBforMySQL/stable/2018-06-01/PerformanceRecommendations.json +- Microsoft.DBforMySQL/stable/2018-06-01/PrivateEndpointConnections.json +- Microsoft.DBforMySQL/stable/2018-06-01/PrivateLinkResources.json +- Microsoft.DBforMySQL/stable/2020-01-01/DataEncryptionKeys.json +``` + --- # Code Generation @@ -141,7 +171,7 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.java.md](./readme.java.md) -## Multi-API/Profile support for AutoRest v3 generators +## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. @@ -158,15 +188,19 @@ input-file: - $(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 ``` -If there are files that should not be in the `all-api-versions` set, +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: +#exclude-file: # - $(this-folder)/Microsoft.Example/stable/2010-01-01/somefile.json ``` - diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-05-01/netapp.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-05-01/netapp.json index 245c83d88b3c..954aab4737a0 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-05-01/netapp.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-05-01/netapp.json @@ -1693,9 +1693,10 @@ }, "mountTargets": { "title": "mountTargets", + "type": "array", "description": "List of mount targets", "items": { - "$ref": "#/definitions/mountTargetList" + "$ref": "#/definitions/mountTargetProperties" } } } diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-06-01/netapp.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-06-01/netapp.json index 7c5708072949..99950385030e 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-06-01/netapp.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-06-01/netapp.json @@ -1913,9 +1913,10 @@ }, "mountTargets": { "title": "mountTargets", + "type": "array", "description": "List of mount targets", "items": { - "$ref": "#/definitions/mountTargetList" + "$ref": "#/definitions/mountTargetProperties" } } } diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/netapp.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/netapp.json index 73384bb727a5..9c7c055db2ff 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/netapp.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-07-01/netapp.json @@ -1912,9 +1912,10 @@ }, "mountTargets": { "title": "mountTargets", + "type": "array", "description": "List of mount targets", "items": { - "$ref": "#/definitions/mountTargetList" + "$ref": "#/definitions/mountTargetProperties" } } } diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-08-01/netapp.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-08-01/netapp.json index f46460062840..a3a8d6aa40a1 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-08-01/netapp.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-08-01/netapp.json @@ -1915,9 +1915,10 @@ }, "mountTargets": { "title": "mountTargets", + "type": "array", "description": "List of mount targets", "items": { - "$ref": "#/definitions/mountTargetList" + "$ref": "#/definitions/mountTargetProperties" } }, "volumeType": { diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-10-01/netapp.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-10-01/netapp.json index f5dd01e2890e..6a0529befb33 100644 --- a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-10-01/netapp.json +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-10-01/netapp.json @@ -2148,9 +2148,10 @@ }, "mountTargets": { "title": "mountTargets", + "type": "array", "description": "List of mount targets", "items": { - "$ref": "#/definitions/mountTargetList" + "$ref": "#/definitions/mountTargetProperties" } }, "volumeType": { diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Accounts_CreateOrUpdate.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Accounts_CreateOrUpdate.json new file mode 100644 index 000000000000..236d4ba5ba8b --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Accounts_CreateOrUpdate.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "api-version": "2019-11-01", + "body": { + "location": "eastus", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1", + "name": "account1", + "type": "Microsoft.NetApp/netAppAccounts", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1", + "name": "account1", + "type": "Microsoft.NetApp/netAppAccounts", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded" + } + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Accounts_Delete.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Accounts_Delete.json new file mode 100644 index 000000000000..b38fe188c1aa --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Accounts_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "api-version": "2019-11-01" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Accounts_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Accounts_Get.json new file mode 100644 index 000000000000..d4a13d22195b --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Accounts_Get.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "api-version": "2019-11-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1", + "name": "account1", + "type": "Microsoft.NetApp/netAppAccounts", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Accounts_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Accounts_List.json new file mode 100644 index 000000000000..057d3ee7b2f5 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Accounts_List.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "api-version": "2019-11-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1", + "name": "account1", + "type": "Microsoft.NetApp/netAppAccounts", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Accounts_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Accounts_Update.json new file mode 100644 index 000000000000..ab51f3afa256 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Accounts_Update.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "api-version": "2019-11-01", + "body": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1", + "name": "account1", + "type": "Microsoft.NetApp/netAppAccounts", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded" + } + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/CheckFilePathAvailability.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/CheckFilePathAvailability.json new file mode 100644 index 000000000000..f0265c18c74f --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/CheckFilePathAvailability.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "location": "eastus", + "api-version": "2019-11-01", + "body": { + "name": "my-exact-filepth", + "type": "netAppAccount/capacityPools/volume", + "resourceGroup": "myRG" + } + }, + "responses": { + "200": { + "body": { + "isAvailable": true + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/CheckNameAvailability.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/CheckNameAvailability.json new file mode 100644 index 000000000000..cea1564274f8 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/CheckNameAvailability.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "location": "eastus", + "api-version": "2019-11-01", + "body": { + "name": "accName", + "type": "netAppAccount", + "resourceGroup": "myRG" + } + }, + "responses": { + "200": { + "body": { + "isAvailable": true + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Pools_CreateOrUpdate.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Pools_CreateOrUpdate.json new file mode 100644 index 000000000000..66805bd98f52 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Pools_CreateOrUpdate.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "api-version": "2019-11-01", + "body": { + "location": "eastus", + "properties": { + "size": 4398046511104, + "serviceLevel": "Premium" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1", + "name": "account1/pool1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "poolId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "serviceLevel": "Premium", + "size": 4398046511104 + } + } + }, + "201": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1", + "name": "account1/pool1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "poolId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "serviceLevel": "Premium", + "size": 4398046511104 + } + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Pools_Delete.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Pools_Delete.json new file mode 100644 index 000000000000..3a0b6db1709d --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Pools_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "api-version": "2019-11-01" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Pools_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Pools_Get.json new file mode 100644 index 000000000000..12b3e7bbb0de --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Pools_Get.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "api-version": "2019-11-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1", + "name": "account1/pool1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "poolId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "serviceLevel": "Premium", + "size": 4398046511104 + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Pools_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Pools_List.json new file mode 100644 index 000000000000..d7b0ce2090ce --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Pools_List.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "api-version": "2019-11-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1", + "name": "account1/pool1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "poolId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "serviceLevel": "Premium", + "size": 4398046511104 + } + } + ] + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Pools_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Pools_Update.json new file mode 100644 index 000000000000..240fd4a78fc4 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Pools_Update.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "api-version": "2019-11-01", + "body": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1", + "name": "account1/pool1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "poolId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "serviceLevel": "Premium", + "size": 4398046511104 + } + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Snapshots_Create.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Snapshots_Create.json new file mode 100644 index 000000000000..bb84638af201 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Snapshots_Create.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "snapshotName": "snapshot1", + "api-version": "2019-11-01", + "body": { + "location": "eastus" + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1/snapshots/snapshot1", + "name": "account1/pool1/volume1/snapshot1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/snapshots", + "location": "eastus", + "properties": { + "snapshotId": "9760acf5-4638-11e7-9bdb-020073ca3333", + "fileSystemId": "9760acf5-4638-11e7-9bdb-020073ca3333", + "created": "2017-08-15T13:23:33Z", + "provisioningState": "Succeeded" + } + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Snapshots_Delete.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Snapshots_Delete.json new file mode 100644 index 000000000000..0a705dd00b04 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Snapshots_Delete.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "snapshotName": "snapshot1", + "api-version": "2019-11-01" + }, + "responses": { + "204": {}, + "202": {}, + "200": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Snapshots_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Snapshots_Get.json new file mode 100644 index 000000000000..02afedbbe54d --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Snapshots_Get.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "snapshotName": "snapshot1", + "api-version": "2019-11-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1/snapshots/snapshot1", + "name": "account1/pool1/volume1/snapshot1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/snapshots", + "location": "eastus", + "properties": { + "snapshotId": "9760acf5-4638-11e7-9bdb-020073ca3333", + "fileSystemId": "9760acf5-4638-11e7-9bdb-020073ca3333", + "created": "2017-08-15T13:23:33Z", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Snapshots_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Snapshots_List.json new file mode 100644 index 000000000000..eb39cca354fa --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Snapshots_List.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2019-11-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1/snapshots/snapshot1", + "name": "account1/pool1/volume1/snapshot1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/snapshots", + "location": "eastus", + "properties": { + "snapshotId": "9760acf5-4638-11e7-9bdb-020073ca3333", + "fileSystemId": "9760acf5-4638-11e7-9bdb-020073ca3333", + "created": "2017-08-15T13:23:33Z", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Snapshots_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Snapshots_Update.json new file mode 100644 index 000000000000..d6fab2f5d8ab --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Snapshots_Update.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "snapshotName": "snapshot1", + "api-version": "2019-11-01", + "body": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1/snapshots/snapshot1", + "name": "account1/pool1/volume1/snapshot1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/snapshots", + "location": "eastus", + "properties": { + "snapshotId": "9760acf5-4638-11e7-9bdb-020073ca3333", + "fileSystemId": "9760acf5-4638-11e7-9bdb-020073ca3333", + "created": "2017-08-15T13:23:33Z", + "provisioningState": "Succeeded" + } + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_AuthorizeReplication.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_AuthorizeReplication.json new file mode 100644 index 000000000000..7401b0147077 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_AuthorizeReplication.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2019-11-01", + "body": { + "remoteVolumeResourceId": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRemoteRG/providers/Microsoft.NetApp/netAppAccounts/remoteAccount1/capacityPools/remotePool1/volumes/remoteVolume1" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_BreakReplication.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_BreakReplication.json new file mode 100644 index 000000000000..d2f47ffc34e2 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_BreakReplication.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2019-11-01", + "body": { + "location": "eastus", + "properties": {} + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_CreateOrUpdate.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_CreateOrUpdate.json new file mode 100644 index 000000000000..4477cbaa7ad1 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_CreateOrUpdate.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2019-11-01", + "body": { + "location": "eastus", + "properties": { + "creationToken": "my-unique-file-path", + "serviceLevel": "Premium", + "subnetId": "/subscriptions/9760acf5-4638-11e7-9bdb-020073ca7778/resourceGroups/myRP/providers/Microsoft.Network/virtualNetworks/testvnet3/subnets/testsubnet3", + "usageThreshold": 107374182400 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1", + "location": "eastus", + "name": "account1/pool1/volume1", + "properties": { + "fileSystemId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "creationToken": "some-amazing-filepath", + "usageThreshold": 107374182400, + "serviceLevel": "Premium", + "provisioningState": "Succeeded", + "subnetId": "/subscriptions/9760acf5-4638-11e7-9bdb-020073ca7778/resourceGroups/myRP/providers/Microsoft.Network/virtualNetworks/testvnet3/subnets/testsubnet3" + }, + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes" + } + }, + "201": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1", + "location": "eastus", + "name": "account1/pool1/volume1", + "properties": { + "fileSystemId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "creationToken": "some-amazing-filepath", + "usageThreshold": 107374182400, + "serviceLevel": "Premium", + "provisioningState": "Succeeded", + "subnetId": "/subscriptions/9760acf5-4638-11e7-9bdb-020073ca7778/resourceGroups/myRP/providers/Microsoft.Network/virtualNetworks/testvnet3/subnets/testsubnet3" + }, + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes" + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_Delete.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_Delete.json new file mode 100644 index 000000000000..7af2a9d9c2bf --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2019-11-01" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_DeleteReplication.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_DeleteReplication.json new file mode 100644 index 000000000000..d2f47ffc34e2 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_DeleteReplication.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2019-11-01", + "body": { + "location": "eastus", + "properties": {} + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_Get.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_Get.json new file mode 100644 index 000000000000..c4439aa8643e --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_Get.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2019-11-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1", + "name": "account1/pool1/volume1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes", + "location": "eastus", + "properties": { + "fileSystemId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "creationToken": "some-amazing-filepath", + "usageThreshold": 107374182400, + "serviceLevel": "Premium", + "provisioningState": "Succeeded", + "subnetId": "/subscriptions/9760acf5-4638-11e7-9bdb-020073ca7778/resourceGroups/myRP/providers/Microsoft.Network/virtualNetworks/testvnet3/subnets/testsubnet3" + } + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_List.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_List.json new file mode 100644 index 000000000000..150d2ef37d26 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_List.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "api-version": "2019-11-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1", + "name": "account1/pool1/volume1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes", + "location": "eastus", + "properties": { + "fileSystemId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "creationToken": "some-amazing-filepath", + "usageThreshold": 107374182400, + "serviceLevel": "Premium", + "provisioningState": "Succeeded", + "subnetId": "/subscriptions/9760acf5-4638-11e7-9bdb-020073ca7778/resourceGroups/myRP/providers/Microsoft.Network/virtualNetworks/testvnet3/subnets/testsubnet3" + } + } + ] + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_ReplicationStatus.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_ReplicationStatus.json new file mode 100644 index 000000000000..f10e37388c49 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_ReplicationStatus.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2019-11-01", + "body": { + "location": "eastus", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "healthy": true, + "relationshipStatus": "Idle", + "mirrorState": "Mirrored", + "totalProgress": "1048576", + "errorMessage": "" + } + } + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_ResyncReplication.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_ResyncReplication.json new file mode 100644 index 000000000000..d2f47ffc34e2 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_ResyncReplication.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2019-11-01", + "body": { + "location": "eastus", + "properties": {} + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_Revert.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_Revert.json new file mode 100644 index 000000000000..efcd446da545 --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_Revert.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2019-11-01", + "body": { + "snapshotId": "/subscriptions/D633CC2E-722B-4AE1-B636-BBD9E4C60ED9/resourceGroups/myRG/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1/snapshots/snapshot1" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_Update.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_Update.json new file mode 100644 index 000000000000..40b4490cdb9e --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/examples/Volumes_Update.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "D633CC2E-722B-4AE1-B636-BBD9E4C60ED9", + "resourceGroupName": "myRG", + "accountName": "account1", + "poolName": "pool1", + "volumeName": "volume1", + "api-version": "2019-11-01", + "body": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/volume1", + "name": "account1/pool1/volume1", + "type": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes", + "location": "eastus", + "properties": { + "fileSystemId": "9760acf5-4638-11e7-9bdb-020073ca7778", + "creationToken": "some-amazing-filepath", + "usageThreshold": 107374182400, + "serviceLevel": "Premium", + "provisioningState": "Succeeded", + "subnetId": "/subscriptions/9760acf5-4638-11e7-9bdb-020073ca7778/resourceGroups/myRP/providers/Microsoft.Network/virtualNetworks/testvnet3/subnets/testsubnet3" + } + } + }, + "202": {} + } +} diff --git a/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/netapp.json b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/netapp.json new file mode 100644 index 000000000000..1e8ef78aefcd --- /dev/null +++ b/specification/netapp/resource-manager/Microsoft.NetApp/stable/2019-11-01/netapp.json @@ -0,0 +1,2740 @@ +{ + "swagger": "2.0", + "info": { + "title": "Microsoft NetApp", + "description": "Microsoft NetApp Azure Resource Provider specification", + "version": "2019-11-01", + "x-ms-code-generation-settings": { + "name": "AzureNetAppFilesManagementClient" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "schemes": [ + "https" + ], + "host": "management.azure.com", + "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": { + "/providers/Microsoft.NetApp/operations": { + "get": { + "tags": [ + "Operations" + ], + "summary": "Describes the Resource Provider", + "description": "Lists all of the available Microsoft.NetApp Rest API operations", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-pageable": { + "nextLinkName": null + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.NetApp/locations/{location}/checkNameAvailability": { + "post": { + "tags": [ + "NetApp Resource" + ], + "summary": "Check resource name availability", + "description": "Check if a resource name is available.", + "operationId": "NetAppResource_CheckNameAvailability", + "parameters": [ + { + "name": "body", + "in": "body", + "description": "Name availability request.", + "required": true, + "schema": { + "$ref": "#/definitions/ResourceNameAvailabilityRequest" + }, + "x-ms-client-flatten": true + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/location" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceNameAvailability" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "CheckNameAvailability": { + "$ref": "examples/CheckNameAvailability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.NetApp/locations/{location}/checkFilePathAvailability": { + "post": { + "tags": [ + "NetApp Resource" + ], + "summary": "Check file path availability", + "description": "Check if a file path is available.", + "operationId": "NetAppResource_CheckFilePathAvailability", + "parameters": [ + { + "name": "body", + "in": "body", + "description": "File path availability request.", + "required": true, + "schema": { + "$ref": "#/definitions/ResourceNameAvailabilityRequest" + }, + "x-ms-client-flatten": true + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/location" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceNameAvailability" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "CheckFilePathAvailability": { + "$ref": "examples/CheckFilePathAvailability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts": { + "get": { + "summary": "Describe all NetApp Accounts in a resource group", + "description": "List and describe all NetApp accounts in the resource group.", + "tags": [ + "NetApp Accounts" + ], + "operationId": "Accounts_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-pageable": { + "nextLinkName": null + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/netAppAccountList" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Accounts_List": { + "$ref": "examples/Accounts_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}": { + "get": { + "summary": "Describe a NetApp Account", + "description": "Get the NetApp account", + "tags": [ + "NetApp Accounts" + ], + "operationId": "Accounts_Get", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/netAppAccount" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Accounts_Get": { + "$ref": "examples/Accounts_Get.json" + } + } + }, + "put": { + "tags": [ + "NetApp Accounts" + ], + "operationId": "Accounts_CreateOrUpdate", + "summary": "Create or update a NetApp account", + "description": "Create or update the specified NetApp account within the resource group", + "parameters": [ + { + "name": "body", + "description": "NetApp Account object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/netAppAccount" + } + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - account updated", + "schema": { + "$ref": "#/definitions/netAppAccount" + } + }, + "201": { + "description": "Account created", + "schema": { + "$ref": "#/definitions/netAppAccount" + } + }, + "202": { + "description": "Accepted -- Create, update or delete request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Accounts_CreateOrUpdate": { + "$ref": "examples/Accounts_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "NetApp Accounts" + ], + "operationId": "Accounts_Delete", + "summary": "Delete a NetApp account", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "description": "Delete the specified NetApp account", + "responses": { + "202": { + "description": "Accepted -- Create, update or delete request accepted; operation will complete asynchronously" + }, + "204": { + "description": "NoContent -- Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Accounts_Delete": { + "$ref": "examples/Accounts_Delete.json" + } + } + }, + "patch": { + "tags": [ + "NetApp Accounts" + ], + "operationId": "Accounts_Update", + "summary": "Update a NetApp account", + "description": "Patch the specified NetApp account", + "parameters": [ + { + "name": "body", + "description": "NetApp Account object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/netAppAccountPatch" + } + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - account updated", + "schema": { + "$ref": "#/definitions/netAppAccount" + } + }, + "202": { + "description": "Accepted -- Create, update or delete request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Accounts_Update": { + "$ref": "examples/Accounts_Update.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools": { + "get": { + "summary": "Describe all Capacity Pools", + "description": "List all capacity pools in the NetApp Account", + "tags": [ + "Capacity Pools" + ], + "operationId": "Pools_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-pageable": { + "nextLinkName": null + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/capacityPoolList" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Pools_List": { + "$ref": "examples/Pools_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}": { + "get": { + "summary": "Describe a Capacity Pool", + "description": "Get details of the specified capacity pool", + "tags": [ + "Capacity Pools" + ], + "operationId": "Pools_Get", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/capacityPool" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Pools_Get": { + "$ref": "examples/Pools_Get.json" + } + } + }, + "put": { + "tags": [ + "Capacity Pools" + ], + "operationId": "Pools_CreateOrUpdate", + "summary": "Create or Update the specified capacity pool within the resource group", + "description": "Create or Update a capacity pool", + "parameters": [ + { + "name": "body", + "description": "Capacity pool object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/capacityPool" + } + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - pool updated", + "schema": { + "$ref": "#/definitions/capacityPool" + } + }, + "201": { + "description": "Pool created", + "schema": { + "$ref": "#/definitions/capacityPool" + } + }, + "202": { + "description": "Accepted -- Create, update or delete request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Pools_CreateOrUpdate": { + "$ref": "examples/Pools_CreateOrUpdate.json" + } + } + }, + "patch": { + "tags": [ + "Capacity Pools" + ], + "operationId": "Pools_Update", + "summary": "Update a capacity pool", + "description": "Patch the specified capacity pool", + "parameters": [ + { + "name": "body", + "description": "Capacity pool object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/capacityPoolPatch" + } + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/capacityPool" + } + }, + "202": { + "description": "Accepted -- Create, update or delete request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Pools_Update": { + "$ref": "examples/Pools_Update.json" + } + } + }, + "delete": { + "tags": [ + "Capacity Pools" + ], + "operationId": "Pools_Delete", + "summary": "Delete a capacity pool", + "description": "Delete the specified capacity pool", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted -- Create, update or delete request accepted; operation will complete asynchronously" + }, + "204": { + "description": "NoContent -- Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Pools_Delete": { + "$ref": "examples/Pools_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes": { + "get": { + "summary": "Describe all volumes", + "description": "List all volumes within the capacity pool", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "tags": [ + "Volumes" + ], + "operationId": "Volumes_List", + "x-ms-pageable": { + "nextLinkName": null + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/volumeList" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Volumes_List": { + "$ref": "examples/Volumes_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}": { + "get": { + "tags": [ + "Volumes" + ], + "operationId": "Volumes_Get", + "summary": "Describe a volume", + "description": "Get the details of the specified volume", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/volume" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Volumes_Get": { + "$ref": "examples/Volumes_Get.json" + } + } + }, + "put": { + "tags": [ + "Volumes" + ], + "operationId": "Volumes_CreateOrUpdate", + "summary": "Create or Update a volume", + "description": "Create or update the specified volume within the capacity pool", + "parameters": [ + { + "name": "body", + "description": "Volume object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/volume" + } + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Ok - volume updated", + "schema": { + "$ref": "#/definitions/volume" + } + }, + "201": { + "description": "Volume created", + "schema": { + "$ref": "#/definitions/volume" + } + }, + "202": { + "description": "Accepted -- Create request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Volumes_CreateOrUpdate": { + "$ref": "examples/Volumes_CreateOrUpdate.json" + } + } + }, + "patch": { + "tags": [ + "Volumes" + ], + "operationId": "Volumes_Update", + "summary": "Update a volume", + "description": "Patch the specified volume", + "parameters": [ + { + "name": "body", + "description": "Volume object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/volumePatch" + } + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/volume" + } + }, + "202": { + "description": "Accepted -- Create, update or delete request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Volumes_Update": { + "$ref": "examples/Volumes_Update.json" + } + } + }, + "delete": { + "tags": [ + "Volumes" + ], + "operationId": "Volumes_Delete", + "summary": "Delete a volume", + "description": "Delete the specified volume", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted -- Create, update or delete request accepted; operation will complete asynchronously" + }, + "204": { + "description": "NoContent -- Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Volumes_Delete": { + "$ref": "examples/Volumes_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/revert": { + "post": { + "tags": [ + "Volumes Revert" + ], + "summary": "Revert a volume to one of its snapshots", + "description": "Revert a volume to the snapshot specified in the body", + "operationId": "Volumes_Revert", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "body", + "description": "Object for snapshot to revert supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/volumeRevert" + } + } + ], + "responses": { + "200": { + "description": "OK - terminal state" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Volumes_Revert": { + "$ref": "examples/Volumes_Revert.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/breakReplication": { + "post": { + "tags": [ + "Volumes Replication" + ], + "summary": "Break volume replication", + "description": "Break the replication connection on the destination volume", + "operationId": "Volumes_BreakReplication", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - terminal state" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Volumes_BreakReplication": { + "$ref": "examples/Volumes_BreakReplication.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/replicationStatus": { + "get": { + "tags": [ + "Volumes Replication" + ], + "summary": "Get volume replication status", + "description": "Get the status of the replication", + "operationId": "Volumes_ReplicationStatus", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/replicationStatus" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Volumes_ReplicationStatus": { + "$ref": "examples/Volumes_ReplicationStatus.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/resyncReplication": { + "post": { + "tags": [ + "Volumes Replication" + ], + "summary": "Resync volume replication", + "description": "Resync the connection on the destination volume. If the operation is ran on the source volume it will reverse-resync the connection and sync from source to destination.", + "operationId": "Volumes_ResyncReplication", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - terminal state" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Volumes_ResyncReplication": { + "$ref": "examples/Volumes_ResyncReplication.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/deleteReplication": { + "post": { + "tags": [ + "Volumes Replication" + ], + "summary": "Delete volume replication", + "description": "Delete the replication connection on the destination volume, and send release to the source replication", + "operationId": "Volumes_DeleteReplication", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - terminal state" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Volumes_DeleteReplication": { + "$ref": "examples/Volumes_DeleteReplication.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/authorizeReplication": { + "post": { + "tags": [ + "Volumes Replication" + ], + "summary": "Authorize source volume replication", + "description": "Authorize the replication connection on the source volume", + "operationId": "Volumes_AuthorizeReplication", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "body", + "description": "Authorize request object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/authorizeRequest" + } + } + ], + "responses": { + "200": { + "description": "OK - terminal state" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Volumes_AuthorizeReplication": { + "$ref": "examples/Volumes_AuthorizeReplication.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/snapshots": { + "get": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_List", + "summary": "Describe all snapshots", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "description": "List all snapshots associated with the volume", + "x-ms-pageable": { + "nextLinkName": null + }, + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/snapshotsList" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Snapshots_List": { + "$ref": "examples/Snapshots_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/snapshots/{snapshotName}": { + "get": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Get", + "summary": "Describe a snapshot", + "description": "Get details of the specified snapshot", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/SnapshotName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/snapshot" + } + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-examples": { + "Snapshots_Get": { + "$ref": "examples/Snapshots_Get.json" + } + } + }, + "put": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Create", + "summary": "Create a snapshot", + "description": "Create the specified snapshot within the given volume", + "parameters": [ + { + "name": "body", + "description": "Snapshot object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/snapshot" + } + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/SnapshotName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "201": { + "description": "Snapshot created", + "schema": { + "$ref": "#/definitions/snapshot" + } + }, + "202": { + "description": "Accepted -- Create request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Snapshots_Create": { + "$ref": "examples/Snapshots_Create.json" + } + } + }, + "patch": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Update", + "summary": "Update a snapshot", + "description": "Patch a snapshot", + "parameters": [ + { + "name": "body", + "description": "Snapshot object supplied in the body of the operation.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/snapshotPatch" + } + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/SnapshotName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/snapshot" + } + }, + "202": { + "description": "Accepted -- Update request accepted; operation will complete asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Snapshots_Update": { + "$ref": "examples/Snapshots_Update.json" + } + } + }, + "delete": { + "tags": [ + "Snapshots" + ], + "operationId": "Snapshots_Delete", + "summary": "Delete a snapshot", + "description": "Delete snapshot", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroup" + }, + { + "$ref": "#/parameters/AccountName" + }, + { + "$ref": "#/parameters/PoolName" + }, + { + "$ref": "#/parameters/VolumeName" + }, + { + "$ref": "#/parameters/SnapshotName" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted -- Create, update or delete request accepted; operation will complete asynchronously" + }, + "204": { + "description": "NoContent -- Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Snapshots_Delete": { + "$ref": "examples/Snapshots_Delete.json" + } + } + } + } + }, + "definitions": { + "OperationListResult": { + "description": "Result of the request to list Cloud Volume 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 Storage operations supported by the Storage resource provider." + } + } + }, + "Operation": { + "description": "Microsoft.NetApp REST API operation definition.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "Display metadata associated with the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft NetApp.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed etc.", + "type": "string" + }, + "operation": { + "description": "Type of operation: get, read, delete, etc.", + "type": "string" + }, + "description": { + "description": "Operation description.", + "type": "string" + } + } + }, + "origin": { + "type": "string", + "description": "The origin of operations." + }, + "properties": { + "$ref": "#/definitions/OperationProperties", + "description": "Properties of operation, include metric specifications.", + "x-ms-client-flatten": true + } + } + }, + "OperationProperties": { + "description": "Properties of operation, include metric specifications.", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/ServiceSpecification", + "description": "One property of operation, include metric specifications." + } + } + }, + "ServiceSpecification": { + "description": "One property of operation, include metric specifications.", + "properties": { + "metricSpecifications": { + "description": "Metric specifications of operation.", + "type": "array", + "items": { + "$ref": "#/definitions/MetricSpecification" + } + } + } + }, + "MetricSpecification": { + "description": "Metric specification of operation.", + "properties": { + "name": { + "type": "string", + "description": "Name of metric specification." + }, + "displayName": { + "type": "string", + "description": "Display name of metric specification." + }, + "displayDescription": { + "type": "string", + "description": "Display description of metric specification." + }, + "unit": { + "type": "string", + "description": "Unit could be Bytes or Count." + }, + "dimensions": { + "description": "Dimensions of blobs, including blob type and access tier.", + "type": "array", + "items": { + "$ref": "#/definitions/Dimension" + } + }, + "aggregationType": { + "type": "string", + "description": "Aggregation type could be Average." + }, + "fillGapWithZero": { + "type": "boolean", + "description": "The property to decide fill gap with zero or not." + }, + "category": { + "type": "string", + "description": "The category this metric specification belong to, could be Capacity." + }, + "resourceIdDimensionNameOverride": { + "type": "string", + "description": "Account Resource Id." + } + } + }, + "Dimension": { + "description": "Dimension of blobs, possibly be blob type or access tier.", + "properties": { + "name": { + "type": "string", + "description": "Display name of dimension." + }, + "displayName": { + "type": "string", + "description": "Display name of dimension." + } + } + }, + "ResourceNameAvailability": { + "description": "Information regarding availability of a resource name.", + "type": "object", + "properties": { + "isAvailable": { + "description": "true indicates name is valid and available. false indicates the name is invalid, unavailable, or both.", + "type": "boolean" + }, + "reason": { + "description": "Invalid indicates the name provided does not match Azure App Service naming requirements. AlreadyExists indicates that the name is already in use and is therefore unavailable.", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "type": "string", + "x-ms-enum": { + "name": "InAvailabilityReasonType", + "modelAsString": true + } + }, + "message": { + "description": "If reason == invalid, provide the user with the reason why the given name is invalid, and provide the resource naming requirements so that the user can select a valid name. If reason == AlreadyExists, explain that resource name is already in use, and direct them to select a different name.", + "type": "string" + } + } + }, + "ResourceNameAvailabilityRequest": { + "description": "Resource name availability request content.", + "required": [ + "name", + "type", + "resourceGroup" + ], + "type": "object", + "properties": { + "name": { + "description": "Resource name to verify.", + "type": "string" + }, + "type": { + "description": "Resource type used for verification.", + "enum": [ + "Microsoft.NetApp/netAppAccounts", + "Microsoft.NetApp/netAppAccounts/capacityPools", + "Microsoft.NetApp/netAppAccounts/capacityPools/volumes", + "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/snapshots" + ], + "type": "string", + "x-ms-enum": { + "name": "CheckNameResourceTypes", + "modelAsString": true + } + }, + "resourceGroup": { + "description": "Resource group name.", + "type": "string" + } + } + }, + "netAppAccountList": { + "description": "List of NetApp account resources", + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "Multiple NetApp accounts", + "items": { + "$ref": "#/definitions/netAppAccount" + } + } + } + }, + "netAppAccount": { + "description": "NetApp account resource", + "type": "object", + "x-ms-azure-resource": true, + "required": [ + "location" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "NetApp Account properties", + "$ref": "#/definitions/accountProperties", + "x-ms-client-flatten": true + } + } + }, + "netAppAccountPatch": { + "description": "NetApp account patch resource", + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "location": { + "type": "string", + "description": "Resource location" + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "NetApp Account properties", + "$ref": "#/definitions/accountProperties", + "x-ms-client-flatten": true + } + } + }, + "accountProperties": { + "description": "NetApp account properties", + "type": "object", + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Azure lifecycle management" + }, + "activeDirectories": { + "description": "Active Directories", + "type": "array", + "items": { + "$ref": "#/definitions/activeDirectory" + } + } + } + }, + "activeDirectory": { + "description": "Active Directory", + "type": "object", + "properties": { + "activeDirectoryId": { + "type": "string", + "description": "Id of the Active Directory" + }, + "username": { + "type": "string", + "description": "Username of Active Directory domain administrator" + }, + "password": { + "type": "string", + "description": "Plain text password of Active Directory domain administrator" + }, + "domain": { + "type": "string", + "description": "Name of the Active Directory domain" + }, + "dns": { + "type": "string", + "description": "Comma separated list of DNS server IP addresses (IPv4 only) for the Active Directory domain" + }, + "status": { + "type": "string", + "description": "Status of the Active Directory" + }, + "smbServerName": { + "type": "string", + "description": "NetBIOS name of the SMB server. This name will be registered as a computer account in the AD and used to mount volumes" + }, + "organizationalUnit": { + "type": "string", + "description": "The Organizational Unit (OU) within the Windows Active Directory" + }, + "site": { + "type": "string", + "description": "The Active Directory site the service will limit Domain Controller discovery to" + } + } + }, + "capacityPoolList": { + "description": "List of capacity pool resources", + "type": "object", + "properties": { + "value": { + "description": "List of Capacity pools", + "type": "array", + "items": { + "$ref": "#/definitions/capacityPool" + } + } + } + }, + "capacityPool": { + "description": "Capacity pool resource", + "type": "object", + "x-ms-azure-resource": true, + "required": [ + "location", + "properties" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "Capacity pool properties", + "$ref": "#/definitions/poolProperties", + "x-ms-client-flatten": true + } + } + }, + "poolProperties": { + "description": "Pool properties", + "type": "object", + "required": [ + "size", + "serviceLevel" + ], + "properties": { + "poolId": { + "title": "poolId", + "type": "string", + "readOnly": true, + "description": "UUID v4 used to identify the Pool", + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", + "maxLength": 36, + "minLength": 36, + "example": "9760acf5-4638-11e7-9bdb-020073ca7778" + }, + "size": { + "title": "size", + "type": "integer", + "format": "int64", + "description": "Provisioned size of the pool (in bytes). Allowed values are in 4TiB chunks (value must be multiply of 4398046511104).", + "minimum": 4398046511104, + "maximum": 549755813888000 + }, + "serviceLevel": { + "title": "serviceLevel", + "type": "string", + "description": "The service level of the file system", + "enum": [ + "Standard", + "Premium", + "Ultra" + ], + "x-ms-enum": { + "name": "ServiceLevel", + "modelAsString": true, + "values": [ + { + "value": "Standard", + "description": "Standard service level" + }, + { + "value": "Premium", + "description": "Premium service level" + }, + { + "value": "Ultra", + "description": "Ultra service level" + } + ] + }, + "example": "Ultra", + "default": "Premium" + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Azure lifecycle management" + } + } + }, + "capacityPoolPatch": { + "description": "Capacity pool patch resource", + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "location": { + "type": "string", + "description": "Resource location" + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "Capacity pool properties", + "$ref": "#/definitions/poolPatchProperties", + "x-ms-client-flatten": true + } + } + }, + "poolPatchProperties": { + "description": "Patchable pool properties", + "type": "object", + "properties": { + "size": { + "title": "size", + "type": "integer", + "format": "int64", + "description": "Provisioned size of the pool (in bytes). Allowed values are in 4TiB chunks (value must be multiply of 4398046511104).", + "minimum": 4398046511104, + "maximum": 549755813888000, + "default": 4398046511104 + }, + "serviceLevel": { + "title": "serviceLevel", + "type": "string", + "description": "The service level of the file system", + "enum": [ + "Standard", + "Premium", + "Ultra" + ], + "x-ms-enum": { + "name": "ServiceLevel", + "modelAsString": true, + "values": [ + { + "value": "Standard", + "description": "Standard service level" + }, + { + "value": "Premium", + "description": "Premium service level" + }, + { + "value": "Ultra", + "description": "Ultra service level" + } + ] + }, + "example": "Ultra", + "default": "Premium" + } + } + }, + "volumeList": { + "description": "List of volume resources", + "type": "object", + "properties": { + "value": { + "description": "List of volumes", + "type": "array", + "items": { + "$ref": "#/definitions/volume" + } + } + } + }, + "volume": { + "description": "Volume resource", + "type": "object", + "x-ms-azure-resource": true, + "required": [ + "location", + "properties" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "Volume properties", + "$ref": "#/definitions/volumeProperties", + "x-ms-client-flatten": true + } + } + }, + "resourceTags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Tags are a list of key-value pairs that describe the resource" + }, + "volumeProperties": { + "description": "Volume properties", + "type": "object", + "required": [ + "creationToken", + "usageThreshold", + "subnetId" + ], + "properties": { + "fileSystemId": { + "title": "FileSystem ID", + "type": "string", + "readOnly": true, + "description": "Unique FileSystem Identifier.", + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", + "maxLength": 36, + "minLength": 36, + "example": "9760acf5-4638-11e7-9bdb-020073ca7778" + }, + "creationToken": { + "title": "Creation Token or File Path", + "type": "string", + "description": "A unique file path for the volume. Used when creating mount targets", + "pattern": "^[a-zA-Z][a-zA-Z0-9\\-]{0,79}$", + "minLength": 1, + "maxLength": 80, + "example": "some-amazing-filepath" + }, + "serviceLevel": { + "title": "serviceLevel", + "type": "string", + "description": "The service level of the file system", + "enum": [ + "Standard", + "Premium", + "Ultra" + ], + "x-ms-enum": { + "name": "ServiceLevel", + "modelAsString": true, + "values": [ + { + "value": "Standard", + "description": "Standard service level" + }, + { + "value": "Premium", + "description": "Premium service level" + }, + { + "value": "Ultra", + "description": "Ultra service level" + } + ] + }, + "example": "Ultra", + "default": "Premium" + }, + "usageThreshold": { + "title": "usageThreshold", + "type": "integer", + "format": "int64", + "description": "Maximum storage quota allowed for a file system in bytes. This is a soft quota used for alerting only. Minimum size is 100 GiB. Upper limit is 100TiB. Specified in bytes.", + "minimum": 107374182400, + "maximum": 109951162777600, + "default": 107374182400, + "example": 107374182400 + }, + "exportPolicy": { + "title": "exportPolicy", + "description": "Set of export policy rules", + "properties": { + "rules": { + "title": "Export policy rule", + "description": "Export policy rule", + "type": "array", + "items": { + "$ref": "#/definitions/exportPolicyRule" + } + } + } + }, + "protocolTypes": { + "title": "protocolTypes", + "description": "Set of protocol types", + "type": "array", + "items": { + "type": "string" + }, + "example": [ + "NFSv4.1" + ] + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Azure lifecycle management" + }, + "snapshotId": { + "title": "Snapshot ID", + "type": "string", + "description": "UUID v4 or resource identifier used to identify the Snapshot.", + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}|(\\\\?([^\\/]*[\\/])*)([^\\/]+)$", + "maxLength": 36, + "minLength": 36, + "example": "9760acf5-4638-11e7-9bdb-020073ca3333" + }, + "baremetalTenantId": { + "title": "Baremetal Tenant ID", + "type": "string", + "readOnly": true, + "description": "Unique Baremetal Tenant Identifier.", + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", + "maxLength": 36, + "minLength": 36, + "example": "9560acf5-4e3a-12e7-9bdb-02007cca7779" + }, + "subnetId": { + "type": "string", + "description": "The Azure Resource URI for a delegated subnet. Must have the delegation Microsoft.NetApp/volumes" + }, + "mountTargets": { + "title": "mountTargets", + "type": "array", + "description": "List of mount targets", + "items": { + "$ref": "#/definitions/mountTarget" + } + }, + "volumeType": { + "type": "string", + "description": "What type of volume is this", + "example": "DataProtection" + }, + "dataProtection": { + "title": "DataProtection", + "description": "DataProtection type volumes include an object containing details of the replication", + "properties": { + "replication": { + "title": "Replication", + "description": "Replication properties", + "type": "object", + "$ref": "#/definitions/replicationObject" + } + } + }, + "isRestoring": { + "type": "boolean", + "description": "Restoring" + } + } + }, + "exportPolicyRule": { + "description": "Volume Export Policy Rule", + "type": "object", + "properties": { + "ruleIndex": { + "type": "integer", + "description": "Order index" + }, + "unixReadOnly": { + "type": "boolean", + "description": "Read only access" + }, + "unixReadWrite": { + "type": "boolean", + "description": "Read and write access" + }, + "cifs": { + "type": "boolean", + "description": "Allows CIFS protocol" + }, + "nfsv3": { + "type": "boolean", + "description": "Allows NFSv3 protocol" + }, + "nfsv41": { + "type": "boolean", + "description": "Allows NFSv4.1 protocol" + }, + "allowedClients": { + "type": "string", + "description": "Client ingress specification as comma separated string with IPv4 CIDRs, IPv4 host addresses and host names" + } + } + }, + "replicationObject": { + "description": "Replication properties", + "type": "object", + "required": [ + "replicationSchedule", + "remoteVolumeResourceId" + ], + "properties": { + "replicationId": { + "type": "string", + "description": "Id" + }, + "endpointType": { + "type": "string", + "description": "Indicates whether the local volume is the source or destination for the Volume Replication", + "enum": [ + "src", + "dst" + ], + "x-ms-enum": { + "name": "EndpointType", + "modelAsString": true + } + }, + "replicationSchedule": { + "type": "string", + "description": "Schedule", + "enum": [ + "_10minutely", + "hourly", + "daily", + "weekly", + "monthly" + ], + "x-ms-enum": { + "name": "ReplicationSchedule", + "modelAsString": true + } + }, + "remoteVolumeResourceId": { + "type": "string", + "description": "The resource ID of the remote volume." + }, + "remoteVolumeRegion": { + "type": "string", + "description": "The remote region for the other end of the Volume Replication." + } + } + }, + "replicationStatus": { + "description": "Replication status", + "type": "object", + "properties": { + "healthy": { + "type": "boolean", + "description": "Replication health check" + }, + "relationshipStatus": { + "type": "string", + "description": "Status of the mirror relationship", + "enum": [ + "Idle", + "Transferring" + ], + "x-ms-enum": { + "name": "RelationshipStatus", + "modelAsString": true + } + }, + "mirrorState": { + "type": "string", + "description": "The status of the replication", + "enum": [ + "Uninitialized", + "Mirrored", + "Broken" + ], + "x-ms-enum": { + "name": "MirrorState", + "modelAsString": true + } + }, + "totalProgress": { + "type": "string", + "description": "The progress of the replication" + }, + "errorMessage": { + "type": "string", + "description": "Displays error message if the replication is in an error state" + } + } + }, + "volumePatch": { + "description": "Volume patch resource", + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "location": { + "type": "string", + "description": "Resource location" + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags" + }, + "properties": { + "description": "Patchable volume properties", + "$ref": "#/definitions/volumePatchProperties", + "x-ms-client-flatten": true + } + } + }, + "volumePatchProperties": { + "description": "Patchable volume properties", + "type": "object", + "properties": { + "serviceLevel": { + "title": "serviceLevel", + "type": "string", + "description": "The service level of the file system", + "enum": [ + "Standard", + "Premium", + "Ultra" + ], + "x-ms-enum": { + "name": "ServiceLevel", + "modelAsString": true, + "values": [ + { + "value": "Standard", + "description": "Standard service level" + }, + { + "value": "Premium", + "description": "Premium service level" + }, + { + "value": "Ultra", + "description": "Ultra service level" + } + ] + }, + "example": "Ultra", + "default": "Premium" + }, + "usageThreshold": { + "title": "usageThreshold", + "type": "integer", + "format": "int64", + "description": "Maximum storage quota allowed for a file system in bytes. This is a soft quota used for alerting only. Minimum size is 100 GiB. Upper limit is 100TiB. Specified in bytes.", + "minimum": 107374182400, + "maximum": 109951162777600, + "default": 107374182400, + "example": 107374182400 + }, + "exportPolicy": { + "title": "exportPolicy", + "description": "Set of export policy rules", + "properties": { + "rules": { + "title": "Export policy rule", + "description": "Export policy rule", + "type": "array", + "items": { + "$ref": "#/definitions/exportPolicyRule" + } + } + } + } + } + }, + "mountTarget": { + "description": "Mount Target", + "type": "object", + "required": [ + "location", + "properties" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location" + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "tags": { + "description": "Resource tags", + "$ref": "#/definitions/resourceTags", + "x-ms-client-flatten": true + }, + "properties": { + "description": "Mount Target Properties", + "$ref": "#/definitions/mountTargetProperties", + "x-ms-client-flatten": true + } + } + }, + "mountTargetProperties": { + "description": "Mount target properties", + "type": "object", + "required": [ + "fileSystemId" + ], + "properties": { + "mountTargetId": { + "title": "mountTargetId", + "type": "string", + "readOnly": true, + "description": "UUID v4 used to identify the MountTarget", + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", + "maxLength": 36, + "minLength": 36, + "example": "9760acf5-4638-11e7-9bdb-020073ca3333" + }, + "fileSystemId": { + "title": "fileSystemId", + "type": "string", + "description": "UUID v4 used to identify the MountTarget", + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", + "maxLength": 36, + "minLength": 36, + "example": "9760acf5-4638-11e7-9bdb-020073ca3333" + }, + "ipAddress": { + "title": "ipAddress", + "description": "The mount target's IPv4 address", + "type": "string", + "readOnly": true, + "example": "1.2.3.4" + }, + "subnet": { + "title": "subnet", + "type": "string", + "description": "The subnet", + "example": "1.2.3.4" + }, + "startIp": { + "title": "startIp", + "description": "The start of IPv4 address range to use when creating a new mount target", + "type": "string", + "example": "1.2.3.4" + }, + "endIp": { + "title": "endIp", + "description": "The end of IPv4 address range to use when creating a new mount target", + "type": "string", + "example": "1.2.3.4" + }, + "gateway": { + "title": "gateway", + "description": "The gateway of the IPv4 address range to use when creating a new mount target", + "type": "string", + "example": "1.2.3.4" + }, + "netmask": { + "title": "netmask", + "description": "The netmask of the IPv4 address range to use when creating a new mount target", + "type": "string", + "example": "255.255.255.0" + }, + "smbServerFqdn": { + "title": "smbServerFQDN", + "description": "The SMB server's Fully Qualified Domain Name, FQDN", + "type": "string", + "example": "fullyqualified.domainname.com" + } + } + }, + "snapshotsList": { + "description": "List of Snapshots", + "type": "object", + "properties": { + "value": { + "description": "A list of Snapshots", + "type": "array", + "items": { + "$ref": "#/definitions/snapshot" + } + } + } + }, + "snapshot": { + "description": "Snapshot of a Volume", + "type": "object", + "x-ms-azure-resource": true, + "required": [ + "location" + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource Id" + }, + "name": { + "type": "string", + "readOnly": true, + "description": "Resource name" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Resource type" + }, + "properties": { + "description": "Snapshot Properties", + "$ref": "#/definitions/snapshotProperties", + "x-ms-client-flatten": true + } + } + }, + "snapshotPatch": { + "description": "Snapshot patch", + "type": "object", + "x-ms-azure-resource": true, + "properties": {} + }, + "snapshotProperties": { + "description": "Snapshot properties", + "type": "object", + "properties": { + "snapshotId": { + "title": "snapshotId", + "type": "string", + "readOnly": true, + "description": "UUID v4 used to identify the Snapshot", + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", + "maxLength": 36, + "minLength": 36, + "example": "9760acf5-4638-11e7-9bdb-020073ca3333" + }, + "fileSystemId": { + "title": "fileSystemId", + "type": "string", + "description": "UUID v4 used to identify the FileSystem", + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$", + "maxLength": 36, + "minLength": 36, + "example": "9760acf5-4638-11e7-9bdb-020073ca3333" + }, + "created": { + "title": "name", + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The creation date of the snapshot", + "example": "2017-08-15 13:23:33" + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Azure lifecycle management" + } + } + }, + "volumeRevert": { + "description": "revert a volume to the snapshot", + "type": "object", + "properties": { + "snapshotId": { + "type": "string", + "description": "Resource id of the snapshot" + } + } + }, + "authorizeRequest": { + "description": "Authorize request", + "type": "object", + "properties": { + "remoteVolumeResourceId": { + "type": "string", + "description": "Resource id of the remote volume" + } + } + } + }, + "parameters": { + "SubscriptionId": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "location": { + "name": "location", + "description": "The location", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ResourceGroup": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method" + }, + "AccountName": { + "name": "accountName", + "type": "string", + "in": "path", + "required": true, + "description": "The name of the NetApp account", + "x-ms-parameter-location": "method" + }, + "PoolName": { + "name": "poolName", + "type": "string", + "in": "path", + "required": true, + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]{0,63}$", + "minLength": 1, + "maxLength": 64, + "description": "The name of the capacity pool", + "x-ms-parameter-location": "method" + }, + "VolumeName": { + "name": "volumeName", + "type": "string", + "in": "path", + "required": true, + "pattern": "^[a-zA-Z][a-zA-Z0-9\\-_]{0,63}$", + "minLength": 1, + "maxLength": 64, + "description": "The name of the volume", + "x-ms-parameter-location": "method" + }, + "MountTargetName": { + "name": "mountTargetName", + "type": "string", + "in": "path", + "required": true, + "description": "The name of the mount target", + "x-ms-parameter-location": "method" + }, + "SnapshotName": { + "name": "snapshotName", + "type": "string", + "in": "path", + "required": true, + "description": "The name of the mount target", + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "description": "Version of the API to be used with the client request.", + "in": "query", + "type": "string", + "required": true, + "default": "2019-11-01" + } + } +} diff --git a/specification/netapp/resource-manager/readme.go.md b/specification/netapp/resource-manager/readme.go.md index fbe9dad21c96..52d0f7d8cb50 100644 --- a/specification/netapp/resource-manager/readme.go.md +++ b/specification/netapp/resource-manager/readme.go.md @@ -13,6 +13,7 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-netapp-2019-11-01 - tag: package-netapp-2019-10-01 - tag: package-netapp-2019-08-01 - tag: package-netapp-2019-07-01 @@ -21,6 +22,15 @@ batch: - tag: package-2017-08-15 ``` +### Tag: package-netapp-2019-11-01 and go + +These settings apply only when `--tag=package-netapp-2019-11-01 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-netapp-2019-11-01' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2019-11-01/$(namespace) +``` + ### Tag: package-netapp-2019-10-01 and go These settings apply only when `--tag=package-netapp-2019-10-01 --go` is specified on the command line. diff --git a/specification/netapp/resource-manager/readme.java.md b/specification/netapp/resource-manager/readme.java.md index c6c75c0a4e27..e1cf32decd09 100644 --- a/specification/netapp/resource-manager/readme.java.md +++ b/specification/netapp/resource-manager/readme.java.md @@ -16,6 +16,7 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-netapp ``` yaml $(java) && $(multiapi) batch: + - tag: package-netapp-2019-11-01 - tag: package-netapp-2019-10-01 - tag: package-netapp-2019-08-01 - tag: package-netapp-2019-07-01 @@ -24,6 +25,19 @@ batch: - tag: package-2017-08-15 ``` +### Tag: package-netapp-2019-11-01 and java + +These settings apply only when `--tag=package-netapp-2019-11-01 --java` is specified on the command line. +Please also specify the `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-netapp-2019-11-01' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.netapp.v2019_11_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/netapp/mgmt-v2019_11_01 +regenerate-manager: true +generate-interface: true +``` + ### Tag: package-netapp-2019-10-01 and java These settings apply only when `--tag=package-netapp-2019-10-01 --java` is specified on the command line. diff --git a/specification/netapp/resource-manager/readme.md b/specification/netapp/resource-manager/readme.md index 4a9d520d9acb..dc115cd7981d 100644 --- a/specification/netapp/resource-manager/readme.md +++ b/specification/netapp/resource-manager/readme.md @@ -28,7 +28,16 @@ These are the global settings for the Azure NetApp Files API. title: NetAppManagementClient description: Microsoft NetApp Azure Resource Provider specification openapi-type: arm -tag: package-netapp-2019-10-01 +tag: package-netapp-2019-11-01 +``` + +### Tag: package-netapp-2019-11-01 + +These settings apply only when `--tag=package-netapp-2019-11-01` is specified on the command line. + +``` yaml $(tag) == 'package-netapp-2019-11-01' +input-file: +- Microsoft.NetApp/stable/2019-11-01/netapp.json ``` ### Tag: package-netapp-2019-10-01 @@ -137,6 +146,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(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 diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2016-09-01/virtualNetworkGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2016-09-01/virtualNetworkGateway.json index e4125f6d81c2..d3aecf01e89a 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2016-09-01/virtualNetworkGateway.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2016-09-01/virtualNetworkGateway.json @@ -1299,7 +1299,7 @@ }, "messagesReceived": { "type": "integer", - "format": "in64", + "format": "int64", "readOnly": true, "description": "The number of BGP messages received" } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2016-12-01/virtualNetworkGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2016-12-01/virtualNetworkGateway.json index 5601c3b3f92b..0b0e0491aa3c 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2016-12-01/virtualNetworkGateway.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2016-12-01/virtualNetworkGateway.json @@ -1286,7 +1286,7 @@ }, "messagesReceived": { "type": "integer", - "format": "in64", + "format": "int64", "readOnly": true, "description": "The number of BGP messages received" } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/bastionHost.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/bastionHost.json index c41f80769e1a..2e826b03d905 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/bastionHost.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/bastionHost.json @@ -43,18 +43,10 @@ "description": "Deletes the specified Bastion Host.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group." + "$ref": "#/parameters/ResourceGroupName" }, { - "name": "bastionHostName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the Bastion Host." + "$ref": "#/parameters/BastionHostName" }, { "$ref": "./network.json#/parameters/ApiVersionParameter" @@ -98,18 +90,10 @@ "description": "Gets the specified Bastion Host.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group." + "$ref": "#/parameters/ResourceGroupName" }, { - "name": "bastionHostName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the Bastion Host." + "$ref": "#/parameters/BastionHostName" }, { "$ref": "./network.json#/parameters/ApiVersionParameter" @@ -146,18 +130,10 @@ "description": "Creates or updates the specified Bastion Host.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group." + "$ref": "#/parameters/ResourceGroupName" }, { - "name": "bastionHostName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the Bastion Host." + "$ref": "#/parameters/BastionHostName" }, { "name": "parameters", @@ -254,11 +230,7 @@ "description": "Lists all Bastion Hosts in a resource group.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group." + "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "./network.json#/parameters/ApiVersionParameter" @@ -290,6 +262,261 @@ "nextLinkName": "nextLink" } } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/createShareableLinks": { + "post": { + "tags": [ + "BastionHosts", + "BastionShareableLink" + ], + "operationId": "PutBastionShareableLink", + "description": "Creates a Bastion Shareable Links for all the VMs specified in the request.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BastionShareableLinkRequest" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of shareable links for the specified VMs, giving appropriate error messages as needed.", + "schema": { + "$ref": "#/definitions/BastionShareableLinkListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Create Bastion Shareable Links for the request VMs": { + "$ref": "./examples/BastionShareableLinkCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/deleteShareableLinks": { + "post": { + "tags": [ + "BastionHosts", + "BastionShareableLink" + ], + "operationId": "DeleteBastionShareableLink", + "description": "Deletes the Bastion Shareable Links for all the VMs specified in the request.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BastionShareableLinkRequest" + } + ], + "responses": { + "200": { + "description": "Success. The operation deleted the BastionShareableLinks associated with the VMs, if they existed. No return body." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete Bastion Shareable Links for the request VMs": { + "$ref": "./examples/BastionShareableLinkDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/getShareableLinks": { + "post": { + "tags": [ + "BastionHosts", + "BastionShareableLink" + ], + "operationId": "GetBastionShareableLink", + "description": "Return the Bastion Shareable Links for all the VMs specified in the request.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BastionShareableLinkRequest" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of shareable links for the specified VMs, giving appropriate error messages as needed.", + "schema": { + "$ref": "#/definitions/BastionShareableLinkListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Returns the Bastion Shareable Links for the request VMs": { + "$ref": "./examples/BastionShareableLinkGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/getActiveSessions": { + "post": { + "tags": [ + "BastionHosts" + ], + "operationId": "GetActiveSessions", + "description": "Returns the list of currently active sessions on the Bastion.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of active sessions on the Bastion.", + "schema": { + "$ref": "#/definitions/BastionActiveSessionListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Returns a list of currently active sessions on the Bastion": { + "$ref": "./examples/BastionSessionsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/disconnectActiveSessions": { + "post": { + "tags": [ + "BastionHosts" + ], + "operationId": "DisconnectActiveSessions", + "description": "Returns the list of currently active sessions on the Bastion.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/SessionIdsParameters" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of sessions with the state of deleted/failed/not found.", + "schema": { + "$ref": "#/definitions/BastionSessionDeleteResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Deletes the specified active session": { + "$ref": "./examples/BastionSessionDelete.json" + } + } + } } }, "definitions": { @@ -404,6 +631,239 @@ } }, "description": "Response for ListBastionHosts API service call." + }, + "BastionShareableLink": { + "properties": { + "vm": { + "$ref": "#/definitions/VM", + "description": "Reference of the virtual machine resource." + }, + "bsl": { + "type": "string", + "readOnly": true, + "description": "The unique Bastion Shareable Link to the virtual machine." + }, + "createdAt": { + "type": "string", + "readOnly": true, + "description": "The time when the link was created." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "Optional field indicating the warning or error message related to the vm in case of partial failure" + } + }, + "required": [ + "vm" + ], + "description": "Bastion Shareable Link." + }, + "BastionShareableLinkListRequest": { + "properties": { + "vms": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionShareableLink" + }, + "description": "List of VM references." + } + }, + "description": "Post request for all the Bastion Shareable Link endpoints." + }, + "BastionShareableLinkListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionShareableLink" + }, + "description": "List of Bastion Shareable Links for the request." + }, + "nextLink": { + "type": "string", + "description": "Gets or sets the URL to get the next set of results." + } + }, + "description": "Response for all the Bastion Shareable Link endpoints." + }, + "BastionActiveSession": { + "properties": { + "sessionId": { + "type": "string", + "readOnly": true, + "description": "A unique id for the session." + }, + "startTime": { + "type": "object", + "readOnly": true, + "description": "The time when the session started." + }, + "targetSubscriptionId": { + "type": "string", + "readOnly": true, + "description": "The subscription id for the target virtual machine." + }, + "resourceType": { + "type": "string", + "readOnly": true, + "description": "The type of the resource." + }, + "targetHostName": { + "type": "string", + "readOnly": true, + "description": "The host name of the target." + }, + "targetResourceGroup": { + "type": "string", + "readOnly": true, + "description": "The resource group of the target." + }, + "userName": { + "type": "string", + "readOnly": true, + "description": "The user name who is active on this session." + }, + "targetIpAddress": { + "type": "string", + "readOnly": true, + "description": "The IP Address of the target." + }, + "protocol": { + "type": "string", + "readOnly": true, + "description": "The protocol used to connect to the target.", + "enum": [ + "SSH", + "RDP" + ], + "x-ms-enum": { + "name": "BastionConnectProtocol", + "modelAsString": true + } + }, + "targetResourceId": { + "type": "string", + "readOnly": true, + "description": "The resource id of the target." + }, + "sessionDurationInMins": { + "type": "number", + "readOnly": true, + "description": "Duration in mins the session has been active." + } + }, + "description": "The session detail for a target." + }, + "BastionActiveSessionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionActiveSession" + }, + "description": "List of active sessions on the bastion." + }, + "nextLink": { + "type": "string", + "description": "Gets or sets the URL to get the next set of results." + } + }, + "description": "Response for GetActiveSessions." + }, + "BastionSessionState": { + "properties": { + "sessionId": { + "type": "string", + "readOnly": true, + "description": "A unique id for the session." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "Used for extra information." + }, + "state": { + "type": "string", + "readOnly": true, + "description": "The state of the session. Disconnected/Failed/NotFound." + } + }, + "description": "The session state detail for a target." + }, + "BastionSessionDeleteResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionSessionState" + }, + "description": "List of sessions with their corresponding state." + }, + "nextLink": { + "type": "string", + "description": "Gets or sets the URL to get the next set of results." + } + }, + "description": "Response for DisconnectActiveSessions." + }, + "VM": { + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Describes a Virtual Machine." + }, + "SessionIds": { + "properties": { + "sessionIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of session ids" + } + }, + "description": "List of session ids." + } + }, + "parameters": { + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "BastionShareableLinkRequest": { + "name": "bslRequest", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BastionShareableLinkListRequest" + }, + "description": "Post request for all the Bastion Shareable Link endpoints.", + "x-ms-parameter-location": "method" + }, + "BastionHostName": { + "name": "bastionHostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Bastion Host.", + "x-ms-parameter-location": "method" + }, + "SessionIdsParameters": { + "name": "sessionIds", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SessionIds" + }, + "description": "The list of sessionids to disconnect.", + "x-ms-parameter-location": "method" } } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionSessionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionSessionDelete.json new file mode 100644 index 000000000000..132d271b1f94 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionSessionDelete.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "sessionIds": [ + "session1", + "session2", + "session3" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sessionId": "session1", + "message": "session session1 invalidated!", + "state": "Disconnected" + }, + { + "sessionId": "session2", + "message": "session session2 could not be disconnected!", + "state": "Failed" + }, + { + "sessionId": "session3", + "message": "session session3 not found!", + "state": "NotFound" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionSessionsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionSessionsList.json new file mode 100644 index 000000000000..03a88dc9d4c7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionSessionsList.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sessionId": "sessionId", + "startTime": "2019-1-1T12:00:00.0000Z", + "targetSubscriptionId": "subid", + "resourceType": "VM", + "targetHostName": "vm01", + "targetResourceGroup": "rg1", + "userName": "user", + "targetIpAddress": "1.1.1.1", + "protocol": "SSH", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm01", + "sessionDurationInMins": 0.0 + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionShareableLinkCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionShareableLinkCreate.json new file mode 100644 index 000000000000..b60e6ea80fd3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionShareableLinkCreate.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "bslRequest": { + "vms": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + } + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm1", + "createdAt": "2019-10-18T12:00:00.0000Z" + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm2", + "createdAt": "2019-10-17T12:00:00.0000Z" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionShareableLinkDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionShareableLinkDelete.json new file mode 100644 index 000000000000..bb9f56a22fda --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionShareableLinkDelete.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "bslRequest": { + "vms": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + } + } + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionShareableLinkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionShareableLinkGet.json new file mode 100644 index 000000000000..f2b144a92d5b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-09-01/examples/BastionShareableLinkGet.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2019-09-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "bslRequest": { + "vms": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + } + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm1", + "createdAt": "2019-10-18T12:00:00.0000Z" + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm2", + "createdAt": "2019-10-17T12:00:00.0000Z" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/applicationGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/applicationGateway.json index 6f11d92755cd..ee5347ac08ea 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/applicationGateway.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/applicationGateway.json @@ -1569,7 +1569,7 @@ "$ref": "./network.json#/definitions/SubResource", "description": "Reference to the FirewallPolicy resource." }, - "hostnames": { + "hostNames": { "type": "array", "items": { "type": "string" diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/bastionHost.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/bastionHost.json index 879e776a3b0c..c7ebb8bcf7dc 100644 --- a/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/bastionHost.json +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/bastionHost.json @@ -43,18 +43,10 @@ "description": "Deletes the specified Bastion Host.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group." + "$ref": "#/parameters/ResourceGroupName" }, { - "name": "bastionHostName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the Bastion Host." + "$ref": "#/parameters/BastionHostName" }, { "$ref": "./network.json#/parameters/ApiVersionParameter" @@ -98,18 +90,10 @@ "description": "Gets the specified Bastion Host.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group." + "$ref": "#/parameters/ResourceGroupName" }, { - "name": "bastionHostName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the Bastion Host." + "$ref": "#/parameters/BastionHostName" }, { "$ref": "./network.json#/parameters/ApiVersionParameter" @@ -146,18 +130,10 @@ "description": "Creates or updates the specified Bastion Host.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group." + "$ref": "#/parameters/ResourceGroupName" }, { - "name": "bastionHostName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the Bastion Host." + "$ref": "#/parameters/BastionHostName" }, { "name": "parameters", @@ -254,11 +230,7 @@ "description": "Lists all Bastion Hosts in a resource group.", "parameters": [ { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group." + "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "./network.json#/parameters/ApiVersionParameter" @@ -290,6 +262,261 @@ "nextLinkName": "nextLink" } } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/createShareableLinks": { + "post": { + "tags": [ + "BastionHosts", + "BastionShareableLink" + ], + "operationId": "PutBastionShareableLink", + "description": "Creates a Bastion Shareable Links for all the VMs specified in the request.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BastionShareableLinkRequest" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of shareable links for the specified VMs, giving appropriate error messages as needed.", + "schema": { + "$ref": "#/definitions/BastionShareableLinkListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Create Bastion Shareable Links for the request VMs": { + "$ref": "./examples/BastionShareableLinkCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/deleteShareableLinks": { + "post": { + "tags": [ + "BastionHosts", + "BastionShareableLink" + ], + "operationId": "DeleteBastionShareableLink", + "description": "Deletes the Bastion Shareable Links for all the VMs specified in the request.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BastionShareableLinkRequest" + } + ], + "responses": { + "200": { + "description": "Success. The operation deleted the BastionShareableLinks associated with the VMs, if they existed. No return body." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete Bastion Shareable Links for the request VMs": { + "$ref": "./examples/BastionShareableLinkDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/getShareableLinks": { + "post": { + "tags": [ + "BastionHosts", + "BastionShareableLink" + ], + "operationId": "GetBastionShareableLink", + "description": "Return the Bastion Shareable Links for all the VMs specified in the request.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BastionShareableLinkRequest" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of shareable links for the specified VMs, giving appropriate error messages as needed.", + "schema": { + "$ref": "#/definitions/BastionShareableLinkListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Returns the Bastion Shareable Links for the request VMs": { + "$ref": "./examples/BastionShareableLinkGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/getActiveSessions": { + "post": { + "tags": [ + "BastionHosts" + ], + "operationId": "GetActiveSessions", + "description": "Returns the list of currently active sessions on the Bastion.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of active sessions on the Bastion.", + "schema": { + "$ref": "#/definitions/BastionActiveSessionListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Returns a list of currently active sessions on the Bastion": { + "$ref": "./examples/BastionSessionsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/disconnectActiveSessions": { + "post": { + "tags": [ + "BastionHosts" + ], + "operationId": "DisconnectActiveSessions", + "description": "Returns the list of currently active sessions on the Bastion.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/SessionIdsParameters" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of sessions with the state of deleted/failed/not found.", + "schema": { + "$ref": "#/definitions/BastionSessionDeleteResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Deletes the specified active session": { + "$ref": "./examples/BastionSessionDelete.json" + } + } + } } }, "definitions": { @@ -297,11 +524,11 @@ "properties": { "subnet": { "$ref": "./network.json#/definitions/SubResource", - "description": "Reference to the subnet resource." + "description": "Reference of the subnet resource." }, "publicIPAddress": { "$ref": "./network.json#/definitions/SubResource", - "description": "Reference to the PublicIP resource." + "description": "Reference of the PublicIP resource." }, "provisioningState": { "readOnly": true, @@ -404,6 +631,239 @@ } }, "description": "Response for ListBastionHosts API service call." + }, + "BastionShareableLink": { + "properties": { + "vm": { + "$ref": "#/definitions/VM", + "description": "Reference of the virtual machine resource." + }, + "bsl": { + "type": "string", + "readOnly": true, + "description": "The unique Bastion Shareable Link to the virtual machine." + }, + "createdAt": { + "type": "string", + "readOnly": true, + "description": "The time when the link was created." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "Optional field indicating the warning or error message related to the vm in case of partial failure." + } + }, + "required": [ + "vm" + ], + "description": "Bastion Shareable Link." + }, + "BastionShareableLinkListRequest": { + "properties": { + "vms": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionShareableLink" + }, + "description": "List of VM references." + } + }, + "description": "Post request for all the Bastion Shareable Link endpoints." + }, + "BastionShareableLinkListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionShareableLink" + }, + "description": "List of Bastion Shareable Links for the request." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for all the Bastion Shareable Link endpoints." + }, + "BastionActiveSession": { + "properties": { + "sessionId": { + "type": "string", + "readOnly": true, + "description": "A unique id for the session." + }, + "startTime": { + "type": "object", + "readOnly": true, + "description": "The time when the session started." + }, + "targetSubscriptionId": { + "type": "string", + "readOnly": true, + "description": "The subscription id for the target virtual machine." + }, + "resourceType": { + "type": "string", + "readOnly": true, + "description": "The type of the resource." + }, + "targetHostName": { + "type": "string", + "readOnly": true, + "description": "The host name of the target." + }, + "targetResourceGroup": { + "type": "string", + "readOnly": true, + "description": "The resource group of the target." + }, + "userName": { + "type": "string", + "readOnly": true, + "description": "The user name who is active on this session." + }, + "targetIpAddress": { + "type": "string", + "readOnly": true, + "description": "The IP Address of the target." + }, + "protocol": { + "type": "string", + "readOnly": true, + "description": "The protocol used to connect to the target.", + "enum": [ + "SSH", + "RDP" + ], + "x-ms-enum": { + "name": "BastionConnectProtocol", + "modelAsString": true + } + }, + "targetResourceId": { + "type": "string", + "readOnly": true, + "description": "The resource id of the target." + }, + "sessionDurationInMins": { + "type": "number", + "readOnly": true, + "description": "Duration in mins the session has been active." + } + }, + "description": "The session detail for a target." + }, + "BastionActiveSessionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionActiveSession" + }, + "description": "List of active sessions on the bastion." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for GetActiveSessions." + }, + "BastionSessionState": { + "properties": { + "sessionId": { + "type": "string", + "readOnly": true, + "description": "A unique id for the session." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "Used for extra information." + }, + "state": { + "type": "string", + "readOnly": true, + "description": "The state of the session. Disconnected/Failed/NotFound." + } + }, + "description": "The session state detail for a target." + }, + "BastionSessionDeleteResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionSessionState" + }, + "description": "List of sessions with their corresponding state." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for DisconnectActiveSessions." + }, + "VM": { + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Describes a Virtual Machine." + }, + "SessionIds": { + "properties": { + "sessionIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of session IDs." + } + }, + "description": "List of session IDs." + } + }, + "parameters": { + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "BastionShareableLinkRequest": { + "name": "bslRequest", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BastionShareableLinkListRequest" + }, + "description": "Post request for all the Bastion Shareable Link endpoints.", + "x-ms-parameter-location": "method" + }, + "BastionHostName": { + "name": "bastionHostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Bastion Host.", + "x-ms-parameter-location": "method" + }, + "SessionIdsParameters": { + "name": "sessionIds", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SessionIds" + }, + "description": "The list of sessionids to disconnect.", + "x-ms-parameter-location": "method" } } } diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/BastionSessionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/BastionSessionDelete.json new file mode 100644 index 000000000000..1fb539209f40 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/BastionSessionDelete.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "sessionIds": [ + "session1", + "session2", + "session3" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sessionId": "session1", + "message": "session session1 invalidated!", + "state": "Disconnected" + }, + { + "sessionId": "session2", + "message": "session session2 could not be disconnected!", + "state": "Failed" + }, + { + "sessionId": "session3", + "message": "session session3 not found!", + "state": "NotFound" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/BastionSessionsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/BastionSessionsList.json new file mode 100644 index 000000000000..3c5c527774b3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/BastionSessionsList.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sessionId": "sessionId", + "startTime": "2019-1-1T12:00:00.0000Z", + "targetSubscriptionId": "subid", + "resourceType": "VM", + "targetHostName": "vm01", + "targetResourceGroup": "rg1", + "userName": "user", + "targetIpAddress": "1.1.1.1", + "protocol": "SSH", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm01", + "sessionDurationInMins": 0.0 + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/BastionShareableLinkCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/BastionShareableLinkCreate.json new file mode 100644 index 000000000000..f376e29cf07b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/BastionShareableLinkCreate.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "bslRequest": { + "vms": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + } + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm1", + "createdAt": "2019-10-18T12:00:00.0000Z" + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm2", + "createdAt": "2019-10-17T12:00:00.0000Z" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/BastionShareableLinkDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/BastionShareableLinkDelete.json new file mode 100644 index 000000000000..af234ea755a7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/BastionShareableLinkDelete.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "bslRequest": { + "vms": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + } + } + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/BastionShareableLinkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/BastionShareableLinkGet.json new file mode 100644 index 000000000000..db5d4f75d3c8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-11-01/examples/BastionShareableLinkGet.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2019-11-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "bslRequest": { + "vms": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + } + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm1", + "createdAt": "2019-10-18T12:00:00.0000Z" + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm2", + "createdAt": "2019-10-17T12:00:00.0000Z" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/applicationGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/applicationGateway.json new file mode 100644 index 000000000000..94c9648340e1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/applicationGateway.json @@ -0,0 +1,2843 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}": { + "delete": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_Delete", + "x-ms-examples": { + "Delete ApplicationGateway": { + "$ref": "./examples/ApplicationGatewayDelete.json" + } + }, + "description": "Deletes the specified application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_Get", + "x-ms-examples": { + "Get ApplicationGateway": { + "$ref": "./examples/ApplicationGatewayGet.json" + } + }, + "description": "Gets the specified application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns an ApplicationGateway resource.", + "schema": { + "$ref": "#/definitions/ApplicationGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_CreateOrUpdate", + "description": "Creates or updates the specified application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationGateway" + }, + "description": "Parameters supplied to the create or update application gateway operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting ApplicationGateway resource.", + "schema": { + "$ref": "#/definitions/ApplicationGateway" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting ApplicationGateway resource.", + "schema": { + "$ref": "#/definitions/ApplicationGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Application Gateway": { + "$ref": "./examples/ApplicationGatewayCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_UpdateTags", + "x-ms-examples": { + "Update Application Gateway tags": { + "$ref": "./examples/ApplicationGatewayUpdateTags.json" + } + }, + "description": "Updates the specified application gateway tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update application gateway tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ApplicationGateway resource.", + "schema": { + "$ref": "#/definitions/ApplicationGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_List", + "x-ms-examples": { + "Lists all application gateways in a resource group": { + "$ref": "./examples/ApplicationGatewayList.json" + } + }, + "description": "Lists all application gateways in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of ApplicationGateway resources.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGateways": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAll", + "x-ms-examples": { + "Lists all application gateways in a subscription": { + "$ref": "./examples/ApplicationGatewayListAll.json" + } + }, + "description": "Gets all the application gateways in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of ApplicationGateway resources.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/start": { + "post": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_Start", + "x-ms-examples": { + "Start Application Gateway": { + "$ref": "./examples/ApplicationGatewayStart.json" + } + }, + "description": "Starts the specified application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation starts the ApplicationGateway resource." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/stop": { + "post": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_Stop", + "x-ms-examples": { + "Stop Application Gateway": { + "$ref": "./examples/ApplicationGatewayStop.json" + } + }, + "description": "Stops the specified application gateway in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation stops the ApplicationGateway resource." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/backendhealth": { + "post": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_BackendHealth", + "description": "Gets the backend health of the specified application gateway in a resource group.", + "x-ms-examples": { + "Get Backend Health": { + "$ref": "./examples/ApplicationGatewayBackendHealthGet.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands BackendAddressPool and BackendHttpSettings referenced in backend health." + } + ], + "responses": { + "200": { + "description": "Request successful.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayBackendHealth" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/getBackendHealthOnDemand": { + "post": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_BackendHealthOnDemand", + "description": "Gets the backend health for given combination of backend pool and http setting of the specified application gateway in a resource group.", + "x-ms-examples": { + "Test Backend Health": { + "$ref": "./examples/ApplicationGatewayBackendHealthTest.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands BackendAddressPool and BackendHttpSettings referenced in backend health." + }, + { + "name": "probeRequest", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationGatewayOnDemandProbe" + }, + "description": "Request body for on-demand test probe operation." + } + ], + "responses": { + "200": { + "description": "Request successful.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthOnDemand" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableServerVariables": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableServerVariables", + "x-ms-examples": { + "Get Available Server Variables": { + "$ref": "./examples/ApplicationGatewayAvailableServerVariablesGet.json" + } + }, + "description": "Lists all available server variables.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of all available server variables.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableServerVariablesResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableRequestHeaders": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableRequestHeaders", + "x-ms-examples": { + "Get Available Request Headers": { + "$ref": "./examples/ApplicationGatewayAvailableRequestHeadersGet.json" + } + }, + "description": "Lists all available request headers.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of all available request headers.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableRequestHeadersResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableResponseHeaders": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableResponseHeaders", + "x-ms-examples": { + "Get Available Response Headers": { + "$ref": "./examples/ApplicationGatewayAvailableResponseHeadersGet.json" + } + }, + "description": "Lists all available response headers.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of all available response headers.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableResponseHeadersResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableWafRuleSets": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableWafRuleSets", + "x-ms-examples": { + "Get Available Waf Rule Sets": { + "$ref": "./examples/ApplicationGatewayAvailableWafRuleSetsGet.json" + } + }, + "description": "Lists all available web application firewall rule sets.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of all available web application firewall rule sets.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableWafRuleSetsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableSslOptions", + "x-ms-examples": { + "Get Available Ssl Options": { + "$ref": "./examples/ApplicationGatewayAvailableSslOptionsGet.json" + } + }, + "description": "Lists available Ssl options for configuring Ssl policy.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns all available Ssl options for configuring Ssl policy.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableSslOptions" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default/predefinedPolicies": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableSslPredefinedPolicies", + "x-ms-examples": { + "Get Available Ssl Predefined Policies": { + "$ref": "./examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "description": "Lists all SSL predefined policies for configuring Ssl policy.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a lists of all Ssl predefined policies for configuring Ssl policy.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableSslPredefinedPolicies" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default/predefinedPolicies/{predefinedPolicyName}": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_GetSslPredefinedPolicy", + "x-ms-examples": { + "Get Available Ssl Predefined Policy by name": { + "$ref": "./examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json" + } + }, + "description": "Gets Ssl predefined policy with the specified policy name.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "predefinedPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of Ssl predefined policy." + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a Ssl predefined policy with the specified policy name.", + "schema": { + "$ref": "#/definitions/ApplicationGatewaySslPredefinedPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "ApplicationGatewayOnDemandProbe": { + "properties": { + "protocol": { + "$ref": "#/definitions/ApplicationGatewayProtocol", + "description": "The protocol used for the probe." + }, + "host": { + "type": "string", + "description": "Host name to send the probe to." + }, + "path": { + "type": "string", + "description": "Relative path of probe. Valid path starts from '/'. Probe is sent to ://:." + }, + "timeout": { + "type": "integer", + "format": "int32", + "description": "The probe timeout in seconds. Probe marked as failed if valid response is not received with this timeout period. Acceptable values are from 1 second to 86400 seconds." + }, + "pickHostNameFromBackendHttpSettings": { + "type": "boolean", + "description": "Whether the host header should be picked from the backend http settings. Default value is false." + }, + "match": { + "$ref": "#/definitions/ApplicationGatewayProbeHealthResponseMatch", + "description": "Criterion for classifying a healthy probe response." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to backend pool of application gateway to which probe request will be sent." + }, + "backendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to backend http setting of application gateway to be used for test probe." + } + }, + "description": "Details of on demand test probe request." + }, + "ApplicationGatewayBackendHealthOnDemand": { + "properties": { + "backendAddressPool": { + "$ref": "#/definitions/ApplicationGatewayBackendAddressPool", + "description": "Reference to an ApplicationGatewayBackendAddressPool resource." + }, + "backendHealthHttpSettings": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthHttpSettings", + "description": "Application gateway BackendHealthHttp settings." + } + }, + "description": "Result of on demand test probe." + }, + "ApplicationGatewayBackendHealth": { + "properties": { + "backendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthPool" + }, + "description": "A list of ApplicationGatewayBackendHealthPool resources." + } + }, + "description": "Response for ApplicationGatewayBackendHealth API service call." + }, + "ApplicationGatewayBackendHealthPool": { + "properties": { + "backendAddressPool": { + "$ref": "#/definitions/ApplicationGatewayBackendAddressPool", + "description": "Reference to an ApplicationGatewayBackendAddressPool resource." + }, + "backendHttpSettingsCollection": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthHttpSettings" + }, + "description": "List of ApplicationGatewayBackendHealthHttpSettings resources." + } + }, + "description": "Application gateway BackendHealth pool." + }, + "ApplicationGatewayBackendHealthHttpSettings": { + "properties": { + "backendHttpSettings": { + "$ref": "#/definitions/ApplicationGatewayBackendHttpSettings", + "description": "Reference to an ApplicationGatewayBackendHttpSettings resource." + }, + "servers": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthServer" + }, + "description": "List of ApplicationGatewayBackendHealthServer resources." + } + }, + "description": "Application gateway BackendHealthHttp settings." + }, + "ApplicationGatewayBackendHealthServer": { + "properties": { + "address": { + "type": "string", + "description": "IP address or FQDN of backend server." + }, + "ipConfiguration": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration", + "description": "Reference to IP configuration of backend server." + }, + "health": { + "type": "string", + "description": "Health of backend server.", + "enum": [ + "Unknown", + "Up", + "Down", + "Partial", + "Draining" + ], + "x-ms-enum": { + "name": "ApplicationGatewayBackendHealthServerHealth", + "modelAsString": true + } + }, + "healthProbeLog": { + "type": "string", + "description": "Health Probe Log." + } + }, + "description": "Application gateway backendhealth http settings." + }, + "ApplicationGatewaySku": { + "properties": { + "name": { + "type": "string", + "description": "Name of an application gateway SKU.", + "enum": [ + "Standard_Small", + "Standard_Medium", + "Standard_Large", + "WAF_Medium", + "WAF_Large", + "Standard_v2", + "WAF_v2" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySkuName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "Tier of an application gateway.", + "enum": [ + "Standard", + "WAF", + "Standard_v2", + "WAF_v2" + ], + "x-ms-enum": { + "name": "ApplicationGatewayTier", + "modelAsString": true + } + }, + "capacity": { + "type": "integer", + "format": "int32", + "description": "Capacity (instance count) of an application gateway." + } + }, + "description": "SKU of an application gateway." + }, + "ApplicationGatewaySslPolicy": { + "properties": { + "disabledSslProtocols": { + "type": "array", + "description": "Ssl protocols to be disabled on application gateway.", + "items": { + "type": "string", + "$ref": "#/definitions/ProtocolsEnum" + } + }, + "policyType": { + "type": "string", + "description": "Type of Ssl Policy.", + "enum": [ + "Predefined", + "Custom" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslPolicyType", + "modelAsString": true + } + }, + "policyName": { + "$ref": "#/definitions/PolicyNameEnum", + "description": "Name of Ssl predefined policy." + }, + "cipherSuites": { + "type": "array", + "items": { + "$ref": "#/definitions/CipherSuitesEnum" + }, + "description": "Ssl cipher suites to be enabled in the specified order to application gateway." + }, + "minProtocolVersion": { + "$ref": "#/definitions/ProtocolsEnum", + "description": "Minimum version of Ssl protocol to be supported on application gateway." + } + }, + "description": "Application Gateway Ssl policy." + }, + "ApplicationGatewayIPConfigurationPropertiesFormat": { + "properties": { + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the subnet resource. A subnet from where application gateway gets its private address." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application gateway IP configuration resource." + } + }, + "description": "Properties of IP configuration of an application gateway." + }, + "ApplicationGatewayIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayIPConfigurationPropertiesFormat", + "description": "Properties of the application gateway IP configuration." + }, + "name": { + "type": "string", + "description": "Name of the IP configuration that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration of an application gateway. Currently 1 public and 1 private IP configuration is allowed." + }, + "ApplicationGatewayAuthenticationCertificatePropertiesFormat": { + "properties": { + "data": { + "type": "string", + "description": "Certificate public data." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the authentication certificate resource." + } + }, + "description": "Authentication certificates properties of an application gateway." + }, + "ApplicationGatewayAuthenticationCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayAuthenticationCertificatePropertiesFormat", + "description": "Properties of the application gateway authentication certificate." + }, + "name": { + "type": "string", + "description": "Name of the authentication certificate that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Authentication certificates of an application gateway." + }, + "ApplicationGatewayTrustedRootCertificatePropertiesFormat": { + "properties": { + "data": { + "type": "string", + "description": "Certificate public data." + }, + "keyVaultSecretId": { + "type": "string", + "description": "Secret Id of (base-64 encoded unencrypted pfx) 'Secret' or 'Certificate' object stored in KeyVault." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the trusted root certificate resource." + } + }, + "description": "Trusted Root certificates properties of an application gateway." + }, + "ApplicationGatewayTrustedRootCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayTrustedRootCertificatePropertiesFormat", + "description": "Properties of the application gateway trusted root certificate." + }, + "name": { + "type": "string", + "description": "Name of the trusted root certificate that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Trusted Root certificates of an application gateway." + }, + "ApplicationGatewaySslCertificatePropertiesFormat": { + "properties": { + "data": { + "type": "string", + "description": "Base-64 encoded pfx certificate. Only applicable in PUT Request." + }, + "password": { + "type": "string", + "description": "Password for the pfx file specified in data. Only applicable in PUT request." + }, + "publicCertData": { + "readOnly": true, + "type": "string", + "description": "Base-64 encoded Public cert data corresponding to pfx specified in data. Only applicable in GET request." + }, + "keyVaultSecretId": { + "type": "string", + "description": "Secret Id of (base-64 encoded unencrypted pfx) 'Secret' or 'Certificate' object stored in KeyVault." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the SSL certificate resource." + } + }, + "description": "Properties of SSL certificates of an application gateway." + }, + "ApplicationGatewaySslCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewaySslCertificatePropertiesFormat", + "description": "Properties of the application gateway SSL certificate." + }, + "name": { + "type": "string", + "description": "Name of the SSL certificate that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "SSL certificates of an application gateway." + }, + "ApplicationGatewayFrontendIPConfigurationPropertiesFormat": { + "properties": { + "privateIPAddress": { + "type": "string", + "description": "PrivateIPAddress of the network interface IP Configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the subnet resource." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the PublicIP resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the frontend IP configuration resource." + } + }, + "description": "Properties of Frontend IP configuration of an application gateway." + }, + "ApplicationGatewayFrontendIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayFrontendIPConfigurationPropertiesFormat", + "description": "Properties of the application gateway frontend IP configuration." + }, + "name": { + "type": "string", + "description": "Name of the frontend IP configuration that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Frontend IP configuration of an application gateway." + }, + "ApplicationGatewayFrontendPortPropertiesFormat": { + "properties": { + "port": { + "type": "integer", + "format": "int32", + "description": "Frontend port." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the frontend port resource." + } + }, + "description": "Properties of Frontend port of an application gateway." + }, + "ApplicationGatewayFrontendPort": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayFrontendPortPropertiesFormat", + "description": "Properties of the application gateway frontend port." + }, + "name": { + "type": "string", + "description": "Name of the frontend port that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Frontend port of an application gateway." + }, + "ApplicationGatewayBackendAddress": { + "properties": { + "fqdn": { + "type": "string", + "description": "Fully qualified domain name (FQDN)." + }, + "ipAddress": { + "type": "string", + "description": "IP address." + } + }, + "description": "Backend address of an application gateway." + }, + "ApplicationGatewayBackendAddressPoolPropertiesFormat": { + "properties": { + "backendIPConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "Collection of references to IPs defined in network interfaces." + }, + "backendAddresses": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendAddress" + }, + "description": "Backend addresses." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the backend address pool resource." + } + }, + "description": "Properties of Backend Address Pool of an application gateway." + }, + "ApplicationGatewayBackendAddressPool": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayBackendAddressPoolPropertiesFormat", + "description": "Properties of the application gateway backend address pool." + }, + "name": { + "type": "string", + "description": "Name of the backend address pool that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Backend Address Pool of an application gateway." + }, + "ApplicationGatewayBackendHttpSettingsPropertiesFormat": { + "properties": { + "port": { + "type": "integer", + "format": "int32", + "description": "The destination port on the backend." + }, + "protocol": { + "$ref": "#/definitions/ApplicationGatewayProtocol", + "description": "The protocol used to communicate with the backend." + }, + "cookieBasedAffinity": { + "type": "string", + "description": "Cookie based affinity.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "ApplicationGatewayCookieBasedAffinity", + "modelAsString": true + } + }, + "requestTimeout": { + "type": "integer", + "format": "int32", + "description": "Request timeout in seconds. Application Gateway will fail the request if response is not received within RequestTimeout. Acceptable values are from 1 second to 86400 seconds." + }, + "probe": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Probe resource of an application gateway." + }, + "authenticationCertificates": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Array of references to application gateway authentication certificates." + }, + "trustedRootCertificates": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Array of references to application gateway trusted root certificates." + }, + "connectionDraining": { + "$ref": "#/definitions/ApplicationGatewayConnectionDraining", + "description": "Connection draining of the backend http settings resource." + }, + "hostName": { + "type": "string", + "description": "Host header to be sent to the backend servers." + }, + "pickHostNameFromBackendAddress": { + "type": "boolean", + "description": "Whether to pick host header should be picked from the host name of the backend server. Default value is false." + }, + "affinityCookieName": { + "type": "string", + "description": "Cookie name to use for the affinity cookie." + }, + "probeEnabled": { + "type": "boolean", + "description": "Whether the probe is enabled. Default value is false." + }, + "path": { + "type": "string", + "description": "Path which should be used as a prefix for all HTTP requests. Null means no path will be prefixed. Default value is null." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the backend HTTP settings resource." + } + }, + "description": "Properties of Backend address pool settings of an application gateway." + }, + "ApplicationGatewayBackendHttpSettings": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayBackendHttpSettingsPropertiesFormat", + "description": "Properties of the application gateway backend HTTP settings." + }, + "name": { + "type": "string", + "description": "Name of the backend http settings that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Backend address pool settings of an application gateway." + }, + "ApplicationGatewayHttpListenerPropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Frontend IP configuration resource of an application gateway." + }, + "frontendPort": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Frontend port resource of an application gateway." + }, + "protocol": { + "$ref": "#/definitions/ApplicationGatewayProtocol", + "description": "Protocol of the HTTP listener." + }, + "hostName": { + "type": "string", + "description": "Host name of HTTP listener." + }, + "sslCertificate": { + "$ref": "./network.json#/definitions/SubResource", + "description": "SSL certificate resource of an application gateway." + }, + "requireServerNameIndication": { + "type": "boolean", + "description": "Applicable only if protocol is https. Enables SNI for multi-hosting." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the HTTP listener resource." + }, + "customErrorConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayCustomError" + }, + "description": "Custom error configurations of the HTTP listener." + }, + "firewallPolicy": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the FirewallPolicy resource." + }, + "hostNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of Host names for HTTP Listener that allows special wildcard characters as well." + } + }, + "description": "Properties of HTTP listener of an application gateway." + }, + "ApplicationGatewayHttpListener": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayHttpListenerPropertiesFormat", + "description": "Properties of the application gateway HTTP listener." + }, + "name": { + "type": "string", + "description": "Name of the HTTP listener that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Http listener of an application gateway." + }, + "ApplicationGatewayPathRulePropertiesFormat": { + "properties": { + "paths": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Path rules of URL path map." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Backend address pool resource of URL path map path rule." + }, + "backendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Backend http settings resource of URL path map path rule." + }, + "redirectConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Redirect configuration resource of URL path map path rule." + }, + "rewriteRuleSet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Rewrite rule set resource of URL path map path rule." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the path rule resource." + }, + "firewallPolicy": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the FirewallPolicy resource." + } + }, + "description": "Properties of path rule of an application gateway." + }, + "ApplicationGatewayPathRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayPathRulePropertiesFormat", + "description": "Properties of the application gateway path rule." + }, + "name": { + "type": "string", + "description": "Name of the path rule that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Path rule of URL path map of an application gateway." + }, + "ApplicationGatewayProbePropertiesFormat": { + "properties": { + "protocol": { + "$ref": "#/definitions/ApplicationGatewayProtocol", + "description": "The protocol used for the probe." + }, + "host": { + "type": "string", + "description": "Host name to send the probe to." + }, + "path": { + "type": "string", + "description": "Relative path of probe. Valid path starts from '/'. Probe is sent to ://:." + }, + "interval": { + "type": "integer", + "format": "int32", + "description": "The probing interval in seconds. This is the time interval between two consecutive probes. Acceptable values are from 1 second to 86400 seconds." + }, + "timeout": { + "type": "integer", + "format": "int32", + "description": "The probe timeout in seconds. Probe marked as failed if valid response is not received with this timeout period. Acceptable values are from 1 second to 86400 seconds." + }, + "unhealthyThreshold": { + "type": "integer", + "format": "int32", + "description": "The probe retry count. Backend server is marked down after consecutive probe failure count reaches UnhealthyThreshold. Acceptable values are from 1 second to 20." + }, + "pickHostNameFromBackendHttpSettings": { + "type": "boolean", + "description": "Whether the host header should be picked from the backend http settings. Default value is false." + }, + "minServers": { + "type": "integer", + "format": "int32", + "description": "Minimum number of servers that are always marked healthy. Default value is 0." + }, + "match": { + "$ref": "#/definitions/ApplicationGatewayProbeHealthResponseMatch", + "description": "Criterion for classifying a healthy probe response." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the probe resource." + }, + "port": { + "type": "integer", + "format": "int32", + "description": "Custom port which will be used for probing the backend servers. The valid value ranges from 1 to 65535. In case not set, port from http settings will be used. This property is valid for Standard_v2 and WAF_v2 only.", + "minimum": 1, + "maximum": 65535 + } + }, + "description": "Properties of probe of an application gateway." + }, + "ApplicationGatewayProbeHealthResponseMatch": { + "properties": { + "body": { + "type": "string", + "description": "Body that must be contained in the health response. Default value is empty." + }, + "statusCodes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Allowed ranges of healthy status codes. Default range of healthy status codes is 200-399." + } + }, + "description": "Application gateway probe health response match." + }, + "ApplicationGatewayProbe": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayProbePropertiesFormat", + "description": "Properties of the application gateway probe." + }, + "name": { + "type": "string", + "description": "Name of the probe that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Probe of the application gateway." + }, + "ApplicationGatewayRequestRoutingRulePropertiesFormat": { + "properties": { + "ruleType": { + "type": "string", + "description": "Rule type.", + "enum": [ + "Basic", + "PathBasedRouting" + ], + "x-ms-enum": { + "name": "ApplicationGatewayRequestRoutingRuleType", + "modelAsString": true + } + }, + "priority": { + "type": "integer", + "format": "int32", + "minimum": 1, + "exclusiveMinimum": false, + "maximum": 20000, + "exclusiveMaximum": false, + "description": "Priority of the request routing rule." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Backend address pool resource of the application gateway." + }, + "backendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Backend http settings resource of the application gateway." + }, + "httpListener": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Http listener resource of the application gateway." + }, + "urlPathMap": { + "$ref": "./network.json#/definitions/SubResource", + "description": "URL path map resource of the application gateway." + }, + "rewriteRuleSet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Rewrite Rule Set resource in Basic rule of the application gateway." + }, + "redirectConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Redirect configuration resource of the application gateway." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the request routing rule resource." + } + }, + "description": "Properties of request routing rule of the application gateway." + }, + "ApplicationGatewayRequestRoutingRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayRequestRoutingRulePropertiesFormat", + "description": "Properties of the application gateway request routing rule." + }, + "name": { + "type": "string", + "description": "Name of the request routing rule that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Request routing rule of an application gateway." + }, + "ApplicationGatewayRewriteRuleSet": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayRewriteRuleSetPropertiesFormat", + "description": "Properties of the application gateway rewrite rule set." + }, + "name": { + "type": "string", + "description": "Name of the rewrite rule set that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Rewrite rule set of an application gateway." + }, + "ApplicationGatewayRewriteRuleSetPropertiesFormat": { + "properties": { + "rewriteRules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRewriteRule" + }, + "description": "Rewrite rules in the rewrite rule set." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the rewrite rule set resource." + } + }, + "description": "Properties of rewrite rule set of the application gateway." + }, + "ApplicationGatewayRewriteRule": { + "properties": { + "name": { + "type": "string", + "description": "Name of the rewrite rule that is unique within an Application Gateway." + }, + "ruleSequence": { + "type": "integer", + "description": "Rule Sequence of the rewrite rule that determines the order of execution of a particular rule in a RewriteRuleSet." + }, + "conditions": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRewriteRuleCondition" + }, + "description": "Conditions based on which the action set execution will be evaluated." + }, + "actionSet": { + "type": "object", + "$ref": "#/definitions/ApplicationGatewayRewriteRuleActionSet", + "description": "Set of actions to be done as part of the rewrite Rule." + } + }, + "description": "Rewrite rule of an application gateway." + }, + "ApplicationGatewayRewriteRuleCondition": { + "properties": { + "variable": { + "type": "string", + "description": "The condition parameter of the RewriteRuleCondition." + }, + "pattern": { + "type": "string", + "description": "The pattern, either fixed string or regular expression, that evaluates the truthfulness of the condition." + }, + "ignoreCase": { + "type": "boolean", + "description": "Setting this paramter to truth value with force the pattern to do a case in-sensitive comparison." + }, + "negate": { + "type": "boolean", + "description": "Setting this value as truth will force to check the negation of the condition given by the user." + } + }, + "description": "Set of conditions in the Rewrite Rule in Application Gateway." + }, + "ApplicationGatewayRewriteRuleActionSet": { + "properties": { + "requestHeaderConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayHeaderConfiguration" + }, + "description": "Request Header Actions in the Action Set." + }, + "responseHeaderConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayHeaderConfiguration" + }, + "description": "Response Header Actions in the Action Set." + }, + "urlConfiguration": { + "$ref": "#/definitions/ApplicationGatewayUrlConfiguration", + "description": "Url Configuration Action in the Action Set." + } + }, + "description": "Set of actions in the Rewrite Rule in Application Gateway." + }, + "ApplicationGatewayHeaderConfiguration": { + "properties": { + "headerName": { + "type": "string", + "description": "Header name of the header configuration." + }, + "headerValue": { + "type": "string", + "description": "Header value of the header configuration." + } + }, + "description": "Header configuration of the Actions set in Application Gateway." + }, + "ApplicationGatewayUrlConfiguration": { + "properties": { + "modifiedPath": { + "type": "string", + "description": "Url path which user has provided for url rewrite. Null means no path will be updated. Default value is null." + }, + "modifiedQueryString": { + "type": "string", + "description": "Query string which user has provided for url rewrite. Null means no query string will be updated. Default value is null." + }, + "reroute": { + "type": "boolean", + "description": "If set as true, it will re-evaluate the url path map provided in path based request routing rules using modified path. Default value is false." + } + }, + "description": "Url configuration of the Actions set in Application Gateway." + }, + "ApplicationGatewayRedirectConfigurationPropertiesFormat": { + "properties": { + "redirectType": { + "type": "string", + "$ref": "#/definitions/RedirectTypeEnum", + "description": "HTTP redirection type." + }, + "targetListener": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to a listener to redirect the request to." + }, + "targetUrl": { + "type": "string", + "description": "Url to redirect the request to." + }, + "includePath": { + "type": "boolean", + "description": "Include path in the redirected url." + }, + "includeQueryString": { + "type": "boolean", + "description": "Include query string in the redirected url." + }, + "requestRoutingRules": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Request routing specifying redirect configuration." + }, + "urlPathMaps": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Url path maps specifying default redirect configuration." + }, + "pathRules": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Path rules specifying redirect configuration." + } + }, + "description": "Properties of redirect configuration of the application gateway." + }, + "ApplicationGatewayRedirectConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayRedirectConfigurationPropertiesFormat", + "description": "Properties of the application gateway redirect configuration." + }, + "name": { + "type": "string", + "description": "Name of the redirect configuration that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Redirect configuration of an application gateway." + }, + "ApplicationGatewayPropertiesFormat": { + "properties": { + "sku": { + "$ref": "#/definitions/ApplicationGatewaySku", + "description": "SKU of the application gateway resource." + }, + "sslPolicy": { + "$ref": "#/definitions/ApplicationGatewaySslPolicy", + "description": "SSL policy of the application gateway resource." + }, + "operationalState": { + "readOnly": true, + "type": "string", + "description": "Operational state of the application gateway resource.", + "enum": [ + "Stopped", + "Starting", + "Running", + "Stopping" + ], + "x-ms-enum": { + "name": "ApplicationGatewayOperationalState", + "modelAsString": true + } + }, + "gatewayIPConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayIPConfiguration" + }, + "description": "Subnets of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "authenticationCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayAuthenticationCertificate" + }, + "description": "Authentication certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "trustedRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayTrustedRootCertificate" + }, + "description": "Trusted Root certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "sslCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewaySslCertificate" + }, + "description": "SSL certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "frontendIPConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFrontendIPConfiguration" + }, + "description": "Frontend IP addresses of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "frontendPorts": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFrontendPort" + }, + "description": "Frontend ports of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "probes": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayProbe" + }, + "description": "Probes of the application gateway resource." + }, + "backendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendAddressPool" + }, + "description": "Backend address pool of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "backendHttpSettingsCollection": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHttpSettings" + }, + "description": "Backend http settings of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "httpListeners": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayHttpListener" + }, + "description": "Http listeners of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "urlPathMaps": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayUrlPathMap" + }, + "description": "URL path map of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "requestRoutingRules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRequestRoutingRule" + }, + "description": "Request routing rules of the application gateway resource." + }, + "rewriteRuleSets": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRewriteRuleSet" + }, + "description": "Rewrite rules for the application gateway resource." + }, + "redirectConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRedirectConfiguration" + }, + "description": "Redirect configurations of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "webApplicationFirewallConfiguration": { + "$ref": "#/definitions/ApplicationGatewayWebApplicationFirewallConfiguration", + "description": "Web application firewall configuration." + }, + "firewallPolicy": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the FirewallPolicy resource." + }, + "enableHttp2": { + "type": "boolean", + "description": "Whether HTTP2 is enabled on the application gateway resource." + }, + "enableFips": { + "type": "boolean", + "description": "Whether FIPS is enabled on the application gateway resource." + }, + "autoscaleConfiguration": { + "$ref": "#/definitions/ApplicationGatewayAutoscaleConfiguration", + "description": "Autoscale Configuration." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the application gateway resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application gateway resource." + }, + "customErrorConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayCustomError" + }, + "description": "Custom error configurations of the application gateway resource." + } + }, + "description": "Properties of the application gateway." + }, + "ApplicationGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayPropertiesFormat", + "description": "Properties of the application gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting where the resource needs to come from." + }, + "identity": { + "$ref": "./network.json#/definitions/ManagedServiceIdentity", + "description": "The identity of the application gateway, if configured." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Application gateway resource." + }, + "ApplicationGatewayListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGateway" + }, + "description": "List of an application gateways in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListApplicationGateways API service call." + }, + "ApplicationGatewayUrlPathMapPropertiesFormat": { + "properties": { + "defaultBackendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Default backend address pool resource of URL path map." + }, + "defaultBackendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Default backend http settings resource of URL path map." + }, + "defaultRewriteRuleSet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Default Rewrite rule set resource of URL path map." + }, + "defaultRedirectConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Default redirect configuration resource of URL path map." + }, + "pathRules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayPathRule" + }, + "description": "Path rule of URL path map resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the URL path map resource." + } + }, + "description": "Properties of UrlPathMap of the application gateway." + }, + "ApplicationGatewayUrlPathMap": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayUrlPathMapPropertiesFormat", + "description": "Properties of the application gateway URL path map." + }, + "name": { + "type": "string", + "description": "Name of the URL path map that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "UrlPathMaps give a url path to the backend mapping information for PathBasedRouting." + }, + "ApplicationGatewayWebApplicationFirewallConfiguration": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether the web application firewall is enabled or not." + }, + "firewallMode": { + "type": "string", + "description": "Web application firewall mode.", + "enum": [ + "Detection", + "Prevention" + ], + "x-ms-enum": { + "name": "ApplicationGatewayFirewallMode", + "modelAsString": true + } + }, + "ruleSetType": { + "type": "string", + "description": "The type of the web application firewall rule set. Possible values are: 'OWASP'." + }, + "ruleSetVersion": { + "type": "string", + "description": "The version of the rule set type." + }, + "disabledRuleGroups": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallDisabledRuleGroup" + }, + "description": "The disabled rule groups." + }, + "requestBodyCheck": { + "type": "boolean", + "description": "Whether allow WAF to check request Body." + }, + "maxRequestBodySize": { + "type": "integer", + "format": "int32", + "maximum": 128, + "exclusiveMaximum": false, + "minimum": 8, + "exclusiveMinimum": false, + "description": "Maximum request body size for WAF." + }, + "maxRequestBodySizeInKb": { + "type": "integer", + "format": "int32", + "maximum": 128, + "exclusiveMaximum": false, + "minimum": 8, + "exclusiveMinimum": false, + "description": "Maximum request body size in Kb for WAF." + }, + "fileUploadLimitInMb": { + "type": "integer", + "format": "int32", + "minimum": 0, + "exclusiveMinimum": false, + "description": "Maximum file upload size in Mb for WAF." + }, + "exclusions": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallExclusion" + }, + "description": "The exclusion list." + } + }, + "required": [ + "enabled", + "firewallMode", + "ruleSetType", + "ruleSetVersion" + ], + "description": "Application gateway web application firewall configuration." + }, + "ApplicationGatewayAutoscaleConfiguration": { + "properties": { + "minCapacity": { + "type": "integer", + "format": "int32", + "minimum": 0, + "exclusiveMinimum": false, + "description": "Lower bound on number of Application Gateway capacity." + }, + "maxCapacity": { + "type": "integer", + "format": "int32", + "minimum": 2, + "exclusiveMinimum": false, + "description": "Upper bound on number of Application Gateway capacity." + } + }, + "required": [ + "minCapacity" + ], + "description": "Application Gateway autoscale configuration." + }, + "ApplicationGatewayConnectionDraining": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether connection draining is enabled or not." + }, + "drainTimeoutInSec": { + "type": "integer", + "format": "int32", + "maximum": 3600, + "exclusiveMaximum": false, + "minimum": 1, + "exclusiveMinimum": false, + "description": "The number of seconds connection draining is active. Acceptable values are from 1 second to 3600 seconds." + } + }, + "required": [ + "enabled", + "drainTimeoutInSec" + ], + "description": "Connection draining allows open connections to a backend server to be active for a specified time after the backend server got removed from the configuration." + }, + "ApplicationGatewayFirewallDisabledRuleGroup": { + "properties": { + "ruleGroupName": { + "type": "string", + "description": "The name of the rule group that will be disabled." + }, + "rules": { + "type": "array", + "items": { + "type": "integer", + "format": "int32", + "x-nullable": false + }, + "description": "The list of rules that will be disabled. If null, all rules of the rule group will be disabled." + } + }, + "required": [ + "ruleGroupName" + ], + "description": "Allows to disable rules within a rule group or an entire rule group." + }, + "ApplicationGatewayAvailableServerVariablesResult": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Response for ApplicationGatewayAvailableServerVariables API service call." + }, + "ApplicationGatewayAvailableRequestHeadersResult": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Response for ApplicationGatewayAvailableRequestHeaders API service call." + }, + "ApplicationGatewayAvailableResponseHeadersResult": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Response for ApplicationGatewayAvailableResponseHeaders API service call." + }, + "ApplicationGatewayFirewallExclusion": { + "properties": { + "matchVariable": { + "type": "string", + "description": "The variable to be excluded." + }, + "selectorMatchOperator": { + "type": "string", + "description": "When matchVariable is a collection, operate on the selector to specify which elements in the collection this exclusion applies to." + }, + "selector": { + "type": "string", + "description": "When matchVariable is a collection, operator used to specify which elements in the collection this exclusion applies to." + } + }, + "required": [ + "matchVariable", + "selectorMatchOperator", + "selector" + ], + "description": "Allow to exclude some variable satisfy the condition for the WAF check." + }, + "ApplicationGatewayAvailableWafRuleSetsResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallRuleSet" + }, + "description": "The list of application gateway rule sets." + } + }, + "description": "Response for ApplicationGatewayAvailableWafRuleSets API service call." + }, + "ApplicationGatewayFirewallRuleSet": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayFirewallRuleSetPropertiesFormat", + "description": "Properties of the application gateway firewall rule set." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "A web application firewall rule set." + }, + "ApplicationGatewayFirewallRuleSetPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the web application firewall rule set." + }, + "ruleSetType": { + "type": "string", + "description": "The type of the web application firewall rule set." + }, + "ruleSetVersion": { + "type": "string", + "description": "The version of the web application firewall rule set type." + }, + "ruleGroups": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallRuleGroup" + }, + "description": "The rule groups of the web application firewall rule set." + } + }, + "required": [ + "ruleSetType", + "ruleSetVersion", + "ruleGroups" + ], + "description": "Properties of the web application firewall rule set." + }, + "ApplicationGatewayFirewallRuleGroup": { + "properties": { + "ruleGroupName": { + "type": "string", + "description": "The name of the web application firewall rule group." + }, + "description": { + "type": "string", + "description": "The description of the web application firewall rule group." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallRule" + }, + "description": "The rules of the web application firewall rule group." + } + }, + "required": [ + "ruleGroupName", + "rules" + ], + "description": "A web application firewall rule group." + }, + "ApplicationGatewayFirewallRule": { + "properties": { + "ruleId": { + "type": "integer", + "format": "int32", + "description": "The identifier of the web application firewall rule." + }, + "description": { + "type": "string", + "description": "The description of the web application firewall rule." + } + }, + "required": [ + "ruleId" + ], + "description": "A web application firewall rule." + }, + "ApplicationGatewayAvailableSslOptions": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayAvailableSslOptionsPropertiesFormat", + "description": "Properties of the application gateway available SSL options." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Response for ApplicationGatewayAvailableSslOptions API service call." + }, + "ApplicationGatewayAvailableSslOptionsPropertiesFormat": { + "properties": { + "predefinedPolicies": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of available Ssl predefined policy." + }, + "defaultPolicy": { + "$ref": "#/definitions/PolicyNameEnum", + "description": "Name of the Ssl predefined policy applied by default to application gateway." + }, + "availableCipherSuites": { + "type": "array", + "items": { + "$ref": "#/definitions/CipherSuitesEnum" + }, + "description": "List of available Ssl cipher suites." + }, + "availableProtocols": { + "type": "array", + "items": { + "$ref": "#/definitions/ProtocolsEnum" + }, + "description": "List of available Ssl protocols." + } + }, + "description": "Properties of ApplicationGatewayAvailableSslOptions." + }, + "ApplicationGatewayAvailableSslPredefinedPolicies": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewaySslPredefinedPolicy" + }, + "description": "List of available Ssl predefined policy." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ApplicationGatewayAvailableSslOptions API service call." + }, + "ApplicationGatewaySslPredefinedPolicy": { + "properties": { + "name": { + "type": "string", + "description": "Name of the Ssl predefined policy." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewaySslPredefinedPolicyPropertiesFormat", + "description": "Properties of the application gateway SSL predefined policy." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "An Ssl predefined policy." + }, + "ApplicationGatewaySslPredefinedPolicyPropertiesFormat": { + "properties": { + "cipherSuites": { + "type": "array", + "items": { + "$ref": "#/definitions/CipherSuitesEnum" + }, + "description": "Ssl cipher suites to be enabled in the specified order for application gateway." + }, + "minProtocolVersion": { + "$ref": "#/definitions/ProtocolsEnum", + "description": "Minimum version of Ssl protocol to be supported on application gateway." + } + }, + "description": "Properties of ApplicationGatewaySslPredefinedPolicy." + }, + "ApplicationGatewayCustomError": { + "properties": { + "statusCode": { + "type": "string", + "description": "Status code of the application gateway customer error.", + "enum": [ + "HttpStatus403", + "HttpStatus502" + ], + "x-ms-enum": { + "name": "ApplicationGatewayCustomErrorStatusCode", + "modelAsString": true + } + }, + "customErrorPageUrl": { + "type": "string", + "description": "Error page URL of the application gateway customer error." + } + }, + "description": "Customer error of an application gateway." + }, + "PolicyNameEnum": { + "type": "string", + "description": "Ssl predefined policy name enums.", + "enum": [ + "AppGwSslPolicy20150501", + "AppGwSslPolicy20170401", + "AppGwSslPolicy20170401S" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslPolicyName", + "modelAsString": true + } + }, + "ProtocolsEnum": { + "type": "string", + "description": "Ssl protocol enums.", + "enum": [ + "TLSv1_0", + "TLSv1_1", + "TLSv1_2" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslProtocol", + "modelAsString": true + } + }, + "CipherSuitesEnum": { + "type": "string", + "description": "Ssl cipher suites enums.", + "enum": [ + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_3DES_EDE_CBC_SHA", + "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslCipherSuite", + "modelAsString": true + } + }, + "RedirectTypeEnum": { + "type": "string", + "description": "Redirect type enum.", + "enum": [ + "Permanent", + "Found", + "SeeOther", + "Temporary" + ], + "x-ms-enum": { + "name": "ApplicationGatewayRedirectType", + "modelAsString": true + } + }, + "ApplicationGatewayProtocol": { + "type": "string", + "description": "Application Gateway protocol.", + "enum": [ + "Http", + "Https" + ], + "x-ms-enum": { + "name": "ApplicationGatewayProtocol", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/applicationSecurityGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/applicationSecurityGroup.json new file mode 100644 index 000000000000..b7d9cb6a59b8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/applicationSecurityGroup.json @@ -0,0 +1,406 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationSecurityGroups/{applicationSecurityGroupName}": { + "delete": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_Delete", + "description": "Deletes the specified application security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete application security group": { + "$ref": "./examples/ApplicationSecurityGroupDelete.json" + } + } + }, + "get": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_Get", + "description": "Gets information about the specified application security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the specified application security group resource.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get application security group": { + "$ref": "./examples/ApplicationSecurityGroupGet.json" + } + } + }, + "put": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_CreateOrUpdate", + "description": "Creates or updates an application security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application security group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + }, + "description": "Parameters supplied to the create or update ApplicationSecurityGroup operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting application security group resource.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting application security group resource.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create application security group": { + "$ref": "./examples/ApplicationSecurityGroupCreate.json" + } + } + }, + "patch": { + "tags": [ + "applicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_UpdateTags", + "description": "Updates an application security group's tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application security group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update application security group tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ApplicationSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update application security group tags": { + "$ref": "./examples/ApplicationSecurityGroupUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationSecurityGroups": { + "get": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_ListAll", + "description": "Gets all application security groups in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of application security group resources.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List all application security groups": { + "$ref": "./examples/ApplicationSecurityGroupListAll.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationSecurityGroups": { + "get": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_List", + "description": "Gets all the application security groups in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of application security group resources.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List load balancers in resource group": { + "$ref": "./examples/ApplicationSecurityGroupList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ApplicationSecurityGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationSecurityGroupPropertiesFormat", + "description": "Properties of the application security group." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "An application security group in a resource group." + }, + "ApplicationSecurityGroupPropertiesFormat": { + "properties": { + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the application security group resource. It uniquely identifies a resource, even if the user changes its name or migrate the resource across subscriptions or resource groups." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application security group resource." + } + }, + "description": "Application security group properties." + }, + "ApplicationSecurityGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationSecurityGroup" + }, + "description": "A list of application security groups." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "A list of application security groups." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/availableDelegations.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/availableDelegations.json new file mode 100644 index 000000000000..2b9c329eb36a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/availableDelegations.json @@ -0,0 +1,178 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/locations/{location}/availableDelegations": { + "get": { + "operationId": "AvailableDelegations_List", + "description": "Gets all of the available subnet delegations for this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the possible delegations for a subnet in this subscription in the region.", + "schema": { + "$ref": "#/definitions/AvailableDelegationsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available delegations": { + "$ref": "./examples/AvailableDelegationsSubscriptionGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/availableDelegations": { + "get": { + "operationId": "AvailableResourceGroupDelegations_List", + "description": "Gets all of the available subnet delegations for this resource group in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the possible delegations for a subnet in this subscription in the region.", + "schema": { + "$ref": "#/definitions/AvailableDelegationsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available delegations in the resource group": { + "$ref": "./examples/AvailableDelegationsResourceGroupGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AvailableDelegationsResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailableDelegation" + }, + "description": "An array of available delegations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "An array of available delegations." + }, + "AvailableDelegation": { + "properties": { + "name": { + "type": "string", + "description": "The name of the AvailableDelegation resource." + }, + "id": { + "type": "string", + "description": "A unique identifier of the AvailableDelegation resource." + }, + "type": { + "type": "string", + "description": "Resource type." + }, + "serviceName": { + "type": "string", + "description": "The name of the service and resource." + }, + "actions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The actions permitted to the service upon delegation." + } + }, + "description": "The serviceName of an AvailableDelegation indicates a possible delegation for a subnet." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/availableServiceAliases.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/availableServiceAliases.json new file mode 100644 index 000000000000..b46b1617c955 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/availableServiceAliases.json @@ -0,0 +1,171 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/locations/{location}/availableServiceAliases": { + "get": { + "operationId": "AvailableServiceAliases_List", + "description": "Gets all available service aliases for this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all available service aliases for the subscription in the region.", + "schema": { + "$ref": "#/definitions/AvailableServiceAliasesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available service aliases": { + "$ref": "./examples/AvailableServiceAliasesList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/availableServiceAliases": { + "get": { + "operationId": "AvailableServiceAliases_ListByResourceGroup", + "description": "Gets all available service aliases for this resource group in this region.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all available service aliases for the resource group in the region.", + "schema": { + "$ref": "#/definitions/AvailableServiceAliasesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available service aliases in the resource group": { + "$ref": "./examples/AvailableServiceAliasesListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AvailableServiceAlias": { + "properties": { + "name": { + "type": "string", + "description": "The name of the service alias." + }, + "id": { + "type": "string", + "description": "The ID of the service alias." + }, + "type": { + "type": "string", + "description": "The type of the resource." + }, + "resourceName": { + "type": "string", + "description": "The resource name of the service alias." + } + }, + "description": "The available service alias." + }, + "AvailableServiceAliasesResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailableServiceAlias" + }, + "description": "An array of available service aliases." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "An array of available service aliases." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/azureFirewall.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/azureFirewall.json new file mode 100644 index 000000000000..0f6b7317713c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/azureFirewall.json @@ -0,0 +1,1064 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/azureFirewalls/{azureFirewallName}": { + "delete": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_Delete", + "description": "Deletes the specified Azure Firewall.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "azureFirewallName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Firewall." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Azure Firewall": { + "$ref": "./examples/AzureFirewallDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_Get", + "description": "Gets the specified Azure Firewall.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "azureFirewallName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Firewall." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns an AzureFirewall resource.", + "schema": { + "$ref": "#/definitions/AzureFirewall" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Azure Firewall": { + "$ref": "./examples/AzureFirewallGet.json" + }, + "Get Azure Firewall With Zones": { + "$ref": "./examples/AzureFirewallGetWithZones.json" + }, + "Get Azure Firewall With management subnet": { + "$ref": "./examples/AzureFirewallGetWithMgmtSubnet.json" + }, + "Get Azure Firewall With Additional Properties": { + "$ref": "./examples/AzureFirewallGetWithAdditionalProperties.json" + }, + "Get Azure Firewall With IpGroups": { + "$ref": "./examples/AzureFirewallGetWithIpGroups.json" + } + } + }, + "put": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_CreateOrUpdate", + "description": "Creates or updates the specified Azure Firewall.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "azureFirewallName", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 56, + "description": "The name of the Azure Firewall." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AzureFirewall" + }, + "description": "Parameters supplied to the create or update Azure Firewall operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting AzureFirewall resource.", + "schema": { + "$ref": "#/definitions/AzureFirewall" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting AzureFirewall resource.", + "schema": { + "$ref": "#/definitions/AzureFirewall" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Azure Firewall": { + "$ref": "./examples/AzureFirewallPut.json" + }, + "Create Azure Firewall With Zones": { + "$ref": "./examples/AzureFirewallPutWithZones.json" + }, + "Create Azure Firewall With management subnet": { + "$ref": "./examples/AzureFirewallPutWithMgmtSubnet.json" + }, + "Create Azure Firewall in virtual Hub": { + "$ref": "./examples/AzureFirewallPutInHub.json" + }, + "Create Azure Firewall With Additional Properties": { + "$ref": "./examples/AzureFirewallPutWithAdditionalProperties.json" + }, + "Create Azure Firewall With IpGroups": { + "$ref": "./examples/AzureFirewallPutWithIpGroups.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_UpdateTags", + "description": "Updates tags of an Azure Firewall resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "azureFirewallName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Firewall." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update azure firewall tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting AzureFirewall resource.", + "schema": { + "$ref": "#/definitions/AzureFirewall" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update Azure Firewall Tags": { + "$ref": "./examples/AzureFirewallUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/azureFirewalls": { + "get": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_List", + "description": "Lists all Azure Firewalls in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of AzureFirewall resources.", + "schema": { + "$ref": "#/definitions/AzureFirewallListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Azure Firewalls for a given resource group": { + "$ref": "./examples/AzureFirewallListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/azureFirewalls": { + "get": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_ListAll", + "description": "Gets all the Azure Firewalls in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of AzureFirewall resources.", + "schema": { + "$ref": "#/definitions/AzureFirewallListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Azure Firewalls for a given subscription": { + "$ref": "./examples/AzureFirewallListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AzureFirewallIPConfigurationPropertiesFormat": { + "properties": { + "privateIPAddress": { + "type": "string", + "readOnly": true, + "description": "The Firewall Internal Load Balancer IP to be used as the next hop in User Defined Routes." + }, + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the subnet resource. This resource must be named 'AzureFirewallSubnet' or 'AzureFirewallManagementSubnet'." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the PublicIP resource. This field is a mandatory input if subnet is not null." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the Azure firewall IP configuration resource." + } + }, + "description": "Properties of IP configuration of an Azure Firewall." + }, + "AzureFirewallIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallIPConfigurationPropertiesFormat", + "description": "Properties of the azure firewall IP configuration." + }, + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration of an Azure Firewall." + }, + "AzureFirewallPublicIPAddress": { + "properties": { + "address": { + "type": "string", + "description": "Public IP Address value." + } + }, + "description": "Public IP Address associated with azure firewall." + }, + "AzureFirewallIpGroups": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Resource ID." + }, + "changeNumber": { + "type": "string", + "readOnly": true, + "description": "The iteration number." + } + }, + "description": "IpGroups associated with azure firewall." + }, + "HubIPAddresses": { + "properties": { + "publicIPAddresses": { + "type": "array", + "description": "List of Public IP addresses associated with azure firewall.", + "items": { + "$ref": "#/definitions/AzureFirewallPublicIPAddress" + } + }, + "privateIPAddress": { + "type": "string", + "description": "Private IP Address associated with azure firewall." + } + }, + "description": "IP addresses associated with azure firewall." + }, + "IpGroups": { + "type": "array", + "description": "List of IpGroups associated with azure firewall.", + "items": { + "$ref": "#/definitions/AzureFirewallIpGroups" + } + }, + "AzureFirewallPropertiesFormat": { + "properties": { + "applicationRuleCollections": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallApplicationRuleCollection" + }, + "description": "Collection of application rule collections used by Azure Firewall." + }, + "natRuleCollections": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNatRuleCollection" + }, + "description": "Collection of NAT rule collections used by Azure Firewall." + }, + "networkRuleCollections": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNetworkRuleCollection" + }, + "description": "Collection of network rule collections used by Azure Firewall." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallIPConfiguration" + }, + "description": "IP configuration of the Azure Firewall resource." + }, + "managementIpConfiguration": { + "$ref": "#/definitions/AzureFirewallIPConfiguration", + "description": "IP configuration of the Azure Firewall used for management traffic." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the Azure firewall resource." + }, + "threatIntelMode": { + "description": "The operation mode for Threat Intelligence.", + "$ref": "#/definitions/AzureFirewallThreatIntelMode" + }, + "virtualHub": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The virtualHub to which the firewall belongs." + }, + "firewallPolicy": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The firewallPolicy associated with this azure firewall." + }, + "hubIpAddresses": { + "readOnly": true, + "description": "IP addresses associated with AzureFirewall.", + "$ref": "#/definitions/HubIPAddresses" + }, + "ipGroups": { + "readOnly": true, + "description": "IpGroups associated with AzureFirewall.", + "$ref": "#/definitions/IpGroups" + }, + "sku": { + "description": "The Azure Firewall Resource SKU.", + "$ref": "#/definitions/AzureFirewallSku" + }, + "additionalProperties": { + "$ref": "#/definitions/AzureFirewallAdditionalProperties", + "description": "The additional properties used to further config this azure firewall." + } + }, + "description": "Properties of the Azure Firewall." + }, + "AzureFirewall": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallPropertiesFormat", + "description": "Properties of the azure firewall." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting where the resource needs to come from." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Azure Firewall resource." + }, + "AzureFirewallListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewall" + }, + "description": "List of Azure Firewalls in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListAzureFirewalls API service call." + }, + "AzureFirewallThreatIntelMode": { + "type": "string", + "description": "The operation mode for Threat Intel.", + "enum": [ + "Alert", + "Deny", + "Off" + ], + "x-ms-enum": { + "name": "AzureFirewallThreatIntelMode", + "modelAsString": true + } + }, + "AzureFirewallAdditionalProperties": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The additional properties of azure firewall." + }, + "AzureFirewallApplicationRuleCollectionPropertiesFormat": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the application rule collection resource." + }, + "action": { + "$ref": "#/definitions/AzureFirewallRCAction", + "description": "The action type of a rule collection." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallApplicationRule" + }, + "description": "Collection of rules used by a application rule collection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application rule collection resource." + } + }, + "description": "Properties of the application rule collection." + }, + "AzureFirewallApplicationRuleCollection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallApplicationRuleCollectionPropertiesFormat", + "description": "Properties of the azure firewall application rule collection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the Azure firewall. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Application rule collection resource." + }, + "AzureFirewallApplicationRuleProtocol": { + "properties": { + "protocolType": { + "description": "Protocol type.", + "$ref": "#/definitions/AzureFirewallApplicationRuleProtocolType" + }, + "port": { + "type": "integer", + "format": "int32", + "maximum": 64000, + "exclusiveMaximum": false, + "minimum": 0, + "exclusiveMinimum": false, + "description": "Port number for the protocol, cannot be greater than 64000. This field is optional." + } + }, + "description": "Properties of the application rule protocol." + }, + "AzureFirewallApplicationRule": { + "properties": { + "name": { + "type": "string", + "description": "Name of the application rule." + }, + "description": { + "type": "string", + "description": "Description of the rule." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "protocols": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallApplicationRuleProtocol" + }, + "description": "Array of ApplicationRuleProtocols." + }, + "targetFqdns": { + "type": "array", + "description": "List of FQDNs for this rule.", + "items": { + "type": "string" + } + }, + "fqdnTags": { + "type": "array", + "description": "List of FQDN Tags for this rule.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + } + }, + "description": "Properties of an application rule." + }, + "AzureFirewallNatRuleCollectionProperties": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the NAT rule collection resource." + }, + "action": { + "$ref": "#/definitions/AzureFirewallNatRCAction", + "description": "The action type of a NAT rule collection." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNatRule" + }, + "description": "Collection of rules used by a NAT rule collection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the NAT rule collection resource." + } + }, + "description": "Properties of the NAT rule collection." + }, + "AzureFirewallNatRuleCollection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallNatRuleCollectionProperties", + "description": "Properties of the azure firewall NAT rule collection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the Azure firewall. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "NAT rule collection resource." + }, + "AzureFirewallNatRule": { + "properties": { + "name": { + "type": "string", + "description": "Name of the NAT rule." + }, + "description": { + "type": "string", + "description": "Description of the rule." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses for this rule. Supports IP ranges, prefixes, and service tags.", + "items": { + "type": "string" + } + }, + "destinationPorts": { + "type": "array", + "description": "List of destination ports.", + "items": { + "type": "string" + } + }, + "protocols": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNetworkRuleProtocol" + }, + "description": "Array of AzureFirewallNetworkRuleProtocols applicable to this NAT rule." + }, + "translatedAddress": { + "type": "string", + "description": "The translated address for this NAT rule." + }, + "translatedPort": { + "type": "string", + "description": "The translated port for this NAT rule." + }, + "translatedFqdn": { + "type": "string", + "description": "The translated FQDN for this NAT rule." + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + } + }, + "description": "Properties of a NAT rule." + }, + "AzureFirewallNatRCAction": { + "properties": { + "type": { + "description": "The type of action.", + "$ref": "#/definitions/AzureFirewallNatRCActionType" + } + }, + "description": "AzureFirewall NAT Rule Collection Action." + }, + "AzureFirewallNatRCActionType": { + "type": "string", + "description": "The action type of a NAT rule collection.", + "enum": [ + "Snat", + "Dnat" + ], + "x-ms-enum": { + "name": "AzureFirewallNatRCActionType", + "modelAsString": true + } + }, + "AzureFirewallNetworkRuleCollectionPropertiesFormat": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the network rule collection resource." + }, + "action": { + "$ref": "#/definitions/AzureFirewallRCAction", + "description": "The action type of a rule collection." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNetworkRule" + }, + "description": "Collection of rules used by a network rule collection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network rule collection resource." + } + }, + "description": "Properties of the network rule collection." + }, + "AzureFirewallNetworkRuleCollection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallNetworkRuleCollectionPropertiesFormat", + "description": "Properties of the azure firewall network rule collection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the Azure firewall. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Network rule collection resource." + }, + "AzureFirewallNetworkRule": { + "properties": { + "name": { + "type": "string", + "description": "Name of the network rule." + }, + "description": { + "type": "string", + "description": "Description of the rule." + }, + "protocols": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNetworkRuleProtocol" + }, + "description": "Array of AzureFirewallNetworkRuleProtocols." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses.", + "items": { + "type": "string" + } + }, + "destinationPorts": { + "type": "array", + "description": "List of destination ports.", + "items": { + "type": "string" + } + }, + "destinationFqdns": { + "type": "array", + "description": "List of destination FQDNs.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + }, + "destinationIpGroups": { + "type": "array", + "description": "List of destination IpGroups for this rule.", + "items": { + "type": "string" + } + } + }, + "description": "Properties of the network rule." + }, + "AzureFirewallRCAction": { + "properties": { + "type": { + "description": "The type of action.", + "$ref": "#/definitions/AzureFirewallRCActionType" + } + }, + "description": "Properties of the AzureFirewallRCAction." + }, + "AzureFirewallRCActionType": { + "type": "string", + "description": "The action type of a rule collection.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "AzureFirewallRCActionType", + "modelAsString": true + } + }, + "AzureFirewallNetworkRuleProtocol": { + "type": "string", + "description": "The protocol of a Network Rule resource.", + "enum": [ + "TCP", + "UDP", + "Any", + "ICMP" + ], + "x-ms-enum": { + "name": "AzureFirewallNetworkRuleProtocol", + "modelAsString": true + } + }, + "AzureFirewallApplicationRuleProtocolType": { + "type": "string", + "description": "The protocol type of a Application Rule resource.", + "enum": [ + "Http", + "Https", + "Mssql" + ], + "x-ms-enum": { + "name": "AzureFirewallApplicationRuleProtocolType", + "modelAsString": true + } + }, + "AzureFirewallSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of an Azure Firewall SKU.", + "enum": [ + "AZFW_VNet", + "AZFW_Hub" + ], + "x-ms-enum": { + "name": "AzureFirewallSkuName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "Tier of an Azure Firewall.", + "enum": [ + "Standard" + ], + "x-ms-enum": { + "name": "AzureFirewallSkuTier", + "modelAsString": true + } + } + }, + "description": "SKU of an Azure Firewall." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/azureFirewallFqdnTag.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/azureFirewallFqdnTag.json new file mode 100644 index 000000000000..98a41345389b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/azureFirewallFqdnTag.json @@ -0,0 +1,130 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/azureFirewallFqdnTags": { + "get": { + "tags": [ + "AzureFirewallFqdnTags" + ], + "operationId": "AzureFirewallFqdnTags_ListAll", + "description": "Gets all the Azure Firewall FQDN Tags in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Azure Firewall FQDN Tag resources.", + "schema": { + "$ref": "#/definitions/AzureFirewallFqdnTagListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Azure Firewall FQDN Tags for a given subscription": { + "$ref": "./examples/AzureFirewallFqdnTagsListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AzureFirewallFqdnTagPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the Azure firewall FQDN tag resource." + }, + "fqdnTagName": { + "type": "string", + "readOnly": true, + "description": "The name of this FQDN Tag." + } + }, + "description": "Azure Firewall FQDN Tag Properties." + }, + "AzureFirewallFqdnTag": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallFqdnTagPropertiesFormat", + "description": "Properties of the azure firewall FQDN tag." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Azure Firewall FQDN Tag Resource." + }, + "AzureFirewallFqdnTagListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallFqdnTag" + }, + "description": "List of Azure Firewall FQDN Tags in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListAzureFirewallFqdnTags API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/bastionHost.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/bastionHost.json new file mode 100644 index 000000000000..d60afe9f6162 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/bastionHost.json @@ -0,0 +1,869 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}": { + "delete": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_Delete", + "description": "Deletes the specified Bastion Host.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Bastion Host": { + "$ref": "./examples/BastionHostDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_Get", + "description": "Gets the specified Bastion Host.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns an BastionHost resource.", + "schema": { + "$ref": "#/definitions/BastionHost" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Bastion Host": { + "$ref": "./examples/BastionHostGet.json" + } + } + }, + "put": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_CreateOrUpdate", + "description": "Creates or updates the specified Bastion Host.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BastionHost" + }, + "description": "Parameters supplied to the create or update Bastion Host operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting Bastion Host resource.", + "schema": { + "$ref": "#/definitions/BastionHost" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting Bastion Host resource.", + "schema": { + "$ref": "#/definitions/BastionHost" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Bastion Host": { + "$ref": "./examples/BastionHostPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/bastionHosts": { + "get": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_List", + "description": "Lists all Bastion Hosts in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Bastion Host resources.", + "schema": { + "$ref": "#/definitions/BastionHostListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Bastion Hosts for a given subscription": { + "$ref": "./examples/BastionHostListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts": { + "get": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_ListByResourceGroup", + "description": "Lists all Bastion Hosts in a resource group.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of BastionHost resources.", + "schema": { + "$ref": "#/definitions/BastionHostListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Bastion Hosts for a given resource group": { + "$ref": "./examples/BastionHostListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/createShareableLinks": { + "post": { + "tags": [ + "BastionHosts", + "BastionShareableLink" + ], + "operationId": "PutBastionShareableLink", + "description": "Creates a Bastion Shareable Links for all the VMs specified in the request.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BastionShareableLinkRequest" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of shareable links for the specified VMs, giving appropriate error messages as needed.", + "schema": { + "$ref": "#/definitions/BastionShareableLinkListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Create Bastion Shareable Links for the request VMs": { + "$ref": "./examples/BastionShareableLinkCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/deleteShareableLinks": { + "post": { + "tags": [ + "BastionHosts", + "BastionShareableLink" + ], + "operationId": "DeleteBastionShareableLink", + "description": "Deletes the Bastion Shareable Links for all the VMs specified in the request.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BastionShareableLinkRequest" + } + ], + "responses": { + "200": { + "description": "Success. The operation deleted the BastionShareableLinks associated with the VMs, if they existed. No return body." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete Bastion Shareable Links for the request VMs": { + "$ref": "./examples/BastionShareableLinkDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/getShareableLinks": { + "post": { + "tags": [ + "BastionHosts", + "BastionShareableLink" + ], + "operationId": "GetBastionShareableLink", + "description": "Return the Bastion Shareable Links for all the VMs specified in the request.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BastionShareableLinkRequest" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of shareable links for the specified VMs, giving appropriate error messages as needed.", + "schema": { + "$ref": "#/definitions/BastionShareableLinkListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Returns the Bastion Shareable Links for the request VMs": { + "$ref": "./examples/BastionShareableLinkGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/getActiveSessions": { + "post": { + "tags": [ + "BastionHosts" + ], + "operationId": "GetActiveSessions", + "description": "Returns the list of currently active sessions on the Bastion.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of active sessions on the Bastion.", + "schema": { + "$ref": "#/definitions/BastionActiveSessionListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Returns a list of currently active sessions on the Bastion": { + "$ref": "./examples/BastionSessionsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/disconnectActiveSessions": { + "post": { + "tags": [ + "BastionHosts" + ], + "operationId": "DisconnectActiveSessions", + "description": "Returns the list of currently active sessions on the Bastion.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/SessionIdsParameters" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of sessions with the state of deleted/failed/not found.", + "schema": { + "$ref": "#/definitions/BastionSessionDeleteResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Deletes the specified active session": { + "$ref": "./examples/BastionSessionDelete.json" + } + } + } + } + }, + "definitions": { + "BastionHostIPConfigurationPropertiesFormat": { + "properties": { + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference of the subnet resource." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference of the PublicIP resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the bastion host IP configuration resource." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "Private IP allocation method." + } + }, + "required": [ + "subnet", + "publicIPAddress" + ], + "description": "Properties of IP configuration of an Bastion Host." + }, + "BastionHostIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BastionHostIPConfigurationPropertiesFormat", + "description": "Represents the ip configuration associated with the resource." + }, + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Ip configuration type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration of an Bastion Host." + }, + "BastionHostPropertiesFormat": { + "properties": { + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionHostIPConfiguration" + }, + "description": "IP configuration of the Bastion Host resource." + }, + "dnsName": { + "type": "string", + "description": "FQDN for the endpoint on which bastion host is accessible." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the bastion host resource." + } + }, + "description": "Properties of the Bastion Host." + }, + "BastionHost": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BastionHostPropertiesFormat", + "description": "Represents the bastion host resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Bastion Host resource." + }, + "BastionHostListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionHost" + }, + "description": "List of Bastion Hosts in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListBastionHosts API service call." + }, + "BastionShareableLink": { + "properties": { + "vm": { + "$ref": "#/definitions/VM", + "description": "Reference of the virtual machine resource." + }, + "bsl": { + "type": "string", + "readOnly": true, + "description": "The unique Bastion Shareable Link to the virtual machine." + }, + "createdAt": { + "type": "string", + "readOnly": true, + "description": "The time when the link was created." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "Optional field indicating the warning or error message related to the vm in case of partial failure." + } + }, + "required": [ + "vm" + ], + "description": "Bastion Shareable Link." + }, + "BastionShareableLinkListRequest": { + "properties": { + "vms": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionShareableLink" + }, + "description": "List of VM references." + } + }, + "description": "Post request for all the Bastion Shareable Link endpoints." + }, + "BastionShareableLinkListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionShareableLink" + }, + "description": "List of Bastion Shareable Links for the request." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for all the Bastion Shareable Link endpoints." + }, + "BastionActiveSession": { + "properties": { + "sessionId": { + "type": "string", + "readOnly": true, + "description": "A unique id for the session." + }, + "startTime": { + "type": "object", + "readOnly": true, + "description": "The time when the session started." + }, + "targetSubscriptionId": { + "type": "string", + "readOnly": true, + "description": "The subscription id for the target virtual machine." + }, + "resourceType": { + "type": "string", + "readOnly": true, + "description": "The type of the resource." + }, + "targetHostName": { + "type": "string", + "readOnly": true, + "description": "The host name of the target." + }, + "targetResourceGroup": { + "type": "string", + "readOnly": true, + "description": "The resource group of the target." + }, + "userName": { + "type": "string", + "readOnly": true, + "description": "The user name who is active on this session." + }, + "targetIpAddress": { + "type": "string", + "readOnly": true, + "description": "The IP Address of the target." + }, + "protocol": { + "type": "string", + "readOnly": true, + "description": "The protocol used to connect to the target.", + "enum": [ + "SSH", + "RDP" + ], + "x-ms-enum": { + "name": "BastionConnectProtocol", + "modelAsString": true + } + }, + "targetResourceId": { + "type": "string", + "readOnly": true, + "description": "The resource id of the target." + }, + "sessionDurationInMins": { + "type": "number", + "readOnly": true, + "description": "Duration in mins the session has been active." + } + }, + "description": "The session detail for a target." + }, + "BastionActiveSessionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionActiveSession" + }, + "description": "List of active sessions on the bastion." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for GetActiveSessions." + }, + "BastionSessionState": { + "properties": { + "sessionId": { + "type": "string", + "readOnly": true, + "description": "A unique id for the session." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "Used for extra information." + }, + "state": { + "type": "string", + "readOnly": true, + "description": "The state of the session. Disconnected/Failed/NotFound." + } + }, + "description": "The session state detail for a target." + }, + "BastionSessionDeleteResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionSessionState" + }, + "description": "List of sessions with their corresponding state." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for DisconnectActiveSessions." + }, + "VM": { + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Describes a Virtual Machine." + }, + "SessionIds": { + "properties": { + "sessionIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of session IDs." + } + }, + "description": "List of session IDs." + } + }, + "parameters": { + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "BastionShareableLinkRequest": { + "name": "bslRequest", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BastionShareableLinkListRequest" + }, + "description": "Post request for all the Bastion Shareable Link endpoints.", + "x-ms-parameter-location": "method" + }, + "BastionHostName": { + "name": "bastionHostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Bastion Host.", + "x-ms-parameter-location": "method" + }, + "SessionIdsParameters": { + "name": "sessionIds", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SessionIds" + }, + "description": "The list of sessionids to disconnect.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/checkDnsAvailability.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/checkDnsAvailability.json new file mode 100644 index 000000000000..8625e0f4e7cb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/checkDnsAvailability.json @@ -0,0 +1,96 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/locations/{location}/CheckDnsNameAvailability": { + "get": { + "operationId": "CheckDnsNameAvailability", + "description": "Checks whether a domain name in the cloudapp.azure.com zone is available for use.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "domainNameLabel", + "in": "query", + "required": true, + "type": "string", + "description": "The domain name to be verified. It must conform to the following regular expression: ^[a-z][a-z0-9-]{1,61}[a-z0-9]$." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns whether the DNS name is available.", + "schema": { + "$ref": "#/definitions/DnsNameAvailabilityResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Check Dns Name Availability": { + "$ref": "./examples/CheckDnsNameAvailability.json" + } + } + } + } + }, + "definitions": { + "DnsNameAvailabilityResult": { + "properties": { + "available": { + "type": "boolean", + "description": "Domain availability (True/False)." + } + }, + "description": "Response for the CheckDnsNameAvailability API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/ddosCustomPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/ddosCustomPolicy.json new file mode 100644 index 000000000000..6e2e1672657b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/ddosCustomPolicy.json @@ -0,0 +1,364 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosCustomPolicies/{ddosCustomPolicyName}": { + "delete": { + "tags": [ + "ddosCustomPolicies" + ], + "operationId": "DdosCustomPolicies_Delete", + "description": "Deletes the specified DDoS custom policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosCustomPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS custom policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete DDoS custom policy": { + "$ref": "./examples/DdosCustomPolicyDelete.json" + } + } + }, + "get": { + "tags": [ + "ddosCustomPolicies" + ], + "operationId": "DdosCustomPolicies_Get", + "description": "Gets information about the specified DDoS custom policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosCustomPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS custom policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the specified DDoS custom policy resource.", + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get DDoS custom policy": { + "$ref": "./examples/DdosCustomPolicyGet.json" + } + } + }, + "put": { + "tags": [ + "ddosCustomPolicies" + ], + "operationId": "DdosCustomPolicies_CreateOrUpdate", + "description": "Creates or updates a DDoS custom policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosCustomPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS custom policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + }, + "description": "Parameters supplied to the create or update operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting DDoS custom policy resource.", + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting DDoS custom policy resource.", + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create DDoS custom policy": { + "$ref": "./examples/DdosCustomPolicyCreate.json" + } + } + }, + "patch": { + "tags": [ + "ddosCustomPolicies" + ], + "operationId": "DdosCustomPolicies_UpdateTags", + "description": "Update a DDoS custom policy tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosCustomPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS custom policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update DDoS custom policy resource tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting DDoS custom policy resource.", + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DDoS Custom policy Update tags": { + "$ref": "./examples/DdosCustomPolicyUpdateTags.json" + } + } + } + } + }, + "definitions": { + "DdosCustomPolicy": { + "description": "A DDoS custom policy in a resource group.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DdosCustomPolicyPropertiesFormat", + "description": "Properties of the DDoS custom policy." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "DdosCustomPolicyPropertiesFormat": { + "properties": { + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the DDoS custom policy resource. It uniquely identifies the resource, even if the user changes its name or migrate the resource across subscriptions or resource groups." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the DDoS custom policy resource." + }, + "publicIPAddresses": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The list of public IPs associated with the DDoS custom policy resource. This list is read-only." + }, + "protocolCustomSettings": { + "readOnly": false, + "type": "array", + "items": { + "$ref": "#/definitions/ProtocolCustomSettingsFormat" + }, + "description": "The protocol-specific DDoS policy customization parameters." + } + }, + "description": "DDoS custom policy properties." + }, + "ProtocolCustomSettingsFormat": { + "properties": { + "protocol": { + "readOnly": false, + "type": "string", + "enum": [ + "Tcp", + "Udp", + "Syn" + ], + "x-ms-enum": { + "name": "DdosCustomPolicyProtocol", + "modelAsString": true + }, + "description": "The protocol for which the DDoS protection policy is being customized." + }, + "triggerRateOverride": { + "readOnly": false, + "type": "string", + "description": "The customized DDoS protection trigger rate." + }, + "sourceRateOverride": { + "readOnly": false, + "type": "string", + "description": "The customized DDoS protection source rate." + }, + "triggerSensitivityOverride": { + "readOnly": false, + "type": "string", + "enum": [ + "Relaxed", + "Low", + "Default", + "High" + ], + "x-ms-enum": { + "name": "DdosCustomPolicyTriggerSensitivityOverride", + "modelAsString": true + }, + "description": "The customized DDoS protection trigger rate sensitivity degrees. High: Trigger rate set with most sensitivity w.r.t. normal traffic. Default: Trigger rate set with moderate sensitivity w.r.t. normal traffic. Low: Trigger rate set with less sensitivity w.r.t. normal traffic. Relaxed: Trigger rate set with least sensitivity w.r.t. normal traffic." + } + }, + "description": "DDoS custom policy properties." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/ddosProtectionPlan.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/ddosProtectionPlan.json new file mode 100644 index 000000000000..8644d402b56b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/ddosProtectionPlan.json @@ -0,0 +1,436 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosProtectionPlans/{ddosProtectionPlanName}": { + "delete": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_Delete", + "description": "Deletes the specified DDoS protection plan.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosProtectionPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS protection plan." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete DDoS protection plan": { + "$ref": "./examples/DdosProtectionPlanDelete.json" + } + } + }, + "get": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_Get", + "description": "Gets information about the specified DDoS protection plan.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosProtectionPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS protection plan." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the specified DDoS protection plan resource.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get DDoS protection plan": { + "$ref": "./examples/DdosProtectionPlanGet.json" + } + } + }, + "put": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_CreateOrUpdate", + "description": "Creates or updates a DDoS protection plan.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosProtectionPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS protection plan." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + }, + "description": "Parameters supplied to the create or update operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting DDoS protection plan resource.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting DDoS protection plan resource.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create DDoS protection plan": { + "$ref": "./examples/DdosProtectionPlanCreate.json" + } + } + }, + "patch": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_UpdateTags", + "description": "Update a DDoS protection plan tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosProtectionPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS protection plan." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to the update DDoS protection plan resource tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting DDoS protection plan resource.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DDoS protection plan Update tags": { + "$ref": "./examples/DdosProtectionPlanUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ddosProtectionPlans": { + "get": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_List", + "description": "Gets all DDoS protection plans in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of DDoS protection plan resources.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlanListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List all DDoS protection plans": { + "$ref": "./examples/DdosProtectionPlanListAll.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosProtectionPlans": { + "get": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_ListByResourceGroup", + "description": "Gets all the DDoS protection plans in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of DDoS protection plan resources.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlanListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List DDoS protection plans in resource group": { + "$ref": "./examples/DdosProtectionPlanList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "DdosProtectionPlan": { + "description": "A DDoS protection plan in a resource group.", + "x-ms-azure-resource": true, + "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." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DdosProtectionPlanPropertiesFormat", + "description": "Properties of the DDoS protection plan." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + } + }, + "DdosProtectionPlanPropertiesFormat": { + "properties": { + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the DDoS protection plan resource. It uniquely identifies the resource, even if the user changes its name or migrate the resource across subscriptions or resource groups." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the DDoS protection plan resource." + }, + "virtualNetworks": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The list of virtual networks associated with the DDoS protection plan resource. This list is read-only." + } + }, + "description": "DDoS protection plan properties." + }, + "DdosProtectionPlanListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DdosProtectionPlan" + }, + "description": "A list of DDoS protection plans." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "A list of DDoS protection plans." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/endpointService.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/endpointService.json new file mode 100644 index 000000000000..bc18a85a9687 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/endpointService.json @@ -0,0 +1,119 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/locations/{location}/virtualNetworkAvailableEndpointServices": { + "get": { + "operationId": "AvailableEndpointServices_List", + "description": "List what values of endpoint services are available for use.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location to check available endpoint services." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns list of available endpoint services.", + "schema": { + "$ref": "#/definitions/EndpointServicesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "EndpointServicesList": { + "$ref": "./examples/EndpointServicesList.json" + } + } + } + } + }, + "definitions": { + "EndpointServicesListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EndpointServiceResult" + }, + "description": "List of available endpoint services in a region." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListAvailableEndpointServices API service call." + }, + "EndpointServiceResult": { + "properties": { + "name": { + "type": "string", + "description": "Name of the endpoint service.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "Type of the endpoint service.", + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Endpoint service." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableRequestHeadersGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableRequestHeadersGet.json new file mode 100644 index 000000000000..891b2762b1be --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableRequestHeadersGet.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "72f988bf-86f1-41af-91ab-2d7cd0dddd4" + }, + "responses": { + "200": { + "body": [ + "Accept-Charset" + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableResponseHeadersGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableResponseHeadersGet.json new file mode 100644 index 000000000000..76cb23520cea --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableResponseHeadersGet.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "72f988bf-86f1-41af-91ab-2d7cd0dddd4" + }, + "responses": { + "200": { + "body": [ + "Access-Control-Allow-Origin" + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableServerVariablesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableServerVariablesGet.json new file mode 100644 index 000000000000..6201e2f63d4c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableServerVariablesGet.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "72f988bf-86f1-41af-91ab-2d7cd0dddd4" + }, + "responses": { + "200": { + "body": [ + "request_query" + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableSslOptionsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableSslOptionsGet.json new file mode 100644 index 000000000000..a5b866b70c5c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableSslOptionsGet.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "default", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default", + "type": "Microsoft.Network/ApplicationGatewayAvailableSslOptions", + "properties": { + "predefinedPolicies": [ + { + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20150501" + }, + { + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401" + }, + { + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401S" + } + ], + "defaultPolicy": "AppGwSslPolicy20150501", + "availableCipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_3DES_EDE_CBC_SHA", + "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA" + ], + "availableProtocols": [ + "TLSv1_0", + "TLSv1_1", + "TLSv1_2" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json new file mode 100644 index 000000000000..6684ec03aa5c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "AppGwSslPolicy20150501", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20150501", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_3DES_EDE_CBC_SHA", + "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_0" + } + }, + { + "name": "AppGwSslPolicy20170401", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_1" + } + }, + { + "name": "AppGwSslPolicy20170401S", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401S", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_2" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json new file mode 100644 index 000000000000..42a41ec168c9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "predefinedPolicyName": "AppGwSslPolicy20150501" + }, + "responses": { + "200": { + "body": { + "name": "AppGwSslPolicy20150501", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20150501", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_3DES_EDE_CBC_SHA", + "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_0" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json new file mode 100644 index 000000000000..e093487ed2af --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "OWASP_3.0", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/applicationGatewayAvailableWafRuleSets/", + "type": "Microsoft.Network/applicationGatewayAvailableWafRuleSets", + "properties": { + "provisioningState": "Succeeded", + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0", + "ruleGroups": [ + { + "ruleGroupName": "General", + "description": "", + "rules": [ + { + "ruleId": 200004, + "description": "Possible Multipart Unmatched Boundary." + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayBackendHealthGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayBackendHealthGet.json new file mode 100644 index 000000000000..e605d530f168 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayBackendHealthGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "appgw", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": { + "body": { + "backendAddressPools": [ + { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFAnalyticsPool" + }, + "backendHttpSettingsCollection": [ + { + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + }, + "servers": [ + { + "address": "10.220.1.8", + "health": "Up" + } + ] + } + ] + }, + { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFPool" + }, + "backendHttpSettingsCollection": [ + { + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + }, + "servers": [ + { + "address": "10.220.1.4", + "health": "Up" + }, + { + "address": "10.220.1.5", + "health": "Up" + } + ] + } + ] + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayBackendHealthTest.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayBackendHealthTest.json new file mode 100644 index 000000000000..546f77db5543 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayBackendHealthTest.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw", + "probeRequest": { + "protocol": "Http", + "pickHostNameFromBackendHttpSettings": true, + "path": "/", + "timeout": 30, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFAnalyticsPool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + } + } + }, + "responses": { + "200": { + "body": { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFAnalyticsPool" + }, + "backendHealthHttpSettings": { + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + }, + "servers": [ + { + "address": "10.220.1.4", + "health": "Up" + }, + { + "address": "10.220.1.5", + "health": "Up" + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayCreate.json new file mode 100644 index 000000000000..934609b5ff46 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayCreate.json @@ -0,0 +1,745 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw", + "parameters": { + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "location": "eastus", + "properties": { + "sku": { + "name": "Standard_v2", + "tier": "Standard_v2", + "capacity": 3 + }, + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "properties": { + "data": "****", + "password": "****" + } + }, + { + "name": "sslcert2", + "properties": { + "keyVaultSecretId": "https://kv/secret" + } + } + ], + "trustedRootCertificates": [ + { + "name": "rootcert", + "properties": { + "data": "****" + } + }, + { + "name": "rootcert1", + "properties": { + "keyVaultSecretId": "https://kv/secret" + } + } + ], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "properties": { + "port": 443 + } + }, + { + "name": "appgwfp80", + "properties": { + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "properties": { + "backendAddresses": [ + { + "ipAddress": "10.0.1.1" + }, + { + "ipAddress": "10.0.1.2" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "properties": { + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "properties": { + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "properties": { + "paths": [ + "/api", + "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "properties": { + "ruleType": "Basic", + "priority": 10, + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "properties": { + "ruleType": "PathBasedRouting", + "priority": 20, + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "properties": { + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "ruleSequence": 102, + "conditions": [ + { + "variable": "http_req_Authorization", + "pattern": "^Bearer", + "ignoreCase": true, + "negate": false + } + ], + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_add_x_forwarded_for_proxy}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ], + "urlConfiguration": { + "modifiedPath": "/abc" + } + } + } + ] + } + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "name": "appgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/gatewayIPConfigurations/appgwipc", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "*****" + } + } + ], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp", + "properties": { + "provisioningState": "Succeeded", + "port": 443 + } + }, + { + "name": "appgwfp80", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1", + "properties": { + "provisioningState": "Succeeded", + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1/pathRules/apiPaths", + "properties": { + "provisioningState": "Succeeded", + "paths": [ + "/api", + "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwrule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwPathBasedRule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "PathBasedRouting", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1", + "properties": { + "provisioningState": "Succeeded", + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "ruleSequence": 102, + "conditions": [ + { + "variable": "http_req_Authorization", + "pattern": "^Bearer", + "ignoreCase": true, + "negate": false + } + ], + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_remote-addr}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ], + "urlConfiguration": { + "modifiedPath": "/abc", + "reroute": true + } + } + } + ] + } + } + ], + "probes": [] + } + } + }, + "200": { + "body": { + "name": "appgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/gatewayIPConfigurations/appgwipc", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "*****" + } + } + ], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp", + "properties": { + "provisioningState": "Succeeded", + "port": 443 + } + }, + { + "name": "appgwfp80", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1", + "properties": { + "provisioningState": "Succeeded", + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1/pathRules/apiPaths", + "properties": { + "provisioningState": "Succeeded", + "paths": [ + "/api", + "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwrule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwPathBasedRule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "PathBasedRouting", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1", + "properties": { + "provisioningState": "Succeeded", + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "ruleSequence": 102, + "conditions": [ + { + "variable": "http_req_Authorization", + "pattern": "^Bearer", + "ignoreCase": true, + "negate": false + } + ], + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_remote-addr}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ], + "urlConfiguration": { + "modifiedPath": "/abc", + "modifiedQueryString": "x=y&a=b" + } + } + } + ] + } + } + ], + "probes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayDelete.json new file mode 100644 index 000000000000..d1bb80926bc9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "202": {}, + "204": {}, + "200": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayGet.json new file mode 100644 index 000000000000..5809f5bfcc88 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayGet.json @@ -0,0 +1,259 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": { + "body": { + "name": "appgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/gatewayIPConfigurations/appgwipc", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "*****" + } + } + ], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp", + "properties": { + "provisioningState": "Succeeded", + "port": 443 + } + }, + { + "name": "appgwfp80", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1", + "properties": { + "provisioningState": "Succeeded", + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1/pathRules/apiPaths", + "properties": { + "provisioningState": "Succeeded", + "paths": [ + "/api", + "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwrule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "priority": 10, + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwPathBasedRule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "PathBasedRouting", + "priority": 20, + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1", + "properties": { + "provisioningState": "Succeeded", + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "ruleSequence": 102, + "conditions": [ + { + "variable": "http_req_Authorization", + "pattern": "^Bearer", + "ignoreCase": true, + "negate": false + } + ], + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_remote-addr}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ], + "urlConfiguration": { + "modifiedPath": "/abc", + "modifiedQueryString": "x=y&a=b", + "reroute": false + } + } + } + ] + } + } + ], + "probes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayList.json new file mode 100644 index 000000000000..139076dbae05 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayList.json @@ -0,0 +1,125 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "properties": { + "data": "base64-pfxData", + "password": "pass1" + } + } + ], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "properties": { + "port": 443 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "properties": { + "backendAddresses": [ + { + "ipAddress": "10.0.1.1" + }, + { + "ipAddress": "10.0.1.2" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "properties": { + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "properties": { + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayListAll.json new file mode 100644 index 000000000000..fac0214a1fc1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayListAll.json @@ -0,0 +1,124 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "properties": { + "data": "base64-pfxData", + "password": "pass1" + } + } + ], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "properties": { + "port": 443 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "properties": { + "backendAddresses": [ + { + "ipAddress": "10.0.1.1" + }, + { + "ipAddress": "10.0.1.2" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "properties": { + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "properties": { + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayStart.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayStart.json new file mode 100644 index 000000000000..a422470dac13 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayStart.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayStop.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayStop.json new file mode 100644 index 000000000000..a422470dac13 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayStop.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayUpdateTags.json new file mode 100644 index 000000000000..6aa6ab22415d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationGatewayUpdateTags.json @@ -0,0 +1,148 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "AppGw", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "AppGw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw", + "type": "Microsoft.Network/applicationGateways", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "sku": { + "name": "Standard_Small", + "tier": "Standard", + "capacity": 2 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "GatewayIp01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/gatewayIPConfigurations/GatewayIp01", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/subnet1" + } + } + } + ], + "sslCertificates": [], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "FrontEndConfig01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendIPConfigurations/FrontEndConfig01", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/publicIp1" + } + } + } + ], + "frontendPorts": [ + { + "name": "FrontEndPort01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendPorts/FrontEndPort01", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "Pool01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendAddressPools/Pool01", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [ + { + "ipAddress": "10.10.10.1" + }, + { + "ipAddress": "10.10.10.2" + }, + { + "ipAddress": "10.10.10.3" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "PoolSetting01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendHttpSettingsCollection/PoolSetting01", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "pickHostNameFromBackendAddress": false, + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "listener1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/httpListeners/listener1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendIPConfigurations/FrontEndConfig01" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendPorts/FrontEndPort01" + }, + "protocol": "Http", + "requireServerNameIndication": false + } + } + ], + "urlPathMaps": [], + "requestRoutingRules": [ + { + "name": "Rule01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/requestRoutingRules/Rule01", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/httpListeners/listener1" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendAddressPools/Pool01" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendHttpSettingsCollection/PoolSetting01" + } + } + } + ], + "probes": [], + "redirectConfigurations": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupCreate.json new file mode 100644 index 000000000000..40de58c947a0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupCreate.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg", + "parameters": { + "location": "westus", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + }, + "201": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupDelete.json new file mode 100644 index 000000000000..39f82551839b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupGet.json new file mode 100644 index 000000000000..b4aeb4b546a2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg" + }, + "responses": { + "200": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupList.json new file mode 100644 index 000000000000..ec2cbbf1dc34 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupList.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg1", + "name": "asg1", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg2", + "name": "asg2", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupListAll.json new file mode 100644 index 000000000000..478750ac412e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupListAll.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg1", + "name": "asg1", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg2", + "name": "asg2", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupUpdateTags.json new file mode 100644 index 000000000000..0a45140a6c62 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ApplicationSecurityGroupUpdateTags.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg", + "location": "westus", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AutoApprovedPrivateLinkServicesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AutoApprovedPrivateLinkServicesGet.json new file mode 100644 index 000000000000..166e81f66f16 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AutoApprovedPrivateLinkServicesGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "location": "regionName", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1" + }, + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2" + }, + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls3" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json new file mode 100644 index 000000000000..71172ee50e6c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "location": "regionName", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1" + }, + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2" + }, + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls3" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailableDelegationsResourceGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailableDelegationsResourceGroupGet.json new file mode 100644 index 000000000000..d26c4fe503c8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailableDelegationsResourceGroupGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "location": "westcentralus", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Provider.resourceType", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/availableDelegations/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availableDelegations", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [ + "Microsoft.Network/resource/action" + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailableDelegationsSubscriptionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailableDelegationsSubscriptionGet.json new file mode 100644 index 000000000000..e82ba76e7318 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailableDelegationsSubscriptionGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "location": "westcentralus", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Provider.resourceType", + "id": "/subscriptions/subId/providers/Microsoft.Network/availableDelegations/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availableDelegations", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [ + "Microsoft.Network/resource/action" + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailablePrivateEndpointTypesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailablePrivateEndpointTypesGet.json new file mode 100644 index 000000000000..7b5a5a2fc6d3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailablePrivateEndpointTypesGet.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "location": "regionName", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/providers/Microsoft.Network/availablePrivateEndpointTypes/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availablePrivateEndpointTypes", + "resourceName": "Microsoft.Provider/resourceType" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailablePrivateEndpointTypesResourceGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailablePrivateEndpointTypesResourceGroupGet.json new file mode 100644 index 000000000000..f074874fd186 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailablePrivateEndpointTypesResourceGroupGet.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "location": "regionName", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/availablePrivateEndpointTypes/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availablePrivateEndpointTypes", + "resourceName": "Microsoft.Provider/resourceType" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailableServiceAliasesList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailableServiceAliasesList.json new file mode 100644 index 000000000000..97d60f20cc49 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailableServiceAliasesList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "location": "westcentralus", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "servicesAzure", + "id": "/subscriptions/subId/providers/Microsoft.Network/AvailableServiceAliases/servicesAzure", + "type": "Microsoft.Network/AvailableServiceAliases", + "resourceName": "/services/Azure" + }, + { + "name": "servicesAzureManagedInstance", + "id": "/subscriptions/subId/providers/Microsoft.Network/AvailableServiceAliases/servicesAzureManagedInstance", + "type": "Microsoft.Network/AvailableServiceAliases", + "resourceName": "/services/Azure/ManagedInstance" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailableServiceAliasesListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailableServiceAliasesListByResourceGroup.json new file mode 100644 index 000000000000..b6b60c643f86 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AvailableServiceAliasesListByResourceGroup.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "location": "westcentralus", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "servicesAzure", + "id": "/subscriptions/subId/providers/Microsoft.Network/AvailableServiceAliases/servicesAzure", + "type": "Microsoft.Network/AvailableServiceAliases", + "resourceName": "/services/Azure" + }, + { + "name": "servicesAzureManagedInstance", + "id": "/subscriptions/subId/providers/Microsoft.Network/AvailableServiceAliases/servicesAzureManagedInstance", + "type": "Microsoft.Network/AvailableServiceAliases", + "resourceName": "/services/Azure/ManagedInstance" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallDelete.json new file mode 100644 index 000000000000..df081c05ed16 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallFqdnTagsListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallFqdnTagsListBySubscription.json new file mode 100644 index 000000000000..793d233e3907 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallFqdnTagsListBySubscription.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "azfwfqdntag", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewallFqdnTags/azfwfqdntag", + "type": "Microsoft.Network/azureFirewallFqdnTags", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "fqdnTagName": "azfwfqdntag" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGet.json new file mode 100644 index 000000000000..c87f737744aa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGet.json @@ -0,0 +1,177 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGetWithAdditionalProperties.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGetWithAdditionalProperties.json new file mode 100644 index 000000000000..09f9180d4be4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGetWithAdditionalProperties.json @@ -0,0 +1,179 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGetWithIpGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGetWithIpGroups.json new file mode 100644 index 000000000000..4f57293ced6d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGetWithIpGroups.json @@ -0,0 +1,189 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups2" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups3" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [ + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "changeNumber": "5" + }, + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups2", + "changeNumber": "4" + }, + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups3", + "changeNumber": "1" + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGetWithMgmtSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGetWithMgmtSubnet.json new file mode 100644 index 000000000000..fac0e16f1ba9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGetWithMgmtSubnet.json @@ -0,0 +1,190 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "managementIpConfiguration": { + "name": "azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallManagementSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/managementPipName" + } + } + }, + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGetWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGetWithZones.json new file mode 100644 index 000000000000..5d1a0eba9317 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallGetWithZones.json @@ -0,0 +1,181 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US 2", + "zones": [ + "1", + "2", + "3" + ], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallListByResourceGroup.json new file mode 100644 index 000000000000..c8c9051db441 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallListByResourceGroup.json @@ -0,0 +1,193 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "managementIpConfiguration": { + "name": "azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallManagementSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/managementPipName" + } + } + }, + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallListBySubscription.json new file mode 100644 index 000000000000..a7fc25d6cdcd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallListBySubscription.json @@ -0,0 +1,192 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "managementIpConfiguration": { + "name": "azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallManagementSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/managementPipName" + } + } + }, + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPut.json new file mode 100644 index 000000000000..f17c4eae9ddf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPut.json @@ -0,0 +1,497 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedPort": "880", + "translatedFqdn": "internalhttpserver" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "protocols": [ + "TCP" + ], + "destinationFqdns": [ + "www.amazon.com" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": {} + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutInHub.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutInHub.json new file mode 100644 index 000000000000..86d36cff145d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutInHub.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_Hub", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "firewallPolicy": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/policy1" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_Hub", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "firewallPolicy": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/policy1" + }, + "hubIpAddresses": { + "publicIPAddresses": [ + { + "address": "13.73.240.12" + } + ], + "privateIPAddress": "10.0.0.0" + }, + "additionalProperties": {} + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_Hub", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "firewallPolicy": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/policy1" + }, + "hubIpAddresses": { + "publicIPAddresses": [ + { + "address": "13.73.240.12" + } + ], + "privateIPAddress": "10.0.0.0" + }, + "ipGroups": [], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutWithAdditionalProperties.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutWithAdditionalProperties.json new file mode 100644 index 000000000000..aeeeca38daeb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutWithAdditionalProperties.json @@ -0,0 +1,507 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedPort": "880", + "translatedFqdn": "internalhttpserver" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "protocols": [ + "TCP" + ], + "destinationFqdns": [ + "www.amazon.com" + ] + } + ] + } + } + ], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutWithIpGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutWithIpGroups.json new file mode 100644 index 000000000000..3233e639db6c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutWithIpGroups.json @@ -0,0 +1,505 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedPort": "880", + "translatedFqdn": "internalhttpserver" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "protocols": [ + "TCP" + ], + "destinationFqdns": [ + "www.amazon.com" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups2" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [ + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "changeNumber": "5" + }, + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups2", + "changeNumber": "4" + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutWithMgmtSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutWithMgmtSubnet.json new file mode 100644 index 000000000000..3adf8f2b8683 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutWithMgmtSubnet.json @@ -0,0 +1,507 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "managementIpConfiguration": { + "name": "azureFirewallMgmtIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallManagementSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/managementPipName" + } + } + }, + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedPort": "880", + "translatedFqdn": "internalhttpserver" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "protocols": [ + "TCP" + ], + "destinationFqdns": [ + "www.amazon.com" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutWithZones.json new file mode 100644 index 000000000000..2f947a45e61e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallPutWithZones.json @@ -0,0 +1,509 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "location": "West US 2", + "tags": { + "key1": "value1" + }, + "zones": [ + "1", + "2", + "3" + ], + "properties": { + "threatIntelMode": "Alert", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US 2", + "zones": [ + "1", + "2", + "3" + ], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": {} + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US 2", + "zones": [ + "1", + "2", + "3" + ], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallUpdateTags.json new file mode 100644 index 000000000000..5f2f369fa47b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/AzureFirewallUpdateTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "azfwtest", + "azureFirewallName": "fw1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "fw1", + "id": "/subscriptions/subid/resourceGroups/azfwtest/providers/Microsoft.Network/azureFirewalls/fw1", + "type": "Microsoft.Network/azureFirewalls", + "location": "brazilsouth", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostDelete.json new file mode 100644 index 000000000000..7bd532ad91e6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostGet.json new file mode 100644 index 000000000000..4c9e90bc106a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostGet.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant'" + }, + "responses": { + "200": { + "body": { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostListByResourceGroup.json new file mode 100644 index 000000000000..2b3d4847fd84 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostListByResourceGroup.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostListBySubscription.json new file mode 100644 index 000000000000..a4a72aca4796 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostListBySubscription.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostPut.json new file mode 100644 index 000000000000..1f209646b43b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionHostPut.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant'", + "parameters": { + "properties": { + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + }, + "201": { + "body": { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionSessionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionSessionDelete.json new file mode 100644 index 000000000000..64ae93924d2b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionSessionDelete.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "sessionIds": [ + "session1", + "session2", + "session3" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sessionId": "session1", + "message": "session session1 invalidated!", + "state": "Disconnected" + }, + { + "sessionId": "session2", + "message": "session session2 could not be disconnected!", + "state": "Failed" + }, + { + "sessionId": "session3", + "message": "session session3 not found!", + "state": "NotFound" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionSessionsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionSessionsList.json new file mode 100644 index 000000000000..23b15b7ca9f3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionSessionsList.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sessionId": "sessionId", + "startTime": "2019-1-1T12:00:00.0000Z", + "targetSubscriptionId": "subid", + "resourceType": "VM", + "targetHostName": "vm01", + "targetResourceGroup": "rg1", + "userName": "user", + "targetIpAddress": "1.1.1.1", + "protocol": "SSH", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm01", + "sessionDurationInMins": 0.0 + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionShareableLinkCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionShareableLinkCreate.json new file mode 100644 index 000000000000..f150dcb70b7a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionShareableLinkCreate.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "bslRequest": { + "vms": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + } + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm1", + "createdAt": "2019-10-18T12:00:00.0000Z" + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm2", + "createdAt": "2019-10-17T12:00:00.0000Z" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionShareableLinkDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionShareableLinkDelete.json new file mode 100644 index 000000000000..fc69c76527ac --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionShareableLinkDelete.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "bslRequest": { + "vms": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + } + } + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionShareableLinkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionShareableLinkGet.json new file mode 100644 index 000000000000..225c9fd034bd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/BastionShareableLinkGet.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "bslRequest": { + "vms": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + } + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm1", + "createdAt": "2019-10-18T12:00:00.0000Z" + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm2", + "createdAt": "2019-10-17T12:00:00.0000Z" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/CheckDnsNameAvailability.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/CheckDnsNameAvailability.json new file mode 100644 index 000000000000..c2e133844bd9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/CheckDnsNameAvailability.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "location": "westus", + "domainNameLabel": "testdns" + }, + "responses": { + "200": { + "body": { + "available": false + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/CheckPrivateLinkServiceVisibility.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/CheckPrivateLinkServiceVisibility.json new file mode 100644 index 000000000000..20d242f7e96f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/CheckPrivateLinkServiceVisibility.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "location": "westus", + "parameters": { + "privateLinkServiceAlias": "mypls.00000000-0000-0000-0000-000000000000.azure.privatelinkservice" + } + }, + "responses": { + "200": { + "body": { + "visible": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json new file mode 100644 index 000000000000..d1cd2b0973e1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "location": "westus", + "resourceGroupName": "rg1", + "parameters": { + "privateLinkServiceAlias": "mypls.00000000-0000-0000-0000-000000000000.azure.privatelinkservice" + } + }, + "responses": { + "200": { + "body": { + "visible": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosCustomPolicyCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosCustomPolicyCreate.json new file mode 100644 index 000000000000..8142531c8f5d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosCustomPolicyCreate.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy", + "parameters": { + "location": "centraluseuap", + "properties": { + "protocolCustomSettings": [ + { + "protocol": "Tcp" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [], + "protocolCustomSettings": [ + { + "protocol": "Tcp", + "triggerRateOverride": "20000" + } + ] + } + } + }, + "201": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [], + "protocolCustomSettings": [ + { + "protocol": "Tcp", + "triggerRateOverride": "20000" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosCustomPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosCustomPolicyDelete.json new file mode 100644 index 000000000000..59a9aef833fb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosCustomPolicyDelete.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy", + "parameters": { + "properties": {} + } + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosCustomPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosCustomPolicyGet.json new file mode 100644 index 000000000000..ef84d2397a11 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosCustomPolicyGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy" + }, + "responses": { + "200": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosCustomPolicyUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosCustomPolicyUpdateTags.json new file mode 100644 index 000000000000..18983c2007a1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosCustomPolicyUpdateTags.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [], + "protocolCustomSettings": [ + { + "protocol": "Tcp", + "triggerRateOverride": "20000" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanCreate.json new file mode 100644 index 000000000000..ec1ead2e4f1c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanCreate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan", + "parameters": { + "location": "westus", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [] + } + } + }, + "201": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanDelete.json new file mode 100644 index 000000000000..1a7c3103b23d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanGet.json new file mode 100644 index 000000000000..56c4847b2547 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan" + }, + "responses": { + "200": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanList.json new file mode 100644 index 000000000000..bc710ef3dbb2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanList.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan1", + "name": "plan1", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan2", + "name": "plan2", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanListAll.json new file mode 100644 index 000000000000..518309f25b88 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanListAll.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan1", + "name": "plan1", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet1" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan2", + "name": "plan2", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet3" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanUpdateTags.json new file mode 100644 index 000000000000..3dd3fd594ec1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DdosProtectionPlanUpdateTags.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DefaultSecurityRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DefaultSecurityRuleGet.json new file mode 100644 index 000000000000..a7991927d862 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DefaultSecurityRuleGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "networkSecurityGroupName": "nsg1", + "defaultSecurityRuleName": "AllowVnetInBound" + }, + "responses": { + "200": { + "body": { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DefaultSecurityRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DefaultSecurityRuleList.json new file mode 100644 index 000000000000..600d95a3b96f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/DefaultSecurityRuleList.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "networkSecurityGroupName": "nsg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/EndpointServicesList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/EndpointServicesList.json new file mode 100644 index 000000000000..f9edebe36def --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/EndpointServicesList.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Storage", + "id": "/subscriptions/subid/providers/Microsoft.Network/virtualNetworkEndpointServices/Microsoft.Storage", + "type": "Microsoft.Network/virtualNetworkEndpointServices" + }, + { + "name": "Microsoft.Sql", + "id": "/subscriptions/subid/providers/Microsoft.Network/virtualNetworkEndpointServices/Microsoft.Sql", + "type": "Microsoft.Network/virtualNetworkEndpointServices" + }, + { + "name": "Microsoft.AzureActiveDirectory", + "id": "/subscriptions/subid/providers/Microsoft.Network/virtualNetworkEndpointServices/Microsoft.AzureActiveDirectory", + "type": "Microsoft.Network/virtualNetworkEndpointServices" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitARPTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitARPTableList.json new file mode 100644 index 000000000000..43a103387652 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitARPTableList.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "peeringName": "peeringName", + "devicePath": "devicePath" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "age": 0, + "interface": "Microsoft", + "ipAddress": "IPAddress", + "macAddress": "macAddress" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitAuthorizationCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitAuthorizationCreate.json new file mode 100644 index 000000000000..0b5a6b7e1a29 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitAuthorizationCreate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "authorizationName": "authorizatinName", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "authorizationParameters": { + "properties": {} + } + }, + "responses": { + "201": { + "body": { + "name": "authorizationName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/authorizationName", + "etag": "W/\"e22dd4b2-4c24-44cf-b702-70a472b62914\"", + "properties": { + "provisioningState": "Updating", + "authorizationUseStatus": "Available" + } + } + }, + "200": { + "body": { + "name": "authorizationName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/authorizationName", + "etag": "W/\"e22dd4b2-4c24-44cf-b702-70a472b62914\"", + "properties": { + "provisioningState": "Updating", + "authorizationUseStatus": "Available" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitAuthorizationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitAuthorizationDelete.json new file mode 100644 index 000000000000..1799e45dfec9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitAuthorizationDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "authorizationName": "authorizationName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitAuthorizationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitAuthorizationGet.json new file mode 100644 index 000000000000..3fc9e7582793 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitAuthorizationGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "authorizationName": "authorizationName" + }, + "responses": { + "200": { + "body": { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authKey", + "authorizationUseStatus": "Available" + }, + "type": "Microsoft.Network/expressRouteCircuits/authorizations" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitAuthorizationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitAuthorizationList.json new file mode 100644 index 000000000000..006fce6a8172 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitAuthorizationList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authKey", + "authorizationUseStatus": "Available" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitConnectionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitConnectionCreate.json new file mode 100644 index 000000000000..c481942146de --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitConnectionCreate.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "connectionName": "circuitConnectionUSAUS", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering", + "type": "Microsoft.Network/expressRouteCircuits/peerings/connections", + "expressRouteCircuitConnectionParameters": { + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/29", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::/125" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::1/125", + "circuitConnectionStatus": "Connected" + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::1/125", + "circuitConnectionStatus": "Connected" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitConnectionDelete.json new file mode 100644 index 000000000000..72a960ec7252 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitConnectionDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering", + "connectionName": "circuitConnectionUSAUS", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitConnectionGet.json new file mode 100644 index 000000000000..628cd4c47d15 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitConnectionGet.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "connectionName": "circuitConnectionUSAUS", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::1/125", + "circuitConnectionStatus": "Connected" + } + }, + "type": "Microsoft.Network/expressRouteCircuits/peerings/connections" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitConnectionList.json new file mode 100644 index 000000000000..0129e01fdc9e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitConnectionList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::1/125", + "circuitConnectionStatus": "Connected" + } + } + }, + { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSEUR", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSEUR", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharckteurope/providers/Microsoft.Network/expressRouteCircuits/dedharcktams/peerings/AzurePrivatePeering" + }, + "addressPrefix": "20.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitCreate.json new file mode 100644 index 000000000000..ae841945de87 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitCreate.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "parameters": { + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + }, + "properties": { + "authorizations": [], + "peerings": [], + "allowClassicOperations": false, + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 200 + } + }, + "location": "Brazil South" + } + }, + "responses": { + "201": { + "body": { + "name": "circuitName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "Brazil South", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "serviceKey": "a1410692-0000-4ceb-b94a-b90b94d398d1", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + }, + "200": { + "body": { + "name": "circuitName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "Brazil South", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "serviceKey": "a1410692-0000-4ceb-b94a-b90b94d398d1", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json new file mode 100644 index 000000000000..a78f2c10ee1a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "type": "Microsoft.Network/expressRouteCircuits", + "circuitName": "expressRouteCircuit1", + "parameters": { + "location": "westus", + "sku": { + "name": "Premium_MeteredData", + "tier": "Premium", + "family": "MeteredData" + }, + "properties": { + "expressRoutePort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName" + }, + "bandwidthInGbps": 10 + } + } + }, + "responses": { + "200": { + "body": { + "name": "expressRouteCircuit1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/expressRouteCircuit1", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "expressRoutePort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName" + }, + "bandwidthInGbps": 10, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "20", + "serviceKey": "d281f746-ee01-4d00-8b0a-edec4833772b", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Premium_MeteredData", + "tier": "Premium", + "family": "MeteredData" + } + } + }, + "201": { + "body": { + "name": "expressRouteCircuit1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/expressRouteCircuit1", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "expressRoutePort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName" + }, + "bandwidthInGbps": 10, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "20", + "serviceKey": "d281f746-ee01-4d00-8b0a-edec4833772b", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Premium_MeteredData", + "tier": "Premium", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitDelete.json new file mode 100644 index 000000000000..be627a4e3f04 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitGet.json new file mode 100644 index 000000000000..3f32257cd06e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "circuitName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "serviceKey": "a1410692-0000-4ceb-b94a-b90b94d398d1", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitListByResourceGroup.json new file mode 100644 index 000000000000..fbb0554bee80 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitListByResourceGroup.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "circuitName1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "113", + "serviceKey": "a1410692-ed3b-4ceb-b94a-b90b95d398d1", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + }, + { + "name": "circuitName2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2/authorizations/MyAuthorization2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "", + "serviceKey": "6569625a-9ba4-498b-9719-14d778eef609", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitListBySubscription.json new file mode 100644 index 000000000000..4380c59bdb23 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitListBySubscription.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "circuitName1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "113", + "serviceKey": "a1410692-ed3b-4ceb-b94a-b90b95d398d1", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + }, + { + "name": "circuitName2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2/authorizations/MyAuthorization2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "", + "serviceKey": "6569625a-9ba4-498b-9719-14d778eef609", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringCreate.json new file mode 100644 index 000000000000..f4f1823a758e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringCreate.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "peeringParameters": { + "properties": { + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "vlanId": 200 + } + } + }, + "responses": { + "201": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + }, + "expressRouteConnection": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName" + } + } + } + }, + "200": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + }, + "expressRouteConnection": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringDelete.json new file mode 100644 index 000000000000..90271c98e31f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "peeringName": "peeringName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringGet.json new file mode 100644 index 000000000000..9dab5d5acea8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringGet.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "peeringName": "MicrosoftPeering" + }, + "responses": { + "200": { + "body": { + "name": "MicrosoftPeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/MicrosoftPeering", + "etag": "W/\"b2a25b98-2e6d-4d46-87f2-089de5f6fdf9\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "MicrosoftPeering", + "azureASN": 12076, + "peerASN": 100, + "primaryPeerAddressPrefix": "123.0.0.0/30", + "secondaryPeerAddressPrefix": "123.0.0.4/30", + "primaryAzurePort": "A51-TEST-06GMR-CIS-1-PRI-A", + "secondaryAzurePort": "A51-TEST-06GMR-CIS-2-SEC-A", + "state": "Enabled", + "vlanId": 300, + "gatewayManagerEtag": "103", + "lastModifiedBy": "Customer", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "123.1.0.0/24" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + }, + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "3FFE:FFFF:0:CD31::/120" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + } + }, + "routeFilter": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName" + } + }, + "type": "Microsoft.Network/expressRouteCircuits/peerings" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringList.json new file mode 100644 index 000000000000..95a5229976bf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringList.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "MicrosoftPeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/MicrosoftPeering", + "etag": "W/\"b2a25b98-2e6d-4d46-87f2-089de5f6fdf9\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "MicrosoftPeering", + "azureASN": 12076, + "peerASN": 100, + "primaryPeerAddressPrefix": "123.0.0.0/30", + "secondaryPeerAddressPrefix": "123.0.0.4/30", + "primaryAzurePort": "A51-TEST-06GMR-CIS-1-PRI-A", + "secondaryAzurePort": "A51-TEST-06GMR-CIS-2-SEC-A", + "state": "Enabled", + "vlanId": 300, + "gatewayManagerEtag": "103", + "lastModifiedBy": "Customer", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "123.1.0.0/24" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + }, + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "3FFE:FFFF:0:CD31::/120" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + } + }, + "expressRouteConnection": "" + } + }, + { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering", + "etag": "W/\"b2a25b98-2e6d-4d46-87f2-089de5f6fdf9\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 100, + "primaryPeerAddressPrefix": "10.0.0.0/30", + "secondaryPeerAddressPrefix": "10.0.0.4/30", + "primaryAzurePort": "A51-TEST-06GMR-CIS-1-PRI-A", + "secondaryAzurePort": "A51-TEST-06GMR-CIS-2-SEC-A", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "103", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + }, + "expressRouteConnection": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringStats.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringStats.json new file mode 100644 index 000000000000..e262254dc69a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitPeeringStats.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "peeringName": "peeringName" + }, + "responses": { + "200": { + "body": { + "primarybytesIn": 537408, + "primarybytesOut": 44032550, + "secondarybytesIn": 0, + "secondarybytesOut": 39002500 + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitRouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitRouteTableList.json new file mode 100644 index 000000000000..04fbe7a44a6b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitRouteTableList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "peeringName": "peeringName", + "devicePath": "devicePath" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "network": "", + "nextHop": "", + "locPrf": "", + "weight": 0, + "path": "" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitRouteTableSummaryList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitRouteTableSummaryList.json new file mode 100644 index 000000000000..be5d1826a86e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitRouteTableSummaryList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "peeringName": "peeringName", + "devicePath": "devicePath" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "neighbor": "100.65.171.1", + "v": 4, + "as": 9583, + "upDown": "never", + "statePfxRcd": "Idle" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitStats.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitStats.json new file mode 100644 index 000000000000..fa53c90e9f47 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitStats.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "primarybytesIn": 537408, + "primarybytesOut": 44032550, + "secondarybytesIn": 0, + "secondarybytesOut": 39002500 + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitUpdateTags.json new file mode 100644 index 000000000000..b7289dc024e0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCircuitUpdateTags.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "ertest", + "circuitName": "er1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "er1", + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "brazilsouth", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Failed", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 1000 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "", + "serviceKey": "0b392c2e-1e9d-46d7-b5e0-9ce90ca6b60c", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteConnectionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteConnectionCreate.json new file mode 100644 index 000000000000..2ff072bce2c5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteConnectionCreate.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "expressRouteGatewayName": "gateway-2", + "resourceGroupName": "resourceGroupName", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "connectionName": "connectionName", + "putExpressRouteConnectionParameters": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2/expressRouteConnections/connectionName", + "name": "connectionName", + "properties": { + "routingWeight": 2, + "authorizationKey": "authorizationKey", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 2 + } + } + }, + "201": { + "body": { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 2 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteConnectionDelete.json new file mode 100644 index 000000000000..4677f6f433ad --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "connectionName": "connectionName", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteConnectionGet.json new file mode 100644 index 000000000000..90eef103be87 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteConnectionGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "connectionName": "connectionName" + }, + "responses": { + "200": { + "body": { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 1 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteConnectionList.json new file mode 100644 index 000000000000..11519c3e7dce --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteConnectionList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "resourceGroupName": "resourceGroupName", + "expressRouteGatewayName": "expressRouteGatewayName", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 1 + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json new file mode 100644 index 000000000000..558ae0235f3e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "peeringParameters": { + "properties": { + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "vlanId": 200, + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-SiliconValley/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + }, + "200": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-Boydton1DC/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json new file mode 100644 index 000000000000..187aa0797aba --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json new file mode 100644 index 000000000000..dd2ba7ea0680 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-Boydton1DC/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json new file mode 100644 index 000000000000..8691d744576a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-SiliconValley/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionGet.json new file mode 100644 index 000000000000..6d0c7488adcc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "CrossConnection-SiliconValley", + "crossConnectionName": "" + }, + "responses": { + "200": { + "body": { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-SiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "etag": "W/\"c0e6477e-8150-4d4f-9bf6-bb10e6acb63a\"", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionList.json new file mode 100644 index 000000000000..ef7332304ed6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionList.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json new file mode 100644 index 000000000000..65e7ae7ab942 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "resourceGroupName": "CrossConnection-SiliconValley", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSilicon-Valley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionUpdate.json new file mode 100644 index 000000000000..317624f72c3b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionUpdate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "CrossConnection-SiliconValley", + "crossConnectionName": "", + "parameters": { + "properties": { + "serviceProviderProvisioningState": "NotProvisioned" + } + } + }, + "responses": { + "200": { + "body": { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionUpdateTags.json new file mode 100644 index 000000000000..416da5b1954b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionUpdateTags.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "CrossConnection-SiliconValley", + "crossConnectionName": "", + "crossConnectionParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "er1", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Failed", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionsArpTable.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionsArpTable.json new file mode 100644 index 000000000000..99a117d30a44 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionsArpTable.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "devicePath": "primary", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "age": 0, + "interface": "Microsoft", + "ipAddress": "192.116.14.254", + "macAddress": "885a.9269.9110" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionsRouteTable.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionsRouteTable.json new file mode 100644 index 000000000000..59f56d5562e0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionsRouteTable.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "devicePath": "primary", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "network": "10.6.0.0/16", + "nextHop": "10.6.1.12", + "locPrf": "", + "weight": 0, + "path": "65514" + }, + { + "network": "10.7.0.0/16", + "nextHop": "10.7.1.13", + "locPrf": "", + "weight": 0, + "path": "65514" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json new file mode 100644 index 000000000000..6dca4ff05f76 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "devicePath": "primary", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "neighbor": "10.6.1.112", + "asn": 65514, + "upDown": "1d14h", + "stateOrPrefixesReceived": "Active" + }, + { + "neighbor": "10.6.1.113", + "asn": 65514, + "upDown": "1d14h", + "stateOrPrefixesReceived": "1" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayCreate.json new file mode 100644 index 000000000000..3ec83c49917b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayCreate.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "expressRouteGatewayName": "gateway-2", + "subscriptionId": "subid", + "resourceGroupName": "resourceGroupName", + "api-version": "2019-12-01", + "putExpressRouteGatewayParameters": { + "location": "westus", + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupId/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 3 + } + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "gateway-2", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 3 + } + } + } + } + }, + "200": { + "body": { + "name": "gateway-2", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 3 + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayDelete.json new file mode 100644 index 000000000000..12ab19e13182 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayGet.json new file mode 100644 index 000000000000..a77d313ec846 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "expressRouteGatewayName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayListByResourceGroup.json new file mode 100644 index 000000000000..9ccf49db2c05 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayListByResourceGroup.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "resourceGroupName": "resourceGroupName", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "expressRouteGatewayName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 2 + } + }, + "expressRouteConnections": [ + { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "f28e9c99-78d8-4248-a855-c54cf6beb99d", + "routingWeight": 1, + "enableInternetSecurity": false + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayListBySubscription.json new file mode 100644 index 000000000000..8c657ea891ed --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteGatewayListBySubscription.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "expressRouteGatewayName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 2 + } + }, + "expressRouteConnections": [ + { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "f28e9c99-78d8-4248-a855-c54cf6beb99d", + "routingWeight": 1, + "enableInternetSecurity": false + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteLinkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteLinkGet.json new file mode 100644 index 000000000000..14e15cd0d8c3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteLinkGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "linkName": "linkName" + }, + "responses": { + "200": { + "body": { + "name": "linkName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/linkName", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteLinkList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteLinkList.json new file mode 100644 index 000000000000..7e6f051eae0b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteLinkList.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "name": "link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortCreate.json new file mode 100644 index 000000000000..2b70feefae2a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortCreate.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "parameters": { + "location": "westus", + "properties": { + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "encapsulation": "QinQ" + } + } + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + }, + "201": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortDelete.json new file mode 100644 index 000000000000..42897c8da575 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortGet.json new file mode 100644 index 000000000000..82f2e0b17317 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName" + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortList.json new file mode 100644 index 000000000000..5327ec53201f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortList.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortListByResourceGroup.json new file mode 100644 index 000000000000..305aa02f5295 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortListByResourceGroup.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-12-01", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortUpdateLink.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortUpdateLink.json new file mode 100644 index 000000000000..7bf815d3d308 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortUpdateLink.json @@ -0,0 +1,120 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "parameters": { + "location": "westus", + "properties": { + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "encapsulation": "QinQ", + "links": [ + { + "name": "link1", + "properties": { + "adminState": "Enabled" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Enabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + }, + "201": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Enabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortUpdateTags.json new file mode 100644 index 000000000000..b6434e4d082d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortUpdateTags.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortsLocationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortsLocationGet.json new file mode 100644 index 000000000000..199f964e8f6d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortsLocationGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-12-01", + "locationName": "locationName" + }, + "responses": { + "200": { + "body": { + "name": "locationName", + "id": "/subscriptions/subid/providers/Microsoft.Network/expressRoutePortsLocations/locationName", + "type": "Microsoft.Network/expressRoutePortsLocations", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "address": "123 Main Street, City, State, Zip", + "contact": "email@address.com", + "availableBandwidths": [ + { + "offerName": "100 Gbps", + "valueInGbps": 100 + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortsLocationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortsLocationList.json new file mode 100644 index 000000000000..1d82902ed26f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRoutePortsLocationList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "locationName", + "id": "/subscriptions/subid/providers/Microsoft.Network/expressRoutePortsLocations/locationName", + "type": "Microsoft.Network/expressRoutePortsLocations", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "address": "123 Main Street, City, State, Zip", + "contact": "email@address.com", + "availableBandwidths": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteProviderList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteProviderList.json new file mode 100644 index 000000000000..70ccdfd52ad2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ExpressRouteProviderList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "providerName", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/expressRouteServiceProviders/", + "type": "Microsoft.Network/expressRouteServiceProviders", + "properties": { + "provisioningState": "Succeeded", + "peeringLocations": [ + "peeringLocation1", + "peeringLocation2" + ], + "bandwidthsOffered": [ + { + "offerName": "50Mbps", + "valueInMbps": 50 + }, + { + "offerName": "100Mbps", + "valueInMbps": 100 + }, + { + "offerName": "200Mbps", + "valueInMbps": 200 + }, + { + "offerName": "500Mbps", + "valueInMbps": 500 + }, + { + "offerName": "1Gbps", + "valueInMbps": 1000 + }, + { + "offerName": "2Gbps", + "valueInMbps": 2000 + }, + { + "offerName": "5Gbps", + "valueInMbps": 5000 + }, + { + "offerName": "10Gbps", + "valueInMbps": 10000 + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyDelete.json new file mode 100644 index 000000000000..f4631688a51b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyGet.json new file mode 100644 index 000000000000..b94411feb943 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy" + }, + "responses": { + "200": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1" + } + ], + "firewalls": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyListByResourceGroup.json new file mode 100644 index 000000000000..302e4e2dd2ff --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyListByResourceGroup.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1" + } + ], + "firewalls": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyListBySubscription.json new file mode 100644 index 000000000000..459e7972d356 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyListBySubscription.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1" + } + ], + "firewalls": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyPut.json new file mode 100644 index 000000000000..0d18b0ba3b59 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyPut.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "threatIntelMode": "Alert" + } + } + }, + "responses": { + "200": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/rulegroup1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/rulegroup2" + } + ], + "firewalls": [] + } + } + }, + "201": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/rulegroup2" + } + ], + "firewalls": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupDelete.json new file mode 100644 index 000000000000..8bfab627e5ff --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "ruleGroupName": "ruleGroup1", + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupGet.json new file mode 100644 index 000000000000..733d24edc635 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupGet.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "ruleGroupName": "ruleGroup1", + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "priority": 200, + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupList.json new file mode 100644 index 000000000000..5bf4e04bdb71 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "name": "Example-Filter-Rule", + "ruleType": "FirewallPolicyFilterRule", + "priority": 120, + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "name": "network-condition-1", + "ruleConditionType": "NetworkRuleCondition", + "description": "Network rule condition", + "destinationAddresses": [ + "*" + ], + "sourceAddresses": [ + "10.1.25.0/24" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupPut.json new file mode 100644 index 000000000000..175e6247e508 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupPut.json @@ -0,0 +1,119 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy", + "ruleGroupName": "ruleGroup1", + "parameters": { + "properties": { + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + }, + "201": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupWithIpGroupsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupWithIpGroupsGet.json new file mode 100644 index 000000000000..ba197f2f4917 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupWithIpGroupsGet.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "ruleGroupName": "ruleGroup1", + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "priority": 200, + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ], + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupWithIpGroupsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupWithIpGroupsList.json new file mode 100644 index 000000000000..ad0029599886 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupWithIpGroupsList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "name": "Example-Filter-Rule", + "ruleType": "FirewallPolicyFilterRule", + "priority": 120, + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "name": "network-condition-1", + "ruleConditionType": "NetworkRuleCondition", + "description": "Network rule condition", + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupWithIpGroupsPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupWithIpGroupsPut.json new file mode 100644 index 000000000000..cb6d0150f140 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/FirewallPolicyRuleGroupWithIpGroupsPut.json @@ -0,0 +1,119 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy", + "ruleGroupName": "ruleGroup1", + "parameters": { + "properties": { + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ], + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ] + } + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ], + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ] + } + ] + } + ] + } + } + }, + "201": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ], + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json new file mode 100644 index 000000000000..d6e68c137c4b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualWANName": "wan1", + "vpnClientParams": { + "vpnServerConfigurationResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnconfig1", + "authenticationMethod": "EAPTLS" + } + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/GetVirtualWanVpnServerConfigurations.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/GetVirtualWanVpnServerConfigurations.json new file mode 100644 index 000000000000..f7116f6bed2b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/GetVirtualWanVpnServerConfigurations.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "virtualWANName": "wan1" + }, + "responses": { + "200": { + "description": "Request successful.", + "body": { + "vpnServerConfigurationResourceIds": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnconfig1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnconfig2" + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/HubVirtualNetworkConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/HubVirtualNetworkConnectionGet.json new file mode 100644 index 000000000000..03029c4fa0a9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/HubVirtualNetworkConnectionGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "connectionName": "connection1", + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/virtualHubVnetConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/HubVirtualNetworkConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/HubVirtualNetworkConnectionList.json new file mode 100644 index 000000000000..0e47eb413a43 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/HubVirtualNetworkConnectionList.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "connectionName": "connection1", + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/virtualHubVnetConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + }, + { + "name": "connection2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/virtualHubVnetConnections/connection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/InboundNatRuleCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/InboundNatRuleCreate.json new file mode 100644 index 000000000000..54e7cbc43b6c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/InboundNatRuleCreate.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1", + "inboundNatRuleName": "natRule1.1", + "inboundNatRuleParameters": { + "properties": { + "protocol": "Tcp", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "idleTimeoutInMinutes": 4, + "enableTcpReset": false, + "enableFloatingIP": false + } + } + }, + "responses": { + "200": { + "body": { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": false, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + }, + "201": { + "body": { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": false, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/InboundNatRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/InboundNatRuleDelete.json new file mode 100644 index 000000000000..e05a10077208 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/InboundNatRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1", + "inboundNatRuleName": "natRule1.1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/InboundNatRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/InboundNatRuleGet.json new file mode 100644 index 000000000000..b9a6dbe984a2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/InboundNatRuleGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1", + "inboundNatRuleName": "natRule1.1" + }, + "responses": { + "200": { + "body": { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": true, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/InboundNatRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/InboundNatRuleList.json new file mode 100644 index 000000000000..9ae1fd1be45a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/InboundNatRuleList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": true, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + }, + { + "name": "natRule1.3", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.3", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3392, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": true, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsCreate.json new file mode 100644 index 000000000000..992fe32acd2d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsCreate.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "myResourceGroup", + "ipGroupsName": "ipGroups1", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + }, + "201": { + "body": { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsDelete.json new file mode 100644 index 000000000000..b67eca2d9990 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "myResourceGroup", + "ipGroupsName": "ipGroups1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsGet.json new file mode 100644 index 000000000000..bfb888322232 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "myResourceGroup", + "ipGroupsName": "ipGroups1" + }, + "responses": { + "200": { + "body": { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsListByResourceGroup.json new file mode 100644 index 000000000000..626d232ea24b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsListByResourceGroup.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "myResourceGroup" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + }, + { + "name": "ipGroups2", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups", + "type": "Microsoft.Network/ipGroups", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "14.64.39.16/32", + "41.74.146.80/31", + "42.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsListBySubscription.json new file mode 100644 index 000000000000..60350aefb9b5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsListBySubscription.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "iptag1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup1/ipGroups", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + }, + { + "name": "iptag2", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup2/ipGroups", + "type": "Microsoft.Network/ipGroups", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "14.64.39.16/32", + "41.74.146.80/31", + "42.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsUpdateTags.json new file mode 100644 index 000000000000..7a2f328c9bf1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/IpGroupsUpdateTags.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "ipGroupsName": "ipGroups1", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-12-01", + "subscriptionId": "subId", + "parameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerBackendAddressPoolGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerBackendAddressPoolGet.json new file mode 100644 index 000000000000..56172c470873 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerBackendAddressPoolGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "backendAddressPoolName": "backend", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "name": "backend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/backend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "backendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic/ipConfigurations/default-ip-config" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerBackendAddressPoolList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerBackendAddressPoolList.json new file mode 100644 index 000000000000..3a9d83c1f3a5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerBackendAddressPoolList.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "backend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/backend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "backendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic/ipConfigurations/default-ip-config" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreate.json new file mode 100644 index 000000000000..2c69896e5aa1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreate.json @@ -0,0 +1,339 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "inboundNatPools": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreateStandardSku.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreateStandardSku.json new file mode 100644 index 000000000000..c78babcac5d4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreateStandardSku.json @@ -0,0 +1,339 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreateWithInboundNatPool.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreateWithInboundNatPool.json new file mode 100644 index 000000000000..45dc77bb282b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreateWithInboundNatPool.json @@ -0,0 +1,180 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "properties": { + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet" + } + }, + "name": "test", + "zones": [], + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test" + } + ], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "outboundRules": [], + "inboundNatPools": [ + { + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test" + }, + "protocol": "Tcp", + "frontendPortRangeStart": 8080, + "frontendPortRangeEnd": 8085, + "backendPort": 8888, + "idleTimeoutInMinutes": 10, + "enableFloatingIP": true, + "enableTcpReset": true + }, + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet" + }, + "inboundNatPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test" + } + ] + } + } + ], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "outboundRules": [], + "inboundNatPools": [ + { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test", + "type": "Microsoft.Network/loadBalancers/inboundNatPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendPortRangeStart": 8080, + "frontendPortRangeEnd": 8085, + "backendPort": 8888, + "idleTimeoutInMinutes": 10, + "enableFloatingIP": true, + "protocol": "Tcp", + "enableTcpReset": true, + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test" + } + } + } + ] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet" + }, + "inboundNatPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test" + } + ] + } + } + ], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "outboundRules": [], + "inboundNatPools": [ + { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test", + "type": "Microsoft.Network/loadBalancers/inboundNatPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendPortRangeStart": 8080, + "frontendPortRangeEnd": 8085, + "backendPort": 8888, + "idleTimeoutInMinutes": 10, + "enableFloatingIP": true, + "protocol": "Tcp", + "enableTcpReset": true, + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test" + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreateWithOutboundRules.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreateWithOutboundRules.json new file mode 100644 index 000000000000..1b5777f8095a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreateWithOutboundRules.json @@ -0,0 +1,423 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "protocol": "Tcp", + "loadDistribution": "Default", + "frontendPort": 80, + "backendPort": 80, + "idleTimeoutInMinutes": 15, + "enableFloatingIP": true, + "disableOutboundSnat": true + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [ + { + "name": "rule1", + "properties": { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "protocol": "All" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ], + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "privateIPAddressVersion": "IPv4" + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "disableOutboundSnat": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "outboundRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1", + "type": "Microsoft.Network/loadBalancers/outboundRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "allocatedOutboundPorts": 1024, + "protocol": "All", + "enableTcpReset": false, + "idleTimeoutInMinutes": 4, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ] + } + } + ], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ], + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "privateIPAddressVersion": "IPv4" + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "disableOutboundSnat": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "outboundRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1", + "type": "Microsoft.Network/loadBalancers/outboundRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "allocatedOutboundPorts": 1024, + "protocol": "All", + "enableTcpReset": false, + "idleTimeoutInMinutes": 4, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ] + } + } + ], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreateWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreateWithZones.json new file mode 100644 index 000000000000..5a4dea7e0c40 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerCreateWithZones.json @@ -0,0 +1,348 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + }, + "zones": [ + "1" + ] + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerDelete.json new file mode 100644 index 000000000000..1ee821cea779 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerFrontendIPConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerFrontendIPConfigurationGet.json new file mode 100644 index 000000000000..a13fbd7e3e43 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerFrontendIPConfigurationGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "frontendIPConfigurationName": "frontend", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "name": "frontend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/frontend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerFrontendIPConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerFrontendIPConfigurationList.json new file mode 100644 index 000000000000..abb2c8a274be --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerFrontendIPConfigurationList.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "loadBalancerName": "lb" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "frontend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/frontend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerGet.json new file mode 100644 index 000000000000..1c81c8a2ee52 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerGet.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb" + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true + } + } + ], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerList.json new file mode 100644 index 000000000000..60f5cd97e4bd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerList.json @@ -0,0 +1,161 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "felb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "belb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb" + } + } + } + ], + "probes": [ + { + "name": "prlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "inrlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true + } + } + ], + "inboundNatPools": [] + } + }, + { + "name": "lb2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb2", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "inboundNatPools": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerListAll.json new file mode 100644 index 000000000000..61c5d4cc7b88 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerListAll.json @@ -0,0 +1,160 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "felb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "belb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb" + } + } + } + ], + "probes": [ + { + "name": "prlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "inrlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true + } + } + ], + "inboundNatPools": [] + } + }, + { + "name": "lb3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/loadBalancers/lb3", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "inboundNatPools": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerLoadBalancingRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerLoadBalancingRuleGet.json new file mode 100644 index 000000000000..a6f6524a6c07 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerLoadBalancingRuleGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "loadBalancingRuleName": "rule1", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/loadBalancingRules/rule1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/probes/probe1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerLoadBalancingRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerLoadBalancingRuleList.json new file mode 100644 index 000000000000..f42e79e5270d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerLoadBalancingRuleList.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/loadBalancingRules/rule1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/probes/probe1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerNetworkInterfaceListSimple.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerNetworkInterfaceListSimple.json new file mode 100644 index 000000000000..a0d86e6111c6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerNetworkInterfaceListSimple.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "mynic", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/ipConfigurations/ipconfig1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/myVirtualNetwork/subnets/frontendSubnet" + }, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/bepool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inbound1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": false, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerNetworkInterfaceListVmss.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerNetworkInterfaceListVmss.json new file mode 100644 index 000000000000..c4c4167f6e1c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerNetworkInterfaceListVmss.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "vmss1Nic", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/vmss1Nic", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "vmss1IpConfig", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/vmss1Nic/ipConfigurations/vmss1IpConfig", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vmss1Vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/bepool" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/natpool.0" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "aaaaaaaaaaaaaaaaaaaaaaaaaa.dx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0" + } + } + }, + { + "name": "vmss1Nic", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/vmss1Nic", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "vmss1IpConfig", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/vmss1Nic/ipConfigurations/vmss1IpConfig", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vmss1Vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/bepool" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/natpool.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "aaaaaaaaaaaaaaaaaaaaaaaaaa.dx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerOutboundRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerOutboundRuleGet.json new file mode 100644 index 000000000000..65f4a2ba55ac --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerOutboundRuleGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "outboundRuleName": "rule1", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/outboundRules/rule1", + "type": "Microsoft.Network/loadBalancers/outboundRules", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + } + ], + "allocatedOutboundPorts": 64, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerOutboundRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerOutboundRuleList.json new file mode 100644 index 000000000000..746c37d648c1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerOutboundRuleList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/outboundRules/rule1", + "type": "Microsoft.Network/loadBalancers/outboundRules", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + } + ], + "allocatedOutboundPorts": 64, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerProbeGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerProbeGet.json new file mode 100644 index 000000000000..4ebbb7003f1c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerProbeGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "probeName": "probe1", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "name": "probe1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/probes/probe1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerProbeList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerProbeList.json new file mode 100644 index 000000000000..4e17946572dd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerProbeList.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "prlb", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/probes/prlb", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerUpdateTags.json new file mode 100644 index 000000000000..08c67a76db4d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LoadBalancerUpdateTags.json @@ -0,0 +1,132 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayCreate.json new file mode 100644 index 000000000000..7c6b110b9699 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayCreate.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "localgw", + "parameters": { + "properties": { + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "11.12.13.14", + "fqdn": "site1.contoso.com" + }, + "location": "Central US" + } + }, + "responses": { + "201": { + "body": { + "name": "localgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "11.12.13.14" + } + } + }, + "200": { + "body": { + "name": "localgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "11.12.13.14" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayDelete.json new file mode 100644 index 000000000000..fe34b34cd854 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "localgw" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayGet.json new file mode 100644 index 000000000000..482f006d75b6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "localgw" + }, + "responses": { + "200": { + "body": { + "name": "localgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayList.json new file mode 100644 index 000000000000..d04db6052bbc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayList.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "localgw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + } + }, + { + "name": "localgw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.2.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayUpdateTags.json new file mode 100644 index 000000000000..8bc4420f129e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/LocalNetworkGatewayUpdateTags.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "lgw", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "lgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/lgw", + "type": "Microsoft.Network/localNetworkGateways", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "gatewayIpAddress": "12.0.0.1" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayCreateOrUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayCreateOrUpdate.json new file mode 100644 index 000000000000..ae6d2184f862 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayCreateOrUpdate.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natgateway", + "parameters": { + "location": "westus", + "sku": { + "name": "Standard" + }, + "properties": { + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ] + } + } + }, + "responses": { + "200": { + "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" + } + }, + "201": { + "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": { + "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" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayDelete.json new file mode 100644 index 000000000000..311547789b39 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natGateway" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayGet.json new file mode 100644 index 000000000000..2ff0ad689de5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayGet.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natGateway" + }, + "responses": { + "200": { + "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" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayList.json new file mode 100644 index 000000000000..098d71b376d8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayList.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateway/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" + }, + { + "name": "test-natGateway2", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/natGateway/test-natGateway2", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayListAll.json new file mode 100644 index 000000000000..fa70842aa06e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayListAll.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "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" + }, + { + "name": "test-natGateway2", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/natGatewayes/test-natGateway2", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayUpdateTags.json new file mode 100644 index 000000000000..eef3ca0dfedc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NatGatewayUpdateTags.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natGateway", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "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" + } + ] + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "type": "Microsoft.Network/natGateways" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceCreate.json new file mode 100644 index 000000000000..dbd0149788ef --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceCreate.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic", + "parameters": { + "properties": { + "enableAcceleratedNetworking": true, + "ipConfigurations": [ + { + "name": "ipconfig1", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + } + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + }, + "201": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceDelete.json new file mode 100644 index 000000000000..8ed4bd1eb66a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceEffectiveNSGList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceEffectiveNSGList.json new file mode 100644 index 000000000000..3b687926a02a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceEffectiveNSGList.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "nic1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/test-nsg" + }, + "association": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "networkInterface": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1" + } + }, + "effectiveSecurityRules": [ + { + "name": "securityRules/rule1", + "protocol": "Tcp", + "sourcePortRange": "456-456", + "destinationPortRange": "6579-6579", + "sourceAddressPrefix": "0.0.0.0/32", + "destinationAddressPrefix": "0.0.0.0/32", + "access": "Allow", + "priority": 234, + "direction": "Inbound" + }, + { + "name": "securityRules/default-allow-rdp", + "protocol": "Tcp", + "sourcePortRange": "0-65535", + "destinationPortRange": "3389-3389", + "sourceAddressPrefix": "1.1.1.1/32", + "destinationAddressPrefix": "0.0.0.0/0", + "access": "Allow", + "priority": 1000, + "direction": "Inbound" + }, + { + "name": "defaultSecurityRules/AllowInternetOutBound", + "protocol": "All", + "sourcePortRange": "0-65535", + "destinationPortRange": "0-65535", + "sourceAddressPrefix": "0.0.0.0/0", + "destinationAddressPrefix": "Internet", + "expandedDestinationAddressPrefix": [ + "32.0.0.0/3", + "4.0.0.0/6", + "2.0.0.0/7", + "1.0.0.0/8" + ], + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + ] + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceEffectiveRouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceEffectiveRouteTableList.json new file mode 100644 index 000000000000..48133e88da50 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceEffectiveRouteTableList.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "nic1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "172.20.2.0/24" + ], + "nextHopType": "VnetLocal", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "0.0.0.0/0" + ], + "nextHopType": "Internet", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "10.0.0.0/8" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "100.64.0.0/10" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "172.16.0.0/12" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "192.168.0.0/16" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceGet.json new file mode 100644 index 000000000000..35483fcee216 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceGet.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic" + }, + "responses": { + "200": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "test.bx.internal.cloudapp.net" + }, + "macAddress": "00-0D-3A-1B-C7-21", + "enableAcceleratedNetworking": true, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "type": "Microsoft.Network/networkInterfaces" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceIPConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceIPConfigurationGet.json new file mode 100644 index 000000000000..a8b6e888b370 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceIPConfigurationGet.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "mynic", + "ipConfigurationName": "ipconfig1", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/ipConfigurations/ipconfig1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/myVirtualNetwork/subnets/frontendSubnet" + }, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/backendAddressPools/bepool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/inboundNatRules/inbound1" + } + ], + "virtualNetworkTaps": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/vTAP1" + }, + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/vTAP2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceIPConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceIPConfigurationList.json new file mode 100644 index 000000000000..9e4713c1cfeb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceIPConfigurationList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "nic1", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet12/subnets/subnet12" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceList.json new file mode 100644 index 000000000000..fb8e0f47da64 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceList.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "test.bx.internal.cloudapp.net" + }, + "macAddress": "00-0D-3A-1B-C7-21", + "enableAcceleratedNetworking": true, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "type": "Microsoft.Network/networkInterfaces" + }, + { + "name": "test-nic2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic2", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic2/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip2" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet2/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceListAll.json new file mode 100644 index 000000000000..9fc7bfb61a78 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceListAll.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "test.bx.internal.cloudapp.net" + }, + "macAddress": "00-0D-3A-1B-C7-21", + "enableAcceleratedNetworking": true, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "type": "Microsoft.Network/networkInterfaces" + }, + { + "name": "test-nic2", + "id": "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/networkInterfaces/test-nic2", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/networkInterfaces/test-nic2/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/publicIPAddresses/test-ip2" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/virtualNetworks/rgnew-vnet2/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceLoadBalancerList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceLoadBalancerList.json new file mode 100644 index 000000000000..871f1d6dc669 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceLoadBalancerList.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "nic1", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "lbname1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "frontendIPConfigurations": [ + { + "name": "lbfrontend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/frontendIPConfigurations/lbfrontend", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/publicIPAddresses/myDynamicPublicIP" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/inboundNatRules/inbound1" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "bepool1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/backendAddressPools/bepool1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "backendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/backendAddressPools/bepool1" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/probes/probe1" + } + } + } + ], + "probes": [ + { + "name": "probe1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/probes/probe1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "inbound1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/inboundNatRules/inbound1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1" + } + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceTapConfigurationCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceTapConfigurationCreate.json new file mode 100644 index 000000000000..2f87eccb3108 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceTapConfigurationCreate.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "mynic", + "tapConfigurationName": "tapconfiguration1", + "api-version": "2019-12-01", + "tapConfigurationParameters": { + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + }, + "201": { + "body": { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceTapConfigurationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceTapConfigurationDelete.json new file mode 100644 index 000000000000..06e99a87e66a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceTapConfigurationDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-networkinterface", + "tapConfigurationName": "test-tapconfiguration" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceTapConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceTapConfigurationGet.json new file mode 100644 index 000000000000..4204c4f3247c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceTapConfigurationGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "mynic", + "tapConfigurationName": "tapconfiguration1", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceTapConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceTapConfigurationList.json new file mode 100644 index 000000000000..1568bbc537b6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceTapConfigurationList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "mynic" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceUpdateTags.json new file mode 100644 index 000000000000..988fe8f788bc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkInterfaceUpdateTags.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileCreateConfigOnly.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileCreateConfigOnly.json new file mode 100644 index 000000000000..5c4fa5705434 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileCreateConfigOnly.json @@ -0,0 +1,110 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1", + "parameters": { + "location": "westus", + "properties": { + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "properties": { + "ipConfigurations": [ + { + "name": "ipconfig1", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfig1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + } + } + }, + "201": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfig1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileDelete.json new file mode 100644 index 000000000000..6ba44e7b2d3c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileGetConfigOnly.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileGetConfigOnly.json new file mode 100644 index 000000000000..d0af174c8e9a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileGetConfigOnly.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1" + }, + "responses": { + "200": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + }, + { + "name": "ipconfigprofile2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile2", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + }, + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileGetWithContainerNic.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileGetWithContainerNic.json new file mode 100644 index 000000000000..ebc6f9bbd446 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileGetWithContainerNic.json @@ -0,0 +1,203 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1" + }, + "responses": { + "200": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + }, + { + "name": "ipconfigprofile2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile2", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ], + "containerNetworkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth0" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth0" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth0" + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + }, + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ], + "containerNetworkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth1" + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [ + { + "name": "containerGroup1_eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup1" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup1_eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup1" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup2_eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup2" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup2_eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup2" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup3_eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup3" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup3_eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup3" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileList.json new file mode 100644 index 000000000000..2c8d49a7873a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileList.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "name": "networkProfile1", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + }, + { + "name": "ipconfigprofile2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile2", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile2", + "name": "networkProfile2", + "properties": { + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileListAll.json new file mode 100644 index 000000000000..a3bb855975fb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileListAll.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "name": "networkProfile1", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkProfiles/networkProfile2", + "name": "networkProfile2", + "properties": { + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileUpdateTags.json new file mode 100644 index 000000000000..e2c6f25bd1a5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkProfileUpdateTags.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "test-np", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-np", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-np", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupCreate.json new file mode 100644 index 000000000000..d4451a6c6985 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupCreate.json @@ -0,0 +1,233 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "parameters": { + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + }, + "201": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupCreateWithRule.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupCreateWithRule.json new file mode 100644 index 000000000000..cf3300e371e4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupCreateWithRule.json @@ -0,0 +1,282 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "parameters": { + "properties": { + "securityRules": [ + { + "name": "rule1", + "properties": { + "protocol": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "destinationPortRange": "80", + "sourcePortRange": "*", + "priority": 130, + "direction": "Inbound" + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + }, + "201": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupDelete.json new file mode 100644 index 000000000000..8fc51eb05f9a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupGet.json new file mode 100644 index 000000000000..aba1b22d17ce --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupGet.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg" + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupList.json new file mode 100644 index 000000000000..6d24e90067fe --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupList.json @@ -0,0 +1,231 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nsg1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + }, + { + "name": "nsg3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupListAll.json new file mode 100644 index 000000000000..9067e82f2ec2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupListAll.json @@ -0,0 +1,230 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nsg1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + }, + { + "name": "nsg3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupRuleCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupRuleCreate.json new file mode 100644 index 000000000000..5b18d62a6900 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupRuleCreate.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "securityRuleName": "rule1", + "securityRuleParameters": { + "properties": { + "protocol": "*", + "sourceAddressPrefix": "10.0.0.0/8", + "destinationAddressPrefix": "11.0.0.0/8", + "access": "Deny", + "destinationPortRange": "8080", + "sourcePortRange": "*", + "priority": 100, + "direction": "Outbound" + } + } + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "8080", + "sourceAddressPrefix": "10.0.0.0/8", + "destinationAddressPrefix": "11.0.0.0/8", + "access": "Deny", + "priority": 100, + "direction": "Outbound" + } + } + }, + "201": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "8080", + "sourceAddressPrefix": "10.0.0.0/8", + "destinationAddressPrefix": "11.0.0.0/8", + "access": "Deny", + "priority": 100, + "direction": "Outbound" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupRuleDelete.json new file mode 100644 index 000000000000..45d528deb1ea --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "securityRuleName": "rule1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupRuleGet.json new file mode 100644 index 000000000000..35c5cf67c591 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupRuleGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "securityRuleName": "rule1" + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupRuleList.json new file mode 100644 index 000000000000..4796b326ac2d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupRuleList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupUpdateTags.json new file mode 100644 index 000000000000..71920e7bbddd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkSecurityGroupUpdateTags.json @@ -0,0 +1,130 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceDelete.json new file mode 100644 index 000000000000..314692db768d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceGet.json new file mode 100644 index 000000000000..ecd0994b930b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva" + }, + "responses": { + "200": { + "body": { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceListByResourceGroup.json new file mode 100644 index 000000000000..af6180050f4e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceListByResourceGroup.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceListBySubscription.json new file mode 100644 index 000000000000..a5c7cc3538c0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceListBySubscription.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualAppliancePut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualAppliancePut.json new file mode 100644 index 000000000000..bb8b3561e02b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualAppliancePut.json @@ -0,0 +1,133 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva", + "parameters": { + "tags": { + "key1": "value1" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "location": "West US", + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000 + } + } + }, + "responses": { + "200": { + "body": { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + }, + "201": { + "body": { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceUpdateTags.json new file mode 100644 index 000000000000..926d63810117 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkVirtualApplianceUpdateTags.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva", + "parameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherAvailableProvidersListGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherAvailableProvidersListGet.json new file mode 100644 index 000000000000..faed891d7e7b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherAvailableProvidersListGet.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "azureLocations": [ + "West US" + ], + "country": "United States", + "state": "washington", + "city": "seattle" + } + }, + "responses": { + "200": { + "body": { + "countries": [ + { + "countryName": "United States", + "states": [ + { + "stateName": "washington", + "cities": [ + { + "cityName": "seattle", + "providers": [ + "Comcast Cable Communications, Inc. - ASN 7922", + "Comcast Cable Communications, LLC - ASN 7922", + "Level 3 Communications, Inc. (GBLX) - ASN 3549", + "Qwest Communications Company, LLC - ASN 209" + ] + } + ] + } + ] + } + ] + } + }, + "202": { + "body": { + "countries": [ + { + "countryName": "United States", + "states": [ + { + "stateName": "washington", + "cities": [ + { + "cityName": "seattle", + "providers": [ + "Comcast Cable Communications, Inc. - ASN 7922", + "Comcast Cable Communications, LLC - ASN 7922", + "Level 3 Communications, Inc. (GBLX) - ASN 3549", + "Qwest Communications Company, LLC - ASN 209" + ] + } + ] + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherAzureReachabilityReportGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherAzureReachabilityReportGet.json new file mode 100644 index 000000000000..7a5d982d5577 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherAzureReachabilityReportGet.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "providerLocation": { + "country": "United States", + "state": "washington" + }, + "providers": [ + "Frontier Communications of America, Inc. - ASN 5650" + ], + "azureLocations": [ + "West US" + ], + "startTime": "2017-09-07T00:00:00Z", + "endTime": "2017-09-10T00:00:00Z" + } + }, + "responses": { + "200": { + "body": { + "aggregationLevel": "State", + "providerLocation": { + "country": "United States", + "state": "washington" + }, + "reachabilityReport": [ + { + "provider": "Frontier Communications of America, Inc. - ASN 5650", + "azureLocation": "West US", + "latencies": [ + { + "timeStamp": "2017-09-07T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-08T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-09T00:00:00Z", + "score": 94 + } + ] + } + ] + } + }, + "202": { + "body": { + "aggregationLevel": "State", + "providerLocation": { + "country": "United States", + "state": "washington" + }, + "reachabilityReport": [ + { + "provider": "Frontier Communications of America, Inc. - ASN 5650", + "azureLocation": "West US", + "latencies": [ + { + "timeStamp": "2017-09-07T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-08T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-09T00:00:00Z", + "score": 94 + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorCreate.json new file mode 100644 index 000000000000..2483b42edfba --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorCreate.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1", + "location": "centraluseuap", + "parameters": { + "properties": { + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60 + } + } + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "provisioningState": "Updating", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "monitoringStatus": "NotStarted" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + }, + "201": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "provisioningState": "Updating", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "monitoringStatus": "NotStarted" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorDelete.json new file mode 100644 index 000000000000..1b309ebb0a91 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorGet.json new file mode 100644 index 000000000000..988a5eaaf008 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "startTime": "2018-01-08T03:42:33.3387305Z", + "monitoringStatus": "Running" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorList.json new file mode 100644 index 000000000000..bc2097481238 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "startTime": "2018-01-08T03:42:33.3387305Z", + "monitoringStatus": "Running" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + }, + { + "name": "cm2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm2", + "port": 0 + }, + "destination": { + "address": "google.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 30, + "autoStart": true, + "startTime": "2018-01-08T05:42:33.3387305Z", + "monitoringStatus": "Running" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorQuery.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorQuery.json new file mode 100644 index 000000000000..029c614090d3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorQuery.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": { + "body": { + "sourceStatus": "Active", + "states": [ + { + "connectionState": "Reachable", + "startTime": "2018-01-08T03:42:33.3387305Z", + "endTime": "2018-01-08T05:12:41.5265438Z", + "evaluationState": "Completed", + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ] + } + ] + } + }, + "202": { + "body": { + "sourceStatus": "Active", + "states": [ + { + "connectionState": "Reachable", + "startTime": "2018-01-08T03:42:33.3387305Z", + "endTime": "2018-01-08T05:12:41.5265438Z", + "evaluationState": "Completed", + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorStart.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorStart.json new file mode 100644 index 000000000000..262f69b2aa83 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorStart.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorStop.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorStop.json new file mode 100644 index 000000000000..262f69b2aa83 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorStop.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json new file mode 100644 index 000000000000..1a158b986b5e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/`/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "startTime": "2019-09-04T02:48:10.6797393Z", + "monitoringStatus": "Running" + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "type": "Microsoft.Network/networkWatchers/connectionMonitors", + "location": "westcentralus" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorV2Create.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorV2Create.json new file mode 100644 index 000000000000..35f73c16e19a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectionMonitorV2Create.json @@ -0,0 +1,206 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1", + "location": "centraluseuap", + "parameters": { + "properties": { + "endpoints": [ + { + "name": "vm1", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/NwRgIrinaCentralUSEUAP/providers/Microsoft.Compute/virtualMachines/vm1" + }, + { + "name": "CanaryWorkspaceVamshi", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/vasamudrRG/providers/Microsoft.OperationalInsights/workspaces/vasamudrWorkspace", + "filter": { + "type": "Include", + "items": [ + { + "type": "AgentAddress", + "address": "npmuser" + } + ] + } + }, + { + "name": "bing", + "address": "bing.com" + }, + { + "name": "google", + "address": "google.com" + } + ], + "testConfigurations": [ + { + "name": "testConfig1", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80, + "disableTraceRoute": false + } + } + ], + "testGroups": [ + { + "name": "test1", + "disable": false, + "testConfigurations": [ + "testConfig1" + ], + "sources": [ + "vm1", + "CanaryWorkspaceVamshi" + ], + "destinations": [ + "bing", + "google" + ] + } + ], + "outputs": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "endpoints": [ + { + "name": "vm1", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/NwRgIrinaCentralUSEUAP/providers/Microsoft.Compute/virtualMachines/vm1" + }, + { + "name": "CanaryWorkspaceVamshi", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/vasamudrRG/providers/Microsoft.OperationalInsights/workspaces/vasamudrWorkspace", + "filter": { + "type": "Include", + "items": [ + { + "type": "AgentAddress", + "address": "npmuser" + } + ] + } + }, + { + "name": "bing", + "address": "bing.com" + }, + { + "name": "google", + "address": "google.com" + } + ], + "testConfigurations": [ + { + "name": "testConfig1", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80, + "disableTraceRoute": false + } + } + ], + "testGroups": [ + { + "name": "test1", + "disable": false, + "testConfigurations": [ + "testConfig1" + ], + "sources": [ + "vm1", + "CanaryWorkspaceVamshi" + ], + "destinations": [ + "bing", + "google" + ] + } + ], + "outputs": [] + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + }, + "201": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "endpoints": [ + { + "name": "vm1", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/NwRgIrinaCentralUSEUAP/providers/Microsoft.Compute/virtualMachines/vm1" + }, + { + "name": "CanaryWorkspaceVamshi", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/vasamudrRG/providers/Microsoft.OperationalInsights/workspaces/vasamudrWorkspace", + "filter": { + "type": "Include", + "items": [ + { + "type": "AgentAddress", + "address": "npmuser" + } + ] + } + }, + { + "name": "bing", + "address": "bing.com" + }, + { + "name": "google", + "address": "google.com" + } + ], + "testConfigurations": [ + { + "name": "testConfig1", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80, + "disableTraceRoute": false + } + } + ], + "testGroups": [ + { + "name": "test1", + "disable": false, + "testConfigurations": [ + "testConfig1" + ], + "sources": [ + "vm1", + "CanaryWorkspaceVamshi" + ], + "destinations": [ + "bing", + "google" + ] + } + ], + "outputs": [] + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectivityCheck.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectivityCheck.json new file mode 100644 index 000000000000..38ed5b8077d3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherConnectivityCheck.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "destination": { + "address": "192.168.100.4", + "port": 3389 + }, + "preferredIPVersion": "IPv4" + } + }, + "responses": { + "200": { + "body": { + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ], + "connectionStatus": "Connected", + "avgLatencyInMs": 1, + "minLatencyInMs": 1, + "maxLatencyInMs": 4, + "probesSent": 100, + "probesFailed": 0 + } + }, + "202": { + "body": { + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ], + "connectionStatus": "Connected", + "avgLatencyInMs": 1, + "minLatencyInMs": 1, + "maxLatencyInMs": 4, + "probesSent": 100, + "probesFailed": 0 + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherCreate.json new file mode 100644 index 000000000000..d5a2c4382ad2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherCreate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "location": "eastus", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherDelete.json new file mode 100644 index 000000000000..685fff15d4ff --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogConfigure.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogConfigure.json new file mode 100644 index 000000000000..09e41cca3b12 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogConfigure.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + }, + "responses": { + "200": { + "body": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + }, + "202": { + "body": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogCreate.json new file mode 100644 index 000000000000..2170766fa7f5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogCreate.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "flowLogName": "fl", + "parameters": { + "location": "centraluseuap", + "properties": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/desmondcentral-nsg", + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/nwtest1mgvbfmqsigdxe", + "enabled": true, + "format": { + "type": "JSON", + "version": 1 + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "Microsoft.Networkdesmond-rgdesmondcentral-nsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw/FlowLogs/fl", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Updating", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/desmondcentral-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/nwtest1mgvbfmqsigdxe", + "enabled": true, + "flowAnalyticsConfiguration": {}, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 1 + } + }, + "type": "Microsoft.Network/networkWatchers/FlowLogs", + "location": "centraluseuap" + } + }, + "201": { + "body": { + "name": "Microsoft.Networkdesmond-rgdesmondcentral-nsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw/FlowLogs/fl", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/desmondcentral-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/nwtest1mgvbfmqsigdxe", + "enabled": true, + "flowAnalyticsConfiguration": {}, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 1 + } + }, + "type": "Microsoft.Network/networkWatchers/FlowLogs", + "location": "centraluseuap" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogDelete.json new file mode 100644 index 000000000000..df616ea28874 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "flowLogName": "fl" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogGet.json new file mode 100644 index 000000000000..d7f512330ed5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogGet.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "flowLogName": "flowLog1" + }, + "responses": { + "200": { + "body": { + "name": "flowLog1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/тц1/FlowLogs/flowLog1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/networkSecurityGroups/vm5-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/wzstorage002", + "enabled": true, + "flowAnalyticsConfiguration": { + "networkWatcherFlowAnalyticsConfiguration": { + "enabled": false, + "workspaceId": "-", + "workspaceRegion": "-", + "trafficAnalyticsInterval": 60 + } + }, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 2 + } + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/FlowLogs" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogList.json new file mode 100644 index 000000000000..07a49eba7694 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogList.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "flowLog1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/тц1/FlowLogs/flowLog1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/networkSecurityGroups/vm5-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/wzstorage002", + "enabled": true, + "flowAnalyticsConfiguration": { + "networkWatcherFlowAnalyticsConfiguration": { + "enabled": false, + "workspaceId": "-", + "workspaceRegion": "-", + "trafficAnalyticsInterval": 60 + } + }, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 2 + } + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/FlowLogs" + }, + { + "name": "flowLog2", + "id": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/NetworkWatcherRG/providers/Microsoft.Network/networkWatchers/NetworkWatcher_centraluseuap/FlowLogs/flowLog2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/networkSecurityGroups/DSCP-test-vm1-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/iraflowlogtest2diag", + "enabled": true, + "flowAnalyticsConfiguration": {}, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 2 + } + }, + "type": "Microsoft.Network/networkWatchers/FlowLogs", + "location": "centraluseuap" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogStatusQuery.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogStatusQuery.json new file mode 100644 index 000000000000..cf76963b5144 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherFlowLogStatusQuery.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + } + }, + "responses": { + "200": { + "body": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + }, + "202": { + "body": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherGet.json new file mode 100644 index 000000000000..a2824acbf30b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherGet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherIpFlowVerify.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherIpFlowVerify.json new file mode 100644 index 000000000000..efeaf0d2cc8d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherIpFlowVerify.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "direction": "Outbound", + "protocol": "TCP", + "localPort": "80", + "remotePort": "80", + "localIPAddress": "10.2.0.4", + "remoteIPAddress": "121.10.1.1" + } + }, + "responses": { + "200": { + "body": { + "access": "Allow", + "ruleName": "Rule1" + } + }, + "202": { + "body": { + "access": "Allow", + "ruleName": "Rule1" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherList.json new file mode 100644 index 000000000000..bc50b7e5d108 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + }, + { + "name": "nw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherListAll.json new file mode 100644 index 000000000000..9e5c4bb42ebb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherListAll.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + }, + { + "name": "nw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "westus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json new file mode 100644 index 000000000000..52295d349427 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json @@ -0,0 +1,198 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "profiles": [ + { + "direction": "Inbound", + "protocol": "TCP", + "source": "10.1.0.4", + "destination": "12.11.12.14", + "destinationPort": "12100" + } + ] + } + }, + "responses": { + "200": { + "body": { + "results": [ + { + "profile": { + "direction": "Inbound", + "protocol": "TCP", + "source": "10.1.0.4", + "destination": "12.11.12.14", + "destinationPort": "12100" + }, + "networkSecurityGroupResult": { + "securityRuleAccessResult": "Allow", + "evaluatedNetworkSecurityGroups": [ + { + "networkSecurityGroupId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/subnets/AppSubnet", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_Cleanuptool-Allow-100", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-101", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-102", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Deny-103", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + }, + { + "networkSecurityGroupId": "/subscriptions/61cc8a98-a8be-4bfe-a04e-0b461f93fe35/resourceGroups/NwRgCentralUSEUAP_copy/providers/Microsoft.Network/networkSecurityGroups/AppNSG", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/networkInterfaces/nic", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + } + ] + } + } + ] + } + }, + "202": { + "body": { + "results": [ + { + "profile": { + "direction": "Inbound", + "protocol": "TCP", + "source": "10.1.0.4", + "destination": "12.11.12.14", + "destinationPort": "12100" + }, + "networkSecurityGroupResult": { + "securityRuleAccessResult": "Allow", + "evaluatedNetworkSecurityGroups": [ + { + "networkSecurityGroupId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/subnets/AppSubnet", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_Cleanuptool-Allow-100", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-101", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-102", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Deny-103", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + }, + { + "networkSecurityGroupId": "/subscriptions/61cc8a98-a8be-4bfe-a04e-0b461f93fe35/resourceGroups/NwRgCentralUSEUAP_copy/providers/Microsoft.Network/networkSecurityGroups/AppNSG", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/networkInterfaces/nic", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherNextHopGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherNextHopGet.json new file mode 100644 index 000000000000..cb9490ce2ebf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherNextHopGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "sourceIPAddress": "10.0.0.5", + "destinationIPAddress": "10.0.0.10", + "targetNicResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1" + } + }, + "responses": { + "200": { + "body": { + "nextHopType": "VnetLocal", + "nextHopIpAddress": "10.0.0.1", + "routeTableId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/routeTables/rt1" + } + }, + "202": { + "body": { + "nextHopType": "VnetLocal", + "nextHopIpAddress": "10.0.0.1", + "routeTableId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/routeTables/rt1" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureCreate.json new file mode 100644 index 000000000000..8b41d3ee0f28 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureCreate.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1", + "parameters": { + "properties": { + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath": "D:\\capture\\pc1.cap" + }, + "filters": [ + { + "protocol": "TCP", + "localIPAddress": "10.0.0.4", + "localPort": "80" + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "properties": { + "provisioningState": "Updating", + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath": "D:\\capture\\pc1.cap" + }, + "filters": [ + { + "protocol": "TCP", + "localIPAddress": "10.0.0.4", + "localPort": "80" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureDelete.json new file mode 100644 index 000000000000..8cad566443c5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureGet.json new file mode 100644 index 000000000000..7fc1138cdb11 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "200": { + "body": { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Updating", + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath": "D:\\capture\\pc1.cap" + }, + "filters": [ + { + "protocol": "TCP", + "localIPAddress": "10.0.0.4", + "localPort": "80" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureQueryStatus.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureQueryStatus.json new file mode 100644 index 000000000000..36442bf33138 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureQueryStatus.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "200": { + "body": { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "captureStartTime": "2016-09-07T12:35:24Z", + "packetCaptureStatus": "Stopped", + "stopReason": "TimeExceeded", + "packetCaptureError": [] + } + }, + "202": { + "body": { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "captureStartTime": "2016-09-07T12:35:24Z", + "packetCaptureStatus": "Stopped", + "stopReason": "TimeExceeded", + "packetCaptureError": [] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureStop.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureStop.json new file mode 100644 index 000000000000..9b4d4b30c36f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCaptureStop.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCapturesList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCapturesList.json new file mode 100644 index 000000000000..473f6aca489d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherPacketCapturesList.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Updating", + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath": "D:\\capture\\pc1.cap" + }, + "filters": [ + { + "protocol": "TCP", + "localIPAddress": "10.0.0.4", + "localPort": "80" + } + ] + } + }, + { + "name": "pc2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc2.cap", + "filePath": "D:\\capture\\pc2.cap" + }, + "filters": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherSecurityGroupViewGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherSecurityGroupViewGet.json new file mode 100644 index 000000000000..2ca6880f4bf1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherSecurityGroupViewGet.json @@ -0,0 +1,141 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "responses": { + "200": { + "body": { + "networkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1", + "securityRuleAssociations": { + "subnetAssociation": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "securityRules": [ + { + "name": "fe_rule", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/AppNSG/securityRules/fe_rule", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow Frontend", + "protocol": "Tcp", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "10.1.0.0/24", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 100, + "direction": "Inbound" + } + } + ] + }, + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/networkSecurityGroups//defaultSecurityRules/", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + } + ], + "effectiveSecurityRules": [ + { + "name": "DefaultOutboundDenyAll", + "protocol": "All", + "sourcePortRange": "0-65535", + "destinationPortRange": "0-65535", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + ] + } + } + ] + } + }, + "202": { + "body": { + "networkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1", + "securityRuleAssociations": { + "subnetAssociation": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "securityRules": [ + { + "name": "fe_rule", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/AppNSG/securityRules/fe_rule", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow Frontend", + "protocol": "Tcp", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "10.1.0.0/24", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 100, + "direction": "Inbound" + } + } + ] + }, + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/networkSecurityGroups//defaultSecurityRules/", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + } + ], + "effectiveSecurityRules": [ + { + "name": "DefaultOutboundDenyAll", + "protocol": "All", + "sourcePortRange": "0-65535", + "destinationPortRange": "0-65535", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherTopologyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherTopologyGet.json new file mode 100644 index 000000000000..7710070dc344 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherTopologyGet.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceGroupName": "rg2" + } + }, + "responses": { + "200": { + "body": { + "id": "ce592f46-8164-4bf2-ad36-b8e4acf6fb68", + "createdDateTime": "2017-08-02T19:31:55.9461781Z", + "lastModified": "2017-05-27T00:00:13.2005337Z", + "resources": [ + { + "name": "MultiTierApp0", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/MultiTierApp0", + "location": "westus", + "associations": [ + { + "name": "appNic0", + "resourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/appNic0", + "associationType": "Contains" + }, + { + "name": "appNic10", + "resourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/appNic10", + "associationType": "Contains" + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherTroubleshootGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherTroubleshootGet.json new file mode 100644 index 000000000000..d57e6d9fc036 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherTroubleshootGet.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "storagePath": "https://st1.blob.core.windows.net/cn1" + } + } + }, + "responses": { + "200": { + "body": { + "startTime": "2017-01-12T00:19:47.0442834Z", + "endTime": "2017-01-12T00:20:09.914Z", + "code": "UnHealthy", + "results": [ + { + "id": "000000", + "reasonType": "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + }, + "202": { + "body": { + "startTime": "2017-01-12T00:19:47.0442834Z", + "endTime": "2017-01-12T00:20:09.914Z", + "code": "UnHealthy", + "results": [ + { + "id": "000000", + "reasonType": "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherTroubleshootResultQuery.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherTroubleshootResultQuery.json new file mode 100644 index 000000000000..8baa6fe93ec1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherTroubleshootResultQuery.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "responses": { + "200": { + "body": { + "startTime": "2017-01-12T00:19:47.0442834Z", + "endTime": "2017-01-12T00:20:09.914Z", + "code": "UnHealthy", + "results": [ + { + "id": "000000", + "reasonType": "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + }, + "202": { + "body": { + "startTime": "2017-01-12T00:19:47.0442834Z", + "endTime": "2017-01-12T00:20:09.914Z", + "code": "UnHealthy", + "results": [ + { + "id": "000000", + "reasonType": "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherUpdateTags.json new file mode 100644 index 000000000000..bae2aee3918b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/NetworkWatcherUpdateTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/OperationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/OperationList.json new file mode 100644 index 000000000000..3e4387b3b437 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/OperationList.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Network/localnetworkgateways/read", + "display": { + "provider": "Microsoft Network", + "resource": "LocalNetworkGateway", + "operation": "Get LocalNetworkGateway", + "description": "Gets LocalNetworkGateway" + } + }, + { + "name": "Microsoft.Network/localnetworkgateways/write", + "display": { + "provider": "Microsoft Network", + "resource": "LocalNetworkGateway", + "operation": "Create or update LocalNetworkGateway", + "description": "Creates or updates an existing LocalNetworkGateway" + } + }, + { + "name": "Microsoft.Network/localnetworkgateways/delete", + "display": { + "provider": "Microsoft Network", + "resource": "LocalNetworkGateway", + "operation": "Delete LocalNetworkGateway", + "description": "Deletes LocalNetworkGateway" + } + }, + { + "name": "Microsoft.Network/networkInterfaces/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Network", + "resource": "Network Interface metric definition", + "operation": "Read Network Interface metric definitions", + "description": "Gets available metrics for the Network Interface" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "BytesSentRate", + "displayName": "Bytes Sent", + "displayDescription": "Number of bytes the Network Interface sent", + "unit": "Count", + "aggregationType": "Total", + "availabilities": [ + { + "timeGrain": "00:01:00", + "retention": "00:00:00", + "blobDuration": "01:00:00" + }, + { + "timeGrain": "01:00:00", + "retention": "00:00:00", + "blobDuration": "1.00:00:00" + } + ], + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^__Ready__$", + "fillGapWithZero": false, + "dimensions": [], + "isInternal": false + }, + { + "name": "BytesReceivedRate", + "displayName": "Bytes Received", + "displayDescription": "Number of bytes the Network Interface received", + "unit": "Count", + "aggregationType": "Total", + "availabilities": [ + { + "timeGrain": "00:01:00", + "retention": "00:00:00", + "blobDuration": "01:00:00" + }, + { + "timeGrain": "01:00:00", + "retention": "00:00:00", + "blobDuration": "1.00:00:00" + } + ], + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^__Ready__$", + "fillGapWithZero": false, + "dimensions": [], + "isInternal": false + } + ] + } + } + }, + { + "name": "Microsoft.Network/networksecuritygroups/providers/Microsoft.Insights/logDefinitions/read", + "display": { + "provider": "Microsoft Network", + "resource": "Network Security Groups Log Definitions", + "operation": "Get Network Security Group Event Log Definitions", + "description": "Gets the events for network security group" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "logSpecifications": [ + { + "name": "NetworkSecurityGroupEvent", + "displayName": "Network Security Group Event", + "blobDuration": "PT1H" + }, + { + "name": "NetworkSecurityGroupRuleCounter", + "displayName": "Network Security Group Rule Counter", + "blobDuration": "PT1H" + }, + { + "name": "NetworkSecurityGroupFlowEvent", + "displayName": "Network Security Group Rule Flow Event", + "blobDuration": "PT1H" + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayDelete.json new file mode 100644 index 000000000000..668040e4e770 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayGenerateVpnProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayGenerateVpnProfile.json new file mode 100644 index 000000000000..ffc23ba5445e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayGenerateVpnProfile.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "gatewayName": "p2sVpnGateway1", + "parameters": { + "authenticationMethod": "EAPTLS" + } + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayGet.json new file mode 100644 index 000000000000..4ce8ba71b735 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayGet.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayGetConnectionHealth.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayGetConnectionHealth.json new file mode 100644 index 000000000000..f0f35d9cc330 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayGetConnectionHealth.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayGetConnectionHealthDetailed.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayGetConnectionHealthDetailed.json new file mode 100644 index 000000000000..272e92469179 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayGetConnectionHealthDetailed.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "p2s-vpn-gateway-test", + "gatewayName": "p2svpngateway", + "api-version": "2019-12-01", + "request": { + "vpnUserNamesFilter": [ + "vpnUser1", + "vpnUser2" + ], + "outputBlobSasUrl": "https://blobcortextesturl.blob.core.windows.net/folderforconfig/p2sconnectionhealths?sp=rw&se=2018-01-10T03%3A42%3A04Z&sv=2017-04-17&sig=WvXrT5bDmDFfgHs%2Brz%2BjAu123eRCNE9BO0eQYcPDT7pY%3D&sr=b" + } + }, + "responses": { + "200": { + "body": "" + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayList.json new file mode 100644 index 000000000000..e66e32eba943 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayList.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + }, + { + "name": "p2sVpnGateway2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.4.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayListByResourceGroup.json new file mode 100644 index 000000000000..c3bafa97f605 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayListByResourceGroup.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "properties": { + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + }, + { + "name": "p2sVpnGateway2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "properties": { + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayPut.json new file mode 100644 index 000000000000..b385979b9b05 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayPut.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "p2SVpnGatewayParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "properties": { + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1 + } + } + }, + "responses": { + "200": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 0, + "allocatedIpAddresses": [], + "totalIngressBytesTransferred": 0, + "totalEgressBytesTransferred": 0 + } + } + } + }, + "201": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 0, + "allocatedIpAddresses": [], + "totalIngressBytesTransferred": 0, + "totalEgressBytesTransferred": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayUpdateTags.json new file mode 100644 index 000000000000..81b593f49856 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2SVpnGatewayUpdateTags.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "p2SVpnGatewayParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "properties": { + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2sVpnGatewaysDisconnectP2sVpnConnections.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2sVpnGatewaysDisconnectP2sVpnConnections.json new file mode 100644 index 000000000000..346221b906cb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/P2sVpnGatewaysDisconnectP2sVpnConnections.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "p2s-vpn-gateway-test", + "p2sVpnGatewayName": "p2svpngateway", + "api-version": "2019-12-01", + "request": { + "vpnConnectionIds": [ + "vpnconnId1", + "vpnconnId2" + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PeerExpressRouteCircuitConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PeerExpressRouteCircuitConnectionGet.json new file mode 100644 index 000000000000..fe0ac2cf8aa4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PeerExpressRouteCircuitConnectionGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "connectionName": "60aee347-e889-4a42-8c1b-0aae8b1e4013", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "name": "60aee347-e889-4a42-8c1b-0aae8b1e4013", + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/peerConnections/60aee347-e889-4a42-8c1b-0aae8b1e4013", + "etag": "W/\"6ffbbb06-da20-44ca-a34f-280c4653b1e9\"", + "properties": { + "provisioningState": "Succeeded", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitB/peerings/AzurePrivatePeering" + }, + "addressPrefix": "20.0.0.0/29", + "circuitConnectionStatus": "Connected", + "connectionName": "circuitConnectionWestusEastus", + "authResourceGuid": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PeerExpressRouteCircuitConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PeerExpressRouteCircuitConnectionList.json new file mode 100644 index 000000000000..f56d509c9cc1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PeerExpressRouteCircuitConnectionList.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "60aee347-e889-4a42-8c1b-0aae8b1e4013", + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/peerConnections/60aee347-e889-4a42-8c1b-0aae8b1e4013", + "etag": "W/\"6ffbbb06-da20-44ca-a34f-280c4653b1e9\"", + "properties": { + "provisioningState": "Succeeded", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitB/peerings/AzurePrivatePeering" + }, + "addressPrefix": "20.0.0.0/29", + "circuitConnectionStatus": "Connected", + "connectionName": "circuitConnectionWestusEastus", + "authResourceGuid": "" + } + }, + { + "name": "c8b17193-8dd3-4f61-866d-8cdd2e2e268e", + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/peerConnections/c8b17193-8dd3-4f61-866d-8cdd2e2e268e", + "etag": "W/\"6ffbbb06-da20-44ca-a34f-280c4653b1e9\"", + "properties": { + "provisioningState": "Succeeded", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitC/peerings/AzurePrivatePeering" + }, + "addressPrefix": "30.0.0.0/29", + "circuitConnectionStatus": "Connected", + "connectionName": "circuitConnectionCentralusEastus", + "authResourceGuid": "64283012-d377-421d-8398-f6aeb2ac7ea0" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointCreate.json new file mode 100644 index 000000000000..e123a5fb4bc9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointCreate.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe", + "parameters": { + "location": "eastus2euap", + "properties": { + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection." + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "location": "eastus2euap", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "manualPrivateLinkServiceConnections": [], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ] + } + } + }, + "201": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "location": "eastus2euap", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointCreateForManualApproval.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointCreateForManualApproval.json new file mode 100644 index 000000000000..a86be8bb0e3e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointCreateForManualApproval.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe", + "parameters": { + "location": "eastus", + "properties": { + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection." + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [], + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Awaiting approval", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ] + } + } + }, + "201": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointDelete.json new file mode 100644 index 000000000000..01992f62ce91 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointGet.json new file mode 100644 index 000000000000..c6eebdd541f2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointGet.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe" + }, + "responses": { + "200": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "manualPrivateLinkServiceConnections": [], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointGetForManualApproval.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointGetForManualApproval.json new file mode 100644 index 000000000000..b631b76a5d2b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointGetForManualApproval.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe" + }, + "responses": { + "200": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [], + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Awaiting approval", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointList.json new file mode 100644 index 000000000000..e58886c21bb8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointList.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/pe1", + "name": "pe1", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection for pe1.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "manualPrivateLinkServiceConnections": [], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/pe1.nic.abcd1234" + } + ] + } + }, + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/pe2", + "name": "pe2", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [], + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection for pe2.", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Awaiting approval", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet2" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/pe2.nic.zyxw9876" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointListAll.json new file mode 100644 index 000000000000..1763674c18dc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateEndpointListAll.json @@ -0,0 +1,114 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/pe1", + "name": "pe1", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection for pe1.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/pe1.nic.abcd1234" + } + ] + } + }, + { + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/pe2", + "name": "pe2", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [], + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection for pe2.", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Awaiting approval", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet2" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg2/provders/Microsoft.Network/networkInterfaces/pe2.nic.zyxw9876" + } + ] + } + }, + { + "id": "/subscriptions/subId/resourceGroups/rg3/providers/Microsoft.Network/privateEndpoints/pe3", + "name": "pe3", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg3/providers/Microsoft.Network/privateLinkServices/testPls3", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection for pe3.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg3/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet3" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg3/provders/Microsoft.Network/networkInterfaces/pe3.nic.efgh5463" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceCreate.json new file mode 100644 index 000000000000..02b3ef08fb77 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceCreate.json @@ -0,0 +1,155 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "parameters": { + "location": "eastus", + "properties": { + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPls", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls.nic.abcd1234" + } + ] + } + } + }, + "201": { + "body": { + "name": "testPls", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceDelete.json new file mode 100644 index 000000000000..a180a12e114f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceDeletePrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceDeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..cde83d5cf834 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceDeletePrivateEndpointConnection.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "peConnectionName": "testPlePeConnection" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceGet.json new file mode 100644 index 000000000000..ee04a88c2e37 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceGet.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls" + }, + "responses": { + "200": { + "body": { + "name": "testPls", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "privateEndpointConnection", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceGetPrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceGetPrivateEndpointConnection.json new file mode 100644 index 000000000000..d4ea25d2228c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceGetPrivateEndpointConnection.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "peConnectionName": "testPlePeConnection" + }, + "responses": { + "200": { + "body": { + "name": "testPlePeConnection", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceList.json new file mode 100644 index 000000000000..77fa66acfe17 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceList.json @@ -0,0 +1,141 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPls1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb1" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb1", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb1" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "pec1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls1.nic.abcd1234" + } + ] + } + }, + { + "name": "testPls2", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb2" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb2", + "properties": { + "privateIPAddress": "10.0.1.5", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb2" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "pec2", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls2.nic.efgh5678" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceListAll.json new file mode 100644 index 000000000000..9943e70aec58 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceListAll.json @@ -0,0 +1,142 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPls1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb1" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb1", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb1" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "pec1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls1.nic.abcd1234" + } + ] + } + }, + { + "name": "testPls2", + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/privateLinkServices/testPls2", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb2" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb2", + "properties": { + "privateIPAddress": "10.0.1.5", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb2" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "pec1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/testPe2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg2/provders/Microsoft.Network/networkInterfaces/testPls2.nic.efgh5678" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceListPrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceListPrivateEndpointConnection.json new file mode 100644 index 000000000000..cf3ebea46af1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceListPrivateEndpointConnection.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPlePeConnection1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + }, + { + "name": "testPlePeConnection2", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe2" + }, + "privateLinkServiceConnectionState": { + "status": "Rejected", + "description": "rejected by some reason." + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json new file mode 100644 index 000000000000..2a3c5e7f9814 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "peConnectionName": "testPlePeConnection", + "parameters": { + "name": "testPlePeConnection", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPlePeConnection", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressCreateCustomizedValues.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressCreateCustomizedValues.json new file mode 100644 index 000000000000..c2dd9d5eed5e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressCreateCustomizedValues.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "zones": [ + "1" + ], + "parameters": { + "properties": { + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "publicIPAddressVersion": "IPv4" + }, + "sku": { + "name": "Standard" + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + }, + "201": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressCreateDefaults.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressCreateDefaults.json new file mode 100644 index 000000000000..02ecf65c0def --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressCreateDefaults.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "parameters": { + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Basic" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + }, + "201": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Basic" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressCreateDns.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressCreateDns.json new file mode 100644 index 000000000000..30a14590a495 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressCreateDns.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "parameters": { + "properties": { + "dnsSettings": { + "domainNameLabel": "dnslbl" + } + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "dnsSettings": { + "domainNameLabel": "dnslbl", + "fqdn": "dnslbl.westus.cloudapp.azure.com" + }, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + } + }, + "201": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "dnsSettings": { + "domainNameLabel": "dnslbl", + "fqdn": "dnslbl.westus.cloudapp.azure.com" + }, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressDelete.json new file mode 100644 index 000000000000..978b92192168 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressGet.json new file mode 100644 index 000000000000..39e533f0bfeb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "testDNS-ip" + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testDNS-ip", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + }, + "ipTags": [ + { + "ipTagType": "FirstPartyUsage", + "tag": "SQL" + }, + { + "ipTagType": "FirstPartyUsage", + "tag": "Storage" + } + ] + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressList.json new file mode 100644 index 000000000000..23f5655dd35e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testDNS-ip", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + }, + "ipTags": [ + { + "ipTagType": "FirstPartyUsage", + "tag": "SQL" + }, + { + "ipTagType": "FirstPartyUsage", + "tag": "Storage" + } + ] + }, + "type": "Microsoft.Network/publicIPAddresses" + }, + { + "name": "ip03", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/ip03", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "40.85.154.247", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "dnsSettings": { + "domainNameLabel": "testlbl", + "fqdn": "testlbl.westus.cloudapp.azure.com" + }, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/testLb/frontendIPConfigurations/LoadBalancerFrontEnd" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressListAll.json new file mode 100644 index 000000000000..cefeb368b3f3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressListAll.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testDNS-ip", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + }, + { + "name": "ip01", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPAddresses/ip01", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "40.85.154.247", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "dnsSettings": { + "domainNameLabel": "testlbl", + "fqdn": "testlbl.westus.cloudapp.azure.com" + }, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/loadBalancers/testLb/frontendIPConfigurations/LoadBalancerFrontEnd" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressUpdateTags.json new file mode 100644 index 000000000000..772bb0fd3cb8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpAddressUpdateTags.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixCreateCustomizedValues.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixCreateCustomizedValues.json new file mode 100644 index 000000000000..3b0a951d6c30 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixCreateCustomizedValues.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix", + "zones": [ + "1" + ], + "parameters": { + "location": "westus", + "properties": { + "publicIPAddressVersion": "IPv4", + "prefixLength": 30 + }, + "sku": { + "name": "Standard" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + }, + "201": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixCreateDefaults.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixCreateDefaults.json new file mode 100644 index 000000000000..8b856d413015 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixCreateDefaults.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix", + "parameters": { + "location": "westus", + "properties": { + "prefixLength": 30 + }, + "sku": { + "name": "Standard" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + }, + "201": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixDelete.json new file mode 100644 index 000000000000..c95bedf13e64 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixGet.json new file mode 100644 index 000000000000..d62a6fe4395b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix" + }, + "responses": { + "200": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [], + "publicIPAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixList.json new file mode 100644 index 000000000000..a0777bf4ec97 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixList.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "40.85.154.2/30", + "ipTags": [ + { + "ipTagType": "FirstPartyUsage", + "tag": "SQL" + } + ] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + }, + { + "name": "ipprefix03", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/ipprefix03", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 31, + "ipPrefix": "40.85.153.2/31", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixListAll.json new file mode 100644 index 000000000000..b45913944fb6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixListAll.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "41.85.154.247/30", + "ipTags": [], + "publicIPAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + }, + { + "name": "ipprefix01", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPPrefixes/ipprefix01", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "ipPrefix": "40.85.154.247/30", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + }, + { + "name": "pfx", + "id": "/subscriptions/subid/resourceGroups/rg3/providers/Microsoft.Network/publicIPPrefixes/pfx", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/publicIPPrefixes", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "ipPrefix": "25.101.84.16/30", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipTags": [], + "loadBalancerFrontendIpConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg3/providers/Microsoft.Network/loadBalancers/lb-pfx/frontendIPConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Standard" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixUpdateTags.json new file mode 100644 index 000000000000..09a217a25de9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/PublicIpPrefixUpdateTags.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "ipPrefix": "40.85.154.247/30", + "prefixLength": 30, + "ipTags": [] + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterCreate.json new file mode 100644 index 000000000000..382e8a1713cb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterCreate.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "routeFilterParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "rules": [ + { + "name": "ruleName", + "properties": { + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterDelete.json new file mode 100644 index 000000000000..6cdbce486930 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterGet.json new file mode 100644 index 000000000000..604140726a5c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterGet.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterList.json new file mode 100644 index 000000000000..2dd76d637dac --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterList.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterListByResourceGroup.json new file mode 100644 index 000000000000..6142b3991c5d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterListByResourceGroup.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterRuleCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterRuleCreate.json new file mode 100644 index 000000000000..857b4c26f2cb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterRuleCreate.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "ruleName": "ruleName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "routeFilterRuleParameters": { + "properties": { + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterRuleDelete.json new file mode 100644 index 000000000000..8c52a0e35751 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "ruleName": "ruleName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterRuleGet.json new file mode 100644 index 000000000000..9b550f23c52e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterRuleGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "ruleName": "filterName", + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterRuleListByRouteFilter.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterRuleListByRouteFilter.json new file mode 100644 index 000000000000..165ce5075ff2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterRuleListByRouteFilter.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "routeFilterName": "filterName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterUpdateTags.json new file mode 100644 index 000000000000..3351b2e13af2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteFilterUpdateTags.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "parameters": { + "tags": { + "key1": "value1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030" + ] + } + } + ], + "peerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableCreate.json new file mode 100644 index 000000000000..dc3cb6ae2d7b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableCreate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "parameters": { + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [], + "disableBgpRoutePropagation": true + } + } + }, + "201": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": true, + "routes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableCreateWithRoute.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableCreateWithRoute.json new file mode 100644 index 000000000000..b41c7655be32 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableCreateWithRoute.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "parameters": { + "properties": { + "disableBgpRoutePropagation": true, + "routes": [ + { + "name": "route1", + "properties": { + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + }, + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": true, + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + }, + "201": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableDelete.json new file mode 100644 index 000000000000..a9e51f9ad619 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableGet.json new file mode 100644 index 000000000000..255bff40aa22 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt" + }, + "responses": { + "200": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": false, + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableList.json new file mode 100644 index 000000000000..98ce6e4420d8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableList.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": true, + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + }, + { + "name": "testrt2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt2", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "disableBgpRoutePropagation": true, + "provisioningState": "Succeeded", + "routes": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableListAll.json new file mode 100644 index 000000000000..17e77b64b84f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableListAll.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + }, + { + "name": "testrt3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/routeTables/testrt3", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableRouteCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableRouteCreate.json new file mode 100644 index 000000000000..3502c5f76467 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableRouteCreate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "routeName": "route1", + "routeParameters": { + "properties": { + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + }, + "responses": { + "200": { + "body": { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + }, + "201": { + "body": { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableRouteDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableRouteDelete.json new file mode 100644 index 000000000000..ed226959b42e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableRouteDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "routeName": "route1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableRouteGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableRouteGet.json new file mode 100644 index 000000000000..4e501ad752a4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableRouteGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "routeName": "route1" + }, + "responses": { + "200": { + "body": { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "Internet" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableRouteList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableRouteList.json new file mode 100644 index 000000000000..a4de4b47c1b7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableRouteList.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "Internet" + } + }, + { + "name": "route2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route2", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.2.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableUpdateTags.json new file mode 100644 index 000000000000..561512d78563 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/RouteTableUpdateTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "routes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceCommunityList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceCommunityList.json new file mode 100644 index 000000000000..1177d15dcdc8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceCommunityList.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Network/bgpServiceCommunities/skype", + "name": "skype", + "type": "Microsoft.Network/bgpServiceCommunities", + "properties": { + "serviceName": "skype", + "bgpCommunities": [ + { + "serviceSupportedRegion": "Global", + "communityName": "Skype For Business Online", + "communityValue": "12076:5030", + "communityPrefixes": [ + "13.67.56.225/32", + "13.67.186.105/32" + ], + "isAuthorizedToUse": true, + "serviceGroup": "O365" + } + ] + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.Network/bgpServiceCommunities/exchange", + "name": "exchange", + "type": "Microsoft.Network/bgpServiceCommunities", + "properties": { + "serviceName": "exchange", + "bgpCommunities": [ + { + "serviceSupportedRegion": "Global", + "communityName": "Exchange Online", + "communityValue": "12076:5040", + "communityPrefixes": [ + "13.67.56.225/32", + "13.67.186.105/32" + ], + "isAuthorizedToUse": true, + "serviceGroup": "O365" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyCreate.json new file mode 100644 index 000000000000..bdde46f81f71 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyCreate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "parameters": { + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ServiceEndpointPolicies/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + }, + "201": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyCreateWithDefinition.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyCreateWithDefinition.json new file mode 100644 index 000000000000..625f193ba4de --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyCreateWithDefinition.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "parameters": { + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ServiceEndpointPolicies/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + }, + "201": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ServiceEndpointPolicies/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDefinitionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDefinitionCreate.json new file mode 100644 index 000000000000..d6f0e06d8cb8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDefinitionCreate.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "serviceEndpointPolicyDefinitionName": "testDefinition", + "ServiceEndpointPolicyDefinitions": { + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "testDefinition", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy/serviceEndpointPolicyDefinitions/testDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + }, + "201": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDefinitionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDefinitionDelete.json new file mode 100644 index 000000000000..f1a8be9e5f01 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDefinitionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "serviceEndpointPolicyDefinitionName": "testDefinition" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDefinitionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDefinitionGet.json new file mode 100644 index 000000000000..78d0ec684d70 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDefinitionGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "serviceEndpointPolicyDefinitionName": "testDefinition" + }, + "responses": { + "200": { + "body": { + "name": "testDefinition", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy/serviceEndpointPolicyDefinitions/testDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDefinitionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDefinitionList.json new file mode 100644 index 000000000000..b5a78ce63c0a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDefinitionList.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testDef", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy/serviceEndpointPolicyDefinitions/testDef", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDelete.json new file mode 100644 index 000000000000..3ab84fb05e85 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "serviceEndpointPolicy1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyGet.json new file mode 100644 index 000000000000..53ba4b525bf7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testServiceEndpointPolicy" + }, + "responses": { + "200": { + "body": { + "name": "testServiceEndpointPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyList.json new file mode 100644 index 000000000000..ce8eb361a0de --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyList.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testServiceEndpointPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + }, + { + "name": "testServiceEndpointPolicy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy1", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition1", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyListAll.json new file mode 100644 index 000000000000..e42274544acc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyListAll.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition1", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + }, + { + "name": "testPolicy1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy2", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition2", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyUpdateTags.json new file mode 100644 index 000000000000..c4342aa7a1ed --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceEndpointPolicyUpdateTags.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testServiceEndpointPolicy", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testServiceEndpointPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceTagsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceTagsList.json new file mode 100644 index 000000000000..1fee33d4f31c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/ServiceTagsList.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "location": "westcentralus", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "name": "public", + "id": "/subscriptions/subId/providers/Microsoft.Network/serviceTags/public", + "type": "Microsoft.Network/serviceTags", + "changeNumber": "63", + "cloud": "Public", + "values": [ + { + "name": "ApiManagement", + "id": "ApiManagement", + "properties": { + "changeNumber": "7", + "region": "", + "systemService": "AzureApiManagement", + "addressPrefixes": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ] + } + }, + { + "name": "ApiManagement.AustraliaCentral", + "id": "ApiManagement.AustraliaCentral", + "properties": { + "changeNumber": "2", + "region": "australiacentral", + "systemService": "AzureApiManagement", + "addressPrefixes": [ + "20.36.106.68/31", + "20.36.107.176/28" + ] + } + }, + { + "name": "AppService", + "id": "AppService", + "properties": { + "changeNumber": "13", + "region": "", + "systemService": "AzureAppService", + "addressPrefixes": [ + "13.64.73.110/32", + "191.235.208.12/32", + "191.235.215.184/32" + ] + } + }, + { + "name": "ServiceBus", + "id": "ServiceBus", + "properties": { + "changeNumber": "10", + "region": "", + "systemService": "AzureServiceBus", + "addressPrefixes": [ + "23.98.82.96/29", + "40.68.127.68/32", + "40.70.146.64/29" + ] + } + }, + { + "name": "ServiceBus.EastUS2", + "id": "ServiceBus.EastUS2", + "properties": { + "changeNumber": "1", + "region": "eastus2", + "systemService": "AzureServiceBus", + "addressPrefixes": [ + "13.68.110.36/32", + "40.70.146.64/29" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetCreate.json new file mode 100644 index 000000000000..e8166d8f9bf0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetCreate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "subnetParameters": { + "properties": { + "addressPrefix": "10.0.0.0/16" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetCreateServiceEndpoint.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetCreateServiceEndpoint.json new file mode 100644 index 000000000000..969258bccaa9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetCreateServiceEndpoint.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "subnetParameters": { + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ], + "provisioningState": "Succeeded" + } + ], + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ], + "provisioningState": "Succeeded" + } + ], + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetCreateWithDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetCreateWithDelegation.json new file mode 100644 index 000000000000..b422f578601a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetCreateWithDelegation.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2019-12-01", + "subscriptionId": "subId", + "subnetParameters": { + "properties": { + "addressPrefix": "10.0.0.0/16" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetDelete.json new file mode 100644 index 000000000000..34d2d9c42e2d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetGet.json new file mode 100644 index 000000000000..224b59e8fc13 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetGet.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetGetWithDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetGetWithDelegation.json new file mode 100644 index 000000000000..61d547443b51 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetGetWithDelegation.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2019-12-01", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetList.json new file mode 100644 index 000000000000..7a9b567820c3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet2", + "name": "subnet2", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetPrepareNetworkPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetPrepareNetworkPolicies.json new file mode 100644 index 000000000000..3c0429cd444e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetPrepareNetworkPolicies.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "subnetName": "subnet1", + "prepareNetworkPoliciesRequestParameters": { + "serviceName": "Microsoft.Sql/managedInstances" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetUnprepareNetworkPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetUnprepareNetworkPolicies.json new file mode 100644 index 000000000000..6a924973d27a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/SubnetUnprepareNetworkPolicies.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "subnetName": "subnet1", + "unprepareNetworkPoliciesRequestParameters": { + "serviceName": "Microsoft.Sql/managedInstances" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/UsageList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/UsageList.json new file mode 100644 index 000000000000..2817536edcb2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/UsageList.json @@ -0,0 +1,265 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "currentValue": 8.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/VirtualNetworks", + "limit": 50.0, + "name": { + "localizedValue": "Virtual Networks", + "value": "VirtualNetworks" + }, + "unit": "Count" + }, + { + "currentValue": 3.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/StaticPublicIPAddresses", + "limit": 20.0, + "name": { + "localizedValue": "Static Public IP Addresses", + "value": "StaticPublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 1.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/NetworkSecurityGroups", + "limit": 100.0, + "name": { + "localizedValue": "Network Security Groups", + "value": "NetworkSecurityGroups" + }, + "unit": "Count" + }, + { + "currentValue": 8.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/PublicIPAddresses", + "limit": 60.0, + "name": { + "localizedValue": "Public IP Addresses", + "value": "PublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/NetworkInterfaces", + "limit": 350.0, + "name": { + "localizedValue": "Network Interfaces", + "value": "NetworkInterfaces" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/LoadBalancers", + "limit": 100.0, + "name": { + "localizedValue": "Load Balancers", + "value": "LoadBalancers" + }, + "unit": "Count" + }, + { + "currentValue": 1.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/ApplicationGateways", + "limit": 50.0, + "name": { + "localizedValue": "Application Gateways", + "value": "ApplicationGateways" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteTables", + "limit": 100.0, + "name": { + "localizedValue": "Route Tables", + "value": "RouteTables" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteFilters", + "limit": 1000.0, + "name": { + "localizedValue": "Route Filters", + "value": "RouteFilters" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/NetworkWatchers", + "limit": 1.0, + "name": { + "localizedValue": "Network Watchers", + "value": "NetworkWatchers" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/PacketCaptures", + "limit": 10.0, + "name": { + "localizedValue": "Packet Captures", + "value": "PacketCaptures" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/DnsServersPerVirtualNetwork", + "limit": 9.0, + "name": { + "localizedValue": "DNS servers per Virtual Network", + "value": "DnsServersPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SubnetsPerVirtualNetwork", + "limit": 1000.0, + "name": { + "localizedValue": "Subnets per Virtual Network", + "value": "SubnetsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/IPConfigurationsPerVirtualNetwork", + "limit": 4096.0, + "name": { + "localizedValue": "IP Configurations per Virtual Network", + "value": "IPConfigurationsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/PeeringsPerVirtualNetwork", + "limit": 10.0, + "name": { + "localizedValue": "Peerings per Virtual Network", + "value": "PeeringsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SecurityRulesPerNetworkSecurityGroup", + "limit": 200.0, + "name": { + "localizedValue": "Security rules per Network Security Group", + "value": "SecurityRulesPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SecurityRuleAddressesOrPortsPerNetworkSecurityGroup", + "limit": 2000.0, + "name": { + "localizedValue": "Security rules addresses or ports per Network Security Group", + "value": "SecurityRuleAddressesOrPortsPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/InboundRulesPerLoadBalancer", + "limit": 150.0, + "name": { + "localizedValue": "Inbound Rules per Load Balancer", + "value": "InboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/FrontendIPConfigurationPerLoadBalancer", + "limit": 10.0, + "name": { + "localizedValue": "Frontend IP Configurations per Load Balancer", + "value": "FrontendIPConfigurationPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/outboundRulesPerLoadBalancer", + "limit": 5.0, + "name": { + "localizedValue": "Outbound Rules per Load Balancer", + "value": "outboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RoutesPerRouteTable", + "limit": 100.0, + "name": { + "localizedValue": "Routes per Route Table", + "value": "RoutesPerRouteTable" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SecondaryIPConfigurationsPerNetworkInterface", + "limit": 256.0, + "name": { + "localizedValue": "Secondary IP Configurations per Network Interface", + "value": "SecondaryIPConfigurationsPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/InboundRulesPerNetworkInterface", + "limit": 500.0, + "name": { + "localizedValue": "Inbound rules per Network Interface", + "value": "InboundRulesPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteFilterRulesPerRouteFilter", + "limit": 1.0, + "name": { + "localizedValue": "Route filter rules per Route Filter", + "value": "RouteFilterRulesPerRouteFilter" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteFiltersPerExpressRouteBgpPeering", + "limit": 1.0, + "name": { + "localizedValue": "Route filters per Express route BGP Peering", + "value": "RouteFiltersPerExpressRouteBgpPeering" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/UsageListSpacedLocation.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/UsageListSpacedLocation.json new file mode 100644 index 000000000000..2d9679b4b636 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/UsageListSpacedLocation.json @@ -0,0 +1,335 @@ +{ + "parameters": { + "location": "West US", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "currentValue": 12.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/VirtualNetworks", + "limit": 50.0, + "name": { + "localizedValue": "Virtual Networks", + "value": "VirtualNetworks" + }, + "unit": "Count" + }, + { + "currentValue": 1.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/StaticPublicIPAddresses", + "limit": 20.0, + "name": { + "localizedValue": "Static Public IP Addresses", + "value": "StaticPublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 3.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkSecurityGroups", + "limit": 100.0, + "name": { + "localizedValue": "Network Security Groups", + "value": "NetworkSecurityGroups" + }, + "unit": "Count" + }, + { + "currentValue": 12.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PublicIPAddresses", + "limit": 60.0, + "name": { + "localizedValue": "Public IP Addresses", + "value": "PublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PublicIpPrefixes", + "limit": 2147483647.0, + "name": { + "localizedValue": "Public Ip Prefixes", + "value": "PublicIpPrefixes" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkInterfaces", + "limit": 24000.0, + "name": { + "localizedValue": "Network Interfaces", + "value": "NetworkInterfaces" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/LoadBalancers", + "limit": 100.0, + "name": { + "localizedValue": "Load Balancers", + "value": "LoadBalancers" + }, + "unit": "Count" + }, + { + "currentValue": 3.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/ApplicationGateways", + "limit": 50.0, + "name": { + "localizedValue": "Application Gateways", + "value": "ApplicationGateways" + }, + "unit": "Count" + }, + { + "currentValue": 5.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteTables", + "limit": 100.0, + "name": { + "localizedValue": "Route Tables", + "value": "RouteTables" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteFilters", + "limit": 1000.0, + "name": { + "localizedValue": "Route Filters", + "value": "RouteFilters" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkWatchers", + "limit": 1.0, + "name": { + "localizedValue": "Network Watchers", + "value": "NetworkWatchers" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PacketCaptures", + "limit": 100.0, + "name": { + "localizedValue": "Packet Captures", + "value": "PacketCaptures" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/ApplicationSecurityGroups", + "limit": 500.0, + "name": { + "localizedValue": "Application Security Groups.", + "value": "ApplicationSecurityGroups" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/DdosProtectionPlans", + "limit": 1.0, + "name": { + "localizedValue": "DDoS Protection Plans.", + "value": "DdosProtectionPlans" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/ServiceEndpointPolicies", + "limit": 200.0, + "name": { + "localizedValue": "Service Endpoint Policies", + "value": "ServiceEndpointPolicies" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkIntentPolicies", + "limit": 200.0, + "name": { + "localizedValue": "Network Intent Policies", + "value": "NetworkIntentPolicies" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/DnsServersPerVirtualNetwork", + "limit": 9.0, + "name": { + "localizedValue": "DNS servers per Virtual Network", + "value": "DnsServersPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SubnetsPerVirtualNetwork", + "limit": 1000.0, + "name": { + "localizedValue": "Subnets per Virtual Network", + "value": "SubnetsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/IPConfigurationsPerVirtualNetwork", + "limit": 16384.0, + "name": { + "localizedValue": "IP Configurations per Virtual Network", + "value": "IPConfigurationsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PeeringsPerVirtualNetwork", + "limit": 50.0, + "name": { + "localizedValue": "Peerings per Virtual Network", + "value": "PeeringsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecurityRulesPerNetworkSecurityGroup", + "limit": 1000.0, + "name": { + "localizedValue": "Security rules per Network Security Group", + "value": "SecurityRulesPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecurityRulesPerNetworkIntentPolicy", + "limit": 100.0, + "name": { + "localizedValue": "Security rules per Network Intent Policy", + "value": "SecurityRulesPerNetworkIntentPolicy" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RoutesPerNetworkIntentPolicy", + "limit": 100.0, + "name": { + "localizedValue": "Routes per Network Intent Policy", + "value": "RoutesPerNetworkIntentPolicy" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecurityRuleAddressesOrPortsPerNetworkSecurityGroup", + "limit": 2000.0, + "name": { + "localizedValue": "Security rules addresses or ports per Network Security Group", + "value": "SecurityRuleAddressesOrPortsPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/InboundRulesPerLoadBalancer", + "limit": 150.0, + "name": { + "localizedValue": "Inbound Rules per Load Balancer", + "value": "InboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/FrontendIPConfigurationPerLoadBalancer", + "limit": 10.0, + "name": { + "localizedValue": "Frontend IP Configurations per Load Balancer", + "value": "FrontendIPConfigurationPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/OutboundRulesPerLoadBalancer", + "limit": 5.0, + "name": { + "localizedValue": "Outbound Rules per Load Balancer", + "value": "OutboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RoutesPerRouteTable", + "limit": 400.0, + "name": { + "localizedValue": "Routes per Route Table", + "value": "RoutesPerRouteTable" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecondaryIPConfigurationsPerNetworkInterface", + "limit": 256.0, + "name": { + "localizedValue": "Secondary IP Configurations per Network Interface", + "value": "SecondaryIPConfigurationsPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/InboundRulesPerNetworkInterface", + "limit": 500.0, + "name": { + "localizedValue": "Inbound rules per Network Interface", + "value": "InboundRulesPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteFilterRulesPerRouteFilter", + "limit": 1.0, + "name": { + "localizedValue": "Route filter rules per Route Filter", + "value": "RouteFilterRulesPerRouteFilter" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteFiltersPerExpressRouteBgpPeering", + "limit": 1.0, + "name": { + "localizedValue": "Route filters per Express route BGP Peering", + "value": "RouteFiltersPerExpressRouteBgpPeering" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubDelete.json new file mode 100644 index 000000000000..6ecf6376f9d5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubGet.json new file mode 100644 index 000000000000..10549a0ef306 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub1", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [], + "virtualHubRouteTableV2s": [], + "addressPrefix": "10.10.1.0/24", + "sku": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubList.json new file mode 100644 index 000000000000..810ef5d8ab24 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubList.json @@ -0,0 +1,146 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub1", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ + { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/SpokeVnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ], + "virtualHubRouteTableV2s": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/routeTables/virtualHubRouteTable2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "rt2a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + ], + "addressPrefix": "10.10.1.0/24", + "sku": "Basic" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ + { + "name": "connection2", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2/hubVirtualNetworkConnections/connection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/SpokeVnet2" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ], + "virtualHubRouteTableV2s": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/routeTables/virtualHubRouteTable2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "rt2a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + ], + "addressPrefix": "210.10.1.0/24", + "sku": "Basic" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubListByResourceGroup.json new file mode 100644 index 000000000000..0f2c24b3d45c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubListByResourceGroup.json @@ -0,0 +1,147 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub1", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ + { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/SpokeVnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ], + "virtualHubRouteTableV2s": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/routeTables/virtualHubRouteTable2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "rt2a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + ], + "addressPrefix": "10.10.1.0/24", + "sku": "Basic" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ + { + "name": "connection2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/hubVirtualNetworkConnections/connection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/SpokeVnet2" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ], + "virtualHubRouteTableV2s": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/routeTables/virtualHubRouteTable2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "rt2a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + ], + "addressPrefix": "210.10.1.0/24", + "sku": "Basic" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubPut.json new file mode 100644 index 000000000000..159d83e1c8b8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubPut.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "virtualHubName": "virtualHub2", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "virtualHubParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "addressPrefix": "10.168.0.0/24", + "sku": "Basic" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [], + "virtualHubRouteTableV2s": [], + "addressPrefix": "10.168.0.0/24", + "sku": "Basic" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [], + "virtualHubRouteTableV2s": [], + "addressPrefix": "10.168.0.0/24", + "sku": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubRouteTableV2Delete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubRouteTableV2Delete.json new file mode 100644 index 000000000000..d106895e1b91 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubRouteTableV2Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "routeTableName": "virtualHubRouteTable1a", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "virtualHubName": "virtualHub1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubRouteTableV2Get.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubRouteTableV2Get.json new file mode 100644 index 000000000000..f16bfd05b02e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubRouteTableV2Get.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "routeTableName": "virtualHubRouteTable1a", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "virtualHubName": "virtualHub1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1a", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "virtualHubRouteTable1a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubRouteTableV2List.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubRouteTableV2List.json new file mode 100644 index 000000000000..9e711ff6d992 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubRouteTableV2List.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "virtualHubRouteTable1a", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1a", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + }, + { + "name": "virtualHubRouteTable1b", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1b", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.30.0.0/16", + "20.40.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Branches" + ] + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubRouteTableV2Put.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubRouteTableV2Put.json new file mode 100644 index 000000000000..11357cec4d0a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubRouteTableV2Put.json @@ -0,0 +1,113 @@ +{ + "parameters": { + "routeTableName": "virtualHubRouteTable1a", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "virtualHubName": "virtualHub1", + "virtualHubRouteTableV2Parameters": { + "properties": { + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1a", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "virtualHubRouteTable1a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1a", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "virtualHubRouteTable1a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubUpdateTags.json new file mode 100644 index 000000000000..a969edebb9ab --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualHubUpdateTags.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "virtualHubName": "virtualHub2", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "virtualHubParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [], + "virtualHubRouteTableV2s": [], + "addressPrefix": "10.168.0.0/24", + "sku": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCheckIPAddressAvailability.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCheckIPAddressAvailability.json new file mode 100644 index 000000000000..be2a0c7f0cf5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCheckIPAddressAvailability.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "ipAddress": "10.0.1.4" + }, + "responses": { + "200": { + "body": { + "available": false, + "availableIPAddresses": [ + "10.0.1.5", + "10.0.1.6", + "10.0.1.7", + "10.0.1.8", + "10.0.1.9" + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreate.json new file mode 100644 index 000000000000..60d3bd48b2bd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreate.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + } + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json new file mode 100644 index 000000000000..caddc76821fc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "vnetTest", + "virtualNetworkName": "vnet1", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage" + } + ], + "serviceEndpointPolicies": [ + { + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/serviceEndpointPolicies/ServiceEndpointPolicy1" + } + ] + } + } + ] + }, + "location": "eastus2euap" + } + }, + "responses": { + "200": { + "body": { + "name": "vnet1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus2euap", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "serviceEndpointPolicies": [ + { + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/serviceEndpointPolicies/ServiceEndpointPolicy1" + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "vnet1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus2euap", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "serviceEndpointPolicies": [ + { + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/serviceEndpointPolicies/ServiceEndpointPolicy1" + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateServiceEndpoints.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateServiceEndpoints.json new file mode 100644 index 000000000000..d70918d1a7fb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateServiceEndpoints.json @@ -0,0 +1,111 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "vnetTest", + "virtualNetworkName": "vnet1", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage" + } + ] + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "vnet1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "vnet1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateSubnet.json new file mode 100644 index 000000000000..52f5cc073ac4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateSubnet.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24" + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json new file mode 100644 index 000000000000..4d207b980bde --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-2", + "properties": { + "addressPrefixes": [ + "10.0.0.0/28", + "10.0.1.0/28" + ] + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-2", + "name": "test-2", + "properties": { + "addressPrefixes": [ + "10.0.0.0/28", + "10.1.0.0/28" + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-2", + "name": "test-2", + "properties": { + "addressPrefixes": [ + "10.0.0.0/28", + "10.0.1.0/28" + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateSubnetWithDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateSubnetWithDelegation.json new file mode 100644 index 000000000000..211f537da795 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateSubnetWithDelegation.json @@ -0,0 +1,114 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "delegations": [ + { + "name": "myDelegation", + "properties": { + "serviceName": "Microsoft.Sql/managedInstances" + } + } + ] + } + } + ] + }, + "location": "westcentralus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Sql/managedInstances", + "actions": [] + } + } + ], + "purpose": "" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Sql/managedInstances", + "actions": [] + } + } + ], + "purpose": "" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateWithBgpCommunities.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateWithBgpCommunities.json new file mode 100644 index 000000000000..a3aadfed64b0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkCreateWithBgpCommunities.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24" + } + } + ], + "bgpCommunities": { + "virtualNetworkCommunity": "12076:60000" + } + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "bgpCommunities": { + "virtualNetworkCommunity": "12076:60000", + "regionalCommunity": "12076:51004" + }, + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "bgpCommunities": { + "virtualNetworkCommunity": "12076:60000", + "regionalCommunity": "12076:51004" + }, + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkDelete.json new file mode 100644 index 000000000000..16f50f4f7f02 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionCreate.json new file mode 100644 index 000000000000..d8f599afd07c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionCreate.json @@ -0,0 +1,133 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "connS2S", + "parameters": { + "properties": { + "virtualNetworkGateway1": { + "properties": { + "ipConfigurations": [ + { + "properties": { + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + } + }, + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1" + } + ], + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1" + }, + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "location": "centralus", + "tags": {} + }, + "localNetworkGateway2": { + "properties": { + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "location": "centralus", + "tags": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "sharedKey": "Abc123", + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [] + }, + "location": "centralus" + } + }, + "responses": { + "201": { + "body": { + "name": "connS2S", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/connS2S", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "properties": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "sharedKey": "Abc123", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + }, + "200": { + "body": { + "name": "connS2S", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/connS2S", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "properties": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "sharedKey": "Abc123", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionDelete.json new file mode 100644 index 000000000000..e648874b4724 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "conn1" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionGet.json new file mode 100644 index 000000000000..a877b0b1ddbe --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionGet.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "connS2S" + }, + "responses": { + "200": { + "body": { + "name": "connS2S", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/connS2S", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "properties": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "sharedKey": "Abc123", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "connectionStatus": "Connecting", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json new file mode 100644 index 000000000000..f055eaad6e12 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "connS2S" + }, + "responses": { + "200": { + "body": { + "value": "AzureAbc123" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json new file mode 100644 index 000000000000..fbf6ab0b74d3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "conn1", + "parameters": { + "keyLength": 128 + } + }, + "responses": { + "200": { + "body": { + "keyLength": 128 + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json new file mode 100644 index 000000000000..384c1845298d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "connS2S", + "parameters": { + "value": "AzureAbc123" + } + }, + "responses": { + "200": { + "body": { + "value": "AzureAbc123" + } + }, + "201": { + "body": { + "value": "AzureAbc123" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionStartPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionStartPacketCapture.json new file mode 100644 index 000000000000..25ec1acc7e81 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionStartPacketCapture.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngwcn1" + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json new file mode 100644 index 000000000000..d568f9660686 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngwcn1", + "parameters": { + "filterData": "{'TracingFlags': 11,'MaxPacketBufferSize': 120,'MaxFileSize': 200,'Filters': [{'SourceSubnets': ['20.1.1.0/24'],'DestinationSubnets': ['10.1.1.0/24'],'SourcePort': [500],'DestinationPort': [4500],'Protocol': 6,'TcpFlags': 16,'CaptureSingleDirectionTrafficOnly': true}]}" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionStopPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionStopPacketCapture.json new file mode 100644 index 000000000000..a50a4ff8e3a0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionStopPacketCapture.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngwcn1", + "parameters": { + "sasUrl": "https://teststorage.blob.core.windows.net/?sv=2018-03-28&ss=bfqt&srt=sco&sp=rwdlacup&se=2019-09-13T07:44:05Z&st=2019-09-06T23:44:05Z&spr=https&sig=V1h9D1riltvZMI69d6ihENnFo%2FrCvTqGgjO2lf%2FVBhE%3D" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json new file mode 100644 index 000000000000..7d90ee0e7c0f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "test", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/test", + "type": "Microsoft.Network/connections", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/lgw", + "properties": {} + }, + "connectionType": "IPsec", + "routingWeight": 0, + "sharedKey": "temp1234", + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "connectionStatus": "Unknown", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionsList.json new file mode 100644 index 000000000000..a4fd6036ea4e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayConnectionsList.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "conn1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/conn1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw1", + "properties": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv1", + "routingWeight": 0, + "enableBgp": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + }, + { + "name": "conn2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/conn2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2", + "properties": {} + }, + "localNetworkGateway2": { + "properties": {}, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw2" + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "enableBgp": false, + "useLocalAzureIpAddress": true, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayDelete.json new file mode 100644 index 000000000000..c6a72b9af008 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json new file mode 100644 index 000000000000..0597b82b5929 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": {} + }, + "responses": { + "200": { + "body": "" + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json new file mode 100644 index 000000000000..2c287ecb04e3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": {} + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGet.json new file mode 100644 index 000000000000..280779da8e30 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGet.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "enablePrivateIpAddress": false, + "activeActive": false, + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "aadTenant": "https://login.microsoftonline.com/99163270-c9ab-4279-bb12-5353ed9bf6e1", + "aadAudience": "fd11706c-e78c-4828-8be7-ac7dcefd4b17", + "aadIssuer": "https://sts.windows.net/99163270-c9ab-4279-bb12-5353ed9bf6e1/" + }, + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json new file mode 100644 index 000000000000..3fbd9c4305f4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "peer": "test" + }, + "responses": { + "202": {}, + "200": { + "body": {} + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json new file mode 100644 index 000000000000..6545611f8c5b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": {} + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json new file mode 100644 index 000000000000..253ee5b6be76 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "200": { + "body": { + "saLifeTimeSeconds": 86473, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup2", + "pfsGroup": "PFS2" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json new file mode 100644 index 000000000000..2d78493c96ad --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json new file mode 100644 index 000000000000..a8e72e8c1188 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "resourceGroupName": "p2s-vnet-test", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "virtualNetworkGatewayName": "vpnp2sgw" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "vpnConnectionId": "IKEv2_1e1cfe59-5c7c-4315-a876-b11fbfdfeed4", + "vpnConnectionDuration": 900, + "vpnConnectionTime": "2019-05-02T22:26:22", + "publicIpAddress": "167.220.2.232:45522", + "privateIpAddress": "192.168.210.2", + "vpnUserName": "gwp2schildcert", + "maxBandwidth": 240000000, + "egressPacketsTransferred": 557, + "egressBytesTransferred": 33420, + "ingressPacketsTransferred": 557, + "ingressBytesTransferred": 33420, + "maxPacketsPerSecond": 4 + }, + { + "vpnConnectionId": "IKEv2_571cfe59-2c7d-1415-e813-c51fbfdfea16", + "vpnConnectionDuration": 800, + "vpnConnectionTime": "2019-05-01T21:06:12", + "publicIpAddress": "167.220.2.232:45213", + "privateIpAddress": "192.168.210.1", + "vpnUserName": "gwp2schildcert", + "maxBandwidth": 220000000, + "egressPacketsTransferred": 357, + "egressBytesTransferred": 23420, + "ingressPacketsTransferred": 357, + "ingressBytesTransferred": 23420, + "maxPacketsPerSecond": 4 + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayLearnedRoutes.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayLearnedRoutes.json new file mode 100644 index 000000000000..6545611f8c5b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayLearnedRoutes.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": {} + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayList.json new file mode 100644 index 000000000000..877a94f2c64d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayList.json @@ -0,0 +1,129 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "vpngw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "loc1", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "default", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1/ipConfigurations/default", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/vpngw1-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 2 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "enablePrivateIpAddress": false, + "activeActive": false, + "vpnClientConfiguration": { + "vpnClientProtocols": [], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [] + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.0.14", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + }, + { + "name": "vpngw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "loc2", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "default", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2/ipConfigurations/default", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddress": "10.1.0.7", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/vpngw2-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 2 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "enablePrivateIpAddress": true, + "activeActive": false, + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "aadTenant": "https://login.microsoftonline.com/99163270-c9ab-4279-bb12-5353ed9bf6e1", + "aadAudience": "fd11706c-e78c-4828-8be7-ac7dcefd4b17", + "aadIssuer": "https://sts.windows.net/99163270-c9ab-4279-bb12-5353ed9bf6e1/" + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.1.0.46", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayReset.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayReset.json new file mode 100644 index 000000000000..15d12cf49fd1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayReset.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json new file mode 100644 index 000000000000..9d57e56b94cd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json new file mode 100644 index 000000000000..f423d39b7110 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "vpnclientIpsecParams": { + "saLifeTimeSeconds": 86473, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup2", + "pfsGroup": "PFS2" + } + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayStartPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayStartPacketCapture.json new file mode 100644 index 000000000000..d1461ea491ed --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayStartPacketCapture.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json new file mode 100644 index 000000000000..7b6a24b9acff --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": { + "filterData": "{'TracingFlags': 11,'MaxPacketBufferSize': 120,'MaxFileSize': 200,'Filters': [{'SourceSubnets': ['20.1.1.0/24'],'DestinationSubnets': ['10.1.1.0/24'],'SourcePort': [500],'DestinationPort': [4500],'Protocol': 6,'TcpFlags': 16,'CaptureSingleDirectionTrafficOnly': true}]}" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayStopPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayStopPacketCapture.json new file mode 100644 index 000000000000..98e26ce4eb42 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayStopPacketCapture.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": { + "sasUrl": "https://teststorage.blob.core.windows.net/?sv=2018-03-28&ss=bfqt&srt=sco&sp=rwdlacup&se=2019-09-13T07:44:05Z&st=2019-09-06T23:44:05Z&spr=https&sig=V1h9D1riltvZMI69d6ihENnFo%2FrCvTqGgjO2lf%2FVBhE%3D" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json new file mode 100644 index 000000000000..dd3574dc61d0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayUpdate.json new file mode 100644 index 000000000000..ad1aba788899 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayUpdate.json @@ -0,0 +1,200 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": { + "properties": { + "ipConfigurations": [ + { + "properties": { + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + } + }, + "name": "gwipconfig1" + } + ], + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "enableDnsForwarding": true, + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1" + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + }, + "location": "centralus" + } + }, + "responses": { + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "activeActive": false, + "enableDnsForwarding": true, + "inboundDnsForwardingEndpoint": "10.0.1.14", + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "aadTenant": "", + "aadAudience": "", + "aadIssuer": "" + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + }, + "201": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "enableDnsForwarding": true, + "enablePrivateIpAddress": false, + "inboundDnsForwardingEndpoint": "10.0.1.14", + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "aadTenant": "https://login.microsoftonline.com/99163270-c9ab-4279-bb12-5353ed9bf6e1", + "aadAudience": "fd11706c-e78c-4828-8be7-ac7dcefd4b17", + "aadIssuer": "https://sts.windows.net/99163270-c9ab-4279-bb12-5353ed9bf6e1/" + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayUpdateTags.json new file mode 100644 index 000000000000..9c845217df0e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayUpdateTags.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "default", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/default", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testpub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 2 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "activeActive": false, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.0.254", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json new file mode 100644 index 000000000000..fb1777aed0e8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngw", + "parameters": { + "vendor": "Cisco", + "deviceFamily": "ISR", + "firmwareVersion": "IOS 15.1 (Preview)" + } + }, + "responses": { + "200": { + "body": "! Microsoft Corporation\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! Sample VPN tunnel configuration template for IOS-based devices\r\n!\r\n! This configuration template applies to Cisco VPN devices running IOS 15.1 or beyond (ISR or ASR)\r\n!\r\n\r\n\r\n\t\t\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! ACL rules\r\n!\r\n! Some VPN devices require explicit ACL rules to allow cross-premises traffic:\r\n!\r\n! 1. Allow traffic between on premises address ranges and VNet address ranges\r\n! 2. Allow IKE traffic (UDP:500) between on premises VPN devices and Azure VPN gateway\r\n! 3. Allow IPsec traffic (Proto:ESP) between on premises VPN devices and Azure VPN gateway\r\n!\r\n\t\t\r\naccess-list 101 permit ip 10.1.0.0 0.0.255.255 10.0.0.0 0.0.255.255\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! Internet Key Exchange (IKE) configuration\r\n!\r\n! This section specifies the authentication, encryption, hashing, and Diffie-Hellman group parameters for IKE\r\n! main mode or phase 1\r\n!\r\n\r\ncrypto ikev2 proposal SwaggerS2S-proposal\r\n encryption DES3\r\n integrity SHA384\r\n group DHGroup24\r\n lifetime 3600\r\n exit\r\n\r\ncrypto ikev2 policy SwaggerS2S-policy\r\n proposal SwaggerS2S-proposal\r\n exit\r\n\r\ncrypto ikev2 keyring SwaggerBranch-keyring\r\n\t\t\r\n\t\tpeer 52.173.199.254\r\n\t\taddress 52.173.199.254\r\n\t\tpre-shared-key lALEHuppeopJmA94exRNiRr2QzuZ6lOsvzu5IlJUEA6LthbTc8g5MTT86MCsGNMzGkTAaLuLnEJoD1Cn4cIlr94qKZm9drsgllzWvsPNezS71stAkaW1Bb7h6GBnDlDP\r\n exit\r\n\r\ncrypto ikev2 profile SwaggerS2S-profile\r\n match address local 10.3.0.0\r\n\tmatch identity remote address 52.173.199.254 255.255.255.255\r\n\t\t\r\n authentication remote pre-share\r\n authentication local pre-share\r\n keyring SwaggerBranch-keyring\r\n exit\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! IPsec configuration\r\n!\r\n! This section specifies encryption, authentication, tunnel mode properties for the Phase 2 negotiation\r\n!\r\ncrypto ipsec transform-set SwaggerS2S-TransformSet DES3 DES3\r\n mode tunnel\r\n exit\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! Crypto map configuration\r\n!\r\n! This section defines a crypto profile that binds the cross-premises network traffic to the IPsec and IKE\r\n! policy profiles for this connection. Then defines the VTI (virtual tunnel interface) with the crypto\r\n! profile. A random interface number (tunnel 1) was used with a random link local address (169.254.0.1/28)\r\n! for the tunnel interface. If either selection is already used in the VPN device, please select another\r\n! interface number or address. The only requirement is that they must not overlap with another interface\r\n! on the same VPN device.\r\n!\r\ncrypto ipsec profile SwaggerS2S-IPsecProfile\r\n set transform-set SwaggerS2S-TransformSet\r\n set ikev2-profile SwaggerS2S-profile\r\n set pfs None\r\n set security-association lifetime 3600\r\n exit\r\n\r\n\r\nint tunnel 52.173.199.254\r\n ip address 169.254.0.1 255.255.255.252\r\n ip tcp adjust-mss 1350\r\n tunnel source 10.3.0.0\r\n tunnel mode ipsec ipv4\r\n tunnel destination 52.173.199.254\r\n tunnel protection ipsec profile SwaggerS2S-IPsecProfile\r\n exit\r\n\r\n\tip route 10.0.0.0 255.255.0.0 tunnel 52.173.199.254 " + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewaysDisconnectP2sVpnConnections.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewaysDisconnectP2sVpnConnections.json new file mode 100644 index 000000000000..c37ce661da2b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewaysDisconnectP2sVpnConnections.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "vpn-gateway-test", + "virtualNetworkGatewayName": "vpngateway", + "api-version": "2019-12-01", + "request": { + "vpnConnectionIds": [ + "vpnconnId1", + "vpnconnId2" + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewaysListConnections.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewaysListConnections.json new file mode 100644 index 000000000000..48fec80b8df8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGatewaysListConnections.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "virtualNetworkGatewayName": "test-vpn-gateway-1", + "api-version": "2019-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-vpn-connection", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/connections/test-vpn-connection", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "type": "Microsoft.Network/connections", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkGateways/test-vpn-gateway-1" + }, + "virtualNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/testrg-2/providers/Microsoft.Network/virtualNetworkGateways/test-vpn-gateway-2" + }, + "connectionType": "Vnet2Vnet", + "routingWeight": 22, + "enableBgp": true, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGet.json new file mode 100644 index 000000000000..48150ab34ce9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGet.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "subnet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.1.0/24", + "ipConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe" + } + ] + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGetResourceNavigationLinks.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGetResourceNavigationLinks.json new file mode 100644 index 000000000000..73fdc456d79e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGetResourceNavigationLinks.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "vnet", + "subnetName": "subnet" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "redisCache_redis-tester", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/subnet/resourceNavigationLinks/redisCache_redis-tester", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworks/subnets/resourceNavigationLinks", + "properties": { + "provisioningState": "Succeeded", + "linkedResourceType": "Microsoft.Cache/redis", + "link": "/subscriptions/subid/resourceGroups/another-rg/providers/Microsoft.Cache/Redis/redis-tester" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGetServiceAssociationLinks.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGetServiceAssociationLinks.json new file mode 100644 index 000000000000..11c446f98865 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGetServiceAssociationLinks.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "vnet", + "subnetName": "subnet" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "acisal", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/subnet/serviceAssociationLinks/acisal", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworks/subnets/serviceAssociationLinks", + "properties": { + "provisioningState": "Succeeded", + "linkedResourceType": "Microsoft.ContainerInstance/containerGroups", + "allowDelete": true, + "locations": [ + "westus" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGetWithServiceAssociationLink.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGetWithServiceAssociationLink.json new file mode 100644 index 000000000000..30f72983256e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGetWithServiceAssociationLink.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "subnet1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1", + "etag": "W/\"4d3e91b4-f67f-48be-880b-e4a8abdd019e\"", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.214.0/24", + "ipConfigurationProfiles": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1" + } + ], + "serviceAssociationLinks": [ + { + "name": "serviceAssociationLink1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/serviceAssociationLinks/serviceAssociationLink1", + "etag": "W/\"4d3e91b4-f67f-48be-880b-e4a8abdd019e\"", + "properties": { + "provisioningState": "Succeeded", + "linkedResourceType": "Microsoft.Provider/resourceType" + } + } + ], + "serviceEndpoints": [], + "delegations": [ + { + "name": "aciDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/delegations/aciDelegation", + "etag": "W/\"4d3e91b4-f67f-48be-880b-e4a8abdd019e\"", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [ + "Microsoft.Network/virtualNetworks/subnets/action" + ] + } + } + ] + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGetWithSubnetDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGetWithSubnetDelegation.json new file mode 100644 index 000000000000..014cdb4f98b2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkGetWithSubnetDelegation.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "subnet1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.1.0/24", + "ipConfigurations": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe" + } + ], + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkList.json new file mode 100644 index 000000000000..94997ee9bf5d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkList.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1", + "name": "vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/8" + ] + }, + "dhcpOptions": { + "dnsServers": [] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2", + "name": "vnet2", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "dhcpOptions": { + "dnsServers": [ + "8.8.8.8" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkListAll.json new file mode 100644 index 000000000000..9ff5e580f121 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkListAll.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1", + "name": "vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/8" + ] + }, + "dhcpOptions": { + "dnsServers": [] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet2", + "name": "vnet2", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "dhcpOptions": { + "dnsServers": [ + "8.8.8.8" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkListUsage.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkListUsage.json new file mode 100644 index 000000000000..96d54ba40b60 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkListUsage.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "virtualNetworkName": "vnetName", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "currentValue": -1.0, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetName/subnets/GatewaySubnet", + "limit": -1.0, + "name": { + "localizedValue": "Subnet size and usage", + "value": "SubnetSpace" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetName/subnets/newSubnet", + "limit": 3.0, + "name": { + "localizedValue": "Subnet size and usage", + "value": "SubnetSpace" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkPeeringCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkPeeringCreate.json new file mode 100644 index 000000000000..fcd1fe76d871 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkPeeringCreate.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "virtualNetworkPeeringName": "peer", + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "VirtualNetworkPeeringParameters": { + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkPeeringDelete.json new file mode 100644 index 000000000000..7f35474538d4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "virtualNetworkPeeringName": "peer", + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkPeeringGet.json new file mode 100644 index 000000000000..0bdc3240dd6b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkPeeringGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "virtualNetworkPeeringName": "peer", + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkPeeringList.json new file mode 100644 index 000000000000..072e5a6658ef --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkPeeringList.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer2", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": false, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet3" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "13.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapCreate.json new file mode 100644 index 000000000000..77a39c6d1f63 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapCreate.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "test-vtap", + "parameters": { + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/ipconfig1" + } + }, + "location": "centraluseuap" + } + }, + "responses": { + "200": { + "body": { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + } + }, + "201": { + "body": { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapDelete.json new file mode 100644 index 000000000000..645d61d8d43b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "test-vtap" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapGet.json new file mode 100644 index 000000000000..dea2acf38d9c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "testvtap" + }, + "responses": { + "200": { + "body": { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapList.json new file mode 100644 index 000000000000..1eda5cfa12d7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapList.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + }, + { + "name": "testvtap2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap2", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface3/tapConfigurations/testtapConfiguration" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapListAll.json new file mode 100644 index 000000000000..f612568abdaa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapListAll.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + }, + { + "name": "testvtap2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap2", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface3/tapConfigurations/testtapConfiguration" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapUpdateTags.json new file mode 100644 index 000000000000..a2a2a4cbffe9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkTapUpdateTags.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "test-vtap", + "tapParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-vtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/test-vtap", + "location": "eastus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + }, + "type": "Microsoft.Network/virtualNetworkTaps" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkUpdateTags.json new file mode 100644 index 000000000000..099b6973a9a1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualNetworkUpdateTags.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "location": "westus", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterDelete.json new file mode 100644 index 000000000000..94c5fe55d33f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterGet.json new file mode 100644 index 000000000000..13baf1cb70e2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": { + "body": { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterListByResourceGroup.json new file mode 100644 index 000000000000..d8d174f764f2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterListByResourceGroup.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterListBySubscription.json new file mode 100644 index 000000000000..f22edecd1cb7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterListBySubscription.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPeeringDelete.json new file mode 100644 index 000000000000..a86095b2b32b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "peeringName": "peering1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPeeringGet.json new file mode 100644 index 000000000000..b197abbaf990 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPeeringGet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "peeringName": "peering1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": { + "body": { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPeeringList.json new file mode 100644 index 000000000000..a00994608c7d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPeeringList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPeeringPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPeeringPut.json new file mode 100644 index 000000000000..20ee20c0a284 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPeeringPut.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "peeringName": "peering1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter", + "parameters": { + "properties": { + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + }, + "responses": { + "200": { + "body": { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + }, + "201": { + "body": { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPut.json new file mode 100644 index 000000000000..59156a0dd732 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualRouterPut.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + }, + "201": { + "body": { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANDelete.json new file mode 100644 index 000000000000..fcc8e48ee761 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "VirtualWANName": "virtualWan1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANGet.json new file mode 100644 index 000000000000..e5c6769160c3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "VirtualWANName": "wan1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANList.json new file mode 100644 index 000000000000..a4e005766b4b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualWANs/wan2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "wan2", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANListByResourceGroup.json new file mode 100644 index 000000000000..7f2f0d934c3f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANListByResourceGroup.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "wan2", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub3", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub4" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite3", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite4" + ], + "type": "Basic" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANPut.json new file mode 100644 index 000000000000..a14a6d20cfc0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANPut.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "VirtualWANName": "wan1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "WANParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "disableVpnEncryption": false, + "type": "Basic" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANUpdateTags.json new file mode 100644 index 000000000000..df0a1144e394 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWANUpdateTags.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "VirtualWANName": "wan1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "WANParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWanSupportedSecurityProviders.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWanSupportedSecurityProviders.json new file mode 100644 index 000000000000..9620d5dc4fde --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VirtualWanSupportedSecurityProviders.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "virtualWANName": "wan1" + }, + "responses": { + "200": { + "description": "Request successful.", + "body": { + "supportedProviders": [ + { + "name": "AzureFirewall", + "url": "", + "type": "Native" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssNetworkInterfaceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssNetworkInterfaceGet.json new file mode 100644 index 000000000000..146f80e3d7f4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssNetworkInterfaceGet.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "nic1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "1" + }, + "responses": { + "200": { + "body": { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "dns.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssNetworkInterfaceIpConfigGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssNetworkInterfaceIpConfigGet.json new file mode 100644 index 000000000000..5b7c23b7b56b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssNetworkInterfaceIpConfigGet.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "2", + "networkInterfaceName": "nic1", + "ipConfigurationName": "ip1" + }, + "responses": { + "200": { + "body": { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/2/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.6", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssNetworkInterfaceIpConfigList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssNetworkInterfaceIpConfigList.json new file mode 100644 index 000000000000..e14de4e82a72 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssNetworkInterfaceIpConfigList.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "2", + "networkInterfaceName": "nic1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/2/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.6", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.2" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssNetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssNetworkInterfaceList.json new file mode 100644 index 000000000000..0ec937148391 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssNetworkInterfaceList.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualMachineScaleSetName": "vmss1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.0" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "ruw4wz3grewudjsyzrxj44pxod.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0" + } + } + }, + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "ruw4wz3grewudjsyzrxj44pxod.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssPublicIpGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssPublicIpGet.json new file mode 100644 index 000000000000..229c15712a0d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssPublicIpGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "virtualMachineScaleSetName": "vmss1", + "resourceGroupName": "vmss-tester", + "api-version": "2018-10-01", + "subscriptionId": "subid", + "virtualmachineIndex": 1, + "networkInterfaceName": "nic1", + "ipConfigurationName": "ip1", + "publicIpAddressName": "pub1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm1.testvmssacc", + "fqdn": "vm1.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.119.72", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssPublicIpListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssPublicIpListAll.json new file mode 100644 index 000000000000..605e0b831869 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssPublicIpListAll.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "virtualMachineScaleSetName": "vmss1", + "resourceGroupName": "vmss-tester", + "api-version": "2018-10-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm1.testvmssacc", + "fqdn": "vm1.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.119.72", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm3.testvmssacc", + "fqdn": "vm3.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.118.216", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssVmNetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssVmNetworkInterfaceList.json new file mode 100644 index 000000000000..e4f1cbf14ebf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssVmNetworkInterfaceList.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "ruw4wz3grewudjsyzrxj44pxod.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssVmPublicIpList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssVmPublicIpList.json new file mode 100644 index 000000000000..d21f5d40ed03 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VmssVmPublicIpList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "virtualMachineScaleSetName": "vmss1", + "resourceGroupName": "vmss-tester", + "api-version": "2018-10-01", + "subscriptionId": "subid", + "virtualmachineIndex": 1, + "networkInterfaceName": "nic1", + "ipConfigurationName": "ip1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm1.testvmssacc", + "fqdn": "vm1.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.119.72", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnConnectionDelete.json new file mode 100644 index 000000000000..721d0be90cd1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "connectionName": "vpnConnection1", + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnConnectionGet.json new file mode 100644 index 000000000000..881de0f5bfc1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnConnectionGet.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "connectionName": "vpnConnection1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnConnectionList.json new file mode 100644 index 000000000000..3a8361a6e360 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnConnectionList.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnConnectionPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnConnectionPut.json new file mode 100644 index 000000000000..1dc45c9353be --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnConnectionPut.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "connectionName": "vpnConnection1", + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "VpnConnectionParameters": { + "properties": { + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "properties": { + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + }, + "201": { + "body": { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayDelete.json new file mode 100644 index 000000000000..41a9695afd7e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayGet.json new file mode 100644 index 000000000000..c8901e6e4126 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayGet.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayList.json new file mode 100644 index 000000000000..5e47e5839c6f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayList.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + }, + { + "name": "gateway2", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2/vpnConnections/vpnConnection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "ipsecPolicies": [] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayListByResourceGroup.json new file mode 100644 index 000000000000..5e47e5839c6f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayListByResourceGroup.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + }, + { + "name": "gateway2", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2/vpnConnections/vpnConnection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "ipsecPolicies": [] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayPut.json new file mode 100644 index 000000000000..5d7086d8385f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayPut.json @@ -0,0 +1,170 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "vpnGatewayParameters": { + "location": "westcentralus", + "tags": { + "key1": "value1" + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "properties": { + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "properties": { + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key" + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65515, + "peerWeight": 0 + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + }, + "201": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayReset.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayReset.json new file mode 100644 index 000000000000..ecf8f2973d58 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayReset.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "gatewayName": "vpngw", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/vpngw", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/vpngw/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "ipsecPolicies": [] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayUpdateTags.json new file mode 100644 index 000000000000..690bcca6c5fc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnGatewayUpdateTags.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "vpnGatewayParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "sharedKey": "key", + "enableBgp": false, + "ipsecPolicies": [] + } + } + ], + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationDelete.json new file mode 100644 index 000000000000..437faa18b547 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "vpnServerConfigurationName": "vpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationGet.json new file mode 100644 index 000000000000..13702ff29ba8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationGet.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "vpnServerConfigurationName": "vpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationList.json new file mode 100644 index 000000000000..c2276b28833d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationList.json @@ -0,0 +1,128 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "vpnServerConfiguration2", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationListByResourceGroup.json new file mode 100644 index 000000000000..940f9904d952 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationListByResourceGroup.json @@ -0,0 +1,129 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration2", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationPut.json new file mode 100644 index 000000000000..3385ece69db3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationPut.json @@ -0,0 +1,177 @@ +{ + "parameters": { + "vpnServerConfigurationName": "vpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "VpnServerConfigurationParameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "vpnProtocols": [ + "IkeV2" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationUpdateTags.json new file mode 100644 index 000000000000..ab2f5ce75dce --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnServerConfigurationUpdateTags.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "vpnServerConfigurationName": "vpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "VpnServerConfigurationParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteDelete.json new file mode 100644 index 000000000000..2806bcafde15 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteGet.json new file mode 100644 index 000000000000..55370ab20087 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteLinkConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteLinkConnectionGet.json new file mode 100644 index 000000000000..84e27e7b128b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteLinkConnectionGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "connectionName": "vpnConnection1", + "linkConnectionName": "Connection-Link1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteLinkConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteLinkConnectionList.json new file mode 100644 index 000000000000..cd22eb6bd506 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteLinkConnectionList.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "connectionName": "vpnConnection1" + }, + "responses": { + "200": { + "body": [ + { + "name": "Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteLinkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteLinkGet.json new file mode 100644 index 000000000000..bc873b213c97 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteLinkGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "vpnSiteLinkName": "vpnSiteLink1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteLinkListByVpnSite.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteLinkListByVpnSite.json new file mode 100644 index 000000000000..a04770dff4ab --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteLinkListByVpnSite.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "vpnSiteName": "vpnSite1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkSpeedInMbps": 200 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + }, + { + "name": "vpnSiteLink2", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "40.40.40.46", + "linkProperties": { + "linkSpeedInMbps": 200 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.1", + "asn": 1234 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteList.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteList.json new file mode 100644 index 000000000000..3e7c4a01ffa6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteList.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "vpnSite2", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualWANs/wan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.1.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + }, + "isSecuritySite": false + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteListByResourceGroup.json new file mode 100644 index 000000000000..85fb2e3da71a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteListByResourceGroup.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite2", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.1.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSitePut.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSitePut.json new file mode 100644 index 000000000000..27cdb83f5222 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSitePut.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "VpnSiteParameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "properties": { + "ipAddress": "50.50.50.56", + "fqdn": "link1.vpnsite1.contoso.com", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteUpdateTags.json new file mode 100644 index 000000000000..46b777bab267 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSiteUpdateTags.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "subscriptionId": "subid", + "VpnSiteParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.0.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSitesConfigurationDownload.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSitesConfigurationDownload.json new file mode 100644 index 000000000000..4fe0afedcdee --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/VpnSitesConfigurationDownload.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "api-version": "2019-12-01", + "virtualWANName": "wan1", + "request": { + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/abc" + ], + "outputBlobSasUrl": "https://blobcortextesturl.blob.core.windows.net/folderforconfig/vpnFile?sp=rw&se=2018-01-10T03%3A42%3A04Z&sv=2017-04-17&sig=WvXrT5bDmDFfgHs%2Brz%2BjAu123eRCNE9BO0eQYcPDT7pY%3D&sr=b" + } + }, + "responses": { + "200": { + "description": "Request successful. Follow the location header for sas-url to output blob." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafListAllPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafListAllPolicies.json new file mode 100644 index 000000000000..8f8ffba2b17d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafListAllPolicies.json @@ -0,0 +1,102 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "state": "Enabled", + "mode": "Prevention", + "maxRequestBodySizeInKb": 128, + "fileUploadLimitInMb": 750, + "requestBodyCheck": true + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ], + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0" + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafListPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafListPolicies.json new file mode 100644 index 000000000000..14f9873a6e45 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafListPolicies.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "state": "Enabled", + "mode": "Detection", + "maxRequestBodySizeInKb": 128, + "fileUploadLimitInMb": 750, + "requestBodyCheck": true + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0" + } + ] + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafPolicyCreateOrUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafPolicyCreateOrUpdate.json new file mode 100644 index 000000000000..8c0dcc5b978d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafPolicyCreateOrUpdate.json @@ -0,0 +1,258 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "Policy1", + "parameters": { + "location": "WestUs", + "properties": { + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0" + } + ] + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "action": "Block", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ] + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeaders", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "state": "Enabled", + "mode": "Detection", + "maxRequestBodySizeInKb": 128, + "fileUploadLimitInMb": 750, + "requestBodyCheck": true + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0" + } + ] + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ] + } + } + }, + "201": { + "body": { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "state": "Enabled", + "mode": "Detection", + "maxRequestBodySizeInKb": 128, + "fileUploadLimitInMb": 750, + "requestBodyCheck": true + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0" + } + ] + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafPolicyDelete.json new file mode 100644 index 000000000000..1c5f5d3b9793 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafPolicyDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "Policy1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafPolicyGet.json new file mode 100644 index 000000000000..16635b5e1a1c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/examples/WafPolicyGet.json @@ -0,0 +1,140 @@ +{ + "parameters": { + "api-version": "2019-12-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "Policy1" + }, + "responses": { + "200": { + "body": { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "state": "Enabled", + "mode": "Prevention", + "maxRequestBodySizeInKb": 128, + "fileUploadLimitInMb": 750, + "requestBodyCheck": true + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ], + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0", + "ruleGroupOverrides": [ + { + "ruleGroupName": "REQUEST-942-APPLICATION-ATTACK-SQLI", + "rules": [ + { + "ruleId": "942130", + "state": "Disabled" + }, + { + "ruleId": "942110", + "state": "Disabled" + } + ] + }, + { + "ruleGroupName": "REQUEST-920-PROTOCOL-ENFORCEMENT", + "rules": [ + { + "ruleId": "920100", + "state": "Disabled" + }, + { + "ruleId": "920120", + "state": "Disabled" + } + ] + } + ] + } + ], + "exclusions": [ + { + "matchVariable": "RequestHeaderNames", + "selectorMatchOperator": "Equals", + "selector": "testHeader1" + }, + { + "matchVariable": "RequestHeaderNames", + "selectorMatchOperator": "StartsWith", + "selector": "testHeader2" + } + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/expressRouteCircuit.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/expressRouteCircuit.json new file mode 100644 index 000000000000..025509802a3d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/expressRouteCircuit.json @@ -0,0 +1,2507 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/authorizations/{authorizationName}": { + "delete": { + "tags": [ + "ExpressRouteCircuitAuthorizations" + ], + "operationId": "ExpressRouteCircuitAuthorizations_Delete", + "description": "Deletes the specified authorization from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "authorizationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the authorization." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete ExpressRouteCircuit Authorization": { + "$ref": "./examples/ExpressRouteCircuitAuthorizationDelete.json" + } + } + }, + "get": { + "tags": [ + "ExpressRouteCircuitAuthorizations" + ], + "operationId": "ExpressRouteCircuitAuthorizations_Get", + "description": "Gets the specified authorization from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "authorizationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the authorization." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the ExpressRouteCircuitAuthorization resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get ExpressRouteCircuit Authorization": { + "$ref": "./examples/ExpressRouteCircuitAuthorizationGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCircuitAuthorizations" + ], + "operationId": "ExpressRouteCircuitAuthorizations_CreateOrUpdate", + "description": "Creates or updates an authorization in the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "authorizationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the authorization." + }, + { + "name": "authorizationParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + }, + "description": "Parameters supplied to the create or update express route circuit authorization operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCircuitAuthorization resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuitAuthorization resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create ExpressRouteCircuit Authorization": { + "$ref": "./examples/ExpressRouteCircuitAuthorizationCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/authorizations": { + "get": { + "tags": [ + "ExpressRouteCircuitAuthorizations" + ], + "operationId": "ExpressRouteCircuitAuthorizations_List", + "description": "Gets all authorizations in an express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuitAuthorization resources.", + "schema": { + "$ref": "#/definitions/AuthorizationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuit Authorization": { + "$ref": "./examples/ExpressRouteCircuitAuthorizationList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}": { + "delete": { + "tags": [ + "ExpressRouteCircuitPeerings" + ], + "operationId": "ExpressRouteCircuitPeerings_Delete", + "description": "Deletes the specified peering from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete ExpressRouteCircuit Peerings": { + "$ref": "./examples/ExpressRouteCircuitPeeringDelete.json" + } + } + }, + "get": { + "tags": [ + "ExpressRouteCircuitPeerings" + ], + "operationId": "ExpressRouteCircuitPeerings_Get", + "description": "Gets the specified peering for the express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get ExpressRouteCircuit Peering": { + "$ref": "./examples/ExpressRouteCircuitPeeringGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCircuitPeerings" + ], + "operationId": "ExpressRouteCircuitPeerings_CreateOrUpdate", + "description": "Creates or updates a peering in the specified express route circuits.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "peeringParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + }, + "description": "Parameters supplied to the create or update express route circuit peering operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create ExpressRouteCircuit Peerings": { + "$ref": "./examples/ExpressRouteCircuitPeeringCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings": { + "get": { + "tags": [ + "ExpressRouteCircuitPeerings" + ], + "operationId": "ExpressRouteCircuitPeerings_List", + "description": "Gets all peerings in a specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuitPeering resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeeringListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuit Peerings": { + "$ref": "./examples/ExpressRouteCircuitPeeringList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/connections/{connectionName}": { + "delete": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_Delete", + "description": "Deletes the specified Express Route Circuit Connection from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete ExpressRouteCircuit": { + "$ref": "./examples/ExpressRouteCircuitConnectionDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_Get", + "description": "Gets the specified Express Route Circuit Connection from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Express Route Circuit Connection resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCircuitConnectionGet": { + "$ref": "./examples/ExpressRouteCircuitConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_CreateOrUpdate", + "description": "Creates or updates a Express Route Circuit Connection in the specified express route circuits.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit connection." + }, + { + "name": "expressRouteCircuitConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + }, + "description": "Parameters supplied to the create or update express route circuit connection operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCircuitConnectionCreate": { + "$ref": "./examples/ExpressRouteCircuitConnectionCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/connections": { + "get": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_List", + "description": "Gets all global reach connections associated with a private peering in an express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuitConnections resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuit Connection": { + "$ref": "./examples/ExpressRouteCircuitConnectionList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/peerConnections/{connectionName}": { + "get": { + "tags": [ + "PeerExpressRouteCircuitConnections" + ], + "operationId": "PeerExpressRouteCircuitConnections_Get", + "description": "Gets the specified Peer Express Route Circuit Connection from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peer express route circuit connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Peer Express Route Circuit Connection resource.", + "schema": { + "$ref": "#/definitions/PeerExpressRouteCircuitConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "PeerExpressRouteCircuitConnectionGet": { + "$ref": "./examples/PeerExpressRouteCircuitConnectionGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/peerConnections": { + "get": { + "tags": [ + "PeerExpressRouteCircuitConnections" + ], + "operationId": "PeerExpressRouteCircuitConnections_List", + "description": "Gets all global reach peer connections associated with a private peering in an express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PeerExpressRouteCircuitConnections resources.", + "schema": { + "$ref": "#/definitions/PeerExpressRouteCircuitConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Peer ExpressRouteCircuit Connection": { + "$ref": "./examples/PeerExpressRouteCircuitConnectionList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}": { + "delete": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_Delete", + "description": "Deletes the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted. Sets 'Disabling' provisioningState until the operation completes. Returns an operation URI that can be queried to find the current state of the operation." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete ExpressRouteCircuit": { + "$ref": "./examples/ExpressRouteCircuitDelete.json" + } + } + }, + "get": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_Get", + "description": "Gets information about the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of express route circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuit resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get ExpressRouteCircuit": { + "$ref": "./examples/ExpressRouteCircuitGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_CreateOrUpdate", + "description": "Creates or updates an express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + }, + "description": "Parameters supplied to the create or update express route circuit operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCircuit resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuit resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create ExpressRouteCircuit": { + "$ref": "./examples/ExpressRouteCircuitCreate.json" + }, + "Create ExpressRouteCircuit on ExpressRoutePort": { + "$ref": "./examples/ExpressRouteCircuitCreateOnExpressRoutePort.json" + } + } + }, + "patch": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_UpdateTags", + "description": "Updates an express route circuit tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update express route circuit tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuit resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update Express Route Circuit Tags": { + "$ref": "./examples/ExpressRouteCircuitUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/arpTables/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCircuitArpTable" + ], + "operationId": "ExpressRouteCircuits_ListArpTable", + "description": "Gets the currently advertised ARP table associated with the express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitsArpTable resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitsArpTableListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "List ARP Table": { + "$ref": "./examples/ExpressRouteCircuitARPTableList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/routeTables/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCircuitRoutesTable" + ], + "operationId": "ExpressRouteCircuits_ListRoutesTable", + "description": "Gets the currently advertised routes table associated with the express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitsRouteTable resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitsRoutesTableListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "List Route Tables": { + "$ref": "./examples/ExpressRouteCircuitRouteTableList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/routeTablesSummary/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCircuitRoutesTableSummary" + ], + "operationId": "ExpressRouteCircuits_ListRoutesTableSummary", + "description": "Gets the currently advertised routes table summary associated with the express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitsRoutesTableSummary resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitsRoutesTableSummaryListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "List Route Table Summary": { + "$ref": "./examples/ExpressRouteCircuitRouteTableSummaryList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/stats": { + "get": { + "tags": [ + "ExpressRouteCircuitStats" + ], + "operationId": "ExpressRouteCircuits_GetStats", + "description": "Gets all the stats from an express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitStats resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitStats" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get ExpressRoute Circuit Traffic Stats": { + "$ref": "./examples/ExpressRouteCircuitStats.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/stats": { + "get": { + "tags": [ + "ExpressRouteCircuitStats" + ], + "operationId": "ExpressRouteCircuits_GetPeeringStats", + "description": "Gets all stats from an express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitStats resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitStats" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get ExpressRoute Circuit Peering Traffic Stats": { + "$ref": "./examples/ExpressRouteCircuitPeeringStats.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits": { + "get": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_List", + "description": "Gets all the express route circuits in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitAuthorization resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuits in a resource group": { + "$ref": "./examples/ExpressRouteCircuitListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteCircuits": { + "get": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_ListAll", + "description": "Gets all the express route circuits in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuit resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuits in a subscription": { + "$ref": "./examples/ExpressRouteCircuitListBySubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteServiceProviders": { + "get": { + "tags": [ + "ExpressRouteServiceProviders" + ], + "operationId": "ExpressRouteServiceProviders_List", + "description": "Gets all the available express route service providers.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteServiceProvider resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteServiceProviderListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRoute providers": { + "$ref": "./examples/ExpressRouteProviderList.json" + } + } + } + } + }, + "definitions": { + "AuthorizationPropertiesFormat": { + "properties": { + "authorizationKey": { + "type": "string", + "description": "The authorization key." + }, + "authorizationUseStatus": { + "type": "string", + "description": "The authorization use status.", + "enum": [ + "Available", + "InUse" + ], + "x-ms-enum": { + "name": "AuthorizationUseStatus", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the authorization resource." + } + }, + "description": "Properties of ExpressRouteCircuitAuthorization." + }, + "ExpressRouteCircuitAuthorization": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AuthorizationPropertiesFormat", + "description": "Properties of the express route circuit authorization." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Authorization in an ExpressRouteCircuit resource." + }, + "AuthorizationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + }, + "description": "The authorizations in an ExpressRoute Circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListAuthorizations API service call retrieves all authorizations that belongs to an ExpressRouteCircuit." + }, + "ExpressRouteCircuitPeeringConfig": { + "properties": { + "advertisedPublicPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The reference to AdvertisedPublicPrefixes." + }, + "advertisedCommunities": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The communities of bgp peering. Specified for microsoft peering." + }, + "advertisedPublicPrefixesState": { + "readOnly": true, + "type": "string", + "description": "The advertised public prefix state of the Peering resource.", + "enum": [ + "NotConfigured", + "Configuring", + "Configured", + "ValidationNeeded" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitPeeringAdvertisedPublicPrefixState", + "modelAsString": true + } + }, + "legacyMode": { + "type": "integer", + "format": "int32", + "description": "The legacy mode of the peering." + }, + "customerASN": { + "type": "integer", + "format": "int32", + "description": "The CustomerASN of the peering." + }, + "routingRegistryName": { + "type": "string", + "description": "The RoutingRegistryName of the configuration." + } + }, + "description": "Specifies the peering configuration." + }, + "Ipv6ExpressRouteCircuitPeeringConfig": { + "properties": { + "primaryPeerAddressPrefix": { + "type": "string", + "description": "The primary address prefix." + }, + "secondaryPeerAddressPrefix": { + "type": "string", + "description": "The secondary address prefix." + }, + "microsoftPeeringConfig": { + "$ref": "#/definitions/ExpressRouteCircuitPeeringConfig", + "description": "The Microsoft peering configuration." + }, + "routeFilter": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the RouteFilter resource." + }, + "state": { + "type": "string", + "description": "The state of peering.", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitPeeringState", + "modelAsString": true + } + } + }, + "description": "Contains IPv6 peering config." + }, + "ExpressRouteCircuitStats": { + "properties": { + "primarybytesIn": { + "type": "integer", + "format": "int64", + "description": "The Primary BytesIn of the peering." + }, + "primarybytesOut": { + "type": "integer", + "format": "int64", + "description": "The primary BytesOut of the peering." + }, + "secondarybytesIn": { + "type": "integer", + "format": "int64", + "description": "The secondary BytesIn of the peering." + }, + "secondarybytesOut": { + "type": "integer", + "format": "int64", + "description": "The secondary BytesOut of the peering." + } + }, + "description": "Contains stats associated with the peering." + }, + "ExpressRouteCircuitPeeringPropertiesFormat": { + "properties": { + "peeringType": { + "$ref": "#/definitions/ExpressRoutePeeringType", + "description": "The peering type." + }, + "state": { + "$ref": "#/definitions/ExpressRoutePeeringState", + "description": "The peering state." + }, + "azureASN": { + "type": "integer", + "format": "int32", + "description": "The Azure ASN." + }, + "peerASN": { + "type": "integer", + "format": "int64", + "minimum": 1, + "maximum": 4294967295, + "description": "The peer ASN." + }, + "primaryPeerAddressPrefix": { + "type": "string", + "description": "The primary address prefix." + }, + "secondaryPeerAddressPrefix": { + "type": "string", + "description": "The secondary address prefix." + }, + "primaryAzurePort": { + "type": "string", + "description": "The primary port." + }, + "secondaryAzurePort": { + "type": "string", + "description": "The secondary port." + }, + "sharedKey": { + "type": "string", + "description": "The shared key." + }, + "vlanId": { + "type": "integer", + "format": "int32", + "description": "The VLAN ID." + }, + "microsoftPeeringConfig": { + "$ref": "#/definitions/ExpressRouteCircuitPeeringConfig", + "description": "The Microsoft peering configuration." + }, + "stats": { + "$ref": "#/definitions/ExpressRouteCircuitStats", + "description": "The peering stats of express route circuit." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route circuit peering resource." + }, + "gatewayManagerEtag": { + "type": "string", + "description": "The GatewayManager Etag." + }, + "lastModifiedBy": { + "readOnly": true, + "type": "string", + "description": "Who was the last to modify the peering." + }, + "routeFilter": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the RouteFilter resource." + }, + "ipv6PeeringConfig": { + "$ref": "#/definitions/Ipv6ExpressRouteCircuitPeeringConfig", + "description": "The IPv6 peering configuration." + }, + "expressRouteConnection": { + "$ref": "./expressRouteGateway.json#/definitions/ExpressRouteConnectionId", + "description": "The ExpressRoute connection." + }, + "connections": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + }, + "description": "The list of circuit connections associated with Azure Private Peering for this circuit." + }, + "peeredConnections": { + "type": "array", + "items": { + "$ref": "#/definitions/PeerExpressRouteCircuitConnection" + }, + "readOnly": true, + "description": "The list of peered circuit connections associated with Azure Private Peering for this circuit." + } + }, + "description": "Properties of the express route circuit peering." + }, + "ExpressRouteCircuitPeering": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCircuitPeeringPropertiesFormat", + "description": "Properties of the express route circuit peering." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Peering in an ExpressRouteCircuit resource." + }, + "ExpressRouteCircuitPeeringListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + }, + "description": "The peerings in an express route circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPeering API service call retrieves all peerings that belong to an ExpressRouteCircuit." + }, + "ExpressRoutePeeringType": { + "type": "string", + "description": "The peering type.", + "enum": [ + "AzurePublicPeering", + "AzurePrivatePeering", + "MicrosoftPeering" + ], + "x-ms-enum": { + "name": "ExpressRoutePeeringType", + "modelAsString": true + } + }, + "ExpressRoutePeeringState": { + "type": "string", + "description": "The state of peering.", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "ExpressRoutePeeringState", + "modelAsString": true + } + }, + "Ipv6CircuitConnectionConfig": { + "description": "IPv6 Circuit Connection properties for global reach.", + "properties": { + "addressPrefix": { + "type": "string", + "description": "/125 IP address space to carve out customer addresses for global reach." + }, + "circuitConnectionStatus": { + "readOnly": true, + "$ref": "#/definitions/CircuitConnectionStatus", + "description": "Express Route Circuit connection state." + } + } + }, + "ExpressRouteCircuitConnectionPropertiesFormat": { + "properties": { + "expressRouteCircuitPeering": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to Express Route Circuit Private Peering Resource of the circuit initiating connection." + }, + "peerExpressRouteCircuitPeering": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to Express Route Circuit Private Peering Resource of the peered circuit." + }, + "addressPrefix": { + "type": "string", + "description": "/29 IP address space to carve out Customer addresses for tunnels." + }, + "authorizationKey": { + "type": "string", + "description": "The authorization key." + }, + "ipv6CircuitConnectionConfig": { + "$ref": "#/definitions/Ipv6CircuitConnectionConfig", + "description": "IPv6 Address PrefixProperties of the express route circuit connection." + }, + "circuitConnectionStatus": { + "$ref": "#/definitions/CircuitConnectionStatus", + "description": "Express Route Circuit connection state." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route circuit connection resource." + } + }, + "description": "Properties of the express route circuit connection." + }, + "ExpressRouteCircuitConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCircuitConnectionPropertiesFormat", + "description": "Properties of the express route circuit connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Express Route Circuit Connection in an ExpressRouteCircuitPeering resource." + }, + "ExpressRouteCircuitConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + }, + "description": "The global reach connection associated with Private Peering in an ExpressRoute Circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListConnections API service call retrieves all global reach connections that belongs to a Private Peering for an ExpressRouteCircuit." + }, + "PeerExpressRouteCircuitConnectionPropertiesFormat": { + "properties": { + "expressRouteCircuitPeering": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to Express Route Circuit Private Peering Resource of the circuit." + }, + "peerExpressRouteCircuitPeering": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to Express Route Circuit Private Peering Resource of the peered circuit." + }, + "addressPrefix": { + "type": "string", + "description": "/29 IP address space to carve out Customer addresses for tunnels." + }, + "circuitConnectionStatus": { + "$ref": "#/definitions/CircuitConnectionStatus", + "description": "Express Route Circuit connection state." + }, + "connectionName": { + "type": "string", + "description": "The name of the express route circuit connection resource." + }, + "authResourceGuid": { + "type": "string", + "description": "The resource guid of the authorization used for the express route circuit connection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the peer express route circuit connection resource." + } + }, + "description": "Properties of the peer express route circuit connection." + }, + "PeerExpressRouteCircuitConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PeerExpressRouteCircuitConnectionPropertiesFormat", + "description": "Properties of the peer express route circuit connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Peer Express Route Circuit Connection in an ExpressRouteCircuitPeering resource." + }, + "PeerExpressRouteCircuitConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PeerExpressRouteCircuitConnection" + }, + "description": "The global reach peer circuit connection associated with Private Peering in an ExpressRoute Circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPeeredConnections API service call retrieves all global reach peer circuit connections that belongs to a Private Peering for an ExpressRouteCircuit." + }, + "ExpressRouteCircuitSku": { + "properties": { + "name": { + "type": "string", + "description": "The name of the SKU." + }, + "tier": { + "type": "string", + "description": "The tier of the SKU.", + "enum": [ + "Standard", + "Premium", + "Basic", + "Local" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitSkuTier", + "modelAsString": true + } + }, + "family": { + "type": "string", + "description": "The family of the SKU.", + "enum": [ + "UnlimitedData", + "MeteredData" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitSkuFamily", + "modelAsString": true + } + } + }, + "description": "Contains SKU in an ExpressRouteCircuit." + }, + "ExpressRouteCircuitServiceProviderProperties": { + "properties": { + "serviceProviderName": { + "type": "string", + "description": "The serviceProviderName." + }, + "peeringLocation": { + "type": "string", + "description": "The peering location." + }, + "bandwidthInMbps": { + "type": "integer", + "format": "int32", + "description": "The BandwidthInMbps." + } + }, + "description": "Contains ServiceProviderProperties in an ExpressRouteCircuit." + }, + "ExpressRouteCircuitPropertiesFormat": { + "properties": { + "allowClassicOperations": { + "type": "boolean", + "description": "Allow classic operations." + }, + "circuitProvisioningState": { + "type": "string", + "description": "The CircuitProvisioningState state of the resource." + }, + "serviceProviderProvisioningState": { + "$ref": "#/definitions/ServiceProviderProvisioningState", + "description": "The ServiceProviderProvisioningState state of the resource." + }, + "authorizations": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + }, + "description": "The list of authorizations." + }, + "peerings": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + }, + "description": "The list of peerings." + }, + "serviceKey": { + "type": "string", + "description": "The ServiceKey." + }, + "serviceProviderNotes": { + "type": "string", + "description": "The ServiceProviderNotes." + }, + "serviceProviderProperties": { + "$ref": "#/definitions/ExpressRouteCircuitServiceProviderProperties", + "description": "The ServiceProviderProperties." + }, + "expressRoutePort": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the ExpressRoutePort resource when the circuit is provisioned on an ExpressRoutePort resource." + }, + "bandwidthInGbps": { + "type": "number", + "description": "The bandwidth of the circuit when the circuit is provisioned on an ExpressRoutePort resource." + }, + "stag": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The identifier of the circuit traffic. Outer tag for QinQ encapsulation." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route circuit resource." + }, + "gatewayManagerEtag": { + "type": "string", + "description": "The GatewayManager Etag." + }, + "globalReachEnabled": { + "type": "boolean", + "description": "Flag denoting global reach status." + } + }, + "description": "Properties of ExpressRouteCircuit." + }, + "ExpressRouteCircuit": { + "properties": { + "sku": { + "$ref": "#/definitions/ExpressRouteCircuitSku", + "description": "The SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCircuitPropertiesFormat", + "description": "Properties of the express route circuit." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "ExpressRouteCircuit resource." + }, + "ExpressRouteCircuitArpTable": { + "properties": { + "age": { + "type": "integer", + "format": "int32", + "description": "Entry age in minutes." + }, + "interface": { + "type": "string", + "description": "Interface address." + }, + "ipAddress": { + "type": "string", + "description": "The IP address." + }, + "macAddress": { + "type": "string", + "description": "The MAC address." + } + }, + "description": "The ARP table associated with the ExpressRouteCircuit." + }, + "ExpressRouteCircuitsArpTableListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitArpTable" + }, + "description": "A list of the ARP tables." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListArpTable associated with the Express Route Circuits API." + }, + "ExpressRouteCircuitRoutesTable": { + "properties": { + "network": { + "type": "string", + "description": "IP address of a network entity." + }, + "nextHop": { + "type": "string", + "description": "NextHop address." + }, + "locPrf": { + "type": "string", + "description": "Local preference value as set with the set local-preference route-map configuration command." + }, + "weight": { + "type": "integer", + "format": "int32", + "description": "Route Weight." + }, + "path": { + "type": "string", + "description": "Autonomous system paths to the destination network." + } + }, + "description": "The routes table associated with the ExpressRouteCircuit." + }, + "ExpressRouteCircuitsRoutesTableListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitRoutesTable" + }, + "description": "The list of routes table." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListRoutesTable associated with the Express Route Circuits API." + }, + "ExpressRouteCircuitRoutesTableSummary": { + "properties": { + "neighbor": { + "type": "string", + "description": "IP address of the neighbor." + }, + "v": { + "type": "integer", + "format": "int32", + "description": "BGP version number spoken to the neighbor." + }, + "as": { + "type": "integer", + "format": "int32", + "description": "Autonomous system number." + }, + "upDown": { + "type": "string", + "description": "The length of time that the BGP session has been in the Established state, or the current status if not in the Established state." + }, + "statePfxRcd": { + "type": "string", + "description": "Current state of the BGP session, and the number of prefixes that have been received from a neighbor or peer group." + } + }, + "description": "The routes table associated with the ExpressRouteCircuit." + }, + "ExpressRouteCircuitsRoutesTableSummaryListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitRoutesTableSummary" + }, + "description": "A list of the routes table." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListRoutesTable associated with the Express Route Circuits API." + }, + "ExpressRouteCircuitListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuit" + }, + "description": "A list of ExpressRouteCircuits in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListExpressRouteCircuit API service call." + }, + "ExpressRouteServiceProviderBandwidthsOffered": { + "properties": { + "offerName": { + "type": "string", + "description": "The OfferName." + }, + "valueInMbps": { + "type": "integer", + "format": "int32", + "description": "The ValueInMbps." + } + }, + "description": "Contains bandwidths offered in ExpressRouteServiceProvider resources." + }, + "ExpressRouteServiceProviderPropertiesFormat": { + "properties": { + "peeringLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of peering locations." + }, + "bandwidthsOffered": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteServiceProviderBandwidthsOffered" + }, + "description": "A list of bandwidths offered." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route service provider resource." + } + }, + "description": "Properties of ExpressRouteServiceProvider." + }, + "ExpressRouteServiceProvider": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteServiceProviderPropertiesFormat", + "description": "Properties of the express route service provider." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "A ExpressRouteResourceProvider object." + }, + "ExpressRouteServiceProviderListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteServiceProvider" + }, + "description": "A list of ExpressRouteResourceProvider resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListExpressRouteServiceProvider API service call." + }, + "CircuitConnectionStatus": { + "type": "string", + "readOnly": true, + "description": "Express Route Circuit connection state.", + "enum": [ + "Connected", + "Connecting", + "Disconnected" + ], + "x-ms-enum": { + "name": "CircuitConnectionStatus", + "modelAsString": true + } + }, + "ServiceProviderProvisioningState": { + "type": "string", + "description": "The ServiceProviderProvisioningState state of the resource.", + "enum": [ + "NotProvisioned", + "Provisioning", + "Provisioned", + "Deprovisioning" + ], + "x-ms-enum": { + "name": "ServiceProviderProvisioningState", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/expressRouteCrossConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/expressRouteCrossConnection.json new file mode 100644 index 000000000000..87af2c0ec860 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/expressRouteCrossConnection.json @@ -0,0 +1,1006 @@ +{ + "swagger": "2.0", + "info": { + "title": "ExpressRouteCrossConnection REST APIs", + "description": "The Microsoft Azure ExpressRouteCrossConnection Resource Provider REST APIs describes the operations for the connectivity provider to provision ExpressRoute circuit, create and modify BGP peering entities and troubleshoot connectivity on customer's ExpressRoute circuit.", + "version": "2019-12-01" + }, + "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.Network/expressRouteCrossConnections": { + "get": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_List", + "description": "Retrieves all the ExpressRouteCrossConnections in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCrossConnection resources. If there are no cross connection resources an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCrossConnectionList": { + "$ref": "./examples/ExpressRouteCrossConnectionList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections": { + "get": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_ListByResourceGroup", + "description": "Retrieves all the ExpressRouteCrossConnections in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful.The operation returns a list of ExpressRouteCrossConnection resources. If there are no cross connection resources an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCrossConnectionListByResourceGroup": { + "$ref": "./examples/ExpressRouteCrossConnectionListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}": { + "get": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_Get", + "description": "Gets details about the specified ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group (peering location of the circuit)." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection (service key of the circuit)." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnection resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnection": { + "$ref": "./examples/ExpressRouteCrossConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_CreateOrUpdate", + "description": "Update the specified ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + }, + "description": "Parameters supplied to the update express route crossConnection operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCrossConnection resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateExpressRouteCrossConnection": { + "$ref": "./examples/ExpressRouteCrossConnectionUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_UpdateTags", + "description": "Updates an express route cross connection tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the cross connection." + }, + { + "name": "crossConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update express route cross connection tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCrossConnection resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateExpressRouteCrossConnectionTags": { + "$ref": "./examples/ExpressRouteCrossConnectionUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings": { + "get": { + "tags": [ + "ExpressRouteCrossConnectionPeerings" + ], + "operationId": "ExpressRouteCrossConnectionPeerings_List", + "description": "Gets all peerings in a specified ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCrossConnectionPeering resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeeringList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCrossConnectionBgpPeeringList": { + "$ref": "./examples/ExpressRouteCrossConnectionBgpPeeringList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}": { + "delete": { + "tags": [ + "ExpressRouteCrossConnectionPeerings" + ], + "operationId": "ExpressRouteCrossConnectionPeerings_Delete", + "description": "Deletes the specified peering from the ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DeleteExpressRouteCrossConnectionBgpPeering": { + "$ref": "./examples/ExpressRouteCrossConnectionBgpPeeringDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "ExpressRouteCrossConnectionPeerings" + ], + "operationId": "ExpressRouteCrossConnectionPeerings_Get", + "description": "Gets the specified peering for the ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnectionPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnectionBgpPeering": { + "$ref": "./examples/ExpressRouteCrossConnectionBgpPeeringGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCrossConnectionPeerings" + ], + "operationId": "ExpressRouteCrossConnectionPeerings_CreateOrUpdate", + "description": "Creates or updates a peering in the specified ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "peeringParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + }, + "description": "Parameters supplied to the create or update ExpressRouteCrossConnection peering operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCrossConnectionPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCrossConnectionPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCrossConnectionBgpPeeringCreate": { + "$ref": "./examples/ExpressRouteCrossConnectionBgpPeeringCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/arpTables/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCrossConnectionArpTable" + ], + "operationId": "ExpressRouteCrossConnections_ListArpTable", + "description": "Gets the currently advertised ARP table associated with the express route cross connection in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnectionsArpTable resource.", + "schema": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitsArpTableListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnectionsArpTable": { + "$ref": "./examples/ExpressRouteCrossConnectionsArpTable.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/routeTablesSummary/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCrossConnectionRouteTableSummary" + ], + "operationId": "ExpressRouteCrossConnections_ListRoutesTableSummary", + "description": "Gets the route table summary associated with the express route cross connection in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnectionsRouteTableSummary resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionsRoutesTableSummaryListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnectionsRouteTableSummary": { + "$ref": "./examples/ExpressRouteCrossConnectionsRouteTableSummary.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/routeTables/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCrossConnectionRouteTable" + ], + "operationId": "ExpressRouteCrossConnections_ListRoutesTable", + "description": "Gets the currently advertised routes table associated with the express route cross connection in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnectionsRouteTable resource.", + "schema": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitsRoutesTableListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnectionsRouteTable": { + "$ref": "./examples/ExpressRouteCrossConnectionsRouteTable.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "ExpressRouteCrossConnectionRoutesTableSummary": { + "properties": { + "neighbor": { + "type": "string", + "description": "IP address of Neighbor router." + }, + "asn": { + "type": "integer", + "format": "int32", + "description": "Autonomous system number." + }, + "upDown": { + "type": "string", + "description": "The length of time that the BGP session has been in the Established state, or the current status if not in the Established state." + }, + "stateOrPrefixesReceived": { + "type": "string", + "description": "Current state of the BGP session, and the number of prefixes that have been received from a neighbor or peer group." + } + }, + "description": "The routes table associated with the ExpressRouteCircuit." + }, + "ExpressRouteCrossConnectionsRoutesTableSummaryListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnectionRoutesTableSummary" + }, + "description": "A list of the routes table." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListRoutesTable associated with the Express Route Cross Connections." + }, + "ExpressRouteCircuitReference": { + "properties": { + "id": { + "type": "string", + "description": "Corresponding Express Route Circuit Id." + } + }, + "description": "Reference to an express route circuit." + }, + "ExpressRouteCrossConnectionProperties": { + "properties": { + "primaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The name of the primary port." + }, + "secondaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The name of the secondary port." + }, + "sTag": { + "readOnly": true, + "type": "integer", + "description": "The identifier of the circuit traffic." + }, + "peeringLocation": { + "type": "string", + "description": "The peering location of the ExpressRoute circuit." + }, + "bandwidthInMbps": { + "type": "integer", + "format": "int32", + "description": "The circuit bandwidth In Mbps." + }, + "expressRouteCircuit": { + "$ref": "#/definitions/ExpressRouteCircuitReference", + "description": "The ExpressRouteCircuit." + }, + "serviceProviderProvisioningState": { + "$ref": "./expressRouteCircuit.json#/definitions/ServiceProviderProvisioningState", + "description": "The provisioning state of the circuit in the connectivity provider system." + }, + "serviceProviderNotes": { + "type": "string", + "description": "Additional read only notes set by the connectivity provider." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route cross connection resource." + }, + "peerings": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + }, + "description": "The list of peerings." + } + }, + "description": "Properties of ExpressRouteCrossConnection." + }, + "ExpressRouteCrossConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCrossConnectionProperties", + "description": "Properties of the express route cross connection." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "ExpressRouteCrossConnection resource." + }, + "ExpressRouteCrossConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + }, + "description": "A list of ExpressRouteCrossConnection resources." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListExpressRouteCrossConnection API service call." + }, + "ExpressRouteCrossConnectionPeeringProperties": { + "properties": { + "peeringType": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRoutePeeringType", + "description": "The peering type." + }, + "state": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRoutePeeringState", + "description": "The peering state." + }, + "azureASN": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The Azure ASN." + }, + "peerASN": { + "type": "integer", + "format": "int64", + "minimum": 1, + "maximum": 4294967295, + "description": "The peer ASN." + }, + "primaryPeerAddressPrefix": { + "type": "string", + "description": "The primary address prefix." + }, + "secondaryPeerAddressPrefix": { + "type": "string", + "description": "The secondary address prefix." + }, + "primaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The primary port." + }, + "secondaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The secondary port." + }, + "sharedKey": { + "type": "string", + "description": "The shared key." + }, + "vlanId": { + "type": "integer", + "format": "int32", + "description": "The VLAN ID." + }, + "microsoftPeeringConfig": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitPeeringConfig", + "description": "The Microsoft peering configuration." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route cross connection peering resource." + }, + "gatewayManagerEtag": { + "type": "string", + "description": "The GatewayManager Etag." + }, + "lastModifiedBy": { + "readOnly": true, + "type": "string", + "description": "Who was the last to modify the peering." + }, + "ipv6PeeringConfig": { + "$ref": "./expressRouteCircuit.json#/definitions/Ipv6ExpressRouteCircuitPeeringConfig", + "description": "The IPv6 peering configuration." + } + }, + "description": "Properties of express route cross connection peering." + }, + "ExpressRouteCrossConnectionPeering": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCrossConnectionPeeringProperties", + "description": "Properties of the express route cross connection peering." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Peering in an ExpressRoute Cross Connection resource." + }, + "ExpressRouteCrossConnectionPeeringList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + }, + "description": "The peerings in an express route cross connection." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPeering API service call retrieves all peerings that belong to an ExpressRouteCrossConnection." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/expressRouteGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/expressRouteGateway.json new file mode 100644 index 000000000000..835ccf3f23f2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/expressRouteGateway.json @@ -0,0 +1,700 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/expressRouteGateways": { + "get": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_ListBySubscription", + "x-ms-examples": { + "ExpressRouteGatewayListBySubscription": { + "$ref": "./examples/ExpressRouteGatewayListBySubscription.json" + } + }, + "description": "Lists ExpressRoute gateways under a given subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful.", + "schema": { + "$ref": "#/definitions/ExpressRouteGatewayList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways": { + "get": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_ListByResourceGroup", + "x-ms-examples": { + "ExpressRouteGatewayListByResourceGroup": { + "$ref": "./examples/ExpressRouteGatewayListByResourceGroup.json" + } + }, + "description": "Lists ExpressRoute gateways in a given resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation successful.", + "schema": { + "$ref": "#/definitions/ExpressRouteGatewayList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}": { + "put": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_CreateOrUpdate", + "x-ms-examples": { + "ExpressRouteGatewayCreate": { + "$ref": "./examples/ExpressRouteGatewayCreate.json" + } + }, + "description": "Creates or updates a ExpressRoute gateway in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "name": "putExpressRouteGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + }, + "description": "Parameters required in an ExpressRoute gateway PUT operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRoute gateway resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRoute gateway resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_Get", + "x-ms-examples": { + "ExpressRouteGatewayGet": { + "$ref": "./examples/ExpressRouteGatewayGet.json" + } + }, + "description": "Fetches the details of a ExpressRoute gateway in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation succeeded. The operation returns the ExpressRoute gateway.", + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_Delete", + "x-ms-examples": { + "ExpressRouteGatewayDelete": { + "$ref": "./examples/ExpressRouteGatewayDelete.json" + } + }, + "description": "Deletes the specified ExpressRoute gateway in a resource group. An ExpressRoute gateway resource can only be deleted when there are no connection subresources.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}/expressRouteConnections/{connectionName}": { + "put": { + "tags": [ + "ExpressRouteConnections" + ], + "operationId": "ExpressRouteConnections_CreateOrUpdate", + "x-ms-examples": { + "ExpressRouteConnectionCreate": { + "$ref": "./examples/ExpressRouteConnectionCreate.json" + } + }, + "description": "Creates a connection between an ExpressRoute gateway and an ExpressRoute circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection subresource." + }, + { + "name": "putExpressRouteConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteConnection" + }, + "description": "Parameters required in an ExpressRouteConnection PUT operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the ExpressRouteConnection.", + "schema": { + "$ref": "#/definitions/ExpressRouteConnection" + } + }, + "201": { + "description": "Create successful. The operation returns the ExpressRouteConnection.", + "schema": { + "$ref": "#/definitions/ExpressRouteConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "ExpressRouteConnections" + ], + "operationId": "ExpressRouteConnections_Get", + "x-ms-examples": { + "ExpressRouteConnectionGet": { + "$ref": "./examples/ExpressRouteConnectionGet.json" + } + }, + "description": "Gets the specified ExpressRouteConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the ExpressRouteConnection.", + "schema": { + "$ref": "#/definitions/ExpressRouteConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "ExpressRouteConnections" + ], + "operationId": "ExpressRouteConnections_Delete", + "x-ms-examples": { + "ExpressRouteConnectionDelete": { + "$ref": "./examples/ExpressRouteConnectionDelete.json" + } + }, + "description": "Deletes a connection to a ExpressRoute circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection subresource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted, and the operation will continue asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}/expressRouteConnections": { + "get": { + "tags": [ + "ExpressRouteConnections" + ], + "operationId": "ExpressRouteConnections_List", + "x-ms-examples": { + "ExpressRouteConnectionList": { + "$ref": "./examples/ExpressRouteConnectionList.json" + } + }, + "description": "Lists ExpressRouteConnections.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful.", + "schema": { + "$ref": "#/definitions/ExpressRouteConnectionList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "VirtualHubId": { + "properties": { + "id": { + "type": "string", + "description": "The resource URI for the Virtual Hub where the ExpressRoute gateway is or will be deployed. The Virtual Hub resource and the ExpressRoute gateway resource reside in the same subscription." + } + }, + "description": "Virtual Hub identifier." + }, + "ExpressRouteCircuitPeeringId": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the ExpressRoute circuit peering." + } + }, + "description": "ExpressRoute circuit peering identifier." + }, + "ExpressRouteConnectionId": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The ID of the ExpressRouteConnection." + } + }, + "description": "The ID of the ExpressRouteConnection." + }, + "ExpressRouteGatewayProperties": { + "required": [ + "virtualHub" + ], + "properties": { + "autoScaleConfiguration": { + "properties": { + "bounds": { + "properties": { + "min": { + "type": "integer", + "description": "Minimum number of scale units deployed for ExpressRoute gateway." + }, + "max": { + "type": "integer", + "description": "Maximum number of scale units deployed for ExpressRoute gateway." + } + }, + "description": "Minimum and maximum number of scale units to deploy." + } + }, + "description": "Configuration for auto scaling." + }, + "expressRouteConnections": { + "type": "array", + "readOnly": true, + "description": "List of ExpressRoute connections to the ExpressRoute gateway.", + "items": { + "$ref": "#/definitions/ExpressRouteConnection" + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route gateway resource." + }, + "virtualHub": { + "$ref": "#/definitions/VirtualHubId", + "description": "The Virtual Hub where the ExpressRoute gateway is or will be deployed." + } + }, + "description": "ExpressRoute gateway resource properties." + }, + "ExpressRouteGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteGatewayProperties", + "description": "Properties of the express route gateway." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "ExpressRoute gateway resource." + }, + "ExpressRouteGatewayList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteGateway" + }, + "description": "List of ExpressRoute gateways." + } + }, + "description": "List of ExpressRoute gateways." + }, + "ExpressRouteConnectionProperties": { + "required": [ + "expressRouteCircuitPeering" + ], + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route connection resource." + }, + "expressRouteCircuitPeering": { + "$ref": "#/definitions/ExpressRouteCircuitPeeringId", + "description": "The ExpressRoute circuit peering." + }, + "authorizationKey": { + "type": "string", + "description": "Authorization key to establish the connection." + }, + "routingWeight": { + "type": "integer", + "description": "The routing weight associated to the connection." + }, + "enableInternetSecurity": { + "type": "boolean", + "description": "Enable internet security." + } + }, + "description": "Properties of the ExpressRouteConnection subresource." + }, + "ExpressRouteConnection": { + "required": [ + "name" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteConnectionProperties", + "description": "Properties of the express route connection." + }, + "name": { + "type": "string", + "description": "The name of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "ExpressRouteConnection resource." + }, + "ExpressRouteConnectionList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteConnection" + }, + "description": "The list of ExpressRoute connections." + } + }, + "description": "ExpressRouteConnection list." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/expressRoutePort.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/expressRoutePort.json new file mode 100644 index 000000000000..8a6063bf97b9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/expressRoutePort.json @@ -0,0 +1,869 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/ExpressRoutePortsLocations": { + "get": { + "tags": [ + "ExpressRoutePortsLocations" + ], + "operationId": "ExpressRoutePortsLocations_List", + "description": "Retrieves all ExpressRoutePort peering locations. Does not return available bandwidths for each location. Available bandwidths can only be obtained when retrieving a specific peering location.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the list of all ExpressRoutePort peering locations.", + "schema": { + "$ref": "#/definitions/ExpressRoutePortsLocationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRoutePortsLocationList": { + "$ref": "./examples/ExpressRoutePortsLocationList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ExpressRoutePortsLocations/{locationName}": { + "get": { + "tags": [ + "ExpressRoutePortsLocations" + ], + "operationId": "ExpressRoutePortsLocations_Get", + "description": "Retrieves a single ExpressRoutePort peering location, including the list of available bandwidths available at said peering location.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "locationName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the requested ExpressRoutePort peering location." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the requested ExpressRoutePort peering location.", + "schema": { + "$ref": "#/definitions/ExpressRoutePortsLocation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRoutePortsLocationGet": { + "$ref": "./examples/ExpressRoutePortsLocationGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts/{expressRoutePortName}": { + "delete": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_Delete", + "description": "Deletes the specified ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "ExpressRoutePortDelete": { + "$ref": "./examples/ExpressRoutePortDelete.json" + } + } + }, + "get": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_Get", + "description": "Retrieves the requested ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of ExpressRoutePort." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the requested ExpressRoutePort resource.", + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRoutePortGet": { + "$ref": "./examples/ExpressRoutePortGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_CreateOrUpdate", + "description": "Creates or updates the specified ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + }, + "description": "Parameters supplied to the create ExpressRoutePort operation." + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRoutePort resource.", + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRoutePort resource.", + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "ExpressRoutePortCreate": { + "$ref": "./examples/ExpressRoutePortCreate.json" + }, + "ExpressRoutePortUpdateLink": { + "$ref": "./examples/ExpressRoutePortUpdateLink.json" + } + } + }, + "patch": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_UpdateTags", + "description": "Update ExpressRoutePort tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update ExpressRoutePort resource tags." + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRoutePort resource.", + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRoutePortUpdateTags": { + "$ref": "./examples/ExpressRoutePortUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts": { + "get": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_ListByResourceGroup", + "description": "List all the ExpressRoutePort resources in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRoutePort resources. If there are no ExpressRoutePort resources then an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRoutePortListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRoutePortListByResourceGroup": { + "$ref": "./examples/ExpressRoutePortListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ExpressRoutePorts": { + "get": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_List", + "description": "List all the ExpressRoutePort resources in the specified subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRoutePort resources. If there are no ExpressRoutePort resources then an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRoutePortListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRoutePortList": { + "$ref": "./examples/ExpressRoutePortList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts/{expressRoutePortName}/links/{linkName}": { + "get": { + "tags": [ + "ExpressRouteLinks" + ], + "operationId": "ExpressRouteLinks_Get", + "description": "Retrieves the specified ExpressRouteLink resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + }, + { + "name": "linkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteLink resource." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the requested ExpressRouteLink resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteLink" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteLinkGet": { + "$ref": "./examples/ExpressRouteLinkGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts/{expressRoutePortName}/links": { + "get": { + "tags": [ + "ExpressRouteLinks" + ], + "operationId": "ExpressRouteLinks_List", + "description": "Retrieve the ExpressRouteLink sub-resources of the specified ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteLink resources. If there are no ExpressRouteLink resources then an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRouteLinkListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRouteLinkGet": { + "$ref": "./examples/ExpressRouteLinkList.json" + } + } + } + } + }, + "definitions": { + "ExpressRoutePortsLocationBandwidths": { + "title": "ExpressRoutePorts Location Bandwidths", + "description": "Real-time inventory of available ExpressRoute port bandwidths.", + "properties": { + "offerName": { + "type": "string", + "readOnly": true, + "description": "Bandwidth descriptive name." + }, + "valueInGbps": { + "type": "integer", + "readOnly": true, + "description": "Bandwidth value in Gbps." + } + } + }, + "ExpressRoutePortsLocationPropertiesFormat": { + "title": "ExpressRoutePorts Location Properties", + "description": "Properties specific to ExpressRoutePorts peering location resources.", + "properties": { + "address": { + "type": "string", + "readOnly": true, + "description": "Address of peering location." + }, + "contact": { + "type": "string", + "readOnly": true, + "description": "Contact details of peering locations." + }, + "availableBandwidths": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRoutePortsLocationBandwidths" + }, + "description": "The inventory of available ExpressRoutePort bandwidths." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route port location resource." + } + } + }, + "ExpressRoutePortsLocation": { + "title": "ExpressRoutePorts Peering Location", + "description": "Definition of the ExpressRoutePorts peering location resource.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRoutePortsLocationPropertiesFormat", + "description": "ExpressRoutePort peering location properties." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "ExpressRoutePortsLocationListResult": { + "title": "ExpressRoutePorts Location List Result", + "description": "Response for ListExpressRoutePortsLocations API service call.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRoutePortsLocation" + }, + "description": "The list of all ExpressRoutePort peering locations." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + } + }, + "ExpressRouteLinkMacSecConfig": { + "description": "ExpressRouteLink Mac Security Configuration.", + "title": "Definition of ExpressRouteLink Mac Security configuration.", + "properties": { + "cknSecretIdentifier": { + "type": "string", + "description": "Keyvault Secret Identifier URL containing Mac security CKN key." + }, + "cakSecretIdentifier": { + "type": "string", + "description": "Keyvault Secret Identifier URL containing Mac security CAK key." + }, + "cipher": { + "type": "string", + "description": "Mac security cipher.", + "enum": [ + "gcm-aes-128", + "gcm-aes-256" + ], + "x-ms-enum": { + "name": "ExpressRouteLinkMacSecCipher", + "modelAsString": true + } + } + } + }, + "ExpressRouteLinkPropertiesFormat": { + "title": "ExpressRouteLink Resource Properties", + "description": "Properties specific to ExpressRouteLink resources.", + "properties": { + "routerName": { + "readOnly": true, + "type": "string", + "description": "Name of Azure router associated with physical port." + }, + "interfaceName": { + "readOnly": true, + "type": "string", + "description": "Name of Azure router interface." + }, + "patchPanelId": { + "readOnly": true, + "type": "string", + "description": "Mapping between physical port to patch panel port." + }, + "rackId": { + "readOnly": true, + "type": "string", + "description": "Mapping of physical patch panel to rack." + }, + "connectorType": { + "readOnly": true, + "type": "string", + "description": "Physical fiber port type.", + "enum": [ + "LC", + "SC" + ], + "x-ms-enum": { + "name": "ExpressRouteLinkConnectorType", + "modelAsString": true + } + }, + "adminState": { + "type": "string", + "description": "Administrative state of the physical port.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "ExpressRouteLinkAdminState", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route link resource." + }, + "macSecConfig": { + "$ref": "#/definitions/ExpressRouteLinkMacSecConfig", + "description": "MacSec configuration." + } + } + }, + "ExpressRouteLink": { + "title": "ExpressRouteLink", + "description": "ExpressRouteLink child resource definition.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteLinkPropertiesFormat", + "description": "ExpressRouteLink properties." + }, + "name": { + "type": "string", + "description": "Name of child port resource that is unique among child port resources of the parent." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ] + }, + "ExpressRouteLinkListResult": { + "title": "ExpressRouteLink List Result", + "description": "Response for ListExpressRouteLinks API service call.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteLink" + }, + "description": "The list of ExpressRouteLink sub-resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + } + }, + "ExpressRoutePortPropertiesFormat": { + "title": "ExpressRoutePort Properties", + "description": "Properties specific to ExpressRoutePort resources.", + "properties": { + "peeringLocation": { + "type": "string", + "description": "The name of the peering location that the ExpressRoutePort is mapped to physically." + }, + "bandwidthInGbps": { + "type": "integer", + "description": "Bandwidth of procured ports in Gbps." + }, + "provisionedBandwidthInGbps": { + "readOnly": true, + "type": "number", + "description": "Aggregate Gbps of associated circuit bandwidths." + }, + "mtu": { + "readOnly": true, + "type": "string", + "description": "Maximum transmission unit of the physical port pair(s)." + }, + "encapsulation": { + "type": "string", + "description": "Encapsulation method on physical ports.", + "enum": [ + "Dot1Q", + "QinQ" + ], + "x-ms-enum": { + "name": "ExpressRoutePortsEncapsulation", + "modelAsString": true + } + }, + "etherType": { + "readOnly": true, + "type": "string", + "description": "Ether type of the physical port." + }, + "allocationDate": { + "readOnly": true, + "type": "string", + "description": "Date of the physical port allocation to be used in Letter of Authorization." + }, + "links": { + "title": "ExpressRouteLink Sub-Resources", + "description": "The set of physical links of the ExpressRoutePort resource.", + "readOnly": false, + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteLink" + } + }, + "circuits": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Reference the ExpressRoute circuit(s) that are provisioned on this ExpressRoutePort resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route port resource." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the express route port resource." + } + } + }, + "ExpressRoutePort": { + "title": "ExpressRoute Port", + "description": "ExpressRoutePort resource definition.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRoutePortPropertiesFormat", + "description": "ExpressRoutePort properties." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "identity": { + "$ref": "./network.json#/definitions/ManagedServiceIdentity", + "description": "The identity of ExpressRoutePort, if configured." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "ExpressRoutePortListResult": { + "title": "ExpressRoute Port List Result", + "description": "Response for ListExpressRoutePorts API service call.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRoutePort" + }, + "description": "A list of ExpressRoutePort resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/firewallPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/firewallPolicy.json new file mode 100644 index 000000000000..a3e4549b90fa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/firewallPolicy.json @@ -0,0 +1,1059 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}": { + "delete": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_Delete", + "description": "Deletes the specified Firewall Policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Firewall Policy": { + "$ref": "./examples/FirewallPolicyDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_Get", + "description": "Gets the specified Firewall Policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a Firewall Policy resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get FirewallPolicy": { + "$ref": "./examples/FirewallPolicyGet.json" + } + } + }, + "put": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_CreateOrUpdate", + "description": "Creates or updates the specified Firewall Policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FirewallPolicy" + }, + "description": "Parameters supplied to the create or update Firewall Policy operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request received successfully. The operation returns the resulting FirewallPolicy resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicy" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting FirewallPolicy resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create FirewallPolicy": { + "$ref": "./examples/FirewallPolicyPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies": { + "get": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_List", + "description": "Lists all Firewall Policies in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of FirewallPolicy resources.", + "schema": { + "$ref": "#/definitions/FirewallPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Firewall Policies for a given resource group": { + "$ref": "./examples/FirewallPolicyListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/firewallPolicies": { + "get": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_ListAll", + "description": "Gets all the Firewall Policies in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of FirewallPolicy resources.", + "schema": { + "$ref": "#/definitions/FirewallPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Firewall Policies for a given subscription": { + "$ref": "./examples/FirewallPolicyListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleGroups/{ruleGroupName}": { + "delete": { + "tags": [ + "FirewallPolicyRuleGroups" + ], + "operationId": "FirewallPolicyRuleGroups_Delete", + "description": "Deletes the specified FirewallPolicyRuleGroup.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "name": "ruleGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the FirewallPolicyRuleGroup." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete FirewallPolicyRuleGroup": { + "$ref": "./examples/FirewallPolicyRuleGroupDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "FirewallPolicyRuleGroups" + ], + "operationId": "FirewallPolicyRuleGroups_Get", + "description": "Gets the specified FirewallPolicyRuleGroup.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "name": "ruleGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the FirewallPolicyRuleGroup." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a FirewallPolicyRuleGroup resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get FirewallPolicyRuleGroup": { + "$ref": "./examples/FirewallPolicyRuleGroupGet.json" + }, + "Get FirewallPolicyRuleGroup With IpGroups": { + "$ref": "./examples/FirewallPolicyRuleGroupWithIpGroupsGet.json" + } + } + }, + "put": { + "tags": [ + "FirewallPolicyRuleGroups" + ], + "operationId": "FirewallPolicyRuleGroups_CreateOrUpdate", + "description": "Creates or updates the specified FirewallPolicyRuleGroup.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "name": "ruleGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the FirewallPolicyRuleGroup." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + }, + "description": "Parameters supplied to the create or update FirewallPolicyRuleGroup operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request received successfully. The operation returns the resulting FirewallPolicyRuleGroup resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting FirewallPolicyRuleGroup resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create FirewallPolicyRuleGroup": { + "$ref": "./examples/FirewallPolicyRuleGroupPut.json" + }, + "Create FirewallPolicyRuleGroup With IpGroups": { + "$ref": "./examples/FirewallPolicyRuleGroupWithIpGroupsPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleGroups": { + "get": { + "tags": [ + "FirewallPolicyRuleGroups" + ], + "operationId": "FirewallPolicyRuleGroups_List", + "description": "Lists all FirewallPolicyRuleGroups in a FirewallPolicy resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of FirewallPolicyRuleGroup resources.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all FirewallPolicyRuleGroups for a given FirewallPolicy": { + "$ref": "./examples/FirewallPolicyRuleGroupList.json" + }, + "List all FirewallPolicyRuleGroups with IpGroups for a given FirewallPolicy": { + "$ref": "./examples/FirewallPolicyRuleGroupWithIpGroupsList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "FirewallPolicy": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FirewallPolicyPropertiesFormat", + "description": "Properties of the firewall policy." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "FirewallPolicy Resource." + }, + "FirewallPolicyPropertiesFormat": { + "properties": { + "ruleGroups": { + "type": "array", + "readOnly": true, + "description": "List of references to FirewallPolicyRuleGroups.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the firewall policy resource." + }, + "basePolicy": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The parent firewall policy from which rules are inherited." + }, + "firewalls": { + "type": "array", + "readOnly": true, + "description": "List of references to Azure Firewalls that this Firewall Policy is associated with.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "childPolicies": { + "type": "array", + "readOnly": true, + "description": "List of references to Child Firewall Policies.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "threatIntelMode": { + "description": "The operation mode for Threat Intelligence.", + "$ref": "./azureFirewall.json#/definitions/AzureFirewallThreatIntelMode" + } + }, + "description": "Firewall Policy definition." + }, + "FirewallPolicyRuleGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FirewallPolicyRuleGroupProperties", + "description": "The properties of the firewall policy rule group." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Rule Group type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Rule Group resource." + }, + "FirewallPolicyRuleGroupProperties": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the Firewall Policy Rule Group resource." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRule" + }, + "description": "Group of Firewall Policy rules." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the firewall policy rule group resource." + } + }, + "description": "Properties of the rule group." + }, + "FirewallPolicyRule": { + "description": "Properties of the rule.", + "discriminator": "ruleType", + "required": [ + "ruleType" + ], + "properties": { + "ruleType": { + "type": "string", + "description": "The type of the rule.", + "enum": [ + "FirewallPolicyNatRule", + "FirewallPolicyFilterRule" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleType", + "modelAsString": true + } + }, + "name": { + "type": "string", + "description": "The name of the rule." + }, + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the Firewall Policy Rule resource." + } + } + }, + "FirewallPolicyNatRule": { + "properties": { + "action": { + "$ref": "#/definitions/FirewallPolicyNatRuleAction", + "description": "The action type of a Nat rule." + }, + "translatedAddress": { + "type": "string", + "description": "The translated address for this NAT rule." + }, + "translatedPort": { + "type": "string", + "description": "The translated port for this NAT rule." + }, + "ruleCondition": { + "$ref": "#/definitions/FirewallPolicyRuleCondition", + "description": "The match conditions for incoming traffic." + } + }, + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRule" + } + ], + "x-ms-discriminator-value": "FirewallPolicyNatRule", + "description": "Firewall Policy NAT Rule." + }, + "FirewallPolicyFilterRule": { + "properties": { + "action": { + "$ref": "#/definitions/FirewallPolicyFilterRuleAction", + "description": "The action type of a Filter rule." + }, + "ruleConditions": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleCondition" + }, + "description": "Collection of rule conditions used by a rule." + } + }, + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRule" + } + ], + "x-ms-discriminator-value": "FirewallPolicyFilterRule", + "description": "Firewall Policy Filter Rule." + }, + "FirewallPolicyRuleCondition": { + "description": "Properties of a rule.", + "discriminator": "ruleConditionType", + "required": [ + "ruleConditionType" + ], + "properties": { + "name": { + "type": "string", + "description": "Name of the rule condition." + }, + "description": { + "type": "string", + "description": "Description of the rule condition." + }, + "ruleConditionType": { + "type": "string", + "description": "Rule Condition Type.", + "enum": [ + "ApplicationRuleCondition", + "NetworkRuleCondition", + "NatRuleCondition" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleConditionType", + "modelAsString": true + } + } + } + }, + "ApplicationRuleCondition": { + "x-ms-discriminator-value": "ApplicationRuleCondition", + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRuleCondition" + } + ], + "properties": { + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses or Service Tags.", + "items": { + "type": "string" + } + }, + "protocols": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleConditionApplicationProtocol" + }, + "description": "Array of Application Protocols." + }, + "targetFqdns": { + "type": "array", + "description": "List of FQDNs for this rule condition.", + "items": { + "type": "string" + } + }, + "fqdnTags": { + "type": "array", + "description": "List of FQDN Tags for this rule condition.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + } + }, + "description": "Rule condition of type application." + }, + "NatRuleCondition": { + "description": "Rule condition of type nat.", + "x-ms-discriminator-value": "NatRuleCondition", + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRuleCondition" + } + ], + "properties": { + "ipProtocols": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleConditionNetworkProtocol" + }, + "description": "Array of FirewallPolicyRuleConditionNetworkProtocols." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses or Service Tags.", + "items": { + "type": "string" + } + }, + "destinationPorts": { + "type": "array", + "description": "List of destination ports.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + } + } + }, + "NetworkRuleCondition": { + "description": "Rule condition of type network.", + "x-ms-discriminator-value": "NetworkRuleCondition", + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRuleCondition" + } + ], + "properties": { + "ipProtocols": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleConditionNetworkProtocol" + }, + "description": "Array of FirewallPolicyRuleConditionNetworkProtocols." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses or Service Tags.", + "items": { + "type": "string" + } + }, + "destinationPorts": { + "type": "array", + "description": "List of destination ports.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + }, + "destinationIpGroups": { + "type": "array", + "description": "List of destination IpGroups for this rule.", + "items": { + "type": "string" + } + } + } + }, + "FirewallPolicyRuleConditionApplicationProtocol": { + "properties": { + "protocolType": { + "description": "Protocol type.", + "$ref": "#/definitions/FirewallPolicyRuleConditionApplicationProtocolType" + }, + "port": { + "type": "integer", + "format": "int32", + "maximum": 64000, + "exclusiveMaximum": false, + "minimum": 0, + "exclusiveMinimum": false, + "description": "Port number for the protocol, cannot be greater than 64000." + } + }, + "description": "Properties of the application rule protocol." + }, + "FirewallPolicyRuleConditionApplicationProtocolType": { + "type": "string", + "description": "The application protocol type of a Rule condition.", + "enum": [ + "Http", + "Https" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleConditionApplicationProtocolType", + "modelAsString": true + } + }, + "FirewallPolicyNatRuleActionType": { + "type": "string", + "description": "The action type of a rule.", + "enum": [ + "DNAT" + ], + "x-ms-enum": { + "name": "FirewallPolicyNatRuleActionType", + "modelAsString": true + } + }, + "FirewallPolicyNatRuleAction": { + "properties": { + "type": { + "description": "The type of action.", + "$ref": "#/definitions/FirewallPolicyNatRuleActionType" + } + }, + "description": "Properties of the FirewallPolicyNatRuleAction." + }, + "FirewallPolicyFilterRuleActionType": { + "type": "string", + "description": "The action type of a rule.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "FirewallPolicyFilterRuleActionType", + "modelAsString": true + } + }, + "FirewallPolicyFilterRuleAction": { + "properties": { + "type": { + "description": "The type of action.", + "$ref": "#/definitions/FirewallPolicyFilterRuleActionType" + } + }, + "description": "Properties of the FirewallPolicyFilterRuleAction." + }, + "FirewallPolicyRuleConditionNetworkProtocol": { + "type": "string", + "description": "The Network protocol of a Rule condition.", + "enum": [ + "TCP", + "UDP", + "Any", + "ICMP" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleConditionNetworkProtocol", + "modelAsString": true + } + }, + "FirewallPolicyListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicy" + }, + "description": "List of Firewall Policies in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListFirewallPolicies API service call." + }, + "FirewallPolicyRuleGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + }, + "description": "List of FirewallPolicyRuleGroups in a FirewallPolicy." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListFirewallPolicyRuleGroups API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/ipGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/ipGroups.json new file mode 100644 index 000000000000..73c37ea7fd32 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/ipGroups.json @@ -0,0 +1,422 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ipGroups/{ipGroupsName}": { + "get": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_Get", + "description": "Gets the specified ipGroups.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipGroupsName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipGroups." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands resourceIds (of Firewalls/Network Security Groups etc.) back referenced by the IpGroups resource." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting IpGroups resource.", + "schema": { + "$ref": "#/definitions/IpGroup" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get_IpGroups": { + "$ref": "./examples/IpGroupsGet.json" + } + } + }, + "put": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_CreateOrUpdate", + "description": "Creates or updates an ipGroups in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipGroupsName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipGroups." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/IpGroup" + }, + "description": "Parameters supplied to the create or update IpGroups operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ipGroups resource.", + "schema": { + "$ref": "#/definitions/IpGroup" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ipGroups resource.", + "schema": { + "$ref": "#/definitions/IpGroup" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "CreateOrUpdate_IpGroups": { + "$ref": "./examples/IpGroupsCreate.json" + } + } + }, + "patch": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_UpdateGroups", + "description": "Updates tags of an IpGroups resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipGroupsName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipGroups." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to the update ipGroups operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ipGroups resource.", + "schema": { + "$ref": "#/definitions/IpGroup" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Update_IpGroups": { + "$ref": "./examples/IpGroupsUpdateTags.json" + } + } + }, + "delete": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_Delete", + "description": "Deletes the specified ipGroups.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipGroupsName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipGroups." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Delete_IpGroups": { + "$ref": "./examples/IpGroupsDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ipGroups": { + "get": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_ListByResourceGroup", + "description": "Gets all IpGroups in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ipGroups resources.", + "schema": { + "$ref": "#/definitions/IpGroupListResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "ListByResourceGroup_IpGroups": { + "$ref": "./examples/IpGroupsListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ipGroups": { + "get": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_List", + "description": "Gets all IpGroups in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ipGroups resources.", + "schema": { + "$ref": "#/definitions/IpGroupListResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List_IpGroups": { + "$ref": "./examples/IpGroupsListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "IpGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IpGroupPropertiesFormat", + "description": "Properties of the IpGroups." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "The IpGroups resource information." + }, + "IpGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/IpGroup" + }, + "description": "The list of IpGroups information resources." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for the ListIpGroups API service call." + }, + "IpGroupPropertiesFormat": { + "properties": { + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the IpGroups resource.", + "readOnly": true + }, + "ipAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "IpAddresses/IpAddressPrefixes in the IpGroups resource." + }, + "firewalls": { + "type": "array", + "readOnly": true, + "description": "List of references to Azure resources that this IpGroups is associated with.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + } + }, + "description": "The IpGroups property information." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/loadBalancer.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/loadBalancer.json new file mode 100644 index 000000000000..fcb08c01fa74 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/loadBalancer.json @@ -0,0 +1,2058 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}": { + "delete": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_Delete", + "description": "Deletes the specified load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete load balancer": { + "$ref": "./examples/LoadBalancerDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_Get", + "description": "Gets the specified load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting LoadBalancer resource.", + "schema": { + "$ref": "#/definitions/LoadBalancer" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get load balancer": { + "$ref": "./examples/LoadBalancerGet.json" + } + } + }, + "put": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_CreateOrUpdate", + "description": "Creates or updates a load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LoadBalancer" + }, + "description": "Parameters supplied to the create or update load balancer operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting LoadBalancer resource.", + "schema": { + "$ref": "#/definitions/LoadBalancer" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting LoadBalancer resource.", + "schema": { + "$ref": "#/definitions/LoadBalancer" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create load balancer": { + "$ref": "./examples/LoadBalancerCreate.json" + }, + "Create load balancer with Standard SKU": { + "$ref": "./examples/LoadBalancerCreateStandardSku.json" + }, + "Create load balancer with Frontend IP in Zone 1": { + "$ref": "./examples/LoadBalancerCreateWithZones.json" + }, + "Create load balancer with inbound nat pool": { + "$ref": "./examples/LoadBalancerCreateWithInboundNatPool.json" + }, + "Create load balancer with outbound rules": { + "$ref": "./examples/LoadBalancerCreateWithOutboundRules.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_UpdateTags", + "description": "Updates a load balancer tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update load balancer tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting LoadBalancer resource.", + "schema": { + "$ref": "#/definitions/LoadBalancer" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update load balancer tags": { + "$ref": "./examples/LoadBalancerUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/loadBalancers": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_ListAll", + "description": "Gets all the load balancers in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all load balancers": { + "$ref": "./examples/LoadBalancerListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_List", + "description": "Gets all the load balancers in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List load balancers in resource group": { + "$ref": "./examples/LoadBalancerList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerBackendAddressPools_List", + "description": "Gets all the load balancer backed address pools.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer BackendAddressPool resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerBackendAddressPoolListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerBackendAddressPoolList": { + "$ref": "./examples/LoadBalancerBackendAddressPoolList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools/{backendAddressPoolName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerBackendAddressPools_Get", + "description": "Gets load balancer backend address pool.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "backendAddressPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the backend address pool." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns LoadBalancer BackendAddressPool resource.", + "schema": { + "$ref": "#/definitions/BackendAddressPool" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerBackendAddressPoolGet": { + "$ref": "./examples/LoadBalancerBackendAddressPoolGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/frontendIPConfigurations": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerFrontendIPConfigurations_List", + "description": "Gets all the load balancer frontend IP configurations.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer FrontendIPConfiguration resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerFrontendIPConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerFrontendIPConfigurationList": { + "$ref": "./examples/LoadBalancerFrontendIPConfigurationList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/frontendIPConfigurations/{frontendIPConfigurationName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerFrontendIPConfigurations_Get", + "description": "Gets load balancer frontend IP configuration.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "frontendIPConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the frontend IP configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns LoadBalancer FrontendIPConfiguration resource.", + "schema": { + "$ref": "#/definitions/FrontendIPConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerFrontendIPConfigurationGet": { + "$ref": "./examples/LoadBalancerFrontendIPConfigurationGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "InboundNatRules_List", + "description": "Gets all the inbound nat rules in a load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer InboundNatRule resources.", + "schema": { + "$ref": "#/definitions/InboundNatRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "InboundNatRuleList": { + "$ref": "./examples/InboundNatRuleList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules/{inboundNatRuleName}": { + "delete": { + "tags": [ + "LoadBalancers" + ], + "operationId": "InboundNatRules_Delete", + "description": "Deletes the specified load balancer inbound nat rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "inboundNatRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the inbound nat rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "InboundNatRuleDelete": { + "$ref": "./examples/InboundNatRuleDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "InboundNatRules_Get", + "description": "Gets the specified load balancer inbound nat rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "inboundNatRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the inbound nat rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting InboundNatRule resource.", + "schema": { + "$ref": "#/definitions/InboundNatRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "InboundNatRuleGet": { + "$ref": "./examples/InboundNatRuleGet.json" + } + } + }, + "put": { + "tags": [ + "LoadBalancers" + ], + "operationId": "InboundNatRules_CreateOrUpdate", + "description": "Creates or updates a load balancer inbound nat rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "inboundNatRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the inbound nat rule." + }, + { + "name": "inboundNatRuleParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/InboundNatRule" + }, + "description": "Parameters supplied to the create or update inbound nat rule operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting InboundNatRule resource.", + "schema": { + "$ref": "#/definitions/InboundNatRule" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting InboundNatRule resource.", + "schema": { + "$ref": "#/definitions/InboundNatRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "InboundNatRuleCreate": { + "$ref": "./examples/InboundNatRuleCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/loadBalancingRules": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerLoadBalancingRules_List", + "description": "Gets all the load balancing rules in a load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer LoadBalancingRule resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerLoadBalancingRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "LoadBalancerLoadBalancingRuleList": { + "$ref": "./examples/LoadBalancerLoadBalancingRuleList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/loadBalancingRules/{loadBalancingRuleName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerLoadBalancingRules_Get", + "description": "Gets the specified load balancer load balancing rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "loadBalancingRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancing rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting LoadBalancingRule resource.", + "schema": { + "$ref": "#/definitions/LoadBalancingRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerLoadBalancingRuleGet": { + "$ref": "./examples/LoadBalancerLoadBalancingRuleGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/outboundRules": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerOutboundRules_List", + "description": "Gets all the outbound rules in a load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer OutboundRule resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerOutboundRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "LoadBalancerOutboundRuleList": { + "$ref": "./examples/LoadBalancerOutboundRuleList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/outboundRules/{outboundRuleName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerOutboundRules_Get", + "description": "Gets the specified load balancer outbound rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "outboundRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the outbound rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting OutboundRule resource.", + "schema": { + "$ref": "#/definitions/OutboundRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerOutboundRuleGet": { + "$ref": "./examples/LoadBalancerOutboundRuleGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/networkInterfaces": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerNetworkInterfaces_List", + "description": "Gets associated load balancer network interfaces.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerNetworkInterfaceListVmss": { + "$ref": "./examples/LoadBalancerNetworkInterfaceListVmss.json" + }, + "LoadBalancerNetworkInterfaceListSimple": { + "$ref": "./examples/LoadBalancerNetworkInterfaceListSimple.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerProbes_List", + "description": "Gets all the load balancer probes.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer Probe resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerProbeListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerProbeList": { + "$ref": "./examples/LoadBalancerProbeList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerProbes_Get", + "description": "Gets load balancer probe.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "probeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the probe." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns LoadBalancer Probe resource.", + "schema": { + "$ref": "#/definitions/Probe" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerProbeGet": { + "$ref": "./examples/LoadBalancerProbeGet.json" + } + } + } + } + }, + "definitions": { + "LoadBalancerSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of a load balancer SKU.", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "LoadBalancerSkuName", + "modelAsString": true + } + } + }, + "description": "SKU of a load balancer." + }, + "FrontendIPConfigurationPropertiesFormat": { + "properties": { + "inboundNatRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to inbound rules that use this frontend IP." + }, + "inboundNatPools": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to inbound pools that use this frontend IP." + }, + "outboundRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to outbound rules that use this frontend IP." + }, + "loadBalancingRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to load balancing rules that use this frontend IP." + }, + "privateIPAddress": { + "type": "string", + "description": "The private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The Private IP allocation method." + }, + "privateIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "Whether the specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4." + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference to the subnet resource." + }, + "publicIPAddress": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress", + "description": "The reference to the Public IP resource." + }, + "publicIPPrefix": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the Public IP Prefix resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the frontend IP configuration resource." + } + }, + "description": "Properties of Frontend IP Configuration of the load balancer." + }, + "FrontendIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FrontendIPConfigurationPropertiesFormat", + "description": "Properties of the load balancer probe." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of frontend IP configurations used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting the IP allocated for the resource needs to come from." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Frontend IP address of the load balancer." + }, + "BackendAddressPoolPropertiesFormat": { + "properties": { + "backendIPConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "An array of references to IP addresses defined in network interfaces." + }, + "loadBalancingRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to load balancing rules that use this backend address pool." + }, + "outboundRule": { + "readOnly": true, + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to an outbound rule that uses this backend address pool." + }, + "outboundRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to outbound rules that use this backend address pool." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the backend address pool resource." + } + }, + "description": "Properties of the backend address pool." + }, + "BackendAddressPool": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BackendAddressPoolPropertiesFormat", + "description": "Properties of load balancer backend address pool." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of backend address pools used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Pool of backend IP addresses." + }, + "LoadBalancingRulePropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to frontend IP addresses." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to a pool of DIPs. Inbound traffic is randomly load balanced across IPs in the backend IPs." + }, + "probe": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the load balancer probe used by the load balancing rule." + }, + "protocol": { + "$ref": "#/definitions/TransportProtocol", + "description": "The reference to the transport protocol used by the load balancing rule." + }, + "loadDistribution": { + "type": "string", + "description": "The load distribution policy for this rule.", + "enum": [ + "Default", + "SourceIP", + "SourceIPProtocol" + ], + "x-ms-enum": { + "name": "LoadDistribution", + "modelAsString": true + } + }, + "frontendPort": { + "type": "integer", + "format": "int32", + "description": "The port for the external endpoint. Port numbers for each rule must be unique within the Load Balancer. Acceptable values are between 0 and 65534. Note that value 0 enables \"Any Port\"." + }, + "backendPort": { + "type": "integer", + "format": "int32", + "description": "The port used for internal connections on the endpoint. Acceptable values are between 0 and 65535. Note that value 0 enables \"Any Port\"." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP." + }, + "enableFloatingIP": { + "type": "boolean", + "description": "Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint." + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "disableOutboundSnat": { + "type": "boolean", + "description": "Configures SNAT for the VMs in the backend pool to use the publicIP address specified in the frontend of the load balancing rule." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the load balancing rule resource." + } + }, + "required": [ + "protocol", + "frontendPort" + ], + "description": "Properties of the load balancer." + }, + "LoadBalancingRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LoadBalancingRulePropertiesFormat", + "description": "Properties of load balancer load balancing rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of load balancing rules used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "A load balancing rule for a load balancer." + }, + "ProbePropertiesFormat": { + "properties": { + "loadBalancingRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The load balancer rules that use this probe." + }, + "protocol": { + "type": "string", + "description": "The protocol of the end point. If 'Tcp' is specified, a received ACK is required for the probe to be successful. If 'Http' or 'Https' is specified, a 200 OK response from the specifies URI is required for the probe to be successful.", + "enum": [ + "Http", + "Tcp", + "Https" + ], + "x-ms-enum": { + "name": "ProbeProtocol", + "modelAsString": true + } + }, + "port": { + "type": "integer", + "format": "int32", + "description": "The port for communicating the probe. Possible values range from 1 to 65535, inclusive." + }, + "intervalInSeconds": { + "type": "integer", + "format": "int32", + "description": "The interval, in seconds, for how frequently to probe the endpoint for health status. Typically, the interval is slightly less than half the allocated timeout period (in seconds) which allows two full probes before taking the instance out of rotation. The default value is 15, the minimum value is 5." + }, + "numberOfProbes": { + "type": "integer", + "format": "int32", + "description": "The number of probes where if no response, will result in stopping further traffic from being delivered to the endpoint. This values allows endpoints to be taken out of rotation faster or slower than the typical times used in Azure." + }, + "requestPath": { + "type": "string", + "description": "The URI used for requesting health status from the VM. Path is required if a protocol is set to http. Otherwise, it is not allowed. There is no default value." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the probe resource." + } + }, + "required": [ + "protocol", + "port" + ], + "description": "Load balancer probe resource." + }, + "Probe": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProbePropertiesFormat", + "description": "Properties of load balancer probe." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of probes used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "A load balancer probe." + }, + "InboundNatRulePropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to frontend IP addresses." + }, + "backendIPConfiguration": { + "readOnly": true, + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration", + "description": "A reference to a private IP address defined on a network interface of a VM. Traffic sent to the frontend port of each of the frontend IP configurations is forwarded to the backend IP." + }, + "protocol": { + "$ref": "#/definitions/TransportProtocol", + "description": "The reference to the transport protocol used by the load balancing rule." + }, + "frontendPort": { + "type": "integer", + "format": "int32", + "description": "The port for the external endpoint. Port numbers for each rule must be unique within the Load Balancer. Acceptable values range from 1 to 65534." + }, + "backendPort": { + "type": "integer", + "format": "int32", + "description": "The port used for the internal endpoint. Acceptable values range from 1 to 65535." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP." + }, + "enableFloatingIP": { + "type": "boolean", + "description": "Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint." + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the inbound NAT rule resource." + } + }, + "description": "Properties of the inbound NAT rule." + }, + "InboundNatRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/InboundNatRulePropertiesFormat", + "description": "Properties of load balancer inbound nat rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of inbound NAT rules used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Inbound NAT rule of the load balancer." + }, + "InboundNatPoolPropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to frontend IP addresses." + }, + "protocol": { + "$ref": "#/definitions/TransportProtocol", + "description": "The reference to the transport protocol used by the inbound NAT pool." + }, + "frontendPortRangeStart": { + "type": "integer", + "format": "int32", + "description": "The first port number in the range of external ports that will be used to provide Inbound Nat to NICs associated with a load balancer. Acceptable values range between 1 and 65534." + }, + "frontendPortRangeEnd": { + "type": "integer", + "format": "int32", + "description": "The last port number in the range of external ports that will be used to provide Inbound Nat to NICs associated with a load balancer. Acceptable values range between 1 and 65535." + }, + "backendPort": { + "type": "integer", + "format": "int32", + "description": "The port used for internal connections on the endpoint. Acceptable values are between 1 and 65535." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP." + }, + "enableFloatingIP": { + "type": "boolean", + "description": "Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint." + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the inbound NAT pool resource." + } + }, + "required": [ + "protocol", + "frontendPortRangeStart", + "frontendPortRangeEnd", + "backendPort" + ], + "description": "Properties of Inbound NAT pool." + }, + "InboundNatPool": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/InboundNatPoolPropertiesFormat", + "description": "Properties of load balancer inbound nat pool." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of inbound NAT pools used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Inbound NAT pool of the load balancer." + }, + "OutboundRulePropertiesFormat": { + "properties": { + "allocatedOutboundPorts": { + "type": "integer", + "format": "int32", + "description": "The number of outbound ports to be used for NAT." + }, + "frontendIPConfigurations": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The Frontend IP addresses of the load balancer." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to a pool of DIPs. Outbound traffic is randomly load balanced across IPs in the backend IPs." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the outbound rule resource." + }, + "protocol": { + "type": "string", + "description": "The protocol for the outbound rule in load balancer.", + "enum": [ + "Tcp", + "Udp", + "All" + ], + "x-ms-enum": { + "name": "LoadBalancerOutboundRuleProtocol", + "modelAsString": true + } + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "description": "The timeout for the TCP idle connection." + } + }, + "required": [ + "backendAddressPool", + "frontendIPConfigurations", + "protocol" + ], + "description": "Outbound rule of the load balancer." + }, + "OutboundRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OutboundRulePropertiesFormat", + "description": "Properties of load balancer outbound rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of outbound rules used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Outbound rule of the load balancer." + }, + "LoadBalancerPropertiesFormat": { + "properties": { + "frontendIPConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/FrontendIPConfiguration" + }, + "description": "Object representing the frontend IPs to be used for the load balancer." + }, + "backendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/BackendAddressPool" + }, + "description": "Collection of backend address pools used by a load balancer." + }, + "loadBalancingRules": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancingRule" + }, + "description": "Object collection representing the load balancing rules Gets the provisioning." + }, + "probes": { + "type": "array", + "items": { + "$ref": "#/definitions/Probe" + }, + "description": "Collection of probe objects used in the load balancer." + }, + "inboundNatRules": { + "type": "array", + "items": { + "$ref": "#/definitions/InboundNatRule" + }, + "description": "Collection of inbound NAT Rules used by a load balancer. Defining inbound NAT rules on your load balancer is mutually exclusive with defining an inbound NAT pool. Inbound NAT pools are referenced from virtual machine scale sets. NICs that are associated with individual virtual machines cannot reference an Inbound NAT pool. They have to reference individual inbound NAT rules." + }, + "inboundNatPools": { + "type": "array", + "items": { + "$ref": "#/definitions/InboundNatPool" + }, + "description": "Defines an external port range for inbound NAT to a single backend port on NICs associated with a load balancer. Inbound NAT rules are created automatically for each NIC associated with the Load Balancer using an external port from this range. Defining an Inbound NAT pool on your Load Balancer is mutually exclusive with defining inbound Nat rules. Inbound NAT pools are referenced from virtual machine scale sets. NICs that are associated with individual virtual machines cannot reference an inbound NAT pool. They have to reference individual inbound NAT rules." + }, + "outboundRules": { + "type": "array", + "items": { + "$ref": "#/definitions/OutboundRule" + }, + "description": "The outbound rules." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the load balancer resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the load balancer resource." + } + }, + "description": "Properties of the load balancer." + }, + "LoadBalancer": { + "properties": { + "sku": { + "$ref": "#/definitions/LoadBalancerSku", + "description": "The load balancer SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LoadBalancerPropertiesFormat", + "description": "Properties of load balancer." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "LoadBalancer resource." + }, + "LoadBalancerListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "description": "A list of load balancers in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListLoadBalancers API service call." + }, + "InboundNatRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/InboundNatRule" + }, + "description": "A list of inbound nat rules in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListInboundNatRule API service call." + }, + "LoadBalancerBackendAddressPoolListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BackendAddressPool" + }, + "description": "A list of backend address pools in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListBackendAddressPool API service call." + }, + "LoadBalancerFrontendIPConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FrontendIPConfiguration" + }, + "description": "A list of frontend IP configurations in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListFrontendIPConfiguration API service call." + }, + "LoadBalancerLoadBalancingRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancingRule" + }, + "description": "A list of load balancing rules in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListLoadBalancingRule API service call." + }, + "LoadBalancerOutboundRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/OutboundRule" + }, + "description": "A list of outbound rules in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListOutboundRule API service call." + }, + "LoadBalancerProbeListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Probe" + }, + "description": "A list of probes in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListProbe API service call." + }, + "TransportProtocol": { + "type": "string", + "description": "The transport protocol for the endpoint.", + "enum": [ + "Udp", + "Tcp", + "All" + ], + "x-ms-enum": { + "name": "TransportProtocol", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/natGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/natGateway.json new file mode 100644 index 000000000000..d5dcc4adb4cf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/natGateway.json @@ -0,0 +1,472 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/natGateways/{natGatewayName}": { + "delete": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_Delete", + "description": "Deletes the specified nat gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "natGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete nat gateway": { + "$ref": "./examples/NatGatewayDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_Get", + "description": "Gets the specified nat gateway in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "natGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NatGateway resource.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get nat gateway": { + "$ref": "./examples/NatGatewayGet.json" + } + } + }, + "put": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_CreateOrUpdate", + "description": "Creates or updates a nat gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "natGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NatGateway" + }, + "description": "Parameters supplied to the create or update nat gateway operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting NatGateway resource.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting NatGateway resource.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create nat gateway": { + "$ref": "./examples/NatGatewayCreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_UpdateTags", + "description": "Updates nat gateway tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "natGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update nat gateway tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting NatGateway resource.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update nat gateway tags": { + "$ref": "./examples/NatGatewayUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/natGateways": { + "get": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_ListAll", + "description": "Gets all the Nat Gateways in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NatGateway resources.", + "schema": { + "$ref": "#/definitions/NatGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all nat gateways": { + "$ref": "./examples/NatGatewayListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/natGateways": { + "get": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_List", + "description": "Gets all nat gateways in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NatGateway resources.", + "schema": { + "$ref": "#/definitions/NatGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List nat gateways in resource group": { + "$ref": "./examples/NatGatewayList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "NatGatewaySku": { + "properties": { + "name": { + "type": "string", + "description": "Name of Nat Gateway SKU.", + "enum": [ + "Standard" + ], + "x-ms-enum": { + "name": "NatGatewaySkuName", + "modelAsString": true + } + } + }, + "description": "SKU of nat gateway." + }, + "NatGatewayPropertiesFormat": { + "properties": { + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The idle timeout of the nat gateway." + }, + "publicIpAddresses": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of public ip addresses associated with the nat gateway resource." + }, + "publicIpPrefixes": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of public ip prefixes associated with the nat gateway resource." + }, + "subnets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to the subnets using this nat gateway resource." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the NAT gateway resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the NAT gateway resource." + } + }, + "description": "Nat Gateway properties." + }, + "NatGateway": { + "properties": { + "sku": { + "$ref": "#/definitions/NatGatewaySku", + "description": "The nat gateway SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NatGatewayPropertiesFormat", + "description": "Nat Gateway properties." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting the zone in which Nat Gateway should be deployed." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Nat Gateway resource." + }, + "NatGatewayListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NatGateway" + }, + "description": "A list of Nat Gateways that exists in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListNatGateways API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/network.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/network.json new file mode 100644 index 000000000000..aff82e46b28d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/network.json @@ -0,0 +1,335 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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": {}, + "definitions": { + "ErrorDetails": { + "properties": { + "code": { + "type": "string", + "description": "Error code." + }, + "target": { + "type": "string", + "description": "Error target." + }, + "message": { + "type": "string", + "description": "Error message." + } + }, + "description": "Common error details representation." + }, + "Error": { + "properties": { + "code": { + "type": "string", + "description": "Error code." + }, + "message": { + "type": "string", + "description": "Error message." + }, + "target": { + "type": "string", + "description": "Error target." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDetails" + }, + "description": "Error details." + }, + "innerError": { + "type": "string", + "description": "Inner error message." + } + }, + "description": "Common error representation." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody", + "description": "Cloud error body." + } + }, + "description": "An error response from the service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + }, + "target": { + "type": "string", + "description": "The target of the particular error. For example, the name of the property in error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "description": "A list of additional details about the error." + } + }, + "description": "An error response from the service." + }, + "AzureAsyncOperationResult": { + "properties": { + "status": { + "type": "string", + "description": "Status of the Azure async operation.", + "enum": [ + "InProgress", + "Succeeded", + "Failed" + ], + "x-ms-enum": { + "name": "NetworkOperationStatus", + "modelAsString": true + } + }, + "error": { + "$ref": "#/definitions/Error", + "description": "Details of the error occurred during specified asynchronous operation." + } + }, + "description": "The response body contains the status of the specified asynchronous operation, indicating whether it has succeeded, is in progress, or has failed. Note that this status is distinct from the HTTP status code returned for the Get Operation Status operation itself. If the asynchronous operation succeeded, the response body includes the HTTP status code for the successful request. If the asynchronous operation failed, the response body includes the HTTP status code for the failed request and error information regarding the failure." + }, + "Resource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "description": "Common resource representation.", + "x-ms-azure-resource": true + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + } + }, + "description": "Reference to another subresource.", + "x-ms-azure-resource": true + }, + "TagsObject": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "description": "Tags object for patch operations." + }, + "ManagedServiceIdentity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of the system assigned identity. This property will only be provided for a system assigned identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id of the system assigned identity. This property will only be provided for a system assigned identity." + }, + "type": { + "type": "string", + "description": "The type of identity used for the resource. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the virtual machine.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "description": "The list of user identities associated with resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "description": "Identity for the resource." + }, + "ProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Succeeded", + "Updating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "Access": { + "type": "string", + "description": "Access to be allowed or denied.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "Access", + "modelAsString": true + } + }, + "AuthenticationMethod": { + "type": "string", + "description": "VPN client authentication method.", + "enum": [ + "EAPTLS", + "EAPMSCHAPv2" + ], + "x-ms-enum": { + "name": "AuthenticationMethod", + "modelAsString": true + } + }, + "IPAllocationMethod": { + "type": "string", + "description": "IP address allocation method.", + "enum": [ + "Static", + "Dynamic" + ], + "x-ms-enum": { + "name": "IPAllocationMethod", + "modelAsString": true + } + }, + "IPVersion": { + "type": "string", + "description": "IP address version.", + "enum": [ + "IPv4", + "IPv6" + ], + "x-ms-enum": { + "name": "IPVersion", + "modelAsString": true + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + }, + "ApiVersionVmssParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "2017-03-30" + ], + "x-ms-enum": { + "name": "ApiVersion", + "modelAsString": true + }, + "description": "Client API version." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkInterface.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkInterface.json new file mode 100644 index 000000000000..aab999a52db4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkInterface.json @@ -0,0 +1,1522 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}": { + "delete": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_Delete", + "description": "Deletes the specified network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete network interface": { + "$ref": "./examples/NetworkInterfaceDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_Get", + "description": "Gets information about the specified network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "#/definitions/NetworkInterface" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get network interface": { + "$ref": "./examples/NetworkInterfaceGet.json" + } + } + }, + "put": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_CreateOrUpdate", + "description": "Creates or updates a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkInterface" + }, + "description": "Parameters supplied to the create or update network interface operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "#/definitions/NetworkInterface" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "#/definitions/NetworkInterface" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create network interface": { + "$ref": "./examples/NetworkInterfaceCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_UpdateTags", + "description": "Updates a network interface tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network interface tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "#/definitions/NetworkInterface" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update network interface tags": { + "$ref": "./examples/NetworkInterfaceUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListAll", + "description": "Gets all network interfaces in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all network interfaces": { + "$ref": "./examples/NetworkInterfaceListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_List", + "description": "Gets all network interfaces in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List network interfaces in resource group": { + "$ref": "./examples/NetworkInterfaceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/effectiveRouteTable": { + "post": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_GetEffectiveRouteTable", + "description": "Gets all route tables applied to a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of EffectRoute resources.", + "schema": { + "$ref": "#/definitions/EffectiveRouteListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Show network interface effective route tables": { + "$ref": "./examples/NetworkInterfaceEffectiveRouteTableList.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/effectiveNetworkSecurityGroups": { + "post": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListEffectiveNetworkSecurityGroups", + "description": "Gets all network security groups applied to a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkSecurityGroup resources.", + "schema": { + "$ref": "#/definitions/EffectiveNetworkSecurityGroupListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List network interface effective network security groups": { + "$ref": "./examples/NetworkInterfaceEffectiveNSGList.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/ipConfigurations": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceIPConfigurations_List", + "description": "Get all ip configurations in a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface IPConfiguration resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceIPConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "NetworkInterfaceIPConfigurationList": { + "$ref": "./examples/NetworkInterfaceIPConfigurationList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/ipConfigurations/{ipConfigurationName}": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceIPConfigurations_Get", + "description": "Gets the specified network interface ip configuration.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ip configuration name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterface IPConfiguration resource.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceIPConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "NetworkInterfaceIPConfigurationGet": { + "$ref": "./examples/NetworkInterfaceIPConfigurationGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/loadBalancers": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceLoadBalancers_List", + "description": "List all load balancers in a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface LoadBalancer resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceLoadBalancerListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "NetworkInterfaceLoadBalancerList": { + "$ref": "./examples/NetworkInterfaceLoadBalancerList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/tapConfigurations/{tapConfigurationName}": { + "delete": { + "tags": [ + "Network Interfaces" + ], + "operationId": "NetworkInterfaceTapConfigurations_Delete", + "description": "Deletes the specified tap configuration from the NetworkInterface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "tapConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tap configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete tap configuration": { + "$ref": "./examples/NetworkInterfaceTapConfigurationDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceTapConfigurations_Get", + "description": "Get the specified tap configuration on a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "tapConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tap configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a tap configuration.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Network Interface Tap Configurations": { + "$ref": "./examples/NetworkInterfaceTapConfigurationGet.json" + } + } + }, + "put": { + "tags": [ + "Network Interfaces" + ], + "operationId": "NetworkInterfaceTapConfigurations_CreateOrUpdate", + "description": "Creates or updates a Tap configuration in the specified NetworkInterface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "tapConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tap configuration." + }, + { + "name": "tapConfigurationParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + }, + "description": "Parameters supplied to the create or update tap configuration operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Tap Configuration resource.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Tap configuration resource.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Network Interface Tap Configurations": { + "$ref": "./examples/NetworkInterfaceTapConfigurationCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/tapConfigurations": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceTapConfigurations_List", + "description": "Get all Tap configurations in a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface TapConfiguration resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual network tap configurations": { + "$ref": "./examples/NetworkInterfaceTapConfigurationList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "NetworkInterfaceTapConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkInterfaceTapConfigurationPropertiesFormat", + "description": "Properties of the Virtual Network Tap configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Tap configuration in a Network Interface." + }, + "NetworkInterfaceTapConfigurationPropertiesFormat": { + "properties": { + "virtualNetworkTap": { + "$ref": "./virtualNetworkTap.json#/definitions/VirtualNetworkTap", + "description": "The reference to the Virtual Network Tap resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network interface tap configuration resource." + } + }, + "description": "Properties of Virtual Network Tap configuration." + }, + "NetworkInterfaceIPConfigurationPropertiesFormat": { + "properties": { + "virtualNetworkTaps": { + "type": "array", + "items": { + "$ref": "./virtualNetworkTap.json#/definitions/VirtualNetworkTap" + }, + "description": "The reference to Virtual Network Taps." + }, + "applicationGatewayBackendAddressPools": { + "type": "array", + "items": { + "$ref": "./applicationGateway.json#/definitions/ApplicationGatewayBackendAddressPool" + }, + "description": "The reference to ApplicationGatewayBackendAddressPool resource." + }, + "loadBalancerBackendAddressPools": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/BackendAddressPool" + }, + "description": "The reference to LoadBalancerBackendAddressPool resource." + }, + "loadBalancerInboundNatRules": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/InboundNatRule" + }, + "description": "A list of references of LoadBalancerInboundNatRules." + }, + "privateIPAddress": { + "type": "string", + "description": "Private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "privateIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "Whether the specific IP configuration is IPv4 or IPv6. Default is IPv4." + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "Subnet bound to the IP configuration." + }, + "primary": { + "type": "boolean", + "description": "Whether this is a primary customer address on the network interface." + }, + "publicIPAddress": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress", + "description": "Public IP address bound to the IP configuration." + }, + "applicationSecurityGroups": { + "type": "array", + "items": { + "$ref": "./applicationSecurityGroup.json#/definitions/ApplicationSecurityGroup" + }, + "description": "Application security groups in which the IP configuration is included." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network interface IP configuration." + }, + "privateLinkConnectionProperties": { + "$ref": "#/definitions/NetworkInterfaceIPConfigurationPrivateLinkConnectionProperties", + "description": "PrivateLinkConnection properties for the network interface.", + "readOnly": true + } + }, + "description": "Properties of IP configuration." + }, + "NetworkInterfaceIPConfigurationPrivateLinkConnectionProperties": { + "properties": { + "groupId": { + "type": "string", + "readOnly": true, + "description": "The group ID for current private link connection." + }, + "requiredMemberName": { + "type": "string", + "readOnly": true, + "description": "The required member name for current private link connection." + }, + "fqdns": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "List of FQDNs for current private link connection." + } + }, + "description": "PrivateLinkConnection properties for the network interface." + }, + "NetworkInterfaceIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkInterfaceIPConfigurationPropertiesFormat", + "description": "Network interface IP configuration properties." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IPConfiguration in a network interface." + }, + "NetworkInterfaceDnsSettings": { + "properties": { + "dnsServers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of DNS servers IP addresses. Use 'AzureProvidedDNS' to switch to azure provided DNS resolution. 'AzureProvidedDNS' value cannot be combined with other IPs, it must be the only value in dnsServers collection." + }, + "appliedDnsServers": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "If the VM that uses this NIC is part of an Availability Set, then this list will have the union of all DNS servers from all NICs that are part of the Availability Set. This property is what is configured on each of those VMs." + }, + "internalDnsNameLabel": { + "type": "string", + "description": "Relative DNS name for this NIC used for internal communications between VMs in the same virtual network." + }, + "internalFqdn": { + "readOnly": true, + "type": "string", + "description": "Fully qualified DNS name supporting internal communications between VMs in the same virtual network." + }, + "internalDomainNameSuffix": { + "readOnly": true, + "type": "string", + "description": "Even if internalDnsNameLabel is not specified, a DNS entry is created for the primary NIC of the VM. This DNS name can be constructed by concatenating the VM name with the value of internalDomainNameSuffix." + } + }, + "description": "DNS settings of a network interface." + }, + "NetworkInterfacePropertiesFormat": { + "properties": { + "virtualMachine": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to a virtual machine.", + "readOnly": true + }, + "networkSecurityGroup": { + "$ref": "./networkSecurityGroup.json#/definitions/NetworkSecurityGroup", + "description": "The reference to the NetworkSecurityGroup resource." + }, + "privateEndpoint": { + "readOnly": true, + "$ref": "./privateEndpoint.json#/definitions/PrivateEndpoint", + "description": "A reference to the private endpoint to which the network interface is linked." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "A list of IPConfigurations of the network interface." + }, + "tapConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + }, + "description": "A list of TapConfigurations of the network interface." + }, + "dnsSettings": { + "$ref": "#/definitions/NetworkInterfaceDnsSettings", + "description": "The DNS settings in network interface." + }, + "macAddress": { + "readOnly": true, + "type": "string", + "description": "The MAC address of the network interface." + }, + "primary": { + "readOnly": true, + "type": "boolean", + "description": "Whether this is a primary network interface on a virtual machine." + }, + "enableAcceleratedNetworking": { + "type": "boolean", + "description": "If the network interface is accelerated networking enabled." + }, + "enableIPForwarding": { + "type": "boolean", + "description": "Indicates whether IP forwarding is enabled on this network interface." + }, + "hostedWorkloads": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "A list of references to linked BareMetal resources." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the network interface resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network interface resource." + } + }, + "description": "NetworkInterface properties." + }, + "NetworkInterface": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkInterfacePropertiesFormat", + "description": "Properties of the network interface." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "A network interface in a resource group." + }, + "NetworkInterfaceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterface" + }, + "description": "A list of network interfaces in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListNetworkInterface API service call." + }, + "NetworkInterfaceTapConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + }, + "description": "A list of tap configurations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list tap configurations API service call." + }, + "NetworkInterfaceIPConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "A list of ip configurations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list ip configurations API service call." + }, + "NetworkInterfaceLoadBalancerListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/LoadBalancer" + }, + "description": "A list of load balancers." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list ip configurations API service call." + }, + "EffectiveNetworkSecurityGroup": { + "properties": { + "networkSecurityGroup": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The ID of network security group that is applied." + }, + "association": { + "$ref": "#/definitions/EffectiveNetworkSecurityGroupAssociation", + "description": "Associated resources." + }, + "effectiveSecurityRules": { + "type": "array", + "items": { + "$ref": "#/definitions/EffectiveNetworkSecurityRule" + }, + "description": "A collection of effective security rules." + }, + "tagMap": { + "type": "string", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of IP Addresses within the tag (key)." + }, + "description": "Mapping of tags to list of IP Addresses included within the tag." + } + }, + "description": "Effective network security group." + }, + "EffectiveNetworkSecurityGroupAssociation": { + "properties": { + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The ID of the subnet if assigned." + }, + "networkInterface": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The ID of the network interface if assigned." + } + }, + "description": "The effective network security group association." + }, + "EffectiveNetworkSecurityRule": { + "properties": { + "name": { + "type": "string", + "description": "The name of the security rule specified by the user (if created by the user)." + }, + "protocol": { + "type": "string", + "description": "The network protocol this rule applies to.", + "enum": [ + "Tcp", + "Udp", + "All" + ], + "x-ms-enum": { + "name": "EffectiveSecurityRuleProtocol", + "modelAsString": true + } + }, + "sourcePortRange": { + "type": "string", + "description": "The source port or range." + }, + "destinationPortRange": { + "type": "string", + "description": "The destination port or range." + }, + "sourcePortRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The source port ranges. Expected values include a single integer between 0 and 65535, a range using '-' as separator (e.g. 100-400), or an asterisk (*)." + }, + "destinationPortRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The destination port ranges. Expected values include a single integer between 0 and 65535, a range using '-' as separator (e.g. 100-400), or an asterisk (*)." + }, + "sourceAddressPrefix": { + "type": "string", + "description": "The source address prefix." + }, + "destinationAddressPrefix": { + "type": "string", + "description": "The destination address prefix." + }, + "sourceAddressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The source address prefixes. Expected values include CIDR IP ranges, Default Tags (VirtualNetwork, AzureLoadBalancer, Internet), System Tags, and the asterisk (*)." + }, + "destinationAddressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The destination address prefixes. Expected values include CIDR IP ranges, Default Tags (VirtualNetwork, AzureLoadBalancer, Internet), System Tags, and the asterisk (*)." + }, + "expandedSourceAddressPrefix": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The expanded source address prefix." + }, + "expandedDestinationAddressPrefix": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Expanded destination address prefix." + }, + "access": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRuleAccess", + "description": "Whether network traffic is allowed or denied." + }, + "priority": { + "type": "integer", + "format": "int32", + "description": "The priority of the rule." + }, + "direction": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRuleDirection", + "description": "The direction of the rule." + } + }, + "description": "Effective network security rules." + }, + "EffectiveNetworkSecurityGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EffectiveNetworkSecurityGroup" + }, + "description": "A list of effective network security groups." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list effective network security groups API service call." + }, + "EffectiveRoute": { + "properties": { + "name": { + "type": "string", + "description": "The name of the user defined route. This is optional." + }, + "disableBgpRoutePropagation": { + "type": "boolean", + "description": "If true, on-premises routes are not propagated to the network interfaces in the subnet." + }, + "source": { + "type": "string", + "description": "Who created the route.", + "enum": [ + "Unknown", + "User", + "VirtualNetworkGateway", + "Default" + ], + "x-ms-enum": { + "name": "EffectiveRouteSource", + "modelAsString": true + } + }, + "state": { + "type": "string", + "description": "The value of effective route.", + "enum": [ + "Active", + "Invalid" + ], + "x-ms-enum": { + "name": "EffectiveRouteState", + "modelAsString": true + } + }, + "addressPrefix": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The address prefixes of the effective routes in CIDR notation." + }, + "nextHopIpAddress": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The IP address of the next hop of the effective route." + }, + "nextHopType": { + "$ref": "./routeTable.json#/definitions/RouteNextHopType", + "description": "The type of Azure hop the packet should be sent to." + } + }, + "description": "Effective Route." + }, + "EffectiveRouteListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EffectiveRoute" + }, + "description": "A list of effective routes." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list effective route API service call." + }, + "IPConfigurationPropertiesFormat": { + "properties": { + "privateIPAddress": { + "type": "string", + "description": "The private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference to the subnet resource." + }, + "publicIPAddress": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress", + "description": "The reference to the public IP resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the IP configuration resource." + } + }, + "description": "Properties of IP configuration." + }, + "IPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IPConfigurationPropertiesFormat", + "description": "Properties of the IP configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkProfile.json new file mode 100644 index 000000000000..1900314c3e10 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkProfile.json @@ -0,0 +1,622 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkProfiles/{networkProfileName}": { + "delete": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_Delete", + "description": "Deletes the specified network profile.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkProfileName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the NetworkProfile." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete network profile": { + "$ref": "./examples/NetworkProfileDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_Get", + "description": "Gets the specified network profile in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkProfileName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP prefix." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkProfile resource.", + "schema": { + "$ref": "#/definitions/NetworkProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get network profile": { + "$ref": "./examples/NetworkProfileGetConfigOnly.json" + }, + "Get network profile with container network interfaces": { + "$ref": "./examples/NetworkProfileGetWithContainerNic.json" + } + } + }, + "put": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_CreateOrUpdate", + "description": "Creates or updates a network profile.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkProfileName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network profile." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkProfile" + }, + "description": "Parameters supplied to the create or update network profile operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting NetworkProfile resource.", + "schema": { + "$ref": "#/definitions/NetworkProfile" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting NetworkProfile resource.", + "schema": { + "$ref": "#/definitions/NetworkProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create network profile defaults": { + "$ref": "./examples/NetworkProfileCreateConfigOnly.json" + } + }, + "x-ms-long-running-operation": false + }, + "patch": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_UpdateTags", + "description": "Updates network profile tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkProfileName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network profile." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network profile tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting NetworkProfile resource.", + "schema": { + "$ref": "#/definitions/NetworkProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update network profile tags": { + "$ref": "./examples/NetworkProfileUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkProfiles": { + "get": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_ListAll", + "description": "Gets all the network profiles in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkProfile resources.", + "schema": { + "$ref": "#/definitions/NetworkProfileListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all network profiles": { + "$ref": "./examples/NetworkProfileListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkProfiles": { + "get": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_List", + "description": "Gets all network profiles in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkProfile resources.", + "schema": { + "$ref": "#/definitions/NetworkProfileListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List resource group network profiles": { + "$ref": "./examples/NetworkProfileList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "NetworkProfilePropertiesFormat": { + "properties": { + "containerNetworkInterfaces": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ContainerNetworkInterface" + }, + "description": "List of child container network interfaces." + }, + "containerNetworkInterfaceConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ContainerNetworkInterfaceConfiguration" + }, + "description": "List of chid container network interface configurations." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the network profile resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network profile resource." + } + }, + "description": "Network profile properties." + }, + "NetworkProfile": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkProfilePropertiesFormat", + "description": "Network profile properties." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Network profile resource." + }, + "NetworkProfileListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkProfile" + }, + "description": "A list of network profiles that exist in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListNetworkProfiles API service call." + }, + "ContainerNetworkInterfacePropertiesFormat": { + "properties": { + "containerNetworkInterfaceConfiguration": { + "readOnly": true, + "$ref": "#/definitions/ContainerNetworkInterfaceConfiguration", + "description": "Container network interface configuration from which this container network interface is created." + }, + "container": { + "$ref": "#/definitions/Container", + "description": "Reference to the container to which this container network interface is attached." + }, + "ipConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ContainerNetworkInterfaceIpConfiguration" + }, + "description": "Reference to the ip configuration on this container nic." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the container network interface resource." + } + }, + "description": "Properties of container network interface." + }, + "ContainerNetworkInterface": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ContainerNetworkInterfacePropertiesFormat", + "description": "Container network interface properties." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Container network interface child resource." + }, + "ContainerNetworkInterfaceConfigurationPropertiesFormat": { + "properties": { + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/IPConfigurationProfile" + }, + "description": "A list of ip configurations of the container network interface configuration." + }, + "containerNetworkInterfaces": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "A list of container network interfaces created from this container network interface configuration." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the container network interface configuration resource." + } + }, + "description": "Container network interface configuration properties." + }, + "ContainerNetworkInterfaceConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ContainerNetworkInterfaceConfigurationPropertiesFormat", + "description": "Container network interface configuration properties." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Container network interface configuration child resource." + }, + "IPConfigurationProfilePropertiesFormat": { + "properties": { + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference to the subnet resource to create a container network interface ip configuration." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the IP configuration profile resource." + } + }, + "description": "IP configuration profile properties." + }, + "IPConfigurationProfile": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IPConfigurationProfilePropertiesFormat", + "description": "Properties of the IP configuration profile." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration profile child resource." + }, + "Container": { + "properties": {}, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Reference to container resource in remote resource provider." + }, + "ContainerNetworkInterfaceIpConfigurationPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the container network interface IP configuration resource." + } + }, + "description": "Properties of the container network interface IP configuration." + }, + "ContainerNetworkInterfaceIpConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ContainerNetworkInterfaceIpConfigurationPropertiesFormat", + "description": "Properties of the container network interface IP configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "description": "The ip configuration for a container network interface." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkSecurityGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkSecurityGroup.json new file mode 100644 index 000000000000..2303fa25946e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkSecurityGroup.json @@ -0,0 +1,982 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}": { + "delete": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_Delete", + "description": "Deletes the specified network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete network security group": { + "$ref": "./examples/NetworkSecurityGroupDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_Get", + "description": "Gets the specified network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get network security group": { + "$ref": "./examples/NetworkSecurityGroupGet.json" + } + } + }, + "put": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_CreateOrUpdate", + "description": "Creates or updates a network security group in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + }, + "description": "Parameters supplied to the create or update network security group operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting NetworkSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting NetworkSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create network security group": { + "$ref": "./examples/NetworkSecurityGroupCreate.json" + }, + "Create network security group with rule": { + "$ref": "./examples/NetworkSecurityGroupCreateWithRule.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_UpdateTags", + "description": "Updates a network security group tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network security group tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting NetworkSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update network security group tags": { + "$ref": "./examples/NetworkSecurityGroupUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkSecurityGroups": { + "get": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_ListAll", + "description": "Gets all network security groups in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkSecurityGroup resources.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all network security groups": { + "$ref": "./examples/NetworkSecurityGroupListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups": { + "get": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_List", + "description": "Gets all network security groups in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkSecurityGroup resources.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List network security groups in resource group": { + "$ref": "./examples/NetworkSecurityGroupList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/securityRules/{securityRuleName}": { + "delete": { + "tags": [ + "SecurityRules" + ], + "operationId": "SecurityRules_Delete", + "description": "Deletes the specified network security rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "securityRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the security rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete network security rule from network security group": { + "$ref": "./examples/NetworkSecurityGroupRuleDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "SecurityRules" + ], + "operationId": "SecurityRules_Get", + "description": "Get the specified network security rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "securityRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the security rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting SecurityRule resource.", + "schema": { + "$ref": "#/definitions/SecurityRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get network security rule in network security group": { + "$ref": "./examples/NetworkSecurityGroupRuleGet.json" + } + } + }, + "put": { + "tags": [ + "SecurityRules" + ], + "operationId": "SecurityRules_CreateOrUpdate", + "description": "Creates or updates a security rule in the specified network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "securityRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the security rule." + }, + { + "name": "securityRuleParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SecurityRule" + }, + "description": "Parameters supplied to the create or update network security rule operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting SecurityRule resource.", + "schema": { + "$ref": "#/definitions/SecurityRule" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting SecurityRule resource.", + "schema": { + "$ref": "#/definitions/SecurityRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create security rule": { + "$ref": "./examples/NetworkSecurityGroupRuleCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/securityRules": { + "get": { + "tags": [ + "SecurityRules" + ], + "operationId": "SecurityRules_List", + "description": "Gets all security rules in a network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of SecurityRule resources.", + "schema": { + "$ref": "#/definitions/SecurityRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List network security rules in network security group": { + "$ref": "./examples/NetworkSecurityGroupRuleList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/defaultSecurityRules": { + "get": { + "tags": [ + "SecurityRules" + ], + "operationId": "DefaultSecurityRules_List", + "description": "Gets all default security rules in a network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of SecurityRule resources.", + "schema": { + "$ref": "#/definitions/SecurityRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DefaultSecurityRuleList": { + "$ref": "./examples/DefaultSecurityRuleList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/defaultSecurityRules/{defaultSecurityRuleName}": { + "get": { + "tags": [ + "SecurityRules" + ], + "operationId": "DefaultSecurityRules_Get", + "description": "Get the specified default network security rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "defaultSecurityRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the default security rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting SecurityRule resource.", + "schema": { + "$ref": "#/definitions/SecurityRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DefaultSecurityRuleGet": { + "$ref": "./examples/DefaultSecurityRuleGet.json" + } + } + } + } + }, + "definitions": { + "SecurityRulePropertiesFormat": { + "properties": { + "description": { + "type": "string", + "description": "A description for this rule. Restricted to 140 chars." + }, + "protocol": { + "type": "string", + "description": "Network protocol this rule applies to.", + "enum": [ + "Tcp", + "Udp", + "Icmp", + "Esp", + "*", + "Ah" + ], + "x-ms-enum": { + "name": "SecurityRuleProtocol", + "modelAsString": true + } + }, + "sourcePortRange": { + "type": "string", + "description": "The source port or range. Integer or range between 0 and 65535. Asterisk '*' can also be used to match all ports." + }, + "destinationPortRange": { + "type": "string", + "description": "The destination port or range. Integer or range between 0 and 65535. Asterisk '*' can also be used to match all ports." + }, + "sourceAddressPrefix": { + "type": "string", + "description": "The CIDR or source IP range. Asterisk '*' can also be used to match all source IPs. Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' and 'Internet' can also be used. If this is an ingress rule, specifies where network traffic originates from." + }, + "sourceAddressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The CIDR or source IP ranges." + }, + "sourceApplicationSecurityGroups": { + "type": "array", + "items": { + "$ref": "./applicationSecurityGroup.json#/definitions/ApplicationSecurityGroup" + }, + "description": "The application security group specified as source." + }, + "destinationAddressPrefix": { + "type": "string", + "description": "The destination address prefix. CIDR or destination IP range. Asterisk '*' can also be used to match all source IPs. Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' and 'Internet' can also be used." + }, + "destinationAddressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The destination address prefixes. CIDR or destination IP ranges." + }, + "destinationApplicationSecurityGroups": { + "type": "array", + "items": { + "$ref": "./applicationSecurityGroup.json#/definitions/ApplicationSecurityGroup" + }, + "description": "The application security group specified as destination." + }, + "sourcePortRanges": { + "type": "array", + "items": { + "type": "string", + "description": "The source port." + }, + "description": "The source port ranges." + }, + "destinationPortRanges": { + "type": "array", + "items": { + "type": "string", + "description": "The destination port." + }, + "description": "The destination port ranges." + }, + "access": { + "$ref": "#/definitions/SecurityRuleAccess", + "description": "The network traffic is allowed or denied." + }, + "priority": { + "type": "integer", + "format": "int32", + "description": "The priority of the rule. The value can be between 100 and 4096. The priority number must be unique for each rule in the collection. The lower the priority number, the higher the priority of the rule." + }, + "direction": { + "$ref": "#/definitions/SecurityRuleDirection", + "description": "The direction of the rule. The direction specifies if rule will be evaluated on incoming or outgoing traffic." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the security rule resource." + } + }, + "required": [ + "protocol", + "access", + "direction" + ], + "description": "Security rule resource." + }, + "SecurityRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SecurityRulePropertiesFormat", + "description": "Properties of the security rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Network security rule." + }, + "SecurityRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SecurityRule" + }, + "description": "The security rules in a network security group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListSecurityRule API service call. Retrieves all security rules that belongs to a network security group." + }, + "NetworkSecurityGroupPropertiesFormat": { + "properties": { + "securityRules": { + "type": "array", + "items": { + "$ref": "#/definitions/SecurityRule" + }, + "description": "A collection of security rules of the network security group." + }, + "defaultSecurityRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SecurityRule" + }, + "description": "The default security rules of network security group." + }, + "networkInterfaces": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + }, + "description": "A collection of references to network interfaces." + }, + "subnets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./virtualNetwork.json#/definitions/Subnet" + }, + "description": "A collection of references to subnets." + }, + "flowLogs": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkWatcher.json#/definitions/FlowLog" + }, + "description": "A collection of references to flow log resources." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the network security group resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network security group resource." + } + }, + "description": "Network Security Group resource." + }, + "NetworkSecurityGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkSecurityGroupPropertiesFormat", + "description": "Properties of the network security group." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "NetworkSecurityGroup resource." + }, + "NetworkSecurityGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkSecurityGroup" + }, + "description": "A list of NetworkSecurityGroup resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListNetworkSecurityGroups API service call." + }, + "SecurityRuleAccess": { + "type": "string", + "description": "Whether network traffic is allowed or denied.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "SecurityRuleAccess", + "modelAsString": true + } + }, + "SecurityRuleDirection": { + "type": "string", + "description": "The direction of the rule. The direction specifies if rule will be evaluated on incoming or outgoing traffic.", + "enum": [ + "Inbound", + "Outbound" + ], + "x-ms-enum": { + "name": "SecurityRuleDirection", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkVirtualAppliance.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkVirtualAppliance.json new file mode 100644 index 000000000000..22da0fa64757 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkVirtualAppliance.json @@ -0,0 +1,493 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkVirtualAppliances/{networkVirtualApplianceName}": { + "delete": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_Delete", + "description": "Deletes the specified Network Virtual Appliance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of Network Virtual Appliance." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete NetworkVirtualAppliance": { + "$ref": "./examples/NetworkVirtualApplianceDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_Get", + "description": "Gets the specified Network Virtual Appliance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of Network Virtual Appliance." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a Network Virtual Appliance resource.", + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get NetworkVirtualAppliance": { + "$ref": "./examples/NetworkVirtualApplianceGet.json" + } + } + }, + "patch": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_UpdateTags", + "description": "Updates a Network Virtual Appliance.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of Network Virtual Appliance." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of Network Virtual Appliance being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to Update Network Virtual Appliance Tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of Network Virtual Appliance updated.", + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update NetworkVirtualAppliance": { + "$ref": "./examples/NetworkVirtualApplianceUpdateTags.json" + } + } + }, + "put": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_CreateOrUpdate", + "description": "Creates or updates the specified Network Virtual Appliance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of Network Virtual Appliance." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + }, + "description": "Parameters supplied to the create or update Network Virtual Appliance." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Network Virtual Appliance resource.", + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + } + }, + "201": { + "description": "Request received successfully. The operation returns the resulting Network Virtual Appliance resource.", + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create NetworkVirtualAppliance": { + "$ref": "./examples/NetworkVirtualAppliancePut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkVirtualAppliances": { + "get": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_ListByResourceGroup", + "description": "Lists all Network Virtual Appliances in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Network Virtual Appliance resources.", + "schema": { + "$ref": "#/definitions/NetworkVirtualApplianceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Network Virtual Appliance for a given resource group": { + "$ref": "./examples/NetworkVirtualApplianceListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkVirtualAppliances": { + "get": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_List", + "description": "Gets all Network Virtual Appliances in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Network Virtual Appliance resources.", + "schema": { + "$ref": "#/definitions/NetworkVirtualApplianceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Network Virtual Appliances for a given subscription": { + "$ref": "./examples/NetworkVirtualApplianceListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "NetworkVirtualAppliance": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkVirtualAppliancePropertiesFormat", + "description": "Properties of the Network Virtual Appliance." + }, + "identity": { + "$ref": "./network.json#/definitions/ManagedServiceIdentity", + "description": "The service principal that has read access to cloud-init and config blob." + }, + "sku": { + "readOnly": false, + "description": "Network Virtual Appliance SKU.", + "$ref": "#/definitions/VirtualApplianceSkuProperties" + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "NetworkVirtualAppliance Resource." + }, + "NetworkVirtualAppliancePropertiesFormat": { + "properties": { + "bootStrapConfigurationBlob": { + "type": "array", + "readOnly": false, + "description": "BootStrapConfigurationBlob storage URLs.", + "items": { + "type": "string" + } + }, + "virtualHub": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The Virtual Hub where Network Virtual Appliance is being deployed." + }, + "cloudInitConfigurationBlob": { + "type": "array", + "readOnly": false, + "description": "CloudInitConfigurationBlob storage URLs.", + "items": { + "type": "string" + } + }, + "virtualApplianceAsn": { + "type": "integer", + "readOnly": false, + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "VirtualAppliance ASN." + }, + "virtualApplianceNics": { + "type": "array", + "readOnly": true, + "description": "List of Virtual Appliance Network Interfaces.", + "items": { + "$ref": "#/definitions/VirtualApplianceNicProperties" + } + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState" + } + }, + "description": "Network Virtual Appliance definition." + }, + "VirtualApplianceSkuProperties": { + "properties": { + "vendor": { + "type": "string", + "readOnly": false, + "description": "Virtual Appliance Vendor." + }, + "bundledScaleUnit": { + "type": "string", + "readOnly": false, + "description": "Virtual Appliance Scale Unit." + }, + "marketPlaceVersion": { + "type": "string", + "readOnly": false, + "description": "Virtual Appliance Version." + } + }, + "description": "Network Virtual Appliance Sku Properties." + }, + "VirtualApplianceNicProperties": { + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "NIC name." + }, + "publicIpAddress": { + "type": "string", + "readOnly": true, + "description": "Public IP address." + }, + "privateIpAddress": { + "type": "string", + "readOnly": true, + "description": "Private IP address." + } + }, + "description": "Network Virtual Appliance NIC properties." + }, + "NetworkVirtualApplianceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkVirtualAppliance" + }, + "description": "List of Network Virtual Appliances." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListNetworkVirtualAppliances API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkWatcher.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkWatcher.json new file mode 100644 index 000000000000..f3fb147ef045 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/networkWatcher.json @@ -0,0 +1,4446 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}": { + "put": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_CreateOrUpdate", + "description": "Creates or updates a network watcher in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkWatcher" + }, + "description": "Parameters that define the network watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create network watcher": { + "$ref": "./examples/NetworkWatcherCreate.json" + } + } + }, + "get": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_Get", + "description": "Gets the specified network watcher by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get network watcher": { + "$ref": "./examples/NetworkWatcherGet.json" + } + } + }, + "delete": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_Delete", + "description": "Deletes the specified network watcher resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete network watcher": { + "$ref": "./examples/NetworkWatcherDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_UpdateTags", + "description": "Updates a network watcher tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network watcher tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update network watcher tags": { + "$ref": "./examples/NetworkWatcherUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers": { + "get": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_List", + "description": "Gets all network watchers by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of network watcher resources.", + "schema": { + "$ref": "#/definitions/NetworkWatcherListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List network watchers": { + "$ref": "./examples/NetworkWatcherList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkWatchers": { + "get": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_ListAll", + "description": "Gets all network watchers by subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of network watcher resources.", + "schema": { + "$ref": "#/definitions/NetworkWatcherListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List all network watchers": { + "$ref": "./examples/NetworkWatcherListAll.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/topology": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetTopology", + "description": "Gets the current network topology by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TopologyParameters" + }, + "description": "Parameters that define the representation of topology." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the topology of resource group.", + "schema": { + "$ref": "#/definitions/Topology" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Topology": { + "$ref": "./examples/NetworkWatcherTopologyGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/ipFlowVerify": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_VerifyIPFlow", + "description": "Verify IP flow from the specified VM to a location given the currently configured NSG rules.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VerificationIPFlowParameters" + }, + "description": "Parameters that define the IP flow to be verified." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the result of IP flow verification.", + "schema": { + "$ref": "#/definitions/VerificationIPFlowResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/VerificationIPFlowResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Ip flow verify": { + "$ref": "./examples/NetworkWatcherIpFlowVerify.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/nextHop": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetNextHop", + "description": "Gets the next hop from the specified VM.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NextHopParameters" + }, + "description": "Parameters that define the source and destination endpoint." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the next hop from the VM.", + "schema": { + "$ref": "#/definitions/NextHopResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NextHopResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get next hop": { + "$ref": "./examples/NetworkWatcherNextHopGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/securityGroupView": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetVMSecurityRules", + "description": "Gets the configured and effective security group rules on the specified VM.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SecurityGroupViewParameters" + }, + "description": "Parameters that define the VM to check security groups for." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns security group rules on the VM.", + "schema": { + "$ref": "#/definitions/SecurityGroupViewResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/SecurityGroupViewResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get security group view": { + "$ref": "./examples/NetworkWatcherSecurityGroupViewGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}": { + "put": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Create", + "description": "Create and start a packet capture on the specified VM.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PacketCapture" + }, + "description": "Parameters that define the create packet capture operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request successful. The operation returns the resulting packet capture session.", + "schema": { + "$ref": "#/definitions/PacketCaptureResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create packet capture": { + "$ref": "./examples/NetworkWatcherPacketCaptureCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Get", + "description": "Gets a packet capture session by name.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a packet capture session.", + "schema": { + "$ref": "#/definitions/PacketCaptureResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get packet capture": { + "$ref": "./examples/NetworkWatcherPacketCaptureGet.json" + } + } + }, + "delete": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Delete", + "description": "Deletes the specified packet capture session.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete packet capture": { + "$ref": "./examples/NetworkWatcherPacketCaptureDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}/stop": { + "post": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Stop", + "description": "Stops a specified packet capture session.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation stops the packet capture session." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Stop packet capture": { + "$ref": "./examples/NetworkWatcherPacketCaptureStop.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}/queryStatus": { + "post": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_GetStatus", + "description": "Query the status of a running packet capture session.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name given to the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful query of packet capture status.", + "schema": { + "$ref": "#/definitions/PacketCaptureQueryStatusResult" + } + }, + "202": { + "description": "Accepted query status of packet capture.", + "schema": { + "$ref": "#/definitions/PacketCaptureQueryStatusResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Query packet capture status": { + "$ref": "./examples/NetworkWatcherPacketCaptureQueryStatus.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures": { + "get": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_List", + "description": "Lists all packet capture sessions within the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful packet capture enumeration request.", + "schema": { + "$ref": "#/definitions/PacketCaptureListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List packet captures": { + "$ref": "./examples/NetworkWatcherPacketCapturesList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/troubleshoot": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetTroubleshooting", + "description": "Initiate troubleshooting on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TroubleshootingParameters" + }, + "description": "Parameters that define the resource to troubleshoot." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful troubleshooting request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "202": { + "description": "Accepted get troubleshooting request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get troubleshooting": { + "$ref": "./examples/NetworkWatcherTroubleshootGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/queryTroubleshootResult": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetTroubleshootingResult", + "description": "Get the last completed troubleshooting result on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/QueryTroubleshootingParameters" + }, + "description": "Parameters that define the resource to query the troubleshooting result." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful get troubleshooting result request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "202": { + "description": "Accepted get troubleshooting result request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get troubleshoot result": { + "$ref": "./examples/NetworkWatcherTroubleshootResultQuery.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/configureFlowLog": { + "post": { + "tags": [ + "NetworkWatchers", + "TrafficAnalytics" + ], + "operationId": "NetworkWatchers_SetFlowLogConfiguration", + "description": "Configures flow log and traffic analytics (optional) on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FlowLogInformation" + }, + "description": "Parameters that define the configuration of flow log." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for setting flow log and traffic analytics (optional) configuration.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Configure flow log": { + "$ref": "./examples/NetworkWatcherFlowLogConfigure.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/queryFlowLogStatus": { + "post": { + "tags": [ + "NetworkWatchers", + "TrafficAnalytics" + ], + "operationId": "NetworkWatchers_GetFlowLogStatus", + "description": "Queries status of flow log and traffic analytics (optional) on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FlowLogStatusParameters" + }, + "description": "Parameters that define a resource to query flow log and traffic analytics (optional) status." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for query flow log and traffic analytics (optional) status.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get flow log status": { + "$ref": "./examples/NetworkWatcherFlowLogStatusQuery.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectivityCheck": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_CheckConnectivity", + "description": "Verifies the possibility of establishing a direct TCP connection from a virtual machine to a given endpoint including another VM or an arbitrary remote server.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectivityParameters" + }, + "description": "Parameters that determine how the connectivity check will be performed." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for checking connectivity.", + "schema": { + "$ref": "#/definitions/ConnectivityInformation" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ConnectivityInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Check connectivity": { + "$ref": "./examples/NetworkWatcherConnectivityCheck.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/azureReachabilityReport": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetAzureReachabilityReport", + "description": "NOTE: This feature is currently in preview and still being tested for stability. Gets the relative latency score for internet service providers from a specified location to Azure regions.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AzureReachabilityReportParameters" + }, + "description": "Parameters that determine Azure reachability report configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for Azure reachability report.", + "schema": { + "$ref": "#/definitions/AzureReachabilityReport" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/AzureReachabilityReport" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Azure Reachability Report": { + "$ref": "./examples/NetworkWatcherAzureReachabilityReportGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/availableProvidersList": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_ListAvailableProviders", + "description": "NOTE: This feature is currently in preview and still being tested for stability. Lists all available internet service providers for a specified Azure region.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AvailableProvidersListParameters" + }, + "description": "Parameters that scope the list of available providers." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for list of available providers.", + "schema": { + "$ref": "#/definitions/AvailableProvidersList" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/AvailableProvidersList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Available Providers List": { + "$ref": "./examples/NetworkWatcherAvailableProvidersListGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/networkConfigurationDiagnostic": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetNetworkConfigurationDiagnostic", + "description": "Gets Network Configuration Diagnostic data to help customers understand and debug network behavior. It provides detailed information on what security rules were applied to a specified traffic flow and the result of evaluating these rules. Customers must provide details of a flow like source, destination, protocol, etc. The API returns whether traffic was allowed or denied, the rules evaluated for the specified flow and the evaluation results.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticParameters" + }, + "description": "Parameters to get network configuration diagnostic." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the result of network configuration diagnostic.", + "schema": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticResponse" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Network configuration diagnostic": { + "$ref": "./examples/NetworkWatcherNetworkConfigurationDiagnostic.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}": { + "put": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_CreateOrUpdate", + "description": "Create or update a connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionMonitor" + }, + "description": "Parameters that define the operation to create a connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create connection monitor V1": { + "$ref": "./examples/NetworkWatcherConnectionMonitorCreate.json" + }, + "Create connection monitor V2": { + "$ref": "./examples/NetworkWatcherConnectionMonitorV2Create.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Get", + "description": "Gets a connection monitor by name.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a connection monitor.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorGet.json" + } + } + }, + "delete": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Delete", + "description": "Deletes the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_UpdateTags", + "description": "Update tags of the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update connection monitor tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns updated connection monitor.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update connection monitor tags": { + "$ref": "./examples/NetworkWatcherConnectionMonitorUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/stop": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Stop", + "description": "Stops the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation stops the connection monitor." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Stop connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorStop.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/start": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Start", + "description": "Starts the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation starts the connection monitor." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Start connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorStart.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/query": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Query", + "description": "Query a snapshot of the most recent connection states.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name given to the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful query of connection states.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorQueryResult" + } + }, + "202": { + "description": "Accepted query of connection states.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorQueryResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Query connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorQuery.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors": { + "get": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_List", + "description": "Lists all connection monitors for the specified Network Watcher.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful connection monitor enumeration request.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List connection monitors": { + "$ref": "./examples/NetworkWatcherConnectionMonitorList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/flowLogs/{flowLogName}": { + "put": { + "tags": [ + "FlowLogs" + ], + "operationId": "FlowLogs_CreateOrUpdate", + "description": "Create or update a flow log for the specified network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "flowLogName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the flow log." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FlowLog" + }, + "description": "Parameters that define the create or update flow log resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request successful. The operation returns the resulting flow log resource.", + "schema": { + "$ref": "#/definitions/FlowLog" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting flow log resource.", + "schema": { + "$ref": "#/definitions/FlowLog" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update flow log": { + "$ref": "./examples/NetworkWatcherFlowLogCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "FlowLogs" + ], + "operationId": "FlowLogs_Get", + "description": "Gets a flow log resource by name.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "flowLogName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the flow log resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a flow log resource.", + "schema": { + "$ref": "#/definitions/FlowLog" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get flow log": { + "$ref": "./examples/NetworkWatcherFlowLogGet.json" + } + } + }, + "delete": { + "tags": [ + "FlowLogs" + ], + "operationId": "FlowLogs_Delete", + "description": "Deletes the specified flow log resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "flowLogName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the flow log resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete flow log": { + "$ref": "./examples/NetworkWatcherFlowLogDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/flowLogs": { + "get": { + "tags": [ + "FlowLogs" + ], + "operationId": "FlowLogs_List", + "description": "Lists all flow log resources for the specified Network Watcher.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful flow log enumeration request.", + "schema": { + "$ref": "#/definitions/FlowLogListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List connection monitors": { + "$ref": "./examples/NetworkWatcherFlowLogList.json" + } + } + } + } + }, + "definitions": { + "ErrorResponse": { + "description": "The error object.", + "properties": { + "error": { + "title": "Error", + "$ref": "./network.json#/definitions/ErrorDetails", + "description": "The error details object." + } + } + }, + "NetworkWatcher": { + "properties": { + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkWatcherPropertiesFormat", + "description": "Properties of the network watcher." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Network watcher in a resource group." + }, + "NetworkWatcherPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network watcher resource." + } + }, + "description": "The network watcher properties." + }, + "NetworkWatcherListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkWatcher" + }, + "description": "List of network watcher resources." + } + }, + "description": "Response for ListNetworkWatchers API service call." + }, + "TopologyParameters": { + "properties": { + "targetResourceGroupName": { + "type": "string", + "description": "The name of the target resource group to perform topology on." + }, + "targetVirtualNetwork": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the Virtual Network resource." + }, + "targetSubnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the Subnet resource." + } + }, + "description": "Parameters that define the representation of topology." + }, + "Topology": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "GUID representing the operation id." + }, + "createdDateTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The datetime when the topology was initially created for the resource group." + }, + "lastModified": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The datetime when the topology was last modified." + }, + "resources": { + "type": "array", + "items": { + "$ref": "#/definitions/TopologyResource" + }, + "description": "A list of topology resources." + } + }, + "description": "Topology of the specified resource group." + }, + "TopologyResource": { + "properties": { + "name": { + "type": "string", + "description": "Name of the resource." + }, + "id": { + "type": "string", + "description": "ID of the resource." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "associations": { + "type": "array", + "description": "Holds the associations the resource has with other resources in the resource group.", + "items": { + "$ref": "#/definitions/TopologyAssociation" + } + } + }, + "description": "The network resource topology information for the given resource group." + }, + "TopologyAssociation": { + "properties": { + "name": { + "type": "string", + "description": "The name of the resource that is associated with the parent resource." + }, + "resourceId": { + "type": "string", + "description": "The ID of the resource that is associated with the parent resource." + }, + "associationType": { + "type": "string", + "enum": [ + "Associated", + "Contains" + ], + "x-ms-enum": { + "name": "AssociationType", + "modelAsString": true + }, + "description": "The association type of the child resource to the parent resource." + } + }, + "description": "Resources that have an association with the parent resource." + }, + "VerificationIPFlowParameters": { + "description": "Parameters that define the IP flow to be verified.", + "required": [ + "targetResourceId", + "direction", + "protocol", + "localPort", + "remotePort", + "localIPAddress", + "remoteIPAddress" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "The ID of the target resource to perform next-hop on." + }, + "direction": { + "$ref": "#/definitions/Direction", + "description": "The direction of the packet represented as a 5-tuple." + }, + "protocol": { + "type": "string", + "enum": [ + "TCP", + "UDP" + ], + "x-ms-enum": { + "name": "IpFlowProtocol", + "modelAsString": true + }, + "description": "Protocol to be verified on." + }, + "localPort": { + "type": "string", + "description": "The local port. Acceptable values are a single integer in the range (0-65535). Support for * for the source port, which depends on the direction." + }, + "remotePort": { + "type": "string", + "description": "The remote port. Acceptable values are a single integer in the range (0-65535). Support for * for the source port, which depends on the direction." + }, + "localIPAddress": { + "type": "string", + "description": "The local IP address. Acceptable values are valid IPv4 addresses." + }, + "remoteIPAddress": { + "type": "string", + "description": "The remote IP address. Acceptable values are valid IPv4 addresses." + }, + "targetNicResourceId": { + "type": "string", + "description": "The NIC ID. (If VM has multiple NICs and IP forwarding is enabled on any of them, then this parameter must be specified. Otherwise optional)." + } + } + }, + "VerificationIPFlowResult": { + "description": "Results of IP flow verification on the target resource.", + "properties": { + "access": { + "$ref": "./network.json#/definitions/Access", + "description": "Indicates whether the traffic is allowed or denied." + }, + "ruleName": { + "type": "string", + "description": "Name of the rule. If input is not matched against any security rule, it is not displayed." + } + } + }, + "NextHopParameters": { + "description": "Parameters that define the source and destination endpoint.", + "required": [ + "targetResourceId", + "sourceIPAddress", + "destinationIPAddress" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "The resource identifier of the target resource against which the action is to be performed." + }, + "sourceIPAddress": { + "type": "string", + "description": "The source IP address." + }, + "destinationIPAddress": { + "type": "string", + "description": "The destination IP address." + }, + "targetNicResourceId": { + "type": "string", + "description": "The NIC ID. (If VM has multiple NICs and IP forwarding is enabled on any of the nics, then this parameter must be specified. Otherwise optional)." + } + } + }, + "NextHopResult": { + "description": "The information about next hop from the specified VM.", + "properties": { + "nextHopType": { + "type": "string", + "enum": [ + "Internet", + "VirtualAppliance", + "VirtualNetworkGateway", + "VnetLocal", + "HyperNetGateway", + "None" + ], + "x-ms-enum": { + "name": "NextHopType", + "modelAsString": true + }, + "description": "Next hop type." + }, + "nextHopIpAddress": { + "type": "string", + "description": "Next hop IP Address." + }, + "routeTableId": { + "type": "string", + "description": "The resource identifier for the route table associated with the route being returned. If the route being returned does not correspond to any user created routes then this field will be the string 'System Route'." + } + } + }, + "SecurityGroupViewParameters": { + "description": "Parameters that define the VM to check security groups for.", + "required": [ + "targetResourceId" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "ID of the target VM." + } + } + }, + "SecurityGroupViewResult": { + "description": "The information about security rules applied to the specified VM.", + "properties": { + "networkInterfaces": { + "type": "array", + "description": "List of network interfaces on the specified VM.", + "items": { + "$ref": "#/definitions/SecurityGroupNetworkInterface" + } + } + } + }, + "SecurityGroupNetworkInterface": { + "description": "Network interface and all its associated security rules.", + "properties": { + "id": { + "type": "string", + "description": "ID of the network interface." + }, + "securityRuleAssociations": { + "$ref": "#/definitions/SecurityRuleAssociations", + "description": "All security rules associated with the network interface." + } + } + }, + "SecurityRuleAssociations": { + "description": "All security rules associated with the network interface.", + "properties": { + "networkInterfaceAssociation": { + "$ref": "#/definitions/NetworkInterfaceAssociation", + "description": "Network interface and it's custom security rules." + }, + "subnetAssociation": { + "$ref": "#/definitions/SubnetAssociation", + "description": "Subnet and it's custom security rules." + }, + "defaultSecurityRules": { + "type": "array", + "items": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRule" + }, + "description": "Collection of default security rules of the network security group." + }, + "effectiveSecurityRules": { + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/EffectiveNetworkSecurityRule" + }, + "description": "Collection of effective security rules." + } + } + }, + "NetworkInterfaceAssociation": { + "description": "Network interface and its custom security rules.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Network interface ID." + }, + "securityRules": { + "type": "array", + "description": "Collection of custom security rules.", + "items": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRule" + } + } + } + }, + "SubnetAssociation": { + "description": "Subnet and it's custom security rules.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Subnet ID." + }, + "securityRules": { + "type": "array", + "description": "Collection of custom security rules.", + "items": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRule" + } + } + } + }, + "PacketCapture": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PacketCaptureParameters", + "description": "Properties of the packet capture." + } + }, + "required": [ + "properties" + ], + "description": "Parameters that define the create packet capture operation." + }, + "PacketCaptureParameters": { + "properties": { + "target": { + "type": "string", + "description": "The ID of the targeted resource, only VM is currently supported." + }, + "bytesToCapturePerPacket": { + "type": "integer", + "default": 0, + "description": "Number of bytes captured per packet, the remaining bytes are truncated." + }, + "totalBytesPerSession": { + "type": "integer", + "default": 1073741824, + "description": "Maximum size of the capture output." + }, + "timeLimitInSeconds": { + "type": "integer", + "default": 18000, + "description": "Maximum duration of the capture session in seconds." + }, + "storageLocation": { + "$ref": "#/definitions/PacketCaptureStorageLocation", + "description": "The storage location for a packet capture session." + }, + "filters": { + "type": "array", + "items": { + "$ref": "#/definitions/PacketCaptureFilter" + }, + "description": "A list of packet capture filters." + } + }, + "required": [ + "target", + "storageLocation" + ], + "description": "Parameters that define the create packet capture operation." + }, + "PacketCaptureStorageLocation": { + "properties": { + "storageId": { + "type": "string", + "description": "The ID of the storage account to save the packet capture session. Required if no local file path is provided." + }, + "storagePath": { + "type": "string", + "description": "The URI of the storage path to save the packet capture. Must be a well-formed URI describing the location to save the packet capture." + }, + "filePath": { + "type": "string", + "description": "A valid local path on the targeting VM. Must include the name of the capture file (*.cap). For linux virtual machine it must start with /var/captures. Required if no storage ID is provided, otherwise optional." + } + }, + "description": "The storage location for a packet capture session." + }, + "PacketCaptureFilter": { + "properties": { + "protocol": { + "type": "string", + "enum": [ + "TCP", + "UDP", + "Any" + ], + "x-ms-enum": { + "name": "PcProtocol", + "modelAsString": true + }, + "default": "Any", + "description": "Protocol to be filtered on." + }, + "localIPAddress": { + "type": "string", + "description": "Local IP Address to be filtered on. Notation: \"127.0.0.1\" for single address entry. \"127.0.0.1-127.0.0.255\" for range. \"127.0.0.1;127.0.0.5\"? for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + }, + "remoteIPAddress": { + "type": "string", + "description": "Local IP Address to be filtered on. Notation: \"127.0.0.1\" for single address entry. \"127.0.0.1-127.0.0.255\" for range. \"127.0.0.1;127.0.0.5;\" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + }, + "localPort": { + "type": "string", + "description": "Local port to be filtered on. Notation: \"80\" for single port entry.\"80-85\" for range. \"80;443;\" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + }, + "remotePort": { + "type": "string", + "description": "Remote port to be filtered on. Notation: \"80\" for single port entry.\"80-85\" for range. \"80;443;\" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + } + }, + "description": "Filter that is applied to packet capture request. Multiple filters can be applied." + }, + "PacketCaptureListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PacketCaptureResult" + }, + "description": "Information about packet capture sessions." + } + }, + "description": "List of packet capture sessions." + }, + "PacketCaptureResult": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the packet capture session." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "ID of the packet capture operation." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PacketCaptureResultProperties", + "description": "Properties of the packet capture result." + } + }, + "description": "Information about packet capture session." + }, + "PacketCaptureResultProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the packet capture session." + } + }, + "allOf": [ + { + "$ref": "#/definitions/PacketCaptureParameters" + } + ], + "description": "The properties of a packet capture session." + }, + "PacketCaptureQueryStatusResult": { + "properties": { + "name": { + "type": "string", + "description": "The name of the packet capture resource." + }, + "id": { + "type": "string", + "description": "The ID of the packet capture resource." + }, + "captureStartTime": { + "type": "string", + "format": "date-time", + "description": "The start time of the packet capture session." + }, + "packetCaptureStatus": { + "type": "string", + "enum": [ + "NotStarted", + "Running", + "Stopped", + "Error", + "Unknown" + ], + "x-ms-enum": { + "name": "PcStatus", + "modelAsString": true + }, + "description": "The status of the packet capture session." + }, + "stopReason": { + "type": "string", + "description": "The reason the current packet capture session was stopped." + }, + "packetCaptureError": { + "type": "array", + "description": "List of errors of packet capture session.", + "items": { + "type": "string", + "enum": [ + "InternalError", + "AgentStopped", + "CaptureFailed", + "LocalFileFailed", + "StorageFailed" + ], + "x-ms-enum": { + "name": "PcError", + "modelAsString": true + } + } + } + }, + "description": "Status of packet capture session." + }, + "TroubleshootingParameters": { + "description": "Parameters that define the resource to troubleshoot.", + "required": [ + "targetResourceId", + "properties" + ], + "properties": { + "targetResourceId": { + "description": "The target resource to troubleshoot.", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/TroubleshootingProperties", + "description": "Properties of the troubleshooting resource." + } + } + }, + "QueryTroubleshootingParameters": { + "description": "Parameters that define the resource to query the troubleshooting result.", + "required": [ + "targetResourceId" + ], + "properties": { + "targetResourceId": { + "description": "The target resource ID to query the troubleshooting result.", + "type": "string" + } + } + }, + "TroubleshootingProperties": { + "description": "Storage location provided for troubleshoot.", + "required": [ + "storageId", + "storagePath" + ], + "properties": { + "storageId": { + "description": "The ID for the storage account to save the troubleshoot result.", + "type": "string" + }, + "storagePath": { + "description": "The path to the blob to save the troubleshoot result in.", + "type": "string" + } + } + }, + "TroubleshootingResult": { + "description": "Troubleshooting information gained from specified resource.", + "properties": { + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time of the troubleshooting." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time of the troubleshooting." + }, + "code": { + "type": "string", + "description": "The result code of the troubleshooting." + }, + "results": { + "type": "array", + "description": "Information from troubleshooting.", + "items": { + "$ref": "#/definitions/TroubleshootingDetails" + } + } + } + }, + "TroubleshootingDetails": { + "description": "Information gained from troubleshooting of specified resource.", + "properties": { + "id": { + "type": "string", + "description": "The id of the get troubleshoot operation." + }, + "reasonType": { + "type": "string", + "description": "Reason type of failure." + }, + "summary": { + "type": "string", + "description": "A summary of troubleshooting." + }, + "detail": { + "type": "string", + "description": "Details on troubleshooting results." + }, + "recommendedActions": { + "type": "array", + "description": "List of recommended actions.", + "items": { + "$ref": "#/definitions/TroubleshootingRecommendedActions" + } + } + } + }, + "TroubleshootingRecommendedActions": { + "description": "Recommended actions based on discovered issues.", + "properties": { + "actionId": { + "description": "ID of the recommended action.", + "type": "string" + }, + "actionText": { + "description": "Description of recommended actions.", + "type": "string" + }, + "actionUri": { + "description": "The uri linking to a documentation for the recommended troubleshooting actions.", + "type": "string" + }, + "actionUriText": { + "description": "The information from the URI for the recommended troubleshooting actions.", + "type": "string" + } + } + }, + "FlowLogListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FlowLog" + }, + "description": "Information about flow log resource." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "List of flow logs." + }, + "FlowLog": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FlowLogPropertiesFormat", + "description": "Properties of the flow log." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "A flow log resource." + }, + "FlowLogPropertiesFormat": { + "description": "Parameters that define the configuration of flow log.", + "required": [ + "targetResourceId", + "storageId" + ], + "properties": { + "targetResourceId": { + "description": "ID of network security group to which flow log will be applied.", + "type": "string" + }, + "targetResourceGuid": { + "readOnly": true, + "description": "Guid of network security group to which flow log will be applied.", + "type": "string" + }, + "storageId": { + "description": "ID of the storage account which is used to store the flow log.", + "type": "string" + }, + "enabled": { + "description": "Flag to enable/disable flow logging.", + "type": "boolean" + }, + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicyParameters", + "description": "Parameters that define the retention policy for flow log." + }, + "format": { + "$ref": "#/definitions/FlowLogFormatParameters", + "description": "Parameters that define the flow log format." + }, + "flowAnalyticsConfiguration": { + "$ref": "#/definitions/TrafficAnalyticsProperties", + "description": "Parameters that define the configuration of traffic analytics." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the flow log." + } + } + }, + "FlowLogProperties": { + "description": "Parameters that define the configuration of flow log.", + "required": [ + "storageId", + "enabled" + ], + "properties": { + "storageId": { + "description": "ID of the storage account which is used to store the flow log.", + "type": "string" + }, + "enabled": { + "description": "Flag to enable/disable flow logging.", + "type": "boolean" + }, + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicyParameters", + "description": "Parameters that define the retention policy for flow log." + }, + "format": { + "$ref": "#/definitions/FlowLogFormatParameters", + "description": "Parameters that define the flow log format." + } + } + }, + "FlowLogStatusParameters": { + "description": "Parameters that define a resource to query flow log and traffic analytics (optional) status.", + "required": [ + "targetResourceId" + ], + "properties": { + "targetResourceId": { + "description": "The target resource where getting the flow log and traffic analytics (optional) status.", + "type": "string" + } + } + }, + "RetentionPolicyParameters": { + "description": "Parameters that define the retention policy for flow log.", + "properties": { + "days": { + "description": "Number of days to retain flow log records.", + "type": "integer", + "default": 0 + }, + "enabled": { + "description": "Flag to enable/disable retention.", + "type": "boolean", + "default": false + } + } + }, + "FlowLogFormatParameters": { + "description": "Parameters that define the flow log format.", + "properties": { + "type": { + "type": "string", + "description": "The file type of flow log.", + "enum": [ + "JSON" + ], + "x-ms-enum": { + "name": "FlowLogFormatType", + "modelAsString": true + } + }, + "version": { + "description": "The version (revision) of the flow log.", + "type": "integer", + "default": 0 + } + } + }, + "FlowLogInformation": { + "description": "Information on the configuration of flow log and traffic analytics (optional) .", + "required": [ + "targetResourceId", + "properties" + ], + "properties": { + "targetResourceId": { + "description": "The ID of the resource to configure for flow log and traffic analytics (optional) .", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FlowLogProperties", + "description": "Properties of the flow log." + }, + "flowAnalyticsConfiguration": { + "$ref": "#/definitions/TrafficAnalyticsProperties", + "description": "Parameters that define the configuration of traffic analytics." + } + } + }, + "TrafficAnalyticsProperties": { + "description": "Parameters that define the configuration of traffic analytics.", + "properties": { + "networkWatcherFlowAnalyticsConfiguration": { + "$ref": "#/definitions/TrafficAnalyticsConfigurationProperties", + "description": "Parameters that define the configuration of traffic analytics." + } + } + }, + "TrafficAnalyticsConfigurationProperties": { + "description": "Parameters that define the configuration of traffic analytics.", + "properties": { + "enabled": { + "description": "Flag to enable/disable traffic analytics.", + "type": "boolean" + }, + "workspaceId": { + "description": "The resource guid of the attached workspace.", + "type": "string" + }, + "workspaceRegion": { + "description": "The location of the attached workspace.", + "type": "string" + }, + "workspaceResourceId": { + "description": "Resource Id of the attached workspace.", + "type": "string" + }, + "trafficAnalyticsInterval": { + "description": "The interval in minutes which would decide how frequently TA service should do flow analytics.", + "type": "integer" + } + } + }, + "ConnectivityParameters": { + "description": "Parameters that determine how the connectivity check will be performed.", + "required": [ + "source", + "destination" + ], + "properties": { + "source": { + "$ref": "#/definitions/ConnectivitySource", + "description": "The source of the connection." + }, + "destination": { + "$ref": "#/definitions/ConnectivityDestination", + "description": "The destination of connection." + }, + "protocol": { + "type": "string", + "description": "Network protocol.", + "enum": [ + "Tcp", + "Http", + "Https", + "Icmp" + ], + "x-ms-enum": { + "name": "Protocol", + "modelAsString": true + } + }, + "protocolConfiguration": { + "$ref": "#/definitions/ProtocolConfiguration", + "description": "Configuration of the protocol." + }, + "preferredIPVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "Preferred IP version of the connection." + } + } + }, + "ConnectivitySource": { + "description": "Parameters that define the source of the connection.", + "required": [ + "resourceId" + ], + "properties": { + "resourceId": { + "description": "The ID of the resource from which a connectivity check will be initiated.", + "type": "string" + }, + "port": { + "description": "The source port from which a connectivity check will be performed.", + "type": "integer" + } + } + }, + "ConnectivityDestination": { + "description": "Parameters that define destination of connection.", + "properties": { + "resourceId": { + "description": "The ID of the resource to which a connection attempt will be made.", + "type": "string" + }, + "address": { + "description": "The IP address or URI the resource to which a connection attempt will be made.", + "type": "string" + }, + "port": { + "description": "Port on which check connectivity will be performed.", + "type": "integer" + } + } + }, + "ConnectivityInformation": { + "description": "Information on the connectivity status.", + "properties": { + "hops": { + "readOnly": true, + "type": "array", + "description": "List of hops between the source and the destination.", + "items": { + "$ref": "#/definitions/ConnectivityHop" + } + }, + "connectionStatus": { + "readOnly": true, + "type": "string", + "enum": [ + "Unknown", + "Connected", + "Disconnected", + "Degraded" + ], + "x-ms-enum": { + "name": "ConnectionStatus", + "modelAsString": true + }, + "description": "The connection status." + }, + "avgLatencyInMs": { + "description": "Average latency in milliseconds.", + "readOnly": true, + "type": "integer" + }, + "minLatencyInMs": { + "description": "Minimum latency in milliseconds.", + "readOnly": true, + "type": "integer" + }, + "maxLatencyInMs": { + "description": "Maximum latency in milliseconds.", + "readOnly": true, + "type": "integer" + }, + "probesSent": { + "description": "Total number of probes sent.", + "readOnly": true, + "type": "integer" + }, + "probesFailed": { + "description": "Number of failed probes.", + "readOnly": true, + "type": "integer" + } + } + }, + "ConnectivityHop": { + "description": "Information about a hop between the source and the destination.", + "properties": { + "type": { + "description": "The type of the hop.", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "The ID of the hop.", + "readOnly": true, + "type": "string" + }, + "address": { + "description": "The IP address of the hop.", + "readOnly": true, + "type": "string" + }, + "resourceId": { + "description": "The ID of the resource corresponding to this hop.", + "readOnly": true, + "type": "string" + }, + "nextHopIds": { + "readOnly": true, + "type": "array", + "description": "List of next hop identifiers.", + "items": { + "type": "string" + } + }, + "issues": { + "readOnly": true, + "type": "array", + "description": "List of issues.", + "items": { + "$ref": "#/definitions/ConnectivityIssue" + } + } + } + }, + "ConnectivityIssue": { + "description": "Information about an issue encountered in the process of checking for connectivity.", + "properties": { + "origin": { + "readOnly": true, + "type": "string", + "enum": [ + "Local", + "Inbound", + "Outbound" + ], + "x-ms-enum": { + "name": "Origin", + "modelAsString": true + }, + "description": "The origin of the issue." + }, + "severity": { + "readOnly": true, + "type": "string", + "enum": [ + "Error", + "Warning" + ], + "x-ms-enum": { + "name": "Severity", + "modelAsString": true + }, + "description": "The severity of the issue." + }, + "type": { + "readOnly": true, + "type": "string", + "enum": [ + "Unknown", + "AgentStopped", + "GuestFirewall", + "DnsResolution", + "SocketBind", + "NetworkSecurityRule", + "UserDefinedRoute", + "PortThrottled", + "Platform" + ], + "x-ms-enum": { + "name": "IssueType", + "modelAsString": true + }, + "description": "The type of issue." + }, + "context": { + "readOnly": true, + "type": "array", + "description": "Provides additional context on the issue.", + "items": { + "$ref": "#/definitions/IssueContext" + } + } + } + }, + "IssueContext": { + "description": "A key-value pair that provides additional context on the issue.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "ProtocolConfiguration": { + "description": "Configuration of the protocol.", + "properties": { + "HTTPConfiguration": { + "$ref": "#/definitions/HTTPConfiguration", + "description": "HTTP configuration of the connectivity check." + } + } + }, + "HTTPConfiguration": { + "properties": { + "method": { + "type": "string", + "description": "HTTP method.", + "enum": [ + "Get" + ], + "x-ms-enum": { + "name": "HTTPMethod", + "modelAsString": true + } + }, + "headers": { + "type": "array", + "description": "List of HTTP headers.", + "items": { + "$ref": "#/definitions/HTTPHeader" + } + }, + "validStatusCodes": { + "type": "array", + "items": { + "type": "integer" + }, + "description": "Valid status codes." + } + }, + "description": "HTTP configuration of the connectivity check." + }, + "HTTPHeader": { + "properties": { + "name": { + "type": "string", + "description": "The name in HTTP header." + }, + "value": { + "type": "string", + "description": "The value in HTTP header." + } + }, + "description": "The HTTP header." + }, + "AzureReachabilityReportParameters": { + "properties": { + "providerLocation": { + "$ref": "#/definitions/AzureReachabilityReportLocation", + "description": "Parameters that define a geographic location." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of Internet service providers." + }, + "azureLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Optional Azure regions to scope the query to." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time for the Azure reachability report." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time for the Azure reachability report." + } + }, + "required": [ + "providerLocation", + "startTime", + "endTime" + ], + "description": "Geographic and time constraints for Azure reachability report." + }, + "AzureReachabilityReportLocation": { + "properties": { + "country": { + "type": "string", + "description": "The name of the country." + }, + "state": { + "type": "string", + "description": "The name of the state." + }, + "city": { + "type": "string", + "description": "The name of the city or town." + } + }, + "required": [ + "country" + ], + "description": "Parameters that define a geographic location." + }, + "AzureReachabilityReport": { + "properties": { + "aggregationLevel": { + "type": "string", + "description": "The aggregation level of Azure reachability report. Can be Country, State or City." + }, + "providerLocation": { + "$ref": "#/definitions/AzureReachabilityReportLocation", + "description": "Parameters that define a geographic location." + }, + "reachabilityReport": { + "type": "array", + "description": "List of Azure reachability report items.", + "items": { + "$ref": "#/definitions/AzureReachabilityReportItem" + } + } + }, + "required": [ + "aggregationLevel", + "providerLocation", + "reachabilityReport" + ], + "description": "Azure reachability report details." + }, + "AzureReachabilityReportItem": { + "properties": { + "provider": { + "type": "string", + "description": "The Internet service provider." + }, + "azureLocation": { + "type": "string", + "description": "The Azure region." + }, + "latencies": { + "type": "array", + "description": "List of latency details for each of the time series.", + "items": { + "$ref": "#/definitions/AzureReachabilityReportLatencyInfo" + } + } + }, + "description": "Azure reachability report details for a given provider location." + }, + "AzureReachabilityReportLatencyInfo": { + "properties": { + "timeStamp": { + "type": "string", + "format": "date-time", + "description": "The time stamp." + }, + "score": { + "type": "integer", + "description": "The relative latency score between 1 and 100, higher values indicating a faster connection.", + "minimum": 1, + "maximum": 100 + } + }, + "description": "Details on latency for a time series." + }, + "AvailableProvidersListParameters": { + "properties": { + "azureLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Azure regions." + }, + "country": { + "type": "string", + "description": "The country for available providers list." + }, + "state": { + "type": "string", + "description": "The state for available providers list." + }, + "city": { + "type": "string", + "description": "The city or town for available providers list." + } + }, + "description": "Constraints that determine the list of available Internet service providers." + }, + "AvailableProvidersList": { + "properties": { + "countries": { + "type": "array", + "description": "List of available countries.", + "items": { + "$ref": "#/definitions/AvailableProvidersListCountry" + } + } + }, + "required": [ + "countries" + ], + "description": "List of available countries with details." + }, + "AvailableProvidersListCountry": { + "properties": { + "countryName": { + "type": "string", + "description": "The country name." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Internet service providers." + }, + "states": { + "type": "array", + "description": "List of available states in the country.", + "items": { + "$ref": "#/definitions/AvailableProvidersListState" + } + } + }, + "description": "Country details." + }, + "AvailableProvidersListState": { + "properties": { + "stateName": { + "type": "string", + "description": "The state name." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Internet service providers." + }, + "cities": { + "type": "array", + "description": "List of available cities or towns in the state.", + "items": { + "$ref": "#/definitions/AvailableProvidersListCity" + } + } + }, + "description": "State details." + }, + "AvailableProvidersListCity": { + "properties": { + "cityName": { + "type": "string", + "description": "The city or town name." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Internet service providers." + } + }, + "description": "City or town details." + }, + "NetworkConfigurationDiagnosticParameters": { + "description": "Parameters to get network configuration diagnostic.", + "required": [ + "targetResourceId", + "profiles" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "The ID of the target resource to perform network configuration diagnostic. Valid options are VM, NetworkInterface, VMSS/NetworkInterface and Application Gateway." + }, + "verbosityLevel": { + "type": "string", + "enum": [ + "Normal", + "Minimum", + "Full" + ], + "x-ms-enum": { + "name": "VerbosityLevel", + "modelAsString": true + }, + "description": "Verbosity level." + }, + "profiles": { + "type": "array", + "description": "List of network configuration diagnostic profiles.", + "items": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticProfile" + } + } + } + }, + "NetworkConfigurationDiagnosticProfile": { + "description": "Parameters to compare with network configuration.", + "required": [ + "direction", + "protocol", + "source", + "destination", + "destinationPort" + ], + "properties": { + "direction": { + "$ref": "#/definitions/Direction", + "description": "The direction of the traffic." + }, + "protocol": { + "type": "string", + "description": "Protocol to be verified on. Accepted values are '*', TCP, UDP." + }, + "source": { + "type": "string", + "description": "Traffic source. Accepted values are '*', IP Address/CIDR, Service Tag." + }, + "destination": { + "type": "string", + "description": "Traffic destination. Accepted values are: '*', IP Address/CIDR, Service Tag." + }, + "destinationPort": { + "type": "string", + "description": "Traffic destination port. Accepted values are '*' and a single port in the range (0 - 65535)." + } + } + }, + "NetworkConfigurationDiagnosticResponse": { + "description": "Results of network configuration diagnostic on the target resource.", + "properties": { + "results": { + "readOnly": true, + "type": "array", + "description": "List of network configuration diagnostic results.", + "items": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticResult" + } + } + } + }, + "NetworkConfigurationDiagnosticResult": { + "description": "Network configuration diagnostic result corresponded to provided traffic query.", + "properties": { + "profile": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticProfile", + "description": "Network configuration diagnostic profile." + }, + "networkSecurityGroupResult": { + "$ref": "#/definitions/NetworkSecurityGroupResult", + "description": "Network security group result." + } + } + }, + "NetworkSecurityGroupResult": { + "description": "Network configuration diagnostic result corresponded provided traffic query.", + "properties": { + "securityRuleAccessResult": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRuleAccess", + "description": "The network traffic is allowed or denied." + }, + "evaluatedNetworkSecurityGroups": { + "readOnly": true, + "type": "array", + "description": "List of results network security groups diagnostic.", + "items": { + "$ref": "#/definitions/EvaluatedNetworkSecurityGroup" + } + } + } + }, + "EvaluatedNetworkSecurityGroup": { + "description": "Results of network security group evaluation.", + "properties": { + "networkSecurityGroupId": { + "type": "string", + "description": "Network security group ID." + }, + "appliedTo": { + "type": "string", + "description": "Resource ID of nic or subnet to which network security group is applied." + }, + "matchedRule": { + "$ref": "#/definitions/MatchedRule", + "description": "Matched network security rule." + }, + "rulesEvaluationResult": { + "readOnly": true, + "type": "array", + "description": "List of network security rules evaluation results.", + "items": { + "$ref": "#/definitions/NetworkSecurityRulesEvaluationResult" + } + } + } + }, + "MatchedRule": { + "description": "Matched rule.", + "properties": { + "ruleName": { + "type": "string", + "description": "Name of the matched network security rule." + }, + "action": { + "type": "string", + "description": "The network traffic is allowed or denied. Possible values are 'Allow' and 'Deny'." + } + } + }, + "NetworkSecurityRulesEvaluationResult": { + "description": "Network security rules evaluation result.", + "properties": { + "name": { + "type": "string", + "description": "Name of the network security rule." + }, + "protocolMatched": { + "type": "boolean", + "description": "Value indicating whether protocol is matched." + }, + "sourceMatched": { + "type": "boolean", + "description": "Value indicating whether source is matched." + }, + "sourcePortMatched": { + "type": "boolean", + "description": "Value indicating whether source port is matched." + }, + "destinationMatched": { + "type": "boolean", + "description": "Value indicating whether destination is matched." + }, + "destinationPortMatched": { + "type": "boolean", + "description": "Value indicating whether destination port is matched." + } + } + }, + "Direction": { + "type": "string", + "description": "The direction of the traffic.", + "enum": [ + "Inbound", + "Outbound" + ], + "x-ms-enum": { + "name": "Direction", + "modelAsString": true + } + }, + "ConnectionMonitor": { + "properties": { + "location": { + "type": "string", + "description": "Connection monitor location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Connection monitor tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConnectionMonitorParameters", + "description": "Properties of the connection monitor." + } + }, + "required": [ + "properties" + ], + "description": "Parameters that define the operation to create a connection monitor." + }, + "ConnectionMonitorParameters": { + "properties": { + "source": { + "$ref": "#/definitions/ConnectionMonitorSource", + "description": "Describes the source of connection monitor." + }, + "destination": { + "$ref": "#/definitions/ConnectionMonitorDestination", + "description": "Describes the destination of connection monitor." + }, + "autoStart": { + "type": "boolean", + "default": true, + "description": "Determines if the connection monitor will start automatically once created." + }, + "monitoringIntervalInSeconds": { + "type": "integer", + "default": 60, + "description": "Monitoring interval in seconds." + }, + "endpoints": { + "type": "array", + "description": "List of connection monitor endpoints.", + "items": { + "$ref": "#/definitions/ConnectionMonitorEndpoint" + } + }, + "testConfigurations": { + "type": "array", + "description": "List of connection monitor test configurations.", + "items": { + "$ref": "#/definitions/ConnectionMonitorTestConfiguration" + } + }, + "testGroups": { + "type": "array", + "description": "List of connection monitor test groups.", + "items": { + "$ref": "#/definitions/ConnectionMonitorTestGroup" + } + }, + "outputs": { + "type": "array", + "description": "List of connection monitor outputs.", + "items": { + "$ref": "#/definitions/ConnectionMonitorOutput" + } + }, + "notes": { + "type": "string", + "description": "Optional notes to be associated with the connection monitor." + } + }, + "description": "Parameters that define the operation to create a connection monitor." + }, + "ConnectionMonitorSource": { + "properties": { + "resourceId": { + "type": "string", + "description": "The ID of the resource used as the source by connection monitor." + }, + "port": { + "type": "integer", + "description": "The source port used by connection monitor." + } + }, + "required": [ + "resourceId" + ], + "description": "Describes the source of connection monitor." + }, + "ConnectionMonitorDestination": { + "properties": { + "resourceId": { + "type": "string", + "description": "The ID of the resource used as the destination by connection monitor." + }, + "address": { + "type": "string", + "description": "Address of the connection monitor destination (IP or domain name)." + }, + "port": { + "type": "integer", + "description": "The destination port used by connection monitor." + } + }, + "description": "Describes the destination of connection monitor." + }, + "ConnectionMonitorEndpoint": { + "properties": { + "name": { + "type": "string", + "description": "The name of the connection monitor endpoint." + }, + "resourceId": { + "type": "string", + "description": "Resource ID of the connection monitor endpoint." + }, + "address": { + "type": "string", + "description": "Address of the connection monitor endpoint (IP or domain name)." + }, + "filter": { + "$ref": "#/definitions/ConnectionMonitorEndpointFilter", + "description": "Filter for sub-items within the endpoint." + } + }, + "required": [ + "name" + ], + "description": "Describes the connection monitor endpoint." + }, + "ConnectionMonitorEndpointFilter": { + "properties": { + "type": { + "type": "string", + "enum": [ + "Include" + ], + "x-ms-enum": { + "name": "ConnectionMonitorEndpointFilterType", + "modelAsString": true + }, + "description": "The behavior of the endpoint filter. Currently only 'Include' is supported." + }, + "items": { + "type": "array", + "description": "List of items in the filter.", + "items": { + "$ref": "#/definitions/ConnectionMonitorEndpointFilterItem" + } + } + }, + "description": "Describes the connection monitor endpoint filter." + }, + "ConnectionMonitorEndpointFilterItem": { + "properties": { + "type": { + "type": "string", + "enum": [ + "AgentAddress" + ], + "x-ms-enum": { + "name": "ConnectionMonitorEndpointFilterItemType", + "modelAsString": true + }, + "description": "The type of item included in the filter. Currently only 'AgentAddress' is supported." + }, + "address": { + "type": "string", + "description": "The address of the filter item." + } + }, + "description": "Describes the connection monitor endpoint filter item." + }, + "ConnectionMonitorTestGroup": { + "properties": { + "name": { + "type": "string", + "description": "The name of the connection monitor test group." + }, + "disable": { + "type": "boolean", + "description": "Value indicating whether test group is disabled." + }, + "testConfigurations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of test configuration names." + }, + "sources": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of source endpoint names." + }, + "destinations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of destination endpoint names." + } + }, + "required": [ + "name", + "testConfigurations", + "sources", + "destinations" + ], + "description": "Describes the connection monitor test group." + }, + "ConnectionMonitorTestConfiguration": { + "properties": { + "name": { + "type": "string", + "description": "The name of the connection monitor test configuration." + }, + "testFrequencySec": { + "type": "integer", + "description": "The frequency of test evaluation, in seconds." + }, + "protocol": { + "type": "string", + "enum": [ + "Tcp", + "Http", + "Icmp" + ], + "x-ms-enum": { + "name": "ConnectionMonitorTestConfigurationProtocol", + "modelAsString": true + }, + "description": "The protocol to use in test evaluation." + }, + "preferredIPVersion": { + "type": "string", + "enum": [ + "IPv4", + "IPv6" + ], + "x-ms-enum": { + "name": "PreferredIPVersion", + "modelAsString": true + }, + "description": "The preferred IP version to use in test evaluation. The connection monitor may choose to use a different version depending on other parameters." + }, + "httpConfiguration": { + "$ref": "#/definitions/ConnectionMonitorHttpConfiguration", + "description": "The parameters used to perform test evaluation over HTTP." + }, + "tcpConfiguration": { + "$ref": "#/definitions/ConnectionMonitorTcpConfiguration", + "description": "The parameters used to perform test evaluation over TCP." + }, + "icmpConfiguration": { + "$ref": "#/definitions/ConnectionMonitorIcmpConfiguration", + "description": "The parameters used to perform test evaluation over ICMP." + }, + "successThreshold": { + "$ref": "#/definitions/ConnectionMonitorSuccessThreshold", + "description": "The threshold for declaring a test successful." + } + }, + "required": [ + "name", + "protocol" + ], + "description": "Describes a connection monitor test configuration." + }, + "ConnectionMonitorHttpConfiguration": { + "properties": { + "port": { + "type": "integer", + "description": "The port to connect to." + }, + "method": { + "type": "string", + "description": "The HTTP method to use.", + "enum": [ + "Get", + "Post" + ], + "x-ms-enum": { + "name": "HTTPConfigurationMethod", + "modelAsString": true + } + }, + "path": { + "type": "string", + "description": "The path component of the URI. For instance, \"/dir1/dir2\"." + }, + "requestHeaders": { + "type": "array", + "description": "The HTTP headers to transmit with the request.", + "items": { + "$ref": "#/definitions/HTTPHeader" + } + }, + "validStatusCodeRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "HTTP status codes to consider successful. For instance, \"2xx,301-304,418\"." + }, + "preferHTTPS": { + "type": "boolean", + "description": "Value indicating whether HTTPS is preferred over HTTP in cases where the choice is not explicit." + } + }, + "description": "Describes the HTTP configuration." + }, + "ConnectionMonitorTcpConfiguration": { + "properties": { + "port": { + "type": "integer", + "description": "The port to connect to." + }, + "disableTraceRoute": { + "type": "boolean", + "description": "Value indicating whether path evaluation with trace route should be disabled." + } + }, + "description": "Describes the TCP configuration." + }, + "ConnectionMonitorIcmpConfiguration": { + "properties": { + "disableTraceRoute": { + "type": "boolean", + "description": "Value indicating whether path evaluation with trace route should be disabled." + } + }, + "description": "Describes the ICMP configuration." + }, + "ConnectionMonitorSuccessThreshold": { + "properties": { + "checksFailedPercent": { + "type": "integer", + "description": "The maximum percentage of failed checks permitted for a test to evaluate as successful." + }, + "roundTripTimeMs": { + "type": "integer", + "description": "The maximum round-trip time in milliseconds permitted for a test to evaluate as successful." + } + }, + "description": "Describes the threshold for declaring a test successful." + }, + "ConnectionMonitorOutput": { + "properties": { + "type": { + "type": "string", + "description": "Connection monitor output destination type. Currently, only \"Workspace\" is supported.", + "enum": [ + "Workspace" + ], + "x-ms-enum": { + "name": "OutputType", + "modelAsString": true + } + }, + "workspaceSettings": { + "$ref": "#/definitions/ConnectionMonitorWorkspaceSettings", + "description": "Describes the settings for producing output into a log analytics workspace." + } + }, + "description": "Describes a connection monitor output destination." + }, + "ConnectionMonitorWorkspaceSettings": { + "properties": { + "workspaceResourceId": { + "type": "string", + "description": "Log analytics workspace resource ID." + } + }, + "description": "Describes the settings for producing output into a log analytics workspace." + }, + "ConnectionStateSnapshot": { + "properties": { + "connectionState": { + "type": "string", + "enum": [ + "Reachable", + "Unreachable", + "Unknown" + ], + "x-ms-enum": { + "name": "ConnectionState", + "modelAsString": true + }, + "description": "The connection state." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time of the connection snapshot." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time of the connection snapshot." + }, + "evaluationState": { + "type": "string", + "enum": [ + "NotStarted", + "InProgress", + "Completed" + ], + "x-ms-enum": { + "name": "EvaluationState", + "modelAsString": true + }, + "description": "Connectivity analysis evaluation state." + }, + "avgLatencyInMs": { + "type": "integer", + "description": "Average latency in ms." + }, + "minLatencyInMs": { + "type": "integer", + "description": "Minimum latency in ms." + }, + "maxLatencyInMs": { + "type": "integer", + "description": "Maximum latency in ms." + }, + "probesSent": { + "type": "integer", + "description": "The number of sent probes." + }, + "probesFailed": { + "type": "integer", + "description": "The number of failed probes." + }, + "hops": { + "readOnly": true, + "type": "array", + "description": "List of hops between the source and the destination.", + "items": { + "$ref": "./networkWatcher.json#/definitions/ConnectivityHop" + } + } + }, + "description": "Connection state snapshot." + }, + "ConnectionMonitorListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ConnectionMonitorResult" + }, + "description": "Information about connection monitors." + } + }, + "description": "List of connection monitors." + }, + "ConnectionMonitorResult": { + "x-ms-azure-resource": true, + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the connection monitor." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "ID of the connection monitor." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Connection monitor type." + }, + "location": { + "type": "string", + "description": "Connection monitor location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Connection monitor tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConnectionMonitorResultProperties", + "description": "Properties of the connection monitor result." + } + }, + "description": "Information about the connection monitor." + }, + "ConnectionMonitorResultProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the connection monitor." + }, + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time when the connection monitor was started." + }, + "monitoringStatus": { + "readOnly": true, + "type": "string", + "description": "The monitoring status of the connection monitor." + }, + "connectionMonitorType": { + "readOnly": true, + "type": "string", + "enum": [ + "MultiEndpoint", + "SingleSourceDestination" + ], + "x-ms-enum": { + "name": "ConnectionMonitorType", + "modelAsString": true + }, + "description": "Type of connection monitor." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ConnectionMonitorParameters" + } + ], + "description": "Describes the properties of a connection monitor." + }, + "ConnectionMonitorQueryResult": { + "properties": { + "sourceStatus": { + "type": "string", + "enum": [ + "Unknown", + "Active", + "Inactive" + ], + "x-ms-enum": { + "name": "ConnectionMonitorSourceStatus", + "modelAsString": true + }, + "description": "Status of connection monitor source." + }, + "states": { + "type": "array", + "items": { + "$ref": "#/definitions/ConnectionStateSnapshot" + }, + "description": "Information about connection states." + } + }, + "description": "List of connection states snapshots." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/operation.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/operation.json new file mode 100644 index 000000000000..c022689f9db2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/operation.json @@ -0,0 +1,271 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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": { + "/providers/Microsoft.Network/operations": { + "get": { + "operationId": "Operations_List", + "description": "Lists all of the available Network Rest API operations.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get a list of operations for a resource provider": { + "$ref": "./examples/OperationList.json" + } + } + } + } + }, + "definitions": { + "OperationListResult": { + "description": "Result of the request to list Network 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 Network operations supported by the Network resource provider." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "Operation": { + "description": "Network REST API operation definition.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}.", + "type": "string" + }, + "display": { + "description": "Display metadata associated with the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft Network.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "Type of the operation: get, read, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of the operation.", + "type": "string" + } + } + }, + "origin": { + "description": "Origin of the operation.", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OperationPropertiesFormat", + "description": "Operation properties format." + } + } + }, + "OperationPropertiesFormat": { + "description": "Description of operation properties format.", + "properties": { + "serviceSpecification": { + "description": "Specification of the service.", + "properties": { + "metricSpecifications": { + "type": "array", + "items": { + "$ref": "#/definitions/MetricSpecification" + }, + "description": "Operation service specification." + }, + "logSpecifications": { + "type": "array", + "items": { + "$ref": "#/definitions/LogSpecification" + }, + "description": "Operation log specification." + } + } + } + } + }, + "LogSpecification": { + "description": "Description of logging specification.", + "properties": { + "name": { + "type": "string", + "description": "The name of the specification." + }, + "displayName": { + "type": "string", + "description": "The display name of the specification." + }, + "blobDuration": { + "type": "string", + "description": "Duration of the blob." + } + } + }, + "MetricSpecification": { + "description": "Description of metrics specification.", + "properties": { + "name": { + "type": "string", + "description": "The name of the metric." + }, + "displayName": { + "type": "string", + "description": "The display name of the metric." + }, + "displayDescription": { + "type": "string", + "description": "The description of the metric." + }, + "unit": { + "type": "string", + "description": "Units the metric to be displayed in." + }, + "aggregationType": { + "type": "string", + "description": "The aggregation type." + }, + "availabilities": { + "type": "array", + "items": { + "$ref": "#/definitions/Availability" + }, + "description": "List of availability." + }, + "enableRegionalMdmAccount": { + "type": "boolean", + "description": "Whether regional MDM account enabled." + }, + "fillGapWithZero": { + "type": "boolean", + "description": "Whether gaps would be filled with zeros." + }, + "metricFilterPattern": { + "type": "string", + "description": "Pattern for the filter of the metric." + }, + "dimensions": { + "type": "array", + "items": { + "$ref": "#/definitions/Dimension" + }, + "description": "List of dimensions." + }, + "isInternal": { + "type": "boolean", + "description": "Whether the metric is internal." + }, + "sourceMdmAccount": { + "type": "string", + "description": "The source MDM account." + }, + "sourceMdmNamespace": { + "type": "string", + "description": "The source MDM namespace." + }, + "resourceIdDimensionNameOverride": { + "type": "string", + "description": "The resource Id dimension name override." + } + } + }, + "Dimension": { + "description": "Dimension of the metric.", + "properties": { + "name": { + "type": "string", + "description": "The name of the dimension." + }, + "displayName": { + "type": "string", + "description": "The display name of the dimension." + }, + "internalName": { + "type": "string", + "description": "The internal name of the dimension." + } + } + }, + "Availability": { + "description": "Availability of the metric.", + "properties": { + "timeGrain": { + "type": "string", + "description": "The time grain of the availability." + }, + "retention": { + "type": "string", + "description": "The retention of the availability." + }, + "blobDuration": { + "type": "string", + "description": "Duration of the availability blob." + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/privateEndpoint.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/privateEndpoint.json new file mode 100644 index 000000000000..53153e19c297 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/privateEndpoint.json @@ -0,0 +1,572 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateEndpoints/{privateEndpointName}": { + "delete": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_Delete", + "description": "Deletes the specified private endpoint.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete private endpoint": { + "$ref": "./examples/PrivateEndpointDelete.json" + } + } + }, + "get": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_Get", + "description": "Gets the specified private endpoint by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting private endpoint resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpoint" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get private endpoint": { + "$ref": "./examples/PrivateEndpointGet.json" + }, + "Get private endpoint with manual approval connection": { + "$ref": "./examples/PrivateEndpointGetForManualApproval.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_CreateOrUpdate", + "description": "Creates or updates an private endpoint in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpoint" + }, + "description": "Parameters supplied to the create or update private endpoint operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting private endpoint resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpoint" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting private endpoint resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpoint" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create private endpoint": { + "$ref": "./examples/PrivateEndpointCreate.json" + }, + "Create private endpoint with manual approval connection": { + "$ref": "./examples/PrivateEndpointCreateForManualApproval.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateEndpoints": { + "get": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_List", + "description": "Gets all private endpoints in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of private endpoint resources.", + "schema": { + "$ref": "#/definitions/PrivateEndpointListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List private endpoints in resource group": { + "$ref": "./examples/PrivateEndpointList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/privateEndpoints": { + "get": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_ListBySubscription", + "description": "Gets all private endpoints in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of private endpoint resources.", + "schema": { + "$ref": "#/definitions/PrivateEndpointListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all private endpoints": { + "$ref": "./examples/PrivateEndpointListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/availablePrivateEndpointTypes": { + "get": { + "operationId": "AvailablePrivateEndpointTypes_List", + "description": "Returns all of the resource types that can be linked to a Private Endpoint in this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the resource types that can be linked to a Private Endpoint in this subscription in this region.", + "schema": { + "$ref": "#/definitions/AvailablePrivateEndpointTypesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available PrivateEndpoint types": { + "$ref": "./examples/AvailablePrivateEndpointTypesGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/availablePrivateEndpointTypes": { + "get": { + "operationId": "AvailablePrivateEndpointTypes_ListByResourceGroup", + "description": "Returns all of the resource types that can be linked to a Private Endpoint in this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the resource types that can be linked to a Private Endpoint in this subscription in this region.", + "schema": { + "$ref": "#/definitions/AvailablePrivateEndpointTypesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available PrivateEndpoint types in the resource group": { + "$ref": "./examples/AvailablePrivateEndpointTypesResourceGroupGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PrivateEndpoint": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateEndpointProperties", + "description": "Properties of the private endpoint." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Private endpoint resource." + }, + "PrivateEndpointProperties": { + "properties": { + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The ID of the subnet from which the private IP will be allocated." + }, + "networkInterfaces": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + }, + "description": "An array of references to the network interfaces created for this private endpoint." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private endpoint resource." + }, + "privateLinkServiceConnections": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkServiceConnection" + }, + "description": "A grouping of information about the connection to the remote resource." + }, + "manualPrivateLinkServiceConnections": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkServiceConnection" + }, + "description": "A grouping of information about the connection to the remote resource. Used when the network admin does not have access to approve connections to the remote resource." + } + }, + "description": "Properties of the private endpoint." + }, + "PrivateLinkServiceConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateLinkServiceConnectionProperties", + "description": "Properties of the private link service connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "PrivateLinkServiceConnection resource." + }, + "PrivateLinkServiceConnectionProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private link service connection resource." + }, + "privateLinkServiceId": { + "type": "string", + "description": "The resource id of private link service." + }, + "groupIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The ID(s) of the group(s) obtained from the remote resource that this private endpoint should connect to." + }, + "requestMessage": { + "type": "string", + "description": "A message passed to the owner of the remote resource with this connection request. Restricted to 140 chars." + }, + "privateLinkServiceConnectionState": { + "$ref": "./privateLinkService.json#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of read-only information about the state of the connection to the remote resource." + } + }, + "description": "Properties of the PrivateLinkServiceConnection." + }, + "PrivateEndpointListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpoint" + }, + "description": "A list of private endpoint resources in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for the ListPrivateEndpoints API service call." + }, + "AvailablePrivateEndpointTypesResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailablePrivateEndpointType" + }, + "description": "An array of available privateEndpoint type." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "An array of available PrivateEndpoint types." + }, + "AvailablePrivateEndpointType": { + "properties": { + "name": { + "type": "string", + "description": "The name of the service and resource." + }, + "id": { + "type": "string", + "description": "A unique identifier of the AvailablePrivateEndpoint Type resource." + }, + "type": { + "type": "string", + "description": "Resource type." + }, + "resourceName": { + "type": "string", + "description": "The name of the service and resource." + } + }, + "description": "The information of an AvailablePrivateEndpointType." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/privateLinkService.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/privateLinkService.json new file mode 100644 index 000000000000..43c093cf8cb5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/privateLinkService.json @@ -0,0 +1,1068 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateLinkServices/{serviceName}": { + "delete": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_Delete", + "description": "Deletes the specified private link service.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete private link service": { + "$ref": "./examples/PrivateLinkServiceDelete.json" + } + } + }, + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_Get", + "description": "Gets the specified private link service by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PrivateLinkService resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkService" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get private link service": { + "$ref": "./examples/PrivateLinkServiceGet.json" + } + } + }, + "put": { + "tags": [ + "PrivateLinkService" + ], + "operationId": "PrivateLinkServices_CreateOrUpdate", + "description": "Creates or updates an private link service in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateLinkService" + }, + "description": "Parameters supplied to the create or update private link service operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting privateLinkService resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkService" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting privateLinkService resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkService" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create private link service": { + "$ref": "./examples/PrivateLinkServiceCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateLinkServices": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_List", + "description": "Gets all private link services in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of privateLinkService resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkServiceListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List private link service in resource group": { + "$ref": "./examples/PrivateLinkServiceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/privateLinkServices": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_ListBySubscription", + "description": "Gets all private link service in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PrivateLinkService resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkServiceListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all private list service": { + "$ref": "./examples/PrivateLinkServiceListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateLinkServices/{serviceName}/privateEndpointConnections/{peConnectionName}": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_GetPrivateEndpointConnection", + "description": "Get the specific private end point connection by specific private link service in the resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "name": "peConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private end point connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting private end point connection resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get private end point connection": { + "$ref": "./examples/PrivateLinkServiceGetPrivateEndpointConnection.json" + } + } + }, + "put": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_UpdatePrivateEndpointConnection", + "description": "Approve or reject private end point connection for a private link service in a subscription.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "name": "peConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private end point connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "Parameters supplied to approve or reject the private end point connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting PrivateEndpointConnection resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "approve or reject private end point connection for a private link service": { + "$ref": "./examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json" + } + } + }, + "delete": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_DeletePrivateEndpointConnection", + "description": "Delete private end point connection for a private link service in a subscription.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "name": "peConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private end point connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "delete private end point connection for a private link service": { + "$ref": "./examples/PrivateLinkServiceDeletePrivateEndpointConnection.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateLinkServices/{serviceName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_ListPrivateEndpointConnections", + "description": "Gets all private end point connections for a specific private link service.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of private end point connection resources.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List private link service in resource group": { + "$ref": "./examples/PrivateLinkServiceListPrivateEndpointConnection.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/checkPrivateLinkServiceVisibility": { + "post": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_CheckPrivateLinkServiceVisibility", + "description": "Checks whether the subscription is visible to private link service.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CheckPrivateLinkServiceVisibilityRequest" + }, + "description": "The request body of CheckPrivateLinkService API call." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns whether the subscription is visible to private link service.", + "schema": { + "$ref": "#/definitions/PrivateLinkServiceVisibility" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Check private link service visibility": { + "$ref": "./examples/CheckPrivateLinkServiceVisibility.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/checkPrivateLinkServiceVisibility": { + "post": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_CheckPrivateLinkServiceVisibilityByResourceGroup", + "description": "Checks whether the subscription is visible to private link service in the specified resource group.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CheckPrivateLinkServiceVisibilityRequest" + }, + "description": "The request body of CheckPrivateLinkService API call." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns whether the subscription is visible to private link service.", + "schema": { + "$ref": "#/definitions/PrivateLinkServiceVisibility" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Check private link service visibility": { + "$ref": "./examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/autoApprovedPrivateLinkServices": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_ListAutoApprovedPrivateLinkServices", + "description": "Returns all of the private link service ids that can be linked to a Private Endpoint with auto approved in this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the private link service ids that can be linked to a Private Endpoint with auto approved in this subscription in this region.", + "schema": { + "$ref": "#/definitions/AutoApprovedPrivateLinkServicesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get list of private link service id that can be linked to a private end point with auto approved": { + "$ref": "./examples/AutoApprovedPrivateLinkServicesGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/autoApprovedPrivateLinkServices": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_ListAutoApprovedPrivateLinkServicesByResourceGroup", + "description": "Returns all of the private link service ids that can be linked to a Private Endpoint with auto approved in this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the private link service ids that can be linked to a Private Endpoint with auto approved in this subscription in this region.", + "schema": { + "$ref": "#/definitions/AutoApprovedPrivateLinkServicesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get list of private link service id that can be linked to a private end point with auto approved": { + "$ref": "./examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PrivateLinkService": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateLinkServiceProperties", + "description": "Properties of the private link service." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Private link service resource." + }, + "PrivateLinkServiceProperties": { + "properties": { + "loadBalancerFrontendIpConfigurations": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/FrontendIPConfiguration" + }, + "description": "An array of references to the load balancer IP configurations." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkServiceIpConfiguration" + }, + "description": "An array of private link service IP configurations." + }, + "networkInterfaces": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + }, + "description": "An array of references to the network interfaces created for this private link service." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private link service resource." + }, + "privateEndpointConnections": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "An array of list about connections to the private endpoint." + }, + "visibility": { + "allOf": [ + { + "$ref": "#/definitions/ResourceSet" + } + ], + "description": "The visibility list of the private link service." + }, + "autoApproval": { + "allOf": [ + { + "$ref": "#/definitions/ResourceSet" + } + ], + "description": "The auto-approval list of the private link service." + }, + "fqdns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of Fqdn." + }, + "alias": { + "readOnly": true, + "type": "string", + "description": "The alias of the private link service." + }, + "enableProxyProtocol": { + "type": "boolean", + "description": "Whether the private link service is enabled for proxy protocol or not." + } + }, + "description": "Properties of the private link service." + }, + "ResourceSet": { + "properties": { + "subscriptions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of subscriptions." + } + }, + "description": "The base resource set for visibility and auto-approval." + }, + "PrivateLinkServiceIpConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateLinkServiceIpConfigurationProperties", + "description": "Properties of the private link service ip configuration." + }, + "name": { + "type": "string", + "description": "The name of private link service ip configuration." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "The private link service ip configuration." + }, + "PrivateLinkServiceIpConfigurationProperties": { + "properties": { + "privateIPAddress": { + "type": "string", + "description": "The private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference to the subnet resource." + }, + "primary": { + "type": "boolean", + "description": "Whether the ip configuration is primary or not." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private link service IP configuration resource." + }, + "privateIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "Whether the specific IP configuration is IPv4 or IPv6. Default is IPv4." + } + }, + "description": "Properties of private link service IP configuration." + }, + "PrivateEndpointConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Properties of the private end point connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "PrivateEndpointConnection resource." + }, + "PrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "readOnly": true, + "$ref": "./privateEndpoint.json#/definitions/PrivateEndpoint", + "description": "The resource of private end point." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private endpoint connection resource." + }, + "linkIdentifier": { + "readOnly": true, + "type": "string", + "description": "The consumer link id." + } + }, + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "PrivateLinkServiceConnectionState": { + "properties": { + "status": { + "type": "string", + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + }, + "description": { + "type": "string", + "description": "The reason for approval/rejection of the connection." + }, + "actionsRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + } + }, + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "PrivateLinkServiceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkService" + }, + "description": "A list of PrivateLinkService resources in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for the ListPrivateLinkService API service call." + }, + "PrivateEndpointConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "A list of PrivateEndpointConnection resources for a specific private link service." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for the ListPrivateEndpointConnection API service call." + }, + "CheckPrivateLinkServiceVisibilityRequest": { + "properties": { + "privateLinkServiceAlias": { + "type": "string", + "description": "The alias of the private link service." + } + }, + "description": "Request body of the CheckPrivateLinkServiceVisibility API service call." + }, + "PrivateLinkServiceVisibility": { + "properties": { + "visible": { + "type": "boolean", + "description": "Private Link Service Visibility (True/False)." + } + }, + "description": "Response for the CheckPrivateLinkServiceVisibility API service call." + }, + "AutoApprovedPrivateLinkServicesResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AutoApprovedPrivateLinkService" + }, + "description": "An array of auto approved private link service." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "An array of private link service id that can be linked to a private end point with auto approved." + }, + "AutoApprovedPrivateLinkService": { + "properties": { + "privateLinkService": { + "type": "string", + "description": "The id of the private link service resource." + } + }, + "description": "The information of an AutoApprovedPrivateLinkService." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/publicIpAddress.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/publicIpAddress.json new file mode 100644 index 000000000000..7a3c31b97d59 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/publicIpAddress.json @@ -0,0 +1,545 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPAddresses/{publicIpAddressName}": { + "delete": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_Delete", + "description": "Deletes the specified public IP address.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete public IP address": { + "$ref": "./examples/PublicIpAddressDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_Get", + "description": "Gets the specified public IP address in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get public IP address": { + "$ref": "./examples/PublicIpAddressGet.json" + } + } + }, + "put": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_CreateOrUpdate", + "description": "Creates or updates a static or dynamic public IP address.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP address." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PublicIPAddress" + }, + "description": "Parameters supplied to the create or update public IP address operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create public IP address defaults": { + "$ref": "./examples/PublicIpAddressCreateDefaults.json" + }, + "Create public IP address allocation method": { + "$ref": "./examples/PublicIpAddressCreateCustomizedValues.json" + }, + "Create public IP address DNS": { + "$ref": "./examples/PublicIpAddressCreateDns.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_UpdateTags", + "description": "Updates public IP address tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP address." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update public IP address tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update public IP address tags": { + "$ref": "./examples/PublicIpAddressUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/publicIPAddresses": { + "get": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_ListAll", + "description": "Gets all the public IP addresses in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPAddress resources.", + "schema": { + "$ref": "#/definitions/PublicIPAddressListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all public IP addresses": { + "$ref": "./examples/PublicIpAddressListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPAddresses": { + "get": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_List", + "description": "Gets all public IP addresses in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPAddress resources.", + "schema": { + "$ref": "#/definitions/PublicIPAddressListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List resource group public IP addresses": { + "$ref": "./examples/PublicIpAddressList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PublicIPAddressSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of a public IP address SKU.", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "PublicIPAddressSkuName", + "modelAsString": true + } + } + }, + "description": "SKU of a public IP address." + }, + "PublicIPAddressPropertiesFormat": { + "properties": { + "publicIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The public IP address allocation method." + }, + "publicIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "The public IP address version." + }, + "ipConfiguration": { + "readOnly": true, + "$ref": "./networkInterface.json#/definitions/IPConfiguration", + "description": "The IP configuration associated with the public IP address." + }, + "dnsSettings": { + "$ref": "#/definitions/PublicIPAddressDnsSettings", + "description": "The FQDN of the DNS record associated with the public IP address." + }, + "ddosSettings": { + "$ref": "#/definitions/DdosSettings", + "description": "The DDoS protection custom policy associated with the public IP address." + }, + "ipTags": { + "type": "array", + "items": { + "$ref": "#/definitions/IpTag" + }, + "description": "The list of tags associated with the public IP address." + }, + "ipAddress": { + "type": "string", + "description": "The IP address associated with the public IP address resource." + }, + "publicIPPrefix": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The Public IP Prefix this Public IP Address should be allocated from." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The idle timeout of the public IP address." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the public IP address resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the public IP address resource." + } + }, + "description": "Public IP address properties." + }, + "PublicIPAddress": { + "properties": { + "sku": { + "$ref": "#/definitions/PublicIPAddressSku", + "description": "The public IP address SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PublicIPAddressPropertiesFormat", + "description": "Public IP address properties." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting the IP allocated for the resource needs to come from." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Public IP address resource." + }, + "PublicIPAddressListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PublicIPAddress" + }, + "description": "A list of public IP addresses that exists in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPublicIpAddresses API service call." + }, + "PublicIPAddressDnsSettings": { + "properties": { + "domainNameLabel": { + "type": "string", + "description": "The domain name label. The concatenation of the domain name label and the regionalized DNS zone make up the fully qualified domain name associated with the public IP address. If a domain name label is specified, an A DNS record is created for the public IP in the Microsoft Azure DNS system." + }, + "fqdn": { + "type": "string", + "description": "The Fully Qualified Domain Name of the A DNS record associated with the public IP. This is the concatenation of the domainNameLabel and the regionalized DNS zone." + }, + "reverseFqdn": { + "type": "string", + "description": "The reverse FQDN. A user-visible, fully qualified domain name that resolves to this public IP address. If the reverseFqdn is specified, then a PTR DNS record is created pointing from the IP address in the in-addr.arpa domain to the reverse FQDN." + } + }, + "description": "Contains FQDN of the DNS record associated with the public IP address." + }, + "DdosSettings": { + "properties": { + "ddosCustomPolicy": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The DDoS custom policy associated with the public IP." + }, + "protectionCoverage": { + "readOnly": false, + "type": "string", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "DdosSettingsProtectionCoverage", + "modelAsString": true + }, + "description": "The DDoS protection policy customizability of the public IP. Only standard coverage will have the ability to be customized." + }, + "protectedIP": { + "readOnly": false, + "type": "boolean", + "description": "Enables DDoS protection on the public IP." + } + }, + "description": "Contains the DDoS protection settings of the public IP." + }, + "IpTag": { + "properties": { + "ipTagType": { + "type": "string", + "description": "The IP tag type. Example: FirstPartyUsage." + }, + "tag": { + "type": "string", + "description": "The value of the IP tag associated with the public IP. Example: SQL." + } + }, + "description": "Contains the IpTag associated with the object." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/publicIpPrefix.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/publicIpPrefix.json new file mode 100644 index 000000000000..fc0332bfef4a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/publicIpPrefix.json @@ -0,0 +1,485 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIpPrefixName}": { + "delete": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_Delete", + "description": "Deletes the specified public IP prefix.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the PublicIpPrefix." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete public IP prefix": { + "$ref": "./examples/PublicIpPrefixDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_Get", + "description": "Gets the specified public IP prefix in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP prefix." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PublicIPPrefix resource.", + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get public IP prefix": { + "$ref": "./examples/PublicIpPrefixGet.json" + } + } + }, + "put": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_CreateOrUpdate", + "description": "Creates or updates a static or dynamic public IP prefix.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP prefix." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + }, + "description": "Parameters supplied to the create or update public IP prefix operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting PublicIPPrefix resource.", + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting PublicIPPrefix resource.", + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create public IP prefix defaults": { + "$ref": "./examples/PublicIpPrefixCreateDefaults.json" + }, + "Create public IP prefix allocation method": { + "$ref": "./examples/PublicIpPrefixCreateCustomizedValues.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_UpdateTags", + "description": "Updates public IP prefix tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP prefix." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update public IP prefix tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting PublicIPPrefix resource.", + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update public IP prefix tags": { + "$ref": "./examples/PublicIpPrefixUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/publicIPPrefixes": { + "get": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_ListAll", + "description": "Gets all the public IP prefixes in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPPrefix resources.", + "schema": { + "$ref": "#/definitions/PublicIPPrefixListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all public IP prefixes": { + "$ref": "./examples/PublicIpPrefixListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes": { + "get": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_List", + "description": "Gets all public IP prefixes in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPPrefix resources.", + "schema": { + "$ref": "#/definitions/PublicIPPrefixListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List resource group public IP prefixes": { + "$ref": "./examples/PublicIpPrefixList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PublicIPPrefixSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of a public IP prefix SKU.", + "enum": [ + "Standard" + ], + "x-ms-enum": { + "name": "PublicIPPrefixSkuName", + "modelAsString": true + } + } + }, + "description": "SKU of a public IP prefix." + }, + "PublicIPPrefixPropertiesFormat": { + "properties": { + "publicIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "The public IP address version." + }, + "ipTags": { + "type": "array", + "items": { + "$ref": "./publicIpAddress.json#/definitions/IpTag" + }, + "description": "The list of tags associated with the public IP prefix." + }, + "prefixLength": { + "type": "integer", + "format": "int32", + "description": "The Length of the Public IP Prefix." + }, + "ipPrefix": { + "readOnly": true, + "type": "string", + "description": "The allocated Prefix." + }, + "publicIPAddresses": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ReferencedPublicIpAddress" + }, + "description": "The list of all referenced PublicIPAddresses." + }, + "loadBalancerFrontendIpConfiguration": { + "readOnly": true, + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to load balancer frontend IP configuration associated with the public IP prefix." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the public IP prefix resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the public IP prefix resource." + } + }, + "description": "Public IP prefix properties." + }, + "PublicIPPrefix": { + "properties": { + "sku": { + "$ref": "#/definitions/PublicIPPrefixSku", + "description": "The public IP prefix SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PublicIPPrefixPropertiesFormat", + "description": "Public IP prefix properties." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting the IP allocated for the resource needs to come from." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Public IP prefix resource." + }, + "PublicIPPrefixListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PublicIPPrefix" + }, + "description": "A list of public IP prefixes that exists in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPublicIpPrefixes API service call." + }, + "ReferencedPublicIpAddress": { + "properties": { + "id": { + "type": "string", + "description": "The PublicIPAddress Reference." + } + }, + "description": "Reference to a public IP address." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/routeFilter.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/routeFilter.json new file mode 100644 index 000000000000..0bc39e856c28 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/routeFilter.json @@ -0,0 +1,822 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}": { + "delete": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_Delete", + "x-ms-examples": { + "RouteFilterDelete": { + "$ref": "./examples/RouteFilterDelete.json" + } + }, + "description": "Deletes the specified route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_Get", + "x-ms-examples": { + "RouteFilterGet": { + "$ref": "./examples/RouteFilterGet.json" + } + }, + "description": "Gets the specified route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced express route bgp peering resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route Filter resource.", + "schema": { + "$ref": "#/definitions/RouteFilter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_CreateOrUpdate", + "x-ms-examples": { + "RouteFilterCreate": { + "$ref": "./examples/RouteFilterCreate.json" + } + }, + "description": "Creates or updates a route filter in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "routeFilterParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RouteFilter" + }, + "description": "Parameters supplied to the create or update route filter operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route Filter resource.", + "schema": { + "$ref": "#/definitions/RouteFilter" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Route Filter resource.", + "schema": { + "$ref": "#/definitions/RouteFilter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_UpdateTags", + "description": "Updates tags of a route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update route filter tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route Filter resource.", + "schema": { + "$ref": "#/definitions/RouteFilter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update route filter tags": { + "$ref": "./examples/RouteFilterUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters": { + "get": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_ListByResourceGroup", + "x-ms-examples": { + "RouteFilterListByResourceGroup": { + "$ref": "./examples/RouteFilterListByResourceGroup.json" + } + }, + "description": "Gets all route filters in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Route Filter resources.", + "schema": { + "$ref": "#/definitions/RouteFilterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/routeFilters": { + "get": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_List", + "x-ms-examples": { + "RouteFilterList": { + "$ref": "./examples/RouteFilterList.json" + } + }, + "description": "Gets all route filters in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Route Filter resources.", + "schema": { + "$ref": "#/definitions/RouteFilterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}/routeFilterRules/{ruleName}": { + "delete": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_Delete", + "x-ms-examples": { + "RouteFilterRuleDelete": { + "$ref": "./examples/RouteFilterRuleDelete.json" + } + }, + "description": "Deletes the specified rule from a route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "ruleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Accepted." + }, + "204": { + "description": "Rule was deleted or not found." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_Get", + "x-ms-examples": { + "RouteFilterRuleGet": { + "$ref": "./examples/RouteFilterRuleGet.json" + } + }, + "description": "Gets the specified rule from a route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "ruleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route Filter Rule resource.", + "schema": { + "$ref": "#/definitions/RouteFilterRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_CreateOrUpdate", + "x-ms-examples": { + "RouteFilterRuleCreate": { + "$ref": "./examples/RouteFilterRuleCreate.json" + } + }, + "description": "Creates or updates a route in the specified route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "ruleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter rule." + }, + { + "name": "routeFilterRuleParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RouteFilterRule" + }, + "description": "Parameters supplied to the create or update route filter rule operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Route Filter Rule resource.", + "schema": { + "$ref": "#/definitions/RouteFilterRule" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Route Filter Rule resource.", + "schema": { + "$ref": "#/definitions/RouteFilterRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}/routeFilterRules": { + "get": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_ListByRouteFilter", + "x-ms-examples": { + "RouteFilterRuleListByRouteFilter": { + "$ref": "./examples/RouteFilterRuleListByRouteFilter.json" + } + }, + "description": "Gets all RouteFilterRules in a route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Route Filter Rule resources.", + "schema": { + "$ref": "#/definitions/RouteFilterRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "RouteFilterRulePropertiesFormat": { + "required": [ + "access", + "routeFilterRuleType", + "communities" + ], + "properties": { + "access": { + "$ref": "./network.json#/definitions/Access", + "description": "The access type of the rule." + }, + "routeFilterRuleType": { + "type": "string", + "description": "The rule type of the rule.", + "enum": [ + "Community" + ], + "x-ms-enum": { + "name": "RouteFilterRuleType", + "modelAsString": true + } + }, + "communities": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection for bgp community values to filter on. e.g. ['12076:5010','12076:5020']." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the route filter rule resource." + } + }, + "description": "Route Filter Rule Resource." + }, + "RouteFilterRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteFilterRulePropertiesFormat", + "description": "Properties of the route filter rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Route Filter Rule Resource." + }, + "PatchRouteFilterRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteFilterRulePropertiesFormat", + "description": "Properties of the route filter rule." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Route Filter Rule Resource." + }, + "RouteFilterPropertiesFormat": { + "properties": { + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteFilterRule" + }, + "description": "Collection of RouteFilterRules contained within a route filter." + }, + "peerings": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitPeering" + }, + "description": "A collection of references to express route circuit peerings." + }, + "ipv6Peerings": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitPeering" + }, + "description": "A collection of references to express route circuit ipv6 peerings." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the route filter resource." + } + }, + "description": "Route Filter Resource." + }, + "RouteFilter": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteFilterPropertiesFormat", + "description": "Properties of the route filter." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Route Filter Resource." + }, + "PatchRouteFilter": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteFilterPropertiesFormat", + "description": "Properties of the route filter." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Route Filter Resource." + }, + "RouteFilterListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteFilter" + }, + "description": "A list of route filters in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListRouteFilters API service call." + }, + "RouteFilterRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteFilterRule" + }, + "description": "A list of RouteFilterRules in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListRouteFilterRules API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/routeTable.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/routeTable.json new file mode 100644 index 000000000000..34bcaf72dd74 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/routeTable.json @@ -0,0 +1,755 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}": { + "delete": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_Delete", + "description": "Deletes the specified route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "200": { + "description": "Request successful. Operation to delete was accepted." + }, + "202": { + "description": "Accepted. If route table not found returned synchronously, otherwise if found returned asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete route table": { + "$ref": "./examples/RouteTableDelete.json" + } + } + }, + "get": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_Get", + "description": "Gets the specified route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting RouteTable resource.", + "schema": { + "$ref": "#/definitions/RouteTable" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get route table": { + "$ref": "./examples/RouteTableGet.json" + } + } + }, + "put": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_CreateOrUpdate", + "description": "Create or updates a route table in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RouteTable" + }, + "description": "Parameters supplied to the create or update route table operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting RouteTable resource.", + "schema": { + "$ref": "#/definitions/RouteTable" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting RouteTable resource.", + "schema": { + "$ref": "#/definitions/RouteTable" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create route table": { + "$ref": "./examples/RouteTableCreate.json" + }, + "Create route table with route": { + "$ref": "./examples/RouteTableCreateWithRoute.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_UpdateTags", + "description": "Updates a route table tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update route table tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting RouteTable resource.", + "schema": { + "$ref": "#/definitions/RouteTable" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update route table tags": { + "$ref": "./examples/RouteTableUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables": { + "get": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_List", + "description": "Gets all route tables in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of RouteTable resources.", + "schema": { + "$ref": "#/definitions/RouteTableListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List route tables in resource group": { + "$ref": "./examples/RouteTableList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/routeTables": { + "get": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_ListAll", + "description": "Gets all route tables in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of RouteTable resources.", + "schema": { + "$ref": "#/definitions/RouteTableListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all route tables": { + "$ref": "./examples/RouteTableListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}/routes/{routeName}": { + "delete": { + "tags": [ + "Routes" + ], + "operationId": "Routes_Delete", + "description": "Deletes the specified route from a route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "routeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Accepted." + }, + "204": { + "description": "Route was deleted or not found." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete route": { + "$ref": "./examples/RouteTableRouteDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "Routes" + ], + "operationId": "Routes_Get", + "description": "Gets the specified route from a route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "routeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route resource.", + "schema": { + "$ref": "#/definitions/Route" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get route": { + "$ref": "./examples/RouteTableRouteGet.json" + } + } + }, + "put": { + "tags": [ + "Routes" + ], + "operationId": "Routes_CreateOrUpdate", + "description": "Creates or updates a route in the specified route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "routeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route." + }, + { + "name": "routeParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Route" + }, + "description": "Parameters supplied to the create or update route operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Route resource.", + "schema": { + "$ref": "#/definitions/Route" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Route resource.", + "schema": { + "$ref": "#/definitions/Route" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create route": { + "$ref": "./examples/RouteTableRouteCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}/routes": { + "get": { + "tags": [ + "Routes" + ], + "operationId": "Routes_List", + "description": "Gets all routes in a route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Route resources.", + "schema": { + "$ref": "#/definitions/RouteListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List routes": { + "$ref": "./examples/RouteTableRouteList.json" + } + } + } + } + }, + "definitions": { + "RoutePropertiesFormat": { + "properties": { + "addressPrefix": { + "type": "string", + "description": "The destination CIDR to which the route applies." + }, + "nextHopType": { + "$ref": "#/definitions/RouteNextHopType", + "description": "The type of Azure hop the packet should be sent to." + }, + "nextHopIpAddress": { + "type": "string", + "description": "The IP address packets should be forwarded to. Next hop values are only allowed in routes where the next hop type is VirtualAppliance." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the route resource." + } + }, + "required": [ + "nextHopType" + ], + "description": "Route resource." + }, + "Route": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoutePropertiesFormat", + "description": "Properties of the route." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Route resource." + }, + "RouteTablePropertiesFormat": { + "properties": { + "routes": { + "type": "array", + "items": { + "$ref": "#/definitions/Route" + }, + "description": "Collection of routes contained within a route table." + }, + "subnets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./virtualNetwork.json#/definitions/Subnet" + }, + "description": "A collection of references to subnets." + }, + "disableBgpRoutePropagation": { + "type": "boolean", + "description": "Whether to disable the routes learned by BGP on that route table. True means disable." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the route table resource." + } + }, + "description": "Route Table resource." + }, + "RouteTable": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteTablePropertiesFormat", + "description": "Properties of the route table." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Route table resource." + }, + "RouteTableListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteTable" + }, + "description": "A list of route tables in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListRouteTable API service call." + }, + "RouteListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Route" + }, + "description": "A list of routes in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListRoute API service call." + }, + "RouteNextHopType": { + "type": "string", + "description": "The type of Azure hop the packet should be sent to.", + "enum": [ + "VirtualNetworkGateway", + "VnetLocal", + "Internet", + "VirtualAppliance", + "None" + ], + "x-ms-enum": { + "name": "RouteNextHopType", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/serviceCommunity.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/serviceCommunity.json new file mode 100644 index 000000000000..6bf179cec6c5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/serviceCommunity.json @@ -0,0 +1,158 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/bgpServiceCommunities": { + "get": { + "tags": [ + "BgpServiceCommunities" + ], + "operationId": "BgpServiceCommunities_List", + "x-ms-examples": { + "ServiceCommunityList": { + "$ref": "./examples/ServiceCommunityList.json" + } + }, + "description": "Gets all the available bgp service communities.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of BgpServiceCommunity resources.", + "schema": { + "$ref": "#/definitions/BgpServiceCommunityListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "BGPCommunity": { + "properties": { + "serviceSupportedRegion": { + "type": "string", + "description": "The region which the service support. e.g. For O365, region is Global." + }, + "communityName": { + "type": "string", + "description": "The name of the bgp community. e.g. Skype." + }, + "communityValue": { + "type": "string", + "description": "The value of the bgp community. For more information: https://docs.microsoft.com/en-us/azure/expressroute/expressroute-routing." + }, + "communityPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The prefixes that the bgp community contains." + }, + "isAuthorizedToUse": { + "type": "boolean", + "description": "Customer is authorized to use bgp community or not." + }, + "serviceGroup": { + "type": "string", + "description": "The service group of the bgp community contains." + } + }, + "description": "Contains bgp community information offered in Service Community resources." + }, + "BgpServiceCommunityPropertiesFormat": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the bgp community. e.g. Skype." + }, + "bgpCommunities": { + "type": "array", + "items": { + "$ref": "#/definitions/BGPCommunity" + }, + "description": "A list of bgp communities." + } + }, + "description": "Properties of Service Community." + }, + "BgpServiceCommunity": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BgpServiceCommunityPropertiesFormat", + "description": "Properties of the BGP service community." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Service Community Properties." + }, + "BgpServiceCommunityListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BgpServiceCommunity" + }, + "description": "A list of service community resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListServiceCommunity API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/serviceEndpointPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/serviceEndpointPolicy.json new file mode 100644 index 000000000000..0b9b1973a1d5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/serviceEndpointPolicy.json @@ -0,0 +1,742 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}": { + "delete": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_Delete", + "description": "Deletes the specified service endpoint policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_Get", + "description": "Gets the specified service Endpoint Policies in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ServiceEndpointPolicy resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get service endPoint Policy": { + "$ref": "./examples/ServiceEndpointPolicyGet.json" + } + } + }, + "put": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_CreateOrUpdate", + "description": "Creates or updates a service Endpoint Policies.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + }, + "description": "Parameters supplied to the create or update service endpoint policy operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting ServiceEndpointPolicy resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting ServiceEndpointPolicy resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyCreate.json" + }, + "Create service endpoint policy with definition": { + "$ref": "./examples/ServiceEndpointPolicyCreateWithDefinition.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_UpdateTags", + "description": "Updates tags of a service endpoint policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update service endpoint policy tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ServiceEndpointPolicy resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update service endpoint policy tags": { + "$ref": "./examples/ServiceEndpointPolicyUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ServiceEndpointPolicies": { + "get": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_List", + "description": "Gets all the service endpoint policies in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ServiceEndpointPolicy resources.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies": { + "get": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_ListByResourceGroup", + "description": "Gets all service endpoint Policies in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ServiceEndpointPolicy resources.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List resource group service endpoint policies": { + "$ref": "./examples/ServiceEndpointPolicyList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}/serviceEndpointPolicyDefinitions/{serviceEndpointPolicyDefinitionName}": { + "delete": { + "tags": [ + "ServiceEndpointPolicyDefinitions" + ], + "operationId": "ServiceEndpointPolicyDefinitions_Delete", + "description": "Deletes the specified ServiceEndpoint policy definitions.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Service Endpoint Policy." + }, + { + "name": "serviceEndpointPolicyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy definition." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete service endpoint policy definitions from service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyDefinitionDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "serviceEndpointPolicyDefinitions" + ], + "operationId": "ServiceEndpointPolicyDefinitions_Get", + "description": "Get the specified service endpoint policy definitions from service endpoint policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy name." + }, + { + "name": "serviceEndpointPolicyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy definition name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ServiceEndpointPolicyDefinition resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get service endpoint definition in service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyDefinitionGet.json" + } + } + }, + "put": { + "tags": [ + "serviceEndpointPolicyDefinitions" + ], + "operationId": "ServiceEndpointPolicyDefinitions_CreateOrUpdate", + "description": "Creates or updates a service endpoint policy definition in the specified service endpoint policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "name": "serviceEndpointPolicyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy definition name." + }, + { + "name": "ServiceEndpointPolicyDefinitions", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + }, + "description": "Parameters supplied to the create or update service endpoint policy operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ServiceEndpointPolicyDefinition resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ServiceEndpointPolicyDefinition resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create service endpoint policy definition": { + "$ref": "./examples/ServiceEndpointPolicyDefinitionCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}/serviceEndpointPolicyDefinitions": { + "get": { + "tags": [ + "ServiceEndpointPolicyDefinitions" + ], + "operationId": "ServiceEndpointPolicyDefinitions_ListByResourceGroup", + "description": "Gets all service endpoint policy definitions in a service end point policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ServiceEndpointPolicyDefinition resources.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinitionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List service endpoint definitions in service end point policy": { + "$ref": "./examples/ServiceEndpointPolicyDefinitionList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ServiceEndpointPolicyDefinitionPropertiesFormat": { + "properties": { + "description": { + "type": "string", + "description": "A description for this rule. Restricted to 140 chars." + }, + "service": { + "type": "string", + "description": "Service endpoint name." + }, + "serviceResources": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of service resources." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service endpoint policy definition resource." + } + }, + "description": "Service Endpoint policy definition resource." + }, + "ServiceEndpointPolicyDefinition": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceEndpointPolicyDefinitionPropertiesFormat", + "description": "Properties of the service endpoint policy definition." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Service Endpoint policy definitions." + }, + "ServiceEndpointPolicyDefinitionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + }, + "description": "The service endpoint policy definition in a service endpoint policy." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListServiceEndpointPolicyDefinition API service call. Retrieves all service endpoint policy definition that belongs to a service endpoint policy." + }, + "ServiceEndpointPolicyPropertiesFormat": { + "properties": { + "serviceEndpointPolicyDefinitions": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + }, + "description": "A collection of service endpoint policy definitions of the service endpoint policy." + }, + "subnets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./virtualNetwork.json#/definitions/Subnet" + }, + "description": "A collection of references to subnets." + }, + "resourceGuid": { + "type": "string", + "readOnly": true, + "description": "The resource GUID property of the service endpoint policy resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service endpoint policy resource." + } + }, + "description": "Service Endpoint Policy resource." + }, + "ServiceEndpointPolicy": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceEndpointPolicyPropertiesFormat", + "description": "Properties of the service end point policy." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Service End point policy resource." + }, + "ServiceEndpointPolicyListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPolicy" + }, + "description": "A list of ServiceEndpointPolicy resources." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListServiceEndpointPolicies API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/serviceTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/serviceTags.json new file mode 100644 index 000000000000..1de428f46b79 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/serviceTags.json @@ -0,0 +1,166 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/locations/{location}/serviceTags": { + "get": { + "operationId": "ServiceTags_List", + "description": "Gets a list of service tag information resources.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location that will be used as a reference for version (not as a filter based on location, you will get the list of service tags with prefix details across all regions but limited to the cloud that your subscription belongs to)." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns a list of service tag information resources.", + "schema": { + "$ref": "#/definitions/ServiceTagsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get list of service tags": { + "$ref": "./examples/ServiceTagsList.json" + } + } + } + } + }, + "definitions": { + "ServiceTagsListResult": { + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the cloud." + }, + "id": { + "type": "string", + "readOnly": true, + "description": "The ID of the cloud." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The azure resource type." + }, + "changeNumber": { + "type": "string", + "readOnly": true, + "description": "The iteration number." + }, + "cloud": { + "type": "string", + "readOnly": true, + "description": "The name of the cloud." + }, + "values": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceTagInformation" + }, + "readOnly": true, + "description": "The list of service tag information resources." + } + }, + "description": "Response for the ListServiceTags API service call." + }, + "ServiceTagInformation": { + "properties": { + "properties": { + "$ref": "#/definitions/ServiceTagInformationPropertiesFormat", + "readOnly": true, + "description": "Properties of the service tag information." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of service tag." + }, + "id": { + "type": "string", + "readOnly": true, + "description": "The ID of service tag." + } + }, + "description": "The service tag information." + }, + "ServiceTagInformationPropertiesFormat": { + "properties": { + "changeNumber": { + "type": "string", + "readOnly": true, + "description": "The iteration number of service tag." + }, + "region": { + "type": "string", + "readOnly": true, + "description": "The region of service tag." + }, + "systemService": { + "type": "string", + "readOnly": true, + "description": "The name of system service." + }, + "addressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "The list of IP address prefixes." + } + }, + "description": "Properties of the service tag information." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/usage.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/usage.json new file mode 100644 index 000000000000..2751233e90dc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/usage.json @@ -0,0 +1,160 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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.Network/locations/{location}/usages": { + "get": { + "tags": [ + "Usages" + ], + "operationId": "Usages_List", + "description": "List network usages for a subscription.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location where resource usage is queried.", + "pattern": "^[-\\w\\._ ]+$" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Usage resources.", + "schema": { + "$ref": "#/definitions/UsagesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List usages": { + "$ref": "./examples/UsageList.json" + }, + "List usages spaced location": { + "$ref": "./examples/UsageListSpacedLocation.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "UsageName": { + "properties": { + "value": { + "type": "string", + "description": "A string describing the resource name." + }, + "localizedValue": { + "type": "string", + "description": "A localized string describing the resource name." + } + }, + "description": "The usage names." + }, + "Usage": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Resource identifier." + }, + "unit": { + "type": "string", + "description": "An enum describing the unit of measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "UsageUnit", + "modelAsString": true + } + }, + "currentValue": { + "type": "integer", + "format": "int64", + "description": "The current value of the usage." + }, + "limit": { + "type": "integer", + "format": "int64", + "description": "The limit of usage." + }, + "name": { + "$ref": "#/definitions/UsageName", + "description": "The name of the type of usage." + } + }, + "required": [ + "unit", + "currentValue", + "limit", + "name" + ], + "description": "The network resource usage." + }, + "UsagesListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "The list network resource usages." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "The list usages operation response." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualNetwork.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualNetwork.json new file mode 100644 index 000000000000..e9ddb659f25d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualNetwork.json @@ -0,0 +1,1951 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}": { + "delete": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_Delete", + "description": "Deletes the specified virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete virtual network": { + "$ref": "./examples/VirtualNetworkDelete.json" + } + } + }, + "get": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_Get", + "description": "Gets the specified virtual network by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting VirtualNetwork resource.", + "schema": { + "$ref": "#/definitions/VirtualNetwork" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get virtual network": { + "$ref": "./examples/VirtualNetworkGet.json" + }, + "Get virtual network with a delegated subnet": { + "$ref": "./examples/VirtualNetworkGetWithSubnetDelegation.json" + }, + "Get virtual network with service association links": { + "$ref": "./examples/VirtualNetworkGetWithServiceAssociationLink.json" + } + } + }, + "put": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_CreateOrUpdate", + "description": "Creates or updates a virtual network in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetwork" + }, + "description": "Parameters supplied to the create or update virtual network operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetwork resource.", + "schema": { + "$ref": "#/definitions/VirtualNetwork" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetwork resource.", + "schema": { + "$ref": "#/definitions/VirtualNetwork" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create virtual network": { + "$ref": "./examples/VirtualNetworkCreate.json" + }, + "Create virtual network with subnet": { + "$ref": "./examples/VirtualNetworkCreateSubnet.json" + }, + "Create virtual network with subnet containing address prefixes": { + "$ref": "./examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json" + }, + "Create virtual network with Bgp Communities": { + "$ref": "./examples/VirtualNetworkCreateWithBgpCommunities.json" + }, + "Create virtual network with service endpoints": { + "$ref": "./examples/VirtualNetworkCreateServiceEndpoints.json" + }, + "Create virtual network with service endpoints and service endpoint policy": { + "$ref": "./examples/VirtualNetworkCreateServiceEndpointPolicy.json" + }, + "Create virtual network with delegated subnets": { + "$ref": "./examples/VirtualNetworkCreateSubnetWithDelegation.json" + } + } + }, + "patch": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_UpdateTags", + "description": "Updates a virtual network tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update virtual network tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetwork resource.", + "schema": { + "$ref": "#/definitions/VirtualNetwork" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update virtual network tags": { + "$ref": "./examples/VirtualNetworkUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualNetworks": { + "get": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_ListAll", + "description": "Gets all virtual networks in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetwork resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all virtual networks": { + "$ref": "./examples/VirtualNetworkListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks": { + "get": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_List", + "description": "Gets all virtual networks in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetwork resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual networks in resource group": { + "$ref": "./examples/VirtualNetworkList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}": { + "delete": { + "tags": [ + "Subnets" + ], + "operationId": "Subnets_Delete", + "description": "Deletes the specified subnet.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete subnet": { + "$ref": "./examples/SubnetDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "Subnets" + ], + "operationId": "Subnets_Get", + "description": "Gets the specified subnet by virtual network and resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Subnet resource.", + "schema": { + "$ref": "#/definitions/Subnet" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get subnet": { + "$ref": "./examples/SubnetGet.json" + }, + "Get subnet with a delegation": { + "$ref": "./examples/SubnetGetWithDelegation.json" + } + } + }, + "put": { + "tags": [ + "Subnets" + ], + "operationId": "Subnets_CreateOrUpdate", + "description": "Creates or updates a subnet in the specified virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "name": "subnetParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Subnet" + }, + "description": "Parameters supplied to the create or update subnet operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Subnet resource.", + "schema": { + "$ref": "#/definitions/Subnet" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Subnet resource.", + "schema": { + "$ref": "#/definitions/Subnet" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create subnet": { + "$ref": "./examples/SubnetCreate.json" + }, + "Create subnet with service endpoints": { + "$ref": "./examples/SubnetCreateServiceEndpoint.json" + }, + "Create subnet with a delegation": { + "$ref": "./examples/SubnetCreateWithDelegation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/PrepareNetworkPolicies": { + "post": { + "operationId": "Subnets_PrepareNetworkPolicies", + "description": "Prepares a subnet by applying network intent policies.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "name": "prepareNetworkPoliciesRequestParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrepareNetworkPoliciesRequest" + }, + "description": "Parameters supplied to prepare subnet by applying network intent policies." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Preparing subnet by applying network intent policies is successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Prepare Network Policies": { + "$ref": "./examples/SubnetPrepareNetworkPolicies.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/UnprepareNetworkPolicies": { + "post": { + "operationId": "Subnets_UnprepareNetworkPolicies", + "description": "Unprepares a subnet by removing network intent policies.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "name": "unprepareNetworkPoliciesRequestParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/UnprepareNetworkPoliciesRequest" + }, + "description": "Parameters supplied to unprepare subnet to remove network intent policies." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Unpreparing subnet by removing network intent policies is successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Unprepare Network Policies": { + "$ref": "./examples/SubnetUnprepareNetworkPolicies.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/ResourceNavigationLinks": { + "get": { + "operationId": "ResourceNavigationLinks_List", + "description": "Gets a list of resource navigation links for a subnet.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of resource navigation links for the subnet.", + "schema": { + "$ref": "#/definitions/ResourceNavigationLinksListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Resource Navigation Links": { + "$ref": "./examples/VirtualNetworkGetResourceNavigationLinks.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/ServiceAssociationLinks": { + "get": { + "operationId": "ServiceAssociationLinks_List", + "description": "Gets a list of service association links for a subnet.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of service association links for the subnet.", + "schema": { + "$ref": "#/definitions/ServiceAssociationLinksListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Service Association Links": { + "$ref": "./examples/VirtualNetworkGetServiceAssociationLinks.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets": { + "get": { + "tags": [ + "Subnets" + ], + "operationId": "Subnets_List", + "description": "Gets all subnets in a virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Subnet resources.", + "schema": { + "$ref": "#/definitions/SubnetListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List subnets": { + "$ref": "./examples/SubnetList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/virtualNetworkPeerings/{virtualNetworkPeeringName}": { + "delete": { + "tags": [ + "VirtualNetworkPeerings" + ], + "operationId": "VirtualNetworkPeerings_Delete", + "description": "Deletes the specified virtual network peering.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "virtualNetworkPeeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete peering": { + "$ref": "./examples/VirtualNetworkPeeringDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "VirtualNetworkPeerings" + ], + "operationId": "VirtualNetworkPeerings_Get", + "description": "Gets the specified virtual network peering.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "virtualNetworkPeeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting VirtualNetworkPeering resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get peering": { + "$ref": "./examples/VirtualNetworkPeeringGet.json" + } + } + }, + "put": { + "tags": [ + "VirtualNetworkPeerings" + ], + "operationId": "VirtualNetworkPeerings_CreateOrUpdate", + "description": "Creates or updates a peering in the specified virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "virtualNetworkPeeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "VirtualNetworkPeeringParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkPeering" + }, + "description": "Parameters supplied to the create or update virtual network peering operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkPeering resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkPeering" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetworkPeering resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create peering": { + "$ref": "./examples/VirtualNetworkPeeringCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/virtualNetworkPeerings": { + "get": { + "tags": [ + "VirtualNetworkPeerings" + ], + "operationId": "VirtualNetworkPeerings_List", + "description": "Gets all virtual network peerings in a virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetworkPeering resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkPeeringListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List peerings": { + "$ref": "./examples/VirtualNetworkPeeringList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/CheckIPAddressAvailability": { + "get": { + "operationId": "VirtualNetworks_CheckIPAddressAvailability", + "description": "Checks whether a private IP address is available for use.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "ipAddress", + "in": "query", + "required": true, + "type": "string", + "description": "The private IP address to be verified." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Private IP address availability and list of other free addresses if the requested one is not available.", + "schema": { + "$ref": "#/definitions/IPAddressAvailabilityResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Check IP address availability": { + "$ref": "./examples/VirtualNetworkCheckIPAddressAvailability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/usages": { + "get": { + "operationId": "VirtualNetworks_ListUsage", + "description": "Lists usage stats.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Usage stats for vnet.", + "schema": { + "$ref": "#/definitions/VirtualNetworkListUsageResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "VnetGetUsage": { + "$ref": "./examples/VirtualNetworkListUsage.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ServiceAssociationLinkPropertiesFormat": { + "properties": { + "linkedResourceType": { + "type": "string", + "description": "Resource type of the linked resource." + }, + "link": { + "type": "string", + "description": "Link to the external resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service association link resource." + }, + "allowDelete": { + "type": "boolean", + "description": "If true, the resource can be deleted." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of locations." + } + }, + "description": "Properties of ServiceAssociationLink." + }, + "ServiceAssociationLink": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceAssociationLinkPropertiesFormat", + "description": "Resource navigation link properties format." + }, + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "ServiceAssociationLink resource." + }, + "ResourceNavigationLinkFormat": { + "properties": { + "linkedResourceType": { + "type": "string", + "description": "Resource type of the linked resource." + }, + "link": { + "type": "string", + "description": "Link to the external resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the resource navigation link resource." + } + }, + "description": "Properties of ResourceNavigationLink." + }, + "ResourceNavigationLink": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ResourceNavigationLinkFormat", + "description": "Resource navigation link properties format." + }, + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource navigation link identifier." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "ResourceNavigationLink resource." + }, + "ServiceDelegationPropertiesFormat": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the service to whom the subnet should be delegated (e.g. Microsoft.Sql/servers)." + }, + "actions": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The actions permitted to the service upon delegation." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service delegation resource." + } + }, + "description": "Properties of a service delegation." + }, + "Delegation": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceDelegationPropertiesFormat", + "description": "Properties of the subnet." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a subnet. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Details the service to which the subnet is delegated." + }, + "SubnetPropertiesFormat": { + "properties": { + "addressPrefix": { + "type": "string", + "description": "The address prefix for the subnet." + }, + "addressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of address prefixes for the subnet." + }, + "networkSecurityGroup": { + "$ref": "./networkSecurityGroup.json#/definitions/NetworkSecurityGroup", + "description": "The reference to the NetworkSecurityGroup resource." + }, + "routeTable": { + "$ref": "./routeTable.json#/definitions/RouteTable", + "description": "The reference to the RouteTable resource." + }, + "natGateway": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Nat gateway associated with this subnet." + }, + "serviceEndpoints": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPropertiesFormat" + }, + "description": "An array of service endpoints." + }, + "serviceEndpointPolicies": { + "type": "array", + "items": { + "$ref": "./serviceEndpointPolicy.json#/definitions/ServiceEndpointPolicy" + }, + "description": "An array of service endpoint policies." + }, + "privateEndpoints": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./privateEndpoint.json#/definitions/PrivateEndpoint" + }, + "description": "An array of references to private endpoints." + }, + "ipConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/IPConfiguration" + }, + "description": "An array of references to the network interface IP configurations using subnet." + }, + "ipConfigurationProfiles": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkProfile.json#/definitions/IPConfigurationProfile" + }, + "description": "Array of IP configuration profiles which reference this subnet." + }, + "resourceNavigationLinks": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ResourceNavigationLink" + }, + "description": "An array of references to the external resources using subnet." + }, + "serviceAssociationLinks": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ServiceAssociationLink" + }, + "description": "An array of references to services injecting into this subnet." + }, + "delegations": { + "type": "array", + "items": { + "$ref": "#/definitions/Delegation" + }, + "description": "An array of references to the delegations on the subnet." + }, + "purpose": { + "type": "string", + "readOnly": true, + "description": "A read-only string identifying the intention of use for this subnet based on delegations and other user-defined properties." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the subnet resource." + }, + "privateEndpointNetworkPolicies": { + "type": "string", + "description": "Enable or Disable apply network policies on private end point in the subnet." + }, + "privateLinkServiceNetworkPolicies": { + "type": "string", + "description": "Enable or Disable apply network policies on private link service in the subnet." + } + }, + "description": "Properties of the subnet." + }, + "ServiceEndpointPropertiesFormat": { + "properties": { + "service": { + "type": "string", + "description": "The type of the endpoint service." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of locations." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service endpoint resource." + } + }, + "description": "The service endpoint properties." + }, + "VirtualNetworkPeeringPropertiesFormat": { + "properties": { + "allowVirtualNetworkAccess": { + "type": "boolean", + "description": "Whether the VMs in the local virtual network space would be able to access the VMs in remote virtual network space." + }, + "allowForwardedTraffic": { + "type": "boolean", + "description": "Whether the forwarded traffic from the VMs in the local virtual network will be allowed/disallowed in remote virtual network." + }, + "allowGatewayTransit": { + "type": "boolean", + "description": "If gateway links can be used in remote virtual networking to link to this virtual network." + }, + "useRemoteGateways": { + "type": "boolean", + "description": "If remote gateways can be used on this virtual network. If the flag is set to true, and allowGatewayTransit on remote peering is also true, virtual network will use gateways of remote virtual network for transit. Only one peering can have this flag set to true. This flag cannot be set if virtual network already has a gateway." + }, + "remoteVirtualNetwork": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the remote virtual network. The remote virtual network can be in the same or different region (preview). See here to register for the preview and learn more (https://docs.microsoft.com/en-us/azure/virtual-network/virtual-network-create-peering)." + }, + "remoteAddressSpace": { + "$ref": "#/definitions/AddressSpace", + "description": "The reference to the remote virtual network address space." + }, + "peeringState": { + "type": "string", + "description": "The status of the virtual network peering.", + "enum": [ + "Initiated", + "Connected", + "Disconnected" + ], + "x-ms-enum": { + "name": "VirtualNetworkPeeringState", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network peering resource." + } + }, + "description": "Properties of the virtual network peering." + }, + "Subnet": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SubnetPropertiesFormat", + "description": "Properties of the subnet." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Subnet in a virtual network resource." + }, + "VirtualNetworkPeering": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkPeeringPropertiesFormat", + "description": "Properties of the virtual network peering." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Peerings in a virtual network resource." + }, + "SubnetListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Subnet" + }, + "description": "The subnets in a virtual network." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListSubnets API service callRetrieves all subnet that belongs to a virtual network." + }, + "ResourceNavigationLinksListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceNavigationLink" + }, + "description": "The resource navigation links in a subnet." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ResourceNavigationLinks_List operation." + }, + "ServiceAssociationLinksListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceAssociationLink" + }, + "description": "The service association links in a subnet." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ServiceAssociationLinks_List operation." + }, + "VirtualNetworkPeeringListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkPeering" + }, + "description": "The peerings in a virtual network." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListSubnets API service call. Retrieves all subnets that belong to a virtual network." + }, + "VirtualNetworkPropertiesFormat": { + "properties": { + "addressSpace": { + "$ref": "#/definitions/AddressSpace", + "description": "The AddressSpace that contains an array of IP address ranges that can be used by subnets." + }, + "dhcpOptions": { + "$ref": "#/definitions/DhcpOptions", + "description": "The dhcpOptions that contains an array of DNS servers available to VMs deployed in the virtual network." + }, + "subnets": { + "type": "array", + "items": { + "$ref": "#/definitions/Subnet" + }, + "description": "A list of subnets in a Virtual Network." + }, + "virtualNetworkPeerings": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkPeering" + }, + "description": "A list of peerings in a Virtual Network." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resourceGuid property of the Virtual Network resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network resource." + }, + "enableDdosProtection": { + "type": "boolean", + "default": false, + "description": "Indicates if DDoS protection is enabled for all the protected resources in the virtual network. It requires a DDoS protection plan associated with the resource." + }, + "enableVmProtection": { + "type": "boolean", + "default": false, + "description": "Indicates if VM protection is enabled for all the subnets in the virtual network." + }, + "ddosProtectionPlan": { + "$ref": "./network.json#/definitions/SubResource", + "default": null, + "description": "The DDoS protection plan associated with the virtual network." + }, + "bgpCommunities": { + "$ref": "#/definitions/VirtualNetworkBgpCommunities", + "default": null, + "description": "Bgp Communities sent over ExpressRoute with each route corresponding to a prefix in this VNET." + } + }, + "description": "Properties of the virtual network." + }, + "VirtualNetwork": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkPropertiesFormat", + "description": "Properties of the virtual network." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Virtual Network resource." + }, + "VirtualNetworkListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetwork" + }, + "description": "A list of VirtualNetwork resources in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListVirtualNetworks API service call." + }, + "AddressSpace": { + "properties": { + "addressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of address blocks reserved for this virtual network in CIDR notation." + } + }, + "description": "AddressSpace contains an array of IP address ranges that can be used by subnets of the virtual network." + }, + "DhcpOptions": { + "properties": { + "dnsServers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of DNS servers IP addresses." + } + }, + "description": "DhcpOptions contains an array of DNS servers available to VMs deployed in the virtual network. Standard DHCP option for a subnet overrides VNET DHCP options." + }, + "VirtualNetworkBgpCommunities": { + "properties": { + "virtualNetworkCommunity": { + "type": "string", + "description": "The BGP community associated with the virtual network." + }, + "regionalCommunity": { + "type": "string", + "readOnly": true, + "description": "The BGP community associated with the region of the virtual network." + } + }, + "required": [ + "virtualNetworkCommunity" + ], + "description": "Bgp Communities sent over ExpressRoute with each route corresponding to a prefix in this VNET." + }, + "IPAddressAvailabilityResult": { + "properties": { + "available": { + "type": "boolean", + "description": "Private IP address availability." + }, + "availableIPAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Contains other available private IP addresses if the asked for address is taken." + } + }, + "description": "Response for CheckIPAddressAvailability API service call." + }, + "VirtualNetworkListUsageResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/VirtualNetworkUsage" + }, + "description": "VirtualNetwork usage stats." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the virtual networks GetUsage API service call." + }, + "VirtualNetworkUsage": { + "properties": { + "currentValue": { + "type": "number", + "format": "double", + "readOnly": true, + "description": "Indicates number of IPs used from the Subnet." + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Subnet identifier." + }, + "limit": { + "type": "number", + "format": "double", + "readOnly": true, + "description": "Indicates the size of the subnet." + }, + "name": { + "$ref": "#/definitions/VirtualNetworkUsageName", + "readOnly": true, + "description": "The name containing common and localized value for usage." + }, + "unit": { + "type": "string", + "readOnly": true, + "description": "Usage units. Returns 'Count'." + } + }, + "description": "Usage details for subnet." + }, + "VirtualNetworkUsageName": { + "properties": { + "localizedValue": { + "type": "string", + "readOnly": true, + "description": "Localized subnet size and usage string." + }, + "value": { + "type": "string", + "readOnly": true, + "description": "Subnet size and usage string." + } + }, + "description": "Usage strings container." + }, + "PrepareNetworkPoliciesRequest": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the service for which subnet is being prepared for." + }, + "networkIntentPolicyConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkIntentPolicyConfiguration" + }, + "description": "A list of NetworkIntentPolicyConfiguration." + } + }, + "description": "Details of PrepareNetworkPolicies for Subnet." + }, + "UnprepareNetworkPoliciesRequest": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the service for which subnet is being unprepared for." + } + }, + "description": "Details of UnprepareNetworkPolicies for Subnet." + }, + "NetworkIntentPolicyConfiguration": { + "properties": { + "networkIntentPolicyName": { + "type": "string", + "description": "The name of the Network Intent Policy for storing in target subscription." + }, + "sourceNetworkIntentPolicy": { + "$ref": "#/definitions/NetworkIntentPolicy", + "description": "Source network intent policy." + } + }, + "description": "Details of NetworkIntentPolicyConfiguration for PrepareNetworkPoliciesRequest." + }, + "NetworkIntentPolicy": { + "properties": { + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Network Intent Policy resource." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualNetworkGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualNetworkGateway.json new file mode 100644 index 000000000000..8df059f3686e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualNetworkGateway.json @@ -0,0 +1,3680 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}": { + "put": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_CreateOrUpdate", + "description": "Creates or updates a virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + }, + "description": "Parameters supplied to create or update virtual network gateway operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateVirtualNetworkGateway": { + "$ref": "./examples/VirtualNetworkGatewayUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_Get", + "description": "Gets the specified virtual network gateway by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGateway": { + "$ref": "./examples/VirtualNetworkGatewayGet.json" + } + } + }, + "delete": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_Delete", + "description": "Deletes the specified virtual network gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DeleteVirtualNetworkGateway": { + "$ref": "./examples/VirtualNetworkGatewayDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_UpdateTags", + "description": "Updates a virtual network gateway tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update virtual network gateway tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateVirtualNetworkGatewayTags": { + "$ref": "./examples/VirtualNetworkGatewayUpdateTags.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways": { + "get": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_List", + "description": "Gets all virtual network gateways by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetworkGateway resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVirtualNetworkGatewaysinResourceGroup": { + "$ref": "./examples/VirtualNetworkGatewayList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/connections": { + "get": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_ListConnections", + "description": "Gets all the connections in a virtual network gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayListConnectionsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "VirtualNetworkGatewaysListConnections": { + "$ref": "./examples/VirtualNetworkGatewaysListConnections.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/reset": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_Reset", + "description": "Resets the primary of the virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "gatewayVip", + "in": "query", + "required": false, + "type": "string", + "description": "Virtual network gateway vip address supplied to the begin reset of the active-active feature enabled gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation reset the primary of the virtual network gateway.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ResetVirtualNetworkGateway": { + "$ref": "./examples/VirtualNetworkGatewayReset.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/resetvpnclientsharedkey": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_ResetVpnClientSharedKey", + "description": "Resets the VPN client shared key of the virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation reset the vpn client shared key of the virtual network gateway." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ResetVpnClientSharedKey": { + "$ref": "./examples/VirtualNetworkGatewayResetVpnClientSharedKey.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/generatevpnclientpackage": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_Generatevpnclientpackage", + "description": "Generates VPN client package for P2S client of the virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnClientParameters" + }, + "description": "Parameters supplied to the generate virtual network gateway VPN client package operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "VPN client package URL.", + "schema": { + "type": "string" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GenerateVPNClientPackage": { + "$ref": "./examples/VirtualNetworkGatewayGenerateVpnClientPackage.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/generatevpnprofile": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GenerateVpnProfile", + "description": "Generates VPN profile for P2S client of the virtual network gateway in the specified resource group. Used for IKEV2 and radius based authentication.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnClientParameters" + }, + "description": "Parameters supplied to the generate virtual network gateway VPN client package operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "VPN profile package URL.", + "schema": { + "type": "string" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GenerateVirtualNetworkGatewayVPNProfile": { + "$ref": "./examples/VirtualNetworkGatewayGenerateVpnProfile.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getvpnprofilepackageurl": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetVpnProfilePackageUrl", + "description": "Gets pre-generated VPN profile for P2S client of the virtual network gateway in the specified resource group. The profile needs to be generated first using generateVpnProfile.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "VPN profile package URL.", + "schema": { + "type": "string" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayVPNProfilePackageURL": { + "$ref": "./examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getBgpPeerStatus": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetBgpPeerStatus", + "description": "The GetBgpPeerStatus operation retrieves the status of all BGP peers.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "peer", + "in": "query", + "required": false, + "type": "string", + "description": "The IP address of the peer to retrieve the status of." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of BGP peer statuses.", + "schema": { + "$ref": "#/definitions/BgpPeerStatusListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayBGPPeerStatus": { + "$ref": "./examples/VirtualNetworkGatewayGetBGPPeerStatus.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/supportedvpndevices": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_SupportedVpnDevices", + "description": "Gets a xml format representation for supported vpn devices.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Xml format representation for supported vpn devices.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVirtualNetworkGatewaySupportedVPNDevices": { + "$ref": "./examples/VirtualNetworkGatewaySupportedVpnDevice.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getLearnedRoutes": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetLearnedRoutes", + "description": "This operation retrieves a list of routes the virtual network gateway has learned, including routes learned from BGP peers.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of advertised BGP routes.", + "schema": { + "$ref": "#/definitions/GatewayRouteListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayLearnedRoutes": { + "$ref": "./examples/VirtualNetworkGatewayLearnedRoutes.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getAdvertisedRoutes": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetAdvertisedRoutes", + "description": "This operation retrieves a list of routes the virtual network gateway is advertising to the specified peer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "peer", + "in": "query", + "required": true, + "type": "string", + "description": "The IP address of the peer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of learned BGP routes.", + "schema": { + "$ref": "#/definitions/GatewayRouteListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayAdvertisedRoutes": { + "$ref": "./examples/VirtualNetworkGatewayGetAdvertisedRoutes.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/setvpnclientipsecparameters": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_SetVpnclientIpsecParameters", + "description": "The Set VpnclientIpsecParameters operation sets the vpnclient ipsec policy for P2S client of virtual network gateway in the specified resource group through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "vpnclientIpsecParams", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnClientIPsecParameters" + }, + "description": "Parameters supplied to the Begin Set vpnclient ipsec parameters of Virtual Network Gateway P2S client operation through Network resource provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation sets the specified vpnclient ipsec parameters for P2S client of the virtual network gateway.", + "schema": { + "$ref": "#/definitions/VpnClientIPsecParameters" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Set VirtualNetworkGateway VpnClientIpsecParameters": { + "$ref": "./examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getvpnclientipsecparameters": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetVpnclientIpsecParameters", + "description": "The Get VpnclientIpsecParameters operation retrieves information about the vpnclient ipsec policy for P2S client of virtual network gateway in the specified resource group through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual network gateway name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the set vpnclient ipsec parameters for P2S client of VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VpnClientIPsecParameters" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Get VirtualNetworkGateway VpnClientIpsecParameters": { + "$ref": "./examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/vpndeviceconfigurationscript": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_VpnDeviceConfigurationScript", + "description": "Gets a xml format representation for vpn device configuration script.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection for which the configuration script is generated." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnDeviceScriptParameters" + }, + "description": "Parameters supplied to the generate vpn device script operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Xml format representation for vpn device configuration script.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVPNDeviceConfigurationScript": { + "$ref": "./examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/startPacketCapture": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_StartPacketCapture", + "description": "Starts packet capture on virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VpnPacketCaptureStartParameters" + }, + "description": "Virtual network gateway packet capture parameters supplied to start packet capture on gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation packet capture started on virtual network gateway.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Start packet capture on virtual network gateway without filter": { + "$ref": "./examples/VirtualNetworkGatewayStartPacketCapture.json" + }, + "Start packet capture on virtual network gateway with filter": { + "$ref": "./examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/stopPacketCapture": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_StopPacketCapture", + "description": "Stops packet capture on virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnPacketCaptureStopParameters" + }, + "description": "Virtual network gateway packet capture parameters supplied to stop packet capture on gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation packet capture stopped on virtual network gateway.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Stop packet capture on virtual network gateway": { + "$ref": "./examples/VirtualNetworkGatewayStopPacketCapture.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}": { + "put": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_CreateOrUpdate", + "description": "Creates or updates a virtual network gateway connection in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + }, + "description": "Parameters supplied to the create or update virtual network gateway connection operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "CreateVirtualNetworkGatewayConnection_S2S": { + "$ref": "./examples/VirtualNetworkGatewayConnectionCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_Get", + "description": "Gets the specified virtual network gateway connection by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayConnection": { + "$ref": "./examples/VirtualNetworkGatewayConnectionGet.json" + } + } + }, + "delete": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_Delete", + "description": "Deletes the specified virtual network Gateway connection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DeleteVirtualNetworkGatewayConnection": { + "$ref": "./examples/VirtualNetworkGatewayConnectionDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_UpdateTags", + "description": "Updates a virtual network gateway connection tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update virtual network gateway connection tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateVirtualNetworkGatewayConnectionTags": { + "$ref": "./examples/VirtualNetworkGatewayConnectionUpdateTags.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/sharedkey": { + "put": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_SetSharedKey", + "description": "The Put VirtualNetworkGatewayConnectionSharedKey operation sets the virtual network gateway connection shared key for passed virtual network gateway connection in the specified resource group through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual network gateway connection name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionSharedKey" + }, + "description": "Parameters supplied to the Begin Set Virtual Network Gateway connection Shared key operation throughNetwork resource provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request successful. The operation returns the resulting ConnectionSharedKey resource.", + "schema": { + "$ref": "#/definitions/ConnectionSharedKey" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting ConnectionSharedKey resource.", + "schema": { + "$ref": "#/definitions/ConnectionSharedKey" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "SetVirtualNetworkGatewayConnectionSharedKey": { + "$ref": "./examples/VirtualNetworkGatewayConnectionSetSharedKey.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_GetSharedKey", + "description": "The Get VirtualNetworkGatewayConnectionSharedKey operation retrieves information about the specified virtual network gateway connection shared key through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual network gateway connection shared key name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetworkGatewayConnection resources.", + "schema": { + "$ref": "#/definitions/ConnectionSharedKey" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayConnectionSharedKey": { + "$ref": "./examples/VirtualNetworkGatewayConnectionGetSharedKey.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections": { + "get": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_List", + "description": "The List VirtualNetworkGatewayConnections operation retrieves all the virtual network gateways connections created.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation resets the virtual network gateway connection shared key.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVirtualNetworkGatewayConnectionsinResourceGroup": { + "$ref": "./examples/VirtualNetworkGatewayConnectionsList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/sharedkey/reset": { + "post": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_ResetSharedKey", + "description": "The VirtualNetworkGatewayConnectionResetSharedKey operation resets the virtual network gateway connection shared key for passed virtual network gateway connection in the specified resource group through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual network gateway connection reset shared key Name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionResetSharedKey" + }, + "description": "Parameters supplied to the begin reset virtual network gateway connection shared key operation through network resource provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation sets the virtual network gateway connection shared key.", + "schema": { + "$ref": "#/definitions/ConnectionResetSharedKey" + } + }, + "202": { + "description": "Request successful. The operation sets the virtual network gateway connection shared key." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ResetVirtualNetworkGatewayConnectionSharedKey": { + "$ref": "./examples/VirtualNetworkGatewayConnectionResetSharedKey.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/startPacketCapture": { + "post": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_StartPacketCapture", + "description": "Starts packet capture on virtual network gateway connection in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VpnPacketCaptureStartParameters" + }, + "description": "Virtual network gateway packet capture parameters supplied to start packet capture on gateway connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation packet capture started on virtual network gateway connection.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Start packet capture on virtual network gateway connection without filter": { + "$ref": "./examples/VirtualNetworkGatewayConnectionStartPacketCapture.json" + }, + "Start packet capture on virtual network gateway connection with filter": { + "$ref": "./examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/stopPacketCapture": { + "post": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_StopPacketCapture", + "description": "Stops packet capture on virtual network gateway connection in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway Connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnPacketCaptureStopParameters" + }, + "description": "Virtual network gateway packet capture parameters supplied to stop packet capture on gateway connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation packet capture stopped on virtual network gateway connection.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Stop packet capture on virtual network gateway connection": { + "$ref": "./examples/VirtualNetworkGatewayConnectionStopPacketCapture.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways/{localNetworkGatewayName}": { + "put": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_CreateOrUpdate", + "description": "Creates or updates a local network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "localNetworkGatewayName", + "in": "path", + "required": true, + "minLength": 1, + "type": "string", + "description": "The name of the local network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + }, + "description": "Parameters supplied to the create or update local network gateway operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting LocalNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting LocalNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "CreateLocalNetworkGateway": { + "$ref": "./examples/LocalNetworkGatewayCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_Get", + "description": "Gets the specified local network gateway in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "localNetworkGatewayName", + "in": "path", + "required": true, + "minLength": 1, + "type": "string", + "description": "The name of the local network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting LocalNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetLocalNetworkGateway": { + "$ref": "./examples/LocalNetworkGatewayGet.json" + } + } + }, + "delete": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_Delete", + "description": "Deletes the specified local network gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "localNetworkGatewayName", + "in": "path", + "required": true, + "minLength": 1, + "type": "string", + "description": "The name of the local network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DeleteLocalNetworkGateway": { + "$ref": "./examples/LocalNetworkGatewayDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_UpdateTags", + "description": "Updates a local network gateway tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "localNetworkGatewayName", + "in": "path", + "required": true, + "minLength": 1, + "type": "string", + "description": "The name of the local network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update local network gateway tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting LocalNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateLocalNetworkGatewayTags": { + "$ref": "./examples/LocalNetworkGatewayUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways": { + "get": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_List", + "description": "Gets all the local network gateways in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LocalNetworkGateway resources.", + "schema": { + "$ref": "#/definitions/LocalNetworkGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListLocalNetworkGateways": { + "$ref": "./examples/LocalNetworkGatewayList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getVpnClientConnectionHealth": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetVpnclientConnectionHealth", + "description": "Get VPN client connection health detail per P2S client connection of the virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of VPN client connection health details.", + "schema": { + "$ref": "#/definitions/VpnClientConnectionHealthDetailListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayVpnclientConnectionHealth": { + "$ref": "./examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/disconnectVirtualNetworkGatewayVpnConnections": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_DisconnectVirtualNetworkGatewayVpnConnections", + "description": "Disconnect vpn connections of virtual network gateway in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "./virtualWan.json#/definitions/P2SVpnConnectionRequest" + }, + "description": "The parameters are supplied to disconnect vpn connections." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation disconnects the requested vpn connections." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Disconnect VpnConnections from Virtual Network Gateway": { + "$ref": "./examples/VirtualNetworkGatewaysDisconnectP2sVpnConnections.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "VirtualNetworkGatewayIPConfigurationPropertiesFormat": { + "properties": { + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the subnet resource." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the public IP resource." + }, + "privateIPAddress": { + "readOnly": true, + "type": "string", + "description": "Private IP Address for this gateway." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network gateway IP configuration resource." + } + }, + "description": "Properties of VirtualNetworkGatewayIPConfiguration." + }, + "VirtualNetworkGatewayIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayIPConfigurationPropertiesFormat", + "description": "Properties of the virtual network gateway ip configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration for virtual network gateway." + }, + "VirtualNetworkGatewayPropertiesFormat": { + "properties": { + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGatewayIPConfiguration" + }, + "description": "IP configurations for virtual network gateway." + }, + "gatewayType": { + "type": "string", + "description": "The type of this virtual network gateway.", + "enum": [ + "Vpn", + "ExpressRoute" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayType", + "modelAsString": true + } + }, + "vpnType": { + "type": "string", + "description": "The type of this virtual network gateway.", + "enum": [ + "PolicyBased", + "RouteBased" + ], + "x-ms-enum": { + "name": "VpnType", + "modelAsString": true + } + }, + "vpnGatewayGeneration": { + "type": "string", + "description": "The generation for this VirtualNetworkGateway. Must be None if gatewayType is not VPN.", + "enum": [ + "None", + "Generation1", + "Generation2" + ], + "x-ms-enum": { + "name": "VpnGatewayGeneration", + "modelAsString": true + } + }, + "enableBgp": { + "type": "boolean", + "description": "Whether BGP is enabled for this virtual network gateway or not." + }, + "enablePrivateIpAddress": { + "type": "boolean", + "description": "Whether private IP needs to be enabled on this gateway for connections or not." + }, + "activeActive": { + "type": "boolean", + "description": "ActiveActive flag." + }, + "gatewayDefaultSite": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the LocalNetworkGateway resource which represents local network site having default routes. Assign Null value in case of removing existing default site setting." + }, + "sku": { + "$ref": "#/definitions/VirtualNetworkGatewaySku", + "description": "The reference to the VirtualNetworkGatewaySku resource which represents the SKU selected for Virtual network gateway." + }, + "vpnClientConfiguration": { + "$ref": "#/definitions/VpnClientConfiguration", + "description": "The reference to the VpnClientConfiguration resource which represents the P2S VpnClient configurations." + }, + "bgpSettings": { + "$ref": "#/definitions/BgpSettings", + "description": "Virtual network gateway's BGP speaker settings." + }, + "customRoutes": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The reference to the address space resource which represents the custom routes address space specified by the customer for virtual network gateway and VpnClient." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the virtual network gateway resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network gateway resource." + }, + "enableDnsForwarding": { + "type": "boolean", + "description": "Whether dns forwarding is enabled or not." + }, + "inboundDnsForwardingEndpoint": { + "type": "string", + "readOnly": true, + "description": "The IP address allocated by the gateway to which dns requests can be sent." + } + }, + "description": "VirtualNetworkGateway properties." + }, + "VpnClientRootCertificatePropertiesFormat": { + "properties": { + "publicCertData": { + "type": "string", + "description": "The certificate public data." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN client root certificate resource." + } + }, + "required": [ + "publicCertData" + ], + "description": "Properties of SSL certificates of application gateway." + }, + "VpnClientRootCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnClientRootCertificatePropertiesFormat", + "description": "Properties of the vpn client root certificate." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "required": [ + "properties" + ], + "description": "VPN client root certificate of virtual network gateway." + }, + "VpnClientRevokedCertificatePropertiesFormat": { + "properties": { + "thumbprint": { + "type": "string", + "description": "The revoked VPN client certificate thumbprint." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN client revoked certificate resource." + } + }, + "description": "Properties of the revoked VPN client certificate of virtual network gateway." + }, + "VpnClientRevokedCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnClientRevokedCertificatePropertiesFormat", + "description": "Properties of the vpn client revoked certificate." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VPN client revoked certificate of virtual network gateway." + }, + "VpnClientConfiguration": { + "properties": { + "vpnClientAddressPool": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The reference to the address space resource which represents Address space for P2S VpnClient." + }, + "vpnClientRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnClientRootCertificate" + }, + "description": "VpnClientRootCertificate for virtual network gateway." + }, + "vpnClientRevokedCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnClientRevokedCertificate" + }, + "description": "VpnClientRevokedCertificate for Virtual network gateway." + }, + "vpnClientProtocols": { + "type": "array", + "items": { + "type": "string", + "description": "VPN client protocol enabled for the virtual network gateway.", + "enum": [ + "IkeV2", + "SSTP", + "OpenVPN" + ], + "x-ms-enum": { + "name": "VpnClientProtocol", + "modelAsString": true + } + }, + "description": "VpnClientProtocols for Virtual network gateway." + }, + "vpnClientIpsecPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/IpsecPolicy" + }, + "description": "VpnClientIpsecPolicies for virtual network gateway P2S client." + }, + "radiusServerAddress": { + "type": "string", + "description": "The radius server address property of the VirtualNetworkGateway resource for vpn client connection." + }, + "radiusServerSecret": { + "type": "string", + "description": "The radius secret property of the VirtualNetworkGateway resource for vpn client connection." + }, + "aadTenant": { + "type": "string", + "description": "The AADTenant property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication." + }, + "aadAudience": { + "type": "string", + "description": "The AADAudience property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication." + }, + "aadIssuer": { + "type": "string", + "description": "The AADIssuer property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication." + } + }, + "description": "VpnClientConfiguration for P2S client." + }, + "VirtualNetworkGatewaySku": { + "properties": { + "name": { + "type": "string", + "description": "Gateway SKU name.", + "enum": [ + "Basic", + "HighPerformance", + "Standard", + "UltraPerformance", + "VpnGw1", + "VpnGw2", + "VpnGw3", + "VpnGw4", + "VpnGw5", + "VpnGw1AZ", + "VpnGw2AZ", + "VpnGw3AZ", + "VpnGw4AZ", + "VpnGw5AZ", + "ErGw1AZ", + "ErGw2AZ", + "ErGw3AZ" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewaySkuName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "Gateway SKU tier.", + "enum": [ + "Basic", + "HighPerformance", + "Standard", + "UltraPerformance", + "VpnGw1", + "VpnGw2", + "VpnGw3", + "VpnGw4", + "VpnGw5", + "VpnGw1AZ", + "VpnGw2AZ", + "VpnGw3AZ", + "VpnGw4AZ", + "VpnGw5AZ", + "ErGw1AZ", + "ErGw2AZ", + "ErGw3AZ" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewaySkuTier", + "modelAsString": true + } + }, + "capacity": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The capacity." + } + }, + "description": "VirtualNetworkGatewaySku details." + }, + "BgpSettings": { + "properties": { + "asn": { + "type": "integer", + "format": "int64", + "description": "The BGP speaker's ASN." + }, + "bgpPeeringAddress": { + "type": "string", + "description": "The BGP peering address and BGP identifier of this BGP speaker." + }, + "peerWeight": { + "type": "integer", + "format": "int32", + "description": "The weight added to routes learned from this BGP speaker." + }, + "bgpPeeringAddresses": { + "type": "array", + "items": { + "$ref": "#/definitions/IPConfigurationBgpPeeringAddress" + }, + "description": "BGP peering address with IP configuration ID for virtual network gateway." + } + }, + "description": "BGP settings details." + }, + "BgpPeerStatus": { + "properties": { + "localAddress": { + "type": "string", + "readOnly": true, + "description": "The virtual network gateway's local address." + }, + "neighbor": { + "type": "string", + "readOnly": true, + "description": "The remote BGP peer." + }, + "asn": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The autonomous system number of the remote BGP peer." + }, + "state": { + "type": "string", + "readOnly": true, + "description": "The BGP peer state.", + "enum": [ + "Unknown", + "Stopped", + "Idle", + "Connecting", + "Connected" + ], + "x-ms-enum": { + "name": "BgpPeerState", + "modelAsString": true + } + }, + "connectedDuration": { + "type": "string", + "readOnly": true, + "description": "For how long the peering has been up." + }, + "routesReceived": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The number of routes learned from this peer." + }, + "messagesSent": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The number of BGP messages sent." + }, + "messagesReceived": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The number of BGP messages received." + } + }, + "description": "BGP peer status details." + }, + "GatewayRoute": { + "properties": { + "localAddress": { + "type": "string", + "readOnly": true, + "description": "The gateway's local address." + }, + "network": { + "type": "string", + "readOnly": true, + "description": "The route's network prefix." + }, + "nextHop": { + "type": "string", + "readOnly": true, + "description": "The route's next hop." + }, + "sourcePeer": { + "type": "string", + "readOnly": true, + "description": "The peer this route was learned from." + }, + "origin": { + "type": "string", + "readOnly": true, + "description": "The source this route was learned from." + }, + "asPath": { + "type": "string", + "readOnly": true, + "description": "The route's AS path sequence." + }, + "weight": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The route's weight." + } + }, + "description": "Gateway routing details." + }, + "VirtualNetworkGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayPropertiesFormat", + "description": "Properties of the virtual network gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "description": "A common class for general resource information." + }, + "VpnClientParameters": { + "properties": { + "processorArchitecture": { + "type": "string", + "description": "VPN client Processor Architecture.", + "enum": [ + "Amd64", + "X86" + ], + "x-ms-enum": { + "name": "ProcessorArchitecture", + "modelAsString": true + } + }, + "authenticationMethod": { + "$ref": "./network.json#/definitions/AuthenticationMethod", + "description": "VPN client authentication method." + }, + "radiusServerAuthCertificate": { + "type": "string", + "description": "The public certificate data for the radius server authentication certificate as a Base-64 encoded string. Required only if external radius authentication has been configured with EAPTLS authentication." + }, + "clientRootCertificates": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of client root certificates public certificate data encoded as Base-64 strings. Optional parameter for external radius based authentication with EAPTLS." + } + }, + "description": "Vpn Client Parameters for package generation." + }, + "VirtualNetworkGatewayListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGateway" + }, + "description": "A list of VirtualNetworkGateway resources that exists in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListVirtualNetworkGateways API service call." + }, + "BgpPeerStatusListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BgpPeerStatus" + }, + "description": "List of BGP peers." + } + }, + "description": "Response for list BGP peer status API service call." + }, + "GatewayRouteListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GatewayRoute" + }, + "description": "List of gateway routes." + } + }, + "description": "List of virtual network gateway routes." + }, + "TunnelConnectionHealth": { + "properties": { + "tunnel": { + "readOnly": true, + "type": "string", + "description": "Tunnel name." + }, + "connectionStatus": { + "readOnly": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionStatus", + "description": "Virtual Network Gateway connection status." + }, + "ingressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The Ingress Bytes Transferred in this connection." + }, + "egressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The Egress Bytes Transferred in this connection." + }, + "lastConnectionEstablishedUtcTime": { + "readOnly": true, + "type": "string", + "description": "The time at which connection was established in Utc format." + } + }, + "description": "VirtualNetworkGatewayConnection properties." + }, + "VirtualNetworkGatewayConnectionPropertiesFormat": { + "properties": { + "authorizationKey": { + "type": "string", + "description": "The authorizationKey." + }, + "virtualNetworkGateway1": { + "$ref": "#/definitions/VirtualNetworkGateway", + "description": "The reference to virtual network gateway resource." + }, + "virtualNetworkGateway2": { + "$ref": "#/definitions/VirtualNetworkGateway", + "description": "The reference to virtual network gateway resource." + }, + "localNetworkGateway2": { + "$ref": "#/definitions/LocalNetworkGateway", + "description": "The reference to local network gateway resource." + }, + "connectionType": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionType", + "description": "Gateway connection type." + }, + "connectionProtocol": { + "$ref": "#/definitions/ConnectionProtocol", + "description": "Connection protocol used for this connection." + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "The routing weight." + }, + "sharedKey": { + "type": "string", + "description": "The IPSec shared key." + }, + "connectionStatus": { + "readOnly": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionStatus", + "description": "Virtual Network Gateway connection status." + }, + "tunnelConnectionStatus": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/TunnelConnectionHealth" + }, + "description": "Collection of all tunnels' connection health status." + }, + "egressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The egress bytes transferred in this connection." + }, + "ingressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The ingress bytes transferred in this connection." + }, + "peer": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to peerings resource." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "useLocalAzureIpAddress": { + "type": "boolean", + "description": "Use private local Azure IP for the connection." + }, + "usePolicyBasedTrafficSelectors": { + "type": "boolean", + "description": "Enable policy-based traffic selectors." + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "trafficSelectorPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/TrafficSelectorPolicy" + }, + "description": "The Traffic Selector Policies to be considered by this connection." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the virtual network gateway connection resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network gateway connection resource." + }, + "expressRouteGatewayBypass": { + "type": "boolean", + "description": "Bypass ExpressRoute Gateway for data forwarding." + } + }, + "required": [ + "virtualNetworkGateway1", + "connectionType" + ], + "description": "VirtualNetworkGatewayConnection properties." + }, + "VirtualNetworkGatewayConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionPropertiesFormat", + "description": "Properties of the virtual network gateway connection." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "description": "A common class for general resource information." + }, + "VirtualNetworkGatewayConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + }, + "description": "A list of VirtualNetworkGatewayConnection resources that exists in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListVirtualNetworkGatewayConnections API service call." + }, + "ConnectionResetSharedKey": { + "properties": { + "keyLength": { + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 128, + "description": "The virtual network connection reset shared key length, should between 1 and 128." + } + }, + "required": [ + "keyLength" + ], + "description": "The virtual network connection reset shared key." + }, + "ConnectionSharedKey": { + "properties": { + "value": { + "type": "string", + "description": "The virtual network connection shared key value." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "required": [ + "value" + ], + "description": "Response for GetConnectionSharedKey API service call." + }, + "IpsecPolicy": { + "properties": { + "saLifeTimeSeconds": { + "type": "integer", + "format": "int32", + "description": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for a site to site VPN tunnel." + }, + "saDataSizeKilobytes": { + "type": "integer", + "format": "int32", + "description": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for a site to site VPN tunnel." + }, + "ipsecEncryption": { + "$ref": "#/definitions/IpsecEncryption", + "description": "The IPSec encryption algorithm (IKE phase 1)." + }, + "ipsecIntegrity": { + "$ref": "#/definitions/IpsecIntegrity", + "description": "The IPSec integrity algorithm (IKE phase 1)." + }, + "ikeEncryption": { + "$ref": "#/definitions/IkeEncryption", + "description": "The IKE encryption algorithm (IKE phase 2)." + }, + "ikeIntegrity": { + "$ref": "#/definitions/IkeIntegrity", + "description": "The IKE integrity algorithm (IKE phase 2)." + }, + "dhGroup": { + "$ref": "#/definitions/DhGroup", + "description": "The DH Group used in IKE Phase 1 for initial SA." + }, + "pfsGroup": { + "$ref": "#/definitions/PfsGroup", + "description": "The Pfs Group used in IKE Phase 2 for new child SA." + } + }, + "required": [ + "saLifeTimeSeconds", + "saDataSizeKilobytes", + "ipsecEncryption", + "ipsecIntegrity", + "ikeEncryption", + "ikeIntegrity", + "dhGroup", + "pfsGroup" + ], + "description": "An IPSec Policy configuration for a virtual network gateway connection." + }, + "TrafficSelectorPolicy": { + "properties": { + "localAddressRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A collection of local address spaces in CIDR format." + }, + "remoteAddressRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A collection of remote address spaces in CIDR format." + } + }, + "required": [ + "localAddressRanges", + "remoteAddressRanges" + ], + "description": "An traffic selector policy for a virtual network gateway connection." + }, + "ConnectionProtocol": { + "type": "string", + "description": "Gateway connection protocol.", + "enum": [ + "IKEv2", + "IKEv1" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayConnectionProtocol", + "modelAsString": true + } + }, + "VpnClientIPsecParameters": { + "properties": { + "saLifeTimeSeconds": { + "type": "integer", + "format": "int32", + "description": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for P2S client." + }, + "saDataSizeKilobytes": { + "type": "integer", + "format": "int32", + "description": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for P2S client.." + }, + "ipsecEncryption": { + "$ref": "#/definitions/IpsecEncryption", + "description": "The IPSec encryption algorithm (IKE phase 1)." + }, + "ipsecIntegrity": { + "$ref": "#/definitions/IpsecIntegrity", + "description": "The IPSec integrity algorithm (IKE phase 1)." + }, + "ikeEncryption": { + "$ref": "#/definitions/IkeEncryption", + "description": "The IKE encryption algorithm (IKE phase 2)." + }, + "ikeIntegrity": { + "$ref": "#/definitions/IkeIntegrity", + "description": "The IKE integrity algorithm (IKE phase 2)." + }, + "dhGroup": { + "$ref": "#/definitions/DhGroup", + "description": "The DH Group used in IKE Phase 1 for initial SA." + }, + "pfsGroup": { + "$ref": "#/definitions/PfsGroup", + "description": "The Pfs Group used in IKE Phase 2 for new child SA." + } + }, + "required": [ + "saLifeTimeSeconds", + "saDataSizeKilobytes", + "ipsecEncryption", + "ipsecIntegrity", + "ikeEncryption", + "ikeIntegrity", + "dhGroup", + "pfsGroup" + ], + "description": "An IPSec parameters for a virtual network gateway P2S connection." + }, + "LocalNetworkGatewayPropertiesFormat": { + "properties": { + "localNetworkAddressSpace": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "Local network site address space." + }, + "gatewayIpAddress": { + "type": "string", + "description": "IP address of local network gateway." + }, + "fqdn": { + "type": "string", + "description": "FQDN of local network gateway." + }, + "bgpSettings": { + "$ref": "#/definitions/BgpSettings", + "description": "Local network gateway's BGP speaker settings." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the local network gateway resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the local network gateway resource." + } + }, + "description": "LocalNetworkGateway properties." + }, + "LocalNetworkGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LocalNetworkGatewayPropertiesFormat", + "description": "Properties of the local network gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "description": "A common class for general resource information." + }, + "LocalNetworkGatewayListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LocalNetworkGateway" + }, + "description": "A list of local network gateways that exists in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListLocalNetworkGateways API service call." + }, + "VirtualNetworkConnectionGatewayReference": { + "properties": { + "id": { + "type": "string", + "description": "The ID of VirtualNetworkGateway or LocalNetworkGateway resource." + } + }, + "required": [ + "id" + ], + "description": "A reference to VirtualNetworkGateway or LocalNetworkGateway resource." + }, + "VirtualNetworkGatewayConnectionListEntityPropertiesFormat": { + "properties": { + "authorizationKey": { + "type": "string", + "description": "The authorizationKey." + }, + "virtualNetworkGateway1": { + "$ref": "#/definitions/VirtualNetworkConnectionGatewayReference", + "description": "The reference to virtual network gateway resource." + }, + "virtualNetworkGateway2": { + "$ref": "#/definitions/VirtualNetworkConnectionGatewayReference", + "description": "The reference to virtual network gateway resource." + }, + "localNetworkGateway2": { + "$ref": "#/definitions/VirtualNetworkConnectionGatewayReference", + "description": "The reference to local network gateway resource." + }, + "connectionType": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionType", + "description": "Gateway connection type." + }, + "connectionProtocol": { + "$ref": "#/definitions/ConnectionProtocol", + "description": "Connection protocol used for this connection." + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "The routing weight." + }, + "sharedKey": { + "type": "string", + "description": "The IPSec shared key." + }, + "connectionStatus": { + "readOnly": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionStatus", + "description": "Virtual Network Gateway connection status." + }, + "tunnelConnectionStatus": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/TunnelConnectionHealth" + }, + "description": "Collection of all tunnels' connection health status." + }, + "egressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The egress bytes transferred in this connection." + }, + "ingressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The ingress bytes transferred in this connection." + }, + "peer": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to peerings resource." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "usePolicyBasedTrafficSelectors": { + "type": "boolean", + "description": "Enable policy-based traffic selectors." + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "trafficSelectorPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/TrafficSelectorPolicy" + }, + "description": "The Traffic Selector Policies to be considered by this connection." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the virtual network gateway connection resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network gateway connection resource." + }, + "expressRouteGatewayBypass": { + "type": "boolean", + "description": "Bypass ExpressRoute Gateway for data forwarding." + } + }, + "required": [ + "virtualNetworkGateway1", + "connectionType" + ], + "description": "VirtualNetworkGatewayConnection properties." + }, + "VirtualNetworkGatewayConnectionListEntity": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionListEntityPropertiesFormat", + "description": "Properties of the virtual network gateway connection." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "description": "A common class for general resource information." + }, + "VirtualNetworkGatewayListConnectionsResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionListEntity" + }, + "description": "A list of VirtualNetworkGatewayConnection resources that exists in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the VirtualNetworkGatewayListConnections API service call." + }, + "VpnDeviceScriptParameters": { + "properties": { + "vendor": { + "type": "string", + "description": "The vendor for the vpn device." + }, + "deviceFamily": { + "type": "string", + "description": "The device family for the vpn device." + }, + "firmwareVersion": { + "type": "string", + "description": "The firmware version for the vpn device." + } + }, + "description": "Vpn device configuration script generation parameters." + }, + "DhGroup": { + "type": "string", + "description": "The DH Groups used in IKE Phase 1 for initial SA.", + "enum": [ + "None", + "DHGroup1", + "DHGroup2", + "DHGroup14", + "DHGroup2048", + "ECP256", + "ECP384", + "DHGroup24" + ], + "x-ms-enum": { + "name": "DhGroup", + "modelAsString": true + } + }, + "IkeEncryption": { + "type": "string", + "description": "The IKE encryption algorithm (IKE phase 2).", + "enum": [ + "DES", + "DES3", + "AES128", + "AES192", + "AES256", + "GCMAES256", + "GCMAES128" + ], + "x-ms-enum": { + "name": "IkeEncryption", + "modelAsString": true + } + }, + "IkeIntegrity": { + "type": "string", + "description": "The IKE integrity algorithm (IKE phase 2).", + "enum": [ + "MD5", + "SHA1", + "SHA256", + "SHA384", + "GCMAES256", + "GCMAES128" + ], + "x-ms-enum": { + "name": "IkeIntegrity", + "modelAsString": true + } + }, + "IpsecEncryption": { + "type": "string", + "description": "The IPSec encryption algorithm (IKE phase 1).", + "enum": [ + "None", + "DES", + "DES3", + "AES128", + "AES192", + "AES256", + "GCMAES128", + "GCMAES192", + "GCMAES256" + ], + "x-ms-enum": { + "name": "IpsecEncryption", + "modelAsString": true + } + }, + "IpsecIntegrity": { + "type": "string", + "description": "The IPSec integrity algorithm (IKE phase 1).", + "enum": [ + "MD5", + "SHA1", + "SHA256", + "GCMAES128", + "GCMAES192", + "GCMAES256" + ], + "x-ms-enum": { + "name": "IpsecIntegrity", + "modelAsString": true + } + }, + "PfsGroup": { + "type": "string", + "description": "The Pfs Groups used in IKE Phase 2 for new child SA.", + "enum": [ + "None", + "PFS1", + "PFS2", + "PFS2048", + "ECP256", + "ECP384", + "PFS24", + "PFS14", + "PFSMM" + ], + "x-ms-enum": { + "name": "PfsGroup", + "modelAsString": true + } + }, + "VirtualNetworkGatewayConnectionStatus": { + "type": "string", + "description": "Virtual Network Gateway connection status.", + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayConnectionStatus", + "modelAsString": true + } + }, + "VirtualNetworkGatewayConnectionType": { + "type": "string", + "description": "Gateway connection type.", + "enum": [ + "IPsec", + "Vnet2Vnet", + "ExpressRoute", + "VPNClient" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayConnectionType", + "modelAsString": true + } + }, + "VpnClientConnectionHealthDetailListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnClientConnectionHealthDetail" + }, + "description": "List of vpn client connection health." + } + }, + "description": "List of virtual network gateway vpn client connection health." + }, + "VpnClientConnectionHealthDetail": { + "properties": { + "vpnConnectionId": { + "type": "string", + "readOnly": true, + "description": "The vpn client Id." + }, + "vpnConnectionDuration": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The duration time of a connected vpn client." + }, + "vpnConnectionTime": { + "type": "string", + "readOnly": true, + "description": "The start time of a connected vpn client." + }, + "publicIpAddress": { + "type": "string", + "readOnly": true, + "description": "The public Ip of a connected vpn client." + }, + "privateIpAddress": { + "type": "string", + "readOnly": true, + "description": "The assigned private Ip of a connected vpn client." + }, + "vpnUserName": { + "type": "string", + "readOnly": true, + "description": "The user name of a connected vpn client." + }, + "maxBandwidth": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The max band width." + }, + "egressPacketsTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The egress packets per second." + }, + "egressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The egress bytes per second." + }, + "ingressPacketsTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The ingress packets per second." + }, + "ingressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The ingress bytes per second." + }, + "maxPacketsPerSecond": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The max packets transferred per second." + } + }, + "description": "VPN client connection health detail." + }, + "VpnPacketCaptureStopParameters": { + "properties": { + "sasUrl": { + "type": "string", + "description": "SAS url for packet capture on virtual network gateway." + } + }, + "description": "Stop packet capture parameters." + }, + "VpnPacketCaptureStartParameters": { + "properties": { + "filterData": { + "type": "string", + "description": "Start Packet capture parameters." + } + }, + "description": "Start packet capture parameters on virtual network gateway." + }, + "IPConfigurationBgpPeeringAddress": { + "properties": { + "ipconfigurationId": { + "type": "string", + "description": "The ID of IP configuration which belongs to gateway." + }, + "defaultBgpIpAddresses": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of default BGP peering addresses which belong to IP configuration." + }, + "customBgpIpAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of custom BGP peering addresses which belong to IP configuration." + }, + "tunnelIpAddresses": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of tunnel public IP addresses which belong to IP configuration." + } + }, + "description": "Properties of IPConfigurationBgpPeeringAddress." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualNetworkTap.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualNetworkTap.json new file mode 100644 index 000000000000..12c92544c6d8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualNetworkTap.json @@ -0,0 +1,426 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkTaps/{tapName}": { + "delete": { + "tags": [ + "VirtualNetworkTap" + ], + "operationId": "VirtualNetworkTaps_Delete", + "description": "Deletes the specified virtual network tap.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "tapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network tap." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted. Sets 'Deleting' provisioningState until the operation completes. Returns an operation URI that can be queried to find the current state of the operation." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Virtual Network Tap resource": { + "$ref": "./examples/VirtualNetworkTapDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "VirtualNetworkTap" + ], + "operationId": "VirtualNetworkTaps_Get", + "description": "Gets information about the specified virtual network tap.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "tapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of virtual network tap." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting VirtualNetworkTap resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Virtual Network Tap": { + "$ref": "./examples/VirtualNetworkTapGet.json" + } + } + }, + "put": { + "tags": [ + "VirtualNetworkTap" + ], + "operationId": "VirtualNetworkTaps_CreateOrUpdate", + "description": "Creates or updates a Virtual Network Tap.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "tapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network tap." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + }, + "description": "Parameters supplied to the create or update virtual network tap operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkTap resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetworkTap resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Virtual Network Tap": { + "$ref": "./examples/VirtualNetworkTapCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VirtualNetworkTap" + ], + "operationId": "VirtualNetworkTaps_UpdateTags", + "description": "Updates an VirtualNetworkTap tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "tapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tap." + }, + { + "name": "tapParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update VirtualNetworkTap tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkTap resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update virtual network tap tags": { + "$ref": "./examples/VirtualNetworkTapUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualNetworkTaps": { + "get": { + "tags": [ + "VirtualNetworkTaps" + ], + "operationId": "VirtualNetworkTaps_ListAll", + "description": "Gets all the VirtualNetworkTaps in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Virtual Network Tap resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTapListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all virtual network taps": { + "$ref": "./examples/VirtualNetworkTapListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkTaps": { + "get": { + "tags": [ + "VirtualNetworkTaps" + ], + "operationId": "VirtualNetworkTaps_ListByResourceGroup", + "description": "Gets all the VirtualNetworkTaps in a subscription.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Virtual Network Tap resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTapListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual network taps in resource group": { + "$ref": "./examples/VirtualNetworkTapList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "VirtualNetworkTap": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkTapPropertiesFormat", + "description": "Virtual Network Tap Properties." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Virtual Network Tap resource." + }, + "VirtualNetworkTapPropertiesFormat": { + "description": "Virtual Network Tap properties.", + "properties": { + "networkInterfaceTapConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceTapConfiguration", + "description": "The reference to the Network Interface." + }, + "description": "Specifies the list of resource IDs for the network interface IP configuration that needs to be tapped." + }, + "resourceGuid": { + "type": "string", + "readOnly": true, + "description": "The resource GUID property of the virtual network tap resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network tap resource." + }, + "destinationNetworkInterfaceIPConfiguration": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration", + "description": "The reference to the private IP Address of the collector nic that will receive the tap." + }, + "destinationLoadBalancerFrontEndIPConfiguration": { + "$ref": "./loadBalancer.json#/definitions/FrontendIPConfiguration", + "description": "The reference to the private IP address on the internal Load Balancer that will receive the tap." + }, + "destinationPort": { + "type": "integer", + "description": "The VXLAN destination port that will receive the tapped traffic." + } + } + }, + "VirtualNetworkTapListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkTap" + }, + "description": "A list of VirtualNetworkTaps in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListVirtualNetworkTap API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualRouter.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualRouter.json new file mode 100644 index 000000000000..cf64b48da444 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualRouter.json @@ -0,0 +1,698 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualRouters/{virtualRouterName}": { + "delete": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_Delete", + "description": "Deletes the specified Virtual Router.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Delete VirtualRouter": { + "$ref": "./examples/VirtualRouterDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_Get", + "description": "Gets the specified Virtual Router.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a Virtual Router resource.", + "schema": { + "$ref": "#/definitions/VirtualRouter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get VirtualRouter": { + "$ref": "./examples/VirtualRouterGet.json" + } + } + }, + "put": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_CreateOrUpdate", + "description": "Creates or updates the specified Virtual Router.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualRouter" + }, + "description": "Parameters supplied to the create or update Virtual Router." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request received successfully. The operation returns the resulting Virtual Router resource.", + "schema": { + "$ref": "#/definitions/VirtualRouter" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting Virtual Router resource.", + "schema": { + "$ref": "#/definitions/VirtualRouter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Create VirtualRouter": { + "$ref": "./examples/VirtualRouterPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualRouters": { + "get": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_ListByResourceGroup", + "description": "Lists all Virtual Routers in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Virtual Router resources.", + "schema": { + "$ref": "#/definitions/VirtualRouterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all Virtual Router for a given resource group": { + "$ref": "./examples/VirtualRouterListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualRouters": { + "get": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_List", + "description": "Gets all the Virtual Routers in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Virtual Router resources.", + "schema": { + "$ref": "#/definitions/VirtualRouterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all Virtual Routers for a given subscription": { + "$ref": "./examples/VirtualRouterListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualRouters/{virtualRouterName}/peerings/{peeringName}": { + "delete": { + "tags": [ + "VirtualRouterPeerings" + ], + "operationId": "VirtualRouterPeerings_Delete", + "description": "Deletes the specified peering from a Virtual Router.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Delete VirtualRouterPeering": { + "$ref": "./examples/VirtualRouterPeeringDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "VirtualRouterPeerings" + ], + "operationId": "VirtualRouterPeerings_Get", + "description": "Gets the specified Virtual Router Peering.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router Peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a Virtual Router Peering resource.", + "schema": { + "$ref": "#/definitions/VirtualRouterPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get Virtual Router Peering": { + "$ref": "./examples/VirtualRouterPeeringGet.json" + } + } + }, + "put": { + "tags": [ + "VirtualRouterPeerings" + ], + "operationId": "VirtualRouterPeerings_CreateOrUpdate", + "description": "Creates or updates the specified Virtual Router Peering.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router Peering." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualRouterPeering" + }, + "description": "Parameters supplied to the create or update Virtual Router Peering operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request received successfully. The operation returns the resulting Virtual Router Peering resource.", + "schema": { + "$ref": "#/definitions/VirtualRouterPeering" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting Virtual Router Peering resource.", + "schema": { + "$ref": "#/definitions/VirtualRouterPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Create Virtual Router Peering": { + "$ref": "./examples/VirtualRouterPeeringPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualRouters/{virtualRouterName}/peerings": { + "get": { + "tags": [ + "VirtualRouterPeerings" + ], + "operationId": "VirtualRouterPeerings_List", + "description": "Lists all Virtual Router Peerings in a Virtual Router resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Virtual Router Peering resources.", + "schema": { + "$ref": "#/definitions/VirtualRouterPeeringListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all Virtual Router Peerings for a given Virtual Router": { + "$ref": "./examples/VirtualRouterPeeringList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "VirtualRouter": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualRouterPropertiesFormat", + "description": "Properties of the Virtual Router." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VirtualRouter Resource." + }, + "VirtualRouterPropertiesFormat": { + "properties": { + "virtualRouterAsn": { + "type": "integer", + "readOnly": false, + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "VirtualRouter ASN." + }, + "virtualRouterIps": { + "type": "array", + "readOnly": false, + "description": "VirtualRouter IPs.", + "items": { + "type": "string" + } + }, + "hostedSubnet": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The Subnet on which VirtualRouter is hosted." + }, + "hostedGateway": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The Gateway on which VirtualRouter is hosted." + }, + "peerings": { + "type": "array", + "readOnly": true, + "description": "List of references to VirtualRouterPeerings.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState" + } + }, + "description": "Virtual Router definition." + }, + "VirtualRouterPeering": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualRouterPeeringProperties", + "description": "The properties of the Virtual Router Peering." + }, + "name": { + "type": "string", + "description": "Name of the virtual router peering that is unique within a virtual router." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Peering type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Virtual Router Peering resource." + }, + "VirtualRouterPeeringProperties": { + "properties": { + "peerAsn": { + "type": "integer", + "readOnly": false, + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "Peer ASN." + }, + "peerIp": { + "type": "string", + "readOnly": false, + "description": "Peer IP." + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState" + } + }, + "description": "Properties of the rule group." + }, + "VirtualRouterListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualRouter" + }, + "description": "List of Virtual Routers." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListVirtualRouters API service call." + }, + "VirtualRouterPeeringListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualRouterPeering" + }, + "description": "List of VirtualRouterPeerings in a VirtualRouter." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListVirtualRouterPeerings API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualWan.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualWan.json new file mode 100644 index 000000000000..d7f33c866517 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/virtualWan.json @@ -0,0 +1,4608 @@ +{ + "swagger": "2.0", + "info": { + "title": "VirtualWANAsAServiceManagementClient", + "description": "REST API for Azure VirtualWAN As a Service.", + "version": "2019-12-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{VirtualWANName}": { + "get": { + "operationId": "VirtualWans_Get", + "x-ms-examples": { + "VirtualWANGet": { + "$ref": "./examples/VirtualWANGet.json" + } + }, + "description": "Retrieves the details of a VirtualWAN.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "VirtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN being retrieved." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualWAN retrieved.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VirtualWans_CreateOrUpdate", + "x-ms-examples": { + "VirtualWANCreate": { + "$ref": "./examples/VirtualWANPut.json" + } + }, + "description": "Creates a VirtualWAN resource if it doesn't exist else updates the existing VirtualWAN.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "VirtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN being created or updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "WANParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualWAN" + }, + "description": "Parameters supplied to create or update VirtualWAN." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualWAN created or updated.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualWAN resource.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VirtualWANs" + ], + "operationId": "VirtualWans_UpdateTags", + "x-ms-examples": { + "VirtualWANUpdate": { + "$ref": "./examples/VirtualWANUpdateTags.json" + } + }, + "description": "Updates a VirtualWAN tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "VirtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "WANParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to Update VirtualWAN tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualWAN updated.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "VirtualWans_Delete", + "x-ms-examples": { + "VirtualWANDelete": { + "$ref": "./examples/VirtualWANDelete.json" + } + }, + "description": "Deletes a VirtualWAN.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "VirtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN being deleted." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VirtualWAN deleted." + }, + "202": { + "description": "Request received successfully. VirtualWAN deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No VirtualWANs exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans": { + "get": { + "operationId": "VirtualWans_ListByResourceGroup", + "x-ms-examples": { + "VirtualWANListByResourceGroup": { + "$ref": "./examples/VirtualWANListByResourceGroup.json" + } + }, + "description": "Lists all the VirtualWANs in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualWANs in the resource group.", + "schema": { + "$ref": "#/definitions/ListVirtualWANsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualWans": { + "get": { + "operationId": "VirtualWans_List", + "x-ms-examples": { + "VirtualWANList": { + "$ref": "./examples/VirtualWANList.json" + } + }, + "description": "Lists all the VirtualWANs in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualWANs in the subscription.", + "schema": { + "$ref": "#/definitions/ListVirtualWANsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}": { + "get": { + "operationId": "VpnSites_Get", + "x-ms-examples": { + "VpnSiteGet": { + "$ref": "./examples/VpnSiteGet.json" + } + }, + "description": "Retrieves the details of a VPN site.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite being retrieved." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnSite retrieved.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VpnSites_CreateOrUpdate", + "x-ms-examples": { + "VpnSiteCreate": { + "$ref": "./examples/VpnSitePut.json" + } + }, + "description": "Creates a VpnSite resource if it doesn't exist else updates the existing VpnSite.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite being created or updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnSiteParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnSite" + }, + "description": "Parameters supplied to create or update VpnSite." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnSite created or updated.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VpnSite created or updated.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VpnSites" + ], + "operationId": "VpnSites_UpdateTags", + "x-ms-examples": { + "VpnSiteUpdate": { + "$ref": "./examples/VpnSiteUpdateTags.json" + } + }, + "description": "Updates VpnSite tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnSiteParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update VpnSite tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnSite updated.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "VpnSites_Delete", + "x-ms-examples": { + "VpnSiteDelete": { + "$ref": "./examples/VpnSiteDelete.json" + } + }, + "description": "Deletes a VpnSite.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite being deleted." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VpnSite deleted." + }, + "202": { + "description": "Request received successfully. VpnSite deletion is in progress." + }, + "204": { + "description": "No VpnSites exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites": { + "get": { + "operationId": "VpnSites_ListByResourceGroup", + "x-ms-examples": { + "VpnSiteListByResourceGroup": { + "$ref": "./examples/VpnSiteListByResourceGroup.json" + } + }, + "description": "Lists all the vpnSites in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the vpnSites in the resource group.", + "schema": { + "$ref": "#/definitions/ListVpnSitesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}/vpnSiteLinks/{vpnSiteLinkName}": { + "get": { + "operationId": "VpnSiteLinks_Get", + "x-ms-examples": { + "VpnSiteGet": { + "$ref": "./examples/VpnSiteLinkGet.json" + } + }, + "description": "Retrieves the details of a VPN site link.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite." + }, + { + "name": "vpnSiteLinkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSiteLink being retrieved." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnSiteLink retrieved.", + "schema": { + "$ref": "#/definitions/VpnSiteLink" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}/vpnSiteLinks": { + "get": { + "operationId": "VpnSiteLinks_ListByVpnSite", + "x-ms-examples": { + "VpnSiteLinkListByVpnSite": { + "$ref": "./examples/VpnSiteLinkListByVpnSite.json" + } + }, + "description": "Lists all the vpnSiteLinks in a resource group for a vpn site.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the vpnSites in the resource group.", + "schema": { + "$ref": "#/definitions/ListVpnSiteLinksResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/vpnSites": { + "get": { + "operationId": "VpnSites_List", + "x-ms-examples": { + "VpnSiteList": { + "$ref": "./examples/VpnSiteList.json" + } + }, + "description": "Lists all the VpnSites in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VpnSites in the subscription.", + "schema": { + "$ref": "#/definitions/ListVpnSitesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/vpnConfiguration": { + "post": { + "operationId": "VpnSitesConfiguration_Download", + "x-ms-examples": { + "VpnSitesConfigurationDownload": { + "$ref": "./examples/VpnSitesConfigurationDownload.json" + } + }, + "description": "Gives the sas-url to download the configurations for vpn-sites in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name." + }, + { + "name": "virtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN for which configuration of all vpn-sites is needed." + }, + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GetVpnSitesConfigurationRequest" + }, + "description": "Parameters supplied to download vpn-sites configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Follow the location header for sas-url to output blob." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously. Follow the location header for sas-url to output blob." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/supportedSecurityProviders": { + "get": { + "operationId": "SupportedSecurityProviders", + "x-ms-examples": { + "supportedSecurityProviders": { + "$ref": "./examples/VirtualWanSupportedSecurityProviders.json" + } + }, + "description": "Gives the supported security providers for the virtual wan.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name." + }, + { + "name": "virtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN for which supported security providers are needed." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the object containing supported security providers.", + "schema": { + "$ref": "#/definitions/VirtualWanSecurityProviders" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnServerConfigurations/{vpnServerConfigurationName}": { + "get": { + "operationId": "VpnServerConfigurations_Get", + "x-ms-examples": { + "VpnServerConfigurationGet": { + "$ref": "./examples/VpnServerConfigurationGet.json" + } + }, + "description": "Retrieves the details of a VpnServerConfiguration.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "name": "vpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnServerConfiguration being retrieved." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnServerConfiguration retrieved.", + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VpnServerConfigurations_CreateOrUpdate", + "x-ms-examples": { + "VpnServerConfigurationCreate": { + "$ref": "./examples/VpnServerConfigurationPut.json" + } + }, + "description": "Creates a VpnServerConfiguration resource if it doesn't exist else updates the existing VpnServerConfiguration.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "name": "vpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnServerConfiguration being created or updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnServerConfigurationParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + }, + "description": "Parameters supplied to create or update VpnServerConfiguration." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnServerConfiguration created or updated.", + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VpnServerConfiguration created or updated.", + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VpnServerConfigurations" + ], + "operationId": "VpnServerConfigurations_UpdateTags", + "x-ms-examples": { + "VpnServerConfigurationUpdate": { + "$ref": "./examples/VpnServerConfigurationUpdateTags.json" + } + }, + "description": "Updates VpnServerConfiguration tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "name": "vpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnServerConfiguration being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnServerConfigurationParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update VpnServerConfiguration tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnServerConfiguration updated.", + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "VpnServerConfigurations_Delete", + "x-ms-examples": { + "VpnServerConfigurationDelete": { + "$ref": "./examples/VpnServerConfigurationDelete.json" + } + }, + "description": "Deletes a VpnServerConfiguration.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "name": "vpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnServerConfiguration being deleted." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VpnServerConfiguration deleted." + }, + "202": { + "description": "Request received successfully. VpnServerConfiguration deletion is in progress." + }, + "204": { + "description": "No VpnServerConfigurations exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnServerConfigurations": { + "get": { + "operationId": "VpnServerConfigurations_ListByResourceGroup", + "x-ms-examples": { + "VpnServerConfigurationListByResourceGroup": { + "$ref": "./examples/VpnServerConfigurationListByResourceGroup.json" + } + }, + "description": "Lists all the vpnServerConfigurations in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the vpnServerConfigurations in the resource group.", + "schema": { + "$ref": "#/definitions/ListVpnServerConfigurationsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/vpnServerConfigurations": { + "get": { + "operationId": "VpnServerConfigurations_List", + "x-ms-examples": { + "VpnServerConfigurationList": { + "$ref": "./examples/VpnServerConfigurationList.json" + } + }, + "description": "Lists all the VpnServerConfigurations in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VpnServerConfigurations in the subscription.", + "schema": { + "$ref": "#/definitions/ListVpnServerConfigurationsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}": { + "get": { + "operationId": "VirtualHubs_Get", + "x-ms-examples": { + "VirtualHubGet": { + "$ref": "./examples/VirtualHubGet.json" + } + }, + "description": "Retrieves the details of a VirtualHub.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHub retrieved.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VirtualHubs_CreateOrUpdate", + "x-ms-examples": { + "VirtualHubPut": { + "$ref": "./examples/VirtualHubPut.json" + } + }, + "description": "Creates a VirtualHub resource if it doesn't exist else updates the existing VirtualHub.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "virtualHubParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualHub" + }, + "description": "Parameters supplied to create or update VirtualHub." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHub created or updated.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VirtualHub created or updated.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VirtualWANs" + ], + "operationId": "VirtualHubs_UpdateTags", + "x-ms-examples": { + "VirtualHubUpdate": { + "$ref": "./examples/VirtualHubUpdateTags.json" + } + }, + "description": "Updates VirtualHub tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "virtualHubParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update VirtualHub tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHub updated.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "VirtualHubs_Delete", + "x-ms-examples": { + "VirtualHubDelete": { + "$ref": "./examples/VirtualHubDelete.json" + } + }, + "description": "Deletes a VirtualHub.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VirtualHub deleted." + }, + "202": { + "description": "Request received successfully. VirtualHub deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No VirtualHubs exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs": { + "get": { + "operationId": "VirtualHubs_ListByResourceGroup", + "x-ms-examples": { + "VirtualHubListByResourceGroup": { + "$ref": "./examples/VirtualHubListByResourceGroup.json" + } + }, + "description": "Lists all the VirtualHubs in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualHubs in the resource group.", + "schema": { + "$ref": "#/definitions/ListVirtualHubsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualHubs": { + "get": { + "operationId": "VirtualHubs_List", + "x-ms-examples": { + "VirtualHubList": { + "$ref": "./examples/VirtualHubList.json" + } + }, + "description": "Lists all the VirtualHubs in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualHubs in the subscription.", + "schema": { + "$ref": "#/definitions/ListVirtualHubsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/hubVirtualNetworkConnections/{connectionName}": { + "get": { + "operationId": "HubVirtualNetworkConnections_Get", + "x-ms-examples": { + "HubVirtualNetworkConnectionGet": { + "$ref": "./examples/HubVirtualNetworkConnectionGet.json" + } + }, + "description": "Retrieves the details of a HubVirtualNetworkConnection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the HubVirtualNetworkConnection retrieved.", + "schema": { + "$ref": "#/definitions/HubVirtualNetworkConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/hubVirtualNetworkConnections": { + "get": { + "operationId": "HubVirtualNetworkConnections_List", + "x-ms-examples": { + "HubVirtualNetworkConnectionList": { + "$ref": "./examples/HubVirtualNetworkConnectionList.json" + } + }, + "description": "Retrieves the details of all HubVirtualNetworkConnections.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the HubVirtualNetworkConnections for the VirtualHub.", + "schema": { + "$ref": "#/definitions/ListHubVirtualNetworkConnectionsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}": { + "get": { + "operationId": "VpnGateways_Get", + "x-ms-examples": { + "VpnGatewayGet": { + "$ref": "./examples/VpnGatewayGet.json" + } + }, + "description": "Retrieves the details of a virtual wan vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the virtual wan vpn gateway retrieved.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VpnGateways_CreateOrUpdate", + "x-ms-examples": { + "VpnGatewayPut": { + "$ref": "./examples/VpnGatewayPut.json" + } + }, + "description": "Creates a virtual wan vpn gateway if it doesn't exist else updates the existing gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "vpnGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnGateway" + }, + "description": "Parameters supplied to create or Update a virtual wan vpn gateway." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the virtual wan vpn Gateway created or updated.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "201": { + "description": "Request successful. Returns the details of the virtual wan vpn gateway retrieved.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VpnGateways" + ], + "operationId": "VpnGateways_UpdateTags", + "x-ms-examples": { + "VpnGatewayUpdate": { + "$ref": "./examples/VpnGatewayUpdateTags.json" + } + }, + "description": "Updates virtual wan vpn gateway tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "vpnGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update a virtual wan vpn gateway tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the updated gateway.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "VpnGateways_Delete", + "x-ms-examples": { + "VpnGatewayDelete": { + "$ref": "./examples/VpnGatewayDelete.json" + } + }, + "description": "Deletes a virtual wan vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Vpn Gateway deleted." + }, + "202": { + "description": "Request received successfully. Vpn Gateway deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No vpn gateways exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/reset": { + "post": { + "tags": [ + "VpnGateways" + ], + "operationId": "VpnGateways_Reset", + "description": "Resets the primary of the vpn gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation reset the primary of the VpnGateway.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ResetVpnGateway": { + "$ref": "./examples/VpnGatewayReset.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways": { + "get": { + "operationId": "VpnGateways_ListByResourceGroup", + "x-ms-examples": { + "VpnGatewayListByResourceGroup": { + "$ref": "./examples/VpnGatewayListByResourceGroup.json" + } + }, + "description": "Lists all the VpnGateways in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VpnGateways in the resource group.", + "schema": { + "$ref": "#/definitions/ListVpnGatewaysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/vpnGateways": { + "get": { + "operationId": "VpnGateways_List", + "x-ms-examples": { + "VpnGatewayListBySubscription": { + "$ref": "./examples/VpnGatewayList.json" + } + }, + "description": "Lists all the VpnGateways in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VpnGateways in the subscription.", + "schema": { + "$ref": "#/definitions/ListVpnGatewaysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}": { + "get": { + "operationId": "VpnConnections_Get", + "x-ms-examples": { + "VpnConnectionGet": { + "$ref": "./examples/VpnConnectionGet.json" + } + }, + "description": "Retrieves the details of a vpn connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the vpn connection.", + "schema": { + "$ref": "#/definitions/VpnConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VpnConnections_CreateOrUpdate", + "x-ms-examples": { + "VpnConnectionPut": { + "$ref": "./examples/VpnConnectionPut.json" + } + }, + "description": "Creates a vpn connection to a scalable vpn gateway if it doesn't exist else updates the existing connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnConnection" + }, + "description": "Parameters supplied to create or Update a VPN Connection." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the vpn connection created or updated.", + "schema": { + "$ref": "#/definitions/VpnConnection" + } + }, + "201": { + "description": "Request successful. Returns the details of the vpn connection created or updated.", + "schema": { + "$ref": "#/definitions/VpnConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "operationId": "VpnConnections_Delete", + "x-ms-examples": { + "VpnConnectionDelete": { + "$ref": "./examples/VpnConnectionDelete.json" + } + }, + "description": "Deletes a vpn connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Vpn Connection deleted." + }, + "202": { + "description": "Request received successfully. Vpn Connection deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No vpn connections exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}/vpnLinkConnections/{linkConnectionName}": { + "get": { + "operationId": "VpnSiteLinkConnections_Get", + "x-ms-examples": { + "VpnSiteLinkConnectionGet": { + "$ref": "./examples/VpnSiteLinkConnectionGet.json" + } + }, + "description": "Retrieves the details of a vpn site link connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "name": "linkConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the vpn connection.", + "schema": { + "$ref": "#/definitions/VpnSiteLinkConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections": { + "get": { + "operationId": "VpnConnections_ListByVpnGateway", + "x-ms-examples": { + "VpnConnectionList": { + "$ref": "./examples/VpnConnectionList.json" + } + }, + "description": "Retrieves all vpn connections for a particular virtual wan vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all Vpn connections for a virtual wan vpn gateway.", + "schema": { + "$ref": "#/definitions/ListVpnConnectionsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}/vpnLinkConnections": { + "get": { + "operationId": "VpnLinkConnections_ListByVpnConnection", + "x-ms-examples": { + "VpnSiteLinkConnectionList": { + "$ref": "./examples/VpnSiteLinkConnectionList.json" + } + }, + "description": "Retrieves all vpn site link connections for a particular virtual wan vpn gateway vpn connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all Vpn connections for a virtual wan vpn gateway.", + "schema": { + "$ref": "#/definitions/ListVpnSiteLinkConnectionsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}": { + "get": { + "operationId": "P2sVpnGateways_Get", + "x-ms-examples": { + "P2SVpnGatewayGet": { + "$ref": "./examples/P2SVpnGatewayGet.json" + } + }, + "description": "Retrieves the details of a virtual wan p2s vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the virtual wan p2s vpn gateway retrieved.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "P2sVpnGateways_CreateOrUpdate", + "x-ms-examples": { + "P2SVpnGatewayPut": { + "$ref": "./examples/P2SVpnGatewayPut.json" + } + }, + "description": "Creates a virtual wan p2s vpn gateway if it doesn't exist else updates the existing gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "p2SVpnGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + }, + "description": "Parameters supplied to create or Update a virtual wan p2s vpn gateway." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the virtual wan p2s vpn Gateway created or updated.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "201": { + "description": "Request successful. Returns the details of the virtual wan p2s vpn gateway retrieved.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_UpdateTags", + "x-ms-examples": { + "P2SVpnGatewayUpdate": { + "$ref": "./examples/P2SVpnGatewayUpdateTags.json" + } + }, + "description": "Updates virtual wan p2s vpn gateway tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "p2SVpnGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update a virtual wan p2s vpn gateway tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the updated gateway.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "P2sVpnGateways_Delete", + "x-ms-examples": { + "P2SVpnGatewayDelete": { + "$ref": "./examples/P2SVpnGatewayDelete.json" + } + }, + "description": "Deletes a virtual wan p2s vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. P2SVpnGateway deleted." + }, + "202": { + "description": "Request received successfully. P2SVpnGateway deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No p2s vpn gateways exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways": { + "get": { + "operationId": "P2sVpnGateways_ListByResourceGroup", + "x-ms-examples": { + "P2SVpnGatewayListByResourceGroup": { + "$ref": "./examples/P2SVpnGatewayListByResourceGroup.json" + } + }, + "description": "Lists all the P2SVpnGateways in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the P2SVpnGateways in the resource group.", + "schema": { + "$ref": "#/definitions/ListP2SVpnGatewaysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/p2svpnGateways": { + "get": { + "operationId": "P2sVpnGateways_List", + "x-ms-examples": { + "P2SVpnGatewayListBySubscription": { + "$ref": "./examples/P2SVpnGatewayList.json" + } + }, + "description": "Lists all the P2SVpnGateways in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the P2SVpnGateways in the subscription.", + "schema": { + "$ref": "#/definitions/ListP2SVpnGatewaysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}/generatevpnprofile": { + "post": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_GenerateVpnProfile", + "description": "Generates VPN profile for P2S client of the P2SVpnGateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2SVpnGateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/P2SVpnProfileParameters" + }, + "description": "Parameters supplied to the generate P2SVpnGateway VPN client package operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "VPN profile package URL.", + "schema": { + "$ref": "#/definitions/VpnProfileResponse" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GenerateP2SVpnGatewayVPNProfile": { + "$ref": "./examples/P2SVpnGatewayGenerateVpnProfile.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}/getP2sVpnConnectionHealth": { + "post": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_GetP2sVpnConnectionHealth", + "description": "Gets the connection health of P2S clients of the virtual wan P2SVpnGateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2SVpnGateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "P2S Vpn Gateway with P2S connection health details.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "P2SVpnGatewayGetConnectionHealth": { + "$ref": "./examples/P2SVpnGatewayGetConnectionHealth.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}/getP2sVpnConnectionHealthDetailed": { + "post": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_GetP2sVpnConnectionHealthDetailed", + "description": "Gets the sas url to get the connection health detail of P2S clients of the virtual wan P2SVpnGateway in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2SVpnGateway." + }, + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/P2SVpnConnectionHealthRequest" + }, + "description": "Request parameters supplied to get p2s vpn connections detailed health." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "P2S connections detailed health report.", + "schema": { + "$ref": "#/definitions/P2SVpnConnectionHealth" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "P2SVpnGatewayGetConnectionHealthDetailed": { + "$ref": "./examples/P2SVpnGatewayGetConnectionHealthDetailed.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/vpnServerConfigurations": { + "post": { + "operationId": "VpnServerConfigurationsAssociatedWithVirtualWan_List", + "x-ms-examples": { + "GetVirtualWanVpnServerConfigurations": { + "$ref": "./examples/GetVirtualWanVpnServerConfigurations.json" + } + }, + "description": "Gives the list of VpnServerConfigurations associated with Virtual Wan in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name." + }, + { + "name": "virtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN whose associated VpnServerConfigurations is needed." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "List of associated VpnServerConfigurations list.", + "schema": { + "$ref": "#/definitions/VpnServerConfigurationsResponse" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously. Follow the location header for list of associated VpnServerConfigurations list." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/GenerateVpnProfile": { + "post": { + "operationId": "generatevirtualwanvpnserverconfigurationvpnprofile", + "x-ms-examples": { + "GenerateVirtualWanVpnServerConfigurationVpnProfile": { + "$ref": "./examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json" + } + }, + "description": "Generates a unique VPN profile for P2S clients for VirtualWan and associated VpnServerConfiguration combination in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name." + }, + { + "name": "virtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN whose associated VpnServerConfigurations is needed." + }, + { + "name": "vpnClientParams", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualWanVpnProfileParameters" + }, + "description": "Parameters supplied to the generate VirtualWan VPN profile generation operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "VPN profile package URL.", + "schema": { + "$ref": "#/definitions/VpnProfileResponse" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/routeTables/{routeTableName}": { + "get": { + "operationId": "VirtualHubRouteTableV2s_Get", + "x-ms-examples": { + "VirtualHubVirtualHubRouteTableV2Get": { + "$ref": "./examples/VirtualHubRouteTableV2Get.json" + } + }, + "description": "Retrieves the details of a VirtualHubRouteTableV2.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHubRouteTableV2." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHubRouteTableV2." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHubRouteTableV2 retrieved.", + "schema": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + }, + "put": { + "operationId": "VirtualHubRouteTableV2s_CreateOrUpdate", + "x-ms-examples": { + "VirtualHubRouteTableV2Put": { + "$ref": "./examples/VirtualHubRouteTableV2Put.json" + } + }, + "description": "Creates a VirtualHubRouteTableV2 resource if it doesn't exist else updates the existing VirtualHubRouteTableV2.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHubRouteTableV2." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "virtualHubRouteTableV2Parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + }, + "description": "Parameters supplied to create or update VirtualHubRouteTableV2." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHubRouteTableV2 created or updated.", + "schema": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VirtualHubRouteTableV2 created or updated.", + "schema": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "operationId": "VirtualHubRouteTableV2s_Delete", + "x-ms-examples": { + "VirtualHubRouteTableV2Delete": { + "$ref": "./examples/VirtualHubRouteTableV2Delete.json" + } + }, + "description": "Deletes a VirtualHubRouteTableV2.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHubRouteTableV2." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHubRouteTableV2." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VirtualHubRouteTableV2 deleted." + }, + "202": { + "description": "Request received successfully. VirtualHubRouteTableV2 deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No VirtualHubRouteTableV2s exist by the name provided." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/routeTables": { + "get": { + "operationId": "VirtualHubRouteTableV2s_List", + "x-ms-examples": { + "VirtualHubRouteTableV2List": { + "$ref": "./examples/VirtualHubRouteTableV2List.json" + } + }, + "description": "Retrieves the details of all VirtualHubRouteTableV2s.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualHubRouteTableV2s for the VirtualHub.", + "schema": { + "$ref": "#/definitions/ListVirtualHubRouteTableV2sResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{p2sVpnGatewayName}/disconnectP2sVpnConnections": { + "post": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_DisconnectP2sVpnConnections", + "description": "Disconnect P2S vpn connections of the virtual wan P2SVpnGateway in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "p2sVpnGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2S Vpn Gateway." + }, + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/P2SVpnConnectionRequest" + }, + "description": "The parameters are supplied to disconnect p2s vpn connections." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation disconnects the requested vpn connections." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Disconnect VpnConnections from P2sVpn Gateway": { + "$ref": "./examples/P2sVpnGatewaysDisconnectP2sVpnConnections.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "VirtualWanProperties": { + "properties": { + "disableVpnEncryption": { + "type": "boolean", + "description": "Vpn encryption to be disabled or not." + }, + "virtualHubs": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of VirtualHubs in the VirtualWAN." + }, + "vpnSites": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of VpnSites in the VirtualWAN." + }, + "allowBranchToBranchTraffic": { + "type": "boolean", + "description": "True if branch to branch traffic is allowed." + }, + "allowVnetToVnetTraffic": { + "type": "boolean", + "description": "True if Vnet to Vnet traffic is allowed." + }, + "office365LocalBreakoutCategory": { + "description": "The office local breakout category.", + "$ref": "#/definitions/OfficeTrafficCategory" + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual WAN resource." + }, + "type": { + "type": "string", + "description": "The type of the VirtualWAN." + } + }, + "description": "Parameters for VirtualWAN." + }, + "VirtualWAN": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualWanProperties", + "description": "Properties of the virtual WAN." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VirtualWAN Resource." + }, + "ListVirtualWANsResult": { + "description": "Result of the request to list VirtualWANs. It contains a list of VirtualWANs and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualWAN" + }, + "description": "List of VirtualWANs." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnSiteProperties": { + "properties": { + "virtualWan": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualWAN to which the vpnSite belongs." + }, + "deviceProperties": { + "description": "The device properties.", + "$ref": "#/definitions/DeviceProperties" + }, + "ipAddress": { + "type": "string", + "description": "The ip-address for the vpn-site." + }, + "siteKey": { + "type": "string", + "description": "The key for vpn-site that can be used for connections." + }, + "addressSpace": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The AddressSpace that contains an array of IP address ranges." + }, + "bgpProperties": { + "$ref": "./virtualNetworkGateway.json#/definitions/BgpSettings", + "description": "The set of bgp properties." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN site resource." + }, + "isSecuritySite": { + "type": "boolean", + "description": "IsSecuritySite flag." + }, + "vpnSiteLinks": { + "type": "array", + "description": "List of all vpn site links.", + "items": { + "$ref": "#/definitions/VpnSiteLink" + } + } + }, + "description": "Parameters for VpnSite." + }, + "VpnSite": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnSiteProperties", + "description": "Properties of the VPN site." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VpnSite Resource." + }, + "ListVpnSitesResult": { + "description": "Result of the request to list VpnSites. It contains a list of VpnSites and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnSite" + }, + "description": "List of VpnSites." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnSiteLinkProperties": { + "properties": { + "linkProperties": { + "description": "The link provider properties.", + "$ref": "#/definitions/VpnLinkProviderProperties" + }, + "ipAddress": { + "type": "string", + "description": "The ip-address for the vpn-site-link." + }, + "fqdn": { + "type": "string", + "description": "FQDN of vpn-site-link." + }, + "bgpProperties": { + "$ref": "#/definitions/VpnLinkBgpSettings", + "description": "The set of bgp properties." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN site link resource." + } + }, + "description": "Parameters for VpnSite." + }, + "VpnSiteLink": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnSiteLinkProperties", + "description": "Properties of the VPN site link." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VpnSiteLink Resource." + }, + "ListVpnSiteLinksResult": { + "description": "Result of the request to list VpnSiteLinks. It contains a list of VpnSiteLinks and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnSiteLink" + }, + "description": "List of VpnSitesLinks." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "GetVpnSitesConfigurationRequest": { + "properties": { + "vpnSites": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of resource-ids of the vpn-sites for which config is to be downloaded." + }, + "outputBlobSasUrl": { + "type": "string", + "description": "The sas-url to download the configurations for vpn-sites." + } + }, + "required": [ + "outputBlobSasUrl" + ], + "description": "List of Vpn-Sites." + }, + "VirtualHubProperties": { + "properties": { + "virtualWan": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualWAN to which the VirtualHub belongs." + }, + "vpnGateway": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VpnGateway associated with this VirtualHub." + }, + "p2SVpnGateway": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The P2SVpnGateway associated with this VirtualHub." + }, + "expressRouteGateway": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The expressRouteGateway associated with this VirtualHub." + }, + "azureFirewall": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The azureFirewall associated with this VirtualHub." + }, + "virtualNetworkConnections": { + "type": "array", + "description": "List of all vnet connections with this VirtualHub.", + "items": { + "$ref": "#/definitions/HubVirtualNetworkConnection" + } + }, + "addressPrefix": { + "type": "string", + "description": "Address-prefix for this VirtualHub." + }, + "routeTable": { + "$ref": "#/definitions/VirtualHubRouteTable", + "description": "The routeTable associated with this virtual hub." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual hub resource." + }, + "securityProviderName": { + "type": "string", + "description": "The Security Provider name." + }, + "virtualHubRouteTableV2s": { + "type": "array", + "description": "List of all virtual hub route table v2s associated with this VirtualHub.", + "items": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + } + }, + "sku": { + "type": "string", + "description": "The sku of this VirtualHub." + } + }, + "description": "Parameters for VirtualHub." + }, + "VirtualHubRouteTable": { + "properties": { + "routes": { + "type": "array", + "description": "List of all routes.", + "items": { + "$ref": "#/definitions/VirtualHubRoute" + } + } + }, + "description": "VirtualHub route table." + }, + "VirtualHubRoute": { + "properties": { + "addressPrefixes": { + "type": "array", + "description": "List of all addressPrefixes.", + "items": { + "type": "string" + } + }, + "nextHopIpAddress": { + "type": "string", + "description": "NextHop ip address." + } + }, + "description": "VirtualHub route." + }, + "VirtualHub": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualHubProperties", + "description": "Properties of the virtual hub." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VirtualHub Resource." + }, + "ListVirtualHubsResult": { + "description": "Result of the request to list VirtualHubs. It contains a list of VirtualHubs and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualHub" + }, + "description": "List of VirtualHubs." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnGatewayProperties": { + "properties": { + "virtualHub": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualHub to which the gateway belongs." + }, + "connections": { + "type": "array", + "description": "List of all vpn connections to the gateway.", + "items": { + "$ref": "#/definitions/VpnConnection" + } + }, + "bgpSettings": { + "$ref": "./virtualNetworkGateway.json#/definitions/BgpSettings", + "description": "Local network gateway's BGP speaker settings." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN gateway resource." + }, + "vpnGatewayScaleUnit": { + "type": "integer", + "format": "int32", + "description": "The scale unit for this vpn gateway." + } + }, + "description": "Parameters for VpnGateway." + }, + "VpnGateway": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnGatewayProperties", + "description": "Properties of the VPN gateway." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VpnGateway Resource." + }, + "ListVpnGatewaysResult": { + "description": "Result of the request to list VpnGateways. It contains a list of VpnGateways and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnGateway" + }, + "description": "List of VpnGateways." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnConnectionProperties": { + "properties": { + "remoteVpnSite": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Id of the connected vpn site." + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "Routing weight for vpn connection." + }, + "connectionStatus": { + "description": "The connection status.", + "$ref": "#/definitions/VpnConnectionStatus" + }, + "vpnConnectionProtocolType": { + "description": "Connection protocol used for this connection.", + "$ref": "./virtualNetworkGateway.json#/definitions/ConnectionProtocol" + }, + "ingressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Ingress bytes transferred." + }, + "egressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Egress bytes transferred." + }, + "connectionBandwidth": { + "type": "integer", + "format": "int32", + "description": "Expected bandwidth in MBPS." + }, + "sharedKey": { + "type": "string", + "description": "SharedKey for the vpn connection." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "usePolicyBasedTrafficSelectors": { + "type": "boolean", + "description": "Enable policy-based traffic selectors." + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "./virtualNetworkGateway.json#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "enableRateLimiting": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "enableInternetSecurity": { + "type": "boolean", + "description": "Enable internet security." + }, + "useLocalAzureIpAddress": { + "type": "boolean", + "description": "Use local azure ip to initiate connection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN connection resource." + }, + "vpnLinkConnections": { + "type": "array", + "description": "List of all vpn site link connections to the gateway.", + "items": { + "$ref": "#/definitions/VpnSiteLinkConnection" + } + } + }, + "description": "Parameters for VpnConnection." + }, + "VpnConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnConnectionProperties", + "description": "Properties of the VPN connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VpnConnection Resource." + }, + "ListVpnConnectionsResult": { + "description": "Result of the request to list all vpn connections to a virtual wan vpn gateway. It contains a list of Vpn Connections and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnConnection" + }, + "description": "List of Vpn Connections." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnSiteLinkConnectionProperties": { + "properties": { + "vpnSiteLink": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Id of the connected vpn site link." + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "Routing weight for vpn connection." + }, + "connectionStatus": { + "description": "The connection status.", + "$ref": "#/definitions/VpnConnectionStatus" + }, + "vpnConnectionProtocolType": { + "description": "Connection protocol used for this connection.", + "$ref": "./virtualNetworkGateway.json#/definitions/ConnectionProtocol" + }, + "ingressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Ingress bytes transferred." + }, + "egressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Egress bytes transferred." + }, + "connectionBandwidth": { + "type": "integer", + "format": "int32", + "description": "Expected bandwidth in MBPS." + }, + "sharedKey": { + "type": "string", + "description": "SharedKey for the vpn connection." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "usePolicyBasedTrafficSelectors": { + "type": "boolean", + "description": "Enable policy-based traffic selectors." + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "./virtualNetworkGateway.json#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "enableRateLimiting": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "useLocalAzureIpAddress": { + "type": "boolean", + "description": "Use local azure ip to initiate connection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN site link connection resource." + } + }, + "description": "Parameters for VpnConnection." + }, + "VpnSiteLinkConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnSiteLinkConnectionProperties", + "description": "Properties of the VPN site link connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VpnSiteLinkConnection Resource." + }, + "ListVpnSiteLinkConnectionsResult": { + "description": "Result of the request to list all vpn connections to a virtual wan vpn gateway. It contains a list of Vpn Connections and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnSiteLinkConnection" + }, + "description": "List of VpnSiteLinkConnections." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "HubVirtualNetworkConnectionProperties": { + "properties": { + "remoteVirtualNetwork": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the remote virtual network." + }, + "allowHubToRemoteVnetTransit": { + "type": "boolean", + "description": "VirtualHub to RemoteVnet transit to enabled or not." + }, + "allowRemoteVnetToUseHubVnetGateways": { + "type": "boolean", + "description": "Allow RemoteVnet to use Virtual Hub's gateways." + }, + "enableInternetSecurity": { + "type": "boolean", + "description": "Enable internet security." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the hub virtual network connection resource." + } + }, + "description": "Parameters for HubVirtualNetworkConnection." + }, + "HubVirtualNetworkConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/HubVirtualNetworkConnectionProperties", + "description": "Properties of the hub virtual network connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "HubVirtualNetworkConnection Resource." + }, + "ListHubVirtualNetworkConnectionsResult": { + "description": "List of HubVirtualNetworkConnections and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/HubVirtualNetworkConnection" + }, + "description": "List of HubVirtualNetworkConnections." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnSiteId": { + "properties": { + "vpnSite": { + "type": "string", + "readOnly": true, + "description": "The resource-uri of the vpn-site for which config is to be fetched." + } + }, + "description": "VpnSite Resource." + }, + "DeviceProperties": { + "properties": { + "deviceVendor": { + "type": "string", + "description": "Name of the device Vendor." + }, + "deviceModel": { + "type": "string", + "description": "Model of the device." + }, + "linkSpeedInMbps": { + "type": "integer", + "format": "int32", + "description": "Link speed." + } + }, + "description": "List of properties of the device." + }, + "VirtualWanSecurityProviders": { + "properties": { + "supportedProviders": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualWanSecurityProvider" + }, + "description": "List of VirtualWAN security providers." + } + }, + "description": "Collection of SecurityProviders." + }, + "VirtualWanSecurityProvider": { + "properties": { + "name": { + "type": "string", + "description": "Name of the security provider." + }, + "url": { + "type": "string", + "description": "Url of the security provider." + }, + "type": { + "$ref": "#/definitions/VirtualWanSecurityProviderType", + "description": "Name of the security provider." + } + }, + "description": "Collection of SecurityProviders." + }, + "VpnConnectionStatus": { + "type": "string", + "description": "The current state of the vpn connection.", + "readOnly": true, + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "VpnConnectionStatus", + "modelAsString": true + } + }, + "TunnelConnectionStatus": { + "type": "string", + "description": "The current state of the tunnel.", + "readOnly": true, + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "TunnelConnectionStatus", + "modelAsString": true + } + }, + "HubVirtualNetworkConnectionStatus": { + "type": "string", + "description": "The current state of the VirtualHub to vnet connection.", + "readOnly": true, + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "HubVirtualNetworkConnectionStatus", + "modelAsString": true + } + }, + "OfficeTrafficCategory": { + "type": "string", + "description": "The office traffic category.", + "readOnly": true, + "enum": [ + "Optimize", + "OptimizeAndAllow", + "All", + "None" + ], + "x-ms-enum": { + "name": "OfficeTrafficCategory", + "modelAsString": true + } + }, + "VirtualWanSecurityProviderType": { + "type": "string", + "description": "The virtual wan security provider type.", + "readOnly": true, + "enum": [ + "External", + "Native" + ], + "x-ms-enum": { + "name": "VirtualWanSecurityProviderType", + "modelAsString": true + } + }, + "VpnServerConfigVpnClientRootCertificate": { + "properties": { + "name": { + "type": "string", + "description": "The certificate name." + }, + "publicCertData": { + "type": "string", + "description": "The certificate public data." + } + }, + "description": "Properties of VPN client root certificate of VpnServerConfiguration." + }, + "VpnServerConfigRadiusServerRootCertificate": { + "properties": { + "name": { + "type": "string", + "description": "The certificate name." + }, + "publicCertData": { + "type": "string", + "description": "The certificate public data." + } + }, + "description": "Properties of Radius Server root certificate of VpnServerConfiguration." + }, + "VpnServerConfigVpnClientRevokedCertificate": { + "properties": { + "name": { + "type": "string", + "description": "The certificate name." + }, + "thumbprint": { + "type": "string", + "description": "The revoked VPN client certificate thumbprint." + } + }, + "description": "Properties of the revoked VPN client certificate of VpnServerConfiguration." + }, + "VpnServerConfigRadiusClientRootCertificate": { + "properties": { + "name": { + "type": "string", + "description": "The certificate name." + }, + "thumbprint": { + "type": "string", + "description": "The Radius client root certificate thumbprint." + } + }, + "description": "Properties of the Radius client root certificate of VpnServerConfiguration." + }, + "AadAuthenticationParameters": { + "properties": { + "aadTenant": { + "type": "string", + "description": "AAD Vpn authentication parameter AAD tenant." + }, + "aadAudience": { + "type": "string", + "description": "AAD Vpn authentication parameter AAD audience." + }, + "aadIssuer": { + "type": "string", + "description": "AAD Vpn authentication parameter AAD issuer." + } + }, + "description": "AAD Vpn authentication type related parameters." + }, + "VpnServerConfigurationProperties": { + "properties": { + "name": { + "type": "string", + "description": "The name of the VpnServerConfiguration that is unique within a resource group." + }, + "vpnProtocols": { + "type": "array", + "items": { + "type": "string", + "description": "VPN protocol enabled for the VpnServerConfiguration.", + "enum": [ + "IkeV2", + "OpenVPN" + ], + "x-ms-enum": { + "name": "VpnGatewayTunnelingProtocol", + "modelAsString": true + } + }, + "description": "VPN protocols for the VpnServerConfiguration." + }, + "vpnAuthenticationTypes": { + "type": "array", + "items": { + "type": "string", + "description": "VPN authentication types enabled for the VpnServerConfiguration.", + "enum": [ + "Certificate", + "Radius", + "AAD" + ], + "x-ms-enum": { + "name": "VpnAuthenticationType", + "modelAsString": true + } + }, + "description": "VPN authentication types for the VpnServerConfiguration." + }, + "vpnClientRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfigVpnClientRootCertificate" + }, + "description": "VPN client root certificate of VpnServerConfiguration." + }, + "vpnClientRevokedCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfigVpnClientRevokedCertificate" + }, + "description": "VPN client revoked certificate of VpnServerConfiguration." + }, + "radiusServerRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfigRadiusServerRootCertificate" + }, + "description": "Radius Server root certificate of VpnServerConfiguration." + }, + "radiusClientRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfigRadiusClientRootCertificate" + }, + "description": "Radius client root certificate of VpnServerConfiguration." + }, + "vpnClientIpsecPolicies": { + "type": "array", + "items": { + "$ref": "./virtualNetworkGateway.json#/definitions/IpsecPolicy" + }, + "description": "VpnClientIpsecPolicies for VpnServerConfiguration." + }, + "radiusServerAddress": { + "type": "string", + "description": "The radius server address property of the VpnServerConfiguration resource for point to site client connection." + }, + "radiusServerSecret": { + "type": "string", + "description": "The radius secret property of the VpnServerConfiguration resource for point to site client connection." + }, + "aadAuthenticationParameters": { + "$ref": "#/definitions/AadAuthenticationParameters", + "description": "The set of aad vpn authentication parameters." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the VpnServerConfiguration resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + }, + "p2SVpnGateways": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/P2SVpnGateway" + }, + "description": "List of references to P2SVpnGateways." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "description": "Parameters for VpnServerConfiguration." + }, + "VpnServerConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnServerConfigurationProperties", + "description": "Properties of the P2SVpnServer configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VpnServerConfiguration Resource." + }, + "ListVpnServerConfigurationsResult": { + "description": "Result of the request to list all VpnServerConfigurations. It contains a list of VpnServerConfigurations and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfiguration" + }, + "description": "List of VpnServerConfigurations." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnClientConnectionHealth": { + "properties": { + "totalIngressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "Total of the Ingress Bytes Transferred in this P2S Vpn connection." + }, + "totalEgressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "Total of the Egress Bytes Transferred in this connection." + }, + "vpnClientConnectionsCount": { + "type": "integer", + "format": "int32", + "description": "The total of p2s vpn clients connected at this time to this P2SVpnGateway." + }, + "allocatedIpAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of allocated ip addresses to the connected p2s vpn clients." + } + }, + "description": "VpnClientConnectionHealth properties." + }, + "P2SVpnGatewayProperties": { + "properties": { + "virtualHub": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualHub to which the gateway belongs." + }, + "p2SConnectionConfigurations": { + "type": "array", + "description": "List of all p2s connection configurations of the gateway.", + "items": { + "$ref": "#/definitions/P2SConnectionConfiguration" + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the P2S VPN gateway resource." + }, + "vpnGatewayScaleUnit": { + "type": "integer", + "format": "int32", + "description": "The scale unit for this p2s vpn gateway." + }, + "vpnServerConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VpnServerConfiguration to which the p2sVpnGateway is attached to." + }, + "vpnClientConnectionHealth": { + "readOnly": true, + "$ref": "#/definitions/VpnClientConnectionHealth", + "description": "All P2S VPN clients' connection health status." + } + }, + "description": "Parameters for P2SVpnGateway." + }, + "P2SVpnGateway": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/P2SVpnGatewayProperties", + "description": "Properties of the P2SVpnGateway." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "P2SVpnGateway Resource." + }, + "ListP2SVpnGatewaysResult": { + "description": "Result of the request to list P2SVpnGateways. It contains a list of P2SVpnGateways and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/P2SVpnGateway" + }, + "description": "List of P2SVpnGateways." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "P2SVpnProfileParameters": { + "properties": { + "authenticationMethod": { + "$ref": "./network.json#/definitions/AuthenticationMethod", + "description": "VPN client authentication method." + } + }, + "description": "Vpn Client Parameters for package generation." + }, + "VpnProfileResponse": { + "properties": { + "profileUrl": { + "type": "string", + "description": "URL to the VPN profile." + } + }, + "description": "Vpn Profile Response for package generation." + }, + "VpnLinkBgpSettings": { + "properties": { + "asn": { + "type": "integer", + "format": "int64", + "description": "The BGP speaker's ASN." + }, + "bgpPeeringAddress": { + "type": "string", + "description": "The BGP peering address and BGP identifier of this BGP speaker." + } + }, + "description": "BGP settings details for a link." + }, + "VpnLinkProviderProperties": { + "properties": { + "linkProviderName": { + "type": "string", + "description": "Name of the link provider." + }, + "linkSpeedInMbps": { + "type": "integer", + "format": "int32", + "description": "Link speed." + } + }, + "description": "List of properties of a link provider." + }, + "VpnServerConfigurationsResponse": { + "properties": { + "vpnServerConfigurationResourceIds": { + "type": "array", + "items": { + "type": "string", + "description": "VpnServerConfiguration partial resource uri." + }, + "description": "List of VpnServerConfigurations associated with VirtualWan." + } + }, + "description": "VpnServerConfigurations list associated with VirtualWan Response." + }, + "VirtualWanVpnProfileParameters": { + "properties": { + "vpnServerConfigurationResourceId": { + "type": "string", + "description": "VpnServerConfiguration partial resource uri with which VirtualWan is associated to." + }, + "authenticationMethod": { + "$ref": "./network.json#/definitions/AuthenticationMethod", + "description": "VPN client authentication method." + } + }, + "description": "Virtual Wan Vpn profile parameters Vpn profile generation." + }, + "P2SVpnConnectionHealthRequest": { + "properties": { + "vpnUserNamesFilter": { + "type": "array", + "items": { + "type": "string", + "description": "P2S vpn user name." + }, + "description": "The list of p2s vpn user names whose p2s vpn connection detailed health to retrieve for." + }, + "outputBlobSasUrl": { + "type": "string", + "description": "The sas-url to download the P2S Vpn connection health detail." + } + }, + "description": "List of P2S Vpn connection health request." + }, + "P2SVpnConnectionHealth": { + "properties": { + "sasUrl": { + "type": "string", + "description": "Returned sas url of the blob to which the p2s vpn connection detailed health will be written." + } + }, + "description": "P2S Vpn connection detailed health written to sas url." + }, + "P2SConnectionConfigurationProperties": { + "properties": { + "vpnClientAddressPool": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The reference to the address space resource which represents Address space for P2S VpnClient." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the P2SConnectionConfiguration resource." + } + }, + "description": "Parameters for P2SConnectionConfiguration." + }, + "P2SConnectionConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/P2SConnectionConfigurationProperties", + "description": "Properties of the P2S connection configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "P2SConnectionConfiguration Resource." + }, + "VirtualHubRouteTableV2Properties": { + "properties": { + "routes": { + "type": "array", + "description": "List of all routes.", + "items": { + "$ref": "#/definitions/VirtualHubRouteV2" + } + }, + "attachedConnections": { + "type": "array", + "description": "List of all connections attached to this route table v2.", + "items": { + "type": "string" + } + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "readOnly": true, + "description": "The provisioning state of the virtual hub route table v2 resource." + } + }, + "description": "Parameters for VirtualHubRouteTableV2." + }, + "VirtualHubRouteTableV2": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualHubRouteTableV2Properties", + "description": "Properties of the virtual hub route table v2." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VirtualHubRouteTableV2 Resource." + }, + "VirtualHubRouteV2": { + "properties": { + "destinationType": { + "type": "string", + "description": "The type of destinations." + }, + "destinations": { + "type": "array", + "description": "List of all destinations.", + "items": { + "type": "string" + } + }, + "nextHopType": { + "type": "string", + "description": "The type of next hops." + }, + "nextHops": { + "type": "array", + "description": "NextHops ip address.", + "items": { + "type": "string" + } + } + }, + "description": "VirtualHubRouteTableV2 route." + }, + "ListVirtualHubRouteTableV2sResult": { + "description": "List of VirtualHubRouteTableV2s and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + }, + "description": "List of VirtualHubRouteTableV2s." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "P2SVpnConnectionRequest": { + "description": "List of p2s vpn connections to be disconnected.", + "properties": { + "vpnConnectionIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of p2s vpn connection Ids." + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/vmssNetworkInterface.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/vmssNetworkInterface.json new file mode 100644 index 000000000000..89562aa3062c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/vmssNetworkInterface.json @@ -0,0 +1,374 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-10-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListVirtualMachineScaleSetVMNetworkInterfaces", + "description": "Gets information about all network interfaces in a virtual machine in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual machine scale set vm network interfaces": { + "$ref": "./examples/VmssVmNetworkInterfaceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListVirtualMachineScaleSetNetworkInterfaces", + "description": "Gets all network interfaces in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual machine scale set network interfaces": { + "$ref": "./examples/VmssNetworkInterfaceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_GetVirtualMachineScaleSetNetworkInterface", + "description": "Get the specified network interface in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get virtual machine scale set network interface": { + "$ref": "./examples/VmssNetworkInterfaceGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipConfigurations": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListVirtualMachineScaleSetIpConfigurations", + "description": "Get the specified network interface ip configuration in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the list of resulting NetworkInterfaceIPConfigurations resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual machine scale set network interface ip configurations": { + "$ref": "./examples/VmssNetworkInterfaceIpConfigList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipConfigurations/{ipConfigurationName}": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_GetVirtualMachineScaleSetIpConfiguration", + "description": "Get the specified network interface ip configuration in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ip configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterfaceIPConfiguration resource.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get virtual machine scale set network interface": { + "$ref": "./examples/VmssNetworkInterfaceIpConfigGet.json" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/vmssPublicIpAddress.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/vmssPublicIpAddress.json new file mode 100644 index 000000000000..d100152e7711 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/vmssPublicIpAddress.json @@ -0,0 +1,241 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-10-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/publicipaddresses": { + "get": { + "operationId": "PublicIPAddresses_ListVirtualMachineScaleSetPublicIPAddresses", + "description": "Gets information about all public IP addresses on a virtual machine scale set level.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPInterface resources.", + "schema": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddressListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVMSSPublicIP": { + "$ref": "./examples/VmssPublicIpListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipconfigurations/{ipConfigurationName}/publicipaddresses": { + "get": { + "operationId": "PublicIPAddresses_ListVirtualMachineScaleSetVMPublicIPAddresses", + "description": "Gets information about all public IP addresses in a virtual machine IP configuration in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The network interface name." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The IP configuration name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPAddress resources.", + "schema": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddressListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVMSSVMPublicIP": { + "$ref": "./examples/VmssVmPublicIpList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipconfigurations/{ipConfigurationName}/publicipaddresses/{publicIpAddressName}": { + "get": { + "operationId": "PublicIPAddresses_GetVirtualMachineScaleSetPublicIPAddress", + "description": "Get the specified public IP address in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the IP configuration." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP Address." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "x-ms-examples": { + "GetVMSSPublicIP": { + "$ref": "./examples/VmssPublicIpGet.json" + } + }, + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/webapplicationfirewall.json b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/webapplicationfirewall.json new file mode 100644 index 000000000000..5196a5c225db --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2019-12-01/webapplicationfirewall.json @@ -0,0 +1,743 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-12-01", + "title": "WebApplicationFirewallManagement", + "description": "APIs to manage web application firewall rules." + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies": { + "get": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Lists all of the protection policies within a resource group.", + "operationId": "WebApplicationFirewallPolicies_List", + "x-ms-examples": { + "Lists all WAF policies in a resource group": { + "$ref": "./examples/WafListPolicies.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies": { + "get": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Gets all the WAF policies in a subscription.", + "operationId": "WebApplicationFirewallPolicies_ListAll", + "x-ms-examples": { + "Lists all WAF policies in a subscription": { + "$ref": "./examples/WafListAllPolicies.json" + } + }, + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/{policyName}": { + "get": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Retrieve protection policy with specified name within a resource group.", + "operationId": "WebApplicationFirewallPolicies_Get", + "x-ms-examples": { + "Gets a WAF policy within a resource group": { + "$ref": "./examples/WafPolicyGet.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "policyName", + "in": "path", + "required": true, + "type": "string", + "maxLength": 128, + "description": "The name of the policy." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Creates or update policy with specified rule set name within a resource group.", + "operationId": "WebApplicationFirewallPolicies_CreateOrUpdate", + "x-ms-examples": { + "Creates or updates a WAF policy within a resource group": { + "$ref": "./examples/WafPolicyCreateOrUpdate.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "policyName", + "in": "path", + "required": true, + "type": "string", + "maxLength": 128, + "description": "The name of the policy." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "description": "Policy to be created.", + "in": "body", + "name": "parameters", + "required": true, + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicy" + } + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicy" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new protection policy has been created.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Deletes Policy.", + "operationId": "WebApplicationFirewallPolicies_Delete", + "x-ms-examples": { + "Deletes a WAF policy within a resource group": { + "$ref": "./examples/WafPolicyDelete.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "policyName", + "in": "path", + "required": true, + "type": "string", + "maxLength": 128, + "description": "The name of the policy." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously." + }, + "204": { + "description": "No Content. The request has been accepted but the policy was not found." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "WebApplicationFirewallPolicy": { + "description": "Defines web application firewall policy.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/WebApplicationFirewallPolicyPropertiesFormat", + "description": "Properties of the web application firewall policy." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "WebApplicationFirewallPolicyPropertiesFormat": { + "description": "Defines web application firewall policy properties.", + "required": [ + "managedRules" + ], + "properties": { + "policySettings": { + "description": "The PolicySettings for policy.", + "$ref": "#/definitions/PolicySettings" + }, + "customRules": { + "description": "The custom rules inside the policy.", + "type": "array", + "items": { + "$ref": "#/definitions/WebApplicationFirewallCustomRule" + } + }, + "applicationGateways": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./applicationGateway.json#/definitions/ApplicationGateway" + }, + "description": "A collection of references to application gateways." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the web application firewall policy resource." + }, + "resourceState": { + "title": "Resource status of the policy.", + "readOnly": true, + "type": "string", + "description": "Resource status of the policy.", + "enum": [ + "Creating", + "Enabling", + "Enabled", + "Disabling", + "Disabled", + "Deleting" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallPolicyResourceState", + "modelAsString": true + } + }, + "managedRules": { + "description": "Describes the managedRules structure.", + "$ref": "#/definitions/ManagedRulesDefinition" + }, + "httpListeners": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "A collection of references to application gateway http listeners." + }, + "pathBasedRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "A collection of references to application gateway path rules." + } + } + }, + "WebApplicationFirewallPolicyListResult": { + "description": "Result of the request to list WebApplicationFirewallPolicies. It contains a list of WebApplicationFirewallPolicy objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/WebApplicationFirewallPolicy" + }, + "description": "List of WebApplicationFirewallPolicies within a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "URL to get the next set of WebApplicationFirewallPolicy objects if there are any." + } + } + }, + "ManagedRulesDefinition": { + "description": "Allow to exclude some variable satisfy the condition for the WAF check.", + "required": [ + "managedRuleSets" + ], + "properties": { + "exclusions": { + "type": "array", + "items": { + "$ref": "#/definitions/OwaspCrsExclusionEntry" + }, + "description": "The Exclusions that are applied on the policy." + }, + "managedRuleSets": { + "type": "array", + "items": { + "$ref": "#/definitions/ManagedRuleSet" + }, + "description": "The managed rule sets that are associated with the policy." + } + } + }, + "PolicySettings": { + "description": "Defines contents of a web application firewall global configuration.", + "properties": { + "state": { + "description": "The state of the policy.", + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallEnabledState", + "modelAsString": true + } + }, + "mode": { + "description": "The mode of the policy.", + "type": "string", + "enum": [ + "Prevention", + "Detection" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallMode", + "modelAsString": true + } + }, + "requestBodyCheck": { + "type": "boolean", + "description": "Whether to allow WAF to check request Body." + }, + "maxRequestBodySizeInKb": { + "type": "integer", + "format": "int32", + "maximum": 128, + "exclusiveMaximum": false, + "minimum": 8, + "exclusiveMinimum": false, + "description": "Maximum request body size in Kb for WAF." + }, + "fileUploadLimitInMb": { + "type": "integer", + "format": "int32", + "minimum": 0, + "exclusiveMinimum": false, + "description": "Maximum file upload size in Mb for WAF." + } + } + }, + "WebApplicationFirewallCustomRule": { + "description": "Defines contents of a web application rule.", + "required": [ + "priority", + "ruleType", + "matchConditions", + "action" + ], + "properties": { + "name": { + "type": "string", + "description": "The name of the resource that is unique within a policy. This name can be used to access the resource.", + "maxLength": 128 + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "priority": { + "description": "Priority of the rule. Rules with a lower value will be evaluated before rules with a higher value.", + "type": "integer" + }, + "ruleType": { + "description": "The rule type.", + "type": "string", + "enum": [ + "MatchRule", + "Invalid" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallRuleType", + "modelAsString": true + } + }, + "matchConditions": { + "description": "List of match conditions.", + "type": "array", + "items": { + "$ref": "#/definitions/MatchCondition" + } + }, + "action": { + "description": "Type of Actions.", + "type": "string", + "enum": [ + "Allow", + "Block", + "Log" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallAction", + "modelAsString": true + } + } + } + }, + "Transform": { + "description": "Transforms applied before matching.", + "type": "string", + "enum": [ + "Lowercase", + "Trim", + "UrlDecode", + "UrlEncode", + "RemoveNulls", + "HtmlEntityDecode" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallTransform", + "modelAsString": true + } + }, + "MatchVariable": { + "description": "Define match variables.", + "required": [ + "variableName" + ], + "properties": { + "variableName": { + "description": "Match Variable.", + "type": "string", + "enum": [ + "RemoteAddr", + "RequestMethod", + "QueryString", + "PostArgs", + "RequestUri", + "RequestHeaders", + "RequestBody", + "RequestCookies" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallMatchVariable", + "modelAsString": true + } + }, + "selector": { + "description": "The selector of match variable.", + "type": "string" + } + } + }, + "MatchCondition": { + "description": "Define match conditions.", + "required": [ + "matchVariables", + "operator", + "matchValues" + ], + "properties": { + "matchVariables": { + "description": "List of match variables.", + "type": "array", + "items": { + "$ref": "#/definitions/MatchVariable" + } + }, + "operator": { + "description": "The operator to be matched.", + "type": "string", + "enum": [ + "IPMatch", + "Equal", + "Contains", + "LessThan", + "GreaterThan", + "LessThanOrEqual", + "GreaterThanOrEqual", + "BeginsWith", + "EndsWith", + "Regex", + "GeoMatch" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallOperator", + "modelAsString": true + } + }, + "negationConditon": { + "description": "Whether this is negate condition or not.", + "type": "boolean" + }, + "matchValues": { + "description": "Match value.", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms.", + "type": "array", + "items": { + "$ref": "#/definitions/Transform" + } + } + } + }, + "ManagedRuleSet": { + "type": "object", + "description": "Defines a managed rule set.", + "required": [ + "ruleSetType", + "ruleSetVersion" + ], + "properties": { + "ruleSetType": { + "description": "Defines the rule set type to use.", + "type": "string" + }, + "ruleSetVersion": { + "description": "Defines the version of the rule set to use.", + "type": "string" + }, + "ruleGroupOverrides": { + "description": "Defines the rule group overrides to apply to the rule set.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedRuleGroupOverride" + } + } + } + }, + "ManagedRuleGroupOverride": { + "description": "Defines a managed rule group override setting.", + "required": [ + "ruleGroupName" + ], + "properties": { + "ruleGroupName": { + "description": "The managed rule group to override.", + "type": "string" + }, + "rules": { + "description": "List of rules that will be disabled. If none specified, all rules in the group will be disabled.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedRuleOverride" + } + } + } + }, + "ManagedRuleOverride": { + "description": "Defines a managed rule group override setting.", + "required": [ + "ruleId" + ], + "properties": { + "ruleId": { + "description": "Identifier for the managed rule.", + "type": "string" + }, + "state": { + "description": "The state of the managed rule. Defaults to Disabled if not specified.", + "type": "string", + "enum": [ + "Disabled" + ], + "x-ms-enum": { + "name": "ManagedRuleEnabledState", + "modelAsString": true + } + } + } + }, + "OwaspCrsExclusionEntry": { + "required": [ + "matchVariable", + "selectorMatchOperator", + "selector" + ], + "description": "Allow to exclude some variable satisfy the condition for the WAF check.", + "properties": { + "matchVariable": { + "type": "string", + "enum": [ + "RequestHeaderNames", + "RequestCookieNames", + "RequestArgNames" + ], + "description": "The variable to be excluded.", + "x-ms-enum": { + "name": "OwaspCrsExclusionEntryMatchVariable", + "modelAsString": true + } + }, + "selectorMatchOperator": { + "type": "string", + "enum": [ + "Equals", + "Contains", + "StartsWith", + "EndsWith", + "EqualsAny" + ], + "description": "When matchVariable is a collection, operate on the selector to specify which elements in the collection this exclusion applies to.", + "x-ms-enum": { + "name": "OwaspCrsExclusionEntrySelectorMatchOperator", + "modelAsString": true + } + }, + "selector": { + "type": "string", + "description": "When matchVariable is a collection, operator used to specify which elements in the collection this exclusion applies to." + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/applicationGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/applicationGateway.json new file mode 100644 index 000000000000..6c1aa3a2f805 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/applicationGateway.json @@ -0,0 +1,2847 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}": { + "delete": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_Delete", + "x-ms-examples": { + "Delete ApplicationGateway": { + "$ref": "./examples/ApplicationGatewayDelete.json" + } + }, + "description": "Deletes the specified application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_Get", + "x-ms-examples": { + "Get ApplicationGateway": { + "$ref": "./examples/ApplicationGatewayGet.json" + } + }, + "description": "Gets the specified application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns an ApplicationGateway resource.", + "schema": { + "$ref": "#/definitions/ApplicationGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_CreateOrUpdate", + "description": "Creates or updates the specified application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationGateway" + }, + "description": "Parameters supplied to the create or update application gateway operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting ApplicationGateway resource.", + "schema": { + "$ref": "#/definitions/ApplicationGateway" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting ApplicationGateway resource.", + "schema": { + "$ref": "#/definitions/ApplicationGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Application Gateway": { + "$ref": "./examples/ApplicationGatewayCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_UpdateTags", + "x-ms-examples": { + "Update Application Gateway tags": { + "$ref": "./examples/ApplicationGatewayUpdateTags.json" + } + }, + "description": "Updates the specified application gateway tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update application gateway tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ApplicationGateway resource.", + "schema": { + "$ref": "#/definitions/ApplicationGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_List", + "x-ms-examples": { + "Lists all application gateways in a resource group": { + "$ref": "./examples/ApplicationGatewayList.json" + } + }, + "description": "Lists all application gateways in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of ApplicationGateway resources.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGateways": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAll", + "x-ms-examples": { + "Lists all application gateways in a subscription": { + "$ref": "./examples/ApplicationGatewayListAll.json" + } + }, + "description": "Gets all the application gateways in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of ApplicationGateway resources.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/start": { + "post": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_Start", + "x-ms-examples": { + "Start Application Gateway": { + "$ref": "./examples/ApplicationGatewayStart.json" + } + }, + "description": "Starts the specified application gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation starts the ApplicationGateway resource." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/stop": { + "post": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_Stop", + "x-ms-examples": { + "Stop Application Gateway": { + "$ref": "./examples/ApplicationGatewayStop.json" + } + }, + "description": "Stops the specified application gateway in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation stops the ApplicationGateway resource." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/backendhealth": { + "post": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_BackendHealth", + "description": "Gets the backend health of the specified application gateway in a resource group.", + "x-ms-examples": { + "Get Backend Health": { + "$ref": "./examples/ApplicationGatewayBackendHealthGet.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands BackendAddressPool and BackendHttpSettings referenced in backend health." + } + ], + "responses": { + "200": { + "description": "Request successful.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayBackendHealth" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/getBackendHealthOnDemand": { + "post": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_BackendHealthOnDemand", + "description": "Gets the backend health for given combination of backend pool and http setting of the specified application gateway in a resource group.", + "x-ms-examples": { + "Test Backend Health": { + "$ref": "./examples/ApplicationGatewayBackendHealthTest.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands BackendAddressPool and BackendHttpSettings referenced in backend health." + }, + { + "name": "probeRequest", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationGatewayOnDemandProbe" + }, + "description": "Request body for on-demand test probe operation." + } + ], + "responses": { + "200": { + "description": "Request successful.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthOnDemand" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableServerVariables": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableServerVariables", + "x-ms-examples": { + "Get Available Server Variables": { + "$ref": "./examples/ApplicationGatewayAvailableServerVariablesGet.json" + } + }, + "description": "Lists all available server variables.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of all available server variables.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableServerVariablesResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableRequestHeaders": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableRequestHeaders", + "x-ms-examples": { + "Get Available Request Headers": { + "$ref": "./examples/ApplicationGatewayAvailableRequestHeadersGet.json" + } + }, + "description": "Lists all available request headers.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of all available request headers.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableRequestHeadersResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableResponseHeaders": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableResponseHeaders", + "x-ms-examples": { + "Get Available Response Headers": { + "$ref": "./examples/ApplicationGatewayAvailableResponseHeadersGet.json" + } + }, + "description": "Lists all available response headers.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of all available response headers.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableResponseHeadersResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableWafRuleSets": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableWafRuleSets", + "x-ms-examples": { + "Get Available Waf Rule Sets": { + "$ref": "./examples/ApplicationGatewayAvailableWafRuleSetsGet.json" + } + }, + "description": "Lists all available web application firewall rule sets.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of all available web application firewall rule sets.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableWafRuleSetsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableSslOptions", + "x-ms-examples": { + "Get Available Ssl Options": { + "$ref": "./examples/ApplicationGatewayAvailableSslOptionsGet.json" + } + }, + "description": "Lists available Ssl options for configuring Ssl policy.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns all available Ssl options for configuring Ssl policy.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableSslOptions" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default/predefinedPolicies": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_ListAvailableSslPredefinedPolicies", + "x-ms-examples": { + "Get Available Ssl Predefined Policies": { + "$ref": "./examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "description": "Lists all SSL predefined policies for configuring Ssl policy.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a lists of all Ssl predefined policies for configuring Ssl policy.", + "schema": { + "$ref": "#/definitions/ApplicationGatewayAvailableSslPredefinedPolicies" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default/predefinedPolicies/{predefinedPolicyName}": { + "get": { + "tags": [ + "ApplicationGateways" + ], + "operationId": "ApplicationGateways_GetSslPredefinedPolicy", + "x-ms-examples": { + "Get Available Ssl Predefined Policy by name": { + "$ref": "./examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json" + } + }, + "description": "Gets Ssl predefined policy with the specified policy name.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "predefinedPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of Ssl predefined policy." + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a Ssl predefined policy with the specified policy name.", + "schema": { + "$ref": "#/definitions/ApplicationGatewaySslPredefinedPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "ApplicationGatewayOnDemandProbe": { + "properties": { + "protocol": { + "$ref": "#/definitions/ApplicationGatewayProtocol", + "description": "The protocol used for the probe." + }, + "host": { + "type": "string", + "description": "Host name to send the probe to." + }, + "path": { + "type": "string", + "description": "Relative path of probe. Valid path starts from '/'. Probe is sent to ://:." + }, + "timeout": { + "type": "integer", + "format": "int32", + "description": "The probe timeout in seconds. Probe marked as failed if valid response is not received with this timeout period. Acceptable values are from 1 second to 86400 seconds." + }, + "pickHostNameFromBackendHttpSettings": { + "type": "boolean", + "description": "Whether the host header should be picked from the backend http settings. Default value is false." + }, + "match": { + "$ref": "#/definitions/ApplicationGatewayProbeHealthResponseMatch", + "description": "Criterion for classifying a healthy probe response." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to backend pool of application gateway to which probe request will be sent." + }, + "backendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to backend http setting of application gateway to be used for test probe." + } + }, + "description": "Details of on demand test probe request." + }, + "ApplicationGatewayBackendHealthOnDemand": { + "properties": { + "backendAddressPool": { + "$ref": "#/definitions/ApplicationGatewayBackendAddressPool", + "description": "Reference to an ApplicationGatewayBackendAddressPool resource." + }, + "backendHealthHttpSettings": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthHttpSettings", + "description": "Application gateway BackendHealthHttp settings." + } + }, + "description": "Result of on demand test probe." + }, + "ApplicationGatewayBackendHealth": { + "properties": { + "backendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthPool" + }, + "description": "A list of ApplicationGatewayBackendHealthPool resources." + } + }, + "description": "Response for ApplicationGatewayBackendHealth API service call." + }, + "ApplicationGatewayBackendHealthPool": { + "properties": { + "backendAddressPool": { + "$ref": "#/definitions/ApplicationGatewayBackendAddressPool", + "description": "Reference to an ApplicationGatewayBackendAddressPool resource." + }, + "backendHttpSettingsCollection": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthHttpSettings" + }, + "description": "List of ApplicationGatewayBackendHealthHttpSettings resources." + } + }, + "description": "Application gateway BackendHealth pool." + }, + "ApplicationGatewayBackendHealthHttpSettings": { + "properties": { + "backendHttpSettings": { + "$ref": "#/definitions/ApplicationGatewayBackendHttpSettings", + "description": "Reference to an ApplicationGatewayBackendHttpSettings resource." + }, + "servers": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHealthServer" + }, + "description": "List of ApplicationGatewayBackendHealthServer resources." + } + }, + "description": "Application gateway BackendHealthHttp settings." + }, + "ApplicationGatewayBackendHealthServer": { + "properties": { + "address": { + "type": "string", + "description": "IP address or FQDN of backend server." + }, + "ipConfiguration": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration", + "description": "Reference to IP configuration of backend server." + }, + "health": { + "type": "string", + "description": "Health of backend server.", + "enum": [ + "Unknown", + "Up", + "Down", + "Partial", + "Draining" + ], + "x-ms-enum": { + "name": "ApplicationGatewayBackendHealthServerHealth", + "modelAsString": true + } + }, + "healthProbeLog": { + "type": "string", + "description": "Health Probe Log." + } + }, + "description": "Application gateway backendhealth http settings." + }, + "ApplicationGatewaySku": { + "properties": { + "name": { + "type": "string", + "description": "Name of an application gateway SKU.", + "enum": [ + "Standard_Small", + "Standard_Medium", + "Standard_Large", + "WAF_Medium", + "WAF_Large", + "Standard_v2", + "WAF_v2" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySkuName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "Tier of an application gateway.", + "enum": [ + "Standard", + "WAF", + "Standard_v2", + "WAF_v2" + ], + "x-ms-enum": { + "name": "ApplicationGatewayTier", + "modelAsString": true + } + }, + "capacity": { + "type": "integer", + "format": "int32", + "description": "Capacity (instance count) of an application gateway." + } + }, + "description": "SKU of an application gateway." + }, + "ApplicationGatewaySslPolicy": { + "properties": { + "disabledSslProtocols": { + "type": "array", + "description": "Ssl protocols to be disabled on application gateway.", + "items": { + "type": "string", + "$ref": "#/definitions/ProtocolsEnum" + } + }, + "policyType": { + "type": "string", + "description": "Type of Ssl Policy.", + "enum": [ + "Predefined", + "Custom" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslPolicyType", + "modelAsString": true + } + }, + "policyName": { + "$ref": "#/definitions/PolicyNameEnum", + "description": "Name of Ssl predefined policy." + }, + "cipherSuites": { + "type": "array", + "items": { + "$ref": "#/definitions/CipherSuitesEnum" + }, + "description": "Ssl cipher suites to be enabled in the specified order to application gateway." + }, + "minProtocolVersion": { + "$ref": "#/definitions/ProtocolsEnum", + "description": "Minimum version of Ssl protocol to be supported on application gateway." + } + }, + "description": "Application Gateway Ssl policy." + }, + "ApplicationGatewayIPConfigurationPropertiesFormat": { + "properties": { + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the subnet resource. A subnet from where application gateway gets its private address." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application gateway IP configuration resource." + } + }, + "description": "Properties of IP configuration of an application gateway." + }, + "ApplicationGatewayIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayIPConfigurationPropertiesFormat", + "description": "Properties of the application gateway IP configuration." + }, + "name": { + "type": "string", + "description": "Name of the IP configuration that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration of an application gateway. Currently 1 public and 1 private IP configuration is allowed." + }, + "ApplicationGatewayAuthenticationCertificatePropertiesFormat": { + "properties": { + "data": { + "type": "string", + "description": "Certificate public data." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the authentication certificate resource." + } + }, + "description": "Authentication certificates properties of an application gateway." + }, + "ApplicationGatewayAuthenticationCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayAuthenticationCertificatePropertiesFormat", + "description": "Properties of the application gateway authentication certificate." + }, + "name": { + "type": "string", + "description": "Name of the authentication certificate that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Authentication certificates of an application gateway." + }, + "ApplicationGatewayTrustedRootCertificatePropertiesFormat": { + "properties": { + "data": { + "type": "string", + "description": "Certificate public data." + }, + "keyVaultSecretId": { + "type": "string", + "description": "Secret Id of (base-64 encoded unencrypted pfx) 'Secret' or 'Certificate' object stored in KeyVault." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the trusted root certificate resource." + } + }, + "description": "Trusted Root certificates properties of an application gateway." + }, + "ApplicationGatewayTrustedRootCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayTrustedRootCertificatePropertiesFormat", + "description": "Properties of the application gateway trusted root certificate." + }, + "name": { + "type": "string", + "description": "Name of the trusted root certificate that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Trusted Root certificates of an application gateway." + }, + "ApplicationGatewaySslCertificatePropertiesFormat": { + "properties": { + "data": { + "type": "string", + "description": "Base-64 encoded pfx certificate. Only applicable in PUT Request." + }, + "password": { + "type": "string", + "description": "Password for the pfx file specified in data. Only applicable in PUT request." + }, + "publicCertData": { + "readOnly": true, + "type": "string", + "description": "Base-64 encoded Public cert data corresponding to pfx specified in data. Only applicable in GET request." + }, + "keyVaultSecretId": { + "type": "string", + "description": "Secret Id of (base-64 encoded unencrypted pfx) 'Secret' or 'Certificate' object stored in KeyVault." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the SSL certificate resource." + } + }, + "description": "Properties of SSL certificates of an application gateway." + }, + "ApplicationGatewaySslCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewaySslCertificatePropertiesFormat", + "description": "Properties of the application gateway SSL certificate." + }, + "name": { + "type": "string", + "description": "Name of the SSL certificate that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "SSL certificates of an application gateway." + }, + "ApplicationGatewayFrontendIPConfigurationPropertiesFormat": { + "properties": { + "privateIPAddress": { + "type": "string", + "description": "PrivateIPAddress of the network interface IP Configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the subnet resource." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the PublicIP resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the frontend IP configuration resource." + } + }, + "description": "Properties of Frontend IP configuration of an application gateway." + }, + "ApplicationGatewayFrontendIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayFrontendIPConfigurationPropertiesFormat", + "description": "Properties of the application gateway frontend IP configuration." + }, + "name": { + "type": "string", + "description": "Name of the frontend IP configuration that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Frontend IP configuration of an application gateway." + }, + "ApplicationGatewayFrontendPortPropertiesFormat": { + "properties": { + "port": { + "type": "integer", + "format": "int32", + "description": "Frontend port." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the frontend port resource." + } + }, + "description": "Properties of Frontend port of an application gateway." + }, + "ApplicationGatewayFrontendPort": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayFrontendPortPropertiesFormat", + "description": "Properties of the application gateway frontend port." + }, + "name": { + "type": "string", + "description": "Name of the frontend port that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Frontend port of an application gateway." + }, + "ApplicationGatewayBackendAddress": { + "properties": { + "fqdn": { + "type": "string", + "description": "Fully qualified domain name (FQDN)." + }, + "ipAddress": { + "type": "string", + "description": "IP address." + } + }, + "description": "Backend address of an application gateway." + }, + "ApplicationGatewayBackendAddressPoolPropertiesFormat": { + "properties": { + "backendIPConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "Collection of references to IPs defined in network interfaces." + }, + "backendAddresses": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendAddress" + }, + "description": "Backend addresses." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the backend address pool resource." + } + }, + "description": "Properties of Backend Address Pool of an application gateway." + }, + "ApplicationGatewayBackendAddressPool": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayBackendAddressPoolPropertiesFormat", + "description": "Properties of the application gateway backend address pool." + }, + "name": { + "type": "string", + "description": "Name of the backend address pool that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Backend Address Pool of an application gateway." + }, + "ApplicationGatewayBackendHttpSettingsPropertiesFormat": { + "properties": { + "port": { + "type": "integer", + "format": "int32", + "description": "The destination port on the backend." + }, + "protocol": { + "$ref": "#/definitions/ApplicationGatewayProtocol", + "description": "The protocol used to communicate with the backend." + }, + "cookieBasedAffinity": { + "type": "string", + "description": "Cookie based affinity.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "ApplicationGatewayCookieBasedAffinity", + "modelAsString": true + } + }, + "requestTimeout": { + "type": "integer", + "format": "int32", + "description": "Request timeout in seconds. Application Gateway will fail the request if response is not received within RequestTimeout. Acceptable values are from 1 second to 86400 seconds." + }, + "probe": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Probe resource of an application gateway." + }, + "authenticationCertificates": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Array of references to application gateway authentication certificates." + }, + "trustedRootCertificates": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Array of references to application gateway trusted root certificates." + }, + "connectionDraining": { + "$ref": "#/definitions/ApplicationGatewayConnectionDraining", + "description": "Connection draining of the backend http settings resource." + }, + "hostName": { + "type": "string", + "description": "Host header to be sent to the backend servers." + }, + "pickHostNameFromBackendAddress": { + "type": "boolean", + "description": "Whether to pick host header should be picked from the host name of the backend server. Default value is false." + }, + "affinityCookieName": { + "type": "string", + "description": "Cookie name to use for the affinity cookie." + }, + "probeEnabled": { + "type": "boolean", + "description": "Whether the probe is enabled. Default value is false." + }, + "path": { + "type": "string", + "description": "Path which should be used as a prefix for all HTTP requests. Null means no path will be prefixed. Default value is null." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the backend HTTP settings resource." + } + }, + "description": "Properties of Backend address pool settings of an application gateway." + }, + "ApplicationGatewayBackendHttpSettings": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayBackendHttpSettingsPropertiesFormat", + "description": "Properties of the application gateway backend HTTP settings." + }, + "name": { + "type": "string", + "description": "Name of the backend http settings that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Backend address pool settings of an application gateway." + }, + "ApplicationGatewayHttpListenerPropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Frontend IP configuration resource of an application gateway." + }, + "frontendPort": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Frontend port resource of an application gateway." + }, + "protocol": { + "$ref": "#/definitions/ApplicationGatewayProtocol", + "description": "Protocol of the HTTP listener." + }, + "hostName": { + "type": "string", + "description": "Host name of HTTP listener." + }, + "sslCertificate": { + "$ref": "./network.json#/definitions/SubResource", + "description": "SSL certificate resource of an application gateway." + }, + "requireServerNameIndication": { + "type": "boolean", + "description": "Applicable only if protocol is https. Enables SNI for multi-hosting." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the HTTP listener resource." + }, + "customErrorConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayCustomError" + }, + "description": "Custom error configurations of the HTTP listener." + }, + "firewallPolicy": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the FirewallPolicy resource." + }, + "hostNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of Host names for HTTP Listener that allows special wildcard characters as well." + } + }, + "description": "Properties of HTTP listener of an application gateway." + }, + "ApplicationGatewayHttpListener": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayHttpListenerPropertiesFormat", + "description": "Properties of the application gateway HTTP listener." + }, + "name": { + "type": "string", + "description": "Name of the HTTP listener that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Http listener of an application gateway." + }, + "ApplicationGatewayPathRulePropertiesFormat": { + "properties": { + "paths": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Path rules of URL path map." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Backend address pool resource of URL path map path rule." + }, + "backendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Backend http settings resource of URL path map path rule." + }, + "redirectConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Redirect configuration resource of URL path map path rule." + }, + "rewriteRuleSet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Rewrite rule set resource of URL path map path rule." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the path rule resource." + }, + "firewallPolicy": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the FirewallPolicy resource." + } + }, + "description": "Properties of path rule of an application gateway." + }, + "ApplicationGatewayPathRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayPathRulePropertiesFormat", + "description": "Properties of the application gateway path rule." + }, + "name": { + "type": "string", + "description": "Name of the path rule that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Path rule of URL path map of an application gateway." + }, + "ApplicationGatewayProbePropertiesFormat": { + "properties": { + "protocol": { + "$ref": "#/definitions/ApplicationGatewayProtocol", + "description": "The protocol used for the probe." + }, + "host": { + "type": "string", + "description": "Host name to send the probe to." + }, + "path": { + "type": "string", + "description": "Relative path of probe. Valid path starts from '/'. Probe is sent to ://:." + }, + "interval": { + "type": "integer", + "format": "int32", + "description": "The probing interval in seconds. This is the time interval between two consecutive probes. Acceptable values are from 1 second to 86400 seconds." + }, + "timeout": { + "type": "integer", + "format": "int32", + "description": "The probe timeout in seconds. Probe marked as failed if valid response is not received with this timeout period. Acceptable values are from 1 second to 86400 seconds." + }, + "unhealthyThreshold": { + "type": "integer", + "format": "int32", + "description": "The probe retry count. Backend server is marked down after consecutive probe failure count reaches UnhealthyThreshold. Acceptable values are from 1 second to 20." + }, + "pickHostNameFromBackendHttpSettings": { + "type": "boolean", + "description": "Whether the host header should be picked from the backend http settings. Default value is false." + }, + "minServers": { + "type": "integer", + "format": "int32", + "description": "Minimum number of servers that are always marked healthy. Default value is 0." + }, + "match": { + "$ref": "#/definitions/ApplicationGatewayProbeHealthResponseMatch", + "description": "Criterion for classifying a healthy probe response." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the probe resource." + }, + "port": { + "type": "integer", + "format": "int32", + "description": "Custom port which will be used for probing the backend servers. The valid value ranges from 1 to 65535. In case not set, port from http settings will be used. This property is valid for Standard_v2 and WAF_v2 only.", + "minimum": 1, + "maximum": 65535 + } + }, + "description": "Properties of probe of an application gateway." + }, + "ApplicationGatewayProbeHealthResponseMatch": { + "properties": { + "body": { + "type": "string", + "description": "Body that must be contained in the health response. Default value is empty." + }, + "statusCodes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Allowed ranges of healthy status codes. Default range of healthy status codes is 200-399." + } + }, + "description": "Application gateway probe health response match." + }, + "ApplicationGatewayProbe": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayProbePropertiesFormat", + "description": "Properties of the application gateway probe." + }, + "name": { + "type": "string", + "description": "Name of the probe that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Probe of the application gateway." + }, + "ApplicationGatewayRequestRoutingRulePropertiesFormat": { + "properties": { + "ruleType": { + "type": "string", + "description": "Rule type.", + "enum": [ + "Basic", + "PathBasedRouting" + ], + "x-ms-enum": { + "name": "ApplicationGatewayRequestRoutingRuleType", + "modelAsString": true + } + }, + "priority": { + "type": "integer", + "format": "int32", + "minimum": 1, + "exclusiveMinimum": false, + "maximum": 20000, + "exclusiveMaximum": false, + "description": "Priority of the request routing rule." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Backend address pool resource of the application gateway." + }, + "backendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Backend http settings resource of the application gateway." + }, + "httpListener": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Http listener resource of the application gateway." + }, + "urlPathMap": { + "$ref": "./network.json#/definitions/SubResource", + "description": "URL path map resource of the application gateway." + }, + "rewriteRuleSet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Rewrite Rule Set resource in Basic rule of the application gateway." + }, + "redirectConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Redirect configuration resource of the application gateway." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the request routing rule resource." + } + }, + "description": "Properties of request routing rule of the application gateway." + }, + "ApplicationGatewayRequestRoutingRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayRequestRoutingRulePropertiesFormat", + "description": "Properties of the application gateway request routing rule." + }, + "name": { + "type": "string", + "description": "Name of the request routing rule that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Request routing rule of an application gateway." + }, + "ApplicationGatewayRewriteRuleSet": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayRewriteRuleSetPropertiesFormat", + "description": "Properties of the application gateway rewrite rule set." + }, + "name": { + "type": "string", + "description": "Name of the rewrite rule set that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Rewrite rule set of an application gateway." + }, + "ApplicationGatewayRewriteRuleSetPropertiesFormat": { + "properties": { + "rewriteRules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRewriteRule" + }, + "description": "Rewrite rules in the rewrite rule set." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the rewrite rule set resource." + } + }, + "description": "Properties of rewrite rule set of the application gateway." + }, + "ApplicationGatewayRewriteRule": { + "properties": { + "name": { + "type": "string", + "description": "Name of the rewrite rule that is unique within an Application Gateway." + }, + "ruleSequence": { + "type": "integer", + "description": "Rule Sequence of the rewrite rule that determines the order of execution of a particular rule in a RewriteRuleSet." + }, + "conditions": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRewriteRuleCondition" + }, + "description": "Conditions based on which the action set execution will be evaluated." + }, + "actionSet": { + "type": "object", + "$ref": "#/definitions/ApplicationGatewayRewriteRuleActionSet", + "description": "Set of actions to be done as part of the rewrite Rule." + } + }, + "description": "Rewrite rule of an application gateway." + }, + "ApplicationGatewayRewriteRuleCondition": { + "properties": { + "variable": { + "type": "string", + "description": "The condition parameter of the RewriteRuleCondition." + }, + "pattern": { + "type": "string", + "description": "The pattern, either fixed string or regular expression, that evaluates the truthfulness of the condition." + }, + "ignoreCase": { + "type": "boolean", + "description": "Setting this paramter to truth value with force the pattern to do a case in-sensitive comparison." + }, + "negate": { + "type": "boolean", + "description": "Setting this value as truth will force to check the negation of the condition given by the user." + } + }, + "description": "Set of conditions in the Rewrite Rule in Application Gateway." + }, + "ApplicationGatewayRewriteRuleActionSet": { + "properties": { + "requestHeaderConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayHeaderConfiguration" + }, + "description": "Request Header Actions in the Action Set." + }, + "responseHeaderConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayHeaderConfiguration" + }, + "description": "Response Header Actions in the Action Set." + }, + "urlConfiguration": { + "$ref": "#/definitions/ApplicationGatewayUrlConfiguration", + "description": "Url Configuration Action in the Action Set." + } + }, + "description": "Set of actions in the Rewrite Rule in Application Gateway." + }, + "ApplicationGatewayHeaderConfiguration": { + "properties": { + "headerName": { + "type": "string", + "description": "Header name of the header configuration." + }, + "headerValue": { + "type": "string", + "description": "Header value of the header configuration." + } + }, + "description": "Header configuration of the Actions set in Application Gateway." + }, + "ApplicationGatewayUrlConfiguration": { + "properties": { + "modifiedPath": { + "type": "string", + "description": "Url path which user has provided for url rewrite. Null means no path will be updated. Default value is null." + }, + "modifiedQueryString": { + "type": "string", + "description": "Query string which user has provided for url rewrite. Null means no query string will be updated. Default value is null." + }, + "reroute": { + "type": "boolean", + "description": "If set as true, it will re-evaluate the url path map provided in path based request routing rules using modified path. Default value is false." + } + }, + "description": "Url configuration of the Actions set in Application Gateway." + }, + "ApplicationGatewayRedirectConfigurationPropertiesFormat": { + "properties": { + "redirectType": { + "type": "string", + "$ref": "#/definitions/RedirectTypeEnum", + "description": "HTTP redirection type." + }, + "targetListener": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to a listener to redirect the request to." + }, + "targetUrl": { + "type": "string", + "description": "Url to redirect the request to." + }, + "includePath": { + "type": "boolean", + "description": "Include path in the redirected url." + }, + "includeQueryString": { + "type": "boolean", + "description": "Include query string in the redirected url." + }, + "requestRoutingRules": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Request routing specifying redirect configuration." + }, + "urlPathMaps": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Url path maps specifying default redirect configuration." + }, + "pathRules": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Path rules specifying redirect configuration." + } + }, + "description": "Properties of redirect configuration of the application gateway." + }, + "ApplicationGatewayRedirectConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayRedirectConfigurationPropertiesFormat", + "description": "Properties of the application gateway redirect configuration." + }, + "name": { + "type": "string", + "description": "Name of the redirect configuration that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Redirect configuration of an application gateway." + }, + "ApplicationGatewayPropertiesFormat": { + "properties": { + "sku": { + "$ref": "#/definitions/ApplicationGatewaySku", + "description": "SKU of the application gateway resource." + }, + "sslPolicy": { + "$ref": "#/definitions/ApplicationGatewaySslPolicy", + "description": "SSL policy of the application gateway resource." + }, + "operationalState": { + "readOnly": true, + "type": "string", + "description": "Operational state of the application gateway resource.", + "enum": [ + "Stopped", + "Starting", + "Running", + "Stopping" + ], + "x-ms-enum": { + "name": "ApplicationGatewayOperationalState", + "modelAsString": true + } + }, + "gatewayIPConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayIPConfiguration" + }, + "description": "Subnets of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "authenticationCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayAuthenticationCertificate" + }, + "description": "Authentication certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "trustedRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayTrustedRootCertificate" + }, + "description": "Trusted Root certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "sslCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewaySslCertificate" + }, + "description": "SSL certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "frontendIPConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFrontendIPConfiguration" + }, + "description": "Frontend IP addresses of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "frontendPorts": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFrontendPort" + }, + "description": "Frontend ports of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "probes": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayProbe" + }, + "description": "Probes of the application gateway resource." + }, + "backendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendAddressPool" + }, + "description": "Backend address pool of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "backendHttpSettingsCollection": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayBackendHttpSettings" + }, + "description": "Backend http settings of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "httpListeners": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayHttpListener" + }, + "description": "Http listeners of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "urlPathMaps": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayUrlPathMap" + }, + "description": "URL path map of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "requestRoutingRules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRequestRoutingRule" + }, + "description": "Request routing rules of the application gateway resource." + }, + "rewriteRuleSets": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRewriteRuleSet" + }, + "description": "Rewrite rules for the application gateway resource." + }, + "redirectConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayRedirectConfiguration" + }, + "description": "Redirect configurations of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits)." + }, + "webApplicationFirewallConfiguration": { + "$ref": "#/definitions/ApplicationGatewayWebApplicationFirewallConfiguration", + "description": "Web application firewall configuration." + }, + "firewallPolicy": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the FirewallPolicy resource." + }, + "enableHttp2": { + "type": "boolean", + "description": "Whether HTTP2 is enabled on the application gateway resource." + }, + "enableFips": { + "type": "boolean", + "description": "Whether FIPS is enabled on the application gateway resource." + }, + "autoscaleConfiguration": { + "$ref": "#/definitions/ApplicationGatewayAutoscaleConfiguration", + "description": "Autoscale Configuration." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the application gateway resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application gateway resource." + }, + "customErrorConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayCustomError" + }, + "description": "Custom error configurations of the application gateway resource." + }, + "forceFirewallPolicyAssociation": { + "type": "boolean", + "description": "If true, associates a firewall policy with an application gateway regardless whether the policy differs from the WAF Config." + } + }, + "description": "Properties of the application gateway." + }, + "ApplicationGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayPropertiesFormat", + "description": "Properties of the application gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting where the resource needs to come from." + }, + "identity": { + "$ref": "./network.json#/definitions/ManagedServiceIdentity", + "description": "The identity of the application gateway, if configured." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Application gateway resource." + }, + "ApplicationGatewayListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGateway" + }, + "description": "List of an application gateways in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListApplicationGateways API service call." + }, + "ApplicationGatewayUrlPathMapPropertiesFormat": { + "properties": { + "defaultBackendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Default backend address pool resource of URL path map." + }, + "defaultBackendHttpSettings": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Default backend http settings resource of URL path map." + }, + "defaultRewriteRuleSet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Default Rewrite rule set resource of URL path map." + }, + "defaultRedirectConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Default redirect configuration resource of URL path map." + }, + "pathRules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayPathRule" + }, + "description": "Path rule of URL path map resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the URL path map resource." + } + }, + "description": "Properties of UrlPathMap of the application gateway." + }, + "ApplicationGatewayUrlPathMap": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayUrlPathMapPropertiesFormat", + "description": "Properties of the application gateway URL path map." + }, + "name": { + "type": "string", + "description": "Name of the URL path map that is unique within an Application Gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "UrlPathMaps give a url path to the backend mapping information for PathBasedRouting." + }, + "ApplicationGatewayWebApplicationFirewallConfiguration": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether the web application firewall is enabled or not." + }, + "firewallMode": { + "type": "string", + "description": "Web application firewall mode.", + "enum": [ + "Detection", + "Prevention" + ], + "x-ms-enum": { + "name": "ApplicationGatewayFirewallMode", + "modelAsString": true + } + }, + "ruleSetType": { + "type": "string", + "description": "The type of the web application firewall rule set. Possible values are: 'OWASP'." + }, + "ruleSetVersion": { + "type": "string", + "description": "The version of the rule set type." + }, + "disabledRuleGroups": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallDisabledRuleGroup" + }, + "description": "The disabled rule groups." + }, + "requestBodyCheck": { + "type": "boolean", + "description": "Whether allow WAF to check request Body." + }, + "maxRequestBodySize": { + "type": "integer", + "format": "int32", + "maximum": 128, + "exclusiveMaximum": false, + "minimum": 8, + "exclusiveMinimum": false, + "description": "Maximum request body size for WAF." + }, + "maxRequestBodySizeInKb": { + "type": "integer", + "format": "int32", + "maximum": 128, + "exclusiveMaximum": false, + "minimum": 8, + "exclusiveMinimum": false, + "description": "Maximum request body size in Kb for WAF." + }, + "fileUploadLimitInMb": { + "type": "integer", + "format": "int32", + "minimum": 0, + "exclusiveMinimum": false, + "description": "Maximum file upload size in Mb for WAF." + }, + "exclusions": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallExclusion" + }, + "description": "The exclusion list." + } + }, + "required": [ + "enabled", + "firewallMode", + "ruleSetType", + "ruleSetVersion" + ], + "description": "Application gateway web application firewall configuration." + }, + "ApplicationGatewayAutoscaleConfiguration": { + "properties": { + "minCapacity": { + "type": "integer", + "format": "int32", + "minimum": 0, + "exclusiveMinimum": false, + "description": "Lower bound on number of Application Gateway capacity." + }, + "maxCapacity": { + "type": "integer", + "format": "int32", + "minimum": 2, + "exclusiveMinimum": false, + "description": "Upper bound on number of Application Gateway capacity." + } + }, + "required": [ + "minCapacity" + ], + "description": "Application Gateway autoscale configuration." + }, + "ApplicationGatewayConnectionDraining": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether connection draining is enabled or not." + }, + "drainTimeoutInSec": { + "type": "integer", + "format": "int32", + "maximum": 3600, + "exclusiveMaximum": false, + "minimum": 1, + "exclusiveMinimum": false, + "description": "The number of seconds connection draining is active. Acceptable values are from 1 second to 3600 seconds." + } + }, + "required": [ + "enabled", + "drainTimeoutInSec" + ], + "description": "Connection draining allows open connections to a backend server to be active for a specified time after the backend server got removed from the configuration." + }, + "ApplicationGatewayFirewallDisabledRuleGroup": { + "properties": { + "ruleGroupName": { + "type": "string", + "description": "The name of the rule group that will be disabled." + }, + "rules": { + "type": "array", + "items": { + "type": "integer", + "format": "int32", + "x-nullable": false + }, + "description": "The list of rules that will be disabled. If null, all rules of the rule group will be disabled." + } + }, + "required": [ + "ruleGroupName" + ], + "description": "Allows to disable rules within a rule group or an entire rule group." + }, + "ApplicationGatewayAvailableServerVariablesResult": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Response for ApplicationGatewayAvailableServerVariables API service call." + }, + "ApplicationGatewayAvailableRequestHeadersResult": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Response for ApplicationGatewayAvailableRequestHeaders API service call." + }, + "ApplicationGatewayAvailableResponseHeadersResult": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Response for ApplicationGatewayAvailableResponseHeaders API service call." + }, + "ApplicationGatewayFirewallExclusion": { + "properties": { + "matchVariable": { + "type": "string", + "description": "The variable to be excluded." + }, + "selectorMatchOperator": { + "type": "string", + "description": "When matchVariable is a collection, operate on the selector to specify which elements in the collection this exclusion applies to." + }, + "selector": { + "type": "string", + "description": "When matchVariable is a collection, operator used to specify which elements in the collection this exclusion applies to." + } + }, + "required": [ + "matchVariable", + "selectorMatchOperator", + "selector" + ], + "description": "Allow to exclude some variable satisfy the condition for the WAF check." + }, + "ApplicationGatewayAvailableWafRuleSetsResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallRuleSet" + }, + "description": "The list of application gateway rule sets." + } + }, + "description": "Response for ApplicationGatewayAvailableWafRuleSets API service call." + }, + "ApplicationGatewayFirewallRuleSet": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayFirewallRuleSetPropertiesFormat", + "description": "Properties of the application gateway firewall rule set." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "A web application firewall rule set." + }, + "ApplicationGatewayFirewallRuleSetPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the web application firewall rule set." + }, + "ruleSetType": { + "type": "string", + "description": "The type of the web application firewall rule set." + }, + "ruleSetVersion": { + "type": "string", + "description": "The version of the web application firewall rule set type." + }, + "ruleGroups": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallRuleGroup" + }, + "description": "The rule groups of the web application firewall rule set." + } + }, + "required": [ + "ruleSetType", + "ruleSetVersion", + "ruleGroups" + ], + "description": "Properties of the web application firewall rule set." + }, + "ApplicationGatewayFirewallRuleGroup": { + "properties": { + "ruleGroupName": { + "type": "string", + "description": "The name of the web application firewall rule group." + }, + "description": { + "type": "string", + "description": "The description of the web application firewall rule group." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewayFirewallRule" + }, + "description": "The rules of the web application firewall rule group." + } + }, + "required": [ + "ruleGroupName", + "rules" + ], + "description": "A web application firewall rule group." + }, + "ApplicationGatewayFirewallRule": { + "properties": { + "ruleId": { + "type": "integer", + "format": "int32", + "description": "The identifier of the web application firewall rule." + }, + "description": { + "type": "string", + "description": "The description of the web application firewall rule." + } + }, + "required": [ + "ruleId" + ], + "description": "A web application firewall rule." + }, + "ApplicationGatewayAvailableSslOptions": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewayAvailableSslOptionsPropertiesFormat", + "description": "Properties of the application gateway available SSL options." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Response for ApplicationGatewayAvailableSslOptions API service call." + }, + "ApplicationGatewayAvailableSslOptionsPropertiesFormat": { + "properties": { + "predefinedPolicies": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of available Ssl predefined policy." + }, + "defaultPolicy": { + "$ref": "#/definitions/PolicyNameEnum", + "description": "Name of the Ssl predefined policy applied by default to application gateway." + }, + "availableCipherSuites": { + "type": "array", + "items": { + "$ref": "#/definitions/CipherSuitesEnum" + }, + "description": "List of available Ssl cipher suites." + }, + "availableProtocols": { + "type": "array", + "items": { + "$ref": "#/definitions/ProtocolsEnum" + }, + "description": "List of available Ssl protocols." + } + }, + "description": "Properties of ApplicationGatewayAvailableSslOptions." + }, + "ApplicationGatewayAvailableSslPredefinedPolicies": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationGatewaySslPredefinedPolicy" + }, + "description": "List of available Ssl predefined policy." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ApplicationGatewayAvailableSslOptions API service call." + }, + "ApplicationGatewaySslPredefinedPolicy": { + "properties": { + "name": { + "type": "string", + "description": "Name of the Ssl predefined policy." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationGatewaySslPredefinedPolicyPropertiesFormat", + "description": "Properties of the application gateway SSL predefined policy." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "An Ssl predefined policy." + }, + "ApplicationGatewaySslPredefinedPolicyPropertiesFormat": { + "properties": { + "cipherSuites": { + "type": "array", + "items": { + "$ref": "#/definitions/CipherSuitesEnum" + }, + "description": "Ssl cipher suites to be enabled in the specified order for application gateway." + }, + "minProtocolVersion": { + "$ref": "#/definitions/ProtocolsEnum", + "description": "Minimum version of Ssl protocol to be supported on application gateway." + } + }, + "description": "Properties of ApplicationGatewaySslPredefinedPolicy." + }, + "ApplicationGatewayCustomError": { + "properties": { + "statusCode": { + "type": "string", + "description": "Status code of the application gateway customer error.", + "enum": [ + "HttpStatus403", + "HttpStatus502" + ], + "x-ms-enum": { + "name": "ApplicationGatewayCustomErrorStatusCode", + "modelAsString": true + } + }, + "customErrorPageUrl": { + "type": "string", + "description": "Error page URL of the application gateway customer error." + } + }, + "description": "Customer error of an application gateway." + }, + "PolicyNameEnum": { + "type": "string", + "description": "Ssl predefined policy name enums.", + "enum": [ + "AppGwSslPolicy20150501", + "AppGwSslPolicy20170401", + "AppGwSslPolicy20170401S" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslPolicyName", + "modelAsString": true + } + }, + "ProtocolsEnum": { + "type": "string", + "description": "Ssl protocol enums.", + "enum": [ + "TLSv1_0", + "TLSv1_1", + "TLSv1_2" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslProtocol", + "modelAsString": true + } + }, + "CipherSuitesEnum": { + "type": "string", + "description": "Ssl cipher suites enums.", + "enum": [ + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_3DES_EDE_CBC_SHA", + "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384" + ], + "x-ms-enum": { + "name": "ApplicationGatewaySslCipherSuite", + "modelAsString": true + } + }, + "RedirectTypeEnum": { + "type": "string", + "description": "Redirect type enum.", + "enum": [ + "Permanent", + "Found", + "SeeOther", + "Temporary" + ], + "x-ms-enum": { + "name": "ApplicationGatewayRedirectType", + "modelAsString": true + } + }, + "ApplicationGatewayProtocol": { + "type": "string", + "description": "Application Gateway protocol.", + "enum": [ + "Http", + "Https" + ], + "x-ms-enum": { + "name": "ApplicationGatewayProtocol", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/applicationSecurityGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/applicationSecurityGroup.json new file mode 100644 index 000000000000..fd2a995b8969 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/applicationSecurityGroup.json @@ -0,0 +1,406 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationSecurityGroups/{applicationSecurityGroupName}": { + "delete": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_Delete", + "description": "Deletes the specified application security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete application security group": { + "$ref": "./examples/ApplicationSecurityGroupDelete.json" + } + } + }, + "get": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_Get", + "description": "Gets information about the specified application security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the specified application security group resource.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get application security group": { + "$ref": "./examples/ApplicationSecurityGroupGet.json" + } + } + }, + "put": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_CreateOrUpdate", + "description": "Creates or updates an application security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application security group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + }, + "description": "Parameters supplied to the create or update ApplicationSecurityGroup operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting application security group resource.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting application security group resource.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create application security group": { + "$ref": "./examples/ApplicationSecurityGroupCreate.json" + } + } + }, + "patch": { + "tags": [ + "applicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_UpdateTags", + "description": "Updates an application security group's tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "applicationSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the application security group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update application security group tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ApplicationSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update application security group tags": { + "$ref": "./examples/ApplicationSecurityGroupUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationSecurityGroups": { + "get": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_ListAll", + "description": "Gets all application security groups in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of application security group resources.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List all application security groups": { + "$ref": "./examples/ApplicationSecurityGroupListAll.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationSecurityGroups": { + "get": { + "tags": [ + "ApplicationSecurityGroups" + ], + "operationId": "ApplicationSecurityGroups_List", + "description": "Gets all the application security groups in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of application security group resources.", + "schema": { + "$ref": "#/definitions/ApplicationSecurityGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List load balancers in resource group": { + "$ref": "./examples/ApplicationSecurityGroupList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ApplicationSecurityGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationSecurityGroupPropertiesFormat", + "description": "Properties of the application security group." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "An application security group in a resource group." + }, + "ApplicationSecurityGroupPropertiesFormat": { + "properties": { + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the application security group resource. It uniquely identifies a resource, even if the user changes its name or migrate the resource across subscriptions or resource groups." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application security group resource." + } + }, + "description": "Application security group properties." + }, + "ApplicationSecurityGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationSecurityGroup" + }, + "description": "A list of application security groups." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "A list of application security groups." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/availableDelegations.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/availableDelegations.json new file mode 100644 index 000000000000..348270c664e4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/availableDelegations.json @@ -0,0 +1,178 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/locations/{location}/availableDelegations": { + "get": { + "operationId": "AvailableDelegations_List", + "description": "Gets all of the available subnet delegations for this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the possible delegations for a subnet in this subscription in the region.", + "schema": { + "$ref": "#/definitions/AvailableDelegationsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available delegations": { + "$ref": "./examples/AvailableDelegationsSubscriptionGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/availableDelegations": { + "get": { + "operationId": "AvailableResourceGroupDelegations_List", + "description": "Gets all of the available subnet delegations for this resource group in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the possible delegations for a subnet in this subscription in the region.", + "schema": { + "$ref": "#/definitions/AvailableDelegationsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available delegations in the resource group": { + "$ref": "./examples/AvailableDelegationsResourceGroupGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AvailableDelegationsResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailableDelegation" + }, + "description": "An array of available delegations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "An array of available delegations." + }, + "AvailableDelegation": { + "properties": { + "name": { + "type": "string", + "description": "The name of the AvailableDelegation resource." + }, + "id": { + "type": "string", + "description": "A unique identifier of the AvailableDelegation resource." + }, + "type": { + "type": "string", + "description": "Resource type." + }, + "serviceName": { + "type": "string", + "description": "The name of the service and resource." + }, + "actions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The actions permitted to the service upon delegation." + } + }, + "description": "The serviceName of an AvailableDelegation indicates a possible delegation for a subnet." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/availableServiceAliases.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/availableServiceAliases.json new file mode 100644 index 000000000000..0bb1021b7c49 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/availableServiceAliases.json @@ -0,0 +1,171 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/locations/{location}/availableServiceAliases": { + "get": { + "operationId": "AvailableServiceAliases_List", + "description": "Gets all available service aliases for this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all available service aliases for the subscription in the region.", + "schema": { + "$ref": "#/definitions/AvailableServiceAliasesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available service aliases": { + "$ref": "./examples/AvailableServiceAliasesList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/availableServiceAliases": { + "get": { + "operationId": "AvailableServiceAliases_ListByResourceGroup", + "description": "Gets all available service aliases for this resource group in this region.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all available service aliases for the resource group in the region.", + "schema": { + "$ref": "#/definitions/AvailableServiceAliasesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available service aliases in the resource group": { + "$ref": "./examples/AvailableServiceAliasesListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AvailableServiceAlias": { + "properties": { + "name": { + "type": "string", + "description": "The name of the service alias." + }, + "id": { + "type": "string", + "description": "The ID of the service alias." + }, + "type": { + "type": "string", + "description": "The type of the resource." + }, + "resourceName": { + "type": "string", + "description": "The resource name of the service alias." + } + }, + "description": "The available service alias." + }, + "AvailableServiceAliasesResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailableServiceAlias" + }, + "description": "An array of available service aliases." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "An array of available service aliases." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/azureFirewall.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/azureFirewall.json new file mode 100644 index 000000000000..9865e7225956 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/azureFirewall.json @@ -0,0 +1,1071 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/azureFirewalls/{azureFirewallName}": { + "delete": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_Delete", + "description": "Deletes the specified Azure Firewall.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "azureFirewallName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Firewall." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Azure Firewall": { + "$ref": "./examples/AzureFirewallDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_Get", + "description": "Gets the specified Azure Firewall.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "azureFirewallName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Firewall." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns an AzureFirewall resource.", + "schema": { + "$ref": "#/definitions/AzureFirewall" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Azure Firewall": { + "$ref": "./examples/AzureFirewallGet.json" + }, + "Get Azure Firewall With Zones": { + "$ref": "./examples/AzureFirewallGetWithZones.json" + }, + "Get Azure Firewall With management subnet": { + "$ref": "./examples/AzureFirewallGetWithMgmtSubnet.json" + }, + "Get Azure Firewall With Additional Properties": { + "$ref": "./examples/AzureFirewallGetWithAdditionalProperties.json" + }, + "Get Azure Firewall With IpGroups": { + "$ref": "./examples/AzureFirewallGetWithIpGroups.json" + } + } + }, + "put": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_CreateOrUpdate", + "description": "Creates or updates the specified Azure Firewall.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "azureFirewallName", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 56, + "description": "The name of the Azure Firewall." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AzureFirewall" + }, + "description": "Parameters supplied to the create or update Azure Firewall operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting AzureFirewall resource.", + "schema": { + "$ref": "#/definitions/AzureFirewall" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting AzureFirewall resource.", + "schema": { + "$ref": "#/definitions/AzureFirewall" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Azure Firewall": { + "$ref": "./examples/AzureFirewallPut.json" + }, + "Create Azure Firewall With Zones": { + "$ref": "./examples/AzureFirewallPutWithZones.json" + }, + "Create Azure Firewall With management subnet": { + "$ref": "./examples/AzureFirewallPutWithMgmtSubnet.json" + }, + "Create Azure Firewall in virtual Hub": { + "$ref": "./examples/AzureFirewallPutInHub.json" + }, + "Create Azure Firewall With Additional Properties": { + "$ref": "./examples/AzureFirewallPutWithAdditionalProperties.json" + }, + "Create Azure Firewall With IpGroups": { + "$ref": "./examples/AzureFirewallPutWithIpGroups.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_UpdateTags", + "description": "Updates tags of an Azure Firewall resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "azureFirewallName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Firewall." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update azure firewall tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Update successful. The operation returns the resulting AzureFirewall resource.", + "schema": { + "$ref": "#/definitions/AzureFirewall" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update Azure Firewall Tags": { + "$ref": "./examples/AzureFirewallUpdateTags.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/azureFirewalls": { + "get": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_List", + "description": "Lists all Azure Firewalls in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of AzureFirewall resources.", + "schema": { + "$ref": "#/definitions/AzureFirewallListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Azure Firewalls for a given resource group": { + "$ref": "./examples/AzureFirewallListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/azureFirewalls": { + "get": { + "tags": [ + "AzureFirewalls" + ], + "operationId": "AzureFirewalls_ListAll", + "description": "Gets all the Azure Firewalls in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of AzureFirewall resources.", + "schema": { + "$ref": "#/definitions/AzureFirewallListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Azure Firewalls for a given subscription": { + "$ref": "./examples/AzureFirewallListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AzureFirewallIPConfigurationPropertiesFormat": { + "properties": { + "privateIPAddress": { + "type": "string", + "readOnly": true, + "description": "The Firewall Internal Load Balancer IP to be used as the next hop in User Defined Routes." + }, + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the subnet resource. This resource must be named 'AzureFirewallSubnet' or 'AzureFirewallManagementSubnet'." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the PublicIP resource. This field is a mandatory input if subnet is not null." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the Azure firewall IP configuration resource." + } + }, + "description": "Properties of IP configuration of an Azure Firewall." + }, + "AzureFirewallIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallIPConfigurationPropertiesFormat", + "description": "Properties of the azure firewall IP configuration." + }, + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration of an Azure Firewall." + }, + "AzureFirewallPublicIPAddress": { + "properties": { + "address": { + "type": "string", + "description": "Public IP Address value." + } + }, + "description": "Public IP Address associated with azure firewall." + }, + "AzureFirewallIpGroups": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Resource ID." + }, + "changeNumber": { + "type": "string", + "readOnly": true, + "description": "The iteration number." + } + }, + "description": "IpGroups associated with azure firewall." + }, + "HubIPAddresses": { + "properties": { + "publicIPAddresses": { + "type": "array", + "description": "List of Public IP addresses associated with azure firewall.", + "items": { + "$ref": "#/definitions/AzureFirewallPublicIPAddress" + } + }, + "privateIPAddress": { + "type": "string", + "description": "Private IP Address associated with azure firewall." + } + }, + "description": "IP addresses associated with azure firewall." + }, + "IpGroups": { + "type": "array", + "description": "List of IpGroups associated with azure firewall.", + "items": { + "$ref": "#/definitions/AzureFirewallIpGroups" + } + }, + "AzureFirewallPropertiesFormat": { + "properties": { + "applicationRuleCollections": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallApplicationRuleCollection" + }, + "description": "Collection of application rule collections used by Azure Firewall." + }, + "natRuleCollections": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNatRuleCollection" + }, + "description": "Collection of NAT rule collections used by Azure Firewall." + }, + "networkRuleCollections": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNetworkRuleCollection" + }, + "description": "Collection of network rule collections used by Azure Firewall." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallIPConfiguration" + }, + "description": "IP configuration of the Azure Firewall resource." + }, + "managementIpConfiguration": { + "$ref": "#/definitions/AzureFirewallIPConfiguration", + "description": "IP configuration of the Azure Firewall used for management traffic." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the Azure firewall resource." + }, + "threatIntelMode": { + "description": "The operation mode for Threat Intelligence.", + "$ref": "#/definitions/AzureFirewallThreatIntelMode" + }, + "virtualHub": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The virtualHub to which the firewall belongs." + }, + "firewallPolicy": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The firewallPolicy associated with this azure firewall." + }, + "hubIpAddresses": { + "readOnly": true, + "description": "IP addresses associated with AzureFirewall.", + "$ref": "#/definitions/HubIPAddresses" + }, + "ipGroups": { + "readOnly": true, + "description": "IpGroups associated with AzureFirewall.", + "$ref": "#/definitions/IpGroups" + }, + "sku": { + "description": "The Azure Firewall Resource SKU.", + "$ref": "#/definitions/AzureFirewallSku" + }, + "additionalProperties": { + "$ref": "#/definitions/AzureFirewallAdditionalProperties", + "description": "The additional properties used to further config this azure firewall." + } + }, + "description": "Properties of the Azure Firewall." + }, + "AzureFirewall": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallPropertiesFormat", + "description": "Properties of the azure firewall." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting where the resource needs to come from." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Azure Firewall resource." + }, + "AzureFirewallListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewall" + }, + "description": "List of Azure Firewalls in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListAzureFirewalls API service call." + }, + "AzureFirewallThreatIntelMode": { + "type": "string", + "description": "The operation mode for Threat Intel.", + "enum": [ + "Alert", + "Deny", + "Off" + ], + "x-ms-enum": { + "name": "AzureFirewallThreatIntelMode", + "modelAsString": true + } + }, + "AzureFirewallAdditionalProperties": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The additional properties of azure firewall." + }, + "AzureFirewallApplicationRuleCollectionPropertiesFormat": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the application rule collection resource." + }, + "action": { + "$ref": "#/definitions/AzureFirewallRCAction", + "description": "The action type of a rule collection." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallApplicationRule" + }, + "description": "Collection of rules used by a application rule collection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the application rule collection resource." + } + }, + "description": "Properties of the application rule collection." + }, + "AzureFirewallApplicationRuleCollection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallApplicationRuleCollectionPropertiesFormat", + "description": "Properties of the azure firewall application rule collection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the Azure firewall. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Application rule collection resource." + }, + "AzureFirewallApplicationRuleProtocol": { + "properties": { + "protocolType": { + "description": "Protocol type.", + "$ref": "#/definitions/AzureFirewallApplicationRuleProtocolType" + }, + "port": { + "type": "integer", + "format": "int32", + "maximum": 64000, + "exclusiveMaximum": false, + "minimum": 0, + "exclusiveMinimum": false, + "description": "Port number for the protocol, cannot be greater than 64000. This field is optional." + } + }, + "description": "Properties of the application rule protocol." + }, + "AzureFirewallApplicationRule": { + "properties": { + "name": { + "type": "string", + "description": "Name of the application rule." + }, + "description": { + "type": "string", + "description": "Description of the rule." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "protocols": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallApplicationRuleProtocol" + }, + "description": "Array of ApplicationRuleProtocols." + }, + "targetFqdns": { + "type": "array", + "description": "List of FQDNs for this rule.", + "items": { + "type": "string" + } + }, + "fqdnTags": { + "type": "array", + "description": "List of FQDN Tags for this rule.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + } + }, + "description": "Properties of an application rule." + }, + "AzureFirewallNatRuleCollectionProperties": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the NAT rule collection resource." + }, + "action": { + "$ref": "#/definitions/AzureFirewallNatRCAction", + "description": "The action type of a NAT rule collection." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNatRule" + }, + "description": "Collection of rules used by a NAT rule collection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the NAT rule collection resource." + } + }, + "description": "Properties of the NAT rule collection." + }, + "AzureFirewallNatRuleCollection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallNatRuleCollectionProperties", + "description": "Properties of the azure firewall NAT rule collection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the Azure firewall. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "NAT rule collection resource." + }, + "AzureFirewallNatRule": { + "properties": { + "name": { + "type": "string", + "description": "Name of the NAT rule." + }, + "description": { + "type": "string", + "description": "Description of the rule." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses for this rule. Supports IP ranges, prefixes, and service tags.", + "items": { + "type": "string" + } + }, + "destinationPorts": { + "type": "array", + "description": "List of destination ports.", + "items": { + "type": "string" + } + }, + "protocols": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNetworkRuleProtocol" + }, + "description": "Array of AzureFirewallNetworkRuleProtocols applicable to this NAT rule." + }, + "translatedAddress": { + "type": "string", + "description": "The translated address for this NAT rule." + }, + "translatedPort": { + "type": "string", + "description": "The translated port for this NAT rule." + }, + "translatedFqdn": { + "type": "string", + "description": "The translated FQDN for this NAT rule." + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + } + }, + "description": "Properties of a NAT rule." + }, + "AzureFirewallNatRCAction": { + "properties": { + "type": { + "description": "The type of action.", + "$ref": "#/definitions/AzureFirewallNatRCActionType" + } + }, + "description": "AzureFirewall NAT Rule Collection Action." + }, + "AzureFirewallNatRCActionType": { + "type": "string", + "description": "The action type of a NAT rule collection.", + "enum": [ + "Snat", + "Dnat" + ], + "x-ms-enum": { + "name": "AzureFirewallNatRCActionType", + "modelAsString": true + } + }, + "AzureFirewallNetworkRuleCollectionPropertiesFormat": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the network rule collection resource." + }, + "action": { + "$ref": "#/definitions/AzureFirewallRCAction", + "description": "The action type of a rule collection." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNetworkRule" + }, + "description": "Collection of rules used by a network rule collection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network rule collection resource." + } + }, + "description": "Properties of the network rule collection." + }, + "AzureFirewallNetworkRuleCollection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallNetworkRuleCollectionPropertiesFormat", + "description": "Properties of the azure firewall network rule collection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the Azure firewall. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Network rule collection resource." + }, + "AzureFirewallNetworkRule": { + "properties": { + "name": { + "type": "string", + "description": "Name of the network rule." + }, + "description": { + "type": "string", + "description": "Description of the rule." + }, + "protocols": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallNetworkRuleProtocol" + }, + "description": "Array of AzureFirewallNetworkRuleProtocols." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses.", + "items": { + "type": "string" + } + }, + "destinationPorts": { + "type": "array", + "description": "List of destination ports.", + "items": { + "type": "string" + } + }, + "destinationFqdns": { + "type": "array", + "description": "List of destination FQDNs.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + }, + "destinationIpGroups": { + "type": "array", + "description": "List of destination IpGroups for this rule.", + "items": { + "type": "string" + } + } + }, + "description": "Properties of the network rule." + }, + "AzureFirewallRCAction": { + "properties": { + "type": { + "description": "The type of action.", + "$ref": "#/definitions/AzureFirewallRCActionType" + } + }, + "description": "Properties of the AzureFirewallRCAction." + }, + "AzureFirewallRCActionType": { + "type": "string", + "description": "The action type of a rule collection.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "AzureFirewallRCActionType", + "modelAsString": true + } + }, + "AzureFirewallNetworkRuleProtocol": { + "type": "string", + "description": "The protocol of a Network Rule resource.", + "enum": [ + "TCP", + "UDP", + "Any", + "ICMP" + ], + "x-ms-enum": { + "name": "AzureFirewallNetworkRuleProtocol", + "modelAsString": true + } + }, + "AzureFirewallApplicationRuleProtocolType": { + "type": "string", + "description": "The protocol type of a Application Rule resource.", + "enum": [ + "Http", + "Https", + "Mssql" + ], + "x-ms-enum": { + "name": "AzureFirewallApplicationRuleProtocolType", + "modelAsString": true + } + }, + "AzureFirewallSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of an Azure Firewall SKU.", + "enum": [ + "AZFW_VNet", + "AZFW_Hub" + ], + "x-ms-enum": { + "name": "AzureFirewallSkuName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "Tier of an Azure Firewall.", + "enum": [ + "Standard" + ], + "x-ms-enum": { + "name": "AzureFirewallSkuTier", + "modelAsString": true + } + } + }, + "description": "SKU of an Azure Firewall." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/azureFirewallFqdnTag.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/azureFirewallFqdnTag.json new file mode 100644 index 000000000000..f9dd37c9ab0a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/azureFirewallFqdnTag.json @@ -0,0 +1,130 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/azureFirewallFqdnTags": { + "get": { + "tags": [ + "AzureFirewallFqdnTags" + ], + "operationId": "AzureFirewallFqdnTags_ListAll", + "description": "Gets all the Azure Firewall FQDN Tags in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Azure Firewall FQDN Tag resources.", + "schema": { + "$ref": "#/definitions/AzureFirewallFqdnTagListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Azure Firewall FQDN Tags for a given subscription": { + "$ref": "./examples/AzureFirewallFqdnTagsListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AzureFirewallFqdnTagPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the Azure firewall FQDN tag resource." + }, + "fqdnTagName": { + "type": "string", + "readOnly": true, + "description": "The name of this FQDN Tag." + } + }, + "description": "Azure Firewall FQDN Tag Properties." + }, + "AzureFirewallFqdnTag": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFirewallFqdnTagPropertiesFormat", + "description": "Properties of the azure firewall FQDN tag." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Azure Firewall FQDN Tag Resource." + }, + "AzureFirewallFqdnTagListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AzureFirewallFqdnTag" + }, + "description": "List of Azure Firewall FQDN Tags in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListAzureFirewallFqdnTags API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/bastionHost.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/bastionHost.json new file mode 100644 index 000000000000..69b0dd930a15 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/bastionHost.json @@ -0,0 +1,869 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}": { + "delete": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_Delete", + "description": "Deletes the specified Bastion Host.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Bastion Host": { + "$ref": "./examples/BastionHostDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_Get", + "description": "Gets the specified Bastion Host.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns an BastionHost resource.", + "schema": { + "$ref": "#/definitions/BastionHost" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Bastion Host": { + "$ref": "./examples/BastionHostGet.json" + } + } + }, + "put": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_CreateOrUpdate", + "description": "Creates or updates the specified Bastion Host.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BastionHost" + }, + "description": "Parameters supplied to the create or update Bastion Host operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting Bastion Host resource.", + "schema": { + "$ref": "#/definitions/BastionHost" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting Bastion Host resource.", + "schema": { + "$ref": "#/definitions/BastionHost" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Bastion Host": { + "$ref": "./examples/BastionHostPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/bastionHosts": { + "get": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_List", + "description": "Lists all Bastion Hosts in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Bastion Host resources.", + "schema": { + "$ref": "#/definitions/BastionHostListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Bastion Hosts for a given subscription": { + "$ref": "./examples/BastionHostListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts": { + "get": { + "tags": [ + "BastionHosts" + ], + "operationId": "BastionHosts_ListByResourceGroup", + "description": "Lists all Bastion Hosts in a resource group.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of BastionHost resources.", + "schema": { + "$ref": "#/definitions/BastionHostListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Bastion Hosts for a given resource group": { + "$ref": "./examples/BastionHostListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/createShareableLinks": { + "post": { + "tags": [ + "BastionHosts", + "BastionShareableLink" + ], + "operationId": "PutBastionShareableLink", + "description": "Creates a Bastion Shareable Links for all the VMs specified in the request.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BastionShareableLinkRequest" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of shareable links for the specified VMs, giving appropriate error messages as needed.", + "schema": { + "$ref": "#/definitions/BastionShareableLinkListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Create Bastion Shareable Links for the request VMs": { + "$ref": "./examples/BastionShareableLinkCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/deleteShareableLinks": { + "post": { + "tags": [ + "BastionHosts", + "BastionShareableLink" + ], + "operationId": "DeleteBastionShareableLink", + "description": "Deletes the Bastion Shareable Links for all the VMs specified in the request.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BastionShareableLinkRequest" + } + ], + "responses": { + "200": { + "description": "Success. The operation deleted the BastionShareableLinks associated with the VMs, if they existed. No return body." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete Bastion Shareable Links for the request VMs": { + "$ref": "./examples/BastionShareableLinkDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/getShareableLinks": { + "post": { + "tags": [ + "BastionHosts", + "BastionShareableLink" + ], + "operationId": "GetBastionShareableLink", + "description": "Return the Bastion Shareable Links for all the VMs specified in the request.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/BastionShareableLinkRequest" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of shareable links for the specified VMs, giving appropriate error messages as needed.", + "schema": { + "$ref": "#/definitions/BastionShareableLinkListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Returns the Bastion Shareable Links for the request VMs": { + "$ref": "./examples/BastionShareableLinkGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/getActiveSessions": { + "post": { + "tags": [ + "BastionHosts" + ], + "operationId": "GetActiveSessions", + "description": "Returns the list of currently active sessions on the Bastion.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of active sessions on the Bastion.", + "schema": { + "$ref": "#/definitions/BastionActiveSessionListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Returns a list of currently active sessions on the Bastion": { + "$ref": "./examples/BastionSessionsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}/disconnectActiveSessions": { + "post": { + "tags": [ + "BastionHosts" + ], + "operationId": "DisconnectActiveSessions", + "description": "Returns the list of currently active sessions on the Bastion.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/BastionHostName" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/SessionIdsParameters" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of sessions with the state of deleted/failed/not found.", + "schema": { + "$ref": "#/definitions/BastionSessionDeleteResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Deletes the specified active session": { + "$ref": "./examples/BastionSessionDelete.json" + } + } + } + } + }, + "definitions": { + "BastionHostIPConfigurationPropertiesFormat": { + "properties": { + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference of the subnet resource." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference of the PublicIP resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the bastion host IP configuration resource." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "Private IP allocation method." + } + }, + "required": [ + "subnet", + "publicIPAddress" + ], + "description": "Properties of IP configuration of an Bastion Host." + }, + "BastionHostIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BastionHostIPConfigurationPropertiesFormat", + "description": "Represents the ip configuration associated with the resource." + }, + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Ip configuration type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration of an Bastion Host." + }, + "BastionHostPropertiesFormat": { + "properties": { + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionHostIPConfiguration" + }, + "description": "IP configuration of the Bastion Host resource." + }, + "dnsName": { + "type": "string", + "description": "FQDN for the endpoint on which bastion host is accessible." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the bastion host resource." + } + }, + "description": "Properties of the Bastion Host." + }, + "BastionHost": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BastionHostPropertiesFormat", + "description": "Represents the bastion host resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Bastion Host resource." + }, + "BastionHostListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionHost" + }, + "description": "List of Bastion Hosts in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListBastionHosts API service call." + }, + "BastionShareableLink": { + "properties": { + "vm": { + "$ref": "#/definitions/VM", + "description": "Reference of the virtual machine resource." + }, + "bsl": { + "type": "string", + "readOnly": true, + "description": "The unique Bastion Shareable Link to the virtual machine." + }, + "createdAt": { + "type": "string", + "readOnly": true, + "description": "The time when the link was created." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "Optional field indicating the warning or error message related to the vm in case of partial failure." + } + }, + "required": [ + "vm" + ], + "description": "Bastion Shareable Link." + }, + "BastionShareableLinkListRequest": { + "properties": { + "vms": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionShareableLink" + }, + "description": "List of VM references." + } + }, + "description": "Post request for all the Bastion Shareable Link endpoints." + }, + "BastionShareableLinkListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionShareableLink" + }, + "description": "List of Bastion Shareable Links for the request." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for all the Bastion Shareable Link endpoints." + }, + "BastionActiveSession": { + "properties": { + "sessionId": { + "type": "string", + "readOnly": true, + "description": "A unique id for the session." + }, + "startTime": { + "type": "object", + "readOnly": true, + "description": "The time when the session started." + }, + "targetSubscriptionId": { + "type": "string", + "readOnly": true, + "description": "The subscription id for the target virtual machine." + }, + "resourceType": { + "type": "string", + "readOnly": true, + "description": "The type of the resource." + }, + "targetHostName": { + "type": "string", + "readOnly": true, + "description": "The host name of the target." + }, + "targetResourceGroup": { + "type": "string", + "readOnly": true, + "description": "The resource group of the target." + }, + "userName": { + "type": "string", + "readOnly": true, + "description": "The user name who is active on this session." + }, + "targetIpAddress": { + "type": "string", + "readOnly": true, + "description": "The IP Address of the target." + }, + "protocol": { + "type": "string", + "readOnly": true, + "description": "The protocol used to connect to the target.", + "enum": [ + "SSH", + "RDP" + ], + "x-ms-enum": { + "name": "BastionConnectProtocol", + "modelAsString": true + } + }, + "targetResourceId": { + "type": "string", + "readOnly": true, + "description": "The resource id of the target." + }, + "sessionDurationInMins": { + "type": "number", + "readOnly": true, + "description": "Duration in mins the session has been active." + } + }, + "description": "The session detail for a target." + }, + "BastionActiveSessionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionActiveSession" + }, + "description": "List of active sessions on the bastion." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for GetActiveSessions." + }, + "BastionSessionState": { + "properties": { + "sessionId": { + "type": "string", + "readOnly": true, + "description": "A unique id for the session." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "Used for extra information." + }, + "state": { + "type": "string", + "readOnly": true, + "description": "The state of the session. Disconnected/Failed/NotFound." + } + }, + "description": "The session state detail for a target." + }, + "BastionSessionDeleteResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BastionSessionState" + }, + "description": "List of sessions with their corresponding state." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for DisconnectActiveSessions." + }, + "VM": { + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Describes a Virtual Machine." + }, + "SessionIds": { + "properties": { + "sessionIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of session IDs." + } + }, + "description": "List of session IDs." + } + }, + "parameters": { + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group.", + "x-ms-parameter-location": "method" + }, + "BastionShareableLinkRequest": { + "name": "bslRequest", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BastionShareableLinkListRequest" + }, + "description": "Post request for all the Bastion Shareable Link endpoints.", + "x-ms-parameter-location": "method" + }, + "BastionHostName": { + "name": "bastionHostName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Bastion Host.", + "x-ms-parameter-location": "method" + }, + "SessionIdsParameters": { + "name": "sessionIds", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SessionIds" + }, + "description": "The list of sessionids to disconnect.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/checkDnsAvailability.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/checkDnsAvailability.json new file mode 100644 index 000000000000..e7ecc44f8b2c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/checkDnsAvailability.json @@ -0,0 +1,96 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/locations/{location}/CheckDnsNameAvailability": { + "get": { + "operationId": "CheckDnsNameAvailability", + "description": "Checks whether a domain name in the cloudapp.azure.com zone is available for use.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "domainNameLabel", + "in": "query", + "required": true, + "type": "string", + "description": "The domain name to be verified. It must conform to the following regular expression: ^[a-z][a-z0-9-]{1,61}[a-z0-9]$." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns whether the DNS name is available.", + "schema": { + "$ref": "#/definitions/DnsNameAvailabilityResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Check Dns Name Availability": { + "$ref": "./examples/CheckDnsNameAvailability.json" + } + } + } + } + }, + "definitions": { + "DnsNameAvailabilityResult": { + "properties": { + "available": { + "type": "boolean", + "description": "Domain availability (True/False)." + } + }, + "description": "Response for the CheckDnsNameAvailability API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/ddosCustomPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/ddosCustomPolicy.json new file mode 100644 index 000000000000..df8f794729a7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/ddosCustomPolicy.json @@ -0,0 +1,364 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosCustomPolicies/{ddosCustomPolicyName}": { + "delete": { + "tags": [ + "ddosCustomPolicies" + ], + "operationId": "DdosCustomPolicies_Delete", + "description": "Deletes the specified DDoS custom policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosCustomPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS custom policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete DDoS custom policy": { + "$ref": "./examples/DdosCustomPolicyDelete.json" + } + } + }, + "get": { + "tags": [ + "ddosCustomPolicies" + ], + "operationId": "DdosCustomPolicies_Get", + "description": "Gets information about the specified DDoS custom policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosCustomPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS custom policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the specified DDoS custom policy resource.", + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get DDoS custom policy": { + "$ref": "./examples/DdosCustomPolicyGet.json" + } + } + }, + "put": { + "tags": [ + "ddosCustomPolicies" + ], + "operationId": "DdosCustomPolicies_CreateOrUpdate", + "description": "Creates or updates a DDoS custom policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosCustomPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS custom policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + }, + "description": "Parameters supplied to the create or update operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting DDoS custom policy resource.", + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting DDoS custom policy resource.", + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create DDoS custom policy": { + "$ref": "./examples/DdosCustomPolicyCreate.json" + } + } + }, + "patch": { + "tags": [ + "ddosCustomPolicies" + ], + "operationId": "DdosCustomPolicies_UpdateTags", + "description": "Update a DDoS custom policy tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosCustomPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS custom policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update DDoS custom policy resource tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting DDoS custom policy resource.", + "schema": { + "$ref": "#/definitions/DdosCustomPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DDoS Custom policy Update tags": { + "$ref": "./examples/DdosCustomPolicyUpdateTags.json" + } + } + } + } + }, + "definitions": { + "DdosCustomPolicy": { + "description": "A DDoS custom policy in a resource group.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DdosCustomPolicyPropertiesFormat", + "description": "Properties of the DDoS custom policy." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "DdosCustomPolicyPropertiesFormat": { + "properties": { + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the DDoS custom policy resource. It uniquely identifies the resource, even if the user changes its name or migrate the resource across subscriptions or resource groups." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the DDoS custom policy resource." + }, + "publicIPAddresses": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The list of public IPs associated with the DDoS custom policy resource. This list is read-only." + }, + "protocolCustomSettings": { + "readOnly": false, + "type": "array", + "items": { + "$ref": "#/definitions/ProtocolCustomSettingsFormat" + }, + "description": "The protocol-specific DDoS policy customization parameters." + } + }, + "description": "DDoS custom policy properties." + }, + "ProtocolCustomSettingsFormat": { + "properties": { + "protocol": { + "readOnly": false, + "type": "string", + "enum": [ + "Tcp", + "Udp", + "Syn" + ], + "x-ms-enum": { + "name": "DdosCustomPolicyProtocol", + "modelAsString": true + }, + "description": "The protocol for which the DDoS protection policy is being customized." + }, + "triggerRateOverride": { + "readOnly": false, + "type": "string", + "description": "The customized DDoS protection trigger rate." + }, + "sourceRateOverride": { + "readOnly": false, + "type": "string", + "description": "The customized DDoS protection source rate." + }, + "triggerSensitivityOverride": { + "readOnly": false, + "type": "string", + "enum": [ + "Relaxed", + "Low", + "Default", + "High" + ], + "x-ms-enum": { + "name": "DdosCustomPolicyTriggerSensitivityOverride", + "modelAsString": true + }, + "description": "The customized DDoS protection trigger rate sensitivity degrees. High: Trigger rate set with most sensitivity w.r.t. normal traffic. Default: Trigger rate set with moderate sensitivity w.r.t. normal traffic. Low: Trigger rate set with less sensitivity w.r.t. normal traffic. Relaxed: Trigger rate set with least sensitivity w.r.t. normal traffic." + } + }, + "description": "DDoS custom policy properties." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/ddosProtectionPlan.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/ddosProtectionPlan.json new file mode 100644 index 000000000000..57a88d24c474 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/ddosProtectionPlan.json @@ -0,0 +1,436 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosProtectionPlans/{ddosProtectionPlanName}": { + "delete": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_Delete", + "description": "Deletes the specified DDoS protection plan.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosProtectionPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS protection plan." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete DDoS protection plan": { + "$ref": "./examples/DdosProtectionPlanDelete.json" + } + } + }, + "get": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_Get", + "description": "Gets information about the specified DDoS protection plan.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosProtectionPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS protection plan." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the specified DDoS protection plan resource.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get DDoS protection plan": { + "$ref": "./examples/DdosProtectionPlanGet.json" + } + } + }, + "put": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_CreateOrUpdate", + "description": "Creates or updates a DDoS protection plan.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosProtectionPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS protection plan." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + }, + "description": "Parameters supplied to the create or update operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting DDoS protection plan resource.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting DDoS protection plan resource.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create DDoS protection plan": { + "$ref": "./examples/DdosProtectionPlanCreate.json" + } + } + }, + "patch": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_UpdateTags", + "description": "Update a DDoS protection plan tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ddosProtectionPlanName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the DDoS protection plan." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to the update DDoS protection plan resource tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting DDoS protection plan resource.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlan" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DDoS protection plan Update tags": { + "$ref": "./examples/DdosProtectionPlanUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ddosProtectionPlans": { + "get": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_List", + "description": "Gets all DDoS protection plans in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of DDoS protection plan resources.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlanListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List all DDoS protection plans": { + "$ref": "./examples/DdosProtectionPlanListAll.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosProtectionPlans": { + "get": { + "tags": [ + "DdosProtectionPlans" + ], + "operationId": "DdosProtectionPlans_ListByResourceGroup", + "description": "Gets all the DDoS protection plans in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of DDoS protection plan resources.", + "schema": { + "$ref": "#/definitions/DdosProtectionPlanListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List DDoS protection plans in resource group": { + "$ref": "./examples/DdosProtectionPlanList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "DdosProtectionPlan": { + "description": "A DDoS protection plan in a resource group.", + "x-ms-azure-resource": true, + "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." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DdosProtectionPlanPropertiesFormat", + "description": "Properties of the DDoS protection plan." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + } + }, + "DdosProtectionPlanPropertiesFormat": { + "properties": { + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the DDoS protection plan resource. It uniquely identifies the resource, even if the user changes its name or migrate the resource across subscriptions or resource groups." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the DDoS protection plan resource." + }, + "virtualNetworks": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The list of virtual networks associated with the DDoS protection plan resource. This list is read-only." + } + }, + "description": "DDoS protection plan properties." + }, + "DdosProtectionPlanListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DdosProtectionPlan" + }, + "description": "A list of DDoS protection plans." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "A list of DDoS protection plans." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/endpointService.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/endpointService.json new file mode 100644 index 000000000000..209aaf23d1f6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/endpointService.json @@ -0,0 +1,119 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/locations/{location}/virtualNetworkAvailableEndpointServices": { + "get": { + "operationId": "AvailableEndpointServices_List", + "description": "List what values of endpoint services are available for use.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location to check available endpoint services." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns list of available endpoint services.", + "schema": { + "$ref": "#/definitions/EndpointServicesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "EndpointServicesList": { + "$ref": "./examples/EndpointServicesList.json" + } + } + } + } + }, + "definitions": { + "EndpointServicesListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EndpointServiceResult" + }, + "description": "List of available endpoint services in a region." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListAvailableEndpointServices API service call." + }, + "EndpointServiceResult": { + "properties": { + "name": { + "type": "string", + "description": "Name of the endpoint service.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "Type of the endpoint service.", + "readOnly": true + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Endpoint service." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableRequestHeadersGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableRequestHeadersGet.json new file mode 100644 index 000000000000..d926268dc4d0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableRequestHeadersGet.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "72f988bf-86f1-41af-91ab-2d7cd0dddd4" + }, + "responses": { + "200": { + "body": [ + "Accept-Charset" + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableResponseHeadersGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableResponseHeadersGet.json new file mode 100644 index 000000000000..b243000433ea --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableResponseHeadersGet.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "72f988bf-86f1-41af-91ab-2d7cd0dddd4" + }, + "responses": { + "200": { + "body": [ + "Access-Control-Allow-Origin" + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableServerVariablesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableServerVariablesGet.json new file mode 100644 index 000000000000..e6c28a181d25 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableServerVariablesGet.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "72f988bf-86f1-41af-91ab-2d7cd0dddd4" + }, + "responses": { + "200": { + "body": [ + "request_query" + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableSslOptionsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableSslOptionsGet.json new file mode 100644 index 000000000000..5e3d378dc9ca --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableSslOptionsGet.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "default", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default", + "type": "Microsoft.Network/ApplicationGatewayAvailableSslOptions", + "properties": { + "predefinedPolicies": [ + { + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20150501" + }, + { + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401" + }, + { + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401S" + } + ], + "defaultPolicy": "AppGwSslPolicy20150501", + "availableCipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_3DES_EDE_CBC_SHA", + "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA" + ], + "availableProtocols": [ + "TLSv1_0", + "TLSv1_1", + "TLSv1_2" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json new file mode 100644 index 000000000000..76e0f585e5eb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPoliciesGet.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "AppGwSslPolicy20150501", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20150501", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_3DES_EDE_CBC_SHA", + "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_0" + } + }, + { + "name": "AppGwSslPolicy20170401", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_1" + } + }, + { + "name": "AppGwSslPolicy20170401S", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20170401S", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_2" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json new file mode 100644 index 000000000000..0a12b30984f4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableSslOptionsPredefinedPolicyGet.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "predefinedPolicyName": "AppGwSslPolicy20150501" + }, + "responses": { + "200": { + "body": { + "name": "AppGwSslPolicy20150501", + "id": "/subscriptions/subid/resourceGroups//providers/Microsoft.Network/ApplicationGatewayAvailableSslOptions/default/ApplicationGatewaySslPredefinedPolicy/AppGwSslPolicy20150501", + "properties": { + "cipherSuites": [ + "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384", + "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256", + "TLS_DHE_RSA_WITH_AES_256_CBC_SHA", + "TLS_DHE_RSA_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_AES_256_GCM_SHA384", + "TLS_RSA_WITH_AES_128_GCM_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA256", + "TLS_RSA_WITH_AES_128_CBC_SHA256", + "TLS_RSA_WITH_AES_256_CBC_SHA", + "TLS_RSA_WITH_AES_128_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256", + "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA", + "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256", + "TLS_DHE_DSS_WITH_AES_256_CBC_SHA", + "TLS_DHE_DSS_WITH_AES_128_CBC_SHA", + "TLS_RSA_WITH_3DES_EDE_CBC_SHA", + "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA" + ], + "minProtocolVersion": "TLSv1_0" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json new file mode 100644 index 000000000000..431f89fb217e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayAvailableWafRuleSetsGet.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "OWASP_3.0", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/applicationGatewayAvailableWafRuleSets/", + "type": "Microsoft.Network/applicationGatewayAvailableWafRuleSets", + "properties": { + "provisioningState": "Succeeded", + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0", + "ruleGroups": [ + { + "ruleGroupName": "General", + "description": "", + "rules": [ + { + "ruleId": 200004, + "description": "Possible Multipart Unmatched Boundary." + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayBackendHealthGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayBackendHealthGet.json new file mode 100644 index 000000000000..c482064a50da --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayBackendHealthGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "appgw", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": { + "body": { + "backendAddressPools": [ + { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFAnalyticsPool" + }, + "backendHttpSettingsCollection": [ + { + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + }, + "servers": [ + { + "address": "10.220.1.8", + "health": "Up" + } + ] + } + ] + }, + { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFPool" + }, + "backendHttpSettingsCollection": [ + { + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + }, + "servers": [ + { + "address": "10.220.1.4", + "health": "Up" + }, + { + "address": "10.220.1.5", + "health": "Up" + } + ] + } + ] + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayBackendHealthTest.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayBackendHealthTest.json new file mode 100644 index 000000000000..ccab55f87e44 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayBackendHealthTest.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw", + "probeRequest": { + "protocol": "Http", + "pickHostNameFromBackendHttpSettings": true, + "path": "/", + "timeout": 30, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFAnalyticsPool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + } + } + }, + "responses": { + "200": { + "body": { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendaddressPools/MFAnalyticsPool" + }, + "backendHealthHttpSettings": { + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/MFPoolSettings" + }, + "servers": [ + { + "address": "10.220.1.4", + "health": "Up" + }, + { + "address": "10.220.1.5", + "health": "Up" + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayCreate.json new file mode 100644 index 000000000000..5d547825cf9f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayCreate.json @@ -0,0 +1,745 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw", + "parameters": { + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "location": "eastus", + "properties": { + "sku": { + "name": "Standard_v2", + "tier": "Standard_v2", + "capacity": 3 + }, + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "properties": { + "data": "****", + "password": "****" + } + }, + { + "name": "sslcert2", + "properties": { + "keyVaultSecretId": "https://kv/secret" + } + } + ], + "trustedRootCertificates": [ + { + "name": "rootcert", + "properties": { + "data": "****" + } + }, + { + "name": "rootcert1", + "properties": { + "keyVaultSecretId": "https://kv/secret" + } + } + ], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "properties": { + "port": 443 + } + }, + { + "name": "appgwfp80", + "properties": { + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "properties": { + "backendAddresses": [ + { + "ipAddress": "10.0.1.1" + }, + { + "ipAddress": "10.0.1.2" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "properties": { + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "properties": { + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "properties": { + "paths": [ + "/api", + "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "properties": { + "ruleType": "Basic", + "priority": 10, + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "properties": { + "ruleType": "PathBasedRouting", + "priority": 20, + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "properties": { + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "ruleSequence": 102, + "conditions": [ + { + "variable": "http_req_Authorization", + "pattern": "^Bearer", + "ignoreCase": true, + "negate": false + } + ], + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_add_x_forwarded_for_proxy}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ], + "urlConfiguration": { + "modifiedPath": "/abc" + } + } + } + ] + } + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "name": "appgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/gatewayIPConfigurations/appgwipc", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "*****" + } + } + ], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp", + "properties": { + "provisioningState": "Succeeded", + "port": 443 + } + }, + { + "name": "appgwfp80", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1", + "properties": { + "provisioningState": "Succeeded", + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1/pathRules/apiPaths", + "properties": { + "provisioningState": "Succeeded", + "paths": [ + "/api", + "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwrule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwPathBasedRule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "PathBasedRouting", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1", + "properties": { + "provisioningState": "Succeeded", + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "ruleSequence": 102, + "conditions": [ + { + "variable": "http_req_Authorization", + "pattern": "^Bearer", + "ignoreCase": true, + "negate": false + } + ], + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_remote-addr}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ], + "urlConfiguration": { + "modifiedPath": "/abc", + "reroute": true + } + } + } + ] + } + } + ], + "probes": [] + } + } + }, + "200": { + "body": { + "name": "appgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/gatewayIPConfigurations/appgwipc", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "*****" + } + } + ], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp", + "properties": { + "provisioningState": "Succeeded", + "port": 443 + } + }, + { + "name": "appgwfp80", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1", + "properties": { + "provisioningState": "Succeeded", + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1/pathRules/apiPaths", + "properties": { + "provisioningState": "Succeeded", + "paths": [ + "/api", + "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwrule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwPathBasedRule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "PathBasedRouting", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1", + "properties": { + "provisioningState": "Succeeded", + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "ruleSequence": 102, + "conditions": [ + { + "variable": "http_req_Authorization", + "pattern": "^Bearer", + "ignoreCase": true, + "negate": false + } + ], + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_remote-addr}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ], + "urlConfiguration": { + "modifiedPath": "/abc", + "modifiedQueryString": "x=y&a=b" + } + } + } + ] + } + } + ], + "probes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayDelete.json new file mode 100644 index 000000000000..7836ebcfbc14 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "202": {}, + "204": {}, + "200": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayGet.json new file mode 100644 index 000000000000..5365b4014bad --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayGet.json @@ -0,0 +1,259 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": { + "body": { + "name": "appgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/gatewayIPConfigurations/appgwipc", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/virtualNetwork1/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert", + "properties": { + "provisioningState": "Succeeded", + "publicCertData": "*****" + } + } + ], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp", + "properties": { + "provisioningState": "Succeeded", + "port": 443 + } + }, + { + "name": "appgwfp80", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + }, + { + "name": "appgwhttplistener", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp80" + }, + "protocol": "Http" + } + } + ], + "urlPathMaps": [ + { + "name": "pathMap1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1", + "properties": { + "provisioningState": "Succeeded", + "defaultBackendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "defaultBackendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "defaultRewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + }, + "pathRules": [ + { + "name": "apiPaths", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1/pathRules/apiPaths", + "properties": { + "provisioningState": "Succeeded", + "paths": [ + "/api", + "/v1/api" + ], + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + } + ] + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwrule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "priority": 10, + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + }, + "rewriteRuleSet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1" + } + } + }, + { + "name": "appgwPathBasedRule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/requestRoutingRules/appgwPathBasedRule", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "PathBasedRouting", + "priority": 20, + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhttplistener" + }, + "urlPathMap": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/urlPathMaps/pathMap1" + } + } + } + ], + "rewriteRuleSets": [ + { + "name": "rewriteRuleSet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/rewriteRuleSets/rewriteRuleSet1", + "properties": { + "provisioningState": "Succeeded", + "rewriteRules": [ + { + "name": "Set X-Forwarded-For", + "ruleSequence": 102, + "conditions": [ + { + "variable": "http_req_Authorization", + "pattern": "^Bearer", + "ignoreCase": true, + "negate": false + } + ], + "actionSet": { + "requestHeaderConfigurations": [ + { + "headerName": "X-Forwarded-For", + "headerValue": "{var_remote-addr}" + } + ], + "responseHeaderConfigurations": [ + { + "headerName": "Strict-Transport-Security", + "headerValue": "max-age=31536000" + } + ], + "urlConfiguration": { + "modifiedPath": "/abc", + "modifiedQueryString": "x=y&a=b", + "reroute": false + } + } + } + ] + } + } + ], + "probes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayList.json new file mode 100644 index 000000000000..6e7aff728de5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayList.json @@ -0,0 +1,125 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "properties": { + "data": "base64-pfxData", + "password": "pass1" + } + } + ], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "properties": { + "port": 443 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "properties": { + "backendAddresses": [ + { + "ipAddress": "10.0.1.1" + }, + { + "ipAddress": "10.0.1.2" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "properties": { + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "properties": { + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayListAll.json new file mode 100644 index 000000000000..a3904587f150 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayListAll.json @@ -0,0 +1,124 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "appgw", + "type": "Microsoft.Network/applicationGateways", + "location": "southcentralus", + "properties": { + "sku": { + "name": "Standard_Medium", + "tier": "Standard", + "capacity": 3 + }, + "gatewayIPConfigurations": [ + { + "name": "appgwipc", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/appgwsubnet" + } + } + } + ], + "sslCertificates": [ + { + "name": "sslcert", + "properties": { + "data": "base64-pfxData", + "password": "pass1" + } + } + ], + "frontendIPConfigurations": [ + { + "name": "appgwfip", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/appgwpip" + } + } + } + ], + "frontendPorts": [ + { + "name": "appgwfp", + "properties": { + "port": 443 + } + } + ], + "backendAddressPools": [ + { + "name": "appgwpool", + "properties": { + "backendAddresses": [ + { + "ipAddress": "10.0.1.1" + }, + { + "ipAddress": "10.0.1.2" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "appgwbhs", + "properties": { + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "appgwhl", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendIPConfigurations/appgwfip" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/frontendPorts/appgwfp" + }, + "protocol": "Https", + "sslCertificate": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/sslCertificates/sslcert" + }, + "requireServerNameIndication": false + } + } + ], + "requestRoutingRules": [ + { + "name": "appgwrule", + "properties": { + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/httpListeners/appgwhl" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendAddressPools/appgwpool" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/appgw/backendHttpSettingsCollection/appgwbhs" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayStart.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayStart.json new file mode 100644 index 000000000000..d4cb6f10a481 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayStart.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayStop.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayStop.json new file mode 100644 index 000000000000..d4cb6f10a481 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayStop.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "appgw" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayUpdateTags.json new file mode 100644 index 000000000000..3b32fb564df1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationGatewayUpdateTags.json @@ -0,0 +1,148 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationGatewayName": "AppGw", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "AppGw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw", + "type": "Microsoft.Network/applicationGateways", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "sku": { + "name": "Standard_Small", + "tier": "Standard", + "capacity": 2 + }, + "operationalState": "Running", + "gatewayIPConfigurations": [ + { + "name": "GatewayIp01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/gatewayIPConfigurations/GatewayIp01", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/subnet1" + } + } + } + ], + "sslCertificates": [], + "authenticationCertificates": [], + "frontendIPConfigurations": [ + { + "name": "FrontEndConfig01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendIPConfigurations/FrontEndConfig01", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/publicIp1" + } + } + } + ], + "frontendPorts": [ + { + "name": "FrontEndPort01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendPorts/FrontEndPort01", + "properties": { + "provisioningState": "Succeeded", + "port": 80 + } + } + ], + "backendAddressPools": [ + { + "name": "Pool01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendAddressPools/Pool01", + "properties": { + "provisioningState": "Succeeded", + "backendAddresses": [ + { + "ipAddress": "10.10.10.1" + }, + { + "ipAddress": "10.10.10.2" + }, + { + "ipAddress": "10.10.10.3" + } + ] + } + } + ], + "backendHttpSettingsCollection": [ + { + "name": "PoolSetting01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendHttpSettingsCollection/PoolSetting01", + "properties": { + "provisioningState": "Succeeded", + "port": 80, + "protocol": "Http", + "cookieBasedAffinity": "Disabled", + "pickHostNameFromBackendAddress": false, + "requestTimeout": 30 + } + } + ], + "httpListeners": [ + { + "name": "listener1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/httpListeners/listener1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendIPConfigurations/FrontEndConfig01" + }, + "frontendPort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/frontendPorts/FrontEndPort01" + }, + "protocol": "Http", + "requireServerNameIndication": false + } + } + ], + "urlPathMaps": [], + "requestRoutingRules": [ + { + "name": "Rule01", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/requestRoutingRules/Rule01", + "properties": { + "provisioningState": "Succeeded", + "ruleType": "Basic", + "httpListener": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/httpListeners/listener1" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendAddressPools/Pool01" + }, + "backendHttpSettings": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationGateways/AppGw/backendHttpSettingsCollection/PoolSetting01" + } + } + } + ], + "probes": [], + "redirectConfigurations": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupCreate.json new file mode 100644 index 000000000000..3a0d33214f26 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupCreate.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg", + "parameters": { + "location": "westus", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + }, + "201": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupDelete.json new file mode 100644 index 000000000000..b5a3b2a764e7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupGet.json new file mode 100644 index 000000000000..713a847c6512 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg" + }, + "responses": { + "200": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupList.json new file mode 100644 index 000000000000..fa5806de0f2a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupList.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg1", + "name": "asg1", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg2", + "name": "asg2", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupListAll.json new file mode 100644 index 000000000000..5990e74b6c75 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupListAll.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg1", + "name": "asg1", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/asg2", + "name": "asg2", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupUpdateTags.json new file mode 100644 index 000000000000..16a142fc6898 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ApplicationSecurityGroupUpdateTags.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "applicationSecurityGroupName": "test-asg", + "location": "westus", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-asg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/applicationSecurityGroups/test-asg", + "type": "Microsoft.Network/applicationSecurityGroups", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AutoApprovedPrivateLinkServicesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AutoApprovedPrivateLinkServicesGet.json new file mode 100644 index 000000000000..3e6f4df03fd0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AutoApprovedPrivateLinkServicesGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "location": "regionName", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1" + }, + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2" + }, + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls3" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json new file mode 100644 index 000000000000..359e7556ba83 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "location": "regionName", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1" + }, + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2" + }, + { + "privateLinkService": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls3" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailableDelegationsResourceGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailableDelegationsResourceGroupGet.json new file mode 100644 index 000000000000..2c1ae208cd77 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailableDelegationsResourceGroupGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "location": "westcentralus", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Provider.resourceType", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/availableDelegations/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availableDelegations", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [ + "Microsoft.Network/resource/action" + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailableDelegationsSubscriptionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailableDelegationsSubscriptionGet.json new file mode 100644 index 000000000000..20894f01b703 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailableDelegationsSubscriptionGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "location": "westcentralus", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Provider.resourceType", + "id": "/subscriptions/subId/providers/Microsoft.Network/availableDelegations/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availableDelegations", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [ + "Microsoft.Network/resource/action" + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailablePrivateEndpointTypesGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailablePrivateEndpointTypesGet.json new file mode 100644 index 000000000000..c4f5938cb19d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailablePrivateEndpointTypesGet.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "location": "regionName", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/providers/Microsoft.Network/availablePrivateEndpointTypes/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availablePrivateEndpointTypes", + "resourceName": "Microsoft.Provider/resourceType" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailablePrivateEndpointTypesResourceGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailablePrivateEndpointTypesResourceGroupGet.json new file mode 100644 index 000000000000..e70916514911 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailablePrivateEndpointTypesResourceGroupGet.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "location": "regionName", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/availablePrivateEndpointTypes/Microsoft.Provider.resourceType", + "type": "Microsoft.Network/availablePrivateEndpointTypes", + "resourceName": "Microsoft.Provider/resourceType" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailableServiceAliasesList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailableServiceAliasesList.json new file mode 100644 index 000000000000..4c55da9d47ea --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailableServiceAliasesList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "location": "westcentralus", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "servicesAzure", + "id": "/subscriptions/subId/providers/Microsoft.Network/AvailableServiceAliases/servicesAzure", + "type": "Microsoft.Network/AvailableServiceAliases", + "resourceName": "/services/Azure" + }, + { + "name": "servicesAzureManagedInstance", + "id": "/subscriptions/subId/providers/Microsoft.Network/AvailableServiceAliases/servicesAzureManagedInstance", + "type": "Microsoft.Network/AvailableServiceAliases", + "resourceName": "/services/Azure/ManagedInstance" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailableServiceAliasesListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailableServiceAliasesListByResourceGroup.json new file mode 100644 index 000000000000..e584a5f4d7b3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AvailableServiceAliasesListByResourceGroup.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "location": "westcentralus", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "servicesAzure", + "id": "/subscriptions/subId/providers/Microsoft.Network/AvailableServiceAliases/servicesAzure", + "type": "Microsoft.Network/AvailableServiceAliases", + "resourceName": "/services/Azure" + }, + { + "name": "servicesAzureManagedInstance", + "id": "/subscriptions/subId/providers/Microsoft.Network/AvailableServiceAliases/servicesAzureManagedInstance", + "type": "Microsoft.Network/AvailableServiceAliases", + "resourceName": "/services/Azure/ManagedInstance" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallDelete.json new file mode 100644 index 000000000000..08edaac039cc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallFqdnTagsListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallFqdnTagsListBySubscription.json new file mode 100644 index 000000000000..65c6ada60e7e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallFqdnTagsListBySubscription.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "azfwfqdntag", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewallFqdnTags/azfwfqdntag", + "type": "Microsoft.Network/azureFirewallFqdnTags", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "fqdnTagName": "azfwfqdntag" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGet.json new file mode 100644 index 000000000000..fcb7204b5341 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGet.json @@ -0,0 +1,177 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGetWithAdditionalProperties.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGetWithAdditionalProperties.json new file mode 100644 index 000000000000..1333f6c761c9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGetWithAdditionalProperties.json @@ -0,0 +1,179 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGetWithIpGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGetWithIpGroups.json new file mode 100644 index 000000000000..5a5589801522 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGetWithIpGroups.json @@ -0,0 +1,189 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups2" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups3" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [ + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "changeNumber": "5" + }, + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups2", + "changeNumber": "4" + }, + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups3", + "changeNumber": "1" + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGetWithMgmtSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGetWithMgmtSubnet.json new file mode 100644 index 000000000000..cad6320291c0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGetWithMgmtSubnet.json @@ -0,0 +1,190 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "managementIpConfiguration": { + "name": "azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallManagementSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/managementPipName" + } + } + }, + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGetWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGetWithZones.json new file mode 100644 index 000000000000..79a2d6e231a4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallGetWithZones.json @@ -0,0 +1,181 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall" + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US 2", + "zones": [ + "1", + "2", + "3" + ], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallListByResourceGroup.json new file mode 100644 index 000000000000..120c5e68660a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallListByResourceGroup.json @@ -0,0 +1,193 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "managementIpConfiguration": { + "name": "azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallManagementSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/managementPipName" + } + } + }, + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallListBySubscription.json new file mode 100644 index 000000000000..32cac10ce0d8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallListBySubscription.json @@ -0,0 +1,192 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "managementIpConfiguration": { + "name": "azureFirewallMgmtIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewallgw/ipConfigurations/azureFirewallMgmtIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallManagementSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/managementPipName" + } + } + }, + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPut.json new file mode 100644 index 000000000000..6d86cef671a8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPut.json @@ -0,0 +1,497 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedPort": "880", + "translatedFqdn": "internalhttpserver" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "protocols": [ + "TCP" + ], + "destinationFqdns": [ + "www.amazon.com" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": {} + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutInHub.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutInHub.json new file mode 100644 index 000000000000..df68fb461819 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutInHub.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_Hub", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "firewallPolicy": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/policy1" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_Hub", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "firewallPolicy": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/policy1" + }, + "hubIpAddresses": { + "publicIPAddresses": [ + { + "address": "13.73.240.12" + } + ], + "privateIPAddress": "10.0.0.0" + }, + "additionalProperties": {} + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_Hub", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "firewallPolicy": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/policy1" + }, + "hubIpAddresses": { + "publicIPAddresses": [ + { + "address": "13.73.240.12" + } + ], + "privateIPAddress": "10.0.0.0" + }, + "ipGroups": [], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutWithAdditionalProperties.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutWithAdditionalProperties.json new file mode 100644 index 000000000000..236614acac99 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutWithAdditionalProperties.json @@ -0,0 +1,507 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedPort": "880", + "translatedFqdn": "internalhttpserver" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "protocols": [ + "TCP" + ], + "destinationFqdns": [ + "www.amazon.com" + ] + } + ] + } + } + ], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": { + "key1": "value1", + "key2": "value2" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutWithIpGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutWithIpGroups.json new file mode 100644 index 000000000000..53e151603744 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutWithIpGroups.json @@ -0,0 +1,505 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedPort": "880", + "translatedFqdn": "internalhttpserver" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "protocols": [ + "TCP" + ], + "destinationFqdns": [ + "www.amazon.com" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationIpGroups": [ + "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups2" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [ + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "changeNumber": "5" + }, + { + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups2", + "changeNumber": "4" + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutWithMgmtSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutWithMgmtSubnet.json new file mode 100644 index 000000000000..4cb216b3787b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutWithMgmtSubnet.json @@ -0,0 +1,507 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "zones": [], + "properties": { + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "managementIpConfiguration": { + "name": "azureFirewallMgmtIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallManagementSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/managementPipName" + } + } + }, + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedPort": "880", + "translatedFqdn": "internalhttpserver" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "protocols": [ + "TCP" + ], + "destinationFqdns": [ + "www.amazon.com" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "zones": [], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutWithZones.json new file mode 100644 index 000000000000..66e9493f38c7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallPutWithZones.json @@ -0,0 +1,509 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "azureFirewallName": "azurefirewall", + "parameters": { + "location": "West US 2", + "tags": { + "key1": "value1" + }, + "zones": [ + "1", + "2", + "3" + ], + "properties": { + "threatIntelMode": "Alert", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US 2", + "zones": [ + "1", + "2", + "3" + ], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "ipGroups": [], + "additionalProperties": {} + } + } + }, + "201": { + "body": { + "name": "azurefirewall", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall", + "type": "Microsoft.Network/azureFirewalls", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US 2", + "zones": [ + "1", + "2", + "3" + ], + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "sku": { + "name": "AZFW_VNet", + "tier": "Standard" + }, + "threatIntelMode": "Alert", + "ipConfigurations": [ + { + "name": "azureFirewallIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azfirewallgw/ipConfigurations/azureFirewallIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.0", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/AzureFirewallSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ], + "applicationRuleCollections": [ + { + "name": "apprulecoll", + "properties": { + "priority": 110, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "rule1", + "description": "Deny inbound rule", + "protocols": [ + { + "protocolType": "Https", + "port": 443 + } + ], + "targetFqdns": [ + "www.test.com" + ], + "sourceAddresses": [ + "216.58.216.164", + "10.0.0.0/24" + ] + } + ] + } + } + ], + "natRuleCollections": [ + { + "name": "natrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Dnat" + }, + "rules": [ + { + "name": "DNAT-HTTPS-traffic", + "description": "D-NAT all outbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "443" + ], + "protocols": [ + "TCP" + ], + "translatedAddress": "1.2.3.5", + "translatedPort": "8443" + }, + { + "name": "DNAT-HTTP-traffic-With-FQDN", + "description": "D-NAT all inbound web traffic for inspection", + "sourceAddresses": [ + "*" + ], + "destinationAddresses": [ + "1.2.3.4" + ], + "destinationPorts": [ + "80" + ], + "protocols": [ + "TCP" + ], + "translatedFqdn": "internalhttpserver", + "translatedPort": "880" + } + ] + } + } + ], + "networkRuleCollections": [ + { + "name": "netrulecoll", + "properties": { + "priority": 112, + "action": { + "type": "Deny" + }, + "rules": [ + { + "name": "L4-traffic", + "description": "Block traffic based on source IPs and ports", + "sourceAddresses": [ + "192.168.1.1-192.168.1.12", + "10.1.4.12-10.1.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationAddresses": [ + "*" + ], + "protocols": [ + "TCP" + ] + }, + { + "name": "L4-traffic-with-FQDN", + "description": "Block traffic based on source IPs and ports to amazon", + "sourceAddresses": [ + "10.2.4.12-10.2.4.255" + ], + "destinationPorts": [ + "443-444", + "8443" + ], + "destinationFqdns": [ + "www.amazon.com" + ], + "protocols": [ + "TCP" + ] + } + ] + } + } + ], + "additionalProperties": {} + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallUpdateTags.json new file mode 100644 index 000000000000..a4423f65d143 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/AzureFirewallUpdateTags.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "azfwtest", + "azureFirewallName": "fw1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "fw1", + "id": "/subscriptions/subid/resourceGroups/azfwtest/providers/Microsoft.Network/azureFirewalls/fw1", + "type": "Microsoft.Network/azureFirewalls", + "location": "brazilsouth", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostDelete.json new file mode 100644 index 000000000000..aefa8052ced0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostGet.json new file mode 100644 index 000000000000..319dbcf20c11 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostGet.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant'" + }, + "responses": { + "200": { + "body": { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostListByResourceGroup.json new file mode 100644 index 000000000000..001552382dc4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostListByResourceGroup.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostListBySubscription.json new file mode 100644 index 000000000000..60d705c3bdda --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostListBySubscription.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostPut.json new file mode 100644 index 000000000000..33c68df45aa4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionHostPut.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant'", + "parameters": { + "properties": { + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + }, + "201": { + "body": { + "name": "bastionhost'", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant'", + "type": "Microsoft.Network/bastionHosts", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "properties": { + "provisioningState": "Succeeded", + "dnsName": "bst-9d89d361-100e-4c01-b92d-466548c476dc.bastion.azure.com", + "ipConfigurations": [ + { + "name": "bastionHostIpConfiguration", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/bastionHosts/bastionhosttenant/bastionHostIpConfigurations/bastionHostIpConfiguration", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/bastionHosts/bastionHostIpConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/BastionHostSubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pipName" + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionSessionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionSessionDelete.json new file mode 100644 index 000000000000..3dd04515acb4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionSessionDelete.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "sessionIds": [ + "session1", + "session2", + "session3" + ] + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sessionId": "session1", + "message": "session session1 invalidated!", + "state": "Disconnected" + }, + { + "sessionId": "session2", + "message": "session session2 could not be disconnected!", + "state": "Failed" + }, + { + "sessionId": "session3", + "message": "session session3 not found!", + "state": "NotFound" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionSessionsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionSessionsList.json new file mode 100644 index 000000000000..08596aa2b40b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionSessionsList.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sessionId": "sessionId", + "startTime": "2019-1-1T12:00:00.0000Z", + "targetSubscriptionId": "subid", + "resourceType": "VM", + "targetHostName": "vm01", + "targetResourceGroup": "rg1", + "userName": "user", + "targetIpAddress": "1.1.1.1", + "protocol": "SSH", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm01", + "sessionDurationInMins": 0.0 + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionShareableLinkCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionShareableLinkCreate.json new file mode 100644 index 000000000000..f7cf0a86c89b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionShareableLinkCreate.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "bslRequest": { + "vms": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + } + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm1", + "createdAt": "2019-10-18T12:00:00.0000Z" + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm2", + "createdAt": "2019-10-17T12:00:00.0000Z" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionShareableLinkDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionShareableLinkDelete.json new file mode 100644 index 000000000000..ce4234885a9f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionShareableLinkDelete.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "bslRequest": { + "vms": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + } + } + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionShareableLinkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionShareableLinkGet.json new file mode 100644 index 000000000000..22a39a57af8a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/BastionShareableLinkGet.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "bastionHostName": "bastionhosttenant", + "bslRequest": { + "vms": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + } + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm1", + "createdAt": "2019-10-18T12:00:00.0000Z" + }, + { + "vm": { + "id": "/subscriptions/subid/resourceGroups/rgx/providers/Microsoft.Compute/virtualMachines/vm2" + }, + "bsl": "http://bst-bastionhostid.bastion.com/api/shareable-url/tokenvm2", + "createdAt": "2019-10-17T12:00:00.0000Z" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/CheckDnsNameAvailability.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/CheckDnsNameAvailability.json new file mode 100644 index 000000000000..68c497bab39c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/CheckDnsNameAvailability.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "location": "westus", + "domainNameLabel": "testdns" + }, + "responses": { + "200": { + "body": { + "available": false + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/CheckPrivateLinkServiceVisibility.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/CheckPrivateLinkServiceVisibility.json new file mode 100644 index 000000000000..8a4799272297 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/CheckPrivateLinkServiceVisibility.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "location": "westus", + "parameters": { + "privateLinkServiceAlias": "mypls.00000000-0000-0000-0000-000000000000.azure.privatelinkservice" + } + }, + "responses": { + "200": { + "body": { + "visible": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json new file mode 100644 index 000000000000..737a5872527e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "location": "westus", + "resourceGroupName": "rg1", + "parameters": { + "privateLinkServiceAlias": "mypls.00000000-0000-0000-0000-000000000000.azure.privatelinkservice" + } + }, + "responses": { + "200": { + "body": { + "visible": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosCustomPolicyCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosCustomPolicyCreate.json new file mode 100644 index 000000000000..602967a1823f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosCustomPolicyCreate.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy", + "parameters": { + "location": "centraluseuap", + "properties": { + "protocolCustomSettings": [ + { + "protocol": "Tcp" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [], + "protocolCustomSettings": [ + { + "protocol": "Tcp", + "triggerRateOverride": "20000" + } + ] + } + } + }, + "201": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [], + "protocolCustomSettings": [ + { + "protocol": "Tcp", + "triggerRateOverride": "20000" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosCustomPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosCustomPolicyDelete.json new file mode 100644 index 000000000000..1bc94b196e45 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosCustomPolicyDelete.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy", + "parameters": { + "properties": {} + } + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosCustomPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosCustomPolicyGet.json new file mode 100644 index 000000000000..b11154d743e9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosCustomPolicyGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy" + }, + "responses": { + "200": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosCustomPolicyUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosCustomPolicyUpdateTags.json new file mode 100644 index 000000000000..d081dd2956a6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosCustomPolicyUpdateTags.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosCustomPolicyName": "test-ddos-custom-policy", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ddos-custom-policy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosCustomPolicies/test-ddos-custom-policy", + "type": "Microsoft.Network/ddosCustomPolicies", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "publicIPAddresses": [], + "protocolCustomSettings": [ + { + "protocol": "Tcp", + "triggerRateOverride": "20000" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanCreate.json new file mode 100644 index 000000000000..14ee19aee323 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanCreate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan", + "parameters": { + "location": "westus", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [] + } + } + }, + "201": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanDelete.json new file mode 100644 index 000000000000..214e474bd60f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanGet.json new file mode 100644 index 000000000000..911888d881b2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan" + }, + "responses": { + "200": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanList.json new file mode 100644 index 000000000000..22ed0f07f4b6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanList.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan1", + "name": "plan1", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan2", + "name": "plan2", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanListAll.json new file mode 100644 index 000000000000..e43ae9afb4b3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanListAll.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan1", + "name": "plan1", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet1" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/plan2", + "name": "plan2", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet2" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet3" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanUpdateTags.json new file mode 100644 index 000000000000..5cd9463acaab --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DdosProtectionPlanUpdateTags.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ddosProtectionPlanName": "test-plan", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-plan", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ddosProtectionPlans/test-plan", + "type": "Microsoft.Network/ddosProtectionPlans", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworks": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DefaultSecurityRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DefaultSecurityRuleGet.json new file mode 100644 index 000000000000..6fd1694b7c7a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DefaultSecurityRuleGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "networkSecurityGroupName": "nsg1", + "defaultSecurityRuleName": "AllowVnetInBound" + }, + "responses": { + "200": { + "body": { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DefaultSecurityRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DefaultSecurityRuleList.json new file mode 100644 index 000000000000..fefb28dc478a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/DefaultSecurityRuleList.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "networkSecurityGroupName": "nsg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound", + "sourcePortRanges": [], + "destinationPortRanges": [], + "sourceAddressPrefixes": [], + "destinationAddressPrefixes": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/EndpointServicesList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/EndpointServicesList.json new file mode 100644 index 000000000000..53254b8af9ce --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/EndpointServicesList.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Storage", + "id": "/subscriptions/subid/providers/Microsoft.Network/virtualNetworkEndpointServices/Microsoft.Storage", + "type": "Microsoft.Network/virtualNetworkEndpointServices" + }, + { + "name": "Microsoft.Sql", + "id": "/subscriptions/subid/providers/Microsoft.Network/virtualNetworkEndpointServices/Microsoft.Sql", + "type": "Microsoft.Network/virtualNetworkEndpointServices" + }, + { + "name": "Microsoft.AzureActiveDirectory", + "id": "/subscriptions/subid/providers/Microsoft.Network/virtualNetworkEndpointServices/Microsoft.AzureActiveDirectory", + "type": "Microsoft.Network/virtualNetworkEndpointServices" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitARPTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitARPTableList.json new file mode 100644 index 000000000000..1f18a6bfcbc3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitARPTableList.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "peeringName": "peeringName", + "devicePath": "devicePath" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "age": 0, + "interface": "Microsoft", + "ipAddress": "IPAddress", + "macAddress": "macAddress" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitAuthorizationCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitAuthorizationCreate.json new file mode 100644 index 000000000000..f71cde481179 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitAuthorizationCreate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "authorizationName": "authorizatinName", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "authorizationParameters": { + "properties": {} + } + }, + "responses": { + "201": { + "body": { + "name": "authorizationName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/authorizationName", + "etag": "W/\"e22dd4b2-4c24-44cf-b702-70a472b62914\"", + "properties": { + "provisioningState": "Updating", + "authorizationUseStatus": "Available" + } + } + }, + "200": { + "body": { + "name": "authorizationName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/authorizationName", + "etag": "W/\"e22dd4b2-4c24-44cf-b702-70a472b62914\"", + "properties": { + "provisioningState": "Updating", + "authorizationUseStatus": "Available" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitAuthorizationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitAuthorizationDelete.json new file mode 100644 index 000000000000..8fcf7ef7ca1b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitAuthorizationDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "authorizationName": "authorizationName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitAuthorizationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitAuthorizationGet.json new file mode 100644 index 000000000000..58d0f72cb048 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitAuthorizationGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "authorizationName": "authorizationName" + }, + "responses": { + "200": { + "body": { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authKey", + "authorizationUseStatus": "Available" + }, + "type": "Microsoft.Network/expressRouteCircuits/authorizations" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitAuthorizationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitAuthorizationList.json new file mode 100644 index 000000000000..c096827343dc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitAuthorizationList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authKey", + "authorizationUseStatus": "Available" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitConnectionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitConnectionCreate.json new file mode 100644 index 000000000000..d2c0970b69cd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitConnectionCreate.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "connectionName": "circuitConnectionUSAUS", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering", + "type": "Microsoft.Network/expressRouteCircuits/peerings/connections", + "expressRouteCircuitConnectionParameters": { + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/29", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::/125" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::1/125", + "circuitConnectionStatus": "Connected" + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::1/125", + "circuitConnectionStatus": "Connected" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitConnectionDelete.json new file mode 100644 index 000000000000..46f3ce64f632 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitConnectionDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering", + "connectionName": "circuitConnectionUSAUS", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitConnectionGet.json new file mode 100644 index 000000000000..3a65f9c94c4c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitConnectionGet.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "connectionName": "circuitConnectionUSAUS", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::1/125", + "circuitConnectionStatus": "Connected" + } + }, + "type": "Microsoft.Network/expressRouteCircuits/peerings/connections" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitConnectionList.json new file mode 100644 index 000000000000..bf0c3f966cc5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitConnectionList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSAUS", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSAUS", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/dedharcktpeer/providers/Microsoft.Network/expressRouteCircuits/dedharcktremote/peerings/AzurePrivatePeering" + }, + "authorizationKey": "946a1918-b7a2-4917-b43c-8c4cdaee006a", + "addressPrefix": "10.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded", + "ipv6CircuitConnectionConfig": { + "addressPrefix": "aa:bb::1/125", + "circuitConnectionStatus": "Connected" + } + } + }, + { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/connections/circuitConnectionUSEUR", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "circuitConnectionUSEUR", + "properties": { + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharcktinit/providers/Microsoft.Network/expressRouteCircuits/dedharcktlocal/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/dedharckteurope/providers/Microsoft.Network/expressRouteCircuits/dedharcktams/peerings/AzurePrivatePeering" + }, + "addressPrefix": "20.0.0.0/24", + "circuitConnectionStatus": "Connected", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitCreate.json new file mode 100644 index 000000000000..b0ace4805e53 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitCreate.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "parameters": { + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + }, + "properties": { + "authorizations": [], + "peerings": [], + "allowClassicOperations": false, + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 200 + } + }, + "location": "Brazil South" + } + }, + "responses": { + "201": { + "body": { + "name": "circuitName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "Brazil South", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "serviceKey": "a1410692-0000-4ceb-b94a-b90b94d398d1", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + }, + "200": { + "body": { + "name": "circuitName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "Brazil South", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "serviceKey": "a1410692-0000-4ceb-b94a-b90b94d398d1", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json new file mode 100644 index 000000000000..2cbe2d59f726 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitCreateOnExpressRoutePort.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "type": "Microsoft.Network/expressRouteCircuits", + "circuitName": "expressRouteCircuit1", + "parameters": { + "location": "westus", + "sku": { + "name": "Premium_MeteredData", + "tier": "Premium", + "family": "MeteredData" + }, + "properties": { + "expressRoutePort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName" + }, + "bandwidthInGbps": 10 + } + } + }, + "responses": { + "200": { + "body": { + "name": "expressRouteCircuit1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/expressRouteCircuit1", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "expressRoutePort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName" + }, + "bandwidthInGbps": 10, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "20", + "serviceKey": "d281f746-ee01-4d00-8b0a-edec4833772b", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Premium_MeteredData", + "tier": "Premium", + "family": "MeteredData" + } + } + }, + "201": { + "body": { + "name": "expressRouteCircuit1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/expressRouteCircuit1", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "expressRoutePort": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName" + }, + "bandwidthInGbps": 10, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "20", + "serviceKey": "d281f746-ee01-4d00-8b0a-edec4833772b", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Premium_MeteredData", + "tier": "Premium", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitDelete.json new file mode 100644 index 000000000000..3593838ab989 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitGet.json new file mode 100644 index 000000000000..abaa2fad12ae --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "circuitName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "serviceKey": "a1410692-0000-4ceb-b94a-b90b94d398d1", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitListByResourceGroup.json new file mode 100644 index 000000000000..e40636666015 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitListByResourceGroup.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "circuitName1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "113", + "serviceKey": "a1410692-ed3b-4ceb-b94a-b90b95d398d1", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + }, + { + "name": "circuitName2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2/authorizations/MyAuthorization2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "", + "serviceKey": "6569625a-9ba4-498b-9719-14d778eef609", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitListBySubscription.json new file mode 100644 index 000000000000..0cd8e6b1f160 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitListBySubscription.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "circuitName1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/authorizations/MyAuthorization1", + "etag": "W/\"832b28c3-f5fd-4d2a-a2cb-6e4a2fe452b3\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "113", + "serviceKey": "a1410692-ed3b-4ceb-b94a-b90b95d398d1", + "serviceProviderProvisioningState": "Provisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + }, + { + "name": "circuitName2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peerings": [], + "authorizations": [ + { + "name": "MyAuthorization2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName2/authorizations/MyAuthorization2", + "etag": "W/\"e33c875f-48df-4a91-b7d3-eb95b5ddbb89\"", + "properties": { + "provisioningState": "Succeeded", + "authorizationKey": "authkey", + "authorizationUseStatus": "Available" + } + } + ], + "serviceProviderProperties": { + "serviceProviderName": "providerName", + "peeringLocation": "peeringLocation", + "bandwidthInMbps": 200 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "", + "serviceKey": "6569625a-9ba4-498b-9719-14d778eef609", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringCreate.json new file mode 100644 index 000000000000..258c8bcf4687 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringCreate.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "peeringParameters": { + "properties": { + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "vlanId": 200 + } + } + }, + "responses": { + "201": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + }, + "expressRouteConnection": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName" + } + } + } + }, + "200": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + }, + "expressRouteConnection": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringDelete.json new file mode 100644 index 000000000000..9d608557a288 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "peeringName": "peeringName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringGet.json new file mode 100644 index 000000000000..7b5808e4cd7a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringGet.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "peeringName": "MicrosoftPeering" + }, + "responses": { + "200": { + "body": { + "name": "MicrosoftPeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/MicrosoftPeering", + "etag": "W/\"b2a25b98-2e6d-4d46-87f2-089de5f6fdf9\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "MicrosoftPeering", + "azureASN": 12076, + "peerASN": 100, + "primaryPeerAddressPrefix": "123.0.0.0/30", + "secondaryPeerAddressPrefix": "123.0.0.4/30", + "primaryAzurePort": "A51-TEST-06GMR-CIS-1-PRI-A", + "secondaryAzurePort": "A51-TEST-06GMR-CIS-2-SEC-A", + "state": "Enabled", + "vlanId": 300, + "gatewayManagerEtag": "103", + "lastModifiedBy": "Customer", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "123.1.0.0/24" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + }, + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "3FFE:FFFF:0:CD31::/120" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + } + }, + "routeFilter": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName" + } + }, + "type": "Microsoft.Network/expressRouteCircuits/peerings" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringList.json new file mode 100644 index 000000000000..853b7f24a3ee --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringList.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "MicrosoftPeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/MicrosoftPeering", + "etag": "W/\"b2a25b98-2e6d-4d46-87f2-089de5f6fdf9\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "MicrosoftPeering", + "azureASN": 12076, + "peerASN": 100, + "primaryPeerAddressPrefix": "123.0.0.0/30", + "secondaryPeerAddressPrefix": "123.0.0.4/30", + "primaryAzurePort": "A51-TEST-06GMR-CIS-1-PRI-A", + "secondaryAzurePort": "A51-TEST-06GMR-CIS-2-SEC-A", + "state": "Enabled", + "vlanId": 300, + "gatewayManagerEtag": "103", + "lastModifiedBy": "Customer", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "123.1.0.0/24" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + }, + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled", + "microsoftPeeringConfig": { + "advertisedPublicPrefixes": [ + "3FFE:FFFF:0:CD31::/120" + ], + "advertisedCommunities": [], + "advertisedPublicPrefixesState": "ValidationNeeded", + "customerASN": 23, + "legacyMode": 0, + "routingRegistryName": "ARIN" + } + }, + "expressRouteConnection": "" + } + }, + { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering", + "etag": "W/\"b2a25b98-2e6d-4d46-87f2-089de5f6fdf9\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 100, + "primaryPeerAddressPrefix": "10.0.0.0/30", + "secondaryPeerAddressPrefix": "10.0.0.4/30", + "primaryAzurePort": "A51-TEST-06GMR-CIS-1-PRI-A", + "secondaryAzurePort": "A51-TEST-06GMR-CIS-2-SEC-A", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "103", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + }, + "expressRouteConnection": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringStats.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringStats.json new file mode 100644 index 000000000000..c803a5dbe1c1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitPeeringStats.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "peeringName": "peeringName" + }, + "responses": { + "200": { + "body": { + "primarybytesIn": 537408, + "primarybytesOut": 44032550, + "secondarybytesIn": 0, + "secondarybytesOut": 39002500 + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitRouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitRouteTableList.json new file mode 100644 index 000000000000..4e8d6053f27f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitRouteTableList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "peeringName": "peeringName", + "devicePath": "devicePath" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "network": "", + "nextHop": "", + "locPrf": "", + "weight": 0, + "path": "" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitRouteTableSummaryList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitRouteTableSummaryList.json new file mode 100644 index 000000000000..47ca6cc93983 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitRouteTableSummaryList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "peeringName": "peeringName", + "devicePath": "devicePath" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "neighbor": "100.65.171.1", + "v": 4, + "as": 9583, + "upDown": "never", + "statePfxRcd": "Idle" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitStats.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitStats.json new file mode 100644 index 000000000000..04764169f203 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitStats.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "circuitName": "circuitName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "primarybytesIn": 537408, + "primarybytesOut": 44032550, + "secondarybytesIn": 0, + "secondarybytesOut": 39002500 + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitUpdateTags.json new file mode 100644 index 000000000000..ea85cd858887 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCircuitUpdateTags.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "ertest", + "circuitName": "er1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "er1", + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1", + "type": "Microsoft.Network/expressRouteCircuits", + "location": "brazilsouth", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Failed", + "peerings": [], + "authorizations": [], + "serviceProviderProperties": { + "serviceProviderName": "Equinix", + "peeringLocation": "Silicon Valley", + "bandwidthInMbps": 1000 + }, + "circuitProvisioningState": "Enabled", + "allowClassicOperations": false, + "gatewayManagerEtag": "", + "serviceKey": "0b392c2e-1e9d-46d7-b5e0-9ce90ca6b60c", + "serviceProviderProvisioningState": "NotProvisioned" + }, + "sku": { + "name": "Standard_MeteredData", + "tier": "Standard", + "family": "MeteredData" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteConnectionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteConnectionCreate.json new file mode 100644 index 000000000000..88f06b1f1b3b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteConnectionCreate.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "expressRouteGatewayName": "gateway-2", + "resourceGroupName": "resourceGroupName", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "connectionName": "connectionName", + "putExpressRouteConnectionParameters": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2/expressRouteConnections/connectionName", + "name": "connectionName", + "properties": { + "routingWeight": 2, + "authorizationKey": "authorizationKey", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 2 + } + } + }, + "201": { + "body": { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 2 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteConnectionDelete.json new file mode 100644 index 000000000000..9f56d1b0c127 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "connectionName": "connectionName", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteConnectionGet.json new file mode 100644 index 000000000000..0feb69a53b4a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteConnectionGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "connectionName": "connectionName" + }, + "responses": { + "200": { + "body": { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 1 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteConnectionList.json new file mode 100644 index 000000000000..aad6a9f4a3a3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteConnectionList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "resourceGroupName": "resourceGroupName", + "expressRouteGatewayName": "expressRouteGatewayName", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "authorizationKey", + "routingWeight": 1 + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json new file mode 100644 index 000000000000..e43f8bf600b8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionBgpPeeringCreate.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "peeringParameters": { + "properties": { + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "vlanId": 200, + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-SiliconValley/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + }, + "200": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-Boydton1DC/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json new file mode 100644 index 000000000000..385c780e87a3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionBgpPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json new file mode 100644 index 000000000000..d4981a744e4d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionBgpPeeringGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-Boydton1DC/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json new file mode 100644 index 000000000000..fde215741756 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionBgpPeeringList.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "AzurePrivatePeering", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-SiliconValley/providers/Microsoft.Network/expressRouteCrossConnections//peerings/AzurePrivatePeering", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peeringType": "AzurePrivatePeering", + "azureASN": 12076, + "peerASN": 200, + "primaryPeerAddressPrefix": "192.168.16.252/30", + "secondaryPeerAddressPrefix": "192.168.18.252/30", + "primaryAzurePort": "", + "secondaryAzurePort": "", + "state": "Enabled", + "vlanId": 200, + "gatewayManagerEtag": "", + "lastModifiedBy": "Customer", + "ipv6PeeringConfig": { + "primaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126", + "secondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126", + "state": "Enabled" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionGet.json new file mode 100644 index 000000000000..fbb7f2ba5b33 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "CrossConnection-SiliconValley", + "crossConnectionName": "" + }, + "responses": { + "200": { + "body": { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnection-SiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "etag": "W/\"c0e6477e-8150-4d4f-9bf6-bb10e6acb63a\"", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionList.json new file mode 100644 index 000000000000..d8bd3414c541 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionList.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json new file mode 100644 index 000000000000..0acf2d9b2cce --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionListByResourceGroup.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "resourceGroupName": "CrossConnection-SiliconValley", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSilicon-Valley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionUpdate.json new file mode 100644 index 000000000000..26f5cc13e4a6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionUpdate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "CrossConnection-SiliconValley", + "crossConnectionName": "", + "parameters": { + "properties": { + "serviceProviderProvisioningState": "NotProvisioned" + } + } + }, + "responses": { + "200": { + "body": { + "name": "", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "properties": { + "provisioningState": "Enabled", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionUpdateTags.json new file mode 100644 index 000000000000..be405f27337e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionUpdateTags.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "CrossConnection-SiliconValley", + "crossConnectionName": "", + "crossConnectionParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "er1", + "id": "/subscriptions/subid/resourceGroups/CrossConnectionSiliconValley/providers/Microsoft.Network/expressRouteCrossConnections/", + "type": "Microsoft.Network/expressRouteCrossConnections", + "location": "brazilsouth", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Failed", + "expressRouteCircuit": { + "id": "/subscriptions/subid/resourceGroups/ertest/providers/Microsoft.Network/expressRouteCircuits/er1" + }, + "peerings": [], + "peeringLocation": "SiliconValley", + "bandwidthInMbps": 1000, + "primaryAzurePort": "bvtazureixp01", + "secondaryAzurePort": "bvtazureixp01", + "sTag": 2, + "serviceProviderProvisioningState": "NotProvisioned" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionsArpTable.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionsArpTable.json new file mode 100644 index 000000000000..3c7411562c73 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionsArpTable.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "devicePath": "primary", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "age": 0, + "interface": "Microsoft", + "ipAddress": "192.116.14.254", + "macAddress": "885a.9269.9110" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionsRouteTable.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionsRouteTable.json new file mode 100644 index 000000000000..8d251d3fa565 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionsRouteTable.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "devicePath": "primary", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "network": "10.6.0.0/16", + "nextHop": "10.6.1.12", + "locPrf": "", + "weight": 0, + "path": "65514" + }, + { + "network": "10.7.0.0/16", + "nextHop": "10.7.1.13", + "locPrf": "", + "weight": 0, + "path": "65514" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json new file mode 100644 index 000000000000..788da257db8b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteCrossConnectionsRouteTableSummary.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "peeringName": "AzurePrivatePeering", + "crossConnectionName": "", + "resourceGroupName": "CrossConnection-SiliconValley", + "devicePath": "primary", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "neighbor": "10.6.1.112", + "asn": 65514, + "upDown": "1d14h", + "stateOrPrefixesReceived": "Active" + }, + { + "neighbor": "10.6.1.113", + "asn": 65514, + "upDown": "1d14h", + "stateOrPrefixesReceived": "1" + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayCreate.json new file mode 100644 index 000000000000..46fdb9838e37 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayCreate.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "expressRouteGatewayName": "gateway-2", + "subscriptionId": "subid", + "resourceGroupName": "resourceGroupName", + "api-version": "2020-03-01", + "putExpressRouteGatewayParameters": { + "location": "westus", + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupId/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 3 + } + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "gateway-2", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 3 + } + } + } + } + }, + "200": { + "body": { + "name": "gateway-2", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/gateway-2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 3 + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayDelete.json new file mode 100644 index 000000000000..f10567a10492 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayGet.json new file mode 100644 index 000000000000..9efed44ebdca --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "expressRouteGatewayName": "expressRouteGatewayName", + "resourceGroupName": "resourceGroupName", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "expressRouteGatewayName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayListByResourceGroup.json new file mode 100644 index 000000000000..7b228a0a015d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayListByResourceGroup.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "resourceGroupName": "resourceGroupName", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "expressRouteGatewayName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 2 + } + }, + "expressRouteConnections": [ + { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "f28e9c99-78d8-4248-a855-c54cf6beb99d", + "routingWeight": 1, + "enableInternetSecurity": false + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayListBySubscription.json new file mode 100644 index 000000000000..da410c89e09a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteGatewayListBySubscription.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "expressRouteGatewayName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "westus", + "type": "Microsoft.Network/expressRouteGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/virtualHubs/virtualHubName" + }, + "autoScaleConfiguration": { + "bounds": { + "min": 2 + } + }, + "expressRouteConnections": [ + { + "name": "connectionName", + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteGateways/expressRouteGatewayName/expressRouteConnections/connectionName", + "properties": { + "provisioningState": "Provisioned", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid/resourceGroups/resourceGroupName/providers/Microsoft.Network/expressRouteCircuits/circuitName/peerings/AzurePrivatePeering" + }, + "authorizationKey": "f28e9c99-78d8-4248-a855-c54cf6beb99d", + "routingWeight": 1, + "enableInternetSecurity": false + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteLinkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteLinkGet.json new file mode 100644 index 000000000000..80e0eb925780 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteLinkGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "linkName": "linkName" + }, + "responses": { + "200": { + "body": { + "name": "linkName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/linkName", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteLinkList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteLinkList.json new file mode 100644 index 000000000000..a7223541dbac --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteLinkList.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "name": "link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortCreate.json new file mode 100644 index 000000000000..653525d86ada --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortCreate.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "parameters": { + "location": "westus", + "properties": { + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "encapsulation": "QinQ" + } + } + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + }, + "201": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortDelete.json new file mode 100644 index 000000000000..1953805d06ce --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortGet.json new file mode 100644 index 000000000000..cf09a8094cad --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName" + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortList.json new file mode 100644 index 000000000000..4e2ec356123a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortList.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortListByResourceGroup.json new file mode 100644 index 000000000000..2d948e4ce277 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortListByResourceGroup.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-03-01", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortUpdateLink.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortUpdateLink.json new file mode 100644 index 000000000000..35fc35e0f35a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortUpdateLink.json @@ -0,0 +1,120 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "parameters": { + "location": "westus", + "properties": { + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "encapsulation": "QinQ", + "links": [ + { + "name": "link1", + "properties": { + "adminState": "Enabled" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Enabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + }, + "201": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Enabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortUpdateTags.json new file mode 100644 index 000000000000..ea0401d4edf3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortUpdateTags.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "expressRoutePortName": "portName", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "portName", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName", + "type": "Microsoft.Network/expressRoutePorts", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "peeringLocation": "peeringLocationName", + "bandwidthInGbps": 100, + "provisionedBandwidthInGbps": 0.0, + "mtu": "1500", + "encapsulation": "QinQ", + "etherType": "0x8100", + "allocationDate": "Friday, July 1, 2018", + "links": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link1", + "name": "link1", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router1", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId1", + "rackId": "rackId1", + "connectorType": "LC", + "adminState": "Disabled" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/expressRoutePorts/portName/links/link2", + "name": "link2", + "properties": { + "provisioningState": "Succeeded", + "routerName": "router2", + "interfaceName": "Ethernet 0/0", + "patchPanelId": "patchPanelId2", + "rackId": "rackId2", + "connectorType": "LC", + "adminState": "Disabled" + } + } + ], + "circuits": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortsLocationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortsLocationGet.json new file mode 100644 index 000000000000..e008b5aa0714 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortsLocationGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-03-01", + "locationName": "locationName" + }, + "responses": { + "200": { + "body": { + "name": "locationName", + "id": "/subscriptions/subid/providers/Microsoft.Network/expressRoutePortsLocations/locationName", + "type": "Microsoft.Network/expressRoutePortsLocations", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "address": "123 Main Street, City, State, Zip", + "contact": "email@address.com", + "availableBandwidths": [ + { + "offerName": "100 Gbps", + "valueInGbps": 100 + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortsLocationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortsLocationList.json new file mode 100644 index 000000000000..a7490eccb342 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRoutePortsLocationList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "locationName", + "id": "/subscriptions/subid/providers/Microsoft.Network/expressRoutePortsLocations/locationName", + "type": "Microsoft.Network/expressRoutePortsLocations", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "address": "123 Main Street, City, State, Zip", + "contact": "email@address.com", + "availableBandwidths": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteProviderList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteProviderList.json new file mode 100644 index 000000000000..ad5805a628d0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ExpressRouteProviderList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "providerName", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/expressRouteServiceProviders/", + "type": "Microsoft.Network/expressRouteServiceProviders", + "properties": { + "provisioningState": "Succeeded", + "peeringLocations": [ + "peeringLocation1", + "peeringLocation2" + ], + "bandwidthsOffered": [ + { + "offerName": "50Mbps", + "valueInMbps": 50 + }, + { + "offerName": "100Mbps", + "valueInMbps": 100 + }, + { + "offerName": "200Mbps", + "valueInMbps": 200 + }, + { + "offerName": "500Mbps", + "valueInMbps": 500 + }, + { + "offerName": "1Gbps", + "valueInMbps": 1000 + }, + { + "offerName": "2Gbps", + "valueInMbps": 2000 + }, + { + "offerName": "5Gbps", + "valueInMbps": 5000 + }, + { + "offerName": "10Gbps", + "valueInMbps": 10000 + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyDelete.json new file mode 100644 index 000000000000..3b56f2e02a7b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyGet.json new file mode 100644 index 000000000000..f8ae7f3cec8f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy" + }, + "responses": { + "200": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1" + } + ], + "firewalls": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyListByResourceGroup.json new file mode 100644 index 000000000000..dccd1c0302a1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyListByResourceGroup.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1" + } + ], + "firewalls": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyListBySubscription.json new file mode 100644 index 000000000000..f8b11dd9ed14 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyListBySubscription.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1" + } + ], + "firewalls": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyPut.json new file mode 100644 index 000000000000..34cb7a728ebd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyPut.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "threatIntelMode": "Alert" + } + } + }, + "responses": { + "200": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/rulegroup1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/rulegroup2" + } + ], + "firewalls": [] + } + } + }, + "201": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "type": "Microsoft.Network/firewallPolicies", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "threatIntelMode": "Alert", + "ruleGroups": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/rulegroup2" + } + ], + "firewalls": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupDelete.json new file mode 100644 index 000000000000..5ae3482a24ef --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "ruleGroupName": "ruleGroup1", + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupGet.json new file mode 100644 index 000000000000..4dd2d9ac6ecd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupGet.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "ruleGroupName": "ruleGroup1", + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "priority": 200, + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupList.json new file mode 100644 index 000000000000..7f0bf11682f3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "name": "Example-Filter-Rule", + "ruleType": "FirewallPolicyFilterRule", + "priority": 120, + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "name": "network-condition-1", + "ruleConditionType": "NetworkRuleCondition", + "description": "Network rule condition", + "destinationAddresses": [ + "*" + ], + "sourceAddresses": [ + "10.1.25.0/24" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupPut.json new file mode 100644 index 000000000000..c05058e3ded2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupPut.json @@ -0,0 +1,119 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy", + "ruleGroupName": "ruleGroup1", + "parameters": { + "properties": { + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + }, + "201": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "sourceAddresses": [ + "10.1.25.0/24" + ], + "destinationAddresses": [ + "*" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupWithIpGroupsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupWithIpGroupsGet.json new file mode 100644 index 000000000000..ddbef1573d0b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupWithIpGroupsGet.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "ruleGroupName": "ruleGroup1", + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "priority": 200, + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ], + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupWithIpGroupsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupWithIpGroupsList.json new file mode 100644 index 000000000000..3be8dc7bed2c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupWithIpGroupsList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "firewallPolicyName": "firewallPolicy", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "name": "Example-Filter-Rule", + "ruleType": "FirewallPolicyFilterRule", + "priority": 120, + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "name": "network-condition-1", + "ruleConditionType": "NetworkRuleCondition", + "description": "Network rule condition", + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ], + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ] + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupWithIpGroupsPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupWithIpGroupsPut.json new file mode 100644 index 000000000000..2af3473ac790 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/FirewallPolicyRuleGroupWithIpGroupsPut.json @@ -0,0 +1,119 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "firewallPolicyName": "firewallPolicy", + "ruleGroupName": "ruleGroup1", + "parameters": { + "properties": { + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ], + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ] + } + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "ruleGroup1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy/ruleGroups/ruleGroup1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ], + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ] + } + ] + } + ] + } + } + }, + "201": { + "body": { + "name": "firewallPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/firewallPolicies/firewallPolicy", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "priority": 110, + "rules": [ + { + "ruleType": "FirewallPolicyFilterRule", + "name": "Example-Filter-Rule", + "action": { + "type": "Deny" + }, + "ruleConditions": [ + { + "ruleConditionType": "NetworkRuleCondition", + "name": "network-condition1", + "ipProtocols": [ + "TCP" + ], + "destinationPorts": [ + "*" + ], + "sourceIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups1" + ], + "destinationIpGroups": [ + "/subscriptions/subid/providers/Microsoft.Network/resourceGroup/rg1/ipGroups/ipGroups2" + ] + } + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json new file mode 100644 index 000000000000..bf1758cbf3aa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualWANName": "wan1", + "vpnClientParams": { + "vpnServerConfigurationResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnconfig1", + "authenticationMethod": "EAPTLS" + } + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/GetVirtualWanVpnServerConfigurations.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/GetVirtualWanVpnServerConfigurations.json new file mode 100644 index 000000000000..c2a371aa08b7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/GetVirtualWanVpnServerConfigurations.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "virtualWANName": "wan1" + }, + "responses": { + "200": { + "description": "Request successful.", + "body": { + "vpnServerConfigurationResourceIds": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnconfig1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnconfig2" + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/HubVirtualNetworkConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/HubVirtualNetworkConnectionGet.json new file mode 100644 index 000000000000..07627ec300c1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/HubVirtualNetworkConnectionGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "connectionName": "connection1", + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/virtualHubVnetConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/HubVirtualNetworkConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/HubVirtualNetworkConnectionList.json new file mode 100644 index 000000000000..112fdbd70370 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/HubVirtualNetworkConnectionList.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "connectionName": "connection1", + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/virtualHubVnetConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + }, + { + "name": "connection2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/virtualHubVnetConnections/connection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/InboundNatRuleCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/InboundNatRuleCreate.json new file mode 100644 index 000000000000..04e05245d9f9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/InboundNatRuleCreate.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1", + "inboundNatRuleName": "natRule1.1", + "inboundNatRuleParameters": { + "properties": { + "protocol": "Tcp", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "idleTimeoutInMinutes": 4, + "enableTcpReset": false, + "enableFloatingIP": false + } + } + }, + "responses": { + "200": { + "body": { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": false, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + }, + "201": { + "body": { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": false, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/InboundNatRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/InboundNatRuleDelete.json new file mode 100644 index 000000000000..7e8f1bafb36c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/InboundNatRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1", + "inboundNatRuleName": "natRule1.1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/InboundNatRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/InboundNatRuleGet.json new file mode 100644 index 000000000000..e14ad9319aac --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/InboundNatRuleGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1", + "inboundNatRuleName": "natRule1.1" + }, + "responses": { + "200": { + "body": { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": true, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/InboundNatRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/InboundNatRuleList.json new file mode 100644 index 000000000000..ccac2e565bc2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/InboundNatRuleList.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "loadBalancerName": "lb1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "natRule1.1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3390, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": true, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + }, + { + "name": "natRule1.3", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.3", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1" + }, + "frontendPort": 3392, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 4, + "protocol": "Tcp", + "enableTcpReset": true, + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/nic1/ipConfigurations/ip1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationCreate.json new file mode 100644 index 000000000000..6be0a996bd9d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationCreate.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ipAllocationName": "test-ipallocation", + "parameters": { + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + }, + "location": "centraluseuap" + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipallocation", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "ipamAllocationId": "916d3b28-663f-448b-9abc-1bea9d5fed8f", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + } + } + }, + "201": { + "body": { + "name": "test-ipallocation", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "ipamAllocationId": "916d3b28-663f-448b-9abc-1bea9d5fed8f", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationDelete.json new file mode 100644 index 000000000000..075792a983d4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ipAllocationName": "test-ipallocation" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationGet.json new file mode 100644 index 000000000000..88375c6a027b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ipAllocationName": "test-ipallocation" + }, + "responses": { + "200": { + "body": { + "name": "test-ipallocation", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "ipamAllocationId": "916d3b28-663f-448b-9abc-1bea9d5fed8f", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationList.json new file mode 100644 index 000000000000..ab00ae175cbc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationList.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-ipallocation1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation1", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "ipamAllocationId": "916d3b28-663f-448b-9abc-1bea9d5fed8f", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + } + }, + { + "name": "test-ipallocation2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation2", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.6.0/24", + "ipamAllocationId": "57dc7256-2ff7-43f2-b9c8-85a70b5c6408", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet2" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationListByResourceGroup.json new file mode 100644 index 000000000000..a3a239bfc13f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationListByResourceGroup.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-ipallocation1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation1", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "ipamAllocationId": "916d3b28-663f-448b-9abc-1bea9d5fed8f", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + } + }, + { + "name": "test-ipallocation2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation2", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "properties": { + "type": "Hypernet", + "prefix": "3.2.6.0/24", + "ipamAllocationId": "57dc7256-2ff7-43f2-b9c8-85a70b5c6408", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet2" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationUpdateTags.json new file mode 100644 index 000000000000..eba83f6620e0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpAllocationUpdateTags.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "ipAllocationName": "test-ipallocation", + "location": "centraluseuap", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipallocation", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/IpAllocations/test-ipallocation", + "type": "Microsoft.Network/IpAllocations", + "location": "centraluseuap", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "type": "Hypernet", + "prefix": "3.2.5.0/24", + "ipamAllocationId": "916d3b28-663f-448b-9abc-1bea9d5fed8f", + "allocationTags": { + "VNetID": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/HypernetVnet1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsCreate.json new file mode 100644 index 000000000000..e9efceef3424 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsCreate.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "myResourceGroup", + "ipGroupsName": "ipGroups1", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + }, + "201": { + "body": { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsDelete.json new file mode 100644 index 000000000000..06f6b6a90cc9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "myResourceGroup", + "ipGroupsName": "ipGroups1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsGet.json new file mode 100644 index 000000000000..33f247bfba2b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "myResourceGroup", + "ipGroupsName": "ipGroups1" + }, + "responses": { + "200": { + "body": { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsListByResourceGroup.json new file mode 100644 index 000000000000..8f42a7eb9c2f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsListByResourceGroup.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "myResourceGroup" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + }, + { + "name": "ipGroups2", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups", + "type": "Microsoft.Network/ipGroups", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "14.64.39.16/32", + "41.74.146.80/31", + "42.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsListBySubscription.json new file mode 100644 index 000000000000..abec22333ff2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsListBySubscription.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "iptag1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup1/ipGroups", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + }, + { + "name": "iptag2", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup2/ipGroups", + "type": "Microsoft.Network/ipGroups", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "14.64.39.16/32", + "41.74.146.80/31", + "42.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsUpdateTags.json new file mode 100644 index 000000000000..facd8958f5bd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/IpGroupsUpdateTags.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "ipGroupsName": "ipGroups1", + "resourceGroupName": "myResourceGroup", + "api-version": "2020-03-01", + "subscriptionId": "subId", + "parameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "ipGroups1", + "id": "/subscriptions/subId/providers/Microsoft.Network/resourceGroup/myResourceGroup/ipGroups/ipGroups1", + "type": "Microsoft.Network/ipGroups", + "location": "westcentralus", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "ipAddresses": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ], + "firewalls": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/azureFirewalls/azurefirewall" + } + ] + }, + "etag": "w/\\00000000-0000-0000-0000-000000000000\\" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerBackendAddressPoolGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerBackendAddressPoolGet.json new file mode 100644 index 000000000000..5c257bfaf635 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerBackendAddressPoolGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "backendAddressPoolName": "backend", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "name": "backend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/backend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "backendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic/ipConfigurations/default-ip-config" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerBackendAddressPoolList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerBackendAddressPoolList.json new file mode 100644 index 000000000000..a31a6f1beabd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerBackendAddressPoolList.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "backend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/backend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "backendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic/ipConfigurations/default-ip-config" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreate.json new file mode 100644 index 000000000000..a76a6e1605c6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreate.json @@ -0,0 +1,339 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "inboundNatPools": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreateStandardSku.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreateStandardSku.json new file mode 100644 index 000000000000..9b40f47080ee --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreateStandardSku.json @@ -0,0 +1,339 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreateWithInboundNatPool.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreateWithInboundNatPool.json new file mode 100644 index 000000000000..6132246032c7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreateWithInboundNatPool.json @@ -0,0 +1,180 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "properties": { + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet" + } + }, + "name": "test", + "zones": [], + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test" + } + ], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "outboundRules": [], + "inboundNatPools": [ + { + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test" + }, + "protocol": "Tcp", + "frontendPortRangeStart": 8080, + "frontendPortRangeEnd": 8085, + "backendPort": 8888, + "idleTimeoutInMinutes": 10, + "enableFloatingIP": true, + "enableTcpReset": true + }, + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet" + }, + "inboundNatPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test" + } + ] + } + } + ], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "outboundRules": [], + "inboundNatPools": [ + { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test", + "type": "Microsoft.Network/loadBalancers/inboundNatPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendPortRangeStart": 8080, + "frontendPortRangeEnd": 8085, + "backendPort": 8888, + "idleTimeoutInMinutes": 10, + "enableFloatingIP": true, + "protocol": "Tcp", + "enableTcpReset": true, + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test" + } + } + } + ] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet" + }, + "inboundNatPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test" + } + ] + } + } + ], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "outboundRules": [], + "inboundNatPools": [ + { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test", + "type": "Microsoft.Network/loadBalancers/inboundNatPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendPortRangeStart": 8080, + "frontendPortRangeEnd": 8085, + "backendPort": 8888, + "idleTimeoutInMinutes": 10, + "enableFloatingIP": true, + "protocol": "Tcp", + "enableTcpReset": true, + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test" + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreateWithOutboundRules.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreateWithOutboundRules.json new file mode 100644 index 000000000000..80b4a4774923 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreateWithOutboundRules.json @@ -0,0 +1,423 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + } + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "protocol": "Tcp", + "loadDistribution": "Default", + "frontendPort": 80, + "backendPort": 80, + "idleTimeoutInMinutes": 15, + "enableFloatingIP": true, + "disableOutboundSnat": true + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [ + { + "name": "rule1", + "properties": { + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "protocol": "All" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ], + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "privateIPAddressVersion": "IPv4" + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "disableOutboundSnat": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "outboundRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1", + "type": "Microsoft.Network/loadBalancers/outboundRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "allocatedOutboundPorts": 1024, + "protocol": "All", + "enableTcpReset": false, + "idleTimeoutInMinutes": 4, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ] + } + } + ], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/pip" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ], + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "privateIPAddressVersion": "IPv4" + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "outboundRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false, + "loadDistribution": "Default", + "disableOutboundSnat": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": false + } + } + ], + "outboundRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/outboundRules/rule1", + "type": "Microsoft.Network/loadBalancers/outboundRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "allocatedOutboundPorts": 1024, + "protocol": "All", + "enableTcpReset": false, + "idleTimeoutInMinutes": 4, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ] + } + } + ], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreateWithZones.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreateWithZones.json new file mode 100644 index 000000000000..d085974f070e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerCreateWithZones.json @@ -0,0 +1,348 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + }, + "zones": [ + "1" + ] + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "properties": {} + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + } + } + } + ], + "probes": [ + { + "name": "probe-lb", + "properties": { + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2 + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "properties": { + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "inboundNatPools": [], + "outboundRules": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + }, + "201": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "eastus", + "sku": { + "name": "Standard" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "type": "Microsoft.Network/loadBalancers/probes", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerDelete.json new file mode 100644 index 000000000000..800183d0cc42 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerFrontendIPConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerFrontendIPConfigurationGet.json new file mode 100644 index 000000000000..6ff5cb69c8d3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerFrontendIPConfigurationGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "frontendIPConfigurationName": "frontend", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "name": "frontend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/frontend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerFrontendIPConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerFrontendIPConfigurationList.json new file mode 100644 index 000000000000..a55bb5539b8a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerFrontendIPConfigurationList.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "resourceGroupName": "testrg", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "loadBalancerName": "lb" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "frontend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/frontend", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerGet.json new file mode 100644 index 000000000000..165844d1ffca --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerGet.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb" + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true + } + } + ], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerList.json new file mode 100644 index 000000000000..5e699df33310 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerList.json @@ -0,0 +1,161 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "felb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "belb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb" + } + } + } + ], + "probes": [ + { + "name": "prlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "inrlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true + } + } + ], + "inboundNatPools": [] + } + }, + { + "name": "lb2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb2", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "inboundNatPools": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerListAll.json new file mode 100644 index 000000000000..e148a775fbd1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerListAll.json @@ -0,0 +1,160 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [ + { + "name": "felb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/frontendIPConfigurations", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "belb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/backendAddressPools", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb" + } + } + } + ], + "probes": [ + { + "name": "prlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "inrlb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers/inboundNatRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true + } + } + ], + "inboundNatPools": [] + } + }, + { + "name": "lb3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/loadBalancers/lb3", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "sku": { + "name": "Basic" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "frontendIPConfigurations": [], + "backendAddressPools": [], + "loadBalancingRules": [], + "probes": [], + "inboundNatRules": [], + "inboundNatPools": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerLoadBalancingRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerLoadBalancingRuleGet.json new file mode 100644 index 000000000000..e7504148f141 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerLoadBalancingRuleGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "loadBalancingRuleName": "rule1", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/loadBalancingRules/rule1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/probes/probe1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerLoadBalancingRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerLoadBalancingRuleList.json new file mode 100644 index 000000000000..7d6b92af532e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerLoadBalancingRuleList.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/loadBalancingRules/rule1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/loadBalancingRules", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/probes/probe1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerNetworkInterfaceListSimple.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerNetworkInterfaceListSimple.json new file mode 100644 index 000000000000..61e7b4fa0abb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerNetworkInterfaceListSimple.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "mynic", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/ipConfigurations/ipconfig1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/myVirtualNetwork/subnets/frontendSubnet" + }, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/bepool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inbound1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": false, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerNetworkInterfaceListVmss.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerNetworkInterfaceListVmss.json new file mode 100644 index 000000000000..b314f67d304a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerNetworkInterfaceListVmss.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "vmss1Nic", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/vmss1Nic", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "vmss1IpConfig", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/vmss1Nic/ipConfigurations/vmss1IpConfig", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vmss1Vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/bepool" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/natpool.0" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "aaaaaaaaaaaaaaaaaaaaaaaaaa.dx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0" + } + } + }, + { + "name": "vmss1Nic", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/vmss1Nic", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "vmss1IpConfig", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/vmss1Nic/ipConfigurations/vmss1IpConfig", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vmss1Vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/bepool" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/natpool.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "aaaaaaaaaaaaaaaaaaaaaaaaaa.dx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerOutboundRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerOutboundRuleGet.json new file mode 100644 index 000000000000..1941d98d8a50 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerOutboundRuleGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "outboundRuleName": "rule1", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/outboundRules/rule1", + "type": "Microsoft.Network/loadBalancers/outboundRules", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + } + ], + "allocatedOutboundPorts": 64, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerOutboundRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerOutboundRuleList.json new file mode 100644 index 000000000000..79cd6235eb75 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerOutboundRuleList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb1", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/outboundRules/rule1", + "type": "Microsoft.Network/loadBalancers/outboundRules", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend" + } + ], + "allocatedOutboundPorts": 64, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "enableTcpReset": true, + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerProbeGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerProbeGet.json new file mode 100644 index 000000000000..8dd38c985c15 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerProbeGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "probeName": "probe1", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "name": "probe1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/probes/probe1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerProbeList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerProbeList.json new file mode 100644 index 000000000000..1e1cf9247b9a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerProbeList.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "loadBalancerName": "lb", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "prlb", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/probes/prlb", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/loadBalancers/probes", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerUpdateTags.json new file mode 100644 index 000000000000..d192173065d9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LoadBalancerUpdateTags.json @@ -0,0 +1,132 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "loadBalancerName": "lb", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfigurations": [ + { + "name": "fe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "be-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb", + "properties": { + "provisioningState": "Succeeded", + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rulelb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb" + }, + "disableOutboundSnat": false + } + } + ], + "probes": [ + { + "name": "probe-lb", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "in-nat-rule", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": true, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp" + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayCreate.json new file mode 100644 index 000000000000..1b28bf359a4c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayCreate.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "localgw", + "parameters": { + "properties": { + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "11.12.13.14", + "fqdn": "site1.contoso.com" + }, + "location": "Central US" + } + }, + "responses": { + "201": { + "body": { + "name": "localgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "11.12.13.14" + } + } + }, + "200": { + "body": { + "name": "localgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "11.12.13.14" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayDelete.json new file mode 100644 index 000000000000..8de050152187 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "localgw" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayGet.json new file mode 100644 index 000000000000..c261ec7206e4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "localgw" + }, + "responses": { + "200": { + "body": { + "name": "localgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayList.json new file mode 100644 index 000000000000..197790205b0c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayList.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "localgw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + } + }, + { + "name": "localgw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/localNetworkGateways", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.2.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayUpdateTags.json new file mode 100644 index 000000000000..749e9f9c683c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/LocalNetworkGatewayUpdateTags.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "localNetworkGatewayName": "lgw", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "lgw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/lgw", + "type": "Microsoft.Network/localNetworkGateways", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "localNetworkAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "gatewayIpAddress": "12.0.0.1" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayCreateOrUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayCreateOrUpdate.json new file mode 100644 index 000000000000..76f0ddd13e34 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayCreateOrUpdate.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natgateway", + "parameters": { + "location": "westus", + "sku": { + "name": "Standard" + }, + "properties": { + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ] + } + } + }, + "responses": { + "200": { + "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" + } + }, + "201": { + "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": { + "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" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayDelete.json new file mode 100644 index 000000000000..9e457e05fb5d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natGateway" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayGet.json new file mode 100644 index 000000000000..0b0cf42656e3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayGet.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natGateway" + }, + "responses": { + "200": { + "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" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayList.json new file mode 100644 index 000000000000..5a1166c95180 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayList.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-natGateway", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/natGateway/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" + }, + { + "name": "test-natGateway2", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/natGateway/test-natGateway2", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayListAll.json new file mode 100644 index 000000000000..6064af941cdb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayListAll.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "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" + }, + { + "name": "test-natGateway2", + "sku": { + "name": "Standard" + }, + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/natGatewayes/test-natGateway2", + "location": "westus", + "properties": { + "idleTimeoutInMinutes": 5, + "provisioningState": "Succeeded", + "publicIpAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ], + "publicIpPrefixes": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPPrefixes/PublicIpPrefix1" + } + ], + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1" + } + ] + }, + "type": "Microsoft.Network/natGateways" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayUpdateTags.json new file mode 100644 index 000000000000..a5e407ce3f8c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NatGatewayUpdateTags.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "natGatewayName": "test-natGateway", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "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" + } + ] + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "type": "Microsoft.Network/natGateways" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceCreate.json new file mode 100644 index 000000000000..cf9132e1bb8e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceCreate.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic", + "parameters": { + "properties": { + "enableAcceleratedNetworking": true, + "ipConfigurations": [ + { + "name": "ipconfig1", + "properties": { + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + } + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + }, + "201": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceDelete.json new file mode 100644 index 000000000000..8650a24daebd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceEffectiveNSGList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceEffectiveNSGList.json new file mode 100644 index 000000000000..f5b46952ee48 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceEffectiveNSGList.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "nic1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/test-nsg" + }, + "association": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "networkInterface": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1" + } + }, + "effectiveSecurityRules": [ + { + "name": "securityRules/rule1", + "protocol": "Tcp", + "sourcePortRange": "456-456", + "destinationPortRange": "6579-6579", + "sourceAddressPrefix": "0.0.0.0/32", + "destinationAddressPrefix": "0.0.0.0/32", + "access": "Allow", + "priority": 234, + "direction": "Inbound" + }, + { + "name": "securityRules/default-allow-rdp", + "protocol": "Tcp", + "sourcePortRange": "0-65535", + "destinationPortRange": "3389-3389", + "sourceAddressPrefix": "1.1.1.1/32", + "destinationAddressPrefix": "0.0.0.0/0", + "access": "Allow", + "priority": 1000, + "direction": "Inbound" + }, + { + "name": "defaultSecurityRules/AllowInternetOutBound", + "protocol": "All", + "sourcePortRange": "0-65535", + "destinationPortRange": "0-65535", + "sourceAddressPrefix": "0.0.0.0/0", + "destinationAddressPrefix": "Internet", + "expandedDestinationAddressPrefix": [ + "32.0.0.0/3", + "4.0.0.0/6", + "2.0.0.0/7", + "1.0.0.0/8" + ], + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + ] + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceEffectiveRouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceEffectiveRouteTableList.json new file mode 100644 index 000000000000..46bcd02daea6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceEffectiveRouteTableList.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "nic1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "172.20.2.0/24" + ], + "nextHopType": "VnetLocal", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "0.0.0.0/0" + ], + "nextHopType": "Internet", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "10.0.0.0/8" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "100.64.0.0/10" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "172.16.0.0/12" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + }, + { + "source": "Default", + "state": "Active", + "addressPrefix": [ + "192.168.0.0/16" + ], + "nextHopType": "None", + "nextHopIpAddress": [] + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceGet.json new file mode 100644 index 000000000000..f982df9b1d81 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceGet.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic" + }, + "responses": { + "200": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "test.bx.internal.cloudapp.net" + }, + "macAddress": "00-0D-3A-1B-C7-21", + "enableAcceleratedNetworking": true, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "type": "Microsoft.Network/networkInterfaces" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceIPConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceIPConfigurationGet.json new file mode 100644 index 000000000000..179a24dcd623 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceIPConfigurationGet.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "mynic", + "ipConfigurationName": "ipconfig1", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/ipConfigurations/ipconfig1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/myVirtualNetwork/subnets/frontendSubnet" + }, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/backendAddressPools/bepool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/inboundNatRules/inbound1" + } + ], + "virtualNetworkTaps": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/vTAP1" + }, + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/vTAP2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceIPConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceIPConfigurationList.json new file mode 100644 index 000000000000..bb87c44917de --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceIPConfigurationList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "nic1", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.4", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnet12/subnets/subnet12" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceList.json new file mode 100644 index 000000000000..41d47b3d78a1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceList.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "test.bx.internal.cloudapp.net" + }, + "macAddress": "00-0D-3A-1B-C7-21", + "enableAcceleratedNetworking": true, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "type": "Microsoft.Network/networkInterfaces" + }, + { + "name": "test-nic2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic2", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic2/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip2" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet2/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceListAll.json new file mode 100644 index 000000000000..4a4cd489076d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceListAll.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "test.bx.internal.cloudapp.net" + }, + "macAddress": "00-0D-3A-1B-C7-21", + "enableAcceleratedNetworking": true, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "type": "Microsoft.Network/networkInterfaces" + }, + { + "name": "test-nic2", + "id": "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/networkInterfaces/test-nic2", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/networkInterfaces/test-nic2/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/publicIPAddresses/test-ip2" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rgnew/providers/Microsoft.Network/virtualNetworks/rgnew-vnet2/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceLoadBalancerList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceLoadBalancerList.json new file mode 100644 index 000000000000..c8f23986430d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceLoadBalancerList.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "nic1", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "lbname1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "type": "Microsoft.Network/loadBalancers", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "frontendIPConfigurations": [ + { + "name": "lbfrontend", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/frontendIPConfigurations/lbfrontend", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/publicIPAddresses/myDynamicPublicIP" + }, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1" + } + ], + "inboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/inboundNatRules/inbound1" + } + ] + } + } + ], + "backendAddressPools": [ + { + "name": "bepool1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/backendAddressPools/bepool1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "backendIPConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1" + } + ], + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1" + } + ] + } + } + ], + "loadBalancingRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 80, + "backendPort": 80, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "loadDistribution": "Default", + "backendAddressPool": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/backendAddressPools/bepool1" + }, + "probe": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/probes/probe1" + } + } + } + ], + "probes": [ + { + "name": "probe1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/probes/probe1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "protocol": "Http", + "port": 80, + "requestPath": "healthcheck.aspx", + "intervalInSeconds": 15, + "numberOfProbes": 2, + "loadBalancingRules": [ + { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/loadBalancingRules/rule1" + } + ] + } + } + ], + "inboundNatRules": [ + { + "name": "inbound1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/inboundNatRules/inbound1", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "properties": { + "provisioningState": "Succeeded", + "frontendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lbname1/frontendIPConfigurations/lbfrontend" + }, + "frontendPort": 3389, + "backendPort": 3389, + "enableFloatingIP": false, + "idleTimeoutInMinutes": 15, + "protocol": "Tcp", + "backendIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1" + } + } + } + ], + "outboundRules": [], + "inboundNatPools": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceTapConfigurationCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceTapConfigurationCreate.json new file mode 100644 index 000000000000..d5ab3645e1f1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceTapConfigurationCreate.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "mynic", + "tapConfigurationName": "tapconfiguration1", + "api-version": "2020-03-01", + "tapConfigurationParameters": { + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + }, + "201": { + "body": { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceTapConfigurationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceTapConfigurationDelete.json new file mode 100644 index 000000000000..5a58fbb8e2b0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceTapConfigurationDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-networkinterface", + "tapConfigurationName": "test-tapconfiguration" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceTapConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceTapConfigurationGet.json new file mode 100644 index 000000000000..30882ec01a81 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceTapConfigurationGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "networkInterfaceName": "mynic", + "tapConfigurationName": "tapconfiguration1", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceTapConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceTapConfigurationList.json new file mode 100644 index 000000000000..414e7a8c7c39 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceTapConfigurationList.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "mynic" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "tapConfiguration1", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/tapConfigurations/tapConfiguration1", + "etag": "etag", + "type": "Microsoft.Network/networkInterfaces/tapConfigurations", + "properties": { + "virtualNetworkTap": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkTaps/testvtap" + }, + "provisioningState": "Succeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceUpdateTags.json new file mode 100644 index 000000000000..1fbc75134de6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkInterfaceUpdateTags.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "test-nic", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-nic", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic", + "location": "eastus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-nic/ipConfigurations/ipconfig1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "172.20.2.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/rg1-vnet/subnets/default" + }, + "primary": true, + "privateIPAddressVersion": "IPv4" + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [] + }, + "enableAcceleratedNetworking": true, + "enableIPForwarding": false + }, + "type": "Microsoft.Network/networkInterfaces" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileCreateConfigOnly.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileCreateConfigOnly.json new file mode 100644 index 000000000000..17d269657079 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileCreateConfigOnly.json @@ -0,0 +1,110 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1", + "parameters": { + "location": "westus", + "properties": { + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "properties": { + "ipConfigurations": [ + { + "name": "ipconfig1", + "properties": { + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfig1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + } + } + }, + "201": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfig1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileDelete.json new file mode 100644 index 000000000000..f3830595a108 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileGetConfigOnly.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileGetConfigOnly.json new file mode 100644 index 000000000000..4cac980adeeb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileGetConfigOnly.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1" + }, + "responses": { + "200": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + }, + { + "name": "ipconfigprofile2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile2", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + }, + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileGetWithContainerNic.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileGetWithContainerNic.json new file mode 100644 index 000000000000..525d1fce720c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileGetWithContainerNic.json @@ -0,0 +1,203 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "networkProfile1" + }, + "responses": { + "200": { + "body": { + "name": "networkProfile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + }, + { + "name": "ipconfigprofile2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile2", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ], + "containerNetworkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth0" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth0" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth0" + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + }, + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ], + "containerNetworkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth1" + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [ + { + "name": "containerGroup1_eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup1" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup1_eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup1_eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup1" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup2_eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup2" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup2_eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup2_eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup2" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup3_eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth0", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup3" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + }, + { + "name": "containerGroup3_eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaces/containerGroup3_eth1", + "etag": "W/\"de9b89d2-83b0-4da3-b488-6ea8b0557edd\"", + "properties": { + "provisioningState": "Succeeded", + "containerNetworkInterfaceConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1" + }, + "container": { + "id": "/subscriptions/subid/resourceGroups/networkProfilesDemo/providers/Microsoft.ContainerInstance/containerGroups/containerGroup3" + }, + "ipConfigurations": [] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaces" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileList.json new file mode 100644 index 000000000000..36853c44be95 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileList.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "name": "networkProfile1", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + }, + { + "name": "ipconfigprofile2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile2", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile2", + "name": "networkProfile2", + "properties": { + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileListAll.json new file mode 100644 index 000000000000..c45130708176 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileListAll.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1", + "name": "networkProfile1", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkProfiles/networkProfile2", + "name": "networkProfile2", + "properties": { + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth1/ipConfigurations/ipconfigprofile3", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileUpdateTags.json new file mode 100644 index 000000000000..7ea23c2b98a0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkProfileUpdateTags.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkProfileName": "test-np", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-np", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/test-np", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "1570d8b6-ab8a-4ad2-81d6-d2799b429cbf", + "containerNetworkInterfaceConfigurations": [ + { + "name": "eth0", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ipconfigprofile1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1", + "etag": "W/\"4d705a71-752f-4e0a-8057-c02b125b1c08\"", + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations/ipConfigurations", + "properties": { + "provisioningState": "Succeeded", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/networkProfileVnet/subnets/networkProfileSubnet1" + } + } + } + ] + }, + "type": "Microsoft.Network/networkProfiles/containerNetworkInterfaceConfigurations" + } + ], + "containerNetworkInterfaces": [] + }, + "type": "Microsoft.Network/networkProfiles", + "location": "centraluseuap" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupCreate.json new file mode 100644 index 000000000000..80453d062f4b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupCreate.json @@ -0,0 +1,233 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "parameters": { + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + }, + "201": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupCreateWithRule.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupCreateWithRule.json new file mode 100644 index 000000000000..3ec4c8c156b6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupCreateWithRule.json @@ -0,0 +1,282 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "parameters": { + "properties": { + "securityRules": [ + { + "name": "rule1", + "properties": { + "protocol": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "destinationPortRange": "80", + "sourcePortRange": "*", + "priority": 130, + "direction": "Inbound" + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + }, + "201": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupDelete.json new file mode 100644 index 000000000000..b64e6dd81deb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupGet.json new file mode 100644 index 000000000000..fdcdf5025691 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupGet.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg" + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupList.json new file mode 100644 index 000000000000..5a31f4c9ca31 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupList.json @@ -0,0 +1,231 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nsg1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + }, + { + "name": "nsg3", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupListAll.json new file mode 100644 index 000000000000..73b7c139aa1e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupListAll.json @@ -0,0 +1,230 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nsg1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + }, + { + "name": "nsg3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg3/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupRuleCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupRuleCreate.json new file mode 100644 index 000000000000..3d7c7d4c5249 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupRuleCreate.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "securityRuleName": "rule1", + "securityRuleParameters": { + "properties": { + "protocol": "*", + "sourceAddressPrefix": "10.0.0.0/8", + "destinationAddressPrefix": "11.0.0.0/8", + "access": "Deny", + "destinationPortRange": "8080", + "sourcePortRange": "*", + "priority": 100, + "direction": "Outbound" + } + } + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "8080", + "sourceAddressPrefix": "10.0.0.0/8", + "destinationAddressPrefix": "11.0.0.0/8", + "access": "Deny", + "priority": 100, + "direction": "Outbound" + } + } + }, + "201": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "8080", + "sourceAddressPrefix": "10.0.0.0/8", + "destinationAddressPrefix": "11.0.0.0/8", + "access": "Deny", + "priority": 100, + "direction": "Outbound" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupRuleDelete.json new file mode 100644 index 000000000000..de4da21d817c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "securityRuleName": "rule1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupRuleGet.json new file mode 100644 index 000000000000..ae1412a4543e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupRuleGet.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "securityRuleName": "rule1" + }, + "responses": { + "200": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupRuleList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupRuleList.json new file mode 100644 index 000000000000..fce39f47edd2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupRuleList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "provisioningState": "Succeeded", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "80", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 130, + "direction": "Inbound" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupUpdateTags.json new file mode 100644 index 000000000000..e88aa062bb61 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkSecurityGroupUpdateTags.json @@ -0,0 +1,130 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkSecurityGroupName": "testnsg", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg", + "type": "Microsoft.Network/networkSecurityGroups", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "securityRules": [], + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + }, + { + "name": "AllowAzureLoadBalancerInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowAzureLoadBalancerInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from azure load balancer", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "AzureLoadBalancer", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 65001, + "direction": "Inbound" + } + }, + { + "name": "DenyAllInBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllInBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all inbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Inbound" + } + }, + { + "name": "AllowVnetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowVnetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Outbound" + } + }, + { + "name": "AllowInternetOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/AllowInternetOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow outbound traffic from all VMs to Internet", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "Internet", + "access": "Allow", + "priority": 65001, + "direction": "Outbound" + } + }, + { + "name": "DenyAllOutBound", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/defaultSecurityRules/DenyAllOutBound", + "properties": { + "provisioningState": "Succeeded", + "description": "Deny all outbound traffic", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceDelete.json new file mode 100644 index 000000000000..c2e3c6dc523a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceGet.json new file mode 100644 index 000000000000..3bf49cc26cf1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva" + }, + "responses": { + "200": { + "body": { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceListByResourceGroup.json new file mode 100644 index 000000000000..4f10e51be6c9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceListByResourceGroup.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceListBySubscription.json new file mode 100644 index 000000000000..e48e568454bf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceListBySubscription.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualAppliancePut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualAppliancePut.json new file mode 100644 index 000000000000..112a6c5043f0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualAppliancePut.json @@ -0,0 +1,133 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva", + "parameters": { + "tags": { + "key1": "value1" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "location": "West US", + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000 + } + } + }, + "responses": { + "200": { + "body": { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + }, + "201": { + "body": { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceUpdateTags.json new file mode 100644 index 000000000000..d9220dba93ca --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkVirtualApplianceUpdateTags.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkVirtualApplianceName": "nva", + "parameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "nva", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkVirtualAppliances/nva", + "type": "Microsoft.Network/networkVirtualAppliances", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "sku": { + "vendor": "Cisco SDWAN", + "bundledScaleUnit": "1", + "marketPlaceVersion": "12.1" + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ManagedIdentity/userAssignedIdentities/identity1": {} + } + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + }, + "provisioningState": "Succeeded", + "bootStrapConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrbootstrapconfig" + ], + "cloudInitConfigurationBlob": [ + "https://csrncvhdstorage1.blob.core.windows.net/csrncvhdstoragecont/csrcloudinitconfig" + ], + "virtualApplianceAsn": 10000, + "virtualApplianceNics": [ + { + "name": "managementNic", + "publicIpAddress": "40.30.2.2", + "privateIpAddress": "192.168.12.1" + }, + { + "name": "privateNic-1", + "privateIpAddress": "192.168.12.2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherAvailableProvidersListGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherAvailableProvidersListGet.json new file mode 100644 index 000000000000..a08372a686ae --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherAvailableProvidersListGet.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "azureLocations": [ + "West US" + ], + "country": "United States", + "state": "washington", + "city": "seattle" + } + }, + "responses": { + "200": { + "body": { + "countries": [ + { + "countryName": "United States", + "states": [ + { + "stateName": "washington", + "cities": [ + { + "cityName": "seattle", + "providers": [ + "Comcast Cable Communications, Inc. - ASN 7922", + "Comcast Cable Communications, LLC - ASN 7922", + "Level 3 Communications, Inc. (GBLX) - ASN 3549", + "Qwest Communications Company, LLC - ASN 209" + ] + } + ] + } + ] + } + ] + } + }, + "202": { + "body": { + "countries": [ + { + "countryName": "United States", + "states": [ + { + "stateName": "washington", + "cities": [ + { + "cityName": "seattle", + "providers": [ + "Comcast Cable Communications, Inc. - ASN 7922", + "Comcast Cable Communications, LLC - ASN 7922", + "Level 3 Communications, Inc. (GBLX) - ASN 3549", + "Qwest Communications Company, LLC - ASN 209" + ] + } + ] + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherAzureReachabilityReportGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherAzureReachabilityReportGet.json new file mode 100644 index 000000000000..1dd71f222186 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherAzureReachabilityReportGet.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "providerLocation": { + "country": "United States", + "state": "washington" + }, + "providers": [ + "Frontier Communications of America, Inc. - ASN 5650" + ], + "azureLocations": [ + "West US" + ], + "startTime": "2017-09-07T00:00:00Z", + "endTime": "2017-09-10T00:00:00Z" + } + }, + "responses": { + "200": { + "body": { + "aggregationLevel": "State", + "providerLocation": { + "country": "United States", + "state": "washington" + }, + "reachabilityReport": [ + { + "provider": "Frontier Communications of America, Inc. - ASN 5650", + "azureLocation": "West US", + "latencies": [ + { + "timeStamp": "2017-09-07T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-08T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-09T00:00:00Z", + "score": 94 + } + ] + } + ] + } + }, + "202": { + "body": { + "aggregationLevel": "State", + "providerLocation": { + "country": "United States", + "state": "washington" + }, + "reachabilityReport": [ + { + "provider": "Frontier Communications of America, Inc. - ASN 5650", + "azureLocation": "West US", + "latencies": [ + { + "timeStamp": "2017-09-07T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-08T00:00:00Z", + "score": 94 + }, + { + "timeStamp": "2017-09-09T00:00:00Z", + "score": 94 + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorCreate.json new file mode 100644 index 000000000000..c06df6804aad --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorCreate.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1", + "location": "centraluseuap", + "parameters": { + "properties": { + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60 + } + } + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "provisioningState": "Updating", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "monitoringStatus": "NotStarted" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + }, + "201": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "provisioningState": "Updating", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "monitoringStatus": "NotStarted" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorDelete.json new file mode 100644 index 000000000000..92e234223949 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorGet.json new file mode 100644 index 000000000000..20672f1a15e8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "startTime": "2018-01-08T03:42:33.3387305Z", + "monitoringStatus": "Running" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorList.json new file mode 100644 index 000000000000..35f98c8062da --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "startTime": "2018-01-08T03:42:33.3387305Z", + "monitoringStatus": "Running" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + }, + { + "name": "cm2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm2", + "port": 0 + }, + "destination": { + "address": "google.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 30, + "autoStart": true, + "startTime": "2018-01-08T05:42:33.3387305Z", + "monitoringStatus": "Running" + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorQuery.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorQuery.json new file mode 100644 index 000000000000..8566b869f399 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorQuery.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": { + "body": { + "sourceStatus": "Active", + "states": [ + { + "connectionState": "Reachable", + "startTime": "2018-01-08T03:42:33.3387305Z", + "endTime": "2018-01-08T05:12:41.5265438Z", + "evaluationState": "Completed", + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ] + } + ] + } + }, + "202": { + "body": { + "sourceStatus": "Active", + "states": [ + { + "connectionState": "Reachable", + "startTime": "2018-01-08T03:42:33.3387305Z", + "endTime": "2018-01-08T05:12:41.5265438Z", + "evaluationState": "Completed", + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorStart.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorStart.json new file mode 100644 index 000000000000..f84f6adb97a4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorStart.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorStop.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorStop.json new file mode 100644 index 000000000000..f84f6adb97a4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorStop.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json new file mode 100644 index 000000000000..9b919173f8ff --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorUpdateTags.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/`/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1", + "port": 0 + }, + "destination": { + "address": "bing.com", + "port": 80 + }, + "monitoringIntervalInSeconds": 60, + "autoStart": true, + "startTime": "2019-09-04T02:48:10.6797393Z", + "monitoringStatus": "Running" + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "type": "Microsoft.Network/networkWatchers/connectionMonitors", + "location": "westcentralus" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorV2Create.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorV2Create.json new file mode 100644 index 000000000000..ef5849904b28 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectionMonitorV2Create.json @@ -0,0 +1,206 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "connectionMonitorName": "cm1", + "location": "centraluseuap", + "parameters": { + "properties": { + "endpoints": [ + { + "name": "vm1", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/NwRgIrinaCentralUSEUAP/providers/Microsoft.Compute/virtualMachines/vm1" + }, + { + "name": "CanaryWorkspaceVamshi", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/vasamudrRG/providers/Microsoft.OperationalInsights/workspaces/vasamudrWorkspace", + "filter": { + "type": "Include", + "items": [ + { + "type": "AgentAddress", + "address": "npmuser" + } + ] + } + }, + { + "name": "bing", + "address": "bing.com" + }, + { + "name": "google", + "address": "google.com" + } + ], + "testConfigurations": [ + { + "name": "testConfig1", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80, + "disableTraceRoute": false + } + } + ], + "testGroups": [ + { + "name": "test1", + "disable": false, + "testConfigurations": [ + "testConfig1" + ], + "sources": [ + "vm1", + "CanaryWorkspaceVamshi" + ], + "destinations": [ + "bing", + "google" + ] + } + ], + "outputs": [] + } + } + }, + "responses": { + "200": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "endpoints": [ + { + "name": "vm1", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/NwRgIrinaCentralUSEUAP/providers/Microsoft.Compute/virtualMachines/vm1" + }, + { + "name": "CanaryWorkspaceVamshi", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/vasamudrRG/providers/Microsoft.OperationalInsights/workspaces/vasamudrWorkspace", + "filter": { + "type": "Include", + "items": [ + { + "type": "AgentAddress", + "address": "npmuser" + } + ] + } + }, + { + "name": "bing", + "address": "bing.com" + }, + { + "name": "google", + "address": "google.com" + } + ], + "testConfigurations": [ + { + "name": "testConfig1", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80, + "disableTraceRoute": false + } + } + ], + "testGroups": [ + { + "name": "test1", + "disable": false, + "testConfigurations": [ + "testConfig1" + ], + "sources": [ + "vm1", + "CanaryWorkspaceVamshi" + ], + "destinations": [ + "bing", + "google" + ] + } + ], + "outputs": [] + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + }, + "201": { + "body": { + "name": "cm1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/connectionMonitors/cm1", + "etag": "W/\"e7497f26-5f09-4559-900b-fe98f3dedb6f\"", + "properties": { + "endpoints": [ + { + "name": "vm1", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/NwRgIrinaCentralUSEUAP/providers/Microsoft.Compute/virtualMachines/vm1" + }, + { + "name": "CanaryWorkspaceVamshi", + "resourceId": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/vasamudrRG/providers/Microsoft.OperationalInsights/workspaces/vasamudrWorkspace", + "filter": { + "type": "Include", + "items": [ + { + "type": "AgentAddress", + "address": "npmuser" + } + ] + } + }, + { + "name": "bing", + "address": "bing.com" + }, + { + "name": "google", + "address": "google.com" + } + ], + "testConfigurations": [ + { + "name": "testConfig1", + "testFrequencySec": 60, + "protocol": "Tcp", + "tcpConfiguration": { + "port": 80, + "disableTraceRoute": false + } + } + ], + "testGroups": [ + { + "name": "test1", + "disable": false, + "testConfigurations": [ + "testConfig1" + ], + "sources": [ + "vm1", + "CanaryWorkspaceVamshi" + ], + "destinations": [ + "bing", + "google" + ] + } + ], + "outputs": [] + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/connectionMonitors" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectivityCheck.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectivityCheck.json new file mode 100644 index 000000000000..317694350e1d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherConnectivityCheck.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "source": { + "resourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1" + }, + "destination": { + "address": "192.168.100.4", + "port": 3389 + }, + "preferredIPVersion": "IPv4" + } + }, + "responses": { + "200": { + "body": { + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ], + "connectionStatus": "Connected", + "avgLatencyInMs": 1, + "minLatencyInMs": 1, + "maxLatencyInMs": 4, + "probesSent": 100, + "probesFailed": 0 + } + }, + "202": { + "body": { + "hops": [ + { + "type": "Source", + "id": "7dbbe7aa-60ba-4650-831e-63d775d38e9e", + "address": "10.1.1.4", + "resourceId": "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic0/ipConfigurations/ipconfig1", + "nextHopIds": [ + "75c8d819-b208-4584-a311-1aa45ce753f9" + ], + "issues": [] + }, + { + "type": "VirtualNetwork", + "id": "75c8d819-b208-4584-a311-1aa45ce753f9", + "address": "192.168.100.4", + "resourceId": "subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1/ipConfigurations/ipconfig1", + "nextHopIds": [], + "issues": [] + } + ], + "connectionStatus": "Connected", + "avgLatencyInMs": 1, + "minLatencyInMs": 1, + "maxLatencyInMs": 4, + "probesSent": 100, + "probesFailed": 0 + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherCreate.json new file mode 100644 index 000000000000..9092af1af11f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherCreate.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "location": "eastus", + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherDelete.json new file mode 100644 index 000000000000..3eed112aca0f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogConfigure.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogConfigure.json new file mode 100644 index 000000000000..e6248d8dd930 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogConfigure.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + }, + "responses": { + "200": { + "body": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + }, + "202": { + "body": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogCreate.json new file mode 100644 index 000000000000..bb552aeb0da3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogCreate.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "flowLogName": "fl", + "parameters": { + "location": "centraluseuap", + "properties": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/desmondcentral-nsg", + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/nwtest1mgvbfmqsigdxe", + "enabled": true, + "format": { + "type": "JSON", + "version": 1 + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "Microsoft.Networkdesmond-rgdesmondcentral-nsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw/FlowLogs/fl", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Updating", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/desmondcentral-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/nwtest1mgvbfmqsigdxe", + "enabled": true, + "flowAnalyticsConfiguration": {}, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 1 + } + }, + "type": "Microsoft.Network/networkWatchers/FlowLogs", + "location": "centraluseuap" + } + }, + "201": { + "body": { + "name": "Microsoft.Networkdesmond-rgdesmondcentral-nsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw/FlowLogs/fl", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/desmondcentral-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/nwtest1mgvbfmqsigdxe", + "enabled": true, + "flowAnalyticsConfiguration": {}, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 1 + } + }, + "type": "Microsoft.Network/networkWatchers/FlowLogs", + "location": "centraluseuap" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogDelete.json new file mode 100644 index 000000000000..05c50b458353 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "flowLogName": "fl" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogGet.json new file mode 100644 index 000000000000..6f32ddb28c43 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogGet.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "flowLogName": "flowLog1" + }, + "responses": { + "200": { + "body": { + "name": "flowLog1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/тц1/FlowLogs/flowLog1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/networkSecurityGroups/vm5-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/wzstorage002", + "enabled": true, + "flowAnalyticsConfiguration": { + "networkWatcherFlowAnalyticsConfiguration": { + "enabled": false, + "workspaceId": "-", + "workspaceRegion": "-", + "trafficAnalyticsInterval": 60 + } + }, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 2 + } + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/FlowLogs" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogList.json new file mode 100644 index 000000000000..f247646b5263 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogList.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "flowLog1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/тц1/FlowLogs/flowLog1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/networkSecurityGroups/vm5-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/wzstorage002", + "enabled": true, + "flowAnalyticsConfiguration": { + "networkWatcherFlowAnalyticsConfiguration": { + "enabled": false, + "workspaceId": "-", + "workspaceRegion": "-", + "trafficAnalyticsInterval": 60 + } + }, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 2 + } + }, + "location": "centraluseuap", + "type": "Microsoft.Network/networkWatchers/FlowLogs" + }, + { + "name": "flowLog2", + "id": "/subscriptions/96e68903-0a56-4819-9987-8d08ad6a1f99/resourceGroups/NetworkWatcherRG/providers/Microsoft.Network/networkWatchers/NetworkWatcher_centraluseuap/FlowLogs/flowLog2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "targetResourceId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Network/networkSecurityGroups/DSCP-test-vm1-nsg", + "targetResourceGuid": "00000000-0000-0000-0000-000000000000", + "storageId": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/iraflowlogtest2diag", + "enabled": true, + "flowAnalyticsConfiguration": {}, + "retentionPolicy": { + "days": 0, + "enabled": false + }, + "format": { + "type": "JSON", + "version": 2 + } + }, + "type": "Microsoft.Network/networkWatchers/FlowLogs", + "location": "centraluseuap" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogStatusQuery.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogStatusQuery.json new file mode 100644 index 000000000000..d0fa06acfa1a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherFlowLogStatusQuery.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + } + }, + "responses": { + "200": { + "body": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + }, + "202": { + "body": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "enabled": true + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherGet.json new file mode 100644 index 000000000000..b20db695ef49 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherGet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherIpFlowVerify.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherIpFlowVerify.json new file mode 100644 index 000000000000..7882564b1fe4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherIpFlowVerify.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "direction": "Outbound", + "protocol": "TCP", + "localPort": "80", + "remotePort": "80", + "localIPAddress": "10.2.0.4", + "remoteIPAddress": "121.10.1.1" + } + }, + "responses": { + "200": { + "body": { + "access": "Allow", + "ruleName": "Rule1" + } + }, + "202": { + "body": { + "access": "Allow", + "ruleName": "Rule1" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherList.json new file mode 100644 index 000000000000..6761f91f360e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + }, + { + "name": "nw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherListAll.json new file mode 100644 index 000000000000..6a2650093e9c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherListAll.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + }, + { + "name": "nw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "westus", + "tags": {}, + "properties": { + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json new file mode 100644 index 000000000000..7bd872226dae --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherNetworkConfigurationDiagnostic.json @@ -0,0 +1,198 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "profiles": [ + { + "direction": "Inbound", + "protocol": "TCP", + "source": "10.1.0.4", + "destination": "12.11.12.14", + "destinationPort": "12100" + } + ] + } + }, + "responses": { + "200": { + "body": { + "results": [ + { + "profile": { + "direction": "Inbound", + "protocol": "TCP", + "source": "10.1.0.4", + "destination": "12.11.12.14", + "destinationPort": "12100" + }, + "networkSecurityGroupResult": { + "securityRuleAccessResult": "Allow", + "evaluatedNetworkSecurityGroups": [ + { + "networkSecurityGroupId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/subnets/AppSubnet", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_Cleanuptool-Allow-100", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-101", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-102", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Deny-103", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + }, + { + "networkSecurityGroupId": "/subscriptions/61cc8a98-a8be-4bfe-a04e-0b461f93fe35/resourceGroups/NwRgCentralUSEUAP_copy/providers/Microsoft.Network/networkSecurityGroups/AppNSG", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/networkInterfaces/nic", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + } + ] + } + } + ] + } + }, + "202": { + "body": { + "results": [ + { + "profile": { + "direction": "Inbound", + "protocol": "TCP", + "source": "10.1.0.4", + "destination": "12.11.12.14", + "destinationPort": "12100" + }, + "networkSecurityGroupResult": { + "securityRuleAccessResult": "Allow", + "evaluatedNetworkSecurityGroups": [ + { + "networkSecurityGroupId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/subnets/AppSubnet", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_Cleanuptool-Allow-100", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-101", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Allow-102", + "protocolMatched": true, + "sourceMatched": false, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_Cleanuptool-Deny-103", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": false + }, + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + }, + { + "networkSecurityGroupId": "/subscriptions/61cc8a98-a8be-4bfe-a04e-0b461f93fe35/resourceGroups/NwRgCentralUSEUAP_copy/providers/Microsoft.Network/networkSecurityGroups/AppNSG", + "appliedTo": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet/networkInterfaces/nic", + "matchedRule": { + "ruleName": "UserRule_fe_rule", + "action": "Allow" + }, + "rulesEvaluationResult": [ + { + "name": "UserRule_fe_rule", + "protocolMatched": true, + "sourceMatched": true, + "sourcePortMatched": true, + "destinationMatched": true, + "destinationPortMatched": true + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherNextHopGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherNextHopGet.json new file mode 100644 index 000000000000..aea924034d0a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherNextHopGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "sourceIPAddress": "10.0.0.5", + "destinationIPAddress": "10.0.0.10", + "targetNicResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1" + } + }, + "responses": { + "200": { + "body": { + "nextHopType": "VnetLocal", + "nextHopIpAddress": "10.0.0.1", + "routeTableId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/routeTables/rt1" + } + }, + "202": { + "body": { + "nextHopType": "VnetLocal", + "nextHopIpAddress": "10.0.0.1", + "routeTableId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/routeTables/rt1" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureCreate.json new file mode 100644 index 000000000000..6867c4d99db8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureCreate.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1", + "parameters": { + "properties": { + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath": "D:\\capture\\pc1.cap" + }, + "filters": [ + { + "protocol": "TCP", + "localIPAddress": "10.0.0.4", + "localPort": "80" + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "properties": { + "provisioningState": "Updating", + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath": "D:\\capture\\pc1.cap" + }, + "filters": [ + { + "protocol": "TCP", + "localIPAddress": "10.0.0.4", + "localPort": "80" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureDelete.json new file mode 100644 index 000000000000..f60c4cc80bc9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "204": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureGet.json new file mode 100644 index 000000000000..99e75c37e9d0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "200": { + "body": { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Updating", + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath": "D:\\capture\\pc1.cap" + }, + "filters": [ + { + "protocol": "TCP", + "localIPAddress": "10.0.0.4", + "localPort": "80" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureQueryStatus.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureQueryStatus.json new file mode 100644 index 000000000000..03d765e6066a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureQueryStatus.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "200": { + "body": { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "captureStartTime": "2016-09-07T12:35:24Z", + "packetCaptureStatus": "Stopped", + "stopReason": "TimeExceeded", + "packetCaptureError": [] + } + }, + "202": { + "body": { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "captureStartTime": "2016-09-07T12:35:24Z", + "packetCaptureStatus": "Stopped", + "stopReason": "TimeExceeded", + "packetCaptureError": [] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureStop.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureStop.json new file mode 100644 index 000000000000..7540a8a34d3b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCaptureStop.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "packetCaptureName": "pc1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCapturesList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCapturesList.json new file mode 100644 index 000000000000..b621c584d14b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherPacketCapturesList.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "pc1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Updating", + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc1.cap", + "filePath": "D:\\capture\\pc1.cap" + }, + "filters": [ + { + "protocol": "TCP", + "localIPAddress": "10.0.0.4", + "localPort": "80" + } + ] + } + }, + { + "name": "pc2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1/packetCaptures/pc2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "target": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "bytesToCapturePerPacket": 10000, + "totalBytesPerSession": 100000, + "timeLimitInSeconds": 100, + "storageLocation": { + "storageId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Storage/storageAccounts/pcstore", + "storagePath": "https://mytestaccountname.blob.core.windows.net/capture/pc2.cap", + "filePath": "D:\\capture\\pc2.cap" + }, + "filters": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherSecurityGroupViewGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherSecurityGroupViewGet.json new file mode 100644 index 000000000000..567835759f7a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherSecurityGroupViewGet.json @@ -0,0 +1,141 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "responses": { + "200": { + "body": { + "networkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1", + "securityRuleAssociations": { + "subnetAssociation": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "securityRules": [ + { + "name": "fe_rule", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/AppNSG/securityRules/fe_rule", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow Frontend", + "protocol": "Tcp", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "10.1.0.0/24", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 100, + "direction": "Inbound" + } + } + ] + }, + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/networkSecurityGroups//defaultSecurityRules/", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + } + ], + "effectiveSecurityRules": [ + { + "name": "DefaultOutboundDenyAll", + "protocol": "All", + "sourcePortRange": "0-65535", + "destinationPortRange": "0-65535", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + ] + } + } + ] + } + }, + "202": { + "body": { + "networkInterfaces": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/nic1", + "securityRuleAssociations": { + "subnetAssociation": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1", + "securityRules": [ + { + "name": "fe_rule", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/AppNSG/securityRules/fe_rule", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow Frontend", + "protocol": "Tcp", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "10.1.0.0/24", + "destinationAddressPrefix": "*", + "access": "Allow", + "priority": 100, + "direction": "Inbound" + } + } + ] + }, + "defaultSecurityRules": [ + { + "name": "AllowVnetInBound", + "id": "/subscriptions//resourceGroups//providers/Microsoft.Network/networkSecurityGroups//defaultSecurityRules/", + "properties": { + "provisioningState": "Succeeded", + "description": "Allow inbound traffic from all VMs in VNET", + "protocol": "*", + "sourcePortRange": "*", + "destinationPortRange": "*", + "sourceAddressPrefix": "VirtualNetwork", + "destinationAddressPrefix": "VirtualNetwork", + "access": "Allow", + "priority": 65000, + "direction": "Inbound" + } + } + ], + "effectiveSecurityRules": [ + { + "name": "DefaultOutboundDenyAll", + "protocol": "All", + "sourcePortRange": "0-65535", + "destinationPortRange": "0-65535", + "sourceAddressPrefix": "*", + "destinationAddressPrefix": "*", + "access": "Deny", + "priority": 65500, + "direction": "Outbound" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherTopologyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherTopologyGet.json new file mode 100644 index 000000000000..93ca3017408a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherTopologyGet.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceGroupName": "rg2" + } + }, + "responses": { + "200": { + "body": { + "id": "ce592f46-8164-4bf2-ad36-b8e4acf6fb68", + "createdDateTime": "2017-08-02T19:31:55.9461781Z", + "lastModified": "2017-05-27T00:00:13.2005337Z", + "resources": [ + { + "name": "MultiTierApp0", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/MultiTierApp0", + "location": "westus", + "associations": [ + { + "name": "appNic0", + "resourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/appNic0", + "associationType": "Contains" + }, + { + "name": "appNic10", + "resourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/networkInterfaces/appNic10", + "associationType": "Contains" + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherTroubleshootGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherTroubleshootGet.json new file mode 100644 index 000000000000..ba4be3fa386a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherTroubleshootGet.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1", + "properties": { + "storageId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/st1", + "storagePath": "https://st1.blob.core.windows.net/cn1" + } + } + }, + "responses": { + "200": { + "body": { + "startTime": "2017-01-12T00:19:47.0442834Z", + "endTime": "2017-01-12T00:20:09.914Z", + "code": "UnHealthy", + "results": [ + { + "id": "000000", + "reasonType": "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + }, + "202": { + "body": { + "startTime": "2017-01-12T00:19:47.0442834Z", + "endTime": "2017-01-12T00:20:09.914Z", + "code": "UnHealthy", + "results": [ + { + "id": "000000", + "reasonType": "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherTroubleshootResultQuery.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherTroubleshootResultQuery.json new file mode 100644 index 000000000000..21ba5e65e2d3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherTroubleshootResultQuery.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "targetResourceId": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Compute/virtualMachines/vm1" + } + }, + "responses": { + "200": { + "body": { + "startTime": "2017-01-12T00:19:47.0442834Z", + "endTime": "2017-01-12T00:20:09.914Z", + "code": "UnHealthy", + "results": [ + { + "id": "000000", + "reasonType": "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + }, + "202": { + "body": { + "startTime": "2017-01-12T00:19:47.0442834Z", + "endTime": "2017-01-12T00:20:09.914Z", + "code": "UnHealthy", + "results": [ + { + "id": "000000", + "reasonType": "VipUnResponsive", + "summary": "We are sorry, your VPN gateway is unreachable from the Internet", + "detail": "During this time S2S VPN tunnels to on premises sites or other Azure virtual networks will be disconnected", + "recommendedActions": [ + { + "actionText": "Verify if there is a network security group (NSG) applied to the GatewaySubnet", + "actionUri": "https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-create-nsg-arm-pportal", + "actionUriText": "Verify" + }, + { + "actionText": "If your VPN gateway isn't up and running by the expected resolution time, contact support", + "actionUri": "http://azure.microsoft.com/support", + "actionUriText": "contact support" + } + ] + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherUpdateTags.json new file mode 100644 index 000000000000..482b0c28f4fd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/NetworkWatcherUpdateTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkWatcherName": "nw1", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "nw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkWatchers/nw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/networkWatchers", + "location": "eastus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/OperationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/OperationList.json new file mode 100644 index 000000000000..6ba7a660603a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/OperationList.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Network/localnetworkgateways/read", + "display": { + "provider": "Microsoft Network", + "resource": "LocalNetworkGateway", + "operation": "Get LocalNetworkGateway", + "description": "Gets LocalNetworkGateway" + } + }, + { + "name": "Microsoft.Network/localnetworkgateways/write", + "display": { + "provider": "Microsoft Network", + "resource": "LocalNetworkGateway", + "operation": "Create or update LocalNetworkGateway", + "description": "Creates or updates an existing LocalNetworkGateway" + } + }, + { + "name": "Microsoft.Network/localnetworkgateways/delete", + "display": { + "provider": "Microsoft Network", + "resource": "LocalNetworkGateway", + "operation": "Delete LocalNetworkGateway", + "description": "Deletes LocalNetworkGateway" + } + }, + { + "name": "Microsoft.Network/networkInterfaces/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Network", + "resource": "Network Interface metric definition", + "operation": "Read Network Interface metric definitions", + "description": "Gets available metrics for the Network Interface" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "BytesSentRate", + "displayName": "Bytes Sent", + "displayDescription": "Number of bytes the Network Interface sent", + "unit": "Count", + "aggregationType": "Total", + "availabilities": [ + { + "timeGrain": "00:01:00", + "retention": "00:00:00", + "blobDuration": "01:00:00" + }, + { + "timeGrain": "01:00:00", + "retention": "00:00:00", + "blobDuration": "1.00:00:00" + } + ], + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^__Ready__$", + "fillGapWithZero": false, + "dimensions": [], + "isInternal": false + }, + { + "name": "BytesReceivedRate", + "displayName": "Bytes Received", + "displayDescription": "Number of bytes the Network Interface received", + "unit": "Count", + "aggregationType": "Total", + "availabilities": [ + { + "timeGrain": "00:01:00", + "retention": "00:00:00", + "blobDuration": "01:00:00" + }, + { + "timeGrain": "01:00:00", + "retention": "00:00:00", + "blobDuration": "1.00:00:00" + } + ], + "enableRegionalMdmAccount": false, + "metricFilterPattern": "^__Ready__$", + "fillGapWithZero": false, + "dimensions": [], + "isInternal": false + } + ] + } + } + }, + { + "name": "Microsoft.Network/networksecuritygroups/providers/Microsoft.Insights/logDefinitions/read", + "display": { + "provider": "Microsoft Network", + "resource": "Network Security Groups Log Definitions", + "operation": "Get Network Security Group Event Log Definitions", + "description": "Gets the events for network security group" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "logSpecifications": [ + { + "name": "NetworkSecurityGroupEvent", + "displayName": "Network Security Group Event", + "blobDuration": "PT1H" + }, + { + "name": "NetworkSecurityGroupRuleCounter", + "displayName": "Network Security Group Rule Counter", + "blobDuration": "PT1H" + }, + { + "name": "NetworkSecurityGroupFlowEvent", + "displayName": "Network Security Group Rule Flow Event", + "blobDuration": "PT1H" + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayDelete.json new file mode 100644 index 000000000000..0f0185acf11e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayGenerateVpnProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayGenerateVpnProfile.json new file mode 100644 index 000000000000..5a9841896642 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayGenerateVpnProfile.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "gatewayName": "p2sVpnGateway1", + "parameters": { + "authenticationMethod": "EAPTLS" + } + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayGet.json new file mode 100644 index 000000000000..f0a6c55d5657 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayGet.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayGetConnectionHealth.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayGetConnectionHealth.json new file mode 100644 index 000000000000..0f5c653b7205 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayGetConnectionHealth.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayGetConnectionHealthDetailed.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayGetConnectionHealthDetailed.json new file mode 100644 index 000000000000..ebec1f1ebec9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayGetConnectionHealthDetailed.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "p2s-vpn-gateway-test", + "gatewayName": "p2svpngateway", + "api-version": "2020-03-01", + "request": { + "vpnUserNamesFilter": [ + "vpnUser1", + "vpnUser2" + ], + "outputBlobSasUrl": "https://blobcortextesturl.blob.core.windows.net/folderforconfig/p2sconnectionhealths?sp=rw&se=2018-01-10T03%3A42%3A04Z&sv=2017-04-17&sig=WvXrT5bDmDFfgHs%2Brz%2BjAu123eRCNE9BO0eQYcPDT7pY%3D&sr=b" + } + }, + "responses": { + "200": { + "body": "" + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayList.json new file mode 100644 index 000000000000..f3d7d2e25f6d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayList.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + }, + { + "name": "p2sVpnGateway2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.4.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayListByResourceGroup.json new file mode 100644 index 000000000000..1b20cfe3bedd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayListByResourceGroup.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "properties": { + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + }, + { + "name": "p2sVpnGateway2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "properties": { + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayPut.json new file mode 100644 index 000000000000..81e4c5a8444c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayPut.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "p2SVpnGatewayParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "properties": { + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1 + } + } + }, + "responses": { + "200": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 0, + "allocatedIpAddresses": [], + "totalIngressBytesTransferred": 0, + "totalEgressBytesTransferred": 0 + } + } + } + }, + "201": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 0, + "allocatedIpAddresses": [], + "totalIngressBytesTransferred": 0, + "totalEgressBytesTransferred": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayUpdateTags.json new file mode 100644 index 000000000000..98e0fad14b6c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2SVpnGatewayUpdateTags.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "gatewayName": "p2sVpnGateway1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "p2SVpnGatewayParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "p2sVpnGateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/P2SvpnGateways/p2sVpnGateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/p2sVpnGateways", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "vpnServerConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1" + }, + "p2SConnectionConfigurations": [ + { + "name": "P2SConnectionConfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/p2sVpnGateways/p2sVpnGateway1/p2sConnectionConfigurations/P2SConnectionConfig1", + "properties": { + "vpnClientAddressPool": { + "addressPrefixes": [ + "101.3.0.0/16" + ] + } + } + } + ], + "vpnGatewayScaleUnit": 1, + "vpnClientConnectionHealth": { + "vpnClientConnectionsCount": 2, + "allocatedIpAddresses": [ + "1.1.1.1", + "2.2.2.2" + ], + "totalIngressBytesTransferred": 2000, + "totalEgressBytesTransferred": 3000 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2sVpnGatewaysDisconnectP2sVpnConnections.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2sVpnGatewaysDisconnectP2sVpnConnections.json new file mode 100644 index 000000000000..f26e4e4a6d23 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/P2sVpnGatewaysDisconnectP2sVpnConnections.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "p2s-vpn-gateway-test", + "p2sVpnGatewayName": "p2svpngateway", + "api-version": "2020-03-01", + "request": { + "vpnConnectionIds": [ + "vpnconnId1", + "vpnconnId2" + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PeerExpressRouteCircuitConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PeerExpressRouteCircuitConnectionGet.json new file mode 100644 index 000000000000..3b3c282c9b74 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PeerExpressRouteCircuitConnectionGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "connectionName": "60aee347-e889-4a42-8c1b-0aae8b1e4013", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "name": "60aee347-e889-4a42-8c1b-0aae8b1e4013", + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/peerConnections/60aee347-e889-4a42-8c1b-0aae8b1e4013", + "etag": "W/\"6ffbbb06-da20-44ca-a34f-280c4653b1e9\"", + "properties": { + "provisioningState": "Succeeded", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitB/peerings/AzurePrivatePeering" + }, + "addressPrefix": "20.0.0.0/29", + "circuitConnectionStatus": "Connected", + "connectionName": "circuitConnectionWestusEastus", + "authResourceGuid": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PeerExpressRouteCircuitConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PeerExpressRouteCircuitConnectionList.json new file mode 100644 index 000000000000..1c1ad7860bf2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PeerExpressRouteCircuitConnectionList.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid1", + "circuitName": "ExpressRouteARMCircuitA", + "peeringName": "AzurePrivatePeering" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "60aee347-e889-4a42-8c1b-0aae8b1e4013", + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/peerConnections/60aee347-e889-4a42-8c1b-0aae8b1e4013", + "etag": "W/\"6ffbbb06-da20-44ca-a34f-280c4653b1e9\"", + "properties": { + "provisioningState": "Succeeded", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitB/peerings/AzurePrivatePeering" + }, + "addressPrefix": "20.0.0.0/29", + "circuitConnectionStatus": "Connected", + "connectionName": "circuitConnectionWestusEastus", + "authResourceGuid": "" + } + }, + { + "name": "c8b17193-8dd3-4f61-866d-8cdd2e2e268e", + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering/peerConnections/c8b17193-8dd3-4f61-866d-8cdd2e2e268e", + "etag": "W/\"6ffbbb06-da20-44ca-a34f-280c4653b1e9\"", + "properties": { + "provisioningState": "Succeeded", + "expressRouteCircuitPeering": { + "id": "/subscriptions/subid1/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitA/peerings/AzurePrivatePeering" + }, + "peerExpressRouteCircuitPeering": { + "id": "/subscriptions/subid2/resourceGroups/rg1/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuitC/peerings/AzurePrivatePeering" + }, + "addressPrefix": "30.0.0.0/29", + "circuitConnectionStatus": "Connected", + "connectionName": "circuitConnectionCentralusEastus", + "authResourceGuid": "64283012-d377-421d-8398-f6aeb2ac7ea0" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointCreate.json new file mode 100644 index 000000000000..67f60c5df8b3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointCreate.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe", + "parameters": { + "location": "eastus2euap", + "properties": { + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection." + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "location": "eastus2euap", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "manualPrivateLinkServiceConnections": [], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + } + }, + "201": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "location": "eastus2euap", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointCreateForManualApproval.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointCreateForManualApproval.json new file mode 100644 index 000000000000..d2b96f87ef25 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointCreateForManualApproval.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe", + "parameters": { + "location": "eastus", + "properties": { + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection." + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [], + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Awaiting approval", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + } + }, + "201": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDelete.json new file mode 100644 index 000000000000..ea11011c62b9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDnsZoneGroupCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDnsZoneGroupCreate.json new file mode 100644 index 000000000000..6284ccb749ee --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDnsZoneGroupCreate.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe", + "privateDnsZoneGroupName": "testPdnsgroup", + "parameters": { + "properties": { + "privateDnsZoneConfigs": [ + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone1.com" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPdnsgroup", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPe/privateDnsZoneGroups/testPdnsgroup", + "properties": { + "provisioningState": "Succeeded", + "privateDnsZoneConfigs": [ + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone1.com", + "recordSets": [ + { + "recordType": "A", + "recordSetName": "abc", + "fqdn": "abc.zone1.com", + "ipAddresses": [ + "10.0.0.4" + ] + }, + { + "recordType": "A", + "recordSetName": "abc2", + "fqdn": "abc2.zone1.com", + "ipAddresses": [ + "10.0.0.5" + ] + } + ] + } + } + ] + } + } + }, + "201": { + "body": { + "name": "testPdnsgroup", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPe/privateDnsZoneGroups/testPdnsgroup", + "properties": { + "provisioningState": "Succeeded", + "privateDnsZoneConfigs": [ + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone1.com", + "recordSets": [ + { + "recordType": "A", + "recordSetName": "abc", + "fqdn": "abc.zone1.com", + "ipAddresses": [ + "10.0.0.4" + ] + }, + { + "recordType": "A", + "recordSetName": "abc2", + "fqdn": "abc2.zone1.com", + "ipAddresses": [ + "10.0.0.5" + ] + } + ] + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDnsZoneGroupDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDnsZoneGroupDelete.json new file mode 100644 index 000000000000..dfc949c5e2b4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDnsZoneGroupDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe", + "privateDnsZoneGroupName": "testPdnsgroup" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDnsZoneGroupGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDnsZoneGroupGet.json new file mode 100644 index 000000000000..316ad45471c0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDnsZoneGroupGet.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe", + "privateDnsZoneGroupName": "testPdnsgroup" + }, + "responses": { + "200": { + "body": { + "name": "testPdnsgroup", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPe/privateDnsZoneGroups/testPdnsgroup", + "properties": { + "provisioningState": "Succeeded", + "privateDnsZoneConfigs": [ + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone1.com", + "recordSets": [ + { + "recordType": "A", + "recordSetName": "abc", + "fqdn": "abc.zone1.com", + "ipAddresses": [ + "10.0.0.4" + ] + }, + { + "recordType": "A", + "recordSetName": "abc2", + "fqdn": "abc2.zone1.com", + "ipAddresses": [ + "10.0.0.5" + ] + } + ] + } + }, + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone2.com", + "recordSets": [ + { + "recordType": "A", + "recordSetName": "abc", + "fqdn": "abc.zone2.com", + "ipAddresses": [ + "10.0.0.6" + ] + }, + { + "recordType": "A", + "recordSetName": "abc2", + "fqdn": "abc2.zone2.com", + "ipAddresses": [ + "10.0.0.7" + ] + } + ] + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDnsZoneGroupList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDnsZoneGroupList.json new file mode 100644 index 000000000000..0a2508bc9b87 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointDnsZoneGroupList.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPdnsgroup1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPe/privateDnsZoneGroups/testPdnsgroup1", + "properties": { + "provisioningState": "Succeeded", + "privateDnsZoneConfigs": [ + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone1.com", + "recordSets": [ + { + "recordType": "A", + "recordSetName": "abc", + "fqdn": "abc.zone1.com", + "ipAddresses": [ + "10.0.0.4" + ] + }, + { + "recordType": "A", + "recordSetName": "abc2", + "fqdn": "abc2.zone1.com", + "ipAddresses": [ + "10.0.0.5" + ] + } + ] + } + } + ] + } + }, + { + "name": "testPdnsgroup2", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPe/privateDnsZoneGroups/testPdnsgroup2", + "properties": { + "provisioningState": "Succeeded", + "privateDnsZoneConfigs": [ + { + "properties": { + "privateDnsZoneId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateDnsZones/zone2.com", + "recordSets": [ + { + "recordType": "A", + "recordSetName": "abc3", + "fqdn": "abc3.zone2.com", + "ipAddresses": [ + "10.0.0.6" + ] + }, + { + "recordType": "A", + "recordSetName": "abc4", + "fqdn": "abc4.zone2.com", + "ipAddresses": [ + "10.0.0.7" + ] + } + ] + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointGet.json new file mode 100644 index 000000000000..dcef18314bff --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointGet.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe" + }, + "responses": { + "200": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "manualPrivateLinkServiceConnections": [], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointGetForManualApproval.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointGetForManualApproval.json new file mode 100644 index 000000000000..0a7a2a20740a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointGetForManualApproval.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "privateEndpointName": "testPe" + }, + "responses": { + "200": { + "body": { + "name": "testPe", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [], + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection.", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Awaiting approval", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPe.nic.abcd1234" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointList.json new file mode 100644 index 000000000000..5b962c6b3802 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointList.json @@ -0,0 +1,111 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/pe1", + "name": "pe1", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection for pe1.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "manualPrivateLinkServiceConnections": [], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/pe1.nic.abcd1234" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + }, + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/pe2", + "name": "pe2", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [], + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection for pe2.", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Awaiting approval", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet2" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/pe2.nic.zyxw9876" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc3.cosmos1.com", + "ipAddresses": [ + "192.168.0.6" + ] + }, + { + "fqdn": "abc4.cosmos1.com", + "ipAddresses": [ + "192.168.0.7" + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointListAll.json new file mode 100644 index 000000000000..d9cd39fa2658 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateEndpointListAll.json @@ -0,0 +1,156 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/pe1", + "name": "pe1", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection for pe1.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/pe1.nic.abcd1234" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc.cosmos.com", + "ipAddresses": [ + "192.168.0.4" + ] + }, + { + "fqdn": "abc2.cosmos.com", + "ipAddresses": [ + "192.168.0.5" + ] + } + ] + } + }, + { + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/pe2", + "name": "pe2", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [], + "manualPrivateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please manually approve my connection for pe2.", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Awaiting approval", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet2" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg2/provders/Microsoft.Network/networkInterfaces/pe2.nic.zyxw9876" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc3.cosmos1.com", + "ipAddresses": [ + "192.168.0.5" + ] + }, + { + "fqdn": "abc4.cosmos1.com", + "ipAddresses": [ + "192.168.0.6" + ] + } + ] + } + }, + { + "id": "/subscriptions/subId/resourceGroups/rg3/providers/Microsoft.Network/privateEndpoints/pe3", + "name": "pe3", + "type": "Microsoft.Network/privateEndpoints", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnections": [ + { + "properties": { + "privateLinkServiceId": "/subscriptions/subId/resourceGroups/rg3/providers/Microsoft.Network/privateLinkServices/testPls3", + "groupIds": [ + "groupIdFromResource" + ], + "requestMessage": "Please approve my connection for pe3.", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "subnet": { + "id": "/subscriptions/subId/resourceGroups/rg3/providers/Microsoft.Network/virtualNetworks/myVnet/subnets/mySubnet3" + }, + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg3/provders/Microsoft.Network/networkInterfaces/pe3.nic.efgh5463" + } + ], + "customDnsConfigs": [ + { + "fqdn": "abc5.cosmos2.com", + "ipAddresses": [ + "192.168.0.7" + ] + }, + { + "fqdn": "abc6.cosmos2.com", + "ipAddresses": [ + "192.168.0.8" + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceCreate.json new file mode 100644 index 000000000000..a20ad6453f02 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceCreate.json @@ -0,0 +1,155 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "parameters": { + "location": "eastus", + "properties": { + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPls", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls.nic.abcd1234" + } + ] + } + } + }, + "201": { + "body": { + "name": "testPls", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceDelete.json new file mode 100644 index 000000000000..8e64b54e506f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceDeletePrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceDeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..9f715d76df0c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceDeletePrivateEndpointConnection.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "peConnectionName": "testPlePeConnection" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceGet.json new file mode 100644 index 000000000000..08c24447d4ac --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceGet.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls" + }, + "responses": { + "200": { + "body": { + "name": "testPls", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "privateEndpointConnection", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls.nic.abcd1234" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceGetPrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceGetPrivateEndpointConnection.json new file mode 100644 index 000000000000..5399bd2d084d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceGetPrivateEndpointConnection.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "peConnectionName": "testPlePeConnection" + }, + "responses": { + "200": { + "body": { + "name": "testPlePeConnection", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceList.json new file mode 100644 index 000000000000..5461e7737b3c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceList.json @@ -0,0 +1,141 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPls1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb1" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb1", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb1" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "pec1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls1.nic.abcd1234" + } + ] + } + }, + { + "name": "testPls2", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls2", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb2" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb2", + "properties": { + "privateIPAddress": "10.0.1.5", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb2" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "pec2", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls2.nic.efgh5678" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceListAll.json new file mode 100644 index 000000000000..fd00055f763f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceListAll.json @@ -0,0 +1,142 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPls1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateLinkServices/testPls1", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2", + "subscription3" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2", + "fqdn3" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb1" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb1", + "properties": { + "privateIPAddress": "10.0.1.4", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb1" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "pec1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/provders/Microsoft.Network/networkInterfaces/testPls1.nic.abcd1234" + } + ] + } + }, + { + "name": "testPls2", + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/privateLinkServices/testPls2", + "type": "Microsoft.Network/privateLinkServices", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "visibility": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "autoApproval": { + "subscriptions": [ + "subscription1", + "subscription2" + ] + }, + "fqdns": [ + "fqdn1", + "fqdn2" + ], + "alias": "ContosoService.{guid}.azure.privatelinkservice", + "loadBalancerFrontendIpConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb2" + } + ], + "ipConfigurations": [ + { + "name": "fe-lb2", + "properties": { + "privateIPAddress": "10.0.1.5", + "privateIPAllocationMethod": "Static", + "privateIPAddressVersion": "IPv4", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb2" + } + } + } + ], + "privateEndpointConnections": [ + { + "name": "pec1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg2/providers/Microsoft.Network/privateEndpoints/testPe2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + ], + "networkInterfaces": [ + { + "id": "/subscriptions/subId/resourceGroups/rg2/provders/Microsoft.Network/networkInterfaces/testPls2.nic.efgh5678" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceListPrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceListPrivateEndpointConnection.json new file mode 100644 index 000000000000..be4ffc1d3912 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceListPrivateEndpointConnection.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPlePeConnection1", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + }, + { + "name": "testPlePeConnection2", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe2" + }, + "privateLinkServiceConnectionState": { + "status": "Rejected", + "description": "rejected by some reason." + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json new file mode 100644 index 000000000000..002a03facac7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "serviceName": "testPls", + "peConnectionName": "testPlePeConnection", + "parameters": { + "name": "testPlePeConnection", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "testPlePeConnection", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testPe" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "approved it for some reason." + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressCreateCustomizedValues.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressCreateCustomizedValues.json new file mode 100644 index 000000000000..82567508ac6c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressCreateCustomizedValues.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "zones": [ + "1" + ], + "parameters": { + "properties": { + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "publicIPAddressVersion": "IPv4" + }, + "sku": { + "name": "Standard" + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + }, + "201": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressCreateDefaults.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressCreateDefaults.json new file mode 100644 index 000000000000..8641e89096fb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressCreateDefaults.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "parameters": { + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Basic" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + }, + "201": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Basic" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressCreateDns.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressCreateDns.json new file mode 100644 index 000000000000..0769aec02357 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressCreateDns.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "parameters": { + "properties": { + "dnsSettings": { + "domainNameLabel": "dnslbl" + } + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "dnsSettings": { + "domainNameLabel": "dnslbl", + "fqdn": "dnslbl.westus.cloudapp.azure.com" + }, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + } + }, + "201": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "dnsSettings": { + "domainNameLabel": "dnslbl", + "fqdn": "dnslbl.westus.cloudapp.azure.com" + }, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressDelete.json new file mode 100644 index 000000000000..769e56dca162 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressGet.json new file mode 100644 index 000000000000..7a54510d952c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "testDNS-ip" + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testDNS-ip", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + }, + "ipTags": [ + { + "ipTagType": "FirstPartyUsage", + "tag": "SQL" + }, + { + "ipTagType": "FirstPartyUsage", + "tag": "Storage" + } + ] + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressList.json new file mode 100644 index 000000000000..53fefaa548e9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testDNS-ip", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + }, + "ipTags": [ + { + "ipTagType": "FirstPartyUsage", + "tag": "SQL" + }, + { + "ipTagType": "FirstPartyUsage", + "tag": "Storage" + } + ] + }, + "type": "Microsoft.Network/publicIPAddresses" + }, + { + "name": "ip03", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/ip03", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "40.85.154.247", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "dnsSettings": { + "domainNameLabel": "testlbl", + "fqdn": "testlbl.westus.cloudapp.azure.com" + }, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/testLb/frontendIPConfigurations/LoadBalancerFrontEnd" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressListAll.json new file mode 100644 index 000000000000..79056c1618de --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressListAll.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testDNS-ip", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + }, + { + "name": "ip01", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPAddresses/ip01", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "40.85.154.247", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Dynamic", + "idleTimeoutInMinutes": 4, + "dnsSettings": { + "domainNameLabel": "testlbl", + "fqdn": "testlbl.westus.cloudapp.azure.com" + }, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/loadBalancers/testLb/frontendIPConfigurations/LoadBalancerFrontEnd" + } + }, + "type": "Microsoft.Network/publicIPAddresses" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressUpdateTags.json new file mode 100644 index 000000000000..d7bfa657420e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpAddressUpdateTags.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpAddressName": "test-ip", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testDNS-ip", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ip", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "publicIPAddressVersion": "IPv4", + "publicIPAllocationMethod": "Static", + "idleTimeoutInMinutes": 10, + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testDNS649/ipConfigurations/ipconfig1" + } + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "type": "Microsoft.Network/publicIPAddresses" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixCreateCustomizedValues.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixCreateCustomizedValues.json new file mode 100644 index 000000000000..78541f252fc7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixCreateCustomizedValues.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix", + "zones": [ + "1" + ], + "parameters": { + "location": "westus", + "properties": { + "publicIPAddressVersion": "IPv4", + "prefixLength": 30 + }, + "sku": { + "name": "Standard" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + }, + "201": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "zones": [ + "1" + ], + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixCreateDefaults.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixCreateDefaults.json new file mode 100644 index 000000000000..1e9f1dee5eee --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixCreateDefaults.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix", + "parameters": { + "location": "westus", + "properties": { + "prefixLength": 30 + }, + "sku": { + "name": "Standard" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + }, + "201": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixDelete.json new file mode 100644 index 000000000000..ac7aa094a508 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixGet.json new file mode 100644 index 000000000000..07ce3988b876 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix" + }, + "responses": { + "200": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "192.168.254.2/30", + "ipTags": [], + "publicIPAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixList.json new file mode 100644 index 000000000000..fa208dcbae80 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixList.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "40.85.154.2/30", + "ipTags": [ + { + "ipTagType": "FirstPartyUsage", + "tag": "SQL" + } + ] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + }, + { + "name": "ipprefix03", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/ipprefix03", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 31, + "ipPrefix": "40.85.153.2/31", + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixListAll.json new file mode 100644 index 000000000000..0a7981719482 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixListAll.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipPrefix": "41.85.154.247/30", + "ipTags": [], + "publicIPAddresses": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/PublicIpAddress1" + } + ] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + }, + { + "name": "ipprefix01", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/publicIPPrefixes/ipprefix01", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "ipPrefix": "40.85.154.247/30", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipTags": [] + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + }, + { + "name": "pfx", + "id": "/subscriptions/subid/resourceGroups/rg3/providers/Microsoft.Network/publicIPPrefixes/pfx", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "type": "Microsoft.Network/publicIPPrefixes", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "ipPrefix": "25.101.84.16/30", + "publicIPAddressVersion": "IPv4", + "prefixLength": 30, + "ipTags": [], + "loadBalancerFrontendIpConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg3/providers/Microsoft.Network/loadBalancers/lb-pfx/frontendIPConfigurations/ipconfig1" + } + }, + "sku": { + "name": "Standard" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixUpdateTags.json new file mode 100644 index 000000000000..77807f1eff0c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/PublicIpPrefixUpdateTags.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "publicIpPrefixName": "test-ipprefix", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-ipprefix", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPPrefixes/test-ipprefix", + "etag": "W/\"00000000-0000-0000-0000-00000000\"", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-00000000", + "publicIPAddressVersion": "IPv4", + "ipPrefix": "40.85.154.247/30", + "prefixLength": 30, + "ipTags": [] + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "sku": { + "name": "Standard" + }, + "type": "Microsoft.Network/publicIPPrefixes" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterCreate.json new file mode 100644 index 000000000000..e4315101f26b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterCreate.json @@ -0,0 +1,95 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "routeFilterParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "rules": [ + { + "name": "ruleName", + "properties": { + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterDelete.json new file mode 100644 index 000000000000..0e4c1480ad62 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterGet.json new file mode 100644 index 000000000000..579ec5c6ed57 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterGet.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterList.json new file mode 100644 index 000000000000..9040a6cbc01c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterList.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterListByResourceGroup.json new file mode 100644 index 000000000000..552477bd5d11 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterListByResourceGroup.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ], + "peerings": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterRuleCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterRuleCreate.json new file mode 100644 index 000000000000..900dd3ea2337 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterRuleCreate.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "ruleName": "ruleName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "routeFilterRuleParameters": { + "properties": { + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterRuleDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterRuleDelete.json new file mode 100644 index 000000000000..183ecfc0daec --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterRuleDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "ruleName": "ruleName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterRuleGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterRuleGet.json new file mode 100644 index 000000000000..0ca132b2660e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterRuleGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "ruleName": "filterName", + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterRuleListByRouteFilter.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterRuleListByRouteFilter.json new file mode 100644 index 000000000000..3e5877c09906 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterRuleListByRouteFilter.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "routeFilterName": "filterName" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030", + "12076:5040" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterUpdateTags.json new file mode 100644 index 000000000000..b804f02005dd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteFilterUpdateTags.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "routeFilterName": "filterName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "parameters": { + "tags": { + "key1": "value1" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "filterName", + "type": "Microsoft.Network/routeFilters", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "rules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeFilters/filterName/routeFilterRules/ruleName", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "ruleName", + "properties": { + "provisioningState": "Succeeded", + "access": "Allow", + "routeFilterRuleType": "Community", + "communities": [ + "12076:5030" + ] + } + } + ], + "peerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableCreate.json new file mode 100644 index 000000000000..310f163d9e94 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableCreate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "parameters": { + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [], + "disableBgpRoutePropagation": true + } + } + }, + "201": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": true, + "routes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableCreateWithRoute.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableCreateWithRoute.json new file mode 100644 index 000000000000..2512aca60a65 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableCreateWithRoute.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "parameters": { + "properties": { + "disableBgpRoutePropagation": true, + "routes": [ + { + "name": "route1", + "properties": { + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + }, + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": true, + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + }, + "201": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableDelete.json new file mode 100644 index 000000000000..ff01899bf509 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableGet.json new file mode 100644 index 000000000000..eda9bf016783 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt" + }, + "responses": { + "200": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": false, + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableList.json new file mode 100644 index 000000000000..8d59b45ac90b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableList.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "disableBgpRoutePropagation": true, + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + }, + { + "name": "testrt2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt2", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "disableBgpRoutePropagation": true, + "provisioningState": "Succeeded", + "routes": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableListAll.json new file mode 100644 index 000000000000..81bcb785097e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableListAll.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + }, + { + "name": "testrt3", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/routeTables/testrt3", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "routes": [] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableRouteCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableRouteCreate.json new file mode 100644 index 000000000000..8c1cec20a600 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableRouteCreate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "routeName": "route1", + "routeParameters": { + "properties": { + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + }, + "responses": { + "200": { + "body": { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + }, + "201": { + "body": { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableRouteDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableRouteDelete.json new file mode 100644 index 000000000000..d465f75fcdc3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableRouteDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "routeName": "route1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableRouteGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableRouteGet.json new file mode 100644 index 000000000000..9d082a6fe483 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableRouteGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "routeName": "route1" + }, + "responses": { + "200": { + "body": { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "Internet" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableRouteList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableRouteList.json new file mode 100644 index 000000000000..4447ab6d8e0b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableRouteList.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.3.0/24", + "nextHopType": "Internet" + } + }, + { + "name": "route2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt/routes/route2", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.2.0/24", + "nextHopType": "VirtualNetworkGateway" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableUpdateTags.json new file mode 100644 index 000000000000..e84592b028d0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/RouteTableUpdateTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "routeTableName": "testrt", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testrt", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/routeTables/testrt", + "type": "Microsoft.Network/routeTables", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "routes": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderDelete.json new file mode 100644 index 000000000000..83aaae089306 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "securityPartnerProviderName": "securityPartnerProvider" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderGet.json new file mode 100644 index 000000000000..bae4b1ed2164 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "securityPartnerProviderName": "securityPartnerProvider" + }, + "responses": { + "200": { + "body": { + "name": "securityPartnerProvider", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/securityPartnerProviders/securityPartnerProvider", + "type": "Microsoft.Network/securityPartnerProviders", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "securityProviderName": "ZScaler", + "connectionStatus": "Unknown", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderListByResourceGroup.json new file mode 100644 index 000000000000..719331a51cd1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderListByResourceGroup.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "securityPartnerProvider", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/securityPartnerProviders/securityPartnerProvider", + "type": "Microsoft.Network/securityPartnerProviders", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "securityProviderName": "ZScaler", + "connectionStatus": "Unknown", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderListBySubscription.json new file mode 100644 index 000000000000..90bf73e3d441 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderListBySubscription.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "securityPartnerProvider", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/securityPartnerProviders/securityPartnerProvider", + "type": "Microsoft.Network/securityPartnerProviders", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "securityProviderName": "ZScaler", + "connectionStatus": "Unknown", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderPut.json new file mode 100644 index 000000000000..52a13b32f2ff --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderPut.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "securityPartnerProviderName": "securityPartnerProvider", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "securityProviderName": "ZScaler", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "securityPartnerProvider", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/securityPartnerProviders/securityPartnerProvider", + "type": "Microsoft.Network/securityPartnerProviders", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "securityProviderName": "ZScaler", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + } + } + } + }, + "201": { + "body": { + "name": "securityPartnerProvider", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/securityPartnerProviders/securityPartnerProvider", + "type": "Microsoft.Network/securityPartnerProviders", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "securityProviderName": "ZScaler", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderUpdateTags.json new file mode 100644 index 000000000000..e88e0d7cd4f5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SecurityPartnerProviderUpdateTags.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "securityPartnerProviderName": "securityPartnerProvider", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "fw1", + "id": "/subscriptions/subid/resourceGroups/azfwtest/providers/Microsoft.Network/securityPartnerProviders/securityPartnerProvider", + "type": "Microsoft.Network/securityPartnerProviders", + "location": "brazilsouth", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "securityProviderName": "ZScaler" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceCommunityList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceCommunityList.json new file mode 100644 index 000000000000..2b5c6c830d1c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceCommunityList.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Network/bgpServiceCommunities/skype", + "name": "skype", + "type": "Microsoft.Network/bgpServiceCommunities", + "properties": { + "serviceName": "skype", + "bgpCommunities": [ + { + "serviceSupportedRegion": "Global", + "communityName": "Skype For Business Online", + "communityValue": "12076:5030", + "communityPrefixes": [ + "13.67.56.225/32", + "13.67.186.105/32" + ], + "isAuthorizedToUse": true, + "serviceGroup": "O365" + } + ] + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.Network/bgpServiceCommunities/exchange", + "name": "exchange", + "type": "Microsoft.Network/bgpServiceCommunities", + "properties": { + "serviceName": "exchange", + "bgpCommunities": [ + { + "serviceSupportedRegion": "Global", + "communityName": "Exchange Online", + "communityValue": "12076:5040", + "communityPrefixes": [ + "13.67.56.225/32", + "13.67.186.105/32" + ], + "isAuthorizedToUse": true, + "serviceGroup": "O365" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyCreate.json new file mode 100644 index 000000000000..ba0659a7bbf9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyCreate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "parameters": { + "location": "westus" + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ServiceEndpointPolicies/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + }, + "201": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyCreateWithDefinition.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyCreateWithDefinition.json new file mode 100644 index 000000000000..d524a60acf10 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyCreateWithDefinition.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "parameters": { + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ServiceEndpointPolicies/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + }, + "201": { + "body": { + "name": "testnsg", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ServiceEndpointPolicies/testpolicy", + "type": "Microsoft.Network/ServiceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDefinitionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDefinitionCreate.json new file mode 100644 index 000000000000..70e9806b2d07 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDefinitionCreate.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "serviceEndpointPolicyDefinitionName": "testDefinition", + "ServiceEndpointPolicyDefinitions": { + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "testDefinition", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy/serviceEndpointPolicyDefinitions/testDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + }, + "201": { + "body": { + "name": "rule1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/testnsg/securityRules/rule1", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDefinitionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDefinitionDelete.json new file mode 100644 index 000000000000..82cc33974d3f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDefinitionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "serviceEndpointPolicyDefinitionName": "testDefinition" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDefinitionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDefinitionGet.json new file mode 100644 index 000000000000..4c09829ed2dc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDefinitionGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy", + "serviceEndpointPolicyDefinitionName": "testDefinition" + }, + "responses": { + "200": { + "body": { + "name": "testDefinition", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy/serviceEndpointPolicyDefinitions/testDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDefinitionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDefinitionList.json new file mode 100644 index 000000000000..6dc5b6b7ebfb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDefinitionList.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testPolicy" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testDef", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy/serviceEndpointPolicyDefinitions/testDef", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDelete.json new file mode 100644 index 000000000000..06d08cdcb6a8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "serviceEndpointPolicy1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyGet.json new file mode 100644 index 000000000000..0d319e63f7ee --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testServiceEndpointPolicy" + }, + "responses": { + "200": { + "body": { + "name": "testServiceEndpointPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyList.json new file mode 100644 index 000000000000..46ad4fedb44f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyList.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testServiceEndpointPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + }, + { + "name": "testServiceEndpointPolicy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy1", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition1", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyListAll.json new file mode 100644 index 000000000000..d82582890ecf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyListAll.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition1", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + }, + { + "name": "testPolicy1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/serviceEndpointPolicies/testPolicy2", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "properties": { + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition2", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [], + "provisioningState": "Succeeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyUpdateTags.json new file mode 100644 index 000000000000..85b0381dc652 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceEndpointPolicyUpdateTags.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "serviceEndpointPolicyName": "testServiceEndpointPolicy", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testServiceEndpointPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/serviceEndpointPolicies/testServiceEndpointPolicy", + "type": "Microsoft.Network/serviceEndpointPolicies", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "serviceEndpointPolicyDefinitions": [ + { + "name": "StorageServiceEndpointPolicyDefinition", + "properties": { + "description": "Storage Service EndpointPolicy Definition", + "service": "Microsoft.Storage", + "serviceResources": [ + "/subscriptions/subid1", + "/subscriptions/subid1/resourceGroups/storageRg", + "/subscriptions/subid1/resourceGroups/storageRg/providers/Microsoft.Storage/storageAccounts/stAccount" + ] + } + } + ], + "subnets": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceTagsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceTagsList.json new file mode 100644 index 000000000000..0b1da9c30d80 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/ServiceTagsList.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "location": "westcentralus", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "name": "public", + "id": "/subscriptions/subId/providers/Microsoft.Network/serviceTags/public", + "type": "Microsoft.Network/serviceTags", + "changeNumber": "63", + "cloud": "Public", + "values": [ + { + "name": "ApiManagement", + "id": "ApiManagement", + "properties": { + "changeNumber": "7", + "region": "", + "systemService": "AzureApiManagement", + "addressPrefixes": [ + "13.64.39.16/32", + "40.74.146.80/31", + "40.74.147.32/28" + ] + } + }, + { + "name": "ApiManagement.AustraliaCentral", + "id": "ApiManagement.AustraliaCentral", + "properties": { + "changeNumber": "2", + "region": "australiacentral", + "systemService": "AzureApiManagement", + "addressPrefixes": [ + "20.36.106.68/31", + "20.36.107.176/28" + ] + } + }, + { + "name": "AppService", + "id": "AppService", + "properties": { + "changeNumber": "13", + "region": "", + "systemService": "AzureAppService", + "addressPrefixes": [ + "13.64.73.110/32", + "191.235.208.12/32", + "191.235.215.184/32" + ] + } + }, + { + "name": "ServiceBus", + "id": "ServiceBus", + "properties": { + "changeNumber": "10", + "region": "", + "systemService": "AzureServiceBus", + "addressPrefixes": [ + "23.98.82.96/29", + "40.68.127.68/32", + "40.70.146.64/29" + ] + } + }, + { + "name": "ServiceBus.EastUS2", + "id": "ServiceBus.EastUS2", + "properties": { + "changeNumber": "1", + "region": "eastus2", + "systemService": "AzureServiceBus", + "addressPrefixes": [ + "13.68.110.36/32", + "40.70.146.64/29" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetCreate.json new file mode 100644 index 000000000000..cea572f56b77 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetCreate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "subnetParameters": { + "properties": { + "addressPrefix": "10.0.0.0/16" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetCreateServiceEndpoint.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetCreateServiceEndpoint.json new file mode 100644 index 000000000000..d53a730e9c58 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetCreateServiceEndpoint.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "subnetParameters": { + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ], + "provisioningState": "Succeeded" + } + ], + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ], + "provisioningState": "Succeeded" + } + ], + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetCreateWithDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetCreateWithDelegation.json new file mode 100644 index 000000000000..6ceb2cde4904 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetCreateWithDelegation.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2020-03-01", + "subscriptionId": "subId", + "subnetParameters": { + "properties": { + "addressPrefix": "10.0.0.0/16" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetDelete.json new file mode 100644 index 000000000000..27c96c386cc5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetGet.json new file mode 100644 index 000000000000..cf2130f43c50 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetGet.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetGetWithDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetGetWithDelegation.json new file mode 100644 index 000000000000..8b75e3d40702 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetGetWithDelegation.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subnetName": "subnet1", + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2020-03-01", + "subscriptionId": "subId" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subId/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetList.json new file mode 100644 index 000000000000..b0f94fc99ced --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "virtualNetworkName": "vnetname", + "resourceGroupName": "subnet-test", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet1", + "name": "subnet1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/subnet-test/providers/Microsoft.Network/virtualNetworks/vnetname/subnets/subnet2", + "name": "subnet2", + "properties": { + "addressPrefix": "10.0.0.0/16", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetPrepareNetworkPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetPrepareNetworkPolicies.json new file mode 100644 index 000000000000..e1bf094918b9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetPrepareNetworkPolicies.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "subnetName": "subnet1", + "prepareNetworkPoliciesRequestParameters": { + "serviceName": "Microsoft.Sql/managedInstances" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetUnprepareNetworkPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetUnprepareNetworkPolicies.json new file mode 100644 index 000000000000..2baaa822f8fc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/SubnetUnprepareNetworkPolicies.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "subnetName": "subnet1", + "unprepareNetworkPoliciesRequestParameters": { + "serviceName": "Microsoft.Sql/managedInstances" + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/UsageList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/UsageList.json new file mode 100644 index 000000000000..87708f8af869 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/UsageList.json @@ -0,0 +1,265 @@ +{ + "parameters": { + "location": "westus", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "currentValue": 8.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/VirtualNetworks", + "limit": 50.0, + "name": { + "localizedValue": "Virtual Networks", + "value": "VirtualNetworks" + }, + "unit": "Count" + }, + { + "currentValue": 3.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/StaticPublicIPAddresses", + "limit": 20.0, + "name": { + "localizedValue": "Static Public IP Addresses", + "value": "StaticPublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 1.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/NetworkSecurityGroups", + "limit": 100.0, + "name": { + "localizedValue": "Network Security Groups", + "value": "NetworkSecurityGroups" + }, + "unit": "Count" + }, + { + "currentValue": 8.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/PublicIPAddresses", + "limit": 60.0, + "name": { + "localizedValue": "Public IP Addresses", + "value": "PublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/NetworkInterfaces", + "limit": 350.0, + "name": { + "localizedValue": "Network Interfaces", + "value": "NetworkInterfaces" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/LoadBalancers", + "limit": 100.0, + "name": { + "localizedValue": "Load Balancers", + "value": "LoadBalancers" + }, + "unit": "Count" + }, + { + "currentValue": 1.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/ApplicationGateways", + "limit": 50.0, + "name": { + "localizedValue": "Application Gateways", + "value": "ApplicationGateways" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteTables", + "limit": 100.0, + "name": { + "localizedValue": "Route Tables", + "value": "RouteTables" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteFilters", + "limit": 1000.0, + "name": { + "localizedValue": "Route Filters", + "value": "RouteFilters" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/NetworkWatchers", + "limit": 1.0, + "name": { + "localizedValue": "Network Watchers", + "value": "NetworkWatchers" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/PacketCaptures", + "limit": 10.0, + "name": { + "localizedValue": "Packet Captures", + "value": "PacketCaptures" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/DnsServersPerVirtualNetwork", + "limit": 9.0, + "name": { + "localizedValue": "DNS servers per Virtual Network", + "value": "DnsServersPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SubnetsPerVirtualNetwork", + "limit": 1000.0, + "name": { + "localizedValue": "Subnets per Virtual Network", + "value": "SubnetsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/IPConfigurationsPerVirtualNetwork", + "limit": 4096.0, + "name": { + "localizedValue": "IP Configurations per Virtual Network", + "value": "IPConfigurationsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/PeeringsPerVirtualNetwork", + "limit": 10.0, + "name": { + "localizedValue": "Peerings per Virtual Network", + "value": "PeeringsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SecurityRulesPerNetworkSecurityGroup", + "limit": 200.0, + "name": { + "localizedValue": "Security rules per Network Security Group", + "value": "SecurityRulesPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SecurityRuleAddressesOrPortsPerNetworkSecurityGroup", + "limit": 2000.0, + "name": { + "localizedValue": "Security rules addresses or ports per Network Security Group", + "value": "SecurityRuleAddressesOrPortsPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/InboundRulesPerLoadBalancer", + "limit": 150.0, + "name": { + "localizedValue": "Inbound Rules per Load Balancer", + "value": "InboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/FrontendIPConfigurationPerLoadBalancer", + "limit": 10.0, + "name": { + "localizedValue": "Frontend IP Configurations per Load Balancer", + "value": "FrontendIPConfigurationPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/outboundRulesPerLoadBalancer", + "limit": 5.0, + "name": { + "localizedValue": "Outbound Rules per Load Balancer", + "value": "outboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RoutesPerRouteTable", + "limit": 100.0, + "name": { + "localizedValue": "Routes per Route Table", + "value": "RoutesPerRouteTable" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/SecondaryIPConfigurationsPerNetworkInterface", + "limit": 256.0, + "name": { + "localizedValue": "Secondary IP Configurations per Network Interface", + "value": "SecondaryIPConfigurationsPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/InboundRulesPerNetworkInterface", + "limit": 500.0, + "name": { + "localizedValue": "Inbound rules per Network Interface", + "value": "InboundRulesPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteFilterRulesPerRouteFilter", + "limit": 1.0, + "name": { + "localizedValue": "Route filter rules per Route Filter", + "value": "RouteFilterRulesPerRouteFilter" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/westus/usages/RouteFiltersPerExpressRouteBgpPeering", + "limit": 1.0, + "name": { + "localizedValue": "Route filters per Express route BGP Peering", + "value": "RouteFiltersPerExpressRouteBgpPeering" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/UsageListSpacedLocation.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/UsageListSpacedLocation.json new file mode 100644 index 000000000000..8a40c7de48af --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/UsageListSpacedLocation.json @@ -0,0 +1,335 @@ +{ + "parameters": { + "location": "West US", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "currentValue": 12.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/VirtualNetworks", + "limit": 50.0, + "name": { + "localizedValue": "Virtual Networks", + "value": "VirtualNetworks" + }, + "unit": "Count" + }, + { + "currentValue": 1.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/StaticPublicIPAddresses", + "limit": 20.0, + "name": { + "localizedValue": "Static Public IP Addresses", + "value": "StaticPublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 3.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkSecurityGroups", + "limit": 100.0, + "name": { + "localizedValue": "Network Security Groups", + "value": "NetworkSecurityGroups" + }, + "unit": "Count" + }, + { + "currentValue": 12.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PublicIPAddresses", + "limit": 60.0, + "name": { + "localizedValue": "Public IP Addresses", + "value": "PublicIPAddresses" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PublicIpPrefixes", + "limit": 2147483647.0, + "name": { + "localizedValue": "Public Ip Prefixes", + "value": "PublicIpPrefixes" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkInterfaces", + "limit": 24000.0, + "name": { + "localizedValue": "Network Interfaces", + "value": "NetworkInterfaces" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/LoadBalancers", + "limit": 100.0, + "name": { + "localizedValue": "Load Balancers", + "value": "LoadBalancers" + }, + "unit": "Count" + }, + { + "currentValue": 3.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/ApplicationGateways", + "limit": 50.0, + "name": { + "localizedValue": "Application Gateways", + "value": "ApplicationGateways" + }, + "unit": "Count" + }, + { + "currentValue": 5.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteTables", + "limit": 100.0, + "name": { + "localizedValue": "Route Tables", + "value": "RouteTables" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteFilters", + "limit": 1000.0, + "name": { + "localizedValue": "Route Filters", + "value": "RouteFilters" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkWatchers", + "limit": 1.0, + "name": { + "localizedValue": "Network Watchers", + "value": "NetworkWatchers" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PacketCaptures", + "limit": 100.0, + "name": { + "localizedValue": "Packet Captures", + "value": "PacketCaptures" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/ApplicationSecurityGroups", + "limit": 500.0, + "name": { + "localizedValue": "Application Security Groups.", + "value": "ApplicationSecurityGroups" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/DdosProtectionPlans", + "limit": 1.0, + "name": { + "localizedValue": "DDoS Protection Plans.", + "value": "DdosProtectionPlans" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/ServiceEndpointPolicies", + "limit": 200.0, + "name": { + "localizedValue": "Service Endpoint Policies", + "value": "ServiceEndpointPolicies" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/NetworkIntentPolicies", + "limit": 200.0, + "name": { + "localizedValue": "Network Intent Policies", + "value": "NetworkIntentPolicies" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/DnsServersPerVirtualNetwork", + "limit": 9.0, + "name": { + "localizedValue": "DNS servers per Virtual Network", + "value": "DnsServersPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SubnetsPerVirtualNetwork", + "limit": 1000.0, + "name": { + "localizedValue": "Subnets per Virtual Network", + "value": "SubnetsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/IPConfigurationsPerVirtualNetwork", + "limit": 16384.0, + "name": { + "localizedValue": "IP Configurations per Virtual Network", + "value": "IPConfigurationsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/PeeringsPerVirtualNetwork", + "limit": 50.0, + "name": { + "localizedValue": "Peerings per Virtual Network", + "value": "PeeringsPerVirtualNetwork" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecurityRulesPerNetworkSecurityGroup", + "limit": 1000.0, + "name": { + "localizedValue": "Security rules per Network Security Group", + "value": "SecurityRulesPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecurityRulesPerNetworkIntentPolicy", + "limit": 100.0, + "name": { + "localizedValue": "Security rules per Network Intent Policy", + "value": "SecurityRulesPerNetworkIntentPolicy" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RoutesPerNetworkIntentPolicy", + "limit": 100.0, + "name": { + "localizedValue": "Routes per Network Intent Policy", + "value": "RoutesPerNetworkIntentPolicy" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecurityRuleAddressesOrPortsPerNetworkSecurityGroup", + "limit": 2000.0, + "name": { + "localizedValue": "Security rules addresses or ports per Network Security Group", + "value": "SecurityRuleAddressesOrPortsPerNetworkSecurityGroup" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/InboundRulesPerLoadBalancer", + "limit": 150.0, + "name": { + "localizedValue": "Inbound Rules per Load Balancer", + "value": "InboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/FrontendIPConfigurationPerLoadBalancer", + "limit": 10.0, + "name": { + "localizedValue": "Frontend IP Configurations per Load Balancer", + "value": "FrontendIPConfigurationPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/OutboundRulesPerLoadBalancer", + "limit": 5.0, + "name": { + "localizedValue": "Outbound Rules per Load Balancer", + "value": "OutboundRulesPerLoadBalancer" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RoutesPerRouteTable", + "limit": 400.0, + "name": { + "localizedValue": "Routes per Route Table", + "value": "RoutesPerRouteTable" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/SecondaryIPConfigurationsPerNetworkInterface", + "limit": 256.0, + "name": { + "localizedValue": "Secondary IP Configurations per Network Interface", + "value": "SecondaryIPConfigurationsPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/InboundRulesPerNetworkInterface", + "limit": 500.0, + "name": { + "localizedValue": "Inbound rules per Network Interface", + "value": "InboundRulesPerNetworkInterface" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteFilterRulesPerRouteFilter", + "limit": 1.0, + "name": { + "localizedValue": "Route filter rules per Route Filter", + "value": "RouteFilterRulesPerRouteFilter" + }, + "unit": "Count" + }, + { + "currentValue": 0.0, + "id": "/subscriptions/subid/providers/Microsoft.Network/locations/West US/usages/RouteFiltersPerExpressRouteBgpPeering", + "limit": 1.0, + "name": { + "localizedValue": "Route filters per Express route BGP Peering", + "value": "RouteFiltersPerExpressRouteBgpPeering" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubDelete.json new file mode 100644 index 000000000000..89c13fd9f024 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubGet.json new file mode 100644 index 000000000000..2a11388071f7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub1", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [], + "virtualHubRouteTableV2s": [], + "addressPrefix": "10.10.1.0/24", + "sku": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubList.json new file mode 100644 index 000000000000..b724d9ab835a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubList.json @@ -0,0 +1,146 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub1", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ + { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/SpokeVnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ], + "virtualHubRouteTableV2s": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/routeTables/virtualHubRouteTable2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "rt2a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + ], + "addressPrefix": "10.10.1.0/24", + "sku": "Basic" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ + { + "name": "connection2", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2/hubVirtualNetworkConnections/connection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/SpokeVnet2" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ], + "virtualHubRouteTableV2s": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/routeTables/virtualHubRouteTable2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "rt2a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + ], + "addressPrefix": "210.10.1.0/24", + "sku": "Basic" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubListByResourceGroup.json new file mode 100644 index 000000000000..6f636f230db1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubListByResourceGroup.json @@ -0,0 +1,147 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub1", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ + { + "name": "connection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/hubVirtualNetworkConnections/connection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/SpokeVnet1" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ], + "virtualHubRouteTableV2s": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/routeTables/virtualHubRouteTable2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "rt2a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + ], + "addressPrefix": "10.10.1.0/24", + "sku": "Basic" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [ + { + "name": "connection2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/hubVirtualNetworkConnections/connection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/SpokeVnet2" + }, + "allowHubToRemoteVnetTransit": true, + "allowRemoteVnetToUseHubVnetGateways": false + } + } + ], + "virtualHubRouteTableV2s": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2/routeTables/virtualHubRouteTable2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "rt2a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + ], + "addressPrefix": "210.10.1.0/24", + "sku": "Basic" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubPut.json new file mode 100644 index 000000000000..1f6317c022ec --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubPut.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "virtualHubName": "virtualHub2", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "virtualHubParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "addressPrefix": "10.168.0.0/24", + "sku": "Basic" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [], + "virtualHubRouteTableV2s": [], + "addressPrefix": "10.168.0.0/24", + "sku": "Basic" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [], + "virtualHubRouteTableV2s": [], + "addressPrefix": "10.168.0.0/24", + "sku": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubRouteTableV2Delete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubRouteTableV2Delete.json new file mode 100644 index 000000000000..546be3c6417a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubRouteTableV2Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "routeTableName": "virtualHubRouteTable1a", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "virtualHubName": "virtualHub1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubRouteTableV2Get.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubRouteTableV2Get.json new file mode 100644 index 000000000000..f10aef76c383 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubRouteTableV2Get.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "routeTableName": "virtualHubRouteTable1a", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "virtualHubName": "virtualHub1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1a", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "virtualHubRouteTable1a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubRouteTableV2List.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubRouteTableV2List.json new file mode 100644 index 000000000000..79ddec6b60f9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubRouteTableV2List.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "virtualHubName": "virtualHub1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "virtualHubRouteTable1a", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1a", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + }, + { + "name": "virtualHubRouteTable1b", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1b", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.30.0.0/16", + "20.40.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Branches" + ] + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubRouteTableV2Put.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubRouteTableV2Put.json new file mode 100644 index 000000000000..b4f246af9d45 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubRouteTableV2Put.json @@ -0,0 +1,113 @@ +{ + "parameters": { + "routeTableName": "virtualHubRouteTable1a", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "virtualHubName": "virtualHub1", + "virtualHubRouteTableV2Parameters": { + "properties": { + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1a", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "virtualHubRouteTable1a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1/routeTables/virtualHubRouteTable1a", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "name": "virtualHubRouteTable1a", + "properties": { + "provisioningState": "Succeeded", + "routes": [ + { + "destinationType": "CIDR", + "destinations": [ + "20.10.0.0/16", + "20.20.0.0/16" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + }, + { + "destinationType": "CIDR", + "destinations": [ + "0.0.0.0/0" + ], + "nextHopType": "IPAddress", + "nextHops": [ + "10.0.0.68" + ] + } + ], + "attachedConnections": [ + "All_Vnets" + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubUpdateTags.json new file mode 100644 index 000000000000..a53b860c787e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualHubUpdateTags.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "virtualHubName": "virtualHub2", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "virtualHubParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "virtualHub2", + "type": "Microsoft.Network/virtualHubs", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWans/virtualWan1" + }, + "virtualNetworkConnections": [], + "virtualHubRouteTableV2s": [], + "addressPrefix": "10.168.0.0/24", + "sku": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCheckIPAddressAvailability.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCheckIPAddressAvailability.json new file mode 100644 index 000000000000..9cef24b0d89b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCheckIPAddressAvailability.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "ipAddress": "10.0.1.4" + }, + "responses": { + "200": { + "body": { + "available": false, + "availableIPAddresses": [ + "10.0.1.5", + "10.0.1.6", + "10.0.1.7", + "10.0.1.8", + "10.0.1.9" + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreate.json new file mode 100644 index 000000000000..ae170ee324fa --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreate.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + } + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json new file mode 100644 index 000000000000..c03ac564f6c5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateServiceEndpointPolicy.json @@ -0,0 +1,126 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "vnetTest", + "virtualNetworkName": "vnet1", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage" + } + ], + "serviceEndpointPolicies": [ + { + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/serviceEndpointPolicies/ServiceEndpointPolicy1" + } + ] + } + } + ] + }, + "location": "eastus2euap" + } + }, + "responses": { + "200": { + "body": { + "name": "vnet1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus2euap", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "serviceEndpointPolicies": [ + { + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/serviceEndpointPolicies/ServiceEndpointPolicy1" + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "vnet1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus2euap", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "serviceEndpointPolicies": [ + { + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/serviceEndpointPolicies/ServiceEndpointPolicy1" + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateServiceEndpoints.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateServiceEndpoints.json new file mode 100644 index 000000000000..7a2a3698c33c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateServiceEndpoints.json @@ -0,0 +1,111 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "vnetTest", + "virtualNetworkName": "vnet1", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "serviceEndpoints": [ + { + "service": "Microsoft.Storage" + } + ] + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "vnet1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "vnet1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "id": "/subscriptions/subid/resourceGroups/vnetTest/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "properties": { + "addressPrefix": "10.0.0.0/16", + "ipConfigurations": [], + "resourceNavigationLinks": [], + "serviceEndpoints": [ + { + "provisioningState": "Succeeded", + "service": "Microsoft.Storage", + "locations": [ + "eastus2(stage)", + "usnorth(stage)" + ] + } + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateSubnet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateSubnet.json new file mode 100644 index 000000000000..75045cce7d92 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateSubnet.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24" + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json new file mode 100644 index 000000000000..92b14e78592e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-2", + "properties": { + "addressPrefixes": [ + "10.0.0.0/28", + "10.0.1.0/28" + ] + } + } + ] + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-2", + "name": "test-2", + "properties": { + "addressPrefixes": [ + "10.0.0.0/28", + "10.1.0.0/28" + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-2", + "name": "test-2", + "properties": { + "addressPrefixes": [ + "10.0.0.0/28", + "10.0.1.0/28" + ], + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateSubnetWithDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateSubnetWithDelegation.json new file mode 100644 index 000000000000..1889f8aa5008 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateSubnetWithDelegation.json @@ -0,0 +1,114 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "delegations": [ + { + "name": "myDelegation", + "properties": { + "serviceName": "Microsoft.Sql/managedInstances" + } + } + ] + } + } + ] + }, + "location": "westcentralus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Sql/managedInstances", + "actions": [] + } + } + ], + "purpose": "" + } + } + ], + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westcentralus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded", + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Sql/managedInstances", + "actions": [] + } + } + ], + "purpose": "" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateWithBgpCommunities.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateWithBgpCommunities.json new file mode 100644 index 000000000000..6e5756801f43 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkCreateWithBgpCommunities.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "parameters": { + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24" + } + } + ], + "bgpCommunities": { + "virtualNetworkCommunity": "12076:60000" + } + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "bgpCommunities": { + "virtualNetworkCommunity": "12076:60000", + "regionalCommunity": "12076:51004" + }, + "virtualNetworkPeerings": [] + } + } + }, + "201": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "bgpCommunities": { + "virtualNetworkCommunity": "12076:60000", + "regionalCommunity": "12076:51004" + }, + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkDelete.json new file mode 100644 index 000000000000..a5134f99d2f9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionCreate.json new file mode 100644 index 000000000000..c72c2238dabd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionCreate.json @@ -0,0 +1,136 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "connS2S", + "parameters": { + "properties": { + "virtualNetworkGateway1": { + "properties": { + "ipConfigurations": [ + { + "properties": { + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + } + }, + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1" + } + ], + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1" + }, + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "location": "centralus", + "tags": {} + }, + "localNetworkGateway2": { + "properties": { + "localNetworkAddressSpace": { + "addressPrefixes": [ + "10.1.0.0/16" + ] + }, + "gatewayIpAddress": "x.x.x.x" + }, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "location": "centralus", + "tags": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "dpdTimeoutSeconds": 30, + "sharedKey": "Abc123", + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [] + }, + "location": "centralus" + } + }, + "responses": { + "201": { + "body": { + "name": "connS2S", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/connS2S", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "properties": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "dpdTimeoutSeconds": 30, + "sharedKey": "Abc123", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + }, + "200": { + "body": { + "name": "connS2S", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/connS2S", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Updating", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "properties": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "dpdTimeoutSeconds": 30, + "sharedKey": "Abc123", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionDelete.json new file mode 100644 index 000000000000..0a6dc2785ef8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "conn1" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionGet.json new file mode 100644 index 000000000000..547000adb03c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionGet.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "connS2S" + }, + "responses": { + "200": { + "body": { + "name": "connS2S", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/connS2S", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw", + "properties": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "dpdTimeoutSeconds": 30, + "sharedKey": "Abc123", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "connectionStatus": "Connecting", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json new file mode 100644 index 000000000000..78a548c2b327 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionGetSharedKey.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "connS2S" + }, + "responses": { + "200": { + "body": { + "value": "AzureAbc123" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json new file mode 100644 index 000000000000..3988dddc65fc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionResetSharedKey.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "conn1", + "parameters": { + "keyLength": 128 + } + }, + "responses": { + "200": { + "body": { + "keyLength": 128 + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json new file mode 100644 index 000000000000..059c70ae6883 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionSetSharedKey.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "connS2S", + "parameters": { + "value": "AzureAbc123" + } + }, + "responses": { + "200": { + "body": { + "value": "AzureAbc123" + } + }, + "201": { + "body": { + "value": "AzureAbc123" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionStartPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionStartPacketCapture.json new file mode 100644 index 000000000000..9d3e0e3f4935 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionStartPacketCapture.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngwcn1" + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json new file mode 100644 index 000000000000..2091d0c0e52b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngwcn1", + "parameters": { + "filterData": "{'TracingFlags': 11,'MaxPacketBufferSize': 120,'MaxFileSize': 200,'Filters': [{'SourceSubnets': ['20.1.1.0/24'],'DestinationSubnets': ['10.1.1.0/24'],'SourcePort': [500],'DestinationPort': [4500],'Protocol': 6,'TcpFlags': 16,'CaptureSingleDirectionTrafficOnly': true}]}" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionStopPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionStopPacketCapture.json new file mode 100644 index 000000000000..1ee5f21e4238 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionStopPacketCapture.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngwcn1", + "parameters": { + "sasUrl": "https://teststorage.blob.core.windows.net/?sv=2018-03-28&ss=bfqt&srt=sco&sp=rwdlacup&se=2019-09-13T07:44:05Z&st=2019-09-06T23:44:05Z&spr=https&sig=V1h9D1riltvZMI69d6ihENnFo%2FrCvTqGgjO2lf%2FVBhE%3D" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json new file mode 100644 index 000000000000..0d8917bd36fd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionUpdateTags.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "test", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "test", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/test", + "type": "Microsoft.Network/connections", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/lgw", + "properties": {} + }, + "connectionType": "IPsec", + "routingWeight": 0, + "sharedKey": "temp1234", + "enableBgp": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "connectionStatus": "Unknown", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionsList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionsList.json new file mode 100644 index 000000000000..1a6305eaf296 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayConnectionsList.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "conn1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/conn1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1", + "properties": {} + }, + "localNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw1", + "properties": {} + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv1", + "routingWeight": 0, + "dpdTimeoutSeconds": 30, + "enableBgp": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + }, + { + "name": "conn2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/conn2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/connections", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2", + "properties": {} + }, + "localNetworkGateway2": { + "properties": {}, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw2" + }, + "connectionType": "IPsec", + "connectionProtocol": "IKEv2", + "routingWeight": 0, + "dpdTimeoutSeconds": 20, + "enableBgp": false, + "useLocalAzureIpAddress": true, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayDelete.json new file mode 100644 index 000000000000..65a5b960690b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json new file mode 100644 index 000000000000..38c6a0fd5ee0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGenerateVpnClientPackage.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": {} + }, + "responses": { + "200": { + "body": "" + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json new file mode 100644 index 000000000000..6b3e1f269cf0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGenerateVpnProfile.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": {} + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGet.json new file mode 100644 index 000000000000..5891e77c0cda --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGet.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "enablePrivateIpAddress": false, + "activeActive": false, + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "radiusServers": [ + { + "radiusServerAddress": "10.1.0.0", + "radiusServerScore": 20 + } + ] + }, + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json new file mode 100644 index 000000000000..a4f82c492917 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetAdvertisedRoutes.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "peer": "test" + }, + "responses": { + "202": {}, + "200": { + "body": {} + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json new file mode 100644 index 000000000000..e03de2746a6b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetBGPPeerStatus.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": {} + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json new file mode 100644 index 000000000000..4dd924b7fa3c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "200": { + "body": { + "saLifeTimeSeconds": 86473, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup2", + "pfsGroup": "PFS2" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json new file mode 100644 index 000000000000..1bac4371a998 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json new file mode 100644 index 000000000000..ee56d4b675b4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "resourceGroupName": "p2s-vnet-test", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "virtualNetworkGatewayName": "vpnp2sgw" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "vpnConnectionId": "IKEv2_1e1cfe59-5c7c-4315-a876-b11fbfdfeed4", + "vpnConnectionDuration": 900, + "vpnConnectionTime": "2019-05-02T22:26:22", + "publicIpAddress": "167.220.2.232:45522", + "privateIpAddress": "192.168.210.2", + "vpnUserName": "gwp2schildcert", + "maxBandwidth": 240000000, + "egressPacketsTransferred": 557, + "egressBytesTransferred": 33420, + "ingressPacketsTransferred": 557, + "ingressBytesTransferred": 33420, + "maxPacketsPerSecond": 4 + }, + { + "vpnConnectionId": "IKEv2_571cfe59-2c7d-1415-e813-c51fbfdfea16", + "vpnConnectionDuration": 800, + "vpnConnectionTime": "2019-05-01T21:06:12", + "publicIpAddress": "167.220.2.232:45213", + "privateIpAddress": "192.168.210.1", + "vpnUserName": "gwp2schildcert", + "maxBandwidth": 220000000, + "egressPacketsTransferred": 357, + "egressBytesTransferred": 23420, + "ingressPacketsTransferred": 357, + "ingressBytesTransferred": 23420, + "maxPacketsPerSecond": 4 + } + ] + } + }, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayLearnedRoutes.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayLearnedRoutes.json new file mode 100644 index 000000000000..e03de2746a6b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayLearnedRoutes.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": {} + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayList.json new file mode 100644 index 000000000000..3088e2ec40b6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayList.json @@ -0,0 +1,132 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "vpngw1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "loc1", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "default", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1/ipConfigurations/default", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/vpngw1-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 2 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "enablePrivateIpAddress": false, + "activeActive": false, + "vpnClientConfiguration": { + "vpnClientProtocols": [], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [] + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.0.14", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + }, + { + "name": "vpngw2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "loc2", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "default", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2/ipConfigurations/default", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "privateIPAddress": "10.1.0.7", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/vpngw2-ip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 2 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "enablePrivateIpAddress": true, + "activeActive": false, + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "radiusServers": [ + { + "radiusServerAddress": "10.2.0.0", + "radiusServerScore": 20 + } + ] + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.1.0.46", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayReset.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayReset.json new file mode 100644 index 000000000000..c73c001880d7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayReset.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json new file mode 100644 index 000000000000..96604094cfea --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayResetVpnClientSharedKey.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json new file mode 100644 index 000000000000..40afe588a987 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "vpnclientIpsecParams": { + "saLifeTimeSeconds": 86473, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup2", + "pfsGroup": "PFS2" + } + }, + "responses": { + "202": {}, + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayStartPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayStartPacketCapture.json new file mode 100644 index 000000000000..623ce36f9f35 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayStartPacketCapture.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json new file mode 100644 index 000000000000..7750b979796f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": { + "filterData": "{'TracingFlags': 11,'MaxPacketBufferSize': 120,'MaxFileSize': 200,'Filters': [{'SourceSubnets': ['20.1.1.0/24'],'DestinationSubnets': ['10.1.1.0/24'],'SourcePort': [500],'DestinationPort': [4500],'Protocol': 6,'TcpFlags': 16,'CaptureSingleDirectionTrafficOnly': true}]}" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayStopPacketCapture.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayStopPacketCapture.json new file mode 100644 index 000000000000..3cdaeb8023d7 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayStopPacketCapture.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": { + "sasUrl": "https://teststorage.blob.core.windows.net/?sv=2018-03-28&ss=bfqt&srt=sco&sp=rwdlacup&se=2019-09-13T07:44:05Z&st=2019-09-06T23:44:05Z&spr=https&sig=V1h9D1riltvZMI69d6ihENnFo%2FrCvTqGgjO2lf%2FVBhE%3D" + } + }, + "responses": { + "202": {}, + "200": { + "body": "\"{\"Status\":\"Successful\",\"Data\":null}\"" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json new file mode 100644 index 000000000000..caf509473007 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewaySupportedVpnDevice.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw" + }, + "responses": { + "200": { + "body": "" + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayUpdate.json new file mode 100644 index 000000000000..bbe5756da3cf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayUpdate.json @@ -0,0 +1,220 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": { + "properties": { + "ipConfigurations": [ + { + "properties": { + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + }, + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + } + }, + "name": "gwipconfig1" + } + ], + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "enableDnsForwarding": true, + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1" + }, + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "radiusServers": [ + { + "radiusServerAddress": "10.2.0.0", + "radiusServerScore": 20, + "radiusServerSecret": "radiusServerSecret" + } + ] + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + }, + "location": "centralus" + } + }, + "responses": { + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "activeActive": false, + "enableDnsForwarding": true, + "inboundDnsForwardingEndpoint": "10.0.1.14", + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "radiusServers": [ + { + "radiusServerAddress": "10.2.0.0", + "radiusServerScore": 20 + } + ] + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + }, + "201": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "centralus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "gwipconfig1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 0 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "enableBgp": false, + "activeActive": false, + "enableDnsForwarding": true, + "enablePrivateIpAddress": false, + "inboundDnsForwardingEndpoint": "10.0.1.14", + "vpnClientConfiguration": { + "vpnClientProtocols": [ + "OpenVPN" + ], + "vpnClientRootCertificates": [], + "vpnClientRevokedCertificates": [], + "radiusServers": [ + { + "radiusServerAddress": "10.2.0.0", + "radiusServerScore": 20 + } + ] + }, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayUpdateTags.json new file mode 100644 index 000000000000..03e95aa7c83a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayUpdateTags.json @@ -0,0 +1,83 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayName": "vpngw", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw", + "type": "Microsoft.Network/virtualNetworkGateways", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "ipConfigurations": [ + { + "name": "default", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/default", + "properties": { + "provisioningState": "Succeeded", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testpub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/GatewaySubnet" + } + } + } + ], + "sku": { + "name": "VpnGw1", + "tier": "VpnGw1", + "capacity": 2 + }, + "gatewayType": "Vpn", + "vpnType": "RouteBased", + "vpnGatewayGeneration": "None", + "enableBgp": false, + "activeActive": false, + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.0.254", + "peerWeight": 0, + "bgpPeeringAddresses": [ + { + "ipconfigurationId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1", + "defaultBgpIpAddresses": [ + "10.3.1.254" + ], + "customBgpIpAddresses": [ + "169.254.21.10" + ], + "tunnelIpAddresses": [ + "52.161.10.135" + ] + } + ] + }, + "customRoutes": { + "addressPrefixes": [ + "101.168.0.6/32" + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json new file mode 100644 index 000000000000..d2b9d77c5622 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkGatewayConnectionName": "vpngw", + "parameters": { + "vendor": "Cisco", + "deviceFamily": "ISR", + "firmwareVersion": "IOS 15.1 (Preview)" + } + }, + "responses": { + "200": { + "body": "! Microsoft Corporation\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! Sample VPN tunnel configuration template for IOS-based devices\r\n!\r\n! This configuration template applies to Cisco VPN devices running IOS 15.1 or beyond (ISR or ASR)\r\n!\r\n\r\n\r\n\t\t\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! ACL rules\r\n!\r\n! Some VPN devices require explicit ACL rules to allow cross-premises traffic:\r\n!\r\n! 1. Allow traffic between on premises address ranges and VNet address ranges\r\n! 2. Allow IKE traffic (UDP:500) between on premises VPN devices and Azure VPN gateway\r\n! 3. Allow IPsec traffic (Proto:ESP) between on premises VPN devices and Azure VPN gateway\r\n!\r\n\t\t\r\naccess-list 101 permit ip 10.1.0.0 0.0.255.255 10.0.0.0 0.0.255.255\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! Internet Key Exchange (IKE) configuration\r\n!\r\n! This section specifies the authentication, encryption, hashing, and Diffie-Hellman group parameters for IKE\r\n! main mode or phase 1\r\n!\r\n\r\ncrypto ikev2 proposal SwaggerS2S-proposal\r\n encryption DES3\r\n integrity SHA384\r\n group DHGroup24\r\n lifetime 3600\r\n exit\r\n\r\ncrypto ikev2 policy SwaggerS2S-policy\r\n proposal SwaggerS2S-proposal\r\n exit\r\n\r\ncrypto ikev2 keyring SwaggerBranch-keyring\r\n\t\t\r\n\t\tpeer 52.173.199.254\r\n\t\taddress 52.173.199.254\r\n\t\tpre-shared-key lALEHuppeopJmA94exRNiRr2QzuZ6lOsvzu5IlJUEA6LthbTc8g5MTT86MCsGNMzGkTAaLuLnEJoD1Cn4cIlr94qKZm9drsgllzWvsPNezS71stAkaW1Bb7h6GBnDlDP\r\n exit\r\n\r\ncrypto ikev2 profile SwaggerS2S-profile\r\n match address local 10.3.0.0\r\n\tmatch identity remote address 52.173.199.254 255.255.255.255\r\n\t\t\r\n authentication remote pre-share\r\n authentication local pre-share\r\n keyring SwaggerBranch-keyring\r\n exit\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! IPsec configuration\r\n!\r\n! This section specifies encryption, authentication, tunnel mode properties for the Phase 2 negotiation\r\n!\r\ncrypto ipsec transform-set SwaggerS2S-TransformSet DES3 DES3\r\n mode tunnel\r\n exit\r\n\r\n! ---------------------------------------------------------------------------------------------------------------------\r\n! Crypto map configuration\r\n!\r\n! This section defines a crypto profile that binds the cross-premises network traffic to the IPsec and IKE\r\n! policy profiles for this connection. Then defines the VTI (virtual tunnel interface) with the crypto\r\n! profile. A random interface number (tunnel 1) was used with a random link local address (169.254.0.1/28)\r\n! for the tunnel interface. If either selection is already used in the VPN device, please select another\r\n! interface number or address. The only requirement is that they must not overlap with another interface\r\n! on the same VPN device.\r\n!\r\ncrypto ipsec profile SwaggerS2S-IPsecProfile\r\n set transform-set SwaggerS2S-TransformSet\r\n set ikev2-profile SwaggerS2S-profile\r\n set pfs None\r\n set security-association lifetime 3600\r\n exit\r\n\r\n\r\nint tunnel 52.173.199.254\r\n ip address 169.254.0.1 255.255.255.252\r\n ip tcp adjust-mss 1350\r\n tunnel source 10.3.0.0\r\n tunnel mode ipsec ipv4\r\n tunnel destination 52.173.199.254\r\n tunnel protection ipsec profile SwaggerS2S-IPsecProfile\r\n exit\r\n\r\n\tip route 10.0.0.0 255.255.0.0 tunnel 52.173.199.254 " + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewaysDisconnectP2sVpnConnections.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewaysDisconnectP2sVpnConnections.json new file mode 100644 index 000000000000..49a90c45406f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewaysDisconnectP2sVpnConnections.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "vpn-gateway-test", + "virtualNetworkGatewayName": "vpngateway", + "api-version": "2020-03-01", + "request": { + "vpnConnectionIds": [ + "vpnconnId1", + "vpnconnId2" + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewaysListConnections.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewaysListConnections.json new file mode 100644 index 000000000000..a578020ac710 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGatewaysListConnections.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "testrg", + "virtualNetworkGatewayName": "test-vpn-gateway-1", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "test-vpn-connection", + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/connections/test-vpn-connection", + "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"", + "type": "Microsoft.Network/connections", + "location": "eastus", + "properties": { + "provisioningState": "Succeeded", + "resourceGuid": "00000000-0000-0000-0000-000000000000", + "virtualNetworkGateway1": { + "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkGateways/test-vpn-gateway-1" + }, + "virtualNetworkGateway2": { + "id": "/subscriptions/subid/resourceGroups/testrg-2/providers/Microsoft.Network/virtualNetworkGateways/test-vpn-gateway-2" + }, + "connectionType": "Vnet2Vnet", + "routingWeight": 22, + "enableBgp": true, + "usePolicyBasedTrafficSelectors": false, + "ipsecPolicies": [], + "trafficSelectorPolicies": [], + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0 + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGet.json new file mode 100644 index 000000000000..1d4843696d2b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGet.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "subnet1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.1.0/24", + "ipConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe" + } + ] + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGetResourceNavigationLinks.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGetResourceNavigationLinks.json new file mode 100644 index 000000000000..8abc34f2f3b0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGetResourceNavigationLinks.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "vnet", + "subnetName": "subnet" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "redisCache_redis-tester", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/subnet/resourceNavigationLinks/redisCache_redis-tester", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworks/subnets/resourceNavigationLinks", + "properties": { + "provisioningState": "Succeeded", + "linkedResourceType": "Microsoft.Cache/redis", + "link": "/subscriptions/subid/resourceGroups/another-rg/providers/Microsoft.Cache/Redis/redis-tester" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGetServiceAssociationLinks.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGetServiceAssociationLinks.json new file mode 100644 index 000000000000..f5c4030922c9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGetServiceAssociationLinks.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "vnet", + "subnetName": "subnet" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "acisal", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet/subnets/subnet/serviceAssociationLinks/acisal", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/virtualNetworks/subnets/serviceAssociationLinks", + "properties": { + "provisioningState": "Succeeded", + "linkedResourceType": "Microsoft.ContainerInstance/containerGroups", + "allowDelete": true, + "locations": [ + "westus" + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGetWithServiceAssociationLink.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGetWithServiceAssociationLink.json new file mode 100644 index 000000000000..0e6fb0f836c3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGetWithServiceAssociationLink.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "subnet1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1", + "etag": "W/\"4d3e91b4-f67f-48be-880b-e4a8abdd019e\"", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.214.0/24", + "ipConfigurationProfiles": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkProfiles/networkProfile1/containerNetworkInterfaceConfigurations/eth0/ipConfigurations/ipconfigprofile1" + } + ], + "serviceAssociationLinks": [ + { + "name": "serviceAssociationLink1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/serviceAssociationLinks/serviceAssociationLink1", + "etag": "W/\"4d3e91b4-f67f-48be-880b-e4a8abdd019e\"", + "properties": { + "provisioningState": "Succeeded", + "linkedResourceType": "Microsoft.Provider/resourceType" + } + } + ], + "serviceEndpoints": [], + "delegations": [ + { + "name": "aciDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/delegations/aciDelegation", + "etag": "W/\"4d3e91b4-f67f-48be-880b-e4a8abdd019e\"", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [ + "Microsoft.Network/virtualNetworks/subnets/action" + ] + } + } + ] + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGetWithSubnetDelegation.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGetWithSubnetDelegation.json new file mode 100644 index 000000000000..3fca8e5556db --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkGetWithSubnetDelegation.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subId", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet" + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [ + { + "name": "subnet1", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1", + "properties": { + "provisioningState": "Succeeded", + "addressPrefix": "10.0.1.0/24", + "ipConfigurations": [ + { + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe" + } + ], + "delegations": [ + { + "name": "myDelegation", + "id": "/subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/subnet1/delegations/myDelegation", + "properties": { + "provisioningState": "Succeeded", + "serviceName": "Microsoft.Provider/resourceType", + "actions": [] + } + } + ], + "purpose": "" + } + } + ], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkList.json new file mode 100644 index 000000000000..77c4cbd4ef9b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkList.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1", + "name": "vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/8" + ] + }, + "dhcpOptions": { + "dnsServers": [] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2", + "name": "vnet2", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "dhcpOptions": { + "dnsServers": [ + "8.8.8.8" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkListAll.json new file mode 100644 index 000000000000..d38aea292276 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkListAll.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1", + "name": "vnet1", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/8" + ] + }, + "dhcpOptions": { + "dnsServers": [] + }, + "subnets": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/test-1", + "name": "test-1", + "properties": { + "addressPrefix": "10.0.0.0/24", + "provisioningState": "Succeeded" + } + } + ], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualNetworks/vnet2", + "name": "vnet2", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "properties": { + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "dhcpOptions": { + "dnsServers": [ + "8.8.8.8" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [], + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkListUsage.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkListUsage.json new file mode 100644 index 000000000000..97498890f720 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkListUsage.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "virtualNetworkName": "vnetName", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "currentValue": -1.0, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetName/subnets/GatewaySubnet", + "limit": -1.0, + "name": { + "localizedValue": "Subnet size and usage", + "value": "SubnetSpace" + }, + "unit": "Count" + }, + { + "currentValue": 2.0, + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetName/subnets/newSubnet", + "limit": 3.0, + "name": { + "localizedValue": "Subnet size and usage", + "value": "SubnetSpace" + }, + "unit": "Count" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkPeeringCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkPeeringCreate.json new file mode 100644 index 000000000000..589065ff061e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkPeeringCreate.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "virtualNetworkPeeringName": "peer", + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "VirtualNetworkPeeringParameters": { + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkPeeringDelete.json new file mode 100644 index 000000000000..ca8a40017af4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "virtualNetworkPeeringName": "peer", + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkPeeringGet.json new file mode 100644 index 000000000000..cbc4ea6eb73d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkPeeringGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "virtualNetworkPeeringName": "peer", + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkPeeringList.json new file mode 100644 index 000000000000..e059b08bb886 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkPeeringList.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "virtualNetworkName": "vnet1", + "resourceGroupName": "peerTest", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet2" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "12.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet1/virtualNetworkPeerings/peer2", + "name": "peer", + "properties": { + "allowVirtualNetworkAccess": true, + "allowForwardedTraffic": false, + "allowGatewayTransit": false, + "useRemoteGateways": false, + "remoteVirtualNetwork": { + "id": "/subscriptions/subid/resourceGroups/peerTest/providers/Microsoft.Network/virtualNetworks/vnet3" + }, + "remoteAddressSpace": { + "addressPrefixes": [ + "13.0.0.0/8" + ] + }, + "peeringState": "Initiated", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapCreate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapCreate.json new file mode 100644 index 000000000000..75fcf6903664 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapCreate.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "test-vtap", + "parameters": { + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/ipconfig1" + } + }, + "location": "centraluseuap" + } + }, + "responses": { + "200": { + "body": { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + } + }, + "201": { + "body": { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapDelete.json new file mode 100644 index 000000000000..0a2c7c63c7ec --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "test-vtap" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapGet.json new file mode 100644 index 000000000000..ef651a47ab15 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapGet.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "testvtap" + }, + "responses": { + "200": { + "body": { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapList.json new file mode 100644 index 000000000000..75e7205af2da --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapList.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + }, + { + "name": "testvtap2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap2", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface3/tapConfigurations/testtapConfiguration" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapListAll.json new file mode 100644 index 000000000000..fc3648782abd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapListAll.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testvtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + } + }, + { + "name": "testvtap2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/testvtap2", + "etag": "etag", + "type": "Microsoft.Network/virtualNetworkTaps", + "location": "centraluseuap", + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "resourceGuid": "6A7C139D-8B8D-499B-B7CB-4F3F02A8A44F", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface3/tapConfigurations/testtapConfiguration" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapUpdateTags.json new file mode 100644 index 000000000000..cbc63fe1d28f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkTapUpdateTags.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "tapName": "test-vtap", + "tapParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-vtap", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkTaps/test-vtap", + "location": "eastus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "destinationNetworkInterfaceIPConfiguration": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface/ipConfigurations/testIPConfig1" + }, + "destinationPort": 4789, + "provisioningState": "Succeded", + "networkInterfaceTapConfigurations": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkInterfaces/testNetworkInterface2/tapConfigurations/testtapConfiguration" + } + ] + }, + "type": "Microsoft.Network/virtualNetworkTaps" + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkUpdateTags.json new file mode 100644 index 000000000000..7dde52e427e6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualNetworkUpdateTags.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualNetworkName": "test-vnet", + "location": "westus", + "parameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "test-vnet", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/test-vnet", + "type": "Microsoft.Network/virtualNetworks", + "location": "westus", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "subnets": [], + "virtualNetworkPeerings": [] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterDelete.json new file mode 100644 index 000000000000..809097521f95 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterGet.json new file mode 100644 index 000000000000..feefb4d890ae --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": { + "body": { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterListByResourceGroup.json new file mode 100644 index 000000000000..0453dfa5b176 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterListByResourceGroup.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterListBySubscription.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterListBySubscription.json new file mode 100644 index 000000000000..32b4c1e92586 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterListBySubscription.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPeeringDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPeeringDelete.json new file mode 100644 index 000000000000..f872f4a7740e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPeeringDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "peeringName": "peering1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPeeringGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPeeringGet.json new file mode 100644 index 000000000000..20a380d3b5e6 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPeeringGet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "peeringName": "peering1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": { + "body": { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPeeringList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPeeringList.json new file mode 100644 index 000000000000..09c82a8417cd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPeeringList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPeeringPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPeeringPut.json new file mode 100644 index 000000000000..d71f127d5be9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPeeringPut.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "peeringName": "peering1", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter", + "parameters": { + "properties": { + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + }, + "responses": { + "200": { + "body": { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + }, + "201": { + "body": { + "name": "peering1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1", + "etag": "W/\"72090554-7e3b-43f2-80ad-99a9020dcb11\"", + "properties": { + "provisioningState": "Succeeded", + "peerIp": "192.168.1.5", + "peerAsn": 20000 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPut.json new file mode 100644 index 000000000000..fa00168276dc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualRouterPut.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualRouterName": "virtualRouter", + "parameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + }, + "201": { + "body": { + "name": "virtualRouter", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter", + "type": "Microsoft.Network/virtualRouters", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualRouterAsn": 10000, + "virtualRouterIps": [ + "192.168.1.1", + "192.168.1.2" + ], + "hostedGateway": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vnetGateway" + }, + "peerings": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualRouters/virtualRouter/peerings/peering1" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANDelete.json new file mode 100644 index 000000000000..0540b19f4d4e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "VirtualWANName": "virtualWan1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANGet.json new file mode 100644 index 000000000000..ef022f839f3f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANGet.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "VirtualWANName": "wan1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANList.json new file mode 100644 index 000000000000..a8bf47037ad1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANList.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualWANs/wan2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "wan2", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANListByResourceGroup.json new file mode 100644 index 000000000000..5c8047f0f93a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANListByResourceGroup.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "wan2", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub3", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub4" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite3", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite4" + ], + "type": "Basic" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANPut.json new file mode 100644 index 000000000000..d54104e39bec --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANPut.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "VirtualWANName": "wan1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "WANParameters": { + "location": "West US", + "tags": { + "key1": "value1" + }, + "properties": { + "disableVpnEncryption": false, + "type": "Basic" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANUpdateTags.json new file mode 100644 index 000000000000..6a1ddb0a8820 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWANUpdateTags.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "VirtualWANName": "wan1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "WANParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "wan1", + "type": "Microsoft.Network/virtualWANs", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "disableVpnEncryption": false, + "virtualHubs": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/hub2" + ], + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2" + ], + "type": "Basic" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWanSupportedSecurityProviders.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWanSupportedSecurityProviders.json new file mode 100644 index 000000000000..8d15e63694d5 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VirtualWanSupportedSecurityProviders.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "virtualWANName": "wan1" + }, + "responses": { + "200": { + "description": "Request successful.", + "body": { + "supportedProviders": [ + { + "name": "AzureFirewall", + "url": "", + "type": "Native" + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssNetworkInterfaceGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssNetworkInterfaceGet.json new file mode 100644 index 000000000000..146f80e3d7f4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssNetworkInterfaceGet.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "networkInterfaceName": "nic1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "1" + }, + "responses": { + "200": { + "body": { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "dns.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssNetworkInterfaceIpConfigGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssNetworkInterfaceIpConfigGet.json new file mode 100644 index 000000000000..5b7c23b7b56b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssNetworkInterfaceIpConfigGet.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "2", + "networkInterfaceName": "nic1", + "ipConfigurationName": "ip1" + }, + "responses": { + "200": { + "body": { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/2/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.6", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.2" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssNetworkInterfaceIpConfigList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssNetworkInterfaceIpConfigList.json new file mode 100644 index 000000000000..e14de4e82a72 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssNetworkInterfaceIpConfigList.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "2", + "networkInterfaceName": "nic1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/2/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.6", + "privateIPAllocationMethod": "Dynamic", + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.2" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssNetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssNetworkInterfaceList.json new file mode 100644 index 000000000000..0ec937148391 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssNetworkInterfaceList.json @@ -0,0 +1,118 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualMachineScaleSetName": "vmss1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.4", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.0" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "ruw4wz3grewudjsyzrxj44pxod.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0" + } + } + }, + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "ruw4wz3grewudjsyzrxj44pxod.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssPublicIpGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssPublicIpGet.json new file mode 100644 index 000000000000..229c15712a0d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssPublicIpGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "virtualMachineScaleSetName": "vmss1", + "resourceGroupName": "vmss-tester", + "api-version": "2018-10-01", + "subscriptionId": "subid", + "virtualmachineIndex": 1, + "networkInterfaceName": "nic1", + "ipConfigurationName": "ip1", + "publicIpAddressName": "pub1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm1.testvmssacc", + "fqdn": "vm1.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.119.72", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssPublicIpListAll.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssPublicIpListAll.json new file mode 100644 index 000000000000..605e0b831869 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssPublicIpListAll.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "virtualMachineScaleSetName": "vmss1", + "resourceGroupName": "vmss-tester", + "api-version": "2018-10-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm1.testvmssacc", + "fqdn": "vm1.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.119.72", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + }, + { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm3.testvmssacc", + "fqdn": "vm3.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.118.216", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssVmNetworkInterfaceList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssVmNetworkInterfaceList.json new file mode 100644 index 000000000000..e4f1cbf14ebf --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssVmNetworkInterfaceList.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2018-10-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "virtualMachineScaleSetName": "vmss1", + "virtualmachineIndex": "1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "nic1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1", + "properties": { + "provisioningState": "Succeeded", + "ipConfigurations": [ + { + "name": "ip1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1", + "properties": { + "provisioningState": "Succeeded", + "privateIPAddress": "10.0.0.5", + "privateIPAllocationMethod": "Dynamic", + "publicIPAddress": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1" + }, + "subnet": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1" + }, + "primary": true, + "privateIPAddressVersion": "IPv4", + "loadBalancerBackendAddressPools": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/addressPool1" + } + ], + "loadBalancerInboundNatRules": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natPool1.1" + } + ] + } + } + ], + "dnsSettings": { + "dnsServers": [], + "appliedDnsServers": [], + "internalDomainNameSuffix": "ruw4wz3grewudjsyzrxj44pxod.cdmx.internal.cloudapp.net" + }, + "macAddress": "00-00-00-00-00-00", + "enableAcceleratedNetworking": false, + "enableIPForwarding": false, + "networkSecurityGroup": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1" + }, + "primary": true, + "virtualMachine": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1" + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssVmPublicIpList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssVmPublicIpList.json new file mode 100644 index 000000000000..d21f5d40ed03 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VmssVmPublicIpList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "virtualMachineScaleSetName": "vmss1", + "resourceGroupName": "vmss-tester", + "api-version": "2018-10-01", + "subscriptionId": "subid", + "virtualmachineIndex": 1, + "networkInterfaceName": "nic1", + "ipConfigurationName": "ip1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1/publicIPAddresses/pub1", + "name": "pub1", + "properties": { + "publicIPAllocationMethod": "Dynamic", + "publicIPAddressVersion": "IPv4", + "ipConfiguration": { + "id": "/subscriptions/subid/resourceGroups/vmss-tester/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1" + }, + "dnsSettings": { + "domainNameLabel": "vm1.testvmssacc", + "fqdn": "vm1.testvmssacc.southeastasia.cloudapp.azure.com" + }, + "ipAddress": "13.67.119.72", + "idleTimeoutInMinutes": 10, + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnConnectionDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnConnectionDelete.json new file mode 100644 index 000000000000..7c0a1cc34818 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "connectionName": "vpnConnection1", + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnConnectionGet.json new file mode 100644 index 000000000000..1af377b71e8d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnConnectionGet.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "connectionName": "vpnConnection1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnConnectionList.json new file mode 100644 index 000000000000..18fe54362685 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnConnectionList.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnConnectionPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnConnectionPut.json new file mode 100644 index 000000000000..a2cc75e39a65 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnConnectionPut.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "connectionName": "vpnConnection1", + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "VpnConnectionParameters": { + "properties": { + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "properties": { + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + }, + "201": { + "body": { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayDelete.json new file mode 100644 index 000000000000..c42a9e7d0827 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayGet.json new file mode 100644 index 000000000000..12a15e5497bb --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayGet.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayList.json new file mode 100644 index 000000000000..646b4ae350c9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayList.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + }, + { + "name": "gateway2", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2/vpnConnections/vpnConnection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "ipsecPolicies": [] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayListByResourceGroup.json new file mode 100644 index 000000000000..646b4ae350c9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayListByResourceGroup.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + }, + { + "name": "Connection-Link2", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link2", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink2" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + }, + { + "name": "gateway2", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualHubs/virtualHub2" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnGateways/gateway2/vpnConnections/vpnConnection2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "ipsecPolicies": [] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayPut.json new file mode 100644 index 000000000000..362850145cf8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayPut.json @@ -0,0 +1,170 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "vpnGatewayParameters": { + "location": "westcentralus", + "tags": { + "key1": "value1" + }, + "properties": { + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "properties": { + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "properties": { + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key" + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65515, + "peerWeight": 0 + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + }, + "201": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "enableInternetSecurity": false, + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "vpnLinkConnections": [ + { + "name": "Connection-Link1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayReset.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayReset.json new file mode 100644 index 000000000000..a13c6268d32e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayReset.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "gatewayName": "vpngw", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "vpngw", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/vpngw", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/vpngw/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "connectionBandwidth": 100, + "sharedKey": "key", + "enableBgp": false, + "useLocalAzureIpAddress": false, + "ipsecPolicies": [] + } + } + ], + "bgpSettings": { + "asn": 65514, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayUpdateTags.json new file mode 100644 index 000000000000..643992e3edbe --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnGatewayUpdateTags.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "vpnGatewayParameters": { + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "name": "gateway1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "type": "Microsoft.Network/vpnGateways", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualHub": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualHubs/virtualHub1" + }, + "connections": [ + { + "name": "vpnConnection1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "remoteVpnSite": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1" + }, + "connectionStatus": "Connected", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "routingWeight": 0, + "sharedKey": "key", + "enableBgp": false, + "ipsecPolicies": [] + } + } + ], + "bgpSettings": { + "asn": 65515, + "bgpPeeringAddress": "10.0.1.30", + "peerWeight": 0 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationDelete.json new file mode 100644 index 000000000000..a247b7fbc018 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "vpnServerConfigurationName": "vpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationGet.json new file mode 100644 index 000000000000..4e3c723b5292 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationGet.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "vpnServerConfigurationName": "vpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServers": [ + { + "radiusServerAddress": "10.0.0.0", + "radiusServerScore": 25 + } + ], + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationList.json new file mode 100644 index 000000000000..6986640ea350 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationList.json @@ -0,0 +1,132 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "vpnServerConfiguration2", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServers": [ + { + "radiusServerAddress": "10.0.0.0", + "radiusServerScore": 25 + } + ], + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationListByResourceGroup.json new file mode 100644 index 000000000000..b7dc338d8b40 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationListByResourceGroup.json @@ -0,0 +1,129 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration2", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationPut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationPut.json new file mode 100644 index 000000000000..3841a4867212 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationPut.json @@ -0,0 +1,190 @@ +{ + "parameters": { + "vpnServerConfigurationName": "vpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "VpnServerConfigurationParameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "vpnProtocols": [ + "IkeV2" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServers": [ + { + "radiusServerAddress": "10.0.0.0", + "radiusServerScore": 25, + "radiusServerSecret": "radiusServerSecret" + } + ], + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServers": [ + { + "radiusServerAddress": "10.0.0.0", + "radiusServerScore": 25 + } + ], + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnAuthenticationTypes": [ + "Certificate" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServers": [ + { + "radiusServerAddress": "10.0.0.0", + "radiusServerScore": 25 + } + ], + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationUpdateTags.json new file mode 100644 index 000000000000..959b2e8b88e2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnServerConfigurationUpdateTags.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "vpnServerConfigurationName": "vpnServerConfiguration1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "VpnServerConfigurationParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnServerConfigurations/vpnServerConfiguration1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnServerConfiguration1", + "type": "Microsoft.Network/vpnServerConfigurations", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "vpnProtocols": [ + "IkeV2" + ], + "vpnClientIpsecPolicies": [ + { + "saLifeTimeSeconds": 86472, + "saDataSizeKilobytes": 429497, + "ipsecEncryption": "AES256", + "ipsecIntegrity": "SHA256", + "ikeEncryption": "AES256", + "ikeIntegrity": "SHA384", + "dhGroup": "DHGroup14", + "pfsGroup": "PFS14" + } + ], + "vpnClientRootCertificates": [ + { + "name": "vpnServerConfigVpnClientRootCert1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuN" + } + ], + "vpnClientRevokedCertificates": [ + { + "name": "vpnServerConfigVpnClientRevokedCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ], + "radiusServerAddress": "8.9.9.9", + "radiusServerSecret": "123_abc", + "radiusServerRootCertificates": [ + { + "name": "vpnServerConfigRadiusServerRootCer1", + "publicCertData": "MIIC5zCCAc+gAwIBAgIQErQ0Hk4aDJxIA+Q5RagB+jANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDDAtQMlNSb290Q2VydDAeFw0xNzEyMTQyMTA3MzhaFw0xODEyMTQyMTI3MzhaMBYxFDASBgNVBAMMC1AyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArP7/NQXmW7cQ/ZR1mv3Y3I29Lt7HTOqzo/1KUOoVH3NItbQIRAQbwKy3UWrOFz4eGNX2GWtNRMdCyWsKeqy9Ltsdfcm1IbKXkl84DFeU/ZacXu4Dl3xX3gV5du4TLZjEowJELyur11Ea2YcjPRQ/FzAF9/hGuboS1HZQEPLx4FdUs9OxCYOtc0MxBCwLfVTTRqarb0Ne+arNYd4kCzIhAke1nOyKAJBda5ZL+VHy3S5S8qGlD46jm8HXugmAkUygS4oIIXOmj/1O9sNAi3LN60zufSzCmP8Rm/iUGX+DHAGGiXxwZOKQLEDaZXKqoHjMPP0XudmSWwOIbyeQVrLhkwIDAQABozEwLzAOBgNVHQ8BAf8EBAMCAgQwHQYDVR0OBBYEFEfeNU2trYxNLF9ONmuJUsT13pKDMA0GCSqGSIb3DQEBCwUAA4IBAQBmM6RJzsGGipxyMhimHKN2xlkejhVsgBoTAhOU0llW9aUSwINJ9zFUGgI8IzUFy1VG776fchHp0LMRmPSIUYk5btEPxbsrPtumPuMH8EQGrS+Rt4pD+78c8H1fEPkq5CmDl/PKu4JoFGv+aFcE+Od0hlILstIF10Qysf++QXDolKfzJa/56bgMeYKFiju73loiRM57ns8ddXpfLl792UVpRkFU62LNns6Y1LKTwapmUF4IvIuAIzd6LZNOQng64LAKXtKnViJ1JQiXwf4CEzhgvAti3/ejpb3U90hsrUcyZi6wBv9bZLcAJRWpz61JNYliM1d1grSwQDKGXNQE4xuM" + } + ], + "radiusClientRootCertificates": [ + { + "name": "vpnServerConfigRadiusClientRootCert1", + "thumbprint": "83FFBFC8848B5A5836C94D0112367E16148A286F" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteDelete.json new file mode 100644 index 000000000000..647a312b8b55 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteGet.json new file mode 100644 index 000000000000..550d5511a863 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteGet.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteLinkConnectionGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteLinkConnectionGet.json new file mode 100644 index 000000000000..df1af5662b04 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteLinkConnectionGet.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "connectionName": "vpnConnection1", + "linkConnectionName": "Connection-Link1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteLinkConnectionList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteLinkConnectionList.json new file mode 100644 index 000000000000..dac3b9dc3e7b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteLinkConnectionList.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "gatewayName": "gateway1", + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid", + "connectionName": "vpnConnection1" + }, + "responses": { + "200": { + "body": [ + { + "name": "Connection-Link1", + "type": "Microsoft.Network/vpnGateways/vpnConnections/VpnSiteLinkConnections", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnGateways/gateway1/vpnConnections/vpnConnection1/VpnSiteLinkConnections/Connection-Link1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "properties": { + "provisioningState": "Succeeded", + "vpnSiteLink": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/siteLink1" + }, + "connectionBandwidth": 200, + "ipsecPolicies": [], + "vpnConnectionProtocolType": "IKEv2", + "sharedKey": "key", + "ingressBytesTransferred": 0, + "egressBytesTransferred": 0, + "enableBgp": false, + "enableRateLimiting": false, + "useLocalAzureIpAddress": false, + "usePolicyBasedTrafficSelectors": false, + "routingWeight": 0 + } + } + ] + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteLinkGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteLinkGet.json new file mode 100644 index 000000000000..2454e29be8d2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteLinkGet.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "vpnSiteLinkName": "vpnSiteLink1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteLinkListByVpnSite.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteLinkListByVpnSite.json new file mode 100644 index 000000000000..435cd81519da --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteLinkListByVpnSite.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "vpnSiteName": "vpnSite1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkSpeedInMbps": 200 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + }, + { + "name": "vpnSiteLink2", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink2", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "40.40.40.46", + "linkProperties": { + "linkSpeedInMbps": 200 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.1", + "asn": 1234 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteList.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteList.json new file mode 100644 index 000000000000..023eb6e79689 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteList.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/vpnSites/vpnSite2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "East US", + "name": "vpnSite2", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/virtualWANs/wan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.1.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + }, + "isSecuritySite": false + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteListByResourceGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteListByResourceGroup.json new file mode 100644 index 000000000000..8904ee230e80 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteListByResourceGroup.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "resourceGroupName": "rg1", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite2", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite2", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.1.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSitePut.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSitePut.json new file mode 100644 index 000000000000..d6bacb1c438c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSitePut.json @@ -0,0 +1,137 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "VpnSiteParameters": { + "tags": { + "key1": "value1" + }, + "location": "West US", + "properties": { + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "properties": { + "ipAddress": "50.50.50.56", + "fqdn": "link1.vpnsite1.contoso.com", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "type": "Microsoft.Network/vpnSites/vpnSiteLinks", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1" + }, + "deviceProperties": { + "linkSpeedInMbps": 0 + }, + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "isSecuritySite": false, + "vpnSiteLinks": [ + { + "name": "vpnSiteLink1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1/vpnSiteLinks/vpnSiteLink1", + "etag": "W/\"00000000-0000-0000-0000-000000000000\"", + "properties": { + "provisioningState": "Succeeded", + "ipAddress": "50.50.50.56", + "linkProperties": { + "linkProviderName": "vendor1", + "linkSpeedInMbps": 0 + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteUpdateTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteUpdateTags.json new file mode 100644 index 000000000000..a20a52d6adf9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSiteUpdateTags.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "vpnSiteName": "vpnSite1", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "subscriptionId": "subid", + "VpnSiteParameters": { + "tags": { + "key1": "value1", + "key2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/vpnSite1", + "etag": "w/\\00000000-0000-0000-0000-000000000000\\", + "location": "West US", + "name": "vpnSite1", + "type": "Microsoft.Network/vpnSites", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "virtualWan": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualWANs/wan1", + "deviceProperties": { + "deviceVendor": "vendor1", + "deviceModel": "model01", + "linkSpeedInMbps": 200 + }, + "ipAddress": "10.0.0.0", + "addressSpace": { + "addressPrefixes": [ + "10.0.0.0/16" + ] + }, + "bgpProperties": { + "bgpPeeringAddress": "192.168.0.0", + "asn": 1234 + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSitesConfigurationDownload.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSitesConfigurationDownload.json new file mode 100644 index 000000000000..c13596ff2cd8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/VpnSitesConfigurationDownload.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "api-version": "2020-03-01", + "virtualWANName": "wan1", + "request": { + "vpnSites": [ + "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/vpnSites/abc" + ], + "outputBlobSasUrl": "https://blobcortextesturl.blob.core.windows.net/folderforconfig/vpnFile?sp=rw&se=2018-01-10T03%3A42%3A04Z&sv=2017-04-17&sig=WvXrT5bDmDFfgHs%2Brz%2BjAu123eRCNE9BO0eQYcPDT7pY%3D&sr=b" + } + }, + "responses": { + "200": { + "description": "Request successful. Follow the location header for sas-url to output blob." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafListAllPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafListAllPolicies.json new file mode 100644 index 000000000000..debeb557a21f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafListAllPolicies.json @@ -0,0 +1,102 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "state": "Enabled", + "mode": "Prevention", + "maxRequestBodySizeInKb": 128, + "fileUploadLimitInMb": 750, + "requestBodyCheck": true + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ], + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0" + } + ] + } + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafListPolicies.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafListPolicies.json new file mode 100644 index 000000000000..7b036ae74e04 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafListPolicies.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "state": "Enabled", + "mode": "Detection", + "maxRequestBodySizeInKb": 128, + "fileUploadLimitInMb": 750, + "requestBodyCheck": true + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0" + } + ] + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafPolicyCreateOrUpdate.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafPolicyCreateOrUpdate.json new file mode 100644 index 000000000000..47c1034c45b9 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafPolicyCreateOrUpdate.json @@ -0,0 +1,258 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "Policy1", + "parameters": { + "location": "WestUs", + "properties": { + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0" + } + ] + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "action": "Block", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ] + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeaders", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "state": "Enabled", + "mode": "Detection", + "maxRequestBodySizeInKb": 128, + "fileUploadLimitInMb": 750, + "requestBodyCheck": true + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0" + } + ] + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ] + } + } + }, + "201": { + "body": { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "state": "Enabled", + "mode": "Detection", + "maxRequestBodySizeInKb": 128, + "fileUploadLimitInMb": 750, + "requestBodyCheck": true + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0" + } + ] + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ] + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafPolicyDelete.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafPolicyDelete.json new file mode 100644 index 000000000000..bfa961b31840 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafPolicyDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "Policy1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafPolicyGet.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafPolicyGet.json new file mode 100644 index 000000000000..45e9ca124858 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/examples/WafPolicyGet.json @@ -0,0 +1,140 @@ +{ + "parameters": { + "api-version": "2020-03-01", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "Policy1" + }, + "responses": { + "200": { + "body": { + "name": "Policy1", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/Policy1", + "type": "Microsoft.Network/applicationgatewaywebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "state": "Enabled", + "mode": "Prevention", + "maxRequestBodySizeInKb": 128, + "fileUploadLimitInMb": 750, + "requestBodyCheck": true + }, + "customRules": [ + { + "name": "Rule1", + "priority": 1, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + ], + "action": "Block" + }, + { + "name": "Rule2", + "priority": 2, + "ruleType": "MatchRule", + "matchConditions": [ + { + "matchVariables": [ + { + "variableName": "RemoteAddr", + "selector": null + } + ], + "operator": "IPMatch", + "negationConditon": false, + "matchValues": [ + "192.168.1.0/24" + ] + }, + { + "matchVariables": [ + { + "variableName": "RequestHeader", + "selector": "UserAgent" + } + ], + "operator": "Contains", + "negationConditon": false, + "matchValues": [ + "Windows" + ] + } + ], + "action": "Block" + } + ], + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "OWASP", + "ruleSetVersion": "3.0", + "ruleGroupOverrides": [ + { + "ruleGroupName": "REQUEST-942-APPLICATION-ATTACK-SQLI", + "rules": [ + { + "ruleId": "942130", + "state": "Disabled" + }, + { + "ruleId": "942110", + "state": "Disabled" + } + ] + }, + { + "ruleGroupName": "REQUEST-920-PROTOCOL-ENFORCEMENT", + "rules": [ + { + "ruleId": "920100", + "state": "Disabled" + }, + { + "ruleId": "920120", + "state": "Disabled" + } + ] + } + ] + } + ], + "exclusions": [ + { + "matchVariable": "RequestHeaderNames", + "selectorMatchOperator": "Equals", + "selector": "testHeader1" + }, + { + "matchVariable": "RequestHeaderNames", + "selectorMatchOperator": "StartsWith", + "selector": "testHeader2" + } + ] + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/expressRouteCircuit.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/expressRouteCircuit.json new file mode 100644 index 000000000000..46911567803f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/expressRouteCircuit.json @@ -0,0 +1,2507 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/authorizations/{authorizationName}": { + "delete": { + "tags": [ + "ExpressRouteCircuitAuthorizations" + ], + "operationId": "ExpressRouteCircuitAuthorizations_Delete", + "description": "Deletes the specified authorization from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "authorizationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the authorization." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete ExpressRouteCircuit Authorization": { + "$ref": "./examples/ExpressRouteCircuitAuthorizationDelete.json" + } + } + }, + "get": { + "tags": [ + "ExpressRouteCircuitAuthorizations" + ], + "operationId": "ExpressRouteCircuitAuthorizations_Get", + "description": "Gets the specified authorization from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "authorizationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the authorization." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the ExpressRouteCircuitAuthorization resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get ExpressRouteCircuit Authorization": { + "$ref": "./examples/ExpressRouteCircuitAuthorizationGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCircuitAuthorizations" + ], + "operationId": "ExpressRouteCircuitAuthorizations_CreateOrUpdate", + "description": "Creates or updates an authorization in the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "authorizationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the authorization." + }, + { + "name": "authorizationParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + }, + "description": "Parameters supplied to the create or update express route circuit authorization operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCircuitAuthorization resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuitAuthorization resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create ExpressRouteCircuit Authorization": { + "$ref": "./examples/ExpressRouteCircuitAuthorizationCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/authorizations": { + "get": { + "tags": [ + "ExpressRouteCircuitAuthorizations" + ], + "operationId": "ExpressRouteCircuitAuthorizations_List", + "description": "Gets all authorizations in an express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuitAuthorization resources.", + "schema": { + "$ref": "#/definitions/AuthorizationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuit Authorization": { + "$ref": "./examples/ExpressRouteCircuitAuthorizationList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}": { + "delete": { + "tags": [ + "ExpressRouteCircuitPeerings" + ], + "operationId": "ExpressRouteCircuitPeerings_Delete", + "description": "Deletes the specified peering from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete ExpressRouteCircuit Peerings": { + "$ref": "./examples/ExpressRouteCircuitPeeringDelete.json" + } + } + }, + "get": { + "tags": [ + "ExpressRouteCircuitPeerings" + ], + "operationId": "ExpressRouteCircuitPeerings_Get", + "description": "Gets the specified peering for the express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get ExpressRouteCircuit Peering": { + "$ref": "./examples/ExpressRouteCircuitPeeringGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCircuitPeerings" + ], + "operationId": "ExpressRouteCircuitPeerings_CreateOrUpdate", + "description": "Creates or updates a peering in the specified express route circuits.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "peeringParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + }, + "description": "Parameters supplied to the create or update express route circuit peering operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create ExpressRouteCircuit Peerings": { + "$ref": "./examples/ExpressRouteCircuitPeeringCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings": { + "get": { + "tags": [ + "ExpressRouteCircuitPeerings" + ], + "operationId": "ExpressRouteCircuitPeerings_List", + "description": "Gets all peerings in a specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuitPeering resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitPeeringListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuit Peerings": { + "$ref": "./examples/ExpressRouteCircuitPeeringList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/connections/{connectionName}": { + "delete": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_Delete", + "description": "Deletes the specified Express Route Circuit Connection from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete ExpressRouteCircuit": { + "$ref": "./examples/ExpressRouteCircuitConnectionDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_Get", + "description": "Gets the specified Express Route Circuit Connection from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Express Route Circuit Connection resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCircuitConnectionGet": { + "$ref": "./examples/ExpressRouteCircuitConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_CreateOrUpdate", + "description": "Creates or updates a Express Route Circuit Connection in the specified express route circuits.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit connection." + }, + { + "name": "expressRouteCircuitConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + }, + "description": "Parameters supplied to the create or update express route circuit connection operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCircuitPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCircuitConnectionCreate": { + "$ref": "./examples/ExpressRouteCircuitConnectionCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/connections": { + "get": { + "tags": [ + "ExpressRouteCircuitConnections" + ], + "operationId": "ExpressRouteCircuitConnections_List", + "description": "Gets all global reach connections associated with a private peering in an express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuitConnections resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuit Connection": { + "$ref": "./examples/ExpressRouteCircuitConnectionList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/peerConnections/{connectionName}": { + "get": { + "tags": [ + "PeerExpressRouteCircuitConnections" + ], + "operationId": "PeerExpressRouteCircuitConnections_Get", + "description": "Gets the specified Peer Express Route Circuit Connection from the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peer express route circuit connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Peer Express Route Circuit Connection resource.", + "schema": { + "$ref": "#/definitions/PeerExpressRouteCircuitConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "PeerExpressRouteCircuitConnectionGet": { + "$ref": "./examples/PeerExpressRouteCircuitConnectionGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/peerConnections": { + "get": { + "tags": [ + "PeerExpressRouteCircuitConnections" + ], + "operationId": "PeerExpressRouteCircuitConnections_List", + "description": "Gets all global reach peer connections associated with a private peering in an express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PeerExpressRouteCircuitConnections resources.", + "schema": { + "$ref": "#/definitions/PeerExpressRouteCircuitConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Peer ExpressRouteCircuit Connection": { + "$ref": "./examples/PeerExpressRouteCircuitConnectionList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}": { + "delete": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_Delete", + "description": "Deletes the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted. Sets 'Disabling' provisioningState until the operation completes. Returns an operation URI that can be queried to find the current state of the operation." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete ExpressRouteCircuit": { + "$ref": "./examples/ExpressRouteCircuitDelete.json" + } + } + }, + "get": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_Get", + "description": "Gets information about the specified express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of express route circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuit resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get ExpressRouteCircuit": { + "$ref": "./examples/ExpressRouteCircuitGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_CreateOrUpdate", + "description": "Creates or updates an express route circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + }, + "description": "Parameters supplied to the create or update express route circuit operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCircuit resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuit resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create ExpressRouteCircuit": { + "$ref": "./examples/ExpressRouteCircuitCreate.json" + }, + "Create ExpressRouteCircuit on ExpressRoutePort": { + "$ref": "./examples/ExpressRouteCircuitCreateOnExpressRoutePort.json" + } + } + }, + "patch": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_UpdateTags", + "description": "Updates an express route circuit tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the circuit." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update express route circuit tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCircuit resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuit" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update Express Route Circuit Tags": { + "$ref": "./examples/ExpressRouteCircuitUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/arpTables/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCircuitArpTable" + ], + "operationId": "ExpressRouteCircuits_ListArpTable", + "description": "Gets the currently advertised ARP table associated with the express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitsArpTable resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitsArpTableListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "List ARP Table": { + "$ref": "./examples/ExpressRouteCircuitARPTableList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/routeTables/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCircuitRoutesTable" + ], + "operationId": "ExpressRouteCircuits_ListRoutesTable", + "description": "Gets the currently advertised routes table associated with the express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitsRouteTable resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitsRoutesTableListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "List Route Tables": { + "$ref": "./examples/ExpressRouteCircuitRouteTableList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/routeTablesSummary/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCircuitRoutesTableSummary" + ], + "operationId": "ExpressRouteCircuits_ListRoutesTableSummary", + "description": "Gets the currently advertised routes table summary associated with the express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitsRoutesTableSummary resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitsRoutesTableSummaryListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "List Route Table Summary": { + "$ref": "./examples/ExpressRouteCircuitRouteTableSummaryList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/stats": { + "get": { + "tags": [ + "ExpressRouteCircuitStats" + ], + "operationId": "ExpressRouteCircuits_GetStats", + "description": "Gets all the stats from an express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitStats resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitStats" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get ExpressRoute Circuit Traffic Stats": { + "$ref": "./examples/ExpressRouteCircuitStats.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/stats": { + "get": { + "tags": [ + "ExpressRouteCircuitStats" + ], + "operationId": "ExpressRouteCircuits_GetPeeringStats", + "description": "Gets all stats from an express route circuit in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "circuitName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the express route circuit." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitStats resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitStats" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get ExpressRoute Circuit Peering Traffic Stats": { + "$ref": "./examples/ExpressRouteCircuitPeeringStats.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits": { + "get": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_List", + "description": "Gets all the express route circuits in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCircuitAuthorization resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuits in a resource group": { + "$ref": "./examples/ExpressRouteCircuitListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteCircuits": { + "get": { + "tags": [ + "ExpressRouteCircuits" + ], + "operationId": "ExpressRouteCircuits_ListAll", + "description": "Gets all the express route circuits in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCircuit resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCircuitListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRouteCircuits in a subscription": { + "$ref": "./examples/ExpressRouteCircuitListBySubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteServiceProviders": { + "get": { + "tags": [ + "ExpressRouteServiceProviders" + ], + "operationId": "ExpressRouteServiceProviders_List", + "description": "Gets all the available express route service providers.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteServiceProvider resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteServiceProviderListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List ExpressRoute providers": { + "$ref": "./examples/ExpressRouteProviderList.json" + } + } + } + } + }, + "definitions": { + "AuthorizationPropertiesFormat": { + "properties": { + "authorizationKey": { + "type": "string", + "description": "The authorization key." + }, + "authorizationUseStatus": { + "type": "string", + "description": "The authorization use status.", + "enum": [ + "Available", + "InUse" + ], + "x-ms-enum": { + "name": "AuthorizationUseStatus", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the authorization resource." + } + }, + "description": "Properties of ExpressRouteCircuitAuthorization." + }, + "ExpressRouteCircuitAuthorization": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AuthorizationPropertiesFormat", + "description": "Properties of the express route circuit authorization." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Authorization in an ExpressRouteCircuit resource." + }, + "AuthorizationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + }, + "description": "The authorizations in an ExpressRoute Circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListAuthorizations API service call retrieves all authorizations that belongs to an ExpressRouteCircuit." + }, + "ExpressRouteCircuitPeeringConfig": { + "properties": { + "advertisedPublicPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The reference to AdvertisedPublicPrefixes." + }, + "advertisedCommunities": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The communities of bgp peering. Specified for microsoft peering." + }, + "advertisedPublicPrefixesState": { + "readOnly": true, + "type": "string", + "description": "The advertised public prefix state of the Peering resource.", + "enum": [ + "NotConfigured", + "Configuring", + "Configured", + "ValidationNeeded" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitPeeringAdvertisedPublicPrefixState", + "modelAsString": true + } + }, + "legacyMode": { + "type": "integer", + "format": "int32", + "description": "The legacy mode of the peering." + }, + "customerASN": { + "type": "integer", + "format": "int32", + "description": "The CustomerASN of the peering." + }, + "routingRegistryName": { + "type": "string", + "description": "The RoutingRegistryName of the configuration." + } + }, + "description": "Specifies the peering configuration." + }, + "Ipv6ExpressRouteCircuitPeeringConfig": { + "properties": { + "primaryPeerAddressPrefix": { + "type": "string", + "description": "The primary address prefix." + }, + "secondaryPeerAddressPrefix": { + "type": "string", + "description": "The secondary address prefix." + }, + "microsoftPeeringConfig": { + "$ref": "#/definitions/ExpressRouteCircuitPeeringConfig", + "description": "The Microsoft peering configuration." + }, + "routeFilter": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the RouteFilter resource." + }, + "state": { + "type": "string", + "description": "The state of peering.", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitPeeringState", + "modelAsString": true + } + } + }, + "description": "Contains IPv6 peering config." + }, + "ExpressRouteCircuitStats": { + "properties": { + "primarybytesIn": { + "type": "integer", + "format": "int64", + "description": "The Primary BytesIn of the peering." + }, + "primarybytesOut": { + "type": "integer", + "format": "int64", + "description": "The primary BytesOut of the peering." + }, + "secondarybytesIn": { + "type": "integer", + "format": "int64", + "description": "The secondary BytesIn of the peering." + }, + "secondarybytesOut": { + "type": "integer", + "format": "int64", + "description": "The secondary BytesOut of the peering." + } + }, + "description": "Contains stats associated with the peering." + }, + "ExpressRouteCircuitPeeringPropertiesFormat": { + "properties": { + "peeringType": { + "$ref": "#/definitions/ExpressRoutePeeringType", + "description": "The peering type." + }, + "state": { + "$ref": "#/definitions/ExpressRoutePeeringState", + "description": "The peering state." + }, + "azureASN": { + "type": "integer", + "format": "int32", + "description": "The Azure ASN." + }, + "peerASN": { + "type": "integer", + "format": "int64", + "minimum": 1, + "maximum": 4294967295, + "description": "The peer ASN." + }, + "primaryPeerAddressPrefix": { + "type": "string", + "description": "The primary address prefix." + }, + "secondaryPeerAddressPrefix": { + "type": "string", + "description": "The secondary address prefix." + }, + "primaryAzurePort": { + "type": "string", + "description": "The primary port." + }, + "secondaryAzurePort": { + "type": "string", + "description": "The secondary port." + }, + "sharedKey": { + "type": "string", + "description": "The shared key." + }, + "vlanId": { + "type": "integer", + "format": "int32", + "description": "The VLAN ID." + }, + "microsoftPeeringConfig": { + "$ref": "#/definitions/ExpressRouteCircuitPeeringConfig", + "description": "The Microsoft peering configuration." + }, + "stats": { + "$ref": "#/definitions/ExpressRouteCircuitStats", + "description": "The peering stats of express route circuit." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route circuit peering resource." + }, + "gatewayManagerEtag": { + "type": "string", + "description": "The GatewayManager Etag." + }, + "lastModifiedBy": { + "readOnly": true, + "type": "string", + "description": "Who was the last to modify the peering." + }, + "routeFilter": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the RouteFilter resource." + }, + "ipv6PeeringConfig": { + "$ref": "#/definitions/Ipv6ExpressRouteCircuitPeeringConfig", + "description": "The IPv6 peering configuration." + }, + "expressRouteConnection": { + "$ref": "./virtualWan.json#/definitions/ExpressRouteConnectionId", + "description": "The ExpressRoute connection." + }, + "connections": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + }, + "description": "The list of circuit connections associated with Azure Private Peering for this circuit." + }, + "peeredConnections": { + "type": "array", + "items": { + "$ref": "#/definitions/PeerExpressRouteCircuitConnection" + }, + "readOnly": true, + "description": "The list of peered circuit connections associated with Azure Private Peering for this circuit." + } + }, + "description": "Properties of the express route circuit peering." + }, + "ExpressRouteCircuitPeering": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCircuitPeeringPropertiesFormat", + "description": "Properties of the express route circuit peering." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Peering in an ExpressRouteCircuit resource." + }, + "ExpressRouteCircuitPeeringListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + }, + "description": "The peerings in an express route circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPeering API service call retrieves all peerings that belong to an ExpressRouteCircuit." + }, + "ExpressRoutePeeringType": { + "type": "string", + "description": "The peering type.", + "enum": [ + "AzurePublicPeering", + "AzurePrivatePeering", + "MicrosoftPeering" + ], + "x-ms-enum": { + "name": "ExpressRoutePeeringType", + "modelAsString": true + } + }, + "ExpressRoutePeeringState": { + "type": "string", + "description": "The state of peering.", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "ExpressRoutePeeringState", + "modelAsString": true + } + }, + "Ipv6CircuitConnectionConfig": { + "description": "IPv6 Circuit Connection properties for global reach.", + "properties": { + "addressPrefix": { + "type": "string", + "description": "/125 IP address space to carve out customer addresses for global reach." + }, + "circuitConnectionStatus": { + "readOnly": true, + "$ref": "#/definitions/CircuitConnectionStatus", + "description": "Express Route Circuit connection state." + } + } + }, + "ExpressRouteCircuitConnectionPropertiesFormat": { + "properties": { + "expressRouteCircuitPeering": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to Express Route Circuit Private Peering Resource of the circuit initiating connection." + }, + "peerExpressRouteCircuitPeering": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to Express Route Circuit Private Peering Resource of the peered circuit." + }, + "addressPrefix": { + "type": "string", + "description": "/29 IP address space to carve out Customer addresses for tunnels." + }, + "authorizationKey": { + "type": "string", + "description": "The authorization key." + }, + "ipv6CircuitConnectionConfig": { + "$ref": "#/definitions/Ipv6CircuitConnectionConfig", + "description": "IPv6 Address PrefixProperties of the express route circuit connection." + }, + "circuitConnectionStatus": { + "$ref": "#/definitions/CircuitConnectionStatus", + "description": "Express Route Circuit connection state." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route circuit connection resource." + } + }, + "description": "Properties of the express route circuit connection." + }, + "ExpressRouteCircuitConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCircuitConnectionPropertiesFormat", + "description": "Properties of the express route circuit connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Express Route Circuit Connection in an ExpressRouteCircuitPeering resource." + }, + "ExpressRouteCircuitConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitConnection" + }, + "description": "The global reach connection associated with Private Peering in an ExpressRoute Circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListConnections API service call retrieves all global reach connections that belongs to a Private Peering for an ExpressRouteCircuit." + }, + "PeerExpressRouteCircuitConnectionPropertiesFormat": { + "properties": { + "expressRouteCircuitPeering": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to Express Route Circuit Private Peering Resource of the circuit." + }, + "peerExpressRouteCircuitPeering": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to Express Route Circuit Private Peering Resource of the peered circuit." + }, + "addressPrefix": { + "type": "string", + "description": "/29 IP address space to carve out Customer addresses for tunnels." + }, + "circuitConnectionStatus": { + "$ref": "#/definitions/CircuitConnectionStatus", + "description": "Express Route Circuit connection state." + }, + "connectionName": { + "type": "string", + "description": "The name of the express route circuit connection resource." + }, + "authResourceGuid": { + "type": "string", + "description": "The resource guid of the authorization used for the express route circuit connection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the peer express route circuit connection resource." + } + }, + "description": "Properties of the peer express route circuit connection." + }, + "PeerExpressRouteCircuitConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PeerExpressRouteCircuitConnectionPropertiesFormat", + "description": "Properties of the peer express route circuit connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Peer Express Route Circuit Connection in an ExpressRouteCircuitPeering resource." + }, + "PeerExpressRouteCircuitConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PeerExpressRouteCircuitConnection" + }, + "description": "The global reach peer circuit connection associated with Private Peering in an ExpressRoute Circuit." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPeeredConnections API service call retrieves all global reach peer circuit connections that belongs to a Private Peering for an ExpressRouteCircuit." + }, + "ExpressRouteCircuitSku": { + "properties": { + "name": { + "type": "string", + "description": "The name of the SKU." + }, + "tier": { + "type": "string", + "description": "The tier of the SKU.", + "enum": [ + "Standard", + "Premium", + "Basic", + "Local" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitSkuTier", + "modelAsString": true + } + }, + "family": { + "type": "string", + "description": "The family of the SKU.", + "enum": [ + "UnlimitedData", + "MeteredData" + ], + "x-ms-enum": { + "name": "ExpressRouteCircuitSkuFamily", + "modelAsString": true + } + } + }, + "description": "Contains SKU in an ExpressRouteCircuit." + }, + "ExpressRouteCircuitServiceProviderProperties": { + "properties": { + "serviceProviderName": { + "type": "string", + "description": "The serviceProviderName." + }, + "peeringLocation": { + "type": "string", + "description": "The peering location." + }, + "bandwidthInMbps": { + "type": "integer", + "format": "int32", + "description": "The BandwidthInMbps." + } + }, + "description": "Contains ServiceProviderProperties in an ExpressRouteCircuit." + }, + "ExpressRouteCircuitPropertiesFormat": { + "properties": { + "allowClassicOperations": { + "type": "boolean", + "description": "Allow classic operations." + }, + "circuitProvisioningState": { + "type": "string", + "description": "The CircuitProvisioningState state of the resource." + }, + "serviceProviderProvisioningState": { + "$ref": "#/definitions/ServiceProviderProvisioningState", + "description": "The ServiceProviderProvisioningState state of the resource." + }, + "authorizations": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitAuthorization" + }, + "description": "The list of authorizations." + }, + "peerings": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitPeering" + }, + "description": "The list of peerings." + }, + "serviceKey": { + "type": "string", + "description": "The ServiceKey." + }, + "serviceProviderNotes": { + "type": "string", + "description": "The ServiceProviderNotes." + }, + "serviceProviderProperties": { + "$ref": "#/definitions/ExpressRouteCircuitServiceProviderProperties", + "description": "The ServiceProviderProperties." + }, + "expressRoutePort": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the ExpressRoutePort resource when the circuit is provisioned on an ExpressRoutePort resource." + }, + "bandwidthInGbps": { + "type": "number", + "description": "The bandwidth of the circuit when the circuit is provisioned on an ExpressRoutePort resource." + }, + "stag": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The identifier of the circuit traffic. Outer tag for QinQ encapsulation." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route circuit resource." + }, + "gatewayManagerEtag": { + "type": "string", + "description": "The GatewayManager Etag." + }, + "globalReachEnabled": { + "type": "boolean", + "description": "Flag denoting global reach status." + } + }, + "description": "Properties of ExpressRouteCircuit." + }, + "ExpressRouteCircuit": { + "properties": { + "sku": { + "$ref": "#/definitions/ExpressRouteCircuitSku", + "description": "The SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCircuitPropertiesFormat", + "description": "Properties of the express route circuit." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "ExpressRouteCircuit resource." + }, + "ExpressRouteCircuitArpTable": { + "properties": { + "age": { + "type": "integer", + "format": "int32", + "description": "Entry age in minutes." + }, + "interface": { + "type": "string", + "description": "Interface address." + }, + "ipAddress": { + "type": "string", + "description": "The IP address." + }, + "macAddress": { + "type": "string", + "description": "The MAC address." + } + }, + "description": "The ARP table associated with the ExpressRouteCircuit." + }, + "ExpressRouteCircuitsArpTableListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitArpTable" + }, + "description": "A list of the ARP tables." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListArpTable associated with the Express Route Circuits API." + }, + "ExpressRouteCircuitRoutesTable": { + "properties": { + "network": { + "type": "string", + "description": "IP address of a network entity." + }, + "nextHop": { + "type": "string", + "description": "NextHop address." + }, + "locPrf": { + "type": "string", + "description": "Local preference value as set with the set local-preference route-map configuration command." + }, + "weight": { + "type": "integer", + "format": "int32", + "description": "Route Weight." + }, + "path": { + "type": "string", + "description": "Autonomous system paths to the destination network." + } + }, + "description": "The routes table associated with the ExpressRouteCircuit." + }, + "ExpressRouteCircuitsRoutesTableListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitRoutesTable" + }, + "description": "The list of routes table." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListRoutesTable associated with the Express Route Circuits API." + }, + "ExpressRouteCircuitRoutesTableSummary": { + "properties": { + "neighbor": { + "type": "string", + "description": "IP address of the neighbor." + }, + "v": { + "type": "integer", + "format": "int32", + "description": "BGP version number spoken to the neighbor." + }, + "as": { + "type": "integer", + "format": "int32", + "description": "Autonomous system number." + }, + "upDown": { + "type": "string", + "description": "The length of time that the BGP session has been in the Established state, or the current status if not in the Established state." + }, + "statePfxRcd": { + "type": "string", + "description": "Current state of the BGP session, and the number of prefixes that have been received from a neighbor or peer group." + } + }, + "description": "The routes table associated with the ExpressRouteCircuit." + }, + "ExpressRouteCircuitsRoutesTableSummaryListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuitRoutesTableSummary" + }, + "description": "A list of the routes table." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListRoutesTable associated with the Express Route Circuits API." + }, + "ExpressRouteCircuitListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCircuit" + }, + "description": "A list of ExpressRouteCircuits in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListExpressRouteCircuit API service call." + }, + "ExpressRouteServiceProviderBandwidthsOffered": { + "properties": { + "offerName": { + "type": "string", + "description": "The OfferName." + }, + "valueInMbps": { + "type": "integer", + "format": "int32", + "description": "The ValueInMbps." + } + }, + "description": "Contains bandwidths offered in ExpressRouteServiceProvider resources." + }, + "ExpressRouteServiceProviderPropertiesFormat": { + "properties": { + "peeringLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of peering locations." + }, + "bandwidthsOffered": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteServiceProviderBandwidthsOffered" + }, + "description": "A list of bandwidths offered." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route service provider resource." + } + }, + "description": "Properties of ExpressRouteServiceProvider." + }, + "ExpressRouteServiceProvider": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteServiceProviderPropertiesFormat", + "description": "Properties of the express route service provider." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "A ExpressRouteResourceProvider object." + }, + "ExpressRouteServiceProviderListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteServiceProvider" + }, + "description": "A list of ExpressRouteResourceProvider resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListExpressRouteServiceProvider API service call." + }, + "CircuitConnectionStatus": { + "type": "string", + "readOnly": true, + "description": "Express Route Circuit connection state.", + "enum": [ + "Connected", + "Connecting", + "Disconnected" + ], + "x-ms-enum": { + "name": "CircuitConnectionStatus", + "modelAsString": true + } + }, + "ServiceProviderProvisioningState": { + "type": "string", + "description": "The ServiceProviderProvisioningState state of the resource.", + "enum": [ + "NotProvisioned", + "Provisioning", + "Provisioned", + "Deprovisioning" + ], + "x-ms-enum": { + "name": "ServiceProviderProvisioningState", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/expressRouteCrossConnection.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/expressRouteCrossConnection.json new file mode 100644 index 000000000000..3f17e9395d32 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/expressRouteCrossConnection.json @@ -0,0 +1,1006 @@ +{ + "swagger": "2.0", + "info": { + "title": "ExpressRouteCrossConnection REST APIs", + "description": "The Microsoft Azure ExpressRouteCrossConnection Resource Provider REST APIs describes the operations for the connectivity provider to provision ExpressRoute circuit, create and modify BGP peering entities and troubleshoot connectivity on customer's ExpressRoute circuit.", + "version": "2020-03-01" + }, + "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.Network/expressRouteCrossConnections": { + "get": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_List", + "description": "Retrieves all the ExpressRouteCrossConnections in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCrossConnection resources. If there are no cross connection resources an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCrossConnectionList": { + "$ref": "./examples/ExpressRouteCrossConnectionList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections": { + "get": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_ListByResourceGroup", + "description": "Retrieves all the ExpressRouteCrossConnections in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful.The operation returns a list of ExpressRouteCrossConnection resources. If there are no cross connection resources an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCrossConnectionListByResourceGroup": { + "$ref": "./examples/ExpressRouteCrossConnectionListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}": { + "get": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_Get", + "description": "Gets details about the specified ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group (peering location of the circuit)." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection (service key of the circuit)." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnection resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnection": { + "$ref": "./examples/ExpressRouteCrossConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_CreateOrUpdate", + "description": "Update the specified ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + }, + "description": "Parameters supplied to the update express route crossConnection operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCrossConnection resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateExpressRouteCrossConnection": { + "$ref": "./examples/ExpressRouteCrossConnectionUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "ExpressRouteCrossConnections" + ], + "operationId": "ExpressRouteCrossConnections_UpdateTags", + "description": "Updates an express route cross connection tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the cross connection." + }, + { + "name": "crossConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update express route cross connection tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCrossConnection resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateExpressRouteCrossConnectionTags": { + "$ref": "./examples/ExpressRouteCrossConnectionUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings": { + "get": { + "tags": [ + "ExpressRouteCrossConnectionPeerings" + ], + "operationId": "ExpressRouteCrossConnectionPeerings_List", + "description": "Gets all peerings in a specified ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteCrossConnectionPeering resources.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeeringList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCrossConnectionBgpPeeringList": { + "$ref": "./examples/ExpressRouteCrossConnectionBgpPeeringList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}": { + "delete": { + "tags": [ + "ExpressRouteCrossConnectionPeerings" + ], + "operationId": "ExpressRouteCrossConnectionPeerings_Delete", + "description": "Deletes the specified peering from the ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DeleteExpressRouteCrossConnectionBgpPeering": { + "$ref": "./examples/ExpressRouteCrossConnectionBgpPeeringDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "ExpressRouteCrossConnectionPeerings" + ], + "operationId": "ExpressRouteCrossConnectionPeerings_Get", + "description": "Gets the specified peering for the ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnectionPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnectionBgpPeering": { + "$ref": "./examples/ExpressRouteCrossConnectionBgpPeeringGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRouteCrossConnectionPeerings" + ], + "operationId": "ExpressRouteCrossConnectionPeerings_CreateOrUpdate", + "description": "Creates or updates a peering in the specified ExpressRouteCrossConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "peeringParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + }, + "description": "Parameters supplied to the create or update ExpressRouteCrossConnection peering operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRouteCrossConnectionPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRouteCrossConnectionPeering resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteCrossConnectionBgpPeeringCreate": { + "$ref": "./examples/ExpressRouteCrossConnectionBgpPeeringCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/arpTables/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCrossConnectionArpTable" + ], + "operationId": "ExpressRouteCrossConnections_ListArpTable", + "description": "Gets the currently advertised ARP table associated with the express route cross connection in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnectionsArpTable resource.", + "schema": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitsArpTableListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnectionsArpTable": { + "$ref": "./examples/ExpressRouteCrossConnectionsArpTable.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/routeTablesSummary/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCrossConnectionRouteTableSummary" + ], + "operationId": "ExpressRouteCrossConnections_ListRoutesTableSummary", + "description": "Gets the route table summary associated with the express route cross connection in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnectionsRouteTableSummary resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteCrossConnectionsRoutesTableSummaryListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnectionsRouteTableSummary": { + "$ref": "./examples/ExpressRouteCrossConnectionsRouteTableSummary.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/routeTables/{devicePath}": { + "post": { + "tags": [ + "ExpressRouteCrossConnectionRouteTable" + ], + "operationId": "ExpressRouteCrossConnections_ListRoutesTable", + "description": "Gets the currently advertised routes table associated with the express route cross connection in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "crossConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteCrossConnection." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "devicePath", + "in": "path", + "required": true, + "type": "string", + "description": "The path of the device." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ExpressRouteCrossConnectionsRouteTable resource.", + "schema": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitsRoutesTableListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetExpressRouteCrossConnectionsRouteTable": { + "$ref": "./examples/ExpressRouteCrossConnectionsRouteTable.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "ExpressRouteCrossConnectionRoutesTableSummary": { + "properties": { + "neighbor": { + "type": "string", + "description": "IP address of Neighbor router." + }, + "asn": { + "type": "integer", + "format": "int32", + "description": "Autonomous system number." + }, + "upDown": { + "type": "string", + "description": "The length of time that the BGP session has been in the Established state, or the current status if not in the Established state." + }, + "stateOrPrefixesReceived": { + "type": "string", + "description": "Current state of the BGP session, and the number of prefixes that have been received from a neighbor or peer group." + } + }, + "description": "The routes table associated with the ExpressRouteCircuit." + }, + "ExpressRouteCrossConnectionsRoutesTableSummaryListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnectionRoutesTableSummary" + }, + "description": "A list of the routes table." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListRoutesTable associated with the Express Route Cross Connections." + }, + "ExpressRouteCircuitReference": { + "properties": { + "id": { + "type": "string", + "description": "Corresponding Express Route Circuit Id." + } + }, + "description": "Reference to an express route circuit." + }, + "ExpressRouteCrossConnectionProperties": { + "properties": { + "primaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The name of the primary port." + }, + "secondaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The name of the secondary port." + }, + "sTag": { + "readOnly": true, + "type": "integer", + "description": "The identifier of the circuit traffic." + }, + "peeringLocation": { + "type": "string", + "description": "The peering location of the ExpressRoute circuit." + }, + "bandwidthInMbps": { + "type": "integer", + "format": "int32", + "description": "The circuit bandwidth In Mbps." + }, + "expressRouteCircuit": { + "$ref": "#/definitions/ExpressRouteCircuitReference", + "description": "The ExpressRouteCircuit." + }, + "serviceProviderProvisioningState": { + "$ref": "./expressRouteCircuit.json#/definitions/ServiceProviderProvisioningState", + "description": "The provisioning state of the circuit in the connectivity provider system." + }, + "serviceProviderNotes": { + "type": "string", + "description": "Additional read only notes set by the connectivity provider." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route cross connection resource." + }, + "peerings": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + }, + "description": "The list of peerings." + } + }, + "description": "Properties of ExpressRouteCrossConnection." + }, + "ExpressRouteCrossConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCrossConnectionProperties", + "description": "Properties of the express route cross connection." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "ExpressRouteCrossConnection resource." + }, + "ExpressRouteCrossConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnection" + }, + "description": "A list of ExpressRouteCrossConnection resources." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListExpressRouteCrossConnection API service call." + }, + "ExpressRouteCrossConnectionPeeringProperties": { + "properties": { + "peeringType": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRoutePeeringType", + "description": "The peering type." + }, + "state": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRoutePeeringState", + "description": "The peering state." + }, + "azureASN": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The Azure ASN." + }, + "peerASN": { + "type": "integer", + "format": "int64", + "minimum": 1, + "maximum": 4294967295, + "description": "The peer ASN." + }, + "primaryPeerAddressPrefix": { + "type": "string", + "description": "The primary address prefix." + }, + "secondaryPeerAddressPrefix": { + "type": "string", + "description": "The secondary address prefix." + }, + "primaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The primary port." + }, + "secondaryAzurePort": { + "readOnly": true, + "type": "string", + "description": "The secondary port." + }, + "sharedKey": { + "type": "string", + "description": "The shared key." + }, + "vlanId": { + "type": "integer", + "format": "int32", + "description": "The VLAN ID." + }, + "microsoftPeeringConfig": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitPeeringConfig", + "description": "The Microsoft peering configuration." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route cross connection peering resource." + }, + "gatewayManagerEtag": { + "type": "string", + "description": "The GatewayManager Etag." + }, + "lastModifiedBy": { + "readOnly": true, + "type": "string", + "description": "Who was the last to modify the peering." + }, + "ipv6PeeringConfig": { + "$ref": "./expressRouteCircuit.json#/definitions/Ipv6ExpressRouteCircuitPeeringConfig", + "description": "The IPv6 peering configuration." + } + }, + "description": "Properties of express route cross connection peering." + }, + "ExpressRouteCrossConnectionPeering": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteCrossConnectionPeeringProperties", + "description": "Properties of the express route cross connection peering." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Peering in an ExpressRoute Cross Connection resource." + }, + "ExpressRouteCrossConnectionPeeringList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteCrossConnectionPeering" + }, + "description": "The peerings in an express route cross connection." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPeering API service call retrieves all peerings that belong to an ExpressRouteCrossConnection." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/expressRoutePort.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/expressRoutePort.json new file mode 100644 index 000000000000..a95480410be3 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/expressRoutePort.json @@ -0,0 +1,869 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/ExpressRoutePortsLocations": { + "get": { + "tags": [ + "ExpressRoutePortsLocations" + ], + "operationId": "ExpressRoutePortsLocations_List", + "description": "Retrieves all ExpressRoutePort peering locations. Does not return available bandwidths for each location. Available bandwidths can only be obtained when retrieving a specific peering location.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the list of all ExpressRoutePort peering locations.", + "schema": { + "$ref": "#/definitions/ExpressRoutePortsLocationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRoutePortsLocationList": { + "$ref": "./examples/ExpressRoutePortsLocationList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ExpressRoutePortsLocations/{locationName}": { + "get": { + "tags": [ + "ExpressRoutePortsLocations" + ], + "operationId": "ExpressRoutePortsLocations_Get", + "description": "Retrieves a single ExpressRoutePort peering location, including the list of available bandwidths available at said peering location.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "locationName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the requested ExpressRoutePort peering location." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the requested ExpressRoutePort peering location.", + "schema": { + "$ref": "#/definitions/ExpressRoutePortsLocation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRoutePortsLocationGet": { + "$ref": "./examples/ExpressRoutePortsLocationGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts/{expressRoutePortName}": { + "delete": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_Delete", + "description": "Deletes the specified ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "ExpressRoutePortDelete": { + "$ref": "./examples/ExpressRoutePortDelete.json" + } + } + }, + "get": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_Get", + "description": "Retrieves the requested ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of ExpressRoutePort." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the requested ExpressRoutePort resource.", + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRoutePortGet": { + "$ref": "./examples/ExpressRoutePortGet.json" + } + } + }, + "put": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_CreateOrUpdate", + "description": "Creates or updates the specified ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + }, + "description": "Parameters supplied to the create ExpressRoutePort operation." + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRoutePort resource.", + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRoutePort resource.", + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "ExpressRoutePortCreate": { + "$ref": "./examples/ExpressRoutePortCreate.json" + }, + "ExpressRoutePortUpdateLink": { + "$ref": "./examples/ExpressRoutePortUpdateLink.json" + } + } + }, + "patch": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_UpdateTags", + "description": "Update ExpressRoutePort tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update ExpressRoutePort resource tags." + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRoutePort resource.", + "schema": { + "$ref": "#/definitions/ExpressRoutePort" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRoutePortUpdateTags": { + "$ref": "./examples/ExpressRoutePortUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts": { + "get": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_ListByResourceGroup", + "description": "List all the ExpressRoutePort resources in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRoutePort resources. If there are no ExpressRoutePort resources then an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRoutePortListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRoutePortListByResourceGroup": { + "$ref": "./examples/ExpressRoutePortListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ExpressRoutePorts": { + "get": { + "tags": [ + "ExpressRoutePorts" + ], + "operationId": "ExpressRoutePorts_List", + "description": "List all the ExpressRoutePort resources in the specified subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRoutePort resources. If there are no ExpressRoutePort resources then an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRoutePortListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRoutePortList": { + "$ref": "./examples/ExpressRoutePortList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts/{expressRoutePortName}/links/{linkName}": { + "get": { + "tags": [ + "ExpressRouteLinks" + ], + "operationId": "ExpressRouteLinks_Get", + "description": "Retrieves the specified ExpressRouteLink resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + }, + { + "name": "linkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRouteLink resource." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the requested ExpressRouteLink resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteLink" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ExpressRouteLinkGet": { + "$ref": "./examples/ExpressRouteLinkGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts/{expressRoutePortName}/links": { + "get": { + "tags": [ + "ExpressRouteLinks" + ], + "operationId": "ExpressRouteLinks_List", + "description": "Retrieve the ExpressRouteLink sub-resources of the specified ExpressRoutePort resource.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRoutePortName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoutePort resource." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ExpressRouteLink resources. If there are no ExpressRouteLink resources then an empty list is returned.", + "schema": { + "$ref": "#/definitions/ExpressRouteLinkListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "ExpressRouteLinkGet": { + "$ref": "./examples/ExpressRouteLinkList.json" + } + } + } + } + }, + "definitions": { + "ExpressRoutePortsLocationBandwidths": { + "title": "ExpressRoutePorts Location Bandwidths", + "description": "Real-time inventory of available ExpressRoute port bandwidths.", + "properties": { + "offerName": { + "type": "string", + "readOnly": true, + "description": "Bandwidth descriptive name." + }, + "valueInGbps": { + "type": "integer", + "readOnly": true, + "description": "Bandwidth value in Gbps." + } + } + }, + "ExpressRoutePortsLocationPropertiesFormat": { + "title": "ExpressRoutePorts Location Properties", + "description": "Properties specific to ExpressRoutePorts peering location resources.", + "properties": { + "address": { + "type": "string", + "readOnly": true, + "description": "Address of peering location." + }, + "contact": { + "type": "string", + "readOnly": true, + "description": "Contact details of peering locations." + }, + "availableBandwidths": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRoutePortsLocationBandwidths" + }, + "description": "The inventory of available ExpressRoutePort bandwidths." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route port location resource." + } + } + }, + "ExpressRoutePortsLocation": { + "title": "ExpressRoutePorts Peering Location", + "description": "Definition of the ExpressRoutePorts peering location resource.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRoutePortsLocationPropertiesFormat", + "description": "ExpressRoutePort peering location properties." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "ExpressRoutePortsLocationListResult": { + "title": "ExpressRoutePorts Location List Result", + "description": "Response for ListExpressRoutePortsLocations API service call.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRoutePortsLocation" + }, + "description": "The list of all ExpressRoutePort peering locations." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + } + }, + "ExpressRouteLinkMacSecConfig": { + "description": "ExpressRouteLink Mac Security Configuration.", + "title": "Definition of ExpressRouteLink Mac Security configuration.", + "properties": { + "cknSecretIdentifier": { + "type": "string", + "description": "Keyvault Secret Identifier URL containing Mac security CKN key." + }, + "cakSecretIdentifier": { + "type": "string", + "description": "Keyvault Secret Identifier URL containing Mac security CAK key." + }, + "cipher": { + "type": "string", + "description": "Mac security cipher.", + "enum": [ + "gcm-aes-128", + "gcm-aes-256" + ], + "x-ms-enum": { + "name": "ExpressRouteLinkMacSecCipher", + "modelAsString": true + } + } + } + }, + "ExpressRouteLinkPropertiesFormat": { + "title": "ExpressRouteLink Resource Properties", + "description": "Properties specific to ExpressRouteLink resources.", + "properties": { + "routerName": { + "readOnly": true, + "type": "string", + "description": "Name of Azure router associated with physical port." + }, + "interfaceName": { + "readOnly": true, + "type": "string", + "description": "Name of Azure router interface." + }, + "patchPanelId": { + "readOnly": true, + "type": "string", + "description": "Mapping between physical port to patch panel port." + }, + "rackId": { + "readOnly": true, + "type": "string", + "description": "Mapping of physical patch panel to rack." + }, + "connectorType": { + "readOnly": true, + "type": "string", + "description": "Physical fiber port type.", + "enum": [ + "LC", + "SC" + ], + "x-ms-enum": { + "name": "ExpressRouteLinkConnectorType", + "modelAsString": true + } + }, + "adminState": { + "type": "string", + "description": "Administrative state of the physical port.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "ExpressRouteLinkAdminState", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route link resource." + }, + "macSecConfig": { + "$ref": "#/definitions/ExpressRouteLinkMacSecConfig", + "description": "MacSec configuration." + } + } + }, + "ExpressRouteLink": { + "title": "ExpressRouteLink", + "description": "ExpressRouteLink child resource definition.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteLinkPropertiesFormat", + "description": "ExpressRouteLink properties." + }, + "name": { + "type": "string", + "description": "Name of child port resource that is unique among child port resources of the parent." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ] + }, + "ExpressRouteLinkListResult": { + "title": "ExpressRouteLink List Result", + "description": "Response for ListExpressRouteLinks API service call.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteLink" + }, + "description": "The list of ExpressRouteLink sub-resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + } + }, + "ExpressRoutePortPropertiesFormat": { + "title": "ExpressRoutePort Properties", + "description": "Properties specific to ExpressRoutePort resources.", + "properties": { + "peeringLocation": { + "type": "string", + "description": "The name of the peering location that the ExpressRoutePort is mapped to physically." + }, + "bandwidthInGbps": { + "type": "integer", + "description": "Bandwidth of procured ports in Gbps." + }, + "provisionedBandwidthInGbps": { + "readOnly": true, + "type": "number", + "description": "Aggregate Gbps of associated circuit bandwidths." + }, + "mtu": { + "readOnly": true, + "type": "string", + "description": "Maximum transmission unit of the physical port pair(s)." + }, + "encapsulation": { + "type": "string", + "description": "Encapsulation method on physical ports.", + "enum": [ + "Dot1Q", + "QinQ" + ], + "x-ms-enum": { + "name": "ExpressRoutePortsEncapsulation", + "modelAsString": true + } + }, + "etherType": { + "readOnly": true, + "type": "string", + "description": "Ether type of the physical port." + }, + "allocationDate": { + "readOnly": true, + "type": "string", + "description": "Date of the physical port allocation to be used in Letter of Authorization." + }, + "links": { + "title": "ExpressRouteLink Sub-Resources", + "description": "The set of physical links of the ExpressRoutePort resource.", + "readOnly": false, + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteLink" + } + }, + "circuits": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Reference the ExpressRoute circuit(s) that are provisioned on this ExpressRoutePort resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route port resource." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the express route port resource." + } + } + }, + "ExpressRoutePort": { + "title": "ExpressRoute Port", + "description": "ExpressRoutePort resource definition.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRoutePortPropertiesFormat", + "description": "ExpressRoutePort properties." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "identity": { + "$ref": "./network.json#/definitions/ManagedServiceIdentity", + "description": "The identity of ExpressRoutePort, if configured." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "ExpressRoutePortListResult": { + "title": "ExpressRoute Port List Result", + "description": "Response for ListExpressRoutePorts API service call.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRoutePort" + }, + "description": "A list of ExpressRoutePort resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/firewallPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/firewallPolicy.json new file mode 100644 index 000000000000..856ee28bbed1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/firewallPolicy.json @@ -0,0 +1,1075 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}": { + "delete": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_Delete", + "description": "Deletes the specified Firewall Policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Firewall Policy": { + "$ref": "./examples/FirewallPolicyDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_Get", + "description": "Gets the specified Firewall Policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a Firewall Policy resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get FirewallPolicy": { + "$ref": "./examples/FirewallPolicyGet.json" + } + } + }, + "put": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_CreateOrUpdate", + "description": "Creates or updates the specified Firewall Policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FirewallPolicy" + }, + "description": "Parameters supplied to the create or update Firewall Policy operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request received successfully. The operation returns the resulting FirewallPolicy resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicy" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting FirewallPolicy resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create FirewallPolicy": { + "$ref": "./examples/FirewallPolicyPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies": { + "get": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_List", + "description": "Lists all Firewall Policies in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of FirewallPolicy resources.", + "schema": { + "$ref": "#/definitions/FirewallPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Firewall Policies for a given resource group": { + "$ref": "./examples/FirewallPolicyListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/firewallPolicies": { + "get": { + "tags": [ + "FirewallPolicies" + ], + "operationId": "FirewallPolicies_ListAll", + "description": "Gets all the Firewall Policies in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of FirewallPolicy resources.", + "schema": { + "$ref": "#/definitions/FirewallPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Firewall Policies for a given subscription": { + "$ref": "./examples/FirewallPolicyListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleGroups/{ruleGroupName}": { + "delete": { + "tags": [ + "FirewallPolicyRuleGroups" + ], + "operationId": "FirewallPolicyRuleGroups_Delete", + "description": "Deletes the specified FirewallPolicyRuleGroup.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "name": "ruleGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the FirewallPolicyRuleGroup." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete FirewallPolicyRuleGroup": { + "$ref": "./examples/FirewallPolicyRuleGroupDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "FirewallPolicyRuleGroups" + ], + "operationId": "FirewallPolicyRuleGroups_Get", + "description": "Gets the specified FirewallPolicyRuleGroup.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "name": "ruleGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the FirewallPolicyRuleGroup." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a FirewallPolicyRuleGroup resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get FirewallPolicyRuleGroup": { + "$ref": "./examples/FirewallPolicyRuleGroupGet.json" + }, + "Get FirewallPolicyRuleGroup With IpGroups": { + "$ref": "./examples/FirewallPolicyRuleGroupWithIpGroupsGet.json" + } + } + }, + "put": { + "tags": [ + "FirewallPolicyRuleGroups" + ], + "operationId": "FirewallPolicyRuleGroups_CreateOrUpdate", + "description": "Creates or updates the specified FirewallPolicyRuleGroup.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "name": "ruleGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the FirewallPolicyRuleGroup." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + }, + "description": "Parameters supplied to the create or update FirewallPolicyRuleGroup operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request received successfully. The operation returns the resulting FirewallPolicyRuleGroup resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting FirewallPolicyRuleGroup resource.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create FirewallPolicyRuleGroup": { + "$ref": "./examples/FirewallPolicyRuleGroupPut.json" + }, + "Create FirewallPolicyRuleGroup With IpGroups": { + "$ref": "./examples/FirewallPolicyRuleGroupWithIpGroupsPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleGroups": { + "get": { + "tags": [ + "FirewallPolicyRuleGroups" + ], + "operationId": "FirewallPolicyRuleGroups_List", + "description": "Lists all FirewallPolicyRuleGroups in a FirewallPolicy resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "firewallPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Firewall Policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of FirewallPolicyRuleGroup resources.", + "schema": { + "$ref": "#/definitions/FirewallPolicyRuleGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all FirewallPolicyRuleGroups for a given FirewallPolicy": { + "$ref": "./examples/FirewallPolicyRuleGroupList.json" + }, + "List all FirewallPolicyRuleGroups with IpGroups for a given FirewallPolicy": { + "$ref": "./examples/FirewallPolicyRuleGroupWithIpGroupsList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "FirewallPolicy": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FirewallPolicyPropertiesFormat", + "description": "Properties of the firewall policy." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "FirewallPolicy Resource." + }, + "FirewallPolicyPropertiesFormat": { + "properties": { + "ruleGroups": { + "type": "array", + "readOnly": true, + "description": "List of references to FirewallPolicyRuleGroups.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the firewall policy resource." + }, + "basePolicy": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The parent firewall policy from which rules are inherited." + }, + "firewalls": { + "type": "array", + "readOnly": true, + "description": "List of references to Azure Firewalls that this Firewall Policy is associated with.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "childPolicies": { + "type": "array", + "readOnly": true, + "description": "List of references to Child Firewall Policies.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "threatIntelMode": { + "description": "The operation mode for Threat Intelligence.", + "$ref": "./azureFirewall.json#/definitions/AzureFirewallThreatIntelMode" + }, + "intrusionSystemMode": { + "description": "The operation mode for Intrusion system.", + "$ref": "#/definitions/FirewallPolicyIntrusionSystemMode" + } + }, + "description": "Firewall Policy definition." + }, + "FirewallPolicyRuleGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FirewallPolicyRuleGroupProperties", + "description": "The properties of the firewall policy rule group." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Rule Group type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Rule Group resource." + }, + "FirewallPolicyRuleGroupProperties": { + "properties": { + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the Firewall Policy Rule Group resource." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRule" + }, + "description": "Group of Firewall Policy rules." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the firewall policy rule group resource." + } + }, + "description": "Properties of the rule group." + }, + "FirewallPolicyRule": { + "description": "Properties of the rule.", + "discriminator": "ruleType", + "required": [ + "ruleType" + ], + "properties": { + "ruleType": { + "type": "string", + "description": "The type of the rule.", + "enum": [ + "FirewallPolicyNatRule", + "FirewallPolicyFilterRule" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleType", + "modelAsString": true + } + }, + "name": { + "type": "string", + "description": "The name of the rule." + }, + "priority": { + "type": "integer", + "format": "int32", + "maximum": 65000, + "exclusiveMaximum": false, + "minimum": 100, + "exclusiveMinimum": false, + "description": "Priority of the Firewall Policy Rule resource." + } + } + }, + "FirewallPolicyNatRule": { + "properties": { + "action": { + "$ref": "#/definitions/FirewallPolicyNatRuleAction", + "description": "The action type of a Nat rule." + }, + "translatedAddress": { + "type": "string", + "description": "The translated address for this NAT rule." + }, + "translatedPort": { + "type": "string", + "description": "The translated port for this NAT rule." + }, + "ruleCondition": { + "$ref": "#/definitions/FirewallPolicyRuleCondition", + "description": "The match conditions for incoming traffic." + } + }, + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRule" + } + ], + "x-ms-discriminator-value": "FirewallPolicyNatRule", + "description": "Firewall Policy NAT Rule." + }, + "FirewallPolicyFilterRule": { + "properties": { + "action": { + "$ref": "#/definitions/FirewallPolicyFilterRuleAction", + "description": "The action type of a Filter rule." + }, + "ruleConditions": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleCondition" + }, + "description": "Collection of rule conditions used by a rule." + } + }, + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRule" + } + ], + "x-ms-discriminator-value": "FirewallPolicyFilterRule", + "description": "Firewall Policy Filter Rule." + }, + "FirewallPolicyRuleCondition": { + "description": "Properties of a rule.", + "discriminator": "ruleConditionType", + "required": [ + "ruleConditionType" + ], + "properties": { + "name": { + "type": "string", + "description": "Name of the rule condition." + }, + "description": { + "type": "string", + "description": "Description of the rule condition." + }, + "ruleConditionType": { + "type": "string", + "description": "Rule Condition Type.", + "enum": [ + "ApplicationRuleCondition", + "NetworkRuleCondition", + "NatRuleCondition" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleConditionType", + "modelAsString": true + } + } + } + }, + "ApplicationRuleCondition": { + "x-ms-discriminator-value": "ApplicationRuleCondition", + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRuleCondition" + } + ], + "properties": { + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses or Service Tags.", + "items": { + "type": "string" + } + }, + "protocols": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleConditionApplicationProtocol" + }, + "description": "Array of Application Protocols." + }, + "targetFqdns": { + "type": "array", + "description": "List of FQDNs for this rule condition.", + "items": { + "type": "string" + } + }, + "fqdnTags": { + "type": "array", + "description": "List of FQDN Tags for this rule condition.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + } + }, + "description": "Rule condition of type application." + }, + "NatRuleCondition": { + "description": "Rule condition of type nat.", + "x-ms-discriminator-value": "NatRuleCondition", + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRuleCondition" + } + ], + "properties": { + "ipProtocols": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleConditionNetworkProtocol" + }, + "description": "Array of FirewallPolicyRuleConditionNetworkProtocols." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses or Service Tags.", + "items": { + "type": "string" + } + }, + "destinationPorts": { + "type": "array", + "description": "List of destination ports.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + } + } + }, + "NetworkRuleCondition": { + "description": "Rule condition of type network.", + "x-ms-discriminator-value": "NetworkRuleCondition", + "allOf": [ + { + "$ref": "#/definitions/FirewallPolicyRuleCondition" + } + ], + "properties": { + "ipProtocols": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleConditionNetworkProtocol" + }, + "description": "Array of FirewallPolicyRuleConditionNetworkProtocols." + }, + "sourceAddresses": { + "type": "array", + "description": "List of source IP addresses for this rule.", + "items": { + "type": "string" + } + }, + "destinationAddresses": { + "type": "array", + "description": "List of destination IP addresses or Service Tags.", + "items": { + "type": "string" + } + }, + "destinationPorts": { + "type": "array", + "description": "List of destination ports.", + "items": { + "type": "string" + } + }, + "sourceIpGroups": { + "type": "array", + "description": "List of source IpGroups for this rule.", + "items": { + "type": "string" + } + }, + "destinationIpGroups": { + "type": "array", + "description": "List of destination IpGroups for this rule.", + "items": { + "type": "string" + } + } + } + }, + "FirewallPolicyRuleConditionApplicationProtocol": { + "properties": { + "protocolType": { + "description": "Protocol type.", + "$ref": "#/definitions/FirewallPolicyRuleConditionApplicationProtocolType" + }, + "port": { + "type": "integer", + "format": "int32", + "maximum": 64000, + "exclusiveMaximum": false, + "minimum": 0, + "exclusiveMinimum": false, + "description": "Port number for the protocol, cannot be greater than 64000." + } + }, + "description": "Properties of the application rule protocol." + }, + "FirewallPolicyRuleConditionApplicationProtocolType": { + "type": "string", + "description": "The application protocol type of a Rule condition.", + "enum": [ + "Http", + "Https" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleConditionApplicationProtocolType", + "modelAsString": true + } + }, + "FirewallPolicyNatRuleActionType": { + "type": "string", + "description": "The action type of a rule.", + "enum": [ + "DNAT" + ], + "x-ms-enum": { + "name": "FirewallPolicyNatRuleActionType", + "modelAsString": true + } + }, + "FirewallPolicyNatRuleAction": { + "properties": { + "type": { + "description": "The type of action.", + "$ref": "#/definitions/FirewallPolicyNatRuleActionType" + } + }, + "description": "Properties of the FirewallPolicyNatRuleAction." + }, + "FirewallPolicyFilterRuleActionType": { + "type": "string", + "description": "The action type of a rule.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "FirewallPolicyFilterRuleActionType", + "modelAsString": true + } + }, + "FirewallPolicyFilterRuleAction": { + "properties": { + "type": { + "description": "The type of action.", + "$ref": "#/definitions/FirewallPolicyFilterRuleActionType" + } + }, + "description": "Properties of the FirewallPolicyFilterRuleAction." + }, + "FirewallPolicyRuleConditionNetworkProtocol": { + "type": "string", + "description": "The Network protocol of a Rule condition.", + "enum": [ + "TCP", + "UDP", + "Any", + "ICMP" + ], + "x-ms-enum": { + "name": "FirewallPolicyRuleConditionNetworkProtocol", + "modelAsString": true + } + }, + "FirewallPolicyListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicy" + }, + "description": "List of Firewall Policies in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListFirewallPolicies API service call." + }, + "FirewallPolicyRuleGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FirewallPolicyRuleGroup" + }, + "description": "List of FirewallPolicyRuleGroups in a FirewallPolicy." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListFirewallPolicyRuleGroups API service call." + }, + "FirewallPolicyIntrusionSystemMode": { + "type": "string", + "description": "The operation mode for Intrusion system mode.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "FirewallPolicyIntrusionSystemMode", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/ipAllocation.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/ipAllocation.json new file mode 100644 index 000000000000..e4474da6cc33 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/ipAllocation.json @@ -0,0 +1,454 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/IpAllocations/{ipAllocationName}": { + "delete": { + "tags": [ + "IpAllocations" + ], + "operationId": "IpAllocations_Delete", + "description": "Deletes the specified IpAllocation.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipAllocationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the IpAllocation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete IpAllocation": { + "$ref": "./examples/IpAllocationDelete.json" + } + } + }, + "get": { + "tags": [ + "IpAllocations" + ], + "operationId": "IpAllocations_Get", + "description": "Gets the specified IpAllocation by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipAllocationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the IpAllocation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting IpAllocation resource.", + "schema": { + "$ref": "#/definitions/IpAllocation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get IpAllocation": { + "$ref": "./examples/IpAllocationGet.json" + } + } + }, + "put": { + "tags": [ + "IpAllocations" + ], + "operationId": "IpAllocations_CreateOrUpdate", + "description": "Creates or updates an IpAllocation in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipAllocationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the IpAllocation." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/IpAllocation" + }, + "description": "Parameters supplied to the create or update virtual network operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting IpAllocation resource.", + "schema": { + "$ref": "#/definitions/IpAllocation" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting IpAllocation resource.", + "schema": { + "$ref": "#/definitions/IpAllocation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create IpAllocation": { + "$ref": "./examples/IpAllocationCreate.json" + } + } + }, + "patch": { + "tags": [ + "IpAllocations" + ], + "operationId": "IpAllocations_UpdateTags", + "description": "Updates a IpAllocation tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipAllocationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the IpAllocation." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update IpAllocation tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting IpAllocation resource.", + "schema": { + "$ref": "#/definitions/IpAllocation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update virtual network tags": { + "$ref": "./examples/IpAllocationUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/IpAllocations": { + "get": { + "tags": [ + "IpAllocations" + ], + "operationId": "IpAllocations_List", + "description": "Gets all IpAllocations in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of IpAllocation resources.", + "schema": { + "$ref": "#/definitions/IpAllocationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all IpAllocations": { + "$ref": "./examples/IpAllocationList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/IpAllocations": { + "get": { + "tags": [ + "IpAllocations" + ], + "operationId": "IpAllocations_ListByResourceGroup", + "description": "Gets all IpAllocations in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of IpAllocation resources.", + "schema": { + "$ref": "#/definitions/IpAllocationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List IpAllocations in resource group": { + "$ref": "./examples/IpAllocationListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "IpAllocationPropertiesFormat": { + "properties": { + "subnet": { + "readOnly": true, + "$ref": "./network.json#/definitions/SubResource", + "description": "The Subnet that using the prefix of this IpAllocation resource." + }, + "virtualNetwork": { + "readOnly": true, + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualNetwork that using the prefix of this IpAllocation resource." + }, + "type": { + "$ref": "#/definitions/IpAllocationType", + "description": "The type for the IpAllocation." + }, + "prefix": { + "type": "string", + "description": "The address prefix for the IpAllocation." + }, + "prefixLength": { + "type": "integer", + "x-nullable": true, + "default": 0, + "description": "The address prefix length for the IpAllocation." + }, + "prefixType": { + "$ref": "./network.json#/definitions/IPVersion", + "default": null, + "description": "The address prefix Type for the IpAllocation." + }, + "ipamAllocationId": { + "type": "string", + "description": "The IPAM allocation ID." + }, + "allocationTags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "IpAllocation tags." + } + }, + "description": "Properties of the IpAllocation." + }, + "IpAllocation": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IpAllocationPropertiesFormat", + "description": "Properties of the IpAllocation." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "IpAllocation resource." + }, + "IpAllocationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/IpAllocation" + }, + "description": "A list of IpAllocation resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListIpAllocations API service call." + }, + "IpAllocationType": { + "type": "string", + "description": "IpAllocation type.", + "enum": [ + "Undefined", + "Hypernet" + ], + "x-ms-enum": { + "name": "IpAllocationType", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/ipGroups.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/ipGroups.json new file mode 100644 index 000000000000..f0ce3d5449c1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/ipGroups.json @@ -0,0 +1,422 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ipGroups/{ipGroupsName}": { + "get": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_Get", + "description": "Gets the specified ipGroups.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipGroupsName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipGroups." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands resourceIds (of Firewalls/Network Security Groups etc.) back referenced by the IpGroups resource." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting IpGroups resource.", + "schema": { + "$ref": "#/definitions/IpGroup" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get_IpGroups": { + "$ref": "./examples/IpGroupsGet.json" + } + } + }, + "put": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_CreateOrUpdate", + "description": "Creates or updates an ipGroups in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipGroupsName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipGroups." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/IpGroup" + }, + "description": "Parameters supplied to the create or update IpGroups operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ipGroups resource.", + "schema": { + "$ref": "#/definitions/IpGroup" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ipGroups resource.", + "schema": { + "$ref": "#/definitions/IpGroup" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "CreateOrUpdate_IpGroups": { + "$ref": "./examples/IpGroupsCreate.json" + } + } + }, + "patch": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_UpdateGroups", + "description": "Updates tags of an IpGroups resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipGroupsName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipGroups." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to the update ipGroups operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ipGroups resource.", + "schema": { + "$ref": "#/definitions/IpGroup" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Update_IpGroups": { + "$ref": "./examples/IpGroupsUpdateTags.json" + } + } + }, + "delete": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_Delete", + "description": "Deletes the specified ipGroups.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "ipGroupsName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ipGroups." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Delete_IpGroups": { + "$ref": "./examples/IpGroupsDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ipGroups": { + "get": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_ListByResourceGroup", + "description": "Gets all IpGroups in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ipGroups resources.", + "schema": { + "$ref": "#/definitions/IpGroupListResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "ListByResourceGroup_IpGroups": { + "$ref": "./examples/IpGroupsListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ipGroups": { + "get": { + "tags": [ + "IpGroups" + ], + "operationId": "IpGroups_List", + "description": "Gets all IpGroups in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ipGroups resources.", + "schema": { + "$ref": "#/definitions/IpGroupListResult" + } + }, + "default": { + "description": "Unexpected error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List_IpGroups": { + "$ref": "./examples/IpGroupsListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "IpGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IpGroupPropertiesFormat", + "description": "Properties of the IpGroups." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "The IpGroups resource information." + }, + "IpGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/IpGroup" + }, + "description": "The list of IpGroups information resources." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for the ListIpGroups API service call." + }, + "IpGroupPropertiesFormat": { + "properties": { + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the IpGroups resource.", + "readOnly": true + }, + "ipAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "IpAddresses/IpAddressPrefixes in the IpGroups resource." + }, + "firewalls": { + "type": "array", + "readOnly": true, + "description": "List of references to Azure resources that this IpGroups is associated with.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + } + }, + "description": "The IpGroups property information." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/loadBalancer.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/loadBalancer.json new file mode 100644 index 000000000000..224f5871e9db --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/loadBalancer.json @@ -0,0 +1,2058 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}": { + "delete": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_Delete", + "description": "Deletes the specified load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete load balancer": { + "$ref": "./examples/LoadBalancerDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_Get", + "description": "Gets the specified load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting LoadBalancer resource.", + "schema": { + "$ref": "#/definitions/LoadBalancer" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get load balancer": { + "$ref": "./examples/LoadBalancerGet.json" + } + } + }, + "put": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_CreateOrUpdate", + "description": "Creates or updates a load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LoadBalancer" + }, + "description": "Parameters supplied to the create or update load balancer operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting LoadBalancer resource.", + "schema": { + "$ref": "#/definitions/LoadBalancer" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting LoadBalancer resource.", + "schema": { + "$ref": "#/definitions/LoadBalancer" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create load balancer": { + "$ref": "./examples/LoadBalancerCreate.json" + }, + "Create load balancer with Standard SKU": { + "$ref": "./examples/LoadBalancerCreateStandardSku.json" + }, + "Create load balancer with Frontend IP in Zone 1": { + "$ref": "./examples/LoadBalancerCreateWithZones.json" + }, + "Create load balancer with inbound nat pool": { + "$ref": "./examples/LoadBalancerCreateWithInboundNatPool.json" + }, + "Create load balancer with outbound rules": { + "$ref": "./examples/LoadBalancerCreateWithOutboundRules.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_UpdateTags", + "description": "Updates a load balancer tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update load balancer tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting LoadBalancer resource.", + "schema": { + "$ref": "#/definitions/LoadBalancer" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update load balancer tags": { + "$ref": "./examples/LoadBalancerUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/loadBalancers": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_ListAll", + "description": "Gets all the load balancers in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all load balancers": { + "$ref": "./examples/LoadBalancerListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancers_List", + "description": "Gets all the load balancers in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List load balancers in resource group": { + "$ref": "./examples/LoadBalancerList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerBackendAddressPools_List", + "description": "Gets all the load balancer backed address pools.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer BackendAddressPool resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerBackendAddressPoolListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerBackendAddressPoolList": { + "$ref": "./examples/LoadBalancerBackendAddressPoolList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools/{backendAddressPoolName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerBackendAddressPools_Get", + "description": "Gets load balancer backend address pool.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "backendAddressPoolName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the backend address pool." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns LoadBalancer BackendAddressPool resource.", + "schema": { + "$ref": "#/definitions/BackendAddressPool" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerBackendAddressPoolGet": { + "$ref": "./examples/LoadBalancerBackendAddressPoolGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/frontendIPConfigurations": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerFrontendIPConfigurations_List", + "description": "Gets all the load balancer frontend IP configurations.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer FrontendIPConfiguration resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerFrontendIPConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerFrontendIPConfigurationList": { + "$ref": "./examples/LoadBalancerFrontendIPConfigurationList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/frontendIPConfigurations/{frontendIPConfigurationName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerFrontendIPConfigurations_Get", + "description": "Gets load balancer frontend IP configuration.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "frontendIPConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the frontend IP configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns LoadBalancer FrontendIPConfiguration resource.", + "schema": { + "$ref": "#/definitions/FrontendIPConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerFrontendIPConfigurationGet": { + "$ref": "./examples/LoadBalancerFrontendIPConfigurationGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "InboundNatRules_List", + "description": "Gets all the inbound nat rules in a load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer InboundNatRule resources.", + "schema": { + "$ref": "#/definitions/InboundNatRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "InboundNatRuleList": { + "$ref": "./examples/InboundNatRuleList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules/{inboundNatRuleName}": { + "delete": { + "tags": [ + "LoadBalancers" + ], + "operationId": "InboundNatRules_Delete", + "description": "Deletes the specified load balancer inbound nat rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "inboundNatRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the inbound nat rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "InboundNatRuleDelete": { + "$ref": "./examples/InboundNatRuleDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "InboundNatRules_Get", + "description": "Gets the specified load balancer inbound nat rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "inboundNatRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the inbound nat rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting InboundNatRule resource.", + "schema": { + "$ref": "#/definitions/InboundNatRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "InboundNatRuleGet": { + "$ref": "./examples/InboundNatRuleGet.json" + } + } + }, + "put": { + "tags": [ + "LoadBalancers" + ], + "operationId": "InboundNatRules_CreateOrUpdate", + "description": "Creates or updates a load balancer inbound nat rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "inboundNatRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the inbound nat rule." + }, + { + "name": "inboundNatRuleParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/InboundNatRule" + }, + "description": "Parameters supplied to the create or update inbound nat rule operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting InboundNatRule resource.", + "schema": { + "$ref": "#/definitions/InboundNatRule" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting InboundNatRule resource.", + "schema": { + "$ref": "#/definitions/InboundNatRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "InboundNatRuleCreate": { + "$ref": "./examples/InboundNatRuleCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/loadBalancingRules": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerLoadBalancingRules_List", + "description": "Gets all the load balancing rules in a load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer LoadBalancingRule resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerLoadBalancingRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "LoadBalancerLoadBalancingRuleList": { + "$ref": "./examples/LoadBalancerLoadBalancingRuleList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/loadBalancingRules/{loadBalancingRuleName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerLoadBalancingRules_Get", + "description": "Gets the specified load balancer load balancing rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "loadBalancingRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancing rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting LoadBalancingRule resource.", + "schema": { + "$ref": "#/definitions/LoadBalancingRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerLoadBalancingRuleGet": { + "$ref": "./examples/LoadBalancerLoadBalancingRuleGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/outboundRules": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerOutboundRules_List", + "description": "Gets all the outbound rules in a load balancer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer OutboundRule resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerOutboundRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "LoadBalancerOutboundRuleList": { + "$ref": "./examples/LoadBalancerOutboundRuleList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/outboundRules/{outboundRuleName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerOutboundRules_Get", + "description": "Gets the specified load balancer outbound rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "outboundRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the outbound rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting OutboundRule resource.", + "schema": { + "$ref": "#/definitions/OutboundRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerOutboundRuleGet": { + "$ref": "./examples/LoadBalancerOutboundRuleGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/networkInterfaces": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerNetworkInterfaces_List", + "description": "Gets associated load balancer network interfaces.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerNetworkInterfaceListVmss": { + "$ref": "./examples/LoadBalancerNetworkInterfaceListVmss.json" + }, + "LoadBalancerNetworkInterfaceListSimple": { + "$ref": "./examples/LoadBalancerNetworkInterfaceListSimple.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerProbes_List", + "description": "Gets all the load balancer probes.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LoadBalancer Probe resources.", + "schema": { + "$ref": "#/definitions/LoadBalancerProbeListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerProbeList": { + "$ref": "./examples/LoadBalancerProbeList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}": { + "get": { + "tags": [ + "LoadBalancers" + ], + "operationId": "LoadBalancerProbes_Get", + "description": "Gets load balancer probe.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "loadBalancerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the load balancer." + }, + { + "name": "probeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the probe." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns LoadBalancer Probe resource.", + "schema": { + "$ref": "#/definitions/Probe" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "LoadBalancerProbeGet": { + "$ref": "./examples/LoadBalancerProbeGet.json" + } + } + } + } + }, + "definitions": { + "LoadBalancerSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of a load balancer SKU.", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "LoadBalancerSkuName", + "modelAsString": true + } + } + }, + "description": "SKU of a load balancer." + }, + "FrontendIPConfigurationPropertiesFormat": { + "properties": { + "inboundNatRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to inbound rules that use this frontend IP." + }, + "inboundNatPools": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to inbound pools that use this frontend IP." + }, + "outboundRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to outbound rules that use this frontend IP." + }, + "loadBalancingRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to load balancing rules that use this frontend IP." + }, + "privateIPAddress": { + "type": "string", + "description": "The private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The Private IP allocation method." + }, + "privateIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "Whether the specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4." + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference to the subnet resource." + }, + "publicIPAddress": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress", + "description": "The reference to the Public IP resource." + }, + "publicIPPrefix": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the Public IP Prefix resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the frontend IP configuration resource." + } + }, + "description": "Properties of Frontend IP Configuration of the load balancer." + }, + "FrontendIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FrontendIPConfigurationPropertiesFormat", + "description": "Properties of the load balancer probe." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of frontend IP configurations used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting the IP allocated for the resource needs to come from." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Frontend IP address of the load balancer." + }, + "BackendAddressPoolPropertiesFormat": { + "properties": { + "backendIPConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "An array of references to IP addresses defined in network interfaces." + }, + "loadBalancingRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to load balancing rules that use this backend address pool." + }, + "outboundRule": { + "readOnly": true, + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to an outbound rule that uses this backend address pool." + }, + "outboundRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to outbound rules that use this backend address pool." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the backend address pool resource." + } + }, + "description": "Properties of the backend address pool." + }, + "BackendAddressPool": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BackendAddressPoolPropertiesFormat", + "description": "Properties of load balancer backend address pool." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of backend address pools used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Pool of backend IP addresses." + }, + "LoadBalancingRulePropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to frontend IP addresses." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to a pool of DIPs. Inbound traffic is randomly load balanced across IPs in the backend IPs." + }, + "probe": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the load balancer probe used by the load balancing rule." + }, + "protocol": { + "$ref": "#/definitions/TransportProtocol", + "description": "The reference to the transport protocol used by the load balancing rule." + }, + "loadDistribution": { + "type": "string", + "description": "The load distribution policy for this rule.", + "enum": [ + "Default", + "SourceIP", + "SourceIPProtocol" + ], + "x-ms-enum": { + "name": "LoadDistribution", + "modelAsString": true + } + }, + "frontendPort": { + "type": "integer", + "format": "int32", + "description": "The port for the external endpoint. Port numbers for each rule must be unique within the Load Balancer. Acceptable values are between 0 and 65534. Note that value 0 enables \"Any Port\"." + }, + "backendPort": { + "type": "integer", + "format": "int32", + "description": "The port used for internal connections on the endpoint. Acceptable values are between 0 and 65535. Note that value 0 enables \"Any Port\"." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP." + }, + "enableFloatingIP": { + "type": "boolean", + "description": "Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint." + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "disableOutboundSnat": { + "type": "boolean", + "description": "Configures SNAT for the VMs in the backend pool to use the publicIP address specified in the frontend of the load balancing rule." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the load balancing rule resource." + } + }, + "required": [ + "protocol", + "frontendPort" + ], + "description": "Properties of the load balancer." + }, + "LoadBalancingRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LoadBalancingRulePropertiesFormat", + "description": "Properties of load balancer load balancing rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of load balancing rules used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "A load balancing rule for a load balancer." + }, + "ProbePropertiesFormat": { + "properties": { + "loadBalancingRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The load balancer rules that use this probe." + }, + "protocol": { + "type": "string", + "description": "The protocol of the end point. If 'Tcp' is specified, a received ACK is required for the probe to be successful. If 'Http' or 'Https' is specified, a 200 OK response from the specifies URI is required for the probe to be successful.", + "enum": [ + "Http", + "Tcp", + "Https" + ], + "x-ms-enum": { + "name": "ProbeProtocol", + "modelAsString": true + } + }, + "port": { + "type": "integer", + "format": "int32", + "description": "The port for communicating the probe. Possible values range from 1 to 65535, inclusive." + }, + "intervalInSeconds": { + "type": "integer", + "format": "int32", + "description": "The interval, in seconds, for how frequently to probe the endpoint for health status. Typically, the interval is slightly less than half the allocated timeout period (in seconds) which allows two full probes before taking the instance out of rotation. The default value is 15, the minimum value is 5." + }, + "numberOfProbes": { + "type": "integer", + "format": "int32", + "description": "The number of probes where if no response, will result in stopping further traffic from being delivered to the endpoint. This values allows endpoints to be taken out of rotation faster or slower than the typical times used in Azure." + }, + "requestPath": { + "type": "string", + "description": "The URI used for requesting health status from the VM. Path is required if a protocol is set to http. Otherwise, it is not allowed. There is no default value." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the probe resource." + } + }, + "required": [ + "protocol", + "port" + ], + "description": "Load balancer probe resource." + }, + "Probe": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProbePropertiesFormat", + "description": "Properties of load balancer probe." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of probes used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "A load balancer probe." + }, + "InboundNatRulePropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to frontend IP addresses." + }, + "backendIPConfiguration": { + "readOnly": true, + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration", + "description": "A reference to a private IP address defined on a network interface of a VM. Traffic sent to the frontend port of each of the frontend IP configurations is forwarded to the backend IP." + }, + "protocol": { + "$ref": "#/definitions/TransportProtocol", + "description": "The reference to the transport protocol used by the load balancing rule." + }, + "frontendPort": { + "type": "integer", + "format": "int32", + "description": "The port for the external endpoint. Port numbers for each rule must be unique within the Load Balancer. Acceptable values range from 1 to 65534." + }, + "backendPort": { + "type": "integer", + "format": "int32", + "description": "The port used for the internal endpoint. Acceptable values range from 1 to 65535." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP." + }, + "enableFloatingIP": { + "type": "boolean", + "description": "Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint." + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the inbound NAT rule resource." + } + }, + "description": "Properties of the inbound NAT rule." + }, + "InboundNatRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/InboundNatRulePropertiesFormat", + "description": "Properties of load balancer inbound nat rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of inbound NAT rules used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Inbound NAT rule of the load balancer." + }, + "InboundNatPoolPropertiesFormat": { + "properties": { + "frontendIPConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to frontend IP addresses." + }, + "protocol": { + "$ref": "#/definitions/TransportProtocol", + "description": "The reference to the transport protocol used by the inbound NAT pool." + }, + "frontendPortRangeStart": { + "type": "integer", + "format": "int32", + "description": "The first port number in the range of external ports that will be used to provide Inbound Nat to NICs associated with a load balancer. Acceptable values range between 1 and 65534." + }, + "frontendPortRangeEnd": { + "type": "integer", + "format": "int32", + "description": "The last port number in the range of external ports that will be used to provide Inbound Nat to NICs associated with a load balancer. Acceptable values range between 1 and 65535." + }, + "backendPort": { + "type": "integer", + "format": "int32", + "description": "The port used for internal connections on the endpoint. Acceptable values are between 1 and 65535." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP." + }, + "enableFloatingIP": { + "type": "boolean", + "description": "Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint." + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the inbound NAT pool resource." + } + }, + "required": [ + "protocol", + "frontendPortRangeStart", + "frontendPortRangeEnd", + "backendPort" + ], + "description": "Properties of Inbound NAT pool." + }, + "InboundNatPool": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/InboundNatPoolPropertiesFormat", + "description": "Properties of load balancer inbound nat pool." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of inbound NAT pools used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Inbound NAT pool of the load balancer." + }, + "OutboundRulePropertiesFormat": { + "properties": { + "allocatedOutboundPorts": { + "type": "integer", + "format": "int32", + "description": "The number of outbound ports to be used for NAT." + }, + "frontendIPConfigurations": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "The Frontend IP addresses of the load balancer." + }, + "backendAddressPool": { + "$ref": "./network.json#/definitions/SubResource", + "description": "A reference to a pool of DIPs. Outbound traffic is randomly load balanced across IPs in the backend IPs." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the outbound rule resource." + }, + "protocol": { + "type": "string", + "description": "The protocol for the outbound rule in load balancer.", + "enum": [ + "Tcp", + "Udp", + "All" + ], + "x-ms-enum": { + "name": "LoadBalancerOutboundRuleProtocol", + "modelAsString": true + } + }, + "enableTcpReset": { + "type": "boolean", + "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "description": "The timeout for the TCP idle connection." + } + }, + "required": [ + "backendAddressPool", + "frontendIPConfigurations", + "protocol" + ], + "description": "Outbound rule of the load balancer." + }, + "OutboundRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OutboundRulePropertiesFormat", + "description": "Properties of load balancer outbound rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within the set of outbound rules used by the load balancer. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Type of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Outbound rule of the load balancer." + }, + "LoadBalancerPropertiesFormat": { + "properties": { + "frontendIPConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/FrontendIPConfiguration" + }, + "description": "Object representing the frontend IPs to be used for the load balancer." + }, + "backendAddressPools": { + "type": "array", + "items": { + "$ref": "#/definitions/BackendAddressPool" + }, + "description": "Collection of backend address pools used by a load balancer." + }, + "loadBalancingRules": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancingRule" + }, + "description": "Object collection representing the load balancing rules Gets the provisioning." + }, + "probes": { + "type": "array", + "items": { + "$ref": "#/definitions/Probe" + }, + "description": "Collection of probe objects used in the load balancer." + }, + "inboundNatRules": { + "type": "array", + "items": { + "$ref": "#/definitions/InboundNatRule" + }, + "description": "Collection of inbound NAT Rules used by a load balancer. Defining inbound NAT rules on your load balancer is mutually exclusive with defining an inbound NAT pool. Inbound NAT pools are referenced from virtual machine scale sets. NICs that are associated with individual virtual machines cannot reference an Inbound NAT pool. They have to reference individual inbound NAT rules." + }, + "inboundNatPools": { + "type": "array", + "items": { + "$ref": "#/definitions/InboundNatPool" + }, + "description": "Defines an external port range for inbound NAT to a single backend port on NICs associated with a load balancer. Inbound NAT rules are created automatically for each NIC associated with the Load Balancer using an external port from this range. Defining an Inbound NAT pool on your Load Balancer is mutually exclusive with defining inbound Nat rules. Inbound NAT pools are referenced from virtual machine scale sets. NICs that are associated with individual virtual machines cannot reference an inbound NAT pool. They have to reference individual inbound NAT rules." + }, + "outboundRules": { + "type": "array", + "items": { + "$ref": "#/definitions/OutboundRule" + }, + "description": "The outbound rules." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the load balancer resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the load balancer resource." + } + }, + "description": "Properties of the load balancer." + }, + "LoadBalancer": { + "properties": { + "sku": { + "$ref": "#/definitions/LoadBalancerSku", + "description": "The load balancer SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LoadBalancerPropertiesFormat", + "description": "Properties of load balancer." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "LoadBalancer resource." + }, + "LoadBalancerListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancer" + }, + "description": "A list of load balancers in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListLoadBalancers API service call." + }, + "InboundNatRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/InboundNatRule" + }, + "description": "A list of inbound nat rules in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListInboundNatRule API service call." + }, + "LoadBalancerBackendAddressPoolListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BackendAddressPool" + }, + "description": "A list of backend address pools in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListBackendAddressPool API service call." + }, + "LoadBalancerFrontendIPConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FrontendIPConfiguration" + }, + "description": "A list of frontend IP configurations in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListFrontendIPConfiguration API service call." + }, + "LoadBalancerLoadBalancingRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancingRule" + }, + "description": "A list of load balancing rules in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListLoadBalancingRule API service call." + }, + "LoadBalancerOutboundRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/OutboundRule" + }, + "description": "A list of outbound rules in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListOutboundRule API service call." + }, + "LoadBalancerProbeListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Probe" + }, + "description": "A list of probes in a load balancer." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListProbe API service call." + }, + "TransportProtocol": { + "type": "string", + "description": "The transport protocol for the endpoint.", + "enum": [ + "Udp", + "Tcp", + "All" + ], + "x-ms-enum": { + "name": "TransportProtocol", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/natGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/natGateway.json new file mode 100644 index 000000000000..dbabf6ed23ee --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/natGateway.json @@ -0,0 +1,472 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/natGateways/{natGatewayName}": { + "delete": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_Delete", + "description": "Deletes the specified nat gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "natGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete nat gateway": { + "$ref": "./examples/NatGatewayDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_Get", + "description": "Gets the specified nat gateway in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "natGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NatGateway resource.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get nat gateway": { + "$ref": "./examples/NatGatewayGet.json" + } + } + }, + "put": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_CreateOrUpdate", + "description": "Creates or updates a nat gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "natGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NatGateway" + }, + "description": "Parameters supplied to the create or update nat gateway operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting NatGateway resource.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting NatGateway resource.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create nat gateway": { + "$ref": "./examples/NatGatewayCreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_UpdateTags", + "description": "Updates nat gateway tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "natGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the nat gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update nat gateway tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting NatGateway resource.", + "schema": { + "$ref": "#/definitions/NatGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update nat gateway tags": { + "$ref": "./examples/NatGatewayUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/natGateways": { + "get": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_ListAll", + "description": "Gets all the Nat Gateways in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NatGateway resources.", + "schema": { + "$ref": "#/definitions/NatGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all nat gateways": { + "$ref": "./examples/NatGatewayListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/natGateways": { + "get": { + "tags": [ + "NatGateways" + ], + "operationId": "NatGateways_List", + "description": "Gets all nat gateways in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NatGateway resources.", + "schema": { + "$ref": "#/definitions/NatGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List nat gateways in resource group": { + "$ref": "./examples/NatGatewayList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "NatGatewaySku": { + "properties": { + "name": { + "type": "string", + "description": "Name of Nat Gateway SKU.", + "enum": [ + "Standard" + ], + "x-ms-enum": { + "name": "NatGatewaySkuName", + "modelAsString": true + } + } + }, + "description": "SKU of nat gateway." + }, + "NatGatewayPropertiesFormat": { + "properties": { + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The idle timeout of the nat gateway." + }, + "publicIpAddresses": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of public ip addresses associated with the nat gateway resource." + }, + "publicIpPrefixes": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of public ip prefixes associated with the nat gateway resource." + }, + "subnets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "An array of references to the subnets using this nat gateway resource." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the NAT gateway resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the NAT gateway resource." + } + }, + "description": "Nat Gateway properties." + }, + "NatGateway": { + "properties": { + "sku": { + "$ref": "#/definitions/NatGatewaySku", + "description": "The nat gateway SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NatGatewayPropertiesFormat", + "description": "Nat Gateway properties." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting the zone in which Nat Gateway should be deployed." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Nat Gateway resource." + }, + "NatGatewayListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NatGateway" + }, + "description": "A list of Nat Gateways that exists in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListNatGateways API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/network.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/network.json new file mode 100644 index 000000000000..95976775e19a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/network.json @@ -0,0 +1,335 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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": {}, + "definitions": { + "ErrorDetails": { + "properties": { + "code": { + "type": "string", + "description": "Error code." + }, + "target": { + "type": "string", + "description": "Error target." + }, + "message": { + "type": "string", + "description": "Error message." + } + }, + "description": "Common error details representation." + }, + "Error": { + "properties": { + "code": { + "type": "string", + "description": "Error code." + }, + "message": { + "type": "string", + "description": "Error message." + }, + "target": { + "type": "string", + "description": "Error target." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDetails" + }, + "description": "Error details." + }, + "innerError": { + "type": "string", + "description": "Inner error message." + } + }, + "description": "Common error representation." + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody", + "description": "Cloud error body." + } + }, + "description": "An error response from the service." + }, + "CloudErrorBody": { + "x-ms-external": true, + "properties": { + "code": { + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + }, + "target": { + "type": "string", + "description": "The target of the particular error. For example, the name of the property in error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "description": "A list of additional details about the error." + } + }, + "description": "An error response from the service." + }, + "AzureAsyncOperationResult": { + "properties": { + "status": { + "type": "string", + "description": "Status of the Azure async operation.", + "enum": [ + "InProgress", + "Succeeded", + "Failed" + ], + "x-ms-enum": { + "name": "NetworkOperationStatus", + "modelAsString": true + } + }, + "error": { + "$ref": "#/definitions/Error", + "description": "Details of the error occurred during specified asynchronous operation." + } + }, + "description": "The response body contains the status of the specified asynchronous operation, indicating whether it has succeeded, is in progress, or has failed. Note that this status is distinct from the HTTP status code returned for the Get Operation Status operation itself. If the asynchronous operation succeeded, the response body includes the HTTP status code for the successful request. If the asynchronous operation failed, the response body includes the HTTP status code for the failed request and error information regarding the failure." + }, + "Resource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "description": "Common resource representation.", + "x-ms-azure-resource": true + }, + "SubResource": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + } + }, + "description": "Reference to another subresource.", + "x-ms-azure-resource": true + }, + "TagsObject": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "description": "Tags object for patch operations." + }, + "ManagedServiceIdentity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of the system assigned identity. This property will only be provided for a system assigned identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id of the system assigned identity. This property will only be provided for a system assigned identity." + }, + "type": { + "type": "string", + "description": "The type of identity used for the resource. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the virtual machine.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "description": "The list of user identities associated with resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "description": "Identity for the resource." + }, + "ProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Succeeded", + "Updating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "Access": { + "type": "string", + "description": "Access to be allowed or denied.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "Access", + "modelAsString": true + } + }, + "AuthenticationMethod": { + "type": "string", + "description": "VPN client authentication method.", + "enum": [ + "EAPTLS", + "EAPMSCHAPv2" + ], + "x-ms-enum": { + "name": "AuthenticationMethod", + "modelAsString": true + } + }, + "IPAllocationMethod": { + "type": "string", + "description": "IP address allocation method.", + "enum": [ + "Static", + "Dynamic" + ], + "x-ms-enum": { + "name": "IPAllocationMethod", + "modelAsString": true + } + }, + "IPVersion": { + "type": "string", + "description": "IP address version.", + "enum": [ + "IPv4", + "IPv6" + ], + "x-ms-enum": { + "name": "IPVersion", + "modelAsString": true + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + }, + "ApiVersionVmssParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "enum": [ + "2017-03-30" + ], + "x-ms-enum": { + "name": "ApiVersion", + "modelAsString": true + }, + "description": "Client API version." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkInterface.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkInterface.json new file mode 100644 index 000000000000..4d35e6d0bba8 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkInterface.json @@ -0,0 +1,1522 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}": { + "delete": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_Delete", + "description": "Deletes the specified network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete network interface": { + "$ref": "./examples/NetworkInterfaceDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_Get", + "description": "Gets information about the specified network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "#/definitions/NetworkInterface" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get network interface": { + "$ref": "./examples/NetworkInterfaceGet.json" + } + } + }, + "put": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_CreateOrUpdate", + "description": "Creates or updates a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkInterface" + }, + "description": "Parameters supplied to the create or update network interface operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "#/definitions/NetworkInterface" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "#/definitions/NetworkInterface" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create network interface": { + "$ref": "./examples/NetworkInterfaceCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_UpdateTags", + "description": "Updates a network interface tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network interface tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "#/definitions/NetworkInterface" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update network interface tags": { + "$ref": "./examples/NetworkInterfaceUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListAll", + "description": "Gets all network interfaces in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all network interfaces": { + "$ref": "./examples/NetworkInterfaceListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_List", + "description": "Gets all network interfaces in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List network interfaces in resource group": { + "$ref": "./examples/NetworkInterfaceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/effectiveRouteTable": { + "post": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_GetEffectiveRouteTable", + "description": "Gets all route tables applied to a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of EffectRoute resources.", + "schema": { + "$ref": "#/definitions/EffectiveRouteListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Show network interface effective route tables": { + "$ref": "./examples/NetworkInterfaceEffectiveRouteTableList.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/effectiveNetworkSecurityGroups": { + "post": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListEffectiveNetworkSecurityGroups", + "description": "Gets all network security groups applied to a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkSecurityGroup resources.", + "schema": { + "$ref": "#/definitions/EffectiveNetworkSecurityGroupListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List network interface effective network security groups": { + "$ref": "./examples/NetworkInterfaceEffectiveNSGList.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/ipConfigurations": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceIPConfigurations_List", + "description": "Get all ip configurations in a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface IPConfiguration resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceIPConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "NetworkInterfaceIPConfigurationList": { + "$ref": "./examples/NetworkInterfaceIPConfigurationList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/ipConfigurations/{ipConfigurationName}": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceIPConfigurations_Get", + "description": "Gets the specified network interface ip configuration.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ip configuration name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterface IPConfiguration resource.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceIPConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "NetworkInterfaceIPConfigurationGet": { + "$ref": "./examples/NetworkInterfaceIPConfigurationGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/loadBalancers": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceLoadBalancers_List", + "description": "List all load balancers in a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface LoadBalancer resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceLoadBalancerListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "NetworkInterfaceLoadBalancerList": { + "$ref": "./examples/NetworkInterfaceLoadBalancerList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/tapConfigurations/{tapConfigurationName}": { + "delete": { + "tags": [ + "Network Interfaces" + ], + "operationId": "NetworkInterfaceTapConfigurations_Delete", + "description": "Deletes the specified tap configuration from the NetworkInterface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "tapConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tap configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete tap configuration": { + "$ref": "./examples/NetworkInterfaceTapConfigurationDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceTapConfigurations_Get", + "description": "Get the specified tap configuration on a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "tapConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tap configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a tap configuration.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Network Interface Tap Configurations": { + "$ref": "./examples/NetworkInterfaceTapConfigurationGet.json" + } + } + }, + "put": { + "tags": [ + "Network Interfaces" + ], + "operationId": "NetworkInterfaceTapConfigurations_CreateOrUpdate", + "description": "Creates or updates a Tap configuration in the specified NetworkInterface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "tapConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tap configuration." + }, + { + "name": "tapConfigurationParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + }, + "description": "Parameters supplied to the create or update tap configuration operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Tap Configuration resource.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Tap configuration resource.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Network Interface Tap Configurations": { + "$ref": "./examples/NetworkInterfaceTapConfigurationCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/tapConfigurations": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaceTapConfigurations_List", + "description": "Get all Tap configurations in a network interface.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface TapConfiguration resources.", + "schema": { + "$ref": "#/definitions/NetworkInterfaceTapConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual network tap configurations": { + "$ref": "./examples/NetworkInterfaceTapConfigurationList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "NetworkInterfaceTapConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkInterfaceTapConfigurationPropertiesFormat", + "description": "Properties of the Virtual Network Tap configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Tap configuration in a Network Interface." + }, + "NetworkInterfaceTapConfigurationPropertiesFormat": { + "properties": { + "virtualNetworkTap": { + "$ref": "./virtualNetworkTap.json#/definitions/VirtualNetworkTap", + "description": "The reference to the Virtual Network Tap resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network interface tap configuration resource." + } + }, + "description": "Properties of Virtual Network Tap configuration." + }, + "NetworkInterfaceIPConfigurationPropertiesFormat": { + "properties": { + "virtualNetworkTaps": { + "type": "array", + "items": { + "$ref": "./virtualNetworkTap.json#/definitions/VirtualNetworkTap" + }, + "description": "The reference to Virtual Network Taps." + }, + "applicationGatewayBackendAddressPools": { + "type": "array", + "items": { + "$ref": "./applicationGateway.json#/definitions/ApplicationGatewayBackendAddressPool" + }, + "description": "The reference to ApplicationGatewayBackendAddressPool resource." + }, + "loadBalancerBackendAddressPools": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/BackendAddressPool" + }, + "description": "The reference to LoadBalancerBackendAddressPool resource." + }, + "loadBalancerInboundNatRules": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/InboundNatRule" + }, + "description": "A list of references of LoadBalancerInboundNatRules." + }, + "privateIPAddress": { + "type": "string", + "description": "Private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "privateIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "Whether the specific IP configuration is IPv4 or IPv6. Default is IPv4." + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "Subnet bound to the IP configuration." + }, + "primary": { + "type": "boolean", + "description": "Whether this is a primary customer address on the network interface." + }, + "publicIPAddress": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress", + "description": "Public IP address bound to the IP configuration." + }, + "applicationSecurityGroups": { + "type": "array", + "items": { + "$ref": "./applicationSecurityGroup.json#/definitions/ApplicationSecurityGroup" + }, + "description": "Application security groups in which the IP configuration is included." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network interface IP configuration." + }, + "privateLinkConnectionProperties": { + "$ref": "#/definitions/NetworkInterfaceIPConfigurationPrivateLinkConnectionProperties", + "description": "PrivateLinkConnection properties for the network interface.", + "readOnly": true + } + }, + "description": "Properties of IP configuration." + }, + "NetworkInterfaceIPConfigurationPrivateLinkConnectionProperties": { + "properties": { + "groupId": { + "type": "string", + "readOnly": true, + "description": "The group ID for current private link connection." + }, + "requiredMemberName": { + "type": "string", + "readOnly": true, + "description": "The required member name for current private link connection." + }, + "fqdns": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "List of FQDNs for current private link connection." + } + }, + "description": "PrivateLinkConnection properties for the network interface." + }, + "NetworkInterfaceIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkInterfaceIPConfigurationPropertiesFormat", + "description": "Network interface IP configuration properties." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IPConfiguration in a network interface." + }, + "NetworkInterfaceDnsSettings": { + "properties": { + "dnsServers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of DNS servers IP addresses. Use 'AzureProvidedDNS' to switch to azure provided DNS resolution. 'AzureProvidedDNS' value cannot be combined with other IPs, it must be the only value in dnsServers collection." + }, + "appliedDnsServers": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "If the VM that uses this NIC is part of an Availability Set, then this list will have the union of all DNS servers from all NICs that are part of the Availability Set. This property is what is configured on each of those VMs." + }, + "internalDnsNameLabel": { + "type": "string", + "description": "Relative DNS name for this NIC used for internal communications between VMs in the same virtual network." + }, + "internalFqdn": { + "readOnly": true, + "type": "string", + "description": "Fully qualified DNS name supporting internal communications between VMs in the same virtual network." + }, + "internalDomainNameSuffix": { + "readOnly": true, + "type": "string", + "description": "Even if internalDnsNameLabel is not specified, a DNS entry is created for the primary NIC of the VM. This DNS name can be constructed by concatenating the VM name with the value of internalDomainNameSuffix." + } + }, + "description": "DNS settings of a network interface." + }, + "NetworkInterfacePropertiesFormat": { + "properties": { + "virtualMachine": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to a virtual machine.", + "readOnly": true + }, + "networkSecurityGroup": { + "$ref": "./networkSecurityGroup.json#/definitions/NetworkSecurityGroup", + "description": "The reference to the NetworkSecurityGroup resource." + }, + "privateEndpoint": { + "readOnly": true, + "$ref": "./privateEndpoint.json#/definitions/PrivateEndpoint", + "description": "A reference to the private endpoint to which the network interface is linked." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "A list of IPConfigurations of the network interface." + }, + "tapConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + }, + "description": "A list of TapConfigurations of the network interface." + }, + "dnsSettings": { + "$ref": "#/definitions/NetworkInterfaceDnsSettings", + "description": "The DNS settings in network interface." + }, + "macAddress": { + "readOnly": true, + "type": "string", + "description": "The MAC address of the network interface." + }, + "primary": { + "readOnly": true, + "type": "boolean", + "description": "Whether this is a primary network interface on a virtual machine." + }, + "enableAcceleratedNetworking": { + "type": "boolean", + "description": "If the network interface is accelerated networking enabled." + }, + "enableIPForwarding": { + "type": "boolean", + "description": "Indicates whether IP forwarding is enabled on this network interface." + }, + "hostedWorkloads": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "A list of references to linked BareMetal resources." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the network interface resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network interface resource." + } + }, + "description": "NetworkInterface properties." + }, + "NetworkInterface": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkInterfacePropertiesFormat", + "description": "Properties of the network interface." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "A network interface in a resource group." + }, + "NetworkInterfaceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterface" + }, + "description": "A list of network interfaces in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListNetworkInterface API service call." + }, + "NetworkInterfaceTapConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceTapConfiguration" + }, + "description": "A list of tap configurations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list tap configurations API service call." + }, + "NetworkInterfaceIPConfigurationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkInterfaceIPConfiguration" + }, + "description": "A list of ip configurations." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list ip configurations API service call." + }, + "NetworkInterfaceLoadBalancerListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/LoadBalancer" + }, + "description": "A list of load balancers." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list ip configurations API service call." + }, + "EffectiveNetworkSecurityGroup": { + "properties": { + "networkSecurityGroup": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The ID of network security group that is applied." + }, + "association": { + "$ref": "#/definitions/EffectiveNetworkSecurityGroupAssociation", + "description": "Associated resources." + }, + "effectiveSecurityRules": { + "type": "array", + "items": { + "$ref": "#/definitions/EffectiveNetworkSecurityRule" + }, + "description": "A collection of effective security rules." + }, + "tagMap": { + "type": "string", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of IP Addresses within the tag (key)." + }, + "description": "Mapping of tags to list of IP Addresses included within the tag." + } + }, + "description": "Effective network security group." + }, + "EffectiveNetworkSecurityGroupAssociation": { + "properties": { + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The ID of the subnet if assigned." + }, + "networkInterface": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The ID of the network interface if assigned." + } + }, + "description": "The effective network security group association." + }, + "EffectiveNetworkSecurityRule": { + "properties": { + "name": { + "type": "string", + "description": "The name of the security rule specified by the user (if created by the user)." + }, + "protocol": { + "type": "string", + "description": "The network protocol this rule applies to.", + "enum": [ + "Tcp", + "Udp", + "All" + ], + "x-ms-enum": { + "name": "EffectiveSecurityRuleProtocol", + "modelAsString": true + } + }, + "sourcePortRange": { + "type": "string", + "description": "The source port or range." + }, + "destinationPortRange": { + "type": "string", + "description": "The destination port or range." + }, + "sourcePortRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The source port ranges. Expected values include a single integer between 0 and 65535, a range using '-' as separator (e.g. 100-400), or an asterisk (*)." + }, + "destinationPortRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The destination port ranges. Expected values include a single integer between 0 and 65535, a range using '-' as separator (e.g. 100-400), or an asterisk (*)." + }, + "sourceAddressPrefix": { + "type": "string", + "description": "The source address prefix." + }, + "destinationAddressPrefix": { + "type": "string", + "description": "The destination address prefix." + }, + "sourceAddressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The source address prefixes. Expected values include CIDR IP ranges, Default Tags (VirtualNetwork, AzureLoadBalancer, Internet), System Tags, and the asterisk (*)." + }, + "destinationAddressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The destination address prefixes. Expected values include CIDR IP ranges, Default Tags (VirtualNetwork, AzureLoadBalancer, Internet), System Tags, and the asterisk (*)." + }, + "expandedSourceAddressPrefix": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The expanded source address prefix." + }, + "expandedDestinationAddressPrefix": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Expanded destination address prefix." + }, + "access": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRuleAccess", + "description": "Whether network traffic is allowed or denied." + }, + "priority": { + "type": "integer", + "format": "int32", + "description": "The priority of the rule." + }, + "direction": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRuleDirection", + "description": "The direction of the rule." + } + }, + "description": "Effective network security rules." + }, + "EffectiveNetworkSecurityGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EffectiveNetworkSecurityGroup" + }, + "description": "A list of effective network security groups." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list effective network security groups API service call." + }, + "EffectiveRoute": { + "properties": { + "name": { + "type": "string", + "description": "The name of the user defined route. This is optional." + }, + "disableBgpRoutePropagation": { + "type": "boolean", + "description": "If true, on-premises routes are not propagated to the network interfaces in the subnet." + }, + "source": { + "type": "string", + "description": "Who created the route.", + "enum": [ + "Unknown", + "User", + "VirtualNetworkGateway", + "Default" + ], + "x-ms-enum": { + "name": "EffectiveRouteSource", + "modelAsString": true + } + }, + "state": { + "type": "string", + "description": "The value of effective route.", + "enum": [ + "Active", + "Invalid" + ], + "x-ms-enum": { + "name": "EffectiveRouteState", + "modelAsString": true + } + }, + "addressPrefix": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The address prefixes of the effective routes in CIDR notation." + }, + "nextHopIpAddress": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The IP address of the next hop of the effective route." + }, + "nextHopType": { + "$ref": "./routeTable.json#/definitions/RouteNextHopType", + "description": "The type of Azure hop the packet should be sent to." + } + }, + "description": "Effective Route." + }, + "EffectiveRouteListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EffectiveRoute" + }, + "description": "A list of effective routes." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for list effective route API service call." + }, + "IPConfigurationPropertiesFormat": { + "properties": { + "privateIPAddress": { + "type": "string", + "description": "The private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference to the subnet resource." + }, + "publicIPAddress": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress", + "description": "The reference to the public IP resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the IP configuration resource." + } + }, + "description": "Properties of IP configuration." + }, + "IPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IPConfigurationPropertiesFormat", + "description": "Properties of the IP configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkProfile.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkProfile.json new file mode 100644 index 000000000000..9056b3d64c9b --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkProfile.json @@ -0,0 +1,622 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkProfiles/{networkProfileName}": { + "delete": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_Delete", + "description": "Deletes the specified network profile.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkProfileName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the NetworkProfile." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete network profile": { + "$ref": "./examples/NetworkProfileDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_Get", + "description": "Gets the specified network profile in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkProfileName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP prefix." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkProfile resource.", + "schema": { + "$ref": "#/definitions/NetworkProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get network profile": { + "$ref": "./examples/NetworkProfileGetConfigOnly.json" + }, + "Get network profile with container network interfaces": { + "$ref": "./examples/NetworkProfileGetWithContainerNic.json" + } + } + }, + "put": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_CreateOrUpdate", + "description": "Creates or updates a network profile.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkProfileName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network profile." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkProfile" + }, + "description": "Parameters supplied to the create or update network profile operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting NetworkProfile resource.", + "schema": { + "$ref": "#/definitions/NetworkProfile" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting NetworkProfile resource.", + "schema": { + "$ref": "#/definitions/NetworkProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create network profile defaults": { + "$ref": "./examples/NetworkProfileCreateConfigOnly.json" + } + }, + "x-ms-long-running-operation": false + }, + "patch": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_UpdateTags", + "description": "Updates network profile tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkProfileName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network profile." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network profile tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting NetworkProfile resource.", + "schema": { + "$ref": "#/definitions/NetworkProfile" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update network profile tags": { + "$ref": "./examples/NetworkProfileUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkProfiles": { + "get": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_ListAll", + "description": "Gets all the network profiles in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkProfile resources.", + "schema": { + "$ref": "#/definitions/NetworkProfileListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all network profiles": { + "$ref": "./examples/NetworkProfileListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkProfiles": { + "get": { + "tags": [ + "NetworkProfiles" + ], + "operationId": "NetworkProfiles_List", + "description": "Gets all network profiles in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkProfile resources.", + "schema": { + "$ref": "#/definitions/NetworkProfileListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List resource group network profiles": { + "$ref": "./examples/NetworkProfileList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "NetworkProfilePropertiesFormat": { + "properties": { + "containerNetworkInterfaces": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ContainerNetworkInterface" + }, + "description": "List of child container network interfaces." + }, + "containerNetworkInterfaceConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/ContainerNetworkInterfaceConfiguration" + }, + "description": "List of chid container network interface configurations." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the network profile resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network profile resource." + } + }, + "description": "Network profile properties." + }, + "NetworkProfile": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkProfilePropertiesFormat", + "description": "Network profile properties." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Network profile resource." + }, + "NetworkProfileListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkProfile" + }, + "description": "A list of network profiles that exist in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListNetworkProfiles API service call." + }, + "ContainerNetworkInterfacePropertiesFormat": { + "properties": { + "containerNetworkInterfaceConfiguration": { + "readOnly": true, + "$ref": "#/definitions/ContainerNetworkInterfaceConfiguration", + "description": "Container network interface configuration from which this container network interface is created." + }, + "container": { + "$ref": "#/definitions/Container", + "description": "Reference to the container to which this container network interface is attached." + }, + "ipConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ContainerNetworkInterfaceIpConfiguration" + }, + "description": "Reference to the ip configuration on this container nic." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the container network interface resource." + } + }, + "description": "Properties of container network interface." + }, + "ContainerNetworkInterface": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ContainerNetworkInterfacePropertiesFormat", + "description": "Container network interface properties." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Container network interface child resource." + }, + "ContainerNetworkInterfaceConfigurationPropertiesFormat": { + "properties": { + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/IPConfigurationProfile" + }, + "description": "A list of ip configurations of the container network interface configuration." + }, + "containerNetworkInterfaces": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "A list of container network interfaces created from this container network interface configuration." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the container network interface configuration resource." + } + }, + "description": "Container network interface configuration properties." + }, + "ContainerNetworkInterfaceConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ContainerNetworkInterfaceConfigurationPropertiesFormat", + "description": "Container network interface configuration properties." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Container network interface configuration child resource." + }, + "IPConfigurationProfilePropertiesFormat": { + "properties": { + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference to the subnet resource to create a container network interface ip configuration." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the IP configuration profile resource." + } + }, + "description": "IP configuration profile properties." + }, + "IPConfigurationProfile": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/IPConfigurationProfilePropertiesFormat", + "description": "Properties of the IP configuration profile." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration profile child resource." + }, + "Container": { + "properties": {}, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Reference to container resource in remote resource provider." + }, + "ContainerNetworkInterfaceIpConfigurationPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the container network interface IP configuration resource." + } + }, + "description": "Properties of the container network interface IP configuration." + }, + "ContainerNetworkInterfaceIpConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ContainerNetworkInterfaceIpConfigurationPropertiesFormat", + "description": "Properties of the container network interface IP configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Sub Resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "description": "The ip configuration for a container network interface." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkSecurityGroup.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkSecurityGroup.json new file mode 100644 index 000000000000..f1561ab06c7e --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkSecurityGroup.json @@ -0,0 +1,982 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}": { + "delete": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_Delete", + "description": "Deletes the specified network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete network security group": { + "$ref": "./examples/NetworkSecurityGroupDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_Get", + "description": "Gets the specified network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get network security group": { + "$ref": "./examples/NetworkSecurityGroupGet.json" + } + } + }, + "put": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_CreateOrUpdate", + "description": "Creates or updates a network security group in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + }, + "description": "Parameters supplied to the create or update network security group operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting NetworkSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting NetworkSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create network security group": { + "$ref": "./examples/NetworkSecurityGroupCreate.json" + }, + "Create network security group with rule": { + "$ref": "./examples/NetworkSecurityGroupCreateWithRule.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_UpdateTags", + "description": "Updates a network security group tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network security group tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting NetworkSecurityGroup resource.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update network security group tags": { + "$ref": "./examples/NetworkSecurityGroupUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkSecurityGroups": { + "get": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_ListAll", + "description": "Gets all network security groups in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkSecurityGroup resources.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all network security groups": { + "$ref": "./examples/NetworkSecurityGroupListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups": { + "get": { + "tags": [ + "NetworkSecurityGroups" + ], + "operationId": "NetworkSecurityGroups_List", + "description": "Gets all network security groups in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkSecurityGroup resources.", + "schema": { + "$ref": "#/definitions/NetworkSecurityGroupListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List network security groups in resource group": { + "$ref": "./examples/NetworkSecurityGroupList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/securityRules/{securityRuleName}": { + "delete": { + "tags": [ + "SecurityRules" + ], + "operationId": "SecurityRules_Delete", + "description": "Deletes the specified network security rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "securityRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the security rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete network security rule from network security group": { + "$ref": "./examples/NetworkSecurityGroupRuleDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "SecurityRules" + ], + "operationId": "SecurityRules_Get", + "description": "Get the specified network security rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "securityRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the security rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting SecurityRule resource.", + "schema": { + "$ref": "#/definitions/SecurityRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get network security rule in network security group": { + "$ref": "./examples/NetworkSecurityGroupRuleGet.json" + } + } + }, + "put": { + "tags": [ + "SecurityRules" + ], + "operationId": "SecurityRules_CreateOrUpdate", + "description": "Creates or updates a security rule in the specified network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "securityRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the security rule." + }, + { + "name": "securityRuleParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SecurityRule" + }, + "description": "Parameters supplied to the create or update network security rule operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting SecurityRule resource.", + "schema": { + "$ref": "#/definitions/SecurityRule" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting SecurityRule resource.", + "schema": { + "$ref": "#/definitions/SecurityRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create security rule": { + "$ref": "./examples/NetworkSecurityGroupRuleCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/securityRules": { + "get": { + "tags": [ + "SecurityRules" + ], + "operationId": "SecurityRules_List", + "description": "Gets all security rules in a network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of SecurityRule resources.", + "schema": { + "$ref": "#/definitions/SecurityRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List network security rules in network security group": { + "$ref": "./examples/NetworkSecurityGroupRuleList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/defaultSecurityRules": { + "get": { + "tags": [ + "SecurityRules" + ], + "operationId": "DefaultSecurityRules_List", + "description": "Gets all default security rules in a network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of SecurityRule resources.", + "schema": { + "$ref": "#/definitions/SecurityRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DefaultSecurityRuleList": { + "$ref": "./examples/DefaultSecurityRuleList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/defaultSecurityRules/{defaultSecurityRuleName}": { + "get": { + "tags": [ + "SecurityRules" + ], + "operationId": "DefaultSecurityRules_Get", + "description": "Get the specified default network security rule.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkSecurityGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network security group." + }, + { + "name": "defaultSecurityRuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the default security rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting SecurityRule resource.", + "schema": { + "$ref": "#/definitions/SecurityRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DefaultSecurityRuleGet": { + "$ref": "./examples/DefaultSecurityRuleGet.json" + } + } + } + } + }, + "definitions": { + "SecurityRulePropertiesFormat": { + "properties": { + "description": { + "type": "string", + "description": "A description for this rule. Restricted to 140 chars." + }, + "protocol": { + "type": "string", + "description": "Network protocol this rule applies to.", + "enum": [ + "Tcp", + "Udp", + "Icmp", + "Esp", + "*", + "Ah" + ], + "x-ms-enum": { + "name": "SecurityRuleProtocol", + "modelAsString": true + } + }, + "sourcePortRange": { + "type": "string", + "description": "The source port or range. Integer or range between 0 and 65535. Asterisk '*' can also be used to match all ports." + }, + "destinationPortRange": { + "type": "string", + "description": "The destination port or range. Integer or range between 0 and 65535. Asterisk '*' can also be used to match all ports." + }, + "sourceAddressPrefix": { + "type": "string", + "description": "The CIDR or source IP range. Asterisk '*' can also be used to match all source IPs. Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' and 'Internet' can also be used. If this is an ingress rule, specifies where network traffic originates from." + }, + "sourceAddressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The CIDR or source IP ranges." + }, + "sourceApplicationSecurityGroups": { + "type": "array", + "items": { + "$ref": "./applicationSecurityGroup.json#/definitions/ApplicationSecurityGroup" + }, + "description": "The application security group specified as source." + }, + "destinationAddressPrefix": { + "type": "string", + "description": "The destination address prefix. CIDR or destination IP range. Asterisk '*' can also be used to match all source IPs. Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' and 'Internet' can also be used." + }, + "destinationAddressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The destination address prefixes. CIDR or destination IP ranges." + }, + "destinationApplicationSecurityGroups": { + "type": "array", + "items": { + "$ref": "./applicationSecurityGroup.json#/definitions/ApplicationSecurityGroup" + }, + "description": "The application security group specified as destination." + }, + "sourcePortRanges": { + "type": "array", + "items": { + "type": "string", + "description": "The source port." + }, + "description": "The source port ranges." + }, + "destinationPortRanges": { + "type": "array", + "items": { + "type": "string", + "description": "The destination port." + }, + "description": "The destination port ranges." + }, + "access": { + "$ref": "#/definitions/SecurityRuleAccess", + "description": "The network traffic is allowed or denied." + }, + "priority": { + "type": "integer", + "format": "int32", + "description": "The priority of the rule. The value can be between 100 and 4096. The priority number must be unique for each rule in the collection. The lower the priority number, the higher the priority of the rule." + }, + "direction": { + "$ref": "#/definitions/SecurityRuleDirection", + "description": "The direction of the rule. The direction specifies if rule will be evaluated on incoming or outgoing traffic." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the security rule resource." + } + }, + "required": [ + "protocol", + "access", + "direction" + ], + "description": "Security rule resource." + }, + "SecurityRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SecurityRulePropertiesFormat", + "description": "Properties of the security rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Network security rule." + }, + "SecurityRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SecurityRule" + }, + "description": "The security rules in a network security group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListSecurityRule API service call. Retrieves all security rules that belongs to a network security group." + }, + "NetworkSecurityGroupPropertiesFormat": { + "properties": { + "securityRules": { + "type": "array", + "items": { + "$ref": "#/definitions/SecurityRule" + }, + "description": "A collection of security rules of the network security group." + }, + "defaultSecurityRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SecurityRule" + }, + "description": "The default security rules of network security group." + }, + "networkInterfaces": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + }, + "description": "A collection of references to network interfaces." + }, + "subnets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./virtualNetwork.json#/definitions/Subnet" + }, + "description": "A collection of references to subnets." + }, + "flowLogs": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkWatcher.json#/definitions/FlowLog" + }, + "description": "A collection of references to flow log resources." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the network security group resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network security group resource." + } + }, + "description": "Network Security Group resource." + }, + "NetworkSecurityGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkSecurityGroupPropertiesFormat", + "description": "Properties of the network security group." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "NetworkSecurityGroup resource." + }, + "NetworkSecurityGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkSecurityGroup" + }, + "description": "A list of NetworkSecurityGroup resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListNetworkSecurityGroups API service call." + }, + "SecurityRuleAccess": { + "type": "string", + "description": "Whether network traffic is allowed or denied.", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "SecurityRuleAccess", + "modelAsString": true + } + }, + "SecurityRuleDirection": { + "type": "string", + "description": "The direction of the rule. The direction specifies if rule will be evaluated on incoming or outgoing traffic.", + "enum": [ + "Inbound", + "Outbound" + ], + "x-ms-enum": { + "name": "SecurityRuleDirection", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkVirtualAppliance.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkVirtualAppliance.json new file mode 100644 index 000000000000..670275ae115a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkVirtualAppliance.json @@ -0,0 +1,493 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkVirtualAppliances/{networkVirtualApplianceName}": { + "delete": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_Delete", + "description": "Deletes the specified Network Virtual Appliance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of Network Virtual Appliance." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete NetworkVirtualAppliance": { + "$ref": "./examples/NetworkVirtualApplianceDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_Get", + "description": "Gets the specified Network Virtual Appliance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of Network Virtual Appliance." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a Network Virtual Appliance resource.", + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get NetworkVirtualAppliance": { + "$ref": "./examples/NetworkVirtualApplianceGet.json" + } + } + }, + "patch": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_UpdateTags", + "description": "Updates a Network Virtual Appliance.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of Network Virtual Appliance." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of Network Virtual Appliance being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to Update Network Virtual Appliance Tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of Network Virtual Appliance updated.", + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update NetworkVirtualAppliance": { + "$ref": "./examples/NetworkVirtualApplianceUpdateTags.json" + } + } + }, + "put": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_CreateOrUpdate", + "description": "Creates or updates the specified Network Virtual Appliance.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkVirtualApplianceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of Network Virtual Appliance." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + }, + "description": "Parameters supplied to the create or update Network Virtual Appliance." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Network Virtual Appliance resource.", + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + } + }, + "201": { + "description": "Request received successfully. The operation returns the resulting Network Virtual Appliance resource.", + "schema": { + "$ref": "#/definitions/NetworkVirtualAppliance" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create NetworkVirtualAppliance": { + "$ref": "./examples/NetworkVirtualAppliancePut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkVirtualAppliances": { + "get": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_ListByResourceGroup", + "description": "Lists all Network Virtual Appliances in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Network Virtual Appliance resources.", + "schema": { + "$ref": "#/definitions/NetworkVirtualApplianceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Network Virtual Appliance for a given resource group": { + "$ref": "./examples/NetworkVirtualApplianceListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkVirtualAppliances": { + "get": { + "tags": [ + "NetworkVirtualAppliances" + ], + "operationId": "NetworkVirtualAppliances_List", + "description": "Gets all Network Virtual Appliances in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Network Virtual Appliance resources.", + "schema": { + "$ref": "#/definitions/NetworkVirtualApplianceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Network Virtual Appliances for a given subscription": { + "$ref": "./examples/NetworkVirtualApplianceListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "NetworkVirtualAppliance": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkVirtualAppliancePropertiesFormat", + "description": "Properties of the Network Virtual Appliance." + }, + "identity": { + "$ref": "./network.json#/definitions/ManagedServiceIdentity", + "description": "The service principal that has read access to cloud-init and config blob." + }, + "sku": { + "readOnly": false, + "description": "Network Virtual Appliance SKU.", + "$ref": "#/definitions/VirtualApplianceSkuProperties" + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "NetworkVirtualAppliance Resource." + }, + "NetworkVirtualAppliancePropertiesFormat": { + "properties": { + "bootStrapConfigurationBlob": { + "type": "array", + "readOnly": false, + "description": "BootStrapConfigurationBlob storage URLs.", + "items": { + "type": "string" + } + }, + "virtualHub": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The Virtual Hub where Network Virtual Appliance is being deployed." + }, + "cloudInitConfigurationBlob": { + "type": "array", + "readOnly": false, + "description": "CloudInitConfigurationBlob storage URLs.", + "items": { + "type": "string" + } + }, + "virtualApplianceAsn": { + "type": "integer", + "readOnly": false, + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "VirtualAppliance ASN." + }, + "virtualApplianceNics": { + "type": "array", + "readOnly": true, + "description": "List of Virtual Appliance Network Interfaces.", + "items": { + "$ref": "#/definitions/VirtualApplianceNicProperties" + } + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState" + } + }, + "description": "Network Virtual Appliance definition." + }, + "VirtualApplianceSkuProperties": { + "properties": { + "vendor": { + "type": "string", + "readOnly": false, + "description": "Virtual Appliance Vendor." + }, + "bundledScaleUnit": { + "type": "string", + "readOnly": false, + "description": "Virtual Appliance Scale Unit." + }, + "marketPlaceVersion": { + "type": "string", + "readOnly": false, + "description": "Virtual Appliance Version." + } + }, + "description": "Network Virtual Appliance Sku Properties." + }, + "VirtualApplianceNicProperties": { + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "NIC name." + }, + "publicIpAddress": { + "type": "string", + "readOnly": true, + "description": "Public IP address." + }, + "privateIpAddress": { + "type": "string", + "readOnly": true, + "description": "Private IP address." + } + }, + "description": "Network Virtual Appliance NIC properties." + }, + "NetworkVirtualApplianceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkVirtualAppliance" + }, + "description": "List of Network Virtual Appliances." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListNetworkVirtualAppliances API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkWatcher.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkWatcher.json new file mode 100644 index 000000000000..96be9bca3812 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/networkWatcher.json @@ -0,0 +1,4446 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}": { + "put": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_CreateOrUpdate", + "description": "Creates or updates a network watcher in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkWatcher" + }, + "description": "Parameters that define the network watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create network watcher": { + "$ref": "./examples/NetworkWatcherCreate.json" + } + } + }, + "get": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_Get", + "description": "Gets the specified network watcher by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get network watcher": { + "$ref": "./examples/NetworkWatcherGet.json" + } + } + }, + "delete": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_Delete", + "description": "Deletes the specified network watcher resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete network watcher": { + "$ref": "./examples/NetworkWatcherDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_UpdateTags", + "description": "Updates a network watcher tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update network watcher tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/NetworkWatcher" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update network watcher tags": { + "$ref": "./examples/NetworkWatcherUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers": { + "get": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_List", + "description": "Gets all network watchers by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of network watcher resources.", + "schema": { + "$ref": "#/definitions/NetworkWatcherListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List network watchers": { + "$ref": "./examples/NetworkWatcherList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkWatchers": { + "get": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_ListAll", + "description": "Gets all network watchers by subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of network watcher resources.", + "schema": { + "$ref": "#/definitions/NetworkWatcherListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List all network watchers": { + "$ref": "./examples/NetworkWatcherListAll.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/topology": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetTopology", + "description": "Gets the current network topology by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TopologyParameters" + }, + "description": "Parameters that define the representation of topology." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the topology of resource group.", + "schema": { + "$ref": "#/definitions/Topology" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Topology": { + "$ref": "./examples/NetworkWatcherTopologyGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/ipFlowVerify": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_VerifyIPFlow", + "description": "Verify IP flow from the specified VM to a location given the currently configured NSG rules.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VerificationIPFlowParameters" + }, + "description": "Parameters that define the IP flow to be verified." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the result of IP flow verification.", + "schema": { + "$ref": "#/definitions/VerificationIPFlowResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/VerificationIPFlowResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Ip flow verify": { + "$ref": "./examples/NetworkWatcherIpFlowVerify.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/nextHop": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetNextHop", + "description": "Gets the next hop from the specified VM.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NextHopParameters" + }, + "description": "Parameters that define the source and destination endpoint." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the next hop from the VM.", + "schema": { + "$ref": "#/definitions/NextHopResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NextHopResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get next hop": { + "$ref": "./examples/NetworkWatcherNextHopGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/securityGroupView": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetVMSecurityRules", + "description": "Gets the configured and effective security group rules on the specified VM.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SecurityGroupViewParameters" + }, + "description": "Parameters that define the VM to check security groups for." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns security group rules on the VM.", + "schema": { + "$ref": "#/definitions/SecurityGroupViewResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/SecurityGroupViewResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get security group view": { + "$ref": "./examples/NetworkWatcherSecurityGroupViewGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}": { + "put": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Create", + "description": "Create and start a packet capture on the specified VM.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PacketCapture" + }, + "description": "Parameters that define the create packet capture operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request successful. The operation returns the resulting packet capture session.", + "schema": { + "$ref": "#/definitions/PacketCaptureResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create packet capture": { + "$ref": "./examples/NetworkWatcherPacketCaptureCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Get", + "description": "Gets a packet capture session by name.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a packet capture session.", + "schema": { + "$ref": "#/definitions/PacketCaptureResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get packet capture": { + "$ref": "./examples/NetworkWatcherPacketCaptureGet.json" + } + } + }, + "delete": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Delete", + "description": "Deletes the specified packet capture session.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete packet capture": { + "$ref": "./examples/NetworkWatcherPacketCaptureDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}/stop": { + "post": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_Stop", + "description": "Stops a specified packet capture session.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation stops the packet capture session." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Stop packet capture": { + "$ref": "./examples/NetworkWatcherPacketCaptureStop.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}/queryStatus": { + "post": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_GetStatus", + "description": "Query the status of a running packet capture session.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "packetCaptureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name given to the packet capture session." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful query of packet capture status.", + "schema": { + "$ref": "#/definitions/PacketCaptureQueryStatusResult" + } + }, + "202": { + "description": "Accepted query status of packet capture.", + "schema": { + "$ref": "#/definitions/PacketCaptureQueryStatusResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Query packet capture status": { + "$ref": "./examples/NetworkWatcherPacketCaptureQueryStatus.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures": { + "get": { + "tags": [ + "PacketCaptures" + ], + "operationId": "PacketCaptures_List", + "description": "Lists all packet capture sessions within the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful packet capture enumeration request.", + "schema": { + "$ref": "#/definitions/PacketCaptureListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List packet captures": { + "$ref": "./examples/NetworkWatcherPacketCapturesList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/troubleshoot": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetTroubleshooting", + "description": "Initiate troubleshooting on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TroubleshootingParameters" + }, + "description": "Parameters that define the resource to troubleshoot." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful troubleshooting request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "202": { + "description": "Accepted get troubleshooting request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get troubleshooting": { + "$ref": "./examples/NetworkWatcherTroubleshootGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/queryTroubleshootResult": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetTroubleshootingResult", + "description": "Get the last completed troubleshooting result on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/QueryTroubleshootingParameters" + }, + "description": "Parameters that define the resource to query the troubleshooting result." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful get troubleshooting result request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "202": { + "description": "Accepted get troubleshooting result request.", + "schema": { + "$ref": "#/definitions/TroubleshootingResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get troubleshoot result": { + "$ref": "./examples/NetworkWatcherTroubleshootResultQuery.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/configureFlowLog": { + "post": { + "tags": [ + "NetworkWatchers", + "TrafficAnalytics" + ], + "operationId": "NetworkWatchers_SetFlowLogConfiguration", + "description": "Configures flow log and traffic analytics (optional) on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FlowLogInformation" + }, + "description": "Parameters that define the configuration of flow log." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for setting flow log and traffic analytics (optional) configuration.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Configure flow log": { + "$ref": "./examples/NetworkWatcherFlowLogConfigure.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/queryFlowLogStatus": { + "post": { + "tags": [ + "NetworkWatchers", + "TrafficAnalytics" + ], + "operationId": "NetworkWatchers_GetFlowLogStatus", + "description": "Queries status of flow log and traffic analytics (optional) on a specified resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FlowLogStatusParameters" + }, + "description": "Parameters that define a resource to query flow log and traffic analytics (optional) status." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for query flow log and traffic analytics (optional) status.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/FlowLogInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get flow log status": { + "$ref": "./examples/NetworkWatcherFlowLogStatusQuery.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectivityCheck": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_CheckConnectivity", + "description": "Verifies the possibility of establishing a direct TCP connection from a virtual machine to a given endpoint including another VM or an arbitrary remote server.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectivityParameters" + }, + "description": "Parameters that determine how the connectivity check will be performed." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for checking connectivity.", + "schema": { + "$ref": "#/definitions/ConnectivityInformation" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ConnectivityInformation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Check connectivity": { + "$ref": "./examples/NetworkWatcherConnectivityCheck.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/azureReachabilityReport": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetAzureReachabilityReport", + "description": "NOTE: This feature is currently in preview and still being tested for stability. Gets the relative latency score for internet service providers from a specified location to Azure regions.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AzureReachabilityReportParameters" + }, + "description": "Parameters that determine Azure reachability report configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for Azure reachability report.", + "schema": { + "$ref": "#/definitions/AzureReachabilityReport" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/AzureReachabilityReport" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Azure Reachability Report": { + "$ref": "./examples/NetworkWatcherAzureReachabilityReportGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/availableProvidersList": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_ListAvailableProviders", + "description": "NOTE: This feature is currently in preview and still being tested for stability. Lists all available internet service providers for a specified Azure region.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AvailableProvidersListParameters" + }, + "description": "Parameters that scope the list of available providers." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful request for list of available providers.", + "schema": { + "$ref": "#/definitions/AvailableProvidersList" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/AvailableProvidersList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Available Providers List": { + "$ref": "./examples/NetworkWatcherAvailableProvidersListGet.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/networkConfigurationDiagnostic": { + "post": { + "tags": [ + "NetworkWatchers" + ], + "operationId": "NetworkWatchers_GetNetworkConfigurationDiagnostic", + "description": "Gets Network Configuration Diagnostic data to help customers understand and debug network behavior. It provides detailed information on what security rules were applied to a specified traffic flow and the result of evaluating these rules. Customers must provide details of a flow like source, destination, protocol, etc. The API returns whether traffic was allowed or denied, the rules evaluated for the specified flow and the evaluation results.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticParameters" + }, + "description": "Parameters to get network configuration diagnostic." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the result of network configuration diagnostic.", + "schema": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticResponse" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Network configuration diagnostic": { + "$ref": "./examples/NetworkWatcherNetworkConfigurationDiagnostic.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}": { + "put": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_CreateOrUpdate", + "description": "Create or update a connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionMonitor" + }, + "description": "Parameters that define the operation to create a connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting network watcher resource.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create connection monitor V1": { + "$ref": "./examples/NetworkWatcherConnectionMonitorCreate.json" + }, + "Create connection monitor V2": { + "$ref": "./examples/NetworkWatcherConnectionMonitorV2Create.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Get", + "description": "Gets a connection monitor by name.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a connection monitor.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorGet.json" + } + } + }, + "delete": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Delete", + "description": "Deletes the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_UpdateTags", + "description": "Update tags of the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update connection monitor tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns updated connection monitor.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update connection monitor tags": { + "$ref": "./examples/NetworkWatcherConnectionMonitorUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/stop": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Stop", + "description": "Stops the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation stops the connection monitor." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Stop connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorStop.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/start": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Start", + "description": "Starts the specified connection monitor.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation starts the connection monitor." + }, + "202": { + "description": "Accepted. The operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Start connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorStart.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/query": { + "post": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_Query", + "description": "Query a snapshot of the most recent connection states.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "name": "connectionMonitorName", + "in": "path", + "required": true, + "type": "string", + "description": "The name given to the connection monitor." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful query of connection states.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorQueryResult" + } + }, + "202": { + "description": "Accepted query of connection states.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorQueryResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Query connection monitor": { + "$ref": "./examples/NetworkWatcherConnectionMonitorQuery.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors": { + "get": { + "tags": [ + "ConnectionMonitors" + ], + "operationId": "ConnectionMonitors_List", + "description": "Lists all connection monitors for the specified Network Watcher.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful connection monitor enumeration request.", + "schema": { + "$ref": "#/definitions/ConnectionMonitorListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "List connection monitors": { + "$ref": "./examples/NetworkWatcherConnectionMonitorList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/flowLogs/{flowLogName}": { + "put": { + "tags": [ + "FlowLogs" + ], + "operationId": "FlowLogs_CreateOrUpdate", + "description": "Create or update a flow log for the specified network security group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "flowLogName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the flow log." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/FlowLog" + }, + "description": "Parameters that define the create or update flow log resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request successful. The operation returns the resulting flow log resource.", + "schema": { + "$ref": "#/definitions/FlowLog" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting flow log resource.", + "schema": { + "$ref": "#/definitions/FlowLog" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update flow log": { + "$ref": "./examples/NetworkWatcherFlowLogCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "FlowLogs" + ], + "operationId": "FlowLogs_Get", + "description": "Gets a flow log resource by name.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "flowLogName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the flow log resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a flow log resource.", + "schema": { + "$ref": "#/definitions/FlowLog" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get flow log": { + "$ref": "./examples/NetworkWatcherFlowLogGet.json" + } + } + }, + "delete": { + "tags": [ + "FlowLogs" + ], + "operationId": "FlowLogs_Delete", + "description": "Deletes the specified flow log resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network watcher." + }, + { + "name": "flowLogName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the flow log resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete flow log": { + "$ref": "./examples/NetworkWatcherFlowLogDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/flowLogs": { + "get": { + "tags": [ + "FlowLogs" + ], + "operationId": "FlowLogs_List", + "description": "Lists all flow log resources for the specified Network Watcher.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group containing Network Watcher." + }, + { + "name": "networkWatcherName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Network Watcher resource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successful flow log enumeration request.", + "schema": { + "$ref": "#/definitions/FlowLogListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./networkWatcher.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List connection monitors": { + "$ref": "./examples/NetworkWatcherFlowLogList.json" + } + } + } + } + }, + "definitions": { + "ErrorResponse": { + "description": "The error object.", + "properties": { + "error": { + "title": "Error", + "$ref": "./network.json#/definitions/ErrorDetails", + "description": "The error details object." + } + } + }, + "NetworkWatcher": { + "properties": { + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetworkWatcherPropertiesFormat", + "description": "Properties of the network watcher." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Network watcher in a resource group." + }, + "NetworkWatcherPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the network watcher resource." + } + }, + "description": "The network watcher properties." + }, + "NetworkWatcherListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkWatcher" + }, + "description": "List of network watcher resources." + } + }, + "description": "Response for ListNetworkWatchers API service call." + }, + "TopologyParameters": { + "properties": { + "targetResourceGroupName": { + "type": "string", + "description": "The name of the target resource group to perform topology on." + }, + "targetVirtualNetwork": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the Virtual Network resource." + }, + "targetSubnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the Subnet resource." + } + }, + "description": "Parameters that define the representation of topology." + }, + "Topology": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "GUID representing the operation id." + }, + "createdDateTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The datetime when the topology was initially created for the resource group." + }, + "lastModified": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The datetime when the topology was last modified." + }, + "resources": { + "type": "array", + "items": { + "$ref": "#/definitions/TopologyResource" + }, + "description": "A list of topology resources." + } + }, + "description": "Topology of the specified resource group." + }, + "TopologyResource": { + "properties": { + "name": { + "type": "string", + "description": "Name of the resource." + }, + "id": { + "type": "string", + "description": "ID of the resource." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "associations": { + "type": "array", + "description": "Holds the associations the resource has with other resources in the resource group.", + "items": { + "$ref": "#/definitions/TopologyAssociation" + } + } + }, + "description": "The network resource topology information for the given resource group." + }, + "TopologyAssociation": { + "properties": { + "name": { + "type": "string", + "description": "The name of the resource that is associated with the parent resource." + }, + "resourceId": { + "type": "string", + "description": "The ID of the resource that is associated with the parent resource." + }, + "associationType": { + "type": "string", + "enum": [ + "Associated", + "Contains" + ], + "x-ms-enum": { + "name": "AssociationType", + "modelAsString": true + }, + "description": "The association type of the child resource to the parent resource." + } + }, + "description": "Resources that have an association with the parent resource." + }, + "VerificationIPFlowParameters": { + "description": "Parameters that define the IP flow to be verified.", + "required": [ + "targetResourceId", + "direction", + "protocol", + "localPort", + "remotePort", + "localIPAddress", + "remoteIPAddress" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "The ID of the target resource to perform next-hop on." + }, + "direction": { + "$ref": "#/definitions/Direction", + "description": "The direction of the packet represented as a 5-tuple." + }, + "protocol": { + "type": "string", + "enum": [ + "TCP", + "UDP" + ], + "x-ms-enum": { + "name": "IpFlowProtocol", + "modelAsString": true + }, + "description": "Protocol to be verified on." + }, + "localPort": { + "type": "string", + "description": "The local port. Acceptable values are a single integer in the range (0-65535). Support for * for the source port, which depends on the direction." + }, + "remotePort": { + "type": "string", + "description": "The remote port. Acceptable values are a single integer in the range (0-65535). Support for * for the source port, which depends on the direction." + }, + "localIPAddress": { + "type": "string", + "description": "The local IP address. Acceptable values are valid IPv4 addresses." + }, + "remoteIPAddress": { + "type": "string", + "description": "The remote IP address. Acceptable values are valid IPv4 addresses." + }, + "targetNicResourceId": { + "type": "string", + "description": "The NIC ID. (If VM has multiple NICs and IP forwarding is enabled on any of them, then this parameter must be specified. Otherwise optional)." + } + } + }, + "VerificationIPFlowResult": { + "description": "Results of IP flow verification on the target resource.", + "properties": { + "access": { + "$ref": "./network.json#/definitions/Access", + "description": "Indicates whether the traffic is allowed or denied." + }, + "ruleName": { + "type": "string", + "description": "Name of the rule. If input is not matched against any security rule, it is not displayed." + } + } + }, + "NextHopParameters": { + "description": "Parameters that define the source and destination endpoint.", + "required": [ + "targetResourceId", + "sourceIPAddress", + "destinationIPAddress" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "The resource identifier of the target resource against which the action is to be performed." + }, + "sourceIPAddress": { + "type": "string", + "description": "The source IP address." + }, + "destinationIPAddress": { + "type": "string", + "description": "The destination IP address." + }, + "targetNicResourceId": { + "type": "string", + "description": "The NIC ID. (If VM has multiple NICs and IP forwarding is enabled on any of the nics, then this parameter must be specified. Otherwise optional)." + } + } + }, + "NextHopResult": { + "description": "The information about next hop from the specified VM.", + "properties": { + "nextHopType": { + "type": "string", + "enum": [ + "Internet", + "VirtualAppliance", + "VirtualNetworkGateway", + "VnetLocal", + "HyperNetGateway", + "None" + ], + "x-ms-enum": { + "name": "NextHopType", + "modelAsString": true + }, + "description": "Next hop type." + }, + "nextHopIpAddress": { + "type": "string", + "description": "Next hop IP Address." + }, + "routeTableId": { + "type": "string", + "description": "The resource identifier for the route table associated with the route being returned. If the route being returned does not correspond to any user created routes then this field will be the string 'System Route'." + } + } + }, + "SecurityGroupViewParameters": { + "description": "Parameters that define the VM to check security groups for.", + "required": [ + "targetResourceId" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "ID of the target VM." + } + } + }, + "SecurityGroupViewResult": { + "description": "The information about security rules applied to the specified VM.", + "properties": { + "networkInterfaces": { + "type": "array", + "description": "List of network interfaces on the specified VM.", + "items": { + "$ref": "#/definitions/SecurityGroupNetworkInterface" + } + } + } + }, + "SecurityGroupNetworkInterface": { + "description": "Network interface and all its associated security rules.", + "properties": { + "id": { + "type": "string", + "description": "ID of the network interface." + }, + "securityRuleAssociations": { + "$ref": "#/definitions/SecurityRuleAssociations", + "description": "All security rules associated with the network interface." + } + } + }, + "SecurityRuleAssociations": { + "description": "All security rules associated with the network interface.", + "properties": { + "networkInterfaceAssociation": { + "$ref": "#/definitions/NetworkInterfaceAssociation", + "description": "Network interface and it's custom security rules." + }, + "subnetAssociation": { + "$ref": "#/definitions/SubnetAssociation", + "description": "Subnet and it's custom security rules." + }, + "defaultSecurityRules": { + "type": "array", + "items": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRule" + }, + "description": "Collection of default security rules of the network security group." + }, + "effectiveSecurityRules": { + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/EffectiveNetworkSecurityRule" + }, + "description": "Collection of effective security rules." + } + } + }, + "NetworkInterfaceAssociation": { + "description": "Network interface and its custom security rules.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Network interface ID." + }, + "securityRules": { + "type": "array", + "description": "Collection of custom security rules.", + "items": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRule" + } + } + } + }, + "SubnetAssociation": { + "description": "Subnet and it's custom security rules.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Subnet ID." + }, + "securityRules": { + "type": "array", + "description": "Collection of custom security rules.", + "items": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRule" + } + } + } + }, + "PacketCapture": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PacketCaptureParameters", + "description": "Properties of the packet capture." + } + }, + "required": [ + "properties" + ], + "description": "Parameters that define the create packet capture operation." + }, + "PacketCaptureParameters": { + "properties": { + "target": { + "type": "string", + "description": "The ID of the targeted resource, only VM is currently supported." + }, + "bytesToCapturePerPacket": { + "type": "integer", + "default": 0, + "description": "Number of bytes captured per packet, the remaining bytes are truncated." + }, + "totalBytesPerSession": { + "type": "integer", + "default": 1073741824, + "description": "Maximum size of the capture output." + }, + "timeLimitInSeconds": { + "type": "integer", + "default": 18000, + "description": "Maximum duration of the capture session in seconds." + }, + "storageLocation": { + "$ref": "#/definitions/PacketCaptureStorageLocation", + "description": "The storage location for a packet capture session." + }, + "filters": { + "type": "array", + "items": { + "$ref": "#/definitions/PacketCaptureFilter" + }, + "description": "A list of packet capture filters." + } + }, + "required": [ + "target", + "storageLocation" + ], + "description": "Parameters that define the create packet capture operation." + }, + "PacketCaptureStorageLocation": { + "properties": { + "storageId": { + "type": "string", + "description": "The ID of the storage account to save the packet capture session. Required if no local file path is provided." + }, + "storagePath": { + "type": "string", + "description": "The URI of the storage path to save the packet capture. Must be a well-formed URI describing the location to save the packet capture." + }, + "filePath": { + "type": "string", + "description": "A valid local path on the targeting VM. Must include the name of the capture file (*.cap). For linux virtual machine it must start with /var/captures. Required if no storage ID is provided, otherwise optional." + } + }, + "description": "The storage location for a packet capture session." + }, + "PacketCaptureFilter": { + "properties": { + "protocol": { + "type": "string", + "enum": [ + "TCP", + "UDP", + "Any" + ], + "x-ms-enum": { + "name": "PcProtocol", + "modelAsString": true + }, + "default": "Any", + "description": "Protocol to be filtered on." + }, + "localIPAddress": { + "type": "string", + "description": "Local IP Address to be filtered on. Notation: \"127.0.0.1\" for single address entry. \"127.0.0.1-127.0.0.255\" for range. \"127.0.0.1;127.0.0.5\"? for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + }, + "remoteIPAddress": { + "type": "string", + "description": "Local IP Address to be filtered on. Notation: \"127.0.0.1\" for single address entry. \"127.0.0.1-127.0.0.255\" for range. \"127.0.0.1;127.0.0.5;\" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + }, + "localPort": { + "type": "string", + "description": "Local port to be filtered on. Notation: \"80\" for single port entry.\"80-85\" for range. \"80;443;\" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + }, + "remotePort": { + "type": "string", + "description": "Remote port to be filtered on. Notation: \"80\" for single port entry.\"80-85\" for range. \"80;443;\" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null." + } + }, + "description": "Filter that is applied to packet capture request. Multiple filters can be applied." + }, + "PacketCaptureListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PacketCaptureResult" + }, + "description": "Information about packet capture sessions." + } + }, + "description": "List of packet capture sessions." + }, + "PacketCaptureResult": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the packet capture session." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "ID of the packet capture operation." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PacketCaptureResultProperties", + "description": "Properties of the packet capture result." + } + }, + "description": "Information about packet capture session." + }, + "PacketCaptureResultProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the packet capture session." + } + }, + "allOf": [ + { + "$ref": "#/definitions/PacketCaptureParameters" + } + ], + "description": "The properties of a packet capture session." + }, + "PacketCaptureQueryStatusResult": { + "properties": { + "name": { + "type": "string", + "description": "The name of the packet capture resource." + }, + "id": { + "type": "string", + "description": "The ID of the packet capture resource." + }, + "captureStartTime": { + "type": "string", + "format": "date-time", + "description": "The start time of the packet capture session." + }, + "packetCaptureStatus": { + "type": "string", + "enum": [ + "NotStarted", + "Running", + "Stopped", + "Error", + "Unknown" + ], + "x-ms-enum": { + "name": "PcStatus", + "modelAsString": true + }, + "description": "The status of the packet capture session." + }, + "stopReason": { + "type": "string", + "description": "The reason the current packet capture session was stopped." + }, + "packetCaptureError": { + "type": "array", + "description": "List of errors of packet capture session.", + "items": { + "type": "string", + "enum": [ + "InternalError", + "AgentStopped", + "CaptureFailed", + "LocalFileFailed", + "StorageFailed" + ], + "x-ms-enum": { + "name": "PcError", + "modelAsString": true + } + } + } + }, + "description": "Status of packet capture session." + }, + "TroubleshootingParameters": { + "description": "Parameters that define the resource to troubleshoot.", + "required": [ + "targetResourceId", + "properties" + ], + "properties": { + "targetResourceId": { + "description": "The target resource to troubleshoot.", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/TroubleshootingProperties", + "description": "Properties of the troubleshooting resource." + } + } + }, + "QueryTroubleshootingParameters": { + "description": "Parameters that define the resource to query the troubleshooting result.", + "required": [ + "targetResourceId" + ], + "properties": { + "targetResourceId": { + "description": "The target resource ID to query the troubleshooting result.", + "type": "string" + } + } + }, + "TroubleshootingProperties": { + "description": "Storage location provided for troubleshoot.", + "required": [ + "storageId", + "storagePath" + ], + "properties": { + "storageId": { + "description": "The ID for the storage account to save the troubleshoot result.", + "type": "string" + }, + "storagePath": { + "description": "The path to the blob to save the troubleshoot result in.", + "type": "string" + } + } + }, + "TroubleshootingResult": { + "description": "Troubleshooting information gained from specified resource.", + "properties": { + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time of the troubleshooting." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time of the troubleshooting." + }, + "code": { + "type": "string", + "description": "The result code of the troubleshooting." + }, + "results": { + "type": "array", + "description": "Information from troubleshooting.", + "items": { + "$ref": "#/definitions/TroubleshootingDetails" + } + } + } + }, + "TroubleshootingDetails": { + "description": "Information gained from troubleshooting of specified resource.", + "properties": { + "id": { + "type": "string", + "description": "The id of the get troubleshoot operation." + }, + "reasonType": { + "type": "string", + "description": "Reason type of failure." + }, + "summary": { + "type": "string", + "description": "A summary of troubleshooting." + }, + "detail": { + "type": "string", + "description": "Details on troubleshooting results." + }, + "recommendedActions": { + "type": "array", + "description": "List of recommended actions.", + "items": { + "$ref": "#/definitions/TroubleshootingRecommendedActions" + } + } + } + }, + "TroubleshootingRecommendedActions": { + "description": "Recommended actions based on discovered issues.", + "properties": { + "actionId": { + "description": "ID of the recommended action.", + "type": "string" + }, + "actionText": { + "description": "Description of recommended actions.", + "type": "string" + }, + "actionUri": { + "description": "The uri linking to a documentation for the recommended troubleshooting actions.", + "type": "string" + }, + "actionUriText": { + "description": "The information from the URI for the recommended troubleshooting actions.", + "type": "string" + } + } + }, + "FlowLogListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/FlowLog" + }, + "description": "Information about flow log resource." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "List of flow logs." + }, + "FlowLog": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FlowLogPropertiesFormat", + "description": "Properties of the flow log." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "A flow log resource." + }, + "FlowLogPropertiesFormat": { + "description": "Parameters that define the configuration of flow log.", + "required": [ + "targetResourceId", + "storageId" + ], + "properties": { + "targetResourceId": { + "description": "ID of network security group to which flow log will be applied.", + "type": "string" + }, + "targetResourceGuid": { + "readOnly": true, + "description": "Guid of network security group to which flow log will be applied.", + "type": "string" + }, + "storageId": { + "description": "ID of the storage account which is used to store the flow log.", + "type": "string" + }, + "enabled": { + "description": "Flag to enable/disable flow logging.", + "type": "boolean" + }, + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicyParameters", + "description": "Parameters that define the retention policy for flow log." + }, + "format": { + "$ref": "#/definitions/FlowLogFormatParameters", + "description": "Parameters that define the flow log format." + }, + "flowAnalyticsConfiguration": { + "$ref": "#/definitions/TrafficAnalyticsProperties", + "description": "Parameters that define the configuration of traffic analytics." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the flow log." + } + } + }, + "FlowLogProperties": { + "description": "Parameters that define the configuration of flow log.", + "required": [ + "storageId", + "enabled" + ], + "properties": { + "storageId": { + "description": "ID of the storage account which is used to store the flow log.", + "type": "string" + }, + "enabled": { + "description": "Flag to enable/disable flow logging.", + "type": "boolean" + }, + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicyParameters", + "description": "Parameters that define the retention policy for flow log." + }, + "format": { + "$ref": "#/definitions/FlowLogFormatParameters", + "description": "Parameters that define the flow log format." + } + } + }, + "FlowLogStatusParameters": { + "description": "Parameters that define a resource to query flow log and traffic analytics (optional) status.", + "required": [ + "targetResourceId" + ], + "properties": { + "targetResourceId": { + "description": "The target resource where getting the flow log and traffic analytics (optional) status.", + "type": "string" + } + } + }, + "RetentionPolicyParameters": { + "description": "Parameters that define the retention policy for flow log.", + "properties": { + "days": { + "description": "Number of days to retain flow log records.", + "type": "integer", + "default": 0 + }, + "enabled": { + "description": "Flag to enable/disable retention.", + "type": "boolean", + "default": false + } + } + }, + "FlowLogFormatParameters": { + "description": "Parameters that define the flow log format.", + "properties": { + "type": { + "type": "string", + "description": "The file type of flow log.", + "enum": [ + "JSON" + ], + "x-ms-enum": { + "name": "FlowLogFormatType", + "modelAsString": true + } + }, + "version": { + "description": "The version (revision) of the flow log.", + "type": "integer", + "default": 0 + } + } + }, + "FlowLogInformation": { + "description": "Information on the configuration of flow log and traffic analytics (optional) .", + "required": [ + "targetResourceId", + "properties" + ], + "properties": { + "targetResourceId": { + "description": "The ID of the resource to configure for flow log and traffic analytics (optional) .", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/FlowLogProperties", + "description": "Properties of the flow log." + }, + "flowAnalyticsConfiguration": { + "$ref": "#/definitions/TrafficAnalyticsProperties", + "description": "Parameters that define the configuration of traffic analytics." + } + } + }, + "TrafficAnalyticsProperties": { + "description": "Parameters that define the configuration of traffic analytics.", + "properties": { + "networkWatcherFlowAnalyticsConfiguration": { + "$ref": "#/definitions/TrafficAnalyticsConfigurationProperties", + "description": "Parameters that define the configuration of traffic analytics." + } + } + }, + "TrafficAnalyticsConfigurationProperties": { + "description": "Parameters that define the configuration of traffic analytics.", + "properties": { + "enabled": { + "description": "Flag to enable/disable traffic analytics.", + "type": "boolean" + }, + "workspaceId": { + "description": "The resource guid of the attached workspace.", + "type": "string" + }, + "workspaceRegion": { + "description": "The location of the attached workspace.", + "type": "string" + }, + "workspaceResourceId": { + "description": "Resource Id of the attached workspace.", + "type": "string" + }, + "trafficAnalyticsInterval": { + "description": "The interval in minutes which would decide how frequently TA service should do flow analytics.", + "type": "integer" + } + } + }, + "ConnectivityParameters": { + "description": "Parameters that determine how the connectivity check will be performed.", + "required": [ + "source", + "destination" + ], + "properties": { + "source": { + "$ref": "#/definitions/ConnectivitySource", + "description": "The source of the connection." + }, + "destination": { + "$ref": "#/definitions/ConnectivityDestination", + "description": "The destination of connection." + }, + "protocol": { + "type": "string", + "description": "Network protocol.", + "enum": [ + "Tcp", + "Http", + "Https", + "Icmp" + ], + "x-ms-enum": { + "name": "Protocol", + "modelAsString": true + } + }, + "protocolConfiguration": { + "$ref": "#/definitions/ProtocolConfiguration", + "description": "Configuration of the protocol." + }, + "preferredIPVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "Preferred IP version of the connection." + } + } + }, + "ConnectivitySource": { + "description": "Parameters that define the source of the connection.", + "required": [ + "resourceId" + ], + "properties": { + "resourceId": { + "description": "The ID of the resource from which a connectivity check will be initiated.", + "type": "string" + }, + "port": { + "description": "The source port from which a connectivity check will be performed.", + "type": "integer" + } + } + }, + "ConnectivityDestination": { + "description": "Parameters that define destination of connection.", + "properties": { + "resourceId": { + "description": "The ID of the resource to which a connection attempt will be made.", + "type": "string" + }, + "address": { + "description": "The IP address or URI the resource to which a connection attempt will be made.", + "type": "string" + }, + "port": { + "description": "Port on which check connectivity will be performed.", + "type": "integer" + } + } + }, + "ConnectivityInformation": { + "description": "Information on the connectivity status.", + "properties": { + "hops": { + "readOnly": true, + "type": "array", + "description": "List of hops between the source and the destination.", + "items": { + "$ref": "#/definitions/ConnectivityHop" + } + }, + "connectionStatus": { + "readOnly": true, + "type": "string", + "enum": [ + "Unknown", + "Connected", + "Disconnected", + "Degraded" + ], + "x-ms-enum": { + "name": "ConnectionStatus", + "modelAsString": true + }, + "description": "The connection status." + }, + "avgLatencyInMs": { + "description": "Average latency in milliseconds.", + "readOnly": true, + "type": "integer" + }, + "minLatencyInMs": { + "description": "Minimum latency in milliseconds.", + "readOnly": true, + "type": "integer" + }, + "maxLatencyInMs": { + "description": "Maximum latency in milliseconds.", + "readOnly": true, + "type": "integer" + }, + "probesSent": { + "description": "Total number of probes sent.", + "readOnly": true, + "type": "integer" + }, + "probesFailed": { + "description": "Number of failed probes.", + "readOnly": true, + "type": "integer" + } + } + }, + "ConnectivityHop": { + "description": "Information about a hop between the source and the destination.", + "properties": { + "type": { + "description": "The type of the hop.", + "readOnly": true, + "type": "string" + }, + "id": { + "description": "The ID of the hop.", + "readOnly": true, + "type": "string" + }, + "address": { + "description": "The IP address of the hop.", + "readOnly": true, + "type": "string" + }, + "resourceId": { + "description": "The ID of the resource corresponding to this hop.", + "readOnly": true, + "type": "string" + }, + "nextHopIds": { + "readOnly": true, + "type": "array", + "description": "List of next hop identifiers.", + "items": { + "type": "string" + } + }, + "issues": { + "readOnly": true, + "type": "array", + "description": "List of issues.", + "items": { + "$ref": "#/definitions/ConnectivityIssue" + } + } + } + }, + "ConnectivityIssue": { + "description": "Information about an issue encountered in the process of checking for connectivity.", + "properties": { + "origin": { + "readOnly": true, + "type": "string", + "enum": [ + "Local", + "Inbound", + "Outbound" + ], + "x-ms-enum": { + "name": "Origin", + "modelAsString": true + }, + "description": "The origin of the issue." + }, + "severity": { + "readOnly": true, + "type": "string", + "enum": [ + "Error", + "Warning" + ], + "x-ms-enum": { + "name": "Severity", + "modelAsString": true + }, + "description": "The severity of the issue." + }, + "type": { + "readOnly": true, + "type": "string", + "enum": [ + "Unknown", + "AgentStopped", + "GuestFirewall", + "DnsResolution", + "SocketBind", + "NetworkSecurityRule", + "UserDefinedRoute", + "PortThrottled", + "Platform" + ], + "x-ms-enum": { + "name": "IssueType", + "modelAsString": true + }, + "description": "The type of issue." + }, + "context": { + "readOnly": true, + "type": "array", + "description": "Provides additional context on the issue.", + "items": { + "$ref": "#/definitions/IssueContext" + } + } + } + }, + "IssueContext": { + "description": "A key-value pair that provides additional context on the issue.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "ProtocolConfiguration": { + "description": "Configuration of the protocol.", + "properties": { + "HTTPConfiguration": { + "$ref": "#/definitions/HTTPConfiguration", + "description": "HTTP configuration of the connectivity check." + } + } + }, + "HTTPConfiguration": { + "properties": { + "method": { + "type": "string", + "description": "HTTP method.", + "enum": [ + "Get" + ], + "x-ms-enum": { + "name": "HTTPMethod", + "modelAsString": true + } + }, + "headers": { + "type": "array", + "description": "List of HTTP headers.", + "items": { + "$ref": "#/definitions/HTTPHeader" + } + }, + "validStatusCodes": { + "type": "array", + "items": { + "type": "integer" + }, + "description": "Valid status codes." + } + }, + "description": "HTTP configuration of the connectivity check." + }, + "HTTPHeader": { + "properties": { + "name": { + "type": "string", + "description": "The name in HTTP header." + }, + "value": { + "type": "string", + "description": "The value in HTTP header." + } + }, + "description": "The HTTP header." + }, + "AzureReachabilityReportParameters": { + "properties": { + "providerLocation": { + "$ref": "#/definitions/AzureReachabilityReportLocation", + "description": "Parameters that define a geographic location." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of Internet service providers." + }, + "azureLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Optional Azure regions to scope the query to." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time for the Azure reachability report." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time for the Azure reachability report." + } + }, + "required": [ + "providerLocation", + "startTime", + "endTime" + ], + "description": "Geographic and time constraints for Azure reachability report." + }, + "AzureReachabilityReportLocation": { + "properties": { + "country": { + "type": "string", + "description": "The name of the country." + }, + "state": { + "type": "string", + "description": "The name of the state." + }, + "city": { + "type": "string", + "description": "The name of the city or town." + } + }, + "required": [ + "country" + ], + "description": "Parameters that define a geographic location." + }, + "AzureReachabilityReport": { + "properties": { + "aggregationLevel": { + "type": "string", + "description": "The aggregation level of Azure reachability report. Can be Country, State or City." + }, + "providerLocation": { + "$ref": "#/definitions/AzureReachabilityReportLocation", + "description": "Parameters that define a geographic location." + }, + "reachabilityReport": { + "type": "array", + "description": "List of Azure reachability report items.", + "items": { + "$ref": "#/definitions/AzureReachabilityReportItem" + } + } + }, + "required": [ + "aggregationLevel", + "providerLocation", + "reachabilityReport" + ], + "description": "Azure reachability report details." + }, + "AzureReachabilityReportItem": { + "properties": { + "provider": { + "type": "string", + "description": "The Internet service provider." + }, + "azureLocation": { + "type": "string", + "description": "The Azure region." + }, + "latencies": { + "type": "array", + "description": "List of latency details for each of the time series.", + "items": { + "$ref": "#/definitions/AzureReachabilityReportLatencyInfo" + } + } + }, + "description": "Azure reachability report details for a given provider location." + }, + "AzureReachabilityReportLatencyInfo": { + "properties": { + "timeStamp": { + "type": "string", + "format": "date-time", + "description": "The time stamp." + }, + "score": { + "type": "integer", + "description": "The relative latency score between 1 and 100, higher values indicating a faster connection.", + "minimum": 1, + "maximum": 100 + } + }, + "description": "Details on latency for a time series." + }, + "AvailableProvidersListParameters": { + "properties": { + "azureLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Azure regions." + }, + "country": { + "type": "string", + "description": "The country for available providers list." + }, + "state": { + "type": "string", + "description": "The state for available providers list." + }, + "city": { + "type": "string", + "description": "The city or town for available providers list." + } + }, + "description": "Constraints that determine the list of available Internet service providers." + }, + "AvailableProvidersList": { + "properties": { + "countries": { + "type": "array", + "description": "List of available countries.", + "items": { + "$ref": "#/definitions/AvailableProvidersListCountry" + } + } + }, + "required": [ + "countries" + ], + "description": "List of available countries with details." + }, + "AvailableProvidersListCountry": { + "properties": { + "countryName": { + "type": "string", + "description": "The country name." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Internet service providers." + }, + "states": { + "type": "array", + "description": "List of available states in the country.", + "items": { + "$ref": "#/definitions/AvailableProvidersListState" + } + } + }, + "description": "Country details." + }, + "AvailableProvidersListState": { + "properties": { + "stateName": { + "type": "string", + "description": "The state name." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Internet service providers." + }, + "cities": { + "type": "array", + "description": "List of available cities or towns in the state.", + "items": { + "$ref": "#/definitions/AvailableProvidersListCity" + } + } + }, + "description": "State details." + }, + "AvailableProvidersListCity": { + "properties": { + "cityName": { + "type": "string", + "description": "The city or town name." + }, + "providers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of Internet service providers." + } + }, + "description": "City or town details." + }, + "NetworkConfigurationDiagnosticParameters": { + "description": "Parameters to get network configuration diagnostic.", + "required": [ + "targetResourceId", + "profiles" + ], + "properties": { + "targetResourceId": { + "type": "string", + "description": "The ID of the target resource to perform network configuration diagnostic. Valid options are VM, NetworkInterface, VMSS/NetworkInterface and Application Gateway." + }, + "verbosityLevel": { + "type": "string", + "enum": [ + "Normal", + "Minimum", + "Full" + ], + "x-ms-enum": { + "name": "VerbosityLevel", + "modelAsString": true + }, + "description": "Verbosity level." + }, + "profiles": { + "type": "array", + "description": "List of network configuration diagnostic profiles.", + "items": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticProfile" + } + } + } + }, + "NetworkConfigurationDiagnosticProfile": { + "description": "Parameters to compare with network configuration.", + "required": [ + "direction", + "protocol", + "source", + "destination", + "destinationPort" + ], + "properties": { + "direction": { + "$ref": "#/definitions/Direction", + "description": "The direction of the traffic." + }, + "protocol": { + "type": "string", + "description": "Protocol to be verified on. Accepted values are '*', TCP, UDP." + }, + "source": { + "type": "string", + "description": "Traffic source. Accepted values are '*', IP Address/CIDR, Service Tag." + }, + "destination": { + "type": "string", + "description": "Traffic destination. Accepted values are: '*', IP Address/CIDR, Service Tag." + }, + "destinationPort": { + "type": "string", + "description": "Traffic destination port. Accepted values are '*' and a single port in the range (0 - 65535)." + } + } + }, + "NetworkConfigurationDiagnosticResponse": { + "description": "Results of network configuration diagnostic on the target resource.", + "properties": { + "results": { + "readOnly": true, + "type": "array", + "description": "List of network configuration diagnostic results.", + "items": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticResult" + } + } + } + }, + "NetworkConfigurationDiagnosticResult": { + "description": "Network configuration diagnostic result corresponded to provided traffic query.", + "properties": { + "profile": { + "$ref": "#/definitions/NetworkConfigurationDiagnosticProfile", + "description": "Network configuration diagnostic profile." + }, + "networkSecurityGroupResult": { + "$ref": "#/definitions/NetworkSecurityGroupResult", + "description": "Network security group result." + } + } + }, + "NetworkSecurityGroupResult": { + "description": "Network configuration diagnostic result corresponded provided traffic query.", + "properties": { + "securityRuleAccessResult": { + "$ref": "./networkSecurityGroup.json#/definitions/SecurityRuleAccess", + "description": "The network traffic is allowed or denied." + }, + "evaluatedNetworkSecurityGroups": { + "readOnly": true, + "type": "array", + "description": "List of results network security groups diagnostic.", + "items": { + "$ref": "#/definitions/EvaluatedNetworkSecurityGroup" + } + } + } + }, + "EvaluatedNetworkSecurityGroup": { + "description": "Results of network security group evaluation.", + "properties": { + "networkSecurityGroupId": { + "type": "string", + "description": "Network security group ID." + }, + "appliedTo": { + "type": "string", + "description": "Resource ID of nic or subnet to which network security group is applied." + }, + "matchedRule": { + "$ref": "#/definitions/MatchedRule", + "description": "Matched network security rule." + }, + "rulesEvaluationResult": { + "readOnly": true, + "type": "array", + "description": "List of network security rules evaluation results.", + "items": { + "$ref": "#/definitions/NetworkSecurityRulesEvaluationResult" + } + } + } + }, + "MatchedRule": { + "description": "Matched rule.", + "properties": { + "ruleName": { + "type": "string", + "description": "Name of the matched network security rule." + }, + "action": { + "type": "string", + "description": "The network traffic is allowed or denied. Possible values are 'Allow' and 'Deny'." + } + } + }, + "NetworkSecurityRulesEvaluationResult": { + "description": "Network security rules evaluation result.", + "properties": { + "name": { + "type": "string", + "description": "Name of the network security rule." + }, + "protocolMatched": { + "type": "boolean", + "description": "Value indicating whether protocol is matched." + }, + "sourceMatched": { + "type": "boolean", + "description": "Value indicating whether source is matched." + }, + "sourcePortMatched": { + "type": "boolean", + "description": "Value indicating whether source port is matched." + }, + "destinationMatched": { + "type": "boolean", + "description": "Value indicating whether destination is matched." + }, + "destinationPortMatched": { + "type": "boolean", + "description": "Value indicating whether destination port is matched." + } + } + }, + "Direction": { + "type": "string", + "description": "The direction of the traffic.", + "enum": [ + "Inbound", + "Outbound" + ], + "x-ms-enum": { + "name": "Direction", + "modelAsString": true + } + }, + "ConnectionMonitor": { + "properties": { + "location": { + "type": "string", + "description": "Connection monitor location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Connection monitor tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConnectionMonitorParameters", + "description": "Properties of the connection monitor." + } + }, + "required": [ + "properties" + ], + "description": "Parameters that define the operation to create a connection monitor." + }, + "ConnectionMonitorParameters": { + "properties": { + "source": { + "$ref": "#/definitions/ConnectionMonitorSource", + "description": "Describes the source of connection monitor." + }, + "destination": { + "$ref": "#/definitions/ConnectionMonitorDestination", + "description": "Describes the destination of connection monitor." + }, + "autoStart": { + "type": "boolean", + "default": true, + "description": "Determines if the connection monitor will start automatically once created." + }, + "monitoringIntervalInSeconds": { + "type": "integer", + "default": 60, + "description": "Monitoring interval in seconds." + }, + "endpoints": { + "type": "array", + "description": "List of connection monitor endpoints.", + "items": { + "$ref": "#/definitions/ConnectionMonitorEndpoint" + } + }, + "testConfigurations": { + "type": "array", + "description": "List of connection monitor test configurations.", + "items": { + "$ref": "#/definitions/ConnectionMonitorTestConfiguration" + } + }, + "testGroups": { + "type": "array", + "description": "List of connection monitor test groups.", + "items": { + "$ref": "#/definitions/ConnectionMonitorTestGroup" + } + }, + "outputs": { + "type": "array", + "description": "List of connection monitor outputs.", + "items": { + "$ref": "#/definitions/ConnectionMonitorOutput" + } + }, + "notes": { + "type": "string", + "description": "Optional notes to be associated with the connection monitor." + } + }, + "description": "Parameters that define the operation to create a connection monitor." + }, + "ConnectionMonitorSource": { + "properties": { + "resourceId": { + "type": "string", + "description": "The ID of the resource used as the source by connection monitor." + }, + "port": { + "type": "integer", + "description": "The source port used by connection monitor." + } + }, + "required": [ + "resourceId" + ], + "description": "Describes the source of connection monitor." + }, + "ConnectionMonitorDestination": { + "properties": { + "resourceId": { + "type": "string", + "description": "The ID of the resource used as the destination by connection monitor." + }, + "address": { + "type": "string", + "description": "Address of the connection monitor destination (IP or domain name)." + }, + "port": { + "type": "integer", + "description": "The destination port used by connection monitor." + } + }, + "description": "Describes the destination of connection monitor." + }, + "ConnectionMonitorEndpoint": { + "properties": { + "name": { + "type": "string", + "description": "The name of the connection monitor endpoint." + }, + "resourceId": { + "type": "string", + "description": "Resource ID of the connection monitor endpoint." + }, + "address": { + "type": "string", + "description": "Address of the connection monitor endpoint (IP or domain name)." + }, + "filter": { + "$ref": "#/definitions/ConnectionMonitorEndpointFilter", + "description": "Filter for sub-items within the endpoint." + } + }, + "required": [ + "name" + ], + "description": "Describes the connection monitor endpoint." + }, + "ConnectionMonitorEndpointFilter": { + "properties": { + "type": { + "type": "string", + "enum": [ + "Include" + ], + "x-ms-enum": { + "name": "ConnectionMonitorEndpointFilterType", + "modelAsString": true + }, + "description": "The behavior of the endpoint filter. Currently only 'Include' is supported." + }, + "items": { + "type": "array", + "description": "List of items in the filter.", + "items": { + "$ref": "#/definitions/ConnectionMonitorEndpointFilterItem" + } + } + }, + "description": "Describes the connection monitor endpoint filter." + }, + "ConnectionMonitorEndpointFilterItem": { + "properties": { + "type": { + "type": "string", + "enum": [ + "AgentAddress" + ], + "x-ms-enum": { + "name": "ConnectionMonitorEndpointFilterItemType", + "modelAsString": true + }, + "description": "The type of item included in the filter. Currently only 'AgentAddress' is supported." + }, + "address": { + "type": "string", + "description": "The address of the filter item." + } + }, + "description": "Describes the connection monitor endpoint filter item." + }, + "ConnectionMonitorTestGroup": { + "properties": { + "name": { + "type": "string", + "description": "The name of the connection monitor test group." + }, + "disable": { + "type": "boolean", + "description": "Value indicating whether test group is disabled." + }, + "testConfigurations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of test configuration names." + }, + "sources": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of source endpoint names." + }, + "destinations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of destination endpoint names." + } + }, + "required": [ + "name", + "testConfigurations", + "sources", + "destinations" + ], + "description": "Describes the connection monitor test group." + }, + "ConnectionMonitorTestConfiguration": { + "properties": { + "name": { + "type": "string", + "description": "The name of the connection monitor test configuration." + }, + "testFrequencySec": { + "type": "integer", + "description": "The frequency of test evaluation, in seconds." + }, + "protocol": { + "type": "string", + "enum": [ + "Tcp", + "Http", + "Icmp" + ], + "x-ms-enum": { + "name": "ConnectionMonitorTestConfigurationProtocol", + "modelAsString": true + }, + "description": "The protocol to use in test evaluation." + }, + "preferredIPVersion": { + "type": "string", + "enum": [ + "IPv4", + "IPv6" + ], + "x-ms-enum": { + "name": "PreferredIPVersion", + "modelAsString": true + }, + "description": "The preferred IP version to use in test evaluation. The connection monitor may choose to use a different version depending on other parameters." + }, + "httpConfiguration": { + "$ref": "#/definitions/ConnectionMonitorHttpConfiguration", + "description": "The parameters used to perform test evaluation over HTTP." + }, + "tcpConfiguration": { + "$ref": "#/definitions/ConnectionMonitorTcpConfiguration", + "description": "The parameters used to perform test evaluation over TCP." + }, + "icmpConfiguration": { + "$ref": "#/definitions/ConnectionMonitorIcmpConfiguration", + "description": "The parameters used to perform test evaluation over ICMP." + }, + "successThreshold": { + "$ref": "#/definitions/ConnectionMonitorSuccessThreshold", + "description": "The threshold for declaring a test successful." + } + }, + "required": [ + "name", + "protocol" + ], + "description": "Describes a connection monitor test configuration." + }, + "ConnectionMonitorHttpConfiguration": { + "properties": { + "port": { + "type": "integer", + "description": "The port to connect to." + }, + "method": { + "type": "string", + "description": "The HTTP method to use.", + "enum": [ + "Get", + "Post" + ], + "x-ms-enum": { + "name": "HTTPConfigurationMethod", + "modelAsString": true + } + }, + "path": { + "type": "string", + "description": "The path component of the URI. For instance, \"/dir1/dir2\"." + }, + "requestHeaders": { + "type": "array", + "description": "The HTTP headers to transmit with the request.", + "items": { + "$ref": "#/definitions/HTTPHeader" + } + }, + "validStatusCodeRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "HTTP status codes to consider successful. For instance, \"2xx,301-304,418\"." + }, + "preferHTTPS": { + "type": "boolean", + "description": "Value indicating whether HTTPS is preferred over HTTP in cases where the choice is not explicit." + } + }, + "description": "Describes the HTTP configuration." + }, + "ConnectionMonitorTcpConfiguration": { + "properties": { + "port": { + "type": "integer", + "description": "The port to connect to." + }, + "disableTraceRoute": { + "type": "boolean", + "description": "Value indicating whether path evaluation with trace route should be disabled." + } + }, + "description": "Describes the TCP configuration." + }, + "ConnectionMonitorIcmpConfiguration": { + "properties": { + "disableTraceRoute": { + "type": "boolean", + "description": "Value indicating whether path evaluation with trace route should be disabled." + } + }, + "description": "Describes the ICMP configuration." + }, + "ConnectionMonitorSuccessThreshold": { + "properties": { + "checksFailedPercent": { + "type": "integer", + "description": "The maximum percentage of failed checks permitted for a test to evaluate as successful." + }, + "roundTripTimeMs": { + "type": "integer", + "description": "The maximum round-trip time in milliseconds permitted for a test to evaluate as successful." + } + }, + "description": "Describes the threshold for declaring a test successful." + }, + "ConnectionMonitorOutput": { + "properties": { + "type": { + "type": "string", + "description": "Connection monitor output destination type. Currently, only \"Workspace\" is supported.", + "enum": [ + "Workspace" + ], + "x-ms-enum": { + "name": "OutputType", + "modelAsString": true + } + }, + "workspaceSettings": { + "$ref": "#/definitions/ConnectionMonitorWorkspaceSettings", + "description": "Describes the settings for producing output into a log analytics workspace." + } + }, + "description": "Describes a connection monitor output destination." + }, + "ConnectionMonitorWorkspaceSettings": { + "properties": { + "workspaceResourceId": { + "type": "string", + "description": "Log analytics workspace resource ID." + } + }, + "description": "Describes the settings for producing output into a log analytics workspace." + }, + "ConnectionStateSnapshot": { + "properties": { + "connectionState": { + "type": "string", + "enum": [ + "Reachable", + "Unreachable", + "Unknown" + ], + "x-ms-enum": { + "name": "ConnectionState", + "modelAsString": true + }, + "description": "The connection state." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time of the connection snapshot." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time of the connection snapshot." + }, + "evaluationState": { + "type": "string", + "enum": [ + "NotStarted", + "InProgress", + "Completed" + ], + "x-ms-enum": { + "name": "EvaluationState", + "modelAsString": true + }, + "description": "Connectivity analysis evaluation state." + }, + "avgLatencyInMs": { + "type": "integer", + "description": "Average latency in ms." + }, + "minLatencyInMs": { + "type": "integer", + "description": "Minimum latency in ms." + }, + "maxLatencyInMs": { + "type": "integer", + "description": "Maximum latency in ms." + }, + "probesSent": { + "type": "integer", + "description": "The number of sent probes." + }, + "probesFailed": { + "type": "integer", + "description": "The number of failed probes." + }, + "hops": { + "readOnly": true, + "type": "array", + "description": "List of hops between the source and the destination.", + "items": { + "$ref": "./networkWatcher.json#/definitions/ConnectivityHop" + } + } + }, + "description": "Connection state snapshot." + }, + "ConnectionMonitorListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ConnectionMonitorResult" + }, + "description": "Information about connection monitors." + } + }, + "description": "List of connection monitors." + }, + "ConnectionMonitorResult": { + "x-ms-azure-resource": true, + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Name of the connection monitor." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "ID of the connection monitor." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Connection monitor type." + }, + "location": { + "type": "string", + "description": "Connection monitor location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Connection monitor tags." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConnectionMonitorResultProperties", + "description": "Properties of the connection monitor result." + } + }, + "description": "Information about the connection monitor." + }, + "ConnectionMonitorResultProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the connection monitor." + }, + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The date and time when the connection monitor was started." + }, + "monitoringStatus": { + "readOnly": true, + "type": "string", + "description": "The monitoring status of the connection monitor." + }, + "connectionMonitorType": { + "readOnly": true, + "type": "string", + "enum": [ + "MultiEndpoint", + "SingleSourceDestination" + ], + "x-ms-enum": { + "name": "ConnectionMonitorType", + "modelAsString": true + }, + "description": "Type of connection monitor." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ConnectionMonitorParameters" + } + ], + "description": "Describes the properties of a connection monitor." + }, + "ConnectionMonitorQueryResult": { + "properties": { + "sourceStatus": { + "type": "string", + "enum": [ + "Unknown", + "Active", + "Inactive" + ], + "x-ms-enum": { + "name": "ConnectionMonitorSourceStatus", + "modelAsString": true + }, + "description": "Status of connection monitor source." + }, + "states": { + "type": "array", + "items": { + "$ref": "#/definitions/ConnectionStateSnapshot" + }, + "description": "Information about connection states." + } + }, + "description": "List of connection states snapshots." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/operation.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/operation.json new file mode 100644 index 000000000000..48fb2e6cf606 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/operation.json @@ -0,0 +1,271 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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": { + "/providers/Microsoft.Network/operations": { + "get": { + "operationId": "Operations_List", + "description": "Lists all of the available Network Rest API operations.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get a list of operations for a resource provider": { + "$ref": "./examples/OperationList.json" + } + } + } + } + }, + "definitions": { + "OperationListResult": { + "description": "Result of the request to list Network 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 Network operations supported by the Network resource provider." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "Operation": { + "description": "Network REST API operation definition.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}.", + "type": "string" + }, + "display": { + "description": "Display metadata associated with the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft Network.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed.", + "type": "string" + }, + "operation": { + "description": "Type of the operation: get, read, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of the operation.", + "type": "string" + } + } + }, + "origin": { + "description": "Origin of the operation.", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OperationPropertiesFormat", + "description": "Operation properties format." + } + } + }, + "OperationPropertiesFormat": { + "description": "Description of operation properties format.", + "properties": { + "serviceSpecification": { + "description": "Specification of the service.", + "properties": { + "metricSpecifications": { + "type": "array", + "items": { + "$ref": "#/definitions/MetricSpecification" + }, + "description": "Operation service specification." + }, + "logSpecifications": { + "type": "array", + "items": { + "$ref": "#/definitions/LogSpecification" + }, + "description": "Operation log specification." + } + } + } + } + }, + "LogSpecification": { + "description": "Description of logging specification.", + "properties": { + "name": { + "type": "string", + "description": "The name of the specification." + }, + "displayName": { + "type": "string", + "description": "The display name of the specification." + }, + "blobDuration": { + "type": "string", + "description": "Duration of the blob." + } + } + }, + "MetricSpecification": { + "description": "Description of metrics specification.", + "properties": { + "name": { + "type": "string", + "description": "The name of the metric." + }, + "displayName": { + "type": "string", + "description": "The display name of the metric." + }, + "displayDescription": { + "type": "string", + "description": "The description of the metric." + }, + "unit": { + "type": "string", + "description": "Units the metric to be displayed in." + }, + "aggregationType": { + "type": "string", + "description": "The aggregation type." + }, + "availabilities": { + "type": "array", + "items": { + "$ref": "#/definitions/Availability" + }, + "description": "List of availability." + }, + "enableRegionalMdmAccount": { + "type": "boolean", + "description": "Whether regional MDM account enabled." + }, + "fillGapWithZero": { + "type": "boolean", + "description": "Whether gaps would be filled with zeros." + }, + "metricFilterPattern": { + "type": "string", + "description": "Pattern for the filter of the metric." + }, + "dimensions": { + "type": "array", + "items": { + "$ref": "#/definitions/Dimension" + }, + "description": "List of dimensions." + }, + "isInternal": { + "type": "boolean", + "description": "Whether the metric is internal." + }, + "sourceMdmAccount": { + "type": "string", + "description": "The source MDM account." + }, + "sourceMdmNamespace": { + "type": "string", + "description": "The source MDM namespace." + }, + "resourceIdDimensionNameOverride": { + "type": "string", + "description": "The resource Id dimension name override." + } + } + }, + "Dimension": { + "description": "Dimension of the metric.", + "properties": { + "name": { + "type": "string", + "description": "The name of the dimension." + }, + "displayName": { + "type": "string", + "description": "The display name of the dimension." + }, + "internalName": { + "type": "string", + "description": "The internal name of the dimension." + } + } + }, + "Availability": { + "description": "Availability of the metric.", + "properties": { + "timeGrain": { + "type": "string", + "description": "The time grain of the availability." + }, + "retention": { + "type": "string", + "description": "The retention of the availability." + }, + "blobDuration": { + "type": "string", + "description": "Duration of the availability blob." + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/privateEndpoint.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/privateEndpoint.json new file mode 100644 index 000000000000..4a14e3c84031 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/privateEndpoint.json @@ -0,0 +1,963 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateEndpoints/{privateEndpointName}": { + "delete": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_Delete", + "description": "Deletes the specified private endpoint.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete private endpoint": { + "$ref": "./examples/PrivateEndpointDelete.json" + } + } + }, + "get": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_Get", + "description": "Gets the specified private endpoint by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting private endpoint resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpoint" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get private endpoint": { + "$ref": "./examples/PrivateEndpointGet.json" + }, + "Get private endpoint with manual approval connection": { + "$ref": "./examples/PrivateEndpointGetForManualApproval.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_CreateOrUpdate", + "description": "Creates or updates an private endpoint in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpoint" + }, + "description": "Parameters supplied to the create or update private endpoint operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting private endpoint resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpoint" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting private endpoint resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpoint" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create private endpoint": { + "$ref": "./examples/PrivateEndpointCreate.json" + }, + "Create private endpoint with manual approval connection": { + "$ref": "./examples/PrivateEndpointCreateForManualApproval.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateEndpoints": { + "get": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_List", + "description": "Gets all private endpoints in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of private endpoint resources.", + "schema": { + "$ref": "#/definitions/PrivateEndpointListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List private endpoints in resource group": { + "$ref": "./examples/PrivateEndpointList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/privateEndpoints": { + "get": { + "tags": [ + "PrivateEndpoints" + ], + "operationId": "PrivateEndpoints_ListBySubscription", + "description": "Gets all private endpoints in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of private endpoint resources.", + "schema": { + "$ref": "#/definitions/PrivateEndpointListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all private endpoints": { + "$ref": "./examples/PrivateEndpointListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/availablePrivateEndpointTypes": { + "get": { + "operationId": "AvailablePrivateEndpointTypes_List", + "description": "Returns all of the resource types that can be linked to a Private Endpoint in this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the resource types that can be linked to a Private Endpoint in this subscription in this region.", + "schema": { + "$ref": "#/definitions/AvailablePrivateEndpointTypesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available PrivateEndpoint types": { + "$ref": "./examples/AvailablePrivateEndpointTypesGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/availablePrivateEndpointTypes": { + "get": { + "operationId": "AvailablePrivateEndpointTypes_ListByResourceGroup", + "description": "Returns all of the resource types that can be linked to a Private Endpoint in this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the resource types that can be linked to a Private Endpoint in this subscription in this region.", + "schema": { + "$ref": "#/definitions/AvailablePrivateEndpointTypesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get available PrivateEndpoint types in the resource group": { + "$ref": "./examples/AvailablePrivateEndpointTypesResourceGroupGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateEndpoints/{privateEndpointName}/privateDnsZoneGroups/{privateDnsZoneGroupName}": { + "delete": { + "tags": [ + "PrivateDnsZoneGroups" + ], + "operationId": "PrivateDnsZoneGroups_Delete", + "description": "Deletes the specified private dns zone group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "name": "privateDnsZoneGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private dns zone group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete private dns zone group": { + "$ref": "./examples/PrivateEndpointDnsZoneGroupDelete.json" + } + } + }, + "get": { + "tags": [ + "PrivateDnsZoneGroups" + ], + "operationId": "PrivateDnsZoneGroups_Get", + "description": "Gets the private dns zone group resource by specified private dns zone group name.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "name": "privateDnsZoneGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private dns zone group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting privateDnsZoneGroup resource.", + "schema": { + "$ref": "#/definitions/PrivateDnsZoneGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get private dns zone group": { + "$ref": "./examples/PrivateEndpointDnsZoneGroupGet.json" + } + } + }, + "put": { + "tags": [ + "PrivateDnsZoneGroups" + ], + "operationId": "PrivateDnsZoneGroups_CreateOrUpdate", + "description": "Creates or updates a private dns zone group in the specified private endpoint.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "name": "privateDnsZoneGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private dns zone group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateDnsZoneGroup" + }, + "description": "Parameters supplied to the create or update private dns zone group operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting PrivateDnsZoneGroup resource.", + "schema": { + "$ref": "#/definitions/PrivateDnsZoneGroup" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting PrivateDnsZoneGroup resource.", + "schema": { + "$ref": "#/definitions/PrivateDnsZoneGroup" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create private dns zone group": { + "$ref": "./examples/PrivateEndpointDnsZoneGroupCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateEndpoints/{privateEndpointName}/privateDnsZoneGroups": { + "get": { + "tags": [ + "PrivateDnsZoneGroups" + ], + "operationId": "PrivateDnsZoneGroups_List", + "description": "Gets all private dns zone groups in a private endpoint.", + "parameters": [ + { + "name": "privateEndpointName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of private dns zone group resources.", + "schema": { + "$ref": "#/definitions/PrivateDnsZoneGroupListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List private endpoints in resource group": { + "$ref": "./examples/PrivateEndpointDnsZoneGroupList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PrivateEndpoint": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateEndpointProperties", + "description": "Properties of the private endpoint." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Private endpoint resource." + }, + "PrivateEndpointProperties": { + "properties": { + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The ID of the subnet from which the private IP will be allocated." + }, + "networkInterfaces": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + }, + "description": "An array of references to the network interfaces created for this private endpoint." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private endpoint resource." + }, + "privateLinkServiceConnections": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkServiceConnection" + }, + "description": "A grouping of information about the connection to the remote resource." + }, + "manualPrivateLinkServiceConnections": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkServiceConnection" + }, + "description": "A grouping of information about the connection to the remote resource. Used when the network admin does not have access to approve connections to the remote resource." + }, + "customDnsConfigs": { + "type": "array", + "items": { + "$ref": "#/definitions/CustomDnsConfigPropertiesFormat" + }, + "description": "An array of custom dns configurations." + } + }, + "description": "Properties of the private endpoint." + }, + "CustomDnsConfigPropertiesFormat": { + "properties": { + "fqdn": { + "type": "string", + "description": "Fqdn that resolves to private endpoint ip address." + }, + "ipAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of private ip addresses of the private endpoint." + } + }, + "description": "Contains custom Dns resolution configuration from customer." + }, + "PrivateLinkServiceConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateLinkServiceConnectionProperties", + "description": "Properties of the private link service connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "PrivateLinkServiceConnection resource." + }, + "PrivateLinkServiceConnectionProperties": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private link service connection resource." + }, + "privateLinkServiceId": { + "type": "string", + "description": "The resource id of private link service." + }, + "groupIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The ID(s) of the group(s) obtained from the remote resource that this private endpoint should connect to." + }, + "requestMessage": { + "type": "string", + "description": "A message passed to the owner of the remote resource with this connection request. Restricted to 140 chars." + }, + "privateLinkServiceConnectionState": { + "$ref": "./privateLinkService.json#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of read-only information about the state of the connection to the remote resource." + } + }, + "description": "Properties of the PrivateLinkServiceConnection." + }, + "PrivateEndpointListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpoint" + }, + "description": "A list of private endpoint resources in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for the ListPrivateEndpoints API service call." + }, + "PrivateDnsZoneGroupListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateDnsZoneGroup" + }, + "description": "A list of private dns zone group resources in a private endpoint." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for the ListPrivateDnsZoneGroups API service call." + }, + "AvailablePrivateEndpointTypesResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailablePrivateEndpointType" + }, + "description": "An array of available privateEndpoint type." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "An array of available PrivateEndpoint types." + }, + "AvailablePrivateEndpointType": { + "properties": { + "name": { + "type": "string", + "description": "The name of the service and resource." + }, + "id": { + "type": "string", + "description": "A unique identifier of the AvailablePrivateEndpoint Type resource." + }, + "type": { + "type": "string", + "description": "Resource type." + }, + "resourceName": { + "type": "string", + "description": "The name of the service and resource." + } + }, + "description": "The information of an AvailablePrivateEndpointType." + }, + "PrivateDnsZoneGroup": { + "properties": { + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateDnsZoneGroupPropertiesFormat", + "description": "Properties of the private dns zone group." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Private dns zone group resource." + }, + "PrivateDnsZoneGroupPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private dns zone group resource." + }, + "privateDnsZoneConfigs": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateDnsZoneConfig" + }, + "description": "A collection of private dns zone configurations of the private dns zone group." + } + }, + "description": "Properties of the private dns zone group." + }, + "PrivateDnsZoneConfig": { + "properties": { + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateDnsZonePropertiesFormat", + "description": "Properties of the private dns zone configuration." + } + }, + "description": "PrivateDnsZoneConfig resource." + }, + "PrivateDnsZonePropertiesFormat": { + "properties": { + "privateDnsZoneId": { + "type": "string", + "description": "The resource id of the private dns zone." + }, + "recordSets": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/RecordSet" + }, + "description": "A collection of information regarding a recordSet, holding information to identify private resources." + } + }, + "description": "Properties of the private dns zone configuration resource." + }, + "RecordSet": { + "properties": { + "recordType": { + "type": "string", + "description": "Resource record type." + }, + "recordSetName": { + "type": "string", + "description": "Recordset name." + }, + "fqdn": { + "type": "string", + "description": "Fqdn that resolves to private endpoint ip address." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the recordset." + }, + "ttl": { + "type": "integer", + "description": "Recordset time to live." + }, + "ipAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The private ip address of the private endpoint." + } + }, + "description": "A collective group of information about the record set information." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/privateLinkService.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/privateLinkService.json new file mode 100644 index 000000000000..d0fc0aba4b5d --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/privateLinkService.json @@ -0,0 +1,1068 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateLinkServices/{serviceName}": { + "delete": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_Delete", + "description": "Deletes the specified private link service.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete private link service": { + "$ref": "./examples/PrivateLinkServiceDelete.json" + } + } + }, + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_Get", + "description": "Gets the specified private link service by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PrivateLinkService resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkService" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get private link service": { + "$ref": "./examples/PrivateLinkServiceGet.json" + } + } + }, + "put": { + "tags": [ + "PrivateLinkService" + ], + "operationId": "PrivateLinkServices_CreateOrUpdate", + "description": "Creates or updates an private link service in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateLinkService" + }, + "description": "Parameters supplied to the create or update private link service operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting privateLinkService resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkService" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting privateLinkService resource.", + "schema": { + "$ref": "#/definitions/PrivateLinkService" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create private link service": { + "$ref": "./examples/PrivateLinkServiceCreate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateLinkServices": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_List", + "description": "Gets all private link services in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of privateLinkService resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkServiceListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List private link service in resource group": { + "$ref": "./examples/PrivateLinkServiceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/privateLinkServices": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_ListBySubscription", + "description": "Gets all private link service in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PrivateLinkService resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkServiceListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all private list service": { + "$ref": "./examples/PrivateLinkServiceListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateLinkServices/{serviceName}/privateEndpointConnections/{peConnectionName}": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_GetPrivateEndpointConnection", + "description": "Get the specific private end point connection by specific private link service in the resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "name": "peConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private end point connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting private end point connection resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get private end point connection": { + "$ref": "./examples/PrivateLinkServiceGetPrivateEndpointConnection.json" + } + } + }, + "put": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_UpdatePrivateEndpointConnection", + "description": "Approve or reject private end point connection for a private link service in a subscription.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "name": "peConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private end point connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "Parameters supplied to approve or reject the private end point connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting PrivateEndpointConnection resource.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "approve or reject private end point connection for a private link service": { + "$ref": "./examples/PrivateLinkServiceUpdatePrivateEndpointConnection.json" + } + } + }, + "delete": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_DeletePrivateEndpointConnection", + "description": "Delete private end point connection for a private link service in a subscription.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "name": "peConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private end point connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "delete private end point connection for a private link service": { + "$ref": "./examples/PrivateLinkServiceDeletePrivateEndpointConnection.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateLinkServices/{serviceName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_ListPrivateEndpointConnections", + "description": "Gets all private end point connections for a specific private link service.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link service." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of private end point connection resources.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List private link service in resource group": { + "$ref": "./examples/PrivateLinkServiceListPrivateEndpointConnection.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/checkPrivateLinkServiceVisibility": { + "post": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_CheckPrivateLinkServiceVisibility", + "description": "Checks whether the subscription is visible to private link service.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CheckPrivateLinkServiceVisibilityRequest" + }, + "description": "The request body of CheckPrivateLinkService API call." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns whether the subscription is visible to private link service.", + "schema": { + "$ref": "#/definitions/PrivateLinkServiceVisibility" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Check private link service visibility": { + "$ref": "./examples/CheckPrivateLinkServiceVisibility.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/checkPrivateLinkServiceVisibility": { + "post": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_CheckPrivateLinkServiceVisibilityByResourceGroup", + "description": "Checks whether the subscription is visible to private link service in the specified resource group.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CheckPrivateLinkServiceVisibilityRequest" + }, + "description": "The request body of CheckPrivateLinkService API call." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns whether the subscription is visible to private link service.", + "schema": { + "$ref": "#/definitions/PrivateLinkServiceVisibility" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Check private link service visibility": { + "$ref": "./examples/CheckPrivateLinkServiceVisibilityByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/autoApprovedPrivateLinkServices": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_ListAutoApprovedPrivateLinkServices", + "description": "Returns all of the private link service ids that can be linked to a Private Endpoint with auto approved in this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the private link service ids that can be linked to a Private Endpoint with auto approved in this subscription in this region.", + "schema": { + "$ref": "#/definitions/AutoApprovedPrivateLinkServicesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get list of private link service id that can be linked to a private end point with auto approved": { + "$ref": "./examples/AutoApprovedPrivateLinkServicesGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/autoApprovedPrivateLinkServices": { + "get": { + "tags": [ + "PrivateLinkServices" + ], + "operationId": "PrivateLinkServices_ListAutoApprovedPrivateLinkServicesByResourceGroup", + "description": "Returns all of the private link service ids that can be linked to a Private Endpoint with auto approved in this subscription in this region.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location of the domain name." + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all of the private link service ids that can be linked to a Private Endpoint with auto approved in this subscription in this region.", + "schema": { + "$ref": "#/definitions/AutoApprovedPrivateLinkServicesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get list of private link service id that can be linked to a private end point with auto approved": { + "$ref": "./examples/AutoApprovedPrivateLinkServicesResourceGroupGet.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PrivateLinkService": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateLinkServiceProperties", + "description": "Properties of the private link service." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Private link service resource." + }, + "PrivateLinkServiceProperties": { + "properties": { + "loadBalancerFrontendIpConfigurations": { + "type": "array", + "items": { + "$ref": "./loadBalancer.json#/definitions/FrontendIPConfiguration" + }, + "description": "An array of references to the load balancer IP configurations." + }, + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkServiceIpConfiguration" + }, + "description": "An array of private link service IP configurations." + }, + "networkInterfaces": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + }, + "description": "An array of references to the network interfaces created for this private link service." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private link service resource." + }, + "privateEndpointConnections": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "An array of list about connections to the private endpoint." + }, + "visibility": { + "allOf": [ + { + "$ref": "#/definitions/ResourceSet" + } + ], + "description": "The visibility list of the private link service." + }, + "autoApproval": { + "allOf": [ + { + "$ref": "#/definitions/ResourceSet" + } + ], + "description": "The auto-approval list of the private link service." + }, + "fqdns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of Fqdn." + }, + "alias": { + "readOnly": true, + "type": "string", + "description": "The alias of the private link service." + }, + "enableProxyProtocol": { + "type": "boolean", + "description": "Whether the private link service is enabled for proxy protocol or not." + } + }, + "description": "Properties of the private link service." + }, + "ResourceSet": { + "properties": { + "subscriptions": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of subscriptions." + } + }, + "description": "The base resource set for visibility and auto-approval." + }, + "PrivateLinkServiceIpConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateLinkServiceIpConfigurationProperties", + "description": "Properties of the private link service ip configuration." + }, + "name": { + "type": "string", + "description": "The name of private link service ip configuration." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "The private link service ip configuration." + }, + "PrivateLinkServiceIpConfigurationProperties": { + "properties": { + "privateIPAddress": { + "type": "string", + "description": "The private IP address of the IP configuration." + }, + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "subnet": { + "$ref": "./virtualNetwork.json#/definitions/Subnet", + "description": "The reference to the subnet resource." + }, + "primary": { + "type": "boolean", + "description": "Whether the ip configuration is primary or not." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private link service IP configuration resource." + }, + "privateIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "Whether the specific IP configuration is IPv4 or IPv6. Default is IPv4." + } + }, + "description": "Properties of private link service IP configuration." + }, + "PrivateEndpointConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Properties of the private end point connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "PrivateEndpointConnection resource." + }, + "PrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "readOnly": true, + "$ref": "./privateEndpoint.json#/definitions/PrivateEndpoint", + "description": "The resource of private end point." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the private endpoint connection resource." + }, + "linkIdentifier": { + "readOnly": true, + "type": "string", + "description": "The consumer link id." + } + }, + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "PrivateLinkServiceConnectionState": { + "properties": { + "status": { + "type": "string", + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + }, + "description": { + "type": "string", + "description": "The reason for approval/rejection of the connection." + }, + "actionsRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + } + }, + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "PrivateLinkServiceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkService" + }, + "description": "A list of PrivateLinkService resources in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for the ListPrivateLinkService API service call." + }, + "PrivateEndpointConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "A list of PrivateEndpointConnection resources for a specific private link service." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results.", + "readOnly": true + } + }, + "description": "Response for the ListPrivateEndpointConnection API service call." + }, + "CheckPrivateLinkServiceVisibilityRequest": { + "properties": { + "privateLinkServiceAlias": { + "type": "string", + "description": "The alias of the private link service." + } + }, + "description": "Request body of the CheckPrivateLinkServiceVisibility API service call." + }, + "PrivateLinkServiceVisibility": { + "properties": { + "visible": { + "type": "boolean", + "description": "Private Link Service Visibility (True/False)." + } + }, + "description": "Response for the CheckPrivateLinkServiceVisibility API service call." + }, + "AutoApprovedPrivateLinkServicesResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AutoApprovedPrivateLinkService" + }, + "description": "An array of auto approved private link service." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "An array of private link service id that can be linked to a private end point with auto approved." + }, + "AutoApprovedPrivateLinkService": { + "properties": { + "privateLinkService": { + "type": "string", + "description": "The id of the private link service resource." + } + }, + "description": "The information of an AutoApprovedPrivateLinkService." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/publicIpAddress.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/publicIpAddress.json new file mode 100644 index 000000000000..06226cad617f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/publicIpAddress.json @@ -0,0 +1,545 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPAddresses/{publicIpAddressName}": { + "delete": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_Delete", + "description": "Deletes the specified public IP address.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete public IP address": { + "$ref": "./examples/PublicIpAddressDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_Get", + "description": "Gets the specified public IP address in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get public IP address": { + "$ref": "./examples/PublicIpAddressGet.json" + } + } + }, + "put": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_CreateOrUpdate", + "description": "Creates or updates a static or dynamic public IP address.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP address." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PublicIPAddress" + }, + "description": "Parameters supplied to the create or update public IP address operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create public IP address defaults": { + "$ref": "./examples/PublicIpAddressCreateDefaults.json" + }, + "Create public IP address allocation method": { + "$ref": "./examples/PublicIpAddressCreateCustomizedValues.json" + }, + "Create public IP address DNS": { + "$ref": "./examples/PublicIpAddressCreateDns.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_UpdateTags", + "description": "Updates public IP address tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP address." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update public IP address tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "#/definitions/PublicIPAddress" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update public IP address tags": { + "$ref": "./examples/PublicIpAddressUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/publicIPAddresses": { + "get": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_ListAll", + "description": "Gets all the public IP addresses in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPAddress resources.", + "schema": { + "$ref": "#/definitions/PublicIPAddressListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all public IP addresses": { + "$ref": "./examples/PublicIpAddressListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPAddresses": { + "get": { + "tags": [ + "PublicIPAddresses" + ], + "operationId": "PublicIPAddresses_List", + "description": "Gets all public IP addresses in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPAddress resources.", + "schema": { + "$ref": "#/definitions/PublicIPAddressListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List resource group public IP addresses": { + "$ref": "./examples/PublicIpAddressList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PublicIPAddressSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of a public IP address SKU.", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "PublicIPAddressSkuName", + "modelAsString": true + } + } + }, + "description": "SKU of a public IP address." + }, + "PublicIPAddressPropertiesFormat": { + "properties": { + "publicIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The public IP address allocation method." + }, + "publicIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "The public IP address version." + }, + "ipConfiguration": { + "readOnly": true, + "$ref": "./networkInterface.json#/definitions/IPConfiguration", + "description": "The IP configuration associated with the public IP address." + }, + "dnsSettings": { + "$ref": "#/definitions/PublicIPAddressDnsSettings", + "description": "The FQDN of the DNS record associated with the public IP address." + }, + "ddosSettings": { + "$ref": "#/definitions/DdosSettings", + "description": "The DDoS protection custom policy associated with the public IP address." + }, + "ipTags": { + "type": "array", + "items": { + "$ref": "#/definitions/IpTag" + }, + "description": "The list of tags associated with the public IP address." + }, + "ipAddress": { + "type": "string", + "description": "The IP address associated with the public IP address resource." + }, + "publicIPPrefix": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The Public IP Prefix this Public IP Address should be allocated from." + }, + "idleTimeoutInMinutes": { + "type": "integer", + "format": "int32", + "description": "The idle timeout of the public IP address." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the public IP address resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the public IP address resource." + } + }, + "description": "Public IP address properties." + }, + "PublicIPAddress": { + "properties": { + "sku": { + "$ref": "#/definitions/PublicIPAddressSku", + "description": "The public IP address SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PublicIPAddressPropertiesFormat", + "description": "Public IP address properties." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting the IP allocated for the resource needs to come from." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Public IP address resource." + }, + "PublicIPAddressListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PublicIPAddress" + }, + "description": "A list of public IP addresses that exists in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPublicIpAddresses API service call." + }, + "PublicIPAddressDnsSettings": { + "properties": { + "domainNameLabel": { + "type": "string", + "description": "The domain name label. The concatenation of the domain name label and the regionalized DNS zone make up the fully qualified domain name associated with the public IP address. If a domain name label is specified, an A DNS record is created for the public IP in the Microsoft Azure DNS system." + }, + "fqdn": { + "type": "string", + "description": "The Fully Qualified Domain Name of the A DNS record associated with the public IP. This is the concatenation of the domainNameLabel and the regionalized DNS zone." + }, + "reverseFqdn": { + "type": "string", + "description": "The reverse FQDN. A user-visible, fully qualified domain name that resolves to this public IP address. If the reverseFqdn is specified, then a PTR DNS record is created pointing from the IP address in the in-addr.arpa domain to the reverse FQDN." + } + }, + "description": "Contains FQDN of the DNS record associated with the public IP address." + }, + "DdosSettings": { + "properties": { + "ddosCustomPolicy": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The DDoS custom policy associated with the public IP." + }, + "protectionCoverage": { + "readOnly": false, + "type": "string", + "enum": [ + "Basic", + "Standard" + ], + "x-ms-enum": { + "name": "DdosSettingsProtectionCoverage", + "modelAsString": true + }, + "description": "The DDoS protection policy customizability of the public IP. Only standard coverage will have the ability to be customized." + }, + "protectedIP": { + "readOnly": false, + "type": "boolean", + "description": "Enables DDoS protection on the public IP." + } + }, + "description": "Contains the DDoS protection settings of the public IP." + }, + "IpTag": { + "properties": { + "ipTagType": { + "type": "string", + "description": "The IP tag type. Example: FirstPartyUsage." + }, + "tag": { + "type": "string", + "description": "The value of the IP tag associated with the public IP. Example: SQL." + } + }, + "description": "Contains the IpTag associated with the object." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/publicIpPrefix.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/publicIpPrefix.json new file mode 100644 index 000000000000..d9ddc457448a --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/publicIpPrefix.json @@ -0,0 +1,485 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIpPrefixName}": { + "delete": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_Delete", + "description": "Deletes the specified public IP prefix.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the PublicIpPrefix." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete public IP prefix": { + "$ref": "./examples/PublicIpPrefixDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_Get", + "description": "Gets the specified public IP prefix in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP prefix." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PublicIPPrefix resource.", + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get public IP prefix": { + "$ref": "./examples/PublicIpPrefixGet.json" + } + } + }, + "put": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_CreateOrUpdate", + "description": "Creates or updates a static or dynamic public IP prefix.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP prefix." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + }, + "description": "Parameters supplied to the create or update public IP prefix operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting PublicIPPrefix resource.", + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting PublicIPPrefix resource.", + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create public IP prefix defaults": { + "$ref": "./examples/PublicIpPrefixCreateDefaults.json" + }, + "Create public IP prefix allocation method": { + "$ref": "./examples/PublicIpPrefixCreateCustomizedValues.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_UpdateTags", + "description": "Updates public IP prefix tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "publicIpPrefixName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP prefix." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update public IP prefix tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting PublicIPPrefix resource.", + "schema": { + "$ref": "#/definitions/PublicIPPrefix" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update public IP prefix tags": { + "$ref": "./examples/PublicIpPrefixUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/publicIPPrefixes": { + "get": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_ListAll", + "description": "Gets all the public IP prefixes in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPPrefix resources.", + "schema": { + "$ref": "#/definitions/PublicIPPrefixListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all public IP prefixes": { + "$ref": "./examples/PublicIpPrefixListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes": { + "get": { + "tags": [ + "PublicIPPrefixes" + ], + "operationId": "PublicIPPrefixes_List", + "description": "Gets all public IP prefixes in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPPrefix resources.", + "schema": { + "$ref": "#/definitions/PublicIPPrefixListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List resource group public IP prefixes": { + "$ref": "./examples/PublicIpPrefixList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PublicIPPrefixSku": { + "properties": { + "name": { + "type": "string", + "description": "Name of a public IP prefix SKU.", + "enum": [ + "Standard" + ], + "x-ms-enum": { + "name": "PublicIPPrefixSkuName", + "modelAsString": true + } + } + }, + "description": "SKU of a public IP prefix." + }, + "PublicIPPrefixPropertiesFormat": { + "properties": { + "publicIPAddressVersion": { + "$ref": "./network.json#/definitions/IPVersion", + "description": "The public IP address version." + }, + "ipTags": { + "type": "array", + "items": { + "$ref": "./publicIpAddress.json#/definitions/IpTag" + }, + "description": "The list of tags associated with the public IP prefix." + }, + "prefixLength": { + "type": "integer", + "format": "int32", + "description": "The Length of the Public IP Prefix." + }, + "ipPrefix": { + "readOnly": true, + "type": "string", + "description": "The allocated Prefix." + }, + "publicIPAddresses": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ReferencedPublicIpAddress" + }, + "description": "The list of all referenced PublicIPAddresses." + }, + "loadBalancerFrontendIpConfiguration": { + "readOnly": true, + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to load balancer frontend IP configuration associated with the public IP prefix." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the public IP prefix resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the public IP prefix resource." + } + }, + "description": "Public IP prefix properties." + }, + "PublicIPPrefix": { + "properties": { + "sku": { + "$ref": "#/definitions/PublicIPPrefixSku", + "description": "The public IP prefix SKU." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PublicIPPrefixPropertiesFormat", + "description": "Public IP prefix properties." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "zones": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of availability zones denoting the IP allocated for the resource needs to come from." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Public IP prefix resource." + }, + "PublicIPPrefixListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PublicIPPrefix" + }, + "description": "A list of public IP prefixes that exists in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListPublicIpPrefixes API service call." + }, + "ReferencedPublicIpAddress": { + "properties": { + "id": { + "type": "string", + "description": "The PublicIPAddress Reference." + } + }, + "description": "Reference to a public IP address." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/routeFilter.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/routeFilter.json new file mode 100644 index 000000000000..5418f063905f --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/routeFilter.json @@ -0,0 +1,822 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}": { + "delete": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_Delete", + "x-ms-examples": { + "RouteFilterDelete": { + "$ref": "./examples/RouteFilterDelete.json" + } + }, + "description": "Deletes the specified route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_Get", + "x-ms-examples": { + "RouteFilterGet": { + "$ref": "./examples/RouteFilterGet.json" + } + }, + "description": "Gets the specified route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced express route bgp peering resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route Filter resource.", + "schema": { + "$ref": "#/definitions/RouteFilter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_CreateOrUpdate", + "x-ms-examples": { + "RouteFilterCreate": { + "$ref": "./examples/RouteFilterCreate.json" + } + }, + "description": "Creates or updates a route filter in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "routeFilterParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RouteFilter" + }, + "description": "Parameters supplied to the create or update route filter operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route Filter resource.", + "schema": { + "$ref": "#/definitions/RouteFilter" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Route Filter resource.", + "schema": { + "$ref": "#/definitions/RouteFilter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_UpdateTags", + "description": "Updates tags of a route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update route filter tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route Filter resource.", + "schema": { + "$ref": "#/definitions/RouteFilter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update route filter tags": { + "$ref": "./examples/RouteFilterUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters": { + "get": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_ListByResourceGroup", + "x-ms-examples": { + "RouteFilterListByResourceGroup": { + "$ref": "./examples/RouteFilterListByResourceGroup.json" + } + }, + "description": "Gets all route filters in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Route Filter resources.", + "schema": { + "$ref": "#/definitions/RouteFilterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/routeFilters": { + "get": { + "tags": [ + "RouteFilters" + ], + "operationId": "RouteFilters_List", + "x-ms-examples": { + "RouteFilterList": { + "$ref": "./examples/RouteFilterList.json" + } + }, + "description": "Gets all route filters in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Route Filter resources.", + "schema": { + "$ref": "#/definitions/RouteFilterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}/routeFilterRules/{ruleName}": { + "delete": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_Delete", + "x-ms-examples": { + "RouteFilterRuleDelete": { + "$ref": "./examples/RouteFilterRuleDelete.json" + } + }, + "description": "Deletes the specified rule from a route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "ruleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Accepted." + }, + "204": { + "description": "Rule was deleted or not found." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_Get", + "x-ms-examples": { + "RouteFilterRuleGet": { + "$ref": "./examples/RouteFilterRuleGet.json" + } + }, + "description": "Gets the specified rule from a route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "ruleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the rule." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route Filter Rule resource.", + "schema": { + "$ref": "#/definitions/RouteFilterRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_CreateOrUpdate", + "x-ms-examples": { + "RouteFilterRuleCreate": { + "$ref": "./examples/RouteFilterRuleCreate.json" + } + }, + "description": "Creates or updates a route in the specified route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "name": "ruleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter rule." + }, + { + "name": "routeFilterRuleParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RouteFilterRule" + }, + "description": "Parameters supplied to the create or update route filter rule operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Route Filter Rule resource.", + "schema": { + "$ref": "#/definitions/RouteFilterRule" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Route Filter Rule resource.", + "schema": { + "$ref": "#/definitions/RouteFilterRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}/routeFilterRules": { + "get": { + "tags": [ + "RouteFilterRules" + ], + "operationId": "RouteFilterRules_ListByRouteFilter", + "x-ms-examples": { + "RouteFilterRuleListByRouteFilter": { + "$ref": "./examples/RouteFilterRuleListByRouteFilter.json" + } + }, + "description": "Gets all RouteFilterRules in a route filter.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeFilterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route filter." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Route Filter Rule resources.", + "schema": { + "$ref": "#/definitions/RouteFilterRuleListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "RouteFilterRulePropertiesFormat": { + "required": [ + "access", + "routeFilterRuleType", + "communities" + ], + "properties": { + "access": { + "$ref": "./network.json#/definitions/Access", + "description": "The access type of the rule." + }, + "routeFilterRuleType": { + "type": "string", + "description": "The rule type of the rule.", + "enum": [ + "Community" + ], + "x-ms-enum": { + "name": "RouteFilterRuleType", + "modelAsString": true + } + }, + "communities": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The collection for bgp community values to filter on. e.g. ['12076:5010','12076:5020']." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the route filter rule resource." + } + }, + "description": "Route Filter Rule Resource." + }, + "RouteFilterRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteFilterRulePropertiesFormat", + "description": "Properties of the route filter rule." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Route Filter Rule Resource." + }, + "PatchRouteFilterRule": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteFilterRulePropertiesFormat", + "description": "Properties of the route filter rule." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Route Filter Rule Resource." + }, + "RouteFilterPropertiesFormat": { + "properties": { + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteFilterRule" + }, + "description": "Collection of RouteFilterRules contained within a route filter." + }, + "peerings": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitPeering" + }, + "description": "A collection of references to express route circuit peerings." + }, + "ipv6Peerings": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./expressRouteCircuit.json#/definitions/ExpressRouteCircuitPeering" + }, + "description": "A collection of references to express route circuit ipv6 peerings." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the route filter resource." + } + }, + "description": "Route Filter Resource." + }, + "RouteFilter": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteFilterPropertiesFormat", + "description": "Properties of the route filter." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Route Filter Resource." + }, + "PatchRouteFilter": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteFilterPropertiesFormat", + "description": "Properties of the route filter." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Route Filter Resource." + }, + "RouteFilterListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteFilter" + }, + "description": "A list of route filters in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListRouteFilters API service call." + }, + "RouteFilterRuleListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteFilterRule" + }, + "description": "A list of RouteFilterRules in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListRouteFilterRules API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/routeTable.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/routeTable.json new file mode 100644 index 000000000000..716093c1e8a4 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/routeTable.json @@ -0,0 +1,755 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}": { + "delete": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_Delete", + "description": "Deletes the specified route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "200": { + "description": "Request successful. Operation to delete was accepted." + }, + "202": { + "description": "Accepted. If route table not found returned synchronously, otherwise if found returned asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete route table": { + "$ref": "./examples/RouteTableDelete.json" + } + } + }, + "get": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_Get", + "description": "Gets the specified route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting RouteTable resource.", + "schema": { + "$ref": "#/definitions/RouteTable" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get route table": { + "$ref": "./examples/RouteTableGet.json" + } + } + }, + "put": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_CreateOrUpdate", + "description": "Create or updates a route table in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RouteTable" + }, + "description": "Parameters supplied to the create or update route table operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting RouteTable resource.", + "schema": { + "$ref": "#/definitions/RouteTable" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting RouteTable resource.", + "schema": { + "$ref": "#/definitions/RouteTable" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create route table": { + "$ref": "./examples/RouteTableCreate.json" + }, + "Create route table with route": { + "$ref": "./examples/RouteTableCreateWithRoute.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_UpdateTags", + "description": "Updates a route table tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update route table tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting RouteTable resource.", + "schema": { + "$ref": "#/definitions/RouteTable" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update route table tags": { + "$ref": "./examples/RouteTableUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables": { + "get": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_List", + "description": "Gets all route tables in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of RouteTable resources.", + "schema": { + "$ref": "#/definitions/RouteTableListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List route tables in resource group": { + "$ref": "./examples/RouteTableList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/routeTables": { + "get": { + "tags": [ + "RouteTables" + ], + "operationId": "RouteTables_ListAll", + "description": "Gets all route tables in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of RouteTable resources.", + "schema": { + "$ref": "#/definitions/RouteTableListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all route tables": { + "$ref": "./examples/RouteTableListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}/routes/{routeName}": { + "delete": { + "tags": [ + "Routes" + ], + "operationId": "Routes_Delete", + "description": "Deletes the specified route from a route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "routeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Accepted." + }, + "204": { + "description": "Route was deleted or not found." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete route": { + "$ref": "./examples/RouteTableRouteDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "Routes" + ], + "operationId": "Routes_Get", + "description": "Gets the specified route from a route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "routeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Route resource.", + "schema": { + "$ref": "#/definitions/Route" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get route": { + "$ref": "./examples/RouteTableRouteGet.json" + } + } + }, + "put": { + "tags": [ + "Routes" + ], + "operationId": "Routes_CreateOrUpdate", + "description": "Creates or updates a route in the specified route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "name": "routeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route." + }, + { + "name": "routeParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Route" + }, + "description": "Parameters supplied to the create or update route operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Route resource.", + "schema": { + "$ref": "#/definitions/Route" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Route resource.", + "schema": { + "$ref": "#/definitions/Route" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create route": { + "$ref": "./examples/RouteTableRouteCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}/routes": { + "get": { + "tags": [ + "Routes" + ], + "operationId": "Routes_List", + "description": "Gets all routes in a route table.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the route table." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Route resources.", + "schema": { + "$ref": "#/definitions/RouteListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List routes": { + "$ref": "./examples/RouteTableRouteList.json" + } + } + } + } + }, + "definitions": { + "RoutePropertiesFormat": { + "properties": { + "addressPrefix": { + "type": "string", + "description": "The destination CIDR to which the route applies." + }, + "nextHopType": { + "$ref": "#/definitions/RouteNextHopType", + "description": "The type of Azure hop the packet should be sent to." + }, + "nextHopIpAddress": { + "type": "string", + "description": "The IP address packets should be forwarded to. Next hop values are only allowed in routes where the next hop type is VirtualAppliance." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the route resource." + } + }, + "required": [ + "nextHopType" + ], + "description": "Route resource." + }, + "Route": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RoutePropertiesFormat", + "description": "Properties of the route." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Route resource." + }, + "RouteTablePropertiesFormat": { + "properties": { + "routes": { + "type": "array", + "items": { + "$ref": "#/definitions/Route" + }, + "description": "Collection of routes contained within a route table." + }, + "subnets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./virtualNetwork.json#/definitions/Subnet" + }, + "description": "A collection of references to subnets." + }, + "disableBgpRoutePropagation": { + "type": "boolean", + "description": "Whether to disable the routes learned by BGP on that route table. True means disable." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the route table resource." + } + }, + "description": "Route Table resource." + }, + "RouteTable": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteTablePropertiesFormat", + "description": "Properties of the route table." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Route table resource." + }, + "RouteTableListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RouteTable" + }, + "description": "A list of route tables in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListRouteTable API service call." + }, + "RouteListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Route" + }, + "description": "A list of routes in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListRoute API service call." + }, + "RouteNextHopType": { + "type": "string", + "description": "The type of Azure hop the packet should be sent to.", + "enum": [ + "VirtualNetworkGateway", + "VnetLocal", + "Internet", + "VirtualAppliance", + "None" + ], + "x-ms-enum": { + "name": "RouteNextHopType", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/securityPartnerProvider.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/securityPartnerProvider.json new file mode 100644 index 000000000000..b502ae0724c0 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/securityPartnerProvider.json @@ -0,0 +1,441 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/securityPartnerProviders/{securityPartnerProviderName}": { + "delete": { + "tags": [ + "SecurityPartnerProviders" + ], + "operationId": "SecurityPartnerProviders_Delete", + "description": "Deletes the specified Security Partner Provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "securityPartnerProviderName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Security Partner Provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Security Partner Provider": { + "$ref": "./examples/SecurityPartnerProviderDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "SecurityPartnerProviders" + ], + "operationId": "SecurityPartnerProviders_Get", + "description": "Gets the specified Security Partner Provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "securityPartnerProviderName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Security Partner Provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a SecurityPartnerProvider resource.", + "schema": { + "$ref": "#/definitions/SecurityPartnerProvider" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Security Partner Provider": { + "$ref": "./examples/SecurityPartnerProviderGet.json" + } + } + }, + "put": { + "tags": [ + "SecurityPartnerProviders" + ], + "operationId": "SecurityPartnerProviders_CreateOrUpdate", + "description": "Creates or updates the specified Security Partner Provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "securityPartnerProviderName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Security Partner Provider." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SecurityPartnerProvider" + }, + "description": "Parameters supplied to the create or update Security Partner Provider operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting SecurityPartnerProvider resource.", + "schema": { + "$ref": "#/definitions/SecurityPartnerProvider" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting SecurityPartnerProvider resource.", + "schema": { + "$ref": "#/definitions/SecurityPartnerProvider" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Security Partner Provider": { + "$ref": "./examples/SecurityPartnerProviderPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "SecurityPartnerProviders" + ], + "operationId": "SecurityPartnerProviders_UpdateTags", + "description": "Updates tags of a Security Partner Provider resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "securityPartnerProviderName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Security Partner Provider." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update Security Partner Provider tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting SecurityPartnerProvider resource.", + "schema": { + "$ref": "#/definitions/SecurityPartnerProvider" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update Security Partner Provider Tags": { + "$ref": "./examples/SecurityPartnerProviderUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/securityPartnerProviders": { + "get": { + "tags": [ + "SecurityPartnerProviders" + ], + "operationId": "SecurityPartnerProviders_ListByResourceGroup", + "description": "Lists all Security Partner Providers in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of SecurityPartnerProvider resources.", + "schema": { + "$ref": "#/definitions/SecurityPartnerProviderListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Security Partner Providers for a given resource group": { + "$ref": "./examples/SecurityPartnerProviderListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/securityPartnerProviders": { + "get": { + "tags": [ + "SecurityPartnerProviders" + ], + "operationId": "SecurityPartnerProviders_List", + "description": "Gets all the Security Partner Providers in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of SecurityPartnerProvider resources.", + "schema": { + "$ref": "#/definitions/SecurityPartnerProviderListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all Security Partner Providers for a given subscription": { + "$ref": "./examples/SecurityPartnerProviderListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "SecurityPartnerProviderPropertiesFormat": { + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the Security Partner Provider resource." + }, + "securityProviderName": { + "description": "The security provider name.", + "$ref": "#/definitions/SecurityPartnerProvidersecurityProviderName" + }, + "connectionStatus": { + "readOnly": true, + "description": "The connection status with the Security Partner Provider.", + "$ref": "#/definitions/SecurityPartnerProviderConnectionStatus" + }, + "virtualHub": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The virtualHub to which the Security Partner Provider belongs." + } + }, + "description": "Properties of the Security Partner Provider." + }, + "SecurityPartnerProvider": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SecurityPartnerProviderPropertiesFormat", + "description": "Properties of the Security Partner Provider." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Security Partner Provider resource." + }, + "SecurityPartnerProviderListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SecurityPartnerProvider" + }, + "description": "List of Security Partner Providers in a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListSecurityPartnerProviders API service call." + }, + "SecurityPartnerProvidersecurityProviderName": { + "type": "string", + "description": "The Security Providers.", + "enum": [ + "ZScaler", + "IBoss", + "Checkpoint" + ], + "x-ms-enum": { + "name": "SecurityProviderName", + "modelAsString": true + } + }, + "SecurityPartnerProviderConnectionStatus": { + "type": "string", + "description": "The current state of the connection with Security Partner Provider.", + "readOnly": true, + "enum": [ + "Unknown", + "PartiallyConnected", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "SecurityPartnerProviderConnectionStatus", + "modelAsString": true + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/serviceCommunity.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/serviceCommunity.json new file mode 100644 index 000000000000..b3cbee57eca1 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/serviceCommunity.json @@ -0,0 +1,158 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/bgpServiceCommunities": { + "get": { + "tags": [ + "BgpServiceCommunities" + ], + "operationId": "BgpServiceCommunities_List", + "x-ms-examples": { + "ServiceCommunityList": { + "$ref": "./examples/ServiceCommunityList.json" + } + }, + "description": "Gets all the available bgp service communities.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of BgpServiceCommunity resources.", + "schema": { + "$ref": "#/definitions/BgpServiceCommunityListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "BGPCommunity": { + "properties": { + "serviceSupportedRegion": { + "type": "string", + "description": "The region which the service support. e.g. For O365, region is Global." + }, + "communityName": { + "type": "string", + "description": "The name of the bgp community. e.g. Skype." + }, + "communityValue": { + "type": "string", + "description": "The value of the bgp community. For more information: https://docs.microsoft.com/en-us/azure/expressroute/expressroute-routing." + }, + "communityPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The prefixes that the bgp community contains." + }, + "isAuthorizedToUse": { + "type": "boolean", + "description": "Customer is authorized to use bgp community or not." + }, + "serviceGroup": { + "type": "string", + "description": "The service group of the bgp community contains." + } + }, + "description": "Contains bgp community information offered in Service Community resources." + }, + "BgpServiceCommunityPropertiesFormat": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the bgp community. e.g. Skype." + }, + "bgpCommunities": { + "type": "array", + "items": { + "$ref": "#/definitions/BGPCommunity" + }, + "description": "A list of bgp communities." + } + }, + "description": "Properties of Service Community." + }, + "BgpServiceCommunity": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/BgpServiceCommunityPropertiesFormat", + "description": "Properties of the BGP service community." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Service Community Properties." + }, + "BgpServiceCommunityListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BgpServiceCommunity" + }, + "description": "A list of service community resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListServiceCommunity API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/serviceEndpointPolicy.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/serviceEndpointPolicy.json new file mode 100644 index 000000000000..ac84eb485283 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/serviceEndpointPolicy.json @@ -0,0 +1,742 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}": { + "delete": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_Delete", + "description": "Deletes the specified service endpoint policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_Get", + "description": "Gets the specified service Endpoint Policies in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ServiceEndpointPolicy resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get service endPoint Policy": { + "$ref": "./examples/ServiceEndpointPolicyGet.json" + } + } + }, + "put": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_CreateOrUpdate", + "description": "Creates or updates a service Endpoint Policies.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + }, + "description": "Parameters supplied to the create or update service endpoint policy operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting ServiceEndpointPolicy resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting ServiceEndpointPolicy resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyCreate.json" + }, + "Create service endpoint policy with definition": { + "$ref": "./examples/ServiceEndpointPolicyCreateWithDefinition.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_UpdateTags", + "description": "Updates tags of a service endpoint policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update service endpoint policy tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ServiceEndpointPolicy resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update service endpoint policy tags": { + "$ref": "./examples/ServiceEndpointPolicyUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ServiceEndpointPolicies": { + "get": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_List", + "description": "Gets all the service endpoint policies in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ServiceEndpointPolicy resources.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies": { + "get": { + "tags": [ + "ServiceEndpointPolicies" + ], + "operationId": "ServiceEndpointPolicies_ListByResourceGroup", + "description": "Gets all service endpoint Policies in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ServiceEndpointPolicy resources.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List resource group service endpoint policies": { + "$ref": "./examples/ServiceEndpointPolicyList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}/serviceEndpointPolicyDefinitions/{serviceEndpointPolicyDefinitionName}": { + "delete": { + "tags": [ + "ServiceEndpointPolicyDefinitions" + ], + "operationId": "ServiceEndpointPolicyDefinitions_Delete", + "description": "Deletes the specified ServiceEndpoint policy definitions.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Service Endpoint Policy." + }, + { + "name": "serviceEndpointPolicyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy definition." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete service endpoint policy definitions from service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyDefinitionDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "serviceEndpointPolicyDefinitions" + ], + "operationId": "ServiceEndpointPolicyDefinitions_Get", + "description": "Get the specified service endpoint policy definitions from service endpoint policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy name." + }, + { + "name": "serviceEndpointPolicyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy definition name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting ServiceEndpointPolicyDefinition resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get service endpoint definition in service endpoint policy": { + "$ref": "./examples/ServiceEndpointPolicyDefinitionGet.json" + } + } + }, + "put": { + "tags": [ + "serviceEndpointPolicyDefinitions" + ], + "operationId": "ServiceEndpointPolicyDefinitions_CreateOrUpdate", + "description": "Creates or updates a service endpoint policy definition in the specified service endpoint policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy." + }, + { + "name": "serviceEndpointPolicyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy definition name." + }, + { + "name": "ServiceEndpointPolicyDefinitions", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + }, + "description": "Parameters supplied to the create or update service endpoint policy operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ServiceEndpointPolicyDefinition resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ServiceEndpointPolicyDefinition resource.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create service endpoint policy definition": { + "$ref": "./examples/ServiceEndpointPolicyDefinitionCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}/serviceEndpointPolicyDefinitions": { + "get": { + "tags": [ + "ServiceEndpointPolicyDefinitions" + ], + "operationId": "ServiceEndpointPolicyDefinitions_ListByResourceGroup", + "description": "Gets all service endpoint policy definitions in a service end point policy.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "serviceEndpointPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the service endpoint policy name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of ServiceEndpointPolicyDefinition resources.", + "schema": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinitionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List service endpoint definitions in service end point policy": { + "$ref": "./examples/ServiceEndpointPolicyDefinitionList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ServiceEndpointPolicyDefinitionPropertiesFormat": { + "properties": { + "description": { + "type": "string", + "description": "A description for this rule. Restricted to 140 chars." + }, + "service": { + "type": "string", + "description": "Service endpoint name." + }, + "serviceResources": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of service resources." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service endpoint policy definition resource." + } + }, + "description": "Service Endpoint policy definition resource." + }, + "ServiceEndpointPolicyDefinition": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceEndpointPolicyDefinitionPropertiesFormat", + "description": "Properties of the service endpoint policy definition." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Service Endpoint policy definitions." + }, + "ServiceEndpointPolicyDefinitionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + }, + "description": "The service endpoint policy definition in a service endpoint policy." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListServiceEndpointPolicyDefinition API service call. Retrieves all service endpoint policy definition that belongs to a service endpoint policy." + }, + "ServiceEndpointPolicyPropertiesFormat": { + "properties": { + "serviceEndpointPolicyDefinitions": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPolicyDefinition" + }, + "description": "A collection of service endpoint policy definitions of the service endpoint policy." + }, + "subnets": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./virtualNetwork.json#/definitions/Subnet" + }, + "description": "A collection of references to subnets." + }, + "resourceGuid": { + "type": "string", + "readOnly": true, + "description": "The resource GUID property of the service endpoint policy resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service endpoint policy resource." + } + }, + "description": "Service Endpoint Policy resource." + }, + "ServiceEndpointPolicy": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceEndpointPolicyPropertiesFormat", + "description": "Properties of the service end point policy." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Service End point policy resource." + }, + "ServiceEndpointPolicyListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPolicy" + }, + "description": "A list of ServiceEndpointPolicy resources." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListServiceEndpointPolicies API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/serviceTags.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/serviceTags.json new file mode 100644 index 000000000000..68343be3accd --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/serviceTags.json @@ -0,0 +1,166 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/locations/{location}/serviceTags": { + "get": { + "operationId": "ServiceTags_List", + "description": "Gets a list of service tag information resources.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location that will be used as a reference for version (not as a filter based on location, you will get the list of service tags with prefix details across all regions but limited to the cloud that your subscription belongs to)." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns a list of service tag information resources.", + "schema": { + "$ref": "#/definitions/ServiceTagsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get list of service tags": { + "$ref": "./examples/ServiceTagsList.json" + } + } + } + } + }, + "definitions": { + "ServiceTagsListResult": { + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the cloud." + }, + "id": { + "type": "string", + "readOnly": true, + "description": "The ID of the cloud." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The azure resource type." + }, + "changeNumber": { + "type": "string", + "readOnly": true, + "description": "The iteration number." + }, + "cloud": { + "type": "string", + "readOnly": true, + "description": "The name of the cloud." + }, + "values": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceTagInformation" + }, + "readOnly": true, + "description": "The list of service tag information resources." + } + }, + "description": "Response for the ListServiceTags API service call." + }, + "ServiceTagInformation": { + "properties": { + "properties": { + "$ref": "#/definitions/ServiceTagInformationPropertiesFormat", + "readOnly": true, + "description": "Properties of the service tag information." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of service tag." + }, + "id": { + "type": "string", + "readOnly": true, + "description": "The ID of service tag." + } + }, + "description": "The service tag information." + }, + "ServiceTagInformationPropertiesFormat": { + "properties": { + "changeNumber": { + "type": "string", + "readOnly": true, + "description": "The iteration number of service tag." + }, + "region": { + "type": "string", + "readOnly": true, + "description": "The region of service tag." + }, + "systemService": { + "type": "string", + "readOnly": true, + "description": "The name of system service." + }, + "addressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "The list of IP address prefixes." + } + }, + "description": "Properties of the service tag information." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/usage.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/usage.json new file mode 100644 index 000000000000..48be72e754ec --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/usage.json @@ -0,0 +1,160 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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.Network/locations/{location}/usages": { + "get": { + "tags": [ + "Usages" + ], + "operationId": "Usages_List", + "description": "List network usages for a subscription.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The location where resource usage is queried.", + "pattern": "^[-\\w\\._ ]+$" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Usage resources.", + "schema": { + "$ref": "#/definitions/UsagesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List usages": { + "$ref": "./examples/UsageList.json" + }, + "List usages spaced location": { + "$ref": "./examples/UsageListSpacedLocation.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "UsageName": { + "properties": { + "value": { + "type": "string", + "description": "A string describing the resource name." + }, + "localizedValue": { + "type": "string", + "description": "A localized string describing the resource name." + } + }, + "description": "The usage names." + }, + "Usage": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Resource identifier." + }, + "unit": { + "type": "string", + "description": "An enum describing the unit of measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "UsageUnit", + "modelAsString": true + } + }, + "currentValue": { + "type": "integer", + "format": "int64", + "description": "The current value of the usage." + }, + "limit": { + "type": "integer", + "format": "int64", + "description": "The limit of usage." + }, + "name": { + "$ref": "#/definitions/UsageName", + "description": "The name of the type of usage." + } + }, + "required": [ + "unit", + "currentValue", + "limit", + "name" + ], + "description": "The network resource usage." + }, + "UsagesListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "The list network resource usages." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "The list usages operation response." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualNetwork.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualNetwork.json new file mode 100644 index 000000000000..1be3eab44861 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualNetwork.json @@ -0,0 +1,1965 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}": { + "delete": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_Delete", + "description": "Deletes the specified virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete virtual network": { + "$ref": "./examples/VirtualNetworkDelete.json" + } + } + }, + "get": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_Get", + "description": "Gets the specified virtual network by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting VirtualNetwork resource.", + "schema": { + "$ref": "#/definitions/VirtualNetwork" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get virtual network": { + "$ref": "./examples/VirtualNetworkGet.json" + }, + "Get virtual network with a delegated subnet": { + "$ref": "./examples/VirtualNetworkGetWithSubnetDelegation.json" + }, + "Get virtual network with service association links": { + "$ref": "./examples/VirtualNetworkGetWithServiceAssociationLink.json" + } + } + }, + "put": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_CreateOrUpdate", + "description": "Creates or updates a virtual network in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetwork" + }, + "description": "Parameters supplied to the create or update virtual network operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetwork resource.", + "schema": { + "$ref": "#/definitions/VirtualNetwork" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetwork resource.", + "schema": { + "$ref": "#/definitions/VirtualNetwork" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create virtual network": { + "$ref": "./examples/VirtualNetworkCreate.json" + }, + "Create virtual network with subnet": { + "$ref": "./examples/VirtualNetworkCreateSubnet.json" + }, + "Create virtual network with subnet containing address prefixes": { + "$ref": "./examples/VirtualNetworkCreateSubnetWithAddressPrefixes.json" + }, + "Create virtual network with Bgp Communities": { + "$ref": "./examples/VirtualNetworkCreateWithBgpCommunities.json" + }, + "Create virtual network with service endpoints": { + "$ref": "./examples/VirtualNetworkCreateServiceEndpoints.json" + }, + "Create virtual network with service endpoints and service endpoint policy": { + "$ref": "./examples/VirtualNetworkCreateServiceEndpointPolicy.json" + }, + "Create virtual network with delegated subnets": { + "$ref": "./examples/VirtualNetworkCreateSubnetWithDelegation.json" + } + } + }, + "patch": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_UpdateTags", + "description": "Updates a virtual network tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update virtual network tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetwork resource.", + "schema": { + "$ref": "#/definitions/VirtualNetwork" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update virtual network tags": { + "$ref": "./examples/VirtualNetworkUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualNetworks": { + "get": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_ListAll", + "description": "Gets all virtual networks in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetwork resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all virtual networks": { + "$ref": "./examples/VirtualNetworkListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks": { + "get": { + "tags": [ + "VirtualNetworks" + ], + "operationId": "VirtualNetworks_List", + "description": "Gets all virtual networks in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetwork resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual networks in resource group": { + "$ref": "./examples/VirtualNetworkList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}": { + "delete": { + "tags": [ + "Subnets" + ], + "operationId": "Subnets_Delete", + "description": "Deletes the specified subnet.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete subnet": { + "$ref": "./examples/SubnetDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "Subnets" + ], + "operationId": "Subnets_Get", + "description": "Gets the specified subnet by virtual network and resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting Subnet resource.", + "schema": { + "$ref": "#/definitions/Subnet" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get subnet": { + "$ref": "./examples/SubnetGet.json" + }, + "Get subnet with a delegation": { + "$ref": "./examples/SubnetGetWithDelegation.json" + } + } + }, + "put": { + "tags": [ + "Subnets" + ], + "operationId": "Subnets_CreateOrUpdate", + "description": "Creates or updates a subnet in the specified virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "name": "subnetParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Subnet" + }, + "description": "Parameters supplied to the create or update subnet operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting Subnet resource.", + "schema": { + "$ref": "#/definitions/Subnet" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting Subnet resource.", + "schema": { + "$ref": "#/definitions/Subnet" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create subnet": { + "$ref": "./examples/SubnetCreate.json" + }, + "Create subnet with service endpoints": { + "$ref": "./examples/SubnetCreateServiceEndpoint.json" + }, + "Create subnet with a delegation": { + "$ref": "./examples/SubnetCreateWithDelegation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/PrepareNetworkPolicies": { + "post": { + "operationId": "Subnets_PrepareNetworkPolicies", + "description": "Prepares a subnet by applying network intent policies.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "name": "prepareNetworkPoliciesRequestParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrepareNetworkPoliciesRequest" + }, + "description": "Parameters supplied to prepare subnet by applying network intent policies." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Preparing subnet by applying network intent policies is successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Prepare Network Policies": { + "$ref": "./examples/SubnetPrepareNetworkPolicies.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/UnprepareNetworkPolicies": { + "post": { + "operationId": "Subnets_UnprepareNetworkPolicies", + "description": "Unprepares a subnet by removing network intent policies.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "name": "unprepareNetworkPoliciesRequestParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/UnprepareNetworkPoliciesRequest" + }, + "description": "Parameters supplied to unprepare subnet to remove network intent policies." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Unpreparing subnet by removing network intent policies is successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Unprepare Network Policies": { + "$ref": "./examples/SubnetUnprepareNetworkPolicies.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/ResourceNavigationLinks": { + "get": { + "operationId": "ResourceNavigationLinks_List", + "description": "Gets a list of resource navigation links for a subnet.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of resource navigation links for the subnet.", + "schema": { + "$ref": "#/definitions/ResourceNavigationLinksListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Resource Navigation Links": { + "$ref": "./examples/VirtualNetworkGetResourceNavigationLinks.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/ServiceAssociationLinks": { + "get": { + "operationId": "ServiceAssociationLinks_List", + "description": "Gets a list of service association links for a subnet.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "subnetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the subnet." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of service association links for the subnet.", + "schema": { + "$ref": "#/definitions/ServiceAssociationLinksListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Service Association Links": { + "$ref": "./examples/VirtualNetworkGetServiceAssociationLinks.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets": { + "get": { + "tags": [ + "Subnets" + ], + "operationId": "Subnets_List", + "description": "Gets all subnets in a virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Subnet resources.", + "schema": { + "$ref": "#/definitions/SubnetListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List subnets": { + "$ref": "./examples/SubnetList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/virtualNetworkPeerings/{virtualNetworkPeeringName}": { + "delete": { + "tags": [ + "VirtualNetworkPeerings" + ], + "operationId": "VirtualNetworkPeerings_Delete", + "description": "Deletes the specified virtual network peering.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "virtualNetworkPeeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete peering": { + "$ref": "./examples/VirtualNetworkPeeringDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "VirtualNetworkPeerings" + ], + "operationId": "VirtualNetworkPeerings_Get", + "description": "Gets the specified virtual network peering.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "virtualNetworkPeeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting VirtualNetworkPeering resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get peering": { + "$ref": "./examples/VirtualNetworkPeeringGet.json" + } + } + }, + "put": { + "tags": [ + "VirtualNetworkPeerings" + ], + "operationId": "VirtualNetworkPeerings_CreateOrUpdate", + "description": "Creates or updates a peering in the specified virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "virtualNetworkPeeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "name": "VirtualNetworkPeeringParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkPeering" + }, + "description": "Parameters supplied to the create or update virtual network peering operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkPeering resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkPeering" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetworkPeering resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create peering": { + "$ref": "./examples/VirtualNetworkPeeringCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/virtualNetworkPeerings": { + "get": { + "tags": [ + "VirtualNetworkPeerings" + ], + "operationId": "VirtualNetworkPeerings_List", + "description": "Gets all virtual network peerings in a virtual network.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetworkPeering resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkPeeringListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List peerings": { + "$ref": "./examples/VirtualNetworkPeeringList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/CheckIPAddressAvailability": { + "get": { + "operationId": "VirtualNetworks_CheckIPAddressAvailability", + "description": "Checks whether a private IP address is available for use.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "name": "ipAddress", + "in": "query", + "required": true, + "type": "string", + "description": "The private IP address to be verified." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Private IP address availability and list of other free addresses if the requested one is not available.", + "schema": { + "$ref": "#/definitions/IPAddressAvailabilityResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Check IP address availability": { + "$ref": "./examples/VirtualNetworkCheckIPAddressAvailability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/usages": { + "get": { + "operationId": "VirtualNetworks_ListUsage", + "description": "Lists usage stats.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Usage stats for vnet.", + "schema": { + "$ref": "#/definitions/VirtualNetworkListUsageResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "VnetGetUsage": { + "$ref": "./examples/VirtualNetworkListUsage.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ServiceAssociationLinkPropertiesFormat": { + "properties": { + "linkedResourceType": { + "type": "string", + "description": "Resource type of the linked resource." + }, + "link": { + "type": "string", + "description": "Link to the external resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service association link resource." + }, + "allowDelete": { + "type": "boolean", + "description": "If true, the resource can be deleted." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of locations." + } + }, + "description": "Properties of ServiceAssociationLink." + }, + "ServiceAssociationLink": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceAssociationLinkPropertiesFormat", + "description": "Resource navigation link properties format." + }, + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "ServiceAssociationLink resource." + }, + "ResourceNavigationLinkFormat": { + "properties": { + "linkedResourceType": { + "type": "string", + "description": "Resource type of the linked resource." + }, + "link": { + "type": "string", + "description": "Link to the external resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the resource navigation link resource." + } + }, + "description": "Properties of ResourceNavigationLink." + }, + "ResourceNavigationLink": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ResourceNavigationLinkFormat", + "description": "Resource navigation link properties format." + }, + "name": { + "type": "string", + "description": "Name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Resource navigation link identifier." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "ResourceNavigationLink resource." + }, + "ServiceDelegationPropertiesFormat": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the service to whom the subnet should be delegated (e.g. Microsoft.Sql/servers)." + }, + "actions": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The actions permitted to the service upon delegation." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service delegation resource." + } + }, + "description": "Properties of a service delegation." + }, + "Delegation": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceDelegationPropertiesFormat", + "description": "Properties of the subnet." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a subnet. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Details the service to which the subnet is delegated." + }, + "SubnetPropertiesFormat": { + "properties": { + "addressPrefix": { + "type": "string", + "description": "The address prefix for the subnet." + }, + "addressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of address prefixes for the subnet." + }, + "networkSecurityGroup": { + "$ref": "./networkSecurityGroup.json#/definitions/NetworkSecurityGroup", + "description": "The reference to the NetworkSecurityGroup resource." + }, + "routeTable": { + "$ref": "./routeTable.json#/definitions/RouteTable", + "description": "The reference to the RouteTable resource." + }, + "natGateway": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Nat gateway associated with this subnet." + }, + "serviceEndpoints": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpointPropertiesFormat" + }, + "description": "An array of service endpoints." + }, + "serviceEndpointPolicies": { + "type": "array", + "items": { + "$ref": "./serviceEndpointPolicy.json#/definitions/ServiceEndpointPolicy" + }, + "description": "An array of service endpoint policies." + }, + "privateEndpoints": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./privateEndpoint.json#/definitions/PrivateEndpoint" + }, + "description": "An array of references to private endpoints." + }, + "ipConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/IPConfiguration" + }, + "description": "An array of references to the network interface IP configurations using subnet." + }, + "ipConfigurationProfiles": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkProfile.json#/definitions/IPConfigurationProfile" + }, + "description": "Array of IP configuration profiles which reference this subnet." + }, + "ipAllocations": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Array of IpAllocation which reference this subnet." + }, + "resourceNavigationLinks": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ResourceNavigationLink" + }, + "description": "An array of references to the external resources using subnet." + }, + "serviceAssociationLinks": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ServiceAssociationLink" + }, + "description": "An array of references to services injecting into this subnet." + }, + "delegations": { + "type": "array", + "items": { + "$ref": "#/definitions/Delegation" + }, + "description": "An array of references to the delegations on the subnet." + }, + "purpose": { + "type": "string", + "readOnly": true, + "description": "A read-only string identifying the intention of use for this subnet based on delegations and other user-defined properties." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the subnet resource." + }, + "privateEndpointNetworkPolicies": { + "type": "string", + "description": "Enable or Disable apply network policies on private end point in the subnet." + }, + "privateLinkServiceNetworkPolicies": { + "type": "string", + "description": "Enable or Disable apply network policies on private link service in the subnet." + } + }, + "description": "Properties of the subnet." + }, + "ServiceEndpointPropertiesFormat": { + "properties": { + "service": { + "type": "string", + "description": "The type of the endpoint service." + }, + "locations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of locations." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the service endpoint resource." + } + }, + "description": "The service endpoint properties." + }, + "VirtualNetworkPeeringPropertiesFormat": { + "properties": { + "allowVirtualNetworkAccess": { + "type": "boolean", + "description": "Whether the VMs in the local virtual network space would be able to access the VMs in remote virtual network space." + }, + "allowForwardedTraffic": { + "type": "boolean", + "description": "Whether the forwarded traffic from the VMs in the local virtual network will be allowed/disallowed in remote virtual network." + }, + "allowGatewayTransit": { + "type": "boolean", + "description": "If gateway links can be used in remote virtual networking to link to this virtual network." + }, + "useRemoteGateways": { + "type": "boolean", + "description": "If remote gateways can be used on this virtual network. If the flag is set to true, and allowGatewayTransit on remote peering is also true, virtual network will use gateways of remote virtual network for transit. Only one peering can have this flag set to true. This flag cannot be set if virtual network already has a gateway." + }, + "remoteVirtualNetwork": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the remote virtual network. The remote virtual network can be in the same or different region (preview). See here to register for the preview and learn more (https://docs.microsoft.com/en-us/azure/virtual-network/virtual-network-create-peering)." + }, + "remoteAddressSpace": { + "$ref": "#/definitions/AddressSpace", + "description": "The reference to the remote virtual network address space." + }, + "peeringState": { + "type": "string", + "description": "The status of the virtual network peering.", + "enum": [ + "Initiated", + "Connected", + "Disconnected" + ], + "x-ms-enum": { + "name": "VirtualNetworkPeeringState", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network peering resource." + } + }, + "description": "Properties of the virtual network peering." + }, + "Subnet": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SubnetPropertiesFormat", + "description": "Properties of the subnet." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Subnet in a virtual network resource." + }, + "VirtualNetworkPeering": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkPeeringPropertiesFormat", + "description": "Properties of the virtual network peering." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Peerings in a virtual network resource." + }, + "SubnetListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Subnet" + }, + "description": "The subnets in a virtual network." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListSubnets API service callRetrieves all subnet that belongs to a virtual network." + }, + "ResourceNavigationLinksListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceNavigationLink" + }, + "description": "The resource navigation links in a subnet." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ResourceNavigationLinks_List operation." + }, + "ServiceAssociationLinksListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceAssociationLink" + }, + "description": "The service association links in a subnet." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ServiceAssociationLinks_List operation." + }, + "VirtualNetworkPeeringListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkPeering" + }, + "description": "The peerings in a virtual network." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListSubnets API service call. Retrieves all subnets that belong to a virtual network." + }, + "VirtualNetworkPropertiesFormat": { + "properties": { + "addressSpace": { + "$ref": "#/definitions/AddressSpace", + "description": "The AddressSpace that contains an array of IP address ranges that can be used by subnets." + }, + "dhcpOptions": { + "$ref": "#/definitions/DhcpOptions", + "description": "The dhcpOptions that contains an array of DNS servers available to VMs deployed in the virtual network." + }, + "subnets": { + "type": "array", + "items": { + "$ref": "#/definitions/Subnet" + }, + "description": "A list of subnets in a Virtual Network." + }, + "virtualNetworkPeerings": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkPeering" + }, + "description": "A list of peerings in a Virtual Network." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resourceGuid property of the Virtual Network resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network resource." + }, + "enableDdosProtection": { + "type": "boolean", + "default": false, + "description": "Indicates if DDoS protection is enabled for all the protected resources in the virtual network. It requires a DDoS protection plan associated with the resource." + }, + "enableVmProtection": { + "type": "boolean", + "default": false, + "description": "Indicates if VM protection is enabled for all the subnets in the virtual network." + }, + "ddosProtectionPlan": { + "$ref": "./network.json#/definitions/SubResource", + "default": null, + "description": "The DDoS protection plan associated with the virtual network." + }, + "bgpCommunities": { + "$ref": "#/definitions/VirtualNetworkBgpCommunities", + "default": null, + "description": "Bgp Communities sent over ExpressRoute with each route corresponding to a prefix in this VNET." + }, + "ipAllocations": { + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "Array of IpAllocation which reference this VNET." + } + }, + "description": "Properties of the virtual network." + }, + "VirtualNetwork": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkPropertiesFormat", + "description": "Properties of the virtual network." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Virtual Network resource." + }, + "VirtualNetworkListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetwork" + }, + "description": "A list of VirtualNetwork resources in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListVirtualNetworks API service call." + }, + "AddressSpace": { + "properties": { + "addressPrefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of address blocks reserved for this virtual network in CIDR notation." + } + }, + "description": "AddressSpace contains an array of IP address ranges that can be used by subnets of the virtual network." + }, + "DhcpOptions": { + "properties": { + "dnsServers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of DNS servers IP addresses." + } + }, + "description": "DhcpOptions contains an array of DNS servers available to VMs deployed in the virtual network. Standard DHCP option for a subnet overrides VNET DHCP options." + }, + "VirtualNetworkBgpCommunities": { + "properties": { + "virtualNetworkCommunity": { + "type": "string", + "description": "The BGP community associated with the virtual network." + }, + "regionalCommunity": { + "type": "string", + "readOnly": true, + "description": "The BGP community associated with the region of the virtual network." + } + }, + "required": [ + "virtualNetworkCommunity" + ], + "description": "Bgp Communities sent over ExpressRoute with each route corresponding to a prefix in this VNET." + }, + "IPAddressAvailabilityResult": { + "properties": { + "available": { + "type": "boolean", + "description": "Private IP address availability." + }, + "availableIPAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Contains other available private IP addresses if the asked for address is taken." + } + }, + "description": "Response for CheckIPAddressAvailability API service call." + }, + "VirtualNetworkListUsageResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/VirtualNetworkUsage" + }, + "description": "VirtualNetwork usage stats." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the virtual networks GetUsage API service call." + }, + "VirtualNetworkUsage": { + "properties": { + "currentValue": { + "type": "number", + "format": "double", + "readOnly": true, + "description": "Indicates number of IPs used from the Subnet." + }, + "id": { + "type": "string", + "readOnly": true, + "description": "Subnet identifier." + }, + "limit": { + "type": "number", + "format": "double", + "readOnly": true, + "description": "Indicates the size of the subnet." + }, + "name": { + "$ref": "#/definitions/VirtualNetworkUsageName", + "readOnly": true, + "description": "The name containing common and localized value for usage." + }, + "unit": { + "type": "string", + "readOnly": true, + "description": "Usage units. Returns 'Count'." + } + }, + "description": "Usage details for subnet." + }, + "VirtualNetworkUsageName": { + "properties": { + "localizedValue": { + "type": "string", + "readOnly": true, + "description": "Localized subnet size and usage string." + }, + "value": { + "type": "string", + "readOnly": true, + "description": "Subnet size and usage string." + } + }, + "description": "Usage strings container." + }, + "PrepareNetworkPoliciesRequest": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the service for which subnet is being prepared for." + }, + "networkIntentPolicyConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkIntentPolicyConfiguration" + }, + "description": "A list of NetworkIntentPolicyConfiguration." + } + }, + "description": "Details of PrepareNetworkPolicies for Subnet." + }, + "UnprepareNetworkPoliciesRequest": { + "properties": { + "serviceName": { + "type": "string", + "description": "The name of the service for which subnet is being unprepared for." + } + }, + "description": "Details of UnprepareNetworkPolicies for Subnet." + }, + "NetworkIntentPolicyConfiguration": { + "properties": { + "networkIntentPolicyName": { + "type": "string", + "description": "The name of the Network Intent Policy for storing in target subscription." + }, + "sourceNetworkIntentPolicy": { + "$ref": "#/definitions/NetworkIntentPolicy", + "description": "Source network intent policy." + } + }, + "description": "Details of NetworkIntentPolicyConfiguration for PrepareNetworkPoliciesRequest." + }, + "NetworkIntentPolicy": { + "properties": { + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Network Intent Policy resource." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualNetworkGateway.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualNetworkGateway.json new file mode 100644 index 000000000000..7e9d30992a04 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualNetworkGateway.json @@ -0,0 +1,3713 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}": { + "put": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_CreateOrUpdate", + "description": "Creates or updates a virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + }, + "description": "Parameters supplied to create or update virtual network gateway operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateVirtualNetworkGateway": { + "$ref": "./examples/VirtualNetworkGatewayUpdate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_Get", + "description": "Gets the specified virtual network gateway by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGateway": { + "$ref": "./examples/VirtualNetworkGatewayGet.json" + } + } + }, + "delete": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_Delete", + "description": "Deletes the specified virtual network gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DeleteVirtualNetworkGateway": { + "$ref": "./examples/VirtualNetworkGatewayDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_UpdateTags", + "description": "Updates a virtual network gateway tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update virtual network gateway tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateVirtualNetworkGatewayTags": { + "$ref": "./examples/VirtualNetworkGatewayUpdateTags.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways": { + "get": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_List", + "description": "Gets all virtual network gateways by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetworkGateway resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVirtualNetworkGatewaysinResourceGroup": { + "$ref": "./examples/VirtualNetworkGatewayList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/connections": { + "get": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_ListConnections", + "description": "Gets all the connections in a virtual network gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayListConnectionsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "VirtualNetworkGatewaysListConnections": { + "$ref": "./examples/VirtualNetworkGatewaysListConnections.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/reset": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_Reset", + "description": "Resets the primary of the virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "gatewayVip", + "in": "query", + "required": false, + "type": "string", + "description": "Virtual network gateway vip address supplied to the begin reset of the active-active feature enabled gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation reset the primary of the virtual network gateway.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ResetVirtualNetworkGateway": { + "$ref": "./examples/VirtualNetworkGatewayReset.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/resetvpnclientsharedkey": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_ResetVpnClientSharedKey", + "description": "Resets the VPN client shared key of the virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation reset the vpn client shared key of the virtual network gateway." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ResetVpnClientSharedKey": { + "$ref": "./examples/VirtualNetworkGatewayResetVpnClientSharedKey.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/generatevpnclientpackage": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_Generatevpnclientpackage", + "description": "Generates VPN client package for P2S client of the virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnClientParameters" + }, + "description": "Parameters supplied to the generate virtual network gateway VPN client package operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "VPN client package URL.", + "schema": { + "type": "string" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GenerateVPNClientPackage": { + "$ref": "./examples/VirtualNetworkGatewayGenerateVpnClientPackage.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/generatevpnprofile": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GenerateVpnProfile", + "description": "Generates VPN profile for P2S client of the virtual network gateway in the specified resource group. Used for IKEV2 and radius based authentication.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnClientParameters" + }, + "description": "Parameters supplied to the generate virtual network gateway VPN client package operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "VPN profile package URL.", + "schema": { + "type": "string" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GenerateVirtualNetworkGatewayVPNProfile": { + "$ref": "./examples/VirtualNetworkGatewayGenerateVpnProfile.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getvpnprofilepackageurl": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetVpnProfilePackageUrl", + "description": "Gets pre-generated VPN profile for P2S client of the virtual network gateway in the specified resource group. The profile needs to be generated first using generateVpnProfile.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "VPN profile package URL.", + "schema": { + "type": "string" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayVPNProfilePackageURL": { + "$ref": "./examples/VirtualNetworkGatewayGetVpnProfilePackageUrl.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getBgpPeerStatus": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetBgpPeerStatus", + "description": "The GetBgpPeerStatus operation retrieves the status of all BGP peers.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "peer", + "in": "query", + "required": false, + "type": "string", + "description": "The IP address of the peer to retrieve the status of." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of BGP peer statuses.", + "schema": { + "$ref": "#/definitions/BgpPeerStatusListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayBGPPeerStatus": { + "$ref": "./examples/VirtualNetworkGatewayGetBGPPeerStatus.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/supportedvpndevices": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_SupportedVpnDevices", + "description": "Gets a xml format representation for supported vpn devices.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Xml format representation for supported vpn devices.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVirtualNetworkGatewaySupportedVPNDevices": { + "$ref": "./examples/VirtualNetworkGatewaySupportedVpnDevice.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getLearnedRoutes": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetLearnedRoutes", + "description": "This operation retrieves a list of routes the virtual network gateway has learned, including routes learned from BGP peers.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of advertised BGP routes.", + "schema": { + "$ref": "#/definitions/GatewayRouteListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayLearnedRoutes": { + "$ref": "./examples/VirtualNetworkGatewayLearnedRoutes.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getAdvertisedRoutes": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetAdvertisedRoutes", + "description": "This operation retrieves a list of routes the virtual network gateway is advertising to the specified peer.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "peer", + "in": "query", + "required": true, + "type": "string", + "description": "The IP address of the peer." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of learned BGP routes.", + "schema": { + "$ref": "#/definitions/GatewayRouteListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayAdvertisedRoutes": { + "$ref": "./examples/VirtualNetworkGatewayGetAdvertisedRoutes.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/setvpnclientipsecparameters": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_SetVpnclientIpsecParameters", + "description": "The Set VpnclientIpsecParameters operation sets the vpnclient ipsec policy for P2S client of virtual network gateway in the specified resource group through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "vpnclientIpsecParams", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnClientIPsecParameters" + }, + "description": "Parameters supplied to the Begin Set vpnclient ipsec parameters of Virtual Network Gateway P2S client operation through Network resource provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation sets the specified vpnclient ipsec parameters for P2S client of the virtual network gateway.", + "schema": { + "$ref": "#/definitions/VpnClientIPsecParameters" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Set VirtualNetworkGateway VpnClientIpsecParameters": { + "$ref": "./examples/VirtualNetworkGatewaySetVpnClientIpsecParameters.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getvpnclientipsecparameters": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetVpnclientIpsecParameters", + "description": "The Get VpnclientIpsecParameters operation retrieves information about the vpnclient ipsec policy for P2S client of virtual network gateway in the specified resource group through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual network gateway name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the set vpnclient ipsec parameters for P2S client of VirtualNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/VpnClientIPsecParameters" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Get VirtualNetworkGateway VpnClientIpsecParameters": { + "$ref": "./examples/VirtualNetworkGatewayGetVpnClientIpsecParameters.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/vpndeviceconfigurationscript": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_VpnDeviceConfigurationScript", + "description": "Gets a xml format representation for vpn device configuration script.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection for which the configuration script is generated." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnDeviceScriptParameters" + }, + "description": "Parameters supplied to the generate vpn device script operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Xml format representation for vpn device configuration script.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVPNDeviceConfigurationScript": { + "$ref": "./examples/VirtualNetworkGatewayVpnDeviceConfigurationScript.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/startPacketCapture": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_StartPacketCapture", + "description": "Starts packet capture on virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VpnPacketCaptureStartParameters" + }, + "description": "Virtual network gateway packet capture parameters supplied to start packet capture on gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation packet capture started on virtual network gateway.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Start packet capture on virtual network gateway without filter": { + "$ref": "./examples/VirtualNetworkGatewayStartPacketCapture.json" + }, + "Start packet capture on virtual network gateway with filter": { + "$ref": "./examples/VirtualNetworkGatewayStartPacketCaptureFilterData.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/stopPacketCapture": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_StopPacketCapture", + "description": "Stops packet capture on virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnPacketCaptureStopParameters" + }, + "description": "Virtual network gateway packet capture parameters supplied to stop packet capture on gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation packet capture stopped on virtual network gateway.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Stop packet capture on virtual network gateway": { + "$ref": "./examples/VirtualNetworkGatewayStopPacketCapture.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}": { + "put": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_CreateOrUpdate", + "description": "Creates or updates a virtual network gateway connection in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + }, + "description": "Parameters supplied to the create or update virtual network gateway connection operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "CreateVirtualNetworkGatewayConnection_S2S": { + "$ref": "./examples/VirtualNetworkGatewayConnectionCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_Get", + "description": "Gets the specified virtual network gateway connection by resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayConnection": { + "$ref": "./examples/VirtualNetworkGatewayConnectionGet.json" + } + } + }, + "delete": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_Delete", + "description": "Deletes the specified virtual network Gateway connection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DeleteVirtualNetworkGatewayConnection": { + "$ref": "./examples/VirtualNetworkGatewayConnectionDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_UpdateTags", + "description": "Updates a virtual network gateway connection tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update virtual network gateway connection tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateVirtualNetworkGatewayConnectionTags": { + "$ref": "./examples/VirtualNetworkGatewayConnectionUpdateTags.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/sharedkey": { + "put": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_SetSharedKey", + "description": "The Put VirtualNetworkGatewayConnectionSharedKey operation sets the virtual network gateway connection shared key for passed virtual network gateway connection in the specified resource group through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual network gateway connection name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionSharedKey" + }, + "description": "Parameters supplied to the Begin Set Virtual Network Gateway connection Shared key operation throughNetwork resource provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request successful. The operation returns the resulting ConnectionSharedKey resource.", + "schema": { + "$ref": "#/definitions/ConnectionSharedKey" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting ConnectionSharedKey resource.", + "schema": { + "$ref": "#/definitions/ConnectionSharedKey" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "SetVirtualNetworkGatewayConnectionSharedKey": { + "$ref": "./examples/VirtualNetworkGatewayConnectionSetSharedKey.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_GetSharedKey", + "description": "The Get VirtualNetworkGatewayConnectionSharedKey operation retrieves information about the specified virtual network gateway connection shared key through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual network gateway connection shared key name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of VirtualNetworkGatewayConnection resources.", + "schema": { + "$ref": "#/definitions/ConnectionSharedKey" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayConnectionSharedKey": { + "$ref": "./examples/VirtualNetworkGatewayConnectionGetSharedKey.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections": { + "get": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_List", + "description": "The List VirtualNetworkGatewayConnections operation retrieves all the virtual network gateways connections created.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation resets the virtual network gateway connection shared key.", + "schema": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVirtualNetworkGatewayConnectionsinResourceGroup": { + "$ref": "./examples/VirtualNetworkGatewayConnectionsList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/sharedkey/reset": { + "post": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_ResetSharedKey", + "description": "The VirtualNetworkGatewayConnectionResetSharedKey operation resets the virtual network gateway connection shared key for passed virtual network gateway connection in the specified resource group through Network resource provider.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual network gateway connection reset shared key Name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ConnectionResetSharedKey" + }, + "description": "Parameters supplied to the begin reset virtual network gateway connection shared key operation through network resource provider." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation sets the virtual network gateway connection shared key.", + "schema": { + "$ref": "#/definitions/ConnectionResetSharedKey" + } + }, + "202": { + "description": "Request successful. The operation sets the virtual network gateway connection shared key." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ResetVirtualNetworkGatewayConnectionSharedKey": { + "$ref": "./examples/VirtualNetworkGatewayConnectionResetSharedKey.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/startPacketCapture": { + "post": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_StartPacketCapture", + "description": "Starts packet capture on virtual network gateway connection in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway connection." + }, + { + "name": "parameters", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/VpnPacketCaptureStartParameters" + }, + "description": "Virtual network gateway packet capture parameters supplied to start packet capture on gateway connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation packet capture started on virtual network gateway connection.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Start packet capture on virtual network gateway connection without filter": { + "$ref": "./examples/VirtualNetworkGatewayConnectionStartPacketCapture.json" + }, + "Start packet capture on virtual network gateway connection with filter": { + "$ref": "./examples/VirtualNetworkGatewayConnectionStartPacketCaptureFilterData.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/stopPacketCapture": { + "post": { + "tags": [ + "VirtualNetworkGatewayConnections" + ], + "operationId": "VirtualNetworkGatewayConnections_StopPacketCapture", + "description": "Stops packet capture on virtual network gateway connection in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway Connection." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnPacketCaptureStopParameters" + }, + "description": "Virtual network gateway packet capture parameters supplied to stop packet capture on gateway connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Request successful. The operation packet capture stopped on virtual network gateway connection.", + "schema": { + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Stop packet capture on virtual network gateway connection": { + "$ref": "./examples/VirtualNetworkGatewayConnectionStopPacketCapture.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways/{localNetworkGatewayName}": { + "put": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_CreateOrUpdate", + "description": "Creates or updates a local network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "localNetworkGatewayName", + "in": "path", + "required": true, + "minLength": 1, + "type": "string", + "description": "The name of the local network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + }, + "description": "Parameters supplied to the create or update local network gateway operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Create successful. The operation returns the resulting LocalNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + } + }, + "200": { + "description": "Update successful. The operation returns the resulting LocalNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "CreateLocalNetworkGateway": { + "$ref": "./examples/LocalNetworkGatewayCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_Get", + "description": "Gets the specified local network gateway in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "localNetworkGatewayName", + "in": "path", + "required": true, + "minLength": 1, + "type": "string", + "description": "The name of the local network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting LocalNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetLocalNetworkGateway": { + "$ref": "./examples/LocalNetworkGatewayGet.json" + } + } + }, + "delete": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_Delete", + "description": "Deletes the specified local network gateway.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "localNetworkGatewayName", + "in": "path", + "required": true, + "minLength": 1, + "type": "string", + "description": "The name of the local network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "Delete successful." + }, + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "DeleteLocalNetworkGateway": { + "$ref": "./examples/LocalNetworkGatewayDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "patch": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_UpdateTags", + "description": "Updates a local network gateway tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "localNetworkGatewayName", + "in": "path", + "required": true, + "minLength": 1, + "type": "string", + "description": "The name of the local network gateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update local network gateway tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting LocalNetworkGateway resource.", + "schema": { + "$ref": "#/definitions/LocalNetworkGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "UpdateLocalNetworkGatewayTags": { + "$ref": "./examples/LocalNetworkGatewayUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways": { + "get": { + "tags": [ + "LocalNetworkGateways" + ], + "operationId": "LocalNetworkGateways_List", + "description": "Gets all the local network gateways in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of LocalNetworkGateway resources.", + "schema": { + "$ref": "#/definitions/LocalNetworkGatewayListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListLocalNetworkGateways": { + "$ref": "./examples/LocalNetworkGatewayList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getVpnClientConnectionHealth": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_GetVpnclientConnectionHealth", + "description": "Get VPN client connection health detail per P2S client connection of the virtual network gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "List of VPN client connection health details.", + "schema": { + "$ref": "#/definitions/VpnClientConnectionHealthDetailListResult" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GetVirtualNetworkGatewayVpnclientConnectionHealth": { + "$ref": "./examples/VirtualNetworkGatewayGetVpnclientConnectionHealth.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/disconnectVirtualNetworkGatewayVpnConnections": { + "post": { + "tags": [ + "VirtualNetworkGateways" + ], + "operationId": "VirtualNetworkGateways_DisconnectVirtualNetworkGatewayVpnConnections", + "description": "Disconnect vpn connections of virtual network gateway in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualNetworkGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network gateway." + }, + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "./virtualWan.json#/definitions/P2SVpnConnectionRequest" + }, + "description": "The parameters are supplied to disconnect vpn connections." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation disconnects the requested vpn connections." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Disconnect VpnConnections from Virtual Network Gateway": { + "$ref": "./examples/VirtualNetworkGatewaysDisconnectP2sVpnConnections.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "VirtualNetworkGatewayIPConfigurationPropertiesFormat": { + "properties": { + "privateIPAllocationMethod": { + "$ref": "./network.json#/definitions/IPAllocationMethod", + "description": "The private IP address allocation method." + }, + "subnet": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the subnet resource." + }, + "publicIPAddress": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the public IP resource." + }, + "privateIPAddress": { + "readOnly": true, + "type": "string", + "description": "Private IP Address for this gateway." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network gateway IP configuration resource." + } + }, + "description": "Properties of VirtualNetworkGatewayIPConfiguration." + }, + "VirtualNetworkGatewayIPConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayIPConfigurationPropertiesFormat", + "description": "Properties of the virtual network gateway ip configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "IP configuration for virtual network gateway." + }, + "VirtualNetworkGatewayPropertiesFormat": { + "properties": { + "ipConfigurations": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGatewayIPConfiguration" + }, + "description": "IP configurations for virtual network gateway." + }, + "gatewayType": { + "type": "string", + "description": "The type of this virtual network gateway.", + "enum": [ + "Vpn", + "ExpressRoute" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayType", + "modelAsString": true + } + }, + "vpnType": { + "type": "string", + "description": "The type of this virtual network gateway.", + "enum": [ + "PolicyBased", + "RouteBased" + ], + "x-ms-enum": { + "name": "VpnType", + "modelAsString": true + } + }, + "vpnGatewayGeneration": { + "type": "string", + "description": "The generation for this VirtualNetworkGateway. Must be None if gatewayType is not VPN.", + "enum": [ + "None", + "Generation1", + "Generation2" + ], + "x-ms-enum": { + "name": "VpnGatewayGeneration", + "modelAsString": true + } + }, + "enableBgp": { + "type": "boolean", + "description": "Whether BGP is enabled for this virtual network gateway or not." + }, + "enablePrivateIpAddress": { + "type": "boolean", + "description": "Whether private IP needs to be enabled on this gateway for connections or not." + }, + "activeActive": { + "type": "boolean", + "description": "ActiveActive flag." + }, + "gatewayDefaultSite": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to the LocalNetworkGateway resource which represents local network site having default routes. Assign Null value in case of removing existing default site setting." + }, + "sku": { + "$ref": "#/definitions/VirtualNetworkGatewaySku", + "description": "The reference to the VirtualNetworkGatewaySku resource which represents the SKU selected for Virtual network gateway." + }, + "vpnClientConfiguration": { + "$ref": "#/definitions/VpnClientConfiguration", + "description": "The reference to the VpnClientConfiguration resource which represents the P2S VpnClient configurations." + }, + "bgpSettings": { + "$ref": "#/definitions/BgpSettings", + "description": "Virtual network gateway's BGP speaker settings." + }, + "customRoutes": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The reference to the address space resource which represents the custom routes address space specified by the customer for virtual network gateway and VpnClient." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the virtual network gateway resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network gateway resource." + }, + "enableDnsForwarding": { + "type": "boolean", + "description": "Whether dns forwarding is enabled or not." + }, + "inboundDnsForwardingEndpoint": { + "type": "string", + "readOnly": true, + "description": "The IP address allocated by the gateway to which dns requests can be sent." + } + }, + "description": "VirtualNetworkGateway properties." + }, + "VpnClientRootCertificatePropertiesFormat": { + "properties": { + "publicCertData": { + "type": "string", + "description": "The certificate public data." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN client root certificate resource." + } + }, + "required": [ + "publicCertData" + ], + "description": "Properties of SSL certificates of application gateway." + }, + "VpnClientRootCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnClientRootCertificatePropertiesFormat", + "description": "Properties of the vpn client root certificate." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "required": [ + "properties" + ], + "description": "VPN client root certificate of virtual network gateway." + }, + "VpnClientRevokedCertificatePropertiesFormat": { + "properties": { + "thumbprint": { + "type": "string", + "description": "The revoked VPN client certificate thumbprint." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN client revoked certificate resource." + } + }, + "description": "Properties of the revoked VPN client certificate of virtual network gateway." + }, + "VpnClientRevokedCertificate": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnClientRevokedCertificatePropertiesFormat", + "description": "Properties of the vpn client revoked certificate." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VPN client revoked certificate of virtual network gateway." + }, + "RadiusServer": { + "properties": { + "radiusServerAddress": { + "type": "string", + "description": "The address of this radius server." + }, + "radiusServerScore": { + "type": "integer", + "format": "int64", + "description": "The initial score assigned to this radius server." + }, + "radiusServerSecret": { + "type": "string", + "description": "The secret used for this radius server." + } + }, + "required": [ + "radiusServerAddress" + ], + "description": "Radius Server Settings." + }, + "VpnClientConfiguration": { + "properties": { + "vpnClientAddressPool": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The reference to the address space resource which represents Address space for P2S VpnClient." + }, + "vpnClientRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnClientRootCertificate" + }, + "description": "VpnClientRootCertificate for virtual network gateway." + }, + "vpnClientRevokedCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnClientRevokedCertificate" + }, + "description": "VpnClientRevokedCertificate for Virtual network gateway." + }, + "vpnClientProtocols": { + "type": "array", + "items": { + "type": "string", + "description": "VPN client protocol enabled for the virtual network gateway.", + "enum": [ + "IkeV2", + "SSTP", + "OpenVPN" + ], + "x-ms-enum": { + "name": "VpnClientProtocol", + "modelAsString": true + } + }, + "description": "VpnClientProtocols for Virtual network gateway." + }, + "vpnClientIpsecPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/IpsecPolicy" + }, + "description": "VpnClientIpsecPolicies for virtual network gateway P2S client." + }, + "radiusServerAddress": { + "type": "string", + "description": "The radius server address property of the VirtualNetworkGateway resource for vpn client connection." + }, + "radiusServerSecret": { + "type": "string", + "description": "The radius secret property of the VirtualNetworkGateway resource for vpn client connection." + }, + "radiusServers": { + "type": "array", + "items": { + "$ref": "#/definitions/RadiusServer" + }, + "description": "The radiusServers property for multiple radius server configuration." + }, + "aadTenant": { + "type": "string", + "description": "The AADTenant property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication." + }, + "aadAudience": { + "type": "string", + "description": "The AADAudience property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication." + }, + "aadIssuer": { + "type": "string", + "description": "The AADIssuer property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication." + } + }, + "description": "VpnClientConfiguration for P2S client." + }, + "VirtualNetworkGatewaySku": { + "properties": { + "name": { + "type": "string", + "description": "Gateway SKU name.", + "enum": [ + "Basic", + "HighPerformance", + "Standard", + "UltraPerformance", + "VpnGw1", + "VpnGw2", + "VpnGw3", + "VpnGw4", + "VpnGw5", + "VpnGw1AZ", + "VpnGw2AZ", + "VpnGw3AZ", + "VpnGw4AZ", + "VpnGw5AZ", + "ErGw1AZ", + "ErGw2AZ", + "ErGw3AZ" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewaySkuName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "Gateway SKU tier.", + "enum": [ + "Basic", + "HighPerformance", + "Standard", + "UltraPerformance", + "VpnGw1", + "VpnGw2", + "VpnGw3", + "VpnGw4", + "VpnGw5", + "VpnGw1AZ", + "VpnGw2AZ", + "VpnGw3AZ", + "VpnGw4AZ", + "VpnGw5AZ", + "ErGw1AZ", + "ErGw2AZ", + "ErGw3AZ" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewaySkuTier", + "modelAsString": true + } + }, + "capacity": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The capacity." + } + }, + "description": "VirtualNetworkGatewaySku details." + }, + "BgpSettings": { + "properties": { + "asn": { + "type": "integer", + "format": "int64", + "description": "The BGP speaker's ASN." + }, + "bgpPeeringAddress": { + "type": "string", + "description": "The BGP peering address and BGP identifier of this BGP speaker." + }, + "peerWeight": { + "type": "integer", + "format": "int32", + "description": "The weight added to routes learned from this BGP speaker." + }, + "bgpPeeringAddresses": { + "type": "array", + "items": { + "$ref": "#/definitions/IPConfigurationBgpPeeringAddress" + }, + "description": "BGP peering address with IP configuration ID for virtual network gateway." + } + }, + "description": "BGP settings details." + }, + "BgpPeerStatus": { + "properties": { + "localAddress": { + "type": "string", + "readOnly": true, + "description": "The virtual network gateway's local address." + }, + "neighbor": { + "type": "string", + "readOnly": true, + "description": "The remote BGP peer." + }, + "asn": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The autonomous system number of the remote BGP peer." + }, + "state": { + "type": "string", + "readOnly": true, + "description": "The BGP peer state.", + "enum": [ + "Unknown", + "Stopped", + "Idle", + "Connecting", + "Connected" + ], + "x-ms-enum": { + "name": "BgpPeerState", + "modelAsString": true + } + }, + "connectedDuration": { + "type": "string", + "readOnly": true, + "description": "For how long the peering has been up." + }, + "routesReceived": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The number of routes learned from this peer." + }, + "messagesSent": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The number of BGP messages sent." + }, + "messagesReceived": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The number of BGP messages received." + } + }, + "description": "BGP peer status details." + }, + "GatewayRoute": { + "properties": { + "localAddress": { + "type": "string", + "readOnly": true, + "description": "The gateway's local address." + }, + "network": { + "type": "string", + "readOnly": true, + "description": "The route's network prefix." + }, + "nextHop": { + "type": "string", + "readOnly": true, + "description": "The route's next hop." + }, + "sourcePeer": { + "type": "string", + "readOnly": true, + "description": "The peer this route was learned from." + }, + "origin": { + "type": "string", + "readOnly": true, + "description": "The source this route was learned from." + }, + "asPath": { + "type": "string", + "readOnly": true, + "description": "The route's AS path sequence." + }, + "weight": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The route's weight." + } + }, + "description": "Gateway routing details." + }, + "VirtualNetworkGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayPropertiesFormat", + "description": "Properties of the virtual network gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "description": "A common class for general resource information." + }, + "VpnClientParameters": { + "properties": { + "processorArchitecture": { + "type": "string", + "description": "VPN client Processor Architecture.", + "enum": [ + "Amd64", + "X86" + ], + "x-ms-enum": { + "name": "ProcessorArchitecture", + "modelAsString": true + } + }, + "authenticationMethod": { + "$ref": "./network.json#/definitions/AuthenticationMethod", + "description": "VPN client authentication method." + }, + "radiusServerAuthCertificate": { + "type": "string", + "description": "The public certificate data for the radius server authentication certificate as a Base-64 encoded string. Required only if external radius authentication has been configured with EAPTLS authentication." + }, + "clientRootCertificates": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of client root certificates public certificate data encoded as Base-64 strings. Optional parameter for external radius based authentication with EAPTLS." + } + }, + "description": "Vpn Client Parameters for package generation." + }, + "VirtualNetworkGatewayListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGateway" + }, + "description": "A list of VirtualNetworkGateway resources that exists in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListVirtualNetworkGateways API service call." + }, + "BgpPeerStatusListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/BgpPeerStatus" + }, + "description": "List of BGP peers." + } + }, + "description": "Response for list BGP peer status API service call." + }, + "GatewayRouteListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/GatewayRoute" + }, + "description": "List of gateway routes." + } + }, + "description": "List of virtual network gateway routes." + }, + "TunnelConnectionHealth": { + "properties": { + "tunnel": { + "readOnly": true, + "type": "string", + "description": "Tunnel name." + }, + "connectionStatus": { + "readOnly": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionStatus", + "description": "Virtual Network Gateway connection status." + }, + "ingressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The Ingress Bytes Transferred in this connection." + }, + "egressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The Egress Bytes Transferred in this connection." + }, + "lastConnectionEstablishedUtcTime": { + "readOnly": true, + "type": "string", + "description": "The time at which connection was established in Utc format." + } + }, + "description": "VirtualNetworkGatewayConnection properties." + }, + "VirtualNetworkGatewayConnectionPropertiesFormat": { + "properties": { + "authorizationKey": { + "type": "string", + "description": "The authorizationKey." + }, + "virtualNetworkGateway1": { + "$ref": "#/definitions/VirtualNetworkGateway", + "description": "The reference to virtual network gateway resource." + }, + "virtualNetworkGateway2": { + "$ref": "#/definitions/VirtualNetworkGateway", + "description": "The reference to virtual network gateway resource." + }, + "localNetworkGateway2": { + "$ref": "#/definitions/LocalNetworkGateway", + "description": "The reference to local network gateway resource." + }, + "connectionType": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionType", + "description": "Gateway connection type." + }, + "connectionProtocol": { + "$ref": "#/definitions/ConnectionProtocol", + "description": "Connection protocol used for this connection." + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "The routing weight." + }, + "dpdTimeoutSeconds": { + "type": "integer", + "format": "int32", + "description": "The dead peer detection timeout of this connection in seconds." + }, + "sharedKey": { + "type": "string", + "description": "The IPSec shared key." + }, + "connectionStatus": { + "readOnly": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionStatus", + "description": "Virtual Network Gateway connection status." + }, + "tunnelConnectionStatus": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/TunnelConnectionHealth" + }, + "description": "Collection of all tunnels' connection health status." + }, + "egressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The egress bytes transferred in this connection." + }, + "ingressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The ingress bytes transferred in this connection." + }, + "peer": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to peerings resource." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "useLocalAzureIpAddress": { + "type": "boolean", + "description": "Use private local Azure IP for the connection." + }, + "usePolicyBasedTrafficSelectors": { + "type": "boolean", + "description": "Enable policy-based traffic selectors." + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "trafficSelectorPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/TrafficSelectorPolicy" + }, + "description": "The Traffic Selector Policies to be considered by this connection." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the virtual network gateway connection resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network gateway connection resource." + }, + "expressRouteGatewayBypass": { + "type": "boolean", + "description": "Bypass ExpressRoute Gateway for data forwarding." + } + }, + "required": [ + "virtualNetworkGateway1", + "connectionType" + ], + "description": "VirtualNetworkGatewayConnection properties." + }, + "VirtualNetworkGatewayConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionPropertiesFormat", + "description": "Properties of the virtual network gateway connection." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "description": "A common class for general resource information." + }, + "VirtualNetworkGatewayConnectionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGatewayConnection" + }, + "description": "A list of VirtualNetworkGatewayConnection resources that exists in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the ListVirtualNetworkGatewayConnections API service call." + }, + "ConnectionResetSharedKey": { + "properties": { + "keyLength": { + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 128, + "description": "The virtual network connection reset shared key length, should between 1 and 128." + } + }, + "required": [ + "keyLength" + ], + "description": "The virtual network connection reset shared key." + }, + "ConnectionSharedKey": { + "properties": { + "value": { + "type": "string", + "description": "The virtual network connection shared key value." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "required": [ + "value" + ], + "description": "Response for GetConnectionSharedKey API service call." + }, + "IpsecPolicy": { + "properties": { + "saLifeTimeSeconds": { + "type": "integer", + "format": "int32", + "description": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for a site to site VPN tunnel." + }, + "saDataSizeKilobytes": { + "type": "integer", + "format": "int32", + "description": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for a site to site VPN tunnel." + }, + "ipsecEncryption": { + "$ref": "#/definitions/IpsecEncryption", + "description": "The IPSec encryption algorithm (IKE phase 1)." + }, + "ipsecIntegrity": { + "$ref": "#/definitions/IpsecIntegrity", + "description": "The IPSec integrity algorithm (IKE phase 1)." + }, + "ikeEncryption": { + "$ref": "#/definitions/IkeEncryption", + "description": "The IKE encryption algorithm (IKE phase 2)." + }, + "ikeIntegrity": { + "$ref": "#/definitions/IkeIntegrity", + "description": "The IKE integrity algorithm (IKE phase 2)." + }, + "dhGroup": { + "$ref": "#/definitions/DhGroup", + "description": "The DH Group used in IKE Phase 1 for initial SA." + }, + "pfsGroup": { + "$ref": "#/definitions/PfsGroup", + "description": "The Pfs Group used in IKE Phase 2 for new child SA." + } + }, + "required": [ + "saLifeTimeSeconds", + "saDataSizeKilobytes", + "ipsecEncryption", + "ipsecIntegrity", + "ikeEncryption", + "ikeIntegrity", + "dhGroup", + "pfsGroup" + ], + "description": "An IPSec Policy configuration for a virtual network gateway connection." + }, + "TrafficSelectorPolicy": { + "properties": { + "localAddressRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A collection of local address spaces in CIDR format." + }, + "remoteAddressRanges": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A collection of remote address spaces in CIDR format." + } + }, + "required": [ + "localAddressRanges", + "remoteAddressRanges" + ], + "description": "An traffic selector policy for a virtual network gateway connection." + }, + "ConnectionProtocol": { + "type": "string", + "description": "Gateway connection protocol.", + "enum": [ + "IKEv2", + "IKEv1" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayConnectionProtocol", + "modelAsString": true + } + }, + "VpnClientIPsecParameters": { + "properties": { + "saLifeTimeSeconds": { + "type": "integer", + "format": "int32", + "description": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for P2S client." + }, + "saDataSizeKilobytes": { + "type": "integer", + "format": "int32", + "description": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for P2S client.." + }, + "ipsecEncryption": { + "$ref": "#/definitions/IpsecEncryption", + "description": "The IPSec encryption algorithm (IKE phase 1)." + }, + "ipsecIntegrity": { + "$ref": "#/definitions/IpsecIntegrity", + "description": "The IPSec integrity algorithm (IKE phase 1)." + }, + "ikeEncryption": { + "$ref": "#/definitions/IkeEncryption", + "description": "The IKE encryption algorithm (IKE phase 2)." + }, + "ikeIntegrity": { + "$ref": "#/definitions/IkeIntegrity", + "description": "The IKE integrity algorithm (IKE phase 2)." + }, + "dhGroup": { + "$ref": "#/definitions/DhGroup", + "description": "The DH Group used in IKE Phase 1 for initial SA." + }, + "pfsGroup": { + "$ref": "#/definitions/PfsGroup", + "description": "The Pfs Group used in IKE Phase 2 for new child SA." + } + }, + "required": [ + "saLifeTimeSeconds", + "saDataSizeKilobytes", + "ipsecEncryption", + "ipsecIntegrity", + "ikeEncryption", + "ikeIntegrity", + "dhGroup", + "pfsGroup" + ], + "description": "An IPSec parameters for a virtual network gateway P2S connection." + }, + "LocalNetworkGatewayPropertiesFormat": { + "properties": { + "localNetworkAddressSpace": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "Local network site address space." + }, + "gatewayIpAddress": { + "type": "string", + "description": "IP address of local network gateway." + }, + "fqdn": { + "type": "string", + "description": "FQDN of local network gateway." + }, + "bgpSettings": { + "$ref": "#/definitions/BgpSettings", + "description": "Local network gateway's BGP speaker settings." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the local network gateway resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the local network gateway resource." + } + }, + "description": "LocalNetworkGateway properties." + }, + "LocalNetworkGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LocalNetworkGatewayPropertiesFormat", + "description": "Properties of the local network gateway." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "description": "A common class for general resource information." + }, + "LocalNetworkGatewayListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LocalNetworkGateway" + }, + "description": "A list of local network gateways that exists in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListLocalNetworkGateways API service call." + }, + "VirtualNetworkConnectionGatewayReference": { + "properties": { + "id": { + "type": "string", + "description": "The ID of VirtualNetworkGateway or LocalNetworkGateway resource." + } + }, + "required": [ + "id" + ], + "description": "A reference to VirtualNetworkGateway or LocalNetworkGateway resource." + }, + "VirtualNetworkGatewayConnectionListEntityPropertiesFormat": { + "properties": { + "authorizationKey": { + "type": "string", + "description": "The authorizationKey." + }, + "virtualNetworkGateway1": { + "$ref": "#/definitions/VirtualNetworkConnectionGatewayReference", + "description": "The reference to virtual network gateway resource." + }, + "virtualNetworkGateway2": { + "$ref": "#/definitions/VirtualNetworkConnectionGatewayReference", + "description": "The reference to virtual network gateway resource." + }, + "localNetworkGateway2": { + "$ref": "#/definitions/VirtualNetworkConnectionGatewayReference", + "description": "The reference to local network gateway resource." + }, + "connectionType": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionType", + "description": "Gateway connection type." + }, + "connectionProtocol": { + "$ref": "#/definitions/ConnectionProtocol", + "description": "Connection protocol used for this connection." + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "The routing weight." + }, + "sharedKey": { + "type": "string", + "description": "The IPSec shared key." + }, + "connectionStatus": { + "readOnly": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionStatus", + "description": "Virtual Network Gateway connection status." + }, + "tunnelConnectionStatus": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/TunnelConnectionHealth" + }, + "description": "Collection of all tunnels' connection health status." + }, + "egressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The egress bytes transferred in this connection." + }, + "ingressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The ingress bytes transferred in this connection." + }, + "peer": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The reference to peerings resource." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "usePolicyBasedTrafficSelectors": { + "type": "boolean", + "description": "Enable policy-based traffic selectors." + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "trafficSelectorPolicies": { + "type": "array", + "items": { + "$ref": "#/definitions/TrafficSelectorPolicy" + }, + "description": "The Traffic Selector Policies to be considered by this connection." + }, + "resourceGuid": { + "readOnly": true, + "type": "string", + "description": "The resource GUID property of the virtual network gateway connection resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network gateway connection resource." + }, + "expressRouteGatewayBypass": { + "type": "boolean", + "description": "Bypass ExpressRoute Gateway for data forwarding." + } + }, + "required": [ + "virtualNetworkGateway1", + "connectionType" + ], + "description": "VirtualNetworkGatewayConnection properties." + }, + "VirtualNetworkGatewayConnectionListEntity": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkGatewayConnectionListEntityPropertiesFormat", + "description": "Properties of the virtual network gateway connection." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "required": [ + "properties" + ], + "description": "A common class for general resource information." + }, + "VirtualNetworkGatewayListConnectionsResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkGatewayConnectionListEntity" + }, + "description": "A list of VirtualNetworkGatewayConnection resources that exists in a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for the VirtualNetworkGatewayListConnections API service call." + }, + "VpnDeviceScriptParameters": { + "properties": { + "vendor": { + "type": "string", + "description": "The vendor for the vpn device." + }, + "deviceFamily": { + "type": "string", + "description": "The device family for the vpn device." + }, + "firmwareVersion": { + "type": "string", + "description": "The firmware version for the vpn device." + } + }, + "description": "Vpn device configuration script generation parameters." + }, + "DhGroup": { + "type": "string", + "description": "The DH Groups used in IKE Phase 1 for initial SA.", + "enum": [ + "None", + "DHGroup1", + "DHGroup2", + "DHGroup14", + "DHGroup2048", + "ECP256", + "ECP384", + "DHGroup24" + ], + "x-ms-enum": { + "name": "DhGroup", + "modelAsString": true + } + }, + "IkeEncryption": { + "type": "string", + "description": "The IKE encryption algorithm (IKE phase 2).", + "enum": [ + "DES", + "DES3", + "AES128", + "AES192", + "AES256", + "GCMAES256", + "GCMAES128" + ], + "x-ms-enum": { + "name": "IkeEncryption", + "modelAsString": true + } + }, + "IkeIntegrity": { + "type": "string", + "description": "The IKE integrity algorithm (IKE phase 2).", + "enum": [ + "MD5", + "SHA1", + "SHA256", + "SHA384", + "GCMAES256", + "GCMAES128" + ], + "x-ms-enum": { + "name": "IkeIntegrity", + "modelAsString": true + } + }, + "IpsecEncryption": { + "type": "string", + "description": "The IPSec encryption algorithm (IKE phase 1).", + "enum": [ + "None", + "DES", + "DES3", + "AES128", + "AES192", + "AES256", + "GCMAES128", + "GCMAES192", + "GCMAES256" + ], + "x-ms-enum": { + "name": "IpsecEncryption", + "modelAsString": true + } + }, + "IpsecIntegrity": { + "type": "string", + "description": "The IPSec integrity algorithm (IKE phase 1).", + "enum": [ + "MD5", + "SHA1", + "SHA256", + "GCMAES128", + "GCMAES192", + "GCMAES256" + ], + "x-ms-enum": { + "name": "IpsecIntegrity", + "modelAsString": true + } + }, + "PfsGroup": { + "type": "string", + "description": "The Pfs Groups used in IKE Phase 2 for new child SA.", + "enum": [ + "None", + "PFS1", + "PFS2", + "PFS2048", + "ECP256", + "ECP384", + "PFS24", + "PFS14", + "PFSMM" + ], + "x-ms-enum": { + "name": "PfsGroup", + "modelAsString": true + } + }, + "VirtualNetworkGatewayConnectionStatus": { + "type": "string", + "description": "Virtual Network Gateway connection status.", + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayConnectionStatus", + "modelAsString": true + } + }, + "VirtualNetworkGatewayConnectionType": { + "type": "string", + "description": "Gateway connection type.", + "enum": [ + "IPsec", + "Vnet2Vnet", + "ExpressRoute", + "VPNClient" + ], + "x-ms-enum": { + "name": "VirtualNetworkGatewayConnectionType", + "modelAsString": true + } + }, + "VpnClientConnectionHealthDetailListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnClientConnectionHealthDetail" + }, + "description": "List of vpn client connection health." + } + }, + "description": "List of virtual network gateway vpn client connection health." + }, + "VpnClientConnectionHealthDetail": { + "properties": { + "vpnConnectionId": { + "type": "string", + "readOnly": true, + "description": "The vpn client Id." + }, + "vpnConnectionDuration": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The duration time of a connected vpn client." + }, + "vpnConnectionTime": { + "type": "string", + "readOnly": true, + "description": "The start time of a connected vpn client." + }, + "publicIpAddress": { + "type": "string", + "readOnly": true, + "description": "The public Ip of a connected vpn client." + }, + "privateIpAddress": { + "type": "string", + "readOnly": true, + "description": "The assigned private Ip of a connected vpn client." + }, + "vpnUserName": { + "type": "string", + "readOnly": true, + "description": "The user name of a connected vpn client." + }, + "maxBandwidth": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The max band width." + }, + "egressPacketsTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The egress packets per second." + }, + "egressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The egress bytes per second." + }, + "ingressPacketsTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The ingress packets per second." + }, + "ingressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The ingress bytes per second." + }, + "maxPacketsPerSecond": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The max packets transferred per second." + } + }, + "description": "VPN client connection health detail." + }, + "VpnPacketCaptureStopParameters": { + "properties": { + "sasUrl": { + "type": "string", + "description": "SAS url for packet capture on virtual network gateway." + } + }, + "description": "Stop packet capture parameters." + }, + "VpnPacketCaptureStartParameters": { + "properties": { + "filterData": { + "type": "string", + "description": "Start Packet capture parameters." + } + }, + "description": "Start packet capture parameters on virtual network gateway." + }, + "IPConfigurationBgpPeeringAddress": { + "properties": { + "ipconfigurationId": { + "type": "string", + "description": "The ID of IP configuration which belongs to gateway." + }, + "defaultBgpIpAddresses": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of default BGP peering addresses which belong to IP configuration." + }, + "customBgpIpAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of custom BGP peering addresses which belong to IP configuration." + }, + "tunnelIpAddresses": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of tunnel public IP addresses which belong to IP configuration." + } + }, + "description": "Properties of IPConfigurationBgpPeeringAddress." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualNetworkTap.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualNetworkTap.json new file mode 100644 index 000000000000..52b6ea41c262 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualNetworkTap.json @@ -0,0 +1,426 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkTaps/{tapName}": { + "delete": { + "tags": [ + "VirtualNetworkTap" + ], + "operationId": "VirtualNetworkTaps_Delete", + "description": "Deletes the specified virtual network tap.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "tapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network tap." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted. Sets 'Deleting' provisioningState until the operation completes. Returns an operation URI that can be queried to find the current state of the operation." + }, + "204": { + "description": "Request successful. Resource does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Delete Virtual Network Tap resource": { + "$ref": "./examples/VirtualNetworkTapDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "VirtualNetworkTap" + ], + "operationId": "VirtualNetworkTaps_Get", + "description": "Gets information about the specified virtual network tap.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "tapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of virtual network tap." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting VirtualNetworkTap resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get Virtual Network Tap": { + "$ref": "./examples/VirtualNetworkTapGet.json" + } + } + }, + "put": { + "tags": [ + "VirtualNetworkTap" + ], + "operationId": "VirtualNetworkTaps_CreateOrUpdate", + "description": "Creates or updates a Virtual Network Tap.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "tapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual network tap." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + }, + "description": "Parameters supplied to the create or update virtual network tap operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkTap resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualNetworkTap resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Create Virtual Network Tap": { + "$ref": "./examples/VirtualNetworkTapCreate.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VirtualNetworkTap" + ], + "operationId": "VirtualNetworkTaps_UpdateTags", + "description": "Updates an VirtualNetworkTap tags.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "tapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the tap." + }, + { + "name": "tapParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update VirtualNetworkTap tags." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting VirtualNetworkTap resource.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTap" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Update virtual network tap tags": { + "$ref": "./examples/VirtualNetworkTapUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualNetworkTaps": { + "get": { + "tags": [ + "VirtualNetworkTaps" + ], + "operationId": "VirtualNetworkTaps_ListAll", + "description": "Gets all the VirtualNetworkTaps in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Virtual Network Tap resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTapListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List all virtual network taps": { + "$ref": "./examples/VirtualNetworkTapListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkTaps": { + "get": { + "tags": [ + "VirtualNetworkTaps" + ], + "operationId": "VirtualNetworkTaps_ListByResourceGroup", + "description": "Gets all the VirtualNetworkTaps in a subscription.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of Virtual Network Tap resources.", + "schema": { + "$ref": "#/definitions/VirtualNetworkTapListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual network taps in resource group": { + "$ref": "./examples/VirtualNetworkTapList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "VirtualNetworkTap": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualNetworkTapPropertiesFormat", + "description": "Virtual Network Tap Properties." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "Virtual Network Tap resource." + }, + "VirtualNetworkTapPropertiesFormat": { + "description": "Virtual Network Tap properties.", + "properties": { + "networkInterfaceTapConfigurations": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceTapConfiguration", + "description": "The reference to the Network Interface." + }, + "description": "Specifies the list of resource IDs for the network interface IP configuration that needs to be tapped." + }, + "resourceGuid": { + "type": "string", + "readOnly": true, + "description": "The resource GUID property of the virtual network tap resource." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual network tap resource." + }, + "destinationNetworkInterfaceIPConfiguration": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration", + "description": "The reference to the private IP Address of the collector nic that will receive the tap." + }, + "destinationLoadBalancerFrontEndIPConfiguration": { + "$ref": "./loadBalancer.json#/definitions/FrontendIPConfiguration", + "description": "The reference to the private IP address on the internal Load Balancer that will receive the tap." + }, + "destinationPort": { + "type": "integer", + "description": "The VXLAN destination port that will receive the tapped traffic." + } + } + }, + "VirtualNetworkTapListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkTap" + }, + "description": "A list of VirtualNetworkTaps in a resource group." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "description": "Response for ListVirtualNetworkTap API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualRouter.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualRouter.json new file mode 100644 index 000000000000..29757ec60959 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualRouter.json @@ -0,0 +1,698 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2020-03-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualRouters/{virtualRouterName}": { + "delete": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_Delete", + "description": "Deletes the specified Virtual Router.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Delete VirtualRouter": { + "$ref": "./examples/VirtualRouterDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_Get", + "description": "Gets the specified Virtual Router.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a Virtual Router resource.", + "schema": { + "$ref": "#/definitions/VirtualRouter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get VirtualRouter": { + "$ref": "./examples/VirtualRouterGet.json" + } + } + }, + "put": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_CreateOrUpdate", + "description": "Creates or updates the specified Virtual Router.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualRouter" + }, + "description": "Parameters supplied to the create or update Virtual Router." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request received successfully. The operation returns the resulting Virtual Router resource.", + "schema": { + "$ref": "#/definitions/VirtualRouter" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting Virtual Router resource.", + "schema": { + "$ref": "#/definitions/VirtualRouter" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Create VirtualRouter": { + "$ref": "./examples/VirtualRouterPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualRouters": { + "get": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_ListByResourceGroup", + "description": "Lists all Virtual Routers in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Virtual Router resources.", + "schema": { + "$ref": "#/definitions/VirtualRouterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all Virtual Router for a given resource group": { + "$ref": "./examples/VirtualRouterListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualRouters": { + "get": { + "tags": [ + "VirtualRouters" + ], + "operationId": "VirtualRouters_List", + "description": "Gets all the Virtual Routers in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Virtual Router resources.", + "schema": { + "$ref": "#/definitions/VirtualRouterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all Virtual Routers for a given subscription": { + "$ref": "./examples/VirtualRouterListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualRouters/{virtualRouterName}/peerings/{peeringName}": { + "delete": { + "tags": [ + "VirtualRouterPeerings" + ], + "operationId": "VirtualRouterPeerings_Delete", + "description": "Deletes the specified peering from a Virtual Router.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "Request successful. Resource with the specified name does not exist." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Delete VirtualRouterPeering": { + "$ref": "./examples/VirtualRouterPeeringDelete.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "tags": [ + "VirtualRouterPeerings" + ], + "operationId": "VirtualRouterPeerings_Get", + "description": "Gets the specified Virtual Router Peering.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router Peering." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a Virtual Router Peering resource.", + "schema": { + "$ref": "#/definitions/VirtualRouterPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Get Virtual Router Peering": { + "$ref": "./examples/VirtualRouterPeeringGet.json" + } + } + }, + "put": { + "tags": [ + "VirtualRouterPeerings" + ], + "operationId": "VirtualRouterPeerings_CreateOrUpdate", + "description": "Creates or updates the specified Virtual Router Peering.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "name": "peeringName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router Peering." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualRouterPeering" + }, + "description": "Parameters supplied to the create or update Virtual Router Peering operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Request received successfully. The operation returns the resulting Virtual Router Peering resource.", + "schema": { + "$ref": "#/definitions/VirtualRouterPeering" + } + }, + "200": { + "description": "Request successful. The operation returns the resulting Virtual Router Peering resource.", + "schema": { + "$ref": "#/definitions/VirtualRouterPeering" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "Create Virtual Router Peering": { + "$ref": "./examples/VirtualRouterPeeringPut.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualRouters/{virtualRouterName}/peerings": { + "get": { + "tags": [ + "VirtualRouterPeerings" + ], + "operationId": "VirtualRouterPeerings_List", + "description": "Lists all Virtual Router Peerings in a Virtual Router resource.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualRouterName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Virtual Router." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of Virtual Router Peering resources.", + "schema": { + "$ref": "#/definitions/VirtualRouterPeeringListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-examples": { + "List all Virtual Router Peerings for a given Virtual Router": { + "$ref": "./examples/VirtualRouterPeeringList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "VirtualRouter": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualRouterPropertiesFormat", + "description": "Properties of the Virtual Router." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VirtualRouter Resource." + }, + "VirtualRouterPropertiesFormat": { + "properties": { + "virtualRouterAsn": { + "type": "integer", + "readOnly": false, + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "VirtualRouter ASN." + }, + "virtualRouterIps": { + "type": "array", + "readOnly": false, + "description": "VirtualRouter IPs.", + "items": { + "type": "string" + } + }, + "hostedSubnet": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The Subnet on which VirtualRouter is hosted." + }, + "hostedGateway": { + "readOnly": false, + "$ref": "./network.json#/definitions/SubResource", + "description": "The Gateway on which VirtualRouter is hosted." + }, + "peerings": { + "type": "array", + "readOnly": true, + "description": "List of references to VirtualRouterPeerings.", + "items": { + "$ref": "./network.json#/definitions/SubResource" + } + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState" + } + }, + "description": "Virtual Router definition." + }, + "VirtualRouterPeering": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualRouterPeeringProperties", + "description": "The properties of the Virtual Router Peering." + }, + "name": { + "type": "string", + "description": "Name of the virtual router peering that is unique within a virtual router." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Peering type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "Virtual Router Peering resource." + }, + "VirtualRouterPeeringProperties": { + "properties": { + "peerAsn": { + "type": "integer", + "readOnly": false, + "format": "int64", + "minimum": 0, + "maximum": 4294967295, + "description": "Peer ASN." + }, + "peerIp": { + "type": "string", + "readOnly": false, + "description": "Peer IP." + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState" + } + }, + "description": "Properties of the rule group." + }, + "VirtualRouterListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualRouter" + }, + "description": "List of Virtual Routers." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListVirtualRouters API service call." + }, + "VirtualRouterPeeringListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualRouterPeering" + }, + "description": "List of VirtualRouterPeerings in a VirtualRouter." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "Response for ListVirtualRouterPeerings API service call." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualWan.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualWan.json new file mode 100644 index 000000000000..5936650661dc --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/virtualWan.json @@ -0,0 +1,5284 @@ +{ + "swagger": "2.0", + "info": { + "title": "VirtualWANAsAServiceManagementClient", + "description": "REST API for Azure VirtualWAN As a Service.", + "version": "2020-03-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{VirtualWANName}": { + "get": { + "operationId": "VirtualWans_Get", + "x-ms-examples": { + "VirtualWANGet": { + "$ref": "./examples/VirtualWANGet.json" + } + }, + "description": "Retrieves the details of a VirtualWAN.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "VirtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN being retrieved." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualWAN retrieved.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VirtualWans_CreateOrUpdate", + "x-ms-examples": { + "VirtualWANCreate": { + "$ref": "./examples/VirtualWANPut.json" + } + }, + "description": "Creates a VirtualWAN resource if it doesn't exist else updates the existing VirtualWAN.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "VirtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN being created or updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "WANParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualWAN" + }, + "description": "Parameters supplied to create or update VirtualWAN." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualWAN created or updated.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting VirtualWAN resource.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VirtualWANs" + ], + "operationId": "VirtualWans_UpdateTags", + "x-ms-examples": { + "VirtualWANUpdate": { + "$ref": "./examples/VirtualWANUpdateTags.json" + } + }, + "description": "Updates a VirtualWAN tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "VirtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "WANParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to Update VirtualWAN tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualWAN updated.", + "schema": { + "$ref": "#/definitions/VirtualWAN" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "VirtualWans_Delete", + "x-ms-examples": { + "VirtualWANDelete": { + "$ref": "./examples/VirtualWANDelete.json" + } + }, + "description": "Deletes a VirtualWAN.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "name": "VirtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN being deleted." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VirtualWAN deleted." + }, + "202": { + "description": "Request received successfully. VirtualWAN deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No VirtualWANs exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans": { + "get": { + "operationId": "VirtualWans_ListByResourceGroup", + "x-ms-examples": { + "VirtualWANListByResourceGroup": { + "$ref": "./examples/VirtualWANListByResourceGroup.json" + } + }, + "description": "Lists all the VirtualWANs in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualWan." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualWANs in the resource group.", + "schema": { + "$ref": "#/definitions/ListVirtualWANsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualWans": { + "get": { + "operationId": "VirtualWans_List", + "x-ms-examples": { + "VirtualWANList": { + "$ref": "./examples/VirtualWANList.json" + } + }, + "description": "Lists all the VirtualWANs in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualWANs in the subscription.", + "schema": { + "$ref": "#/definitions/ListVirtualWANsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}": { + "get": { + "operationId": "VpnSites_Get", + "x-ms-examples": { + "VpnSiteGet": { + "$ref": "./examples/VpnSiteGet.json" + } + }, + "description": "Retrieves the details of a VPN site.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite being retrieved." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnSite retrieved.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VpnSites_CreateOrUpdate", + "x-ms-examples": { + "VpnSiteCreate": { + "$ref": "./examples/VpnSitePut.json" + } + }, + "description": "Creates a VpnSite resource if it doesn't exist else updates the existing VpnSite.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite being created or updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnSiteParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnSite" + }, + "description": "Parameters supplied to create or update VpnSite." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnSite created or updated.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VpnSite created or updated.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VpnSites" + ], + "operationId": "VpnSites_UpdateTags", + "x-ms-examples": { + "VpnSiteUpdate": { + "$ref": "./examples/VpnSiteUpdateTags.json" + } + }, + "description": "Updates VpnSite tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnSiteParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update VpnSite tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnSite updated.", + "schema": { + "$ref": "#/definitions/VpnSite" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "VpnSites_Delete", + "x-ms-examples": { + "VpnSiteDelete": { + "$ref": "./examples/VpnSiteDelete.json" + } + }, + "description": "Deletes a VpnSite.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite being deleted." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VpnSite deleted." + }, + "202": { + "description": "Request received successfully. VpnSite deletion is in progress." + }, + "204": { + "description": "No VpnSites exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites": { + "get": { + "operationId": "VpnSites_ListByResourceGroup", + "x-ms-examples": { + "VpnSiteListByResourceGroup": { + "$ref": "./examples/VpnSiteListByResourceGroup.json" + } + }, + "description": "Lists all the vpnSites in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the vpnSites in the resource group.", + "schema": { + "$ref": "#/definitions/ListVpnSitesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}/vpnSiteLinks/{vpnSiteLinkName}": { + "get": { + "operationId": "VpnSiteLinks_Get", + "x-ms-examples": { + "VpnSiteGet": { + "$ref": "./examples/VpnSiteLinkGet.json" + } + }, + "description": "Retrieves the details of a VPN site link.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite." + }, + { + "name": "vpnSiteLinkName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSiteLink being retrieved." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnSiteLink retrieved.", + "schema": { + "$ref": "#/definitions/VpnSiteLink" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}/vpnSiteLinks": { + "get": { + "operationId": "VpnSiteLinks_ListByVpnSite", + "x-ms-examples": { + "VpnSiteLinkListByVpnSite": { + "$ref": "./examples/VpnSiteLinkListByVpnSite.json" + } + }, + "description": "Lists all the vpnSiteLinks in a resource group for a vpn site.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnSite." + }, + { + "name": "vpnSiteName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnSite." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the vpnSites in the resource group.", + "schema": { + "$ref": "#/definitions/ListVpnSiteLinksResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/vpnSites": { + "get": { + "operationId": "VpnSites_List", + "x-ms-examples": { + "VpnSiteList": { + "$ref": "./examples/VpnSiteList.json" + } + }, + "description": "Lists all the VpnSites in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VpnSites in the subscription.", + "schema": { + "$ref": "#/definitions/ListVpnSitesResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/vpnConfiguration": { + "post": { + "operationId": "VpnSitesConfiguration_Download", + "x-ms-examples": { + "VpnSitesConfigurationDownload": { + "$ref": "./examples/VpnSitesConfigurationDownload.json" + } + }, + "description": "Gives the sas-url to download the configurations for vpn-sites in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name." + }, + { + "name": "virtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN for which configuration of all vpn-sites is needed." + }, + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/GetVpnSitesConfigurationRequest" + }, + "description": "Parameters supplied to download vpn-sites configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Follow the location header for sas-url to output blob." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously. Follow the location header for sas-url to output blob." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/supportedSecurityProviders": { + "get": { + "operationId": "SupportedSecurityProviders", + "x-ms-examples": { + "supportedSecurityProviders": { + "$ref": "./examples/VirtualWanSupportedSecurityProviders.json" + } + }, + "description": "Gives the supported security providers for the virtual wan.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name." + }, + { + "name": "virtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN for which supported security providers are needed." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the object containing supported security providers.", + "schema": { + "$ref": "#/definitions/VirtualWanSecurityProviders" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnServerConfigurations/{vpnServerConfigurationName}": { + "get": { + "operationId": "VpnServerConfigurations_Get", + "x-ms-examples": { + "VpnServerConfigurationGet": { + "$ref": "./examples/VpnServerConfigurationGet.json" + } + }, + "description": "Retrieves the details of a VpnServerConfiguration.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "name": "vpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnServerConfiguration being retrieved." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnServerConfiguration retrieved.", + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VpnServerConfigurations_CreateOrUpdate", + "x-ms-examples": { + "VpnServerConfigurationCreate": { + "$ref": "./examples/VpnServerConfigurationPut.json" + } + }, + "description": "Creates a VpnServerConfiguration resource if it doesn't exist else updates the existing VpnServerConfiguration.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "name": "vpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnServerConfiguration being created or updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnServerConfigurationParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + }, + "description": "Parameters supplied to create or update VpnServerConfiguration." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnServerConfiguration created or updated.", + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VpnServerConfiguration created or updated.", + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VpnServerConfigurations" + ], + "operationId": "VpnServerConfigurations_UpdateTags", + "x-ms-examples": { + "VpnServerConfigurationUpdate": { + "$ref": "./examples/VpnServerConfigurationUpdateTags.json" + } + }, + "description": "Updates VpnServerConfiguration tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "name": "vpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnServerConfiguration being updated." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnServerConfigurationParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update VpnServerConfiguration tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VpnServerConfiguration updated.", + "schema": { + "$ref": "#/definitions/VpnServerConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "VpnServerConfigurations_Delete", + "x-ms-examples": { + "VpnServerConfigurationDelete": { + "$ref": "./examples/VpnServerConfigurationDelete.json" + } + }, + "description": "Deletes a VpnServerConfiguration.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "name": "vpnServerConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VpnServerConfiguration being deleted." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VpnServerConfiguration deleted." + }, + "202": { + "description": "Request received successfully. VpnServerConfiguration deletion is in progress." + }, + "204": { + "description": "No VpnServerConfigurations exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnServerConfigurations": { + "get": { + "operationId": "VpnServerConfigurations_ListByResourceGroup", + "x-ms-examples": { + "VpnServerConfigurationListByResourceGroup": { + "$ref": "./examples/VpnServerConfigurationListByResourceGroup.json" + } + }, + "description": "Lists all the vpnServerConfigurations in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnServerConfiguration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the vpnServerConfigurations in the resource group.", + "schema": { + "$ref": "#/definitions/ListVpnServerConfigurationsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/vpnServerConfigurations": { + "get": { + "operationId": "VpnServerConfigurations_List", + "x-ms-examples": { + "VpnServerConfigurationList": { + "$ref": "./examples/VpnServerConfigurationList.json" + } + }, + "description": "Lists all the VpnServerConfigurations in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VpnServerConfigurations in the subscription.", + "schema": { + "$ref": "#/definitions/ListVpnServerConfigurationsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}": { + "get": { + "operationId": "VirtualHubs_Get", + "x-ms-examples": { + "VirtualHubGet": { + "$ref": "./examples/VirtualHubGet.json" + } + }, + "description": "Retrieves the details of a VirtualHub.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHub retrieved.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VirtualHubs_CreateOrUpdate", + "x-ms-examples": { + "VirtualHubPut": { + "$ref": "./examples/VirtualHubPut.json" + } + }, + "description": "Creates a VirtualHub resource if it doesn't exist else updates the existing VirtualHub.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "virtualHubParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualHub" + }, + "description": "Parameters supplied to create or update VirtualHub." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHub created or updated.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VirtualHub created or updated.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VirtualWANs" + ], + "operationId": "VirtualHubs_UpdateTags", + "x-ms-examples": { + "VirtualHubUpdate": { + "$ref": "./examples/VirtualHubUpdateTags.json" + } + }, + "description": "Updates VirtualHub tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "virtualHubParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update VirtualHub tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHub updated.", + "schema": { + "$ref": "#/definitions/VirtualHub" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "VirtualHubs_Delete", + "x-ms-examples": { + "VirtualHubDelete": { + "$ref": "./examples/VirtualHubDelete.json" + } + }, + "description": "Deletes a VirtualHub.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VirtualHub deleted." + }, + "202": { + "description": "Request received successfully. VirtualHub deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No VirtualHubs exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs": { + "get": { + "operationId": "VirtualHubs_ListByResourceGroup", + "x-ms-examples": { + "VirtualHubListByResourceGroup": { + "$ref": "./examples/VirtualHubListByResourceGroup.json" + } + }, + "description": "Lists all the VirtualHubs in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualHubs in the resource group.", + "schema": { + "$ref": "#/definitions/ListVirtualHubsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualHubs": { + "get": { + "operationId": "VirtualHubs_List", + "x-ms-examples": { + "VirtualHubList": { + "$ref": "./examples/VirtualHubList.json" + } + }, + "description": "Lists all the VirtualHubs in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualHubs in the subscription.", + "schema": { + "$ref": "#/definitions/ListVirtualHubsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/hubVirtualNetworkConnections/{connectionName}": { + "get": { + "operationId": "HubVirtualNetworkConnections_Get", + "x-ms-examples": { + "HubVirtualNetworkConnectionGet": { + "$ref": "./examples/HubVirtualNetworkConnectionGet.json" + } + }, + "description": "Retrieves the details of a HubVirtualNetworkConnection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the HubVirtualNetworkConnection retrieved.", + "schema": { + "$ref": "#/definitions/HubVirtualNetworkConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/hubVirtualNetworkConnections": { + "get": { + "operationId": "HubVirtualNetworkConnections_List", + "x-ms-examples": { + "HubVirtualNetworkConnectionList": { + "$ref": "./examples/HubVirtualNetworkConnectionList.json" + } + }, + "description": "Retrieves the details of all HubVirtualNetworkConnections.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the HubVirtualNetworkConnections for the VirtualHub.", + "schema": { + "$ref": "#/definitions/ListHubVirtualNetworkConnectionsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}": { + "get": { + "operationId": "VpnGateways_Get", + "x-ms-examples": { + "VpnGatewayGet": { + "$ref": "./examples/VpnGatewayGet.json" + } + }, + "description": "Retrieves the details of a virtual wan vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the virtual wan vpn gateway retrieved.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VpnGateways_CreateOrUpdate", + "x-ms-examples": { + "VpnGatewayPut": { + "$ref": "./examples/VpnGatewayPut.json" + } + }, + "description": "Creates a virtual wan vpn gateway if it doesn't exist else updates the existing gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "vpnGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnGateway" + }, + "description": "Parameters supplied to create or Update a virtual wan vpn gateway." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the virtual wan vpn Gateway created or updated.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "201": { + "description": "Request successful. Returns the details of the virtual wan vpn gateway retrieved.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "VpnGateways" + ], + "operationId": "VpnGateways_UpdateTags", + "x-ms-examples": { + "VpnGatewayUpdate": { + "$ref": "./examples/VpnGatewayUpdateTags.json" + } + }, + "description": "Updates virtual wan vpn gateway tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "vpnGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update a virtual wan vpn gateway tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the updated gateway.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "VpnGateways_Delete", + "x-ms-examples": { + "VpnGatewayDelete": { + "$ref": "./examples/VpnGatewayDelete.json" + } + }, + "description": "Deletes a virtual wan vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Vpn Gateway deleted." + }, + "202": { + "description": "Request received successfully. Vpn Gateway deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No vpn gateways exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/reset": { + "post": { + "tags": [ + "VpnGateways" + ], + "operationId": "VpnGateways_Reset", + "description": "Resets the primary of the vpn gateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation reset the primary of the VpnGateway.", + "schema": { + "$ref": "#/definitions/VpnGateway" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ResetVpnGateway": { + "$ref": "./examples/VpnGatewayReset.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways": { + "get": { + "operationId": "VpnGateways_ListByResourceGroup", + "x-ms-examples": { + "VpnGatewayListByResourceGroup": { + "$ref": "./examples/VpnGatewayListByResourceGroup.json" + } + }, + "description": "Lists all the VpnGateways in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VpnGateways in the resource group.", + "schema": { + "$ref": "#/definitions/ListVpnGatewaysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/vpnGateways": { + "get": { + "operationId": "VpnGateways_List", + "x-ms-examples": { + "VpnGatewayListBySubscription": { + "$ref": "./examples/VpnGatewayList.json" + } + }, + "description": "Lists all the VpnGateways in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VpnGateways in the subscription.", + "schema": { + "$ref": "#/definitions/ListVpnGatewaysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}": { + "get": { + "operationId": "VpnConnections_Get", + "x-ms-examples": { + "VpnConnectionGet": { + "$ref": "./examples/VpnConnectionGet.json" + } + }, + "description": "Retrieves the details of a vpn connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the vpn connection.", + "schema": { + "$ref": "#/definitions/VpnConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "VpnConnections_CreateOrUpdate", + "x-ms-examples": { + "VpnConnectionPut": { + "$ref": "./examples/VpnConnectionPut.json" + } + }, + "description": "Creates a vpn connection to a scalable vpn gateway if it doesn't exist else updates the existing connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "VpnConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VpnConnection" + }, + "description": "Parameters supplied to create or Update a VPN Connection." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the vpn connection created or updated.", + "schema": { + "$ref": "#/definitions/VpnConnection" + } + }, + "201": { + "description": "Request successful. Returns the details of the vpn connection created or updated.", + "schema": { + "$ref": "#/definitions/VpnConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "operationId": "VpnConnections_Delete", + "x-ms-examples": { + "VpnConnectionDelete": { + "$ref": "./examples/VpnConnectionDelete.json" + } + }, + "description": "Deletes a vpn connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Vpn Connection deleted." + }, + "202": { + "description": "Request received successfully. Vpn Connection deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No vpn connections exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}/vpnLinkConnections/{linkConnectionName}": { + "get": { + "operationId": "VpnSiteLinkConnections_Get", + "x-ms-examples": { + "VpnSiteLinkConnectionGet": { + "$ref": "./examples/VpnSiteLinkConnectionGet.json" + } + }, + "description": "Retrieves the details of a vpn site link connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "name": "linkConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the vpn connection.", + "schema": { + "$ref": "#/definitions/VpnSiteLinkConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections": { + "get": { + "operationId": "VpnConnections_ListByVpnGateway", + "x-ms-examples": { + "VpnConnectionList": { + "$ref": "./examples/VpnConnectionList.json" + } + }, + "description": "Retrieves all vpn connections for a particular virtual wan vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all Vpn connections for a virtual wan vpn gateway.", + "schema": { + "$ref": "#/definitions/ListVpnConnectionsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}/vpnLinkConnections": { + "get": { + "operationId": "VpnLinkConnections_ListByVpnConnection", + "x-ms-examples": { + "VpnSiteLinkConnectionList": { + "$ref": "./examples/VpnSiteLinkConnectionList.json" + } + }, + "description": "Retrieves all vpn site link connections for a particular virtual wan vpn gateway vpn connection.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the vpn connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns all Vpn connections for a virtual wan vpn gateway.", + "schema": { + "$ref": "#/definitions/ListVpnSiteLinkConnectionsResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}": { + "get": { + "operationId": "P2sVpnGateways_Get", + "x-ms-examples": { + "P2SVpnGatewayGet": { + "$ref": "./examples/P2SVpnGatewayGet.json" + } + }, + "description": "Retrieves the details of a virtual wan p2s vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the virtual wan p2s vpn gateway retrieved.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "operationId": "P2sVpnGateways_CreateOrUpdate", + "x-ms-examples": { + "P2SVpnGatewayPut": { + "$ref": "./examples/P2SVpnGatewayPut.json" + } + }, + "description": "Creates a virtual wan p2s vpn gateway if it doesn't exist else updates the existing gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "p2SVpnGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + }, + "description": "Parameters supplied to create or Update a virtual wan p2s vpn gateway." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the virtual wan p2s vpn Gateway created or updated.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "201": { + "description": "Request successful. Returns the details of the virtual wan p2s vpn gateway retrieved.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_UpdateTags", + "x-ms-examples": { + "P2SVpnGatewayUpdate": { + "$ref": "./examples/P2SVpnGatewayUpdateTags.json" + } + }, + "description": "Updates virtual wan p2s vpn gateway tags.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "p2SVpnGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "./network.json#/definitions/TagsObject" + }, + "description": "Parameters supplied to update a virtual wan p2s vpn gateway tags." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the updated gateway.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "operationId": "P2sVpnGateways_Delete", + "x-ms-examples": { + "P2SVpnGatewayDelete": { + "$ref": "./examples/P2SVpnGatewayDelete.json" + } + }, + "description": "Deletes a virtual wan p2s vpn gateway.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. P2SVpnGateway deleted." + }, + "202": { + "description": "Request received successfully. P2SVpnGateway deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No p2s vpn gateways exist by the name provided." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways": { + "get": { + "operationId": "P2sVpnGateways_ListByResourceGroup", + "x-ms-examples": { + "P2SVpnGatewayListByResourceGroup": { + "$ref": "./examples/P2SVpnGatewayListByResourceGroup.json" + } + }, + "description": "Lists all the P2SVpnGateways in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the P2SVpnGateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the P2SVpnGateways in the resource group.", + "schema": { + "$ref": "#/definitions/ListP2SVpnGatewaysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/p2svpnGateways": { + "get": { + "operationId": "P2sVpnGateways_List", + "x-ms-examples": { + "P2SVpnGatewayListBySubscription": { + "$ref": "./examples/P2SVpnGatewayList.json" + } + }, + "description": "Lists all the P2SVpnGateways in a subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the P2SVpnGateways in the subscription.", + "schema": { + "$ref": "#/definitions/ListP2SVpnGatewaysResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}/generatevpnprofile": { + "post": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_GenerateVpnProfile", + "description": "Generates VPN profile for P2S client of the P2SVpnGateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2SVpnGateway." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/P2SVpnProfileParameters" + }, + "description": "Parameters supplied to the generate P2SVpnGateway VPN client package operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "VPN profile package URL.", + "schema": { + "$ref": "#/definitions/VpnProfileResponse" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "GenerateP2SVpnGatewayVPNProfile": { + "$ref": "./examples/P2SVpnGatewayGenerateVpnProfile.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}/getP2sVpnConnectionHealth": { + "post": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_GetP2sVpnConnectionHealth", + "description": "Gets the connection health of P2S clients of the virtual wan P2SVpnGateway in the specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2SVpnGateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "P2S Vpn Gateway with P2S connection health details.", + "schema": { + "$ref": "#/definitions/P2SVpnGateway" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "P2SVpnGatewayGetConnectionHealth": { + "$ref": "./examples/P2SVpnGatewayGetConnectionHealth.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}/getP2sVpnConnectionHealthDetailed": { + "post": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_GetP2sVpnConnectionHealthDetailed", + "description": "Gets the sas url to get the connection health detail of P2S clients of the virtual wan P2SVpnGateway in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "gatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2SVpnGateway." + }, + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/P2SVpnConnectionHealthRequest" + }, + "description": "Request parameters supplied to get p2s vpn connections detailed health." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "P2S connections detailed health report.", + "schema": { + "$ref": "#/definitions/P2SVpnConnectionHealth" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "P2SVpnGatewayGetConnectionHealthDetailed": { + "$ref": "./examples/P2SVpnGatewayGetConnectionHealthDetailed.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/vpnServerConfigurations": { + "post": { + "operationId": "VpnServerConfigurationsAssociatedWithVirtualWan_List", + "x-ms-examples": { + "GetVirtualWanVpnServerConfigurations": { + "$ref": "./examples/GetVirtualWanVpnServerConfigurations.json" + } + }, + "description": "Gives the list of VpnServerConfigurations associated with Virtual Wan in a resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name." + }, + { + "name": "virtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN whose associated VpnServerConfigurations is needed." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "List of associated VpnServerConfigurations list.", + "schema": { + "$ref": "#/definitions/VpnServerConfigurationsResponse" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously. Follow the location header for list of associated VpnServerConfigurations list." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/GenerateVpnProfile": { + "post": { + "operationId": "generatevirtualwanvpnserverconfigurationvpnprofile", + "x-ms-examples": { + "GenerateVirtualWanVpnServerConfigurationVpnProfile": { + "$ref": "./examples/GenerateVirtualWanVpnServerConfigurationVpnProfile.json" + } + }, + "description": "Generates a unique VPN profile for P2S clients for VirtualWan and associated VpnServerConfiguration combination in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name." + }, + { + "name": "virtualWANName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualWAN whose associated VpnServerConfigurations is needed." + }, + { + "name": "vpnClientParams", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualWanVpnProfileParameters" + }, + "description": "Parameters supplied to the generate VirtualWan VPN profile generation operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "VPN profile package URL.", + "schema": { + "$ref": "#/definitions/VpnProfileResponse" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/routeTables/{routeTableName}": { + "get": { + "operationId": "VirtualHubRouteTableV2s_Get", + "x-ms-examples": { + "VirtualHubVirtualHubRouteTableV2Get": { + "$ref": "./examples/VirtualHubRouteTableV2Get.json" + } + }, + "description": "Retrieves the details of a VirtualHubRouteTableV2.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHubRouteTableV2." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHubRouteTableV2." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHubRouteTableV2 retrieved.", + "schema": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + } + }, + "put": { + "operationId": "VirtualHubRouteTableV2s_CreateOrUpdate", + "x-ms-examples": { + "VirtualHubRouteTableV2Put": { + "$ref": "./examples/VirtualHubRouteTableV2Put.json" + } + }, + "description": "Creates a VirtualHubRouteTableV2 resource if it doesn't exist else updates the existing VirtualHubRouteTableV2.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHubRouteTableV2." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "name": "virtualHubRouteTableV2Parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + }, + "description": "Parameters supplied to create or update VirtualHubRouteTableV2." + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of the VirtualHubRouteTableV2 created or updated.", + "schema": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + } + }, + "201": { + "description": "Request received successfully. Returns the details of the VirtualHubRouteTableV2 created or updated.", + "schema": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + } + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "operationId": "VirtualHubRouteTableV2s_Delete", + "x-ms-examples": { + "VirtualHubRouteTableV2Delete": { + "$ref": "./examples/VirtualHubRouteTableV2Delete.json" + } + }, + "description": "Deletes a VirtualHubRouteTableV2.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHubRouteTableV2." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "name": "routeTableName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHubRouteTableV2." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. VirtualHubRouteTableV2 deleted." + }, + "202": { + "description": "Request received successfully. VirtualHubRouteTableV2 deletion is in progress; follow the Location header to poll for final outcome." + }, + "204": { + "description": "No VirtualHubRouteTableV2s exist by the name provided." + }, + "default": { + "description": "Error.", + "schema": { + "$ref": "./network.json#/definitions/Error" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/routeTables": { + "get": { + "operationId": "VirtualHubRouteTableV2s_List", + "x-ms-examples": { + "VirtualHubRouteTableV2List": { + "$ref": "./examples/VirtualHubRouteTableV2List.json" + } + }, + "description": "Retrieves the details of all VirtualHubRouteTableV2s.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The resource group name of the VirtualHub." + }, + { + "name": "virtualHubName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the VirtualHub." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. Returns the details of all the VirtualHubRouteTableV2s for the VirtualHub.", + "schema": { + "$ref": "#/definitions/ListVirtualHubRouteTableV2sResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{p2sVpnGatewayName}/disconnectP2sVpnConnections": { + "post": { + "tags": [ + "P2SVpnGateways" + ], + "operationId": "P2sVpnGateways_DisconnectP2sVpnConnections", + "description": "Disconnect P2S vpn connections of the virtual wan P2SVpnGateway in the specified resource group.", + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "p2sVpnGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the P2S Vpn Gateway." + }, + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/P2SVpnConnectionRequest" + }, + "description": "The parameters are supplied to disconnect p2s vpn connections." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation disconnects the requested vpn connections." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Disconnect VpnConnections from P2sVpn Gateway": { + "$ref": "./examples/P2sVpnGatewaysDisconnectP2sVpnConnections.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteGateways": { + "get": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_ListBySubscription", + "x-ms-examples": { + "ExpressRouteGatewayListBySubscription": { + "$ref": "./examples/ExpressRouteGatewayListBySubscription.json" + } + }, + "description": "Lists ExpressRoute gateways under a given subscription.", + "parameters": [ + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful.", + "schema": { + "$ref": "#/definitions/ExpressRouteGatewayList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways": { + "get": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_ListByResourceGroup", + "x-ms-examples": { + "ExpressRouteGatewayListByResourceGroup": { + "$ref": "./examples/ExpressRouteGatewayListByResourceGroup.json" + } + }, + "description": "Lists ExpressRoute gateways in a given resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation successful.", + "schema": { + "$ref": "#/definitions/ExpressRouteGatewayList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}": { + "put": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_CreateOrUpdate", + "x-ms-examples": { + "ExpressRouteGatewayCreate": { + "$ref": "./examples/ExpressRouteGatewayCreate.json" + } + }, + "description": "Creates or updates a ExpressRoute gateway in a specified resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "name": "putExpressRouteGatewayParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + }, + "description": "Parameters required in an ExpressRoute gateway PUT operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the resulting ExpressRoute gateway resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + } + }, + "201": { + "description": "Create successful. The operation returns the resulting ExpressRoute gateway resource.", + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_Get", + "x-ms-examples": { + "ExpressRouteGatewayGet": { + "$ref": "./examples/ExpressRouteGatewayGet.json" + } + }, + "description": "Fetches the details of a ExpressRoute gateway in a resource group.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation succeeded. The operation returns the ExpressRoute gateway.", + "schema": { + "$ref": "#/definitions/ExpressRouteGateway" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "ExpressRouteGateways" + ], + "operationId": "ExpressRouteGateways_Delete", + "x-ms-examples": { + "ExpressRouteGatewayDelete": { + "$ref": "./examples/ExpressRouteGatewayDelete.json" + } + }, + "description": "Deletes the specified ExpressRoute gateway in a resource group. An ExpressRoute gateway resource can only be deleted when there are no connection subresources.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}/expressRouteConnections/{connectionName}": { + "put": { + "tags": [ + "ExpressRouteConnections" + ], + "operationId": "ExpressRouteConnections_CreateOrUpdate", + "x-ms-examples": { + "ExpressRouteConnectionCreate": { + "$ref": "./examples/ExpressRouteConnectionCreate.json" + } + }, + "description": "Creates a connection between an ExpressRoute gateway and an ExpressRoute circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection subresource." + }, + { + "name": "putExpressRouteConnectionParameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ExpressRouteConnection" + }, + "description": "Parameters required in an ExpressRouteConnection PUT operation." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Update successful. The operation returns the ExpressRouteConnection.", + "schema": { + "$ref": "#/definitions/ExpressRouteConnection" + } + }, + "201": { + "description": "Create successful. The operation returns the ExpressRouteConnection.", + "schema": { + "$ref": "#/definitions/ExpressRouteConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "ExpressRouteConnections" + ], + "operationId": "ExpressRouteConnections_Get", + "x-ms-examples": { + "ExpressRouteConnectionGet": { + "$ref": "./examples/ExpressRouteConnectionGet.json" + } + }, + "description": "Gets the specified ExpressRouteConnection.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute connection." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the ExpressRouteConnection.", + "schema": { + "$ref": "#/definitions/ExpressRouteConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "ExpressRouteConnections" + ], + "operationId": "ExpressRouteConnections_Delete", + "x-ms-examples": { + "ExpressRouteConnectionDelete": { + "$ref": "./examples/ExpressRouteConnectionDelete.json" + } + }, + "description": "Deletes a connection to a ExpressRoute circuit.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "name": "connectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the connection subresource." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "202": { + "description": "Accepted, and the operation will continue asynchronously." + }, + "200": { + "description": "Delete successful." + }, + "204": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}/expressRouteConnections": { + "get": { + "tags": [ + "ExpressRouteConnections" + ], + "operationId": "ExpressRouteConnections_List", + "x-ms-examples": { + "ExpressRouteConnectionList": { + "$ref": "./examples/ExpressRouteConnectionList.json" + } + }, + "description": "Lists ExpressRouteConnections.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "expressRouteGatewayName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ExpressRoute gateway." + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful.", + "schema": { + "$ref": "#/definitions/ExpressRouteConnectionList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "VirtualWanProperties": { + "properties": { + "disableVpnEncryption": { + "type": "boolean", + "description": "Vpn encryption to be disabled or not." + }, + "virtualHubs": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of VirtualHubs in the VirtualWAN." + }, + "vpnSites": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "List of VpnSites in the VirtualWAN." + }, + "allowBranchToBranchTraffic": { + "type": "boolean", + "description": "True if branch to branch traffic is allowed." + }, + "allowVnetToVnetTraffic": { + "type": "boolean", + "description": "True if Vnet to Vnet traffic is allowed." + }, + "office365LocalBreakoutCategory": { + "description": "The office local breakout category.", + "$ref": "#/definitions/OfficeTrafficCategory" + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual WAN resource." + }, + "type": { + "type": "string", + "description": "The type of the VirtualWAN." + } + }, + "description": "Parameters for VirtualWAN." + }, + "VirtualWAN": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualWanProperties", + "description": "Properties of the virtual WAN." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VirtualWAN Resource." + }, + "ListVirtualWANsResult": { + "description": "Result of the request to list VirtualWANs. It contains a list of VirtualWANs and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualWAN" + }, + "description": "List of VirtualWANs." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnSiteProperties": { + "properties": { + "virtualWan": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualWAN to which the vpnSite belongs." + }, + "deviceProperties": { + "description": "The device properties.", + "$ref": "#/definitions/DeviceProperties" + }, + "ipAddress": { + "type": "string", + "description": "The ip-address for the vpn-site." + }, + "siteKey": { + "type": "string", + "description": "The key for vpn-site that can be used for connections." + }, + "addressSpace": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The AddressSpace that contains an array of IP address ranges." + }, + "bgpProperties": { + "$ref": "./virtualNetworkGateway.json#/definitions/BgpSettings", + "description": "The set of bgp properties." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN site resource." + }, + "isSecuritySite": { + "type": "boolean", + "description": "IsSecuritySite flag." + }, + "vpnSiteLinks": { + "type": "array", + "description": "List of all vpn site links.", + "items": { + "$ref": "#/definitions/VpnSiteLink" + } + } + }, + "description": "Parameters for VpnSite." + }, + "VpnSite": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnSiteProperties", + "description": "Properties of the VPN site." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VpnSite Resource." + }, + "ListVpnSitesResult": { + "description": "Result of the request to list VpnSites. It contains a list of VpnSites and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnSite" + }, + "description": "List of VpnSites." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnSiteLinkProperties": { + "properties": { + "linkProperties": { + "description": "The link provider properties.", + "$ref": "#/definitions/VpnLinkProviderProperties" + }, + "ipAddress": { + "type": "string", + "description": "The ip-address for the vpn-site-link." + }, + "fqdn": { + "type": "string", + "description": "FQDN of vpn-site-link." + }, + "bgpProperties": { + "$ref": "#/definitions/VpnLinkBgpSettings", + "description": "The set of bgp properties." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN site link resource." + } + }, + "description": "Parameters for VpnSite." + }, + "VpnSiteLink": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnSiteLinkProperties", + "description": "Properties of the VPN site link." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VpnSiteLink Resource." + }, + "ListVpnSiteLinksResult": { + "description": "Result of the request to list VpnSiteLinks. It contains a list of VpnSiteLinks and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnSiteLink" + }, + "description": "List of VpnSitesLinks." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "GetVpnSitesConfigurationRequest": { + "properties": { + "vpnSites": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of resource-ids of the vpn-sites for which config is to be downloaded." + }, + "outputBlobSasUrl": { + "type": "string", + "description": "The sas-url to download the configurations for vpn-sites." + } + }, + "required": [ + "outputBlobSasUrl" + ], + "description": "List of Vpn-Sites." + }, + "VirtualHubProperties": { + "properties": { + "virtualWan": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualWAN to which the VirtualHub belongs." + }, + "vpnGateway": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VpnGateway associated with this VirtualHub." + }, + "p2SVpnGateway": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The P2SVpnGateway associated with this VirtualHub." + }, + "expressRouteGateway": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The expressRouteGateway associated with this VirtualHub." + }, + "azureFirewall": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The azureFirewall associated with this VirtualHub." + }, + "securityPartnerProvider": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The securityPartnerProvider associated with this VirtualHub." + }, + "virtualNetworkConnections": { + "type": "array", + "description": "List of all vnet connections with this VirtualHub.", + "items": { + "$ref": "#/definitions/HubVirtualNetworkConnection" + } + }, + "addressPrefix": { + "type": "string", + "description": "Address-prefix for this VirtualHub." + }, + "routeTable": { + "$ref": "#/definitions/VirtualHubRouteTable", + "description": "The routeTable associated with this virtual hub." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the virtual hub resource." + }, + "securityProviderName": { + "type": "string", + "description": "The Security Provider name." + }, + "virtualHubRouteTableV2s": { + "type": "array", + "description": "List of all virtual hub route table v2s associated with this VirtualHub.", + "items": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + } + }, + "sku": { + "type": "string", + "description": "The sku of this VirtualHub." + } + }, + "description": "Parameters for VirtualHub." + }, + "VirtualHubRouteTable": { + "properties": { + "routes": { + "type": "array", + "description": "List of all routes.", + "items": { + "$ref": "#/definitions/VirtualHubRoute" + } + } + }, + "description": "VirtualHub route table." + }, + "VirtualHubRoute": { + "properties": { + "addressPrefixes": { + "type": "array", + "description": "List of all addressPrefixes.", + "items": { + "type": "string" + } + }, + "nextHopIpAddress": { + "type": "string", + "description": "NextHop ip address." + } + }, + "description": "VirtualHub route." + }, + "VirtualHub": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualHubProperties", + "description": "Properties of the virtual hub." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VirtualHub Resource." + }, + "ListVirtualHubsResult": { + "description": "Result of the request to list VirtualHubs. It contains a list of VirtualHubs and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualHub" + }, + "description": "List of VirtualHubs." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnGatewayProperties": { + "properties": { + "virtualHub": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualHub to which the gateway belongs." + }, + "connections": { + "type": "array", + "description": "List of all vpn connections to the gateway.", + "items": { + "$ref": "#/definitions/VpnConnection" + } + }, + "bgpSettings": { + "$ref": "./virtualNetworkGateway.json#/definitions/BgpSettings", + "description": "Local network gateway's BGP speaker settings." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN gateway resource." + }, + "vpnGatewayScaleUnit": { + "type": "integer", + "format": "int32", + "description": "The scale unit for this vpn gateway." + } + }, + "description": "Parameters for VpnGateway." + }, + "VpnGateway": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnGatewayProperties", + "description": "Properties of the VPN gateway." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VpnGateway Resource." + }, + "ListVpnGatewaysResult": { + "description": "Result of the request to list VpnGateways. It contains a list of VpnGateways and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnGateway" + }, + "description": "List of VpnGateways." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnConnectionProperties": { + "properties": { + "remoteVpnSite": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Id of the connected vpn site." + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "Routing weight for vpn connection." + }, + "dpdTimeoutSeconds": { + "type": "integer", + "format": "int32", + "description": "The dead peer detection timeout for a vpn connection in seconds." + }, + "connectionStatus": { + "description": "The connection status.", + "$ref": "#/definitions/VpnConnectionStatus" + }, + "vpnConnectionProtocolType": { + "description": "Connection protocol used for this connection.", + "$ref": "./virtualNetworkGateway.json#/definitions/ConnectionProtocol" + }, + "ingressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Ingress bytes transferred." + }, + "egressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Egress bytes transferred." + }, + "connectionBandwidth": { + "type": "integer", + "format": "int32", + "description": "Expected bandwidth in MBPS." + }, + "sharedKey": { + "type": "string", + "description": "SharedKey for the vpn connection." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "usePolicyBasedTrafficSelectors": { + "type": "boolean", + "description": "Enable policy-based traffic selectors." + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "./virtualNetworkGateway.json#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "enableRateLimiting": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "enableInternetSecurity": { + "type": "boolean", + "description": "Enable internet security." + }, + "useLocalAzureIpAddress": { + "type": "boolean", + "description": "Use local azure ip to initiate connection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN connection resource." + }, + "vpnLinkConnections": { + "type": "array", + "description": "List of all vpn site link connections to the gateway.", + "items": { + "$ref": "#/definitions/VpnSiteLinkConnection" + } + } + }, + "description": "Parameters for VpnConnection." + }, + "VpnConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnConnectionProperties", + "description": "Properties of the VPN connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VpnConnection Resource." + }, + "ListVpnConnectionsResult": { + "description": "Result of the request to list all vpn connections to a virtual wan vpn gateway. It contains a list of Vpn Connections and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnConnection" + }, + "description": "List of Vpn Connections." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnSiteLinkConnectionProperties": { + "properties": { + "vpnSiteLink": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Id of the connected vpn site link." + }, + "routingWeight": { + "type": "integer", + "format": "int32", + "description": "Routing weight for vpn connection." + }, + "connectionStatus": { + "description": "The connection status.", + "$ref": "#/definitions/VpnConnectionStatus" + }, + "vpnConnectionProtocolType": { + "description": "Connection protocol used for this connection.", + "$ref": "./virtualNetworkGateway.json#/definitions/ConnectionProtocol" + }, + "ingressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Ingress bytes transferred." + }, + "egressBytesTransferred": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "Egress bytes transferred." + }, + "connectionBandwidth": { + "type": "integer", + "format": "int32", + "description": "Expected bandwidth in MBPS." + }, + "sharedKey": { + "type": "string", + "description": "SharedKey for the vpn connection." + }, + "enableBgp": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "usePolicyBasedTrafficSelectors": { + "type": "boolean", + "description": "Enable policy-based traffic selectors." + }, + "ipsecPolicies": { + "type": "array", + "items": { + "$ref": "./virtualNetworkGateway.json#/definitions/IpsecPolicy" + }, + "description": "The IPSec Policies to be considered by this connection." + }, + "enableRateLimiting": { + "type": "boolean", + "description": "EnableBgp flag." + }, + "useLocalAzureIpAddress": { + "type": "boolean", + "description": "Use local azure ip to initiate connection." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the VPN site link connection resource." + } + }, + "description": "Parameters for VpnConnection." + }, + "VpnSiteLinkConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnSiteLinkConnectionProperties", + "description": "Properties of the VPN site link connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VpnSiteLinkConnection Resource." + }, + "ListVpnSiteLinkConnectionsResult": { + "description": "Result of the request to list all vpn connections to a virtual wan vpn gateway. It contains a list of Vpn Connections and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnSiteLinkConnection" + }, + "description": "List of VpnSiteLinkConnections." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "HubVirtualNetworkConnectionProperties": { + "properties": { + "remoteVirtualNetwork": { + "$ref": "./network.json#/definitions/SubResource", + "description": "Reference to the remote virtual network." + }, + "allowHubToRemoteVnetTransit": { + "type": "boolean", + "description": "VirtualHub to RemoteVnet transit to enabled or not." + }, + "allowRemoteVnetToUseHubVnetGateways": { + "type": "boolean", + "description": "Allow RemoteVnet to use Virtual Hub's gateways." + }, + "enableInternetSecurity": { + "type": "boolean", + "description": "Enable internet security." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the hub virtual network connection resource." + } + }, + "description": "Parameters for HubVirtualNetworkConnection." + }, + "HubVirtualNetworkConnection": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/HubVirtualNetworkConnectionProperties", + "description": "Properties of the hub virtual network connection." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "HubVirtualNetworkConnection Resource." + }, + "ListHubVirtualNetworkConnectionsResult": { + "description": "List of HubVirtualNetworkConnections and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/HubVirtualNetworkConnection" + }, + "description": "List of HubVirtualNetworkConnections." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnSiteId": { + "properties": { + "vpnSite": { + "type": "string", + "readOnly": true, + "description": "The resource-uri of the vpn-site for which config is to be fetched." + } + }, + "description": "VpnSite Resource." + }, + "DeviceProperties": { + "properties": { + "deviceVendor": { + "type": "string", + "description": "Name of the device Vendor." + }, + "deviceModel": { + "type": "string", + "description": "Model of the device." + }, + "linkSpeedInMbps": { + "type": "integer", + "format": "int32", + "description": "Link speed." + } + }, + "description": "List of properties of the device." + }, + "VirtualWanSecurityProviders": { + "properties": { + "supportedProviders": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualWanSecurityProvider" + }, + "description": "List of VirtualWAN security providers." + } + }, + "description": "Collection of SecurityProviders." + }, + "VirtualWanSecurityProvider": { + "properties": { + "name": { + "type": "string", + "description": "Name of the security provider." + }, + "url": { + "type": "string", + "description": "Url of the security provider." + }, + "type": { + "$ref": "#/definitions/VirtualWanSecurityProviderType", + "description": "Name of the security provider." + } + }, + "description": "Collection of SecurityProviders." + }, + "VpnConnectionStatus": { + "type": "string", + "description": "The current state of the vpn connection.", + "readOnly": true, + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "VpnConnectionStatus", + "modelAsString": true + } + }, + "TunnelConnectionStatus": { + "type": "string", + "description": "The current state of the tunnel.", + "readOnly": true, + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "TunnelConnectionStatus", + "modelAsString": true + } + }, + "HubVirtualNetworkConnectionStatus": { + "type": "string", + "description": "The current state of the VirtualHub to vnet connection.", + "readOnly": true, + "enum": [ + "Unknown", + "Connecting", + "Connected", + "NotConnected" + ], + "x-ms-enum": { + "name": "HubVirtualNetworkConnectionStatus", + "modelAsString": true + } + }, + "OfficeTrafficCategory": { + "type": "string", + "description": "The office traffic category.", + "readOnly": true, + "enum": [ + "Optimize", + "OptimizeAndAllow", + "All", + "None" + ], + "x-ms-enum": { + "name": "OfficeTrafficCategory", + "modelAsString": true + } + }, + "VirtualWanSecurityProviderType": { + "type": "string", + "description": "The virtual wan security provider type.", + "readOnly": true, + "enum": [ + "External", + "Native" + ], + "x-ms-enum": { + "name": "VirtualWanSecurityProviderType", + "modelAsString": true + } + }, + "VpnServerConfigVpnClientRootCertificate": { + "properties": { + "name": { + "type": "string", + "description": "The certificate name." + }, + "publicCertData": { + "type": "string", + "description": "The certificate public data." + } + }, + "description": "Properties of VPN client root certificate of VpnServerConfiguration." + }, + "VpnServerConfigRadiusServerRootCertificate": { + "properties": { + "name": { + "type": "string", + "description": "The certificate name." + }, + "publicCertData": { + "type": "string", + "description": "The certificate public data." + } + }, + "description": "Properties of Radius Server root certificate of VpnServerConfiguration." + }, + "VpnServerConfigVpnClientRevokedCertificate": { + "properties": { + "name": { + "type": "string", + "description": "The certificate name." + }, + "thumbprint": { + "type": "string", + "description": "The revoked VPN client certificate thumbprint." + } + }, + "description": "Properties of the revoked VPN client certificate of VpnServerConfiguration." + }, + "VpnServerConfigRadiusClientRootCertificate": { + "properties": { + "name": { + "type": "string", + "description": "The certificate name." + }, + "thumbprint": { + "type": "string", + "description": "The Radius client root certificate thumbprint." + } + }, + "description": "Properties of the Radius client root certificate of VpnServerConfiguration." + }, + "AadAuthenticationParameters": { + "properties": { + "aadTenant": { + "type": "string", + "description": "AAD Vpn authentication parameter AAD tenant." + }, + "aadAudience": { + "type": "string", + "description": "AAD Vpn authentication parameter AAD audience." + }, + "aadIssuer": { + "type": "string", + "description": "AAD Vpn authentication parameter AAD issuer." + } + }, + "description": "AAD Vpn authentication type related parameters." + }, + "VpnServerConfigurationProperties": { + "properties": { + "name": { + "type": "string", + "description": "The name of the VpnServerConfiguration that is unique within a resource group." + }, + "vpnProtocols": { + "type": "array", + "items": { + "type": "string", + "description": "VPN protocol enabled for the VpnServerConfiguration.", + "enum": [ + "IkeV2", + "OpenVPN" + ], + "x-ms-enum": { + "name": "VpnGatewayTunnelingProtocol", + "modelAsString": true + } + }, + "description": "VPN protocols for the VpnServerConfiguration." + }, + "vpnAuthenticationTypes": { + "type": "array", + "items": { + "type": "string", + "description": "VPN authentication types enabled for the VpnServerConfiguration.", + "enum": [ + "Certificate", + "Radius", + "AAD" + ], + "x-ms-enum": { + "name": "VpnAuthenticationType", + "modelAsString": true + } + }, + "description": "VPN authentication types for the VpnServerConfiguration." + }, + "vpnClientRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfigVpnClientRootCertificate" + }, + "description": "VPN client root certificate of VpnServerConfiguration." + }, + "vpnClientRevokedCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfigVpnClientRevokedCertificate" + }, + "description": "VPN client revoked certificate of VpnServerConfiguration." + }, + "radiusServerRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfigRadiusServerRootCertificate" + }, + "description": "Radius Server root certificate of VpnServerConfiguration." + }, + "radiusClientRootCertificates": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfigRadiusClientRootCertificate" + }, + "description": "Radius client root certificate of VpnServerConfiguration." + }, + "vpnClientIpsecPolicies": { + "type": "array", + "items": { + "$ref": "./virtualNetworkGateway.json#/definitions/IpsecPolicy" + }, + "description": "VpnClientIpsecPolicies for VpnServerConfiguration." + }, + "radiusServerAddress": { + "type": "string", + "description": "The radius server address property of the VpnServerConfiguration resource for point to site client connection." + }, + "radiusServerSecret": { + "type": "string", + "description": "The radius secret property of the VpnServerConfiguration resource for point to site client connection." + }, + "radiusServers": { + "type": "array", + "items": { + "$ref": "./virtualNetworkGateway.json#/definitions/RadiusServer" + }, + "description": "Multiple Radius Server configuration for VpnServerConfiguration." + }, + "aadAuthenticationParameters": { + "$ref": "#/definitions/AadAuthenticationParameters", + "description": "The set of aad vpn authentication parameters." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the VpnServerConfiguration resource. Possible values are: 'Updating', 'Deleting', and 'Failed'." + }, + "p2SVpnGateways": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/P2SVpnGateway" + }, + "description": "List of references to P2SVpnGateways." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "description": "Parameters for VpnServerConfiguration." + }, + "VpnServerConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VpnServerConfigurationProperties", + "description": "Properties of the P2SVpnServer configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "VpnServerConfiguration Resource." + }, + "ListVpnServerConfigurationsResult": { + "description": "Result of the request to list all VpnServerConfigurations. It contains a list of VpnServerConfigurations and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VpnServerConfiguration" + }, + "description": "List of VpnServerConfigurations." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "VpnClientConnectionHealth": { + "properties": { + "totalIngressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "Total of the Ingress Bytes Transferred in this P2S Vpn connection." + }, + "totalEgressBytesTransferred": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "Total of the Egress Bytes Transferred in this connection." + }, + "vpnClientConnectionsCount": { + "type": "integer", + "format": "int32", + "description": "The total of p2s vpn clients connected at this time to this P2SVpnGateway." + }, + "allocatedIpAddresses": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of allocated ip addresses to the connected p2s vpn clients." + } + }, + "description": "VpnClientConnectionHealth properties." + }, + "P2SVpnGatewayProperties": { + "properties": { + "virtualHub": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VirtualHub to which the gateway belongs." + }, + "p2SConnectionConfigurations": { + "type": "array", + "description": "List of all p2s connection configurations of the gateway.", + "items": { + "$ref": "#/definitions/P2SConnectionConfiguration" + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the P2S VPN gateway resource." + }, + "vpnGatewayScaleUnit": { + "type": "integer", + "format": "int32", + "description": "The scale unit for this p2s vpn gateway." + }, + "vpnServerConfiguration": { + "$ref": "./network.json#/definitions/SubResource", + "description": "The VpnServerConfiguration to which the p2sVpnGateway is attached to." + }, + "vpnClientConnectionHealth": { + "readOnly": true, + "$ref": "#/definitions/VpnClientConnectionHealth", + "description": "All P2S VPN clients' connection health status." + } + }, + "description": "Parameters for P2SVpnGateway." + }, + "P2SVpnGateway": { + "required": [ + "location" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/P2SVpnGatewayProperties", + "description": "Properties of the P2SVpnGateway." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "P2SVpnGateway Resource." + }, + "ListP2SVpnGatewaysResult": { + "description": "Result of the request to list P2SVpnGateways. It contains a list of P2SVpnGateways and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/P2SVpnGateway" + }, + "description": "List of P2SVpnGateways." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "P2SVpnProfileParameters": { + "properties": { + "authenticationMethod": { + "$ref": "./network.json#/definitions/AuthenticationMethod", + "description": "VPN client authentication method." + } + }, + "description": "Vpn Client Parameters for package generation." + }, + "VpnProfileResponse": { + "properties": { + "profileUrl": { + "type": "string", + "description": "URL to the VPN profile." + } + }, + "description": "Vpn Profile Response for package generation." + }, + "VpnLinkBgpSettings": { + "properties": { + "asn": { + "type": "integer", + "format": "int64", + "description": "The BGP speaker's ASN." + }, + "bgpPeeringAddress": { + "type": "string", + "description": "The BGP peering address and BGP identifier of this BGP speaker." + } + }, + "description": "BGP settings details for a link." + }, + "VpnLinkProviderProperties": { + "properties": { + "linkProviderName": { + "type": "string", + "description": "Name of the link provider." + }, + "linkSpeedInMbps": { + "type": "integer", + "format": "int32", + "description": "Link speed." + } + }, + "description": "List of properties of a link provider." + }, + "VpnServerConfigurationsResponse": { + "properties": { + "vpnServerConfigurationResourceIds": { + "type": "array", + "items": { + "type": "string", + "description": "VpnServerConfiguration partial resource uri." + }, + "description": "List of VpnServerConfigurations associated with VirtualWan." + } + }, + "description": "VpnServerConfigurations list associated with VirtualWan Response." + }, + "VirtualWanVpnProfileParameters": { + "properties": { + "vpnServerConfigurationResourceId": { + "type": "string", + "description": "VpnServerConfiguration partial resource uri with which VirtualWan is associated to." + }, + "authenticationMethod": { + "$ref": "./network.json#/definitions/AuthenticationMethod", + "description": "VPN client authentication method." + } + }, + "description": "Virtual Wan Vpn profile parameters Vpn profile generation." + }, + "P2SVpnConnectionHealthRequest": { + "properties": { + "vpnUserNamesFilter": { + "type": "array", + "items": { + "type": "string", + "description": "P2S vpn user name." + }, + "description": "The list of p2s vpn user names whose p2s vpn connection detailed health to retrieve for." + }, + "outputBlobSasUrl": { + "type": "string", + "description": "The sas-url to download the P2S Vpn connection health detail." + } + }, + "description": "List of P2S Vpn connection health request." + }, + "P2SVpnConnectionHealth": { + "properties": { + "sasUrl": { + "type": "string", + "description": "Returned sas url of the blob to which the p2s vpn connection detailed health will be written." + } + }, + "description": "P2S Vpn connection detailed health written to sas url." + }, + "P2SConnectionConfigurationProperties": { + "properties": { + "vpnClientAddressPool": { + "$ref": "./virtualNetwork.json#/definitions/AddressSpace", + "description": "The reference to the address space resource which represents Address space for P2S VpnClient." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the P2SConnectionConfiguration resource." + } + }, + "description": "Parameters for P2SConnectionConfiguration." + }, + "P2SConnectionConfiguration": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/P2SConnectionConfigurationProperties", + "description": "Properties of the P2S connection configuration." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "P2SConnectionConfiguration Resource." + }, + "VirtualHubRouteTableV2Properties": { + "properties": { + "routes": { + "type": "array", + "description": "List of all routes.", + "items": { + "$ref": "#/definitions/VirtualHubRouteV2" + } + }, + "attachedConnections": { + "type": "array", + "description": "List of all connections attached to this route table v2.", + "items": { + "type": "string" + } + }, + "provisioningState": { + "$ref": "./network.json#/definitions/ProvisioningState", + "readOnly": true, + "description": "The provisioning state of the virtual hub route table v2 resource." + } + }, + "description": "Parameters for VirtualHubRouteTableV2." + }, + "VirtualHubRouteTableV2": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/VirtualHubRouteTableV2Properties", + "description": "Properties of the virtual hub route table v2." + }, + "name": { + "type": "string", + "description": "The name of the resource that is unique within a resource group. This name can be used to access the resource." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "VirtualHubRouteTableV2 Resource." + }, + "VirtualHubRouteV2": { + "properties": { + "destinationType": { + "type": "string", + "description": "The type of destinations." + }, + "destinations": { + "type": "array", + "description": "List of all destinations.", + "items": { + "type": "string" + } + }, + "nextHopType": { + "type": "string", + "description": "The type of next hops." + }, + "nextHops": { + "type": "array", + "description": "NextHops ip address.", + "items": { + "type": "string" + } + } + }, + "description": "VirtualHubRouteTableV2 route." + }, + "ListVirtualHubRouteTableV2sResult": { + "description": "List of VirtualHubRouteTableV2s and a URL nextLink to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualHubRouteTableV2" + }, + "description": "List of VirtualHubRouteTableV2s." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "P2SVpnConnectionRequest": { + "description": "List of p2s vpn connections to be disconnected.", + "properties": { + "vpnConnectionIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of p2s vpn connection Ids." + } + } + }, + "VirtualHubId": { + "properties": { + "id": { + "type": "string", + "description": "The resource URI for the Virtual Hub where the ExpressRoute gateway is or will be deployed. The Virtual Hub resource and the ExpressRoute gateway resource reside in the same subscription." + } + }, + "description": "Virtual Hub identifier." + }, + "ExpressRouteCircuitPeeringId": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the ExpressRoute circuit peering." + } + }, + "description": "ExpressRoute circuit peering identifier." + }, + "ExpressRouteConnectionId": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The ID of the ExpressRouteConnection." + } + }, + "description": "The ID of the ExpressRouteConnection." + }, + "ExpressRouteGatewayProperties": { + "required": [ + "virtualHub" + ], + "properties": { + "autoScaleConfiguration": { + "properties": { + "bounds": { + "properties": { + "min": { + "type": "integer", + "description": "Minimum number of scale units deployed for ExpressRoute gateway." + }, + "max": { + "type": "integer", + "description": "Maximum number of scale units deployed for ExpressRoute gateway." + } + }, + "description": "Minimum and maximum number of scale units to deploy." + } + }, + "description": "Configuration for auto scaling." + }, + "expressRouteConnections": { + "type": "array", + "readOnly": true, + "description": "List of ExpressRoute connections to the ExpressRoute gateway.", + "items": { + "$ref": "#/definitions/ExpressRouteConnection" + } + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route gateway resource." + }, + "virtualHub": { + "$ref": "#/definitions/VirtualHubId", + "description": "The Virtual Hub where the ExpressRoute gateway is or will be deployed." + } + }, + "description": "ExpressRoute gateway resource properties." + }, + "ExpressRouteGateway": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteGatewayProperties", + "description": "Properties of the express route gateway." + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ], + "description": "ExpressRoute gateway resource." + }, + "ExpressRouteGatewayList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteGateway" + }, + "description": "List of ExpressRoute gateways." + } + }, + "description": "List of ExpressRoute gateways." + }, + "ExpressRouteConnectionProperties": { + "required": [ + "expressRouteCircuitPeering" + ], + "properties": { + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the express route connection resource." + }, + "expressRouteCircuitPeering": { + "$ref": "#/definitions/ExpressRouteCircuitPeeringId", + "description": "The ExpressRoute circuit peering." + }, + "authorizationKey": { + "type": "string", + "description": "Authorization key to establish the connection." + }, + "routingWeight": { + "type": "integer", + "description": "The routing weight associated to the connection." + }, + "enableInternetSecurity": { + "type": "boolean", + "description": "Enable internet security." + } + }, + "description": "Properties of the ExpressRouteConnection subresource." + }, + "ExpressRouteConnection": { + "required": [ + "name" + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExpressRouteConnectionProperties", + "description": "Properties of the express route connection." + }, + "name": { + "type": "string", + "description": "The name of the resource." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/SubResource" + } + ], + "description": "ExpressRouteConnection resource." + }, + "ExpressRouteConnectionList": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ExpressRouteConnection" + }, + "description": "The list of ExpressRoute connections." + } + }, + "description": "ExpressRouteConnection list." + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/vmssNetworkInterface.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/vmssNetworkInterface.json new file mode 100644 index 000000000000..89562aa3062c --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/vmssNetworkInterface.json @@ -0,0 +1,374 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-10-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListVirtualMachineScaleSetVMNetworkInterfaces", + "description": "Gets information about all network interfaces in a virtual machine in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual machine scale set vm network interfaces": { + "$ref": "./examples/VmssVmNetworkInterfaceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/networkInterfaces": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListVirtualMachineScaleSetNetworkInterfaces", + "description": "Gets all network interfaces in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of NetworkInterface resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual machine scale set network interfaces": { + "$ref": "./examples/VmssNetworkInterfaceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_GetVirtualMachineScaleSetNetworkInterface", + "description": "Get the specified network interface in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterface resource.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterface" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get virtual machine scale set network interface": { + "$ref": "./examples/VmssNetworkInterfaceGet.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipConfigurations": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_ListVirtualMachineScaleSetIpConfigurations", + "description": "Get the specified network interface ip configuration in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the list of resulting NetworkInterfaceIPConfigurations resources.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfigurationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "List virtual machine scale set network interface ip configurations": { + "$ref": "./examples/VmssNetworkInterfaceIpConfigList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipConfigurations/{ipConfigurationName}": { + "get": { + "tags": [ + "NetworkInterfaces" + ], + "operationId": "NetworkInterfaces_GetVirtualMachineScaleSetIpConfiguration", + "description": "Get the specified network interface ip configuration in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the ip configuration." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting NetworkInterfaceIPConfiguration resource.", + "schema": { + "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get virtual machine scale set network interface": { + "$ref": "./examples/VmssNetworkInterfaceIpConfigGet.json" + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/vmssPublicIpAddress.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/vmssPublicIpAddress.json new file mode 100644 index 000000000000..d100152e7711 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/vmssPublicIpAddress.json @@ -0,0 +1,241 @@ +{ + "swagger": "2.0", + "info": { + "title": "NetworkManagementClient", + "description": "The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.", + "version": "2018-10-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/publicipaddresses": { + "get": { + "operationId": "PublicIPAddresses_ListVirtualMachineScaleSetPublicIPAddresses", + "description": "Gets information about all public IP addresses on a virtual machine scale set level.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPInterface resources.", + "schema": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddressListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVMSSPublicIP": { + "$ref": "./examples/VmssPublicIpListAll.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipconfigurations/{ipConfigurationName}/publicipaddresses": { + "get": { + "operationId": "PublicIPAddresses_ListVirtualMachineScaleSetVMPublicIPAddresses", + "description": "Gets information about all public IP addresses in a virtual machine IP configuration in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The network interface name." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The IP configuration name." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Request successful. The operation returns a list of PublicIPAddress resources.", + "schema": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddressListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "ListVMSSVMPublicIP": { + "$ref": "./examples/VmssVmPublicIpList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipconfigurations/{ipConfigurationName}/publicipaddresses/{publicIpAddressName}": { + "get": { + "operationId": "PublicIPAddresses_GetVirtualMachineScaleSetPublicIPAddress", + "description": "Get the specified public IP address in a virtual machine scale set.", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "virtualMachineScaleSetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the virtual machine scale set." + }, + { + "name": "virtualmachineIndex", + "in": "path", + "required": true, + "type": "string", + "description": "The virtual machine index." + }, + { + "name": "networkInterfaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the network interface." + }, + { + "name": "ipConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the IP configuration." + }, + { + "name": "publicIpAddressName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the public IP Address." + }, + { + "$ref": "./network.json#/parameters/ApiVersionVmssParameter" + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Expands referenced resources." + } + ], + "x-ms-examples": { + "GetVMSSPublicIP": { + "$ref": "./examples/VmssPublicIpGet.json" + } + }, + "responses": { + "200": { + "description": "Request successful. The operation returns the resulting PublicIPAddress resource.", + "schema": { + "$ref": "./publicIpAddress.json#/definitions/PublicIPAddress" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + } + } + } +} diff --git a/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/webapplicationfirewall.json b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/webapplicationfirewall.json new file mode 100644 index 000000000000..ea8c20a8b2c2 --- /dev/null +++ b/specification/network/resource-manager/Microsoft.Network/stable/2020-03-01/webapplicationfirewall.json @@ -0,0 +1,743 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-03-01", + "title": "WebApplicationFirewallManagement", + "description": "APIs to manage web application firewall rules." + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies": { + "get": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Lists all of the protection policies within a resource group.", + "operationId": "WebApplicationFirewallPolicies_List", + "x-ms-examples": { + "Lists all WAF policies in a resource group": { + "$ref": "./examples/WafListPolicies.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies": { + "get": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Gets all the WAF policies in a subscription.", + "operationId": "WebApplicationFirewallPolicies_ListAll", + "x-ms-examples": { + "Lists all WAF policies in a subscription": { + "$ref": "./examples/WafListAllPolicies.json" + } + }, + "parameters": [ + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/{policyName}": { + "get": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Retrieve protection policy with specified name within a resource group.", + "operationId": "WebApplicationFirewallPolicies_Get", + "x-ms-examples": { + "Gets a WAF policy within a resource group": { + "$ref": "./examples/WafPolicyGet.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "policyName", + "in": "path", + "required": true, + "type": "string", + "maxLength": 128, + "description": "The name of the policy." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Creates or update policy with specified rule set name within a resource group.", + "operationId": "WebApplicationFirewallPolicies_CreateOrUpdate", + "x-ms-examples": { + "Creates or updates a WAF policy within a resource group": { + "$ref": "./examples/WafPolicyCreateOrUpdate.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "policyName", + "in": "path", + "required": true, + "type": "string", + "maxLength": 128, + "description": "The name of the policy." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "description": "Policy to be created.", + "in": "body", + "name": "parameters", + "required": true, + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicy" + } + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicy" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new protection policy has been created.", + "schema": { + "$ref": "#/definitions/WebApplicationFirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Deletes Policy.", + "operationId": "WebApplicationFirewallPolicies_Delete", + "x-ms-examples": { + "Deletes a WAF policy within a resource group": { + "$ref": "./examples/WafPolicyDelete.json" + } + }, + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group." + }, + { + "name": "policyName", + "in": "path", + "required": true, + "type": "string", + "maxLength": 128, + "description": "The name of the policy." + }, + { + "$ref": "./network.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "./network.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously." + }, + "204": { + "description": "No Content. The request has been accepted but the policy was not found." + }, + "200": { + "description": "Delete successful." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./network.json#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "WebApplicationFirewallPolicy": { + "description": "Defines web application firewall policy.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/WebApplicationFirewallPolicyPropertiesFormat", + "description": "Properties of the web application firewall policy." + }, + "etag": { + "readOnly": true, + "type": "string", + "description": "A unique read-only string that changes whenever the resource is updated." + } + }, + "allOf": [ + { + "$ref": "./network.json#/definitions/Resource" + } + ] + }, + "WebApplicationFirewallPolicyPropertiesFormat": { + "description": "Defines web application firewall policy properties.", + "required": [ + "managedRules" + ], + "properties": { + "policySettings": { + "description": "The PolicySettings for policy.", + "$ref": "#/definitions/PolicySettings" + }, + "customRules": { + "description": "The custom rules inside the policy.", + "type": "array", + "items": { + "$ref": "#/definitions/WebApplicationFirewallCustomRule" + } + }, + "applicationGateways": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./applicationGateway.json#/definitions/ApplicationGateway" + }, + "description": "A collection of references to application gateways." + }, + "provisioningState": { + "readOnly": true, + "$ref": "./network.json#/definitions/ProvisioningState", + "description": "The provisioning state of the web application firewall policy resource." + }, + "resourceState": { + "title": "Resource status of the policy.", + "readOnly": true, + "type": "string", + "description": "Resource status of the policy.", + "enum": [ + "Creating", + "Enabling", + "Enabled", + "Disabling", + "Disabled", + "Deleting" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallPolicyResourceState", + "modelAsString": true + } + }, + "managedRules": { + "description": "Describes the managedRules structure.", + "$ref": "#/definitions/ManagedRulesDefinition" + }, + "httpListeners": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "A collection of references to application gateway http listeners." + }, + "pathBasedRules": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "./network.json#/definitions/SubResource" + }, + "description": "A collection of references to application gateway path rules." + } + } + }, + "WebApplicationFirewallPolicyListResult": { + "description": "Result of the request to list WebApplicationFirewallPolicies. It contains a list of WebApplicationFirewallPolicy objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/WebApplicationFirewallPolicy" + }, + "description": "List of WebApplicationFirewallPolicies within a resource group." + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "URL to get the next set of WebApplicationFirewallPolicy objects if there are any." + } + } + }, + "ManagedRulesDefinition": { + "description": "Allow to exclude some variable satisfy the condition for the WAF check.", + "required": [ + "managedRuleSets" + ], + "properties": { + "exclusions": { + "type": "array", + "items": { + "$ref": "#/definitions/OwaspCrsExclusionEntry" + }, + "description": "The Exclusions that are applied on the policy." + }, + "managedRuleSets": { + "type": "array", + "items": { + "$ref": "#/definitions/ManagedRuleSet" + }, + "description": "The managed rule sets that are associated with the policy." + } + } + }, + "PolicySettings": { + "description": "Defines contents of a web application firewall global configuration.", + "properties": { + "state": { + "description": "The state of the policy.", + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallEnabledState", + "modelAsString": true + } + }, + "mode": { + "description": "The mode of the policy.", + "type": "string", + "enum": [ + "Prevention", + "Detection" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallMode", + "modelAsString": true + } + }, + "requestBodyCheck": { + "type": "boolean", + "description": "Whether to allow WAF to check request Body." + }, + "maxRequestBodySizeInKb": { + "type": "integer", + "format": "int32", + "maximum": 128, + "exclusiveMaximum": false, + "minimum": 8, + "exclusiveMinimum": false, + "description": "Maximum request body size in Kb for WAF." + }, + "fileUploadLimitInMb": { + "type": "integer", + "format": "int32", + "minimum": 0, + "exclusiveMinimum": false, + "description": "Maximum file upload size in Mb for WAF." + } + } + }, + "WebApplicationFirewallCustomRule": { + "description": "Defines contents of a web application rule.", + "required": [ + "priority", + "ruleType", + "matchConditions", + "action" + ], + "properties": { + "name": { + "type": "string", + "description": "The name of the resource that is unique within a policy. This name can be used to access the resource.", + "maxLength": 128 + }, + "etag": { + "type": "string", + "readOnly": true, + "description": "A unique read-only string that changes whenever the resource is updated." + }, + "priority": { + "description": "Priority of the rule. Rules with a lower value will be evaluated before rules with a higher value.", + "type": "integer" + }, + "ruleType": { + "description": "The rule type.", + "type": "string", + "enum": [ + "MatchRule", + "Invalid" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallRuleType", + "modelAsString": true + } + }, + "matchConditions": { + "description": "List of match conditions.", + "type": "array", + "items": { + "$ref": "#/definitions/MatchCondition" + } + }, + "action": { + "description": "Type of Actions.", + "type": "string", + "enum": [ + "Allow", + "Block", + "Log" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallAction", + "modelAsString": true + } + } + } + }, + "Transform": { + "description": "Transforms applied before matching.", + "type": "string", + "enum": [ + "Lowercase", + "Trim", + "UrlDecode", + "UrlEncode", + "RemoveNulls", + "HtmlEntityDecode" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallTransform", + "modelAsString": true + } + }, + "MatchVariable": { + "description": "Define match variables.", + "required": [ + "variableName" + ], + "properties": { + "variableName": { + "description": "Match Variable.", + "type": "string", + "enum": [ + "RemoteAddr", + "RequestMethod", + "QueryString", + "PostArgs", + "RequestUri", + "RequestHeaders", + "RequestBody", + "RequestCookies" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallMatchVariable", + "modelAsString": true + } + }, + "selector": { + "description": "The selector of match variable.", + "type": "string" + } + } + }, + "MatchCondition": { + "description": "Define match conditions.", + "required": [ + "matchVariables", + "operator", + "matchValues" + ], + "properties": { + "matchVariables": { + "description": "List of match variables.", + "type": "array", + "items": { + "$ref": "#/definitions/MatchVariable" + } + }, + "operator": { + "description": "The operator to be matched.", + "type": "string", + "enum": [ + "IPMatch", + "Equal", + "Contains", + "LessThan", + "GreaterThan", + "LessThanOrEqual", + "GreaterThanOrEqual", + "BeginsWith", + "EndsWith", + "Regex", + "GeoMatch" + ], + "x-ms-enum": { + "name": "WebApplicationFirewallOperator", + "modelAsString": true + } + }, + "negationConditon": { + "description": "Whether this is negate condition or not.", + "type": "boolean" + }, + "matchValues": { + "description": "Match value.", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms.", + "type": "array", + "items": { + "$ref": "#/definitions/Transform" + } + } + } + }, + "ManagedRuleSet": { + "type": "object", + "description": "Defines a managed rule set.", + "required": [ + "ruleSetType", + "ruleSetVersion" + ], + "properties": { + "ruleSetType": { + "description": "Defines the rule set type to use.", + "type": "string" + }, + "ruleSetVersion": { + "description": "Defines the version of the rule set to use.", + "type": "string" + }, + "ruleGroupOverrides": { + "description": "Defines the rule group overrides to apply to the rule set.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedRuleGroupOverride" + } + } + } + }, + "ManagedRuleGroupOverride": { + "description": "Defines a managed rule group override setting.", + "required": [ + "ruleGroupName" + ], + "properties": { + "ruleGroupName": { + "description": "The managed rule group to override.", + "type": "string" + }, + "rules": { + "description": "List of rules that will be disabled. If none specified, all rules in the group will be disabled.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedRuleOverride" + } + } + } + }, + "ManagedRuleOverride": { + "description": "Defines a managed rule group override setting.", + "required": [ + "ruleId" + ], + "properties": { + "ruleId": { + "description": "Identifier for the managed rule.", + "type": "string" + }, + "state": { + "description": "The state of the managed rule. Defaults to Disabled if not specified.", + "type": "string", + "enum": [ + "Disabled" + ], + "x-ms-enum": { + "name": "ManagedRuleEnabledState", + "modelAsString": true + } + } + } + }, + "OwaspCrsExclusionEntry": { + "required": [ + "matchVariable", + "selectorMatchOperator", + "selector" + ], + "description": "Allow to exclude some variable satisfy the condition for the WAF check.", + "properties": { + "matchVariable": { + "type": "string", + "enum": [ + "RequestHeaderNames", + "RequestCookieNames", + "RequestArgNames" + ], + "description": "The variable to be excluded.", + "x-ms-enum": { + "name": "OwaspCrsExclusionEntryMatchVariable", + "modelAsString": true + } + }, + "selectorMatchOperator": { + "type": "string", + "enum": [ + "Equals", + "Contains", + "StartsWith", + "EndsWith", + "EqualsAny" + ], + "description": "When matchVariable is a collection, operate on the selector to specify which elements in the collection this exclusion applies to.", + "x-ms-enum": { + "name": "OwaspCrsExclusionEntrySelectorMatchOperator", + "modelAsString": true + } + }, + "selector": { + "type": "string", + "description": "When matchVariable is a collection, operator used to specify which elements in the collection this exclusion applies to." + } + } + } + } +} diff --git a/specification/network/resource-manager/readme.go.md b/specification/network/resource-manager/readme.go.md index b3d87ad9dec0..c4252d32fa5d 100644 --- a/specification/network/resource-manager/readme.go.md +++ b/specification/network/resource-manager/readme.go.md @@ -13,6 +13,9 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2020-03 + - tag: package-2019-12 + - tag: package-2019-11 - tag: package-2019-09 - tag: package-2019-08 - tag: package-2019-07 @@ -42,6 +45,33 @@ batch: - tag: package-2015-05-preview ``` +### Tag: package-2020-03 and go + +These settings apply only when `--tag=package-2020-03 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2020-03' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2020-03-01/$(namespace) +``` + +### Tag: package-2019-12 and go + +These settings apply only when `--tag=package-2019-12 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2019-12' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2019-12-01/$(namespace) +``` + +### Tag: package-2019-11 and go + +These settings apply only when `--tag=package-2019-11 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2019-11' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2019-11-01/$(namespace) +``` + ### Tag: package-2019-09 and go These settings apply only when `--tag=package-2019-09 --go` is specified on the command line. diff --git a/specification/network/resource-manager/readme.java.md b/specification/network/resource-manager/readme.java.md index 605a36c2ce86..4ac565dd6d7e 100644 --- a/specification/network/resource-manager/readme.java.md +++ b/specification/network/resource-manager/readme.java.md @@ -16,6 +16,7 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-network ``` yaml $(java) && $(multiapi) batch: + - tag: package-2020-03 - tag: package-2019-09 - tag: package-2019-08 - tag: package-2019-07 @@ -24,6 +25,19 @@ batch: - tag: package-2019-02 ``` +### Tag: package-2020-03 and java + +These settings apply only when `--tag=package-2020-03 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2020-03' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.network.v2020_03_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/network/mgmt-v2020_03_01 + regenerate-manager: true + generate-interface: true +``` + ### Tag: package-2019-09 and java These settings apply only when `--tag=package-2019-09 --java` is specified on the command line. diff --git a/specification/network/resource-manager/readme.md b/specification/network/resource-manager/readme.md index a82785fb784f..5dd068282cf2 100644 --- a/specification/network/resource-manager/readme.md +++ b/specification/network/resource-manager/readme.md @@ -28,15 +28,119 @@ These are the global settings for the Network API. title: NetworkManagementClient description: Network Client openapi-type: arm -tag: package-2019-11 +tag: package-2020-03 ``` +### Tag: package-2020-03 + +These settings apply only when `--tag=package-2020-03` is specified on the command line. + +```yaml $(tag) == 'package-2020-03' +input-file: + - Microsoft.Network/stable/2020-03-01/applicationGateway.json + - Microsoft.Network/stable/2020-03-01/applicationSecurityGroup.json + - Microsoft.Network/stable/2020-03-01/availableDelegations.json + - Microsoft.Network/stable/2020-03-01/availableServiceAliases.json + - Microsoft.Network/stable/2020-03-01/azureFirewall.json + - Microsoft.Network/stable/2020-03-01/azureFirewallFqdnTag.json + - Microsoft.Network/stable/2020-03-01/bastionHost.json + - Microsoft.Network/stable/2020-03-01/checkDnsAvailability.json + - Microsoft.Network/stable/2020-03-01/ddosCustomPolicy.json + - Microsoft.Network/stable/2020-03-01/ddosProtectionPlan.json + - Microsoft.Network/stable/2020-03-01/endpointService.json + - Microsoft.Network/stable/2020-03-01/expressRouteCircuit.json + - Microsoft.Network/stable/2020-03-01/expressRouteCrossConnection.json + - Microsoft.Network/stable/2020-03-01/expressRoutePort.json + - Microsoft.Network/stable/2020-03-01/firewallPolicy.json + - Microsoft.Network/stable/2020-03-01/ipAllocation.json + - Microsoft.Network/stable/2020-03-01/ipGroups.json + - Microsoft.Network/stable/2020-03-01/loadBalancer.json + - Microsoft.Network/stable/2020-03-01/natGateway.json + - Microsoft.Network/stable/2020-03-01/network.json + - Microsoft.Network/stable/2020-03-01/networkInterface.json + - Microsoft.Network/stable/2020-03-01/networkProfile.json + - Microsoft.Network/stable/2020-03-01/networkSecurityGroup.json + - Microsoft.Network/stable/2020-03-01/networkVirtualAppliance.json + - Microsoft.Network/stable/2020-03-01/networkWatcher.json + - Microsoft.Network/stable/2020-03-01/operation.json + - Microsoft.Network/stable/2020-03-01/privateEndpoint.json + - Microsoft.Network/stable/2020-03-01/privateLinkService.json + - Microsoft.Network/stable/2020-03-01/publicIpAddress.json + - Microsoft.Network/stable/2020-03-01/publicIpPrefix.json + - Microsoft.Network/stable/2020-03-01/routeFilter.json + - Microsoft.Network/stable/2020-03-01/routeTable.json + - Microsoft.Network/stable/2020-03-01/securityPartnerProvider.json + - Microsoft.Network/stable/2020-03-01/serviceCommunity.json + - Microsoft.Network/stable/2020-03-01/serviceEndpointPolicy.json + - Microsoft.Network/stable/2020-03-01/serviceTags.json + - Microsoft.Network/stable/2020-03-01/usage.json + - Microsoft.Network/stable/2020-03-01/virtualNetwork.json + - Microsoft.Network/stable/2020-03-01/virtualNetworkGateway.json + - Microsoft.Network/stable/2020-03-01/virtualNetworkTap.json + - Microsoft.Network/stable/2020-03-01/virtualRouter.json + - Microsoft.Network/stable/2020-03-01/virtualWan.json + - Microsoft.Network/stable/2020-03-01/vmssNetworkInterface.json + - Microsoft.Network/stable/2020-03-01/vmssPublicIpAddress.json + - Microsoft.Network/stable/2020-03-01/webapplicationfirewall.json +``` +### Tag: package-2019-12 + +These settings apply only when `--tag=package-2019-12` is specified on the command line. + +``` yaml $(tag) == 'package-2019-12' +input-file: + - Microsoft.Network/stable/2019-12-01/applicationGateway.json + - Microsoft.Network/stable/2019-12-01/applicationSecurityGroup.json + - Microsoft.Network/stable/2019-12-01/availableDelegations.json + - Microsoft.Network/stable/2019-12-01/availableServiceAliases.json + - Microsoft.Network/stable/2019-12-01/azureFirewall.json + - Microsoft.Network/stable/2019-12-01/azureFirewallFqdnTag.json + - Microsoft.Network/stable/2019-12-01/bastionHost.json + - Microsoft.Network/stable/2019-12-01/checkDnsAvailability.json + - Microsoft.Network/stable/2019-12-01/ddosCustomPolicy.json + - Microsoft.Network/stable/2019-12-01/ddosProtectionPlan.json + - Microsoft.Network/stable/2019-12-01/endpointService.json + - Microsoft.Network/stable/2019-12-01/expressRouteCircuit.json + - Microsoft.Network/stable/2019-12-01/expressRouteCrossConnection.json + - Microsoft.Network/stable/2019-12-01/expressRouteGateway.json + - Microsoft.Network/stable/2019-12-01/expressRoutePort.json + - Microsoft.Network/stable/2019-12-01/firewallPolicy.json + - Microsoft.Network/stable/2019-12-01/ipGroups.json + - Microsoft.Network/stable/2019-12-01/loadBalancer.json + - Microsoft.Network/stable/2019-12-01/natGateway.json + - Microsoft.Network/stable/2019-12-01/network.json + - Microsoft.Network/stable/2019-12-01/networkInterface.json + - Microsoft.Network/stable/2019-12-01/networkProfile.json + - Microsoft.Network/stable/2019-12-01/networkSecurityGroup.json + - Microsoft.Network/stable/2019-12-01/networkVirtualAppliance.json + - Microsoft.Network/stable/2019-12-01/networkWatcher.json + - Microsoft.Network/stable/2019-12-01/operation.json + - Microsoft.Network/stable/2019-12-01/privateEndpoint.json + - Microsoft.Network/stable/2019-12-01/privateLinkService.json + - Microsoft.Network/stable/2019-12-01/publicIpAddress.json + - Microsoft.Network/stable/2019-12-01/publicIpPrefix.json + - Microsoft.Network/stable/2019-12-01/routeFilter.json + - Microsoft.Network/stable/2019-12-01/routeTable.json + - Microsoft.Network/stable/2019-12-01/serviceCommunity.json + - Microsoft.Network/stable/2019-12-01/serviceEndpointPolicy.json + - Microsoft.Network/stable/2019-12-01/serviceTags.json + - Microsoft.Network/stable/2019-12-01/usage.json + - Microsoft.Network/stable/2019-12-01/virtualNetwork.json + - Microsoft.Network/stable/2019-12-01/virtualNetworkGateway.json + - Microsoft.Network/stable/2019-12-01/virtualNetworkTap.json + - Microsoft.Network/stable/2019-12-01/virtualRouter.json + - Microsoft.Network/stable/2019-12-01/virtualWan.json + - Microsoft.Network/stable/2019-12-01/vmssNetworkInterface.json + - Microsoft.Network/stable/2019-12-01/vmssPublicIpAddress.json + - Microsoft.Network/stable/2019-12-01/webapplicationfirewall.json +``` + ### Tag: package-2019-11 These settings apply only when `--tag=package-2019-11` is specified on the command line. -```yaml $(tag) == 'package-2019-11' +``` yaml $(tag) == 'package-2019-11' input-file: - Microsoft.Network/stable/2019-11-01/applicationGateway.json - Microsoft.Network/stable/2019-11-01/applicationSecurityGroup.json @@ -82,6 +186,7 @@ input-file: - Microsoft.Network/stable/2019-11-01/vmssPublicIpAddress.json - Microsoft.Network/stable/2019-11-01/webapplicationfirewall.json ``` + ### Tag: package-2019-09 These settings apply only when `--tag=package-2019-09` is specified on the command line. @@ -1195,6 +1300,9 @@ directive: - suppress: RequiredPropertiesMissingInResourceModel from: networkSecurityGroup.json reason: name, id and type properties are inherited from the upper level + - suppress: RequiredPropertiesMissingInResourceModel + from: networkVirtualAppliance.json + reason: name, id and type properties are inherited from the upper level - suppress: RequiredPropertiesMissingInResourceModel from: networkWatcher.json reason: name, id and type properties are inherited from the upper level @@ -1213,6 +1321,9 @@ directive: - suppress: RequiredPropertiesMissingInResourceModel from: routeTable.json reason: name, id and type properties are inherited from the upper level + - suppress: RequiredPropertiesMissingInResourceModel + from: securityPartnerProvider.json + reason: name, id and type properties are inherited from the upper level - suppress: RequiredPropertiesMissingInResourceModel from: serviceCommunity.json reason: name, id and type properties are inherited from the upper level @@ -1328,6 +1439,9 @@ directive: - suppress: GetInOperationName where: $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/supportedSecurityProviders"].get.operationId reason: Customized verb is used for API + - suppress: RequiredPropertiesMissingInResourceModel + from: ipAllocation.json + reason: name, id and type properties are inherited from the upper level ``` --- @@ -1380,6 +1494,9 @@ directive: from: networkwatcher.json where: $.definitions.ConnectionMonitorHttpConfiguration.properties.preferHTTPS reason: Accidentally shipped with wrong casing - however fixing the casing is introducing a breaking change which is worse than living with the naming violation + - suppress: RequiredPropertiesMissingInResourceModel + from: ipAllocation.json + reason: name, id and type properties are inherited from the upper level ``` ## Go @@ -1402,6 +1519,95 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(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 diff --git a/specification/network/resource-manager/readme.python.md b/specification/network/resource-manager/readme.python.md index 32a15facc2c8..47fc527b3e45 100644 --- a/specification/network/resource-manager/readme.python.md +++ b/specification/network/resource-manager/readme.python.md @@ -18,6 +18,9 @@ Generate all API versions currently shipped for this package ```yaml $(python) && $(multiapi) batch: + - tag: package-2020-03 + - tag: package-2019-12 + - tag: package-2019-11 - tag: package-2019-09 - tag: package-2019-08 - tag: package-2019-07 @@ -44,6 +47,39 @@ batch: - tag: package-2015-06split ``` +### Tag: package-2020-03 and python + +These settings apply only when `--tag=package-2020-03 --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2020-03' && $(python) +python: + namespace: azure.mgmt.network.v2020_03_01 + output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2020_03_01 +``` + +### Tag: package-2019-12 and python + +These settings apply only when `--tag=package-2019-12 --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2019-12' && $(python) +python: + namespace: azure.mgmt.network.v2019_12_01 + output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2019_12_01 +``` + +### Tag: package-2019-11 and python + +These settings apply only when `--tag=package-2019-11 --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2019-11' && $(python) +python: + namespace: azure.mgmt.network.v2019_11_01 + output-folder: $(python-sdks-folder)/network/azure-mgmt-network/azure/mgmt/network/v2019_11_01 +``` + ### Tag: package-2019-09 and python These settings apply only when `--tag=package-2019-09 --python` is specified on the command line. diff --git a/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/preview/2017-10-01/examples/metadata-get.json b/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/preview/2017-10-01/examples/metadata-get.json new file mode 100644 index 000000000000..f32c42174d86 --- /dev/null +++ b/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/preview/2017-10-01/examples/metadata-get.json @@ -0,0 +1,286 @@ +{ + "title": "Get Metadata", + "description": "A metadata request that returns the workspace schema and other information", + "parameters": { + "subscriptionId": "e4272367-5645-4c4e-9c67-3b74b59a6982", + "resourceGroupName": "contosoazurehq", + "workspaceName": "contosoretail-IT", + "apiVersion": "2018-04-20" + }, + "responses": { + "200": { + "body": { + "tables": [ + { + "id": "ADAssessmentRecommendation", + "name": "ADAssessmentRecommendation", + "description": "Recommendations generated by AD assessments that are started through a scheduled task. When you schedule the assessment it runs by default every 7 days and upload the data into Azure Log Analytics", + "timespanColumn": "TimeGenerated", + "columns": [ + { + "name": "SourceSystem", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "AssessmentId", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "RecommendationId", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "Recommendation", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "Description", + "type": "string" + }, + { + "name": "RecommendationResult", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "TimeGenerated", + "type": "datetime" + }, + { + "name": "FocusAreaId", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "FocusArea", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "ActionAreaId", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "ActionArea", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "RecommendationWeight", + "type": "real" + }, + { + "name": "Computer", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "AffectedObjectType", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "AffectedObjectName", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "Forest", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "Domain", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "DomainController", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "Technology", + "type": "string" + }, + { + "name": "CustomData", + "type": "string" + }, + { + "name": "TargetCount", + "type": "int" + }, + { + "name": "IsRollup", + "type": "bool", + "isPreferredFacet": true + }, + { + "name": "IsCopied", + "type": "bool", + "isPreferredFacet": true + }, + { + "name": "RecommendationPeriod", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "Type", + "type": "string" + }, + { + "name": "_ResourceId", + "type": "string" + } + ], + "related": { + "categories": [ + "workloads" + ], + "solutions": [ + "ADAssessment" + ], + "resourceTypes": [ + "microsoft.compute/virtualmachines" + ] + } + }, + { + "id": "custom_CL", + "name": "custom_CL", + "timespanColumn": "TimeGenerated", + "columns": [ + { + "name": "SourceSystem", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "ManagementGroupName", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "TimeGenerated", + "type": "datetime", + "isPreferredFacet": true + }, + { + "name": "Computer", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "RawData", + "type": "string" + }, + { + "name": "Type", + "type": "string" + }, + { + "name": "_ResourceId", + "type": "string" + } + ], + "related": { + "workspaces": [ + "b438b4f6-912a-46d5-9cb1-b44069212abc" + ] + } + } + ], + "solutions": [ + { + "id": "ADAssessment", + "name": "ADAssessment", + "displayName": "Active Directory Health Check", + "description": "Assess the risk and health of Active Directory environments.", + "related": { + "tables": [ + "ADAssessmentRecommendation" + ], + "functions": [ + "dwad" + ], + "workspaces": [ + "b438b4f6-912a-46d5-9cb1-b44069212abc" + ] + } + } + ], + "functions": [ + { + "id": "dwad", + "name": "dwad", + "displayName": "dasd", + "body": "Heartbeat\r\n| where ResourceGroup != \"rg-SAP-DEVQA-005\" and ResourceGroup != \"rg-SAP-DEVQA-006\" and Computer contains \"\"\r\n| limit 500000\r\n| sort by Computer asc\r\n| distinct Computer\r\n", + "related": { + "solutions": [ + "ADAssessment" + ], + "workspaces": [ + "b438b4f6-912a-46d5-9cb1-b44069212abc" + ] + } + } + ], + "resourceTypes": [ + { + "id": "microsoft.compute/virtualmachines", + "type": "Microsoft.Compute/VirtualMachines", + "displayName": "Virtual machines", + "related": { + "tables": [ + "ADAssessmentRecommendation" + ] + } + } + ], + "workspaces": [ + { + "id": "b438b4f6-912a-46d5-9cb1-b44069212abc", + "resourceId": "/subscriptions/e4272367-5645-4c4e-9c67-3b74b59a6982/resourceGroups/contosoazurehq/providers/microsoft.operationalinsights/workspaces/contosoretail-IT", + "name": "contosoretail-IT", + "region": "eastus", + "related": { + "resourceTypes": [ + "microsoft.compute/virtualmachines" + ], + "tables": [ + "custom_CL" + ], + "solutions": [ + "ADAssessment" + ], + "functions": [ + "dwad" + ] + } + } + ], + "categories": [ + { + "id": "workloads", + "displayName": "Workloads", + "related": { + "tables": [ + "ADAssessmentRecommendation", + "ADReplicationResult", + "SQLAssessmentRecommendation", + "WorkloadMonitoringPerf" + ] + } + } + ] + } + } + } +} diff --git a/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/preview/2017-10-01/examples/metadata-post.json b/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/preview/2017-10-01/examples/metadata-post.json new file mode 100644 index 000000000000..964abd8f3dc1 --- /dev/null +++ b/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/preview/2017-10-01/examples/metadata-post.json @@ -0,0 +1,286 @@ +{ + "title": "Post Metadata", + "description": "A metadata request that returns the workspace schema and other information", + "parameters": { + "subscriptionId": "e4272367-5645-4c4e-9c67-3b74b59a6982", + "resourceGroupName": "contosoazurehq", + "workspaceName": "contosoretail-IT", + "apiVersion": "2018-04-20" + }, + "responses": { + "200": { + "body": { + "tables": [ + { + "id": "ADAssessmentRecommendation", + "name": "ADAssessmentRecommendation", + "description": "Recommendations generated by AD assessments that are started through a scheduled task. When you schedule the assessment it runs by default every 7 days and upload the data into Azure Log Analytics", + "timespanColumn": "TimeGenerated", + "columns": [ + { + "name": "SourceSystem", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "AssessmentId", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "RecommendationId", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "Recommendation", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "Description", + "type": "string" + }, + { + "name": "RecommendationResult", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "TimeGenerated", + "type": "datetime" + }, + { + "name": "FocusAreaId", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "FocusArea", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "ActionAreaId", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "ActionArea", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "RecommendationWeight", + "type": "real" + }, + { + "name": "Computer", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "AffectedObjectType", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "AffectedObjectName", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "Forest", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "Domain", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "DomainController", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "Technology", + "type": "string" + }, + { + "name": "CustomData", + "type": "string" + }, + { + "name": "TargetCount", + "type": "int" + }, + { + "name": "IsRollup", + "type": "bool", + "isPreferredFacet": true + }, + { + "name": "IsCopied", + "type": "bool", + "isPreferredFacet": true + }, + { + "name": "RecommendationPeriod", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "Type", + "type": "string" + }, + { + "name": "_ResourceId", + "type": "string" + } + ], + "related": { + "categories": [ + "workloads" + ], + "solutions": [ + "ADAssessment" + ], + "resourceTypes": [ + "microsoft.compute/virtualmachines" + ] + } + }, + { + "id": "custom_CL", + "name": "custom_CL", + "timespanColumn": "TimeGenerated", + "columns": [ + { + "name": "SourceSystem", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "ManagementGroupName", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "TimeGenerated", + "type": "datetime", + "isPreferredFacet": true + }, + { + "name": "Computer", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "RawData", + "type": "string" + }, + { + "name": "Type", + "type": "string" + }, + { + "name": "_ResourceId", + "type": "string" + } + ], + "related": { + "workspaces": [ + "b438b4f6-912a-46d5-9cb1-b44069212abc" + ] + } + } + ], + "solutions": [ + { + "id": "ADAssessment", + "name": "ADAssessment", + "displayName": "Active Directory Health Check", + "description": "Assess the risk and health of Active Directory environments.", + "related": { + "tables": [ + "ADAssessmentRecommendation" + ], + "functions": [ + "dwad" + ], + "workspaces": [ + "b438b4f6-912a-46d5-9cb1-b44069212abc" + ] + } + } + ], + "functions": [ + { + "id": "dwad", + "name": "dwad", + "displayName": "dasd", + "body": "Heartbeat\r\n| where ResourceGroup != \"rg-SAP-DEVQA-005\" and ResourceGroup != \"rg-SAP-DEVQA-006\" and Computer contains \"\"\r\n| limit 500000\r\n| sort by Computer asc\r\n| distinct Computer\r\n", + "related": { + "solutions": [ + "ADAssessment" + ], + "workspaces": [ + "b438b4f6-912a-46d5-9cb1-b44069212abc" + ] + } + } + ], + "resourceTypes": [ + { + "id": "microsoft.compute/virtualmachines", + "type": "Microsoft.Compute/VirtualMachines", + "displayName": "Virtual machines", + "related": { + "tables": [ + "ADAssessmentRecommendation" + ] + } + } + ], + "workspaces": [ + { + "id": "b438b4f6-912a-46d5-9cb1-b44069212abc", + "resourceId": "/subscriptions/e4272367-5645-4c4e-9c67-3b74b59a6982/resourceGroups/contosoazurehq/providers/microsoft.operationalinsights/workspaces/contosoretail-IT", + "name": "contosoretail-IT", + "region": "eastus", + "related": { + "resourceTypes": [ + "microsoft.compute/virtualmachines" + ], + "tables": [ + "custom_CL" + ], + "solutions": [ + "ADAssessment" + ], + "functions": [ + "dwad" + ] + } + } + ], + "categories": [ + { + "id": "workloads", + "displayName": "Workloads", + "related": { + "tables": [ + "ADAssessmentRecommendation", + "ADReplicationResult", + "SQLAssessmentRecommendation", + "WorkloadMonitoringPerf" + ] + } + } + ] + } + } + } +} diff --git a/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/preview/2017-10-01/swagger.json b/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/preview/2017-10-01/swagger.json index b43b41998b8f..462cffc53362 100644 --- a/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/preview/2017-10-01/swagger.json +++ b/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/preview/2017-10-01/swagger.json @@ -136,6 +136,84 @@ } } } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/metadata": { + "get": { + "operationId": "Get_Metadata", + "summary": "Gets metadata information", + "description": "Retrieve the metadata information for the workspace, including its schema, functions, workspace info, categories etc.", + "x-ms-examples": { + "metadataGet": { + "$ref": "examples/metadata-get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/workspaceName" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "OK. The API call succeeded and the metadata result is in the response payload", + "schema": { + "$ref": "#/definitions/metadataResults" + } + }, + "default": { + "description": "An error response object.", + "schema": { + "$ref": "#/definitions/errorResponse" + } + } + } + }, + "post": { + "operationId": "Post_Metadata", + "summary": "Gets metadata information", + "description": "Retrieve the metadata information for the workspace, including its schema, functions, workspace info, categories etc.", + "x-ms-examples": { + "metadataPost": { + "$ref": "examples/metadata-post.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/workspaceName" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "OK. The API call succeeded and the metadata result is in the response payload", + "schema": { + "$ref": "#/definitions/metadataResults" + } + }, + "default": { + "description": "An error response object.", + "schema": { + "$ref": "#/definitions/errorResponse" + } + } + } + } } }, "parameters": { @@ -305,6 +383,822 @@ } } }, + "metadataResults": { + "title": "A metadata response.", + "description": "The metadata response for the app, including available tables, etc.", + "type": "object", + "properties": { + "categories": { + "description": "The list of categories that are referenced in this metadata response.", + "type": "array", + "items": { + "$ref": "#/definitions/metadataCategory" + }, + "uniqueItems": true + }, + "resourceTypes": { + "description": "The list of resource types that are referenced in this metadata response.", + "type": "array", + "items": { + "$ref": "#/definitions/metadataResourceType" + }, + "uniqueItems": true + }, + "solutions": { + "description": "The list of Log Analytics solutions installed on the workspace.", + "type": "array", + "items": { + "$ref": "#/definitions/metadataSolution" + }, + "uniqueItems": true + }, + "tables": { + "description": "The list of tables and columns that comprise the schema of the workspace.", + "type": "array", + "items": { + "$ref": "#/definitions/metadataTable" + }, + "uniqueItems": true + }, + "functions": { + "description": "The list of functions stored on the workspace, or introduced by solutions etc.", + "type": "array", + "items": { + "$ref": "#/definitions/metadataFunction" + }, + "uniqueItems": true + }, + "queries": { + "description": "The list of saved queries stored on the workspace, or introduced by solutions, resource types, etc.", + "type": "array", + "items": { + "$ref": "#/definitions/metadataQuery" + }, + "uniqueItems": true + }, + "applications": { + "description": "The list of Application Insights apps that were referenced in the metadata request.", + "type": "array", + "items": { + "$ref": "#/definitions/metadataApplication" + }, + "uniqueItems": true + }, + "workspaces": { + "description": "The list of Log Analytics workspaces that were referenced in the metadata request.", + "type": "array", + "items": { + "$ref": "#/definitions/metadataWorkspace" + }, + "uniqueItems": true + }, + "resources": { + "description": "The list of Azure resources that were referenced in the metadata request.", + "type": "array", + "items": { + "$ref": "#/definitions/metadataResource" + }, + "uniqueItems": true + }, + "permissions": { + "description": "The list of permission rules that affected the metadata request.", + "type": "array", + "items": { + "$ref": "#/definitions/metadataPermissions" + }, + "uniqueItems": true + } + } + }, + "metadataCategory": { + "title": "A metadata category.", + "description": "Categories are used to group other metadata entities.", + "type": "object", + "properties": { + "id": { + "description": "The ID of the category", + "type": "string" + }, + "displayName": { + "description": "The display name of the category", + "type": "string" + }, + "description": { + "description": "The description of the category", + "type": "string" + }, + "related": { + "description": "The related metadata items for the category", + "type": "object", + "properties": { + "tables": { + "description": "The tables related to the category", + "type": "array", + "items": { + "type": "string" + } + }, + "functions": { + "description": "The functions related to the category", + "type": "array", + "items": { + "type": "string" + } + }, + "resourceTypes": { + "description": "The resource types related to the category", + "type": "array", + "items": { + "type": "string" + } + }, + "queries": { + "description": "The saved queries related to the category", + "type": "array", + "items": { + "type": "string" + } + }, + "solutions": { + "description": "The Log Analytics solutions related to the category", + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "required": [ + "id", + "displayName" + ] + }, + "metadataSolution": { + "title": "A Log Analytics solution.", + "description": "Solutions can group tables and functions that are associated with a certain Azure Log Analytics offering.", + "type": "object", + "properties": { + "id": { + "description": "The ID of the Log Analytics solution", + "type": "string" + }, + "name": { + "description": "The name of the Log Analytics solution", + "type": "string" + }, + "displayName": { + "description": "The display name of the Log Analytics solution", + "type": "string" + }, + "description": { + "description": "The description of the Log Analytics solution", + "type": "string" + }, + "tags": { + "description": "The tags that are associated with the Log Analytics solution", + "$ref": "#/definitions/tags" + }, + "properties": { + "description": "The properties of the Log Analytics solution", + "type": "object" + }, + "related": { + "description": "The related metadata items for the Log Analytics solution", + "type": "object", + "properties": { + "tables": { + "description": "The tables related to the Log Analytics solution", + "type": "array", + "items": { + "type": "string" + } + }, + "functions": { + "description": "The functions related to the Log Analytics solution", + "type": "array", + "items": { + "type": "string" + } + }, + "categories": { + "description": "The categories related to the Log Analytics solution", + "type": "array", + "items": { + "type": "string" + } + }, + "queries": { + "description": "The saved queries related to the Log Analytics solution", + "type": "array", + "items": { + "type": "string" + } + }, + "workspaces": { + "description": "The Workspaces referenced in the metadata request that are related to the Log Analytics solution", + "type": "array", + "items": { + "type": "string" + } + } + }, + "required": [ + "tables" + ] + } + }, + "required": [ + "id", + "name", + "related" + ] + }, + "metadataResourceType": { + "title": "A type of resource in Azure.", + "description": "Metadata about types of Azure resources, containing relevant tables, functions, etc.", + "type": "object", + "properties": { + "id": { + "description": "The ID of the resource-type", + "type": "string" + }, + "type": { + "description": "The type of the resource-type", + "type": "string" + }, + "displayName": { + "description": "The display name of the resource-type", + "type": "string" + }, + "description": { + "description": "The description of the resource-type", + "type": "string" + }, + "labels": { + "description": "The user-defined labels of the resource-type", + "type": "array", + "items": { + "type": "string" + } + }, + "tags": { + "description": "The tags associated with the resource-type", + "$ref": "#/definitions/tags" + }, + "properties": { + "description": "The properties of the resource-type", + "type": "object" + }, + "related": { + "description": "The related metadata items for the resource-type", + "type": "object", + "properties": { + "tables": { + "description": "The tables related to the resource-type", + "type": "array", + "items": { + "type": "string" + } + }, + "functions": { + "description": "The functions related to the resource-type", + "type": "array", + "items": { + "type": "string" + } + }, + "categories": { + "description": "The categories related to the resource-type", + "type": "array", + "items": { + "type": "string" + } + }, + "queries": { + "description": "The queries related to the resource-type", + "type": "array", + "items": { + "type": "string" + } + }, + "workspaces": { + "description": "The Log Analytics workspaces related to the resource-type", + "type": "array", + "items": { + "type": "string" + } + }, + "resources": { + "description": "The Azure resources related to the resource-type", + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "required": [ + "id", + "type" + ] + }, + "metadataTable": { + "title": "A data table that takes part in a workspace schema.", + "description": "Tables are part of the workspace schema, and contain a list of columns and a reference to other relevant metadata items.", + "type": "object", + "properties": { + "id": { + "description": "The ID of the table", + "type": "string" + }, + "name": { + "description": "The name of the table", + "type": "string" + }, + "description": { + "description": "The description of the table", + "type": "string" + }, + "timespanColumn": { + "description": "The column associated with the timespan query parameter for the table", + "type": "string" + }, + "labels": { + "description": "The user defined labels of the table", + "type": "array", + "items": { + "type": "string" + } + }, + "tags": { + "description": "The tags associated with the table", + "$ref": "#/definitions/tags" + }, + "properties": { + "description": "The properties of the table", + "type": "object" + }, + "columns": { + "description": "The list of columns defined on the table", + "type": "array", + "items": { + "properties": { + "name": { + "description": "The name of the column", + "type": "string" + }, + "description": { + "description": "The description of the column", + "type": "string" + }, + "type": { + "description": "The data type of the column", + "type": "string", + "enum": [ + "bool", + "datetime", + "dynamic", + "int", + "long", + "real", + "string" + ], + "x-ms-enum": { + "name": "MetadataColumnDataType", + "modelAsString": true + } + }, + "isPreferredFacet": { + "description": "A flag indicating this column is a preferred facet", + "type": "boolean" + }, + "source": { + "description": "an indication of the source of the column, used only when multiple workspaces have conflicting definition for the column", + "type": "object" + } + }, + "required": [ + "name", + "type" + ] + } + }, + "related": { + "description": "The related metadata items for the table", + "type": "object", + "properties": { + "categories": { + "description": "The related categories for the table", + "type": "array", + "items": { + "type": "string" + } + }, + "solutions": { + "description": "The related Log Analytics solutions for the table", + "type": "array", + "items": { + "type": "string" + } + }, + "resourceTypes": { + "description": "The related resource types for the table", + "type": "array", + "items": { + "type": "string" + } + }, + "workspaces": { + "description": "The related Log Analytics workspaces for the table", + "type": "array", + "items": { + "type": "string" + } + }, + "functions": { + "description": "The related functions for the table", + "type": "array", + "items": { + "type": "string" + } + }, + "queries": { + "description": "The related saved queries for the table", + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "required": [ + "id", + "name" + ] + }, + "metadataFunction": { + "title": "A stored function.", + "description": "Functions are stored Kusto queries that can be specified as part of queries by using their name.", + "type": "object", + "properties": { + "id": { + "description": "The ID of the function.", + "type": "string" + }, + "name": { + "description": "The name of the function, to be used in queries.", + "type": "string" + }, + "parameters": { + "description": "The parameters/arguments of the function, if any.", + "type": "string" + }, + "displayName": { + "description": "The display name of the function.", + "type": "string" + }, + "description": { + "description": "The description of the function.", + "type": "string" + }, + "body": { + "description": "The KQL body of the function.", + "type": "string" + }, + "tags": { + "description": "The tags associated with the function.", + "$ref": "#/definitions/tags" + }, + "properties": { + "description": "The properties of the function.", + "type": "object" + }, + "related": { + "description": "The related metadata items for the function.", + "type": "object", + "properties": { + "tables": { + "description": "The related tables for the function.", + "type": "array", + "items": { + "type": "string" + } + }, + "solutions": { + "description": "The related Log Analytics solutions for the function.", + "type": "array", + "items": { + "type": "string" + } + }, + "resourceTypes": { + "description": "The related resource types for the function.", + "type": "array", + "items": { + "type": "string" + } + }, + "categories": { + "description": "The related categories for the function.", + "type": "array", + "items": { + "type": "string" + } + }, + "workspaces": { + "description": "The related workspaces for the function.", + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "required": [ + "id", + "name", + "body" + ] + }, + "metadataQuery": { + "title": "A stored query.", + "description": "Queries are stored pieces of KQL, along with a list of relevant metadata items.", + "type": "object", + "properties": { + "id": { + "description": "The ID of the query.", + "type": "string" + }, + "displayName": { + "description": "The display name of the query.", + "type": "string" + }, + "description": { + "description": "The description of the query.", + "type": "string" + }, + "body": { + "description": "The KQL body of the query.", + "type": "string" + }, + "labels": { + "description": "The user defined labels associated with the query.", + "type": "array", + "items": { + "type": "string" + } + }, + "tags": { + "description": "The tags associated with the query.", + "$ref": "#/definitions/tags" + }, + "properties": { + "description": "The properties of the query.", + "type": "object" + }, + "related": { + "description": "The related metadata items for the query.", + "type": "object", + "properties": { + "categories": { + "description": "The related categories for the query.", + "type": "array", + "items": { + "type": "string" + } + }, + "solutions": { + "description": "The related Log Analytics solutions for the query.", + "type": "array", + "items": { + "type": "string" + } + }, + "resourceTypes": { + "description": "The related resource types for the query.", + "type": "array", + "items": { + "type": "string" + } + }, + "tables": { + "description": "The related tables for the query.", + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "required": [ + "id", + "body" + ] + }, + "metadataApplication": { + "title": "An Application Insights application.", + "description": "Application Insights apps that were part of the metadata request and that the user has access to.", + "type": "object", + "properties": { + "id": { + "description": "The ID of the Application Insights app.", + "type": "string" + }, + "resourceId": { + "description": "The ARM resource ID of the Application Insights app.", + "type": "string" + }, + "name": { + "description": "The name of the Application Insights app.", + "type": "string" + }, + "region": { + "description": "The Azure region of the Application Insights app.", + "type": "string" + }, + "related": { + "description": "The related metadata items for the Application Insights app.", + "type": "object", + "properties": { + "tables": { + "description": "The related tables for the Application Insights app.", + "type": "array", + "items": { + "type": "string" + } + }, + "functions": { + "description": "The related functions for the Application Insights app.", + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "required": [ + "id", + "resourceId", + "name", + "region" + ] + }, + "metadataWorkspace": { + "title": "A Log Analytics workspace.", + "description": "Log Analytics workspaces that were part of the metadata request and that the user has access to.", + "type": "object", + "properties": { + "id": { + "description": "The ID of the Log Analytics workspace.", + "type": "string" + }, + "resourceId": { + "description": "The ARM resource ID of the Log Analytics workspace.", + "type": "string" + }, + "name": { + "description": "The name of the Log Analytics workspace.", + "type": "string" + }, + "region": { + "description": "The Azure region of the Log Analytics workspace.", + "type": "string" + }, + "related": { + "description": "The related metadata items for the Log Analytics workspace.", + "type": "object", + "properties": { + "tables": { + "description": "The related tables for the Log Analytics workspace.", + "type": "array", + "items": { + "type": "string" + } + }, + "solutions": { + "description": "The related Log Analytics solutions for the Log Analytics workspace.", + "type": "array", + "items": { + "type": "string" + } + }, + "resourceTypes": { + "description": "The related resource types for the Log Analytics workspace.", + "type": "array", + "items": { + "type": "string" + } + }, + "functions": { + "description": "The related functions for the Log Analytics workspace.", + "type": "array", + "items": { + "type": "string" + } + }, + "resources": { + "description": "The related Azure resources for the Log Analytics workspace.", + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "required": [ + "id", + "resourceId", + "name", + "region" + ] + }, + "metadataResource": { + "title": "An Azure resource.", + "description": "Azure resources that were part of the metadata request and that the user has access to." + }, + "metadataPermissions": { + "title": "Permission information.", + "description": "Permission information for the metadata call, includes apps/workspaces/resource the user didn't have access to.", + "type": "object", + "properties": { + "workspaces": { + "description": "The permission indication for the workspaces on the metadata request.", + "type": "array", + "items": { + "type": "object", + "properties": { + "resourceId": { + "description": "The resource ID on the permission indication.", + "type": "string" + }, + "denyTables": { + "description": "The list of tables that were denied access for the resource ID.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "required": [ + "resourceId" + ] + } + }, + "resources": { + "description": "The permission indication for the Azure resources on the metadata request.", + "type": "array", + "items": { + "type": "object", + "properties": { + "resourceId": { + "description": "The resource ID on the permission indication.", + "type": "string" + }, + "denyTables": { + "description": "The list of tables that were denied access for the resource ID.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "required": [ + "resourceId" + ] + } + }, + "applications": { + "description": "The permission indication for the Application Insights apps on the metadata request.", + "type": "array", + "items": { + "type": "object", + "properties": { + "resourceId": { + "description": "The resource ID on the permission indication.", + "type": "string" + } + }, + "required": [ + "resourceId" + ] + } + } + }, + "required": [ + "workspaces" + ] + }, + "tags": { + "description": "String-based key-value tags", + "type": "object" + }, "errorDetail": { "title": "Error details.", "type": "object", @@ -333,6 +1227,7 @@ } }, "additionalProperties": { + "description": "Additional properties that can be provided on the error details object", "type": "object" } }, @@ -365,6 +1260,7 @@ "$ref": "#/definitions/errorInfo" }, "additionalProperties": { + "description": "Additional properties that can be provided on the error info object", "type": "object" } }, diff --git a/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/stable/v1/OperationalInsights.json b/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/stable/v1/OperationalInsights.json index 286c4d57c86a..120b693a23a2 100644 --- a/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/stable/v1/OperationalInsights.json +++ b/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/stable/v1/OperationalInsights.json @@ -119,6 +119,66 @@ } } } + }, + "/workspaces/{workspaceId}/metadata": { + "get": { + "operationId": "Get_Metadata", + "summary": "Gets metadata information", + "description": "Retrieve the metadata information for the workspace, including its schema, functions, workspace info, categories etc.", + "x-ms-examples": { + "metadataGet": { + "$ref": "examples/metadata-get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/workspaceId" + } + ], + "responses": { + "200": { + "description": "OK. The API call succeeded and the metadata result is in the response payload", + "schema": { + "$ref": "#/definitions/metadataResults" + } + }, + "default": { + "description": "An error response object.", + "schema": { + "$ref": "#/definitions/errorResponse" + } + } + } + }, + "post": { + "operationId": "Post_Metadata", + "summary": "Gets metadata information", + "description": "Retrieve the metadata information for the workspace, including its schema, functions, workspace info, categories etc.", + "x-ms-examples": { + "metadataPost": { + "$ref": "examples/metadata-post.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/workspaceId" + } + ], + "responses": { + "200": { + "description": "OK. The API call succeeded and the metadata result is in the response payload", + "schema": { + "$ref": "#/definitions/metadataResults" + } + }, + "default": { + "description": "An error response object.", + "schema": { + "$ref": "#/definitions/errorResponse" + } + } + } + } } }, "parameters": { @@ -270,6 +330,822 @@ } } }, + "metadataResults": { + "title": "A metadata response.", + "description": "The metadata response for the app, including available tables, etc.", + "type": "object", + "properties": { + "categories": { + "description": "The list of categories that are referenced in this metadata response.", + "type": "array", + "items": { + "$ref": "#/definitions/metadataCategory" + }, + "uniqueItems": true + }, + "resourceTypes": { + "description": "The list of resource types that are referenced in this metadata response.", + "type": "array", + "items": { + "$ref": "#/definitions/metadataResourceType" + }, + "uniqueItems": true + }, + "solutions": { + "description": "The list of Log Analytics solutions installed on the workspace.", + "type": "array", + "items": { + "$ref": "#/definitions/metadataSolution" + }, + "uniqueItems": true + }, + "tables": { + "description": "The list of tables and columns that comprise the schema of the workspace.", + "type": "array", + "items": { + "$ref": "#/definitions/metadataTable" + }, + "uniqueItems": true + }, + "functions": { + "description": "The list of functions stored on the workspace, or introduced by solutions etc.", + "type": "array", + "items": { + "$ref": "#/definitions/metadataFunction" + }, + "uniqueItems": true + }, + "queries": { + "description": "The list of saved queries stored on the workspace, or introduced by solutions, resource types, etc.", + "type": "array", + "items": { + "$ref": "#/definitions/metadataQuery" + }, + "uniqueItems": true + }, + "applications": { + "description": "The list of Application Insights apps that were referenced in the metadata request.", + "type": "array", + "items": { + "$ref": "#/definitions/metadataApplication" + }, + "uniqueItems": true + }, + "workspaces": { + "description": "The list of Log Analytics workspaces that were referenced in the metadata request.", + "type": "array", + "items": { + "$ref": "#/definitions/metadataWorkspace" + }, + "uniqueItems": true + }, + "resources": { + "description": "The list of Azure resources that were referenced in the metadata request.", + "type": "array", + "items": { + "$ref": "#/definitions/metadataResource" + }, + "uniqueItems": true + }, + "permissions": { + "description": "The list of permission rules that affected the metadata request.", + "type": "array", + "items": { + "$ref": "#/definitions/metadataPermissions" + }, + "uniqueItems": true + } + } + }, + "metadataCategory": { + "title": "A metadata category.", + "description": "Categories are used to group other metadata entities.", + "type": "object", + "properties": { + "id": { + "description": "The ID of the category", + "type": "string" + }, + "displayName": { + "description": "The display name of the category", + "type": "string" + }, + "description": { + "description": "The description of the category", + "type": "string" + }, + "related": { + "description": "The related metadata items for the category", + "type": "object", + "properties": { + "tables": { + "description": "The tables related to the category", + "type": "array", + "items": { + "type": "string" + } + }, + "functions": { + "description": "The functions related to the category", + "type": "array", + "items": { + "type": "string" + } + }, + "resourceTypes": { + "description": "The resource types related to the category", + "type": "array", + "items": { + "type": "string" + } + }, + "queries": { + "description": "The saved queries related to the category", + "type": "array", + "items": { + "type": "string" + } + }, + "solutions": { + "description": "The Log Analytics solutions related to the category", + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "required": [ + "id", + "displayName" + ] + }, + "metadataSolution": { + "title": "A Log Analytics solution.", + "description": "Solutions can group tables and functions that are associated with a certain Azure Log Analytics offering.", + "type": "object", + "properties": { + "id": { + "description": "The ID of the Log Analytics solution", + "type": "string" + }, + "name": { + "description": "The name of the Log Analytics solution", + "type": "string" + }, + "displayName": { + "description": "The display name of the Log Analytics solution", + "type": "string" + }, + "description": { + "description": "The description of the Log Analytics solution", + "type": "string" + }, + "tags": { + "description": "The tags that are associated with the Log Analytics solution", + "$ref": "#/definitions/tags" + }, + "properties": { + "description": "The properties of the Log Analytics solution", + "type": "object" + }, + "related": { + "description": "The related metadata items for the Log Analytics solution", + "type": "object", + "properties": { + "tables": { + "description": "The tables related to the Log Analytics solution", + "type": "array", + "items": { + "type": "string" + } + }, + "functions": { + "description": "The functions related to the Log Analytics solution", + "type": "array", + "items": { + "type": "string" + } + }, + "categories": { + "description": "The categories related to the Log Analytics solution", + "type": "array", + "items": { + "type": "string" + } + }, + "queries": { + "description": "The saved queries related to the Log Analytics solution", + "type": "array", + "items": { + "type": "string" + } + }, + "workspaces": { + "description": "The Workspaces referenced in the metadata request that are related to the Log Analytics solution", + "type": "array", + "items": { + "type": "string" + } + } + }, + "required": [ + "tables" + ] + } + }, + "required": [ + "id", + "name", + "related" + ] + }, + "metadataResourceType": { + "title": "A type of resource in Azure.", + "description": "Metadata about types of Azure resources, containing relevant tables, functions, etc.", + "type": "object", + "properties": { + "id": { + "description": "The ID of the resource-type", + "type": "string" + }, + "type": { + "description": "The type of the resource-type", + "type": "string" + }, + "displayName": { + "description": "The display name of the resource-type", + "type": "string" + }, + "description": { + "description": "The description of the resource-type", + "type": "string" + }, + "labels": { + "description": "The user-defined labels of the resource-type", + "type": "array", + "items": { + "type": "string" + } + }, + "tags": { + "description": "The tags associated with the resource-type", + "$ref": "#/definitions/tags" + }, + "properties": { + "description": "The properties of the resource-type", + "type": "object" + }, + "related": { + "description": "The related metadata items for the resource-type", + "type": "object", + "properties": { + "tables": { + "description": "The tables related to the resource-type", + "type": "array", + "items": { + "type": "string" + } + }, + "functions": { + "description": "The functions related to the resource-type", + "type": "array", + "items": { + "type": "string" + } + }, + "categories": { + "description": "The categories related to the resource-type", + "type": "array", + "items": { + "type": "string" + } + }, + "queries": { + "description": "The queries related to the resource-type", + "type": "array", + "items": { + "type": "string" + } + }, + "workspaces": { + "description": "The Log Analytics workspaces related to the resource-type", + "type": "array", + "items": { + "type": "string" + } + }, + "resources": { + "description": "The Azure resources related to the resource-type", + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "required": [ + "id", + "type" + ] + }, + "metadataTable": { + "title": "A data table that takes part in a workspace schema.", + "description": "Tables are part of the workspace schema, and contain a list of columns and a reference to other relevant metadata items.", + "type": "object", + "properties": { + "id": { + "description": "The ID of the table", + "type": "string" + }, + "name": { + "description": "The name of the table", + "type": "string" + }, + "description": { + "description": "The description of the table", + "type": "string" + }, + "timespanColumn": { + "description": "The column associated with the timespan query parameter for the table", + "type": "string" + }, + "labels": { + "description": "The user defined labels of the table", + "type": "array", + "items": { + "type": "string" + } + }, + "tags": { + "description": "The tags associated with the table", + "$ref": "#/definitions/tags" + }, + "properties": { + "description": "The properties of the table", + "type": "object" + }, + "columns": { + "description": "The list of columns defined on the table", + "type": "array", + "items": { + "properties": { + "name": { + "description": "The name of the column", + "type": "string" + }, + "description": { + "description": "The description of the column", + "type": "string" + }, + "type": { + "description": "The data type of the column", + "type": "string", + "enum": [ + "bool", + "datetime", + "dynamic", + "int", + "long", + "real", + "string" + ], + "x-ms-enum": { + "name": "MetadataColumnDataType", + "modelAsString": true + } + }, + "isPreferredFacet": { + "description": "A flag indicating this column is a preferred facet", + "type": "boolean" + }, + "source": { + "description": "an indication of the source of the column, used only when multiple workspaces have conflicting definition for the column", + "type": "object" + } + }, + "required": [ + "name", + "type" + ] + } + }, + "related": { + "description": "The related metadata items for the table", + "type": "object", + "properties": { + "categories": { + "description": "The related categories for the table", + "type": "array", + "items": { + "type": "string" + } + }, + "solutions": { + "description": "The related Log Analytics solutions for the table", + "type": "array", + "items": { + "type": "string" + } + }, + "resourceTypes": { + "description": "The related resource types for the table", + "type": "array", + "items": { + "type": "string" + } + }, + "workspaces": { + "description": "The related Log Analytics workspaces for the table", + "type": "array", + "items": { + "type": "string" + } + }, + "functions": { + "description": "The related functions for the table", + "type": "array", + "items": { + "type": "string" + } + }, + "queries": { + "description": "The related saved queries for the table", + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "required": [ + "id", + "name" + ] + }, + "metadataFunction": { + "title": "A stored function.", + "description": "Functions are stored Kusto queries that can be specified as part of queries by using their name.", + "type": "object", + "properties": { + "id": { + "description": "The ID of the function.", + "type": "string" + }, + "name": { + "description": "The name of the function, to be used in queries.", + "type": "string" + }, + "parameters": { + "description": "The parameters/arguments of the function, if any.", + "type": "string" + }, + "displayName": { + "description": "The display name of the function.", + "type": "string" + }, + "description": { + "description": "The description of the function.", + "type": "string" + }, + "body": { + "description": "The KQL body of the function.", + "type": "string" + }, + "tags": { + "description": "The tags associated with the function.", + "$ref": "#/definitions/tags" + }, + "properties": { + "description": "The properties of the function.", + "type": "object" + }, + "related": { + "description": "The related metadata items for the function.", + "type": "object", + "properties": { + "tables": { + "description": "The related tables for the function.", + "type": "array", + "items": { + "type": "string" + } + }, + "solutions": { + "description": "The related Log Analytics solutions for the function.", + "type": "array", + "items": { + "type": "string" + } + }, + "resourceTypes": { + "description": "The related resource types for the function.", + "type": "array", + "items": { + "type": "string" + } + }, + "categories": { + "description": "The related categories for the function.", + "type": "array", + "items": { + "type": "string" + } + }, + "workspaces": { + "description": "The related workspaces for the function.", + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "required": [ + "id", + "name", + "body" + ] + }, + "metadataQuery": { + "title": "A stored query.", + "description": "Queries are stored pieces of KQL, along with a list of relevant metadata items.", + "type": "object", + "properties": { + "id": { + "description": "The ID of the query.", + "type": "string" + }, + "displayName": { + "description": "The display name of the query.", + "type": "string" + }, + "description": { + "description": "The description of the query.", + "type": "string" + }, + "body": { + "description": "The KQL body of the query.", + "type": "string" + }, + "labels": { + "description": "The user defined labels associated with the query.", + "type": "array", + "items": { + "type": "string" + } + }, + "tags": { + "description": "The tags associated with the query.", + "$ref": "#/definitions/tags" + }, + "properties": { + "description": "The properties of the query.", + "type": "object" + }, + "related": { + "description": "The related metadata items for the query.", + "type": "object", + "properties": { + "categories": { + "description": "The related categories for the query.", + "type": "array", + "items": { + "type": "string" + } + }, + "solutions": { + "description": "The related Log Analytics solutions for the query.", + "type": "array", + "items": { + "type": "string" + } + }, + "resourceTypes": { + "description": "The related resource types for the query.", + "type": "array", + "items": { + "type": "string" + } + }, + "tables": { + "description": "The related tables for the query.", + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "required": [ + "id", + "body" + ] + }, + "metadataApplication": { + "title": "An Application Insights application.", + "description": "Application Insights apps that were part of the metadata request and that the user has access to.", + "type": "object", + "properties": { + "id": { + "description": "The ID of the Application Insights app.", + "type": "string" + }, + "resourceId": { + "description": "The ARM resource ID of the Application Insights app.", + "type": "string" + }, + "name": { + "description": "The name of the Application Insights app.", + "type": "string" + }, + "region": { + "description": "The Azure region of the Application Insights app.", + "type": "string" + }, + "related": { + "description": "The related metadata items for the Application Insights app.", + "type": "object", + "properties": { + "tables": { + "description": "The related tables for the Application Insights app.", + "type": "array", + "items": { + "type": "string" + } + }, + "functions": { + "description": "The related functions for the Application Insights app.", + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "required": [ + "id", + "resourceId", + "name", + "region" + ] + }, + "metadataWorkspace": { + "title": "A Log Analytics workspace.", + "description": "Log Analytics workspaces that were part of the metadata request and that the user has access to.", + "type": "object", + "properties": { + "id": { + "description": "The ID of the Log Analytics workspace.", + "type": "string" + }, + "resourceId": { + "description": "The ARM resource ID of the Log Analytics workspace.", + "type": "string" + }, + "name": { + "description": "The name of the Log Analytics workspace.", + "type": "string" + }, + "region": { + "description": "The Azure region of the Log Analytics workspace.", + "type": "string" + }, + "related": { + "description": "The related metadata items for the Log Analytics workspace.", + "type": "object", + "properties": { + "tables": { + "description": "The related tables for the Log Analytics workspace.", + "type": "array", + "items": { + "type": "string" + } + }, + "solutions": { + "description": "The related Log Analytics solutions for the Log Analytics workspace.", + "type": "array", + "items": { + "type": "string" + } + }, + "resourceTypes": { + "description": "The related resource types for the Log Analytics workspace.", + "type": "array", + "items": { + "type": "string" + } + }, + "functions": { + "description": "The related functions for the Log Analytics workspace.", + "type": "array", + "items": { + "type": "string" + } + }, + "resources": { + "description": "The related Azure resources for the Log Analytics workspace.", + "type": "array", + "items": { + "type": "string" + } + } + } + } + }, + "required": [ + "id", + "resourceId", + "name", + "region" + ] + }, + "metadataResource": { + "title": "An Azure resource.", + "description": "Azure resources that were part of the metadata request and that the user has access to." + }, + "metadataPermissions": { + "title": "Permission information.", + "description": "Permission information for the metadata call, includes apps/workspaces/resource the user didn't have access to.", + "type": "object", + "properties": { + "workspaces": { + "description": "The permission indication for the workspaces on the metadata request.", + "type": "array", + "items": { + "type": "object", + "properties": { + "resourceId": { + "description": "The resource ID on the permission indication.", + "type": "string" + }, + "denyTables": { + "description": "The list of tables that were denied access for the resource ID.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "required": [ + "resourceId" + ] + } + }, + "resources": { + "description": "The permission indication for the Azure resources on the metadata request.", + "type": "array", + "items": { + "type": "object", + "properties": { + "resourceId": { + "description": "The resource ID on the permission indication.", + "type": "string" + }, + "denyTables": { + "description": "The list of tables that were denied access for the resource ID.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "required": [ + "resourceId" + ] + } + }, + "applications": { + "description": "The permission indication for the Application Insights apps on the metadata request.", + "type": "array", + "items": { + "type": "object", + "properties": { + "resourceId": { + "description": "The resource ID on the permission indication.", + "type": "string" + } + }, + "required": [ + "resourceId" + ] + } + } + }, + "required": [ + "workspaces" + ] + }, + "tags": { + "description": "String-based key-value tags", + "type": "object" + }, "errorDetail": { "title": "Error details.", "type": "object", @@ -298,6 +1174,7 @@ } }, "additionalProperties": { + "description": "Additional properties that can be provided on the error details object", "type": "object" } }, @@ -330,6 +1207,7 @@ "$ref": "#/definitions/errorInfo" }, "additionalProperties": { + "description": "Additional properties that can be provided on the error info object", "type": "object" } }, diff --git a/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/stable/v1/examples/metadata-get.json b/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/stable/v1/examples/metadata-get.json new file mode 100644 index 000000000000..a2c34fe519aa --- /dev/null +++ b/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/stable/v1/examples/metadata-get.json @@ -0,0 +1,284 @@ +{ + "title": "Get Metadata", + "description": "A metadata request that returns the workspace schema and other information", + "parameters": { + "workspaceId": "b438b4f6-912a-46d5-9cb1-b44069212abc", + "apiVersion": "2018-04-20" + }, + "responses": { + "200": { + "body": { + "tables": [ + { + "id": "ADAssessmentRecommendation", + "name": "ADAssessmentRecommendation", + "description": "Recommendations generated by AD assessments that are started through a scheduled task. When you schedule the assessment it runs by default every 7 days and upload the data into Azure Log Analytics", + "timespanColumn": "TimeGenerated", + "columns": [ + { + "name": "SourceSystem", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "AssessmentId", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "RecommendationId", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "Recommendation", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "Description", + "type": "string" + }, + { + "name": "RecommendationResult", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "TimeGenerated", + "type": "datetime" + }, + { + "name": "FocusAreaId", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "FocusArea", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "ActionAreaId", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "ActionArea", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "RecommendationWeight", + "type": "real" + }, + { + "name": "Computer", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "AffectedObjectType", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "AffectedObjectName", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "Forest", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "Domain", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "DomainController", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "Technology", + "type": "string" + }, + { + "name": "CustomData", + "type": "string" + }, + { + "name": "TargetCount", + "type": "int" + }, + { + "name": "IsRollup", + "type": "bool", + "isPreferredFacet": true + }, + { + "name": "IsCopied", + "type": "bool", + "isPreferredFacet": true + }, + { + "name": "RecommendationPeriod", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "Type", + "type": "string" + }, + { + "name": "_ResourceId", + "type": "string" + } + ], + "related": { + "categories": [ + "workloads" + ], + "solutions": [ + "ADAssessment" + ], + "resourceTypes": [ + "microsoft.compute/virtualmachines" + ] + } + }, + { + "id": "custom_CL", + "name": "custom_CL", + "timespanColumn": "TimeGenerated", + "columns": [ + { + "name": "SourceSystem", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "ManagementGroupName", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "TimeGenerated", + "type": "datetime", + "isPreferredFacet": true + }, + { + "name": "Computer", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "RawData", + "type": "string" + }, + { + "name": "Type", + "type": "string" + }, + { + "name": "_ResourceId", + "type": "string" + } + ], + "related": { + "workspaces": [ + "b438b4f6-912a-46d5-9cb1-b44069212abc" + ] + } + } + ], + "solutions": [ + { + "id": "ADAssessment", + "name": "ADAssessment", + "displayName": "Active Directory Health Check", + "description": "Assess the risk and health of Active Directory environments.", + "related": { + "tables": [ + "ADAssessmentRecommendation" + ], + "functions": [ + "dwad" + ], + "workspaces": [ + "b438b4f6-912a-46d5-9cb1-b44069212abc" + ] + } + } + ], + "functions": [ + { + "id": "dwad", + "name": "dwad", + "displayName": "dasd", + "body": "Heartbeat\r\n| where ResourceGroup != \"rg-SAP-DEVQA-005\" and ResourceGroup != \"rg-SAP-DEVQA-006\" and Computer contains \"\"\r\n| limit 500000\r\n| sort by Computer asc\r\n| distinct Computer\r\n", + "related": { + "solutions": [ + "ADAssessment" + ], + "workspaces": [ + "b438b4f6-912a-46d5-9cb1-b44069212abc" + ] + } + } + ], + "resourceTypes": [ + { + "id": "microsoft.compute/virtualmachines", + "type": "Microsoft.Compute/VirtualMachines", + "displayName": "Virtual machines", + "related": { + "tables": [ + "ADAssessmentRecommendation" + ] + } + } + ], + "workspaces": [ + { + "id": "b438b4f6-912a-46d5-9cb1-b44069212abc", + "resourceId": "/subscriptions/e4272367-5645-4c4e-9c67-3b74b59a6982/resourceGroups/contosoazurehq/providers/microsoft.operationalinsights/workspaces/contosoretail-IT", + "name": "contosoretail-IT", + "region": "eastus", + "related": { + "resourceTypes": [ + "microsoft.compute/virtualmachines" + ], + "tables": [ + "custom_CL" + ], + "solutions": [ + "ADAssessment" + ], + "functions": [ + "dwad" + ] + } + } + ], + "categories": [ + { + "id": "workloads", + "displayName": "Workloads", + "related": { + "tables": [ + "ADAssessmentRecommendation", + "ADReplicationResult", + "SQLAssessmentRecommendation", + "WorkloadMonitoringPerf" + ] + } + } + ] + } + } + } +} diff --git a/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/stable/v1/examples/metadata-post.json b/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/stable/v1/examples/metadata-post.json new file mode 100644 index 000000000000..ebfe9e55d2af --- /dev/null +++ b/specification/operationalinsights/data-plane/Microsoft.OperationalInsights/stable/v1/examples/metadata-post.json @@ -0,0 +1,284 @@ +{ + "title": "Post Metadata", + "description": "A metadata request that returns the workspace schema and other information", + "parameters": { + "workspaceId": "b438b4f6-912a-46d5-9cb1-b44069212abc", + "apiVersion": "2018-04-20" + }, + "responses": { + "200": { + "body": { + "tables": [ + { + "id": "ADAssessmentRecommendation", + "name": "ADAssessmentRecommendation", + "description": "Recommendations generated by AD assessments that are started through a scheduled task. When you schedule the assessment it runs by default every 7 days and upload the data into Azure Log Analytics", + "timespanColumn": "TimeGenerated", + "columns": [ + { + "name": "SourceSystem", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "AssessmentId", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "RecommendationId", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "Recommendation", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "Description", + "type": "string" + }, + { + "name": "RecommendationResult", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "TimeGenerated", + "type": "datetime" + }, + { + "name": "FocusAreaId", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "FocusArea", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "ActionAreaId", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "ActionArea", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "RecommendationWeight", + "type": "real" + }, + { + "name": "Computer", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "AffectedObjectType", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "AffectedObjectName", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "Forest", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "Domain", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "DomainController", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "Technology", + "type": "string" + }, + { + "name": "CustomData", + "type": "string" + }, + { + "name": "TargetCount", + "type": "int" + }, + { + "name": "IsRollup", + "type": "bool", + "isPreferredFacet": true + }, + { + "name": "IsCopied", + "type": "bool", + "isPreferredFacet": true + }, + { + "name": "RecommendationPeriod", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "Type", + "type": "string" + }, + { + "name": "_ResourceId", + "type": "string" + } + ], + "related": { + "categories": [ + "workloads" + ], + "solutions": [ + "ADAssessment" + ], + "resourceTypes": [ + "microsoft.compute/virtualmachines" + ] + } + }, + { + "id": "custom_CL", + "name": "custom_CL", + "timespanColumn": "TimeGenerated", + "columns": [ + { + "name": "SourceSystem", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "ManagementGroupName", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "TimeGenerated", + "type": "datetime", + "isPreferredFacet": true + }, + { + "name": "Computer", + "type": "string", + "isPreferredFacet": true + }, + { + "name": "RawData", + "type": "string" + }, + { + "name": "Type", + "type": "string" + }, + { + "name": "_ResourceId", + "type": "string" + } + ], + "related": { + "workspaces": [ + "b438b4f6-912a-46d5-9cb1-b44069212abc" + ] + } + } + ], + "solutions": [ + { + "id": "ADAssessment", + "name": "ADAssessment", + "displayName": "Active Directory Health Check", + "description": "Assess the risk and health of Active Directory environments.", + "related": { + "tables": [ + "ADAssessmentRecommendation" + ], + "functions": [ + "dwad" + ], + "workspaces": [ + "b438b4f6-912a-46d5-9cb1-b44069212abc" + ] + } + } + ], + "functions": [ + { + "id": "dwad", + "name": "dwad", + "displayName": "dasd", + "body": "Heartbeat\r\n| where ResourceGroup != \"rg-SAP-DEVQA-005\" and ResourceGroup != \"rg-SAP-DEVQA-006\" and Computer contains \"\"\r\n| limit 500000\r\n| sort by Computer asc\r\n| distinct Computer\r\n", + "related": { + "solutions": [ + "ADAssessment" + ], + "workspaces": [ + "b438b4f6-912a-46d5-9cb1-b44069212abc" + ] + } + } + ], + "resourceTypes": [ + { + "id": "microsoft.compute/virtualmachines", + "type": "Microsoft.Compute/VirtualMachines", + "displayName": "Virtual machines", + "related": { + "tables": [ + "ADAssessmentRecommendation" + ] + } + } + ], + "workspaces": [ + { + "id": "b438b4f6-912a-46d5-9cb1-b44069212abc", + "resourceId": "/subscriptions/e4272367-5645-4c4e-9c67-3b74b59a6982/resourceGroups/contosoazurehq/providers/microsoft.operationalinsights/workspaces/contosoretail-IT", + "name": "contosoretail-IT", + "region": "eastus", + "related": { + "resourceTypes": [ + "microsoft.compute/virtualmachines" + ], + "tables": [ + "custom_CL" + ], + "solutions": [ + "ADAssessment" + ], + "functions": [ + "dwad" + ] + } + } + ], + "categories": [ + { + "id": "workloads", + "displayName": "Workloads", + "related": { + "tables": [ + "ADAssessmentRecommendation", + "ADReplicationResult", + "SQLAssessmentRecommendation", + "WorkloadMonitoringPerf" + ] + } + } + ] + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/LinkedServices.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/LinkedServices.json new file mode 100644 index 000000000000..3cfe38dc5c86 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/LinkedServices.json @@ -0,0 +1,325 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2015-11-01-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}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/linkedServices/{linkedServiceName}": { + "put": { + "tags": [ + "LinkedServices" + ], + "x-ms-examples": { + "LinkedServicesCreate": { + "$ref": "./examples/LinkedServicesCreate.json" + } + }, + "operationId": "LinkedServices_CreateOrUpdate", + "description": "Create or update a linked service.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the Log Analytics Workspace that will contain the linkedServices resource" + }, + { + "name": "linkedServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the linkedServices resource" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LinkedService" + }, + "description": "The parameters required to create or update a linked service." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/LinkedService" + } + }, + "201": { + "description": "Created response definition.", + "schema": { + "$ref": "#/definitions/LinkedService" + } + } + } + }, + "delete": { + "tags": [ + "LinkedServices" + ], + "x-ms-examples": { + "LinkedServicesDelete": { + "$ref": "./examples/LinkedServicesDelete.json" + } + }, + "operationId": "LinkedServices_Delete", + "description": "Deletes a linked service instance.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the Log Analytics Workspace that contains the linkedServices resource" + }, + { + "name": "linkedServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the linked service." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition." + }, + "204": { + "description": "NoContent response definition." + } + } + }, + "get": { + "tags": [ + "LinkedServices" + ], + "x-ms-examples": { + "LinkedServicesGet": { + "$ref": "./examples/LinkedServicesGet.json" + } + }, + "operationId": "LinkedServices_Get", + "description": "Gets a linked service instance.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the Log Analytics Workspace that contains the linkedServices resource" + }, + { + "name": "linkedServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the linked service." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/LinkedService" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/linkedServices": { + "get": { + "tags": [ + "LinkedServices" + ], + "x-ms-examples": { + "LinkedServicesListByWorkspace": { + "$ref": "./examples/LinkedServicesListByWorkspace.json" + } + }, + "operationId": "LinkedServices_ListByWorkspace", + "description": "Gets the linked services instances in a workspace.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the Log Analytics Workspace that contains the linked services." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/LinkedServiceListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + } + }, + "definitions": { + "LinkedServiceProperties": { + "properties": { + "resourceId": { + "type": "string", + "description": "The resource id of the resource that will be linked to the workspace." + } + }, + "required": [ + "resourceId" + ], + "description": "Linked service properties." + }, + "LinkedService": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LinkedServiceProperties", + "description": "The properties of the linked service." + } + }, + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "description": "The top level Linked service resource container.", + "x-ms-azure-resource": true + }, + "LinkedServiceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LinkedService" + }, + "description": "Gets or sets a list of linked service instances." + } + }, + "description": "The list linked service operation response." + }, + "ProxyResource": { + "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." + } + }, + "description": "Common properties of proxy resource." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Gets subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The name of the resource group to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/OperationalInsights.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/OperationalInsights.json index 6f189cd3152e..ff3f6fe86d1a 100644 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/OperationalInsights.json +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/OperationalInsights.json @@ -34,201 +34,6 @@ } }, "paths": { - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/linkedServices/{linkedServiceName}": { - "put": { - "tags": [ - "LinkedServices" - ], - "x-ms-examples": { - "LinkedServicesCreate": { - "$ref": "./examples/LinkedServicesCreate.json" - } - }, - "operationId": "LinkedServices_CreateOrUpdate", - "description": "Create or update a linked service.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "name": "workspaceName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the Log Analytics Workspace that will contain the linkedServices resource" - }, - { - "name": "linkedServiceName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the linkedServices resource" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/LinkedService" - }, - "description": "The parameters required to create or update a linked service." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK response definition.", - "schema": { - "$ref": "#/definitions/LinkedService" - } - }, - "201": { - "description": "Created response definition.", - "schema": { - "$ref": "#/definitions/LinkedService" - } - } - } - }, - "delete": { - "tags": [ - "LinkedServices" - ], - "x-ms-examples": { - "LinkedServicesDelete": { - "$ref": "./examples/LinkedServicesDelete.json" - } - }, - "operationId": "LinkedServices_Delete", - "description": "Deletes a linked service instance.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "name": "workspaceName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the Log Analytics Workspace that contains the linkedServices resource" - }, - { - "name": "linkedServiceName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the linked service." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK response definition." - }, - "204": { - "description": "NoContent response definition." - } - } - }, - "get": { - "tags": [ - "LinkedServices" - ], - "x-ms-examples": { - "LinkedServicesGet": { - "$ref": "./examples/LinkedServicesGet.json" - } - }, - "operationId": "LinkedServices_Get", - "description": "Gets a linked service instance.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "name": "workspaceName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the Log Analytics Workspace that contains the linkedServices resource" - }, - { - "name": "linkedServiceName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the linked service." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK response definition.", - "schema": { - "$ref": "#/definitions/LinkedService" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/linkedServices": { - "get": { - "tags": [ - "LinkedServices" - ], - "x-ms-examples": { - "LinkedServicesListByWorkspace": { - "$ref": "./examples/LinkedServicesListByWorkspace.json" - } - }, - "operationId": "LinkedServices_ListByWorkspace", - "description": "Gets the linked services instances in a workspace.", - "parameters": [ - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "name": "workspaceName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the Log Analytics Workspace that contains the linked services." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - } - ], - "responses": { - "200": { - "description": "OK response definition.", - "schema": { - "$ref": "#/definitions/LinkedServiceListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": null - } - } - }, "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/dataSources/{dataSourceName}": { "put": { "tags": [ @@ -991,288 +796,6 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/privateLinkResources": { - "get": { - "tags": [ - "PrivateLinkResources" - ], - "description": "Gets the private link resources that need to be created for a Log Analytics Workspace.", - "operationId": "PrivateLinkResources_ListByWorkspace", - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "workspaceName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the Log Analytics Workspace that will contain the datasource" - } - ], - "responses": { - "200": { - "description": "Successfully retrieved private link resources.", - "schema": { - "$ref": "#/definitions/PrivateLinkResourceListResult" - } - } - }, - "x-ms-examples": { - "Gets private endpoint connection.": { - "$ref": "./examples/WorkspacePrivateLinkResourceListGet.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/privateLinkResources/{groupName}": { - "get": { - "tags": [ - "PrivateLinkResources" - ], - "description": "Gets the private link resources that need to be created for a Log Analytics Workspace.", - "operationId": "PrivateLinkResources_Get", - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "workspaceName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the Log Analytics Workspace that will contain the datasource" - }, - { - "$ref": "#/parameters/GroupNameParameter" - } - ], - "responses": { - "200": { - "description": "Successfully retrieved a specified private link resource.", - "schema": { - "$ref": "#/definitions/PrivateLinkResource" - } - } - }, - "x-ms-examples": { - "Gets private endpoint connection.": { - "$ref": "./examples/WorkspacePrivateLinkResourceGet.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/privateEndpointConnections/{privateEndpointConnectionName}": { - "get": { - "tags": [ - "PrivateEndpointConnections" - ], - "description": "Gets a private endpoint connection.", - "operationId": "PrivateEndpointConnections_Get", - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "workspaceName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the Log Analytics Workspace that will contain the datasource" - }, - { - "name": "privateEndpointConnectionName", - "in": "path", - "description": "The name of the private endpoint connection.", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "Successfully retrieved a specified private endpoint connection.", - "schema": { - "$ref": "#/definitions/PrivateEndpointConnection" - } - } - }, - "x-ms-examples": { - "Gets private endpoint connection.": { - "$ref": "./examples/PrivateEndpointConnectionGet.json" - } - } - }, - "put": { - "tags": [ - "PrivateEndpointConnections" - ], - "description": "Approve or reject a private endpoint connection with a given name.", - "operationId": "PrivateEndpointConnections_CreateOrUpdate", - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "workspaceName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the Log Analytics Workspace that will contain the datasource" - }, - { - "name": "privateEndpointConnectionName", - "in": "path", - "description": "The name of the private endpoint connection.", - "required": true, - "type": "string" - }, - { - "name": "parameters", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/PrivateEndpointConnection" - } - } - ], - "responses": { - "200": { - "description": "Successfully approved or rejected private endpoint connection.", - "schema": { - "$ref": "#/definitions/PrivateEndpointConnection" - } - }, - "202": { - "description": "Accepted" - } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Approve or reject a private endpoint connection with a given name.": { - "$ref": "./examples/PrivateEndpointConnectionUpdate.json" - } - } - }, - "delete": { - "tags": [ - "PrivateEndpointConnections" - ], - "description": "Deletes a private endpoint connection with a given name.", - "operationId": "PrivateEndpointConnections_Delete", - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "workspaceName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the Log Analytics Workspace that will contain the datasource" - }, - { - "name": "privateEndpointConnectionName", - "in": "path", - "description": "The name of the private endpoint connection.", - "required": true, - "type": "string" - } - ], - "responses": { - "200": { - "description": "Successfully deleted private endpoint connection." - }, - "202": { - "description": "Accepted" - }, - "204": { - "description": "Private endpoint connection does not exist." - } - }, - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Deletes a private endpoint connection with a given name.": { - "$ref": "./examples/PrivateEndpointConnectionDelete.json" - } - } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/privateEndpointConnections": { - "get": { - "tags": [ - "PrivateEndpointConnections" - ], - "description": "Gets all private endpoint connections on a workspace.", - "operationId": "PrivateEndpointConnections_ListByWorkspace", - "parameters": [ - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ResourceGroupNameParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "workspaceName", - "in": "path", - "required": true, - "type": "string", - "description": "Name of the Log Analytics Workspace that will contain the datasource" - } - ], - "responses": { - "200": { - "description": "Successfully retrieved private endpoint connections.", - "schema": { - "$ref": "#/definitions/PrivateEndpointConnectionListResult" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "Gets list of private endpoint connections on a workspace.": { - "$ref": "./examples/PrivateEndpointConnectionList.json" - } - } - } - }, "/subscriptions/{subscriptionId}/providers/Microsoft.OperationalInsights/locations/{location}/operationStatuses/{asyncOperationId}": { "get": { "x-ms-examples": { @@ -1362,49 +885,6 @@ } } }, - "LinkedServiceProperties": { - "properties": { - "resourceId": { - "type": "string", - "description": "The resource id of the resource that will be linked to the workspace." - } - }, - "required": [ - "resourceId" - ], - "description": "Linked service properties." - }, - "LinkedService": { - "properties": { - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/LinkedServiceProperties", - "description": "The properties of the linked service." - } - }, - "required": [ - "properties" - ], - "allOf": [ - { - "$ref": "#/definitions/ProxyResource" - } - ], - "description": "The top level Linked service resource container.", - "x-ms-azure-resource": true - }, - "LinkedServiceListResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/LinkedService" - }, - "description": "Gets or sets a list of linked service instances." - } - }, - "description": "The list linked service operation response." - }, "DataSourceKind": { "type": "string", "enum": [ @@ -1640,7 +1120,8 @@ "Premium", "PerNode", "PerGB2018", - "Standalone" + "Standalone", + "CapacityReservation" ], "x-ms-enum": { "name": "SkuNameEnum", @@ -1796,149 +1277,6 @@ }, "description": "Common properties of proxy resource." }, - "PrivateLinkResourceListResult": { - "description": "A list of private link resources", - "type": "object", - "properties": { - "value": { - "description": "Array of results.", - "type": "array", - "items": { - "$ref": "#/definitions/PrivateLinkResource" - }, - "readOnly": true - }, - "nextLink": { - "description": "Link to retrieve next page of results.", - "type": "string", - "readOnly": true - } - } - }, - "PrivateLinkResource": { - "description": "A private link resource", - "type": "object", - "properties": { - "properties": { - "$ref": "#/definitions/PrivateLinkResourceProperties", - "description": "Resource properties.", - "x-ms-client-flatten": true - } - }, - "allOf": [ - { - "$ref": "#/definitions/ProxyResource" - } - ] - }, - "PrivateLinkResourceProperties": { - "description": "Properties of a private link resource.", - "type": "object", - "properties": { - "groupId": { - "description": "The private link resource group id.", - "type": "string", - "readOnly": true - }, - "requiredMembers": { - "description": "The private link resource required member names.", - "type": "array", - "items": { - "type": "string" - }, - "readOnly": true - } - } - }, - "PrivateEndpointConnectionProperties": { - "description": "Properties of a private endpoint connection.", - "type": "object", - "properties": { - "privateEndpoint": { - "$ref": "#/definitions/PrivateEndpointProperty", - "description": "Private endpoint which the connection belongs to." - }, - "privateLinkServiceConnectionState": { - "$ref": "#/definitions/PrivateLinkServiceConnectionStateProperty", - "description": "Connection state of the private endpoint connection." - }, - "provisioningState": { - "description": "State of the private endpoint connection.", - "type": "string", - "readOnly": true - } - } - }, - "PrivateEndpointProperty": { - "description": "Private endpoint which the connection belongs to.", - "type": "object", - "properties": { - "id": { - "description": "Resource id of the private endpoint.", - "type": "string" - } - }, - "x-ms-azure-resource": true - }, - "PrivateLinkServiceConnectionStateProperty": { - "description": "State of the private endpoint connection.", - "type": "object", - "required": [ - "status", - "description" - ], - "properties": { - "status": { - "description": "The private link service connection status.", - "type": "string" - }, - "description": { - "description": "The private link service connection description.", - "type": "string" - }, - "actionsRequired": { - "description": "The actions required for private link service connection.", - "type": "string", - "readOnly": true - } - } - }, - "PrivateEndpointConnection": { - "description": "A private endpoint connection", - "x-ms-azure-resource": true, - "type": "object", - "allOf": [ - { - "$ref": "#/definitions/ProxyResource" - } - ], - "properties": { - "properties": { - "$ref": "#/definitions/PrivateEndpointConnectionProperties", - "description": "Resource properties.", - "x-ms-client-flatten": true - } - } - }, - "PrivateEndpointConnectionListResult": { - "description": "A list of private endpoint connections.", - "type": "object", - "properties": { - "value": { - "description": "Array of results.", - "type": "array", - "items": { - "$ref": "#/definitions/PrivateEndpointConnection" - }, - "readOnly": true - }, - "nextLink": { - "description": "Link to retrieve next page of results.", - "type": "string", - "readOnly": true - } - } - }, "ErrorResponse": { "description": "Describes the format of Error response.", "type": "object", @@ -2010,14 +1348,6 @@ "pattern": "^[-\\w\\._\\(\\)]+$", "minLength": 1, "maxLength": 90 - }, - "GroupNameParameter": { - "name": "groupName", - "in": "path", - "description": "The name of the private link resource.", - "required": true, - "x-ms-parameter-location": "method", - "type": "string" } } } diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/PrivateEndpointConnectionDelete.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/PrivateEndpointConnectionDelete.json deleted file mode 100644 index c1056b274ca4..000000000000 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/PrivateEndpointConnectionDelete.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "MyResourceGroup", - "workspaceName": "MyWorkspace", - "privateEndpointConnectionName": "private-endpoint-connection-name", - "api-version": "2015-11-01-preview" - }, - "responses": { - "200": {}, - "202": {}, - "204": {} - } -} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/PrivateEndpointConnectionGet.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/PrivateEndpointConnectionGet.json deleted file mode 100644 index 5f47b5967dd9..000000000000 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/PrivateEndpointConnectionGet.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "MyResourceGroup", - "workspaceName": "MyWorkspace", - "privateEndpointConnectionName": "private-endpoint-connection-name", - "api-version": "2015-11-01-preview" - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/MyResourceGroup/providers/Microsoft.OperationalInsights/workspaces/MyWorkspace/privateEndpointConnections/private-endpoint-connection-name", - "name": "private-endpoint-connection-name", - "type": "Microsoft.OperationalInsights/workspaces/privateEndpointConnections", - "properties": { - "provisioningState": "Succeeded", - "privateEndpoint": { - "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" - }, - "privateLinkServiceConnectionState": { - "status": "Approved", - "description": "Auto-approved", - "actionsRequired": "None" - } - } - } - } - } -} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/PrivateEndpointConnectionList.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/PrivateEndpointConnectionList.json deleted file mode 100644 index 7eb0f56d6d96..000000000000 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/PrivateEndpointConnectionList.json +++ /dev/null @@ -1,48 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "MyResourceGroup", - "workspaceName": "MyWorkspace", - "api-version": "2015-11-01-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/MyResourceGroup/providers/Microsoft.OperationalInsights/workspaces/MyWorkspace/privateEndpointConnections/private-endpoint-connection-name-2", - "name": "private-endpoint-connection-name", - "type": "Microsoft.OperationalInsights/workspaces/privateEndpointConnections", - "properties": { - "provisioningState": "Succeeded", - "privateEndpoint": { - "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" - }, - "privateLinkServiceConnectionState": { - "status": "Approved", - "description": "Auto-approved", - "actionsRequired": "None" - } - } - }, - { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/MyResourceGroup/providers/Microsoft.OperationalInsights/workspaces/MyWorkspace/privateEndpointConnections/private-endpoint-connection-name-2", - "name": "private-endpoint-connection-name-2", - "type": "Microsoft.OperationalInsights/workspaces/privateEndpointConnections", - "properties": { - "provisioningState": "Succeeded", - "privateEndpoint": { - "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name-2" - }, - "privateLinkServiceConnectionState": { - "status": "Pending", - "description": "Please approve my connection.", - "actionsRequired": "None" - } - } - } - ] - } - } - } -} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/PrivateEndpointConnectionUpdate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/PrivateEndpointConnectionUpdate.json deleted file mode 100644 index cb0dcdc32e4a..000000000000 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/PrivateEndpointConnectionUpdate.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "MyResourceGroup", - "workspaceName": "MyWorkspace", - "privateEndpointConnectionName": "private-endpoint-connection-name", - "api-version": "2015-11-01-preview", - "parameters": { - "properties": { - "privateLinkServiceConnectionState": { - "status": "Approved", - "description": "Approved by johndoe@contoso.com" - } - } - } - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/MyResourceGroup/providers/Microsoft.OperationalInsights/workspaces/MyWorkspace/privateEndpointConnections/private-endpoint-connection-name", - "name": "private-endpoint-connection-name", - "type": "Microsoft.OperationalInsights/workspaces/privateEndpointConnections", - "properties": { - "provisioningState": "Succeeded", - "privateEndpoint": { - "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" - }, - "privateLinkServiceConnectionState": { - "status": "Approved", - "description": "Approved by johndoe@contoso.com", - "actionsRequired": "None" - } - } - } - }, - "202": {} - } -} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/WorkspacePrivateLinkResourceGet.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/WorkspacePrivateLinkResourceGet.json deleted file mode 100644 index b9448d3f6e99..000000000000 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/WorkspacePrivateLinkResourceGet.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "MyResourceGroup", - "workspaceName": "MyWorkspace", - "api-version": "2015-11-01-preview", - "groupName": "workspace" - }, - "responses": { - "200": { - "body": { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/MyResourceGroup/providers/Microsoft.OperationalInsights/workspaces/MyWorkspace/privateLinkResources/workspace", - "name": "workspace", - "type": "Microsoft.OperationalInsights/workspaces/privateLinkResources", - "properties": { - "groupId": "workspace", - "requiredMembers": [ - "oms", - "agent", - "ods" - ] - } - } - } - } -} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/WorkspacePrivateLinkResourceListGet.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/WorkspacePrivateLinkResourceListGet.json deleted file mode 100644 index fa14310f3ad7..000000000000 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2015-11-01-preview/examples/WorkspacePrivateLinkResourceListGet.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-1111-2222-3333-444444444444", - "resourceGroupName": "MyResourceGroup", - "workspaceName": "MyWorkspace", - "api-version": "2015-11-01-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/MyResourceGroup/providers/Microsoft.OperationalInsights/workspaces/MyWorkspace/privateLinkResources/workspace", - "name": "workspace", - "type": "Microsoft.OperationalInsights/workspaces/privateLinkResources", - "properties": { - "groupId": "workspace", - "requiredMembers": [ - "oms", - "agent", - "ods" - ] - } - } - ], - "nextLink": null - } - } - } -} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/Clusters.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/Clusters.json index 80c78abf7074..197cfe9edba2 100644 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/Clusters.json +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/Clusters.json @@ -162,17 +162,8 @@ } ], "responses": { - "200": { - "description": "OK response definition.", - "schema": { - "$ref": "#/definitions/Cluster" - } - }, - "201": { - "description": "Created response definition.", - "schema": { - "$ref": "#/definitions/Cluster" - } + "202": { + "description": "Accepted response definition." }, "default": { "description": "Error response describing why the operation failed.", @@ -370,9 +361,9 @@ "modelAsString": true } }, - "encryptionKeyUri": { - "type": "string", - "description": "The Key Vault key or certificate path associated with the Log Analytics cluster." + "keyVaultProperties": { + "$ref": "#/definitions/keyVaultProperties", + "description": "The associated key properties." } }, "description": "Cluster properties." @@ -409,9 +400,9 @@ }, "ClusterPatchProperties": { "properties": { - "encryptionKeyUri": { - "type": "string", - "description": "The Key Vault key or certificate path associated with the Log Analytics cluster." + "keyVaultProperties": { + "$ref": "#/definitions/keyVaultProperties", + "description": "The associated key properties." } }, "description": "Log Analytics cluster patch properties." @@ -423,6 +414,10 @@ "$ref": "#/definitions/ClusterPatchProperties", "description": "Log Analytics cluster properties." }, + "sku": { + "$ref": "#/definitions/sku", + "description": "The sku properties." + }, "tags": { "type": "object", "additionalProperties": { @@ -440,6 +435,10 @@ "$ref": "#/definitions/Identity", "description": "The identity of the resource." }, + "sku": { + "$ref": "#/definitions/sku", + "description": "The sku properties." + }, "properties": { "x-ms-client-flatten": true, "$ref": "#/definitions/ClusterProperties", @@ -470,6 +469,42 @@ }, "description": "The list clusters operation response." }, + "keyVaultProperties": { + "properties": { + "keyVaultUri": { + "description": "The Key Vault uri which holds they key associated with the Log Analytics cluster.", + "type": "string" + }, + "keyName": { + "description": "The name of the key associated with the Log Analytics cluster.", + "type": "string" + }, + "keyVersion": { + "description": "The version of the key associated with the Log Analytics cluster.", + "type": "string" + } + } + }, + "sku": { + "properties": { + "capacity": { + "description": "The capacity value", + "type": "integer", + "format": "int64" + }, + "name": { + "type": "string", + "description": "The name of the SKU.", + "enum": [ + "CapacityReservation" + ], + "x-ms-enum": { + "name": "SkuNameEnum", + "modelAsString": true + } + } + } + }, "Identity": { "properties": { "principalId": { diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/LinkedServices.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/LinkedServices.json new file mode 100644 index 000000000000..745bc549f03b --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/LinkedServices.json @@ -0,0 +1,326 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2019-08-01-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}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/linkedServices/{linkedServiceName}": { + "put": { + "tags": [ + "LinkedServices" + ], + "x-ms-examples": { + "LinkedServicesCreate": { + "$ref": "./examples/LinkedServicesCreate.json" + } + }, + "operationId": "LinkedServices_CreateOrUpdate", + "description": "Create or update a linked service.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the Log Analytics Workspace that will contain the linkedServices resource" + }, + { + "name": "linkedServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the linkedServices resource" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LinkedService" + }, + "description": "The parameters required to create or update a linked service." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/LinkedService" + } + }, + "201": { + "description": "Created response definition.", + "schema": { + "$ref": "#/definitions/LinkedService" + } + } + } + }, + "delete": { + "tags": [ + "LinkedServices" + ], + "x-ms-examples": { + "LinkedServicesDelete": { + "$ref": "./examples/LinkedServicesDelete.json" + } + }, + "operationId": "LinkedServices_Delete", + "description": "Deletes a linked service instance.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the Log Analytics Workspace that contains the linkedServices resource" + }, + { + "name": "linkedServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the linked service." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition." + }, + "204": { + "description": "NoContent response definition." + } + } + }, + "get": { + "tags": [ + "LinkedServices" + ], + "x-ms-examples": { + "LinkedServicesGet": { + "$ref": "./examples/LinkedServicesGet.json" + } + }, + "operationId": "LinkedServices_Get", + "description": "Gets a linked service instance.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the Log Analytics Workspace that contains the linkedServices resource" + }, + { + "name": "linkedServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the linked service." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/LinkedService" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/linkedServices": { + "get": { + "tags": [ + "LinkedServices" + ], + "x-ms-examples": { + "LinkedServicesListByWorkspace": { + "$ref": "./examples/LinkedServicesListByWorkspace.json" + } + }, + "operationId": "LinkedServices_ListByWorkspace", + "description": "Gets the linked services instances in a workspace.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the Log Analytics Workspace that contains the linked services." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/LinkedServiceListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + } + }, + "definitions": { + "LinkedServiceProperties": { + "properties": { + "resourceId": { + "type": "string", + "description": "The resource id of the resource that will be linked to the workspace. This should be used for linking resources which require read access" + }, + "writeAccessResourceId": { + "type": "string", + "description": "The resource id of the resource that will be linked to the workspace. This should be used for linking resources which require write access" + } + }, + "description": "Linked service properties." + }, + "LinkedService": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LinkedServiceProperties", + "description": "The properties of the linked service." + } + }, + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "description": "The top level Linked service resource container.", + "x-ms-azure-resource": true + }, + "LinkedServiceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LinkedService" + }, + "description": "The list of linked service instances" + } + }, + "description": "The list linked service operation response." + }, + "ProxyResource": { + "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." + } + }, + "description": "Common properties of proxy resource." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Gets subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The name of the resource group to get. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/OperationalInsights.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/OperationalInsights.json new file mode 100644 index 000000000000..2a01a76827ae --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/OperationalInsights.json @@ -0,0 +1,685 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2019-08-01-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}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/dataExports": { + "get": { + "tags": [ + "DataExport" + ], + "x-ms-examples": { + "DataExportGet": { + "$ref": "./examples/DataExportListByWorkspace.json" + } + }, + "operationId": "DataExport_ListByWorkspace", + "description": "Lists the data export instances within a workspace.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/DataExportListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/dataExports/{dataExportName}": { + "put": { + "tags": [ + "DataExport" + ], + "x-ms-examples": { + "DataExportCreate": { + "$ref": "./examples/DataExportCreateOrUpdate.json" + } + }, + "operationId": "DataExport_CreateOrUpdate", + "description": "Create or update a data export.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "name": "dataExportName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9-]+[A-Za-z0-9]$", + "minLength": 4, + "maxLength": 63, + "description": "The data export rule name." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataExport" + }, + "description": "The parameters required to create or update a data export." + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/DataExport" + } + }, + "201": { + "description": "Created response definition.", + "schema": { + "$ref": "#/definitions/DataExport" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "DataExport" + ], + "x-ms-examples": { + "DataExportGet": { + "$ref": "./examples/DataExportGet.json" + } + }, + "operationId": "DataExport_Get", + "description": "Gets a data export instance.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "name": "dataExportName", + "in": "path", + "required": true, + "type": "string", + "description": "The data export rule name." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/DataExport" + } + }, + "404": { + "description": "Not found the specific data export." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "DataExport" + ], + "x-ms-examples": { + "DataExportDelete": { + "$ref": "./examples/DataExportDelete.json" + } + }, + "operationId": "DataExport_Delete", + "description": "Deletes the specified data export in a given workspace..", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "name": "dataExportName", + "in": "path", + "required": true, + "type": "string", + "description": "The data export rule name." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition." + }, + "404": { + "description": "Not found the specific data export." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/linkedStorageAccounts/{dataSourceType}": { + "put": { + "tags": [ + "LinkedStorageAccounts" + ], + "x-ms-examples": { + "LinkedStorageAccountsCreate": { + "$ref": "./examples/LinkedStorageAccountsCreate.json" + } + }, + "operationId": "LinkedStorageAccounts_CreateOrUpdate", + "description": "Create or Update a link relation between current workspace and a group of storage accounts of a specific data source type.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the Log Analytics Workspace that will contain the resource." + }, + { + "$ref": "#/parameters/DataSourceTypeParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LinkedStorageAccounts" + }, + "description": "The parameters required to create or update linked storage accounts." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/LinkedStorageAccounts" + } + } + } + }, + "delete": { + "tags": [ + "LinkedStorageAccounts" + ], + "x-ms-examples": { + "LinkedStorageAccountsDelete": { + "$ref": "./examples/LinkedStorageAccountsDelete.json" + } + }, + "operationId": "LinkedStorageAccounts_Delete", + "description": "Deletes all linked storage accounts of a specific data source type associated with the specified workspace.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the Log Analytics Workspace that will contain the resource." + }, + { + "$ref": "#/parameters/DataSourceTypeParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition." + } + } + }, + "get": { + "tags": [ + "LinkedStorageAccounts" + ], + "x-ms-examples": { + "LinkedStorageAccountsGet": { + "$ref": "./examples/LinkedStorageAccountsGet.json" + } + }, + "operationId": "LinkedStorageAccounts_Get", + "description": "Gets all linked storage account of a specific data source type associated with the specified workspace.", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the Log Analytics Workspace that will contain the resource." + }, + { + "$ref": "#/parameters/DataSourceTypeParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/LinkedStorageAccounts" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/linkedStorageAccounts": { + "get": { + "tags": [ + "LinkedStorageAccounts" + ], + "description": "Gets all linked storage accounts associated with the specified workspace, storage accounts will be sorted by their data source type.", + "operationId": "LinkedStorageAccounts_ListByWorkspace", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the Log Analytics Workspace that will contain the resource." + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/LinkedStorageAccountsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Gets list of linked storage accounts on a workspace.": { + "$ref": "./examples/LinkedStorageAccountsListByWorkspace.json" + } + } + } + } + }, + "definitions": { + "DataExport": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DataExportProperties", + "description": "data export properties." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "description": "The top level data export resource container.", + "x-ms-azure-resource": true + }, + "DataExportListResult": { + "description": "Result of the request to list data exports.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DataExport" + }, + "description": "List of data export instances within a workspace.." + } + } + }, + "DataExportProperties": { + "properties": { + "dataExportId": { + "type": "string", + "description": "The data export rule ID." + }, + "allTables": { + "type": "boolean", + "description": "When ‘true’, all workspace's tables are exported." + }, + "tableNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "An array of tables to export, for example: [“Heartbeat, SecurityEvent”]." + }, + "destination": { + "$ref": "#/definitions/Destination", + "description": "destination properties.", + "x-ms-client-flatten": true + }, + "enable": { + "type": "boolean", + "description": "Active when enabled." + }, + "createdDate": { + "type": "string", + "description": "The latest data export rule modification time." + }, + "lastModifiedDate": { + "type": "string", + "description": "Date and time when the export was last modified." + } + }, + "description": "Data Export properties." + }, + "Destination": { + "properties": { + "resourceId": { + "type": "string", + "description": "The destination resource ID. This can be copied from the Properties entry of the destination resource in Azure." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The type of the destination resource", + "enum": [ + "StorageAccount", + "EventHub" + ] + }, + "metaData": { + "$ref": "#/definitions/DestinationMetaData", + "description": "destination meta data.", + "x-ms-client-flatten": true + } + }, + "required": [ + "resourceId" + ], + "description": "Destination properties." + }, + "DestinationMetaData": { + "properties": { + "eventHubName": { + "type": "string", + "description": "Optional. Allows to define an Event Hub name. Not applicable when destination is Storage Account." + } + }, + "description": "Destination meta data." + }, + "ErrorResponse": { + "description": "Error response indicates that the service is not able to process the incoming request. The reason is provided in the error message.", + "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 + }, + "target": { + "description": "The target of the particular error.", + "type": "string", + "readOnly": true + } + } + }, + "ProxyResource": { + "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." + } + }, + "description": "Common properties of proxy resource." + }, + "LinkedStorageAccountsProperties": { + "description": "Linked storage accounts properties.", + "type": "object", + "properties": { + "dataSourceType": { + "description": "Linked storage accounts type.", + "type": "string", + "readOnly": true, + "enum": [ + "CustomLogs", + "AzureWatson" + ], + "x-ms-enum": { + "name": "DataSourceType", + "modelAsString": false + } + }, + "storageAccountIds": { + "description": "Linked storage accounts resources ids.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "LinkedStorageAccounts": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LinkedStorageAccountsProperties", + "description": "Linked storage accounts properties." + } + }, + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "description": "Linked storage accounts top level resource container.", + "x-ms-azure-resource": true + }, + "LinkedStorageAccountsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LinkedStorageAccounts" + }, + "description": "A list of linked storage accounts instances." + } + }, + "description": "The list linked storage accounts service operation response." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The workspace's resource subscription ID." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The client API version." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "description": "The workspace's resource group name.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90 + }, + "WorkspaceNameParameter": { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The Log Analytics workspace name.", + "x-ms-parameter-location": "method" + }, + "DataSourceTypeParameter": { + "name": "dataSourceType", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "CustomLogs", + "AzureWatson" + ], + "x-ms-enum": { + "name": "DataSourceType", + "modelAsString": false + }, + "description": "Linked storage accounts type.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersCreate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersCreate.json index 7b1b0ca8bda4..253b026facb6 100644 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersCreate.json +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersCreate.json @@ -4,7 +4,15 @@ "clusterName": "oiautorest6685", "parameters": { "properties": { - "encryptionKeyUri": "https://aztest2170.vault.azure.net/certificates/aztest2170cert/654ft6c4e63845cbb50fd6fg51540429" + "keyVaultProperties": { + "keyVaultUri": "https://aztest2170.vault.azure.net", + "keyName": "aztest2170cert", + "keyVersion": "654ft6c4e63845cbb50fd6fg51540429" + } + }, + "sku": { + "name": "CapacityReservation", + "capacity": 1000 }, "location": "australiasoutheast", "tags": { @@ -15,47 +23,6 @@ "subscriptionId": "00000000-0000-0000-0000-00000000000" }, "responses": { - "200": { - "body": { - "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/oiautorest6685/providers/microsoft.operationalinsights/clusters/aztest2170", - "identity": { - "principalId": "356d057d-cba5-44dd-8a30-b2e547bc416b", - "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", - "type": "SystemAssigned" - }, - "name": "AzTest2170", - "type": "Microsoft.OperationalInsights/clusters", - "location": "australiasoutheast", - "tags": { - "tag1": "val1" - }, - "properties": { - "clusterId": "bc089d7b-485c-4aff-a71e-c00f362d8d2f", - "provisioningState": "Creating", - "encryptionKeyUri": "https://aztest2170.vault.azure.net/certificates/aztest2170cert/654ft6c4e63845cbb50fd6fg51540429" - } - } - }, - "201": { - "body": { - "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/oiautorest6685/providers/microsoft.operationalinsights/clusters/aztest2170", - "identity": { - "principalId": "356d057d-cba5-44dd-8a30-b2e547bc416b", - "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", - "type": "SystemAssigned" - }, - "name": "AzTest2170", - "type": "Microsoft.OperationalInsights/clusters", - "location": "australiasoutheast", - "tags": { - "tag1": "val1" - }, - "properties": { - "clusterId": "bc089d7b-485c-4aff-a71e-c00f362d8d2f", - "provisioningState": "Creating", - "encryptionKeyUri": "https://aztest2170.vault.azure.net/certificates/aztest2170cert/654ft6c4e63845cbb50fd6fg51540429" - } - } - } + "202": {} } } diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersGet.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersGet.json index bbbd3287a60c..d8791aaa5d3b 100644 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersGet.json +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersGet.json @@ -10,9 +10,13 @@ "body": [ { "properties": { - "clusterId": "5b02755b-5bf4-430c-9487-45502a2a7e62", + "keyVaultProperties": { + "keyVaultUri": "https://aztest2170.vault.azure.net", + "keyName": "aztest2170cert", + "keyVersion": "654ft6c4e63845cbb50fd6fg51540429" + }, "provisioningState": "Succeeded", - "encryptionKeyUri": "https://aztest2170.vault.azure.net/certificates/aztest2170cert/654ft6c4e63845cbb50fd6fg51540429" + "clusterId": "5b02755b-5bf4-430c-9487-45502a2a7e62" }, "id": "/subscriptions/594038b5-1093-476e-a366-482775671c11/resourcegroups/calbot-rg/providers/microsoft.operationalinsights/clusters/testresourcelock", "identity": { @@ -20,15 +24,23 @@ "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", "type": "SystemAssigned" }, + "sku": { + "name": "CapacityReservation", + "capacity": 1000 + }, "name": "TestResourceLock", "type": "Microsoft.OperationalInsights/clusters", "location": "eastus" }, { "properties": { - "clusterId": "5b02755b-5bf4-430c-9487-45502a2a7e62", + "keyVaultProperties": { + "keyVaultUri": "https://aztest2170.vault.azure.net", + "keyName": "aztest2170cert", + "keyVersion": "654ft6c4e63845cbb50fd6fg51540429" + }, "provisioningState": "Succeeded", - "encryptionKeyUri": "https://aztest2170.vault.azure.net/certificates/aztest2170cert/654ft6c4e63845cbb50fd6fg51540429" + "clusterId": "5b02755b-5bf4-430c-9487-45502a2a7e62" }, "id": "/subscriptions/594038b5-1093-476e-a366-482775671c11/resourcegroups/mms-eus/providers/microsoft.operationalinsights/clusters/southukws", "identity": { @@ -36,6 +48,10 @@ "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", "type": "SystemAssigned" }, + "sku": { + "name": "CapacityReservation", + "capacity": 1000 + }, "name": "SouthUKWS", "type": "Microsoft.OperationalInsights/clusters", "location": "East US" diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersListByResourceGroup.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersListByResourceGroup.json index a1ff7a25d694..cfbe90c48e13 100644 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersListByResourceGroup.json +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersListByResourceGroup.json @@ -9,9 +9,17 @@ "body": [ { "properties": { - "clusterId": "5b02755b-5bf4-430c-9487-45502a2a7e62", + "keyVaultProperties": { + "keyVaultUri": "https://aztest2170.vault.azure.net", + "keyName": "aztest2170cert", + "keyVersion": "654ft6c4e63845cbb50fd6fg51540429" + }, "provisioningState": "Succeeded", - "encryptionKeyUri": "https://aztest2170.vault.azure.net/certificates/aztest2170cert/654ft6c4e63845cbb50fd6fg51540429" + "clusterId": "5b02755b-5bf4-430c-9487-45502a2a7e62" + }, + "sku": { + "name": "CapacityReservation", + "capacity": 1000 }, "id": "/subscriptions/594038b5-1093-476e-a366-482775671c11/resourcegroups/calbot-rg/providers/microsoft.operationalinsights/clusters/testresourcelock", "identity": { diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersSubscriptionList.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersSubscriptionList.json index 1e7b4fe07231..c4162fadc385 100644 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersSubscriptionList.json +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersSubscriptionList.json @@ -8,9 +8,17 @@ "body": [ { "properties": { - "clusterId": "5b02755b-5bf4-430c-9487-45502a2a7e62", + "keyVaultProperties": { + "keyVaultUri": "https://aztest2170.vault.azure.net", + "keyName": "aztest2170cert", + "keyVersion": "654ft6c4e63845cbb50fd6fg51540429" + }, "provisioningState": "Succeeded", - "encryptionKeyUri": "https://aztest2170.vault.azure.net/certificates/aztest2170cert/654ft6c4e63845cbb50fd6fg51540429" + "clusterId": "5b02755b-5bf4-430c-9487-45502a2a7e62" + }, + "sku": { + "name": "CapacityReservation", + "capacity": 1000 }, "id": "/subscriptions/594038b5-1093-476e-a366-482775671c11/resourcegroups/calbot-rg/providers/microsoft.operationalinsights/clusters/testresourcelock", "identity": { diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersUpdate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersUpdate.json index 35a4720af359..023cdae25644 100644 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersUpdate.json +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/ClustersUpdate.json @@ -4,7 +4,15 @@ "clusterName": "oiautorest6685", "parameters": { "properties": { - "encryptionKeyUri": "https://aztest2170.vault.azure.net/certificates/aztest2170cert/654ft6c4e63845cbb50fd6fg51540429" + "keyVaultProperties": { + "keyVaultUri": "https://aztest2170.vault.azure.net", + "keyName": "aztest2170cert", + "keyVersion": "654ft6c4e63845cbb50fd6fg51540429" + } + }, + "sku": { + "name": "CapacityReservation", + "capacity": 1000 }, "tags": { "tag1": "val1" @@ -17,7 +25,17 @@ "200": { "body": { "properties": { - "encryptionKeyUri": "https://aztest2170.vault.azure.net/certificates/aztest2170cert/654ft6c4e63845cbb50fd6fg51540429" + "keyVaultProperties": { + "keyVaultUri": "https://aztest2170.vault.azure.net", + "keyName": "aztest2170cert", + "keyVersion": "654ft6c4e63845cbb50fd6fg51540429" + }, + "provisioningState": "Succeeded", + "clusterId": "1c3f2afc-9ec1-4e74-bfe8-022b83bcd7b1" + }, + "sku": { + "name": "CapacityReservation", + "capacity": 1000 }, "location": "australiasoutheast", "tags": { 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 new file mode 100644 index 000000000000..f738632a370c --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/DataExportCreateOrUpdate.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "resourceGroupName": "RgTest1", + "workspaceName": "DeWnTest1234", + "dataExportName": "export1", + "api-version": "2019-08-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000", + "parameters": { + "properties": { + "destination": { + "resourceId": "/subscriptions/192b9f85-a39a-4276-b96d-d5cd351703f9/resourceGroups/OIAutoRest1234/providers/Microsoft.EventHub/namespaces/test" + }, + "tableNames": [ + "Heartbeat" + ] + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "dataExportId": "d5233afc-7829-4b89-c594-08d7975e19a5", + "destination": { + "resourceId": "/subscriptions/192b9f85-a39a-4276-b96d-d5cd351703f9/resourceGroups/OIAutoRest1234/providers/Microsoft.EventHub/namespaces/test", + "type": "EventHub" + }, + "allTables": false, + "tableNames": [ + "Heartbeat" + ], + "enable": true, + "createdDate": "Sun, 12 Jan 2020 12:51:10 GMT", + "lastModifiedDate": "Sun, 12 Jan 2020 12:51:10 GMT" + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000000/resourcegroups/RgTest1/providers/microsoft.operationalinsights/workspaces/DeWnTest1234/export/export1", + "name": "export1", + "type": "Microsoft.OperationalInsights/workspaces/export" + } + }, + "201": { + "body": { + "properties": { + "dataExportId": "d5233afc-7829-4b89-c594-08d7975e19a5", + "destination": { + "resourceId": "/subscriptions/192b9f85-a39a-4276-b96d-d5cd351703f9/resourceGroups/OIAutoRest1234/providers/Microsoft.EventHub/namespaces/test", + "type": "EventHub" + }, + "allTables": false, + "tableNames": [ + "Heartbeat" + ], + "enable": true, + "createdDate": "Sun, 12 Jan 2020 12:51:10 GMT", + "lastModifiedDate": "Sun, 12 Jan 2020 12:51:10 GMT" + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000000/resourcegroups/RgTest1/providers/microsoft.operationalinsights/workspaces/DeWnTest1234/export/export1", + "name": "export1", + "type": "Microsoft.OperationalInsights/workspaces/export" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/DataExportDelete.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/DataExportDelete.json new file mode 100644 index 000000000000..a49bb7930c67 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/DataExportDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "resourceGroupName": "RgTest1", + "workspaceName": "DeWnTest1234", + "dataExportName": "export1", + "api-version": "2019-08-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": {}, + "404": {} + } +} 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 new file mode 100644 index 000000000000..aee7dba8ecfb --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/DataExportGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "resourceGroupName": "RgTest1", + "workspaceName": "DeWnTest1234", + "dataExportName": "export1", + "api-version": "2019-08-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "properties": { + "dataExportId": "d5233afc-7829-4b89-c594-08d7975e19a5", + "destination": { + "resourceId": "/subscriptions/192b9f85-a39a-4276-b96d-d5cd351703f9/resourceGroups/OIAutoRest1234/providers/Microsoft.EventHub/namespaces/test", + "type": "EventHub" + }, + "allTables": false, + "tableNames": [ + "Heartbeat" + ], + "enable": true, + "createdDate": "Sun, 12 Jan 2020 12:51:10 GMT", + "lastModifiedDate": "Sun, 12 Jan 2020 12:51:10 GMT" + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000000/resourcegroups/RgTest1/providers/microsoft.operationalinsights/workspaces/DeWnTest1234/export/export1", + "name": "export1", + "type": "Microsoft.OperationalInsights/workspaces/export" + } + }, + "404": {} + } +} 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 new file mode 100644 index 000000000000..4d0a89e0b861 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/DataExportListByWorkspace.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "resourceGroupName": "RgTest1", + "workspaceName": "DeWnTest1234", + "api-version": "2019-08-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": [ + { + "properties": { + "dataExportId": "d5233afc-7829-4b89-c594-08d7975e19a5", + "destination": { + "resourceId": "/subscriptions/192b9f85-a39a-4276-b96d-d5cd351703f9/resourceGroups/OIAutoRest1234/providers/Microsoft.EventHub/namespaces/test", + "type": "EventHub" + }, + "allTables": false, + "tableNames": [ + "Heartbeat" + ], + "enable": true, + "createdDate": "Sun, 12 Jan 2020 12:51:10 GMT", + "lastModifiedDate": "Sun, 12 Jan 2020 12:51:10 GMT" + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000000/resourcegroups/RgTest1/providers/microsoft.operationalinsights/workspaces/DeWnTest1234/export/export1", + "name": "export1", + "type": "Microsoft.OperationalInsights/workspaces/export" + } + ] + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedServicesCreate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedServicesCreate.json new file mode 100644 index 000000000000..ea1a94a6bca8 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedServicesCreate.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "resourceGroupName": "mms-eus", + "workspaceName": "TestLinkWS", + "linkedServiceName": "TestLinkWS/Cluster", + "parameters": { + "properties": { + "writeAccessResourceId": "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/automationClusters/testcluster" + } + }, + "api-version": "2019-08-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "properties": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/automationClusters/testcluste" + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000000/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testlinkws/linkedservices/cluster", + "name": "TestLinkWS/Cluster", + "type": "Microsoft.OperationalInsights/workspaces/linkedServices" + } + }, + "201": { + "body": { + "properties": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/automationClusters/testcluste" + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000000/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testlinkws/linkedservices/cluster", + "name": "TestLinkWS/Cluster", + "type": "Microsoft.OperationalInsights/workspaces/linkedServices" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedServicesDelete.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedServicesDelete.json new file mode 100644 index 000000000000..99f07e2aaa74 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedServicesDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "linkedServiceName": "TestLinkWS/Cluster", + "workspaceName": "TestLinkWS", + "resourceGroupName": "rg1", + "api-version": "2019-08-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedServicesGet.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedServicesGet.json new file mode 100644 index 000000000000..84de0356b24a --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedServicesGet.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "resourceGroupName": "mms-eus", + "workspaceName": "TestLinkWS", + "linkedServiceName": "TestLinkWS/Cluster", + "api-version": "2019-08-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "properties": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/Clusters/TestCluster" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testlinkws/linkedservices/cluster", + "name": "TestLinkWS/Cluster", + "type": "Microsoft.OperationalInsights/workspaces/linkedServices" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedServicesListByWorkspace.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedServicesListByWorkspace.json new file mode 100644 index 000000000000..5f5492ad56c8 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedServicesListByWorkspace.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "resourceGroupName": "mms-eus", + "workspaceName": "TestLinkWS", + "api-version": "2019-08-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": [ + { + "properties": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/mms-eus/providers/Microsoft.Automation/automationAccounts/TestAccount" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testlinkws/linkedservices/automation", + "name": "TestLinkWS/Automation", + "type": "Microsoft.OperationalInsights/workspaces/linkedServices" + }, + { + "properties": { + "writeAccessResourceId": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/clusters/TestCluster" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testlinkws/linkedservices/cluster", + "name": "TestLinkWS/Cluster", + "type": "Microsoft.OperationalInsights/workspaces/linkedServices" + } + ] + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedStorageAccountsCreate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedStorageAccountsCreate.json new file mode 100644 index 000000000000..6a8a9bac7d1f --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedStorageAccountsCreate.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "resourceGroupName": "mms-eus", + "workspaceName": "testLinkStorageAccountsWS", + "dataSourceType": "CustomLogs", + "parameters": { + "properties": { + "storageAccountIds": [ + "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageA", + "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageB" + ] + } + }, + "api-version": "2019-08-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "properties": { + "dataSourceType": "CustomLogs", + "storageAccountIds": [ + "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageA", + "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageB" + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000000/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testLinkStorageAccountsWS/linkedStorageAccounts/CustomLogs", + "name": "CustomLogs", + "type": "Microsoft.OperationalInsights/workspaces/linkedStorageAccounts" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedStorageAccountsDelete.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedStorageAccountsDelete.json new file mode 100644 index 000000000000..3282a576212a --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedStorageAccountsDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "dataSourceType": "CustomLogs", + "workspaceName": "testLinkStorageAccountsWS", + "resourceGroupName": "mms-eus", + "api-version": "2019-08-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": {} + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedStorageAccountsGet.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedStorageAccountsGet.json new file mode 100644 index 000000000000..4d5f55fe36db --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedStorageAccountsGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "resourceGroupName": "mms-eus", + "workspaceName": "testLinkStorageAccountsWS", + "dataSourceType": "CustomLogs", + "api-version": "2019-08-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "properties": { + "dataSourceType": "CustomLogs", + "storageAccountIds": [ + "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageA", + "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageB" + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testLinkStorageAccountsWS/linkedStorageAccounts/CustomLogs", + "name": "CustomLogs", + "type": "Microsoft.OperationalInsights/workspaces/linkedStorageAccounts" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedStorageAccountsListByWorkspace.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedStorageAccountsListByWorkspace.json new file mode 100644 index 000000000000..0c0feafcfb34 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2019-08-01-preview/examples/LinkedStorageAccountsListByWorkspace.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "resourceGroupName": "mms-eus", + "workspaceName": "testLinkStorageAccountsWS", + "api-version": "2019-08-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "dataSourceType": "CustomLogs", + "storageAccountIds": [ + "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageA", + "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageB" + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testLinkStorageAccountsWS/linkedStorageAccounts/CustomLogs", + "name": "CustomLogs", + "type": "Microsoft.OperationalInsights/workspaces/linkedStorageAccounts" + }, + { + "properties": { + "dataSourceType": "AzureWatson", + "storageAccountIds": [ + "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageA", + "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageC" + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testLinkStorageAccountsWS/linkedStorageAccounts/AzureWatson", + "name": "AzureWatson", + "type": "Microsoft.OperationalInsights/workspaces/linkedStorageAccounts" + } + ] + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/AvailableServiceTiers.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/AvailableServiceTiers.json new file mode 100644 index 000000000000..5d5a288fc4ba --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/AvailableServiceTiers.json @@ -0,0 +1,138 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2020-03-01-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}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/availableServiceTiers": { + "get": { + "tags": [ + "AvailableServiceTiers" + ], + "x-ms-examples": { + "AvailableServiceTiers": { + "$ref": "./examples/WorkspacesAvailableServiceTiers.json" + } + }, + "operationId": "Workspaces_AvailableServiceTiers", + "description": "Gets the available service tiers for the workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailableServiceTier" + } + } + } + } + } + } + }, + "definitions": { + "AvailableServiceTier": { + "description": "Service Tier details.", + "properties": { + "serviceTier": { + "readOnly": true, + "type": "string", + "description": "The name of the Service Tier.", + "enum": [ + "Free", + "Standard", + "Premium", + "PerNode", + "PerGB2018", + "Standalone", + "CapacityReservation" + ], + "x-ms-enum": { + "name": "SkuNameEnum", + "modelAsString": true + } + }, + "enabled": { + "readOnly": true, + "type": "boolean", + "description": "True if the Service Tier is enabled for the workspace." + }, + "minimumRetention": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The minimum retention for the Service Tier, in days." + }, + "maximumRetention": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The maximum retention for the Service Tier, in days." + }, + "defaultRetention": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The default retention for the Service Tier, in days." + }, + "capacityReservationLevel": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The capacity reservation level in GB per day. Returned for the Capacity Reservation Service Tier." + }, + "lastSkuUpdate": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Time when the sku was last updated for the workspace. Returned for the Capacity Reservation Service Tier." + } + } + } + }, + "parameters": {} +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Clusters.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Clusters.json new file mode 100644 index 000000000000..048953c7d49a --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Clusters.json @@ -0,0 +1,522 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2020-03-01-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}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/clusters": { + "get": { + "tags": [ + "Clusters" + ], + "x-ms-examples": { + "ClustersGet": { + "$ref": "./examples/ClustersListByResourceGroup.json" + } + }, + "operationId": "Clusters_ListByResourceGroup", + "description": "Gets Log Analytics clusters in a resource group.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/ClusterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ClusterErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.OperationalInsights/clusters": { + "get": { + "tags": [ + "Clusters" + ], + "x-ms-examples": { + "ClustersSubscriptionList": { + "$ref": "./examples/ClustersSubscriptionList.json" + } + }, + "operationId": "Clusters_List", + "description": "Gets the Log Analytics clusters in a subscription.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/ClusterListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ClusterErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/clusters/{clusterName}": { + "put": { + "tags": [ + "Clusters" + ], + "x-ms-examples": { + "ClustersCreate": { + "$ref": "./examples/ClustersCreate.json" + } + }, + "operationId": "Clusters_CreateOrUpdate", + "description": "Create or update a Log Analytics cluster.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "clusterName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[A-Za-z0-9][A-Za-z0-9-]+[A-Za-z0-9]$", + "minLength": 4, + "maxLength": 63, + "description": "The name of the Log Analytics cluster." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Cluster" + }, + "description": "The parameters required to create or update a Log Analytics cluster." + } + ], + "responses": { + "202": { + "description": "Accepted response definition." + }, + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "201": { + "description": "Created response definition.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ClusterErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Clusters" + ], + "x-ms-examples": { + "ClustersDelete": { + "$ref": "./examples/ClustersDelete.json" + } + }, + "operationId": "Clusters_Delete", + "description": "Deletes a cluster instance.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "clusterName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the Log Analytics Cluster." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition." + }, + "204": { + "description": "NoContent response definition." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ClusterErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Clusters" + ], + "x-ms-examples": { + "ClustersGet": { + "$ref": "./examples/ClustersGet.json" + } + }, + "operationId": "Clusters_Get", + "description": "Gets a Log Analytics cluster instance.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "clusterName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the Log Analytics Cluster." + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ClusterErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Clusters" + ], + "x-ms-examples": { + "ClustersPatch": { + "$ref": "./examples/ClustersUpdate.json" + } + }, + "operationId": "Clusters_Update", + "description": "Updates a Log Analytics cluster.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "clusterName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the Log Analytics Cluster." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterPatch" + }, + "description": "The parameters required to patch a Log Analytics cluster." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The existing cluster was successfully updated. Check provisioningStatus to see detailed status.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ClusterErrorResponse" + } + } + } + } + } + }, + "definitions": { + "ClusterProperties": { + "properties": { + "nextLink": { + "description": "The link used to get the next page of recommendations.", + "type": "string" + }, + "clusterId": { + "type": "string", + "readOnly": true, + "description": "The ID associated with the cluster." + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioning state of the cluster.", + "enum": [ + "Creating", + "Succeeded", + "Failed", + "Canceled", + "Deleting", + "ProvisioningAccount", + "Updating" + ], + "x-ms-enum": { + "name": "ClusterEntityStatus", + "modelAsString": true + } + }, + "keyVaultProperties": { + "$ref": "#/definitions/keyVaultProperties", + "description": "The associated key properties." + } + }, + "description": "Cluster properties." + }, + "ClusterErrorResponse": { + "description": "Error response indicates that the service is not able to process the incoming request. The reason is provided in the error message.", + "type": "object", + "properties": { + "error": { + "description": "The details of the error.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + }, + "ClusterPatchProperties": { + "properties": { + "keyVaultProperties": { + "$ref": "#/definitions/keyVaultProperties", + "description": "The associated key properties." + } + }, + "description": "Log Analytics cluster patch properties." + }, + "ClusterPatch": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterPatchProperties", + "description": "Log Analytics cluster properties." + }, + "sku": { + "$ref": "#/definitions/ClusterSku", + "description": "The sku properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Resource tags." + } + }, + "description": "The top level Log Analytics cluster resource container.", + "x-ms-azure-resource": true + }, + "Cluster": { + "properties": { + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the resource." + }, + "sku": { + "$ref": "#/definitions/ClusterSku", + "description": "The sku properties." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterProperties", + "description": "Log Analytics cluster properties." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "description": "The top level Log Analytics cluster resource container.", + "x-ms-azure-resource": true + }, + "ClusterListResult": { + "properties": { + "nextLink": { + "description": "The link used to get the next page of recommendations.", + "type": "string" + }, + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Cluster" + }, + "description": "A list of Log Analytics clusters." + } + }, + "description": "The list clusters operation response." + }, + "keyVaultProperties": { + "description": "The key vault properties.", + "properties": { + "keyVaultUri": { + "description": "The Key Vault uri which holds they key associated with the Log Analytics cluster.", + "type": "string" + }, + "keyName": { + "description": "The name of the key associated with the Log Analytics cluster.", + "type": "string" + }, + "keyVersion": { + "description": "The version of the key associated with the Log Analytics cluster.", + "type": "string" + } + } + }, + "ClusterSku": { + "description": "The cluster sku definition.", + "properties": { + "capacity": { + "description": "The capacity value", + "type": "integer", + "format": "int64" + }, + "name": { + "type": "string", + "description": "The name of the SKU.", + "enum": [ + "CapacityReservation" + ], + "x-ms-enum": { + "name": "ClusterSkuNameEnum", + "modelAsString": true + } + } + } + }, + "Identity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of resource identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of resource." + }, + "type": { + "type": "string", + "description": "The identity type.", + "enum": [ + "SystemAssigned", + "None" + ], + "x-ms-enum": { + "name": "IdentityType", + "modelAsString": false + } + } + }, + "required": [ + "type" + ], + "description": "Identity for the resource." + } + }, + "parameters": {} +} 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 new file mode 100644 index 000000000000..b458c89226a6 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/DataExports.json @@ -0,0 +1,368 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2020-03-01-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}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/dataExports": { + "get": { + "tags": [ + "DataExport" + ], + "x-ms-examples": { + "DataExportGet": { + "$ref": "./examples/DataExportListByWorkspace.json" + } + }, + "operationId": "DataExports_ListByWorkspace", + "description": "Lists the data export instances within a workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/DataExportListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/DataExportErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/dataExports/{dataExportName}": { + "put": { + "tags": [ + "DataExport" + ], + "x-ms-examples": { + "DataExportCreate": { + "$ref": "./examples/DataExportCreateOrUpdate.json" + } + }, + "operationId": "DataExports_CreateOrUpdate", + "description": "Create or update a data export.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "dataExportName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[A-Za-z][A-Za-z0-9-]+[A-Za-z0-9]$", + "minLength": 4, + "maxLength": 63, + "description": "The data export rule name." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataExport" + }, + "description": "The parameters required to create or update a data export." + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/DataExport" + } + }, + "201": { + "description": "Created response definition.", + "schema": { + "$ref": "#/definitions/DataExport" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/DataExportErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "get": { + "tags": [ + "DataExport" + ], + "x-ms-examples": { + "DataExportGet": { + "$ref": "./examples/DataExportGet.json" + } + }, + "operationId": "DataExports_Get", + "description": "Gets a data export instance.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "dataExportName", + "in": "path", + "required": true, + "type": "string", + "description": "The data export rule name." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/DataExport" + } + }, + "404": { + "description": "Not found the specific data export." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/DataExportErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "DataExport" + ], + "x-ms-examples": { + "DataExportDelete": { + "$ref": "./examples/DataExportDelete.json" + } + }, + "operationId": "DataExports_Delete", + "description": "Deletes the specified data export in a given workspace..", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "dataExportName", + "in": "path", + "required": true, + "type": "string", + "description": "The data export rule name." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition." + }, + "404": { + "description": "Not found the specific data export." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/DataExportErrorResponse" + } + } + } + } + } + }, + "definitions": { + "DataExport": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DataExportProperties", + "description": "data export properties." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "The top level data export resource container.", + "x-ms-azure-resource": true + }, + "DataExportListResult": { + "description": "Result of the request to list data exports.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DataExport" + }, + "description": "List of data export instances within a workspace.." + } + } + }, + "DataExportProperties": { + "properties": { + "dataExportId": { + "type": "string", + "description": "The data export rule ID." + }, + "allTables": { + "type": "boolean", + "description": "When ‘true’, all workspace's tables are exported." + }, + "tableNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "An array of tables to export, for example: [“Heartbeat, SecurityEvent”]." + }, + "destination": { + "$ref": "#/definitions/Destination", + "description": "destination properties.", + "x-ms-client-flatten": true + }, + "enable": { + "type": "boolean", + "description": "Active when enabled." + }, + "createdDate": { + "type": "string", + "description": "The latest data export rule modification time." + }, + "lastModifiedDate": { + "type": "string", + "description": "Date and time when the export was last modified." + } + }, + "description": "Data Export properties." + }, + "Destination": { + "properties": { + "resourceId": { + "type": "string", + "description": "The destination resource ID. This can be copied from the Properties entry of the destination resource in Azure." + }, + "type": { + "type": "string", + "readOnly": true, + "description": "The type of the destination resource", + "enum": [ + "StorageAccount", + "EventHub" + ], + "x-ms-enum": { + "name": "type", + "modelAsString": true + } + }, + "metaData": { + "$ref": "#/definitions/DestinationMetaData", + "description": "destination meta data.", + "x-ms-client-flatten": true + } + }, + "required": [ + "resourceId" + ], + "description": "Destination properties." + }, + "DestinationMetaData": { + "properties": { + "eventHubName": { + "type": "string", + "description": "Optional. Allows to define an Event Hub name. Not applicable when destination is Storage Account." + } + }, + "description": "Destination meta data." + }, + "DataExportErrorResponse": { + "description": "Error response indicates that the service is not able to process the incoming request. The reason is provided in the error message.", + "type": "object", + "properties": { + "error": { + "description": "The details of the error.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + } + }, + "parameters": {} +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/DataSources.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/DataSources.json new file mode 100644 index 000000000000..eb89d354d76d --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/DataSources.json @@ -0,0 +1,345 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2020-03-01-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}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/dataSources/{dataSourceName}": { + "put": { + "tags": [ + "DataSources" + ], + "x-ms-examples": { + "DataSourcesCreate": { + "$ref": "./examples/DataSourcesCreate.json" + } + }, + "operationId": "DataSources_CreateOrUpdate", + "description": "Create or update a data source.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "dataSourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the datasource resource." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataSource" + }, + "description": "The parameters required to create or update a datasource." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/DataSource" + } + }, + "201": { + "description": "Created response definition.", + "schema": { + "$ref": "#/definitions/DataSource" + } + } + } + }, + "delete": { + "tags": [ + "DataSources" + ], + "x-ms-examples": { + "DataSourcesDelete": { + "$ref": "./examples/DataSourcesDelete.json" + } + }, + "operationId": "DataSources_Delete", + "description": "Deletes a data source instance.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "dataSourceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the datasource." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition." + }, + "204": { + "description": "NoContent response definition." + } + } + }, + "get": { + "tags": [ + "DataSources" + ], + "x-ms-examples": { + "DataSourcesGet": { + "$ref": "./examples/DataSourcesGet.json" + } + }, + "operationId": "DataSources_Get", + "description": "Gets a datasource instance.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "dataSourceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the datasource" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/DataSource" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/dataSources": { + "get": { + "tags": [ + "DataSources" + ], + "x-ms-examples": { + "DataSourcesListByWorkspace": { + "$ref": "./examples/DataSourcesListByWorkspace.json" + } + }, + "operationId": "DataSources_ListByWorkspace", + "description": "Gets the first page of data source instances in a workspace with the link to the next page.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "$filter", + "in": "query", + "required": true, + "type": "string", + "description": "The filter to apply on the operation." + }, + { + "name": "$skiptoken", + "in": "query", + "required": false, + "type": "string", + "description": "Starting point of the collection of data source instances." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/DataSourceListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-odata": "#/definitions/DataSourceFilter" + } + } + }, + "definitions": { + "DataSourceKind": { + "type": "string", + "enum": [ + "WindowsEvent", + "WindowsPerformanceCounter", + "IISLogs", + "LinuxSyslog", + "LinuxSyslogCollection", + "LinuxPerformanceObject", + "LinuxPerformanceCollection", + "CustomLog", + "CustomLogCollection", + "AzureAuditLog", + "AzureActivityLog", + "GenericDataSource", + "ChangeTrackingCustomPath", + "ChangeTrackingPath", + "ChangeTrackingServices", + "ChangeTrackingDataTypeConfiguration", + "ChangeTrackingDefaultRegistry", + "ChangeTrackingRegistry", + "ChangeTrackingLinuxPath", + "LinuxChangeTrackingPath", + "ChangeTrackingContentLocation", + "WindowsTelemetry", + "Office365", + "SecurityWindowsBaselineConfiguration", + "SecurityCenterSecurityWindowsBaselineConfiguration", + "SecurityEventCollectionConfiguration", + "SecurityInsightsSecurityEventCollectionConfiguration", + "ImportComputerGroup", + "NetworkMonitoring", + "Itsm", + "DnsAnalytics", + "ApplicationInsights", + "SqlDataClassification" + ], + "x-ms-enum": { + "name": "DataSourceKind", + "modelAsString": true + }, + "description": "The kind of the DataSource." + }, + "DataSource": { + "properties": { + "properties": { + "$ref": "#/definitions/Object", + "description": "The data source properties in raw json format, each kind of data source have it's own schema." + }, + "eTag": { + "type": "string", + "description": "The ETag of the data source." + }, + "kind": { + "$ref": "#/definitions/DataSourceKind" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Resource tags." + } + }, + "required": [ + "kind", + "properties" + ], + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Datasources under OMS Workspace.", + "x-ms-azure-resource": true + }, + "DataSourceFilter": { + "properties": { + "kind": { + "$ref": "#/definitions/DataSourceKind" + } + }, + "description": "DataSource filter. Right now, only filter by kind is supported." + }, + "DataSourceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/DataSource" + }, + "description": "A list of datasources." + }, + "nextLink": { + "type": "string", + "description": "The link (url) to the next page of datasources." + } + }, + "description": "The list data source by workspace operation response." + }, + "Object": { + "type": "object", + "properties": {}, + "description": "JSON object" + } + }, + "parameters": {} +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Gateways.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Gateways.json new file mode 100644 index 000000000000..5e517eabe747 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Gateways.json @@ -0,0 +1,85 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2020-03-01-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}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/gateways/{gatewayId}": { + "delete": { + "tags": [ + "Workspaces" + ], + "x-ms-examples": { + "DeleteGateways": { + "$ref": "./examples/WorkspacesGatewaysDelete.json" + } + }, + "operationId": "Gateways_Delete", + "description": "Delete a Log Analytics gateway.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/GatewayIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The specified gateway was deleted successfully." + } + } + } + } + }, + "definitions": {}, + "parameters": { + "GatewayIdParameter": { + "name": "gatewayId", + "in": "path", + "required": true, + "type": "string", + "description": "The Log Analytics gateway Id.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/IntelligencePacks.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/IntelligencePacks.json new file mode 100644 index 000000000000..252c8eff5956 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/IntelligencePacks.json @@ -0,0 +1,180 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2020-03-01-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}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/intelligencePacks/{intelligencePackName}/Disable": { + "post": { + "tags": [ + "Workspaces", + "IntelligencePacks" + ], + "x-ms-examples": { + "IntelligencePacksDisable": { + "$ref": "./examples/WorkspacesDisableIntelligencePack.json" + } + }, + "operationId": "IntelligencePacks_Disable", + "description": "Disables an intelligence pack for a given workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "intelligencePackName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the intelligence pack to be disabled." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/intelligencePacks/{intelligencePackName}/Enable": { + "post": { + "tags": [ + "Workspaces", + "IntelligencePacks" + ], + "x-ms-examples": { + "IntelligencePacksEnable": { + "$ref": "./examples/WorkspacesEnableIntelligencePack.json" + } + }, + "operationId": "IntelligencePacks_Enable", + "description": "Enables an intelligence pack for a given workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "intelligencePackName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the intelligence pack to be enabled." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/intelligencePacks": { + "get": { + "tags": [ + "Workspaces", + "IntelligencePacks" + ], + "x-ms-examples": { + "IntelligencePacksList": { + "$ref": "./examples/WorkspacesListIntelligencePacks.json" + } + }, + "operationId": "IntelligencePacks_List", + "description": "Lists all the intelligence packs possible and whether they are enabled or disabled for a given workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/IntelligencePack" + } + } + } + } + } + } + }, + "definitions": { + "IntelligencePack": { + "properties": { + "name": { + "type": "string", + "description": "The name of the intelligence pack." + }, + "enabled": { + "type": "boolean", + "description": "The enabled boolean for the intelligence pack." + }, + "displayName": { + "type": "string", + "description": "The display name of the intelligence pack." + } + }, + "description": "Intelligence Pack containing a string name and boolean indicating if it's enabled." + } + }, + "parameters": {} +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/LinkedServices.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/LinkedServices.json new file mode 100644 index 000000000000..57fccf094a43 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/LinkedServices.json @@ -0,0 +1,295 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2020-03-01-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}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/linkedServices/{linkedServiceName}": { + "put": { + "tags": [ + "LinkedServices" + ], + "x-ms-examples": { + "LinkedServicesCreate": { + "$ref": "./examples/LinkedServicesCreate.json" + } + }, + "operationId": "LinkedServices_CreateOrUpdate", + "description": "Create or update a linked service.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "linkedServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the linkedServices resource" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LinkedService" + }, + "description": "The parameters required to create or update a linked service." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/LinkedService" + } + }, + "201": { + "description": "Created response definition.", + "schema": { + "$ref": "#/definitions/LinkedService" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "LinkedServices" + ], + "x-ms-examples": { + "LinkedServicesDelete": { + "$ref": "./examples/LinkedServicesDelete.json" + } + }, + "operationId": "LinkedServices_Delete", + "description": "Deletes a linked service instance.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "linkedServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the linked service." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/LinkedService" + } + }, + "204": { + "description": "NoContent response definition." + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "LinkedServices" + ], + "x-ms-examples": { + "LinkedServicesGet": { + "$ref": "./examples/LinkedServicesGet.json" + } + }, + "operationId": "LinkedServices_Get", + "description": "Gets a linked service instance.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "linkedServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the linked service." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/LinkedService" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/linkedServices": { + "get": { + "tags": [ + "LinkedServices" + ], + "x-ms-examples": { + "LinkedServicesListByWorkspace": { + "$ref": "./examples/LinkedServicesListByWorkspace.json" + } + }, + "operationId": "LinkedServices_ListByWorkspace", + "description": "Gets the linked services instances in a workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/LinkedServiceListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + } + }, + "definitions": { + "LinkedServiceProperties": { + "properties": { + "resourceId": { + "type": "string", + "description": "The resource id of the resource that will be linked to the workspace. This should be used for linking resources which require read access" + }, + "writeAccessResourceId": { + "type": "string", + "description": "The resource id of the resource that will be linked to the workspace. This should be used for linking resources which require write access" + }, + "provisioningState": { + "type": "string", + "description": "The provisioning state of the linked service.", + "enum": [ + "Succeeded", + "Deleting", + "ProvisioningAccount", + "Updating" + ], + "x-ms-enum": { + "name": "LinkedServiceEntityStatus", + "modelAsString": true + } + } + }, + "description": "Linked service properties." + }, + "LinkedService": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LinkedServiceProperties", + "description": "The properties of the linked service." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Resource tags." + } + }, + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "The top level Linked service resource container.", + "x-ms-azure-resource": true + }, + "LinkedServiceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LinkedService" + }, + "description": "The list of linked service instances" + } + }, + "description": "The list linked service operation response." + } + }, + "parameters": {} +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/LinkedStorageAccounts.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/LinkedStorageAccounts.json new file mode 100644 index 000000000000..a776a84a609b --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/LinkedStorageAccounts.json @@ -0,0 +1,273 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2020-03-01-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}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/linkedStorageAccounts/{dataSourceType}": { + "put": { + "tags": [ + "LinkedStorageAccounts" + ], + "x-ms-examples": { + "LinkedStorageAccountsCreate": { + "$ref": "./examples/LinkedStorageAccountsCreate.json" + } + }, + "operationId": "LinkedStorageAccounts_CreateOrUpdate", + "description": "Create or Update a link relation between current workspace and a group of storage accounts of a specific data source type.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/DataSourceTypeParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LinkedStorageAccountsResource" + }, + "description": "The parameters required to create or update linked storage accounts." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/LinkedStorageAccountsResource" + } + } + } + }, + "delete": { + "tags": [ + "LinkedStorageAccounts" + ], + "x-ms-examples": { + "LinkedStorageAccountsDelete": { + "$ref": "./examples/LinkedStorageAccountsDelete.json" + } + }, + "operationId": "LinkedStorageAccounts_Delete", + "description": "Deletes all linked storage accounts of a specific data source type associated with the specified workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/DataSourceTypeParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition." + } + } + }, + "get": { + "tags": [ + "LinkedStorageAccounts" + ], + "x-ms-examples": { + "LinkedStorageAccountsGet": { + "$ref": "./examples/LinkedStorageAccountsGet.json" + } + }, + "operationId": "LinkedStorageAccounts_Get", + "description": "Gets all linked storage account of a specific data source type associated with the specified workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/DataSourceTypeParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/LinkedStorageAccountsResource" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/linkedStorageAccounts": { + "get": { + "tags": [ + "LinkedStorageAccounts" + ], + "description": "Gets all linked storage accounts associated with the specified workspace, storage accounts will be sorted by their data source type.", + "operationId": "LinkedStorageAccounts_ListByWorkspace", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/LinkedStorageAccountsListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Gets list of linked storage accounts on a workspace.": { + "$ref": "./examples/LinkedStorageAccountsListByWorkspace.json" + } + } + } + } + }, + "definitions": { + "LinkedStorageAccountsProperties": { + "description": "Linked storage accounts properties.", + "type": "object", + "properties": { + "dataSourceType": { + "description": "Linked storage accounts type.", + "type": "string", + "readOnly": true, + "enum": [ + "CustomLogs", + "AzureWatson" + ], + "x-ms-enum": { + "name": "DataSourceType", + "modelAsString": false + } + }, + "storageAccountIds": { + "description": "Linked storage accounts resources ids.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "LinkedStorageAccountsResource": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/LinkedStorageAccountsProperties", + "description": "Linked storage accounts properties." + } + }, + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Linked storage accounts top level resource container.", + "x-ms-azure-resource": true + }, + "LinkedStorageAccountsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LinkedStorageAccountsResource" + }, + "description": "A list of linked storage accounts instances." + } + }, + "description": "The list linked storage accounts service operation response." + } + }, + "parameters": { + "DataSourceTypeParameter": { + "name": "dataSourceType", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "CustomLogs", + "AzureWatson" + ], + "x-ms-enum": { + "name": "DataSourceType", + "modelAsString": false + }, + "description": "Linked storage accounts type.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/ManagementGroups.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/ManagementGroups.json new file mode 100644 index 000000000000..f3c1f1609c50 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/ManagementGroups.json @@ -0,0 +1,142 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2020-03-01-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}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/managementGroups": { + "get": { + "tags": [ + "Workspaces" + ], + "x-ms-examples": { + "WorkspacesListManagementGroups": { + "$ref": "./examples/WorkspacesListManagementGroups.json" + } + }, + "operationId": "ManagementGroups_List", + "description": "Gets a list of management groups connected to a workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/WorkspaceListManagementGroupsResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + } + }, + "definitions": { + "ManagementGroupProperties": { + "properties": { + "serverCount": { + "type": "integer", + "format": "int32", + "description": "The number of servers connected to the management group." + }, + "isGateway": { + "type": "boolean", + "description": "Gets or sets a value indicating whether the management group is a gateway." + }, + "name": { + "type": "string", + "description": "The name of the management group." + }, + "id": { + "type": "string", + "description": "The unique ID of the management group." + }, + "created": { + "type": "string", + "format": "date-time", + "description": "The datetime that the management group was created." + }, + "dataReceived": { + "type": "string", + "format": "date-time", + "description": "The last datetime that the management group received data." + }, + "version": { + "type": "string", + "description": "The version of System Center that is managing the management group." + }, + "sku": { + "type": "string", + "description": "The SKU of System Center that is managing the management group." + } + }, + "description": "Management group properties." + }, + "ManagementGroup": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ManagementGroupProperties", + "description": "The properties of the management group." + } + }, + "description": "A management group that is connected to a workspace" + }, + "WorkspaceListManagementGroupsResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ManagementGroup" + }, + "description": "Gets or sets a list of management groups attached to the workspace." + } + }, + "description": "The list workspace management groups operation response." + } + }, + "parameters": {} +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/OperationStatuses.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/OperationStatuses.json new file mode 100644 index 000000000000..f7dc59e089a1 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/OperationStatuses.json @@ -0,0 +1,116 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2020-03-01-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.OperationalInsights/locations/{location}/operationStatuses/{asyncOperationId}": { + "get": { + "x-ms-examples": { + "Get specific operation status": { + "$ref": "./examples/OperationStatusesGet.json" + } + }, + "tags": [ + "asyncOperations" + ], + "operationId": "OperationStatuses_Get", + "description": "Get the status of a long running azure asynchronous operation.", + "parameters": [ + { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "The region name of operation." + }, + { + "name": "asyncOperationId", + "in": "path", + "required": true, + "type": "string", + "description": "The operation Id." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK. Operation status.", + "schema": { + "$ref": "#/definitions/OperationStatus" + } + } + } + } + } + }, + "definitions": { + "OperationStatus": { + "description": "The status of operation.", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The operation Id." + }, + "name": { + "type": "string", + "description": "The operation name." + }, + "startTime": { + "type": "string", + "description": "The start time of the operation." + }, + "endTime": { + "type": "string", + "description": "The end time of the operation." + }, + "status": { + "type": "string", + "description": "The status of the operation." + }, + "error": { + "type": "object", + "description": "The error detail of the operation if any.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + } + }, + "parameters": {} +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Operations.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Operations.json new file mode 100644 index 000000000000..bf8e587b7eab --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Operations.json @@ -0,0 +1,118 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2020-03-01-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": { + "/providers/Microsoft.OperationalInsights/operations": { + "get": { + "x-ms-examples": { + "Get specific operation status": { + "$ref": "./examples/OperationsListByTenant.json" + } + }, + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "description": "Lists all of the available OperationalInsights Rest API operations.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "OperationListResult": { + "description": "Result of the request to list solution operations.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "List of solution operations supported by the OperationsManagement resource provider." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "Operation": { + "description": "Supported operation of OperationalInsights resource provider.", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string" + }, + "display": { + "description": "Display metadata associated with the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft OperationsManagement.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed etc.", + "type": "string" + }, + "operation": { + "description": "Type of operation: get, read, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of operation", + "type": "string" + } + } + } + } + } + }, + "parameters": {} +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/SavedSearches.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/SavedSearches.json new file mode 100644 index 000000000000..ed78f8a3c0a7 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/SavedSearches.json @@ -0,0 +1,293 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference.", + "version": "2020-03-01-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}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/savedSearches/{savedSearchId}": { + "delete": { + "tags": [ + "SavedSearches" + ], + "x-ms-examples": { + "SavedSearchesDelete": { + "$ref": "./examples/WorkspacesDeleteSavedSearches.json" + } + }, + "operationId": "SavedSearches_Delete", + "description": "Deletes the specified saved search in a given workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "savedSearchId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the saved search." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition." + } + } + }, + "put": { + "tags": [ + "SavedSearches" + ], + "x-ms-examples": { + "SavedSearchCreateOrUpdate": { + "$ref": "./examples/WorkspacesSavedSearchesCreateOrUpdate.json" + } + }, + "operationId": "SavedSearches_CreateOrUpdate", + "description": "Creates or updates a saved search for a given workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "savedSearchId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the saved search." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SavedSearch" + }, + "description": "The parameters required to save a search." + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/SavedSearch" + } + } + } + }, + "get": { + "tags": [ + "SavedSearches" + ], + "x-ms-examples": { + "SavedSearchesGet": { + "$ref": "./examples/WorkspacesSavedSearchesGet.json" + } + }, + "operationId": "SavedSearches_Get", + "description": "Gets the specified saved search for a given workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "savedSearchId", + "in": "path", + "required": true, + "type": "string", + "description": "The id of the saved search." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/SavedSearch" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/savedSearches": { + "get": { + "tags": [ + "SavedSearches" + ], + "x-ms-examples": { + "SavedSearchesList": { + "$ref": "./examples/SavedSearchesListByWorkspace.json" + } + }, + "operationId": "SavedSearches_ListByWorkspace", + "description": "Gets the saved searches for a given Log Analytics Workspace", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Returns the list of saved searches for the given Log Analytics Workspace.", + "schema": { + "$ref": "#/definitions/SavedSearchesListResult" + } + } + } + } + } + }, + "definitions": { + "Tag": { + "properties": { + "name": { + "type": "string", + "description": "The tag name." + }, + "value": { + "type": "string", + "description": "The tag value." + } + }, + "required": [ + "name", + "value" + ], + "description": "A tag of a saved search." + }, + "SavedSearchProperties": { + "properties": { + "category": { + "type": "string", + "description": "The category of the saved search. This helps the user to find a saved search faster. " + }, + "displayName": { + "type": "string", + "description": "Saved search display name." + }, + "query": { + "type": "string", + "description": "The query expression for the saved search. Please see https://docs.microsoft.com/en-us/azure/log-analytics/log-analytics-search-reference for reference." + }, + "version": { + "type": "integer", + "format": "int64", + "description": "The version number of the query language. The current version is 2 and is the default." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/definitions/Tag" + }, + "description": "The tags attached to the saved search." + } + }, + "required": [ + "category", + "displayName", + "query" + ], + "description": "Value object for saved search results." + }, + "SavedSearch": { + "properties": { + "eTag": { + "type": "string", + "description": "The ETag of the saved search." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SavedSearchProperties", + "description": "The properties of the saved search." + } + }, + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Value object for saved search results." + }, + "SavedSearchesListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SavedSearch" + }, + "description": "The array of result values." + } + }, + "description": "The saved search list operation response." + } + }, + "parameters": {} +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Schema.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Schema.json new file mode 100644 index 000000000000..78167e673b9f --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Schema.json @@ -0,0 +1,274 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2020-03-01-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}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/schema": { + "post": { + "tags": [ + "Workspaces" + ], + "x-ms-examples": { + "WorkspacesGetSchema": { + "$ref": "./examples/SavedSearchesGetSchema.json" + } + }, + "operationId": "Schema_Get", + "description": "Gets the schema for a given workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/SearchGetSchemaResponse" + } + } + } + } + } + }, + "definitions": { + "CoreSummary": { + "properties": { + "status": { + "type": "string", + "description": "The status of a core summary." + }, + "numberOfDocuments": { + "type": "integer", + "format": "int64", + "description": "The number of documents of a core summary." + } + }, + "required": [ + "numberOfDocuments" + ], + "description": "The core summary of a search." + }, + "SearchSort": { + "properties": { + "name": { + "type": "string", + "description": "The name of the field the search query is sorted on." + }, + "order": { + "type": "string", + "description": "The sort order of the search.", + "enum": [ + "asc", + "desc" + ], + "x-ms-enum": { + "name": "SearchSortEnum", + "modelAsString": true + } + } + }, + "description": "The sort parameters for search." + }, + "SearchMetadataSchema": { + "properties": { + "name": { + "type": "string", + "description": "The name of the metadata schema." + }, + "version": { + "type": "integer", + "format": "int32", + "description": "The version of the metadata schema." + } + }, + "description": "Schema metadata for search." + }, + "SearchMetadata": { + "properties": { + "requestId": { + "x-ms-client-name": "SearchId", + "type": "string", + "description": "The request id of the search." + }, + "resultType": { + "type": "string", + "description": "The search result type." + }, + "total": { + "type": "integer", + "format": "int64", + "description": "The total number of search results." + }, + "top": { + "type": "integer", + "format": "int64", + "description": "The number of top search results." + }, + "id": { + "type": "string", + "description": "The id of the search results request." + }, + "coreSummaries": { + "type": "array", + "items": { + "$ref": "#/definitions/CoreSummary" + }, + "description": "The core summaries." + }, + "status": { + "type": "string", + "description": "The status of the search results." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time for the search." + }, + "lastUpdated": { + "type": "string", + "format": "date-time", + "description": "The time of last update." + }, + "eTag": { + "type": "string", + "description": "The ETag of the search results." + }, + "sort": { + "type": "array", + "items": { + "$ref": "#/definitions/SearchSort" + }, + "description": "How the results are sorted." + }, + "requestTime": { + "type": "integer", + "format": "int64", + "description": "The request time." + }, + "aggregatedValueField": { + "type": "string", + "description": "The aggregated value field." + }, + "aggregatedGroupingFields": { + "type": "string", + "description": "The aggregated grouping fields." + }, + "sum": { + "type": "integer", + "format": "int64", + "description": "The sum of all aggregates returned in the result set." + }, + "max": { + "type": "integer", + "format": "int64", + "description": "The max of all aggregates returned in the result set." + }, + "schema": { + "$ref": "#/definitions/SearchMetadataSchema", + "description": "The schema." + } + }, + "description": "Metadata for search results." + }, + "SearchSchemaValue": { + "properties": { + "name": { + "type": "string", + "description": "The name of the schema." + }, + "displayName": { + "type": "string", + "description": "The display name of the schema." + }, + "type": { + "type": "string", + "description": "The type." + }, + "indexed": { + "type": "boolean", + "description": "The boolean that indicates the field is searchable as free text." + }, + "stored": { + "type": "boolean", + "description": "The boolean that indicates whether or not the field is stored." + }, + "facet": { + "type": "boolean", + "description": "The boolean that indicates whether or not the field is a facet." + }, + "ownerType": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The array of workflows containing the field." + } + }, + "required": [ + "facet", + "stored", + "indexed" + ], + "description": "Value object for schema results." + }, + "SearchGetSchemaResponse": { + "properties": { + "metadata": { + "x-ms-client-name": "Metadata", + "$ref": "#/definitions/SearchMetadata", + "description": "The metadata from search results." + }, + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SearchSchemaValue" + }, + "description": "The array of result values." + } + }, + "description": "The get schema operation response." + } + }, + "parameters": {} +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/SharedKeys.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/SharedKeys.json new file mode 100644 index 000000000000..de255fae52af --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/SharedKeys.json @@ -0,0 +1,126 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2020-03-01-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}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/sharedKeys": { + "post": { + "tags": [ + "Workspaces" + ], + "x-ms-examples": { + "SharedKeysList": { + "$ref": "./examples/WorkspacesGetSharedKeys.json" + } + }, + "operationId": "SharedKeys_GetSharedKeys", + "description": "Gets the shared keys for a workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/SharedKeys" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/regenerateSharedKey": { + "post": { + "tags": [ + "Workspaces" + ], + "x-ms-examples": { + "RegenerateSharedKeys": { + "$ref": "./examples/WorkspacesRegenerateSharedKeys.json" + } + }, + "operationId": "SharedKeys_Regenerate", + "description": "Regenerates the shared keys for a Log Analytics Workspace. These keys are used to connect Microsoft Operational Insights agents to the workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Returns the new shared keys associated with the Log Analytics Workspace.", + "schema": { + "$ref": "#/definitions/SharedKeys" + } + } + } + } + } + }, + "definitions": { + "SharedKeys": { + "properties": { + "primarySharedKey": { + "type": "string", + "description": "The primary shared key of a workspace." + }, + "secondarySharedKey": { + "type": "string", + "description": "The secondary shared key of a workspace." + } + }, + "description": "The shared keys for a workspace." + } + }, + "parameters": {} +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/StorageInsightConfigs.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/StorageInsightConfigs.json new file mode 100644 index 000000000000..eb2f1f4426d2 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/StorageInsightConfigs.json @@ -0,0 +1,340 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference.", + "version": "2020-03-01-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}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/storageInsightConfigs/{storageInsightName}": { + "put": { + "tags": [ + "StorageInsights" + ], + "x-ms-examples": { + "StorageInsightsCreate": { + "$ref": "./examples/StorageInsightsCreateOrUpdate.json" + } + }, + "operationId": "StorageInsightConfigs_CreateOrUpdate", + "description": "Create or update a storage insight.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "storageInsightName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the storageInsightsConfigs resource" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/StorageInsight" + }, + "description": "The parameters required to create or update a storage insight." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "201": { + "description": "Created response definition.", + "schema": { + "$ref": "#/definitions/StorageInsight" + } + }, + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/StorageInsight" + } + } + } + }, + "get": { + "tags": [ + "StorageInsights" + ], + "x-ms-examples": { + "StorageInsightsGet": { + "$ref": "./examples/StorageInsightsGet.json" + } + }, + "operationId": "StorageInsightConfigs_Get", + "description": "Gets a storage insight instance.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "storageInsightName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the storageInsightsConfigs resource" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/StorageInsight" + } + } + } + }, + "delete": { + "tags": [ + "StorageInsights" + ], + "x-ms-examples": { + "StorageInsightsDelete": { + "$ref": "./examples/StorageInsightsDelete.json" + } + }, + "operationId": "StorageInsightConfigs_Delete", + "description": "Deletes a storageInsightsConfigs resource", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "storageInsightName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the storageInsightsConfigs resource" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition." + }, + "204": { + "description": "NoContent response definition." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/storageInsightConfigs": { + "get": { + "tags": [ + "StorageInsights" + ], + "x-ms-examples": { + "StorageInsightsList": { + "$ref": "./examples/StorageInsightsListByWorkspace.json" + } + }, + "operationId": "StorageInsightConfigs_ListByWorkspace", + "description": "Lists the storage insight instances within a workspace", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/StorageInsightListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "@odata.nextLink" + } + } + } + }, + "definitions": { + "StorageAccount": { + "properties": { + "id": { + "type": "string", + "description": "The Azure Resource Manager ID of the storage account resource." + }, + "key": { + "type": "string", + "description": "The storage account key." + } + }, + "required": [ + "id", + "key" + ], + "description": "Describes a storage account connection." + }, + "StorageInsightStatus": { + "properties": { + "state": { + "type": "string", + "description": "The state of the storage insight connection to the workspace", + "enum": [ + "OK", + "ERROR" + ], + "x-ms-enum": { + "name": "StorageInsightState", + "modelAsString": true + } + }, + "description": { + "type": "string", + "description": "Description of the state of the storage insight." + } + }, + "required": [ + "state" + ], + "description": "The status of the storage insight." + }, + "StorageInsightProperties": { + "properties": { + "containers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The names of the blob containers that the workspace should read" + }, + "tables": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The names of the Azure tables that the workspace should read" + }, + "storageAccount": { + "$ref": "#/definitions/StorageAccount", + "description": "The storage account connection details" + }, + "status": { + "$ref": "#/definitions/StorageInsightStatus", + "description": "The status of the storage insight", + "readOnly": true + } + }, + "required": [ + "storageAccount" + ], + "description": "Storage insight properties." + }, + "StorageInsight": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/StorageInsightProperties", + "description": "Storage insight properties." + }, + "eTag": { + "type": "string", + "description": "The ETag of the storage insight." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Resource tags." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "The top level storage insight resource container." + }, + "StorageInsightListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/StorageInsight" + }, + "description": "A list of storage insight items." + }, + "@odata.nextLink": { + "type": "string", + "description": "The link (url) to the next page of results.", + "x-ms-client-name": "odataNextLink" + } + }, + "description": "The list storage insights operation response." + } + }, + "parameters": {} +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Usages.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Usages.json new file mode 100644 index 000000000000..214108143d89 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Usages.json @@ -0,0 +1,137 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2020-03-01-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}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/usages": { + "get": { + "tags": [ + "Workspaces" + ], + "x-ms-examples": { + "UsagesList": { + "$ref": "./examples/WorkspacesListUsages.json" + } + }, + "operationId": "Usages_List", + "description": "Gets a list of usage metrics for a workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/WorkspaceListUsagesResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + } + }, + "definitions": { + "MetricName": { + "properties": { + "value": { + "type": "string", + "description": "The system name of the metric." + }, + "localizedValue": { + "type": "string", + "description": "The localized name of the metric." + } + }, + "description": "The name of a metric." + }, + "UsageMetric": { + "properties": { + "name": { + "$ref": "#/definitions/MetricName", + "description": "The name of the metric." + }, + "unit": { + "type": "string", + "description": "The units used for the metric." + }, + "currentValue": { + "type": "number", + "format": "double", + "description": "The current value of the metric." + }, + "limit": { + "type": "number", + "format": "double", + "description": "The quota limit for the metric." + }, + "nextResetTime": { + "type": "string", + "format": "date-time", + "description": "The time that the metric's value will reset." + }, + "quotaPeriod": { + "type": "string", + "description": "The quota period that determines the length of time between value resets." + } + }, + "description": "A metric describing the usage of a resource." + }, + "WorkspaceListUsagesResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/UsageMetric" + }, + "description": "Gets or sets a list of usage metrics for a workspace." + } + }, + "description": "The list workspace usages operation response." + } + }, + "parameters": {} +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/WorkspacePurge.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/WorkspacePurge.json new file mode 100644 index 000000000000..faa1bab483a9 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/WorkspacePurge.json @@ -0,0 +1,216 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2020-03-01-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}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/purge": { + "post": { + "tags": [ + "Workspaces" + ], + "description": "Purges data in an Log Analytics workspace by a set of user-defined filters.\n\nIn order to manage system resources, purge requests are throttled at 50 requests per hour. You should batch the execution of purge requests by sending a single command whose predicate includes all user identities that require purging. Use the in operator to specify multiple identities. You should run the query prior to using for a purge request to verify that the results are expected.", + "operationId": "WorkspacePurge_Purge", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/WorkspacePurgeParameter" + } + ], + "responses": { + "202": { + "description": "Accepted request for purging an Log Analytics workspace.", + "schema": { + "$ref": "#/definitions/WorkspacePurgeResponse" + }, + "headers": { + "x-ms-status-location": { + "type": "string", + "description": "The location from which to request the operation status." + } + } + } + }, + "x-ms-examples": { + "WorkspacePurge": { + "$ref": "./examples/WorkspacesPurge.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/operations/{purgeId}": { + "get": { + "tags": [ + "Workspaces" + ], + "description": "Gets status of an ongoing purge operation.", + "operationId": "WorkspacePurge_GetPurgeStatus", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/WorkspacePurgeIdParameter" + } + ], + "responses": { + "200": { + "description": "Returns status of purge operation in body of response. e.g.: running, completed.", + "schema": { + "$ref": "#/definitions/WorkspacePurgeStatusResponse" + } + } + }, + "x-ms-examples": { + "WorkspacePurgeOperation": { + "$ref": "./examples/WorkspacesPurgeOperation.json" + } + } + } + } + }, + "definitions": { + "WorkspacePurgeBody": { + "description": "Describes the body of a purge request for an App Insights Workspace", + "required": [ + "table", + "filters" + ], + "properties": { + "table": { + "type": "string", + "description": "Table from which to purge data." + }, + "filters": { + "type": "array", + "description": "The set of columns and filters (queries) to run over them to purge the resulting data.", + "items": { + "$ref": "#/definitions/WorkspacePurgeBodyFilters" + } + } + } + }, + "WorkspacePurgeBodyFilters": { + "description": "User-defined filters to return data which will be purged from the table.", + "properties": { + "column": { + "description": "The column of the table over which the given query should run", + "type": "string" + }, + "operator": { + "description": "A query operator to evaluate over the provided column and value(s). Supported operators are ==, =~, in, in~, >, >=, <, <=, between, and have the same behavior as they would in a KQL query.", + "type": "string" + }, + "value": { + "description": "the value for the operator to function over. This can be a number (e.g., > 100), a string (timestamp >= '2017-09-01') or array of values." + }, + "key": { + "description": "When filtering over custom dimensions, this key will be used as the name of the custom dimension.", + "type": "string" + } + } + }, + "WorkspacePurgeResponse": { + "description": "Response containing operationId for a specific purge action.", + "properties": { + "operationId": { + "description": "Id to use when querying for status for a particular purge operation.", + "type": "string" + } + }, + "required": [ + "operationId" + ] + }, + "WorkspacePurgeStatusResponse": { + "description": "Response containing status for a specific purge operation.", + "properties": { + "status": { + "description": "Status of the operation represented by the requested Id.", + "type": "string", + "enum": [ + "pending", + "completed" + ], + "x-ms-enum": { + "name": "PurgeState", + "modelAsString": true + } + } + }, + "required": [ + "status" + ] + } + }, + "parameters": { + "WorkspacePurgeParameter": { + "name": "body", + "in": "body", + "description": "Describes the body of a request to purge data in a single table of an Log Analytics Workspace", + "required": true, + "schema": { + "$ref": "#/definitions/WorkspacePurgeBody" + }, + "x-ms-parameter-location": "method" + }, + "WorkspacePurgeIdParameter": { + "name": "purgeId", + "in": "path", + "required": true, + "type": "string", + "description": "In a purge status request, this is the Id of the operation the status of which is returned.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Workspaces.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Workspaces.json new file mode 100644 index 000000000000..fe96aa122702 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/Workspaces.json @@ -0,0 +1,455 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Log Analytics", + "description": "Azure Log Analytics API reference", + "version": "2020-03-01-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.OperationalInsights/workspaces": { + "get": { + "tags": [ + "Workspaces" + ], + "x-ms-examples": { + "WorkspacesSubscriptionList": { + "$ref": "./examples/WorkspacesSubscriptionList.json" + } + }, + "operationId": "Workspaces_List", + "description": "Gets the workspaces in a subscription.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/WorkspaceListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces": { + "get": { + "tags": [ + "Workspaces" + ], + "x-ms-examples": { + "WorkspacesGet": { + "$ref": "./examples/WorkspacesListByResourceGroup.json" + } + }, + "operationId": "Workspaces_ListByResourceGroup", + "description": "Gets workspaces in a resource group.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/WorkspaceListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}": { + "put": { + "tags": [ + "Workspaces" + ], + "x-ms-examples": { + "WorkspacesCreate": { + "$ref": "./examples/WorkspacesCreate.json" + } + }, + "operationId": "Workspaces_CreateOrUpdate", + "description": "Create or update a workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Workspace" + }, + "description": "The parameters required to create or update a workspace." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "201": { + "description": "Created response definition.", + "schema": { + "$ref": "#/definitions/Workspace" + } + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Workspaces" + ], + "x-ms-examples": { + "WorkspacesDelete": { + "$ref": "./examples/WorkspacesDelete.json" + } + }, + "operationId": "Workspaces_Delete", + "description": "Deletes a workspace instance.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent response definition." + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Workspaces" + ], + "x-ms-examples": { + "WorkspaceGet": { + "$ref": "./examples/WorkspacesGet.json" + } + }, + "operationId": "Workspaces_Get", + "description": "Gets a workspace instance.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "$ref": "#/definitions/Workspace" + } + } + } + }, + "patch": { + "tags": [ + "Workspaces" + ], + "x-ms-examples": { + "WorkspacesPatch": { + "$ref": "./examples/WorkspacesUpdate.json" + } + }, + "operationId": "Workspaces_Update", + "description": "Updates a workspace.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/WorkspaceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/WorkspacePatch" + }, + "description": "The parameters required to patch a workspace." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The existing workspace was successfully updated. Check provisioningStatus to see detailed status.", + "schema": { + "$ref": "#/definitions/Workspace" + } + } + } + } + } + }, + "definitions": { + "WorkspaceSku": { + "properties": { + "name": { + "type": "string", + "description": "The name of the SKU.", + "enum": [ + "Free", + "Standard", + "Premium", + "PerNode", + "PerGB2018", + "Standalone", + "CapacityReservation" + ], + "x-ms-enum": { + "name": "WorkspaceSkuNameEnum", + "modelAsString": true + } + } + }, + "required": [ + "name" + ], + "description": "The SKU (tier) of a workspace." + }, + "WorkspaceProperties": { + "properties": { + "provisioningState": { + "type": "string", + "description": "The provisioning state of the workspace.", + "enum": [ + "Creating", + "Succeeded", + "Failed", + "Canceled", + "Deleting", + "ProvisioningAccount", + "Updating" + ], + "x-ms-enum": { + "name": "WorkspaceEntityStatus", + "modelAsString": true + } + }, + "customerId": { + "type": "string", + "description": "This is a read-only property. Represents the ID associated with the workspace.", + "readOnly": true + }, + "sku": { + "$ref": "#/definitions/WorkspaceSku", + "description": "The SKU of the workspace." + }, + "retentionInDays": { + "type": "integer", + "format": "int32", + "minimum": -1, + "maximum": 730, + "description": "The workspace data retention in days. -1 means Unlimited retention for the Unlimited Sku. 730 days is the maximum allowed for all other Skus. " + }, + "publicNetworkAccessForIngestion": { + "description": "The network access type for accessing Log Analytics ingestion.", + "$ref": "#/definitions/PublicNetworkAccessType" + }, + "publicNetworkAccessForQuery": { + "description": "The network access type for accessing Log Analytics query.", + "$ref": "#/definitions/PublicNetworkAccessType" + }, + "privateLinkScopedResources": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkScopedResource" + }, + "description": "List of linked private link scope resources." + } + }, + "description": "Workspace properties." + }, + "PrivateLinkScopedResource": { + "properties": { + "resourceId": { + "type": "string", + "description": "The full resource Id of the private link scope resource." + }, + "scopeId": { + "type": "string", + "description": "The private link scope unique Identifier." + } + }, + "description": "The private link scope resource reference." + }, + "Workspace": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/WorkspaceProperties", + "description": "Workspace properties." + }, + "eTag": { + "type": "string", + "description": "The ETag of the workspace." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "description": "The top level Workspace resource container.", + "x-ms-azure-resource": true + }, + "WorkspacePatch": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/WorkspaceProperties", + "description": "Workspace properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Resource tags. Optional." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/AzureEntityResource" + } + ], + "description": "The top level Workspace resource container.", + "x-ms-azure-resource": true + }, + "WorkspaceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Workspace" + }, + "description": "A list of workspaces." + } + }, + "description": "The list workspaces operation response." + }, + "PublicNetworkAccessType": { + "type": "string", + "description": "The network access type for operating on the Log Analytics Workspace. By default it is Enabled", + "default": "Enabled", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccessType", + "modelAsString": true, + "values": [ + { + "value": "Enabled", + "description": "Enables connectivity to Log Analytics through public DNS." + }, + { + "value": "Disabled", + "description": "Disables public connectivity to Log Analytics through public DNS." + } + ] + } + } + }, + "parameters": {} +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersCreate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersCreate.json new file mode 100644 index 000000000000..4530b896c897 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersCreate.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "resourceGroupName": "oiautorest6685", + "clusterName": "oiautorest6685", + "parameters": { + "sku": { + "name": "CapacityReservation", + "capacity": 1000 + }, + "location": "australiasoutheast", + "tags": { + "tag1": "val1" + } + }, + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "202": {}, + "200": { + "body": { + "properties": { + "provisioningState": "ProvisioningAccount", + "clusterId": "5b02755b-5bf4-430c-9487-45502a2a7e62" + }, + "id": "/subscriptions/594038b5-1093-476e-a366-482775671c11/resourcegroups/oiautorest6685/providers/microsoft.operationalinsights/clusters/oiautorest6685", + "identity": { + "principalId": "356d057d-cba5-44dd-8a30-b2e547bc416b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "sku": { + "name": "CapacityReservation", + "capacity": 1000 + }, + "name": "oiautorest6685", + "type": "Microsoft.OperationalInsights/clusters", + "location": "australiasoutheast" + } + }, + "201": { + "body": { + "properties": { + "provisioningState": "ProvisioningAccount", + "clusterId": "5b02755b-5bf4-430c-9487-45502a2a7e62" + }, + "id": "/subscriptions/594038b5-1093-476e-a366-482775671c11/resourcegroups/oiautorest6685/providers/microsoft.operationalinsights/clusters/oiautorest6685", + "identity": { + "principalId": "356d057d-cba5-44dd-8a30-b2e547bc416b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "sku": { + "name": "CapacityReservation", + "capacity": 1000 + }, + "name": "oiautorest6685", + "type": "Microsoft.OperationalInsights/clusters", + "location": "australiasoutheast" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersDelete.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersDelete.json new file mode 100644 index 000000000000..9bedd88e3584 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "resourceGroupName": "oiautorest6685", + "clusterName": "oiautorest6685", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersGet.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersGet.json new file mode 100644 index 000000000000..14fa3afb311d --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersGet.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "resourceGroupName": "oiautorest6685", + "clusterName": "oiautorest6685", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": [ + { + "properties": { + "keyVaultProperties": { + "keyVaultUri": "https://aztest2170.vault.azure.net", + "keyName": "aztest2170cert", + "keyVersion": "654ft6c4e63845cbb50fd6fg51540429" + }, + "provisioningState": "Succeeded", + "clusterId": "5b02755b-5bf4-430c-9487-45502a2a7e62" + }, + "id": "/subscriptions/594038b5-1093-476e-a366-482775671c11/resourcegroups/calbot-rg/providers/microsoft.operationalinsights/clusters/testresourcelock", + "identity": { + "principalId": "356d057d-cba5-44dd-8a30-b2e547bc416b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "sku": { + "name": "CapacityReservation", + "capacity": 1000 + }, + "name": "TestResourceLock", + "type": "Microsoft.OperationalInsights/clusters", + "location": "eastus" + }, + { + "properties": { + "keyVaultProperties": { + "keyVaultUri": "https://aztest2170.vault.azure.net", + "keyName": "aztest2170cert", + "keyVersion": "654ft6c4e63845cbb50fd6fg51540429" + }, + "provisioningState": "Succeeded", + "clusterId": "5b02755b-5bf4-430c-9487-45502a2a7e62" + }, + "id": "/subscriptions/594038b5-1093-476e-a366-482775671c11/resourcegroups/mms-eus/providers/microsoft.operationalinsights/clusters/southukws", + "identity": { + "principalId": "356d057d-cba5-44dd-8a30-b2e547bc416b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "sku": { + "name": "CapacityReservation", + "capacity": 1000 + }, + "name": "SouthUKWS", + "type": "Microsoft.OperationalInsights/clusters", + "location": "East US" + } + ] + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersListByResourceGroup.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersListByResourceGroup.json new file mode 100644 index 000000000000..b555544955b6 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersListByResourceGroup.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "resourceGroupName": "oiautorest6685", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": [ + { + "properties": { + "keyVaultProperties": { + "keyVaultUri": "https://aztest2170.vault.azure.net", + "keyName": "aztest2170cert", + "keyVersion": "654ft6c4e63845cbb50fd6fg51540429" + }, + "provisioningState": "Succeeded", + "clusterId": "5b02755b-5bf4-430c-9487-45502a2a7e62" + }, + "sku": { + "name": "CapacityReservation", + "capacity": 1000 + }, + "id": "/subscriptions/594038b5-1093-476e-a366-482775671c11/resourcegroups/calbot-rg/providers/microsoft.operationalinsights/clusters/testresourcelock", + "identity": { + "principalId": "356d057d-cba5-44dd-8a30-b2e547bc416b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "name": "TestResourceLock", + "type": "Microsoft.OperationalInsights/clusters", + "location": "eastus" + } + ] + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersSubscriptionList.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersSubscriptionList.json new file mode 100644 index 000000000000..f56e36a77d2b --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersSubscriptionList.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": [ + { + "properties": { + "keyVaultProperties": { + "keyVaultUri": "https://aztest2170.vault.azure.net", + "keyName": "aztest2170cert", + "keyVersion": "654ft6c4e63845cbb50fd6fg51540429" + }, + "provisioningState": "Succeeded", + "clusterId": "5b02755b-5bf4-430c-9487-45502a2a7e62" + }, + "sku": { + "name": "CapacityReservation", + "capacity": 1000 + }, + "id": "/subscriptions/594038b5-1093-476e-a366-482775671c11/resourcegroups/calbot-rg/providers/microsoft.operationalinsights/clusters/testresourcelock", + "identity": { + "principalId": "356d057d-cba5-44dd-8a30-b2e547bc416b", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "name": "TestResourceLock", + "type": "Microsoft.OperationalInsights/clusters", + "location": "eastus" + } + ] + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersUpdate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersUpdate.json new file mode 100644 index 000000000000..f34858d33a82 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/ClustersUpdate.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "resourceGroupName": "oiautorest6685", + "clusterName": "oiautorest6685", + "parameters": { + "properties": { + "keyVaultProperties": { + "keyVaultUri": "https://aztest2170.vault.azure.net", + "keyName": "aztest2170cert", + "keyVersion": "654ft6c4e63845cbb50fd6fg51540429" + } + }, + "sku": { + "name": "CapacityReservation", + "capacity": 1000 + }, + "tags": { + "tag1": "val1" + } + }, + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "properties": { + "keyVaultProperties": { + "keyVaultUri": "https://aztest2170.vault.azure.net", + "keyName": "aztest2170cert", + "keyVersion": "654ft6c4e63845cbb50fd6fg51540429" + }, + "provisioningState": "Succeeded", + "clusterId": "1c3f2afc-9ec1-4e74-bfe8-022b83bcd7b1" + }, + "sku": { + "name": "CapacityReservation", + "capacity": 1000 + }, + "location": "australiasoutheast", + "tags": { + "tag1": "val1" + } + } + } + } +} 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 new file mode 100644 index 000000000000..413c8a0480bf --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportCreateOrUpdate.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "resourceGroupName": "RgTest1", + "workspaceName": "DeWnTest1234", + "dataExportName": "export1", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000", + "parameters": { + "properties": { + "destination": { + "resourceId": "/subscriptions/192b9f85-a39a-4276-b96d-d5cd351703f9/resourceGroups/OIAutoRest1234/providers/Microsoft.EventHub/namespaces/test" + }, + "tableNames": [ + "Heartbeat" + ] + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "dataExportId": "d5233afc-7829-4b89-c594-08d7975e19a5", + "destination": { + "resourceId": "/subscriptions/192b9f85-a39a-4276-b96d-d5cd351703f9/resourceGroups/OIAutoRest1234/providers/Microsoft.EventHub/namespaces/test", + "type": "EventHub" + }, + "allTables": false, + "tableNames": [ + "Heartbeat" + ], + "enable": true, + "createdDate": "Sun, 12 Jan 2020 12:51:10 GMT", + "lastModifiedDate": "Sun, 12 Jan 2020 12:51:10 GMT" + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000000/resourcegroups/RgTest1/providers/microsoft.operationalinsights/workspaces/DeWnTest1234/export/export1", + "name": "export1", + "type": "Microsoft.OperationalInsights/workspaces/export" + } + }, + "201": { + "body": { + "properties": { + "dataExportId": "d5233afc-7829-4b89-c594-08d7975e19a5", + "destination": { + "resourceId": "/subscriptions/192b9f85-a39a-4276-b96d-d5cd351703f9/resourceGroups/OIAutoRest1234/providers/Microsoft.EventHub/namespaces/test", + "type": "EventHub" + }, + "allTables": false, + "tableNames": [ + "Heartbeat" + ], + "enable": true, + "createdDate": "Sun, 12 Jan 2020 12:51:10 GMT", + "lastModifiedDate": "Sun, 12 Jan 2020 12:51:10 GMT" + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000000/resourcegroups/RgTest1/providers/microsoft.operationalinsights/workspaces/DeWnTest1234/export/export1", + "name": "export1", + "type": "Microsoft.OperationalInsights/workspaces/export" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportDelete.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportDelete.json new file mode 100644 index 000000000000..65820f03f1d3 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "resourceGroupName": "RgTest1", + "workspaceName": "DeWnTest1234", + "dataExportName": "export1", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": {}, + "404": {} + } +} 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 new file mode 100644 index 000000000000..c6142d9fe8c4 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "resourceGroupName": "RgTest1", + "workspaceName": "DeWnTest1234", + "dataExportName": "export1", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "properties": { + "dataExportId": "d5233afc-7829-4b89-c594-08d7975e19a5", + "destination": { + "resourceId": "/subscriptions/192b9f85-a39a-4276-b96d-d5cd351703f9/resourceGroups/OIAutoRest1234/providers/Microsoft.EventHub/namespaces/test", + "type": "EventHub" + }, + "allTables": false, + "tableNames": [ + "Heartbeat" + ], + "enable": true, + "createdDate": "Sun, 12 Jan 2020 12:51:10 GMT", + "lastModifiedDate": "Sun, 12 Jan 2020 12:51:10 GMT" + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000000/resourcegroups/RgTest1/providers/microsoft.operationalinsights/workspaces/DeWnTest1234/export/export1", + "name": "export1", + "type": "Microsoft.OperationalInsights/workspaces/export" + } + }, + "404": {} + } +} 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 new file mode 100644 index 000000000000..acec03e93f8a --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataExportListByWorkspace.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "resourceGroupName": "RgTest1", + "workspaceName": "DeWnTest1234", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "dataExportId": "d5233afc-7829-4b89-c594-08d7975e19a5", + "destination": { + "resourceId": "/subscriptions/192b9f85-a39a-4276-b96d-d5cd351703f9/resourceGroups/OIAutoRest1234/providers/Microsoft.EventHub/namespaces/test", + "type": "EventHub" + }, + "allTables": false, + "tableNames": [ + "Heartbeat" + ], + "enable": true, + "createdDate": "Sun, 12 Jan 2020 12:51:10 GMT", + "lastModifiedDate": "Sun, 12 Jan 2020 12:51:10 GMT" + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000000/resourcegroups/RgTest1/providers/microsoft.operationalinsights/workspaces/DeWnTest1234/export/export1", + "name": "export1", + "type": "Microsoft.OperationalInsights/workspaces/export" + } + ] + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataSourcesCreate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataSourcesCreate.json new file mode 100644 index 000000000000..f5163ab10916 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataSourcesCreate.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "resourceGroupName": "OIAutoRest5123", + "workspaceName": "AzTest9724", + "dataSourceName": "AzTestDS774", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000", + "parameters": { + "properties": { + "LinkedResourceId": "/subscriptions/00000000-0000-0000-0000-00000000000/providers/microsoft.insights/eventtypes/management" + }, + "kind": "AzureActivityLog" + } + }, + "responses": { + "200": { + "body": { + "kind": "AzureActivityLog", + "properties": { + "linkedResourceId": "/subscriptions/00000000-0000-0000-0000-00000000000/providers/microsoft.insights/eventtypes/management" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest5123/providers/Microsoft.OperationalInsights/workspaces/AzTest9724/datasources/AzTestDS774", + "eTag": "W/\"datetime'2017-10-01T08%3A01%3A21.2351243Z'\"", + "name": "AzTestDS774", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + } + }, + "201": { + "body": { + "kind": "AzureActivityLog", + "properties": { + "linkedResourceId": "/subscriptions/00000000-0000-0000-0000-00000000000/providers/microsoft.insights/eventtypes/management" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest5123/providers/Microsoft.OperationalInsights/workspaces/AzTest9724/datasources/AzTestDS774", + "eTag": "W/\"datetime'2017-10-01T08%3A01%3A21.2351243Z'\"", + "name": "AzTestDS774", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataSourcesDelete.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataSourcesDelete.json new file mode 100644 index 000000000000..ba705aca5205 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataSourcesDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "resourceGroupName": "OIAutoRest5123", + "workspaceName": "AzTest9724", + "dataSourceName": "AzTestDS774", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataSourcesGet.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataSourcesGet.json new file mode 100644 index 000000000000..df03a4b5687d --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataSourcesGet.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "resourceGroupName": "OIAutoRest5123", + "workspaceName": "AzTest9724", + "dataSourceName": "AzTestDS774", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "kind": "AzureActivityLog", + "properties": { + "linkedResourceId": "/subscriptions/00000000-0000-0000-0000-00000000000/providers/microsoft.insights/eventtypes/management" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest5123/providers/Microsoft.OperationalInsights/workspaces/AzTest9724/datasources/AzTestDS774", + "eTag": "W/\"datetime'2017-10-01T08%3A01%3A21.2351243Z'\"", + "name": "AzTestDS774", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataSourcesListByWorkspace.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataSourcesListByWorkspace.json new file mode 100644 index 000000000000..b24fee05304c --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/DataSourcesListByWorkspace.json @@ -0,0 +1,3019 @@ +{ + "parameters": { + "resourceGroupName": "OIAutoRest5123", + "workspaceName": "AzTest9724", + "dataSourceName": "AzTestDS774", + "$filter": "kind='WindowsEvent'", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent14", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1011", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A08.5629323Z'\"", + "name": "AzTestDSWE1011", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent64", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1013", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A22.2533211Z'\"", + "name": "AzTestDSWE1013", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent202", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1020", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A04.4645698Z'\"", + "name": "AzTestDSWE1020", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent231", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1074", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A12.5871672Z'\"", + "name": "AzTestDSWE1074", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent86", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1117", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A28.9325389Z'\"", + "name": "AzTestDSWE1117", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent30", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1128", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A13.2185735Z'\"", + "name": "AzTestDSWE1128", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent66", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1176", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A22.7779289Z'\"", + "name": "AzTestDSWE1176", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent199", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1293", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A03.5114136Z'\"", + "name": "AzTestDSWE1293", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent102", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE134", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A33.6788897Z'\"", + "name": "AzTestDSWE134", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent111", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1352", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A36.2312139Z'\"", + "name": "AzTestDSWE1352", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent31", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1360", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A13.4685716Z'\"", + "name": "AzTestDSWE1360", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent53", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1382", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A19.2840543Z'\"", + "name": "AzTestDSWE1382", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent132", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1410", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A42.7070374Z'\"", + "name": "AzTestDSWE1410", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent211", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1417", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A06.8922838Z'\"", + "name": "AzTestDSWE1417", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent274", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1560", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A26.6932412Z'\"", + "name": "AzTestDSWE1560", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent212", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1618", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A07.1422661Z'\"", + "name": "AzTestDSWE1618", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent221", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1662", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A09.5980265Z'\"", + "name": "AzTestDSWE1662", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent121", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1675", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A39.6167744Z'\"", + "name": "AzTestDSWE1675", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent157", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE169", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A50.1064668Z'\"", + "name": "AzTestDSWE169", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent196", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1735", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A02.4954752Z'\"", + "name": "AzTestDSWE1735", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent12", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1742", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A08.0452997Z'\"", + "name": "AzTestDSWE1742", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent145", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1815", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A46.5966089Z'\"", + "name": "AzTestDSWE1815", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent69", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1828", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A23.6529754Z'\"", + "name": "AzTestDSWE1828", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent58", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE188", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A20.7216320Z'\"", + "name": "AzTestDSWE188", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent48", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1962", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A17.9341560Z'\"", + "name": "AzTestDSWE1962", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent246", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE1997", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A17.3081821Z'\"", + "name": "AzTestDSWE1997", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent154", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2046", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A49.2918213Z'\"", + "name": "AzTestDSWE2046", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent165", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2056", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A52.4111189Z'\"", + "name": "AzTestDSWE2056", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent172", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2116", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A54.7598026Z'\"", + "name": "AzTestDSWE2116", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent9", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2142", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A07.2711237Z'\"", + "name": "AzTestDSWE2142", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent150", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE22", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A48.2064500Z'\"", + "name": "AzTestDSWE22", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent218", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2208", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A08.7849248Z'\"", + "name": "AzTestDSWE2208", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent161", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2221", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A51.3306230Z'\"", + "name": "AzTestDSWE2221", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent75", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2226", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A25.5991266Z'\"", + "name": "AzTestDSWE2226", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent38", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2231", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A15.3592513Z'\"", + "name": "AzTestDSWE2231", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent208", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2242", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A06.0641077Z'\"", + "name": "AzTestDSWE2242", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent228", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2263", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A11.7829226Z'\"", + "name": "AzTestDSWE2263", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent259", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2369", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A21.5874093Z'\"", + "name": "AzTestDSWE2369", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent210", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE240", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A06.6266574Z'\"", + "name": "AzTestDSWE240", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent265", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2423", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A23.4752361Z'\"", + "name": "AzTestDSWE2423", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent112", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2463", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A36.5611370Z'\"", + "name": "AzTestDSWE2463", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent32", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2499", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A13.7187131Z'\"", + "name": "AzTestDSWE2499", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent220", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2509", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A09.3324224Z'\"", + "name": "AzTestDSWE2509", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent87", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2541", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A29.2312540Z'\"", + "name": "AzTestDSWE2541", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent2", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2578", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A05.3117461Z'\"", + "name": "AzTestDSWE2578", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent119", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2619", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A38.5379572Z'\"", + "name": "AzTestDSWE2619", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent1", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE274", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A05.0735592Z'\"", + "name": "AzTestDSWE274", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent92", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2754", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A30.6297451Z'\"", + "name": "AzTestDSWE2754", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent205", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE281", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A05.2972963Z'\"", + "name": "AzTestDSWE281", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent101", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2818", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A33.3820072Z'\"", + "name": "AzTestDSWE2818", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent236", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2860", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A14.0876077Z'\"", + "name": "AzTestDSWE2860", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent93", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2867", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A30.9266089Z'\"", + "name": "AzTestDSWE2867", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent278", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2923", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A27.9342580Z'\"", + "name": "AzTestDSWE2923", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent138", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE2979", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A44.4311007Z'\"", + "name": "AzTestDSWE2979", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent217", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3009", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A08.5349323Z'\"", + "name": "AzTestDSWE3009", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent269", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3033", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A24.9696296Z'\"", + "name": "AzTestDSWE3033", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent49", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3095", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A18.2006423Z'\"", + "name": "AzTestDSWE3095", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent118", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3114", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A38.2879169Z'\"", + "name": "AzTestDSWE3114", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent116", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3132", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A37.6889867Z'\"", + "name": "AzTestDSWE3132", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent185", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3147", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A58.9331954Z'\"", + "name": "AzTestDSWE3147", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent109", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3159", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A35.6843083Z'\"", + "name": "AzTestDSWE3159", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent46", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE317", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A17.4118415Z'\"", + "name": "AzTestDSWE317", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent107", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3175", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A35.0592573Z'\"", + "name": "AzTestDSWE3175", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent28", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3183", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A12.6247906Z'\"", + "name": "AzTestDSWE3183", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent237", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3217", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A14.4938899Z'\"", + "name": "AzTestDSWE3217", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent62", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3220", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A21.7373059Z'\"", + "name": "AzTestDSWE3220", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent51", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3228", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A18.7785353Z'\"", + "name": "AzTestDSWE3228", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent171", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3395", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A54.4936956Z'\"", + "name": "AzTestDSWE3395", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent63", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3416", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A22.0032694Z'\"", + "name": "AzTestDSWE3416", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent280", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3506", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A28.8251658Z'\"", + "name": "AzTestDSWE3506", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent23", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3517", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A11.2153209Z'\"", + "name": "AzTestDSWE3517", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent229", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3528", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A12.0402565Z'\"", + "name": "AzTestDSWE3528", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent136", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3530", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A43.8027590Z'\"", + "name": "AzTestDSWE3530", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent194", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3594", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A01.9173304Z'\"", + "name": "AzTestDSWE3594", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent191", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3615", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A00.8990889Z'\"", + "name": "AzTestDSWE3615", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent242", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3645", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A16.0877829Z'\"", + "name": "AzTestDSWE3645", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent11", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3676", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A07.8068460Z'\"", + "name": "AzTestDSWE3676", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent155", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3700", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A49.5439700Z'\"", + "name": "AzTestDSWE3700", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent117", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3738", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A38.0363694Z'\"", + "name": "AzTestDSWE3738", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent159", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3740", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A50.6390339Z'\"", + "name": "AzTestDSWE3740", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent95", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3754", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A31.5203823Z'\"", + "name": "AzTestDSWE3754", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent96", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3761", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A31.7860159Z'\"", + "name": "AzTestDSWE3761", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent56", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3787", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A20.0966078Z'\"", + "name": "AzTestDSWE3787", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent181", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3880", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A57.8394298Z'\"", + "name": "AzTestDSWE3880", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent160", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3887", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A51.0806178Z'\"", + "name": "AzTestDSWE3887", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent244", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3899", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A16.6987634Z'\"", + "name": "AzTestDSWE3899", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent127", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE3928", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A41.4223363Z'\"", + "name": "AzTestDSWE3928", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent186", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4005", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A59.1831854Z'\"", + "name": "AzTestDSWE4005", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent288", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4021", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A31.5314824Z'\"", + "name": "AzTestDSWE4021", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent193", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4054", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A01.6667691Z'\"", + "name": "AzTestDSWE4054", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent133", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE406", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A42.9581303Z'\"", + "name": "AzTestDSWE406", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent88", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4128", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A29.4890798Z'\"", + "name": "AzTestDSWE4128", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent189", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4140", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A00.2051432Z'\"", + "name": "AzTestDSWE4140", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent183", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4209", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A58.3706603Z'\"", + "name": "AzTestDSWE4209", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent67", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4216", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A23.1240354Z'\"", + "name": "AzTestDSWE4216", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent294", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4240", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A33.5368097Z'\"", + "name": "AzTestDSWE4240", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent91", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4279", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A30.3641074Z'\"", + "name": "AzTestDSWE4279", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent273", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4289", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A26.3963554Z'\"", + "name": "AzTestDSWE4289", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent148", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4317", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A47.6751803Z'\"", + "name": "AzTestDSWE4317", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent4", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4324", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A05.8120517Z'\"", + "name": "AzTestDSWE4324", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent201", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4362", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A04.1208323Z'\"", + "name": "AzTestDSWE4362", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent13", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4416", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A08.3109506Z'\"", + "name": "AzTestDSWE4416", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent153", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4424", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A48.9744951Z'\"", + "name": "AzTestDSWE4424", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent52", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4466", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A19.0457713Z'\"", + "name": "AzTestDSWE4466", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent37", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4467", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A15.0936374Z'\"", + "name": "AzTestDSWE4467", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent129", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4503", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A41.9399246Z'\"", + "name": "AzTestDSWE4503", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent276", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4521", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A27.2714771Z'\"", + "name": "AzTestDSWE4521", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent79", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4530", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A26.7419933Z'\"", + "name": "AzTestDSWE4530", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent115", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4600", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A37.4227966Z'\"", + "name": "AzTestDSWE4600", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent135", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4644", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A43.5519204Z'\"", + "name": "AzTestDSWE4644", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent162", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4694", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A51.6431386Z'\"", + "name": "AzTestDSWE4694", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent5", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4715", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A06.0530002Z'\"", + "name": "AzTestDSWE4715", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent267", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE472", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A24.3989962Z'\"", + "name": "AzTestDSWE472", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent243", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4721", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A16.3706498Z'\"", + "name": "AzTestDSWE4721", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent295", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4734", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A33.8337155Z'\"", + "name": "AzTestDSWE4734", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent270", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4755", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A25.2712759Z'\"", + "name": "AzTestDSWE4755", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent81", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4779", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A27.5076680Z'\"", + "name": "AzTestDSWE4779", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent0", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4791", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A04.6828938Z'\"", + "name": "AzTestDSWE4791", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent170", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4798", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A54.0073520Z'\"", + "name": "AzTestDSWE4798", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent263", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE480", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A22.9077505Z'\"", + "name": "AzTestDSWE480", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent25", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4847", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A11.7028912Z'\"", + "name": "AzTestDSWE4847", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent204", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4876", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A04.9847854Z'\"", + "name": "AzTestDSWE4876", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent68", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4900", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A23.4029367Z'\"", + "name": "AzTestDSWE4900", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent105", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4918", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A34.5280091Z'\"", + "name": "AzTestDSWE4918", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent296", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4928", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A34.2882196Z'\"", + "name": "AzTestDSWE4928", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent293", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4930", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A33.2381803Z'\"", + "name": "AzTestDSWE4930", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent113", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4945", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A36.8423994Z'\"", + "name": "AzTestDSWE4945", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent15", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4967", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A08.9379456Z'\"", + "name": "AzTestDSWE4967", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent180", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4969", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A57.5893926Z'\"", + "name": "AzTestDSWE4969", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent54", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE4983", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A19.5497139Z'\"", + "name": "AzTestDSWE4983", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent151", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5011", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A48.4588661Z'\"", + "name": "AzTestDSWE5011", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent290", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5082", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A32.2694295Z'\"", + "name": "AzTestDSWE5082", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent248", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5136", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A17.8863220Z'\"", + "name": "AzTestDSWE5136", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent206", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5141", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A05.5484906Z'\"", + "name": "AzTestDSWE5141", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent266", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5166", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A23.9283342Z'\"", + "name": "AzTestDSWE5166", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent282", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5207", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A29.4970655Z'\"", + "name": "AzTestDSWE5207", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent203", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5223", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A04.7146038Z'\"", + "name": "AzTestDSWE5223", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent20", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5233", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A10.3237629Z'\"", + "name": "AzTestDSWE5233", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent249", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5253", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A18.1831872Z'\"", + "name": "AzTestDSWE5253", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent286", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5255", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A30.9049829Z'\"", + "name": "AzTestDSWE5255", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent29", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5263", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A12.8904269Z'\"", + "name": "AzTestDSWE5263", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent255", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5351", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A20.4543884Z'\"", + "name": "AzTestDSWE5351", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent55", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5385", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A19.7997319Z'\"", + "name": "AzTestDSWE5385", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent89", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5394", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A29.7703365Z'\"", + "name": "AzTestDSWE5394", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent17", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE541", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A09.4692151Z'\"", + "name": "AzTestDSWE541", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent241", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5439", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A15.7994161Z'\"", + "name": "AzTestDSWE5439", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent223", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5460", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A10.3032105Z'\"", + "name": "AzTestDSWE5460", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent268", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5479", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A24.6802546Z'\"", + "name": "AzTestDSWE5479", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent192", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5483", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A01.1670463Z'\"", + "name": "AzTestDSWE5483", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent114", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5486", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A37.1393156Z'\"", + "name": "AzTestDSWE5486", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent126", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5554", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A41.1205470Z'\"", + "name": "AzTestDSWE5554", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent256", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5559", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A20.7200407Z'\"", + "name": "AzTestDSWE5559", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent50", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5585", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A18.4534330Z'\"", + "name": "AzTestDSWE5585", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent125", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE568", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A40.8861587Z'\"", + "name": "AzTestDSWE568", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent230", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5741", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A12.3059271Z'\"", + "name": "AzTestDSWE5741", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent120", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE58", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A39.0692471Z'\"", + "name": "AzTestDSWE58", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent44", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5810", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A16.9117573Z'\"", + "name": "AzTestDSWE5810", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent141", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5815", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A45.4055476Z'\"", + "name": "AzTestDSWE5815", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent173", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5858", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A55.0097893Z'\"", + "name": "AzTestDSWE5858", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent251", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5866", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A18.9931389Z'\"", + "name": "AzTestDSWE5866", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent187", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5888", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A59.4332080Z'\"", + "name": "AzTestDSWE5888", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent18", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE5905", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A09.7599986Z'\"", + "name": "AzTestDSWE5905", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent224", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6027", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A10.6395291Z'\"", + "name": "AzTestDSWE6027", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent235", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE607", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A13.7282386Z'\"", + "name": "AzTestDSWE607", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent100", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6099", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A33.1319662Z'\"", + "name": "AzTestDSWE6099", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent6", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6122", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A06.3186640Z'\"", + "name": "AzTestDSWE6122", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent24", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6218", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A11.4528829Z'\"", + "name": "AzTestDSWE6218", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent149", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE622", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A47.9407875Z'\"", + "name": "AzTestDSWE622", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent209", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6222", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A06.3453921Z'\"", + "name": "AzTestDSWE6222", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent60", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6240", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A21.2372832Z'\"", + "name": "AzTestDSWE6240", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent216", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6251", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A08.2849036Z'\"", + "name": "AzTestDSWE6251", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent195", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6274", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A02.1829375Z'\"", + "name": "AzTestDSWE6274", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent98", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6296", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A32.3491070Z'\"", + "name": "AzTestDSWE6296", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent261", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6301", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A22.1811938Z'\"", + "name": "AzTestDSWE6301", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent7", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6404", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A06.7093003Z'\"", + "name": "AzTestDSWE6404", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent3", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6406", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A05.5617435Z'\"", + "name": "AzTestDSWE6406", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent123", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6432", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A40.2886854Z'\"", + "name": "AzTestDSWE6432", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent110", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6439", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A35.9811949Z'\"", + "name": "AzTestDSWE6439", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent233", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6451", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A13.1344490Z'\"", + "name": "AzTestDSWE6451", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent22", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6486", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A10.9653354Z'\"", + "name": "AzTestDSWE6486", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent19", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6505", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A10.0582011Z'\"", + "name": "AzTestDSWE6505", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent166", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6514", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A52.8955201Z'\"", + "name": "AzTestDSWE6514", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent225", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6518", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A10.9395226Z'\"", + "name": "AzTestDSWE6518", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent70", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6537", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A24.0123335Z'\"", + "name": "AzTestDSWE6537", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent179", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6547", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A57.3394082Z'\"", + "name": "AzTestDSWE6547", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent103", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6556", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A33.9457044Z'\"", + "name": "AzTestDSWE6556", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent234", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6718", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A13.4313542Z'\"", + "name": "AzTestDSWE6718", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent108", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6724", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A35.4186784Z'\"", + "name": "AzTestDSWE6724", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent27", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6741", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A12.3279180Z'\"", + "name": "AzTestDSWE6741", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent72", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6796", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A24.5764501Z'\"", + "name": "AzTestDSWE6796", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent299", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6826", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A35.2579899Z'\"", + "name": "AzTestDSWE6826", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent297", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6829", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A34.6319483Z'\"", + "name": "AzTestDSWE6829", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent85", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6893", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A28.5887776Z'\"", + "name": "AzTestDSWE6893", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent41", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE6974", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A16.1249736Z'\"", + "name": "AzTestDSWE6974", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent279", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE7008", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A28.3876585Z'\"", + "name": "AzTestDSWE7008", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent281", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE7014", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A29.1220764Z'\"", + "name": "AzTestDSWE7014", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent272", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE7068", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A26.0213457Z'\"", + "name": "AzTestDSWE7068", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent260", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE7080", + "eTag": "W/\"datetime'2017-10-02T23%3A21%3A21.8686663Z'\"", + "name": "AzTestDSWE7080", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent124", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE7166", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A40.5423724Z'\"", + "name": "AzTestDSWE7166", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + }, + { + "kind": "WindowsEvent", + "properties": { + "eventLogName": "windowsEvent42", + "eventTypes": [ + { + "eventType": "Error" + } + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/datasources/AzTestDSWE7178", + "eTag": "W/\"datetime'2017-10-02T23%3A20%3A16.3906307Z'\"", + "name": "AzTestDSWE7178", + "type": "Microsoft.OperationalInsights/workspaces/datasources" + } + ], + "nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/OIAutoRest7887/providers/Microsoft.OperationalInsights/workspaces/AzTest218/dataSources?$filter=kind+eq+'WindowsEvent'&api-version=2020-03-01-preview&$skiptoken=AzTestDSWE7191" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedServicesCreate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedServicesCreate.json new file mode 100644 index 000000000000..cafa8f3d8c16 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedServicesCreate.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "resourceGroupName": "mms-eus", + "workspaceName": "TestLinkWS", + "linkedServiceName": "Cluster", + "parameters": { + "properties": { + "writeAccessResourceId": "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/clusters/testcluster" + } + }, + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "properties": { + "writeAccessResourceId": "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/clusters/testcluster", + "provisioningState": "ProvisioningAccount" + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000000/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testlinkws/linkedservices/cluster", + "name": "TestLinkWS/Cluster", + "type": "Microsoft.OperationalInsights/workspaces/linkedServices" + } + }, + "201": { + "body": { + "properties": { + "writeAccessResourceId": "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/clusters/testcluster", + "provisioningState": "ProvisioningAccount" + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000000/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testlinkws/linkedservices/cluster", + "name": "TestLinkWS/Cluster", + "type": "Microsoft.OperationalInsights/workspaces/linkedServices" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedServicesDelete.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedServicesDelete.json new file mode 100644 index 000000000000..3c6587833e9a --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedServicesDelete.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "linkedServiceName": "Cluster", + "workspaceName": "TestLinkWS", + "resourceGroupName": "rg1", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "properties": { + "writeAccessResourceId": "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/clusters/testcluster", + "provisioningState": "Deleting" + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000000/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testlinkws/linkedservices/cluster", + "name": "TestLinkWS/Cluster", + "type": "Microsoft.OperationalInsights/workspaces/linkedServices" + } + }, + "204": {} + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedServicesGet.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedServicesGet.json new file mode 100644 index 000000000000..630577c84ed7 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedServicesGet.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "resourceGroupName": "mms-eus", + "workspaceName": "TestLinkWS", + "linkedServiceName": "Cluster", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "properties": { + "writeAccessResourceId": "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/clusters/testcluster", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testlinkws/linkedservices/cluster", + "name": "TestLinkWS/Cluster", + "type": "Microsoft.OperationalInsights/workspaces/linkedServices" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedServicesListByWorkspace.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedServicesListByWorkspace.json new file mode 100644 index 000000000000..4e66b00ee184 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedServicesListByWorkspace.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "resourceGroupName": "mms-eus", + "workspaceName": "TestLinkWS", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": [ + { + "properties": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/mms-eus/providers/Microsoft.Automation/automationAccounts/TestAccount", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testlinkws/linkedservices/automation", + "name": "TestLinkWS/Automation", + "type": "Microsoft.OperationalInsights/workspaces/linkedServices" + }, + { + "properties": { + "writeAccessResourceId": "/subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/clusters/TestCluster", + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testlinkws/linkedservices/cluster", + "name": "TestLinkWS/Cluster", + "type": "Microsoft.OperationalInsights/workspaces/linkedServices" + } + ] + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedStorageAccountsCreate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedStorageAccountsCreate.json new file mode 100644 index 000000000000..56974c5a0582 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedStorageAccountsCreate.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "resourceGroupName": "mms-eus", + "workspaceName": "testLinkStorageAccountsWS", + "dataSourceType": "CustomLogs", + "parameters": { + "properties": { + "storageAccountIds": [ + "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageA", + "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageB" + ] + } + }, + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "properties": { + "dataSourceType": "CustomLogs", + "storageAccountIds": [ + "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageA", + "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageB" + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-00000000000/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testLinkStorageAccountsWS/linkedStorageAccounts/CustomLogs", + "name": "CustomLogs", + "type": "Microsoft.OperationalInsights/workspaces/linkedStorageAccounts" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedStorageAccountsDelete.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedStorageAccountsDelete.json new file mode 100644 index 000000000000..8fe473711094 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedStorageAccountsDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "dataSourceType": "CustomLogs", + "workspaceName": "testLinkStorageAccountsWS", + "resourceGroupName": "mms-eus", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": {} + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedStorageAccountsGet.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedStorageAccountsGet.json new file mode 100644 index 000000000000..605dc2a88c44 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedStorageAccountsGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "resourceGroupName": "mms-eus", + "workspaceName": "testLinkStorageAccountsWS", + "dataSourceType": "CustomLogs", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "properties": { + "dataSourceType": "CustomLogs", + "storageAccountIds": [ + "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageA", + "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageB" + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testLinkStorageAccountsWS/linkedStorageAccounts/CustomLogs", + "name": "CustomLogs", + "type": "Microsoft.OperationalInsights/workspaces/linkedStorageAccounts" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedStorageAccountsListByWorkspace.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedStorageAccountsListByWorkspace.json new file mode 100644 index 000000000000..88e9d2fd376b --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/LinkedStorageAccountsListByWorkspace.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "resourceGroupName": "mms-eus", + "workspaceName": "testLinkStorageAccountsWS", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "dataSourceType": "CustomLogs", + "storageAccountIds": [ + "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageA", + "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageB" + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testLinkStorageAccountsWS/linkedStorageAccounts/CustomLogs", + "name": "CustomLogs", + "type": "Microsoft.OperationalInsights/workspaces/linkedStorageAccounts" + }, + { + "properties": { + "dataSourceType": "AzureWatson", + "storageAccountIds": [ + "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageA", + "/subscriptions/00000000-0000-0000-0000-00000000000/resourceGroups/mms-eus/providers/Microsoft.Storage/storageAccounts/testStorageC" + ] + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/testLinkStorageAccountsWS/linkedStorageAccounts/AzureWatson", + "name": "AzureWatson", + "type": "Microsoft.OperationalInsights/workspaces/linkedStorageAccounts" + } + ] + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/OperationStatusesGet.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/OperationStatusesGet.json new file mode 100644 index 000000000000..b33d531e01c1 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/OperationStatusesGet.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "613192d7-503f-477a-9cfe-4efc3ee2bd60", + "location": "West US", + "asyncOperationId": "713192d7-503f-477a-9cfe-4efc3ee2bd11", + "api-version": "2020-03-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/613192d7-503f-477a-9cfe-4efc3ee2bd60/locations/westus/operationStatuses/713192d7-503f-477a-9cfe-4efc3ee2bd11", + "name": "713192d7-503f-477a-9cfe-4efc3ee2bd11", + "startTime": "2017-01-01T13:13:13.933Z", + "endTime": "2017-01-01T16:13:13.933Z", + "status": "Succeeded" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/OperationsListByTenant.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/OperationsListByTenant.json new file mode 100644 index 000000000000..0e38965a812c --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/OperationsListByTenant.json @@ -0,0 +1,327 @@ +{ + "parameters": { + "api-version": "2020-03-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.OperationalInsights/workspaces/write", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Workspace", + "operation": "Create Workspace", + "description": "Creates a new workspace or links to an existing workspace by providing the customer id from the existing workspace." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/read", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Workspace", + "operation": "Get Workspace", + "description": "Gets an existing workspace" + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/delete", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Workspace", + "operation": "Delete Workspace", + "description": "Deletes a workspace. If the workspace was linked to an existing workspace at creation time then the workspace it was linked to is not deleted." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/generateregistrationcertificate/action", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Registration Certificate", + "operation": "Generates Registration Certificate for Workspace.", + "description": "Generates Registration Certificate for the workspace. This Certificate is used to connect Microsoft System Center Operation Manager to the workspace." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/storageinsightconfigs/write", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Storage Insight Configuration", + "operation": "Create Storage Configuration", + "description": "Creates a new storage configuration. These configurations are used to pull data from a location in an existing storage account." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/storageinsightconfigs/read", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Storage Insight Configuration", + "operation": "Get Storage Configuration", + "description": "Gets a storage configuration." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/storageinsightconfigs/delete", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Storage Insight Configuration", + "operation": "Delete Storage Configuration", + "description": "Deletes a storage configuration. This will stop Microsoft Operational Insights from reading data from the storage account." + } + }, + { + "name": "Microsoft.OperationalInsights/register/action", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Register", + "operation": "Register a subscription to a resource provider.", + "description": "Register a subscription to a resource provider." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/sharedKeys/action", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Shared Keys", + "operation": "List Workspace Shared Keys", + "description": "Retrieves the shared keys for the workspace. These keys are used to connect Microsoft Operational Insights agents to the workspace." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/sharedKeys/read", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Shared Keys", + "operation": "List Workspace Shared Keys", + "description": "Retrieves the shared keys for the workspace. These keys are used to connect Microsoft Operational Insights agents to the workspace." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/listKeys/action", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "List Keys", + "operation": "List Workspace Keys", + "description": "Retrieves the list keys for the workspace. These keys are used to connect Microsoft Operational Insights agents to the workspace." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/listKeys/read", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "List Keys", + "operation": "List Workspace Keys", + "description": "Retrieves the list keys for the workspace. These keys are used to connect Microsoft Operational Insights agents to the workspace." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/managementGroups/read", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Management Group", + "operation": "Get Management Groups for Workspace", + "description": "Gets the names and metadata for System Center Operations Manager management groups connected to this workspace." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/usages/read", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Usage Metric", + "operation": "Get Usage Data for Workspace", + "description": "Gets usage data for a workspace including the amount of data read by the workspace." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/search/action", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Search", + "operation": "Search Workspace Data", + "description": "Executes a search query" + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/schema/read", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Search Schema", + "operation": "Get Search Schema", + "description": "Gets the search schema for the workspace. Search schema includes the exposed fields and their types." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/datasources/read", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Data Source", + "operation": "Get datasources under a workspace.", + "description": "Get datasources under a workspace." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/datasources/write", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Data Source", + "operation": "Create/Update datasources under a workspace.", + "description": "Create/Update datasources under a workspace." + } + }, + {}, + {}, + {}, + {}, + { + "name": "Microsoft.OperationalInsights/workspaces/notificationSettings/read", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Notification Settings", + "operation": "Get Notification Settings", + "description": "Get the user's notification settings for the workspace." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/notificationSettings/write", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Notification Settings", + "operation": "Put Notification Settings", + "description": "Set the user's notification settings for the workspace." + } + }, + {}, + {}, + {}, + { + "name": "Microsoft.OperationalInsights/workspaces/configurationScopes/delete", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Configuration Scope", + "operation": "Delete Configuration Scope", + "description": "Delete Configuration Scope" + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/linkedServices/read", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Linked Services", + "operation": "Get linked services under given workspace.", + "description": "Get linked services under given workspace." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/linkedServices/write", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Linked Services", + "operation": "Create/Update linked services under given workspace.", + "description": "Create/Update linked services under given workspace." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/linkedServices/delete", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Linked Services", + "operation": "Delete linked services under given workspace.", + "description": "Delete linked services under given workspace." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/intelligencepacks/read", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Intelligence Packs", + "operation": "List Intelligence Packs", + "description": "Lists all intelligence packs that are visible for a given worksapce and also lists whether the pack is enabled or disabled for that workspace." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/intelligencepacks/enable/action", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Intelligence Packs", + "operation": "Enable Intelligence Pack", + "description": "Enables an intelligence pack for a given workspace." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/intelligencepacks/disable/action", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Intelligence Packs", + "operation": "Disable Intelligence Pack", + "description": "Disables an intelligence pack for a given workspace." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/analytics/query/action", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "analytics", + "operation": "Search using new engine.", + "description": "Search using new engine." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/analytics/query/schema/read", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "analytics", + "operation": "Get search schema V2.", + "description": "Get search schema V2." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/api/query/action", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "analytics", + "operation": "Search using new engine.", + "description": "Search using new engine." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/api/query/schema/read", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "analytics", + "operation": "Get search schema V2.", + "description": "Get search schema V2." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/purge/action", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "analytics", + "operation": "Delete specified data from workspace", + "description": "Delete specified data from workspace" + } + }, + { + "name": "Microsoft.OperationalInsights/linkTargets/read", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Unlinked Account", + "operation": "List Unlinked Accounts", + "description": "Lists existing accounts that are not associated with an Azure subscription. To link this Azure subscription to a workspace, use a customer id returned by this operation in the customer id property of the Create Workspace operation." + } + }, + { + "name": "Microsoft.OperationalInsights/workspaces/metricDefinitions/read", + "display": { + "provider": "Microsoft Operational Insights", + "resource": "Metric Definitions", + "operation": "Metric Definition operation", + "description": "Get Metric Definitions under workspace" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/SavedSearchesGetSchema.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/SavedSearchesGetSchema.json new file mode 100644 index 000000000000..e81c0c9b4608 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/SavedSearchesGetSchema.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "resourceGroupName": "mms-eus", + "workspaceName": "atlantisdemo", + "api-version": "2020-03-01-preview", + "parameters": { + "top": 25, + "query": "*" + }, + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "metadata": { + "schema": { + "name": "CloudOps", + "version": 2 + }, + "resultType": "schema", + "requestTime": 28 + }, + "value": [ + { + "name": "TenantId", + "displayName": "TenantId", + "type": "Guid", + "indexed": true, + "stored": false, + "facet": false, + "ownerType": [ + "Alert", + "AzureActivity", + "AzureAudit", + "AzureMetrics", + "ComputerGroup", + "ETWEvent", + "Event", + "ExtraHopDBLogin", + "ExtraHopDBTransaction", + "ExtraHopDNSResponse", + "ExtraHopFTPResponse", + "ExtraHopHTTPTransaction", + "ExtraHopSMTPMessage", + "ExtraHopSYNScanDetect", + "ExtraHopTCPOpen", + "Heartbeat", + "Operation", + "Perf", + "ReservedAzureCommonFields", + "ReservedCommonFields", + "ServiceFabricOperationalEvent", + "ServiceFabricReliableActorEvent", + "ServiceFabricReliableServiceEvent", + "Syslog", + "Usage", + "W3CIISLog" + ] + } + ] + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/SavedSearchesListByWorkspace.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/SavedSearchesListByWorkspace.json new file mode 100644 index 000000000000..25158ff857e8 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/SavedSearchesListByWorkspace.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "resourceGroupName": "TestRG", + "workspaceName": "TestWS", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/workspaces/AtlantisDemo/savedSearches/test-new-saved-search-id-2015", + "eTag": "W/\"datetime'2017-10-02T23%3A15%3A41.0709875Z'\"", + "properties": { + "Category": " Saved Search Test Category", + "DisplayName": "Create or Update Saved Search Test", + "Query": "* | measure Count() by Computer", + "Tags": [ + { + "Name": "Group", + "Value": "Computer" + } + ], + "Version": 1 + } + } + ] + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/StorageInsightsCreateOrUpdate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/StorageInsightsCreateOrUpdate.json new file mode 100644 index 000000000000..e670c1ffd1b3 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/StorageInsightsCreateOrUpdate.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "resourceGroupName": "OIAutoRest5123", + "workspaceName": "aztest5048", + "storageInsightName": "AzTestSI1110", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000", + "parameters": { + "properties": { + "containers": [ + "wad-iis-logfiles" + ], + "tables": [ + "WADWindowsEventLogsTable", + "LinuxSyslogVer2v0" + ], + "storageAccount": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/OIAutoRest6987/providers/microsoft.storage/storageaccounts/AzTestFakeSA9945", + "key": "1234" + } + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "containers": [ + "wad-iis-logfiles" + ], + "tables": [ + "WADWindowsEventLogsTable", + "LinuxSyslogVer2v0" + ], + "storageAccount": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/OIAutoRest6987/providers/microsoft.storage/storageaccounts/AzTestFakeSA9945", + "key": "Storage Key" + }, + "status": { + "state": "OK" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/oiautorest6987/providers/microsoft.operationalinsights/workspaces/aztest5048/storageinsightconfigs/AzTestSI1110", + "name": "AzTestSI1110", + "type": "Microsoft.OperationalInsights/workspaces/storageinsightconfigs" + } + }, + "201": { + "body": { + "properties": { + "containers": [ + "wad-iis-logfiles" + ], + "tables": [ + "WADWindowsEventLogsTable", + "LinuxSyslogVer2v0" + ], + "storageAccount": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/OIAutoRest6987/providers/microsoft.storage/storageaccounts/AzTestFakeSA9945", + "key": "Storage Key" + }, + "status": { + "state": "OK" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/oiautorest6987/providers/microsoft.operationalinsights/workspaces/aztest5048/storageinsightconfigs/AzTestSI1110", + "name": "AzTestSI1110", + "type": "Microsoft.OperationalInsights/workspaces/storageinsightconfigs" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/StorageInsightsDelete.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/StorageInsightsDelete.json new file mode 100644 index 000000000000..51daff453fa3 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/StorageInsightsDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "resourceGroupName": "OIAutoRest5123", + "workspaceName": "aztest5048", + "storageInsightName": "AzTestSI1110", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/StorageInsightsGet.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/StorageInsightsGet.json new file mode 100644 index 000000000000..5885e10467dd --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/StorageInsightsGet.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "resourceGroupName": "OIAutoRest5123", + "workspaceName": "aztest5048", + "storageInsightName": "AzTestSI1110", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "properties": { + "containers": [ + "wad-iis-logfiles" + ], + "tables": [ + "WADWindowsEventLogsTable", + "LinuxSyslogVer2v0" + ], + "storageAccount": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/OIAutoRest6987/providers/microsoft.storage/storageaccounts/AzTestFakeSA9945", + "key": "Storage Account Key" + }, + "status": { + "state": "OK" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/oiautorest6987/providers/microsoft.operationalinsights/workspaces/aztest5048/storageinsightconfigs/AzTestSI1110", + "name": "AzTestSI1110", + "type": "Microsoft.OperationalInsights/workspaces/storageinsightconfigs" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/StorageInsightsListByWorkspace.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/StorageInsightsListByWorkspace.json new file mode 100644 index 000000000000..f043f17313df --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/StorageInsightsListByWorkspace.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "resourceGroupName": "OIAutoRest5123", + "workspaceName": "aztest5048", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": [ + { + "properties": { + "containers": [ + "wad-iis-logfiles" + ], + "tables": [ + "WADWindowsEventLogsTable", + "LinuxSyslogVer2v0" + ], + "storageAccount": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/OIAutoRest6987/providers/microsoft.storage/storageaccounts/AzTestFakeSA9945" + }, + "status": { + "state": "OK" + } + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/oiautorest6987/providers/microsoft.operationalinsights/workspaces/aztest5048/storageinsightconfigs/AzTestSI1110", + "name": "AzTestSI1110", + "type": "Microsoft.OperationalInsights/workspaces/storageinsightconfigs" + } + ] + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesAvailableServiceTiers.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesAvailableServiceTiers.json new file mode 100644 index 000000000000..b9f85bfed367 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesAvailableServiceTiers.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "workspaceName": "workspace1", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": [ + { + "serviceTier": "PerNode", + "enabled": true, + "minimumRetention": 7, + "maximumRetention": 30, + "defaultRetention": 7 + }, + { + "serviceTier": "CapacityReservation", + "enabled": true, + "minimumRetention": 30, + "maximumRetention": 300, + "defaultRetention": 30, + "capacityReservationLevel": 200, + "lastSkuUpdate": "2020-02-04T08:55:03.871Z" + } + ] + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesCreate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesCreate.json new file mode 100644 index 000000000000..c94b85a920c2 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesCreate.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "resourceGroupName": "oiautorest6685", + "workspaceName": "oiautorest6685", + "parameters": { + "properties": { + "sku": { + "name": "PerGB2018" + }, + "retentionInDays": 30 + }, + "location": "australiasoutheast", + "tags": { + "tag1": "val1" + } + }, + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/oiautorest6685/providers/microsoft.operationalinsights/workspaces/aztest2170", + "name": "AzTest2170", + "type": "Microsoft.OperationalInsights/workspaces", + "location": "australiasoutheast", + "tags": { + "tag1": "val1" + }, + "properties": { + "customerId": "bc089d7b-485c-4aff-a71e-c00f362d8d2f", + "provisioningState": "Creating", + "sku": { + "name": "PerGB2018" + }, + "retentionInDays": 30, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/oiautorest6685/providers/microsoft.operationalinsights/workspaces/aztest2170", + "name": "AzTest2170", + "type": "Microsoft.OperationalInsights/workspaces", + "location": "australiasoutheast", + "tags": { + "tag1": "val1" + }, + "properties": { + "customerId": "bc089d7b-485c-4aff-a71e-c00f362d8d2f", + "provisioningState": "Creating", + "sku": { + "name": "PerGB2018" + }, + "retentionInDays": 30, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + } + } + }, + "202": {} + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesDelete.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesDelete.json new file mode 100644 index 000000000000..b07a3f9081d1 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "resourceGroupName": "oiautorest6685", + "workspaceName": "oiautorest6685", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": {}, + "204": {}, + "202": {} + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesDeleteSavedSearches.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesDeleteSavedSearches.json new file mode 100644 index 000000000000..e6056592ee9f --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesDeleteSavedSearches.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "resourceGroupName": "TestRG", + "workspaceName": "TestWS", + "savedSearchName": "SavedSearchName", + "api-version": "2020-03-01-preview", + "savedSearchId": "00000000-0000-0000-0000-00000000000", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": {} + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesDisableIntelligencePack.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesDisableIntelligencePack.json new file mode 100644 index 000000000000..dcb9915c2ca1 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesDisableIntelligencePack.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "workspaceName": "TestLinkWS", + "intelligencePackName": "ChangeTracking", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": {} + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesEnableIntelligencePack.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesEnableIntelligencePack.json new file mode 100644 index 000000000000..dcb9915c2ca1 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesEnableIntelligencePack.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "workspaceName": "TestLinkWS", + "intelligencePackName": "ChangeTracking", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": {} + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesGatewaysDelete.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesGatewaysDelete.json new file mode 100644 index 000000000000..d86d8188b821 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesGatewaysDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-00000000000", + "resourceGroupName": "OIAutoRest5123", + "workspaceName": "aztest5048", + "gatewayId": "00000000-0000-0000-0000-00000000000", + "api-version": "2020-03-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesGet.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesGet.json new file mode 100644 index 000000000000..efcc73efb27e --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesGet.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "resourceGroupName": "oiautorest6685", + "workspaceName": "oiautorest6685", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": [ + { + "properties": { + "customerId": "5b02755b-5bf4-430c-9487-45502a2a7e62", + "provisioningState": "Succeeded", + "sku": { + "name": "free" + }, + "retentionInDays": 7, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + }, + "id": "/subscriptions/594038b5-1093-476e-a366-482775671c11/resourcegroups/calbot-rg/providers/microsoft.operationalinsights/workspaces/testresourcelock", + "name": "TestResourceLock", + "type": "Microsoft.OperationalInsights/workspaces", + "location": "eastus" + }, + { + "properties": { + "customerId": "4884a2fd-b08f-4aa6-bf16-5757df1093fe", + "provisioningState": "Succeeded", + "sku": { + "name": "free" + }, + "retentionInDays": 7, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + }, + "id": "/subscriptions/594038b5-1093-476e-a366-482775671c11/resourcegroups/mms-eus/providers/microsoft.operationalinsights/workspaces/southukws", + "name": "SouthUKWS", + "type": "Microsoft.OperationalInsights/workspaces", + "location": "East US" + } + ] + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesGetSharedKeys.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesGetSharedKeys.json new file mode 100644 index 000000000000..33d8d49fb5dc --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesGetSharedKeys.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "workspaceName": "TestLinkWS", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "primarySharedKey": "BozLY1JnZbxu0jWUQSY8iRPEM8ObmpP8rW+8bUl3+HpDJI+n689SxXgTgU7k1qdxo/WugRLxechxbolAfHM5uA==", + "secondarySharedKey": "7tDt5W0JBrCQKtQA3igfFltLSzJeyr9LmuT+B/ibzd8cdC1neZ1ePOQLBx5NUzc0q2VUIK0cLhWNyFvo/hT8Ww==" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesListByResourceGroup.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesListByResourceGroup.json new file mode 100644 index 000000000000..d224636c8266 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesListByResourceGroup.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "resourceGroupName": "oiautorest6685", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": [ + { + "properties": { + "customerId": "bc089d7b-485c-4aff-a71e-c00f362d8d2f", + "provisioningState": "Succeeded", + "sku": { + "name": "PerGB2018" + }, + "retentionInDays": 30, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/oiautorest6685/providers/microsoft.operationalinsights/workspaces/aztest2170", + "name": "AzTest2170", + "type": "Microsoft.OperationalInsights/workspaces", + "location": "australiasoutheast", + "tags": { + "tag1": "val1" + } + } + ] + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesListIntelligencePacks.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesListIntelligencePacks.json new file mode 100644 index 000000000000..a2feef38f3fd --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesListIntelligencePacks.json @@ -0,0 +1,244 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "workspaceName": "TestLinkWS", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": [ + { + "name": "CapacityPerformance", + "enabled": false, + "displayName": "Capacity and Performance" + }, + { + "name": "AzureWebAppsAnalytics", + "enabled": false, + "displayName": "Azure Web Apps Analytics (Preview)" + }, + { + "name": "Security", + "enabled": false, + "displayName": "Security and Audit" + }, + { + "name": "Updates", + "enabled": false, + "displayName": "Update Management" + }, + { + "name": "AntiMalware", + "enabled": false, + "displayName": "Antimalware Assessment" + }, + { + "name": "LogManagement", + "enabled": true, + "displayName": "Log Management" + }, + { + "name": "ChangeTracking", + "enabled": true, + "displayName": "Change Tracking" + }, + { + "name": "SQLAssessment", + "enabled": false, + "displayName": "SQL Assessment" + }, + { + "name": "SCOMAssessment", + "enabled": false, + "displayName": "System Center Operations Manager Assessment (Preview)" + }, + { + "name": "ServiceDesk", + "enabled": false, + "displayName": "IT Service Management Connector(Preview)" + }, + { + "name": "ADAssessment", + "enabled": false, + "displayName": "AD Assessment" + }, + { + "name": "AlertManagement", + "enabled": false, + "displayName": "Alert Management" + }, + { + "name": "AzureAutomation", + "enabled": false, + "displayName": "Azure Automation" + }, + { + "name": "WireData", + "enabled": false, + "displayName": "Wire Data" + }, + { + "name": "SiteRecovery", + "enabled": true, + "displayName": "Azure Site Recovery" + }, + { + "name": "Backup", + "enabled": false, + "displayName": "Backup" + }, + { + "name": "SurfaceHub", + "enabled": false, + "displayName": "Surface Hub" + }, + { + "name": "NetworkMonitoring", + "enabled": false, + "displayName": "Network Performance Monitor" + }, + { + "name": "Containers", + "enabled": false, + "displayName": "Container Monitoring Solution" + }, + { + "name": "ServiceMap", + "enabled": false, + "displayName": "Service Map" + }, + { + "name": "AzureNetworking", + "enabled": false, + "displayName": "Azure Networking Analytics (Deprecated)" + }, + { + "name": "ADReplication", + "enabled": false, + "displayName": "AD Replication Status" + }, + { + "name": "Office365", + "enabled": false, + "displayName": "Office 365 (Preview)" + }, + { + "name": "CompatibilityAssessment", + "enabled": false, + "displayName": "Upgrade Readiness" + }, + { + "name": "KeyVault", + "enabled": false, + "displayName": "Key Vault (Deprecated)" + }, + { + "name": "ServiceFabric", + "enabled": false, + "displayName": "Service Fabric" + }, + { + "name": "DnsAnalytics", + "enabled": false, + "displayName": "DNS Analytics (Preview)" + }, + { + "name": "ApplicationInsights", + "enabled": false, + "displayName": "Application Insights (Preview)" + }, + { + "name": "WireData2", + "enabled": false, + "displayName": "Wire Data 2.0" + }, + { + "name": "WaaSUpdateInsights", + "enabled": false, + "displayName": "Update Compliance (Preview)" + }, + { + "name": "AgentHealthAssessment", + "enabled": false, + "displayName": "Agent Health " + }, + { + "name": "AzureActivity", + "enabled": false, + "displayName": "Activity Log Analytics" + }, + { + "name": "HDInsight", + "enabled": false, + "displayName": "HDInsight HBase Monitoring (Preview)" + }, + { + "name": "HDInsightKafka", + "enabled": false, + "displayName": "HDInsight Kafka Monitoring" + }, + { + "name": "HDInsightSpark", + "enabled": false, + "displayName": "HDInsight Spark Monitoring" + }, + { + "name": "VMware", + "enabled": false, + "displayName": "VMware (Preview)" + }, + { + "name": "SecurityCenterFree", + "enabled": false, + "displayName": "Security Center Free � for Azure Resources only" + }, + { + "name": "LogicAppsManagement", + "enabled": false, + "displayName": "Logic Apps Management" + }, + { + "name": "LogicAppB2B", + "enabled": false, + "displayName": "Logic Apps B2B" + }, + { + "name": "AzureSQLAnalytics", + "enabled": false, + "displayName": "Azure SQL Analytics (Preview)" + }, + { + "name": "KeyVaultAnalytics", + "enabled": false, + "displayName": "Key Vault Analytics" + }, + { + "name": "AzureNSGAnalytics", + "enabled": false, + "displayName": "Azure Network Security Group Analytics" + }, + { + "name": "AzureAppGatewayAnalytics", + "enabled": false, + "displayName": "Azure Application Gateway Analytics" + }, + { + "name": "DeviceHealthProd", + "enabled": false, + "displayName": "Device Health (Preview)" + }, + { + "name": "WindowsDefenderATP", + "enabled": false, + "displayName": "Windows Defender ATP" + }, + { + "name": "ProcessInvestigator", + "enabled": false, + "displayName": "ProcessInvestigator" + } + ] + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesListManagementGroups.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesListManagementGroups.json new file mode 100644 index 000000000000..72136d3e8d1f --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesListManagementGroups.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "workspaceName": "TestLinkWS", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "value": [] + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesListUsages.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesListUsages.json new file mode 100644 index 000000000000..a23fc4b3ca29 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesListUsages.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "workspaceName": "TestLinkWS", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": { + "value": "DataAnalyzed", + "localizedValue": "Data Analyzed" + }, + "unit": "Bytes", + "currentValue": 0.0, + "limit": 524288000.0, + "nextResetTime": "2017-10-03T00:00:00Z", + "quotaPeriod": "P1D" + } + ] + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesPurge.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesPurge.json new file mode 100644 index 000000000000..7d4db15ababf --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesPurge.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "resourceGroupName": "OIAutoRest5123", + "workspaceName": "aztest5048", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000", + "body": { + "table": "Heartbeat", + "filters": [ + { + "column": "TimeGenerated", + "operator": ">", + "value": "2017-09-01T00:00:00" + } + ] + } + }, + "responses": { + "202": { + "headers": { + "x-ms-status-location": "https://management.azure.com/subscriptions/b96161de-b34a-480f-7343-59b099299283/resourceGroups/example/providers/microsoft.operationalinsights/workspaces/test/operations/purge-970318e7-b859-4edb-8903-83b1b54d0b74?api-version=2020-03-01-preview" + }, + "body": { + "operationId": "7d7cf277-9113-4ab3-8359-d0364b74d01d" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesPurgeOperation.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesPurgeOperation.json new file mode 100644 index 000000000000..61d0d9824fc4 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesPurgeOperation.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "resourceGroupName": "OIAutoRest5123", + "workspaceName": "aztest5048", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000", + "purgeId": "purge-970318e7-b859-4edb-8903-83b1b54d0b74" + }, + "responses": { + "200": { + "body": { + "status": "completed" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesRegenerateSharedKeys.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesRegenerateSharedKeys.json new file mode 100644 index 000000000000..f3fab89f1d85 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesRegenerateSharedKeys.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "workspaceName": "workspace1", + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "primarySharedKey": "BozLY1JnZbxu0jWUQSY8iRPEM8ObmpP8rW+8bUl3+HpDJI+n689SxXgTgU7k1qdxo/WugRLxechxbolAfHM5uA==", + "secondarySharedKey": "7tDt5W0JBrCQKtQA3igfFltLSzJeyr9LmuT+B/ibzd8cdC1neZ1ePOQLBx5NUzc0q2VUIK0cLhWNyFvo/hT8Ww==" + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesSavedSearchesCreateOrUpdate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesSavedSearchesCreateOrUpdate.json new file mode 100644 index 000000000000..d9f102616395 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesSavedSearchesCreateOrUpdate.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "resourceGroupName": "TestRG", + "workspaceName": "TestWS", + "savedSearchName": "SavedSearchName", + "parameters": { + "properties": { + "category": "Saved Search Test Category", + "displayName": "Create or Update Saved Search Test", + "query": "Heartbeat | summarize Count() by Computer", + "version": 2, + "tags": [ + { + "name": "Group", + "value": "Computer" + } + ] + } + }, + "api-version": "2020-03-01-preview", + "savedSearchId": "00000000-0000-0000-0000-00000000000", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/workspaces/AtlantisDemo/savedSearches/test-new-saved-search-id-2015", + "eTag": "W/\"datetime'2017-10-02T23%3A15%3A41.0709875Z'\"", + "properties": { + "category": "Saved Search Test Category", + "displayName": "Create or Update Saved Search Test", + "query": "Heartbeat | summarize Count() by Computer", + "version": 2 + } + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesSavedSearchesGet.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesSavedSearchesGet.json new file mode 100644 index 000000000000..2f612b2b05e1 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesSavedSearchesGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "resourceGroupName": "TestRG", + "workspaceName": "TestWS", + "savedSearchName": "SavedSearchName", + "api-version": "2020-03-01-preview", + "savedSearchId": "00000000-0000-0000-0000-00000000000", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-0000-0000-0000-000000000005/resourceGroups/mms-eus/providers/Microsoft.OperationalInsights/workspaces/AtlantisDemo/savedSearches/test-new-saved-search-id-2015", + "eTag": "W/\"datetime'2017-10-02T23%3A15%3A41.0709875Z'\"", + "properties": { + "category": " Saved Search Test Category", + "displayName": "Create or Update Saved Search Test", + "query": "* | measure Count() by Computer", + "version": 1 + } + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesSubscriptionList.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesSubscriptionList.json new file mode 100644 index 000000000000..0c20f9322a97 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesSubscriptionList.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": [ + { + "properties": { + "customerId": "bc089d7b-485c-4aff-a71e-c00f362d8d2f", + "provisioningState": "Succeeded", + "sku": { + "name": "PerGB2018" + }, + "retentionInDays": 30, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + }, + "id": "/subscriptions/00000000-0000-0000-0000-000000000005/resourcegroups/oiautorest6685/providers/microsoft.operationalinsights/workspaces/aztest2170", + "name": "AzTest2170", + "type": "Microsoft.OperationalInsights/workspaces", + "location": "australiasoutheast", + "tags": { + "tag1": "val1" + } + } + ] + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesUpdate.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesUpdate.json new file mode 100644 index 000000000000..215199c746ab --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/preview/2020-03-01-preview/examples/WorkspacesUpdate.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "resourceGroupName": "oiautorest6685", + "workspaceName": "oiautorest6685", + "parameters": { + "properties": { + "sku": { + "name": "PerGB2018" + }, + "retentionInDays": 30 + } + }, + "api-version": "2020-03-01-preview", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": { + "properties": { + "sku": { + "name": "PerGB2018" + }, + "retentionInDays": 30, + "publicNetworkAccessForQuery": "Enabled", + "publicNetworkAccessForIngestion": "Enabled" + }, + "location": "australiasoutheast", + "tags": { + "tag1": "val1" + } + } + } + } +} diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2015-03-20/OperationalInsights.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2015-03-20/OperationalInsights.json index eb7579920be1..5cbb27464d08 100644 --- a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2015-03-20/OperationalInsights.json +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2015-03-20/OperationalInsights.json @@ -641,6 +641,45 @@ } } }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/availableServiceTiers": { + "get": { + "tags": [ + "AvailableServiceTiers" + ], + "x-ms-examples": { + "AvailableServiceTiers": { + "$ref": "./examples/WorkspacesAvailableServiceTiers.json" + } + }, + "operationId": "Workspaces_AvailableServiceTiers", + "description": "Gets the available service tiers for the workspace.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/WorkspaceNameParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK response definition.", + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailableServiceTier" + } + } + } + } + } + }, "/providers/Microsoft.OperationalInsights/operations": { "get": { "tags": [ @@ -1285,6 +1324,64 @@ } }, "description": "The shared keys for a workspace." + }, + "AvailableServiceTier": { + "description": "Service Tier details.", + "properties": { + "ServiceTier": { + "readOnly": true, + "type": "string", + "description": "The name of the Service Tier.", + "enum": [ + "Free", + "Standard", + "Premium", + "PerNode", + "PerGB2018", + "Standalone", + "CapacityReservation" + ], + "x-ms-enum": { + "name": "SkuNameEnum", + "modelAsString": true + } + }, + "Enabled": { + "readOnly": true, + "type": "boolean", + "description": "True if the Service Tier is enabled for the workspace." + }, + "MinimumRetention": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The minimum retention for the Service Tier, in days." + }, + "MaximumRetention": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The maximum retention for the Service Tier, in days." + }, + "DefaultRetention": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The default retention for the Service Tier, in days." + }, + "CapacityReservationLevel": { + "readOnly": true, + "type": "integer", + "format": "int64", + "description": "The capacity reservation level in GB per day. Returned for the Capacity Reservation Service Tier." + }, + "LastSkuUpdate": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Time when the sku was last updated for the workspace. Returned for the Capacity Reservation Service Tier." + } + } } }, "parameters": { diff --git a/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2015-03-20/examples/WorkspacesAvailableServiceTiers.json b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2015-03-20/examples/WorkspacesAvailableServiceTiers.json new file mode 100644 index 000000000000..435cf4bb7c47 --- /dev/null +++ b/specification/operationalinsights/resource-manager/Microsoft.OperationalInsights/stable/2015-03-20/examples/WorkspacesAvailableServiceTiers.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "workspaceName": "workspace1", + "api-version": "2015-03-20", + "subscriptionId": "00000000-0000-0000-0000-00000000000" + }, + "responses": { + "200": { + "body": [ + { + "ServiceTier": "PerNode", + "Enabled": true, + "MinimumRetention": 7, + "MaximumRetention": 30, + "DefaultRetention": 7 + }, + { + "ServiceTier": "CapacityReservation", + "Enabled": true, + "MinimumRetention": 30, + "MaximumRetention": 300, + "DefaultRetention": 30, + "CapacityReservationLevel": 200, + "LastSkuUpdate": "2020-02-04T08:55:03.871Z" + } + ] + } + } +} diff --git a/specification/operationalinsights/resource-manager/common/v1/types.json b/specification/operationalinsights/resource-manager/common/v1/types.json new file mode 100644 index 000000000000..5a41f183db8f --- /dev/null +++ b/specification/operationalinsights/resource-manager/common/v1/types.json @@ -0,0 +1,22 @@ +{ + "swagger": "2.0", + "info": { + "version": "1.0", + "title": "Common types for Microsoft.OperationalInsights" + }, + "paths": {}, + "definitions": {}, + "parameters": { + "WorkspaceNameParameter": { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[A-Za-z0-9][A-Za-z0-9-]+[A-Za-z0-9]$", + "minLength": 4, + "maxLength": 63, + "description": "The name of the workspace.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/operationalinsights/resource-manager/readme.md b/specification/operationalinsights/resource-manager/readme.md index 23495b016d9f..d9f8d02dfb80 100644 --- a/specification/operationalinsights/resource-manager/readme.md +++ b/specification/operationalinsights/resource-manager/readme.md @@ -28,7 +28,7 @@ These are the global settings for the OperationalInsights API. title: OperationalInsightsManagementClient description: Operational Insights Client openapi-type: arm -tag: package-2015-11-preview +tag: package-2020-03-preview ``` @@ -38,6 +38,7 @@ These settings apply only when `--tag=package-2015-11-preview` is specified on t ``` yaml $(tag) == 'package-2015-11-preview' input-file: +- Microsoft.OperationalInsights/preview/2015-11-01-preview/LinkedServices.json - Microsoft.OperationalInsights/preview/2015-11-01-preview/OperationalInsights.json ``` @@ -57,6 +58,35 @@ These settings apply only when `--tag=package-2019-08-preview` is specified on t ``` yaml $(tag) == 'package-2019-08-preview' input-file: - Microsoft.OperationalInsights/preview/2019-08-01-preview/Clusters.json +- Microsoft.OperationalInsights/preview/2019-08-01-preview/LinkedServices.json +- Microsoft.OperationalInsights/preview/2019-08-01-preview/OperationalInsights.json +``` + +### Tag: package-2020-03-preview + +These settings apply only when `--tag=package-2020-03-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2020-03-preview' +input-file: +- Microsoft.OperationalInsights/preview/2020-03-01-preview/DataExports.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/DataSources.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/IntelligencePacks.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/LinkedServices.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/LinkedStorageAccounts.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/ManagementGroups.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/Operations.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/OperationStatuses.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/SharedKeys.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/Usages.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/Workspaces.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/Clusters.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/StorageInsightConfigs.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/SavedSearches.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/AvailableServiceTiers.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/Gateways.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/Schema.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/SharedKeys.json +- Microsoft.OperationalInsights/preview/2020-03-01-preview/WorkspacePurge.json ``` --- @@ -156,9 +186,30 @@ 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/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 ``` diff --git a/specification/operationsmanagement/resource-manager/readme.md b/specification/operationsmanagement/resource-manager/readme.md index d1a169e51df4..3ef18ce43b78 100644 --- a/specification/operationsmanagement/resource-manager/readme.md +++ b/specification/operationsmanagement/resource-manager/readme.md @@ -57,6 +57,7 @@ swagger-to-sdk: - repo: azure-sdk-for-go - repo: azure-sdk-for-js - repo: azure-sdk-for-node + - repo: azure-sdk-for-python ``` @@ -80,6 +81,10 @@ csharp: See configuration in [readme.go.md](./readme.go.md) +## Python + +See configuration in [readme.python.md](./readme.python.md) + ## Java These settings apply only when `--java` is specified on the command line. diff --git a/specification/operationsmanagement/resource-manager/readme.python.md b/specification/operationsmanagement/resource-manager/readme.python.md new file mode 100644 index 000000000000..e476395419dc --- /dev/null +++ b/specification/operationsmanagement/resource-manager/readme.python.md @@ -0,0 +1,27 @@ +## 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 $(python) +python-mode: create +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: azure.mgmt.operationsmanagement + package-name: azure-mgmt-operationsmanagement + package-version: 0.1.0 + clear-output-folder: true +``` +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/operationsmanagement/azure-mgmt-operationsmanagement/azure/mgmt/operationsmanagement +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/operationsmanagement/azure-mgmt-operationsmanagement +``` diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-09-01-preview/peering.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-09-01-preview/peering.json index 1a59248b71e2..8fed12ee7d5c 100644 --- a/specification/peering/resource-manager/Microsoft.Peering/preview/2019-09-01-preview/peering.json +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2019-09-01-preview/peering.json @@ -714,7 +714,7 @@ "tags": [ "PeeringServiceLocations" ], - "description": "Lists all of the available peering service locations for the specified kind of peering.", + "description": "Lists all of the available locations for peering service.", "operationId": "PeeringServiceLocations_List", "parameters": [ { @@ -1433,8 +1433,8 @@ "enum": [ "Basic_Exchange_Free", "Basic_Direct_Free", - "Premium_Direct_Free", "Premium_Exchange_Metered", + "Premium_Direct_Free", "Premium_Direct_Metered", "Premium_Direct_Unlimited" ], @@ -2160,7 +2160,7 @@ } }, "PeeringServiceLocation": { - "description": "PeeringService location", + "description": "The peering service location.", "type": "object", "allOf": [ { diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CheckServiceProviderAvailability.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CheckServiceProviderAvailability.json new file mode 100644 index 000000000000..e4540d1dc368 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CheckServiceProviderAvailability.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "subId", + "api-version": "2020-01-01-preview", + "checkServiceProviderAvailabilityInput": { + "peeringServiceLocation": "peeringServiceLocation1", + "peeringServiceProvider": "peeringServiceProvider1" + } + }, + "responses": { + "200": { + "body": "Available" + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreateDirectPeering.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreateDirectPeering.json new file mode 100644 index 000000000000..cc4c84a1ec12 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreateDirectPeering.json @@ -0,0 +1,169 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2020-01-01-preview", + "peering": { + "sku": { + "name": "Basic_Direct_Free" + }, + "kind": "Direct", + "properties": { + "direct": { + "connections": [ + { + "bandwidthInMbps": 10000, + "sessionAddressProvider": "Peer", + "useForPeeringService": false, + "peeringDBFacilityId": 99999, + "bgpSession": { + "sessionPrefixV4": "192.168.0.0/31", + "sessionPrefixV6": "fd00::0/127", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "5F4CB5C7-6B43-4444-9338-9ABC72606C16" + }, + { + "bandwidthInMbps": 10000, + "sessionAddressProvider": "Microsoft", + "useForPeeringService": true, + "peeringDBFacilityId": 99999, + "connectionIdentifier": "8AB00818-D533-4504-A25A-03A17F61201C" + } + ], + "peerAsn": { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/myAsn1" + }, + "directPeeringType": "Edge" + }, + "peeringLocation": "peeringLocation0" + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Basic_Direct_Free", + "tier": "Basic", + "family": "Direct", + "size": "Free" + }, + "kind": "Direct", + "properties": { + "direct": { + "connections": [ + { + "bandwidthInMbps": 10000, + "provisionedBandwidthInMbps": 10000, + "sessionAddressProvider": "Peer", + "useForPeeringService": false, + "peeringDBFacilityId": 99999, + "connectionState": "ProvisioningFailed", + "bgpSession": { + "sessionPrefixV4": "192.168.0.0/31", + "sessionPrefixV6": "fd00::0/127", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "5F4CB5C7-6B43-4444-9338-9ABC72606C16", + "errorMessage": "IPv4 address is already configured with a different ASN" + }, + { + "bandwidthInMbps": 10000, + "provisionedBandwidthInMbps": 10000, + "sessionAddressProvider": "Microsoft", + "useForPeeringService": true, + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "sessionPrefixV4": "192.168.1.0/31", + "sessionPrefixV6": "fd00::2/127", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "8AB00818-D533-4504-A25A-03A17F61201C" + } + ], + "useForPeeringService": true, + "peerAsn": { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/myAsn1" + }, + "directPeeringType": "Edge" + }, + "peeringLocation": "peeringLocation0", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering", + "type": "Microsoft.Peering/peerings" + } + }, + "201": { + "body": { + "sku": { + "name": "Basic_Direct_Free", + "tier": "Basic", + "family": "Direct", + "size": "Free" + }, + "kind": "Direct", + "properties": { + "direct": { + "connections": [ + { + "bandwidthInMbps": 10000, + "provisionedBandwidthInMbps": 0, + "sessionAddressProvider": "Peer", + "useForPeeringService": false, + "peeringDBFacilityId": 99999, + "connectionState": "PendingApproval", + "bgpSession": { + "sessionPrefixV4": "192.168.0.0/31", + "sessionPrefixV6": "fd00::0/127", + "sessionStateV4": "PendingAdd", + "sessionStateV6": "PendingAdd", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "5F4CB5C7-6B43-4444-9338-9ABC72606C16" + }, + { + "bandwidthInMbps": 10000, + "provisionedBandwidthInMbps": 0, + "sessionAddressProvider": "Microsoft", + "useForPeeringService": true, + "peeringDBFacilityId": 99999, + "connectionState": "PendingApproval", + "connectionIdentifier": "8AB00818-D533-4504-A25A-03A17F61201C" + } + ], + "useForPeeringService": true, + "peerAsn": { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/myAsn1" + }, + "directPeeringType": "Edge" + }, + "peeringLocation": "peeringLocation0", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering", + "type": "Microsoft.Peering/peerings" + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreateExchangePeering.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreateExchangePeering.json new file mode 100644 index 000000000000..785faa412c45 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreateExchangePeering.json @@ -0,0 +1,166 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2020-01-01-preview", + "peering": { + "sku": { + "name": "Basic_Exchange_Free" + }, + "kind": "Exchange", + "properties": { + "exchange": { + "connections": [ + { + "peeringDBFacilityId": 99999, + "bgpSession": { + "peerSessionIPv4Address": "192.168.2.1", + "peerSessionIPv6Address": "fd00::1", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CE495334-0E94-4E51-8164-8116D6CD284D" + }, + { + "peeringDBFacilityId": 99999, + "bgpSession": { + "peerSessionIPv4Address": "192.168.2.2", + "peerSessionIPv6Address": "fd00::2", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CDD8E673-CB07-47E6-84DE-3739F778762B" + } + ], + "peerAsn": { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/myAsn1" + } + }, + "peeringLocation": "peeringLocation0" + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Basic_Exchange_Free", + "tier": "Basic", + "family": "Exchange", + "size": "Free" + }, + "kind": "Exchange", + "properties": { + "exchange": { + "connections": [ + { + "peeringDBFacilityId": 99999, + "connectionState": "ProvisioningFailed", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.1", + "microsoftSessionIPv6Address": "fd00::1:1", + "peerSessionIPv4Address": "192.168.2.1", + "peerSessionIPv6Address": "fd00::1", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CE495334-0E94-4E51-8164-8116D6CD284D", + "errorMessage": "IPv4 address is already configured with a different ASN" + }, + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.2", + "microsoftSessionIPv6Address": "fd00::1:2", + "peerSessionIPv4Address": "192.168.2.2", + "peerSessionIPv6Address": "fd00::2", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CDD8E673-CB07-47E6-84DE-3739F778762B" + } + ], + "peerAsn": { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/myAsn1" + } + }, + "peeringLocation": "peeringLocation0", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering", + "type": "Microsoft.Peering/peerings" + } + }, + "201": { + "body": { + "sku": { + "name": "Basic_Exchange_Free", + "tier": "Basic", + "family": "Exchange", + "size": "Free" + }, + "kind": "Exchange", + "properties": { + "exchange": { + "connections": [ + { + "peeringDBFacilityId": 99999, + "connectionState": "PendingApproval", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.1", + "microsoftSessionIPv6Address": "fd00::1:1", + "peerSessionIPv4Address": "192.168.2.1", + "peerSessionIPv6Address": "fd00::1", + "sessionStateV4": "PendingAdd", + "sessionStateV6": "PendingAdd", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CE495334-0E94-4E51-8164-8116D6CD284D" + }, + { + "peeringDBFacilityId": 99999, + "connectionState": "PendingApproval", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.2", + "microsoftSessionIPv6Address": "fd00::1:2", + "peerSessionIPv4Address": "192.168.2.2", + "peerSessionIPv6Address": "fd00::2", + "sessionStateV4": "PendingAdd", + "sessionStateV6": "PendingAdd", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CDD8E673-CB07-47E6-84DE-3739F778762B" + } + ], + "peerAsn": { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/myAsn1" + } + }, + "peeringLocation": "peeringLocation0", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering", + "type": "Microsoft.Peering/peerings" + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreatePeerAsn.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreatePeerAsn.json new file mode 100644 index 000000000000..dc0906ee204d --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreatePeerAsn.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "subscriptionId": "subId", + "peerAsnName": "peerAsnName", + "api-version": "2020-01-01-preview", + "peerAsn": { + "properties": { + "peerAsn": 65000, + "peerContactDetail": [ + { + "role": "Noc", + "email": "noc@contoso.com", + "phone": "+1 (234) 567-8999" + }, + { + "role": "Policy", + "email": "abc@contoso.com", + "phone": "+1 (234) 567-8900" + }, + { + "role": "Technical", + "email": "xyz@contoso.com", + "phone": "+1 (234) 567-8900" + } + ], + "peerName": "Contoso" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "peerAsn": 65000, + "peerContactDetail": [ + { + "role": "Noc", + "email": "noc@contoso.com", + "phone": "+1 (234) 567-8999" + }, + { + "role": "Policy", + "email": "abc@contoso.com", + "phone": "+1 (234) 567-8900" + }, + { + "role": "Technical", + "email": "xyz@contoso.com", + "phone": "+1 (234) 567-8900" + } + ], + "peerName": "Contoso", + "validationState": "Pending" + }, + "name": "peerAsnName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/peerAsnName", + "type": "Microsoft.Peering/peerAsns" + } + }, + "201": { + "body": { + "properties": { + "peerAsn": 65000, + "peerContactDetail": [ + { + "role": "Noc", + "email": "noc@contoso.com", + "phone": "+1 (234) 567-8999" + }, + { + "role": "Policy", + "email": "abc@contoso.com", + "phone": "+1 (234) 567-8900" + }, + { + "role": "Technical", + "email": "xyz@contoso.com", + "phone": "+1 (234) 567-8900" + } + ], + "peerName": "Contoso", + "validationState": "Pending" + }, + "name": "peerAsnName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/peerAsnName", + "type": "Microsoft.Peering/peerAsns" + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreatePeeringService.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreatePeeringService.json new file mode 100644 index 000000000000..f45470323acc --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreatePeeringService.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "myPeeringService": "myPeeringService", + "api-version": "2020-01-01-preview", + "peeringService": { + "properties": { + "peeringServiceLocation": "state1", + "peeringServiceProvider": "serviceProvider1" + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "properties": { + "peeringServiceLocation": "state1", + "peeringServiceProvider": "serviceProvider1", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "myPeeringService", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peeringServices/myPeeringService", + "type": "Microsoft.Peering/peeringServices" + } + }, + "201": { + "body": { + "properties": { + "peeringServiceLocation": "state1", + "peeringServiceProvider": "serviceProvider1", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "myPeeringService", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peeringServices/myPeeringService", + "type": "Microsoft.Peering/peeringServices" + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreatePeeringServicePrefix.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreatePeeringServicePrefix.json new file mode 100644 index 000000000000..da82c884dc22 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreatePeeringServicePrefix.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "myPeeringService": "myPeeringService", + "prefixName": "peeringServicePrefixName", + "api-version": "2020-01-01-preview", + "peeringServicePrefix": { + "properties": { + "prefix": "192.168.1.0/24", + "peeringServicePrefixKey": "00000000-0000-0000-0000-000000000000" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "prefix": "192.168.1.0/24", + "prefixValidationState": "Failed", + "learnedType": "None", + "errorMessage": "Prefix is not announced by the service provider to Microsoft.", + "peeringServicePrefixKey": "00000000-0000-0000-0000-000000000000", + "provisioningState": "Succeeded" + }, + "name": "peeringServicePrefixName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peeringServices/myPeeringService/prefixes/myPeeringServicePrefix" + } + }, + "201": { + "body": { + "properties": { + "prefix": "192.168.1.0/24", + "prefixValidationState": "Failed", + "learnedType": "None", + "errorMessage": "Prefix is not announced by the service provider to Microsoft.", + "peeringServicePrefixKey": "00000000-0000-0000-0000-000000000000", + "provisioningState": "Succeeded" + }, + "name": "peeringServicePrefixName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peeringServices/myPeeringService/prefixes/myPeeringServicePrefix" + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreatePeeringWithExchangeRouteServer.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreatePeeringWithExchangeRouteServer.json new file mode 100644 index 000000000000..df95cd8b7bf4 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreatePeeringWithExchangeRouteServer.json @@ -0,0 +1,134 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2020-01-01-preview", + "peering": { + "sku": { + "name": "Premium_Direct_Free" + }, + "kind": "Direct", + "properties": { + "direct": { + "connections": [ + { + "bandwidthInMbps": 10000, + "sessionAddressProvider": "Peer", + "useForPeeringService": true, + "peeringDBFacilityId": 99999, + "bgpSession": { + "sessionPrefixV4": "192.168.0.0/24", + "microsoftSessionIPv4Address": "192.168.0.123", + "peerSessionIPv4Address": "192.168.0.234", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100 + }, + "connectionIdentifier": "5F4CB5C7-6B43-4444-9338-9ABC72606C16" + } + ], + "peerAsn": { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/myAsn1" + }, + "directPeeringType": "IxRs" + }, + "peeringLocation": "peeringLocation0" + }, + "location": "eastus" + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Premium_Direct_Free", + "tier": "Premium", + "family": "Direct", + "size": "Free" + }, + "kind": "Direct", + "properties": { + "direct": { + "connections": [ + { + "bandwidthInMbps": 10000, + "provisionedBandwidthInMbps": 10000, + "sessionAddressProvider": "Peer", + "useForPeeringService": true, + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "sessionPrefixV4": "192.168.0.0/24", + "microsoftSessionIPv4Address": "192.168.0.123", + "peerSessionIPv4Address": "192.168.0.234", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100 + }, + "connectionIdentifier": "5F4CB5C7-6B43-4444-9338-9ABC72606C16" + } + ], + "useForPeeringService": true, + "peerAsn": { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/myAsn1" + }, + "directPeeringType": "IxRs" + }, + "peeringLocation": "peeringLocation0", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering", + "type": "Microsoft.Peering/peerings" + } + }, + "201": { + "body": { + "sku": { + "name": "Premium_Direct_Free", + "tier": "Premium", + "family": "Direct", + "size": "Free" + }, + "kind": "Direct", + "properties": { + "direct": { + "connections": [ + { + "bandwidthInMbps": 10000, + "provisionedBandwidthInMbps": 0, + "sessionAddressProvider": "Peer", + "useForPeeringService": true, + "peeringDBFacilityId": 99999, + "connectionState": "PendingApproval", + "bgpSession": { + "sessionPrefixV4": "192.168.0.0/24", + "microsoftSessionIPv4Address": "192.168.0.123", + "peerSessionIPv4Address": "192.168.0.234", + "sessionStateV4": "PendingAdd", + "sessionStateV6": "PendingAdd", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100 + }, + "connectionIdentifier": "5F4CB5C7-6B43-4444-9338-9ABC72606C16" + } + ], + "useForPeeringService": true, + "peerAsn": { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/myAsn1" + }, + "directPeeringType": "IxRs" + }, + "peeringLocation": "peeringLocation0", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering", + "type": "Microsoft.Peering/peerings" + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreateRegisteredAsn.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreateRegisteredAsn.json new file mode 100644 index 000000000000..07d7f4ce0c5c --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreateRegisteredAsn.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2020-01-01-preview", + "registeredAsn": { + "properties": { + "asn": 65000 + } + }, + "registeredAsnName": "registeredAsnName" + }, + "responses": { + "200": { + "body": { + "properties": { + "asn": 65000, + "peeringServicePrefixKey": "00000000-0000-0000-0000-000000000000", + "provisioningState": "Succeeded" + }, + "name": "registeredAsnName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering/registeredAsns/registeredAsnName", + "type": "Microsoft.Peering/registeredAsns" + } + }, + "201": { + "body": { + "properties": { + "asn": 65000, + "peeringServicePrefixKey": "00000000-0000-0000-0000-000000000000", + "provisioningState": "Succeeded" + }, + "name": "registeredAsnName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering/registeredAsns/registeredAsnName", + "type": "Microsoft.Peering/registeredAsns" + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreateRegisteredPrefix.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreateRegisteredPrefix.json new file mode 100644 index 000000000000..c3323405d391 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/CreateRegisteredPrefix.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2020-01-01-preview", + "registeredPrefix": { + "properties": { + "prefix": "10.22.20.0/24" + } + }, + "registeredPrefixName": "registeredPrefixName" + }, + "responses": { + "200": { + "body": { + "properties": { + "prefix": "10.22.20.0/24", + "peeringServicePrefixKey": "00000000-0000-0000-0000-000000000000", + "provisioningState": "Succeeded" + }, + "name": "registeredPrefixName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering/registeredPrefixes/myRegisteredPrefix", + "type": "Microsoft.Peering/registeredPrefixes" + } + }, + "201": { + "body": { + "properties": { + "prefix": "10.22.20.0/24", + "peeringServicePrefixKey": "00000000-0000-0000-0000-000000000000", + "provisioningState": "Succeeded" + }, + "name": "registeredPrefixName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering/registeredPrefixes/myRegisteredPrefix", + "type": "Microsoft.Peering/registeredPrefixes" + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/DeletePeerAsn.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/DeletePeerAsn.json new file mode 100644 index 000000000000..be68ae2aad59 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/DeletePeerAsn.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "subId", + "peerAsnName": "peerAsnName", + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/DeletePeering.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/DeletePeering.json new file mode 100644 index 000000000000..813379781800 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/DeletePeering.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/DeletePeeringService.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/DeletePeeringService.json new file mode 100644 index 000000000000..020b49020ff8 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/DeletePeeringService.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "myPeeringService": "myPeeringService", + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/DeletePeeringServicePrefix.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/DeletePeeringServicePrefix.json new file mode 100644 index 000000000000..0df5436d9e30 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/DeletePeeringServicePrefix.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "myPeeringService": "myPeeringService", + "prefixName": "peeringServicePrefixName", + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/DeleteRegisteredAsn.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/DeleteRegisteredAsn.json new file mode 100644 index 000000000000..b2f7982bfffd --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/DeleteRegisteredAsn.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2020-01-01-preview", + "registeredAsnName": "registeredAsnName" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/DeleteRegisteredPrefix.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/DeleteRegisteredPrefix.json new file mode 100644 index 000000000000..3c13806010c1 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/DeleteRegisteredPrefix.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2020-01-01-preview", + "registeredPrefixName": "registeredPrefixName" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetPeerAsn.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetPeerAsn.json new file mode 100644 index 000000000000..1aa9e5dd6022 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetPeerAsn.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "subId", + "peerAsnName": "peerAsnName", + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "peerAsn": 65000, + "peerContactDetail": [ + { + "role": "Noc", + "email": "noc@contoso.com", + "phone": "+1 (234) 567-8999" + }, + { + "role": "Policy", + "email": "abc@contoso.com", + "phone": "+1 (234) 567-8900" + }, + { + "role": "Technical", + "email": "xyz@contoso.com", + "phone": "+1 (234) 567-8900" + } + ], + "peerName": "Contoso", + "validationState": "Approved" + }, + "name": "peerAsnName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/peerAsnName", + "type": "Microsoft.Peering/peerAsns" + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetPeering.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetPeering.json new file mode 100644 index 000000000000..f580915c073b --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetPeering.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Basic_Exchange_Free", + "tier": "Basic", + "family": "Exchange", + "size": "Free" + }, + "kind": "Exchange", + "properties": { + "exchange": { + "connections": [ + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.1", + "microsoftSessionIPv6Address": "fd00::1:1", + "peerSessionIPv4Address": "192.168.2.1", + "peerSessionIPv6Address": "fd00::1", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CE495334-0E94-4E51-8164-8116D6CD284D" + }, + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.2", + "microsoftSessionIPv6Address": "fd00::1:2", + "peerSessionIPv4Address": "192.168.2.2", + "peerSessionIPv6Address": "fd00::2", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CDD8E673-CB07-47E6-84DE-3739F778762B" + } + ], + "peerAsn": { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/myAsn1" + } + }, + "peeringLocation": "peeringLocation0", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering", + "type": "Microsoft.Peering/peerings" + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetPeeringService.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetPeeringService.json new file mode 100644 index 000000000000..6f7d54f27d57 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetPeeringService.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "myPeeringService": "myPeeringService", + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "peeringServiceLocation": "state1", + "peeringServiceProvider": "serviceProvider1", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "myPeeringService", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peeringServices/myPeeringService", + "type": "Microsoft.Peering/peeringServices" + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetPeeringServicePrefix.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetPeeringServicePrefix.json new file mode 100644 index 000000000000..e043119b8ee0 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetPeeringServicePrefix.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "myPeeringService": "myPeeringService", + "prefixName": "peeringServicePrefixName", + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "prefix": "192.168.1.0/24", + "prefixValidationState": "Verified", + "learnedType": "ViaServiceProvider", + "peeringServicePrefixKey": "00000000-0000-0000-0000-000000000000", + "provisioningState": "Succeeded" + }, + "name": "peeringServicePrefixName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peeringServices/myPeeringService/prefixes/myPeeringServicePrefix" + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetRegisteredAsn.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetRegisteredAsn.json new file mode 100644 index 000000000000..a5e9fd0cfdb7 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetRegisteredAsn.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2020-01-01-preview", + "registeredAsnName": "registeredAsnName0" + }, + "responses": { + "200": { + "body": { + "properties": { + "asn": 65000, + "peeringServicePrefixKey": "00000000-0000-0000-0000-000000000000", + "provisioningState": "Succeeded" + }, + "name": "registeredAsnName0", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering/registeredAsns/registeredAsnName0", + "type": "Microsoft.Peering/registeredAsns" + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetRegisteredPrefix.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetRegisteredPrefix.json new file mode 100644 index 000000000000..023ee3381f17 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/GetRegisteredPrefix.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2020-01-01-preview", + "registeredPrefixName": "registeredPrefixName" + }, + "responses": { + "200": { + "body": { + "properties": { + "prefix": "10.22.20.0/24", + "peeringServicePrefixKey": "00000000-0000-0000-0000-000000000000", + "provisioningState": "Succeeded" + }, + "name": "registeredPrefixName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering/registeredPrefixes/myRegisteredPrefix", + "type": "Microsoft.Peering/registeredPrefixes" + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListDirectPeeringLocations.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListDirectPeeringLocations.json new file mode 100644 index 000000000000..53705788ea44 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListDirectPeeringLocations.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "subscriptionId": "subId", + "kind": "Direct", + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "kind": "Direct", + "properties": { + "direct": { + "peeringFacilities": [ + { + "address": "address1", + "directPeeringType": "Edge", + "peeringDBFacilityId": 99999, + "peeringDBFacilityLink": "https://www.peeringdb.com/fac/99999" + }, + { + "address": "address3", + "directPeeringType": "Cdn", + "peeringDBFacilityId": 99999, + "peeringDBFacilityLink": "https://www.peeringdb.com/fac/99999" + } + ], + "bandwidthOffers": [ + { + "offerName": "10Gbps", + "valueInMbps": 10000 + }, + { + "offerName": "100Gbps", + "valueInMbps": 100000 + } + ] + }, + "peeringLocation": "peeringLocation1", + "country": "country1" + }, + "name": "peeringLocation1", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peeringLocations/peeringLocation1", + "type": "Microsoft.Peering/peeringLocations" + }, + { + "kind": "Direct", + "properties": { + "direct": { + "peeringFacilities": [ + { + "address": "address2", + "directPeeringType": "Edge", + "peeringDBFacilityId": 99999, + "peeringDBFacilityLink": "https://www.peeringdb.com/fac/99999" + } + ], + "bandwidthOffers": [ + { + "offerName": "10Gbps", + "valueInMbps": 10000 + }, + { + "offerName": "100Gbps", + "valueInMbps": 100000 + } + ] + }, + "peeringLocation": "peeringLocation2", + "country": "country2" + }, + "name": "peeringLocation2", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peeringLocations/peeringLocation2", + "type": "Microsoft.Peering/peeringLocations" + } + ] + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListExchangePeeringLocations.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListExchangePeeringLocations.json new file mode 100644 index 000000000000..fb05f1fbe3d5 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListExchangePeeringLocations.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "subscriptionId": "subId", + "kind": "Exchange", + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "kind": "Exchange", + "properties": { + "exchange": { + "peeringFacilities": [ + { + "exchangeName": "name1", + "bandwidthInMbps": 10000, + "microsoftIPv4Address": "192.168.131.1", + "microsoftIPv6Address": "fd00::1:1", + "facilityIPv4Prefix": "192.168.128.0/17", + "facilityIPv6Prefix": "fd00::1000:0/98", + "peeringDBFacilityId": 99999, + "peeringDBFacilityLink": "https://www.peeringdb.com/ix/99999" + }, + { + "exchangeName": "name3", + "bandwidthInMbps": 10000, + "microsoftIPv4Address": "192.168.2.2", + "microsoftIPv6Address": "fd00::2", + "facilityIPv4Prefix": "192.168.0.0/17", + "facilityIPv6Prefix": "fd00::0/98", + "peeringDBFacilityId": 99999, + "peeringDBFacilityLink": "https://www.peeringdb.com/ix/99999" + } + ] + }, + "peeringLocation": "peeringLocation1", + "country": "country1" + }, + "name": "peeringLocation1", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peeringLocations/peeringLocation1", + "type": "Microsoft.Peering/peeringLocations" + }, + { + "kind": "Exchange", + "properties": { + "exchange": { + "peeringFacilities": [ + { + "exchangeName": "name2", + "bandwidthInMbps": 10000, + "microsoftIPv4Address": "192.168.2.1", + "microsoftIPv6Address": "fd00::2", + "facilityIPv4Prefix": "192.168.0.0/16", + "facilityIPv6Prefix": "fd00::0/98", + "peeringDBFacilityId": 99999, + "peeringDBFacilityLink": "https://www.peeringdb.com/ix/99999" + } + ] + }, + "peeringLocation": "peeringLocation2", + "country": "country2" + }, + "name": "peeringLocation2", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peeringLocations/peeringLocation2", + "type": "Microsoft.Peering/peeringLocations" + } + ] + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListLegacyPeerings.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListLegacyPeerings.json new file mode 100644 index 000000000000..c925a3b6fa21 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListLegacyPeerings.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "subscriptionId": "subId", + "kind": "Exchange", + "peeringLocation": "peeringLocation0", + "api-version": "2020-01-01-preview", + "asn": 65000 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sku": { + "name": "Basic_Exchange_Free", + "tier": "Basic", + "family": "Exchange", + "size": "Free" + }, + "kind": "Exchange", + "properties": { + "exchange": { + "connections": [ + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.1", + "microsoftSessionIPv6Address": "fd00::1:1", + "peerSessionIPv4Address": "192.168.2.1", + "peerSessionIPv6Address": "fd00::1", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CE495334-0E94-4E51-8164-8116D6CD284D" + }, + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.2", + "microsoftSessionIPv6Address": "fd00::1:2", + "peerSessionIPv4Address": "192.168.2.2", + "peerSessionIPv6Address": "fd00::2", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CDD8E673-CB07-47E6-84DE-3739F778762B" + } + ], + "peerAsn": { + "id": "65000" + } + }, + "peeringLocation": "peeringLocation0", + "provisioningState": "Succeeded" + }, + "location": "centralus", + "name": "peeringName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerings/myPeering", + "type": "Microsoft.Peering/peerings" + } + ] + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeerAsnsBySubscription.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeerAsnsBySubscription.json new file mode 100644 index 000000000000..2d1c7615c6bd --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeerAsnsBySubscription.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "subId", + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "peerAsn": 65000, + "peerContactDetail": [ + { + "role": "Noc", + "email": "noc@contoso.com", + "phone": "+1 (234) 567-8999" + }, + { + "role": "Policy", + "email": "abc@contoso.com", + "phone": "+1 (234) 567-8900" + }, + { + "role": "Technical", + "email": "xyz@contoso.com", + "phone": "+1 (234) 567-8900" + } + ], + "peerName": "Contoso", + "validationState": "Approved" + }, + "name": "peerAsnName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/peerAsnName", + "type": "Microsoft.Peering/peerAsns" + } + ] + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringOperations.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringOperations.json new file mode 100644 index 000000000000..636b1b038de2 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringOperations.json @@ -0,0 +1,183 @@ +{ + "parameters": { + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Peering/register/action", + "display": { + "provider": "Microsoft.Peering", + "resource": "Peering Resource Provider", + "operation": "Registers the Peering Resource Provider", + "description": "Registers the subscription for the Peering Resource Provider and enables the creation of peerings" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peerAsns/write", + "display": { + "provider": "Microsoft.Peering", + "resource": "peerAsns", + "operation": "Write PeerAsn", + "description": "Write any peerAsns" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peerAsns/read", + "display": { + "provider": "Microsoft.Peering", + "resource": "peerAsns", + "operation": "Read PeerAsn", + "description": "Read any peerAsns" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peerAsns/delete", + "display": { + "provider": "Microsoft.Peering", + "resource": "peerAsns", + "operation": "Delete PeerAsn", + "description": "Delete any peerAsns" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peeringLocations/read", + "display": { + "provider": "Microsoft.Peering", + "resource": "peeringLocations", + "operation": "Read PeeringLocation", + "description": "Read any peeringLocations" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/legacyPeerings/read", + "display": { + "provider": "Microsoft.Peering", + "resource": "legacyPeerings", + "operation": "Read LegacyPeering", + "description": "Read any legacyPeerings" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peerings/write", + "display": { + "provider": "Microsoft.Peering", + "resource": "peerings", + "operation": "Write Peering", + "description": "Write any peerings" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peerings/read", + "display": { + "provider": "Microsoft.Peering", + "resource": "peerings", + "operation": "Read Peering", + "description": "Read any peerings" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peerings/delete", + "display": { + "provider": "Microsoft.Peering", + "resource": "peerings", + "operation": "Delete Peering", + "description": "Delete any peerings" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peeringServiceLocations/read", + "display": { + "provider": "Microsoft.Peering", + "resource": "peeringServiceLocations", + "operation": "Read PeeringServiceLocations", + "description": "Read any peeringServiceLocations" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peeringServiceProviders/read", + "display": { + "provider": "Microsoft.Peering", + "resource": "peeringServiceProviders", + "operation": "Read PeeringServiceProviders", + "description": "Read any peeringServiceProviders" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peeringServices/read", + "display": { + "provider": "Microsoft.Peering", + "resource": "peeringServices", + "operation": "Read PeeringServices", + "description": "Read any peeringServices" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peeringServices/write", + "display": { + "provider": "Microsoft.Peering", + "resource": "peeringServices", + "operation": "Write PeeringService", + "description": "Write any peeringServices" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peeringServices/delete", + "display": { + "provider": "Microsoft.Peering", + "resource": "peeringServices", + "operation": "Delete PeeringServices", + "description": "Delete any peeringServices" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peeringServices/prefixes/read", + "display": { + "provider": "Microsoft.Peering", + "resource": "prefixes", + "operation": "Read PeeringServicePrefixes", + "description": "Read any prefixes" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peeringServices/prefixes/write", + "display": { + "provider": "Microsoft.Peering", + "resource": "prefixes", + "operation": "Write PeeringServicePrefixes", + "description": "Write any prefixes" + }, + "isDataAction": false + }, + { + "name": "Microsoft.Peering/peeringServices/prefixes/delete", + "display": { + "provider": "Microsoft.Peering", + "resource": "prefixes", + "operation": "Delete PeeringServicePrefixes", + "description": "Delete any prefixes" + }, + "isDataAction": false + } + ] + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServiceCountriesBySubscription.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServiceCountriesBySubscription.json new file mode 100644 index 000000000000..cadea26d6d81 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServiceCountriesBySubscription.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "subId", + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "country1", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peeringServiceCountries/country1", + "type": "Microsoft.Peering/peeringServiceCountries" + }, + { + "name": "country2", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peeringServiceCountries/country2", + "type": "Microsoft.Peering/peeringServiceCountries" + } + ] + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServiceLocationsBySubscription.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServiceLocationsBySubscription.json new file mode 100644 index 000000000000..58900a24c376 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServiceLocationsBySubscription.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "subId", + "api-version": "2020-01-01-preview", + "country": "country1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "country": "country1", + "state": "state1" + }, + "name": "peeringServiceLocation1", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peeringServiceLocations/peeringServiceLocation1", + "type": "Microsoft.Peering/peeringServiceLocations" + }, + { + "properties": { + "country": "country1", + "state": "state2" + }, + "name": "peeringServiceLocation2", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peeringServiceLocations/peeringServiceLocation2", + "type": "Microsoft.Peering/peeringServiceLocations" + } + ] + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServiceProviders.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServiceProviders.json new file mode 100644 index 000000000000..b48dd2582c12 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServiceProviders.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "subId", + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "serviceProviderName": "peeringServiceProvider1" + }, + "name": "peeringServiceProvider1", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peeringServiceProviders/peeringServiceProvider1", + "type": "Microsoft.Peering/peeringServiceProviders" + }, + { + "properties": { + "serviceProviderName": "peeringServiceProvider2" + }, + "name": "peeringServiceProvider2", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peeringServiceProviders/peeringServiceProvider2", + "type": "Microsoft.Peering/peeringServiceProviders" + } + ] + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServicesByResourceGroup.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServicesByResourceGroup.json new file mode 100644 index 000000000000..dde79deace71 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServicesByResourceGroup.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "peeringServiceLocation": "state1", + "peeringServiceProvider": "serviceProvider1", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "myPeeringService", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peeringServices/myPeeringService", + "type": "Microsoft.Peering/peeringServices" + } + ] + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServicesBySubscription.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServicesBySubscription.json new file mode 100644 index 000000000000..78159648137d --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringServicesBySubscription.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "subId", + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "peeringServiceLocation": "state1", + "peeringServiceProvider": "serviceProvider1", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "myPeeringService", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peeringServices/myPeeringService", + "type": "Microsoft.Peering/peeringServices" + } + ] + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringsByResourceGroup.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringsByResourceGroup.json new file mode 100644 index 000000000000..e27efe4e96a5 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringsByResourceGroup.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sku": { + "name": "Basic_Exchange_Free", + "tier": "Basic", + "family": "Exchange", + "size": "Free" + }, + "kind": "Exchange", + "properties": { + "exchange": { + "connections": [ + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.1", + "microsoftSessionIPv6Address": "fd00::1:1", + "peerSessionIPv4Address": "192.168.2.1", + "peerSessionIPv6Address": "fd00::1", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CE495334-0E94-4E51-8164-8116D6CD284D" + }, + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.2", + "microsoftSessionIPv6Address": "fd00::1:2", + "peerSessionIPv4Address": "192.168.2.2", + "peerSessionIPv6Address": "fd00::2", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CDD8E673-CB07-47E6-84DE-3739F778762B" + } + ], + "peerAsn": { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/myAsn1" + } + }, + "peeringLocation": "peeringLocation0", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering", + "type": "Microsoft.Peering/peerings" + } + ] + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringsBySubscription.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringsBySubscription.json new file mode 100644 index 000000000000..64a3b8d4c063 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPeeringsBySubscription.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "subscriptionId": "subId", + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sku": { + "name": "Basic_Exchange_Free", + "tier": "Basic", + "family": "Exchange", + "size": "Free" + }, + "kind": "Exchange", + "properties": { + "exchange": { + "connections": [ + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.1", + "microsoftSessionIPv6Address": "fd00::1:1", + "peerSessionIPv4Address": "192.168.2.1", + "peerSessionIPv6Address": "fd00::1", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CE495334-0E94-4E51-8164-8116D6CD284D" + }, + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.2", + "microsoftSessionIPv6Address": "fd00::1:2", + "peerSessionIPv4Address": "192.168.2.2", + "peerSessionIPv6Address": "fd00::2", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CDD8E673-CB07-47E6-84DE-3739F778762B" + } + ], + "peerAsn": { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/myAsn1" + } + }, + "peeringLocation": "peeringLocation0", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "name": "peeringName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering", + "type": "Microsoft.Peering/peerings" + } + ] + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPrefixesByPeeringService.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPrefixesByPeeringService.json new file mode 100644 index 000000000000..c5457dc53f63 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListPrefixesByPeeringService.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "myPeeringService": "myPeeringService", + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "prefix": "192.168.1.0/24", + "prefixValidationState": "Verified", + "learnedType": "ViaServiceProvider", + "peeringServicePrefixKey": "00000000-0000-0000-0000-000000000000", + "provisioningState": "Succeeded" + }, + "name": "peeringServicePrefixName1", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peeringServices/myPeeringService/prefixes/myPeeringServicePrefix1" + }, + { + "properties": { + "prefix": "192.168.2.0/24", + "prefixValidationState": "Verified", + "learnedType": "ViaServiceProvider", + "peeringServicePrefixKey": "00000000-0000-0000-0000-000000000000", + "provisioningState": "Succeeded" + }, + "name": "peeringServicePrefixName2", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peeringServices/myPeeringService/prefixes/myPeeringServicePrefix2" + } + ] + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListRegisteredAsnsByPeering.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListRegisteredAsnsByPeering.json new file mode 100644 index 000000000000..3f434fc4ae03 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListRegisteredAsnsByPeering.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "asn": 65000, + "peeringServicePrefixKey": "00000000-0000-0000-0000-000000000000", + "provisioningState": "Succeeded" + }, + "name": "registeredAsnName0", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering/registeredAsns/registeredAsnName0", + "type": "Microsoft.Peering/registeredAsns" + }, + { + "properties": { + "asn": 65001, + "provisioningState": "Failed" + }, + "name": "registeredAsnName1", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering/registeredAsns/registeredAsnName1", + "type": "Microsoft.Peering/registeredAsns" + }, + { + "properties": { + "asn": 65002, + "peeringServicePrefixKey": "00000000-0000-0000-0000-000000000000", + "provisioningState": "Succeeded" + }, + "name": "registeredAsnName2", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering/registeredAsns/registeredAsnName2", + "type": "Microsoft.Peering/registeredAsns" + } + ] + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListRegisteredPrefixesByPeering.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListRegisteredPrefixesByPeering.json new file mode 100644 index 000000000000..a33c56e28bbb --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/ListRegisteredPrefixesByPeering.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2020-01-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "prefix": "10.22.20.0/24", + "peeringServicePrefixKey": "00000000-0000-0000-0000-000000000000", + "provisioningState": "Succeeded" + }, + "name": "registeredPrefixName0", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering/registeredPrefixes/myRegisteredPrefix0", + "type": "Microsoft.Peering/registeredPrefixes" + }, + { + "properties": { + "prefix": "10.22.21.0/24", + "peeringServicePrefixKey": "00000000-0000-0000-0000-000000000000", + "provisioningState": "Succeeded" + }, + "name": "registeredPrefixName1", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering/registeredPrefixes/myRegisteredPrefix1", + "type": "Microsoft.Peering/registeredPrefixes" + }, + { + "properties": { + "prefix": "10.22.22.0/24", + "provisioningState": "Succeeded" + }, + "name": "registeredPrefixName2", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering/registeredPrefixes/myRegisteredPrefix2", + "type": "Microsoft.Peering/registeredPrefixes" + } + ] + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/UpdatePeeringServiceTags.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/UpdatePeeringServiceTags.json new file mode 100644 index 000000000000..57d1e6b324ba --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/UpdatePeeringServiceTags.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "myPeeringService": "myPeeringService", + "api-version": "2020-01-01-preview", + "tags": { + "tags": { + "tag0": "value0", + "tag1": "value1" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "peeringServiceLocation": "state1", + "peeringServiceProvider": "serviceProvider1", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "tags": { + "tag0": "value0", + "tag1": "value1" + }, + "name": "myPeeringService", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peeringServices/myPeeringService", + "type": "Microsoft.Peering/peeringServices" + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/UpdatePeeringTags.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/UpdatePeeringTags.json new file mode 100644 index 000000000000..00c4d103cb2c --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/examples/UpdatePeeringTags.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "subscriptionId": "subId", + "resourceGroupName": "rgName", + "peeringName": "peeringName", + "api-version": "2020-01-01-preview", + "tags": { + "tags": { + "tag0": "value0", + "tag1": "value1" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Basic_Exchange_Free", + "tier": "Basic", + "family": "Exchange", + "size": "Free" + }, + "kind": "Exchange", + "properties": { + "exchange": { + "connections": [ + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.1", + "microsoftSessionIPv6Address": "fd00::1:1", + "peerSessionIPv4Address": "192.168.2.1", + "peerSessionIPv6Address": "fd00::1", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CE495334-0E94-4E51-8164-8116D6CD284D" + }, + { + "peeringDBFacilityId": 99999, + "connectionState": "Active", + "bgpSession": { + "microsoftSessionIPv4Address": "192.168.3.2", + "microsoftSessionIPv6Address": "fd00::1:2", + "peerSessionIPv4Address": "192.168.2.2", + "peerSessionIPv6Address": "fd00::2", + "sessionStateV4": "Established", + "sessionStateV6": "Established", + "maxPrefixesAdvertisedV4": 1000, + "maxPrefixesAdvertisedV6": 100, + "md5AuthenticationKey": "test-md5-auth-key" + }, + "connectionIdentifier": "CDD8E673-CB07-47E6-84DE-3739F778762B" + } + ], + "peerAsn": { + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Peering/peerAsns/myAsn1" + } + }, + "peeringLocation": "peeringLocation0", + "provisioningState": "Succeeded" + }, + "location": "eastus", + "tags": { + "tag0": "value0", + "tag1": "value1" + }, + "name": "peeringName", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Peering/peerings/myPeering", + "type": "Microsoft.Peering/peerings" + } + } + } +} diff --git a/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/peering.json b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/peering.json new file mode 100644 index 000000000000..361ecf8332b2 --- /dev/null +++ b/specification/peering/resource-manager/Microsoft.Peering/preview/2020-01-01-preview/peering.json @@ -0,0 +1,3253 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-01-01-preview", + "title": "PeeringManagementClient", + "description": "APIs to manage Peering resources through the Azure Resource Manager." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Peering/CheckServiceProviderAvailability": { + "post": { + "tags": [ + "CheckServiceProviderAvailability" + ], + "description": "Checks if the peering service provider is present within 1000 miles of customer's location", + "operationId": "CheckServiceProviderAvailability", + "parameters": [ + { + "name": "checkServiceProviderAvailabilityInput", + "in": "body", + "description": "The CheckServiceProviderAvailabilityInput indicating customer location and service provider.", + "required": true, + "schema": { + "$ref": "#/definitions/CheckServiceProviderAvailabilityInput" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "enum": [ + "Available", + "Unavailable" + ], + "type": "string" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Check if peering service provider is available in customer location": { + "$ref": "./examples/CheckServiceProviderAvailability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Peering/legacyPeerings": { + "get": { + "tags": [ + "LegacyPeerings" + ], + "description": "Lists all of the legacy peerings under the given subscription matching the specified kind and location.", + "operationId": "LegacyPeerings_List", + "parameters": [ + { + "name": "peeringLocation", + "in": "query", + "description": "The location of the peering.", + "required": true, + "type": "string" + }, + { + "name": "kind", + "in": "query", + "description": "The kind of the peering.", + "required": true, + "type": "string", + "enum": [ + "Direct", + "Exchange" + ] + }, + { + "name": "asn", + "in": "query", + "description": "The ASN number associated with a legacy peering.", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List legacy peerings": { + "$ref": "./examples/ListLegacyPeerings.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Peering/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all of the available API operations for peering resources.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List peering operations": { + "$ref": "./examples/ListPeeringOperations.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Peering/peerAsns/{peerAsnName}": { + "get": { + "tags": [ + "PeerAsns" + ], + "description": "Gets the peer ASN with the specified name under the given subscription.", + "operationId": "PeerAsns_Get", + "parameters": [ + { + "name": "peerAsnName", + "in": "path", + "description": "The peer ASN name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeerAsn" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a peer ASN": { + "$ref": "./examples/GetPeerAsn.json" + } + } + }, + "put": { + "tags": [ + "PeerAsns" + ], + "description": "Creates a new peer ASN or updates an existing peer ASN with the specified name under the given subscription.", + "operationId": "PeerAsns_CreateOrUpdate", + "parameters": [ + { + "name": "peerAsnName", + "in": "path", + "description": "The peer ASN name.", + "required": true, + "type": "string" + }, + { + "name": "peerAsn", + "in": "body", + "description": "The peer ASN.", + "required": true, + "schema": { + "$ref": "#/definitions/PeerAsn" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeerAsn" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/PeerAsn" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create a peer ASN": { + "$ref": "./examples/CreatePeerAsn.json" + } + } + }, + "delete": { + "tags": [ + "PeerAsns" + ], + "description": "Deletes an existing peer ASN with the specified name under the given subscription.", + "operationId": "PeerAsns_Delete", + "parameters": [ + { + "name": "peerAsnName", + "in": "path", + "description": "The peer ASN name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a peer ASN": { + "$ref": "./examples/DeletePeerAsn.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Peering/peerAsns": { + "get": { + "tags": [ + "PeerAsns" + ], + "description": "Lists all of the peer ASNs under the given subscription.", + "operationId": "PeerAsns_ListBySubscription", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeerAsnListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List peer ASNs in a subscription": { + "$ref": "./examples/ListPeerAsnsBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Peering/peeringLocations": { + "get": { + "tags": [ + "PeeringLocations" + ], + "description": "Lists all of the available peering locations for the specified kind of peering.", + "operationId": "PeeringLocations_List", + "parameters": [ + { + "name": "kind", + "in": "query", + "description": "The kind of the peering.", + "required": true, + "type": "string", + "enum": [ + "Direct", + "Exchange" + ] + }, + { + "name": "directPeeringType", + "in": "query", + "description": "The type of direct peering.", + "required": false, + "type": "string", + "enum": [ + "Edge", + "Transit", + "Cdn", + "Internal", + "Ix", + "IxRs" + ] + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringLocationListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List direct peering locations": { + "$ref": "./examples/ListDirectPeeringLocations.json" + }, + "List exchange peering locations": { + "$ref": "./examples/ListExchangePeeringLocations.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Peering/peerings/{peeringName}/registeredAsns/{registeredAsnName}": { + "get": { + "tags": [ + "PeeringRegisteredAsns" + ], + "description": "Gets an existing registered ASN with the specified name under the given subscription, resource group and peering.", + "operationId": "RegisteredAsns_Get", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringName", + "in": "path", + "description": "The name of the peering.", + "required": true, + "type": "string" + }, + { + "name": "registeredAsnName", + "in": "path", + "description": "The name of the registered ASN.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringRegisteredAsn" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a registered ASN associated with the peering": { + "$ref": "./examples/GetRegisteredAsn.json" + } + } + }, + "put": { + "tags": [ + "PeeringRegisteredAsns" + ], + "description": "Creates a new registered ASN with the specified name under the given subscription, resource group and peering.", + "operationId": "RegisteredAsns_CreateOrUpdate", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringName", + "in": "path", + "description": "The name of the peering.", + "required": true, + "type": "string" + }, + { + "name": "registeredAsnName", + "in": "path", + "description": "The name of the ASN.", + "required": true, + "type": "string" + }, + { + "name": "registeredAsn", + "in": "body", + "description": "The properties needed to create a registered ASN.", + "required": true, + "schema": { + "$ref": "#/definitions/PeeringRegisteredAsn" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringRegisteredAsn" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/PeeringRegisteredAsn" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update a registered ASN for the peering": { + "$ref": "./examples/CreateRegisteredAsn.json" + } + } + }, + "delete": { + "tags": [ + "PeeringRegisteredAsns" + ], + "description": "Deletes an existing registered ASN with the specified name under the given subscription, resource group and peering.", + "operationId": "RegisteredAsns_Delete", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringName", + "in": "path", + "description": "The name of the peering.", + "required": true, + "type": "string" + }, + { + "name": "registeredAsnName", + "in": "path", + "description": "The name of the registered ASN.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Deletes a registered ASN associated with the peering": { + "$ref": "./examples/DeleteRegisteredAsn.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Peering/peerings/{peeringName}/registeredAsns": { + "get": { + "tags": [ + "PeeringRegisteredAsns" + ], + "description": "Lists all registered ASNs under the given subscription, resource group and peering.", + "operationId": "RegisteredAsns_ListByPeering", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringName", + "in": "path", + "description": "The name of the peering.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringRegisteredAsnListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List all the registered ASNs associated with the peering": { + "$ref": "./examples/ListRegisteredAsnsByPeering.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Peering/peerings/{peeringName}/registeredPrefixes/{registeredPrefixName}": { + "get": { + "tags": [ + "PeeringRegisteredPrefixes" + ], + "description": "Gets an existing registered prefix with the specified name under the given subscription, resource group and peering.", + "operationId": "RegisteredPrefixes_Get", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringName", + "in": "path", + "description": "The name of the peering.", + "required": true, + "type": "string" + }, + { + "name": "registeredPrefixName", + "in": "path", + "description": "The name of the registered prefix.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringRegisteredPrefix" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a registered prefix associated with the peering": { + "$ref": "./examples/GetRegisteredPrefix.json" + } + } + }, + "put": { + "tags": [ + "PeeringRegisteredPrefixes" + ], + "description": "Creates a new registered prefix with the specified name under the given subscription, resource group and peering.", + "operationId": "RegisteredPrefixes_CreateOrUpdate", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringName", + "in": "path", + "description": "The name of the peering.", + "required": true, + "type": "string" + }, + { + "name": "registeredPrefixName", + "in": "path", + "description": "The name of the registered prefix.", + "required": true, + "type": "string" + }, + { + "name": "registeredPrefix", + "in": "body", + "description": "The properties needed to create a registered prefix.", + "required": true, + "schema": { + "$ref": "#/definitions/PeeringRegisteredPrefix" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringRegisteredPrefix" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/PeeringRegisteredPrefix" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update a registered prefix for the peering": { + "$ref": "./examples/CreateRegisteredPrefix.json" + } + } + }, + "delete": { + "tags": [ + "PeeringRegisteredPrefixes" + ], + "description": "Deletes an existing registered prefix with the specified name under the given subscription, resource group and peering.", + "operationId": "RegisteredPrefixes_Delete", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringName", + "in": "path", + "description": "The name of the peering.", + "required": true, + "type": "string" + }, + { + "name": "registeredPrefixName", + "in": "path", + "description": "The name of the registered prefix.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Deletes a registered prefix associated with the peering": { + "$ref": "./examples/DeleteRegisteredPrefix.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Peering/peerings/{peeringName}/registeredPrefixes": { + "get": { + "tags": [ + "PeeringRegisteredPrefixes" + ], + "description": "Lists all registered prefixes under the given subscription, resource group and peering.", + "operationId": "RegisteredPrefixes_ListByPeering", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringName", + "in": "path", + "description": "The name of the peering.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringRegisteredPrefixListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List all the registered prefixes associated with the peering": { + "$ref": "./examples/ListRegisteredPrefixesByPeering.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Peering/peerings/{peeringName}": { + "get": { + "tags": [ + "Peerings" + ], + "description": "Gets an existing peering with the specified name under the given subscription and resource group.", + "operationId": "Peerings_Get", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringName", + "in": "path", + "description": "The name of the peering.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Peering" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a peering": { + "$ref": "./examples/GetPeering.json" + } + } + }, + "put": { + "tags": [ + "Peerings" + ], + "description": "Creates a new peering or updates an existing peering with the specified name under the given subscription and resource group.", + "operationId": "Peerings_CreateOrUpdate", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringName", + "in": "path", + "description": "The name of the peering.", + "required": true, + "type": "string" + }, + { + "name": "peering", + "in": "body", + "description": "The properties needed to create or update a peering.", + "required": true, + "schema": { + "$ref": "#/definitions/Peering" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Peering" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/Peering" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create a direct peering": { + "$ref": "./examples/CreateDirectPeering.json" + }, + "Create an exchange peering": { + "$ref": "./examples/CreateExchangePeering.json" + }, + "Create a peering with exchange route server": { + "$ref": "./examples/CreatePeeringWithExchangeRouteServer.json" + } + } + }, + "delete": { + "tags": [ + "Peerings" + ], + "description": "Deletes an existing peering with the specified name under the given subscription and resource group.", + "operationId": "Peerings_Delete", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringName", + "in": "path", + "description": "The name of the peering.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a peering": { + "$ref": "./examples/DeletePeering.json" + } + } + }, + "patch": { + "tags": [ + "Peerings" + ], + "description": "Updates tags for a peering with the specified name under the given subscription and resource group.", + "operationId": "Peerings_Update", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringName", + "in": "path", + "description": "The name of the peering.", + "required": true, + "type": "string" + }, + { + "name": "tags", + "in": "body", + "description": "The resource tags.", + "required": true, + "schema": { + "$ref": "#/definitions/ResourceTags" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Peering" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update peering tags": { + "$ref": "./examples/UpdatePeeringTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Peering/peerings": { + "get": { + "tags": [ + "Peerings" + ], + "description": "Lists all of the peerings under the given subscription and resource group.", + "operationId": "Peerings_ListByResourceGroup", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List peerings in a resource group": { + "$ref": "./examples/ListPeeringsByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Peering/peerings": { + "get": { + "tags": [ + "Peerings" + ], + "description": "Lists all of the peerings under the given subscription.", + "operationId": "Peerings_ListBySubscription", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List peerings in a subscription": { + "$ref": "./examples/ListPeeringsBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Peering/peeringServiceCountries": { + "get": { + "tags": [ + "PeeringServiceCountries" + ], + "description": "Lists all of the available countries for peering service.", + "operationId": "PeeringServiceCountries_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringServiceCountryListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List peering service countries": { + "$ref": "./examples/ListPeeringServiceCountriesBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Peering/peeringServiceLocations": { + "get": { + "tags": [ + "PeeringServiceLocations" + ], + "description": "Lists all of the available locations for peering service.", + "operationId": "PeeringServiceLocations_List", + "parameters": [ + { + "name": "country", + "in": "query", + "description": "The country of interest, in which the locations are to be present.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringServiceLocationListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List peering service locations": { + "$ref": "./examples/ListPeeringServiceLocationsBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Peering/peeringServices/{peeringServiceName}/prefixes/{prefixName}": { + "get": { + "tags": [ + "PeeringServicePrefixes" + ], + "description": "Gets an existing prefix with the specified name under the given subscription, resource group and peering service.", + "operationId": "Prefixes_Get", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringServiceName", + "in": "path", + "description": "The name of the peering service.", + "required": true, + "type": "string" + }, + { + "name": "prefixName", + "in": "path", + "description": "The name of the prefix.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "The properties to be expanded.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringServicePrefix" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a prefix associated with the peering service": { + "$ref": "./examples/GetPeeringServicePrefix.json" + } + } + }, + "put": { + "tags": [ + "PeeringServicePrefixes" + ], + "description": "Creates a new prefix with the specified name under the given subscription, resource group and peering service.", + "operationId": "Prefixes_CreateOrUpdate", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringServiceName", + "in": "path", + "description": "The name of the peering service.", + "required": true, + "type": "string" + }, + { + "name": "prefixName", + "in": "path", + "description": "The name of the prefix.", + "required": true, + "type": "string" + }, + { + "name": "peeringServicePrefix", + "in": "body", + "description": "The properties needed to create a prefix.", + "required": true, + "schema": { + "$ref": "#/definitions/PeeringServicePrefix" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringServicePrefix" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/PeeringServicePrefix" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update a prefix for the peering service": { + "$ref": "./examples/CreatePeeringServicePrefix.json" + } + } + }, + "delete": { + "tags": [ + "PeeringServicePrefixes" + ], + "description": "Deletes an existing prefix with the specified name under the given subscription, resource group and peering service.", + "operationId": "Prefixes_Delete", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringServiceName", + "in": "path", + "description": "The name of the peering service.", + "required": true, + "type": "string" + }, + { + "name": "prefixName", + "in": "path", + "description": "The name of the prefix.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a prefix associated with the peering service": { + "$ref": "./examples/DeletePeeringServicePrefix.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Peering/peeringServices/{peeringServiceName}/prefixes": { + "get": { + "tags": [ + "PeeringServicePrefixes" + ], + "description": "Lists all prefixes under the given subscription, resource group and peering service.", + "operationId": "Prefixes_ListByPeeringService", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringServiceName", + "in": "path", + "description": "The name of the peering service.", + "required": true, + "type": "string" + }, + { + "name": "$expand", + "in": "query", + "description": "The properties to be expanded.", + "required": false, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringServicePrefixListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List all the prefixes associated with the peering service": { + "$ref": "./examples/ListPrefixesByPeeringService.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Peering/peeringServiceProviders": { + "get": { + "tags": [ + "PeeringServiceProviders" + ], + "description": "Lists all of the available peering service locations for the specified kind of peering.", + "operationId": "PeeringServiceProviders_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringServiceProviderListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List peering service providers": { + "$ref": "./examples/ListPeeringServiceProviders.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Peering/peeringServices/{peeringServiceName}": { + "get": { + "tags": [ + "PeeringServices" + ], + "description": "Gets an existing peering service with the specified name under the given subscription and resource group.", + "operationId": "PeeringServices_Get", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringServiceName", + "in": "path", + "description": "The name of the peering.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringService" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a peering service": { + "$ref": "./examples/GetPeeringService.json" + } + } + }, + "put": { + "tags": [ + "PeeringServices" + ], + "description": "Creates a new peering service or updates an existing peering with the specified name under the given subscription and resource group.", + "operationId": "PeeringServices_CreateOrUpdate", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringServiceName", + "in": "path", + "description": "The name of the peering service.", + "required": true, + "type": "string" + }, + { + "name": "peeringService", + "in": "body", + "description": "The properties needed to create or update a peering service.", + "required": true, + "schema": { + "$ref": "#/definitions/PeeringService" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringService" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/PeeringService" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Create a peering service": { + "$ref": "./examples/CreatePeeringService.json" + } + } + }, + "delete": { + "tags": [ + "PeeringServices" + ], + "description": "Deletes an existing peering service with the specified name under the given subscription and resource group.", + "operationId": "PeeringServices_Delete", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringServiceName", + "in": "path", + "description": "The name of the peering service.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a peering service": { + "$ref": "./examples/DeletePeeringService.json" + } + } + }, + "patch": { + "tags": [ + "PeeringServices" + ], + "description": "Updates tags for a peering service with the specified name under the given subscription and resource group.", + "operationId": "PeeringServices_Update", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "name": "peeringServiceName", + "in": "path", + "description": "The name of the peering service.", + "required": true, + "type": "string" + }, + { + "name": "tags", + "in": "body", + "description": "The resource tags.", + "required": true, + "schema": { + "$ref": "#/definitions/ResourceTags" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringService" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update peering service tags": { + "$ref": "./examples/UpdatePeeringServiceTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Peering/peeringServices": { + "get": { + "tags": [ + "PeeringServices" + ], + "description": "Lists all of the peering services under the given subscription and resource group.", + "operationId": "PeeringServices_ListByResourceGroup", + "parameters": [ + { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringServiceListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List peering services in a resource group": { + "$ref": "./examples/ListPeeringServicesByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Peering/peeringServices": { + "get": { + "tags": [ + "PeeringServices" + ], + "description": "Lists all of the peerings under the given subscription.", + "operationId": "PeeringServices_ListBySubscription", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PeeringServiceListResult" + } + }, + "default": { + "description": "Error response describing why the operation has failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List peering services in a subscription": { + "$ref": "./examples/ListPeeringServicesBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "CheckServiceProviderAvailabilityInput": { + "description": "Class for CheckServiceProviderAvailabilityInput", + "type": "object", + "properties": { + "peeringServiceLocation": { + "description": "Gets or sets the peering service location.", + "type": "string" + }, + "peeringServiceProvider": { + "description": "Gets or sets the peering service provider.", + "type": "string" + } + } + }, + "PeeringListResult": { + "description": "The paginated list of peerings.", + "type": "object", + "properties": { + "value": { + "description": "The list of peerings.", + "type": "array", + "items": { + "$ref": "#/definitions/Peering" + } + }, + "nextLink": { + "description": "The link to fetch the next page of peerings.", + "type": "string" + } + } + }, + "Peering": { + "description": "Peering is a logical representation of a set of connections to the Microsoft Cloud Edge at a location.", + "required": [ + "sku", + "kind", + "location" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "sku": { + "$ref": "#/definitions/PeeringSku", + "description": "The SKU that defines the tier and kind of the peering." + }, + "kind": { + "description": "The kind of the peering.", + "enum": [ + "Direct", + "Exchange" + ], + "type": "string", + "x-ms-enum": { + "name": "kind", + "modelAsString": true + } + }, + "properties": { + "$ref": "#/definitions/PeeringProperties", + "description": "The properties that define a peering.", + "x-ms-client-flatten": true + }, + "location": { + "description": "The location of the resource.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "tags": { + "description": "The resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "PeeringSku": { + "description": "The SKU that defines the tier and kind of the peering.", + "type": "object", + "properties": { + "name": { + "description": "The name of the peering SKU.", + "type": "string" + }, + "tier": { + "description": "The tier of the peering SKU.", + "enum": [ + "Basic", + "Premium" + ], + "type": "string", + "x-ms-enum": { + "name": "tier", + "modelAsString": true + } + }, + "family": { + "description": "The family of the peering SKU.", + "enum": [ + "Direct", + "Exchange" + ], + "type": "string", + "x-ms-enum": { + "name": "family", + "modelAsString": true + } + }, + "size": { + "description": "The size of the peering SKU.", + "enum": [ + "Free", + "Metered", + "Unlimited" + ], + "type": "string", + "x-ms-enum": { + "name": "size", + "modelAsString": true + } + } + } + }, + "PeeringProperties": { + "description": "The properties that define connectivity to the Microsoft Cloud Edge.", + "type": "object", + "properties": { + "direct": { + "$ref": "#/definitions/PeeringPropertiesDirect", + "description": "The properties that define a direct peering." + }, + "exchange": { + "$ref": "#/definitions/PeeringPropertiesExchange", + "description": "The properties that define an exchange peering." + }, + "peeringLocation": { + "description": "The location of the peering.", + "type": "string" + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "enum": [ + "Succeeded", + "Updating", + "Deleting", + "Failed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "provisioningState", + "modelAsString": true + } + } + } + }, + "PeeringPropertiesDirect": { + "description": "The properties that define a direct peering.", + "type": "object", + "properties": { + "connections": { + "description": "The set of connections that constitute a direct peering.", + "type": "array", + "items": { + "$ref": "#/definitions/DirectConnection" + } + }, + "useForPeeringService": { + "description": "The flag that indicates whether or not the peering is used for peering service.", + "type": "boolean", + "readOnly": true + }, + "peerAsn": { + "$ref": "#/definitions/SubResource", + "description": "The reference of the peer ASN." + }, + "directPeeringType": { + "description": "The type of direct peering.", + "enum": [ + "Edge", + "Transit", + "Cdn", + "Internal", + "Ix", + "IxRs" + ], + "type": "string", + "x-ms-enum": { + "name": "directPeeringType", + "modelAsString": true + } + } + } + }, + "PeeringPropertiesExchange": { + "description": "The properties that define an exchange peering.", + "type": "object", + "properties": { + "connections": { + "description": "The set of connections that constitute an exchange peering.", + "type": "array", + "items": { + "$ref": "#/definitions/ExchangeConnection" + } + }, + "peerAsn": { + "$ref": "#/definitions/SubResource", + "description": "The reference of the peer ASN." + } + } + }, + "DirectConnection": { + "description": "The properties that define a direct connection.", + "type": "object", + "properties": { + "bandwidthInMbps": { + "format": "int32", + "description": "The bandwidth of the connection.", + "type": "integer" + }, + "provisionedBandwidthInMbps": { + "format": "int32", + "description": "The bandwidth that is actually provisioned.", + "type": "integer", + "readOnly": true + }, + "sessionAddressProvider": { + "description": "The field indicating if Microsoft provides session ip addresses.", + "enum": [ + "Microsoft", + "Peer" + ], + "type": "string", + "x-ms-enum": { + "name": "sessionAddressProvider", + "modelAsString": true + } + }, + "useForPeeringService": { + "description": "The flag that indicates whether or not the connection is used for peering service.", + "type": "boolean" + }, + "peeringDBFacilityId": { + "format": "int32", + "description": "The PeeringDB.com ID of the facility at which the connection has to be set up.", + "type": "integer" + }, + "connectionState": { + "description": "The state of the connection.", + "enum": [ + "None", + "PendingApproval", + "Approved", + "ProvisioningStarted", + "ProvisioningFailed", + "ProvisioningCompleted", + "Validating", + "Active" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "connectionState", + "modelAsString": true + } + }, + "bgpSession": { + "$ref": "#/definitions/BgpSession", + "description": "The BGP session associated with the connection." + }, + "connectionIdentifier": { + "description": "The unique identifier (GUID) for the connection.", + "type": "string" + }, + "errorMessage": { + "description": "The error message related to the connection state, if any.", + "type": "string", + "readOnly": true + } + } + }, + "SubResource": { + "description": "The sub resource.", + "type": "object", + "properties": { + "id": { + "description": "The identifier of the referenced resource.", + "type": "string" + } + } + }, + "ExchangeConnection": { + "description": "The properties that define an exchange connection.", + "type": "object", + "properties": { + "peeringDBFacilityId": { + "format": "int32", + "description": "The PeeringDB.com ID of the facility at which the connection has to be set up.", + "type": "integer" + }, + "connectionState": { + "description": "The state of the connection.", + "enum": [ + "None", + "PendingApproval", + "Approved", + "ProvisioningStarted", + "ProvisioningFailed", + "ProvisioningCompleted", + "Validating", + "Active" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "connectionState", + "modelAsString": true + } + }, + "bgpSession": { + "$ref": "#/definitions/BgpSession", + "description": "The BGP session associated with the connection." + }, + "connectionIdentifier": { + "description": "The unique identifier (GUID) for the connection.", + "type": "string" + }, + "errorMessage": { + "description": "The error message related to the connection state, if any.", + "type": "string", + "readOnly": true + } + } + }, + "BgpSession": { + "description": "The properties that define a BGP session.", + "type": "object", + "properties": { + "sessionPrefixV4": { + "description": "The IPv4 prefix that contains both ends' IPv4 addresses.", + "type": "string" + }, + "sessionPrefixV6": { + "description": "The IPv6 prefix that contains both ends' IPv6 addresses.", + "type": "string" + }, + "microsoftSessionIPv4Address": { + "description": "The IPv4 session address on Microsoft's end.", + "type": "string" + }, + "microsoftSessionIPv6Address": { + "description": "The IPv6 session address on Microsoft's end.", + "type": "string" + }, + "peerSessionIPv4Address": { + "description": "The IPv4 session address on peer's end.", + "type": "string" + }, + "peerSessionIPv6Address": { + "description": "The IPv6 session address on peer's end.", + "type": "string" + }, + "sessionStateV4": { + "description": "The state of the IPv4 session.", + "enum": [ + "None", + "Idle", + "Connect", + "Active", + "OpenSent", + "OpenConfirm", + "OpenReceived", + "Established", + "PendingAdd", + "PendingUpdate", + "PendingRemove" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "sessionStateV4", + "modelAsString": true + } + }, + "sessionStateV6": { + "description": "The state of the IPv6 session.", + "enum": [ + "None", + "Idle", + "Connect", + "Active", + "OpenSent", + "OpenConfirm", + "OpenReceived", + "Established", + "PendingAdd", + "PendingUpdate", + "PendingRemove" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "sessionStateV6", + "modelAsString": true + } + }, + "maxPrefixesAdvertisedV4": { + "format": "int32", + "description": "The maximum number of prefixes advertised over the IPv4 session.", + "type": "integer" + }, + "maxPrefixesAdvertisedV6": { + "format": "int32", + "description": "The maximum number of prefixes advertised over the IPv6 session.", + "type": "integer" + }, + "md5AuthenticationKey": { + "description": "The MD5 authentication key of the session.", + "type": "string" + } + } + }, + "OperationListResult": { + "description": "The paginated list of peering API operations.", + "type": "object", + "properties": { + "value": { + "description": "The list of peering API operations.", + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + } + }, + "nextLink": { + "description": "The link to fetch the next page of peering API operations.", + "type": "string" + } + } + }, + "Operation": { + "description": "The peering API operation.", + "type": "object", + "properties": { + "name": { + "description": "The name of the operation.", + "type": "string", + "readOnly": true + }, + "display": { + "$ref": "#/definitions/OperationDisplayInfo", + "description": "The information related to the operation.", + "readOnly": true + }, + "isDataAction": { + "description": "The flag that indicates whether the operation applies to data plane.", + "type": "boolean", + "readOnly": true + } + } + }, + "OperationDisplayInfo": { + "description": "The information related to the operation.", + "type": "object", + "properties": { + "provider": { + "description": "The name of the resource provider.", + "type": "string", + "readOnly": true + }, + "resource": { + "description": "The type of the resource.", + "type": "string", + "readOnly": true + }, + "operation": { + "description": "The name of the operation.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The description of the operation.", + "type": "string", + "readOnly": true + } + } + }, + "PeerAsn": { + "description": "The essential information related to the peer's ASN.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PeerAsnProperties", + "description": "The properties that define a peer's ASN.", + "x-ms-client-flatten": true + } + } + }, + "PeerAsnProperties": { + "description": "The properties that define a peer's ASN.", + "type": "object", + "properties": { + "peerAsn": { + "format": "int32", + "description": "The Autonomous System Number (ASN) of the peer.", + "type": "integer" + }, + "peerContactDetail": { + "description": "The contact details of the peer.", + "type": "array", + "items": { + "$ref": "#/definitions/ContactDetail" + } + }, + "peerName": { + "description": "The name of the peer.", + "type": "string" + }, + "validationState": { + "description": "The validation state of the ASN associated with the peer.", + "enum": [ + "None", + "Pending", + "Approved", + "Failed" + ], + "type": "string", + "x-ms-enum": { + "name": "validationState", + "modelAsString": true + } + }, + "errorMessage": { + "description": "The error message for the validation state", + "type": "string", + "readOnly": true + } + } + }, + "ContactDetail": { + "description": "The contact detail class.", + "type": "object", + "properties": { + "role": { + "description": "The role of the contact.", + "enum": [ + "Noc", + "Policy", + "Technical", + "Service", + "Other" + ], + "type": "string", + "x-ms-enum": { + "name": "role", + "modelAsString": true + } + }, + "email": { + "description": "The e-mail address of the contact.", + "type": "string" + }, + "phone": { + "description": "The phone number of the contact.", + "type": "string" + } + } + }, + "PeerAsnListResult": { + "description": "The paginated list of peer ASNs.", + "type": "object", + "properties": { + "value": { + "description": "The list of peer ASNs.", + "type": "array", + "items": { + "$ref": "#/definitions/PeerAsn" + } + }, + "nextLink": { + "description": "The link to fetch the next page of peer ASNs.", + "type": "string" + } + } + }, + "PeeringLocationListResult": { + "description": "The paginated list of peering locations.", + "type": "object", + "properties": { + "value": { + "description": "The list of peering locations.", + "type": "array", + "items": { + "$ref": "#/definitions/PeeringLocation" + } + }, + "nextLink": { + "description": "The link to fetch the next page of peering locations.", + "type": "string" + } + } + }, + "PeeringLocation": { + "description": "Peering location is where connectivity could be established to the Microsoft Cloud Edge.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "kind": { + "description": "The kind of peering that the peering location supports.", + "enum": [ + "Direct", + "Exchange" + ], + "type": "string", + "x-ms-enum": { + "name": "kind", + "modelAsString": true + } + }, + "properties": { + "$ref": "#/definitions/PeeringLocationProperties", + "description": "The properties that define a peering location.", + "x-ms-client-flatten": true + } + } + }, + "PeeringLocationProperties": { + "description": "The properties that define a peering location.", + "type": "object", + "properties": { + "direct": { + "$ref": "#/definitions/PeeringLocationPropertiesDirect", + "description": "The properties that define a direct peering location." + }, + "exchange": { + "$ref": "#/definitions/PeeringLocationPropertiesExchange", + "description": "The properties that define an exchange peering location." + }, + "peeringLocation": { + "description": "The name of the peering location.", + "type": "string" + }, + "country": { + "description": "The country in which the peering location exists.", + "type": "string" + }, + "azureRegion": { + "description": "The Azure region associated with the peering location.", + "type": "string" + } + } + }, + "PeeringLocationPropertiesDirect": { + "description": "The properties that define a direct peering location.", + "type": "object", + "properties": { + "peeringFacilities": { + "description": "The list of direct peering facilities at the peering location.", + "type": "array", + "items": { + "$ref": "#/definitions/DirectPeeringFacility" + } + }, + "bandwidthOffers": { + "description": "The list of bandwidth offers available at the peering location.", + "type": "array", + "items": { + "$ref": "#/definitions/PeeringBandwidthOffer" + } + } + } + }, + "PeeringLocationPropertiesExchange": { + "description": "The properties that define an exchange peering location.", + "type": "object", + "properties": { + "peeringFacilities": { + "description": "The list of exchange peering facilities at the peering location.", + "type": "array", + "items": { + "$ref": "#/definitions/ExchangePeeringFacility" + } + } + } + }, + "DirectPeeringFacility": { + "description": "The properties that define a direct peering facility.", + "type": "object", + "properties": { + "address": { + "description": "The address of the direct peering facility.", + "type": "string" + }, + "directPeeringType": { + "description": "The type of the direct peering.", + "enum": [ + "Edge", + "Transit", + "Cdn", + "Internal", + "Ix", + "IxRs" + ], + "type": "string", + "x-ms-enum": { + "name": "directPeeringType", + "modelAsString": true + } + }, + "peeringDBFacilityId": { + "format": "int32", + "description": "The PeeringDB.com ID of the facility.", + "type": "integer" + }, + "peeringDBFacilityLink": { + "description": "The PeeringDB.com URL of the facility.", + "type": "string" + } + } + }, + "PeeringBandwidthOffer": { + "description": "The properties that define a peering bandwidth offer.", + "type": "object", + "properties": { + "offerName": { + "description": "The name of the bandwidth offer.", + "type": "string" + }, + "valueInMbps": { + "format": "int32", + "description": "The value of the bandwidth offer in Mbps.", + "type": "integer" + } + } + }, + "ExchangePeeringFacility": { + "description": "The properties that define an exchange peering facility.", + "type": "object", + "properties": { + "exchangeName": { + "description": "The name of the exchange peering facility.", + "type": "string" + }, + "bandwidthInMbps": { + "format": "int32", + "description": "The bandwidth of the connection between Microsoft and the exchange peering facility.", + "type": "integer" + }, + "microsoftIPv4Address": { + "description": "The IPv4 address of Microsoft at the exchange peering facility.", + "type": "string" + }, + "microsoftIPv6Address": { + "description": "The IPv6 address of Microsoft at the exchange peering facility.", + "type": "string" + }, + "facilityIPv4Prefix": { + "description": "The IPv4 prefixes associated with the exchange peering facility.", + "type": "string" + }, + "facilityIPv6Prefix": { + "description": "The IPv6 prefixes associated with the exchange peering facility.", + "type": "string" + }, + "peeringDBFacilityId": { + "format": "int32", + "description": "The PeeringDB.com ID of the facility.", + "type": "integer" + }, + "peeringDBFacilityLink": { + "description": "The PeeringDB.com URL of the facility.", + "type": "string" + } + } + }, + "PeeringRegisteredAsn": { + "description": "The customer's ASN that is registered by the peering service provider.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PeeringRegisteredAsnProperties", + "description": "The properties that define a registered ASN.", + "x-ms-client-flatten": true + } + } + }, + "PeeringRegisteredAsnProperties": { + "description": "The properties that define a registered ASN.", + "type": "object", + "properties": { + "asn": { + "format": "int32", + "description": "The customer's ASN from which traffic originates.", + "type": "integer" + }, + "peeringServicePrefixKey": { + "description": "The peering service prefix key that is to be shared with the customer.", + "type": "string", + "readOnly": true + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "enum": [ + "Succeeded", + "Updating", + "Deleting", + "Failed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "provisioningState", + "modelAsString": true + } + } + } + }, + "PeeringRegisteredAsnListResult": { + "description": "The paginated list of peering registered ASNs.", + "type": "object", + "properties": { + "value": { + "description": "The list of peering registered ASNs.", + "type": "array", + "items": { + "$ref": "#/definitions/PeeringRegisteredAsn" + } + }, + "nextLink": { + "description": "The link to fetch the next page of peering registered ASNs.", + "type": "string" + } + } + }, + "PeeringRegisteredPrefix": { + "description": "The customer's prefix that is registered by the peering service provider.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PeeringRegisteredPrefixProperties", + "description": "The properties that define a registered prefix.", + "x-ms-client-flatten": true + } + } + }, + "PeeringRegisteredPrefixProperties": { + "description": "The properties that define a registered prefix.", + "type": "object", + "properties": { + "prefix": { + "description": "The customer's prefix from which traffic originates.", + "type": "string" + }, + "prefixValidationState": { + "description": "The prefix validation state.", + "enum": [ + "None", + "Invalid", + "Verified", + "Failed", + "Pending", + "Warning", + "Unknown" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "prefixValidationState", + "modelAsString": true + } + }, + "peeringServicePrefixKey": { + "description": "The peering service prefix key that is to be shared with the customer.", + "type": "string", + "readOnly": true + }, + "errorMessage": { + "description": "The error message associated with the validation state, if any.", + "type": "string", + "readOnly": true + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "enum": [ + "Succeeded", + "Updating", + "Deleting", + "Failed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "provisioningState", + "modelAsString": true + } + } + } + }, + "PeeringRegisteredPrefixListResult": { + "description": "The paginated list of peering registered prefixes.", + "type": "object", + "properties": { + "value": { + "description": "The list of peering registered prefixes.", + "type": "array", + "items": { + "$ref": "#/definitions/PeeringRegisteredPrefix" + } + }, + "nextLink": { + "description": "The link to fetch the next page of peering registered prefixes.", + "type": "string" + } + } + }, + "ResourceTags": { + "description": "The resource tags.", + "type": "object", + "properties": { + "tags": { + "description": "Gets or sets the tags, a dictionary of descriptors arm object", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "PeeringServiceCountryListResult": { + "description": "The paginated list of peering service countries.", + "type": "object", + "properties": { + "value": { + "description": "The list of peering service countries.", + "type": "array", + "items": { + "$ref": "#/definitions/PeeringServiceCountry" + } + }, + "nextLink": { + "description": "The link to fetch the next page of peering service countries.", + "type": "string" + } + } + }, + "PeeringServiceCountry": { + "description": "The peering service country.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": {} + }, + "PeeringServiceLocationListResult": { + "description": "The paginated list of peering service locations.", + "type": "object", + "properties": { + "value": { + "description": "The list of peering service locations.", + "type": "array", + "items": { + "$ref": "#/definitions/PeeringServiceLocation" + } + }, + "nextLink": { + "description": "The link to fetch the next page of peering service locations.", + "type": "string" + } + } + }, + "PeeringServiceLocation": { + "description": "The peering service location.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PeeringServiceLocationProperties", + "description": "The properties that define a peering service location.", + "x-ms-client-flatten": true + } + } + }, + "PeeringServiceLocationProperties": { + "description": "The properties that define connectivity to the Peering Service Location.", + "type": "object", + "properties": { + "country": { + "description": "Country of the customer", + "type": "string" + }, + "state": { + "description": "State of the customer", + "type": "string" + }, + "azureRegion": { + "description": "Azure region for the location", + "type": "string" + } + } + }, + "PeeringServicePrefix": { + "description": "The peering service prefix class.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PeeringServicePrefixProperties", + "description": "Gets or sets the peering prefix properties.", + "x-ms-client-flatten": true + } + } + }, + "PeeringServicePrefixProperties": { + "description": "The peering service prefix properties class.", + "type": "object", + "properties": { + "prefix": { + "description": "The prefix from which your traffic originates.", + "type": "string" + }, + "prefixValidationState": { + "description": "The prefix validation state", + "enum": [ + "None", + "Invalid", + "Verified", + "Failed", + "Pending", + "Warning", + "Unknown" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "prefixValidationState", + "modelAsString": true + } + }, + "learnedType": { + "description": "The prefix learned type", + "enum": [ + "None", + "ViaServiceProvider", + "ViaSession" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "learnedType", + "modelAsString": true + } + }, + "errorMessage": { + "description": "The error message for validation state", + "type": "string", + "readOnly": true + }, + "events": { + "description": "The list of events for peering service prefix", + "type": "array", + "items": { + "$ref": "#/definitions/PeeringServicePrefixEvent" + }, + "readOnly": true + }, + "peeringServicePrefixKey": { + "description": "The peering service prefix key", + "type": "string" + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "enum": [ + "Succeeded", + "Updating", + "Deleting", + "Failed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "provisioningState", + "modelAsString": true + } + } + } + }, + "PeeringServicePrefixEvent": { + "description": "The details of the event associated with a prefix.", + "type": "object", + "properties": { + "eventTimestamp": { + "format": "date-time", + "description": "The timestamp of the event associated with a prefix.", + "type": "string", + "readOnly": true + }, + "eventType": { + "description": "The type of the event associated with a prefix.", + "type": "string", + "readOnly": true + }, + "eventSummary": { + "description": "The summary of the event associated with a prefix.", + "type": "string", + "readOnly": true + }, + "eventLevel": { + "description": "The level of the event associated with a prefix.", + "type": "string", + "readOnly": true + }, + "eventDescription": { + "description": "The description of the event associated with a prefix.", + "type": "string", + "readOnly": true + } + } + }, + "PeeringServicePrefixListResult": { + "description": "The paginated list of peering service prefixes.", + "type": "object", + "properties": { + "value": { + "description": "The list of peering service prefixes.", + "type": "array", + "items": { + "$ref": "#/definitions/PeeringServicePrefix" + } + }, + "nextLink": { + "description": "The link to fetch the next page of peering service prefixes.", + "type": "string" + } + } + }, + "PeeringServiceProviderListResult": { + "description": "The paginated list of peering service providers.", + "type": "object", + "properties": { + "value": { + "description": "The list of peering service providers.", + "type": "array", + "items": { + "$ref": "#/definitions/PeeringServiceProvider" + } + }, + "nextLink": { + "description": "The link to fetch the next page of peering service providers.", + "type": "string" + } + } + }, + "PeeringServiceProvider": { + "description": "PeeringService provider", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PeeringServiceProviderProperties", + "description": "The properties that define a peering service provider.", + "x-ms-client-flatten": true + } + } + }, + "PeeringServiceProviderProperties": { + "description": "The properties that define connectivity to the Peering Service Provider.", + "type": "object", + "properties": { + "serviceProviderName": { + "description": "The name of the service provider.", + "type": "string" + } + } + }, + "PeeringService": { + "description": "Peering Service", + "required": [ + "location" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "sku": { + "$ref": "#/definitions/PeeringServiceSku", + "description": "The SKU that defines the type of the peering service." + }, + "properties": { + "$ref": "#/definitions/PeeringServiceProperties", + "description": "The properties that define a peering service.", + "x-ms-client-flatten": true + }, + "location": { + "description": "The location of the resource.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "tags": { + "description": "The resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "PeeringServiceSku": { + "description": "The SKU that defines the type of the peering service.", + "type": "object", + "properties": { + "name": { + "description": "The name of the peering service SKU.", + "type": "string" + } + } + }, + "PeeringServiceProperties": { + "description": "The properties that define connectivity to the Peering Service.", + "type": "object", + "properties": { + "peeringServiceLocation": { + "description": "The PeeringServiceLocation of the Customer.", + "type": "string" + }, + "peeringServiceProvider": { + "description": "The MAPS Provider Name.", + "type": "string" + }, + "provisioningState": { + "description": "The provisioning state of the resource.", + "enum": [ + "Succeeded", + "Updating", + "Deleting", + "Failed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "provisioningState", + "modelAsString": true + } + } + } + }, + "PeeringServiceListResult": { + "description": "The paginated list of peering services.", + "type": "object", + "properties": { + "value": { + "description": "The list of peering services.", + "type": "array", + "items": { + "$ref": "#/definitions/PeeringService" + } + }, + "nextLink": { + "description": "The link to fetch the next page of peering services.", + "type": "string" + } + } + }, + "ErrorResponse": { + "description": "The error response that indicates why an operation has failed.", + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The error message.", + "type": "string", + "readOnly": true + } + } + }, + "Resource": { + "description": "The ARM resource class.", + "type": "object", + "properties": { + "name": { + "description": "The name of the resource.", + "type": "string", + "readOnly": true + }, + "id": { + "description": "The ID of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of the resource.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "The Azure subscription ID.", + "required": true, + "type": "string" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "The client API version.", + "required": true, + "type": "string" + } + }, + "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" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/peering/resource-manager/readme.cli.md b/specification/peering/resource-manager/readme.cli.md index ecf564035626..94bc2011ae2d 100644 --- a/specification/peering/resource-manager/readme.cli.md +++ b/specification/peering/resource-manager/readme.cli.md @@ -24,9 +24,63 @@ cli: "/properties/direct": "Direct*/" "/properties/peercontactinfo": "*/" - test-setup: - - name: Create a peering service - - name: Create or update a prefix for the peering service - - name: Delete a prefix associated with the peering service - - name: Delete a peering service + test: + - name: /PeerAsns/put/Create a peer ASN + disabled: true + - name: /Peerings/put/Create an exchange peering + disabled: true + - name: /Peerings/put/Create a peering with exchange route server + disabled: true + - name: /Peerings/put/Create a direct peering + disabled: true + - name: /PeeringServices/put/Create a peering service + - name: /RegisteredAsns/put/Create or update a registered ASN for the peering + disabled: true + - name: /Prefixes/put/Create or update a prefix for the peering service + disabled: true + - name: /RegisteredPrefixes/put/Create or update a registered prefix for the peering + disabled: true + - name: /RegisteredPrefixes/get/Get a registered prefix associated with the peering + disabled: true + - name: /Prefixes/get/Get a prefix associated with the peering service + disabled: true + - name: /RegisteredAsns/get/Get a registered ASN associated with the peering + disabled: true + - name: /Prefixes/get/List all the prefixes associated with the peering service + - name: /RegisteredPrefixes/get/List all the registered prefixes associated with the peering + disabled: true + - name: /PeeringServices/get/Get a peering service + - name: /RegisteredAsns/get/List all the registered ASNs associated with the peering + disabled: true + - name: /Peerings/get/Get a peering + disabled: true + - name: /PeeringServices/get/List peering services in a resource group + - name: /Peerings/get/List peerings in a resource group + - name: /PeerAsns/get/Get a peer ASN + - name: /PeeringServiceCountries/get/List peering service countries + - name: /PeeringServiceLocations/get/List peering service locations + - name: /PeeringServiceProviders/get/List peering service providers + - name: /PeeringLocations/get/List exchange peering locations + - name: /PeeringLocations/get/List direct peering locations + - name: /PeeringServices/get/List peering services in a subscription + - name: /LegacyPeerings/get/List legacy peerings + - name: /PeerAsns/get/List peer ASNs in a subscription + - name: /Peerings/get/List peerings in a subscription + - name: /Operations/get/List peering operations + - name: /PeeringServices/patch/Update peering service tags + disabled: true + - name: /Peerings/patch/Update peering tags + disabled: true + - name: //post/Check if peering service provider is available in customer location + disabled: true + - name: /RegisteredPrefixes/delete/Deletes a registered prefix associated with the peering + disabled: true + - name: /Prefixes/delete/Delete a prefix associated with the peering service + disabled: true + - name: /RegisteredAsns/delete/Deletes a registered ASN associated with the peering + disabled: true + - name: /PeeringServices/delete/Delete a peering service + - name: /Peerings/delete/Delete a peering + disabled: true + - name: /PeerAsns/delete/Delete a peer ASN ``` diff --git a/specification/peering/resource-manager/readme.go.md b/specification/peering/resource-manager/readme.go.md index 727aa35a5096..f3871b5269e6 100644 --- a/specification/peering/resource-manager/readme.go.md +++ b/specification/peering/resource-manager/readme.go.md @@ -12,6 +12,11 @@ go: ### Go multi-api +``` yaml $(go) && $(multiapi) +batch: + - tag: package-2020-01-01-preview +``` +or ``` yaml $(go) && $(multiapi) batch: - tag: package-2019-09-01-preview @@ -21,6 +26,15 @@ or batch: - tag: package-2019-08-01-preview ``` +### Tag: package-2020-01-01-preview and go + +These settings apply only when `--tag=package-2020-01-01-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2020-01-01-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2020-01-01-preview/$(namespace) +``` + ### Tag: package-2019-09-01-preview and go These settings apply only when `--tag=package-2019-09-01-preview --go` is specified on the command line. diff --git a/specification/peering/resource-manager/readme.java.md b/specification/peering/resource-manager/readme.java.md index 0bcc7c2af9f6..7a5bd751211e 100644 --- a/specification/peering/resource-manager/readme.java.md +++ b/specification/peering/resource-manager/readme.java.md @@ -14,6 +14,11 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-peering ### Java multi-api +``` yaml $(java) && $(multiapi) +batch: + - tag: package-2020-01-01-preview +``` +or ``` yaml $(java) && $(multiapi) batch: - tag: package-2019-09-01-preview @@ -24,6 +29,19 @@ batch: - tag: package-2019-08-01-preview ``` +### Tag: package-2020-01-01-preview and java + +These settings apply only when `--tag=package-2020-01-01-preview --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2020-01-01-preview' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.peering.v2020_01_01_preview + output-folder: $(azure-libraries-for-java-folder)/sdk/peering/mgmt-v2020_01_01_preview +regenerate-manager: true +generate-interface: true +``` + ### Tag: package-2019-09-01-preview and java These settings apply only when `--tag=package-2019-09-01-preview --java` is specified on the command line. @@ -31,8 +49,8 @@ Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2020-01-01-preview' && $(ruby) +namespace: "Azure::Peering::Mgmt::V2020_01_01_preview" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_peering/lib +``` + ### Tag: package-2019-09-01-preview and ruby These settings apply only when `--tag=package-2019-09-01-preview --ruby` is specified on the command line. diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_FilterAndAggregateOnly.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_FilterAndAggregateOnly.json new file mode 100644 index 000000000000..1b2e324f6a1f --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_FilterAndAggregateOnly.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2019-10-01", + "$from": "2018-02-05T18:00:00Z", + "$filter": "PolicyDefinitionAction eq 'deny'", + "$apply": "aggregate($count as NumDenyEvents)" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 1, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "NumDenyEvents": 40 + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_FilterAndGroupByWithAggregate.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_FilterAndGroupByWithAggregate.json new file mode 100644 index 000000000000..628d3b5bc212 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_FilterAndGroupByWithAggregate.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2019-10-01", + "$from": "2018-02-05T18:00:00Z", + "$filter": "PolicyDefinitionAction eq 'audit' or PolicyDefinitionAction eq 'deny'", + "$apply": "groupby((PolicyAssignmentId, PolicyDefinitionId, PolicyDefinitionAction, ResourceId), aggregate($count as NumEvents))", + "$top": 2 + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/3f3c4330183b4e218fe6fd29", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionAction": "audit", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/microsoft.servicefabric/clusters/myCluster/applications/resourcescachemonitor/services/myService", + "NumEvents": 1 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyassignments/d6be6bb37e5f4333baa95c2a", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/5948d091-78b7-4d3b-a404-cc6a0329b0c6", + "policyDefinitionAction": "audit", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/microsoft.servicefabric/clusters/myCluster/applications/resourcescachemonitor/services/myService", + "NumEvents": 1 + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_FilterAndGroupByWithoutAggregate.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_FilterAndGroupByWithoutAggregate.json new file mode 100644 index 000000000000..dab1660140be --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_FilterAndGroupByWithoutAggregate.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2019-10-01", + "$from": "2018-01-05T18:00:00Z", + "$filter": "PolicyDefinitionAction ne 'audit' and PolicyDefinitionAction ne 'append'", + "$apply": "groupby((PolicyAssignmentId, PolicyDefinitionId, PolicyDefinitionAction, ResourceId))", + "$top": 2 + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/5bc427ca-0089-4d0d-85bd-e98d1e40b3bf/providers/microsoft.authorization/policyassignments/storageaccountsku", + "policyDefinitionId": "/providers/microsoft.authorization/policydefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1", + "policyDefinitionAction": "deny", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/5bc427ca-0089-4d0d-85bd-e98d1e40b3bf/providers/microsoft.storage/storageaccounts/7d528d3a" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/microsoft.authorization/policyassignments/da43b50031bf4bce84584faa", + "policyDefinitionId": "/providers/microsoft.authorization/policydefinitions/1e30110a-5ceb-460c-a204-c1c3969c6d62", + "policyDefinitionAction": "deny", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/microsoft.storage/storageaccounts/mysa1" + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_FilterAndMultipleGroups.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_FilterAndMultipleGroups.json new file mode 100644 index 000000000000..9d78481c5c29 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_FilterAndMultipleGroups.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2019-10-01", + "$from": "2018-01-01T00:00:00Z", + "$filter": "PolicyDefinitionAction eq 'deny'", + "$apply": "groupby((PolicyAssignmentId, PolicyDefinitionId, ResourceId))/groupby((PolicyAssignmentId, PolicyDefinitionId), aggregate($count as NumDeniedResources))", + "$orderby": "NumDeniedResources desc", + "$top": 10 + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 6, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup1/providers/microsoft.authorization/policyassignments/0591f497c35344fcbaf7a393", + "policyDefinitionId": "/providers/microsoft.authorization/policydefinitions/e56962a6-4747-49cd-b67b-bf8b01975c4c", + "NumDeniedResources": 3 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup1/providers/microsoft.authorization/policyassignments/myassignment1", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/mydefinition1", + "NumDeniedResources": 2 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup1/providers/microsoft.authorization/policyassignments/myassignment1", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/mydefinition2", + "NumDeniedResources": 2 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/5bc427ca-0089-4d0d-85bd-e98d1e40b3bf/providers/microsoft.authorization/policyassignments/storageaccountsku", + "policyDefinitionId": "/providers/microsoft.authorization/policydefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1", + "NumDeniedResources": 1 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup2/providers/microsoft.authorization/policyassignments/da43b50031bf4bce84584faa", + "policyDefinitionId": "/providers/microsoft.authorization/policydefinitions/1e30110a-5ceb-460c-a204-c1c3969c6d62", + "NumDeniedResources": 1 + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup2/providers/microsoft.authorization/policyassignments/myassignment2", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policydefinitions/mydefinition3", + "NumDeniedResources": 1 + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_GetMetadata.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_GetMetadata.json new file mode 100644 index 000000000000..8a83fb958656 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_GetMetadata.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "scope": "subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "headers": { + "content-type": "application/xml" + }, + "body": " Org.OData.Capabilities.V1.ConformanceLevelType/Minimal application/json;odata.metadata=minimal;IEEE754Compatible=false;odata.streaming=true application/json;odata.metadata=none;IEEE754Compatible=false;odata.streaming=true " + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryManagementGroupScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryManagementGroupScope.json new file mode 100644 index 000000000000..ed8d1f600cca --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryManagementGroupScope.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "policyEventsResource": "default", + "managementGroupsNamespace": "Microsoft.Management", + "managementGroupName": "myManagementGroup", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-07T22:19:18.8896095Z", + "resourceId": "/subscriptions/fff8dfdb-fff3-fff0-fff4-fffdcbe6b2ef/resourceGroups/myrg/providers/Microsoft.Compute/virtualMachines/myvm1/extensions/DAExtension", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/1ef5d536aec743a0aa801c1a", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/022d9357-5a90-46f7-9554-21d30ce4c32d", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff8dfdb-fff3-fff0-fff4-fffdcbe6b2ef", + "resourceType": "/Microsoft.Compute/virtualMachines/extensions", + "resourceLocation": "westeurope", + "resourceGroup": "myrg", + "resourceTags": "tbd", + "policyAssignmentName": "1ef5d536aec743a0aa801c1a", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "policyDefinitionName": "022d9357-5a90-46f7-9554-21d30ce4c32d", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policySetDefinitions/335cefd2-ab16-430f-b364-974a170eb1d5", + "policySetDefinitionName": "335cefd2-ab16-430f-b364-974a170eb1d5", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": "15521232277412542086", + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fff3e452-fff2-fff1-fff8-fff12618f1b8" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-07T22:19:18.8896095Z", + "resourceId": "/subscriptions/fff8dfdb-fff3-fff0-fff4-fffdcbe6b2ef/resourceGroups/myrg/providers/Microsoft.Compute/virtualMachines/myvm1/extensions/DAExtension", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/95816fce53454b15a7ed803d", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/a2c0414b-82e4-459d-97d5-94c79a89232c", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff8dfdb-fff3-fff0-fff4-fffdcbe6b2ef", + "resourceType": "/Microsoft.Compute/virtualMachines/extensions", + "resourceLocation": "westeurope", + "resourceGroup": "myrg", + "resourceTags": "tbd", + "policyAssignmentName": "95816fce53454b15a7ed803d", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"allowedLocations\":{\"value\":[\"eastus\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "policyDefinitionName": "a2c0414b-82e4-459d-97d5-94c79a89232c", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "", + "policySetDefinitionName": "", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": "", + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fff3e452-fff2-fff1-fff8-fff12618f1b8" + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryNestedResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryNestedResourceScope.json new file mode 100644 index 000000000000..f52bc3c69f3d --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryNestedResourceScope.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "policyEventsResource": "default", + "resourceId": "subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/microsoft.servicefabric/clusters/myCluster/applications/myApplication/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/microsoft.servicefabric/clusters/myCluster/applications/myApplication/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-07T20:43:04.6971328Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/ec62f9b2a454487296f2ccd4", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/72c0c41a-c752-4bc0-9c61-0d6adc567066", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.ServiceFabric/clusters/applications", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "ec62f9b2a454487296f2ccd4", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"ALLOWEDRESOURCEGROUPS_1\":{\"value\":[\"rg1\",\"rg2\"]},\"ALLOWEDRESOURCEGROUPS_2\":{\"value\":[\"myrg3\",\"myrg4\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "policyDefinitionName": "72c0c41a-c752-4bc0-9c61-0d6adc567066", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policySetDefinitions/00b36c66-612b-44e2-9f8e-b758296d40fe", + "policySetDefinitionName": "00b36c66-612b-44e2-9f8e-b758296d40fe", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": "181565554491747128", + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fffdfc0f-fff5-fff0-fff3-fff1a968dcc6" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/microsoft.servicefabric/clusters/myCluster/applications/myApplication/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-07T20:43:04.6971328Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/ec62f9b2a454487296f2ccd4", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/72c0c41a-c752-4bc0-9c61-0d6adc567066", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.ServiceFabric/clusters/applications", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "ec62f9b2a454487296f2ccd4", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"ALLOWEDRESOURCEGROUPS_1\":{\"value\":[\"rg1\",\"rg2\"]},\"ALLOWEDRESOURCEGROUPS_2\":{\"value\":[\"myrg3\",\"myrg4\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "policyDefinitionName": "72c0c41a-c752-4bc0-9c61-0d6adc567066", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policySetDefinitions/00b36c66-612b-44e2-9f8e-b758296d40fe", + "policySetDefinitionName": "00b36c66-612b-44e2-9f8e-b758296d40fe", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": "624540685646900425", + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fffdfc0f-fff5-fff0-fff3-fff1a968dcc6" + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceGroupLevelPolicyAssignmentScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceGroupLevelPolicyAssignmentScope.json new file mode 100644 index 000000000000..9167657ccb13 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceGroupLevelPolicyAssignmentScope.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceGroupName": "myResourceGroup", + "authorizationNamespace": "Microsoft.Authorization", + "policyAssignmentName": "myPolicyAssignment", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyAssignment/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyAssignment/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-08T00:07:16.2804863Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/microsoft.operationalinsights/workspaces/defaultworkspace-fffedd8f-ffff-fffd-fffd-fffed2f84852-eus", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyAssignment", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyDefinitions/myPolicyDefinition", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/microsoft.operationalinsights/workspaces", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "myPolicyAssignment", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": null, + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup", + "policyDefinitionName": "myPolicyAssignment", + "policyDefinitionAction": "deny", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fff2f355-fff2-fffc-fffb-fff1639dff94" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyAssignment/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-08T00:06:08.4302267Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/microsoft.operationalinsights/workspaces/defaultworkspace-fffedd8f-ffff-fffd-fffd-fffed2f84852-eus", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.Authorization/policyAssignments/myPolicyAssignment", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/microsoft.authorization/policyDefinitions/myPolicyDefinition", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/microsoft.operationalinsights/workspaces", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "myPolicyAssignment", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": null, + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup", + "policyDefinitionName": "myPolicyAssignment", + "policyDefinitionAction": "deny", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": null, + "policySetDefinitionName": null, + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fff2f355-fff2-fffc-fffb-fff1639dff94" + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceGroupScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceGroupScope.json new file mode 100644 index 000000000000..ad63532b63fd --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceGroupScope.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-07T20:43:04.6971328Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/ec62f9b2a454487296f2ccd4", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/72c0c41a-c752-4bc0-9c61-0d6adc567066", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.ServiceFabric/clusters/applications", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "ec62f9b2a454487296f2ccd4", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"ALLOWEDRESOURCEGROUPS_1\":{\"value\":[\"rg1\",\"rg2\"]},\"ALLOWEDRESOURCEGROUPS_2\":{\"value\":[\"myrg3\",\"myrg4\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "policyDefinitionName": "72c0c41a-c752-4bc0-9c61-0d6adc567066", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policySetDefinitions/00b36c66-612b-44e2-9f8e-b758296d40fe", + "policySetDefinitionName": "00b36c66-612b-44e2-9f8e-b758296d40fe", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": "181565554491747128", + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fffdfc0f-fff5-fff0-fff3-fff1a968dcc6" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-07T20:43:04.6971328Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/ec62f9b2a454487296f2ccd4", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/72c0c41a-c752-4bc0-9c61-0d6adc567066", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.ServiceFabric/clusters/applications", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "ec62f9b2a454487296f2ccd4", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"ALLOWEDRESOURCEGROUPS_1\":{\"value\":[\"rg1\",\"rg2\"]},\"ALLOWEDRESOURCEGROUPS_2\":{\"value\":[\"myrg3\",\"myrg4\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "policyDefinitionName": "72c0c41a-c752-4bc0-9c61-0d6adc567066", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policySetDefinitions/00b36c66-612b-44e2-9f8e-b758296d40fe", + "policySetDefinitionName": "00b36c66-612b-44e2-9f8e-b758296d40fe", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": "624540685646900425", + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fffdfc0f-fff5-fff0-fff3-fff1a968dcc6" + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceScope.json new file mode 100644 index 000000000000..e6156b11551c --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceScope.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "policyEventsResource": "default", + "resourceId": "subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourceGroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-07T15:14:39.8473851Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName", + "policyAssignmentId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/ec8f9645-8ecb-4abb-9c0b-5292f19d4003", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/201ea587-7c90-41c3-910f-c280ae01cfd6", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.ClassicCompute/domainNames", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "ec8f9645-8ecb-4abb-9c0b-5292f19d4003", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "policyDefinitionName": "201ea587-7c90-41c3-910f-c280ae01cfd6", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Authorization/policySetDefinitions/1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "policySetDefinitionName": "1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fff890fa-fff0-fff3-fff9-fffd7653f078" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-07T15:14:39.5842458Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName", + "policyAssignmentId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/d15545b8-ff50-409a-a6e3-5bd5cc954003", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/201ea587-7c90-41c3-910f-c280ae01cfd6", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.ClassicCompute/domainNames", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "d15545b8-ff50-409a-a6e3-5bd5cc954003", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "policyDefinitionName": "201ea587-7c90-41c3-910f-c280ae01cfd6", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Authorization/policySetDefinitions/1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "policySetDefinitionName": "1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fff890fa-fff0-fff3-fff9-fffd7653f078" + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceScopeExpandComponents.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceScopeExpandComponents.json new file mode 100644 index 000000000000..19f52e250680 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceScopeExpandComponents.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "policyEventsResource": "default", + "resourceId": "subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/Vaults/myKVName", + "api-version": "2019-10-01", + "$filter": "policyAssignmentId eq '/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/providers/microsoft.authorization/policyassignments/560050f83dbb4a24974323f8'", + "$expand": "components" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/resourcegroups/myResourceGroup/providers/microsoft.keyvault/vaults/myKVName/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 1, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/resourcegroups/myResourceGroup/providers/microsoft.keyvault/vaults/myKVName/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2020-02-21T19:42:08.3252921Z", + "resourceId": "/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/resourcegroups/myResourceGroup/providers/microsoft.keyvault/vaults/myKVName", + "policyAssignmentId": "/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/providers/microsoft.authorization/policyassignments/560050f83dbb4a24974323f8", + "policyDefinitionId": "/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/providers/microsoft.authorization/policydefinitions/ab108bc4-32df-4677-8b38-fa8b2905df59", + "effectiveParameters": "", + "isCompliant": false, + "subscriptionId": "e78961ba-36fe-4739-9212-e3031b4c8db7", + "resourceType": "Microsoft.KeyVault/vaults", + "resourceLocation": "westcentralus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "560050f83dbb4a24974323f8", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "", + "policyAssignmentScope": "/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7", + "policyDefinitionName": "ab108bc4-32df-4677-8b38-fa8b2905df59", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "", + "policySetDefinitionName": "", + "policySetDefinitionOwner": "", + "policySetDefinitionCategory": "", + "policySetDefinitionParameters": "", + "managementGroupIds": "PolicyUIMG,AzGovTest5,72f988bf-86f1-41af-91ab-2d7cd011db47", + "policyDefinitionReferenceId": "", + "complianceState": "NonCompliant", + "tenantId": "", + "principalOid": "", + "components": [ + { + "id": "cert-RSA-cert-3", + "type": "Certificate", + "name": "cert-RSA-cert-3", + "timestamp": "2020-02-21T17:45:23.0367Z", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "principalOid": "0d81b461-6bb0-4909-a102-d51803a7d275", + "policyDefinitionAction": "audit" + }, + { + "id": "cert-RSA-cert-2", + "type": "Certificate", + "name": "cert-RSA-cert-2", + "timestamp": "2020-02-21T17:45:22.7682778Z", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "principalOid": "0d81b461-6bb0-4909-a102-d51803a7d275", + "policyDefinitionAction": "audit" + } + ] + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceScopeExpandComponentsGroupByWithAggregate.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceScopeExpandComponentsGroupByWithAggregate.json new file mode 100644 index 000000000000..f1f95b95ce8b --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QueryResourceScopeExpandComponentsGroupByWithAggregate.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "policyEventsResource": "default", + "resourceId": "subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/Vaults/myKVName", + "api-version": "2019-10-01", + "$filter": "policyAssignmentId eq '/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/providers/microsoft.authorization/policyassignments/560050f83dbb4a24974323f8'", + "$expand": "components($apply=groupby((tenantId, principalOid, policyDefinitionAction), aggregate($count as totalActions)))" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/resourcegroups/myResourceGroup/providers/microsoft.keyvault/vaults/myKVName/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 1, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/resourcegroups/myResourceGroup/providers/microsoft.keyvault/vaults/myKVName/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2020-02-21T19:42:08.3252921Z", + "resourceId": "/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/resourcegroups/myResourceGroup/providers/microsoft.keyvault/vaults/myKVName", + "policyAssignmentId": "/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/providers/microsoft.authorization/policyassignments/560050f83dbb4a24974323f8", + "policyDefinitionId": "/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/providers/microsoft.authorization/policydefinitions/ab108bc4-32df-4677-8b38-fa8b2905df59", + "effectiveParameters": "", + "isCompliant": false, + "subscriptionId": "e78961ba-36fe-4739-9212-e3031b4c8db7", + "resourceType": "Microsoft.KeyVault/vaults", + "resourceLocation": "westcentralus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "560050f83dbb4a24974323f8", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "", + "policyAssignmentScope": "/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7", + "policyDefinitionName": "ab108bc4-32df-4677-8b38-fa8b2905df59", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "", + "policySetDefinitionName": "", + "policySetDefinitionOwner": "", + "policySetDefinitionCategory": "", + "policySetDefinitionParameters": "", + "managementGroupIds": "PolicyUIMG,AzGovTest5,72f988bf-86f1-41af-91ab-2d7cd011db47", + "policyDefinitionReferenceId": "", + "complianceState": "NonCompliant", + "tenantId": "", + "principalOid": "", + "components": [ + { + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "principalOid": "0d81b461-6bb0-4909-a102-d51803a7d275", + "policyDefinitionAction": "audit", + "totalActions": 6 + } + ] + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelNestedResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelNestedResourceScope.json new file mode 100644 index 000000000000..56aee0d55c7c --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelNestedResourceScope.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "policyEventsResource": "default", + "resourceId": "subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResource/someNestedResourceType/someNestedResource", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResource/someNestedResourceType/someNestedResource/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResource/someNestedResourceType/someNestedResource/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-07T20:43:04.6971328Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResource/someNestedResourceType/someNestedResource", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/ec62f9b2a454487296f2ccd4", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/72c0c41a-c752-4bc0-9c61-0d6adc567066", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.SomeNamespace/someResourceType/someNestedResourceType", + "resourceLocation": "eastus", + "resourceGroup": "", + "resourceTags": "tbd", + "policyAssignmentName": "ec62f9b2a454487296f2ccd4", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"ALLOWEDRESOURCEGROUPS_1\":{\"value\":[\"rg1\",\"rg2\"]},\"ALLOWEDRESOURCEGROUPS_2\":{\"value\":[\"myrg3\",\"myrg4\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "policyDefinitionName": "72c0c41a-c752-4bc0-9c61-0d6adc567066", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policySetDefinitions/00b36c66-612b-44e2-9f8e-b758296d40fe", + "policySetDefinitionName": "00b36c66-612b-44e2-9f8e-b758296d40fe", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": "181565554491747128", + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fffdfc0f-fff5-fff0-fff3-fff1a968dcc6" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResource/someNestedResourceType/someNestedResource/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-07T20:43:04.6971328Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResource/someNestedResourceType/someNestedResource", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/ec62f9b2a454487296f2ccd4", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/72c0c41a-c752-4bc0-9c61-0d6adc567066", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.SomeNamespace/someResourceType/someNestedResourceType", + "resourceLocation": "eastus", + "resourceGroup": "", + "resourceTags": "tbd", + "policyAssignmentName": "ec62f9b2a454487296f2ccd4", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"ALLOWEDRESOURCEGROUPS_1\":{\"value\":[\"rg1\",\"rg2\"]},\"ALLOWEDRESOURCEGROUPS_2\":{\"value\":[\"myrg3\",\"myrg4\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "policyDefinitionName": "72c0c41a-c752-4bc0-9c61-0d6adc567066", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policySetDefinitions/00b36c66-612b-44e2-9f8e-b758296d40fe", + "policySetDefinitionName": "00b36c66-612b-44e2-9f8e-b758296d40fe", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": "624540685646900425", + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fffdfc0f-fff5-fff0-fff3-fff1a968dcc6" + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelPolicyAssignmentScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelPolicyAssignmentScope.json new file mode 100644 index 000000000000..92e8f127c730 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelPolicyAssignmentScope.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "authorizationNamespace": "Microsoft.Authorization", + "policyAssignmentName": "ec8f9645-8ecb-4abb-9c0b-5292f19d4003", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/ec8f9645-8ecb-4abb-9c0b-5292f19d4003/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/ec8f9645-8ecb-4abb-9c0b-5292f19d4003/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-08T19:59:38.6401747Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/ec8f9645-8ecb-4abb-9c0b-5292f19d4003", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/201ea587-7c90-41c3-910f-c280ae01cfd6", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.ClassicCompute/domainNames", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "ec8f9645-8ecb-4abb-9c0b-5292f19d4003", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "policyDefinitionName": "201ea587-7c90-41c3-910f-c280ae01cfd6", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Authorization/policySetDefinitions/1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "policySetDefinitionName": "1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fff890fa-fff0-fff3-fff9-fffd7653f078" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/ec8f9645-8ecb-4abb-9c0b-5292f19d4003/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-08T19:59:34.2017762Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/ec8f9645-8ecb-4abb-9c0b-5292f19d4003", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/9daedab3-fb2d-461e-b861-71790eead4f6", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.ClassicCompute/domainNames", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "ec8f9645-8ecb-4abb-9c0b-5292f19d4003", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "policyDefinitionName": "9daedab3-fb2d-461e-b861-71790eead4f6", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Authorization/policySetDefinitions/1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "policySetDefinitionName": "1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fff890fa-fff0-fff3-fff9-fffd7653f078" + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelPolicyDefinitionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelPolicyDefinitionScope.json new file mode 100644 index 000000000000..938bf4e2eb08 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelPolicyDefinitionScope.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "authorizationNamespace": "Microsoft.Authorization", + "policyDefinitionName": "24813039-7534-408a-9842-eb99f45721b1", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-08T19:58:11.590596Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName/deploymentSlots/production/state/start", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/f4cc58b7db524a9799381531", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.ClassicCompute/domainNames/deploymentSlots/state", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "f4cc58b7db524a9799381531", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"TAGNAME_1\":{\"value\":\"NA\"}}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "policyDefinitionName": "24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policySetDefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "policySetDefinitionName": "12b58873-e0f8-4b95-936c-86cbe7c9d697", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": "14799174781370023846", + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fff890fa-fff0-fff3-fff9-fffd7653f078" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-08T19:58:11.590596Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName/deploymentSlots/production/state/start", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/f4cc58b7db524a9799381531", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.ClassicCompute/domainNames/deploymentSlots/state", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "f4cc58b7db524a9799381531", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"TAGNAME_1\":{\"value\":\"NA\"}}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "policyDefinitionName": "24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policySetDefinitions/12b58873-e0f8-4b95-936c-86cbe7c9d697", + "policySetDefinitionName": "12b58873-e0f8-4b95-936c-86cbe7c9d697", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "mymg,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": "1679708035638239273", + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fff890fa-fff0-fff3-fff9-fffd7653f078" + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelPolicySetDefinitionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelPolicySetDefinitionScope.json new file mode 100644 index 000000000000..987f254b2586 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelPolicySetDefinitionScope.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "authorizationNamespace": "Microsoft.Authorization", + "policySetDefinitionName": "3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policySetDefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policySetDefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-08T19:49:32.9539023Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName/serviceCertificates/sha1-FFFBDAF1FFFF109FFFD95FFFC9B0FFFD6F264FFF", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/3f3c4330183b4e218fe6fd29", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.ClassicCompute/domainNames/serviceCertificates", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "3f3c4330183b4e218fe6fd29", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "policyDefinitionName": "24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policySetDefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "policySetDefinitionName": "3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fff890fa-fff0-fff3-fff9-fffd7653f078" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policySetDefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-08T19:49:32.9498186Z", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomainName/serviceCertificates/sha1-FFF36C1CFFF4BEA57FFFEFCFFF17B9F81B710FFF", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/3f3c4330183b4e218fe6fd29", + "policyDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyDefinitions/24813039-7534-408a-9842-eb99f45721b1", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceType": "/Microsoft.ClassicCompute/domainNames/serviceCertificates", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "3f3c4330183b4e218fe6fd29", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852", + "policyDefinitionName": "24813039-7534-408a-9842-eb99f45721b1", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policySetDefinitions/3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "policySetDefinitionName": "3e3807c1-65c9-49e0-a406-82d8ae3e338c", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fff890fa-fff0-fff3-fff9-fffd7653f078" + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelResourceScope.json new file mode 100644 index 000000000000..e0b15863521a --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionLevelResourceScope.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "policyEventsResource": "default", + "resourceId": "subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-07T15:14:39.8473851Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName", + "policyAssignmentId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/ec8f9645-8ecb-4abb-9c0b-5292f19d4003", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/201ea587-7c90-41c3-910f-c280ae01cfd6", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.SomeNamespace/someResourceType", + "resourceLocation": "eastus", + "resourceGroup": "", + "resourceTags": "tbd", + "policyAssignmentName": "ec8f9645-8ecb-4abb-9c0b-5292f19d4003", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "policyDefinitionName": "201ea587-7c90-41c3-910f-c280ae01cfd6", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Authorization/policySetDefinitions/1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "policySetDefinitionName": "1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fff890fa-fff0-fff3-fff9-fffd7653f078" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-07T15:14:39.5842458Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.SomeNamespace/someResourceType/someResourceName", + "policyAssignmentId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.Authorization/policyAssignments/d15545b8-ff50-409a-a6e3-5bd5cc954003", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/201ea587-7c90-41c3-910f-c280ae01cfd6", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.SomeNamespace/someResourceType", + "resourceLocation": "eastus", + "resourceGroup": "", + "resourceTags": "tbd", + "policyAssignmentName": "d15545b8-ff50-409a-a6e3-5bd5cc954003", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{}", + "policyAssignmentScope": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "policyDefinitionName": "201ea587-7c90-41c3-910f-c280ae01cfd6", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Authorization/policySetDefinitions/1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "policySetDefinitionName": "1f3afdf9-d0c9-4c3d-847f-89da613e70a8", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": null, + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fff890fa-fff0-fff3-fff9-fffd7653f078" + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionScope.json new file mode 100644 index 000000000000..8799053fc6fc --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_QuerySubscriptionScope.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-07T20:43:04.6971328Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/ec62f9b2a454487296f2ccd4", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/72c0c41a-c752-4bc0-9c61-0d6adc567066", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.ServiceFabric/clusters/applications", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "ec62f9b2a454487296f2ccd4", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"ALLOWEDRESOURCEGROUPS_1\":{\"value\":[\"rg1\",\"rg2\"]},\"ALLOWEDRESOURCEGROUPS_2\":{\"value\":[\"myrg3\",\"myrg4\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "policyDefinitionName": "72c0c41a-c752-4bc0-9c61-0d6adc567066", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policySetDefinitions/00b36c66-612b-44e2-9f8e-b758296d40fe", + "policySetDefinitionName": "00b36c66-612b-44e2-9f8e-b758296d40fe", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": "181565554491747128", + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fffdfc0f-fff5-fff0-fff3-fff1a968dcc6" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-07T20:43:04.6971328Z", + "resourceId": "/subscriptions/fff10b27-fff3-fff5-fff8-fffbe01e86a5/resourcegroups/myResourceGroup/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApplication", + "policyAssignmentId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyAssignments/ec62f9b2a454487296f2ccd4", + "policyDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policyDefinitions/72c0c41a-c752-4bc0-9c61-0d6adc567066", + "effectiveParameters": null, + "isCompliant": false, + "subscriptionId": "fff10b27-fff3-fff5-fff8-fffbe01e86a5", + "resourceType": "/Microsoft.ServiceFabric/clusters/applications", + "resourceLocation": "eastus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "ec62f9b2a454487296f2ccd4", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "{\"ALLOWEDRESOURCEGROUPS_1\":{\"value\":[\"rg1\",\"rg2\"]},\"ALLOWEDRESOURCEGROUPS_2\":{\"value\":[\"myrg3\",\"myrg4\"]}}", + "policyAssignmentScope": "/providers/Microsoft.Management/managementGroups/myManagementGroup", + "policyDefinitionName": "72c0c41a-c752-4bc0-9c61-0d6adc567066", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "/providers/Microsoft.Management/managementGroups/myManagementGroup/providers/Microsoft.Authorization/policySetDefinitions/00b36c66-612b-44e2-9f8e-b758296d40fe", + "policySetDefinitionName": "00b36c66-612b-44e2-9f8e-b758296d40fe", + "policySetDefinitionOwner": null, + "policySetDefinitionCategory": null, + "policySetDefinitionParameters": null, + "managementGroupIds": "myManagementGroup,fff988bf-fff1-ffff-fffb-fffcd011db47", + "policyDefinitionReferenceId": "624540685646900425", + "tenantId": "fff988bf-fff1-ffff-fffb-fffcd011db47", + "principalOid": "fffdfc0f-fff5-fff0-fff3-fff1a968dcc6" + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_TimeRangeSortSelectTop.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_TimeRangeSortSelectTop.json new file mode 100644 index 000000000000..f10a6d179cac --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyEvents_TimeRangeSortSelectTop.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "policyEventsResource": "default", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2019-10-01", + "$from": "2018-02-05T18:00:00Z", + "$to": "2018-02-06T18:00:00Z", + "$orderby": "Timestamp desc, PolicyAssignmentId asc, SubscriptionId asc, ResourceGroup asc, ResourceId", + "$select": "Timestamp, PolicyAssignmentId, PolicyDefinitionId, SubscriptionId, ResourceGroup, ResourceId", + "$top": 2 + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default", + "@odata.count": 2, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-05T22:34:02.3475017Z", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/89b27f38-e9e4-4468-ab81-801c84b8c017", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/201ea587-7c90-41c3-910f-c280ae01cfd6", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceGroup": "myResourceGroup", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomain" + }, + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.PolicyInsights/policyEvents/$metadata#default/$entity", + "timestamp": "2018-02-05T22:34:01.6135357Z", + "policyAssignmentId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/providers/Microsoft.Authorization/policyAssignments/Enable Monitoring in Azure Security Center", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/201ea587-7c90-41c3-910f-c280ae01cfd6", + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceGroup": "myResourceGroup", + "resourceId": "/subscriptions/fffedd8f-ffff-fffd-fffd-fffed2f84852/resourcegroups/myResourceGroup/providers/Microsoft.ClassicCompute/domainNames/myDomain" + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryManagementGroupScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryManagementGroupScope.json index 30027d5f02e2..bafd79a9d12b 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryManagementGroupScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryManagementGroupScope.json @@ -42,7 +42,10 @@ "complianceState": "NonCompliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": "2.0.1", + "policyAssignmentVersion": "1.0.0" }, { "@odata.id": null, @@ -75,7 +78,10 @@ "complianceState": "Compliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": null, + "policyAssignmentVersion": "1.0.0" } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryNestedResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryNestedResourceScope.json index 49c4b290456e..2b68d81e815e 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryNestedResourceScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryNestedResourceScope.json @@ -41,7 +41,10 @@ "complianceState": "NonCompliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": null, + "policyAssignmentVersion": "1.0.0" }, { "@odata.id": null, @@ -74,7 +77,10 @@ "complianceState": "Compliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": null, + "policyAssignmentVersion": "1.0.0" } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceGroupLevelPolicyAssignmentScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceGroupLevelPolicyAssignmentScope.json index 2737f3ed5ac2..344529acf5ef 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceGroupLevelPolicyAssignmentScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceGroupLevelPolicyAssignmentScope.json @@ -44,7 +44,10 @@ "complianceState": "NonCompliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": null, + "policyAssignmentVersion": "1.0.0" }, { "@odata.id": null, @@ -77,7 +80,10 @@ "complianceState": "Compliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": null, + "policyAssignmentVersion": "1.0.0" } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceGroupScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceGroupScope.json index 247f76fd9eaf..a9c1bb25cd24 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceGroupScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceGroupScope.json @@ -42,7 +42,10 @@ "complianceState": "NonCompliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": "2.0.1", + "policyAssignmentVersion": "1.0.0" }, { "@odata.id": null, @@ -75,7 +78,10 @@ "complianceState": "Compliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": "2.0.1", + "policyAssignmentVersion": "1.0.0" } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScope.json index 10885540081a..fe1925455bd9 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScope.json @@ -41,7 +41,10 @@ "complianceState": "NonCompliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": null, + "policyAssignmentVersion": "1.0.0" }, { "@odata.id": null, @@ -74,7 +77,10 @@ "complianceState": "NonCompliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": null, + "policyAssignmentVersion": "1.0.0" } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandComponents.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandComponents.json new file mode 100644 index 000000000000..9d3f025e10fc --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandComponents.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "resourceId": "subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/Vaults/myKVName", + "api-version": "2019-10-01", + "$filter": "policyAssignmentId eq '/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/providers/microsoft.authorization/policyassignments/560050f83dbb4a24974323f8'", + "$expand": "components($filter=ComplianceState eq 'NonCompliant' or ComplianceState eq 'Compliant')" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/resourcegroups/myResourceGroup/providers/Microsoft.KeyVault/Vaults/myKVName/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest", + "@odata.count": 1, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/resourcegroups/myResourceGroup/providers/Microsoft.KeyVault/Vaults/myKVName/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2020-02-21T19:42:08.3252921Z", + "resourceId": "/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/resourcegroups/myResourceGroup/providers/microsoft.keyvault/vaults/myKVName", + "policyAssignmentId": "/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/providers/microsoft.authorization/policyassignments/560050f83dbb4a24974323f8", + "policyDefinitionId": "/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/providers/microsoft.authorization/policydefinitions/ab108bc4-32df-4677-8b38-fa8b2905df59", + "effectiveParameters": "", + "isCompliant": false, + "subscriptionId": "e78961ba-36fe-4739-9212-e3031b4c8db7", + "resourceType": "Microsoft.KeyVault/vaults", + "resourceLocation": "westcentralus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "560050f83dbb4a24974323f8", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "", + "policyAssignmentScope": "/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7", + "policyDefinitionName": "ab108bc4-32df-4677-8b38-fa8b2905df59", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "", + "policySetDefinitionName": "", + "policySetDefinitionOwner": "", + "policySetDefinitionCategory": "", + "policySetDefinitionParameters": "", + "managementGroupIds": "PolicyUIMG,AzGovTest5,72f988bf-86f1-41af-91ab-2d7cd011db47", + "policyDefinitionReferenceId": "", + "complianceState": "NonCompliant", + "components": [ + { + "id": "cert-RSA-cert-3", + "type": "Certificate", + "name": "cert-RSA-cert-3", + "timestamp": "2020-02-21T17:45:23.0367Z", + "complianceState": "NonCompliant" + }, + { + "id": "cert-RSA-cert-2", + "type": "Certificate", + "name": "cert-RSA-cert-2", + "timestamp": "2020-02-21T17:45:22.7682778Z", + "complianceState": "NonCompliant" + }, + { + "id": "cert-rsa-cert-expires-2months", + "type": "Certificate", + "name": "cert-rsa-cert-expires-2months", + "timestamp": "2020-02-21T17:45:22.6849056Z", + "complianceState": "NonCompliant" + }, + { + "id": "cert-RSA-cert-1", + "type": "Certificate", + "name": "cert-RSA-cert-1", + "timestamp": "2020-02-21T17:45:22.6504951Z", + "complianceState": "Compliant" + }, + { + "id": "cert-rsa-cert-expires-1month", + "type": "Certificate", + "name": "cert-rsa-cert-expires-1month", + "timestamp": "2020-02-21T17:45:22.5523666Z", + "complianceState": "NonCompliant" + } + ] + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandComponentsGroupByWithAggregate.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandComponentsGroupByWithAggregate.json new file mode 100644 index 000000000000..1395c5ec74e4 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandComponentsGroupByWithAggregate.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "policyStatesResource": "latest", + "resourceId": "subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/resourceGroups/myResourceGroup/providers/Microsoft.KeyVault/Vaults/myKVName", + "api-version": "2019-10-01", + "$filter": "policyAssignmentId eq '/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/providers/microsoft.authorization/policyassignments/560050f83dbb4a24974323f8'", + "$expand": "components($filter=ComplianceState eq 'NonCompliant' or ComplianceState eq 'Compliant';$apply=groupby((complianceState),aggregate($count as count)))" + }, + "responses": { + "200": { + "body": { + "@odata.context": "https://management.azure.com/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/resourcegroups/myResourceGroup/providers/Microsoft.KeyVault/Vaults/myKVName/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest", + "@odata.count": 1, + "value": [ + { + "@odata.id": null, + "@odata.context": "https://management.azure.com/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/resourcegroups/myResourceGroup/providers/Microsoft.KeyVault/Vaults/myKVName/providers/Microsoft.PolicyInsights/policyStates/$metadata#latest/$entity", + "timestamp": "2020-02-21T19:42:08.3252921Z", + "resourceId": "/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/resourcegroups/myResourceGroup/providers/microsoft.keyvault/vaults/myKVName", + "policyAssignmentId": "/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/providers/microsoft.authorization/policyassignments/560050f83dbb4a24974323f8", + "policyDefinitionId": "/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7/providers/microsoft.authorization/policydefinitions/ab108bc4-32df-4677-8b38-fa8b2905df59", + "effectiveParameters": "", + "isCompliant": false, + "subscriptionId": "e78961ba-36fe-4739-9212-e3031b4c8db7", + "resourceType": "Microsoft.KeyVault/vaults", + "resourceLocation": "westcentralus", + "resourceGroup": "myResourceGroup", + "resourceTags": "tbd", + "policyAssignmentName": "560050f83dbb4a24974323f8", + "policyAssignmentOwner": "tbd", + "policyAssignmentParameters": "", + "policyAssignmentScope": "/subscriptions/e78961ba-36fe-4739-9212-e3031b4c8db7", + "policyDefinitionName": "ab108bc4-32df-4677-8b38-fa8b2905df59", + "policyDefinitionAction": "audit", + "policyDefinitionCategory": "tbd", + "policySetDefinitionId": "", + "policySetDefinitionName": "", + "policySetDefinitionOwner": "", + "policySetDefinitionCategory": "", + "policySetDefinitionParameters": "", + "managementGroupIds": "PolicyUIMG,AzGovTest5,72f988bf-86f1-41af-91ab-2d7cd011db47", + "policyDefinitionReferenceId": "", + "complianceState": "NonCompliant", + "components": [ + { + "complianceState": "NonCompliant", + "count": 5 + }, + { + "complianceState": "Compliant", + "count": 14 + } + ] + } + ] + } + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandPolicyEvaluationDetails.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandPolicyEvaluationDetails.json index e4b83c3c4133..5ab54110b2c8 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandPolicyEvaluationDetails.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QueryResourceScopeExpandPolicyEvaluationDetails.json @@ -43,6 +43,9 @@ "policyDefinitionGroupNames": [ "myGroup" ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": null, + "policyAssignmentVersion": "1.0.0", "policyEvaluationDetails": { "evaluatedExpressions": [ { @@ -96,6 +99,9 @@ "policyDefinitionGroupNames": [ "myGroup" ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": null, + "policyAssignmentVersion": "1.0.0", "policyEvaluationDetails": { "evaluatedExpressions": [ { diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelNestedResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelNestedResourceScope.json index 69a778af5f0b..e504218c4209 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelNestedResourceScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelNestedResourceScope.json @@ -41,7 +41,10 @@ "complianceState": "NonCompliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": null, + "policyAssignmentVersion": "1.0.0" }, { "@odata.id": null, @@ -74,7 +77,10 @@ "complianceState": "Compliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": null, + "policyAssignmentVersion": "1.0.0" } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicyAssignmentScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicyAssignmentScope.json index afd036ad6184..c450a3f57202 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicyAssignmentScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicyAssignmentScope.json @@ -43,7 +43,10 @@ "complianceState": "NonCompliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": "2.0.1", + "policyAssignmentVersion": "1.0.0" }, { "@odata.id": null, @@ -76,7 +79,10 @@ "complianceState": "Compliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": "2.0.1", + "policyAssignmentVersion": "1.0.0" } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicyDefinitionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicyDefinitionScope.json index f15370c3093c..3a7d3c2c6d98 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicyDefinitionScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicyDefinitionScope.json @@ -43,7 +43,10 @@ "complianceState": "NonCompliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": null, + "policyAssignmentVersion": "1.0.0" }, { "@odata.id": null, @@ -76,7 +79,10 @@ "complianceState": "Compliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": null, + "policyAssignmentVersion": "1.0.0" } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicySetDefinitionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicySetDefinitionScope.json index bfd2e1cd48f3..0ef96902f50c 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicySetDefinitionScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelPolicySetDefinitionScope.json @@ -43,7 +43,10 @@ "complianceState": "NonCompliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": "2.0.1", + "policyAssignmentVersion": "1.0.0" }, { "@odata.id": null, @@ -76,7 +79,10 @@ "complianceState": "Compliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": "2.0.1", + "policyAssignmentVersion": "1.0.0" } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelResourceScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelResourceScope.json index 521ac190d5a1..1ca2e7fa09f4 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelResourceScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionLevelResourceScope.json @@ -41,7 +41,10 @@ "complianceState": "NonCompliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": null, + "policyAssignmentVersion": "1.0.0" }, { "@odata.id": null, @@ -74,7 +77,10 @@ "complianceState": "Compliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": null, + "policyAssignmentVersion": "1.0.0" } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionScope.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionScope.json index 5d5ddf125dca..8e73c1085c1b 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionScope.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_QuerySubscriptionScope.json @@ -41,7 +41,10 @@ "complianceState": "NonCompliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": "2.0.1", + "policyAssignmentVersion": "1.0.0" }, { "@odata.id": null, @@ -74,7 +77,10 @@ "complianceState": "NonCompliant", "policyDefinitionGroupNames": [ "myGroup" - ] + ], + "policyDefinitionVersion": "1.0.0-preview", + "policySetDefinitionVersion": "2.0.1", + "policyAssignmentVersion": "1.0.0" } ] } diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_TriggerResourceGroupEvaluation.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_TriggerResourceGroupEvaluation.json new file mode 100644 index 000000000000..64f1402bffe5 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_TriggerResourceGroupEvaluation.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "resourceGroupName": "myResourceGroup", + "api-version": "2019-10-01" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_TriggerSubscriptionEvaluation.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_TriggerSubscriptionEvaluation.json new file mode 100644 index 000000000000..280413ee75cd --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/examples/PolicyStates_TriggerSubscriptionEvaluation.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "subscriptionId": "fffedd8f-ffff-fffd-fffd-fffed2f84852", + "api-version": "2019-10-01" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/policyEvents.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/policyEvents.json new file mode 100644 index 000000000000..9c725a6436a5 --- /dev/null +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/policyEvents.json @@ -0,0 +1,1024 @@ +{ + "swagger": "2.0", + "info": { + "title": "PolicyEventsClient", + "version": "2019-10-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "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": { + "/providers/{managementGroupsNamespace}/managementGroups/{managementGroupName}/providers/Microsoft.PolicyInsights/policyEvents/{policyEventsResource}/queryResults": { + "post": { + "operationId": "PolicyEvents_ListQueryResultsForManagementGroup", + "description": "Queries policy events for the resources under the management group.", + "parameters": [ + { + "$ref": "#/parameters/policyEventsResourceParameter" + }, + { + "$ref": "#/parameters/managementGroupsNamespaceParameter" + }, + { + "$ref": "#/parameters/managementGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/orderByParameter" + }, + { + "$ref": "#/parameters/selectParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + }, + { + "$ref": "#/parameters/applyParameter" + } + ], + "responses": { + "200": { + "description": "Query results.", + "schema": { + "$ref": "#/definitions/PolicyEventsQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query at management group scope": { + "$ref": "./examples/PolicyEvents_QueryManagementGroupScope.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.PolicyInsights/policyEvents/{policyEventsResource}/queryResults": { + "post": { + "operationId": "PolicyEvents_ListQueryResultsForSubscription", + "description": "Queries policy events for the resources under the subscription.", + "parameters": [ + { + "$ref": "#/parameters/policyEventsResourceParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/orderByParameter" + }, + { + "$ref": "#/parameters/selectParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + }, + { + "$ref": "#/parameters/applyParameter" + } + ], + "responses": { + "200": { + "description": "Query results.", + "schema": { + "$ref": "#/definitions/PolicyEventsQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query at subscription scope": { + "$ref": "./examples/PolicyEvents_QuerySubscriptionScope.json" + }, + "Time range; sort, select and limit": { + "$ref": "./examples/PolicyEvents_TimeRangeSortSelectTop.json" + }, + "Filter and group with aggregate": { + "$ref": "./examples/PolicyEvents_FilterAndGroupByWithAggregate.json" + }, + "Filter and group without aggregate": { + "$ref": "./examples/PolicyEvents_FilterAndGroupByWithoutAggregate.json" + }, + "Filter and aggregate only": { + "$ref": "./examples/PolicyEvents_FilterAndAggregateOnly.json" + }, + "Filter and multiple groups": { + "$ref": "./examples/PolicyEvents_FilterAndMultipleGroups.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.PolicyInsights/policyEvents/{policyEventsResource}/queryResults": { + "post": { + "operationId": "PolicyEvents_ListQueryResultsForResourceGroup", + "description": "Queries policy events for the resources under the resource group.", + "parameters": [ + { + "$ref": "#/parameters/policyEventsResourceParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/orderByParameter" + }, + { + "$ref": "#/parameters/selectParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + }, + { + "$ref": "#/parameters/applyParameter" + } + ], + "responses": { + "200": { + "description": "Query results.", + "schema": { + "$ref": "#/definitions/PolicyEventsQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query at resource group scope": { + "$ref": "./examples/PolicyEvents_QueryResourceGroupScope.json" + } + } + } + }, + "/{resourceId}/providers/Microsoft.PolicyInsights/policyEvents/{policyEventsResource}/queryResults": { + "post": { + "operationId": "PolicyEvents_ListQueryResultsForResource", + "description": "Queries policy events for the resource.", + "parameters": [ + { + "$ref": "#/parameters/policyEventsResourceParameter" + }, + { + "$ref": "#/parameters/resourceIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/orderByParameter" + }, + { + "$ref": "#/parameters/selectParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + }, + { + "$ref": "#/parameters/applyParameter" + }, + { + "$ref": "#/parameters/expandParameter" + } + ], + "responses": { + "200": { + "description": "Query results.", + "schema": { + "$ref": "#/definitions/PolicyEventsQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query at resource scope": { + "$ref": "./examples/PolicyEvents_QueryResourceScope.json" + }, + "Query at subscription level resource scope": { + "$ref": "./examples/PolicyEvents_QuerySubscriptionLevelResourceScope.json" + }, + "Query at nested resource scope": { + "$ref": "./examples/PolicyEvents_QueryNestedResourceScope.json" + }, + "Query at subscription level nested resource scope": { + "$ref": "./examples/PolicyEvents_QuerySubscriptionLevelNestedResourceScope.json" + }, + "Query components policy events for resource scope filtered by given assignment.": { + "$ref": "./examples/PolicyEvents_QueryResourceScopeExpandComponents.json" + }, + "Query components policy events count grouped by user and action type for resource scope filtered by given assignment.": { + "$ref": "./examples/PolicyEvents_QueryResourceScopeExpandComponentsGroupByWithAggregate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/{authorizationNamespace}/policySetDefinitions/{policySetDefinitionName}/providers/Microsoft.PolicyInsights/policyEvents/{policyEventsResource}/queryResults": { + "post": { + "operationId": "PolicyEvents_ListQueryResultsForPolicySetDefinition", + "description": "Queries policy events for the subscription level policy set definition.", + "parameters": [ + { + "$ref": "#/parameters/policyEventsResourceParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/authorizationNamespaceParameter" + }, + { + "$ref": "#/parameters/policySetDefinitionNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/orderByParameter" + }, + { + "$ref": "#/parameters/selectParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + }, + { + "$ref": "#/parameters/applyParameter" + } + ], + "responses": { + "200": { + "description": "Query results.", + "schema": { + "$ref": "#/definitions/PolicyEventsQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query at subscription level policy set definition scope": { + "$ref": "./examples/PolicyEvents_QuerySubscriptionLevelPolicySetDefinitionScope.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/{authorizationNamespace}/policyDefinitions/{policyDefinitionName}/providers/Microsoft.PolicyInsights/policyEvents/{policyEventsResource}/queryResults": { + "post": { + "operationId": "PolicyEvents_ListQueryResultsForPolicyDefinition", + "description": "Queries policy events for the subscription level policy definition.", + "parameters": [ + { + "$ref": "#/parameters/policyEventsResourceParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/authorizationNamespaceParameter" + }, + { + "$ref": "#/parameters/policyDefinitionNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/orderByParameter" + }, + { + "$ref": "#/parameters/selectParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + }, + { + "$ref": "#/parameters/applyParameter" + } + ], + "responses": { + "200": { + "description": "Query results.", + "schema": { + "$ref": "#/definitions/PolicyEventsQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query at subscription level policy definition scope": { + "$ref": "./examples/PolicyEvents_QuerySubscriptionLevelPolicyDefinitionScope.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/{authorizationNamespace}/policyAssignments/{policyAssignmentName}/providers/Microsoft.PolicyInsights/policyEvents/{policyEventsResource}/queryResults": { + "post": { + "operationId": "PolicyEvents_ListQueryResultsForSubscriptionLevelPolicyAssignment", + "description": "Queries policy events for the subscription level policy assignment.", + "parameters": [ + { + "$ref": "#/parameters/policyEventsResourceParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/authorizationNamespaceParameter" + }, + { + "$ref": "#/parameters/policyAssignmentNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/orderByParameter" + }, + { + "$ref": "#/parameters/selectParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + }, + { + "$ref": "#/parameters/applyParameter" + } + ], + "responses": { + "200": { + "description": "Query results.", + "schema": { + "$ref": "#/definitions/PolicyEventsQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query at subscription level policy assignment scope": { + "$ref": "./examples/PolicyEvents_QuerySubscriptionLevelPolicyAssignmentScope.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/{authorizationNamespace}/policyAssignments/{policyAssignmentName}/providers/Microsoft.PolicyInsights/policyEvents/{policyEventsResource}/queryResults": { + "post": { + "operationId": "PolicyEvents_ListQueryResultsForResourceGroupLevelPolicyAssignment", + "description": "Queries policy events for the resource group level policy assignment.", + "parameters": [ + { + "$ref": "#/parameters/policyEventsResourceParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/authorizationNamespaceParameter" + }, + { + "$ref": "#/parameters/policyAssignmentNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "$ref": "#/parameters/topParameter" + }, + { + "$ref": "#/parameters/orderByParameter" + }, + { + "$ref": "#/parameters/selectParameter" + }, + { + "$ref": "#/parameters/fromParameter" + }, + { + "$ref": "#/parameters/toParameter" + }, + { + "$ref": "#/parameters/filterParameter" + }, + { + "$ref": "#/parameters/applyParameter" + } + ], + "responses": { + "200": { + "description": "Query results.", + "schema": { + "$ref": "#/definitions/PolicyEventsQueryResults" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Query at resource group level policy assignment scope": { + "$ref": "./examples/PolicyEvents_QueryResourceGroupLevelPolicyAssignmentScope.json" + } + } + } + }, + "/{scope}/providers/Microsoft.PolicyInsights/policyEvents/$metadata": { + "get": { + "operationId": "PolicyEvents_GetMetadata", + "description": "Gets OData metadata XML document.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "$ref": "#/parameters/scopeParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OData metadata XML document.", + "schema": { + "$ref": "#/definitions/MetadataDocument" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Get metadata": { + "$ref": "./examples/PolicyEvents_GetMetadata.json" + } + } + } + } + }, + "definitions": { + "PolicyEventsQueryResults": { + "description": "Query results.", + "properties": { + "@odata.context": { + "description": "OData context string; used by OData clients to resolve type information based on metadata.", + "type": "string" + }, + "@odata.count": { + "description": "OData entity count; represents the number of policy event records returned.", + "type": "integer", + "format": "int32", + "minimum": 0 + }, + "value": { + "description": "Query results.", + "type": "array", + "items": { + "$ref": "#/definitions/PolicyEvent" + } + } + } + }, + "PolicyEvent": { + "type": "object", + "description": "Policy event record.", + "properties": { + "@odata.id": { + "description": "OData entity ID; always set to null since policy event records do not have an entity ID.", + "type": "string" + }, + "@odata.context": { + "description": "OData context string; used by OData clients to resolve type information based on metadata.", + "type": "string" + }, + "timestamp": { + "description": "Timestamp for the policy event record.", + "type": "string", + "format": "date-time" + }, + "resourceId": { + "description": "Resource ID.", + "type": "string" + }, + "policyAssignmentId": { + "description": "Policy assignment ID.", + "type": "string" + }, + "policyDefinitionId": { + "description": "Policy definition ID.", + "type": "string" + }, + "effectiveParameters": { + "description": "Effective parameters for the policy assignment.", + "type": "string" + }, + "isCompliant": { + "description": "Flag which states whether the resource is compliant against the policy assignment it was evaluated against.", + "type": "boolean" + }, + "subscriptionId": { + "description": "Subscription ID.", + "type": "string" + }, + "resourceType": { + "description": "Resource type.", + "type": "string" + }, + "resourceLocation": { + "description": "Resource location.", + "type": "string" + }, + "resourceGroup": { + "description": "Resource group name.", + "type": "string" + }, + "resourceTags": { + "description": "List of resource tags.", + "type": "string" + }, + "policyAssignmentName": { + "description": "Policy assignment name.", + "type": "string" + }, + "policyAssignmentOwner": { + "description": "Policy assignment owner.", + "type": "string" + }, + "policyAssignmentParameters": { + "description": "Policy assignment parameters.", + "type": "string" + }, + "policyAssignmentScope": { + "description": "Policy assignment scope.", + "type": "string" + }, + "policyDefinitionName": { + "description": "Policy definition name.", + "type": "string" + }, + "policyDefinitionAction": { + "description": "Policy definition action, i.e. effect.", + "type": "string" + }, + "policyDefinitionCategory": { + "description": "Policy definition category.", + "type": "string" + }, + "policySetDefinitionId": { + "description": "Policy set definition ID, if the policy assignment is for a policy set.", + "type": "string" + }, + "policySetDefinitionName": { + "description": "Policy set definition name, if the policy assignment is for a policy set.", + "type": "string" + }, + "policySetDefinitionOwner": { + "description": "Policy set definition owner, if the policy assignment is for a policy set.", + "type": "string" + }, + "policySetDefinitionCategory": { + "description": "Policy set definition category, if the policy assignment is for a policy set.", + "type": "string" + }, + "policySetDefinitionParameters": { + "description": "Policy set definition parameters, if the policy assignment is for a policy set.", + "type": "string" + }, + "managementGroupIds": { + "description": "Comma separated list of management group IDs, which represent the hierarchy of the management groups the resource is under.", + "type": "string" + }, + "policyDefinitionReferenceId": { + "description": "Reference ID for the policy definition inside the policy set, if the policy assignment is for a policy set.", + "type": "string" + }, + "complianceState": { + "description": "Compliance state of the resource.", + "type": "string" + }, + "tenantId": { + "description": "Tenant ID for the policy event record.", + "type": "string" + }, + "principalOid": { + "description": "Principal object ID for the user who initiated the resource operation that triggered the policy event.", + "type": "string" + }, + "components": { + "description": "Components events records populated only when URL contains $expand=components clause.", + "type": "array", + "items": { + "$ref": "#/definitions/ComponentEventDetails" + } + } + }, + "additionalProperties": { + "description": "The list of key/value pairs for the additional properties, in the format 'key':'value' where key = the field name, and value = the field value. By default this is not populated" + } + }, + "ComponentEventDetails": { + "type": "object", + "description": "Component event details.", + "properties": { + "id": { + "description": "Component Id.", + "type": "string" + }, + "type": { + "description": "Component type.", + "type": "string" + }, + "name": { + "description": "Component name.", + "type": "string" + }, + "timestamp": { + "description": "Timestamp for component policy event record.", + "type": "string", + "format": "date-time" + }, + "tenantId": { + "description": "Tenant ID for the policy event record.", + "type": "string" + }, + "principalOid": { + "description": "Principal object ID for the user who initiated the resource component operation that triggered the policy event.", + "type": "string" + }, + "policyDefinitionAction": { + "description": "Policy definition action, i.e. effect.", + "type": "string" + } + }, + "additionalProperties": { + "description": "The list of key/value pairs for the additional properties, in the format 'key':'value' where key = the field name, and value = the field value. By default this is not populated" + } + }, + "QueryFailure": { + "description": "Error response.", + "properties": { + "error": { + "description": "Error definition.", + "properties": { + "code": { + "description": "Service specific error code which serves as the substatus for the HTTP error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Description of the error.", + "type": "string", + "readOnly": true + } + } + } + } + }, + "MetadataDocument": { + "description": "Metadata XML document.", + "type": "string" + } + }, + "parameters": { + "policyEventsResourceParameter": { + "name": "policyEventsResource", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "description": "The name of the virtual resource under PolicyEvents resource type; only \"default\" is allowed.", + "x-ms-parameter-location": "method" + }, + "managementGroupsNamespaceParameter": { + "name": "managementGroupsNamespace", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "Microsoft.Management" + ], + "description": "The namespace for Microsoft Management RP; only \"Microsoft.Management\" is allowed.", + "x-ms-parameter-location": "method" + }, + "managementGroupNameParameter": { + "name": "managementGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Management group name.", + "x-ms-parameter-location": "method" + }, + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Microsoft Azure subscription ID.", + "x-ms-parameter-location": "method" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Resource group name.", + "x-ms-parameter-location": "method" + }, + "resourceIdParameter": { + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "Resource ID.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "authorizationNamespaceParameter": { + "name": "authorizationNamespace", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "Microsoft.Authorization" + ], + "description": "The namespace for Microsoft Authorization resource provider; only \"Microsoft.Authorization\" is allowed.", + "x-ms-parameter-location": "method" + }, + "policySetDefinitionNameParameter": { + "name": "policySetDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "Policy set definition name.", + "x-ms-parameter-location": "method" + }, + "policyDefinitionNameParameter": { + "name": "policyDefinitionName", + "in": "path", + "required": true, + "type": "string", + "description": "Policy definition name.", + "x-ms-parameter-location": "method" + }, + "policyAssignmentNameParameter": { + "name": "policyAssignmentName", + "in": "path", + "required": true, + "type": "string", + "description": "Policy assignment name.", + "x-ms-parameter-location": "method" + }, + "scopeParameter": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "A valid scope, i.e. management group, subscription, resource group, or resource ID. Scope used has no effect on metadata returned.", + "x-ms-parameter-location": "method", + "x-ms-skip-url-encoding": true + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "API version to use with the client requests.", + "x-ms-parameter-location": "client" + }, + "topParameter": { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0, + "description": "Maximum number of records to return.", + "x-ms-parameter-location": "method", + "x-ms-parameter-grouping": { + "name": "QueryOptions" + }, + "x-ms-client-name": "Top" + }, + "orderByParameter": { + "name": "$orderby", + "in": "query", + "required": false, + "type": "string", + "description": "Ordering expression using OData notation. One or more comma-separated column names with an optional \"desc\" (the default) or \"asc\", e.g. \"$orderby=PolicyAssignmentId, ResourceId asc\".", + "x-ms-parameter-location": "method", + "x-ms-parameter-grouping": { + "name": "QueryOptions" + }, + "x-ms-client-name": "OrderBy" + }, + "selectParameter": { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "Select expression using OData notation. Limits the columns on each record to just those requested, e.g. \"$select=PolicyAssignmentId, ResourceId\".", + "x-ms-parameter-location": "method", + "x-ms-parameter-grouping": { + "name": "QueryOptions" + }, + "x-ms-client-name": "Select" + }, + "fromParameter": { + "name": "$from", + "in": "query", + "required": false, + "type": "string", + "format": "date-time", + "description": "ISO 8601 formatted timestamp specifying the start time of the interval to query. When not specified, the service uses ($to - 1-day).", + "x-ms-parameter-location": "method", + "x-ms-parameter-grouping": { + "name": "QueryOptions" + }, + "x-ms-client-name": "From" + }, + "toParameter": { + "name": "$to", + "in": "query", + "required": false, + "type": "string", + "format": "date-time", + "description": "ISO 8601 formatted timestamp specifying the end time of the interval to query. When not specified, the service uses request time.", + "x-ms-parameter-location": "method", + "x-ms-parameter-grouping": { + "name": "QueryOptions" + }, + "x-ms-client-name": "To" + }, + "filterParameter": { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "OData filter expression.", + "x-ms-parameter-location": "method", + "x-ms-parameter-grouping": { + "name": "QueryOptions" + }, + "x-ms-client-name": "Filter" + }, + "applyParameter": { + "name": "$apply", + "in": "query", + "required": false, + "type": "string", + "description": "OData apply expression for aggregations.", + "x-ms-parameter-location": "method", + "x-ms-parameter-grouping": { + "name": "QueryOptions" + }, + "x-ms-client-name": "Apply" + }, + "expandParameter": { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "The $expand query parameter. For example, to expand components use $expand=components", + "x-ms-parameter-location": "method", + "x-ms-parameter-grouping": { + "name": "QueryOptions" + }, + "x-ms-client-name": "Expand" + } + } +} diff --git a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/policyStates.json b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/policyStates.json index ab104e5d24e9..ca46c7b1804b 100644 --- a/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/policyStates.json +++ b/specification/policyinsights/resource-manager/Microsoft.PolicyInsights/stable/2019-10-01/policyStates.json @@ -443,6 +443,12 @@ }, "Query all policy states at resource scope and expand policyEvaluationDetails": { "$ref": "./examples/PolicyStates_QueryResourceScopeExpandPolicyEvaluationDetails.json" + }, + "Query component policy compliance state at resource scope filtered by given assignment.": { + "$ref": "./examples/PolicyStates_QueryResourceScopeExpandComponents.json" + }, + "Query component policy compliance state count grouped by state type at resource scope filtered by given assignment.": { + "$ref": "./examples/PolicyStates_QueryResourceScopeExpandComponentsGroupByWithAggregate.json" } } } @@ -495,6 +501,83 @@ } } }, + "/subscriptions/{subscriptionId}/providers/Microsoft.PolicyInsights/policyStates/latest/triggerEvaluation": { + "post": { + "operationId": "PolicyStates_TriggerSubscriptionEvaluation", + "description": "Triggers a policy evaluation scan for all the resources under the subscription", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The scan is done." + }, + "202": { + "description": "The scan was successfully triggered." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Trigger evaluations for all resources in a subscription": { + "$ref": "./examples/PolicyStates_TriggerSubscriptionEvaluation.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.PolicyInsights/policyStates/latest/triggerEvaluation": { + "post": { + "operationId": "PolicyStates_TriggerResourceGroupEvaluation", + "description": "Triggers a policy evaluation scan for all the resources under the resource group.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The scan is done." + }, + "202": { + "description": "The scan was successfully triggered." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/QueryFailure" + } + } + }, + "x-ms-examples": { + "Trigger evaluations for all resources in a resource group": { + "$ref": "./examples/PolicyStates_TriggerResourceGroupEvaluation.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, "/subscriptions/{subscriptionId}/providers/{authorizationNamespace}/policySetDefinitions/{policySetDefinitionName}/providers/Microsoft.PolicyInsights/policyStates/{policyStatesResource}/queryResults": { "post": { "operationId": "PolicyStates_ListQueryResultsForPolicySetDefinition", @@ -1151,6 +1234,28 @@ "items": { "type": "string" } + }, + "components": { + "description": "Components state compliance records populated only when URL contains $expand=components clause.", + "type": "array", + "items": { + "$ref": "#/definitions/ComponentStateDetails" + } + }, + "policyDefinitionVersion": { + "description": "Evaluated policy definition version.", + "type": "string", + "readOnly": true + }, + "policySetDefinitionVersion": { + "description": "Evaluated policy set definition version.", + "type": "string", + "readOnly": true + }, + "policyAssignmentVersion": { + "description": "Evaluated policy assignment version.", + "type": "string", + "readOnly": true } }, "additionalProperties": { @@ -1175,6 +1280,36 @@ } } }, + "ComponentStateDetails": { + "type": "object", + "description": "Component state details.", + "properties": { + "id": { + "description": "Component Id.", + "type": "string" + }, + "type": { + "description": "Component type.", + "type": "string" + }, + "name": { + "description": "Component name.", + "type": "string" + }, + "timestamp": { + "description": "Component compliance evaluation timestamp.", + "type": "string", + "format": "date-time" + }, + "complianceState": { + "description": "Component compliance state.", + "type": "string" + } + }, + "additionalProperties": { + "description": "The list of key/value pairs for the additional properties, in the format 'key':'value' where key = the field name, and value = the field value. By default this is not populated" + } + }, "ExpressionEvaluationDetails": { "type": "object", "description": "Evaluation details of policy language expressions.", @@ -1684,7 +1819,7 @@ "in": "query", "required": false, "type": "string", - "description": "The $expand query parameter. For example, to expand policyEvaluationDetails, use $expand=policyEvaluationDetails", + "description": "The $expand query parameter. For example, to expand components use $expand=components", "x-ms-parameter-location": "method", "x-ms-parameter-grouping": { "name": "QueryOptions" diff --git a/specification/policyinsights/resource-manager/readme.md b/specification/policyinsights/resource-manager/readme.md index 3b88aeb0b6a8..ec0220bdbba7 100644 --- a/specification/policyinsights/resource-manager/readme.md +++ b/specification/policyinsights/resource-manager/readme.md @@ -76,7 +76,7 @@ These settings apply only when `--tag=package-2019-10` is specified on the comma input-file: - Microsoft.PolicyInsights/preview/2018-07-01-preview/policyTrackedResources.json - Microsoft.PolicyInsights/stable/2019-07-01/remediations.json -- Microsoft.PolicyInsights/stable/2018-04-04/policyEvents.json +- Microsoft.PolicyInsights/stable/2019-10-01/policyEvents.json - Microsoft.PolicyInsights/stable/2019-10-01/policyStates.json - Microsoft.PolicyInsights/stable/2019-10-01/policyMetadata.json ``` @@ -248,10 +248,11 @@ require: $(this-folder)/../../../profiles/readme.md 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/2018-04-04/policyEvents.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/stable/2018-04-04/policyEvents.json - $(this-folder)/Microsoft.PolicyInsights/preview/2018-07-01-preview/policyStates.json - $(this-folder)/Microsoft.PolicyInsights/stable/2018-04-04/policyStates.json diff --git a/specification/portal/resource-manager/Microsoft.Portal/preview/2015-08-01-preview/portal.json b/specification/portal/resource-manager/Microsoft.Portal/preview/2015-08-01-preview/portal.json index 636054f232fc..9bbdec8f0d6f 100644 --- a/specification/portal/resource-manager/Microsoft.Portal/preview/2015-08-01-preview/portal.json +++ b/specification/portal/resource-manager/Microsoft.Portal/preview/2015-08-01-preview/portal.json @@ -413,19 +413,19 @@ "description": "The dashboard's part position.", "properties": { "x": { - "type": "number", + "type": "integer", "description": "The dashboard's part x coordinate." }, "y": { - "type": "number", + "type": "integer", "description": "The dashboard's part y coordinate." }, "rowSpan": { - "type": "number", + "type": "integer", "description": "The dashboard's part row span." }, "colSpan": { - "type": "number", + "type": "integer", "description": "The dashboard's part column span." }, "metadata": { diff --git a/specification/portal/resource-manager/Microsoft.Portal/preview/2018-10-01-preview/portal.json b/specification/portal/resource-manager/Microsoft.Portal/preview/2018-10-01-preview/portal.json index 9cdb59dd9cec..e136b25cb892 100644 --- a/specification/portal/resource-manager/Microsoft.Portal/preview/2018-10-01-preview/portal.json +++ b/specification/portal/resource-manager/Microsoft.Portal/preview/2018-10-01-preview/portal.json @@ -413,19 +413,19 @@ "description": "The dashboard's part position.", "properties": { "x": { - "type": "number", + "type": "integer", "description": "The dashboard's part x coordinate." }, "y": { - "type": "number", + "type": "integer", "description": "The dashboard's part y coordinate." }, "rowSpan": { - "type": "number", + "type": "integer", "description": "The dashboard's part row span." }, "colSpan": { - "type": "number", + "type": "integer", "description": "The dashboard's part column span." }, "metadata": { diff --git a/specification/portal/resource-manager/Microsoft.Portal/preview/2019-01-01-preview/portal.json b/specification/portal/resource-manager/Microsoft.Portal/preview/2019-01-01-preview/portal.json index f3b50b3eb1c5..32b291f51c49 100644 --- a/specification/portal/resource-manager/Microsoft.Portal/preview/2019-01-01-preview/portal.json +++ b/specification/portal/resource-manager/Microsoft.Portal/preview/2019-01-01-preview/portal.json @@ -413,19 +413,19 @@ "description": "The dashboard's part position.", "properties": { "x": { - "type": "number", + "type": "integer", "description": "The dashboard's part x coordinate." }, "y": { - "type": "number", + "type": "integer", "description": "The dashboard's part y coordinate." }, "rowSpan": { - "type": "number", + "type": "integer", "description": "The dashboard's part row span." }, "colSpan": { - "type": "number", + "type": "integer", "description": "The dashboard's part column span." }, "metadata": { diff --git a/specification/portal/resource-manager/readme.az.md b/specification/portal/resource-manager/readme.az.md new file mode 100644 index 000000000000..57368eb6e273 --- /dev/null +++ b/specification/portal/resource-manager/readme.az.md @@ -0,0 +1,24 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +``` yaml $(az) +az: + extensions: portal + namespace: azure.mgmt.portal + package-name: azure-mgmt-portal +az-output-folder: $(azure-cli-extension-folder)/src/portal +python-sdk-output-folder: "$(az-output-folder)/azext_portal/vendored_sdks/portal" + +#cli: +# cli-directive: +# directive on operationGroup +# - select: 'operationGroup' +# where: +# operationGroup: 'operations' +# hidden: true +# - where: +# parameter: location +# required: true + +``` diff --git a/specification/portal/resource-manager/readme.cli.md b/specification/portal/resource-manager/readme.cli.md new file mode 100644 index 000000000000..a9e918eefe21 --- /dev/null +++ b/specification/portal/resource-manager/readme.cli.md @@ -0,0 +1,9 @@ + CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +#cli: +# test-scenario: +# - name: Factories_CreateOrUpdate +``` diff --git a/specification/portal/resource-manager/readme.md b/specification/portal/resource-manager/readme.md index 3ed8af1a6fa0..9fc2ca44f7c4 100644 --- a/specification/portal/resource-manager/readme.md +++ b/specification/portal/resource-manager/readme.md @@ -75,6 +75,7 @@ swagger-to-sdk: - repo: azure-sdk-for-ruby after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_portal'] + - repo: azure-cli-extensions ``` ## Go diff --git a/specification/portal/resource-manager/readme.python.md b/specification/portal/resource-manager/readme.python.md index e296c8e06256..6bdb50e8d3ea 100644 --- a/specification/portal/resource-manager/readme.python.md +++ b/specification/portal/resource-manager/readme.python.md @@ -8,14 +8,14 @@ python: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION payload-flattening-threshold: 2 - namespace: Microsoft.Portal - package-name: portal - package-version: 2015-08-01-preview + namespace: azure.mgmt.portal + package-name: azure-mgmt-portal + package-version: 0.1.0 clear-output-folder: true ``` ```yaml $(python) python: no-namespace-folders: true - output-folder: $(python-sdks-folder)/azure-mgmt/portal + output-folder: $(python-sdks-folder)/portal/azure-mgmt-portal/azure/mgmt/portal ``` diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerAdminCreateUpdate.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerAdminCreateUpdate.json index c06829860a54..89a389019001 100644 --- a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerAdminCreateUpdate.json +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerAdminCreateUpdate.json @@ -29,7 +29,17 @@ } }, "202": { - "body": "Accepted" + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/pgtestsvc4/administrators/activeDirectory", + "name": "activeDirectory", + "type": "Microsoft.DBforPostgreSQL/servers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } } } } diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerAdminDelete.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerAdminDelete.json index 91cb5a60f981..ad4cf1921a66 100644 --- a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerAdminDelete.json +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/examples/ServerAdminDelete.json @@ -7,14 +7,8 @@ "api-version": "2017-12-01-preview" }, "responses": { - "200": { - "body": "OK" - }, - "202": { - "body": "Accepted" - }, - "204": { - "body": "No Content" - } + "200": {}, + "202": {}, + "204": {} } } diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/postgresql.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/postgresql.json index e36ae3cd778b..1df614dff54b 100644 --- a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/postgresql.json +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/preview/2017-12-01-preview/postgresql.json @@ -1149,13 +1149,13 @@ ], "responses": { "200": { - "description": "OK", + "description": "Successfully updated the active directory administrator", "schema": { "$ref": "#/definitions/ServerAdministratorResource" } }, "202": { - "description": "Accepted", + "description": "Operation in progress", "schema": { "$ref": "#/definitions/ServerAdministratorResource" } @@ -1196,22 +1196,13 @@ ], "responses": { "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ServerAdministratorResource" - } + "description": "Successfully deleted the active directory administrator" }, "202": { - "description": "Accepted", - "schema": { - "$ref": "#/definitions/ServerAdministratorResource" - } + "description": "Operation in progress" }, "204": { - "description": "NoContent", - "schema": { - "$ref": "#/definitions/ServerAdministratorResource" - } + "description": "The specified Server active directory administrator does not exist" }, "default": { "description": "Error response describing why the operation failed.", @@ -1228,7 +1219,7 @@ "tags": [ "ServerAdministrators" ], - "operationId": "ServerAdministrators_ListByServer", + "operationId": "ServerAdministrators_List", "description": "Returns a list of server Administrators.", "x-ms-examples": { "get a list of server administrators": { @@ -1520,6 +1511,115 @@ "modelAsString": false } }, + "MinimalTlsVersion": { + "type": "string", + "description": "Enforce a minimal Tls version for the server.", + "enum": [ + "TLS1_0", + "TLS1_1", + "TLS1_2", + "TLSEnforcementDisabled" + ], + "x-ms-enum": { + "name": "MinimalTlsVersionEnum", + "modelAsString": true + } + }, + "ServerPrivateEndpointConnection": { + "description": "A private endpoint connection under a server", + "type": "object", + "properties": { + "id": { + "description": "Resource Id of the private endpoint connection.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Private endpoint connection properties", + "readOnly": true + } + } + }, + "PrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionStateProperty", + "description": "Connection state of the private endpoint connection." + }, + "provisioningState": { + "description": "State of the private endpoint connection.", + "enum": [ + "Approving", + "Ready", + "Dropping", + "Failed", + "Rejecting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PrivateEndpointProvisioningState", + "modelAsString": true + } + } + } + }, + "PrivateEndpointProperty": { + "type": "object", + "properties": { + "id": { + "description": "Resource id of the private endpoint.", + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "PrivateLinkServiceConnectionStateProperty": { + "required": [ + "status", + "description" + ], + "type": "object", + "properties": { + "status": { + "description": "The private link service connection status.", + "enum": [ + "Approved", + "Pending", + "Rejected", + "Disconnected" + ], + "type": "string", + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStateStatus", + "modelAsString": true + } + }, + "description": { + "description": "The private link service connection description.", + "type": "string" + }, + "actionsRequired": { + "description": "The actions required for private link service connection.", + "enum": [ + "None" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStateActionsRequire", + "modelAsString": true + } + } + } + }, "ProxyResource": { "description": "Resource properties.", "properties": { @@ -1579,13 +1679,35 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, + "byokEnforcement": { + "type": "string", + "description": "Status showing whether the server data encryption is enabled with customer-managed keys.", + "readOnly": true + }, + "infrastructureEncryption": { + "type": "string", + "description": "Status showing whether the server enabled infrastructure encryption.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "InfrastructureEncryption", + "modelAsString": true + } + }, "userVisibleState": { "type": "string", "description": "A state of a server that is visible to user.", "enum": [ "Ready", "Dropping", - "Disabled" + "Disabled", + "Inaccessible" ], "x-ms-enum": { "name": "ServerState", @@ -1618,6 +1740,26 @@ "format": "int32", "minimum": 0, "description": "The maximum number of replicas that a master server can have." + }, + "publicNetworkAccess": { + "type": "string", + "description": "Whether or not public endpoint access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccessEnum", + "modelAsString": true + } + }, + "privateEndpointConnections": { + "description": "List of private endpoint connections on a server", + "type": "array", + "items": { + "$ref": "#/definitions/ServerPrivateEndpointConnection" + }, + "readOnly": true } }, "description": "The properties of a server." @@ -1674,6 +1816,10 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, "storageProfile": { "$ref": "#/definitions/StorageProfile", "description": "Storage profile of a server." @@ -1921,6 +2067,10 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, "replicationRole": { "type": "string", "description": "The replication role of the server." @@ -2520,7 +2670,7 @@ }, "login": { "type": "string", - "description": "The server administrator login value." + "description": "The server administrator login account name." }, "sid": { "type": "string", diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerAdminCreateUpdate.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerAdminCreateUpdate.json new file mode 100644 index 000000000000..8fe82a9c06ef --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerAdminCreateUpdate.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "pgtestsvc4", + "administratorName": "activeDirectory", + "api-version": "2017-12-01", + "properties": { + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/pgtestsvc4/administrators/activeDirectory", + "name": "activeDirectory", + "type": "Microsoft.DBforPostgreSQL/servers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/pgtestsvc4/administrators/activeDirectory", + "name": "activeDirectory", + "type": "Microsoft.DBforPostgreSQL/servers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerAdminDelete.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerAdminDelete.json new file mode 100644 index 000000000000..1f0f09a88008 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerAdminDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "pgtestsvc4", + "administratorName": "activeDirectory", + "api-version": "2017-12-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerAdminGet.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerAdminGet.json new file mode 100644 index 000000000000..573398b11939 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerAdminGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "pgtestsvc4", + "administratorName": "activeDirectory", + "api-version": "2017-12-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/pgtestsvc4/administrators/activeDirectory", + "name": "activeDirectory", + "type": "Microsoft.DBforPostgreSQL/servers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerAdminList.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerAdminList.json new file mode 100644 index 000000000000..527a3313e326 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerAdminList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "pgtestsvc4", + "api-version": "2017-12-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/pgtestsvc4/administrators/activeDirectory", + "name": "ActiveDirectory", + "type": "Microsoft.DBforPostgreSQL/servers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } + ] + } + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerCreate.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerCreate.json index a0c6b5e9fe7e..63b38734cb96 100644 --- a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerCreate.json +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerCreate.json @@ -10,6 +10,7 @@ "administratorLogin": "cloudsa", "administratorLoginPassword": "pa$$w0rd", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_2", "storageProfile": { "storageMB": 128000, "backupRetentionDays": 7, @@ -46,6 +47,7 @@ }, "version": "9.6", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_2", "userVisibleState": "Ready", "fullyQualifiedDomainName": "pgtestsvc4.postgres.database.azure.com", "earliestRestoreDate": "2018-03-14T21:08:24.637+00:00" diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerDelete.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerDelete.json index 079f432114ff..6cb3de624950 100644 --- a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerDelete.json +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerDelete.json @@ -2,7 +2,7 @@ "parameters": { "serverName": "testserver", "resourceGroupName": "TestGroup", - "api-version": "2017-12-01-preview", + "api-version": "2017-12-01", "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff" }, "responses": { diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerGet.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerGet.json index 436bf354530b..9bf76b322e48 100644 --- a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerGet.json +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerGet.json @@ -23,11 +23,29 @@ }, "version": "9.5", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_2", "userVisibleState": "Ready", "fullyQualifiedDomainName": "pgtestsvc1.postgres.database.azure.com", "earliestRestoreDate": "2018-03-04T21:00:58.9243541+00:00", "replicationRole": "", - "masterServerId": "" + "masterServerId": "", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/pgtestsvc1/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] }, "location": "westus", "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/pgtestsvc1", diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerList.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerList.json index f72ef600b0e8..c72697804a22 100644 --- a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerList.json +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerList.json @@ -23,9 +23,12 @@ }, "version": "9.5", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_1", "userVisibleState": "Ready", "fullyQualifiedDomainName": "pgtestsvc1.postgres.database.azure.com", - "earliestRestoreDate": "2018-03-04T21:01:55.1498475+00:00" + "earliestRestoreDate": "2018-03-04T21:01:55.1498475+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [] }, "location": "westus", "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/pgtestsvc1", @@ -48,9 +51,27 @@ }, "version": "9.6", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_2", "userVisibleState": "Ready", "fullyQualifiedDomainName": "pgtestsvc2.postgres.database.azure.com", - "earliestRestoreDate": "2018-03-07T21:01:55.1498475+00:00" + "earliestRestoreDate": "2018-03-07T21:01:55.1498475+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/pgtestsvc2/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] }, "location": "westus", "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/pgtestsvc2", @@ -73,9 +94,27 @@ }, "version": "9.6", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_0", "userVisibleState": "Ready", "fullyQualifiedDomainName": "pgtestsvc3.postgres.database.azure.com", - "earliestRestoreDate": "2018-03-01T00:11:08.55+00:00" + "earliestRestoreDate": "2018-03-01T00:11:08.55+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/pgtestsvc3/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] }, "location": "westus", "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg1/providers/Microsoft.DBforPostgreSQL/servers/pgtestsvc3", @@ -98,9 +137,12 @@ }, "version": "9.6", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_0", "userVisibleState": "Ready", "fullyQualifiedDomainName": "pgtestsvc4.postgres.database.azure.com", - "earliestRestoreDate": "2018-03-14T21:08:24.637+00:00" + "earliestRestoreDate": "2018-03-14T21:08:24.637+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [] }, "location": "westus", "tags": { diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerListByResourceGroup.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerListByResourceGroup.json index 4c6daa5c70f0..ccf447bb7ccb 100644 --- a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerListByResourceGroup.json +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerListByResourceGroup.json @@ -26,7 +26,9 @@ "sslEnforcement": "Enabled", "userVisibleState": "Ready", "fullyQualifiedDomainName": "pgtestsvc1.postgres.database.azure.com", - "earliestRestoreDate": "2018-03-04T21:01:55.1498475+00:00" + "earliestRestoreDate": "2018-03-04T21:01:55.1498475+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [] }, "location": "westus", "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/pgtestsvc1", @@ -51,7 +53,24 @@ "sslEnforcement": "Enabled", "userVisibleState": "Ready", "fullyQualifiedDomainName": "pgtestsvc2.postgres.database.azure.com", - "earliestRestoreDate": "2018-03-07T21:01:55.1498475+00:00" + "earliestRestoreDate": "2018-03-07T21:01:55.1498475+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/pgtestsvc2/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] }, "location": "westus", "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/pgtestsvc2", @@ -76,7 +95,9 @@ "sslEnforcement": "Enabled", "userVisibleState": "Ready", "fullyQualifiedDomainName": "pgtestsvc4.postgres.database.azure.com", - "earliestRestoreDate": "2018-03-14T21:08:24.637+00:00" + "earliestRestoreDate": "2018-03-14T21:08:24.637+00:00", + "publicNetworkAccess": "Enabled", + "privateEndpointConnections": [] }, "location": "westus", "tags": { diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerUpdate.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerUpdate.json index 81b796a449fb..80e15e3f2033 100644 --- a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerUpdate.json +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/examples/ServerUpdate.json @@ -7,7 +7,8 @@ "parameters": { "properties": { "administratorLoginPassword": "newpa$$w0rd", - "sslEnforcement": "Enabled" + "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_2" } } }, @@ -29,6 +30,7 @@ }, "version": "9.6", "sslEnforcement": "Enabled", + "minimalTlsVersion": "TLS1_2", "userVisibleState": "Ready", "fullyQualifiedDomainName": "pgtestsvc4.postgres.database.azure.com", "earliestRestoreDate": "2018-03-14T21:08:24.637+00:00" diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/postgresql.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/postgresql.json index a1bf47d3694d..59450f0fab7b 100644 --- a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/postgresql.json +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2017-12-01/postgresql.json @@ -57,13 +57,13 @@ "description": "Creates a new server, or will overwrite an existing server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -110,13 +110,13 @@ "description": "Updates an existing server. The request body can contain one to many of the properties present in the normal server definition.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -157,13 +157,13 @@ "description": "Deletes a server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -195,13 +195,13 @@ "description": "Gets information about a server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -231,13 +231,13 @@ "description": "List all the servers in a given resource group.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" } ], "responses": { @@ -267,10 +267,10 @@ "description": "List all the servers in a given subscription.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" } ], "responses": { @@ -300,13 +300,13 @@ "description": "List all the replicas for a given server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -339,13 +339,13 @@ "description": "Restarts a server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -382,13 +382,13 @@ "description": "Creates a new firewall rule or updates an existing firewall rule.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -438,13 +438,13 @@ "description": "Deletes a server firewall rule.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -479,13 +479,13 @@ "description": "Gets information about a server firewall rule.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -518,13 +518,13 @@ "description": "List all the firewall rules in a given server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -552,16 +552,16 @@ "operationId": "VirtualNetworkRules_Get", "parameters": [ { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/virtualNetworkRuleNameParameter" @@ -592,16 +592,16 @@ "operationId": "VirtualNetworkRules_CreateOrUpdate", "parameters": [ { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { "$ref": "#/parameters/virtualNetworkRuleNameParameter" @@ -651,7 +651,7 @@ "operationId": "VirtualNetworkRules_Delete", "parameters": [ { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -660,10 +660,10 @@ "$ref": "#/parameters/virtualNetworkRuleNameParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -697,16 +697,16 @@ "operationId": "VirtualNetworkRules_ListByServer", "parameters": [ { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -744,13 +744,13 @@ "description": "Creates a new database or updates an existing database.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -800,13 +800,13 @@ "description": "Deletes a database.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -841,13 +841,13 @@ "description": "Gets information about a database.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -880,13 +880,13 @@ "description": "List all the databases in a given server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -919,13 +919,13 @@ "description": "Updates a configuration of a server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -969,13 +969,13 @@ "description": "Gets information about a configuration of server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -1008,13 +1008,13 @@ "description": "List all the configurations in a given server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -1047,13 +1047,13 @@ "description": "List all the log files in a given server.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -1072,6 +1072,193 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/servers/{serverName}/Administrators/activeDirectory": { + "get": { + "tags": [ + "ServerAdministrators" + ], + "operationId": "ServerAdministrators_Get", + "x-ms-examples": { + "ServerAdministratorGet": { + "$ref": "./examples/ServerAdminGet.json" + } + }, + "description": "Gets information about a AAD server administrator.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ServerAdministratorResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "tags": [ + "ServerAdministrators" + ], + "operationId": "ServerAdministrators_CreateOrUpdate", + "x-ms-examples": { + "ServerAdministratorCreate": { + "$ref": "./examples/ServerAdminCreateUpdate.json" + } + }, + "description": "Creates or update active directory administrator on an existing server. The update action will overwrite the existing administrator.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ServerAdministratorResource" + }, + "description": "The required parameters for creating or updating an AAD server administrator." + } + ], + "responses": { + "200": { + "description": "Successfully updated the active directory administrator", + "schema": { + "$ref": "#/definitions/ServerAdministratorResource" + } + }, + "202": { + "description": "Operation in progress", + "schema": { + "$ref": "#/definitions/ServerAdministratorResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "ServerAdministrators" + ], + "operationId": "ServerAdministrators_Delete", + "x-ms-examples": { + "ServerAdministratorsDelete": { + "$ref": "./examples/ServerAdminDelete.json" + } + }, + "description": "Deletes server active directory administrator.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the active directory administrator" + }, + "202": { + "description": "Operation in progress" + }, + "204": { + "description": "The specified Server active directory administrator does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/servers/{serverName}/administrators": { + "get": { + "tags": [ + "ServerAdministrators" + ], + "operationId": "ServerAdministrators_List", + "description": "Returns a list of server Administrators.", + "x-ms-examples": { + "get a list of server administrators": { + "$ref": "./examples/ServerAdminList.json" + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ServerAdministratorResourceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, "/subscriptions/{subscriptionId}/providers/Microsoft.DBforPostgreSQL/locations/{locationName}/performanceTiers": { "get": { "tags": [ @@ -1086,10 +1273,10 @@ "description": "List all the performance tiers at specified location in a given subscription.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "#/parameters/LocationNameParameter" @@ -1122,10 +1309,10 @@ "description": "Check the availability of name for resource", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { "name": "nameAvailabilityRequest", @@ -1156,7 +1343,7 @@ "operationId": "ServerSecurityAlertPolicies_Get", "parameters": [ { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -1176,10 +1363,10 @@ } }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -1207,7 +1394,7 @@ "operationId": "ServerSecurityAlertPolicies_CreateOrUpdate", "parameters": [ { - "$ref": "#/parameters/ResourceGroupParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/ServerNameParameter" @@ -1236,10 +1423,10 @@ } }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -1281,7 +1468,7 @@ "description": "Lists all of the available REST API operations.", "parameters": [ { - "$ref": "#/parameters/ApiVersionParameter" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" } ], "responses": { @@ -1324,27 +1511,139 @@ "modelAsString": false } }, - "ProxyResource": { - "description": "Resource properties.", + "MinimalTlsVersion": { + "type": "string", + "description": "Enforce a minimal Tls version for the server.", + "enum": [ + "TLS1_0", + "TLS1_1", + "TLS1_2", + "TLSEnforcementDisabled" + ], + "x-ms-enum": { + "name": "MinimalTlsVersionEnum", + "modelAsString": true + } + }, + "InfrastructureEncryption": { + "type": "string", + "description": "Status showing whether the server enabled infrastructure encryption.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "InfrastructureEncryption", + "modelAsString": true + } + }, + "PublicNetworkAccess": { + "type": "string", + "description": "Whether or not public network access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccessEnum", + "modelAsString": true + } + }, + "ServerPrivateEndpointConnection": { + "description": "A private endpoint connection under a server", + "type": "object", "properties": { "id": { - "readOnly": true, + "description": "Resource ID of the Private Endpoint Connection.", "type": "string", - "description": "Resource ID" + "readOnly": true }, - "name": { - "readOnly": true, - "type": "string", - "description": "Resource name." + "properties": { + "$ref": "#/definitions/ServerPrivateEndpointConnectionProperties", + "description": "Private endpoint connection properties", + "readOnly": true + } + } + }, + "ServerPrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." }, - "type": { - "readOnly": true, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/ServerPrivateLinkServiceConnectionStateProperty", + "description": "Connection state of the private endpoint connection." + }, + "provisioningState": { + "description": "State of the private endpoint connection.", + "enum": [ + "Approving", + "Ready", + "Dropping", + "Failed", + "Rejecting" + ], "type": "string", - "description": "Resource type." + "readOnly": true, + "x-ms-enum": { + "name": "PrivateEndpointProvisioningState", + "modelAsString": true + } + } + } + }, + "PrivateEndpointProperty": { + "type": "object", + "properties": { + "id": { + "description": "Resource id of the private endpoint.", + "type": "string" } }, "x-ms-azure-resource": true }, + "ServerPrivateLinkServiceConnectionStateProperty": { + "required": [ + "status", + "description" + ], + "type": "object", + "properties": { + "status": { + "description": "The private link service connection status.", + "enum": [ + "Approved", + "Pending", + "Rejected", + "Disconnected" + ], + "type": "string", + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStateStatus", + "modelAsString": true + } + }, + "description": { + "description": "The private link service connection description.", + "type": "string" + }, + "actionsRequired": { + "description": "The actions required for private link service connection.", + "enum": [ + "None" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStateActionsRequire", + "modelAsString": true + } + } + } + }, "TrackedResource": { "description": "Resource properties including location and tags for track resources.", "properties": { @@ -1362,7 +1661,7 @@ }, "allOf": [ { - "$ref": "#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" } ], "required": [ @@ -1383,13 +1682,27 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, + "byokEnforcement": { + "type": "string", + "description": "Status showing whether the server data encryption is enabled with customer-managed keys.", + "readOnly": true + }, + "infrastructureEncryption": { + "$ref": "#/definitions/InfrastructureEncryption", + "description": "Status showing whether the server enabled infrastructure encryption." + }, "userVisibleState": { "type": "string", "description": "A state of a server that is visible to user.", "enum": [ "Ready", "Dropping", - "Disabled" + "Disabled", + "Inaccessible" ], "x-ms-enum": { "name": "ServerState", @@ -1422,6 +1735,18 @@ "format": "int32", "minimum": 0, "description": "The maximum number of replicas that a master server can have." + }, + "publicNetworkAccess": { + "$ref": "#/definitions/PublicNetworkAccess", + "description": "Whether or not public network access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'" + }, + "privateEndpointConnections": { + "description": "List of private endpoint connections on a server", + "type": "array", + "items": { + "$ref": "#/definitions/ServerPrivateEndpointConnection" + }, + "readOnly": true } }, "description": "The properties of a server." @@ -1478,6 +1803,18 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, + "infrastructureEncryption": { + "$ref": "#/definitions/InfrastructureEncryption", + "description": "Status showing whether the server enabled infrastructure encryption." + }, + "publicNetworkAccess": { + "$ref": "#/definitions/PublicNetworkAccess", + "description": "Whether or not public network access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'" + }, "storageProfile": { "$ref": "#/definitions/StorageProfile", "description": "Storage profile of a server." @@ -1619,8 +1956,41 @@ }, "description": "Billing information related properties of a server." }, + "ResourceIdentity": { + "description": "Azure Active Directory identity configuration for a resource.", + "type": "object", + "properties": { + "principalId": { + "format": "uuid", + "description": "The Azure Active Directory principal id.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The identity type. Set this to 'SystemAssigned' in order to automatically create and assign an Azure Active Directory principal for the resource.", + "enum": [ + "SystemAssigned" + ], + "type": "string", + "x-ms-enum": { + "name": "IdentityType", + "modelAsString": true + } + }, + "tenantId": { + "format": "uuid", + "description": "The Azure Active Directory tenant id.", + "type": "string", + "readOnly": true + } + } + }, "Server": { "properties": { + "identity": { + "$ref": "#/definitions/ResourceIdentity", + "description": "The Azure Active Directory identity of the server." + }, "sku": { "$ref": "#/definitions/Sku", "description": "The SKU (pricing tier) of the server." @@ -1640,6 +2010,10 @@ }, "ServerForCreate": { "properties": { + "identity": { + "$ref": "#/definitions/ResourceIdentity", + "description": "The Azure Active Directory identity of the server." + }, "sku": { "$ref": "#/definitions/Sku", "description": "The SKU (pricing tier) of the server." @@ -1669,6 +2043,10 @@ }, "ServerUpdateParameters": { "properties": { + "identity": { + "$ref": "#/definitions/ResourceIdentity", + "description": "The Azure Active Directory identity of the server." + }, "sku": { "$ref": "#/definitions/Sku", "description": "The SKU (pricing tier) of the server." @@ -1692,6 +2070,14 @@ "$ref": "#/definitions/SslEnforcement", "description": "Enable ssl enforcement or not when connect to server." }, + "minimalTlsVersion": { + "$ref": "#/definitions/MinimalTlsVersion", + "description": "Enforce a minimal Tls version for the server." + }, + "publicNetworkAccess": { + "$ref": "#/definitions/PublicNetworkAccess", + "description": "Whether or not public network access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'" + }, "replicationRole": { "type": "string", "description": "The replication role of the server." @@ -1751,7 +2137,7 @@ }, "allOf": [ { - "$ref": "#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" } ], "required": [ @@ -1809,7 +2195,7 @@ "type": "object", "allOf": [ { - "$ref": "#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" } ], "properties": { @@ -1862,7 +2248,7 @@ }, "allOf": [ { - "$ref": "#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" } ], "description": "Represents a Database." @@ -1922,7 +2308,7 @@ }, "allOf": [ { - "$ref": "#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" } ], "description": "Represents a Configuration." @@ -2058,7 +2444,7 @@ }, "allOf": [ { - "$ref": "#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" } ], "description": "Represents a log file." @@ -2232,7 +2618,7 @@ "type": "object", "allOf": [ { - "$ref": "#/definitions/ProxyResource" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" } ], "properties": { @@ -2247,60 +2633,75 @@ "x-ms-external": true, "properties": { "error": { - "$ref": "#/definitions/CloudErrorBody" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" } }, "description": "An error response from the Batch service." }, - "CloudErrorBody": { - "x-ms-external": true, + "ServerAdministratorProperties": { "properties": { - "code": { + "administratorType": { "type": "string", - "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + "description": "The type of administrator.", + "enum": [ + "ActiveDirectory" + ], + "x-ms-enum": { + "name": "AdministratorType" + } }, - "message": { + "login": { "type": "string", - "description": "A message describing the error, intended to be suitable for display in a user interface." + "description": "The server administrator login account name." }, - "target": { + "sid": { "type": "string", - "description": "The target of the particular error. For example, the name of the property in error." + "description": "The server administrator Sid (Secure ID).", + "format": "uuid" }, - "details": { + "tenantId": { + "type": "string", + "description": "The server Active Directory Administrator tenant id.", + "format": "uuid" + } + }, + "required": [ + "tenantId", + "administratorType", + "login", + "sid" + ], + "description": "The properties of an server Administrator." + }, + "ServerAdministratorResource": { + "properties": { + "properties": { + "$ref": "#/definitions/ServerAdministratorProperties", + "x-ms-client-flatten": true, + "description": "Properties of the server AAD administrator." + } + }, + "description": "Represents a and external administrator to be created.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ] + }, + "ServerAdministratorResourceListResult": { + "properties": { + "value": { "type": "array", "items": { - "$ref": "#/definitions/CloudErrorBody" + "$ref": "#/definitions/ServerAdministratorResource" }, - "description": "A list of additional details about the error." + "description": "The list of server Active Directory Administrators for the server." } }, - "description": "An error response from the Batch service." + "description": "The response to a list Active Directory Administrators request." } }, "parameters": { - "SubscriptionIdParameter": { - "name": "subscriptionId", - "in": "path", - "required": true, - "type": "string", - "description": "The subscription ID that identifies an Azure subscription." - }, - "ApiVersionParameter": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "The API version to use for the request." - }, - "ResourceGroupParameter": { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "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.", - "x-ms-parameter-location": "method" - }, "ServerNameParameter": { "name": "serverName", "in": "path", diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2018-06-01/PrivateEndpointConnections.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2018-06-01/PrivateEndpointConnections.json new file mode 100644 index 000000000000..2e6bb126a7a1 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2018-06-01/PrivateEndpointConnections.json @@ -0,0 +1,416 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-06-01", + "title": "PostgreSQLManagementClient", + "description": "The Microsoft Azure management API provides create, read, update, and delete functionality for Azure PostgreSQL resources including servers, databases, firewall rules, VNET rules, security alert policies, log files and configurations with new business model." + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/servers/{serverName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Gets a private endpoint connection.", + "operationId": "PrivateEndpointConnections_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Gets private endpoint connection.": { + "$ref": "./examples/PrivateEndpointConnectionGet.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Approve or reject a private endpoint connection with a given name.", + "operationId": "PrivateEndpointConnections_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully approved or rejected private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Approve or reject a private endpoint connection with a given name.": { + "$ref": "./examples/PrivateEndpointConnectionUpdate.json" + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Deletes a private endpoint connection with a given name.", + "operationId": "PrivateEndpointConnections_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted private endpoint connection." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "Private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes a private endpoint connection with a given name.": { + "$ref": "./examples/PrivateEndpointConnectionDelete.json" + } + } + }, + "patch": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_UpdateTags", + "summary": "Updates tags on private endpoint connection.", + "description": "Updates private endpoint connection with the specified tags.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TagsObject" + }, + "description": "Parameters supplied to the Update private endpoint connection Tags operation." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update private endpoint connection Tags": { + "$ref": "./examples/PrivateEndpointConnectionUpdateTags.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/servers/{serverName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Gets all private endpoint connections on a server.", + "operationId": "PrivateEndpointConnections_ListByServer", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private endpoint connections.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets list of private endpoint connections on a server.": { + "$ref": "./examples/PrivateEndpointConnectionList.json" + } + } + } + } + }, + "definitions": { + "PrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionStateProperty", + "description": "Connection state of the private endpoint connection." + }, + "provisioningState": { + "description": "State of the private endpoint connection.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateEndpointProperty": { + "type": "object", + "properties": { + "id": { + "description": "Resource id of the private endpoint.", + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "PrivateLinkServiceConnectionStateProperty": { + "required": [ + "status", + "description" + ], + "type": "object", + "properties": { + "status": { + "description": "The private link service connection status.", + "type": "string" + }, + "description": { + "description": "The private link service connection description.", + "type": "string" + }, + "actionsRequired": { + "description": "The actions required for private link service connection.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateEndpointConnection": { + "description": "A private endpoint connection", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "PrivateEndpointConnectionListResult": { + "description": "A list of private endpoint connections.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response from the Batch service." + }, + "TagsObject": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "description": "Tags object for patch operations." + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2018-06-01/PrivateLinkResources.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2018-06-01/PrivateLinkResources.json new file mode 100644 index 000000000000..440523931c12 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2018-06-01/PrivateLinkResources.json @@ -0,0 +1,207 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-06-01", + "title": "PostgreSQLManagementClient", + "description": "The Microsoft Azure management API provides create, read, update, and delete functionality for Azure PostgreSQL resources including servers, databases, firewall rules, VNET rules, security alert policies, log files and configurations with new business model." + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/servers/{serverName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "description": "Gets the private link resources for PostgreSQL server.", + "operationId": "PrivateLinkResources_ListByServer", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets private link resources for PostgreSQL.": { + "$ref": "./examples/PrivateLinkResourcesList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/servers/{serverName}/privateLinkResources/{groupName}": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "description": "Gets a private link resource for PostgreSQL server.", + "operationId": "PrivateLinkResources_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "groupName", + "in": "path", + "description": "The name of the private link resource.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Gets a private link resource for PostgreSQL.": { + "$ref": "./examples/PrivateLinkResourcesGet.json" + } + } + } + } + }, + "definitions": { + "PrivateLinkResourceListResult": { + "description": "A list of private link resources", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateLinkResourceProperties": { + "description": "Properties of a private link resource.", + "type": "object", + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "PrivateLinkResource": { + "description": "A private link resource", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "The private link resource group id.", + "readOnly": true + } + } + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response from the Batch service." + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "description": "The name of the server.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2018-06-01/examples/PrivateEndpointConnectionDelete.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2018-06-01/examples/PrivateEndpointConnectionDelete.json new file mode 100644 index 000000000000..89d39b01da4e --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2018-06-01/examples/PrivateEndpointConnectionDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2018-06-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2018-06-01/examples/PrivateEndpointConnectionGet.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2018-06-01/examples/PrivateEndpointConnectionGet.json new file mode 100644 index 000000000000..d61e576c9bd7 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2018-06-01/examples/PrivateEndpointConnectionGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2018-06-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.DBforPostgreSQL/servers/test-svr/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.DBforPostgreSQL/servers/privateEndpointConnections", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2018-06-01/examples/PrivateEndpointConnectionList.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2018-06-01/examples/PrivateEndpointConnectionList.json new file mode 100644 index 000000000000..0d4678a3e7cb --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2018-06-01/examples/PrivateEndpointConnectionList.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "api-version": "2018-06-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.DBforPostgreSQL/servers/test-svr/privateEndpointConnections/private-endpoint-connection-name-2", + "name": "private-endpoint-connection-name", + "type": "Microsoft.DBforPostgreSQL/servers/privateEndpointConnections", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.DBforPostgreSQL/servers/test-svr/privateEndpointConnections/private-endpoint-connection-name-2", + "name": "private-endpoint-connection-name-2", + "type": "Microsoft.DBforPostgreSQL/servers/privateEndpointConnections", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name-2" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2018-06-01/examples/PrivateEndpointConnectionUpdate.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2018-06-01/examples/PrivateEndpointConnectionUpdate.json new file mode 100644 index 000000000000..59a40a6b8214 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2018-06-01/examples/PrivateEndpointConnectionUpdate.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2018-06-01", + "parameters": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.DBforPostgreSQL/servers/test-svr/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.DBforPostgreSQL/servers/privateEndpointConnections", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com", + "actionsRequired": "None" + } + } + } + }, + "202": {} + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2018-06-01/examples/PrivateEndpointConnectionUpdateTags.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2018-06-01/examples/PrivateEndpointConnectionUpdateTags.json new file mode 100644 index 000000000000..13b170e9bab0 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2018-06-01/examples/PrivateEndpointConnectionUpdateTags.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "privateEndpointConnectionName": "private-endpoint-connection-name", + "api-version": "2018-06-01", + "parameters": { + "tags": { + "key1": "val1", + "key2": "val2", + "key3": "val3" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.DBforPostgreSQL/servers/test-svr/privateEndpointConnections/private-endpoint-connection-name", + "name": "private-endpoint-connection-name", + "type": "Microsoft.DBforPostgreSQL/servers/privateEndpointConnections", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@contoso.com", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2018-06-01/examples/PrivateLinkResourcesGet.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2018-06-01/examples/PrivateLinkResourcesGet.json new file mode 100644 index 000000000000..f4a35aa86bba --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2018-06-01/examples/PrivateLinkResourcesGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "groupName": "plr", + "api-version": "2018-06-01" + }, + "responses": { + "200": { + "body": { + "id": "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.DBforPostgreSQL/servers/test-svr/privateLinkResources/plr", + "name": "plr", + "type": "Microsoft.DBforPostgreSQL/servers/privateLinkResources", + "properties": { + "groupId": "postgresqlServer", + "requiredMembers": [ + "postgresqlServer" + ] + } + } + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2018-06-01/examples/PrivateLinkResourcesList.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2018-06-01/examples/PrivateLinkResourcesList.json new file mode 100644 index 000000000000..47620a6a3dbd --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2018-06-01/examples/PrivateLinkResourcesList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default", + "serverName": "test-svr", + "api-version": "2018-06-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default/providers/Microsoft.DBforPostgreSQL/servers/test-svr/privateLinkResources/plr", + "name": "plr", + "type": "Microsoft.DBforPostgreSQL/servers/privateLinkResources", + "properties": { + "groupId": "postgresqlServer", + "requiredMembers": [ + "postgresqlServer" + ] + } + } + ] + } + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/DataEncryptionKeys.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/DataEncryptionKeys.json new file mode 100644 index 000000000000..a63faa341642 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/DataEncryptionKeys.json @@ -0,0 +1,330 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-01-01", + "title": "PostgreSQLManagementClient", + "description": "The Microsoft Azure management API provides create, read, update, and delete functionality for Azure PostgreSQL resources including servers, databases, firewall rules, VNET rules, security alert policies, log files, encryption keys, active directory administrator and configurations." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/servers/{serverName}/keys": { + "get": { + "tags": [ + "ServerKeys" + ], + "description": "Gets a list of Server keys.", + "operationId": "ServerKeys_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of PostgreSQL Server keys.", + "schema": { + "$ref": "#/definitions/ServerKeyListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List the keys for a PostgreSQL Server.": { + "$ref": "./examples/ServerKeyList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/servers/{serverName}/keys/{keyName}": { + "get": { + "tags": [ + "ServerKeys" + ], + "description": "Gets a PostgreSQL Server key.", + "operationId": "ServerKeys_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the PostgreSQL Server key to be retrieved.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified PostgreSQL Server key.", + "schema": { + "$ref": "#/definitions/ServerKey" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Get the PostgreSQL Server key": { + "$ref": "./examples/ServerKeyGet.json" + } + } + }, + "put": { + "tags": [ + "ServerKeys" + ], + "description": "Creates or updates a PostgreSQL Server key.", + "operationId": "ServerKeys_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the PostgreSQL Server key to be operated on (updated or created).", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested PostgreSQL Server key resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/ServerKey" + } + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the PostgreSQL Server key.", + "schema": { + "$ref": "#/definitions/ServerKey" + } + }, + "202": { + "description": "Operation in progress", + "schema": { + "$ref": "#/definitions/ServerKey" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates or updates a PostgreSQL Server key": { + "$ref": "./examples/ServerKeyCreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "ServerKeys" + ], + "description": "Deletes the PostgreSQL Server key with the given name.", + "operationId": "ServerKeys_Delete", + "parameters": [ + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "keyName", + "in": "path", + "description": "The name of the PostgreSQL Server key to be deleted.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the PostgreSQL Server key." + }, + "202": { + "description": "Operation in progress" + }, + "204": { + "description": "The specified PostgreSQL Server key does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete the PostgreSQL Server key": { + "$ref": "./examples/ServerKeyDelete.json" + } + } + } + } + }, + "definitions": { + "ServerKeyListResult": { + "description": "A list of PostgreSQL Server keys.", + "type": "object", + "properties": { + "value": { + "description": "A list of PostgreSQL Server keys.", + "type": "array", + "items": { + "$ref": "#/definitions/ServerKey" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ServerKeyProperties": { + "description": "Properties for a key execution.", + "required": [ + "serverKeyType" + ], + "type": "object", + "properties": { + "serverKeyType": { + "description": "The key type like 'AzureKeyVault'.", + "enum": [ + "AzureKeyVault" + ], + "type": "string", + "x-ms-enum": { + "name": "ServerKeyType", + "modelAsString": true + } + }, + "uri": { + "description": "The URI of the key.", + "type": "string" + }, + "creationDate": { + "format": "date-time", + "description": "The key creation date.", + "type": "string", + "readOnly": true + } + } + }, + "ServerKey": { + "description": "A PostgreSQL Server key.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "kind": { + "description": "Kind of encryption protector used to protect the key.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/ServerKeyProperties", + "description": "Properties of the ServerKey Resource.", + "x-ms-client-flatten": true + } + } + }, + "CloudError": { + "x-ms-external": true, + "properties": { + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + }, + "description": "An error response from the Batch service." + } + }, + "parameters": { + "ServerNameParameter": { + "name": "serverName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the server.", + "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/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/examples/ServerKeyCreateOrUpdate.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/examples/ServerKeyCreateOrUpdate.json new file mode 100644 index 000000000000..393dae1882fe --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/examples/ServerKeyCreateOrUpdate.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "testserver", + "keyName": "someVault_someKey_01234567890123456789012345678901", + "api-version": "2020-01-01", + "parameters": { + "properties": { + "serverKeyType": "AzureKeyVault", + "uri": "https://someVault.vault.azure.net/keys/someKey/01234567890123456789012345678901" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/testserver/keys/someVault_someKey_01234567890123456789012345678901", + "name": "omeVault_someKey_01234567890123456789012345678901", + "type": "Microsoft.DBforPostgreSQL/servers/keys", + "kind": "azurekeyvault", + "properties": { + "serverKeyType": "AzureKeyVault", + "uri": "https://someVault.vault.azure.net/keys/someKey/01234567890123456789012345678901", + "creationDate": "2017-05-01T00:00:00.0Z" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/testserver/keys/someVault_someKey_01234567890123456789012345678901", + "name": "omeVault_someKey_01234567890123456789012345678901", + "type": "Microsoft.DBforPostgreSQL/servers/keys", + "kind": "azurekeyvault", + "properties": { + "serverKeyType": "AzureKeyVault", + "uri": "https://someVault.vault.azure.net/keys/someKey/01234567890123456789012345678901", + "creationDate": "2017-05-01T00:00:00.0Z" + } + } + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/examples/ServerKeyDelete.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/examples/ServerKeyDelete.json new file mode 100644 index 000000000000..fea5fcac6929 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/examples/ServerKeyDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "testserver", + "keyName": "someVault_someKey_01234567890123456789012345678901", + "api-version": "2020-01-01" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/examples/ServerKeyGet.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/examples/ServerKeyGet.json new file mode 100644 index 000000000000..e93d814a0790 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/examples/ServerKeyGet.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "testserver", + "keyName": "someVault_someKey_01234567890123456789012345678901", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/testserver/keys/someVault_someKey_01234567890123456789012345678901", + "name": "someVault_someKey_01234567890123456789012345678901", + "type": "Microsoft.DBforPostgreSQL/servers/keys", + "kind": "azurekeyvault", + "properties": { + "serverKeyType": "AzureKeyVault", + "uri": "https://someVault.vault.azure.net/keys/someKey/01234567890123456789012345678901", + "creationDate": "2019-12-01T00:00:00.0Z" + } + } + } + } +} diff --git a/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/examples/ServerKeyList.json b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/examples/ServerKeyList.json new file mode 100644 index 000000000000..00c15ad367c8 --- /dev/null +++ b/specification/postgresql/resource-manager/Microsoft.DBforPostgreSQL/stable/2020-01-01/examples/ServerKeyList.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "testrg", + "serverName": "testserver", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/testrg/providers/Microsoft.DBforPostgreSQL/servers/testserver/keys/someVault_someKey_01234567890123456789012345678901", + "name": "someVault_someKey_01234567890123456789012345678901", + "type": "Microsoft.DBforPostgreSQL/servers/keys", + "kind": "azurekeyvault", + "properties": { + "serverKeyType": "AzureKeyVault", + "uri": "https://someVault.vault.azure.net/keys/someKey/01234567890123456789012345678901", + "creationDate": "2019-12-01T00:00:00.0Z" + } + } + ] + } + } + } +} diff --git a/specification/postgresql/resource-manager/readme.cli.md b/specification/postgresql/resource-manager/readme.cli.md new file mode 100644 index 000000000000..616184b4aae8 --- /dev/null +++ b/specification/postgresql/resource-manager/readme.cli.md @@ -0,0 +1,44 @@ +## CLI + +These settings don't need to apply `--cli` on the command line. + +``` yaml +cli: + cli-name: postgresql + package-name: azure-mgmt-rdbms-postgresql + namespace: azure.mgmt.rdbms.postgresql + test-scenario: + - name: Create a new server + - name: Create a server as a geo restore + - name: Create a replica server + - name: Create a database as a point in time restore + - name: DatabaseCreate + - name: FirewallRuleCreate + - name: ConfigurationCreateOrUpdate + - name: Create or update a virtual network rule + - name: Update a server's threat detection policy with all parameters + - name: Update a server's threat detection policy with minimal parameters + - name: Get a server's threat detection policy + - name: Gets a virtual network rule + - name: ConfigurationGet + - name: FirewallRuleGet + - name: DatabaseGet + - name: List virtual network rules + - name: ConfigurationList + - name: FirewallRuleList + - name: DatabaseList + - name: LogFileList + - name: ReplicasListByServer + - name: ServerGet + - name: PerformanceTiersList + - name: ServerListByResourceGroup + - name: ServerList + - name: OperationList + - name: ServerRestart + - name: ServerUpdate + - name: NameAvailability + - name: Delete a virtual network rule + - name: FirewallRuleDelete + - name: DatabaseDelete + - name: ServerDelete +``` \ No newline at end of file diff --git a/specification/postgresql/resource-manager/readme.md b/specification/postgresql/resource-manager/readme.md index e7b7b0b0056c..115fef7db845 100644 --- a/specification/postgresql/resource-manager/readme.md +++ b/specification/postgresql/resource-manager/readme.md @@ -8,7 +8,7 @@ This is the AutoRest configuration file for Sql. --- ## Getting Started -To build the SDK for PostgreSQLPostgreSQL, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: +To build the SDK for PostgreSQL, simply [Install AutoRest](https://aka.ms/autorest/install) and in this folder, run: > `autorest` @@ -22,11 +22,13 @@ To see additional help and options, run: ### Basic Information -These are the global settings for the Sql API. +These are the global settings for the PostgreSQL API. ``` yaml +title: PostgreSQLManagementClient +description: The Microsoft Azure management API provides create, read, update, and delete functionality for Azure PostgreSQL resources including servers, databases, firewall rules, VNET rules, security alert policies, log files and configurations with new business model. openapi-type: arm -tag: package-2017-12-01 +tag: package-2020-01-01 ``` ### Tag: package-2020-01-01-privatepreview @@ -39,6 +41,21 @@ input-file: - Microsoft.DBforPostgreSQL/preview/2020-01-01-privatepreview/DataEncryptionKeys.json ``` + +### Tag: package-2020-01-01 + +These settings apply only when `--tag=package-2020-01-01` is specified on the command line. + + +``` yaml $(tag) == 'package-2020-01-01' +input-file: +- Microsoft.DBforPostgreSQL/stable/2017-12-01/postgresql.json +- Microsoft.DBforPostgreSQL/stable/2018-06-01/PrivateEndpointConnections.json +- Microsoft.DBforPostgreSQL/stable/2018-06-01/PrivateLinkResources.json +- Microsoft.DBforPostgreSQL/stable/2020-01-01/DataEncryptionKeys.json +``` + + ### Tag: package-2018-06-01-privatepreview These settings apply only when `--tag=package-2018-06-01-privatepreview` is specified on the command line. @@ -50,6 +67,19 @@ input-file: - Microsoft.DBforPostgreSQL/preview/2018-06-01-privatepreview/PrivateLinkResources.json ``` +### Tag: package-2018-06-01 + +These settings apply only when `--tag=package-2018-06-01` is specified on the command line. + + +``` yaml $(tag) == 'package-2018-06-01' +input-file: +- Microsoft.DBforPostgreSQL/stable/2017-12-01/postgresql.json +- Microsoft.DBforPostgreSQL/stable/2018-06-01/PrivateEndpointConnections.json +- Microsoft.DBforPostgreSQL/stable/2018-06-01/PrivateLinkResources.json +``` + + ### Tag: package-2017-12-01-preview These settings apply only when `--tag=package-2017-12-01-preview` is specified on the command line. @@ -140,7 +170,7 @@ See configuration in [readme.go.md](./readme.go.md) See configuration in [readme.java.md](./readme.java.md) -## Multi-API/Profile support for AutoRest v3 generators +## Multi-API/Profile support for AutoRest v3 generators AutoRest V3 generators require the use of `--tag=all-api-versions` to select api files. @@ -153,18 +183,20 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: - $(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/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 - - $(this-folder)/Microsoft.DBforPostgreSQL/stable/2017-12-01/postgresql.json ``` -If there are files that should not be in the `all-api-versions` set, +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: +#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 8c3839b31bd8..4c4478c3404a 100644 --- a/specification/powerbidedicated/resource-manager/readme.md +++ b/specification/powerbidedicated/resource-manager/readme.md @@ -54,6 +54,7 @@ swagger-to-sdk: - repo: azure-sdk-for-go - repo: azure-sdk-for-js - repo: azure-sdk-for-node + - repo: azure-sdk-for-python ``` ## C# @@ -108,6 +109,10 @@ regenerate-manager: true generate-interface: true ``` +## Python + +See configuration in [readme.python.md](./readme.python.md) + ## Multi-API/Profile support for AutoRest v3 generators diff --git a/specification/powerbidedicated/resource-manager/readme.python.md b/specification/powerbidedicated/resource-manager/readme.python.md new file mode 100644 index 000000000000..3435142e1945 --- /dev/null +++ b/specification/powerbidedicated/resource-manager/readme.python.md @@ -0,0 +1,27 @@ +## 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 $(python) +python-mode: create +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: azure.mgmt.powerbidedicated + package-name: azure-mgmt-powerbidedicated + package-version: 2.0.0 + clear-output-folder: true +``` +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/powerbidedicated/azure-mgmt-powerbidedicated/azure/mgmt/powerbidedicated +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/powerbidedicated/azure-mgmt-powerbidedicated +``` diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/examples/GETVault.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/examples/GETVault.json index 501c08fe4a58..3d2afa463e73 100644 --- a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/examples/GETVault.json +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/examples/GETVault.json @@ -14,8 +14,31 @@ "tags": { "TestUpdatedKey": "TestUpdatedValue" }, + "identity": { + "tenantId": "d676e86e-2206-4a7c-999c-ece52c144b5b", + "principalId": "3137d6c7-5d6c-411c-b934-7a2a729ee247", + "type": "SystemAssigned" + }, "properties": { - "provisioningState": "Succeeded" + "provisioningState": "Succeeded", + "privateEndpointConnections": [ + { + "id": "/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/Vaults/pemsi-ecy-rsv2/privateEndpointConnections/pe114-pemsi-ecy-rsv.5944358949303501042.backup.75061caa-cba4-4849-8e09-608da4914aad", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.Network/privateEndpoints/pe114-pemsi-ecy-rsv" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "None", + "actionsRequired": "None" + } + } + } + ], + "privateEndpointStateForBackup": "Enabled", + "privateEndpointStateForSiteRecovery": "None" }, "id": "/subscriptions/77777777-b0c6-47a2-b37c-d8e65a629c18/resourceGroups/Default-RecoveryServices-ResourceGroup/providers/Microsoft.RecoveryServices/vaults/swaggerExample", "type": "Microsoft.RecoveryServices/vaults", diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/examples/GetPrivateLinkResources.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/examples/GetPrivateLinkResources.json new file mode 100644 index 000000000000..eb4c7a1cbb1a --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/examples/GetPrivateLinkResources.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "6c48fa17-39c7-45f1-90ac-47a587128ace", + "resourceGroupName": "petesting", + "vaultName": "pemsi-ecy-rsv2", + "api-version": "2016-06-01", + "privateLinkResourceName": "backupResource" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/petesting/providers/Microsoft.RecoveryServices/Vaults/pemsi-ecy-rsv2/privateLinkResources/backupResource", + "name": "backupResource", + "type": "Microsoft.RecoveryServices/Vaults/privateLinkResources", + "properties": { + "groupId": "AzureBackup", + "requiredMembers": [ + "backup-fab1", + "backup-rec2", + "backup-prot1", + "backup-ecs1", + "backup-tel1", + "backup-wbcm1", + "backup-fc1", + "backup-id1" + ], + "requiredZoneNames": [ + "privatelink.ecy.backup.windowsazure.com", + "privatelink.queue.core.windows.net", + "privatelink.blob.core.windows.net" + ] + } + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/examples/ListPrivateLinkResources.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/examples/ListPrivateLinkResources.json new file mode 100644 index 000000000000..3a245b92f5ac --- /dev/null +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/examples/ListPrivateLinkResources.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "6c48fa17-39c7-45f1-90ac-47a587128ace", + "resourceGroupName": "petesting", + "vaultName": "pemsi-ecy-rsv2", + "api-version": "2016-06-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/petesting/providers/Microsoft.RecoveryServices/Vaults/pemsi-ecy-rsv2/privateLinkResources/backupResource", + "name": "backupResource", + "type": "Microsoft.RecoveryServices/Vaults/privateLinkResources", + "properties": { + "groupId": "AzureBackup", + "requiredMembers": [ + "backup-fab1", + "backup-rec2", + "backup-prot1", + "backup-ecs1", + "backup-tel1", + "backup-wbcm1", + "backup-fc1", + "backup-id1" + ], + "requiredZoneNames": [ + "privatelink.ecy.backup.windowsazure.com", + "privatelink.queue.core.windows.net", + "privatelink.blob.core.windows.net" + ] + } + }, + { + "id": "/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/gaallarg/providers/Microsoft.RecoveryServices/vaults/amchandnTest2702A/privateLinkResources/siteRecoveryResource", + "name": "siteRecoveryResource", + "type": "Microsoft.RecoveryServices/vaults/privateLinkResources", + "properties": { + "groupId": "AzureSiteRecovery", + "requiredMembers": [ + "siteRecovery-rcm1", + "siteRecovery-prot2", + "siteRecovery-tel1", + "siteRecovery-srs1", + "siteRecovery-prot2b", + "siteRecovery-id1" + ], + "requiredZoneNames": [ + "privatelink.ecy.siterecovery.windowsazure.com", + "privatelink.queue.core.windows.net", + "privatelink.blob.core.windows.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/examples/PUTVault.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/examples/PUTVault.json index d2a9dca8334c..9f7a754d4a1c 100644 --- a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/examples/PUTVault.json +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/examples/PUTVault.json @@ -9,7 +9,10 @@ "sku": { "name": "Standard" }, - "location": "West US" + "location": "West US", + "identity": { + "type": "SystemAssigned" + } } }, "responses": { @@ -21,6 +24,11 @@ "tags": { "TestUpdatedKey": "TestUpdatedValue" }, + "identity": { + "tenantId": "d676e86e-2206-4a7c-999c-ece52c144b5b", + "principalId": "3137d6c7-5d6c-411c-b934-7a2a729ee247", + "type": "SystemAssigned" + }, "properties": { "provisioningState": "Succeeded" }, @@ -39,6 +47,11 @@ "tags": { "TestUpdatedKey": "TestUpdatedValue" }, + "identity": { + "tenantId": "d676e86e-2206-4a7c-999c-ece52c144b5b", + "principalId": "3137d6c7-5d6c-411c-b934-7a2a729ee247", + "type": "SystemAssigned" + }, "properties": { "provisioningState": "Succeeded" }, diff --git a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/vaults.json b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/vaults.json index fba28afd72a3..120ec809c638 100644 --- a/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/vaults.json +++ b/specification/recoveryservices/resource-manager/Microsoft.RecoveryServices/stable/2016-06-01/vaults.json @@ -18,6 +18,96 @@ "application/json" ], "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/privateLinkResources": { + "get": { + "tags": [ + "ListPrivateLinkResources" + ], + "summary": "Returns the list of private link resources that need to be created for Backup and SiteRecovery", + "operationId": "PrivateLinkResources_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateLinkResources" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink", + "itemName": "value" + }, + "x-ms-examples": { + "List PrivateLinkResources": { + "$ref": "./examples/ListPrivateLinkResources.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/privateLinkResources/{privateLinkResourceName}": { + "get": { + "tags": [ + "GetPrivateLinkResources" + ], + "summary": "Returns a specified private link resource that need to be created for Backup and SiteRecovery", + "operationId": "PrivateLinkResources_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ApiVersion" + }, + { + "name": "privateLinkResourceName", + "in": "path", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "deprecated": false, + "x-ms-examples": { + "Get PrivateLinkResource": { + "$ref": "./examples/GetPrivateLinkResources.json" + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/locations/{location}/checkNameAvailability": { "post": { "tags": [ @@ -62,7 +152,7 @@ "200": { "description": "OK", "schema": { - "$ref": "#/definitions/CheckNameAvailabilityResultResource" + "$ref": "#/definitions/CheckNameAvailabilityResult" } } }, @@ -548,20 +638,6 @@ } } }, - "CheckNameAvailabilityResultResource": { - "description": "Response for check name availability API. Resource provider will set availability as true | false.", - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], - "properties": { - "properties": { - "$ref": "#/definitions/CheckNameAvailabilityResult", - "description": "CheckNameAvailabilityResultResource properties" - } - } - }, "ClientDiscoveryDisplay": { "description": "Localized display information of an operation.", "type": "object", @@ -839,6 +915,9 @@ } ], "properties": { + "identity": { + "$ref": "#/definitions/IdentityData" + }, "properties": { "$ref": "#/definitions/VaultProperties" }, @@ -928,6 +1007,230 @@ }, "upgradeDetails": { "$ref": "#/definitions/UpgradeDetails" + }, + "privateEndpointConnections": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnectionVaultProperties" + }, + "description": "List of private endpoint connection.", + "readOnly": true + }, + "privateEndpointStateForBackup": { + "description": "Private endpoint state for backup.", + "enum": [ + "None", + "Enabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "VaultPrivateEndpointState", + "modelAsString": true + } + }, + "privateEndpointStateForSiteRecovery": { + "description": "Private endpoint state for site recovery.", + "enum": [ + "None", + "Enabled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "VaultPrivateEndpointState", + "modelAsString": true + } + } + } + }, + "IdentityData": { + "required": [ + "type" + ], + "type": "object", + "description": "Identity for the resource.", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of resource identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of resource." + }, + "type": { + "type": "string", + "description": "The identity type.", + "enum": [ + "SystemAssigned", + "None" + ], + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": true + } + } + } + }, + "PrivateEndpointConnectionVaultProperties": { + "description": "Information to be stored in Vault properties as an element of privateEndpointConnections List.", + "readOnly": true, + "type": "object", + "properties": { + "id": { + "description": "Format of id subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.[Service]/{resource}/{resourceName}/privateEndpointConnections/{connectionName}.", + "readOnly": true, + "type": "string" + }, + "properties": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + }, + "PrivateEndpointConnection": { + "description": "Private Endpoint Connection Response Properties.", + "readOnly": true, + "type": "object", + "properties": { + "provisioningState": { + "description": "Gets or sets provisioning state of the private endpoint connection.", + "readOnly": true, + "enum": [ + "Succeeded", + "Deleting", + "Failed", + "Pending" + ], + "type": "string", + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState" + } + } + }, + "PrivateEndpoint": { + "description": "The Private Endpoint network resource that is linked to the Private Endpoint connection.", + "readOnly": true, + "type": "object", + "properties": { + "id": { + "description": "Gets or sets id.", + "readOnly": true, + "type": "string" + } + } + }, + "PrivateLinkServiceConnectionState": { + "description": "Gets or sets private link service connection state.", + "readOnly": true, + "type": "object", + "properties": { + "status": { + "description": "Gets or sets the status.", + "readOnly": true, + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ], + "type": "string", + "x-ms-enum": { + "name": "PrivateEndpointConnectionStatus", + "modelAsString": true + } + }, + "description": { + "description": "Gets or sets description.", + "readOnly": true, + "type": "string" + }, + "actionsRequired": { + "description": "Gets or sets actions required.", + "readOnly": true, + "type": "string" + } + } + }, + "PrivateLinkResources": { + "description": "Class which represent the stamps associated with the vault.", + "readOnly": true, + "type": "object", + "properties": { + "value": { + "description": "A collection of private link resources", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + }, + "nextLink": { + "description": "Link to the next chunk of the response", + "type": "string" + } + } + }, + "PrivateLinkResource": { + "description": "Information of the private link resource.", + "readOnly": true, + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties", + "x-ms-client-flatten": true + }, + "id": { + "description": "Fully qualified identifier of the resource.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "e.g. Microsoft.RecoveryServices/vaults/privateLinkResources", + "readOnly": true, + "type": "string" + } + } + }, + "PrivateLinkResourceProperties": { + "type": "object", + "description": "Properties of the private link resource.", + "properties": { + "groupId": { + "description": "e.g. f9ad6492-33d4-4690-9999-6bfd52a0d081 (Backup) or f9ad6492-33d4-4690-9999-6bfd52a0d082 (SiteRecovery)", + "readOnly": true, + "type": "string" + }, + "requiredMembers": { + "description": "[backup-ecs1, backup-prot1, backup-prot1b, backup-prot1c, backup-id1]", + "readOnly": true, + "type": "array", + "items": { + "type": "string" + } + }, + "requiredZoneNames": { + "description": "The private link resource Private link DNS zone name.", + "readOnly": true, + "type": "array", + "items": { + "type": "string" + } } } } diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/bms.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/bms.json new file mode 100644 index 000000000000..50fb70dba218 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/bms.json @@ -0,0 +1,3603 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-12-20", + "title": "RecoveryServicesBackupClient", + "x-ms-code-generation-settings": { + "internalConstructors": false + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupAadProperties/default": { + "get": { + "tags": [ + "AadProperties" + ], + "summary": "Fetches the AAD properties from target region BCM stamp.", + "operationId": "AadProperties_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/AzureRegion" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AADPropertiesResource" + } + } + }, + "x-ms-examples": { + "Get AAD Properties for authentication in the third region": { + "$ref": "./examples/AzureIaasVm/BackupAadProperties_Get.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupCrossRegionRestore": { + "post": { + "tags": [ + "CrossRegionRestore" + ], + "summary": "Restores the specified backed up data in a different region as compared to where the data is backed up.", + "operationId": "CrossRegionRestore_Trigger", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/AzureRegion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "resource cross region restore request", + "required": true, + "schema": { + "$ref": "#/definitions/CrossRegionRestoreRequestResource" + } + } + ], + "responses": { + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Trigger Cross Region Restore": { + "$ref": "./examples/AzureIaasVm/TriggerCrossRegionRestore_Post.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupCrrJob": { + "post": { + "tags": [ + "CrrJobDetails" + ], + "summary": "Get CRR job details from target region.", + "operationId": "BackupCrrJobDetails_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/AzureRegion" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JobResource" + } + } + }, + "x-ms-examples": { + "Get Cross Region Restore Job Details in the secondary region": { + "$ref": "./examples/AzureIaasVm/GetCrrJob_Post.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupCrrJobs": { + "post": { + "tags": [ + "BackupCrrJobs" + ], + "summary": "Gets the list of CRR jobs from the target region.", + "operationId": "BackupCrrJobs_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/AzureRegion" + }, + { + "$ref": "#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JobResourceList" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Cross Region Restore Jobs in the secondary region": { + "$ref": "./examples/AzureIaasVm/ListCrrJobs_Post.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupCrrOperationResults/{operationId}": { + "get": { + "tags": [ + "CrrOperationResults" + ], + "operationId": "CrrOperationResults_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/AzureRegion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Get Operation Results for Cross Region Restore": { + "$ref": "./examples/AzureIaasVm/GetCrrOperationResults_Get.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupCrrOperationsStatus/{operationId}": { + "get": { + "tags": [ + "CrrOperationStatus" + ], + "operationId": "CrrOperationStatus_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/AzureRegion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationStatus" + } + } + }, + "x-ms-examples": { + "Get Operation Status for Cross Region Restore": { + "$ref": "./examples/AzureIaasVm/GetCrrOperationStatus_Get.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPoints/{recoveryPointId}/accessToken": { + "post": { + "tags": [ + "RecoveryPoints" + ], + "summary": "Returns the Access token for communication between BMS and Protection service", + "operationId": "RecoveryPoints_GetAccessToken", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the container.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Name of the container.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Name of the Protected Item.", + "required": true, + "type": "string" + }, + { + "name": "recoveryPointId", + "in": "path", + "description": "Recovery Point Id", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/CrrAccessTokenResource" + } + } + }, + "x-ms-examples": { + "Get Access Token for Crr": { + "$ref": "./examples/AzureIaasVm/GetAccessToken_Get.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPoints/": { + "get": { + "tags": [ + "RecoveryPoints_Crr" + ], + "description": "Lists the backup copies for the backed up item.", + "operationId": "RecoveryPointsCrr_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "fabricName", + "in": "path", + "description": "Fabric name associated with the backed up item.", + "required": true, + "type": "string" + }, + { + "name": "containerName", + "in": "path", + "description": "Container name associated with the backed up item.", + "required": true, + "type": "string" + }, + { + "name": "protectedItemName", + "in": "path", + "description": "Backed up item whose backup copies are to be fetched.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RecoveryPointResourceList" + } + } + }, + "x-ms-odata": "#/definitions/BMSRPQueryObject", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get Protected Azure Vm Recovery Points": { + "$ref": "./examples/AzureIaasVm/RecoveryPoints_List.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupProtectedItems/": { + "get": { + "tags": [ + "BackupProtectedItems_Crr" + ], + "description": "Provides a pageable list of all items that are backed up within a vault.", + "operationId": "BackupProtectedItemsCrr_List", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "$filter", + "in": "query", + "description": "OData filter options.", + "required": false, + "type": "string" + }, + { + "name": "$skipToken", + "in": "query", + "description": "skipToken Filter.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ProtectedItemResourceList" + } + } + }, + "x-ms-odata": "#/definitions/ProtectedItemQueryObject", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List protected items with backupManagementType filter as AzureIaasVm": { + "$ref": "./examples/AzureIaasVm/BackupProtectedItems_List.json" + } + } + } + } + }, + "definitions": { + "AADProperties": { + "type": "object", + "properties": { + "servicePrincipalClientId": { + "type": "string" + }, + "tenantId": { + "type": "string" + }, + "authority": { + "type": "string" + }, + "audience": { + "type": "string" + }, + "servicePrincipalObjectId": { + "type": "string" + } + } + }, + "AADPropertiesResource": { + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/AADProperties", + "description": "AADPropertiesResource properties" + } + } + }, + "AzureFileshareProtectedItem": { + "description": "Azure File Share workload-specific backup item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectedItem" + } + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the fileshare represented by this backup item.", + "type": "string" + }, + "protectionStatus": { + "description": "Backup status of this backup item.", + "type": "string" + }, + "protectionState": { + "description": "Backup state of this backup item.", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectionState", + "modelAsString": true + } + }, + "healthStatus": { + "description": "backups running status for this backup item.", + "enum": [ + "Passed", + "ActionRequired", + "ActionSuggested", + "Invalid" + ], + "type": "string", + "x-ms-enum": { + "name": "HealthStatus", + "modelAsString": true + } + }, + "lastBackupStatus": { + "description": "Last backup operation status. Possible values: Healthy, Unhealthy.", + "type": "string" + }, + "lastBackupTime": { + "format": "date-time", + "description": "Timestamp of the last backup operation on this backup item.", + "type": "string" + }, + "extendedInfo": { + "$ref": "#/definitions/AzureFileshareProtectedItemExtendedInfo", + "description": "Additional information with this backup item." + } + }, + "x-ms-discriminator-value": "AzureFileShareProtectedItem" + }, + "AzureFileshareProtectedItemExtendedInfo": { + "description": "Additional information about Azure File Share backup item.", + "type": "object", + "properties": { + "oldestRecoveryPoint": { + "format": "date-time", + "description": "The oldest backup copy available for this item in the service.", + "type": "string" + }, + "recoveryPointCount": { + "format": "int32", + "description": "Number of available backup copies associated with this backup item.", + "type": "integer" + }, + "policyState": { + "description": "Indicates consistency of policy object and policy applied to this backup item.", + "type": "string" + }, + "resourceState": { + "description": "Indicates the state of this resource. Possible values are from enum ResourceState {Invalid, Active, SoftDeleted, Deleted}", + "type": "string", + "readOnly": true + }, + "resourceStateSyncTime": { + "format": "date-time", + "description": "The resource state sync time for this backup item.", + "type": "string", + "readOnly": true + } + } + }, + "AzureFileShareRecoveryPoint": { + "description": "Azure File Share workload specific backup copy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPoint" + } + ], + "properties": { + "recoveryPointType": { + "description": "Type of the backup copy. Specifies whether it is a crash consistent backup or app consistent.", + "type": "string", + "readOnly": true + }, + "recoveryPointTime": { + "format": "date-time", + "description": "Time at which this backup copy was created.", + "type": "string", + "readOnly": true + }, + "fileShareSnapshotUri": { + "description": "Contains Url to the snapshot of fileshare, if applicable", + "type": "string", + "readOnly": true + }, + "recoveryPointSizeInGB": { + "format": "int32", + "description": "Contains recovery point size", + "type": "integer", + "readOnly": true + } + }, + "x-ms-discriminator-value": "AzureFileShareRecoveryPoint" + }, + "AzureFileShareRestoreRequest": { + "description": "AzureFileShare Restore Request", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RestoreRequest" + } + ], + "properties": { + "recoveryType": { + "description": "Type of this recovery.", + "enum": [ + "Invalid", + "OriginalLocation", + "AlternateLocation", + "RestoreDisks", + "Offline" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryType", + "modelAsString": true + } + }, + "sourceResourceId": { + "description": "Source storage account ARM Id", + "type": "string" + }, + "copyOptions": { + "description": "Options to resolve copy conflicts.", + "enum": [ + "Invalid", + "CreateCopy", + "Skip", + "Overwrite", + "FailOnConflict" + ], + "type": "string", + "x-ms-enum": { + "name": "CopyOptions", + "modelAsString": true + } + }, + "restoreRequestType": { + "description": "Restore Type (FullShareRestore or ItemLevelRestore)", + "enum": [ + "Invalid", + "FullShareRestore", + "ItemLevelRestore" + ], + "type": "string", + "x-ms-enum": { + "name": "RestoreRequestType", + "modelAsString": true + } + }, + "restoreFileSpecs": { + "description": "List of Source Files/Folders(which need to recover) and TargetFolderPath details", + "type": "array", + "items": { + "$ref": "#/definitions/RestoreFileSpecs" + } + }, + "targetDetails": { + "$ref": "#/definitions/TargetAFSRestoreInfo", + "description": "Target File Share Details" + } + }, + "x-ms-discriminator-value": "AzureFileShareRestoreRequest" + }, + "AzureIaaSClassicComputeVMProtectedItem": { + "description": "IaaS VM workload-specific backup item representing the Classic Compute VM.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureIaaSVMProtectedItem" + } + ], + "x-ms-discriminator-value": "Microsoft.ClassicCompute/virtualMachines" + }, + "AzureIaaSComputeVMProtectedItem": { + "description": "IaaS VM workload-specific backup item representing the Azure Resource Manager VM.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureIaaSVMProtectedItem" + } + ], + "x-ms-discriminator-value": "Microsoft.Compute/virtualMachines" + }, + "AzureIaaSVMErrorInfo": { + "description": "Azure IaaS VM workload-specific error information.", + "type": "object", + "properties": { + "errorCode": { + "format": "int32", + "description": "Error code.", + "type": "integer", + "readOnly": true + }, + "errorTitle": { + "description": "Title: Typically, the entity that the error pertains to.", + "type": "string", + "readOnly": true + }, + "errorString": { + "description": "Localized error string.", + "type": "string", + "readOnly": true + }, + "recommendations": { + "description": "List of localized recommendations for above error code.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "AzureIaaSVMHealthDetails": { + "description": "Azure IaaS VM workload-specific Health Details.", + "type": "object", + "properties": { + "code": { + "format": "int32", + "description": "Health Code", + "type": "integer", + "readOnly": true + }, + "title": { + "description": "Health Title", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Health Message", + "type": "string", + "readOnly": true + }, + "recommendations": { + "description": "Health Recommended Actions", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "AzureIaaSVMJob": { + "description": "Azure IaaS VM workload-specific job object.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Job" + } + ], + "properties": { + "duration": { + "format": "duration", + "description": "Time elapsed during the execution of this job.", + "type": "string" + }, + "actionsInfo": { + "description": "Gets or sets the state/actions applicable on this job like cancel/retry.", + "type": "array", + "items": { + "enum": [ + "Invalid", + "Cancellable", + "Retriable" + ], + "type": "string", + "x-ms-enum": { + "name": "JobSupportedAction", + "modelAsString": false + } + } + }, + "errorDetails": { + "description": "Error details on execution of this job.", + "type": "array", + "items": { + "$ref": "#/definitions/AzureIaaSVMErrorInfo" + } + }, + "virtualMachineVersion": { + "description": "Specifies whether the backup item is a Classic or an Azure Resource Manager VM.", + "type": "string" + }, + "extendedInfo": { + "$ref": "#/definitions/AzureIaaSVMJobExtendedInfo", + "description": "Additional information for this job." + } + }, + "x-ms-discriminator-value": "AzureIaaSVMJob" + }, + "AzureIaaSVMJobExtendedInfo": { + "description": "Azure IaaS VM workload-specific additional information for job.", + "type": "object", + "properties": { + "tasksList": { + "description": "List of tasks associated with this job.", + "type": "array", + "items": { + "$ref": "#/definitions/AzureIaaSVMJobTaskDetails" + } + }, + "propertyBag": { + "description": "Job properties.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "internalPropertyBag": { + "description": "Job internal properties.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "progressPercentage": { + "format": "double", + "description": "Indicates progress of the job. Null if it has not started or completed.", + "type": "number" + }, + "estimatedRemainingDuration": { + "description": "Time remaining for execution of this job.", + "type": "string" + }, + "dynamicErrorMessage": { + "description": "Non localized error message on job execution.", + "type": "string" + } + } + }, + "AzureIaaSVMJobTaskDetails": { + "description": "Azure IaaS VM workload-specific job task details.", + "type": "object", + "properties": { + "taskId": { + "description": "The task display name.", + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "The start time.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "The end time.", + "type": "string" + }, + "instanceId": { + "description": "The instanceId.", + "type": "string" + }, + "duration": { + "format": "duration", + "description": "Time elapsed for task.", + "type": "string" + }, + "status": { + "description": "The status.", + "type": "string" + }, + "progressPercentage": { + "format": "double", + "description": "Progress of the task.", + "type": "number" + }, + "taskExecutionDetails": { + "description": "Details about execution of the task.\r\neg: number of bytes transferred etc", + "type": "string" + } + } + }, + "AzureIaaSVMProtectedItem": { + "description": "IaaS VM workload-specific backup item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectedItem" + } + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the VM represented by this backup item.", + "type": "string" + }, + "virtualMachineId": { + "description": "Fully qualified ARM ID of the virtual machine represented by this item.", + "type": "string" + }, + "protectionStatus": { + "description": "Backup status of this backup item.", + "type": "string" + }, + "protectionState": { + "description": "Backup state of this backup item.", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectionState", + "modelAsString": true + } + }, + "healthStatus": { + "description": "Health status of protected item", + "enum": [ + "Passed", + "ActionRequired", + "ActionSuggested", + "Invalid" + ], + "type": "string", + "x-ms-enum": { + "name": "HealthStatus", + "modelAsString": true + } + }, + "healthDetails": { + "description": "Health details on this backup item.", + "type": "array", + "items": { + "$ref": "#/definitions/AzureIaaSVMHealthDetails" + } + }, + "lastBackupStatus": { + "description": "Last backup operation status.", + "type": "string" + }, + "lastBackupTime": { + "format": "date-time", + "description": "Timestamp of the last backup operation on this backup item.", + "type": "string" + }, + "protectedItemDataId": { + "description": "Data ID of the protected item.", + "type": "string" + }, + "extendedInfo": { + "$ref": "#/definitions/AzureIaaSVMProtectedItemExtendedInfo", + "description": "Additional information for this backup item." + }, + "extendedProperties": { + "$ref": "#/definitions/ExtendedProperties" + } + }, + "x-ms-discriminator-value": "AzureIaaSVMProtectedItem" + }, + "AzureIaaSVMProtectedItemExtendedInfo": { + "description": "Additional information on Azure IaaS VM specific backup item.", + "type": "object", + "properties": { + "oldestRecoveryPoint": { + "format": "date-time", + "description": "The oldest backup copy available for this backup item.", + "type": "string" + }, + "recoveryPointCount": { + "format": "int32", + "description": "Number of backup copies available for this backup item.", + "type": "integer" + }, + "policyInconsistent": { + "description": "Specifies if backup policy associated with the backup item is inconsistent.", + "type": "boolean" + } + } + }, + "AzureSqlProtectedItem": { + "description": "Azure SQL workload-specific backup item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectedItem" + } + ], + "properties": { + "protectedItemDataId": { + "description": "Internal ID of a backup item. Used by Azure SQL Backup engine to contact Recovery Services.", + "type": "string" + }, + "protectionState": { + "description": "Backup state of the backed up item.", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectedItemState", + "modelAsString": true + } + }, + "extendedInfo": { + "$ref": "#/definitions/AzureSqlProtectedItemExtendedInfo", + "description": "Additional information for this backup item." + } + }, + "x-ms-discriminator-value": "Microsoft.Sql/servers/databases" + }, + "AzureSqlProtectedItemExtendedInfo": { + "description": "Additional information on Azure Sql specific protected item.", + "type": "object", + "properties": { + "oldestRecoveryPoint": { + "format": "date-time", + "description": "The oldest backup copy available for this item in the service.", + "type": "string" + }, + "recoveryPointCount": { + "format": "int32", + "description": "Number of available backup copies associated with this backup item.", + "type": "integer" + }, + "policyState": { + "description": "State of the backup policy associated with this backup item.", + "type": "string" + } + } + }, + "AzureStorageErrorInfo": { + "description": "Azure storage specific error information", + "type": "object", + "properties": { + "errorCode": { + "format": "int32", + "description": "Error code.", + "type": "integer" + }, + "errorString": { + "description": "Localized error string.", + "type": "string" + }, + "recommendations": { + "description": "List of localized recommendations for above error code.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "AzureStorageJob": { + "description": "Azure storage specific job.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Job" + } + ], + "properties": { + "duration": { + "format": "duration", + "description": "Time elapsed during the execution of this job.", + "type": "string" + }, + "actionsInfo": { + "description": "Gets or sets the state/actions applicable on this job like cancel/retry.", + "type": "array", + "items": { + "enum": [ + "Invalid", + "Cancellable", + "Retriable" + ], + "type": "string", + "x-ms-enum": { + "name": "JobSupportedAction", + "modelAsString": false + } + } + }, + "errorDetails": { + "description": "Error details on execution of this job.", + "type": "array", + "items": { + "$ref": "#/definitions/AzureStorageErrorInfo" + } + }, + "storageAccountName": { + "description": "Specifies friendly name of the storage account.", + "type": "string" + }, + "storageAccountVersion": { + "description": "Specifies whether the Storage account is a Classic or an Azure Resource Manager Storage account.", + "type": "string" + }, + "extendedInfo": { + "$ref": "#/definitions/AzureStorageJobExtendedInfo", + "description": "Additional information about the job." + } + }, + "x-ms-discriminator-value": "AzureStorageJob" + }, + "AzureStorageJobExtendedInfo": { + "description": "Azure Storage workload-specific additional information for job.", + "type": "object", + "properties": { + "tasksList": { + "description": "List of tasks for this job", + "type": "array", + "items": { + "$ref": "#/definitions/AzureStorageJobTaskDetails" + } + }, + "propertyBag": { + "description": "Job properties.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "dynamicErrorMessage": { + "description": "Non localized error message on job execution.", + "type": "string" + } + } + }, + "AzureStorageJobTaskDetails": { + "description": "Azure storage workload specific job task details.", + "type": "object", + "properties": { + "taskId": { + "description": "The task display name.", + "type": "string" + }, + "status": { + "description": "The status.", + "type": "string" + } + } + }, + "AzureVmWorkloadProtectedItem": { + "description": "Azure VM workload-specific protected item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectedItem" + } + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the DB represented by this backup item.", + "type": "string" + }, + "serverName": { + "description": "Host/Cluster Name for instance or AG", + "type": "string" + }, + "parentName": { + "description": "Parent name of the DB such as Instance or Availability Group.", + "type": "string" + }, + "parentType": { + "description": "Parent type of protected item, example: for a DB, standalone server or distributed", + "type": "string" + }, + "protectionStatus": { + "description": "Backup status of this backup item.", + "type": "string" + }, + "protectionState": { + "description": "Backup state of this backup item.", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectionState", + "modelAsString": true + } + }, + "lastBackupStatus": { + "description": "Last backup operation status. Possible values: Healthy, Unhealthy.", + "enum": [ + "Invalid", + "Healthy", + "Unhealthy", + "IRPending" + ], + "type": "string", + "x-ms-enum": { + "name": "LastBackupStatus", + "modelAsString": true + } + }, + "lastBackupTime": { + "format": "date-time", + "description": "Timestamp of the last backup operation on this backup item.", + "type": "string" + }, + "lastBackupErrorDetail": { + "$ref": "#/definitions/ErrorDetail", + "description": "Error details in last backup" + }, + "protectedItemDataSourceId": { + "description": "Data ID of the protected item.", + "type": "string" + }, + "protectedItemHealthStatus": { + "description": "Health status of the backup item, evaluated based on last heartbeat received", + "enum": [ + "Invalid", + "Healthy", + "Unhealthy", + "NotReachable", + "IRPending" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectedItemHealthStatus", + "modelAsString": true + } + }, + "extendedInfo": { + "$ref": "#/definitions/AzureVmWorkloadProtectedItemExtendedInfo", + "description": "Additional information for this backup item." + } + }, + "x-ms-discriminator-value": "AzureVmWorkloadProtectedItem" + }, + "AzureVmWorkloadProtectedItemExtendedInfo": { + "description": "Additional information on Azure Workload for SQL specific backup item.", + "type": "object", + "properties": { + "oldestRecoveryPoint": { + "format": "date-time", + "description": "The oldest backup copy available for this backup item.", + "type": "string" + }, + "recoveryPointCount": { + "format": "int32", + "description": "Number of backup copies available for this backup item.", + "type": "integer" + }, + "policyState": { + "description": "Indicates consistency of policy object and policy applied to this backup item.", + "type": "string" + } + } + }, + "AzureVmWorkloadSAPAseDatabaseProtectedItem": { + "description": "Azure VM workload-specific protected item representing SAP ASE Database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectedItem" + } + ], + "x-ms-discriminator-value": "AzureVmWorkloadSAPAseDatabase" + }, + "AzureVmWorkloadSAPHanaDatabaseProtectedItem": { + "description": "Azure VM workload-specific protected item representing SAP HANA Database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectedItem" + } + ], + "x-ms-discriminator-value": "AzureVmWorkloadSAPHanaDatabase" + }, + "AzureVmWorkloadSQLDatabaseProtectedItem": { + "description": "Azure VM workload-specific protected item representing SQL Database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectedItem" + } + ], + "x-ms-discriminator-value": "AzureVmWorkloadSQLDatabase" + }, + "AzureWorkloadErrorInfo": { + "description": "Azure storage specific error information", + "type": "object", + "properties": { + "errorCode": { + "format": "int32", + "description": "Error code.", + "type": "integer" + }, + "errorString": { + "description": "Localized error string.", + "type": "string" + }, + "errorTitle": { + "description": "Title: Typically, the entity that the error pertains to.", + "type": "string" + }, + "recommendations": { + "description": "List of localized recommendations for above error code.", + "type": "array", + "items": { + "type": "string" + } + }, + "additionalDetails": { + "description": "Additional details for above error code.", + "type": "string" + } + } + }, + "AzureWorkloadJob": { + "description": "Azure storage specific job.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Job" + } + ], + "properties": { + "workloadType": { + "description": "Workload type of the job", + "type": "string" + }, + "duration": { + "format": "duration", + "description": "Time elapsed during the execution of this job.", + "type": "string" + }, + "actionsInfo": { + "description": "Gets or sets the state/actions applicable on this job like cancel/retry.", + "type": "array", + "items": { + "enum": [ + "Invalid", + "Cancellable", + "Retriable" + ], + "type": "string", + "x-ms-enum": { + "name": "JobSupportedAction", + "modelAsString": false + } + } + }, + "errorDetails": { + "description": "Error details on execution of this job.", + "type": "array", + "items": { + "$ref": "#/definitions/AzureWorkloadErrorInfo" + } + }, + "extendedInfo": { + "$ref": "#/definitions/AzureWorkloadJobExtendedInfo", + "description": "Additional information about the job." + } + }, + "x-ms-discriminator-value": "AzureWorkloadJob" + }, + "AzureWorkloadJobExtendedInfo": { + "description": "Azure VM workload-specific additional information for job.", + "type": "object", + "properties": { + "tasksList": { + "description": "List of tasks for this job", + "type": "array", + "items": { + "$ref": "#/definitions/AzureWorkloadJobTaskDetails" + } + }, + "propertyBag": { + "description": "Job properties.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "dynamicErrorMessage": { + "description": "Non localized error message on job execution.", + "type": "string" + } + } + }, + "AzureWorkloadJobTaskDetails": { + "description": "Azure VM workload specific job task details.", + "type": "object", + "properties": { + "taskId": { + "description": "The task display name.", + "type": "string" + }, + "status": { + "description": "The status.", + "type": "string" + } + } + }, + "AzureWorkloadPointInTimeRecoveryPoint": { + "description": "Recovery point specific to PointInTime", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadRecoveryPoint" + } + ], + "properties": { + "timeRanges": { + "description": "List of log ranges", + "type": "array", + "items": { + "$ref": "#/definitions/PointInTimeRange" + } + } + }, + "x-ms-discriminator-value": "AzureWorkloadPointInTimeRecoveryPoint" + }, + "AzureWorkloadPointInTimeRestoreRequest": { + "description": "AzureWorkload SAP Hana -specific restore. Specifically for PointInTime/Log restore", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadRestoreRequest" + } + ], + "properties": { + "pointInTime": { + "format": "date-time", + "description": "PointInTime value", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureWorkloadPointInTimeRestoreRequest" + }, + "AzureWorkloadRecoveryPoint": { + "description": "Workload specific recovery point, specifically encapsulates full/diff recovery point", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPoint" + } + ], + "properties": { + "recoveryPointTimeInUTC": { + "format": "date-time", + "description": "UTC time at which recovery point was created", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of restore point", + "enum": [ + "Invalid", + "Full", + "Log", + "Differential" + ], + "type": "string", + "x-ms-enum": { + "name": "RestorePointType", + "modelAsString": true + }, + "readOnly": true + } + }, + "x-ms-discriminator-value": "AzureWorkloadRecoveryPoint" + }, + "AzureWorkloadRestoreRequest": { + "description": "AzureWorkload-specific restore.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RestoreRequest" + } + ], + "properties": { + "recoveryType": { + "description": "Type of this recovery.", + "enum": [ + "Invalid", + "OriginalLocation", + "AlternateLocation", + "RestoreDisks", + "Offline" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryType", + "modelAsString": true + } + }, + "sourceResourceId": { + "description": "Fully qualified ARM ID of the VM on which workload that was running is being recovered.", + "type": "string" + }, + "propertyBag": { + "description": "Workload specific property bag.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "targetInfo": { + "$ref": "#/definitions/TargetRestoreInfo", + "description": "Details of target database" + }, + "recoveryMode": { + "description": "Defines whether the current recovery mode is file restore or database restore", + "enum": [ + "Invalid", + "FileRecovery", + "WorkloadRecovery" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryMode", + "modelAsString": true + } + } + }, + "x-ms-discriminator-value": "AzureWorkloadRestoreRequest" + }, + "AzureWorkloadSAPHanaPointInTimeRecoveryPoint": { + "description": "Recovery point specific to PointInTime in SAPHana", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadPointInTimeRecoveryPoint" + } + ], + "x-ms-discriminator-value": "AzureWorkloadSAPHanaPointInTimeRecoveryPoint" + }, + "AzureWorkloadSAPHanaPointInTimeRestoreRequest": { + "description": "AzureWorkload SAP Hana -specific restore. Specifically for PointInTime/Log restore", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadSAPHanaRestoreRequest" + } + ], + "properties": { + "pointInTime": { + "format": "date-time", + "description": "PointInTime value", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureWorkloadSAPHanaPointInTimeRestoreRequest" + }, + "AzureWorkloadSAPHanaRecoveryPoint": { + "description": "SAPHana specific recoverypoint, specifically encapsulates full/diff recoverypoints", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadRecoveryPoint" + } + ], + "x-ms-discriminator-value": "AzureWorkloadSAPHanaRecoveryPoint" + }, + "AzureWorkloadSAPHanaRestoreRequest": { + "description": "AzureWorkload SAP Hana-specific restore.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadRestoreRequest" + } + ], + "x-ms-discriminator-value": "AzureWorkloadSAPHanaRestoreRequest" + }, + "AzureWorkloadSQLPointInTimeRecoveryPoint": { + "description": "Recovery point specific to PointInTime", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadSQLRecoveryPoint" + } + ], + "properties": { + "timeRanges": { + "description": "List of log ranges", + "type": "array", + "items": { + "$ref": "#/definitions/PointInTimeRange" + } + } + }, + "x-ms-discriminator-value": "AzureWorkloadSQLPointInTimeRecoveryPoint" + }, + "AzureWorkloadSQLPointInTimeRestoreRequest": { + "description": "AzureWorkload SQL -specific restore. Specifically for PointInTime/Log restore", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadSQLRestoreRequest" + } + ], + "properties": { + "pointInTime": { + "format": "date-time", + "description": "PointInTime value", + "type": "string" + } + }, + "x-ms-discriminator-value": "AzureWorkloadSQLPointInTimeRestoreRequest" + }, + "AzureWorkloadSQLRecoveryPoint": { + "description": "SQL specific recoverypoint, specifically encapsulates full/diff recoverypoint along with extended info", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadRecoveryPoint" + } + ], + "properties": { + "extendedInfo": { + "$ref": "#/definitions/AzureWorkloadSQLRecoveryPointExtendedInfo", + "description": "Extended Info that provides data directory details. Will be populated in two cases:\r\nWhen a specific recovery point is accessed using GetRecoveryPoint\r\nOr when ListRecoveryPoints is called for Log RP only with ExtendedInfo query filter" + } + }, + "x-ms-discriminator-value": "AzureWorkloadSQLRecoveryPoint" + }, + "AzureWorkloadSQLRecoveryPointExtendedInfo": { + "description": "Extended info class details", + "type": "object", + "properties": { + "dataDirectoryTimeInUTC": { + "format": "date-time", + "description": "UTC time at which data directory info was captured", + "type": "string", + "readOnly": true + }, + "dataDirectoryPaths": { + "description": "List of data directory paths during restore operation.", + "type": "array", + "items": { + "$ref": "#/definitions/SQLDataDirectory" + }, + "readOnly": true + } + } + }, + "AzureWorkloadSQLRestoreRequest": { + "description": "AzureWorkload SQL -specific restore. Specifically for full/diff restore", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AzureWorkloadRestoreRequest" + } + ], + "properties": { + "shouldUseAlternateTargetLocation": { + "description": "Default option set to true. If this is set to false, alternate data directory must be provided", + "type": "boolean" + }, + "isNonRecoverable": { + "description": "SQL specific property where user can chose to set no-recovery when restore operation is tried", + "type": "boolean" + }, + "alternateDirectoryPaths": { + "description": "Data directory details", + "type": "array", + "items": { + "$ref": "#/definitions/SQLDataDirectoryMapping" + } + } + }, + "x-ms-discriminator-value": "AzureWorkloadSQLRestoreRequest" + }, + "BEKDetails": { + "description": "BEK is bitlocker encryption key.", + "type": "object", + "properties": { + "secretUrl": { + "description": "Secret is BEK.", + "type": "string" + }, + "secretVaultId": { + "description": "ID of the Key Vault where this Secret is stored.", + "type": "string" + }, + "secretData": { + "description": "BEK data.", + "type": "string" + } + } + }, + "BMSRPQueryObject": { + "description": "Filters to list backup copies.", + "type": "object", + "properties": { + "startDate": { + "format": "date-time", + "description": "Backup copies created after this time.", + "type": "string" + }, + "endDate": { + "format": "date-time", + "description": "Backup copies created before this time.", + "type": "string" + }, + "restorePointQueryType": { + "description": "RestorePoint type", + "enum": [ + "Invalid", + "Full", + "Log", + "Differential", + "FullAndDifferential", + "All" + ], + "type": "string", + "x-ms-enum": { + "name": "RestorePointQueryType", + "modelAsString": true + } + }, + "extendedInfo": { + "description": "In Get Recovery Point, it tells whether extended information about recovery point is asked.", + "type": "boolean" + } + } + }, + "ClientScriptForConnect": { + "description": "Client script details for file / folder restore.", + "type": "object", + "properties": { + "scriptContent": { + "description": "File content of the client script for file / folder restore.", + "type": "string" + }, + "scriptExtension": { + "description": "File extension of the client script for file / folder restore - .ps1 , .sh , etc.", + "type": "string" + }, + "osType": { + "description": "OS type - Windows, Linux etc. for which this file / folder restore client script works.", + "type": "string" + }, + "url": { + "description": "URL of Executable from where to source the content. If this is not null then ScriptContent should not be used", + "type": "string" + }, + "scriptNameSuffix": { + "description": "Mandatory suffix that should be added to the name of script that is given for download to user.\r\nIf its null or empty then , ignore it.", + "type": "string" + } + } + }, + "CrossRegionRestoreRequest": { + "type": "object", + "properties": { + "crossRegionRestoreAccessDetails": { + "$ref": "#/definitions/CrrAccessToken", + "description": "Access details for cross region restore" + }, + "restoreRequest": { + "$ref": "#/definitions/RestoreRequest", + "description": "Request object for triggering restore" + } + } + }, + "CrossRegionRestoreRequestResource": { + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/CrossRegionRestoreRequest", + "description": "CrossRegionRestoreRequestResource properties" + } + } + }, + "CrrAccessToken": { + "description": "Container level access token for CRR", + "type": "object", + "properties": { + "accessTokenString": { + "description": "Access token used for authentication", + "type": "string" + }, + "subscriptionId": { + "description": "Subscription Id of the source vault", + "type": "string" + }, + "resourceGroupName": { + "description": "Resource Group name of the source vault", + "type": "string" + }, + "resourceName": { + "description": "Resource Name of the source vault", + "type": "string" + }, + "resourceId": { + "description": "Resource Id of the source vault", + "type": "string" + }, + "recoveryPointId": { + "description": "Recovery Point Id", + "type": "string" + }, + "recoveryPointTime": { + "description": "Recovery Point Time", + "type": "string" + }, + "containerName": { + "description": "Container Unique name", + "type": "string" + }, + "containerType": { + "description": "Container Type", + "type": "string" + }, + "backupManagementType": { + "description": "Backup Management Type", + "type": "string" + }, + "datasourceType": { + "description": "Datasource Type", + "type": "string" + }, + "datasourceName": { + "description": "Datasource Friendly Name", + "type": "string" + }, + "datasourceId": { + "description": "Datasource Id", + "type": "string" + }, + "datasourceContainerName": { + "description": "Datasource Container Unique Name", + "type": "string" + }, + "coordinatorServiceStampId": { + "description": "CoordinatorServiceStampId to be used by BCM in restore call", + "type": "string" + }, + "coordinatorServiceStampUri": { + "description": "CoordinatorServiceStampUri to be used by BCM in restore call", + "type": "string" + }, + "protectionServiceStampId": { + "description": "ProtectionServiceStampId to be used by BCM in restore call", + "type": "string" + }, + "protectionServiceStampUri": { + "description": "ProtectionServiceStampUri to be used by BCM in restore call", + "type": "string" + }, + "tokenExtendedInformation": { + "description": "Extended Information about the token like FileSpec etc.", + "type": "string" + } + } + }, + "CrrAccessTokenResource": { + "description": "Container level access token for CRR", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/CrrAccessToken", + "description": "CrrAccessTokenResource properties" + } + } + }, + "DiskExclusionProperties": { + "type": "object", + "properties": { + "diskLunList": { + "description": "List of Disks' Logical Unit Numbers (LUN) to be used for VM Protection.", + "type": "array", + "items": { + "format": "int32", + "type": "integer" + } + }, + "isInclusionList": { + "description": "Flag to indicate whether DiskLunList is to be included/ excluded from backup.", + "type": "boolean" + } + } + }, + "DiskInformation": { + "description": "Disk information", + "type": "object", + "properties": { + "lun": { + "format": "int32", + "type": "integer" + }, + "name": { + "type": "string" + } + } + }, + "DpmErrorInfo": { + "description": "DPM workload-specific error information.", + "type": "object", + "properties": { + "errorString": { + "description": "Localized error string.", + "type": "string" + }, + "recommendations": { + "description": "List of localized recommendations for above error code.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "DpmJob": { + "description": "DPM workload-specific job object.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Job" + } + ], + "properties": { + "duration": { + "format": "duration", + "description": "Time elapsed for job.", + "type": "string" + }, + "dpmServerName": { + "description": "DPM server name managing the backup item or backup job.", + "type": "string" + }, + "containerName": { + "description": "Name of cluster/server protecting current backup item, if any.", + "type": "string" + }, + "containerType": { + "description": "Type of container.", + "type": "string" + }, + "workloadType": { + "description": "Type of backup item.", + "type": "string" + }, + "actionsInfo": { + "description": "The state/actions applicable on this job like cancel/retry.", + "type": "array", + "items": { + "enum": [ + "Invalid", + "Cancellable", + "Retriable" + ], + "type": "string", + "x-ms-enum": { + "name": "JobSupportedAction", + "modelAsString": false + } + } + }, + "errorDetails": { + "description": "The errors.", + "type": "array", + "items": { + "$ref": "#/definitions/DpmErrorInfo" + } + }, + "extendedInfo": { + "$ref": "#/definitions/DpmJobExtendedInfo", + "description": "Additional information for this job." + } + }, + "x-ms-discriminator-value": "DpmJob" + }, + "DpmJobExtendedInfo": { + "description": "Additional information on the DPM workload-specific job.", + "type": "object", + "properties": { + "tasksList": { + "description": "List of tasks associated with this job.", + "type": "array", + "items": { + "$ref": "#/definitions/DpmJobTaskDetails" + } + }, + "propertyBag": { + "description": "The job properties.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "dynamicErrorMessage": { + "description": "Non localized error message on job execution.", + "type": "string" + } + } + }, + "DpmJobTaskDetails": { + "description": "DPM workload-specific job task details.", + "type": "object", + "properties": { + "taskId": { + "description": "The task display name.", + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "The start time.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "The end time.", + "type": "string" + }, + "duration": { + "format": "duration", + "description": "Time elapsed for task.", + "type": "string" + }, + "status": { + "description": "The status.", + "type": "string" + } + } + }, + "DPMProtectedItem": { + "description": "Additional information on Backup engine specific backup item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectedItem" + } + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the managed item", + "type": "string" + }, + "backupEngineName": { + "description": "Backup Management server protecting this backup item", + "type": "string" + }, + "protectionState": { + "description": "Protection state of the backup engine", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectedItemState", + "modelAsString": true + } + }, + "extendedInfo": { + "$ref": "#/definitions/DPMProtectedItemExtendedInfo", + "description": "Extended info of the backup item." + } + }, + "x-ms-discriminator-value": "DPMProtectedItem" + }, + "DPMProtectedItemExtendedInfo": { + "description": "Additional information of DPM Protected item.", + "type": "object", + "properties": { + "protectableObjectLoadPath": { + "description": "Attribute to provide information on various DBs.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "protected": { + "description": "To check if backup item is disk protected.", + "type": "boolean" + }, + "isPresentOnCloud": { + "description": "To check if backup item is cloud protected.", + "type": "boolean" + }, + "lastBackupStatus": { + "description": "Last backup status information on backup item.", + "type": "string" + }, + "lastRefreshedAt": { + "format": "date-time", + "description": "Last refresh time on backup item.", + "type": "string" + }, + "oldestRecoveryPoint": { + "format": "date-time", + "description": "Oldest cloud recovery point time.", + "type": "string" + }, + "recoveryPointCount": { + "format": "int32", + "description": "cloud recovery point count.", + "type": "integer" + }, + "onPremiseOldestRecoveryPoint": { + "format": "date-time", + "description": "Oldest disk recovery point time.", + "type": "string" + }, + "onPremiseLatestRecoveryPoint": { + "format": "date-time", + "description": "latest disk recovery point time.", + "type": "string" + }, + "onPremiseRecoveryPointCount": { + "format": "int32", + "description": "disk recovery point count.", + "type": "integer" + }, + "isCollocated": { + "description": "To check if backup item is collocated.", + "type": "boolean" + }, + "protectionGroupName": { + "description": "Protection group name of the backup item.", + "type": "string" + }, + "diskStorageUsedInBytes": { + "description": "Used Disk storage in bytes.", + "type": "string" + }, + "totalDiskStorageSizeInBytes": { + "description": "total Disk storage in bytes.", + "type": "string" + } + } + }, + "EncryptionDetails": { + "description": "Details needed if the VM was encrypted at the time of backup.", + "type": "object", + "properties": { + "encryptionEnabled": { + "description": "Identifies whether this backup copy represents an encrypted VM at the time of backup.", + "type": "boolean" + }, + "kekUrl": { + "description": "Key Url.", + "type": "string" + }, + "secretKeyUrl": { + "description": "Secret Url.", + "type": "string" + }, + "kekVaultId": { + "description": "ID of Key Vault where KEK is stored.", + "type": "string" + }, + "secretKeyVaultId": { + "description": "ID of Key Vault where Secret is stored.", + "type": "string" + } + } + }, + "ErrorDetail": { + "description": "Error Detail class which encapsulates Code, Message and Recommendations.", + "type": "object", + "properties": { + "code": { + "description": "Error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "Error Message related to the Code.", + "type": "string", + "readOnly": true + }, + "recommendations": { + "description": "List of recommendation strings.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "ExtendedProperties": { + "description": "Extended Properties for Azure IaasVM Backup.", + "type": "object", + "properties": { + "diskExclusionProperties": { + "$ref": "#/definitions/DiskExclusionProperties", + "description": "Extended Properties for Disk Exclusion." + } + } + }, + "GenericProtectedItem": { + "description": "Base class for backup items.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectedItem" + } + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the container.", + "type": "string" + }, + "policyState": { + "description": "Indicates consistency of policy object and policy applied to this backup item.", + "type": "string" + }, + "protectionState": { + "description": "Backup state of this backup item.", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtectionState", + "modelAsString": true + } + }, + "protectedItemId": { + "format": "int64", + "description": "Data Plane Service ID of the protected item.", + "type": "integer" + }, + "sourceAssociations": { + "description": "Loosely coupled (type, value) associations (example - parent of a protected item)", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "fabricName": { + "description": "Name of this backup item's fabric.", + "type": "string" + } + }, + "x-ms-discriminator-value": "GenericProtectedItem" + }, + "GenericRecoveryPoint": { + "description": "Generic backup copy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPoint" + } + ], + "properties": { + "friendlyName": { + "description": "Friendly name of the backup copy.", + "type": "string" + }, + "recoveryPointType": { + "description": "Type of the backup copy.", + "type": "string" + }, + "recoveryPointTime": { + "format": "date-time", + "description": "Time at which this backup copy was created.", + "type": "string" + }, + "recoveryPointAdditionalInfo": { + "description": "Additional information associated with this backup copy.", + "type": "string" + } + }, + "x-ms-discriminator-value": "GenericRecoveryPoint" + }, + "IaasVMRecoveryPoint": { + "description": "IaaS VM workload specific backup copy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPoint" + } + ], + "properties": { + "recoveryPointType": { + "description": "Type of the backup copy.", + "type": "string", + "readOnly": true + }, + "recoveryPointTime": { + "format": "date-time", + "description": "Time at which this backup copy was created.", + "type": "string", + "readOnly": true + }, + "recoveryPointAdditionalInfo": { + "description": "Additional information associated with this backup copy.", + "type": "string", + "readOnly": true + }, + "sourceVMStorageType": { + "description": "Storage type of the VM whose backup copy is created.", + "type": "string", + "readOnly": true + }, + "isSourceVMEncrypted": { + "description": "Identifies whether the VM was encrypted when the backup copy is created.", + "type": "boolean", + "readOnly": true + }, + "keyAndSecret": { + "$ref": "#/definitions/KeyAndSecretDetails", + "description": "Required details for recovering an encrypted VM. Applicable only when IsSourceVMEncrypted is true." + }, + "isInstantIlrSessionActive": { + "description": "Is the session to recover items from this backup copy still active.", + "type": "boolean" + }, + "recoveryPointTierDetails": { + "description": "Recovery point tier information.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPointTierInformation" + } + }, + "isManagedVirtualMachine": { + "description": "Whether VM is with Managed Disks", + "type": "boolean" + }, + "virtualMachineSize": { + "description": "Virtual Machine Size", + "type": "string" + }, + "originalStorageAccountOption": { + "description": "Original Storage Account Option", + "type": "boolean" + }, + "osType": { + "description": "OS type", + "type": "string" + }, + "recoveryPointDiskConfiguration": { + "$ref": "#/definitions/RecoveryPointDiskConfiguration", + "description": "Disk configuration" + } + }, + "x-ms-discriminator-value": "IaasVMRecoveryPoint" + }, + "IaasVMRestoreRequest": { + "description": "IaaS VM workload-specific restore.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RestoreRequest" + } + ], + "properties": { + "recoveryPointId": { + "description": "ID of the backup copy to be recovered.", + "type": "string" + }, + "recoveryType": { + "description": "Type of this recovery.", + "enum": [ + "Invalid", + "OriginalLocation", + "AlternateLocation", + "RestoreDisks", + "Offline" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryType", + "modelAsString": true + } + }, + "sourceResourceId": { + "description": "Fully qualified ARM ID of the VM which is being recovered.", + "type": "string" + }, + "targetVirtualMachineId": { + "description": "This is the complete ARM Id of the VM that will be created.\r\nFor e.g. /subscriptions/{subId}/resourcegroups/{rg}/provider/Microsoft.Compute/virtualmachines/{vm}", + "type": "string" + }, + "targetResourceGroupId": { + "description": "This is the ARM Id of the resource group that you want to create for this Virtual machine and other artifacts.\r\nFor e.g. /subscriptions/{subId}/resourcegroups/{rg}", + "type": "string" + }, + "storageAccountId": { + "description": "Fully qualified ARM ID of the storage account to which the VM has to be restored.", + "type": "string" + }, + "virtualNetworkId": { + "description": "This is the virtual network Id of the vnet that will be attached to the virtual machine.\r\nUser will be validated for join action permissions in the linked access.", + "type": "string" + }, + "subnetId": { + "description": "Subnet ID, is the subnet ID associated with the to be restored VM. For Classic VMs it would be\r\n{VnetID}/Subnet/{SubnetName} and, for the Azure Resource Manager VMs it would be ARM resource ID used to represent\r\nthe subnet.", + "type": "string" + }, + "targetDomainNameId": { + "description": "Fully qualified ARM ID of the domain name to be associated to the VM being restored. This applies only to Classic\r\nVirtual Machines.", + "type": "string" + }, + "region": { + "description": "Region in which the virtual machine is restored.", + "type": "string" + }, + "affinityGroup": { + "description": "Affinity group associated to VM to be restored. Used only for Classic Compute Virtual Machines.", + "type": "string" + }, + "createNewCloudService": { + "description": "Should a new cloud service be created while restoring the VM. If this is false, VM will be restored to the same\r\ncloud service as it was at the time of backup.", + "type": "boolean" + }, + "originalStorageAccountOption": { + "description": "Original Storage Account Option", + "type": "boolean" + }, + "encryptionDetails": { + "$ref": "#/definitions/EncryptionDetails", + "description": "Details needed if the VM was encrypted at the time of backup." + }, + "restoreDiskLunList": { + "description": "List of Disk LUNs for partial restore", + "type": "array", + "items": { + "format": "int32", + "type": "integer" + } + } + }, + "x-ms-discriminator-value": "IaasVMRestoreRequest" + }, + "InstantItemRecoveryTarget": { + "description": "Target details for file / folder restore.", + "type": "object", + "properties": { + "clientScripts": { + "description": "List of client scripts.", + "type": "array", + "items": { + "$ref": "#/definitions/ClientScriptForConnect" + } + } + } + }, + "Job": { + "description": "Defines workload agnostic properties for a job.", + "required": [ + "jobType" + ], + "type": "object", + "properties": { + "entityFriendlyName": { + "description": "Friendly name of the entity on which the current job is executing.", + "type": "string" + }, + "backupManagementType": { + "description": "Backup management type to execute the current job.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "operation": { + "description": "The operation name.", + "type": "string" + }, + "status": { + "description": "Job status.", + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "The start time.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "The end time.", + "type": "string" + }, + "activityId": { + "description": "ActivityId of job.", + "type": "string" + }, + "jobType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "jobType" + }, + "JobResource": { + "description": "Defines workload agnostic properties for a job.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/Job", + "description": "JobResource properties" + } + } + }, + "JobResourceList": { + "description": "List of Job resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/JobResource" + } + } + } + }, + "KEKDetails": { + "description": "KEK is encryption key for BEK.", + "type": "object", + "properties": { + "keyUrl": { + "description": "Key is KEK.", + "type": "string" + }, + "keyVaultId": { + "description": "Key Vault ID where this Key is stored.", + "type": "string" + }, + "keyBackupData": { + "description": "KEK data.", + "type": "string" + } + } + }, + "KeyAndSecretDetails": { + "description": "BEK is bitlocker key.\r\nKEK is encryption key for BEK\r\nIf the VM was encrypted then we will store following details :\r\n1. Secret(BEK) - Url + Backup Data + vaultId.\r\n2. Key(KEK) - Url + Backup Data + vaultId.\r\n3. EncryptionMechanism\r\nBEK and KEK can potentially have different vault ids.", + "type": "object", + "properties": { + "kekDetails": { + "$ref": "#/definitions/KEKDetails", + "description": "KEK is encryption key for BEK." + }, + "bekDetails": { + "$ref": "#/definitions/BEKDetails", + "description": "BEK is bitlocker encryption key." + }, + "encryptionMechanism": { + "description": "Encryption mechanism: None/ SinglePass/ DoublePass", + "type": "string" + } + } + }, + "MabErrorInfo": { + "description": "MAB workload-specific error information.", + "type": "object", + "properties": { + "errorString": { + "description": "Localized error string.", + "type": "string", + "readOnly": true + }, + "recommendations": { + "description": "List of localized recommendations.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "MabFileFolderProtectedItem": { + "description": "MAB workload-specific backup item.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProtectedItem" + } + ], + "properties": { + "friendlyName": { + "description": "Friendly name of this backup item.", + "type": "string" + }, + "computerName": { + "description": "Name of the computer associated with this backup item.", + "type": "string" + }, + "lastBackupStatus": { + "description": "Status of last backup operation.", + "type": "string" + }, + "lastBackupTime": { + "format": "date-time", + "description": "Timestamp of the last backup operation on this backup item.", + "type": "string" + }, + "protectionState": { + "description": "Protected, ProtectionStopped, IRPending or ProtectionError", + "type": "string" + }, + "deferredDeleteSyncTimeInUTC": { + "format": "int64", + "description": "Sync time for deferred deletion in UTC", + "type": "integer" + }, + "extendedInfo": { + "$ref": "#/definitions/MabFileFolderProtectedItemExtendedInfo", + "description": "Additional information with this backup item." + } + }, + "x-ms-discriminator-value": "MabFileFolderProtectedItem" + }, + "MabFileFolderProtectedItemExtendedInfo": { + "description": "Additional information on the backed up item.", + "type": "object", + "properties": { + "lastRefreshedAt": { + "format": "date-time", + "description": "Last time when the agent data synced to service.", + "type": "string" + }, + "oldestRecoveryPoint": { + "format": "date-time", + "description": "The oldest backup copy available.", + "type": "string" + }, + "recoveryPointCount": { + "format": "int32", + "description": "Number of backup copies associated with the backup item.", + "type": "integer" + } + } + }, + "MabJob": { + "description": "MAB workload-specific job.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Job" + } + ], + "properties": { + "duration": { + "format": "duration", + "description": "Time taken by job to run.", + "type": "string" + }, + "actionsInfo": { + "description": "The state/actions applicable on jobs like cancel/retry.", + "type": "array", + "items": { + "enum": [ + "Invalid", + "Cancellable", + "Retriable" + ], + "type": "string", + "x-ms-enum": { + "name": "JobSupportedAction", + "modelAsString": false + } + } + }, + "mabServerName": { + "description": "Name of server protecting the DS.", + "type": "string" + }, + "mabServerType": { + "description": "Server type of MAB container.", + "enum": [ + "Invalid", + "Unknown", + "IaasVMContainer", + "IaasVMServiceContainer", + "DPMContainer", + "AzureBackupServerContainer", + "MABContainer", + "Cluster", + "AzureSqlContainer", + "Windows", + "VCenter", + "VMAppContainer", + "SQLAGWorkLoadContainer", + "StorageContainer", + "GenericContainer" + ], + "type": "string", + "x-ms-enum": { + "name": "MabServerType", + "modelAsString": true + } + }, + "workloadType": { + "description": "Workload type of backup item.", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "WorkloadType", + "modelAsString": true + } + }, + "errorDetails": { + "description": "The errors.", + "type": "array", + "items": { + "$ref": "#/definitions/MabErrorInfo" + } + }, + "extendedInfo": { + "$ref": "#/definitions/MabJobExtendedInfo", + "description": "Additional information on the job." + } + }, + "x-ms-discriminator-value": "MabJob" + }, + "MabJobExtendedInfo": { + "description": "Additional information for the MAB workload-specific job.", + "type": "object", + "properties": { + "tasksList": { + "description": "List of tasks for this job.", + "type": "array", + "items": { + "$ref": "#/definitions/MabJobTaskDetails" + } + }, + "propertyBag": { + "description": "The job properties.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "dynamicErrorMessage": { + "description": "Non localized error message specific to this job.", + "type": "string" + } + } + }, + "MabJobTaskDetails": { + "description": "MAB workload-specific job task details.", + "type": "object", + "properties": { + "taskId": { + "description": "The task display name.", + "type": "string" + }, + "startTime": { + "format": "date-time", + "description": "The start time.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "The end time.", + "type": "string" + }, + "duration": { + "format": "duration", + "description": "Time elapsed for task.", + "type": "string" + }, + "status": { + "description": "The status.", + "type": "string" + } + } + }, + "OperationStatus": { + "description": "Operation status.", + "type": "object", + "properties": { + "id": { + "description": "ID of the operation.", + "type": "string" + }, + "name": { + "description": "Name of the operation.", + "type": "string" + }, + "status": { + "description": "Operation status.", + "enum": [ + "Invalid", + "InProgress", + "Succeeded", + "Failed", + "Canceled" + ], + "type": "string", + "x-ms-enum": { + "name": "OperationStatusValues", + "modelAsString": true + } + }, + "startTime": { + "format": "date-time", + "description": "Operation start time. Format: ISO-8601.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "Operation end time. Format: ISO-8601.", + "type": "string" + }, + "error": { + "$ref": "#/definitions/OperationStatusError", + "description": "Error information related to this operation." + }, + "properties": { + "$ref": "#/definitions/OperationStatusExtendedInfo", + "description": "Additional information associated with this operation." + } + } + }, + "OperationStatusError": { + "description": "Error information associated with operation status call.", + "type": "object", + "properties": { + "code": { + "description": "Error code of the operation failure.", + "type": "string" + }, + "message": { + "description": "Error message displayed if the operation failure.", + "type": "string" + } + } + }, + "OperationStatusExtendedInfo": { + "description": "Base class for additional information of operation status.", + "required": [ + "objectType" + ], + "type": "object", + "properties": { + "objectType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "objectType" + }, + "OperationStatusJobExtendedInfo": { + "description": "Operation status job extended info.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/OperationStatusExtendedInfo" + } + ], + "properties": { + "jobId": { + "description": "ID of the job created for this protected item.", + "type": "string" + } + }, + "x-ms-discriminator-value": "OperationStatusJobExtendedInfo" + }, + "OperationStatusJobsExtendedInfo": { + "description": "Operation status extended info for list of jobs.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/OperationStatusExtendedInfo" + } + ], + "properties": { + "jobIds": { + "description": "IDs of the jobs created for the protected item.", + "type": "array", + "items": { + "type": "string" + } + }, + "failedJobsError": { + "description": "Stores all the failed jobs along with the corresponding error codes.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "x-ms-discriminator-value": "OperationStatusJobsExtendedInfo" + }, + "OperationStatusProvisionILRExtendedInfo": { + "description": "Operation status extended info for ILR provision action.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/OperationStatusExtendedInfo" + } + ], + "properties": { + "recoveryTarget": { + "$ref": "#/definitions/InstantItemRecoveryTarget", + "description": "Target details for file / folder restore." + } + }, + "x-ms-discriminator-value": "OperationStatusProvisionILRExtendedInfo" + }, + "OperationStatusRecoveryPointExtendedInfo": { + "description": "Operation status extended info for Updated Recovery Point.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/OperationStatusExtendedInfo" + } + ], + "properties": { + "updatedRecoveryPoint": { + "$ref": "#/definitions/RecoveryPoint", + "description": "Recovery Point info with updated source snapshot URI" + }, + "deletedBackupItemVersion": { + "description": "In case the share is in soft-deleted state, populate this field with deleted backup item", + "type": "string" + } + }, + "x-ms-discriminator-value": "OperationStatusRecoveryPointExtendedInfo" + }, + "PointInTimeRange": { + "description": "Provides details for log ranges", + "type": "object", + "properties": { + "startTime": { + "format": "date-time", + "description": "Start time of the time range for log recovery.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "End time of the time range for log recovery.", + "type": "string" + } + } + }, + "ProtectedItem": { + "description": "Base class for backup items.", + "type": "object", + "required": [ + "protectedItemType" + ], + "properties": { + "protectedItemType": { + "description": "backup item type.", + "type": "string" + }, + "backupManagementType": { + "description": "Type of backup management for the backed up item.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "workloadType": { + "description": "Type of workload this item represents.", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "DataSourceType", + "modelAsString": true + } + }, + "containerName": { + "description": "Unique name of container", + "type": "string" + }, + "sourceResourceId": { + "description": "ARM ID of the resource to be backed up.", + "type": "string" + }, + "policyId": { + "description": "ID of the backup policy with which this item is backed up.", + "type": "string" + }, + "lastRecoveryPoint": { + "format": "date-time", + "description": "Timestamp when the last (latest) backup copy was created for this backup item.", + "type": "string" + }, + "backupSetName": { + "description": "Name of the backup set the backup item belongs to", + "type": "string" + }, + "createMode": { + "description": "Create mode to indicate recovery of existing soft deleted data source or creation of new data source.", + "enum": [ + "Invalid", + "Default", + "Recover" + ], + "type": "string", + "x-ms-enum": { + "name": "CreateMode", + "modelAsString": true + } + }, + "deferredDeleteTimeInUTC": { + "format": "date-time", + "description": "Time for deferred deletion in UTC", + "type": "string" + }, + "isScheduledForDeferredDelete": { + "description": "Flag to identify whether the DS is scheduled for deferred delete", + "type": "boolean" + }, + "deferredDeleteTimeRemaining": { + "description": "Time remaining before the DS marked for deferred delete is permanently deleted", + "type": "string" + }, + "isDeferredDeleteScheduleUpcoming": { + "description": "Flag to identify whether the deferred deleted DS is to be purged soon", + "type": "boolean" + }, + "isRehydrate": { + "description": "Flag to identify that deferred deleted DS is to be moved into Pause state", + "type": "boolean" + } + }, + "discriminator": "protectedItemType" + }, + "ProtectedItemQueryObject": { + "description": "Filters to list backup items.", + "type": "object", + "properties": { + "healthState": { + "description": "Health State for the backed up item.", + "enum": [ + "Passed", + "ActionRequired", + "ActionSuggested", + "Invalid" + ], + "type": "string", + "x-ms-enum": { + "name": "HealthState", + "modelAsString": true + } + }, + "backupManagementType": { + "description": "Backup management type for the backed up item.", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ], + "type": "string", + "x-ms-enum": { + "name": "BackupManagementType", + "modelAsString": true + } + }, + "itemType": { + "description": "Type of workload this item represents.", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ], + "type": "string", + "x-ms-enum": { + "name": "DataSourceType", + "modelAsString": true + } + }, + "policyName": { + "description": "Backup policy name associated with the backup item.", + "type": "string" + }, + "containerName": { + "description": "Name of the container.", + "type": "string" + }, + "backupEngineName": { + "description": "Backup Engine name", + "type": "string" + }, + "friendlyName": { + "description": "Friendly name of protected item", + "type": "string" + }, + "fabricName": { + "description": "Name of the fabric.", + "type": "string" + }, + "backupSetName": { + "description": "Name of the backup set.", + "type": "string" + } + } + }, + "ProtectedItemResource": { + "description": "Base class for backup items.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ProtectedItem", + "description": "ProtectedItemResource properties" + } + } + }, + "ProtectedItemResourceList": { + "description": "List of ProtectedItem resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ProtectedItemResource" + } + } + } + }, + "RecoveryPoint": { + "description": "Base class for backup copies. Workload-specific backup copies are derived from this class.", + "required": [ + "objectType" + ], + "type": "object", + "properties": { + "objectType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "objectType" + }, + "RecoveryPointDiskConfiguration": { + "description": "Disk configuration", + "type": "object", + "properties": { + "numberOfDisksIncludedInBackup": { + "format": "int32", + "description": "Number of disks included in backup", + "type": "integer" + }, + "numberOfDisksAttachedToVm": { + "format": "int32", + "description": "Number of disks attached to the VM", + "type": "integer" + }, + "includedDiskList": { + "description": "Information of disks included in backup", + "type": "array", + "items": { + "$ref": "#/definitions/DiskInformation" + } + }, + "excludedDiskList": { + "description": "Information of disks excluded from backup", + "type": "array", + "items": { + "$ref": "#/definitions/DiskInformation" + } + } + } + }, + "RecoveryPointResource": { + "description": "Base class for backup copies. Workload-specific backup copies are derived from this class.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/RecoveryPoint", + "description": "RecoveryPointResource properties" + } + } + }, + "RecoveryPointResourceList": { + "description": "List of RecoveryPoint resources", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ResourceList" + } + ], + "properties": { + "value": { + "description": "List of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPointResource" + } + } + } + }, + "RecoveryPointTierInformation": { + "description": "Recovery point tier information.", + "type": "object", + "properties": { + "type": { + "description": "Recovery point tier type.", + "enum": [ + "Invalid", + "InstantRP", + "HardenedRP" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryPointTierType", + "modelAsString": false + } + }, + "status": { + "description": "Recovery point tier status.", + "enum": [ + "Invalid", + "Valid", + "Disabled", + "Deleted" + ], + "type": "string", + "x-ms-enum": { + "name": "RecoveryPointTierStatus", + "modelAsString": false + } + } + } + }, + "Resource": { + "description": "ARM Resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource Id represents the complete path to the resource.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Resource name associated with the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/...", + "type": "string", + "readOnly": true + }, + "location": { + "description": "Resource location.", + "type": "string" + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "eTag": { + "description": "Optional ETag.", + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "ResourceList": { + "description": "Base for all lists of resources.", + "type": "object", + "properties": { + "nextLink": { + "description": "The uri to fetch the next page of resources. Call ListNext() fetches next page of resources.", + "type": "string" + } + } + }, + "RestoreFileSpecs": { + "description": "Restore file specs like file path, type and target folder path info.", + "type": "object", + "properties": { + "path": { + "description": "Source File/Folder path", + "type": "string" + }, + "fileSpecType": { + "description": "Indicates what the Path variable stands for", + "type": "string" + }, + "targetFolderPath": { + "description": "Destination folder path in target FileShare", + "type": "string" + } + } + }, + "RestoreRequest": { + "description": "Base class for restore request. Workload-specific restore requests are derived from this class.", + "required": [ + "objectType" + ], + "type": "object", + "properties": { + "objectType": { + "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.", + "type": "string" + } + }, + "discriminator": "objectType" + }, + "SQLDataDirectory": { + "description": "SQLDataDirectory info", + "type": "object", + "properties": { + "type": { + "description": "Type of data directory mapping", + "enum": [ + "Invalid", + "Data", + "Log" + ], + "type": "string", + "x-ms-enum": { + "name": "SQLDataDirectoryType", + "modelAsString": true + } + }, + "path": { + "description": "File path", + "type": "string" + }, + "logicalName": { + "description": "Logical name of the file", + "type": "string" + } + } + }, + "SQLDataDirectoryMapping": { + "description": "Encapsulates information regarding data directory", + "type": "object", + "properties": { + "mappingType": { + "description": "Type of data directory mapping", + "enum": [ + "Invalid", + "Data", + "Log" + ], + "type": "string", + "x-ms-enum": { + "name": "SQLDataDirectoryType", + "modelAsString": true + } + }, + "sourceLogicalName": { + "description": "Restore source logical name path", + "type": "string" + }, + "sourcePath": { + "description": "Restore source path", + "type": "string" + }, + "targetPath": { + "description": "Target path", + "type": "string" + } + } + }, + "TargetAFSRestoreInfo": { + "description": "Target Azure File Share Info.", + "type": "object", + "properties": { + "name": { + "description": "File share name", + "type": "string" + }, + "targetResourceId": { + "description": "Target file share resource ARM ID", + "type": "string" + } + } + }, + "TargetRestoreInfo": { + "description": "Details about target workload during restore operation.", + "type": "object", + "properties": { + "overwriteOption": { + "description": "Can Overwrite if Target DataBase already exists", + "enum": [ + "Invalid", + "FailOnConflict", + "Overwrite" + ], + "type": "string", + "x-ms-enum": { + "name": "OverwriteOptions", + "modelAsString": true + } + }, + "containerId": { + "description": "Resource Id name of the container in which Target DataBase resides", + "type": "string" + }, + "databaseName": { + "description": "Database name InstanceName/DataBaseName for SQL or System/DbName for SAP Hana", + "type": "string" + }, + "targetDirectoryMapping": { + "description": "This will contain the target folder mapping for the Full/Diff/Log/Incremental pits.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + } + }, + "parameters": { + "SubscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription Id.", + "required": true, + "type": "string" + }, + "AzureRegion": { + "name": "azureRegion", + "in": "path", + "description": "Azure region to hit Api", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ApiVersion": { + "name": "api-version", + "in": "query", + "description": "Client Api Version.", + "required": true, + "type": "string" + }, + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group where the recovery services vault is present.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "VaultName": { + "name": "vaultName", + "in": "path", + "description": "The name of the recovery services vault.", + "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." + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/BackupAadProperties_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/BackupAadProperties_Get.json new file mode 100644 index 000000000000..e4a261165996 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/BackupAadProperties_Get.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "azureRegion": "southeastasia", + "api-version": "2018-12-20" + }, + "responses": { + "200": { + "body": { + "properties": { + "tenantId": "33e01921-4d64-4f8c-a055-5bdaffd5e33d", + "audience": "https://RecoveryServices/IaasCoord/aadmgmt/ecy", + "servicePrincipalObjectId": "07e0a67b-cba3-4fcf-a58c-b670d5ced06d" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/BackupProtectedItems_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/BackupProtectedItems_List.json new file mode 100644 index 000000000000..85d863d25ac1 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/BackupProtectedItems_List.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "NetSDKTestRsVault", + "api-version": "2019-05-13", + "$filter": "backupManagementType eq 'AzureIaasVM' and itemType eq 'VM'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/protectionContainers/IaasVMContainer;iaasvmcontainer;iaasvm-rg;iaasvm-1/protectedItems/VM;iaasvmcontainer;iaasvm-rg;iaasvm-1", + "name": "VM;iaasvmcontainer;iaasvm-rg;iaasvm-1", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems", + "properties": { + "friendlyName": "iaasvm-1", + "virtualMachineId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/providers/Microsoft.ClassicCompute/virtualMachines/iaasvm-1", + "protectionStatus": "Healthy", + "protectionState": "Protected", + "healthStatus": "Passed", + "lastBackupStatus": "Completed", + "lastBackupTime": "2018-01-22T12:25:32.048723Z", + "protectedItemDataId": "636482643132986882", + "protectedItemType": "Microsoft.ClassicCompute/virtualMachines", + "backupManagementType": "AzureIaasVM", + "workloadType": "VM", + "containerName": "iaasvmcontainer;iaasvm-rg;iaasvm-1", + "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/providers/Microsoft.ClassicCompute/virtualMachines/iaasvm-1", + "policyId": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/NetSDKTestRsVault/backupPolicies/testPolicy1", + "lastRecoveryPoint": "2017-11-22T12:25:32.048723Z" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/GetAccessToken_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/GetAccessToken_Get.json new file mode 100644 index 000000000000..d7706573b4a7 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/GetAccessToken_Get.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "rshhtestmdvmrg", + "vaultName": "rshvault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall", + "protectedItemName": "VM;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall", + "recoveryPointId": "26083826328862", + "api-version": "2018-12-20-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rshhtestmdvmrg/providers/Microsoft.RecoveryServices/vaults/rshvault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/protectedItems/VM;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/recoveryPoints/26083826328862", + "name": "26083826328862", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints", + "properties": { + "accessTokenString": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6IjVocE9ZWkdhZnk2VG50bUhKeGZZaEZKWHpQcyJ9.eyJVc2VySWRlbnRpdHlUeXBlIjoiQUFEIiwiQWFkVGVuYW50SWQiOiI3MmY5ODhiZi04NmYxLTQxYWYtOTFhYi0yZDdjZDAxMWRiNDciLCJBYWRTUE9iamVjdElkIjoiODlkMmY3NzQtODBkNy00YzU0LTgwMjQtMjY2YzIzZGI0ZWNiIiwiUmVzdG9yZVBvaW50UGVybWlzc2lvbnMiOiJSZWFkIiwiUmVzdG9yZVBvaW50SUQiOiJyZXNvdXJjZXMvMzYzOTI0OTUyNDMwMjg4Mjk3MS9wcm90ZWN0aW9uQ29udGFpbmVycy8xMDA2NjAwL3Byb3RlY3RlZEl0ZW1zLzIyNTIzNDUxNzI0OTY4MjgyMTEvcmVjb3ZlcnlQb2ludHMvMjI1Mjg4NDA2MDEwNDg4OTkwNyIsImlzcyI6Imh0dHBzOi8vUmVjb3ZlcnlTZXJ2aWNlIiwiYXVkIjoiaHR0cHM6Ly9SZWNvdmVyeVNlcnZpY2VzL1Byb3RlY3Rpb25TZXJ2aWNlIiwiZXhwIjoxNTcwMjAwOTEzLCJuYmYiOjE1NzAxMTQyMTN9.gOGEmAhrAio3M6gcQHZ7EpEAbz4o-JaLE6dIFa4bF_-6VaP4LiBU_Qemjev_s-2fKZTAk3AVEXevbxbKIX6DENALXyOy3cMZsSPIr7L0_VrC6nlNnrwMBpiwQWGLuPckh4LHhsQE2cgOKmsIifqb4XrSJlwNq18aT_XyV6ZlkKqog3w7n4f-_eANJXDjxzOvAzsDIjnw_R-rVBNUI8w5OyO01mK1s2xStYgCBLpkTNEw5dxTTNOv5wPzmgjgRa2p-GmecE0ZTUfsL3VUvzpzfO8tRHBTbUYIIAG2Cn9utmXLK-PmAAanJVCOQ0YuoNSTN40D1NhpklJOtyD_TKdmvA", + "subscriptionId": "04cf684a-d41f-4550-9f70-7708a3a2283b", + "resourceGroupName": "gaallaReportingV2", + "resourceName": "garbvtd2", + "resourceId": "3639249524302882971", + "recoveryPointId": "2252884060104889907", + "recoveryPointTime": "10/3/2019 1:35:19 AM", + "containerName": "iaasvmcontainerv2;anubhtest;anubh-ext-2", + "containerType": "IaasVMContainer", + "backupManagementType": "AzureIaasVM", + "datasourceType": "VM", + "datasourceName": "anubh-ext-2", + "datasourceId": "2252345172496828211", + "datasourceContainerName": "iaasvmcontainerv2;anubhtest;anubh-ext-2", + "coordinatorServiceStampUri": "https://sea-bvtd2-coord1-t56tl.ext.trafficmanager.net", + "protectionServiceStampId": "253c2223-fefd-483d-912f-55fb46ce0eab", + "protectionServiceStampUri": "https://sea-bvtd2-prot1-t56tl.ext.trafficmanager.net", + "tokenExtendedInformation": "V2015_091a2311d9-66f5-47d3-a9fb-7a37da63934b;BackUpOperationJobId;e1ebcf24-81a5-434e-b64b-cc81be65ae16falsefalsetrueWindowsCrashConsistentNormalStorageStandard_D2s_v3" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/GetCrrJob_Post.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/GetCrrJob_Post.json new file mode 100644 index 000000000000..dbd66a894a11 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/GetCrrJob_Post.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "azureRegion": "southeastasia", + "api-version": "2018-12-20", + "parameters": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.Compute/VirtualMachines/testVm", + "jobName": "02585cc9-d7f4-4b46-860c-14c048cce178" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/providers/microsoft.recoveryservices/locations/eastus2euap/backupJobs/02585cc9-d7f4-4b46-860c-14c048cce178", + "name": "02585cc9-d7f4-4b46-860c-14c048cce178", + "type": "Microsoft.RecoveryServices/vaults/backupJobs", + "properties": { + "jobType": "AzureIaaSVMJob", + "duration": "1.20:17:03.2938821", + "virtualMachineVersion": "Compute", + "extendedInfo": { + "tasksList": [], + "propertyBag": {} + }, + "entityFriendlyName": "sriniccylinux", + "backupManagementType": "AzureIaasVM", + "operation": "CrossRegionRestore", + "status": "InProgress", + "startTime": "2019-10-12T10:22:43.9139656Z", + "activityId": "6e503ee3-1093-4a83-a62a-3b666cc8c028-2019-10-12T10:22:43Z-Ibz" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/GetCrrOperationResults_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/GetCrrOperationResults_Get.json new file mode 100644 index 000000000000..068154ce73da --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/GetCrrOperationResults_Get.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "azureRegion": "southeastasia", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2018-12-20", + "parameters": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.Compute/VirtualMachines/testVm" + } + }, + "responses": { + "202": { + "headers": { + "Location": "location: https://centraluseuap.management.azure.com/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/providers/microsoft.recoveryservices/locations/eastus2euap/backupCrrOperationResults/MTMzMDgzNzkwNjQxODEzODE2MDtkMTY3MzM3Yy0yM2I1LTQ5ODgtODkwZC0xY2MyMmQ5MTYyZjA=?api-version=2018-12-20-preview", + "Azure-AsyncOperation": "azure-asyncoperation: https://centraluseuap.management.azure.com/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/providers/microsoft.recoveryservices/locations/eastus2euap/backupCrrOperationsStatus/MTMzMDgzNzkwNjQxODEzODE2MDtkMTY3MzM3Yy0yM2I1LTQ5ODgtODkwZC0xY2MyMmQ5MTYyZjA=?api-version=2018-12-20-preview", + "Retry-After": 60 + } + }, + "200": {} + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/GetCrrOperationStatus_Get.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/GetCrrOperationStatus_Get.json new file mode 100644 index 000000000000..435faf3f20e0 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/GetCrrOperationStatus_Get.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "azureRegion": "southeastasia", + "operationId": "00000000-0000-0000-0000-000000000000", + "api-version": "2018-12-20", + "parameters": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.Compute/VirtualMachines/testVm" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/providers/microsoft.recoveryservices/locations/eastus2euap/backupCrrOperationsStatus/MTMzMDgzNzkwNjQxODEzODE2MDtkMTY3MzM3Yy0yM2I1LTQ5ODgtODkwZC0xY2MyMmQ5MTYyZjA=", + "name": "MTMzMDgzNzkwNjQxODEzODE2MDtkMTY3MzM3Yy0yM2I1LTQ5ODgtODkwZC0xY2MyMmQ5MTYyZjA=", + "status": "Succeeded", + "startTime": "2019-10-14T06:46:44.3225024Z", + "endTime": "2019-10-14T06:46:44Z" + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/ListCrrJobs_Post.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/ListCrrJobs_Post.json new file mode 100644 index 000000000000..69c52aeeb20e --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/ListCrrJobs_Post.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "azureRegion": "southeastasia", + "api-version": "2018-12-20", + "parameters": { + "resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.Compute/VirtualMachines/testVm" + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/providers/microsoft.recoveryservices/locations/eastus2euap/backupJobs/02585cc9-d7f4-4b46-860c-14c048cce178", + "name": "02585cc9-d7f4-4b46-860c-14c048cce178", + "type": "Microsoft.RecoveryServices/vaults/backupJobs", + "properties": { + "jobType": "AzureIaaSVMJob", + "duration": "1.19:59:12.7946856", + "virtualMachineVersion": "Compute", + "entityFriendlyName": "sriniccylinux", + "backupManagementType": "AzureIaasVM", + "operation": "CrossRegionRestore", + "status": "InProgress", + "startTime": "2019-10-12T10:22:43.9139656Z", + "activityId": "6e503ee3-1093-4a83-a62a-3b666cc8c028-2019-10-12T10:22:43Z-Ibz" + } + } + ] + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/RecoveryPoints_List.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/RecoveryPoints_List.json new file mode 100644 index 000000000000..6504b3546ee9 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/RecoveryPoints_List.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "rshhtestmdvmrg", + "vaultName": "rshvault", + "fabricName": "Azure", + "containerName": "IaasVMContainer;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall", + "protectedItemName": "VM;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall", + "api-version": "2019-05-13" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rshhtestmdvmrg/providers/Microsoft.RecoveryServices/vaults/rshvault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/protectedItems/VM;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/recoveryPoints/22244821112382", + "name": "22244821112382", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints", + "properties": { + "objectType": "IaasVMRecoveryPoint", + "recoveryPointType": "CrashConsistent", + "recoveryPointTime": "2017-12-21T22:48:25.4353958Z", + "recoveryPointAdditionalInfo": "", + "sourceVMStorageType": "NormalStorage", + "isSourceVMEncrypted": false, + "isInstantIlrSessionActive": false, + "recoveryPointTierDetails": [ + { + "type": "InstantRP", + "status": "Valid" + }, + { + "type": "HardenedRP", + "status": "Valid" + } + ], + "isManagedVirtualMachine": true, + "virtualMachineSize": "Standard_D1", + "originalStorageAccountOption": false + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rshhtestmdvmrg/providers/Microsoft.RecoveryServices/vaults/rshvault/backupFabrics/Azure/protectionContainers/IaasVMContainer;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/protectedItems/VM;iaasvmcontainerv2;rshhtestmdvmrg;rshmdvmsmall/recoveryPoints/24977149827250", + "name": "24977149827250", + "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems/recoveryPoints", + "properties": { + "objectType": "IaasVMRecoveryPoint", + "recoveryPointType": "CrashConsistent", + "recoveryPointTime": "2017-12-20T22:49:44.3317945Z", + "recoveryPointAdditionalInfo": "", + "sourceVMStorageType": "NormalStorage", + "isSourceVMEncrypted": false, + "isInstantIlrSessionActive": false, + "recoveryPointTierDetails": [ + { + "type": "InstantRP", + "status": "Valid" + }, + { + "type": "HardenedRP", + "status": "Valid" + } + ], + "isManagedVirtualMachine": true, + "virtualMachineSize": "Standard_D1", + "originalStorageAccountOption": false + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/TriggerCrossRegionRestore_Post.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/TriggerCrossRegionRestore_Post.json new file mode 100644 index 000000000000..845ae5b837ab --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2018-12-20/examples/AzureIaasVm/TriggerCrossRegionRestore_Post.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "azureRegion": "southeastasia", + "api-version": "2018-12-20", + "parameters": { + "properties": { + "crossRegionRestoreAccessDetails": { + "accessTokenString": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6IkhqaUJHdVExa2lWV2hyc2lzLUhEckhyWVZNbyJ9.eyJVc2VySWRlbnRpdHlUeXBlIjoiQUFEIiwiQWFkVGVuYW50SWQiOiIzM2UwMTkyMS00ZDY0LTRmOGMtYTA1NS01YmRhZmZkNWUzM2QiLCJBYWRTUE9iamVjdElkIjoiOTMzMjc2ZmMtMWJiNy00ZWNiLTk0ZTYtYWY3ODMyNWY3MjZhIiwiUmVzdG9yZVBvaW50UGVybWlzc2lvbnMiOiJSZWFkIiwiUmVzdG9yZVBvaW50SUQiOiJyZXNvdXJjZXMvMTMzMDgzNzkwNjQxODEzODE2MC9wcm90ZWN0aW9uQ29udGFpbmVycy8xMTE0Ni9wcm90ZWN0ZWRJdGVtcy8xMTQyOTM3MDMxL3JlY292ZXJ5UG9pbnRzLzg3MTc4MzU1MzkyNzE2IiwiaXNzIjoiaHR0cHM6Ly9SZWNvdmVyeVNlcnZpY2UiLCJhdWQiOiJodHRwczovL1JlY292ZXJ5U2VydmljZXMvUHJvdGVjdGlvblNlcnZpY2UiLCJleHAiOjE1NzExMjE5ODYsIm5iZiI6MTU3MTAzNTI4Nn0.oNbeX8ueE6JRGU0IagFjkOlU-o48ez9gCeCrn1-8XEsaVtYJIFKq9FeHfPAoCMxiLQvwL7S0JTjDTjiEsZEvr_VM7tDVwW3sESo2oW-SZlxT_1dJiUBn0jVlQyfDcHEMzbkaTuZswgNWfowgOrnJ67y-ztSUcegf3eVKPEhN1enBBS7pIuL9bZ3SVwMuqznUen6dH54y9lN2w6H14X0UK2CwSN94Uh-spB27j9SbksxLY_tyZm6xsamZFTHpwbgZwR24-GDtElPSxpFL6n_tWLSCHQtN9s84o0X7PfFaMkVmGWbOf4AZmP9M6agagG0JLnlOwObr07YrzZRkg3s2eQ", + "backupManagementType": "AzureIaasVM", + "containerName": "iaasvmcontainerv2;srinivasccyrg;sriniccylinux", + "containerType": "IaasVMContainer", + "coordinatorServiceStampUri": "https://pod01-coord1.ccy.backup.windowsazure.com", + "datasourceContainerName": "iaasvmcontainerv2;srinivasccyrg;sriniccylinux", + "datasourceId": "1142937031", + "datasourceName": "sriniccylinux", + "datasourceType": "VM", + "protectionServiceStampId": "90d98224-2ac6-4bda-9f35-33fb22841f2a", + "protectionServiceStampUri": "https://pod01-prot1-int.ccy.backup.windowsazure.com", + "recoveryPointId": "87178355392716", + "recoveryPointTime": "10/9/2019 6:05:54 PM", + "resourceGroupName": "srinivasccyrg", + "resourceId": "1330837906418138160", + "resourceName": "sriniccyvault", + "subscriptionId": "f2edfd5d-5496-4683-b94f-b3588c579009", + "tokenExtendedInformation": "V2015_09f2edfd5d-5496-4683-b94f-b3588c579009;AzureBackup_sriniccylinux_1142937031;AzureBackup_20191009_060554;AzureBackupRG_centraluseuap_1truetruefalseLinuxFileSystemConsistentPremiumVMOnPremiumStorageStandard_D2s_v3" + }, + "restoreRequest": { + "affinityGroup": "", + "createNewCloudService": false, + "encryptionDetails": { + "encryptionEnabled": false + }, + "objectType": "IaasVMRestoreRequest", + "originalStorageAccountOption": false, + "recoveryPointId": "87178355392716", + "recoveryType": "AlternateLocation", + "region": "eastus2euap", + "sourceResourceId": "/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/resourceGroups/srinivasccyrg/providers/Microsoft.Compute/virtualMachines/sriniccylinux", + "storageAccountId": "/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/resourceGroups/00prjaiTestRg1/providers/Microsoft.Storage/storageAccounts/00prjaitestrg1disks993", + "subnetId": "/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/resourceGroups/00networkAcklVaultCCY/providers/Microsoft.Network/virtualNetworks/00networkAcklVaultCCY-vnet/subnets/default", + "targetDomainNameId": null, + "targetResourceGroupId": "/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/resourceGroups/00networkAckl", + "targetVirtualMachineId": "/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/resourceGroups/00networkAckl/providers/Microsoft.Compute/virtualMachines/gaallaVM", + "virtualNetworkId": "/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/resourceGroups/00networkAcklVaultCCY/providers/Microsoft.Network/virtualNetworks/00networkAcklVaultCCY-vnet" + } + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "location: https://centraluseuap.management.azure.com/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/providers/microsoft.recoveryservices/locations/eastus2euap/backupCrrOperationResults/MTMzMDgzNzkwNjQxODEzODE2MDtkMTY3MzM3Yy0yM2I1LTQ5ODgtODkwZC0xY2MyMmQ5MTYyZjA=?api-version=2018-12-20-preview", + "Azure-AsyncOperation": "azure-asyncoperation: https://centraluseuap.management.azure.com/subscriptions/f2edfd5d-5496-4683-b94f-b3588c579009/providers/microsoft.recoveryservices/locations/eastus2euap/backupCrrOperationsStatus/MTMzMDgzNzkwNjQxODEzODE2MDtkMTY3MzM3Yy0yM2I1LTQ5ODgtODkwZC0xY2MyMmQ5MTYyZjA=?api-version=2018-12-20-preview", + "Retry-After": 60 + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2019-05-13/examples/Common/BackupResourceVaultConfigs_Patch.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2019-05-13/examples/Common/BackupResourceVaultConfigs_Patch.json index aa044378b4df..78129dfabef1 100644 --- a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2019-05-13/examples/Common/BackupResourceVaultConfigs_Patch.json +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2019-05-13/examples/Common/BackupResourceVaultConfigs_Patch.json @@ -7,7 +7,7 @@ "parameters": { "properties": { "enhancedSecurityState": "Enabled", - "softDeleteFeatureState": "Disabled" + "softDeleteFeatureState": "Enabled" } } }, @@ -19,7 +19,7 @@ "type": "Microsoft.RecoveryServices/vaults/backupconfig", "properties": { "enhancedSecurityState": "Enabled", - "softDeleteFeatureState": "Disabled" + "softDeleteFeatureState": "Enabled" } } } diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2019-06-15/bms.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2019-06-15/bms.json index 6ff3c63b4322..aa358fefa44b 100644 --- a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2019-06-15/bms.json +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2019-06-15/bms.json @@ -101,6 +101,58 @@ "$ref": "./examples/Common/BackupResourceVaultConfigs_Patch.json" } } + }, + "put": { + "tags": [ + "BackupResourceVaultConfigs" + ], + "description": "Updates vault security config.", + "operationId": "BackupResourceVaultConfigs_Put", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "resource config request", + "required": true, + "schema": { + "$ref": "#/definitions/BackupResourceVaultConfigResource" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BackupResourceVaultConfigResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Update Vault Security Config": { + "$ref": "./examples/Common/BackupResourceVaultConfigs_Put.json" + } + } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}": { diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2019-06-15/examples/Common/BackupResourceVaultConfigs_Patch.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2019-06-15/examples/Common/BackupResourceVaultConfigs_Patch.json index 3afab713b496..385b7324d179 100644 --- a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2019-06-15/examples/Common/BackupResourceVaultConfigs_Patch.json +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2019-06-15/examples/Common/BackupResourceVaultConfigs_Patch.json @@ -7,7 +7,7 @@ "parameters": { "properties": { "enhancedSecurityState": "Enabled", - "softDeleteFeatureState": "Disabled" + "softDeleteFeatureState": "Enabled" } } }, @@ -19,7 +19,7 @@ "type": "Microsoft.RecoveryServices/vaults/backupconfig", "properties": { "enhancedSecurityState": "Enabled", - "softDeleteFeatureState": "Disabled" + "softDeleteFeatureState": "Enabled" } } } diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2019-06-15/examples/Common/BackupResourceVaultConfigs_Put.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2019-06-15/examples/Common/BackupResourceVaultConfigs_Put.json new file mode 100644 index 000000000000..385b7324d179 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2019-06-15/examples/Common/BackupResourceVaultConfigs_Put.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "SwaggerTestRg", + "vaultName": "SwaggerTest", + "api-version": "2019-06-15", + "parameters": { + "properties": { + "enhancedSecurityState": "Enabled", + "softDeleteFeatureState": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SwaggerTestRg/providers/Microsoft.RecoveryServices/vaults/SwaggerTest/backupconfig/vaultconfig", + "name": "vaultconfig", + "type": "Microsoft.RecoveryServices/vaults/backupconfig", + "properties": { + "enhancedSecurityState": "Enabled", + "softDeleteFeatureState": "Enabled" + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/bms.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/bms.json new file mode 100644 index 000000000000..1336ac488311 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/bms.json @@ -0,0 +1,473 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-02-02", + "title": "RecoveryServicesBackupClient", + "x-ms-code-generation-settings": { + "internalConstructors": false + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnection" + ], + "description": "Get Private Endpoint Connection. This call is made by Backup Admin.", + "operationId": "PrivateEndpointConnection_Get", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get PrivateEndpointConnection": { + "$ref": "./examples/PrivateEndpointConnection/GetPrivateEndpointConnection.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnection" + ], + "description": "Approve or Reject Private Endpoint requests. This call is made by Backup Admin.", + "operationId": "PrivateEndpointConnection_Put", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "Request body for operation", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionResource" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionResource" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionResource" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update PrivateEndpointConnection": { + "$ref": "./examples/PrivateEndpointConnection/PutPrivateEndpointConnection.json" + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnection" + ], + "description": "Delete Private Endpoint requests. This call is made by Backup Admin.", + "operationId": "PrivateEndpointConnection_Delete", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete PrivateEndpointConnection": { + "$ref": "./examples/PrivateEndpointConnection/DeletePrivateEndpointConnection.json" + } + } + } + }, + "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/privateEndpointConnections/{privateEndpointConnectionName}/operationsStatus/{operationId}": { + "get": { + "tags": [ + "PrivateEndpoint" + ], + "summary": "Gets the operation status for a private endpoint connection.", + "operationId": "GetOperationStatus", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/VaultName" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "Operation id", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationStatus" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get OperationStatus": { + "$ref": "./examples/PrivateEndpointConnection/GetPrivateEndpointConnectionOperationStatus.json" + } + } + } + } + }, + "definitions": { + "OperationStatus": { + "description": "Operation status.", + "type": "object", + "properties": { + "id": { + "description": "ID of the operation.", + "type": "string" + }, + "name": { + "description": "Name of the operation.", + "type": "string" + }, + "status": { + "description": "Operation status.", + "enum": [ + "Invalid", + "InProgress", + "Succeeded", + "Failed", + "Canceled" + ], + "type": "string", + "x-ms-enum": { + "name": "OperationStatusValues", + "modelAsString": true + } + }, + "startTime": { + "format": "date-time", + "description": "Operation start time. Format: ISO-8601.", + "type": "string" + }, + "endTime": { + "format": "date-time", + "description": "Operation end time. Format: ISO-8601.", + "type": "string" + }, + "error": { + "$ref": "#/definitions/OperationStatusError", + "description": "Error information related to this operation." + } + } + }, + "OperationStatusError": { + "description": "Error information associated with operation status call.", + "type": "object", + "properties": { + "code": { + "description": "Error code of the operation failure.", + "type": "string" + }, + "message": { + "description": "Error message displayed if the operation failure.", + "type": "string" + } + } + }, + "PrivateEndpoint": { + "description": "The Private Endpoint network resource that is linked to the Private Endpoint connection", + "type": "object", + "properties": { + "id": { + "description": "Gets or sets id", + "type": "string" + } + } + }, + "PrivateEndpointConnection": { + "description": "Private Endpoint Connection Response Properties", + "type": "object", + "properties": { + "provisioningState": { + "description": "Gets or sets provisioning state of the private endpoint connection", + "enum": [ + "Succeeded", + "Deleting", + "Failed", + "Pending" + ], + "type": "string", + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "Gets or sets private endpoint associated with the private endpoint connection" + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "Gets or sets private link service connection state" + } + } + }, + "PrivateEndpointConnectionResource": { + "description": "Private Endpoint Connection Response Properties", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnection", + "description": "PrivateEndpointConnectionResource properties" + } + } + }, + "Resource": { + "description": "ARM Resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource Id represents the complete path to the resource.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Resource name associated with the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/...", + "type": "string", + "readOnly": true + }, + "location": { + "description": "Resource location.", + "type": "string" + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "eTag": { + "description": "Optional ETag.", + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "PrivateLinkServiceConnectionState": { + "description": "Private Link Service Connection State", + "type": "object", + "properties": { + "status": { + "description": "Gets or sets the status", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ], + "type": "string", + "x-ms-enum": { + "name": "PrivateEndpointConnectionStatus", + "modelAsString": true + } + }, + "description": { + "description": "Gets or sets description", + "type": "string" + }, + "actionRequired": { + "description": "Gets or sets actions required", + "type": "string" + } + } + } + }, + "parameters": { + "SubscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription Id.", + "required": true, + "type": "string" + }, + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group where the recovery services vault is present.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "VaultName": { + "name": "vaultName", + "in": "path", + "description": "The name of the recovery services vault.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ApiVersion": { + "name": "api-version", + "in": "query", + "description": "Client Api Version.", + "required": true, + "type": "string" + } + }, + "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." + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/examples/PrivateEndpointConnection/DeletePrivateEndpointConnection.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/examples/PrivateEndpointConnection/DeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..afce2b84d2c8 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/examples/PrivateEndpointConnection/DeletePrivateEndpointConnection.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "04cf684a-d41f-4550-9f70-7708a3a2283b", + "resourceGroupName": "gaallaRG", + "vaultName": "gaallavaultbvtd2msi", + "privateEndpointConnectionName": "gaallatestpe2.5704c932-249a-490b-a142-1396838cd3b", + "api-version": "2020-02-02" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/backupadminrg/providers/Microsoft.RecoveryServices/Vaults/demo-pevault-2/privateEndpointConnections/autoapprovalpeecy4.3679789459502941542.backup.5ede856d-d9f0-461e-a15b-370c84525817/operationsStatus/2908a25d-8036-48d2-bdcc-fdce26b9771f?api-versi", + "Retry-After": "60" + } + }, + "204": {} + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/examples/PrivateEndpointConnection/GetPrivateEndpointConnection.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/examples/PrivateEndpointConnection/GetPrivateEndpointConnection.json new file mode 100644 index 000000000000..45dee7c44bcc --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/examples/PrivateEndpointConnection/GetPrivateEndpointConnection.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "04cf684a-d41f-4550-9f70-7708a3a2283b", + "resourceGroupName": "gaallaRG", + "vaultName": "gaallavaultbvtd2msi", + "privateEndpointConnectionName": "gaallatestpe2.5704c932-249a-490b-a142-1396838cd3b", + "api-version": "2020-02-02" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.RecoveryServicesBVTD2/vaults/gaallavaultbvtd2msi/privateEndpointConnections/gaallatestpe3.3592346090307038890.backup.5704c932-249a-490b-a142-1396838cd3b", + "name": "gaallatestpe1.3592346090307038890.backup.5704c932-249a-490b-a142-1396838cd3b", + "type": "Microsoft.RecoveryServices/vaults/privateEndpointConnections", + "properties": { + "provisioningState": "Pending", + "privateEndpoint": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.Network/privateEndpoints/gaallatestpe3" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@company.com" + } + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/examples/PrivateEndpointConnection/GetPrivateEndpointConnectionOperationStatus.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/examples/PrivateEndpointConnection/GetPrivateEndpointConnectionOperationStatus.json new file mode 100644 index 000000000000..f91c1f9849d3 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/examples/PrivateEndpointConnection/GetPrivateEndpointConnectionOperationStatus.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "04cf684a-d41f-4550-9f70-7708a3a2283b", + "resourceGroupName": "gaallaRG", + "privateEndpointConnectionName": "gaallatestpe2.5704c932-249a-490b-a142-1396838cd3b", + "vaultName": "gaallavaultbvtd2msi", + "operationId": "0f48183b-0a44-4dca-aec1-bba5daab888a", + "api-version": "2020-02-02" + }, + "responses": { + "200": { + "body": { + "id": "0f48183b-0a44-4dca-aec1-bba5daab888a", + "name": "0f48183b-0a44-4dca-aec1-bba5daab888a", + "status": "Succeeded", + "startTime": "2020-02-27T11:59:47.5901592Z", + "endTime": "2020-02-27T11:59:47.5901592Z" + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/examples/PrivateEndpointConnection/PutPrivateEndpointConnection.json b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/examples/PrivateEndpointConnection/PutPrivateEndpointConnection.json new file mode 100644 index 000000000000..2e8c586ecd08 --- /dev/null +++ b/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2020-02-02/examples/PrivateEndpointConnection/PutPrivateEndpointConnection.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "04cf684a-d41f-4550-9f70-7708a3a2283b", + "resourceGroupName": "gaallaRG", + "vaultName": "gaallavaultbvtd2msi", + "privateEndpointConnectionName": "gaallatestpe2.5704c932-249a-490b-a142-1396838cd3b", + "api-version": "2020-02-02", + "parameters": { + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.Network/privateEndpoints/gaallatestpe3" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@company.com" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.RecoveryServicesBVTD2/vaults/gaallavaultbvtd2msi/privateEndpointConnections/gaallatestpe3.3592346090307038890.backup.5704c932-249a-490b-a142-1396838cd3b", + "name": "gaallatestpe1.3592346090307038890.backup.5704c932-249a-490b-a142-1396838cd3b", + "type": "Microsoft.RecoveryServices/vaults/privateEndpointConnections", + "properties": { + "provisioningState": "Pending", + "privateEndpoint": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.Network/privateEndpoints/gaallatestpe3" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@company.com" + } + } + }, + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/6c48fa17-39c7-45f1-90ac-47a587128ace/resourceGroups/backupadminrg/providers/Microsoft.RecoveryServices/Vaults/demo-pevault-2/privateEndpointConnections/autoapprovalpeecy4.3679789459502941542.backup.5ede856d-d9f0-461e-a15b-370c84525817/operationsStatus/2908a25d-8036-48d2-bdcc-fdce26b9771f?api-versi", + "Retry-After": "60" + } + }, + "200": { + "body": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.RecoveryServicesBVTD2/vaults/gaallavaultbvtd2msi/privateEndpointConnections/gaallatestpe3.3592346090307038890.backup.5704c932-249a-490b-a142-1396838cd3b", + "name": "gaallatestpe1.3592346090307038890.backup.5704c932-249a-490b-a142-1396838cd3b", + "type": "Microsoft.RecoveryServices/vaults/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/gaallaRG/providers/Microsoft.Network/privateEndpoints/gaallatestpe3" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by johndoe@company.com" + } + } + } + } + } +} diff --git a/specification/recoveryservicesbackup/resource-manager/readme.go.md b/specification/recoveryservicesbackup/resource-manager/readme.go.md index 902d33498d2d..7d6540136972 100644 --- a/specification/recoveryservicesbackup/resource-manager/readme.go.md +++ b/specification/recoveryservicesbackup/resource-manager/readme.go.md @@ -13,12 +13,32 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2020-02 + - tag: package-2019-06 - tag: package-2019-05 - tag: package-2017-07 - tag: package-2016-12 - tag: package-2016-06 ``` +### Tag: package-2020-02 and go + +These settings apply only when `--tag=package-2020-02 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag)=='package-2020-02' && $(go) +output-folder: $(go-sdk-folder)/services/recoveryservices/mgmt/2020-02-02/$(namespace) +``` + +### Tag: package-2019-06 and go + +These settings apply only when `--tag=package-2019-06 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag)=='package-2019-06' && $(go) +output-folder: $(go-sdk-folder)/services/recoveryservices/mgmt/2019-06-15/$(namespace) +``` + ### Tag: package-2019-05 and go These settings apply only when `--tag=package-2019-05 --go` is specified on the command line. diff --git a/specification/recoveryservicesbackup/resource-manager/readme.java.md b/specification/recoveryservicesbackup/resource-manager/readme.java.md index b54903820c62..4f212d2b9248 100644 --- a/specification/recoveryservicesbackup/resource-manager/readme.java.md +++ b/specification/recoveryservicesbackup/resource-manager/readme.java.md @@ -18,6 +18,24 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-recoveryservicesbac ``` yaml $(java) && $(multiapi) batch: - tag: package-2016-08 + - tag: package-2020-02 +directive: + - rename-operation: + from: Operations_List + to: Operation_List +``` + +### Tag: package-2020-02 and java + +These settings apply only when `--tag=package-2020-02 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2020-02' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.recoveryservices.backup.v2020_02_02 + output-folder: $(azure-libraries-for-java-folder)/sdk/recoveryservices.backup/mgmt-v2020_02_02 +regenerate-manager: true +generate-interface: true ``` ### Tag: package-2016-08 and java diff --git a/specification/recoveryservicesbackup/resource-manager/readme.md b/specification/recoveryservicesbackup/resource-manager/readme.md index 0aa7a9b3d7db..fcb830f7613c 100644 --- a/specification/recoveryservicesbackup/resource-manager/readme.md +++ b/specification/recoveryservicesbackup/resource-manager/readme.md @@ -28,7 +28,7 @@ These are the global settings for the RecoveryServicesBackup API. title: Recovery Services Backup Client description: Open API 2.0 Specs for Azure RecoveryServices Backup service openapi-type: arm -tag: package-2019-06 +tag: package-2020-02 csharp-sdks-folder: ./Generated/CSharp python-sdks-folder: ./Generated/Python go-sdk-folder: ./Generated/Golang @@ -45,6 +45,20 @@ model-validator: true semantic-validator: true message-format: json ``` +### Tag: package-2020-02 + +These settings apply only when `--tag=package-2020-02` is specified on the command line. + +``` yaml $(tag) == 'package-2020-02' +input-file: +- Microsoft.RecoveryServices/stable/2020-02-02/bms.json +- Microsoft.RecoveryServices/stable/2019-06-15/bms.json +- Microsoft.RecoveryServices/stable/2017-07-01/bms.json +- Microsoft.RecoveryServices/stable/2016-12-01/bms.json +- Microsoft.RecoveryServices/stable/2016-08-10/operations.json +``` + + ### Tag: package-2019-06 These settings apply only when `--tag=package-2019-06` is specified on the command line. @@ -75,6 +89,7 @@ These settings apply only when `--tag=package-2017-07` is specified on the comma ``` yaml $(tag) == 'package-2017-07' input-file: +- Microsoft.RecoveryServices/stable/2018-12-20/bms.json - Microsoft.RecoveryServices/stable/2017-07-01/bms.json - Microsoft.RecoveryServices/stable/2016-12-01/bms.json - Microsoft.RecoveryServices/stable/2016-08-10/operations.json @@ -175,11 +190,13 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(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 diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Create.json index a057706e816e..9776b198618e 100644 --- a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Create.json +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Create.json @@ -12,12 +12,13 @@ "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", "providerSpecificDetails": { "instanceType": "VMwareCbt", - "disksToInclude" : [ + "disksToInclude": [ { "diskId": "disk1", "isOSDisk": "true", "logStorageAccountId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.Storage/storageAccounts/logStorageAccount1", - "logStorageAccountSasSecretName": "logStorageSas" + "logStorageAccountSasSecretName": "logStorageSas", + "diskEncryptionSetId": "/subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.Compute/diskEncryptionSets/diskEncryptionSet1" } ], "vmwareMachineId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.OffAzure/VMwareSites/vmwaresite1/machines/virtualmachine1", diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Resync.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Resync.json index 6a0366eb7c02..acf3afe58996 100644 --- a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Resync.json +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/examples/ReplicationMigrationItems_Resync.json @@ -49,4 +49,4 @@ }, "202": {} } -} \ No newline at end of file +} diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/service.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/service.json index 729374001a66..87ed21684413 100644 --- a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/service.json +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-01-10/service.json @@ -16176,6 +16176,10 @@ "name": "DiskAccountType", "modelAsString": true } + }, + "diskEncryptionSetId": { + "description": "The DiskEncryptionSet ARM Id.", + "type": "string" } } }, @@ -16412,6 +16416,11 @@ "type": "integer", "readOnly": true }, + "resyncRequired": { + "description": "A value indicating whether resync is required.", + "type": "string", + "readOnly": true + }, "resyncState": { "description": "The resync state.", "enum": [ @@ -16619,6 +16628,11 @@ "type": "string", "readOnly": true }, + "diskEncryptionSetId": { + "description": "The DiskEncryptionSet ARM Id.", + "type": "string", + "readOnly": true + }, "seedManagedDiskId": { "description": "The ARM Id of the seed managed disk.", "type": "string", diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-07-10/examples/ReplicationMigrationItems_Create.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-07-10/examples/ReplicationMigrationItems_Create.json index 15284b3961db..73e97b7f7517 100644 --- a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-07-10/examples/ReplicationMigrationItems_Create.json +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-07-10/examples/ReplicationMigrationItems_Create.json @@ -12,7 +12,7 @@ "policyId": "/Subscriptions/cb53d0c3-bd59-4721-89bc-06916a9147ef/resourceGroups/resourcegroup1/providers/Microsoft.RecoveryServices/vaults/migrationvault/replicationPolicies/vmwarepolicy1", "providerSpecificDetails": { "instanceType": "VMwareCbt", - "disksToInclude" : [ + "disksToInclude": [ { "diskId": "disk1", "isOSDisk": "true", diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-07-10/examples/TargetComputeSizes_ListByReplicationProtectedItems.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-07-10/examples/TargetComputeSizes_ListByReplicationProtectedItems.json index d8a2c12eb4f0..c9d99937b366 100644 --- a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-07-10/examples/TargetComputeSizes_ListByReplicationProtectedItems.json +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-07-10/examples/TargetComputeSizes_ListByReplicationProtectedItems.json @@ -35,11 +35,15 @@ "name": "Standard_A0", "friendlyName": "Standard_A0", "cpuCoresCount": 1, + "vCPUsAvailable": 1, "memoryInGB": 0.75, "maxDataDiskCount": 1, "maxNicsCount": 2, "errors": null, - "highIopsSupported": "NotSupported" + "highIopsSupported": "NotSupported", + "hyperVGenerations": [ + "V1" + ] } } ], diff --git a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-07-10/service.json b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-07-10/service.json index 5a43715b05d5..ea6c251dceb2 100644 --- a/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-07-10/service.json +++ b/specification/recoveryservicessiterecovery/resource-manager/Microsoft.RecoveryServices/stable/2018-07-10/service.json @@ -242,7 +242,6 @@ } } }, - "x-ms-long-running-operation": true, "x-ms-examples": { "Gets the validation errors in case the VM is unsuitable for protection.": { "$ref": "./examples/ReplicationEligibilityResults_List.json" @@ -287,7 +286,6 @@ } } }, - "x-ms-long-running-operation": true, "x-ms-examples": { "Gets the validation errors in case the VM is unsuitable for protection.": { "$ref": "./examples/ReplicationEligibilityResults_Get.json" @@ -7499,6 +7497,10 @@ "description": "The recovery availability set Id.", "type": "string" }, + "recoveryProximityPlacementGroupId": { + "description": "The recovery proximity placement group Id.", + "type": "string" + }, "vmDisks": { "description": "The list of vm disk details.", "type": "array", @@ -7800,9 +7802,9 @@ "type": "string" }, "recoveryDiskEncryptionSetId": { - "description": "The recovery disk encryption set Id.", + "description": "The recovery disk encryption set Id.", "type": "string" - }, + }, "diskName": { "description": "The disk name.", "type": "string" @@ -7879,12 +7881,12 @@ "type": "string" }, "failoverDiskName": { - "description": "The failover name for the managed disk.", - "type": "string" + "description": "The failover name for the managed disk.", + "type": "string" }, "tfoDiskName": { - "description": "The test failover name for the managed disk.", - "type": "string" + "description": "The test failover name for the managed disk.", + "type": "string" } } }, @@ -8090,8 +8092,8 @@ "type": "string" }, "selectedTfoAzureNetworkId": { - "description": "The test failover virtual network.", - "type": "string" + "description": "The test failover virtual network.", + "type": "string" }, "vmNics": { "description": "The virtual machine nic details.", @@ -8175,8 +8177,12 @@ } }, "tfoAzureVMName": { - "description": "The test failover VM name.", - "type": "string" + "description": "The test failover VM name.", + "type": "string" + }, + "recoveryProximityPlacementGroupId": { + "description": "The recovery proximity placement group Id.", + "type": "string" } }, "x-ms-discriminator-value": "A2A" @@ -8259,6 +8265,10 @@ "description": "The recovery availability set.", "type": "string" }, + "recoveryProximityPlacementGroupId": { + "description": "The recovery proximity placement group Id.", + "type": "string" + }, "policyId": { "description": "The Policy Id.", "type": "string" @@ -8345,9 +8355,13 @@ "$ref": "#/definitions/DiskEncryptionInfo", "description": "The recovery os disk encryption information." }, + "recoveryProximityPlacementGroupId": { + "description": "The recovery proximity placement group Id.", + "type": "string" + }, "tfoAzureVMName": { - "description": "The user given name for test failover VM.", - "type": "string" + "description": "The user given name for test failover VM.", + "type": "string" } }, "x-ms-discriminator-value": "A2A" @@ -8425,12 +8439,12 @@ "description": "The recovery disk encryption information (for one / single pass flows)." }, "failoverDiskName": { - "description": "The target disk name for unplanned failover operation.", - "type": "string" + "description": "The target disk name for unplanned failover operation.", + "type": "string" }, "tfoDiskName": { - "description": "The target disk name for test failover operation.", - "type": "string" + "description": "The target disk name for test failover operation.", + "type": "string" } } }, @@ -9123,6 +9137,14 @@ "items": { "$ref": "#/definitions/RecoveryPlanGroup" } + }, + "providerSpecificInput": { + "description": "The provider specific input.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPlanProviderSpecificInput" + } } } }, @@ -11709,6 +11731,11 @@ "description": "The process server Id.", "type": "string" }, + "processServerName": { + "description": "The process server name.", + "type": "string", + "readOnly": true + }, "multiVmGroupId": { "description": "The multi vm group Id.", "type": "string" @@ -13836,6 +13863,60 @@ "agentVersionDetails": { "$ref": "#/definitions/VersionDetails", "description": "The agent version details." + }, + "health": { + "description": "The health of Process Server.", + "enum": [ + "None", + "Normal", + "Warning", + "Critical" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProtectionHealth", + "modelAsString": true + } + }, + "psStatsRefreshTime": { + "format": "date-time", + "description": "The process server stats refresh time.", + "type": "string", + "readOnly": true + }, + "throughputUploadPendingDataInBytes": { + "format": "int64", + "description": "The uploading pending data in bytes.", + "type": "integer", + "readOnly": true + }, + "throughputInMBps": { + "format": "int64", + "description": "The throughput in MBps.", + "type": "integer", + "readOnly": true + }, + "throughputInBytes": { + "format": "int64", + "description": "The throughput in bytes.", + "type": "integer", + "readOnly": true + }, + "throughputStatus": { + "description": "The throughput status.", + "type": "string", + "readOnly": true + }, + "marsCommunicationStatus": { + "description": "The MARS communication status.", + "type": "string", + "readOnly": true + }, + "marsRegistrationStatus": { + "description": "The MARS registration status.", + "type": "string", + "readOnly": true } } }, @@ -14284,6 +14365,46 @@ }, "x-ms-discriminator-value": "A2A" }, + "RecoveryPlanA2ADetails": { + "description": "Recovery plan A2A specific details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPlanProviderSpecificDetails" + } + ], + "properties": { + "primaryZone": { + "description": "The primary zone.", + "type": "string" + }, + "recoveryZone": { + "description": "The recovery zone.", + "type": "string" + } + }, + "x-ms-discriminator-value": "RecoveryPlanA2ADetails" + }, + "RecoveryPlanA2AInput": { + "description": "Recovery plan A2A input.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/RecoveryPlanProviderSpecificInput" + } + ], + "properties": { + "primaryZone": { + "description": "The primary zone.", + "type": "string" + }, + "recoveryZone": { + "description": "The recovery zone.", + "type": "string" + } + }, + "x-ms-discriminator-value": "A2A" + }, "RecoveryPlanAction": { "description": "Recovery plan action details.", "required": [ @@ -14751,6 +14872,15 @@ "items": { "$ref": "#/definitions/RecoveryPlanGroup" } + }, + "providerSpecificDetails": { + "description": "The provider id and provider specific details.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/RecoveryPlanProviderSpecificDetails" + }, + "readOnly": true } } }, @@ -14768,6 +14898,29 @@ } } }, + "RecoveryPlanProviderSpecificDetails": { + "description": "Recovery plan provider specific details.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the Instance type.", + "type": "string", + "readOnly": true + } + }, + "discriminator": "instanceType" + }, + "RecoveryPlanProviderSpecificInput": { + "description": "Recovery plan provider specific input base class.", + "type": "object", + "properties": { + "instanceType": { + "description": "Gets the Instance type.", + "type": "string" + } + }, + "discriminator": "instanceType" + }, "RecoveryPlanProviderSpecificFailoverInput": { "description": "Recovery plan provider specific failover input base class.", "type": "object", @@ -16073,6 +16226,12 @@ "description": "The maximum cpu cores count supported by target compute size.", "type": "integer" }, + "vCPUsAvailable": { + "format": "int32", + "description": "The Available vCPUs supported by target compute size.", + "type": "integer", + "readOnly": true + }, "memoryInGB": { "format": "double", "description": "The maximum memory in GB supported by target compute size.", @@ -16098,6 +16257,14 @@ "highIopsSupported": { "description": "The value indicating whether the target compute size supports high Iops.", "type": "string" + }, + "hyperVGenerations": { + "description": "The supported HyperV Generations.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true } } }, @@ -16473,8 +16640,8 @@ "type": "string" }, "selectedTfoAzureNetworkId": { - "description": "The Azure Network Id for test failover.", - "type": "string" + "description": "The Azure Network Id for test failover.", + "type": "string" }, "selectedSourceNicId": { "description": "The selected source nic Id which will be used as the primary nic during failover.", @@ -17028,27 +17195,53 @@ "type": "boolean" }, "tfoVMNetworkId": { - "description": "The network to be used by NIC during test failover.", - "type": "string" + "description": "The network to be used by NIC during test failover.", + "type": "string" }, "tfoVMSubnetName": { - "description": "The subnet to be used by NIC during test failover.", - "type": "string" + "description": "The subnet to be used by NIC during test failover.", + "type": "string" }, "tfoNetworkSecurityGroupId": { - "description": "The NSG to be used by NIC during test failover.", - "type": "string" + "description": "The NSG to be used by NIC during test failover.", + "type": "string" }, "enableAcceleratedNetworkingOnTfo": { - "description": "Whether the test failover NIC has accelerated networking enabled.", - "type": "boolean" + "description": "Whether the test failover NIC has accelerated networking enabled.", + "type": "boolean" }, "tfoIPConfigs": { - "description": "The IP configurations to be used by NIC during test failover.", - "type": "array", - "items": { - "$ref": "#/definitions/IPConfig" - } + "description": "The IP configurations to be used by NIC during test failover.", + "type": "array", + "items": { + "$ref": "#/definitions/IPConfig" + } + }, + "recoveryNicName": { + "description": "The name of the NIC to be used when creating target NICs.", + "type": "string" + }, + "recoveryNicResourceGroupName": { + "description": "The resource group of the NIC to be used when creating target NICs.", + "type": "string" + }, + "reuseExistingNic": { + "description": "A value indicating whether an existing NIC is allowed to be reused during failover subject to availability.", + "type": "boolean", + "default": false + }, + "tfoRecoveryNicName": { + "description": "The name of the NIC to be used when creating target NICs in TFO.", + "type": "string" + }, + "tfoRecoveryNicResourceGroupName": { + "description": "The resource group of the NIC to be used when creating target NICs in TFO.", + "type": "string" + }, + "tfoReuseExistingNic": { + "description": "A value indicating whether an existing NIC is allowed to be reused during test failover subject to availability.", + "type": "boolean", + "default": false } } }, @@ -17092,24 +17285,50 @@ "type": "boolean" }, "tfoVMSubnetName": { - "description": "The subnet to be used by NIC during test failover.", - "type": "string" + "description": "The subnet to be used by NIC during test failover.", + "type": "string" }, "tfoNetworkSecurityGroupId": { - "description": "The NSG to be used by NIC during test failover.", - "type": "string" + "description": "The NSG to be used by NIC during test failover.", + "type": "string" }, "enableAcceleratedNetworkingOnTfo": { - "description": "Whether the test NIC has accelerated networking enabled.", - "type": "boolean" + "description": "Whether the test NIC has accelerated networking enabled.", + "type": "boolean" }, "tfoIPConfigs": { - "description": "The IP configurations to be used by NIC during test failover.", - "uniqueItems": false, - "type": "array", - "items": { - "$ref": "#/definitions/IPConfig" - } + "description": "The IP configurations to be used by NIC during test failover.", + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/IPConfig" + } + }, + "recoveryNicName": { + "description": "The name of the NIC to be used when creating target NICs.", + "type": "string" + }, + "recoveryNicResourceGroupName": { + "description": "The resource group of the NIC to be used when creating target NICs.", + "type": "string" + }, + "reuseExistingNic": { + "description": "A value indicating whether an existing NIC is allowed to be reused during failover subject to availability.", + "type": "boolean", + "default": false + }, + "tfoNicName": { + "description": "The name of the NIC to be used when creating target NICs in TFO.", + "type": "string" + }, + "tfoNicResourceGroupName": { + "description": "The resource group of the NIC to be used when creating target NICs in TFO.", + "type": "string" + }, + "tfoReuseExistingNic": { + "description": "A value indicating whether an existing NIC is allowed to be reused during test failover subject to availability.", + "type": "boolean", + "default": false } } }, diff --git a/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_CreateOrUpdate.json b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_CreateOrUpdate.json new file mode 100644 index 000000000000..149b7a8459f0 --- /dev/null +++ b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_CreateOrUpdate.json @@ -0,0 +1,162 @@ +{ + "parameters": { + "api-version": "2020-04-30", + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup", + "resourceName": "resourceName", + "parameters": { + "location": "location", + "tags": { + "key": "value" + }, + "properties": { + "clusterProfile": { + "pullSecret": "{\"auths\":{\"registry.connect.redhat.com\":{\"auth\":\"\"},\"registry.redhat.io\":{\"auth\":\"\"}}}", + "domain": "cluster.location.aroapp.io", + "resourceGroupId": "/subscriptions/subscriptionId/resourceGroups/clusterResourceGroup" + }, + "consoleProfile": {}, + "servicePrincipalProfile": { + "clientId": "clientId", + "clientSecret": "clientSecret" + }, + "networkProfile": { + "podCidr": "10.128.0.0/14", + "serviceCidr": "172.30.0.0/16" + }, + "masterProfile": { + "vmSize": "Standard_D8s_v3", + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/master" + }, + "workerProfiles": [ + { + "name": "worker", + "vmSize": "Standard_D2s_v3", + "diskSizeGB": 128, + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/worker", + "count": 3 + } + ], + "apiserverProfile": { + "visibility": "Public" + }, + "ingressProfiles": [ + { + "name": "default", + "visibility": "Public" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.RedHatOpenShift/OpenShiftClusters/resourceName", + "name": "resourceName", + "type": "Microsoft.RedHatOpenShift/OpenShiftClusters", + "location": "location", + "tags": { + "key": "value" + }, + "properties": { + "provisioningState": "Succeeded", + "clusterProfile": { + "domain": "cluster.location.aroapp.io", + "version": "4.3.0", + "resourceGroupId": "/subscriptions/subscriptionId/resourceGroups/clusterResourceGroup" + }, + "consoleProfile": { + "url": "https://console-openshift-console.apps.cluster.location.aroapp.io/" + }, + "servicePrincipalProfile": { + "clientId": "clientId" + }, + "networkProfile": { + "podCidr": "10.128.0.0/14", + "serviceCidr": "172.30.0.0/16" + }, + "masterProfile": { + "vmSize": "Standard_D8s_v3", + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/master" + }, + "workerProfiles": [ + { + "name": "worker", + "vmSize": "Standard_D2s_v3", + "diskSizeGB": 128, + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/worker", + "count": 3 + } + ], + "apiserverProfile": { + "visibility": "Public", + "url": "https://api.cluster.location.aroapp.io:6443/", + "ip": "1.2.3.4" + }, + "ingressProfiles": [ + { + "name": "default", + "visibility": "Public", + "ip": "1.2.3.4" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.RedHatOpenShift/OpenShiftClusters/resourceName", + "name": "resourceName", + "type": "Microsoft.RedHatOpenShift/OpenShiftClusters", + "location": "location", + "tags": { + "key": "value" + }, + "properties": { + "provisioningState": "Succeeded", + "clusterProfile": { + "domain": "cluster.location.aroapp.io", + "version": "4.3.0", + "resourceGroupId": "/subscriptions/subscriptionId/resourceGroups/clusterResourceGroup" + }, + "consoleProfile": { + "url": "https://console-openshift-console.apps.cluster.location.aroapp.io/" + }, + "servicePrincipalProfile": { + "clientId": "clientId" + }, + "networkProfile": { + "podCidr": "10.128.0.0/14", + "serviceCidr": "172.30.0.0/16" + }, + "masterProfile": { + "vmSize": "Standard_D8s_v3", + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/master" + }, + "workerProfiles": [ + { + "name": "worker", + "vmSize": "Standard_D2s_v3", + "diskSizeGB": 128, + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/worker", + "count": 3 + } + ], + "apiserverProfile": { + "visibility": "Public", + "url": "https://api.cluster.location.aroapp.io:6443/", + "ip": "1.2.3.4" + }, + "ingressProfiles": [ + { + "name": "default", + "visibility": "Public", + "ip": "1.2.3.4" + } + ] + } + } + } + } +} diff --git a/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_Delete.json b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_Delete.json new file mode 100644 index 000000000000..d851985e9f44 --- /dev/null +++ b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2020-04-30", + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup", + "resourceName": "resourceName" + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_Get.json b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_Get.json new file mode 100644 index 000000000000..1f64ffeff9cd --- /dev/null +++ b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_Get.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2020-04-30", + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup", + "resourceName": "resourceName" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.RedHatOpenShift/OpenShiftClusters/resourceName", + "name": "resourceName", + "type": "Microsoft.RedHatOpenShift/OpenShiftClusters", + "location": "location", + "tags": { + "key": "value" + }, + "properties": { + "provisioningState": "Succeeded", + "clusterProfile": { + "domain": "cluster.location.aroapp.io", + "version": "4.3.0", + "resourceGroupId": "/subscriptions/subscriptionId/resourceGroups/clusterResourceGroup" + }, + "consoleProfile": { + "url": "https://console-openshift-console.apps.cluster.location.aroapp.io/" + }, + "servicePrincipalProfile": { + "clientId": "clientId" + }, + "networkProfile": { + "podCidr": "10.128.0.0/14", + "serviceCidr": "172.30.0.0/16" + }, + "masterProfile": { + "vmSize": "Standard_D8s_v3", + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/master" + }, + "workerProfiles": [ + { + "name": "worker", + "vmSize": "Standard_D2s_v3", + "diskSizeGB": 128, + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/worker", + "count": 3 + } + ], + "apiserverProfile": { + "visibility": "Public", + "url": "https://api.cluster.location.aroapp.io:6443/", + "ip": "1.2.3.4" + }, + "ingressProfiles": [ + { + "name": "default", + "visibility": "Public", + "ip": "1.2.3.4" + } + ] + } + } + } + } +} diff --git a/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_List.json b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_List.json new file mode 100644 index 000000000000..6691f0d3078a --- /dev/null +++ b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_List.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "api-version": "2020-04-30", + "subscriptionId": "subscriptionId" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.RedHatOpenShift/OpenShiftClusters/resourceName", + "name": "resourceName", + "type": "Microsoft.RedHatOpenShift/OpenShiftClusters", + "location": "location", + "tags": { + "key": "value" + }, + "properties": { + "provisioningState": "Succeeded", + "clusterProfile": { + "domain": "cluster.location.aroapp.io", + "version": "4.3.0", + "resourceGroupId": "/subscriptions/subscriptionId/resourceGroups/clusterResourceGroup" + }, + "consoleProfile": { + "url": "https://console-openshift-console.apps.cluster.location.aroapp.io/" + }, + "servicePrincipalProfile": { + "clientId": "clientId" + }, + "networkProfile": { + "podCidr": "10.128.0.0/14", + "serviceCidr": "172.30.0.0/16" + }, + "masterProfile": { + "vmSize": "Standard_D8s_v3", + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/master" + }, + "workerProfiles": [ + { + "name": "worker", + "vmSize": "Standard_D2s_v3", + "diskSizeGB": 128, + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/worker", + "count": 3 + } + ], + "apiserverProfile": { + "visibility": "Public", + "url": "https://api.cluster.location.aroapp.io:6443/", + "ip": "1.2.3.4" + }, + "ingressProfiles": [ + { + "name": "default", + "visibility": "Public", + "ip": "1.2.3.4" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_ListByResourceGroup.json b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_ListByResourceGroup.json new file mode 100644 index 000000000000..c7af8efe014e --- /dev/null +++ b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_ListByResourceGroup.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2020-04-30", + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.RedHatOpenShift/OpenShiftClusters/resourceName", + "name": "resourceName", + "type": "Microsoft.RedHatOpenShift/OpenShiftClusters", + "location": "location", + "tags": { + "key": "value" + }, + "properties": { + "provisioningState": "Succeeded", + "clusterProfile": { + "domain": "cluster.location.aroapp.io", + "version": "4.3.0", + "resourceGroupId": "/subscriptions/subscriptionId/resourceGroups/clusterResourceGroup" + }, + "consoleProfile": { + "url": "https://console-openshift-console.apps.cluster.location.aroapp.io/" + }, + "servicePrincipalProfile": { + "clientId": "clientId" + }, + "networkProfile": { + "podCidr": "10.128.0.0/14", + "serviceCidr": "172.30.0.0/16" + }, + "masterProfile": { + "vmSize": "Standard_D8s_v3", + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/master" + }, + "workerProfiles": [ + { + "name": "worker", + "vmSize": "Standard_D2s_v3", + "diskSizeGB": 128, + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/worker", + "count": 3 + } + ], + "apiserverProfile": { + "visibility": "Public", + "url": "https://api.cluster.location.aroapp.io:6443/", + "ip": "1.2.3.4" + }, + "ingressProfiles": [ + { + "name": "default", + "visibility": "Public", + "ip": "1.2.3.4" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_ListCredentials.json b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_ListCredentials.json new file mode 100644 index 000000000000..aa749c7a2e69 --- /dev/null +++ b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_ListCredentials.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "api-version": "2020-04-30", + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup", + "resourceName": "resourceName" + }, + "responses": { + "200": { + "body": { + "kubeadminUsername": "kubeadmin", + "kubeadminPassword": "password" + } + } + } +} diff --git a/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_Update.json b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_Update.json new file mode 100644 index 000000000000..74800c50c1af --- /dev/null +++ b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/OpenShiftClusters_Update.json @@ -0,0 +1,161 @@ +{ + "parameters": { + "api-version": "2020-04-30", + "subscriptionId": "subscriptionId", + "resourceGroupName": "resourceGroup", + "resourceName": "resourceName", + "parameters": { + "tags": { + "key": "value" + }, + "properties": { + "clusterProfile": { + "pullSecret": "{\"auths\":{\"registry.connect.redhat.com\":{\"auth\":\"\"},\"registry.redhat.io\":{\"auth\":\"\"}}}", + "domain": "cluster.location.aroapp.io", + "resourceGroupId": "/subscriptions/subscriptionId/resourceGroups/clusterResourceGroup" + }, + "consoleProfile": {}, + "servicePrincipalProfile": { + "clientId": "clientId", + "clientSecret": "clientSecret" + }, + "networkProfile": { + "podCidr": "10.128.0.0/14", + "serviceCidr": "172.30.0.0/16" + }, + "masterProfile": { + "vmSize": "Standard_D8s_v3", + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/master" + }, + "workerProfiles": [ + { + "name": "worker", + "vmSize": "Standard_D2s_v3", + "diskSizeGB": 128, + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/worker", + "count": 3 + } + ], + "apiserverProfile": { + "visibility": "Public" + }, + "ingressProfiles": [ + { + "name": "default", + "visibility": "Public" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.RedHatOpenShift/OpenShiftClusters/resourceName", + "name": "resourceName", + "type": "Microsoft.RedHatOpenShift/OpenShiftClusters", + "location": "location", + "tags": { + "key": "value" + }, + "properties": { + "provisioningState": "Succeeded", + "clusterProfile": { + "domain": "cluster.location.aroapp.io", + "version": "4.3.0", + "resourceGroupId": "/subscriptions/subscriptionId/resourceGroups/clusterResourceGroup" + }, + "consoleProfile": { + "url": "https://console-openshift-console.apps.cluster.location.aroapp.io/" + }, + "servicePrincipalProfile": { + "clientId": "clientId" + }, + "networkProfile": { + "podCidr": "10.128.0.0/14", + "serviceCidr": "172.30.0.0/16" + }, + "masterProfile": { + "vmSize": "Standard_D8s_v3", + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/master" + }, + "workerProfiles": [ + { + "name": "worker", + "vmSize": "Standard_D2s_v3", + "diskSizeGB": 128, + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/worker", + "count": 3 + } + ], + "apiserverProfile": { + "visibility": "Public", + "url": "https://api.cluster.location.aroapp.io:6443/", + "ip": "1.2.3.4" + }, + "ingressProfiles": [ + { + "name": "default", + "visibility": "Public", + "ip": "1.2.3.4" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subscriptionId/resourceGroups/resourceGroup/providers/Microsoft.RedHatOpenShift/OpenShiftClusters/resourceName", + "name": "resourceName", + "type": "Microsoft.RedHatOpenShift/OpenShiftClusters", + "location": "location", + "tags": { + "key": "value" + }, + "properties": { + "provisioningState": "Succeeded", + "clusterProfile": { + "domain": "cluster.location.aroapp.io", + "version": "4.3.0", + "resourceGroupId": "/subscriptions/subscriptionId/resourceGroups/clusterResourceGroup" + }, + "consoleProfile": { + "url": "https://console-openshift-console.apps.cluster.location.aroapp.io/" + }, + "servicePrincipalProfile": { + "clientId": "clientId" + }, + "networkProfile": { + "podCidr": "10.128.0.0/14", + "serviceCidr": "172.30.0.0/16" + }, + "masterProfile": { + "vmSize": "Standard_D8s_v3", + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/master" + }, + "workerProfiles": [ + { + "name": "worker", + "vmSize": "Standard_D2s_v3", + "diskSizeGB": 128, + "subnetId": "/subscriptions/subscriptionId/resourceGroups/vnetResourceGroup/providers/Microsoft.Network/virtualNetworks/vnet/subnets/worker", + "count": 3 + } + ], + "apiserverProfile": { + "visibility": "Public", + "url": "https://api.cluster.location.aroapp.io:6443/", + "ip": "1.2.3.4" + }, + "ingressProfiles": [ + { + "name": "default", + "visibility": "Public", + "ip": "1.2.3.4" + } + ] + } + } + } + } +} diff --git a/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/Operations_List.json b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/Operations_List.json new file mode 100644 index 000000000000..0683f851f7c1 --- /dev/null +++ b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/examples/Operations_List.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2020-04-30" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.RedHatOpenShift/openShiftClusters/read", + "display": { + "provider": "Azure Red Hat OpenShift", + "resource": "openShiftClusters", + "operation": "Read OpenShift cluster" + } + } + ] + } + } + } +} diff --git a/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/redhatopenshift.json b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/redhatopenshift.json new file mode 100644 index 000000000000..2baad1416737 --- /dev/null +++ b/specification/redhatopenshift/resource-manager/Microsoft.RedHatOpenShift/stable/2020-04-30/redhatopenshift.json @@ -0,0 +1,778 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Red Hat OpenShift Client", + "description": "Rest API for Azure Red Hat OpenShift", + "version": "2020-04-30" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/providers/Microsoft.RedHatOpenShift/operations": { + "get": { + "tags": [ + "Operations" + ], + "summary": "Lists all of the available RP operations.", + "description": "Lists all of the available RP operations. The operation returns the RP operations.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationList" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource doesn't exist, 404 (Not Found) is returned. If any of the input parameters is wrong, 400 (Bad Request) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Lists all of the available RP operations.": { + "$ref": "./examples/Operations_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.RedHatOpenShift/openShiftClusters": { + "get": { + "tags": [ + "OpenShiftClusters" + ], + "summary": "Lists OpenShift clusters in the specified subscription.", + "description": "Lists OpenShift clusters in the specified subscription. The operation returns properties of each OpenShift cluster.", + "operationId": "OpenShiftClusters_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OpenShiftClusterList" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource doesn't exist, 404 (Not Found) is returned. If any of the input parameters is wrong, 400 (Bad Request) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Lists OpenShift clusters in the specified subscription.": { + "$ref": "./examples/OpenShiftClusters_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RedHatOpenShift/openShiftClusters": { + "get": { + "tags": [ + "OpenShiftClusters" + ], + "summary": "Lists OpenShift clusters in the specified subscription and resource group.", + "description": "Lists OpenShift clusters in the specified subscription and resource group. The operation returns properties of each OpenShift cluster.", + "operationId": "OpenShiftClusters_ListByResourceGroup", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OpenShiftClusterList" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource doesn't exist, 404 (Not Found) is returned. If any of the input parameters is wrong, 400 (Bad Request) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Lists OpenShift clusters in the specified subscription and resource group.": { + "$ref": "./examples/OpenShiftClusters_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RedHatOpenShift/openShiftClusters/{resourceName}": { + "get": { + "tags": [ + "OpenShiftClusters" + ], + "summary": "Gets a OpenShift cluster with the specified subscription, resource group and resource name.", + "description": "Gets a OpenShift cluster with the specified subscription, resource group and resource name. The operation returns properties of a OpenShift cluster.", + "operationId": "OpenShiftClusters_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "resourceName", + "in": "path", + "description": "The name of the OpenShift cluster resource.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OpenShiftCluster" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource doesn't exist, 404 (Not Found) is returned. If any of the input parameters is wrong, 400 (Bad Request) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Gets a OpenShift cluster with the specified subscription, resource group and resource name.": { + "$ref": "./examples/OpenShiftClusters_Get.json" + } + } + }, + "put": { + "tags": [ + "OpenShiftClusters" + ], + "summary": "Creates or updates a OpenShift cluster with the specified subscription, resource group and resource name.", + "description": "Creates or updates a OpenShift cluster with the specified subscription, resource group and resource name. The operation returns properties of a OpenShift cluster.", + "operationId": "OpenShiftClusters_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "resourceName", + "in": "path", + "description": "The name of the OpenShift cluster resource.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The OpenShift cluster resource.", + "required": true, + "schema": { + "$ref": "#/definitions/OpenShiftCluster" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OpenShiftCluster" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/OpenShiftCluster" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource doesn't exist, 404 (Not Found) is returned. If any of the input parameters is wrong, 400 (Bad Request) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates or updates a OpenShift cluster with the specified subscription, resource group and resource name.": { + "$ref": "./examples/OpenShiftClusters_CreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "OpenShiftClusters" + ], + "summary": "Deletes a OpenShift cluster with the specified subscription, resource group and resource name.", + "description": "Deletes a OpenShift cluster with the specified subscription, resource group and resource name. The operation returns nothing.", + "operationId": "OpenShiftClusters_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "resourceName", + "in": "path", + "description": "The name of the OpenShift cluster resource.", + "required": true, + "type": "string" + } + ], + "responses": { + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed. If the resource doesn't exist, 404 (Not Found) is returned. If any of the input parameters is wrong, 400 (Bad Request) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deletes a OpenShift cluster with the specified subscription, resource group and resource name.": { + "$ref": "./examples/OpenShiftClusters_Delete.json" + } + } + }, + "patch": { + "tags": [ + "OpenShiftClusters" + ], + "summary": "Creates or updates a OpenShift cluster with the specified subscription, resource group and resource name.", + "description": "Creates or updates a OpenShift cluster with the specified subscription, resource group and resource name. The operation returns properties of a OpenShift cluster.", + "operationId": "OpenShiftClusters_Update", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "resourceName", + "in": "path", + "description": "The name of the OpenShift cluster resource.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "The OpenShift cluster resource.", + "required": true, + "schema": { + "$ref": "#/definitions/OpenShiftClusterUpdate" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OpenShiftCluster" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/OpenShiftCluster" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource doesn't exist, 404 (Not Found) is returned. If any of the input parameters is wrong, 400 (Bad Request) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates or updates a OpenShift cluster with the specified subscription, resource group and resource name.": { + "$ref": "./examples/OpenShiftClusters_Update.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RedHatOpenShift/openShiftClusters/{resourceName}/listCredentials": { + "post": { + "tags": [ + "OpenShiftClusters" + ], + "summary": "Lists credentials of an OpenShift cluster with the specified subscription, resource group and resource name.", + "description": "Lists credentials of an OpenShift cluster with the specified subscription, resource group and resource name. The operation returns the credentials.", + "operationId": "OpenShiftClusters_ListCredentials", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "resourceName", + "in": "path", + "description": "The name of the OpenShift cluster resource.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OpenShiftClusterCredentials" + } + }, + "default": { + "description": "Error response describing why the operation failed. If the resource doesn't exist, 404 (Not Found) is returned. If any of the input parameters is wrong, 400 (Bad Request) is returned.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-examples": { + "Lists credentials of an OpenShift cluster with the specified subscription, resource group and resource name.": { + "$ref": "./examples/OpenShiftClusters_ListCredentials.json" + } + } + } + } + }, + "definitions": { + "APIServerProfile": { + "description": "APIServerProfile represents an API server profile.", + "properties": { + "visibility": { + "$ref": "#/definitions/Visibility", + "description": "API server visibility (immutable)." + }, + "url": { + "description": "The URL to access the cluster API server (immutable).", + "type": "string" + }, + "ip": { + "description": "The IP of the cluster API server (immutable).", + "type": "string" + } + } + }, + "CloudError": { + "description": "CloudError represents a cloud error.", + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody", + "description": "An error response from the service." + } + } + }, + "CloudErrorBody": { + "description": "CloudErrorBody represents the body of a cloud error.", + "properties": { + "code": { + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically.", + "type": "string" + }, + "message": { + "description": "A message describing the error, intended to be suitable for display in a user interface.", + "type": "string" + }, + "target": { + "description": "The target of the particular error. For example, the name of the property in error.", + "type": "string" + }, + "details": { + "description": "A list of additional details about the error.", + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + } + } + } + }, + "ClusterProfile": { + "description": "ClusterProfile represents a cluster profile.", + "properties": { + "pullSecret": { + "description": "The pull secret for the cluster (immutable).", + "type": "string" + }, + "domain": { + "description": "The domain for the cluster (immutable).", + "type": "string" + }, + "version": { + "description": "The version of the cluster (immutable).", + "type": "string" + }, + "resourceGroupId": { + "description": "The ID of the cluster resource group (immutable).", + "type": "string" + } + } + }, + "ConsoleProfile": { + "description": "ConsoleProfile represents a console profile.", + "properties": { + "url": { + "description": "The URL to access the cluster console (immutable).", + "type": "string" + } + } + }, + "Display": { + "description": "Display represents the display details of an operation.", + "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": "Operation type: read, write, delete, listKeys/action, etc.", + "type": "string" + }, + "description": { + "description": "Friendly name of the operation.", + "type": "string" + } + } + }, + "IngressProfile": { + "description": "IngressProfile represents an ingress profile.", + "properties": { + "name": { + "description": "The ingress profile name. Must be \"default\" (immutable).", + "type": "string" + }, + "visibility": { + "$ref": "#/definitions/Visibility", + "description": "Ingress visibility (immutable)." + }, + "ip": { + "description": "The IP of the ingress (immutable).", + "type": "string" + } + } + }, + "MasterProfile": { + "description": "MasterProfile represents a master profile.", + "properties": { + "vmSize": { + "$ref": "#/definitions/VMSize", + "description": "The size of the master VMs (immutable)." + }, + "subnetId": { + "description": "The Azure resource ID of the master subnet (immutable).", + "type": "string" + } + } + }, + "NetworkProfile": { + "description": "NetworkProfile represents a network profile.", + "properties": { + "podCidr": { + "description": "The CIDR used for OpenShift/Kubernetes Pods (immutable).", + "type": "string" + }, + "serviceCidr": { + "description": "The CIDR used for OpenShift/Kubernetes Services (immutable).", + "type": "string" + } + } + }, + "OpenShiftCluster": { + "description": "OpenShiftCluster represents an Azure Red Hat OpenShift cluster.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/OpenShiftClusterProperties", + "description": "The cluster properties.", + "x-ms-client-flatten": true + } + } + }, + "OpenShiftClusterCredentials": { + "description": "OpenShiftClusterCredentials represents an OpenShift cluster's credentials", + "properties": { + "kubeadminUsername": { + "description": "The username for the kubeadmin user", + "type": "string" + }, + "kubeadminPassword": { + "description": "The password for the kubeadmin user", + "type": "string" + } + } + }, + "OpenShiftClusterList": { + "description": "OpenShiftClusterList represents a list of OpenShift clusters.", + "properties": { + "value": { + "description": "The list of OpenShift clusters.", + "type": "array", + "items": { + "$ref": "#/definitions/OpenShiftCluster" + } + }, + "nextLink": { + "description": "The link used to get the next page of operations.", + "type": "string" + } + } + }, + "OpenShiftClusterProperties": { + "description": "OpenShiftClusterProperties represents an OpenShift cluster's properties.", + "properties": { + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The cluster provisioning state (immutable)." + }, + "clusterProfile": { + "$ref": "#/definitions/ClusterProfile", + "description": "The cluster profile." + }, + "consoleProfile": { + "$ref": "#/definitions/ConsoleProfile", + "description": "The console profile." + }, + "servicePrincipalProfile": { + "$ref": "#/definitions/ServicePrincipalProfile", + "description": "The cluster service principal profile." + }, + "networkProfile": { + "$ref": "#/definitions/NetworkProfile", + "description": "The cluster network profile." + }, + "masterProfile": { + "$ref": "#/definitions/MasterProfile", + "description": "The cluster master profile." + }, + "workerProfiles": { + "description": "The cluster worker profiles.", + "type": "array", + "items": { + "$ref": "#/definitions/WorkerProfile" + } + }, + "apiserverProfile": { + "$ref": "#/definitions/APIServerProfile", + "description": "The cluster API server profile." + }, + "ingressProfiles": { + "description": "The cluster ingress profiles.", + "type": "array", + "items": { + "$ref": "#/definitions/IngressProfile" + } + } + } + }, + "OpenShiftClusterUpdate": { + "description": "OpenShiftCluster represents an Azure Red Hat OpenShift cluster.", + "properties": { + "tags": { + "$ref": "#/definitions/Tags", + "description": "The resource tags." + }, + "properties": { + "$ref": "#/definitions/OpenShiftClusterProperties", + "description": "The cluster properties.", + "x-ms-client-flatten": true + } + } + }, + "Operation": { + "description": "Operation represents an RP operation.", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}.", + "type": "string" + }, + "display": { + "$ref": "#/definitions/Display", + "description": "The object that describes the operation." + }, + "origin": { + "description": "Sources of requests to this operation. Comma separated list with valid values user or system, e.g. \"user,system\".", + "type": "string" + } + } + }, + "OperationList": { + "description": "OperationList represents an RP operation list.", + "properties": { + "value": { + "description": "List of operations supported by the resource provider.", + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + } + }, + "nextLink": { + "description": "The link used to get the next page of operations.", + "type": "string" + } + } + }, + "ProvisioningState": { + "description": "ProvisioningState represents a provisioning state.", + "enum": [ + "AdminUpdating", + "Creating", + "Deleting", + "Failed", + "Succeeded", + "Updating" + ], + "type": "string" + }, + "ServicePrincipalProfile": { + "description": "ServicePrincipalProfile represents a service principal profile.", + "properties": { + "clientId": { + "description": "The client ID used for the cluster (immutable).", + "type": "string" + }, + "clientSecret": { + "description": "The client secret used for the cluster (immutable).", + "type": "string" + } + } + }, + "Tags": { + "description": "Tags represents an OpenShift cluster's tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "VMSize": { + "description": "VMSize represents a VM size.", + "enum": [ + "Standard_D2s_v3", + "Standard_D4s_v3", + "Standard_D8s_v3" + ], + "type": "string" + }, + "Visibility": { + "description": "Visibility represents visibility.", + "enum": [ + "Private", + "Public" + ], + "type": "string" + }, + "WorkerProfile": { + "description": "WorkerProfile represents a worker profile.", + "properties": { + "name": { + "description": "The worker profile name. Must be \"worker\" (immutable).", + "type": "string" + }, + "vmSize": { + "$ref": "#/definitions/VMSize", + "description": "The size of the worker VMs (immutable)." + }, + "diskSizeGB": { + "description": "The disk size of the worker VMs. Must be 128 or greater (immutable).", + "type": "integer" + }, + "subnetId": { + "description": "The Azure resource ID of the worker subnet (immutable).", + "type": "string" + }, + "count": { + "description": "The number of worker VMs. Must be between 3 and 20 (immutable).", + "type": "integer" + } + } + } + }, + "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" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/redhatopenshift/resource-manager/readme.go.md b/specification/redhatopenshift/resource-manager/readme.go.md new file mode 100644 index 000000000000..a43d0fcd9c52 --- /dev/null +++ b/specification/redhatopenshift/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: redhatopenshift + clear-output-folder: true +``` + +### Go multi-api + +``` yaml $(go) && $(multiapi) +batch: + - tag: package-2020-04-30 +``` + +### Tag: package-2020-04-30 and go + +These settings apply only when `--tag=package-2020-04-30 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2020-04-30' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2020-04-30/$(namespace) +``` diff --git a/specification/redhatopenshift/resource-manager/readme.md b/specification/redhatopenshift/resource-manager/readme.md new file mode 100644 index 000000000000..d33bcd5b082c --- /dev/null +++ b/specification/redhatopenshift/resource-manager/readme.md @@ -0,0 +1,89 @@ +# Azure Red Hat OpenShift + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for Azure Red Hat OpenShift. + +--- + +## Getting Started + +To build the SDK for Azure Red Hat OpenShift, 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 the Azure Red Hat OpenShift API. + +``` yaml +openapi-type: arm +tag: package-2020-04-30 +``` + +### Tag: package-2020-04-30 + +These settings apply only when `--tag=package-2020-04-30` is specified on the command line. + +``` yaml $(tag) == 'package-2020-04-30' +input-file: + - Microsoft.RedHatOpenShift/stable/2020-04-30/redhatopenshift.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-python + after_scripts: + - python ./scripts/multiapi_init_gen.py azure-mgmt-redhatopenshift + - repo: azure-sdk-for-go +``` + +## Go + +See configuration in [readme.go.md](./readme.go.md) + +## Python + +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.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/redhatopenshift/resource-manager/readme.python.md b/specification/redhatopenshift/resource-manager/readme.python.md new file mode 100644 index 000000000000..6ec5494abba7 --- /dev/null +++ b/specification/redhatopenshift/resource-manager/readme.python.md @@ -0,0 +1,33 @@ +## Python + +These settings apply only when `--python` is specified on the command line. + +```yaml $(python) +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + package-name: azure-mgmt-redhatopenshift + clear-output-folder: true + no-namespace-folders: true +``` + +### Python multi-api + +Generate all API versions currently shipped for this package + +```yaml $(python) && $(multiapi) +batch: + - tag: package-2020-04-30 +``` + +### Tag: package-2020-04-30 and python + +These settings apply only when `--tag=package-2020-04-30 --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-2020-04-30' && $(python) +python: + namespace: azure.mgmt.redhatopenshift.v2020_04_30 + output-folder: $(python-sdks-folder)/redhatopenshift/azure-mgmt-redhatopenshift/azure/mgmt/redhatopenshift/v2020_04_30 +``` diff --git a/specification/relay/resource-manager/Microsoft.Relay/common/v1/definitions.json b/specification/relay/resource-manager/Microsoft.Relay/common/v1/definitions.json new file mode 100644 index 000000000000..15553a20ca6b --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/common/v1/definitions.json @@ -0,0 +1,127 @@ +{ + "swagger": "2.0", + "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" + } + } + }, + "info": { + "version": "2017-04-01", + "title": "Common types" + }, + "paths": {}, + "definitions": { + "TrackedResource": { + "properties": { + "location": { + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ], + "description": "Resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "required": [ + "location" + ], + "description": "Definition of resource." + }, + "Resource": { + "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." + } + }, + "description": "The resource definition.", + "x-ms-azure-resource": true + }, + "ErrorResponse": { + "description": "Error response indicates Relay service is not able to process the incoming request. The reason is provided in the error message.", + "type": "object", + "properties": { + "code": { + "description": "Error code.", + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method", + "description": "Name of the Resource group within the Azure subscription." + }, + "NamespaceNameParameter": { + "name": "namespaceName", + "in": "path", + "required": true, + "type": "string", + "minLength": 6, + "maxLength": 50, + "x-ms-parameter-location": "method", + "description": "The namespace name" + } + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/Namespaces-preview.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/Namespaces-preview.json new file mode 100644 index 000000000000..213ff50419f2 --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/Namespaces-preview.json @@ -0,0 +1,643 @@ +{ + "swagger": "2.0", + "info": { + "title": "Relay API", + "description": "Use these API to manage Azure Relay resources through Azure Resource Manager.", + "version": "2018-01-01-preview", + "x-ms-code-generation-settings": { + "name": "RelayManagementClient" + } + }, + "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": { + "/providers/Microsoft.Relay/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "x-ms-examples": { + "RelayOperationsList": { + "$ref": "./examples/RelayOperations_List.json" + } + }, + "description": "Lists all available Relay REST API operations.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Relay error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Relay/checkNameAvailability": { + "post": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_CheckNameAvailability", + "x-ms-examples": { + "RelayCheckNameAvailability": { + "$ref": "./examples/NameSpaces/RelayNameSpaceCheckNameAvailability.json" + } + }, + "description": "Check the specified namespace name availability.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailability" + }, + "description": "Parameters to check availability of the specified namespace name." + } + ], + "responses": { + "200": { + "description": "Check availability returned successfully.", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityResult" + } + }, + "default": { + "description": "Relay error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Relay/namespaces": { + "get": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_List", + "x-ms-examples": { + "RelayNameSpaceListBySubscription": { + "$ref": "./examples/NameSpaces/RelayNameSpaceListBySubscription.json" + } + }, + "description": "Lists all the available namespaces within the subscription regardless of the resourceGroups.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespaces returned successfully", + "schema": { + "$ref": "#/definitions/RelayNamespaceListResult" + } + }, + "default": { + "description": "Relay error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Relay/namespaces": { + "get": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_ListByResourceGroup", + "x-ms-examples": { + "RelayNameSpaceListByResourceGroup": { + "$ref": "./examples/NameSpaces/RelayNameSpaceListByResourceGroup.json" + } + }, + "description": "Lists all the available namespaces within the ResourceGroup.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespaces by resource group returned successfully", + "schema": { + "$ref": "#/definitions/RelayNamespaceListResult" + } + }, + "default": { + "description": "Relay error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Relay/namespaces/{namespaceName}": { + "put": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_CreateOrUpdate", + "x-ms-examples": { + "RelayNamespaceCreate": { + "$ref": "./examples/NameSpaces/RelayNameSpaceCreate.json" + } + }, + "description": "Create Azure Relay namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RelayNamespace" + }, + "description": "Parameters supplied to create a namespace resource." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace create request succeeded.", + "schema": { + "$ref": "#/definitions/RelayNamespace" + } + }, + "201": { + "description": "Namespace create request accepted.", + "schema": { + "$ref": "#/definitions/RelayNamespace" + } + }, + "default": { + "description": "Relay error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_Delete", + "x-ms-examples": { + "RelayNameSpaceDelete": { + "$ref": "./examples/NameSpaces/RelayNameSpaceDelete.json" + } + }, + "description": "Deletes an existing namespace. This operation also removes all associated resources under the namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace delete request succeeded." + }, + "202": { + "description": "Namespace delete request has been accepted for processing and the operation will complete asynchronously." + }, + "204": { + "description": "Namespace delete request has been accepted, but the namespace was not found." + }, + "default": { + "description": "Relay error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_Get", + "x-ms-examples": { + "RelayNameSpaceGet": { + "$ref": "./examples/NameSpaces/RelayNameSpaceGet.json" + } + }, + "description": "Returns the description for the specified namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace description returned successfully.", + "schema": { + "$ref": "#/definitions/RelayNamespace" + } + }, + "default": { + "description": "Relay error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + }, + "patch": { + "tags": [ + "Namespaces" + ], + "operationId": "Namespaces_Update", + "x-ms-examples": { + "RelayNameSpaceUpdate": { + "$ref": "./examples/NameSpaces/RelayNameSpaceUpdate.json" + } + }, + "description": "Creates or updates a namespace. Once created, this namespace's resource manifest is immutable. This operation is idempotent.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/RelayUpdateParameters" + }, + "description": "Parameters for updating a namespace resource." + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace successfully updated.", + "schema": { + "$ref": "#/definitions/RelayNamespace" + } + }, + "201": { + "description": "Namespace update request accepted.", + "schema": { + "$ref": "#/definitions/RelayNamespace" + } + }, + "default": { + "description": "Relay error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "ResourceNamespacePatch": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + } + }, + "allOf": [ + { + "$ref": "../../common/v1/definitions.json#/definitions/Resource" + } + ], + "description": "Definition of resource." + }, + "RelayNamespaceListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/RelayNamespace" + }, + "description": "Result of the list namespace operation." + }, + "nextLink": { + "type": "string", + "description": "Link to the next set of results. Not empty if value contains incomplete list of namespaces." + } + }, + "description": "The response from the list namespace operation." + }, + "RelayNamespace": { + "properties": { + "sku": { + "$ref": "#/definitions/Sku", + "description": "SKU of the namespace." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RelayNamespaceProperties", + "description": "Description of Relay namespace" + } + }, + "description": "Description of a namespace resource.", + "allOf": [ + { + "$ref": "../../common/v1/definitions.json#/definitions/TrackedResource" + } + ] + }, + "RelayNamespaceProperties": { + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "enum": [ + "Created", + "Succeeded", + "Deleted", + "Failed", + "Updating", + "Unknown" + ], + "x-ms-enum": { + "name": "provisioningStateEnum", + "modelAsString": false + } + }, + "createdAt": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The time the namespace was created." + }, + "updatedAt": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The time the namespace was updated." + }, + "serviceBusEndpoint": { + "type": "string", + "readOnly": true, + "description": "Endpoint you can use to perform Service Bus operations." + }, + "metricId": { + "type": "string", + "readOnly": true, + "description": "Identifier for Azure Insights metrics." + } + }, + "description": "Properties of the namespace." + }, + "RelayUpdateParameters": { + "properties": { + "sku": { + "$ref": "#/definitions/Sku", + "description": "SKU of the namespace." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RelayNamespaceProperties", + "description": "Description of Relay namespace." + } + }, + "description": "Description of a namespace resource.", + "allOf": [ + { + "$ref": "#/definitions/ResourceNamespacePatch" + } + ] + }, + "Sku": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of this SKU.", + "enum": [ + "Standard" + ], + "x-ms-enum": { + "name": "SkuName", + "modelAsString": true + } + }, + "tier": { + "type": "string", + "description": "The tier of this SKU.", + "enum": [ + "Standard" + ], + "x-ms-enum": { + "name": "SkuTier", + "modelAsString": true + } + } + }, + "description": "SKU of the namespace.", + "required": [ + "name" + ] + }, + "UnavailableReason": { + "type": "string", + "enum": [ + "None", + "InvalidName", + "SubscriptionIsDisabled", + "NameInUse", + "NameInLockdown", + "TooManyNamespaceInCurrentSubscription" + ], + "x-ms-enum": { + "name": "UnavailableReason", + "modelAsString": true + }, + "description": "Specifies the reason for the unavailability of the service." + }, + "CheckNameAvailability": { + "properties": { + "name": { + "type": "string", + "description": "The namespace name to check for availability. The namespace name can contain only letters, numbers, and hyphens. The namespace must start with a letter, and it must end with a letter or number." + } + }, + "required": [ + "name" + ], + "description": "Description of the check name availability request properties." + }, + "CheckNameAvailabilityResult": { + "properties": { + "message": { + "type": "string", + "readOnly": true, + "description": "The detailed info regarding the reason associated with the namespace." + }, + "nameAvailable": { + "type": "boolean", + "description": "Value indicating namespace is available. Returns true if the namespace is available; otherwise, false." + }, + "reason": { + "$ref": "#/definitions/UnavailableReason", + "description": "The reason for unavailability of a namespace." + } + }, + "description": "Description of the check name availability request properties." + }, + "OperationListResult": { + "description": "Result of the request to list Relay operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "description": "List of Relay operations supported by resource provider.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Operation" + } + }, + "nextLink": { + "description": "URL to get the next set of operation list results if there are any.", + "type": "string", + "readOnly": true + } + } + }, + "Operation": { + "description": "A Relay REST API operation.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string", + "readOnly": true + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "provider": { + "description": "Service provider: Relay.", + "type": "string", + "readOnly": true + }, + "resource": { + "description": "Resource on which the operation is performed: Invoice, etc.", + "type": "string", + "readOnly": true + }, + "operation": { + "description": "Operation type: Read, write, delete, etc.", + "type": "string", + "readOnly": true + } + } + } + } + } + }, + "parameters": {} +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/NetworkRuleSets-preview.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/NetworkRuleSets-preview.json new file mode 100644 index 000000000000..72704f717385 --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/NetworkRuleSets-preview.json @@ -0,0 +1,191 @@ +{ + "swagger": "2.0", + "info": { + "title": "Relay API", + "description": "Use these API to manage Azure Relay resources through Azure Resource Manager.", + "version": "2018-01-01-preview", + "x-ms-code-generation-settings": { + "name": "RelayManagementClient" + } + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/networkRuleSets/default": { + "put": { + "tags": [ + "Namespaces" + ], + "x-ms-examples": { + "NameSpaceNetworkRuleSetCreate": { + "$ref": "./examples/NameSpaces/VirtualNetworkRule/RelayNetworkRuleSetCreate.json" + } + }, + "operationId": "Namespaces_CreateOrUpdateNetworkRuleSet", + "description": "Create or update NetworkRuleSet for a Namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/NetworkRuleSet" + }, + "description": "The Namespace IpFilterRule." + } + ], + "responses": { + "200": { + "description": "Namespace NetworkRuleSet successfully returned.", + "schema": { + "$ref": "#/definitions/NetworkRuleSet" + } + }, + "default": { + "description": "ServiceBus error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + }, + "get": { + "tags": [ + "Namespaces" + ], + "x-ms-examples": { + "NameSpaceNetworkRuleSetGet": { + "$ref": "./examples/NameSpaces/VirtualNetworkRule/RelayNetworkRuleSetGet.json" + } + }, + "operationId": "Namespaces_GetNetworkRuleSet", + "description": "Gets NetworkRuleSet for a Namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Namespace NetworkRuleSet successfully returned.", + "schema": { + "$ref": "#/definitions/NetworkRuleSet" + } + }, + "default": { + "description": "ServiceBus error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "NWRuleSetIpRules": { + "x-ms-client-flatten": true, + "properties": { + "ipMask": { + "type": "string", + "description": "IP Mask" + }, + "action": { + "type": "string", + "description": "The IP Filter Action", + "enum": [ + "Allow" + ], + "x-ms-enum": { + "name": "NetworkRuleIPAction", + "modelAsString": true + } + } + }, + "description": "The response from the List namespace operation." + }, + "NetworkRuleSet": { + "properties": { + "properties": { + "description": "NetworkRuleSet properties", + "x-ms-client-flatten": true, + "properties": { + "defaultAction": { + "type": "string", + "description": "Default Action for Network Rule Set", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "DefaultAction", + "modelAsString": true + } + }, + "ipRules": { + "type": "array", + "items": { + "$ref": "#/definitions/NWRuleSetIpRules" + }, + "description": "List of IpRules" + } + } + } + }, + "allOf": [ + { + "$ref": "../../common/v1/definitions.json#/definitions/Resource" + } + ], + "description": "Description of topic resource." + } + }, + "parameters": {} +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/PrivateEndpointConnection-preview.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/PrivateEndpointConnection-preview.json new file mode 100644 index 000000000000..7d0090ec30fb --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/PrivateEndpointConnection-preview.json @@ -0,0 +1,432 @@ +{ + "swagger": "2.0", + "info": { + "title": "Relay API", + "description": "Use these API to manage Azure Relay resources through Azure Resource Manager.", + "version": "2018-01-01-preview", + "x-ms-code-generation-settings": { + "name": "RelayManagementClient" + } + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Relay/namespaces/{namespaceName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_ListByNamespace", + "x-ms-examples": { + "RelayPrivateEndpointConnections": { + "$ref": "./examples/PrivateEndpointConnections/PrivateEndpointConnectionsList.json" + } + }, + "description": "Lists all Private Endpoint Connections for the Relay namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Private Endpoint Connections for given namespace returned successfully", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "Relay error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Relay/namespaces/{namespaceName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Put", + "x-ms-examples": { + "RelayPutPrivateEndpointConnection": { + "$ref": "./examples/PrivateEndpointConnections/PrivateEndpointConnectionsCreate.json" + } + }, + "description": "Updates the specified private endpoint connection associated with the Relay namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "#/parameters/privateEndpointConnectionName" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The intended state of private endpoint connection." + } + ], + "responses": { + "200": { + "description": "The state of private endpoint connection was updated successfully.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "202": { + "description": "update request for state of private endpoint connection is accepted.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Relay error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Delete", + "x-ms-examples": { + "RelayDeletePrivateEndpointConnections": { + "$ref": "./examples/PrivateEndpointConnections/PrivateEndpointConnectionsDelete.json" + } + }, + "description": "Deletes the specified private endpoint connection associated with the relay namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "#/parameters/privateEndpointConnectionName" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "204": { + "description": "The private endpoint connection does not exist." + }, + "default": { + "description": "Relay error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Get", + "x-ms-examples": { + "RelayGetPrivateEndpointConnections": { + "$ref": "./examples/PrivateEndpointConnections/PrivateEndpointConnectionsGet.json" + } + }, + "description": "Gets the specified private endpoint connection associated with the Relay Namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "#/parameters/privateEndpointConnectionName" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Private endpoint connection successfully returned.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Relay error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Relay/namespaces/{namespaceName}/privateEndpointConnections/{privateEndpointConnectionName}/operationStatus/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "OperationStatus" + ], + "operationId": "OperationStatusPrivateEndpointConnections_Get", + "x-ms-examples": { + "RelayPrivateEndpointConnectionsoperationStatus": { + "$ref": "./examples/PrivateEndpointConnections/OperationStatusPrivateEndpointConnectionsGet.json" + } + }, + "description": "Gets the Operation status of private endpoint connection associated with Relay namespace.", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "#/parameters/privateEndpointConnectionName" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/OperationTypeParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Operation Status for Private endpoint connection successfully returned.", + "schema": { + "$ref": "#/definitions/OperationStatusItem" + } + }, + "default": { + "description": "Relay error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + } + } + } + }, + "definitions": { + "PrivateEndpointConnectionListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + }, + "description": "A list of private link resources" + }, + "PrivateEndpointConnectionItem": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "x-ms-client-flatten": true, + "description": "Private endpoint connection properties." + } + }, + "description": "Private endpoint connection item." + }, + "PrivateEndpointConnection": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "x-ms-client-flatten": true, + "description": "Resource properties." + } + }, + "allOf": [ + { + "$ref": "../../common/v1/definitions.json#/definitions/TrackedResource" + } + ], + "description": "Private endpoint connection resource.", + "x-ms-azure-resource": true + }, + "PrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "Properties of the private endpoint object." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "Approval state of the private link connection." + }, + "provisioningState": { + "$ref": "#/definitions/PrivateEndpointConnectionProvisioningState", + "description": "Provisioning state of the private endpoint connection." + } + }, + "description": "Properties of the private endpoint connection resource." + }, + "PrivateEndpoint": { + "properties": { + "id": { + "type": "string", + "description": "Full identifier of the private endpoint resource." + } + }, + "description": "Private endpoint object properties." + }, + "PrivateLinkServiceConnectionState": { + "properties": { + "status": { + "$ref": "#/definitions/PrivateEndpointServiceConnectionStatus", + "description": "Indicates whether the connection has been approved, rejected or removed by the Relay Namespace owner." + }, + "description": { + "type": "string", + "description": "The reason for approval or rejection." + }, + "actionRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + } + }, + "description": "An object that represents the approval state of the private link connection." + }, + "PrivateEndpointServiceConnectionStatus": { + "type": "string", + "description": "The private endpoint connection status.", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ], + "x-ms-enum": { + "name": "PrivateEndpointServiceConnectionStatus", + "modelAsString": true + } + }, + "PrivateEndpointConnectionProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Unknown", + "Succeeded", + "Creating", + "Updating", + "UpdatingByProxy", + "Deleting", + "DeletingByProxy" + ], + "x-ms-enum": { + "name": "PrivateEndpointConnectionProvisioningState", + "modelAsString": true + } + }, + "OperationStatusItem": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Full identifier of the private endpoint connection resource." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "name of the private endpoint connection resource." + }, + "status": { + "readOnly": true, + "type": "string", + "description": "Status of private endpoint connection operation." + } + }, + "description": "Operation Status object properties." + } + }, + "parameters": { + "privateEndpointConnectionName": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "minLength": 1, + "x-ms-parameter-location": "method", + "description": "The PrivateEndpointConnection name." + }, + "OperationTypeParameter": { + "name": "operationType", + "in": "query", + "required": true, + "type": "string", + "description": "Client API version." + } + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/PrivateLinkResources-preview.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/PrivateLinkResources-preview.json new file mode 100644 index 000000000000..1d5a2f0ce9e7 --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/PrivateLinkResources-preview.json @@ -0,0 +1,141 @@ +{ + "swagger": "2.0", + "info": { + "title": "Relay API", + "description": "Use these API to manage Azure Relay resources through Azure Resource Manager.", + "version": "2018-01-01-preview", + "x-ms-code-generation-settings": { + "name": "RelayManagementClient" + } + }, + "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}/resourceGroups/{resourceGroupName}/providers/Microsoft.Relay/namespaces/{namespaceName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "operationId": "PrivateLinkResourcesGet", + "x-ms-examples": { + "RelayPrivateLinkResourcesList": { + "$ref": "./examples/PrivateEndpointConnections/ListPrivateLinkResources.json" + } + }, + "description": "Gets the private link resources supported for the Relay namespace", + "parameters": [ + { + "$ref": "../../common/v1/definitions.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/NamespaceNameParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../common/v1/definitions.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + }, + "default": { + "description": "Relay error response describing why the operation failed.", + "schema": { + "$ref": "../../common/v1/definitions.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PrivateLinkResourceListResult": { + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "description": "A list of private link resources" + }, + "PrivateLinkResource": { + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../../common/v1/definitions.json#/definitions/Resource" + } + ], + "description": "A private link resource" + }, + "PrivateLinkResourceProperties": { + "properties": { + "groupId": { + "description": "Group identifier of private link resource.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "Required member names of private link resource.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Required DNS zone names of the the private link resource." + } + }, + "description": "Properties of a private link resource." + } + }, + "parameters": {} +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceCheckNameAvailability.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceCheckNameAvailability.json new file mode 100644 index 000000000000..ceb1912fe6be --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceCheckNameAvailability.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2017-04-01", + "subscriptionId": "e2f361f0-3b27-4503-a9cc-21cfba380093", + "parameters": { + "name": "sdk-Namespace1321" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true, + "reason": "None", + "message": "" + } + } + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceCreate.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceCreate.json new file mode 100644 index 000000000000..0c08edcc17dc --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceCreate.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "namespaceName": "sdk-Namespace-5849", + "resourceGroupName": "ArunMonocle", + "api-version": "2018-01-01-preview", + "subscriptionId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4", + "parameters": { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "location": "South Central US", + "tags": { + "tag1": "value1", + "tag2": "value2" + } + } + }, + "responses": { + "200": { + "body": { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/ArunMonocle/providers/Microsoft.Relay/namespaces/sdk-Namespace-5849", + "name": "sdk-Namespace-5849", + "type": "Microsoft.Relay/Namespaces", + "location": "South Central US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Created", + "metricId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4:sdk-namespace-5849", + "serviceBusEndpoint": "https://sdk-Namespace-5849.servicebus.windows-int.net:443/" + } + } + }, + "201": { + "body": { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/ArunMonocle/providers/Microsoft.Relay/namespaces/sdk-Namespace-5849", + "name": "sdk-Namespace-5849", + "type": "Microsoft.Relay/Namespaces", + "location": "South Central US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Created", + "metricId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4:sdk-namespace-5849", + "serviceBusEndpoint": "https://sdk-Namespace-5849.servicebus.windows-int.net:443/" + } + } + } + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceDelete.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceDelete.json new file mode 100644 index 000000000000..1b76118965d6 --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "namespaceName": "sdk-Namespace-5849", + "resourceGroupName": "SouthCentralUS", + "api-version": "2018-01-01-preview", + "subscriptionId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceGet.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceGet.json new file mode 100644 index 000000000000..d071b36ed19d --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceGet.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "namespaceName": "sdk-RelayNamespace-01", + "resourceGroupName": "RG-eg", + "api-version": "2018-01-01-preview", + "subscriptionId": "8c246e6a-cbc6-4a87-aff1-d6a886f376ef" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/8c246e6a-cbc6-4a87-aff1-d6a886f376ef/resourceGroups/RG-eg/providers/Microsoft.Relay/namespaces/sdk-RelayNamespace-01", + "name": "sdk-RelayNamespace-01", + "type": "Microsoft.Relay/Namespaces", + "location": "West US", + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "metricId": "8c246e6a-cbc6-4a87-aff1-d6a886f376ef:sdk-RelayNamespace-01", + "createdAt": "2017-01-23T20:38:12.46Z", + "serviceBusEndpoint": "https://sdk-RelayNamespace-01.servicebus.windows.net:443/", + "updatedAt": "2017-01-23T20:38:34.533Z" + } + } + } + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceListByResourceGroup.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceListByResourceGroup.json new file mode 100644 index 000000000000..d96fc39ccb25 --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceListByResourceGroup.json @@ -0,0 +1,242 @@ +{ + "parameters": { + "api-version": "2018-01-01-preview", + "subscriptionId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4", + "resourceGroupName": "ArunMonocle" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/ArunMonocle/providers/Microsoft.Relay/namespaces/sdk-Namespace-3054", + "name": "sdk-Namespace-3054", + "type": "Microsoft.Relay/Namespaces", + "location": "South Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "metricId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4:sdk-namespace-3054", + "serviceBusEndpoint": "https://sdk-Namespace-3054.servicebus.windows-int.net:443/" + } + }, + { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/ArunMonocle/providers/Microsoft.Relay/namespaces/oaisdjfoiasdjfoiajsdfoijasd", + "name": "oaisdjfoiasdjfoiajsdfoijasd", + "type": "Microsoft.Relay/Namespaces", + "location": "South Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "metricId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4:oaisdjfoiasdjfoiajsdfoijasd", + "serviceBusEndpoint": "https://oaisdjfoiasdjfoiajsdfoijasd.servicebus.windows-int.net:443/" + } + }, + { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/ArunMonocle/providers/Microsoft.Relay/namespaces/abc123", + "name": "abc123", + "type": "Microsoft.Relay/Namespaces", + "location": "South Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "metricId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4:abc123", + "serviceBusEndpoint": "https://abc123.servicebus.windows-int.net:443/" + } + }, + { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/ArunMonocle/providers/Microsoft.Relay/namespaces/sdk-Namespace-5849", + "name": "sdk-Namespace-5849", + "type": "Microsoft.Relay/Namespaces", + "location": "South Central US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "metricId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4:sdk-namespace-5849", + "serviceBusEndpoint": "https://sdk-Namespace-5849.servicebus.windows-int.net:443/" + } + }, + { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/ArunMonocle/providers/Microsoft.Relay/namespaces/sdk-Namespace-4984", + "name": "sdk-Namespace-4984", + "type": "Microsoft.Relay/Namespaces", + "location": "South Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "metricId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4:sdk-namespace-4984", + "serviceBusEndpoint": "https://sdk-Namespace-4984.servicebus.windows-int.net:443/" + } + }, + { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/ArunMonocle/providers/Microsoft.Relay/namespaces/sdk-Namespace-5606", + "name": "sdk-Namespace-5606", + "type": "Microsoft.Relay/Namespaces", + "location": "South Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "metricId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4:sdk-namespace-5606", + "serviceBusEndpoint": "https://sdk-Namespace-5606.servicebus.windows-int.net:443/" + } + }, + { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/ArunMonocle/providers/Microsoft.Relay/namespaces/sdk-Namespace-7703", + "name": "sdk-Namespace-7703", + "type": "Microsoft.Relay/Namespaces", + "location": "South Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "metricId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4:sdk-namespace-7703", + "serviceBusEndpoint": "https://sdk-Namespace-7703.servicebus.windows-int.net:443/" + } + }, + { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/ArunMonocle/providers/Microsoft.Relay/namespaces/zzzzzzzzzzzzzzzzzzzzzz-00001", + "name": "zzzzzzzzzzzzzzzzzzzzzz-00001", + "type": "Microsoft.Relay/Namespaces", + "location": "South Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "metricId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4:zzzzzzzzzzzzzzzzzzzzzz-00001", + "serviceBusEndpoint": "https://zzzzzzzzzzzzzzzzzzzzzz-00001.servicebus.windows-int.net:443/" + } + }, + { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/ArunMonocle/providers/Microsoft.Relay/namespaces/sdk-Namespace-3919", + "name": "sdk-Namespace-3919", + "type": "Microsoft.Relay/Namespaces", + "location": "South Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "metricId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4:sdk-namespace-3919", + "serviceBusEndpoint": "https://sdk-Namespace-3919.servicebus.windows-int.net:443/" + } + }, + { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/ArunMonocle/providers/Microsoft.Relay/namespaces/aiosdjfaoidjasdoijasdfoijasdfofijsdf", + "name": "aiosdjfaoidjasdoijasdfoijasdfofijsdf", + "type": "Microsoft.Relay/Namespaces", + "location": "South Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "metricId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4:aiosdjfaoidjasdoijasdfoijasdfofijsdf", + "serviceBusEndpoint": "https://aiosdjfaoidjasdoijasdfoijasdfofijsdf.servicebus.windows-int.net:443/" + } + }, + { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/ArunMonocle/providers/Microsoft.Relay/namespaces/sdk-Namespace-3413", + "name": "sdk-Namespace-3413", + "type": "Microsoft.Relay/Namespaces", + "location": "South Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "metricId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4:sdk-namespace-3413", + "serviceBusEndpoint": "https://sdk-Namespace-3413.servicebus.windows-int.net:443/" + } + }, + { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/ArunMonocle/providers/Microsoft.Relay/namespaces/sdk-Namespace-8695", + "name": "sdk-Namespace-8695", + "type": "Microsoft.Relay/Namespaces", + "location": "South Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "metricId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4:sdk-namespace-8695", + "serviceBusEndpoint": "https://sdk-Namespace-8695.servicebus.windows-int.net:443/" + } + }, + { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/ArunMonocle/providers/Microsoft.Relay/namespaces/sdk-Namespace-4801", + "name": "sdk-Namespace-4801", + "type": "Microsoft.Relay/Namespaces", + "location": "South Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "metricId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4:sdk-namespace-4801", + "serviceBusEndpoint": "https://sdk-Namespace-4801.servicebus.windows-int.net:443/" + } + }, + { + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "id": "/subscriptions/5f750a97-50d9-4e36-8081-c9ee4c0210d4/resourceGroups/ArunMonocle/providers/Microsoft.Relay/namespaces/sdk-Namespace-2812", + "name": "sdk-Namespace-2812", + "type": "Microsoft.Relay/Namespaces", + "location": "South Central US", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "metricId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4:sdk-namespace-2812", + "serviceBusEndpoint": "https://sdk-Namespace-2812.servicebus.windows-int.net:443/" + } + } + ] + } + } + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceListBySubscription.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceListBySubscription.json new file mode 100644 index 000000000000..322e170db494 --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceListBySubscription.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "api-version": "2017-04-01", + "subscriptionId": "8c246e6a-cbc6-4a87-aff1-d6a886f376ef" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/8c246e6a-cbc6-4a87-aff1-d6a886f376ef/resourceGroups/RG1-eg/providers/Microsoft.Relay/namespaces/sdk-RelayNamespace-01", + "name": "sdk-RelayNamespace-01", + "type": "Microsoft.Relay/Namespaces", + "location": "West US", + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "metricId": "8c246e6a-cbc6-4a87-aff1-d6a886f376ef:sdk-RelayNamespace-01", + "createdAt": "2017-01-23T20:34:49.4131724Z", + "serviceBusEndpoint": "https://sdk-RelayNamespace-01.servicebus.windows.net:443/", + "updatedAt": "2017-01-23T20:34:59.4131724Z" + } + }, + { + "id": "/subscriptions/8c246e6a-cbc6-4a87-aff1-d6a886f376ef/resourceGroups/RG1-eg/providers/Microsoft.Relay/namespaces/sdk-RelayNamespace-02", + "name": "sdk-RelayNamespace-02", + "type": "Microsoft.Relay/Namespaces", + "location": "West US", + "sku": { + "name": "Standard", + "tier": "Standard" + }, + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "metricId": "8c246e6a-cbc6-4a87-aff1-d6a886f376ef:sdk-RelayNamespace-02", + "createdAt": "2017-01-23T20:34:39.4131724Z", + "serviceBusEndpoint": "https://sdk-RelayNamespace-02.servicebus.windows.net:443/", + "updatedAt": "2017-01-23T20:34:49.4131724Z" + } + } + ] + } + } + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceUpdate.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceUpdate.json new file mode 100644 index 000000000000..d5cd25d599bc --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/RelayNameSpaceUpdate.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "namespaceName": "sdk-RelayNamespace-01", + "resourceGroupName": "RG-eg", + "api-version": "2017-04-01", + "subscriptionId": "8c246e6a-cbc6-4a87-aff1-d6a886f376ef", + "parameters": { + "tags": { + "tag3": "value3", + "tag4": "value4", + "tag5": "value5", + "tag6": "value6" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/8c246e6a-cbc6-4a87-aff1-d6a886f376ef/resourceGroups/RG-eg/providers/Microsoft.Relay/namespaces/sdk-RelayNamespace-01", + "name": "sdk-RelayNamespace-01", + "type": "Microsoft.Relay/Namespaces", + "location": "West US", + "tags": { + "tag3": "value3", + "tag4": "value4", + "tag5": "value5", + "tag6": "value6" + }, + "properties": { + "provisioningState": "Succeeded", + "metricId": "8c246e6a-cbc6-4a87-aff1-d6a886f376ef:sdk-relaynamespace-01" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/8c246e6a-cbc6-4a87-aff1-d6a886f376ef/resourceGroups/RG-eg/providers/Microsoft.Relay/namespaces/sdk-RelayNamespace-01", + "name": "sdk-RelayNamespace-01", + "type": "Microsoft.Relay/Namespaces", + "location": "West US", + "tags": { + "tag3": "value3", + "tag4": "value4", + "tag5": "value5", + "tag6": "value6" + }, + "properties": { + "provisioningState": "Succeeded", + "metricId": "8c246e6a-cbc6-4a87-aff1-d6a886f376ef:sdk-relaynamespace-01" + } + } + } + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/VirtualNetworkRule/RelayNetworkRuleSetCreate.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/VirtualNetworkRule/RelayNetworkRuleSetCreate.json new file mode 100644 index 000000000000..1b348a493bba --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/VirtualNetworkRule/RelayNetworkRuleSetCreate.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "namespaceName": "sdk-Namespace-6019", + "resourceGroupName": "ResourceGroup", + "api-version": "2018-01-01-preview", + "subscriptionId": "Subscription", + "parameters": { + "properties": { + "defaultAction": "Deny", + "ipRules": [ + { + "ipMask": "1.1.1.1", + "action": "Allow" + }, + { + "ipMask": "1.1.1.2", + "action": "Allow" + }, + { + "ipMask": "1.1.1.3", + "action": "Allow" + }, + { + "ipMask": "1.1.1.4", + "action": "Allow" + }, + { + "ipMask": "1.1.1.5", + "action": "Allow" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/854d368f-1828-428f-8f3c-f2affa9b2f7d/resourceGroups/resourcegroupid/providers/Microsoft.Relay/namespaces/sdk-Namespace-9659/networkruleset/default", + "name": "default", + "type": "Microsoft.Relay/Namespaces/NetworkRuleSet", + "properties": { + "defaultAction": "Deny", + "ipRules": [ + { + "ipMask": "1.1.1.1", + "action": "Allow" + }, + { + "ipMask": "1.1.1.2", + "action": "Allow" + }, + { + "ipMask": "1.1.1.3", + "action": "Allow" + }, + { + "ipMask": "1.1.1.4", + "action": "Allow" + }, + { + "ipMask": "1.1.1.5", + "action": "Allow" + } + ] + } + } + } + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/VirtualNetworkRule/RelayNetworkRuleSetGet.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/VirtualNetworkRule/RelayNetworkRuleSetGet.json new file mode 100644 index 000000000000..cfb06835e037 --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/NameSpaces/VirtualNetworkRule/RelayNetworkRuleSetGet.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "namespaceName": "sdk-Namespace-6019", + "resourceGroupName": "ResourceGroup", + "api-version": "2018-01-01-preview", + "subscriptionId": "Subscription" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subscriptionid/resourceGroups/resourcegroupid/providers/Microsoft.Relay/namespaces/sdk-Namespace-9659/networkruleset/default", + "name": "default", + "type": "Microsoft.Relay/Namespaces/NetworkRuleSet", + "properties": { + "defaultAction": "Deny", + "ipRules": [ + { + "ipMask": "1.1.1.1", + "action": "Allow" + }, + { + "ipMask": "1.1.1.2", + "action": "Allow" + }, + { + "ipMask": "1.1.1.3", + "action": "Allow" + }, + { + "ipMask": "1.1.1.4", + "action": "Allow" + }, + { + "ipMask": "1.1.1.5", + "action": "Allow" + } + ] + } + } + } + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/ListPrivateLinkResources.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/ListPrivateLinkResources.json new file mode 100644 index 000000000000..6bdc6a6a116b --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/ListPrivateLinkResources.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "namespaceName": "sdk-Namespace-5849", + "resourceGroupName": "ArunMonocle", + "api-version": "2018-01-01-preview", + "subscriptionId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "subscriptions/dbedb4e0-40e6-4145-81f3-f1314c150774/resourceGroups/alitest/providers/Microsoft.Relay/namespaces/relay-private-endpoint-test/privateLinkResources/namespace", + "name": "namespace", + "type": "Microsoft.Relay/namespaces/privateLinkResources", + "properties": { + "groupId": "namespace", + "requiredMembers": [ + "namespace" + ], + "requiredZoneNames": [ + "privatelink.servicebus.windows.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/OperationStatusPrivateEndpointConnectionsGet.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/OperationStatusPrivateEndpointConnectionsGet.json new file mode 100644 index 000000000000..87d368fbd43d --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/OperationStatusPrivateEndpointConnectionsGet.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "namespaceName": "sdk-Namespace-5849", + "resourceGroupName": "{RGName}", + "api-version": "2018-01-01-preview", + "operationType": "update", + "subscriptionId": "{subid}", + "privateEndpointConnectionName": "{privateEndpointConnection name}" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subid}/resourceGroups/alitest/providers/Microsoft.Relay/namespaces/relay-private-endpoint-test/privateEndpointConnections/{privateEndpointConnection name}/operationStatus/{privateEndpointConnection name}", + "name": "{privateEndpointConnection name}", + "status": "Succeeded" + } + } + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/PrivateEndpointConnectionsCreate.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/PrivateEndpointConnectionsCreate.json new file mode 100644 index 000000000000..aba1c63c5358 --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/PrivateEndpointConnectionsCreate.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "namespaceName": "sdk-Namespace-5849", + "resourceGroupName": "ArunMonocle", + "api-version": "2018-01-01-preview", + "subscriptionId": "5f750a97-50d9-4e36-8081-c9ee4c0210d4", + "privateEndpointConnectionName": "{privateEndpointConnection name}", + "parameters": { + "location": "South Central US", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/{subid}/resourceGroups/prod-by3-533-rg/providers/Microsoft.Network/privateEndpoints/ali-relay-pve-1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "You may pass" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subid}/resourceGroups/alitest/providers/Microsoft.Relay/namespaces/relay-private-endpoint-test/privateEndpointConnections/{privateEndpointConnection name}", + "name": "{privateEndpointConnection name}", + "type": "Microsoft.Relay/Namespaces/PrivateEndpointConnections", + "location": "South Central US", + "properties": { + "provisioningState": "Updating", + "privateEndpoint": { + "id": "/subscriptions/{subid}/resourceGroups/prod-by3-533-rg/providers/Microsoft.Network/privateEndpoints/ali-relay-pve-1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "You may pass" + } + } + } + }, + "202": { + "body": { + "id": "/subscriptions/{subid}/resourceGroups/alitest/providers/Microsoft.Relay/namespaces/relay-private-endpoint-test/privateEndpointConnections/{privateEndpointConnection name}", + "name": "{privateEndpointConnection name}", + "type": "Microsoft.Relay/Namespaces/PrivateEndpointConnections", + "location": "South Central US", + "properties": { + "provisioningState": "Updating", + "privateEndpoint": { + "id": "/subscriptions/{subid}/resourceGroups/prod-by3-533-rg/providers/Microsoft.Network/privateEndpoints/ali-relay-pve-1" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "You may pass" + } + } + } + } + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/PrivateEndpointConnectionsDelete.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/PrivateEndpointConnectionsDelete.json new file mode 100644 index 000000000000..a58190b04c68 --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/PrivateEndpointConnectionsDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "namespaceName": "sdk-Namespace-5849", + "resourceGroupName": "{RGName}", + "api-version": "2018-01-01-preview", + "subscriptionId": "{subid}", + "privateEndpointConnectionName": "{privateEndpointConnection name}" + }, + "responses": { + "204": {} + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/PrivateEndpointConnectionsGet.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/PrivateEndpointConnectionsGet.json new file mode 100644 index 000000000000..79d01b2dcc74 --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/PrivateEndpointConnectionsGet.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "namespaceName": "sdk-Namespace-5849", + "resourceGroupName": "{RGName}", + "api-version": "2018-01-01-preview", + "subscriptionId": "{subid}", + "privateEndpointConnectionName": "{privateEndpointConnection name}" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subid}/resourceGroups/{RGName}/providers/Microsoft.Relay/namespaces/relay-private-endpoint-test/privateEndpointConnections/{privateEndpointConnection name}", + "name": "{privateEndpointConnection name}", + "type": "Microsoft.Relay/Namespaces/PrivateEndpointConnections", + "location": "South Central US", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/326100e2-f69d-4268-8503-075374f62b6e/resourceGroups/prod-by3-533-rg/providers/Microsoft.Network/privateEndpoints/ali-relay-pve-1" + }, + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "approve please" + } + } + } + } + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/PrivateEndpointConnectionsList.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/PrivateEndpointConnectionsList.json new file mode 100644 index 000000000000..fffa73c9f4fe --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/PrivateEndpointConnections/PrivateEndpointConnectionsList.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "namespaceName": "sdk-Namespace-5849", + "resourceGroupName": "{RGName}", + "api-version": "2018-01-01-preview", + "subscriptionId": "{subid}" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subid}/resourceGroups/alitest/providers/Microsoft.Relay/namespaces/relay-private-endpoint-test/privateEndpointConnections/{privateEndpointConnection name}", + "name": "{privateEndpointConnection name}", + "type": "Microsoft.Relay/Namespaces/PrivateEndpointConnections", + "location": "South Central US", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/{subid}/resourceGroups/prod-by3-533-rg/providers/Microsoft.Network/privateEndpoints/ali-relay-pve-1" + }, + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "approve please" + } + } + } + ] + } + } + } +} diff --git a/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/RelayOperations_List.json b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/RelayOperations_List.json new file mode 100644 index 000000000000..343f26864584 --- /dev/null +++ b/specification/relay/resource-manager/Microsoft.Relay/preview/2018-01-01-preview/examples/RelayOperations_List.json @@ -0,0 +1,109 @@ +{ + "parameters": { + "api-version": "2018-01-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Relay/checkNameAvailability/action", + "display": { + "provider": "Microsoft Azure Relay", + "resource": "Non Resource Operation", + "operation": "Get namespace availability." + } + }, + { + "name": "Microsoft.Relay/register/action", + "display": { + "provider": "Microsoft Azure Relay", + "resource": "Relay Resource Provider", + "operation": "Registers the Relay Resource Provider" + } + }, + { + "name": "Microsoft.Relay/namespaces/write", + "display": { + "provider": "Microsoft Azure Relay", + "resource": "Namespace", + "operation": "Create Or Update Namespace " + } + }, + { + "name": "Microsoft.Relay/namespaces/read", + "display": { + "provider": "Microsoft Azure Relay", + "resource": "Namespace", + "operation": "Get Namespace Resource" + } + }, + { + "name": "Microsoft.Relay/namespaces/Delete", + "display": { + "provider": "Microsoft Azure Relay", + "resource": "Namespace", + "operation": "Delete Namespace" + } + }, + { + "name": "Microsoft.Relay/namespaces/Relays/write", + "display": { + "provider": "Microsoft Azure Relay", + "resource": "Relay", + "operation": "Create or Update Relay" + } + }, + { + "name": "Microsoft.Relay/namespaces/Relays/read", + "display": { + "provider": "Microsoft Azure Relay", + "resource": "Relay", + "operation": "Get Relay" + } + }, + { + "name": "Microsoft.Relay/namespaces/Relays/Delete", + "display": { + "provider": "Microsoft Azure Relay", + "resource": "Relay", + "operation": "Delete Relay" + } + }, + { + "name": "Microsoft.Relay/namespaces/metricDefinitions/read", + "display": { + "provider": "Microsoft Azure Relay", + "resource": "Namespace metrics", + "operation": "Get Namespace metrics" + } + }, + { + "name": "Microsoft.Relay/namespaces/diagnosticSettings/read", + "display": { + "provider": "Microsoft Azure Relay", + "resource": "Namespace diagnostic settings", + "operation": "Get Namespace diagnostic settings" + } + }, + { + "name": "Microsoft.Relay/namespaces/diagnosticSettings/write", + "display": { + "provider": "Microsoft Azure Relay", + "resource": "Namespace diagnostic settings", + "operation": "Create or Update Namespace diagnostic settings" + } + }, + { + "name": "Microsoft.Relay/namespaces/logDefinitions/read", + "display": { + "provider": "Microsoft Azure Relay", + "resource": "Namespace logs", + "operation": "Get Namespace logs" + } + } + ] + } + } + } +} diff --git a/specification/relay/resource-manager/readme.go.md b/specification/relay/resource-manager/readme.go.md index cb49f04963bb..1c46002f430e 100644 --- a/specification/relay/resource-manager/readme.go.md +++ b/specification/relay/resource-manager/readme.go.md @@ -17,6 +17,15 @@ batch: - tag: package-2016-07 ``` +### Tag: package-2018-01-preview and go + +These settings apply only when `--tag=2018-01-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == '2018-01-preview' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2018-01-preview/$(namespace) +``` + ### Tag: package-2017-04 and go These settings apply only when `--tag=package-2017-04 --go` is specified on the command line. diff --git a/specification/relay/resource-manager/readme.md b/specification/relay/resource-manager/readme.md index 0862529756bb..3099d74309cb 100644 --- a/specification/relay/resource-manager/readme.md +++ b/specification/relay/resource-manager/readme.md @@ -50,6 +50,19 @@ input-file: ``` +### Tag: package-2018-01-preview + +These settings apply only when `--tag=package-2018-01-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2018-01-preview' +input-file: +- Microsoft.Relay/preview/2018-01-01-preview/Namespaces-preview.json +- Microsoft.Relay/preview/2018-01-01-preview/NetworkRuleSets-preview.json +- Microsoft.Relay/preview/2018-01-01-preview/PrivateEndpointConnection-preview.json +- Microsoft.Relay/preview/2018-01-01-preview/PrivateLinkResources-preview.json +``` + + --- # Code Generation @@ -155,6 +168,10 @@ require: $(this-folder)/../../../profiles/readme.md 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 ``` diff --git a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getAutoQuotaIncreaseStatus.json b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getAutoQuotaIncreaseStatus.json new file mode 100644 index 000000000000..48acc0554f29 --- /dev/null +++ b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getAutoQuotaIncreaseStatus.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "D7EC67B3-7657-4966-BFFC-41EFD36BAAB3", + "api-version": "2019-07-19-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Capacity/autoQuotaIncrease", + "type": "Microsoft.Capacity/autoQuotaIncrease", + "name": "Automatic Quota Increase", + "properties": { + "settings": { + "autoQuotaIncreaseState": "enabled" + }, + "onSuccess": { + "emailActions": { + "value": [ + { + "emailAddress": "itsupport@contoso.com" + }, + { + "emailAddress": "admin2@contoso.com" + } + ] + } + }, + "onFailure": { + "emailActions": { + "value": [ + { + "emailAddress": "itsupport@contoso.com" + }, + { + "emailAddress": "admin2@contoso.com" + } + ] + } + }, + "supportTicketAction": { + "autoQuotaIncreaseState": "enabled", + "severity": "Minimal", + "firstName": "FN", + "lastName": "LN", + "country": "US", + "phoneNumber": "123-456-7890", + "supportLanguage": "en-US", + "primaryEmailAddress": "admin3@contoso.com", + "alternateEmailAddresses": [ + "admin@contoso.com", + "admin3@contoso.com" + ], + "preferredContactMethod": "Phone" + } + } + } + } + } +} diff --git a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getBatchAIUsages.json b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getBatchAIUsages.json new file mode 100644 index 000000000000..24d476be36d0 --- /dev/null +++ b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getBatchAIUsages.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "providerId": "Microsoft.BatchAI", + "location": "eastus", + "api-version": "2019-07-19-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "currentValue": 15, + "limit": 20, + "name": { + "localizedValue": "Clusters", + "value": "Clusters" + }, + "unit": "Count" + } + }, + { + "properties": { + "currentValue": 49, + "limit": 600, + "name": { + "localizedValue": "Total Cluster Dedicated Regional vCPUs", + "value": "Total Cluster Dedicated Regional vCPUs" + }, + "unit": "Count" + } + }, + { + "properties": { + "currentValue": 1, + "limit": 600, + "name": { + "localizedValue": "Standard D Family Cluster Dedicated vCPUs", + "value": "Standard D Family Cluster Dedicated vCPUs" + }, + "unit": "Count" + } + }, + { + "properties": { + "currentValue": 0, + "limit": 0, + "name": { + "localizedValue": "Standard ND Family Cluster Low Priority vCPUs", + "value": "Standard ND Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + } + }, + { + "properties": { + "currentValue": 0, + "limit": 150, + "name": { + "localizedValue": "Standard NV Family Cluster Low Priority vCPUs", + "value": "Standard NV Family Cluster LowPriority vCPUs" + }, + "unit": "Count" + } + } + ] + } + } + } +} diff --git a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getComputeOneSkuUsages.json b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getComputeOneSkuUsages.json new file mode 100644 index 000000000000..f5999b070097 --- /dev/null +++ b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getComputeOneSkuUsages.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "providerId": "Microsoft.Compute", + "location": "eastus", + "resourceName": "standardNDSFamily", + "api-version": "2019-07-19-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "limit": 10, + "unit": "Count", + "currentValue": 0, + "name": { + "value": "standardNDSFamily", + "localizedValue": "Standard NDS Family vCPUs" + } + } + } + } + } +} diff --git a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getComputeUsages.json b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getComputeUsages.json new file mode 100644 index 000000000000..e973260d3e20 --- /dev/null +++ b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getComputeUsages.json @@ -0,0 +1,138 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "providerId": "Microsoft.Compute", + "location": "eastus", + "api-version": "2019-07-19-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "limit": 100, + "unit": "Count", + "currentValue": 0, + "name": { + "value": "standardFSv2Family", + "localizedValue": "Standard FSv2 Family vCPUs" + } + } + }, + { + "properties": { + "limit": 0, + "unit": "Count", + "currentValue": 0, + "name": { + "value": "standardNDSFamily", + "localizedValue": "Standard NDS Family vCPUs" + } + } + }, + { + "properties": { + "limit": 0, + "unit": "Count", + "currentValue": 0, + "name": { + "value": "standardNCSv2Family", + "localizedValue": "Standard NCSv2 Family vCPUs" + } + } + }, + { + "properties": { + "limit": 0, + "unit": "Count", + "currentValue": 0, + "name": { + "value": "standardNCSv3Family", + "localizedValue": "Standard NCSv3 Family vCPUs" + } + } + }, + { + "properties": { + "limit": 100, + "unit": "Count", + "currentValue": 0, + "name": { + "value": "standardLSv2Family", + "localizedValue": "Standard LSv2 Family vCPUs" + } + } + }, + { + "properties": { + "limit": 6, + "unit": "Count", + "currentValue": 0, + "name": { + "value": "standardPBSFamily", + "localizedValue": "Standard PBS Family vCPUs" + } + } + }, + { + "properties": { + "limit": 100, + "unit": "Count", + "currentValue": 0, + "name": { + "value": "standardEIv3Family", + "localizedValue": "Standard EIv3 Family vCPUs" + } + } + }, + { + "properties": { + "limit": 100, + "unit": "Count", + "currentValue": 0, + "name": { + "value": "standardEISv3Family", + "localizedValue": "Standard EISv3 Family vCPUs" + } + } + }, + { + "properties": { + "limit": 8, + "unit": "Count", + "currentValue": 0, + "name": { + "value": "standardDCSFamily", + "localizedValue": "Standard DCS Family vCPUs" + } + } + }, + { + "properties": { + "limit": 0, + "unit": "Count", + "currentValue": 0, + "name": { + "value": "standardNVSv2Family", + "localizedValue": "Standard NVSv2 Family vCPUs" + } + } + }, + { + "properties": { + "limit": 0, + "unit": "Count", + "currentValue": 0, + "name": { + "value": "standardMSv2Family", + "localizedValue": "Standard MSv2 Family vCPUs" + } + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getMsSqlUsages.json b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getMsSqlUsages.json new file mode 100644 index 000000000000..74b82ac10c9c --- /dev/null +++ b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getMsSqlUsages.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "providerId": "Microsoft.Sql", + "location": "westus", + "api-version": "2019-07-19-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "currentValue": 1, + "limit": 20, + "name": { + "localizedValue": "Regional Server Quota for West US", + "value": "ServerQuota" + }, + "unit": "Count" + } + }, + { + "properties": { + "currentValue": 0, + "limit": 1, + "name": { + "localizedValue": "Free Database Count per Subscription for West US", + "value": "SubscriptionFreeDatabaseCount" + }, + "unit": "Count" + } + }, + { + "properties": { + "currentValue": 365, + "limit": 365, + "name": { + "localizedValue": "Free to Basic Database Upgrade count-down in West US", + "value": "SubscriptionFreeDatabaseDaysLeft" + }, + "unit": "Count" + } + } + ] + } + } + } +} diff --git a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getQuotaRequestStatusById.json b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getQuotaRequestStatusById.json new file mode 100644 index 000000000000..3d4ff3c2aaa6 --- /dev/null +++ b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getQuotaRequestStatusById.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "providerId": "Microsoft.Compute", + "location": "eastus", + "id": "2B5C8515-37D8-4B6A-879B-CD641A2CF605", + "api-version": "2019-07-19-preview" + }, + "responses": { + "200": { + "body": { + "id": "2B5C8515-37D8-4B6A-879B-CD641A2CF605", + "type": "Microsoft.Capacity/serviceLimitsRequests", + "name": "00000000-0000-0000-0000-000000000000/2B5C8515-37D8-4B6A-879B-CD641A2CF605", + "properties": { + "requestSubmitTime": "2019-08-19T19:23:17.904Z", + "message": "Request completed", + "provisioningState": "Succeeded", + "value": [ + { + "limit": 200, + "subRequestId": "AD07450A-DE86-4FD3-859B-107BEF218C4C", + "name": { + "value": "standardHCSFamily", + "localizedValue": "Standard HCS Family vCPUs" + }, + "message": "Request completed", + "provisioningState": "Succeeded" + }, + { + "limit": 50, + "name": { + "value": "standardNCPromoFamily", + "localizedValue": "Standard NC Promo Family vCPUs" + }, + "message": "Request completed", + "provisioningState": "Succeeded" + } + ] + } + } + } + } +} diff --git a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getQuotaRequestStatusFailed.json b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getQuotaRequestStatusFailed.json new file mode 100644 index 000000000000..bd23f32aba75 --- /dev/null +++ b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getQuotaRequestStatusFailed.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "providerId": "Microsoft.Compute", + "location": "eastus", + "id": "2B5C8515-37D8-4B6A-879B-CD641A2CF605", + "api-version": "2019-07-19-preview" + }, + "responses": { + "200": { + "body": { + "id": "2B5C8515-37D8-4B6A-879B-CD641A2CF605", + "type": "Microsoft.Capacity/serviceLimitsRequests", + "name": "00000000-0000-0000-0000-000000000000/2B5C8515-37D8-4B6A-879B-CD641A2CF605", + "properties": { + "requestSubmitTime": "2019-08-19T19:23:17.904Z", + "message": "Request failed, please contatct support.", + "provisioningState": "Failed", + "value": [ + { + "limit": 200, + "subRequestId": "AD07450A-DE86-4FD3-859B-107BEF218C4C", + "name": { + "value": "standardHCSFamily", + "localizedValue": "Standard HCS Family vCPUs" + }, + "message": "Request completed", + "provisioningState": "Succeeded" + }, + { + "limit": 50, + "subRequestId": "AD07450A-DE86-4FD3-859B-107BEF218C4C", + "name": { + "value": "standardNCPromoFamily", + "localizedValue": "Standard NC Promo Family vCPUs" + }, + "message": "RRequest failed, please contatct support.", + "provisioningState": "Failed" + } + ] + } + } + } + } +} diff --git a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getQuotaRequestStatusInProgress.json b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getQuotaRequestStatusInProgress.json new file mode 100644 index 000000000000..b876be1afb02 --- /dev/null +++ b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getQuotaRequestStatusInProgress.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "providerId": "Microsoft.Compute", + "location": "eastus", + "id": "2B5C8515-37D8-4B6A-879B-CD641A2CF605", + "api-version": "2019-07-19-preview" + }, + "responses": { + "200": { + "body": { + "id": "2B5C8515-37D8-4B6A-879B-CD641A2CF605", + "type": "Microsoft.Capacity/serviceLimitsRequests", + "name": "00000000-0000-0000-0000-000000000000/2B5C8515-37D8-4B6A-879B-CD641A2CF605", + "properties": { + "requestSubmitTime": "2019-08-19T19:23:17.904Z", + "message": "Request processing", + "provisioningState": "InProgress", + "value": [ + { + "limit": 200, + "subRequestId": "AD07450A-DE86-4FD3-859B-107BEF218C4C", + "name": { + "value": "standardHCSFamily", + "localizedValue": "Standard HCS Family vCPUs" + }, + "message": "Request completed", + "provisioningState": "Succeeded" + }, + { + "limit": 50, + "subRequestId": "AD07450A-DE86-4FD3-859B-107BEF218C4C", + "name": { + "value": "standardNCPromoFamily", + "localizedValue": "Standard NC Promo Family vCPUs" + }, + "message": "Request processing", + "provisioningState": "InProgress" + } + ] + } + } + } + } +} diff --git a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getQuotaRequestsHistory.json b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getQuotaRequestsHistory.json new file mode 100644 index 000000000000..b75b60f0d9b6 --- /dev/null +++ b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/getQuotaRequestsHistory.json @@ -0,0 +1,113 @@ +{ + "parameters": { + "subscriptionId": "3f75fdf7-977e-44ad-990d-99f14f0f299f", + "providerId": "Microsoft.Compute", + "location": "eastus", + "api-version": "2019-07-19-preview" + }, + "responses": { + "200": { + "body": { + "nextLink": "https://management.azure.com/subscriptions/3f75fdf7-977e-44ad-990d-99f14f0f299f/providers/microsoft.Capacity/resourceProviders/Microsoft.Compute/locations/eastus/serviceLimitsRequests?api-version=2019-07-19-preview&$top=3", + "value": [ + { + "id": "2B5C8515-37D8-4B6A-879B-CD641A2CF605", + "type": "Microsoft.Capacity/serviceLimitsRequests", + "name": "00000000-0000-0000-0000-000000000000/2B5C8515-37D8-4B6A-879B-CD641A2CF605", + "properties": { + "requestSubmitTime": "2019-08-19T19:23:17.904Z", + "message": "Request completed", + "provisioningState": "Success", + "value": [ + { + "limit": 200, + "subRequestId": "AD07450A-DE86-4FD3-859B-107BEF218C4C", + "name": { + "value": "standardHCSFamily", + "localizedValue": "Standard HCS Family vCPUs" + }, + "message": "Request completed", + "provisioningState": "Success" + }, + { + "limit": 50, + "subRequestId": "AD07450A-DE86-4FD3-859B-107BEF218C4C", + "name": { + "value": "standardNCPromoFamily", + "localizedValue": "Standard NC Promo Family vCPUs" + }, + "message": "Request completed", + "provisioningState": "Success" + } + ] + } + }, + { + "id": "7E73A85C-83BB-4DE4-903F-076F1A2B91D6", + "type": "Microsoft.Capacity/serviceLimitsRequests", + "name": "00000000-0000-0000-0000-000000000000/7E73A85C-83BB-4DE4-903F-076F1A2B91D6", + "properties": { + "requestSubmitTime": "2019-08-18T19:23:17.904Z", + "message": "Request completed", + "provisioningState": "Succeeded", + "value": [ + { + "limit": 100, + "subRequestId": "AD07450A-DE86-4FD3-859B-107BEF218C4C", + "name": { + "value": "standardNVSv3Family", + "localizedValue": "Standard NVSv3 Family vCPUs" + }, + "message": "Request completed", + "provisioningState": "Success" + }, + { + "limit": 150, + "subRequestId": "AD07450A-DE86-4FD3-859B-107BEF218C4C", + "name": { + "value": "standardNVPromoFamily", + "localizedValue": "Standard NV Promo Family vCPUs" + }, + "message": "Request completed", + "provisioningState": "Succeeded" + } + ] + } + }, + { + "id": "5E460077-AB53-4802-8997-A6940E0B7649", + "type": "Microsoft.Capacity/serviceLimitsRequests", + "name": "00000000-0000-0000-0000-000000000000/5E460077-AB53-4802-8997-A6940E0B7649", + "properties": { + "requestSubmitTime": "2019-08-17T19:23:17.904Z", + "message": "Request completed", + "provisioningState": "Succeeded", + "value": [ + { + "limit": 70, + "subRequestId": "AD07450A-DE86-4FD3-859B-107BEF218C4C", + "name": { + "value": "standardNCPromoFamily", + "localizedValue": "Standard NC Promo Family vCPUs" + }, + "message": "Request completed", + "provisioningState": "Succeeded" + }, + { + "limit": 52, + "subRequestId": "AD07450A-DE86-4FD3-859B-107BEF218C4C", + "name": { + "value": "standardHBSFamily", + "localizedValue": "Standard HBS Family vCPUs" + }, + "message": "Request completed", + "provisioningState": "Succeeded" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/patchComputeQuotaRequest.json b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/patchComputeQuotaRequest.json new file mode 100644 index 000000000000..aec6096cdbc1 --- /dev/null +++ b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/patchComputeQuotaRequest.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "D7EC67B3-7657-4966-BFFC-41EFD36BAAB3", + "providerId": "Microsoft.Compute", + "location": "eastus", + "resourceName": "standardFSv2Family", + "api-version": "2019-07-19-preview", + "If-Match": "F2E0FB94-7F6B-4852-8EE8-67A04BBA6520", + "createQuotaRequest": { + "properties": { + "limit": 200, + "unit": "Count", + "name": { + "value": "standardFSv2Family" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Capacity/resourceProviders/Microsoft.Compute/locations/eastus/serviceLimits/requests/2B5C8515-37D8-4B6A-879B-CD641A2CF605", + "name": "2B5C8515-37D8-4B6A-879B-CD641A2CF605", + "type": "Microsoft.Capacity/ServiceLimits", + "properties": { + "provisioningState": "InProgress", + "message": "" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Capacity/resourceProviders/Microsoft.Compute/locations/eastus/quotaRequests/2B5C8515-37D8-4B6A-879B-CD641A2CF605", + "name": "2B5C8515-37D8-4B6A-879B-CD641A2CF605", + "type": "Microsoft.Capacity/serviceLimits", + "properties": { + "provisioningState": "Succeeded", + "message": "", + "properties": { + "properties": { + "limit": 200, + "unit": "Count", + "currentValue": 160, + "name": { + "value": "standardFSv2Family", + "localizedValue": "Standard FSv2 Family vCPUs" + }, + "quotaPeriod": "", + "properties": {} + } + } + } + } + } + } +} diff --git a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/putAutoQuotaIncrease.json b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/putAutoQuotaIncrease.json new file mode 100644 index 000000000000..b5763ea27d25 --- /dev/null +++ b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/putAutoQuotaIncrease.json @@ -0,0 +1,105 @@ +{ + "parameters": { + "subscriptionId": "D7EC67B3-7657-4966-BFFC-41EFD36BAAB3", + "api-version": "2019-07-19-preview", + "autoQuotaIncreaseRequest": { + "properties": { + "settings": { + "autoQuotaIncreaseState": "enabled" + }, + "onSuccess": { + "emailActions": { + "value": [ + { + "emailAddress": "itsupport@contoso.com" + }, + { + "emailAddress": "admin3@contoso.com" + } + ] + } + }, + "onFailure": { + "emailActions": { + "value": [ + { + "emailAddress": "itsupport@contoso.com" + }, + { + "emailAddress": "admin2@contoso.com" + } + ] + } + }, + "supportTicketAction": { + "autoQuotaIncreaseState": "enabled", + "severity": "Minimal", + "firstName": "FN", + "lastName": "LN", + "country": "US", + "supportLanguage": "en-us", + "phoneNumber": "123-456-7890", + "primaryEmailAddress": "admin2@contoso.com", + "alternateEmailAddresses": [ + "admin@contoso.com", + "admin3@contoso.com" + ], + "preferredContactMethod": "Phone" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Capacity/autoQuotaIncrease", + "type": "Microsoft.Capacity/autoQuotaIncrease", + "name": "Automatic Quota Increase", + "properties": { + "settings": { + "autoQuotaIncreaseState": "enabled" + }, + "onSuccess": { + "emailActions": { + "value": [ + { + "emailAddress": "itsupport@contoso.com" + }, + { + "emailAddress": "admin2@contoso.com" + } + ] + } + }, + "onFailure": { + "emailActions": { + "value": [ + { + "emailAddress": "itsupport@contoso.com" + }, + { + "emailAddress": "admin2@contoso.com" + } + ] + } + }, + "supportTicketAction": { + "autoQuotaIncreaseState": "enabled", + "severity": "Minimal", + "firstName": "FN", + "lastName": "LN", + "country": "US", + "supportLanguage": "en-us", + "phoneNumber": "123-456-7890", + "primaryEmailAddress": "admin2@contoso.com", + "alternateEmailAddresses": [ + "admin@contoso.com", + "admin3@contoso.com" + ], + "preferredContactMethod": "Phone" + } + } + } + } + } +} diff --git a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/putAutoQuotaIncreaseTurnOff.json b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/putAutoQuotaIncreaseTurnOff.json new file mode 100644 index 000000000000..1f2b86e99176 --- /dev/null +++ b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/putAutoQuotaIncreaseTurnOff.json @@ -0,0 +1,105 @@ +{ + "parameters": { + "subscriptionId": "D7EC67B3-7657-4966-BFFC-41EFD36BAAB3", + "api-version": "2019-07-19-preview", + "autoQuotaIncreaseRequest": { + "properties": { + "settings": { + "autoQuotaIncreaseState": "disabled" + }, + "onSuccess": { + "emailActions": { + "value": [ + { + "emailAddress": "itsupport@contoso.com" + }, + { + "emailAddress": "admin2@contoso.com" + } + ] + } + }, + "onFailure": { + "emailActions": { + "value": [ + { + "emailAddress": "itsupport@contoso.com" + }, + { + "emailAddress": "admin2@contoso.com" + } + ] + } + }, + "supportTicketAction": { + "autoQuotaIncreaseState": "disabled", + "severity": "Minimal", + "firstName": "FN", + "lastName": "LN", + "country": "US", + "supportLanguage": "en-us", + "phoneNumber": "123-456-7890", + "primaryEmailAddress": "admin3@contoso.com", + "alternateEmailAddresses": [ + "admin@contoso.com", + "admin3@contoso.com" + ], + "preferredContactMethod": "Phone" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Capacity/autoQuotaIncrease", + "type": "Microsoft.Capacity/autoQuotaIncrease", + "name": "Automatic Quota Increase", + "properties": { + "settings": { + "autoQuotaIncreaseState": "disabled" + }, + "onSuccess": { + "emailActions": { + "value": [ + { + "emailAddress": "itsupport@contoso.com" + }, + { + "emailAddress": "admin2@contoso.com" + } + ] + } + }, + "onFailure": { + "emailActions": { + "value": [ + { + "emailAddress": "itsupport@contoso.com" + }, + { + "emailAddress": "admin2@contoso.com" + } + ] + } + }, + "supportTicketAction": { + "autoQuotaIncreaseState": "disabled", + "severity": "Minimal", + "firstName": "FN", + "lastName": "LN", + "country": "US", + "supportLanguage": "en-us", + "phoneNumber": "123-456-7890", + "primaryEmailAddress": "admin3@contoso.com", + "alternateEmailAddresses": [ + "admin@contoso.com", + "admin3@contoso.com" + ], + "preferredContactMethod": "Phone" + } + } + } + } + } +} diff --git a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/putComputeOneSkuQuotaRequest.json b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/putComputeOneSkuQuotaRequest.json new file mode 100644 index 000000000000..29dc58a1e447 --- /dev/null +++ b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/examples/putComputeOneSkuQuotaRequest.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "subscriptionId": "D7EC67B3-7657-4966-BFFC-41EFD36BAAB3", + "providerId": "Microsoft.Compute", + "location": "eastus", + "resourceName": "standardFSv2Family", + "api-version": "2019-07-19-preview", + "If-Match": "*", + "createQuotaRequest": { + "properties": { + "limit": 200, + "unit": "Count", + "name": { + "value": "standardFSv2Family" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Capacity/resourceProviders/Microsoft.Compute/locations/eastus/serviceLimits/requests/2B5C8515-37D8-4B6A-879B-CD641A2CF605", + "name": "2B5C8515-37D8-4B6A-879B-CD641A2CF605", + "type": "Microsoft.Capacity/ServiceLimits", + "properties": { + "provisioningState": "InProgress", + "message": "" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/D7EC67B3-7657-4966-BFFC-41EFD36BAAB3/providers/Microsoft.Capacity/resourceProviders/Microsoft.Compute/locations/eastus/quotaRequests/2B5C8515-37D8-4B6A-879B-CD641A2CF605", + "name": "2B5C8515-37D8-4B6A-879B-CD641A2CF605", + "type": "Microsoft.Capacity/serviceLimits", + "properties": { + "provisioningState": "Succeeded", + "message": "Request succeeded", + "properties": { + "properties": { + "limit": 200, + "unit": "Count", + "currentValue": 160, + "name": { + "value": "standardFSv2Family", + "localizedValue": "Standard FSv2 Family vCPUs" + }, + "quotaPeriod": "", + "properties": {} + } + } + } + } + } + } +} diff --git a/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/quota.json b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/quota.json new file mode 100644 index 000000000000..66dc47323378 --- /dev/null +++ b/specification/reservations/resource-manager/Microsoft.Capacity/preview/2019-07-19/quota.json @@ -0,0 +1,1217 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-07-19-preview", + "title": "Azure Reservation API", + "description": "Microsoft Azure Quota Resource Provider." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Capacity/resourceProviders/{providerId}/locations/{location}/serviceLimits/{resourceName}": { + "get": { + "tags": [ + "QuotaInformation" + ], + "summary": "Gets the current quota limit and usages for the resource provider for the specified location for the specific resource in the parameter.", + "description": "This API gets the current quota limit and usages for the specific resource for resource provider for the specified location. This response can be used to submit quotaRequests.", + "operationId": "Quota_listStatus", + "x-ms-examples": { + "Quotas_Request_ForCompute": { + "$ref": "./examples/getComputeOneSkuUsages.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdInParameters" + }, + { + "$ref": "#/parameters/ProviderIdInParameters" + }, + { + "$ref": "#/parameters/LocationIdInParameters" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ResourceNameInParameters" + } + ], + "responses": { + "200": { + "description": "OK. Quota information will be returned as response with pagination.", + "schema": { + "$ref": "#/definitions/CurrentQuotaLimitBase" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + } + }, + "put": { + "tags": [ + "QuotaRequests" + ], + "summary": "Submits a Quota Request for a resource provider at the specified location for the specific resource in the parameter.", + "description": "Submits Quota change request for a resource provider for the specified location for the specific resource in the parameter. To use, first make a Get request to get quota information for the specific resource. This information consists of information regarding that specific resources. For the specific resource, if it requires an update to the quota, update the limit field in the response from the Get request to the new value of quota. Then, submit this updated JSON object to this quota request API. This will update the quota to the value specified. The location header in the response will be used to track the status of the quota request. Please check the provisioningState field in the response.", + "operationId": "QuotaRequest_Create", + "x-ms-examples": { + "Quotas_Request_listForCompute": { + "$ref": "./examples/putComputeOneSkuQuotaRequest.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdInParameters" + }, + { + "$ref": "#/parameters/ProviderIdInParameters" + }, + { + "$ref": "#/parameters/LocationIdInParameters" + }, + { + "$ref": "#/parameters/ResourceNameInParameters" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "createQuotaRequest", + "in": "body", + "description": "Quota requests payload.", + "required": true, + "schema": { + "$ref": "#/definitions/CurrentQuotaLimitBase" + } + }, + { + "$ref": "#/parameters/IfMatchRequiredParameter" + } + ], + "responses": { + "200": { + "description": "OK. Returns Quota requests details.", + "schema": { + "$ref": "#/definitions/QuotaRequestOneResourceSubmitResponse" + } + }, + "201": { + "description": "The request is accepted and is being processed. Please use requestId to check the status.", + "schema": { + "$ref": "#/definitions/QuotaRequestSubmitResponse201" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + } + }, + "patch": { + "tags": [ + "QuotaRequests" + ], + "summary": "Submits a Quota Request for a resource provider at the specified location for the specific resource in the parameter.", + "description": "Submits Quota change request for a resource provider for the specified location for the specific resource in the parameter. To use, first make a Get request to get quota information for the specific resource. This information consists of information regarding that specific resources. For the specific resource, if it requires an update to the quota, update the limit field in the response from the Get request to the new value of quota. Then, submit this updated JSON object to this quota request API. This will update the quota to the value specified. The location header in the response will be used to track the status of the quota request. Please check the provisioningState field in the response.", + "operationId": "QuotaRequest_Update", + "x-ms-examples": { + "Quotas_Request_PatchForCompute": { + "$ref": "./examples/patchComputeQuotaRequest.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdInParameters" + }, + { + "$ref": "#/parameters/ProviderIdInParameters" + }, + { + "$ref": "#/parameters/LocationIdInParameters" + }, + { + "$ref": "#/parameters/ResourceNameInParameters" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "createQuotaRequest", + "in": "body", + "description": "Quota requests payload.", + "required": true, + "schema": { + "$ref": "#/definitions/CurrentQuotaLimitBase" + } + }, + { + "$ref": "#/parameters/IfMatchRequiredParameter" + } + ], + "responses": { + "200": { + "description": "OK. Returns Quota requests details.", + "schema": { + "$ref": "#/definitions/QuotaRequestOneResourceSubmitResponse" + } + }, + "201": { + "description": "The request is accepted and is being processed. Please use requestId to check the status.", + "schema": { + "$ref": "#/definitions/QuotaRequestSubmitResponse201" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Capacity/resourceProviders/{providerId}/locations/{location}/serviceLimits": { + "get": { + "tags": [ + "QuotaInformation" + ], + "summary": "Gets the current quota limit and usages for all the resources by the resource provider at the specified location.", + "description": "This API gets the current quota limits and usages for the resource provider for the specified location. This response can be used to submit quotaRequests.", + "operationId": "Quotas_listStatus", + "x-ms-examples": { + "Quotas_listUsagesForCompute": { + "$ref": "./examples/getComputeUsages.json" + }, + "Quotas_listUsagesForBatchAI": { + "$ref": "./examples/getBatchAIUsages.json" + }, + "Quotas_listUsagesForMsSql": { + "$ref": "./examples/getMsSqlUsages.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdInParameters" + }, + { + "$ref": "#/parameters/ProviderIdInParameters" + }, + { + "$ref": "#/parameters/LocationIdInParameters" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. Quota information will be returned as response with pagination.", + "schema": { + "$ref": "#/definitions/QuotaLimits" + }, + "headers": { + "ETag": { + "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Capacity/resourceProviders/{providerId}/locations/{location}/serviceLimitsRequests/{id}": { + "get": { + "tags": [ + "QuotaRequests" + ], + "x-ms-examples": { + "QuotaRequestStatus": { + "$ref": "./examples/getQuotaRequestStatusById.json" + }, + "QuotaRequestInProgress": { + "$ref": "./examples/getQuotaRequestStatusInProgress.json" + }, + "QuotaRequestFailed": { + "$ref": "./examples/getQuotaRequestStatusFailed.json" + } + }, + "summary": "Gets the Quota request status by requestId, for the specified resource provider at specified location.", + "description": "Gets the QuotaRequest details and status by the quota request Id for the resources for the resource provider at a specific location. The requestId is returned as response to the Put requests for serviceLimits.", + "operationId": "QuotaRequests_GetStatus", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdInParameters" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ProviderIdInParameters" + }, + { + "$ref": "#/parameters/LocationIdInParameters" + }, + { + "$ref": "#/parameters/RequestIdInParameters" + } + ], + "responses": { + "200": { + "description": "Ok. Returning the status for the quota request .", + "schema": { + "$ref": "#/definitions/QuotaRequestDetails" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Capacity/resourceProviders/{providerId}/locations/{location}/serviceLimitsRequests": { + "get": { + "tags": [ + "QuotaRequests" + ], + "x-ms-examples": { + "QuotaRequestHistory": { + "$ref": "./examples/getQuotaRequestsHistory.json" + } + }, + "summary": "For the specified location and resource Provider, gets the quota requests under the subscription over the time\n period of one year ago from now to one year back, based on the filter specified.", + "description": "For the specified location and Resource provider gets the current quota requests under the subscription over the time period of one year ago from now to one year back. oData filter can be used to select quota requests.", + "operationId": "QuotaRequests_ListStatus", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdInParameters" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ProviderIdInParameters" + }, + { + "$ref": "#/parameters/LocationIdInParameters" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "| Field | Supported operators \n|---------------------|------------------------\n\r\n|requestSubmitTime | ge, le, eq, gt, lt\n" + }, + { + "$ref": "#/parameters/TopQueryParameter" + }, + { + "$ref": "#/parameters/SkipTokenParameter" + } + ], + "responses": { + "200": { + "description": "Ok. Sending Quota request status and details", + "schema": { + "$ref": "#/definitions/QuotaRequestDetailsList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Capacity/autoQuotaIncrease": { + "get": { + "tags": [ + "AutoQuotaIncrease" + ], + "summary": "For the specified subscription, gets the Auto Quota Increase enrollment status.", + "description": "Gets the Auto Quota Increase enrollment details for the specified subscription.", + "operationId": "AutoQuotaIncrease_GetProperties", + "x-ms-examples": { + "GetAutoQuotaIncreaseSettings": { + "$ref": "./examples/getAutoQuotaIncreaseStatus.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdInParameters" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Ok. Returning the properties of auto quota increase .", + "schema": { + "$ref": "#/definitions/AutoQuotaIncreaseDetail" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + } + }, + "put": { + "tags": [ + "AutoQuotaIncrease" + ], + "summary": "For the specified subscription, sets the Auto Quota Increase enrollment properties.", + "description": "Sets the Auto Quota Increase enrollment properties for the specified subscription.", + "operationId": "AutoQuotaIncrease_Create", + "x-ms-examples": { + "SetAutoQuotaIncreaseSettings": { + "$ref": "./examples/putAutoQuotaIncrease.json" + }, + "TurnOffAutoQuotaIncrease": { + "$ref": "./examples/putAutoQuotaIncreaseTurnOff.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdInParameters" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "autoQuotaIncreaseRequest", + "in": "body", + "description": "Auto Quota increase request payload.", + "required": true, + "schema": { + "$ref": "#/definitions/AutoQuotaIncreaseDetail" + } + } + ], + "responses": { + "200": { + "description": "Ok. Returning the updated status of auto quota increase request.", + "schema": { + "$ref": "#/definitions/AutoQuotaIncreaseDetail" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + } + } + } + }, + "definitions": { + "CurrentQuotaLimit": { + "type": "object", + "description": "Quota limits.", + "x-ms-azure-resource": true, + "properties": { + "quotaInformation": { + "description": "Quota information detail.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CurrentQuotaLimitBase" + }, + "properties": { + "description": "Addition properties for the quota request status for the resource.", + "$ref": "#/definitions/QuotaRequestStatusDetails", + "x-ms-client-flatten": true + } + } + }, + "CurrentQuotaLimitBase": { + "type": "object", + "description": "Quota limits.", + "x-ms-azure-resource": true, + "properties": { + "properties": { + "description": "Quota properties for the resource.", + "$ref": "#/definitions/QuotaProperties" + } + } + }, + "QuotaProperties": { + "description": "Resource quota properties.", + "type": "object", + "properties": { + "limit": { + "description": "The quota limit.", + "type": "integer" + }, + "currentValue": { + "description": "The current resource usages information.", + "type": "integer", + "readOnly": true + }, + "unit": { + "description": " The units of the limit, such as - Count, Bytes, etc. Use the unit field provided in the Get quota response.", + "type": "string", + "readOnly": false + }, + "name": { + "description": "Name of the resource provide by the resource Provider. Please use this name property for quotaRequests.", + "$ref": "#/definitions/ResourceName" + }, + "resourceType": { + "description": "The Resource Type Name.", + "$ref": "#/definitions/ResourceTypesName", + "readOnly": false + }, + "quotaPeriod": { + "description": "The quota period over which the usage values are summarized, such as - P1D (Per one day), PT1M (Per one minute), PT1S (Per one second). This parameter is optional because, for some resources like compute, the period doesn’t matter.", + "type": "string", + "readOnly": true + }, + "properties": { + "description": "Additional properties for the specific resource provider.", + "type": "object" + } + } + }, + "ResourceName": { + "description": "Name of the resource provide by the resource Provider. Please use this name property for quotaRequests.", + "properties": { + "value": { + "description": "Resource name.", + "type": "string", + "readOnly": false + }, + "localizedValue": { + "description": "Resource display name.", + "type": "string", + "readOnly": true + } + } + }, + "QuotaLimits": { + "description": "Quota limits.", + "properties": { + "value": { + "description": "List of Quota limits.", + "type": "array", + "items": { + "$ref": "#/definitions/CurrentQuotaLimitBase" + } + }, + "nextLink": { + "description": "The uri to fetch the next page of quota limits. When there are no more pages, this is null.", + "type": "string" + } + } + }, + "QuotaLimitsResponse": { + "description": "Quota limits request response.", + "properties": { + "value": { + "description": "List of Quota limits with the quota request status.", + "type": "array", + "items": { + "$ref": "#/definitions/CurrentQuotaLimit" + } + }, + "nextLink": { + "description": "The uri to fetch the next page of quota limits. When there are no more pages, this is null.", + "type": "string" + } + } + }, + "CreateGenericQuotaRequestParameters": { + "type": "object", + "description": "Quota change requests information.", + "properties": { + "value": { + "description": "Quota change requests.", + "type": "array", + "items": { + "$ref": "#/definitions/CurrentQuotaLimitBase" + } + } + } + }, + "SubRequest": { + "type": "object", + "description": "The sub-request submitted with the quota request.", + "properties": { + "limit": { + "description": "The Resource limit.", + "type": "integer", + "readOnly": true + }, + "name": { + "description": "The Resource name.", + "$ref": "#/definitions/ResourceName" + }, + "resourceType": { + "description": "Resource type for which the quota check was made.", + "type": "string", + "readOnly": true + }, + "unit": { + "description": " The units of the limit, such as - Count, Bytes, etc. Use the unit field provided in the Get quota response.", + "type": "string" + }, + "provisioningState": { + "description": "The quota request status.", + "$ref": "#/definitions/QuotaRequestState" + }, + "message": { + "description": "User friendly status message.", + "type": "string", + "readOnly": true + }, + "subRequestId": { + "description": "Sub request id for individual request.", + "type": "string", + "readOnly": true + } + } + }, + "QuotaRequestOneResourceSubmitResponse": { + "description": "Quota submit request response", + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "id": { + "description": "The quota request Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the quota request.", + "type": "string", + "readOnly": true + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Type of resource. \"Microsoft.Capacity/ServiceLimits\"" + }, + "properties": { + "description": "The quota request details.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/quotaRequestOneResourceProperties" + } + } + }, + "QuotaRequestSubmitResponse": { + "description": "Quota submit request response", + "type": "object", + "x-ms-azure-resource": true, + "properties": { + "id": { + "description": "The quota request Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the quota request.", + "type": "string", + "readOnly": true + }, + "properties": { + "description": "The quota request details.", + "type": "object", + "$ref": "#/definitions/QuotaRequestProperties" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Type of resource. \"Microsoft.Capacity/serviceLimits\"" + } + } + }, + "QuotaRequestSubmitResponse201": { + "description": "The quota request submit response with request id.", + "type": "object", + "properties": { + "id": { + "description": "The quota request id. Please use the requestId to check the request status.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The operation Id", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The resource type", + "type": "string", + "readOnly": true + }, + "properties": { + "description": "The quota request status.", + "$ref": "#/definitions/QuotaRequestStatusDetails", + "x-ms-client-flatten": true + } + } + }, + "QuotaRequestStatusDetails": { + "description": "The quota request status details.", + "type": "object", + "properties": { + "provisioningState": { + "description": "The quota request status.", + "$ref": "#/definitions/QuotaRequestState", + "readOnly": true + }, + "message": { + "description": "A user friendly message.", + "type": "string", + "readOnly": true + } + } + }, + "QuotaRequestDetails": { + "type": "object", + "description": "The details of the quota Request.", + "x-ms-azure-resource": true, + "properties": { + "id": { + "description": "The quota request Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the quota request.", + "type": "string", + "readOnly": true + }, + "properties": { + "description": "The quota request details.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/QuotaRequestProperties" + }, + "type": { + "type": "string", + "readOnly": true, + "description": "Type of resource. \"Microsoft.Capacity/ServiceLimits\"" + } + } + }, + "QuotaRequestDetailsList": { + "description": "Quota requests information.", + "type": "object", + "properties": { + "value": { + "description": "The quota Requests.", + "type": "array", + "items": { + "$ref": "#/definitions/QuotaRequestDetails" + } + }, + "nextLink": { + "description": "The uri to fetch the next page of quota limits. When there are no more pages, this is null.", + "type": "string" + } + } + }, + "QuotaRequestProperties": { + "type": "object", + "description": "The details of quota request.", + "properties": { + "provisioningState": { + "description": "The quota request status.", + "$ref": "#/definitions/QuotaRequestState" + }, + "message": { + "description": "User friendly status message.", + "type": "string", + "readOnly": true + }, + "requestSubmitTime": { + "description": "The quota request submit time. The date conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard.", + "type": "string", + "readOnly": true, + "format": "date-time" + }, + "value": { + "description": "The quotaRequests.", + "type": "array", + "items": { + "$ref": "#/definitions/SubRequest" + } + } + } + }, + "quotaRequestOneResourceProperties": { + "type": "object", + "description": "The details of quota request.", + "properties": { + "provisioningState": { + "description": "The quota request status.", + "readOnly": true, + "$ref": "#/definitions/QuotaRequestState" + }, + "message": { + "description": "User friendly status message.", + "type": "string", + "readOnly": true + }, + "requestSubmitTime": { + "description": "The quota request submit time. The date conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard.", + "type": "string", + "readOnly": true, + "format": "date-time" + }, + "properties": { + "description": "The quota request addition properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CurrentQuotaLimitBase" + } + } + }, + "QuotaRequestState": { + "description": "The quota request status.", + "enum": [ + "Accepted", + "Invalid", + "Succeeded", + "Failed", + "InProgress" + ], + "x-ms-enum": { + "name": "QuotaRequestState", + "modelAsString": true + } + }, + "ResourceTypesName": { + "description": "The resource types.", + "enum": [ + "standard", + "dedicated", + "shared", + "serviceSpecific" + ], + "x-ms-enum": { + "name": "ResourceType", + "modelAsString": true + } + }, + "AutoQuotaIncreaseDetail": { + "type": "object", + "description": "Auto Quota Increase settings.", + "x-ms-azure-resource": true, + "properties": { + "id": { + "description": "The subscription Id.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the auto quota increase.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of the resource", + "type": "string", + "readOnly": true + }, + "properties": { + "description": "Actions for auto quota increase.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/autoQuotaIncreaseSettings" + } + } + }, + "autoQuotaIncreaseSettings": { + "type": "object", + "description": "Actions for auto quota increase.", + "properties": { + "settings": { + "description": "Settings for automatic quota increase.", + "$ref": "#/definitions/aqiSettings" + }, + "onFailure": { + "description": "The on failure Actions.", + "$ref": "#/definitions/OnFailure" + }, + "onSuccess": { + "description": "The on success Actions.", + "$ref": "#/definitions/OnSuccess" + }, + "supportTicketAction": { + "description": "The support ticket action.", + "$ref": "#/definitions/SupportRequestAction" + } + } + }, + "aqiSettings": { + "type": "object", + "description": "Settings for auto quota increase.", + "properties": { + "autoQuotaIncreaseState": { + "description": "If the subscription has enabled automatic quota increase.", + "$ref": "#/definitions/AqiState" + } + } + }, + "SupportContactTypes": { + "description": "The support contact types.", + "enum": [ + "email", + "phone", + "chat" + ], + "x-ms-enum": { + "name": "SupportContactType", + "modelAsString": true + } + }, + "EmailActions": { + "description": "The email actions.", + "properties": { + "value": { + "description": "The list of email actions based on the success or failure of automatic quota increase action.", + "type": "array", + "items": { + "description": "The email recipients for the specific action types.", + "$ref": "#/definitions/EmailAction" + } + } + } + }, + "SupportRequestAction": { + "description": "The SupportRequest action.", + "type": "object", + "properties": { + "autoQuotaIncreaseState": { + "description": "Is support request action enabled.", + "$ref": "#/definitions/AqiState" + }, + "severity": { + "description": "The support request severity.", + "$ref": "#/definitions/SeverityTypes" + }, + "firstName": { + "description": "The first name of the recipient.", + "type": "string" + }, + "lastName": { + "description": "The last name of the recipient.", + "type": "string" + }, + "country": { + "description": "The country of the recipient.", + "type": "string" + }, + "phoneNumber": { + "description": "The phone number of the recipient.", + "type": "string" + }, + "primaryEmailAddress": { + "description": "The primary email addresses of the recipients.", + "type": "string" + }, + "supportLanguage": { + "description": "The support language.", + "type": "string" + }, + "preferredContactMethod": { + "description": "The preferred communication channel.", + "$ref": "#/definitions/ContactMethod" + }, + "alternateEmailAddresses": { + "description": "The alternate email address of the recipient.", + "type": "array", + "items": { + "description": "The email recipients.", + "type": "string" + } + } + } + }, + "SeverityTypes": { + "description": "The Severity types.", + "enum": [ + "Critical", + "Moderate", + "Minimal" + ], + "x-ms-enum": { + "name": "SeverityType", + "modelAsString": true + } + }, + "ContactMethod": { + "description": "The contact method.", + "enum": [ + "Email", + "Phone" + ], + "x-ms-enum": { + "name": "ContactMethodType", + "modelAsString": true + } + }, + "AqiState": { + "description": "The Auto quota increase state.", + "enum": [ + "enabled", + "disabled" + ], + "x-ms-enum": { + "name": "AqiStateType", + "modelAsString": true + } + }, + "PhoneAction": { + "type": "object", + "description": "Phone Action.", + "properties": { + "phoneNumber": { + "description": "The phone number for the action.", + "type": "string" + }, + "preferredChannel": { + "description": "The preferred communication channel.", + "$ref": "#/definitions/ContactMethod" + } + } + }, + "EmailAction": { + "description": "Email Action.", + "properties": { + "emailAddress": { + "description": "The email address for the action.", + "type": "string" + } + } + }, + "OnFailure": { + "description": "The on failure action for auto quota increase.", + "$ref": "#/definitions/Actions" + }, + "OnSuccess": { + "description": "The on success action for auto quota increase.", + "$ref": "#/definitions/Actions" + }, + "Actions": { + "description": "The actions for auto quota increase.", + "type": "object", + "properties": { + "emailActions": { + "description": "The email actions for auto quota increase.", + "properties": { + "value": { + "description": "The list of email actions.", + "type": "array", + "items": { + "description": "The email recipients.", + "$ref": "#/definitions/EmailAction" + } + } + } + }, + "phoneActions": { + "description": "The phone actions for auto quota increase.", + "properties": { + "value": { + "description": "The list of phone actions.", + "type": "array", + "items": { + "description": "The email recipients.", + "$ref": "#/definitions/PhoneAction" + } + } + } + } + } + }, + "ExceptionResponse": { + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/ServiceError", + "description": "The api error details." + } + }, + "description": "The api error." + }, + "ServiceError": { + "description": "The api error details.", + "type": "object", + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "message": { + "type": "string", + "description": "The error message." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceErrorDetail" + }, + "description": "The list of error details.", + "readOnly": true + } + } + }, + "ServiceErrorDetail": { + "description": "The error details.", + "type": "object", + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The error code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The error message." + } + } + } + }, + "parameters": { + "SubscriptionIdInParameters": { + "name": "subscriptionId", + "x-ms-parameter-location": "method", + "in": "path", + "required": true, + "type": "string", + "description": "Azure subscription id." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Api version." + }, + "LocationIdInParameters": { + "name": "location", + "in": "path", + "required": true, + "type": "string", + "description": "Azure region.", + "x-ms-parameter-location": "method" + }, + "ProviderIdInParameters": { + "name": "providerId", + "in": "path", + "required": true, + "type": "string", + "description": "Azure resource Provider id.", + "x-ms-parameter-location": "method" + }, + "ResourceNameInParameters": { + "name": "resourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The Resource name for the specific resource provider, such as SKU name for Microsoft.Compute, pool for Microsoft.Batch.", + "x-ms-parameter-location": "method" + }, + "RequestIdInParameters": { + "name": "id", + "in": "path", + "required": true, + "type": "string", + "description": "Quota Request id.", + "x-ms-parameter-location": "method" + }, + "TopQueryParameter": { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "Number of records to return.", + "minimum": 1, + "x-ms-parameter-location": "method" + }, + "SkipTokenParameter": { + "name": "$skiptoken", + "in": "query", + "type": "string", + "required": false, + "description": "Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls", + "x-ms-parameter-location": "method" + }, + "IfMatchRequiredParameter": { + "name": "If-Match", + "in": "header", + "required": true, + "description": "ETag of the Entity. ETag should match the current entity state from the header response of the GET request or it should be * for unconditional update.", + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/reservations/resource-manager/readme.go.md b/specification/reservations/resource-manager/readme.go.md index 1880b4179645..57640bc8c536 100644 --- a/specification/reservations/resource-manager/readme.go.md +++ b/specification/reservations/resource-manager/readme.go.md @@ -13,11 +13,21 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-preview-2019-07-19 - tag: package-preview-2019-04 - tag: package-2018-06 - tag: package-2017-11 ``` +### Tag: package-preview-2019-07-19 and go + +These settings apply only when `--tag=package-preview-2019-07-19 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag)=='package-preview-2019-07-19' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2019-07-19-preview/$(namespace) +``` + ### Tag: package-preview-2019-04 and go These settings apply only when `--tag=package-preview-2019-04 --go` is specified on the command line. diff --git a/specification/reservations/resource-manager/readme.md b/specification/reservations/resource-manager/readme.md index ff4a19b2f969..ba15d9e95603 100644 --- a/specification/reservations/resource-manager/readme.md +++ b/specification/reservations/resource-manager/readme.md @@ -26,9 +26,18 @@ These are the global settings for the Reservations API. ``` yaml openapi-type: arm -tag: package-preview-2019-04 +tag: package-preview-2019-07-19 ``` +### Tag: package-preview-2019-07-19 + +These settings apply only when `--tag=package-preview-2019-07-19` is specified on the command line. + +```yaml $(tag) == 'package-preview-2019-07-19' +input-file: + - Microsoft.Capacity/preview/2019-07-19/quota.json + - Microsoft.Capacity/preview/2019-04-01/reservations.json +``` ### Tag: package-preview-2019-04 @@ -134,6 +143,7 @@ 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 diff --git a/specification/resources/resource-manager/Microsoft.Features/stable/2015-12-01/examples/unregisterFeature.json b/specification/resources/resource-manager/Microsoft.Features/stable/2015-12-01/examples/unregisterFeature.json new file mode 100644 index 000000000000..dc44a62c04ee --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Features/stable/2015-12-01/examples/unregisterFeature.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "resourceProviderNamespace": "Resource Provider Namespace", + "featureName": "feature", + "api-version": "2015-12-01", + "subscriptionId": "ff23096b-f5a2-46ea-bd62-59c3e93fef9a" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "name": "Feature1", + "properties": { + "state": "unregistered" + }, + "id": "/subscriptions/ff23096b-f5a2-46ea-bd62-59c3e93fef9a/providers/Microsoft.Features/providers/Microsoft.Test/features/Feature1", + "type": "Microsoft.Features/providers/features" + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Features/stable/2015-12-01/features.json b/specification/resources/resource-manager/Microsoft.Features/stable/2015-12-01/features.json index 8b9fbd36e54c..92d52d602189 100644 --- a/specification/resources/resource-manager/Microsoft.Features/stable/2015-12-01/features.json +++ b/specification/resources/resource-manager/Microsoft.Features/stable/2015-12-01/features.json @@ -226,6 +226,50 @@ } } } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Features/providers/{resourceProviderNamespace}/features/{featureName}/unregister": { + "post": { + "tags": [ + "Features" + ], + "operationId": "Features_Unregister", + "description": "Unregisters the preview feature for the subscription.", + "x-ms-examples": { + "Register feature": { + "$ref": "./examples/unregisterFeature.json" + } + }, + "parameters": [ + { + "name": "resourceProviderNamespace", + "in": "path", + "required": true, + "type": "string", + "description": "The namespace of the resource provider." + }, + { + "name": "featureName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the feature to unregister." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns metadata about the unregistered feature. The metadata includes the name of the feature, the registration state, the resource ID, and resource type.", + "schema": { + "$ref": "#/definitions/FeatureResult" + } + } + } + } } }, "definitions": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/deploymentScripts.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/deploymentScripts.json index 9bb4f1e52962..da6550c6d5ff 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/deploymentScripts.json +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/deploymentScripts.json @@ -40,6 +40,7 @@ "DeploymentScripts" ], "operationId": "DeploymentScripts_Create", + "x-ms-long-running-operation": true, "description": "Creates a deployment script.", "x-ms-examples": { "DeploymentScriptsCreate": { @@ -88,7 +89,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/DefaultErrorResponse" + "$ref": "#/definitions/DeploymentScriptsError" } } } @@ -98,7 +99,7 @@ "DeploymentScripts" ], "operationId": "DeploymentScripts_Update", - "description": "Updates a deployment script.", + "description": "Updates deployment script tags with specified values.", "x-ms-examples": { "DeploymentScriptsUpdate": { "$ref": "./examples/DeploymentScripts_Update.json" @@ -123,12 +124,12 @@ "schema": { "$ref": "#/definitions/DeploymentScriptUpdateParameter" }, - "description": "Updated deployment script supplied to the operation." + "description": "Deployment script resource with the tags to be updated." } ], "responses": { "200": { - "description": "OK -- Deployment script is updated.", + "description": "OK -- Deployment script tags are updated.", "schema": { "$ref": "#/definitions/DeploymentScript" } @@ -136,7 +137,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/DefaultErrorResponse" + "$ref": "#/definitions/DeploymentScriptsError" } } } @@ -176,7 +177,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/DefaultErrorResponse" + "$ref": "#/definitions/DeploymentScriptsError" } } } @@ -216,7 +217,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/DefaultErrorResponse" + "$ref": "#/definitions/DeploymentScriptsError" } } } @@ -252,7 +253,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/DefaultErrorResponse" + "$ref": "#/definitions/DeploymentScriptsError" } } }, @@ -297,7 +298,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/DefaultErrorResponse" + "$ref": "#/definitions/DeploymentScriptsError" } } } @@ -313,6 +314,9 @@ "x-ms-examples": { "DeploymentScriptsGetLogs": { "$ref": "./examples/DeploymentScripts_GetLogsDefault.json" + }, + "DeploymentScriptsGetLogsWithTail": { + "$ref": "./examples/DeploymentScripts_GetLogsDefaultWithTail.json" } }, "parameters": [ @@ -327,6 +331,12 @@ }, { "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "tail", + "in": "query", + "description": "The number of lines to show from the tail of the deployment script log. Valid value is a positive number up to 1000. If 'tail' is not provided, all available logs are shown up to container instance log capacity of 4mb.", + "type": "integer" } ], "responses": { @@ -339,7 +349,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/DefaultErrorResponse" + "$ref": "#/definitions/DeploymentScriptsError" } } } @@ -378,7 +388,7 @@ "default": { "description": "Error response describing why the operation failed.", "schema": { - "$ref": "#/definitions/DefaultErrorResponse" + "$ref": "#/definitions/DeploymentScriptsError" } } }, @@ -429,6 +439,11 @@ "name": "ScriptType", "modelAsString": true } + }, + "systemData": { + "readOnly": true, + "description": "The system metadata related to this resource.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData" } }, "allOf": [ @@ -594,6 +609,11 @@ "x-ms-external": true, "description": "Common properties for the deployment script.", "properties": { + "containerSettings": { + "type": "object", + "description": "Container settings.", + "$ref": "#/definitions/ContainerConfiguration" + }, "cleanupPreference": { "type": "string", "description": "The clean up preference when the script execution gets in a terminal state. Default setting is 'Always'.", @@ -641,6 +661,18 @@ } } }, + "ContainerConfiguration": { + "type": "object", + "description": "Settings to customize ACI container instance.", + "properties": { + "containerGroupName": { + "type": "string", + "description": "Container group name, if not specified then the name will get auto-generated. Not specifying a 'containerGroupName' indicates the system to generate a unique name which might end up flagging an Azure Policy as non-compliant. Use 'containerGroupName' when you have an Azure Policy that expects a specific naming convention or when you want to fully control the name. 'containerGroupName' property must be between 1 and 63 characters long, must contain only lowercase letters, numbers, and dashes and it cannot start or end with a dash and consecutive dashes are not allowed. To specify a 'containerGroupName', add the following object to properties: { \"containerSettings\": { \"containerGroupName\": \"contoso-container\" } }. If you do not want to specify a 'containerGroupName' then do not add 'containerSettings' property.", + "minLength": 1, + "maxLength": 63 + } + } + }, "ScriptStatus": { "type": "object", "description": "Generic object modeling results of script execution.", @@ -675,7 +707,7 @@ }, "error": { "description": "Error that is relayed from the script execution.", - "$ref": "#/definitions/DefaultErrorResponse" + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" } } }, @@ -816,30 +848,13 @@ } } }, - "DefaultErrorResponse": { - "description": "The details of the error.", - "type": "object", + "DeploymentScriptsError": { "properties": { - "code": { - "description": "One of a server-defined set of error codes.", - "type": "string" - }, - "message": { - "description": "A human-readable representation of the error.", - "type": "string" - }, - "target": { - "description": "The target of the particular error.", - "type": "string" - }, - "details": { - "description": "Detailed errors.", - "type": "array", - "items": { - "$ref": "#/definitions/DefaultErrorResponse" - } + "error": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" } - } + }, + "description": "Deployment scripts error response." } }, "parameters": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Create.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Create.json index 2d4156d8e6df..b1d63f125fed 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Create.json +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Create.json @@ -38,6 +38,14 @@ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/uai": {} } }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + }, "properties": { "provisioningState": "Creating", "azPowerShellVersion": "1.7.0", diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Get.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Get.json index ee19875a981b..1e8d0566fdbc 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Get.json +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Get.json @@ -16,6 +16,14 @@ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/uai": {} } }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + }, "properties": { "provisioningState": "Succeeded", "azPowerShellVersion": "1.7.0", diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_GetLogsDefaultWithTail.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_GetLogsDefaultWithTail.json new file mode 100644 index 000000000000..e673c018b081 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_GetLogsDefaultWithTail.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2019-10-01-preview", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "script-rg", + "scriptName": "MyDeploymentScript", + "tail": 5 + }, + "responses": { + "200": { + "body": { + "properties": { + "log": "script execution stdout/stderr logs" + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_ListByResourceGroup.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_ListByResourceGroup.json index 983b4c2c9cc8..e73c4a21c9d0 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_ListByResourceGroup.json +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_ListByResourceGroup.json @@ -18,6 +18,14 @@ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/uai": {} } }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + }, "properties": { "provisioningState": "Succeeded", "azPowerShellVersion": "1.7.0", diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_ListBySubscription.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_ListBySubscription.json index 199c1ed77b31..e205c3b34347 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_ListBySubscription.json +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_ListBySubscription.json @@ -16,6 +16,14 @@ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/uai": {} } }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + }, "properties": { "provisioningState": "Succeeded", "azPowerShellVersion": "1.7.0", diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Min_Create.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Min_Create.json index b411784c4591..15100be96f75 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Min_Create.json +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Min_Create.json @@ -32,6 +32,14 @@ "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/scriptRG/providers/Microsoft.ManagedIdentity/userAssignedIdentities/uai": {} } }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + }, "properties": { "provisioningState": "Creating", "azPowerShellVersion": "1.7.0", diff --git a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Update.json b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Update.json index c365156e2a9d..f42821d1f4c2 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Update.json +++ b/specification/resources/resource-manager/Microsoft.Resources/preview/2019-10-01-preview/examples/DeploymentScripts_Update.json @@ -34,6 +34,14 @@ "output1": "value1" } }, + "systemData": { + "createdBy": "string", + "createdByType": "Application", + "createdAt": "2020-02-01T01:01:01.1075056Z", + "lastModifiedBy": "string", + "lastModifiedByType": "Application", + "lastModifiedAt": "2020-02-01T01:01:01.1075056Z" + }, "kind": "AzurePowerShell", "location": "westus", "identity": { diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2015-11-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2015-11-01/resources.json index 7a174f2b2eaf..aa2d78668241 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2015-11-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2015-11-01/resources.json @@ -519,6 +519,13 @@ "type": "string", "description": "The filter to apply on the operation." }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." + }, { "name": "$top", "in": "query", @@ -844,6 +851,13 @@ "type": "string", "description": "The filter to apply on the operation." }, + { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." + }, { "name": "$top", "in": "query", @@ -2594,6 +2608,33 @@ ], "description": "Resource information." }, + "GenericResourceExpanded": { + "properties": { + "createdTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The created time of the resource. This is only present if requested via the $expand query parameter." + }, + "changedTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The changed time of the resource. This is only present if requested via the $expand query parameter." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the resource. This is only present if requested via the $expand query parameter." + } + }, + "allOf": [ + { + "$ref": "#/definitions/GenericResource" + } + ], + "description": "Resource information." + }, "Plan": { "properties": { "name": { @@ -2620,7 +2661,7 @@ "value": { "type": "array", "items": { - "$ref": "#/definitions/GenericResource" + "$ref": "#/definitions/GenericResourceExpanded" }, "description": "Gets or sets the list of resource groups." }, diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-02-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-02-01/resources.json index b7d746dd305e..82416c7d820d 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-02-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-02-01/resources.json @@ -580,7 +580,7 @@ "in": "query", "required": false, "type": "string", - "description": "The $expand query parameter" + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -956,7 +956,7 @@ "in": "query", "required": false, "type": "string", - "description": "The $expand query parameter." + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -2149,6 +2149,33 @@ ], "description": "Resource information." }, + "GenericResourceExpanded": { + "properties": { + "createdTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The created time of the resource. This is only present if requested via the $expand query parameter." + }, + "changedTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The changed time of the resource. This is only present if requested via the $expand query parameter." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the resource. This is only present if requested via the $expand query parameter." + } + }, + "allOf": [ + { + "$ref": "#/definitions/GenericResource" + } + ], + "description": "Resource information." + }, "Plan": { "properties": { "name": { @@ -2231,7 +2258,7 @@ "value": { "type": "array", "items": { - "$ref": "#/definitions/GenericResource" + "$ref": "#/definitions/GenericResourceExpanded" }, "description": "The list of resources." }, diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-07-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-07-01/resources.json index 2bd3e7280137..ba75570f5d41 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-07-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-07-01/resources.json @@ -580,7 +580,7 @@ "in": "query", "required": false, "type": "string", - "description": "The $expand query parameter" + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -956,7 +956,7 @@ "in": "query", "required": false, "type": "string", - "description": "The $expand query parameter." + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -2157,6 +2157,33 @@ ], "description": "Resource information." }, + "GenericResourceExpanded": { + "properties": { + "createdTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The created time of the resource. This is only present if requested via the $expand query parameter." + }, + "changedTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The changed time of the resource. This is only present if requested via the $expand query parameter." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the resource. This is only present if requested via the $expand query parameter." + } + }, + "allOf": [ + { + "$ref": "#/definitions/GenericResource" + } + ], + "description": "Resource information." + }, "Plan": { "properties": { "name": { @@ -2239,7 +2266,7 @@ "value": { "type": "array", "items": { - "$ref": "#/definitions/GenericResource" + "$ref": "#/definitions/GenericResourceExpanded" }, "description": "The list of resources." }, diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-09-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-09-01/resources.json index 695fe3a24c45..ac7164349bc7 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2016-09-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2016-09-01/resources.json @@ -605,7 +605,7 @@ "in": "query", "required": false, "type": "string", - "description": "The $expand query parameter" + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -984,7 +984,7 @@ "in": "query", "required": false, "type": "string", - "description": "The $expand query parameter." + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -2407,6 +2407,33 @@ ], "description": "Resource information." }, + "GenericResourceExpanded": { + "properties": { + "createdTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The created time of the resource. This is only present if requested via the $expand query parameter." + }, + "changedTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The changed time of the resource. This is only present if requested via the $expand query parameter." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the resource. This is only present if requested via the $expand query parameter." + } + }, + "allOf": [ + { + "$ref": "#/definitions/GenericResource" + } + ], + "description": "Resource information." + }, "Plan": { "properties": { "name": { @@ -2489,7 +2516,7 @@ "value": { "type": "array", "items": { - "$ref": "#/definitions/GenericResource" + "$ref": "#/definitions/GenericResourceExpanded" }, "description": "An array of resources." }, diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2017-05-10/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2017-05-10/resources.json index b45533e7129d..58b83811613c 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2017-05-10/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2017-05-10/resources.json @@ -605,7 +605,7 @@ "in": "query", "required": false, "type": "string", - "description": "The $expand query parameter" + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -1033,7 +1033,7 @@ "in": "query", "required": false, "type": "string", - "description": "The $expand query parameter." + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -2457,6 +2457,33 @@ ], "description": "Resource information." }, + "GenericResourceExpanded": { + "properties": { + "createdTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The created time of the resource. This is only present if requested via the $expand query parameter." + }, + "changedTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The changed time of the resource. This is only present if requested via the $expand query parameter." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the resource. This is only present if requested via the $expand query parameter." + } + }, + "allOf": [ + { + "$ref": "#/definitions/GenericResource" + } + ], + "description": "Resource information." + }, "Plan": { "properties": { "name": { @@ -2543,7 +2570,7 @@ "value": { "type": "array", "items": { - "$ref": "#/definitions/GenericResource" + "$ref": "#/definitions/GenericResourceExpanded" }, "description": "An array of resources." }, diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/resources.json index 8b681ac85d4c..94a0fa735d50 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2018-02-01/resources.json @@ -613,7 +613,7 @@ "in": "query", "required": false, "type": "string", - "description": "The $expand query parameter" + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -2520,6 +2520,33 @@ ], "description": "Resource information." }, + "GenericResourceExpanded": { + "properties": { + "createdTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The created time of the resource. This is only present if requested via the $expand query parameter." + }, + "changedTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The changed time of the resource. This is only present if requested via the $expand query parameter." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the resource. This is only present if requested via the $expand query parameter." + } + }, + "allOf": [ + { + "$ref": "#/definitions/GenericResource" + } + ], + "description": "Resource information." + }, "Plan": { "properties": { "name": { @@ -2609,7 +2636,7 @@ "value": { "type": "array", "items": { - "$ref": "#/definitions/GenericResource" + "$ref": "#/definitions/GenericResourceExpanded" }, "description": "An array of resources." }, diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2018-05-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2018-05-01/resources.json index 53b83febb105..96741c288d29 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2018-05-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2018-05-01/resources.json @@ -953,7 +953,7 @@ "in": "query", "required": false, "type": "string", - "description": "The $expand query parameter. You can expand createdTime and changedTime. For example, to expand both properties, use $expand=changedTime,createdTime" + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -1386,7 +1386,7 @@ "in": "query", "required": false, "type": "string", - "description": "The $expand query parameter. You can expand createdTime and changedTime. For example, to expand both properties, use $expand=changedTime,createdTime" + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -2964,6 +2964,33 @@ ], "description": "Resource information." }, + "GenericResourceExpanded": { + "properties": { + "createdTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The created time of the resource. This is only present if requested via the $expand query parameter." + }, + "changedTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The changed time of the resource. This is only present if requested via the $expand query parameter." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the resource. This is only present if requested via the $expand query parameter." + } + }, + "allOf": [ + { + "$ref": "#/definitions/GenericResource" + } + ], + "description": "Resource information." + }, "Plan": { "properties": { "name": { @@ -3072,7 +3099,7 @@ "value": { "type": "array", "items": { - "$ref": "#/definitions/GenericResource" + "$ref": "#/definitions/GenericResourceExpanded" }, "description": "An array of resources." }, diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2018-06-01/subscriptions.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2018-06-01/subscriptions.json index 6ab9fc2ca230..fe7335ec5a3f 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2018-06-01/subscriptions.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2018-06-01/subscriptions.json @@ -321,6 +321,16 @@ "type": "string", "description": "The tenant ID. For example, 00000000-0000-0000-0000-000000000000." }, + "country": { + "readOnly": true, + "type": "string", + "description": "Country/region name of the address for the tenant." + }, + "countryCode": { + "readOnly": true, + "type": "string", + "description": "Country/region abbreviation for the tenant." + }, "displayName": { "readOnly": true, "type": "string", diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-03-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-03-01/resources.json index 2f90491c6270..d68a5cbff97c 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-03-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-03-01/resources.json @@ -953,7 +953,7 @@ "in": "query", "required": false, "type": "string", - "description": "The $expand query parameter. You can expand createdTime and changedTime. For example, to expand both properties, use $expand=changedTime,createdTime" + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -1394,7 +1394,7 @@ "in": "query", "required": false, "type": "string", - "description": "The $expand query parameter. You can expand createdTime and changedTime. For example, to expand both properties, use $expand=changedTime,createdTime" + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -2981,6 +2981,33 @@ ], "description": "Resource information." }, + "GenericResourceExpanded": { + "properties": { + "createdTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The created time of the resource. This is only present if requested via the $expand query parameter." + }, + "changedTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The changed time of the resource. This is only present if requested via the $expand query parameter." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the resource. This is only present if requested via the $expand query parameter." + } + }, + "allOf": [ + { + "$ref": "#/definitions/GenericResource" + } + ], + "description": "Resource information." + }, "Plan": { "properties": { "name": { @@ -3089,7 +3116,7 @@ "value": { "type": "array", "items": { - "$ref": "#/definitions/GenericResource" + "$ref": "#/definitions/GenericResourceExpanded" }, "description": "An array of resources." }, diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-01/resources.json index c6c511b0d4b9..608abcbb182d 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-01/resources.json @@ -1126,7 +1126,7 @@ "in": "query", "required": false, "type": "string", - "description": "The $expand query parameter. You can expand createdTime and changedTime. For example, to expand both properties, use $expand=changedTime,createdTime" + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -1567,7 +1567,7 @@ "in": "query", "required": false, "type": "string", - "description": "The $expand query parameter. You can expand createdTime and changedTime. For example, to expand both properties, use $expand=changedTime,createdTime" + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -3206,6 +3206,33 @@ ], "description": "Resource information." }, + "GenericResourceExpanded": { + "properties": { + "createdTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The created time of the resource. This is only present if requested via the $expand query parameter." + }, + "changedTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The changed time of the resource. This is only present if requested via the $expand query parameter." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the resource. This is only present if requested via the $expand query parameter." + } + }, + "allOf": [ + { + "$ref": "#/definitions/GenericResource" + } + ], + "description": "Resource information." + }, "Plan": { "properties": { "name": { @@ -3314,7 +3341,7 @@ "value": { "type": "array", "items": { - "$ref": "#/definitions/GenericResource" + "$ref": "#/definitions/GenericResourceExpanded" }, "description": "An array of resources." }, diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-10/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-10/resources.json index 97ac03d9053c..1cbe25092823 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-10/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-05-10/resources.json @@ -1202,7 +1202,7 @@ "in": "query", "required": false, "type": "string", - "description": "The $expand query parameter. You can expand createdTime and changedTime. For example, to expand both properties, use $expand=changedTime,createdTime" + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -1643,7 +1643,7 @@ "in": "query", "required": false, "type": "string", - "description": "The $expand query parameter. You can expand createdTime and changedTime. For example, to expand both properties, use $expand=changedTime,createdTime" + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -3282,6 +3282,33 @@ ], "description": "Resource information." }, + "GenericResourceExpanded": { + "properties": { + "createdTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The created time of the resource. This is only present if requested via the $expand query parameter." + }, + "changedTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The changed time of the resource. This is only present if requested via the $expand query parameter." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the resource. This is only present if requested via the $expand query parameter." + } + }, + "allOf": [ + { + "$ref": "#/definitions/GenericResource" + } + ], + "description": "Resource information." + }, "Plan": { "properties": { "name": { @@ -3390,7 +3417,7 @@ "value": { "type": "array", "items": { - "$ref": "#/definitions/GenericResource" + "$ref": "#/definitions/GenericResourceExpanded" }, "description": "An array of resources." }, diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-06-01/subscriptions.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-06-01/subscriptions.json index 628544a10093..c64abcc4164a 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-06-01/subscriptions.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-06-01/subscriptions.json @@ -347,6 +347,44 @@ "readOnly": true, "type": "string", "description": "The tenant ID. For example, 00000000-0000-0000-0000-000000000000." + }, + "tenantCategory": { + "readOnly": true, + "type": "string", + "description": "The tenant category.", + "enum": [ + "Home", + "ProjectedBy", + "ManagedBy" + ], + "x-ms-enum": { + "name": "TenantCategory", + "modelAsString": false + } + }, + "country": { + "readOnly": true, + "type": "string", + "description": "Country/region name of the address for the tenant." + }, + "countryCode": { + "readOnly": true, + "type": "string", + "description": "Country/region abbreviation for the tenant." + }, + "displayName": { + "readOnly": true, + "type": "string", + "description": "The display name of the tenant." + }, + "domains": { + "readOnly": true, + "type": "array", + "items": { + "type": "string", + "description": "The domain name for a tenant." + }, + "description": "The list of domains for the tenant." } }, "description": "Tenant Id information." diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/resources.json index 6386e7426269..2d3b9b296a41 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-07-01/resources.json @@ -2142,7 +2142,7 @@ "in": "query", "required": false, "type": "string", - "description": "The $expand query parameter. You can expand createdTime and changedTime. For example, to expand both properties, use $expand=changedTime,createdTime" + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -2640,7 +2640,7 @@ "in": "query", "required": false, "type": "string", - "description": "The $expand query parameter. You can expand createdTime and changedTime. For example, to expand both properties, use $expand=changedTime,createdTime" + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -4596,6 +4596,33 @@ ], "description": "Resource information." }, + "GenericResourceExpanded": { + "properties": { + "createdTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The created time of the resource. This is only present if requested via the $expand query parameter." + }, + "changedTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The changed time of the resource. This is only present if requested via the $expand query parameter." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the resource. This is only present if requested via the $expand query parameter." + } + }, + "allOf": [ + { + "$ref": "#/definitions/GenericResource" + } + ], + "description": "Resource information." + }, "Plan": { "properties": { "name": { @@ -4704,7 +4731,7 @@ "value": { "type": "array", "items": { - "$ref": "#/definitions/GenericResource" + "$ref": "#/definitions/GenericResourceExpanded" }, "description": "An array of resources." }, diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/resources.json index 65c0482675e1..9052916fa211 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-08-01/resources.json @@ -2142,7 +2142,7 @@ "in": "query", "required": false, "type": "string", - "description": "The $expand query parameter. You can expand createdTime and changedTime. For example, to expand both properties, use $expand=changedTime,createdTime" + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -2640,7 +2640,7 @@ "in": "query", "required": false, "type": "string", - "description": "The $expand query parameter. You can expand createdTime and changedTime. For example, to expand both properties, use $expand=changedTime,createdTime" + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -2726,7 +2726,11 @@ "description": "The name of the resource to check whether it exists." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -2795,7 +2799,11 @@ "description": "The name of the resource to delete." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -2868,7 +2876,11 @@ "description": "The name of the resource to create." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." }, { "name": "parameters", @@ -2956,7 +2968,11 @@ "description": "The name of the resource to update." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." }, { "name": "parameters", @@ -3038,7 +3054,11 @@ "description": "The name of the resource to get." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3077,7 +3097,11 @@ "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." } ], "responses": { @@ -3111,7 +3135,11 @@ "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." } ], "responses": { @@ -3149,7 +3177,11 @@ "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." }, { "name": "parameters", @@ -3202,7 +3234,11 @@ "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." }, { "name": "parameters", @@ -3249,7 +3285,11 @@ "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." } ], "responses": { @@ -4573,6 +4613,33 @@ ], "description": "Resource information." }, + "GenericResourceExpanded": { + "properties": { + "createdTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The created time of the resource. This is only present if requested via the $expand query parameter." + }, + "changedTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The changed time of the resource. This is only present if requested via the $expand query parameter." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the resource. This is only present if requested via the $expand query parameter." + } + }, + "allOf": [ + { + "$ref": "#/definitions/GenericResource" + } + ], + "description": "Resource information." + }, "Plan": { "properties": { "name": { @@ -4681,7 +4748,7 @@ "value": { "type": "array", "items": { - "$ref": "#/definitions/GenericResource" + "$ref": "#/definitions/GenericResourceExpanded" }, "description": "An array of resources." }, diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PutDeploymentAtManagementGroup.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PutDeploymentAtManagementGroup.json index 28bd0ff42bb6..128a544429c8 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PutDeploymentAtManagementGroup.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PutDeploymentAtManagementGroup.json @@ -6,7 +6,9 @@ "parameters": { "location": "eastus", "properties": { - "templateLink": "{templateUri}", + "templateLink": { + "uri": "{templateUri}" + }, "parameters": {}, "mode": "Incremental" } diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PutDeploymentAtScope.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PutDeploymentAtScope.json index 03c8055ac899..0847aa88c28a 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PutDeploymentAtScope.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PutDeploymentAtScope.json @@ -6,9 +6,15 @@ "parameters": { "location": "eastus", "properties": { - "templateLink": "{templateUri}", + "templateLink": { + "uri": "{templateUri}" + }, "parameters": {}, "mode": "Incremental" + }, + "tags": { + "tagKey1": "tagValue1", + "tagKey2": "tagValue2" } } }, @@ -70,6 +76,10 @@ "resourceName": "location-lock" } ] + }, + "tags": { + "tagKey1": "tagValue1", + "tagKey2": "tagValue2" } } }, @@ -130,6 +140,10 @@ "resourceName": "location-lock" } ] + }, + "tags": { + "tagKey1": "tagValue1", + "tagKey2": "tagValue2" } } } diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PutDeploymentAtTenant.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PutDeploymentAtTenant.json index a10bac45d7bf..3c52837d995b 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PutDeploymentAtTenant.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PutDeploymentAtTenant.json @@ -5,9 +5,15 @@ "parameters": { "location": "eastus", "properties": { - "templateLink": "{templateUri}", + "templateLink": { + "uri": "{templateUri}" + }, "parameters": {}, "mode": "Incremental" + }, + "tags": { + "tagKey1": "tagValue1", + "tagKey2": "tagValue2" } } }, @@ -69,6 +75,10 @@ "resourceName": "location-lock" } ] + }, + "tags": { + "tagKey1": "tagValue1", + "tagKey2": "tagValue2" } } }, @@ -129,6 +139,10 @@ "resourceName": "location-lock" } ] + }, + "tags": { + "tagKey1": "tagValue1", + "tagKey2": "tagValue2" } } } diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json index adf6fc284cce..f75a4ff7641b 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PutDeploymentWithOnErrorDeploymentLastSuccessful.json @@ -6,7 +6,9 @@ "api-version": "2019-10-01", "parameters": { "properties": { - "templateLink": "{templateUri}", + "templateLink": { + "uri": "{templateUri}" + }, "parameters": {}, "mode": "Complete", "onErrorDeployment": { @@ -22,10 +24,66 @@ "name": "exampleDeploymentName", "type": "Microsoft.Resources/deployments", "properties": { + "templateLink": { + "uri": "{templateUri}", + "contentVersion": "1.0.0.0" + }, + "parameters": {}, + "mode": "Complete", "provisioningState": "Accepted", - "correlationId": "{correlationId}", "timestamp": "2019-03-01T00:00:00.0000000Z", - "mode": "Complete", + "duration": "PT0.8204881S", + "correlationId": "{correlationId}", + "providers": [ + { + "namespace": "Microsoft.Network", + "resourceTypes": [ + { + "resourceType": "virtualNetworks", + "locations": [ + "centralus" + ] + }, + { + "resourceType": "virtualNetworks/subnets", + "locations": [ + "centralus" + ] + } + ] + } + ], + "dependencies": [ + { + "dependsOn": [ + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks", + "resourceName": "VNet1" + } + ], + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet1" + }, + { + "dependsOn": [ + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks", + "resourceName": "VNet1" + }, + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet1" + } + ], + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet2" + } + ], "onErrorDeployment": { "type": "LastSuccessful", "deploymentName": "{nameOfLastSuccesfulDeployment}" @@ -39,10 +97,66 @@ "name": "exampleDeploymentName", "type": "Microsoft.Resources/deployments", "properties": { + "templateLink": { + "uri": "{templateUri}", + "contentVersion": "1.0.0.0" + }, + "parameters": {}, + "mode": "Complete", "provisioningState": "Accepted", - "correlationId": "{correlationId}", "timestamp": "2019-03-01T00:00:00.0000000Z", - "mode": "Complete", + "duration": "PT0.8204881S", + "correlationId": "{correlationId}", + "providers": [ + { + "namespace": "Microsoft.Network", + "resourceTypes": [ + { + "resourceType": "virtualNetworks", + "locations": [ + "centralus" + ] + }, + { + "resourceType": "virtualNetworks/subnets", + "locations": [ + "centralus" + ] + } + ] + } + ], + "dependencies": [ + { + "dependsOn": [ + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks", + "resourceName": "VNet1" + } + ], + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet1" + }, + { + "dependsOn": [ + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks", + "resourceName": "VNet1" + }, + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet1" + } + ], + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet2" + } + ], "onErrorDeployment": { "type": "LastSuccessful", "deploymentName": "{nameOfLastSuccesfulDeployment}" diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json index 0815fd9e7998..c30e3d7da7cf 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/examples/PutDeploymentWithOnErrorDeploymentSpecificDeployment.json @@ -6,7 +6,9 @@ "api-version": "2019-10-01", "parameters": { "properties": { - "templateLink": "{templateUri}", + "templateLink": { + "uri": "{templateUri}" + }, "parameters": {}, "mode": "Complete", "onErrorDeployment": { @@ -23,10 +25,66 @@ "name": "exampleDeploymentName", "type": "Microsoft.Resources/deployments", "properties": { + "templateLink": { + "uri": "{templateUri}", + "contentVersion": "1.0.0.0" + }, + "parameters": {}, + "mode": "Complete", "provisioningState": "Accepted", - "correlationId": "{correlationId}", "timestamp": "2019-03-01T00:00:00.0000000Z", - "mode": "Complete", + "duration": "PT0.8204881S", + "correlationId": "{correlationId}", + "providers": [ + { + "namespace": "Microsoft.Network", + "resourceTypes": [ + { + "resourceType": "virtualNetworks", + "locations": [ + "centralus" + ] + }, + { + "resourceType": "virtualNetworks/subnets", + "locations": [ + "centralus" + ] + } + ] + } + ], + "dependencies": [ + { + "dependsOn": [ + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks", + "resourceName": "VNet1" + } + ], + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet1" + }, + { + "dependsOn": [ + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks", + "resourceName": "VNet1" + }, + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet1" + } + ], + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet2" + } + ], "onErrorDeployment": { "type": "SpecificDeployment", "deploymentName": "{nameOfDeploymentToUse}" @@ -40,10 +98,66 @@ "name": "exampleDeploymentName", "type": "Microsoft.Resources/deployments", "properties": { + "templateLink": { + "uri": "{templateUri}", + "contentVersion": "1.0.0.0" + }, + "parameters": {}, + "mode": "Complete", "provisioningState": "Accepted", - "correlationId": "{correlationId}", "timestamp": "2019-03-01T00:00:00.0000000Z", - "mode": "Complete", + "duration": "PT0.8204881S", + "correlationId": "{correlationId}", + "providers": [ + { + "namespace": "Microsoft.Network", + "resourceTypes": [ + { + "resourceType": "virtualNetworks", + "locations": [ + "centralus" + ] + }, + { + "resourceType": "virtualNetworks/subnets", + "locations": [ + "centralus" + ] + } + ] + } + ], + "dependencies": [ + { + "dependsOn": [ + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks", + "resourceName": "VNet1" + } + ], + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet1" + }, + { + "dependsOn": [ + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks", + "resourceName": "VNet1" + }, + { + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet1" + } + ], + "id": "{resourceid}", + "resourceType": "Microsoft.Network/virtualNetworks/subnets", + "resourceName": "VNet1/Subnet2" + } + ], "onErrorDeployment": { "type": "SpecificDeployment", "deploymentName": "{nameOfDeploymentToUse}" diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/resources.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/resources.json index 5fefb1a9b3e5..90f76d3cbe11 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/resources.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-10-01/resources.json @@ -257,6 +257,7 @@ "Deployments" ], "operationId": "Deployments_ValidateAtScope", + "x-ms-long-running-operation": true, "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", "parameters": [ { @@ -285,6 +286,9 @@ "$ref": "#/definitions/DeploymentValidateResult" } }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, "400": { "description": "Returns the validation result.", "schema": { @@ -561,6 +565,7 @@ "Deployments" ], "operationId": "Deployments_ValidateAtTenantScope", + "x-ms-long-running-operation": true, "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", "parameters": [ { @@ -586,6 +591,9 @@ "$ref": "#/definitions/DeploymentValidateResult" } }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, "400": { "description": "Returns the validation result.", "schema": { @@ -871,6 +879,7 @@ "Deployments" ], "operationId": "Deployments_ValidateAtManagementGroupScope", + "x-ms-long-running-operation": true, "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", "parameters": [ { @@ -899,6 +908,9 @@ "$ref": "#/definitions/DeploymentValidateResult" } }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, "400": { "description": "Returns the validation result.", "schema": { @@ -1185,6 +1197,7 @@ "Deployments" ], "operationId": "Deployments_ValidateAtSubscriptionScope", + "x-ms-long-running-operation": true, "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", "parameters": [ { @@ -1213,6 +1226,9 @@ "$ref": "#/definitions/DeploymentValidateResult" } }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, "400": { "description": "Returns the validation result.", "schema": { @@ -1622,6 +1638,7 @@ "Deployments" ], "operationId": "Deployments_Validate", + "x-ms-long-running-operation": true, "description": "Validates whether the specified template is syntactically correct and will be accepted by Azure Resource Manager..", "parameters": [ { @@ -1660,6 +1677,9 @@ "$ref": "#/definitions/DeploymentValidateResult" } }, + "202": { + "description": "Accepted - The request has been accepted for processing and the operation will complete asynchronously." + }, "400": { "description": "Returns the validation result.", "schema": { @@ -2142,7 +2162,7 @@ "in": "query", "required": false, "type": "string", - "description": "The $expand query parameter. You can expand createdTime and changedTime. For example, to expand both properties, use $expand=changedTime,createdTime" + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -2600,7 +2620,7 @@ "$ref": "#/parameters/ApiVersionParameter" }, { - "$ref": "#/parameters/SubscriptionIdParameter" + "$ref": "#/parameters/SourceSubscriptionIdParameter" } ], "responses": { @@ -2640,7 +2660,7 @@ "in": "query", "required": false, "type": "string", - "description": "The $expand query parameter. You can expand createdTime and changedTime. For example, to expand both properties, use $expand=changedTime,createdTime" + "description": "Comma-separated list of additional properties to be included in the response. Valid values include `createdTime`, `changedTime` and `provisioningState`. For example, `$expand=createdTime,changedTime`." }, { "name": "$top", @@ -2726,7 +2746,11 @@ "description": "The name of the resource to check whether it exists." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -2795,7 +2819,11 @@ "description": "The name of the resource to delete." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -2868,7 +2896,11 @@ "description": "The name of the resource to create." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." }, { "name": "parameters", @@ -2956,7 +2988,11 @@ "description": "The name of the resource to update." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." }, { "name": "parameters", @@ -3038,7 +3074,11 @@ "description": "The name of the resource to get." }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." }, { "$ref": "#/parameters/SubscriptionIdParameter" @@ -3077,7 +3117,11 @@ "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." } ], "responses": { @@ -3111,7 +3155,11 @@ "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." } ], "responses": { @@ -3149,7 +3197,11 @@ "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." }, { "name": "parameters", @@ -3202,7 +3254,11 @@ "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." }, { "name": "parameters", @@ -3249,7 +3305,11 @@ "x-ms-skip-url-encoding": true }, { - "$ref": "#/parameters/ApiVersionParameter" + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation." } ], "responses": { @@ -3274,7 +3334,8 @@ "Tags" ], "operationId": "Tags_DeleteValue", - "description": "Deletes a tag value.", + "summary": "Deletes a predefined tag value for a predefined tag name.", + "description": "This operation allows deleting a value from the list of predefined values for an existing predefined tag name. The value being deleted must not be in use as a tag value for the given tag name for any resource.", "parameters": [ { "name": "tagName", @@ -3299,10 +3360,10 @@ ], "responses": { "200": { - "description": "OK" + "description": "Predefined tag value successfully deleted." }, "204": { - "description": "No Content" + "description": "Predefined tag value did not exist." }, "default": { "description": "Error response describing why the operation failed.", @@ -3317,7 +3378,8 @@ "Tags" ], "operationId": "Tags_CreateOrUpdateValue", - "description": "Creates a tag value. The name of the tag must already exist.", + "summary": "Creates a predefined value for a predefined tag name.", + "description": "This operation allows adding a value to the list of predefined values for an existing predefined tag name. A tag value can have a maximum of 256 characters.", "parameters": [ { "name": "tagName", @@ -3342,13 +3404,13 @@ ], "responses": { "200": { - "description": "OK - Returns information about the tag value.", + "description": "Predefined tag value already exists. Returns information about the predefined tag value.", "schema": { "$ref": "#/definitions/TagValue" } }, "201": { - "description": "Created - Returns information about the tag value.", + "description": "Predefined tag value successfully created. Returns information about the predefined tag value.", "schema": { "$ref": "#/definitions/TagValue" } @@ -3368,8 +3430,8 @@ "Tags" ], "operationId": "Tags_CreateOrUpdate", - "summary": "Creates a tag in the subscription.", - "description": "The tag name can have a maximum of 512 characters and is case insensitive. Tag names created by Azure have prefixes of microsoft, azure, or windows. You cannot create tags with one of these prefixes.", + "summary": "Creates a predefined tag name.", + "description": "This operation allows adding a name to the list of predefined tag names for the given subscription. A tag name can have a maximum of 512 characters and is case-insensitive. Tag names cannot have the following prefixes which are reserved for Azure use: 'microsoft', 'azure', 'windows'.", "parameters": [ { "name": "tagName", @@ -3387,13 +3449,13 @@ ], "responses": { "200": { - "description": "OK - Returns information about the tag.", + "description": "Predefined tag name already exists. Returns information about the predefined tag name.", "schema": { "$ref": "#/definitions/TagDetails" } }, "201": { - "description": "Created - Returns information about the tag.", + "description": "Predefined tag name successfully created. Returns information about the predefined tag name.", "schema": { "$ref": "#/definitions/TagDetails" } @@ -3411,8 +3473,8 @@ "Tags" ], "operationId": "Tags_Delete", - "summary": "Deletes a tag from the subscription.", - "description": "You must remove all values from a resource tag before you can delete it.", + "summary": "Deletes a predefined tag name.", + "description": "This operation allows deleting a name from the list of predefined tag names for the given subscription. The name being deleted must not be in use as a tag name for any resource. All predefined values for the given name must have already been deleted.", "parameters": [ { "name": "tagName", @@ -3430,10 +3492,10 @@ ], "responses": { "200": { - "description": "OK" + "description": "Predefined tag name successfully deleted." }, "204": { - "description": "No Content" + "description": "Predefined tag name did not exist." }, "default": { "description": "Error response describing why the operation failed.", @@ -3450,7 +3512,8 @@ "Tags" ], "operationId": "Tags_List", - "description": "Gets the names and values of all resource tags that are defined in a subscription.", + "summary": "Gets a summary of tag usage under the subscription.", + "description": "This operation performs a union of predefined tags, resource tags, resource group tags and subscription tags, and returns a summary of usage for each tag name and value under the given subscription. In case of a large number of tags, this operation may return a previously cached result.", "parameters": [ { "$ref": "#/parameters/ApiVersionParameter" @@ -3969,8 +4032,9 @@ "tags": [ "Tags" ], - "operationId": "Tags_ResourceCreate", - "description": "Create or Replace existing tags with passing in tags.", + "operationId": "Tags_CreateOrUpdateAtScope", + "summary": "Creates or updates the entire set of tags on a resource or subscription.", + "description": "This operation allows adding or replacing the entire set of tags on the specified resource or subscription. The specified entity can have a maximum of 50 tags.", "parameters": [ { "$ref": "#/parameters/ScopeParameter" @@ -3984,13 +4048,12 @@ "required": true, "schema": { "$ref": "#/definitions/TagsResource" - }, - "description": "Parameters for creating multiple tags." + } } ], "responses": { "200": { - "description": "OK - Returns added tag information about the resource.", + "description": "Tags updated successfully. Returns tags from the specified object.", "schema": { "$ref": "#/definitions/TagsResource" } @@ -4003,10 +4066,10 @@ } }, "x-ms-examples": { - "Creates multiple tags for a tracked resource.": { + "Update tags on a resource": { "$ref": "./examples/PutTagsResource.json" }, - "Create multiple tags for a subscription.": { + "Update tags on a subscription": { "$ref": "./examples/PutTagsSubscription.json" } } @@ -4015,8 +4078,9 @@ "tags": [ "Tags" ], - "operationId": "Tags_ResourceUpdate", - "description": "Update multiple tags: if the tagKey exists, update tagValue with the new value; if not, insert the new record.", + "operationId": "Tags_UpdateAtScope", + "summary": "Selectively updates the set of tags on a resource or subscription.", + "description": "This operation allows replacing, merging or selectively deleting tags on the specified resource or subscription. The specified entity can have a maximum of 50 tags at the end of the operation. The 'replace' option replaces the entire set of existing tags with a new set. The 'merge' option allows adding tags with new names and updating the values of tags with existing names. The 'delete' option allows selectively deleting tags based on given names or name/value pairs.", "parameters": [ { "$ref": "#/parameters/ScopeParameter" @@ -4029,14 +4093,13 @@ "in": "body", "required": true, "schema": { - "$ref": "#/definitions/TagPatchRequest" - }, - "description": "Parameters for updating multiple tags." + "$ref": "#/definitions/TagsPatchResource" + } } ], "responses": { "200": { - "description": "OK - Returns updated tag information about the resource.", + "description": "Tags updated successfully. Returns tags from the specified object.", "schema": { "$ref": "#/definitions/TagsResource" } @@ -4053,8 +4116,8 @@ "tags": [ "Tags" ], - "operationId": "Tags_ResourceGet", - "description": "Gets all the tags for the resource.", + "operationId": "Tags_GetAtScope", + "summary": "Gets the entire set of tags on a resource or subscription.", "parameters": [ { "$ref": "#/parameters/ScopeParameter" @@ -4065,7 +4128,7 @@ ], "responses": { "200": { - "description": "OK - Returns tag information about the resource.", + "description": "Returns tags from the specified object.", "schema": { "$ref": "#/definitions/TagsResource" } @@ -4078,10 +4141,10 @@ } }, "x-ms-examples": { - "Gets all the tags for a tracked resource.": { + "Get tags on a resource": { "$ref": "./examples/GetTagsResource.json" }, - "Gets all the tags for a subscription.": { + "Get tags on a subscription": { "$ref": "./examples/GetTagsSubscription.json" } } @@ -4090,8 +4153,8 @@ "tags": [ "Tags" ], - "operationId": "Tags_ResourceDelete", - "description": "Deletes all the tags for the resource.", + "operationId": "Tags_DeleteAtScope", + "summary": "Deletes the entire set of tags on a resource or subscription.", "parameters": [ { "$ref": "#/parameters/ScopeParameter" @@ -4102,7 +4165,7 @@ ], "responses": { "200": { - "description": "OK" + "description": "Tags successfully deleted." }, "default": { "description": "Error response describing why the operation failed.", @@ -4248,6 +4311,13 @@ "properties": { "$ref": "#/definitions/DeploymentProperties", "description": "The deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" } }, "required": [ @@ -4264,6 +4334,13 @@ "properties": { "$ref": "#/definitions/DeploymentProperties", "description": "The deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" } }, "required": [ @@ -4349,9 +4426,48 @@ "type": "string" }, "description": "The API versions." + }, + "pattern": { + "$ref": "#/definitions/AliasPatternType", + "description": "The pattern for an alias path." } }, - "description": "The type of the paths for alias. " + "description": "The type of the paths for alias." + }, + "AliasPatternType": { + "properties": { + "phrase": { + "type": "string", + "description": "The alias pattern phrase." + }, + "variable": { + "type": "string", + "description": "The alias pattern variable." + }, + "type": { + "type": "string", + "enum": [ + "NotSpecified", + "Extract" + ], + "x-ms-enum": { + "name": "AliasPatternType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "NotSpecified is not allowed." + }, + { + "value": "Extract", + "description": "Extract is the only allowed value." + } + ] + }, + "description": "The type of alias pattern" + } + }, + "description": "The type of the pattern for an alias path." }, "AliasType": { "properties": { @@ -4365,6 +4481,41 @@ "$ref": "#/definitions/AliasPathType" }, "description": "The paths for an alias." + }, + "type": { + "type": "string", + "description": "The type of the alias.", + "enum": [ + "NotSpecified", + "PlainText", + "Mask" + ], + "x-ms-enum": { + "name": "AliasType", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "Alias type is unknown (same as not providing alias type)." + }, + { + "value": "PlainText", + "description": "Alias value is not secret." + }, + { + "value": "Mask", + "description": "Alias value is secret." + } + ] + } + }, + "defaultPath": { + "type": "string", + "description": "The default path for an alias." + }, + "defaultPattern": { + "$ref": "#/definitions/AliasPatternType", + "description": "The default pattern for an alias." } }, "description": "The alias type. " @@ -4508,10 +4659,12 @@ "description": "The duration of the template deployment." }, "outputs": { + "readOnly": true, "type": "object", "description": "Key/value pairs that represent deployment output." }, "providers": { + "readOnly": true, "type": "array", "items": { "$ref": "#/definitions/Provider" @@ -4519,29 +4672,30 @@ "description": "The list of resource providers needed for the deployment." }, "dependencies": { + "readOnly": true, "type": "array", "items": { "$ref": "#/definitions/Dependency" }, "description": "The list of deployment dependencies." }, - "template": { - "type": "object", - "description": "The template content. Use only one of Template or TemplateLink." - }, "templateLink": { + "readOnly": true, "$ref": "#/definitions/TemplateLink", - "description": "The URI referencing the template. Use only one of Template or TemplateLink." + "description": "The URI referencing the template." }, "parameters": { + "readOnly": true, "type": "object", - "description": "Deployment parameters. Use only one of Parameters or ParametersLink." + "description": "Deployment parameters. " }, "parametersLink": { + "readOnly": true, "$ref": "#/definitions/ParametersLink", - "description": "The URI referencing the parameters. Use only one of Parameters or ParametersLink." + "description": "The URI referencing the parameters. " }, "mode": { + "readOnly": true, "type": "string", "description": "The deployment mode. Possible values are Incremental and Complete.", "enum": [ @@ -4554,16 +4708,56 @@ } }, "debugSetting": { + "readOnly": true, "$ref": "#/definitions/DebugSetting", "description": "The debug setting of the deployment." }, "onErrorDeployment": { + "readOnly": true, "$ref": "#/definitions/OnErrorDeploymentExtended", "description": "The deployment on error behavior." + }, + "templateHash": { + "readOnly": true, + "type": "string", + "description": "The hash produced for the template." + }, + "outputResources": { + "readOnly": true, + "type": "array", + "description": "Array of provisioned resources.", + "items": { + "$ref": "#/definitions/ResourceReference", + "description": "Details of provisioned resources." + } + }, + "validatedResources": { + "readOnly": true, + "type": "array", + "description": "Array of validated resources.", + "items": { + "$ref": "#/definitions/ResourceReference", + "description": "Details of validated resources." + } + }, + "error": { + "readOnly": true, + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", + "description": "The deployment error." } }, "description": "Deployment properties with additional details." }, + "ResourceReference": { + "description": "The resource Id model.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The fully qualified resource Id." + } + } + }, "OnErrorDeployment": { "properties": { "type": { @@ -4614,6 +4808,7 @@ "DeploymentValidateResult": { "properties": { "error": { + "readOnly": true, "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse", "description": "The deployment validation error." }, @@ -4648,6 +4843,13 @@ "properties": { "$ref": "#/definitions/DeploymentPropertiesExtended", "description": "Deployment properties." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Deployment tags" } }, "x-ms-azure-resource": true, @@ -4722,6 +4924,33 @@ ], "description": "Resource information." }, + "GenericResourceExpanded": { + "properties": { + "createdTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The created time of the resource. This is only present if requested via the $expand query parameter." + }, + "changedTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The changed time of the resource. This is only present if requested via the $expand query parameter." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The provisioning state of the resource. This is only present if requested via the $expand query parameter." + } + }, + "allOf": [ + { + "$ref": "#/definitions/GenericResource" + } + ], + "description": "Resource information." + }, "Plan": { "properties": { "name": { @@ -4830,7 +5059,7 @@ "value": { "type": "array", "items": { - "$ref": "#/definitions/GenericResource" + "$ref": "#/definitions/GenericResourceExpanded" }, "description": "An array of resources." }, @@ -4988,7 +5217,7 @@ "id": { "readOnly": true, "type": "string", - "description": "The tag ID." + "description": "The tag value ID." }, "tagValue": { "type": "string", @@ -5007,7 +5236,7 @@ "id": { "readOnly": true, "type": "string", - "description": "The tag ID." + "description": "The tag name ID." }, "tagName": { "type": "string", @@ -5025,6 +5254,7 @@ "description": "The list of tag values." } }, + "x-ms-azure-resource": true, "description": "Tag details." }, "TagsListResult": { @@ -5072,6 +5302,69 @@ }, "DeploymentOperationProperties": { "properties": { + "provisioningOperation": { + "readOnly": true, + "type": "string", + "description": "The name of the current provisioning operation.", + "enum": [ + "NotSpecified", + "Create", + "Delete", + "Waiting", + "AzureAsyncOperationWaiting", + "ResourceCacheWaiting", + "Action", + "Read", + "EvaluateDeploymentOutput", + "DeploymentCleanup" + ], + "x-ms-enum": { + "name": "ProvisioningOperation", + "modelAsString": false, + "values": [ + { + "value": "NotSpecified", + "description": "The provisioning operation is not specified." + }, + { + "value": "Create", + "description": "The provisioning operation is create." + }, + { + "value": "Delete", + "description": "The provisioning operation is delete." + }, + { + "value": "Waiting", + "description": "The provisioning operation is waiting." + }, + { + "value": "AzureAsyncOperationWaiting", + "description": "The provisioning operation is waiting Azure async operation." + }, + { + "value": "ResourceCacheWaiting", + "description": "The provisioning operation is waiting for resource cache." + }, + { + "value": "Action", + "description": "The provisioning operation is action." + }, + { + "value": "Read", + "description": "The provisioning operation is read." + }, + { + "value": "EvaluateDeploymentOutput", + "description": "The provisioning operation is evaluate output." + }, + { + "value": "DeploymentCleanup", + "description": "The provisioning operation is cleanup. This operation is part of the 'complete' mode deployment." + } + ] + } + }, "provisioningState": { "readOnly": true, "type": "string", @@ -5458,7 +5751,7 @@ } }, "Tags": { - "description": "key and value pairs for tags", + "description": "A dictionary of name and value pairs.", "properties": { "tags": { "type": "object", @@ -5469,13 +5762,13 @@ } } }, - "TagPatchRequest": { + "TagsPatchResource": { "type": "object", - "description": "Tag Request for Patch operation.", + "description": "Wrapper resource for tags patch API request only.", "properties": { "operation": { "type": "string", - "description": "The operation type for the patch api.", + "description": "The operation type for the patch API.", "enum": [ "Replace", "Merge", @@ -5484,27 +5777,38 @@ }, "properties": { "$ref": "#/definitions/Tags", - "description": "tags object passing in the request." + "description": "The set of tags." } } }, "TagsResource": { "type": "object", - "description": "Tags for the resource.", + "description": "Wrapper resource for tags API requests and responses.", "required": [ "properties" ], "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the tags wrapper resource." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the tags wrapper resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The type of the tags wrapper resource." + }, "properties": { "$ref": "#/definitions/Tags", - "description": "tags property." + "description": "The set of tags." } }, - "allOf": [ - { - "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" - } - ] + "x-ms-azure-resource": true } }, "parameters": { @@ -5533,6 +5837,13 @@ "type": "string", "description": "The ID of the target subscription." }, + "SourceSubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the source subscription." + }, "DeploymentNameParameter": { "name": "deploymentName", "in": "path", diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-11-01/examples/GetSubscription.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-11-01/examples/GetSubscription.json index 087ec2b7b555..8cfe1e927c77 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-11-01/examples/GetSubscription.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-11-01/examples/GetSubscription.json @@ -21,7 +21,11 @@ { "tenantId": "8f70baf1-1f6e-46a2-a1ff-238dac1ebfb7" } - ] + ], + "tags": { + "tagKey1": "tagValue1", + "tagKey2": "tagValue2" + } } } } diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-11-01/examples/GetSubscriptions.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-11-01/examples/GetSubscriptions.json index 98c7aad42602..af57fe5468bf 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-11-01/examples/GetSubscriptions.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-11-01/examples/GetSubscriptions.json @@ -22,7 +22,11 @@ { "tenantId": "8f70baf1-1f6e-46a2-a1ff-238dac1ebfb7" } - ] + ], + "tags": { + "tagKey1": "tagValue1", + "tagKey2": "tagValue2" + } }, { "id": "/subscriptions/72ac930a-f34e-42d8-b06d-dc2a9e12ed71", @@ -43,7 +47,11 @@ { "tenantId": "f7fb6af2-321d-47c8-9c0f-b0239eaad39a" } - ] + ], + "tags": { + "tagKey1": "tagValue1", + "tagKey2": "tagValue2" + } } ], "nextLink": "..." diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-11-01/subscriptions.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-11-01/subscriptions.json index e30a1b77d6fa..a10bc931ed11 100644 --- a/specification/resources/resource-manager/Microsoft.Resources/stable/2019-11-01/subscriptions.json +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2019-11-01/subscriptions.json @@ -356,6 +356,14 @@ "$ref": "#/definitions/ManagedByTenant" }, "description": "An array containing the tenants managing the subscription." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The tags attached to the subscription." } }, "description": "Subscription information." @@ -429,6 +437,44 @@ "readOnly": true, "type": "string", "description": "The tenant ID. For example, 00000000-0000-0000-0000-000000000000." + }, + "tenantCategory": { + "readOnly": true, + "type": "string", + "description": "Category of the tenant.", + "enum": [ + "Home", + "ProjectedBy", + "ManagedBy" + ], + "x-ms-enum": { + "name": "TenantCategory", + "modelAsString": false + } + }, + "country": { + "readOnly": true, + "type": "string", + "description": "Country/region name of the address for the tenant." + }, + "countryCode": { + "readOnly": true, + "type": "string", + "description": "Country/region abbreviation for the tenant." + }, + "displayName": { + "readOnly": true, + "type": "string", + "description": "The display name of the tenant." + }, + "domains": { + "readOnly": true, + "type": "array", + "items": { + "type": "string", + "description": "The domain name for a tenant." + }, + "description": "The list of domains for the tenant." } }, "description": "Tenant Id information." diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/examples/GetLocations.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/examples/GetLocations.json new file mode 100644 index 000000000000..587ecdee7ccd --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/examples/GetLocations.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "291bba3f-e0a5-47bc-a099-3bdcb2a50a05", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": [ + { + "id": "/subscriptions/291bba3f-e0a5-47bc-a099-3bdcb2a50a05/locations/centralus", + "name": "centralus", + "displayName": "Central US", + "regionalDisplayName": "(US) Central US", + "metadata": { + "regionType": "Physical", + "regionCategory": "Recommended", + "geographyGroup": "US", + "longitude": "-93.6208", + "latitude": "41.5908", + "physicalLocation": "Iowa", + "pairedRegion": [ + { + "name": "eastus2", + "id": "/subscriptions/291bba3f-e0a5-47bc-a099-3bdcb2a50a05/locations/eastus2" + } + ] + } + }, + { + "id": "/subscriptions/291bba3f-e0a5-47bc-a099-3bdcb2a50a05/locations/eastasia", + "name": "eastasia", + "displayName": "East Asia", + "regionalDisplayName": "(Asia Pacific) East Asia", + "metadata": { + "regionType": "Physical", + "regionCategory": "Recommended", + "geographyGroup": "Asia Pacific", + "longitude": "114.188", + "latitude": "22.267", + "physicalLocation": "Hong Kong", + "pairedRegion": [ + { + "name": "southeastasia", + "id": "/subscriptions/291bba3f-e0a5-47bc-a099-3bdcb2a50a05/locations/southeastasia" + } + ] + } + } + ] + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/examples/GetSubscription.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/examples/GetSubscription.json new file mode 100644 index 000000000000..fca6abaef605 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/examples/GetSubscription.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "291bba3f-e0a5-47bc-a099-3bdcb2a50a05", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/291bba3f-e0a5-47bc-a099-3bdcb2a50a05", + "subscriptionId": "291bba3f-e0a5-47bc-a099-3bdcb2a50a05", + "tenantId": "31c75423-32d6-4322-88b7-c478bdde4858", + "displayName": "Example Subscription", + "state": "Enabled", + "subscriptionPolicies": { + "locationPlacementId": "Internal_2014-09-01", + "quotaId": "Internal_2014-09-01", + "spendingLimit": "Off" + }, + "authorizationSource": "Bypassed", + "managedByTenants": [ + { + "tenantId": "8f70baf1-1f6e-46a2-a1ff-238dac1ebfb7" + } + ], + "tags": { + "tagKey1": "tagValue1", + "tagKey2": "tagValue2" + } + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/examples/GetSubscriptions.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/examples/GetSubscriptions.json new file mode 100644 index 000000000000..56bafb43289b --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/examples/GetSubscriptions.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/291bba3f-e0a5-47bc-a099-3bdcb2a50a05", + "subscriptionId": "291bba3f-e0a5-47bc-a099-3bdcb2a50a05", + "tenantId": "31c75423-32d6-4322-88b7-c478bdde4858", + "displayName": "Example Subscription", + "state": "Enabled", + "subscriptionPolicies": { + "locationPlacementId": "Internal_2014-09-01", + "quotaId": "Internal_2014-09-01", + "spendingLimit": "Off" + }, + "authorizationSource": "RoleBased", + "managedByTenants": [ + { + "tenantId": "8f70baf1-1f6e-46a2-a1ff-238dac1ebfb7" + } + ], + "tags": { + "tagKey1": "tagValue1", + "tagKey2": "tagValue2" + } + }, + { + "id": "/subscriptions/72ac930a-f34e-42d8-b06d-dc2a9e12ed71", + "subscriptionId": "72ac930a-f34e-42d8-b06d-dc2a9e12ed71", + "tenantId": "2a0ff0de-96b2-4859-bb7c-a430d07a3e0c", + "displayName": "Example Subscription2", + "state": "Enabled", + "subscriptionPolicies": { + "locationPlacementId": "Internal_2014-09-01", + "quotaId": "Internal_2014-09-01", + "spendingLimit": "Off" + }, + "authorizationSource": "RoleBased", + "managedByTenants": [ + { + "tenantId": "8f70baf1-1f6e-46a2-a1ff-238dac1ebfb7" + }, + { + "tenantId": "f7fb6af2-321d-47c8-9c0f-b0239eaad39a" + } + ], + "tags": { + "tagKey1": "tagValue1", + "tagKey2": "tagValue2" + } + } + ], + "nextLink": "..." + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/examples/GetTenants.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/examples/GetTenants.json new file mode 100644 index 000000000000..ec04256a4cdc --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/examples/GetTenants.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/tenants/a70a1586-9c4a-4373-b907-1d310660dbd1", + "tenantId": "a70a1586-9c4a-4373-b907-1d310660dbd1", + "countryCode": "US", + "displayName": "Test_Test_aad50", + "domains": [ + "aad50.ccsctp.net" + ], + "tenantCategory": "ManagedBy", + "defaultDomain": "aad50.ccsctp.net", + "tenantType": "AAD" + }, + { + "id": "/tenants/83abe5cd-bcc3-441a-bd86-e6a75360cecc", + "tenantId": "83abe5cd-bcc3-441a-bd86-e6a75360cecc", + "countryCode": "US", + "displayName": "Contoso Corp.", + "domains": [ + "auxteststagemanual.ccsctp.net" + ], + "tenantCategory": "Home", + "defaultDomain": "auxteststagemanual.ccsctp.net", + "tenantType": "AAD" + }, + { + "id": "/tenants/daea2e9b-847b-4c93-850d-2aa6f2d7af33", + "tenantId": "daea2e9b-847b-4c93-850d-2aa6f2d7af33", + "countryCode": "US", + "displayName": "TEST_TEST_RDV", + "domains": [ + "rdvmohoro.ccsctp.net", + "rdvmohoro.mail.ccsctp.net", + "rdvmohoro.com" + ], + "tenantCategory": "ProjectedBy", + "defaultDomain": "rdvmohoro.ccsctp.net", + "tenantType": "AAD", + "tenantBrandingLogoUrl": "logo1.logo.rdvmohoro.com" + } + ], + "nextLink": "..." + } + } + } +} diff --git a/specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/subscriptions.json b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/subscriptions.json new file mode 100644 index 000000000000..ee5d51274e47 --- /dev/null +++ b/specification/resources/resource-manager/Microsoft.Resources/stable/2020-01-01/subscriptions.json @@ -0,0 +1,587 @@ +{ + "swagger": "2.0", + "info": { + "title": "SubscriptionClient", + "version": "2020-01-01", + "description": "All resource groups and resources exist within subscriptions. These operation enable you get information about your subscriptions and tenants. A tenant is a dedicated instance of Azure Active Directory (Azure AD) for your organization." + }, + "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": { + "/providers/Microsoft.Resources/operations": { + "get": { + "tags": [ + "Operations" + ], + "operationId": "Operations_List", + "description": "Lists all of the available Microsoft.Resources REST API operations.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/locations": { + "get": { + "tags": [ + "Subscriptions" + ], + "operationId": "Subscriptions_ListLocations", + "summary": "Gets all available geo-locations.", + "description": "This operation provides all the locations that are available for resource providers; however, each resource provider may support a subset of this list.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of locations.", + "schema": { + "$ref": "#/definitions/LocationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Get locations with a subscription id": { + "$ref": "./examples/GetLocations.json" + } + } + } + }, + "/subscriptions/{subscriptionId}": { + "get": { + "tags": [ + "Subscriptions" + ], + "operationId": "Subscriptions_Get", + "description": "Gets details about a specified subscription.", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns information about the subscription.", + "schema": { + "$ref": "#/definitions/Subscription" + } + } + }, + "x-ms-examples": { + "Get a single subscription.": { + "$ref": "./examples/GetSubscription.json" + } + } + } + }, + "/subscriptions": { + "get": { + "tags": [ + "Subscriptions" + ], + "operationId": "Subscriptions_List", + "description": "Gets all subscriptions for a tenant.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of subscriptions.", + "schema": { + "$ref": "#/definitions/SubscriptionListResult" + } + } + }, + "x-ms-examples": { + "Get all subscriptions.": { + "$ref": "./examples/GetSubscriptions.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/tenants": { + "get": { + "tags": [ + "Tenants" + ], + "operationId": "Tenants_List", + "description": "Gets the tenants for your account.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Returns an array of tenants.", + "schema": { + "$ref": "#/definitions/TenantListResult" + } + } + }, + "x-ms-examples": { + "Get all tenants.": { + "$ref": "./examples/GetTenants.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "PairedRegion": { + "description": "Information regarding paired region.", + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the paired region." + }, + "id": { + "readOnly": true, + "type": "string", + "description": "The fully qualified ID of the location. For example, /subscriptions/00000000-0000-0000-0000-000000000000/locations/westus." + }, + "subscriptionId": { + "readOnly": true, + "type": "string", + "description": "The subscription ID." + } + } + }, + "LocationMetadata": { + "description": "Location metadata information", + "properties": { + "regionType": { + "readOnly": true, + "type": "string", + "description": "The type of the region.", + "enum": [ + "Physical", + "Logical" + ], + "x-ms-enum": { + "name": "RegionType", + "modelAsString": true + } + }, + "regionCategory": { + "readOnly": true, + "type": "string", + "description": "The category of the region.", + "enum": [ + "Recommended", + "Other" + ], + "x-ms-enum": { + "name": "RegionCategory", + "modelAsString": true + } + }, + "geographyGroup": { + "readOnly": true, + "type": "string", + "description": "The geography group of the location." + }, + "longitude": { + "readOnly": true, + "type": "string", + "description": "The longitude of the location." + }, + "latitude": { + "readOnly": true, + "type": "string", + "description": "The latitude of the location." + }, + "physicalLocation": { + "readOnly": true, + "type": "string", + "description": "The physical location of the Azure location." + }, + "pairedRegion": { + "type": "array", + "description": "The regions paired to this region.", + "items": { + "$ref": "#/definitions/PairedRegion" + } + } + } + }, + "Location": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The fully qualified ID of the location. For example, /subscriptions/00000000-0000-0000-0000-000000000000/locations/westus." + }, + "subscriptionId": { + "readOnly": true, + "type": "string", + "description": "The subscription ID." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The location name." + }, + "displayName": { + "readOnly": true, + "type": "string", + "description": "The display name of the location." + }, + "regionalDisplayName": { + "readOnly": true, + "type": "string", + "description": "The display name of the location and its region." + }, + "metadata": { + "description": "Metadata of the location, such as lat/long, paired region, and others.", + "$ref": "#/definitions/LocationMetadata" + } + }, + "description": "Location information." + }, + "LocationListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Location" + }, + "description": "An array of locations." + } + }, + "description": "Location list operation response." + }, + "Subscription": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The fully qualified ID for the subscription. For example, /subscriptions/00000000-0000-0000-0000-000000000000." + }, + "subscriptionId": { + "readOnly": true, + "type": "string", + "description": "The subscription ID." + }, + "displayName": { + "readOnly": true, + "type": "string", + "description": "The subscription display name." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The subscription tenant ID." + }, + "state": { + "readOnly": true, + "type": "string", + "description": "The subscription state. Possible values are Enabled, Warned, PastDue, Disabled, and Deleted.", + "enum": [ + "Enabled", + "Warned", + "PastDue", + "Disabled", + "Deleted" + ], + "x-ms-enum": { + "name": "SubscriptionState", + "modelAsString": false + } + }, + "subscriptionPolicies": { + "$ref": "#/definitions/SubscriptionPolicies", + "description": "The subscription policies." + }, + "authorizationSource": { + "type": "string", + "description": "The authorization source of the request. Valid values are one or more combinations of Legacy, RoleBased, Bypassed, Direct and Management. For example, 'Legacy, RoleBased'." + }, + "managedByTenants": { + "type": "array", + "items": { + "$ref": "#/definitions/ManagedByTenant" + }, + "description": "An array containing the tenants managing the subscription." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string", + "description": "The additional properties. " + }, + "description": "The tags attached to the subscription." + } + }, + "description": "Subscription information." + }, + "SubscriptionPolicies": { + "properties": { + "locationPlacementId": { + "readOnly": true, + "type": "string", + "description": "The subscription location placement ID. The ID indicates which regions are visible for a subscription. For example, a subscription with a location placement Id of Public_2014-09-01 has access to Azure public regions." + }, + "quotaId": { + "readOnly": true, + "type": "string", + "description": "The subscription quota ID." + }, + "spendingLimit": { + "readOnly": true, + "type": "string", + "description": "The subscription spending limit.", + "enum": [ + "On", + "Off", + "CurrentPeriodOff" + ], + "x-ms-enum": { + "name": "spendingLimit", + "modelAsString": false + } + } + }, + "description": "Subscription policies." + }, + "ManagedByTenant": { + "properties": { + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of the managing tenant. This is a GUID." + } + }, + "description": "Information about a tenant managing the subscription." + }, + "SubscriptionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Subscription" + }, + "description": "An array of subscriptions." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of results." + } + }, + "required": [ + "nextLink" + ], + "description": "Subscription list operation response." + }, + "TenantIdDescription": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The fully qualified ID of the tenant. For example, /tenants/00000000-0000-0000-0000-000000000000." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID. For example, 00000000-0000-0000-0000-000000000000." + }, + "tenantCategory": { + "readOnly": true, + "type": "string", + "description": "Category of the tenant.", + "enum": [ + "Home", + "ProjectedBy", + "ManagedBy" + ], + "x-ms-enum": { + "name": "TenantCategory", + "modelAsString": false + } + }, + "country": { + "readOnly": true, + "type": "string", + "description": "Country/region name of the address for the tenant." + }, + "countryCode": { + "readOnly": true, + "type": "string", + "description": "Country/region abbreviation for the tenant." + }, + "displayName": { + "readOnly": true, + "type": "string", + "description": "The display name of the tenant." + }, + "domains": { + "readOnly": true, + "type": "array", + "items": { + "type": "string", + "description": "The domain name for a tenant." + }, + "description": "The list of domains for the tenant." + }, + "defaultDomain": { + "readOnly": true, + "type": "string", + "description": "The default domain for the tenant." + }, + "tenantType": { + "readOnly": true, + "type": "string", + "description": "The tenant type. Only available for 'Home' tenant category." + }, + "tenantBrandingLogoUrl": { + "readOnly": true, + "type": "string", + "description": "The tenant's branding logo URL. Only available for 'Home' tenant category." + } + }, + "description": "Tenant Id information." + }, + "TenantListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TenantIdDescription" + }, + "description": "An array of tenants." + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "required": [ + "nextLink" + ], + "description": "Tenant Ids information." + }, + "Operation": { + "description": "Microsoft.Resources 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.Resources", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed: Profile, endpoint, etc.", + "type": "string" + }, + "operation": { + "description": "Operation type: Read, write, delete, etc.", + "type": "string" + }, + "description": { + "description": "Description of the operation.", + "type": "string" + } + } + } + } + }, + "OperationListResult": { + "description": "Result of the request to list Microsoft.Resources 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.Resources operations." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the target subscription.", + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for the operation.", + "x-ms-parameter-location": "client" + } + } +} 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 82d30ad10387..6a3432f615ea 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 @@ -1606,16 +1606,41 @@ "type": "string", "description": "The identity type.", "enum": [ - "SystemAssigned" + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" ], "x-ms-enum": { "name": "ResourceIdentityType", "modelAsString": false } + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/userAssignedResourceIdentity" + }, + "description": "The list of user identities associated with the resource. The user identity dictionary key references will be resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." } }, "description": "Identity for the resource." }, + "userAssignedResourceIdentity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id of user assigned identity." + } + }, + "description": "Represents the user assigned identity that is contained within the UserAssignedIdentities dictionary on ResourceIdentity" + }, "Resource": { "properties": { "id": { diff --git a/specification/resources/resource-manager/readme.go.md b/specification/resources/resource-manager/readme.go.md index f1bbaf275a71..4a49cd9c9b42 100644 --- a/specification/resources/resource-manager/readme.go.md +++ b/specification/resources/resource-manager/readme.go.md @@ -43,6 +43,7 @@ batch: - tag: package-resources-2016-07 - tag: package-resources-2016-02 - tag: package-resources-2015-11 + - tag: package-subscriptions-2019-11 - tag: package-subscriptions-2019-06 - tag: package-subscriptions-2018-06 - tag: package-subscriptions-2016-06 @@ -275,6 +276,16 @@ namespace: resources output-folder: $(go-sdk-folder)/services/resources/mgmt/2015-11-01/resources ``` +### Tag: package-subscriptions-2019-11 and go + +These settings apply only when `--tag=package-subscriptions-2019-11 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-subscriptions-2019-11' && $(go) +namespace: subscriptions +output-folder: $(go-sdk-folder)/services/resources/mgmt/2019-11-01/subscriptions +``` + ### Tag: package-subscriptions-2019-06 and go These settings apply only when `--tag=package-subscriptions-2019-06 --go` is specified on the command line. diff --git a/specification/resources/resource-manager/readme.java.md b/specification/resources/resource-manager/readme.java.md index e38997b8144f..3f11f6b2e9f2 100644 --- a/specification/resources/resource-manager/readme.java.md +++ b/specification/resources/resource-manager/readme.java.md @@ -20,6 +20,7 @@ Generate all API versions currently shipped for this package batch: - tag: package-features-2015-12 - tag: package-locks-2016-09 + - tag: package-managedapplications-2019-07 - tag: package-policy-2019-09 - tag: package-policy-2019-06 - tag: package-policy-2019-01 @@ -37,6 +38,7 @@ batch: - tag: package-subscriptions-2018-06 - tag: package-subscriptions-2016-06 ``` +``` ### Tag: package-features-2015-12 and java @@ -66,6 +68,20 @@ generate-interface: true fconfig: '{"moduleName": "Locks"}' ``` +### Tag: package-managedapplications-2019-07 and java + +These settings apply only when `--tag=package-managedapplications-2019-07 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-managedapplications-2019-07' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.managedapplications.v2019_07_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/managedapplications/mgmt-v2019_07_01 +regenerate-manager: true +generate-interface: true +fconfig: '{"moduleName": "ManagedApplications"}' +``` + ### Tag: package-policy-2019-09 and java These settings apply only when `--tag=package-policy-2019-09 --java` is specified on the command line. diff --git a/specification/resources/resource-manager/readme.md b/specification/resources/resource-manager/readme.md index 467809e0faa9..32aea908a345 100644 --- a/specification/resources/resource-manager/readme.md +++ b/specification/resources/resource-manager/readme.md @@ -45,7 +45,7 @@ tag: package-resources-2019-10 ``` ``` yaml $(package-subscriptions) -tag: package-subscriptions-2019-06 +tag: package-subscriptions-2019-11 ``` ``` yaml $(package-links) @@ -57,19 +57,19 @@ tag: package-managedapplications-2018-06 ``` ``` yaml $(package-deploymentscripts) -tag: package-2019-11 +tag: package-deploymentscripts-2019-10-preview ``` +### Tag: package-subscriptions-2020-01 -### Tag: package-2019-11 +These settings apply only when `--tag=package-subscriptions-2020-01` is specified on the command line. -These settings apply only when `--tag=package-2019-11` is specified on the command line. - -```yaml $(tag) == 'package-2019-11' +```yaml $(tag) == 'package-subscriptions-2020-01' input-file: - - Microsoft.Resources/stable/2019-11-01/subscriptions.json + - Microsoft.Resources/stable/2020-01-01/subscriptions.json ``` -### Tag: package-resources-2019-10-preview + +### Tag: package-deploymentscripts-2019-10-preview These settings apply only when `--tag=package-deploymentscripts-2019-10-preview` is specified on the command line. @@ -358,6 +358,15 @@ input-file: - Microsoft.Resources/stable/2015-11-01/resources.json ``` +### Tag: package-subscriptions-2019-11 + +These settings apply only when `--tag=package-subscriptions-2019-11` is specified on the command line. + +``` yaml $(tag) == 'package-subscriptions-2019-11' +input-file: +- Microsoft.Resources/stable/2019-11-01/subscriptions.json +``` + ### Tag: package-subscriptions-2019-06 These settings apply only when `--tag=package-subscriptions-2019-06` is specified on the command line. @@ -475,6 +484,10 @@ directive: from: resources.json where: $.definitions.GenericResource.properties reason: managedBy is a top level property + - suppress: BodyTopLevelProperties + from: resources.json + where: $.definitions.GenericResourceExpanded.properties + reason: createdTime,changedTime & provisioningState are top-level properties - suppress: BodyTopLevelProperties from: resources.json where: $.definitions.TagDetails.properties @@ -531,6 +544,13 @@ directive: suppress: OperationsAPIImplementation where: $.paths reason: OperationsAPI will come from Resources + - from: deploymentScripts.json + suppress: R3006 #BodyTopLevelProperties + where: + - $.definitions.DeploymentScript.properties + - $.definitions.AzureCliScript.properties + - $.definitions.AzurePowerShellScript.properties + reason: Currently systemData is not allowed ``` --- @@ -553,6 +573,7 @@ swagger-to-sdk: - python ./scripts/multiapi_init_gen.py azure-mgmt-resource#resources - python ./scripts/multiapi_init_gen.py azure-mgmt-resource#subscriptions - python ./scripts/multiapi_init_gen.py azure-mgmt-resource#links + - python ./scripts/multiapi_init_gen.py azure-mgmt-resource#deploymentscripts - repo: azure-sdk-for-java - repo: azure-sdk-for-go - repo: azure-sdk-for-node @@ -580,6 +601,7 @@ batch: - package-subscriptions: true - package-links: true - package-managedapplications: true + - package-deploymentscripts: true ``` ### Tag: profile-hybrid-2019-03-01 @@ -608,7 +630,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: - - $(this-folder)/Microsoft.Resources/stable/2019-11-01/subscriptions.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.Features/stable/2015-12-01/features.json - $(this-folder)/Microsoft.Authorization/stable/2016-09-01/locks.json @@ -647,6 +669,7 @@ input-file: - $(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 diff --git a/specification/resources/resource-manager/readme.python.md b/specification/resources/resource-manager/readme.python.md index 2a224e187743..e000118f5bbd 100644 --- a/specification/resources/resource-manager/readme.python.md +++ b/specification/resources/resource-manager/readme.python.md @@ -2,7 +2,7 @@ These settings apply only when `--python` is specified on the command line. -```yaml $(python) +```yaml !$(track2) python: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION @@ -14,11 +14,18 @@ python: debug: true ``` +``` yaml $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-resource +no-namespace-folders: true +``` + ### Python multi-api Generate all API versions currently shipped for this package -```yaml $(python) && $(multiapi) +```yaml $(multiapi) && !$(track2) batch: - tag: package-features-2015-12 - tag: package-links-2016-09 @@ -45,9 +52,53 @@ batch: - tag: package-resources-2017-05 - tag: package-resources-2016-09 - tag: package-resources-2016-02 + - tag: package-subscriptions-2019-11 - tag: package-subscriptions-2019-06 - tag: package-subscriptions-2018-06 - tag: package-subscriptions-2016-06 + - tag: package-deploymentscripts-2019-10-preview +``` + +```yaml $(multiapi) && $(track2) +clear-output-folder: true +batch: + - tag: package-features-2015-12 + - tag: package-links-2016-09 + - tag: package-locks-2016-09 + - tag: package-locks-2015-01 + - tag: package-managedapplications-2018-06 + - tag: package-policy-2019-09 + - tag: package-policy-2019-06 + - tag: package-policy-2019-01 + - tag: package-policy-2018-05 + - tag: package-policy-2018-03 + - tag: package-policy-2017-06 + - tag: package-policy-2016-12 + - tag: package-policy-2016-04 + - tag: package-policy-2015-10 + - tag: package-resources-2019-10 + - tag: package-resources-2019-08 + - tag: package-resources-2019-07 + - tag: package-resources-2019-0510 + - tag: package-resources-2019-05 + - tag: package-resources-2019-03 + - tag: package-resources-2018-05 + - tag: package-resources-2018-02 + - tag: package-resources-2017-05 + - tag: package-resources-2016-09 + - tag: package-resources-2016-02 + - tag: package-subscriptions-2019-11 + - tag: package-subscriptions-2019-06 + - tag: package-subscriptions-2018-06 + - tag: package-subscriptions-2016-06 + - tag: package-deploymentscripts-2019-10-preview + - multiapiscript: true +``` + +``` yaml $(multiapiscript) +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/ +clear-output-folder: false +perform-load: false ``` ### Tag: package-features-2015-12 and python @@ -55,7 +106,9 @@ batch: These settings apply only when `--tag=package-features-2015-12 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-features-2015-12' && $(python) +``` yaml $(tag) == 'package-features-2015-12' +namespace: azure.mgmt.resource.features.v2015_12_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/features/v2015_12_01 python: namespace: azure.mgmt.resource.features.v2015_12_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/features/v2015_12_01 @@ -66,7 +119,9 @@ python: These settings apply only when `--tag=package-links-2016-09 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-links-2016-09' && $(python) +``` yaml $(tag) == 'package-links-2016-09' +namespace: azure.mgmt.resource.links.v2016_09_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/links/v2016_09_01 python: namespace: azure.mgmt.resource.links.v2016_09_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/links/v2016_09_01 @@ -77,7 +132,9 @@ python: These settings apply only when `--tag=package-locks-2016-09 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-locks-2016-09' && $(python) +``` yaml $(tag) == 'package-locks-2016-09' +namespace: azure.mgmt.resource.locks.v2016_09_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/locks/v2016_09_01 python: namespace: azure.mgmt.resource.locks.v2016_09_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/locks/v2016_09_01 @@ -88,7 +145,9 @@ python: These settings apply only when `--tag=package-locks-2015-01 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-locks-2015-01' && $(python) +``` yaml $(tag) == 'package-locks-2015-01' +namespace: azure.mgmt.resource.locks.v2015_01_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/locks/v2015_01_01 python: namespace: azure.mgmt.resource.locks.v2015_01_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/locks/v2015_01_01 @@ -99,7 +158,9 @@ python: These settings apply only when `--tag=package-managedapplications-2018-06 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-managedapplications-2018-06' && $(python) +``` yaml $(tag) == 'package-managedapplications-2018-06' +namespace: azure.mgmt.resource.managedapplications +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/managedapplications python: namespace: azure.mgmt.resource.managedapplications output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/managedapplications @@ -110,7 +171,9 @@ python: These settings apply only when `--tag=package-policy-2019-09 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-policy-2019-09' && $(python) +``` yaml $(tag) == 'package-policy-2019-09' +namespace: azure.mgmt.resource.policy.v2019_09_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2019_09_01 python: namespace: azure.mgmt.resource.policy.v2019_09_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2019_09_01 @@ -121,7 +184,9 @@ python: These settings apply only when `--tag=package-policy-2019-06 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-policy-2019-06' && $(python) +``` yaml $(tag) == 'package-policy-2019-06' +namespace: azure.mgmt.resource.policy.v2019_06_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2019_06_01 python: namespace: azure.mgmt.resource.policy.v2019_06_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2019_06_01 @@ -132,7 +197,9 @@ python: These settings apply only when `--tag=package-policy-2019-01 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-policy-2019-01' && $(python) +``` yaml $(tag) == 'package-policy-2019-01' +namespace: azure.mgmt.resource.policy.v2019_01_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2019_01_01 python: namespace: azure.mgmt.resource.policy.v2019_01_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2019_01_01 @@ -143,7 +210,9 @@ python: These settings apply only when `--tag=package-policy-2018-05 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-policy-2018-05' && $(python) +``` yaml $(tag) == 'package-policy-2018-05' +namespace: azure.mgmt.resource.policy.v2018_05_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2018_05_01 python: namespace: azure.mgmt.resource.policy.v2018_05_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2018_05_01 @@ -154,7 +223,9 @@ python: These settings apply only when `--tag=package-policy-2018-03 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-policy-2018-03' && $(python) +``` yaml $(tag) == 'package-policy-2018-03' +namespace: azure.mgmt.resource.policy.v2018_03_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2018_03_01 python: namespace: azure.mgmt.resource.policy.v2018_03_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2018_03_01 @@ -165,7 +236,9 @@ python: These settings apply only when `--tag=package-policy-2017-06 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-policy-2017-06' && $(python) +``` yaml $(tag) == 'package-policy-2017-06' +namespace: azure.mgmt.resource.policy.v2017_06_01_preview +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2017_06_01_preview python: namespace: azure.mgmt.resource.policy.v2017_06_01_preview output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2017_06_01_preview @@ -176,7 +249,9 @@ python: These settings apply only when `--tag=package-policy-2016-12 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-policy-2016-12' && $(python) +``` yaml $(tag) == 'package-policy-2016-12' +namespace: azure.mgmt.resource.policy.v2016_12_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2016_12_01 python: namespace: azure.mgmt.resource.policy.v2016_12_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2016_12_01 @@ -187,7 +262,9 @@ python: These settings apply only when `--tag=package-policy-2016-04 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-policy-2016-04' && $(python) +``` yaml $(tag) == 'package-policy-2016-04' +namespace: azure.mgmt.resource.policy.v2016_04_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2016_04_01 python: namespace: azure.mgmt.resource.policy.v2016_04_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2016_04_01 @@ -198,7 +275,9 @@ python: These settings apply only when `--tag=package-policy-2015-10 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-policy-2015-10' && $(python) +``` yaml $(tag) == 'package-policy-2015-10' +namespace: azure.mgmt.resource.policy.v2015_10_01_preview +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2015_10_01_preview python: namespace: azure.mgmt.resource.policy.v2015_10_01_preview output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/policy/v2015_10_01_preview @@ -209,7 +288,9 @@ python: These settings apply only when `--tag=package-resources-2019-10 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-resources-2019-10' && $(python) +``` yaml $(tag) == 'package-resources-2019-10' +namespace: azure.mgmt.resource.resources.v2019_10_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2019_10_01 python: namespace: azure.mgmt.resource.resources.v2019_10_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2019_10_01 @@ -220,7 +301,9 @@ python: These settings apply only when `--tag=package-resources-2019-08 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-resources-2019-08' && $(python) +``` yaml $(tag) == 'package-resources-2019-08' +namespace: azure.mgmt.resource.resources.v2019_08_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2019_08_01 python: namespace: azure.mgmt.resource.resources.v2019_08_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2019_08_01 @@ -231,7 +314,9 @@ python: These settings apply only when `--tag=package-resources-2019-07 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-resources-2019-07' && $(python) +``` yaml $(tag) == 'package-resources-2019-07' +namespace: azure.mgmt.resource.resources.v2019_07_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2019_07_01 python: namespace: azure.mgmt.resource.resources.v2019_07_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2019_07_01 @@ -242,7 +327,9 @@ python: These settings apply only when `--tag=package-resources-2019-0510 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-resources-2019-0510' && $(python) +``` yaml $(tag) == 'package-resources-2019-0510' +namespace: azure.mgmt.resource.resources.v2019_05_10 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2019_05_10 python: namespace: azure.mgmt.resource.resources.v2019_05_10 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2019_05_10 @@ -253,7 +340,9 @@ python: These settings apply only when `--tag=package-resources-2019-05 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-resources-2019-05' && $(python) +``` yaml $(tag) == 'package-resources-2019-05' +namespace: azure.mgmt.resource.resources.v2019_05_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2019_05_01 python: namespace: azure.mgmt.resource.resources.v2019_05_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2019_05_01 @@ -264,7 +353,9 @@ python: These settings apply only when `--tag=package-resources-2018-05 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-resources-2018-05' && $(python) +``` yaml $(tag) == 'package-resources-2018-05' +namespace: azure.mgmt.resource.resources.v2018_05_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2018_05_01 python: namespace: azure.mgmt.resource.resources.v2018_05_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2018_05_01 @@ -275,7 +366,9 @@ python: These settings apply only when `--tag=package-resources-2018-02 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-resources-2018-02' && $(python) +``` yaml $(tag) == 'package-resources-2018-02' +namespace: azure.mgmt.resource.resources.v2018_02_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2018_02_01 python: namespace: azure.mgmt.resource.resources.v2018_02_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2018_02_01 @@ -286,7 +379,9 @@ python: These settings apply only when `--tag=package-resources-2017-05 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-resources-2017-05' && $(python) +``` yaml $(tag) == 'package-resources-2017-05' +namespace: azure.mgmt.resource.resources.v2017_05_10 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2017_05_10 python: namespace: azure.mgmt.resource.resources.v2017_05_10 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2017_05_10 @@ -297,7 +392,9 @@ python: These settings apply only when `--tag=package-resources-2016-09 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-resources-2016-09' && $(python) +``` yaml $(tag) == 'package-resources-2016-09' +namespace: azure.mgmt.resource.resources.v2016_09_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2016_09_01 python: namespace: azure.mgmt.resource.resources.v2016_09_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2016_09_01 @@ -308,18 +405,35 @@ python: These settings apply only when `--tag=package-resources-2016-02 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-resources-2016-02' && $(python) +``` yaml $(tag) == 'package-resources-2016-02' +namespace: azure.mgmt.resource.resources.v2016_02_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2016_02_01 python: namespace: azure.mgmt.resource.resources.v2016_02_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/resources/v2016_02_01 ``` +### Tag: package-subscriptions-2019-11 and python + +These settings apply only when `--tag=package-subscriptions-2019-11 --python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-subscriptions-2019-11' +namespace: azure.mgmt.resource.subscriptions.v2019_11_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/subscriptions/v2019_11_01 +python: + namespace: azure.mgmt.resource.subscriptions.v2019_11_01 + output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/subscriptions/v2019_11_01 +``` + ### Tag: package-subscriptions-2019-06 and python These settings apply only when `--tag=package-subscriptions-2019-06 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-subscriptions-2019-06' && $(python) +``` yaml $(tag) == 'package-subscriptions-2019-06' +namespace: azure.mgmt.resource.subscriptions.v2019_06_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/subscriptions/v2019_06_01 python: namespace: azure.mgmt.resource.subscriptions.v2019_06_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/subscriptions/v2019_06_01 @@ -330,7 +444,9 @@ python: These settings apply only when `--tag=package-subscriptions-2018-06 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-subscriptions-2018-06' && $(python) +``` yaml $(tag) == 'package-subscriptions-2018-06' +namespace: azure.mgmt.resource.subscriptions.v2018_06_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/subscriptions/v2018_06_01 python: namespace: azure.mgmt.resource.subscriptions.v2018_06_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/subscriptions/v2018_06_01 @@ -341,8 +457,23 @@ python: These settings apply only when `--tag=package-subscriptions-2016-06 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-subscriptions-2016-06' && $(python) +``` yaml $(tag) == 'package-subscriptions-2016-06' +namespace: azure.mgmt.resource.subscriptions.v2016_06_01 +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/subscriptions/v2016_06_01 python: namespace: azure.mgmt.resource.subscriptions.v2016_06_01 output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/subscriptions/v2016_06_01 ``` + +### Tag: package-deploymentscripts-2019-10-preview and python + +These settings apply only when `--tag=package-deploymentscripts-2019-10-preview` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(tag) == 'package-deploymentscripts-2019-10-preview' +namespace: azure.mgmt.resource.deploymentscripts.v2019_10_preview +output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/deploymentscripts/v2019_10_preview +python: + namespace: azure.mgmt.resource.deploymentscripts.v2019_10_preview + output-folder: $(python-sdks-folder)/resources/azure-mgmt-resource/azure/mgmt/resource/deploymentscripts/v2019_10_preview +``` diff --git a/specification/search/data-plane/autorest-custom-directives.md b/specification/search/data-plane/Azure.Search/autorest-custom-directives.md similarity index 100% rename from specification/search/data-plane/autorest-custom-directives.md rename to specification/search/data-plane/Azure.Search/autorest-custom-directives.md diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchIndexAutocompleteDocumentsGet.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchIndexAutocompleteDocumentsGet.json new file mode 100644 index 000000000000..6591d64ddb00 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchIndexAutocompleteDocumentsGet.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2019-05-06-Preview", + "autocompleteMode": "oneTerm", + "search": "washington medic", + "suggesterName": "sg", + "filter": "search.in(docId,'101,102,105')", + "fuzzy": false, + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": 80, + "searchFields": [ + "title", + "description" + ], + "top": 10 + }, + "responses": { + "200": { + "body": [ + { + "text": "medicaid", + "queryPlusText": "washington medicaid" + }, + { + "text": "medicare", + "queryPlusText": "washington medicare" + }, + { + "text": "medicine", + "queryPlusText": "washington medicine" + } + ] + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchIndexAutocompleteDocumentsPost.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchIndexAutocompleteDocumentsPost.json new file mode 100644 index 000000000000..1fc67855be62 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchIndexAutocompleteDocumentsPost.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2019-05-06-Preview", + "autocompleteRequest": { + "autocompleteMode": "oneTerm", + "search": "washington medic", + "suggesterName": "sg", + "filter": "search.in(docId,'101,102,105')", + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": 80, + "searchFields": "title,description", + "top": 10 + } + }, + "responses": { + "200": { + "body": [ + { + "text": "medicaid", + "queryPlusText": "washington medicaid" + }, + { + "text": "medicare", + "queryPlusText": "washington medicare" + }, + { + "text": "medicine", + "queryPlusText": "washington medicine" + } + ] + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchIndexCountDocuments.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchIndexCountDocuments.json new file mode 100644 index 000000000000..7e18dd15ea82 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchIndexCountDocuments.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2019-05-06-Preview" + }, + "responses": { + "200": { + "body": 427 + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchIndexGetDocument.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchIndexGetDocument.json new file mode 100644 index 000000000000..45c7f6cd7c69 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchIndexGetDocument.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2019-05-06-Preview", + "key": "1", + "$select": [ + "docId", + "title", + "description" + ] + }, + "responses": { + "200": { + "body": { + "description": "Cheapest hotel in town", + "docId": "1", + "title": "Nice Hotel" + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchIndexIndexDocuments.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchIndexIndexDocuments.json new file mode 100644 index 000000000000..af7298406b90 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchIndexIndexDocuments.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2019-05-06-Preview", + "batch": { + "value": [ + { + "@search.action": "upload", + "docId": "1", + "title": "Fancy Stay", + "description": "Best hotel in town" + }, + { + "@search.action": "merge", + "docId": "2", + "title": "Roach Motel" + }, + { + "@search.action": "mergeOrUpload", + "docId": "3", + "title": "Econo Motel" + }, + { + "@search.action": "delete", + "docId": "4" + } + ] + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "key": "1", + "status": true, + "errorMessage": null, + "statusCode": 201 + }, + { + "key": "2", + "status": true, + "errorMessage": null, + "statusCode": 200 + }, + { + "key": "3", + "status": true, + "errorMessage": null, + "statusCode": 200 + }, + { + "key": "4", + "status": true, + "errorMessage": null, + "statusCode": 200 + } + ] + } + }, + "207": { + "body": { + "value": [ + { + "key": "1", + "status": true, + "errorMessage": null, + "statusCode": 200 + }, + { + "key": "2", + "status": false, + "errorMessage": "Document not found.", + "statusCode": 404 + }, + { + "key": "3", + "status": true, + "errorMessage": null, + "statusCode": 200 + }, + { + "key": "4", + "status": true, + "errorMessage": null, + "statusCode": 200 + } + ] + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchIndexSearchDocumentsGet.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchIndexSearchDocumentsGet.json new file mode 100644 index 000000000000..b12b31af42f0 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchIndexSearchDocumentsGet.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2019-05-06-Preview", + "$count": true, + "facet": [ + "category,count:10,sort:count" + ], + "$filter": "rating gt 10", + "highlight": [ + "title" + ], + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": 80, + "$orderby": [ + "search.score() desc", + "rating desc" + ], + "queryType": "simple", + "scoringParameters": [ + "currentLocation--122.123,44.77233" + ], + "scoringProfile": "sp", + "search": "nice hotels", + "searchFields": [ + "title", + "description" + ], + "searchMode": "any", + "$select": [ + "docId", + "title", + "description" + ], + "$skip": 100, + "$top": 10 + }, + "responses": { + "200": { + "body": { + "@odata.count": 25, + "@search.coverage": 80, + "@search.facets": { + "category": [ + { + "count": 1, + "value": "Economy" + }, + { + "count": 1, + "value": "Luxury" + } + ] + }, + "value": [ + { + "@search.score": 1.50, + "@search.highlights": { + "title": [ + "Nice Hotel" + ] + }, + "description": "Cheapest hotel in town", + "docId": "1", + "title": "Nice Hotel" + }, + { + "@search.score": 0.70, + "@search.highlights": { + "title": [ + "Fancy Hotel" + ] + }, + "description": "Best hotel in town", + "docId": "2", + "title": "Fancy Hotel" + } + ] + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchIndexSearchDocumentsPost.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchIndexSearchDocumentsPost.json new file mode 100644 index 000000000000..ef1b72b37ed1 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchIndexSearchDocumentsPost.json @@ -0,0 +1,97 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2019-05-06-Preview", + "searchRequest": { + "count": true, + "facets": [ + "category,count:10,sort:count" + ], + "filter": "rating gt 4.0", + "highlight": "title", + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": null, + "orderby": "search.score() desc,rating desc", + "queryType": "simple", + "scoringParameters": [ + "currentLocation--122.123,44.77233" + ], + "scoringProfile": "sp", + "search": "nice hotels", + "searchFields": "title,description", + "searchMode": "any", + "select": "docId,title,description", + "skip": 0, + "top": 10 + } + }, + "responses": { + "200": { + "body": { + "@odata.count": 25, + "@search.facets": { + "category": [ + { + "count": 1, + "value": "Economy" + }, + { + "count": 1, + "value": "Luxury" + } + ] + }, + "@search.nextPageParameters": { + "count": true, + "facets": [ + "category,count:10,sort:count" + ], + "filter": "rating gt 4.0", + "highlight": "title", + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": null, + "orderby": "search.score() desc,rating desc", + "queryType": "simple", + "scoringParameters": [ + "currentLocation--122.123,44.77233" + ], + "scoringProfile": "sp", + "search": "nice hotels", + "searchFields": "title,description", + "searchMode": "any", + "select": "docId,title,description", + "skip": 2, + "top": 8 + }, + "value": [ + { + "@search.score": 1.50, + "@search.highlights": { + "title": [ + "Nice Hotel" + ] + }, + "description": "Cheapest hotel in town", + "docId": "1", + "title": "Nice Hotel" + }, + { + "@search.score": 0.70, + "@search.highlights": { + "title": [ + "Fancy Hotel" + ] + }, + "description": "Best hotel in town", + "docId": "2", + "title": "Fancy Hotel" + } + ], + "@odata.nextLink": "https://myservice.search.windows.net/indexes('myindex')/docs/search.post.search?api-version=2019-05-06-Preview" + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchIndexSuggestDocumentsGet.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchIndexSuggestDocumentsGet.json new file mode 100644 index 000000000000..6182ee53a1c2 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchIndexSuggestDocumentsGet.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2019-05-06-Preview", + "$filter": "rating gt 10", + "fuzzy": false, + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": 80, + "$orderby": [ + "search.score() desc", + "rating desc" + ], + "search": "hote", + "searchFields": [ + "title" + ], + "suggesterName": "sg", + "$select": [ + "docId", + "title", + "description" + ], + "$top": 10 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "@search.text": "Nice Hotel", + "description": "Cheapest hotel in town", + "docId": "1", + "title": "Nice Hotel" + }, + { + "@search.text": "Fancy Hotel", + "description": "Best hotel in town", + "docId": "2", + "title": "Fancy Hotel" + } + ] + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchIndexSuggestDocumentsPost.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchIndexSuggestDocumentsPost.json new file mode 100644 index 000000000000..1a0b6390aeae --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchIndexSuggestDocumentsPost.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2019-05-06-Preview", + "suggestRequest": { + "filter": "rating gt 4.0", + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": 80, + "orderby": "rating desc", + "search": "hote", + "searchFields": "title", + "select": "docId,title,description", + "suggesterName": "sg", + "top": 10 + } + }, + "responses": { + "200": { + "body": { + "value": [ + { + "@search.text": "Nice Hotel", + "description": "Cheapest hotel in town", + "docId": "1", + "title": "Nice Hotel" + }, + { + "@search.text": "Fancy Hotel", + "description": "Best hotel in town", + "docId": "2", + "title": "Fancy Hotel" + } + ] + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateDataSource.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateDataSource.json new file mode 100644 index 000000000000..4c57337d4f95 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateDataSource.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "api-version": "2019-05-06-Preview", + "dataSource": { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": "AccountEndpoint=https://myDocDbEndpoint.documents.azure.com;AccountKey=myDocDbAuthKey;Database=myDocDbDatabaseId" + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + } + } + }, + "responses": { + "201": { + "body": { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": null + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + } + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateIndex.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateIndex.json new file mode 100644 index 000000000000..c00ad863e1eb --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateIndex.json @@ -0,0 +1,363 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "api-version": "2019-05-06-Preview", + "index": { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "key": true, + "searchable": false + }, + { + "name": "baseRate", + "type": "Edm.Double" + }, + { + "name": "description", + "type": "Edm.String", + "filterable": false, + "sortable": false, + "facetable": false + }, + { + "name": "description_fr", + "type": "Edm.String", + "filterable": false, + "sortable": false, + "facetable": false, + "analyzer": "fr.lucene" + }, + { + "name": "hotelName", + "type": "Edm.String" + }, + { + "name": "category", + "type": "Edm.String" + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "analyzer": "tagsAnalyzer" + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean" + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean" + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset" + }, + { + "name": "rating", + "type": "Edm.Int32" + }, + { + "name": "location", + "type": "Edm.GeographyPoint" + } + ], + "scoringProfiles": [ + { + "name": "geo", + "text": { + "weights": { + "hotelName": 5 + } + }, + "functions": [ + { + "type": "distance", + "boost": 5, + "fieldName": "location", + "interpolation": "logarithmic", + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenizer": "standard_v2" + } + ], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "myapplicationsecret" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": true, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "baseRate", + "type": "Edm.Double", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "description", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "description_fr", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "fr.lucene", + "synonymMaps": [] + }, + { + "name": "hotelName", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "category", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": false, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "tagsAnalyzer", + "synonymMaps": [] + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "rating", + "type": "Edm.Int32", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "location", + "type": "Edm.GeographyPoint", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + } + ], + "scoringProfiles": [ + { + "name": "geo", + "text": { + "weights": { + "hotelName": 5 + } + }, + "functions": [ + { + "type": "distance", + "boost": 5, + "fieldName": "location", + "interpolation": "logarithmic", + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenizer": "standard_v2" + } + ], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateIndexer.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateIndexer.json new file mode 100644 index 000000000000..937555eed573 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateIndexer.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "api-version": "2019-05-06-Preview", + "indexer": { + "name": "myindexer", + "description": "a cool indexer", + "dataSourceName": "mydatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + } + } + }, + "responses": { + "201": { + "body": { + "name": "myindexer", + "description": "a cool indexer", + "dataSourceName": "mydatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "fieldMappings": [], + "disabled": false + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateDataSource.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateDataSource.json new file mode 100644 index 000000000000..734adf70b9ce --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateDataSource.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "dataSourceName": "mydatasource", + "api-version": "2019-05-06-Preview", + "Prefer": "return=representation", + "dataSource": { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": "AccountEndpoint=https://myDocDbEndpoint.documents.azure.com;AccountKey=myDocDbAuthKey;Database=myDocDbDatabaseId" + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + } + } + }, + "responses": { + "200": { + "body": { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": null + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + } + } + }, + "201": { + "body": { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": null + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + } + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateIndex.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateIndex.json new file mode 100644 index 000000000000..e60268c5c8cd --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateIndex.json @@ -0,0 +1,592 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "hotels", + "allowIndexDowntime": false, + "api-version": "2019-05-06-Preview", + "Prefer": "return=representation", + "index": { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "key": true, + "searchable": false + }, + { + "name": "baseRate", + "type": "Edm.Double" + }, + { + "name": "description", + "type": "Edm.String", + "filterable": false, + "sortable": false, + "facetable": false + }, + { + "name": "description_fr", + "type": "Edm.String", + "filterable": false, + "sortable": false, + "facetable": false, + "analyzer": "fr.lucene" + }, + { + "name": "hotelName", + "type": "Edm.String" + }, + { + "name": "category", + "type": "Edm.String" + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "analyzer": "tagsAnalyzer" + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean" + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean" + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset" + }, + { + "name": "rating", + "type": "Edm.Int32" + }, + { + "name": "location", + "type": "Edm.GeographyPoint" + } + ], + "scoringProfiles": [ + { + "name": "geo", + "text": { + "weights": { + "hotelName": 5 + } + }, + "functions": [ + { + "type": "distance", + "boost": 5, + "fieldName": "location", + "interpolation": "logarithmic", + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenizer": "standard_v2" + } + ], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "responses": { + "200": { + "body": { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": true, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "baseRate", + "type": "Edm.Double", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "description", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "description_fr", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "fr.lucene", + "synonymMaps": [] + }, + { + "name": "hotelName", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "category", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": false, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "tagsAnalyzer", + "synonymMaps": [] + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "rating", + "type": "Edm.Int32", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "location", + "type": "Edm.GeographyPoint", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + } + ], + "scoringProfiles": [ + { + "name": "geo", + "text": { + "weights": { + "hotelName": 5 + } + }, + "functions": [ + { + "type": "distance", + "boost": 5, + "fieldName": "location", + "interpolation": "logarithmic", + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenizer": "standard_v2" + } + ], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "201": { + "body": { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": true, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "baseRate", + "type": "Edm.Double", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "description", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "description_fr", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "fr.lucene", + "synonymMaps": [] + }, + { + "name": "hotelName", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "category", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": false, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "tagsAnalyzer", + "synonymMaps": [] + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "rating", + "type": "Edm.Int32", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "location", + "type": "Edm.GeographyPoint", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + } + ], + "scoringProfiles": [ + { + "name": "geo", + "text": { + "weights": { + "hotelName": 5 + } + }, + "functions": [ + { + "type": "distance", + "boost": 5, + "fieldName": "location", + "interpolation": "logarithmic", + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenizer": "standard_v2" + } + ], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateIndexer.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateIndexer.json new file mode 100644 index 000000000000..7c3973b3990b --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateIndexer.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2019-05-06-Preview", + "Prefer": "return=representation", + "indexer": { + "name": "myindexer", + "description": "a cool indexer", + "dataSourceName": "mydatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + } + } + }, + "responses": { + "200": { + "body": { + "name": "myindexer", + "description": "a cool indexer", + "dataSourceName": "mydatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "fieldMappings": [], + "disabled": false + } + }, + "201": { + "body": { + "name": "myindexer", + "description": "a cool indexer", + "dataSourceName": "mydatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "fieldMappings": [], + "disabled": false + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateSkillset.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateSkillset.json new file mode 100644 index 000000000000..3fe676905293 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateSkillset.json @@ -0,0 +1,369 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "skillsetName": "demoskillset", + "api-version": "2019-05-06-Preview", + "Prefer": "return=representation", + "skillset": { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "textSplitMode": "pages", + "maximumPageLength": 4000, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ] + } + }, + "responses": { + "200": { + "body": { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "name": "#1", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ], + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7 + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "#2", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "#3", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ], + "defaultLanguageCode": null, + "textSplitMode": "pages", + "maximumPageLength": 4000 + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "#4", + "description": null, + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ], + "defaultLanguageCode": null, + "maxKeyPhraseCount": null + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "description": null, + "context": "/document", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "degreeOfParallelism": null, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ] + } + }, + "201": { + "body": { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "name": "#1", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ], + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7 + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "#2", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "#3", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ], + "defaultLanguageCode": null, + "textSplitMode": "pages", + "maximumPageLength": 4000 + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "#4", + "description": null, + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ], + "defaultLanguageCode": null, + "maxKeyPhraseCount": null + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "description": null, + "context": "/document", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "degreeOfParallelism": null, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ] + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateSynonymMap.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateSynonymMap.json new file mode 100644 index 000000000000..4e0ed87596e4 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateSynonymMap.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "synonymMapName": "mysynonymmap", + "api-version": "2019-5-06-Preview", + "Prefer": "return=representation", + "synonymMap": { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "responses": { + "200": { + "body": { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + }, + "201": { + "body": { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateSkillset.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateSkillset.json new file mode 100644 index 000000000000..e3335335eeba --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateSkillset.json @@ -0,0 +1,243 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "skillsetName": "demoskillset", + "api-version": "2019-05-06-Preview", + "Prefer": "return=representation", + "skillset": { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "textSplitMode": "pages", + "maximumPageLength": 4000, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ] + } + }, + "responses": { + "201": { + "body": { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "name": "#1", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ], + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7 + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "#2", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "#3", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ], + "defaultLanguageCode": null, + "textSplitMode": "pages", + "maximumPageLength": 4000 + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "#4", + "description": null, + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ], + "defaultLanguageCode": null, + "maxKeyPhraseCount": null + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "description": null, + "context": "/document", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "degreeOfParallelism": null, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ] + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateSynonymMap.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateSynonymMap.json new file mode 100644 index 000000000000..9214712bfeaa --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceCreateSynonymMap.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "api-version": "2019-05-06-Preview", + "synonymMap": { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": "myApplicationSecret" + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault", + "keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceDeleteDataSource.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceDeleteDataSource.json new file mode 100644 index 000000000000..d610b685463d --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceDeleteDataSource.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "dataSourceName": "mydatasource", + "api-version": "2019-05-06-Preview" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceDeleteIndex.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceDeleteIndex.json new file mode 100644 index 000000000000..09db5e63fb58 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceDeleteIndex.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "myindex", + "api-version": "2019-05-06-Preview" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceDeleteIndexer.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceDeleteIndexer.json new file mode 100644 index 000000000000..850445d5587e --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceDeleteIndexer.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2019-05-06-Preview" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceDeleteSkillset.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceDeleteSkillset.json new file mode 100644 index 000000000000..613262702d3b --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceDeleteSkillset.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "skillsetName": "demoskillset", + "api-version": "2019-05-06-Preview" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceDeleteSynonymMap.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceDeleteSynonymMap.json new file mode 100644 index 000000000000..2a2f3e2fe257 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceDeleteSynonymMap.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "synonymMapName": "mysynonymmap", + "api-version": "2019-05-06-Preview" + }, + "responses": { + "204": {}, + "404": {} + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceGetDataSource.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceGetDataSource.json new file mode 100644 index 000000000000..a0f22506e184 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceGetDataSource.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "dataSourceName": "mydatasource", + "api-version": "2019-05-06-Preview" + }, + "responses": { + "200": { + "body": { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": null + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + } + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceGetIndex.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceGetIndex.json new file mode 100644 index 000000000000..45f39b318994 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceGetIndex.json @@ -0,0 +1,244 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "hotels", + "api-version": "2019-05-06-Preview" + }, + "responses": { + "200": { + "body": { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": true, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "baseRate", + "type": "Edm.Double", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "description", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "description_fr", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "fr.lucene", + "synonymMaps": [] + }, + { + "name": "hotelName", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "category", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": false, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "tagsAnalyzer", + "synonymMaps": [] + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "rating", + "type": "Edm.Int32", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "location", + "type": "Edm.GeographyPoint", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + } + ], + "scoringProfiles": [ + { + "name": "geo", + "text": { + "weights": { + "hotelName": 5 + } + }, + "functions": [ + { + "type": "distance", + "boost": 5, + "fieldName": "location", + "interpolation": "logarithmic", + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenizer": "standard_v2" + } + ], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceGetIndexStatistics.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceGetIndexStatistics.json new file mode 100644 index 000000000000..32ba35222c9f --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceGetIndexStatistics.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "hotels", + "api-version": "2019-05-06-Preview" + }, + "responses": { + "200": { + "body": { + "documentCount": 239572, + "storageSize": 72375920 + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceGetIndexer.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceGetIndexer.json new file mode 100644 index 000000000000..c1e9c95ce323 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceGetIndexer.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2019-05-06-Preview" + }, + "responses": { + "200": { + "body": { + "name": "myindexer", + "description": "a cool indexer", + "dataSourceName": "mydatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "fieldMappings": [], + "disabled": false + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceGetIndexerStatus.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceGetIndexerStatus.json new file mode 100644 index 000000000000..2b792dca9e18 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceGetIndexerStatus.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2019-05-06-Preview" + }, + "responses": { + "200": { + "body": { + "status": "running", + "lastResult": { + "status": "success", + "errorMessage": null, + "startTime": "2014-11-26T03:37:18.853Z", + "endTime": "2014-11-26T03:37:19.012Z", + "errors": [], + "warnings": [], + "itemsProcessed": 11, + "itemsFailed": 0, + "initialTrackingState": null, + "finalTrackingState": null + }, + "executionHistory": [ + { + "status": "success", + "errorMessage": null, + "startTime": "2014-11-26T03:37:18.853Z", + "endTime": "2014-11-26T03:37:19.012Z", + "errors": [], + "warnings": [], + "itemsProcessed": 11, + "itemsFailed": 0, + "initialTrackingState": null, + "finalTrackingState": null + }, + { + "status": "transientFailure", + "errorMessage": null, + "startTime": "2014-11-26T03:28:10.125Z", + "endTime": "2014-11-26T03:28:12.007Z", + "errors": [ + { + "key": "", + "errorMessage": "Document key cannot be missing or empty.", + "statusCode": 400, + "name": null, + "details": null, + "documentationLink": null + }, + { + "key": "document id 1", + "errorMessage": "Could not read the value of column 'foo' at index '0'.", + "statusCode": 400, + "name": "DocumentExtraction.AzureBlob.MyDataSource", + "details": "The file could not be parsed.", + "documentationLink": "https://go.microsoft.com/fwlink/?linkid=2049388" + } + ], + "warnings": [ + { + "key": "document id", + "message": "A warning doesn't stop indexing, and is intended to inform you of certain interesting situations, like when a blob indexer truncates the amount of text extracted from a blob.", + "name": null, + "details": null, + "documentationLink": null + }, + { + "key": "document id 2", + "message": "Document was truncated to 50000 characters.", + "name": "Enrichment.LanguageDetectionSkill.#4", + "details": "The skill did something that didn't break anything, nonetheless something we didn't expect happened, so it might be worth double checking.", + "documentationLink": "https://go.microsoft.com/fwlink/?linkid=2099692" + } + ], + "itemsProcessed": 1, + "itemsFailed": 2, + "initialTrackingState": null, + "finalTrackingState": null + } + ], + "limits": { + "maxRunTime": "22:00:00", + "maxDocumentExtractionSize": 256000000, + "maxDocumentContentCharactersToExtract": 4000000 + } + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceGetServiceStatistics.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceGetServiceStatistics.json new file mode 100644 index 000000000000..806b89aca4b0 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceGetServiceStatistics.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "api-version": "2019-05-06-Preview" + }, + "responses": { + "200": { + "body": { + "counters": { + "documentCount": { + "usage": 7093, + "quota": 10000 + }, + "indexesCount": { + "usage": 3, + "quota": 3 + }, + "indexersCount": { + "usage": 3, + "quota": 3 + }, + "dataSourcesCount": { + "usage": 1, + "quota": 3 + }, + "storageSize": { + "usage": 914529, + "quota": 52428800 + }, + "synonymMaps": { + "usage": 2, + "quota": 3 + }, + "skillsetCount": { + "usage": 0, + "quota": 3 + } + }, + "limits": { + "maxFieldsPerIndex": 1000, + "maxFieldNestingDepthPerIndex": 10, + "maxComplexCollectionFieldsPerIndex": 100, + "maxComplexObjectsInCollectionsPerDocument": 3000 + } + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceGetSkillset.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceGetSkillset.json new file mode 100644 index 000000000000..4eeb150620a8 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceGetSkillset.json @@ -0,0 +1,135 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "skillsetName": "demoskillset", + "api-version": "2019-05-06-Preview" + }, + "responses": { + "200": { + "body": { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "name": "#1", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ], + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7 + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "#2", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "#3", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ], + "defaultLanguageCode": null, + "textSplitMode": "pages", + "maximumPageLength": 4000 + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "#4", + "description": null, + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ], + "defaultLanguageCode": null, + "maxKeyPhraseCount": null + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "description": null, + "context": "/document", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "degreeOfParallelism": null, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ] + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceGetSynonymMap.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceGetSynonymMap.json new file mode 100644 index 000000000000..38380b21884c --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceGetSynonymMap.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "synonymMapName": "mysynonymmap", + "api-version": "2019-05-06-Preview" + }, + "responses": { + "200": { + "body": { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": { + "applicationId": "00000000-0000-0000-0000-000000000000", + "applicationSecret": null + } + } + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceIndexAnalyze.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceIndexAnalyze.json new file mode 100644 index 000000000000..1d7041ba4bae --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceIndexAnalyze.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexName": "hotels", + "api-version": "2019-05-06-Preview", + "request": { + "text": "Text to analyze", + "analyzer": "standard.lucene" + } + }, + "responses": { + "200": { + "body": { + "tokens": [ + { + "token": "text", + "startOffset": 0, + "endOffset": 4, + "position": 0 + }, + { + "token": "to", + "startOffset": 5, + "endOffset": 7, + "position": 1 + }, + { + "token": "analyze", + "startOffset": 8, + "endOffset": 15, + "position": 2 + } + ] + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceListDataSources.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceListDataSources.json new file mode 100644 index 000000000000..fbc3366cf212 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceListDataSources.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "$select": "*", + "api-version": "2019-05-06-Preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": null + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + } + } + ] + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceListIndexers.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceListIndexers.json new file mode 100644 index 000000000000..136d74872340 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceListIndexers.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "$select": "*", + "api-version": "2019-05-06-Preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "myindexer", + "description": "a cool indexer", + "dataSourceName": "mydocdbdatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "fieldMappings": [], + "disabled": false + }, + { + "name": "myotherindexer", + "description": "another cool indexer", + "dataSourceName": "myblobdatasource", + "targetIndexName": "orders", + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5, + "batchSize": 15 + }, + "fieldMappings": [ + { + "sourceFieldName": "PersonName", + "targetFieldName": "FirstName", + "mappingFunction": { + "name": "extractTokenAtPosition", + "parameters": { + "delimiter": " ", + "position": 0 + } + } + }, + { + "sourceFieldName": "PersonName", + "targetFieldName": "LastName", + "mappingFunction": { + "name": "extractTokenAtPosition", + "parameters": { + "delimiter": " ", + "position": 1 + } + } + } + ], + "disabled": false + } + ] + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceListIndexes.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceListIndexes.json new file mode 100644 index 000000000000..e84f663c2105 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceListIndexes.json @@ -0,0 +1,287 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "$select": "*", + "api-version": "2019-05-06-Preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": true, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "baseRate", + "type": "Edm.Double", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "description", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "description_fr", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "fr.lucene", + "synonymMaps": [] + }, + { + "name": "hotelName", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "category", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": false, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "tagsAnalyzer", + "synonymMaps": [] + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "rating", + "type": "Edm.Int32", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "location", + "type": "Edm.GeographyPoint", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + } + ], + "scoringProfiles": [ + { + "name": "geo", + "text": { + "weights": { + "hotelName": 5 + } + }, + "functions": [ + { + "type": "distance", + "boost": 5, + "fieldName": "location", + "interpolation": "logarithmic", + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenizer": "standard_v2" + } + ], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + }, + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + }, + { + "name": "testindex", + "fields": [ + { + "name": "id", + "type": "Edm.String", + "searchable": false, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": true, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "hidden", + "type": "Edm.Double", + "searchable": false, + "filterable": true, + "retrievable": false, + "sortable": true, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + } + ], + "scoringProfiles": [], + "defaultScoringProfile": null, + "suggesters": [], + "analyzers": [], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "corsOptions": null, + "encryptionKey": null + } + ] + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceListSkillsets.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceListSkillsets.json new file mode 100644 index 000000000000..935240cc8f28 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceListSkillsets.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "$select": "*", + "api-version": "2019-05-06-Preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "name": "#1", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ], + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7 + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "#2", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "#3", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ], + "defaultLanguageCode": null, + "textSplitMode": "pages", + "maximumPageLength": 4000 + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "#4", + "description": null, + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ], + "defaultLanguageCode": null, + "maxKeyPhraseCount": null + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "description": null, + "context": "/document", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "degreeOfParallelism": null, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ] + } + ] + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceListSynonymMaps.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceListSynonymMaps.json new file mode 100644 index 000000000000..f8c78f284dfd --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceListSynonymMaps.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "api-version": "2019-05-06-Preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA", + "encryptionKey": { + "keyVaultKeyName": "myKeyName", + "keyVaultKeyVersion": "myKeyVersion", + "keyVaultUri": "https://myKeyVault.vault.azure.net", + "accessCredentials": null + } + }, + { + "name": "myothersynonymmap", + "format": "solr", + "synonyms": "couch, sofa, chesterfield\npop, soda\ntoque, hat", + "encryptionKey": null + } + ] + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceResetIndexer.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceResetIndexer.json new file mode 100644 index 000000000000..503e305029b8 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceResetIndexer.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2019-05-06-Preview" + }, + "responses": { + "204": {} + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceRunIndexer.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceRunIndexer.json new file mode 100644 index 000000000000..41b6e55063fb --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/examples/SearchServiceRunIndexer.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "endpoint": "https://myservice.search.windows.net", + "indexerName": "myindexer", + "api-version": "2019-05-06-Preview" + }, + "responses": { + "202": {} + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/searchindex.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/searchindex.json new file mode 100644 index 000000000000..b813d6d1346a --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/searchindex.json @@ -0,0 +1,1444 @@ +{ + "swagger": "2.0", + "info": { + "title": "SearchIndexClient", + "description": "Client that can be used to query an index and upload, merge, or delete documents.", + "version": "2019-05-06-Preview", + "x-ms-code-generation-settings": { + "useDateTimeOffset": true, + "syncMethods": "None" + } + }, + "x-ms-parameterized-host": { + "hostTemplate": "{endpoint}/indexes('{indexName}')", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/EndpointParameter" + }, + { + "$ref": "#/parameters/IndexNameParameter" + } + ] + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/docs/$count": { + "get": { + "tags": [ + "Documents" + ], + "operationId": "Documents_Count", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Count-Documents" + }, + "x-ms-examples": { + "SearchIndexCountDocuments": { + "$ref": "./examples/SearchIndexCountDocuments.json" + } + }, + "description": "Queries the number of documents in the index.", + "parameters": [ + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "type": "integer", + "format": "int64" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + } + }, + "/docs": { + "get": { + "tags": [ + "Documents" + ], + "operationId": "Documents_SearchGet", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Search-Documents" + }, + "x-ms-examples": { + "SearchIndexSearchDocumentsGet": { + "$ref": "./examples/SearchIndexSearchDocumentsGet.json" + } + }, + "description": "Searches for documents in the index.", + "parameters": [ + { + "name": "search", + "in": "query", + "type": "string", + "description": "A full-text search query expression; Use \"*\" or omit this parameter to match all documents.", + "x-ms-client-name": "SearchText" + }, + { + "name": "$count", + "in": "query", + "type": "boolean", + "description": "A value that specifies whether to fetch the total count of results. Default is false. Setting this value to true may have a performance impact. Note that the count returned is an approximation.", + "x-nullable": false, + "x-ms-client-name": "IncludeTotalResultCount", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "facet", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "description": "The list of facet expressions to apply to the search query. Each facet expression contains a field name, optionally followed by a comma-separated list of name:value pairs.", + "x-ms-client-name": "Facets", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "$filter", + "in": "query", + "type": "string", + "description": "The OData $filter expression to apply to the search query.", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "highlight", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of field names to use for hit highlights. Only searchable fields can be used for hit highlighting.", + "x-ms-client-name": "HighlightFields", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "highlightPostTag", + "in": "query", + "type": "string", + "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. Default is </em>.", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "highlightPreTag", + "in": "query", + "type": "string", + "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. Default is <em>.", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "minimumCoverage", + "in": "query", + "type": "number", + "format": "double", + "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by a search query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 100.", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "$orderby", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of OData $orderby expressions by which to sort the results. Each expression can be either a field name or a call to either the geo.distance() or the search.score() functions. Each expression can be followed by asc to indicate ascending, and desc to indicate descending. The default is ascending order. Ties will be broken by the match scores of documents. If no OrderBy is specified, the default sort order is descending by document match score. There can be at most 32 $orderby clauses.", + "x-ms-client-name": "OrderBy", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "queryType", + "in": "query", + "type": "string", + "enum": [ + "simple", + "full" + ], + "x-ms-enum": { + "name": "QueryType", + "modelAsString": false + }, + "x-nullable": false, + "description": "A value that specifies the syntax of the search query. The default is 'simple'. Use 'full' if your query uses the Lucene query syntax.", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "scoringParameter", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "x-ms-client-name": "ScoringParameters", + "description": "The list of parameter values to be used in scoring functions (for example, referencePointParameter) using the format name-values. For example, if the scoring profile defines a function with a parameter called 'mylocation' the parameter string would be \"mylocation--122.2,44.8\" (without the quotes).", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "scoringProfile", + "in": "query", + "type": "string", + "description": "The name of a scoring profile to evaluate match scores for matching documents in order to sort the results.", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "searchFields", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of field names to which to scope the full-text search. When using fielded search (fieldName:searchExpression) in a full Lucene query, the field names of each fielded search expression take precedence over any field names listed in this parameter.", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "searchMode", + "in": "query", + "type": "string", + "enum": [ + "any", + "all" + ], + "x-ms-enum": { + "name": "SearchMode", + "modelAsString": false + }, + "x-nullable": false, + "description": "A value that specifies whether any or all of the search terms must be matched in order to count the document as a match.", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "$select", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of fields to retrieve. If unspecified, all fields marked as retrievable in the schema are included.", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "$skip", + "in": "query", + "type": "integer", + "format": "int32", + "description": "The number of search results to skip. This value cannot be greater than 100,000. If you need to scan documents in sequence, but cannot use $skip due to this limitation, consider using $orderby on a totally-ordered key and $filter with a range query instead.", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "$top", + "in": "query", + "type": "integer", + "format": "int32", + "description": "The number of search results to retrieve. This can be used in conjunction with $skip to implement client-side paging of search results. If results are truncated due to server-side paging, the response will include a continuation token that can be used to issue another Search request for the next page of results.", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "Response containing documents that match the search criteria.", + "schema": { + "$ref": "#/definitions/SearchDocumentsResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + } + }, + "/docs/search.post.search": { + "post": { + "tags": [ + "Documents" + ], + "operationId": "Documents_SearchPost", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Search-Documents" + }, + "x-ms-examples": { + "SearchIndexSearchDocumentsPost": { + "$ref": "./examples/SearchIndexSearchDocumentsPost.json" + } + }, + "description": "Searches for documents in the index.", + "parameters": [ + { + "name": "searchRequest", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SearchRequest", + "description": "The Search request." + }, + "description": "The definition of the Search request." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "Response containing documents that match the search criteria.", + "schema": { + "$ref": "#/definitions/SearchDocumentsResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + } + }, + "/docs('{key}')": { + "get": { + "tags": [ + "Documents" + ], + "operationId": "Documents_Get", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/lookup-document" + }, + "x-ms-examples": { + "SearchIndexGetDocument": { + "$ref": "./examples/SearchIndexGetDocument.json" + } + }, + "description": "Retrieves a document from the index.", + "parameters": [ + { + "name": "key", + "in": "path", + "required": true, + "description": "The key of the document to retrieve.", + "type": "string" + }, + { + "name": "$select", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "description": "List of field names to retrieve for the document; Any field not retrieved will be missing from the returned document.", + "x-ms-client-name": "SelectedFields" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + } + ], + "responses": { + "200": { + "description": "Response containing the requested document.", + "schema": { + "type": "object" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + } + }, + "/docs/search.suggest": { + "get": { + "tags": [ + "Documents" + ], + "operationId": "Documents_SuggestGet", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/suggestions" + }, + "x-ms-examples": { + "SearchIndexSuggestDocumentsGet": { + "$ref": "./examples/SearchIndexSuggestDocumentsGet.json" + } + }, + "description": "Suggests documents in the index that match the given partial query text.", + "parameters": [ + { + "name": "search", + "in": "query", + "required": true, + "type": "string", + "description": "The search text to use to suggest documents. Must be at least 1 character, and no more than 100 characters.", + "x-ms-client-name": "SearchText" + }, + { + "name": "suggesterName", + "in": "query", + "required": true, + "type": "string", + "description": "The name of the suggester as specified in the suggesters collection that's part of the index definition." + }, + { + "name": "$filter", + "in": "query", + "type": "string", + "description": "An OData expression that filters the documents considered for suggestions.", + "x-ms-parameter-grouping": { + "name": "SuggestOptions" + } + }, + { + "name": "fuzzy", + "in": "query", + "type": "boolean", + "description": "A value indicating whether to use fuzzy matching for the suggestions query. Default is false. When set to true, the query will find terms even if there's a substituted or missing character in the search text. While this provides a better experience in some scenarios, it comes at a performance cost as fuzzy suggestions queries are slower and consume more resources.", + "x-ms-client-name": "UseFuzzyMatching", + "x-nullable": false, + "x-ms-parameter-grouping": { + "name": "SuggestOptions" + } + }, + { + "name": "highlightPostTag", + "in": "query", + "type": "string", + "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. If omitted, hit highlighting of suggestions is disabled.", + "x-ms-parameter-grouping": { + "name": "SuggestOptions" + } + }, + { + "name": "highlightPreTag", + "in": "query", + "type": "string", + "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. If omitted, hit highlighting of suggestions is disabled.", + "x-ms-parameter-grouping": { + "name": "SuggestOptions" + } + }, + { + "name": "minimumCoverage", + "in": "query", + "type": "number", + "format": "double", + "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by a suggestions query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 80.", + "x-ms-parameter-grouping": { + "name": "SuggestOptions" + } + }, + { + "name": "$orderby", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "x-ms-client-name": "OrderBy", + "description": "The list of OData $orderby expressions by which to sort the results. Each expression can be either a field name or a call to either the geo.distance() or the search.score() functions. Each expression can be followed by asc to indicate ascending, or desc to indicate descending. The default is ascending order. Ties will be broken by the match scores of documents. If no $orderby is specified, the default sort order is descending by document match score. There can be at most 32 $orderby clauses.", + "x-ms-parameter-grouping": { + "name": "SuggestOptions" + } + }, + { + "name": "searchFields", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of field names to search for the specified search text. Target fields must be included in the specified suggester.", + "x-ms-parameter-grouping": { + "name": "SuggestOptions" + } + }, + { + "name": "$select", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of fields to retrieve. If unspecified, only the key field will be included in the results.", + "x-ms-parameter-grouping": { + "name": "SuggestOptions" + } + }, + { + "name": "$top", + "in": "query", + "type": "integer", + "format": "int32", + "description": "The number of suggestions to retrieve. The value must be a number between 1 and 100. The default is 5.", + "x-ms-parameter-grouping": { + "name": "SuggestOptions" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "Response containing suggested documents that match the partial input.", + "schema": { + "$ref": "#/definitions/SuggestDocumentsResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + } + }, + "/docs/search.post.suggest": { + "post": { + "tags": [ + "Documents" + ], + "operationId": "Documents_SuggestPost", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/suggestions" + }, + "x-ms-examples": { + "SearchIndexSuggestDocumentsPost": { + "$ref": "./examples/SearchIndexSuggestDocumentsPost.json" + } + }, + "description": "Suggests documents in the index that match the given partial query text.", + "parameters": [ + { + "name": "suggestRequest", + "in": "body", + "required": true, + "description": "The Suggest request.", + "schema": { + "$ref": "#/definitions/SuggestRequest" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "Response containing suggested documents that match the partial input.", + "schema": { + "$ref": "#/definitions/SuggestDocumentsResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + } + }, + "/docs/search.index": { + "post": { + "tags": [ + "Documents" + ], + "operationId": "Documents_Index", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/addupdate-or-delete-documents" + }, + "x-ms-examples": { + "SearchIndexIndexDocuments": { + "$ref": "./examples/SearchIndexIndexDocuments.json" + } + }, + "description": "Sends a batch of document write actions to the index.", + "parameters": [ + { + "name": "batch", + "in": "body", + "description": "The batch of index actions.", + "required": true, + "schema": { + "$ref": "#/definitions/IndexBatch" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "Response containing the status of operations for all actions in the batch.", + "schema": { + "$ref": "#/definitions/IndexDocumentsResult" + } + }, + "207": { + "description": "Response containing the status of operations for all actions in the batch.", + "schema": { + "$ref": "#/definitions/IndexDocumentsResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + } + }, + "/docs/search.autocomplete": { + "get": { + "tags": [ + "Documents" + ], + "operationId": "Documents_AutocompleteGet", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/autocomplete" + }, + "x-ms-examples": { + "SearchIndexAutocompleteDocumentsGet": { + "$ref": "./examples/SearchIndexAutocompleteDocumentsGet.json" + } + }, + "description": "Autocompletes incomplete query terms based on input text and matching terms in the index.", + "parameters": [ + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "search", + "in": "query", + "type": "string", + "required": true, + "description": "The incomplete term which should be auto-completed.", + "x-ms-client-name": "SearchText" + }, + { + "name": "suggesterName", + "in": "query", + "type": "string", + "required": true, + "description": "The name of the suggester as specified in the suggesters collection that's part of the index definition." + }, + { + "name": "autocompleteMode", + "in": "query", + "type": "string", + "x-nullable": false, + "enum": [ + "oneTerm", + "twoTerms", + "oneTermWithContext" + ], + "x-ms-enum": { + "name": "AutocompleteMode", + "modelAsString": false + }, + "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms' to get shingles and 'oneTermWithContext' to use the current context while producing auto-completed terms.", + "x-ms-parameter-grouping": { + "name": "AutocompleteOptions" + } + }, + { + "name": "$filter", + "in": "query", + "type": "string", + "description": "An OData expression that filters the documents used to produce completed terms for the Autocomplete result.", + "x-ms-parameter-grouping": { + "name": "AutocompleteOptions" + } + }, + { + "name": "fuzzy", + "in": "query", + "type": "boolean", + "description": "A value indicating whether to use fuzzy matching for the autocomplete query. Default is false. When set to true, the query will find terms even if there's a substituted or missing character in the search text. While this provides a better experience in some scenarios, it comes at a performance cost as fuzzy autocomplete queries are slower and consume more resources.", + "x-ms-client-name": "UseFuzzyMatching", + "x-ms-parameter-grouping": { + "name": "AutocompleteOptions" + } + }, + { + "name": "highlightPostTag", + "in": "query", + "type": "string", + "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. If omitted, hit highlighting is disabled.", + "x-ms-parameter-grouping": { + "name": "AutocompleteOptions" + } + }, + { + "name": "highlightPreTag", + "in": "query", + "type": "string", + "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. If omitted, hit highlighting is disabled.", + "x-ms-parameter-grouping": { + "name": "AutocompleteOptions" + } + }, + { + "name": "minimumCoverage", + "in": "query", + "type": "number", + "format": "double", + "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by an autocomplete query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 80.", + "x-ms-parameter-grouping": { + "name": "AutocompleteOptions" + } + }, + { + "name": "searchFields", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of field names to consider when querying for auto-completed terms. Target fields must be included in the specified suggester.", + "x-ms-parameter-grouping": { + "name": "AutocompleteOptions" + } + }, + { + "name": "$top", + "in": "query", + "type": "integer", + "format": "int32", + "description": "The number of auto-completed terms to retrieve. This must be a value between 1 and 100. The default is 5.", + "x-ms-parameter-grouping": { + "name": "AutocompleteOptions" + } + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "Response containing suggested query terms that complete the partial input.", + "schema": { + "$ref": "#/definitions/AutocompleteResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + } + }, + "/docs/search.post.autocomplete": { + "post": { + "tags": [ + "Documents" + ], + "operationId": "Documents_AutocompletePost", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/autocomplete" + }, + "x-ms-examples": { + "SearchIndexAutocompleteDocumentsPost": { + "$ref": "./examples/SearchIndexAutocompleteDocumentsPost.json" + } + }, + "description": "Autocompletes incomplete query terms based on input text and matching terms in the index.", + "parameters": [ + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "autocompleteRequest", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AutocompleteRequest" + }, + "description": "The definition of the Autocomplete request." + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "Response containing suggested query terms that complete the partial input.", + "schema": { + "$ref": "#/definitions/AutocompleteResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + } + } + }, + "definitions": { + "SuggestDocumentsResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SuggestResult" + }, + "readOnly": true, + "x-ms-client-name": "Results", + "description": "The sequence of results returned by the query." + }, + "@search.coverage": { + "type": "number", + "readOnly": true, + "format": "double", + "x-ms-client-name": "Coverage", + "description": "A value indicating the percentage of the index that was included in the query, or null if minimumCoverage was not set in the request." + } + }, + "required": [ + "value" + ], + "description": "Response containing suggestion query results from an index." + }, + "SuggestResult": { + "properties": { + "@search.text": { + "type": "string", + "readOnly": true, + "description": "The text of the suggestion result.", + "x-ms-client-name": "Text" + } + }, + "required": [ + "@search.text" + ], + "additionalProperties": true, + "description": "A result containing a document found by a suggestion query, plus associated metadata." + }, + "FacetResult": { + "properties": { + "count": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The approximate count of documents falling within the bucket described by this facet." + } + }, + "additionalProperties": true, + "description": "A single bucket of a facet query result. Reports the number of documents with a field value falling within a particular range or having a particular value or interval." + }, + "SearchDocumentsResult": { + "properties": { + "@odata.count": { + "type": "integer", + "format": "int64", + "readOnly": true, + "x-ms-client-name": "Count", + "description": "The total count of results found by the search operation, or null if the count was not requested. If present, the count may be greater than the number of results in this response. This can happen if you use the $top or $skip parameters, or if Azure Cognitive Search can't return all the requested documents in a single Search response." + }, + "@search.coverage": { + "type": "number", + "format": "double", + "readOnly": true, + "x-ms-client-name": "Coverage", + "description": "A value indicating the percentage of the index that was included in the query, or null if minimumCoverage was not specified in the request." + }, + "@search.facets": { + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "$ref": "#/definitions/FacetResult" + } + }, + "readOnly": true, + "x-ms-client-name": "Facets", + "description": "The facet query results for the search operation, organized as a collection of buckets for each faceted field; null if the query did not include any facet expressions." + }, + "@search.nextPageParameters": { + "$ref": "#/definitions/SearchRequest", + "readOnly": true, + "x-ms-client-name": "NextPageParameters", + "description": "Continuation JSON payload returned when Azure Cognitive Search can't return all the requested results in a single Search response. You can use this JSON along with @odata.nextLink to formulate another POST Search request to get the next part of the search response." + }, + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SearchResult" + }, + "readOnly": true, + "x-ms-client-name": "Results", + "description": "The sequence of results returned by the query." + }, + "@odata.nextLink": { + "type": "string", + "readOnly": true, + "x-ms-client-name": "NextLink", + "description": "Continuation URL returned when Azure Cognitive Search can't return all the requested results in a single Search response. You can use this URL to formulate another GET or POST Search request to get the next part of the search response. Make sure to use the same verb (GET or POST) as the request that produced this response." + } + }, + "required": [ + "value" + ], + "description": "Response containing search results from an index." + }, + "SearchResult": { + "properties": { + "@search.score": { + "type": "number", + "format": "double", + "readOnly": true, + "x-ms-client-name": "Score", + "x-nullable": false, + "description": "The relevance score of the document compared to other documents returned by the query." + }, + "@search.highlights": { + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + }, + "readOnly": true, + "x-ms-client-name": "Highlights", + "description": "Text fragments from the document that indicate the matching search terms, organized by each applicable field; null if hit highlighting was not enabled for the query." + } + }, + "required": [ + "@search.score" + ], + "additionalProperties": true, + "description": "Contains a document found by a search query, plus associated metadata." + }, + "IndexBatch": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/IndexAction" + }, + "description": "The actions in the batch.", + "x-ms-client-name": "Actions" + } + }, + "required": [ + "value" + ], + "description": "Contains a batch of document write actions to send to the index." + }, + "IndexAction": { + "properties": { + "@search.action": { + "type": "string", + "enum": [ + "upload", + "merge", + "mergeOrUpload", + "delete" + ], + "x-ms-enum": { + "name": "IndexActionType", + "modelAsString": false + }, + "x-ms-client-name": "ActionType", + "x-nullable": false, + "description": "The operation to perform on a document in an indexing batch." + } + }, + "additionalProperties": true, + "description": "Represents an index action that operates on a document." + }, + "IndexingResult": { + "properties": { + "key": { + "type": "string", + "readOnly": true, + "description": "The key of a document that was in the indexing request." + }, + "errorMessage": { + "type": "string", + "readOnly": true, + "description": "The error message explaining why the indexing operation failed for the document identified by the key; null if indexing succeeded." + }, + "status": { + "x-ms-client-name": "Succeeded", + "type": "boolean", + "x-nullable": false, + "readOnly": true, + "description": "A value indicating whether the indexing operation succeeded for the document identified by the key." + }, + "statusCode": { + "type": "integer", + "format": "int32", + "x-nullable": false, + "readOnly": true, + "description": "The status code of the indexing operation. Possible values include: 200 for a successful update or delete, 201 for successful document creation, 400 for a malformed input document, 404 for document not found, 409 for a version conflict, 422 when the index is temporarily unavailable, or 503 for when the service is too busy." + } + }, + "required": [ + "key", + "status", + "statusCode" + ], + "description": "Status of an indexing operation for a single document." + }, + "IndexDocumentsResult": { + "properties": { + "value": { + "x-ms-client-name": "Results", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/IndexingResult" + }, + "description": "The list of status information for each document in the indexing request." + } + }, + "required": [ + "value" + ], + "description": "Response containing the status of operations for all documents in the indexing request." + }, + "SearchMode": { + "type": "string", + "enum": [ + "any", + "all" + ], + "x-ms-enum": { + "name": "SearchMode", + "modelAsString": false + }, + "description": "Specifies whether any or all of the search terms must be matched in order to count the document as a match." + }, + "QueryType": { + "type": "string", + "enum": [ + "simple", + "full" + ], + "x-ms-enum": { + "name": "QueryType", + "modelAsString": false + }, + "description": "Specifies the syntax of the search query. The default is 'simple'. Use 'full' if your query uses the Lucene query syntax." + }, + "AutocompleteMode": { + "type": "string", + "enum": [ + "oneTerm", + "twoTerms", + "oneTermWithContext" + ], + "x-ms-enum": { + "name": "AutocompleteMode", + "modelAsString": false + }, + "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms' to get shingles and 'oneTermWithContext' to use the current context in producing autocomplete terms." + }, + "SearchRequest": { + "properties": { + "count": { + "type": "boolean", + "description": "A value that specifies whether to fetch the total count of results. Default is false. Setting this value to true may have a performance impact. Note that the count returned is an approximation.", + "x-ms-client-name": "IncludeTotalResultCount" + }, + "facets": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Search-Documents" + }, + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of facet expressions to apply to the search query. Each facet expression contains a field name, optionally followed by a comma-separated list of name:value pairs." + }, + "filter": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/OData-Expression-Syntax-for-Azure-Search" + }, + "type": "string", + "description": "The OData $filter expression to apply to the search query." + }, + "highlight": { + "type": "string", + "description": "The comma-separated list of field names to use for hit highlights. Only searchable fields can be used for hit highlighting.", + "x-ms-client-name": "HighlightFields" + }, + "highlightPostTag": { + "type": "string", + "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. Default is </em>." + }, + "highlightPreTag": { + "type": "string", + "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. Default is <em>." + }, + "minimumCoverage": { + "type": "number", + "format": "double", + "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by a search query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 100." + }, + "orderby": { + "x-ms-client-name": "OrderBy", + "type": "string", + "description": "The comma-separated list of OData $orderby expressions by which to sort the results. Each expression can be either a field name or a call to either the geo.distance() or the search.score() functions. Each expression can be followed by asc to indicate ascending, or desc to indicate descending. The default is ascending order. Ties will be broken by the match scores of documents. If no $orderby is specified, the default sort order is descending by document match score. There can be at most 32 $orderby clauses." + }, + "queryType": { + "$ref": "#/definitions/QueryType", + "description": "A value that specifies the syntax of the search query. The default is 'simple'. Use 'full' if your query uses the Lucene query syntax." + }, + "scoringParameters": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of parameter values to be used in scoring functions (for example, referencePointParameter) using the format name-values. For example, if the scoring profile defines a function with a parameter called 'mylocation' the parameter string would be \"mylocation--122.2,44.8\" (without the quotes)." + }, + "scoringProfile": { + "type": "string", + "description": "The name of a scoring profile to evaluate match scores for matching documents in order to sort the results." + }, + "search": { + "type": "string", + "description": "A full-text search query expression; Use \"*\" or omit this parameter to match all documents.", + "x-ms-client-name": "SearchText" + }, + "searchFields": { + "type": "string", + "description": "The comma-separated list of field names to which to scope the full-text search. When using fielded search (fieldName:searchExpression) in a full Lucene query, the field names of each fielded search expression take precedence over any field names listed in this parameter." + }, + "searchMode": { + "$ref": "#/definitions/SearchMode", + "description": "A value that specifies whether any or all of the search terms must be matched in order to count the document as a match." + }, + "select": { + "type": "string", + "description": "The comma-separated list of fields to retrieve. If unspecified, all fields marked as retrievable in the schema are included." + }, + "skip": { + "type": "integer", + "format": "int32", + "description": "The number of search results to skip. This value cannot be greater than 100,000. If you need to scan documents in sequence, but cannot use skip due to this limitation, consider using orderby on a totally-ordered key and filter with a range query instead." + }, + "top": { + "type": "integer", + "format": "int32", + "description": "The number of search results to retrieve. This can be used in conjunction with $skip to implement client-side paging of search results. If results are truncated due to server-side paging, the response will include a continuation token that can be used to issue another Search request for the next page of results." + } + }, + "description": "Parameters for filtering, sorting, faceting, paging, and other search query behaviors." + }, + "SuggestRequest": { + "properties": { + "filter": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/OData-Expression-Syntax-for-Azure-Search" + }, + "type": "string", + "description": "An OData expression that filters the documents considered for suggestions." + }, + "fuzzy": { + "type": "boolean", + "description": "A value indicating whether to use fuzzy matching for the suggestion query. Default is false. When set to true, the query will find suggestions even if there's a substituted or missing character in the search text. While this provides a better experience in some scenarios, it comes at a performance cost as fuzzy suggestion searches are slower and consume more resources.", + "x-ms-client-name": "UseFuzzyMatching" + }, + "highlightPostTag": { + "type": "string", + "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. If omitted, hit highlighting of suggestions is disabled." + }, + "highlightPreTag": { + "type": "string", + "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. If omitted, hit highlighting of suggestions is disabled." + }, + "minimumCoverage": { + "type": "number", + "format": "double", + "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by a suggestion query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 80." + }, + "orderby": { + "x-ms-client-name": "OrderBy", + "type": "string", + "description": "The comma-separated list of OData $orderby expressions by which to sort the results. Each expression can be either a field name or a call to either the geo.distance() or the search.score() functions. Each expression can be followed by asc to indicate ascending, or desc to indicate descending. The default is ascending order. Ties will be broken by the match scores of documents. If no $orderby is specified, the default sort order is descending by document match score. There can be at most 32 $orderby clauses." + }, + "search": { + "type": "string", + "description": "The search text to use to suggest documents. Must be at least 1 character, and no more than 100 characters.", + "x-ms-client-name": "SearchText" + }, + "searchFields": { + "type": "string", + "description": "The comma-separated list of field names to search for the specified search text. Target fields must be included in the specified suggester." + }, + "select": { + "type": "string", + "description": "The comma-separated list of fields to retrieve. If unspecified, only the key field will be included in the results." + }, + "suggesterName": { + "type": "string", + "description": "The name of the suggester as specified in the suggesters collection that's part of the index definition." + }, + "top": { + "type": "integer", + "format": "int32", + "description": "The number of suggestions to retrieve. This must be a value between 1 and 100. The default is 5." + } + }, + "required": [ + "search", + "suggesterName" + ], + "description": "Parameters for filtering, sorting, fuzzy matching, and other suggestions query behaviors." + }, + "AutocompleteRequest": { + "properties": { + "search": { + "type": "string", + "description": "The search text on which to base autocomplete results.", + "x-ms-client-name": "SearchText" + }, + "autocompleteMode": { + "$ref": "#/definitions/AutocompleteMode", + "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms' to get shingles and 'oneTermWithContext' to use the current context while producing auto-completed terms." + }, + "filter": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/OData-Expression-Syntax-for-Azure-Search" + }, + "type": "string", + "description": "An OData expression that filters the documents used to produce completed terms for the Autocomplete result." + }, + "fuzzy": { + "type": "boolean", + "description": "A value indicating whether to use fuzzy matching for the autocomplete query. Default is false. When set to true, the query will autocomplete terms even if there's a substituted or missing character in the search text. While this provides a better experience in some scenarios, it comes at a performance cost as fuzzy autocomplete queries are slower and consume more resources.", + "x-ms-client-name": "UseFuzzyMatching" + }, + "highlightPostTag": { + "type": "string", + "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. If omitted, hit highlighting is disabled." + }, + "highlightPreTag": { + "type": "string", + "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. If omitted, hit highlighting is disabled." + }, + "minimumCoverage": { + "type": "number", + "format": "double", + "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by an autocomplete query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 80." + }, + "searchFields": { + "type": "string", + "description": "The comma-separated list of field names to consider when querying for auto-completed terms. Target fields must be included in the specified suggester." + }, + "suggesterName": { + "type": "string", + "description": "The name of the suggester as specified in the suggesters collection that's part of the index definition." + }, + "top": { + "type": "integer", + "format": "int32", + "description": "The number of auto-completed terms to retrieve. This must be a value between 1 and 100. The default is 5." + } + }, + "required": [ + "search", + "suggesterName" + ], + "description": "Parameters for fuzzy matching, and other autocomplete query behaviors." + }, + "AutocompleteResult": { + "properties": { + "@search.coverage": { + "type": "number", + "format": "double", + "readOnly": true, + "x-ms-client-name": "Coverage", + "description": "A value indicating the percentage of the index that was considered by the autocomplete request, or null if minimumCoverage was not specified in the request." + }, + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/AutocompleteItem" + }, + "description": "The list of returned Autocompleted items.", + "x-ms-client-name": "Results" + } + }, + "required": [ + "value" + ], + "description": "The result of Autocomplete query." + }, + "AutocompleteItem": { + "properties": { + "text": { + "type": "string", + "readOnly": true, + "description": "The completed term." + }, + "queryPlusText": { + "type": "string", + "readOnly": true, + "description": "The query along with the completed term." + } + }, + "required": [ + "text", + "queryPlusText" + ], + "description": "The result of Autocomplete requests." + }, + "SearchError": { + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "One of a server-defined set of error codes." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "A human-readable representation of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/SearchError" + }, + "readOnly": true, + "description": "An array of details about specific errors that led to this reported error." + } + }, + "required": [ + "message" + ], + "description": "Describes an error condition for the Azure Cognitive Search API." + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + }, + "ClientRequestIdParameter": { + "name": "x-ms-client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The tracking ID sent with the request to help with debugging.", + "x-ms-client-request-id": true, + "x-ms-parameter-grouping": { + "name": "request-options" + }, + "x-ms-parameter-location": "method" + }, + "EndpointParameter": { + "name": "endpoint", + "in": "path", + "required": true, + "type": "string", + "x-ms-skip-url-encoding": true, + "description": "The endpoint URL of the search service.", + "x-ms-parameter-location": "client" + }, + "IndexNameParameter": { + "name": "indexName", + "in": "path", + "required": true, + "type": "string", + "x-ms-skip-url-encoding": false, + "description": "The name of the index.", + "x-ms-parameter-location": "client" + } + } +} diff --git a/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/searchservice.json b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/searchservice.json new file mode 100644 index 000000000000..e205a9f1b575 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/preview/2019-05-06-preview/searchservice.json @@ -0,0 +1,7219 @@ +{ + "swagger": "2.0", + "info": { + "title": "SearchServiceClient", + "description": "Client that can be used to manage and query indexes and documents, as well as manage other resources, on a search service.", + "version": "2019-05-06-Preview", + "x-ms-code-generation-settings": { + "useDateTimeOffset": true + } + }, + "x-ms-parameterized-host": { + "hostTemplate": "{endpoint}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/EndpointParameter" + } + ] + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/datasources('{dataSourceName}')": { + "put": { + "tags": [ + "DataSources" + ], + "operationId": "DataSources_CreateOrUpdate", + "x-ms-examples": { + "SearchServiceCreateOrUpdateDataSource": { + "$ref": "./examples/SearchServiceCreateOrUpdateDataSource.json" + } + }, + "description": "Creates a new datasource or updates a datasource if it already exists.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Update-Data-Source" + }, + "parameters": [ + { + "name": "dataSourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the datasource to create or update." + }, + { + "name": "dataSource", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataSource" + }, + "description": "The definition of the datasource to create or update." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/IfMatchParameter" + }, + { + "$ref": "#/parameters/IfNoneMatchParameter" + }, + { + "$ref": "#/parameters/PreferHeaderParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/DataSource" + } + }, + "201": { + "description": "", + "schema": { + "$ref": "#/definitions/DataSource" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + }, + "delete": { + "tags": [ + "DataSources" + ], + "operationId": "DataSources_Delete", + "x-ms-examples": { + "SearchServiceDeleteDataSource": { + "$ref": "./examples/SearchServiceDeleteDataSource.json" + } + }, + "description": "Deletes a datasource.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Delete-Data-Source" + }, + "parameters": [ + { + "name": "dataSourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the datasource to delete." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/IfMatchParameter" + }, + { + "$ref": "#/parameters/IfNoneMatchParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "204": { + "description": "" + }, + "404": { + "description": "" + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + }, + "get": { + "tags": [ + "DataSources" + ], + "operationId": "DataSources_Get", + "x-ms-examples": { + "SearchServiceGetDataSource": { + "$ref": "./examples/SearchServiceGetDataSource.json" + } + }, + "description": "Retrieves a datasource definition.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Data-Source" + }, + "parameters": [ + { + "name": "dataSourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the datasource to retrieve." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/DataSource" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + } + }, + "/datasources": { + "get": { + "tags": [ + "DataSources" + ], + "operationId": "DataSources_List", + "x-ms-examples": { + "SearchServiceListDataSources": { + "$ref": "./examples/SearchServiceListDataSources.json" + } + }, + "description": "Lists all datasources available for a search service.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/List-Data-Sources" + }, + "parameters": [ + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "Selects which top-level properties of the data sources to retrieve. Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/ListDataSourcesResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + }, + "post": { + "tags": [ + "DataSources" + ], + "operationId": "DataSources_Create", + "x-ms-examples": { + "SearchServiceCreateDataSource": { + "$ref": "./examples/SearchServiceCreateDataSource.json" + } + }, + "description": "Creates a new datasource.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Data-Source" + }, + "parameters": [ + { + "name": "dataSource", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataSource" + }, + "description": "The definition of the datasource to create." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "201": { + "description": "", + "schema": { + "$ref": "#/definitions/DataSource" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + } + }, + "/indexers('{indexerName}')/search.reset": { + "post": { + "tags": [ + "Indexers" + ], + "operationId": "Indexers_Reset", + "x-ms-examples": { + "SearchServiceResetIndexer": { + "$ref": "./examples/SearchServiceResetIndexer.json" + } + }, + "description": "Resets the change tracking state associated with an indexer.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Reset-Indexer" + }, + "parameters": [ + { + "name": "indexerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the indexer to reset." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "204": { + "description": "" + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + } + }, + "/indexers('{indexerName}')/search.run": { + "post": { + "tags": [ + "Indexers" + ], + "operationId": "Indexers_Run", + "x-ms-examples": { + "SearchServiceRunIndexer": { + "$ref": "./examples/SearchServiceRunIndexer.json" + } + }, + "description": "Runs an indexer on-demand.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Run-Indexer" + }, + "parameters": [ + { + "name": "indexerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the indexer to run." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "202": { + "description": "" + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + } + }, + "/indexers('{indexerName}')": { + "put": { + "tags": [ + "Indexers" + ], + "operationId": "Indexers_CreateOrUpdate", + "x-ms-examples": { + "SearchServiceCreateOrUpdateIndexer": { + "$ref": "./examples/SearchServiceCreateOrUpdateIndexer.json" + } + }, + "description": "Creates a new indexer or updates an indexer if it already exists.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Indexer" + }, + "parameters": [ + { + "name": "indexerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the indexer to create or update." + }, + { + "name": "indexer", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Indexer" + }, + "description": "The definition of the indexer to create or update." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/IfMatchParameter" + }, + { + "$ref": "#/parameters/IfNoneMatchParameter" + }, + { + "$ref": "#/parameters/PreferHeaderParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "201": { + "description": "", + "schema": { + "$ref": "#/definitions/Indexer" + } + }, + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/Indexer" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + }, + "delete": { + "tags": [ + "Indexers" + ], + "operationId": "Indexers_Delete", + "x-ms-examples": { + "SearchServiceDeleteIndexer": { + "$ref": "./examples/SearchServiceDeleteIndexer.json" + } + }, + "description": "Deletes an indexer.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Delete-Indexer" + }, + "parameters": [ + { + "name": "indexerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the indexer to delete." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/IfMatchParameter" + }, + { + "$ref": "#/parameters/IfNoneMatchParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "404": { + "description": "" + }, + "204": { + "description": "" + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + }, + "get": { + "tags": [ + "Indexers" + ], + "operationId": "Indexers_Get", + "x-ms-examples": { + "SearchServiceGetIndexer": { + "$ref": "./examples/SearchServiceGetIndexer.json" + } + }, + "description": "Retrieves an indexer definition.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Indexer" + }, + "parameters": [ + { + "name": "indexerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the indexer to retrieve." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/Indexer" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + } + }, + "/indexers": { + "get": { + "tags": [ + "Indexers" + ], + "operationId": "Indexers_List", + "x-ms-examples": { + "SearchServiceListIndexers": { + "$ref": "./examples/SearchServiceListIndexers.json" + } + }, + "description": "Lists all indexers available for a search service.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/List-Indexers" + }, + "parameters": [ + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "Selects which top-level properties of the indexers to retrieve. Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/ListIndexersResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + }, + "post": { + "tags": [ + "Indexers" + ], + "operationId": "Indexers_Create", + "x-ms-examples": { + "SearchServiceCreateIndexer": { + "$ref": "./examples/SearchServiceCreateIndexer.json" + } + }, + "description": "Creates a new indexer.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Indexer" + }, + "parameters": [ + { + "name": "indexer", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Indexer" + }, + "description": "The definition of the indexer to create." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "201": { + "description": "", + "schema": { + "$ref": "#/definitions/Indexer" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + } + }, + "/indexers('{indexerName}')/search.status": { + "get": { + "tags": [ + "Indexers" + ], + "operationId": "Indexers_GetStatus", + "x-ms-examples": { + "SearchServiceGetIndexerStatus": { + "$ref": "./examples/SearchServiceGetIndexerStatus.json" + } + }, + "description": "Returns the current status and execution history of an indexer.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Indexer-Status" + }, + "parameters": [ + { + "name": "indexerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the indexer for which to retrieve status." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/IndexerExecutionInfo" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + } + }, + "/skillsets('{skillsetName}')": { + "put": { + "tags": [ + "Skillsets" + ], + "operationId": "Skillsets_CreateOrUpdate", + "x-ms-examples": { + "SearchServiceCreateOrUpdateSkillset": { + "$ref": "./examples/SearchServiceCreateOrUpdateSkillset.json" + } + }, + "description": "Creates a new skillset in a search service or updates the skillset if it already exists.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/update-skillset" + }, + "parameters": [ + { + "name": "skillsetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the skillset to create or update." + }, + { + "name": "skillset", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Skillset" + }, + "description": "The skillset containing one or more skills to create or update in a search service." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/IfMatchParameter" + }, + { + "$ref": "#/parameters/IfNoneMatchParameter" + }, + { + "$ref": "#/parameters/PreferHeaderParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "The skillset is successfully updated.", + "schema": { + "$ref": "#/definitions/Skillset" + } + }, + "201": { + "description": "The skillset is successfully created.", + "schema": { + "$ref": "#/definitions/Skillset" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + }, + "delete": { + "tags": [ + "Skillsets" + ], + "operationId": "Skillsets_Delete", + "x-ms-examples": { + "SearchServiceDeleteSkillset": { + "$ref": "./examples/SearchServiceDeleteSkillset.json" + } + }, + "description": "Deletes a skillset in a search service.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/delete-skillset" + }, + "parameters": [ + { + "name": "skillsetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the skillset to delete." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/IfMatchParameter" + }, + { + "$ref": "#/parameters/IfNoneMatchParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "204": { + "description": "The skillset is successfully deleted." + }, + "404": { + "description": "The provided skillset name is not found." + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + }, + "get": { + "tags": [ + "Skillsets" + ], + "operationId": "Skillsets_Get", + "x-ms-examples": { + "SearchServiceGetSkillset": { + "$ref": "./examples/SearchServiceGetSkillset.json" + } + }, + "description": "Retrieves a skillset in a search service.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/get-skillset" + }, + "parameters": [ + { + "name": "skillsetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the skillset to retrieve." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "The skillset is successfully returned.", + "schema": { + "$ref": "#/definitions/Skillset" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + } + }, + "/skillsets": { + "get": { + "tags": [ + "Skillsets" + ], + "operationId": "Skillsets_List", + "x-ms-examples": { + "SearchServiceListSkillsets": { + "$ref": "./examples/SearchServiceListSkillsets.json" + } + }, + "description": "List all skillsets in a search service.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/list-skillset" + }, + "parameters": [ + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "Selects which top-level properties of the skillsets to retrieve. Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "The list is successfully returned.", + "schema": { + "$ref": "#/definitions/ListSkillsetsResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + }, + "post": { + "tags": [ + "Skillsets" + ], + "operationId": "Skillsets_Create", + "x-ms-examples": { + "SearchServiceCreateSkillset": { + "$ref": "./examples/SearchServiceCreateSkillset.json" + } + }, + "description": "Creates a new skillset in a search service.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/create-skillset" + }, + "parameters": [ + { + "name": "skillset", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Skillset" + }, + "description": "The skillset containing one or more skills to create in a search service." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "201": { + "description": "The skillset is successfully created.", + "schema": { + "$ref": "#/definitions/Skillset" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + } + }, + "/synonymmaps('{synonymMapName}')": { + "put": { + "tags": [ + "SynonymMaps" + ], + "operationId": "SynonymMaps_CreateOrUpdate", + "x-ms-examples": { + "SearchServiceCreateOrUpdateSynonymMap": { + "$ref": "./examples/SearchServiceCreateOrUpdateSynonymMap.json" + } + }, + "description": "Creates a new synonym map or updates a synonym map if it already exists.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Update-Synonym-Map" + }, + "parameters": [ + { + "name": "synonymMapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the synonym map to create or update." + }, + { + "name": "synonymMap", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SynonymMap" + }, + "description": "The definition of the synonym map to create or update." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/IfMatchParameter" + }, + { + "$ref": "#/parameters/IfNoneMatchParameter" + }, + { + "$ref": "#/parameters/PreferHeaderParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/SynonymMap" + } + }, + "201": { + "description": "", + "schema": { + "$ref": "#/definitions/SynonymMap" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + }, + "delete": { + "tags": [ + "SynonymMaps" + ], + "operationId": "SynonymMaps_Delete", + "x-ms-examples": { + "SearchServiceDeleteSynonymMap": { + "$ref": "./examples/SearchServiceDeleteSynonymMap.json" + } + }, + "description": "Deletes a synonym map.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Delete-Synonym-Map" + }, + "parameters": [ + { + "name": "synonymMapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the synonym map to delete." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/IfMatchParameter" + }, + { + "$ref": "#/parameters/IfNoneMatchParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "204": { + "description": "" + }, + "404": { + "description": "" + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + }, + "get": { + "tags": [ + "SynonymMaps" + ], + "operationId": "SynonymMaps_Get", + "x-ms-examples": { + "SearchServiceGetSynonymMap": { + "$ref": "./examples/SearchServiceGetSynonymMap.json" + } + }, + "description": "Retrieves a synonym map definition.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Synonym-Map" + }, + "parameters": [ + { + "name": "synonymMapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the synonym map to retrieve." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/SynonymMap" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + } + }, + "/synonymmaps": { + "get": { + "tags": [ + "SynonymMaps" + ], + "operationId": "SynonymMaps_List", + "x-ms-examples": { + "SearchServiceListSynonymMaps": { + "$ref": "./examples/SearchServiceListSynonymMaps.json" + } + }, + "description": "Lists all synonym maps available for a search service.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/List-Synonym-Maps" + }, + "parameters": [ + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "Selects which top-level properties of the synonym maps to retrieve. Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/ListSynonymMapsResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + }, + "post": { + "tags": [ + "SynonymMaps" + ], + "operationId": "SynonymMaps_Create", + "x-ms-examples": { + "SearchServiceCreateSynonymMap": { + "$ref": "./examples/SearchServiceCreateSynonymMap.json" + } + }, + "description": "Creates a new synonym map.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Synonym-Map" + }, + "parameters": [ + { + "name": "synonymMap", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SynonymMap" + }, + "description": "The definition of the synonym map to create." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "201": { + "description": "", + "schema": { + "$ref": "#/definitions/SynonymMap" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + } + }, + "/indexes": { + "post": { + "tags": [ + "Indexes" + ], + "operationId": "Indexes_Create", + "x-ms-examples": { + "SearchServiceCreateIndex": { + "$ref": "./examples/SearchServiceCreateIndex.json" + } + }, + "description": "Creates a new search index.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Index" + }, + "parameters": [ + { + "name": "index", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Index" + }, + "description": "The definition of the index to create." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "201": { + "description": "", + "schema": { + "$ref": "#/definitions/Index" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + }, + "get": { + "tags": [ + "Indexes" + ], + "operationId": "Indexes_List", + "x-ms-examples": { + "SearchServiceListIndexes": { + "$ref": "./examples/SearchServiceListIndexes.json" + } + }, + "description": "Lists all indexes available for a search service.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/List-Indexes" + }, + "parameters": [ + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "Selects which top-level properties of the index definitions to retrieve. Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/ListIndexesResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + } + }, + "/indexes('{indexName}')": { + "put": { + "tags": [ + "Indexes" + ], + "operationId": "Indexes_CreateOrUpdate", + "x-ms-examples": { + "SearchServiceCreateOrUpdateIndex": { + "$ref": "./examples/SearchServiceCreateOrUpdateIndex.json" + } + }, + "description": "Creates a new search index or updates an index if it already exists.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Update-Index" + }, + "parameters": [ + { + "name": "indexName", + "in": "path", + "required": true, + "type": "string", + "description": "The definition of the index to create or update." + }, + { + "name": "index", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Index" + }, + "description": "The definition of the index to create or update." + }, + { + "name": "allowIndexDowntime", + "in": "query", + "required": false, + "type": "boolean", + "description": "Allows new analyzers, tokenizers, token filters, or char filters to be added to an index by taking the index offline for at least a few seconds. This temporarily causes indexing and query requests to fail. Performance and write availability of the index can be impaired for several minutes after the index is updated, or longer for very large indexes." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/IfMatchParameter" + }, + { + "$ref": "#/parameters/IfNoneMatchParameter" + }, + { + "$ref": "#/parameters/PreferHeaderParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/Index" + } + }, + "201": { + "description": "", + "schema": { + "$ref": "#/definitions/Index" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + }, + "delete": { + "tags": [ + "Indexes" + ], + "operationId": "Indexes_Delete", + "x-ms-examples": { + "SearchServiceDeleteIndex": { + "$ref": "./examples/SearchServiceDeleteIndex.json" + } + }, + "description": "Deletes a search index and all the documents it contains.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Delete-Index" + }, + "parameters": [ + { + "name": "indexName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the index to delete." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/IfMatchParameter" + }, + { + "$ref": "#/parameters/IfNoneMatchParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "204": { + "description": "" + }, + "404": { + "description": "" + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + }, + "get": { + "tags": [ + "Indexes" + ], + "operationId": "Indexes_Get", + "x-ms-examples": { + "SearchServiceGetIndex": { + "$ref": "./examples/SearchServiceGetIndex.json" + } + }, + "description": "Retrieves an index definition.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Index" + }, + "parameters": [ + { + "name": "indexName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the index to retrieve." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/Index" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + } + }, + "/indexes('{indexName}')/search.stats": { + "get": { + "tags": [ + "Indexes" + ], + "operationId": "Indexes_GetStatistics", + "x-ms-examples": { + "SearchServiceGetIndexStatistics": { + "$ref": "./examples/SearchServiceGetIndexStatistics.json" + } + }, + "description": "Returns statistics for the given index, including a document count and storage usage.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Index-Statistics" + }, + "parameters": [ + { + "name": "indexName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the index for which to retrieve statistics." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/GetIndexStatisticsResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + } + }, + "/indexes('{indexName}')/search.analyze": { + "post": { + "tags": [ + "Indexes" + ], + "operationId": "Indexes_Analyze", + "x-ms-examples": { + "SearchServiceIndexAnalyze": { + "$ref": "./examples/SearchServiceIndexAnalyze.json" + } + }, + "description": "Shows how an analyzer breaks text into tokens.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/test-analyzer" + }, + "parameters": [ + { + "name": "indexName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the index for which to test an analyzer." + }, + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AnalyzeRequest" + }, + "description": "The text and analyzer or analysis components to test." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/AnalyzeResult" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + } + }, + "/servicestats": { + "get": { + "tags": [ + "Service" + ], + "operationId": "GetServiceStatistics", + "x-ms-examples": { + "SearchServiceGetServiceStatistics": { + "$ref": "./examples/SearchServiceGetServiceStatistics.json" + } + }, + "description": "Gets service level statistics for a search service.", + "parameters": [ + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/ServiceStatistics" + } + }, + "default": { + "description": "Error response.", + "schema": { + "$ref": "#/definitions/SearchError" + } + } + } + } + } + }, + "definitions": { + "AnalyzeRequest": { + "properties": { + "text": { + "type": "string", + "description": "The text to break into tokens." + }, + "analyzer": { + "$ref": "#/definitions/AnalyzerName", + "description": "The name of the analyzer to use to break the given text. If this parameter is not specified, you must specify a tokenizer instead. The tokenizer and analyzer parameters are mutually exclusive." + }, + "tokenizer": { + "$ref": "#/definitions/TokenizerName", + "description": "The name of the tokenizer to use to break the given text. If this parameter is not specified, you must specify an analyzer instead. The tokenizer and analyzer parameters are mutually exclusive." + }, + "tokenFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/TokenFilterName", + "x-nullable": false + }, + "description": "An optional list of token filters to use when breaking the given text. This parameter can only be set when using the tokenizer parameter." + }, + "charFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/CharFilterName", + "x-nullable": false + }, + "description": "An optional list of character filters to use when breaking the given text. This parameter can only be set when using the tokenizer parameter." + } + }, + "required": [ + "text" + ], + "description": "Specifies some text and analysis components used to break that text into tokens." + }, + "AnalyzeResult": { + "properties": { + "tokens": { + "type": "array", + "items": { + "$ref": "#/definitions/TokenInfo" + }, + "description": "The list of tokens returned by the analyzer specified in the request." + } + }, + "required": [ + "tokens" + ], + "description": "The result of testing an analyzer on text." + }, + "TokenInfo": { + "properties": { + "token": { + "type": "string", + "readOnly": true, + "description": "The token returned by the analyzer." + }, + "startOffset": { + "type": "integer", + "format": "int32", + "readOnly": true, + "x-nullable": false, + "description": "The index of the first character of the token in the input text." + }, + "endOffset": { + "type": "integer", + "format": "int32", + "readOnly": true, + "x-nullable": false, + "description": "The index of the last character of the token in the input text." + }, + "position": { + "type": "integer", + "format": "int32", + "readOnly": true, + "x-nullable": false, + "description": "The position of the token in the input text relative to other tokens. The first token in the input text has position 0, the next has position 1, and so on. Depending on the analyzer used, some tokens might have the same position, for example if they are synonyms of each other." + } + }, + "required": [ + "token", + "startOffset", + "endOffset", + "position" + ], + "description": "Information about a token returned by an analyzer." + }, + "AnalyzerName": { + "type": "string", + "enum": [ + "ar.microsoft", + "ar.lucene", + "hy.lucene", + "bn.microsoft", + "eu.lucene", + "bg.microsoft", + "bg.lucene", + "ca.microsoft", + "ca.lucene", + "zh-Hans.microsoft", + "zh-Hans.lucene", + "zh-Hant.microsoft", + "zh-Hant.lucene", + "hr.microsoft", + "cs.microsoft", + "cs.lucene", + "da.microsoft", + "da.lucene", + "nl.microsoft", + "nl.lucene", + "en.microsoft", + "en.lucene", + "et.microsoft", + "fi.microsoft", + "fi.lucene", + "fr.microsoft", + "fr.lucene", + "gl.lucene", + "de.microsoft", + "de.lucene", + "el.microsoft", + "el.lucene", + "gu.microsoft", + "he.microsoft", + "hi.microsoft", + "hi.lucene", + "hu.microsoft", + "hu.lucene", + "is.microsoft", + "id.microsoft", + "id.lucene", + "ga.lucene", + "it.microsoft", + "it.lucene", + "ja.microsoft", + "ja.lucene", + "kn.microsoft", + "ko.microsoft", + "ko.lucene", + "lv.microsoft", + "lv.lucene", + "lt.microsoft", + "ml.microsoft", + "ms.microsoft", + "mr.microsoft", + "nb.microsoft", + "no.lucene", + "fa.lucene", + "pl.microsoft", + "pl.lucene", + "pt-BR.microsoft", + "pt-BR.lucene", + "pt-PT.microsoft", + "pt-PT.lucene", + "pa.microsoft", + "ro.microsoft", + "ro.lucene", + "ru.microsoft", + "ru.lucene", + "sr-cyrillic.microsoft", + "sr-latin.microsoft", + "sk.microsoft", + "sl.microsoft", + "es.microsoft", + "es.lucene", + "sv.microsoft", + "sv.lucene", + "ta.microsoft", + "te.microsoft", + "th.microsoft", + "th.lucene", + "tr.microsoft", + "tr.lucene", + "uk.microsoft", + "ur.microsoft", + "vi.microsoft", + "standard.lucene", + "standardasciifolding.lucene", + "keyword", + "pattern", + "simple", + "stop", + "whitespace" + ], + "x-ms-enum": { + "name": "AnalyzerName", + "modelAsString": true, + "values": [ + { + "value": "ar.microsoft", + "name": "ArMicrosoft", + "description": "Microsoft analyzer for Arabic." + }, + { + "value": "ar.lucene", + "name": "ArLucene", + "description": "Lucene analyzer for Arabic." + }, + { + "value": "hy.lucene", + "name": "HyLucene", + "description": "Lucene analyzer for Armenian." + }, + { + "value": "bn.microsoft", + "name": "BnMicrosoft", + "description": "Microsoft analyzer for Bangla." + }, + { + "value": "eu.lucene", + "name": "EuLucene", + "description": "Lucene analyzer for Basque." + }, + { + "value": "bg.microsoft", + "name": "BgMicrosoft", + "description": "Microsoft analyzer for Bulgarian." + }, + { + "value": "bg.lucene", + "name": "BgLucene", + "description": "Lucene analyzer for Bulgarian." + }, + { + "value": "ca.microsoft", + "name": "CaMicrosoft", + "description": "Microsoft analyzer for Catalan." + }, + { + "value": "ca.lucene", + "name": "CaLucene", + "description": "Lucene analyzer for Catalan." + }, + { + "value": "zh-Hans.microsoft", + "name": "ZhHansMicrosoft", + "description": "Microsoft analyzer for Chinese (Simplified)." + }, + { + "value": "zh-Hans.lucene", + "name": "ZhHansLucene", + "description": "Lucene analyzer for Chinese (Simplified)." + }, + { + "value": "zh-Hant.microsoft", + "name": "ZhHantMicrosoft", + "description": "Microsoft analyzer for Chinese (Traditional)." + }, + { + "value": "zh-Hant.lucene", + "name": "ZhHantLucene", + "description": "Lucene analyzer for Chinese (Traditional)." + }, + { + "value": "hr.microsoft", + "name": "HrMicrosoft", + "description": "Microsoft analyzer for Croatian." + }, + { + "value": "cs.microsoft", + "name": "CsMicrosoft", + "description": "Microsoft analyzer for Czech." + }, + { + "value": "cs.lucene", + "name": "CsLucene", + "description": "Lucene analyzer for Czech." + }, + { + "value": "da.microsoft", + "name": "DaMicrosoft", + "description": "Microsoft analyzer for Danish." + }, + { + "value": "da.lucene", + "name": "DaLucene", + "description": "Lucene analyzer for Danish." + }, + { + "value": "nl.microsoft", + "name": "NlMicrosoft", + "description": "Microsoft analyzer for Dutch." + }, + { + "value": "nl.lucene", + "name": "NlLucene", + "description": "Lucene analyzer for Dutch." + }, + { + "value": "en.microsoft", + "name": "EnMicrosoft", + "description": "Microsoft analyzer for English." + }, + { + "value": "en.lucene", + "name": "EnLucene", + "description": "Lucene analyzer for English." + }, + { + "value": "et.microsoft", + "name": "EtMicrosoft", + "description": "Microsoft analyzer for Estonian." + }, + { + "value": "fi.microsoft", + "name": "FiMicrosoft", + "description": "Microsoft analyzer for Finnish." + }, + { + "value": "fi.lucene", + "name": "FiLucene", + "description": "Lucene analyzer for Finnish." + }, + { + "value": "fr.microsoft", + "name": "FrMicrosoft", + "description": "Microsoft analyzer for French." + }, + { + "value": "fr.lucene", + "name": "FrLucene", + "description": "Lucene analyzer for French." + }, + { + "value": "gl.lucene", + "name": "GlLucene", + "description": "Lucene analyzer for Galician." + }, + { + "value": "de.microsoft", + "name": "DeMicrosoft", + "description": "Microsoft analyzer for German." + }, + { + "value": "de.lucene", + "name": "DeLucene", + "description": "Lucene analyzer for German." + }, + { + "value": "el.microsoft", + "name": "ElMicrosoft", + "description": "Microsoft analyzer for Greek." + }, + { + "value": "el.lucene", + "name": "ElLucene", + "description": "Lucene analyzer for Greek." + }, + { + "value": "gu.microsoft", + "name": "GuMicrosoft", + "description": "Microsoft analyzer for Gujarati." + }, + { + "value": "he.microsoft", + "name": "HeMicrosoft", + "description": "Microsoft analyzer for Hebrew." + }, + { + "value": "hi.microsoft", + "name": "HiMicrosoft", + "description": "Microsoft analyzer for Hindi." + }, + { + "value": "hi.lucene", + "name": "HiLucene", + "description": "Lucene analyzer for Hindi." + }, + { + "value": "hu.microsoft", + "name": "HuMicrosoft", + "description": "Microsoft analyzer for Hungarian." + }, + { + "value": "hu.lucene", + "name": "HuLucene", + "description": "Lucene analyzer for Hungarian." + }, + { + "value": "is.microsoft", + "name": "IsMicrosoft", + "description": "Microsoft analyzer for Icelandic." + }, + { + "value": "id.microsoft", + "name": "IdMicrosoft", + "description": "Microsoft analyzer for Indonesian (Bahasa)." + }, + { + "value": "id.lucene", + "name": "IdLucene", + "description": "Lucene analyzer for Indonesian." + }, + { + "value": "ga.lucene", + "name": "GaLucene", + "description": "Lucene analyzer for Irish." + }, + { + "value": "it.microsoft", + "name": "ItMicrosoft", + "description": "Microsoft analyzer for Italian." + }, + { + "value": "it.lucene", + "name": "ItLucene", + "description": "Lucene analyzer for Italian." + }, + { + "value": "ja.microsoft", + "name": "JaMicrosoft", + "description": "Microsoft analyzer for Japanese." + }, + { + "value": "ja.lucene", + "name": "JaLucene", + "description": "Lucene analyzer for Japanese." + }, + { + "value": "kn.microsoft", + "name": "KnMicrosoft", + "description": "Microsoft analyzer for Kannada." + }, + { + "value": "ko.microsoft", + "name": "KoMicrosoft", + "description": "Microsoft analyzer for Korean." + }, + { + "value": "ko.lucene", + "name": "KoLucene", + "description": "Lucene analyzer for Korean." + }, + { + "value": "lv.microsoft", + "name": "LvMicrosoft", + "description": "Microsoft analyzer for Latvian." + }, + { + "value": "lv.lucene", + "name": "LvLucene", + "description": "Lucene analyzer for Latvian." + }, + { + "value": "lt.microsoft", + "name": "LtMicrosoft", + "description": "Microsoft analyzer for Lithuanian." + }, + { + "value": "ml.microsoft", + "name": "MlMicrosoft", + "description": "Microsoft analyzer for Malayalam." + }, + { + "value": "ms.microsoft", + "name": "MsMicrosoft", + "description": "Microsoft analyzer for Malay (Latin)." + }, + { + "value": "mr.microsoft", + "name": "MrMicrosoft", + "description": "Microsoft analyzer for Marathi." + }, + { + "value": "nb.microsoft", + "name": "NbMicrosoft", + "description": "Microsoft analyzer for Norwegian (Bokmål)." + }, + { + "value": "no.lucene", + "name": "NoLucene", + "description": "Lucene analyzer for Norwegian." + }, + { + "value": "fa.lucene", + "name": "FaLucene", + "description": "Lucene analyzer for Persian." + }, + { + "value": "pl.microsoft", + "name": "PlMicrosoft", + "description": "Microsoft analyzer for Polish." + }, + { + "value": "pl.lucene", + "name": "PlLucene", + "description": "Lucene analyzer for Polish." + }, + { + "value": "pt-BR.microsoft", + "name": "PtBrMicrosoft", + "description": "Microsoft analyzer for Portuguese (Brazil)." + }, + { + "value": "pt-BR.lucene", + "name": "PtBrLucene", + "description": "Lucene analyzer for Portuguese (Brazil)." + }, + { + "value": "pt-PT.microsoft", + "name": "PtPtMicrosoft", + "description": "Microsoft analyzer for Portuguese (Portugal)." + }, + { + "value": "pt-PT.lucene", + "name": "PtPtLucene", + "description": "Lucene analyzer for Portuguese (Portugal)." + }, + { + "value": "pa.microsoft", + "name": "PaMicrosoft", + "description": "Microsoft analyzer for Punjabi." + }, + { + "value": "ro.microsoft", + "name": "RoMicrosoft", + "description": "Microsoft analyzer for Romanian." + }, + { + "value": "ro.lucene", + "name": "RoLucene", + "description": "Lucene analyzer for Romanian." + }, + { + "value": "ru.microsoft", + "name": "RuMicrosoft", + "description": "Microsoft analyzer for Russian." + }, + { + "value": "ru.lucene", + "name": "RuLucene", + "description": "Lucene analyzer for Russian." + }, + { + "value": "sr-cyrillic.microsoft", + "name": "SrCyrillicMicrosoft", + "description": "Microsoft analyzer for Serbian (Cyrillic)." + }, + { + "value": "sr-latin.microsoft", + "name": "SrLatinMicrosoft", + "description": "Microsoft analyzer for Serbian (Latin)." + }, + { + "value": "sk.microsoft", + "name": "SkMicrosoft", + "description": "Microsoft analyzer for Slovak." + }, + { + "value": "sl.microsoft", + "name": "SlMicrosoft", + "description": "Microsoft analyzer for Slovenian." + }, + { + "value": "es.microsoft", + "name": "EsMicrosoft", + "description": "Microsoft analyzer for Spanish." + }, + { + "value": "es.lucene", + "name": "EsLucene", + "description": "Lucene analyzer for Spanish." + }, + { + "value": "sv.microsoft", + "name": "SvMicrosoft", + "description": "Microsoft analyzer for Swedish." + }, + { + "value": "sv.lucene", + "name": "SvLucene", + "description": "Lucene analyzer for Swedish." + }, + { + "value": "ta.microsoft", + "name": "TaMicrosoft", + "description": "Microsoft analyzer for Tamil." + }, + { + "value": "te.microsoft", + "name": "TeMicrosoft", + "description": "Microsoft analyzer for Telugu." + }, + { + "value": "th.microsoft", + "name": "ThMicrosoft", + "description": "Microsoft analyzer for Thai." + }, + { + "value": "th.lucene", + "name": "ThLucene", + "description": "Lucene analyzer for Thai." + }, + { + "value": "tr.microsoft", + "name": "TrMicrosoft", + "description": "Microsoft analyzer for Turkish." + }, + { + "value": "tr.lucene", + "name": "TrLucene", + "description": "Lucene analyzer for Turkish." + }, + { + "value": "uk.microsoft", + "name": "UkMicrosoft", + "description": "Microsoft analyzer for Ukrainian." + }, + { + "value": "ur.microsoft", + "name": "UrMicrosoft", + "description": "Microsoft analyzer for Urdu." + }, + { + "value": "vi.microsoft", + "name": "ViMicrosoft", + "description": "Microsoft analyzer for Vietnamese." + }, + { + "value": "standard.lucene", + "name": "StandardLucene", + "description": "Standard Lucene analyzer." + }, + { + "value": "standardasciifolding.lucene", + "name": "StandardAsciiFoldingLucene", + "description": "Standard ASCII Folding Lucene analyzer. See https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#Analyzers" + }, + { + "value": "keyword", + "name": "Keyword", + "description": "Treats the entire content of a field as a single token. This is useful for data like zip codes, ids, and some product names. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordAnalyzer.html" + }, + { + "value": "pattern", + "name": "Pattern", + "description": "Flexibly separates text into terms via a regular expression pattern. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/PatternAnalyzer.html" + }, + { + "value": "simple", + "name": "Simple", + "description": "Divides text at non-letters and converts them to lower case. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/SimpleAnalyzer.html" + }, + { + "value": "stop", + "name": "Stop", + "description": "Divides text at non-letters; Applies the lowercase and stopword token filters. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopAnalyzer.html" + }, + { + "value": "whitespace", + "name": "Whitespace", + "description": "An analyzer that uses the whitespace tokenizer. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/WhitespaceAnalyzer.html" + } + ] + }, + "description": "Defines the names of all text analyzers supported by Azure Cognitive Search.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Language-support" + } + }, + "TokenizerName": { + "type": "string", + "enum": [ + "classic", + "edgeNGram", + "keyword_v2", + "letter", + "lowercase", + "microsoft_language_tokenizer", + "microsoft_language_stemming_tokenizer", + "nGram", + "path_hierarchy_v2", + "pattern", + "standard_v2", + "uax_url_email", + "whitespace" + ], + "x-ms-enum": { + "name": "TokenizerName", + "modelAsString": true, + "values": [ + { + "value": "classic", + "name": "Classic", + "description": "Grammar-based tokenizer that is suitable for processing most European-language documents. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicTokenizer.html" + }, + { + "value": "edgeNGram", + "name": "EdgeNGram", + "description": "Tokenizes the input from an edge into n-grams of the given size(s). See https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenizer.html" + }, + { + "value": "keyword_v2", + "name": "Keyword", + "description": "Emits the entire input as a single token. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordTokenizer.html" + }, + { + "value": "letter", + "name": "Letter", + "description": "Divides text at non-letters. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LetterTokenizer.html" + }, + { + "value": "lowercase", + "name": "Lowercase", + "description": "Divides text at non-letters and converts them to lower case. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LowerCaseTokenizer.html" + }, + { + "value": "microsoft_language_tokenizer", + "name": "MicrosoftLanguageTokenizer", + "description": "Divides text using language-specific rules." + }, + { + "value": "microsoft_language_stemming_tokenizer", + "name": "MicrosoftLanguageStemmingTokenizer", + "description": "Divides text using language-specific rules and reduces words to their base forms." + }, + { + "value": "nGram", + "name": "NGram", + "description": "Tokenizes the input into n-grams of the given size(s). See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenizer.html" + }, + { + "value": "path_hierarchy_v2", + "name": "PathHierarchy", + "description": "Tokenizer for path-like hierarchies. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/path/PathHierarchyTokenizer.html" + }, + { + "value": "pattern", + "name": "Pattern", + "description": "Tokenizer that uses regex pattern matching to construct distinct tokens. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternTokenizer.html" + }, + { + "value": "standard_v2", + "name": "Standard", + "description": "Standard Lucene analyzer; Composed of the standard tokenizer, lowercase filter and stop filter. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/StandardTokenizer.html" + }, + { + "value": "uax_url_email", + "name": "UaxUrlEmail", + "description": "Tokenizes urls and emails as one token. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/UAX29URLEmailTokenizer.html" + }, + { + "value": "whitespace", + "name": "Whitespace", + "description": "Divides text at whitespace. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/WhitespaceTokenizer.html" + } + ] + }, + "description": "Defines the names of all tokenizers supported by Azure Cognitive Search.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" + } + }, + "TokenFilterName": { + "type": "string", + "enum": [ + "arabic_normalization", + "apostrophe", + "asciifolding", + "cjk_bigram", + "cjk_width", + "classic", + "common_grams", + "edgeNGram_v2", + "elision", + "german_normalization", + "hindi_normalization", + "indic_normalization", + "keyword_repeat", + "kstem", + "length", + "limit", + "lowercase", + "nGram_v2", + "persian_normalization", + "phonetic", + "porter_stem", + "reverse", + "scandinavian_normalization", + "scandinavian_folding", + "shingle", + "snowball", + "sorani_normalization", + "stemmer", + "stopwords", + "trim", + "truncate", + "unique", + "uppercase", + "word_delimiter" + ], + "x-ms-enum": { + "name": "TokenFilterName", + "modelAsString": true, + "values": [ + { + "value": "arabic_normalization", + "name": "ArabicNormalization", + "description": "A token filter that applies the Arabic normalizer to normalize the orthography. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ar/ArabicNormalizationFilter.html" + }, + { + "value": "apostrophe", + "name": "Apostrophe", + "description": "Strips all characters after an apostrophe (including the apostrophe itself). See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/tr/ApostropheFilter.html" + }, + { + "value": "asciifolding", + "name": "AsciiFolding", + "description": "Converts alphabetic, numeric, and symbolic Unicode characters which are not in the first 127 ASCII characters (the \"Basic Latin\" Unicode block) into their ASCII equivalents, if such equivalents exist. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ASCIIFoldingFilter.html" + }, + { + "value": "cjk_bigram", + "name": "CjkBigram", + "description": "Forms bigrams of CJK terms that are generated from StandardTokenizer. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKBigramFilter.html" + }, + { + "value": "cjk_width", + "name": "CjkWidth", + "description": "Normalizes CJK width differences. Folds fullwidth ASCII variants into the equivalent basic Latin, and half-width Katakana variants into the equivalent Kana. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKWidthFilter.html" + }, + { + "value": "classic", + "name": "Classic", + "description": "Removes English possessives, and dots from acronyms. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicFilter.html" + }, + { + "value": "common_grams", + "name": "CommonGram", + "description": "Construct bigrams for frequently occurring terms while indexing. Single terms are still indexed too, with bigrams overlaid. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/commongrams/CommonGramsFilter.html" + }, + { + "value": "edgeNGram_v2", + "name": "EdgeNGram", + "description": "Generates n-grams of the given size(s) starting from the front or the back of an input token. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenFilter.html" + }, + { + "value": "elision", + "name": "Elision", + "description": "Removes elisions. For example, \"l'avion\" (the plane) will be converted to \"avion\" (plane). See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/util/ElisionFilter.html" + }, + { + "value": "german_normalization", + "name": "GermanNormalization", + "description": "Normalizes German characters according to the heuristics of the German2 snowball algorithm. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/de/GermanNormalizationFilter.html" + }, + { + "value": "hindi_normalization", + "name": "HindiNormalization", + "description": "Normalizes text in Hindi to remove some differences in spelling variations. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/hi/HindiNormalizationFilter.html" + }, + { + "value": "indic_normalization", + "name": "IndicNormalization", + "description": "Normalizes the Unicode representation of text in Indian languages. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/in/IndicNormalizationFilter.html" + }, + { + "value": "keyword_repeat", + "name": "KeywordRepeat", + "description": "Emits each incoming token twice, once as keyword and once as non-keyword. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/KeywordRepeatFilter.html" + }, + { + "value": "kstem", + "name": "KStem", + "description": "A high-performance kstem filter for English. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/en/KStemFilter.html" + }, + { + "value": "length", + "name": "Length", + "description": "Removes words that are too long or too short. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LengthFilter.html" + }, + { + "value": "limit", + "name": "Limit", + "description": "Limits the number of tokens while indexing. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LimitTokenCountFilter.html" + }, + { + "value": "lowercase", + "name": "Lowercase", + "description": "Normalizes token text to lower case. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LowerCaseFilter.htm" + }, + { + "value": "nGram_v2", + "name": "NGram", + "description": "Generates n-grams of the given size(s). See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenFilter.html" + }, + { + "value": "persian_normalization", + "name": "PersianNormalization", + "description": "Applies normalization for Persian. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/fa/PersianNormalizationFilter.html" + }, + { + "value": "phonetic", + "name": "Phonetic", + "description": "Create tokens for phonetic matches. See https://lucene.apache.org/core/4_10_3/analyzers-phonetic/org/apache/lucene/analysis/phonetic/package-tree.html" + }, + { + "value": "porter_stem", + "name": "PorterStem", + "description": "Uses the Porter stemming algorithm to transform the token stream. See http://tartarus.org/~martin/PorterStemmer" + }, + { + "value": "reverse", + "name": "Reverse", + "description": "Reverses the token string. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/reverse/ReverseStringFilter.html" + }, + { + "value": "scandinavian_normalization", + "name": "ScandinavianNormalization", + "description": "Normalizes use of the interchangeable Scandinavian characters. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianNormalizationFilter.html" + }, + { + "value": "scandinavian_folding", + "name": "ScandinavianFoldingNormalization", + "description": "Folds Scandinavian characters åÅäæÄÆ->a and öÖøØ->o. It also discriminates against use of double vowels aa, ae, ao, oe and oo, leaving just the first one. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianFoldingFilter.html" + }, + { + "value": "shingle", + "name": "Shingle", + "description": "Creates combinations of tokens as a single token. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/shingle/ShingleFilter.html" + }, + { + "value": "snowball", + "name": "Snowball", + "description": "A filter that stems words using a Snowball-generated stemmer. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/snowball/SnowballFilter.html" + }, + { + "value": "sorani_normalization", + "name": "SoraniNormalization", + "description": "Normalizes the Unicode representation of Sorani text. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ckb/SoraniNormalizationFilter.html" + }, + { + "value": "stemmer", + "name": "Stemmer", + "description": "Language specific stemming filter. See https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#TokenFilters" + }, + { + "value": "stopwords", + "name": "Stopwords", + "description": "Removes stop words from a token stream. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopFilter.html" + }, + { + "value": "trim", + "name": "Trim", + "description": "Trims leading and trailing whitespace from tokens. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TrimFilter.html" + }, + { + "value": "truncate", + "name": "Truncate", + "description": "Truncates the terms to a specific length. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TruncateTokenFilter.html" + }, + { + "value": "unique", + "name": "Unique", + "description": "Filters out tokens with same text as the previous token. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/RemoveDuplicatesTokenFilter.html" + }, + { + "value": "uppercase", + "name": "Uppercase", + "description": "Normalizes token text to upper case. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/UpperCaseFilter.html" + }, + { + "value": "word_delimiter", + "name": "WordDelimiter", + "description": "Splits words into subwords and performs optional transformations on subword groups." + } + ] + }, + "description": "Defines the names of all token filters supported by Azure Cognitive Search.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" + } + }, + "CharFilterName": { + "type": "string", + "enum": [ + "html_strip" + ], + "x-ms-enum": { + "name": "CharFilterName", + "modelAsString": true, + "values": [ + { + "value": "html_strip", + "name": "HtmlStrip", + "description": "A character filter that attempts to strip out HTML constructs. See https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/charfilter/HTMLStripCharFilter.html" + } + ] + }, + "description": "Defines the names of all character filters supported by Azure Cognitive Search.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" + } + }, + "RegexFlags": { + "type": "string", + "enum": [ + "CANON_EQ", + "CASE_INSENSITIVE", + "COMMENTS", + "DOTALL", + "LITERAL", + "MULTILINE", + "UNICODE_CASE", + "UNIX_LINES" + ], + "x-ms-enum": { + "name": "RegexFlags", + "modelAsString": true + }, + "description": "Defines flags that can be combined to control how regular expressions are used in the pattern analyzer and pattern tokenizer.", + "externalDocs": { + "url": "http://docs.oracle.com/javase/6/docs/api/java/util/regex/Pattern.html#field_summary" + } + }, + "DataType": { + "type": "string", + "enum": [ + "Edm.String", + "Edm.Int32", + "Edm.Int64", + "Edm.Double", + "Edm.Boolean", + "Edm.DateTimeOffset", + "Edm.GeographyPoint", + "Edm.ComplexType" + ], + "x-ms-enum": { + "name": "DataType", + "modelAsString": true + }, + "description": "Defines the data type of a field in a search index." + }, + "Analyzer": { + "discriminator": "@odata.type", + "properties": { + "@odata.type": { + "type": "string", + "description": "Identifies the concrete type of the analyzer." + }, + "name": { + "type": "string", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/custom-analyzers-in-azure-search#index-attribute-reference" + }, + "description": "The name of the analyzer. It must only contain letters, digits, spaces, dashes or underscores, can only start and end with alphanumeric characters, and is limited to 128 characters." + } + }, + "required": [ + "@odata.type", + "name" + ], + "description": "Base type for analyzers." + }, + "CustomAnalyzer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.CustomAnalyzer", + "allOf": [ + { + "$ref": "#/definitions/Analyzer" + } + ], + "properties": { + "tokenizer": { + "$ref": "#/definitions/TokenizerName", + "description": "The name of the tokenizer to use to divide continuous text into a sequence of tokens, such as breaking a sentence into words." + }, + "tokenFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/TokenFilterName", + "x-nullable": false + }, + "description": "A list of token filters used to filter out or modify the tokens generated by a tokenizer. For example, you can specify a lowercase filter that converts all characters to lowercase. The filters are run in the order in which they are listed." + }, + "charFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/CharFilterName", + "x-nullable": false + }, + "description": "A list of character filters used to prepare input text before it is processed by the tokenizer. For instance, they can replace certain characters or symbols. The filters are run in the order in which they are listed." + } + }, + "required": [ + "tokenizer" + ], + "description": "Allows you to take control over the process of converting text into indexable/searchable tokens. It's a user-defined configuration consisting of a single predefined tokenizer and one or more filters. The tokenizer is responsible for breaking text into tokens, and the filters for modifying tokens emitted by the tokenizer." + }, + "PatternAnalyzer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternAnalyzer", + "allOf": [ + { + "$ref": "#/definitions/Analyzer" + } + ], + "properties": { + "lowercase": { + "x-ms-client-name": "LowerCaseTerms", + "type": "boolean", + "default": true, + "description": "A value indicating whether terms should be lower-cased. Default is true." + }, + "pattern": { + "type": "string", + "default": "\\W+", + "description": "A regular expression pattern to match token separators. Default is an expression that matches one or more whitespace characters." + }, + "flags": { + "$ref": "#/definitions/RegexFlags", + "description": "Regular expression flags." + }, + "stopwords": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of stopwords." + } + }, + "description": "Flexibly separates text into terms via a regular expression pattern. This analyzer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/PatternAnalyzer.html" + } + }, + "StandardAnalyzer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardAnalyzer", + "allOf": [ + { + "$ref": "#/definitions/Analyzer" + } + ], + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "default": 255, + "maximum": 300, + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length are split. The maximum token length that can be used is 300 characters." + }, + "stopwords": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of stopwords." + } + }, + "description": "Standard Apache Lucene analyzer; Composed of the standard tokenizer, lowercase filter and stop filter.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/StandardAnalyzer.html" + } + }, + "StopAnalyzer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StopAnalyzer", + "allOf": [ + { + "$ref": "#/definitions/Analyzer" + } + ], + "properties": { + "stopwords": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of stopwords." + } + }, + "description": "Divides text at non-letters; Applies the lowercase and stopword token filters. This analyzer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopAnalyzer.html" + } + }, + "Tokenizer": { + "discriminator": "@odata.type", + "properties": { + "@odata.type": { + "type": "string", + "description": "Identifies the concrete type of the tokenizer." + }, + "name": { + "type": "string", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/custom-analyzers-in-azure-search#index-attribute-reference" + }, + "description": "The name of the tokenizer. It must only contain letters, digits, spaces, dashes or underscores, can only start and end with alphanumeric characters, and is limited to 128 characters." + } + }, + "required": [ + "@odata.type", + "name" + ], + "description": "Base type for tokenizers.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" + } + }, + "ClassicTokenizer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.ClassicTokenizer", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "default": 255, + "maximum": 300, + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length are split. The maximum token length that can be used is 300 characters." + } + }, + "description": "Grammar-based tokenizer that is suitable for processing most European-language documents. This tokenizer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicTokenizer.html" + } + }, + "TokenCharacterKind": { + "type": "string", + "enum": [ + "letter", + "digit", + "whitespace", + "punctuation", + "symbol" + ], + "x-ms-enum": { + "name": "TokenCharacterKind", + "modelAsString": false + }, + "description": "Represents classes of characters on which a token filter can operate." + }, + "EdgeNGramTokenizer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenizer", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "default": 1, + "maximum": 300, + "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the value of maxGram." + }, + "maxGram": { + "type": "integer", + "format": "int32", + "default": 2, + "maximum": 300, + "description": "The maximum n-gram length. Default is 2. Maximum is 300." + }, + "tokenChars": { + "type": "array", + "items": { + "$ref": "#/definitions/TokenCharacterKind", + "x-nullable": false + }, + "description": "Character classes to keep in the tokens." + } + }, + "description": "Tokenizes the input from an edge into n-grams of the given size(s). This tokenizer is implemented using Apache Lucene.", + "externalDocs": { + "url": "https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenizer.html" + } + }, + "KeywordTokenizer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordTokenizer", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "bufferSize": { + "type": "integer", + "format": "int32", + "default": 256, + "description": "The read buffer size in bytes. Default is 256." + } + }, + "description": "Emits the entire input as a single token. This tokenizer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordTokenizer.html" + }, + "x-az-search-deprecated": true + }, + "KeywordTokenizerV2": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordTokenizerV2", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "default": 256, + "maximum": 300, + "description": "The maximum token length. Default is 256. Tokens longer than the maximum length are split. The maximum token length that can be used is 300 characters." + } + }, + "description": "Emits the entire input as a single token. This tokenizer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordTokenizer.html" + } + }, + "MicrosoftTokenizerLanguage": { + "type": "string", + "enum": [ + "bangla", + "bulgarian", + "catalan", + "chineseSimplified", + "chineseTraditional", + "croatian", + "czech", + "danish", + "dutch", + "english", + "french", + "german", + "greek", + "gujarati", + "hindi", + "icelandic", + "indonesian", + "italian", + "japanese", + "kannada", + "korean", + "malay", + "malayalam", + "marathi", + "norwegianBokmaal", + "polish", + "portuguese", + "portugueseBrazilian", + "punjabi", + "romanian", + "russian", + "serbianCyrillic", + "serbianLatin", + "slovenian", + "spanish", + "swedish", + "tamil", + "telugu", + "thai", + "ukrainian", + "urdu", + "vietnamese" + ], + "x-ms-enum": { + "name": "MicrosoftTokenizerLanguage", + "modelAsString": false + }, + "description": "Lists the languages supported by the Microsoft language tokenizer." + }, + "MicrosoftLanguageTokenizer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.MicrosoftLanguageTokenizer", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "default": 255, + "maximum": 300, + "description": "The maximum token length. Tokens longer than the maximum length are split. Maximum token length that can be used is 300 characters. Tokens longer than 300 characters are first split into tokens of length 300 and then each of those tokens is split based on the max token length set. Default is 255." + }, + "isSearchTokenizer": { + "type": "boolean", + "default": false, + "description": "A value indicating how the tokenizer is used. Set to true if used as the search tokenizer, set to false if used as the indexing tokenizer. Default is false." + }, + "language": { + "$ref": "#/definitions/MicrosoftTokenizerLanguage", + "description": "The language to use. The default is English." + } + }, + "description": "Divides text using language-specific rules." + }, + "MicrosoftStemmingTokenizerLanguage": { + "type": "string", + "enum": [ + "arabic", + "bangla", + "bulgarian", + "catalan", + "croatian", + "czech", + "danish", + "dutch", + "english", + "estonian", + "finnish", + "french", + "german", + "greek", + "gujarati", + "hebrew", + "hindi", + "hungarian", + "icelandic", + "indonesian", + "italian", + "kannada", + "latvian", + "lithuanian", + "malay", + "malayalam", + "marathi", + "norwegianBokmaal", + "polish", + "portuguese", + "portugueseBrazilian", + "punjabi", + "romanian", + "russian", + "serbianCyrillic", + "serbianLatin", + "slovak", + "slovenian", + "spanish", + "swedish", + "tamil", + "telugu", + "turkish", + "ukrainian", + "urdu" + ], + "x-ms-enum": { + "name": "MicrosoftStemmingTokenizerLanguage", + "modelAsString": false + }, + "description": "Lists the languages supported by the Microsoft language stemming tokenizer." + }, + "MicrosoftLanguageStemmingTokenizer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "default": 255, + "maximum": 300, + "description": "The maximum token length. Tokens longer than the maximum length are split. Maximum token length that can be used is 300 characters. Tokens longer than 300 characters are first split into tokens of length 300 and then each of those tokens is split based on the max token length set. Default is 255." + }, + "isSearchTokenizer": { + "type": "boolean", + "default": false, + "description": "A value indicating how the tokenizer is used. Set to true if used as the search tokenizer, set to false if used as the indexing tokenizer. Default is false." + }, + "language": { + "$ref": "#/definitions/MicrosoftStemmingTokenizerLanguage", + "description": "The language to use. The default is English." + } + }, + "description": "Divides text using language-specific rules and reduces words to their base forms." + }, + "NGramTokenizer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenizer", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "default": 1, + "maximum": 300, + "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the value of maxGram." + }, + "maxGram": { + "type": "integer", + "format": "int32", + "default": 2, + "maximum": 300, + "description": "The maximum n-gram length. Default is 2. Maximum is 300." + }, + "tokenChars": { + "type": "array", + "items": { + "$ref": "#/definitions/TokenCharacterKind", + "x-nullable": false + }, + "description": "Character classes to keep in the tokens." + } + }, + "description": "Tokenizes the input into n-grams of the given size(s). This tokenizer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenizer.html" + } + }, + "PathHierarchyTokenizerV2": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PathHierarchyTokenizerV2", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "delimiter": { + "type": "string", + "format": "char", + "default": "/", + "description": "The delimiter character to use. Default is \"/\"." + }, + "replacement": { + "type": "string", + "format": "char", + "default": "/", + "description": "A value that, if set, replaces the delimiter character. Default is \"/\"." + }, + "maxTokenLength": { + "type": "integer", + "format": "int32", + "default": 300, + "maximum": 300, + "description": "The maximum token length. Default and maximum is 300." + }, + "reverse": { + "x-ms-client-name": "ReverseTokenOrder", + "type": "boolean", + "default": false, + "description": "A value indicating whether to generate tokens in reverse order. Default is false." + }, + "skip": { + "x-ms-client-name": "NumberOfTokensToSkip", + "type": "integer", + "format": "int32", + "default": 0, + "description": "The number of initial tokens to skip. Default is 0." + } + }, + "description": "Tokenizer for path-like hierarchies. This tokenizer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/path/PathHierarchyTokenizer.html" + } + }, + "PatternTokenizer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternTokenizer", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "pattern": { + "type": "string", + "default": "\\W+", + "description": "A regular expression pattern to match token separators. Default is an expression that matches one or more whitespace characters." + }, + "flags": { + "$ref": "#/definitions/RegexFlags", + "description": "Regular expression flags." + }, + "group": { + "type": "integer", + "format": "int32", + "default": -1, + "description": "The zero-based ordinal of the matching group in the regular expression pattern to extract into tokens. Use -1 if you want to use the entire pattern to split the input into tokens, irrespective of matching groups. Default is -1." + } + }, + "description": "Tokenizer that uses regex pattern matching to construct distinct tokens. This tokenizer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternTokenizer.html" + } + }, + "StandardTokenizer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardTokenizer", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "default": 255, + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length are split." + } + }, + "description": "Breaks text following the Unicode Text Segmentation rules. This tokenizer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/StandardTokenizer.html" + }, + "x-az-search-deprecated": true + }, + "StandardTokenizerV2": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardTokenizerV2", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "default": 255, + "maximum": 300, + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length are split. The maximum token length that can be used is 300 characters." + } + }, + "description": "Breaks text following the Unicode Text Segmentation rules. This tokenizer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/StandardTokenizer.html" + } + }, + "UaxUrlEmailTokenizer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.UaxUrlEmailTokenizer", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "default": 255, + "maximum": 300, + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length are split. The maximum token length that can be used is 300 characters." + } + }, + "description": "Tokenizes urls and emails as one token. This tokenizer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/UAX29URLEmailTokenizer.html" + } + }, + "TokenFilter": { + "discriminator": "@odata.type", + "properties": { + "@odata.type": { + "type": "string", + "description": "Identifies the concrete type of the token filter." + }, + "name": { + "type": "string", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/custom-analyzers-in-azure-search#index-attribute-reference" + }, + "description": "The name of the token filter. It must only contain letters, digits, spaces, dashes or underscores, can only start and end with alphanumeric characters, and is limited to 128 characters." + } + }, + "required": [ + "@odata.type", + "name" + ], + "description": "Base type for token filters.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" + } + }, + "AsciiFoldingTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.AsciiFoldingTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "preserveOriginal": { + "type": "boolean", + "default": false, + "description": "A value indicating whether the original token will be kept. Default is false." + } + }, + "description": "Converts alphabetic, numeric, and symbolic Unicode characters which are not in the first 127 ASCII characters (the \"Basic Latin\" Unicode block) into their ASCII equivalents, if such equivalents exist. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ASCIIFoldingFilter.html" + } + }, + "CjkBigramTokenFilterScripts": { + "type": "string", + "enum": [ + "han", + "hiragana", + "katakana", + "hangul" + ], + "x-ms-enum": { + "name": "CjkBigramTokenFilterScripts", + "modelAsString": false + }, + "description": "Scripts that can be ignored by CjkBigramTokenFilter." + }, + "CjkBigramTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.CjkBigramTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "ignoreScripts": { + "type": "array", + "items": { + "$ref": "#/definitions/CjkBigramTokenFilterScripts", + "x-nullable": false + }, + "description": "The scripts to ignore." + }, + "outputUnigrams": { + "type": "boolean", + "default": false, + "description": "A value indicating whether to output both unigrams and bigrams (if true), or just bigrams (if false). Default is false." + } + }, + "description": "Forms bigrams of CJK terms that are generated from StandardTokenizer. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKBigramFilter.html" + } + }, + "CommonGramTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.CommonGramTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "commonWords": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The set of common words." + }, + "ignoreCase": { + "type": "boolean", + "default": false, + "description": "A value indicating whether common words matching will be case insensitive. Default is false." + }, + "queryMode": { + "x-ms-client-name": "UseQueryMode", + "type": "boolean", + "default": false, + "description": "A value that indicates whether the token filter is in query mode. When in query mode, the token filter generates bigrams and then removes common words and single terms followed by a common word. Default is false." + } + }, + "required": [ + "commonWords" + ], + "description": "Construct bigrams for frequently occurring terms while indexing. Single terms are still indexed too, with bigrams overlaid. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/commongrams/CommonGramsFilter.html" + } + }, + "DictionaryDecompounderTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "wordList": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of words to match against." + }, + "minWordSize": { + "type": "integer", + "format": "int32", + "default": 5, + "maximum": 300, + "description": "The minimum word size. Only words longer than this get processed. Default is 5. Maximum is 300." + }, + "minSubwordSize": { + "type": "integer", + "format": "int32", + "default": 2, + "maximum": 300, + "description": "The minimum subword size. Only subwords longer than this are outputted. Default is 2. Maximum is 300." + }, + "maxSubwordSize": { + "type": "integer", + "format": "int32", + "default": 15, + "maximum": 300, + "description": "The maximum subword size. Only subwords shorter than this are outputted. Default is 15. Maximum is 300." + }, + "onlyLongestMatch": { + "type": "boolean", + "default": false, + "description": "A value indicating whether to add only the longest matching subword to the output. Default is false." + } + }, + "required": [ + "wordList" + ], + "description": "Decomposes compound words found in many Germanic languages. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/compound/DictionaryCompoundWordTokenFilter.html" + } + }, + "EdgeNGramTokenFilterSide": { + "type": "string", + "enum": [ + "front", + "back" + ], + "x-ms-enum": { + "name": "EdgeNGramTokenFilterSide", + "modelAsString": false + }, + "description": "Specifies which side of the input an n-gram should be generated from." + }, + "EdgeNGramTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "default": 1, + "description": "The minimum n-gram length. Default is 1. Must be less than the value of maxGram." + }, + "maxGram": { + "type": "integer", + "format": "int32", + "default": 2, + "description": "The maximum n-gram length. Default is 2." + }, + "side": { + "$ref": "#/definitions/EdgeNGramTokenFilterSide", + "default": "front", + "description": "Specifies which side of the input the n-gram should be generated from. Default is \"front\"." + } + }, + "description": "Generates n-grams of the given size(s) starting from the front or the back of an input token. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenFilter.html" + }, + "x-az-search-deprecated": true + }, + "EdgeNGramTokenFilterV2": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenFilterV2", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "default": 1, + "maximum": 300, + "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the value of maxGram." + }, + "maxGram": { + "type": "integer", + "format": "int32", + "default": 2, + "maximum": 300, + "description": "The maximum n-gram length. Default is 2. Maximum is 300." + }, + "side": { + "$ref": "#/definitions/EdgeNGramTokenFilterSide", + "default": "front", + "description": "Specifies which side of the input the n-gram should be generated from. Default is \"front\"." + } + }, + "description": "Generates n-grams of the given size(s) starting from the front or the back of an input token. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenFilter.html" + } + }, + "ElisionTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.ElisionTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "articles": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The set of articles to remove." + } + }, + "description": "Removes elisions. For example, \"l'avion\" (the plane) will be converted to \"avion\" (plane). This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/util/ElisionFilter.html" + } + }, + "KeepTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeepTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "keepWords": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of words to keep." + }, + "keepWordsCase": { + "x-ms-client-name": "LowerCaseKeepWords", + "type": "boolean", + "default": false, + "description": "A value indicating whether to lower case all words first. Default is false." + } + }, + "required": [ + "keepWords" + ], + "description": "A token filter that only keeps tokens with text contained in a specified list of words. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/KeepWordFilter.html" + } + }, + "KeywordMarkerTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordMarkerTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "keywords": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of words to mark as keywords." + }, + "ignoreCase": { + "type": "boolean", + "default": false, + "description": "A value indicating whether to ignore case. If true, all words are converted to lower case first. Default is false." + } + }, + "required": [ + "keywords" + ], + "description": "Marks terms as keywords. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/KeywordMarkerFilter.html" + } + }, + "LengthTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.LengthTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "min": { + "type": "integer", + "format": "int32", + "default": 0, + "maximum": 300, + "description": "The minimum length in characters. Default is 0. Maximum is 300. Must be less than the value of max." + }, + "max": { + "type": "integer", + "format": "int32", + "default": 300, + "maximum": 300, + "description": "The maximum length in characters. Default and maximum is 300." + } + }, + "description": "Removes words that are too long or too short. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LengthFilter.html" + } + }, + "LimitTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.LimitTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "maxTokenCount": { + "type": "integer", + "format": "int32", + "default": 1, + "description": "The maximum number of tokens to produce. Default is 1." + }, + "consumeAllTokens": { + "type": "boolean", + "default": false, + "description": "A value indicating whether all tokens from the input must be consumed even if maxTokenCount is reached. Default is false." + } + }, + "description": "Limits the number of tokens while indexing. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LimitTokenCountFilter.html" + } + }, + "NGramTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "default": 1, + "description": "The minimum n-gram length. Default is 1. Must be less than the value of maxGram." + }, + "maxGram": { + "type": "integer", + "format": "int32", + "default": 2, + "description": "The maximum n-gram length. Default is 2." + } + }, + "description": "Generates n-grams of the given size(s). This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenFilter.html" + }, + "x-az-search-deprecated": true + }, + "NGramTokenFilterV2": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenFilterV2", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "default": 1, + "maximum": 300, + "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the value of maxGram." + }, + "maxGram": { + "type": "integer", + "format": "int32", + "default": 2, + "maximum": 300, + "description": "The maximum n-gram length. Default is 2. Maximum is 300." + } + }, + "description": "Generates n-grams of the given size(s). This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenFilter.html" + } + }, + "PatternCaptureTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternCaptureTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "patterns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of patterns to match against each token." + }, + "preserveOriginal": { + "type": "boolean", + "default": true, + "description": "A value indicating whether to return the original token even if one of the patterns matches. Default is true." + } + }, + "required": [ + "patterns" + ], + "description": "Uses Java regexes to emit multiple tokens - one for each capture group in one or more patterns. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternCaptureGroupTokenFilter.html" + } + }, + "PatternReplaceTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternReplaceTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "pattern": { + "type": "string", + "description": "A regular expression pattern." + }, + "replacement": { + "type": "string", + "description": "The replacement text." + } + }, + "required": [ + "pattern", + "replacement" + ], + "description": "A character filter that replaces characters in the input string. It uses a regular expression to identify character sequences to preserve and a replacement pattern to identify characters to replace. For example, given the input text \"aa bb aa bb\", pattern \"(aa)\\s+(bb)\", and replacement \"$1#$2\", the result would be \"aa#bb aa#bb\". This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternReplaceFilter.html" + } + }, + "PhoneticEncoder": { + "type": "string", + "enum": [ + "metaphone", + "doubleMetaphone", + "soundex", + "refinedSoundex", + "caverphone1", + "caverphone2", + "cologne", + "nysiis", + "koelnerPhonetik", + "haasePhonetik", + "beiderMorse" + ], + "x-ms-enum": { + "name": "PhoneticEncoder", + "modelAsString": false + }, + "description": "Identifies the type of phonetic encoder to use with a PhoneticTokenFilter." + }, + "PhoneticTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PhoneticTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "encoder": { + "$ref": "#/definitions/PhoneticEncoder", + "default": "metaphone", + "description": "The phonetic encoder to use. Default is \"metaphone\"." + }, + "replace": { + "x-ms-client-name": "ReplaceOriginalTokens", + "type": "boolean", + "default": true, + "description": "A value indicating whether encoded tokens should replace original tokens. If false, encoded tokens are added as synonyms. Default is true." + } + }, + "description": "Create tokens for phonetic matches. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "https://lucene.apache.org/core/4_10_3/analyzers-phonetic/org/apache/lucene/analysis/phonetic/package-tree.html" + } + }, + "ShingleTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.ShingleTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "maxShingleSize": { + "type": "integer", + "format": "int32", + "default": 2, + "minimum": 2, + "description": "The maximum shingle size. Default and minimum value is 2." + }, + "minShingleSize": { + "type": "integer", + "format": "int32", + "default": 2, + "minimum": 2, + "description": "The minimum shingle size. Default and minimum value is 2. Must be less than the value of maxShingleSize." + }, + "outputUnigrams": { + "type": "boolean", + "default": true, + "description": "A value indicating whether the output stream will contain the input tokens (unigrams) as well as shingles. Default is true." + }, + "outputUnigramsIfNoShingles": { + "type": "boolean", + "default": false, + "description": "A value indicating whether to output unigrams for those times when no shingles are available. This property takes precedence when outputUnigrams is set to false. Default is false." + }, + "tokenSeparator": { + "type": "string", + "default": " ", + "description": "The string to use when joining adjacent tokens to form a shingle. Default is a single space (\" \")." + }, + "filterToken": { + "type": "string", + "default": "_", + "description": "The string to insert for each position at which there is no token. Default is an underscore (\"_\")." + } + }, + "description": "Creates combinations of tokens as a single token. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/shingle/ShingleFilter.html" + } + }, + "SnowballTokenFilterLanguage": { + "type": "string", + "enum": [ + "armenian", + "basque", + "catalan", + "danish", + "dutch", + "english", + "finnish", + "french", + "german", + "german2", + "hungarian", + "italian", + "kp", + "lovins", + "norwegian", + "porter", + "portuguese", + "romanian", + "russian", + "spanish", + "swedish", + "turkish" + ], + "x-ms-enum": { + "name": "SnowballTokenFilterLanguage", + "modelAsString": false + }, + "description": "The language to use for a Snowball token filter." + }, + "SnowballTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.SnowballTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "language": { + "$ref": "#/definitions/SnowballTokenFilterLanguage", + "description": "The language to use." + } + }, + "required": [ + "language" + ], + "description": "A filter that stems words using a Snowball-generated stemmer. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/snowball/SnowballFilter.html" + } + }, + "StemmerTokenFilterLanguage": { + "type": "string", + "enum": [ + "arabic", + "armenian", + "basque", + "brazilian", + "bulgarian", + "catalan", + "czech", + "danish", + "dutch", + "dutchKp", + "english", + "lightEnglish", + "minimalEnglish", + "possessiveEnglish", + "porter2", + "lovins", + "finnish", + "lightFinnish", + "french", + "lightFrench", + "minimalFrench", + "galician", + "minimalGalician", + "german", + "german2", + "lightGerman", + "minimalGerman", + "greek", + "hindi", + "hungarian", + "lightHungarian", + "indonesian", + "irish", + "italian", + "lightItalian", + "sorani", + "latvian", + "norwegian", + "lightNorwegian", + "minimalNorwegian", + "lightNynorsk", + "minimalNynorsk", + "portuguese", + "lightPortuguese", + "minimalPortuguese", + "portugueseRslp", + "romanian", + "russian", + "lightRussian", + "spanish", + "lightSpanish", + "swedish", + "lightSwedish", + "turkish" + ], + "x-ms-enum": { + "name": "StemmerTokenFilterLanguage", + "modelAsString": false + }, + "description": "The language to use for a stemmer token filter." + }, + "StemmerTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StemmerTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "language": { + "$ref": "#/definitions/StemmerTokenFilterLanguage", + "description": "The language to use." + } + }, + "required": [ + "language" + ], + "description": "Language specific stemming filter. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#TokenFilters" + } + }, + "StemmerOverrideTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StemmerOverrideTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "rules": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of stemming rules in the following format: \"word => stem\", for example: \"ran => run\"." + } + }, + "required": [ + "rules" + ], + "description": "Provides the ability to override other stemming filters with custom dictionary-based stemming. Any dictionary-stemmed terms will be marked as keywords so that they will not be stemmed with stemmers down the chain. Must be placed before any stemming filters. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/StemmerOverrideFilter.html" + } + }, + "StopwordsList": { + "type": "string", + "enum": [ + "arabic", + "armenian", + "basque", + "brazilian", + "bulgarian", + "catalan", + "czech", + "danish", + "dutch", + "english", + "finnish", + "french", + "galician", + "german", + "greek", + "hindi", + "hungarian", + "indonesian", + "irish", + "italian", + "latvian", + "norwegian", + "persian", + "portuguese", + "romanian", + "russian", + "sorani", + "spanish", + "swedish", + "thai", + "turkish" + ], + "x-ms-enum": { + "name": "StopwordsList", + "modelAsString": false + }, + "description": "Identifies a predefined list of language-specific stopwords." + }, + "StopwordsTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StopwordsTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "stopwords": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of stopwords. This property and the stopwords list property cannot both be set." + }, + "stopwordsList": { + "$ref": "#/definitions/StopwordsList", + "default": "english", + "description": "A predefined list of stopwords to use. This property and the stopwords property cannot both be set. Default is English." + }, + "ignoreCase": { + "type": "boolean", + "default": false, + "description": "A value indicating whether to ignore case. If true, all words are converted to lower case first. Default is false." + }, + "removeTrailing": { + "x-ms-client-name": "RemoveTrailingStopWords", + "type": "boolean", + "default": true, + "description": "A value indicating whether to ignore the last search term if it's a stop word. Default is true." + } + }, + "description": "Removes stop words from a token stream. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopFilter.html" + } + }, + "SynonymTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.SynonymTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "synonyms": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of synonyms in following one of two formats: 1. incredible, unbelievable, fabulous => amazing - all terms on the left side of => symbol will be replaced with all terms on its right side; 2. incredible, unbelievable, fabulous, amazing - comma separated list of equivalent words. Set the expand option to change how this list is interpreted." + }, + "ignoreCase": { + "type": "boolean", + "default": false, + "description": "A value indicating whether to case-fold input for matching. Default is false." + }, + "expand": { + "type": "boolean", + "default": true, + "description": "A value indicating whether all words in the list of synonyms (if => notation is not used) will map to one another. If true, all words in the list of synonyms (if => notation is not used) will map to one another. The following list: incredible, unbelievable, fabulous, amazing is equivalent to: incredible, unbelievable, fabulous, amazing => incredible, unbelievable, fabulous, amazing. If false, the following list: incredible, unbelievable, fabulous, amazing will be equivalent to: incredible, unbelievable, fabulous, amazing => incredible. Default is true." + } + }, + "required": [ + "synonyms" + ], + "description": "Matches single or multi-word synonyms in a token stream. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/synonym/SynonymFilter.html" + } + }, + "TruncateTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.TruncateTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "length": { + "type": "integer", + "format": "int32", + "default": 300, + "maximum": 300, + "description": "The length at which terms will be truncated. Default and maximum is 300." + } + }, + "description": "Truncates the terms to a specific length. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TruncateTokenFilter.html" + } + }, + "UniqueTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.UniqueTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "onlyOnSamePosition": { + "type": "boolean", + "default": false, + "description": "A value indicating whether to remove duplicates only at the same position. Default is false." + } + }, + "description": "Filters out tokens with same text as the previous token. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/RemoveDuplicatesTokenFilter.html" + } + }, + "WordDelimiterTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.WordDelimiterTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "generateWordParts": { + "type": "boolean", + "default": true, + "description": "A value indicating whether to generate part words. If set, causes parts of words to be generated; for example \"AzureSearch\" becomes \"Azure\" \"Search\". Default is true." + }, + "generateNumberParts": { + "type": "boolean", + "default": true, + "description": "A value indicating whether to generate number subwords. Default is true." + }, + "catenateWords": { + "type": "boolean", + "default": false, + "description": "A value indicating whether maximum runs of word parts will be catenated. For example, if this is set to true, \"Azure-Search\" becomes \"AzureSearch\". Default is false." + }, + "catenateNumbers": { + "type": "boolean", + "default": false, + "description": "A value indicating whether maximum runs of number parts will be catenated. For example, if this is set to true, \"1-2\" becomes \"12\". Default is false." + }, + "catenateAll": { + "type": "boolean", + "default": false, + "description": "A value indicating whether all subword parts will be catenated. For example, if this is set to true, \"Azure-Search-1\" becomes \"AzureSearch1\". Default is false." + }, + "splitOnCaseChange": { + "type": "boolean", + "default": true, + "description": "A value indicating whether to split words on caseChange. For example, if this is set to true, \"AzureSearch\" becomes \"Azure\" \"Search\". Default is true." + }, + "preserveOriginal": { + "type": "boolean", + "default": false, + "description": "A value indicating whether original words will be preserved and added to the subword list. Default is false." + }, + "splitOnNumerics": { + "type": "boolean", + "default": true, + "description": "A value indicating whether to split on numbers. For example, if this is set to true, \"Azure1Search\" becomes \"Azure\" \"1\" \"Search\". Default is true." + }, + "stemEnglishPossessive": { + "type": "boolean", + "default": true, + "description": "A value indicating whether to remove trailing \"'s\" for each subword. Default is true." + }, + "protectedWords": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of tokens to protect from being delimited." + } + }, + "description": "Splits words into subwords and performs optional transformations on subword groups. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/WordDelimiterFilter.html" + } + }, + "CharFilter": { + "discriminator": "@odata.type", + "properties": { + "@odata.type": { + "type": "string", + "description": "Identifies the concrete type of the char filter." + }, + "name": { + "type": "string", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/custom-analyzers-in-azure-search#index-attribute-reference" + }, + "description": "The name of the char filter. It must only contain letters, digits, spaces, dashes or underscores, can only start and end with alphanumeric characters, and is limited to 128 characters." + } + }, + "required": [ + "@odata.type", + "name" + ], + "description": "Base type for character filters.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" + } + }, + "MappingCharFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.MappingCharFilter", + "allOf": [ + { + "$ref": "#/definitions/CharFilter" + } + ], + "properties": { + "mappings": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of mappings of the following format: \"a=>b\" (all occurrences of the character \"a\" will be replaced with character \"b\")." + } + }, + "required": [ + "mappings" + ], + "description": "A character filter that applies mappings defined with the mappings option. Matching is greedy (longest pattern matching at a given point wins). Replacement is allowed to be the empty string. This character filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/charfilter/MappingCharFilter.html" + } + }, + "PatternReplaceCharFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternReplaceCharFilter", + "allOf": [ + { + "$ref": "#/definitions/CharFilter" + } + ], + "properties": { + "pattern": { + "type": "string", + "description": "A regular expression pattern." + }, + "replacement": { + "type": "string", + "description": "The replacement text." + } + }, + "required": [ + "pattern", + "replacement" + ], + "description": "A character filter that replaces characters in the input string. It uses a regular expression to identify character sequences to preserve and a replacement pattern to identify characters to replace. For example, given the input text \"aa bb aa bb\", pattern \"(aa)\\s+(bb)\", and replacement \"$1#$2\", the result would be \"aa#bb aa#bb\". This character filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternReplaceCharFilter.html" + } + }, + "DataSourceCredentials": { + "properties": { + "connectionString": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Data-Source" + }, + "type": "string", + "description": "The connection string for the datasource." + } + }, + "description": "Represents credentials that can be used to connect to a datasource." + }, + "DataContainer": { + "properties": { + "name": { + "type": "string", + "description": "The name of the table or view (for Azure SQL data source) or collection (for CosmosDB data source) that will be indexed." + }, + "query": { + "type": "string", + "description": "A query that is applied to this data container. The syntax and meaning of this parameter is datasource-specific. Not supported by Azure SQL datasources." + } + }, + "required": [ + "name" + ], + "description": "Represents information about the entity (such as Azure SQL table or CosmosDB collection) that will be indexed." + }, + "DataChangeDetectionPolicy": { + "discriminator": "@odata.type", + "properties": { + "@odata.type": { + "type": "string", + "description": "Identifies the concrete type of the data change detection policy." + } + }, + "required": [ + "@odata.type" + ], + "description": "Base type for data change detection policies." + }, + "HighWaterMarkChangeDetectionPolicy": { + "description": "Defines a data change detection policy that captures changes based on the value of a high water mark column.", + "x-ms-discriminator-value": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "allOf": [ + { + "$ref": "#/definitions/DataChangeDetectionPolicy" + } + ], + "properties": { + "highWaterMarkColumnName": { + "type": "string", + "description": "The name of the high water mark column." + } + }, + "required": [ + "highWaterMarkColumnName" + ] + }, + "SqlIntegratedChangeTrackingPolicy": { + "description": "Defines a data change detection policy that captures changes using the Integrated Change Tracking feature of Azure SQL Database.", + "x-ms-discriminator-value": "#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy", + "allOf": [ + { + "$ref": "#/definitions/DataChangeDetectionPolicy" + } + ] + }, + "DataDeletionDetectionPolicy": { + "discriminator": "@odata.type", + "properties": { + "@odata.type": { + "type": "string", + "description": "Identifies the concrete type of the data deletion detection policy." + } + }, + "required": [ + "@odata.type" + ], + "description": "Base type for data deletion detection policies." + }, + "SoftDeleteColumnDeletionDetectionPolicy": { + "description": "Defines a data deletion detection policy that implements a soft-deletion strategy. It determines whether an item should be deleted based on the value of a designated 'soft delete' column.", + "x-ms-discriminator-value": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "allOf": [ + { + "$ref": "#/definitions/DataDeletionDetectionPolicy" + } + ], + "properties": { + "softDeleteColumnName": { + "type": "string", + "description": "The name of the column to use for soft-deletion detection." + }, + "softDeleteMarkerValue": { + "type": "string", + "description": "The marker value that identifies an item as deleted." + } + } + }, + "DataSourceType": { + "type": "string", + "enum": [ + "azuresql", + "cosmosdb", + "azureblob", + "azuretable", + "mysql" + ], + "x-ms-enum": { + "name": "DataSourceType", + "modelAsString": true, + "values": [ + { + "value": "azuresql", + "name": "AzureSql" + }, + { + "value": "cosmosdb", + "name": "CosmosDb" + }, + { + "value": "azureblob", + "name": "AzureBlob" + }, + { + "value": "azuretable", + "name": "AzureTable" + }, + { + "value": "mysql", + "name": "MySql" + } + ] + }, + "description": "Defines the type of a datasource." + }, + "DataSource": { + "properties": { + "name": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Naming-rules" + }, + "type": "string", + "description": "The name of the datasource." + }, + "description": { + "type": "string", + "description": "The description of the datasource." + }, + "type": { + "$ref": "#/definitions/DataSourceType", + "description": "The type of the datasource." + }, + "credentials": { + "$ref": "#/definitions/DataSourceCredentials", + "description": "Credentials for the datasource." + }, + "container": { + "$ref": "#/definitions/DataContainer", + "description": "The data container for the datasource." + }, + "dataChangeDetectionPolicy": { + "$ref": "#/definitions/DataChangeDetectionPolicy", + "description": "The data change detection policy for the datasource." + }, + "dataDeletionDetectionPolicy": { + "$ref": "#/definitions/DataDeletionDetectionPolicy", + "description": "The data deletion detection policy for the datasource." + }, + "@odata.etag": { + "x-ms-client-name": "ETag", + "type": "string", + "description": "The ETag of the DataSource." + } + }, + "required": [ + "name", + "type", + "credentials", + "container" + ], + "description": "Represents a datasource definition, which can be used to configure an indexer." + }, + "ListDataSourcesResult": { + "properties": { + "value": { + "x-ms-client-name": "DataSources", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/DataSource" + }, + "description": "The datasources in the Search service." + } + }, + "required": [ + "value" + ], + "description": "Response from a List Datasources request. If successful, it includes the full definitions of all datasources." + }, + "IndexingSchedule": { + "properties": { + "interval": { + "type": "string", + "format": "duration", + "description": "The interval of time between indexer executions." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The time when an indexer should start running." + } + }, + "required": [ + "interval" + ], + "description": "Represents a schedule for indexer execution." + }, + "IndexingParameters": { + "properties": { + "batchSize": { + "type": "integer", + "format": "int32", + "description": "The number of items that are read from the data source and indexed as a single batch in order to improve performance. The default depends on the data source type." + }, + "maxFailedItems": { + "type": "integer", + "format": "int32", + "default": 0, + "description": "The maximum number of items that can fail indexing for indexer execution to still be considered successful. -1 means no limit. Default is 0." + }, + "maxFailedItemsPerBatch": { + "type": "integer", + "format": "int32", + "default": 0, + "description": "The maximum number of items in a single batch that can fail indexing for the batch to still be considered successful. -1 means no limit. Default is 0." + }, + "configuration": { + "type": "object", + "additionalProperties": { + "type": "object" + }, + "description": "A dictionary of indexer-specific configuration properties. Each name is the name of a specific property. Each value must be of a primitive type." + } + }, + "description": "Represents parameters for indexer execution." + }, + "FieldMappingFunction": { + "properties": { + "name": { + "type": "string", + "description": "The name of the field mapping function." + }, + "parameters": { + "type": "object", + "additionalProperties": { + "type": "object" + }, + "description": "A dictionary of parameter name/value pairs to pass to the function. Each value must be of a primitive type." + } + }, + "required": [ + "name" + ], + "description": "Represents a function that transforms a value from a data source before indexing.", + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/search-indexer-field-mappings" + } + }, + "FieldMapping": { + "properties": { + "sourceFieldName": { + "type": "string", + "description": "The name of the field in the data source." + }, + "targetFieldName": { + "type": "string", + "description": "The name of the target field in the index. Same as the source field name by default." + }, + "mappingFunction": { + "$ref": "#/definitions/FieldMappingFunction", + "description": "A function to apply to each source field value before indexing." + } + }, + "required": [ + "sourceFieldName" + ], + "description": "Defines a mapping between a field in a data source and a target field in an index.", + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/search-indexer-field-mappings" + } + }, + "Indexer": { + "properties": { + "name": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Naming-rules" + }, + "type": "string", + "description": "The name of the indexer." + }, + "description": { + "type": "string", + "description": "The description of the indexer." + }, + "dataSourceName": { + "type": "string", + "description": "The name of the datasource from which this indexer reads data." + }, + "skillsetName": { + "type": "string", + "description": "The name of the skillset executing with this indexer." + }, + "targetIndexName": { + "type": "string", + "description": "The name of the index to which this indexer writes data." + }, + "schedule": { + "$ref": "#/definitions/IndexingSchedule", + "description": "The schedule for this indexer." + }, + "parameters": { + "$ref": "#/definitions/IndexingParameters", + "description": "Parameters for indexer execution." + }, + "fieldMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/FieldMapping" + }, + "description": "Defines mappings between fields in the data source and corresponding target fields in the index.", + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/search-indexer-field-mappings" + } + }, + "outputFieldMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/FieldMapping" + }, + "description": "Output field mappings are applied after enrichment and immediately before indexing.", + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/search-indexer-field-mappings" + } + }, + "disabled": { + "x-ms-client-name": "IsDisabled", + "type": "boolean", + "default": false, + "description": "A value indicating whether the indexer is disabled. Default is false." + }, + "@odata.etag": { + "x-ms-client-name": "ETag", + "type": "string", + "description": "The ETag of the Indexer." + } + }, + "required": [ + "name", + "dataSourceName", + "targetIndexName" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Indexer-operations" + }, + "description": "Represents an indexer." + }, + "ListIndexersResult": { + "properties": { + "value": { + "x-ms-client-name": "Indexers", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Indexer" + }, + "description": "The indexers in the Search service." + } + }, + "required": [ + "value" + ], + "description": "Response from a List Indexers request. If successful, it includes the full definitions of all indexers." + }, + "ItemError": { + "properties": { + "key": { + "type": "string", + "readOnly": true, + "description": "The key of the item for which indexing failed." + }, + "errorMessage": { + "type": "string", + "readOnly": true, + "description": "The message describing the error that occurred while processing the item." + }, + "statusCode": { + "type": "integer", + "format": "int32", + "x-nullable": false, + "readOnly": true, + "description": "The status code indicating why the indexing operation failed. Possible values include: 400 for a malformed input document, 404 for document not found, 409 for a version conflict, 422 when the index is temporarily unavailable, or 503 for when the service is too busy." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the source at which the error originated. For example, this could refer to a particular skill in the attached skillset. This may not be always available." + }, + "details": { + "type": "string", + "readOnly": true, + "description": "Additional, verbose details about the error to assist in debugging the indexer. This may not be always available." + }, + "documentationLink": { + "type": "string", + "readOnly": true, + "description": "A link to a troubleshooting guide for these classes of errors. This may not be always available." + } + }, + "required": [ + "errorMessage", + "statusCode" + ], + "description": "Represents an item- or document-level indexing error." + }, + "ItemWarning": { + "properties": { + "key": { + "type": "string", + "readOnly": true, + "description": "The key of the item which generated a warning." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The message describing the warning that occurred while processing the item." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the source at which the warning originated. For example, this could refer to a particular skill in the attached skillset. This may not be always available." + }, + "details": { + "type": "string", + "readOnly": true, + "description": "Additional, verbose details about the warning to assist in debugging the indexer. This may not be always available." + }, + "documentationLink": { + "type": "string", + "readOnly": true, + "description": "A link to a troubleshooting guide for these classes of warnings. This may not be always available." + } + }, + "required": [ + "message" + ], + "description": "Represents an item-level warning." + }, + "IndexerExecutionResult": { + "properties": { + "status": { + "$ref": "#/definitions/IndexerExecutionStatus", + "readOnly": true, + "description": "The outcome of this indexer execution." + }, + "errorMessage": { + "type": "string", + "readOnly": true, + "description": "The error message indicating the top-level error, if any." + }, + "startTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The start time of this indexer execution." + }, + "endTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The end time of this indexer execution, if the execution has already completed." + }, + "errors": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ItemError" + }, + "description": "The item-level indexing errors." + }, + "warnings": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ItemWarning" + }, + "description": "The item-level indexing warnings." + }, + "itemsProcessed": { + "x-ms-client-name": "ItemCount", + "type": "integer", + "format": "int32", + "x-nullable": false, + "readOnly": true, + "description": "The number of items that were processed during this indexer execution. This includes both successfully processed items and items where indexing was attempted but failed." + }, + "itemsFailed": { + "x-ms-client-name": "FailedItemCount", + "type": "integer", + "format": "int32", + "x-nullable": false, + "readOnly": true, + "description": "The number of items that failed to be indexed during this indexer execution." + }, + "initialTrackingState": { + "type": "string", + "readOnly": true, + "description": "Change tracking state with which an indexer execution started." + }, + "finalTrackingState": { + "type": "string", + "readOnly": true, + "description": "Change tracking state with which an indexer execution finished." + } + }, + "required": [ + "status", + "errors", + "warnings", + "itemsProcessed", + "itemsFailed" + ], + "description": "Represents the result of an individual indexer execution." + }, + "IndexerExecutionStatus": { + "type": "string", + "enum": [ + "transientFailure", + "success", + "inProgress", + "reset" + ], + "x-ms-enum": { + "name": "IndexerExecutionStatus", + "modelAsString": false + }, + "x-nullable": false, + "description": "Represents the status of an individual indexer execution." + }, + "IndexerExecutionInfo": { + "properties": { + "status": { + "$ref": "#/definitions/IndexerStatus", + "readOnly": true, + "description": "Overall indexer status." + }, + "lastResult": { + "$ref": "#/definitions/IndexerExecutionResult", + "readOnly": true, + "description": "The result of the most recent or an in-progress indexer execution." + }, + "executionHistory": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/IndexerExecutionResult" + }, + "description": "History of the recent indexer executions, sorted in reverse chronological order." + }, + "limits": { + "$ref": "#/definitions/IndexerLimits", + "readOnly": true, + "description": "The execution limits for the indexer." + } + }, + "required": [ + "status", + "executionHistory", + "limits" + ], + "description": "Represents the current status and execution history of an indexer." + }, + "IndexerStatus": { + "type": "string", + "enum": [ + "unknown", + "error", + "running" + ], + "x-ms-enum": { + "name": "IndexerStatus", + "modelAsString": false + }, + "x-nullable": false, + "description": "Represents the overall indexer status." + }, + "IndexerLimits": { + "properties": { + "maxRunTime": { + "type": "string", + "format": "duration", + "readOnly": true, + "description": "The maximum duration that the indexer is permitted to run for one execution." + }, + "maxDocumentExtractionSize": { + "type": "number", + "format": "int64", + "readOnly": true, + "description": "The maximum size of a document, in bytes, which will be considered valid for indexing." + }, + "maxDocumentContentCharactersToExtract": { + "type": "number", + "format": "int64", + "readOnly": true, + "description": "The maximum number of characters that will be extracted from a document picked up for indexing." + } + } + }, + "Field": { + "properties": { + "name": { + "type": "string", + "description": "The name of the field, which must be unique within the fields collection of the index or parent field.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Naming-rules" + } + }, + "type": { + "$ref": "#/definitions/DataType", + "description": "The data type of the field.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/supported-data-types" + } + }, + "key": { + "type": "boolean", + "description": "A value indicating whether the field uniquely identifies documents in the index. Exactly one top-level field in each index must be chosen as the key field and it must be of type Edm.String. Key fields can be used to look up documents directly and update or delete specific documents. Default is false for simple fields and null for complex fields." + }, + "retrievable": { + "type": "boolean", + "description": "A value indicating whether the field can be returned in a search result. You can disable this option if you want to use a field (for example, margin) as a filter, sorting, or scoring mechanism but do not want the field to be visible to the end user. This property must be true for key fields, and it must be null for complex fields. This property can be changed on existing fields. Enabling this property does not cause any increase in index storage requirements. Default is true for simple fields and null for complex fields." + }, + "searchable": { + "type": "boolean", + "description": "A value indicating whether the field is full-text searchable. This means it will undergo analysis such as word-breaking during indexing. If you set a searchable field to a value like \"sunny day\", internally it will be split into the individual tokens \"sunny\" and \"day\". This enables full-text searches for these terms. Fields of type Edm.String or Collection(Edm.String) are searchable by default. This property must be false for simple fields of other non-string data types, and it must be null for complex fields. Note: searchable fields consume extra space in your index since Azure Cognitive Search will store an additional tokenized version of the field value for full-text searches. If you want to save space in your index and you don't need a field to be included in searches, set searchable to false." + }, + "filterable": { + "type": "boolean", + "description": "A value indicating whether to enable the field to be referenced in $filter queries. filterable differs from searchable in how strings are handled. Fields of type Edm.String or Collection(Edm.String) that are filterable do not undergo word-breaking, so comparisons are for exact matches only. For example, if you set such a field f to \"sunny day\", $filter=f eq 'sunny' will find no matches, but $filter=f eq 'sunny day' will. This property must be null for complex fields. Default is true for simple fields and null for complex fields." + }, + "sortable": { + "type": "boolean", + "description": "A value indicating whether to enable the field to be referenced in $orderby expressions. By default Azure Cognitive Search sorts results by score, but in many experiences users will want to sort by fields in the documents. A simple field can be sortable only if it is single-valued (it has a single value in the scope of the parent document). Simple collection fields cannot be sortable, since they are multi-valued. Simple sub-fields of complex collections are also multi-valued, and therefore cannot be sortable. This is true whether it's an immediate parent field, or an ancestor field, that's the complex collection. Complex fields cannot be sortable and the sortable property must be null for such fields. The default for sortable is true for single-valued simple fields, false for multi-valued simple fields, and null for complex fields." + }, + "facetable": { + "type": "boolean", + "description": "A value indicating whether to enable the field to be referenced in facet queries. Typically used in a presentation of search results that includes hit count by category (for example, search for digital cameras and see hits by brand, by megapixels, by price, and so on). This property must be null for complex fields. Fields of type Edm.GeographyPoint or Collection(Edm.GeographyPoint) cannot be facetable. Default is true for all other simple fields." + }, + "analyzer": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Language-support" + }, + "$ref": "#/definitions/AnalyzerName", + "description": "The name of the analyzer to use for the field. This option can be used only with searchable fields and it can't be set together with either searchAnalyzer or indexAnalyzer. Once the analyzer is chosen, it cannot be changed for the field. Must be null for complex fields." + }, + "searchAnalyzer": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Language-support" + }, + "$ref": "#/definitions/AnalyzerName", + "description": "The name of the analyzer used at search time for the field. This option can be used only with searchable fields. It must be set together with indexAnalyzer and it cannot be set together with the analyzer option. This property cannot be set to the name of a language analyzer; use the analyzer property instead if you need a language analyzer. This analyzer can be updated on an existing field. Must be null for complex fields." + }, + "indexAnalyzer": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Language-support" + }, + "$ref": "#/definitions/AnalyzerName", + "description": "The name of the analyzer used at indexing time for the field. This option can be used only with searchable fields. It must be set together with searchAnalyzer and it cannot be set together with the analyzer option. This property cannot be set to the name of a language analyzer; use the analyzer property instead if you need a language analyzer. Once the analyzer is chosen, it cannot be changed for the field. Must be null for complex fields." + }, + "synonymMaps": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Synonym-Map-operations" + }, + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of the names of synonym maps to associate with this field. This option can be used only with searchable fields. Currently only one synonym map per field is supported. Assigning a synonym map to a field ensures that query terms targeting that field are expanded at query-time using the rules in the synonym map. This attribute can be changed on existing fields. Must be null or an empty collection for complex fields." + }, + "fields": { + "type": "array", + "items": { + "$ref": "#/definitions/Field" + }, + "description": "A list of sub-fields if this is a field of type Edm.ComplexType or Collection(Edm.ComplexType). Must be null or empty for simple fields." + } + }, + "required": [ + "name", + "type" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Index" + }, + "description": "Represents a field in an index definition, which describes the name, data type, and search behavior of a field." + }, + "TextWeights": { + "properties": { + "weights": { + "type": "object", + "additionalProperties": { + "type": "number", + "format": "double", + "x-nullable": false + }, + "description": "The dictionary of per-field weights to boost document scoring. The keys are field names and the values are the weights for each field." + } + }, + "required": [ + "weights" + ], + "description": "Defines weights on index fields for which matches should boost scoring in search queries." + }, + "ScoringFunction": { + "discriminator": "type", + "properties": { + "type": { + "type": "string", + "description": "Indicates the type of function to use. Valid values include magnitude, freshness, distance, and tag. The function type must be lower case." + }, + "fieldName": { + "type": "string", + "description": "The name of the field used as input to the scoring function." + }, + "boost": { + "type": "number", + "format": "double", + "description": "A multiplier for the raw score. Must be a positive number not equal to 1.0." + }, + "interpolation": { + "$ref": "#/definitions/ScoringFunctionInterpolation", + "description": "A value indicating how boosting will be interpolated across document scores; defaults to \"Linear\"." + } + }, + "required": [ + "type", + "fieldName", + "boost" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" + }, + "description": "Base type for functions that can modify document scores during ranking." + }, + "DistanceScoringFunction": { + "x-ms-discriminator-value": "distance", + "allOf": [ + { + "$ref": "#/definitions/ScoringFunction" + } + ], + "properties": { + "distance": { + "x-ms-client-name": "Parameters", + "$ref": "#/definitions/DistanceScoringParameters", + "description": "Parameter values for the distance scoring function." + } + }, + "required": [ + "distance" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" + }, + "description": "Defines a function that boosts scores based on distance from a geographic location." + }, + "DistanceScoringParameters": { + "properties": { + "referencePointParameter": { + "type": "string", + "description": "The name of the parameter passed in search queries to specify the reference location." + }, + "boostingDistance": { + "type": "number", + "format": "double", + "description": "The distance in kilometers from the reference location where the boosting range ends." + } + }, + "required": [ + "referencePointParameter", + "boostingDistance" + ], + "description": "Provides parameter values to a distance scoring function." + }, + "FreshnessScoringFunction": { + "x-ms-discriminator-value": "freshness", + "allOf": [ + { + "$ref": "#/definitions/ScoringFunction" + } + ], + "properties": { + "freshness": { + "x-ms-client-name": "Parameters", + "$ref": "#/definitions/FreshnessScoringParameters", + "description": "Parameter values for the freshness scoring function." + } + }, + "required": [ + "freshness" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" + }, + "description": "Defines a function that boosts scores based on the value of a date-time field." + }, + "FreshnessScoringParameters": { + "properties": { + "boostingDuration": { + "type": "string", + "format": "duration", + "description": "The expiration period after which boosting will stop for a particular document." + } + }, + "required": [ + "boostingDuration" + ], + "description": "Provides parameter values to a freshness scoring function." + }, + "MagnitudeScoringFunction": { + "x-ms-discriminator-value": "magnitude", + "allOf": [ + { + "$ref": "#/definitions/ScoringFunction" + } + ], + "properties": { + "magnitude": { + "x-ms-client-name": "Parameters", + "$ref": "#/definitions/MagnitudeScoringParameters", + "description": "Parameter values for the magnitude scoring function." + } + }, + "required": [ + "magnitude" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" + }, + "description": "Defines a function that boosts scores based on the magnitude of a numeric field." + }, + "MagnitudeScoringParameters": { + "properties": { + "boostingRangeStart": { + "type": "number", + "format": "double", + "description": "The field value at which boosting starts." + }, + "boostingRangeEnd": { + "type": "number", + "format": "double", + "description": "The field value at which boosting ends." + }, + "constantBoostBeyondRange": { + "x-ms-client-name": "ShouldBoostBeyondRangeByConstant", + "type": "boolean", + "description": "A value indicating whether to apply a constant boost for field values beyond the range end value; default is false." + } + }, + "required": [ + "boostingRangeStart", + "boostingRangeEnd" + ], + "description": "Provides parameter values to a magnitude scoring function." + }, + "TagScoringFunction": { + "x-ms-discriminator-value": "tag", + "allOf": [ + { + "$ref": "#/definitions/ScoringFunction" + } + ], + "properties": { + "tag": { + "x-ms-client-name": "Parameters", + "$ref": "#/definitions/TagScoringParameters", + "description": "Parameter values for the tag scoring function." + } + }, + "required": [ + "tag" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" + }, + "description": "Defines a function that boosts scores of documents with string values matching a given list of tags." + }, + "TagScoringParameters": { + "properties": { + "tagsParameter": { + "type": "string", + "description": "The name of the parameter passed in search queries to specify the list of tags to compare against the target field." + } + }, + "required": [ + "tagsParameter" + ], + "description": "Provides parameter values to a tag scoring function." + }, + "ScoringFunctionInterpolation": { + "type": "string", + "enum": [ + "linear", + "constant", + "quadratic", + "logarithmic" + ], + "x-ms-enum": { + "name": "ScoringFunctionInterpolation", + "modelAsString": false + }, + "description": "Defines the function used to interpolate score boosting across a range of documents." + }, + "ScoringProfile": { + "properties": { + "name": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Naming-rules" + }, + "type": "string", + "description": "The name of the scoring profile." + }, + "text": { + "x-ms-client-name": "TextWeights", + "$ref": "#/definitions/TextWeights", + "description": "Parameters that boost scoring based on text matches in certain index fields." + }, + "functions": { + "type": "array", + "items": { + "$ref": "#/definitions/ScoringFunction" + }, + "description": "The collection of functions that influence the scoring of documents." + }, + "functionAggregation": { + "$ref": "#/definitions/ScoringFunctionAggregation", + "description": "A value indicating how the results of individual scoring functions should be combined. Defaults to \"Sum\". Ignored if there are no scoring functions." + } + }, + "required": [ + "name" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" + }, + "description": "Defines parameters for a search index that influence scoring in search queries." + }, + "ScoringFunctionAggregation": { + "type": "string", + "enum": [ + "sum", + "average", + "minimum", + "maximum", + "firstMatching" + ], + "x-ms-enum": { + "name": "ScoringFunctionAggregation", + "modelAsString": false + }, + "description": "Defines the aggregation function used to combine the results of all the scoring functions in a scoring profile." + }, + "CorsOptions": { + "properties": { + "allowedOrigins": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of origins from which JavaScript code will be granted access to your index. Can contain a list of hosts of the form {protocol}://{fully-qualified-domain-name}[:{port#}], or a single '*' to allow all origins (not recommended)." + }, + "maxAgeInSeconds": { + "type": "integer", + "format": "int64", + "description": "The duration for which browsers should cache CORS preflight responses. Defaults to 5 minutes." + } + }, + "required": [ + "allowedOrigins" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Index" + }, + "description": "Defines options to control Cross-Origin Resource Sharing (CORS) for an index." + }, + "Suggester": { + "properties": { + "name": { + "type": "string", + "description": "The name of the suggester." + }, + "searchMode": { + "type": "string", + "enum": [ + "analyzingInfixMatching" + ], + "x-ms-enum": { + "name": "searchMode", + "modelAsString": false + }, + "description": "A value indicating the capabilities of the suggester." + }, + "sourceFields": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of field names to which the suggester applies. Each field must be searchable." + } + }, + "required": [ + "name", + "searchMode", + "sourceFields" + ], + "description": "Defines how the Suggest API should apply to a group of fields in the index." + }, + "Index": { + "properties": { + "name": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Naming-rules" + }, + "type": "string", + "description": "The name of the index." + }, + "fields": { + "type": "array", + "items": { + "$ref": "#/definitions/Field" + }, + "description": "The fields of the index." + }, + "scoringProfiles": { + "type": "array", + "items": { + "$ref": "#/definitions/ScoringProfile" + }, + "description": "The scoring profiles for the index." + }, + "defaultScoringProfile": { + "type": "string", + "description": "The name of the scoring profile to use if none is specified in the query. If this property is not set and no scoring profile is specified in the query, then default scoring (tf-idf) will be used." + }, + "corsOptions": { + "$ref": "#/definitions/CorsOptions", + "description": "Options to control Cross-Origin Resource Sharing (CORS) for the index." + }, + "suggesters": { + "type": "array", + "items": { + "$ref": "#/definitions/Suggester" + }, + "description": "The suggesters for the index." + }, + "analyzers": { + "type": "array", + "items": { + "$ref": "#/definitions/Analyzer" + }, + "description": "The analyzers for the index.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" + } + }, + "tokenizers": { + "type": "array", + "items": { + "$ref": "#/definitions/Tokenizer" + }, + "description": "The tokenizers for the index.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" + } + }, + "tokenFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/TokenFilter" + }, + "description": "The token filters for the index.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" + } + }, + "charFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/CharFilter" + }, + "description": "The character filters for the index.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" + } + }, + "encryptionKey": { + "$ref": "#/definitions/EncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your data when you want full assurance that no one, not even Microsoft, can decrypt your data in Azure Cognitive Search. Once you have encrypted your data, it will always remain encrypted. Azure Cognitive Search will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your data will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.", + "externalDocs": { + "url": "https://aka.ms/azure-search-encryption-with-cmk" + } + }, + "@odata.etag": { + "x-ms-client-name": "ETag", + "type": "string", + "description": "The ETag of the index." + } + }, + "required": [ + "name", + "fields" + ], + "description": "Represents a search index definition, which describes the fields and search behavior of an index." + }, + "GetIndexStatisticsResult": { + "properties": { + "documentCount": { + "type": "integer", + "format": "int64", + "x-nullable": false, + "readOnly": true, + "description": "The number of documents in the index." + }, + "storageSize": { + "type": "integer", + "format": "int64", + "x-nullable": false, + "readOnly": true, + "description": "The amount of storage in bytes consumed by the index." + } + }, + "required": [ + "documentCount", + "storageSize" + ], + "description": "Statistics for a given index. Statistics are collected periodically and are not guaranteed to always be up-to-date." + }, + "ListIndexesResult": { + "properties": { + "value": { + "x-ms-client-name": "Indexes", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Index" + }, + "description": "The indexes in the Search service." + } + }, + "required": [ + "value" + ], + "description": "Response from a List Indexes request. If successful, it includes the full definitions of all indexes." + }, + "Skillset": { + "properties": { + "name": { + "type": "string", + "description": "The name of the skillset." + }, + "description": { + "type": "string", + "description": "The description of the skillset." + }, + "skills": { + "type": "array", + "items": { + "$ref": "#/definitions/Skill" + }, + "description": "A list of skills in the skillset." + }, + "cognitiveServices": { + "x-ms-client-name": "CognitiveServicesAccount", + "$ref": "#/definitions/CognitiveServicesAccount", + "description": "Details about cognitive services to be used when running skills." + }, + "@odata.etag": { + "x-ms-client-name": "ETag", + "type": "string", + "description": "The ETag of the skillset." + } + }, + "required": [ + "name", + "description", + "skills" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-tutorial-blob" + }, + "description": "A list of skills." + }, + "CognitiveServicesAccount": { + "discriminator": "@odata.type", + "properties": { + "@odata.type": { + "type": "string", + "description": "Identifies the concrete type of the cognitive service resource attached to a skillset." + }, + "description": { + "type": "string", + "description": "Description of the cognitive service resource attached to a skillset." + } + }, + "required": [ + "@odata.type" + ], + "description": "Base type for describing any cognitive service resource attached to a skillset." + }, + "DefaultCognitiveServicesAccount": { + "description": "An empty object that represents the default cognitive service resource for a skillset.", + "x-ms-discriminator-value": "#Microsoft.Azure.Search.DefaultCognitiveServices", + "allOf": [ + { + "$ref": "#/definitions/CognitiveServicesAccount" + } + ] + }, + "CognitiveServicesAccountKey": { + "description": "A cognitive service resource provisioned with a key that is attached to a skillset.", + "x-ms-discriminator-value": "#Microsoft.Azure.Search.CognitiveServicesByKey", + "allOf": [ + { + "$ref": "#/definitions/CognitiveServicesAccount" + } + ], + "properties": { + "key": { + "type": "string", + "description": "The key used to provision the cognitive service resource attached to a skillset." + } + }, + "required": [ + "key" + ] + }, + "Skill": { + "discriminator": "@odata.type", + "properties": { + "@odata.type": { + "type": "string", + "description": "Identifies the concrete type of the skill." + }, + "name": { + "type": "string", + "description": "The name of the skill which uniquely identifies it within the skillset. A skill with no name defined will be given a default name of its 1-based index in the skills array, prefixed with the character '#'." + }, + "description": { + "type": "string", + "description": "The description of the skill which describes the inputs, outputs, and usage of the skill." + }, + "context": { + "type": "string", + "description": "Represents the level at which operations take place, such as the document root or document content (for example, /document or /document/content). The default is /document." + }, + "inputs": { + "type": "array", + "items": { + "$ref": "#/definitions/InputFieldMappingEntry" + }, + "description": "Inputs of the skills could be a column in the source data set, or the output of an upstream skill." + }, + "outputs": { + "type": "array", + "items": { + "$ref": "#/definitions/OutputFieldMappingEntry" + }, + "description": "The output of a skill is either a field in a search index, or a value that can be consumed as an input by another skill." + } + }, + "required": [ + "@odata.type", + "inputs", + "outputs" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-predefined-skills" + }, + "description": "Base type for skills." + }, + "InputFieldMappingEntry": { + "properties": { + "name": { + "type": "string", + "description": "The name of the input." + }, + "source": { + "type": "string", + "description": "The source of the input." + }, + "sourceContext": { + "type": "string", + "description": "The source context used for selecting recursive inputs." + }, + "inputs": { + "type": "array", + "items": { + "$ref": "#/definitions/InputFieldMappingEntry" + }, + "description": "The recursive inputs used when creating a complex type." + } + }, + "required": [ + "name" + ], + "description": "Input field mapping for a skill." + }, + "OutputFieldMappingEntry": { + "properties": { + "name": { + "type": "string", + "description": "The name of the output defined by the skill." + }, + "targetName": { + "type": "string", + "description": "The target name of the output. It is optional and default to name." + } + }, + "required": [ + "name" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/naming-rules" + }, + "description": "Output field mapping for a skill." + }, + "ConditionalSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Util.ConditionalSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-conditional" + }, + "description": "A skill that enables scenarios that require a Boolean operation to determine the data to assign to an output." + }, + "KeyPhraseExtractionSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/KeyPhraseExtractionSkillLanguage", + "description": "A value indicating which language code to use. Default is en." + }, + "maxKeyPhraseCount": { + "type": "integer", + "format": "int32", + "x-nullable": true, + "description": "A number indicating how many key phrases to return. If absent, all identified key phrases will be returned." + } + }, + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-keyphrases" + }, + "description": "A skill that uses text analytics for key phrase extraction." + }, + "OcrSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Vision.OcrSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "properties": { + "textExtractionAlgorithm": { + "$ref": "#/definitions/TextExtractionAlgorithm", + "description": "A value indicating which algorithm to use for extracting text. Default is printed." + }, + "defaultLanguageCode": { + "$ref": "#/definitions/OcrSkillLanguage", + "description": "A value indicating which language code to use. Default is en." + }, + "detectOrientation": { + "x-ms-client-name": "ShouldDetectOrientation", + "type": "boolean", + "default": false, + "description": "A value indicating to turn orientation detection on or not. Default is false." + } + }, + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-ocr" + }, + "description": "A skill that extracts text from image files." + }, + "ImageAnalysisSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Vision.ImageAnalysisSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/ImageAnalysisSkillLanguage", + "description": "A value indicating which language code to use. Default is en." + }, + "visualFeatures": { + "type": "array", + "items": { + "$ref": "#/definitions/VisualFeature", + "x-nullable": false + }, + "description": "A list of visual features." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ImageDetail", + "x-nullable": false + }, + "description": "A string indicating which domain-specific details to return." + } + }, + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-image-analysis" + }, + "description": "A skill that analyzes image files. It extracts a rich set of visual features based on the image content." + }, + "LanguageDetectionSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-language-detection" + }, + "description": "A skill that detects the language of input text and reports a single language code for every document submitted on the request. The language code is paired with a score indicating the confidence of the analysis." + }, + "ShaperSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Util.ShaperSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-shaper" + }, + "description": "A skill for reshaping the outputs. It creates a complex type to support composite fields (also known as multipart fields)." + }, + "MergeSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Text.MergeSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "properties": { + "insertPreTag": { + "type": "string", + "default": " ", + "description": "The tag indicates the start of the merged text. By default, the tag is an empty space." + }, + "insertPostTag": { + "type": "string", + "default": " ", + "description": "The tag indicates the end of the merged text. By default, the tag is an empty space." + } + }, + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-textmerger" + }, + "description": "A skill for merging two or more strings into a single unified string, with an optional user-defined delimiter separating each component part." + }, + "EntityRecognitionSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "properties": { + "categories": { + "type": "array", + "items": { + "$ref": "#/definitions/EntityCategory", + "x-nullable": false + }, + "description": "A list of entity categories that should be extracted." + }, + "defaultLanguageCode": { + "$ref": "#/definitions/EntityRecognitionSkillLanguage", + "description": "A value indicating which language code to use. Default is en." + }, + "includeTypelessEntities": { + "type": "boolean", + "x-nullable": true, + "description": "Determines whether or not to include entities which are well known but don't conform to a pre-defined type. If this configuration is not set (default), set to null or set to false, entities which don't conform to one of the pre-defined types will not be surfaced." + }, + "minimumPrecision": { + "type": "number", + "format": "double", + "x-nullable": true, + "description": "A value between 0 and 1 that be used to only include entities whose confidence score is greater than the value specified. If not set (default), or if explicitly set to null, all entities will be included." + } + }, + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-entity-recognition" + }, + "description": "Text analytics entity recognition." + }, + "SentimentSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Text.SentimentSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/SentimentSkillLanguage", + "description": "A value indicating which language code to use. Default is en." + } + }, + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-sentiment" + }, + "description": "Text analytics positive-negative sentiment analysis, scored as a floating point value in a range of zero to 1." + }, + "SplitSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Text.SplitSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/SplitSkillLanguage", + "description": "A value indicating which language code to use. Default is en." + }, + "textSplitMode": { + "$ref": "#/definitions/TextSplitMode", + "x-nullable": false, + "description": "A value indicating which split mode to perform." + }, + "maximumPageLength": { + "type": "integer", + "format": "int32", + "x-nullable": true, + "description": "The desired maximum page length. Default is 10000." + } + }, + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-textsplit" + }, + "description": "A skill to split a string into chunks of text." + }, + "TextTranslationSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Text.TranslationSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "properties": { + "defaultToLanguageCode": { + "$ref": "#/definitions/TextTranslationSkillLanguage", + "description": "The language code to translate documents into for documents that don't specify the to language explicitly. " + }, + "defaultFromLanguageCode": { + "$ref": "#/definitions/TextTranslationSkillLanguage", + "description": "The language code to translate documents from for documents that don't specify the from language explicitly." + }, + "suggestedFrom": { + "$ref": "#/definitions/TextTranslationSkillLanguage", + "description": "The language code to translate documents from when neither the fromLanguageCode input nor the defaultFromLanguageCode parameter are provided, and the automatic language detection is unsuccessful. Default is en." + } + }, + "required": [ + "defaultToLanguageCode" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-text-translation" + }, + "description": "A skill to translate text from one language to another." + }, + "WebApiSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Custom.WebApiSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "properties": { + "uri": { + "type": "string", + "description": "The url for the Web API." + }, + "httpHeaders": { + "$ref": "#/definitions/WebApiHttpHeaders", + "description": "The headers required to make the http request." + }, + "httpMethod": { + "type": "string", + "description": "The method for the http request." + }, + "timeout": { + "type": "string", + "format": "duration", + "description": "The desired timeout for the request. Default is 30 seconds." + }, + "batchSize": { + "type": "integer", + "format": "int32", + "x-nullable": true, + "description": "The desired batch size which indicates number of documents." + }, + "degreeOfParallelism": { + "type": "integer", + "format": "int32", + "x-nullable": true, + "description": "If set, the number of parallel calls that can be made to the Web API." + } + }, + "required": [ + "uri" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-custom-skill-web-api" + }, + "description": "A skill that can call a Web API endpoint, allowing you to extend a skillset by having it call your custom code." + }, + "WebApiHttpHeaders": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A dictionary of http request headers." + }, + "ListSkillsetsResult": { + "properties": { + "value": { + "x-ms-client-name": "Skillsets", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Skillset" + }, + "description": "The skillsets defined in the Search service." + } + }, + "required": [ + "value" + ], + "description": "Response from a list Skillset request. If successful, it includes the full definitions of all skillsets." + }, + "TextExtractionAlgorithm": { + "type": "string", + "enum": [ + "printed", + "handwritten" + ], + "x-ms-enum": { + "name": "TextExtractionAlgorithm", + "modelAsString": false + }, + "description": "A value indicating which algorithm to use. Default is printed." + }, + "TextSplitMode": { + "type": "string", + "enum": [ + "pages", + "sentences" + ], + "x-ms-enum": { + "name": "TextSplitMode", + "modelAsString": false + }, + "description": "A value indicating which split mode to perform." + }, + "VisualFeature": { + "type": "string", + "enum": [ + "adult", + "brands", + "categories", + "description", + "faces", + "objects", + "tags" + ], + "x-ms-enum": { + "name": "VisualFeature", + "modelAsString": false + }, + "description": "The strings indicating what visual feature types to return." + }, + "ImageDetail": { + "type": "string", + "enum": [ + "celebrities", + "landmarks" + ], + "x-ms-enum": { + "name": "ImageDetail", + "modelAsString": false + }, + "description": "A string indicating which domain-specific details to return." + }, + "EntityCategory": { + "type": "string", + "enum": [ + "location", + "organization", + "person", + "quantity", + "datetime", + "url", + "email" + ], + "x-ms-enum": { + "name": "EntityCategory", + "modelAsString": false + }, + "description": "A string indicating what entity categories to return." + }, + "SentimentSkillLanguage": { + "type": "string", + "enum": [ + "da", + "nl", + "en", + "fi", + "fr", + "de", + "el", + "it", + "no", + "pl", + "pt-PT", + "ru", + "es", + "sv", + "tr" + ], + "x-ms-enum": { + "name": "SentimentSkillLanguage", + "modelAsString": true, + "values": [ + { + "value": "da", + "description": "Danish" + }, + { + "value": "nl", + "description": "Dutch" + }, + { + "value": "en", + "description": "English" + }, + { + "value": "fi", + "description": "Finnish" + }, + { + "value": "fr", + "description": "French" + }, + { + "value": "de", + "description": "German" + }, + { + "value": "el", + "description": "Greek" + }, + { + "value": "it", + "description": "Italian" + }, + { + "value": "no", + "description": "Norwegian (Bokmaal)" + }, + { + "value": "pl", + "description": "Polish" + }, + { + "value": "pt-PT", + "description": "Portuguese (Portugal)" + }, + { + "value": "ru", + "description": "Russian" + }, + { + "value": "es", + "description": "Spanish" + }, + { + "value": "sv", + "description": "Swedish" + }, + { + "value": "tr", + "description": "Turkish" + } + ] + }, + "description": "The language codes supported for input text by SentimentSkill." + }, + "KeyPhraseExtractionSkillLanguage": { + "type": "string", + "enum": [ + "da", + "nl", + "en", + "fi", + "fr", + "de", + "it", + "ja", + "ko", + "no", + "pl", + "pt-PT", + "pt-BR", + "ru", + "es", + "sv" + ], + "x-ms-enum": { + "name": "KeyPhraseExtractionSkillLanguage", + "modelAsString": true, + "values": [ + { + "value": "da", + "description": "Danish" + }, + { + "value": "nl", + "description": "Dutch" + }, + { + "value": "en", + "description": "English" + }, + { + "value": "fi", + "description": "Finnish" + }, + { + "value": "fr", + "description": "French" + }, + { + "value": "de", + "description": "German" + }, + { + "value": "it", + "description": "Italian" + }, + { + "value": "ja", + "description": "Japanese" + }, + { + "value": "ko", + "description": "Korean" + }, + { + "value": "no", + "description": "Norwegian (Bokmaal)" + }, + { + "value": "pl", + "description": "Polish" + }, + { + "value": "pt-PT", + "description": "Portuguese (Portugal)" + }, + { + "value": "pt-BR", + "description": "Portuguese (Brazil)" + }, + { + "value": "ru", + "description": "Russian" + }, + { + "value": "es", + "description": "Spanish" + }, + { + "value": "sv", + "description": "Swedish" + } + ] + }, + "description": "The language codes supported for input text by KeyPhraseExtractionSkill." + }, + "OcrSkillLanguage": { + "type": "string", + "enum": [ + "zh-Hans", + "zh-Hant", + "cs", + "da", + "nl", + "en", + "fi", + "fr", + "de", + "el", + "hu", + "it", + "ja", + "ko", + "nb", + "pl", + "pt", + "ru", + "es", + "sv", + "tr", + "ar", + "ro", + "sr-Cyrl", + "sr-Latn", + "sk" + ], + "x-ms-enum": { + "name": "OcrSkillLanguage", + "modelAsString": true, + "values": [ + { + "value": "zh-Hans", + "description": "Chinese-Simplified" + }, + { + "value": "zh-Hant", + "description": "Chinese-Traditional" + }, + { + "value": "cs", + "description": "Czech" + }, + { + "value": "da", + "description": "Danish" + }, + { + "value": "nl", + "description": "Dutch" + }, + { + "value": "en", + "description": "English" + }, + { + "value": "fi", + "description": "Finnish" + }, + { + "value": "fr", + "description": "French" + }, + { + "value": "de", + "description": "German" + }, + { + "value": "el", + "description": "Greek" + }, + { + "value": "hu", + "description": "Hungarian" + }, + { + "value": "it", + "description": "Italian" + }, + { + "value": "ja", + "description": "Japanese" + }, + { + "value": "ko", + "description": "Korean" + }, + { + "value": "nb", + "description": "Norwegian (Bokmaal)" + }, + { + "value": "pl", + "description": "Polish" + }, + { + "value": "pt", + "description": "Portuguese" + }, + { + "value": "ru", + "description": "Russian" + }, + { + "value": "es", + "description": "Spanish" + }, + { + "value": "sv", + "description": "Swedish" + }, + { + "value": "tr", + "description": "Turkish" + }, + { + "value": "ar", + "description": "Arabic" + }, + { + "value": "ro", + "description": "Romanian" + }, + { + "value": "sr-Cyrl", + "description": "Serbian (Cyrillic, Serbia)" + }, + { + "value": "sr-Latn", + "description": "Serbian (Latin, Serbia)" + }, + { + "value": "sk", + "description": "Slovak" + } + ] + }, + "description": "The language codes supported for input by OcrSkill." + }, + "SplitSkillLanguage": { + "type": "string", + "enum": [ + "da", + "de", + "en", + "es", + "fi", + "fr", + "it", + "ko", + "pt" + ], + "x-ms-enum": { + "name": "SplitSkillLanguage", + "modelAsString": true, + "values": [ + { + "value": "da", + "description": "Danish" + }, + { + "value": "de", + "description": "German" + }, + { + "value": "en", + "description": "English" + }, + { + "value": "es", + "description": "Spanish" + }, + { + "value": "fi", + "description": "Finnish" + }, + { + "value": "fr", + "description": "French" + }, + { + "value": "it", + "description": "Italian" + }, + { + "value": "ko", + "description": "Korean" + }, + { + "value": "pt", + "description": "Portuguese" + } + ] + }, + "description": "The language codes supported for input text by SplitSkill." + }, + "EntityRecognitionSkillLanguage": { + "type": "string", + "enum": [ + "ar", + "cs", + "zh-Hans", + "zh-Hant", + "da", + "nl", + "en", + "fi", + "fr", + "de", + "el", + "hu", + "it", + "ja", + "ko", + "no", + "pl", + "pt-PT", + "pt-BR", + "ru", + "es", + "sv", + "tr" + ], + "x-ms-enum": { + "name": "EntityRecognitionSkillLanguage", + "modelAsString": true, + "values": [ + { + "value": "ar", + "description": "Arabic" + }, + { + "value": "cs", + "description": "Czech" + }, + { + "value": "zh-Hans", + "description": "Chinese-Simplified" + }, + { + "value": "zh-Hant", + "description": "Chinese-Traditional" + }, + { + "value": "da", + "description": "Danish" + }, + { + "value": "nl", + "description": "Dutch" + }, + { + "value": "en", + "description": "English" + }, + { + "value": "fi", + "description": "Finnish" + }, + { + "value": "fr", + "description": "French" + }, + { + "value": "de", + "description": "German" + }, + { + "value": "el", + "description": "Greek" + }, + { + "value": "hu", + "description": "Hungarian" + }, + { + "value": "it", + "description": "Italian" + }, + { + "value": "ja", + "description": "Japanese" + }, + { + "value": "ko", + "description": "Korean" + }, + { + "value": "no", + "description": "Norwegian (Bokmaal)" + }, + { + "value": "pl", + "description": "Polish" + }, + { + "value": "pt-PT", + "description": "Portuguese (Portugal)" + }, + { + "value": "pt-BR", + "description": "Portuguese (Brazil)" + }, + { + "value": "ru", + "description": "Russian" + }, + { + "value": "es", + "description": "Spanish" + }, + { + "value": "sv", + "description": "Swedish" + }, + { + "value": "tr", + "description": "Turkish" + } + ] + }, + "description": "The language codes supported for input text by EntityRecognitionSkill." + }, + "TextTranslationSkillLanguage": { + "type": "string", + "enum": [ + "af", + "ar", + "bn", + "bs", + "bg", + "yue", + "ca", + "zh-Hans", + "zh-Hant", + "hr", + "cs", + "da", + "nl", + "en", + "et", + "fj", + "fil", + "fi", + "fr", + "de", + "el", + "ht", + "he", + "hi", + "mww", + "hu", + "is", + "id", + "it", + "ja", + "sw", + "tlh", + "ko", + "lv", + "lt", + "mg", + "ms", + "mt", + "nb", + "fa", + "pl", + "pt", + "otq", + "ro", + "ru", + "sm", + "sr-Cyrl", + "sr-Latn", + "sk", + "sl", + "es", + "sv", + "ty", + "ta", + "te", + "th", + "to", + "tr", + "uk", + "ur", + "vi", + "cy", + "yua" + ], + "x-ms-enum": { + "name": "TextTranslationSkillLanguage", + "modelAsString": true, + "values": [ + { + "value": "af", + "description": "Afrikaans" + }, + { + "value": "ar", + "description": "Arabic" + }, + { + "value": "bn", + "description": "Bangla" + }, + { + "value": "bs", + "description": "Bosnian (Latin)" + }, + { + "value": "bg", + "description": "Bulgarian" + }, + { + "value": "yue", + "description": "Cantonese (Traditional)" + }, + { + "value": "ca", + "description": "Catalan" + }, + { + "value": "zh-Hans", + "description": "Chinese Simplified" + }, + { + "value": "zh-Hant", + "description": "Chinese Traditional" + }, + { + "value": "hr", + "description": "Croatian" + }, + { + "value": "cs", + "description": "Czech" + }, + { + "value": "da", + "description": "Danish" + }, + { + "value": "nl", + "description": "Dutch" + }, + { + "value": "en", + "description": "English" + }, + { + "value": "et", + "description": "Estonian" + }, + { + "value": "fj", + "description": "Fijian" + }, + { + "value": "fil", + "description": "Filipino" + }, + { + "value": "fi", + "description": "Finnish" + }, + { + "value": "fr", + "description": "French" + }, + { + "value": "de", + "description": "German" + }, + { + "value": "el", + "description": "Greek" + }, + { + "value": "ht", + "description": "Haitian Creole" + }, + { + "value": "he", + "description": "Hebrew" + }, + { + "value": "hi", + "description": "Hindi" + }, + { + "value": "mww", + "description": "Hmong Daw" + }, + { + "value": "hu", + "description": "Hungarian" + }, + { + "value": "is", + "description": "Icelandic" + }, + { + "value": "id", + "description": "Indonesian" + }, + { + "value": "it", + "description": "Italian" + }, + { + "value": "ja", + "description": "Japanese" + }, + { + "value": "sw", + "description": "Kiswahili" + }, + { + "value": "tlh", + "description": "Klingon" + }, + { + "value": "ko", + "description": "Korean" + }, + { + "value": "lv", + "description": "Latvian" + }, + { + "value": "lt", + "description": "Lithuanian" + }, + { + "value": "mg", + "description": "Malagasy" + }, + { + "value": "ms", + "description": "Malay" + }, + { + "value": "mt", + "description": "Maltese" + }, + { + "value": "nb", + "description": "Norwegian" + }, + { + "value": "fa", + "description": "Persian" + }, + { + "value": "pl", + "description": "Polish" + }, + { + "value": "pt", + "description": "Portuguese" + }, + { + "value": "otq", + "description": "Queretaro Otomi" + }, + { + "value": "ro", + "description": "Romanian" + }, + { + "value": "ru", + "description": "Russian" + }, + { + "value": "sm", + "description": "Samoan" + }, + { + "value": "sr-Cyrl", + "description": "Serbian (Cyrillic)" + }, + { + "value": "sr-Latn", + "description": "Serbian (Latin)" + }, + { + "value": "sk", + "description": "Slovak" + }, + { + "value": "sl", + "description": "Slovenian" + }, + { + "value": "es", + "description": "Spanish" + }, + { + "value": "sv", + "description": "Swedish" + }, + { + "value": "ty", + "description": "Tahitian" + }, + { + "value": "ta", + "description": "Tamil" + }, + { + "value": "te", + "description": "Telugu" + }, + { + "value": "th", + "description": "Thai" + }, + { + "value": "to", + "description": "Tongan" + }, + { + "value": "tr", + "description": "Turkish" + }, + { + "value": "uk", + "description": "Ukrainian" + }, + { + "value": "ur", + "description": "Urdu" + }, + { + "value": "vi", + "description": "Vietnamese" + }, + { + "value": "cy", + "description": "Welsh" + }, + { + "value": "yua", + "description": "Yucatec Maya" + } + ] + }, + "description": "The language codes supported for input text by TextTranslationSkill." + }, + "ImageAnalysisSkillLanguage": { + "type": "string", + "enum": [ + "en", + "es", + "ja", + "pt", + "zh" + ], + "x-ms-enum": { + "name": "ImageAnalysisSkillLanguage", + "modelAsString": true, + "values": [ + { + "value": "en", + "description": "English" + }, + { + "value": "es", + "description": "Spanish" + }, + { + "value": "ja", + "description": "Japanese" + }, + { + "value": "pt", + "description": "Portuguese" + }, + { + "value": "zh", + "description": "Chinese" + } + ] + }, + "description": "The language codes supported for input by ImageAnalysisSkill." + }, + "SynonymMap": { + "properties": { + "name": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Naming-rules" + }, + "type": "string", + "description": "The name of the synonym map." + }, + "format": { + "type": "string", + "enum": [ + "solr" + ], + "x-ms-enum": { + "name": "SynonymMapFormat", + "modelAsString": false + }, + "description": "The format of the synonym map. Only the 'solr' format is currently supported." + }, + "synonyms": { + "type": "string", + "description": "A series of synonym rules in the specified synonym map format. The rules must be separated by newlines.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Synonym-Map#SynonymMapFormat" + } + }, + "encryptionKey": { + "$ref": "#/definitions/EncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your data when you want full assurance that no one, not even Microsoft, can decrypt your data in Azure Cognitive Search. Once you have encrypted your data, it will always remain encrypted. Azure Cognitive Search will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your data will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.", + "externalDocs": { + "url": "https://aka.ms/azure-search-encryption-with-cmk" + } + }, + "@odata.etag": { + "x-ms-client-name": "ETag", + "type": "string", + "description": "The ETag of the synonym map." + } + }, + "required": [ + "name", + "format", + "synonyms" + ], + "description": "Represents a synonym map definition." + }, + "ListSynonymMapsResult": { + "properties": { + "value": { + "x-ms-client-name": "SynonymMaps", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SynonymMap" + }, + "description": "The synonym maps in the Search service." + } + }, + "required": [ + "value" + ], + "description": "Response from a List SynonymMaps request. If successful, it includes the full definitions of all synonym maps." + }, + "EncryptionKey": { + "properties": { + "keyVaultKeyName": { + "type": "string", + "description": "The name of your Azure Key Vault key to be used to encrypt your data at rest." + }, + "keyVaultKeyVersion": { + "type": "string", + "description": "The version of your Azure Key Vault key to be used to encrypt your data at rest." + }, + "keyVaultUri": { + "type": "string", + "description": "The URI of your Azure Key Vault, also referred to as DNS name, that contains the key to be used to encrypt your data at rest. An example URI might be https://my-keyvault-name.vault.azure.net." + }, + "accessCredentials": { + "$ref": "#/definitions/AzureActiveDirectoryApplicationCredentials", + "description": "Optional Azure Active Directory credentials used for accessing your Azure Key Vault. Not required if using managed identity instead.", + "externalDocs": { + "url": "https://aka.ms/azure-search-msi" + } + } + }, + "required": [ + "keyVaultKeyName", + "keyVaultKeyVersion", + "keyVaultUri" + ], + "description": "A customer-managed encryption key in Azure Key Vault. Keys that you create and manage can be used to encrypt or decrypt data-at-rest in Azure Cognitive Search, such as indexes and synonym maps." + }, + "AzureActiveDirectoryApplicationCredentials": { + "properties": { + "applicationId": { + "type": "string", + "description": "An AAD Application ID that was granted the required access permissions to the Azure Key Vault that is to be used when encrypting your data at rest. The Application ID should not be confused with the Object ID for your AAD Application." + }, + "applicationSecret": { + "type": "string", + "description": "The authentication key of the specified AAD application." + } + }, + "required": [ + "applicationId" + ], + "description": "Credentials of a registered application created for your search service, used for authenticated access to the encryption keys stored in Azure Key Vault." + }, + "ServiceStatistics": { + "properties": { + "counters": { + "$ref": "#/definitions/ServiceCounters", + "description": "Service level resource counters." + }, + "limits": { + "$ref": "#/definitions/ServiceLimits", + "description": "Service level general limits." + } + }, + "required": [ + "counters", + "limits" + ], + "description": "Response from a get service statistics request. If successful, it includes service level counters and limits." + }, + "ServiceCounters": { + "properties": { + "documentCount": { + "x-ms-client-name": "documentCounter", + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of documents across all indexes in the service." + }, + "indexesCount": { + "x-ms-client-name": "indexCounter", + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of indexes." + }, + "indexersCount": { + "x-ms-client-name": "indexerCounter", + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of indexers." + }, + "dataSourcesCount": { + "x-ms-client-name": "dataSourceCounter", + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of data sources." + }, + "storageSize": { + "x-ms-client-name": "storageSizeCounter", + "$ref": "#/definitions/ResourceCounter", + "description": "Total size of used storage in bytes." + }, + "synonymMaps": { + "x-ms-client-name": "synonymMapCounter", + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of synonym maps." + }, + "skillsetCount": { + "x-ms-client-name": "skillsetCounter", + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of skillsets." + } + }, + "required": [ + "documentCount", + "indexesCount", + "indexersCount", + "dataSourcesCount", + "storageSize", + "synonymMaps", + "skillsetCount" + ], + "description": "Represents service-level resource counters and quotas." + }, + "ServiceLimits": { + "properties": { + "maxFieldsPerIndex": { + "type": "integer", + "format": "int32", + "x-nullable": true, + "description": "The maximum allowed fields per index." + }, + "maxFieldNestingDepthPerIndex": { + "type": "integer", + "format": "int32", + "x-nullable": true, + "description": "The maximum depth which you can nest sub-fields in an index, including the top-level complex field. For example, a/b/c has a nesting depth of 3." + }, + "maxComplexCollectionFieldsPerIndex": { + "type": "integer", + "format": "int32", + "x-nullable": true, + "description": "The maximum number of fields of type Collection(Edm.ComplexType) allowed in an index." + }, + "maxComplexObjectsInCollectionsPerDocument": { + "type": "integer", + "format": "int32", + "x-nullable": true, + "description": "The maximum number of objects in complex collections allowed per document." + } + }, + "description": "Represents various service level limits." + }, + "ResourceCounter": { + "properties": { + "usage": { + "type": "integer", + "format": "int64", + "x-nullable": false, + "description": "The resource usage amount." + }, + "quota": { + "type": "integer", + "format": "int64", + "x-nullable": true, + "description": "The resource amount quota." + } + }, + "required": [ + "usage" + ], + "description": "Represents a resource's usage and quota." + }, + "SearchError": { + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "One of a server-defined set of error codes." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "A human-readable representation of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/SearchError" + }, + "readOnly": true, + "description": "An array of details about specific errors that led to this reported error." + } + }, + "required": [ + "message" + ], + "description": "Describes an error condition for the Azure Cognitive Search API." + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + }, + "ClientRequestIdParameter": { + "name": "x-ms-client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The tracking ID sent with the request to help with debugging.", + "x-ms-client-request-id": true, + "x-ms-parameter-grouping": { + "name": "request-options" + }, + "x-ms-parameter-location": "method" + }, + "IfMatchParameter": { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "x-ms-parameter-grouping": { + "name": "access-condition" + }, + "x-ms-parameter-location": "method" + }, + "IfNoneMatchParameter": { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "x-ms-parameter-grouping": { + "name": "access-condition" + }, + "x-ms-parameter-location": "method" + }, + "PreferHeaderParameter": { + "name": "Prefer", + "in": "header", + "required": true, + "type": "string", + "enum": [ + "return=representation" + ], + "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", + "x-ms-parameter-location": "method" + }, + "EndpointParameter": { + "name": "endpoint", + "in": "path", + "required": true, + "type": "string", + "x-ms-skip-url-encoding": true, + "description": "The endpoint URL of the search service.", + "x-ms-parameter-location": "client" + } + } +} diff --git a/specification/search/data-plane/Azure.Search/readme.md b/specification/search/data-plane/Azure.Search/readme.md new file mode 100644 index 000000000000..3d2cb4bc6377 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/readme.md @@ -0,0 +1,561 @@ +# SearchServiceClient and SearchIndexClient + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for SearchServiceClient and SearchIndexClient. + + +--- +## Getting Started + +To build the SDK for SearchServiceClient and SearchIndexClient, 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 SearchServiceClient and SearchIndexClient. + +``` yaml +title: SearchClient +opt-in-extensible-enums: true +openapi-type: data-plane +``` + +### Tag: package-2019-05-searchservice-preview + +These settings apply only when `--tag=package-2019-05-searchservice-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2019-05-searchservice-preview' +input-file: +- preview/2019-05-06-preview/searchservice.json +``` + +### Tag: package-2019-05-searchindex-preview + +These settings apply only when `--tag=package-2019-05-searchindex-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2019-05-searchindex-preview' +input-file: +- preview/2019-05-06-preview/searchindex.json +``` + +### Tag: package-2019-05-searchservice + +These settings apply only when `--tag=package-2019-05-searchservice` is specified on the command line. + +``` yaml $(tag) == 'package-2019-05-searchservice' +input-file: +- stable/2019-05-06/searchservice.json +``` + +### Tag: package-2019-05-searchindex + +These settings apply only when `--tag=package-2019-05-searchindex` is specified on the command line. + +``` yaml $(tag) == 'package-2019-05-searchindex' +input-file: +- stable/2019-05-06/searchindex.json +``` + +--- +# Code Generation + +!!! READ THIS !!! +This swagger is ready for C# and Java. +!!! READ THIS !!! + +## Java + +These settings apply only when `--java` is specified on the command line. +Please also specify `--java-sdks-folder=`. + +``` yaml $(java) +output-folder: $(java-sdks-folder)/search +namespace: com.azure.search +java: true +sync-methods: none +add-context-parameter: true +generate-client-interfaces: false +custom-types-subpackage: implementation.models +custom-types: AnalyzeResult +license-header: |- + Copyright (c) Microsoft Corporation. All rights reserved. + Licensed under the MIT License. + Code generated by Microsoft (R) AutoRest Code Generator. + Changes may cause incorrect behavior and will be lost if the code is regenerated. + +require: ./autorest-custom-directives.md + +vararg-properties: >- + CorsOptions.allowedOrigins, + AutocompleteOptions.searchFields, + SearchOptions.facets, SearchOptions.highlightFields, SearchOptions.orderBy, SearchOptions.scoringParameters, SearchOptions.searchFields, SearchOptions.select, + SuggestOptions.orderBy, SuggestOptions.searchFields, SuggestOptions.select + +directive: + # Rename IndexBatch to IndexBatchImpl when processing the API spec + - rename-model: + from: IndexBatch + to: IndexBatchImpl + + # Use Document rather than Map + - from: + - DocumentsImpl.java + - SearchResult.java + where: $ + transform: >- + return $ + .replace(/(package com.azure.search.models;)/g, "$1\nimport com.azure.search.Document;") + .replace(/(package com.azure.search.implementation;)/g, "$1\nimport com.azure.search.Document;") + .replace(/(Map)/g, "Document") + .replace(/(Object)/g, "Document") + + # Use Document rather than Map + - from: SuggestResult.java + where: $ + transform: >- + return $ + .replace(/(import java.util.Map;\n)/g, "import com.azure.search.Document;") + .replace(/(Map)/g, "Document") + + # Enable configuration of RestProxy serializer + - from: DocumentsImpl.java + where: $ + transform: >- + return $ + .replace(/(import com.azure.core.util.serializer.JacksonAdapter;)/g, "$1\nimport com.azure.core.util.serializer.SerializerAdapter;") + .replace(/(@param client the instance of the service client containing this operation class.)/g, "$1\n \* @param serializer the serializer to be used for service client requests.") + .replace(/(public DocumentsImpl\(SearchIndexRestClientImpl client\) {)/g, "public DocumentsImpl(SearchIndexRestClientImpl client, SerializerAdapter serializer) {") + .replace(/(this.service = RestProxy.create\(DocumentsService.class, client.getHttpPipeline\(\)\);)/g, "this.service = RestProxy.create(DocumentsService.class, client.getHttpPipeline(), serializer);") + + # Enable public access to client setters + # Enable configuration of RestProxy serializer + - from: SearchIndexRestClientImpl.java + where: $ + transform: >- + return $ + .replace(/(void setApiVersion)/g, "public void setApiVersion") + .replace(/(void setIndexName)/g, "public void setIndexName") + .replace(/(void setSearchDnsSuffix)/g, "public void setSearchDnsSuffix") + .replace(/(void setSearchServiceName)/g, "public void setSearchServiceName") + .replace(/(package com.azure.search.implementation;)/g, "$1\nimport com.azure.core.util.serializer.SerializerAdapter;") + .replace(/(this\(RestProxy.createDefaultPipeline\(\)\);)/g, "this(RestProxy.createDefaultPipeline(), JacksonAdapter.createDefaultSerializerAdapter());") + .replace(/(@param httpPipeline The HTTP pipeline to send requests through.)/g, "$1\n \* @param serializer the serializer to be used for service client requests.") + .replace(/(public SearchIndexRestClientImpl\(HttpPipeline httpPipeline\) {)/g, "public SearchIndexRestClientImpl(HttpPipeline httpPipeline, SerializerAdapter serializer) {") + .replace(/(this.documents = new DocumentsImpl\(this\);)/g, "this.documents = new DocumentsImpl(this, serializer);") + + # Enable IndexAction to be used as a generic type + # Enable serialization of both POJOs and Maps + - from: IndexAction.java + where: $ + transform: >- + return $ + .replace(/(import com.fasterxml.jackson.annotation.JsonProperty;)/g, "import com.fasterxml.jackson.annotation.JsonAnyGetter;\nimport com.fasterxml.jackson.annotation.JsonIgnore;\n$1\nimport com.fasterxml.jackson.annotation.JsonUnwrapped;\n") + .replace(/(class IndexAction)/g, "$1") + .replace(/(Unmatched properties from the message are deserialized this collection)/g, "The document on which the action will be performed.") + .replace(/(@JsonProperty\(value = ""\))/g, "@JsonUnwrapped") + .replace(/(private Map additionalProperties);/g, "private T document;\n\n @JsonIgnore\n private Map properties;\n\n @JsonAnyGetter\n private Map getParamMap() {\n return properties;\n }") + .replace(/(Get the additionalProperties property: Unmatched properties from the\n\s+\* message are deserialized this collection.)/g, "Get the document on which the action will be performed; Fields other than the key are ignored for delete actions.") + .replace(/(@return the additionalProperties value.)/g, "@return the document value.") + .replace(/(public Map getAdditionalProperties\(\) {\s+return this.additionalProperties;\s+})/g, "public T getDocument() {\n return this.document;\n }") + .replace(/(Set the additionalProperties property: Unmatched properties from the\s+\* message are deserialized this collection.)/g, "Get the document on which the action will be performed; Fields other than the key are ignored for delete actions.") + .replace(/(@param additionalProperties the additionalProperties value to set.)/g, "@param document the document value to set.") + .replace(/(public IndexAction setAdditionalProperties\(Map additionalProperties\) {\s+this.additionalProperties = additionalProperties;\s+return this;\s+})/g, "@SuppressWarnings(\"unchecked\")\n public IndexAction setDocument(T document) {\n if (document instanceof Map) {\n this.properties = (Map) document;\n this.document = null;\n } else {\n this.document = document;\n this.properties = null;\n }\n return this;\n }") + .replace(/(public IndexAction setActionType\(IndexActionType actionType\) {)/g, "public IndexAction setActionType(IndexActionType actionType) {") + + # Enable configuration of RestProxy serializer + - from: SearchIndexRestClientBuilder.java + where: $ + transform: >- + return $ + .replace(/(package com.azure.search.implementation;)/g, "$1\nimport com.azure.core.util.serializer.SerializerAdapter;") + .replace(/(\* The HTTP pipeline to send requests through)/g, "\* The serializer to use for requests\n \*\/\n private SerializerAdapter serializer;\n\n \/\*\*\n \* Sets The serializer to use for requests.\n \*\n \* @param serializer the serializer value.\n \* @return the SearchIndexRestClientBuilder.\n \*\/\n public SearchIndexRestClientBuilder serializer\(SerializerAdapter serializer\) {\n this.serializer = serializer;\n return this;\n }\n\n \/\*\n $1") + .replace(/(new SearchIndexRestClientImpl\(pipeline)/g, "$1, serializer") + .replace(/(this.pipeline = RestProxy.createDefaultPipeline\(\);\s+})/g, "$1\n if \(serializer == null\) {\n this.serializer = JacksonAdapter.createDefaultSerializerAdapter\(\);\n }") + + # Enable IndexBatchImpl to be used as a generic type + - from: IndexBatchImpl.java + where: $ + transform: >- + return $ + .replace(/(public final class IndexBatchImpl)/g, "public class IndexBatchImpl") + .replace(/(private List actions;)/g, "private List> actions;") + .replace(/(public List getActions\(\) {)/g, "public List> getActions() {") + .replace(/(public IndexBatchImpl setActions\(List actions\) {)/g, "protected IndexBatchImpl setActions(List> actions) {") + + # Replace use of generated IndexBatchImpl with custom IndexBatch class + - from: DocumentsImpl.java + where: $ + transform: >- + return $ + .replace(/(IndexBatchImpl)/g, "IndexBatch") + .replace(/(IndexBatch )/g, "IndexBatch ") + .replace(/(Mono indexAsync)/g, " $1") + .replace(/(Mono> index)/g, " $1") + .replace(/(import com.azure.search.implementation.models.IndexBatch)/g, "import com.azure.search.models.IndexBatch") + + # Change get to is + - from: DocumentsImpl.java + where: $ + transform: >- + return $ + .replace(/(get(IncludeTotalResultCount|UseFuzzyMatching))/g, "is$2") + + # Mark IndexingResult as Serializable, for use in IndexBatchException + - from: IndexingResult.java + where: $ + transform: >- + return $ + .replace(/(import com.fasterxml.jackson.annotation.JsonProperty;)/g, "$1\n\nimport java.io.Serializable;") + .replace(/(class IndexingResult {)/g, "class IndexingResult implements Serializable {\n private static final long serialVersionUID = -8604424005271188140L;") + + - from: + - FacetResult.java + where: $ + transform: >- + return $.replace(/(public FacetResult setAdditionalProperties)/g, "FacetResult setAdditionalProperties") + + - from: + - SearchResult.java + where: $ + transform: >- + return $.replace(/(public SearchResult setAdditionalProperties)/g, "SearchResult setAdditionalProperties") + + - from: + - SuggestResult.java + where: $ + transform: >- + return $.replace(/(public SuggestResult setAdditionalProperties)/g, "SuggestResult setAdditionalProperties") + + - from: + - FacetResult.java + - SearchResult.java + - SuggestResult.java + where: $ + transform: >- + return $ + .replace(/(getAdditionalProperties)/g, "getDocument") + .replace(/(setAdditionalProperties)/g, "setDocument") + reason: Provides a better description of the getter/setter for addtionalProperties + + - from: + - SearchResult.java + where: $ + transform: >- + return $ + .replace(/(package com.azure.search.models;)/g, "$1\nimport com.fasterxml.jackson.annotation.JsonIgnore;") + .replace(/(public Document getDocument())/g, "@JsonIgnore\n$1") + + # Add static Collection method to DataType + - from: DataType.java + where: $ + transform: >- + return $ + .replace(/(public static final DataType EDM_COMPLEX_TYPE = fromString\("Edm.ComplexType"\);)/g, "$1\n\n /**\n * Returns a collection of a specific DataType\n * @param dataType the corresponding DataType\n * @return a Collection of the corresponding DataType\n */\n @JsonCreator\n public static DataType Collection(DataType dataType) {\n return fromString(String.format(\"Collection(%s)\", dataType.toString()));\n }") + + # Workaround to fix bad host path parameters + - from: + - SkillsetsImpl.java + - DatasetsImpl.java + - DataSourcesImpl.java + - IndexersImpl.java + - IndexesImpl.java + - SynonymMapsImpl.java + where: $ + transform: >- + return $ + .replace(/(this.getSearchServiceName)/g, "this.client.getSearchServiceName") + .replace(/(this.getSearchDnsSuffix)/g, "this.client.getSearchDnsSuffix") + + # Replace VoidResponse with SimpleResponse + - from: + - SkillsetsImpl.java + - DatasetsImpl.java + - DataSourcesImpl.java + - IndexersImpl.java + - IndexesImpl.java + - SynonymMapsImpl.java + where: $ + transform: >- + return $ + .replace(/(import com.azure.core.http.rest.VoidResponse;\n)/g, "") + .replace(/(VoidResponse)/g, "SimpleResponse") + + # Change Field.analyzer/indexAnalyzer/searchAnalyzer's types from enum to string. Update setters and getters. + - change-object-ref-to-string: + path: "$.definitions.Field.properties.analyzer" + - change-object-ref-to-string: + path: "$.definitions.Field.properties.searchAnalyzer" + - change-object-ref-to-string: + path: "$.definitions.Field.properties.indexAnalyzer" + + # Change CustomAnalyzer.tokenizer/tokenFilters/charFilters' types from enum to string. Update setters and getters. + - change-object-ref-to-string: + path: "$.definitions.CustomAnalyzer.properties.tokenizer" + - change-object-ref-to-string: + path: "$.definitions.CustomAnalyzer.properties.tokenFilters.items" + - change-object-ref-to-string: + path: "$.definitions.CustomAnalyzer.properties.charFilters.items" + + - from: + - SearchServiceRestClientImpl.java + where: $ + transform: >- + return $.replace(/(package com.azure.search.implementation;)/g, "$1\nimport com.azure.core.http.rest.RestProxy;") + + - from: + - DataSourceType.java + where: $ + transform: >- + return $ + .replace(/(COSMOS_DB)/g, "COSMOS") +``` + +## 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 + namespace: Azure.Search + clear-output-folder: true + output-folder: $(csharp-sdks-folder)/search/Azure.Search/src/Generated + +directive: + # TODO: Simplify all the below regexes once we gain the ability to target them at specific files. + + # Rename the IDocumentsOperations interface and implementation, then make the interface internal so we can version it freely. + # This requires these changes: + # 1. Globally rename the interface and implementation class, along with comments and constructors + # 2. Make the interface itself internal + # 3. Make the SearchIndexClient.Documents property internal and rename it to DocumentsProxy + # 4. Rename the type of the ISearchIndexClient.Documents property back to IDocumentsOperations, effectively removing the + # generated property from the interface (this reverses step 1 above just for this case) + # + # The ISearchIndexClient.Documents property is of type IDocumentsOperations, which is hand-written and delegates to DocumentsProxy. + # This allows us to do two things: + # 1. Abstract away the detail of whether GET or POST is used for read operations (Search, Suggest, etc.) + # 2. Add methods with type parameters and custom serialization to make our SDK easier to use in strongly-typed scenarios + # (i.e. -- where the customer is using a class to represent their model because its schema is known at design-time) + - from: source-file-csharp + where: $ + transform: >- + return $. + replace( /DocumentsOperations/g, "DocumentsProxyOperations" ). + replace( /public (partial interface IDocumentsProxyOperations)/g, "internal $1" ). + replace( /public virtual (IDocumentsProxyOperations) Documents ({ get;)/g, "internal $1 DocumentsProxy $2" ). + replace( /Documents = new DocumentsProxyOperations\(this\);/g, "DocumentsProxy = new DocumentsProxyOperations\(this\);" ). + replace( /(Gets the) IDocumentsProxyOperations(.\s*\/\/\/ <\/summary>\s*)IDocumentsProxyOperations (Documents { get; })/g, "$1 IDocumentsOperations$2IDocumentsOperations $3" ) +#### + # Adds extra JsonSerializerSettings parameters to all operation methods. This enables the SDK to delegate serialization/de-serialization to the custom serializer on a per-call basis. + - from: source-file-csharp + where: $ + transform: >- + return $. + replace( /(Async\(.*, CancellationToken cancellationToken = default\(CancellationToken\))/g, "$1, Newtonsoft.Json.JsonSerializerSettings requestSerializerSettings = null, Newtonsoft.Json.JsonSerializerSettings responseDeserializerSettings = null" ). + replace( /(DeserializeObject<.+>\(.+), Client\.DeserializationSettings/g, "$1, responseDeserializerSettings ?? Client.DeserializationSettings" ). + replace( /(SerializeObject\(.+), Client\.SerializationSettings/g , "$1, requestSerializerSettings ?? Client.SerializationSettings" ) +#### + # Make GetWithHttpMessagesAsync generic so we can tell the deserializer what type to instantiate. + # ASSUMPTION: Only GetWithHttpMessagesAsync makes a call to DeserializeObject(), and only when it's deserializing the non-error response. + # Ideally we'd be able to more finely target these transform rules. + - from: source-file-csharp + where: $ + transform: >- + return $. + replace( /(Task(> GetWithHttpMessagesAsync)/g, "$1$2" ). + replace( /(DeserializeObject)/g, "$1" ). + replace( /(var _result = new AzureOperationResponse)/g, "$1" ) +#### + # Make SearchRequest/SuggestRequest/AutocompleteRequest internal, since they are implementation details. + - from: source-file-csharp + where: $ + transform: >- + return $. + replace( /public (partial class) (Suggest|Search|Autocomplete)(Request)/g, "internal $1 $2$3" ) +#### + # Change the documentation for $select for Suggest. The .NET SDK treats this property differently than the REST API + # does by default, and we don't want to change it for backwards compatibility reasons. + - from: source-file-csharp + where: $ + transform: >- + return $. + replace( /(The comma-separated list of fields to retrieve. If unspecified,) only the key field will be included in the results./g, "$1 all fields marked as retrievable in the schema are included." ) +#### + # Make SuggestResult and DocumentSuggestResult generic so we can tell the deserializer what type to instantiate. + # For SuggestResult, this means we also have to replace AdditionalProperties with a property of the generic type. + - from: source-file-csharp + where: $ + transform: >- + return $. + replace( /(public partial class DocumentSuggestResult)/g, "$1" ). + replace( /(IList" ). + replace( /(public partial class SuggestResult)/g, "$1" ). + replace( /(SuggestResult class.\s*\/\/\/ <\/summary>\s*)\/\/\/ Unmatched properties from the\s*\/\/\/ message are deserialized this collection<\/param>/g, "$1/// The document on which the suggested text is based." ). + replace( /(public SuggestResult)\(IDictionary additionalProperties = default\(IDictionary\),/g, "$1(T document = default(T)," ). + replace( /(public SuggestResult\(.*\)\s*{\s*)AdditionalProperties = additionalProperties;/g, "$1Document = document;" ). + replace( /(\/\/\/ \s*\/\/\/) Gets or sets unmatched properties from the message are deserialized\s*\/\/\/ this collection(\s*\/\/\/ <\/summary>\s*)\[JsonExtensionData\]\s*public IDictionary AdditionalProperties { get; set; }(\s*.*\s*\/\/\/ Gets the text of the suggestion result.)/g, "$1 Gets the document on which the suggested text is based. $2public T Document { get; private set; }$3" ). + replace( /(SuggestGetWithHttpMessagesAsync)/g, "$1" ). + replace( /(SuggestPostWithHttpMessagesAsync)/g, "$1" ). + replace( /(AzureOperationResponse" ). + replace( /(DeserializeObject" ) +#### + # Improve documentation for SuggestParameters. + - from: source-file-csharp + where: $ + transform: >- + return $. + replace( /(\/\/\/) Additional parameters for SuggestGet operation./g, "$1 Parameters for filtering, sorting, fuzzy matching, and other suggestions query behaviors." ) +#### + # Make IndexBatch and IndexAction generic so we can provide a strongly-typed interface all the way down. + # For IndexAction, this means we also have to replace AdditionalProperties with a property of the generic type. + # Also use IEnumerable instead of IList for backwards compatibility. + - from: source-file-csharp + where: $ + transform: >- + return $. + replace( /(public partial class IndexBatch)/g, "$1" ). + replace( /IList/g, "IEnumerable>" ). + replace( /(public partial class IndexAction)/g, "$1" ). + replace( /(IndexAction class.\s*\/\/\/ <\/summary>\s*)\/\/\/ Unmatched properties from the\s*\n\s*\/\/\/ message are deserialized this collection<\/param>/g, "$1/// The document on which the action will be performed." ). + replace( /(public IndexAction)\(IDictionary additionalProperties = default\(IDictionary\),/g, "$1(T document = default(T)," ). + replace( /(public IndexAction\(.*\)\s*{\s*)AdditionalProperties = additionalProperties;/g, "$1Document = document;" ). + replace( /(\/\/\/ \s*\n\s*\/\/\/) Gets or sets unmatched properties from the message are deserialized\s*\n\s*\/\/\/ this collection(\s*\n\s*\/\/\/ <\/summary>\s*\n\s*)\[JsonExtensionData\]\s*\n\s*public IDictionary AdditionalProperties ({ get; set; }\s*.*\s*\/\/\/ Gets or sets the operation to perform on a document)/g, "$1 Gets the document on which the action will be performed; Fields other than the key are ignored for delete actions. $2public T Document $3" ). + replace( /(IndexWithHttpMessagesAsync)\((IndexBatch)/g, "$1($2" ) +#### + # Make the constructors and AdditionalProperties property of FacetResult internal. + - from: source-file-csharp + where: $ + transform: >- + return $. + replace( /public (FacetResult\()/g, "internal $1" ). + replace( /public (IDictionary AdditionalProperties { get; set; }\s*.*\s*\/\/\/ Gets the approximate count of documents falling within the bucket)/g, "internal $1" ) +#### + # Make SearchResult and DocumentSearchResult generic so we can tell the deserializer what type to instantiate. + # For SearchResult, this means we also have to replace AdditionalProperties with a property of the generic type. + - from: source-file-csharp + where: $ + transform: >- + return $. + replace( /(public partial class DocumentSearchResult)/g, "$1" ). + replace( /(IList" ). + replace( /(public partial class SearchResult)/g, "$1" ). + replace( /(SearchResult class.\s*\/\/\/ <\/summary>\s*)\/\/\/ Unmatched properties from the\s*\/\/\/ message are deserialized this collection<\/param>/g, "$1/// The document found by the search query." ). + replace( /(public SearchResult)\(IDictionary additionalProperties = default\(IDictionary\),/g, "$1(T document = default(T)," ). + replace( /(public SearchResult\(.*\)\s*{\s*)AdditionalProperties = additionalProperties;/g, "$1Document = document;" ). + replace( /(\/\/\/ \s*\/\/\/) Gets or sets unmatched properties from the message are deserialized\s*\/\/\/ this collection(\s*\/\/\/ <\/summary>\s*)\[JsonExtensionData\]\s*public IDictionary AdditionalProperties { get; set; }(\s*.*\s*\/\/\/ Gets the relevance score of the document compared to other)/g, "$1 Gets the document found by the search query. $2public T Document { get; private set; }$3" ). + replace( /(SearchGetWithHttpMessagesAsync)/g, "$1" ). + replace( /(SearchPostWithHttpMessagesAsync)/g, "$1" ). + replace( /(AzureOperationResponse" ). + replace( /(DeserializeObject" ) +#### + # Make DocumentSearchResult.NextPageParameters and NextLink internal. The public interface for continuations has + # historically been the custom-written SearchContinuationToken class, and we want to maintain that for backward + # compatibility. Also, NextPageParameters is of type SearchRequest, which is internal. For this reason, we also need + # to make the DocumentSearchResult constructors internal. + - from: source-file-csharp + where: $ + transform: >- + return $. + replace( /public (SearchRequest NextPageParameters { get; private set; })/g, "internal $1" ). + replace( /public (string NextLink { get; private set; })/g, "internal $1" ). + replace( /public (DocumentSearchResult\()/g, "internal $1" ) +#### + # Improve documentation for SearchParameters and make the ScoringParameters property strongly-typed for ease of use + # and backward compatibility. + # TODO: Remove the check for JsonIgnore in the ScoringParameters regex below once we have the ability to target + # specific files. It is currently necessary in order to only modify the property in SearchParameters and not + # SearchRequest. + - from: source-file-csharp + where: $ + transform: >- + return $. + replace( /(\/\/\/) Additional parameters for SearchGet operation./g, "$1 Parameters for filtering, sorting, faceting, paging, and other search query behaviors." ). + replace( /(public SearchParameters\(.*IList<)string(> scoringParameters = default\(IList<)string/g, "$1ScoringParameter$2ScoringParameter" ). + replace( /(public IList<)string(> ScoringParameters { get; set; }\s*.*\s*.*\s*.*\s*.*\s*\[Newtonsoft.Json.JsonIgnore\])/g, "$1ScoringParameter$2" ). + replace( /(IList<)string(> scoringParameters = default\(IList<)string(>\);\s*if \(searchParameters != null\))/g, "$1ScoringParameter$2ScoringParameter$3" ) +#### + # Split the generated SearchGet and SearchPost methods into separate parts so we can re-use them for ContinueSearch. + # TODO: Simplify the regexes below once we have the ability to target specific files. Later, remove this entirely once + # AutoRest has more flexibility around paging (the current x-ms-pageable implementation doesn't work for us because it + # doesn't model additional top-level response properties or continuation POST requests). + - from: source-file-csharp + where: $ + transform: >- + return $. + replace( /(Task>>) (SearchGetWithHttpMessagesAsync)\((.*), (Newtonsoft.Json.JsonSerializerSettings requestSerializerSettings = null, Newtonsoft.Json.JsonSerializerSettings responseDeserializerSettings = null)\);/g, "$1 $2($3, $4);\n\n $1 Continue$2(string url, System.Guid? clientRequestId, Dictionary> customHeaders, bool shouldTrace, string invocationId, CancellationToken cancellationToken, $4);\n" ). + replace( /(Task>>) (SearchPostWithHttpMessagesAsync)\((.*), (Newtonsoft.Json.JsonSerializerSettings requestSerializerSettings = null, Newtonsoft.Json.JsonSerializerSettings responseDeserializerSettings = null)\);/g, "$1 $2($3, $4);\n\n $1 Continue$2(string url, SearchRequest searchRequest, System.Guid? clientRequestId, Dictionary> customHeaders, bool shouldTrace, string invocationId, CancellationToken cancellationToken, $4);\n" ). + replace( /(_queryParameters.Add\(string.Format\("searchMode=\{0\}",.*\s*.*\s*.*\s*.*\s*.*\s*.*\s*.*\s*.*\s*.*\s*.*\s*.*\s*.*\s*.*\s*.*\s*.*\s*.*\s*.*\s*)(\/\/ Create HTTP transport objects)/g, "$1return await ContinueSearchGetWithHttpMessagesAsync(_url, clientRequestId, customHeaders, _shouldTrace, _invocationId, cancellationToken, requestSerializerSettings, responseDeserializerSettings).ConfigureAwait(false);\n }\n\n public async Task>> ContinueSearchGetWithHttpMessagesAsync(string _url, System.Guid? clientRequestId, Dictionary> customHeaders, bool _shouldTrace, string _invocationId, CancellationToken cancellationToken, JsonSerializerSettings requestSerializerSettings, JsonSerializerSettings responseDeserializerSettings)\n {\n $2" ). + replace( /(docs\/search.post.search.*\s*.*\s*.*\s*.*\s*.*\s*.*\s*.*\s*.*\s*.*\s*.*\s*.*\s*.*\s*.*\s*)(\/\/ Create HTTP transport objects)/g, "$1return await ContinueSearchPostWithHttpMessagesAsync(_url, searchRequest, clientRequestId, customHeaders, _shouldTrace, _invocationId, cancellationToken, requestSerializerSettings, responseDeserializerSettings).ConfigureAwait(false);\n }\n\n public async Task>> ContinueSearchPostWithHttpMessagesAsync(string _url, SearchRequest searchRequest, System.Guid? clientRequestId, Dictionary> customHeaders, bool _shouldTrace, string _invocationId, CancellationToken cancellationToken, JsonSerializerSettings requestSerializerSettings, JsonSerializerSettings responseDeserializerSettings)\n {\n $2" ) + +# TODO: Remove this workaround once AutoRest fixes the incorrect code generation when using a parameterized host and both client and operation groups paths. + - from: source-file-csharp + where: $ + transform: >- + if ($.includes("class DataSourcesOperations") || $.includes("class IndexersOperations") || + $.includes("class IndexesOperations") || $.includes("class SynonymMapsOperations") || + $.includes("class SkillsetsOperations")) + + return $. + replace( /this.SearchServiceName/g, "Client.SearchServiceName" ). + replace( /this.SearchDnsSuffix/g, "Client.SearchDnsSuffix" ). + replace( /\"Client.SearchServiceName\"/g, "\"this.Client.SearchServiceName\"" ). + replace( /\"Client.SearchDnsSuffix\"/g, "\"this.Client.SearchDnsSuffix\"" ); + return $; +#### + # The following regex are required to make the generated Field class conform to the needs of the custom implementation + # that we've had in the Azure Search .NET SDK since it was first released. We've decided to keep the custom behavior of + # Field just for .NET for the sake of backward compatibility, but for other languages the client behavior will conform + # to the REST API. + # + # To achieve this, we need to make the generated constructors internal, as well as some of the generated properties. + - from: source-file-csharp + where: $ + transform: >- + return $. + replace( /public (Field\(\))/g, "internal $1" ). + replace( /public (Field\(string name,)/g, "internal $1" ). + replace( /public (bool\? Key { get; set; })/g, "internal $1" ). + replace( /public (bool\? Retrievable { get; set; })/g, "internal $1" ). + replace( /public (bool\? Searchable { get; set; })/g, "internal $1" ). + replace( /public (bool\? Filterable { get; set; })/g, "internal $1" ). + replace( /public (bool\? Sortable { get; set; })/g, "internal $1" ). + replace( /public (bool\? Facetable { get; set; })/g, "internal $1" ); +``` + +## 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)/preview/2019-05-06-preview/searchservice.json + - $(this-folder)/preview/2019-05-06-preview/searchindex.json + - $(this-folder)/stable/2019-05-06/searchservice.json + - $(this-folder)/stable/2019-05-06/searchindex.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/data-plane/Microsoft.Azure.Search.Data/track1/stable/2019-05-06/examples/SearchIndexAutocompleteDocumentsGet.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchIndexAutocompleteDocumentsGet.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Data/track1/stable/2019-05-06/examples/SearchIndexAutocompleteDocumentsGet.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchIndexAutocompleteDocumentsGet.json diff --git a/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchIndexAutocompleteDocumentsPost.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchIndexAutocompleteDocumentsPost.json new file mode 100644 index 000000000000..e16b85036391 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchIndexAutocompleteDocumentsPost.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "searchServiceName": "myservice", + "searchDnsSuffix": "search.windows.net", + "indexName": "myindex", + "api-version": "2019-05-06", + "autocompleteRequest": { + "autocompleteMode": "oneTerm", + "search": "washington medic", + "suggesterName": "sg", + "filter": "search.in(docId,'101,102,105')", + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": 80, + "searchFields": "title,description", + "top": 10 + } + }, + "responses": { + "200": { + "body": [ + { + "text": "medicaid", + "queryPlusText": "washington medicaid" + }, + { + "text": "medicare", + "queryPlusText": "washington medicare" + }, + { + "text": "medicine", + "queryPlusText": "washington medicine" + } + ] + } + } +} diff --git a/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchIndexCountDocuments.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchIndexCountDocuments.json new file mode 100644 index 000000000000..d8939b5ad2d9 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchIndexCountDocuments.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "searchServiceName": "myservice", + "searchDnsSuffix": "search.windows.net", + "indexName": "myindex", + "api-version": "2019-05-06" + }, + "responses": { + "200": { + "body": 427 + } + } +} diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/stable/2019-05-06/examples/SearchIndexGetDocument.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchIndexGetDocument.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Data/track1/stable/2019-05-06/examples/SearchIndexGetDocument.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchIndexGetDocument.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/stable/2019-05-06/examples/SearchIndexIndexDocuments.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchIndexIndexDocuments.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Data/track1/stable/2019-05-06/examples/SearchIndexIndexDocuments.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchIndexIndexDocuments.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/stable/2019-05-06/examples/SearchIndexSearchDocumentsGet.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchIndexSearchDocumentsGet.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Data/track1/stable/2019-05-06/examples/SearchIndexSearchDocumentsGet.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchIndexSearchDocumentsGet.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/stable/2019-05-06/examples/SearchIndexSearchDocumentsPost.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchIndexSearchDocumentsPost.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Data/track1/stable/2019-05-06/examples/SearchIndexSearchDocumentsPost.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchIndexSearchDocumentsPost.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/stable/2019-05-06/examples/SearchIndexSuggestDocumentsGet.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchIndexSuggestDocumentsGet.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Data/track1/stable/2019-05-06/examples/SearchIndexSuggestDocumentsGet.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchIndexSuggestDocumentsGet.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/stable/2019-05-06/examples/SearchIndexSuggestDocumentsPost.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchIndexSuggestDocumentsPost.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Data/track1/stable/2019-05-06/examples/SearchIndexSuggestDocumentsPost.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchIndexSuggestDocumentsPost.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceCreateDataSource.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceCreateDataSource.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceCreateDataSource.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceCreateDataSource.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceCreateIndex.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceCreateIndex.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceCreateIndex.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceCreateIndex.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceCreateIndexer.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceCreateIndexer.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceCreateIndexer.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceCreateIndexer.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceCreateOrUpdateDataSource.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceCreateOrUpdateDataSource.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceCreateOrUpdateDataSource.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceCreateOrUpdateDataSource.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceCreateOrUpdateIndex.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceCreateOrUpdateIndex.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceCreateOrUpdateIndex.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceCreateOrUpdateIndex.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceCreateOrUpdateIndexer.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceCreateOrUpdateIndexer.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceCreateOrUpdateIndexer.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceCreateOrUpdateIndexer.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceCreateOrUpdateSkillset.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceCreateOrUpdateSkillset.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceCreateOrUpdateSkillset.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceCreateOrUpdateSkillset.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceCreateOrUpdateSynonymMap.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceCreateOrUpdateSynonymMap.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceCreateOrUpdateSynonymMap.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceCreateOrUpdateSynonymMap.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceCreateSkillset.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceCreateSkillset.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceCreateSkillset.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceCreateSkillset.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceCreateSynonymMap.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceCreateSynonymMap.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceCreateSynonymMap.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceCreateSynonymMap.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceDeleteDataSource.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceDeleteDataSource.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceDeleteDataSource.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceDeleteDataSource.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceDeleteIndex.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceDeleteIndex.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceDeleteIndex.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceDeleteIndex.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceDeleteIndexer.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceDeleteIndexer.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceDeleteIndexer.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceDeleteIndexer.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceDeleteSkillset.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceDeleteSkillset.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceDeleteSkillset.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceDeleteSkillset.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceDeleteSynonymMap.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceDeleteSynonymMap.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceDeleteSynonymMap.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceDeleteSynonymMap.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceGetDataSource.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceGetDataSource.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceGetDataSource.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceGetDataSource.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceGetIndex.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceGetIndex.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceGetIndex.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceGetIndex.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceGetIndexStatistics.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceGetIndexStatistics.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceGetIndexStatistics.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceGetIndexStatistics.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceGetIndexer.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceGetIndexer.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceGetIndexer.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceGetIndexer.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceGetIndexerStatus.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceGetIndexerStatus.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceGetIndexerStatus.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceGetIndexerStatus.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceGetServiceStatistics.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceGetServiceStatistics.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceGetServiceStatistics.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceGetServiceStatistics.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceGetSkillset.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceGetSkillset.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceGetSkillset.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceGetSkillset.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceGetSynonymMap.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceGetSynonymMap.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceGetSynonymMap.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceGetSynonymMap.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceIndexAnalyze.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceIndexAnalyze.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceIndexAnalyze.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceIndexAnalyze.json diff --git a/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceListDataSources.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceListDataSources.json new file mode 100644 index 000000000000..161ad46116a1 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceListDataSources.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "searchServiceName": "myservice", + "searchDnsSuffix": "search.windows.net", + "$select": "*", + "api-version": "2019-05-06" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "mydocdbdatasource", + "description": "My Cosmos DB data source.", + "type": "cosmosdb", + "credentials": { + "connectionString": null + }, + "container": { + "name": "myDocDbCollectionId", + "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" + }, + "dataChangeDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "highWaterMarkColumnName": "_ts" + }, + "dataDeletionDetectionPolicy": { + "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "softDeleteColumnName": "isDeleted", + "softDeleteMarkerValue": "true" + } + } + ] + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceListIndexers.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceListIndexers.json new file mode 100644 index 000000000000..a00028d0ac51 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceListIndexers.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "searchServiceName": "myservice", + "searchDnsSuffix": "search.windows.net", + "$select": "*", + "api-version": "2019-05-06" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "myindexer", + "description": "a cool indexer", + "dataSourceName": "mydocdbdatasource", + "targetIndexName": "orders", + "schedule": { + "interval": "PT1H", + "startTime": "2015-01-01T00:00:00Z" + }, + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5 + }, + "fieldMappings": [], + "disabled": false + }, + { + "name": "myotherindexer", + "description": "another cool indexer", + "dataSourceName": "myblobdatasource", + "targetIndexName": "orders", + "parameters": { + "maxFailedItems": 10, + "maxFailedItemsPerBatch": 5, + "batchSize": 15 + }, + "fieldMappings": [ + { + "sourceFieldName": "PersonName", + "targetFieldName": "FirstName", + "mappingFunction": { + "name": "extractTokenAtPosition", + "parameters": { + "delimiter": " ", + "position": 0 + } + } + }, + { + "sourceFieldName": "PersonName", + "targetFieldName": "LastName", + "mappingFunction": { + "name": "extractTokenAtPosition", + "parameters": { + "delimiter": " ", + "position": 1 + } + } + } + ], + "disabled": false + } + ] + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceListIndexes.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceListIndexes.json new file mode 100644 index 000000000000..0b7e3926d55e --- /dev/null +++ b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceListIndexes.json @@ -0,0 +1,281 @@ +{ + "parameters": { + "searchServiceName": "myservice", + "searchDnsSuffix": "search.windows.net", + "$select": "*", + "api-version": "2019-05-06" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "hotels", + "fields": [ + { + "name": "hotelId", + "type": "Edm.String", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": true, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "baseRate", + "type": "Edm.Double", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "description", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "description_fr", + "type": "Edm.String", + "searchable": true, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "fr.lucene", + "synonymMaps": [] + }, + { + "name": "hotelName", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "category", + "type": "Edm.String", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "tags", + "type": "Collection(Edm.String)", + "searchable": true, + "filterable": true, + "retrievable": true, + "sortable": false, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": "tagsAnalyzer", + "synonymMaps": [] + }, + { + "name": "parkingIncluded", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "smokingAllowed", + "type": "Edm.Boolean", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "lastRenovationDate", + "type": "Edm.DateTimeOffset", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "rating", + "type": "Edm.Int32", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": true, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "location", + "type": "Edm.GeographyPoint", + "searchable": false, + "filterable": true, + "retrievable": true, + "sortable": true, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + } + ], + "scoringProfiles": [ + { + "name": "geo", + "text": { + "weights": { + "hotelName": 5 + } + }, + "functions": [ + { + "type": "distance", + "boost": 5, + "fieldName": "location", + "interpolation": "logarithmic", + "distance": { + "referencePointParameter": "currentLocation", + "boostingDistance": 10 + } + } + ] + } + ], + "defaultScoringProfile": "geo", + "suggesters": [ + { + "name": "sg", + "searchMode": "analyzingInfixMatching", + "sourceFields": [ + "hotelName" + ] + } + ], + "analyzers": [ + { + "name": "tagsAnalyzer", + "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", + "charFilters": [ + "html_strip" + ], + "tokenizer": "standard_v2" + } + ], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "corsOptions": { + "allowedOrigins": [ + "tempuri.org" + ], + "maxAgeInSeconds": 60 + } + }, + { + "name": "testindex", + "fields": [ + { + "name": "id", + "type": "Edm.String", + "searchable": false, + "filterable": false, + "retrievable": true, + "sortable": false, + "facetable": false, + "key": true, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + }, + { + "name": "hidden", + "type": "Edm.Double", + "searchable": false, + "filterable": true, + "retrievable": false, + "sortable": true, + "facetable": false, + "key": false, + "indexAnalyzer": null, + "searchAnalyzer": null, + "analyzer": null, + "synonymMaps": [] + } + ], + "scoringProfiles": [], + "defaultScoringProfile": null, + "suggesters": [], + "analyzers": [], + "tokenizers": [], + "tokenFilters": [], + "charFilters": [], + "corsOptions": null + } + ] + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceListSkillsets.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceListSkillsets.json new file mode 100644 index 000000000000..ccfc15dbe454 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceListSkillsets.json @@ -0,0 +1,140 @@ +{ + "parameters": { + "searchServiceName": "myservice", + "searchDnsSuffix": "search.windows.net", + "$select": "*", + "api-version": "2019-05-06" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "demoskillset", + "description": "Extract entities, detect language and extract key-phrases", + "skills": [ + { + "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "name": "#1", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "organizations", + "targetName": "organizations" + } + ], + "categories": [ + "organization" + ], + "defaultLanguageCode": "en", + "minimumPrecision": 0.7 + }, + { + "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "name": "#2", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + } + ], + "outputs": [ + { + "name": "languageCode", + "targetName": "languageCode" + } + ] + }, + { + "@odata.type": "#Microsoft.Skills.Text.SplitSkill", + "name": "#3", + "description": null, + "context": null, + "inputs": [ + { + "name": "text", + "source": "/document/content" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "textItems", + "targetName": "pages" + } + ], + "defaultLanguageCode": null, + "textSplitMode": "pages", + "maximumPageLength": 4000 + }, + { + "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "name": "#4", + "description": null, + "context": "/document/pages/*", + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "keyPhrases", + "targetName": "keyPhrases" + } + ], + "defaultLanguageCode": null, + "maxKeyPhraseCount": null + }, + { + "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", + "name": "MyCustomWebApiSkill", + "description": null, + "context": "/document", + "uri": "https://contoso.example.org", + "httpMethod": "POST", + "timeout": "PT30S", + "batchSize": 1, + "degreeOfParallelism": null, + "inputs": [ + { + "name": "text", + "source": "/document/pages/*" + }, + { + "name": "languageCode", + "source": "/document/languageCode" + } + ], + "outputs": [ + { + "name": "customresult", + "targetName": "result" + } + ], + "httpHeaders": {} + } + ] + } + ] + } + } + } +} diff --git a/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceListSynonymMaps.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceListSynonymMaps.json new file mode 100644 index 000000000000..78b73edcd92e --- /dev/null +++ b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceListSynonymMaps.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "searchServiceName": "myservice", + "searchDnsSuffix": "search.windows.net", + "$select": "*", + "api-version": "2019-05-06" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "mysynonymmap", + "format": "solr", + "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA" + }, + { + "name": "myothersynonymmap", + "format": "solr", + "synonyms": "couch, sofa, chesterfield\npop, soda\ntoque, hat" + } + ] + } + } + } +} diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceResetIndexer.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceResetIndexer.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceResetIndexer.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceResetIndexer.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceRunIndexer.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceRunIndexer.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceRunIndexer.json rename to specification/search/data-plane/Azure.Search/stable/2019-05-06/examples/SearchServiceRunIndexer.json diff --git a/specification/search/data-plane/Azure.Search/stable/2019-05-06/searchindex.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/searchindex.json new file mode 100644 index 000000000000..b946a878fdd9 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/stable/2019-05-06/searchindex.json @@ -0,0 +1,1341 @@ +{ + "swagger": "2.0", + "info": { + "title": "SearchIndexClient", + "description": "Client that can be used to query an index and upload, merge, or delete documents.", + "version": "2019-05-06", + "x-ms-code-generation-settings": { + "useDateTimeOffset": true, + "syncMethods": "None" + } + }, + "x-ms-parameterized-host": { + "hostTemplate": "https://{searchServiceName}.{searchDnsSuffix}/indexes('{indexName}')", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "$ref": "#/parameters/SearchDnsSuffixParameter" + }, + { + "$ref": "#/parameters/IndexNameParameter" + } + ] + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/docs/$count": { + "get": { + "tags": [ + "Documents" + ], + "operationId": "Documents_Count", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Count-Documents" + }, + "x-ms-examples": { + "SearchIndexCountDocuments": { + "$ref": "./examples/SearchIndexCountDocuments.json" + } + }, + "description": "Queries the number of documents in the index.", + "parameters": [ + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "type": "integer", + "format": "int64" + } + } + } + } + }, + "/docs": { + "get": { + "tags": [ + "Documents" + ], + "operationId": "Documents_SearchGet", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Search-Documents" + }, + "x-ms-examples": { + "SearchIndexSearchDocumentsGet": { + "$ref": "./examples/SearchIndexSearchDocumentsGet.json" + } + }, + "description": "Searches for documents in the index.", + "parameters": [ + { + "name": "search", + "in": "query", + "type": "string", + "description": "A full-text search query expression; Use \"*\" or omit this parameter to match all documents.", + "x-ms-client-name": "SearchText" + }, + { + "name": "$count", + "in": "query", + "type": "boolean", + "description": "A value that specifies whether to fetch the total count of results. Default is false. Setting this value to true may have a performance impact. Note that the count returned is an approximation.", + "x-nullable": false, + "x-ms-client-name": "IncludeTotalResultCount", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "facet", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "description": "The list of facet expressions to apply to the search query. Each facet expression contains a field name, optionally followed by a comma-separated list of name:value pairs.", + "x-ms-client-name": "Facets", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "$filter", + "in": "query", + "type": "string", + "description": "The OData $filter expression to apply to the search query.", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "highlight", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of field names to use for hit highlights. Only searchable fields can be used for hit highlighting.", + "x-ms-client-name": "HighlightFields", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "highlightPostTag", + "in": "query", + "type": "string", + "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. Default is </em>.", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "highlightPreTag", + "in": "query", + "type": "string", + "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. Default is <em>.", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "minimumCoverage", + "in": "query", + "type": "number", + "format": "double", + "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by a search query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 100.", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "$orderby", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of OData $orderby expressions by which to sort the results. Each expression can be either a field name or a call to either the geo.distance() or the search.score() functions. Each expression can be followed by asc to indicate ascending, and desc to indicate descending. The default is ascending order. Ties will be broken by the match scores of documents. If no OrderBy is specified, the default sort order is descending by document match score. There can be at most 32 $orderby clauses.", + "x-ms-client-name": "OrderBy", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "queryType", + "in": "query", + "type": "string", + "enum": [ + "simple", + "full" + ], + "x-ms-enum": { + "name": "QueryType", + "modelAsString": false + }, + "x-nullable": false, + "description": "A value that specifies the syntax of the search query. The default is 'simple'. Use 'full' if your query uses the Lucene query syntax.", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "scoringParameter", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "x-ms-client-name": "ScoringParameters", + "description": "The list of parameter values to be used in scoring functions (for example, referencePointParameter) using the format name-values. For example, if the scoring profile defines a function with a parameter called 'mylocation' the parameter string would be \"mylocation--122.2,44.8\" (without the quotes).", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "scoringProfile", + "in": "query", + "type": "string", + "description": "The name of a scoring profile to evaluate match scores for matching documents in order to sort the results.", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "searchFields", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of field names to which to scope the full-text search. When using fielded search (fieldName:searchExpression) in a full Lucene query, the field names of each fielded search expression take precedence over any field names listed in this parameter.", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "searchMode", + "in": "query", + "type": "string", + "enum": [ + "any", + "all" + ], + "x-ms-enum": { + "name": "SearchMode", + "modelAsString": false + }, + "x-nullable": false, + "description": "A value that specifies whether any or all of the search terms must be matched in order to count the document as a match.", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "$select", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of fields to retrieve. If unspecified, all fields marked as retrievable in the schema are included.", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "$skip", + "in": "query", + "type": "integer", + "format": "int32", + "description": "The number of search results to skip. This value cannot be greater than 100,000. If you need to scan documents in sequence, but cannot use $skip due to this limitation, consider using $orderby on a totally-ordered key and $filter with a range query instead.", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "name": "$top", + "in": "query", + "type": "integer", + "format": "int32", + "description": "The number of search results to retrieve. This can be used in conjunction with $skip to implement client-side paging of search results. If results are truncated due to server-side paging, the response will include a continuation token that can be used to issue another Search request for the next page of results.", + "x-ms-parameter-grouping": { + "name": "SearchOptions" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "Response containing documents that match the search criteria.", + "schema": { + "$ref": "#/definitions/SearchDocumentsResult" + } + } + } + } + }, + "/docs/search.post.search": { + "post": { + "tags": [ + "Documents" + ], + "operationId": "Documents_SearchPost", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Search-Documents" + }, + "x-ms-examples": { + "SearchIndexSearchDocumentsPost": { + "$ref": "./examples/SearchIndexSearchDocumentsPost.json" + } + }, + "description": "Searches for documents in the index.", + "parameters": [ + { + "name": "searchRequest", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SearchRequest", + "description": "The Search request." + }, + "description": "The definition of the Search request." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "Response containing documents that match the search criteria.", + "schema": { + "$ref": "#/definitions/SearchDocumentsResult" + } + } + } + } + }, + "/docs('{key}')": { + "get": { + "tags": [ + "Documents" + ], + "operationId": "Documents_Get", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/lookup-document" + }, + "x-ms-examples": { + "SearchIndexGetDocument": { + "$ref": "./examples/SearchIndexGetDocument.json" + } + }, + "description": "Retrieves a document from the index.", + "parameters": [ + { + "name": "key", + "in": "path", + "required": true, + "description": "The key of the document to retrieve.", + "type": "string" + }, + { + "name": "$select", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "description": "List of field names to retrieve for the document; Any field not retrieved will be missing from the returned document.", + "x-ms-client-name": "SelectedFields" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + } + ], + "responses": { + "200": { + "description": "Response containing the requested document.", + "schema": { + "type": "object" + } + } + } + } + }, + "/docs/search.suggest": { + "get": { + "tags": [ + "Documents" + ], + "operationId": "Documents_SuggestGet", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/suggestions" + }, + "x-ms-examples": { + "SearchIndexSuggestDocumentsGet": { + "$ref": "./examples/SearchIndexSuggestDocumentsGet.json" + } + }, + "description": "Suggests documents in the index that match the given partial query text.", + "parameters": [ + { + "name": "search", + "in": "query", + "required": true, + "type": "string", + "description": "The search text to use to suggest documents. Must be at least 1 character, and no more than 100 characters.", + "x-ms-client-name": "SearchText" + }, + { + "name": "suggesterName", + "in": "query", + "required": true, + "type": "string", + "description": "The name of the suggester as specified in the suggesters collection that's part of the index definition." + }, + { + "name": "$filter", + "in": "query", + "type": "string", + "description": "An OData expression that filters the documents considered for suggestions.", + "x-ms-parameter-grouping": { + "name": "SuggestOptions" + } + }, + { + "name": "fuzzy", + "in": "query", + "type": "boolean", + "description": "A value indicating whether to use fuzzy matching for the suggestions query. Default is false. When set to true, the query will find terms even if there's a substituted or missing character in the search text. While this provides a better experience in some scenarios, it comes at a performance cost as fuzzy suggestions queries are slower and consume more resources.", + "x-ms-client-name": "UseFuzzyMatching", + "x-nullable": false, + "x-ms-parameter-grouping": { + "name": "SuggestOptions" + } + }, + { + "name": "highlightPostTag", + "in": "query", + "type": "string", + "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. If omitted, hit highlighting of suggestions is disabled.", + "x-ms-parameter-grouping": { + "name": "SuggestOptions" + } + }, + { + "name": "highlightPreTag", + "in": "query", + "type": "string", + "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. If omitted, hit highlighting of suggestions is disabled.", + "x-ms-parameter-grouping": { + "name": "SuggestOptions" + } + }, + { + "name": "minimumCoverage", + "in": "query", + "type": "number", + "format": "double", + "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by a suggestions query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 80.", + "x-ms-parameter-grouping": { + "name": "SuggestOptions" + } + }, + { + "name": "$orderby", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "x-ms-client-name": "OrderBy", + "description": "The list of OData $orderby expressions by which to sort the results. Each expression can be either a field name or a call to either the geo.distance() or the search.score() functions. Each expression can be followed by asc to indicate ascending, or desc to indicate descending. The default is ascending order. Ties will be broken by the match scores of documents. If no $orderby is specified, the default sort order is descending by document match score. There can be at most 32 $orderby clauses.", + "x-ms-parameter-grouping": { + "name": "SuggestOptions" + } + }, + { + "name": "searchFields", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of field names to search for the specified search text. Target fields must be included in the specified suggester.", + "x-ms-parameter-grouping": { + "name": "SuggestOptions" + } + }, + { + "name": "$select", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of fields to retrieve. If unspecified, only the key field will be included in the results.", + "x-ms-parameter-grouping": { + "name": "SuggestOptions" + } + }, + { + "name": "$top", + "in": "query", + "type": "integer", + "format": "int32", + "description": "The number of suggestions to retrieve. The value must be a number between 1 and 100. The default is 5.", + "x-ms-parameter-grouping": { + "name": "SuggestOptions" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "Response containing suggested documents that match the partial input.", + "schema": { + "$ref": "#/definitions/SuggestDocumentsResult" + } + } + } + } + }, + "/docs/search.post.suggest": { + "post": { + "tags": [ + "Documents" + ], + "operationId": "Documents_SuggestPost", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/suggestions" + }, + "x-ms-examples": { + "SearchIndexSuggestDocumentsPost": { + "$ref": "./examples/SearchIndexSuggestDocumentsPost.json" + } + }, + "description": "Suggests documents in the index that match the given partial query text.", + "parameters": [ + { + "name": "suggestRequest", + "in": "body", + "required": true, + "description": "The Suggest request.", + "schema": { + "$ref": "#/definitions/SuggestRequest" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "Response containing suggested documents that match the partial input.", + "schema": { + "$ref": "#/definitions/SuggestDocumentsResult" + } + } + } + } + }, + "/docs/search.index": { + "post": { + "tags": [ + "Documents" + ], + "operationId": "Documents_Index", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/addupdate-or-delete-documents" + }, + "x-ms-examples": { + "SearchIndexIndexDocuments": { + "$ref": "./examples/SearchIndexIndexDocuments.json" + } + }, + "description": "Sends a batch of document write actions to the index.", + "parameters": [ + { + "name": "batch", + "in": "body", + "description": "The batch of index actions.", + "required": true, + "schema": { + "$ref": "#/definitions/IndexBatch" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "Response containing the status of operations for all actions in the batch.", + "schema": { + "$ref": "#/definitions/IndexDocumentsResult" + } + }, + "207": { + "description": "Response containing the status of operations for all actions in the batch.", + "schema": { + "$ref": "#/definitions/IndexDocumentsResult" + } + } + } + } + }, + "/docs/search.autocomplete": { + "get": { + "tags": [ + "Documents" + ], + "operationId": "Documents_AutocompleteGet", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/autocomplete" + }, + "x-ms-examples": { + "SearchIndexAutocompleteDocumentsGet": { + "$ref": "./examples/SearchIndexAutocompleteDocumentsGet.json" + } + }, + "description": "Autocompletes incomplete query terms based on input text and matching terms in the index.", + "parameters": [ + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "search", + "in": "query", + "type": "string", + "required": true, + "description": "The incomplete term which should be auto-completed.", + "x-ms-client-name": "SearchText" + }, + { + "name": "suggesterName", + "in": "query", + "type": "string", + "required": true, + "description": "The name of the suggester as specified in the suggesters collection that's part of the index definition." + }, + { + "name": "autocompleteMode", + "in": "query", + "type": "string", + "x-nullable": false, + "enum": [ + "oneTerm", + "twoTerms", + "oneTermWithContext" + ], + "x-ms-enum": { + "name": "AutocompleteMode", + "modelAsString": false + }, + "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms' to get shingles and 'oneTermWithContext' to use the current context while producing auto-completed terms.", + "x-ms-parameter-grouping": { + "name": "AutocompleteOptions" + } + }, + { + "name": "$filter", + "in": "query", + "type": "string", + "description": "An OData expression that filters the documents used to produce completed terms for the Autocomplete result.", + "x-ms-parameter-grouping": { + "name": "AutocompleteOptions" + } + }, + { + "name": "fuzzy", + "in": "query", + "type": "boolean", + "description": "A value indicating whether to use fuzzy matching for the autocomplete query. Default is false. When set to true, the query will find terms even if there's a substituted or missing character in the search text. While this provides a better experience in some scenarios, it comes at a performance cost as fuzzy autocomplete queries are slower and consume more resources.", + "x-ms-client-name": "UseFuzzyMatching", + "x-ms-parameter-grouping": { + "name": "AutocompleteOptions" + } + }, + { + "name": "highlightPostTag", + "in": "query", + "type": "string", + "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. If omitted, hit highlighting is disabled.", + "x-ms-parameter-grouping": { + "name": "AutocompleteOptions" + } + }, + { + "name": "highlightPreTag", + "in": "query", + "type": "string", + "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. If omitted, hit highlighting is disabled.", + "x-ms-parameter-grouping": { + "name": "AutocompleteOptions" + } + }, + { + "name": "minimumCoverage", + "in": "query", + "type": "number", + "format": "double", + "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by an autocomplete query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 80.", + "x-ms-parameter-grouping": { + "name": "AutocompleteOptions" + } + }, + { + "name": "searchFields", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of field names to consider when querying for auto-completed terms. Target fields must be included in the specified suggester.", + "x-ms-parameter-grouping": { + "name": "AutocompleteOptions" + } + }, + { + "name": "$top", + "in": "query", + "type": "integer", + "format": "int32", + "description": "The number of auto-completed terms to retrieve. This must be a value between 1 and 100. The default is 5.", + "x-ms-parameter-grouping": { + "name": "AutocompleteOptions" + } + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "Response containing suggested query terms that complete the partial input.", + "schema": { + "$ref": "#/definitions/AutocompleteResult" + } + } + } + } + }, + "/docs/search.post.autocomplete": { + "post": { + "tags": [ + "Documents" + ], + "operationId": "Documents_AutocompletePost", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/autocomplete" + }, + "x-ms-examples": { + "SearchIndexAutocompleteDocumentsPost": { + "$ref": "./examples/SearchIndexAutocompleteDocumentsPost.json" + } + }, + "description": "Autocompletes incomplete query terms based on input text and matching terms in the index.", + "parameters": [ + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "autocompleteRequest", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AutocompleteRequest" + }, + "description": "The definition of the Autocomplete request." + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "Response containing suggested query terms that complete the partial input.", + "schema": { + "$ref": "#/definitions/AutocompleteResult" + } + } + } + } + } + }, + "definitions": { + "SuggestDocumentsResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SuggestResult" + }, + "readOnly": true, + "x-ms-client-name": "Results", + "description": "The sequence of results returned by the query." + }, + "@search.coverage": { + "type": "number", + "readOnly": true, + "format": "double", + "x-ms-client-name": "Coverage", + "description": "A value indicating the percentage of the index that was included in the query, or null if minimumCoverage was not set in the request." + } + }, + "description": "Response containing suggestion query results from an index." + }, + "SuggestResult": { + "properties": { + "@search.text": { + "type": "string", + "readOnly": true, + "description": "The text of the suggestion result.", + "x-ms-client-name": "Text" + } + }, + "additionalProperties": true, + "description": "A result containing a document found by a suggestion query, plus associated metadata." + }, + "FacetResult": { + "properties": { + "count": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The approximate count of documents falling within the bucket described by this facet." + } + }, + "additionalProperties": true, + "description": "A single bucket of a facet query result. Reports the number of documents with a field value falling within a particular range or having a particular value or interval." + }, + "SearchDocumentsResult": { + "properties": { + "@odata.count": { + "type": "integer", + "format": "int64", + "readOnly": true, + "x-ms-client-name": "Count", + "description": "The total count of results found by the search operation, or null if the count was not requested. If present, the count may be greater than the number of results in this response. This can happen if you use the $top or $skip parameters, or if Azure Cognitive Search can't return all the requested documents in a single Search response." + }, + "@search.coverage": { + "type": "number", + "format": "double", + "readOnly": true, + "x-ms-client-name": "Coverage", + "description": "A value indicating the percentage of the index that was included in the query, or null if minimumCoverage was not specified in the request." + }, + "@search.facets": { + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "$ref": "#/definitions/FacetResult" + } + }, + "readOnly": true, + "x-ms-client-name": "Facets", + "description": "The facet query results for the search operation, organized as a collection of buckets for each faceted field; null if the query did not include any facet expressions." + }, + "@search.nextPageParameters": { + "$ref": "#/definitions/SearchRequest", + "readOnly": true, + "x-ms-client-name": "NextPageParameters", + "description": "Continuation JSON payload returned when Azure Cognitive Search can't return all the requested results in a single Search response. You can use this JSON along with @odata.nextLink to formulate another POST Search request to get the next part of the search response." + }, + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SearchResult" + }, + "readOnly": true, + "x-ms-client-name": "Results", + "description": "The sequence of results returned by the query." + }, + "@odata.nextLink": { + "type": "string", + "readOnly": true, + "x-ms-client-name": "NextLink", + "description": "Continuation URL returned when Azure Cognitive Search can't return all the requested results in a single Search response. You can use this URL to formulate another GET or POST Search request to get the next part of the search response. Make sure to use the same verb (GET or POST) as the request that produced this response." + } + }, + "description": "Response containing search results from an index." + }, + "SearchResult": { + "properties": { + "@search.score": { + "type": "number", + "format": "double", + "readOnly": true, + "x-ms-client-name": "Score", + "x-nullable": false, + "description": "The relevance score of the document compared to other documents returned by the query." + }, + "@search.highlights": { + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + }, + "readOnly": true, + "x-ms-client-name": "Highlights", + "description": "Text fragments from the document that indicate the matching search terms, organized by each applicable field; null if hit highlighting was not enabled for the query." + } + }, + "additionalProperties": true, + "description": "Contains a document found by a search query, plus associated metadata." + }, + "IndexBatch": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/IndexAction" + }, + "description": "The actions in the batch.", + "x-ms-client-name": "Actions" + } + }, + "required": [ + "value" + ], + "description": "Contains a batch of document write actions to send to the index." + }, + "IndexAction": { + "properties": { + "@search.action": { + "type": "string", + "enum": [ + "upload", + "merge", + "mergeOrUpload", + "delete" + ], + "x-ms-enum": { + "name": "IndexActionType" + }, + "x-ms-client-name": "ActionType", + "x-nullable": false, + "description": "The operation to perform on a document in an indexing batch." + } + }, + "additionalProperties": true, + "description": "Represents an index action that operates on a document." + }, + "IndexingResult": { + "properties": { + "key": { + "type": "string", + "readOnly": true, + "description": "The key of a document that was in the indexing request." + }, + "errorMessage": { + "type": "string", + "readOnly": true, + "description": "The error message explaining why the indexing operation failed for the document identified by the key; null if indexing succeeded." + }, + "status": { + "x-ms-client-name": "Succeeded", + "type": "boolean", + "x-nullable": false, + "readOnly": true, + "description": "A value indicating whether the indexing operation succeeded for the document identified by the key." + }, + "statusCode": { + "type": "integer", + "format": "int32", + "x-nullable": false, + "readOnly": true, + "description": "The status code of the indexing operation. Possible values include: 200 for a successful update or delete, 201 for successful document creation, 400 for a malformed input document, 404 for document not found, 409 for a version conflict, 422 when the index is temporarily unavailable, or 503 for when the service is too busy." + } + }, + "description": "Status of an indexing operation for a single document." + }, + "IndexDocumentsResult": { + "properties": { + "value": { + "x-ms-client-name": "Results", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/IndexingResult" + }, + "description": "The list of status information for each document in the indexing request." + } + }, + "description": "Response containing the status of operations for all documents in the indexing request." + }, + "SearchMode": { + "type": "string", + "enum": [ + "any", + "all" + ], + "x-ms-enum": { + "name": "SearchMode", + "modelAsString": false + }, + "description": "Specifies whether any or all of the search terms must be matched in order to count the document as a match." + }, + "QueryType": { + "type": "string", + "enum": [ + "simple", + "full" + ], + "x-ms-enum": { + "name": "QueryType", + "modelAsString": false + }, + "description": "Specifies the syntax of the search query. The default is 'simple'. Use 'full' if your query uses the Lucene query syntax." + }, + "AutocompleteMode": { + "type": "string", + "enum": [ + "oneTerm", + "twoTerms", + "oneTermWithContext" + ], + "x-ms-enum": { + "name": "AutocompleteMode", + "modelAsString": false + }, + "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms' to get shingles and 'oneTermWithContext' to use the current context in producing autocomplete terms." + }, + "SearchRequest": { + "properties": { + "count": { + "type": "boolean", + "description": "A value that specifies whether to fetch the total count of results. Default is false. Setting this value to true may have a performance impact. Note that the count returned is an approximation.", + "x-ms-client-name": "IncludeTotalResultCount" + }, + "facets": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Search-Documents" + }, + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of facet expressions to apply to the search query. Each facet expression contains a field name, optionally followed by a comma-separated list of name:value pairs." + }, + "filter": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/OData-Expression-Syntax-for-Azure-Search" + }, + "type": "string", + "description": "The OData $filter expression to apply to the search query." + }, + "highlight": { + "type": "string", + "description": "The comma-separated list of field names to use for hit highlights. Only searchable fields can be used for hit highlighting.", + "x-ms-client-name": "HighlightFields" + }, + "highlightPostTag": { + "type": "string", + "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. Default is </em>." + }, + "highlightPreTag": { + "type": "string", + "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. Default is <em>." + }, + "minimumCoverage": { + "type": "number", + "format": "double", + "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by a search query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 100." + }, + "orderby": { + "x-ms-client-name": "OrderBy", + "type": "string", + "description": "The comma-separated list of OData $orderby expressions by which to sort the results. Each expression can be either a field name or a call to either the geo.distance() or the search.score() functions. Each expression can be followed by asc to indicate ascending, or desc to indicate descending. The default is ascending order. Ties will be broken by the match scores of documents. If no $orderby is specified, the default sort order is descending by document match score. There can be at most 32 $orderby clauses." + }, + "queryType": { + "$ref": "#/definitions/QueryType", + "description": "A value that specifies the syntax of the search query. The default is 'simple'. Use 'full' if your query uses the Lucene query syntax." + }, + "scoringParameters": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of parameter values to be used in scoring functions (for example, referencePointParameter) using the format name-values. For example, if the scoring profile defines a function with a parameter called 'mylocation' the parameter string would be \"mylocation--122.2,44.8\" (without the quotes)." + }, + "scoringProfile": { + "type": "string", + "description": "The name of a scoring profile to evaluate match scores for matching documents in order to sort the results." + }, + "search": { + "type": "string", + "description": "A full-text search query expression; Use \"*\" or omit this parameter to match all documents.", + "x-ms-client-name": "SearchText" + }, + "searchFields": { + "type": "string", + "description": "The comma-separated list of field names to which to scope the full-text search. When using fielded search (fieldName:searchExpression) in a full Lucene query, the field names of each fielded search expression take precedence over any field names listed in this parameter." + }, + "searchMode": { + "$ref": "#/definitions/SearchMode", + "description": "A value that specifies whether any or all of the search terms must be matched in order to count the document as a match." + }, + "select": { + "type": "string", + "description": "The comma-separated list of fields to retrieve. If unspecified, all fields marked as retrievable in the schema are included." + }, + "skip": { + "type": "integer", + "format": "int32", + "description": "The number of search results to skip. This value cannot be greater than 100,000. If you need to scan documents in sequence, but cannot use skip due to this limitation, consider using orderby on a totally-ordered key and filter with a range query instead." + }, + "top": { + "type": "integer", + "format": "int32", + "description": "The number of search results to retrieve. This can be used in conjunction with $skip to implement client-side paging of search results. If results are truncated due to server-side paging, the response will include a continuation token that can be used to issue another Search request for the next page of results." + } + }, + "description": "Parameters for filtering, sorting, faceting, paging, and other search query behaviors." + }, + "SuggestRequest": { + "properties": { + "filter": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/OData-Expression-Syntax-for-Azure-Search" + }, + "type": "string", + "description": "An OData expression that filters the documents considered for suggestions." + }, + "fuzzy": { + "type": "boolean", + "description": "A value indicating whether to use fuzzy matching for the suggestion query. Default is false. When set to true, the query will find suggestions even if there's a substituted or missing character in the search text. While this provides a better experience in some scenarios, it comes at a performance cost as fuzzy suggestion searches are slower and consume more resources.", + "x-ms-client-name": "UseFuzzyMatching" + }, + "highlightPostTag": { + "type": "string", + "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. If omitted, hit highlighting of suggestions is disabled." + }, + "highlightPreTag": { + "type": "string", + "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. If omitted, hit highlighting of suggestions is disabled." + }, + "minimumCoverage": { + "type": "number", + "format": "double", + "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by a suggestion query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 80." + }, + "orderby": { + "x-ms-client-name": "OrderBy", + "type": "string", + "description": "The comma-separated list of OData $orderby expressions by which to sort the results. Each expression can be either a field name or a call to either the geo.distance() or the search.score() functions. Each expression can be followed by asc to indicate ascending, or desc to indicate descending. The default is ascending order. Ties will be broken by the match scores of documents. If no $orderby is specified, the default sort order is descending by document match score. There can be at most 32 $orderby clauses." + }, + "search": { + "type": "string", + "description": "The search text to use to suggest documents. Must be at least 1 character, and no more than 100 characters.", + "x-ms-client-name": "SearchText" + }, + "searchFields": { + "type": "string", + "description": "The comma-separated list of field names to search for the specified search text. Target fields must be included in the specified suggester." + }, + "select": { + "type": "string", + "description": "The comma-separated list of fields to retrieve. If unspecified, only the key field will be included in the results." + }, + "suggesterName": { + "type": "string", + "description": "The name of the suggester as specified in the suggesters collection that's part of the index definition." + }, + "top": { + "type": "integer", + "format": "int32", + "description": "The number of suggestions to retrieve. This must be a value between 1 and 100. The default is 5." + } + }, + "description": "Parameters for filtering, sorting, fuzzy matching, and other suggestions query behaviors." + }, + "AutocompleteRequest": { + "properties": { + "search": { + "type": "string", + "description": "The search text on which to base autocomplete results.", + "x-ms-client-name": "SearchText" + }, + "autocompleteMode": { + "$ref": "#/definitions/AutocompleteMode", + "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms' to get shingles and 'oneTermWithContext' to use the current context while producing auto-completed terms." + }, + "filter": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/OData-Expression-Syntax-for-Azure-Search" + }, + "type": "string", + "description": "An OData expression that filters the documents used to produce completed terms for the Autocomplete result." + }, + "fuzzy": { + "type": "boolean", + "description": "A value indicating whether to use fuzzy matching for the autocomplete query. Default is false. When set to true, the query will autocomplete terms even if there's a substituted or missing character in the search text. While this provides a better experience in some scenarios, it comes at a performance cost as fuzzy autocomplete queries are slower and consume more resources.", + "x-ms-client-name": "UseFuzzyMatching" + }, + "highlightPostTag": { + "type": "string", + "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. If omitted, hit highlighting is disabled." + }, + "highlightPreTag": { + "type": "string", + "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. If omitted, hit highlighting is disabled." + }, + "minimumCoverage": { + "type": "number", + "format": "double", + "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by an autocomplete query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 80." + }, + "searchFields": { + "type": "string", + "description": "The comma-separated list of field names to consider when querying for auto-completed terms. Target fields must be included in the specified suggester." + }, + "suggesterName": { + "type": "string", + "description": "The name of the suggester as specified in the suggesters collection that's part of the index definition." + }, + "top": { + "type": "integer", + "format": "int32", + "description": "The number of auto-completed terms to retrieve. This must be a value between 1 and 100. The default is 5." + } + }, + "description": "Parameters for fuzzy matching, and other autocomplete query behaviors." + }, + "AutocompleteResult": { + "properties": { + "@search.coverage": { + "type": "number", + "format": "double", + "readOnly": true, + "x-ms-client-name": "Coverage", + "description": "A value indicating the percentage of the index that was considered by the autocomplete request, or null if minimumCoverage was not specified in the request." + }, + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/AutocompleteItem" + }, + "description": "The list of returned Autocompleted items.", + "x-ms-client-name": "Results" + } + }, + "description": "The result of Autocomplete query." + }, + "AutocompleteItem": { + "properties": { + "text": { + "type": "string", + "readOnly": true, + "description": "The completed term." + }, + "queryPlusText": { + "type": "string", + "readOnly": true, + "description": "The query along with the completed term." + } + }, + "description": "The result of Autocomplete requests." + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + }, + "ClientRequestIdParameter": { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The tracking ID sent with the request to help with debugging.", + "x-ms-client-request-id": true, + "x-ms-parameter-grouping": { + "name": "request-options" + }, + "x-ms-parameter-location": "method" + }, + "SearchServiceNameParameter": { + "name": "searchServiceName", + "in": "path", + "required": true, + "type": "string", + "x-ms-skip-url-encoding": true, + "description": "The name of the search service.", + "x-ms-parameter-location": "client" + }, + "SearchDnsSuffixParameter": { + "name": "searchDnsSuffix", + "in": "path", + "required": true, + "type": "string", + "default": "search.windows.net", + "x-ms-skip-url-encoding": true, + "description": "The DNS suffix of the search service. The default is search.windows.net.", + "x-ms-parameter-location": "client" + }, + "IndexNameParameter": { + "name": "indexName", + "in": "path", + "required": true, + "type": "string", + "x-ms-skip-url-encoding": false, + "description": "The name of the index.", + "x-ms-parameter-location": "client" + } + } +} diff --git a/specification/search/data-plane/Azure.Search/stable/2019-05-06/searchservice.json b/specification/search/data-plane/Azure.Search/stable/2019-05-06/searchservice.json new file mode 100644 index 000000000000..a160c1a6e433 --- /dev/null +++ b/specification/search/data-plane/Azure.Search/stable/2019-05-06/searchservice.json @@ -0,0 +1,6467 @@ +{ + "swagger": "2.0", + "info": { + "title": "SearchServiceClient", + "description": "Client that can be used to manage and query indexes and documents, as well as manage other resources, on a search service.", + "version": "2019-05-06", + "x-ms-code-generation-settings": { + "useDateTimeOffset": true + } + }, + "x-ms-parameterized-host": { + "hostTemplate": "https://{searchServiceName}.{searchDnsSuffix}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "$ref": "#/parameters/SearchDnsSuffixParameter" + } + ] + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/datasources('{dataSourceName}')": { + "put": { + "tags": [ + "DataSources" + ], + "operationId": "DataSources_CreateOrUpdate", + "x-ms-examples": { + "SearchServiceCreateOrUpdateDataSource": { + "$ref": "./examples/SearchServiceCreateOrUpdateDataSource.json" + } + }, + "description": "Creates a new datasource or updates a datasource if it already exists.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Update-Data-Source" + }, + "parameters": [ + { + "name": "dataSourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the datasource to create or update." + }, + { + "name": "dataSource", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataSource" + }, + "description": "The definition of the datasource to create or update." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/IfMatchParameter" + }, + { + "$ref": "#/parameters/IfNoneMatchParameter" + }, + { + "$ref": "#/parameters/PreferHeaderParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/DataSource" + } + }, + "201": { + "description": "", + "schema": { + "$ref": "#/definitions/DataSource" + } + } + } + }, + "delete": { + "tags": [ + "DataSources" + ], + "operationId": "DataSources_Delete", + "x-ms-examples": { + "SearchServiceDeleteDataSource": { + "$ref": "./examples/SearchServiceDeleteDataSource.json" + } + }, + "description": "Deletes a datasource.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Delete-Data-Source" + }, + "parameters": [ + { + "name": "dataSourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the datasource to delete." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/IfMatchParameter" + }, + { + "$ref": "#/parameters/IfNoneMatchParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "204": { + "description": "" + }, + "404": { + "description": "" + } + } + }, + "get": { + "tags": [ + "DataSources" + ], + "operationId": "DataSources_Get", + "x-ms-examples": { + "SearchServiceGetDataSource": { + "$ref": "./examples/SearchServiceGetDataSource.json" + } + }, + "description": "Retrieves a datasource definition.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Data-Source" + }, + "parameters": [ + { + "name": "dataSourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the datasource to retrieve." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/DataSource" + } + } + } + } + }, + "/datasources": { + "get": { + "tags": [ + "DataSources" + ], + "operationId": "DataSources_List", + "x-ms-examples": { + "SearchServiceListDataSources": { + "$ref": "./examples/SearchServiceListDataSources.json" + } + }, + "description": "Lists all datasources available for a search service.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/List-Data-Sources" + }, + "parameters": [ + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "Selects which top-level properties of the data sources to retrieve. Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/ListDataSourcesResult" + } + } + } + }, + "post": { + "tags": [ + "DataSources" + ], + "operationId": "DataSources_Create", + "x-ms-examples": { + "SearchServiceCreateDataSource": { + "$ref": "./examples/SearchServiceCreateDataSource.json" + } + }, + "description": "Creates a new datasource.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Data-Source" + }, + "parameters": [ + { + "name": "dataSource", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataSource" + }, + "description": "The definition of the datasource to create." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "201": { + "description": "", + "schema": { + "$ref": "#/definitions/DataSource" + } + } + } + } + }, + "/indexers('{indexerName}')/search.reset": { + "post": { + "tags": [ + "Indexers" + ], + "operationId": "Indexers_Reset", + "x-ms-examples": { + "SearchServiceResetIndexer": { + "$ref": "./examples/SearchServiceResetIndexer.json" + } + }, + "description": "Resets the change tracking state associated with an indexer.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Reset-Indexer" + }, + "parameters": [ + { + "name": "indexerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the indexer to reset." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "204": { + "description": "" + } + } + } + }, + "/indexers('{indexerName}')/search.run": { + "post": { + "tags": [ + "Indexers" + ], + "operationId": "Indexers_Run", + "x-ms-examples": { + "SearchServiceRunIndexer": { + "$ref": "./examples/SearchServiceRunIndexer.json" + } + }, + "description": "Runs an indexer on-demand.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Run-Indexer" + }, + "parameters": [ + { + "name": "indexerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the indexer to run." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "202": { + "description": "" + } + } + } + }, + "/indexers('{indexerName}')": { + "put": { + "tags": [ + "Indexers" + ], + "operationId": "Indexers_CreateOrUpdate", + "x-ms-examples": { + "SearchServiceCreateOrUpdateIndexer": { + "$ref": "./examples/SearchServiceCreateOrUpdateIndexer.json" + } + }, + "description": "Creates a new indexer or updates an indexer if it already exists.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Indexer" + }, + "parameters": [ + { + "name": "indexerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the indexer to create or update." + }, + { + "name": "indexer", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Indexer" + }, + "description": "The definition of the indexer to create or update." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/IfMatchParameter" + }, + { + "$ref": "#/parameters/IfNoneMatchParameter" + }, + { + "$ref": "#/parameters/PreferHeaderParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "201": { + "description": "", + "schema": { + "$ref": "#/definitions/Indexer" + } + }, + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/Indexer" + } + } + } + }, + "delete": { + "tags": [ + "Indexers" + ], + "operationId": "Indexers_Delete", + "x-ms-examples": { + "SearchServiceDeleteIndexer": { + "$ref": "./examples/SearchServiceDeleteIndexer.json" + } + }, + "description": "Deletes an indexer.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Delete-Indexer" + }, + "parameters": [ + { + "name": "indexerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the indexer to delete." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/IfMatchParameter" + }, + { + "$ref": "#/parameters/IfNoneMatchParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "404": { + "description": "" + }, + "204": { + "description": "" + } + } + }, + "get": { + "tags": [ + "Indexers" + ], + "operationId": "Indexers_Get", + "x-ms-examples": { + "SearchServiceGetIndexer": { + "$ref": "./examples/SearchServiceGetIndexer.json" + } + }, + "description": "Retrieves an indexer definition.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Indexer" + }, + "parameters": [ + { + "name": "indexerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the indexer to retrieve." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/Indexer" + } + } + } + } + }, + "/indexers": { + "get": { + "tags": [ + "Indexers" + ], + "operationId": "Indexers_List", + "x-ms-examples": { + "SearchServiceListIndexers": { + "$ref": "./examples/SearchServiceListIndexers.json" + } + }, + "description": "Lists all indexers available for a search service.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/List-Indexers" + }, + "parameters": [ + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "Selects which top-level properties of the indexers to retrieve. Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/ListIndexersResult" + } + } + } + }, + "post": { + "tags": [ + "Indexers" + ], + "operationId": "Indexers_Create", + "x-ms-examples": { + "SearchServiceCreateIndexer": { + "$ref": "./examples/SearchServiceCreateIndexer.json" + } + }, + "description": "Creates a new indexer.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Indexer" + }, + "parameters": [ + { + "name": "indexer", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Indexer" + }, + "description": "The definition of the indexer to create." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "201": { + "description": "", + "schema": { + "$ref": "#/definitions/Indexer" + } + } + } + } + }, + "/indexers('{indexerName}')/search.status": { + "get": { + "tags": [ + "Indexers" + ], + "operationId": "Indexers_GetStatus", + "x-ms-examples": { + "SearchServiceGetIndexerStatus": { + "$ref": "./examples/SearchServiceGetIndexerStatus.json" + } + }, + "description": "Returns the current status and execution history of an indexer.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Indexer-Status" + }, + "parameters": [ + { + "name": "indexerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the indexer for which to retrieve status." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/IndexerExecutionInfo" + } + } + } + } + }, + "/skillsets('{skillsetName}')": { + "put": { + "tags": [ + "Skillsets" + ], + "operationId": "Skillsets_CreateOrUpdate", + "x-ms-examples": { + "SearchServiceCreateOrUpdateSkillset": { + "$ref": "./examples/SearchServiceCreateOrUpdateSkillset.json" + } + }, + "description": "Creates a new skillset in a search service or updates the skillset if it already exists.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/update-skillset" + }, + "parameters": [ + { + "name": "skillsetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the skillset to create or update." + }, + { + "name": "skillset", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Skillset" + }, + "description": "The skillset containing one or more skills to create or update in a search service." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/IfMatchParameter" + }, + { + "$ref": "#/parameters/IfNoneMatchParameter" + }, + { + "$ref": "#/parameters/PreferHeaderParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "The skillset is successfully updated.", + "schema": { + "$ref": "#/definitions/Skillset" + } + }, + "201": { + "description": "The skillset is successfully created.", + "schema": { + "$ref": "#/definitions/Skillset" + } + } + } + }, + "delete": { + "tags": [ + "Skillsets" + ], + "operationId": "Skillsets_Delete", + "x-ms-examples": { + "SearchServiceDeleteSkillset": { + "$ref": "./examples/SearchServiceDeleteSkillset.json" + } + }, + "description": "Deletes a skillset in a search service.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/delete-skillset" + }, + "parameters": [ + { + "name": "skillsetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the skillset to delete." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/IfMatchParameter" + }, + { + "$ref": "#/parameters/IfNoneMatchParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "204": { + "description": "The skillset is successfully deleted." + }, + "404": { + "description": "The provided skillset name is not found." + } + } + }, + "get": { + "tags": [ + "Skillsets" + ], + "operationId": "Skillsets_Get", + "x-ms-examples": { + "SearchServiceGetSkillset": { + "$ref": "./examples/SearchServiceGetSkillset.json" + } + }, + "description": "Retrieves a skillset in a search service.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/get-skillset" + }, + "parameters": [ + { + "name": "skillsetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the skillset to retrieve." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "The skillset is successfully returned.", + "schema": { + "$ref": "#/definitions/Skillset" + } + } + } + } + }, + "/skillsets": { + "get": { + "tags": [ + "Skillsets" + ], + "operationId": "Skillsets_List", + "x-ms-examples": { + "SearchServiceListSkillsets": { + "$ref": "./examples/SearchServiceListSkillsets.json" + } + }, + "description": "List all skillsets in a search service.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/list-skillset" + }, + "parameters": [ + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "Selects which top-level properties of the skillsets to retrieve. Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "The list is successfully returned.", + "schema": { + "$ref": "#/definitions/ListSkillsetsResult" + } + } + } + }, + "post": { + "tags": [ + "Skillsets" + ], + "operationId": "Skillsets_Create", + "x-ms-examples": { + "SearchServiceCreateSkillset": { + "$ref": "./examples/SearchServiceCreateSkillset.json" + } + }, + "description": "Creates a new skillset in a search service.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/create-skillset" + }, + "parameters": [ + { + "name": "skillset", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Skillset" + }, + "description": "The skillset containing one or more skills to create in a search service." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "201": { + "description": "The skillset is successfully created.", + "schema": { + "$ref": "#/definitions/Skillset" + } + } + } + } + }, + "/synonymmaps('{synonymMapName}')": { + "put": { + "tags": [ + "SynonymMaps" + ], + "operationId": "SynonymMaps_CreateOrUpdate", + "x-ms-examples": { + "SearchServiceCreateOrUpdateSynonymMap": { + "$ref": "./examples/SearchServiceCreateOrUpdateSynonymMap.json" + } + }, + "description": "Creates a new synonym map or updates a synonym map if it already exists.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Update-Synonym-Map" + }, + "parameters": [ + { + "name": "synonymMapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the synonym map to create or update." + }, + { + "name": "synonymMap", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SynonymMap" + }, + "description": "The definition of the synonym map to create or update." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/IfMatchParameter" + }, + { + "$ref": "#/parameters/IfNoneMatchParameter" + }, + { + "$ref": "#/parameters/PreferHeaderParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/SynonymMap" + } + }, + "201": { + "description": "", + "schema": { + "$ref": "#/definitions/SynonymMap" + } + } + } + }, + "delete": { + "tags": [ + "SynonymMaps" + ], + "operationId": "SynonymMaps_Delete", + "x-ms-examples": { + "SearchServiceDeleteSynonymMap": { + "$ref": "./examples/SearchServiceDeleteSynonymMap.json" + } + }, + "description": "Deletes a synonym map.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Delete-Synonym-Map" + }, + "parameters": [ + { + "name": "synonymMapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the synonym map to delete." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/IfMatchParameter" + }, + { + "$ref": "#/parameters/IfNoneMatchParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "204": { + "description": "" + }, + "404": { + "description": "" + } + } + }, + "get": { + "tags": [ + "SynonymMaps" + ], + "operationId": "SynonymMaps_Get", + "x-ms-examples": { + "SearchServiceGetSynonymMap": { + "$ref": "./examples/SearchServiceGetSynonymMap.json" + } + }, + "description": "Retrieves a synonym map definition.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Synonym-Map" + }, + "parameters": [ + { + "name": "synonymMapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the synonym map to retrieve." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/SynonymMap" + } + } + } + } + }, + "/synonymmaps": { + "get": { + "tags": [ + "SynonymMaps" + ], + "operationId": "SynonymMaps_List", + "x-ms-examples": { + "SearchServiceListSynonymMaps": { + "$ref": "./examples/SearchServiceListSynonymMaps.json" + } + }, + "description": "Lists all synonym maps available for a search service.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/List-Synonym-Maps" + }, + "parameters": [ + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "Selects which top-level properties of the synonym maps to retrieve. Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/ListSynonymMapsResult" + } + } + } + }, + "post": { + "tags": [ + "SynonymMaps" + ], + "operationId": "SynonymMaps_Create", + "x-ms-examples": { + "SearchServiceCreateSynonymMap": { + "$ref": "./examples/SearchServiceCreateSynonymMap.json" + } + }, + "description": "Creates a new synonym map.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Synonym-Map" + }, + "parameters": [ + { + "name": "synonymMap", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SynonymMap" + }, + "description": "The definition of the synonym map to create." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "201": { + "description": "", + "schema": { + "$ref": "#/definitions/SynonymMap" + } + } + } + } + }, + "/indexes": { + "post": { + "tags": [ + "Indexes" + ], + "operationId": "Indexes_Create", + "x-ms-examples": { + "SearchServiceCreateIndex": { + "$ref": "./examples/SearchServiceCreateIndex.json" + } + }, + "description": "Creates a new search index.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Index" + }, + "parameters": [ + { + "name": "index", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Index" + }, + "description": "The definition of the index to create." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "201": { + "description": "", + "schema": { + "$ref": "#/definitions/Index" + } + } + } + }, + "get": { + "tags": [ + "Indexes" + ], + "operationId": "Indexes_List", + "x-ms-examples": { + "SearchServiceListIndexes": { + "$ref": "./examples/SearchServiceListIndexes.json" + } + }, + "description": "Lists all indexes available for a search service.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/List-Indexes" + }, + "parameters": [ + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "Selects which top-level properties of the index definitions to retrieve. Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/ListIndexesResult" + } + } + } + } + }, + "/indexes('{indexName}')": { + "put": { + "tags": [ + "Indexes" + ], + "operationId": "Indexes_CreateOrUpdate", + "x-ms-examples": { + "SearchServiceCreateOrUpdateIndex": { + "$ref": "./examples/SearchServiceCreateOrUpdateIndex.json" + } + }, + "description": "Creates a new search index or updates an index if it already exists.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Update-Index" + }, + "parameters": [ + { + "name": "indexName", + "in": "path", + "required": true, + "type": "string", + "description": "The definition of the index to create or update." + }, + { + "name": "index", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Index" + }, + "description": "The definition of the index to create or update." + }, + { + "name": "allowIndexDowntime", + "in": "query", + "required": false, + "type": "boolean", + "description": "Allows new analyzers, tokenizers, token filters, or char filters to be added to an index by taking the index offline for at least a few seconds. This temporarily causes indexing and query requests to fail. Performance and write availability of the index can be impaired for several minutes after the index is updated, or longer for very large indexes." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/IfMatchParameter" + }, + { + "$ref": "#/parameters/IfNoneMatchParameter" + }, + { + "$ref": "#/parameters/PreferHeaderParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/Index" + } + }, + "201": { + "description": "", + "schema": { + "$ref": "#/definitions/Index" + } + } + } + }, + "delete": { + "tags": [ + "Indexes" + ], + "operationId": "Indexes_Delete", + "x-ms-examples": { + "SearchServiceDeleteIndex": { + "$ref": "./examples/SearchServiceDeleteIndex.json" + } + }, + "description": "Deletes a search index and all the documents it contains.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Delete-Index" + }, + "parameters": [ + { + "name": "indexName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the index to delete." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/IfMatchParameter" + }, + { + "$ref": "#/parameters/IfNoneMatchParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "204": { + "description": "" + }, + "404": { + "description": "" + } + } + }, + "get": { + "tags": [ + "Indexes" + ], + "operationId": "Indexes_Get", + "x-ms-examples": { + "SearchServiceGetIndex": { + "$ref": "./examples/SearchServiceGetIndex.json" + } + }, + "description": "Retrieves an index definition.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Index" + }, + "parameters": [ + { + "name": "indexName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the index to retrieve." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/Index" + } + } + } + } + }, + "/indexes('{indexName}')/search.stats": { + "get": { + "tags": [ + "Indexes" + ], + "operationId": "Indexes_GetStatistics", + "x-ms-examples": { + "SearchServiceGetIndexStatistics": { + "$ref": "./examples/SearchServiceGetIndexStatistics.json" + } + }, + "description": "Returns statistics for the given index, including a document count and storage usage.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Index-Statistics" + }, + "parameters": [ + { + "name": "indexName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the index for which to retrieve statistics." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/GetIndexStatisticsResult" + } + } + } + } + }, + "/indexes('{indexName}')/search.analyze": { + "post": { + "tags": [ + "Indexes" + ], + "operationId": "Indexes_Analyze", + "x-ms-examples": { + "SearchServiceIndexAnalyze": { + "$ref": "./examples/SearchServiceIndexAnalyze.json" + } + }, + "description": "Shows how an analyzer breaks text into tokens.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/test-analyzer" + }, + "parameters": [ + { + "name": "indexName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the index for which to test an analyzer." + }, + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AnalyzeRequest" + }, + "description": "The text and analyzer or analysis components to test." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/AnalyzeResult" + } + } + } + } + }, + "/servicestats": { + "get": { + "tags": [ + "Service" + ], + "operationId": "GetServiceStatistics", + "x-ms-examples": { + "SearchServiceGetServiceStatistics": { + "$ref": "./examples/SearchServiceGetServiceStatistics.json" + } + }, + "description": "Gets service level statistics for a search service.", + "parameters": [ + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/ServiceStatistics" + } + } + } + } + } + }, + "definitions": { + "AnalyzeRequest": { + "properties": { + "text": { + "type": "string", + "description": "The text to break into tokens." + }, + "analyzer": { + "$ref": "#/definitions/AnalyzerName", + "description": "The name of the analyzer to use to break the given text. If this parameter is not specified, you must specify a tokenizer instead. The tokenizer and analyzer parameters are mutually exclusive." + }, + "tokenizer": { + "$ref": "#/definitions/TokenizerName", + "description": "The name of the tokenizer to use to break the given text. If this parameter is not specified, you must specify an analyzer instead. The tokenizer and analyzer parameters are mutually exclusive." + }, + "tokenFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/TokenFilterName", + "x-nullable": false + }, + "description": "An optional list of token filters to use when breaking the given text. This parameter can only be set when using the tokenizer parameter." + }, + "charFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/CharFilterName", + "x-nullable": false + }, + "description": "An optional list of character filters to use when breaking the given text. This parameter can only be set when using the tokenizer parameter." + } + }, + "required": [ + "text" + ], + "description": "Specifies some text and analysis components used to break that text into tokens." + }, + "AnalyzeResult": { + "properties": { + "tokens": { + "type": "array", + "items": { + "$ref": "#/definitions/TokenInfo" + }, + "description": "The list of tokens returned by the analyzer specified in the request." + } + }, + "description": "The result of testing an analyzer on text." + }, + "TokenInfo": { + "properties": { + "token": { + "type": "string", + "readOnly": true, + "description": "The token returned by the analyzer." + }, + "startOffset": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The index of the first character of the token in the input text." + }, + "endOffset": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The index of the last character of the token in the input text." + }, + "position": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The position of the token in the input text relative to other tokens. The first token in the input text has position 0, the next has position 1, and so on. Depending on the analyzer used, some tokens might have the same position, for example if they are synonyms of each other." + } + }, + "description": "Information about a token returned by an analyzer." + }, + "AnalyzerName": { + "type": "string", + "enum": [ + "ar.microsoft", + "ar.lucene", + "hy.lucene", + "bn.microsoft", + "eu.lucene", + "bg.microsoft", + "bg.lucene", + "ca.microsoft", + "ca.lucene", + "zh-Hans.microsoft", + "zh-Hans.lucene", + "zh-Hant.microsoft", + "zh-Hant.lucene", + "hr.microsoft", + "cs.microsoft", + "cs.lucene", + "da.microsoft", + "da.lucene", + "nl.microsoft", + "nl.lucene", + "en.microsoft", + "en.lucene", + "et.microsoft", + "fi.microsoft", + "fi.lucene", + "fr.microsoft", + "fr.lucene", + "gl.lucene", + "de.microsoft", + "de.lucene", + "el.microsoft", + "el.lucene", + "gu.microsoft", + "he.microsoft", + "hi.microsoft", + "hi.lucene", + "hu.microsoft", + "hu.lucene", + "is.microsoft", + "id.microsoft", + "id.lucene", + "ga.lucene", + "it.microsoft", + "it.lucene", + "ja.microsoft", + "ja.lucene", + "kn.microsoft", + "ko.microsoft", + "ko.lucene", + "lv.microsoft", + "lv.lucene", + "lt.microsoft", + "ml.microsoft", + "ms.microsoft", + "mr.microsoft", + "nb.microsoft", + "no.lucene", + "fa.lucene", + "pl.microsoft", + "pl.lucene", + "pt-BR.microsoft", + "pt-BR.lucene", + "pt-PT.microsoft", + "pt-PT.lucene", + "pa.microsoft", + "ro.microsoft", + "ro.lucene", + "ru.microsoft", + "ru.lucene", + "sr-cyrillic.microsoft", + "sr-latin.microsoft", + "sk.microsoft", + "sl.microsoft", + "es.microsoft", + "es.lucene", + "sv.microsoft", + "sv.lucene", + "ta.microsoft", + "te.microsoft", + "th.microsoft", + "th.lucene", + "tr.microsoft", + "tr.lucene", + "uk.microsoft", + "ur.microsoft", + "vi.microsoft", + "standard.lucene", + "standardasciifolding.lucene", + "keyword", + "pattern", + "simple", + "stop", + "whitespace" + ], + "x-ms-enum": { + "name": "AnalyzerName", + "modelAsString": true + }, + "description": "Defines the names of all text analyzers supported by Azure Cognitive Search.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Language-support" + } + }, + "TokenizerName": { + "type": "string", + "enum": [ + "classic", + "edgeNGram", + "keyword_v2", + "letter", + "lowercase", + "microsoft_language_tokenizer", + "microsoft_language_stemming_tokenizer", + "nGram", + "path_hierarchy_v2", + "pattern", + "standard_v2", + "uax_url_email", + "whitespace" + ], + "x-ms-enum": { + "name": "TokenizerName", + "modelAsString": true, + "values": [ + { + "value": "classic", + "name": "Classic", + "description": "Grammar-based tokenizer that is suitable for processing most European-language documents. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicTokenizer.html" + }, + { + "value": "edgeNGram", + "name": "EdgeNGram", + "description": "Tokenizes the input from an edge into n-grams of the given size(s). See https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenizer.html" + }, + { + "value": "keyword_v2", + "name": "Keyword", + "description": "Emits the entire input as a single token. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordTokenizer.html" + }, + { + "value": "letter", + "name": "Letter", + "description": "Divides text at non-letters. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LetterTokenizer.html" + }, + { + "value": "lowercase", + "name": "Lowercase", + "description": "Divides text at non-letters and converts them to lower case. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LowerCaseTokenizer.html" + }, + { + "value": "microsoft_language_tokenizer", + "name": "MicrosoftLanguageTokenizer", + "description": "Divides text using language-specific rules." + }, + { + "value": "microsoft_language_stemming_tokenizer", + "name": "MicrosoftLanguageStemmingTokenizer", + "description": "Divides text using language-specific rules and reduces words to their base forms." + }, + { + "value": "nGram", + "name": "NGram", + "description": "Tokenizes the input into n-grams of the given size(s). See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenizer.html" + }, + { + "value": "path_hierarchy_v2", + "name": "PathHierarchy", + "description": "Tokenizer for path-like hierarchies. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/path/PathHierarchyTokenizer.html" + }, + { + "value": "pattern", + "name": "Pattern", + "description": "Tokenizer that uses regex pattern matching to construct distinct tokens. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternTokenizer.html" + }, + { + "value": "standard_v2", + "name": "Standard", + "description": "Standard Lucene analyzer; Composed of the standard tokenizer, lowercase filter and stop filter. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/StandardTokenizer.html" + }, + { + "value": "uax_url_email", + "name": "UaxUrlEmail", + "description": "Tokenizes urls and emails as one token. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/UAX29URLEmailTokenizer.html" + }, + { + "value": "whitespace", + "name": "Whitespace", + "description": "Divides text at whitespace. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/WhitespaceTokenizer.html" + } + ] + }, + "description": "Defines the names of all tokenizers supported by Azure Cognitive Search.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" + } + }, + "TokenFilterName": { + "type": "string", + "enum": [ + "arabic_normalization", + "apostrophe", + "asciifolding", + "cjk_bigram", + "cjk_width", + "classic", + "common_grams", + "edgeNGram_v2", + "elision", + "german_normalization", + "hindi_normalization", + "indic_normalization", + "keyword_repeat", + "kstem", + "length", + "limit", + "lowercase", + "nGram_v2", + "persian_normalization", + "phonetic", + "porter_stem", + "reverse", + "scandinavian_normalization", + "scandinavian_folding", + "shingle", + "snowball", + "sorani_normalization", + "stemmer", + "stopwords", + "trim", + "truncate", + "unique", + "uppercase", + "word_delimiter" + ], + "x-ms-enum": { + "name": "TokenFilterName", + "modelAsString": true, + "values": [ + { + "value": "arabic_normalization", + "name": "ArabicNormalization", + "description": "A token filter that applies the Arabic normalizer to normalize the orthography. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ar/ArabicNormalizationFilter.html" + }, + { + "value": "apostrophe", + "name": "Apostrophe", + "description": "Strips all characters after an apostrophe (including the apostrophe itself). See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/tr/ApostropheFilter.html" + }, + { + "value": "asciifolding", + "name": "AsciiFolding", + "description": "Converts alphabetic, numeric, and symbolic Unicode characters which are not in the first 127 ASCII characters (the \"Basic Latin\" Unicode block) into their ASCII equivalents, if such equivalents exist. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ASCIIFoldingFilter.html" + }, + { + "value": "cjk_bigram", + "name": "CjkBigram", + "description": "Forms bigrams of CJK terms that are generated from StandardTokenizer. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKBigramFilter.html" + }, + { + "value": "cjk_width", + "name": "CjkWidth", + "description": "Normalizes CJK width differences. Folds fullwidth ASCII variants into the equivalent basic Latin, and half-width Katakana variants into the equivalent Kana. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKWidthFilter.html" + }, + { + "value": "classic", + "name": "Classic", + "description": "Removes English possessives, and dots from acronyms. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicFilter.html" + }, + { + "value": "common_grams", + "name": "CommonGram", + "description": "Construct bigrams for frequently occurring terms while indexing. Single terms are still indexed too, with bigrams overlaid. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/commongrams/CommonGramsFilter.html" + }, + { + "value": "edgeNGram_v2", + "name": "EdgeNGram", + "description": "Generates n-grams of the given size(s) starting from the front or the back of an input token. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenFilter.html" + }, + { + "value": "elision", + "name": "Elision", + "description": "Removes elisions. For example, \"l'avion\" (the plane) will be converted to \"avion\" (plane). See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/util/ElisionFilter.html" + }, + { + "value": "german_normalization", + "name": "GermanNormalization", + "description": "Normalizes German characters according to the heuristics of the German2 snowball algorithm. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/de/GermanNormalizationFilter.html" + }, + { + "value": "hindi_normalization", + "name": "HindiNormalization", + "description": "Normalizes text in Hindi to remove some differences in spelling variations. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/hi/HindiNormalizationFilter.html" + }, + { + "value": "indic_normalization", + "name": "IndicNormalization", + "description": "Normalizes the Unicode representation of text in Indian languages. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/in/IndicNormalizationFilter.html" + }, + { + "value": "keyword_repeat", + "name": "KeywordRepeat", + "description": "Emits each incoming token twice, once as keyword and once as non-keyword. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/KeywordRepeatFilter.html" + }, + { + "value": "kstem", + "name": "KStem", + "description": "A high-performance kstem filter for English. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/en/KStemFilter.html" + }, + { + "value": "length", + "name": "Length", + "description": "Removes words that are too long or too short. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LengthFilter.html" + }, + { + "value": "limit", + "name": "Limit", + "description": "Limits the number of tokens while indexing. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LimitTokenCountFilter.html" + }, + { + "value": "lowercase", + "name": "Lowercase", + "description": "Normalizes token text to lower case. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LowerCaseFilter.htm" + }, + { + "value": "nGram_v2", + "name": "NGram", + "description": "Generates n-grams of the given size(s). See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenFilter.html" + }, + { + "value": "persian_normalization", + "name": "PersianNormalization", + "description": "Applies normalization for Persian. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/fa/PersianNormalizationFilter.html" + }, + { + "value": "phonetic", + "name": "Phonetic", + "description": "Create tokens for phonetic matches. See https://lucene.apache.org/core/4_10_3/analyzers-phonetic/org/apache/lucene/analysis/phonetic/package-tree.html" + }, + { + "value": "porter_stem", + "name": "PorterStem", + "description": "Uses the Porter stemming algorithm to transform the token stream. See http://tartarus.org/~martin/PorterStemmer" + }, + { + "value": "reverse", + "name": "Reverse", + "description": "Reverses the token string. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/reverse/ReverseStringFilter.html" + }, + { + "value": "scandinavian_normalization", + "name": "ScandinavianNormalization", + "description": "Normalizes use of the interchangeable Scandinavian characters. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianNormalizationFilter.html" + }, + { + "value": "scandinavian_folding", + "name": "ScandinavianFoldingNormalization", + "description": "Folds Scandinavian characters åÅäæÄÆ->a and öÖøØ->o. It also discriminates against use of double vowels aa, ae, ao, oe and oo, leaving just the first one. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianFoldingFilter.html" + }, + { + "value": "shingle", + "name": "Shingle", + "description": "Creates combinations of tokens as a single token. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/shingle/ShingleFilter.html" + }, + { + "value": "snowball", + "name": "Snowball", + "description": "A filter that stems words using a Snowball-generated stemmer. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/snowball/SnowballFilter.html" + }, + { + "value": "sorani_normalization", + "name": "SoraniNormalization", + "description": "Normalizes the Unicode representation of Sorani text. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ckb/SoraniNormalizationFilter.html" + }, + { + "value": "stemmer", + "name": "Stemmer", + "description": "Language specific stemming filter. See https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#TokenFilters" + }, + { + "value": "stopwords", + "name": "Stopwords", + "description": "Removes stop words from a token stream. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopFilter.html" + }, + { + "value": "trim", + "name": "Trim", + "description": "Trims leading and trailing whitespace from tokens. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TrimFilter.html" + }, + { + "value": "truncate", + "name": "Truncate", + "description": "Truncates the terms to a specific length. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TruncateTokenFilter.html" + }, + { + "value": "unique", + "name": "Unique", + "description": "Filters out tokens with same text as the previous token. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/RemoveDuplicatesTokenFilter.html" + }, + { + "value": "uppercase", + "name": "Uppercase", + "description": "Normalizes token text to upper case. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/UpperCaseFilter.html" + }, + { + "value": "word_delimiter", + "name": "WordDelimiter", + "description": "Splits words into subwords and performs optional transformations on subword groups." + } + ] + }, + "description": "Defines the names of all token filters supported by Azure Cognitive Search.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" + } + }, + "CharFilterName": { + "type": "string", + "enum": [ + "html_strip" + ], + "x-ms-enum": { + "name": "CharFilterName", + "modelAsString": true, + "values": [ + { + "value": "html_strip", + "name": "HtmlStrip", + "description": "A character filter that attempts to strip out HTML constructs. See https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/charfilter/HTMLStripCharFilter.html" + } + ] + }, + "description": "Defines the names of all character filters supported by Azure Cognitive Search.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" + } + }, + "RegexFlags": { + "type": "string", + "enum": [ + "CANON_EQ", + "CASE_INSENSITIVE", + "COMMENTS", + "DOTALL", + "LITERAL", + "MULTILINE", + "UNICODE_CASE", + "UNIX_LINES" + ], + "x-ms-enum": { + "name": "RegexFlags", + "modelAsString": true + }, + "description": "Defines flags that can be combined to control how regular expressions are used in the pattern analyzer and pattern tokenizer.", + "externalDocs": { + "url": "http://docs.oracle.com/javase/6/docs/api/java/util/regex/Pattern.html#field_summary" + } + }, + "DataType": { + "type": "string", + "enum": [ + "Edm.String", + "Edm.Int32", + "Edm.Int64", + "Edm.Double", + "Edm.Boolean", + "Edm.DateTimeOffset", + "Edm.GeographyPoint", + "Edm.ComplexType" + ], + "x-ms-enum": { + "name": "DataType", + "modelAsString": true + }, + "description": "Defines the data type of a field in a search index." + }, + "Analyzer": { + "discriminator": "@odata.type", + "properties": { + "@odata.type": { + "type": "string" + }, + "name": { + "type": "string", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/custom-analyzers-in-azure-search#index-attribute-reference" + }, + "description": "The name of the analyzer. It must only contain letters, digits, spaces, dashes or underscores, can only start and end with alphanumeric characters, and is limited to 128 characters." + } + }, + "required": [ + "@odata.type", + "name" + ], + "description": "Abstract base class for analyzers." + }, + "CustomAnalyzer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.CustomAnalyzer", + "allOf": [ + { + "$ref": "#/definitions/Analyzer" + } + ], + "properties": { + "tokenizer": { + "$ref": "#/definitions/TokenizerName", + "description": "The name of the tokenizer to use to divide continuous text into a sequence of tokens, such as breaking a sentence into words." + }, + "tokenFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/TokenFilterName", + "x-nullable": false + }, + "description": "A list of token filters used to filter out or modify the tokens generated by a tokenizer. For example, you can specify a lowercase filter that converts all characters to lowercase. The filters are run in the order in which they are listed." + }, + "charFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/CharFilterName", + "x-nullable": false + }, + "description": "A list of character filters used to prepare input text before it is processed by the tokenizer. For instance, they can replace certain characters or symbols. The filters are run in the order in which they are listed." + } + }, + "required": [ + "tokenizer" + ], + "description": "Allows you to take control over the process of converting text into indexable/searchable tokens. It's a user-defined configuration consisting of a single predefined tokenizer and one or more filters. The tokenizer is responsible for breaking text into tokens, and the filters for modifying tokens emitted by the tokenizer." + }, + "PatternAnalyzer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternAnalyzer", + "allOf": [ + { + "$ref": "#/definitions/Analyzer" + } + ], + "properties": { + "lowercase": { + "x-ms-client-name": "LowerCaseTerms", + "type": "boolean", + "default": true, + "description": "A value indicating whether terms should be lower-cased. Default is true." + }, + "pattern": { + "type": "string", + "default": "\\W+", + "description": "A regular expression pattern to match token separators. Default is an expression that matches one or more whitespace characters." + }, + "flags": { + "$ref": "#/definitions/RegexFlags", + "description": "Regular expression flags." + }, + "stopwords": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of stopwords." + } + }, + "description": "Flexibly separates text into terms via a regular expression pattern. This analyzer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/PatternAnalyzer.html" + } + }, + "StandardAnalyzer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardAnalyzer", + "allOf": [ + { + "$ref": "#/definitions/Analyzer" + } + ], + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "default": 255, + "maximum": 300, + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length are split. The maximum token length that can be used is 300 characters." + }, + "stopwords": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of stopwords." + } + }, + "description": "Standard Apache Lucene analyzer; Composed of the standard tokenizer, lowercase filter and stop filter.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/StandardAnalyzer.html" + } + }, + "StopAnalyzer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StopAnalyzer", + "allOf": [ + { + "$ref": "#/definitions/Analyzer" + } + ], + "properties": { + "stopwords": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of stopwords." + } + }, + "description": "Divides text at non-letters; Applies the lowercase and stopword token filters. This analyzer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopAnalyzer.html" + } + }, + "Tokenizer": { + "discriminator": "@odata.type", + "properties": { + "@odata.type": { + "type": "string" + }, + "name": { + "type": "string", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/custom-analyzers-in-azure-search#index-attribute-reference" + }, + "description": "The name of the tokenizer. It must only contain letters, digits, spaces, dashes or underscores, can only start and end with alphanumeric characters, and is limited to 128 characters." + } + }, + "required": [ + "@odata.type", + "name" + ], + "description": "Abstract base class for tokenizers.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" + } + }, + "ClassicTokenizer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.ClassicTokenizer", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "default": 255, + "maximum": 300, + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length are split. The maximum token length that can be used is 300 characters." + } + }, + "description": "Grammar-based tokenizer that is suitable for processing most European-language documents. This tokenizer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicTokenizer.html" + } + }, + "TokenCharacterKind": { + "type": "string", + "enum": [ + "letter", + "digit", + "whitespace", + "punctuation", + "symbol" + ], + "x-ms-enum": { + "name": "TokenCharacterKind", + "modelAsString": false + }, + "description": "Represents classes of characters on which a token filter can operate." + }, + "EdgeNGramTokenizer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenizer", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "default": 1, + "maximum": 300, + "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the value of maxGram." + }, + "maxGram": { + "type": "integer", + "format": "int32", + "default": 2, + "maximum": 300, + "description": "The maximum n-gram length. Default is 2. Maximum is 300." + }, + "tokenChars": { + "type": "array", + "items": { + "$ref": "#/definitions/TokenCharacterKind", + "x-nullable": false + }, + "description": "Character classes to keep in the tokens." + } + }, + "description": "Tokenizes the input from an edge into n-grams of the given size(s). This tokenizer is implemented using Apache Lucene.", + "externalDocs": { + "url": "https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenizer.html" + } + }, + "KeywordTokenizer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordTokenizer", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "bufferSize": { + "type": "integer", + "format": "int32", + "default": 256, + "description": "The read buffer size in bytes. Default is 256." + } + }, + "description": "Emits the entire input as a single token. This tokenizer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordTokenizer.html" + }, + "x-ms-external": true + }, + "KeywordTokenizerV2": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordTokenizerV2", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "default": 256, + "maximum": 300, + "description": "The maximum token length. Default is 256. Tokens longer than the maximum length are split. The maximum token length that can be used is 300 characters." + } + }, + "description": "Emits the entire input as a single token. This tokenizer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordTokenizer.html" + } + }, + "MicrosoftTokenizerLanguage": { + "type": "string", + "enum": [ + "bangla", + "bulgarian", + "catalan", + "chineseSimplified", + "chineseTraditional", + "croatian", + "czech", + "danish", + "dutch", + "english", + "french", + "german", + "greek", + "gujarati", + "hindi", + "icelandic", + "indonesian", + "italian", + "japanese", + "kannada", + "korean", + "malay", + "malayalam", + "marathi", + "norwegianBokmaal", + "polish", + "portuguese", + "portugueseBrazilian", + "punjabi", + "romanian", + "russian", + "serbianCyrillic", + "serbianLatin", + "slovenian", + "spanish", + "swedish", + "tamil", + "telugu", + "thai", + "ukrainian", + "urdu", + "vietnamese" + ], + "x-ms-enum": { + "name": "MicrosoftTokenizerLanguage", + "modelAsString": false + }, + "description": "Lists the languages supported by the Microsoft language tokenizer." + }, + "MicrosoftLanguageTokenizer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.MicrosoftLanguageTokenizer", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "default": 255, + "maximum": 300, + "description": "The maximum token length. Tokens longer than the maximum length are split. Maximum token length that can be used is 300 characters. Tokens longer than 300 characters are first split into tokens of length 300 and then each of those tokens is split based on the max token length set. Default is 255." + }, + "isSearchTokenizer": { + "type": "boolean", + "default": false, + "description": "A value indicating how the tokenizer is used. Set to true if used as the search tokenizer, set to false if used as the indexing tokenizer. Default is false." + }, + "language": { + "$ref": "#/definitions/MicrosoftTokenizerLanguage", + "description": "The language to use. The default is English." + } + }, + "description": "Divides text using language-specific rules." + }, + "MicrosoftStemmingTokenizerLanguage": { + "type": "string", + "enum": [ + "arabic", + "bangla", + "bulgarian", + "catalan", + "croatian", + "czech", + "danish", + "dutch", + "english", + "estonian", + "finnish", + "french", + "german", + "greek", + "gujarati", + "hebrew", + "hindi", + "hungarian", + "icelandic", + "indonesian", + "italian", + "kannada", + "latvian", + "lithuanian", + "malay", + "malayalam", + "marathi", + "norwegianBokmaal", + "polish", + "portuguese", + "portugueseBrazilian", + "punjabi", + "romanian", + "russian", + "serbianCyrillic", + "serbianLatin", + "slovak", + "slovenian", + "spanish", + "swedish", + "tamil", + "telugu", + "turkish", + "ukrainian", + "urdu" + ], + "x-ms-enum": { + "name": "MicrosoftStemmingTokenizerLanguage", + "modelAsString": false + }, + "description": "Lists the languages supported by the Microsoft language stemming tokenizer." + }, + "MicrosoftLanguageStemmingTokenizer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "default": 255, + "maximum": 300, + "description": "The maximum token length. Tokens longer than the maximum length are split. Maximum token length that can be used is 300 characters. Tokens longer than 300 characters are first split into tokens of length 300 and then each of those tokens is split based on the max token length set. Default is 255." + }, + "isSearchTokenizer": { + "type": "boolean", + "default": false, + "description": "A value indicating how the tokenizer is used. Set to true if used as the search tokenizer, set to false if used as the indexing tokenizer. Default is false." + }, + "language": { + "$ref": "#/definitions/MicrosoftStemmingTokenizerLanguage", + "description": "The language to use. The default is English." + } + }, + "description": "Divides text using language-specific rules and reduces words to their base forms." + }, + "NGramTokenizer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenizer", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "default": 1, + "maximum": 300, + "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the value of maxGram." + }, + "maxGram": { + "type": "integer", + "format": "int32", + "default": 2, + "maximum": 300, + "description": "The maximum n-gram length. Default is 2. Maximum is 300." + }, + "tokenChars": { + "type": "array", + "items": { + "$ref": "#/definitions/TokenCharacterKind", + "x-nullable": false + }, + "description": "Character classes to keep in the tokens." + } + }, + "description": "Tokenizes the input into n-grams of the given size(s). This tokenizer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenizer.html" + } + }, + "PathHierarchyTokenizer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PathHierarchyTokenizer", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "delimiter": { + "type": "string", + "format": "char", + "default": "/", + "description": "The delimiter character to use. Default is \"/\"." + }, + "replacement": { + "type": "string", + "format": "char", + "default": "/", + "description": "A value that, if set, replaces the delimiter character. Default is \"/\"." + }, + "bufferSize": { + "type": "integer", + "format": "int32", + "default": 1024, + "description": "The buffer size. Default is 1024." + }, + "reverse": { + "x-ms-client-name": "ReverseTokenOrder", + "type": "boolean", + "default": false, + "description": "A value indicating whether to generate tokens in reverse order. Default is false." + }, + "skip": { + "x-ms-client-name": "NumberOfTokensToSkip", + "type": "integer", + "format": "int32", + "default": 0, + "description": "The number of initial tokens to skip. Default is 0." + } + }, + "description": "Tokenizer for path-like hierarchies. This tokenizer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/path/PathHierarchyTokenizer.html" + }, + "x-ms-external": true + }, + "PathHierarchyTokenizerV2": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PathHierarchyTokenizerV2", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "delimiter": { + "type": "string", + "format": "char", + "default": "/", + "description": "The delimiter character to use. Default is \"/\"." + }, + "replacement": { + "type": "string", + "format": "char", + "default": "/", + "description": "A value that, if set, replaces the delimiter character. Default is \"/\"." + }, + "maxTokenLength": { + "type": "integer", + "format": "int32", + "default": 300, + "maximum": 300, + "description": "The maximum token length. Default and maximum is 300." + }, + "reverse": { + "x-ms-client-name": "ReverseTokenOrder", + "type": "boolean", + "default": false, + "description": "A value indicating whether to generate tokens in reverse order. Default is false." + }, + "skip": { + "x-ms-client-name": "NumberOfTokensToSkip", + "type": "integer", + "format": "int32", + "default": 0, + "description": "The number of initial tokens to skip. Default is 0." + } + }, + "description": "Tokenizer for path-like hierarchies. This tokenizer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/path/PathHierarchyTokenizer.html" + } + }, + "PatternTokenizer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternTokenizer", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "pattern": { + "type": "string", + "default": "\\W+", + "description": "A regular expression pattern to match token separators. Default is an expression that matches one or more whitespace characters." + }, + "flags": { + "$ref": "#/definitions/RegexFlags", + "description": "Regular expression flags." + }, + "group": { + "type": "integer", + "format": "int32", + "default": -1, + "description": "The zero-based ordinal of the matching group in the regular expression pattern to extract into tokens. Use -1 if you want to use the entire pattern to split the input into tokens, irrespective of matching groups. Default is -1." + } + }, + "description": "Tokenizer that uses regex pattern matching to construct distinct tokens. This tokenizer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternTokenizer.html" + } + }, + "StandardTokenizer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardTokenizer", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "default": 255, + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length are split." + } + }, + "description": "Breaks text following the Unicode Text Segmentation rules. This tokenizer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/StandardTokenizer.html" + }, + "x-ms-external": true + }, + "StandardTokenizerV2": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardTokenizerV2", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "default": 255, + "maximum": 300, + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length are split. The maximum token length that can be used is 300 characters." + } + }, + "description": "Breaks text following the Unicode Text Segmentation rules. This tokenizer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/StandardTokenizer.html" + } + }, + "UaxUrlEmailTokenizer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.UaxUrlEmailTokenizer", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "default": 255, + "maximum": 300, + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length are split. The maximum token length that can be used is 300 characters." + } + }, + "description": "Tokenizes urls and emails as one token. This tokenizer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/UAX29URLEmailTokenizer.html" + } + }, + "TokenFilter": { + "discriminator": "@odata.type", + "properties": { + "@odata.type": { + "type": "string" + }, + "name": { + "type": "string", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/custom-analyzers-in-azure-search#index-attribute-reference" + }, + "description": "The name of the token filter. It must only contain letters, digits, spaces, dashes or underscores, can only start and end with alphanumeric characters, and is limited to 128 characters." + } + }, + "required": [ + "@odata.type", + "name" + ], + "description": "Abstract base class for token filters.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" + } + }, + "AsciiFoldingTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.AsciiFoldingTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "preserveOriginal": { + "type": "boolean", + "default": false, + "description": "A value indicating whether the original token will be kept. Default is false." + } + }, + "description": "Converts alphabetic, numeric, and symbolic Unicode characters which are not in the first 127 ASCII characters (the \"Basic Latin\" Unicode block) into their ASCII equivalents, if such equivalents exist. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ASCIIFoldingFilter.html" + } + }, + "CjkBigramTokenFilterScripts": { + "type": "string", + "enum": [ + "han", + "hiragana", + "katakana", + "hangul" + ], + "x-ms-enum": { + "name": "CjkBigramTokenFilterScripts", + "modelAsString": false + }, + "description": "Scripts that can be ignored by CjkBigramTokenFilter." + }, + "CjkBigramTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.CjkBigramTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "ignoreScripts": { + "type": "array", + "items": { + "$ref": "#/definitions/CjkBigramTokenFilterScripts", + "x-nullable": false + }, + "description": "The scripts to ignore." + }, + "outputUnigrams": { + "type": "boolean", + "default": false, + "description": "A value indicating whether to output both unigrams and bigrams (if true), or just bigrams (if false). Default is false." + } + }, + "description": "Forms bigrams of CJK terms that are generated from StandardTokenizer. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKBigramFilter.html" + } + }, + "CommonGramTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.CommonGramTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "commonWords": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The set of common words." + }, + "ignoreCase": { + "type": "boolean", + "default": false, + "description": "A value indicating whether common words matching will be case insensitive. Default is false." + }, + "queryMode": { + "x-ms-client-name": "UseQueryMode", + "type": "boolean", + "default": false, + "description": "A value that indicates whether the token filter is in query mode. When in query mode, the token filter generates bigrams and then removes common words and single terms followed by a common word. Default is false." + } + }, + "required": [ + "commonWords" + ], + "description": "Construct bigrams for frequently occurring terms while indexing. Single terms are still indexed too, with bigrams overlaid. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/commongrams/CommonGramsFilter.html" + } + }, + "DictionaryDecompounderTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "wordList": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of words to match against." + }, + "minWordSize": { + "type": "integer", + "format": "int32", + "default": 5, + "maximum": 300, + "description": "The minimum word size. Only words longer than this get processed. Default is 5. Maximum is 300." + }, + "minSubwordSize": { + "type": "integer", + "format": "int32", + "default": 2, + "maximum": 300, + "description": "The minimum subword size. Only subwords longer than this are outputted. Default is 2. Maximum is 300." + }, + "maxSubwordSize": { + "type": "integer", + "format": "int32", + "default": 15, + "maximum": 300, + "description": "The maximum subword size. Only subwords shorter than this are outputted. Default is 15. Maximum is 300." + }, + "onlyLongestMatch": { + "type": "boolean", + "default": false, + "description": "A value indicating whether to add only the longest matching subword to the output. Default is false." + } + }, + "required": [ + "wordList" + ], + "description": "Decomposes compound words found in many Germanic languages. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/compound/DictionaryCompoundWordTokenFilter.html" + } + }, + "EdgeNGramTokenFilterSide": { + "type": "string", + "enum": [ + "front", + "back" + ], + "x-ms-enum": { + "name": "EdgeNGramTokenFilterSide", + "modelAsString": false + }, + "description": "Specifies which side of the input an n-gram should be generated from." + }, + "EdgeNGramTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "default": 1, + "description": "The minimum n-gram length. Default is 1. Must be less than the value of maxGram." + }, + "maxGram": { + "type": "integer", + "format": "int32", + "default": 2, + "description": "The maximum n-gram length. Default is 2." + }, + "side": { + "$ref": "#/definitions/EdgeNGramTokenFilterSide", + "default": "front", + "description": "Specifies which side of the input the n-gram should be generated from. Default is \"front\"." + } + }, + "description": "Generates n-grams of the given size(s) starting from the front or the back of an input token. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenFilter.html" + }, + "x-ms-external": true + }, + "EdgeNGramTokenFilterV2": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenFilterV2", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "default": 1, + "maximum": 300, + "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the value of maxGram." + }, + "maxGram": { + "type": "integer", + "format": "int32", + "default": 2, + "maximum": 300, + "description": "The maximum n-gram length. Default is 2. Maximum is 300." + }, + "side": { + "$ref": "#/definitions/EdgeNGramTokenFilterSide", + "default": "front", + "description": "Specifies which side of the input the n-gram should be generated from. Default is \"front\"." + } + }, + "description": "Generates n-grams of the given size(s) starting from the front or the back of an input token. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenFilter.html" + } + }, + "ElisionTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.ElisionTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "articles": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The set of articles to remove." + } + }, + "description": "Removes elisions. For example, \"l'avion\" (the plane) will be converted to \"avion\" (plane). This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/util/ElisionFilter.html" + } + }, + "KeepTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeepTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "keepWords": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of words to keep." + }, + "keepWordsCase": { + "x-ms-client-name": "LowerCaseKeepWords", + "type": "boolean", + "default": false, + "description": "A value indicating whether to lower case all words first. Default is false." + } + }, + "required": [ + "keepWords" + ], + "description": "A token filter that only keeps tokens with text contained in a specified list of words. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/KeepWordFilter.html" + } + }, + "KeywordMarkerTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordMarkerTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "keywords": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of words to mark as keywords." + }, + "ignoreCase": { + "type": "boolean", + "default": false, + "description": "A value indicating whether to ignore case. If true, all words are converted to lower case first. Default is false." + } + }, + "required": [ + "keywords" + ], + "description": "Marks terms as keywords. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/KeywordMarkerFilter.html" + } + }, + "LengthTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.LengthTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "min": { + "type": "integer", + "format": "int32", + "default": 0, + "maximum": 300, + "description": "The minimum length in characters. Default is 0. Maximum is 300. Must be less than the value of max." + }, + "max": { + "type": "integer", + "format": "int32", + "default": 300, + "maximum": 300, + "description": "The maximum length in characters. Default and maximum is 300." + } + }, + "description": "Removes words that are too long or too short. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LengthFilter.html" + } + }, + "LimitTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.LimitTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "maxTokenCount": { + "type": "integer", + "format": "int32", + "default": 1, + "description": "The maximum number of tokens to produce. Default is 1." + }, + "consumeAllTokens": { + "type": "boolean", + "default": false, + "description": "A value indicating whether all tokens from the input must be consumed even if maxTokenCount is reached. Default is false." + } + }, + "description": "Limits the number of tokens while indexing. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LimitTokenCountFilter.html" + } + }, + "NGramTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "default": 1, + "description": "The minimum n-gram length. Default is 1. Must be less than the value of maxGram." + }, + "maxGram": { + "type": "integer", + "format": "int32", + "default": 2, + "description": "The maximum n-gram length. Default is 2." + } + }, + "description": "Generates n-grams of the given size(s). This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenFilter.html" + }, + "x-ms-external": true + }, + "NGramTokenFilterV2": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenFilterV2", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "default": 1, + "maximum": 300, + "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the value of maxGram." + }, + "maxGram": { + "type": "integer", + "format": "int32", + "default": 2, + "maximum": 300, + "description": "The maximum n-gram length. Default is 2. Maximum is 300." + } + }, + "description": "Generates n-grams of the given size(s). This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenFilter.html" + } + }, + "PatternCaptureTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternCaptureTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "patterns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of patterns to match against each token." + }, + "preserveOriginal": { + "type": "boolean", + "default": true, + "description": "A value indicating whether to return the original token even if one of the patterns matches. Default is true." + } + }, + "required": [ + "patterns" + ], + "description": "Uses Java regexes to emit multiple tokens - one for each capture group in one or more patterns. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternCaptureGroupTokenFilter.html" + } + }, + "PatternReplaceTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternReplaceTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "pattern": { + "type": "string", + "description": "A regular expression pattern." + }, + "replacement": { + "type": "string", + "description": "The replacement text." + } + }, + "required": [ + "pattern", + "replacement" + ], + "description": "A character filter that replaces characters in the input string. It uses a regular expression to identify character sequences to preserve and a replacement pattern to identify characters to replace. For example, given the input text \"aa bb aa bb\", pattern \"(aa)\\s+(bb)\", and replacement \"$1#$2\", the result would be \"aa#bb aa#bb\". This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternReplaceFilter.html" + } + }, + "PhoneticEncoder": { + "type": "string", + "enum": [ + "metaphone", + "doubleMetaphone", + "soundex", + "refinedSoundex", + "caverphone1", + "caverphone2", + "cologne", + "nysiis", + "koelnerPhonetik", + "haasePhonetik", + "beiderMorse" + ], + "x-ms-enum": { + "name": "PhoneticEncoder", + "modelAsString": false + }, + "description": "Identifies the type of phonetic encoder to use with a PhoneticTokenFilter." + }, + "PhoneticTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PhoneticTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "encoder": { + "$ref": "#/definitions/PhoneticEncoder", + "default": "metaphone", + "description": "The phonetic encoder to use. Default is \"metaphone\"." + }, + "replace": { + "x-ms-client-name": "ReplaceOriginalTokens", + "type": "boolean", + "default": true, + "description": "A value indicating whether encoded tokens should replace original tokens. If false, encoded tokens are added as synonyms. Default is true." + } + }, + "description": "Create tokens for phonetic matches. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "https://lucene.apache.org/core/4_10_3/analyzers-phonetic/org/apache/lucene/analysis/phonetic/package-tree.html" + } + }, + "ShingleTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.ShingleTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "maxShingleSize": { + "type": "integer", + "format": "int32", + "default": 2, + "minimum": 2, + "description": "The maximum shingle size. Default and minimum value is 2." + }, + "minShingleSize": { + "type": "integer", + "format": "int32", + "default": 2, + "minimum": 2, + "description": "The minimum shingle size. Default and minimum value is 2. Must be less than the value of maxShingleSize." + }, + "outputUnigrams": { + "type": "boolean", + "default": true, + "description": "A value indicating whether the output stream will contain the input tokens (unigrams) as well as shingles. Default is true." + }, + "outputUnigramsIfNoShingles": { + "type": "boolean", + "default": false, + "description": "A value indicating whether to output unigrams for those times when no shingles are available. This property takes precedence when outputUnigrams is set to false. Default is false." + }, + "tokenSeparator": { + "type": "string", + "default": " ", + "description": "The string to use when joining adjacent tokens to form a shingle. Default is a single space (\" \")." + }, + "filterToken": { + "type": "string", + "default": "_", + "description": "The string to insert for each position at which there is no token. Default is an underscore (\"_\")." + } + }, + "description": "Creates combinations of tokens as a single token. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/shingle/ShingleFilter.html" + } + }, + "SnowballTokenFilterLanguage": { + "type": "string", + "enum": [ + "armenian", + "basque", + "catalan", + "danish", + "dutch", + "english", + "finnish", + "french", + "german", + "german2", + "hungarian", + "italian", + "kp", + "lovins", + "norwegian", + "porter", + "portuguese", + "romanian", + "russian", + "spanish", + "swedish", + "turkish" + ], + "x-ms-enum": { + "name": "SnowballTokenFilterLanguage", + "modelAsString": false + }, + "description": "The language to use for a Snowball token filter." + }, + "SnowballTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.SnowballTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "language": { + "$ref": "#/definitions/SnowballTokenFilterLanguage", + "description": "The language to use." + } + }, + "required": [ + "language" + ], + "description": "A filter that stems words using a Snowball-generated stemmer. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/snowball/SnowballFilter.html" + } + }, + "StemmerTokenFilterLanguage": { + "type": "string", + "enum": [ + "arabic", + "armenian", + "basque", + "brazilian", + "bulgarian", + "catalan", + "czech", + "danish", + "dutch", + "dutchKp", + "english", + "lightEnglish", + "minimalEnglish", + "possessiveEnglish", + "porter2", + "lovins", + "finnish", + "lightFinnish", + "french", + "lightFrench", + "minimalFrench", + "galician", + "minimalGalician", + "german", + "german2", + "lightGerman", + "minimalGerman", + "greek", + "hindi", + "hungarian", + "lightHungarian", + "indonesian", + "irish", + "italian", + "lightItalian", + "sorani", + "latvian", + "norwegian", + "lightNorwegian", + "minimalNorwegian", + "lightNynorsk", + "minimalNynorsk", + "portuguese", + "lightPortuguese", + "minimalPortuguese", + "portugueseRslp", + "romanian", + "russian", + "lightRussian", + "spanish", + "lightSpanish", + "swedish", + "lightSwedish", + "turkish" + ], + "x-ms-enum": { + "name": "StemmerTokenFilterLanguage", + "modelAsString": false + }, + "description": "The language to use for a stemmer token filter." + }, + "StemmerTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StemmerTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "language": { + "$ref": "#/definitions/StemmerTokenFilterLanguage", + "description": "The language to use." + } + }, + "required": [ + "language" + ], + "description": "Language specific stemming filter. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#TokenFilters" + } + }, + "StemmerOverrideTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StemmerOverrideTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "rules": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of stemming rules in the following format: \"word => stem\", for example: \"ran => run\"." + } + }, + "required": [ + "rules" + ], + "description": "Provides the ability to override other stemming filters with custom dictionary-based stemming. Any dictionary-stemmed terms will be marked as keywords so that they will not be stemmed with stemmers down the chain. Must be placed before any stemming filters. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/StemmerOverrideFilter.html" + } + }, + "StopwordsList": { + "type": "string", + "enum": [ + "arabic", + "armenian", + "basque", + "brazilian", + "bulgarian", + "catalan", + "czech", + "danish", + "dutch", + "english", + "finnish", + "french", + "galician", + "german", + "greek", + "hindi", + "hungarian", + "indonesian", + "irish", + "italian", + "latvian", + "norwegian", + "persian", + "portuguese", + "romanian", + "russian", + "sorani", + "spanish", + "swedish", + "thai", + "turkish" + ], + "x-ms-enum": { + "name": "StopwordsList", + "modelAsString": false + }, + "description": "Identifies a predefined list of language-specific stopwords." + }, + "StopwordsTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StopwordsTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "stopwords": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of stopwords. This property and the stopwords list property cannot both be set." + }, + "stopwordsList": { + "$ref": "#/definitions/StopwordsList", + "default": "english", + "description": "A predefined list of stopwords to use. This property and the stopwords property cannot both be set. Default is English." + }, + "ignoreCase": { + "type": "boolean", + "default": false, + "description": "A value indicating whether to ignore case. If true, all words are converted to lower case first. Default is false." + }, + "removeTrailing": { + "x-ms-client-name": "RemoveTrailingStopWords", + "type": "boolean", + "default": true, + "description": "A value indicating whether to ignore the last search term if it's a stop word. Default is true." + } + }, + "description": "Removes stop words from a token stream. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopFilter.html" + } + }, + "SynonymTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.SynonymTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "synonyms": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of synonyms in following one of two formats: 1. incredible, unbelievable, fabulous => amazing - all terms on the left side of => symbol will be replaced with all terms on its right side; 2. incredible, unbelievable, fabulous, amazing - comma separated list of equivalent words. Set the expand option to change how this list is interpreted." + }, + "ignoreCase": { + "type": "boolean", + "default": false, + "description": "A value indicating whether to case-fold input for matching. Default is false." + }, + "expand": { + "type": "boolean", + "default": true, + "description": "A value indicating whether all words in the list of synonyms (if => notation is not used) will map to one another. If true, all words in the list of synonyms (if => notation is not used) will map to one another. The following list: incredible, unbelievable, fabulous, amazing is equivalent to: incredible, unbelievable, fabulous, amazing => incredible, unbelievable, fabulous, amazing. If false, the following list: incredible, unbelievable, fabulous, amazing will be equivalent to: incredible, unbelievable, fabulous, amazing => incredible. Default is true." + } + }, + "required": [ + "synonyms" + ], + "description": "Matches single or multi-word synonyms in a token stream. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/synonym/SynonymFilter.html" + } + }, + "TruncateTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.TruncateTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "length": { + "type": "integer", + "format": "int32", + "default": 300, + "maximum": 300, + "description": "The length at which terms will be truncated. Default and maximum is 300." + } + }, + "description": "Truncates the terms to a specific length. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TruncateTokenFilter.html" + } + }, + "UniqueTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.UniqueTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "onlyOnSamePosition": { + "type": "boolean", + "default": false, + "description": "A value indicating whether to remove duplicates only at the same position. Default is false." + } + }, + "description": "Filters out tokens with same text as the previous token. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/RemoveDuplicatesTokenFilter.html" + } + }, + "WordDelimiterTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.WordDelimiterTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "generateWordParts": { + "type": "boolean", + "default": true, + "description": "A value indicating whether to generate part words. If set, causes parts of words to be generated; for example \"AzureSearch\" becomes \"Azure\" \"Search\". Default is true." + }, + "generateNumberParts": { + "type": "boolean", + "default": true, + "description": "A value indicating whether to generate number subwords. Default is true." + }, + "catenateWords": { + "type": "boolean", + "default": false, + "description": "A value indicating whether maximum runs of word parts will be catenated. For example, if this is set to true, \"Azure-Search\" becomes \"AzureSearch\". Default is false." + }, + "catenateNumbers": { + "type": "boolean", + "default": false, + "description": "A value indicating whether maximum runs of number parts will be catenated. For example, if this is set to true, \"1-2\" becomes \"12\". Default is false." + }, + "catenateAll": { + "type": "boolean", + "default": false, + "description": "A value indicating whether all subword parts will be catenated. For example, if this is set to true, \"Azure-Search-1\" becomes \"AzureSearch1\". Default is false." + }, + "splitOnCaseChange": { + "type": "boolean", + "default": true, + "description": "A value indicating whether to split words on caseChange. For example, if this is set to true, \"AzureSearch\" becomes \"Azure\" \"Search\". Default is true." + }, + "preserveOriginal": { + "type": "boolean", + "default": false, + "description": "A value indicating whether original words will be preserved and added to the subword list. Default is false." + }, + "splitOnNumerics": { + "type": "boolean", + "default": true, + "description": "A value indicating whether to split on numbers. For example, if this is set to true, \"Azure1Search\" becomes \"Azure\" \"1\" \"Search\". Default is true." + }, + "stemEnglishPossessive": { + "type": "boolean", + "default": true, + "description": "A value indicating whether to remove trailing \"'s\" for each subword. Default is true." + }, + "protectedWords": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of tokens to protect from being delimited." + } + }, + "description": "Splits words into subwords and performs optional transformations on subword groups. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/WordDelimiterFilter.html" + } + }, + "CharFilter": { + "discriminator": "@odata.type", + "properties": { + "@odata.type": { + "type": "string" + }, + "name": { + "type": "string", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/custom-analyzers-in-azure-search#index-attribute-reference" + }, + "description": "The name of the char filter. It must only contain letters, digits, spaces, dashes or underscores, can only start and end with alphanumeric characters, and is limited to 128 characters." + } + }, + "required": [ + "@odata.type", + "name" + ], + "description": "Abstract base class for character filters.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" + } + }, + "MappingCharFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.MappingCharFilter", + "allOf": [ + { + "$ref": "#/definitions/CharFilter" + } + ], + "properties": { + "mappings": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of mappings of the following format: \"a=>b\" (all occurrences of the character \"a\" will be replaced with character \"b\")." + } + }, + "required": [ + "mappings" + ], + "description": "A character filter that applies mappings defined with the mappings option. Matching is greedy (longest pattern matching at a given point wins). Replacement is allowed to be the empty string. This character filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/charfilter/MappingCharFilter.html" + } + }, + "PatternReplaceCharFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternReplaceCharFilter", + "allOf": [ + { + "$ref": "#/definitions/CharFilter" + } + ], + "properties": { + "pattern": { + "type": "string", + "description": "A regular expression pattern." + }, + "replacement": { + "type": "string", + "description": "The replacement text." + } + }, + "required": [ + "pattern", + "replacement" + ], + "description": "A character filter that replaces characters in the input string. It uses a regular expression to identify character sequences to preserve and a replacement pattern to identify characters to replace. For example, given the input text \"aa bb aa bb\", pattern \"(aa)\\s+(bb)\", and replacement \"$1#$2\", the result would be \"aa#bb aa#bb\". This character filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternReplaceCharFilter.html" + } + }, + "DataSourceCredentials": { + "properties": { + "connectionString": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Data-Source" + }, + "type": "string", + "description": "The connection string for the datasource." + } + }, + "description": "Represents credentials that can be used to connect to a datasource." + }, + "DataContainer": { + "properties": { + "name": { + "type": "string", + "description": "The name of the table or view (for Azure SQL data source) or collection (for CosmosDB data source) that will be indexed." + }, + "query": { + "type": "string", + "description": "A query that is applied to this data container. The syntax and meaning of this parameter is datasource-specific. Not supported by Azure SQL datasources." + } + }, + "required": [ + "name" + ], + "description": "Represents information about the entity (such as Azure SQL table or CosmosDB collection) that will be indexed." + }, + "DataChangeDetectionPolicy": { + "discriminator": "@odata.type", + "properties": { + "@odata.type": { + "type": "string" + } + }, + "required": [ + "@odata.type" + ], + "description": "Abstract base class for data change detection policies." + }, + "HighWaterMarkChangeDetectionPolicy": { + "description": "Defines a data change detection policy that captures changes based on the value of a high water mark column.", + "x-ms-discriminator-value": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "allOf": [ + { + "$ref": "#/definitions/DataChangeDetectionPolicy" + } + ], + "properties": { + "highWaterMarkColumnName": { + "type": "string", + "description": "The name of the high water mark column." + } + }, + "required": [ + "highWaterMarkColumnName" + ] + }, + "SqlIntegratedChangeTrackingPolicy": { + "description": "Defines a data change detection policy that captures changes using the Integrated Change Tracking feature of Azure SQL Database.", + "x-ms-discriminator-value": "#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy", + "allOf": [ + { + "$ref": "#/definitions/DataChangeDetectionPolicy" + } + ] + }, + "DataDeletionDetectionPolicy": { + "discriminator": "@odata.type", + "properties": { + "@odata.type": { + "type": "string" + } + }, + "required": [ + "@odata.type" + ], + "description": "Abstract base class for data deletion detection policies." + }, + "SoftDeleteColumnDeletionDetectionPolicy": { + "description": "Defines a data deletion detection policy that implements a soft-deletion strategy. It determines whether an item should be deleted based on the value of a designated 'soft delete' column.", + "x-ms-discriminator-value": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "allOf": [ + { + "$ref": "#/definitions/DataDeletionDetectionPolicy" + } + ], + "properties": { + "softDeleteColumnName": { + "type": "string", + "description": "The name of the column to use for soft-deletion detection." + }, + "softDeleteMarkerValue": { + "type": "string", + "description": "The marker value that identifies an item as deleted." + } + } + }, + "DataSourceType": { + "type": "string", + "enum": [ + "azuresql", + "cosmosdb", + "azureblob", + "azuretable" + ], + "x-ms-enum": { + "name": "DataSourceType", + "modelAsString": true, + "values": [ + { + "value": "azuresql", + "name": "AzureSql" + }, + { + "value": "cosmosdb", + "name": "CosmosDb" + }, + { + "value": "azureblob", + "name": "AzureBlob" + }, + { + "value": "azuretable", + "name": "AzureTable" + } + ] + }, + "description": "Defines the type of a datasource." + }, + "DataSource": { + "properties": { + "name": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Naming-rules" + }, + "type": "string", + "description": "The name of the datasource." + }, + "description": { + "type": "string", + "description": "The description of the datasource." + }, + "type": { + "$ref": "#/definitions/DataSourceType", + "description": "The type of the datasource." + }, + "credentials": { + "$ref": "#/definitions/DataSourceCredentials", + "description": "Credentials for the datasource." + }, + "container": { + "$ref": "#/definitions/DataContainer", + "description": "The data container for the datasource." + }, + "dataChangeDetectionPolicy": { + "$ref": "#/definitions/DataChangeDetectionPolicy", + "description": "The data change detection policy for the datasource." + }, + "dataDeletionDetectionPolicy": { + "$ref": "#/definitions/DataDeletionDetectionPolicy", + "description": "The data deletion detection policy for the datasource." + }, + "@odata.etag": { + "x-ms-client-name": "ETag", + "type": "string", + "description": "The ETag of the DataSource." + } + }, + "required": [ + "name", + "type", + "credentials", + "container" + ], + "description": "Represents a datasource definition, which can be used to configure an indexer." + }, + "ListDataSourcesResult": { + "properties": { + "value": { + "x-ms-client-name": "DataSources", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/DataSource" + }, + "description": "The datasources in the Search service." + } + }, + "description": "Response from a List Datasources request. If successful, it includes the full definitions of all datasources." + }, + "IndexingSchedule": { + "properties": { + "interval": { + "type": "string", + "format": "duration", + "description": "The interval of time between indexer executions." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The time when an indexer should start running." + } + }, + "required": [ + "interval" + ], + "description": "Represents a schedule for indexer execution." + }, + "IndexingParameters": { + "properties": { + "batchSize": { + "type": "integer", + "format": "int32", + "description": "The number of items that are read from the data source and indexed as a single batch in order to improve performance. The default depends on the data source type." + }, + "maxFailedItems": { + "type": "integer", + "format": "int32", + "default": 0, + "description": "The maximum number of items that can fail indexing for indexer execution to still be considered successful. -1 means no limit. Default is 0." + }, + "maxFailedItemsPerBatch": { + "type": "integer", + "format": "int32", + "default": 0, + "description": "The maximum number of items in a single batch that can fail indexing for the batch to still be considered successful. -1 means no limit. Default is 0." + }, + "base64EncodeKeys": { + "type": "boolean", + "default": false, + "description": "Whether indexer will base64-encode all values that are inserted into key field of the target index. This is needed if keys can contain characters that are invalid in keys (such as dot '.'). Default is false." + }, + "configuration": { + "type": "object", + "additionalProperties": { + "type": "object" + }, + "description": "A dictionary of indexer-specific configuration properties. Each name is the name of a specific property. Each value must be of a primitive type." + } + }, + "description": "Represents parameters for indexer execution.", + "x-ms-external": true + }, + "FieldMappingFunction": { + "properties": { + "name": { + "type": "string", + "description": "The name of the field mapping function." + }, + "parameters": { + "type": "object", + "additionalProperties": { + "type": "object" + }, + "description": "A dictionary of parameter name/value pairs to pass to the function. Each value must be of a primitive type." + } + }, + "required": [ + "name" + ], + "description": "Represents a function that transforms a value from a data source before indexing.", + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/search-indexer-field-mappings" + } + }, + "FieldMapping": { + "properties": { + "sourceFieldName": { + "type": "string", + "description": "The name of the field in the data source." + }, + "targetFieldName": { + "type": "string", + "description": "The name of the target field in the index. Same as the source field name by default." + }, + "mappingFunction": { + "$ref": "#/definitions/FieldMappingFunction", + "description": "A function to apply to each source field value before indexing." + } + }, + "required": [ + "sourceFieldName" + ], + "description": "Defines a mapping between a field in a data source and a target field in an index.", + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/search-indexer-field-mappings" + } + }, + "Indexer": { + "properties": { + "name": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Naming-rules" + }, + "type": "string", + "description": "The name of the indexer." + }, + "description": { + "type": "string", + "description": "The description of the indexer." + }, + "dataSourceName": { + "type": "string", + "description": "The name of the datasource from which this indexer reads data." + }, + "skillsetName": { + "type": "string", + "description": "The name of the skillset executing with this indexer." + }, + "targetIndexName": { + "type": "string", + "description": "The name of the index to which this indexer writes data." + }, + "schedule": { + "$ref": "#/definitions/IndexingSchedule", + "description": "The schedule for this indexer." + }, + "parameters": { + "$ref": "#/definitions/IndexingParameters", + "description": "Parameters for indexer execution." + }, + "fieldMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/FieldMapping" + }, + "description": "Defines mappings between fields in the data source and corresponding target fields in the index.", + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/search-indexer-field-mappings" + } + }, + "outputFieldMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/FieldMapping" + }, + "description": "Output field mappings are applied after enrichment and immediately before indexing.", + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/search-indexer-field-mappings" + } + }, + "disabled": { + "x-ms-client-name": "IsDisabled", + "type": "boolean", + "default": false, + "description": "A value indicating whether the indexer is disabled. Default is false." + }, + "@odata.etag": { + "x-ms-client-name": "ETag", + "type": "string", + "description": "The ETag of the Indexer." + } + }, + "required": [ + "name", + "dataSourceName", + "targetIndexName" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Indexer-operations" + }, + "description": "Represents an indexer." + }, + "ListIndexersResult": { + "properties": { + "value": { + "x-ms-client-name": "Indexers", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Indexer" + }, + "description": "The indexers in the Search service." + } + }, + "description": "Response from a List Indexers request. If successful, it includes the full definitions of all indexers." + }, + "ItemError": { + "properties": { + "key": { + "type": "string", + "readOnly": true, + "description": "The key of the item for which indexing failed." + }, + "errorMessage": { + "type": "string", + "readOnly": true, + "description": "The message describing the error that occurred while processing the item." + }, + "statusCode": { + "type": "integer", + "format": "int32", + "x-nullable": false, + "readOnly": true, + "description": "The status code indicating why the indexing operation failed. Possible values include: 400 for a malformed input document, 404 for document not found, 409 for a version conflict, 422 when the index is temporarily unavailable, or 503 for when the service is too busy." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the source at which the error originated. For example, this could refer to a particular skill in the attached skillset. This may not be always available." + }, + "details": { + "type": "string", + "readOnly": true, + "description": "Additional, verbose details about the error to assist in debugging the indexer. This may not be always available." + }, + "documentationLink": { + "type": "string", + "readOnly": true, + "description": "A link to a troubleshooting guide for these classes of errors. This may not be always available." + } + }, + "description": "Represents an item- or document-level indexing error." + }, + "ItemWarning": { + "properties": { + "key": { + "type": "string", + "readOnly": true, + "description": "The key of the item which generated a warning." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The message describing the warning that occurred while processing the item." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the source at which the warning originated. For example, this could refer to a particular skill in the attached skillset. This may not be always available." + }, + "details": { + "type": "string", + "readOnly": true, + "description": "Additional, verbose details about the warning to assist in debugging the indexer. This may not be always available." + }, + "documentationLink": { + "type": "string", + "readOnly": true, + "description": "A link to a troubleshooting guide for these classes of warnings. This may not be always available." + } + }, + "description": "Represents an item-level warning." + }, + "IndexerExecutionResult": { + "properties": { + "status": { + "$ref": "#/definitions/IndexerExecutionStatus", + "readOnly": true, + "description": "The outcome of this indexer execution." + }, + "errorMessage": { + "type": "string", + "readOnly": true, + "description": "The error message indicating the top-level error, if any." + }, + "startTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The start time of this indexer execution." + }, + "endTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The end time of this indexer execution, if the execution has already completed." + }, + "errors": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ItemError" + }, + "description": "The item-level indexing errors." + }, + "warnings": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ItemWarning" + }, + "description": "The item-level indexing warnings." + }, + "itemsProcessed": { + "x-ms-client-name": "ItemCount", + "type": "integer", + "format": "int32", + "x-nullable": false, + "readOnly": true, + "description": "The number of items that were processed during this indexer execution. This includes both successfully processed items and items where indexing was attempted but failed." + }, + "itemsFailed": { + "x-ms-client-name": "FailedItemCount", + "type": "integer", + "format": "int32", + "x-nullable": false, + "readOnly": true, + "description": "The number of items that failed to be indexed during this indexer execution." + }, + "initialTrackingState": { + "type": "string", + "readOnly": true, + "description": "Change tracking state with which an indexer execution started." + }, + "finalTrackingState": { + "type": "string", + "readOnly": true, + "description": "Change tracking state with which an indexer execution finished." + } + }, + "description": "Represents the result of an individual indexer execution." + }, + "IndexerExecutionStatus": { + "type": "string", + "enum": [ + "transientFailure", + "success", + "inProgress", + "reset" + ], + "x-ms-enum": { + "name": "IndexerExecutionStatus" + }, + "x-nullable": false, + "description": "Represents the status of an individual indexer execution." + }, + "IndexerExecutionInfo": { + "properties": { + "status": { + "$ref": "#/definitions/IndexerStatus", + "readOnly": true, + "description": "Overall indexer status." + }, + "lastResult": { + "$ref": "#/definitions/IndexerExecutionResult", + "readOnly": true, + "description": "The result of the most recent or an in-progress indexer execution." + }, + "executionHistory": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/IndexerExecutionResult" + }, + "description": "History of the recent indexer executions, sorted in reverse chronological order." + }, + "limits": { + "$ref": "#/definitions/IndexerLimits", + "readOnly": true, + "description": "The execution limits for the indexer." + } + }, + "description": "Represents the current status and execution history of an indexer." + }, + "IndexerStatus": { + "type": "string", + "enum": [ + "unknown", + "error", + "running" + ], + "x-ms-enum": { + "name": "IndexerStatus" + }, + "x-nullable": false, + "description": "Represents the overall indexer status." + }, + "IndexerLimits": { + "properties": { + "maxRunTime": { + "type": "string", + "format": "duration", + "readOnly": true, + "description": "The maximum duration that the indexer is permitted to run for one execution." + }, + "maxDocumentExtractionSize": { + "type": "number", + "format": "int64", + "readOnly": true, + "description": "The maximum size of a document, in bytes, which will be considered valid for indexing." + }, + "maxDocumentContentCharactersToExtract": { + "type": "number", + "format": "int64", + "readOnly": true, + "description": "The maximum number of characters that will be extracted from a document picked up for indexing." + } + } + }, + "Field": { + "properties": { + "name": { + "type": "string", + "description": "The name of the field, which must be unique within the fields collection of the index or parent field.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Naming-rules" + } + }, + "type": { + "$ref": "#/definitions/DataType", + "description": "The data type of the field.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/supported-data-types" + } + }, + "key": { + "type": "boolean", + "description": "A value indicating whether the field uniquely identifies documents in the index. Exactly one top-level field in each index must be chosen as the key field and it must be of type Edm.String. Key fields can be used to look up documents directly and update or delete specific documents. Default is false for simple fields and null for complex fields." + }, + "retrievable": { + "type": "boolean", + "description": "A value indicating whether the field can be returned in a search result. You can disable this option if you want to use a field (for example, margin) as a filter, sorting, or scoring mechanism but do not want the field to be visible to the end user. This property must be true for key fields, and it must be null for complex fields. This property can be changed on existing fields. Enabling this property does not cause any increase in index storage requirements. Default is true for simple fields and null for complex fields." + }, + "searchable": { + "type": "boolean", + "description": "A value indicating whether the field is full-text searchable. This means it will undergo analysis such as word-breaking during indexing. If you set a searchable field to a value like \"sunny day\", internally it will be split into the individual tokens \"sunny\" and \"day\". This enables full-text searches for these terms. Fields of type Edm.String or Collection(Edm.String) are searchable by default. This property must be false for simple fields of other non-string data types, and it must be null for complex fields. Note: searchable fields consume extra space in your index since Azure Cognitive Search will store an additional tokenized version of the field value for full-text searches. If you want to save space in your index and you don't need a field to be included in searches, set searchable to false." + }, + "filterable": { + "type": "boolean", + "description": "A value indicating whether to enable the field to be referenced in $filter queries. filterable differs from searchable in how strings are handled. Fields of type Edm.String or Collection(Edm.String) that are filterable do not undergo word-breaking, so comparisons are for exact matches only. For example, if you set such a field f to \"sunny day\", $filter=f eq 'sunny' will find no matches, but $filter=f eq 'sunny day' will. This property must be null for complex fields. Default is true for simple fields and null for complex fields." + }, + "sortable": { + "type": "boolean", + "description": "A value indicating whether to enable the field to be referenced in $orderby expressions. By default Azure Cognitive Search sorts results by score, but in many experiences users will want to sort by fields in the documents. A simple field can be sortable only if it is single-valued (it has a single value in the scope of the parent document). Simple collection fields cannot be sortable, since they are multi-valued. Simple sub-fields of complex collections are also multi-valued, and therefore cannot be sortable. This is true whether it's an immediate parent field, or an ancestor field, that's the complex collection. Complex fields cannot be sortable and the sortable property must be null for such fields. The default for sortable is true for single-valued simple fields, false for multi-valued simple fields, and null for complex fields." + }, + "facetable": { + "type": "boolean", + "description": "A value indicating whether to enable the field to be referenced in facet queries. Typically used in a presentation of search results that includes hit count by category (for example, search for digital cameras and see hits by brand, by megapixels, by price, and so on). This property must be null for complex fields. Fields of type Edm.GeographyPoint or Collection(Edm.GeographyPoint) cannot be facetable. Default is true for all other simple fields." + }, + "analyzer": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Language-support" + }, + "$ref": "#/definitions/AnalyzerName", + "description": "The name of the language analyzer to use for the field. This option can be used only with searchable fields and it can't be set together with either searchAnalyzer or indexAnalyzer. Once the analyzer is chosen, it cannot be changed for the field. Must be null for complex fields." + }, + "searchAnalyzer": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Language-support" + }, + "$ref": "#/definitions/AnalyzerName", + "description": "The name of the analyzer used at search time for the field. This option can be used only with searchable fields. It must be set together with indexAnalyzer and it cannot be set together with the analyzer option. This analyzer can be updated on an existing field. Must be null for complex fields." + }, + "indexAnalyzer": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Language-support" + }, + "$ref": "#/definitions/AnalyzerName", + "description": "The name of the analyzer used at indexing time for the field. This option can be used only with searchable fields. It must be set together with searchAnalyzer and it cannot be set together with the analyzer option. Once the analyzer is chosen, it cannot be changed for the field. Must be null for complex fields." + }, + "synonymMaps": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Synonym-Map-operations" + }, + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of the names of synonym maps to associate with this field. This option can be used only with searchable fields. Currently only one synonym map per field is supported. Assigning a synonym map to a field ensures that query terms targeting that field are expanded at query-time using the rules in the synonym map. This attribute can be changed on existing fields. Must be null or an empty collection for complex fields." + }, + "fields": { + "type": "array", + "items": { + "$ref": "#/definitions/Field" + }, + "description": "A list of sub-fields if this is a field of type Edm.ComplexType or Collection(Edm.ComplexType). Must be null or empty for simple fields." + } + }, + "required": [ + "name", + "type" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Index" + }, + "description": "Represents a field in an index definition, which describes the name, data type, and search behavior of a field." + }, + "TextWeights": { + "properties": { + "weights": { + "type": "object", + "additionalProperties": { + "type": "number", + "format": "double", + "x-nullable": false + }, + "description": "The dictionary of per-field weights to boost document scoring. The keys are field names and the values are the weights for each field." + } + }, + "required": [ + "weights" + ], + "description": "Defines weights on index fields for which matches should boost scoring in search queries." + }, + "ScoringFunction": { + "discriminator": "type", + "properties": { + "type": { + "type": "string" + }, + "fieldName": { + "type": "string", + "description": "The name of the field used as input to the scoring function." + }, + "boost": { + "type": "number", + "format": "double", + "description": "A multiplier for the raw score. Must be a positive number not equal to 1.0." + }, + "interpolation": { + "$ref": "#/definitions/ScoringFunctionInterpolation", + "description": "A value indicating how boosting will be interpolated across document scores; defaults to \"Linear\"." + } + }, + "required": [ + "type", + "fieldName", + "boost" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" + }, + "description": "Abstract base class for functions that can modify document scores during ranking." + }, + "DistanceScoringFunction": { + "x-ms-discriminator-value": "distance", + "allOf": [ + { + "$ref": "#/definitions/ScoringFunction" + } + ], + "properties": { + "distance": { + "x-ms-client-name": "Parameters", + "$ref": "#/definitions/DistanceScoringParameters", + "description": "Parameter values for the distance scoring function." + } + }, + "required": [ + "distance" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" + }, + "description": "Defines a function that boosts scores based on distance from a geographic location." + }, + "DistanceScoringParameters": { + "properties": { + "referencePointParameter": { + "type": "string", + "description": "The name of the parameter passed in search queries to specify the reference location." + }, + "boostingDistance": { + "type": "number", + "format": "double", + "description": "The distance in kilometers from the reference location where the boosting range ends." + } + }, + "required": [ + "referencePointParameter", + "boostingDistance" + ], + "description": "Provides parameter values to a distance scoring function." + }, + "FreshnessScoringFunction": { + "x-ms-discriminator-value": "freshness", + "allOf": [ + { + "$ref": "#/definitions/ScoringFunction" + } + ], + "properties": { + "freshness": { + "x-ms-client-name": "Parameters", + "$ref": "#/definitions/FreshnessScoringParameters", + "description": "Parameter values for the freshness scoring function." + } + }, + "required": [ + "freshness" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" + }, + "description": "Defines a function that boosts scores based on the value of a date-time field." + }, + "FreshnessScoringParameters": { + "properties": { + "boostingDuration": { + "type": "string", + "format": "duration", + "description": "The expiration period after which boosting will stop for a particular document." + } + }, + "required": [ + "boostingDuration" + ], + "description": "Provides parameter values to a freshness scoring function." + }, + "MagnitudeScoringFunction": { + "x-ms-discriminator-value": "magnitude", + "allOf": [ + { + "$ref": "#/definitions/ScoringFunction" + } + ], + "properties": { + "magnitude": { + "x-ms-client-name": "Parameters", + "$ref": "#/definitions/MagnitudeScoringParameters", + "description": "Parameter values for the magnitude scoring function." + } + }, + "required": [ + "magnitude" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" + }, + "description": "Defines a function that boosts scores based on the magnitude of a numeric field." + }, + "MagnitudeScoringParameters": { + "properties": { + "boostingRangeStart": { + "type": "number", + "format": "double", + "description": "The field value at which boosting starts." + }, + "boostingRangeEnd": { + "type": "number", + "format": "double", + "description": "The field value at which boosting ends." + }, + "constantBoostBeyondRange": { + "x-ms-client-name": "ShouldBoostBeyondRangeByConstant", + "type": "boolean", + "description": "A value indicating whether to apply a constant boost for field values beyond the range end value; default is false." + } + }, + "required": [ + "boostingRangeStart", + "boostingRangeEnd" + ], + "description": "Provides parameter values to a magnitude scoring function." + }, + "TagScoringFunction": { + "x-ms-discriminator-value": "tag", + "allOf": [ + { + "$ref": "#/definitions/ScoringFunction" + } + ], + "properties": { + "tag": { + "x-ms-client-name": "Parameters", + "$ref": "#/definitions/TagScoringParameters", + "description": "Parameter values for the tag scoring function." + } + }, + "required": [ + "tag" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" + }, + "description": "Defines a function that boosts scores of documents with string values matching a given list of tags." + }, + "TagScoringParameters": { + "properties": { + "tagsParameter": { + "type": "string", + "description": "The name of the parameter passed in search queries to specify the list of tags to compare against the target field." + } + }, + "required": [ + "tagsParameter" + ], + "description": "Provides parameter values to a tag scoring function." + }, + "ScoringFunctionInterpolation": { + "type": "string", + "enum": [ + "linear", + "constant", + "quadratic", + "logarithmic" + ], + "x-ms-enum": { + "name": "ScoringFunctionInterpolation" + }, + "description": "Defines the function used to interpolate score boosting across a range of documents." + }, + "ScoringProfile": { + "properties": { + "name": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Naming-rules" + }, + "type": "string", + "description": "The name of the scoring profile." + }, + "text": { + "x-ms-client-name": "TextWeights", + "$ref": "#/definitions/TextWeights", + "description": "Parameters that boost scoring based on text matches in certain index fields." + }, + "functions": { + "type": "array", + "items": { + "$ref": "#/definitions/ScoringFunction" + }, + "description": "The collection of functions that influence the scoring of documents." + }, + "functionAggregation": { + "$ref": "#/definitions/ScoringFunctionAggregation", + "description": "A value indicating how the results of individual scoring functions should be combined. Defaults to \"Sum\". Ignored if there are no scoring functions." + } + }, + "required": [ + "name" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" + }, + "description": "Defines parameters for a search index that influence scoring in search queries." + }, + "ScoringFunctionAggregation": { + "type": "string", + "enum": [ + "sum", + "average", + "minimum", + "maximum", + "firstMatching" + ], + "x-ms-enum": { + "name": "ScoringFunctionAggregation" + }, + "description": "Defines the aggregation function used to combine the results of all the scoring functions in a scoring profile." + }, + "CorsOptions": { + "properties": { + "allowedOrigins": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of origins from which JavaScript code will be granted access to your index. Can contain a list of hosts of the form {protocol}://{fully-qualified-domain-name}[:{port#}], or a single '*' to allow all origins (not recommended)." + }, + "maxAgeInSeconds": { + "type": "integer", + "format": "int64", + "description": "The duration for which browsers should cache CORS preflight responses. Defaults to 5 minutes." + } + }, + "required": [ + "allowedOrigins" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Index" + }, + "description": "Defines options to control Cross-Origin Resource Sharing (CORS) for an index." + }, + "Suggester": { + "properties": { + "name": { + "type": "string", + "description": "The name of the suggester." + }, + "searchMode": { + "type": "string", + "enum": [ + "analyzingInfixMatching" + ], + "x-ms-enum": { + "name": "searchMode", + "modelAsString": false + }, + "description": "A value indicating the capabilities of the suggester." + }, + "sourceFields": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of field names to which the suggester applies. Each field must be searchable." + } + }, + "required": [ + "name", + "searchMode", + "sourceFields" + ], + "description": "Defines how the Suggest API should apply to a group of fields in the index." + }, + "Index": { + "properties": { + "name": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Naming-rules" + }, + "type": "string", + "description": "The name of the index." + }, + "fields": { + "type": "array", + "items": { + "$ref": "#/definitions/Field" + }, + "description": "The fields of the index." + }, + "scoringProfiles": { + "type": "array", + "items": { + "$ref": "#/definitions/ScoringProfile" + }, + "description": "The scoring profiles for the index." + }, + "defaultScoringProfile": { + "type": "string", + "description": "The name of the scoring profile to use if none is specified in the query. If this property is not set and no scoring profile is specified in the query, then default scoring (tf-idf) will be used." + }, + "corsOptions": { + "$ref": "#/definitions/CorsOptions", + "description": "Options to control Cross-Origin Resource Sharing (CORS) for the index." + }, + "suggesters": { + "type": "array", + "items": { + "$ref": "#/definitions/Suggester" + }, + "description": "The suggesters for the index." + }, + "analyzers": { + "type": "array", + "items": { + "$ref": "#/definitions/Analyzer" + }, + "description": "The analyzers for the index.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" + } + }, + "tokenizers": { + "type": "array", + "items": { + "$ref": "#/definitions/Tokenizer" + }, + "description": "The tokenizers for the index.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" + } + }, + "tokenFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/TokenFilter" + }, + "description": "The token filters for the index.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" + } + }, + "charFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/CharFilter" + }, + "description": "The character filters for the index.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" + } + }, + "@odata.etag": { + "x-ms-client-name": "ETag", + "type": "string", + "description": "The ETag of the index." + } + }, + "required": [ + "name", + "fields" + ], + "description": "Represents a search index definition, which describes the fields and search behavior of an index." + }, + "GetIndexStatisticsResult": { + "properties": { + "documentCount": { + "type": "integer", + "format": "int64", + "x-nullable": false, + "readOnly": true, + "description": "The number of documents in the index." + }, + "storageSize": { + "type": "integer", + "format": "int64", + "x-nullable": false, + "readOnly": true, + "description": "The amount of storage in bytes consumed by the index." + } + }, + "description": "Statistics for a given index. Statistics are collected periodically and are not guaranteed to always be up-to-date." + }, + "ListIndexesResult": { + "properties": { + "value": { + "x-ms-client-name": "Indexes", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Index" + }, + "description": "The indexes in the Search service." + } + }, + "description": "Response from a List Indexes request. If successful, it includes the full definitions of all indexes." + }, + "Skillset": { + "properties": { + "name": { + "type": "string", + "description": "The name of the skillset." + }, + "description": { + "type": "string", + "description": "The description of the skillset." + }, + "skills": { + "type": "array", + "items": { + "$ref": "#/definitions/Skill" + }, + "description": "A list of skills in the skillset." + }, + "cognitiveServices": { + "x-ms-client-name": "CognitiveServicesAccount", + "$ref": "#/definitions/CognitiveServicesAccount", + "description": "Details about cognitive services to be used when running skills." + }, + "@odata.etag": { + "x-ms-client-name": "ETag", + "type": "string", + "description": "The ETag of the skillset." + } + }, + "required": [ + "name", + "description", + "skills" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-tutorial-blob" + }, + "description": "A list of skills." + }, + "CognitiveServicesAccount": { + "discriminator": "@odata.type", + "properties": { + "@odata.type": { + "type": "string" + }, + "description": { + "type": "string" + } + }, + "required": [ + "@odata.type" + ], + "description": "Abstract base class for describing any cognitive service resource attached to the skillset." + }, + "DefaultCognitiveServicesAccount": { + "description": "An empty object that represents the default cognitive service resource for a skillset.", + "x-ms-discriminator-value": "#Microsoft.Azure.Search.DefaultCognitiveServices", + "allOf": [ + { + "$ref": "#/definitions/CognitiveServicesAccount" + } + ] + }, + "CognitiveServicesAccountKey": { + "description": "A cognitive service resource provisioned with a key that is attached to a skillset.", + "x-ms-discriminator-value": "#Microsoft.Azure.Search.CognitiveServicesByKey", + "allOf": [ + { + "$ref": "#/definitions/CognitiveServicesAccount" + } + ], + "properties": { + "key": { + "type": "string" + } + }, + "required": [ + "key" + ] + }, + "Skill": { + "discriminator": "@odata.type", + "properties": { + "@odata.type": { + "type": "string" + }, + "name": { + "type": "string", + "description": "The name of the skill which uniquely identifies it within the skillset. A skill with no name defined will be given a default name of its 1-based index in the skills array, prefixed with the character '#'." + }, + "description": { + "type": "string", + "description": "The description of the skill which describes the inputs, outputs, and usage of the skill." + }, + "context": { + "type": "string", + "description": "Represents the level at which operations take place, such as the document root or document content (for example, /document or /document/content). The default is /document." + }, + "inputs": { + "type": "array", + "items": { + "$ref": "#/definitions/InputFieldMappingEntry" + }, + "description": "Inputs of the skills could be a column in the source data set, or the output of an upstream skill." + }, + "outputs": { + "type": "array", + "items": { + "$ref": "#/definitions/OutputFieldMappingEntry" + }, + "description": "The output of a skill is either a field in a search index, or a value that can be consumed as an input by another skill." + } + }, + "required": [ + "@odata.type", + "inputs", + "outputs" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-predefined-skills" + }, + "description": "Abstract base class for skills." + }, + "InputFieldMappingEntry": { + "properties": { + "name": { + "type": "string", + "description": "The name of the input." + }, + "source": { + "type": "string", + "description": "The source of the input." + }, + "sourceContext": { + "type": "string", + "description": "The source context used for selecting recursive inputs." + }, + "inputs": { + "type": "array", + "items": { + "$ref": "#/definitions/InputFieldMappingEntry" + }, + "description": "The recursive inputs used when creating a complex type." + } + }, + "required": [ + "name" + ], + "description": "Input field mapping for a skill." + }, + "OutputFieldMappingEntry": { + "properties": { + "name": { + "type": "string", + "description": "The name of the output defined by the skill." + }, + "targetName": { + "type": "string", + "description": "The target name of the output. It is optional and default to name." + } + }, + "required": [ + "name" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/naming-rules" + }, + "description": "Output field mapping for a skill." + }, + "ConditionalSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Util.ConditionalSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-conditional" + }, + "description": "A skill that enables scenarios that require a Boolean operation to determine the data to assign to an output." + }, + "KeyPhraseExtractionSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/KeyPhraseExtractionSkillLanguage", + "description": "A value indicating which language code to use. Default is en." + }, + "maxKeyPhraseCount": { + "type": "integer", + "format": "int32", + "x-nullable": true, + "description": "A number indicating how many key phrases to return. If absent, all identified key phrases will be returned." + } + }, + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-keyphrases" + }, + "description": "A skill that uses text analytics for key phrase extraction." + }, + "OcrSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Vision.OcrSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "properties": { + "textExtractionAlgorithm": { + "$ref": "#/definitions/TextExtractionAlgorithm", + "description": "A value indicating which algorithm to use for extracting text. Default is printed." + }, + "defaultLanguageCode": { + "$ref": "#/definitions/OcrSkillLanguage", + "description": "A value indicating which language code to use. Default is en." + }, + "detectOrientation": { + "x-ms-client-name": "ShouldDetectOrientation", + "type": "boolean", + "default": false, + "description": "A value indicating to turn orientation detection on or not. Default is false." + } + }, + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-ocr" + }, + "description": "A skill that extracts text from image files." + }, + "ImageAnalysisSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Vision.ImageAnalysisSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/ImageAnalysisSkillLanguage", + "description": "A value indicating which language code to use. Default is en." + }, + "visualFeatures": { + "type": "array", + "items": { + "$ref": "#/definitions/VisualFeature", + "x-nullable": false + }, + "description": "A list of visual features." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ImageDetail", + "x-nullable": false + }, + "description": "A string indicating which domain-specific details to return." + } + }, + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-image-analysis" + }, + "description": "A skill that analyzes image files. It extracts a rich set of visual features based on the image content." + }, + "LanguageDetectionSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-language-detection" + }, + "description": "A skill that detects the language of input text and reports a single language code for every document submitted on the request. The language code is paired with a score indicating the confidence of the analysis." + }, + "ShaperSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Util.ShaperSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-shaper" + }, + "description": "A skill for reshaping the outputs. It creates a complex type to support composite fields (also known as multipart fields)." + }, + "MergeSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Text.MergeSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "properties": { + "insertPreTag": { + "type": "string", + "default": " ", + "description": "The tag indicates the start of the merged text. By default, the tag is an empty space." + }, + "insertPostTag": { + "type": "string", + "default": " ", + "description": "The tag indicates the end of the merged text. By default, the tag is an empty space." + } + }, + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-textmerger" + }, + "description": "A skill for merging two or more strings into a single unified string, with an optional user-defined delimiter separating each component part." + }, + "EntityRecognitionSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "properties": { + "categories": { + "type": "array", + "items": { + "$ref": "#/definitions/EntityCategory", + "x-nullable": false + }, + "description": "A list of entity categories that should be extracted." + }, + "defaultLanguageCode": { + "$ref": "#/definitions/EntityRecognitionSkillLanguage", + "description": "A value indicating which language code to use. Default is en." + }, + "includeTypelessEntities": { + "type": "boolean", + "x-nullable": true, + "description": "Determines whether or not to include entities which are well known but don't conform to a pre-defined type. If this configuration is not set (default), set to null or set to false, entities which don't conform to one of the pre-defined types will not be surfaced." + }, + "minimumPrecision": { + "type": "number", + "format": "double", + "x-nullable": true, + "description": "A value between 0 and 1 that be used to only include entities whose confidence score is greater than the value specified. If not set (default), or if explicitly set to null, all entities will be included." + } + }, + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-entity-recognition" + }, + "description": "Text analytics entity recognition." + }, + "SentimentSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Text.SentimentSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/SentimentSkillLanguage", + "description": "A value indicating which language code to use. Default is en." + } + }, + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-sentiment" + }, + "description": "Text analytics positive-negative sentiment analysis, scored as a floating point value in a range of zero to 1." + }, + "SplitSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Text.SplitSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/SplitSkillLanguage", + "description": "A value indicating which language code to use. Default is en." + }, + "textSplitMode": { + "$ref": "#/definitions/TextSplitMode", + "x-nullable": false, + "description": "A value indicating which split mode to perform." + }, + "maximumPageLength": { + "type": "integer", + "format": "int32", + "x-nullable": true, + "description": "The desired maximum page length. Default is 10000." + } + }, + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-textsplit" + }, + "description": "A skill to split a string into chunks of text." + }, + "TextTranslationSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Text.TranslationSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "properties": { + "defaultToLanguageCode": { + "$ref": "#/definitions/TextTranslationSkillLanguage", + "description": "The language code to translate documents into for documents that don't specify the to language explicitly. " + }, + "defaultFromLanguageCode": { + "$ref": "#/definitions/TextTranslationSkillLanguage", + "description": "The language code to translate documents from for documents that don't specify the from language explicitly." + }, + "suggestedFrom": { + "$ref": "#/definitions/TextTranslationSkillLanguage", + "description": "The language code to translate documents from when neither the fromLanguageCode input nor the defaultFromLanguageCode parameter are provided, and the automatic language detection is unsuccessful. Default is en." + } + }, + "required": [ + "defaultToLanguageCode" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-text-translation" + }, + "description": "A skill to translate text from one language to another." + }, + "WebApiSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Custom.WebApiSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "properties": { + "uri": { + "type": "string", + "description": "The url for the Web API." + }, + "httpHeaders": { + "$ref": "#/definitions/WebApiHttpHeaders", + "description": "The headers required to make the http request." + }, + "httpMethod": { + "type": "string", + "description": "The method for the http request." + }, + "timeout": { + "type": "string", + "format": "duration", + "description": "The desired timeout for the request. Default is 30 seconds." + }, + "batchSize": { + "type": "integer", + "format": "int32", + "x-nullable": true, + "description": "The desired batch size which indicates number of documents." + }, + "degreeOfParallelism": { + "type": "integer", + "format": "int32", + "x-nullable": true, + "description": "If set, the number of parallel calls that can be made to the Web API." + } + }, + "required": [ + "uri" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-custom-skill-web-api" + }, + "description": "A skill that can call a Web API endpoint, allowing you to extend a skillset by having it call your custom code." + }, + "WebApiHttpHeaders": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A dictionary of http request headers." + }, + "ListSkillsetsResult": { + "properties": { + "value": { + "x-ms-client-name": "Skillsets", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Skillset" + }, + "description": "The skillsets defined in the Search service." + } + }, + "description": "Response from a list Skillset request. If successful, it includes the full definitions of all skillsets." + }, + "TextExtractionAlgorithm": { + "type": "string", + "enum": [ + "printed", + "handwritten" + ], + "x-ms-enum": { + "name": "TextExtractionAlgorithm", + "modelAsString": false + }, + "description": "A value indicating which algorithm to use. Default is printed." + }, + "TextSplitMode": { + "type": "string", + "enum": [ + "pages", + "sentences" + ], + "x-ms-enum": { + "name": "TextSplitMode", + "modelAsString": false + }, + "description": "A value indicating which split mode to perform." + }, + "VisualFeature": { + "type": "string", + "enum": [ + "adult", + "brands", + "categories", + "color", + "description", + "faces", + "imageType", + "objects", + "tags" + ], + "x-ms-enum": { + "name": "VisualFeature", + "modelAsString": false + }, + "description": "The strings indicating what visual feature types to return." + }, + "ImageDetail": { + "type": "string", + "enum": [ + "celebrities", + "landmarks" + ], + "x-ms-enum": { + "name": "ImageDetail", + "modelAsString": false + }, + "description": "A string indicating which domain-specific details to return." + }, + "EntityCategory": { + "type": "string", + "enum": [ + "location", + "organization", + "person", + "quantity", + "datetime", + "url", + "email" + ], + "x-ms-enum": { + "name": "EntityCategory", + "modelAsString": false + }, + "description": "A string indicating what entity categories to return." + }, + "NamedEntityCategory": { + "type": "string", + "enum": [ + "location", + "organization", + "person" + ], + "description": "A string indicating which named entity categories to return.", + "x-ms-external": true + }, + "SentimentSkillLanguage": { + "type": "string", + "enum": [ + "da", + "nl", + "en", + "fi", + "fr", + "de", + "el", + "it", + "no", + "pl", + "pt-PT", + "ru", + "es", + "sv", + "tr" + ], + "x-ms-enum": { + "name": "SentimentSkillLanguage", + "modelAsString": true, + "values": [ + { + "value": "da", + "description": "Danish" + }, + { + "value": "nl", + "description": "Dutch" + }, + { + "value": "en", + "description": "English" + }, + { + "value": "fi", + "description": "Finnish" + }, + { + "value": "fr", + "description": "French" + }, + { + "value": "de", + "description": "German" + }, + { + "value": "el", + "description": "Greek" + }, + { + "value": "it", + "description": "Italian" + }, + { + "value": "no", + "description": "Norwegian (Bokmaal)" + }, + { + "value": "pl", + "description": "Polish" + }, + { + "value": "pt-PT", + "description": "Portuguese (Portugal)" + }, + { + "value": "ru", + "description": "Russian" + }, + { + "value": "es", + "description": "Spanish" + }, + { + "value": "sv", + "description": "Swedish" + }, + { + "value": "tr", + "description": "Turkish" + } + ] + }, + "description": "The language codes supported for input text by SentimentSkill." + }, + "KeyPhraseExtractionSkillLanguage": { + "type": "string", + "enum": [ + "da", + "nl", + "en", + "fi", + "fr", + "de", + "it", + "ja", + "ko", + "no", + "pl", + "pt-PT", + "pt-BR", + "ru", + "es", + "sv" + ], + "x-ms-enum": { + "name": "KeyPhraseExtractionSkillLanguage", + "modelAsString": true, + "values": [ + { + "value": "da", + "description": "Danish" + }, + { + "value": "nl", + "description": "Dutch" + }, + { + "value": "en", + "description": "English" + }, + { + "value": "fi", + "description": "Finnish" + }, + { + "value": "fr", + "description": "French" + }, + { + "value": "de", + "description": "German" + }, + { + "value": "it", + "description": "Italian" + }, + { + "value": "ja", + "description": "Japanese" + }, + { + "value": "ko", + "description": "Korean" + }, + { + "value": "no", + "description": "Norwegian (Bokmaal)" + }, + { + "value": "pl", + "description": "Polish" + }, + { + "value": "pt-PT", + "description": "Portuguese (Portugal)" + }, + { + "value": "pt-BR", + "description": "Portuguese (Brazil)" + }, + { + "value": "ru", + "description": "Russian" + }, + { + "value": "es", + "description": "Spanish" + }, + { + "value": "sv", + "description": "Swedish" + } + ] + }, + "description": "The language codes supported for input text by KeyPhraseExtractionSkill." + }, + "OcrSkillLanguage": { + "type": "string", + "enum": [ + "zh-Hans", + "zh-Hant", + "cs", + "da", + "nl", + "en", + "fi", + "fr", + "de", + "el", + "hu", + "it", + "ja", + "ko", + "nb", + "pl", + "pt", + "ru", + "es", + "sv", + "tr", + "ar", + "ro", + "sr-Cyrl", + "sr-Latn", + "sk" + ], + "x-ms-enum": { + "name": "OcrSkillLanguage", + "modelAsString": true, + "values": [ + { + "value": "zh-Hans", + "description": "Chinese-Simplified" + }, + { + "value": "zh-Hant", + "description": "Chinese-Traditional" + }, + { + "value": "cs", + "description": "Czech" + }, + { + "value": "da", + "description": "Danish" + }, + { + "value": "nl", + "description": "Dutch" + }, + { + "value": "en", + "description": "English" + }, + { + "value": "fi", + "description": "Finnish" + }, + { + "value": "fr", + "description": "French" + }, + { + "value": "de", + "description": "German" + }, + { + "value": "el", + "description": "Greek" + }, + { + "value": "hu", + "description": "Hungarian" + }, + { + "value": "it", + "description": "Italian" + }, + { + "value": "ja", + "description": "Japanese" + }, + { + "value": "ko", + "description": "Korean" + }, + { + "value": "nb", + "description": "Norwegian (Bokmaal)" + }, + { + "value": "pl", + "description": "Polish" + }, + { + "value": "pt", + "description": "Portuguese" + }, + { + "value": "ru", + "description": "Russian" + }, + { + "value": "es", + "description": "Spanish" + }, + { + "value": "sv", + "description": "Swedish" + }, + { + "value": "tr", + "description": "Turkish" + }, + { + "value": "ar", + "description": "Arabic" + }, + { + "value": "ro", + "description": "Romanian" + }, + { + "value": "sr-Cyrl", + "description": "Serbian (Cyrillic, Serbia)" + }, + { + "value": "sr-Latn", + "description": "Serbian (Latin, Serbia)" + }, + { + "value": "sk", + "description": "Slovak" + } + ] + }, + "description": "The language codes supported for input by OcrSkill." + }, + "SplitSkillLanguage": { + "type": "string", + "enum": [ + "da", + "de", + "en", + "es", + "fi", + "fr", + "it", + "ko", + "pt" + ], + "x-ms-enum": { + "name": "SplitSkillLanguage", + "modelAsString": true, + "values": [ + { + "value": "da", + "description": "Danish" + }, + { + "value": "de", + "description": "German" + }, + { + "value": "en", + "description": "English" + }, + { + "value": "es", + "description": "Spanish" + }, + { + "value": "fi", + "description": "Finnish" + }, + { + "value": "fr", + "description": "French" + }, + { + "value": "it", + "description": "Italian" + }, + { + "value": "ko", + "description": "Korean" + }, + { + "value": "pt", + "description": "Portuguese" + } + ] + }, + "description": "The language codes supported for input text by SplitSkill." + }, + "EntityRecognitionSkillLanguage": { + "type": "string", + "enum": [ + "ar", + "cs", + "zh-Hans", + "zh-Hant", + "da", + "nl", + "en", + "fi", + "fr", + "de", + "el", + "hu", + "it", + "ja", + "ko", + "no", + "pl", + "pt-PT", + "pt-BR", + "ru", + "es", + "sv", + "tr" + ], + "x-ms-enum": { + "name": "EntityRecognitionSkillLanguage", + "modelAsString": true, + "values": [ + { + "value": "ar", + "description": "Arabic" + }, + { + "value": "cs", + "description": "Czech" + }, + { + "value": "zh-Hans", + "description": "Chinese-Simplified" + }, + { + "value": "zh-Hant", + "description": "Chinese-Traditional" + }, + { + "value": "da", + "description": "Danish" + }, + { + "value": "nl", + "description": "Dutch" + }, + { + "value": "en", + "description": "English" + }, + { + "value": "fi", + "description": "Finnish" + }, + { + "value": "fr", + "description": "French" + }, + { + "value": "de", + "description": "German" + }, + { + "value": "el", + "description": "Greek" + }, + { + "value": "hu", + "description": "Hungarian" + }, + { + "value": "it", + "description": "Italian" + }, + { + "value": "ja", + "description": "Japanese" + }, + { + "value": "ko", + "description": "Korean" + }, + { + "value": "no", + "description": "Norwegian (Bokmaal)" + }, + { + "value": "pl", + "description": "Polish" + }, + { + "value": "pt-PT", + "description": "Portuguese (Portugal)" + }, + { + "value": "pt-BR", + "description": "Portuguese (Brazil)" + }, + { + "value": "ru", + "description": "Russian" + }, + { + "value": "es", + "description": "Spanish" + }, + { + "value": "sv", + "description": "Swedish" + }, + { + "value": "tr", + "description": "Turkish" + } + ] + }, + "description": "The language codes supported for input text by EntityRecognitionSkill." + }, + "TextTranslationSkillLanguage": { + "type": "string", + "enum": [ + "af", + "ar", + "bn", + "bs", + "bg", + "yue", + "ca", + "zh-Hans", + "zh-Hant", + "hr", + "cs", + "da", + "nl", + "en", + "et", + "fj", + "fil", + "fi", + "fr", + "de", + "el", + "ht", + "he", + "hi", + "mww", + "hu", + "is", + "id", + "it", + "ja", + "sw", + "tlh", + "ko", + "lv", + "lt", + "mg", + "ms", + "mt", + "nb", + "fa", + "pl", + "pt", + "otq", + "ro", + "ru", + "sm", + "sr-Cyrl", + "sr-Latn", + "sk", + "sl", + "es", + "sv", + "ty", + "ta", + "te", + "th", + "to", + "tr", + "uk", + "ur", + "vi", + "cy", + "yua" + ], + "x-ms-enum": { + "name": "TextTranslationSkillLanguage", + "modelAsString": true, + "values": [ + { + "value": "af", + "description": "Afrikaans" + }, + { + "value": "ar", + "description": "Arabic" + }, + { + "value": "bn", + "description": "Bangla" + }, + { + "value": "bs", + "description": "Bosnian (Latin)" + }, + { + "value": "bg", + "description": "Bulgarian" + }, + { + "value": "yue", + "description": "Cantonese (Traditional)" + }, + { + "value": "ca", + "description": "Catalan" + }, + { + "value": "zh-Hans", + "description": "Chinese Simplified" + }, + { + "value": "zh-Hant", + "description": "Chinese Traditional" + }, + { + "value": "hr", + "description": "Croatian" + }, + { + "value": "cs", + "description": "Czech" + }, + { + "value": "da", + "description": "Danish" + }, + { + "value": "nl", + "description": "Dutch" + }, + { + "value": "en", + "description": "English" + }, + { + "value": "et", + "description": "Estonian" + }, + { + "value": "fj", + "description": "Fijian" + }, + { + "value": "fil", + "description": "Filipino" + }, + { + "value": "fi", + "description": "Finnish" + }, + { + "value": "fr", + "description": "French" + }, + { + "value": "de", + "description": "German" + }, + { + "value": "el", + "description": "Greek" + }, + { + "value": "ht", + "description": "Haitian Creole" + }, + { + "value": "he", + "description": "Hebrew" + }, + { + "value": "hi", + "description": "Hindi" + }, + { + "value": "mww", + "description": "Hmong Daw" + }, + { + "value": "hu", + "description": "Hungarian" + }, + { + "value": "is", + "description": "Icelandic" + }, + { + "value": "id", + "description": "Indonesian" + }, + { + "value": "it", + "description": "Italian" + }, + { + "value": "ja", + "description": "Japanese" + }, + { + "value": "sw", + "description": "Kiswahili" + }, + { + "value": "tlh", + "description": "Klingon" + }, + { + "value": "ko", + "description": "Korean" + }, + { + "value": "lv", + "description": "Latvian" + }, + { + "value": "lt", + "description": "Lithuanian" + }, + { + "value": "mg", + "description": "Malagasy" + }, + { + "value": "ms", + "description": "Malay" + }, + { + "value": "mt", + "description": "Maltese" + }, + { + "value": "nb", + "description": "Norwegian" + }, + { + "value": "fa", + "description": "Persian" + }, + { + "value": "pl", + "description": "Polish" + }, + { + "value": "pt", + "description": "Portuguese" + }, + { + "value": "otq", + "description": "Queretaro Otomi" + }, + { + "value": "ro", + "description": "Romanian" + }, + { + "value": "ru", + "description": "Russian" + }, + { + "value": "sm", + "description": "Samoan" + }, + { + "value": "sr-Cyrl", + "description": "Serbian (Cyrillic)" + }, + { + "value": "sr-Latn", + "description": "Serbian (Latin)" + }, + { + "value": "sk", + "description": "Slovak" + }, + { + "value": "sl", + "description": "Slovenian" + }, + { + "value": "es", + "description": "Spanish" + }, + { + "value": "sv", + "description": "Swedish" + }, + { + "value": "ty", + "description": "Tahitian" + }, + { + "value": "ta", + "description": "Tamil" + }, + { + "value": "te", + "description": "Telugu" + }, + { + "value": "th", + "description": "Thai" + }, + { + "value": "to", + "description": "Tongan" + }, + { + "value": "tr", + "description": "Turkish" + }, + { + "value": "uk", + "description": "Ukrainian" + }, + { + "value": "ur", + "description": "Urdu" + }, + { + "value": "vi", + "description": "Vietnamese" + }, + { + "value": "cy", + "description": "Welsh" + }, + { + "value": "yua", + "description": "Yucatec Maya" + } + ] + }, + "description": "The language codes supported for input text by TextTranslationSkill." + }, + "ImageAnalysisSkillLanguage": { + "type": "string", + "enum": [ + "en", + "es", + "ja", + "pt", + "zh" + ], + "x-ms-enum": { + "name": "ImageAnalysisSkillLanguage", + "modelAsString": true, + "values": [ + { + "value": "en", + "description": "English" + }, + { + "value": "es", + "description": "Spanish" + }, + { + "value": "ja", + "description": "Japanese" + }, + { + "value": "pt", + "description": "Portuguese" + }, + { + "value": "zh", + "description": "Chinese" + } + ] + }, + "description": "The language codes supported for input by ImageAnalysisSkill." + }, + "SynonymMap": { + "properties": { + "name": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Naming-rules" + }, + "type": "string", + "description": "The name of the synonym map." + }, + "format": { + "type": "string", + "enum": [ + "solr" + ], + "x-ms-enum": { + "name": "SynonymMapFormat", + "modelAsString": false + }, + "description": "The format of the synonym map. Only the 'solr' format is currently supported." + }, + "synonyms": { + "type": "string", + "description": "A series of synonym rules in the specified synonym map format. The rules must be separated by newlines.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Synonym-Map#SynonymMapFormat" + } + }, + "@odata.etag": { + "x-ms-client-name": "ETag", + "type": "string", + "description": "The ETag of the synonym map." + } + }, + "required": [ + "name", + "format", + "synonyms" + ], + "description": "Represents a synonym map definition." + }, + "ListSynonymMapsResult": { + "properties": { + "value": { + "x-ms-client-name": "SynonymMaps", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SynonymMap" + }, + "description": "The synonym maps in the Search service." + } + }, + "description": "Response from a List SynonymMaps request. If successful, it includes the full definitions of all synonym maps." + }, + "ServiceStatistics": { + "properties": { + "counters": { + "$ref": "#/definitions/ServiceCounters", + "description": "Service level resource counters." + }, + "limits": { + "$ref": "#/definitions/ServiceLimits", + "description": "Service level general limits." + } + }, + "description": "Response from a get service statistics request. If successful, it includes service level counters and limits." + }, + "ServiceCounters": { + "properties": { + "documentCount": { + "x-ms-client-name": "documentCounter", + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of documents across all indexes in the service." + }, + "indexesCount": { + "x-ms-client-name": "indexCounter", + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of indexes." + }, + "indexersCount": { + "x-ms-client-name": "indexerCounter", + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of indexers." + }, + "dataSourcesCount": { + "x-ms-client-name": "dataSourceCounter", + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of data sources." + }, + "storageSize": { + "x-ms-client-name": "storageSizeCounter", + "$ref": "#/definitions/ResourceCounter", + "description": "Total size of used storage in bytes." + }, + "synonymMaps": { + "x-ms-client-name": "synonymMapCounter", + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of synonym maps." + } + }, + "description": "Represents service-level resource counters and quotas." + }, + "ServiceLimits": { + "properties": { + "maxFieldsPerIndex": { + "type": "integer", + "format": "int32", + "x-nullable": true, + "description": "The maximum allowed fields per index." + }, + "maxFieldNestingDepthPerIndex": { + "type": "integer", + "format": "int32", + "x-nullable": true, + "description": "The maximum depth which you can nest sub-fields in an index, including the top-level complex field. For example, a/b/c has a nesting depth of 3." + }, + "maxComplexCollectionFieldsPerIndex": { + "type": "integer", + "format": "int32", + "x-nullable": true, + "description": "The maximum number of fields of type Collection(Edm.ComplexType) allowed in an index." + }, + "maxComplexObjectsInCollectionsPerDocument": { + "type": "integer", + "format": "int32", + "x-nullable": true, + "description": "The maximum number of objects in complex collections allowed per document." + } + }, + "description": "Represents various service level limits." + }, + "ResourceCounter": { + "properties": { + "usage": { + "type": "integer", + "format": "int64", + "x-nullable": false, + "description": "The resource usage amount." + }, + "quota": { + "type": "integer", + "format": "int64", + "x-nullable": true, + "description": "The resource amount quota." + } + }, + "description": "Represents a resource's usage and quota." + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + }, + "ClientRequestIdParameter": { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The tracking ID sent with the request to help with debugging.", + "x-ms-client-request-id": true, + "x-ms-parameter-grouping": { + "name": "request-options" + }, + "x-ms-parameter-location": "method" + }, + "IfMatchParameter": { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "x-ms-parameter-grouping": { + "name": "access-condition" + }, + "x-ms-parameter-location": "method" + }, + "IfNoneMatchParameter": { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "x-ms-parameter-grouping": { + "name": "access-condition" + }, + "x-ms-parameter-location": "method" + }, + "PreferHeaderParameter": { + "name": "Prefer", + "in": "header", + "required": true, + "type": "string", + "enum": [ + "return=representation" + ], + "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", + "x-ms-parameter-location": "method" + }, + "SearchServiceNameParameter": { + "name": "searchServiceName", + "in": "path", + "required": true, + "type": "string", + "x-ms-skip-url-encoding": true, + "description": "The name of the search service.", + "x-ms-parameter-location": "client" + }, + "SearchDnsSuffixParameter": { + "name": "searchDnsSuffix", + "in": "path", + "required": true, + "type": "string", + "default": "search.windows.net", + "x-ms-skip-url-encoding": true, + "description": "The DNS suffix of the search service. The default is search.windows.net.", + "x-ms-parameter-location": "client" + } + } +} diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/preview/2019-05-06-preview/examples/SearchIndexAutocompleteDocumentsGet.json b/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/examples/SearchIndexAutocompleteDocumentsGet.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Data/track1/preview/2019-05-06-preview/examples/SearchIndexAutocompleteDocumentsGet.json rename to specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/examples/SearchIndexAutocompleteDocumentsGet.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/preview/2019-05-06-preview/examples/SearchIndexAutocompleteDocumentsPost.json b/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/examples/SearchIndexAutocompleteDocumentsPost.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Data/track1/preview/2019-05-06-preview/examples/SearchIndexAutocompleteDocumentsPost.json rename to specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/examples/SearchIndexAutocompleteDocumentsPost.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/preview/2019-05-06-preview/examples/SearchIndexCountDocuments.json b/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/examples/SearchIndexCountDocuments.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Data/track1/preview/2019-05-06-preview/examples/SearchIndexCountDocuments.json rename to specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/examples/SearchIndexCountDocuments.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/preview/2019-05-06-preview/examples/SearchIndexGetDocument.json b/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/examples/SearchIndexGetDocument.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Data/track1/preview/2019-05-06-preview/examples/SearchIndexGetDocument.json rename to specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/examples/SearchIndexGetDocument.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/preview/2019-05-06-preview/examples/SearchIndexIndexDocuments.json b/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/examples/SearchIndexIndexDocuments.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Data/track1/preview/2019-05-06-preview/examples/SearchIndexIndexDocuments.json rename to specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/examples/SearchIndexIndexDocuments.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/examples/SearchIndexSearchDocumentsGet.json b/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/examples/SearchIndexSearchDocumentsGet.json new file mode 100644 index 000000000000..d3eff019e3ac --- /dev/null +++ b/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/examples/SearchIndexSearchDocumentsGet.json @@ -0,0 +1,98 @@ +{ + "parameters": { + "searchServiceName": "myservice", + "searchDnsSuffix": "search.windows.net", + "indexName": "myindex", + "api-version": "2019-05-06-Preview", + "$count": true, + "facet": [ + "category,count:10,sort:count" + ], + "$filter": "rating gt 10", + "highlight": [ + "title" + ], + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": 80, + "$orderby": [ + "search.score() desc", + "rating desc" + ], + "queryType": "simple", + "sessionId": "mysessionid", + "featuresMode": "enabled", + "scoringStatistics": "global", + "scoringParameters": [ + "currentLocation--122.123,44.77233" + ], + "scoringProfile": "sp", + "search": "nice hotels", + "searchFields": [ + "title", + "description" + ], + "searchMode": "any", + "$select": [ + "docId", + "title", + "description" + ], + "$skip": 100, + "$top": 10 + }, + "responses": { + "200": { + "body": { + "@odata.count": 25, + "@search.coverage": 80, + "@search.facets": { + "category": [ + { + "count": 1, + "value": "Economy" + }, + { + "count": 1, + "value": "Luxury" + } + ] + }, + "value": [ + { + "@search.score": 1.50, + "@search.highlights": { + "title": [ + "Nice Hotel" + ] + }, + "description": "Cheapest hotel in town", + "docId": "1", + "title": "Nice Hotel" + }, + { + "@search.score": 0.70, + "@search.highlights": { + "title": [ + "Fancy Hotel" + ] + }, + "@search.features": { + "description": { + "uniqueTokenMatches": 1.0, + "similarityScore": 0.023745812 + }, + "title": { + "uniqueTokenMatches": 1.0, + "similarityScore": 0.016049799 + } + }, + "description": "Best hotel in town", + "docId": "2", + "title": "Fancy Hotel" + } + ] + } + } + } +} diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/examples/SearchIndexSearchDocumentsPost.json b/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/examples/SearchIndexSearchDocumentsPost.json new file mode 100644 index 000000000000..c95e8c51acd2 --- /dev/null +++ b/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/examples/SearchIndexSearchDocumentsPost.json @@ -0,0 +1,114 @@ +{ + "parameters": { + "searchServiceName": "myservice", + "searchDnsSuffix": "search.windows.net", + "indexName": "myindex", + "api-version": "2019-05-06-Preview", + "searchRequest": { + "count": true, + "facets": [ + "category,count:10,sort:count" + ], + "filter": "rating gt 4.0", + "highlight": "title", + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": null, + "orderby": "search.score() desc,rating desc", + "queryType": "simple", + "scoringParameters": [ + "currentLocation--122.123,44.77233" + ], + "scoringProfile": "sp", + "search": "nice hotels", + "searchFields": "title,description", + "searchMode": "any", + "sessionId": "mysessionid", + "featuresMode": "enabled", + "scoringStatistics": "global", + "select": "docId,title,description", + "skip": 0, + "top": 10 + } + }, + "responses": { + "200": { + "body": { + "@odata.count": 25, + "@search.facets": { + "category": [ + { + "count": 1, + "value": "Economy" + }, + { + "count": 1, + "value": "Luxury" + } + ] + }, + "@search.nextPageParameters": { + "count": true, + "facets": [ + "category,count:10,sort:count" + ], + "filter": "rating gt 4.0", + "highlight": "title", + "highlightPostTag": "", + "highlightPreTag": "", + "minimumCoverage": null, + "orderby": "search.score() desc,rating desc", + "queryType": "simple", + "sessionId": "mysessionid", + "featuresMode": "enabled", + "scoringStatistics": "global", + "scoringParameters": [ + "currentLocation--122.123,44.77233" + ], + "scoringProfile": "sp", + "search": "nice hotels", + "searchFields": "title,description", + "searchMode": "any", + "select": "docId,title,description", + "skip": 2, + "top": 8 + }, + "value": [ + { + "@search.score": 1.50, + "@search.highlights": { + "title": [ + "Nice Hotel" + ] + }, + "description": "Cheapest hotel in town", + "docId": "1", + "title": "Nice Hotel" + }, + { + "@search.score": 0.70, + "@search.highlights": { + "title": [ + "Fancy Hotel" + ] + }, + "@search.features": { + "description": { + "uniqueTokenMatches": 1.0, + "similarityScore": 0.023745812 + }, + "title": { + "uniqueTokenMatches": 1.0, + "similarityScore": 0.016049799 + } + }, + "description": "Best hotel in town", + "docId": "2", + "title": "Fancy Hotel" + } + ], + "@odata.nextLink": "https://myservice.search.windows.net/indexes('myindex')/docs/search.post.search?api-version=2019-05-06-Preview" + } + } + } +} diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/preview/2019-05-06-preview/examples/SearchIndexSuggestDocumentsGet.json b/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/examples/SearchIndexSuggestDocumentsGet.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Data/track1/preview/2019-05-06-preview/examples/SearchIndexSuggestDocumentsGet.json rename to specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/examples/SearchIndexSuggestDocumentsGet.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/preview/2019-05-06-preview/examples/SearchIndexSuggestDocumentsPost.json b/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/examples/SearchIndexSuggestDocumentsPost.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Data/track1/preview/2019-05-06-preview/examples/SearchIndexSuggestDocumentsPost.json rename to specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/examples/SearchIndexSuggestDocumentsPost.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/searchindex.json b/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/searchindex.json new file mode 100644 index 000000000000..073df28cd754 --- /dev/null +++ b/specification/search/data-plane/Microsoft.Azure.Search.Data/preview/2019-05-06-preview/searchindex.json @@ -0,0 +1,1447 @@ +{ + "swagger": "2.0", + "info": { + "title": "SearchIndexClient", + "description": "Client that can be used to query an index and upload, merge, or delete documents.", + "version": "2019-05-06-Preview", + "x-ms-code-generation-settings": { + "useDateTimeOffset": true, + "syncMethods": "None" + } + }, + "x-ms-parameterized-host": { + "hostTemplate": "https://{searchServiceName}.{searchDnsSuffix}/indexes('{indexName}')", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "$ref": "#/parameters/SearchDnsSuffixParameter" + }, + { + "$ref": "#/parameters/IndexNameParameter" + } + ] + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/docs/$count": { + "get": { + "tags": [ + "Documents" + ], + "operationId": "Documents_Count", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Count-Documents" + }, + "x-ms-examples": { + "SearchIndexCountDocuments": { + "$ref": "./examples/SearchIndexCountDocuments.json" + } + }, + "description": "Queries the number of documents in the index.", + "parameters": [ + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "type": "integer", + "format": "int64" + } + } + } + } + }, + "/docs": { + "get": { + "tags": [ + "Documents" + ], + "operationId": "Documents_SearchGet", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Search-Documents" + }, + "x-ms-examples": { + "SearchIndexSearchDocumentsGet": { + "$ref": "./examples/SearchIndexSearchDocumentsGet.json" + } + }, + "description": "Searches for documents in the index.", + "parameters": [ + { + "name": "search", + "in": "query", + "type": "string", + "description": "A full-text search query expression; Use \"*\" or omit this parameter to match all documents.", + "x-ms-client-name": "SearchText" + }, + { + "name": "$count", + "in": "query", + "type": "boolean", + "description": "A value that specifies whether to fetch the total count of results. Default is false. Setting this value to true may have a performance impact. Note that the count returned is an approximation.", + "x-nullable": false, + "x-ms-client-name": "IncludeTotalResultCount", + "x-ms-parameter-grouping": { + "name": "SearchParameters" + } + }, + { + "name": "facet", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "description": "The list of facet expressions to apply to the search query. Each facet expression contains a field name, optionally followed by a comma-separated list of name:value pairs.", + "x-ms-client-name": "Facets", + "x-ms-parameter-grouping": { + "name": "SearchParameters" + } + }, + { + "name": "$filter", + "in": "query", + "type": "string", + "description": "The OData $filter expression to apply to the search query.", + "x-ms-parameter-grouping": { + "name": "SearchParameters" + } + }, + { + "name": "highlight", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of field names to use for hit highlights. Only searchable fields can be used for hit highlighting.", + "x-ms-client-name": "HighlightFields", + "x-ms-parameter-grouping": { + "name": "SearchParameters" + } + }, + { + "name": "highlightPostTag", + "in": "query", + "type": "string", + "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. Default is </em>.", + "x-ms-parameter-grouping": { + "name": "SearchParameters" + } + }, + { + "name": "highlightPreTag", + "in": "query", + "type": "string", + "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. Default is <em>.", + "x-ms-parameter-grouping": { + "name": "SearchParameters" + } + }, + { + "name": "minimumCoverage", + "in": "query", + "type": "number", + "format": "double", + "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by a search query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 100.", + "x-ms-parameter-grouping": { + "name": "SearchParameters" + } + }, + { + "name": "$orderby", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of OData $orderby expressions by which to sort the results. Each expression can be either a field name or a call to either the geo.distance() or the search.score() functions. Each expression can be followed by asc to indicate ascending, and desc to indicate descending. The default is ascending order. Ties will be broken by the match scores of documents. If no OrderBy is specified, the default sort order is descending by document match score. There can be at most 32 $orderby clauses.", + "x-ms-client-name": "OrderBy", + "x-ms-parameter-grouping": { + "name": "SearchParameters" + } + }, + { + "name": "queryType", + "in": "query", + "type": "string", + "enum": [ + "simple", + "full" + ], + "x-ms-enum": { + "name": "QueryType", + "modelAsString": false + }, + "x-nullable": false, + "description": "A value that specifies the syntax of the search query. The default is 'simple'. Use 'full' if your query uses the Lucene query syntax.", + "x-ms-parameter-grouping": { + "name": "SearchParameters" + } + }, + { + "name": "scoringParameter", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "collectionFormat": "multi", + "x-ms-client-name": "ScoringParameters", + "description": "The list of parameter values to be used in scoring functions (for example, referencePointParameter) using the format name-values. For example, if the scoring profile defines a function with a parameter called 'mylocation' the parameter string would be \"mylocation--122.2,44.8\" (without the quotes).", + "x-ms-parameter-grouping": { + "name": "SearchParameters" + } + }, + { + "name": "scoringProfile", + "in": "query", + "type": "string", + "description": "The name of a scoring profile to evaluate match scores for matching documents in order to sort the results.", + "x-ms-parameter-grouping": { + "name": "SearchParameters" + } + }, + { + "name": "searchFields", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of field names to which to scope the full-text search. When using fielded search (fieldName:searchExpression) in a full Lucene query, the field names of each fielded search expression take precedence over any field names listed in this parameter.", + "x-ms-parameter-grouping": { + "name": "SearchParameters" + } + }, + { + "name": "searchMode", + "in": "query", + "type": "string", + "enum": [ + "any", + "all" + ], + "x-ms-enum": { + "name": "SearchMode", + "modelAsString": false + }, + "x-nullable": false, + "description": "A value that specifies whether any or all of the search terms must be matched in order to count the document as a match.", + "x-ms-parameter-grouping": { + "name": "SearchParameters" + } + }, + { + "name": "featuresMode", + "in": "query", + "type": "string", + "enum": [ + "disabled", + "enabled" + ], + "x-ms-enum": { + "name": "FeaturesMode", + "modelAsString": false + }, + "x-nullable": false, + "description": "A value that specifies whether the results should include scoring features such as per field similarity.", + "x-ms-parameter-grouping": { + "name": "SearchParameters" + } + }, + { + "name": "scoringStatistics", + "in": "query", + "type": "string", + "enum": [ + "local", + "global" + ], + "x-ms-enum": { + "name": "ScoringStatistics", + "modelAsString": false + }, + "x-nullable": false, + "description": "A value that specifies whether we want to calculate scoring statistics (such as document frequency) globally for more consistent scoring, or locally, for lower latency.", + "x-ms-parameter-grouping": { + "name": "SearchParameters" + } + }, + { + "name": "sessionId", + "in": "query", + "type": "string", + "description": "A value to be used to create a sticky session, which can help to get more consistent results. As long as the same sessionId is used, a best-effort attempt will be made to target the same replica set. Be wary that reusing the same sessionID values repeatedly can interfere with the load balancing of the requests across replicas and adversely affect the performance of the search service. The value used as sessionId cannot start with a '_' character.", + "x-ms-parameter-grouping": { + "name": "SearchParameters" + } + }, + { + "name": "$select", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of fields to retrieve. If unspecified, all fields marked as retrievable in the schema are included.", + "x-ms-parameter-grouping": { + "name": "SearchParameters" + } + }, + { + "name": "$skip", + "in": "query", + "type": "integer", + "format": "int32", + "description": "The number of search results to skip. This value cannot be greater than 100,000. If you need to scan documents in sequence, but cannot use $skip due to this limitation, consider using $orderby on a totally-ordered key and $filter with a range query instead.", + "x-ms-parameter-grouping": { + "name": "SearchParameters" + } + }, + { + "name": "$top", + "in": "query", + "type": "integer", + "format": "int32", + "description": "The number of search results to retrieve. This can be used in conjunction with $skip to implement client-side paging of search results. If results are truncated due to server-side paging, the response will include a continuation token that can be used to issue another Search request for the next page of results.", + "x-ms-parameter-grouping": { + "name": "SearchParameters" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "Response containing documents that match the search criteria.", + "schema": { + "$ref": "#/definitions/DocumentSearchResult" + } + } + } + } + }, + "/docs/search.post.search": { + "post": { + "tags": [ + "Documents" + ], + "operationId": "Documents_SearchPost", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Search-Documents" + }, + "x-ms-examples": { + "SearchIndexSearchDocumentsPost": { + "$ref": "./examples/SearchIndexSearchDocumentsPost.json" + } + }, + "description": "Searches for documents in the index.", + "parameters": [ + { + "name": "searchRequest", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SearchRequest", + "description": "The Search request." + }, + "description": "The definition of the Search request." + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "Response containing documents that match the search criteria.", + "schema": { + "$ref": "#/definitions/DocumentSearchResult" + } + } + } + } + }, + "/docs('{key}')": { + "get": { + "tags": [ + "Documents" + ], + "operationId": "Documents_Get", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/lookup-document" + }, + "x-ms-examples": { + "SearchIndexGetDocument": { + "$ref": "./examples/SearchIndexGetDocument.json" + } + }, + "description": "Retrieves a document from the index.", + "parameters": [ + { + "name": "key", + "in": "path", + "required": true, + "description": "The key of the document to retrieve.", + "type": "string" + }, + { + "name": "$select", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "description": "List of field names to retrieve for the document; Any field not retrieved will be missing from the returned document.", + "x-ms-client-name": "SelectedFields" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + } + ], + "responses": { + "200": { + "description": "Response containing the requested document.", + "schema": { + "type": "object" + } + } + } + } + }, + "/docs/search.suggest": { + "get": { + "tags": [ + "Documents" + ], + "operationId": "Documents_SuggestGet", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/suggestions" + }, + "x-ms-examples": { + "SearchIndexSuggestDocumentsGet": { + "$ref": "./examples/SearchIndexSuggestDocumentsGet.json" + } + }, + "description": "Suggests documents in the index that match the given partial query text.", + "parameters": [ + { + "name": "search", + "in": "query", + "required": true, + "type": "string", + "description": "The search text to use to suggest documents. Must be at least 1 character, and no more than 100 characters.", + "x-ms-client-name": "SearchText" + }, + { + "name": "suggesterName", + "in": "query", + "required": true, + "type": "string", + "description": "The name of the suggester as specified in the suggesters collection that's part of the index definition." + }, + { + "name": "$filter", + "in": "query", + "type": "string", + "description": "An OData expression that filters the documents considered for suggestions.", + "x-ms-parameter-grouping": { + "name": "SuggestParameters" + } + }, + { + "name": "fuzzy", + "in": "query", + "type": "boolean", + "description": "A value indicating whether to use fuzzy matching for the suggestions query. Default is false. When set to true, the query will find terms even if there's a substituted or missing character in the search text. While this provides a better experience in some scenarios, it comes at a performance cost as fuzzy suggestions queries are slower and consume more resources.", + "x-ms-client-name": "UseFuzzyMatching", + "x-nullable": false, + "x-ms-parameter-grouping": { + "name": "SuggestParameters" + } + }, + { + "name": "highlightPostTag", + "in": "query", + "type": "string", + "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. If omitted, hit highlighting of suggestions is disabled.", + "x-ms-parameter-grouping": { + "name": "SuggestParameters" + } + }, + { + "name": "highlightPreTag", + "in": "query", + "type": "string", + "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. If omitted, hit highlighting of suggestions is disabled.", + "x-ms-parameter-grouping": { + "name": "SuggestParameters" + } + }, + { + "name": "minimumCoverage", + "in": "query", + "type": "number", + "format": "double", + "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by a suggestions query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 80.", + "x-ms-parameter-grouping": { + "name": "SuggestParameters" + } + }, + { + "name": "$orderby", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "x-ms-client-name": "OrderBy", + "description": "The list of OData $orderby expressions by which to sort the results. Each expression can be either a field name or a call to either the geo.distance() or the search.score() functions. Each expression can be followed by asc to indicate ascending, or desc to indicate descending. The default is ascending order. Ties will be broken by the match scores of documents. If no $orderby is specified, the default sort order is descending by document match score. There can be at most 32 $orderby clauses.", + "x-ms-parameter-grouping": { + "name": "SuggestParameters" + } + }, + { + "name": "searchFields", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of field names to search for the specified search text. Target fields must be included in the specified suggester.", + "x-ms-parameter-grouping": { + "name": "SuggestParameters" + } + }, + { + "name": "$select", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of fields to retrieve. If unspecified, only the key field will be included in the results.", + "x-ms-parameter-grouping": { + "name": "SuggestParameters" + } + }, + { + "name": "$top", + "in": "query", + "type": "integer", + "format": "int32", + "description": "The number of suggestions to retrieve. The value must be a number between 1 and 100. The default is 5.", + "x-ms-parameter-grouping": { + "name": "SuggestParameters" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "Response containing suggested documents that match the partial input.", + "schema": { + "$ref": "#/definitions/DocumentSuggestResult" + } + } + } + } + }, + "/docs/search.post.suggest": { + "post": { + "tags": [ + "Documents" + ], + "operationId": "Documents_SuggestPost", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/suggestions" + }, + "x-ms-examples": { + "SearchIndexSuggestDocumentsPost": { + "$ref": "./examples/SearchIndexSuggestDocumentsPost.json" + } + }, + "description": "Suggests documents in the index that match the given partial query text.", + "parameters": [ + { + "name": "suggestRequest", + "in": "body", + "required": true, + "description": "The Suggest request.", + "schema": { + "$ref": "#/definitions/SuggestRequest" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "Response containing suggested documents that match the partial input.", + "schema": { + "$ref": "#/definitions/DocumentSuggestResult" + } + } + } + } + }, + "/docs/search.index": { + "post": { + "tags": [ + "Documents" + ], + "operationId": "Documents_Index", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/addupdate-or-delete-documents" + }, + "x-ms-examples": { + "SearchIndexIndexDocuments": { + "$ref": "./examples/SearchIndexIndexDocuments.json" + } + }, + "description": "Sends a batch of document write actions to the index.", + "parameters": [ + { + "name": "batch", + "in": "body", + "description": "The batch of index actions.", + "required": true, + "schema": { + "$ref": "#/definitions/IndexBatch" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "Response containing the status of operations for all actions in the batch.", + "schema": { + "$ref": "#/definitions/DocumentIndexResult" + } + }, + "207": { + "description": "Response containing the status of operations for all actions in the batch.", + "schema": { + "$ref": "#/definitions/DocumentIndexResult" + } + } + } + } + }, + "/docs/search.autocomplete": { + "get": { + "tags": [ + "Documents" + ], + "operationId": "Documents_AutocompleteGet", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/autocomplete" + }, + "x-ms-examples": { + "SearchIndexAutocompleteDocumentsGet": { + "$ref": "./examples/SearchIndexAutocompleteDocumentsGet.json" + } + }, + "description": "Autocompletes incomplete query terms based on input text and matching terms in the index.", + "parameters": [ + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "search", + "in": "query", + "type": "string", + "required": true, + "description": "The incomplete term which should be auto-completed.", + "x-ms-client-name": "SearchText" + }, + { + "name": "suggesterName", + "in": "query", + "type": "string", + "required": true, + "description": "The name of the suggester as specified in the suggesters collection that's part of the index definition." + }, + { + "name": "autocompleteMode", + "in": "query", + "type": "string", + "x-nullable": false, + "enum": [ + "oneTerm", + "twoTerms", + "oneTermWithContext" + ], + "x-ms-enum": { + "name": "AutocompleteMode", + "modelAsString": false + }, + "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms' to get shingles and 'oneTermWithContext' to use the current context while producing auto-completed terms.", + "x-ms-parameter-grouping": { + "name": "AutocompleteParameters" + } + }, + { + "name": "$filter", + "in": "query", + "type": "string", + "description": "An OData expression that filters the documents used to produce completed terms for the Autocomplete result.", + "x-ms-parameter-grouping": { + "name": "AutocompleteParameters" + } + }, + { + "name": "fuzzy", + "in": "query", + "type": "boolean", + "description": "A value indicating whether to use fuzzy matching for the autocomplete query. Default is false. When set to true, the query will find terms even if there's a substituted or missing character in the search text. While this provides a better experience in some scenarios, it comes at a performance cost as fuzzy autocomplete queries are slower and consume more resources.", + "x-ms-client-name": "UseFuzzyMatching", + "x-ms-parameter-grouping": { + "name": "AutocompleteParameters" + } + }, + { + "name": "highlightPostTag", + "in": "query", + "type": "string", + "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. If omitted, hit highlighting is disabled.", + "x-ms-parameter-grouping": { + "name": "AutocompleteParameters" + } + }, + { + "name": "highlightPreTag", + "in": "query", + "type": "string", + "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. If omitted, hit highlighting is disabled.", + "x-ms-parameter-grouping": { + "name": "AutocompleteParameters" + } + }, + { + "name": "minimumCoverage", + "in": "query", + "type": "number", + "format": "double", + "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by an autocomplete query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 80.", + "x-ms-parameter-grouping": { + "name": "AutocompleteParameters" + } + }, + { + "name": "searchFields", + "in": "query", + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of field names to consider when querying for auto-completed terms. Target fields must be included in the specified suggester.", + "x-ms-parameter-grouping": { + "name": "AutocompleteParameters" + } + }, + { + "name": "$top", + "in": "query", + "type": "integer", + "format": "int32", + "description": "The number of auto-completed terms to retrieve. This must be a value between 1 and 100. The default is 5.", + "x-ms-parameter-grouping": { + "name": "AutocompleteParameters" + } + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/AutocompleteResult", + "description": "The result of Autocomplete query." + } + } + } + } + }, + "/docs/search.post.autocomplete": { + "post": { + "tags": [ + "Documents" + ], + "operationId": "Documents_AutocompletePost", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/autocomplete" + }, + "x-ms-examples": { + "SearchIndexAutocompleteDocumentsPost": { + "$ref": "./examples/SearchIndexAutocompleteDocumentsPost.json" + } + }, + "description": "Autocompletes incomplete query terms based on input text and matching terms in the index.", + "parameters": [ + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "name": "autocompleteRequest", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AutocompleteRequest" + }, + "description": "The definition of the Autocomplete request." + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/AutocompleteResult", + "description": "The result of Autocomplete query." + } + } + } + } + } + }, + "definitions": { + "DocumentSuggestResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SuggestResult" + }, + "readOnly": true, + "x-ms-client-name": "Results", + "description": "The sequence of results returned by the query." + }, + "@search.coverage": { + "type": "number", + "readOnly": true, + "format": "double", + "x-ms-client-name": "Coverage", + "description": "A value indicating the percentage of the index that was included in the query, or null if minimumCoverage was not set in the request." + } + }, + "description": "Response containing suggestion query results from an index." + }, + "SuggestResult": { + "properties": { + "@search.text": { + "type": "string", + "readOnly": true, + "description": "The text of the suggestion result.", + "x-ms-client-name": "Text" + } + }, + "additionalProperties": true, + "description": "A result containing a document found by a suggestion query, plus associated metadata." + }, + "FacetResult": { + "properties": { + "count": { + "type": "integer", + "format": "int64", + "readOnly": true, + "description": "The approximate count of documents falling within the bucket described by this facet." + } + }, + "additionalProperties": true, + "description": "A single bucket of a facet query result. Reports the number of documents with a field value falling within a particular range or having a particular value or interval." + }, + "SearchFeatures": { + "properties": { + "uniqueTokenMatches": { + "type": "number", + "readOnly": true, + "format": "double", + "description": "The number of unique tokens from the search query that matched this field." + }, + "similarityScore": { + "type": "number", + "readOnly": true, + "format": "double", + "description": "The similarity score computed between the search query and this field." + } + }, + "required": [ + "uniqueTokenMatches", + "similarityScore" + ], + "description": "A list of features describing the scoring of a specific field against the search query." + }, + "DocumentSearchResult": { + "properties": { + "@odata.count": { + "type": "integer", + "format": "int64", + "readOnly": true, + "x-ms-client-name": "Count", + "description": "The total count of results found by the search operation, or null if the count was not requested. If present, the count may be greater than the number of results in this response. This can happen if you use the $top or $skip parameters, or if Azure Cognitive Search can't return all the requested documents in a single Search response." + }, + "@search.coverage": { + "type": "number", + "format": "double", + "readOnly": true, + "x-ms-client-name": "Coverage", + "description": "A value indicating the percentage of the index that was included in the query, or null if minimumCoverage was not specified in the request." + }, + "@search.facets": { + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "$ref": "#/definitions/FacetResult" + } + }, + "readOnly": true, + "x-ms-client-name": "Facets", + "description": "The facet query results for the search operation, organized as a collection of buckets for each faceted field; null if the query did not include any facet expressions." + }, + "@search.nextPageParameters": { + "$ref": "#/definitions/SearchRequest", + "readOnly": true, + "x-ms-client-name": "NextPageParameters", + "description": "Continuation JSON payload returned when Azure Cognitive Search can't return all the requested results in a single Search response. You can use this JSON along with @odata.nextLink to formulate another POST Search request to get the next part of the search response." + }, + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SearchResult" + }, + "readOnly": true, + "x-ms-client-name": "Results", + "description": "The sequence of results returned by the query." + }, + "@odata.nextLink": { + "type": "string", + "readOnly": true, + "x-ms-client-name": "NextLink", + "description": "Continuation URL returned when Azure Cognitive Search can't return all the requested results in a single Search response. You can use this URL to formulate another GET or POST Search request to get the next part of the search response. Make sure to use the same verb (GET or POST) as the request that produced this response." + } + }, + "description": "Response containing search results from an index." + }, + "SearchResult": { + "properties": { + "@search.score": { + "type": "number", + "format": "double", + "readOnly": true, + "x-ms-client-name": "Score", + "x-nullable": false, + "description": "The relevance score of the document compared to other documents returned by the query." + }, + "@search.highlights": { + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + }, + "readOnly": true, + "x-ms-client-name": "Highlights", + "description": "Text fragments from the document that indicate the matching search terms, organized by each applicable field; null if hit highlighting was not enabled for the query." + }, + "@search.features": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/SearchFeatures" + }, + "readOnly": true, + "x-ms-client-name": "Features", + "description": "description for the feature" + } + }, + "additionalProperties": true, + "description": "Contains a document found by a search query, plus associated metadata." + }, + "IndexBatch": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/IndexAction" + }, + "description": "The actions in the batch.", + "x-ms-client-name": "Actions" + } + }, + "required": [ + "value" + ], + "description": "Contains a batch of document write actions to send to the index." + }, + "IndexAction": { + "properties": { + "@search.action": { + "type": "string", + "enum": [ + "upload", + "merge", + "mergeOrUpload", + "delete" + ], + "x-ms-enum": { + "name": "IndexActionType" + }, + "x-ms-client-name": "ActionType", + "x-nullable": false, + "description": "The operation to perform on a document in an indexing batch." + } + }, + "additionalProperties": true, + "description": "Represents an index action that operates on a document." + }, + "IndexingResult": { + "properties": { + "key": { + "type": "string", + "readOnly": true, + "description": "The key of a document that was in the indexing request." + }, + "errorMessage": { + "type": "string", + "readOnly": true, + "description": "The error message explaining why the indexing operation failed for the document identified by the key; null if indexing succeeded." + }, + "status": { + "x-ms-client-name": "Succeeded", + "type": "boolean", + "x-nullable": false, + "readOnly": true, + "description": "A value indicating whether the indexing operation succeeded for the document identified by the key." + }, + "statusCode": { + "type": "integer", + "format": "int32", + "x-nullable": false, + "readOnly": true, + "description": "The status code of the indexing operation. Possible values include: 200 for a successful update or delete, 201 for successful document creation, 400 for a malformed input document, 404 for document not found, 409 for a version conflict, 422 when the index is temporarily unavailable, or 503 for when the service is too busy." + } + }, + "description": "Status of an indexing operation for a single document." + }, + "DocumentIndexResult": { + "properties": { + "value": { + "x-ms-client-name": "Results", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/IndexingResult" + }, + "description": "The list of status information for each document in the indexing request." + } + }, + "description": "Response containing the status of operations for all documents in the indexing request." + }, + "SearchMode": { + "type": "string", + "enum": [ + "any", + "all" + ], + "x-ms-enum": { + "name": "SearchMode", + "modelAsString": false + }, + "description": "Specifies whether any or all of the search terms must be matched in order to count the document as a match." + }, + "QueryType": { + "type": "string", + "enum": [ + "simple", + "full" + ], + "x-ms-enum": { + "name": "QueryType", + "modelAsString": false + }, + "description": "Specifies the syntax of the search query. The default is 'simple'. Use 'full' if your query uses the Lucene query syntax." + }, + "FeaturesMode": { + "type": "string", + "enum": [ + "disabled", + "enabled" + ], + "x-ms-enum": { + "name": "FeaturesMode", + "modelAsString": false + }, + "description": "A value that specifies whether the results should include scoring features, such as per field similarity. The default is 'disabled'. Use 'enabled' to expose additional scoring features." + }, + "ScoringStatistics": { + "type": "string", + "enum": [ + "local", + "global" + ], + "x-ms-enum": { + "name": "ScoringStatistics", + "modelAsString": false + }, + "description": "A value that specifies whether we want to calculate scoring statistics (such as document frequency) globally for more consistent scoring, or locally, for lower latency. The default is 'local'. Use 'global' to aggregate scoring statistics globally before scoring. Using global scoring statistics can increase latency of search queries." + }, + "AutocompleteMode": { + "type": "string", + "enum": [ + "oneTerm", + "twoTerms", + "oneTermWithContext" + ], + "x-ms-enum": { + "name": "AutocompleteMode", + "modelAsString": false + }, + "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms' to get shingles and 'oneTermWithContext' to use the current context in producing autocomplete terms." + }, + "SearchRequest": { + "properties": { + "count": { + "type": "boolean", + "description": "A value that specifies whether to fetch the total count of results. Default is false. Setting this value to true may have a performance impact. Note that the count returned is an approximation.", + "x-ms-client-name": "IncludeTotalResultCount" + }, + "facets": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Search-Documents" + }, + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of facet expressions to apply to the search query. Each facet expression contains a field name, optionally followed by a comma-separated list of name:value pairs." + }, + "filter": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/OData-Expression-Syntax-for-Azure-Search" + }, + "type": "string", + "description": "The OData $filter expression to apply to the search query." + }, + "highlight": { + "type": "string", + "description": "The comma-separated list of field names to use for hit highlights. Only searchable fields can be used for hit highlighting.", + "x-ms-client-name": "HighlightFields" + }, + "highlightPostTag": { + "type": "string", + "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. Default is </em>." + }, + "highlightPreTag": { + "type": "string", + "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. Default is <em>." + }, + "minimumCoverage": { + "type": "number", + "format": "double", + "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by a search query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 100." + }, + "orderby": { + "x-ms-client-name": "OrderBy", + "type": "string", + "description": "The comma-separated list of OData $orderby expressions by which to sort the results. Each expression can be either a field name or a call to either the geo.distance() or the search.score() functions. Each expression can be followed by asc to indicate ascending, or desc to indicate descending. The default is ascending order. Ties will be broken by the match scores of documents. If no $orderby is specified, the default sort order is descending by document match score. There can be at most 32 $orderby clauses." + }, + "queryType": { + "$ref": "#/definitions/QueryType", + "description": "A value that specifies the syntax of the search query. The default is 'simple'. Use 'full' if your query uses the Lucene query syntax." + }, + "featuresMode": { + "$ref": "#/definitions/FeaturesMode", + "description": "A value that specifies whether the results should include scoring features, such as per field similarity. The default is 'disabled'. Use 'enabled' to expose additional scoring features." + }, + "scoringStatistics": { + "$ref": "#/definitions/ScoringStatistics", + "description": "A value that specifies whether we want to calculate scoring statistics (such as document frequency) globally for more consistent scoring, or locally, for lower latency. The default is 'local'. Use 'global' to aggregate scoring statistics globally before scoring. Using global scoring statistics can increase latency of search queries." + }, + "sessionId": { + "type": "string", + "description": "A value to be used to create a sticky session, which can help getting more consistent results. As long as the same sessionId is used, a best-effort attempt will be made to target the same replica set. Be wary that reusing the same sessionID values repeatedly can interfere with the load balancing of the requests across replicas and adversely affect the performance of the search service. The value used as sessionId cannot start with a '_' character." + }, + "scoringParameters": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of parameter values to be used in scoring functions (for example, referencePointParameter) using the format name-values. For example, if the scoring profile defines a function with a parameter called 'mylocation' the parameter string would be \"mylocation--122.2,44.8\" (without the quotes)." + }, + "scoringProfile": { + "type": "string", + "description": "The name of a scoring profile to evaluate match scores for matching documents in order to sort the results." + }, + "search": { + "type": "string", + "description": "A full-text search query expression; Use \"*\" or omit this parameter to match all documents.", + "x-ms-client-name": "SearchText" + }, + "searchFields": { + "type": "string", + "description": "The comma-separated list of field names to which to scope the full-text search. When using fielded search (fieldName:searchExpression) in a full Lucene query, the field names of each fielded search expression take precedence over any field names listed in this parameter." + }, + "searchMode": { + "$ref": "#/definitions/SearchMode", + "description": "A value that specifies whether any or all of the search terms must be matched in order to count the document as a match." + }, + "select": { + "type": "string", + "description": "The comma-separated list of fields to retrieve. If unspecified, all fields marked as retrievable in the schema are included." + }, + "skip": { + "type": "integer", + "format": "int32", + "description": "The number of search results to skip. This value cannot be greater than 100,000. If you need to scan documents in sequence, but cannot use skip due to this limitation, consider using orderby on a totally-ordered key and filter with a range query instead." + }, + "top": { + "type": "integer", + "format": "int32", + "description": "The number of search results to retrieve. This can be used in conjunction with $skip to implement client-side paging of search results. If results are truncated due to server-side paging, the response will include a continuation token that can be used to issue another Search request for the next page of results." + } + }, + "description": "Parameters for filtering, sorting, faceting, paging, and other search query behaviors." + }, + "SuggestRequest": { + "properties": { + "filter": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/OData-Expression-Syntax-for-Azure-Search" + }, + "type": "string", + "description": "An OData expression that filters the documents considered for suggestions." + }, + "fuzzy": { + "type": "boolean", + "description": "A value indicating whether to use fuzzy matching for the suggestion query. Default is false. When set to true, the query will find suggestions even if there's a substituted or missing character in the search text. While this provides a better experience in some scenarios, it comes at a performance cost as fuzzy suggestion searches are slower and consume more resources.", + "x-ms-client-name": "UseFuzzyMatching" + }, + "highlightPostTag": { + "type": "string", + "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. If omitted, hit highlighting of suggestions is disabled." + }, + "highlightPreTag": { + "type": "string", + "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. If omitted, hit highlighting of suggestions is disabled." + }, + "minimumCoverage": { + "type": "number", + "format": "double", + "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by a suggestion query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 80." + }, + "orderby": { + "x-ms-client-name": "OrderBy", + "type": "string", + "description": "The comma-separated list of OData $orderby expressions by which to sort the results. Each expression can be either a field name or a call to either the geo.distance() or the search.score() functions. Each expression can be followed by asc to indicate ascending, or desc to indicate descending. The default is ascending order. Ties will be broken by the match scores of documents. If no $orderby is specified, the default sort order is descending by document match score. There can be at most 32 $orderby clauses." + }, + "search": { + "type": "string", + "description": "The search text to use to suggest documents. Must be at least 1 character, and no more than 100 characters.", + "x-ms-client-name": "SearchText" + }, + "searchFields": { + "type": "string", + "description": "The comma-separated list of field names to search for the specified search text. Target fields must be included in the specified suggester." + }, + "select": { + "type": "string", + "description": "The comma-separated list of fields to retrieve. If unspecified, only the key field will be included in the results." + }, + "suggesterName": { + "type": "string", + "description": "The name of the suggester as specified in the suggesters collection that's part of the index definition." + }, + "top": { + "type": "integer", + "format": "int32", + "description": "The number of suggestions to retrieve. This must be a value between 1 and 100. The default is 5." + } + }, + "description": "Parameters for filtering, sorting, fuzzy matching, and other suggestions query behaviors." + }, + "AutocompleteRequest": { + "properties": { + "search": { + "type": "string", + "description": "The search text on which to base autocomplete results.", + "x-ms-client-name": "SearchText" + }, + "autocompleteMode": { + "$ref": "#/definitions/AutocompleteMode", + "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms' to get shingles and 'oneTermWithContext' to use the current context while producing auto-completed terms." + }, + "filter": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/OData-Expression-Syntax-for-Azure-Search" + }, + "type": "string", + "description": "An OData expression that filters the documents used to produce completed terms for the Autocomplete result." + }, + "fuzzy": { + "type": "boolean", + "description": "A value indicating whether to use fuzzy matching for the autocomplete query. Default is false. When set to true, the query will autocomplete terms even if there's a substituted or missing character in the search text. While this provides a better experience in some scenarios, it comes at a performance cost as fuzzy autocomplete queries are slower and consume more resources.", + "x-ms-client-name": "UseFuzzyMatching" + }, + "highlightPostTag": { + "type": "string", + "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. If omitted, hit highlighting is disabled." + }, + "highlightPreTag": { + "type": "string", + "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. If omitted, hit highlighting is disabled." + }, + "minimumCoverage": { + "type": "number", + "format": "double", + "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by an autocomplete query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 80." + }, + "searchFields": { + "type": "string", + "description": "The comma-separated list of field names to consider when querying for auto-completed terms. Target fields must be included in the specified suggester." + }, + "suggesterName": { + "type": "string", + "description": "The name of the suggester as specified in the suggesters collection that's part of the index definition." + }, + "top": { + "type": "integer", + "format": "int32", + "description": "The number of auto-completed terms to retrieve. This must be a value between 1 and 100. The default is 5." + } + }, + "description": "Parameters for fuzzy matching, and other autocomplete query behaviors." + }, + "AutocompleteResult": { + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/AutocompleteItem" + }, + "description": "The list of returned Autocompleted items.", + "x-ms-client-name": "Results" + } + }, + "description": "The result of Autocomplete query." + }, + "AutocompleteItem": { + "properties": { + "text": { + "type": "string", + "readOnly": true, + "description": "The completed term." + }, + "queryPlusText": { + "type": "string", + "readOnly": true, + "description": "The query along with the completed term." + } + }, + "description": "The result of Autocomplete requests." + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + }, + "ClientRequestIdParameter": { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The tracking ID sent with the request to help with debugging.", + "x-ms-client-request-id": true, + "x-ms-parameter-grouping": { + "name": "search-request-options" + }, + "x-ms-parameter-location": "method" + }, + "SearchServiceNameParameter": { + "name": "searchServiceName", + "in": "path", + "required": true, + "type": "string", + "x-ms-skip-url-encoding": true, + "description": "The name of the search service.", + "x-ms-parameter-location": "client" + }, + "SearchDnsSuffixParameter": { + "name": "searchDnsSuffix", + "in": "path", + "required": true, + "type": "string", + "default": "search.windows.net", + "x-ms-skip-url-encoding": true, + "description": "The DNS suffix of the search service. The default is search.windows.net.", + "x-ms-parameter-location": "client" + }, + "IndexNameParameter": { + "name": "indexName", + "in": "path", + "required": true, + "type": "string", + "x-ms-skip-url-encoding": false, + "description": "The name of the index.", + "x-ms-parameter-location": "client" + } + } +} diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Data/readme.md b/specification/search/data-plane/Microsoft.Azure.Search.Data/readme.md index af6d3830fca2..5db6341a5927 100644 --- a/specification/search/data-plane/Microsoft.Azure.Search.Data/readme.md +++ b/specification/search/data-plane/Microsoft.Azure.Search.Data/readme.md @@ -27,6 +27,16 @@ openapi-type: data-plane tag: package-2019-05 ``` +### Tag: package-2019-05-preview + +These settings apply only when `--tag=package-2019-05-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2019-05-preview' +opt-in-extensible-enums: true +input-file: +- preview/2019-05-06-preview/searchindex.json +``` + ### Tag: package-2019-05 These settings apply only when `--tag=package-2019-05` is specified on the command line. @@ -44,6 +54,7 @@ These settings apply only when `--tag=package-2017-11-preview` is specified on t input-file: - preview/2017-11-11-preview/searchindex.json ``` + ### Tag: package-2017-11 These settings apply only when `--tag=package-2017-11` is specified on the command line. @@ -89,221 +100,13 @@ input-file: - preview/2015-02-28/searchindex.json ``` -### Tag: track1-package-2019-05 - -These settings apply only when `--tag=track1-package-2019-05` is specified on the command line. -It is meant to be used for generating Track 1 .NET SDK only! - -``` yaml $(tag) == 'track1-package-2019-05' -input-file: -- track1/stable/2019-05-06/searchindex.json -``` - -### Tag: track1-package-2019-05-preview - -These settings apply only when `--tag=track1-package-2019-05-preview` is specified on the command line. -It is meant to be used for generating Track 1 .NET SDK only! - -``` yaml $(tag) == 'track1-package-2019-05-preview' -opt-in-extensible-enums: true -input-file: -- track1/preview/2019-05-06-preview/searchindex.json -``` - --- # Code Generation !!! READ THIS !!! -This swagger is ready for C# and Java +This swagger is ready for C# only. !!! READ THIS !!! -## Java - -These settings apply only when `--java` is specified on the command line. -Please also specify `--java-sdks-folder=`. - -``` yaml $(java) -title: SearchIndexRestClient -output-folder: $(java-sdks-folder)/search -namespace: com.azure.search -java: true -sync-methods: none -add-context-parameter: true -generate-client-interfaces: false -license-header: |- - Copyright (c) Microsoft Corporation. All rights reserved. - Licensed under the MIT License. - Code generated by Microsoft (R) AutoRest Code Generator. - Changes may cause incorrect behavior and will be lost if the code is regenerated. - -require: ../autorest-custom-directives.md - -vararg-properties: >- - AutocompleteOptions.searchFields, - SearchOptions.facets, SearchOptions.highlightFields, SearchOptions.orderBy, SearchOptions.scoringParameters, SearchOptions.searchFields, SearchOptions.select, - SuggestOptions.orderBy, SuggestOptions.searchFields, SuggestOptions.select -``` - -### Tweak generated code - -Use the below directives sparingly. Every modification we make in here, we potentially have to replicate for every target language. - -``` yaml $(java) -directive: - # Rename IndexBatch to IndexBatchImpl when processing the API spec - - rename-model: - from: IndexBatch - to: IndexBatchImpl - - # Use Document rather than Map - - from: - - DocumentsImpl.java - - SearchResult.java - where: $ - transform: >- - return $ - .replace(/(package com.azure.search.models;)/g, "$1\nimport com.azure.search.Document;") - .replace(/(package com.azure.search.implementation;)/g, "$1\nimport com.azure.search.Document;") - .replace(/(Map)/g, "Document") - .replace(/(Object)/g, "Document") - - # Use Document rather than Map - - from: SuggestResult.java - where: $ - transform: >- - return $ - .replace(/(import java.util.Map;\n)/g, "import com.azure.search.Document;") - .replace(/(Map)/g, "Document") - - # Enable configuration of RestProxy serializer - - from: DocumentsImpl.java - where: $ - transform: >- - return $ - .replace(/(import com.azure.core.util.serializer.JacksonAdapter;)/g, "$1\nimport com.azure.core.util.serializer.SerializerAdapter;") - .replace(/(@param client the instance of the service client containing this operation class.)/g, "$1\n \* @param serializer the serializer to be used for service client requests.") - .replace(/(public DocumentsImpl\(SearchIndexRestClientImpl client\) {)/g, "public DocumentsImpl(SearchIndexRestClientImpl client, SerializerAdapter serializer) {") - .replace(/(this.service = RestProxy.create\(DocumentsService.class, client.getHttpPipeline\(\)\);)/g, "this.service = RestProxy.create(DocumentsService.class, client.getHttpPipeline(), serializer);") - - # Enable public access to client setters - # Enable configuration of RestProxy serializer - - from: SearchIndexRestClientImpl.java - where: $ - transform: >- - return $ - .replace(/(void setApiVersion)/g, "public void setApiVersion") - .replace(/(void setIndexName)/g, "public void setIndexName") - .replace(/(void setSearchDnsSuffix)/g, "public void setSearchDnsSuffix") - .replace(/(void setSearchServiceName)/g, "public void setSearchServiceName") - .replace(/(package com.azure.search.implementation;)/g, "$1\nimport com.azure.core.util.serializer.SerializerAdapter;") - .replace(/(this\(RestProxy.createDefaultPipeline\(\)\);)/g, "this(RestProxy.createDefaultPipeline(), JacksonAdapter.createDefaultSerializerAdapter());") - .replace(/(@param httpPipeline The HTTP pipeline to send requests through.)/g, "$1\n \* @param serializer the serializer to be used for service client requests.") - .replace(/(public SearchIndexRestClientImpl\(HttpPipeline httpPipeline\) {)/g, "public SearchIndexRestClientImpl(HttpPipeline httpPipeline, SerializerAdapter serializer) {") - .replace(/(this.documents = new DocumentsImpl\(this\);)/g, "this.documents = new DocumentsImpl(this, serializer);") - - # Enable IndexAction to be used as a generic type - # Enable serialization of both POJOs and Maps - - from: IndexAction.java - where: $ - transform: >- - return $ - .replace(/(import com.fasterxml.jackson.annotation.JsonProperty;)/g, "import com.fasterxml.jackson.annotation.JsonAnyGetter;\nimport com.fasterxml.jackson.annotation.JsonIgnore;\n$1\nimport com.fasterxml.jackson.annotation.JsonUnwrapped;\n") - .replace(/(class IndexAction)/g, "$1") - .replace(/(Unmatched properties from the message are deserialized this collection)/g, "The document on which the action will be performed.") - .replace(/(@JsonProperty\(value = ""\))/g, "@JsonUnwrapped") - .replace(/(private Map additionalProperties);/g, "private T document;\n\n @JsonIgnore\n private Map properties;\n\n @JsonAnyGetter\n private Map getParamMap() {\n return properties;\n }") - .replace(/(Get the additionalProperties property: Unmatched properties from the\n\s+\* message are deserialized this collection.)/g, "Get the document on which the action will be performed; Fields other than the key are ignored for delete actions.") - .replace(/(@return the additionalProperties value.)/g, "@return the document value.") - .replace(/(public Map getAdditionalProperties\(\) {\s+return this.additionalProperties;\s+})/g, "public T getDocument() {\n return this.document;\n }") - .replace(/(Set the additionalProperties property: Unmatched properties from the\s+\* message are deserialized this collection.)/g, "Get the document on which the action will be performed; Fields other than the key are ignored for delete actions.") - .replace(/(@param additionalProperties the additionalProperties value to set.)/g, "@param document the document value to set.") - .replace(/(public IndexAction setAdditionalProperties\(Map additionalProperties\) {\s+this.additionalProperties = additionalProperties;\s+return this;\s+})/g, "@SuppressWarnings(\"unchecked\")\n public IndexAction setDocument(T document) {\n if (document instanceof Map) {\n this.properties = (Map) document;\n this.document = null;\n } else {\n this.document = document;\n this.properties = null;\n }\n return this;\n }") - .replace(/(public IndexAction setActionType\(IndexActionType actionType\) {)/g, "public IndexAction setActionType(IndexActionType actionType) {") - - # Enable configuration of RestProxy serializer - - from: SearchIndexRestClientBuilder.java - where: $ - transform: >- - return $ - .replace(/(package com.azure.search.implementation;)/g, "$1\nimport com.azure.core.util.serializer.SerializerAdapter;") - .replace(/(\* The HTTP pipeline to send requests through)/g, "\* The serializer to use for requests\n \*\/\n private SerializerAdapter serializer;\n\n \/\*\*\n \* Sets The serializer to use for requests.\n \*\n \* @param serializer the serializer value.\n \* @return the SearchIndexRestClientBuilder.\n \*\/\n public SearchIndexRestClientBuilder serializer\(SerializerAdapter serializer\) {\n this.serializer = serializer;\n return this;\n }\n\n \/\*\n $1") - .replace(/(new SearchIndexRestClientImpl\(pipeline)/g, "$1, serializer") - .replace(/(this.pipeline = RestProxy.createDefaultPipeline\(\);\s+})/g, "$1\n if \(serializer == null\) {\n this.serializer = JacksonAdapter.createDefaultSerializerAdapter\(\);\n }") - - # Enable IndexBatchImpl to be used as a generic type - - from: IndexBatchImpl.java - where: $ - transform: >- - return $ - .replace(/(public final class IndexBatchImpl)/g, "public class IndexBatchImpl") - .replace(/(private List actions;)/g, "private List> actions;") - .replace(/(public List getActions\(\) {)/g, "public List> getActions() {") - .replace(/(public IndexBatchImpl setActions\(List actions\) {)/g, "protected IndexBatchImpl setActions(List> actions) {") - - # Replace use of generated IndexBatchImpl with custom IndexBatch class - - from: DocumentsImpl.java - where: $ - transform: >- - return $ - .replace(/(IndexBatchImpl)/g, "IndexBatch") - .replace(/(IndexBatch )/g, "IndexBatch ") - .replace(/(Mono indexAsync)/g, " $1") - .replace(/(Mono> index)/g, " $1") - .replace(/(import com.azure.search.implementation.models.IndexBatch)/g, "import com.azure.search.models.IndexBatch") - - # Change get to is - - from: DocumentsImpl.java - where: $ - transform: >- - return $ - .replace(/(get(IncludeTotalResultCount|UseFuzzyMatching))/g, "is$2") - - # Mark IndexingResult as Serializable, for use in IndexBatchException - - from: IndexingResult.java - where: $ - transform: >- - return $ - .replace(/(import com.fasterxml.jackson.annotation.JsonProperty;)/g, "$1\n\nimport java.io.Serializable;") - .replace(/(class IndexingResult {)/g, "class IndexingResult implements Serializable {\n private static final long serialVersionUID = -8604424005271188140L;") - - - from: - - FacetResult.java - where: $ - transform: >- - return $.replace(/(public FacetResult setAdditionalProperties)/g, "FacetResult setAdditionalProperties") - - - from: - - SearchResult.java - where: $ - transform: >- - return $.replace(/(public SearchResult setAdditionalProperties)/g, "SearchResult setAdditionalProperties") - - - from: - - SuggestResult.java - where: $ - transform: >- - return $.replace(/(public SuggestResult setAdditionalProperties)/g, "SuggestResult setAdditionalProperties") - - - from: - - FacetResult.java - - SearchResult.java - - SuggestResult.java - where: $ - transform: >- - return $ - .replace(/(getAdditionalProperties)/g, "getDocument") - .replace(/(setAdditionalProperties)/g, "setDocument") - reason: Provides a better description of the getter/setter for addtionalProperties - - - from: - - SearchResult.java - where: $ - transform: >- - return $ - .replace(/(package com.azure.search.models;)/g, "$1\nimport com.fasterxml.jackson.annotation.JsonIgnore;") - .replace(/(public Document getDocument())/g, "@JsonIgnore\n$1") -``` - ## C# These settings apply only when `--csharp` is specified on the command line. @@ -503,6 +306,7 @@ require: $(this-folder)/../../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/preview/2019-05-06-preview/searchindex.json - $(this-folder)/stable/2019-05-06/searchindex.json - $(this-folder)/preview/2017-11-11-preview/searchindex.json - $(this-folder)/preview/2017-11-11/searchindex.json @@ -510,8 +314,6 @@ input-file: - $(this-folder)/preview/2016-09-01/searchindex.json - $(this-folder)/preview/2015-02-28-preview/searchindex.json - $(this-folder)/preview/2015-02-28/searchindex.json - - $(this-folder)/track1/stable/2019-05-06/searchindex.json - - $(this-folder)/track1/preview/2019-05-06-preview/searchindex.json ``` diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Data/stable/2019-05-06/examples/SearchIndexAutocompleteDocumentsPost.json b/specification/search/data-plane/Microsoft.Azure.Search.Data/stable/2019-05-06/examples/SearchIndexAutocompleteDocumentsPost.json index 5385f71fe1ac..e16b85036391 100644 --- a/specification/search/data-plane/Microsoft.Azure.Search.Data/stable/2019-05-06/examples/SearchIndexAutocompleteDocumentsPost.json +++ b/specification/search/data-plane/Microsoft.Azure.Search.Data/stable/2019-05-06/examples/SearchIndexAutocompleteDocumentsPost.json @@ -3,7 +3,7 @@ "searchServiceName": "myservice", "searchDnsSuffix": "search.windows.net", "indexName": "myindex", - "api-version": "2017-11-11-Preview", + "api-version": "2019-05-06", "autocompleteRequest": { "autocompleteMode": "oneTerm", "search": "washington medic", diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Data/stable/2019-05-06/examples/SearchIndexCountDocuments.json b/specification/search/data-plane/Microsoft.Azure.Search.Data/stable/2019-05-06/examples/SearchIndexCountDocuments.json index 024a9ffcbb2d..d8939b5ad2d9 100644 --- a/specification/search/data-plane/Microsoft.Azure.Search.Data/stable/2019-05-06/examples/SearchIndexCountDocuments.json +++ b/specification/search/data-plane/Microsoft.Azure.Search.Data/stable/2019-05-06/examples/SearchIndexCountDocuments.json @@ -3,7 +3,7 @@ "searchServiceName": "myservice", "searchDnsSuffix": "search.windows.net", "indexName": "myindex", - "api-version": "2017-11-11-Preview" + "api-version": "2019-05-06" }, "responses": { "200": { diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Data/stable/2019-05-06/searchindex.json b/specification/search/data-plane/Microsoft.Azure.Search.Data/stable/2019-05-06/searchindex.json index b946a878fdd9..89a21603827a 100644 --- a/specification/search/data-plane/Microsoft.Azure.Search.Data/stable/2019-05-06/searchindex.json +++ b/specification/search/data-plane/Microsoft.Azure.Search.Data/stable/2019-05-06/searchindex.json @@ -97,7 +97,7 @@ "x-nullable": false, "x-ms-client-name": "IncludeTotalResultCount", "x-ms-parameter-grouping": { - "name": "SearchOptions" + "name": "SearchParameters" } }, { @@ -111,7 +111,7 @@ "description": "The list of facet expressions to apply to the search query. Each facet expression contains a field name, optionally followed by a comma-separated list of name:value pairs.", "x-ms-client-name": "Facets", "x-ms-parameter-grouping": { - "name": "SearchOptions" + "name": "SearchParameters" } }, { @@ -120,7 +120,7 @@ "type": "string", "description": "The OData $filter expression to apply to the search query.", "x-ms-parameter-grouping": { - "name": "SearchOptions" + "name": "SearchParameters" } }, { @@ -133,7 +133,7 @@ "description": "The list of field names to use for hit highlights. Only searchable fields can be used for hit highlighting.", "x-ms-client-name": "HighlightFields", "x-ms-parameter-grouping": { - "name": "SearchOptions" + "name": "SearchParameters" } }, { @@ -142,7 +142,7 @@ "type": "string", "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. Default is </em>.", "x-ms-parameter-grouping": { - "name": "SearchOptions" + "name": "SearchParameters" } }, { @@ -151,7 +151,7 @@ "type": "string", "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. Default is <em>.", "x-ms-parameter-grouping": { - "name": "SearchOptions" + "name": "SearchParameters" } }, { @@ -161,7 +161,7 @@ "format": "double", "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by a search query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 100.", "x-ms-parameter-grouping": { - "name": "SearchOptions" + "name": "SearchParameters" } }, { @@ -174,7 +174,7 @@ "description": "The list of OData $orderby expressions by which to sort the results. Each expression can be either a field name or a call to either the geo.distance() or the search.score() functions. Each expression can be followed by asc to indicate ascending, and desc to indicate descending. The default is ascending order. Ties will be broken by the match scores of documents. If no OrderBy is specified, the default sort order is descending by document match score. There can be at most 32 $orderby clauses.", "x-ms-client-name": "OrderBy", "x-ms-parameter-grouping": { - "name": "SearchOptions" + "name": "SearchParameters" } }, { @@ -192,7 +192,7 @@ "x-nullable": false, "description": "A value that specifies the syntax of the search query. The default is 'simple'. Use 'full' if your query uses the Lucene query syntax.", "x-ms-parameter-grouping": { - "name": "SearchOptions" + "name": "SearchParameters" } }, { @@ -206,7 +206,7 @@ "x-ms-client-name": "ScoringParameters", "description": "The list of parameter values to be used in scoring functions (for example, referencePointParameter) using the format name-values. For example, if the scoring profile defines a function with a parameter called 'mylocation' the parameter string would be \"mylocation--122.2,44.8\" (without the quotes).", "x-ms-parameter-grouping": { - "name": "SearchOptions" + "name": "SearchParameters" } }, { @@ -215,7 +215,7 @@ "type": "string", "description": "The name of a scoring profile to evaluate match scores for matching documents in order to sort the results.", "x-ms-parameter-grouping": { - "name": "SearchOptions" + "name": "SearchParameters" } }, { @@ -227,7 +227,7 @@ }, "description": "The list of field names to which to scope the full-text search. When using fielded search (fieldName:searchExpression) in a full Lucene query, the field names of each fielded search expression take precedence over any field names listed in this parameter.", "x-ms-parameter-grouping": { - "name": "SearchOptions" + "name": "SearchParameters" } }, { @@ -245,7 +245,7 @@ "x-nullable": false, "description": "A value that specifies whether any or all of the search terms must be matched in order to count the document as a match.", "x-ms-parameter-grouping": { - "name": "SearchOptions" + "name": "SearchParameters" } }, { @@ -257,7 +257,7 @@ }, "description": "The list of fields to retrieve. If unspecified, all fields marked as retrievable in the schema are included.", "x-ms-parameter-grouping": { - "name": "SearchOptions" + "name": "SearchParameters" } }, { @@ -267,7 +267,7 @@ "format": "int32", "description": "The number of search results to skip. This value cannot be greater than 100,000. If you need to scan documents in sequence, but cannot use $skip due to this limitation, consider using $orderby on a totally-ordered key and $filter with a range query instead.", "x-ms-parameter-grouping": { - "name": "SearchOptions" + "name": "SearchParameters" } }, { @@ -277,7 +277,7 @@ "format": "int32", "description": "The number of search results to retrieve. This can be used in conjunction with $skip to implement client-side paging of search results. If results are truncated due to server-side paging, the response will include a continuation token that can be used to issue another Search request for the next page of results.", "x-ms-parameter-grouping": { - "name": "SearchOptions" + "name": "SearchParameters" } }, { @@ -292,7 +292,7 @@ "200": { "description": "Response containing documents that match the search criteria.", "schema": { - "$ref": "#/definitions/SearchDocumentsResult" + "$ref": "#/definitions/DocumentSearchResult" } } } @@ -336,7 +336,7 @@ "200": { "description": "Response containing documents that match the search criteria.", "schema": { - "$ref": "#/definitions/SearchDocumentsResult" + "$ref": "#/definitions/DocumentSearchResult" } } } @@ -429,7 +429,7 @@ "type": "string", "description": "An OData expression that filters the documents considered for suggestions.", "x-ms-parameter-grouping": { - "name": "SuggestOptions" + "name": "SuggestParameters" } }, { @@ -440,7 +440,7 @@ "x-ms-client-name": "UseFuzzyMatching", "x-nullable": false, "x-ms-parameter-grouping": { - "name": "SuggestOptions" + "name": "SuggestParameters" } }, { @@ -449,7 +449,7 @@ "type": "string", "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. If omitted, hit highlighting of suggestions is disabled.", "x-ms-parameter-grouping": { - "name": "SuggestOptions" + "name": "SuggestParameters" } }, { @@ -458,7 +458,7 @@ "type": "string", "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. If omitted, hit highlighting of suggestions is disabled.", "x-ms-parameter-grouping": { - "name": "SuggestOptions" + "name": "SuggestParameters" } }, { @@ -468,7 +468,7 @@ "format": "double", "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by a suggestions query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 80.", "x-ms-parameter-grouping": { - "name": "SuggestOptions" + "name": "SuggestParameters" } }, { @@ -481,7 +481,7 @@ "x-ms-client-name": "OrderBy", "description": "The list of OData $orderby expressions by which to sort the results. Each expression can be either a field name or a call to either the geo.distance() or the search.score() functions. Each expression can be followed by asc to indicate ascending, or desc to indicate descending. The default is ascending order. Ties will be broken by the match scores of documents. If no $orderby is specified, the default sort order is descending by document match score. There can be at most 32 $orderby clauses.", "x-ms-parameter-grouping": { - "name": "SuggestOptions" + "name": "SuggestParameters" } }, { @@ -493,7 +493,7 @@ }, "description": "The list of field names to search for the specified search text. Target fields must be included in the specified suggester.", "x-ms-parameter-grouping": { - "name": "SuggestOptions" + "name": "SuggestParameters" } }, { @@ -505,7 +505,7 @@ }, "description": "The list of fields to retrieve. If unspecified, only the key field will be included in the results.", "x-ms-parameter-grouping": { - "name": "SuggestOptions" + "name": "SuggestParameters" } }, { @@ -515,7 +515,7 @@ "format": "int32", "description": "The number of suggestions to retrieve. The value must be a number between 1 and 100. The default is 5.", "x-ms-parameter-grouping": { - "name": "SuggestOptions" + "name": "SuggestParameters" } }, { @@ -530,7 +530,7 @@ "200": { "description": "Response containing suggested documents that match the partial input.", "schema": { - "$ref": "#/definitions/SuggestDocumentsResult" + "$ref": "#/definitions/DocumentSuggestResult" } } } @@ -573,7 +573,7 @@ "200": { "description": "Response containing suggested documents that match the partial input.", "schema": { - "$ref": "#/definitions/SuggestDocumentsResult" + "$ref": "#/definitions/DocumentSuggestResult" } } } @@ -616,13 +616,13 @@ "200": { "description": "Response containing the status of operations for all actions in the batch.", "schema": { - "$ref": "#/definitions/IndexDocumentsResult" + "$ref": "#/definitions/DocumentIndexResult" } }, "207": { "description": "Response containing the status of operations for all actions in the batch.", "schema": { - "$ref": "#/definitions/IndexDocumentsResult" + "$ref": "#/definitions/DocumentIndexResult" } } } @@ -681,7 +681,7 @@ }, "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms' to get shingles and 'oneTermWithContext' to use the current context while producing auto-completed terms.", "x-ms-parameter-grouping": { - "name": "AutocompleteOptions" + "name": "AutocompleteParameters" } }, { @@ -690,7 +690,7 @@ "type": "string", "description": "An OData expression that filters the documents used to produce completed terms for the Autocomplete result.", "x-ms-parameter-grouping": { - "name": "AutocompleteOptions" + "name": "AutocompleteParameters" } }, { @@ -700,7 +700,7 @@ "description": "A value indicating whether to use fuzzy matching for the autocomplete query. Default is false. When set to true, the query will find terms even if there's a substituted or missing character in the search text. While this provides a better experience in some scenarios, it comes at a performance cost as fuzzy autocomplete queries are slower and consume more resources.", "x-ms-client-name": "UseFuzzyMatching", "x-ms-parameter-grouping": { - "name": "AutocompleteOptions" + "name": "AutocompleteParameters" } }, { @@ -709,7 +709,7 @@ "type": "string", "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. If omitted, hit highlighting is disabled.", "x-ms-parameter-grouping": { - "name": "AutocompleteOptions" + "name": "AutocompleteParameters" } }, { @@ -718,7 +718,7 @@ "type": "string", "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. If omitted, hit highlighting is disabled.", "x-ms-parameter-grouping": { - "name": "AutocompleteOptions" + "name": "AutocompleteParameters" } }, { @@ -728,7 +728,7 @@ "format": "double", "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by an autocomplete query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 80.", "x-ms-parameter-grouping": { - "name": "AutocompleteOptions" + "name": "AutocompleteParameters" } }, { @@ -740,7 +740,7 @@ }, "description": "The list of field names to consider when querying for auto-completed terms. Target fields must be included in the specified suggester.", "x-ms-parameter-grouping": { - "name": "AutocompleteOptions" + "name": "AutocompleteParameters" } }, { @@ -750,16 +750,17 @@ "format": "int32", "description": "The number of auto-completed terms to retrieve. This must be a value between 1 and 100. The default is 5.", "x-ms-parameter-grouping": { - "name": "AutocompleteOptions" + "name": "AutocompleteParameters" } } ], "x-ms-request-id": "request-id", "responses": { "200": { - "description": "Response containing suggested query terms that complete the partial input.", + "description": "", "schema": { - "$ref": "#/definitions/AutocompleteResult" + "$ref": "#/definitions/AutocompleteResult", + "description": "The result of Autocomplete query." } } } @@ -800,9 +801,10 @@ "x-ms-request-id": "request-id", "responses": { "200": { - "description": "Response containing suggested query terms that complete the partial input.", + "description": "", "schema": { - "$ref": "#/definitions/AutocompleteResult" + "$ref": "#/definitions/AutocompleteResult", + "description": "The result of Autocomplete query." } } } @@ -810,7 +812,7 @@ } }, "definitions": { - "SuggestDocumentsResult": { + "DocumentSuggestResult": { "properties": { "value": { "type": "array", @@ -855,7 +857,7 @@ "additionalProperties": true, "description": "A single bucket of a facet query result. Reports the number of documents with a field value falling within a particular range or having a particular value or interval." }, - "SearchDocumentsResult": { + "DocumentSearchResult": { "properties": { "@odata.count": { "type": "integer", @@ -999,7 +1001,7 @@ }, "description": "Status of an indexing operation for a single document." }, - "IndexDocumentsResult": { + "DocumentIndexResult": { "properties": { "value": { "x-ms-client-name": "Results", @@ -1253,13 +1255,6 @@ }, "AutocompleteResult": { "properties": { - "@search.coverage": { - "type": "number", - "format": "double", - "readOnly": true, - "x-ms-client-name": "Coverage", - "description": "A value indicating the percentage of the index that was considered by the autocomplete request, or null if minimumCoverage was not specified in the request." - }, "value": { "type": "array", "readOnly": true, @@ -1305,7 +1300,7 @@ "description": "The tracking ID sent with the request to help with debugging.", "x-ms-client-request-id": true, "x-ms-parameter-grouping": { - "name": "request-options" + "name": "search-request-options" }, "x-ms-parameter-location": "method" }, diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/preview/2019-05-06-preview/examples/SearchIndexSearchDocumentsGet.json b/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/preview/2019-05-06-preview/examples/SearchIndexSearchDocumentsGet.json deleted file mode 100644 index 0bc9ad4e6522..000000000000 --- a/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/preview/2019-05-06-preview/examples/SearchIndexSearchDocumentsGet.json +++ /dev/null @@ -1,85 +0,0 @@ -{ - "parameters": { - "searchServiceName": "myservice", - "searchDnsSuffix": "search.windows.net", - "indexName": "myindex", - "api-version": "2019-05-06-Preview", - "$count": true, - "facet": [ - "category,count:10,sort:count" - ], - "$filter": "rating gt 10", - "highlight": [ - "title" - ], - "highlightPostTag": "", - "highlightPreTag": "", - "minimumCoverage": 80, - "$orderby": [ - "search.score() desc", - "rating desc" - ], - "queryType": "simple", - "scoringParameters": [ - "currentLocation--122.123,44.77233" - ], - "scoringProfile": "sp", - "search": "nice hotels", - "searchFields": [ - "title", - "description" - ], - "searchMode": "any", - "$select": [ - "docId", - "title", - "description" - ], - "$skip": 100, - "$top": 10 - }, - "responses": { - "200": { - "body": { - "@odata.count": 25, - "@search.coverage": 80, - "@search.facets": { - "category": [ - { - "count": 1, - "value": "Economy" - }, - { - "count": 1, - "value": "Luxury" - } - ] - }, - "value": [ - { - "@search.score": 1.50, - "@search.highlights": { - "title": [ - "Nice Hotel" - ] - }, - "description": "Cheapest hotel in town", - "docId": "1", - "title": "Nice Hotel" - }, - { - "@search.score": 0.70, - "@search.highlights": { - "title": [ - "Fancy Hotel" - ] - }, - "description": "Best hotel in town", - "docId": "2", - "title": "Fancy Hotel" - } - ] - } - } - } -} diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/preview/2019-05-06-preview/examples/SearchIndexSearchDocumentsPost.json b/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/preview/2019-05-06-preview/examples/SearchIndexSearchDocumentsPost.json deleted file mode 100644 index 732a0a19680a..000000000000 --- a/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/preview/2019-05-06-preview/examples/SearchIndexSearchDocumentsPost.json +++ /dev/null @@ -1,98 +0,0 @@ -{ - "parameters": { - "searchServiceName": "myservice", - "searchDnsSuffix": "search.windows.net", - "indexName": "myindex", - "api-version": "2019-05-06-Preview", - "searchRequest": { - "count": true, - "facets": [ - "category,count:10,sort:count" - ], - "filter": "rating gt 4.0", - "highlight": "title", - "highlightPostTag": "", - "highlightPreTag": "", - "minimumCoverage": null, - "orderby": "search.score() desc,rating desc", - "queryType": "simple", - "scoringParameters": [ - "currentLocation--122.123,44.77233" - ], - "scoringProfile": "sp", - "search": "nice hotels", - "searchFields": "title,description", - "searchMode": "any", - "select": "docId,title,description", - "skip": 0, - "top": 10 - } - }, - "responses": { - "200": { - "body": { - "@odata.count": 25, - "@search.facets": { - "category": [ - { - "count": 1, - "value": "Economy" - }, - { - "count": 1, - "value": "Luxury" - } - ] - }, - "@search.nextPageParameters": { - "count": true, - "facets": [ - "category,count:10,sort:count" - ], - "filter": "rating gt 4.0", - "highlight": "title", - "highlightPostTag": "", - "highlightPreTag": "", - "minimumCoverage": null, - "orderby": "search.score() desc,rating desc", - "queryType": "simple", - "scoringParameters": [ - "currentLocation--122.123,44.77233" - ], - "scoringProfile": "sp", - "search": "nice hotels", - "searchFields": "title,description", - "searchMode": "any", - "select": "docId,title,description", - "skip": 2, - "top": 8 - }, - "value": [ - { - "@search.score": 1.50, - "@search.highlights": { - "title": [ - "Nice Hotel" - ] - }, - "description": "Cheapest hotel in town", - "docId": "1", - "title": "Nice Hotel" - }, - { - "@search.score": 0.70, - "@search.highlights": { - "title": [ - "Fancy Hotel" - ] - }, - "description": "Best hotel in town", - "docId": "2", - "title": "Fancy Hotel" - } - ], - "@odata.nextLink": "https://myservice.search.windows.net/indexes('myindex')/docs/search.post.search?api-version=2019-05-06-Preview" - } - } - } -} diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/preview/2019-05-06-preview/searchindex.json b/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/preview/2019-05-06-preview/searchindex.json deleted file mode 100644 index b1cc8cbb9aac..000000000000 --- a/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/preview/2019-05-06-preview/searchindex.json +++ /dev/null @@ -1,1336 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "SearchIndexClient", - "description": "Client that can be used to query an index and upload, merge, or delete documents.", - "version": "2019-05-06-Preview", - "x-ms-code-generation-settings": { - "useDateTimeOffset": true, - "syncMethods": "None" - } - }, - "x-ms-parameterized-host": { - "hostTemplate": "https://{searchServiceName}.{searchDnsSuffix}/indexes('{indexName}')", - "useSchemePrefix": false, - "parameters": [ - { - "$ref": "#/parameters/SearchServiceNameParameter" - }, - { - "$ref": "#/parameters/SearchDnsSuffixParameter" - }, - { - "$ref": "#/parameters/IndexNameParameter" - } - ] - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": { - "/docs/$count": { - "get": { - "tags": [ - "Documents" - ], - "operationId": "Documents_Count", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Count-Documents" - }, - "x-ms-examples": { - "SearchIndexCountDocuments": { - "$ref": "./examples/SearchIndexCountDocuments.json" - } - }, - "description": "Queries the number of documents in the index.", - "parameters": [ - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "type": "integer", - "format": "int64" - } - } - } - } - }, - "/docs": { - "get": { - "tags": [ - "Documents" - ], - "operationId": "Documents_SearchGet", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Search-Documents" - }, - "x-ms-examples": { - "SearchIndexSearchDocumentsGet": { - "$ref": "./examples/SearchIndexSearchDocumentsGet.json" - } - }, - "description": "Searches for documents in the index.", - "parameters": [ - { - "name": "search", - "in": "query", - "type": "string", - "description": "A full-text search query expression; Use \"*\" or omit this parameter to match all documents.", - "x-ms-client-name": "SearchText" - }, - { - "name": "$count", - "in": "query", - "type": "boolean", - "description": "A value that specifies whether to fetch the total count of results. Default is false. Setting this value to true may have a performance impact. Note that the count returned is an approximation.", - "x-nullable": false, - "x-ms-client-name": "IncludeTotalResultCount", - "x-ms-parameter-grouping": { - "name": "SearchParameters" - } - }, - { - "name": "facet", - "in": "query", - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "multi", - "description": "The list of facet expressions to apply to the search query. Each facet expression contains a field name, optionally followed by a comma-separated list of name:value pairs.", - "x-ms-client-name": "Facets", - "x-ms-parameter-grouping": { - "name": "SearchParameters" - } - }, - { - "name": "$filter", - "in": "query", - "type": "string", - "description": "The OData $filter expression to apply to the search query.", - "x-ms-parameter-grouping": { - "name": "SearchParameters" - } - }, - { - "name": "highlight", - "in": "query", - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of field names to use for hit highlights. Only searchable fields can be used for hit highlighting.", - "x-ms-client-name": "HighlightFields", - "x-ms-parameter-grouping": { - "name": "SearchParameters" - } - }, - { - "name": "highlightPostTag", - "in": "query", - "type": "string", - "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. Default is </em>.", - "x-ms-parameter-grouping": { - "name": "SearchParameters" - } - }, - { - "name": "highlightPreTag", - "in": "query", - "type": "string", - "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. Default is <em>.", - "x-ms-parameter-grouping": { - "name": "SearchParameters" - } - }, - { - "name": "minimumCoverage", - "in": "query", - "type": "number", - "format": "double", - "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by a search query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 100.", - "x-ms-parameter-grouping": { - "name": "SearchParameters" - } - }, - { - "name": "$orderby", - "in": "query", - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of OData $orderby expressions by which to sort the results. Each expression can be either a field name or a call to either the geo.distance() or the search.score() functions. Each expression can be followed by asc to indicate ascending, and desc to indicate descending. The default is ascending order. Ties will be broken by the match scores of documents. If no OrderBy is specified, the default sort order is descending by document match score. There can be at most 32 $orderby clauses.", - "x-ms-client-name": "OrderBy", - "x-ms-parameter-grouping": { - "name": "SearchParameters" - } - }, - { - "name": "queryType", - "in": "query", - "type": "string", - "enum": [ - "simple", - "full" - ], - "x-ms-enum": { - "name": "QueryType", - "modelAsString": false - }, - "x-nullable": false, - "description": "A value that specifies the syntax of the search query. The default is 'simple'. Use 'full' if your query uses the Lucene query syntax.", - "x-ms-parameter-grouping": { - "name": "SearchParameters" - } - }, - { - "name": "scoringParameter", - "in": "query", - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "multi", - "x-ms-client-name": "ScoringParameters", - "description": "The list of parameter values to be used in scoring functions (for example, referencePointParameter) using the format name-values. For example, if the scoring profile defines a function with a parameter called 'mylocation' the parameter string would be \"mylocation--122.2,44.8\" (without the quotes).", - "x-ms-parameter-grouping": { - "name": "SearchParameters" - } - }, - { - "name": "scoringProfile", - "in": "query", - "type": "string", - "description": "The name of a scoring profile to evaluate match scores for matching documents in order to sort the results.", - "x-ms-parameter-grouping": { - "name": "SearchParameters" - } - }, - { - "name": "searchFields", - "in": "query", - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of field names to which to scope the full-text search. When using fielded search (fieldName:searchExpression) in a full Lucene query, the field names of each fielded search expression take precedence over any field names listed in this parameter.", - "x-ms-parameter-grouping": { - "name": "SearchParameters" - } - }, - { - "name": "searchMode", - "in": "query", - "type": "string", - "enum": [ - "any", - "all" - ], - "x-ms-enum": { - "name": "SearchMode", - "modelAsString": false - }, - "x-nullable": false, - "description": "A value that specifies whether any or all of the search terms must be matched in order to count the document as a match.", - "x-ms-parameter-grouping": { - "name": "SearchParameters" - } - }, - { - "name": "$select", - "in": "query", - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of fields to retrieve. If unspecified, all fields marked as retrievable in the schema are included.", - "x-ms-parameter-grouping": { - "name": "SearchParameters" - } - }, - { - "name": "$skip", - "in": "query", - "type": "integer", - "format": "int32", - "description": "The number of search results to skip. This value cannot be greater than 100,000. If you need to scan documents in sequence, but cannot use $skip due to this limitation, consider using $orderby on a totally-ordered key and $filter with a range query instead.", - "x-ms-parameter-grouping": { - "name": "SearchParameters" - } - }, - { - "name": "$top", - "in": "query", - "type": "integer", - "format": "int32", - "description": "The number of search results to retrieve. This can be used in conjunction with $skip to implement client-side paging of search results. If results are truncated due to server-side paging, the response will include a continuation token that can be used to issue another Search request for the next page of results.", - "x-ms-parameter-grouping": { - "name": "SearchParameters" - } - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "Response containing documents that match the search criteria.", - "schema": { - "$ref": "#/definitions/DocumentSearchResult" - } - } - } - } - }, - "/docs/search.post.search": { - "post": { - "tags": [ - "Documents" - ], - "operationId": "Documents_SearchPost", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Search-Documents" - }, - "x-ms-examples": { - "SearchIndexSearchDocumentsPost": { - "$ref": "./examples/SearchIndexSearchDocumentsPost.json" - } - }, - "description": "Searches for documents in the index.", - "parameters": [ - { - "name": "searchRequest", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/SearchRequest", - "description": "The Search request." - }, - "description": "The definition of the Search request." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "Response containing documents that match the search criteria.", - "schema": { - "$ref": "#/definitions/DocumentSearchResult" - } - } - } - } - }, - "/docs('{key}')": { - "get": { - "tags": [ - "Documents" - ], - "operationId": "Documents_Get", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/lookup-document" - }, - "x-ms-examples": { - "SearchIndexGetDocument": { - "$ref": "./examples/SearchIndexGetDocument.json" - } - }, - "description": "Retrieves a document from the index.", - "parameters": [ - { - "name": "key", - "in": "path", - "required": true, - "description": "The key of the document to retrieve.", - "type": "string" - }, - { - "name": "$select", - "in": "query", - "type": "array", - "items": { - "type": "string" - }, - "description": "List of field names to retrieve for the document; Any field not retrieved will be missing from the returned document.", - "x-ms-client-name": "SelectedFields" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - } - ], - "responses": { - "200": { - "description": "Response containing the requested document.", - "schema": { - "type": "object" - } - } - } - } - }, - "/docs/search.suggest": { - "get": { - "tags": [ - "Documents" - ], - "operationId": "Documents_SuggestGet", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/suggestions" - }, - "x-ms-examples": { - "SearchIndexSuggestDocumentsGet": { - "$ref": "./examples/SearchIndexSuggestDocumentsGet.json" - } - }, - "description": "Suggests documents in the index that match the given partial query text.", - "parameters": [ - { - "name": "search", - "in": "query", - "required": true, - "type": "string", - "description": "The search text to use to suggest documents. Must be at least 1 character, and no more than 100 characters.", - "x-ms-client-name": "SearchText" - }, - { - "name": "suggesterName", - "in": "query", - "required": true, - "type": "string", - "description": "The name of the suggester as specified in the suggesters collection that's part of the index definition." - }, - { - "name": "$filter", - "in": "query", - "type": "string", - "description": "An OData expression that filters the documents considered for suggestions.", - "x-ms-parameter-grouping": { - "name": "SuggestParameters" - } - }, - { - "name": "fuzzy", - "in": "query", - "type": "boolean", - "description": "A value indicating whether to use fuzzy matching for the suggestions query. Default is false. When set to true, the query will find terms even if there's a substituted or missing character in the search text. While this provides a better experience in some scenarios, it comes at a performance cost as fuzzy suggestions queries are slower and consume more resources.", - "x-ms-client-name": "UseFuzzyMatching", - "x-nullable": false, - "x-ms-parameter-grouping": { - "name": "SuggestParameters" - } - }, - { - "name": "highlightPostTag", - "in": "query", - "type": "string", - "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. If omitted, hit highlighting of suggestions is disabled.", - "x-ms-parameter-grouping": { - "name": "SuggestParameters" - } - }, - { - "name": "highlightPreTag", - "in": "query", - "type": "string", - "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. If omitted, hit highlighting of suggestions is disabled.", - "x-ms-parameter-grouping": { - "name": "SuggestParameters" - } - }, - { - "name": "minimumCoverage", - "in": "query", - "type": "number", - "format": "double", - "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by a suggestions query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 80.", - "x-ms-parameter-grouping": { - "name": "SuggestParameters" - } - }, - { - "name": "$orderby", - "in": "query", - "type": "array", - "items": { - "type": "string" - }, - "x-ms-client-name": "OrderBy", - "description": "The list of OData $orderby expressions by which to sort the results. Each expression can be either a field name or a call to either the geo.distance() or the search.score() functions. Each expression can be followed by asc to indicate ascending, or desc to indicate descending. The default is ascending order. Ties will be broken by the match scores of documents. If no $orderby is specified, the default sort order is descending by document match score. There can be at most 32 $orderby clauses.", - "x-ms-parameter-grouping": { - "name": "SuggestParameters" - } - }, - { - "name": "searchFields", - "in": "query", - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of field names to search for the specified search text. Target fields must be included in the specified suggester.", - "x-ms-parameter-grouping": { - "name": "SuggestParameters" - } - }, - { - "name": "$select", - "in": "query", - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of fields to retrieve. If unspecified, only the key field will be included in the results.", - "x-ms-parameter-grouping": { - "name": "SuggestParameters" - } - }, - { - "name": "$top", - "in": "query", - "type": "integer", - "format": "int32", - "description": "The number of suggestions to retrieve. The value must be a number between 1 and 100. The default is 5.", - "x-ms-parameter-grouping": { - "name": "SuggestParameters" - } - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "Response containing suggested documents that match the partial input.", - "schema": { - "$ref": "#/definitions/DocumentSuggestResult" - } - } - } - } - }, - "/docs/search.post.suggest": { - "post": { - "tags": [ - "Documents" - ], - "operationId": "Documents_SuggestPost", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/suggestions" - }, - "x-ms-examples": { - "SearchIndexSuggestDocumentsPost": { - "$ref": "./examples/SearchIndexSuggestDocumentsPost.json" - } - }, - "description": "Suggests documents in the index that match the given partial query text.", - "parameters": [ - { - "name": "suggestRequest", - "in": "body", - "required": true, - "description": "The Suggest request.", - "schema": { - "$ref": "#/definitions/SuggestRequest" - } - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "Response containing suggested documents that match the partial input.", - "schema": { - "$ref": "#/definitions/DocumentSuggestResult" - } - } - } - } - }, - "/docs/search.index": { - "post": { - "tags": [ - "Documents" - ], - "operationId": "Documents_Index", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/addupdate-or-delete-documents" - }, - "x-ms-examples": { - "SearchIndexIndexDocuments": { - "$ref": "./examples/SearchIndexIndexDocuments.json" - } - }, - "description": "Sends a batch of document write actions to the index.", - "parameters": [ - { - "name": "batch", - "in": "body", - "description": "The batch of index actions.", - "required": true, - "schema": { - "$ref": "#/definitions/IndexBatch" - } - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "Response containing the status of operations for all actions in the batch.", - "schema": { - "$ref": "#/definitions/DocumentIndexResult" - } - }, - "207": { - "description": "Response containing the status of operations for all actions in the batch.", - "schema": { - "$ref": "#/definitions/DocumentIndexResult" - } - } - } - } - }, - "/docs/search.autocomplete": { - "get": { - "tags": [ - "Documents" - ], - "operationId": "Documents_AutocompleteGet", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/autocomplete" - }, - "x-ms-examples": { - "SearchIndexAutocompleteDocumentsGet": { - "$ref": "./examples/SearchIndexAutocompleteDocumentsGet.json" - } - }, - "description": "Autocompletes incomplete query terms based on input text and matching terms in the index.", - "parameters": [ - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "search", - "in": "query", - "type": "string", - "required": true, - "description": "The incomplete term which should be auto-completed.", - "x-ms-client-name": "SearchText" - }, - { - "name": "suggesterName", - "in": "query", - "type": "string", - "required": true, - "description": "The name of the suggester as specified in the suggesters collection that's part of the index definition." - }, - { - "name": "autocompleteMode", - "in": "query", - "type": "string", - "x-nullable": false, - "enum": [ - "oneTerm", - "twoTerms", - "oneTermWithContext" - ], - "x-ms-enum": { - "name": "AutocompleteMode", - "modelAsString": false - }, - "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms' to get shingles and 'oneTermWithContext' to use the current context while producing auto-completed terms.", - "x-ms-parameter-grouping": { - "name": "AutocompleteParameters" - } - }, - { - "name": "$filter", - "in": "query", - "type": "string", - "description": "An OData expression that filters the documents used to produce completed terms for the Autocomplete result.", - "x-ms-parameter-grouping": { - "name": "AutocompleteParameters" - } - }, - { - "name": "fuzzy", - "in": "query", - "type": "boolean", - "description": "A value indicating whether to use fuzzy matching for the autocomplete query. Default is false. When set to true, the query will find terms even if there's a substituted or missing character in the search text. While this provides a better experience in some scenarios, it comes at a performance cost as fuzzy autocomplete queries are slower and consume more resources.", - "x-ms-client-name": "UseFuzzyMatching", - "x-ms-parameter-grouping": { - "name": "AutocompleteParameters" - } - }, - { - "name": "highlightPostTag", - "in": "query", - "type": "string", - "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. If omitted, hit highlighting is disabled.", - "x-ms-parameter-grouping": { - "name": "AutocompleteParameters" - } - }, - { - "name": "highlightPreTag", - "in": "query", - "type": "string", - "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. If omitted, hit highlighting is disabled.", - "x-ms-parameter-grouping": { - "name": "AutocompleteParameters" - } - }, - { - "name": "minimumCoverage", - "in": "query", - "type": "number", - "format": "double", - "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by an autocomplete query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 80.", - "x-ms-parameter-grouping": { - "name": "AutocompleteParameters" - } - }, - { - "name": "searchFields", - "in": "query", - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of field names to consider when querying for auto-completed terms. Target fields must be included in the specified suggester.", - "x-ms-parameter-grouping": { - "name": "AutocompleteParameters" - } - }, - { - "name": "$top", - "in": "query", - "type": "integer", - "format": "int32", - "description": "The number of auto-completed terms to retrieve. This must be a value between 1 and 100. The default is 5.", - "x-ms-parameter-grouping": { - "name": "AutocompleteParameters" - } - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/AutocompleteResult", - "description": "The result of Autocomplete query." - } - } - } - } - }, - "/docs/search.post.autocomplete": { - "post": { - "tags": [ - "Documents" - ], - "operationId": "Documents_AutocompletePost", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/autocomplete" - }, - "x-ms-examples": { - "SearchIndexAutocompleteDocumentsPost": { - "$ref": "./examples/SearchIndexAutocompleteDocumentsPost.json" - } - }, - "description": "Autocompletes incomplete query terms based on input text and matching terms in the index.", - "parameters": [ - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "autocompleteRequest", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/AutocompleteRequest" - }, - "description": "The definition of the Autocomplete request." - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/AutocompleteResult", - "description": "The result of Autocomplete query." - } - } - } - } - } - }, - "definitions": { - "DocumentSuggestResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/SuggestResult" - }, - "readOnly": true, - "x-ms-client-name": "Results", - "description": "The sequence of results returned by the query." - }, - "@search.coverage": { - "type": "number", - "readOnly": true, - "format": "double", - "x-ms-client-name": "Coverage", - "description": "A value indicating the percentage of the index that was included in the query, or null if minimumCoverage was not set in the request." - } - }, - "description": "Response containing suggestion query results from an index." - }, - "SuggestResult": { - "properties": { - "@search.text": { - "type": "string", - "readOnly": true, - "description": "The text of the suggestion result.", - "x-ms-client-name": "Text" - } - }, - "additionalProperties": true, - "description": "A result containing a document found by a suggestion query, plus associated metadata." - }, - "FacetResult": { - "properties": { - "count": { - "type": "integer", - "format": "int64", - "readOnly": true, - "description": "The approximate count of documents falling within the bucket described by this facet." - } - }, - "additionalProperties": true, - "description": "A single bucket of a facet query result. Reports the number of documents with a field value falling within a particular range or having a particular value or interval." - }, - "DocumentSearchResult": { - "properties": { - "@odata.count": { - "type": "integer", - "format": "int64", - "readOnly": true, - "x-ms-client-name": "Count", - "description": "The total count of results found by the search operation, or null if the count was not requested. If present, the count may be greater than the number of results in this response. This can happen if you use the $top or $skip parameters, or if Azure Cognitive Search can't return all the requested documents in a single Search response." - }, - "@search.coverage": { - "type": "number", - "format": "double", - "readOnly": true, - "x-ms-client-name": "Coverage", - "description": "A value indicating the percentage of the index that was included in the query, or null if minimumCoverage was not specified in the request." - }, - "@search.facets": { - "type": "object", - "additionalProperties": { - "type": "array", - "items": { - "$ref": "#/definitions/FacetResult" - } - }, - "readOnly": true, - "x-ms-client-name": "Facets", - "description": "The facet query results for the search operation, organized as a collection of buckets for each faceted field; null if the query did not include any facet expressions." - }, - "@search.nextPageParameters": { - "$ref": "#/definitions/SearchRequest", - "readOnly": true, - "x-ms-client-name": "NextPageParameters", - "description": "Continuation JSON payload returned when Azure Cognitive Search can't return all the requested results in a single Search response. You can use this JSON along with @odata.nextLink to formulate another POST Search request to get the next part of the search response." - }, - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/SearchResult" - }, - "readOnly": true, - "x-ms-client-name": "Results", - "description": "The sequence of results returned by the query." - }, - "@odata.nextLink": { - "type": "string", - "readOnly": true, - "x-ms-client-name": "NextLink", - "description": "Continuation URL returned when Azure Cognitive Search can't return all the requested results in a single Search response. You can use this URL to formulate another GET or POST Search request to get the next part of the search response. Make sure to use the same verb (GET or POST) as the request that produced this response." - } - }, - "description": "Response containing search results from an index." - }, - "SearchResult": { - "properties": { - "@search.score": { - "type": "number", - "format": "double", - "readOnly": true, - "x-ms-client-name": "Score", - "x-nullable": false, - "description": "The relevance score of the document compared to other documents returned by the query." - }, - "@search.highlights": { - "type": "object", - "additionalProperties": { - "type": "array", - "items": { - "type": "string" - } - }, - "readOnly": true, - "x-ms-client-name": "Highlights", - "description": "Text fragments from the document that indicate the matching search terms, organized by each applicable field; null if hit highlighting was not enabled for the query." - } - }, - "additionalProperties": true, - "description": "Contains a document found by a search query, plus associated metadata." - }, - "IndexBatch": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/IndexAction" - }, - "description": "The actions in the batch.", - "x-ms-client-name": "Actions" - } - }, - "required": [ - "value" - ], - "description": "Contains a batch of document write actions to send to the index." - }, - "IndexAction": { - "properties": { - "@search.action": { - "type": "string", - "enum": [ - "upload", - "merge", - "mergeOrUpload", - "delete" - ], - "x-ms-enum": { - "name": "IndexActionType" - }, - "x-ms-client-name": "ActionType", - "x-nullable": false, - "description": "The operation to perform on a document in an indexing batch." - } - }, - "additionalProperties": true, - "description": "Represents an index action that operates on a document." - }, - "IndexingResult": { - "properties": { - "key": { - "type": "string", - "readOnly": true, - "description": "The key of a document that was in the indexing request." - }, - "errorMessage": { - "type": "string", - "readOnly": true, - "description": "The error message explaining why the indexing operation failed for the document identified by the key; null if indexing succeeded." - }, - "status": { - "x-ms-client-name": "Succeeded", - "type": "boolean", - "x-nullable": false, - "readOnly": true, - "description": "A value indicating whether the indexing operation succeeded for the document identified by the key." - }, - "statusCode": { - "type": "integer", - "format": "int32", - "x-nullable": false, - "readOnly": true, - "description": "The status code of the indexing operation. Possible values include: 200 for a successful update or delete, 201 for successful document creation, 400 for a malformed input document, 404 for document not found, 409 for a version conflict, 422 when the index is temporarily unavailable, or 503 for when the service is too busy." - } - }, - "description": "Status of an indexing operation for a single document." - }, - "DocumentIndexResult": { - "properties": { - "value": { - "x-ms-client-name": "Results", - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/IndexingResult" - }, - "description": "The list of status information for each document in the indexing request." - } - }, - "description": "Response containing the status of operations for all documents in the indexing request." - }, - "SearchMode": { - "type": "string", - "enum": [ - "any", - "all" - ], - "x-ms-enum": { - "name": "SearchMode", - "modelAsString": false - }, - "description": "Specifies whether any or all of the search terms must be matched in order to count the document as a match." - }, - "QueryType": { - "type": "string", - "enum": [ - "simple", - "full" - ], - "x-ms-enum": { - "name": "QueryType", - "modelAsString": false - }, - "description": "Specifies the syntax of the search query. The default is 'simple'. Use 'full' if your query uses the Lucene query syntax." - }, - "AutocompleteMode": { - "type": "string", - "enum": [ - "oneTerm", - "twoTerms", - "oneTermWithContext" - ], - "x-ms-enum": { - "name": "AutocompleteMode", - "modelAsString": false - }, - "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms' to get shingles and 'oneTermWithContext' to use the current context in producing autocomplete terms." - }, - "SearchRequest": { - "properties": { - "count": { - "type": "boolean", - "description": "A value that specifies whether to fetch the total count of results. Default is false. Setting this value to true may have a performance impact. Note that the count returned is an approximation.", - "x-ms-client-name": "IncludeTotalResultCount" - }, - "facets": { - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Search-Documents" - }, - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of facet expressions to apply to the search query. Each facet expression contains a field name, optionally followed by a comma-separated list of name:value pairs." - }, - "filter": { - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/OData-Expression-Syntax-for-Azure-Search" - }, - "type": "string", - "description": "The OData $filter expression to apply to the search query." - }, - "highlight": { - "type": "string", - "description": "The comma-separated list of field names to use for hit highlights. Only searchable fields can be used for hit highlighting.", - "x-ms-client-name": "HighlightFields" - }, - "highlightPostTag": { - "type": "string", - "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. Default is </em>." - }, - "highlightPreTag": { - "type": "string", - "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. Default is <em>." - }, - "minimumCoverage": { - "type": "number", - "format": "double", - "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by a search query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 100." - }, - "orderby": { - "x-ms-client-name": "OrderBy", - "type": "string", - "description": "The comma-separated list of OData $orderby expressions by which to sort the results. Each expression can be either a field name or a call to either the geo.distance() or the search.score() functions. Each expression can be followed by asc to indicate ascending, or desc to indicate descending. The default is ascending order. Ties will be broken by the match scores of documents. If no $orderby is specified, the default sort order is descending by document match score. There can be at most 32 $orderby clauses." - }, - "queryType": { - "$ref": "#/definitions/QueryType", - "description": "A value that specifies the syntax of the search query. The default is 'simple'. Use 'full' if your query uses the Lucene query syntax." - }, - "scoringParameters": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of parameter values to be used in scoring functions (for example, referencePointParameter) using the format name-values. For example, if the scoring profile defines a function with a parameter called 'mylocation' the parameter string would be \"mylocation--122.2,44.8\" (without the quotes)." - }, - "scoringProfile": { - "type": "string", - "description": "The name of a scoring profile to evaluate match scores for matching documents in order to sort the results." - }, - "search": { - "type": "string", - "description": "A full-text search query expression; Use \"*\" or omit this parameter to match all documents.", - "x-ms-client-name": "SearchText" - }, - "searchFields": { - "type": "string", - "description": "The comma-separated list of field names to which to scope the full-text search. When using fielded search (fieldName:searchExpression) in a full Lucene query, the field names of each fielded search expression take precedence over any field names listed in this parameter." - }, - "searchMode": { - "$ref": "#/definitions/SearchMode", - "description": "A value that specifies whether any or all of the search terms must be matched in order to count the document as a match." - }, - "select": { - "type": "string", - "description": "The comma-separated list of fields to retrieve. If unspecified, all fields marked as retrievable in the schema are included." - }, - "skip": { - "type": "integer", - "format": "int32", - "description": "The number of search results to skip. This value cannot be greater than 100,000. If you need to scan documents in sequence, but cannot use skip due to this limitation, consider using orderby on a totally-ordered key and filter with a range query instead." - }, - "top": { - "type": "integer", - "format": "int32", - "description": "The number of search results to retrieve. This can be used in conjunction with $skip to implement client-side paging of search results. If results are truncated due to server-side paging, the response will include a continuation token that can be used to issue another Search request for the next page of results." - } - }, - "description": "Parameters for filtering, sorting, faceting, paging, and other search query behaviors." - }, - "SuggestRequest": { - "properties": { - "filter": { - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/OData-Expression-Syntax-for-Azure-Search" - }, - "type": "string", - "description": "An OData expression that filters the documents considered for suggestions." - }, - "fuzzy": { - "type": "boolean", - "description": "A value indicating whether to use fuzzy matching for the suggestion query. Default is false. When set to true, the query will find suggestions even if there's a substituted or missing character in the search text. While this provides a better experience in some scenarios, it comes at a performance cost as fuzzy suggestion searches are slower and consume more resources.", - "x-ms-client-name": "UseFuzzyMatching" - }, - "highlightPostTag": { - "type": "string", - "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. If omitted, hit highlighting of suggestions is disabled." - }, - "highlightPreTag": { - "type": "string", - "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. If omitted, hit highlighting of suggestions is disabled." - }, - "minimumCoverage": { - "type": "number", - "format": "double", - "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by a suggestion query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 80." - }, - "orderby": { - "x-ms-client-name": "OrderBy", - "type": "string", - "description": "The comma-separated list of OData $orderby expressions by which to sort the results. Each expression can be either a field name or a call to either the geo.distance() or the search.score() functions. Each expression can be followed by asc to indicate ascending, or desc to indicate descending. The default is ascending order. Ties will be broken by the match scores of documents. If no $orderby is specified, the default sort order is descending by document match score. There can be at most 32 $orderby clauses." - }, - "search": { - "type": "string", - "description": "The search text to use to suggest documents. Must be at least 1 character, and no more than 100 characters.", - "x-ms-client-name": "SearchText" - }, - "searchFields": { - "type": "string", - "description": "The comma-separated list of field names to search for the specified search text. Target fields must be included in the specified suggester." - }, - "select": { - "type": "string", - "description": "The comma-separated list of fields to retrieve. If unspecified, only the key field will be included in the results." - }, - "suggesterName": { - "type": "string", - "description": "The name of the suggester as specified in the suggesters collection that's part of the index definition." - }, - "top": { - "type": "integer", - "format": "int32", - "description": "The number of suggestions to retrieve. This must be a value between 1 and 100. The default is 5." - } - }, - "description": "Parameters for filtering, sorting, fuzzy matching, and other suggestions query behaviors." - }, - "AutocompleteRequest": { - "properties": { - "search": { - "type": "string", - "description": "The search text on which to base autocomplete results.", - "x-ms-client-name": "SearchText" - }, - "autocompleteMode": { - "$ref": "#/definitions/AutocompleteMode", - "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms' to get shingles and 'oneTermWithContext' to use the current context while producing auto-completed terms." - }, - "filter": { - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/OData-Expression-Syntax-for-Azure-Search" - }, - "type": "string", - "description": "An OData expression that filters the documents used to produce completed terms for the Autocomplete result." - }, - "fuzzy": { - "type": "boolean", - "description": "A value indicating whether to use fuzzy matching for the autocomplete query. Default is false. When set to true, the query will autocomplete terms even if there's a substituted or missing character in the search text. While this provides a better experience in some scenarios, it comes at a performance cost as fuzzy autocomplete queries are slower and consume more resources.", - "x-ms-client-name": "UseFuzzyMatching" - }, - "highlightPostTag": { - "type": "string", - "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. If omitted, hit highlighting is disabled." - }, - "highlightPreTag": { - "type": "string", - "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. If omitted, hit highlighting is disabled." - }, - "minimumCoverage": { - "type": "number", - "format": "double", - "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by an autocomplete query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 80." - }, - "searchFields": { - "type": "string", - "description": "The comma-separated list of field names to consider when querying for auto-completed terms. Target fields must be included in the specified suggester." - }, - "suggesterName": { - "type": "string", - "description": "The name of the suggester as specified in the suggesters collection that's part of the index definition." - }, - "top": { - "type": "integer", - "format": "int32", - "description": "The number of auto-completed terms to retrieve. This must be a value between 1 and 100. The default is 5." - } - }, - "description": "Parameters for fuzzy matching, and other autocomplete query behaviors." - }, - "AutocompleteResult": { - "properties": { - "value": { - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/AutocompleteItem" - }, - "description": "The list of returned Autocompleted items.", - "x-ms-client-name": "Results" - } - }, - "description": "The result of Autocomplete query." - }, - "AutocompleteItem": { - "properties": { - "text": { - "type": "string", - "readOnly": true, - "description": "The completed term." - }, - "queryPlusText": { - "type": "string", - "readOnly": true, - "description": "The query along with the completed term." - } - }, - "description": "The result of Autocomplete requests." - } - }, - "parameters": { - "ApiVersionParameter": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "Client Api Version." - }, - "ClientRequestIdParameter": { - "name": "client-request-id", - "in": "header", - "required": false, - "type": "string", - "format": "uuid", - "description": "The tracking ID sent with the request to help with debugging.", - "x-ms-client-request-id": true, - "x-ms-parameter-grouping": { - "name": "search-request-options" - }, - "x-ms-parameter-location": "method" - }, - "SearchServiceNameParameter": { - "name": "searchServiceName", - "in": "path", - "required": true, - "type": "string", - "x-ms-skip-url-encoding": true, - "description": "The name of the search service.", - "x-ms-parameter-location": "client" - }, - "SearchDnsSuffixParameter": { - "name": "searchDnsSuffix", - "in": "path", - "required": true, - "type": "string", - "default": "search.windows.net", - "x-ms-skip-url-encoding": true, - "description": "The DNS suffix of the search service. The default is search.windows.net.", - "x-ms-parameter-location": "client" - }, - "IndexNameParameter": { - "name": "indexName", - "in": "path", - "required": true, - "type": "string", - "x-ms-skip-url-encoding": false, - "description": "The name of the index.", - "x-ms-parameter-location": "client" - } - } -} diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/stable/2019-05-06/examples/SearchIndexAutocompleteDocumentsPost.json b/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/stable/2019-05-06/examples/SearchIndexAutocompleteDocumentsPost.json deleted file mode 100644 index 5385f71fe1ac..000000000000 --- a/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/stable/2019-05-06/examples/SearchIndexAutocompleteDocumentsPost.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "parameters": { - "searchServiceName": "myservice", - "searchDnsSuffix": "search.windows.net", - "indexName": "myindex", - "api-version": "2017-11-11-Preview", - "autocompleteRequest": { - "autocompleteMode": "oneTerm", - "search": "washington medic", - "suggesterName": "sg", - "filter": "search.in(docId,'101,102,105')", - "highlightPostTag": "", - "highlightPreTag": "", - "minimumCoverage": 80, - "searchFields": "title,description", - "top": 10 - } - }, - "responses": { - "200": { - "body": [ - { - "text": "medicaid", - "queryPlusText": "washington medicaid" - }, - { - "text": "medicare", - "queryPlusText": "washington medicare" - }, - { - "text": "medicine", - "queryPlusText": "washington medicine" - } - ] - } - } -} diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/stable/2019-05-06/examples/SearchIndexCountDocuments.json b/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/stable/2019-05-06/examples/SearchIndexCountDocuments.json deleted file mode 100644 index 024a9ffcbb2d..000000000000 --- a/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/stable/2019-05-06/examples/SearchIndexCountDocuments.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "parameters": { - "searchServiceName": "myservice", - "searchDnsSuffix": "search.windows.net", - "indexName": "myindex", - "api-version": "2017-11-11-Preview" - }, - "responses": { - "200": { - "body": 427 - } - } -} diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/stable/2019-05-06/searchindex.json b/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/stable/2019-05-06/searchindex.json deleted file mode 100644 index 89a21603827a..000000000000 --- a/specification/search/data-plane/Microsoft.Azure.Search.Data/track1/stable/2019-05-06/searchindex.json +++ /dev/null @@ -1,1336 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "SearchIndexClient", - "description": "Client that can be used to query an index and upload, merge, or delete documents.", - "version": "2019-05-06", - "x-ms-code-generation-settings": { - "useDateTimeOffset": true, - "syncMethods": "None" - } - }, - "x-ms-parameterized-host": { - "hostTemplate": "https://{searchServiceName}.{searchDnsSuffix}/indexes('{indexName}')", - "useSchemePrefix": false, - "parameters": [ - { - "$ref": "#/parameters/SearchServiceNameParameter" - }, - { - "$ref": "#/parameters/SearchDnsSuffixParameter" - }, - { - "$ref": "#/parameters/IndexNameParameter" - } - ] - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": { - "/docs/$count": { - "get": { - "tags": [ - "Documents" - ], - "operationId": "Documents_Count", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Count-Documents" - }, - "x-ms-examples": { - "SearchIndexCountDocuments": { - "$ref": "./examples/SearchIndexCountDocuments.json" - } - }, - "description": "Queries the number of documents in the index.", - "parameters": [ - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "type": "integer", - "format": "int64" - } - } - } - } - }, - "/docs": { - "get": { - "tags": [ - "Documents" - ], - "operationId": "Documents_SearchGet", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Search-Documents" - }, - "x-ms-examples": { - "SearchIndexSearchDocumentsGet": { - "$ref": "./examples/SearchIndexSearchDocumentsGet.json" - } - }, - "description": "Searches for documents in the index.", - "parameters": [ - { - "name": "search", - "in": "query", - "type": "string", - "description": "A full-text search query expression; Use \"*\" or omit this parameter to match all documents.", - "x-ms-client-name": "SearchText" - }, - { - "name": "$count", - "in": "query", - "type": "boolean", - "description": "A value that specifies whether to fetch the total count of results. Default is false. Setting this value to true may have a performance impact. Note that the count returned is an approximation.", - "x-nullable": false, - "x-ms-client-name": "IncludeTotalResultCount", - "x-ms-parameter-grouping": { - "name": "SearchParameters" - } - }, - { - "name": "facet", - "in": "query", - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "multi", - "description": "The list of facet expressions to apply to the search query. Each facet expression contains a field name, optionally followed by a comma-separated list of name:value pairs.", - "x-ms-client-name": "Facets", - "x-ms-parameter-grouping": { - "name": "SearchParameters" - } - }, - { - "name": "$filter", - "in": "query", - "type": "string", - "description": "The OData $filter expression to apply to the search query.", - "x-ms-parameter-grouping": { - "name": "SearchParameters" - } - }, - { - "name": "highlight", - "in": "query", - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of field names to use for hit highlights. Only searchable fields can be used for hit highlighting.", - "x-ms-client-name": "HighlightFields", - "x-ms-parameter-grouping": { - "name": "SearchParameters" - } - }, - { - "name": "highlightPostTag", - "in": "query", - "type": "string", - "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. Default is </em>.", - "x-ms-parameter-grouping": { - "name": "SearchParameters" - } - }, - { - "name": "highlightPreTag", - "in": "query", - "type": "string", - "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. Default is <em>.", - "x-ms-parameter-grouping": { - "name": "SearchParameters" - } - }, - { - "name": "minimumCoverage", - "in": "query", - "type": "number", - "format": "double", - "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by a search query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 100.", - "x-ms-parameter-grouping": { - "name": "SearchParameters" - } - }, - { - "name": "$orderby", - "in": "query", - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of OData $orderby expressions by which to sort the results. Each expression can be either a field name or a call to either the geo.distance() or the search.score() functions. Each expression can be followed by asc to indicate ascending, and desc to indicate descending. The default is ascending order. Ties will be broken by the match scores of documents. If no OrderBy is specified, the default sort order is descending by document match score. There can be at most 32 $orderby clauses.", - "x-ms-client-name": "OrderBy", - "x-ms-parameter-grouping": { - "name": "SearchParameters" - } - }, - { - "name": "queryType", - "in": "query", - "type": "string", - "enum": [ - "simple", - "full" - ], - "x-ms-enum": { - "name": "QueryType", - "modelAsString": false - }, - "x-nullable": false, - "description": "A value that specifies the syntax of the search query. The default is 'simple'. Use 'full' if your query uses the Lucene query syntax.", - "x-ms-parameter-grouping": { - "name": "SearchParameters" - } - }, - { - "name": "scoringParameter", - "in": "query", - "type": "array", - "items": { - "type": "string" - }, - "collectionFormat": "multi", - "x-ms-client-name": "ScoringParameters", - "description": "The list of parameter values to be used in scoring functions (for example, referencePointParameter) using the format name-values. For example, if the scoring profile defines a function with a parameter called 'mylocation' the parameter string would be \"mylocation--122.2,44.8\" (without the quotes).", - "x-ms-parameter-grouping": { - "name": "SearchParameters" - } - }, - { - "name": "scoringProfile", - "in": "query", - "type": "string", - "description": "The name of a scoring profile to evaluate match scores for matching documents in order to sort the results.", - "x-ms-parameter-grouping": { - "name": "SearchParameters" - } - }, - { - "name": "searchFields", - "in": "query", - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of field names to which to scope the full-text search. When using fielded search (fieldName:searchExpression) in a full Lucene query, the field names of each fielded search expression take precedence over any field names listed in this parameter.", - "x-ms-parameter-grouping": { - "name": "SearchParameters" - } - }, - { - "name": "searchMode", - "in": "query", - "type": "string", - "enum": [ - "any", - "all" - ], - "x-ms-enum": { - "name": "SearchMode", - "modelAsString": false - }, - "x-nullable": false, - "description": "A value that specifies whether any or all of the search terms must be matched in order to count the document as a match.", - "x-ms-parameter-grouping": { - "name": "SearchParameters" - } - }, - { - "name": "$select", - "in": "query", - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of fields to retrieve. If unspecified, all fields marked as retrievable in the schema are included.", - "x-ms-parameter-grouping": { - "name": "SearchParameters" - } - }, - { - "name": "$skip", - "in": "query", - "type": "integer", - "format": "int32", - "description": "The number of search results to skip. This value cannot be greater than 100,000. If you need to scan documents in sequence, but cannot use $skip due to this limitation, consider using $orderby on a totally-ordered key and $filter with a range query instead.", - "x-ms-parameter-grouping": { - "name": "SearchParameters" - } - }, - { - "name": "$top", - "in": "query", - "type": "integer", - "format": "int32", - "description": "The number of search results to retrieve. This can be used in conjunction with $skip to implement client-side paging of search results. If results are truncated due to server-side paging, the response will include a continuation token that can be used to issue another Search request for the next page of results.", - "x-ms-parameter-grouping": { - "name": "SearchParameters" - } - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "Response containing documents that match the search criteria.", - "schema": { - "$ref": "#/definitions/DocumentSearchResult" - } - } - } - } - }, - "/docs/search.post.search": { - "post": { - "tags": [ - "Documents" - ], - "operationId": "Documents_SearchPost", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Search-Documents" - }, - "x-ms-examples": { - "SearchIndexSearchDocumentsPost": { - "$ref": "./examples/SearchIndexSearchDocumentsPost.json" - } - }, - "description": "Searches for documents in the index.", - "parameters": [ - { - "name": "searchRequest", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/SearchRequest", - "description": "The Search request." - }, - "description": "The definition of the Search request." - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "Response containing documents that match the search criteria.", - "schema": { - "$ref": "#/definitions/DocumentSearchResult" - } - } - } - } - }, - "/docs('{key}')": { - "get": { - "tags": [ - "Documents" - ], - "operationId": "Documents_Get", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/lookup-document" - }, - "x-ms-examples": { - "SearchIndexGetDocument": { - "$ref": "./examples/SearchIndexGetDocument.json" - } - }, - "description": "Retrieves a document from the index.", - "parameters": [ - { - "name": "key", - "in": "path", - "required": true, - "description": "The key of the document to retrieve.", - "type": "string" - }, - { - "name": "$select", - "in": "query", - "type": "array", - "items": { - "type": "string" - }, - "description": "List of field names to retrieve for the document; Any field not retrieved will be missing from the returned document.", - "x-ms-client-name": "SelectedFields" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - } - ], - "responses": { - "200": { - "description": "Response containing the requested document.", - "schema": { - "type": "object" - } - } - } - } - }, - "/docs/search.suggest": { - "get": { - "tags": [ - "Documents" - ], - "operationId": "Documents_SuggestGet", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/suggestions" - }, - "x-ms-examples": { - "SearchIndexSuggestDocumentsGet": { - "$ref": "./examples/SearchIndexSuggestDocumentsGet.json" - } - }, - "description": "Suggests documents in the index that match the given partial query text.", - "parameters": [ - { - "name": "search", - "in": "query", - "required": true, - "type": "string", - "description": "The search text to use to suggest documents. Must be at least 1 character, and no more than 100 characters.", - "x-ms-client-name": "SearchText" - }, - { - "name": "suggesterName", - "in": "query", - "required": true, - "type": "string", - "description": "The name of the suggester as specified in the suggesters collection that's part of the index definition." - }, - { - "name": "$filter", - "in": "query", - "type": "string", - "description": "An OData expression that filters the documents considered for suggestions.", - "x-ms-parameter-grouping": { - "name": "SuggestParameters" - } - }, - { - "name": "fuzzy", - "in": "query", - "type": "boolean", - "description": "A value indicating whether to use fuzzy matching for the suggestions query. Default is false. When set to true, the query will find terms even if there's a substituted or missing character in the search text. While this provides a better experience in some scenarios, it comes at a performance cost as fuzzy suggestions queries are slower and consume more resources.", - "x-ms-client-name": "UseFuzzyMatching", - "x-nullable": false, - "x-ms-parameter-grouping": { - "name": "SuggestParameters" - } - }, - { - "name": "highlightPostTag", - "in": "query", - "type": "string", - "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. If omitted, hit highlighting of suggestions is disabled.", - "x-ms-parameter-grouping": { - "name": "SuggestParameters" - } - }, - { - "name": "highlightPreTag", - "in": "query", - "type": "string", - "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. If omitted, hit highlighting of suggestions is disabled.", - "x-ms-parameter-grouping": { - "name": "SuggestParameters" - } - }, - { - "name": "minimumCoverage", - "in": "query", - "type": "number", - "format": "double", - "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by a suggestions query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 80.", - "x-ms-parameter-grouping": { - "name": "SuggestParameters" - } - }, - { - "name": "$orderby", - "in": "query", - "type": "array", - "items": { - "type": "string" - }, - "x-ms-client-name": "OrderBy", - "description": "The list of OData $orderby expressions by which to sort the results. Each expression can be either a field name or a call to either the geo.distance() or the search.score() functions. Each expression can be followed by asc to indicate ascending, or desc to indicate descending. The default is ascending order. Ties will be broken by the match scores of documents. If no $orderby is specified, the default sort order is descending by document match score. There can be at most 32 $orderby clauses.", - "x-ms-parameter-grouping": { - "name": "SuggestParameters" - } - }, - { - "name": "searchFields", - "in": "query", - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of field names to search for the specified search text. Target fields must be included in the specified suggester.", - "x-ms-parameter-grouping": { - "name": "SuggestParameters" - } - }, - { - "name": "$select", - "in": "query", - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of fields to retrieve. If unspecified, only the key field will be included in the results.", - "x-ms-parameter-grouping": { - "name": "SuggestParameters" - } - }, - { - "name": "$top", - "in": "query", - "type": "integer", - "format": "int32", - "description": "The number of suggestions to retrieve. The value must be a number between 1 and 100. The default is 5.", - "x-ms-parameter-grouping": { - "name": "SuggestParameters" - } - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "Response containing suggested documents that match the partial input.", - "schema": { - "$ref": "#/definitions/DocumentSuggestResult" - } - } - } - } - }, - "/docs/search.post.suggest": { - "post": { - "tags": [ - "Documents" - ], - "operationId": "Documents_SuggestPost", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/suggestions" - }, - "x-ms-examples": { - "SearchIndexSuggestDocumentsPost": { - "$ref": "./examples/SearchIndexSuggestDocumentsPost.json" - } - }, - "description": "Suggests documents in the index that match the given partial query text.", - "parameters": [ - { - "name": "suggestRequest", - "in": "body", - "required": true, - "description": "The Suggest request.", - "schema": { - "$ref": "#/definitions/SuggestRequest" - } - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "Response containing suggested documents that match the partial input.", - "schema": { - "$ref": "#/definitions/DocumentSuggestResult" - } - } - } - } - }, - "/docs/search.index": { - "post": { - "tags": [ - "Documents" - ], - "operationId": "Documents_Index", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/addupdate-or-delete-documents" - }, - "x-ms-examples": { - "SearchIndexIndexDocuments": { - "$ref": "./examples/SearchIndexIndexDocuments.json" - } - }, - "description": "Sends a batch of document write actions to the index.", - "parameters": [ - { - "name": "batch", - "in": "body", - "description": "The batch of index actions.", - "required": true, - "schema": { - "$ref": "#/definitions/IndexBatch" - } - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "Response containing the status of operations for all actions in the batch.", - "schema": { - "$ref": "#/definitions/DocumentIndexResult" - } - }, - "207": { - "description": "Response containing the status of operations for all actions in the batch.", - "schema": { - "$ref": "#/definitions/DocumentIndexResult" - } - } - } - } - }, - "/docs/search.autocomplete": { - "get": { - "tags": [ - "Documents" - ], - "operationId": "Documents_AutocompleteGet", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/autocomplete" - }, - "x-ms-examples": { - "SearchIndexAutocompleteDocumentsGet": { - "$ref": "./examples/SearchIndexAutocompleteDocumentsGet.json" - } - }, - "description": "Autocompletes incomplete query terms based on input text and matching terms in the index.", - "parameters": [ - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "search", - "in": "query", - "type": "string", - "required": true, - "description": "The incomplete term which should be auto-completed.", - "x-ms-client-name": "SearchText" - }, - { - "name": "suggesterName", - "in": "query", - "type": "string", - "required": true, - "description": "The name of the suggester as specified in the suggesters collection that's part of the index definition." - }, - { - "name": "autocompleteMode", - "in": "query", - "type": "string", - "x-nullable": false, - "enum": [ - "oneTerm", - "twoTerms", - "oneTermWithContext" - ], - "x-ms-enum": { - "name": "AutocompleteMode", - "modelAsString": false - }, - "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms' to get shingles and 'oneTermWithContext' to use the current context while producing auto-completed terms.", - "x-ms-parameter-grouping": { - "name": "AutocompleteParameters" - } - }, - { - "name": "$filter", - "in": "query", - "type": "string", - "description": "An OData expression that filters the documents used to produce completed terms for the Autocomplete result.", - "x-ms-parameter-grouping": { - "name": "AutocompleteParameters" - } - }, - { - "name": "fuzzy", - "in": "query", - "type": "boolean", - "description": "A value indicating whether to use fuzzy matching for the autocomplete query. Default is false. When set to true, the query will find terms even if there's a substituted or missing character in the search text. While this provides a better experience in some scenarios, it comes at a performance cost as fuzzy autocomplete queries are slower and consume more resources.", - "x-ms-client-name": "UseFuzzyMatching", - "x-ms-parameter-grouping": { - "name": "AutocompleteParameters" - } - }, - { - "name": "highlightPostTag", - "in": "query", - "type": "string", - "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. If omitted, hit highlighting is disabled.", - "x-ms-parameter-grouping": { - "name": "AutocompleteParameters" - } - }, - { - "name": "highlightPreTag", - "in": "query", - "type": "string", - "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. If omitted, hit highlighting is disabled.", - "x-ms-parameter-grouping": { - "name": "AutocompleteParameters" - } - }, - { - "name": "minimumCoverage", - "in": "query", - "type": "number", - "format": "double", - "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by an autocomplete query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 80.", - "x-ms-parameter-grouping": { - "name": "AutocompleteParameters" - } - }, - { - "name": "searchFields", - "in": "query", - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of field names to consider when querying for auto-completed terms. Target fields must be included in the specified suggester.", - "x-ms-parameter-grouping": { - "name": "AutocompleteParameters" - } - }, - { - "name": "$top", - "in": "query", - "type": "integer", - "format": "int32", - "description": "The number of auto-completed terms to retrieve. This must be a value between 1 and 100. The default is 5.", - "x-ms-parameter-grouping": { - "name": "AutocompleteParameters" - } - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/AutocompleteResult", - "description": "The result of Autocomplete query." - } - } - } - } - }, - "/docs/search.post.autocomplete": { - "post": { - "tags": [ - "Documents" - ], - "operationId": "Documents_AutocompletePost", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/autocomplete" - }, - "x-ms-examples": { - "SearchIndexAutocompleteDocumentsPost": { - "$ref": "./examples/SearchIndexAutocompleteDocumentsPost.json" - } - }, - "description": "Autocompletes incomplete query terms based on input text and matching terms in the index.", - "parameters": [ - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - }, - { - "name": "autocompleteRequest", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/AutocompleteRequest" - }, - "description": "The definition of the Autocomplete request." - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/AutocompleteResult", - "description": "The result of Autocomplete query." - } - } - } - } - } - }, - "definitions": { - "DocumentSuggestResult": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/SuggestResult" - }, - "readOnly": true, - "x-ms-client-name": "Results", - "description": "The sequence of results returned by the query." - }, - "@search.coverage": { - "type": "number", - "readOnly": true, - "format": "double", - "x-ms-client-name": "Coverage", - "description": "A value indicating the percentage of the index that was included in the query, or null if minimumCoverage was not set in the request." - } - }, - "description": "Response containing suggestion query results from an index." - }, - "SuggestResult": { - "properties": { - "@search.text": { - "type": "string", - "readOnly": true, - "description": "The text of the suggestion result.", - "x-ms-client-name": "Text" - } - }, - "additionalProperties": true, - "description": "A result containing a document found by a suggestion query, plus associated metadata." - }, - "FacetResult": { - "properties": { - "count": { - "type": "integer", - "format": "int64", - "readOnly": true, - "description": "The approximate count of documents falling within the bucket described by this facet." - } - }, - "additionalProperties": true, - "description": "A single bucket of a facet query result. Reports the number of documents with a field value falling within a particular range or having a particular value or interval." - }, - "DocumentSearchResult": { - "properties": { - "@odata.count": { - "type": "integer", - "format": "int64", - "readOnly": true, - "x-ms-client-name": "Count", - "description": "The total count of results found by the search operation, or null if the count was not requested. If present, the count may be greater than the number of results in this response. This can happen if you use the $top or $skip parameters, or if Azure Cognitive Search can't return all the requested documents in a single Search response." - }, - "@search.coverage": { - "type": "number", - "format": "double", - "readOnly": true, - "x-ms-client-name": "Coverage", - "description": "A value indicating the percentage of the index that was included in the query, or null if minimumCoverage was not specified in the request." - }, - "@search.facets": { - "type": "object", - "additionalProperties": { - "type": "array", - "items": { - "$ref": "#/definitions/FacetResult" - } - }, - "readOnly": true, - "x-ms-client-name": "Facets", - "description": "The facet query results for the search operation, organized as a collection of buckets for each faceted field; null if the query did not include any facet expressions." - }, - "@search.nextPageParameters": { - "$ref": "#/definitions/SearchRequest", - "readOnly": true, - "x-ms-client-name": "NextPageParameters", - "description": "Continuation JSON payload returned when Azure Cognitive Search can't return all the requested results in a single Search response. You can use this JSON along with @odata.nextLink to formulate another POST Search request to get the next part of the search response." - }, - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/SearchResult" - }, - "readOnly": true, - "x-ms-client-name": "Results", - "description": "The sequence of results returned by the query." - }, - "@odata.nextLink": { - "type": "string", - "readOnly": true, - "x-ms-client-name": "NextLink", - "description": "Continuation URL returned when Azure Cognitive Search can't return all the requested results in a single Search response. You can use this URL to formulate another GET or POST Search request to get the next part of the search response. Make sure to use the same verb (GET or POST) as the request that produced this response." - } - }, - "description": "Response containing search results from an index." - }, - "SearchResult": { - "properties": { - "@search.score": { - "type": "number", - "format": "double", - "readOnly": true, - "x-ms-client-name": "Score", - "x-nullable": false, - "description": "The relevance score of the document compared to other documents returned by the query." - }, - "@search.highlights": { - "type": "object", - "additionalProperties": { - "type": "array", - "items": { - "type": "string" - } - }, - "readOnly": true, - "x-ms-client-name": "Highlights", - "description": "Text fragments from the document that indicate the matching search terms, organized by each applicable field; null if hit highlighting was not enabled for the query." - } - }, - "additionalProperties": true, - "description": "Contains a document found by a search query, plus associated metadata." - }, - "IndexBatch": { - "properties": { - "value": { - "type": "array", - "items": { - "$ref": "#/definitions/IndexAction" - }, - "description": "The actions in the batch.", - "x-ms-client-name": "Actions" - } - }, - "required": [ - "value" - ], - "description": "Contains a batch of document write actions to send to the index." - }, - "IndexAction": { - "properties": { - "@search.action": { - "type": "string", - "enum": [ - "upload", - "merge", - "mergeOrUpload", - "delete" - ], - "x-ms-enum": { - "name": "IndexActionType" - }, - "x-ms-client-name": "ActionType", - "x-nullable": false, - "description": "The operation to perform on a document in an indexing batch." - } - }, - "additionalProperties": true, - "description": "Represents an index action that operates on a document." - }, - "IndexingResult": { - "properties": { - "key": { - "type": "string", - "readOnly": true, - "description": "The key of a document that was in the indexing request." - }, - "errorMessage": { - "type": "string", - "readOnly": true, - "description": "The error message explaining why the indexing operation failed for the document identified by the key; null if indexing succeeded." - }, - "status": { - "x-ms-client-name": "Succeeded", - "type": "boolean", - "x-nullable": false, - "readOnly": true, - "description": "A value indicating whether the indexing operation succeeded for the document identified by the key." - }, - "statusCode": { - "type": "integer", - "format": "int32", - "x-nullable": false, - "readOnly": true, - "description": "The status code of the indexing operation. Possible values include: 200 for a successful update or delete, 201 for successful document creation, 400 for a malformed input document, 404 for document not found, 409 for a version conflict, 422 when the index is temporarily unavailable, or 503 for when the service is too busy." - } - }, - "description": "Status of an indexing operation for a single document." - }, - "DocumentIndexResult": { - "properties": { - "value": { - "x-ms-client-name": "Results", - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/IndexingResult" - }, - "description": "The list of status information for each document in the indexing request." - } - }, - "description": "Response containing the status of operations for all documents in the indexing request." - }, - "SearchMode": { - "type": "string", - "enum": [ - "any", - "all" - ], - "x-ms-enum": { - "name": "SearchMode", - "modelAsString": false - }, - "description": "Specifies whether any or all of the search terms must be matched in order to count the document as a match." - }, - "QueryType": { - "type": "string", - "enum": [ - "simple", - "full" - ], - "x-ms-enum": { - "name": "QueryType", - "modelAsString": false - }, - "description": "Specifies the syntax of the search query. The default is 'simple'. Use 'full' if your query uses the Lucene query syntax." - }, - "AutocompleteMode": { - "type": "string", - "enum": [ - "oneTerm", - "twoTerms", - "oneTermWithContext" - ], - "x-ms-enum": { - "name": "AutocompleteMode", - "modelAsString": false - }, - "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms' to get shingles and 'oneTermWithContext' to use the current context in producing autocomplete terms." - }, - "SearchRequest": { - "properties": { - "count": { - "type": "boolean", - "description": "A value that specifies whether to fetch the total count of results. Default is false. Setting this value to true may have a performance impact. Note that the count returned is an approximation.", - "x-ms-client-name": "IncludeTotalResultCount" - }, - "facets": { - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Search-Documents" - }, - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of facet expressions to apply to the search query. Each facet expression contains a field name, optionally followed by a comma-separated list of name:value pairs." - }, - "filter": { - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/OData-Expression-Syntax-for-Azure-Search" - }, - "type": "string", - "description": "The OData $filter expression to apply to the search query." - }, - "highlight": { - "type": "string", - "description": "The comma-separated list of field names to use for hit highlights. Only searchable fields can be used for hit highlighting.", - "x-ms-client-name": "HighlightFields" - }, - "highlightPostTag": { - "type": "string", - "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. Default is </em>." - }, - "highlightPreTag": { - "type": "string", - "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. Default is <em>." - }, - "minimumCoverage": { - "type": "number", - "format": "double", - "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by a search query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 100." - }, - "orderby": { - "x-ms-client-name": "OrderBy", - "type": "string", - "description": "The comma-separated list of OData $orderby expressions by which to sort the results. Each expression can be either a field name or a call to either the geo.distance() or the search.score() functions. Each expression can be followed by asc to indicate ascending, or desc to indicate descending. The default is ascending order. Ties will be broken by the match scores of documents. If no $orderby is specified, the default sort order is descending by document match score. There can be at most 32 $orderby clauses." - }, - "queryType": { - "$ref": "#/definitions/QueryType", - "description": "A value that specifies the syntax of the search query. The default is 'simple'. Use 'full' if your query uses the Lucene query syntax." - }, - "scoringParameters": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of parameter values to be used in scoring functions (for example, referencePointParameter) using the format name-values. For example, if the scoring profile defines a function with a parameter called 'mylocation' the parameter string would be \"mylocation--122.2,44.8\" (without the quotes)." - }, - "scoringProfile": { - "type": "string", - "description": "The name of a scoring profile to evaluate match scores for matching documents in order to sort the results." - }, - "search": { - "type": "string", - "description": "A full-text search query expression; Use \"*\" or omit this parameter to match all documents.", - "x-ms-client-name": "SearchText" - }, - "searchFields": { - "type": "string", - "description": "The comma-separated list of field names to which to scope the full-text search. When using fielded search (fieldName:searchExpression) in a full Lucene query, the field names of each fielded search expression take precedence over any field names listed in this parameter." - }, - "searchMode": { - "$ref": "#/definitions/SearchMode", - "description": "A value that specifies whether any or all of the search terms must be matched in order to count the document as a match." - }, - "select": { - "type": "string", - "description": "The comma-separated list of fields to retrieve. If unspecified, all fields marked as retrievable in the schema are included." - }, - "skip": { - "type": "integer", - "format": "int32", - "description": "The number of search results to skip. This value cannot be greater than 100,000. If you need to scan documents in sequence, but cannot use skip due to this limitation, consider using orderby on a totally-ordered key and filter with a range query instead." - }, - "top": { - "type": "integer", - "format": "int32", - "description": "The number of search results to retrieve. This can be used in conjunction with $skip to implement client-side paging of search results. If results are truncated due to server-side paging, the response will include a continuation token that can be used to issue another Search request for the next page of results." - } - }, - "description": "Parameters for filtering, sorting, faceting, paging, and other search query behaviors." - }, - "SuggestRequest": { - "properties": { - "filter": { - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/OData-Expression-Syntax-for-Azure-Search" - }, - "type": "string", - "description": "An OData expression that filters the documents considered for suggestions." - }, - "fuzzy": { - "type": "boolean", - "description": "A value indicating whether to use fuzzy matching for the suggestion query. Default is false. When set to true, the query will find suggestions even if there's a substituted or missing character in the search text. While this provides a better experience in some scenarios, it comes at a performance cost as fuzzy suggestion searches are slower and consume more resources.", - "x-ms-client-name": "UseFuzzyMatching" - }, - "highlightPostTag": { - "type": "string", - "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. If omitted, hit highlighting of suggestions is disabled." - }, - "highlightPreTag": { - "type": "string", - "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. If omitted, hit highlighting of suggestions is disabled." - }, - "minimumCoverage": { - "type": "number", - "format": "double", - "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by a suggestion query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 80." - }, - "orderby": { - "x-ms-client-name": "OrderBy", - "type": "string", - "description": "The comma-separated list of OData $orderby expressions by which to sort the results. Each expression can be either a field name or a call to either the geo.distance() or the search.score() functions. Each expression can be followed by asc to indicate ascending, or desc to indicate descending. The default is ascending order. Ties will be broken by the match scores of documents. If no $orderby is specified, the default sort order is descending by document match score. There can be at most 32 $orderby clauses." - }, - "search": { - "type": "string", - "description": "The search text to use to suggest documents. Must be at least 1 character, and no more than 100 characters.", - "x-ms-client-name": "SearchText" - }, - "searchFields": { - "type": "string", - "description": "The comma-separated list of field names to search for the specified search text. Target fields must be included in the specified suggester." - }, - "select": { - "type": "string", - "description": "The comma-separated list of fields to retrieve. If unspecified, only the key field will be included in the results." - }, - "suggesterName": { - "type": "string", - "description": "The name of the suggester as specified in the suggesters collection that's part of the index definition." - }, - "top": { - "type": "integer", - "format": "int32", - "description": "The number of suggestions to retrieve. This must be a value between 1 and 100. The default is 5." - } - }, - "description": "Parameters for filtering, sorting, fuzzy matching, and other suggestions query behaviors." - }, - "AutocompleteRequest": { - "properties": { - "search": { - "type": "string", - "description": "The search text on which to base autocomplete results.", - "x-ms-client-name": "SearchText" - }, - "autocompleteMode": { - "$ref": "#/definitions/AutocompleteMode", - "description": "Specifies the mode for Autocomplete. The default is 'oneTerm'. Use 'twoTerms' to get shingles and 'oneTermWithContext' to use the current context while producing auto-completed terms." - }, - "filter": { - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/OData-Expression-Syntax-for-Azure-Search" - }, - "type": "string", - "description": "An OData expression that filters the documents used to produce completed terms for the Autocomplete result." - }, - "fuzzy": { - "type": "boolean", - "description": "A value indicating whether to use fuzzy matching for the autocomplete query. Default is false. When set to true, the query will autocomplete terms even if there's a substituted or missing character in the search text. While this provides a better experience in some scenarios, it comes at a performance cost as fuzzy autocomplete queries are slower and consume more resources.", - "x-ms-client-name": "UseFuzzyMatching" - }, - "highlightPostTag": { - "type": "string", - "description": "A string tag that is appended to hit highlights. Must be set with highlightPreTag. If omitted, hit highlighting is disabled." - }, - "highlightPreTag": { - "type": "string", - "description": "A string tag that is prepended to hit highlights. Must be set with highlightPostTag. If omitted, hit highlighting is disabled." - }, - "minimumCoverage": { - "type": "number", - "format": "double", - "description": "A number between 0 and 100 indicating the percentage of the index that must be covered by an autocomplete query in order for the query to be reported as a success. This parameter can be useful for ensuring search availability even for services with only one replica. The default is 80." - }, - "searchFields": { - "type": "string", - "description": "The comma-separated list of field names to consider when querying for auto-completed terms. Target fields must be included in the specified suggester." - }, - "suggesterName": { - "type": "string", - "description": "The name of the suggester as specified in the suggesters collection that's part of the index definition." - }, - "top": { - "type": "integer", - "format": "int32", - "description": "The number of auto-completed terms to retrieve. This must be a value between 1 and 100. The default is 5." - } - }, - "description": "Parameters for fuzzy matching, and other autocomplete query behaviors." - }, - "AutocompleteResult": { - "properties": { - "value": { - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/AutocompleteItem" - }, - "description": "The list of returned Autocompleted items.", - "x-ms-client-name": "Results" - } - }, - "description": "The result of Autocomplete query." - }, - "AutocompleteItem": { - "properties": { - "text": { - "type": "string", - "readOnly": true, - "description": "The completed term." - }, - "queryPlusText": { - "type": "string", - "readOnly": true, - "description": "The query along with the completed term." - } - }, - "description": "The result of Autocomplete requests." - } - }, - "parameters": { - "ApiVersionParameter": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "Client Api Version." - }, - "ClientRequestIdParameter": { - "name": "client-request-id", - "in": "header", - "required": false, - "type": "string", - "format": "uuid", - "description": "The tracking ID sent with the request to help with debugging.", - "x-ms-client-request-id": true, - "x-ms-parameter-grouping": { - "name": "search-request-options" - }, - "x-ms-parameter-location": "method" - }, - "SearchServiceNameParameter": { - "name": "searchServiceName", - "in": "path", - "required": true, - "type": "string", - "x-ms-skip-url-encoding": true, - "description": "The name of the search service.", - "x-ms-parameter-location": "client" - }, - "SearchDnsSuffixParameter": { - "name": "searchDnsSuffix", - "in": "path", - "required": true, - "type": "string", - "default": "search.windows.net", - "x-ms-skip-url-encoding": true, - "description": "The DNS suffix of the search service. The default is search.windows.net.", - "x-ms-parameter-location": "client" - }, - "IndexNameParameter": { - "name": "indexName", - "in": "path", - "required": true, - "type": "string", - "x-ms-skip-url-encoding": false, - "description": "The name of the index.", - "x-ms-parameter-location": "client" - } - } -} diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceCreateDataSource.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceCreateDataSource.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceCreateDataSource.json rename to specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceCreateDataSource.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceCreateIndex.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceCreateIndex.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceCreateIndex.json rename to specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceCreateIndex.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceCreateIndexer.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceCreateIndexer.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceCreateIndexer.json rename to specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceCreateIndexer.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateDataSource.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateDataSource.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateDataSource.json rename to specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateDataSource.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateIndex.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateIndex.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateIndex.json rename to specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateIndex.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateIndexer.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateIndexer.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateIndexer.json rename to specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateIndexer.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateSkillset.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateSkillset.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateSkillset.json rename to specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateSkillset.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateSynonymMap.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateSynonymMap.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateSynonymMap.json rename to specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceCreateOrUpdateSynonymMap.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceCreateSkillset.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceCreateSkillset.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceCreateSkillset.json rename to specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceCreateSkillset.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceCreateSynonymMap.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceCreateSynonymMap.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceCreateSynonymMap.json rename to specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceCreateSynonymMap.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceDeleteDataSource.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceDeleteDataSource.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceDeleteDataSource.json rename to specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceDeleteDataSource.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceDeleteIndex.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceDeleteIndex.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceDeleteIndex.json rename to specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceDeleteIndex.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceDeleteIndexer.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceDeleteIndexer.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceDeleteIndexer.json rename to specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceDeleteIndexer.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceDeleteSkillset.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceDeleteSkillset.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceDeleteSkillset.json rename to specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceDeleteSkillset.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceDeleteSynonymMap.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceDeleteSynonymMap.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceDeleteSynonymMap.json rename to specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceDeleteSynonymMap.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceGetDataSource.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceGetDataSource.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceGetDataSource.json rename to specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceGetDataSource.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceGetIndex.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceGetIndex.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceGetIndex.json rename to specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceGetIndex.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceGetIndexStatistics.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceGetIndexStatistics.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceGetIndexStatistics.json rename to specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceGetIndexStatistics.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceGetIndexer.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceGetIndexer.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceGetIndexer.json rename to specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceGetIndexer.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceGetIndexerStatus.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceGetIndexerStatus.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceGetIndexerStatus.json rename to specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceGetIndexerStatus.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceGetServiceStatistics.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceGetServiceStatistics.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceGetServiceStatistics.json rename to specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceGetServiceStatistics.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceGetSkillset.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceGetSkillset.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceGetSkillset.json rename to specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceGetSkillset.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceGetSynonymMap.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceGetSynonymMap.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceGetSynonymMap.json rename to specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceGetSynonymMap.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceIndexAnalyze.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceIndexAnalyze.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceIndexAnalyze.json rename to specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceIndexAnalyze.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceListDataSources.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceListDataSources.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceListDataSources.json rename to specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceListDataSources.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceListIndexers.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceListIndexers.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceListIndexers.json rename to specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceListIndexers.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceListIndexes.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceListIndexes.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceListIndexes.json rename to specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceListIndexes.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceListSkillsets.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceListSkillsets.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceListSkillsets.json rename to specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceListSkillsets.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceListSynonymMaps.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceListSynonymMaps.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceListSynonymMaps.json rename to specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceListSynonymMaps.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceResetIndexer.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceResetIndexer.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceResetIndexer.json rename to specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceResetIndexer.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceRunIndexer.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceRunIndexer.json similarity index 100% rename from specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/examples/SearchServiceRunIndexer.json rename to specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/examples/SearchServiceRunIndexer.json diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/searchservice.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/searchservice.json new file mode 100644 index 000000000000..f81a0818c296 --- /dev/null +++ b/specification/search/data-plane/Microsoft.Azure.Search.Service/preview/2019-05-06-preview/searchservice.json @@ -0,0 +1,6502 @@ +{ + "swagger": "2.0", + "info": { + "title": "SearchServiceClient", + "description": "Client that can be used to manage and query indexes and documents, as well as manage other resources, on a search service.", + "version": "2019-05-06-Preview", + "x-ms-code-generation-settings": { + "useDateTimeOffset": true + } + }, + "x-ms-parameterized-host": { + "hostTemplate": "https://{searchServiceName}.{searchDnsSuffix}", + "useSchemePrefix": false, + "parameters": [ + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "$ref": "#/parameters/SearchDnsSuffixParameter" + } + ] + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/datasources('{dataSourceName}')": { + "put": { + "tags": [ + "DataSources" + ], + "operationId": "DataSources_CreateOrUpdate", + "x-ms-examples": { + "SearchServiceCreateOrUpdateDataSource": { + "$ref": "./examples/SearchServiceCreateOrUpdateDataSource.json" + } + }, + "description": "Creates a new datasource or updates a datasource if it already exists.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Update-Data-Source" + }, + "parameters": [ + { + "name": "dataSourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the datasource to create or update." + }, + { + "name": "dataSource", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataSource" + }, + "description": "The definition of the datasource to create or update." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/IfMatchParameter" + }, + { + "$ref": "#/parameters/IfNoneMatchParameter" + }, + { + "$ref": "#/parameters/PreferHeaderParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/DataSource" + } + }, + "201": { + "description": "", + "schema": { + "$ref": "#/definitions/DataSource" + } + } + } + }, + "delete": { + "tags": [ + "DataSources" + ], + "operationId": "DataSources_Delete", + "x-ms-examples": { + "SearchServiceDeleteDataSource": { + "$ref": "./examples/SearchServiceDeleteDataSource.json" + } + }, + "description": "Deletes a datasource.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Delete-Data-Source" + }, + "parameters": [ + { + "name": "dataSourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the datasource to delete." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/IfMatchParameter" + }, + { + "$ref": "#/parameters/IfNoneMatchParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "204": { + "description": "" + }, + "404": { + "description": "" + } + } + }, + "get": { + "tags": [ + "DataSources" + ], + "operationId": "DataSources_Get", + "x-ms-examples": { + "SearchServiceGetDataSource": { + "$ref": "./examples/SearchServiceGetDataSource.json" + } + }, + "description": "Retrieves a datasource definition.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Data-Source" + }, + "parameters": [ + { + "name": "dataSourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the datasource to retrieve." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/DataSource" + } + } + } + } + }, + "/datasources": { + "get": { + "tags": [ + "DataSources" + ], + "operationId": "DataSources_List", + "x-ms-examples": { + "SearchServiceListDataSources": { + "$ref": "./examples/SearchServiceListDataSources.json" + } + }, + "description": "Lists all datasources available for a search service.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/List-Data-Sources" + }, + "parameters": [ + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "Selects which top-level properties of the data sources to retrieve. Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/DataSourceListResult" + } + } + } + }, + "post": { + "tags": [ + "DataSources" + ], + "operationId": "DataSources_Create", + "x-ms-examples": { + "SearchServiceCreateDataSource": { + "$ref": "./examples/SearchServiceCreateDataSource.json" + } + }, + "description": "Creates a new datasource.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Data-Source" + }, + "parameters": [ + { + "name": "dataSource", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/DataSource" + }, + "description": "The definition of the datasource to create." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "201": { + "description": "", + "schema": { + "$ref": "#/definitions/DataSource" + } + } + } + } + }, + "/indexers('{indexerName}')/search.reset": { + "post": { + "tags": [ + "Indexers" + ], + "operationId": "Indexers_Reset", + "x-ms-examples": { + "SearchServiceResetIndexer": { + "$ref": "./examples/SearchServiceResetIndexer.json" + } + }, + "description": "Resets the change tracking state associated with an indexer.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Reset-Indexer" + }, + "parameters": [ + { + "name": "indexerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the indexer to reset." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "204": { + "description": "" + } + } + } + }, + "/indexers('{indexerName}')/search.run": { + "post": { + "tags": [ + "Indexers" + ], + "operationId": "Indexers_Run", + "x-ms-examples": { + "SearchServiceRunIndexer": { + "$ref": "./examples/SearchServiceRunIndexer.json" + } + }, + "description": "Runs an indexer on-demand.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Run-Indexer" + }, + "parameters": [ + { + "name": "indexerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the indexer to run." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "202": { + "description": "" + } + } + } + }, + "/indexers('{indexerName}')": { + "put": { + "tags": [ + "Indexers" + ], + "operationId": "Indexers_CreateOrUpdate", + "x-ms-examples": { + "SearchServiceCreateOrUpdateIndexer": { + "$ref": "./examples/SearchServiceCreateOrUpdateIndexer.json" + } + }, + "description": "Creates a new indexer or updates an indexer if it already exists.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Indexer" + }, + "parameters": [ + { + "name": "indexerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the indexer to create or update." + }, + { + "name": "indexer", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Indexer" + }, + "description": "The definition of the indexer to create or update." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/IfMatchParameter" + }, + { + "$ref": "#/parameters/IfNoneMatchParameter" + }, + { + "$ref": "#/parameters/PreferHeaderParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "201": { + "description": "", + "schema": { + "$ref": "#/definitions/Indexer" + } + }, + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/Indexer" + } + } + } + }, + "delete": { + "tags": [ + "Indexers" + ], + "operationId": "Indexers_Delete", + "x-ms-examples": { + "SearchServiceDeleteIndexer": { + "$ref": "./examples/SearchServiceDeleteIndexer.json" + } + }, + "description": "Deletes an indexer.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Delete-Indexer" + }, + "parameters": [ + { + "name": "indexerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the indexer to delete." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/IfMatchParameter" + }, + { + "$ref": "#/parameters/IfNoneMatchParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "404": { + "description": "" + }, + "204": { + "description": "" + } + } + }, + "get": { + "tags": [ + "Indexers" + ], + "operationId": "Indexers_Get", + "x-ms-examples": { + "SearchServiceGetIndexer": { + "$ref": "./examples/SearchServiceGetIndexer.json" + } + }, + "description": "Retrieves an indexer definition.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Indexer" + }, + "parameters": [ + { + "name": "indexerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the indexer to retrieve." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/Indexer" + } + } + } + } + }, + "/indexers": { + "get": { + "tags": [ + "Indexers" + ], + "operationId": "Indexers_List", + "x-ms-examples": { + "SearchServiceListIndexers": { + "$ref": "./examples/SearchServiceListIndexers.json" + } + }, + "description": "Lists all indexers available for a search service.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/List-Indexers" + }, + "parameters": [ + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "Selects which top-level properties of the indexers to retrieve. Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/IndexerListResult" + } + } + } + }, + "post": { + "tags": [ + "Indexers" + ], + "operationId": "Indexers_Create", + "x-ms-examples": { + "SearchServiceCreateIndexer": { + "$ref": "./examples/SearchServiceCreateIndexer.json" + } + }, + "description": "Creates a new indexer.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Indexer" + }, + "parameters": [ + { + "name": "indexer", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Indexer" + }, + "description": "The definition of the indexer to create." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "201": { + "description": "", + "schema": { + "$ref": "#/definitions/Indexer" + } + } + } + } + }, + "/indexers('{indexerName}')/search.status": { + "get": { + "tags": [ + "Indexers" + ], + "operationId": "Indexers_GetStatus", + "x-ms-examples": { + "SearchServiceGetIndexerStatus": { + "$ref": "./examples/SearchServiceGetIndexerStatus.json" + } + }, + "description": "Returns the current status and execution history of an indexer.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Indexer-Status" + }, + "parameters": [ + { + "name": "indexerName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the indexer for which to retrieve status." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/IndexerExecutionInfo" + } + } + } + } + }, + "/skillsets('{skillsetName}')": { + "put": { + "tags": [ + "Skillsets" + ], + "operationId": "Skillsets_CreateOrUpdate", + "x-ms-examples": { + "SearchServiceCreateOrUpdateSkillset": { + "$ref": "./examples/SearchServiceCreateOrUpdateSkillset.json" + } + }, + "description": "Creates a new skillset in a search service or updates the skillset if it already exists.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/update-skillset" + }, + "parameters": [ + { + "name": "skillsetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the skillset to create or update." + }, + { + "name": "skillset", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Skillset" + }, + "description": "The skillset containing one or more skills to create or update in a search service." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/IfMatchParameter" + }, + { + "$ref": "#/parameters/IfNoneMatchParameter" + }, + { + "$ref": "#/parameters/PreferHeaderParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "The skillset is successfully updated.", + "schema": { + "$ref": "#/definitions/Skillset" + } + }, + "201": { + "description": "The skillset is successfully created.", + "schema": { + "$ref": "#/definitions/Skillset" + } + } + } + }, + "delete": { + "tags": [ + "Skillsets" + ], + "operationId": "Skillsets_Delete", + "x-ms-examples": { + "SearchServiceDeleteSkillset": { + "$ref": "./examples/SearchServiceDeleteSkillset.json" + } + }, + "description": "Deletes a skillset in a search service.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/delete-skillset" + }, + "parameters": [ + { + "name": "skillsetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the skillset to delete." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/IfMatchParameter" + }, + { + "$ref": "#/parameters/IfNoneMatchParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "204": { + "description": "The skillset is successfully deleted." + }, + "404": { + "description": "The provided skillset name is not found." + } + } + }, + "get": { + "tags": [ + "Skillsets" + ], + "operationId": "Skillsets_Get", + "x-ms-examples": { + "SearchServiceGetSkillset": { + "$ref": "./examples/SearchServiceGetSkillset.json" + } + }, + "description": "Retrieves a skillset in a search service.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/get-skillset" + }, + "parameters": [ + { + "name": "skillsetName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the skillset to retrieve." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "The skillset is successfully returned.", + "schema": { + "$ref": "#/definitions/Skillset" + } + } + } + } + }, + "/skillsets": { + "get": { + "tags": [ + "Skillsets" + ], + "operationId": "Skillsets_List", + "x-ms-examples": { + "SearchServiceListSkillsets": { + "$ref": "./examples/SearchServiceListSkillsets.json" + } + }, + "description": "List all skillsets in a search service.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/list-skillset" + }, + "parameters": [ + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "Selects which top-level properties of the skillsets to retrieve. Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "The list is successfully returned.", + "schema": { + "$ref": "#/definitions/SkillsetListResult" + } + } + } + }, + "post": { + "tags": [ + "Skillsets" + ], + "operationId": "Skillsets_Create", + "x-ms-examples": { + "SearchServiceCreateSkillset": { + "$ref": "./examples/SearchServiceCreateSkillset.json" + } + }, + "description": "Creates a new skillset in a search service.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/create-skillset" + }, + "parameters": [ + { + "name": "skillset", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Skillset" + }, + "description": "The skillset containing one or more skills to create in a search service." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "201": { + "description": "The skillset is successfully created.", + "schema": { + "$ref": "#/definitions/Skillset" + } + } + } + } + }, + "/synonymmaps('{synonymMapName}')": { + "put": { + "tags": [ + "SynonymMaps" + ], + "operationId": "SynonymMaps_CreateOrUpdate", + "x-ms-examples": { + "SearchServiceCreateOrUpdateSynonymMap": { + "$ref": "./examples/SearchServiceCreateOrUpdateSynonymMap.json" + } + }, + "description": "Creates a new synonym map or updates a synonym map if it already exists.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Update-Synonym-Map" + }, + "parameters": [ + { + "name": "synonymMapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the synonym map to create or update." + }, + { + "name": "synonymMap", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SynonymMap" + }, + "description": "The definition of the synonym map to create or update." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/IfMatchParameter" + }, + { + "$ref": "#/parameters/IfNoneMatchParameter" + }, + { + "$ref": "#/parameters/PreferHeaderParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/SynonymMap" + } + }, + "201": { + "description": "", + "schema": { + "$ref": "#/definitions/SynonymMap" + } + } + } + }, + "delete": { + "tags": [ + "SynonymMaps" + ], + "operationId": "SynonymMaps_Delete", + "x-ms-examples": { + "SearchServiceDeleteSynonymMap": { + "$ref": "./examples/SearchServiceDeleteSynonymMap.json" + } + }, + "description": "Deletes a synonym map.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Delete-Synonym-Map" + }, + "parameters": [ + { + "name": "synonymMapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the synonym map to delete." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/IfMatchParameter" + }, + { + "$ref": "#/parameters/IfNoneMatchParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "204": { + "description": "" + }, + "404": { + "description": "" + } + } + }, + "get": { + "tags": [ + "SynonymMaps" + ], + "operationId": "SynonymMaps_Get", + "x-ms-examples": { + "SearchServiceGetSynonymMap": { + "$ref": "./examples/SearchServiceGetSynonymMap.json" + } + }, + "description": "Retrieves a synonym map definition.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Synonym-Map" + }, + "parameters": [ + { + "name": "synonymMapName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the synonym map to retrieve." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/SynonymMap" + } + } + } + } + }, + "/synonymmaps": { + "get": { + "tags": [ + "SynonymMaps" + ], + "operationId": "SynonymMaps_List", + "x-ms-examples": { + "SearchServiceListSynonymMaps": { + "$ref": "./examples/SearchServiceListSynonymMaps.json" + } + }, + "description": "Lists all synonym maps available for a search service.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/List-Synonym-Maps" + }, + "parameters": [ + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "Selects which top-level properties of the synonym maps to retrieve. Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/SynonymMapListResult" + } + } + } + }, + "post": { + "tags": [ + "SynonymMaps" + ], + "operationId": "SynonymMaps_Create", + "x-ms-examples": { + "SearchServiceCreateSynonymMap": { + "$ref": "./examples/SearchServiceCreateSynonymMap.json" + } + }, + "description": "Creates a new synonym map.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Synonym-Map" + }, + "parameters": [ + { + "name": "synonymMap", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SynonymMap" + }, + "description": "The definition of the synonym map to create." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "201": { + "description": "", + "schema": { + "$ref": "#/definitions/SynonymMap" + } + } + } + } + }, + "/indexes": { + "post": { + "tags": [ + "Indexes" + ], + "operationId": "Indexes_Create", + "x-ms-examples": { + "SearchServiceCreateIndex": { + "$ref": "./examples/SearchServiceCreateIndex.json" + } + }, + "description": "Creates a new search index.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Index" + }, + "parameters": [ + { + "name": "index", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Index" + }, + "description": "The definition of the index to create." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "201": { + "description": "", + "schema": { + "$ref": "#/definitions/Index" + } + } + } + }, + "get": { + "tags": [ + "Indexes" + ], + "operationId": "Indexes_List", + "x-ms-examples": { + "SearchServiceListIndexes": { + "$ref": "./examples/SearchServiceListIndexes.json" + } + }, + "description": "Lists all indexes available for a search service.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/List-Indexes" + }, + "parameters": [ + { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "Selects which top-level properties of the index definitions to retrieve. Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/IndexListResult" + } + } + } + } + }, + "/indexes('{indexName}')": { + "put": { + "tags": [ + "Indexes" + ], + "operationId": "Indexes_CreateOrUpdate", + "x-ms-examples": { + "SearchServiceCreateOrUpdateIndex": { + "$ref": "./examples/SearchServiceCreateOrUpdateIndex.json" + } + }, + "description": "Creates a new search index or updates an index if it already exists.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Update-Index" + }, + "parameters": [ + { + "name": "indexName", + "in": "path", + "required": true, + "type": "string", + "description": "The definition of the index to create or update." + }, + { + "name": "index", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Index" + }, + "description": "The definition of the index to create or update." + }, + { + "name": "allowIndexDowntime", + "in": "query", + "required": false, + "type": "boolean", + "description": "Allows new analyzers, tokenizers, token filters, or char filters to be added to an index by taking the index offline for at least a few seconds. This temporarily causes indexing and query requests to fail. Performance and write availability of the index can be impaired for several minutes after the index is updated, or longer for very large indexes." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/IfMatchParameter" + }, + { + "$ref": "#/parameters/IfNoneMatchParameter" + }, + { + "$ref": "#/parameters/PreferHeaderParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/Index" + } + }, + "201": { + "description": "", + "schema": { + "$ref": "#/definitions/Index" + } + } + } + }, + "delete": { + "tags": [ + "Indexes" + ], + "operationId": "Indexes_Delete", + "x-ms-examples": { + "SearchServiceDeleteIndex": { + "$ref": "./examples/SearchServiceDeleteIndex.json" + } + }, + "description": "Deletes a search index and all the documents it contains.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Delete-Index" + }, + "parameters": [ + { + "name": "indexName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the index to delete." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/IfMatchParameter" + }, + { + "$ref": "#/parameters/IfNoneMatchParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "204": { + "description": "" + }, + "404": { + "description": "" + } + } + }, + "get": { + "tags": [ + "Indexes" + ], + "operationId": "Indexes_Get", + "x-ms-examples": { + "SearchServiceGetIndex": { + "$ref": "./examples/SearchServiceGetIndex.json" + } + }, + "description": "Retrieves an index definition.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Index" + }, + "parameters": [ + { + "name": "indexName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the index to retrieve." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/Index" + } + } + } + } + }, + "/indexes('{indexName}')/search.stats": { + "get": { + "tags": [ + "Indexes" + ], + "operationId": "Indexes_GetStatistics", + "x-ms-examples": { + "SearchServiceGetIndexStatistics": { + "$ref": "./examples/SearchServiceGetIndexStatistics.json" + } + }, + "description": "Returns statistics for the given index, including a document count and storage usage.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Index-Statistics" + }, + "parameters": [ + { + "name": "indexName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the index for which to retrieve statistics." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/IndexGetStatisticsResult" + } + } + } + } + }, + "/indexes('{indexName}')/search.analyze": { + "post": { + "tags": [ + "Indexes" + ], + "operationId": "Indexes_Analyze", + "x-ms-examples": { + "SearchServiceIndexAnalyze": { + "$ref": "./examples/SearchServiceIndexAnalyze.json" + } + }, + "description": "Shows how an analyzer breaks text into tokens.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/test-analyzer" + }, + "parameters": [ + { + "name": "indexName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the index for which to test an analyzer." + }, + { + "name": "request", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AnalyzeRequest" + }, + "description": "The text and analyzer or analysis components to test." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/AnalyzeResult" + } + } + } + } + }, + "/servicestats": { + "get": { + "tags": [ + "Service" + ], + "operationId": "GetServiceStatistics", + "x-ms-examples": { + "SearchServiceGetServiceStatistics": { + "$ref": "./examples/SearchServiceGetServiceStatistics.json" + } + }, + "description": "Gets service level statistics for a search service.", + "parameters": [ + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "x-ms-request-id": "request-id", + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/ServiceStatistics" + } + } + } + } + } + }, + "definitions": { + "AnalyzeRequest": { + "properties": { + "text": { + "type": "string", + "description": "The text to break into tokens." + }, + "analyzer": { + "$ref": "#/definitions/AnalyzerName", + "description": "The name of the analyzer to use to break the given text. If this parameter is not specified, you must specify a tokenizer instead. The tokenizer and analyzer parameters are mutually exclusive." + }, + "tokenizer": { + "$ref": "#/definitions/TokenizerName", + "description": "The name of the tokenizer to use to break the given text. If this parameter is not specified, you must specify an analyzer instead. The tokenizer and analyzer parameters are mutually exclusive." + }, + "tokenFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/TokenFilterName", + "x-nullable": false + }, + "description": "An optional list of token filters to use when breaking the given text. This parameter can only be set when using the tokenizer parameter." + }, + "charFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/CharFilterName", + "x-nullable": false + }, + "description": "An optional list of character filters to use when breaking the given text. This parameter can only be set when using the tokenizer parameter." + } + }, + "required": [ + "text" + ], + "description": "Specifies some text and analysis components used to break that text into tokens." + }, + "AnalyzeResult": { + "properties": { + "tokens": { + "type": "array", + "items": { + "$ref": "#/definitions/TokenInfo" + }, + "description": "The list of tokens returned by the analyzer specified in the request." + } + }, + "description": "The result of testing an analyzer on text." + }, + "TokenInfo": { + "properties": { + "token": { + "type": "string", + "readOnly": true, + "description": "The token returned by the analyzer." + }, + "startOffset": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The index of the first character of the token in the input text." + }, + "endOffset": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The index of the last character of the token in the input text." + }, + "position": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "The position of the token in the input text relative to other tokens. The first token in the input text has position 0, the next has position 1, and so on. Depending on the analyzer used, some tokens might have the same position, for example if they are synonyms of each other." + } + }, + "description": "Information about a token returned by an analyzer." + }, + "AnalyzerName": { + "type": "string", + "enum": [ + "ar.microsoft", + "ar.lucene", + "hy.lucene", + "bn.microsoft", + "eu.lucene", + "bg.microsoft", + "bg.lucene", + "ca.microsoft", + "ca.lucene", + "zh-Hans.microsoft", + "zh-Hans.lucene", + "zh-Hant.microsoft", + "zh-Hant.lucene", + "hr.microsoft", + "cs.microsoft", + "cs.lucene", + "da.microsoft", + "da.lucene", + "nl.microsoft", + "nl.lucene", + "en.microsoft", + "en.lucene", + "et.microsoft", + "fi.microsoft", + "fi.lucene", + "fr.microsoft", + "fr.lucene", + "gl.lucene", + "de.microsoft", + "de.lucene", + "el.microsoft", + "el.lucene", + "gu.microsoft", + "he.microsoft", + "hi.microsoft", + "hi.lucene", + "hu.microsoft", + "hu.lucene", + "is.microsoft", + "id.microsoft", + "id.lucene", + "ga.lucene", + "it.microsoft", + "it.lucene", + "ja.microsoft", + "ja.lucene", + "kn.microsoft", + "ko.microsoft", + "ko.lucene", + "lv.microsoft", + "lv.lucene", + "lt.microsoft", + "ml.microsoft", + "ms.microsoft", + "mr.microsoft", + "nb.microsoft", + "no.lucene", + "fa.lucene", + "pl.microsoft", + "pl.lucene", + "pt-BR.microsoft", + "pt-BR.lucene", + "pt-PT.microsoft", + "pt-PT.lucene", + "pa.microsoft", + "ro.microsoft", + "ro.lucene", + "ru.microsoft", + "ru.lucene", + "sr-cyrillic.microsoft", + "sr-latin.microsoft", + "sk.microsoft", + "sl.microsoft", + "es.microsoft", + "es.lucene", + "sv.microsoft", + "sv.lucene", + "ta.microsoft", + "te.microsoft", + "th.microsoft", + "th.lucene", + "tr.microsoft", + "tr.lucene", + "uk.microsoft", + "ur.microsoft", + "vi.microsoft", + "standard.lucene", + "standardasciifolding.lucene", + "keyword", + "pattern", + "simple", + "stop", + "whitespace" + ], + "x-ms-enum": { + "name": "AnalyzerName", + "modelAsString": true + }, + "description": "Defines the names of all text analyzers supported by Azure Cognitive Search.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Language-support" + } + }, + "TokenizerName": { + "type": "string", + "enum": [ + "classic", + "edgeNGram", + "keyword_v2", + "letter", + "lowercase", + "microsoft_language_tokenizer", + "microsoft_language_stemming_tokenizer", + "nGram", + "path_hierarchy_v2", + "pattern", + "standard_v2", + "uax_url_email", + "whitespace" + ], + "x-ms-enum": { + "name": "TokenizerName", + "modelAsString": true, + "values": [ + { + "value": "classic", + "name": "Classic", + "description": "Grammar-based tokenizer that is suitable for processing most European-language documents. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicTokenizer.html" + }, + { + "value": "edgeNGram", + "name": "EdgeNGram", + "description": "Tokenizes the input from an edge into n-grams of the given size(s). See https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenizer.html" + }, + { + "value": "keyword_v2", + "name": "Keyword", + "description": "Emits the entire input as a single token. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordTokenizer.html" + }, + { + "value": "letter", + "name": "Letter", + "description": "Divides text at non-letters. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LetterTokenizer.html" + }, + { + "value": "lowercase", + "name": "Lowercase", + "description": "Divides text at non-letters and converts them to lower case. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LowerCaseTokenizer.html" + }, + { + "value": "microsoft_language_tokenizer", + "name": "MicrosoftLanguageTokenizer", + "description": "Divides text using language-specific rules." + }, + { + "value": "microsoft_language_stemming_tokenizer", + "name": "MicrosoftLanguageStemmingTokenizer", + "description": "Divides text using language-specific rules and reduces words to their base forms." + }, + { + "value": "nGram", + "name": "NGram", + "description": "Tokenizes the input into n-grams of the given size(s). See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenizer.html" + }, + { + "value": "path_hierarchy_v2", + "name": "PathHierarchy", + "description": "Tokenizer for path-like hierarchies. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/path/PathHierarchyTokenizer.html" + }, + { + "value": "pattern", + "name": "Pattern", + "description": "Tokenizer that uses regex pattern matching to construct distinct tokens. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternTokenizer.html" + }, + { + "value": "standard_v2", + "name": "Standard", + "description": "Standard Lucene analyzer; Composed of the standard tokenizer, lowercase filter and stop filter. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/StandardTokenizer.html" + }, + { + "value": "uax_url_email", + "name": "UaxUrlEmail", + "description": "Tokenizes urls and emails as one token. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/UAX29URLEmailTokenizer.html" + }, + { + "value": "whitespace", + "name": "Whitespace", + "description": "Divides text at whitespace. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/WhitespaceTokenizer.html" + } + ] + }, + "description": "Defines the names of all tokenizers supported by Azure Cognitive Search.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" + } + }, + "TokenFilterName": { + "type": "string", + "enum": [ + "arabic_normalization", + "apostrophe", + "asciifolding", + "cjk_bigram", + "cjk_width", + "classic", + "common_grams", + "edgeNGram_v2", + "elision", + "german_normalization", + "hindi_normalization", + "indic_normalization", + "keyword_repeat", + "kstem", + "length", + "limit", + "lowercase", + "nGram_v2", + "persian_normalization", + "phonetic", + "porter_stem", + "reverse", + "scandinavian_normalization", + "scandinavian_folding", + "shingle", + "snowball", + "sorani_normalization", + "stemmer", + "stopwords", + "trim", + "truncate", + "unique", + "uppercase", + "word_delimiter" + ], + "x-ms-enum": { + "name": "TokenFilterName", + "modelAsString": true, + "values": [ + { + "value": "arabic_normalization", + "name": "ArabicNormalization", + "description": "A token filter that applies the Arabic normalizer to normalize the orthography. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ar/ArabicNormalizationFilter.html" + }, + { + "value": "apostrophe", + "name": "Apostrophe", + "description": "Strips all characters after an apostrophe (including the apostrophe itself). See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/tr/ApostropheFilter.html" + }, + { + "value": "asciifolding", + "name": "AsciiFolding", + "description": "Converts alphabetic, numeric, and symbolic Unicode characters which are not in the first 127 ASCII characters (the \"Basic Latin\" Unicode block) into their ASCII equivalents, if such equivalents exist. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ASCIIFoldingFilter.html" + }, + { + "value": "cjk_bigram", + "name": "CjkBigram", + "description": "Forms bigrams of CJK terms that are generated from StandardTokenizer. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKBigramFilter.html" + }, + { + "value": "cjk_width", + "name": "CjkWidth", + "description": "Normalizes CJK width differences. Folds fullwidth ASCII variants into the equivalent basic Latin, and half-width Katakana variants into the equivalent Kana. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKWidthFilter.html" + }, + { + "value": "classic", + "name": "Classic", + "description": "Removes English possessives, and dots from acronyms. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicFilter.html" + }, + { + "value": "common_grams", + "name": "CommonGram", + "description": "Construct bigrams for frequently occurring terms while indexing. Single terms are still indexed too, with bigrams overlaid. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/commongrams/CommonGramsFilter.html" + }, + { + "value": "edgeNGram_v2", + "name": "EdgeNGram", + "description": "Generates n-grams of the given size(s) starting from the front or the back of an input token. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenFilter.html" + }, + { + "value": "elision", + "name": "Elision", + "description": "Removes elisions. For example, \"l'avion\" (the plane) will be converted to \"avion\" (plane). See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/util/ElisionFilter.html" + }, + { + "value": "german_normalization", + "name": "GermanNormalization", + "description": "Normalizes German characters according to the heuristics of the German2 snowball algorithm. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/de/GermanNormalizationFilter.html" + }, + { + "value": "hindi_normalization", + "name": "HindiNormalization", + "description": "Normalizes text in Hindi to remove some differences in spelling variations. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/hi/HindiNormalizationFilter.html" + }, + { + "value": "indic_normalization", + "name": "IndicNormalization", + "description": "Normalizes the Unicode representation of text in Indian languages. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/in/IndicNormalizationFilter.html" + }, + { + "value": "keyword_repeat", + "name": "KeywordRepeat", + "description": "Emits each incoming token twice, once as keyword and once as non-keyword. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/KeywordRepeatFilter.html" + }, + { + "value": "kstem", + "name": "KStem", + "description": "A high-performance kstem filter for English. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/en/KStemFilter.html" + }, + { + "value": "length", + "name": "Length", + "description": "Removes words that are too long or too short. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LengthFilter.html" + }, + { + "value": "limit", + "name": "Limit", + "description": "Limits the number of tokens while indexing. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LimitTokenCountFilter.html" + }, + { + "value": "lowercase", + "name": "Lowercase", + "description": "Normalizes token text to lower case. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LowerCaseFilter.htm" + }, + { + "value": "nGram_v2", + "name": "NGram", + "description": "Generates n-grams of the given size(s). See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenFilter.html" + }, + { + "value": "persian_normalization", + "name": "PersianNormalization", + "description": "Applies normalization for Persian. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/fa/PersianNormalizationFilter.html" + }, + { + "value": "phonetic", + "name": "Phonetic", + "description": "Create tokens for phonetic matches. See https://lucene.apache.org/core/4_10_3/analyzers-phonetic/org/apache/lucene/analysis/phonetic/package-tree.html" + }, + { + "value": "porter_stem", + "name": "PorterStem", + "description": "Uses the Porter stemming algorithm to transform the token stream. See http://tartarus.org/~martin/PorterStemmer" + }, + { + "value": "reverse", + "name": "Reverse", + "description": "Reverses the token string. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/reverse/ReverseStringFilter.html" + }, + { + "value": "scandinavian_normalization", + "name": "ScandinavianNormalization", + "description": "Normalizes use of the interchangeable Scandinavian characters. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianNormalizationFilter.html" + }, + { + "value": "scandinavian_folding", + "name": "ScandinavianFoldingNormalization", + "description": "Folds Scandinavian characters åÅäæÄÆ->a and öÖøØ->o. It also discriminates against use of double vowels aa, ae, ao, oe and oo, leaving just the first one. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianFoldingFilter.html" + }, + { + "value": "shingle", + "name": "Shingle", + "description": "Creates combinations of tokens as a single token. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/shingle/ShingleFilter.html" + }, + { + "value": "snowball", + "name": "Snowball", + "description": "A filter that stems words using a Snowball-generated stemmer. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/snowball/SnowballFilter.html" + }, + { + "value": "sorani_normalization", + "name": "SoraniNormalization", + "description": "Normalizes the Unicode representation of Sorani text. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ckb/SoraniNormalizationFilter.html" + }, + { + "value": "stemmer", + "name": "Stemmer", + "description": "Language specific stemming filter. See https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#TokenFilters" + }, + { + "value": "stopwords", + "name": "Stopwords", + "description": "Removes stop words from a token stream. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopFilter.html" + }, + { + "value": "trim", + "name": "Trim", + "description": "Trims leading and trailing whitespace from tokens. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TrimFilter.html" + }, + { + "value": "truncate", + "name": "Truncate", + "description": "Truncates the terms to a specific length. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TruncateTokenFilter.html" + }, + { + "value": "unique", + "name": "Unique", + "description": "Filters out tokens with same text as the previous token. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/RemoveDuplicatesTokenFilter.html" + }, + { + "value": "uppercase", + "name": "Uppercase", + "description": "Normalizes token text to upper case. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/UpperCaseFilter.html" + }, + { + "value": "word_delimiter", + "name": "WordDelimiter", + "description": "Splits words into subwords and performs optional transformations on subword groups." + } + ] + }, + "description": "Defines the names of all token filters supported by Azure Cognitive Search.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" + } + }, + "CharFilterName": { + "type": "string", + "enum": [ + "html_strip" + ], + "x-ms-enum": { + "name": "CharFilterName", + "modelAsString": true, + "values": [ + { + "value": "html_strip", + "name": "HtmlStrip", + "description": "A character filter that attempts to strip out HTML constructs. See https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/charfilter/HTMLStripCharFilter.html" + } + ] + }, + "description": "Defines the names of all character filters supported by Azure Cognitive Search.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" + } + }, + "RegexFlags": { + "type": "string", + "enum": [ + "CANON_EQ", + "CASE_INSENSITIVE", + "COMMENTS", + "DOTALL", + "LITERAL", + "MULTILINE", + "UNICODE_CASE", + "UNIX_LINES" + ], + "x-ms-enum": { + "name": "RegexFlags", + "modelAsString": true + }, + "description": "Defines flags that can be combined to control how regular expressions are used in the pattern analyzer and pattern tokenizer.", + "externalDocs": { + "url": "http://docs.oracle.com/javase/6/docs/api/java/util/regex/Pattern.html#field_summary" + } + }, + "DataType": { + "type": "string", + "enum": [ + "Edm.String", + "Edm.Int32", + "Edm.Int64", + "Edm.Double", + "Edm.Boolean", + "Edm.DateTimeOffset", + "Edm.GeographyPoint", + "Edm.ComplexType" + ], + "x-ms-enum": { + "name": "DataType", + "modelAsString": true + }, + "description": "Defines the data type of a field in a search index." + }, + "Analyzer": { + "discriminator": "@odata.type", + "properties": { + "@odata.type": { + "type": "string" + }, + "name": { + "type": "string", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/custom-analyzers-in-azure-search#index-attribute-reference" + }, + "description": "The name of the analyzer. It must only contain letters, digits, spaces, dashes or underscores, can only start and end with alphanumeric characters, and is limited to 128 characters." + } + }, + "required": [ + "@odata.type", + "name" + ], + "description": "Abstract base class for analyzers." + }, + "CustomAnalyzer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.CustomAnalyzer", + "allOf": [ + { + "$ref": "#/definitions/Analyzer" + } + ], + "properties": { + "tokenizer": { + "$ref": "#/definitions/TokenizerName", + "description": "The name of the tokenizer to use to divide continuous text into a sequence of tokens, such as breaking a sentence into words." + }, + "tokenFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/TokenFilterName", + "x-nullable": false + }, + "description": "A list of token filters used to filter out or modify the tokens generated by a tokenizer. For example, you can specify a lowercase filter that converts all characters to lowercase. The filters are run in the order in which they are listed." + }, + "charFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/CharFilterName", + "x-nullable": false + }, + "description": "A list of character filters used to prepare input text before it is processed by the tokenizer. For instance, they can replace certain characters or symbols. The filters are run in the order in which they are listed." + } + }, + "required": [ + "tokenizer" + ], + "description": "Allows you to take control over the process of converting text into indexable/searchable tokens. It's a user-defined configuration consisting of a single predefined tokenizer and one or more filters. The tokenizer is responsible for breaking text into tokens, and the filters for modifying tokens emitted by the tokenizer." + }, + "PatternAnalyzer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternAnalyzer", + "allOf": [ + { + "$ref": "#/definitions/Analyzer" + } + ], + "properties": { + "lowercase": { + "x-ms-client-name": "LowerCaseTerms", + "type": "boolean", + "default": true, + "description": "A value indicating whether terms should be lower-cased. Default is true." + }, + "pattern": { + "type": "string", + "default": "\\W+", + "description": "A regular expression pattern to match token separators. Default is an expression that matches one or more whitespace characters." + }, + "flags": { + "$ref": "#/definitions/RegexFlags", + "description": "Regular expression flags." + }, + "stopwords": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of stopwords." + } + }, + "description": "Flexibly separates text into terms via a regular expression pattern. This analyzer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/PatternAnalyzer.html" + } + }, + "StandardAnalyzer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardAnalyzer", + "allOf": [ + { + "$ref": "#/definitions/Analyzer" + } + ], + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "default": 255, + "maximum": 300, + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length are split. The maximum token length that can be used is 300 characters." + }, + "stopwords": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of stopwords." + } + }, + "description": "Standard Apache Lucene analyzer; Composed of the standard tokenizer, lowercase filter and stop filter.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/StandardAnalyzer.html" + } + }, + "StopAnalyzer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StopAnalyzer", + "allOf": [ + { + "$ref": "#/definitions/Analyzer" + } + ], + "properties": { + "stopwords": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of stopwords." + } + }, + "description": "Divides text at non-letters; Applies the lowercase and stopword token filters. This analyzer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopAnalyzer.html" + } + }, + "Tokenizer": { + "discriminator": "@odata.type", + "properties": { + "@odata.type": { + "type": "string" + }, + "name": { + "type": "string", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/custom-analyzers-in-azure-search#index-attribute-reference" + }, + "description": "The name of the tokenizer. It must only contain letters, digits, spaces, dashes or underscores, can only start and end with alphanumeric characters, and is limited to 128 characters." + } + }, + "required": [ + "@odata.type", + "name" + ], + "description": "Abstract base class for tokenizers.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" + } + }, + "ClassicTokenizer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.ClassicTokenizer", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "default": 255, + "maximum": 300, + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length are split. The maximum token length that can be used is 300 characters." + } + }, + "description": "Grammar-based tokenizer that is suitable for processing most European-language documents. This tokenizer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicTokenizer.html" + } + }, + "TokenCharacterKind": { + "type": "string", + "enum": [ + "letter", + "digit", + "whitespace", + "punctuation", + "symbol" + ], + "x-ms-enum": { + "name": "TokenCharacterKind", + "modelAsString": false + }, + "description": "Represents classes of characters on which a token filter can operate." + }, + "EdgeNGramTokenizer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenizer", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "default": 1, + "maximum": 300, + "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the value of maxGram." + }, + "maxGram": { + "type": "integer", + "format": "int32", + "default": 2, + "maximum": 300, + "description": "The maximum n-gram length. Default is 2. Maximum is 300." + }, + "tokenChars": { + "type": "array", + "items": { + "$ref": "#/definitions/TokenCharacterKind", + "x-nullable": false + }, + "description": "Character classes to keep in the tokens." + } + }, + "description": "Tokenizes the input from an edge into n-grams of the given size(s). This tokenizer is implemented using Apache Lucene.", + "externalDocs": { + "url": "https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenizer.html" + } + }, + "KeywordTokenizer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordTokenizer", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "bufferSize": { + "type": "integer", + "format": "int32", + "default": 256, + "description": "The read buffer size in bytes. Default is 256." + } + }, + "description": "Emits the entire input as a single token. This tokenizer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordTokenizer.html" + }, + "x-ms-external": true + }, + "KeywordTokenizerV2": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordTokenizerV2", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "default": 256, + "maximum": 300, + "description": "The maximum token length. Default is 256. Tokens longer than the maximum length are split. The maximum token length that can be used is 300 characters." + } + }, + "description": "Emits the entire input as a single token. This tokenizer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordTokenizer.html" + } + }, + "MicrosoftTokenizerLanguage": { + "type": "string", + "enum": [ + "bangla", + "bulgarian", + "catalan", + "chineseSimplified", + "chineseTraditional", + "croatian", + "czech", + "danish", + "dutch", + "english", + "french", + "german", + "greek", + "gujarati", + "hindi", + "icelandic", + "indonesian", + "italian", + "japanese", + "kannada", + "korean", + "malay", + "malayalam", + "marathi", + "norwegianBokmaal", + "polish", + "portuguese", + "portugueseBrazilian", + "punjabi", + "romanian", + "russian", + "serbianCyrillic", + "serbianLatin", + "slovenian", + "spanish", + "swedish", + "tamil", + "telugu", + "thai", + "ukrainian", + "urdu", + "vietnamese" + ], + "x-ms-enum": { + "name": "MicrosoftTokenizerLanguage", + "modelAsString": false + }, + "description": "Lists the languages supported by the Microsoft language tokenizer." + }, + "MicrosoftLanguageTokenizer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.MicrosoftLanguageTokenizer", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "default": 255, + "maximum": 300, + "description": "The maximum token length. Tokens longer than the maximum length are split. Maximum token length that can be used is 300 characters. Tokens longer than 300 characters are first split into tokens of length 300 and then each of those tokens is split based on the max token length set. Default is 255." + }, + "isSearchTokenizer": { + "type": "boolean", + "default": false, + "description": "A value indicating how the tokenizer is used. Set to true if used as the search tokenizer, set to false if used as the indexing tokenizer. Default is false." + }, + "language": { + "$ref": "#/definitions/MicrosoftTokenizerLanguage", + "description": "The language to use. The default is English." + } + }, + "description": "Divides text using language-specific rules." + }, + "MicrosoftStemmingTokenizerLanguage": { + "type": "string", + "enum": [ + "arabic", + "bangla", + "bulgarian", + "catalan", + "croatian", + "czech", + "danish", + "dutch", + "english", + "estonian", + "finnish", + "french", + "german", + "greek", + "gujarati", + "hebrew", + "hindi", + "hungarian", + "icelandic", + "indonesian", + "italian", + "kannada", + "latvian", + "lithuanian", + "malay", + "malayalam", + "marathi", + "norwegianBokmaal", + "polish", + "portuguese", + "portugueseBrazilian", + "punjabi", + "romanian", + "russian", + "serbianCyrillic", + "serbianLatin", + "slovak", + "slovenian", + "spanish", + "swedish", + "tamil", + "telugu", + "turkish", + "ukrainian", + "urdu" + ], + "x-ms-enum": { + "name": "MicrosoftStemmingTokenizerLanguage", + "modelAsString": false + }, + "description": "Lists the languages supported by the Microsoft language stemming tokenizer." + }, + "MicrosoftLanguageStemmingTokenizer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "default": 255, + "maximum": 300, + "description": "The maximum token length. Tokens longer than the maximum length are split. Maximum token length that can be used is 300 characters. Tokens longer than 300 characters are first split into tokens of length 300 and then each of those tokens is split based on the max token length set. Default is 255." + }, + "isSearchTokenizer": { + "type": "boolean", + "default": false, + "description": "A value indicating how the tokenizer is used. Set to true if used as the search tokenizer, set to false if used as the indexing tokenizer. Default is false." + }, + "language": { + "$ref": "#/definitions/MicrosoftStemmingTokenizerLanguage", + "description": "The language to use. The default is English." + } + }, + "description": "Divides text using language-specific rules and reduces words to their base forms." + }, + "NGramTokenizer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenizer", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "default": 1, + "maximum": 300, + "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the value of maxGram." + }, + "maxGram": { + "type": "integer", + "format": "int32", + "default": 2, + "maximum": 300, + "description": "The maximum n-gram length. Default is 2. Maximum is 300." + }, + "tokenChars": { + "type": "array", + "items": { + "$ref": "#/definitions/TokenCharacterKind", + "x-nullable": false + }, + "description": "Character classes to keep in the tokens." + } + }, + "description": "Tokenizes the input into n-grams of the given size(s). This tokenizer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenizer.html" + } + }, + "PathHierarchyTokenizer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PathHierarchyTokenizer", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "delimiter": { + "type": "string", + "format": "char", + "default": "/", + "description": "The delimiter character to use. Default is \"/\"." + }, + "replacement": { + "type": "string", + "format": "char", + "default": "/", + "description": "A value that, if set, replaces the delimiter character. Default is \"/\"." + }, + "bufferSize": { + "type": "integer", + "format": "int32", + "default": 1024, + "description": "The buffer size. Default is 1024." + }, + "reverse": { + "x-ms-client-name": "ReverseTokenOrder", + "type": "boolean", + "default": false, + "description": "A value indicating whether to generate tokens in reverse order. Default is false." + }, + "skip": { + "x-ms-client-name": "NumberOfTokensToSkip", + "type": "integer", + "format": "int32", + "default": 0, + "description": "The number of initial tokens to skip. Default is 0." + } + }, + "description": "Tokenizer for path-like hierarchies. This tokenizer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/path/PathHierarchyTokenizer.html" + }, + "x-ms-external": true + }, + "PathHierarchyTokenizerV2": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PathHierarchyTokenizerV2", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "delimiter": { + "type": "string", + "format": "char", + "default": "/", + "description": "The delimiter character to use. Default is \"/\"." + }, + "replacement": { + "type": "string", + "format": "char", + "default": "/", + "description": "A value that, if set, replaces the delimiter character. Default is \"/\"." + }, + "maxTokenLength": { + "type": "integer", + "format": "int32", + "default": 300, + "maximum": 300, + "description": "The maximum token length. Default and maximum is 300." + }, + "reverse": { + "x-ms-client-name": "ReverseTokenOrder", + "type": "boolean", + "default": false, + "description": "A value indicating whether to generate tokens in reverse order. Default is false." + }, + "skip": { + "x-ms-client-name": "NumberOfTokensToSkip", + "type": "integer", + "format": "int32", + "default": 0, + "description": "The number of initial tokens to skip. Default is 0." + } + }, + "description": "Tokenizer for path-like hierarchies. This tokenizer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/path/PathHierarchyTokenizer.html" + } + }, + "PatternTokenizer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternTokenizer", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "pattern": { + "type": "string", + "default": "\\W+", + "description": "A regular expression pattern to match token separators. Default is an expression that matches one or more whitespace characters." + }, + "flags": { + "$ref": "#/definitions/RegexFlags", + "description": "Regular expression flags." + }, + "group": { + "type": "integer", + "format": "int32", + "default": -1, + "description": "The zero-based ordinal of the matching group in the regular expression pattern to extract into tokens. Use -1 if you want to use the entire pattern to split the input into tokens, irrespective of matching groups. Default is -1." + } + }, + "description": "Tokenizer that uses regex pattern matching to construct distinct tokens. This tokenizer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternTokenizer.html" + } + }, + "StandardTokenizer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardTokenizer", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "default": 255, + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length are split." + } + }, + "description": "Breaks text following the Unicode Text Segmentation rules. This tokenizer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/StandardTokenizer.html" + }, + "x-ms-external": true + }, + "StandardTokenizerV2": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardTokenizerV2", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "default": 255, + "maximum": 300, + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length are split. The maximum token length that can be used is 300 characters." + } + }, + "description": "Breaks text following the Unicode Text Segmentation rules. This tokenizer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/StandardTokenizer.html" + } + }, + "UaxUrlEmailTokenizer": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.UaxUrlEmailTokenizer", + "allOf": [ + { + "$ref": "#/definitions/Tokenizer" + } + ], + "properties": { + "maxTokenLength": { + "type": "integer", + "format": "int32", + "default": 255, + "maximum": 300, + "description": "The maximum token length. Default is 255. Tokens longer than the maximum length are split. The maximum token length that can be used is 300 characters." + } + }, + "description": "Tokenizes urls and emails as one token. This tokenizer is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/UAX29URLEmailTokenizer.html" + } + }, + "TokenFilter": { + "discriminator": "@odata.type", + "properties": { + "@odata.type": { + "type": "string" + }, + "name": { + "type": "string", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/custom-analyzers-in-azure-search#index-attribute-reference" + }, + "description": "The name of the token filter. It must only contain letters, digits, spaces, dashes or underscores, can only start and end with alphanumeric characters, and is limited to 128 characters." + } + }, + "required": [ + "@odata.type", + "name" + ], + "description": "Abstract base class for token filters.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" + } + }, + "AsciiFoldingTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.AsciiFoldingTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "preserveOriginal": { + "type": "boolean", + "default": false, + "description": "A value indicating whether the original token will be kept. Default is false." + } + }, + "description": "Converts alphabetic, numeric, and symbolic Unicode characters which are not in the first 127 ASCII characters (the \"Basic Latin\" Unicode block) into their ASCII equivalents, if such equivalents exist. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ASCIIFoldingFilter.html" + } + }, + "CjkBigramTokenFilterScripts": { + "type": "string", + "enum": [ + "han", + "hiragana", + "katakana", + "hangul" + ], + "x-ms-enum": { + "name": "CjkBigramTokenFilterScripts", + "modelAsString": false + }, + "description": "Scripts that can be ignored by CjkBigramTokenFilter." + }, + "CjkBigramTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.CjkBigramTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "ignoreScripts": { + "type": "array", + "items": { + "$ref": "#/definitions/CjkBigramTokenFilterScripts", + "x-nullable": false + }, + "description": "The scripts to ignore." + }, + "outputUnigrams": { + "type": "boolean", + "default": false, + "description": "A value indicating whether to output both unigrams and bigrams (if true), or just bigrams (if false). Default is false." + } + }, + "description": "Forms bigrams of CJK terms that are generated from StandardTokenizer. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKBigramFilter.html" + } + }, + "CommonGramTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.CommonGramTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "commonWords": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The set of common words." + }, + "ignoreCase": { + "type": "boolean", + "default": false, + "description": "A value indicating whether common words matching will be case insensitive. Default is false." + }, + "queryMode": { + "x-ms-client-name": "UseQueryMode", + "type": "boolean", + "default": false, + "description": "A value that indicates whether the token filter is in query mode. When in query mode, the token filter generates bigrams and then removes common words and single terms followed by a common word. Default is false." + } + }, + "required": [ + "commonWords" + ], + "description": "Construct bigrams for frequently occurring terms while indexing. Single terms are still indexed too, with bigrams overlaid. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/commongrams/CommonGramsFilter.html" + } + }, + "DictionaryDecompounderTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "wordList": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of words to match against." + }, + "minWordSize": { + "type": "integer", + "format": "int32", + "default": 5, + "maximum": 300, + "description": "The minimum word size. Only words longer than this get processed. Default is 5. Maximum is 300." + }, + "minSubwordSize": { + "type": "integer", + "format": "int32", + "default": 2, + "maximum": 300, + "description": "The minimum subword size. Only subwords longer than this are outputted. Default is 2. Maximum is 300." + }, + "maxSubwordSize": { + "type": "integer", + "format": "int32", + "default": 15, + "maximum": 300, + "description": "The maximum subword size. Only subwords shorter than this are outputted. Default is 15. Maximum is 300." + }, + "onlyLongestMatch": { + "type": "boolean", + "default": false, + "description": "A value indicating whether to add only the longest matching subword to the output. Default is false." + } + }, + "required": [ + "wordList" + ], + "description": "Decomposes compound words found in many Germanic languages. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/compound/DictionaryCompoundWordTokenFilter.html" + } + }, + "EdgeNGramTokenFilterSide": { + "type": "string", + "enum": [ + "front", + "back" + ], + "x-ms-enum": { + "name": "EdgeNGramTokenFilterSide", + "modelAsString": false + }, + "description": "Specifies which side of the input an n-gram should be generated from." + }, + "EdgeNGramTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "default": 1, + "description": "The minimum n-gram length. Default is 1. Must be less than the value of maxGram." + }, + "maxGram": { + "type": "integer", + "format": "int32", + "default": 2, + "description": "The maximum n-gram length. Default is 2." + }, + "side": { + "$ref": "#/definitions/EdgeNGramTokenFilterSide", + "default": "front", + "description": "Specifies which side of the input the n-gram should be generated from. Default is \"front\"." + } + }, + "description": "Generates n-grams of the given size(s) starting from the front or the back of an input token. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenFilter.html" + }, + "x-ms-external": true + }, + "EdgeNGramTokenFilterV2": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenFilterV2", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "default": 1, + "maximum": 300, + "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the value of maxGram." + }, + "maxGram": { + "type": "integer", + "format": "int32", + "default": 2, + "maximum": 300, + "description": "The maximum n-gram length. Default is 2. Maximum is 300." + }, + "side": { + "$ref": "#/definitions/EdgeNGramTokenFilterSide", + "default": "front", + "description": "Specifies which side of the input the n-gram should be generated from. Default is \"front\"." + } + }, + "description": "Generates n-grams of the given size(s) starting from the front or the back of an input token. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenFilter.html" + } + }, + "ElisionTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.ElisionTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "articles": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The set of articles to remove." + } + }, + "description": "Removes elisions. For example, \"l'avion\" (the plane) will be converted to \"avion\" (plane). This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/util/ElisionFilter.html" + } + }, + "KeepTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeepTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "keepWords": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of words to keep." + }, + "keepWordsCase": { + "x-ms-client-name": "LowerCaseKeepWords", + "type": "boolean", + "default": false, + "description": "A value indicating whether to lower case all words first. Default is false." + } + }, + "required": [ + "keepWords" + ], + "description": "A token filter that only keeps tokens with text contained in a specified list of words. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/KeepWordFilter.html" + } + }, + "KeywordMarkerTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordMarkerTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "keywords": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of words to mark as keywords." + }, + "ignoreCase": { + "type": "boolean", + "default": false, + "description": "A value indicating whether to ignore case. If true, all words are converted to lower case first. Default is false." + } + }, + "required": [ + "keywords" + ], + "description": "Marks terms as keywords. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/KeywordMarkerFilter.html" + } + }, + "LengthTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.LengthTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "min": { + "type": "integer", + "format": "int32", + "default": 0, + "maximum": 300, + "description": "The minimum length in characters. Default is 0. Maximum is 300. Must be less than the value of max." + }, + "max": { + "type": "integer", + "format": "int32", + "default": 300, + "maximum": 300, + "description": "The maximum length in characters. Default and maximum is 300." + } + }, + "description": "Removes words that are too long or too short. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LengthFilter.html" + } + }, + "LimitTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.LimitTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "maxTokenCount": { + "type": "integer", + "format": "int32", + "default": 1, + "description": "The maximum number of tokens to produce. Default is 1." + }, + "consumeAllTokens": { + "type": "boolean", + "default": false, + "description": "A value indicating whether all tokens from the input must be consumed even if maxTokenCount is reached. Default is false." + } + }, + "description": "Limits the number of tokens while indexing. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LimitTokenCountFilter.html" + } + }, + "NGramTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "default": 1, + "description": "The minimum n-gram length. Default is 1. Must be less than the value of maxGram." + }, + "maxGram": { + "type": "integer", + "format": "int32", + "default": 2, + "description": "The maximum n-gram length. Default is 2." + } + }, + "description": "Generates n-grams of the given size(s). This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenFilter.html" + }, + "x-ms-external": true + }, + "NGramTokenFilterV2": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenFilterV2", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "minGram": { + "type": "integer", + "format": "int32", + "default": 1, + "maximum": 300, + "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the value of maxGram." + }, + "maxGram": { + "type": "integer", + "format": "int32", + "default": 2, + "maximum": 300, + "description": "The maximum n-gram length. Default is 2. Maximum is 300." + } + }, + "description": "Generates n-grams of the given size(s). This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenFilter.html" + } + }, + "PatternCaptureTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternCaptureTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "patterns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of patterns to match against each token." + }, + "preserveOriginal": { + "type": "boolean", + "default": true, + "description": "A value indicating whether to return the original token even if one of the patterns matches. Default is true." + } + }, + "required": [ + "patterns" + ], + "description": "Uses Java regexes to emit multiple tokens - one for each capture group in one or more patterns. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternCaptureGroupTokenFilter.html" + } + }, + "PatternReplaceTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternReplaceTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "pattern": { + "type": "string", + "description": "A regular expression pattern." + }, + "replacement": { + "type": "string", + "description": "The replacement text." + } + }, + "required": [ + "pattern", + "replacement" + ], + "description": "A character filter that replaces characters in the input string. It uses a regular expression to identify character sequences to preserve and a replacement pattern to identify characters to replace. For example, given the input text \"aa bb aa bb\", pattern \"(aa)\\s+(bb)\", and replacement \"$1#$2\", the result would be \"aa#bb aa#bb\". This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternReplaceFilter.html" + } + }, + "PhoneticEncoder": { + "type": "string", + "enum": [ + "metaphone", + "doubleMetaphone", + "soundex", + "refinedSoundex", + "caverphone1", + "caverphone2", + "cologne", + "nysiis", + "koelnerPhonetik", + "haasePhonetik", + "beiderMorse" + ], + "x-ms-enum": { + "name": "PhoneticEncoder", + "modelAsString": false + }, + "description": "Identifies the type of phonetic encoder to use with a PhoneticTokenFilter." + }, + "PhoneticTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PhoneticTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "encoder": { + "$ref": "#/definitions/PhoneticEncoder", + "default": "metaphone", + "description": "The phonetic encoder to use. Default is \"metaphone\"." + }, + "replace": { + "x-ms-client-name": "ReplaceOriginalTokens", + "type": "boolean", + "default": true, + "description": "A value indicating whether encoded tokens should replace original tokens. If false, encoded tokens are added as synonyms. Default is true." + } + }, + "description": "Create tokens for phonetic matches. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "https://lucene.apache.org/core/4_10_3/analyzers-phonetic/org/apache/lucene/analysis/phonetic/package-tree.html" + } + }, + "ShingleTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.ShingleTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "maxShingleSize": { + "type": "integer", + "format": "int32", + "default": 2, + "minimum": 2, + "description": "The maximum shingle size. Default and minimum value is 2." + }, + "minShingleSize": { + "type": "integer", + "format": "int32", + "default": 2, + "minimum": 2, + "description": "The minimum shingle size. Default and minimum value is 2. Must be less than the value of maxShingleSize." + }, + "outputUnigrams": { + "type": "boolean", + "default": true, + "description": "A value indicating whether the output stream will contain the input tokens (unigrams) as well as shingles. Default is true." + }, + "outputUnigramsIfNoShingles": { + "type": "boolean", + "default": false, + "description": "A value indicating whether to output unigrams for those times when no shingles are available. This property takes precedence when outputUnigrams is set to false. Default is false." + }, + "tokenSeparator": { + "type": "string", + "default": " ", + "description": "The string to use when joining adjacent tokens to form a shingle. Default is a single space (\" \")." + }, + "filterToken": { + "type": "string", + "default": "_", + "description": "The string to insert for each position at which there is no token. Default is an underscore (\"_\")." + } + }, + "description": "Creates combinations of tokens as a single token. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/shingle/ShingleFilter.html" + } + }, + "SnowballTokenFilterLanguage": { + "type": "string", + "enum": [ + "armenian", + "basque", + "catalan", + "danish", + "dutch", + "english", + "finnish", + "french", + "german", + "german2", + "hungarian", + "italian", + "kp", + "lovins", + "norwegian", + "porter", + "portuguese", + "romanian", + "russian", + "spanish", + "swedish", + "turkish" + ], + "x-ms-enum": { + "name": "SnowballTokenFilterLanguage", + "modelAsString": false + }, + "description": "The language to use for a Snowball token filter." + }, + "SnowballTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.SnowballTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "language": { + "$ref": "#/definitions/SnowballTokenFilterLanguage", + "description": "The language to use." + } + }, + "required": [ + "language" + ], + "description": "A filter that stems words using a Snowball-generated stemmer. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/snowball/SnowballFilter.html" + } + }, + "StemmerTokenFilterLanguage": { + "type": "string", + "enum": [ + "arabic", + "armenian", + "basque", + "brazilian", + "bulgarian", + "catalan", + "czech", + "danish", + "dutch", + "dutchKp", + "english", + "lightEnglish", + "minimalEnglish", + "possessiveEnglish", + "porter2", + "lovins", + "finnish", + "lightFinnish", + "french", + "lightFrench", + "minimalFrench", + "galician", + "minimalGalician", + "german", + "german2", + "lightGerman", + "minimalGerman", + "greek", + "hindi", + "hungarian", + "lightHungarian", + "indonesian", + "irish", + "italian", + "lightItalian", + "sorani", + "latvian", + "norwegian", + "lightNorwegian", + "minimalNorwegian", + "lightNynorsk", + "minimalNynorsk", + "portuguese", + "lightPortuguese", + "minimalPortuguese", + "portugueseRslp", + "romanian", + "russian", + "lightRussian", + "spanish", + "lightSpanish", + "swedish", + "lightSwedish", + "turkish" + ], + "x-ms-enum": { + "name": "StemmerTokenFilterLanguage", + "modelAsString": false + }, + "description": "The language to use for a stemmer token filter." + }, + "StemmerTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StemmerTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "language": { + "$ref": "#/definitions/StemmerTokenFilterLanguage", + "description": "The language to use." + } + }, + "required": [ + "language" + ], + "description": "Language specific stemming filter. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#TokenFilters" + } + }, + "StemmerOverrideTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StemmerOverrideTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "rules": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of stemming rules in the following format: \"word => stem\", for example: \"ran => run\"." + } + }, + "required": [ + "rules" + ], + "description": "Provides the ability to override other stemming filters with custom dictionary-based stemming. Any dictionary-stemmed terms will be marked as keywords so that they will not be stemmed with stemmers down the chain. Must be placed before any stemming filters. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/StemmerOverrideFilter.html" + } + }, + "StopwordsList": { + "type": "string", + "enum": [ + "arabic", + "armenian", + "basque", + "brazilian", + "bulgarian", + "catalan", + "czech", + "danish", + "dutch", + "english", + "finnish", + "french", + "galician", + "german", + "greek", + "hindi", + "hungarian", + "indonesian", + "irish", + "italian", + "latvian", + "norwegian", + "persian", + "portuguese", + "romanian", + "russian", + "sorani", + "spanish", + "swedish", + "thai", + "turkish" + ], + "x-ms-enum": { + "name": "StopwordsList", + "modelAsString": false + }, + "description": "Identifies a predefined list of language-specific stopwords." + }, + "StopwordsTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.StopwordsTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "stopwords": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of stopwords. This property and the stopwords list property cannot both be set." + }, + "stopwordsList": { + "$ref": "#/definitions/StopwordsList", + "default": "english", + "description": "A predefined list of stopwords to use. This property and the stopwords property cannot both be set. Default is English." + }, + "ignoreCase": { + "type": "boolean", + "default": false, + "description": "A value indicating whether to ignore case. If true, all words are converted to lower case first. Default is false." + }, + "removeTrailing": { + "x-ms-client-name": "RemoveTrailingStopWords", + "type": "boolean", + "default": true, + "description": "A value indicating whether to ignore the last search term if it's a stop word. Default is true." + } + }, + "description": "Removes stop words from a token stream. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopFilter.html" + } + }, + "SynonymTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.SynonymTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "synonyms": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of synonyms in following one of two formats: 1. incredible, unbelievable, fabulous => amazing - all terms on the left side of => symbol will be replaced with all terms on its right side; 2. incredible, unbelievable, fabulous, amazing - comma separated list of equivalent words. Set the expand option to change how this list is interpreted." + }, + "ignoreCase": { + "type": "boolean", + "default": false, + "description": "A value indicating whether to case-fold input for matching. Default is false." + }, + "expand": { + "type": "boolean", + "default": true, + "description": "A value indicating whether all words in the list of synonyms (if => notation is not used) will map to one another. If true, all words in the list of synonyms (if => notation is not used) will map to one another. The following list: incredible, unbelievable, fabulous, amazing is equivalent to: incredible, unbelievable, fabulous, amazing => incredible, unbelievable, fabulous, amazing. If false, the following list: incredible, unbelievable, fabulous, amazing will be equivalent to: incredible, unbelievable, fabulous, amazing => incredible. Default is true." + } + }, + "required": [ + "synonyms" + ], + "description": "Matches single or multi-word synonyms in a token stream. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/synonym/SynonymFilter.html" + } + }, + "TruncateTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.TruncateTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "length": { + "type": "integer", + "format": "int32", + "default": 300, + "maximum": 300, + "description": "The length at which terms will be truncated. Default and maximum is 300." + } + }, + "description": "Truncates the terms to a specific length. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TruncateTokenFilter.html" + } + }, + "UniqueTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.UniqueTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "onlyOnSamePosition": { + "type": "boolean", + "default": false, + "description": "A value indicating whether to remove duplicates only at the same position. Default is false." + } + }, + "description": "Filters out tokens with same text as the previous token. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/RemoveDuplicatesTokenFilter.html" + } + }, + "WordDelimiterTokenFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.WordDelimiterTokenFilter", + "allOf": [ + { + "$ref": "#/definitions/TokenFilter" + } + ], + "properties": { + "generateWordParts": { + "type": "boolean", + "default": true, + "description": "A value indicating whether to generate part words. If set, causes parts of words to be generated; for example \"AzureSearch\" becomes \"Azure\" \"Search\". Default is true." + }, + "generateNumberParts": { + "type": "boolean", + "default": true, + "description": "A value indicating whether to generate number subwords. Default is true." + }, + "catenateWords": { + "type": "boolean", + "default": false, + "description": "A value indicating whether maximum runs of word parts will be catenated. For example, if this is set to true, \"Azure-Search\" becomes \"AzureSearch\". Default is false." + }, + "catenateNumbers": { + "type": "boolean", + "default": false, + "description": "A value indicating whether maximum runs of number parts will be catenated. For example, if this is set to true, \"1-2\" becomes \"12\". Default is false." + }, + "catenateAll": { + "type": "boolean", + "default": false, + "description": "A value indicating whether all subword parts will be catenated. For example, if this is set to true, \"Azure-Search-1\" becomes \"AzureSearch1\". Default is false." + }, + "splitOnCaseChange": { + "type": "boolean", + "default": true, + "description": "A value indicating whether to split words on caseChange. For example, if this is set to true, \"AzureSearch\" becomes \"Azure\" \"Search\". Default is true." + }, + "preserveOriginal": { + "type": "boolean", + "default": false, + "description": "A value indicating whether original words will be preserved and added to the subword list. Default is false." + }, + "splitOnNumerics": { + "type": "boolean", + "default": true, + "description": "A value indicating whether to split on numbers. For example, if this is set to true, \"Azure1Search\" becomes \"Azure\" \"1\" \"Search\". Default is true." + }, + "stemEnglishPossessive": { + "type": "boolean", + "default": true, + "description": "A value indicating whether to remove trailing \"'s\" for each subword. Default is true." + }, + "protectedWords": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of tokens to protect from being delimited." + } + }, + "description": "Splits words into subwords and performs optional transformations on subword groups. This token filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/WordDelimiterFilter.html" + } + }, + "CharFilter": { + "discriminator": "@odata.type", + "properties": { + "@odata.type": { + "type": "string" + }, + "name": { + "type": "string", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/custom-analyzers-in-azure-search#index-attribute-reference" + }, + "description": "The name of the char filter. It must only contain letters, digits, spaces, dashes or underscores, can only start and end with alphanumeric characters, and is limited to 128 characters." + } + }, + "required": [ + "@odata.type", + "name" + ], + "description": "Abstract base class for character filters.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" + } + }, + "MappingCharFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.MappingCharFilter", + "allOf": [ + { + "$ref": "#/definitions/CharFilter" + } + ], + "properties": { + "mappings": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of mappings of the following format: \"a=>b\" (all occurrences of the character \"a\" will be replaced with character \"b\")." + } + }, + "required": [ + "mappings" + ], + "description": "A character filter that applies mappings defined with the mappings option. Matching is greedy (longest pattern matching at a given point wins). Replacement is allowed to be the empty string. This character filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/charfilter/MappingCharFilter.html" + } + }, + "PatternReplaceCharFilter": { + "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternReplaceCharFilter", + "allOf": [ + { + "$ref": "#/definitions/CharFilter" + } + ], + "properties": { + "pattern": { + "type": "string", + "description": "A regular expression pattern." + }, + "replacement": { + "type": "string", + "description": "The replacement text." + } + }, + "required": [ + "pattern", + "replacement" + ], + "description": "A character filter that replaces characters in the input string. It uses a regular expression to identify character sequences to preserve and a replacement pattern to identify characters to replace. For example, given the input text \"aa bb aa bb\", pattern \"(aa)\\s+(bb)\", and replacement \"$1#$2\", the result would be \"aa#bb aa#bb\". This character filter is implemented using Apache Lucene.", + "externalDocs": { + "url": "https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternReplaceCharFilter.html" + } + }, + "DataSourceCredentials": { + "properties": { + "connectionString": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Data-Source" + }, + "type": "string", + "description": "The connection string for the datasource." + } + }, + "description": "Represents credentials that can be used to connect to a datasource." + }, + "DataContainer": { + "properties": { + "name": { + "type": "string", + "description": "The name of the table or view (for Azure SQL data source) or collection (for CosmosDB data source) that will be indexed." + }, + "query": { + "type": "string", + "description": "A query that is applied to this data container. The syntax and meaning of this parameter is datasource-specific. Not supported by Azure SQL datasources." + } + }, + "required": [ + "name" + ], + "description": "Represents information about the entity (such as Azure SQL table or CosmosDB collection) that will be indexed." + }, + "DataChangeDetectionPolicy": { + "discriminator": "@odata.type", + "properties": { + "@odata.type": { + "type": "string" + } + }, + "required": [ + "@odata.type" + ], + "description": "Abstract base class for data change detection policies." + }, + "HighWaterMarkChangeDetectionPolicy": { + "description": "Defines a data change detection policy that captures changes based on the value of a high water mark column.", + "x-ms-discriminator-value": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", + "allOf": [ + { + "$ref": "#/definitions/DataChangeDetectionPolicy" + } + ], + "properties": { + "highWaterMarkColumnName": { + "type": "string", + "description": "The name of the high water mark column." + } + }, + "required": [ + "highWaterMarkColumnName" + ] + }, + "SqlIntegratedChangeTrackingPolicy": { + "description": "Defines a data change detection policy that captures changes using the Integrated Change Tracking feature of Azure SQL Database.", + "x-ms-discriminator-value": "#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy", + "allOf": [ + { + "$ref": "#/definitions/DataChangeDetectionPolicy" + } + ] + }, + "DataDeletionDetectionPolicy": { + "discriminator": "@odata.type", + "properties": { + "@odata.type": { + "type": "string" + } + }, + "required": [ + "@odata.type" + ], + "description": "Abstract base class for data deletion detection policies." + }, + "SoftDeleteColumnDeletionDetectionPolicy": { + "description": "Defines a data deletion detection policy that implements a soft-deletion strategy. It determines whether an item should be deleted based on the value of a designated 'soft delete' column.", + "x-ms-discriminator-value": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", + "allOf": [ + { + "$ref": "#/definitions/DataDeletionDetectionPolicy" + } + ], + "properties": { + "softDeleteColumnName": { + "type": "string", + "description": "The name of the column to use for soft-deletion detection." + }, + "softDeleteMarkerValue": { + "type": "string", + "description": "The marker value that identifies an item as deleted." + } + } + }, + "DataSourceType": { + "type": "string", + "enum": [ + "azuresql", + "cosmosdb", + "azureblob", + "azuretable", + "mysql" + ], + "x-ms-enum": { + "name": "DataSourceType", + "modelAsString": true, + "values": [ + { + "value": "azuresql", + "name": "AzureSql" + }, + { + "value": "cosmosdb", + "name": "CosmosDb" + }, + { + "value": "azureblob", + "name": "AzureBlob" + }, + { + "value": "azuretable", + "name": "AzureTable" + }, + { + "value": "mysql", + "name": "MySql" + } + ] + }, + "description": "Defines the type of a datasource." + }, + "DataSource": { + "properties": { + "name": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Naming-rules" + }, + "type": "string", + "description": "The name of the datasource." + }, + "description": { + "type": "string", + "description": "The description of the datasource." + }, + "type": { + "$ref": "#/definitions/DataSourceType", + "description": "The type of the datasource." + }, + "credentials": { + "$ref": "#/definitions/DataSourceCredentials", + "description": "Credentials for the datasource." + }, + "container": { + "$ref": "#/definitions/DataContainer", + "description": "The data container for the datasource." + }, + "dataChangeDetectionPolicy": { + "$ref": "#/definitions/DataChangeDetectionPolicy", + "description": "The data change detection policy for the datasource." + }, + "dataDeletionDetectionPolicy": { + "$ref": "#/definitions/DataDeletionDetectionPolicy", + "description": "The data deletion detection policy for the datasource." + }, + "@odata.etag": { + "x-ms-client-name": "ETag", + "type": "string", + "description": "The ETag of the DataSource." + } + }, + "required": [ + "name", + "type", + "credentials", + "container" + ], + "description": "Represents a datasource definition, which can be used to configure an indexer." + }, + "DataSourceListResult": { + "properties": { + "value": { + "x-ms-client-name": "DataSources", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/DataSource" + }, + "description": "The datasources in the Search service." + } + }, + "description": "Response from a List Datasources request. If successful, it includes the full definitions of all datasources." + }, + "IndexingSchedule": { + "properties": { + "interval": { + "type": "string", + "format": "duration", + "description": "The interval of time between indexer executions." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The time when an indexer should start running." + } + }, + "required": [ + "interval" + ], + "description": "Represents a schedule for indexer execution." + }, + "IndexingParameters": { + "properties": { + "batchSize": { + "type": "integer", + "format": "int32", + "description": "The number of items that are read from the data source and indexed as a single batch in order to improve performance. The default depends on the data source type." + }, + "maxFailedItems": { + "type": "integer", + "format": "int32", + "default": 0, + "description": "The maximum number of items that can fail indexing for indexer execution to still be considered successful. -1 means no limit. Default is 0." + }, + "maxFailedItemsPerBatch": { + "type": "integer", + "format": "int32", + "default": 0, + "description": "The maximum number of items in a single batch that can fail indexing for the batch to still be considered successful. -1 means no limit. Default is 0." + }, + "base64EncodeKeys": { + "type": "boolean", + "default": false, + "description": "Whether indexer will base64-encode all values that are inserted into key field of the target index. This is needed if keys can contain characters that are invalid in keys (such as dot '.'). Default is false." + }, + "configuration": { + "type": "object", + "additionalProperties": { + "type": "object" + }, + "description": "A dictionary of indexer-specific configuration properties. Each name is the name of a specific property. Each value must be of a primitive type." + } + }, + "description": "Represents parameters for indexer execution.", + "x-ms-external": true + }, + "FieldMappingFunction": { + "properties": { + "name": { + "type": "string", + "description": "The name of the field mapping function." + }, + "parameters": { + "type": "object", + "additionalProperties": { + "type": "object" + }, + "description": "A dictionary of parameter name/value pairs to pass to the function. Each value must be of a primitive type." + } + }, + "required": [ + "name" + ], + "description": "Represents a function that transforms a value from a data source before indexing.", + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/search-indexer-field-mappings" + } + }, + "FieldMapping": { + "properties": { + "sourceFieldName": { + "type": "string", + "description": "The name of the field in the data source." + }, + "targetFieldName": { + "type": "string", + "description": "The name of the target field in the index. Same as the source field name by default." + }, + "mappingFunction": { + "$ref": "#/definitions/FieldMappingFunction", + "description": "A function to apply to each source field value before indexing." + } + }, + "required": [ + "sourceFieldName" + ], + "description": "Defines a mapping between a field in a data source and a target field in an index.", + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/search-indexer-field-mappings" + } + }, + "Indexer": { + "properties": { + "name": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Naming-rules" + }, + "type": "string", + "description": "The name of the indexer." + }, + "description": { + "type": "string", + "description": "The description of the indexer." + }, + "dataSourceName": { + "type": "string", + "description": "The name of the datasource from which this indexer reads data." + }, + "skillsetName": { + "type": "string", + "description": "The name of the skillset executing with this indexer." + }, + "targetIndexName": { + "type": "string", + "description": "The name of the index to which this indexer writes data." + }, + "schedule": { + "$ref": "#/definitions/IndexingSchedule", + "description": "The schedule for this indexer." + }, + "parameters": { + "$ref": "#/definitions/IndexingParameters", + "description": "Parameters for indexer execution." + }, + "fieldMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/FieldMapping" + }, + "description": "Defines mappings between fields in the data source and corresponding target fields in the index.", + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/search-indexer-field-mappings" + } + }, + "outputFieldMappings": { + "type": "array", + "items": { + "$ref": "#/definitions/FieldMapping" + }, + "description": "Output field mappings are applied after enrichment and immediately before indexing.", + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/search-indexer-field-mappings" + } + }, + "disabled": { + "x-ms-client-name": "IsDisabled", + "type": "boolean", + "default": false, + "description": "A value indicating whether the indexer is disabled. Default is false." + }, + "@odata.etag": { + "x-ms-client-name": "ETag", + "type": "string", + "description": "The ETag of the Indexer." + } + }, + "required": [ + "name", + "dataSourceName", + "targetIndexName" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Indexer-operations" + }, + "description": "Represents an indexer." + }, + "IndexerListResult": { + "properties": { + "value": { + "x-ms-client-name": "Indexers", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Indexer" + }, + "description": "The indexers in the Search service." + } + }, + "description": "Response from a List Indexers request. If successful, it includes the full definitions of all indexers." + }, + "ItemError": { + "properties": { + "key": { + "type": "string", + "readOnly": true, + "description": "The key of the item for which indexing failed." + }, + "errorMessage": { + "type": "string", + "readOnly": true, + "description": "The message describing the error that occurred while processing the item." + }, + "statusCode": { + "type": "integer", + "format": "int32", + "x-nullable": false, + "readOnly": true, + "description": "The status code indicating why the indexing operation failed. Possible values include: 400 for a malformed input document, 404 for document not found, 409 for a version conflict, 422 when the index is temporarily unavailable, or 503 for when the service is too busy." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the source at which the error originated. For example, this could refer to a particular skill in the attached skillset. This may not be always available." + }, + "details": { + "type": "string", + "readOnly": true, + "description": "Additional, verbose details about the error to assist in debugging the indexer. This may not be always available." + }, + "documentationLink": { + "type": "string", + "readOnly": true, + "description": "A link to a troubleshooting guide for these classes of errors. This may not be always available." + } + }, + "description": "Represents an item- or document-level indexing error." + }, + "ItemWarning": { + "properties": { + "key": { + "type": "string", + "readOnly": true, + "description": "The key of the item which generated a warning." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The message describing the warning that occurred while processing the item." + }, + "name": { + "type": "string", + "readOnly": true, + "description": "The name of the source at which the warning originated. For example, this could refer to a particular skill in the attached skillset. This may not be always available." + }, + "details": { + "type": "string", + "readOnly": true, + "description": "Additional, verbose details about the warning to assist in debugging the indexer. This may not be always available." + }, + "documentationLink": { + "type": "string", + "readOnly": true, + "description": "A link to a troubleshooting guide for these classes of warnings. This may not be always available." + } + }, + "description": "Represents an item-level warning." + }, + "IndexerExecutionResult": { + "properties": { + "status": { + "$ref": "#/definitions/IndexerExecutionStatus", + "readOnly": true, + "description": "The outcome of this indexer execution." + }, + "errorMessage": { + "type": "string", + "readOnly": true, + "description": "The error message indicating the top-level error, if any." + }, + "startTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The start time of this indexer execution." + }, + "endTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The end time of this indexer execution, if the execution has already completed." + }, + "errors": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ItemError" + }, + "description": "The item-level indexing errors." + }, + "warnings": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ItemWarning" + }, + "description": "The item-level indexing warnings." + }, + "itemsProcessed": { + "x-ms-client-name": "ItemCount", + "type": "integer", + "format": "int32", + "x-nullable": false, + "readOnly": true, + "description": "The number of items that were processed during this indexer execution. This includes both successfully processed items and items where indexing was attempted but failed." + }, + "itemsFailed": { + "x-ms-client-name": "FailedItemCount", + "type": "integer", + "format": "int32", + "x-nullable": false, + "readOnly": true, + "description": "The number of items that failed to be indexed during this indexer execution." + }, + "initialTrackingState": { + "type": "string", + "readOnly": true, + "description": "Change tracking state with which an indexer execution started." + }, + "finalTrackingState": { + "type": "string", + "readOnly": true, + "description": "Change tracking state with which an indexer execution finished." + } + }, + "description": "Represents the result of an individual indexer execution." + }, + "IndexerExecutionStatus": { + "type": "string", + "enum": [ + "transientFailure", + "success", + "inProgress", + "reset" + ], + "x-ms-enum": { + "name": "IndexerExecutionStatus" + }, + "x-nullable": false, + "description": "Represents the status of an individual indexer execution." + }, + "IndexerExecutionInfo": { + "properties": { + "status": { + "$ref": "#/definitions/IndexerStatus", + "readOnly": true, + "description": "Overall indexer status." + }, + "lastResult": { + "$ref": "#/definitions/IndexerExecutionResult", + "readOnly": true, + "description": "The result of the most recent or an in-progress indexer execution." + }, + "executionHistory": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/IndexerExecutionResult" + }, + "description": "History of the recent indexer executions, sorted in reverse chronological order." + }, + "limits": { + "$ref": "#/definitions/IndexerLimits", + "readOnly": true, + "description": "The execution limits for the indexer." + } + }, + "description": "Represents the current status and execution history of an indexer." + }, + "IndexerStatus": { + "type": "string", + "enum": [ + "unknown", + "error", + "running" + ], + "x-ms-enum": { + "name": "IndexerStatus" + }, + "x-nullable": false, + "description": "Represents the overall indexer status." + }, + "IndexerLimits": { + "properties": { + "maxRunTime": { + "type": "string", + "format": "duration", + "readOnly": true, + "description": "The maximum duration that the indexer is permitted to run for one execution." + }, + "maxDocumentExtractionSize": { + "type": "number", + "format": "int64", + "readOnly": true, + "description": "The maximum size of a document, in bytes, which will be considered valid for indexing." + }, + "maxDocumentContentCharactersToExtract": { + "type": "number", + "format": "int64", + "readOnly": true, + "description": "The maximum number of characters that will be extracted from a document picked up for indexing." + } + } + }, + "Field": { + "properties": { + "name": { + "type": "string", + "description": "The name of the field, which must be unique within the fields collection of the index or parent field.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Naming-rules" + } + }, + "type": { + "$ref": "#/definitions/DataType", + "description": "The data type of the field.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/supported-data-types" + } + }, + "key": { + "type": "boolean", + "description": "A value indicating whether the field uniquely identifies documents in the index. Exactly one top-level field in each index must be chosen as the key field and it must be of type Edm.String. Key fields can be used to look up documents directly and update or delete specific documents. Default is false for simple fields and null for complex fields." + }, + "retrievable": { + "type": "boolean", + "description": "A value indicating whether the field can be returned in a search result. You can disable this option if you want to use a field (for example, margin) as a filter, sorting, or scoring mechanism but do not want the field to be visible to the end user. This property must be true for key fields, and it must be null for complex fields. This property can be changed on existing fields. Enabling this property does not cause any increase in index storage requirements. Default is true for simple fields and null for complex fields." + }, + "searchable": { + "type": "boolean", + "description": "A value indicating whether the field is full-text searchable. This means it will undergo analysis such as word-breaking during indexing. If you set a searchable field to a value like \"sunny day\", internally it will be split into the individual tokens \"sunny\" and \"day\". This enables full-text searches for these terms. Fields of type Edm.String or Collection(Edm.String) are searchable by default. This property must be false for simple fields of other non-string data types, and it must be null for complex fields. Note: searchable fields consume extra space in your index since Azure Cognitive Search will store an additional tokenized version of the field value for full-text searches. If you want to save space in your index and you don't need a field to be included in searches, set searchable to false." + }, + "filterable": { + "type": "boolean", + "description": "A value indicating whether to enable the field to be referenced in $filter queries. filterable differs from searchable in how strings are handled. Fields of type Edm.String or Collection(Edm.String) that are filterable do not undergo word-breaking, so comparisons are for exact matches only. For example, if you set such a field f to \"sunny day\", $filter=f eq 'sunny' will find no matches, but $filter=f eq 'sunny day' will. This property must be null for complex fields. Default is true for simple fields and null for complex fields." + }, + "sortable": { + "type": "boolean", + "description": "A value indicating whether to enable the field to be referenced in $orderby expressions. By default Azure Cognitive Search sorts results by score, but in many experiences users will want to sort by fields in the documents. A simple field can be sortable only if it is single-valued (it has a single value in the scope of the parent document). Simple collection fields cannot be sortable, since they are multi-valued. Simple sub-fields of complex collections are also multi-valued, and therefore cannot be sortable. This is true whether it's an immediate parent field, or an ancestor field, that's the complex collection. Complex fields cannot be sortable and the sortable property must be null for such fields. The default for sortable is true for single-valued simple fields, false for multi-valued simple fields, and null for complex fields." + }, + "facetable": { + "type": "boolean", + "description": "A value indicating whether to enable the field to be referenced in facet queries. Typically used in a presentation of search results that includes hit count by category (for example, search for digital cameras and see hits by brand, by megapixels, by price, and so on). This property must be null for complex fields. Fields of type Edm.GeographyPoint or Collection(Edm.GeographyPoint) cannot be facetable. Default is true for all other simple fields." + }, + "analyzer": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Language-support" + }, + "$ref": "#/definitions/AnalyzerName", + "description": "The name of the language analyzer to use for the field. This option can be used only with searchable fields and it can't be set together with either searchAnalyzer or indexAnalyzer. Once the analyzer is chosen, it cannot be changed for the field. Must be null for complex fields." + }, + "searchAnalyzer": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Language-support" + }, + "$ref": "#/definitions/AnalyzerName", + "description": "The name of the analyzer used at search time for the field. This option can be used only with searchable fields. It must be set together with indexAnalyzer and it cannot be set together with the analyzer option. This analyzer can be updated on an existing field. Must be null for complex fields." + }, + "indexAnalyzer": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Language-support" + }, + "$ref": "#/definitions/AnalyzerName", + "description": "The name of the analyzer used at indexing time for the field. This option can be used only with searchable fields. It must be set together with searchAnalyzer and it cannot be set together with the analyzer option. Once the analyzer is chosen, it cannot be changed for the field. Must be null for complex fields." + }, + "synonymMaps": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Synonym-Map-operations" + }, + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of the names of synonym maps to associate with this field. This option can be used only with searchable fields. Currently only one synonym map per field is supported. Assigning a synonym map to a field ensures that query terms targeting that field are expanded at query-time using the rules in the synonym map. This attribute can be changed on existing fields. Must be null or an empty collection for complex fields." + }, + "fields": { + "type": "array", + "items": { + "$ref": "#/definitions/Field" + }, + "description": "A list of sub-fields if this is a field of type Edm.ComplexType or Collection(Edm.ComplexType). Must be null or empty for simple fields." + } + }, + "required": [ + "name", + "type" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Index" + }, + "description": "Represents a field in an index definition, which describes the name, data type, and search behavior of a field." + }, + "TextWeights": { + "properties": { + "weights": { + "type": "object", + "additionalProperties": { + "type": "number", + "format": "double", + "x-nullable": false + }, + "description": "The dictionary of per-field weights to boost document scoring. The keys are field names and the values are the weights for each field." + } + }, + "required": [ + "weights" + ], + "description": "Defines weights on index fields for which matches should boost scoring in search queries." + }, + "ScoringFunction": { + "discriminator": "type", + "properties": { + "type": { + "type": "string" + }, + "fieldName": { + "type": "string", + "description": "The name of the field used as input to the scoring function." + }, + "boost": { + "type": "number", + "format": "double", + "description": "A multiplier for the raw score. Must be a positive number not equal to 1.0." + }, + "interpolation": { + "$ref": "#/definitions/ScoringFunctionInterpolation", + "description": "A value indicating how boosting will be interpolated across document scores; defaults to \"Linear\"." + } + }, + "required": [ + "type", + "fieldName", + "boost" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" + }, + "description": "Abstract base class for functions that can modify document scores during ranking." + }, + "DistanceScoringFunction": { + "x-ms-discriminator-value": "distance", + "allOf": [ + { + "$ref": "#/definitions/ScoringFunction" + } + ], + "properties": { + "distance": { + "x-ms-client-name": "Parameters", + "$ref": "#/definitions/DistanceScoringParameters", + "description": "Parameter values for the distance scoring function." + } + }, + "required": [ + "distance" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" + }, + "description": "Defines a function that boosts scores based on distance from a geographic location." + }, + "DistanceScoringParameters": { + "properties": { + "referencePointParameter": { + "type": "string", + "description": "The name of the parameter passed in search queries to specify the reference location." + }, + "boostingDistance": { + "type": "number", + "format": "double", + "description": "The distance in kilometers from the reference location where the boosting range ends." + } + }, + "required": [ + "referencePointParameter", + "boostingDistance" + ], + "description": "Provides parameter values to a distance scoring function." + }, + "FreshnessScoringFunction": { + "x-ms-discriminator-value": "freshness", + "allOf": [ + { + "$ref": "#/definitions/ScoringFunction" + } + ], + "properties": { + "freshness": { + "x-ms-client-name": "Parameters", + "$ref": "#/definitions/FreshnessScoringParameters", + "description": "Parameter values for the freshness scoring function." + } + }, + "required": [ + "freshness" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" + }, + "description": "Defines a function that boosts scores based on the value of a date-time field." + }, + "FreshnessScoringParameters": { + "properties": { + "boostingDuration": { + "type": "string", + "format": "duration", + "description": "The expiration period after which boosting will stop for a particular document." + } + }, + "required": [ + "boostingDuration" + ], + "description": "Provides parameter values to a freshness scoring function." + }, + "MagnitudeScoringFunction": { + "x-ms-discriminator-value": "magnitude", + "allOf": [ + { + "$ref": "#/definitions/ScoringFunction" + } + ], + "properties": { + "magnitude": { + "x-ms-client-name": "Parameters", + "$ref": "#/definitions/MagnitudeScoringParameters", + "description": "Parameter values for the magnitude scoring function." + } + }, + "required": [ + "magnitude" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" + }, + "description": "Defines a function that boosts scores based on the magnitude of a numeric field." + }, + "MagnitudeScoringParameters": { + "properties": { + "boostingRangeStart": { + "type": "number", + "format": "double", + "description": "The field value at which boosting starts." + }, + "boostingRangeEnd": { + "type": "number", + "format": "double", + "description": "The field value at which boosting ends." + }, + "constantBoostBeyondRange": { + "x-ms-client-name": "ShouldBoostBeyondRangeByConstant", + "type": "boolean", + "description": "A value indicating whether to apply a constant boost for field values beyond the range end value; default is false." + } + }, + "required": [ + "boostingRangeStart", + "boostingRangeEnd" + ], + "description": "Provides parameter values to a magnitude scoring function." + }, + "TagScoringFunction": { + "x-ms-discriminator-value": "tag", + "allOf": [ + { + "$ref": "#/definitions/ScoringFunction" + } + ], + "properties": { + "tag": { + "x-ms-client-name": "Parameters", + "$ref": "#/definitions/TagScoringParameters", + "description": "Parameter values for the tag scoring function." + } + }, + "required": [ + "tag" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" + }, + "description": "Defines a function that boosts scores of documents with string values matching a given list of tags." + }, + "TagScoringParameters": { + "properties": { + "tagsParameter": { + "type": "string", + "description": "The name of the parameter passed in search queries to specify the list of tags to compare against the target field." + } + }, + "required": [ + "tagsParameter" + ], + "description": "Provides parameter values to a tag scoring function." + }, + "ScoringFunctionInterpolation": { + "type": "string", + "enum": [ + "linear", + "constant", + "quadratic", + "logarithmic" + ], + "x-ms-enum": { + "name": "ScoringFunctionInterpolation" + }, + "description": "Defines the function used to interpolate score boosting across a range of documents." + }, + "ScoringProfile": { + "properties": { + "name": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Naming-rules" + }, + "type": "string", + "description": "The name of the scoring profile." + }, + "text": { + "x-ms-client-name": "TextWeights", + "$ref": "#/definitions/TextWeights", + "description": "Parameters that boost scoring based on text matches in certain index fields." + }, + "functions": { + "type": "array", + "items": { + "$ref": "#/definitions/ScoringFunction" + }, + "description": "The collection of functions that influence the scoring of documents." + }, + "functionAggregation": { + "$ref": "#/definitions/ScoringFunctionAggregation", + "description": "A value indicating how the results of individual scoring functions should be combined. Defaults to \"Sum\". Ignored if there are no scoring functions." + } + }, + "required": [ + "name" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" + }, + "description": "Defines parameters for a search index that influence scoring in search queries." + }, + "ScoringFunctionAggregation": { + "type": "string", + "enum": [ + "sum", + "average", + "minimum", + "maximum", + "firstMatching" + ], + "x-ms-enum": { + "name": "ScoringFunctionAggregation" + }, + "description": "Defines the aggregation function used to combine the results of all the scoring functions in a scoring profile." + }, + "CorsOptions": { + "properties": { + "allowedOrigins": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of origins from which JavaScript code will be granted access to your index. Can contain a list of hosts of the form {protocol}://{fully-qualified-domain-name}[:{port#}], or a single '*' to allow all origins (not recommended)." + }, + "maxAgeInSeconds": { + "type": "integer", + "format": "int64", + "description": "The duration for which browsers should cache CORS preflight responses. Defaults to 5 minutes." + } + }, + "required": [ + "allowedOrigins" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Index" + }, + "description": "Defines options to control Cross-Origin Resource Sharing (CORS) for an index." + }, + "Suggester": { + "properties": { + "name": { + "type": "string", + "description": "The name of the suggester." + }, + "searchMode": { + "type": "string", + "enum": [ + "analyzingInfixMatching" + ], + "x-ms-enum": { + "name": "searchMode", + "modelAsString": false + }, + "description": "A value indicating the capabilities of the suggester." + }, + "sourceFields": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of field names to which the suggester applies. Each field must be searchable." + } + }, + "required": [ + "name", + "searchMode", + "sourceFields" + ], + "description": "Defines how the Suggest API should apply to a group of fields in the index." + }, + "Index": { + "properties": { + "name": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Naming-rules" + }, + "type": "string", + "description": "The name of the index." + }, + "fields": { + "type": "array", + "items": { + "$ref": "#/definitions/Field" + }, + "description": "The fields of the index." + }, + "scoringProfiles": { + "type": "array", + "items": { + "$ref": "#/definitions/ScoringProfile" + }, + "description": "The scoring profiles for the index." + }, + "defaultScoringProfile": { + "type": "string", + "description": "The name of the scoring profile to use if none is specified in the query. If this property is not set and no scoring profile is specified in the query, then default scoring (tf-idf) will be used." + }, + "corsOptions": { + "$ref": "#/definitions/CorsOptions", + "description": "Options to control Cross-Origin Resource Sharing (CORS) for the index." + }, + "suggesters": { + "type": "array", + "items": { + "$ref": "#/definitions/Suggester" + }, + "description": "The suggesters for the index." + }, + "analyzers": { + "type": "array", + "items": { + "$ref": "#/definitions/Analyzer" + }, + "description": "The analyzers for the index.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" + } + }, + "tokenizers": { + "type": "array", + "items": { + "$ref": "#/definitions/Tokenizer" + }, + "description": "The tokenizers for the index.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" + } + }, + "tokenFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/TokenFilter" + }, + "description": "The token filters for the index.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" + } + }, + "charFilters": { + "type": "array", + "items": { + "$ref": "#/definitions/CharFilter" + }, + "description": "The character filters for the index.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" + } + }, + "encryptionKey": { + "$ref": "#/definitions/EncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your data when you want full assurance that no one, not even Microsoft, can decrypt your data in Azure Cognitive Search. Once you have encrypted your data, it will always remain encrypted. Azure Cognitive Search will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your data will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.", + "externalDocs": { + "url": "https://aka.ms/azure-search-encryption-with-cmk" + } + }, + "@odata.etag": { + "x-ms-client-name": "ETag", + "type": "string", + "description": "The ETag of the index." + } + }, + "required": [ + "name", + "fields" + ], + "description": "Represents a search index definition, which describes the fields and search behavior of an index." + }, + "IndexGetStatisticsResult": { + "properties": { + "documentCount": { + "type": "integer", + "format": "int64", + "x-nullable": false, + "readOnly": true, + "description": "The number of documents in the index." + }, + "storageSize": { + "type": "integer", + "format": "int64", + "x-nullable": false, + "readOnly": true, + "description": "The amount of storage in bytes consumed by the index." + } + }, + "description": "Statistics for a given index. Statistics are collected periodically and are not guaranteed to always be up-to-date." + }, + "IndexListResult": { + "properties": { + "value": { + "x-ms-client-name": "Indexes", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Index" + }, + "description": "The indexes in the Search service." + } + }, + "description": "Response from a List Indexes request. If successful, it includes the full definitions of all indexes." + }, + "Skillset": { + "properties": { + "name": { + "type": "string", + "description": "The name of the skillset." + }, + "description": { + "type": "string", + "description": "The description of the skillset." + }, + "skills": { + "type": "array", + "items": { + "$ref": "#/definitions/Skill" + }, + "description": "A list of skills in the skillset." + }, + "cognitiveServices": { + "$ref": "#/definitions/CognitiveServices", + "description": "Details about cognitive services to be used when running skills." + }, + "@odata.etag": { + "x-ms-client-name": "ETag", + "type": "string", + "description": "The ETag of the skillset." + } + }, + "required": [ + "name", + "description", + "skills" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-tutorial-blob" + }, + "description": "A list of skills." + }, + "CognitiveServices": { + "discriminator": "@odata.type", + "properties": { + "@odata.type": { + "type": "string" + }, + "description": { + "type": "string" + } + }, + "required": [ + "@odata.type" + ], + "description": "Abstract base class for describing any cognitive service resource attached to the skillset." + }, + "DefaultCognitiveServices": { + "description": "An empty object that represents the default cognitive service resource for a skillset.", + "x-ms-discriminator-value": "#Microsoft.Azure.Search.DefaultCognitiveServices", + "allOf": [ + { + "$ref": "#/definitions/CognitiveServices" + } + ] + }, + "CognitiveServicesByKey": { + "description": "A cognitive service resource provisioned with a key that is attached to a skillset.", + "x-ms-discriminator-value": "#Microsoft.Azure.Search.CognitiveServicesByKey", + "allOf": [ + { + "$ref": "#/definitions/CognitiveServices" + } + ], + "properties": { + "key": { + "type": "string" + } + }, + "required": [ + "key" + ] + }, + "Skill": { + "discriminator": "@odata.type", + "properties": { + "@odata.type": { + "type": "string" + }, + "name": { + "type": "string", + "description": "The name of the skill which uniquely identifies it within the skillset. A skill with no name defined will be given a default name of its 1-based index in the skills array, prefixed with the character '#'." + }, + "description": { + "type": "string", + "description": "The description of the skill which describes the inputs, outputs, and usage of the skill." + }, + "context": { + "type": "string", + "description": "Represents the level at which operations take place, such as the document root or document content (for example, /document or /document/content). The default is /document." + }, + "inputs": { + "type": "array", + "items": { + "$ref": "#/definitions/InputFieldMappingEntry" + }, + "description": "Inputs of the skills could be a column in the source data set, or the output of an upstream skill." + }, + "outputs": { + "type": "array", + "items": { + "$ref": "#/definitions/OutputFieldMappingEntry" + }, + "description": "The output of a skill is either a field in a search index, or a value that can be consumed as an input by another skill." + } + }, + "required": [ + "@odata.type", + "inputs", + "outputs" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-predefined-skills" + }, + "description": "Abstract base class for skills." + }, + "InputFieldMappingEntry": { + "properties": { + "name": { + "type": "string", + "description": "The name of the input." + }, + "source": { + "type": "string", + "description": "The source of the input." + }, + "sourceContext": { + "type": "string", + "description": "The source context used for selecting recursive inputs." + }, + "inputs": { + "type": "array", + "items": { + "$ref": "#/definitions/InputFieldMappingEntry" + }, + "description": "The recursive inputs used when creating a complex type." + } + }, + "required": [ + "name" + ], + "description": "Input field mapping for a skill." + }, + "OutputFieldMappingEntry": { + "properties": { + "name": { + "type": "string", + "description": "The name of the output defined by the skill." + }, + "targetName": { + "type": "string", + "description": "The target name of the output. It is optional and default to name." + } + }, + "required": [ + "name" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/naming-rules" + }, + "description": "Output field mapping for a skill." + }, + "ConditionalSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Util.ConditionalSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-conditional" + }, + "description": "A skill that enables scenarios that require a Boolean operation to determine the data to assign to an output." + }, + "KeyPhraseExtractionSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/KeyPhraseExtractionSkillLanguage", + "description": "A value indicating which language code to use. Default is en." + }, + "maxKeyPhraseCount": { + "type": "integer", + "format": "int32", + "x-nullable": true, + "description": "A number indicating how many key phrases to return. If absent, all identified key phrases will be returned." + } + }, + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-keyphrases" + }, + "description": "A skill that uses text analytics for key phrase extraction." + }, + "OcrSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Vision.OcrSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "properties": { + "textExtractionAlgorithm": { + "$ref": "#/definitions/TextExtractionAlgorithm", + "description": "A value indicating which algorithm to use for extracting text. Default is printed." + }, + "defaultLanguageCode": { + "$ref": "#/definitions/OcrSkillLanguage", + "description": "A value indicating which language code to use. Default is en." + }, + "detectOrientation": { + "x-ms-client-name": "ShouldDetectOrientation", + "type": "boolean", + "default": false, + "description": "A value indicating to turn orientation detection on or not. Default is false." + } + }, + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-ocr" + }, + "description": "A skill that extracts text from image files." + }, + "ImageAnalysisSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Vision.ImageAnalysisSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/ImageAnalysisSkillLanguage", + "description": "A value indicating which language code to use. Default is en." + }, + "visualFeatures": { + "type": "array", + "items": { + "$ref": "#/definitions/VisualFeature", + "x-nullable": false + }, + "description": "A list of visual features." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ImageDetail", + "x-nullable": false + }, + "description": "A string indicating which domain-specific details to return." + } + }, + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-image-analysis" + }, + "description": "A skill that analyzes image files. It extracts a rich set of visual features based on the image content." + }, + "LanguageDetectionSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Text.LanguageDetectionSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-language-detection" + }, + "description": "A skill that detects the language of input text and reports a single language code for every document submitted on the request. The language code is paired with a score indicating the confidence of the analysis." + }, + "ShaperSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Util.ShaperSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-shaper" + }, + "description": "A skill for reshaping the outputs. It creates a complex type to support composite fields (also known as multipart fields)." + }, + "MergeSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Text.MergeSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "properties": { + "insertPreTag": { + "type": "string", + "default": " ", + "description": "The tag indicates the start of the merged text. By default, the tag is an empty space." + }, + "insertPostTag": { + "type": "string", + "default": " ", + "description": "The tag indicates the end of the merged text. By default, the tag is an empty space." + } + }, + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-textmerger" + }, + "description": "A skill for merging two or more strings into a single unified string, with an optional user-defined delimiter separating each component part." + }, + "EntityRecognitionSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Text.EntityRecognitionSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "properties": { + "categories": { + "type": "array", + "items": { + "$ref": "#/definitions/EntityCategory", + "x-nullable": false + }, + "description": "A list of entity categories that should be extracted." + }, + "defaultLanguageCode": { + "$ref": "#/definitions/EntityRecognitionSkillLanguage", + "description": "A value indicating which language code to use. Default is en." + }, + "includeTypelessEntities": { + "type": "boolean", + "x-nullable": true, + "description": "Determines whether or not to include entities which are well known but don't conform to a pre-defined type. If this configuration is not set (default), set to null or set to false, entities which don't conform to one of the pre-defined types will not be surfaced." + }, + "minimumPrecision": { + "type": "number", + "format": "double", + "x-nullable": true, + "description": "A value between 0 and 1 that be used to only include entities whose confidence score is greater than the value specified. If not set (default), or if explicitly set to null, all entities will be included." + } + }, + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-entity-recognition" + }, + "description": "Text analytics entity recognition." + }, + "SentimentSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Text.SentimentSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/SentimentSkillLanguage", + "description": "A value indicating which language code to use. Default is en." + } + }, + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-sentiment" + }, + "description": "Text analytics positive-negative sentiment analysis, scored as a floating point value in a range of zero to 1." + }, + "SplitSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Text.SplitSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "properties": { + "defaultLanguageCode": { + "$ref": "#/definitions/SplitSkillLanguage", + "description": "A value indicating which language code to use. Default is en." + }, + "textSplitMode": { + "$ref": "#/definitions/TextSplitMode", + "x-nullable": false, + "description": "A value indicating which split mode to perform." + }, + "maximumPageLength": { + "type": "integer", + "format": "int32", + "x-nullable": true, + "description": "The desired maximum page length. Default is 10000." + } + }, + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-textsplit" + }, + "description": "A skill to split a string into chunks of text." + }, + "TextTranslationSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Text.TranslationSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "properties": { + "defaultToLanguageCode": { + "$ref": "#/definitions/TextTranslationSkillLanguage", + "description": "The language code to translate documents into for documents that don't specify the to language explicitly. " + }, + "defaultFromLanguageCode": { + "$ref": "#/definitions/TextTranslationSkillLanguage", + "description": "The language code to translate documents from for documents that don't specify the from language explicitly." + }, + "suggestedFrom": { + "$ref": "#/definitions/TextTranslationSkillLanguage", + "description": "The language code to translate documents from when neither the fromLanguageCode input nor the defaultFromLanguageCode parameter are provided, and the automatic language detection is unsuccessful. Default is en." + } + }, + "required": [ + "defaultToLanguageCode" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-text-translation" + }, + "description": "A skill to translate text from one language to another." + }, + "WebApiSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Custom.WebApiSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "properties": { + "uri": { + "type": "string", + "description": "The url for the Web API." + }, + "httpHeaders": { + "$ref": "#/definitions/WebApiHttpHeaders", + "description": "The headers required to make the http request." + }, + "httpMethod": { + "type": "string", + "description": "The method for the http request." + }, + "timeout": { + "type": "string", + "format": "duration", + "description": "The desired timeout for the request. Default is 30 seconds." + }, + "batchSize": { + "type": "integer", + "format": "int32", + "x-nullable": true, + "description": "The desired batch size which indicates number of documents." + }, + "degreeOfParallelism": { + "type": "integer", + "format": "int32", + "x-nullable": true, + "description": "If set, the number of parallel calls that can be made to the Web API." + } + }, + "required": [ + "uri" + ], + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-custom-skill-web-api" + }, + "description": "A skill that can call a Web API endpoint, allowing you to extend a skillset by having it call your custom code." + }, + "WebApiHttpHeaders": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "A dictionary of http request headers." + }, + "SkillsetListResult": { + "properties": { + "value": { + "x-ms-client-name": "Skillsets", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Skillset" + }, + "description": "The skillsets defined in the Search service." + } + }, + "description": "Response from a list Skillset request. If successful, it includes the full definitions of all skillsets." + }, + "TextExtractionAlgorithm": { + "type": "string", + "enum": [ + "printed", + "handwritten" + ], + "x-ms-enum": { + "name": "TextExtractionAlgorithm", + "modelAsString": false + }, + "description": "A value indicating which algorithm to use. Default is printed." + }, + "TextSplitMode": { + "type": "string", + "enum": [ + "pages", + "sentences" + ], + "x-ms-enum": { + "name": "TextSplitMode", + "modelAsString": true + }, + "description": "A value indicating which split mode to perform." + }, + "VisualFeature": { + "type": "string", + "enum": [ + "categories", + "tags", + "description", + "faces", + "imageType", + "color" + ], + "x-ms-enum": { + "name": "VisualFeature", + "modelAsString": true + }, + "description": "The strings indicating what visual feature types to return." + }, + "ImageDetail": { + "type": "string", + "enum": [ + "celebrities", + "landmarks" + ], + "x-ms-enum": { + "name": "ImageDetail", + "modelAsString": true + }, + "description": "A string indicating which domain-specific details to return." + }, + "EntityCategory": { + "type": "string", + "enum": [ + "location", + "organization", + "person", + "quantity", + "datetime", + "url", + "email" + ], + "x-ms-enum": { + "name": "EntityCategory", + "modelAsString": true + }, + "description": "A string indicating what entity categories to return." + }, + "SentimentSkillLanguage": { + "type": "string", + "enum": [ + "da", + "nl", + "en", + "fi", + "fr", + "de", + "el", + "it", + "no", + "pl", + "pt-PT", + "ru", + "es", + "sv", + "tr" + ], + "x-ms-enum": { + "name": "SentimentSkillLanguage", + "modelAsString": true, + "values": [ + { + "value": "da", + "description": "Danish" + }, + { + "value": "nl", + "description": "Dutch" + }, + { + "value": "en", + "description": "English" + }, + { + "value": "fi", + "description": "Finnish" + }, + { + "value": "fr", + "description": "French" + }, + { + "value": "de", + "description": "German" + }, + { + "value": "el", + "description": "Greek" + }, + { + "value": "it", + "description": "Italian" + }, + { + "value": "no", + "description": "Norwegian (Bokmaal)" + }, + { + "value": "pl", + "description": "Polish" + }, + { + "value": "pt-PT", + "description": "Portuguese (Portugal)" + }, + { + "value": "ru", + "description": "Russian" + }, + { + "value": "es", + "description": "Spanish" + }, + { + "value": "sv", + "description": "Swedish" + }, + { + "value": "tr", + "description": "Turkish" + } + ] + }, + "description": "The language codes supported for input text by SentimentSkill." + }, + "KeyPhraseExtractionSkillLanguage": { + "type": "string", + "enum": [ + "da", + "nl", + "en", + "fi", + "fr", + "de", + "it", + "ja", + "ko", + "no", + "pl", + "pt-PT", + "pt-BR", + "ru", + "es", + "sv" + ], + "x-ms-enum": { + "name": "KeyPhraseExtractionSkillLanguage", + "modelAsString": true, + "values": [ + { + "value": "da", + "description": "Danish" + }, + { + "value": "nl", + "description": "Dutch" + }, + { + "value": "en", + "description": "English" + }, + { + "value": "fi", + "description": "Finnish" + }, + { + "value": "fr", + "description": "French" + }, + { + "value": "de", + "description": "German" + }, + { + "value": "it", + "description": "Italian" + }, + { + "value": "ja", + "description": "Japanese" + }, + { + "value": "ko", + "description": "Korean" + }, + { + "value": "no", + "description": "Norwegian (Bokmaal)" + }, + { + "value": "pl", + "description": "Polish" + }, + { + "value": "pt-PT", + "description": "Portuguese (Portugal)" + }, + { + "value": "pt-BR", + "description": "Portuguese (Brazil)" + }, + { + "value": "ru", + "description": "Russian" + }, + { + "value": "es", + "description": "Spanish" + }, + { + "value": "sv", + "description": "Swedish" + } + ] + }, + "description": "The language codes supported for input text by KeyPhraseExtractionSkill." + }, + "OcrSkillLanguage": { + "type": "string", + "enum": [ + "zh-Hans", + "zh-Hant", + "cs", + "da", + "nl", + "en", + "fi", + "fr", + "de", + "el", + "hu", + "it", + "ja", + "ko", + "nb", + "pl", + "pt", + "ru", + "es", + "sv", + "tr", + "ar", + "ro", + "sr-Cyrl", + "sr-Latn", + "sk" + ], + "x-ms-enum": { + "name": "OcrSkillLanguage", + "modelAsString": true, + "values": [ + { + "value": "zh-Hans", + "description": "Chinese-Simplified" + }, + { + "value": "zh-Hant", + "description": "Chinese-Traditional" + }, + { + "value": "cs", + "description": "Czech" + }, + { + "value": "da", + "description": "Danish" + }, + { + "value": "nl", + "description": "Dutch" + }, + { + "value": "en", + "description": "English" + }, + { + "value": "fi", + "description": "Finnish" + }, + { + "value": "fr", + "description": "French" + }, + { + "value": "de", + "description": "German" + }, + { + "value": "el", + "description": "Greek" + }, + { + "value": "hu", + "description": "Hungarian" + }, + { + "value": "it", + "description": "Italian" + }, + { + "value": "ja", + "description": "Japanese" + }, + { + "value": "ko", + "description": "Korean" + }, + { + "value": "nb", + "description": "Norwegian (Bokmaal)" + }, + { + "value": "pl", + "description": "Polish" + }, + { + "value": "pt", + "description": "Portuguese" + }, + { + "value": "ru", + "description": "Russian" + }, + { + "value": "es", + "description": "Spanish" + }, + { + "value": "sv", + "description": "Swedish" + }, + { + "value": "tr", + "description": "Turkish" + }, + { + "value": "ar", + "description": "Arabic" + }, + { + "value": "ro", + "description": "Romanian" + }, + { + "value": "sr-Cyrl", + "description": "Serbian (Cyrillic, Serbia)" + }, + { + "value": "sr-Latn", + "description": "Serbian (Latin, Serbia)" + }, + { + "value": "sk", + "description": "Slovak" + } + ] + }, + "description": "The language codes supported for input by OcrSkill." + }, + "SplitSkillLanguage": { + "type": "string", + "enum": [ + "da", + "de", + "en", + "es", + "fi", + "fr", + "it", + "ko", + "pt" + ], + "x-ms-enum": { + "name": "SplitSkillLanguage", + "modelAsString": true, + "values": [ + { + "value": "da", + "description": "Danish" + }, + { + "value": "de", + "description": "German" + }, + { + "value": "en", + "description": "English" + }, + { + "value": "es", + "description": "Spanish" + }, + { + "value": "fi", + "description": "Finnish" + }, + { + "value": "fr", + "description": "French" + }, + { + "value": "it", + "description": "Italian" + }, + { + "value": "ko", + "description": "Korean" + }, + { + "value": "pt", + "description": "Portuguese" + } + ] + }, + "description": "The language codes supported for input text by SplitSkill." + }, + "EntityRecognitionSkillLanguage": { + "type": "string", + "enum": [ + "ar", + "cs", + "zh-Hans", + "zh-Hant", + "da", + "nl", + "en", + "fi", + "fr", + "de", + "el", + "hu", + "it", + "ja", + "ko", + "no", + "pl", + "pt-PT", + "pt-BR", + "ru", + "es", + "sv", + "tr" + ], + "x-ms-enum": { + "name": "EntityRecognitionSkillLanguage", + "modelAsString": true, + "values": [ + { + "value": "ar", + "description": "Arabic" + }, + { + "value": "cs", + "description": "Czech" + }, + { + "value": "zh-Hans", + "description": "Chinese-Simplified" + }, + { + "value": "zh-Hant", + "description": "Chinese-Traditional" + }, + { + "value": "da", + "description": "Danish" + }, + { + "value": "nl", + "description": "Dutch" + }, + { + "value": "en", + "description": "English" + }, + { + "value": "fi", + "description": "Finnish" + }, + { + "value": "fr", + "description": "French" + }, + { + "value": "de", + "description": "German" + }, + { + "value": "el", + "description": "Greek" + }, + { + "value": "hu", + "description": "Hungarian" + }, + { + "value": "it", + "description": "Italian" + }, + { + "value": "ja", + "description": "Japanese" + }, + { + "value": "ko", + "description": "Korean" + }, + { + "value": "no", + "description": "Norwegian (Bokmaal)" + }, + { + "value": "pl", + "description": "Polish" + }, + { + "value": "pt-PT", + "description": "Portuguese (Portugal)" + }, + { + "value": "pt-BR", + "description": "Portuguese (Brazil)" + }, + { + "value": "ru", + "description": "Russian" + }, + { + "value": "es", + "description": "Spanish" + }, + { + "value": "sv", + "description": "Swedish" + }, + { + "value": "tr", + "description": "Turkish" + } + ] + }, + "description": "The language codes supported for input text by EntityRecognitionSkill." + }, + "TextTranslationSkillLanguage": { + "type": "string", + "enum": [ + "af", + "ar", + "bn", + "bs", + "bg", + "yue", + "ca", + "zh-Hans", + "zh-Hant", + "hr", + "cs", + "da", + "nl", + "en", + "et", + "fj", + "fil", + "fi", + "fr", + "de", + "el", + "ht", + "he", + "hi", + "mww", + "hu", + "is", + "id", + "it", + "ja", + "sw", + "tlh", + "ko", + "lv", + "lt", + "mg", + "ms", + "mt", + "nb", + "fa", + "pl", + "pt", + "otq", + "ro", + "ru", + "sm", + "sr-Cyrl", + "sr-Latn", + "sk", + "sl", + "es", + "sv", + "ty", + "ta", + "te", + "th", + "to", + "tr", + "uk", + "ur", + "vi", + "cy", + "yua" + ], + "x-ms-enum": { + "name": "TextTranslationSkillLanguage", + "modelAsString": true, + "values": [ + { + "value": "af", + "description": "Afrikaans" + }, + { + "value": "ar", + "description": "Arabic" + }, + { + "value": "bn", + "description": "Bangla" + }, + { + "value": "bs", + "description": "Bosnian (Latin)" + }, + { + "value": "bg", + "description": "Bulgarian" + }, + { + "value": "yue", + "description": "Cantonese (Traditional)" + }, + { + "value": "ca", + "description": "Catalan" + }, + { + "value": "zh-Hans", + "description": "Chinese Simplified" + }, + { + "value": "zh-Hant", + "description": "Chinese Traditional" + }, + { + "value": "hr", + "description": "Croatian" + }, + { + "value": "cs", + "description": "Czech" + }, + { + "value": "da", + "description": "Danish" + }, + { + "value": "nl", + "description": "Dutch" + }, + { + "value": "en", + "description": "English" + }, + { + "value": "et", + "description": "Estonian" + }, + { + "value": "fj", + "description": "Fijian" + }, + { + "value": "fil", + "description": "Filipino" + }, + { + "value": "fi", + "description": "Finnish" + }, + { + "value": "fr", + "description": "French" + }, + { + "value": "de", + "description": "German" + }, + { + "value": "el", + "description": "Greek" + }, + { + "value": "ht", + "description": "Haitian Creole" + }, + { + "value": "he", + "description": "Hebrew" + }, + { + "value": "hi", + "description": "Hindi" + }, + { + "value": "mww", + "description": "Hmong Daw" + }, + { + "value": "hu", + "description": "Hungarian" + }, + { + "value": "is", + "description": "Icelandic" + }, + { + "value": "id", + "description": "Indonesian" + }, + { + "value": "it", + "description": "Italian" + }, + { + "value": "ja", + "description": "Japanese" + }, + { + "value": "sw", + "description": "Kiswahili" + }, + { + "value": "tlh", + "description": "Klingon" + }, + { + "value": "ko", + "description": "Korean" + }, + { + "value": "lv", + "description": "Latvian" + }, + { + "value": "lt", + "description": "Lithuanian" + }, + { + "value": "mg", + "description": "Malagasy" + }, + { + "value": "ms", + "description": "Malay" + }, + { + "value": "mt", + "description": "Maltese" + }, + { + "value": "nb", + "description": "Norwegian" + }, + { + "value": "fa", + "description": "Persian" + }, + { + "value": "pl", + "description": "Polish" + }, + { + "value": "pt", + "description": "Portuguese" + }, + { + "value": "otq", + "description": "Queretaro Otomi" + }, + { + "value": "ro", + "description": "Romanian" + }, + { + "value": "ru", + "description": "Russian" + }, + { + "value": "sm", + "description": "Samoan" + }, + { + "value": "sr-Cyrl", + "description": "Serbian (Cyrillic)" + }, + { + "value": "sr-Latn", + "description": "Serbian (Latin)" + }, + { + "value": "sk", + "description": "Slovak" + }, + { + "value": "sl", + "description": "Slovenian" + }, + { + "value": "es", + "description": "Spanish" + }, + { + "value": "sv", + "description": "Swedish" + }, + { + "value": "ty", + "description": "Tahitian" + }, + { + "value": "ta", + "description": "Tamil" + }, + { + "value": "te", + "description": "Telugu" + }, + { + "value": "th", + "description": "Thai" + }, + { + "value": "to", + "description": "Tongan" + }, + { + "value": "tr", + "description": "Turkish" + }, + { + "value": "uk", + "description": "Ukrainian" + }, + { + "value": "ur", + "description": "Urdu" + }, + { + "value": "vi", + "description": "Vietnamese" + }, + { + "value": "cy", + "description": "Welsh" + }, + { + "value": "yua", + "description": "Yucatec Maya" + } + ] + }, + "description": "The language codes supported for input text by TextTranslationSkill." + }, + "ImageAnalysisSkillLanguage": { + "type": "string", + "enum": [ + "en", + "zh" + ], + "x-ms-enum": { + "name": "ImageAnalysisSkillLanguage", + "modelAsString": true, + "values": [ + { + "value": "en", + "description": "English" + }, + { + "value": "zh", + "description": "Chinese" + } + ] + }, + "description": "The language codes supported for input by ImageAnalysisSkill." + }, + "SynonymMap": { + "properties": { + "name": { + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Naming-rules" + }, + "type": "string", + "description": "The name of the synonym map." + }, + "format": { + "type": "string", + "enum": [ + "solr" + ], + "x-ms-enum": { + "name": "SynonymMapFormat", + "modelAsString": false + }, + "description": "The format of the synonym map. Only the 'solr' format is currently supported." + }, + "synonyms": { + "type": "string", + "description": "A series of synonym rules in the specified synonym map format. The rules must be separated by newlines.", + "externalDocs": { + "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Synonym-Map#SynonymMapFormat" + } + }, + "encryptionKey": { + "$ref": "#/definitions/EncryptionKey", + "description": "A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your data when you want full assurance that no one, not even Microsoft, can decrypt your data in Azure Cognitive Search. Once you have encrypted your data, it will always remain encrypted. Azure Cognitive Search will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your data will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.", + "externalDocs": { + "url": "https://aka.ms/azure-search-encryption-with-cmk" + } + }, + "@odata.etag": { + "x-ms-client-name": "ETag", + "type": "string", + "description": "The ETag of the synonym map." + } + }, + "required": [ + "name", + "format", + "synonyms" + ], + "description": "Represents a synonym map definition." + }, + "SynonymMapListResult": { + "properties": { + "value": { + "x-ms-client-name": "SynonymMaps", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SynonymMap" + }, + "description": "The synonym maps in the Search service." + } + }, + "description": "Response from a List SynonymMaps request. If successful, it includes the full definitions of all synonym maps." + }, + "EncryptionKey": { + "properties": { + "keyVaultKeyName": { + "type": "string", + "description": "The name of your Azure Key Vault key to be used to encrypt your data at rest." + }, + "keyVaultKeyVersion": { + "type": "string", + "description": "The version of your Azure Key Vault key to be used to encrypt your data at rest." + }, + "keyVaultUri": { + "type": "string", + "description": "The URI of your Azure Key Vault, also referred to as DNS name, that contains the key to be used to encrypt your data at rest. An example URI might be https://my-keyvault-name.vault.azure.net." + }, + "accessCredentials": { + "$ref": "#/definitions/AzureActiveDirectoryApplicationCredentials", + "description": "Optional Azure Active Directory credentials used for accessing your Azure Key Vault. Not required if using managed identity instead.", + "externalDocs": { + "url": "https://aka.ms/azure-search-msi" + } + } + }, + "required": [ + "keyVaultKeyName", + "keyVaultKeyVersion", + "keyVaultUri" + ], + "description": "A customer-managed encryption key in Azure Key Vault. Keys that you create and manage can be used to encrypt or decrypt data-at-rest in Azure Cognitive Search, such as indexes and synonym maps." + }, + "AzureActiveDirectoryApplicationCredentials": { + "properties": { + "applicationId": { + "type": "string", + "description": "An AAD Application ID that was granted the required access permissions to the Azure Key Vault that is to be used when encrypting your data at rest. The Application ID should not be confused with the Object ID for your AAD Application." + }, + "applicationSecret": { + "type": "string", + "description": "The authentication key of the specified AAD application." + } + }, + "required": [ + "applicationId" + ], + "description": "Credentials of a registered application created for your search service, used for authenticated access to the encryption keys stored in Azure Key Vault." + }, + "ServiceStatistics": { + "properties": { + "counters": { + "$ref": "#/definitions/ServiceCounters", + "description": "Service level resource counters." + }, + "limits": { + "$ref": "#/definitions/ServiceLimits", + "description": "Service level general limits." + } + }, + "description": "Response from a get service statistics request. If successful, it includes service level counters and limits." + }, + "ServiceCounters": { + "properties": { + "documentCount": { + "x-ms-client-name": "documentCounter", + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of documents across all indexes in the service." + }, + "indexesCount": { + "x-ms-client-name": "indexCounter", + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of indexes." + }, + "indexersCount": { + "x-ms-client-name": "indexerCounter", + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of indexers." + }, + "dataSourcesCount": { + "x-ms-client-name": "dataSourceCounter", + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of data sources." + }, + "storageSize": { + "x-ms-client-name": "storageSizeCounter", + "$ref": "#/definitions/ResourceCounter", + "description": "Total size of used storage in bytes." + }, + "synonymMaps": { + "x-ms-client-name": "synonymMapCounter", + "$ref": "#/definitions/ResourceCounter", + "description": "Total number of synonym maps." + } + }, + "description": "Represents service-level resource counters and quotas." + }, + "ServiceLimits": { + "properties": { + "maxFieldsPerIndex": { + "type": "integer", + "format": "int32", + "x-nullable": true, + "description": "The maximum allowed fields per index." + }, + "maxFieldNestingDepthPerIndex": { + "type": "integer", + "format": "int32", + "x-nullable": true, + "description": "The maximum depth which you can nest sub-fields in an index, including the top-level complex field. For example, a/b/c has a nesting depth of 3." + }, + "maxComplexCollectionFieldsPerIndex": { + "type": "integer", + "format": "int32", + "x-nullable": true, + "description": "The maximum number of fields of type Collection(Edm.ComplexType) allowed in an index." + }, + "maxComplexObjectsInCollectionsPerDocument": { + "type": "integer", + "format": "int32", + "x-nullable": true, + "description": "The maximum number of objects in complex collections allowed per document." + } + }, + "description": "Represents various service level limits." + }, + "ResourceCounter": { + "properties": { + "usage": { + "type": "integer", + "format": "int64", + "x-nullable": false, + "description": "The resource usage amount." + }, + "quota": { + "type": "integer", + "format": "int64", + "x-nullable": true, + "description": "The resource amount quota." + } + }, + "description": "Represents a resource's usage and quota." + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + }, + "ClientRequestIdParameter": { + "name": "client-request-id", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "The tracking ID sent with the request to help with debugging.", + "x-ms-client-request-id": true, + "x-ms-parameter-grouping": { + "name": "search-request-options" + }, + "x-ms-parameter-location": "method" + }, + "IfMatchParameter": { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", + "x-ms-parameter-grouping": { + "name": "access-condition" + }, + "x-ms-parameter-location": "method" + }, + "IfNoneMatchParameter": { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", + "x-ms-parameter-grouping": { + "name": "access-condition" + }, + "x-ms-parameter-location": "method" + }, + "PreferHeaderParameter": { + "name": "Prefer", + "in": "header", + "required": true, + "type": "string", + "enum": [ + "return=representation" + ], + "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", + "x-ms-parameter-location": "method" + }, + "SearchServiceNameParameter": { + "name": "searchServiceName", + "in": "path", + "required": true, + "type": "string", + "x-ms-skip-url-encoding": true, + "description": "The name of the search service.", + "x-ms-parameter-location": "client" + }, + "SearchDnsSuffixParameter": { + "name": "searchDnsSuffix", + "in": "path", + "required": true, + "type": "string", + "default": "search.windows.net", + "x-ms-skip-url-encoding": true, + "description": "The DNS suffix of the search service. The default is search.windows.net.", + "x-ms-parameter-location": "client" + } + } +} diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/readme.md b/specification/search/data-plane/Microsoft.Azure.Search.Service/readme.md index 50f5c85f6f60..e6aeff5b19fd 100644 --- a/specification/search/data-plane/Microsoft.Azure.Search.Service/readme.md +++ b/specification/search/data-plane/Microsoft.Azure.Search.Service/readme.md @@ -28,6 +28,15 @@ openapi-type: data-plane tag: package-2019-05 ``` +### Tag: package-2019-05-preview + +These settings apply only when `--tag=package-2019-05-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2019-05-preview' +input-file: +- preview/2019-05-06-preview/searchservice.json +``` + ### Tag: package-2019-05 These settings apply only when `--tag=package-2019-05` is specified on the command line. @@ -91,125 +100,13 @@ input-file: - preview/2015-02-28/searchservice.json ``` -### Tag: track1-package-2019-05-preview - -These settings apply only when `--tag=track1-package-2019-05-preview` is specified on the command line. -It is meant to be used for generating Track 1 .NET SDK only! - -``` yaml $(tag) == 'track1-package-2019-05-preview' -input-file: -- track1/preview/2019-05-06-preview/searchservice.json -``` - -### Tag: track1-package-2019-05 - -These settings apply only when `--tag=track1-package-2019-05` is specified on the command line. -It is meant to be used for generating Track 1 .NET SDK only! - -``` yaml $(tag) == 'track1-package-2019-05' -input-file: -- track1/stable/2019-05-06/searchservice.json -``` - --- # Code Generation !!! READ THIS !!! -This swagger is ready for C# and Java. +This swagger is ready for C# only. !!! READ THIS !!! -## Java - -These settings apply only when `--java` is specified on the command line. -Please also specify `--java-sdks-folder=`. - -``` yaml $(java) -title: SearchServiceRestClient -output-folder: $(java-sdks-folder)/search -namespace: com.azure.search -java: true -sync-methods: none -add-context-parameter: true -generate-client-interfaces: false -custom-types-subpackage: implementation.models -custom-types: AnalyzeResult -license-header: |- - Copyright (c) Microsoft Corporation. All rights reserved. - Licensed under the MIT License. - Code generated by Microsoft (R) AutoRest Code Generator. - Changes may cause incorrect behavior and will be lost if the code is regenerated. - -require: ../autorest-custom-directives.md - -vararg-properties: >- - CorsOptions.allowedOrigins - -directive: - # Add static Collection method to DataType - - from: DataType.java - where: $ - transform: >- - return $ - .replace(/(public static final DataType EDM_COMPLEX_TYPE = fromString\("Edm.ComplexType"\);)/g, "$1\n\n /**\n * Returns a collection of a specific DataType\n * @param dataType the corresponding DataType\n * @return a Collection of the corresponding DataType\n */\n @JsonCreator\n public static DataType Collection(DataType dataType) {\n return fromString(String.format(\"Collection(%s)\", dataType.toString()));\n }") - - # Workaround to fix bad host path parameters - - from: - - SkillsetsImpl.java - - DatasetsImpl.java - - DataSourcesImpl.java - - IndexersImpl.java - - IndexesImpl.java - - SynonymMapsImpl.java - where: $ - transform: >- - return $ - .replace(/(this.getSearchServiceName)/g, "this.client.getSearchServiceName") - .replace(/(this.getSearchDnsSuffix)/g, "this.client.getSearchDnsSuffix") - - # Replace VoidResponse with SimpleResponse - - from: - - SkillsetsImpl.java - - DatasetsImpl.java - - DataSourcesImpl.java - - IndexersImpl.java - - IndexesImpl.java - - SynonymMapsImpl.java - where: $ - transform: >- - return $ - .replace(/(import com.azure.core.http.rest.VoidResponse;\n)/g, "") - .replace(/(VoidResponse)/g, "SimpleResponse") - - # Change Field.analyzer/indexAnalyzer/searchAnalyzer's types from enum to string. Update setters and getters. - - change-object-ref-to-string: - path: "$.definitions.Field.properties.analyzer" - - change-object-ref-to-string: - path: "$.definitions.Field.properties.searchAnalyzer" - - change-object-ref-to-string: - path: "$.definitions.Field.properties.indexAnalyzer" - - # Change CustomAnalyzer.tokenizer/tokenFilters/charFilters' types from enum to string. Update setters and getters. - - change-object-ref-to-string: - path: "$.definitions.CustomAnalyzer.properties.tokenizer" - - change-object-ref-to-string: - path: "$.definitions.CustomAnalyzer.properties.tokenFilters.items" - - change-object-ref-to-string: - path: "$.definitions.CustomAnalyzer.properties.charFilters.items" - - - from: - - SearchServiceRestClientImpl.java - where: $ - transform: >- - return $.replace(/(package com.azure.search.implementation;)/g, "$1\nimport com.azure.core.http.rest.RestProxy;") - - - from: - - DataSourceType.java - where: $ - transform: >- - return $ - .replace(/(COSMOS_DB)/g, "COSMOS") -``` - ## C# These settings apply only when `--csharp` is specified on the command line. @@ -271,6 +168,7 @@ require: $(this-folder)/../../../../profiles/readme.md # all the input files across all versions input-file: + - $(this-folder)/preview/2019-05-06-preview/searchservice.json - $(this-folder)/stable/2019-05-06/searchservice.json - $(this-folder)/preview/2017-11-11-preview/searchservice.json - $(this-folder)/preview/2017-11-11/searchservice.json @@ -278,8 +176,6 @@ input-file: - $(this-folder)/preview/2016-09-01/searchservice.json - $(this-folder)/preview/2015-02-28-preview/searchservice.json - $(this-folder)/preview/2015-02-28/searchservice.json - - $(this-folder)/track1/preview/2019-05-06-preview/searchservice.json - - $(this-folder)/track1/stable/2019-05-06/searchservice.json ``` diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/stable/2019-05-06/examples/SearchServiceListDataSources.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/stable/2019-05-06/examples/SearchServiceListDataSources.json index 161ad46116a1..879b3262bfdc 100644 --- a/specification/search/data-plane/Microsoft.Azure.Search.Service/stable/2019-05-06/examples/SearchServiceListDataSources.json +++ b/specification/search/data-plane/Microsoft.Azure.Search.Service/stable/2019-05-06/examples/SearchServiceListDataSources.json @@ -2,7 +2,6 @@ "parameters": { "searchServiceName": "myservice", "searchDnsSuffix": "search.windows.net", - "$select": "*", "api-version": "2019-05-06" }, "responses": { @@ -29,6 +28,19 @@ "softDeleteColumnName": "isDeleted", "softDeleteMarkerValue": "true" } + }, + { + "name": "myblobdatasource", + "description": "My Azure Blob data source.", + "type": "azureblob", + "credentials": { + "connectionString": null + }, + "container": { + "name": "mycontainer" + }, + "dataChangeDetectionPolicy": null, + "dataDeletionDetectionPolicy": null } ] } diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/stable/2019-05-06/examples/SearchServiceListIndexers.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/stable/2019-05-06/examples/SearchServiceListIndexers.json index a00028d0ac51..97f58acd24ad 100644 --- a/specification/search/data-plane/Microsoft.Azure.Search.Service/stable/2019-05-06/examples/SearchServiceListIndexers.json +++ b/specification/search/data-plane/Microsoft.Azure.Search.Service/stable/2019-05-06/examples/SearchServiceListIndexers.json @@ -2,7 +2,6 @@ "parameters": { "searchServiceName": "myservice", "searchDnsSuffix": "search.windows.net", - "$select": "*", "api-version": "2019-05-06" }, "responses": { diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/stable/2019-05-06/examples/SearchServiceListIndexes.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/stable/2019-05-06/examples/SearchServiceListIndexes.json index 0b7e3926d55e..8fd4a3b49515 100644 --- a/specification/search/data-plane/Microsoft.Azure.Search.Service/stable/2019-05-06/examples/SearchServiceListIndexes.json +++ b/specification/search/data-plane/Microsoft.Azure.Search.Service/stable/2019-05-06/examples/SearchServiceListIndexes.json @@ -2,7 +2,6 @@ "parameters": { "searchServiceName": "myservice", "searchDnsSuffix": "search.windows.net", - "$select": "*", "api-version": "2019-05-06" }, "responses": { diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/stable/2019-05-06/examples/SearchServiceListSkillsets.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/stable/2019-05-06/examples/SearchServiceListSkillsets.json index ccfc15dbe454..c0ae4f91a9ee 100644 --- a/specification/search/data-plane/Microsoft.Azure.Search.Service/stable/2019-05-06/examples/SearchServiceListSkillsets.json +++ b/specification/search/data-plane/Microsoft.Azure.Search.Service/stable/2019-05-06/examples/SearchServiceListSkillsets.json @@ -2,7 +2,6 @@ "parameters": { "searchServiceName": "myservice", "searchDnsSuffix": "search.windows.net", - "$select": "*", "api-version": "2019-05-06" }, "responses": { diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/stable/2019-05-06/examples/SearchServiceListSynonymMaps.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/stable/2019-05-06/examples/SearchServiceListSynonymMaps.json index 78b73edcd92e..bdc56fcf80fc 100644 --- a/specification/search/data-plane/Microsoft.Azure.Search.Service/stable/2019-05-06/examples/SearchServiceListSynonymMaps.json +++ b/specification/search/data-plane/Microsoft.Azure.Search.Service/stable/2019-05-06/examples/SearchServiceListSynonymMaps.json @@ -2,7 +2,6 @@ "parameters": { "searchServiceName": "myservice", "searchDnsSuffix": "search.windows.net", - "$select": "*", "api-version": "2019-05-06" }, "responses": { diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/stable/2019-05-06/searchservice.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/stable/2019-05-06/searchservice.json index a623a1484fcc..cffd68fd895c 100644 --- a/specification/search/data-plane/Microsoft.Azure.Search.Service/stable/2019-05-06/searchservice.json +++ b/specification/search/data-plane/Microsoft.Azure.Search.Service/stable/2019-05-06/searchservice.json @@ -192,13 +192,6 @@ "url": "https://docs.microsoft.com/rest/api/searchservice/List-Data-Sources" }, "parameters": [ - { - "name": "$select", - "in": "query", - "required": false, - "type": "string", - "description": "Selects which top-level properties of the data sources to retrieve. Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties." - }, { "$ref": "#/parameters/ClientRequestIdParameter" }, @@ -211,7 +204,7 @@ "200": { "description": "", "schema": { - "$ref": "#/definitions/ListDataSourcesResult" + "$ref": "#/definitions/DataSourceListResult" } } } @@ -499,13 +492,6 @@ "url": "https://docs.microsoft.com/rest/api/searchservice/List-Indexers" }, "parameters": [ - { - "name": "$select", - "in": "query", - "required": false, - "type": "string", - "description": "Selects which top-level properties of the indexers to retrieve. Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties." - }, { "$ref": "#/parameters/ClientRequestIdParameter" }, @@ -518,7 +504,7 @@ "200": { "description": "", "schema": { - "$ref": "#/definitions/ListIndexersResult" + "$ref": "#/definitions/IndexerListResult" } } } @@ -641,12 +627,6 @@ { "$ref": "#/parameters/ClientRequestIdParameter" }, - { - "$ref": "#/parameters/IfMatchParameter" - }, - { - "$ref": "#/parameters/IfNoneMatchParameter" - }, { "$ref": "#/parameters/PreferHeaderParameter" }, @@ -695,12 +675,6 @@ { "$ref": "#/parameters/ClientRequestIdParameter" }, - { - "$ref": "#/parameters/IfMatchParameter" - }, - { - "$ref": "#/parameters/IfNoneMatchParameter" - }, { "$ref": "#/parameters/ApiVersionParameter" } @@ -771,13 +745,6 @@ "url": "https://docs.microsoft.com/rest/api/searchservice/list-skillset" }, "parameters": [ - { - "name": "$select", - "in": "query", - "required": false, - "type": "string", - "description": "Selects which top-level properties of the skillsets to retrieve. Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties." - }, { "$ref": "#/parameters/ClientRequestIdParameter" }, @@ -790,7 +757,7 @@ "200": { "description": "The list is successfully returned.", "schema": { - "$ref": "#/definitions/ListSkillsetsResult" + "$ref": "#/definitions/SkillsetListResult" } } } @@ -1002,13 +969,6 @@ "url": "https://docs.microsoft.com/rest/api/searchservice/List-Synonym-Maps" }, "parameters": [ - { - "name": "$select", - "in": "query", - "required": false, - "type": "string", - "description": "Selects which top-level properties of the synonym maps to retrieve. Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties." - }, { "$ref": "#/parameters/ClientRequestIdParameter" }, @@ -1021,7 +981,7 @@ "200": { "description": "", "schema": { - "$ref": "#/definitions/ListSynonymMapsResult" + "$ref": "#/definitions/SynonymMapListResult" } } } @@ -1130,7 +1090,7 @@ "in": "query", "required": false, "type": "string", - "description": "Selects which top-level properties of the index definitions to retrieve. Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties." + "description": "Selects which properties of the index definitions to retrieve. Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties." }, { "$ref": "#/parameters/ClientRequestIdParameter" @@ -1144,7 +1104,7 @@ "200": { "description": "", "schema": { - "$ref": "#/definitions/ListIndexesResult" + "$ref": "#/definitions/IndexListResult" } } } @@ -1341,7 +1301,7 @@ "200": { "description": "", "schema": { - "$ref": "#/definitions/GetIndexStatisticsResult" + "$ref": "#/definitions/IndexGetStatisticsResult" } } } @@ -1605,7 +1565,7 @@ ], "x-ms-enum": { "name": "AnalyzerName", - "modelAsString": true + "modelAsString": false }, "description": "Defines the names of all text analyzers supported by Azure Cognitive Search.", "externalDocs": { @@ -1631,74 +1591,7 @@ ], "x-ms-enum": { "name": "TokenizerName", - "modelAsString": true, - "values": [ - { - "value": "classic", - "name": "Classic", - "description": "Grammar-based tokenizer that is suitable for processing most European-language documents. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicTokenizer.html" - }, - { - "value": "edgeNGram", - "name": "EdgeNGram", - "description": "Tokenizes the input from an edge into n-grams of the given size(s). See https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenizer.html" - }, - { - "value": "keyword_v2", - "name": "Keyword", - "description": "Emits the entire input as a single token. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordTokenizer.html" - }, - { - "value": "letter", - "name": "Letter", - "description": "Divides text at non-letters. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LetterTokenizer.html" - }, - { - "value": "lowercase", - "name": "Lowercase", - "description": "Divides text at non-letters and converts them to lower case. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LowerCaseTokenizer.html" - }, - { - "value": "microsoft_language_tokenizer", - "name": "MicrosoftLanguageTokenizer", - "description": "Divides text using language-specific rules." - }, - { - "value": "microsoft_language_stemming_tokenizer", - "name": "MicrosoftLanguageStemmingTokenizer", - "description": "Divides text using language-specific rules and reduces words to their base forms." - }, - { - "value": "nGram", - "name": "NGram", - "description": "Tokenizes the input into n-grams of the given size(s). See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenizer.html" - }, - { - "value": "path_hierarchy_v2", - "name": "PathHierarchy", - "description": "Tokenizer for path-like hierarchies. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/path/PathHierarchyTokenizer.html" - }, - { - "value": "pattern", - "name": "Pattern", - "description": "Tokenizer that uses regex pattern matching to construct distinct tokens. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternTokenizer.html" - }, - { - "value": "standard_v2", - "name": "Standard", - "description": "Standard Lucene analyzer; Composed of the standard tokenizer, lowercase filter and stop filter. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/StandardTokenizer.html" - }, - { - "value": "uax_url_email", - "name": "UaxUrlEmail", - "description": "Tokenizes urls and emails as one token. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/UAX29URLEmailTokenizer.html" - }, - { - "value": "whitespace", - "name": "Whitespace", - "description": "Divides text at whitespace. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/WhitespaceTokenizer.html" - } - ] + "modelAsString": false }, "description": "Defines the names of all tokenizers supported by Azure Cognitive Search.", "externalDocs": { @@ -1745,179 +1638,7 @@ ], "x-ms-enum": { "name": "TokenFilterName", - "modelAsString": true, - "values": [ - { - "value": "arabic_normalization", - "name": "ArabicNormalization", - "description": "A token filter that applies the Arabic normalizer to normalize the orthography. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ar/ArabicNormalizationFilter.html" - }, - { - "value": "apostrophe", - "name": "Apostrophe", - "description": "Strips all characters after an apostrophe (including the apostrophe itself). See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/tr/ApostropheFilter.html" - }, - { - "value": "asciifolding", - "name": "AsciiFolding", - "description": "Converts alphabetic, numeric, and symbolic Unicode characters which are not in the first 127 ASCII characters (the \"Basic Latin\" Unicode block) into their ASCII equivalents, if such equivalents exist. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ASCIIFoldingFilter.html" - }, - { - "value": "cjk_bigram", - "name": "CjkBigram", - "description": "Forms bigrams of CJK terms that are generated from StandardTokenizer. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKBigramFilter.html" - }, - { - "value": "cjk_width", - "name": "CjkWidth", - "description": "Normalizes CJK width differences. Folds fullwidth ASCII variants into the equivalent basic Latin, and half-width Katakana variants into the equivalent Kana. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKWidthFilter.html" - }, - { - "value": "classic", - "name": "Classic", - "description": "Removes English possessives, and dots from acronyms. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicFilter.html" - }, - { - "value": "common_grams", - "name": "CommonGram", - "description": "Construct bigrams for frequently occurring terms while indexing. Single terms are still indexed too, with bigrams overlaid. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/commongrams/CommonGramsFilter.html" - }, - { - "value": "edgeNGram_v2", - "name": "EdgeNGram", - "description": "Generates n-grams of the given size(s) starting from the front or the back of an input token. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenFilter.html" - }, - { - "value": "elision", - "name": "Elision", - "description": "Removes elisions. For example, \"l'avion\" (the plane) will be converted to \"avion\" (plane). See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/util/ElisionFilter.html" - }, - { - "value": "german_normalization", - "name": "GermanNormalization", - "description": "Normalizes German characters according to the heuristics of the German2 snowball algorithm. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/de/GermanNormalizationFilter.html" - }, - { - "value": "hindi_normalization", - "name": "HindiNormalization", - "description": "Normalizes text in Hindi to remove some differences in spelling variations. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/hi/HindiNormalizationFilter.html" - }, - { - "value": "indic_normalization", - "name": "IndicNormalization", - "description": "Normalizes the Unicode representation of text in Indian languages. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/in/IndicNormalizationFilter.html" - }, - { - "value": "keyword_repeat", - "name": "KeywordRepeat", - "description": "Emits each incoming token twice, once as keyword and once as non-keyword. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/KeywordRepeatFilter.html" - }, - { - "value": "kstem", - "name": "KStem", - "description": "A high-performance kstem filter for English. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/en/KStemFilter.html" - }, - { - "value": "length", - "name": "Length", - "description": "Removes words that are too long or too short. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LengthFilter.html" - }, - { - "value": "limit", - "name": "Limit", - "description": "Limits the number of tokens while indexing. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LimitTokenCountFilter.html" - }, - { - "value": "lowercase", - "name": "Lowercase", - "description": "Normalizes token text to lower case. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LowerCaseFilter.htm" - }, - { - "value": "nGram_v2", - "name": "NGram", - "description": "Generates n-grams of the given size(s). See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenFilter.html" - }, - { - "value": "persian_normalization", - "name": "PersianNormalization", - "description": "Applies normalization for Persian. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/fa/PersianNormalizationFilter.html" - }, - { - "value": "phonetic", - "name": "Phonetic", - "description": "Create tokens for phonetic matches. See https://lucene.apache.org/core/4_10_3/analyzers-phonetic/org/apache/lucene/analysis/phonetic/package-tree.html" - }, - { - "value": "porter_stem", - "name": "PorterStem", - "description": "Uses the Porter stemming algorithm to transform the token stream. See http://tartarus.org/~martin/PorterStemmer" - }, - { - "value": "reverse", - "name": "Reverse", - "description": "Reverses the token string. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/reverse/ReverseStringFilter.html" - }, - { - "value": "scandinavian_normalization", - "name": "ScandinavianNormalization", - "description": "Normalizes use of the interchangeable Scandinavian characters. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianNormalizationFilter.html" - }, - { - "value": "scandinavian_folding", - "name": "ScandinavianFoldingNormalization", - "description": "Folds Scandinavian characters åÅäæÄÆ->a and öÖøØ->o. It also discriminates against use of double vowels aa, ae, ao, oe and oo, leaving just the first one. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianFoldingFilter.html" - }, - { - "value": "shingle", - "name": "Shingle", - "description": "Creates combinations of tokens as a single token. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/shingle/ShingleFilter.html" - }, - { - "value": "snowball", - "name": "Snowball", - "description": "A filter that stems words using a Snowball-generated stemmer. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/snowball/SnowballFilter.html" - }, - { - "value": "sorani_normalization", - "name": "SoraniNormalization", - "description": "Normalizes the Unicode representation of Sorani text. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ckb/SoraniNormalizationFilter.html" - }, - { - "value": "stemmer", - "name": "Stemmer", - "description": "Language specific stemming filter. See https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#TokenFilters" - }, - { - "value": "stopwords", - "name": "Stopwords", - "description": "Removes stop words from a token stream. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopFilter.html" - }, - { - "value": "trim", - "name": "Trim", - "description": "Trims leading and trailing whitespace from tokens. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TrimFilter.html" - }, - { - "value": "truncate", - "name": "Truncate", - "description": "Truncates the terms to a specific length. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TruncateTokenFilter.html" - }, - { - "value": "unique", - "name": "Unique", - "description": "Filters out tokens with same text as the previous token. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/RemoveDuplicatesTokenFilter.html" - }, - { - "value": "uppercase", - "name": "Uppercase", - "description": "Normalizes token text to upper case. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/UpperCaseFilter.html" - }, - { - "value": "word_delimiter", - "name": "WordDelimiter", - "description": "Splits words into subwords and performs optional transformations on subword groups." - } - ] + "modelAsString": false }, "description": "Defines the names of all token filters supported by Azure Cognitive Search.", "externalDocs": { @@ -1931,14 +1652,7 @@ ], "x-ms-enum": { "name": "CharFilterName", - "modelAsString": true, - "values": [ - { - "value": "html_strip", - "name": "HtmlStrip", - "description": "A character filter that attempts to strip out HTML constructs. See https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/charfilter/HTMLStripCharFilter.html" - } - ] + "modelAsString": false }, "description": "Defines the names of all character filters supported by Azure Cognitive Search.", "externalDocs": { @@ -1959,7 +1673,7 @@ ], "x-ms-enum": { "name": "RegexFlags", - "modelAsString": true + "modelAsString": false }, "description": "Defines flags that can be combined to control how regular expressions are used in the pattern analyzer and pattern tokenizer.", "externalDocs": { @@ -1980,7 +1694,7 @@ ], "x-ms-enum": { "name": "DataType", - "modelAsString": true + "modelAsString": false }, "description": "Defines the data type of a field in a search index." }, @@ -3692,7 +3406,7 @@ "properties": { "name": { "type": "string", - "description": "The name of the table or view (for Azure SQL data source) or collection (for CosmosDB data source) that will be indexed." + "description": "The name of the table or view (for Azure SQL data source) or collection (for DocumentDB data source) that will be indexed." }, "query": { "type": "string", @@ -3702,7 +3416,7 @@ "required": [ "name" ], - "description": "Represents information about the entity (such as Azure SQL table or CosmosDB collection) that will be indexed." + "description": "Represents information about the entity (such as Azure SQL table or DocumentDb collection) that will be indexed." }, "DataChangeDetectionPolicy": { "discriminator": "@odata.type", @@ -3784,25 +3498,7 @@ ], "x-ms-enum": { "name": "DataSourceType", - "modelAsString": true, - "values": [ - { - "value": "azuresql", - "name": "AzureSql" - }, - { - "value": "cosmosdb", - "name": "CosmosDb" - }, - { - "value": "azureblob", - "name": "AzureBlob" - }, - { - "value": "azuretable", - "name": "AzureTable" - } - ] + "modelAsString": false }, "description": "Defines the type of a datasource." }, @@ -3853,7 +3549,7 @@ ], "description": "Represents a datasource definition, which can be used to configure an indexer." }, - "ListDataSourcesResult": { + "DataSourceListResult": { "properties": { "value": { "x-ms-client-name": "DataSources", @@ -4040,7 +3736,7 @@ }, "description": "Represents an indexer." }, - "ListIndexersResult": { + "IndexerListResult": { "properties": { "value": { "x-ms-client-name": "Indexers", @@ -4763,7 +4459,7 @@ ], "description": "Represents a search index definition, which describes the fields and search behavior of an index." }, - "GetIndexStatisticsResult": { + "IndexGetStatisticsResult": { "properties": { "documentCount": { "type": "integer", @@ -4782,7 +4478,7 @@ }, "description": "Statistics for a given index. Statistics are collected periodically and are not guaranteed to always be up-to-date." }, - "ListIndexesResult": { + "IndexListResult": { "properties": { "value": { "x-ms-client-name": "Indexes", @@ -4814,8 +4510,7 @@ "description": "A list of skills in the skillset." }, "cognitiveServices": { - "x-ms-client-name": "CognitiveServicesAccount", - "$ref": "#/definitions/CognitiveServicesAccount", + "$ref": "#/definitions/CognitiveServices", "description": "Details about cognitive services to be used when running skills." }, "@odata.etag": { @@ -4834,7 +4529,7 @@ }, "description": "A list of skills." }, - "CognitiveServicesAccount": { + "CognitiveServices": { "discriminator": "@odata.type", "properties": { "@odata.type": { @@ -4849,21 +4544,21 @@ ], "description": "Abstract base class for describing any cognitive service resource attached to the skillset." }, - "DefaultCognitiveServicesAccount": { + "DefaultCognitiveServices": { "description": "An empty object that represents the default cognitive service resource for a skillset.", "x-ms-discriminator-value": "#Microsoft.Azure.Search.DefaultCognitiveServices", "allOf": [ { - "$ref": "#/definitions/CognitiveServicesAccount" + "$ref": "#/definitions/CognitiveServices" } ] }, - "CognitiveServicesAccountKey": { + "CognitiveServicesByKey": { "description": "A cognitive service resource provisioned with a key that is attached to a skillset.", "x-ms-discriminator-value": "#Microsoft.Azure.Search.CognitiveServicesByKey", "allOf": [ { - "$ref": "#/definitions/CognitiveServicesAccount" + "$ref": "#/definitions/CognitiveServices" } ], "properties": { @@ -5147,6 +4842,39 @@ }, "description": "Text analytics entity recognition." }, + "NamedEntityRecognitionSkill": { + "x-ms-discriminator-value": "#Microsoft.Skills.Text.NamedEntityRecognitionSkill", + "allOf": [ + { + "$ref": "#/definitions/Skill" + } + ], + "properties": { + "categories": { + "type": "array", + "items": { + "$ref": "#/definitions/NamedEntityCategory", + "x-nullable": false + }, + "description": "A list of named entity categories." + }, + "defaultLanguageCode": { + "$ref": "#/definitions/NamedEntityRecognitionSkillLanguage", + "description": "A value indicating which language code to use. Default is en." + }, + "minimumPrecision": { + "type": "number", + "format": "double", + "x-nullable": true, + "description": "A value between 0 and 1 to indicate the confidence of the results." + } + }, + "externalDocs": { + "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-named-entity-recognition" + }, + "description": "Text analytics named entity recognition. This skill is deprecated in favor of EntityRecognitionSkill.", + "x-ms-external": true + }, "SentimentSkill": { "x-ms-discriminator-value": "#Microsoft.Skills.Text.SentimentSkill", "allOf": [ @@ -5276,7 +5004,7 @@ }, "description": "A dictionary of http request headers." }, - "ListSkillsetsResult": { + "SkillsetListResult": { "properties": { "value": { "x-ms-client-name": "Skillsets", @@ -5390,69 +5118,7 @@ ], "x-ms-enum": { "name": "SentimentSkillLanguage", - "modelAsString": true, - "values": [ - { - "value": "da", - "description": "Danish" - }, - { - "value": "nl", - "description": "Dutch" - }, - { - "value": "en", - "description": "English" - }, - { - "value": "fi", - "description": "Finnish" - }, - { - "value": "fr", - "description": "French" - }, - { - "value": "de", - "description": "German" - }, - { - "value": "el", - "description": "Greek" - }, - { - "value": "it", - "description": "Italian" - }, - { - "value": "no", - "description": "Norwegian (Bokmaal)" - }, - { - "value": "pl", - "description": "Polish" - }, - { - "value": "pt-PT", - "description": "Portuguese (Portugal)" - }, - { - "value": "ru", - "description": "Russian" - }, - { - "value": "es", - "description": "Spanish" - }, - { - "value": "sv", - "description": "Swedish" - }, - { - "value": "tr", - "description": "Turkish" - } - ] + "modelAsString": false }, "description": "The language codes supported for input text by SentimentSkill." }, @@ -5478,73 +5144,7 @@ ], "x-ms-enum": { "name": "KeyPhraseExtractionSkillLanguage", - "modelAsString": true, - "values": [ - { - "value": "da", - "description": "Danish" - }, - { - "value": "nl", - "description": "Dutch" - }, - { - "value": "en", - "description": "English" - }, - { - "value": "fi", - "description": "Finnish" - }, - { - "value": "fr", - "description": "French" - }, - { - "value": "de", - "description": "German" - }, - { - "value": "it", - "description": "Italian" - }, - { - "value": "ja", - "description": "Japanese" - }, - { - "value": "ko", - "description": "Korean" - }, - { - "value": "no", - "description": "Norwegian (Bokmaal)" - }, - { - "value": "pl", - "description": "Polish" - }, - { - "value": "pt-PT", - "description": "Portuguese (Portugal)" - }, - { - "value": "pt-BR", - "description": "Portuguese (Brazil)" - }, - { - "value": "ru", - "description": "Russian" - }, - { - "value": "es", - "description": "Spanish" - }, - { - "value": "sv", - "description": "Swedish" - } - ] + "modelAsString": false }, "description": "The language codes supported for input text by KeyPhraseExtractionSkill." }, @@ -5580,113 +5180,7 @@ ], "x-ms-enum": { "name": "OcrSkillLanguage", - "modelAsString": true, - "values": [ - { - "value": "zh-Hans", - "description": "Chinese-Simplified" - }, - { - "value": "zh-Hant", - "description": "Chinese-Traditional" - }, - { - "value": "cs", - "description": "Czech" - }, - { - "value": "da", - "description": "Danish" - }, - { - "value": "nl", - "description": "Dutch" - }, - { - "value": "en", - "description": "English" - }, - { - "value": "fi", - "description": "Finnish" - }, - { - "value": "fr", - "description": "French" - }, - { - "value": "de", - "description": "German" - }, - { - "value": "el", - "description": "Greek" - }, - { - "value": "hu", - "description": "Hungarian" - }, - { - "value": "it", - "description": "Italian" - }, - { - "value": "ja", - "description": "Japanese" - }, - { - "value": "ko", - "description": "Korean" - }, - { - "value": "nb", - "description": "Norwegian (Bokmaal)" - }, - { - "value": "pl", - "description": "Polish" - }, - { - "value": "pt", - "description": "Portuguese" - }, - { - "value": "ru", - "description": "Russian" - }, - { - "value": "es", - "description": "Spanish" - }, - { - "value": "sv", - "description": "Swedish" - }, - { - "value": "tr", - "description": "Turkish" - }, - { - "value": "ar", - "description": "Arabic" - }, - { - "value": "ro", - "description": "Romanian" - }, - { - "value": "sr-Cyrl", - "description": "Serbian (Cyrillic, Serbia)" - }, - { - "value": "sr-Latn", - "description": "Serbian (Latin, Serbia)" - }, - { - "value": "sk", - "description": "Slovak" - } - ] + "modelAsString": false }, "description": "The language codes supported for input by OcrSkill." }, @@ -5705,174 +5199,48 @@ ], "x-ms-enum": { "name": "SplitSkillLanguage", - "modelAsString": true, - "values": [ - { - "value": "da", - "description": "Danish" - }, - { - "value": "de", - "description": "German" - }, - { - "value": "en", - "description": "English" - }, - { - "value": "es", - "description": "Spanish" - }, - { - "value": "fi", - "description": "Finnish" - }, - { - "value": "fr", - "description": "French" - }, - { - "value": "it", - "description": "Italian" - }, - { - "value": "ko", - "description": "Korean" - }, - { - "value": "pt", - "description": "Portuguese" - } - ] + "modelAsString": false }, "description": "The language codes supported for input text by SplitSkill." }, "EntityRecognitionSkillLanguage": { + "type": "string", + "enum": [ + "de", + "en", + "es", + "fr", + "it" + ], + "x-ms-enum": { + "name": "EntityRecognitionSkillLanguage", + "modelAsString": false + }, + "description": "The language codes supported for input text by EntityRecognitionSkill." + }, + "NamedEntityRecognitionSkillLanguage": { "type": "string", "enum": [ "ar", "cs", - "zh-Hans", - "zh-Hant", "da", - "nl", + "de", "en", + "es", "fi", "fr", - "de", - "el", + "he", "hu", "it", - "ja", "ko", - "no", - "pl", - "pt-PT", - "pt-BR", - "ru", - "es", - "sv", - "tr" + "pt-br", + "pt" ], "x-ms-enum": { - "name": "EntityRecognitionSkillLanguage", - "modelAsString": true, - "values": [ - { - "value": "ar", - "description": "Arabic" - }, - { - "value": "cs", - "description": "Czech" - }, - { - "value": "zh-Hans", - "description": "Chinese-Simplified" - }, - { - "value": "zh-Hant", - "description": "Chinese-Traditional" - }, - { - "value": "da", - "description": "Danish" - }, - { - "value": "nl", - "description": "Dutch" - }, - { - "value": "en", - "description": "English" - }, - { - "value": "fi", - "description": "Finnish" - }, - { - "value": "fr", - "description": "French" - }, - { - "value": "de", - "description": "German" - }, - { - "value": "el", - "description": "Greek" - }, - { - "value": "hu", - "description": "Hungarian" - }, - { - "value": "it", - "description": "Italian" - }, - { - "value": "ja", - "description": "Japanese" - }, - { - "value": "ko", - "description": "Korean" - }, - { - "value": "no", - "description": "Norwegian (Bokmaal)" - }, - { - "value": "pl", - "description": "Polish" - }, - { - "value": "pt-PT", - "description": "Portuguese (Portugal)" - }, - { - "value": "pt-BR", - "description": "Portuguese (Brazil)" - }, - { - "value": "ru", - "description": "Russian" - }, - { - "value": "es", - "description": "Spanish" - }, - { - "value": "sv", - "description": "Swedish" - }, - { - "value": "tr", - "description": "Turkish" - } - ] + "name": "NamedEntityRecognitionSkillLanguage", + "modelAsString": false }, - "description": "The language codes supported for input text by EntityRecognitionSkill." + "description": "The language codes supported for input text by NamedEntityRecognitionSkill." }, "TextTranslationSkillLanguage": { "type": "string", @@ -5943,261 +5311,7 @@ ], "x-ms-enum": { "name": "TextTranslationSkillLanguage", - "modelAsString": true, - "values": [ - { - "value": "af", - "description": "Afrikaans" - }, - { - "value": "ar", - "description": "Arabic" - }, - { - "value": "bn", - "description": "Bangla" - }, - { - "value": "bs", - "description": "Bosnian (Latin)" - }, - { - "value": "bg", - "description": "Bulgarian" - }, - { - "value": "yue", - "description": "Cantonese (Traditional)" - }, - { - "value": "ca", - "description": "Catalan" - }, - { - "value": "zh-Hans", - "description": "Chinese Simplified" - }, - { - "value": "zh-Hant", - "description": "Chinese Traditional" - }, - { - "value": "hr", - "description": "Croatian" - }, - { - "value": "cs", - "description": "Czech" - }, - { - "value": "da", - "description": "Danish" - }, - { - "value": "nl", - "description": "Dutch" - }, - { - "value": "en", - "description": "English" - }, - { - "value": "et", - "description": "Estonian" - }, - { - "value": "fj", - "description": "Fijian" - }, - { - "value": "fil", - "description": "Filipino" - }, - { - "value": "fi", - "description": "Finnish" - }, - { - "value": "fr", - "description": "French" - }, - { - "value": "de", - "description": "German" - }, - { - "value": "el", - "description": "Greek" - }, - { - "value": "ht", - "description": "Haitian Creole" - }, - { - "value": "he", - "description": "Hebrew" - }, - { - "value": "hi", - "description": "Hindi" - }, - { - "value": "mww", - "description": "Hmong Daw" - }, - { - "value": "hu", - "description": "Hungarian" - }, - { - "value": "is", - "description": "Icelandic" - }, - { - "value": "id", - "description": "Indonesian" - }, - { - "value": "it", - "description": "Italian" - }, - { - "value": "ja", - "description": "Japanese" - }, - { - "value": "sw", - "description": "Kiswahili" - }, - { - "value": "tlh", - "description": "Klingon" - }, - { - "value": "ko", - "description": "Korean" - }, - { - "value": "lv", - "description": "Latvian" - }, - { - "value": "lt", - "description": "Lithuanian" - }, - { - "value": "mg", - "description": "Malagasy" - }, - { - "value": "ms", - "description": "Malay" - }, - { - "value": "mt", - "description": "Maltese" - }, - { - "value": "nb", - "description": "Norwegian" - }, - { - "value": "fa", - "description": "Persian" - }, - { - "value": "pl", - "description": "Polish" - }, - { - "value": "pt", - "description": "Portuguese" - }, - { - "value": "otq", - "description": "Queretaro Otomi" - }, - { - "value": "ro", - "description": "Romanian" - }, - { - "value": "ru", - "description": "Russian" - }, - { - "value": "sm", - "description": "Samoan" - }, - { - "value": "sr-Cyrl", - "description": "Serbian (Cyrillic)" - }, - { - "value": "sr-Latn", - "description": "Serbian (Latin)" - }, - { - "value": "sk", - "description": "Slovak" - }, - { - "value": "sl", - "description": "Slovenian" - }, - { - "value": "es", - "description": "Spanish" - }, - { - "value": "sv", - "description": "Swedish" - }, - { - "value": "ty", - "description": "Tahitian" - }, - { - "value": "ta", - "description": "Tamil" - }, - { - "value": "te", - "description": "Telugu" - }, - { - "value": "th", - "description": "Thai" - }, - { - "value": "to", - "description": "Tongan" - }, - { - "value": "tr", - "description": "Turkish" - }, - { - "value": "uk", - "description": "Ukrainian" - }, - { - "value": "ur", - "description": "Urdu" - }, - { - "value": "vi", - "description": "Vietnamese" - }, - { - "value": "cy", - "description": "Welsh" - }, - { - "value": "yua", - "description": "Yucatec Maya" - } - ] + "modelAsString": false }, "description": "The language codes supported for input text by TextTranslationSkill." }, @@ -6209,17 +5323,7 @@ ], "x-ms-enum": { "name": "ImageAnalysisSkillLanguage", - "modelAsString": true, - "values": [ - { - "value": "en", - "description": "English" - }, - { - "value": "zh", - "description": "Chinese" - } - ] + "modelAsString": false }, "description": "The language codes supported for input by ImageAnalysisSkill." }, @@ -6263,7 +5367,7 @@ ], "description": "Represents a synonym map definition." }, - "ListSynonymMapsResult": { + "SynonymMapListResult": { "properties": { "value": { "x-ms-client-name": "SynonymMaps", @@ -6389,7 +5493,7 @@ "description": "The tracking ID sent with the request to help with debugging.", "x-ms-client-request-id": true, "x-ms-parameter-grouping": { - "name": "request-options" + "name": "search-request-options" }, "x-ms-parameter-location": "method" }, diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/searchservice.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/searchservice.json deleted file mode 100644 index 62105b161af6..000000000000 --- a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/preview/2019-05-06-preview/searchservice.json +++ /dev/null @@ -1,6502 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "SearchServiceClient", - "description": "Client that can be used to manage and query indexes and documents, as well as manage other resources, on a search service.", - "version": "2019-05-06-Preview", - "x-ms-code-generation-settings": { - "useDateTimeOffset": true - } - }, - "x-ms-parameterized-host": { - "hostTemplate": "https://{searchServiceName}.{searchDnsSuffix}", - "useSchemePrefix": false, - "parameters": [ - { - "$ref": "#/parameters/SearchServiceNameParameter" - }, - { - "$ref": "#/parameters/SearchDnsSuffixParameter" - } - ] - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": { - "/datasources('{dataSourceName}')": { - "put": { - "tags": [ - "DataSources" - ], - "operationId": "DataSources_CreateOrUpdate", - "x-ms-examples": { - "SearchServiceCreateOrUpdateDataSource": { - "$ref": "./examples/SearchServiceCreateOrUpdateDataSource.json" - } - }, - "description": "Creates a new datasource or updates a datasource if it already exists.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Update-Data-Source" - }, - "parameters": [ - { - "name": "dataSourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the datasource to create or update." - }, - { - "name": "dataSource", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/DataSource" - }, - "description": "The definition of the datasource to create or update." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/IfMatchParameter" - }, - { - "$ref": "#/parameters/IfNoneMatchParameter" - }, - { - "$ref": "#/parameters/PreferHeaderParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/DataSource" - } - }, - "201": { - "description": "", - "schema": { - "$ref": "#/definitions/DataSource" - } - } - } - }, - "delete": { - "tags": [ - "DataSources" - ], - "operationId": "DataSources_Delete", - "x-ms-examples": { - "SearchServiceDeleteDataSource": { - "$ref": "./examples/SearchServiceDeleteDataSource.json" - } - }, - "description": "Deletes a datasource.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Delete-Data-Source" - }, - "parameters": [ - { - "name": "dataSourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the datasource to delete." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/IfMatchParameter" - }, - { - "$ref": "#/parameters/IfNoneMatchParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "204": { - "description": "" - }, - "404": { - "description": "" - } - } - }, - "get": { - "tags": [ - "DataSources" - ], - "operationId": "DataSources_Get", - "x-ms-examples": { - "SearchServiceGetDataSource": { - "$ref": "./examples/SearchServiceGetDataSource.json" - } - }, - "description": "Retrieves a datasource definition.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Data-Source" - }, - "parameters": [ - { - "name": "dataSourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the datasource to retrieve." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/DataSource" - } - } - } - } - }, - "/datasources": { - "get": { - "tags": [ - "DataSources" - ], - "operationId": "DataSources_List", - "x-ms-examples": { - "SearchServiceListDataSources": { - "$ref": "./examples/SearchServiceListDataSources.json" - } - }, - "description": "Lists all datasources available for a search service.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/List-Data-Sources" - }, - "parameters": [ - { - "name": "$select", - "in": "query", - "required": false, - "type": "string", - "description": "Selects which top-level properties of the data sources to retrieve. Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/DataSourceListResult" - } - } - } - }, - "post": { - "tags": [ - "DataSources" - ], - "operationId": "DataSources_Create", - "x-ms-examples": { - "SearchServiceCreateDataSource": { - "$ref": "./examples/SearchServiceCreateDataSource.json" - } - }, - "description": "Creates a new datasource.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Data-Source" - }, - "parameters": [ - { - "name": "dataSource", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/DataSource" - }, - "description": "The definition of the datasource to create." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "201": { - "description": "", - "schema": { - "$ref": "#/definitions/DataSource" - } - } - } - } - }, - "/indexers('{indexerName}')/search.reset": { - "post": { - "tags": [ - "Indexers" - ], - "operationId": "Indexers_Reset", - "x-ms-examples": { - "SearchServiceResetIndexer": { - "$ref": "./examples/SearchServiceResetIndexer.json" - } - }, - "description": "Resets the change tracking state associated with an indexer.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Reset-Indexer" - }, - "parameters": [ - { - "name": "indexerName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the indexer to reset." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "204": { - "description": "" - } - } - } - }, - "/indexers('{indexerName}')/search.run": { - "post": { - "tags": [ - "Indexers" - ], - "operationId": "Indexers_Run", - "x-ms-examples": { - "SearchServiceRunIndexer": { - "$ref": "./examples/SearchServiceRunIndexer.json" - } - }, - "description": "Runs an indexer on-demand.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Run-Indexer" - }, - "parameters": [ - { - "name": "indexerName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the indexer to run." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "202": { - "description": "" - } - } - } - }, - "/indexers('{indexerName}')": { - "put": { - "tags": [ - "Indexers" - ], - "operationId": "Indexers_CreateOrUpdate", - "x-ms-examples": { - "SearchServiceCreateOrUpdateIndexer": { - "$ref": "./examples/SearchServiceCreateOrUpdateIndexer.json" - } - }, - "description": "Creates a new indexer or updates an indexer if it already exists.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Indexer" - }, - "parameters": [ - { - "name": "indexerName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the indexer to create or update." - }, - { - "name": "indexer", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Indexer" - }, - "description": "The definition of the indexer to create or update." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/IfMatchParameter" - }, - { - "$ref": "#/parameters/IfNoneMatchParameter" - }, - { - "$ref": "#/parameters/PreferHeaderParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "201": { - "description": "", - "schema": { - "$ref": "#/definitions/Indexer" - } - }, - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/Indexer" - } - } - } - }, - "delete": { - "tags": [ - "Indexers" - ], - "operationId": "Indexers_Delete", - "x-ms-examples": { - "SearchServiceDeleteIndexer": { - "$ref": "./examples/SearchServiceDeleteIndexer.json" - } - }, - "description": "Deletes an indexer.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Delete-Indexer" - }, - "parameters": [ - { - "name": "indexerName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the indexer to delete." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/IfMatchParameter" - }, - { - "$ref": "#/parameters/IfNoneMatchParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "404": { - "description": "" - }, - "204": { - "description": "" - } - } - }, - "get": { - "tags": [ - "Indexers" - ], - "operationId": "Indexers_Get", - "x-ms-examples": { - "SearchServiceGetIndexer": { - "$ref": "./examples/SearchServiceGetIndexer.json" - } - }, - "description": "Retrieves an indexer definition.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Indexer" - }, - "parameters": [ - { - "name": "indexerName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the indexer to retrieve." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/Indexer" - } - } - } - } - }, - "/indexers": { - "get": { - "tags": [ - "Indexers" - ], - "operationId": "Indexers_List", - "x-ms-examples": { - "SearchServiceListIndexers": { - "$ref": "./examples/SearchServiceListIndexers.json" - } - }, - "description": "Lists all indexers available for a search service.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/List-Indexers" - }, - "parameters": [ - { - "name": "$select", - "in": "query", - "required": false, - "type": "string", - "description": "Selects which top-level properties of the indexers to retrieve. Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/IndexerListResult" - } - } - } - }, - "post": { - "tags": [ - "Indexers" - ], - "operationId": "Indexers_Create", - "x-ms-examples": { - "SearchServiceCreateIndexer": { - "$ref": "./examples/SearchServiceCreateIndexer.json" - } - }, - "description": "Creates a new indexer.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Indexer" - }, - "parameters": [ - { - "name": "indexer", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Indexer" - }, - "description": "The definition of the indexer to create." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "201": { - "description": "", - "schema": { - "$ref": "#/definitions/Indexer" - } - } - } - } - }, - "/indexers('{indexerName}')/search.status": { - "get": { - "tags": [ - "Indexers" - ], - "operationId": "Indexers_GetStatus", - "x-ms-examples": { - "SearchServiceGetIndexerStatus": { - "$ref": "./examples/SearchServiceGetIndexerStatus.json" - } - }, - "description": "Returns the current status and execution history of an indexer.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Indexer-Status" - }, - "parameters": [ - { - "name": "indexerName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the indexer for which to retrieve status." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/IndexerExecutionInfo" - } - } - } - } - }, - "/skillsets('{skillsetName}')": { - "put": { - "tags": [ - "Skillsets" - ], - "operationId": "Skillsets_CreateOrUpdate", - "x-ms-examples": { - "SearchServiceCreateOrUpdateSkillset": { - "$ref": "./examples/SearchServiceCreateOrUpdateSkillset.json" - } - }, - "description": "Creates a new skillset in a search service or updates the skillset if it already exists.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/update-skillset" - }, - "parameters": [ - { - "name": "skillsetName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the skillset to create or update." - }, - { - "name": "skillset", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Skillset" - }, - "description": "The skillset containing one or more skills to create or update in a search service." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/IfMatchParameter" - }, - { - "$ref": "#/parameters/IfNoneMatchParameter" - }, - { - "$ref": "#/parameters/PreferHeaderParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "The skillset is successfully updated.", - "schema": { - "$ref": "#/definitions/Skillset" - } - }, - "201": { - "description": "The skillset is successfully created.", - "schema": { - "$ref": "#/definitions/Skillset" - } - } - } - }, - "delete": { - "tags": [ - "Skillsets" - ], - "operationId": "Skillsets_Delete", - "x-ms-examples": { - "SearchServiceDeleteSkillset": { - "$ref": "./examples/SearchServiceDeleteSkillset.json" - } - }, - "description": "Deletes a skillset in a search service.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/delete-skillset" - }, - "parameters": [ - { - "name": "skillsetName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the skillset to delete." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/IfMatchParameter" - }, - { - "$ref": "#/parameters/IfNoneMatchParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "204": { - "description": "The skillset is successfully deleted." - }, - "404": { - "description": "The provided skillset name is not found." - } - } - }, - "get": { - "tags": [ - "Skillsets" - ], - "operationId": "Skillsets_Get", - "x-ms-examples": { - "SearchServiceGetSkillset": { - "$ref": "./examples/SearchServiceGetSkillset.json" - } - }, - "description": "Retrieves a skillset in a search service.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/get-skillset" - }, - "parameters": [ - { - "name": "skillsetName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the skillset to retrieve." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "The skillset is successfully returned.", - "schema": { - "$ref": "#/definitions/Skillset" - } - } - } - } - }, - "/skillsets": { - "get": { - "tags": [ - "Skillsets" - ], - "operationId": "Skillsets_List", - "x-ms-examples": { - "SearchServiceListSkillsets": { - "$ref": "./examples/SearchServiceListSkillsets.json" - } - }, - "description": "List all skillsets in a search service.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/list-skillset" - }, - "parameters": [ - { - "name": "$select", - "in": "query", - "required": false, - "type": "string", - "description": "Selects which top-level properties of the skillsets to retrieve. Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "The list is successfully returned.", - "schema": { - "$ref": "#/definitions/SkillsetListResult" - } - } - } - }, - "post": { - "tags": [ - "Skillsets" - ], - "operationId": "Skillsets_Create", - "x-ms-examples": { - "SearchServiceCreateSkillset": { - "$ref": "./examples/SearchServiceCreateSkillset.json" - } - }, - "description": "Creates a new skillset in a search service.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/create-skillset" - }, - "parameters": [ - { - "name": "skillset", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Skillset" - }, - "description": "The skillset containing one or more skills to create in a search service." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "201": { - "description": "The skillset is successfully created.", - "schema": { - "$ref": "#/definitions/Skillset" - } - } - } - } - }, - "/synonymmaps('{synonymMapName}')": { - "put": { - "tags": [ - "SynonymMaps" - ], - "operationId": "SynonymMaps_CreateOrUpdate", - "x-ms-examples": { - "SearchServiceCreateOrUpdateSynonymMap": { - "$ref": "./examples/SearchServiceCreateOrUpdateSynonymMap.json" - } - }, - "description": "Creates a new synonym map or updates a synonym map if it already exists.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Update-Synonym-Map" - }, - "parameters": [ - { - "name": "synonymMapName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the synonym map to create or update." - }, - { - "name": "synonymMap", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/SynonymMap" - }, - "description": "The definition of the synonym map to create or update." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/IfMatchParameter" - }, - { - "$ref": "#/parameters/IfNoneMatchParameter" - }, - { - "$ref": "#/parameters/PreferHeaderParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/SynonymMap" - } - }, - "201": { - "description": "", - "schema": { - "$ref": "#/definitions/SynonymMap" - } - } - } - }, - "delete": { - "tags": [ - "SynonymMaps" - ], - "operationId": "SynonymMaps_Delete", - "x-ms-examples": { - "SearchServiceDeleteSynonymMap": { - "$ref": "./examples/SearchServiceDeleteSynonymMap.json" - } - }, - "description": "Deletes a synonym map.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Delete-Synonym-Map" - }, - "parameters": [ - { - "name": "synonymMapName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the synonym map to delete." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/IfMatchParameter" - }, - { - "$ref": "#/parameters/IfNoneMatchParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "204": { - "description": "" - }, - "404": { - "description": "" - } - } - }, - "get": { - "tags": [ - "SynonymMaps" - ], - "operationId": "SynonymMaps_Get", - "x-ms-examples": { - "SearchServiceGetSynonymMap": { - "$ref": "./examples/SearchServiceGetSynonymMap.json" - } - }, - "description": "Retrieves a synonym map definition.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Synonym-Map" - }, - "parameters": [ - { - "name": "synonymMapName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the synonym map to retrieve." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/SynonymMap" - } - } - } - } - }, - "/synonymmaps": { - "get": { - "tags": [ - "SynonymMaps" - ], - "operationId": "SynonymMaps_List", - "x-ms-examples": { - "SearchServiceListSynonymMaps": { - "$ref": "./examples/SearchServiceListSynonymMaps.json" - } - }, - "description": "Lists all synonym maps available for a search service.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/List-Synonym-Maps" - }, - "parameters": [ - { - "name": "$select", - "in": "query", - "required": false, - "type": "string", - "description": "Selects which top-level properties of the synonym maps to retrieve. Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/SynonymMapListResult" - } - } - } - }, - "post": { - "tags": [ - "SynonymMaps" - ], - "operationId": "SynonymMaps_Create", - "x-ms-examples": { - "SearchServiceCreateSynonymMap": { - "$ref": "./examples/SearchServiceCreateSynonymMap.json" - } - }, - "description": "Creates a new synonym map.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Synonym-Map" - }, - "parameters": [ - { - "name": "synonymMap", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/SynonymMap" - }, - "description": "The definition of the synonym map to create." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "201": { - "description": "", - "schema": { - "$ref": "#/definitions/SynonymMap" - } - } - } - } - }, - "/indexes": { - "post": { - "tags": [ - "Indexes" - ], - "operationId": "Indexes_Create", - "x-ms-examples": { - "SearchServiceCreateIndex": { - "$ref": "./examples/SearchServiceCreateIndex.json" - } - }, - "description": "Creates a new search index.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Index" - }, - "parameters": [ - { - "name": "index", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Index" - }, - "description": "The definition of the index to create." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "201": { - "description": "", - "schema": { - "$ref": "#/definitions/Index" - } - } - } - }, - "get": { - "tags": [ - "Indexes" - ], - "operationId": "Indexes_List", - "x-ms-examples": { - "SearchServiceListIndexes": { - "$ref": "./examples/SearchServiceListIndexes.json" - } - }, - "description": "Lists all indexes available for a search service.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/List-Indexes" - }, - "parameters": [ - { - "name": "$select", - "in": "query", - "required": false, - "type": "string", - "description": "Selects which top-level properties of the index definitions to retrieve. Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/IndexListResult" - } - } - } - } - }, - "/indexes('{indexName}')": { - "put": { - "tags": [ - "Indexes" - ], - "operationId": "Indexes_CreateOrUpdate", - "x-ms-examples": { - "SearchServiceCreateOrUpdateIndex": { - "$ref": "./examples/SearchServiceCreateOrUpdateIndex.json" - } - }, - "description": "Creates a new search index or updates an index if it already exists.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Update-Index" - }, - "parameters": [ - { - "name": "indexName", - "in": "path", - "required": true, - "type": "string", - "description": "The definition of the index to create or update." - }, - { - "name": "index", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Index" - }, - "description": "The definition of the index to create or update." - }, - { - "name": "allowIndexDowntime", - "in": "query", - "required": false, - "type": "boolean", - "description": "Allows new analyzers, tokenizers, token filters, or char filters to be added to an index by taking the index offline for at least a few seconds. This temporarily causes indexing and query requests to fail. Performance and write availability of the index can be impaired for several minutes after the index is updated, or longer for very large indexes." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/IfMatchParameter" - }, - { - "$ref": "#/parameters/IfNoneMatchParameter" - }, - { - "$ref": "#/parameters/PreferHeaderParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/Index" - } - }, - "201": { - "description": "", - "schema": { - "$ref": "#/definitions/Index" - } - } - } - }, - "delete": { - "tags": [ - "Indexes" - ], - "operationId": "Indexes_Delete", - "x-ms-examples": { - "SearchServiceDeleteIndex": { - "$ref": "./examples/SearchServiceDeleteIndex.json" - } - }, - "description": "Deletes a search index and all the documents it contains.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Delete-Index" - }, - "parameters": [ - { - "name": "indexName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the index to delete." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/IfMatchParameter" - }, - { - "$ref": "#/parameters/IfNoneMatchParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "204": { - "description": "" - }, - "404": { - "description": "" - } - } - }, - "get": { - "tags": [ - "Indexes" - ], - "operationId": "Indexes_Get", - "x-ms-examples": { - "SearchServiceGetIndex": { - "$ref": "./examples/SearchServiceGetIndex.json" - } - }, - "description": "Retrieves an index definition.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Index" - }, - "parameters": [ - { - "name": "indexName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the index to retrieve." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/Index" - } - } - } - } - }, - "/indexes('{indexName}')/search.stats": { - "get": { - "tags": [ - "Indexes" - ], - "operationId": "Indexes_GetStatistics", - "x-ms-examples": { - "SearchServiceGetIndexStatistics": { - "$ref": "./examples/SearchServiceGetIndexStatistics.json" - } - }, - "description": "Returns statistics for the given index, including a document count and storage usage.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Index-Statistics" - }, - "parameters": [ - { - "name": "indexName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the index for which to retrieve statistics." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/IndexGetStatisticsResult" - } - } - } - } - }, - "/indexes('{indexName}')/search.analyze": { - "post": { - "tags": [ - "Indexes" - ], - "operationId": "Indexes_Analyze", - "x-ms-examples": { - "SearchServiceIndexAnalyze": { - "$ref": "./examples/SearchServiceIndexAnalyze.json" - } - }, - "description": "Shows how an analyzer breaks text into tokens.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/test-analyzer" - }, - "parameters": [ - { - "name": "indexName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the index for which to test an analyzer." - }, - { - "name": "request", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/AnalyzeRequest" - }, - "description": "The text and analyzer or analysis components to test." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/AnalyzeResult" - } - } - } - } - }, - "/servicestats": { - "get": { - "tags": [ - "Service" - ], - "operationId": "GetServiceStatistics", - "x-ms-examples": { - "SearchServiceGetServiceStatistics": { - "$ref": "./examples/SearchServiceGetServiceStatistics.json" - } - }, - "description": "Gets service level statistics for a search service.", - "parameters": [ - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/ServiceStatistics" - } - } - } - } - } - }, - "definitions": { - "AnalyzeRequest": { - "properties": { - "text": { - "type": "string", - "description": "The text to break into tokens." - }, - "analyzer": { - "$ref": "#/definitions/AnalyzerName", - "description": "The name of the analyzer to use to break the given text. If this parameter is not specified, you must specify a tokenizer instead. The tokenizer and analyzer parameters are mutually exclusive." - }, - "tokenizer": { - "$ref": "#/definitions/TokenizerName", - "description": "The name of the tokenizer to use to break the given text. If this parameter is not specified, you must specify an analyzer instead. The tokenizer and analyzer parameters are mutually exclusive." - }, - "tokenFilters": { - "type": "array", - "items": { - "$ref": "#/definitions/TokenFilterName", - "x-nullable": false - }, - "description": "An optional list of token filters to use when breaking the given text. This parameter can only be set when using the tokenizer parameter." - }, - "charFilters": { - "type": "array", - "items": { - "$ref": "#/definitions/CharFilterName", - "x-nullable": false - }, - "description": "An optional list of character filters to use when breaking the given text. This parameter can only be set when using the tokenizer parameter." - } - }, - "required": [ - "text" - ], - "description": "Specifies some text and analysis components used to break that text into tokens." - }, - "AnalyzeResult": { - "properties": { - "tokens": { - "type": "array", - "items": { - "$ref": "#/definitions/TokenInfo" - }, - "description": "The list of tokens returned by the analyzer specified in the request." - } - }, - "description": "The result of testing an analyzer on text." - }, - "TokenInfo": { - "properties": { - "token": { - "type": "string", - "readOnly": true, - "description": "The token returned by the analyzer." - }, - "startOffset": { - "type": "integer", - "format": "int32", - "readOnly": true, - "description": "The index of the first character of the token in the input text." - }, - "endOffset": { - "type": "integer", - "format": "int32", - "readOnly": true, - "description": "The index of the last character of the token in the input text." - }, - "position": { - "type": "integer", - "format": "int32", - "readOnly": true, - "description": "The position of the token in the input text relative to other tokens. The first token in the input text has position 0, the next has position 1, and so on. Depending on the analyzer used, some tokens might have the same position, for example if they are synonyms of each other." - } - }, - "description": "Information about a token returned by an analyzer." - }, - "AnalyzerName": { - "type": "string", - "enum": [ - "ar.microsoft", - "ar.lucene", - "hy.lucene", - "bn.microsoft", - "eu.lucene", - "bg.microsoft", - "bg.lucene", - "ca.microsoft", - "ca.lucene", - "zh-Hans.microsoft", - "zh-Hans.lucene", - "zh-Hant.microsoft", - "zh-Hant.lucene", - "hr.microsoft", - "cs.microsoft", - "cs.lucene", - "da.microsoft", - "da.lucene", - "nl.microsoft", - "nl.lucene", - "en.microsoft", - "en.lucene", - "et.microsoft", - "fi.microsoft", - "fi.lucene", - "fr.microsoft", - "fr.lucene", - "gl.lucene", - "de.microsoft", - "de.lucene", - "el.microsoft", - "el.lucene", - "gu.microsoft", - "he.microsoft", - "hi.microsoft", - "hi.lucene", - "hu.microsoft", - "hu.lucene", - "is.microsoft", - "id.microsoft", - "id.lucene", - "ga.lucene", - "it.microsoft", - "it.lucene", - "ja.microsoft", - "ja.lucene", - "kn.microsoft", - "ko.microsoft", - "ko.lucene", - "lv.microsoft", - "lv.lucene", - "lt.microsoft", - "ml.microsoft", - "ms.microsoft", - "mr.microsoft", - "nb.microsoft", - "no.lucene", - "fa.lucene", - "pl.microsoft", - "pl.lucene", - "pt-BR.microsoft", - "pt-BR.lucene", - "pt-PT.microsoft", - "pt-PT.lucene", - "pa.microsoft", - "ro.microsoft", - "ro.lucene", - "ru.microsoft", - "ru.lucene", - "sr-cyrillic.microsoft", - "sr-latin.microsoft", - "sk.microsoft", - "sl.microsoft", - "es.microsoft", - "es.lucene", - "sv.microsoft", - "sv.lucene", - "ta.microsoft", - "te.microsoft", - "th.microsoft", - "th.lucene", - "tr.microsoft", - "tr.lucene", - "uk.microsoft", - "ur.microsoft", - "vi.microsoft", - "standard.lucene", - "standardasciifolding.lucene", - "keyword", - "pattern", - "simple", - "stop", - "whitespace" - ], - "x-ms-enum": { - "name": "AnalyzerName", - "modelAsString": true - }, - "description": "Defines the names of all text analyzers supported by Azure Cognitive Search.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Language-support" - } - }, - "TokenizerName": { - "type": "string", - "enum": [ - "classic", - "edgeNGram", - "keyword_v2", - "letter", - "lowercase", - "microsoft_language_tokenizer", - "microsoft_language_stemming_tokenizer", - "nGram", - "path_hierarchy_v2", - "pattern", - "standard_v2", - "uax_url_email", - "whitespace" - ], - "x-ms-enum": { - "name": "TokenizerName", - "modelAsString": true, - "values": [ - { - "value": "classic", - "name": "Classic", - "description": "Grammar-based tokenizer that is suitable for processing most European-language documents. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicTokenizer.html" - }, - { - "value": "edgeNGram", - "name": "EdgeNGram", - "description": "Tokenizes the input from an edge into n-grams of the given size(s). See https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenizer.html" - }, - { - "value": "keyword_v2", - "name": "Keyword", - "description": "Emits the entire input as a single token. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordTokenizer.html" - }, - { - "value": "letter", - "name": "Letter", - "description": "Divides text at non-letters. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LetterTokenizer.html" - }, - { - "value": "lowercase", - "name": "Lowercase", - "description": "Divides text at non-letters and converts them to lower case. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LowerCaseTokenizer.html" - }, - { - "value": "microsoft_language_tokenizer", - "name": "MicrosoftLanguageTokenizer", - "description": "Divides text using language-specific rules." - }, - { - "value": "microsoft_language_stemming_tokenizer", - "name": "MicrosoftLanguageStemmingTokenizer", - "description": "Divides text using language-specific rules and reduces words to their base forms." - }, - { - "value": "nGram", - "name": "NGram", - "description": "Tokenizes the input into n-grams of the given size(s). See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenizer.html" - }, - { - "value": "path_hierarchy_v2", - "name": "PathHierarchy", - "description": "Tokenizer for path-like hierarchies. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/path/PathHierarchyTokenizer.html" - }, - { - "value": "pattern", - "name": "Pattern", - "description": "Tokenizer that uses regex pattern matching to construct distinct tokens. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternTokenizer.html" - }, - { - "value": "standard_v2", - "name": "Standard", - "description": "Standard Lucene analyzer; Composed of the standard tokenizer, lowercase filter and stop filter. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/StandardTokenizer.html" - }, - { - "value": "uax_url_email", - "name": "UaxUrlEmail", - "description": "Tokenizes urls and emails as one token. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/UAX29URLEmailTokenizer.html" - }, - { - "value": "whitespace", - "name": "Whitespace", - "description": "Divides text at whitespace. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/WhitespaceTokenizer.html" - } - ] - }, - "description": "Defines the names of all tokenizers supported by Azure Cognitive Search.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" - } - }, - "TokenFilterName": { - "type": "string", - "enum": [ - "arabic_normalization", - "apostrophe", - "asciifolding", - "cjk_bigram", - "cjk_width", - "classic", - "common_grams", - "edgeNGram_v2", - "elision", - "german_normalization", - "hindi_normalization", - "indic_normalization", - "keyword_repeat", - "kstem", - "length", - "limit", - "lowercase", - "nGram_v2", - "persian_normalization", - "phonetic", - "porter_stem", - "reverse", - "scandinavian_normalization", - "scandinavian_folding", - "shingle", - "snowball", - "sorani_normalization", - "stemmer", - "stopwords", - "trim", - "truncate", - "unique", - "uppercase", - "word_delimiter" - ], - "x-ms-enum": { - "name": "TokenFilterName", - "modelAsString": true, - "values": [ - { - "value": "arabic_normalization", - "name": "ArabicNormalization", - "description": "A token filter that applies the Arabic normalizer to normalize the orthography. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ar/ArabicNormalizationFilter.html" - }, - { - "value": "apostrophe", - "name": "Apostrophe", - "description": "Strips all characters after an apostrophe (including the apostrophe itself). See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/tr/ApostropheFilter.html" - }, - { - "value": "asciifolding", - "name": "AsciiFolding", - "description": "Converts alphabetic, numeric, and symbolic Unicode characters which are not in the first 127 ASCII characters (the \"Basic Latin\" Unicode block) into their ASCII equivalents, if such equivalents exist. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ASCIIFoldingFilter.html" - }, - { - "value": "cjk_bigram", - "name": "CjkBigram", - "description": "Forms bigrams of CJK terms that are generated from StandardTokenizer. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKBigramFilter.html" - }, - { - "value": "cjk_width", - "name": "CjkWidth", - "description": "Normalizes CJK width differences. Folds fullwidth ASCII variants into the equivalent basic Latin, and half-width Katakana variants into the equivalent Kana. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKWidthFilter.html" - }, - { - "value": "classic", - "name": "Classic", - "description": "Removes English possessives, and dots from acronyms. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicFilter.html" - }, - { - "value": "common_grams", - "name": "CommonGram", - "description": "Construct bigrams for frequently occurring terms while indexing. Single terms are still indexed too, with bigrams overlaid. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/commongrams/CommonGramsFilter.html" - }, - { - "value": "edgeNGram_v2", - "name": "EdgeNGram", - "description": "Generates n-grams of the given size(s) starting from the front or the back of an input token. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenFilter.html" - }, - { - "value": "elision", - "name": "Elision", - "description": "Removes elisions. For example, \"l'avion\" (the plane) will be converted to \"avion\" (plane). See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/util/ElisionFilter.html" - }, - { - "value": "german_normalization", - "name": "GermanNormalization", - "description": "Normalizes German characters according to the heuristics of the German2 snowball algorithm. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/de/GermanNormalizationFilter.html" - }, - { - "value": "hindi_normalization", - "name": "HindiNormalization", - "description": "Normalizes text in Hindi to remove some differences in spelling variations. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/hi/HindiNormalizationFilter.html" - }, - { - "value": "indic_normalization", - "name": "IndicNormalization", - "description": "Normalizes the Unicode representation of text in Indian languages. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/in/IndicNormalizationFilter.html" - }, - { - "value": "keyword_repeat", - "name": "KeywordRepeat", - "description": "Emits each incoming token twice, once as keyword and once as non-keyword. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/KeywordRepeatFilter.html" - }, - { - "value": "kstem", - "name": "KStem", - "description": "A high-performance kstem filter for English. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/en/KStemFilter.html" - }, - { - "value": "length", - "name": "Length", - "description": "Removes words that are too long or too short. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LengthFilter.html" - }, - { - "value": "limit", - "name": "Limit", - "description": "Limits the number of tokens while indexing. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LimitTokenCountFilter.html" - }, - { - "value": "lowercase", - "name": "Lowercase", - "description": "Normalizes token text to lower case. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/LowerCaseFilter.htm" - }, - { - "value": "nGram_v2", - "name": "NGram", - "description": "Generates n-grams of the given size(s). See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenFilter.html" - }, - { - "value": "persian_normalization", - "name": "PersianNormalization", - "description": "Applies normalization for Persian. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/fa/PersianNormalizationFilter.html" - }, - { - "value": "phonetic", - "name": "Phonetic", - "description": "Create tokens for phonetic matches. See https://lucene.apache.org/core/4_10_3/analyzers-phonetic/org/apache/lucene/analysis/phonetic/package-tree.html" - }, - { - "value": "porter_stem", - "name": "PorterStem", - "description": "Uses the Porter stemming algorithm to transform the token stream. See http://tartarus.org/~martin/PorterStemmer" - }, - { - "value": "reverse", - "name": "Reverse", - "description": "Reverses the token string. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/reverse/ReverseStringFilter.html" - }, - { - "value": "scandinavian_normalization", - "name": "ScandinavianNormalization", - "description": "Normalizes use of the interchangeable Scandinavian characters. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianNormalizationFilter.html" - }, - { - "value": "scandinavian_folding", - "name": "ScandinavianFoldingNormalization", - "description": "Folds Scandinavian characters åÅäæÄÆ->a and öÖøØ->o. It also discriminates against use of double vowels aa, ae, ao, oe and oo, leaving just the first one. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ScandinavianFoldingFilter.html" - }, - { - "value": "shingle", - "name": "Shingle", - "description": "Creates combinations of tokens as a single token. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/shingle/ShingleFilter.html" - }, - { - "value": "snowball", - "name": "Snowball", - "description": "A filter that stems words using a Snowball-generated stemmer. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/snowball/SnowballFilter.html" - }, - { - "value": "sorani_normalization", - "name": "SoraniNormalization", - "description": "Normalizes the Unicode representation of Sorani text. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ckb/SoraniNormalizationFilter.html" - }, - { - "value": "stemmer", - "name": "Stemmer", - "description": "Language specific stemming filter. See https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#TokenFilters" - }, - { - "value": "stopwords", - "name": "Stopwords", - "description": "Removes stop words from a token stream. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopFilter.html" - }, - { - "value": "trim", - "name": "Trim", - "description": "Trims leading and trailing whitespace from tokens. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TrimFilter.html" - }, - { - "value": "truncate", - "name": "Truncate", - "description": "Truncates the terms to a specific length. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TruncateTokenFilter.html" - }, - { - "value": "unique", - "name": "Unique", - "description": "Filters out tokens with same text as the previous token. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/RemoveDuplicatesTokenFilter.html" - }, - { - "value": "uppercase", - "name": "Uppercase", - "description": "Normalizes token text to upper case. See http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/UpperCaseFilter.html" - }, - { - "value": "word_delimiter", - "name": "WordDelimiter", - "description": "Splits words into subwords and performs optional transformations on subword groups." - } - ] - }, - "description": "Defines the names of all token filters supported by Azure Cognitive Search.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" - } - }, - "CharFilterName": { - "type": "string", - "enum": [ - "html_strip" - ], - "x-ms-enum": { - "name": "CharFilterName", - "modelAsString": true, - "values": [ - { - "value": "html_strip", - "name": "HtmlStrip", - "description": "A character filter that attempts to strip out HTML constructs. See https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/charfilter/HTMLStripCharFilter.html" - } - ] - }, - "description": "Defines the names of all character filters supported by Azure Cognitive Search.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" - } - }, - "RegexFlags": { - "type": "string", - "enum": [ - "CANON_EQ", - "CASE_INSENSITIVE", - "COMMENTS", - "DOTALL", - "LITERAL", - "MULTILINE", - "UNICODE_CASE", - "UNIX_LINES" - ], - "x-ms-enum": { - "name": "RegexFlags", - "modelAsString": true - }, - "description": "Defines flags that can be combined to control how regular expressions are used in the pattern analyzer and pattern tokenizer.", - "externalDocs": { - "url": "http://docs.oracle.com/javase/6/docs/api/java/util/regex/Pattern.html#field_summary" - } - }, - "DataType": { - "type": "string", - "enum": [ - "Edm.String", - "Edm.Int32", - "Edm.Int64", - "Edm.Double", - "Edm.Boolean", - "Edm.DateTimeOffset", - "Edm.GeographyPoint", - "Edm.ComplexType" - ], - "x-ms-enum": { - "name": "DataType", - "modelAsString": true - }, - "description": "Defines the data type of a field in a search index." - }, - "Analyzer": { - "discriminator": "@odata.type", - "properties": { - "@odata.type": { - "type": "string" - }, - "name": { - "type": "string", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/custom-analyzers-in-azure-search#index-attribute-reference" - }, - "description": "The name of the analyzer. It must only contain letters, digits, spaces, dashes or underscores, can only start and end with alphanumeric characters, and is limited to 128 characters." - } - }, - "required": [ - "@odata.type", - "name" - ], - "description": "Abstract base class for analyzers." - }, - "CustomAnalyzer": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.CustomAnalyzer", - "allOf": [ - { - "$ref": "#/definitions/Analyzer" - } - ], - "properties": { - "tokenizer": { - "$ref": "#/definitions/TokenizerName", - "description": "The name of the tokenizer to use to divide continuous text into a sequence of tokens, such as breaking a sentence into words." - }, - "tokenFilters": { - "type": "array", - "items": { - "$ref": "#/definitions/TokenFilterName", - "x-nullable": false - }, - "description": "A list of token filters used to filter out or modify the tokens generated by a tokenizer. For example, you can specify a lowercase filter that converts all characters to lowercase. The filters are run in the order in which they are listed." - }, - "charFilters": { - "type": "array", - "items": { - "$ref": "#/definitions/CharFilterName", - "x-nullable": false - }, - "description": "A list of character filters used to prepare input text before it is processed by the tokenizer. For instance, they can replace certain characters or symbols. The filters are run in the order in which they are listed." - } - }, - "required": [ - "tokenizer" - ], - "description": "Allows you to take control over the process of converting text into indexable/searchable tokens. It's a user-defined configuration consisting of a single predefined tokenizer and one or more filters. The tokenizer is responsible for breaking text into tokens, and the filters for modifying tokens emitted by the tokenizer." - }, - "PatternAnalyzer": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternAnalyzer", - "allOf": [ - { - "$ref": "#/definitions/Analyzer" - } - ], - "properties": { - "lowercase": { - "x-ms-client-name": "LowerCaseTerms", - "type": "boolean", - "default": true, - "description": "A value indicating whether terms should be lower-cased. Default is true." - }, - "pattern": { - "type": "string", - "default": "\\W+", - "description": "A regular expression pattern to match token separators. Default is an expression that matches one or more whitespace characters." - }, - "flags": { - "$ref": "#/definitions/RegexFlags", - "description": "Regular expression flags." - }, - "stopwords": { - "type": "array", - "items": { - "type": "string" - }, - "description": "A list of stopwords." - } - }, - "description": "Flexibly separates text into terms via a regular expression pattern. This analyzer is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/PatternAnalyzer.html" - } - }, - "StandardAnalyzer": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardAnalyzer", - "allOf": [ - { - "$ref": "#/definitions/Analyzer" - } - ], - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "default": 255, - "maximum": 300, - "description": "The maximum token length. Default is 255. Tokens longer than the maximum length are split. The maximum token length that can be used is 300 characters." - }, - "stopwords": { - "type": "array", - "items": { - "type": "string" - }, - "description": "A list of stopwords." - } - }, - "description": "Standard Apache Lucene analyzer; Composed of the standard tokenizer, lowercase filter and stop filter.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/StandardAnalyzer.html" - } - }, - "StopAnalyzer": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.StopAnalyzer", - "allOf": [ - { - "$ref": "#/definitions/Analyzer" - } - ], - "properties": { - "stopwords": { - "type": "array", - "items": { - "type": "string" - }, - "description": "A list of stopwords." - } - }, - "description": "Divides text at non-letters; Applies the lowercase and stopword token filters. This analyzer is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopAnalyzer.html" - } - }, - "Tokenizer": { - "discriminator": "@odata.type", - "properties": { - "@odata.type": { - "type": "string" - }, - "name": { - "type": "string", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/custom-analyzers-in-azure-search#index-attribute-reference" - }, - "description": "The name of the tokenizer. It must only contain letters, digits, spaces, dashes or underscores, can only start and end with alphanumeric characters, and is limited to 128 characters." - } - }, - "required": [ - "@odata.type", - "name" - ], - "description": "Abstract base class for tokenizers.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" - } - }, - "ClassicTokenizer": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.ClassicTokenizer", - "allOf": [ - { - "$ref": "#/definitions/Tokenizer" - } - ], - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "default": 255, - "maximum": 300, - "description": "The maximum token length. Default is 255. Tokens longer than the maximum length are split. The maximum token length that can be used is 300 characters." - } - }, - "description": "Grammar-based tokenizer that is suitable for processing most European-language documents. This tokenizer is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicTokenizer.html" - } - }, - "TokenCharacterKind": { - "type": "string", - "enum": [ - "letter", - "digit", - "whitespace", - "punctuation", - "symbol" - ], - "x-ms-enum": { - "name": "TokenCharacterKind", - "modelAsString": false - }, - "description": "Represents classes of characters on which a token filter can operate." - }, - "EdgeNGramTokenizer": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenizer", - "allOf": [ - { - "$ref": "#/definitions/Tokenizer" - } - ], - "properties": { - "minGram": { - "type": "integer", - "format": "int32", - "default": 1, - "maximum": 300, - "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the value of maxGram." - }, - "maxGram": { - "type": "integer", - "format": "int32", - "default": 2, - "maximum": 300, - "description": "The maximum n-gram length. Default is 2. Maximum is 300." - }, - "tokenChars": { - "type": "array", - "items": { - "$ref": "#/definitions/TokenCharacterKind", - "x-nullable": false - }, - "description": "Character classes to keep in the tokens." - } - }, - "description": "Tokenizes the input from an edge into n-grams of the given size(s). This tokenizer is implemented using Apache Lucene.", - "externalDocs": { - "url": "https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenizer.html" - } - }, - "KeywordTokenizer": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordTokenizer", - "allOf": [ - { - "$ref": "#/definitions/Tokenizer" - } - ], - "properties": { - "bufferSize": { - "type": "integer", - "format": "int32", - "default": 256, - "description": "The read buffer size in bytes. Default is 256." - } - }, - "description": "Emits the entire input as a single token. This tokenizer is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordTokenizer.html" - }, - "x-ms-external": true - }, - "KeywordTokenizerV2": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordTokenizerV2", - "allOf": [ - { - "$ref": "#/definitions/Tokenizer" - } - ], - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "default": 256, - "maximum": 300, - "description": "The maximum token length. Default is 256. Tokens longer than the maximum length are split. The maximum token length that can be used is 300 characters." - } - }, - "description": "Emits the entire input as a single token. This tokenizer is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordTokenizer.html" - } - }, - "MicrosoftTokenizerLanguage": { - "type": "string", - "enum": [ - "bangla", - "bulgarian", - "catalan", - "chineseSimplified", - "chineseTraditional", - "croatian", - "czech", - "danish", - "dutch", - "english", - "french", - "german", - "greek", - "gujarati", - "hindi", - "icelandic", - "indonesian", - "italian", - "japanese", - "kannada", - "korean", - "malay", - "malayalam", - "marathi", - "norwegianBokmaal", - "polish", - "portuguese", - "portugueseBrazilian", - "punjabi", - "romanian", - "russian", - "serbianCyrillic", - "serbianLatin", - "slovenian", - "spanish", - "swedish", - "tamil", - "telugu", - "thai", - "ukrainian", - "urdu", - "vietnamese" - ], - "x-ms-enum": { - "name": "MicrosoftTokenizerLanguage", - "modelAsString": false - }, - "description": "Lists the languages supported by the Microsoft language tokenizer." - }, - "MicrosoftLanguageTokenizer": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.MicrosoftLanguageTokenizer", - "allOf": [ - { - "$ref": "#/definitions/Tokenizer" - } - ], - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "default": 255, - "maximum": 300, - "description": "The maximum token length. Tokens longer than the maximum length are split. Maximum token length that can be used is 300 characters. Tokens longer than 300 characters are first split into tokens of length 300 and then each of those tokens is split based on the max token length set. Default is 255." - }, - "isSearchTokenizer": { - "type": "boolean", - "default": false, - "description": "A value indicating how the tokenizer is used. Set to true if used as the search tokenizer, set to false if used as the indexing tokenizer. Default is false." - }, - "language": { - "$ref": "#/definitions/MicrosoftTokenizerLanguage", - "description": "The language to use. The default is English." - } - }, - "description": "Divides text using language-specific rules." - }, - "MicrosoftStemmingTokenizerLanguage": { - "type": "string", - "enum": [ - "arabic", - "bangla", - "bulgarian", - "catalan", - "croatian", - "czech", - "danish", - "dutch", - "english", - "estonian", - "finnish", - "french", - "german", - "greek", - "gujarati", - "hebrew", - "hindi", - "hungarian", - "icelandic", - "indonesian", - "italian", - "kannada", - "latvian", - "lithuanian", - "malay", - "malayalam", - "marathi", - "norwegianBokmaal", - "polish", - "portuguese", - "portugueseBrazilian", - "punjabi", - "romanian", - "russian", - "serbianCyrillic", - "serbianLatin", - "slovak", - "slovenian", - "spanish", - "swedish", - "tamil", - "telugu", - "turkish", - "ukrainian", - "urdu" - ], - "x-ms-enum": { - "name": "MicrosoftStemmingTokenizerLanguage", - "modelAsString": false - }, - "description": "Lists the languages supported by the Microsoft language stemming tokenizer." - }, - "MicrosoftLanguageStemmingTokenizer": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer", - "allOf": [ - { - "$ref": "#/definitions/Tokenizer" - } - ], - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "default": 255, - "maximum": 300, - "description": "The maximum token length. Tokens longer than the maximum length are split. Maximum token length that can be used is 300 characters. Tokens longer than 300 characters are first split into tokens of length 300 and then each of those tokens is split based on the max token length set. Default is 255." - }, - "isSearchTokenizer": { - "type": "boolean", - "default": false, - "description": "A value indicating how the tokenizer is used. Set to true if used as the search tokenizer, set to false if used as the indexing tokenizer. Default is false." - }, - "language": { - "$ref": "#/definitions/MicrosoftStemmingTokenizerLanguage", - "description": "The language to use. The default is English." - } - }, - "description": "Divides text using language-specific rules and reduces words to their base forms." - }, - "NGramTokenizer": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenizer", - "allOf": [ - { - "$ref": "#/definitions/Tokenizer" - } - ], - "properties": { - "minGram": { - "type": "integer", - "format": "int32", - "default": 1, - "maximum": 300, - "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the value of maxGram." - }, - "maxGram": { - "type": "integer", - "format": "int32", - "default": 2, - "maximum": 300, - "description": "The maximum n-gram length. Default is 2. Maximum is 300." - }, - "tokenChars": { - "type": "array", - "items": { - "$ref": "#/definitions/TokenCharacterKind", - "x-nullable": false - }, - "description": "Character classes to keep in the tokens." - } - }, - "description": "Tokenizes the input into n-grams of the given size(s). This tokenizer is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenizer.html" - } - }, - "PathHierarchyTokenizer": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.PathHierarchyTokenizer", - "allOf": [ - { - "$ref": "#/definitions/Tokenizer" - } - ], - "properties": { - "delimiter": { - "type": "string", - "format": "char", - "default": "/", - "description": "The delimiter character to use. Default is \"/\"." - }, - "replacement": { - "type": "string", - "format": "char", - "default": "/", - "description": "A value that, if set, replaces the delimiter character. Default is \"/\"." - }, - "bufferSize": { - "type": "integer", - "format": "int32", - "default": 1024, - "description": "The buffer size. Default is 1024." - }, - "reverse": { - "x-ms-client-name": "ReverseTokenOrder", - "type": "boolean", - "default": false, - "description": "A value indicating whether to generate tokens in reverse order. Default is false." - }, - "skip": { - "x-ms-client-name": "NumberOfTokensToSkip", - "type": "integer", - "format": "int32", - "default": 0, - "description": "The number of initial tokens to skip. Default is 0." - } - }, - "description": "Tokenizer for path-like hierarchies. This tokenizer is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/path/PathHierarchyTokenizer.html" - }, - "x-ms-external": true - }, - "PathHierarchyTokenizerV2": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.PathHierarchyTokenizerV2", - "allOf": [ - { - "$ref": "#/definitions/Tokenizer" - } - ], - "properties": { - "delimiter": { - "type": "string", - "format": "char", - "default": "/", - "description": "The delimiter character to use. Default is \"/\"." - }, - "replacement": { - "type": "string", - "format": "char", - "default": "/", - "description": "A value that, if set, replaces the delimiter character. Default is \"/\"." - }, - "maxTokenLength": { - "type": "integer", - "format": "int32", - "default": 300, - "maximum": 300, - "description": "The maximum token length. Default and maximum is 300." - }, - "reverse": { - "x-ms-client-name": "ReverseTokenOrder", - "type": "boolean", - "default": false, - "description": "A value indicating whether to generate tokens in reverse order. Default is false." - }, - "skip": { - "x-ms-client-name": "NumberOfTokensToSkip", - "type": "integer", - "format": "int32", - "default": 0, - "description": "The number of initial tokens to skip. Default is 0." - } - }, - "description": "Tokenizer for path-like hierarchies. This tokenizer is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/path/PathHierarchyTokenizer.html" - } - }, - "PatternTokenizer": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternTokenizer", - "allOf": [ - { - "$ref": "#/definitions/Tokenizer" - } - ], - "properties": { - "pattern": { - "type": "string", - "default": "\\W+", - "description": "A regular expression pattern to match token separators. Default is an expression that matches one or more whitespace characters." - }, - "flags": { - "$ref": "#/definitions/RegexFlags", - "description": "Regular expression flags." - }, - "group": { - "type": "integer", - "format": "int32", - "default": -1, - "description": "The zero-based ordinal of the matching group in the regular expression pattern to extract into tokens. Use -1 if you want to use the entire pattern to split the input into tokens, irrespective of matching groups. Default is -1." - } - }, - "description": "Tokenizer that uses regex pattern matching to construct distinct tokens. This tokenizer is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternTokenizer.html" - } - }, - "StandardTokenizer": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardTokenizer", - "allOf": [ - { - "$ref": "#/definitions/Tokenizer" - } - ], - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "default": 255, - "description": "The maximum token length. Default is 255. Tokens longer than the maximum length are split." - } - }, - "description": "Breaks text following the Unicode Text Segmentation rules. This tokenizer is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/StandardTokenizer.html" - }, - "x-ms-external": true - }, - "StandardTokenizerV2": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardTokenizerV2", - "allOf": [ - { - "$ref": "#/definitions/Tokenizer" - } - ], - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "default": 255, - "maximum": 300, - "description": "The maximum token length. Default is 255. Tokens longer than the maximum length are split. The maximum token length that can be used is 300 characters." - } - }, - "description": "Breaks text following the Unicode Text Segmentation rules. This tokenizer is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/StandardTokenizer.html" - } - }, - "UaxUrlEmailTokenizer": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.UaxUrlEmailTokenizer", - "allOf": [ - { - "$ref": "#/definitions/Tokenizer" - } - ], - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "default": 255, - "maximum": 300, - "description": "The maximum token length. Default is 255. Tokens longer than the maximum length are split. The maximum token length that can be used is 300 characters." - } - }, - "description": "Tokenizes urls and emails as one token. This tokenizer is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/UAX29URLEmailTokenizer.html" - } - }, - "TokenFilter": { - "discriminator": "@odata.type", - "properties": { - "@odata.type": { - "type": "string" - }, - "name": { - "type": "string", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/custom-analyzers-in-azure-search#index-attribute-reference" - }, - "description": "The name of the token filter. It must only contain letters, digits, spaces, dashes or underscores, can only start and end with alphanumeric characters, and is limited to 128 characters." - } - }, - "required": [ - "@odata.type", - "name" - ], - "description": "Abstract base class for token filters.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" - } - }, - "AsciiFoldingTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.AsciiFoldingTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "preserveOriginal": { - "type": "boolean", - "default": false, - "description": "A value indicating whether the original token will be kept. Default is false." - } - }, - "description": "Converts alphabetic, numeric, and symbolic Unicode characters which are not in the first 127 ASCII characters (the \"Basic Latin\" Unicode block) into their ASCII equivalents, if such equivalents exist. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ASCIIFoldingFilter.html" - } - }, - "CjkBigramTokenFilterScripts": { - "type": "string", - "enum": [ - "han", - "hiragana", - "katakana", - "hangul" - ], - "x-ms-enum": { - "name": "CjkBigramTokenFilterScripts", - "modelAsString": false - }, - "description": "Scripts that can be ignored by CjkBigramTokenFilter." - }, - "CjkBigramTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.CjkBigramTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "ignoreScripts": { - "type": "array", - "items": { - "$ref": "#/definitions/CjkBigramTokenFilterScripts", - "x-nullable": false - }, - "description": "The scripts to ignore." - }, - "outputUnigrams": { - "type": "boolean", - "default": false, - "description": "A value indicating whether to output both unigrams and bigrams (if true), or just bigrams (if false). Default is false." - } - }, - "description": "Forms bigrams of CJK terms that are generated from StandardTokenizer. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKBigramFilter.html" - } - }, - "CommonGramTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.CommonGramTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "commonWords": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The set of common words." - }, - "ignoreCase": { - "type": "boolean", - "default": false, - "description": "A value indicating whether common words matching will be case insensitive. Default is false." - }, - "queryMode": { - "x-ms-client-name": "UseQueryMode", - "type": "boolean", - "default": false, - "description": "A value that indicates whether the token filter is in query mode. When in query mode, the token filter generates bigrams and then removes common words and single terms followed by a common word. Default is false." - } - }, - "required": [ - "commonWords" - ], - "description": "Construct bigrams for frequently occurring terms while indexing. Single terms are still indexed too, with bigrams overlaid. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/commongrams/CommonGramsFilter.html" - } - }, - "DictionaryDecompounderTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "wordList": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of words to match against." - }, - "minWordSize": { - "type": "integer", - "format": "int32", - "default": 5, - "maximum": 300, - "description": "The minimum word size. Only words longer than this get processed. Default is 5. Maximum is 300." - }, - "minSubwordSize": { - "type": "integer", - "format": "int32", - "default": 2, - "maximum": 300, - "description": "The minimum subword size. Only subwords longer than this are outputted. Default is 2. Maximum is 300." - }, - "maxSubwordSize": { - "type": "integer", - "format": "int32", - "default": 15, - "maximum": 300, - "description": "The maximum subword size. Only subwords shorter than this are outputted. Default is 15. Maximum is 300." - }, - "onlyLongestMatch": { - "type": "boolean", - "default": false, - "description": "A value indicating whether to add only the longest matching subword to the output. Default is false." - } - }, - "required": [ - "wordList" - ], - "description": "Decomposes compound words found in many Germanic languages. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/compound/DictionaryCompoundWordTokenFilter.html" - } - }, - "EdgeNGramTokenFilterSide": { - "type": "string", - "enum": [ - "front", - "back" - ], - "x-ms-enum": { - "name": "EdgeNGramTokenFilterSide", - "modelAsString": false - }, - "description": "Specifies which side of the input an n-gram should be generated from." - }, - "EdgeNGramTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "minGram": { - "type": "integer", - "format": "int32", - "default": 1, - "description": "The minimum n-gram length. Default is 1. Must be less than the value of maxGram." - }, - "maxGram": { - "type": "integer", - "format": "int32", - "default": 2, - "description": "The maximum n-gram length. Default is 2." - }, - "side": { - "$ref": "#/definitions/EdgeNGramTokenFilterSide", - "default": "front", - "description": "Specifies which side of the input the n-gram should be generated from. Default is \"front\"." - } - }, - "description": "Generates n-grams of the given size(s) starting from the front or the back of an input token. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenFilter.html" - }, - "x-ms-external": true - }, - "EdgeNGramTokenFilterV2": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenFilterV2", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "minGram": { - "type": "integer", - "format": "int32", - "default": 1, - "maximum": 300, - "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the value of maxGram." - }, - "maxGram": { - "type": "integer", - "format": "int32", - "default": 2, - "maximum": 300, - "description": "The maximum n-gram length. Default is 2. Maximum is 300." - }, - "side": { - "$ref": "#/definitions/EdgeNGramTokenFilterSide", - "default": "front", - "description": "Specifies which side of the input the n-gram should be generated from. Default is \"front\"." - } - }, - "description": "Generates n-grams of the given size(s) starting from the front or the back of an input token. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenFilter.html" - } - }, - "ElisionTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.ElisionTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "articles": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The set of articles to remove." - } - }, - "description": "Removes elisions. For example, \"l'avion\" (the plane) will be converted to \"avion\" (plane). This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/util/ElisionFilter.html" - } - }, - "KeepTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeepTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "keepWords": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of words to keep." - }, - "keepWordsCase": { - "x-ms-client-name": "LowerCaseKeepWords", - "type": "boolean", - "default": false, - "description": "A value indicating whether to lower case all words first. Default is false." - } - }, - "required": [ - "keepWords" - ], - "description": "A token filter that only keeps tokens with text contained in a specified list of words. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/KeepWordFilter.html" - } - }, - "KeywordMarkerTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordMarkerTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "keywords": { - "type": "array", - "items": { - "type": "string" - }, - "description": "A list of words to mark as keywords." - }, - "ignoreCase": { - "type": "boolean", - "default": false, - "description": "A value indicating whether to ignore case. If true, all words are converted to lower case first. Default is false." - } - }, - "required": [ - "keywords" - ], - "description": "Marks terms as keywords. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/KeywordMarkerFilter.html" - } - }, - "LengthTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.LengthTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "min": { - "type": "integer", - "format": "int32", - "default": 0, - "maximum": 300, - "description": "The minimum length in characters. Default is 0. Maximum is 300. Must be less than the value of max." - }, - "max": { - "type": "integer", - "format": "int32", - "default": 300, - "maximum": 300, - "description": "The maximum length in characters. Default and maximum is 300." - } - }, - "description": "Removes words that are too long or too short. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LengthFilter.html" - } - }, - "LimitTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.LimitTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "maxTokenCount": { - "type": "integer", - "format": "int32", - "default": 1, - "description": "The maximum number of tokens to produce. Default is 1." - }, - "consumeAllTokens": { - "type": "boolean", - "default": false, - "description": "A value indicating whether all tokens from the input must be consumed even if maxTokenCount is reached. Default is false." - } - }, - "description": "Limits the number of tokens while indexing. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LimitTokenCountFilter.html" - } - }, - "NGramTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "minGram": { - "type": "integer", - "format": "int32", - "default": 1, - "description": "The minimum n-gram length. Default is 1. Must be less than the value of maxGram." - }, - "maxGram": { - "type": "integer", - "format": "int32", - "default": 2, - "description": "The maximum n-gram length. Default is 2." - } - }, - "description": "Generates n-grams of the given size(s). This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenFilter.html" - }, - "x-ms-external": true - }, - "NGramTokenFilterV2": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenFilterV2", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "minGram": { - "type": "integer", - "format": "int32", - "default": 1, - "maximum": 300, - "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the value of maxGram." - }, - "maxGram": { - "type": "integer", - "format": "int32", - "default": 2, - "maximum": 300, - "description": "The maximum n-gram length. Default is 2. Maximum is 300." - } - }, - "description": "Generates n-grams of the given size(s). This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenFilter.html" - } - }, - "PatternCaptureTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternCaptureTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "patterns": { - "type": "array", - "items": { - "type": "string" - }, - "description": "A list of patterns to match against each token." - }, - "preserveOriginal": { - "type": "boolean", - "default": true, - "description": "A value indicating whether to return the original token even if one of the patterns matches. Default is true." - } - }, - "required": [ - "patterns" - ], - "description": "Uses Java regexes to emit multiple tokens - one for each capture group in one or more patterns. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternCaptureGroupTokenFilter.html" - } - }, - "PatternReplaceTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternReplaceTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "pattern": { - "type": "string", - "description": "A regular expression pattern." - }, - "replacement": { - "type": "string", - "description": "The replacement text." - } - }, - "required": [ - "pattern", - "replacement" - ], - "description": "A character filter that replaces characters in the input string. It uses a regular expression to identify character sequences to preserve and a replacement pattern to identify characters to replace. For example, given the input text \"aa bb aa bb\", pattern \"(aa)\\s+(bb)\", and replacement \"$1#$2\", the result would be \"aa#bb aa#bb\". This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternReplaceFilter.html" - } - }, - "PhoneticEncoder": { - "type": "string", - "enum": [ - "metaphone", - "doubleMetaphone", - "soundex", - "refinedSoundex", - "caverphone1", - "caverphone2", - "cologne", - "nysiis", - "koelnerPhonetik", - "haasePhonetik", - "beiderMorse" - ], - "x-ms-enum": { - "name": "PhoneticEncoder", - "modelAsString": false - }, - "description": "Identifies the type of phonetic encoder to use with a PhoneticTokenFilter." - }, - "PhoneticTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.PhoneticTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "encoder": { - "$ref": "#/definitions/PhoneticEncoder", - "default": "metaphone", - "description": "The phonetic encoder to use. Default is \"metaphone\"." - }, - "replace": { - "x-ms-client-name": "ReplaceOriginalTokens", - "type": "boolean", - "default": true, - "description": "A value indicating whether encoded tokens should replace original tokens. If false, encoded tokens are added as synonyms. Default is true." - } - }, - "description": "Create tokens for phonetic matches. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "https://lucene.apache.org/core/4_10_3/analyzers-phonetic/org/apache/lucene/analysis/phonetic/package-tree.html" - } - }, - "ShingleTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.ShingleTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "maxShingleSize": { - "type": "integer", - "format": "int32", - "default": 2, - "minimum": 2, - "description": "The maximum shingle size. Default and minimum value is 2." - }, - "minShingleSize": { - "type": "integer", - "format": "int32", - "default": 2, - "minimum": 2, - "description": "The minimum shingle size. Default and minimum value is 2. Must be less than the value of maxShingleSize." - }, - "outputUnigrams": { - "type": "boolean", - "default": true, - "description": "A value indicating whether the output stream will contain the input tokens (unigrams) as well as shingles. Default is true." - }, - "outputUnigramsIfNoShingles": { - "type": "boolean", - "default": false, - "description": "A value indicating whether to output unigrams for those times when no shingles are available. This property takes precedence when outputUnigrams is set to false. Default is false." - }, - "tokenSeparator": { - "type": "string", - "default": " ", - "description": "The string to use when joining adjacent tokens to form a shingle. Default is a single space (\" \")." - }, - "filterToken": { - "type": "string", - "default": "_", - "description": "The string to insert for each position at which there is no token. Default is an underscore (\"_\")." - } - }, - "description": "Creates combinations of tokens as a single token. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/shingle/ShingleFilter.html" - } - }, - "SnowballTokenFilterLanguage": { - "type": "string", - "enum": [ - "armenian", - "basque", - "catalan", - "danish", - "dutch", - "english", - "finnish", - "french", - "german", - "german2", - "hungarian", - "italian", - "kp", - "lovins", - "norwegian", - "porter", - "portuguese", - "romanian", - "russian", - "spanish", - "swedish", - "turkish" - ], - "x-ms-enum": { - "name": "SnowballTokenFilterLanguage", - "modelAsString": false - }, - "description": "The language to use for a Snowball token filter." - }, - "SnowballTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.SnowballTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "language": { - "$ref": "#/definitions/SnowballTokenFilterLanguage", - "description": "The language to use." - } - }, - "required": [ - "language" - ], - "description": "A filter that stems words using a Snowball-generated stemmer. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/snowball/SnowballFilter.html" - } - }, - "StemmerTokenFilterLanguage": { - "type": "string", - "enum": [ - "arabic", - "armenian", - "basque", - "brazilian", - "bulgarian", - "catalan", - "czech", - "danish", - "dutch", - "dutchKp", - "english", - "lightEnglish", - "minimalEnglish", - "possessiveEnglish", - "porter2", - "lovins", - "finnish", - "lightFinnish", - "french", - "lightFrench", - "minimalFrench", - "galician", - "minimalGalician", - "german", - "german2", - "lightGerman", - "minimalGerman", - "greek", - "hindi", - "hungarian", - "lightHungarian", - "indonesian", - "irish", - "italian", - "lightItalian", - "sorani", - "latvian", - "norwegian", - "lightNorwegian", - "minimalNorwegian", - "lightNynorsk", - "minimalNynorsk", - "portuguese", - "lightPortuguese", - "minimalPortuguese", - "portugueseRslp", - "romanian", - "russian", - "lightRussian", - "spanish", - "lightSpanish", - "swedish", - "lightSwedish", - "turkish" - ], - "x-ms-enum": { - "name": "StemmerTokenFilterLanguage", - "modelAsString": false - }, - "description": "The language to use for a stemmer token filter." - }, - "StemmerTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.StemmerTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "language": { - "$ref": "#/definitions/StemmerTokenFilterLanguage", - "description": "The language to use." - } - }, - "required": [ - "language" - ], - "description": "Language specific stemming filter. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#TokenFilters" - } - }, - "StemmerOverrideTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.StemmerOverrideTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "rules": { - "type": "array", - "items": { - "type": "string" - }, - "description": "A list of stemming rules in the following format: \"word => stem\", for example: \"ran => run\"." - } - }, - "required": [ - "rules" - ], - "description": "Provides the ability to override other stemming filters with custom dictionary-based stemming. Any dictionary-stemmed terms will be marked as keywords so that they will not be stemmed with stemmers down the chain. Must be placed before any stemming filters. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/StemmerOverrideFilter.html" - } - }, - "StopwordsList": { - "type": "string", - "enum": [ - "arabic", - "armenian", - "basque", - "brazilian", - "bulgarian", - "catalan", - "czech", - "danish", - "dutch", - "english", - "finnish", - "french", - "galician", - "german", - "greek", - "hindi", - "hungarian", - "indonesian", - "irish", - "italian", - "latvian", - "norwegian", - "persian", - "portuguese", - "romanian", - "russian", - "sorani", - "spanish", - "swedish", - "thai", - "turkish" - ], - "x-ms-enum": { - "name": "StopwordsList", - "modelAsString": false - }, - "description": "Identifies a predefined list of language-specific stopwords." - }, - "StopwordsTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.StopwordsTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "stopwords": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of stopwords. This property and the stopwords list property cannot both be set." - }, - "stopwordsList": { - "$ref": "#/definitions/StopwordsList", - "default": "english", - "description": "A predefined list of stopwords to use. This property and the stopwords property cannot both be set. Default is English." - }, - "ignoreCase": { - "type": "boolean", - "default": false, - "description": "A value indicating whether to ignore case. If true, all words are converted to lower case first. Default is false." - }, - "removeTrailing": { - "x-ms-client-name": "RemoveTrailingStopWords", - "type": "boolean", - "default": true, - "description": "A value indicating whether to ignore the last search term if it's a stop word. Default is true." - } - }, - "description": "Removes stop words from a token stream. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopFilter.html" - } - }, - "SynonymTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.SynonymTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "synonyms": { - "type": "array", - "items": { - "type": "string" - }, - "description": "A list of synonyms in following one of two formats: 1. incredible, unbelievable, fabulous => amazing - all terms on the left side of => symbol will be replaced with all terms on its right side; 2. incredible, unbelievable, fabulous, amazing - comma separated list of equivalent words. Set the expand option to change how this list is interpreted." - }, - "ignoreCase": { - "type": "boolean", - "default": false, - "description": "A value indicating whether to case-fold input for matching. Default is false." - }, - "expand": { - "type": "boolean", - "default": true, - "description": "A value indicating whether all words in the list of synonyms (if => notation is not used) will map to one another. If true, all words in the list of synonyms (if => notation is not used) will map to one another. The following list: incredible, unbelievable, fabulous, amazing is equivalent to: incredible, unbelievable, fabulous, amazing => incredible, unbelievable, fabulous, amazing. If false, the following list: incredible, unbelievable, fabulous, amazing will be equivalent to: incredible, unbelievable, fabulous, amazing => incredible. Default is true." - } - }, - "required": [ - "synonyms" - ], - "description": "Matches single or multi-word synonyms in a token stream. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/synonym/SynonymFilter.html" - } - }, - "TruncateTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.TruncateTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "length": { - "type": "integer", - "format": "int32", - "default": 300, - "maximum": 300, - "description": "The length at which terms will be truncated. Default and maximum is 300." - } - }, - "description": "Truncates the terms to a specific length. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TruncateTokenFilter.html" - } - }, - "UniqueTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.UniqueTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "onlyOnSamePosition": { - "type": "boolean", - "default": false, - "description": "A value indicating whether to remove duplicates only at the same position. Default is false." - } - }, - "description": "Filters out tokens with same text as the previous token. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/RemoveDuplicatesTokenFilter.html" - } - }, - "WordDelimiterTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.WordDelimiterTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "generateWordParts": { - "type": "boolean", - "default": true, - "description": "A value indicating whether to generate part words. If set, causes parts of words to be generated; for example \"AzureSearch\" becomes \"Azure\" \"Search\". Default is true." - }, - "generateNumberParts": { - "type": "boolean", - "default": true, - "description": "A value indicating whether to generate number subwords. Default is true." - }, - "catenateWords": { - "type": "boolean", - "default": false, - "description": "A value indicating whether maximum runs of word parts will be catenated. For example, if this is set to true, \"Azure-Search\" becomes \"AzureSearch\". Default is false." - }, - "catenateNumbers": { - "type": "boolean", - "default": false, - "description": "A value indicating whether maximum runs of number parts will be catenated. For example, if this is set to true, \"1-2\" becomes \"12\". Default is false." - }, - "catenateAll": { - "type": "boolean", - "default": false, - "description": "A value indicating whether all subword parts will be catenated. For example, if this is set to true, \"Azure-Search-1\" becomes \"AzureSearch1\". Default is false." - }, - "splitOnCaseChange": { - "type": "boolean", - "default": true, - "description": "A value indicating whether to split words on caseChange. For example, if this is set to true, \"AzureSearch\" becomes \"Azure\" \"Search\". Default is true." - }, - "preserveOriginal": { - "type": "boolean", - "default": false, - "description": "A value indicating whether original words will be preserved and added to the subword list. Default is false." - }, - "splitOnNumerics": { - "type": "boolean", - "default": true, - "description": "A value indicating whether to split on numbers. For example, if this is set to true, \"Azure1Search\" becomes \"Azure\" \"1\" \"Search\". Default is true." - }, - "stemEnglishPossessive": { - "type": "boolean", - "default": true, - "description": "A value indicating whether to remove trailing \"'s\" for each subword. Default is true." - }, - "protectedWords": { - "type": "array", - "items": { - "type": "string" - }, - "description": "A list of tokens to protect from being delimited." - } - }, - "description": "Splits words into subwords and performs optional transformations on subword groups. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/WordDelimiterFilter.html" - } - }, - "CharFilter": { - "discriminator": "@odata.type", - "properties": { - "@odata.type": { - "type": "string" - }, - "name": { - "type": "string", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/custom-analyzers-in-azure-search#index-attribute-reference" - }, - "description": "The name of the char filter. It must only contain letters, digits, spaces, dashes or underscores, can only start and end with alphanumeric characters, and is limited to 128 characters." - } - }, - "required": [ - "@odata.type", - "name" - ], - "description": "Abstract base class for character filters.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" - } - }, - "MappingCharFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.MappingCharFilter", - "allOf": [ - { - "$ref": "#/definitions/CharFilter" - } - ], - "properties": { - "mappings": { - "type": "array", - "items": { - "type": "string" - }, - "description": "A list of mappings of the following format: \"a=>b\" (all occurrences of the character \"a\" will be replaced with character \"b\")." - } - }, - "required": [ - "mappings" - ], - "description": "A character filter that applies mappings defined with the mappings option. Matching is greedy (longest pattern matching at a given point wins). Replacement is allowed to be the empty string. This character filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/charfilter/MappingCharFilter.html" - } - }, - "PatternReplaceCharFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternReplaceCharFilter", - "allOf": [ - { - "$ref": "#/definitions/CharFilter" - } - ], - "properties": { - "pattern": { - "type": "string", - "description": "A regular expression pattern." - }, - "replacement": { - "type": "string", - "description": "The replacement text." - } - }, - "required": [ - "pattern", - "replacement" - ], - "description": "A character filter that replaces characters in the input string. It uses a regular expression to identify character sequences to preserve and a replacement pattern to identify characters to replace. For example, given the input text \"aa bb aa bb\", pattern \"(aa)\\s+(bb)\", and replacement \"$1#$2\", the result would be \"aa#bb aa#bb\". This character filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternReplaceCharFilter.html" - } - }, - "DataSourceCredentials": { - "properties": { - "connectionString": { - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Data-Source" - }, - "type": "string", - "description": "The connection string for the datasource." - } - }, - "description": "Represents credentials that can be used to connect to a datasource." - }, - "DataContainer": { - "properties": { - "name": { - "type": "string", - "description": "The name of the table or view (for Azure SQL data source) or collection (for CosmosDB data source) that will be indexed." - }, - "query": { - "type": "string", - "description": "A query that is applied to this data container. The syntax and meaning of this parameter is datasource-specific. Not supported by Azure SQL datasources." - } - }, - "required": [ - "name" - ], - "description": "Represents information about the entity (such as Azure SQL table or CosmosDB collection) that will be indexed." - }, - "DataChangeDetectionPolicy": { - "discriminator": "@odata.type", - "properties": { - "@odata.type": { - "type": "string" - } - }, - "required": [ - "@odata.type" - ], - "description": "Abstract base class for data change detection policies." - }, - "HighWaterMarkChangeDetectionPolicy": { - "description": "Defines a data change detection policy that captures changes based on the value of a high water mark column.", - "x-ms-discriminator-value": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", - "allOf": [ - { - "$ref": "#/definitions/DataChangeDetectionPolicy" - } - ], - "properties": { - "highWaterMarkColumnName": { - "type": "string", - "description": "The name of the high water mark column." - } - }, - "required": [ - "highWaterMarkColumnName" - ] - }, - "SqlIntegratedChangeTrackingPolicy": { - "description": "Defines a data change detection policy that captures changes using the Integrated Change Tracking feature of Azure SQL Database.", - "x-ms-discriminator-value": "#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy", - "allOf": [ - { - "$ref": "#/definitions/DataChangeDetectionPolicy" - } - ] - }, - "DataDeletionDetectionPolicy": { - "discriminator": "@odata.type", - "properties": { - "@odata.type": { - "type": "string" - } - }, - "required": [ - "@odata.type" - ], - "description": "Abstract base class for data deletion detection policies." - }, - "SoftDeleteColumnDeletionDetectionPolicy": { - "description": "Defines a data deletion detection policy that implements a soft-deletion strategy. It determines whether an item should be deleted based on the value of a designated 'soft delete' column.", - "x-ms-discriminator-value": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", - "allOf": [ - { - "$ref": "#/definitions/DataDeletionDetectionPolicy" - } - ], - "properties": { - "softDeleteColumnName": { - "type": "string", - "description": "The name of the column to use for soft-deletion detection." - }, - "softDeleteMarkerValue": { - "type": "string", - "description": "The marker value that identifies an item as deleted." - } - } - }, - "DataSourceType": { - "type": "string", - "enum": [ - "azuresql", - "cosmosdb", - "azureblob", - "azuretable", - "mysql" - ], - "x-ms-enum": { - "name": "DataSourceType", - "modelAsString": true, - "values": [ - { - "value": "azuresql", - "name": "AzureSql" - }, - { - "value": "cosmosdb", - "name": "CosmosDb" - }, - { - "value": "azureblob", - "name": "AzureBlob" - }, - { - "value": "azuretable", - "name": "AzureTable" - }, - { - "value": "mysql", - "name": "MySql" - } - ] - }, - "description": "Defines the type of a datasource." - }, - "DataSource": { - "properties": { - "name": { - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Naming-rules" - }, - "type": "string", - "description": "The name of the datasource." - }, - "description": { - "type": "string", - "description": "The description of the datasource." - }, - "type": { - "$ref": "#/definitions/DataSourceType", - "description": "The type of the datasource." - }, - "credentials": { - "$ref": "#/definitions/DataSourceCredentials", - "description": "Credentials for the datasource." - }, - "container": { - "$ref": "#/definitions/DataContainer", - "description": "The data container for the datasource." - }, - "dataChangeDetectionPolicy": { - "$ref": "#/definitions/DataChangeDetectionPolicy", - "description": "The data change detection policy for the datasource." - }, - "dataDeletionDetectionPolicy": { - "$ref": "#/definitions/DataDeletionDetectionPolicy", - "description": "The data deletion detection policy for the datasource." - }, - "@odata.etag": { - "x-ms-client-name": "ETag", - "type": "string", - "description": "The ETag of the DataSource." - } - }, - "required": [ - "name", - "type", - "credentials", - "container" - ], - "description": "Represents a datasource definition, which can be used to configure an indexer." - }, - "DataSourceListResult": { - "properties": { - "value": { - "x-ms-client-name": "DataSources", - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/DataSource" - }, - "description": "The datasources in the Search service." - } - }, - "description": "Response from a List Datasources request. If successful, it includes the full definitions of all datasources." - }, - "IndexingSchedule": { - "properties": { - "interval": { - "type": "string", - "format": "duration", - "description": "The interval of time between indexer executions." - }, - "startTime": { - "type": "string", - "format": "date-time", - "description": "The time when an indexer should start running." - } - }, - "required": [ - "interval" - ], - "description": "Represents a schedule for indexer execution." - }, - "IndexingParameters": { - "properties": { - "batchSize": { - "type": "integer", - "format": "int32", - "description": "The number of items that are read from the data source and indexed as a single batch in order to improve performance. The default depends on the data source type." - }, - "maxFailedItems": { - "type": "integer", - "format": "int32", - "default": 0, - "description": "The maximum number of items that can fail indexing for indexer execution to still be considered successful. -1 means no limit. Default is 0." - }, - "maxFailedItemsPerBatch": { - "type": "integer", - "format": "int32", - "default": 0, - "description": "The maximum number of items in a single batch that can fail indexing for the batch to still be considered successful. -1 means no limit. Default is 0." - }, - "base64EncodeKeys": { - "type": "boolean", - "default": false, - "description": "Whether indexer will base64-encode all values that are inserted into key field of the target index. This is needed if keys can contain characters that are invalid in keys (such as dot '.'). Default is false." - }, - "configuration": { - "type": "object", - "additionalProperties": { - "type": "object" - }, - "description": "A dictionary of indexer-specific configuration properties. Each name is the name of a specific property. Each value must be of a primitive type." - } - }, - "description": "Represents parameters for indexer execution.", - "x-ms-external": true - }, - "FieldMappingFunction": { - "properties": { - "name": { - "type": "string", - "description": "The name of the field mapping function." - }, - "parameters": { - "type": "object", - "additionalProperties": { - "type": "object" - }, - "description": "A dictionary of parameter name/value pairs to pass to the function. Each value must be of a primitive type." - } - }, - "required": [ - "name" - ], - "description": "Represents a function that transforms a value from a data source before indexing.", - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/search-indexer-field-mappings" - } - }, - "FieldMapping": { - "properties": { - "sourceFieldName": { - "type": "string", - "description": "The name of the field in the data source." - }, - "targetFieldName": { - "type": "string", - "description": "The name of the target field in the index. Same as the source field name by default." - }, - "mappingFunction": { - "$ref": "#/definitions/FieldMappingFunction", - "description": "A function to apply to each source field value before indexing." - } - }, - "required": [ - "sourceFieldName" - ], - "description": "Defines a mapping between a field in a data source and a target field in an index.", - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/search-indexer-field-mappings" - } - }, - "Indexer": { - "properties": { - "name": { - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Naming-rules" - }, - "type": "string", - "description": "The name of the indexer." - }, - "description": { - "type": "string", - "description": "The description of the indexer." - }, - "dataSourceName": { - "type": "string", - "description": "The name of the datasource from which this indexer reads data." - }, - "skillsetName": { - "type": "string", - "description": "The name of the skillset executing with this indexer." - }, - "targetIndexName": { - "type": "string", - "description": "The name of the index to which this indexer writes data." - }, - "schedule": { - "$ref": "#/definitions/IndexingSchedule", - "description": "The schedule for this indexer." - }, - "parameters": { - "$ref": "#/definitions/IndexingParameters", - "description": "Parameters for indexer execution." - }, - "fieldMappings": { - "type": "array", - "items": { - "$ref": "#/definitions/FieldMapping" - }, - "description": "Defines mappings between fields in the data source and corresponding target fields in the index.", - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/search-indexer-field-mappings" - } - }, - "outputFieldMappings": { - "type": "array", - "items": { - "$ref": "#/definitions/FieldMapping" - }, - "description": "Output field mappings are applied after enrichment and immediately before indexing.", - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/search-indexer-field-mappings" - } - }, - "disabled": { - "x-ms-client-name": "IsDisabled", - "type": "boolean", - "default": false, - "description": "A value indicating whether the indexer is disabled. Default is false." - }, - "@odata.etag": { - "x-ms-client-name": "ETag", - "type": "string", - "description": "The ETag of the Indexer." - } - }, - "required": [ - "name", - "dataSourceName", - "targetIndexName" - ], - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Indexer-operations" - }, - "description": "Represents an indexer." - }, - "IndexerListResult": { - "properties": { - "value": { - "x-ms-client-name": "Indexers", - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/Indexer" - }, - "description": "The indexers in the Search service." - } - }, - "description": "Response from a List Indexers request. If successful, it includes the full definitions of all indexers." - }, - "ItemError": { - "properties": { - "key": { - "type": "string", - "readOnly": true, - "description": "The key of the item for which indexing failed." - }, - "errorMessage": { - "type": "string", - "readOnly": true, - "description": "The message describing the error that occurred while processing the item." - }, - "statusCode": { - "type": "integer", - "format": "int32", - "x-nullable": false, - "readOnly": true, - "description": "The status code indicating why the indexing operation failed. Possible values include: 400 for a malformed input document, 404 for document not found, 409 for a version conflict, 422 when the index is temporarily unavailable, or 503 for when the service is too busy." - }, - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the source at which the error originated. For example, this could refer to a particular skill in the attached skillset. This may not be always available." - }, - "details": { - "type": "string", - "readOnly": true, - "description": "Additional, verbose details about the error to assist in debugging the indexer. This may not be always available." - }, - "documentationLink": { - "type": "string", - "readOnly": true, - "description": "A link to a troubleshooting guide for these classes of errors. This may not be always available." - } - }, - "description": "Represents an item- or document-level indexing error." - }, - "ItemWarning": { - "properties": { - "key": { - "type": "string", - "readOnly": true, - "description": "The key of the item which generated a warning." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The message describing the warning that occurred while processing the item." - }, - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the source at which the warning originated. For example, this could refer to a particular skill in the attached skillset. This may not be always available." - }, - "details": { - "type": "string", - "readOnly": true, - "description": "Additional, verbose details about the warning to assist in debugging the indexer. This may not be always available." - }, - "documentationLink": { - "type": "string", - "readOnly": true, - "description": "A link to a troubleshooting guide for these classes of warnings. This may not be always available." - } - }, - "description": "Represents an item-level warning." - }, - "IndexerExecutionResult": { - "properties": { - "status": { - "$ref": "#/definitions/IndexerExecutionStatus", - "readOnly": true, - "description": "The outcome of this indexer execution." - }, - "errorMessage": { - "type": "string", - "readOnly": true, - "description": "The error message indicating the top-level error, if any." - }, - "startTime": { - "type": "string", - "format": "date-time", - "readOnly": true, - "description": "The start time of this indexer execution." - }, - "endTime": { - "type": "string", - "format": "date-time", - "readOnly": true, - "description": "The end time of this indexer execution, if the execution has already completed." - }, - "errors": { - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/ItemError" - }, - "description": "The item-level indexing errors." - }, - "warnings": { - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/ItemWarning" - }, - "description": "The item-level indexing warnings." - }, - "itemsProcessed": { - "x-ms-client-name": "ItemCount", - "type": "integer", - "format": "int32", - "x-nullable": false, - "readOnly": true, - "description": "The number of items that were processed during this indexer execution. This includes both successfully processed items and items where indexing was attempted but failed." - }, - "itemsFailed": { - "x-ms-client-name": "FailedItemCount", - "type": "integer", - "format": "int32", - "x-nullable": false, - "readOnly": true, - "description": "The number of items that failed to be indexed during this indexer execution." - }, - "initialTrackingState": { - "type": "string", - "readOnly": true, - "description": "Change tracking state with which an indexer execution started." - }, - "finalTrackingState": { - "type": "string", - "readOnly": true, - "description": "Change tracking state with which an indexer execution finished." - } - }, - "description": "Represents the result of an individual indexer execution." - }, - "IndexerExecutionStatus": { - "type": "string", - "enum": [ - "transientFailure", - "success", - "inProgress", - "reset" - ], - "x-ms-enum": { - "name": "IndexerExecutionStatus" - }, - "x-nullable": false, - "description": "Represents the status of an individual indexer execution." - }, - "IndexerExecutionInfo": { - "properties": { - "status": { - "$ref": "#/definitions/IndexerStatus", - "readOnly": true, - "description": "Overall indexer status." - }, - "lastResult": { - "$ref": "#/definitions/IndexerExecutionResult", - "readOnly": true, - "description": "The result of the most recent or an in-progress indexer execution." - }, - "executionHistory": { - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/IndexerExecutionResult" - }, - "description": "History of the recent indexer executions, sorted in reverse chronological order." - }, - "limits": { - "$ref": "#/definitions/IndexerLimits", - "readOnly": true, - "description": "The execution limits for the indexer." - } - }, - "description": "Represents the current status and execution history of an indexer." - }, - "IndexerStatus": { - "type": "string", - "enum": [ - "unknown", - "error", - "running" - ], - "x-ms-enum": { - "name": "IndexerStatus" - }, - "x-nullable": false, - "description": "Represents the overall indexer status." - }, - "IndexerLimits": { - "properties": { - "maxRunTime": { - "type": "string", - "format": "duration", - "readOnly": true, - "description": "The maximum duration that the indexer is permitted to run for one execution." - }, - "maxDocumentExtractionSize": { - "type": "number", - "format": "int64", - "readOnly": true, - "description": "The maximum size of a document, in bytes, which will be considered valid for indexing." - }, - "maxDocumentContentCharactersToExtract": { - "type": "number", - "format": "int64", - "readOnly": true, - "description": "The maximum number of characters that will be extracted from a document picked up for indexing." - } - } - }, - "Field": { - "properties": { - "name": { - "type": "string", - "description": "The name of the field, which must be unique within the fields collection of the index or parent field.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Naming-rules" - } - }, - "type": { - "$ref": "#/definitions/DataType", - "description": "The data type of the field.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/supported-data-types" - } - }, - "key": { - "type": "boolean", - "description": "A value indicating whether the field uniquely identifies documents in the index. Exactly one top-level field in each index must be chosen as the key field and it must be of type Edm.String. Key fields can be used to look up documents directly and update or delete specific documents. Default is false for simple fields and null for complex fields." - }, - "retrievable": { - "type": "boolean", - "description": "A value indicating whether the field can be returned in a search result. You can disable this option if you want to use a field (for example, margin) as a filter, sorting, or scoring mechanism but do not want the field to be visible to the end user. This property must be true for key fields, and it must be null for complex fields. This property can be changed on existing fields. Enabling this property does not cause any increase in index storage requirements. Default is true for simple fields and null for complex fields." - }, - "searchable": { - "type": "boolean", - "description": "A value indicating whether the field is full-text searchable. This means it will undergo analysis such as word-breaking during indexing. If you set a searchable field to a value like \"sunny day\", internally it will be split into the individual tokens \"sunny\" and \"day\". This enables full-text searches for these terms. Fields of type Edm.String or Collection(Edm.String) are searchable by default. This property must be false for simple fields of other non-string data types, and it must be null for complex fields. Note: searchable fields consume extra space in your index since Azure Cognitive Search will store an additional tokenized version of the field value for full-text searches. If you want to save space in your index and you don't need a field to be included in searches, set searchable to false." - }, - "filterable": { - "type": "boolean", - "description": "A value indicating whether to enable the field to be referenced in $filter queries. filterable differs from searchable in how strings are handled. Fields of type Edm.String or Collection(Edm.String) that are filterable do not undergo word-breaking, so comparisons are for exact matches only. For example, if you set such a field f to \"sunny day\", $filter=f eq 'sunny' will find no matches, but $filter=f eq 'sunny day' will. This property must be null for complex fields. Default is true for simple fields and null for complex fields." - }, - "sortable": { - "type": "boolean", - "description": "A value indicating whether to enable the field to be referenced in $orderby expressions. By default Azure Cognitive Search sorts results by score, but in many experiences users will want to sort by fields in the documents. A simple field can be sortable only if it is single-valued (it has a single value in the scope of the parent document). Simple collection fields cannot be sortable, since they are multi-valued. Simple sub-fields of complex collections are also multi-valued, and therefore cannot be sortable. This is true whether it's an immediate parent field, or an ancestor field, that's the complex collection. Complex fields cannot be sortable and the sortable property must be null for such fields. The default for sortable is true for single-valued simple fields, false for multi-valued simple fields, and null for complex fields." - }, - "facetable": { - "type": "boolean", - "description": "A value indicating whether to enable the field to be referenced in facet queries. Typically used in a presentation of search results that includes hit count by category (for example, search for digital cameras and see hits by brand, by megapixels, by price, and so on). This property must be null for complex fields. Fields of type Edm.GeographyPoint or Collection(Edm.GeographyPoint) cannot be facetable. Default is true for all other simple fields." - }, - "analyzer": { - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Language-support" - }, - "$ref": "#/definitions/AnalyzerName", - "description": "The name of the language analyzer to use for the field. This option can be used only with searchable fields and it can't be set together with either searchAnalyzer or indexAnalyzer. Once the analyzer is chosen, it cannot be changed for the field. Must be null for complex fields." - }, - "searchAnalyzer": { - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Language-support" - }, - "$ref": "#/definitions/AnalyzerName", - "description": "The name of the analyzer used at search time for the field. This option can be used only with searchable fields. It must be set together with indexAnalyzer and it cannot be set together with the analyzer option. This analyzer can be updated on an existing field. Must be null for complex fields." - }, - "indexAnalyzer": { - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Language-support" - }, - "$ref": "#/definitions/AnalyzerName", - "description": "The name of the analyzer used at indexing time for the field. This option can be used only with searchable fields. It must be set together with searchAnalyzer and it cannot be set together with the analyzer option. Once the analyzer is chosen, it cannot be changed for the field. Must be null for complex fields." - }, - "synonymMaps": { - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Synonym-Map-operations" - }, - "type": "array", - "items": { - "type": "string" - }, - "description": "A list of the names of synonym maps to associate with this field. This option can be used only with searchable fields. Currently only one synonym map per field is supported. Assigning a synonym map to a field ensures that query terms targeting that field are expanded at query-time using the rules in the synonym map. This attribute can be changed on existing fields. Must be null or an empty collection for complex fields." - }, - "fields": { - "type": "array", - "items": { - "$ref": "#/definitions/Field" - }, - "description": "A list of sub-fields if this is a field of type Edm.ComplexType or Collection(Edm.ComplexType). Must be null or empty for simple fields." - } - }, - "required": [ - "name", - "type" - ], - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Index" - }, - "description": "Represents a field in an index definition, which describes the name, data type, and search behavior of a field." - }, - "TextWeights": { - "properties": { - "weights": { - "type": "object", - "additionalProperties": { - "type": "number", - "format": "double", - "x-nullable": false - }, - "description": "The dictionary of per-field weights to boost document scoring. The keys are field names and the values are the weights for each field." - } - }, - "required": [ - "weights" - ], - "description": "Defines weights on index fields for which matches should boost scoring in search queries." - }, - "ScoringFunction": { - "discriminator": "type", - "properties": { - "type": { - "type": "string" - }, - "fieldName": { - "type": "string", - "description": "The name of the field used as input to the scoring function." - }, - "boost": { - "type": "number", - "format": "double", - "description": "A multiplier for the raw score. Must be a positive number not equal to 1.0." - }, - "interpolation": { - "$ref": "#/definitions/ScoringFunctionInterpolation", - "description": "A value indicating how boosting will be interpolated across document scores; defaults to \"Linear\"." - } - }, - "required": [ - "type", - "fieldName", - "boost" - ], - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" - }, - "description": "Abstract base class for functions that can modify document scores during ranking." - }, - "DistanceScoringFunction": { - "x-ms-discriminator-value": "distance", - "allOf": [ - { - "$ref": "#/definitions/ScoringFunction" - } - ], - "properties": { - "distance": { - "x-ms-client-name": "Parameters", - "$ref": "#/definitions/DistanceScoringParameters", - "description": "Parameter values for the distance scoring function." - } - }, - "required": [ - "distance" - ], - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" - }, - "description": "Defines a function that boosts scores based on distance from a geographic location." - }, - "DistanceScoringParameters": { - "properties": { - "referencePointParameter": { - "type": "string", - "description": "The name of the parameter passed in search queries to specify the reference location." - }, - "boostingDistance": { - "type": "number", - "format": "double", - "description": "The distance in kilometers from the reference location where the boosting range ends." - } - }, - "required": [ - "referencePointParameter", - "boostingDistance" - ], - "description": "Provides parameter values to a distance scoring function." - }, - "FreshnessScoringFunction": { - "x-ms-discriminator-value": "freshness", - "allOf": [ - { - "$ref": "#/definitions/ScoringFunction" - } - ], - "properties": { - "freshness": { - "x-ms-client-name": "Parameters", - "$ref": "#/definitions/FreshnessScoringParameters", - "description": "Parameter values for the freshness scoring function." - } - }, - "required": [ - "freshness" - ], - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" - }, - "description": "Defines a function that boosts scores based on the value of a date-time field." - }, - "FreshnessScoringParameters": { - "properties": { - "boostingDuration": { - "type": "string", - "format": "duration", - "description": "The expiration period after which boosting will stop for a particular document." - } - }, - "required": [ - "boostingDuration" - ], - "description": "Provides parameter values to a freshness scoring function." - }, - "MagnitudeScoringFunction": { - "x-ms-discriminator-value": "magnitude", - "allOf": [ - { - "$ref": "#/definitions/ScoringFunction" - } - ], - "properties": { - "magnitude": { - "x-ms-client-name": "Parameters", - "$ref": "#/definitions/MagnitudeScoringParameters", - "description": "Parameter values for the magnitude scoring function." - } - }, - "required": [ - "magnitude" - ], - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" - }, - "description": "Defines a function that boosts scores based on the magnitude of a numeric field." - }, - "MagnitudeScoringParameters": { - "properties": { - "boostingRangeStart": { - "type": "number", - "format": "double", - "description": "The field value at which boosting starts." - }, - "boostingRangeEnd": { - "type": "number", - "format": "double", - "description": "The field value at which boosting ends." - }, - "constantBoostBeyondRange": { - "x-ms-client-name": "ShouldBoostBeyondRangeByConstant", - "type": "boolean", - "description": "A value indicating whether to apply a constant boost for field values beyond the range end value; default is false." - } - }, - "required": [ - "boostingRangeStart", - "boostingRangeEnd" - ], - "description": "Provides parameter values to a magnitude scoring function." - }, - "TagScoringFunction": { - "x-ms-discriminator-value": "tag", - "allOf": [ - { - "$ref": "#/definitions/ScoringFunction" - } - ], - "properties": { - "tag": { - "x-ms-client-name": "Parameters", - "$ref": "#/definitions/TagScoringParameters", - "description": "Parameter values for the tag scoring function." - } - }, - "required": [ - "tag" - ], - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" - }, - "description": "Defines a function that boosts scores of documents with string values matching a given list of tags." - }, - "TagScoringParameters": { - "properties": { - "tagsParameter": { - "type": "string", - "description": "The name of the parameter passed in search queries to specify the list of tags to compare against the target field." - } - }, - "required": [ - "tagsParameter" - ], - "description": "Provides parameter values to a tag scoring function." - }, - "ScoringFunctionInterpolation": { - "type": "string", - "enum": [ - "linear", - "constant", - "quadratic", - "logarithmic" - ], - "x-ms-enum": { - "name": "ScoringFunctionInterpolation" - }, - "description": "Defines the function used to interpolate score boosting across a range of documents." - }, - "ScoringProfile": { - "properties": { - "name": { - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Naming-rules" - }, - "type": "string", - "description": "The name of the scoring profile." - }, - "text": { - "x-ms-client-name": "TextWeights", - "$ref": "#/definitions/TextWeights", - "description": "Parameters that boost scoring based on text matches in certain index fields." - }, - "functions": { - "type": "array", - "items": { - "$ref": "#/definitions/ScoringFunction" - }, - "description": "The collection of functions that influence the scoring of documents." - }, - "functionAggregation": { - "$ref": "#/definitions/ScoringFunctionAggregation", - "description": "A value indicating how the results of individual scoring functions should be combined. Defaults to \"Sum\". Ignored if there are no scoring functions." - } - }, - "required": [ - "name" - ], - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" - }, - "description": "Defines parameters for a search index that influence scoring in search queries." - }, - "ScoringFunctionAggregation": { - "type": "string", - "enum": [ - "sum", - "average", - "minimum", - "maximum", - "firstMatching" - ], - "x-ms-enum": { - "name": "ScoringFunctionAggregation" - }, - "description": "Defines the aggregation function used to combine the results of all the scoring functions in a scoring profile." - }, - "CorsOptions": { - "properties": { - "allowedOrigins": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of origins from which JavaScript code will be granted access to your index. Can contain a list of hosts of the form {protocol}://{fully-qualified-domain-name}[:{port#}], or a single '*' to allow all origins (not recommended)." - }, - "maxAgeInSeconds": { - "type": "integer", - "format": "int64", - "description": "The duration for which browsers should cache CORS preflight responses. Defaults to 5 minutes." - } - }, - "required": [ - "allowedOrigins" - ], - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Index" - }, - "description": "Defines options to control Cross-Origin Resource Sharing (CORS) for an index." - }, - "Suggester": { - "properties": { - "name": { - "type": "string", - "description": "The name of the suggester." - }, - "searchMode": { - "type": "string", - "enum": [ - "analyzingInfixMatching" - ], - "x-ms-enum": { - "name": "searchMode", - "modelAsString": false - }, - "description": "A value indicating the capabilities of the suggester." - }, - "sourceFields": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of field names to which the suggester applies. Each field must be searchable." - } - }, - "required": [ - "name", - "searchMode", - "sourceFields" - ], - "description": "Defines how the Suggest API should apply to a group of fields in the index." - }, - "Index": { - "properties": { - "name": { - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Naming-rules" - }, - "type": "string", - "description": "The name of the index." - }, - "fields": { - "type": "array", - "items": { - "$ref": "#/definitions/Field" - }, - "description": "The fields of the index." - }, - "scoringProfiles": { - "type": "array", - "items": { - "$ref": "#/definitions/ScoringProfile" - }, - "description": "The scoring profiles for the index." - }, - "defaultScoringProfile": { - "type": "string", - "description": "The name of the scoring profile to use if none is specified in the query. If this property is not set and no scoring profile is specified in the query, then default scoring (tf-idf) will be used." - }, - "corsOptions": { - "$ref": "#/definitions/CorsOptions", - "description": "Options to control Cross-Origin Resource Sharing (CORS) for the index." - }, - "suggesters": { - "type": "array", - "items": { - "$ref": "#/definitions/Suggester" - }, - "description": "The suggesters for the index." - }, - "analyzers": { - "type": "array", - "items": { - "$ref": "#/definitions/Analyzer" - }, - "description": "The analyzers for the index.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" - } - }, - "tokenizers": { - "type": "array", - "items": { - "$ref": "#/definitions/Tokenizer" - }, - "description": "The tokenizers for the index.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" - } - }, - "tokenFilters": { - "type": "array", - "items": { - "$ref": "#/definitions/TokenFilter" - }, - "description": "The token filters for the index.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" - } - }, - "charFilters": { - "type": "array", - "items": { - "$ref": "#/definitions/CharFilter" - }, - "description": "The character filters for the index.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" - } - }, - "encryptionKey": { - "$ref": "#/definitions/EncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your data when you want full assurance that no one, not even Microsoft, can decrypt your data in Azure Cognitive Search. Once you have encrypted your data, it will always remain encrypted. Azure Cognitive Search will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your data will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.", - "externalDocs": { - "url": "https://aka.ms/azure-search-encryption-with-cmk" - } - }, - "@odata.etag": { - "x-ms-client-name": "ETag", - "type": "string", - "description": "The ETag of the index." - } - }, - "required": [ - "name", - "fields" - ], - "description": "Represents a search index definition, which describes the fields and search behavior of an index." - }, - "IndexGetStatisticsResult": { - "properties": { - "documentCount": { - "type": "integer", - "format": "int64", - "x-nullable": false, - "readOnly": true, - "description": "The number of documents in the index." - }, - "storageSize": { - "type": "integer", - "format": "int64", - "x-nullable": false, - "readOnly": true, - "description": "The amount of storage in bytes consumed by the index." - } - }, - "description": "Statistics for a given index. Statistics are collected periodically and are not guaranteed to always be up-to-date." - }, - "IndexListResult": { - "properties": { - "value": { - "x-ms-client-name": "Indexes", - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/Index" - }, - "description": "The indexes in the Search service." - } - }, - "description": "Response from a List Indexes request. If successful, it includes the full definitions of all indexes." - }, - "Skillset": { - "properties": { - "name": { - "type": "string", - "description": "The name of the skillset." - }, - "description": { - "type": "string", - "description": "The description of the skillset." - }, - "skills": { - "type": "array", - "items": { - "$ref": "#/definitions/Skill" - }, - "description": "A list of skills in the skillset." - }, - "cognitiveServices": { - "$ref": "#/definitions/CognitiveServices", - "description": "Details about cognitive services to be used when running skills." - }, - "@odata.etag": { - "x-ms-client-name": "ETag", - "type": "string", - "description": "The ETag of the skillset." - } - }, - "required": [ - "name", - "description", - "skills" - ], - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/cognitive-search-tutorial-blob" - }, - "description": "A list of skills." - }, - "CognitiveServices": { - "discriminator": "@odata.type", - "properties": { - "@odata.type": { - "type": "string" - }, - "description": { - "type": "string" - } - }, - "required": [ - "@odata.type" - ], - "description": "Abstract base class for describing any cognitive service resource attached to the skillset." - }, - "DefaultCognitiveServices": { - "description": "An empty object that represents the default cognitive service resource for a skillset.", - "x-ms-discriminator-value": "#Microsoft.Azure.Search.DefaultCognitiveServices", - "allOf": [ - { - "$ref": "#/definitions/CognitiveServices" - } - ] - }, - "CognitiveServicesByKey": { - "description": "A cognitive service resource provisioned with a key that is attached to a skillset.", - "x-ms-discriminator-value": "#Microsoft.Azure.Search.CognitiveServicesByKey", - "allOf": [ - { - "$ref": "#/definitions/CognitiveServices" - } - ], - "properties": { - "key": { - "type": "string" - } - }, - "required": [ - "key" - ] - }, - "Skill": { - "discriminator": "@odata.type", - "properties": { - "@odata.type": { - "type": "string" - }, - "name": { - "type": "string", - "description": "The name of the skill which uniquely identifies it within the skillset. A skill with no name defined will be given a default name of its 1-based index in the skills array, prefixed with the character '#'." - }, - "description": { - "type": "string", - "description": "The description of the skill which describes the inputs, outputs, and usage of the skill." - }, - "context": { - "type": "string", - "description": "Represents the level at which operations take place, such as the document root or document content (for example, /document or /document/content). The default is /document." - }, - "inputs": { - "type": "array", - "items": { - "$ref": "#/definitions/InputFieldMappingEntry" - }, - "description": "Inputs of the skills could be a column in the source data set, or the output of an upstream skill." - }, - "outputs": { - "type": "array", - "items": { - "$ref": "#/definitions/OutputFieldMappingEntry" - }, - "description": "The output of a skill is either a field in a search index, or a value that can be consumed as an input by another skill." - } - }, - "required": [ - "@odata.type", - "inputs", - "outputs" - ], - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/cognitive-search-predefined-skills" - }, - "description": "Abstract base class for skills." - }, - "InputFieldMappingEntry": { - "properties": { - "name": { - "type": "string", - "description": "The name of the input." - }, - "source": { - "type": "string", - "description": "The source of the input." - }, - "sourceContext": { - "type": "string", - "description": "The source context used for selecting recursive inputs." - }, - "inputs": { - "type": "array", - "items": { - "$ref": "#/definitions/InputFieldMappingEntry" - }, - "description": "The recursive inputs used when creating a complex type." - } - }, - "required": [ - "name" - ], - "description": "Input field mapping for a skill." - }, - "OutputFieldMappingEntry": { - "properties": { - "name": { - "type": "string", - "description": "The name of the output defined by the skill." - }, - "targetName": { - "type": "string", - "description": "The target name of the output. It is optional and default to name." - } - }, - "required": [ - "name" - ], - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/naming-rules" - }, - "description": "Output field mapping for a skill." - }, - "ConditionalSkill": { - "x-ms-discriminator-value": "#Microsoft.Skills.Util.ConditionalSkill", - "allOf": [ - { - "$ref": "#/definitions/Skill" - } - ], - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-conditional" - }, - "description": "A skill that enables scenarios that require a Boolean operation to determine the data to assign to an output." - }, - "KeyPhraseExtractionSkill": { - "x-ms-discriminator-value": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", - "allOf": [ - { - "$ref": "#/definitions/Skill" - } - ], - "properties": { - "defaultLanguageCode": { - "$ref": "#/definitions/KeyPhraseExtractionSkillLanguage", - "description": "A value indicating which language code to use. Default is en." - }, - "maxKeyPhraseCount": { - "type": "integer", - "format": "int32", - "x-nullable": true, - "description": "A number indicating how many key phrases to return. If absent, all identified key phrases will be returned." - } - }, - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-keyphrases" - }, - "description": "A skill that uses text analytics for key phrase extraction." - }, - "OcrSkill": { - "x-ms-discriminator-value": "#Microsoft.Skills.Vision.OcrSkill", - "allOf": [ - { - "$ref": "#/definitions/Skill" - } - ], - "properties": { - "textExtractionAlgorithm": { - "$ref": "#/definitions/TextExtractionAlgorithm", - "description": "A value indicating which algorithm to use for extracting text. Default is printed." - }, - "defaultLanguageCode": { - "$ref": "#/definitions/OcrSkillLanguage", - "description": "A value indicating which language code to use. Default is en." - }, - "detectOrientation": { - "x-ms-client-name": "ShouldDetectOrientation", - "type": "boolean", - "default": false, - "description": "A value indicating to turn orientation detection on or not. Default is false." - } - }, - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-ocr" - }, - "description": "A skill that extracts text from image files." - }, - "ImageAnalysisSkill": { - "x-ms-discriminator-value": "#Microsoft.Skills.Vision.ImageAnalysisSkill", - "allOf": [ - { - "$ref": "#/definitions/Skill" - } - ], - "properties": { - "defaultLanguageCode": { - "$ref": "#/definitions/ImageAnalysisSkillLanguage", - "description": "A value indicating which language code to use. Default is en." - }, - "visualFeatures": { - "type": "array", - "items": { - "$ref": "#/definitions/VisualFeature", - "x-nullable": false - }, - "description": "A list of visual features." - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/ImageDetail", - "x-nullable": false - }, - "description": "A string indicating which domain-specific details to return." - } - }, - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-image-analysis" - }, - "description": "A skill that analyzes image files. It extracts a rich set of visual features based on the image content." - }, - "LanguageDetectionSkill": { - "x-ms-discriminator-value": "#Microsoft.Skills.Text.LanguageDetectionSkill", - "allOf": [ - { - "$ref": "#/definitions/Skill" - } - ], - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-language-detection" - }, - "description": "A skill that detects the language of input text and reports a single language code for every document submitted on the request. The language code is paired with a score indicating the confidence of the analysis." - }, - "ShaperSkill": { - "x-ms-discriminator-value": "#Microsoft.Skills.Util.ShaperSkill", - "allOf": [ - { - "$ref": "#/definitions/Skill" - } - ], - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-shaper" - }, - "description": "A skill for reshaping the outputs. It creates a complex type to support composite fields (also known as multipart fields)." - }, - "MergeSkill": { - "x-ms-discriminator-value": "#Microsoft.Skills.Text.MergeSkill", - "allOf": [ - { - "$ref": "#/definitions/Skill" - } - ], - "properties": { - "insertPreTag": { - "type": "string", - "default": " ", - "description": "The tag indicates the start of the merged text. By default, the tag is an empty space." - }, - "insertPostTag": { - "type": "string", - "default": " ", - "description": "The tag indicates the end of the merged text. By default, the tag is an empty space." - } - }, - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-textmerger" - }, - "description": "A skill for merging two or more strings into a single unified string, with an optional user-defined delimiter separating each component part." - }, - "EntityRecognitionSkill": { - "x-ms-discriminator-value": "#Microsoft.Skills.Text.EntityRecognitionSkill", - "allOf": [ - { - "$ref": "#/definitions/Skill" - } - ], - "properties": { - "categories": { - "type": "array", - "items": { - "$ref": "#/definitions/EntityCategory", - "x-nullable": false - }, - "description": "A list of entity categories that should be extracted." - }, - "defaultLanguageCode": { - "$ref": "#/definitions/EntityRecognitionSkillLanguage", - "description": "A value indicating which language code to use. Default is en." - }, - "includeTypelessEntities": { - "type": "boolean", - "x-nullable": true, - "description": "Determines whether or not to include entities which are well known but don't conform to a pre-defined type. If this configuration is not set (default), set to null or set to false, entities which don't conform to one of the pre-defined types will not be surfaced." - }, - "minimumPrecision": { - "type": "number", - "format": "double", - "x-nullable": true, - "description": "A value between 0 and 1 that be used to only include entities whose confidence score is greater than the value specified. If not set (default), or if explicitly set to null, all entities will be included." - } - }, - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-entity-recognition" - }, - "description": "Text analytics entity recognition." - }, - "SentimentSkill": { - "x-ms-discriminator-value": "#Microsoft.Skills.Text.SentimentSkill", - "allOf": [ - { - "$ref": "#/definitions/Skill" - } - ], - "properties": { - "defaultLanguageCode": { - "$ref": "#/definitions/SentimentSkillLanguage", - "description": "A value indicating which language code to use. Default is en." - } - }, - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-sentiment" - }, - "description": "Text analytics positive-negative sentiment analysis, scored as a floating point value in a range of zero to 1." - }, - "SplitSkill": { - "x-ms-discriminator-value": "#Microsoft.Skills.Text.SplitSkill", - "allOf": [ - { - "$ref": "#/definitions/Skill" - } - ], - "properties": { - "defaultLanguageCode": { - "$ref": "#/definitions/SplitSkillLanguage", - "description": "A value indicating which language code to use. Default is en." - }, - "textSplitMode": { - "$ref": "#/definitions/TextSplitMode", - "x-nullable": false, - "description": "A value indicating which split mode to perform." - }, - "maximumPageLength": { - "type": "integer", - "format": "int32", - "x-nullable": true, - "description": "The desired maximum page length. Default is 10000." - } - }, - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-textsplit" - }, - "description": "A skill to split a string into chunks of text." - }, - "TextTranslationSkill": { - "x-ms-discriminator-value": "#Microsoft.Skills.Text.TranslationSkill", - "allOf": [ - { - "$ref": "#/definitions/Skill" - } - ], - "properties": { - "defaultToLanguageCode": { - "$ref": "#/definitions/TextTranslationSkillLanguage", - "description": "The language code to translate documents into for documents that don't specify the to language explicitly. " - }, - "defaultFromLanguageCode": { - "$ref": "#/definitions/TextTranslationSkillLanguage", - "description": "The language code to translate documents from for documents that don't specify the from language explicitly." - }, - "suggestedFrom": { - "$ref": "#/definitions/TextTranslationSkillLanguage", - "description": "The language code to translate documents from when neither the fromLanguageCode input nor the defaultFromLanguageCode parameter are provided, and the automatic language detection is unsuccessful. Default is en." - } - }, - "required": [ - "defaultToLanguageCode" - ], - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-text-translation" - }, - "description": "A skill to translate text from one language to another." - }, - "WebApiSkill": { - "x-ms-discriminator-value": "#Microsoft.Skills.Custom.WebApiSkill", - "allOf": [ - { - "$ref": "#/definitions/Skill" - } - ], - "properties": { - "uri": { - "type": "string", - "description": "The url for the Web API." - }, - "httpHeaders": { - "$ref": "#/definitions/WebApiHttpHeaders", - "description": "The headers required to make the http request." - }, - "httpMethod": { - "type": "string", - "description": "The method for the http request." - }, - "timeout": { - "type": "string", - "format": "duration", - "description": "The desired timeout for the request. Default is 30 seconds." - }, - "batchSize": { - "type": "integer", - "format": "int32", - "x-nullable": true, - "description": "The desired batch size which indicates number of documents." - }, - "degreeOfParallelism": { - "type": "integer", - "format": "int32", - "x-nullable": true, - "description": "If set, the number of parallel calls that can be made to the Web API." - } - }, - "required": [ - "uri" - ], - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/cognitive-search-custom-skill-web-api" - }, - "description": "A skill that can call a Web API endpoint, allowing you to extend a skillset by having it call your custom code." - }, - "WebApiHttpHeaders": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "A dictionary of http request headers." - }, - "SkillsetListResult": { - "properties": { - "value": { - "x-ms-client-name": "Skillsets", - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/Skillset" - }, - "description": "The skillsets defined in the Search service." - } - }, - "description": "Response from a list Skillset request. If successful, it includes the full definitions of all skillsets." - }, - "TextExtractionAlgorithm": { - "type": "string", - "enum": [ - "printed", - "handwritten" - ], - "x-ms-enum": { - "name": "TextExtractionAlgorithm", - "modelAsString": false - }, - "description": "A value indicating which algorithm to use. Default is printed." - }, - "TextSplitMode": { - "type": "string", - "enum": [ - "pages", - "sentences" - ], - "x-ms-enum": { - "name": "TextSplitMode", - "modelAsString": false - }, - "description": "A value indicating which split mode to perform." - }, - "VisualFeature": { - "type": "string", - "enum": [ - "categories", - "tags", - "description", - "faces", - "imageType", - "color" - ], - "x-ms-enum": { - "name": "VisualFeature", - "modelAsString": false - }, - "description": "The strings indicating what visual feature types to return." - }, - "ImageDetail": { - "type": "string", - "enum": [ - "celebrities", - "landmarks" - ], - "x-ms-enum": { - "name": "ImageDetail", - "modelAsString": false - }, - "description": "A string indicating which domain-specific details to return." - }, - "EntityCategory": { - "type": "string", - "enum": [ - "location", - "organization", - "person", - "quantity", - "datetime", - "url", - "email" - ], - "x-ms-enum": { - "name": "EntityCategory", - "modelAsString": false - }, - "description": "A string indicating what entity categories to return." - }, - "SentimentSkillLanguage": { - "type": "string", - "enum": [ - "da", - "nl", - "en", - "fi", - "fr", - "de", - "el", - "it", - "no", - "pl", - "pt-PT", - "ru", - "es", - "sv", - "tr" - ], - "x-ms-enum": { - "name": "SentimentSkillLanguage", - "modelAsString": true, - "values": [ - { - "value": "da", - "description": "Danish" - }, - { - "value": "nl", - "description": "Dutch" - }, - { - "value": "en", - "description": "English" - }, - { - "value": "fi", - "description": "Finnish" - }, - { - "value": "fr", - "description": "French" - }, - { - "value": "de", - "description": "German" - }, - { - "value": "el", - "description": "Greek" - }, - { - "value": "it", - "description": "Italian" - }, - { - "value": "no", - "description": "Norwegian (Bokmaal)" - }, - { - "value": "pl", - "description": "Polish" - }, - { - "value": "pt-PT", - "description": "Portuguese (Portugal)" - }, - { - "value": "ru", - "description": "Russian" - }, - { - "value": "es", - "description": "Spanish" - }, - { - "value": "sv", - "description": "Swedish" - }, - { - "value": "tr", - "description": "Turkish" - } - ] - }, - "description": "The language codes supported for input text by SentimentSkill." - }, - "KeyPhraseExtractionSkillLanguage": { - "type": "string", - "enum": [ - "da", - "nl", - "en", - "fi", - "fr", - "de", - "it", - "ja", - "ko", - "no", - "pl", - "pt-PT", - "pt-BR", - "ru", - "es", - "sv" - ], - "x-ms-enum": { - "name": "KeyPhraseExtractionSkillLanguage", - "modelAsString": true, - "values": [ - { - "value": "da", - "description": "Danish" - }, - { - "value": "nl", - "description": "Dutch" - }, - { - "value": "en", - "description": "English" - }, - { - "value": "fi", - "description": "Finnish" - }, - { - "value": "fr", - "description": "French" - }, - { - "value": "de", - "description": "German" - }, - { - "value": "it", - "description": "Italian" - }, - { - "value": "ja", - "description": "Japanese" - }, - { - "value": "ko", - "description": "Korean" - }, - { - "value": "no", - "description": "Norwegian (Bokmaal)" - }, - { - "value": "pl", - "description": "Polish" - }, - { - "value": "pt-PT", - "description": "Portuguese (Portugal)" - }, - { - "value": "pt-BR", - "description": "Portuguese (Brazil)" - }, - { - "value": "ru", - "description": "Russian" - }, - { - "value": "es", - "description": "Spanish" - }, - { - "value": "sv", - "description": "Swedish" - } - ] - }, - "description": "The language codes supported for input text by KeyPhraseExtractionSkill." - }, - "OcrSkillLanguage": { - "type": "string", - "enum": [ - "zh-Hans", - "zh-Hant", - "cs", - "da", - "nl", - "en", - "fi", - "fr", - "de", - "el", - "hu", - "it", - "ja", - "ko", - "nb", - "pl", - "pt", - "ru", - "es", - "sv", - "tr", - "ar", - "ro", - "sr-Cyrl", - "sr-Latn", - "sk" - ], - "x-ms-enum": { - "name": "OcrSkillLanguage", - "modelAsString": true, - "values": [ - { - "value": "zh-Hans", - "description": "Chinese-Simplified" - }, - { - "value": "zh-Hant", - "description": "Chinese-Traditional" - }, - { - "value": "cs", - "description": "Czech" - }, - { - "value": "da", - "description": "Danish" - }, - { - "value": "nl", - "description": "Dutch" - }, - { - "value": "en", - "description": "English" - }, - { - "value": "fi", - "description": "Finnish" - }, - { - "value": "fr", - "description": "French" - }, - { - "value": "de", - "description": "German" - }, - { - "value": "el", - "description": "Greek" - }, - { - "value": "hu", - "description": "Hungarian" - }, - { - "value": "it", - "description": "Italian" - }, - { - "value": "ja", - "description": "Japanese" - }, - { - "value": "ko", - "description": "Korean" - }, - { - "value": "nb", - "description": "Norwegian (Bokmaal)" - }, - { - "value": "pl", - "description": "Polish" - }, - { - "value": "pt", - "description": "Portuguese" - }, - { - "value": "ru", - "description": "Russian" - }, - { - "value": "es", - "description": "Spanish" - }, - { - "value": "sv", - "description": "Swedish" - }, - { - "value": "tr", - "description": "Turkish" - }, - { - "value": "ar", - "description": "Arabic" - }, - { - "value": "ro", - "description": "Romanian" - }, - { - "value": "sr-Cyrl", - "description": "Serbian (Cyrillic, Serbia)" - }, - { - "value": "sr-Latn", - "description": "Serbian (Latin, Serbia)" - }, - { - "value": "sk", - "description": "Slovak" - } - ] - }, - "description": "The language codes supported for input by OcrSkill." - }, - "SplitSkillLanguage": { - "type": "string", - "enum": [ - "da", - "de", - "en", - "es", - "fi", - "fr", - "it", - "ko", - "pt" - ], - "x-ms-enum": { - "name": "SplitSkillLanguage", - "modelAsString": true, - "values": [ - { - "value": "da", - "description": "Danish" - }, - { - "value": "de", - "description": "German" - }, - { - "value": "en", - "description": "English" - }, - { - "value": "es", - "description": "Spanish" - }, - { - "value": "fi", - "description": "Finnish" - }, - { - "value": "fr", - "description": "French" - }, - { - "value": "it", - "description": "Italian" - }, - { - "value": "ko", - "description": "Korean" - }, - { - "value": "pt", - "description": "Portuguese" - } - ] - }, - "description": "The language codes supported for input text by SplitSkill." - }, - "EntityRecognitionSkillLanguage": { - "type": "string", - "enum": [ - "ar", - "cs", - "zh-Hans", - "zh-Hant", - "da", - "nl", - "en", - "fi", - "fr", - "de", - "el", - "hu", - "it", - "ja", - "ko", - "no", - "pl", - "pt-PT", - "pt-BR", - "ru", - "es", - "sv", - "tr" - ], - "x-ms-enum": { - "name": "EntityRecognitionSkillLanguage", - "modelAsString": true, - "values": [ - { - "value": "ar", - "description": "Arabic" - }, - { - "value": "cs", - "description": "Czech" - }, - { - "value": "zh-Hans", - "description": "Chinese-Simplified" - }, - { - "value": "zh-Hant", - "description": "Chinese-Traditional" - }, - { - "value": "da", - "description": "Danish" - }, - { - "value": "nl", - "description": "Dutch" - }, - { - "value": "en", - "description": "English" - }, - { - "value": "fi", - "description": "Finnish" - }, - { - "value": "fr", - "description": "French" - }, - { - "value": "de", - "description": "German" - }, - { - "value": "el", - "description": "Greek" - }, - { - "value": "hu", - "description": "Hungarian" - }, - { - "value": "it", - "description": "Italian" - }, - { - "value": "ja", - "description": "Japanese" - }, - { - "value": "ko", - "description": "Korean" - }, - { - "value": "no", - "description": "Norwegian (Bokmaal)" - }, - { - "value": "pl", - "description": "Polish" - }, - { - "value": "pt-PT", - "description": "Portuguese (Portugal)" - }, - { - "value": "pt-BR", - "description": "Portuguese (Brazil)" - }, - { - "value": "ru", - "description": "Russian" - }, - { - "value": "es", - "description": "Spanish" - }, - { - "value": "sv", - "description": "Swedish" - }, - { - "value": "tr", - "description": "Turkish" - } - ] - }, - "description": "The language codes supported for input text by EntityRecognitionSkill." - }, - "TextTranslationSkillLanguage": { - "type": "string", - "enum": [ - "af", - "ar", - "bn", - "bs", - "bg", - "yue", - "ca", - "zh-Hans", - "zh-Hant", - "hr", - "cs", - "da", - "nl", - "en", - "et", - "fj", - "fil", - "fi", - "fr", - "de", - "el", - "ht", - "he", - "hi", - "mww", - "hu", - "is", - "id", - "it", - "ja", - "sw", - "tlh", - "ko", - "lv", - "lt", - "mg", - "ms", - "mt", - "nb", - "fa", - "pl", - "pt", - "otq", - "ro", - "ru", - "sm", - "sr-Cyrl", - "sr-Latn", - "sk", - "sl", - "es", - "sv", - "ty", - "ta", - "te", - "th", - "to", - "tr", - "uk", - "ur", - "vi", - "cy", - "yua" - ], - "x-ms-enum": { - "name": "TextTranslationSkillLanguage", - "modelAsString": true, - "values": [ - { - "value": "af", - "description": "Afrikaans" - }, - { - "value": "ar", - "description": "Arabic" - }, - { - "value": "bn", - "description": "Bangla" - }, - { - "value": "bs", - "description": "Bosnian (Latin)" - }, - { - "value": "bg", - "description": "Bulgarian" - }, - { - "value": "yue", - "description": "Cantonese (Traditional)" - }, - { - "value": "ca", - "description": "Catalan" - }, - { - "value": "zh-Hans", - "description": "Chinese Simplified" - }, - { - "value": "zh-Hant", - "description": "Chinese Traditional" - }, - { - "value": "hr", - "description": "Croatian" - }, - { - "value": "cs", - "description": "Czech" - }, - { - "value": "da", - "description": "Danish" - }, - { - "value": "nl", - "description": "Dutch" - }, - { - "value": "en", - "description": "English" - }, - { - "value": "et", - "description": "Estonian" - }, - { - "value": "fj", - "description": "Fijian" - }, - { - "value": "fil", - "description": "Filipino" - }, - { - "value": "fi", - "description": "Finnish" - }, - { - "value": "fr", - "description": "French" - }, - { - "value": "de", - "description": "German" - }, - { - "value": "el", - "description": "Greek" - }, - { - "value": "ht", - "description": "Haitian Creole" - }, - { - "value": "he", - "description": "Hebrew" - }, - { - "value": "hi", - "description": "Hindi" - }, - { - "value": "mww", - "description": "Hmong Daw" - }, - { - "value": "hu", - "description": "Hungarian" - }, - { - "value": "is", - "description": "Icelandic" - }, - { - "value": "id", - "description": "Indonesian" - }, - { - "value": "it", - "description": "Italian" - }, - { - "value": "ja", - "description": "Japanese" - }, - { - "value": "sw", - "description": "Kiswahili" - }, - { - "value": "tlh", - "description": "Klingon" - }, - { - "value": "ko", - "description": "Korean" - }, - { - "value": "lv", - "description": "Latvian" - }, - { - "value": "lt", - "description": "Lithuanian" - }, - { - "value": "mg", - "description": "Malagasy" - }, - { - "value": "ms", - "description": "Malay" - }, - { - "value": "mt", - "description": "Maltese" - }, - { - "value": "nb", - "description": "Norwegian" - }, - { - "value": "fa", - "description": "Persian" - }, - { - "value": "pl", - "description": "Polish" - }, - { - "value": "pt", - "description": "Portuguese" - }, - { - "value": "otq", - "description": "Queretaro Otomi" - }, - { - "value": "ro", - "description": "Romanian" - }, - { - "value": "ru", - "description": "Russian" - }, - { - "value": "sm", - "description": "Samoan" - }, - { - "value": "sr-Cyrl", - "description": "Serbian (Cyrillic)" - }, - { - "value": "sr-Latn", - "description": "Serbian (Latin)" - }, - { - "value": "sk", - "description": "Slovak" - }, - { - "value": "sl", - "description": "Slovenian" - }, - { - "value": "es", - "description": "Spanish" - }, - { - "value": "sv", - "description": "Swedish" - }, - { - "value": "ty", - "description": "Tahitian" - }, - { - "value": "ta", - "description": "Tamil" - }, - { - "value": "te", - "description": "Telugu" - }, - { - "value": "th", - "description": "Thai" - }, - { - "value": "to", - "description": "Tongan" - }, - { - "value": "tr", - "description": "Turkish" - }, - { - "value": "uk", - "description": "Ukrainian" - }, - { - "value": "ur", - "description": "Urdu" - }, - { - "value": "vi", - "description": "Vietnamese" - }, - { - "value": "cy", - "description": "Welsh" - }, - { - "value": "yua", - "description": "Yucatec Maya" - } - ] - }, - "description": "The language codes supported for input text by TextTranslationSkill." - }, - "ImageAnalysisSkillLanguage": { - "type": "string", - "enum": [ - "en", - "zh" - ], - "x-ms-enum": { - "name": "ImageAnalysisSkillLanguage", - "modelAsString": true, - "values": [ - { - "value": "en", - "description": "English" - }, - { - "value": "zh", - "description": "Chinese" - } - ] - }, - "description": "The language codes supported for input by ImageAnalysisSkill." - }, - "SynonymMap": { - "properties": { - "name": { - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Naming-rules" - }, - "type": "string", - "description": "The name of the synonym map." - }, - "format": { - "type": "string", - "enum": [ - "solr" - ], - "x-ms-enum": { - "name": "SynonymMapFormat", - "modelAsString": false - }, - "description": "The format of the synonym map. Only the 'solr' format is currently supported." - }, - "synonyms": { - "type": "string", - "description": "A series of synonym rules in the specified synonym map format. The rules must be separated by newlines.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Synonym-Map#SynonymMapFormat" - } - }, - "encryptionKey": { - "$ref": "#/definitions/EncryptionKey", - "description": "A description of an encryption key that you create in Azure Key Vault. This key is used to provide an additional level of encryption-at-rest for your data when you want full assurance that no one, not even Microsoft, can decrypt your data in Azure Cognitive Search. Once you have encrypted your data, it will always remain encrypted. Azure Cognitive Search will ignore attempts to set this property to null. You can change this property as needed if you want to rotate your encryption key; Your data will be unaffected. Encryption with customer-managed keys is not available for free search services, and is only available for paid services created on or after January 1, 2019.", - "externalDocs": { - "url": "https://aka.ms/azure-search-encryption-with-cmk" - } - }, - "@odata.etag": { - "x-ms-client-name": "ETag", - "type": "string", - "description": "The ETag of the synonym map." - } - }, - "required": [ - "name", - "format", - "synonyms" - ], - "description": "Represents a synonym map definition." - }, - "SynonymMapListResult": { - "properties": { - "value": { - "x-ms-client-name": "SynonymMaps", - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/SynonymMap" - }, - "description": "The synonym maps in the Search service." - } - }, - "description": "Response from a List SynonymMaps request. If successful, it includes the full definitions of all synonym maps." - }, - "EncryptionKey": { - "properties": { - "keyVaultKeyName": { - "type": "string", - "description": "The name of your Azure Key Vault key to be used to encrypt your data at rest." - }, - "keyVaultKeyVersion": { - "type": "string", - "description": "The version of your Azure Key Vault key to be used to encrypt your data at rest." - }, - "keyVaultUri": { - "type": "string", - "description": "The URI of your Azure Key Vault, also referred to as DNS name, that contains the key to be used to encrypt your data at rest. An example URI might be https://my-keyvault-name.vault.azure.net." - }, - "accessCredentials": { - "$ref": "#/definitions/AzureActiveDirectoryApplicationCredentials", - "description": "Optional Azure Active Directory credentials used for accessing your Azure Key Vault. Not required if using managed identity instead.", - "externalDocs": { - "url": "https://aka.ms/azure-search-msi" - } - } - }, - "required": [ - "keyVaultKeyName", - "keyVaultKeyVersion", - "keyVaultUri" - ], - "description": "A customer-managed encryption key in Azure Key Vault. Keys that you create and manage can be used to encrypt or decrypt data-at-rest in Azure Cognitive Search, such as indexes and synonym maps." - }, - "AzureActiveDirectoryApplicationCredentials": { - "properties": { - "applicationId": { - "type": "string", - "description": "An AAD Application ID that was granted the required access permissions to the Azure Key Vault that is to be used when encrypting your data at rest. The Application ID should not be confused with the Object ID for your AAD Application." - }, - "applicationSecret": { - "type": "string", - "description": "The authentication key of the specified AAD application." - } - }, - "required": [ - "applicationId" - ], - "description": "Credentials of a registered application created for your search service, used for authenticated access to the encryption keys stored in Azure Key Vault." - }, - "ServiceStatistics": { - "properties": { - "counters": { - "$ref": "#/definitions/ServiceCounters", - "description": "Service level resource counters." - }, - "limits": { - "$ref": "#/definitions/ServiceLimits", - "description": "Service level general limits." - } - }, - "description": "Response from a get service statistics request. If successful, it includes service level counters and limits." - }, - "ServiceCounters": { - "properties": { - "documentCount": { - "x-ms-client-name": "documentCounter", - "$ref": "#/definitions/ResourceCounter", - "description": "Total number of documents across all indexes in the service." - }, - "indexesCount": { - "x-ms-client-name": "indexCounter", - "$ref": "#/definitions/ResourceCounter", - "description": "Total number of indexes." - }, - "indexersCount": { - "x-ms-client-name": "indexerCounter", - "$ref": "#/definitions/ResourceCounter", - "description": "Total number of indexers." - }, - "dataSourcesCount": { - "x-ms-client-name": "dataSourceCounter", - "$ref": "#/definitions/ResourceCounter", - "description": "Total number of data sources." - }, - "storageSize": { - "x-ms-client-name": "storageSizeCounter", - "$ref": "#/definitions/ResourceCounter", - "description": "Total size of used storage in bytes." - }, - "synonymMaps": { - "x-ms-client-name": "synonymMapCounter", - "$ref": "#/definitions/ResourceCounter", - "description": "Total number of synonym maps." - } - }, - "description": "Represents service-level resource counters and quotas." - }, - "ServiceLimits": { - "properties": { - "maxFieldsPerIndex": { - "type": "integer", - "format": "int32", - "x-nullable": true, - "description": "The maximum allowed fields per index." - }, - "maxFieldNestingDepthPerIndex": { - "type": "integer", - "format": "int32", - "x-nullable": true, - "description": "The maximum depth which you can nest sub-fields in an index, including the top-level complex field. For example, a/b/c has a nesting depth of 3." - }, - "maxComplexCollectionFieldsPerIndex": { - "type": "integer", - "format": "int32", - "x-nullable": true, - "description": "The maximum number of fields of type Collection(Edm.ComplexType) allowed in an index." - }, - "maxComplexObjectsInCollectionsPerDocument": { - "type": "integer", - "format": "int32", - "x-nullable": true, - "description": "The maximum number of objects in complex collections allowed per document." - } - }, - "description": "Represents various service level limits." - }, - "ResourceCounter": { - "properties": { - "usage": { - "type": "integer", - "format": "int64", - "x-nullable": false, - "description": "The resource usage amount." - }, - "quota": { - "type": "integer", - "format": "int64", - "x-nullable": true, - "description": "The resource amount quota." - } - }, - "description": "Represents a resource's usage and quota." - } - }, - "parameters": { - "ApiVersionParameter": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "Client Api Version." - }, - "ClientRequestIdParameter": { - "name": "client-request-id", - "in": "header", - "required": false, - "type": "string", - "format": "uuid", - "description": "The tracking ID sent with the request to help with debugging.", - "x-ms-client-request-id": true, - "x-ms-parameter-grouping": { - "name": "search-request-options" - }, - "x-ms-parameter-location": "method" - }, - "IfMatchParameter": { - "name": "If-Match", - "in": "header", - "required": false, - "type": "string", - "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", - "x-ms-parameter-grouping": { - "name": "access-condition" - }, - "x-ms-parameter-location": "method" - }, - "IfNoneMatchParameter": { - "name": "If-None-Match", - "in": "header", - "required": false, - "type": "string", - "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", - "x-ms-parameter-grouping": { - "name": "access-condition" - }, - "x-ms-parameter-location": "method" - }, - "PreferHeaderParameter": { - "name": "Prefer", - "in": "header", - "required": true, - "type": "string", - "enum": [ - "return=representation" - ], - "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", - "x-ms-parameter-location": "method" - }, - "SearchServiceNameParameter": { - "name": "searchServiceName", - "in": "path", - "required": true, - "type": "string", - "x-ms-skip-url-encoding": true, - "description": "The name of the search service.", - "x-ms-parameter-location": "client" - }, - "SearchDnsSuffixParameter": { - "name": "searchDnsSuffix", - "in": "path", - "required": true, - "type": "string", - "default": "search.windows.net", - "x-ms-skip-url-encoding": true, - "description": "The DNS suffix of the search service. The default is search.windows.net.", - "x-ms-parameter-location": "client" - } - } -} diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceListDataSources.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceListDataSources.json deleted file mode 100644 index 879b3262bfdc..000000000000 --- a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceListDataSources.json +++ /dev/null @@ -1,49 +0,0 @@ -{ - "parameters": { - "searchServiceName": "myservice", - "searchDnsSuffix": "search.windows.net", - "api-version": "2019-05-06" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "name": "mydocdbdatasource", - "description": "My Cosmos DB data source.", - "type": "cosmosdb", - "credentials": { - "connectionString": null - }, - "container": { - "name": "myDocDbCollectionId", - "query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts" - }, - "dataChangeDetectionPolicy": { - "@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", - "highWaterMarkColumnName": "_ts" - }, - "dataDeletionDetectionPolicy": { - "@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", - "softDeleteColumnName": "isDeleted", - "softDeleteMarkerValue": "true" - } - }, - { - "name": "myblobdatasource", - "description": "My Azure Blob data source.", - "type": "azureblob", - "credentials": { - "connectionString": null - }, - "container": { - "name": "mycontainer" - }, - "dataChangeDetectionPolicy": null, - "dataDeletionDetectionPolicy": null - } - ] - } - } - } -} diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceListIndexers.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceListIndexers.json deleted file mode 100644 index 97f58acd24ad..000000000000 --- a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceListIndexers.json +++ /dev/null @@ -1,67 +0,0 @@ -{ - "parameters": { - "searchServiceName": "myservice", - "searchDnsSuffix": "search.windows.net", - "api-version": "2019-05-06" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "name": "myindexer", - "description": "a cool indexer", - "dataSourceName": "mydocdbdatasource", - "targetIndexName": "orders", - "schedule": { - "interval": "PT1H", - "startTime": "2015-01-01T00:00:00Z" - }, - "parameters": { - "maxFailedItems": 10, - "maxFailedItemsPerBatch": 5 - }, - "fieldMappings": [], - "disabled": false - }, - { - "name": "myotherindexer", - "description": "another cool indexer", - "dataSourceName": "myblobdatasource", - "targetIndexName": "orders", - "parameters": { - "maxFailedItems": 10, - "maxFailedItemsPerBatch": 5, - "batchSize": 15 - }, - "fieldMappings": [ - { - "sourceFieldName": "PersonName", - "targetFieldName": "FirstName", - "mappingFunction": { - "name": "extractTokenAtPosition", - "parameters": { - "delimiter": " ", - "position": 0 - } - } - }, - { - "sourceFieldName": "PersonName", - "targetFieldName": "LastName", - "mappingFunction": { - "name": "extractTokenAtPosition", - "parameters": { - "delimiter": " ", - "position": 1 - } - } - } - ], - "disabled": false - } - ] - } - } - } -} diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceListIndexes.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceListIndexes.json deleted file mode 100644 index 8fd4a3b49515..000000000000 --- a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceListIndexes.json +++ /dev/null @@ -1,280 +0,0 @@ -{ - "parameters": { - "searchServiceName": "myservice", - "searchDnsSuffix": "search.windows.net", - "api-version": "2019-05-06" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "name": "hotels", - "fields": [ - { - "name": "hotelId", - "type": "Edm.String", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": true, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "synonymMaps": [] - }, - { - "name": "baseRate", - "type": "Edm.Double", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "synonymMaps": [] - }, - { - "name": "description", - "type": "Edm.String", - "searchable": true, - "filterable": false, - "retrievable": true, - "sortable": false, - "facetable": false, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "synonymMaps": [] - }, - { - "name": "description_fr", - "type": "Edm.String", - "searchable": true, - "filterable": false, - "retrievable": true, - "sortable": false, - "facetable": false, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": "fr.lucene", - "synonymMaps": [] - }, - { - "name": "hotelName", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "synonymMaps": [] - }, - { - "name": "category", - "type": "Edm.String", - "searchable": true, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "synonymMaps": [] - }, - { - "name": "tags", - "type": "Collection(Edm.String)", - "searchable": true, - "filterable": true, - "retrievable": true, - "sortable": false, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": "tagsAnalyzer", - "synonymMaps": [] - }, - { - "name": "parkingIncluded", - "type": "Edm.Boolean", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "synonymMaps": [] - }, - { - "name": "smokingAllowed", - "type": "Edm.Boolean", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "synonymMaps": [] - }, - { - "name": "lastRenovationDate", - "type": "Edm.DateTimeOffset", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "synonymMaps": [] - }, - { - "name": "rating", - "type": "Edm.Int32", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": true, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "synonymMaps": [] - }, - { - "name": "location", - "type": "Edm.GeographyPoint", - "searchable": false, - "filterable": true, - "retrievable": true, - "sortable": true, - "facetable": false, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "synonymMaps": [] - } - ], - "scoringProfiles": [ - { - "name": "geo", - "text": { - "weights": { - "hotelName": 5 - } - }, - "functions": [ - { - "type": "distance", - "boost": 5, - "fieldName": "location", - "interpolation": "logarithmic", - "distance": { - "referencePointParameter": "currentLocation", - "boostingDistance": 10 - } - } - ] - } - ], - "defaultScoringProfile": "geo", - "suggesters": [ - { - "name": "sg", - "searchMode": "analyzingInfixMatching", - "sourceFields": [ - "hotelName" - ] - } - ], - "analyzers": [ - { - "name": "tagsAnalyzer", - "@odata.type": "#Microsoft.Azure.Search.CustomAnalyzer", - "charFilters": [ - "html_strip" - ], - "tokenizer": "standard_v2" - } - ], - "tokenizers": [], - "tokenFilters": [], - "charFilters": [], - "corsOptions": { - "allowedOrigins": [ - "tempuri.org" - ], - "maxAgeInSeconds": 60 - } - }, - { - "name": "testindex", - "fields": [ - { - "name": "id", - "type": "Edm.String", - "searchable": false, - "filterable": false, - "retrievable": true, - "sortable": false, - "facetable": false, - "key": true, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "synonymMaps": [] - }, - { - "name": "hidden", - "type": "Edm.Double", - "searchable": false, - "filterable": true, - "retrievable": false, - "sortable": true, - "facetable": false, - "key": false, - "indexAnalyzer": null, - "searchAnalyzer": null, - "analyzer": null, - "synonymMaps": [] - } - ], - "scoringProfiles": [], - "defaultScoringProfile": null, - "suggesters": [], - "analyzers": [], - "tokenizers": [], - "tokenFilters": [], - "charFilters": [], - "corsOptions": null - } - ] - } - } - } -} diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceListSkillsets.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceListSkillsets.json deleted file mode 100644 index c0ae4f91a9ee..000000000000 --- a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceListSkillsets.json +++ /dev/null @@ -1,139 +0,0 @@ -{ - "parameters": { - "searchServiceName": "myservice", - "searchDnsSuffix": "search.windows.net", - "api-version": "2019-05-06" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "name": "demoskillset", - "description": "Extract entities, detect language and extract key-phrases", - "skills": [ - { - "@odata.type": "#Microsoft.Skills.Text.EntityRecognitionSkill", - "name": "#1", - "description": null, - "context": null, - "inputs": [ - { - "name": "text", - "source": "/document/content" - } - ], - "outputs": [ - { - "name": "organizations", - "targetName": "organizations" - } - ], - "categories": [ - "organization" - ], - "defaultLanguageCode": "en", - "minimumPrecision": 0.7 - }, - { - "@odata.type": "#Microsoft.Skills.Text.LanguageDetectionSkill", - "name": "#2", - "description": null, - "context": null, - "inputs": [ - { - "name": "text", - "source": "/document/content" - } - ], - "outputs": [ - { - "name": "languageCode", - "targetName": "languageCode" - } - ] - }, - { - "@odata.type": "#Microsoft.Skills.Text.SplitSkill", - "name": "#3", - "description": null, - "context": null, - "inputs": [ - { - "name": "text", - "source": "/document/content" - }, - { - "name": "languageCode", - "source": "/document/languageCode" - } - ], - "outputs": [ - { - "name": "textItems", - "targetName": "pages" - } - ], - "defaultLanguageCode": null, - "textSplitMode": "pages", - "maximumPageLength": 4000 - }, - { - "@odata.type": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", - "name": "#4", - "description": null, - "context": "/document/pages/*", - "inputs": [ - { - "name": "text", - "source": "/document/pages/*" - }, - { - "name": "languageCode", - "source": "/document/languageCode" - } - ], - "outputs": [ - { - "name": "keyPhrases", - "targetName": "keyPhrases" - } - ], - "defaultLanguageCode": null, - "maxKeyPhraseCount": null - }, - { - "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill", - "name": "MyCustomWebApiSkill", - "description": null, - "context": "/document", - "uri": "https://contoso.example.org", - "httpMethod": "POST", - "timeout": "PT30S", - "batchSize": 1, - "degreeOfParallelism": null, - "inputs": [ - { - "name": "text", - "source": "/document/pages/*" - }, - { - "name": "languageCode", - "source": "/document/languageCode" - } - ], - "outputs": [ - { - "name": "customresult", - "targetName": "result" - } - ], - "httpHeaders": {} - } - ] - } - ] - } - } - } -} diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceListSynonymMaps.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceListSynonymMaps.json deleted file mode 100644 index bdc56fcf80fc..000000000000 --- a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/examples/SearchServiceListSynonymMaps.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "parameters": { - "searchServiceName": "myservice", - "searchDnsSuffix": "search.windows.net", - "api-version": "2019-05-06" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "name": "mysynonymmap", - "format": "solr", - "synonyms": "United States, United States of America, USA\nWashington, Wash. => WA" - }, - { - "name": "myothersynonymmap", - "format": "solr", - "synonyms": "couch, sofa, chesterfield\npop, soda\ntoque, hat" - } - ] - } - } - } -} diff --git a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/searchservice.json b/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/searchservice.json deleted file mode 100644 index cffd68fd895c..000000000000 --- a/specification/search/data-plane/Microsoft.Azure.Search.Service/track1/stable/2019-05-06/searchservice.json +++ /dev/null @@ -1,5553 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "title": "SearchServiceClient", - "description": "Client that can be used to manage and query indexes and documents, as well as manage other resources, on a search service.", - "version": "2019-05-06", - "x-ms-code-generation-settings": { - "useDateTimeOffset": true - } - }, - "x-ms-parameterized-host": { - "hostTemplate": "https://{searchServiceName}.{searchDnsSuffix}", - "useSchemePrefix": false, - "parameters": [ - { - "$ref": "#/parameters/SearchServiceNameParameter" - }, - { - "$ref": "#/parameters/SearchDnsSuffixParameter" - } - ] - }, - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "paths": { - "/datasources('{dataSourceName}')": { - "put": { - "tags": [ - "DataSources" - ], - "operationId": "DataSources_CreateOrUpdate", - "x-ms-examples": { - "SearchServiceCreateOrUpdateDataSource": { - "$ref": "./examples/SearchServiceCreateOrUpdateDataSource.json" - } - }, - "description": "Creates a new datasource or updates a datasource if it already exists.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Update-Data-Source" - }, - "parameters": [ - { - "name": "dataSourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the datasource to create or update." - }, - { - "name": "dataSource", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/DataSource" - }, - "description": "The definition of the datasource to create or update." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/IfMatchParameter" - }, - { - "$ref": "#/parameters/IfNoneMatchParameter" - }, - { - "$ref": "#/parameters/PreferHeaderParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/DataSource" - } - }, - "201": { - "description": "", - "schema": { - "$ref": "#/definitions/DataSource" - } - } - } - }, - "delete": { - "tags": [ - "DataSources" - ], - "operationId": "DataSources_Delete", - "x-ms-examples": { - "SearchServiceDeleteDataSource": { - "$ref": "./examples/SearchServiceDeleteDataSource.json" - } - }, - "description": "Deletes a datasource.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Delete-Data-Source" - }, - "parameters": [ - { - "name": "dataSourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the datasource to delete." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/IfMatchParameter" - }, - { - "$ref": "#/parameters/IfNoneMatchParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "204": { - "description": "" - }, - "404": { - "description": "" - } - } - }, - "get": { - "tags": [ - "DataSources" - ], - "operationId": "DataSources_Get", - "x-ms-examples": { - "SearchServiceGetDataSource": { - "$ref": "./examples/SearchServiceGetDataSource.json" - } - }, - "description": "Retrieves a datasource definition.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Data-Source" - }, - "parameters": [ - { - "name": "dataSourceName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the datasource to retrieve." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/DataSource" - } - } - } - } - }, - "/datasources": { - "get": { - "tags": [ - "DataSources" - ], - "operationId": "DataSources_List", - "x-ms-examples": { - "SearchServiceListDataSources": { - "$ref": "./examples/SearchServiceListDataSources.json" - } - }, - "description": "Lists all datasources available for a search service.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/List-Data-Sources" - }, - "parameters": [ - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/DataSourceListResult" - } - } - } - }, - "post": { - "tags": [ - "DataSources" - ], - "operationId": "DataSources_Create", - "x-ms-examples": { - "SearchServiceCreateDataSource": { - "$ref": "./examples/SearchServiceCreateDataSource.json" - } - }, - "description": "Creates a new datasource.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Data-Source" - }, - "parameters": [ - { - "name": "dataSource", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/DataSource" - }, - "description": "The definition of the datasource to create." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "201": { - "description": "", - "schema": { - "$ref": "#/definitions/DataSource" - } - } - } - } - }, - "/indexers('{indexerName}')/search.reset": { - "post": { - "tags": [ - "Indexers" - ], - "operationId": "Indexers_Reset", - "x-ms-examples": { - "SearchServiceResetIndexer": { - "$ref": "./examples/SearchServiceResetIndexer.json" - } - }, - "description": "Resets the change tracking state associated with an indexer.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Reset-Indexer" - }, - "parameters": [ - { - "name": "indexerName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the indexer to reset." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "204": { - "description": "" - } - } - } - }, - "/indexers('{indexerName}')/search.run": { - "post": { - "tags": [ - "Indexers" - ], - "operationId": "Indexers_Run", - "x-ms-examples": { - "SearchServiceRunIndexer": { - "$ref": "./examples/SearchServiceRunIndexer.json" - } - }, - "description": "Runs an indexer on-demand.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Run-Indexer" - }, - "parameters": [ - { - "name": "indexerName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the indexer to run." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "202": { - "description": "" - } - } - } - }, - "/indexers('{indexerName}')": { - "put": { - "tags": [ - "Indexers" - ], - "operationId": "Indexers_CreateOrUpdate", - "x-ms-examples": { - "SearchServiceCreateOrUpdateIndexer": { - "$ref": "./examples/SearchServiceCreateOrUpdateIndexer.json" - } - }, - "description": "Creates a new indexer or updates an indexer if it already exists.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Indexer" - }, - "parameters": [ - { - "name": "indexerName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the indexer to create or update." - }, - { - "name": "indexer", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Indexer" - }, - "description": "The definition of the indexer to create or update." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/IfMatchParameter" - }, - { - "$ref": "#/parameters/IfNoneMatchParameter" - }, - { - "$ref": "#/parameters/PreferHeaderParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "201": { - "description": "", - "schema": { - "$ref": "#/definitions/Indexer" - } - }, - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/Indexer" - } - } - } - }, - "delete": { - "tags": [ - "Indexers" - ], - "operationId": "Indexers_Delete", - "x-ms-examples": { - "SearchServiceDeleteIndexer": { - "$ref": "./examples/SearchServiceDeleteIndexer.json" - } - }, - "description": "Deletes an indexer.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Delete-Indexer" - }, - "parameters": [ - { - "name": "indexerName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the indexer to delete." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/IfMatchParameter" - }, - { - "$ref": "#/parameters/IfNoneMatchParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "404": { - "description": "" - }, - "204": { - "description": "" - } - } - }, - "get": { - "tags": [ - "Indexers" - ], - "operationId": "Indexers_Get", - "x-ms-examples": { - "SearchServiceGetIndexer": { - "$ref": "./examples/SearchServiceGetIndexer.json" - } - }, - "description": "Retrieves an indexer definition.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Indexer" - }, - "parameters": [ - { - "name": "indexerName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the indexer to retrieve." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/Indexer" - } - } - } - } - }, - "/indexers": { - "get": { - "tags": [ - "Indexers" - ], - "operationId": "Indexers_List", - "x-ms-examples": { - "SearchServiceListIndexers": { - "$ref": "./examples/SearchServiceListIndexers.json" - } - }, - "description": "Lists all indexers available for a search service.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/List-Indexers" - }, - "parameters": [ - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/IndexerListResult" - } - } - } - }, - "post": { - "tags": [ - "Indexers" - ], - "operationId": "Indexers_Create", - "x-ms-examples": { - "SearchServiceCreateIndexer": { - "$ref": "./examples/SearchServiceCreateIndexer.json" - } - }, - "description": "Creates a new indexer.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Indexer" - }, - "parameters": [ - { - "name": "indexer", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Indexer" - }, - "description": "The definition of the indexer to create." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "201": { - "description": "", - "schema": { - "$ref": "#/definitions/Indexer" - } - } - } - } - }, - "/indexers('{indexerName}')/search.status": { - "get": { - "tags": [ - "Indexers" - ], - "operationId": "Indexers_GetStatus", - "x-ms-examples": { - "SearchServiceGetIndexerStatus": { - "$ref": "./examples/SearchServiceGetIndexerStatus.json" - } - }, - "description": "Returns the current status and execution history of an indexer.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Indexer-Status" - }, - "parameters": [ - { - "name": "indexerName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the indexer for which to retrieve status." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/IndexerExecutionInfo" - } - } - } - } - }, - "/skillsets('{skillsetName}')": { - "put": { - "tags": [ - "Skillsets" - ], - "operationId": "Skillsets_CreateOrUpdate", - "x-ms-examples": { - "SearchServiceCreateOrUpdateSkillset": { - "$ref": "./examples/SearchServiceCreateOrUpdateSkillset.json" - } - }, - "description": "Creates a new skillset in a search service or updates the skillset if it already exists.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/update-skillset" - }, - "parameters": [ - { - "name": "skillsetName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the skillset to create or update." - }, - { - "name": "skillset", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Skillset" - }, - "description": "The skillset containing one or more skills to create or update in a search service." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/PreferHeaderParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "The skillset is successfully updated.", - "schema": { - "$ref": "#/definitions/Skillset" - } - }, - "201": { - "description": "The skillset is successfully created.", - "schema": { - "$ref": "#/definitions/Skillset" - } - } - } - }, - "delete": { - "tags": [ - "Skillsets" - ], - "operationId": "Skillsets_Delete", - "x-ms-examples": { - "SearchServiceDeleteSkillset": { - "$ref": "./examples/SearchServiceDeleteSkillset.json" - } - }, - "description": "Deletes a skillset in a search service.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/delete-skillset" - }, - "parameters": [ - { - "name": "skillsetName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the skillset to delete." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "204": { - "description": "The skillset is successfully deleted." - }, - "404": { - "description": "The provided skillset name is not found." - } - } - }, - "get": { - "tags": [ - "Skillsets" - ], - "operationId": "Skillsets_Get", - "x-ms-examples": { - "SearchServiceGetSkillset": { - "$ref": "./examples/SearchServiceGetSkillset.json" - } - }, - "description": "Retrieves a skillset in a search service.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/get-skillset" - }, - "parameters": [ - { - "name": "skillsetName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the skillset to retrieve." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "The skillset is successfully returned.", - "schema": { - "$ref": "#/definitions/Skillset" - } - } - } - } - }, - "/skillsets": { - "get": { - "tags": [ - "Skillsets" - ], - "operationId": "Skillsets_List", - "x-ms-examples": { - "SearchServiceListSkillsets": { - "$ref": "./examples/SearchServiceListSkillsets.json" - } - }, - "description": "List all skillsets in a search service.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/list-skillset" - }, - "parameters": [ - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "The list is successfully returned.", - "schema": { - "$ref": "#/definitions/SkillsetListResult" - } - } - } - }, - "post": { - "tags": [ - "Skillsets" - ], - "operationId": "Skillsets_Create", - "x-ms-examples": { - "SearchServiceCreateSkillset": { - "$ref": "./examples/SearchServiceCreateSkillset.json" - } - }, - "description": "Creates a new skillset in a search service.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/create-skillset" - }, - "parameters": [ - { - "name": "skillset", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Skillset" - }, - "description": "The skillset containing one or more skills to create in a search service." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "201": { - "description": "The skillset is successfully created.", - "schema": { - "$ref": "#/definitions/Skillset" - } - } - } - } - }, - "/synonymmaps('{synonymMapName}')": { - "put": { - "tags": [ - "SynonymMaps" - ], - "operationId": "SynonymMaps_CreateOrUpdate", - "x-ms-examples": { - "SearchServiceCreateOrUpdateSynonymMap": { - "$ref": "./examples/SearchServiceCreateOrUpdateSynonymMap.json" - } - }, - "description": "Creates a new synonym map or updates a synonym map if it already exists.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Update-Synonym-Map" - }, - "parameters": [ - { - "name": "synonymMapName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the synonym map to create or update." - }, - { - "name": "synonymMap", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/SynonymMap" - }, - "description": "The definition of the synonym map to create or update." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/IfMatchParameter" - }, - { - "$ref": "#/parameters/IfNoneMatchParameter" - }, - { - "$ref": "#/parameters/PreferHeaderParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/SynonymMap" - } - }, - "201": { - "description": "", - "schema": { - "$ref": "#/definitions/SynonymMap" - } - } - } - }, - "delete": { - "tags": [ - "SynonymMaps" - ], - "operationId": "SynonymMaps_Delete", - "x-ms-examples": { - "SearchServiceDeleteSynonymMap": { - "$ref": "./examples/SearchServiceDeleteSynonymMap.json" - } - }, - "description": "Deletes a synonym map.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Delete-Synonym-Map" - }, - "parameters": [ - { - "name": "synonymMapName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the synonym map to delete." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/IfMatchParameter" - }, - { - "$ref": "#/parameters/IfNoneMatchParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "204": { - "description": "" - }, - "404": { - "description": "" - } - } - }, - "get": { - "tags": [ - "SynonymMaps" - ], - "operationId": "SynonymMaps_Get", - "x-ms-examples": { - "SearchServiceGetSynonymMap": { - "$ref": "./examples/SearchServiceGetSynonymMap.json" - } - }, - "description": "Retrieves a synonym map definition.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Synonym-Map" - }, - "parameters": [ - { - "name": "synonymMapName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the synonym map to retrieve." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/SynonymMap" - } - } - } - } - }, - "/synonymmaps": { - "get": { - "tags": [ - "SynonymMaps" - ], - "operationId": "SynonymMaps_List", - "x-ms-examples": { - "SearchServiceListSynonymMaps": { - "$ref": "./examples/SearchServiceListSynonymMaps.json" - } - }, - "description": "Lists all synonym maps available for a search service.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/List-Synonym-Maps" - }, - "parameters": [ - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/SynonymMapListResult" - } - } - } - }, - "post": { - "tags": [ - "SynonymMaps" - ], - "operationId": "SynonymMaps_Create", - "x-ms-examples": { - "SearchServiceCreateSynonymMap": { - "$ref": "./examples/SearchServiceCreateSynonymMap.json" - } - }, - "description": "Creates a new synonym map.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Synonym-Map" - }, - "parameters": [ - { - "name": "synonymMap", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/SynonymMap" - }, - "description": "The definition of the synonym map to create." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "201": { - "description": "", - "schema": { - "$ref": "#/definitions/SynonymMap" - } - } - } - } - }, - "/indexes": { - "post": { - "tags": [ - "Indexes" - ], - "operationId": "Indexes_Create", - "x-ms-examples": { - "SearchServiceCreateIndex": { - "$ref": "./examples/SearchServiceCreateIndex.json" - } - }, - "description": "Creates a new search index.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Index" - }, - "parameters": [ - { - "name": "index", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Index" - }, - "description": "The definition of the index to create." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "201": { - "description": "", - "schema": { - "$ref": "#/definitions/Index" - } - } - } - }, - "get": { - "tags": [ - "Indexes" - ], - "operationId": "Indexes_List", - "x-ms-examples": { - "SearchServiceListIndexes": { - "$ref": "./examples/SearchServiceListIndexes.json" - } - }, - "description": "Lists all indexes available for a search service.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/List-Indexes" - }, - "parameters": [ - { - "name": "$select", - "in": "query", - "required": false, - "type": "string", - "description": "Selects which properties of the index definitions to retrieve. Specified as a comma-separated list of JSON property names, or '*' for all properties. The default is all properties." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/IndexListResult" - } - } - } - } - }, - "/indexes('{indexName}')": { - "put": { - "tags": [ - "Indexes" - ], - "operationId": "Indexes_CreateOrUpdate", - "x-ms-examples": { - "SearchServiceCreateOrUpdateIndex": { - "$ref": "./examples/SearchServiceCreateOrUpdateIndex.json" - } - }, - "description": "Creates a new search index or updates an index if it already exists.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Update-Index" - }, - "parameters": [ - { - "name": "indexName", - "in": "path", - "required": true, - "type": "string", - "description": "The definition of the index to create or update." - }, - { - "name": "index", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/Index" - }, - "description": "The definition of the index to create or update." - }, - { - "name": "allowIndexDowntime", - "in": "query", - "required": false, - "type": "boolean", - "description": "Allows new analyzers, tokenizers, token filters, or char filters to be added to an index by taking the index offline for at least a few seconds. This temporarily causes indexing and query requests to fail. Performance and write availability of the index can be impaired for several minutes after the index is updated, or longer for very large indexes." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/IfMatchParameter" - }, - { - "$ref": "#/parameters/IfNoneMatchParameter" - }, - { - "$ref": "#/parameters/PreferHeaderParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/Index" - } - }, - "201": { - "description": "", - "schema": { - "$ref": "#/definitions/Index" - } - } - } - }, - "delete": { - "tags": [ - "Indexes" - ], - "operationId": "Indexes_Delete", - "x-ms-examples": { - "SearchServiceDeleteIndex": { - "$ref": "./examples/SearchServiceDeleteIndex.json" - } - }, - "description": "Deletes a search index and all the documents it contains.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Delete-Index" - }, - "parameters": [ - { - "name": "indexName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the index to delete." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/IfMatchParameter" - }, - { - "$ref": "#/parameters/IfNoneMatchParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "204": { - "description": "" - }, - "404": { - "description": "" - } - } - }, - "get": { - "tags": [ - "Indexes" - ], - "operationId": "Indexes_Get", - "x-ms-examples": { - "SearchServiceGetIndex": { - "$ref": "./examples/SearchServiceGetIndex.json" - } - }, - "description": "Retrieves an index definition.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Index" - }, - "parameters": [ - { - "name": "indexName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the index to retrieve." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/Index" - } - } - } - } - }, - "/indexes('{indexName}')/search.stats": { - "get": { - "tags": [ - "Indexes" - ], - "operationId": "Indexes_GetStatistics", - "x-ms-examples": { - "SearchServiceGetIndexStatistics": { - "$ref": "./examples/SearchServiceGetIndexStatistics.json" - } - }, - "description": "Returns statistics for the given index, including a document count and storage usage.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Get-Index-Statistics" - }, - "parameters": [ - { - "name": "indexName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the index for which to retrieve statistics." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/IndexGetStatisticsResult" - } - } - } - } - }, - "/indexes('{indexName}')/search.analyze": { - "post": { - "tags": [ - "Indexes" - ], - "operationId": "Indexes_Analyze", - "x-ms-examples": { - "SearchServiceIndexAnalyze": { - "$ref": "./examples/SearchServiceIndexAnalyze.json" - } - }, - "description": "Shows how an analyzer breaks text into tokens.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/test-analyzer" - }, - "parameters": [ - { - "name": "indexName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the index for which to test an analyzer." - }, - { - "name": "request", - "in": "body", - "required": true, - "schema": { - "$ref": "#/definitions/AnalyzeRequest" - }, - "description": "The text and analyzer or analysis components to test." - }, - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/AnalyzeResult" - } - } - } - } - }, - "/servicestats": { - "get": { - "tags": [ - "Service" - ], - "operationId": "GetServiceStatistics", - "x-ms-examples": { - "SearchServiceGetServiceStatistics": { - "$ref": "./examples/SearchServiceGetServiceStatistics.json" - } - }, - "description": "Gets service level statistics for a search service.", - "parameters": [ - { - "$ref": "#/parameters/ClientRequestIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "x-ms-request-id": "request-id", - "responses": { - "200": { - "description": "", - "schema": { - "$ref": "#/definitions/ServiceStatistics" - } - } - } - } - } - }, - "definitions": { - "AnalyzeRequest": { - "properties": { - "text": { - "type": "string", - "description": "The text to break into tokens." - }, - "analyzer": { - "$ref": "#/definitions/AnalyzerName", - "description": "The name of the analyzer to use to break the given text. If this parameter is not specified, you must specify a tokenizer instead. The tokenizer and analyzer parameters are mutually exclusive." - }, - "tokenizer": { - "$ref": "#/definitions/TokenizerName", - "description": "The name of the tokenizer to use to break the given text. If this parameter is not specified, you must specify an analyzer instead. The tokenizer and analyzer parameters are mutually exclusive." - }, - "tokenFilters": { - "type": "array", - "items": { - "$ref": "#/definitions/TokenFilterName", - "x-nullable": false - }, - "description": "An optional list of token filters to use when breaking the given text. This parameter can only be set when using the tokenizer parameter." - }, - "charFilters": { - "type": "array", - "items": { - "$ref": "#/definitions/CharFilterName", - "x-nullable": false - }, - "description": "An optional list of character filters to use when breaking the given text. This parameter can only be set when using the tokenizer parameter." - } - }, - "required": [ - "text" - ], - "description": "Specifies some text and analysis components used to break that text into tokens." - }, - "AnalyzeResult": { - "properties": { - "tokens": { - "type": "array", - "items": { - "$ref": "#/definitions/TokenInfo" - }, - "description": "The list of tokens returned by the analyzer specified in the request." - } - }, - "description": "The result of testing an analyzer on text." - }, - "TokenInfo": { - "properties": { - "token": { - "type": "string", - "readOnly": true, - "description": "The token returned by the analyzer." - }, - "startOffset": { - "type": "integer", - "format": "int32", - "readOnly": true, - "description": "The index of the first character of the token in the input text." - }, - "endOffset": { - "type": "integer", - "format": "int32", - "readOnly": true, - "description": "The index of the last character of the token in the input text." - }, - "position": { - "type": "integer", - "format": "int32", - "readOnly": true, - "description": "The position of the token in the input text relative to other tokens. The first token in the input text has position 0, the next has position 1, and so on. Depending on the analyzer used, some tokens might have the same position, for example if they are synonyms of each other." - } - }, - "description": "Information about a token returned by an analyzer." - }, - "AnalyzerName": { - "type": "string", - "enum": [ - "ar.microsoft", - "ar.lucene", - "hy.lucene", - "bn.microsoft", - "eu.lucene", - "bg.microsoft", - "bg.lucene", - "ca.microsoft", - "ca.lucene", - "zh-Hans.microsoft", - "zh-Hans.lucene", - "zh-Hant.microsoft", - "zh-Hant.lucene", - "hr.microsoft", - "cs.microsoft", - "cs.lucene", - "da.microsoft", - "da.lucene", - "nl.microsoft", - "nl.lucene", - "en.microsoft", - "en.lucene", - "et.microsoft", - "fi.microsoft", - "fi.lucene", - "fr.microsoft", - "fr.lucene", - "gl.lucene", - "de.microsoft", - "de.lucene", - "el.microsoft", - "el.lucene", - "gu.microsoft", - "he.microsoft", - "hi.microsoft", - "hi.lucene", - "hu.microsoft", - "hu.lucene", - "is.microsoft", - "id.microsoft", - "id.lucene", - "ga.lucene", - "it.microsoft", - "it.lucene", - "ja.microsoft", - "ja.lucene", - "kn.microsoft", - "ko.microsoft", - "ko.lucene", - "lv.microsoft", - "lv.lucene", - "lt.microsoft", - "ml.microsoft", - "ms.microsoft", - "mr.microsoft", - "nb.microsoft", - "no.lucene", - "fa.lucene", - "pl.microsoft", - "pl.lucene", - "pt-BR.microsoft", - "pt-BR.lucene", - "pt-PT.microsoft", - "pt-PT.lucene", - "pa.microsoft", - "ro.microsoft", - "ro.lucene", - "ru.microsoft", - "ru.lucene", - "sr-cyrillic.microsoft", - "sr-latin.microsoft", - "sk.microsoft", - "sl.microsoft", - "es.microsoft", - "es.lucene", - "sv.microsoft", - "sv.lucene", - "ta.microsoft", - "te.microsoft", - "th.microsoft", - "th.lucene", - "tr.microsoft", - "tr.lucene", - "uk.microsoft", - "ur.microsoft", - "vi.microsoft", - "standard.lucene", - "standardasciifolding.lucene", - "keyword", - "pattern", - "simple", - "stop", - "whitespace" - ], - "x-ms-enum": { - "name": "AnalyzerName", - "modelAsString": false - }, - "description": "Defines the names of all text analyzers supported by Azure Cognitive Search.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Language-support" - } - }, - "TokenizerName": { - "type": "string", - "enum": [ - "classic", - "edgeNGram", - "keyword_v2", - "letter", - "lowercase", - "microsoft_language_tokenizer", - "microsoft_language_stemming_tokenizer", - "nGram", - "path_hierarchy_v2", - "pattern", - "standard_v2", - "uax_url_email", - "whitespace" - ], - "x-ms-enum": { - "name": "TokenizerName", - "modelAsString": false - }, - "description": "Defines the names of all tokenizers supported by Azure Cognitive Search.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" - } - }, - "TokenFilterName": { - "type": "string", - "enum": [ - "arabic_normalization", - "apostrophe", - "asciifolding", - "cjk_bigram", - "cjk_width", - "classic", - "common_grams", - "edgeNGram_v2", - "elision", - "german_normalization", - "hindi_normalization", - "indic_normalization", - "keyword_repeat", - "kstem", - "length", - "limit", - "lowercase", - "nGram_v2", - "persian_normalization", - "phonetic", - "porter_stem", - "reverse", - "scandinavian_normalization", - "scandinavian_folding", - "shingle", - "snowball", - "sorani_normalization", - "stemmer", - "stopwords", - "trim", - "truncate", - "unique", - "uppercase", - "word_delimiter" - ], - "x-ms-enum": { - "name": "TokenFilterName", - "modelAsString": false - }, - "description": "Defines the names of all token filters supported by Azure Cognitive Search.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" - } - }, - "CharFilterName": { - "type": "string", - "enum": [ - "html_strip" - ], - "x-ms-enum": { - "name": "CharFilterName", - "modelAsString": false - }, - "description": "Defines the names of all character filters supported by Azure Cognitive Search.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" - } - }, - "RegexFlags": { - "type": "string", - "enum": [ - "CANON_EQ", - "CASE_INSENSITIVE", - "COMMENTS", - "DOTALL", - "LITERAL", - "MULTILINE", - "UNICODE_CASE", - "UNIX_LINES" - ], - "x-ms-enum": { - "name": "RegexFlags", - "modelAsString": false - }, - "description": "Defines flags that can be combined to control how regular expressions are used in the pattern analyzer and pattern tokenizer.", - "externalDocs": { - "url": "http://docs.oracle.com/javase/6/docs/api/java/util/regex/Pattern.html#field_summary" - } - }, - "DataType": { - "type": "string", - "enum": [ - "Edm.String", - "Edm.Int32", - "Edm.Int64", - "Edm.Double", - "Edm.Boolean", - "Edm.DateTimeOffset", - "Edm.GeographyPoint", - "Edm.ComplexType" - ], - "x-ms-enum": { - "name": "DataType", - "modelAsString": false - }, - "description": "Defines the data type of a field in a search index." - }, - "Analyzer": { - "discriminator": "@odata.type", - "properties": { - "@odata.type": { - "type": "string" - }, - "name": { - "type": "string", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/custom-analyzers-in-azure-search#index-attribute-reference" - }, - "description": "The name of the analyzer. It must only contain letters, digits, spaces, dashes or underscores, can only start and end with alphanumeric characters, and is limited to 128 characters." - } - }, - "required": [ - "@odata.type", - "name" - ], - "description": "Abstract base class for analyzers." - }, - "CustomAnalyzer": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.CustomAnalyzer", - "allOf": [ - { - "$ref": "#/definitions/Analyzer" - } - ], - "properties": { - "tokenizer": { - "$ref": "#/definitions/TokenizerName", - "description": "The name of the tokenizer to use to divide continuous text into a sequence of tokens, such as breaking a sentence into words." - }, - "tokenFilters": { - "type": "array", - "items": { - "$ref": "#/definitions/TokenFilterName", - "x-nullable": false - }, - "description": "A list of token filters used to filter out or modify the tokens generated by a tokenizer. For example, you can specify a lowercase filter that converts all characters to lowercase. The filters are run in the order in which they are listed." - }, - "charFilters": { - "type": "array", - "items": { - "$ref": "#/definitions/CharFilterName", - "x-nullable": false - }, - "description": "A list of character filters used to prepare input text before it is processed by the tokenizer. For instance, they can replace certain characters or symbols. The filters are run in the order in which they are listed." - } - }, - "required": [ - "tokenizer" - ], - "description": "Allows you to take control over the process of converting text into indexable/searchable tokens. It's a user-defined configuration consisting of a single predefined tokenizer and one or more filters. The tokenizer is responsible for breaking text into tokens, and the filters for modifying tokens emitted by the tokenizer." - }, - "PatternAnalyzer": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternAnalyzer", - "allOf": [ - { - "$ref": "#/definitions/Analyzer" - } - ], - "properties": { - "lowercase": { - "x-ms-client-name": "LowerCaseTerms", - "type": "boolean", - "default": true, - "description": "A value indicating whether terms should be lower-cased. Default is true." - }, - "pattern": { - "type": "string", - "default": "\\W+", - "description": "A regular expression pattern to match token separators. Default is an expression that matches one or more whitespace characters." - }, - "flags": { - "$ref": "#/definitions/RegexFlags", - "description": "Regular expression flags." - }, - "stopwords": { - "type": "array", - "items": { - "type": "string" - }, - "description": "A list of stopwords." - } - }, - "description": "Flexibly separates text into terms via a regular expression pattern. This analyzer is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/PatternAnalyzer.html" - } - }, - "StandardAnalyzer": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardAnalyzer", - "allOf": [ - { - "$ref": "#/definitions/Analyzer" - } - ], - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "default": 255, - "maximum": 300, - "description": "The maximum token length. Default is 255. Tokens longer than the maximum length are split. The maximum token length that can be used is 300 characters." - }, - "stopwords": { - "type": "array", - "items": { - "type": "string" - }, - "description": "A list of stopwords." - } - }, - "description": "Standard Apache Lucene analyzer; Composed of the standard tokenizer, lowercase filter and stop filter.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/StandardAnalyzer.html" - } - }, - "StopAnalyzer": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.StopAnalyzer", - "allOf": [ - { - "$ref": "#/definitions/Analyzer" - } - ], - "properties": { - "stopwords": { - "type": "array", - "items": { - "type": "string" - }, - "description": "A list of stopwords." - } - }, - "description": "Divides text at non-letters; Applies the lowercase and stopword token filters. This analyzer is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopAnalyzer.html" - } - }, - "Tokenizer": { - "discriminator": "@odata.type", - "properties": { - "@odata.type": { - "type": "string" - }, - "name": { - "type": "string", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/custom-analyzers-in-azure-search#index-attribute-reference" - }, - "description": "The name of the tokenizer. It must only contain letters, digits, spaces, dashes or underscores, can only start and end with alphanumeric characters, and is limited to 128 characters." - } - }, - "required": [ - "@odata.type", - "name" - ], - "description": "Abstract base class for tokenizers.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" - } - }, - "ClassicTokenizer": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.ClassicTokenizer", - "allOf": [ - { - "$ref": "#/definitions/Tokenizer" - } - ], - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "default": 255, - "maximum": 300, - "description": "The maximum token length. Default is 255. Tokens longer than the maximum length are split. The maximum token length that can be used is 300 characters." - } - }, - "description": "Grammar-based tokenizer that is suitable for processing most European-language documents. This tokenizer is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/ClassicTokenizer.html" - } - }, - "TokenCharacterKind": { - "type": "string", - "enum": [ - "letter", - "digit", - "whitespace", - "punctuation", - "symbol" - ], - "x-ms-enum": { - "name": "TokenCharacterKind", - "modelAsString": false - }, - "description": "Represents classes of characters on which a token filter can operate." - }, - "EdgeNGramTokenizer": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenizer", - "allOf": [ - { - "$ref": "#/definitions/Tokenizer" - } - ], - "properties": { - "minGram": { - "type": "integer", - "format": "int32", - "default": 1, - "maximum": 300, - "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the value of maxGram." - }, - "maxGram": { - "type": "integer", - "format": "int32", - "default": 2, - "maximum": 300, - "description": "The maximum n-gram length. Default is 2. Maximum is 300." - }, - "tokenChars": { - "type": "array", - "items": { - "$ref": "#/definitions/TokenCharacterKind", - "x-nullable": false - }, - "description": "Character classes to keep in the tokens." - } - }, - "description": "Tokenizes the input from an edge into n-grams of the given size(s). This tokenizer is implemented using Apache Lucene.", - "externalDocs": { - "url": "https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenizer.html" - } - }, - "KeywordTokenizer": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordTokenizer", - "allOf": [ - { - "$ref": "#/definitions/Tokenizer" - } - ], - "properties": { - "bufferSize": { - "type": "integer", - "format": "int32", - "default": 256, - "description": "The read buffer size in bytes. Default is 256." - } - }, - "description": "Emits the entire input as a single token. This tokenizer is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordTokenizer.html" - }, - "x-ms-external": true - }, - "KeywordTokenizerV2": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordTokenizerV2", - "allOf": [ - { - "$ref": "#/definitions/Tokenizer" - } - ], - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "default": 256, - "maximum": 300, - "description": "The maximum token length. Default is 256. Tokens longer than the maximum length are split. The maximum token length that can be used is 300 characters." - } - }, - "description": "Emits the entire input as a single token. This tokenizer is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/KeywordTokenizer.html" - } - }, - "MicrosoftTokenizerLanguage": { - "type": "string", - "enum": [ - "bangla", - "bulgarian", - "catalan", - "chineseSimplified", - "chineseTraditional", - "croatian", - "czech", - "danish", - "dutch", - "english", - "french", - "german", - "greek", - "gujarati", - "hindi", - "icelandic", - "indonesian", - "italian", - "japanese", - "kannada", - "korean", - "malay", - "malayalam", - "marathi", - "norwegianBokmaal", - "polish", - "portuguese", - "portugueseBrazilian", - "punjabi", - "romanian", - "russian", - "serbianCyrillic", - "serbianLatin", - "slovenian", - "spanish", - "swedish", - "tamil", - "telugu", - "thai", - "ukrainian", - "urdu", - "vietnamese" - ], - "x-ms-enum": { - "name": "MicrosoftTokenizerLanguage", - "modelAsString": false - }, - "description": "Lists the languages supported by the Microsoft language tokenizer." - }, - "MicrosoftLanguageTokenizer": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.MicrosoftLanguageTokenizer", - "allOf": [ - { - "$ref": "#/definitions/Tokenizer" - } - ], - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "default": 255, - "maximum": 300, - "description": "The maximum token length. Tokens longer than the maximum length are split. Maximum token length that can be used is 300 characters. Tokens longer than 300 characters are first split into tokens of length 300 and then each of those tokens is split based on the max token length set. Default is 255." - }, - "isSearchTokenizer": { - "type": "boolean", - "default": false, - "description": "A value indicating how the tokenizer is used. Set to true if used as the search tokenizer, set to false if used as the indexing tokenizer. Default is false." - }, - "language": { - "$ref": "#/definitions/MicrosoftTokenizerLanguage", - "description": "The language to use. The default is English." - } - }, - "description": "Divides text using language-specific rules." - }, - "MicrosoftStemmingTokenizerLanguage": { - "type": "string", - "enum": [ - "arabic", - "bangla", - "bulgarian", - "catalan", - "croatian", - "czech", - "danish", - "dutch", - "english", - "estonian", - "finnish", - "french", - "german", - "greek", - "gujarati", - "hebrew", - "hindi", - "hungarian", - "icelandic", - "indonesian", - "italian", - "kannada", - "latvian", - "lithuanian", - "malay", - "malayalam", - "marathi", - "norwegianBokmaal", - "polish", - "portuguese", - "portugueseBrazilian", - "punjabi", - "romanian", - "russian", - "serbianCyrillic", - "serbianLatin", - "slovak", - "slovenian", - "spanish", - "swedish", - "tamil", - "telugu", - "turkish", - "ukrainian", - "urdu" - ], - "x-ms-enum": { - "name": "MicrosoftStemmingTokenizerLanguage", - "modelAsString": false - }, - "description": "Lists the languages supported by the Microsoft language stemming tokenizer." - }, - "MicrosoftLanguageStemmingTokenizer": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.MicrosoftLanguageStemmingTokenizer", - "allOf": [ - { - "$ref": "#/definitions/Tokenizer" - } - ], - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "default": 255, - "maximum": 300, - "description": "The maximum token length. Tokens longer than the maximum length are split. Maximum token length that can be used is 300 characters. Tokens longer than 300 characters are first split into tokens of length 300 and then each of those tokens is split based on the max token length set. Default is 255." - }, - "isSearchTokenizer": { - "type": "boolean", - "default": false, - "description": "A value indicating how the tokenizer is used. Set to true if used as the search tokenizer, set to false if used as the indexing tokenizer. Default is false." - }, - "language": { - "$ref": "#/definitions/MicrosoftStemmingTokenizerLanguage", - "description": "The language to use. The default is English." - } - }, - "description": "Divides text using language-specific rules and reduces words to their base forms." - }, - "NGramTokenizer": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenizer", - "allOf": [ - { - "$ref": "#/definitions/Tokenizer" - } - ], - "properties": { - "minGram": { - "type": "integer", - "format": "int32", - "default": 1, - "maximum": 300, - "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the value of maxGram." - }, - "maxGram": { - "type": "integer", - "format": "int32", - "default": 2, - "maximum": 300, - "description": "The maximum n-gram length. Default is 2. Maximum is 300." - }, - "tokenChars": { - "type": "array", - "items": { - "$ref": "#/definitions/TokenCharacterKind", - "x-nullable": false - }, - "description": "Character classes to keep in the tokens." - } - }, - "description": "Tokenizes the input into n-grams of the given size(s). This tokenizer is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenizer.html" - } - }, - "PathHierarchyTokenizer": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.PathHierarchyTokenizer", - "allOf": [ - { - "$ref": "#/definitions/Tokenizer" - } - ], - "properties": { - "delimiter": { - "type": "string", - "format": "char", - "default": "/", - "description": "The delimiter character to use. Default is \"/\"." - }, - "replacement": { - "type": "string", - "format": "char", - "default": "/", - "description": "A value that, if set, replaces the delimiter character. Default is \"/\"." - }, - "bufferSize": { - "type": "integer", - "format": "int32", - "default": 1024, - "description": "The buffer size. Default is 1024." - }, - "reverse": { - "x-ms-client-name": "ReverseTokenOrder", - "type": "boolean", - "default": false, - "description": "A value indicating whether to generate tokens in reverse order. Default is false." - }, - "skip": { - "x-ms-client-name": "NumberOfTokensToSkip", - "type": "integer", - "format": "int32", - "default": 0, - "description": "The number of initial tokens to skip. Default is 0." - } - }, - "description": "Tokenizer for path-like hierarchies. This tokenizer is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/path/PathHierarchyTokenizer.html" - }, - "x-ms-external": true - }, - "PathHierarchyTokenizerV2": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.PathHierarchyTokenizerV2", - "allOf": [ - { - "$ref": "#/definitions/Tokenizer" - } - ], - "properties": { - "delimiter": { - "type": "string", - "format": "char", - "default": "/", - "description": "The delimiter character to use. Default is \"/\"." - }, - "replacement": { - "type": "string", - "format": "char", - "default": "/", - "description": "A value that, if set, replaces the delimiter character. Default is \"/\"." - }, - "maxTokenLength": { - "type": "integer", - "format": "int32", - "default": 300, - "maximum": 300, - "description": "The maximum token length. Default and maximum is 300." - }, - "reverse": { - "x-ms-client-name": "ReverseTokenOrder", - "type": "boolean", - "default": false, - "description": "A value indicating whether to generate tokens in reverse order. Default is false." - }, - "skip": { - "x-ms-client-name": "NumberOfTokensToSkip", - "type": "integer", - "format": "int32", - "default": 0, - "description": "The number of initial tokens to skip. Default is 0." - } - }, - "description": "Tokenizer for path-like hierarchies. This tokenizer is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/path/PathHierarchyTokenizer.html" - } - }, - "PatternTokenizer": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternTokenizer", - "allOf": [ - { - "$ref": "#/definitions/Tokenizer" - } - ], - "properties": { - "pattern": { - "type": "string", - "default": "\\W+", - "description": "A regular expression pattern to match token separators. Default is an expression that matches one or more whitespace characters." - }, - "flags": { - "$ref": "#/definitions/RegexFlags", - "description": "Regular expression flags." - }, - "group": { - "type": "integer", - "format": "int32", - "default": -1, - "description": "The zero-based ordinal of the matching group in the regular expression pattern to extract into tokens. Use -1 if you want to use the entire pattern to split the input into tokens, irrespective of matching groups. Default is -1." - } - }, - "description": "Tokenizer that uses regex pattern matching to construct distinct tokens. This tokenizer is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternTokenizer.html" - } - }, - "StandardTokenizer": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardTokenizer", - "allOf": [ - { - "$ref": "#/definitions/Tokenizer" - } - ], - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "default": 255, - "description": "The maximum token length. Default is 255. Tokens longer than the maximum length are split." - } - }, - "description": "Breaks text following the Unicode Text Segmentation rules. This tokenizer is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/StandardTokenizer.html" - }, - "x-ms-external": true - }, - "StandardTokenizerV2": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.StandardTokenizerV2", - "allOf": [ - { - "$ref": "#/definitions/Tokenizer" - } - ], - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "default": 255, - "maximum": 300, - "description": "The maximum token length. Default is 255. Tokens longer than the maximum length are split. The maximum token length that can be used is 300 characters." - } - }, - "description": "Breaks text following the Unicode Text Segmentation rules. This tokenizer is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/StandardTokenizer.html" - } - }, - "UaxUrlEmailTokenizer": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.UaxUrlEmailTokenizer", - "allOf": [ - { - "$ref": "#/definitions/Tokenizer" - } - ], - "properties": { - "maxTokenLength": { - "type": "integer", - "format": "int32", - "default": 255, - "maximum": 300, - "description": "The maximum token length. Default is 255. Tokens longer than the maximum length are split. The maximum token length that can be used is 300 characters." - } - }, - "description": "Tokenizes urls and emails as one token. This tokenizer is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/standard/UAX29URLEmailTokenizer.html" - } - }, - "TokenFilter": { - "discriminator": "@odata.type", - "properties": { - "@odata.type": { - "type": "string" - }, - "name": { - "type": "string", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/custom-analyzers-in-azure-search#index-attribute-reference" - }, - "description": "The name of the token filter. It must only contain letters, digits, spaces, dashes or underscores, can only start and end with alphanumeric characters, and is limited to 128 characters." - } - }, - "required": [ - "@odata.type", - "name" - ], - "description": "Abstract base class for token filters.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" - } - }, - "AsciiFoldingTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.AsciiFoldingTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "preserveOriginal": { - "type": "boolean", - "default": false, - "description": "A value indicating whether the original token will be kept. Default is false." - } - }, - "description": "Converts alphabetic, numeric, and symbolic Unicode characters which are not in the first 127 ASCII characters (the \"Basic Latin\" Unicode block) into their ASCII equivalents, if such equivalents exist. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/ASCIIFoldingFilter.html" - } - }, - "CjkBigramTokenFilterScripts": { - "type": "string", - "enum": [ - "han", - "hiragana", - "katakana", - "hangul" - ], - "x-ms-enum": { - "name": "CjkBigramTokenFilterScripts", - "modelAsString": false - }, - "description": "Scripts that can be ignored by CjkBigramTokenFilter." - }, - "CjkBigramTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.CjkBigramTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "ignoreScripts": { - "type": "array", - "items": { - "$ref": "#/definitions/CjkBigramTokenFilterScripts", - "x-nullable": false - }, - "description": "The scripts to ignore." - }, - "outputUnigrams": { - "type": "boolean", - "default": false, - "description": "A value indicating whether to output both unigrams and bigrams (if true), or just bigrams (if false). Default is false." - } - }, - "description": "Forms bigrams of CJK terms that are generated from StandardTokenizer. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/cjk/CJKBigramFilter.html" - } - }, - "CommonGramTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.CommonGramTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "commonWords": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The set of common words." - }, - "ignoreCase": { - "type": "boolean", - "default": false, - "description": "A value indicating whether common words matching will be case insensitive. Default is false." - }, - "queryMode": { - "x-ms-client-name": "UseQueryMode", - "type": "boolean", - "default": false, - "description": "A value that indicates whether the token filter is in query mode. When in query mode, the token filter generates bigrams and then removes common words and single terms followed by a common word. Default is false." - } - }, - "required": [ - "commonWords" - ], - "description": "Construct bigrams for frequently occurring terms while indexing. Single terms are still indexed too, with bigrams overlaid. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/commongrams/CommonGramsFilter.html" - } - }, - "DictionaryDecompounderTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.DictionaryDecompounderTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "wordList": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of words to match against." - }, - "minWordSize": { - "type": "integer", - "format": "int32", - "default": 5, - "maximum": 300, - "description": "The minimum word size. Only words longer than this get processed. Default is 5. Maximum is 300." - }, - "minSubwordSize": { - "type": "integer", - "format": "int32", - "default": 2, - "maximum": 300, - "description": "The minimum subword size. Only subwords longer than this are outputted. Default is 2. Maximum is 300." - }, - "maxSubwordSize": { - "type": "integer", - "format": "int32", - "default": 15, - "maximum": 300, - "description": "The maximum subword size. Only subwords shorter than this are outputted. Default is 15. Maximum is 300." - }, - "onlyLongestMatch": { - "type": "boolean", - "default": false, - "description": "A value indicating whether to add only the longest matching subword to the output. Default is false." - } - }, - "required": [ - "wordList" - ], - "description": "Decomposes compound words found in many Germanic languages. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/compound/DictionaryCompoundWordTokenFilter.html" - } - }, - "EdgeNGramTokenFilterSide": { - "type": "string", - "enum": [ - "front", - "back" - ], - "x-ms-enum": { - "name": "EdgeNGramTokenFilterSide", - "modelAsString": false - }, - "description": "Specifies which side of the input an n-gram should be generated from." - }, - "EdgeNGramTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "minGram": { - "type": "integer", - "format": "int32", - "default": 1, - "description": "The minimum n-gram length. Default is 1. Must be less than the value of maxGram." - }, - "maxGram": { - "type": "integer", - "format": "int32", - "default": 2, - "description": "The maximum n-gram length. Default is 2." - }, - "side": { - "$ref": "#/definitions/EdgeNGramTokenFilterSide", - "default": "front", - "description": "Specifies which side of the input the n-gram should be generated from. Default is \"front\"." - } - }, - "description": "Generates n-grams of the given size(s) starting from the front or the back of an input token. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenFilter.html" - }, - "x-ms-external": true - }, - "EdgeNGramTokenFilterV2": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.EdgeNGramTokenFilterV2", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "minGram": { - "type": "integer", - "format": "int32", - "default": 1, - "maximum": 300, - "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the value of maxGram." - }, - "maxGram": { - "type": "integer", - "format": "int32", - "default": 2, - "maximum": 300, - "description": "The maximum n-gram length. Default is 2. Maximum is 300." - }, - "side": { - "$ref": "#/definitions/EdgeNGramTokenFilterSide", - "default": "front", - "description": "Specifies which side of the input the n-gram should be generated from. Default is \"front\"." - } - }, - "description": "Generates n-grams of the given size(s) starting from the front or the back of an input token. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/EdgeNGramTokenFilter.html" - } - }, - "ElisionTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.ElisionTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "articles": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The set of articles to remove." - } - }, - "description": "Removes elisions. For example, \"l'avion\" (the plane) will be converted to \"avion\" (plane). This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/util/ElisionFilter.html" - } - }, - "KeepTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeepTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "keepWords": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of words to keep." - }, - "keepWordsCase": { - "x-ms-client-name": "LowerCaseKeepWords", - "type": "boolean", - "default": false, - "description": "A value indicating whether to lower case all words first. Default is false." - } - }, - "required": [ - "keepWords" - ], - "description": "A token filter that only keeps tokens with text contained in a specified list of words. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/KeepWordFilter.html" - } - }, - "KeywordMarkerTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.KeywordMarkerTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "keywords": { - "type": "array", - "items": { - "type": "string" - }, - "description": "A list of words to mark as keywords." - }, - "ignoreCase": { - "type": "boolean", - "default": false, - "description": "A value indicating whether to ignore case. If true, all words are converted to lower case first. Default is false." - } - }, - "required": [ - "keywords" - ], - "description": "Marks terms as keywords. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/KeywordMarkerFilter.html" - } - }, - "LengthTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.LengthTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "min": { - "type": "integer", - "format": "int32", - "default": 0, - "maximum": 300, - "description": "The minimum length in characters. Default is 0. Maximum is 300. Must be less than the value of max." - }, - "max": { - "type": "integer", - "format": "int32", - "default": 300, - "maximum": 300, - "description": "The maximum length in characters. Default and maximum is 300." - } - }, - "description": "Removes words that are too long or too short. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LengthFilter.html" - } - }, - "LimitTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.LimitTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "maxTokenCount": { - "type": "integer", - "format": "int32", - "default": 1, - "description": "The maximum number of tokens to produce. Default is 1." - }, - "consumeAllTokens": { - "type": "boolean", - "default": false, - "description": "A value indicating whether all tokens from the input must be consumed even if maxTokenCount is reached. Default is false." - } - }, - "description": "Limits the number of tokens while indexing. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/LimitTokenCountFilter.html" - } - }, - "NGramTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "minGram": { - "type": "integer", - "format": "int32", - "default": 1, - "description": "The minimum n-gram length. Default is 1. Must be less than the value of maxGram." - }, - "maxGram": { - "type": "integer", - "format": "int32", - "default": 2, - "description": "The maximum n-gram length. Default is 2." - } - }, - "description": "Generates n-grams of the given size(s). This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenFilter.html" - }, - "x-ms-external": true - }, - "NGramTokenFilterV2": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.NGramTokenFilterV2", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "minGram": { - "type": "integer", - "format": "int32", - "default": 1, - "maximum": 300, - "description": "The minimum n-gram length. Default is 1. Maximum is 300. Must be less than the value of maxGram." - }, - "maxGram": { - "type": "integer", - "format": "int32", - "default": 2, - "maximum": 300, - "description": "The maximum n-gram length. Default is 2. Maximum is 300." - } - }, - "description": "Generates n-grams of the given size(s). This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/ngram/NGramTokenFilter.html" - } - }, - "PatternCaptureTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternCaptureTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "patterns": { - "type": "array", - "items": { - "type": "string" - }, - "description": "A list of patterns to match against each token." - }, - "preserveOriginal": { - "type": "boolean", - "default": true, - "description": "A value indicating whether to return the original token even if one of the patterns matches. Default is true." - } - }, - "required": [ - "patterns" - ], - "description": "Uses Java regexes to emit multiple tokens - one for each capture group in one or more patterns. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternCaptureGroupTokenFilter.html" - } - }, - "PatternReplaceTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternReplaceTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "pattern": { - "type": "string", - "description": "A regular expression pattern." - }, - "replacement": { - "type": "string", - "description": "The replacement text." - } - }, - "required": [ - "pattern", - "replacement" - ], - "description": "A character filter that replaces characters in the input string. It uses a regular expression to identify character sequences to preserve and a replacement pattern to identify characters to replace. For example, given the input text \"aa bb aa bb\", pattern \"(aa)\\s+(bb)\", and replacement \"$1#$2\", the result would be \"aa#bb aa#bb\". This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternReplaceFilter.html" - } - }, - "PhoneticEncoder": { - "type": "string", - "enum": [ - "metaphone", - "doubleMetaphone", - "soundex", - "refinedSoundex", - "caverphone1", - "caverphone2", - "cologne", - "nysiis", - "koelnerPhonetik", - "haasePhonetik", - "beiderMorse" - ], - "x-ms-enum": { - "name": "PhoneticEncoder", - "modelAsString": false - }, - "description": "Identifies the type of phonetic encoder to use with a PhoneticTokenFilter." - }, - "PhoneticTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.PhoneticTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "encoder": { - "$ref": "#/definitions/PhoneticEncoder", - "default": "metaphone", - "description": "The phonetic encoder to use. Default is \"metaphone\"." - }, - "replace": { - "x-ms-client-name": "ReplaceOriginalTokens", - "type": "boolean", - "default": true, - "description": "A value indicating whether encoded tokens should replace original tokens. If false, encoded tokens are added as synonyms. Default is true." - } - }, - "description": "Create tokens for phonetic matches. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "https://lucene.apache.org/core/4_10_3/analyzers-phonetic/org/apache/lucene/analysis/phonetic/package-tree.html" - } - }, - "ShingleTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.ShingleTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "maxShingleSize": { - "type": "integer", - "format": "int32", - "default": 2, - "minimum": 2, - "description": "The maximum shingle size. Default and minimum value is 2." - }, - "minShingleSize": { - "type": "integer", - "format": "int32", - "default": 2, - "minimum": 2, - "description": "The minimum shingle size. Default and minimum value is 2. Must be less than the value of maxShingleSize." - }, - "outputUnigrams": { - "type": "boolean", - "default": true, - "description": "A value indicating whether the output stream will contain the input tokens (unigrams) as well as shingles. Default is true." - }, - "outputUnigramsIfNoShingles": { - "type": "boolean", - "default": false, - "description": "A value indicating whether to output unigrams for those times when no shingles are available. This property takes precedence when outputUnigrams is set to false. Default is false." - }, - "tokenSeparator": { - "type": "string", - "default": " ", - "description": "The string to use when joining adjacent tokens to form a shingle. Default is a single space (\" \")." - }, - "filterToken": { - "type": "string", - "default": "_", - "description": "The string to insert for each position at which there is no token. Default is an underscore (\"_\")." - } - }, - "description": "Creates combinations of tokens as a single token. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/shingle/ShingleFilter.html" - } - }, - "SnowballTokenFilterLanguage": { - "type": "string", - "enum": [ - "armenian", - "basque", - "catalan", - "danish", - "dutch", - "english", - "finnish", - "french", - "german", - "german2", - "hungarian", - "italian", - "kp", - "lovins", - "norwegian", - "porter", - "portuguese", - "romanian", - "russian", - "spanish", - "swedish", - "turkish" - ], - "x-ms-enum": { - "name": "SnowballTokenFilterLanguage", - "modelAsString": false - }, - "description": "The language to use for a Snowball token filter." - }, - "SnowballTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.SnowballTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "language": { - "$ref": "#/definitions/SnowballTokenFilterLanguage", - "description": "The language to use." - } - }, - "required": [ - "language" - ], - "description": "A filter that stems words using a Snowball-generated stemmer. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/snowball/SnowballFilter.html" - } - }, - "StemmerTokenFilterLanguage": { - "type": "string", - "enum": [ - "arabic", - "armenian", - "basque", - "brazilian", - "bulgarian", - "catalan", - "czech", - "danish", - "dutch", - "dutchKp", - "english", - "lightEnglish", - "minimalEnglish", - "possessiveEnglish", - "porter2", - "lovins", - "finnish", - "lightFinnish", - "french", - "lightFrench", - "minimalFrench", - "galician", - "minimalGalician", - "german", - "german2", - "lightGerman", - "minimalGerman", - "greek", - "hindi", - "hungarian", - "lightHungarian", - "indonesian", - "irish", - "italian", - "lightItalian", - "sorani", - "latvian", - "norwegian", - "lightNorwegian", - "minimalNorwegian", - "lightNynorsk", - "minimalNynorsk", - "portuguese", - "lightPortuguese", - "minimalPortuguese", - "portugueseRslp", - "romanian", - "russian", - "lightRussian", - "spanish", - "lightSpanish", - "swedish", - "lightSwedish", - "turkish" - ], - "x-ms-enum": { - "name": "StemmerTokenFilterLanguage", - "modelAsString": false - }, - "description": "The language to use for a stemmer token filter." - }, - "StemmerTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.StemmerTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "language": { - "$ref": "#/definitions/StemmerTokenFilterLanguage", - "description": "The language to use." - } - }, - "required": [ - "language" - ], - "description": "Language specific stemming filter. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search#TokenFilters" - } - }, - "StemmerOverrideTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.StemmerOverrideTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "rules": { - "type": "array", - "items": { - "type": "string" - }, - "description": "A list of stemming rules in the following format: \"word => stem\", for example: \"ran => run\"." - } - }, - "required": [ - "rules" - ], - "description": "Provides the ability to override other stemming filters with custom dictionary-based stemming. Any dictionary-stemmed terms will be marked as keywords so that they will not be stemmed with stemmers down the chain. Must be placed before any stemming filters. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/StemmerOverrideFilter.html" - } - }, - "StopwordsList": { - "type": "string", - "enum": [ - "arabic", - "armenian", - "basque", - "brazilian", - "bulgarian", - "catalan", - "czech", - "danish", - "dutch", - "english", - "finnish", - "french", - "galician", - "german", - "greek", - "hindi", - "hungarian", - "indonesian", - "irish", - "italian", - "latvian", - "norwegian", - "persian", - "portuguese", - "romanian", - "russian", - "sorani", - "spanish", - "swedish", - "thai", - "turkish" - ], - "x-ms-enum": { - "name": "StopwordsList", - "modelAsString": false - }, - "description": "Identifies a predefined list of language-specific stopwords." - }, - "StopwordsTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.StopwordsTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "stopwords": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of stopwords. This property and the stopwords list property cannot both be set." - }, - "stopwordsList": { - "$ref": "#/definitions/StopwordsList", - "default": "english", - "description": "A predefined list of stopwords to use. This property and the stopwords property cannot both be set. Default is English." - }, - "ignoreCase": { - "type": "boolean", - "default": false, - "description": "A value indicating whether to ignore case. If true, all words are converted to lower case first. Default is false." - }, - "removeTrailing": { - "x-ms-client-name": "RemoveTrailingStopWords", - "type": "boolean", - "default": true, - "description": "A value indicating whether to ignore the last search term if it's a stop word. Default is true." - } - }, - "description": "Removes stop words from a token stream. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/core/StopFilter.html" - } - }, - "SynonymTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.SynonymTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "synonyms": { - "type": "array", - "items": { - "type": "string" - }, - "description": "A list of synonyms in following one of two formats: 1. incredible, unbelievable, fabulous => amazing - all terms on the left side of => symbol will be replaced with all terms on its right side; 2. incredible, unbelievable, fabulous, amazing - comma separated list of equivalent words. Set the expand option to change how this list is interpreted." - }, - "ignoreCase": { - "type": "boolean", - "default": false, - "description": "A value indicating whether to case-fold input for matching. Default is false." - }, - "expand": { - "type": "boolean", - "default": true, - "description": "A value indicating whether all words in the list of synonyms (if => notation is not used) will map to one another. If true, all words in the list of synonyms (if => notation is not used) will map to one another. The following list: incredible, unbelievable, fabulous, amazing is equivalent to: incredible, unbelievable, fabulous, amazing => incredible, unbelievable, fabulous, amazing. If false, the following list: incredible, unbelievable, fabulous, amazing will be equivalent to: incredible, unbelievable, fabulous, amazing => incredible. Default is true." - } - }, - "required": [ - "synonyms" - ], - "description": "Matches single or multi-word synonyms in a token stream. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/synonym/SynonymFilter.html" - } - }, - "TruncateTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.TruncateTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "length": { - "type": "integer", - "format": "int32", - "default": 300, - "maximum": 300, - "description": "The length at which terms will be truncated. Default and maximum is 300." - } - }, - "description": "Truncates the terms to a specific length. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/TruncateTokenFilter.html" - } - }, - "UniqueTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.UniqueTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "onlyOnSamePosition": { - "type": "boolean", - "default": false, - "description": "A value indicating whether to remove duplicates only at the same position. Default is false." - } - }, - "description": "Filters out tokens with same text as the previous token. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/RemoveDuplicatesTokenFilter.html" - } - }, - "WordDelimiterTokenFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.WordDelimiterTokenFilter", - "allOf": [ - { - "$ref": "#/definitions/TokenFilter" - } - ], - "properties": { - "generateWordParts": { - "type": "boolean", - "default": true, - "description": "A value indicating whether to generate part words. If set, causes parts of words to be generated; for example \"AzureSearch\" becomes \"Azure\" \"Search\". Default is true." - }, - "generateNumberParts": { - "type": "boolean", - "default": true, - "description": "A value indicating whether to generate number subwords. Default is true." - }, - "catenateWords": { - "type": "boolean", - "default": false, - "description": "A value indicating whether maximum runs of word parts will be catenated. For example, if this is set to true, \"Azure-Search\" becomes \"AzureSearch\". Default is false." - }, - "catenateNumbers": { - "type": "boolean", - "default": false, - "description": "A value indicating whether maximum runs of number parts will be catenated. For example, if this is set to true, \"1-2\" becomes \"12\". Default is false." - }, - "catenateAll": { - "type": "boolean", - "default": false, - "description": "A value indicating whether all subword parts will be catenated. For example, if this is set to true, \"Azure-Search-1\" becomes \"AzureSearch1\". Default is false." - }, - "splitOnCaseChange": { - "type": "boolean", - "default": true, - "description": "A value indicating whether to split words on caseChange. For example, if this is set to true, \"AzureSearch\" becomes \"Azure\" \"Search\". Default is true." - }, - "preserveOriginal": { - "type": "boolean", - "default": false, - "description": "A value indicating whether original words will be preserved and added to the subword list. Default is false." - }, - "splitOnNumerics": { - "type": "boolean", - "default": true, - "description": "A value indicating whether to split on numbers. For example, if this is set to true, \"Azure1Search\" becomes \"Azure\" \"1\" \"Search\". Default is true." - }, - "stemEnglishPossessive": { - "type": "boolean", - "default": true, - "description": "A value indicating whether to remove trailing \"'s\" for each subword. Default is true." - }, - "protectedWords": { - "type": "array", - "items": { - "type": "string" - }, - "description": "A list of tokens to protect from being delimited." - } - }, - "description": "Splits words into subwords and performs optional transformations on subword groups. This token filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "http://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/miscellaneous/WordDelimiterFilter.html" - } - }, - "CharFilter": { - "discriminator": "@odata.type", - "properties": { - "@odata.type": { - "type": "string" - }, - "name": { - "type": "string", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/custom-analyzers-in-azure-search#index-attribute-reference" - }, - "description": "The name of the char filter. It must only contain letters, digits, spaces, dashes or underscores, can only start and end with alphanumeric characters, and is limited to 128 characters." - } - }, - "required": [ - "@odata.type", - "name" - ], - "description": "Abstract base class for character filters.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" - } - }, - "MappingCharFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.MappingCharFilter", - "allOf": [ - { - "$ref": "#/definitions/CharFilter" - } - ], - "properties": { - "mappings": { - "type": "array", - "items": { - "type": "string" - }, - "description": "A list of mappings of the following format: \"a=>b\" (all occurrences of the character \"a\" will be replaced with character \"b\")." - } - }, - "required": [ - "mappings" - ], - "description": "A character filter that applies mappings defined with the mappings option. Matching is greedy (longest pattern matching at a given point wins). Replacement is allowed to be the empty string. This character filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/charfilter/MappingCharFilter.html" - } - }, - "PatternReplaceCharFilter": { - "x-ms-discriminator-value": "#Microsoft.Azure.Search.PatternReplaceCharFilter", - "allOf": [ - { - "$ref": "#/definitions/CharFilter" - } - ], - "properties": { - "pattern": { - "type": "string", - "description": "A regular expression pattern." - }, - "replacement": { - "type": "string", - "description": "The replacement text." - } - }, - "required": [ - "pattern", - "replacement" - ], - "description": "A character filter that replaces characters in the input string. It uses a regular expression to identify character sequences to preserve and a replacement pattern to identify characters to replace. For example, given the input text \"aa bb aa bb\", pattern \"(aa)\\s+(bb)\", and replacement \"$1#$2\", the result would be \"aa#bb aa#bb\". This character filter is implemented using Apache Lucene.", - "externalDocs": { - "url": "https://lucene.apache.org/core/4_10_3/analyzers-common/org/apache/lucene/analysis/pattern/PatternReplaceCharFilter.html" - } - }, - "DataSourceCredentials": { - "properties": { - "connectionString": { - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Data-Source" - }, - "type": "string", - "description": "The connection string for the datasource." - } - }, - "description": "Represents credentials that can be used to connect to a datasource." - }, - "DataContainer": { - "properties": { - "name": { - "type": "string", - "description": "The name of the table or view (for Azure SQL data source) or collection (for DocumentDB data source) that will be indexed." - }, - "query": { - "type": "string", - "description": "A query that is applied to this data container. The syntax and meaning of this parameter is datasource-specific. Not supported by Azure SQL datasources." - } - }, - "required": [ - "name" - ], - "description": "Represents information about the entity (such as Azure SQL table or DocumentDb collection) that will be indexed." - }, - "DataChangeDetectionPolicy": { - "discriminator": "@odata.type", - "properties": { - "@odata.type": { - "type": "string" - } - }, - "required": [ - "@odata.type" - ], - "description": "Abstract base class for data change detection policies." - }, - "HighWaterMarkChangeDetectionPolicy": { - "description": "Defines a data change detection policy that captures changes based on the value of a high water mark column.", - "x-ms-discriminator-value": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy", - "allOf": [ - { - "$ref": "#/definitions/DataChangeDetectionPolicy" - } - ], - "properties": { - "highWaterMarkColumnName": { - "type": "string", - "description": "The name of the high water mark column." - } - }, - "required": [ - "highWaterMarkColumnName" - ] - }, - "SqlIntegratedChangeTrackingPolicy": { - "description": "Defines a data change detection policy that captures changes using the Integrated Change Tracking feature of Azure SQL Database.", - "x-ms-discriminator-value": "#Microsoft.Azure.Search.SqlIntegratedChangeTrackingPolicy", - "allOf": [ - { - "$ref": "#/definitions/DataChangeDetectionPolicy" - } - ] - }, - "DataDeletionDetectionPolicy": { - "discriminator": "@odata.type", - "properties": { - "@odata.type": { - "type": "string" - } - }, - "required": [ - "@odata.type" - ], - "description": "Abstract base class for data deletion detection policies." - }, - "SoftDeleteColumnDeletionDetectionPolicy": { - "description": "Defines a data deletion detection policy that implements a soft-deletion strategy. It determines whether an item should be deleted based on the value of a designated 'soft delete' column.", - "x-ms-discriminator-value": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy", - "allOf": [ - { - "$ref": "#/definitions/DataDeletionDetectionPolicy" - } - ], - "properties": { - "softDeleteColumnName": { - "type": "string", - "description": "The name of the column to use for soft-deletion detection." - }, - "softDeleteMarkerValue": { - "type": "string", - "description": "The marker value that identifies an item as deleted." - } - } - }, - "DataSourceType": { - "type": "string", - "enum": [ - "azuresql", - "cosmosdb", - "azureblob", - "azuretable" - ], - "x-ms-enum": { - "name": "DataSourceType", - "modelAsString": false - }, - "description": "Defines the type of a datasource." - }, - "DataSource": { - "properties": { - "name": { - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Naming-rules" - }, - "type": "string", - "description": "The name of the datasource." - }, - "description": { - "type": "string", - "description": "The description of the datasource." - }, - "type": { - "$ref": "#/definitions/DataSourceType", - "description": "The type of the datasource." - }, - "credentials": { - "$ref": "#/definitions/DataSourceCredentials", - "description": "Credentials for the datasource." - }, - "container": { - "$ref": "#/definitions/DataContainer", - "description": "The data container for the datasource." - }, - "dataChangeDetectionPolicy": { - "$ref": "#/definitions/DataChangeDetectionPolicy", - "description": "The data change detection policy for the datasource." - }, - "dataDeletionDetectionPolicy": { - "$ref": "#/definitions/DataDeletionDetectionPolicy", - "description": "The data deletion detection policy for the datasource." - }, - "@odata.etag": { - "x-ms-client-name": "ETag", - "type": "string", - "description": "The ETag of the DataSource." - } - }, - "required": [ - "name", - "type", - "credentials", - "container" - ], - "description": "Represents a datasource definition, which can be used to configure an indexer." - }, - "DataSourceListResult": { - "properties": { - "value": { - "x-ms-client-name": "DataSources", - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/DataSource" - }, - "description": "The datasources in the Search service." - } - }, - "description": "Response from a List Datasources request. If successful, it includes the full definitions of all datasources." - }, - "IndexingSchedule": { - "properties": { - "interval": { - "type": "string", - "format": "duration", - "description": "The interval of time between indexer executions." - }, - "startTime": { - "type": "string", - "format": "date-time", - "description": "The time when an indexer should start running." - } - }, - "required": [ - "interval" - ], - "description": "Represents a schedule for indexer execution." - }, - "IndexingParameters": { - "properties": { - "batchSize": { - "type": "integer", - "format": "int32", - "description": "The number of items that are read from the data source and indexed as a single batch in order to improve performance. The default depends on the data source type." - }, - "maxFailedItems": { - "type": "integer", - "format": "int32", - "default": 0, - "description": "The maximum number of items that can fail indexing for indexer execution to still be considered successful. -1 means no limit. Default is 0." - }, - "maxFailedItemsPerBatch": { - "type": "integer", - "format": "int32", - "default": 0, - "description": "The maximum number of items in a single batch that can fail indexing for the batch to still be considered successful. -1 means no limit. Default is 0." - }, - "base64EncodeKeys": { - "type": "boolean", - "default": false, - "description": "Whether indexer will base64-encode all values that are inserted into key field of the target index. This is needed if keys can contain characters that are invalid in keys (such as dot '.'). Default is false." - }, - "configuration": { - "type": "object", - "additionalProperties": { - "type": "object" - }, - "description": "A dictionary of indexer-specific configuration properties. Each name is the name of a specific property. Each value must be of a primitive type." - } - }, - "description": "Represents parameters for indexer execution.", - "x-ms-external": true - }, - "FieldMappingFunction": { - "properties": { - "name": { - "type": "string", - "description": "The name of the field mapping function." - }, - "parameters": { - "type": "object", - "additionalProperties": { - "type": "object" - }, - "description": "A dictionary of parameter name/value pairs to pass to the function. Each value must be of a primitive type." - } - }, - "required": [ - "name" - ], - "description": "Represents a function that transforms a value from a data source before indexing.", - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/search-indexer-field-mappings" - } - }, - "FieldMapping": { - "properties": { - "sourceFieldName": { - "type": "string", - "description": "The name of the field in the data source." - }, - "targetFieldName": { - "type": "string", - "description": "The name of the target field in the index. Same as the source field name by default." - }, - "mappingFunction": { - "$ref": "#/definitions/FieldMappingFunction", - "description": "A function to apply to each source field value before indexing." - } - }, - "required": [ - "sourceFieldName" - ], - "description": "Defines a mapping between a field in a data source and a target field in an index.", - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/search-indexer-field-mappings" - } - }, - "Indexer": { - "properties": { - "name": { - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Naming-rules" - }, - "type": "string", - "description": "The name of the indexer." - }, - "description": { - "type": "string", - "description": "The description of the indexer." - }, - "dataSourceName": { - "type": "string", - "description": "The name of the datasource from which this indexer reads data." - }, - "skillsetName": { - "type": "string", - "description": "The name of the skillset executing with this indexer." - }, - "targetIndexName": { - "type": "string", - "description": "The name of the index to which this indexer writes data." - }, - "schedule": { - "$ref": "#/definitions/IndexingSchedule", - "description": "The schedule for this indexer." - }, - "parameters": { - "$ref": "#/definitions/IndexingParameters", - "description": "Parameters for indexer execution." - }, - "fieldMappings": { - "type": "array", - "items": { - "$ref": "#/definitions/FieldMapping" - }, - "description": "Defines mappings between fields in the data source and corresponding target fields in the index.", - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/search-indexer-field-mappings" - } - }, - "outputFieldMappings": { - "type": "array", - "items": { - "$ref": "#/definitions/FieldMapping" - }, - "description": "Output field mappings are applied after enrichment and immediately before indexing.", - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/search-indexer-field-mappings" - } - }, - "disabled": { - "x-ms-client-name": "IsDisabled", - "type": "boolean", - "default": false, - "description": "A value indicating whether the indexer is disabled. Default is false." - }, - "@odata.etag": { - "x-ms-client-name": "ETag", - "type": "string", - "description": "The ETag of the Indexer." - } - }, - "required": [ - "name", - "dataSourceName", - "targetIndexName" - ], - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Indexer-operations" - }, - "description": "Represents an indexer." - }, - "IndexerListResult": { - "properties": { - "value": { - "x-ms-client-name": "Indexers", - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/Indexer" - }, - "description": "The indexers in the Search service." - } - }, - "description": "Response from a List Indexers request. If successful, it includes the full definitions of all indexers." - }, - "ItemError": { - "properties": { - "key": { - "type": "string", - "readOnly": true, - "description": "The key of the item for which indexing failed." - }, - "errorMessage": { - "type": "string", - "readOnly": true, - "description": "The message describing the error that occurred while processing the item." - }, - "statusCode": { - "type": "integer", - "format": "int32", - "x-nullable": false, - "readOnly": true, - "description": "The status code indicating why the indexing operation failed. Possible values include: 400 for a malformed input document, 404 for document not found, 409 for a version conflict, 422 when the index is temporarily unavailable, or 503 for when the service is too busy." - }, - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the source at which the error originated. For example, this could refer to a particular skill in the attached skillset. This may not be always available." - }, - "details": { - "type": "string", - "readOnly": true, - "description": "Additional, verbose details about the error to assist in debugging the indexer. This may not be always available." - }, - "documentationLink": { - "type": "string", - "readOnly": true, - "description": "A link to a troubleshooting guide for these classes of errors. This may not be always available." - } - }, - "description": "Represents an item- or document-level indexing error." - }, - "ItemWarning": { - "properties": { - "key": { - "type": "string", - "readOnly": true, - "description": "The key of the item which generated a warning." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The message describing the warning that occurred while processing the item." - }, - "name": { - "type": "string", - "readOnly": true, - "description": "The name of the source at which the warning originated. For example, this could refer to a particular skill in the attached skillset. This may not be always available." - }, - "details": { - "type": "string", - "readOnly": true, - "description": "Additional, verbose details about the warning to assist in debugging the indexer. This may not be always available." - }, - "documentationLink": { - "type": "string", - "readOnly": true, - "description": "A link to a troubleshooting guide for these classes of warnings. This may not be always available." - } - }, - "description": "Represents an item-level warning." - }, - "IndexerExecutionResult": { - "properties": { - "status": { - "$ref": "#/definitions/IndexerExecutionStatus", - "readOnly": true, - "description": "The outcome of this indexer execution." - }, - "errorMessage": { - "type": "string", - "readOnly": true, - "description": "The error message indicating the top-level error, if any." - }, - "startTime": { - "type": "string", - "format": "date-time", - "readOnly": true, - "description": "The start time of this indexer execution." - }, - "endTime": { - "type": "string", - "format": "date-time", - "readOnly": true, - "description": "The end time of this indexer execution, if the execution has already completed." - }, - "errors": { - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/ItemError" - }, - "description": "The item-level indexing errors." - }, - "warnings": { - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/ItemWarning" - }, - "description": "The item-level indexing warnings." - }, - "itemsProcessed": { - "x-ms-client-name": "ItemCount", - "type": "integer", - "format": "int32", - "x-nullable": false, - "readOnly": true, - "description": "The number of items that were processed during this indexer execution. This includes both successfully processed items and items where indexing was attempted but failed." - }, - "itemsFailed": { - "x-ms-client-name": "FailedItemCount", - "type": "integer", - "format": "int32", - "x-nullable": false, - "readOnly": true, - "description": "The number of items that failed to be indexed during this indexer execution." - }, - "initialTrackingState": { - "type": "string", - "readOnly": true, - "description": "Change tracking state with which an indexer execution started." - }, - "finalTrackingState": { - "type": "string", - "readOnly": true, - "description": "Change tracking state with which an indexer execution finished." - } - }, - "description": "Represents the result of an individual indexer execution." - }, - "IndexerExecutionStatus": { - "type": "string", - "enum": [ - "transientFailure", - "success", - "inProgress", - "reset" - ], - "x-ms-enum": { - "name": "IndexerExecutionStatus" - }, - "x-nullable": false, - "description": "Represents the status of an individual indexer execution." - }, - "IndexerExecutionInfo": { - "properties": { - "status": { - "$ref": "#/definitions/IndexerStatus", - "readOnly": true, - "description": "Overall indexer status." - }, - "lastResult": { - "$ref": "#/definitions/IndexerExecutionResult", - "readOnly": true, - "description": "The result of the most recent or an in-progress indexer execution." - }, - "executionHistory": { - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/IndexerExecutionResult" - }, - "description": "History of the recent indexer executions, sorted in reverse chronological order." - }, - "limits": { - "$ref": "#/definitions/IndexerLimits", - "readOnly": true, - "description": "The execution limits for the indexer." - } - }, - "description": "Represents the current status and execution history of an indexer." - }, - "IndexerStatus": { - "type": "string", - "enum": [ - "unknown", - "error", - "running" - ], - "x-ms-enum": { - "name": "IndexerStatus" - }, - "x-nullable": false, - "description": "Represents the overall indexer status." - }, - "IndexerLimits": { - "properties": { - "maxRunTime": { - "type": "string", - "format": "duration", - "readOnly": true, - "description": "The maximum duration that the indexer is permitted to run for one execution." - }, - "maxDocumentExtractionSize": { - "type": "number", - "format": "int64", - "readOnly": true, - "description": "The maximum size of a document, in bytes, which will be considered valid for indexing." - }, - "maxDocumentContentCharactersToExtract": { - "type": "number", - "format": "int64", - "readOnly": true, - "description": "The maximum number of characters that will be extracted from a document picked up for indexing." - } - } - }, - "Field": { - "properties": { - "name": { - "type": "string", - "description": "The name of the field, which must be unique within the fields collection of the index or parent field.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Naming-rules" - } - }, - "type": { - "$ref": "#/definitions/DataType", - "description": "The data type of the field.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/supported-data-types" - } - }, - "key": { - "type": "boolean", - "description": "A value indicating whether the field uniquely identifies documents in the index. Exactly one top-level field in each index must be chosen as the key field and it must be of type Edm.String. Key fields can be used to look up documents directly and update or delete specific documents. Default is false for simple fields and null for complex fields." - }, - "retrievable": { - "type": "boolean", - "description": "A value indicating whether the field can be returned in a search result. You can disable this option if you want to use a field (for example, margin) as a filter, sorting, or scoring mechanism but do not want the field to be visible to the end user. This property must be true for key fields, and it must be null for complex fields. This property can be changed on existing fields. Enabling this property does not cause any increase in index storage requirements. Default is true for simple fields and null for complex fields." - }, - "searchable": { - "type": "boolean", - "description": "A value indicating whether the field is full-text searchable. This means it will undergo analysis such as word-breaking during indexing. If you set a searchable field to a value like \"sunny day\", internally it will be split into the individual tokens \"sunny\" and \"day\". This enables full-text searches for these terms. Fields of type Edm.String or Collection(Edm.String) are searchable by default. This property must be false for simple fields of other non-string data types, and it must be null for complex fields. Note: searchable fields consume extra space in your index since Azure Cognitive Search will store an additional tokenized version of the field value for full-text searches. If you want to save space in your index and you don't need a field to be included in searches, set searchable to false." - }, - "filterable": { - "type": "boolean", - "description": "A value indicating whether to enable the field to be referenced in $filter queries. filterable differs from searchable in how strings are handled. Fields of type Edm.String or Collection(Edm.String) that are filterable do not undergo word-breaking, so comparisons are for exact matches only. For example, if you set such a field f to \"sunny day\", $filter=f eq 'sunny' will find no matches, but $filter=f eq 'sunny day' will. This property must be null for complex fields. Default is true for simple fields and null for complex fields." - }, - "sortable": { - "type": "boolean", - "description": "A value indicating whether to enable the field to be referenced in $orderby expressions. By default Azure Cognitive Search sorts results by score, but in many experiences users will want to sort by fields in the documents. A simple field can be sortable only if it is single-valued (it has a single value in the scope of the parent document). Simple collection fields cannot be sortable, since they are multi-valued. Simple sub-fields of complex collections are also multi-valued, and therefore cannot be sortable. This is true whether it's an immediate parent field, or an ancestor field, that's the complex collection. Complex fields cannot be sortable and the sortable property must be null for such fields. The default for sortable is true for single-valued simple fields, false for multi-valued simple fields, and null for complex fields." - }, - "facetable": { - "type": "boolean", - "description": "A value indicating whether to enable the field to be referenced in facet queries. Typically used in a presentation of search results that includes hit count by category (for example, search for digital cameras and see hits by brand, by megapixels, by price, and so on). This property must be null for complex fields. Fields of type Edm.GeographyPoint or Collection(Edm.GeographyPoint) cannot be facetable. Default is true for all other simple fields." - }, - "analyzer": { - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Language-support" - }, - "$ref": "#/definitions/AnalyzerName", - "description": "The name of the language analyzer to use for the field. This option can be used only with searchable fields and it can't be set together with either searchAnalyzer or indexAnalyzer. Once the analyzer is chosen, it cannot be changed for the field. Must be null for complex fields." - }, - "searchAnalyzer": { - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Language-support" - }, - "$ref": "#/definitions/AnalyzerName", - "description": "The name of the analyzer used at search time for the field. This option can be used only with searchable fields. It must be set together with indexAnalyzer and it cannot be set together with the analyzer option. This analyzer can be updated on an existing field. Must be null for complex fields." - }, - "indexAnalyzer": { - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Language-support" - }, - "$ref": "#/definitions/AnalyzerName", - "description": "The name of the analyzer used at indexing time for the field. This option can be used only with searchable fields. It must be set together with searchAnalyzer and it cannot be set together with the analyzer option. Once the analyzer is chosen, it cannot be changed for the field. Must be null for complex fields." - }, - "synonymMaps": { - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Synonym-Map-operations" - }, - "type": "array", - "items": { - "type": "string" - }, - "description": "A list of the names of synonym maps to associate with this field. This option can be used only with searchable fields. Currently only one synonym map per field is supported. Assigning a synonym map to a field ensures that query terms targeting that field are expanded at query-time using the rules in the synonym map. This attribute can be changed on existing fields. Must be null or an empty collection for complex fields." - }, - "fields": { - "type": "array", - "items": { - "$ref": "#/definitions/Field" - }, - "description": "A list of sub-fields if this is a field of type Edm.ComplexType or Collection(Edm.ComplexType). Must be null or empty for simple fields." - } - }, - "required": [ - "name", - "type" - ], - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Index" - }, - "description": "Represents a field in an index definition, which describes the name, data type, and search behavior of a field." - }, - "TextWeights": { - "properties": { - "weights": { - "type": "object", - "additionalProperties": { - "type": "number", - "format": "double", - "x-nullable": false - }, - "description": "The dictionary of per-field weights to boost document scoring. The keys are field names and the values are the weights for each field." - } - }, - "required": [ - "weights" - ], - "description": "Defines weights on index fields for which matches should boost scoring in search queries." - }, - "ScoringFunction": { - "discriminator": "type", - "properties": { - "type": { - "type": "string" - }, - "fieldName": { - "type": "string", - "description": "The name of the field used as input to the scoring function." - }, - "boost": { - "type": "number", - "format": "double", - "description": "A multiplier for the raw score. Must be a positive number not equal to 1.0." - }, - "interpolation": { - "$ref": "#/definitions/ScoringFunctionInterpolation", - "description": "A value indicating how boosting will be interpolated across document scores; defaults to \"Linear\"." - } - }, - "required": [ - "type", - "fieldName", - "boost" - ], - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" - }, - "description": "Abstract base class for functions that can modify document scores during ranking." - }, - "DistanceScoringFunction": { - "x-ms-discriminator-value": "distance", - "allOf": [ - { - "$ref": "#/definitions/ScoringFunction" - } - ], - "properties": { - "distance": { - "x-ms-client-name": "Parameters", - "$ref": "#/definitions/DistanceScoringParameters", - "description": "Parameter values for the distance scoring function." - } - }, - "required": [ - "distance" - ], - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" - }, - "description": "Defines a function that boosts scores based on distance from a geographic location." - }, - "DistanceScoringParameters": { - "properties": { - "referencePointParameter": { - "type": "string", - "description": "The name of the parameter passed in search queries to specify the reference location." - }, - "boostingDistance": { - "type": "number", - "format": "double", - "description": "The distance in kilometers from the reference location where the boosting range ends." - } - }, - "required": [ - "referencePointParameter", - "boostingDistance" - ], - "description": "Provides parameter values to a distance scoring function." - }, - "FreshnessScoringFunction": { - "x-ms-discriminator-value": "freshness", - "allOf": [ - { - "$ref": "#/definitions/ScoringFunction" - } - ], - "properties": { - "freshness": { - "x-ms-client-name": "Parameters", - "$ref": "#/definitions/FreshnessScoringParameters", - "description": "Parameter values for the freshness scoring function." - } - }, - "required": [ - "freshness" - ], - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" - }, - "description": "Defines a function that boosts scores based on the value of a date-time field." - }, - "FreshnessScoringParameters": { - "properties": { - "boostingDuration": { - "type": "string", - "format": "duration", - "description": "The expiration period after which boosting will stop for a particular document." - } - }, - "required": [ - "boostingDuration" - ], - "description": "Provides parameter values to a freshness scoring function." - }, - "MagnitudeScoringFunction": { - "x-ms-discriminator-value": "magnitude", - "allOf": [ - { - "$ref": "#/definitions/ScoringFunction" - } - ], - "properties": { - "magnitude": { - "x-ms-client-name": "Parameters", - "$ref": "#/definitions/MagnitudeScoringParameters", - "description": "Parameter values for the magnitude scoring function." - } - }, - "required": [ - "magnitude" - ], - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" - }, - "description": "Defines a function that boosts scores based on the magnitude of a numeric field." - }, - "MagnitudeScoringParameters": { - "properties": { - "boostingRangeStart": { - "type": "number", - "format": "double", - "description": "The field value at which boosting starts." - }, - "boostingRangeEnd": { - "type": "number", - "format": "double", - "description": "The field value at which boosting ends." - }, - "constantBoostBeyondRange": { - "x-ms-client-name": "ShouldBoostBeyondRangeByConstant", - "type": "boolean", - "description": "A value indicating whether to apply a constant boost for field values beyond the range end value; default is false." - } - }, - "required": [ - "boostingRangeStart", - "boostingRangeEnd" - ], - "description": "Provides parameter values to a magnitude scoring function." - }, - "TagScoringFunction": { - "x-ms-discriminator-value": "tag", - "allOf": [ - { - "$ref": "#/definitions/ScoringFunction" - } - ], - "properties": { - "tag": { - "x-ms-client-name": "Parameters", - "$ref": "#/definitions/TagScoringParameters", - "description": "Parameter values for the tag scoring function." - } - }, - "required": [ - "tag" - ], - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" - }, - "description": "Defines a function that boosts scores of documents with string values matching a given list of tags." - }, - "TagScoringParameters": { - "properties": { - "tagsParameter": { - "type": "string", - "description": "The name of the parameter passed in search queries to specify the list of tags to compare against the target field." - } - }, - "required": [ - "tagsParameter" - ], - "description": "Provides parameter values to a tag scoring function." - }, - "ScoringFunctionInterpolation": { - "type": "string", - "enum": [ - "linear", - "constant", - "quadratic", - "logarithmic" - ], - "x-ms-enum": { - "name": "ScoringFunctionInterpolation" - }, - "description": "Defines the function used to interpolate score boosting across a range of documents." - }, - "ScoringProfile": { - "properties": { - "name": { - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Naming-rules" - }, - "type": "string", - "description": "The name of the scoring profile." - }, - "text": { - "x-ms-client-name": "TextWeights", - "$ref": "#/definitions/TextWeights", - "description": "Parameters that boost scoring based on text matches in certain index fields." - }, - "functions": { - "type": "array", - "items": { - "$ref": "#/definitions/ScoringFunction" - }, - "description": "The collection of functions that influence the scoring of documents." - }, - "functionAggregation": { - "$ref": "#/definitions/ScoringFunctionAggregation", - "description": "A value indicating how the results of individual scoring functions should be combined. Defaults to \"Sum\". Ignored if there are no scoring functions." - } - }, - "required": [ - "name" - ], - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Add-scoring-profiles-to-a-search-index" - }, - "description": "Defines parameters for a search index that influence scoring in search queries." - }, - "ScoringFunctionAggregation": { - "type": "string", - "enum": [ - "sum", - "average", - "minimum", - "maximum", - "firstMatching" - ], - "x-ms-enum": { - "name": "ScoringFunctionAggregation" - }, - "description": "Defines the aggregation function used to combine the results of all the scoring functions in a scoring profile." - }, - "CorsOptions": { - "properties": { - "allowedOrigins": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of origins from which JavaScript code will be granted access to your index. Can contain a list of hosts of the form {protocol}://{fully-qualified-domain-name}[:{port#}], or a single '*' to allow all origins (not recommended)." - }, - "maxAgeInSeconds": { - "type": "integer", - "format": "int64", - "description": "The duration for which browsers should cache CORS preflight responses. Defaults to 5 minutes." - } - }, - "required": [ - "allowedOrigins" - ], - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Index" - }, - "description": "Defines options to control Cross-Origin Resource Sharing (CORS) for an index." - }, - "Suggester": { - "properties": { - "name": { - "type": "string", - "description": "The name of the suggester." - }, - "searchMode": { - "type": "string", - "enum": [ - "analyzingInfixMatching" - ], - "x-ms-enum": { - "name": "searchMode", - "modelAsString": false - }, - "description": "A value indicating the capabilities of the suggester." - }, - "sourceFields": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The list of field names to which the suggester applies. Each field must be searchable." - } - }, - "required": [ - "name", - "searchMode", - "sourceFields" - ], - "description": "Defines how the Suggest API should apply to a group of fields in the index." - }, - "Index": { - "properties": { - "name": { - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Naming-rules" - }, - "type": "string", - "description": "The name of the index." - }, - "fields": { - "type": "array", - "items": { - "$ref": "#/definitions/Field" - }, - "description": "The fields of the index." - }, - "scoringProfiles": { - "type": "array", - "items": { - "$ref": "#/definitions/ScoringProfile" - }, - "description": "The scoring profiles for the index." - }, - "defaultScoringProfile": { - "type": "string", - "description": "The name of the scoring profile to use if none is specified in the query. If this property is not set and no scoring profile is specified in the query, then default scoring (tf-idf) will be used." - }, - "corsOptions": { - "$ref": "#/definitions/CorsOptions", - "description": "Options to control Cross-Origin Resource Sharing (CORS) for the index." - }, - "suggesters": { - "type": "array", - "items": { - "$ref": "#/definitions/Suggester" - }, - "description": "The suggesters for the index." - }, - "analyzers": { - "type": "array", - "items": { - "$ref": "#/definitions/Analyzer" - }, - "description": "The analyzers for the index.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" - } - }, - "tokenizers": { - "type": "array", - "items": { - "$ref": "#/definitions/Tokenizer" - }, - "description": "The tokenizers for the index.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" - } - }, - "tokenFilters": { - "type": "array", - "items": { - "$ref": "#/definitions/TokenFilter" - }, - "description": "The token filters for the index.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" - } - }, - "charFilters": { - "type": "array", - "items": { - "$ref": "#/definitions/CharFilter" - }, - "description": "The character filters for the index.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Custom-analyzers-in-Azure-Search" - } - }, - "@odata.etag": { - "x-ms-client-name": "ETag", - "type": "string", - "description": "The ETag of the index." - } - }, - "required": [ - "name", - "fields" - ], - "description": "Represents a search index definition, which describes the fields and search behavior of an index." - }, - "IndexGetStatisticsResult": { - "properties": { - "documentCount": { - "type": "integer", - "format": "int64", - "x-nullable": false, - "readOnly": true, - "description": "The number of documents in the index." - }, - "storageSize": { - "type": "integer", - "format": "int64", - "x-nullable": false, - "readOnly": true, - "description": "The amount of storage in bytes consumed by the index." - } - }, - "description": "Statistics for a given index. Statistics are collected periodically and are not guaranteed to always be up-to-date." - }, - "IndexListResult": { - "properties": { - "value": { - "x-ms-client-name": "Indexes", - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/Index" - }, - "description": "The indexes in the Search service." - } - }, - "description": "Response from a List Indexes request. If successful, it includes the full definitions of all indexes." - }, - "Skillset": { - "properties": { - "name": { - "type": "string", - "description": "The name of the skillset." - }, - "description": { - "type": "string", - "description": "The description of the skillset." - }, - "skills": { - "type": "array", - "items": { - "$ref": "#/definitions/Skill" - }, - "description": "A list of skills in the skillset." - }, - "cognitiveServices": { - "$ref": "#/definitions/CognitiveServices", - "description": "Details about cognitive services to be used when running skills." - }, - "@odata.etag": { - "x-ms-client-name": "ETag", - "type": "string", - "description": "The ETag of the skillset." - } - }, - "required": [ - "name", - "description", - "skills" - ], - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/cognitive-search-tutorial-blob" - }, - "description": "A list of skills." - }, - "CognitiveServices": { - "discriminator": "@odata.type", - "properties": { - "@odata.type": { - "type": "string" - }, - "description": { - "type": "string" - } - }, - "required": [ - "@odata.type" - ], - "description": "Abstract base class for describing any cognitive service resource attached to the skillset." - }, - "DefaultCognitiveServices": { - "description": "An empty object that represents the default cognitive service resource for a skillset.", - "x-ms-discriminator-value": "#Microsoft.Azure.Search.DefaultCognitiveServices", - "allOf": [ - { - "$ref": "#/definitions/CognitiveServices" - } - ] - }, - "CognitiveServicesByKey": { - "description": "A cognitive service resource provisioned with a key that is attached to a skillset.", - "x-ms-discriminator-value": "#Microsoft.Azure.Search.CognitiveServicesByKey", - "allOf": [ - { - "$ref": "#/definitions/CognitiveServices" - } - ], - "properties": { - "key": { - "type": "string" - } - }, - "required": [ - "key" - ] - }, - "Skill": { - "discriminator": "@odata.type", - "properties": { - "@odata.type": { - "type": "string" - }, - "name": { - "type": "string", - "description": "The name of the skill which uniquely identifies it within the skillset. A skill with no name defined will be given a default name of its 1-based index in the skills array, prefixed with the character '#'." - }, - "description": { - "type": "string", - "description": "The description of the skill which describes the inputs, outputs, and usage of the skill." - }, - "context": { - "type": "string", - "description": "Represents the level at which operations take place, such as the document root or document content (for example, /document or /document/content). The default is /document." - }, - "inputs": { - "type": "array", - "items": { - "$ref": "#/definitions/InputFieldMappingEntry" - }, - "description": "Inputs of the skills could be a column in the source data set, or the output of an upstream skill." - }, - "outputs": { - "type": "array", - "items": { - "$ref": "#/definitions/OutputFieldMappingEntry" - }, - "description": "The output of a skill is either a field in a search index, or a value that can be consumed as an input by another skill." - } - }, - "required": [ - "@odata.type", - "inputs", - "outputs" - ], - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/cognitive-search-predefined-skills" - }, - "description": "Abstract base class for skills." - }, - "InputFieldMappingEntry": { - "properties": { - "name": { - "type": "string", - "description": "The name of the input." - }, - "source": { - "type": "string", - "description": "The source of the input." - }, - "sourceContext": { - "type": "string", - "description": "The source context used for selecting recursive inputs." - }, - "inputs": { - "type": "array", - "items": { - "$ref": "#/definitions/InputFieldMappingEntry" - }, - "description": "The recursive inputs used when creating a complex type." - } - }, - "required": [ - "name" - ], - "description": "Input field mapping for a skill." - }, - "OutputFieldMappingEntry": { - "properties": { - "name": { - "type": "string", - "description": "The name of the output defined by the skill." - }, - "targetName": { - "type": "string", - "description": "The target name of the output. It is optional and default to name." - } - }, - "required": [ - "name" - ], - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/naming-rules" - }, - "description": "Output field mapping for a skill." - }, - "ConditionalSkill": { - "x-ms-discriminator-value": "#Microsoft.Skills.Util.ConditionalSkill", - "allOf": [ - { - "$ref": "#/definitions/Skill" - } - ], - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-conditional" - }, - "description": "A skill that enables scenarios that require a Boolean operation to determine the data to assign to an output." - }, - "KeyPhraseExtractionSkill": { - "x-ms-discriminator-value": "#Microsoft.Skills.Text.KeyPhraseExtractionSkill", - "allOf": [ - { - "$ref": "#/definitions/Skill" - } - ], - "properties": { - "defaultLanguageCode": { - "$ref": "#/definitions/KeyPhraseExtractionSkillLanguage", - "description": "A value indicating which language code to use. Default is en." - }, - "maxKeyPhraseCount": { - "type": "integer", - "format": "int32", - "x-nullable": true, - "description": "A number indicating how many key phrases to return. If absent, all identified key phrases will be returned." - } - }, - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-keyphrases" - }, - "description": "A skill that uses text analytics for key phrase extraction." - }, - "OcrSkill": { - "x-ms-discriminator-value": "#Microsoft.Skills.Vision.OcrSkill", - "allOf": [ - { - "$ref": "#/definitions/Skill" - } - ], - "properties": { - "textExtractionAlgorithm": { - "$ref": "#/definitions/TextExtractionAlgorithm", - "description": "A value indicating which algorithm to use for extracting text. Default is printed." - }, - "defaultLanguageCode": { - "$ref": "#/definitions/OcrSkillLanguage", - "description": "A value indicating which language code to use. Default is en." - }, - "detectOrientation": { - "x-ms-client-name": "ShouldDetectOrientation", - "type": "boolean", - "default": false, - "description": "A value indicating to turn orientation detection on or not. Default is false." - } - }, - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-ocr" - }, - "description": "A skill that extracts text from image files." - }, - "ImageAnalysisSkill": { - "x-ms-discriminator-value": "#Microsoft.Skills.Vision.ImageAnalysisSkill", - "allOf": [ - { - "$ref": "#/definitions/Skill" - } - ], - "properties": { - "defaultLanguageCode": { - "$ref": "#/definitions/ImageAnalysisSkillLanguage", - "description": "A value indicating which language code to use. Default is en." - }, - "visualFeatures": { - "type": "array", - "items": { - "$ref": "#/definitions/VisualFeature", - "x-nullable": false - }, - "description": "A list of visual features." - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/ImageDetail", - "x-nullable": false - }, - "description": "A string indicating which domain-specific details to return." - } - }, - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-image-analysis" - }, - "description": "A skill that analyzes image files. It extracts a rich set of visual features based on the image content." - }, - "LanguageDetectionSkill": { - "x-ms-discriminator-value": "#Microsoft.Skills.Text.LanguageDetectionSkill", - "allOf": [ - { - "$ref": "#/definitions/Skill" - } - ], - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-language-detection" - }, - "description": "A skill that detects the language of input text and reports a single language code for every document submitted on the request. The language code is paired with a score indicating the confidence of the analysis." - }, - "ShaperSkill": { - "x-ms-discriminator-value": "#Microsoft.Skills.Util.ShaperSkill", - "allOf": [ - { - "$ref": "#/definitions/Skill" - } - ], - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-shaper" - }, - "description": "A skill for reshaping the outputs. It creates a complex type to support composite fields (also known as multipart fields)." - }, - "MergeSkill": { - "x-ms-discriminator-value": "#Microsoft.Skills.Text.MergeSkill", - "allOf": [ - { - "$ref": "#/definitions/Skill" - } - ], - "properties": { - "insertPreTag": { - "type": "string", - "default": " ", - "description": "The tag indicates the start of the merged text. By default, the tag is an empty space." - }, - "insertPostTag": { - "type": "string", - "default": " ", - "description": "The tag indicates the end of the merged text. By default, the tag is an empty space." - } - }, - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-textmerger" - }, - "description": "A skill for merging two or more strings into a single unified string, with an optional user-defined delimiter separating each component part." - }, - "EntityRecognitionSkill": { - "x-ms-discriminator-value": "#Microsoft.Skills.Text.EntityRecognitionSkill", - "allOf": [ - { - "$ref": "#/definitions/Skill" - } - ], - "properties": { - "categories": { - "type": "array", - "items": { - "$ref": "#/definitions/EntityCategory", - "x-nullable": false - }, - "description": "A list of entity categories that should be extracted." - }, - "defaultLanguageCode": { - "$ref": "#/definitions/EntityRecognitionSkillLanguage", - "description": "A value indicating which language code to use. Default is en." - }, - "includeTypelessEntities": { - "type": "boolean", - "x-nullable": true, - "description": "Determines whether or not to include entities which are well known but don't conform to a pre-defined type. If this configuration is not set (default), set to null or set to false, entities which don't conform to one of the pre-defined types will not be surfaced." - }, - "minimumPrecision": { - "type": "number", - "format": "double", - "x-nullable": true, - "description": "A value between 0 and 1 that be used to only include entities whose confidence score is greater than the value specified. If not set (default), or if explicitly set to null, all entities will be included." - } - }, - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-entity-recognition" - }, - "description": "Text analytics entity recognition." - }, - "NamedEntityRecognitionSkill": { - "x-ms-discriminator-value": "#Microsoft.Skills.Text.NamedEntityRecognitionSkill", - "allOf": [ - { - "$ref": "#/definitions/Skill" - } - ], - "properties": { - "categories": { - "type": "array", - "items": { - "$ref": "#/definitions/NamedEntityCategory", - "x-nullable": false - }, - "description": "A list of named entity categories." - }, - "defaultLanguageCode": { - "$ref": "#/definitions/NamedEntityRecognitionSkillLanguage", - "description": "A value indicating which language code to use. Default is en." - }, - "minimumPrecision": { - "type": "number", - "format": "double", - "x-nullable": true, - "description": "A value between 0 and 1 to indicate the confidence of the results." - } - }, - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-named-entity-recognition" - }, - "description": "Text analytics named entity recognition. This skill is deprecated in favor of EntityRecognitionSkill.", - "x-ms-external": true - }, - "SentimentSkill": { - "x-ms-discriminator-value": "#Microsoft.Skills.Text.SentimentSkill", - "allOf": [ - { - "$ref": "#/definitions/Skill" - } - ], - "properties": { - "defaultLanguageCode": { - "$ref": "#/definitions/SentimentSkillLanguage", - "description": "A value indicating which language code to use. Default is en." - } - }, - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-sentiment" - }, - "description": "Text analytics positive-negative sentiment analysis, scored as a floating point value in a range of zero to 1." - }, - "SplitSkill": { - "x-ms-discriminator-value": "#Microsoft.Skills.Text.SplitSkill", - "allOf": [ - { - "$ref": "#/definitions/Skill" - } - ], - "properties": { - "defaultLanguageCode": { - "$ref": "#/definitions/SplitSkillLanguage", - "description": "A value indicating which language code to use. Default is en." - }, - "textSplitMode": { - "$ref": "#/definitions/TextSplitMode", - "x-nullable": false, - "description": "A value indicating which split mode to perform." - }, - "maximumPageLength": { - "type": "integer", - "format": "int32", - "x-nullable": true, - "description": "The desired maximum page length. Default is 10000." - } - }, - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-textsplit" - }, - "description": "A skill to split a string into chunks of text." - }, - "TextTranslationSkill": { - "x-ms-discriminator-value": "#Microsoft.Skills.Text.TranslationSkill", - "allOf": [ - { - "$ref": "#/definitions/Skill" - } - ], - "properties": { - "defaultToLanguageCode": { - "$ref": "#/definitions/TextTranslationSkillLanguage", - "description": "The language code to translate documents into for documents that don't specify the to language explicitly. " - }, - "defaultFromLanguageCode": { - "$ref": "#/definitions/TextTranslationSkillLanguage", - "description": "The language code to translate documents from for documents that don't specify the from language explicitly." - }, - "suggestedFrom": { - "$ref": "#/definitions/TextTranslationSkillLanguage", - "description": "The language code to translate documents from when neither the fromLanguageCode input nor the defaultFromLanguageCode parameter are provided, and the automatic language detection is unsuccessful. Default is en." - } - }, - "required": [ - "defaultToLanguageCode" - ], - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/cognitive-search-skill-text-translation" - }, - "description": "A skill to translate text from one language to another." - }, - "WebApiSkill": { - "x-ms-discriminator-value": "#Microsoft.Skills.Custom.WebApiSkill", - "allOf": [ - { - "$ref": "#/definitions/Skill" - } - ], - "properties": { - "uri": { - "type": "string", - "description": "The url for the Web API." - }, - "httpHeaders": { - "$ref": "#/definitions/WebApiHttpHeaders", - "description": "The headers required to make the http request." - }, - "httpMethod": { - "type": "string", - "description": "The method for the http request." - }, - "timeout": { - "type": "string", - "format": "duration", - "description": "The desired timeout for the request. Default is 30 seconds." - }, - "batchSize": { - "type": "integer", - "format": "int32", - "x-nullable": true, - "description": "The desired batch size which indicates number of documents." - }, - "degreeOfParallelism": { - "type": "integer", - "format": "int32", - "x-nullable": true, - "description": "If set, the number of parallel calls that can be made to the Web API." - } - }, - "required": [ - "uri" - ], - "externalDocs": { - "url": "https://docs.microsoft.com/azure/search/cognitive-search-custom-skill-web-api" - }, - "description": "A skill that can call a Web API endpoint, allowing you to extend a skillset by having it call your custom code." - }, - "WebApiHttpHeaders": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "A dictionary of http request headers." - }, - "SkillsetListResult": { - "properties": { - "value": { - "x-ms-client-name": "Skillsets", - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/Skillset" - }, - "description": "The skillsets defined in the Search service." - } - }, - "description": "Response from a list Skillset request. If successful, it includes the full definitions of all skillsets." - }, - "TextExtractionAlgorithm": { - "type": "string", - "enum": [ - "printed", - "handwritten" - ], - "x-ms-enum": { - "name": "TextExtractionAlgorithm", - "modelAsString": false - }, - "description": "A value indicating which algorithm to use. Default is printed." - }, - "TextSplitMode": { - "type": "string", - "enum": [ - "pages", - "sentences" - ], - "x-ms-enum": { - "name": "TextSplitMode", - "modelAsString": false - }, - "description": "A value indicating which split mode to perform." - }, - "VisualFeature": { - "type": "string", - "enum": [ - "categories", - "tags", - "description", - "faces", - "imageType", - "color" - ], - "x-ms-enum": { - "name": "VisualFeature", - "modelAsString": false - }, - "description": "The strings indicating what visual feature types to return." - }, - "ImageDetail": { - "type": "string", - "enum": [ - "celebrities", - "landmarks" - ], - "x-ms-enum": { - "name": "ImageDetail", - "modelAsString": false - }, - "description": "A string indicating which domain-specific details to return." - }, - "EntityCategory": { - "type": "string", - "enum": [ - "location", - "organization", - "person", - "quantity", - "datetime", - "url", - "email" - ], - "x-ms-enum": { - "name": "EntityCategory", - "modelAsString": false - }, - "description": "A string indicating what entity categories to return." - }, - "NamedEntityCategory": { - "type": "string", - "enum": [ - "location", - "organization", - "person" - ], - "description": "A string indicating which named entity categories to return.", - "x-ms-external": true - }, - "SentimentSkillLanguage": { - "type": "string", - "enum": [ - "da", - "nl", - "en", - "fi", - "fr", - "de", - "el", - "it", - "no", - "pl", - "pt-PT", - "ru", - "es", - "sv", - "tr" - ], - "x-ms-enum": { - "name": "SentimentSkillLanguage", - "modelAsString": false - }, - "description": "The language codes supported for input text by SentimentSkill." - }, - "KeyPhraseExtractionSkillLanguage": { - "type": "string", - "enum": [ - "da", - "nl", - "en", - "fi", - "fr", - "de", - "it", - "ja", - "ko", - "no", - "pl", - "pt-PT", - "pt-BR", - "ru", - "es", - "sv" - ], - "x-ms-enum": { - "name": "KeyPhraseExtractionSkillLanguage", - "modelAsString": false - }, - "description": "The language codes supported for input text by KeyPhraseExtractionSkill." - }, - "OcrSkillLanguage": { - "type": "string", - "enum": [ - "zh-Hans", - "zh-Hant", - "cs", - "da", - "nl", - "en", - "fi", - "fr", - "de", - "el", - "hu", - "it", - "ja", - "ko", - "nb", - "pl", - "pt", - "ru", - "es", - "sv", - "tr", - "ar", - "ro", - "sr-Cyrl", - "sr-Latn", - "sk" - ], - "x-ms-enum": { - "name": "OcrSkillLanguage", - "modelAsString": false - }, - "description": "The language codes supported for input by OcrSkill." - }, - "SplitSkillLanguage": { - "type": "string", - "enum": [ - "da", - "de", - "en", - "es", - "fi", - "fr", - "it", - "ko", - "pt" - ], - "x-ms-enum": { - "name": "SplitSkillLanguage", - "modelAsString": false - }, - "description": "The language codes supported for input text by SplitSkill." - }, - "EntityRecognitionSkillLanguage": { - "type": "string", - "enum": [ - "de", - "en", - "es", - "fr", - "it" - ], - "x-ms-enum": { - "name": "EntityRecognitionSkillLanguage", - "modelAsString": false - }, - "description": "The language codes supported for input text by EntityRecognitionSkill." - }, - "NamedEntityRecognitionSkillLanguage": { - "type": "string", - "enum": [ - "ar", - "cs", - "da", - "de", - "en", - "es", - "fi", - "fr", - "he", - "hu", - "it", - "ko", - "pt-br", - "pt" - ], - "x-ms-enum": { - "name": "NamedEntityRecognitionSkillLanguage", - "modelAsString": false - }, - "description": "The language codes supported for input text by NamedEntityRecognitionSkill." - }, - "TextTranslationSkillLanguage": { - "type": "string", - "enum": [ - "af", - "ar", - "bn", - "bs", - "bg", - "yue", - "ca", - "zh-Hans", - "zh-Hant", - "hr", - "cs", - "da", - "nl", - "en", - "et", - "fj", - "fil", - "fi", - "fr", - "de", - "el", - "ht", - "he", - "hi", - "mww", - "hu", - "is", - "id", - "it", - "ja", - "sw", - "tlh", - "ko", - "lv", - "lt", - "mg", - "ms", - "mt", - "nb", - "fa", - "pl", - "pt", - "otq", - "ro", - "ru", - "sm", - "sr-Cyrl", - "sr-Latn", - "sk", - "sl", - "es", - "sv", - "ty", - "ta", - "te", - "th", - "to", - "tr", - "uk", - "ur", - "vi", - "cy", - "yua" - ], - "x-ms-enum": { - "name": "TextTranslationSkillLanguage", - "modelAsString": false - }, - "description": "The language codes supported for input text by TextTranslationSkill." - }, - "ImageAnalysisSkillLanguage": { - "type": "string", - "enum": [ - "en", - "zh" - ], - "x-ms-enum": { - "name": "ImageAnalysisSkillLanguage", - "modelAsString": false - }, - "description": "The language codes supported for input by ImageAnalysisSkill." - }, - "SynonymMap": { - "properties": { - "name": { - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Naming-rules" - }, - "type": "string", - "description": "The name of the synonym map." - }, - "format": { - "type": "string", - "enum": [ - "solr" - ], - "x-ms-enum": { - "name": "SynonymMapFormat", - "modelAsString": false - }, - "description": "The format of the synonym map. Only the 'solr' format is currently supported." - }, - "synonyms": { - "type": "string", - "description": "A series of synonym rules in the specified synonym map format. The rules must be separated by newlines.", - "externalDocs": { - "url": "https://docs.microsoft.com/rest/api/searchservice/Create-Synonym-Map#SynonymMapFormat" - } - }, - "@odata.etag": { - "x-ms-client-name": "ETag", - "type": "string", - "description": "The ETag of the synonym map." - } - }, - "required": [ - "name", - "format", - "synonyms" - ], - "description": "Represents a synonym map definition." - }, - "SynonymMapListResult": { - "properties": { - "value": { - "x-ms-client-name": "SynonymMaps", - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/SynonymMap" - }, - "description": "The synonym maps in the Search service." - } - }, - "description": "Response from a List SynonymMaps request. If successful, it includes the full definitions of all synonym maps." - }, - "ServiceStatistics": { - "properties": { - "counters": { - "$ref": "#/definitions/ServiceCounters", - "description": "Service level resource counters." - }, - "limits": { - "$ref": "#/definitions/ServiceLimits", - "description": "Service level general limits." - } - }, - "description": "Response from a get service statistics request. If successful, it includes service level counters and limits." - }, - "ServiceCounters": { - "properties": { - "documentCount": { - "x-ms-client-name": "documentCounter", - "$ref": "#/definitions/ResourceCounter", - "description": "Total number of documents across all indexes in the service." - }, - "indexesCount": { - "x-ms-client-name": "indexCounter", - "$ref": "#/definitions/ResourceCounter", - "description": "Total number of indexes." - }, - "indexersCount": { - "x-ms-client-name": "indexerCounter", - "$ref": "#/definitions/ResourceCounter", - "description": "Total number of indexers." - }, - "dataSourcesCount": { - "x-ms-client-name": "dataSourceCounter", - "$ref": "#/definitions/ResourceCounter", - "description": "Total number of data sources." - }, - "storageSize": { - "x-ms-client-name": "storageSizeCounter", - "$ref": "#/definitions/ResourceCounter", - "description": "Total size of used storage in bytes." - }, - "synonymMaps": { - "x-ms-client-name": "synonymMapCounter", - "$ref": "#/definitions/ResourceCounter", - "description": "Total number of synonym maps." - } - }, - "description": "Represents service-level resource counters and quotas." - }, - "ServiceLimits": { - "properties": { - "maxFieldsPerIndex": { - "type": "integer", - "format": "int32", - "x-nullable": true, - "description": "The maximum allowed fields per index." - }, - "maxFieldNestingDepthPerIndex": { - "type": "integer", - "format": "int32", - "x-nullable": true, - "description": "The maximum depth which you can nest sub-fields in an index, including the top-level complex field. For example, a/b/c has a nesting depth of 3." - }, - "maxComplexCollectionFieldsPerIndex": { - "type": "integer", - "format": "int32", - "x-nullable": true, - "description": "The maximum number of fields of type Collection(Edm.ComplexType) allowed in an index." - }, - "maxComplexObjectsInCollectionsPerDocument": { - "type": "integer", - "format": "int32", - "x-nullable": true, - "description": "The maximum number of objects in complex collections allowed per document." - } - }, - "description": "Represents various service level limits." - }, - "ResourceCounter": { - "properties": { - "usage": { - "type": "integer", - "format": "int64", - "x-nullable": false, - "description": "The resource usage amount." - }, - "quota": { - "type": "integer", - "format": "int64", - "x-nullable": true, - "description": "The resource amount quota." - } - }, - "description": "Represents a resource's usage and quota." - } - }, - "parameters": { - "ApiVersionParameter": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "Client Api Version." - }, - "ClientRequestIdParameter": { - "name": "client-request-id", - "in": "header", - "required": false, - "type": "string", - "format": "uuid", - "description": "The tracking ID sent with the request to help with debugging.", - "x-ms-client-request-id": true, - "x-ms-parameter-grouping": { - "name": "search-request-options" - }, - "x-ms-parameter-location": "method" - }, - "IfMatchParameter": { - "name": "If-Match", - "in": "header", - "required": false, - "type": "string", - "description": "Defines the If-Match condition. The operation will be performed only if the ETag on the server matches this value.", - "x-ms-parameter-grouping": { - "name": "access-condition" - }, - "x-ms-parameter-location": "method" - }, - "IfNoneMatchParameter": { - "name": "If-None-Match", - "in": "header", - "required": false, - "type": "string", - "description": "Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value.", - "x-ms-parameter-grouping": { - "name": "access-condition" - }, - "x-ms-parameter-location": "method" - }, - "PreferHeaderParameter": { - "name": "Prefer", - "in": "header", - "required": true, - "type": "string", - "enum": [ - "return=representation" - ], - "description": "For HTTP PUT requests, instructs the service to return the created/updated resource on success.", - "x-ms-parameter-location": "method" - }, - "SearchServiceNameParameter": { - "name": "searchServiceName", - "in": "path", - "required": true, - "type": "string", - "x-ms-skip-url-encoding": true, - "description": "The name of the search service.", - "x-ms-parameter-location": "client" - }, - "SearchDnsSuffixParameter": { - "name": "searchDnsSuffix", - "in": "path", - "required": true, - "type": "string", - "default": "search.windows.net", - "x-ms-skip-url-encoding": true, - "description": "The DNS suffix of the search service. The default is search.windows.net.", - "x-ms-parameter-location": "client" - } - } -} diff --git a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/CreateOrUpdateSharedPrivateLinkResource.json b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/CreateOrUpdateSharedPrivateLinkResource.json new file mode 100644 index 000000000000..b5c469638cb5 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/CreateOrUpdateSharedPrivateLinkResource.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2019-10-01-preview", + "subscriptionId": "subid", + "sharedPrivateLinkResourceName": "testResource", + "sharedPrivateLinkResource": { + "name": "testResource", + "properties": { + "requestMessage": "please approve", + "groupId": "blob", + "privateLinkResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/storageAccountName" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testResource", + "properties": { + "requestMessage": "please approve", + "groupId": "blob", + "privateLinkResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/storageAccountName", + "status": "Pending" + } + } + }, + "201": { + "body": { + "name": "testResource", + "properties": { + "requestMessage": "please approve", + "groupId": "blob", + "privateLinkResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/storageAccountName", + "status": "Pending" + } + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/DeleteSharedPrivateLinkResource.json b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/DeleteSharedPrivateLinkResource.json new file mode 100644 index 000000000000..236065a4d0fc --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/DeleteSharedPrivateLinkResource.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2019-10-01-preview", + "subscriptionId": "subid", + "sharedPrivateLinkResourceName": "testResource" + }, + "responses": { + "200": {}, + "404": {} + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/GetSharedPrivateLinkResource.json b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/GetSharedPrivateLinkResource.json new file mode 100644 index 000000000000..67bbc1de7bf8 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/GetSharedPrivateLinkResource.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2019-10-01-preview", + "subscriptionId": "subid", + "sharedPrivateLinkResourceName": "testResource" + }, + "responses": { + "200": { + "body": { + "name": "testResource", + "properties": { + "requestMessage": "please approve", + "groupId": "blob", + "privateLinkResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/storageAccountName", + "status": "Pending" + } + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/ListPrivateEndpointConnectionsByService.json b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/ListPrivateEndpointConnectionsByService.json new file mode 100644 index 000000000000..a9ab49bbc5b7 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/ListPrivateEndpointConnectionsByService.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2019-10-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice/privateEndpointConnections/testEndpoint.50bf4fbe-d7c1-4b48-a642-4f5892642546", + "name": "testEndpoint.50bf4fbe-d7c1-4b48-a642-4f5892642546", + "type": "Microsoft.Search/searchServices/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "", + "actionsRequired": "None" + } + } + } + ] + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/ListSharedPrivateLinkResourcesByService.json b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/ListSharedPrivateLinkResourcesByService.json new file mode 100644 index 000000000000..7049d4037776 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/ListSharedPrivateLinkResourcesByService.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2019-10-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testResource", + "properties": { + "requestMessage": "please approve", + "groupId": "blob", + "privateLinkResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/storageAccountName", + "status": "Pending" + } + } + ] + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/ListSupportedPrivateLinkResources.json b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/ListSupportedPrivateLinkResources.json new file mode 100644 index 000000000000..a46985ecf05c --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/ListSupportedPrivateLinkResources.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2019-10-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice/privateLinkResources/searchService", + "name": "searchService", + "type": "Microsoft.Search/searchServices/privateLinkResources", + "properties": { + "groupId": "searchService", + "requiredMembers": [ + "searchService" + ], + "requiredZoneNames": [ + "privatelink.search.windows.net" + ], + "shareablePrivateLinkResourceTypes": [ + { + "name": "blob", + "properties": { + "type": "Microsoft.Storage/storageAccounts", + "groupId": "blob", + "description": "Azure Cognitive Search indexers can connect to blobs in Azure Storage for reading data (data source), for writing intermediate results of indexer execution (annotation cache, preview) or for storing any knowledge store projections (preview)" + } + }, + { + "name": "table", + "properties": { + "type": "Microsoft.Storage/storageAccounts", + "groupId": "table", + "description": "Azure Cognitive Search indexers can connect to tables in Azure Storage for reading data (data source), for writing book-keeping information about intermediate results of indexer execution (annotation cache, preview) or for storing any knowledge store projections (preview)" + } + }, + { + "name": "Sql", + "properties": { + "type": "Microsoft.DocumentDB/databaseAccounts", + "groupId": "Sql", + "description": "Azure Cognitive Search indexers can connect to CosmosDB using the SQL head for reading data (data source)." + } + }, + { + "name": "plr", + "properties": { + "type": "Microsoft.Sql/servers", + "groupId": "sqlServer", + "description": "Azure Cognitive Search indexers can connect to AzureSQL databases in a SQL server for reading data (data source)." + } + }, + { + "name": "vault", + "properties": { + "type": "Microsoft.KeyVault/vaults", + "groupId": "vault", + "description": "Azure Cognitive Search can access keys in Azure Key Vault to encrypt search index and synonym map data" + } + }, + { + "name": "MongoDB", + "properties": { + "type": "Microsoft.DocumentDB/databaseAccounts", + "groupId": "MongoDB", + "description": "Azure Cognitive Search indexers can connect to CosmosDB using the MongoDB head for reading data (data source, preview)." + } + }, + { + "name": "Cassandra", + "properties": { + "type": "Microsoft.DocumentDB/databaseAccounts", + "groupId": "Cassandra", + "description": "Azure Cognitive Search indexers can connect to CosmosDB using the Cassandra head for reading data (data source, preview)." + } + }, + { + "name": "Gremlin", + "properties": { + "type": "Microsoft.DocumentDB/databaseAccounts", + "groupId": "Gremlin", + "description": "Azure Cognitive Search indexers can connect to CosmosDB using the Gremlin head for reading data (data source, preview)." + } + }, + { + "name": "plr", + "properties": { + "type": "Microsoft.DBforMySQL/servers", + "groupId": "mysqlServer", + "description": "Azure Cognitive Search indexers can connect to MySQL databases for reading data (data source, preview)." + } + }, + { + "name": "site", + "properties": { + "type": "Microsoft.Web/sites", + "groupId": "sites", + "description": "Azure Cognitive Search indexers can connect to App Services when executing custom web api skills that can be present in a skillset (optional) attached to the indexer." + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchCreateOrUpdateService.json b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchCreateOrUpdateService.json index 59c8a03031b2..101b058d119b 100644 --- a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchCreateOrUpdateService.json +++ b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchCreateOrUpdateService.json @@ -43,7 +43,8 @@ "endpointAccess": "Public", "ipRules": [] }, - "privateEndpointConnections": [] + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] } } }, @@ -70,7 +71,8 @@ "endpointAccess": "Public", "ipRules": [] }, - "privateEndpointConnections": [] + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] } } } diff --git a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchCreateOrUpdateServiceWithIdentity.json b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchCreateOrUpdateServiceWithIdentity.json index 879b5741afc0..07cda1191dbd 100644 --- a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchCreateOrUpdateServiceWithIdentity.json +++ b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchCreateOrUpdateServiceWithIdentity.json @@ -46,7 +46,8 @@ "endpointAccess": "Public", "ipRules": [] }, - "privateEndpointConnections": [] + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] }, "identity": { "type": "SystemAssigned", @@ -78,7 +79,8 @@ "endpointAccess": "Public", "ipRules": [] }, - "privateEndpointConnections": [] + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] }, "identity": { "type": "SystemAssigned", diff --git a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchGetService.json b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchGetService.json index 1e56e251f98b..f06e389bff2e 100644 --- a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchGetService.json +++ b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchGetService.json @@ -29,7 +29,8 @@ "endpointAccess": "Public", "ipRules": [] }, - "privateEndpointConnections": [] + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] } } } diff --git a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchListServicesByResourceGroup.json b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchListServicesByResourceGroup.json index 4745a7e47ae3..49a38ed0914a 100644 --- a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchListServicesByResourceGroup.json +++ b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchListServicesByResourceGroup.json @@ -30,7 +30,8 @@ "endpointAccess": "Public", "ipRules": [] }, - "privateEndpointConnections": [] + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] } }, { @@ -55,7 +56,8 @@ "endpointAccess": "Public", "ipRules": [] }, - "privateEndpointConnections": [] + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] } } ] diff --git a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchListServicesBySubscription.json b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchListServicesBySubscription.json index 9b8b4d6b9ab5..e7984e1d37b4 100644 --- a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchListServicesBySubscription.json +++ b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchListServicesBySubscription.json @@ -29,7 +29,8 @@ "endpointAccess": "Public", "ipRules": [] }, - "privateEndpointConnections": [] + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] } }, { @@ -54,7 +55,8 @@ "endpointAccess": "Public", "ipRules": [] }, - "privateEndpointConnections": [] + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] } } ] diff --git a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchUpdateService.json b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchUpdateService.json index 3af307242c6d..8b3d56bbf2f1 100644 --- a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchUpdateService.json +++ b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchUpdateService.json @@ -39,7 +39,8 @@ "endpointAccess": "Public", "ipRules": [] }, - "privateEndpointConnections": [] + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] } } } diff --git a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchUpdateServiceToAllowAccessFromCustomIPs.json b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchUpdateServiceToAllowAccessFromCustomIPs.json index 75012045c018..f3132081a997 100644 --- a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchUpdateServiceToAllowAccessFromCustomIPs.json +++ b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchUpdateServiceToAllowAccessFromCustomIPs.json @@ -48,7 +48,8 @@ } ] }, - "privateEndpointConnections": [] + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] } } } diff --git a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchUpdateServiceToAllowAccessFromPrivateEndpoints.json b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchUpdateServiceToAllowAccessFromPrivateEndpoints.json index f5976ef7516d..46b48947b09f 100644 --- a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchUpdateServiceToAllowAccessFromPrivateEndpoints.json +++ b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchUpdateServiceToAllowAccessFromPrivateEndpoints.json @@ -38,7 +38,8 @@ "networkRuleSet": { "endpointAccess": "Private" }, - "privateEndpointConnections": [] + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] } } } diff --git a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchUpdateServiceToRemoveIdentity.json b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchUpdateServiceToRemoveIdentity.json index ed629af8d9d1..0690361f0fd5 100644 --- a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchUpdateServiceToRemoveIdentity.json +++ b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/examples/SearchUpdateServiceToRemoveIdentity.json @@ -34,7 +34,9 @@ "networkRuleSet": { "endpointAccess": "Public", "ipRules": [] - } + }, + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] }, "identity": { "type": "None" diff --git a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/search.json b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/search.json index 1335dec6988a..33da30768990 100644 --- a/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/search.json +++ b/specification/search/resource-manager/Microsoft.Search/preview/2019-10-01-preview/search.json @@ -231,7 +231,7 @@ "QueryKeys" ], "x-ms-pageable": { - "nextLinkName": null + "nextLinkName": "nextLink" }, "operationId": "QueryKeys_ListBySearchService", "x-ms-examples": { @@ -574,7 +574,7 @@ "Services" ], "x-ms-pageable": { - "nextLinkName": null + "nextLinkName": "nextLink" }, "operationId": "Services_ListByResourceGroup", "x-ms-examples": { @@ -616,6 +616,57 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "x-ms-pageable": { + "nextLinkName": null + }, + "operationId": "PrivateLinkResources_ListSupported", + "x-ms-examples": { + "ListSupportedPrivateLinkResources": { + "$ref": "./examples/ListSupportedPrivateLinkResources.json" + } + }, + "description": "Gets a list of all supported private link resource types for the given service.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + } + ], + "responses": { + "200": { + "description": "The operation succeeded. The response contains the list of all supported private link resource types for the given service.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourcesResult" + } + }, + "default": { + "description": "An unexpected error occurred during the operation.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}/privateEndpointConnections/{privateEndpointConnectionName}": { "put": { "tags": [ @@ -777,13 +828,279 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "operationId": "PrivateEndpointConnections_ListByService", + "x-ms-examples": { + "ListPrivateEndpointConnectionsByService": { + "$ref": "./examples/ListPrivateEndpointConnectionsByService.json" + } + }, + "description": "Gets a list of all private endpoint connections in the given service.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + } + ], + "responses": { + "200": { + "description": "The operation succeeded. The response contains the list of all private endpoint connections for the given service.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "An unexpected error occurred during the operation.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}/sharedPrivateLinkResources/{sharedPrivateLinkResourceName}": { + "put": { + "tags": [ + "SharedPrivateLinkResources" + ], + "operationId": "SharedPrivateLinkResources_CreateOrUpdate", + "x-ms-examples": { + "SharedPrivateLinkResourceCreateOrUpdate": { + "$ref": "./examples/CreateOrUpdateSharedPrivateLinkResource.json" + } + }, + "description": "Creates or updates a shared private link resource managed by the Search service in the given resource group.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "$ref": "#/parameters/SharedPrivateLinkResourceNameParameter" + }, + { + "name": "sharedPrivateLinkResource", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SharedPrivateLinkResource" + }, + "description": "The definition of the shared private link resource to create or update." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The existing shared private link resource definition was successfully updated.", + "schema": { + "$ref": "#/definitions/SharedPrivateLinkResource" + } + }, + "201": { + "description": "The shared private link resource was successfully created.", + "schema": { + "$ref": "#/definitions/SharedPrivateLinkResource" + } + }, + "default": { + "description": "HTTP 400 (Bad Request): The given shared private link resource name or the shared private link resource definition is invalid; See the error code and message in the response for details. HTTP 404 (Not Found): The subscription, resource group, search service or shared private link resource could not be found. HTTP 409 (Conflict): The specified subscription is disabled. HTTP 409 (Conflict): A shared private link resource of the same name is being deleted, please retry in a few minutes.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "get": { + "tags": [ + "SharedPrivateLinkResources" + ], + "operationId": "SharedPrivateLinkResources_Get", + "x-ms-examples": { + "SharedPrivateLinkResourceGet": { + "$ref": "./examples/GetSharedPrivateLinkResource.json" + } + }, + "description": "Gets the details of the shared private link resource managed by the Search service in the given resource group.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "$ref": "#/parameters/SharedPrivateLinkResourceNameParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The definition of the shared private link resource was successfully retrieved and is in the response.", + "schema": { + "$ref": "#/definitions/SharedPrivateLinkResource" + } + }, + "default": { + "description": "HTTP 404 (Not Found): The subscription, resource group, Search service or shared private link resource could not be found.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "SharedPrivateLinkResources" + ], + "operationId": "SharedPrivateLinkResources_Delete", + "x-ms-examples": { + "SharedPrivateLinkResourceDelete": { + "$ref": "./examples/DeleteSharedPrivateLinkResource.json" + } + }, + "description": "Deletes the shared private link resource from the Search service.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "$ref": "#/parameters/SharedPrivateLinkResourceNameParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The shared private link resource was successfully deleted from the search service." + }, + "404": { + "description": "The subscription, resource group, Search service or shared private link resource could not be found." + }, + "default": { + "description": "An unexpected error occurred during the operation.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}/sharedPrivateLinkResources": { + "get": { + "tags": [ + "SharedPrivateLinkResources" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "operationId": "SharedPrivateLinkResources_ListByService", + "x-ms-examples": { + "ListSharedPrivateLinkResourcesByService": { + "$ref": "./examples/ListSharedPrivateLinkResourcesByService.json" + } + }, + "description": "Gets a list of all shared private link resources managed by the given service.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + } + ], + "responses": { + "200": { + "description": "The operation succeeded. The response contains the list of all shared private link resources managed by the given service.", + "schema": { + "$ref": "#/definitions/SharedPrivateLinkResourceListResult" + } + }, + "default": { + "description": "An unexpected error occurred during the operation.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, "/subscriptions/{subscriptionId}/providers/Microsoft.Search/searchServices": { "get": { "tags": [ "Services" ], "x-ms-pageable": { - "nextLinkName": null + "nextLinkName": "nextLink" }, "operationId": "Services_ListBySubscription", "x-ms-examples": { @@ -1106,6 +1423,194 @@ }, "description": "Describes the properties of an existing Private Endpoint connection to the Azure Cognitive Search service." }, + "PrivateEndpointConnectionListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The list of Private Endpoint connections." + } + }, + "description": "Response containing a list of Private Endpoint connections.", + "x-ms-external": true + }, + "SharedPrivateLinkResource": { + "properties": { + "name": { + "type": "string", + "description": "The name of the shared private link resource.", + "externalDocs": { + "url": "https://aka.ms/search-naming-rules" + } + }, + "properties": { + "$ref": "#/definitions/SharedPrivateLinkResourceProperties", + "description": "Describes the properties of a Shared Private Link Resource managed by the Azure Cognitive Search service." + } + }, + "description": "Describes a Shared Private Link Resource managed by the Azure Cognitive Search service." + }, + "SharedPrivateLinkResourceProperties": { + "properties": { + "privateLinkResourceId": { + "type": "string", + "description": "The resource id of the resource the shared private link resource is for." + }, + "groupId": { + "type": "string", + "description": "The group id from the provider of resource the shared private link resource is for." + }, + "requestMessage": { + "type": "string", + "description": "The request message for requesting approval of the shared private link resource." + }, + "status": { + "type": "string", + "description": "Status of the shared private link resource. Can be Pending, Approved, Rejected, Disconnected, or Timeout.", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected", + "Timeout" + ], + "x-ms-enum": { + "name": "SharedPrivateLinkResourceStatus", + "modelAsString": false + } + } + }, + "description": "Describes the properties of an existing Shared Private Link Resource managed by the Azure Cognitive Search service." + }, + "SharedPrivateLinkResourceListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SharedPrivateLinkResource" + }, + "description": "The list of Shared Private Link Resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of shared private link resources, if there are any." + } + }, + "description": "Response containing a list of Shared Private Link Resources.", + "x-ms-external": true + }, + "PrivateLinkResourcesResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + }, + "description": "The list of supported Private Link Resources." + } + }, + "description": "Response containing a list of supported Private Link Resources.", + "x-ms-external": true + }, + "PrivateLinkResource": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the private link resource." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the private link resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "readOnly": true, + "description": "Describes the properties of a supported private link resource for the Azure Cognitive Search service." + } + }, + "description": "Describes a supported private link resource for the Azure Cognitive Search service." + }, + "PrivateLinkResourceProperties": { + "properties": { + "groupId": { + "readOnly": true, + "type": "string", + "description": "The group ID of the private link resource." + }, + "requiredMembers": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of required members of the private link resource." + }, + "requiredZoneNames": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of required DNS zone names of the private link resource." + }, + "shareablePrivateLinkResourceTypes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ShareablePrivateLinkResourceType" + }, + "description": "The list of resources that are onboarded to private link service, that are supported by Azure Cognitive Search." + } + }, + "description": "Describes the properties of a supported private link resource for the Azure Cognitive Search service. For a given API version, this represents the 'supported' groupIds when creating a shared private link resource." + }, + "ShareablePrivateLinkResourceType": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the resource type that has been onboarded to private link service, supported by Azure Cognitive Search." + }, + "properties": { + "$ref": "#/definitions/ShareablePrivateLinkResourceProperties", + "readOnly": true, + "description": "Describes the properties of a resource type that has been onboarded to private link service, supported by Azure Cognitive Search." + } + }, + "description": "Describes an resource type that has been onboarded to private link service, supported by Azure Cognitive Search." + }, + "ShareablePrivateLinkResourceProperties": { + "properties": { + "type": { + "readOnly": true, + "type": "string", + "description": "The resource provider type for the resource that has been onboarded to private link service, supported by Azure Cognitive Search." + }, + "groupId": { + "readOnly": true, + "type": "string", + "description": "The resource provider group id for the resource that has been onboarded to private link service, supported by Azure Cognitive Search." + }, + "description": { + "readOnly": true, + "type": "string", + "description": "The description of the resource type that has been onboarded to private link service, supported by Azure Cognitive Search." + } + }, + "description": "Describes the properties of a resource type that has been onboarded to private link service, supported by Azure Cognitive Search." + }, "SearchService": { "properties": { "properties": { @@ -1206,6 +1711,14 @@ "$ref": "#/definitions/PrivateEndpointConnection" }, "description": "The list of private endpoint connections to the Azure Cognitive Search service." + }, + "sharedPrivateLinkResources": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SharedPrivateLinkResource" + }, + "description": "The list of shared private link resources managed by the Azure Cognitive Search service." } }, "description": "Properties of the Search service." @@ -1421,6 +1934,14 @@ "description": "The name of the private endpoint connection to the Azure Cognitive Search service with the specified resource group.", "x-ms-parameter-location": "method" }, + "SharedPrivateLinkResourceNameParameter": { + "name": "sharedPrivateLinkResourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the shared private link resource managed by the Azure Cognitive Search service within the specified resource group.", + "x-ms-parameter-location": "method" + }, "ClientRequestIdParameter": { "name": "x-ms-client-request-id", "x-ms-client-name": "clientRequestId", diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2015-08-19/search.json b/specification/search/resource-manager/Microsoft.Search/stable/2015-08-19/search.json index a31580acc364..e083026e9cbc 100644 --- a/specification/search/resource-manager/Microsoft.Search/stable/2015-08-19/search.json +++ b/specification/search/resource-manager/Microsoft.Search/stable/2015-08-19/search.json @@ -2,7 +2,7 @@ "swagger": "2.0", "info": { "title": "SearchManagementClient", - "description": "Client that can be used to manage Azure Search services and API keys.", + "description": "Client that can be used to manage Azure Cognitive Search services and API keys.", "version": "2015-08-19" }, "host": "management.azure.com", @@ -70,7 +70,7 @@ "$ref": "./examples/SearchGetAdminKeys.json" } }, - "description": "Gets the primary and secondary admin API keys for the specified Azure Search service.", + "description": "Gets the primary and secondary admin API keys for the specified Azure Cognitive Search service.", "externalDocs": { "url": "https://aka.ms/search-manage" }, @@ -93,7 +93,7 @@ ], "responses": { "200": { - "description": "The admin keys were successfully retrieved and are in the response. You can use either the primary or secondary key as the value of the 'api-key' parameter in the Azure Search Service REST API or SDK to perform any operations on your Search service, including privileged operations. Privileged operations include managing resources like indexes and data sources as well as uploading, modifying, or deleting data in your indexes.", + "description": "The admin keys were successfully retrieved and are in the response. You can use either the primary or secondary key as the value of the 'api-key' parameter in the Azure Cognitive Search Service REST API or SDK to perform any operations on your Search service, including privileged operations. Privileged operations include managing resources like indexes and data sources as well as uploading, modifying, or deleting data in your indexes.", "schema": { "$ref": "#/definitions/AdminKeyResult" } @@ -211,7 +211,7 @@ ], "responses": { "200": { - "description": "The query key was successfully created and is in the response. You can use the query key as the value of the 'api-key' parameter in the Azure Search Service REST API or SDK to perform read-only operations on your Search indexes such as querying and looking up documents by ID.", + "description": "The query key was successfully created and is in the response. You can use the query key as the value of the 'api-key' parameter in the Azure Cognitive Search Service REST API or SDK to perform read-only operations on your Search indexes such as querying and looking up documents by ID.", "schema": { "$ref": "#/definitions/QueryKey" } @@ -233,13 +233,14 @@ "x-ms-pageable": { "nextLinkName": null }, - "operationId": "QueryKeys_ListBySearchService", + "operationId": "QueryKeys_ListBySearchServiceGet", "x-ms-examples": { "SearchListQueryKeysBySearchService": { "$ref": "./examples/SearchListQueryKeysBySearchService.json" } }, - "description": "Returns the list of query API keys for the given Azure Search service.", + "description": "Returns the list of query API keys for the given Azure Cognitive Search service.", + "deprecated": true, "externalDocs": { "url": "https://aka.ms/search-manage" }, @@ -262,7 +263,7 @@ ], "responses": { "200": { - "description": "All query keys for the given Search service were successfully retrieved and are in the response. You can use any of the query keys as the value of the 'api-key' parameter in the Azure Search Service REST API or SDK to perform read-only operations on your Search indexes such as querying and looking up documents by ID.", + "description": "All query keys for the given Search service were successfully retrieved and are in the response. You can use any of the query keys as the value of the 'api-key' parameter in the Azure Cognitive Search Service REST API or SDK to perform read-only operations on your Search indexes such as querying and looking up documents by ID.", "schema": { "$ref": "#/definitions/ListQueryKeysResult" } @@ -274,6 +275,55 @@ } } } + }, + "post": { + "tags": [ + "QueryKeys" + ], + "x-ms-pageable": { + "nextLinkName": null + }, + "operationId": "QueryKeys_ListBySearchService", + "x-ms-examples": { + "SearchListQueryKeysBySearchService": { + "$ref": "./examples/SearchListQueryKeysBySearchService.json" + } + }, + "description": "Returns the list of query API keys for the given Azure Cognitive Search service.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "All query keys for the given Search service were successfully retrieved and are in the response. You can use any of the query keys as the value of the 'api-key' parameter in teh Azure Cognitive Search Service REST API or SDK to perform read-only operations on you Search indexes such as querying and looking up documents by ID.", + "schema": { + "$ref": "#/definitions/ListQueryKeysResult" + } + }, + "default": { + "description": "HTTP 404 (Not found): The subscription, resource group, or Search service could not be found. HTTP 409 (Conflict): The specified subscription is disabled", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}/deleteQueryKey/{key}": { @@ -361,7 +411,7 @@ "in": "path", "required": true, "type": "string", - "description": "The name of the Azure Search service to create or update. Search service names must only contain lowercase letters, digits or dashes, cannot use dash as the first two or last one characters, cannot contain consecutive dashes, and must be between 2 and 60 characters in length. Search service names must be globally unique since they are part of the service URI (https://.search.windows.net). You cannot change the service name after the service is created." + "description": "The name of the Azure Cognitive Search service to create or update. Search service names must only contain lowercase letters, digits or dashes, cannot use dash as the first two or last one characters, cannot contain consecutive dashes, and must be between 2 and 60 characters in length. Search service names must be globally unique since they are part of the service URI (https://.search.windows.net). You cannot change the service name after the service is created." }, { "name": "service", @@ -430,7 +480,7 @@ "in": "path", "required": true, "type": "string", - "description": "The name of the Azure Search service to update." + "description": "The name of the Azure Cognitive Search service to update." }, { "name": "service", @@ -777,7 +827,7 @@ "description": "The secondary admin API key of the Search service." } }, - "description": "Response containing the primary and secondary admin API keys for a given Azure Search service." + "description": "Response containing the primary and secondary admin API keys for a given Azure Cognitive Search service." }, "QueryKey": { "properties": { @@ -792,7 +842,7 @@ "description": "The value of the query API key." } }, - "description": "Describes an API key for a given Azure Search service that has permissions for query operations only." + "description": "Describes an API key for a given Azure Cognitive Search service that has permissions for query operations only." }, "ListQueryKeysResult": { "properties": { @@ -802,10 +852,10 @@ "items": { "$ref": "#/definitions/QueryKey" }, - "description": "The query keys for the Azure Search service." + "description": "The query keys for the Azure Cognitive Search service." } }, - "description": "Response containing the query API keys for a given Azure Search service.", + "description": "Response containing the query API keys for a given Azure Cognitive Search service.", "x-ms-external": true }, "Sku": { @@ -828,7 +878,7 @@ } } }, - "description": "Defines the SKU of an Azure Search Service, which determines price tier and capacity limits.", + "description": "Defines the SKU of an Azure Cognitive Search Service, which determines price tier and capacity limits.", "externalDocs": { "url": "https://azure.microsoft.com/documentation/articles/search-sku-tier/" } @@ -853,7 +903,7 @@ "$ref": "#/definitions/Resource" } ], - "description": "Describes an Azure Search service and its current state." + "description": "Describes an Azure Cognitive Search service and its current state." }, "SearchServiceProperties": { "properties": { @@ -889,7 +939,7 @@ "status": { "readOnly": true, "type": "string", - "description": "The status of the Search service. Possible values include: 'running': The Search service is running and no provisioning operations are underway. 'provisioning': The Search service is being provisioned or scaled up or down. 'deleting': The Search service is being deleted. 'degraded': The Search service is degraded. This can occur when the underlying search units are not healthy. The Search service is most likely operational, but performance might be slow and some requests might be dropped. 'disabled': The Search service is disabled. In this state, the service will reject all API requests. 'error': The Search service is in an error state. If your service is in the degraded, disabled, or error states, it means the Azure Search team is actively investigating the underlying issue. Dedicated services in these states are still chargeable based on the number of search units provisioned.", + "description": "The status of the Search service. Possible values include: 'running': The Search service is running and no provisioning operations are underway. 'provisioning': The Search service is being provisioned or scaled up or down. 'deleting': The Search service is being deleted. 'degraded': The Search service is degraded. This can occur when the underlying search units are not healthy. The Search service is most likely operational, but performance might be slow and some requests might be dropped. 'disabled': The Search service is disabled. In this state, the service will reject all API requests. 'error': The Search service is in an error state. If your service is in the degraded, disabled, or error states, it means the Azure Cognitive Search team is actively investigating the underlying issue. Dedicated services in these states are still chargeable based on the number of search units provisioned.", "enum": [ "running", "provisioning", @@ -936,7 +986,7 @@ "description": "The list of Search services." } }, - "description": "Response containing a list of Azure Search services.", + "description": "Response containing a list of Azure Cognitive Search services.", "x-ms-external": true }, "Resource": { @@ -1125,7 +1175,7 @@ "in": "path", "required": true, "type": "string", - "description": "The name of the Azure Search service associated with the specified resource group.", + "description": "The name of the Azure Cognitive Search service associated with the specified resource group.", "x-ms-parameter-location": "method" }, "ClientRequestIdParameter": { diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/CreateOrUpdateSharedPrivateLinkResource.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/CreateOrUpdateSharedPrivateLinkResource.json new file mode 100644 index 000000000000..ef0592e7e14f --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/CreateOrUpdateSharedPrivateLinkResource.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid", + "sharedPrivateLinkResourceName": "testResource", + "sharedPrivateLinkResource": { + "name": "testResource", + "properties": { + "requestMessage": "please approve", + "groupId": "blob", + "privateLinkResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/storageAccountName" + } + } + }, + "responses": { + "200": { + "body": { + "name": "testResource", + "properties": { + "requestMessage": "please approve", + "groupId": "blob", + "privateLinkResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/storageAccountName", + "status": "Pending" + } + } + }, + "201": { + "body": { + "name": "testResource", + "properties": { + "requestMessage": "please approve", + "groupId": "blob", + "privateLinkResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/storageAccountName", + "status": "Pending" + } + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/DeletePrivateEndpointConnection.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/DeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..83c5643e0580 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/DeletePrivateEndpointConnection.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid", + "privateEndpointConnectionName": "testEndpoint.50bf4fbe-d7c1-4b48-a642-4f5892642546" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice/privateEndpointConnections/testEndpoint.50bf4fbe-d7c1-4b48-a642-4f5892642546", + "name": "testEndpoint.50bf4fbe-d7c1-4b48-a642-4f5892642546", + "type": "Microsoft.Search/searchServices/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Disconnected", + "description": "", + "actionsRequired": "None" + } + } + } + }, + "404": {} + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/DeleteSharedPrivateLinkResource.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/DeleteSharedPrivateLinkResource.json new file mode 100644 index 000000000000..71b307bfd2d2 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/DeleteSharedPrivateLinkResource.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid", + "sharedPrivateLinkResourceName": "testResource" + }, + "responses": { + "200": {}, + "404": {} + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/GetPrivateEndpointConnection.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/GetPrivateEndpointConnection.json new file mode 100644 index 000000000000..d524adb6e969 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/GetPrivateEndpointConnection.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid", + "privateEndpointConnectionName": "testEndpoint.50bf4fbe-d7c1-4b48-a642-4f5892642546" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice/privateEndpointConnections/testEndpoint.50bf4fbe-d7c1-4b48-a642-4f5892642546", + "name": "testEndpoint.50bf4fbe-d7c1-4b48-a642-4f5892642546", + "type": "Microsoft.Search/searchServices/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/GetSharedPrivateLinkResource.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/GetSharedPrivateLinkResource.json new file mode 100644 index 000000000000..b2b8b3183ad9 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/GetSharedPrivateLinkResource.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid", + "sharedPrivateLinkResourceName": "testResource" + }, + "responses": { + "200": { + "body": { + "name": "testResource", + "properties": { + "requestMessage": "please approve", + "groupId": "blob", + "privateLinkResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/storageAccountName", + "status": "Pending" + } + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/ListPrivateEndpointConnectionsByService.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/ListPrivateEndpointConnectionsByService.json new file mode 100644 index 000000000000..0c301fd20831 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/ListPrivateEndpointConnectionsByService.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice/privateEndpointConnections/testEndpoint.50bf4fbe-d7c1-4b48-a642-4f5892642546", + "name": "testEndpoint.50bf4fbe-d7c1-4b48-a642-4f5892642546", + "type": "Microsoft.Search/searchServices/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "", + "actionsRequired": "None" + } + } + } + ] + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/ListSharedPrivateLinkResourcesByService.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/ListSharedPrivateLinkResourcesByService.json new file mode 100644 index 000000000000..b456979fed5f --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/ListSharedPrivateLinkResourcesByService.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "testResource", + "properties": { + "requestMessage": "please approve", + "groupId": "blob", + "privateLinkResourceId": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Storage/storageAccounts/storageAccountName", + "status": "Pending" + } + } + ] + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/ListSupportedPrivateLinkResources.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/ListSupportedPrivateLinkResources.json new file mode 100644 index 000000000000..f4794759ea8c --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/ListSupportedPrivateLinkResources.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice/privateLinkResources/searchService", + "name": "searchService", + "type": "Microsoft.Search/searchServices/privateLinkResources", + "properties": { + "groupId": "searchService", + "requiredMembers": [ + "searchService" + ], + "requiredZoneNames": [ + "privatelink.search.windows.net" + ], + "shareablePrivateLinkResourceTypes": [ + { + "name": "blob", + "properties": { + "type": "Microsoft.Storage/storageAccounts", + "groupId": "blob", + "description": "Azure Cognitive Search indexers can connect to blobs in Azure Storage for reading data (data source), for writing intermediate results of indexer execution (annotation cache, preview) or for storing any knowledge store projections (preview)" + } + }, + { + "name": "table", + "properties": { + "type": "Microsoft.Storage/storageAccounts", + "groupId": "table", + "description": "Azure Cognitive Search indexers can connect to tables in Azure Storage for reading data (data source), for writing book-keeping information about intermediate results of indexer execution (annotation cache, preview) or for storing any knowledge store projections (preview)" + } + }, + { + "name": "Sql", + "properties": { + "type": "Microsoft.DocumentDB/databaseAccounts", + "groupId": "Sql", + "description": "Azure Cognitive Search indexers can connect to CosmosDB using the SQL head for reading data (data source)." + } + }, + { + "name": "plr", + "properties": { + "type": "Microsoft.Sql/servers", + "groupId": "sqlServer", + "description": "Azure Cognitive Search indexers can connect to AzureSQL databases in a SQL server for reading data (data source)." + } + }, + { + "name": "vault", + "properties": { + "type": "Microsoft.KeyVault/vaults", + "groupId": "vault", + "description": "Azure Cognitive Search can access keys in Azure Key Vault to encrypt search index and synonym map data" + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCheckNameAvailability.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCheckNameAvailability.json new file mode 100644 index 000000000000..66143fc7ce73 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCheckNameAvailability.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2020-03-13", + "subscriptionId": "subid", + "checkNameAvailabilityInput": { + "name": "mysearchservice", + "type": "searchServices" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "AlreadyExists", + "message": "" + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCreateOrUpdateService.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCreateOrUpdateService.json new file mode 100644 index 000000000000..54d65779055b --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCreateOrUpdateService.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid", + "service": { + "location": "westus", + "tags": { + "app-name": "My e-commerce app" + }, + "sku": { + "name": "standard" + }, + "properties": { + "replicaCount": 3, + "partitionCount": 1, + "hostingMode": "default" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice", + "name": "mysearchservice", + "location": "westus", + "type": "Microsoft.Search/searchServices", + "tags": { + "app-name": "My e-commerce app" + }, + "sku": { + "name": "standard" + }, + "properties": { + "replicaCount": 3, + "partitionCount": 1, + "status": "provisioning", + "statusDetails": "", + "hostingMode": "default", + "provisioningState": "provisioning", + "publicNetworkAccess": "enabled", + "networkRuleSet": { + "ipRules": [] + }, + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice", + "name": "mysearchservice", + "location": "westus", + "type": "Microsoft.Search/searchServices", + "tags": { + "app-name": "My e-commerce app" + }, + "sku": { + "name": "standard" + }, + "properties": { + "replicaCount": 3, + "partitionCount": 1, + "status": "provisioning", + "statusDetails": "", + "hostingMode": "default", + "provisioningState": "provisioning", + "publicNetworkAccess": "enabled", + "networkRuleSet": { + "ipRules": [] + }, + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] + } + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCreateOrUpdateServiceWithIdentity.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCreateOrUpdateServiceWithIdentity.json new file mode 100644 index 000000000000..ffcb5f2574d3 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCreateOrUpdateServiceWithIdentity.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid", + "service": { + "location": "westus", + "tags": { + "app-name": "My e-commerce app" + }, + "sku": { + "name": "standard" + }, + "properties": { + "replicaCount": 3, + "partitionCount": 1, + "hostingMode": "default" + }, + "identity": { + "type": "SystemAssigned" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice", + "name": "mysearchservice", + "location": "westus", + "type": "Microsoft.Search/searchServices", + "tags": { + "app-name": "My e-commerce app" + }, + "sku": { + "name": "standard" + }, + "properties": { + "replicaCount": 3, + "partitionCount": 1, + "status": "provisioning", + "statusDetails": "", + "hostingMode": "default", + "provisioningState": "provisioning", + "publicNetworkAccess": "enabled", + "networkRuleSet": { + "ipRules": [] + }, + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] + }, + "identity": { + "type": "SystemAssigned", + "principalId": "9d1e1f18-2122-4988-a11c-878782e40a5c", + "tenantId": "f686d426-8d16-42db-81b7-ab578e110ccd" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice", + "name": "mysearchservice", + "location": "westus", + "type": "Microsoft.Search/searchServices", + "tags": { + "app-name": "My e-commerce app" + }, + "sku": { + "name": "standard" + }, + "properties": { + "replicaCount": 3, + "partitionCount": 1, + "status": "provisioning", + "statusDetails": "", + "hostingMode": "default", + "provisioningState": "provisioning", + "publicNetworkAccess": "enabled", + "networkRuleSet": { + "ipRules": [] + }, + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] + }, + "identity": { + "type": "SystemAssigned", + "principalId": "9d1e1f18-2122-4988-a11c-878782e40a5c", + "tenantId": "f686d426-8d16-42db-81b7-ab578e110ccd" + } + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCreateQueryKey.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCreateQueryKey.json new file mode 100644 index 000000000000..2525e9d18a9b --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchCreateQueryKey.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "name": "Query key for browser-based clients", + "api-version": "2020-03-13", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "name": "Query key for browser-based clients", + "key": "" + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchDeleteQueryKey.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchDeleteQueryKey.json new file mode 100644 index 000000000000..078a153323e6 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchDeleteQueryKey.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "key": "", + "api-version": "2020-03-13", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "204": {}, + "404": {} + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchDeleteService.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchDeleteService.json new file mode 100644 index 000000000000..ac28c9111c48 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchDeleteService.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid" + }, + "responses": { + "200": {}, + "204": {}, + "404": {} + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchGetAdminKeys.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchGetAdminKeys.json new file mode 100644 index 000000000000..9cf108082b34 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchGetAdminKeys.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "primaryKey": "", + "secondaryKey": "" + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchGetService.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchGetService.json new file mode 100644 index 000000000000..673753347e5a --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchGetService.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice", + "name": "mysearchservice", + "location": "westus", + "type": "Microsoft.Search/searchServices", + "tags": { + "app-name": "My e-commerce app" + }, + "sku": { + "name": "standard" + }, + "properties": { + "replicaCount": 3, + "partitionCount": 1, + "status": "running", + "statusDetails": "", + "hostingMode": "default", + "provisioningState": "succeeded", + "publicNetworkAccess": "enabled", + "networkRuleSet": { + "ipRules": [] + }, + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] + } + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchListQueryKeysBySearchService.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchListQueryKeysBySearchService.json new file mode 100644 index 000000000000..a2f48aa37a1e --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchListQueryKeysBySearchService.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Query key for browser-based clients", + "key": "" + }, + { + "name": "Query key for mobile clients", + "key": "" + } + ] + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchListServicesByResourceGroup.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchListServicesByResourceGroup.json new file mode 100644 index 000000000000..9a06f209589a --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchListServicesByResourceGroup.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice", + "name": "mysearchservice", + "location": "westus", + "type": "Microsoft.Search/searchServices", + "tags": { + "app-name": "My e-commerce app" + }, + "sku": { + "name": "standard" + }, + "properties": { + "replicaCount": 3, + "partitionCount": 1, + "status": "running", + "statusDetails": "", + "hostingMode": "default", + "provisioningState": "succeeded", + "publicNetworkAccess": "enabled", + "networkRuleSet": { + "ipRules": [] + }, + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice2", + "name": "mysearchservice2", + "location": "eastus", + "type": "Microsoft.Search/searchServices", + "tags": { + "app-name": "My e-commerce app" + }, + "sku": { + "name": "basic" + }, + "properties": { + "replicaCount": 1, + "partitionCount": 1, + "status": "running", + "statusDetails": "", + "hostingMode": "default", + "provisioningState": "succeeded", + "publicNetworkAccess": "enabled", + "networkRuleSet": { + "ipRules": [] + }, + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] + } + } + ] + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchListServicesBySubscription.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchListServicesBySubscription.json new file mode 100644 index 000000000000..907991ee8dbe --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchListServicesBySubscription.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "api-version": "2020-03-13", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice", + "name": "mysearchservice", + "location": "westus", + "type": "Microsoft.Search/searchServices", + "tags": { + "app-name": "My e-commerce app" + }, + "sku": { + "name": "standard" + }, + "properties": { + "replicaCount": 3, + "partitionCount": 1, + "status": "running", + "statusDetails": "", + "hostingMode": "default", + "provisioningState": "succeeded", + "publicNetworkAccess": "enabled", + "networkRuleSet": { + "ipRules": [] + }, + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] + } + }, + { + "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Search/searchServices/mysearchservice2", + "name": "mysearchservice2", + "location": "eastus", + "type": "Microsoft.Search/searchServices", + "tags": { + "app-name": "My e-commerce app" + }, + "sku": { + "name": "basic" + }, + "properties": { + "replicaCount": 1, + "partitionCount": 1, + "status": "running", + "statusDetails": "", + "hostingMode": "default", + "provisioningState": "succeeded", + "publicNetworkAccess": "enabled", + "networkRuleSet": { + "ipRules": [] + }, + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] + } + } + ] + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchRegenerateAdminKey.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchRegenerateAdminKey.json new file mode 100644 index 000000000000..2390b70c5149 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchRegenerateAdminKey.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "keyKind": "primary", + "api-version": "2020-03-13", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "primaryKey": "", + "secondaryKey": "" + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchUpdateService.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchUpdateService.json new file mode 100644 index 000000000000..063d1a9325c4 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchUpdateService.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid", + "service": { + "tags": { + "app-name": "My e-commerce app", + "new-tag": "Adding a new tag" + }, + "properties": { + "replicaCount": 2 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice", + "name": "mysearchservice", + "location": "westus", + "type": "Microsoft.Search/searchServices", + "tags": { + "app-name": "My e-commerce app", + "new-tag": "Adding a new tag" + }, + "sku": { + "name": "standard" + }, + "properties": { + "replicaCount": 2, + "partitionCount": 1, + "status": "provisioning", + "statusDetails": "", + "hostingMode": "default", + "provisioningState": "provisioning", + "publicNetworkAccess": "enabled", + "networkRuleSet": { + "ipRules": [] + }, + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] + } + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchUpdateServiceToAllowAccessFromCustomIPs.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchUpdateServiceToAllowAccessFromCustomIPs.json new file mode 100644 index 000000000000..82fb1e0c8d88 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchUpdateServiceToAllowAccessFromCustomIPs.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid", + "service": { + "properties": { + "replicaCount": 3, + "partitionCount": 1, + "networkRuleSet": { + "ipRules": [ + { + "value": "10.2.3.4" + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice", + "name": "mysearchservice", + "location": "westus", + "type": "Microsoft.Search/searchServices", + "tags": { + "app-name": "My e-commerce app", + "new-tag": "Adding a new tag" + }, + "sku": { + "name": "standard" + }, + "properties": { + "replicaCount": 3, + "partitionCount": 1, + "status": "running", + "statusDetails": "", + "hostingMode": "default", + "provisioningState": "succeeded", + "publicNetworkAccess": "enabled", + "networkRuleSet": { + "ipRules": [ + { + "value": "10.2.3.4" + } + ] + }, + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] + } + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchUpdateServiceToAllowAccessFromPrivateEndpoints.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchUpdateServiceToAllowAccessFromPrivateEndpoints.json new file mode 100644 index 000000000000..9ca6ab6cb3c4 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchUpdateServiceToAllowAccessFromPrivateEndpoints.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid", + "service": { + "properties": { + "replicaCount": 1, + "partitionCount": 1, + "networkRuleSet": { + "ipRules": [] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice", + "name": "mysearchservice", + "location": "westus", + "type": "Microsoft.Search/searchServices", + "tags": { + "app-name": "My e-commerce app", + "new-tag": "Adding a new tag" + }, + "sku": { + "name": "basic" + }, + "properties": { + "replicaCount": 1, + "partitionCount": 1, + "status": "running", + "statusDetails": "", + "hostingMode": "default", + "provisioningState": "succeeded", + "publicNetworkAccess": "enabled", + "networkRuleSet": { + "ipRules": [] + }, + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] + } + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchUpdateServiceToRemoveIdentity.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchUpdateServiceToRemoveIdentity.json new file mode 100644 index 000000000000..5fcb2deacab0 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/SearchUpdateServiceToRemoveIdentity.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid", + "service": { + "sku": { + "name": "standard" + }, + "identity": { + "type": "None" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice", + "name": "mysearchservice", + "location": "westus", + "type": "Microsoft.Search/searchServices", + "tags": {}, + "sku": { + "name": "standard" + }, + "properties": { + "replicaCount": 3, + "partitionCount": 1, + "status": "running", + "statusDetails": "", + "hostingMode": "default", + "provisioningState": "succeeded", + "publicNetworkAccess": "enabled", + "networkRuleSet": { + "ipRules": [] + }, + "privateEndpointConnections": [], + "sharedPrivateLinkResources": [] + }, + "identity": { + "type": "None" + } + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/UpdatePrivateEndpointConnection.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/UpdatePrivateEndpointConnection.json new file mode 100644 index 000000000000..00290d4e4d54 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/examples/UpdatePrivateEndpointConnection.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "searchServiceName": "mysearchservice", + "resourceGroupName": "rg1", + "api-version": "2020-03-13", + "subscriptionId": "subid", + "privateEndpointConnectionName": "testEndpoint.50bf4fbe-d7c1-4b48-a642-4f5892642546", + "privateEndpointConnection": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice/privateEndpointConnections/testEndpoint.50bf4fbe-d7c1-4b48-a642-4f5892642546", + "properties": { + "privateLinkServiceConnectionState": { + "status": "Rejected", + "description": "Rejected for some reason" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Search/searchServices/mysearchservice/privateEndpointConnections/testEndpoint.50bf4fbe-d7c1-4b48-a642-4f5892642546", + "name": "testEndpoint.50bf4fbe-d7c1-4b48-a642-4f5892642546", + "type": "Microsoft.Search/searchServices/privateEndpointConnections", + "properties": { + "privateEndpoint": { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/privateEndpoints/testEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Rejected", + "description": "Rejected for some reason", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/search.json b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/search.json new file mode 100644 index 000000000000..e96041380541 --- /dev/null +++ b/specification/search/resource-manager/Microsoft.Search/stable/2020-03-13/search.json @@ -0,0 +1,1974 @@ +{ + "swagger": "2.0", + "info": { + "title": "SearchManagementClient", + "description": "Client that can be used to manage Azure Cognitive Search services and API keys.", + "version": "2020-03-13" + }, + "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": { + "/providers/Microsoft.Search/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all of the available REST API operations of the Microsoft.Search provider.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success. The response describes the list of operations.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}/listAdminKeys": { + "post": { + "tags": [ + "AdminKeys" + ], + "operationId": "AdminKeys_Get", + "x-ms-examples": { + "SearchGetAdminKeys": { + "$ref": "./examples/SearchGetAdminKeys.json" + } + }, + "description": "Gets the primary and secondary admin API keys for the specified Azure Cognitive Search service.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The admin keys were successfully retrieved and are in the response. You can use either the primary or secondary key as the value of the 'api-key' parameter in the Azure Cognitive Search Service REST API or SDK to perform any operations on your Search service, including privileged operations. Privileged operations include managing resources like indexes and data sources as well as uploading, modifying, or deleting data in your indexes.", + "schema": { + "$ref": "#/definitions/AdminKeyResult" + } + }, + "default": { + "description": "HTTP 404 (Not Found): The subscription, resource group, or Search service could not be found. HTTP 409 (Conflict): The specified subscription is disabled.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}/regenerateAdminKey/{keyKind}": { + "post": { + "tags": [ + "AdminKeys" + ], + "operationId": "AdminKeys_Regenerate", + "x-ms-examples": { + "SearchRegenerateAdminKey": { + "$ref": "./examples/SearchRegenerateAdminKey.json" + } + }, + "description": "Regenerates either the primary or secondary admin API key. You can only regenerate one key at a time.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "name": "keyKind", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "primary", + "secondary" + ], + "x-ms-enum": { + "name": "AdminKeyKind", + "modelAsString": false + }, + "description": "Specifies which key to regenerate. Valid values include 'primary' and 'secondary'." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The specified admin key was successfully regenerated. Both admin keys are included in the response, including the newly-regenerated key.", + "schema": { + "$ref": "#/definitions/AdminKeyResult" + } + }, + "default": { + "description": "HTTP 404 (Not Found): The subscription, resource group, or Search service could not be found. HTTP 409 (Conflict): The specified subscription is disabled.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}/createQueryKey/{name}": { + "post": { + "tags": [ + "QueryKeys" + ], + "operationId": "QueryKeys_Create", + "x-ms-examples": { + "SearchCreateQueryKey": { + "$ref": "./examples/SearchCreateQueryKey.json" + } + }, + "description": "Generates a new query key for the specified Search service. You can create up to 50 query keys per service.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the new query API key." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The query key was successfully created and is in the response. You can use the query key as the value of the 'api-key' parameter in the Azure Cognitive Search Service REST API or SDK to perform read-only operations on your Search indexes such as querying and looking up documents by ID.", + "schema": { + "$ref": "#/definitions/QueryKey" + } + }, + "default": { + "description": "HTTP 404 (Not Found): The subscription, resource group, or Search service could not be found. HTTP 409 (Conflict): The specified subscription is disabled.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}/listQueryKeys": { + "post": { + "tags": [ + "QueryKeys" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "operationId": "QueryKeys_ListBySearchService", + "x-ms-examples": { + "SearchListQueryKeysBySearchService": { + "$ref": "./examples/SearchListQueryKeysBySearchService.json" + } + }, + "description": "Returns the list of query API keys for the given Azure Cognitive Search service.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "All query keys for the given Search service were successfully retrieved and are in the response. You can use any of the query keys as the value of the 'api-key' parameter in the Azure Cognitive Search Service REST API or SDK to perform read-only operations on your Search indexes such as querying and looking up documents by ID.", + "schema": { + "$ref": "#/definitions/ListQueryKeysResult" + } + }, + "default": { + "description": "HTTP 404 (Not Found): The subscription, resource group, or Search service could not be found. HTTP 409 (Conflict): The specified subscription is disabled.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}/deleteQueryKey/{key}": { + "delete": { + "tags": [ + "QueryKeys" + ], + "operationId": "QueryKeys_Delete", + "x-ms-examples": { + "SearchDeleteQueryKey": { + "$ref": "./examples/SearchDeleteQueryKey.json" + } + }, + "description": "Deletes the specified query key. Unlike admin keys, query keys are not regenerated. The process for regenerating a query key is to delete and then recreate it.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "name": "key", + "in": "path", + "required": true, + "type": "string", + "description": "The query key to be deleted. Query keys are identified by value, not by name." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The query key was successfully deleted." + }, + "204": { + "description": "The query key was successfully deleted." + }, + "404": { + "description": "The subscription, resource group, Search service, or query key could not be found." + }, + "default": { + "description": "HTTP 409 (Conflict): The specified subscription is disabled.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}": { + "put": { + "tags": [ + "Services" + ], + "operationId": "Services_CreateOrUpdate", + "x-ms-examples": { + "SearchCreateOrUpdateService": { + "$ref": "./examples/SearchCreateOrUpdateService.json" + }, + "SearchCreateOrUpdateServiceWithIdentity": { + "$ref": "./examples/SearchCreateOrUpdateServiceWithIdentity.json" + } + }, + "description": "Creates or updates a Search service in the given resource group. If the Search service already exists, all properties will be updated with the given values.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "searchServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Cognitive Search service to create or update. Search service names must only contain lowercase letters, digits or dashes, cannot use dash as the first two or last one characters, cannot contain consecutive dashes, and must be between 2 and 60 characters in length. Search service names must be globally unique since they are part of the service URI (https://.search.windows.net). You cannot change the service name after the service is created." + }, + { + "name": "service", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SearchService" + }, + "description": "The definition of the Search service to create or update." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The existing service definition was successfully updated. If you changed the number of replicas or partitions, the scale operation will happen asynchronously. You can periodically get your service definition and monitor progress via the provisioningState property.", + "schema": { + "$ref": "#/definitions/SearchService" + } + }, + "201": { + "description": "If you requested creation of a free Search service, the service is now provisioned and ready to use, subject to DNS propagation delay. For other SKU types, provisioning happens asynchronously. You can periodically get your service definition and monitor progress via the provisioningState property.", + "schema": { + "$ref": "#/definitions/SearchService" + } + }, + "default": { + "description": "HTTP 400 (Bad Request): The given service name or service definition is invalid; See the error code and message in the response for details. HTTP 404 (Not Found): The subscription or resource group could not be found. HTTP 409 (Conflict): The specified subscription is disabled.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Services" + ], + "operationId": "Services_Update", + "x-ms-examples": { + "SearchUpdateService": { + "$ref": "./examples/SearchUpdateService.json" + }, + "SearchUpdateServiceToRemoveIdentity": { + "$ref": "./examples/SearchUpdateServiceToRemoveIdentity.json" + }, + "searchUpdateServiceToAllowAccessFromCustomIPs": { + "$ref": "./examples/SearchUpdateServiceToAllowAccessFromCustomIPs.json" + }, + "searchUpdateServiceToAllowAccessFromPrivateEndpoints": { + "$ref": "./examples/SearchUpdateServiceToAllowAccessFromPrivateEndpoints.json" + } + }, + "description": "Updates an existing Search service in the given resource group.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "name": "searchServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Cognitive Search service to update." + }, + { + "name": "service", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SearchService" + }, + "description": "The definition of the Search service to update." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The existing service definition was successfully updated. If you changed the number of replicas or partitions, the scale operation will happen asynchronously. You can periodically get your service definition and monitor progress via the provisioningState property.", + "schema": { + "$ref": "#/definitions/SearchService" + } + }, + "default": { + "description": "HTTP 400 (Bad Request): The given service definition is invalid or you attempted to change a property that is immutable; See the error code and message in the response for details. HTTP 404 (Not Found): The subscription or resource group could not be found. HTTP 409 (Conflict): The specified subscription is disabled.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "get": { + "tags": [ + "Services" + ], + "operationId": "Services_Get", + "x-ms-examples": { + "SearchGetService": { + "$ref": "./examples/SearchGetService.json" + } + }, + "description": "Gets the Search service with the given name in the given resource group.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The Search service definition was successfully retrieved and is in the response. If you are polling for the completion of a provisioning or scale operation, you can check its status via the provisioningState property.", + "schema": { + "$ref": "#/definitions/SearchService" + } + }, + "default": { + "description": "HTTP 404 (Not Found): The subscription, resource group, or Search service name could not be found.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "Services" + ], + "operationId": "Services_Delete", + "x-ms-examples": { + "SearchDeleteService": { + "$ref": "./examples/SearchDeleteService.json" + } + }, + "description": "Deletes a Search service in the given resource group, along with its associated resources.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The Search service was successfully deleted." + }, + "204": { + "description": "The Search service was successfully deleted." + }, + "404": { + "description": "The subscription, resource group, or Search service could not be found." + }, + "default": { + "description": "An unexpected error occurred during the operation.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices": { + "get": { + "tags": [ + "Services" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "operationId": "Services_ListByResourceGroup", + "x-ms-examples": { + "SearchListServicesByResourceGroup": { + "$ref": "./examples/SearchListServicesByResourceGroup.json" + } + }, + "description": "Gets a list of all Search services in the given resource group.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation succeeded. The response contains the list of all Search service definitions for the given resource group.", + "schema": { + "$ref": "#/definitions/SearchServiceListResult" + } + }, + "default": { + "description": "An unexpected error occurred during the operation.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "x-ms-pageable": { + "nextLinkName": null + }, + "operationId": "PrivateLinkResources_ListSupported", + "x-ms-examples": { + "ListSupportedPrivateLinkResources": { + "$ref": "./examples/ListSupportedPrivateLinkResources.json" + } + }, + "description": "Gets a list of all supported private link resource types for the given service.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + } + ], + "responses": { + "200": { + "description": "The operation succeeded. The response contains the list of all supported private link resource types for the given service.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourcesResult" + } + }, + "default": { + "description": "An unexpected error occurred during the operation.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Update", + "x-ms-examples": { + "PrivateEndpointConnectionUpdate": { + "$ref": "./examples/UpdatePrivateEndpointConnection.json" + } + }, + "description": "Updates a Private Endpoint connection to the Search service in the given resource group.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + }, + { + "name": "privateEndpointConnection", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The definition of the private endpoint connection to update." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The existing private endpoint connection definition was successfully updated.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "HTTP 400 (Bad Request): The given private endpoint connection name or the private endpoint connection definition is invalid; See the error code and message in the response for details. HTTP 404 (Not Found): The subscription, resource group, search service or private endpoint connection could not be found. HTTP 409 (Conflict): The specified subscription is disabled.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Get", + "x-ms-examples": { + "PrivateEndpointConnectionGet": { + "$ref": "./examples/GetPrivateEndpointConnection.json" + } + }, + "description": "Gets the details of the private endpoint connection to the Search service in the given resource group.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The definition of the private endpoint connection was successfully retrieved and is in the response.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "HTTP 404 (Not Found): The subscription, resource group, Search service or private endpoint connection could not be found.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Delete", + "x-ms-examples": { + "PrivateEndpointConnectionDelete": { + "$ref": "./examples/DeletePrivateEndpointConnection.json" + } + }, + "description": "Disconnects the private endpoint connection and deletes it from the Search service.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionNameParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The private endpoint connection was successfully disconnected and removed from the search service. The response will contain the updated definition of the private endpoint connection.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "404": { + "description": "The subscription, resource group, Search service or private endpoint connection could not be found." + }, + "default": { + "description": "An unexpected error occurred during the operation.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "operationId": "PrivateEndpointConnections_ListByService", + "x-ms-examples": { + "ListPrivateEndpointConnectionsByService": { + "$ref": "./examples/ListPrivateEndpointConnectionsByService.json" + } + }, + "description": "Gets a list of all private endpoint connections in the given service.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + } + ], + "responses": { + "200": { + "description": "The operation succeeded. The response contains the list of all private endpoint connections for the given service.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "An unexpected error occurred during the operation.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}/sharedPrivateLinkResources/{sharedPrivateLinkResourceName}": { + "put": { + "tags": [ + "SharedPrivateLinkResources" + ], + "operationId": "SharedPrivateLinkResources_CreateOrUpdate", + "x-ms-examples": { + "SharedPrivateLinkResourceCreateOrUpdate": { + "$ref": "./examples/CreateOrUpdateSharedPrivateLinkResource.json" + } + }, + "description": "Creates or updates a shared private link resource managed by the Search service in the given resource group.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "$ref": "#/parameters/SharedPrivateLinkResourceNameParameter" + }, + { + "name": "sharedPrivateLinkResource", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SharedPrivateLinkResource" + }, + "description": "The definition of the shared private link resource to create or update." + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The existing shared private link resource definition was successfully updated.", + "schema": { + "$ref": "#/definitions/SharedPrivateLinkResource" + } + }, + "201": { + "description": "The shared private link resource was successfully created.", + "schema": { + "$ref": "#/definitions/SharedPrivateLinkResource" + } + }, + "default": { + "description": "HTTP 400 (Bad Request): The given shared private link resource name or the shared private link resource definition is invalid; See the error code and message in the response for details. HTTP 404 (Not Found): The subscription, resource group, search service or shared private link resource could not be found. HTTP 409 (Conflict): The specified subscription is disabled. HTTP 409 (Conflict): A shared private link resource of the same name is being deleted, please retry in a few minutes.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "get": { + "tags": [ + "SharedPrivateLinkResources" + ], + "operationId": "SharedPrivateLinkResources_Get", + "x-ms-examples": { + "SharedPrivateLinkResourceGet": { + "$ref": "./examples/GetSharedPrivateLinkResource.json" + } + }, + "description": "Gets the details of the shared private link resource managed by the Search service in the given resource group.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "$ref": "#/parameters/SharedPrivateLinkResourceNameParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The definition of the shared private link resource was successfully retrieved and is in the response.", + "schema": { + "$ref": "#/definitions/SharedPrivateLinkResource" + } + }, + "default": { + "description": "HTTP 404 (Not Found): The subscription, resource group, Search service or shared private link resource could not be found.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "tags": [ + "SharedPrivateLinkResources" + ], + "operationId": "SharedPrivateLinkResources_Delete", + "x-ms-examples": { + "SharedPrivateLinkResourceDelete": { + "$ref": "./examples/DeleteSharedPrivateLinkResource.json" + } + }, + "description": "Deletes the shared private link resource from the Search service.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + }, + { + "$ref": "#/parameters/SharedPrivateLinkResourceNameParameter" + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The shared private link resource was successfully deleted from the search service." + }, + "404": { + "description": "The subscription, resource group, Search service or shared private link resource could not be found." + }, + "default": { + "description": "An unexpected error occurred during the operation.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Search/searchServices/{searchServiceName}/sharedPrivateLinkResources": { + "get": { + "tags": [ + "SharedPrivateLinkResources" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "operationId": "SharedPrivateLinkResources_ListByService", + "x-ms-examples": { + "ListSharedPrivateLinkResourcesByService": { + "$ref": "./examples/ListSharedPrivateLinkResourcesByService.json" + } + }, + "description": "Gets a list of all shared private link resources managed by the given service.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/SearchServiceNameParameter" + } + ], + "responses": { + "200": { + "description": "The operation succeeded. The response contains the list of all shared private link resources managed by the given service.", + "schema": { + "$ref": "#/definitions/SharedPrivateLinkResourceListResult" + } + }, + "default": { + "description": "An unexpected error occurred during the operation.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Search/searchServices": { + "get": { + "tags": [ + "Services" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "operationId": "Services_ListBySubscription", + "x-ms-examples": { + "SearchListServicesBySubscription": { + "$ref": "./examples/SearchListServicesBySubscription.json" + } + }, + "description": "Gets a list of all Search services in the given subscription.", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "parameters": [ + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The operation succeeded. The response contains the list of all Search service definitions for the given subscription.", + "schema": { + "$ref": "#/definitions/SearchServiceListResult" + } + }, + "default": { + "description": "An unexpected error occurred during the operation.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Search/checkNameAvailability": { + "post": { + "tags": [ + "Services" + ], + "description": "Checks whether or not the given Search service name is available for use. Search service names must be globally unique since they are part of the service URI (https://.search.windows.net).", + "externalDocs": { + "url": "https://aka.ms/search-manage" + }, + "operationId": "Services_CheckNameAvailability", + "x-ms-examples": { + "SearchCheckNameAvailability": { + "$ref": "./examples/SearchCheckNameAvailability.json" + } + }, + "parameters": [ + { + "name": "checkNameAvailabilityInput", + "in": "body", + "description": "The resource name and type to check.", + "x-ms-client-flatten": true, + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityInput" + } + }, + { + "$ref": "#/parameters/ClientRequestIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "The name check completed. The response contains details of whether the name is valid and available. If the name is invalid, the response also contains a message explaining why not.", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityOutput" + } + }, + "default": { + "description": "HTTP 400 (Bad Request): The given resource type is not 'searchServices'.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "CheckNameAvailabilityInput": { + "type": "object", + "required": [ + "name", + "type" + ], + "properties": { + "name": { + "description": "The Search service name to validate. Search service names must only contain lowercase letters, digits or dashes, cannot use dash as the first two or last one characters, cannot contain consecutive dashes, and must be between 2 and 60 characters in length.", + "type": "string" + }, + "type": { + "description": "The type of the resource whose name is to be validated. This value must always be 'searchServices'.", + "type": "string", + "enum": [ + "searchServices" + ], + "x-ms-enum": { + "name": "ResourceType", + "modelAsString": false + } + } + }, + "description": "Input of check name availability API." + }, + "CheckNameAvailabilityOutput": { + "type": "object", + "properties": { + "nameAvailable": { + "x-ms-client-name": "IsNameAvailable", + "description": "A value indicating whether the name is available.", + "type": "boolean", + "readOnly": true + }, + "reason": { + "description": "The reason why the name is not available. 'Invalid' indicates the name provided does not match the naming requirements (incorrect length, unsupported characters, etc.). 'AlreadyExists' indicates that the name is already in use and is therefore unavailable.", + "type": "string", + "readOnly": true, + "enum": [ + "Invalid", + "AlreadyExists" + ], + "x-ms-enum": { + "name": "UnavailableNameReason", + "modelAsString": true + } + }, + "message": { + "description": "A message that explains why the name is invalid and provides resource naming requirements. Available only if 'Invalid' is returned in the 'reason' property.", + "type": "string", + "readOnly": true + } + }, + "description": "Output of check name availability API." + }, + "AdminKeyResult": { + "properties": { + "primaryKey": { + "readOnly": true, + "type": "string", + "description": "The primary admin API key of the Search service." + }, + "secondaryKey": { + "readOnly": true, + "type": "string", + "description": "The secondary admin API key of the Search service." + } + }, + "description": "Response containing the primary and secondary admin API keys for a given Azure Cognitive Search service." + }, + "QueryKey": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the query API key; may be empty." + }, + "key": { + "readOnly": true, + "type": "string", + "description": "The value of the query API key." + } + }, + "description": "Describes an API key for a given Azure Cognitive Search service that has permissions for query operations only." + }, + "ListQueryKeysResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/QueryKey" + }, + "description": "The query keys for the Azure Cognitive Search service." + } + }, + "description": "Response containing the query API keys for a given Azure Cognitive Search service.", + "x-ms-external": true + }, + "Sku": { + "properties": { + "name": { + "type": "string", + "description": "The SKU of the Search service. Valid values include: 'free': Shared service. 'basic': Dedicated service with up to 3 replicas. 'standard': Dedicated service with up to 12 partitions and 12 replicas. 'standard2': Similar to standard, but with more capacity per search unit. 'standard3': The largest Standard offering with up to 12 partitions and 12 replicas (or up to 3 partitions with more indexes if you also set the hostingMode property to 'highDensity'). 'storage_optimized_l1': Supports 1TB per partition, up to 12 partitions. 'storage_optimized_l2': Supports 2TB per partition, up to 12 partitions.'", + "enum": [ + "free", + "basic", + "standard", + "standard2", + "standard3", + "storage_optimized_l1", + "storage_optimized_l2" + ], + "x-ms-enum": { + "name": "SkuName", + "modelAsString": false + } + } + }, + "description": "Defines the SKU of an Azure Cognitive Search Service, which determines price tier and capacity limits.", + "externalDocs": { + "url": "https://azure.microsoft.com/documentation/articles/search-sku-tier/" + } + }, + "PrivateEndpointConnection": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the private endpoint connection. This can be used with the Azure Resource Manager to link resources together.", + "externalDocs": { + "url": "https://aka.ms/search-linked-resources" + } + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the private endpoint connection.", + "externalDocs": { + "url": "https://aka.ms/search-naming-rules" + } + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Describes the properties of an existing Private Endpoint connection to the Azure Cognitive Search service." + } + }, + "description": "Describes an existing Private Endpoint connection to the Azure Cognitive Search service." + }, + "NetworkRuleSet": { + "properties": { + "ipRules": { + "type": "array", + "description": "A list of IP restriction rules that defines the inbound network access to the search service endpoint. These restriction rules are applied only when the EndpointAccess of the search service is Public.", + "items": { + "$ref": "#/definitions/IpRule" + } + } + }, + "description": "Network specific rules that determine how the Azure Cognitive Search service may be reached." + }, + "IpRule": { + "properties": { + "value": { + "type": "string", + "description": "Value corresponding to a single IPv4 address (eg., 123.1.2.3) or an IP range in CIDR format (eg., 123.1.2.3/24) to be allowed." + } + }, + "description": "The IP restriction rule of the Azure Cognitive Search service." + }, + "PrivateEndpointConnectionProperties": { + "properties": { + "privateEndpoint": { + "properties": { + "id": { + "type": "string", + "description": "The resource id of the private endpoint resource from Microsoft.Network provider." + } + }, + "description": "The private endpoint resource from Microsoft.Network provider." + }, + "privateLinkServiceConnectionState": { + "type": "object", + "properties": { + "status": { + "type": "string", + "description": "Status of the the private link service connection. Can be Pending, Approved, Rejected, or Disconnected.", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ], + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStatus", + "modelAsString": false + } + }, + "description": { + "type": "string", + "description": "The description for the private link service connection state." + }, + "actionsRequired": { + "type": "string", + "description": "A description of any extra actions that may be required.", + "default": "None" + } + }, + "description": "Describes the current state of an existing Private Link Service connection to the Azure Private Endpoint." + } + }, + "description": "Describes the properties of an existing Private Endpoint connection to the Azure Cognitive Search service." + }, + "PrivateEndpointConnectionListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The list of Private Endpoint connections." + } + }, + "description": "Response containing a list of Private Endpoint connections.", + "x-ms-external": true + }, + "SharedPrivateLinkResource": { + "properties": { + "name": { + "type": "string", + "description": "The name of the shared private link resource.", + "externalDocs": { + "url": "https://aka.ms/search-naming-rules" + } + }, + "properties": { + "$ref": "#/definitions/SharedPrivateLinkResourceProperties", + "description": "Describes the properties of a Shared Private Link Resource managed by the Azure Cognitive Search service." + } + }, + "description": "Describes a Shared Private Link Resource managed by the Azure Cognitive Search service." + }, + "SharedPrivateLinkResourceProperties": { + "properties": { + "privateLinkResourceId": { + "type": "string", + "description": "The resource id of the resource the shared private link resource is for." + }, + "groupId": { + "type": "string", + "description": "The group id from the provider of resource the shared private link resource is for." + }, + "requestMessage": { + "type": "string", + "description": "The request message for requesting approval of the shared private link resource." + }, + "status": { + "type": "string", + "description": "Status of the shared private link resource. Can be Pending, Approved, Rejected, Disconnected, or Timeout.", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected", + "Timeout" + ], + "x-ms-enum": { + "name": "SharedPrivateLinkResourceStatus", + "modelAsString": false + } + } + }, + "description": "Describes the properties of an existing Shared Private Link Resource managed by the Azure Cognitive Search service." + }, + "SharedPrivateLinkResourceListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SharedPrivateLinkResource" + }, + "description": "The list of Shared Private Link Resources." + }, + "nextLink": { + "type": "string", + "description": "The URL to get the next set of shared private link resources, if there are any." + } + }, + "description": "Response containing a list of Shared Private Link Resources.", + "x-ms-external": true + }, + "PrivateLinkResourcesResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + }, + "description": "The list of supported Private Link Resources." + } + }, + "description": "Response containing a list of supported Private Link Resources.", + "x-ms-external": true + }, + "PrivateLinkResource": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the private link resource." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the private link resource." + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "readOnly": true, + "description": "Describes the properties of a supported private link resource for the Azure Cognitive Search service." + } + }, + "description": "Describes a supported private link resource for the Azure Cognitive Search service." + }, + "PrivateLinkResourceProperties": { + "properties": { + "groupId": { + "readOnly": true, + "type": "string", + "description": "The group ID of the private link resource." + }, + "requiredMembers": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of required members of the private link resource." + }, + "requiredZoneNames": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of required DNS zone names of the private link resource." + }, + "shareablePrivateLinkResourceTypes": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ShareablePrivateLinkResourceType" + }, + "description": "The list of resources that are onboarded to private link service, that are supported by Azure Cognitive Search." + } + }, + "description": "Describes the properties of a supported private link resource for the Azure Cognitive Search service. For a given API version, this represents the 'supported' groupIds when creating a shared private link resource." + }, + "ShareablePrivateLinkResourceType": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the resource type that has been onboarded to private link service, supported by Azure Cognitive Search." + }, + "properties": { + "$ref": "#/definitions/ShareablePrivateLinkResourceProperties", + "readOnly": true, + "description": "Describes the properties of a resource type that has been onboarded to private link service, supported by Azure Cognitive Search." + } + }, + "description": "Describes an resource type that has been onboarded to private link service, supported by Azure Cognitive Search." + }, + "ShareablePrivateLinkResourceProperties": { + "properties": { + "type": { + "readOnly": true, + "type": "string", + "description": "The resource provider type for the resource that has been onboarded to private link service, supported by Azure Cognitive Search." + }, + "groupId": { + "readOnly": true, + "type": "string", + "description": "The resource provider group id for the resource that has been onboarded to private link service, supported by Azure Cognitive Search." + }, + "description": { + "readOnly": true, + "type": "string", + "description": "The description of the resource type that has been onboarded to private link service, supported by Azure Cognitive Search." + } + }, + "description": "Describes the properties of a resource type that has been onboarded to private link service, supported by Azure Cognitive Search." + }, + "SearchService": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SearchServiceProperties", + "description": "Properties of the Search service." + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "The SKU of the Search Service, which determines price tier and capacity limits. This property is required when creating a new Search Service.", + "externalDocs": { + "url": "https://azure.microsoft.com/documentation/articles/search-sku-tier/" + } + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Describes an Azure Cognitive Search service and its current state." + }, + "SearchServiceProperties": { + "properties": { + "replicaCount": { + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 12, + "default": 1, + "description": "The number of replicas in the Search service. If specified, it must be a value between 1 and 12 inclusive for standard SKUs or between 1 and 3 inclusive for basic SKU." + }, + "partitionCount": { + "type": "integer", + "format": "int32", + "minimum": 1, + "maximum": 12, + "default": 1, + "description": "The number of partitions in the Search service; if specified, it can be 1, 2, 3, 4, 6, or 12. Values greater than 1 are only valid for standard SKUs. For 'standard3' services with hostingMode set to 'highDensity', the allowed values are between 1 and 3." + }, + "hostingMode": { + "type": "string", + "default": "default", + "description": "Applicable only for the standard3 SKU. You can set this property to enable up to 3 high density partitions that allow up to 1000 indexes, which is much higher than the maximum indexes allowed for any other SKU. For the standard3 SKU, the value is either 'default' or 'highDensity'. For all other SKUs, this value must be 'default'.", + "enum": [ + "default", + "highDensity" + ], + "x-ms-enum": { + "name": "HostingMode", + "modelAsString": false + } + }, + "publicNetworkAccess": { + "type": "string", + "default": "enabled", + "description": "This value can be set to 'enabled' to avoid breaking changes on existing customer resources and templates. If set to 'disabled', traffic over public interface is not allowed, and private endpoint connections would be the exclusive access method.", + "enum": [ + "enabled", + "disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccess", + "modelAsString": false + } + }, + "status": { + "readOnly": true, + "type": "string", + "description": "The status of the Search service. Possible values include: 'running': The Search service is running and no provisioning operations are underway. 'provisioning': The Search service is being provisioned or scaled up or down. 'deleting': The Search service is being deleted. 'degraded': The Search service is degraded. This can occur when the underlying search units are not healthy. The Search service is most likely operational, but performance might be slow and some requests might be dropped. 'disabled': The Search service is disabled. In this state, the service will reject all API requests. 'error': The Search service is in an error state. If your service is in the degraded, disabled, or error states, it means the Azure Cognitive Search team is actively investigating the underlying issue. Dedicated services in these states are still chargeable based on the number of search units provisioned.", + "enum": [ + "running", + "provisioning", + "deleting", + "degraded", + "disabled", + "error" + ], + "x-ms-enum": { + "name": "SearchServiceStatus", + "modelAsString": false + } + }, + "statusDetails": { + "readOnly": true, + "type": "string", + "description": "The details of the Search service status." + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The state of the last provisioning operation performed on the Search service. Provisioning is an intermediate state that occurs while service capacity is being established. After capacity is set up, provisioningState changes to either 'succeeded' or 'failed'. Client applications can poll provisioning status (the recommended polling interval is from 30 seconds to one minute) by using the Get Search Service operation to see when an operation is completed. If you are using the free service, this value tends to come back as 'succeeded' directly in the call to Create Search service. This is because the free service uses capacity that is already set up.", + "enum": [ + "succeeded", + "provisioning", + "failed" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": false + } + }, + "networkRuleSet": { + "$ref": "#/definitions/NetworkRuleSet", + "description": "Network specific rules that determine how the Azure Cognitive Search service may be reached." + }, + "privateEndpointConnections": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The list of private endpoint connections to the Azure Cognitive Search service." + }, + "sharedPrivateLinkResources": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SharedPrivateLinkResource" + }, + "description": "The list of shared private link resources managed by the Azure Cognitive Search service." + } + }, + "description": "Properties of the Search service." + }, + "SearchServiceListResult": { + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SearchService" + }, + "description": "The list of Search services." + } + }, + "description": "Response containing a list of Azure Cognitive Search services.", + "x-ms-external": true + }, + "Resource": { + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ID of the resource. This can be used with the Azure Resource Manager to link resources together.", + "externalDocs": { + "url": "https://aka.ms/search-linked-resources" + } + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the resource.", + "externalDocs": { + "url": "https://aka.ms/search-naming-rules" + } + }, + "type": { + "readOnly": true, + "type": "string", + "description": "The resource type." + }, + "location": { + "type": "string", + "description": "The geographic location of the resource. This must be one of the supported and registered Azure Geo Regions (for example, West US, East US, Southeast Asia, and so forth). This property is required when creating a new resource.", + "externalDocs": { + "url": "https://aka.ms/search-rp-info" + }, + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Tags to help categorize the resource in the Azure portal." + }, + "identity": { + "$ref": "#/definitions/Identity", + "description": "The identity of the resource." + } + }, + "description": "Base type for all Azure resources.", + "x-ms-azure-resource": true + }, + "CloudError": { + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody", + "description": "Describes a particular API error with an error code and a message." + } + }, + "description": "Contains information about an API error.", + "x-ms-external": true + }, + "CloudErrorBody": { + "type": "object", + "description": "Describes a particular API error with an error code and a message.", + "properties": { + "code": { + "type": "string", + "description": "An error code that describes the error condition more precisely than an HTTP status code. Can be used to programmatically handle specific error cases." + }, + "message": { + "type": "string", + "description": "A message that describes the error in detail and provides debugging information." + }, + "target": { + "type": "string", + "description": "The target of the particular error (for example, the name of the property in error)." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/CloudErrorBody" + }, + "description": "Contains nested errors that are related to this error." + } + }, + "x-ms-external": true + }, + "Operation": { + "description": "Describes a REST API operation.", + "type": "object", + "properties": { + "name": { + "description": "The name of the operation. This name is of the form {provider}/{resource}/{operation}.", + "readOnly": true, + "type": "string" + }, + "display": { + "description": "The object that describes the operation.", + "readOnly": true, + "properties": { + "provider": { + "description": "The friendly name of the resource provider.", + "readOnly": true, + "type": "string" + }, + "operation": { + "description": "The operation type: read, write, delete, listKeys/action, etc.", + "readOnly": true, + "type": "string" + }, + "resource": { + "description": "The resource type on which the operation is performed.", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "The friendly name of the operation.", + "readOnly": true, + "type": "string" + } + } + } + } + }, + "OperationListResult": { + "description": "The result of the request to list REST API operations. It contains a list of operations and a URL to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "readOnly": true, + "description": "The list of operations supported by the resource provider." + }, + "nextLink": { + "type": "string", + "readOnly": true, + "description": "The URL to get the next set of operation list results, if any." + } + } + }, + "Identity": { + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal ID of resource identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant ID of resource." + }, + "type": { + "type": "string", + "description": "The identity type.", + "enum": [ + "None", + "SystemAssigned" + ], + "x-ms-enum": { + "name": "IdentityType", + "modelAsString": false + } + } + }, + "required": [ + "type" + ], + "description": "Identity for the resource." + } + }, + "parameters": { + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group within the current subscription. You can obtain this value from the Azure Resource Manager API or the portal.", + "x-ms-parameter-location": "method" + }, + "SearchServiceNameParameter": { + "name": "searchServiceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the Azure Cognitive Search service associated with the specified resource group.", + "x-ms-parameter-location": "method" + }, + "PrivateEndpointConnectionNameParameter": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint connection to the Azure Cognitive Search service with the specified resource group.", + "x-ms-parameter-location": "method" + }, + "SharedPrivateLinkResourceNameParameter": { + "name": "sharedPrivateLinkResourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the shared private link resource managed by the Azure Cognitive Search service within the specified resource group.", + "x-ms-parameter-location": "method" + }, + "ClientRequestIdParameter": { + "name": "x-ms-client-request-id", + "x-ms-client-name": "clientRequestId", + "in": "header", + "required": false, + "type": "string", + "format": "uuid", + "description": "A client-generated GUID value that identifies this request. If specified, this will be included in response information as a way to track the request.", + "x-ms-client-request-id": true, + "x-ms-parameter-grouping": { + "name": "search-management-request-options" + }, + "x-ms-parameter-location": "method" + }, + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "The unique identifier for a Microsoft Azure subscription. You can obtain this value from the Azure Resource Manager API or the portal." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The API version to use for each request. The current version is 2019-10-01-Preview." + } + } +} diff --git a/specification/search/resource-manager/readme.go.md b/specification/search/resource-manager/readme.go.md index 0c4e0350036e..6c95fee02859 100644 --- a/specification/search/resource-manager/readme.go.md +++ b/specification/search/resource-manager/readme.go.md @@ -13,10 +13,20 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2020-03 - tag: package-2015-08 - tag: package-2015-02 ``` +### Tag: package-2020-03 and go + +These settings apply only when `--tag=package-2020-03 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2020-03' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2020-03-13/$(namespace) +``` + ### Tag: package-2015-08 and go These settings apply only when `--tag=package-2015-08 --go` is specified on the command line. diff --git a/specification/search/resource-manager/readme.md b/specification/search/resource-manager/readme.md index 24d291ac3c59..2013e0992ec4 100644 --- a/specification/search/resource-manager/readme.md +++ b/specification/search/resource-manager/readme.md @@ -29,6 +29,13 @@ openapi-type: arm tag: package-2015-08 ``` +### Tag: package-2020-03 + +These settings apply only when `--tag=package-2020-03` is specified on the command line. +``` yaml $(tag) == 'package-2020-03' +input-file: +- Microsoft.Search/stable/2020-03-13/search.json +``` ### Tag: package-2015-08 @@ -118,6 +125,7 @@ output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-search batch: - tag: package-2015-02 - tag: package-2015-08 + - tag: package-2020-03 ``` ### Tag: package-2015-02 and java @@ -146,6 +154,18 @@ regenerate-manager: true generate-interface: true ``` +### Tag: package-2020-03 and java + +These settings apply only when `--tag=package-2020-03 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2020-03' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.search.v2020_03_13 + output-folder: $(azure-libraries-for-java-folder)/sdk/search/mgmt-resource-manager/v2020_03_13 +regenerate-manager: true +generate-interface: true +``` ## Multi-API/Profile support for AutoRest v3 generators @@ -160,6 +180,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(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/2019-10-01-preview/search.json diff --git a/specification/search/resource-manager/readme.ruby.md b/specification/search/resource-manager/readme.ruby.md index 33006770fb29..8919ed6a6c05 100644 --- a/specification/search/resource-manager/readme.ruby.md +++ b/specification/search/resource-manager/readme.ruby.md @@ -13,6 +13,7 @@ azure-arm: true ``` yaml $(ruby) && $(multiapi) batch: - tag: package-2015-08 + - tag: package-2020-03 ``` ### Tag: package-2015-08 and ruby @@ -24,3 +25,13 @@ Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2020-03' && $(ruby) +namespace: "Azure::Search::Mgmt::V2020_03_13" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_search/lib +``` \ No newline at end of file diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/applicationWhitelistings.json b/specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/applicationWhitelistings.json index 505357b63799..b04c02b7d1af 100644 --- a/specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/applicationWhitelistings.json +++ b/specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/applicationWhitelistings.json @@ -168,6 +168,49 @@ } } } + }, + "delete": { + "x-ms-examples": { + "Delete an application control VM/server group": { + "$ref": "./examples/ApplicationWhitelistings/DeleteApplicationWhitelistings_example.json" + } + }, + "tags": [ + "applicationWhitelistings" + ], + "description": "Delete an application control VM/server group", + "operationId": "AdaptiveApplicationControls_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/AscLocation" + }, + { + "$ref": "#/parameters/GroupName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK - The response indicates that the delete operation completed successfully" + }, + "202": { + "description": "Accepted. The response indicates the delete operation is performed in the background." + }, + "204": { + "description": "No Content. The response indicates the resource is already deleted." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } } } }, @@ -274,6 +317,15 @@ "None" ] }, + "EnforcementSupport": { + "type": "string", + "description": "The VM/server supportability of Enforce feature", + "enum": [ + "Supported", + "NotSupported", + "Unknown" + ] + }, "ProtectionMode": { "type": "object", "description": "The protection mode of the collection/file types. Exe/Msi/Script are used for Windows, Executable is used for Linux.", @@ -395,6 +447,9 @@ }, "resourceId": { "$ref": "#/definitions/VmResourceId" + }, + "enforcementSupport": { + "$ref": "#/definitions/EnforcementSupport" } } }, diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/ApplicationWhitelistings/DeleteApplicationWhitelistings_example.json b/specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/ApplicationWhitelistings/DeleteApplicationWhitelistings_example.json new file mode 100644 index 000000000000..becfa217a797 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/ApplicationWhitelistings/DeleteApplicationWhitelistings_example.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2015-06-01-preview", + "subscriptionId": "3eeab341-f466-499c-a8be-85427e154baf", + "groupName": "GROUP1", + "ascLocation": "centralus" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/ApplicationWhitelistings/GetApplicationWhitelistingsGroup_example.json b/specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/ApplicationWhitelistings/GetApplicationWhitelistingsGroup_example.json index 2139161dea73..835920be358e 100644 --- a/specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/ApplicationWhitelistings/GetApplicationWhitelistingsGroup_example.json +++ b/specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/ApplicationWhitelistings/GetApplicationWhitelistingsGroup_example.json @@ -24,12 +24,14 @@ { "configurationStatus": "Configured", "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourcegroups/erelh-stable/providers/microsoft.compute/virtualmachines/erelh-16090", - "recommendationAction": "Recommended" + "recommendationAction": "Recommended", + "enforcementSupport": "Supported" }, { "configurationStatus": "Configured", "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourcegroups/matanvs/providers/microsoft.compute/virtualmachines/matanvs19", - "recommendationAction": "Recommended" + "recommendationAction": "Recommended", + "enforcementSupport": "Supported" } ], "pathRecommendations": [ diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/ApplicationWhitelistings/GetApplicationWhitelistingsSubscription_example.json b/specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/ApplicationWhitelistings/GetApplicationWhitelistingsSubscription_example.json index 2434125dbc69..4d617b11c54b 100644 --- a/specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/ApplicationWhitelistings/GetApplicationWhitelistingsSubscription_example.json +++ b/specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/ApplicationWhitelistings/GetApplicationWhitelistingsSubscription_example.json @@ -26,17 +26,20 @@ { "configurationStatus": "Configured", "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourcegroups/erelh-dsc/providers/microsoft.compute/virtualmachines/erelh-14011", - "recommendationAction": "Recommended" + "recommendationAction": "Recommended", + "enforcementSupport": "Supported" }, { "configurationStatus": "Configured", "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourcegroups/amit-va/providers/microsoft.compute/virtualmachines/ream-test", - "recommendationAction": "Recommended" + "recommendationAction": "Recommended", + "enforcementSupport": "Supported" }, { "configurationStatus": "Configured", "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourcegroups/v-arrikl-scheduledapps/providers/microsoft.compute/virtualmachines/v-arrikl-14060", - "recommendationAction": "Recommended" + "recommendationAction": "Recommended", + "enforcementSupport": "Supported" } ], "pathRecommendations": [ @@ -138,7 +141,8 @@ { "configurationStatus": "Configured", "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourcegroups/erelh-stable/providers/microsoft.compute/virtualmachines/erelh-16090", - "recommendationAction": "Recommended" + "recommendationAction": "Recommended", + "enforcementSupport": "NotSupported" } ], "pathRecommendations": [ @@ -188,22 +192,26 @@ { "configurationStatus": "Configured", "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourcegroups/talk-va/providers/microsoft.compute/virtualmachines/tal-win-vm", - "recommendationAction": "Recommended" + "recommendationAction": "Recommended", + "enforcementSupport": "Supported" }, { "configurationStatus": "Configured", "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourcegroups/talk-va/providers/microsoft.compute/virtualmachines/tal-win-vm-jit", - "recommendationAction": "Recommended" + "recommendationAction": "Recommended", + "enforcementSupport": "Supported" }, { "configurationStatus": "Configured", "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourcegroups/myresourcegroup/providers/microsoft.compute/virtualmachines/myvmweb", - "recommendationAction": "Recommended" + "recommendationAction": "Recommended", + "enforcementSupport": "Supported" }, { "configurationStatus": "Configured", "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourcegroups/v-arrikl-scheduledapps/providers/microsoft.compute/virtualmachines/v-arrikl-14061", - "recommendationAction": "Recommended" + "recommendationAction": "Recommended", + "enforcementSupport": "Supported" } ], "pathRecommendations": [ @@ -343,7 +351,8 @@ { "configurationStatus": "Configured", "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourcegroups/nic-no-pip/providers/microsoft.compute/virtualmachines/nic-no-pip-vm", - "recommendationAction": "Recommended" + "recommendationAction": "Recommended", + "enforcementSupport": "Unknown" } ], "pathRecommendations": [ diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/ApplicationWhitelistings/PutApplicationWhitelistings_example.json b/specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/ApplicationWhitelistings/PutApplicationWhitelistings_example.json index e9673ad953e8..da0aa89f8c4e 100644 --- a/specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/ApplicationWhitelistings/PutApplicationWhitelistings_example.json +++ b/specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/ApplicationWhitelistings/PutApplicationWhitelistings_example.json @@ -19,12 +19,14 @@ { "configurationStatus": "Configured", "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourcegroups/erelh-stable/providers/microsoft.compute/virtualmachines/erelh-16090", - "recommendationAction": "Recommended" + "recommendationAction": "Recommended", + "enforcementSupport": "Supported" }, { "configurationStatus": "Configured", "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourcegroups/matanvs/providers/microsoft.compute/virtualmachines/matanvs19", - "recommendationAction": "Recommended" + "recommendationAction": "Recommended", + "enforcementSupport": "Supported" } ], "pathRecommendations": [ diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/CreateOrUpdateInformationProtectionPolicy_example.json b/specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/CreateOrUpdateInformationProtectionPolicy_example.json index eeb717b89952..22871f81f4d2 100644 --- a/specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/CreateOrUpdateInformationProtectionPolicy_example.json +++ b/specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/CreateOrUpdateInformationProtectionPolicy_example.json @@ -3,7 +3,7 @@ "api-version": "2017-08-01-preview", "scope": "providers/Microsoft.Management/managementGroups/148059f7-faf3-49a6-ba35-85122112291e", "informationProtectionPolicyName": "custom", - "InformationProtectionPolicy": { + "informationProtectionPolicy": { "id": "/providers/Microsoft.Management/managementGroups/148059f7-faf3-49a6-ba35-85122112291e/providers/Microsoft.Security/informationProtectionPolicies/custom", "name": "custom", "type": "Microsoft.Security/informationProtectionPolicies", diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/informationProtectionPolicies.json b/specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/informationProtectionPolicies.json index 160233ecc06e..ec5d2697906f 100644 --- a/specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/informationProtectionPolicies.json +++ b/specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/informationProtectionPolicies.json @@ -95,6 +95,9 @@ }, { "$ref": "#/parameters/InformationProtectionPolicyName" + }, + { + "$ref": "#/parameters/InformationProtectionPolicy" } ], "responses": { @@ -231,6 +234,25 @@ "type": "string", "description": "The name of the sensitivity label." }, + "description": { + "type": "string", + "description": "The description of the sensitivity label." + }, + "rank": { + "type": "string", + "description": "The rank of the sensitivity label.", + "enum": [ + "None", + "Low", + "Medium", + "High", + "Critical" + ], + "x-ms-enum": { + "name": "rank", + "modelAsString": false + } + }, "order": { "type": "number", "description": "The order of the sensitivity label." @@ -249,6 +271,10 @@ "type": "string", "description": "The name of the information type." }, + "description": { + "type": "string", + "description": "The description of the information type." + }, "order": { "type": "number", "description": "The order of the information type." @@ -310,6 +336,16 @@ ], "description": "Name of the information protection policy.", "x-ms-parameter-location": "method" + }, + "InformationProtectionPolicy": { + "name": "informationProtectionPolicy", + "in": "body", + "required": true, + "description": "Information protection policy.", + "schema": { + "$ref": "#/definitions/InformationProtectionPolicy" + }, + "x-ms-parameter-location": "method" } } } diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/advancedThreatProtectionSettings.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/advancedThreatProtectionSettings.json new file mode 100644 index 000000000000..96bfced0e2af --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/advancedThreatProtectionSettings.json @@ -0,0 +1,166 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Center", + "description": "API spec for Microsoft.Security (Azure Security Center) resource provider", + "version": "2019-01-01" + }, + "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": { + "/{resourceId}/providers/Microsoft.Security/advancedThreatProtectionSettings/{settingName}": { + "get": { + "x-ms-examples": { + "Gets the Advanced Threat Protection settings for the specified resource.": { + "$ref": "./examples/AdvancedThreatProtection/GetAdvancedThreatProtectionSettings_example.json" + } + }, + "tags": [ + "AdvancedThreatProtection" + ], + "description": "Gets the Advanced Threat Protection settings for the specified resource.", + "operationId": "AdvancedThreatProtection_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceId" + }, + { + "$ref": "#/parameters/AdvancedThreatProtectionSettingName" + } + ], + "responses": { + "200": { + "description": "Successful request to get Advanced Threat Protection settings.", + "schema": { + "$ref": "#/definitions/AdvancedThreatProtectionSetting" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + }, + "put": { + "x-ms-examples": { + "Creates or updates the Advanced Threat Protection settings on a specified resource.": { + "$ref": "./examples/AdvancedThreatProtection/PutAdvancedThreatProtectionSettings_example.json" + } + }, + "tags": [ + "AdvancedThreatProtection" + ], + "description": "Creates or updates the Advanced Threat Protection settings on a specified resource.", + "operationId": "AdvancedThreatProtection_Create", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceId" + }, + { + "$ref": "#/parameters/AdvancedThreatProtectionSettingName" + }, + { + "$ref": "#/parameters/AdvancedThreatProtectionSetting" + } + ], + "responses": { + "200": { + "description": "Successful request to put Advanced Threat Protection settings.", + "schema": { + "$ref": "#/definitions/AdvancedThreatProtectionSetting" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "AdvancedThreatProtectionProperties": { + "properties": { + "isEnabled": { + "type": "boolean", + "description": "Indicates whether Advanced Threat Protection is enabled." + } + }, + "description": "The Advanced Threat Protection settings." + }, + "AdvancedThreatProtectionSetting": { + "type": "object", + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AdvancedThreatProtectionProperties" + } + }, + "description": "The Advanced Threat Protection resource." + } + }, + "parameters": { + "AdvancedThreatProtectionSettingName": { + "name": "settingName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "description": "Advanced Threat Protection setting name.", + "x-ms-parameter-location": "method" + }, + "AdvancedThreatProtectionSetting": { + "name": "advancedThreatProtectionSetting", + "in": "body", + "required": true, + "description": "Advanced Threat Protection Settings", + "schema": { + "$ref": "#/definitions/AdvancedThreatProtectionSetting" + }, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/examples/AdvancedThreatProtection/GetAdvancedThreatProtectionSettings_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/examples/AdvancedThreatProtection/GetAdvancedThreatProtectionSettings_example.json new file mode 100644 index 000000000000..fd9c6dc599a0 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/examples/AdvancedThreatProtection/GetAdvancedThreatProtectionSettings_example.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2019-01-01", + "resourceId": "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Storage/storageAccounts/samplestorageaccount", + "settingName": "current" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Storage/storageAccounts/samplestorageaccount/providers/Microsoft.Security/advancedThreatProtectionSettings/current", + "name": "current", + "type": "Microsoft.Security/advancedThreatProtectionSettings", + "properties": { + "isEnabled": true + } + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/examples/AdvancedThreatProtection/PutAdvancedThreatProtectionSettings_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/examples/AdvancedThreatProtection/PutAdvancedThreatProtectionSettings_example.json new file mode 100644 index 000000000000..0af9838f82e6 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/examples/AdvancedThreatProtection/PutAdvancedThreatProtectionSettings_example.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2019-01-01", + "resourceId": "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Storage/storageAccounts/samplestorageaccount", + "settingName": "current", + "advancedThreatProtectionSetting": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Storage/storageAccounts/samplestorageaccount/providers/Microsoft.Security/advancedThreatProtectionSettings/current", + "name": "current", + "type": "Microsoft.Security/advancedThreatProtectionSettings", + "properties": { + "isEnabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Storage/storageAccounts/samplestorageaccount/providers/Microsoft.Security/advancedThreatProtectionSettings/current", + "name": "current", + "type": "Microsoft.Security/advancedThreatProtectionSettings", + "properties": { + "isEnabled": true + } + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/deviceSecurityGroups.json b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/deviceSecurityGroups.json index 7214aad87283..61bfab4a4553 100644 --- a/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/deviceSecurityGroups.json +++ b/specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/deviceSecurityGroups.json @@ -273,6 +273,7 @@ "CustomAlertRule": { "type": "object", "description": "A custom alert rule.", + "discriminator": "ruleType", "properties": { "displayName": { "type": "string", @@ -347,39 +348,42 @@ "items": { "type": "string" } - }, - "ruleType": { - "type": "string", - "description": "The type of the custom alert rule.", - "enum": [ - "ConnectionToIpNotAllowed", - "LocalUserNotAllowed", - "ProcessNotAllowed" - ], - "x-ms-enum": { - "name": "AllowListRuleType", - "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.", @@ -437,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": "ThresholdRuleType", - "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": { diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/adaptiveNetworkHardenings.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/adaptiveNetworkHardenings.json new file mode 100644 index 000000000000..df4f9737d4e8 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/adaptiveNetworkHardenings.json @@ -0,0 +1,412 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Center", + "description": "API spec for Microsoft.Security (Azure Security Center) resource provider", + "version": "2020-01-01" + }, + "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}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/adaptiveNetworkHardenings": { + "get": { + "x-ms-examples": { + "List Adaptive Network Hardenings resources of an extended resource": { + "$ref": "./examples/AdaptiveNetworkHardenings/ListByExtendedResourceAdaptiveNetworkHardenings_example.json" + } + }, + "description": "Gets a list of Adaptive Network Hardenings resources in scope of an extended resource.", + "tags": [ + "AdaptiveNetworkHardenings" + ], + "operationId": "AdaptiveNetworkHardenings_ListByExtendedResource", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "name": "resourceNamespace", + "in": "path", + "description": "The Namespace of the resource.", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "The type of the resource.", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Name of the resource.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AdaptiveNetworkHardeningsList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/adaptiveNetworkHardenings/{adaptiveNetworkHardeningResourceName}": { + "get": { + "x-ms-examples": { + "Get a single Adaptive Network Hardening resource": { + "$ref": "./examples/AdaptiveNetworkHardenings/GetAdaptiveNetworkHardening_example.json" + } + }, + "tags": [ + "AdaptiveNetworkHardenings" + ], + "description": "Gets a single Adaptive Network Hardening resource", + "operationId": "AdaptiveNetworkHardenings_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "name": "resourceNamespace", + "in": "path", + "description": "The Namespace of the resource.", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "The type of the resource.", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Name of the resource.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/AdaptiveNetworkHardeningResourceName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AdaptiveNetworkHardening" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/adaptiveNetworkHardenings/{adaptiveNetworkHardeningResourceName}/{adaptiveNetworkHardeningEnforceAction}": { + "post": { + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Enforces the given rules on the NSG(s) listed in the request": { + "$ref": "./examples/AdaptiveNetworkHardenings/EnforceAdaptiveNetworkHardeningRules_example.json" + } + }, + "tags": [ + "AdaptiveNetworkHardenings" + ], + "description": "Enforces the given rules on the NSG(s) listed in the request", + "operationId": "AdaptiveNetworkHardenings_Enforce", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "name": "resourceNamespace", + "in": "path", + "description": "The Namespace of the resource.", + "required": true, + "type": "string" + }, + { + "name": "resourceType", + "in": "path", + "description": "The type of the resource.", + "required": true, + "type": "string" + }, + { + "name": "resourceName", + "in": "path", + "description": "Name of the resource.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/AdaptiveNetworkHardeningResourceName" + }, + { + "$ref": "#/parameters/AdaptiveNetworkHardeningEnforceAction" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/AdaptiveNetworkHardeningEnforceRequest" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "PortNumber": { + "type": "integer", + "minimum": 0, + "maximum": 65535 + }, + "Rule": { + "description": "Describes remote addresses that is recommended to communicate with the Azure resource on some (Protocol, Port, Direction). All other remote addresses are recommended to be blocked", + "properties": { + "name": { + "description": "The name of the rule", + "type": "string" + }, + "direction": { + "description": "The rule's direction", + "type": "string", + "enum": [ + "Inbound", + "Outbound" + ], + "x-ms-enum": { + "name": "direction", + "modelAsString": true + } + }, + "destinationPort": { + "description": "The rule's destination port", + "$ref": "#/definitions/PortNumber" + }, + "protocols": { + "description": "The rule's transport protocols", + "type": "array", + "items": { + "type": "string", + "enum": [ + "TCP", + "UDP" + ], + "x-ms-enum": { + "name": "transportProtocol", + "modelAsString": true + } + } + }, + "ipAddresses": { + "description": "The remote IP addresses that should be able to communicate with the Azure resource on the rule's destination port and protocol", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "EffectiveNetworkSecurityGroups": { + "description": "Describes the Network Security Groups effective on a network interface", + "properties": { + "networkInterface": { + "description": "The Azure resource ID of the network interface", + "type": "string" + }, + "networkSecurityGroups": { + "description": "The Network Security Groups effective on the network interface", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "AdaptiveNetworkHardeningProperties": { + "description": "Adaptive Network Hardening resource properties", + "properties": { + "rules": { + "description": "The security rules which are recommended to be effective on the VM", + "type": "array", + "items": { + "$ref": "#/definitions/Rule" + } + }, + "rulesCalculationTime": { + "type": "string", + "format": "date-time", + "description": "The UTC time on which the rules were calculated" + }, + "effectiveNetworkSecurityGroups": { + "description": "The Network Security Groups effective on the network interfaces of the protected resource", + "type": "array", + "items": { + "$ref": "#/definitions/EffectiveNetworkSecurityGroups" + } + } + } + }, + "AdaptiveNetworkHardening": { + "description": "The resource whose properties describes the Adaptive Network Hardening settings for some Azure resource", + "properties": { + "properties": { + "description": "Properties of the Adaptive Network Hardening resource", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AdaptiveNetworkHardeningProperties" + } + }, + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/Resource" + } + ] + }, + "AdaptiveNetworkHardeningsList": { + "description": "Response for ListAdaptiveNetworkHardenings API service call", + "properties": { + "value": { + "description": "A list of Adaptive Network Hardenings resources", + "type": "array", + "items": { + "$ref": "#/definitions/AdaptiveNetworkHardening" + } + }, + "nextLink": { + "description": "The URL to get the next set of results", + "type": "string" + } + } + }, + "AdaptiveNetworkHardeningEnforceRequest": { + "type": "object", + "properties": { + "rules": { + "type": "array", + "description": "The rules to enforce", + "items": { + "$ref": "#/definitions/Rule" + } + }, + "networkSecurityGroups": { + "type": "array", + "description": "The Azure resource IDs of the effective network security groups that will be updated with the created security rules from the Adaptive Network Hardening rules", + "items": { + "type": "string" + } + } + }, + "required": [ + "rules", + "networkSecurityGroups" + ] + } + }, + "parameters": { + "AdaptiveNetworkHardeningResourceName": { + "name": "adaptiveNetworkHardeningResourceName", + "in": "path", + "description": "The name of the Adaptive Network Hardening resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "AdaptiveNetworkHardeningEnforceAction": { + "name": "adaptiveNetworkHardeningEnforceAction", + "type": "string", + "in": "path", + "required": true, + "description": "Enforces the given rules on the NSG(s) listed in the request", + "enum": [ + "enforce" + ], + "x-ms-parameter-location": "method" + }, + "AdaptiveNetworkHardeningEnforceRequest": { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AdaptiveNetworkHardeningEnforceRequest" + }, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/allowedConnections.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/allowedConnections.json new file mode 100644 index 000000000000..377faa308c52 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/allowedConnections.json @@ -0,0 +1,297 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Center", + "description": "API spec for Microsoft.Security (Azure Security Center) resource provider", + "version": "2020-01-01" + }, + "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/allowedConnections": { + "get": { + "x-ms-examples": { + "Get allowed connections on a subscription": { + "$ref": "./examples/AllowedConnections/GetAllowedConnectionsSubscription_example.json" + } + }, + "tags": [ + "AllowedConnections" + ], + "description": "Gets the list of all possible traffic between resources for the subscription", + "operationId": "AllowedConnections_List", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AllowedConnectionsList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/allowedConnections": { + "get": { + "x-ms-examples": { + "Get allowed connections on a subscription from security data location": { + "$ref": "./examples/AllowedConnections/GetAllowedConnectionsSubscriptionLocation_example.json" + } + }, + "tags": [ + "AllowedConnections" + ], + "description": "Gets the list of all possible traffic between resources for the subscription and location.", + "operationId": "AllowedConnections_ListByHomeRegion", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/AscLocation" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AllowedConnectionsList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/allowedConnections/{connectionType}": { + "get": { + "x-ms-examples": { + "Get allowed connections": { + "$ref": "./examples/AllowedConnections/GetAllowedConnections_example.json" + } + }, + "tags": [ + "AllowedConnections" + ], + "description": "Gets the list of all possible traffic between resources for the subscription and location, based on connection type.", + "operationId": "AllowedConnections_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/AscLocation" + }, + { + "$ref": "#/parameters/ConnectionType" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AllowedConnectionsResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "AllowedConnectionsList": { + "type": "object", + "description": "List of all possible traffic between Azure resources", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/AllowedConnectionsResource" + } + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URI to fetch the next page." + } + } + }, + "AllowedConnectionsResource": { + "type": "object", + "description": "The resource whose properties describes the allowed traffic between Azure resources", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "readOnly": true, + "$ref": "#/definitions/AllowedConnectionsResourceProperties" + } + }, + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/Resource" + }, + { + "$ref": "../../../common/v1/types.json#/definitions/Location" + } + ] + }, + "AllowedConnectionsResourceProperties": { + "type": "object", + "description": "Describes the allowed traffic between Azure resources", + "properties": { + "calculatedDateTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The UTC time on which the allowed connections resource was calculated" + }, + "connectableResources": { + "type": "array", + "readOnly": true, + "description": "List of connectable resources", + "items": { + "$ref": "#/definitions/ConnectableResource" + } + } + } + }, + "ConnectableResource": { + "type": "object", + "description": "Describes the allowed inbound and outbound traffic of an Azure resource", + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "The Azure resource id" + }, + "inboundConnectedResources": { + "type": "array", + "readOnly": true, + "description": "The list of Azure resources that the resource has inbound allowed connection from", + "items": { + "$ref": "#/definitions/ConnectedResource" + } + }, + "outboundConnectedResources": { + "type": "array", + "readOnly": true, + "description": "The list of Azure resources that the resource has outbound allowed connection to", + "items": { + "$ref": "#/definitions/ConnectedResource" + } + } + } + }, + "ConnectedResource": { + "type": "object", + "description": "Describes properties of a connected resource", + "properties": { + "connectedResourceId": { + "type": "string", + "readOnly": true, + "description": "The Azure resource id of the connected resource" + }, + "tcpPorts": { + "type": "string", + "readOnly": true, + "description": "The allowed tcp ports" + }, + "udpPorts": { + "type": "string", + "readOnly": true, + "description": "The allowed udp ports" + } + } + } + }, + "parameters": { + "ConnectionType": { + "name": "connectionType", + "type": "string", + "in": "path", + "description": "The type of allowed connections (Internal, External)", + "required": true, + "enum": [ + "Internal", + "External" + ], + "x-ms-enum": { + "name": "connectionType", + "modelAsString": true, + "values": [ + { + "value": "Internal" + }, + { + "value": "External" + } + ] + }, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/assessmentMetadata.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/assessmentMetadata.json new file mode 100644 index 000000000000..47a2a8e0c452 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/assessmentMetadata.json @@ -0,0 +1,561 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Center", + "description": "API spec for Microsoft.Security (Azure Security Center) resource provider", + "version": "2020-01-01" + }, + "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": { + "/providers/Microsoft.Security/assessmentMetadata": { + "get": { + "x-ms-examples": { + "List security assessment metadata": { + "$ref": "./examples/AssessmentsMetadata/ListAssessmentsMetadata_example.json" + } + }, + "tags": [ + "Assessments Metadata" + ], + "description": "Get metadata information on all assessment types", + "operationId": "AssessmentsMetadata_List", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SecurityAssessmentMetadataList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Security/assessmentMetadata/{assessmentMetadataName}": { + "get": { + "x-ms-examples": { + "Get security assessment metadata": { + "$ref": "./examples/AssessmentsMetadata/GetAssessmentsMetadata_example.json" + } + }, + "tags": [ + "Assessments Metadata" + ], + "description": "Get metadata information on an assessment type", + "operationId": "AssessmentsMetadata_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/AssessmentsMetadataName" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SecurityAssessmentMetadata" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/assessmentMetadata": { + "get": { + "x-ms-examples": { + "List security assessment metadata for subscription": { + "$ref": "./examples/AssessmentsMetadata/ListAssessmentsMetadata_subscription_example.json" + } + }, + "tags": [ + "Assessments Metadata" + ], + "description": "Get metadata information on all assessment types in a specific subscription", + "operationId": "AssessmentsMetadata_ListBySubscription", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SecurityAssessmentMetadataList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/assessmentMetadata/{assessmentMetadataName}": { + "get": { + "x-ms-examples": { + "Get security assessment metadata for subscription": { + "$ref": "./examples/AssessmentsMetadata/GetAssessmentsMetadata_subscription_example.json" + } + }, + "tags": [ + "Assessments Metadata" + ], + "description": "Get metadata information on an assessment type in a specific subscription", + "operationId": "AssessmentsMetadata_GetInSubscription", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/AssessmentsMetadataName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SecurityAssessmentMetadata" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + }, + "put": { + "x-ms-examples": { + "Create security assessment metadata for subscription": { + "$ref": "./examples/AssessmentsMetadata/CreateAssessmentsMetadata_subscription_example.json" + } + }, + "tags": [ + "Assessments Metadata" + ], + "description": "Create metadata information on an assessment type in a specific subscription", + "operationId": "AssessmentsMetadata_CreateInSubscription", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/AssessmentsMetadataName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/SecurityAssessmentMetadata" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SecurityAssessmentMetadata" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "x-ms-examples": { + "Delete a security assessment metadata for subscription": { + "$ref": "./examples/AssessmentsMetadata/DeleteAssessmentsMetadata_subscription_example.json" + } + }, + "tags": [ + "Assessments Metadata" + ], + "description": "Delete metadata information on an assessment type in a specific subscription, will cause the deletion of all the assessments of that type in that subscription", + "operationId": "AssessmentsMetadata_DeleteInSubscription", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/AssessmentsMetadataName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "SecurityAssessmentMetadataList": { + "type": "object", + "description": "List of security assessment metadata", + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SecurityAssessmentMetadata" + } + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URI to fetch the next page." + } + } + }, + "SecurityAssessmentMetadata": { + "type": "object", + "description": "Security assessment metadata", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SecurityAssessmentMetadataProperties" + } + }, + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/Resource" + } + ] + }, + "SecurityAssessmentMetadataProperties": { + "type": "object", + "description": "Describes properties of an assessment metadata.", + "properties": { + "displayName": { + "type": "string", + "description": "User friendly display name of the assessment" + }, + "policyDefinitionId": { + "readOnly": true, + "type": "string", + "description": "Azure resource ID of the policy definition that turns this assessment calculation on" + }, + "description": { + "type": "string", + "description": "Human readable description of the assessment" + }, + "remediationDescription": { + "type": "string", + "description": "Human readable description of what you should do to mitigate this security issue" + }, + "category": { + "type": "array", + "items": { + "type": "string", + "description": "The category of resource that is at risk when the assessment is unhealthy", + "enum": [ + "Compute", + "Networking", + "Data", + "IdentityAndAccess", + "IoT" + ], + "x-ms-enum": { + "name": "category", + "modelAsString": true, + "values": [ + { + "value": "Compute" + }, + { + "value": "Networking" + }, + { + "value": "Data" + }, + { + "value": "IdentityAndAccess" + }, + { + "value": "IoT" + } + ] + } + } + }, + "severity": { + "type": "string", + "description": "The severity level of the assessment", + "enum": [ + "Low", + "Medium", + "High" + ], + "x-ms-enum": { + "name": "severity", + "modelAsString": true, + "values": [ + { + "value": "Low" + }, + { + "value": "Medium" + }, + { + "value": "High" + } + ] + } + }, + "userImpact": { + "type": "string", + "description": "The user impact of the assessment", + "enum": [ + "Low", + "Moderate", + "High" + ], + "x-ms-enum": { + "name": "userImpact", + "modelAsString": true, + "values": [ + { + "value": "Low" + }, + { + "value": "Moderate" + }, + { + "value": "High" + } + ] + } + }, + "implementationEffort": { + "type": "string", + "description": "The implementation effort required to remediate this assessment", + "enum": [ + "Low", + "Moderate", + "High" + ], + "x-ms-enum": { + "name": "implementationEffort", + "modelAsString": true, + "values": [ + { + "value": "Low" + }, + { + "value": "Moderate" + }, + { + "value": "High" + } + ] + } + }, + "threats": { + "type": "array", + "items": { + "type": "string", + "description": "Threats impact of the assessment", + "enum": [ + "accountBreach", + "dataExfiltration", + "dataSpillage", + "maliciousInsider", + "elevationOfPrivilege", + "threatResistance", + "missingCoverage", + "denialOfService" + ], + "x-ms-enum": { + "name": "threats", + "modelAsString": true, + "values": [ + { + "value": "accountBreach" + }, + { + "value": "dataExfiltration" + }, + { + "value": "dataSpillage" + }, + { + "value": "maliciousInsider" + }, + { + "value": "elevationOfPrivilege" + }, + { + "value": "threatResistance" + }, + { + "value": "missingCoverage" + }, + { + "value": "denialOfService" + } + ] + } + } + }, + "preview": { + "type": "boolean", + "description": "True if this assessment is in preview release status" + }, + "assessmentType": { + "type": "string", + "description": "BuiltIn if the assessment based on built-in Azure Policy definition, Custom if the assessment based on custom Azure Policy definition", + "enum": [ + "BuiltIn", + "CustomPolicy", + "CustomerManaged", + "VerifiedPartner" + ], + "x-ms-enum": { + "name": "assessmentType", + "modelAsString": true, + "values": [ + { + "value": "BuiltIn", + "description": "Azure Security Center managed assessments" + }, + { + "value": "CustomPolicy", + "description": "User defined policies that are automatically ingested from Azure Policy to Azure Security Center" + }, + { + "value": "CustomerManaged", + "description": "User assessments pushed directly by the user or other third party to Azure Security Center" + }, + { + "value": "VerifiedPartner", + "description": "An assessment that was created by a verified 3rd party if the user connected it to ASC" + } + ] + } + }, + "partnerData": { + "$ref": "#/definitions/SecurityAssessmentMetadataPartnerData" + } + }, + "required": [ + "displayName", + "severity", + "assessmentType" + ] + }, + "SecurityAssessmentMetadataPartnerData": { + "type": "object", + "description": "Describes the partner that created the assessment", + "properties": { + "partnerName": { + "type": "string", + "description": "Name of the company of the partner" + }, + "productName": { + "type": "string", + "description": "Name of the product of the partner that created the assessment" + }, + "secret": { + "type": "string", + "description": "Secret to authenticate the partner and verify it created the assessment - write only", + "x-ms-secret": true + } + }, + "required": [ + "partnerName", + "secret" + ] + } + }, + "parameters": { + "AssessmentsMetadataName": { + "name": "assessmentMetadataName", + "in": "path", + "required": true, + "type": "string", + "description": "The Assessment Key - Unique key for the assessment type", + "x-ms-parameter-location": "method" + }, + "SecurityAssessmentMetadata": { + "name": "assessmentMetadata", + "in": "body", + "required": true, + "description": "AssessmentMetadata object", + "schema": { + "$ref": "#/definitions/SecurityAssessmentMetadata" + }, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/assessments.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/assessments.json new file mode 100644 index 000000000000..f3f48a5a6f61 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/assessments.json @@ -0,0 +1,399 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Center", + "description": "API spec for Microsoft.Security (Azure Security Center) resource provider", + "version": "2020-01-01" + }, + "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.Security/assessments": { + "get": { + "x-ms-examples": { + "List security assessments": { + "$ref": "./examples/Assessments/ListAssessments_example.json" + } + }, + "tags": [ + "Assessments" + ], + "description": "Get security assessments on all your scanned resources inside a scope", + "operationId": "Assessments_List", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/Scope" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SecurityAssessmentList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/{resourceId}/providers/Microsoft.Security/assessments/{assessmentName}": { + "get": { + "x-ms-examples": { + "Get security recommendation task from security data location": { + "$ref": "./examples/Assessments/GetAssessment_example.json" + }, + "Get security recommendation task from security data location with expand parameter": { + "$ref": "./examples/Assessments/GetAssessmentWithExpand_example.json" + } + }, + "tags": [ + "Assessments" + ], + "description": "Get a security assessment on your scanned resource", + "operationId": "Assessments_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceId" + }, + { + "$ref": "#/parameters/AssessmentName" + }, + { + "$ref": "#/parameters/ExpandAssessments" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SecurityAssessment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + }, + "put": { + "x-ms-examples": { + "Create security recommendation task on a resource": { + "$ref": "./examples/Assessments/PutAssessment_example.json" + } + }, + "tags": [ + "Assessments" + ], + "description": "Create a security assessment on your resource. An assessment metadata that describes this assessment must be predefined with the same name before inserting the assessment result", + "operationId": "Assessments_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceId" + }, + { + "$ref": "#/parameters/AssessmentName" + }, + { + "$ref": "#/parameters/AssessmentBody" + } + ], + "responses": { + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/SecurityAssessment" + } + }, + "200": { + "description": "OK - Updated", + "schema": { + "$ref": "#/definitions/SecurityAssessment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "x-ms-examples": { + "Delete a security recommendation task on a resource": { + "$ref": "./examples/Assessments/DeleteAssessment_example.json" + } + }, + "tags": [ + "Assessments" + ], + "description": "Delete a security assessment on your resource. An assessment metadata that describes this assessment must be predefined with the same name before inserting the assessment result", + "operationId": "Assessments_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceId" + }, + { + "$ref": "#/parameters/AssessmentName" + } + ], + "responses": { + "200": { + "description": "OK - Assessment was deleted" + }, + "204": { + "description": "No Content - Assessment does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "SecurityAssessmentList": { + "type": "object", + "description": "Page of a security assessments list", + "properties": { + "value": { + "description": "Collection of security assessments in this page", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/SecurityAssessment" + } + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URI to fetch the next page." + } + } + }, + "SecurityAssessment": { + "type": "object", + "description": "Security assessment on a resource", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SecurityAssessmentProperties" + } + }, + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/Resource" + } + ] + }, + "SecurityAssessmentProperties": { + "type": "object", + "description": "Describes properties of an assessment.", + "properties": { + "resourceDetails": { + "$ref": "../../../common/v1/types.json#/definitions/ResourceDetails" + }, + "displayName": { + "readOnly": true, + "type": "string", + "description": "User friendly display name of the assessment" + }, + "status": { + "$ref": "#/definitions/AssessmentStatus" + }, + "additionalData": { + "type": "object", + "description": "Additional data regarding the assessment", + "additionalProperties": { + "type": "string" + } + }, + "links": { + "$ref": "#/definitions/AssessmentLinks" + }, + "metadata": { + "$ref": "./assessmentMetadata.json#/definitions/SecurityAssessmentMetadataProperties" + }, + "partnersData": { + "$ref": "#/definitions/SecurityAssessmentPartnerData" + } + }, + "required": [ + "resourceDetails", + "status" + ] + }, + "SecurityAssessmentPartnerData": { + "type": "object", + "description": "Data regarding 3rd party partner integration", + "properties": { + "partnerName": { + "type": "string", + "description": "Name of the company of the partner" + }, + "secret": { + "type": "string", + "description": "secret to authenticate the partner - write only", + "x-ms-secret": true + } + }, + "required": [ + "partnerName", + "secret" + ] + }, + "AssessmentLinks": { + "type": "object", + "description": "Links relevant to the assessment", + "readOnly": true, + "properties": { + "azurePortalUri": { + "type": "string", + "description": "Link to assessment in Azure Portal", + "readOnly": true + } + } + }, + "AssessmentStatus": { + "type": "object", + "description": "The result of the assessment", + "properties": { + "code": { + "type": "string", + "description": "Programmatic code for the status of the assessment", + "enum": [ + "Healthy", + "Unhealthy", + "NotApplicable" + ], + "x-ms-enum": { + "name": "AssessmentStatusCode", + "modelAsString": true, + "values": [ + { + "value": "Healthy", + "description": "The resource is healthy" + }, + { + "value": "Unhealthy", + "description": "The resource has a security issue that needs to be addressed" + }, + { + "value": "NotApplicable", + "description": "Assessment for this resource did not happen" + } + ] + } + }, + "cause": { + "type": "string", + "description": "Programmatic code for the cause of the assessment status" + }, + "description": { + "type": "string", + "description": "Human readable description of the assessment status" + } + }, + "required": [ + "code" + ] + } + }, + "parameters": { + "ExpandAssessments": { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "OData expand. Optional.", + "x-ms-parameter-location": "method", + "enum": [ + "links", + "metadata" + ], + "x-ms-enum": { + "name": "ExpandEnum", + "modelAsString": true, + "values": [ + { + "value": "links", + "description": "All links associated with an assessment" + }, + { + "value": "metadata", + "description": "Assessment metadata" + } + ] + } + }, + "AssessmentName": { + "name": "assessmentName", + "in": "path", + "required": true, + "type": "string", + "description": "The Assessment Key - Unique key for the assessment type", + "x-ms-parameter-location": "method" + }, + "AssessmentBody": { + "name": "assessment", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/SecurityAssessment" + }, + "description": "Calculated assessment on a pre-defined assessment metadata", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/EnforceAdaptiveNetworkHardeningRules_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/EnforceAdaptiveNetworkHardeningRules_example.json new file mode 100644 index 000000000000..dcaf5b9bdbbe --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/EnforceAdaptiveNetworkHardeningRules_example.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "resourceGroupName": "rg1", + "resourceNamespace": "Microsoft.Compute", + "resourceType": "virtualMachines", + "resourceName": "vm1", + "adaptiveNetworkHardeningResourceName": "default", + "adaptiveNetworkHardeningEnforceAction": "enforce", + "body": { + "rules": [ + { + "name": "rule1", + "direction": "Inbound", + "destinationPort": 3389, + "protocols": [ + "TCP" + ], + "ipAddresses": [ + "100.10.1.1", + "200.20.2.2", + "81.199.3.0/24" + ] + }, + { + "name": "rule2", + "direction": "Inbound", + "destinationPort": 22, + "protocols": [ + "TCP" + ], + "ipAddresses": [] + } + ], + "networkSecurityGroups": [ + "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", + "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg2" + ] + } + }, + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "HTTP 202 (Accepted) if the operation was successfully started and will complete asynchronously." + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/GetAdaptiveNetworkHardening_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/GetAdaptiveNetworkHardening_example.json new file mode 100644 index 000000000000..be1d1f990c52 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/GetAdaptiveNetworkHardening_example.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "resourceGroupName": "rg1", + "resourceNamespace": "Microsoft.Compute", + "resourceType": "virtualMachines", + "resourceName": "vm1", + "adaptiveNetworkHardeningResourceName": "default" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1/providers/Microsoft.Security/adaptiveNetworkHardenings/default", + "name": "default", + "type": "Microsoft.Security/adaptiveNetworkHardenings", + "properties": { + "rulesCalculationTime": "2018-08-15T00:00:00.0000000Z", + "rules": [ + { + "name": "rule1", + "direction": "Inbound", + "destinationPort": 3389, + "protocols": [ + "TCP" + ], + "ipAddresses": [ + "100.10.1.1", + "200.20.2.2", + "81.199.3.0/24" + ] + }, + { + "name": "rule2", + "direction": "Inbound", + "destinationPort": 22, + "protocols": [ + "TCP" + ], + "ipAddresses": [] + } + ], + "effectiveNetworkSecurityGroups": [ + { + "networkInterface": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1", + "networkSecurityGroups": [ + "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nicNsg", + "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/subnetNsg" + ] + }, + { + "networkInterface": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/rg2/providers/Microsoft.Network/networkInterfaces/nic2", + "networkSecurityGroups": [ + "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nicNsg" + ] + } + ] + } + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/ListByExtendedResourceAdaptiveNetworkHardenings_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/ListByExtendedResourceAdaptiveNetworkHardenings_example.json new file mode 100644 index 000000000000..76eadc462fe8 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/ListByExtendedResourceAdaptiveNetworkHardenings_example.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "resourceGroupName": "rg1", + "resourceNamespace": "Microsoft.Compute", + "resourceType": "virtualMachines", + "resourceName": "vm1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/rg1/providers/Microsoft.Compute/virtualMachines/vm1/providers/Microsoft.Security/adaptiveNetworkHardenings/default", + "name": "default", + "type": "Microsoft.Security/adaptiveNetworkHardenings", + "properties": { + "rulesCalculationTime": "2018-08-15T00:00:00.0000000Z", + "rules": [ + { + "name": "rule1", + "direction": "Inbound", + "destinationPort": 3389, + "protocols": [ + "TCP" + ], + "ipAddresses": [ + "100.10.1.1", + "200.20.2.2", + "81.199.3.0/24" + ] + }, + { + "name": "rule2", + "direction": "Inbound", + "destinationPort": 22, + "protocols": [ + "TCP" + ], + "ipAddresses": [] + } + ], + "effectiveNetworkSecurityGroups": [ + { + "networkInterface": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/rg1/providers/Microsoft.Network/networkInterfaces/nic1", + "networkSecurityGroups": [ + "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nicNsg", + "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/subnetNsg" + ] + }, + { + "networkInterface": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/rg1/providers/Microsoft.Network/networkInterfaces/nic2", + "networkSecurityGroups": [ + "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nicNsg2" + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnectionsSubscriptionLocation_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnectionsSubscriptionLocation_example.json new file mode 100644 index 000000000000..4e6cc52eb451 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnectionsSubscriptionLocation_example.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "3eeab341-f466-499c-a8be-85427e154bad", + "ascLocation": "centralus" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "type": "Microsoft.Security/locations/allowedConnections", + "properties": { + "calculatedDateTime": "2018-08-06T14:55:32.3518545Z", + "connectableResources": [ + { + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine1", + "inboundConnectedResources": [ + { + "connectedResourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine2", + "tcpPorts": "[0-21,23-3388,3390-5984,5987-65535]", + "udpPorts": "[0-21,23-3388,3390-5984,5987-65535]" + } + ], + "outboundConnectedResources": [ + { + "connectedResourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine2", + "tcpPorts": "[0-21,23-3388,3390-5984,5987-65535]", + "udpPorts": "[0-21,23-3388,3390-5984,5987-65535]" + } + ] + }, + { + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine2", + "inboundConnectedResources": [ + { + "connectedResourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine1", + "tcpPorts": "[0-21,23-3388,3390-5984,5987-65535]", + "udpPorts": "[0-21,23-3388,3390-5984,5987-65535]" + } + ], + "outboundConnectedResources": [ + { + "connectedResourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine1", + "tcpPorts": "[0-21,23-3388,3390-5984,5987-65535]", + "udpPorts": "[0-21,23-3388,3390-5984,5987-65535]" + } + ] + }, + { + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine3", + "inboundConnectedResources": [], + "outboundConnectedResources": [] + } + ] + }, + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Security/locations/centralus/allowedConnections/Internal", + "name": "Internal", + "location": "centralus" + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnectionsSubscription_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnectionsSubscription_example.json new file mode 100644 index 000000000000..3ea22dfae99a --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnectionsSubscription_example.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "3eeab341-f466-499c-a8be-85427e154bad" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "type": "Microsoft.Security/locations/allowedConnections", + "properties": { + "calculatedDateTime": "2018-08-06T14:55:32.3518545Z", + "connectableResources": [ + { + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine1", + "inboundConnectedResources": [ + { + "connectedResourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine2", + "tcpPorts": "[0-21,23-3388,3390-5984,5987-65535]", + "udpPorts": "[0-21,23-3388,3390-5984,5987-65535]" + } + ], + "outboundConnectedResources": [ + { + "connectedResourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine2", + "tcpPorts": "[0-21,23-3388,3390-5984,5987-65535]", + "udpPorts": "[0-21,23-3388,3390-5984,5987-65535]" + } + ] + }, + { + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine2", + "inboundConnectedResources": [ + { + "connectedResourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine1", + "tcpPorts": "[0-21,23-3388,3390-5984,5987-65535]", + "udpPorts": "[0-21,23-3388,3390-5984,5987-65535]" + } + ], + "outboundConnectedResources": [ + { + "connectedResourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine1", + "tcpPorts": "[0-21,23-3388,3390-5984,5987-65535]", + "udpPorts": "[0-21,23-3388,3390-5984,5987-65535]" + } + ] + }, + { + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine3", + "inboundConnectedResources": [], + "outboundConnectedResources": [] + } + ] + }, + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Security/locations/centralus/allowedConnections/Internal", + "name": "Internal", + "location": "centralus" + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnections_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnections_example.json new file mode 100644 index 000000000000..db7cd6bc2e9b --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnections_example.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "3eeab341-f466-499c-a8be-85427e154bad", + "resourceGroupName": "myResourceGroup", + "ascLocation": "centralus", + "connectionType": "Internal" + }, + "responses": { + "200": { + "body": { + "type": "Microsoft.Security/locations/allowedConnections", + "properties": { + "calculatedDateTime": "2018-08-06T14:55:32.3518545Z", + "connectableResources": [ + { + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine1", + "inboundConnectedResources": [ + { + "connectedResourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine2", + "tcpPorts": "[0-21,23-3388,3390-5984,5987-65535]", + "udpPorts": "[0-21,23-3388,3390-5984,5987-65535]" + } + ], + "outboundConnectedResources": [ + { + "connectedResourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine2", + "tcpPorts": "[0-21,23-3388,3390-5984,5987-65535]", + "udpPorts": "[0-21,23-3388,3390-5984,5987-65535]" + } + ] + }, + { + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine2", + "inboundConnectedResources": [ + { + "connectedResourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine1", + "tcpPorts": "[0-21,23-3388,3390-5984,5987-65535]", + "udpPorts": "[0-21,23-3388,3390-5984,5987-65535]" + } + ], + "outboundConnectedResources": [ + { + "connectedResourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine1", + "tcpPorts": "[0-21,23-3388,3390-5984,5987-65535]", + "udpPorts": "[0-21,23-3388,3390-5984,5987-65535]" + } + ] + }, + { + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/virtaulMachine3", + "inboundConnectedResources": [], + "outboundConnectedResources": [] + } + ] + }, + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myResourceGroup/providers/Microsoft.Security/locations/centralus/allowedConnections/Internal", + "name": "Internal", + "location": "centralus" + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Assessments/DeleteAssessment_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Assessments/DeleteAssessment_example.json new file mode 100644 index 000000000000..5c8971c3bf59 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Assessments/DeleteAssessment_example.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "resourceId": "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2", + "assessmentName": "8bb8be0a-6010-4789-812f-e4d661c4ed0e" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Assessments/GetAssessmentWithExpand_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Assessments/GetAssessmentWithExpand_example.json new file mode 100644 index 000000000000..eff07cfaf4de --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Assessments/GetAssessmentWithExpand_example.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "resourceId": "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2", + "assessmentName": "21300918-b2e3-0346-785f-c77ff57d243b", + "$expand": "links" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2/providers/Microsoft.Security/assessments/21300918-b2e3-0346-785f-c77ff57d243b", + "name": "21300918-b2e3-0346-785f-c77ff57d243b", + "type": "Microsoft.Security/assessments", + "properties": { + "resourceDetails": { + "source": "Azure", + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2" + }, + "displayName": "Install endpoint protection solution on virtual machine scale sets", + "status": { + "code": "NotApplicable", + "cause": "OffByPolicy", + "description": "The effective policy for the assessment was evaluated to off - use Microsoft.Authorization/policyAssignments to turn this assessment on" + }, + "additionalData": { + "linkedWorkspaceId": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myLaWorkspace" + }, + "links": { + "azurePortalUri": "https://www.portal.azure.com/?fea#blade/Microsoft_Azure_Security/RecommendationsBlade/assessmentKey/21300918-b2e3-0346-785f-c77ff57d243b" + } + } + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Assessments/GetAssessment_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Assessments/GetAssessment_example.json new file mode 100644 index 000000000000..6db02e032bfa --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Assessments/GetAssessment_example.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "resourceId": "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2", + "assessmentName": "21300918-b2e3-0346-785f-c77ff57d243b" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2/providers/Microsoft.Security/assessments/21300918-b2e3-0346-785f-c77ff57d243b", + "name": "21300918-b2e3-0346-785f-c77ff57d243b", + "type": "Microsoft.Security/assessments", + "properties": { + "resourceDetails": { + "source": "Azure", + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2" + }, + "displayName": "Install endpoint protection solution on virtual machine scale sets", + "status": { + "code": "NotApplicable", + "cause": "OffByPolicy", + "description": "The effective policy for the assessment was evaluated to off - use Microsoft.Authorization/policyAssignments to turn this assessment on" + }, + "additionalData": { + "linkedWorkspaceId": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myLaWorkspace" + } + } + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Assessments/ListAssessments_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Assessments/ListAssessments_example.json new file mode 100644 index 000000000000..78b7a01d1cb6 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Assessments/ListAssessments_example.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "scope": "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/providers/Microsoft.Security/assessments/21300918-b2e3-0346-785f-c77ff57d243b", + "name": "21300918-b2e3-0346-785f-c77ff57d243b", + "type": "Microsoft.Security/assessments", + "properties": { + "resourceDetails": { + "source": "Azure", + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1" + }, + "displayName": "Install endpoint protection solution on virtual machine scale sets", + "status": { + "code": "Healthy" + } + } + }, + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2/providers/Microsoft.Security/assessments/21300918-b2e3-0346-785f-c77ff57d243b", + "name": "21300918-b2e3-0346-785f-c77ff57d243b", + "type": "Microsoft.Security/assessments", + "properties": { + "resourceDetails": { + "source": "Azure", + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2" + }, + "displayName": "Install endpoint protection solution on virtual machine scale sets", + "status": { + "code": "NotApplicable", + "cause": "OffByPolicy", + "description": "The effective policy for the assessment was evaluated to off - use Microsoft.Authorization/policyAssignments to turn this assessment on" + }, + "additionalData": { + "linkedWorkspaceId": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myLaWorkspace" + } + } + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Assessments/PutAssessment_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Assessments/PutAssessment_example.json new file mode 100644 index 000000000000..63873813b0ac --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Assessments/PutAssessment_example.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "resourceId": "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2", + "assessmentName": "8bb8be0a-6010-4789-812f-e4d661c4ed0e", + "assessment": { + "properties": { + "resourceDetails": { + "source": "Azure" + }, + "status": { + "code": "Healthy" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/providers/Microsoft.Security/assessments/8bb8be0a-6010-4789-812f-e4d661c4ed0e", + "name": "8bb8be0a-6010-4789-812f-e4d661c4ed0e", + "type": "Microsoft.Security/assessments", + "properties": { + "resourceDetails": { + "source": "Azure", + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/providers/Microsoft.Security/assessments/8bb8be0a-6010-4789-812f-e4d661c4ed0e" + }, + "displayName": "Install internal agent on VM", + "status": { + "code": "Healthy" + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/providers/Microsoft.Security/assessments/8bb8be0a-6010-4789-812f-e4d661c4ed0e", + "name": "8bb8be0a-6010-4789-812f-e4d661c4ed0e", + "type": "Microsoft.Security/assessments", + "properties": { + "resourceDetails": { + "source": "Azure", + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/providers/Microsoft.Security/assessments/8bb8be0a-6010-4789-812f-e4d661c4ed0e" + }, + "displayName": "Install internal agent on VM", + "status": { + "code": "Healthy" + } + } + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/CreateAssessmentsMetadata_subscription_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/CreateAssessmentsMetadata_subscription_example.json new file mode 100644 index 000000000000..617146f3ec81 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/CreateAssessmentsMetadata_subscription_example.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "0980887d-03d6-408c-9566-532f3456804e", + "assessmentMetadataName": "ca039e75-a276-4175-aebc-bcd41e4b14b7", + "assessmentMetadata": { + "properties": { + "displayName": "Install endpoint protection solution on virtual machine scale sets", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/26a828e1-e88f-464e-bbb3-c134a282b9de", + "description": "Install an endpoint protection solution on your virtual machines scale sets, to protect them from threats and vulnerabilities.", + "remediationDescription": "To install an endpoint protection solution: 1. Follow the instructions in How do I turn on antimalware in my virtual machine scale set", + "category": [ + "Compute" + ], + "severity": "Medium", + "userImpact": "Low", + "implementationEffort": "Low", + "threats": [ + "dataExfiltration", + "dataSpillage", + "maliciousInsider" + ], + "assessmentType": "CustomerManaged" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Security/assessmentMetadata/ca039e75-a276-4175-aebc-bcd41e4b14b7", + "name": "ca039e75-a276-4175-aebc-bcd41e4b14b7", + "type": "Microsoft.Security/assessmentMetadata", + "properties": { + "displayName": "My organization security assessment", + "description": "Assessment that my organization created to view our security assessment in Azure Security Center", + "remediationDescription": "Fix it with these remediation instructions", + "category": [ + "Compute" + ], + "severity": "Medium", + "userImpact": "Low", + "implementationEffort": "Low", + "threats": [ + "dataExfiltration", + "dataSpillage", + "maliciousInsider" + ], + "assessmentType": "CustomerManaged" + } + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/DeleteAssessmentsMetadata_subscription_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/DeleteAssessmentsMetadata_subscription_example.json new file mode 100644 index 000000000000..1ab5daf14e38 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/DeleteAssessmentsMetadata_subscription_example.json @@ -0,0 +1,10 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "0980887d-03d6-408c-9566-532f3456804e", + "assessmentMetadataName": "ca039e75-a276-4175-aebc-bcd41e4b14b7" + }, + "responses": { + "200": {} + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/GetAssessmentsMetadata_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/GetAssessmentsMetadata_example.json new file mode 100644 index 000000000000..f2202a19c14f --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/GetAssessmentsMetadata_example.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "assessmentMetadataName": "21300918-b2e3-0346-785f-c77ff57d243b" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Security/assessmentMetadata/21300918-b2e3-0346-785f-c77ff57d243b", + "name": "21300918-b2e3-0346-785f-c77ff57d243b", + "type": "Microsoft.Security/assessmentMetadata", + "properties": { + "displayName": "Install endpoint protection solution on virtual machine scale sets", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/26a828e1-e88f-464e-bbb3-c134a282b9de", + "description": "Install an endpoint protection solution on your virtual machines scale sets, to protect them from threats and vulnerabilities.", + "remediationDescription": "To install an endpoint protection solution: 1. Follow the instructions in How do I turn on antimalware in my virtual machine scale set", + "category": [ + "Compute" + ], + "severity": "Medium", + "userImpact": "Low", + "implementationEffort": "Low", + "threats": [ + "dataExfiltration", + "dataSpillage", + "maliciousInsider" + ], + "assessmentType": "BuiltIn" + } + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/GetAssessmentsMetadata_subscription_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/GetAssessmentsMetadata_subscription_example.json new file mode 100644 index 000000000000..ae60eb4cbb9e --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/GetAssessmentsMetadata_subscription_example.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "0980887d-03d6-408c-9566-532f3456804e", + "assessmentMetadataName": "21300918-b2e3-0346-785f-c77ff57d243b" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Security/assessmentMetadata/21300918-b2e3-0346-785f-c77ff57d243b", + "name": "21300918-b2e3-0346-785f-c77ff57d243b", + "type": "Microsoft.Security/assessmentMetadata", + "properties": { + "displayName": "Install endpoint protection solution on virtual machine scale sets", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/26a828e1-e88f-464e-bbb3-c134a282b9de", + "description": "Install an endpoint protection solution on your virtual machines scale sets, to protect them from threats and vulnerabilities.", + "remediationDescription": "To install an endpoint protection solution: 1. Follow the instructions in How do I turn on antimalware in my virtual machine scale set", + "category": [ + "Compute" + ], + "severity": "Medium", + "userImpact": "Low", + "implementationEffort": "Low", + "threats": [ + "dataExfiltration", + "dataSpillage", + "maliciousInsider" + ], + "assessmentType": "BuiltIn" + } + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/ListAssessmentsMetadata_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/ListAssessmentsMetadata_example.json new file mode 100644 index 000000000000..937869acbbd8 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/ListAssessmentsMetadata_example.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Security/assessmentMetadata/21300918-b2e3-0346-785f-c77ff57d243b", + "name": "21300918-b2e3-0346-785f-c77ff57d243b", + "type": "Microsoft.Security/assessmentMetadata", + "properties": { + "displayName": "Install endpoint protection solution on virtual machine scale sets", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/26a828e1-e88f-464e-bbb3-c134a282b9de", + "description": "Install an endpoint protection solution on your virtual machines scale sets, to protect them from threats and vulnerabilities.", + "remediationDescription": "To install an endpoint protection solution: 1. Follow the instructions in How do I turn on antimalware in my virtual machine scale set", + "category": [ + "Compute" + ], + "severity": "Medium", + "userImpact": "Low", + "implementationEffort": "Low", + "threats": [ + "dataExfiltration", + "dataSpillage", + "maliciousInsider" + ], + "assessmentType": "BuiltIn" + } + }, + { + "id": "/providers/Microsoft.Security/assessmentMetadata/bc303248-3d14-44c2-96a0-55f5c326b5fe", + "name": "bc303248-3d14-44c2-96a0-55f5c326b5fe", + "type": "Microsoft.Security/assessmentMetadata", + "properties": { + "displayName": "Close management ports on your virtual machines", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/22730e10-96f6-4aac-ad84-9383d35b5917", + "description": "Open remote management ports expose your VM to a high level of risk from internet-based attacks that attempt to brute force credentials to gain admin access to the machine.", + "remediationDescription": "We recommend that you edit the inbound rules of the below virtual machines to restrict access to specific source ranges.
    To restrict the access to your virtual machines: 1. Click on a VM from the list below 2. At the 'Networking' blade, click on each of the rules that allow management ports (e.g. RDP-3389, WINRM-5985, SSH-22) 3. Change the 'Action' property to 'Deny' 4. Click 'Save'", + "category": [ + "Networking" + ], + "severity": "Medium", + "userImpact": "High", + "implementationEffort": "Low", + "threats": [ + "dataExfiltration", + "dataSpillage", + "maliciousInsider" + ], + "preview": true, + "assessmentType": "CustomPolicy" + } + }, + { + "id": "/providers/Microsoft.Security/assessmentMetadata/ca039e75-a276-4175-aebc-bcd41e4b14b7", + "name": "ca039e75-a276-4175-aebc-bcd41e4b14b7", + "type": "Microsoft.Security/assessmentMetadata", + "properties": { + "displayName": "My organization security assessment", + "description": "Assessment that my organization created to view our security assessment in Azure Security Center", + "remediationDescription": "Fix it with these remediation instructions", + "category": [ + "Compute" + ], + "severity": "Medium", + "userImpact": "Low", + "implementationEffort": "Low", + "threats": [], + "assessmentType": "CustomerManaged" + } + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/ListAssessmentsMetadata_subscription_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/ListAssessmentsMetadata_subscription_example.json new file mode 100644 index 000000000000..8bde3eae2b3d --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AssessmentsMetadata/ListAssessmentsMetadata_subscription_example.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "0980887d-03d6-408c-9566-532f3456804e" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Security/assessmentMetadata/21300918-b2e3-0346-785f-c77ff57d243b", + "name": "21300918-b2e3-0346-785f-c77ff57d243b", + "type": "Microsoft.Security/assessmentMetadata", + "properties": { + "displayName": "Install endpoint protection solution on virtual machine scale sets", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/26a828e1-e88f-464e-bbb3-c134a282b9de", + "description": "Install an endpoint protection solution on your virtual machines scale sets, to protect them from threats and vulnerabilities.", + "remediationDescription": "To install an endpoint protection solution: 1. Follow the instructions in How do I turn on antimalware in my virtual machine scale set", + "category": [ + "Compute" + ], + "severity": "Medium", + "userImpact": "Low", + "implementationEffort": "Low", + "threats": [ + "dataExfiltration", + "dataSpillage", + "maliciousInsider" + ], + "assessmentType": "BuiltIn" + } + }, + { + "id": "/providers/Microsoft.Security/assessmentMetadata/bc303248-3d14-44c2-96a0-55f5c326b5fe", + "name": "bc303248-3d14-44c2-96a0-55f5c326b5fe", + "type": "Microsoft.Security/assessmentMetadata", + "properties": { + "displayName": "Close management ports on your virtual machines", + "policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/22730e10-96f6-4aac-ad84-9383d35b5917", + "description": "Open remote management ports expose your VM to a high level of risk from internet-based attacks that attempt to brute force credentials to gain admin access to the machine.", + "remediationDescription": "We recommend that you edit the inbound rules of the below virtual machines to restrict access to specific source ranges.
    To restrict the access to your virtual machines: 1. Click on a VM from the list below 2. At the 'Networking' blade, click on each of the rules that allow management ports (e.g. RDP-3389, WINRM-5985, SSH-22) 3. Change the 'Action' property to 'Deny' 4. Click 'Save'", + "category": [ + "Networking" + ], + "severity": "Medium", + "userImpact": "High", + "implementationEffort": "Low", + "threats": [ + "dataExfiltration", + "dataSpillage", + "maliciousInsider" + ], + "preview": true, + "assessmentType": "CustomPolicy" + } + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/CreateJitNetworkAccessPolicy_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/CreateJitNetworkAccessPolicy_example.json new file mode 100644 index 000000000000..a6d2b72050f2 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/CreateJitNetworkAccessPolicy_example.json @@ -0,0 +1,111 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "ascLocation": "westeurope", + "resourceGroupName": "myRg1", + "jitNetworkAccessPolicyName": "default", + "body": { + "kind": "Basic", + "properties": { + "virtualMachines": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", + "ports": [ + { + "number": 22, + "protocol": "*", + "allowedSourceAddressPrefix": "*", + "maxRequestAccessDuration": "PT3H" + }, + { + "number": 3389, + "protocol": "*", + "allowedSourceAddressPrefix": "*", + "maxRequestAccessDuration": "PT3H" + } + ] + } + ], + "requests": [ + { + "virtualMachines": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", + "ports": [ + { + "number": 3389, + "allowedSourceAddressPrefix": "192.127.0.2", + "endTimeUtc": "2018-05-17T09:06:45.5691611Z", + "status": "Initiated", + "statusReason": "UserRequested" + } + ] + } + ], + "startTimeUtc": "2018-05-17T08:06:45.5691611Z", + "requestor": "barbara@contoso.com" + } + ], + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Security/locations/westeurope/jitNetworkAccessPolicies/default", + "name": "default", + "type": "Microsoft.Security/locations/jitNetworkAccessPolicies", + "location": "westeurope" + } + }, + "responses": { + "200": { + "body": { + "kind": "Basic", + "properties": { + "virtualMachines": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", + "ports": [ + { + "number": 22, + "protocol": "*", + "allowedSourceAddressPrefix": "*", + "maxRequestAccessDuration": "PT3H" + }, + { + "number": 3389, + "protocol": "*", + "allowedSourceAddressPrefix": "*", + "maxRequestAccessDuration": "PT3H" + } + ] + } + ], + "requests": [ + { + "virtualMachines": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", + "ports": [ + { + "number": 3389, + "allowedSourceAddressPrefix": "192.127.0.2", + "endTimeUtc": "2018-05-17T09:06:45.5691611Z", + "status": "Initiated", + "statusReason": "UserRequested" + } + ] + } + ], + "startTimeUtc": "2018-05-17T08:06:45.5691611Z", + "requestor": "barbara@contoso.com" + } + ], + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Security/locations/westeurope/jitNetworkAccessPolicies/default", + "name": "default", + "type": "Microsoft.Security/locations/jitNetworkAccessPolicies", + "location": "westeurope" + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/DeleteJitNetworkAccessPolicy_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/DeleteJitNetworkAccessPolicy_example.json new file mode 100644 index 000000000000..6b5a94c52cc3 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/DeleteJitNetworkAccessPolicy_example.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "ascLocation": "westeurope", + "resourceGroupName": "myRg1", + "jitNetworkAccessPolicyName": "default" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroupLocation_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroupLocation_example.json new file mode 100644 index 000000000000..7c9ee01bb32b --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroupLocation_example.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "ascLocation": "westeurope", + "resourceGroupName": "myRg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "kind": "Basic", + "properties": { + "virtualMachines": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", + "ports": [ + { + "number": 22, + "protocol": "*", + "allowedSourceAddressPrefix": "*", + "maxRequestAccessDuration": "PT3H" + }, + { + "number": 3389, + "protocol": "*", + "allowedSourceAddressPrefix": "*", + "maxRequestAccessDuration": "PT3H" + } + ] + } + ], + "requests": [ + { + "virtualMachines": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", + "ports": [ + { + "number": 3389, + "allowedSourceAddressPrefix": "192.127.0.2", + "endTimeUtc": "2018-05-17T09:06:45.5691611Z", + "status": "Initiated", + "statusReason": "UserRequested" + } + ] + } + ], + "startTimeUtc": "2018-05-17T08:06:45.5691611Z", + "requestor": "barbara@contoso.com", + "justification": "testing a new version of the product" + } + ], + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Security/locations/westeurope/jitNetworkAccessPolicies/default", + "name": "default", + "type": "Microsoft.Security/locations/jitNetworkAccessPolicies", + "location": "westeurope" + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroup_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroup_example.json new file mode 100644 index 000000000000..35e5db1c748d --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroup_example.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "resourceGroupName": "myRg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "kind": "Basic", + "properties": { + "virtualMachines": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", + "ports": [ + { + "number": 22, + "protocol": "*", + "allowedSourceAddressPrefix": "*", + "maxRequestAccessDuration": "PT3H" + }, + { + "number": 3389, + "protocol": "*", + "allowedSourceAddressPrefix": "*", + "maxRequestAccessDuration": "PT3H" + } + ] + } + ], + "requests": [ + { + "virtualMachines": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", + "ports": [ + { + "number": 3389, + "allowedSourceAddressPrefix": "192.127.0.2", + "endTimeUtc": "2018-05-17T09:06:45.5691611Z", + "status": "Initiated", + "statusReason": "UserRequested" + } + ] + } + ], + "startTimeUtc": "2018-05-17T08:06:45.5691611Z", + "requestor": "barbara@contoso.com", + "justification": "testing a new version of the product" + } + ], + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Security/locations/westeurope/jitNetworkAccessPolicies/default", + "name": "default", + "type": "Microsoft.Security/locations/jitNetworkAccessPolicies", + "location": "westeurope" + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscriptionLocation_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscriptionLocation_example.json new file mode 100644 index 000000000000..fd30dbf338ea --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscriptionLocation_example.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "ascLocation": "westeurope" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "kind": "Basic", + "properties": { + "virtualMachines": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", + "ports": [ + { + "number": 22, + "protocol": "*", + "allowedSourceAddressPrefix": "*", + "maxRequestAccessDuration": "PT3H" + }, + { + "number": 3389, + "protocol": "*", + "allowedSourceAddressPrefix": "*", + "maxRequestAccessDuration": "PT3H" + } + ] + } + ], + "requests": [ + { + "virtualMachines": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", + "ports": [ + { + "number": 3389, + "allowedSourceAddressPrefix": "192.127.0.2", + "endTimeUtc": "2018-05-17T09:06:45.5691611Z", + "status": "Initiated", + "statusReason": "UserRequested" + } + ] + } + ], + "startTimeUtc": "2018-05-17T08:06:45.5691611Z", + "requestor": "barbara@contoso.com", + "justification": "testing a new version of the product" + } + ], + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Security/locations/westeurope/jitNetworkAccessPolicies/default", + "name": "default", + "type": "Microsoft.Security/locations/jitNetworkAccessPolicies", + "location": "westeurope" + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscription_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscription_example.json new file mode 100644 index 000000000000..920ad1d0824d --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscription_example.json @@ -0,0 +1,64 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "kind": "Basic", + "properties": { + "virtualMachines": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", + "ports": [ + { + "number": 22, + "protocol": "*", + "allowedSourceAddressPrefix": "*", + "maxRequestAccessDuration": "PT3H" + }, + { + "number": 3389, + "protocol": "*", + "allowedSourceAddressPrefix": "*", + "maxRequestAccessDuration": "PT3H" + } + ] + } + ], + "requests": [ + { + "virtualMachines": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", + "ports": [ + { + "number": 3389, + "allowedSourceAddressPrefix": "192.127.0.2", + "endTimeUtc": "2018-05-17T09:06:45.5691611Z", + "status": "Initiated", + "statusReason": "UserRequested" + } + ] + } + ], + "startTimeUtc": "2018-05-17T08:06:45.5691611Z", + "requestor": "barbara@contoso.com", + "justification": "testing a new version of the product" + } + ], + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Security/locations/westeurope/jitNetworkAccessPolicies/default", + "name": "default", + "type": "Microsoft.Security/locations/jitNetworkAccessPolicies", + "location": "westeurope" + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPolicy_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPolicy_example.json new file mode 100644 index 000000000000..e81ccfd4cc46 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPolicy_example.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "ascLocation": "westeurope", + "resourceGroupName": "myRg1", + "jitNetworkAccessPolicyName": "default" + }, + "responses": { + "200": { + "body": { + "kind": "Basic", + "properties": { + "virtualMachines": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", + "ports": [ + { + "number": 22, + "protocol": "*", + "allowedSourceAddressPrefix": "*", + "maxRequestAccessDuration": "PT3H" + }, + { + "number": 3389, + "protocol": "*", + "allowedSourceAddressPrefix": "*", + "maxRequestAccessDuration": "PT3H" + } + ] + } + ], + "requests": [ + { + "virtualMachines": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", + "ports": [ + { + "number": 3389, + "allowedSourceAddressPrefix": "192.127.0.2", + "endTimeUtc": "2018-05-17T09:06:45.5691611Z", + "status": "Initiated", + "statusReason": "UserRequested" + } + ] + } + ], + "startTimeUtc": "2018-05-17T08:06:45.5691611Z", + "requestor": "barbara@contoso.com", + "justification": "testing a new version of the product" + } + ], + "provisioningState": "Succeeded" + }, + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Security/locations/westeurope/jitNetworkAccessPolicies/default", + "name": "default", + "type": "Microsoft.Security/locations/jitNetworkAccessPolicies", + "location": "westeurope" + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/InitiateJitNetworkAccessPolicy_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/InitiateJitNetworkAccessPolicy_example.json new file mode 100644 index 000000000000..d944942dbf0c --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/InitiateJitNetworkAccessPolicy_example.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "ascLocation": "westeurope", + "resourceGroupName": "myRg1", + "jitNetworkAccessPolicyName": "default", + "jitNetworkAccessPolicyInitiateType": "initiate", + "body": { + "virtualMachines": [ + { + "id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", + "ports": [ + { + "number": 3389, + "duration": "PT1H", + "allowedSourceAddressPrefix": "192.127.0.2" + } + ] + } + ], + "justification": "testing a new version of the product" + } + }, + "responses": { + "202": { + "body": { + "virtualMachines": [ + { + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154baf/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", + "ports": [ + { + "number": 3389, + "allowedSourceAddressPrefix": "192.127.0.2", + "endTimeUtc": "2018-07-12T09:53:03.3658798Z", + "status": "Initiating", + "statusReason": "UserRequested" + } + ] + } + ], + "startTimeUtc": "2018-07-12T08:53:03.3658798Z", + "requestor": "barbara@contoso.com", + "justification": "testing a new version of the product" + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopologySubscriptionLocation_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopologySubscriptionLocation_example.json new file mode 100644 index 000000000000..1d7dcfcca62a --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopologySubscriptionLocation_example.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "3eeab341-f466-499c-a8be-85427e154bad", + "ascLocation": "centralus" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "calculatedDateTime": "2018-07-10T13:56:10.5755270Z", + "topologyResources": [ + { + "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154bad/resourceGroups/myservers/providers/Microsoft.Network/virtualNetworks/myvnet", + "severity": "Healthy", + "networkZones": "Internal", + "recommendationsExist": false, + "topologyScore": 0, + "location": "westus", + "children": [ + { + "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154bad/resourceGroups/myservers/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet" + } + ] + } + ] + }, + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154bad/resourceGroups/myservers/providers/Microsoft.Security/locations/centralus/topologies/vnets", + "name": "vnets", + "type": "Microsoft.Security/locations/topologies", + "location": "westus" + }, + { + "properties": { + "calculatedDateTime": "2018-07-10T13:56:10.5755270Z", + "topologyResources": [ + { + "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154bad/resourceGroups/myservers/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet", + "severity": "Healthy", + "networkZones": "Internal", + "recommendationsExist": false, + "topologyScore": 5, + "location": "westus", + "parents": [ + { + "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154bad/resourceGroups/myservers/providers/Microsoft.Network/virtualNetworks/myvnet" + } + ] + } + ] + }, + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154bad/resourceGroups/myservers/providers/Microsoft.Security/locations/centralus/topologies/subnets", + "name": "subnets", + "type": "Microsoft.Security/locations/topologies", + "location": "westus" + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopologySubscription_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopologySubscription_example.json new file mode 100644 index 000000000000..1df605aaf115 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopologySubscription_example.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "3eeab341-f466-499c-a8be-85427e154bad" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "calculatedDateTime": "2018-07-10T13:56:10.5755270Z", + "topologyResources": [ + { + "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154bad/resourceGroups/myservers/providers/Microsoft.Network/virtualNetworks/myvnet", + "severity": "Healthy", + "networkZones": "Internal", + "recommendationsExist": false, + "topologyScore": 0, + "location": "westus", + "children": [ + { + "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154bad/resourceGroups/myservers/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet" + } + ] + } + ] + }, + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154bad/resourceGroups/myservers/providers/Microsoft.Security/locations/centralus/topologies/vnets", + "name": "vnets", + "type": "Microsoft.Security/locations/topologies", + "location": "westus" + }, + { + "properties": { + "calculatedDateTime": "2018-07-10T13:56:10.5755270Z", + "topologyResources": [ + { + "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154bad/resourceGroups/myservers/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet", + "severity": "Healthy", + "networkZones": "Internal", + "recommendationsExist": false, + "topologyScore": 5, + "location": "westus", + "parents": [ + { + "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154bad/resourceGroups/myservers/providers/Microsoft.Network/virtualNetworks/myvnet" + } + ] + } + ] + }, + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154bad/resourceGroups/myservers/providers/Microsoft.Security/locations/centralus/topologies/subnets", + "name": "subnets", + "type": "Microsoft.Security/locations/topologies", + "location": "westus" + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopology_example.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopology_example.json new file mode 100644 index 000000000000..46228d4d64f0 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopology_example.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "3eeab341-f466-499c-a8be-85427e154bad", + "resourceGroupName": "myservers", + "ascLocation": "centralus", + "topologyResourceName": "vnets" + }, + "responses": { + "200": { + "body": { + "properties": { + "calculatedDateTime": "2018-07-10T13:56:10.5755270Z", + "topologyResources": [ + { + "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154bad/resourceGroups/myservers/providers/Microsoft.Network/virtualNetworks/myvnet", + "severity": "Healthy", + "networkZones": "InternetFacing", + "recommendationsExist": false, + "topologyScore": 0, + "location": "westus", + "children": [ + { + "resourceId": "/subscriptions/3eeab341-f466-499c-a8be-85427e154bad/resourceGroups/myservers/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet" + } + ] + } + ] + }, + "id": "/subscriptions/3eeab341-f466-499c-a8be-85427e154bad/resourceGroups/myservers/providers/Microsoft.Security/locations/centralus/topologies/vnets", + "name": "vnets", + "type": "Microsoft.Security/locations/topologies", + "location": "westus" + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/jitNetworkAccessPolicies.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/jitNetworkAccessPolicies.json new file mode 100644 index 000000000000..9014390efee0 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/jitNetworkAccessPolicies.json @@ -0,0 +1,770 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Center", + "description": "API spec for Microsoft.Security (Azure Security Center) resource provider", + "version": "2020-01-01" + }, + "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/jitNetworkAccessPolicies": { + "get": { + "x-ms-examples": { + "Get JIT network access policies on a subscription": { + "$ref": "./examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscription_example.json" + } + }, + "tags": [ + "JitNetworkAccessPolicies" + ], + "description": "Policies for protecting resources using Just-in-Time access control.", + "operationId": "JitNetworkAccessPolicies_List", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JitNetworkAccessPoliciesList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/jitNetworkAccessPolicies": { + "get": { + "x-ms-examples": { + "Get JIT network access policies on a subscription from a security data location": { + "$ref": "./examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscriptionLocation_example.json" + } + }, + "tags": [ + "JitNetworkAccessPolicies" + ], + "description": "Policies for protecting resources using Just-in-Time access control for the subscription, location", + "operationId": "JitNetworkAccessPolicies_ListByRegion", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/AscLocation" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JitNetworkAccessPoliciesList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/jitNetworkAccessPolicies": { + "get": { + "x-ms-examples": { + "Get JIT network access policies on a resource group": { + "$ref": "./examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroup_example.json" + } + }, + "tags": [ + "JitNetworkAccessPolicies" + ], + "description": "Policies for protecting resources using Just-in-Time access control for the subscription, location", + "operationId": "JitNetworkAccessPolicies_ListByResourceGroup", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JitNetworkAccessPoliciesList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/jitNetworkAccessPolicies": { + "get": { + "x-ms-examples": { + "Get JIT network access policies on a resource group from a security data location": { + "$ref": "./examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroupLocation_example.json" + } + }, + "tags": [ + "JitNetworkAccessPolicies" + ], + "description": "Policies for protecting resources using Just-in-Time access control for the subscription, location", + "operationId": "JitNetworkAccessPolicies_ListByResourceGroupAndRegion", + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/AscLocation" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JitNetworkAccessPoliciesList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/jitNetworkAccessPolicies/{jitNetworkAccessPolicyName}": { + "get": { + "x-ms-examples": { + "Get JIT network access policy": { + "$ref": "./examples/JitNetworkAccessPolicies/GetJitNetworkAccessPolicy_example.json" + } + }, + "tags": [ + "JitNetworkAccessPolicies" + ], + "description": "Policies for protecting resources using Just-in-Time access control for the subscription, location", + "operationId": "JitNetworkAccessPolicies_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/AscLocation" + }, + { + "$ref": "#/parameters/JitNetworkAccessPolicyName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JitNetworkAccessPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + }, + "put": { + "x-ms-examples": { + "Create JIT network access policy": { + "$ref": "./examples/JitNetworkAccessPolicies/CreateJitNetworkAccessPolicy_example.json" + } + }, + "tags": [ + "JitNetworkAccessPolicies" + ], + "description": "Create a policy for protecting resources using Just-in-Time access control", + "operationId": "JitNetworkAccessPolicies_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/AscLocation" + }, + { + "$ref": "#/parameters/JitNetworkAccessPolicyName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JitNetworkAccessPolicy" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/JitNetworkAccessPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "x-ms-examples": { + "Delete a JIT network access policy": { + "$ref": "./examples/JitNetworkAccessPolicies/DeleteJitNetworkAccessPolicy_example.json" + } + }, + "tags": [ + "JitNetworkAccessPolicies" + ], + "description": "Delete a Just-in-Time access control policy.", + "operationId": "JitNetworkAccessPolicies_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/AscLocation" + }, + { + "$ref": "#/parameters/JitNetworkAccessPolicyName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK - Resource was deleted" + }, + "204": { + "description": "No Content - Resource does not exist" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/jitNetworkAccessPolicies/{jitNetworkAccessPolicyName}/{jitNetworkAccessPolicyInitiateType}": { + "post": { + "x-ms-examples": { + "Initiate an action on a JIT network access policy": { + "$ref": "./examples/JitNetworkAccessPolicies/InitiateJitNetworkAccessPolicy_example.json" + } + }, + "tags": [ + "JitNetworkAccessPolicies" + ], + "description": "Initiate a JIT access from a specific Just-in-Time policy configuration.", + "operationId": "JitNetworkAccessPolicies_Initiate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/AscLocation" + }, + { + "$ref": "#/parameters/JitNetworkAccessPolicyName" + }, + { + "$ref": "#/parameters/JitNetworkAccessPolicyInitiateType" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/JitNetworkAccessPolicyInitiateRequest" + } + ], + "responses": { + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/JitNetworkAccessRequest" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "JitNetworkAccessPoliciesList": { + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/JitNetworkAccessPolicy" + } + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URI to fetch the next page." + } + } + }, + "JitNetworkAccessPolicy": { + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/JitNetworkAccessPolicyProperties" + } + }, + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/Resource" + }, + { + "$ref": "../../../common/v1/types.json#/definitions/Kind" + }, + { + "$ref": "../../../common/v1/types.json#/definitions/Location" + } + ] + }, + "JitNetworkAccessPolicyProperties": { + "type": "object", + "properties": { + "virtualMachines": { + "type": "array", + "description": "Configurations for Microsoft.Compute/virtualMachines resource type.", + "items": { + "$ref": "#/definitions/JitNetworkAccessPolicyVirtualMachine" + } + }, + "requests": { + "type": "array", + "items": { + "$ref": "#/definitions/JitNetworkAccessRequest" + } + }, + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Gets the provisioning state of the Just-in-Time policy." + } + }, + "required": [ + "virtualMachines" + ] + }, + "JitNetworkAccessPolicyVirtualMachine": { + "type": "object", + "required": [ + "id", + "ports" + ], + "properties": { + "id": { + "type": "string", + "description": "Resource ID of the virtual machine that is linked to this policy" + }, + "ports": { + "type": "array", + "description": "Port configurations for the virtual machine", + "items": { + "$ref": "#/definitions/JitNetworkAccessPortRule" + } + }, + "publicIpAddress": { + "type": "string", + "description": "Public IP address of the Azure Firewall that is linked to this policy, if applicable" + } + } + }, + "JitNetworkAccessPortRule": { + "type": "object", + "properties": { + "number": { + "$ref": "#/definitions/PortNumber" + }, + "protocol": { + "type": "string", + "enum": [ + "TCP", + "UDP", + "*" + ], + "x-ms-enum": { + "name": "protocol", + "modelAsString": true, + "values": [ + { + "value": "TCP" + }, + { + "value": "UDP" + }, + { + "value": "*", + "name": "All" + } + ] + } + }, + "allowedSourceAddressPrefix": { + "type": "string", + "description": "Mutually exclusive with the \"allowedSourceAddressPrefixes\" parameter. Should be an IP address or CIDR, for example \"192.168.0.3\" or \"192.168.0.0/16\"." + }, + "allowedSourceAddressPrefixes": { + "type": "array", + "description": "Mutually exclusive with the \"allowedSourceAddressPrefix\" parameter.", + "items": { + "type": "string", + "description": "IP address or CIDR, for example \"192.168.0.3\" or \"192.168.0.0/16\"." + } + }, + "maxRequestAccessDuration": { + "type": "string", + "description": "Maximum duration requests can be made for. In ISO 8601 duration format. Minimum 5 minutes, maximum 1 day" + } + }, + "required": [ + "maxRequestAccessDuration", + "number", + "protocol" + ] + }, + "JitNetworkAccessRequest": { + "type": "object", + "properties": { + "virtualMachines": { + "type": "array", + "items": { + "$ref": "#/definitions/JitNetworkAccessRequestVirtualMachine" + } + }, + "startTimeUtc": { + "type": "string", + "format": "date-time", + "description": "The start time of the request in UTC" + }, + "requestor": { + "type": "string", + "description": "The identity of the person who made the request" + }, + "justification": { + "type": "string", + "description": "The justification for making the initiate request" + } + }, + "required": [ + "requestor", + "startTimeUtc", + "virtualMachines" + ] + }, + "JitNetworkAccessRequestVirtualMachine": { + "type": "object", + "required": [ + "id", + "ports" + ], + "properties": { + "id": { + "type": "string", + "description": "Resource ID of the virtual machine that is linked to this policy" + }, + "ports": { + "type": "array", + "description": "The ports that were opened for the virtual machine", + "items": { + "$ref": "#/definitions/JitNetworkAccessRequestPort" + } + } + } + }, + "JitNetworkAccessRequestPort": { + "type": "object", + "properties": { + "number": { + "$ref": "#/definitions/PortNumber" + }, + "allowedSourceAddressPrefix": { + "type": "string", + "description": "Mutually exclusive with the \"allowedSourceAddressPrefixes\" parameter. Should be an IP address or CIDR, for example \"192.168.0.3\" or \"192.168.0.0/16\"." + }, + "allowedSourceAddressPrefixes": { + "type": "array", + "description": "Mutually exclusive with the \"allowedSourceAddressPrefix\" parameter.", + "items": { + "description": "IP address or CIDR, for example \"192.168.0.3\" or \"192.168.0.0/16\".", + "type": "string" + } + }, + "endTimeUtc": { + "type": "string", + "format": "date-time", + "description": "The date & time at which the request ends in UTC" + }, + "status": { + "type": "string", + "description": "The status of the port", + "enum": [ + "Revoked", + "Initiated" + ], + "x-ms-enum": { + "name": "status", + "modelAsString": true, + "values": [ + { + "value": "Revoked" + }, + { + "value": "Initiated" + } + ] + } + }, + "statusReason": { + "type": "string", + "description": "A description of why the `status` has its value", + "enum": [ + "Expired", + "UserRequested", + "NewerRequestInitiated" + ], + "x-ms-enum": { + "name": "statusReason", + "modelAsString": true, + "values": [ + { + "value": "Expired" + }, + { + "value": "UserRequested" + }, + { + "value": "NewerRequestInitiated" + } + ] + } + }, + "mappedPort": { + "type": "integer", + "description": "The port which is mapped to this port's `number` in the Azure Firewall, if applicable" + } + }, + "required": [ + "endTimeUtc", + "number", + "status", + "statusReason" + ] + }, + "JitNetworkAccessPolicyInitiateRequest": { + "type": "object", + "properties": { + "virtualMachines": { + "type": "array", + "description": "A list of virtual machines & ports to open access for", + "items": { + "$ref": "#/definitions/JitNetworkAccessPolicyInitiateVirtualMachine" + } + }, + "justification": { + "type": "string", + "description": "The justification for making the initiate request" + } + }, + "required": [ + "virtualMachines" + ] + }, + "JitNetworkAccessPolicyInitiateVirtualMachine": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Resource ID of the virtual machine that is linked to this policy" + }, + "ports": { + "type": "array", + "description": "The ports to open for the resource with the `id`", + "items": { + "$ref": "#/definitions/JitNetworkAccessPolicyInitiatePort" + } + } + }, + "required": [ + "id", + "ports" + ] + }, + "JitNetworkAccessPolicyInitiatePort": { + "type": "object", + "properties": { + "number": { + "$ref": "#/definitions/PortNumber" + }, + "allowedSourceAddressPrefix": { + "type": "string", + "description": "Source of the allowed traffic. If omitted, the request will be for the source IP address of the initiate request." + }, + "endTimeUtc": { + "type": "string", + "format": "date-time", + "description": "The time to close the request in UTC" + } + }, + "required": [ + "endTimeUtc", + "number" + ] + }, + "PortNumber": { + "type": "integer", + "minimum": 0, + "maximum": 65535 + } + }, + "parameters": { + "JitNetworkAccessPolicyName": { + "name": "jitNetworkAccessPolicyName", + "type": "string", + "in": "path", + "required": true, + "description": "Name of a Just-in-Time access configuration policy.", + "x-ms-parameter-location": "method" + }, + "JitNetworkAccessPolicyInitiateType": { + "name": "jitNetworkAccessPolicyInitiateType", + "type": "string", + "in": "path", + "required": true, + "description": "Type of the action to do on the Just-in-Time access policy.", + "enum": [ + "initiate" + ], + "x-ms-parameter-location": "method" + }, + "JitNetworkAccessPolicyInitiateRequest": { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/JitNetworkAccessPolicyInitiateRequest" + }, + "x-ms-parameter-location": "method" + }, + "JitNetworkAccessPolicy": { + "name": "body", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/JitNetworkAccessPolicy" + }, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/topologies.json b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/topologies.json new file mode 100644 index 000000000000..5a898ec20dcc --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/topologies.json @@ -0,0 +1,301 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Center", + "description": "API spec for Microsoft.Security (Azure Security Center) resource provider", + "version": "2020-01-01" + }, + "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/topologies": { + "get": { + "x-ms-examples": { + "Get topology on a subscription": { + "$ref": "./examples/Topology/GetTopologySubscription_example.json" + } + }, + "tags": [ + "Topology" + ], + "description": "Gets a list that allows to build a topology view of a subscription.", + "operationId": "Topology_List", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TopologyList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/topologies": { + "get": { + "x-ms-examples": { + "Get topology on a subscription from security data location": { + "$ref": "./examples/Topology/GetTopologySubscriptionLocation_example.json" + } + }, + "tags": [ + "Topology" + ], + "description": "Gets a list that allows to build a topology view of a subscription and location.", + "operationId": "Topology_ListByHomeRegion", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/AscLocation" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TopologyList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/topologies/{topologyResourceName}": { + "get": { + "x-ms-examples": { + "Get topology": { + "$ref": "./examples/Topology/GetTopology_example.json" + } + }, + "tags": [ + "Topology" + ], + "description": "Gets a specific topology component.", + "operationId": "Topology_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/AscLocation" + }, + { + "$ref": "#/parameters/TopologyResourceName" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TopologyResource" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "TopologyList": { + "type": "object", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/TopologyResource" + } + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URI to fetch the next page." + } + } + }, + "TopologyResource": { + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "readOnly": true, + "$ref": "#/definitions/TopologyResourceProperties" + } + }, + "allOf": [ + { + "$ref": "../../../common/v1/types.json#/definitions/Resource" + }, + { + "$ref": "../../../common/v1/types.json#/definitions/Location" + } + ] + }, + "TopologyResourceProperties": { + "type": "object", + "properties": { + "calculatedDateTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The UTC time on which the topology was calculated" + }, + "topologyResources": { + "type": "array", + "readOnly": true, + "description": "Azure resources which are part of this topology resource", + "items": { + "$ref": "#/definitions/TopologySingleResource" + } + } + } + }, + "TopologySingleResource": { + "type": "object", + "properties": { + "resourceId": { + "type": "string", + "readOnly": true, + "description": "Azure resource id" + }, + "severity": { + "type": "string", + "readOnly": true, + "description": "The security severity of the resource" + }, + "recommendationsExist": { + "type": "boolean", + "readOnly": true, + "description": "Indicates if the resource has security recommendations" + }, + "networkZones": { + "type": "string", + "readOnly": true, + "description": "Indicates the resource connectivity level to the Internet (InternetFacing, Internal ,etc.)" + }, + "topologyScore": { + "type": "integer", + "readOnly": true, + "description": "Score of the resource based on its security severity" + }, + "location": { + "type": "string", + "readOnly": true, + "description": "The location of this resource" + }, + "parents": { + "type": "array", + "readOnly": true, + "description": "Azure resources connected to this resource which are in higher level in the topology view", + "items": { + "$ref": "#/definitions/TopologySingleResourceParent" + } + }, + "children": { + "type": "array", + "readOnly": true, + "description": "Azure resources connected to this resource which are in lower level in the topology view", + "items": { + "$ref": "#/definitions/TopologySingleResourceChild" + } + } + } + }, + "TopologySingleResourceParent": { + "type": "object", + "properties": { + "resourceId": { + "type": "string", + "readOnly": true, + "description": "Azure resource id which serves as parent resource in topology view" + } + } + }, + "TopologySingleResourceChild": { + "type": "object", + "properties": { + "resourceId": { + "type": "string", + "readOnly": true, + "description": "Azure resource id which serves as child resource in topology view" + } + } + } + }, + "parameters": { + "TopologyResourceName": { + "name": "topologyResourceName", + "in": "path", + "description": "Name of a topology resources collection.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/security/resource-manager/readme.md b/specification/security/resource-manager/readme.md index 0055b511b065..f91a045107ec 100644 --- a/specification/security/resource-manager/readme.md +++ b/specification/security/resource-manager/readme.md @@ -135,19 +135,16 @@ input-file: - Microsoft.Security/stable/2018-06-01/pricings.json - Microsoft.Security/stable/2019-01-01/alerts.json - Microsoft.Security/stable/2019-01-01/settings.json +- Microsoft.Security/stable/2019-01-01/advancedThreatProtectionSettings.json - Microsoft.Security/stable/2019-08-01/deviceSecurityGroups.json - Microsoft.Security/stable/2019-08-01/iotSecuritySolutions.json - Microsoft.Security/stable/2019-08-01/iotSecuritySolutionAnalytics.json -- Microsoft.Security/preview/2015-06-01-preview/allowedConnections.json - Microsoft.Security/preview/2015-06-01-preview/discoveredSecuritySolutions.json - Microsoft.Security/preview/2015-06-01-preview/externalSecuritySolutions.json -- Microsoft.Security/preview/2015-06-01-preview/jitNetworkAccessPolicies.json - Microsoft.Security/preview/2015-06-01-preview/applicationWhitelistings.json - Microsoft.Security/preview/2015-06-01-preview/locations.json - Microsoft.Security/preview/2015-06-01-preview/operations.json - Microsoft.Security/preview/2015-06-01-preview/tasks.json -- Microsoft.Security/preview/2015-06-01-preview/topologies.json -- Microsoft.Security/preview/2017-08-01-preview/advancedThreatProtectionSettings.json - Microsoft.Security/preview/2017-08-01-preview/autoProvisioningSettings.json - Microsoft.Security/preview/2017-08-01-preview/compliances.json - Microsoft.Security/preview/2017-08-01-preview/informationProtectionPolicies.json @@ -157,8 +154,12 @@ input-file: - Microsoft.Security/preview/2019-01-01-preview/serverVulnerabilityAssessments.json - Microsoft.Security/preview/2019-01-01-preview/subAssessments.json - Microsoft.Security/preview/2019-01-01-preview/automations.json -- Microsoft.Security/preview/2019-01-01-preview/assessmentMetadata.json -- Microsoft.Security/preview/2019-01-01-preview/assessments.json +- Microsoft.Security/stable/2020-01-01/assessmentMetadata.json +- Microsoft.Security/stable/2020-01-01/assessments.json +- Microsoft.Security/stable/2020-01-01/adaptiveNetworkHardenings.json +- Microsoft.Security/stable/2020-01-01/allowedConnections.json +- Microsoft.Security/stable/2020-01-01/topologies.json +- Microsoft.Security/stable/2020-01-01/jitNetworkAccessPolicies.json # Needed when there is more than one input file override-info: @@ -364,10 +365,17 @@ input-file: - $(this-folder)/Microsoft.Security/stable/2019-01-01/alerts.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/preview/2019-01-01-preview/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/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/jitNetworkAccessPolicies.json - $(this-folder)/Microsoft.Security/preview/2019-01-01-preview/assessmentMetadata.json - $(this-folder)/Microsoft.Security/preview/2019-01-01-preview/assessments.json diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json index 9726e43d21a2..fd280dc50ef5 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json @@ -1443,6 +1443,57 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{operationalInsightsResourceProvider}/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/bookmarks/{bookmarkId}/expand": { + "post": { + "x-ms-examples": { + "Expand an bookmark": { + "$ref": "./examples/bookmarks/expand/PostExpandBookmark.json" + } + }, + "description": "Expand an bookmark", + "operationId": "Bookmark_Expand", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/BookmarkId" + }, + { + "$ref": "#/parameters/BookmarkExpandRequestBody" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/BookmarkExpandResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "tags": [ + "Bookmark" + ] + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{operationalInsightsResourceProvider}/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/bookmarks/{bookmarkId}/relations/{relationName}": { "get": { "x-ms-examples": { @@ -1658,6 +1709,9 @@ "Get a TI data connector.": { "$ref": "./examples/dataConnectors/GetThreatIntelligenceById.json" }, + "Get a TI Taxii data connector.": { + "$ref": "./examples/dataConnectors/GetThreatIntelligenceTaxiiById.json" + }, "Get a MCAS data connector.": { "$ref": "./examples/dataConnectors/GetMicrosoftCloudAppSecurityById.json" }, @@ -1819,6 +1873,75 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{operationalInsightsResourceProvider}/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/dataConnectorsCheckRequirements": { + "post": { + "x-ms-examples": { + "Check requirements for TI.": { + "$ref": "./examples/dataConnectors/CheckRequirementsThreatIntelligence.json" + }, + "Check requirements for TI Taxii.": { + "$ref": "./examples/dataConnectors/CheckRequirementsThreatIntelligenceTaxii.json" + }, + "Check requirements for AAD.": { + "$ref": "./examples/dataConnectors/CheckRequirementsAzureActiveDirectory.json" + }, + "Check requirements for AAD - no license.": { + "$ref": "./examples/dataConnectors/CheckRequirementsAzureActiveDirectoryNoLicense.json" + }, + "Check requirements for AAD - no authorization.": { + "$ref": "./examples/dataConnectors/CheckRequirementsAzureActiveDirectoryNoAuthorization.json" + }, + "Check requirements for ASC.": { + "$ref": "./examples/dataConnectors/CheckRequirementsAzureSecurityCenter.json" + }, + "Check requirements for Mcas.": { + "$ref": "./examples/dataConnectors/CheckRequirementsMicrosoftCloudAppSecurity.json" + }, + "Check requirements for Mdatp.": { + "$ref": "./examples/dataConnectors/CheckRequirementsMdatp.json" + } + }, + "tags": [ + "Check Data Connector Requirements" + ], + "description": "Get requirements state for a data connector type.", + "operationId": "DataConnectorsCheckRequirements_Post", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "#/parameters/DataConnectorsCheckRequirementsBody" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DataConnectorRequirementsState" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{operationalInsightsResourceProvider}/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/entities": { "get": { "x-ms-examples": { @@ -2011,6 +2134,121 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{operationalInsightsResourceProvider}/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/entities/{entityId}/relations": { + "get": { + "x-ms-examples": { + "Get all relations of an entity.": { + "$ref": "./examples/entities/relations/GetAllEntityRelations.json" + } + }, + "tags": [ + "EntityRelations" + ], + "description": "Gets all relations of an entity.", + "operationId": "EntitiesRelations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/EntityId" + }, + { + "$ref": "#/parameters/ODataFilter" + }, + { + "$ref": "#/parameters/ODataOrderBy" + }, + { + "$ref": "#/parameters/ODataTop" + }, + { + "$ref": "#/parameters/ODataSkipToken" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RelationList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/Relation", + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{operationalInsightsResourceProvider}/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/entities/{entityId}/relations/{relationName}": { + "get": { + "x-ms-examples": { + "Get an entity relation.": { + "$ref": "./examples/entities/relations/GetEntityRelationByName.json" + } + }, + "tags": [ + "EntityRelations" + ], + "description": "Gets an entity relation.", + "operationId": "EntityRelations_GetRelation", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/EntityId" + }, + { + "$ref": "#/parameters/RelationName" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Relation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{operationalInsightsResourceProvider}/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/officeConsents": { "get": { "x-ms-examples": { @@ -2396,70 +2634,720 @@ } } } - } - }, - "definitions": { - "AADDataConnector": { - "allOf": [ - { - "$ref": "#/definitions/DataConnector" - } - ], - "description": "Represents AAD (Azure Active Directory) data connector.", - "properties": { - "properties": { - "$ref": "#/definitions/AADDataConnectorProperties", - "description": "AAD (Azure Active Directory) data connector properties.", - "x-ms-client-flatten": true - } - }, - "type": "object", - "x-ms-discriminator-value": "AzureActiveDirectory" - }, - "AADDataConnectorProperties": { - "allOf": [ - { - "$ref": "#/definitions/DataConnectorTenantId" - }, - { - "$ref": "#/definitions/DataConnectorWithAlertsProperties" - } - ], - "description": "AAD (Azure Active Directory) data connector properties.", - "type": "object" - }, - "AATPDataConnector": { - "allOf": [ - { - "$ref": "#/definitions/DataConnector" - } - ], - "description": "Represents AATP (Azure Advanced Threat Protection) data connector.", - "properties": { - "properties": { - "$ref": "#/definitions/AATPDataConnectorProperties", - "description": "AATP (Azure Advanced Threat Protection) data connector properties.", - "x-ms-client-flatten": true - } - }, - "type": "object", - "x-ms-discriminator-value": "AzureAdvancedThreatProtection" }, - "AATPDataConnectorProperties": { - "allOf": [ - { - "$ref": "#/definitions/DataConnectorTenantId" + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{operationalInsightsResourceProvider}/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/incidents": { + "get": { + "x-ms-examples": { + "Get all incidents.": { + "$ref": "./examples/incidents/GetIncidents.json" + } }, - { - "$ref": "#/definitions/DataConnectorWithAlertsProperties" - } - ], - "description": "AATP (Azure Advanced Threat Protection) data connector properties.", - "type": "object" - }, - "ASCDataConnector": { - "allOf": [ - { + "tags": [ + "Incidents" + ], + "description": "Gets all incidents.", + "operationId": "Incidents_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/ODataFilter" + }, + { + "$ref": "#/parameters/ODataOrderBy" + }, + { + "$ref": "#/parameters/ODataTop" + }, + { + "$ref": "#/parameters/ODataSkipToken" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/IncidentList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{operationalInsightsResourceProvider}/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/incidents/{incidentId}": { + "get": { + "x-ms-examples": { + "Get an incident.": { + "$ref": "./examples/incidents/GetIncidentById.json" + } + }, + "tags": [ + "Incidents" + ], + "description": "Gets an incident.", + "operationId": "Incidents_Get", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/IncidentId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Incident" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "x-ms-examples": { + "Creates or updates an incident.": { + "$ref": "./examples/incidents/CreateIncident.json" + } + }, + "tags": [ + "Incidents" + ], + "description": "Creates or updates the incident.", + "operationId": "Incidents_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/IncidentId" + }, + { + "$ref": "#/parameters/Incident" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Incident" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/Incident" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "x-ms-examples": { + "Delete an incident.": { + "$ref": "./examples/incidents/DeleteIncident.json" + } + }, + "tags": [ + "Incidents" + ], + "description": "Delete the incident.", + "operationId": "Incidents_Delete", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/IncidentId" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{operationalInsightsResourceProvider}/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/incidents/{incidentId}/comments": { + "get": { + "x-ms-examples": { + "Get all incident comments.": { + "$ref": "./examples/incidents/comments/GetAllIncidentComments.json" + } + }, + "tags": [ + "IncidentComments" + ], + "description": "Gets all incident comments.", + "operationId": "IncidentComments_ListByIncident", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/IncidentId" + }, + { + "$ref": "#/parameters/ODataFilter" + }, + { + "$ref": "#/parameters/ODataOrderBy" + }, + { + "$ref": "#/parameters/ODataTop" + }, + { + "$ref": "#/parameters/ODataSkipToken" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/IncidentCommentList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/IncidentComment", + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{operationalInsightsResourceProvider}/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/incidents/{incidentId}/comments/{incidentCommentId}": { + "get": { + "x-ms-examples": { + "Get an incident comment.": { + "$ref": "./examples/incidents/comments/GetIncidentCommentById.json" + } + }, + "tags": [ + "IncidentComments" + ], + "description": "Gets an incident comment.", + "operationId": "IncidentComments_GetComment", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/IncidentId" + }, + { + "$ref": "#/parameters/IncidentCommentId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/IncidentComment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "x-ms-examples": { + "Creates an incident comment.": { + "$ref": "./examples/incidents/comments/CreateIncidentComment.json" + } + }, + "tags": [ + "IncidentComments" + ], + "description": "Creates the incident comment.", + "operationId": "IncidentComments_CreateComment", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/IncidentId" + }, + { + "$ref": "#/parameters/IncidentCommentId" + }, + { + "$ref": "#/parameters/IncidentComment" + } + ], + "responses": { + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/IncidentComment" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{operationalInsightsResourceProvider}/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/incidents/{incidentId}/relations": { + "get": { + "x-ms-examples": { + "Get all incident relations.": { + "$ref": "./examples/incidents/relations/GetAllIncidentRelations.json" + } + }, + "tags": [ + "IncidentRelations" + ], + "description": "Gets all incident relations.", + "operationId": "IncidentRelations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/IncidentId" + }, + { + "$ref": "#/parameters/ODataFilter" + }, + { + "$ref": "#/parameters/ODataOrderBy" + }, + { + "$ref": "#/parameters/ODataTop" + }, + { + "$ref": "#/parameters/ODataSkipToken" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RelationList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-odata": "#/definitions/Relation", + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{operationalInsightsResourceProvider}/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/incidents/{incidentId}/relations/{relationName}": { + "get": { + "x-ms-examples": { + "Get an incident relation.": { + "$ref": "./examples/incidents/relations/GetIncidentRelationByName.json" + } + }, + "tags": [ + "IncidentRelations" + ], + "description": "Gets an incident relation.", + "operationId": "IncidentRelations_GetRelation", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/IncidentId" + }, + { + "$ref": "#/parameters/RelationName" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Relation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "x-ms-examples": { + "Creates or updates an incident relation.": { + "$ref": "./examples/incidents/relations/CreateIncidentRelation.json" + } + }, + "tags": [ + "IncidentRelations" + ], + "description": "Creates or updates the incident relation.", + "operationId": "IncidentRelations_CreateOrUpdateRelation", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/IncidentId" + }, + { + "$ref": "#/parameters/RelationName" + }, + { + "$ref": "#/parameters/Relation" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Relation" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/Relation" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "x-ms-examples": { + "Delete the incident relation.": { + "$ref": "./examples/incidents/relations/DeleteIncidentRelation.json" + } + }, + "tags": [ + "IncidentRelations" + ], + "description": "Delete the incident relation.", + "operationId": "IncidentRelations_DeleteRelation", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/OperationalInsightsResourceProvider" + }, + { + "$ref": "#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/IncidentId" + }, + { + "$ref": "#/parameters/RelationName" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "AADDataConnector": { + "allOf": [ + { + "$ref": "#/definitions/DataConnector" + } + ], + "description": "Represents AAD (Azure Active Directory) data connector.", + "properties": { + "properties": { + "$ref": "#/definitions/AADDataConnectorProperties", + "description": "AAD (Azure Active Directory) data connector properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "AzureActiveDirectory" + }, + "AADDataConnectorProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorTenantId" + }, + { + "$ref": "#/definitions/DataConnectorWithAlertsProperties" + } + ], + "description": "AAD (Azure Active Directory) data connector properties.", + "type": "object" + }, + "AADCheckRequirements": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorsCheckRequirements" + } + ], + "description": "Represents AAD (Azure Active Directory) requirements check request.", + "properties": { + "properties": { + "$ref": "#/definitions/AADCheckRequirementsProperties", + "description": "AAD (Azure Active Directory) requirements check properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "AzureActiveDirectory" + }, + "AADCheckRequirementsProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorTenantId" + } + ], + "description": "AAD (Azure Active Directory) requirements check properties.", + "type": "object" + }, + "AATPDataConnector": { + "allOf": [ + { + "$ref": "#/definitions/DataConnector" + } + ], + "description": "Represents AATP (Azure Advanced Threat Protection) data connector.", + "properties": { + "properties": { + "$ref": "#/definitions/AATPDataConnectorProperties", + "description": "AATP (Azure Advanced Threat Protection) data connector properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "AzureAdvancedThreatProtection" + }, + "AATPDataConnectorProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorTenantId" + }, + { + "$ref": "#/definitions/DataConnectorWithAlertsProperties" + } + ], + "description": "AATP (Azure Advanced Threat Protection) data connector properties.", + "type": "object" + }, + "AATPCheckRequirements": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorsCheckRequirements" + } + ], + "description": "Represents AATP (Azure Advanced Threat Protection) requirements check request.", + "properties": { + "properties": { + "$ref": "#/definitions/AATPCheckRequirementsProperties", + "description": "AATP (Azure Advanced Threat Protection) requirements check properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "AzureAdvancedThreatProtection" + }, + "AATPCheckRequirementsProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorTenantId" + } + ], + "description": "AATP (Azure Advanced Threat Protection) requirements check properties.", + "type": "object" + }, + "ASCDataConnector": { + "allOf": [ + { "$ref": "#/definitions/DataConnector" } ], @@ -2489,6 +3377,33 @@ }, "type": "object" }, + "ASCCheckRequirements": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorsCheckRequirements" + } + ], + "description": "Represents ASC (Azure Security Center) requirements check request.", + "properties": { + "properties": { + "$ref": "#/definitions/ASCCheckRequirementsProperties", + "description": "ASC (Azure Security Center) requirements check properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "AzureSecurityCenter" + }, + "ASCCheckRequirementsProperties": { + "description": "ASC (Azure Security Center) requirements check properties.", + "properties": { + "subscriptionId": { + "description": "The subscription id to connect to, and get the data from.", + "type": "string" + } + }, + "type": "object" + }, "AccountEntity": { "allOf": [ { @@ -2569,6 +3484,11 @@ "description": "The user principal name suffix for the account, in some cases it is also the domain name. Examples: contoso.com.", "readOnly": true, "type": "string" + }, + "dnsDomain": { + "description": "The fully qualified domain DNS name.", + "readOnly": true, + "type": "string" } }, "type": "object" @@ -2589,7 +3509,22 @@ }, "type": "object" }, + "ActionPropertiesBase": { + "description": "Action property bag base.", + "properties": { + "logicAppResourceId": { + "description": "Logic App Resource Id, /subscriptions/{my-subscription}/resourceGroups/{my-resource-group}/providers/Microsoft.Logic/workflows/{my-workflow-id}.", + "type": "string" + } + }, + "type": "object" + }, "ActionRequestProperties": { + "allOf": [ + { + "$ref": "#/definitions/ActionPropertiesBase" + } + ], "description": "Action property bag.", "properties": { "triggerUri": { @@ -2620,6 +3555,11 @@ "type": "object" }, "ActionResponseProperties": { + "allOf": [ + { + "$ref": "#/definitions/ActionPropertiesBase" + } + ], "description": "Action property bag.", "properties": { "workflowId": { @@ -2660,7 +3600,10 @@ ], "description": "The aggregation.", "discriminator": "kind", - "type": "object" + "type": "object", + "required": [ + "kind" + ] }, "AggregationsKind": { "description": "Describes an Azure resource with kind.", @@ -2693,7 +3636,10 @@ ], "description": "Alert rule.", "discriminator": "kind", - "type": "object" + "type": "object", + "required": [ + "kind" + ] }, "AlertRuleKind": { "description": "Describes an Azure resource with kind.", @@ -2739,6 +3685,26 @@ ], "description": "Alert rule template.", "discriminator": "kind", + "type": "object", + "required": [ + "kind" + ] + }, + "AlertRuleTemplateDataSource": { + "description": "alert rule template data sources", + "properties": { + "connectorId": { + "description": "The connector id that provides the following data types", + "type": "string" + }, + "dataTypes": { + "description": "The data types used by the alert rule template", + "items": { + "type": "string" + }, + "type": "array" + } + }, "type": "object" }, "AlertRuleTemplatePropertiesBase": { @@ -2763,9 +3729,9 @@ "type": "string" }, "requiredDataConnectors": { - "description": "The required data connectors for this template", + "description": "The required data sources for this template", "items": { - "$ref": "#/definitions/DataConnectorStatus" + "$ref": "#/definitions/AlertRuleTemplateDataSource" }, "type": "array" }, @@ -2795,13 +3761,6 @@ } ] } - }, - "tactics": { - "description": "The tactics of the alert rule template", - "items": { - "$ref": "#/definitions/AttackTactic" - }, - "type": "array" } }, "type": "object" @@ -2975,6 +3934,16 @@ }, "type": "object" }, + "AwsCloudTrailCheckRequirements": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorsCheckRequirements" + } + ], + "description": "Amazon Web Services CloudTrail requirements check request.", + "type": "object", + "x-ms-discriminator-value": "AmazonWebServicesCloudTrail" + }, "AzureResourceEntity": { "allOf": [ { @@ -3348,6 +4317,48 @@ ], "type": "object" }, + "BookmarkExpandParameters": { + "description": "The parameters required to execute an expand operation on the given bookmark.", + "properties": { + "endTime": { + "description": "The end date filter, so the only expansion results returned are before this date.", + "format": "date-time", + "type": "string" + }, + "expansionId": { + "description": "The Id of the expansion to perform.", + "format": "uuid", + "type": "string" + }, + "startTime": { + "description": "The start date filter, so the only expansion results returned are after this date.", + "format": "date-time", + "type": "string" + } + } + }, + "BookmarkExpandResponse": { + "description": "The entity expansion result operation response.", + "properties": { + "metaData": { + "$ref": "#/definitions/ExpansionResultsMetadata", + "description": "The metadata from the expansion operation results." + }, + "value": { + "description": "The expansion result values.", + "properties": { + "entities": { + "description": "Array of the expansion result entities.", + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" + } + }, + "type": "object" + } + } + }, "Case": { "allOf": [ { @@ -3541,6 +4552,14 @@ "readOnly": true, "type": "array" }, + "tactics": { + "description": "The tactics associated with case", + "items": { + "$ref": "#/definitions/AttackTactic" + }, + "readOnly": true, + "type": "array" + }, "severity": { "description": "The severity of the case", "enum": [ @@ -3721,6 +4740,29 @@ }, "type": "object" }, + "ClientInfo": { + "description": "Information on the client (user or application) that made some action", + "properties": { + "email": { + "description": "The email of the client.", + "type": "string" + }, + "name": { + "description": "The name of the client.", + "type": "string" + }, + "objectId": { + "description": "The object id of the client.", + "format": "uuid", + "type": "string" + }, + "userPrincipalName": { + "description": "The user principal name of the client.", + "type": "string" + } + }, + "type": "object" + }, "CloudApplicationEntity": { "allOf": [ { @@ -3804,7 +4846,68 @@ ], "description": "Data connector.", "discriminator": "kind", - "type": "object" + "type": "object", + "required": [ + "kind" + ] + }, + "DataConnectorsCheckRequirements": { + "description": "Data connector requirements properties.", + "properties": { + "kind": { + "$ref": "#/definitions/DataConnectorKind", + "description": "Describes the kind of connector to be checked." + } + }, + "discriminator": "kind", + "type": "object", + "required": [ + "kind" + ] + }, + "DataConnectorAuthorizationState": { + "description": "Describes the state of user's authorization for a connector kind.", + "enum": [ + "Valid", + "Invalid" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "DataConnectorAuthorizationState", + "values": [ + { + "value": "Valid" + }, + { + "value": "Invalid" + } + ] + } + }, + "DataConnectorLicenseState": { + "description": "Describes the state of user's license for a connector kind.", + "enum": [ + "Valid", + "Invalid", + "Unknown" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "DataConnectorLicenseState", + "values": [ + { + "value": "Valid" + }, + { + "value": "Invalid" + }, + { + "value": "Unknown" + } + ] + } }, "DataConnectorDataTypeCommon": { "description": "Common field for data type in data connectors.", @@ -3834,6 +4937,7 @@ "AzureSecurityCenter", "MicrosoftCloudAppSecurity", "ThreatIntelligence", + "ThreatIntelligenceTaxii", "Office365", "AmazonWebServicesCloudTrail", "AzureAdvancedThreatProtection", @@ -3856,6 +4960,9 @@ { "value": "ThreatIntelligence" }, + { + "value": "ThreatIntelligenceTaxii" + }, { "value": "Office365" }, @@ -3897,27 +5004,16 @@ "value" ] }, - "DataConnectorStatus": { - "description": "alert rule template data connector status", + "DataConnectorRequirementsState": { + "description": "Data connector requirements status.", "properties": { - "connectorId": { - "description": "the connector id", - "type": "string" + "authorizationState": { + "description": "Authorization state for this connector", + "$ref": "#/definitions/DataConnectorAuthorizationState" }, - "dataTypes": { - "additionalProperties": { - "enum": [ - "Exist", - "NotExist" - ], - "type": "string", - "x-ms-enum": { - "modelAsString": true, - "name": "DataTypeStatus" - } - }, - "description": "The data types availability map", - "type": "object" + "licenseState": { + "description": "License state for this connector", + "$ref": "#/definitions/DataConnectorLicenseState" } }, "type": "object" @@ -4005,7 +5101,10 @@ ], "description": "Specific entity.", "discriminator": "kind", - "type": "object" + "type": "object", + "required": [ + "kind" + ] }, "EntityCommonProperties": { "description": "Entity common property bag.", @@ -4618,6 +5717,13 @@ "severity": { "$ref": "#/definitions/AlertSeverity", "description": "The severity for alerts created by this alert rule." + }, + "tactics": { + "description": "The tactics of the alert rule template", + "items": { + "$ref": "#/definitions/AttackTactic" + }, + "type": "array" } }, "required": [ @@ -4630,151 +5736,550 @@ "x-ms-client-flatten": true } }, - "type": "object", - "x-ms-discriminator-value": "Fusion" + "type": "object", + "x-ms-discriminator-value": "Fusion" + }, + "GeoLocation": { + "description": "The geo-location context attached to the ip entity", + "properties": { + "asn": { + "description": "Autonomous System Number", + "readOnly": true, + "type": "integer" + }, + "city": { + "description": "City name", + "readOnly": true, + "type": "string" + }, + "countryCode": { + "description": "The country code according to ISO 3166 format", + "readOnly": true, + "type": "string" + }, + "countryName": { + "description": "Country name according to ISO 3166 Alpha 2: the lowercase of the English Short Name", + "readOnly": true, + "type": "string" + }, + "latitude": { + "description": "The longitude of the identified location, expressed as a floating point number with range of -180 to 180, with positive numbers representing East and negative numbers representing West. Latitude and longitude are derived from the city or postal code.", + "format": "double", + "readOnly": true, + "type": "number" + }, + "longitude": { + "description": "The latitude of the identified location, expressed as a floating point number with range of - 90 to 90, with positive numbers representing North and negative numbers representing South. Latitude and longitude are derived from the city or postal code.", + "format": "double", + "readOnly": true, + "type": "number" + }, + "state": { + "description": "State name", + "readOnly": true, + "type": "string" + } + }, + "readOnly": true, + "type": "object" + }, + "HostEntity": { + "allOf": [ + { + "$ref": "#/definitions/Entity" + } + ], + "description": "Represents a host entity.", + "properties": { + "properties": { + "$ref": "#/definitions/HostEntityProperties", + "description": "Host entity properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "Host" + }, + "HostEntityProperties": { + "allOf": [ + { + "$ref": "#/definitions/EntityCommonProperties" + } + ], + "description": "Host entity property bag.", + "properties": { + "azureID": { + "description": "The azure resource id of the VM.", + "readOnly": true, + "type": "string" + }, + "dnsDomain": { + "description": "The DNS domain that this host belongs to. Should contain the compete DNS suffix for the domain", + "readOnly": true, + "type": "string" + }, + "hostName": { + "description": "The hostname without the domain suffix.", + "readOnly": true, + "type": "string" + }, + "isDomainJoined": { + "description": "Determines whether this host belongs to a domain.", + "readOnly": true, + "type": "boolean" + }, + "netBiosName": { + "description": "The host name (pre-windows2000).", + "readOnly": true, + "type": "string" + }, + "ntDomain": { + "description": "The NT domain that this host belongs to.", + "readOnly": true, + "type": "string" + }, + "omsAgentID": { + "description": "The OMS agent id, if the host has OMS agent installed.", + "readOnly": true, + "type": "string" + }, + "osFamily": { + "description": "The operating system type.", + "enum": [ + "Linux", + "Windows", + "Android", + "IOS" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": false, + "name": "OSFamily", + "values": [ + { + "description": "Host with Linux operating system.", + "value": "Linux" + }, + { + "description": "Host with Windows operating system.", + "value": "Windows" + }, + { + "description": "Host with Android operating system.", + "value": "Android" + }, + { + "description": "Host with IOS operating system.", + "value": "IOS" + } + ] + } + }, + "osVersion": { + "description": "A free text representation of the operating system. This field is meant to hold specific versions the are more fine grained than OSFamily or future values not supported by OSFamily enumeration", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "Incident": { + "allOf": [ + { + "$ref": "#/definitions/ResourceWithEtag" + } + ], + "description": "Represents an incident in Azure Security Insights.", + "properties": { + "properties": { + "$ref": "#/definitions/IncidentProperties", + "description": "Incident properties", + "x-ms-client-flatten": true + } + }, + "type": "object" + }, + "IncidentAdditionalData": { + "description": "Incident additional data property bag.", + "properties": { + "alertsCount": { + "description": "The number of alerts in the incident", + "readOnly": true, + "type": "integer" + }, + "bookmarksCount": { + "description": "The number of bookmarks in the incident", + "readOnly": true, + "type": "integer" + }, + "commentsCount": { + "description": "The number of comments in the incident", + "readOnly": true, + "type": "integer" + }, + "alertProductNames": { + "description": "List of product names of alerts in the incident", + "items": { + "description": "Alert product name", + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "tactics": { + "description": "The tactics associated with incident", + "items": { + "$ref": "#/definitions/AttackTactic" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, + "IncidentComment": { + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Represents an incident comment", + "properties": { + "properties": { + "$ref": "#/definitions/IncidentCommentProperties", + "description": "Incident comment properties", + "x-ms-client-flatten": true + } + }, + "type": "object" + }, + "IncidentCommentList": { + "description": "List of incident comments.", + "properties": { + "nextLink": { + "description": "URL to fetch the next set of comments.", + "readOnly": true, + "type": "string" + }, + "value": { + "description": "Array of comments.", + "items": { + "$ref": "#/definitions/IncidentComment" + }, + "type": "array" + } + }, + "required": [ + "value" + ] + }, + "IncidentCommentProperties": { + "description": "Incident comment property bag.", + "properties": { + "createdTimeUtc": { + "description": "The time the comment was created", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "message": { + "description": "The comment message", + "type": "string" + }, + "author": { + "$ref": "#/definitions/ClientInfo", + "description": "Describes the client that created the comment", + "readOnly": true, + "type": "object" + } + }, + "required": [ + "message" + ], + "type": "object" + }, + "IncidentLabel": { + "description": "Represents an incident label", + "properties": { + "labelName": { + "description": "The name of the label", + "type": "string" + }, + "labelType": { + "description": "The type of the label", + "enum": [ + "User", + "System" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "modelAsString": true, + "name": "IncidentLabelType", + "values": [ + { + "description": "Label manually created by a user", + "value": "User" + }, + { + "description": "Label automatically created by the system", + "value": "System" + } + ] + } + } + }, + "required": [ + "labelName" + ], + "type": "object" }, - "GeoLocation": { - "description": "The geo-location context attached to the ip entity", + "IncidentList": { + "description": "List all the incidents.", "properties": { - "asn": { - "description": "Autonomous System Number", - "readOnly": true, - "type": "integer" - }, - "city": { - "description": "City name", + "nextLink": { + "description": "URL to fetch the next set of incidents.", "readOnly": true, "type": "string" }, - "countryCode": { - "description": "The country code according to ISO 3166 format", - "readOnly": true, + "value": { + "description": "Array of incidents.", + "items": { + "$ref": "#/definitions/Incident" + }, + "type": "array" + } + }, + "required": [ + "value" + ] + }, + "IncidentOwnerInfo": { + "description": "Information on the user an incident is assigned to", + "properties": { + "email": { + "description": "The email of the user the incident is assigned to.", "type": "string" }, - "countryName": { - "description": "Country name according to ISO 3166 Alpha 2: the lowercase of the English Short Name", - "readOnly": true, + "assignedTo": { + "description": "The name of the user the incident is assigned to.", "type": "string" }, - "latitude": { - "description": "The longitude of the identified location, expressed as a floating point number with range of -180 to 180, with positive numbers representing East and negative numbers representing West. Latitude and longitude are derived from the city or postal code.", - "format": "double", - "readOnly": true, - "type": "number" - }, - "longitude": { - "description": "The latitude of the identified location, expressed as a floating point number with range of - 90 to 90, with positive numbers representing North and negative numbers representing South. Latitude and longitude are derived from the city or postal code.", - "format": "double", - "readOnly": true, - "type": "number" + "objectId": { + "description": "The object id of the user the incident is assigned to.", + "format": "uuid", + "type": "string" }, - "state": { - "description": "State name", - "readOnly": true, + "userPrincipalName": { + "description": "The user principal name of the user the incident is assigned to.", "type": "string" } }, - "readOnly": true, "type": "object" }, - "HostEntity": { - "allOf": [ - { - "$ref": "#/definitions/Entity" - } - ], - "description": "Represents a host entity.", - "properties": { - "properties": { - "$ref": "#/definitions/HostEntityProperties", - "description": "Host entity properties", - "x-ms-client-flatten": true - } - }, - "type": "object", - "x-ms-discriminator-value": "Host" - }, - "HostEntityProperties": { - "allOf": [ - { - "$ref": "#/definitions/EntityCommonProperties" - } - ], - "description": "Host entity property bag.", + "IncidentProperties": { + "description": "Describes incident properties", "properties": { - "azureID": { - "description": "The azure resource id of the VM.", + "additionalData": { + "$ref": "#/definitions/IncidentAdditionalData", + "description": "Additional data on the incident", "readOnly": true, + "type": "object" + }, + "classification": { + "description": "The reason the incident was closed", + "enum": [ + "Undetermined", + "TruePositive", + "BenignPositive", + "FalsePositive" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "IncidentClassification", + "values": [ + { + "description": "Incident classification was undetermined", + "value": "Undetermined" + }, + { + "description": "Incident was true positive", + "value": "TruePositive" + }, + { + "description": "Incident was benign positive", + "value": "BenignPositive" + }, + { + "description": "Incident was false positive", + "value": "FalsePositive" + } + ] + } + }, + "classificationComment": { + "description": "Describes the reason the incident was closed", "type": "string" }, - "dnsDomain": { - "description": "The DNS domain that this host belongs to. Should contain the compete DNS suffix for the domain", + "classificationReason": { + "description": "The classification reason the incident was closed with", + "enum": [ + "SuspiciousActivity", + "SuspiciousButExpected", + "IncorrectAlertLogic", + "InaccurateData" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "IncidentClassificationReason", + "values": [ + { + "description": "Classification reason was suspicious activity", + "value": "SuspiciousActivity" + }, + { + "description": "Classification reason was suspicious but expected", + "value": "SuspiciousButExpected" + }, + { + "description": "Classification reason was incorrect alert logic", + "value": "IncorrectAlertLogic" + }, + { + "description": "Classification reason was inaccurate data", + "value": "InaccurateData" + } + ] + } + }, + "createdTimeUtc": { + "description": "The time the incident was created", + "format": "date-time", "readOnly": true, "type": "string" }, - "hostName": { - "description": "The hostname without the domain suffix.", - "readOnly": true, + "description": { + "description": "The description of the incident", "type": "string" }, - "isDomainJoined": { - "description": "Determines whether this host belongs to a domain.", - "readOnly": true, - "type": "boolean" + "firstActivityTimeUtc": { + "description": "The time of the first activity in the incident", + "format": "date-time", + "type": "string" }, - "netBiosName": { - "description": "The host name (pre-windows2000).", + "incidentUrl": { + "description": "The deep-link url to the incident in Azure portal", "readOnly": true, "type": "string" }, - "ntDomain": { - "description": "The NT domain that this host belongs to.", + "incidentNumber": { + "description": "A sequential number", "readOnly": true, + "type": "integer" + }, + "labels": { + "description": "List of labels relevant to this incident", + "items": { + "$ref": "#/definitions/IncidentLabel" + }, + "type": "array" + }, + "lastActivityTimeUtc": { + "description": "The time of the last activity in the incident", + "format": "date-time", "type": "string" }, - "omsAgentID": { - "description": "The OMS agent id, if the host has OMS agent installed.", + "lastModifiedTimeUtc": { + "description": "The last time the incident was updated", + "format": "date-time", "readOnly": true, "type": "string" }, - "osFamily": { - "description": "The operating system type.", + "owner": { + "$ref": "#/definitions/IncidentOwnerInfo", + "description": "Describes a user that the incident is assigned to", + "type": "object" + }, + "relatedAnalyticRuleIds": { + "description": "List of resource ids of Analytic rules related to the incident", + "items": { + "description": "Related Analytic rule resource id", + "type": "string" + }, + "readOnly": true, + "type": "array" + }, + "severity": { + "description": "The severity of the incident", "enum": [ - "Linux", - "Windows", - "Android", - "IOS" + "High", + "Medium", + "Low", + "Informational" ], "type": "string", "x-ms-enum": { - "modelAsString": false, - "name": "OSFamily", + "modelAsString": true, + "name": "IncidentSeverity", "values": [ { - "description": "Host with Linux operating system.", - "value": "Linux" + "description": "High severity", + "value": "High" }, { - "description": "Host with Windows operating system.", - "value": "Windows" + "description": "Medium severity", + "value": "Medium" }, { - "description": "Host with Android operating system.", - "value": "Android" + "description": "Low severity", + "value": "Low" }, { - "description": "Host with IOS operating system.", - "value": "IOS" + "description": "Informational severity", + "value": "Informational" } ] } }, - "osVersion": { - "description": "A free text representation of the operating system. This field is meant to hold specific versions the are more fine grained than OSFamily or future values not supported by OSFamily enumeration", - "readOnly": true, + "status": { + "description": "The status of the incident", + "enum": [ + "New", + "Active", + "Closed" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "IncidentStatus", + "values": [ + { + "description": "An active incident which isn't being handled currently", + "value": "New" + }, + { + "description": "An active incident which is being handled", + "value": "Active" + }, + { + "description": "A non-active incident", + "value": "Closed" + } + ] + } + }, + "title": { + "description": "The title of the incident", "type": "string" } }, + "required": [ + "title", + "severity", + "status" + ], "type": "object" }, "IpEntity": { @@ -4878,6 +6383,32 @@ }, "type": "object" }, + "MCASCheckRequirements": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorsCheckRequirements" + } + ], + "description": "Represents MCAS (Microsoft Cloud App Security) requirements check request.", + "properties": { + "properties": { + "$ref": "#/definitions/MCASCheckRequirementsProperties", + "description": "MCAS (Microsoft Cloud App Security) requirements check properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "MicrosoftCloudAppSecurity" + }, + "MCASCheckRequirementsProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorTenantId" + } + ], + "description": "MCAS (Microsoft Cloud App Security) requirements check properties.", + "type": "object" + }, "MDATPDataConnector": { "allOf": [ { @@ -4907,6 +6438,32 @@ "description": "MDATP (Microsoft Defender Advanced Threat Protection) data connector properties.", "type": "object" }, + "MDATPCheckRequirements": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorsCheckRequirements" + } + ], + "description": "Represents MDATP (Microsoft Defender Advanced Threat Protection) requirements check request.", + "properties": { + "properties": { + "$ref": "#/definitions/MDATPCheckRequirementsProperties", + "description": "MDATP (Microsoft Defender Advanced Threat Protection) requirements check properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "MicrosoftDefenderAdvancedThreatProtection" + }, + "MDATPCheckRequirementsProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorTenantId" + } + ], + "description": "MDATP (Microsoft Defender Advanced Threat Protection) requirements check properties.", + "type": "object" + }, "MalwareEntity": { "allOf": [ { @@ -4990,6 +6547,13 @@ }, "type": "array" }, + "displayNamesExcludeFilter": { + "description": "the alerts' displayNames on which the cases will not be generated", + "items": { + "type": "string" + }, + "type": "array" + }, "productFilter": { "description": "The alerts' productName on which the cases will be generated", "enum": [ @@ -5047,13 +6611,6 @@ "format": "date-time", "readOnly": true, "type": "string" - }, - "tactics": { - "description": "The tactics of the alert rule", - "items": { - "$ref": "#/definitions/AttackTactic" - }, - "type": "array" } }, "required": [ @@ -5540,6 +7097,69 @@ }, "type": "object" }, + "RelationList": { + "description": "List of relations.", + "properties": { + "nextLink": { + "readOnly": true, + "description": "URL to fetch the next set of relations.", + "type": "string" + }, + "value": { + "description": "Array of relations.", + "type": "array", + "items": { + "$ref": "#/definitions/Relation" + } + } + }, + "required": [ + "value" + ] + }, + "Relation": { + "type": "object", + "description": "Represents a relation between two resources", + "allOf": [ + { + "$ref": "#/definitions/ResourceWithEtag" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/RelationProperties", + "description": "Relation properties", + "x-ms-client-flatten": true + } + } + }, + "RelationProperties": { + "description": "Relation property bag.", + "properties": { + "relatedResourceId": { + "description": "The resource ID of the related resource", + "type": "string" + }, + "relatedResourceName": { + "description": "The name of the related resource", + "type": "string" + }, + "relatedResourceType": { + "description": "The resource type of the related resource", + "readOnly": true, + "type": "string" + }, + "relatedResourceKind": { + "description": "The resource kind of the related resource", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "relatedResourceId" + ], + "type": "object" + }, "Resource": { "description": "An azure resource object", "properties": { @@ -5680,6 +7300,10 @@ "$ref": "#/definitions/AttackTactic" }, "type": "array" + }, + "incidentConfiguration": { + "$ref": "#/definitions/IncidentConfiguration", + "description": "The settings of the incidents that created from alerts triggered by this analytics rule" } }, "required": [ @@ -5714,6 +7338,15 @@ } ], "description": "Scheduled alert rule template properties", + "properties": { + "tactics": { + "description": "The tactics of the alert rule template", + "items": { + "$ref": "#/definitions/AttackTactic" + }, + "type": "array" + } + }, "required": [ "displayName", "description", @@ -5732,6 +7365,111 @@ "type": "object", "x-ms-discriminator-value": "Scheduled" }, + "IncidentConfiguration": { + "description": "Incident Configuration property bag.", + "properties": { + "createIncident": { + "description": "Create incidents from alerts triggered by this analytics rule", + "type": "boolean" + }, + "groupingConfiguration": { + "$ref": "#/definitions/GroupingConfiguration", + "description": "Set how the alerts that are triggered by this analytics rule, are grouped into incidents" + } + }, + "type": "object", + "required": [ + "createIncident" + ] + }, + "GroupingConfiguration": { + "description": "Grouping configuration property bag.", + "properties": { + "enabled": { + "description": "Grouping enabled", + "type": "boolean" + }, + "reopenClosedIncident": { + "description": "Re-open closed matching incidents", + "type": "boolean" + }, + "lookbackDuration": { + "description": "Limit the group to alerts created within the lookback duration (in ISO 8601 duration format)", + "format": "duration", + "type": "string" + }, + "entitiesMatchingMethod": { + "description": "Grouping matching method", + "enum": [ + "All", + "None", + "Custom" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "EntitiesMatchingMethod", + "values": [ + { + "description": "Grouping alerts into a single incident if all the entities match", + "value": "All" + }, + { + "description": "Grouping all alerts triggered by this rule into a single incident", + "value": "None" + }, + { + "description": "Grouping alerts into a single incident if the selected entities match", + "value": "Custom" + } + ] + } + }, + "groupByEntities": { + "description": "A list of entity types to group by (when entitiesMatchingMethod is Custom)", + "items": { + "description": "Grouping entity type", + "enum": [ + "Account", + "Host", + "Ip", + "Url" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "GroupingEntityType", + "values": [ + { + "description": "Account entity", + "value": "Account" + }, + { + "description": "Host entity", + "value": "Host" + }, + { + "description": "Ip entity", + "value": "Ip" + }, + { + "description": "Url entity", + "value": "Url" + } + ] + } + }, + "type": "array" + } + }, + "type": "object", + "required": [ + "enabled", + "reopenClosedIncident", + "lookbackDuration", + "entitiesMatchingMethod" + ] + }, "SecurityAlert": { "allOf": [ { @@ -5954,6 +7692,11 @@ ] } }, + "providerAlertId": { + "description": "The identifier of the alert inside the product which generated the alert.", + "readOnly": true, + "type": "string" + }, "processingEndTime": { "description": "The time the alert was made available for consumption.", "format": "date-time", @@ -6036,6 +7779,14 @@ "readOnly": true, "type": "string" }, + "tactics": { + "description": "The tactics of the alert", + "items": { + "$ref": "#/definitions/AttackTactic" + }, + "readOnly": true, + "type": "array" + }, "timeGenerated": { "description": "The time the alert was generated.", "format": "date-time", @@ -6105,7 +7856,10 @@ ], "description": "The Setting.", "discriminator": "kind", - "type": "object" + "type": "object", + "required": [ + "kind" + ] }, "SettingsKind": { "description": "Describes an Azure resource with kind.", @@ -6175,6 +7929,130 @@ }, "type": "object" }, + "TICheckRequirements": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorsCheckRequirements" + } + ], + "description": "Represents threat intelligence requirements check request.", + "properties": { + "properties": { + "$ref": "#/definitions/TICheckRequirementsProperties", + "description": "TI (Threat Intelligence) requirements check properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "ThreatIntelligence" + }, + "TICheckRequirementsProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorTenantId" + } + ], + "description": "TI (Threat Intelligence) requirements check properties.", + "properties": {}, + "type": "object" + }, + "TiTaxiiDataConnector": { + "allOf": [ + { + "$ref": "#/definitions/DataConnector" + } + ], + "description": "Represents threat intelligence taxii data connector.", + "properties": { + "properties": { + "$ref": "#/definitions/TiTaxiiDataConnectorProperties", + "description": "Threat intelligence taxii client data connector properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "ThreatIntelligenceTaxii" + }, + "TiTaxiiDataConnectorDataTypes": { + "description": "The available data types for Threat Intelligence taxii client data connector.", + "properties": { + "taxiiClient": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorDataTypeCommon" + } + ], + "description": "Data type for taxii client.", + "type": "object" + } + }, + "type": "object" + }, + "TiTaxiiDataConnectorProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorTenantId" + } + ], + "description": "Threat Intelligence taxii client data connector properties.", + "properties": { + "workspaceId": { + "description": "The workspace id.", + "type": "string" + }, + "friendlyName": { + "description": "The friendly name for taxii client connector.", + "type": "string" + }, + "taxiiServer": { + "description": "The API root server for taxii client.", + "type": "string" + }, + "collectionId": { + "description": "The taxii collection id.", + "type": "string" + }, + "userName": { + "description": "The taxii server user name.", + "type": "string" + }, + "password": { + "description": "The taxii server password.", + "type": "string" + }, + "dataTypes": { + "$ref": "#/definitions/TiTaxiiDataConnectorDataTypes", + "description": "The available data types for the connector." + } + }, + "type": "object" + }, + "TiTaxiiCheckRequirements": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorsCheckRequirements" + } + ], + "description": "Represents threat intelligence requirements check request.", + "properties": { + "properties": { + "$ref": "#/definitions/TiTaxiiCheckRequirementsProperties", + "description": "Ti Taxii (Threat Intelligence Taxii) requirements check properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "ThreatIntelligenceTaxii" + }, + "TiTaxiiCheckRequirementsProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorTenantId" + } + ], + "description": "Threat Intelligence taxii client data connector properties.", + "type": "object" + }, "ThreatIntelligence": { "description": "ThreatIntelligence property bag.", "properties": { @@ -6438,7 +8316,7 @@ "type": "string", "x-ms-enum": { "modelAsString": true, - "name": "IncidentSeverity", + "name": "CaseSeverity", "values": [ { "description": "Critical severity", @@ -6634,6 +8512,16 @@ "type": "string", "x-ms-parameter-location": "method" }, + "DataConnectorsCheckRequirementsBody": { + "description": "The parameters for requirements check message", + "in": "body", + "name": "DataConnectorsCheckRequirements", + "required": true, + "schema": { + "$ref": "#/definitions/DataConnectorsCheckRequirements" + }, + "x-ms-parameter-location": "method" + }, "EntityExpandRequestBody": { "description": "The parameters required to execute an expand operation on the given entity.", "in": "body", @@ -6644,6 +8532,16 @@ }, "x-ms-parameter-location": "method" }, + "BookmarkExpandRequestBody": { + "description": "The parameters required to execute an expand operation on the given bookmark.", + "in": "body", + "name": "parameters", + "required": true, + "schema": { + "$ref": "#/definitions/BookmarkExpandParameters" + }, + "x-ms-parameter-location": "method" + }, "EntityId": { "description": "entity ID", "in": "path", @@ -6660,6 +8558,42 @@ "type": "string", "x-ms-parameter-location": "method" }, + "Incident": { + "description": "The incident", + "in": "body", + "name": "incident", + "required": true, + "schema": { + "$ref": "#/definitions/Incident" + }, + "x-ms-parameter-location": "method" + }, + "IncidentComment": { + "description": "The incident comment", + "in": "body", + "name": "incidentComment", + "required": true, + "schema": { + "$ref": "#/definitions/IncidentComment" + }, + "x-ms-parameter-location": "method" + }, + "IncidentCommentId": { + "description": "Incident comment ID", + "in": "path", + "name": "incidentCommentId", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "IncidentId": { + "description": "Incident ID", + "in": "path", + "name": "incidentId", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, "ODataFilter": { "description": "Filters the results, based on a Boolean condition. Optional.", "in": "query", @@ -6701,6 +8635,16 @@ "type": "string", "x-ms-parameter-location": "method" }, + "Relation": { + "name": "relation", + "in": "body", + "description": "The relation model", + "required": true, + "schema": { + "$ref": "#/definitions/Relation" + }, + "x-ms-parameter-location": "method" + }, "ResourceGroupName": { "description": "The name of the resource group within the user's subscription. The name is case insensitive.", "in": "path", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/actions/CreateActionOfAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/actions/CreateActionOfAlertRule.json index 7068d7e540ac..b50eaeec2581 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/actions/CreateActionOfAlertRule.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/actions/CreateActionOfAlertRule.json @@ -13,7 +13,8 @@ "type": "Microsoft.SecurityInsights/alertRules/actions", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", "properties": { - "triggerUri": "https://prod-31.northcentralus.logic.azure.com:443/workflows/cd3765391efd48549fd7681ded1d48d7/triggers/manual/paths/invoke?api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=signature" + "triggerUri": "https://prod-31.northcentralus.logic.azure.com:443/workflows/cd3765391efd48549fd7681ded1d48d7/triggers/manual/paths/invoke?api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=signature", + "logicAppResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.Logic/workflows/MyAlerts" } } }, @@ -25,7 +26,8 @@ "type": "Microsoft.SecurityInsights/alertRules/actions", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", "properties": { - "workflowId": "cd3765391efd48549fd7681ded1d48d7" + "workflowId": "cd3765391efd48549fd7681ded1d48d7", + "logicAppResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.Logic/workflows/MyAlerts" } } }, @@ -36,7 +38,8 @@ "type": "Microsoft.SecurityInsights/alertRules/actions", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", "properties": { - "workflowId": "cd3765391efd48549fd7681ded1d48d7" + "workflowId": "cd3765391efd48549fd7681ded1d48d7", + "logicAppResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.Logic/workflows/MyAlerts" } } } diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/actions/GetActionOfAlertRuleById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/actions/GetActionOfAlertRuleById.json index 828654798729..4501f69a57cb 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/actions/GetActionOfAlertRuleById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/actions/GetActionOfAlertRuleById.json @@ -16,7 +16,8 @@ "type": "Microsoft.SecurityInsights/alertRules/actions", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", "properties": { - "workflowId": "cd3765391efd48549fd7681ded1d48d7" + "workflowId": "cd3765391efd48549fd7681ded1d48d7", + "logicAppResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.Logic/workflows/MyAlerts" } } } diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/actions/GetAllActionsByAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/actions/GetAllActionsByAlertRule.json index 6a11f7ae92b3..f6e415ce6c5d 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/actions/GetAllActionsByAlertRule.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/actions/GetAllActionsByAlertRule.json @@ -17,7 +17,8 @@ "type": "Microsoft.SecurityInsights/alertRules/actions", "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", "properties": { - "workflowId": "cd3765391efd48549fd7681ded1d48d7" + "workflowId": "cd3765391efd48549fd7681ded1d48d7", + "logicAppResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.Logic/workflows/MyAlerts" } } ] diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplateById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplateById.json index bcd9416b7306..b85ce69bbb1d 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplateById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplateById.json @@ -32,9 +32,9 @@ "requiredDataConnectors": [ { "connectorId": "AWS", - "dataTypes": { - "AWSCloudTrail": "Exist" - } + "dataTypes": [ + "AWSCloudTrail" + ] } ], "alertRulesCreatedByTemplateCount": 0 diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplates.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplates.json index f8160e7c52ad..fe89ccfea2d4 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplates.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRuleTemplates/GetAlertRuleTemplates.json @@ -33,9 +33,9 @@ "requiredDataConnectors": [ { "connectorId": "AWS", - "dataTypes": { - "AWSCloudTrail": "Exist" - } + "dataTypes": [ + "AWSCloudTrail" + ] } ], "alertRulesCreatedByTemplateCount": 0 diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateMicrosoftSecurityIncidentCreationAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateMicrosoftSecurityIncidentCreationAlertRule.json index 3a78f2fc919e..e508373c9660 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateMicrosoftSecurityIncidentCreationAlertRule.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateMicrosoftSecurityIncidentCreationAlertRule.json @@ -31,7 +31,6 @@ "displayName": "testing displayname", "enabled": true, "description": null, - "tactics": [], "alertRuleTemplateName": null, "lastModifiedUtc": "2019-09-04T12:05:35.7296311Z" } @@ -51,7 +50,6 @@ "displayName": "testing displayname", "enabled": true, "description": null, - "tactics": [], "alertRuleTemplateName": null, "lastModifiedUtc": "2019-09-04T12:05:35.7296311Z" } diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateScheduledAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateScheduledAlertRule.json index 7439f2d1037a..26fe44559cda 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateScheduledAlertRule.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/CreateScheduledAlertRule.json @@ -24,7 +24,20 @@ "triggerOperator": "GreaterThan", "triggerThreshold": 0, "suppressionDuration": "PT1H", - "suppressionEnabled": false + "suppressionEnabled": false, + "incidentConfiguration": { + "createIncident": true, + "groupingConfiguration": { + "enabled": true, + "reopenClosedIncident": false, + "lookbackDuration": "PT5H", + "entitiesMatchingMethod": "Custom", + "groupByEntities": [ + "Host", + "Account" + ] + } + } } } }, @@ -53,7 +66,20 @@ "triggerThreshold": 0, "suppressionDuration": "PT1H", "suppressionEnabled": false, - "lastModifiedUtc": "2019-01-01T13:15:30Z" + "lastModifiedUtc": "2019-01-01T13:15:30Z", + "incidentConfiguration": { + "createIncident": true, + "groupingConfiguration": { + "enabled": true, + "reopenClosedIncident": false, + "lookbackDuration": "PT5H", + "entitiesMatchingMethod": "Custom", + "groupByEntities": [ + "Host", + "Account" + ] + } + } } } }, @@ -81,7 +107,20 @@ "triggerThreshold": 0, "suppressionDuration": "PT1H", "suppressionEnabled": false, - "lastModifiedUtc": "2019-01-01T13:15:30Z" + "lastModifiedUtc": "2019-01-01T13:15:30Z", + "incidentConfiguration": { + "createIncident": true, + "groupingConfiguration": { + "enabled": true, + "reopenClosedIncident": false, + "lookbackDuration": "PT5H", + "entitiesMatchingMethod": "Custom", + "groupByEntities": [ + "Host", + "Account" + ] + } + } } } } diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetAllAlertRules.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetAllAlertRules.json index 6307373a1db5..a82531d8b2d4 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetAllAlertRules.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetAllAlertRules.json @@ -33,7 +33,20 @@ "triggerThreshold": 0, "suppressionDuration": "PT1H", "suppressionEnabled": false, - "lastModifiedUtc": "2019-01-01T13:15:30Z" + "lastModifiedUtc": "2019-01-01T13:15:30Z", + "incidentConfiguration": { + "createIncident": true, + "groupingConfiguration": { + "enabled": true, + "reopenClosedIncident": false, + "lookbackDuration": "PT5H", + "entitiesMatchingMethod": "Custom", + "groupByEntities": [ + "Host", + "Account" + ] + } + } } }, { @@ -49,7 +62,6 @@ "displayName": "testing displayname", "enabled": true, "description": null, - "tactics": [], "alertRuleTemplateName": null, "lastModifiedUtc": "2019-09-04T12:05:35.7296311Z" } diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetMicrosoftSecurityIncidentCreationAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetMicrosoftSecurityIncidentCreationAlertRule.json index 2aa4401ba452..db8510ffb988 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetMicrosoftSecurityIncidentCreationAlertRule.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetMicrosoftSecurityIncidentCreationAlertRule.json @@ -22,7 +22,6 @@ "displayName": "testing displayname", "enabled": true, "description": null, - "tactics": [], "alertRuleTemplateName": null, "lastModifiedUtc": "2019-09-04T12:05:35.7296311Z" } diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetScheduledAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetScheduledAlertRule.json index d7e16b13947d..25a9d7240913 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetScheduledAlertRule.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/alertRules/GetScheduledAlertRule.json @@ -32,7 +32,20 @@ "triggerThreshold": 0, "suppressionDuration": "PT1H", "suppressionEnabled": false, - "lastModifiedUtc": "2019-01-01T13:15:30Z" + "lastModifiedUtc": "2019-01-01T13:15:30Z", + "incidentConfiguration": { + "createIncident": true, + "groupingConfiguration": { + "enabled": true, + "reopenClosedIncident": false, + "lookbackDuration": "PT5H", + "entitiesMatchingMethod": "Custom", + "groupByEntities": [ + "Host", + "Account" + ] + } + } } } } diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/expand/PostExpandBookmark.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/expand/PostExpandBookmark.json new file mode 100644 index 000000000000..a8788054e17a --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/bookmarks/expand/PostExpandBookmark.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "bookmarkId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "parameters": { + "expansionId": "27f76e63-c41b-480f-bb18-12ad2e011d49", + "startTime": "2019-12-25T17:21:00.000Z", + "endTime": "2020-01-24T17:21:00.000Z" + } + }, + "responses": { + "200": { + "body": { + "value": { + "entities": [ + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/fe4ddab5-8cea-eca3-c8b8-9e92e830a387", + "name": "fe4ddab5-8cea-eca3-c8b8-9e92e830a387", + "type": "Microsoft.SecurityInsights/entities", + "kind": "Account", + "properties": { + "friendlyName": "administrator", + "accountName": "administrator", + "ntDomain": "domain" + } + } + ] + }, + "metaData": { + "aggregations": [ + { + "entityKind": "Account", + "count": 1 + } + ] + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/CreateCase.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/CreateCase.json index 670ed172b4e9..175dadb402ec 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/CreateCase.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/CreateCase.json @@ -55,6 +55,7 @@ "relatedAlertIds": [ "cf441808-2d50-4c10-81af-cdd0b908c121" ], + "tactics": [], "caseNumber": 3177 } } @@ -87,6 +88,7 @@ "relatedAlertIds": [ "cf441808-2d50-4c10-81af-cdd0b908c121" ], + "tactics": [], "caseNumber": 3177 } } diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/GetCaseById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/GetCaseById.json index d1661baf0423..b34d5690dfed 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/GetCaseById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/GetCaseById.json @@ -37,6 +37,10 @@ "relatedAlertIds": [ "cf441808-2d50-4c10-81af-cdd0b908c121" ], + "tactics": [ + "InitialAccess", + "Persistence" + ], "caseNumber": 3177, "lastComment": "This is a demo case", "totalComments": 3 diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/GetCases.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/GetCases.json index 6fe262832ea8..56acd2115f04 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/GetCases.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/cases/GetCases.json @@ -40,6 +40,10 @@ "relatedAlertIds": [ "cf441808-2d50-4c10-81af-cdd0b908c121" ], + "tactics": [ + "InitialAccess", + "Persistence" + ], "caseNumber": 3177, "lastComment": "This is a demo case", "totalComments": 3 diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectory.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectory.json new file mode 100644 index 000000000000..1537ba3e8a72 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectory.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "DataConnectorsCheckRequirements": { + "kind": "AzureActiveDirectory", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8" + } + } + }, + "responses": { + "200": { + "body": { + "authorizationState": "Valid", + "licenseState": "Valid" + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectoryNoAuthorization.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectoryNoAuthorization.json new file mode 100644 index 000000000000..1537ba3e8a72 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectoryNoAuthorization.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "DataConnectorsCheckRequirements": { + "kind": "AzureActiveDirectory", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8" + } + } + }, + "responses": { + "200": { + "body": { + "authorizationState": "Valid", + "licenseState": "Valid" + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectoryNoLicense.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectoryNoLicense.json new file mode 100644 index 000000000000..1537ba3e8a72 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsAzureActiveDirectoryNoLicense.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "DataConnectorsCheckRequirements": { + "kind": "AzureActiveDirectory", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8" + } + } + }, + "responses": { + "200": { + "body": { + "authorizationState": "Valid", + "licenseState": "Valid" + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsAzureSecurityCenter.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsAzureSecurityCenter.json new file mode 100644 index 000000000000..7e6c5db280a4 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsAzureSecurityCenter.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "DataConnectorsCheckRequirements": { + "kind": "AzureSecurityCenter", + "properties": { + "subscriptionId": "c0688291-89d7-4bed-87a2-a7b1bff43f4c" + } + } + }, + "responses": { + "200": { + "body": { + "authorizationState": "Valid", + "licenseState": "Valid" + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsMdatp.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsMdatp.json new file mode 100644 index 000000000000..9bafdafddb32 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsMdatp.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "DataConnectorsCheckRequirements": { + "kind": "MicrosoftCloudAppSecurity", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8" + } + } + }, + "responses": { + "200": { + "body": { + "authorizationState": "Valid", + "licenseState": "Valid" + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftCloudAppSecurity.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftCloudAppSecurity.json new file mode 100644 index 000000000000..9bafdafddb32 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsMicrosoftCloudAppSecurity.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "DataConnectorsCheckRequirements": { + "kind": "MicrosoftCloudAppSecurity", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8" + } + } + }, + "responses": { + "200": { + "body": { + "authorizationState": "Valid", + "licenseState": "Valid" + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsThreatIntelligence.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsThreatIntelligence.json new file mode 100644 index 000000000000..e5021e1ecbd9 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsThreatIntelligence.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "DataConnectorsCheckRequirements": { + "kind": "ThreatIntelligence", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8" + } + } + }, + "responses": { + "200": { + "body": { + "authorizationState": "Valid", + "licenseState": "Valid" + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsThreatIntelligenceTaxii.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsThreatIntelligenceTaxii.json new file mode 100644 index 000000000000..cf0b1c18c239 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/CheckRequirementsThreatIntelligenceTaxii.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "DataConnectorsCheckRequirements": { + "kind": "ThreatIntelligenceTaxii", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8" + } + } + }, + "responses": { + "200": { + "body": { + "authorizationState": "Valid", + "licenseState": "Valid" + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetDataConnectors.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetDataConnectors.json index 19806b1058ea..6c783118cb3b 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetDataConnectors.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetDataConnectors.json @@ -40,6 +40,27 @@ } } }, + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c39bb458-02a7-4b3f-b0c8-71a1d2692652", + "name": "c39bb458-02a7-4b3f-b0c8-71a1d2692652", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "ThreatIntelligenceTaxii", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "workspaceId": "8b014a77-4695-4ef4-96bb-6623afb121a2", + "friendlyName": "My TI Taxii Connector", + "taxiiServer": "https://mytaxiiserver.com/taxiing/v2/api", + "collectionId": "e0b1f32d-1188-48f7-a7a3-de71924e4b5e", + "userName": "", + "password": "", + "dataTypes": { + "taxiiClient": { + "state": "Enabled" + } + } + } + }, { "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/f0cd27d2-5f03-4c06-ba31-d2dc82dcb51d", "name": "f0cd27d2-5f03-4c06-ba31-d2dc82dcb51d", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetThreatIntelligenceTaxiiById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetThreatIntelligenceTaxiiById.json new file mode 100644 index 000000000000..1dbd88e790a1 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/dataConnectors/GetThreatIntelligenceTaxiiById.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "dataConnectorId": "c39bb458-02a7-4b3f-b0c8-71a1d2692652" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c39bb458-02a7-4b3f-b0c8-71a1d2692652", + "name": "c39bb458-02a7-4b3f-b0c8-71a1d2692652", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "ThreatIntelligenceTaxii", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "workspaceId": "8b014a77-4695-4ef4-96bb-6623afb121a2", + "friendlyName": "My TI Taxii Connector", + "taxiiServer": "https://mytaxiiserver.com/taxiing/v2/api", + "collectionId": "e0b1f32d-1188-48f7-a7a3-de71924e4b5e", + "userName": "", + "password": "", + "dataTypes": { + "taxiiClient": { + "state": "Enabled" + } + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetAccountEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetAccountEntityById.json index 308ad74facfe..893bd08a3e57 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetAccountEntityById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetAccountEntityById.json @@ -24,7 +24,8 @@ "aadUserId": "f7033626-2572-46b1-bba0-06646f4f95b3", "puid": "ee3cb2d8-14ba-45ef-8009-d6f1cacfa04d", "isDomainJoined": true, - "objectGuid": "11227b78-3c6e-436e-a2a2-02fc7662eca0" + "objectGuid": "11227b78-3c6e-436e-a2a2-02fc7662eca0", + "dnsDomain": "contoso.com" } } } diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetSecurityAlertEntityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetSecurityAlertEntityById.json index 4c3ca8bd57b6..af742bb18b0a 100644 --- a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetSecurityAlertEntityById.json +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/GetSecurityAlertEntityById.json @@ -25,11 +25,16 @@ "productName": "Azure Sentinel", "productComponentName": "Scheduled Alerts", "alertType": "c8c99641-985d-4e4e-8e91-fb3466cd0e5b_46c7b6c0-ff43-44dd-8b4d-ceffff7aa7df", + "providerAlertId": "c2bafff9-fb31-41d0-a177-ecbff7a02ffe", "processingEndTime": "2019-07-06T13:56:53.5392366Z", "status": "New", "endTimeUtc": "2019-07-06T13:21:45.926185Z", "startTimeUtc": "2019-07-06T08:21:45.926185Z", "timeGenerated": "2019-07-06T13:56:53.5392366Z", + "tactics": [ + "Persistence", + "LateralMovement" + ], "additionalData": { "Query": "Heartbeat \n| extend AccountCustomEntity = \"administrator\"", "Query Period": "05:00:00", diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/relations/GetAllEntityRelations.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/relations/GetAllEntityRelations.json new file mode 100644 index 000000000000..8019900f524f --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/relations/GetAllEntityRelations.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "entityId": "afbd324f-6c48-459c-8710-8d1e1cd03812" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "type": "Microsoft.SecurityInsights/entities/relations", + "etag": "190057d0-0000-0d00-0000-5c6f5adb0000", + "properties": { + "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/2216d0e1-91e3-4902-89fd-d2df8c535096", + "relatedResourceName": "2216d0e1-91e3-4902-89fd-d2df8c535096", + "relatedResourceType": "Microsoft.SecurityInsights/incidents" + } + } + ] + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/relations/GetEntityRelationByName.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/relations/GetEntityRelationByName.json new file mode 100644 index 000000000000..d6c273d1b9c9 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/entities/relations/GetEntityRelationByName.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "entityId": "afbd324f-6c48-459c-8710-8d1e1cd03812", + "relationName": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "type": "Microsoft.SecurityInsights/entities/relations", + "etag": "190057d0-0000-0d00-0000-5c6f5adb0000", + "properties": { + "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/2216d0e1-91e3-4902-89fd-d2df8c535096", + "relatedResourceName": "2216d0e1-91e3-4902-89fd-d2df8c535096", + "relatedResourceType": "Microsoft.SecurityInsights/incidents" + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/CreateIncident.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/CreateIncident.json new file mode 100644 index 000000000000..1082cb4fa706 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/CreateIncident.json @@ -0,0 +1,105 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "incidentId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "incident": { + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "lastActivityTimeUtc": "2019-01-01T13:05:30Z", + "firstActivityTimeUtc": "2019-01-01T13:00:30Z", + "description": "This is a demo incident", + "title": "My incident", + "owner": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70" + }, + "severity": "High", + "classification": "FalsePositive", + "classificationComment": "Not a malicious activity", + "classificationReason": "IncorrectAlertLogic", + "status": "Closed" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "type": "Microsoft.SecurityInsights/incidents", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0001\"", + "properties": { + "lastModifiedTimeUtc": "2019-01-01T13:15:30Z", + "createdTimeUtc": "2019-01-01T13:15:30Z", + "lastActivityTimeUtc": "2019-01-01T13:05:30Z", + "firstActivityTimeUtc": "2019-01-01T13:00:30Z", + "description": "This is a demo incident", + "title": "My incident", + "owner": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john.doe@contoso.com", + "userPrincipalName": "john@contoso.com", + "assignedTo": "john doe" + }, + "severity": "High", + "classification": "FalsePositive", + "classificationComment": "Not a malicious activity", + "classificationReason": "IncorrectAlertLogic", + "status": "Closed", + "incidentUrl": "https://portal.azure.com/#asset/Microsoft_Azure_Security_Insights/Incident/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "incidentNumber": 3177, + "labels": [], + "relatedAnalyticRuleIds": [], + "additionalData": { + "alertsCount": 0, + "bookmarksCount": 0, + "commentsCount": 3, + "alertProductNames": [], + "tactics": [] + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "type": "Microsoft.SecurityInsights/incidents", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0001\"", + "properties": { + "lastModifiedTimeUtc": "2019-01-01T13:15:30Z", + "createdTimeUtc": "2019-01-01T13:15:30Z", + "lastActivityTimeUtc": "2019-01-01T13:05:30Z", + "firstActivityTimeUtc": "2019-01-01T13:00:30Z", + "description": "This is a demo incident", + "title": "My incident", + "owner": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john.doe@contoso.com", + "userPrincipalName": "john@contoso.com", + "assignedTo": "john doe" + }, + "severity": "High", + "classification": "FalsePositive", + "classificationComment": "Not a malicious activity", + "classificationReason": "IncorrectAlertLogic", + "status": "Closed", + "incidentUrl": "https://portal.azure.com/#asset/Microsoft_Azure_Security_Insights/Incident/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "incidentNumber": 3177, + "labels": [], + "relatedAnalyticRuleIds": [], + "additionalData": { + "alertsCount": 0, + "bookmarksCount": 0, + "commentsCount": 3, + "alertProductNames": [], + "tactics": [] + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/DeleteIncident.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/DeleteIncident.json new file mode 100644 index 000000000000..bfd04662497a --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/DeleteIncident.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "incidentId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/GetIncidentById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/GetIncidentById.json new file mode 100644 index 000000000000..9166c07241d9 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/GetIncidentById.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "incidentId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "type": "Microsoft.SecurityInsights/incidents", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "lastModifiedTimeUtc": "2019-01-01T13:15:30Z", + "createdTimeUtc": "2019-01-01T13:15:30Z", + "lastActivityTimeUtc": "2019-01-01T13:05:30Z", + "firstActivityTimeUtc": "2019-01-01T13:00:30Z", + "description": "This is a demo incident", + "title": "My incident", + "owner": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john.doe@contoso.com", + "userPrincipalName": "john@contoso.com", + "assignedTo": "john doe" + }, + "severity": "High", + "classification": "FalsePositive", + "classificationComment": "Not a malicious activity", + "classificationReason": "InaccurateData", + "status": "Closed", + "incidentUrl": "https://portal.azure.com/#asset/Microsoft_Azure_Security_Insights/Incident/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "incidentNumber": 3177, + "labels": [], + "relatedAnalyticRuleIds": [ + "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/fab3d2d4-747f-46a7-8ef0-9c0be8112bf7" + ], + "additionalData": { + "alertsCount": 0, + "bookmarksCount": 0, + "commentsCount": 3, + "alertProductNames": [], + "tactics": [ + "InitialAccess", + "Persistence" + ] + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/GetIncidents.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/GetIncidents.json new file mode 100644 index 000000000000..85e34cc818ae --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/GetIncidents.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "$orderby": "properties/createdTimeUtc desc", + "$top": 1 + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "type": "Microsoft.SecurityInsights/incidents", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "lastModifiedTimeUtc": "2019-01-01T13:15:30Z", + "createdTimeUtc": "2019-01-01T13:15:30Z", + "lastActivityTimeUtc": "2019-01-01T13:05:30Z", + "firstActivityTimeUtc": "2019-01-01T13:00:30Z", + "description": "This is a demo incident", + "title": "My incident", + "owner": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john.doe@contoso.com", + "userPrincipalName": "john@contoso.com", + "assignedTo": "john doe" + }, + "severity": "High", + "classification": "FalsePositive", + "classificationComment": "Not a malicious activity", + "classificationReason": "IncorrectAlertLogic", + "status": "Closed", + "incidentUrl": "https://portal.azure.com/#asset/Microsoft_Azure_Security_Insights/Incident/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "incidentNumber": 3177, + "labels": [], + "relatedAnalyticRuleIds": [ + "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/fab3d2d4-747f-46a7-8ef0-9c0be8112bf7", + "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/8deb8303-e94d-46ff-96e0-5fd94b33df1a" + ], + "additionalData": { + "alertsCount": 0, + "bookmarksCount": 0, + "commentsCount": 3, + "alertProductNames": [], + "tactics": [ + "Persistence" + ] + } + } + } + ] + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/comments/CreateIncidentComment.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/comments/CreateIncidentComment.json new file mode 100644 index 000000000000..e82cacf4bc78 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/comments/CreateIncidentComment.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "incidentId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "incidentCommentId": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "incidentComment": { + "properties": { + "message": "Some message" + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/comments/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "type": "Microsoft.SecurityInsights/incidents/comments", + "properties": { + "message": "Some message", + "createdTimeUtc": "2019-01-01T13:15:30Z", + "author": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john.doe@contoso.com", + "userPrincipalName": "john@contoso.com", + "name": "john doe" + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/comments/GetAllIncidentComments.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/comments/GetAllIncidentComments.json new file mode 100644 index 000000000000..87dbdd886e30 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/comments/GetAllIncidentComments.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "incidentId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/comments/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "type": "Microsoft.SecurityInsights/incidents/comments", + "properties": { + "message": "Some message", + "createdTimeUtc": "2019-01-01T13:15:30Z", + "author": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john.doe@contoso.com", + "userPrincipalName": "john@contoso.com", + "name": "john doe" + } + } + } + ] + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/comments/GetIncidentCommentById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/comments/GetIncidentCommentById.json new file mode 100644 index 000000000000..fe757de317b3 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/comments/GetIncidentCommentById.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "incidentId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "incidentCommentId": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/73e01a99-5cd7-4139-a149-9f2736ff2ab5/comments/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "type": "Microsoft.SecurityInsights/incidents/comments", + "properties": { + "message": "Some message", + "createdTimeUtc": "2019-01-01T13:15:30Z", + "author": { + "objectId": "2046feea-040d-4a46-9e2b-91c2941bfa70", + "email": "john.doe@contoso.com", + "userPrincipalName": "john@contoso.com", + "name": "john doe" + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/relations/CreateIncidentRelation.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/relations/CreateIncidentRelation.json new file mode 100644 index 000000000000..bbc267ef2842 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/relations/CreateIncidentRelation.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "incidentId": "afbd324f-6c48-459c-8710-8d1e1cd03812", + "relationName": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "relation": { + "properties": { + "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "type": "Microsoft.SecurityInsights/incidents/relations", + "etag": "190057d0-0000-0d00-0000-5c6f5adb0000", + "properties": { + "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096", + "relatedResourceName": "2216d0e1-91e3-4902-89fd-d2df8c535096", + "relatedResourceType": "Microsoft.SecurityInsights/bookmarks" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "type": "Microsoft.SecurityInsights/incidents/relations", + "etag": "190057d0-0000-0d00-0000-5c6f5adb0000", + "properties": { + "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096", + "relatedResourceName": "2216d0e1-91e3-4902-89fd-d2df8c535096", + "relatedResourceType": "Microsoft.SecurityInsights/bookmarks" + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/relations/DeleteIncidentRelation.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/relations/DeleteIncidentRelation.json new file mode 100644 index 000000000000..c0ebcb3647ab --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/relations/DeleteIncidentRelation.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "incidentId": "afbd324f-6c48-459c-8710-8d1e1cd03812", + "relationName": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/relations/GetAllIncidentRelations.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/relations/GetAllIncidentRelations.json new file mode 100644 index 000000000000..9fda5d1dfb05 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/relations/GetAllIncidentRelations.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "incidentId": "afbd324f-6c48-459c-8710-8d1e1cd03812" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "type": "Microsoft.SecurityInsights/incidents/relations", + "etag": "190057d0-0000-0d00-0000-5c6f5adb0000", + "properties": { + "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096", + "relatedResourceName": "2216d0e1-91e3-4902-89fd-d2df8c535096", + "relatedResourceType": "Microsoft.SecurityInsights/bookmarks" + } + }, + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/9673a17d-8bc7-4ca6-88ee-38a4f3efc032", + "name": "9673a17d-8bc7-4ca6-88ee-38a4f3efc032", + "type": "Microsoft.SecurityInsights/incidents/relations", + "etag": "6f714025-dd7c-46aa-b5d0-b9857488d060", + "properties": { + "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/entities/1dd267cd-8a1f-4f6f-b92c-da43ac8819af", + "relatedResourceName": "1dd267cd-8a1f-4f6f-b92c-da43ac8819af", + "relatedResourceType": "Microsoft.SecurityInsights/entities", + "relatedResourceKind": "SecurityAlert" + } + } + ] + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/relations/GetIncidentRelationByName.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/relations/GetIncidentRelationByName.json new file mode 100644 index 000000000000..22cc32e2554f --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/preview/2019-01-01-preview/examples/incidents/relations/GetIncidentRelationByName.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "incidentId": "afbd324f-6c48-459c-8710-8d1e1cd03812", + "relationName": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/incidents/afbd324f-6c48-459c-8710-8d1e1cd03812/relations/4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "name": "4bb36b7b-26ff-4d1c-9cbe-0d8ab3da0014", + "type": "Microsoft.SecurityInsights/incidents/relations", + "etag": "190057d0-0000-0d00-0000-5c6f5adb0000", + "properties": { + "relatedResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/bookmarks/2216d0e1-91e3-4902-89fd-d2df8c535096", + "relatedResourceName": "2216d0e1-91e3-4902-89fd-d2df8c535096", + "relatedResourceType": "Microsoft.SecurityInsights/bookmarks" + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/SecurityInsights.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/SecurityInsights.json new file mode 100644 index 000000000000..0dae763435cf --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/SecurityInsights.json @@ -0,0 +1,2445 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Insights", + "description": "API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provider", + "version": "2020-01-01" + }, + "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": { + "/providers/Microsoft.SecurityInsights/operations": { + "get": { + "operationId": "Operations_List", + "description": "Lists all operations available Azure Security Insights Resource Provider.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + } + ], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "description": "OK. Successfully retrieved operations list.", + "schema": { + "$ref": "#/definitions/OperationsList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/alertRules": { + "get": { + "x-ms-examples": { + "Get all alert rules.": { + "$ref": "./examples/alertRules/GetAllAlertRules.json" + } + }, + "tags": [ + "Alert Rules" + ], + "description": "Gets all alert rules.", + "operationId": "AlertRules_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/WorkspaceName" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AlertRulesList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/alertRules/{ruleId}": { + "get": { + "x-ms-examples": { + "Get a Scheduled alert rule.": { + "$ref": "./examples/alertRules/GetScheduledAlertRule.json" + }, + "Get a Fusion alert rule.": { + "$ref": "./examples/alertRules/GetFusionAlertRule.json" + }, + "Get a MicrosoftSecurityIncidentCreation rule.": { + "$ref": "./examples/alertRules/GetMicrosoftSecurityIncidentCreationAlertRule.json" + } + }, + "tags": [ + "Alert Rules" + ], + "description": "Gets the alert rule.", + "operationId": "AlertRules_Get", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/RuleId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AlertRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "x-ms-examples": { + "Creates or updates a Scheduled alert rule.": { + "$ref": "./examples/alertRules/CreateScheduledAlertRule.json" + }, + "Creates or updates a Fusion alert rule.": { + "$ref": "./examples/alertRules/CreateFusionAlertRule.json" + }, + "Creates or updates a MicrosoftSecurityIncidentCreation rule.": { + "$ref": "./examples/alertRules/CreateMicrosoftSecurityIncidentCreationAlertRule.json" + } + }, + "tags": [ + "Alert Rules" + ], + "description": "Creates or updates the alert rule.", + "operationId": "AlertRules_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/RuleId" + }, + { + "$ref": "#/parameters/AlertRule" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AlertRule" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/AlertRule" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "x-ms-examples": { + "Delete an alert rule.": { + "$ref": "./examples/alertRules/DeleteAlertRule.json" + } + }, + "tags": [ + "Alert Rules" + ], + "description": "Delete the alert rule.", + "operationId": "AlertRules_Delete", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/RuleId" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/alertRules/{ruleId}/actions": { + "get": { + "x-ms-examples": { + "Get all actions of alert rule.": { + "$ref": "./examples/actions/GetAllActionsByAlertRule.json" + } + }, + "tags": [ + "Actions" + ], + "description": "Gets all actions of alert rule.", + "operationId": "Actions_ListByAlertRule", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/RuleId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ActionsList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/alertRules/{ruleId}/actions/{actionId}": { + "get": { + "x-ms-examples": { + "Get an action of alert rule.": { + "$ref": "./examples/actions/GetActionOfAlertRuleById.json" + } + }, + "tags": [ + "Actions" + ], + "description": "Gets the action of alert rule.", + "operationId": "AlertRules_GetAction", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/RuleId" + }, + { + "$ref": "#/parameters/ActionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ActionResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "x-ms-examples": { + "Creates or updates an action of alert rule.": { + "$ref": "./examples/actions/CreateActionOfAlertRule.json" + } + }, + "tags": [ + "Actions" + ], + "description": "Creates or updates the action of alert rule.", + "operationId": "AlertRules_CreateOrUpdateAction", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/RuleId" + }, + { + "$ref": "#/parameters/ActionId" + }, + { + "$ref": "#/parameters/Action" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ActionResponse" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/ActionResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "x-ms-examples": { + "Delete an action of alert rule.": { + "$ref": "./examples/actions/DeleteActionOfAlertRule.json" + } + }, + "tags": [ + "Actions" + ], + "description": "Delete the action of alert rule.", + "operationId": "AlertRules_DeleteAction", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/RuleId" + }, + { + "$ref": "#/parameters/ActionId" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/dataConnectors": { + "get": { + "x-ms-examples": { + "Get all data connectors.": { + "$ref": "./examples/dataConnectors/GetDataConnectors.json" + } + }, + "tags": [ + "Data Connectors" + ], + "description": "Gets all data connectors.", + "operationId": "DataConnectors_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/WorkspaceName" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DataConnectorList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/dataConnectors/{dataConnectorId}": { + "get": { + "x-ms-examples": { + "Get an Office365 data connector.": { + "$ref": "./examples/dataConnectors/GetOfficeDataConnetorById.json" + }, + "Get a TI data connector.": { + "$ref": "./examples/dataConnectors/GetThreatIntelligenceById.json" + }, + "Get a MCAS data connector.": { + "$ref": "./examples/dataConnectors/GetMicrosoftCloudAppSecurityById.json" + }, + "Get a ASC data connector.": { + "$ref": "./examples/dataConnectors/GetAzureSecurityCenterById.json" + }, + "Get an AAD data connector.": { + "$ref": "./examples/dataConnectors/GetAzureActiveDirectoryById.json" + }, + "Get an AwsCloudTrail data connector.": { + "$ref": "./examples/dataConnectors/GetAmazonWebServicesCloudTrailById.json" + }, + "Get an AATP data connector.": { + "$ref": "./examples/dataConnectors/GetAzureAdvancedThreatProtectionById.json" + }, + "Get a MDATP data connector": { + "$ref": "./examples/dataConnectors/GetMicrosoftDefenderAdvancedThreatProtectionById.json" + } + }, + "tags": [ + "Data Connectors" + ], + "description": "Gets a data connector.", + "operationId": "DataConnectors_Get", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/DataConnectorId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DataConnector" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "put": { + "x-ms-examples": { + "Creates or updates an Office365 data connector.": { + "$ref": "./examples/dataConnectors/CreateOfficeDataConnetor.json" + } + }, + "tags": [ + "Data Connectors" + ], + "description": "Creates or updates the data connector.", + "operationId": "DataConnectors_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/DataConnectorId" + }, + { + "$ref": "#/parameters/DataConnector" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/DataConnector" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/DataConnector" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + }, + "delete": { + "x-ms-examples": { + "Delete an Office365 data connector.": { + "$ref": "./examples/dataConnectors/DeleteOfficeDataConnetor.json" + } + }, + "tags": [ + "Data Connectors" + ], + "description": "Delete the data connector.", + "operationId": "DataConnectors_Delete", + "parameters": [ + { + "$ref": "#/parameters/ApiVersion" + }, + { + "$ref": "#/parameters/SubscriptionId" + }, + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/WorkspaceName" + }, + { + "$ref": "#/parameters/DataConnectorId" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "AADDataConnector": { + "allOf": [ + { + "$ref": "#/definitions/DataConnector" + } + ], + "description": "Represents AAD (Azure Active Directory) data connector.", + "properties": { + "properties": { + "$ref": "#/definitions/AADDataConnectorProperties", + "description": "AAD (Azure Active Directory) data connector properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "AzureActiveDirectory" + }, + "AADDataConnectorProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorTenantId" + }, + { + "$ref": "#/definitions/DataConnectorWithAlertsProperties" + } + ], + "description": "AAD (Azure Active Directory) data connector properties.", + "type": "object" + }, + "AATPDataConnector": { + "allOf": [ + { + "$ref": "#/definitions/DataConnector" + } + ], + "description": "Represents AATP (Azure Advanced Threat Protection) data connector.", + "properties": { + "properties": { + "$ref": "#/definitions/AATPDataConnectorProperties", + "description": "AATP (Azure Advanced Threat Protection) data connector properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "AzureAdvancedThreatProtection" + }, + "AATPDataConnectorProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorTenantId" + }, + { + "$ref": "#/definitions/DataConnectorWithAlertsProperties" + } + ], + "description": "AATP (Azure Advanced Threat Protection) data connector properties.", + "type": "object" + }, + "ASCDataConnector": { + "allOf": [ + { + "$ref": "#/definitions/DataConnector" + } + ], + "description": "Represents ASC (Azure Security Center) data connector.", + "properties": { + "properties": { + "$ref": "#/definitions/ASCDataConnectorProperties", + "description": "ASC (Azure Security Center) data connector properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "AzureSecurityCenter" + }, + "ASCDataConnectorProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorWithAlertsProperties" + } + ], + "description": "ASC (Azure Security Center) data connector properties.", + "properties": { + "subscriptionId": { + "description": "The subscription id to connect to, and get the data from.", + "type": "string" + } + }, + "type": "object" + }, + "ActionRequest": { + "allOf": [ + { + "$ref": "#/definitions/ResourceWithEtag" + } + ], + "description": "Action for alert rule.", + "properties": { + "properties": { + "$ref": "#/definitions/ActionRequestProperties", + "description": "Action properties for put request", + "x-ms-client-flatten": true + } + }, + "type": "object" + }, + "ActionPropertiesBase": { + "description": "Action property bag base.", + "properties": { + "logicAppResourceId": { + "description": "Logic App Resource Id, providers/Microsoft.Logic/workflows/{WorkflowID}.", + "type": "string" + } + }, + "required": [ + "logicAppResourceId" + ], + "type": "object" + }, + "ActionRequestProperties": { + "allOf": [ + { + "$ref": "#/definitions/ActionPropertiesBase" + } + ], + "description": "Action property bag.", + "properties": { + "triggerUri": { + "description": "Logic App Callback URL for this specific workflow.", + "type": "string" + } + }, + "type": "object" + }, + "ActionResponse": { + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Action for alert rule.", + "properties": { + "etag": { + "description": "Etag of the action.", + "type": "string" + }, + "properties": { + "$ref": "#/definitions/ActionResponseProperties", + "description": "Action properties for get request", + "x-ms-client-flatten": true + } + }, + "type": "object" + }, + "ActionResponseProperties": { + "allOf": [ + { + "$ref": "#/definitions/ActionPropertiesBase" + } + ], + "description": "Action property bag.", + "properties": { + "workflowId": { + "description": "The name of the logic app's workflow.", + "type": "string" + } + }, + "type": "object" + }, + "ActionsList": { + "description": "List all the actions.", + "properties": { + "nextLink": { + "description": "URL to fetch the next set of actions.", + "readOnly": true, + "type": "string" + }, + "value": { + "description": "Array of actions.", + "items": { + "$ref": "#/definitions/ActionResponse" + }, + "type": "array" + } + }, + "required": [ + "value" + ] + }, + "AlertRule": { + "allOf": [ + { + "$ref": "#/definitions/ResourceWithEtag" + }, + { + "$ref": "#/definitions/AlertRuleKind" + } + ], + "description": "Alert rule.", + "discriminator": "kind", + "required": [ + "kind" + ], + "type": "object" + }, + "AlertRuleKind": { + "description": "Describes an Azure resource with kind.", + "properties": { + "kind": { + "description": "The kind of the alert rule", + "enum": [ + "Scheduled", + "MicrosoftSecurityIncidentCreation", + "Fusion" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "AlertRuleKind", + "values": [ + { + "value": "Scheduled" + }, + { + "value": "MicrosoftSecurityIncidentCreation" + }, + { + "value": "Fusion" + } + ] + } + } + }, + "required": [ + "kind" + ], + "type": "object" + }, + "AlertRuleTemplate": { + "allOf": [ + { + "$ref": "#/definitions/Resource" + }, + { + "$ref": "#/definitions/AlertRuleKind" + } + ], + "description": "Alert rule template.", + "discriminator": "kind", + "required": [ + "kind" + ], + "type": "object" + }, + "AlertRuleTemplateDataSource": { + "description": "alert rule template data sources", + "properties": { + "connectorId": { + "description": "The connector id that provides the following data types", + "type": "string" + }, + "dataTypes": { + "description": "The data types used by the alert rule template", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" + }, + "AlertRuleTemplatePropertiesBase": { + "description": "Base alert rule template property bag.", + "properties": { + "alertRulesCreatedByTemplateCount": { + "description": "the number of alert rules that were created by this template", + "type": "integer" + }, + "createdDateUTC": { + "description": "The time that this alert rule template has been added.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "The description of the alert rule template.", + "type": "string" + }, + "displayName": { + "description": "The display name for alert rule template.", + "type": "string" + }, + "requiredDataConnectors": { + "description": "The required data connectors for this template", + "items": { + "$ref": "#/definitions/AlertRuleTemplateDataSource" + }, + "type": "array" + }, + "status": { + "description": "The alert rule template status.", + "enum": [ + "Installed", + "Available", + "NotAvailable" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "TemplateStatus", + "values": [ + { + "description": "Alert rule template installed. and can not use more then once", + "value": "Installed" + }, + { + "description": "Alert rule template is available.", + "value": "Available" + }, + { + "description": "Alert rule template is not available", + "value": "NotAvailable" + } + ] + } + } + }, + "type": "object" + }, + "AlertRuleTriggerOperator": { + "description": "The operation against the threshold that triggers alert rule.", + "enum": [ + "GreaterThan", + "LessThan", + "Equal", + "NotEqual" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": false, + "name": "TriggerOperator" + } + }, + "AlertRulesList": { + "description": "List all the alert rules.", + "properties": { + "nextLink": { + "description": "URL to fetch the next set of alert rules.", + "readOnly": true, + "type": "string" + }, + "value": { + "description": "Array of alert rules.", + "items": { + "$ref": "#/definitions/AlertRule" + }, + "type": "array" + } + }, + "required": [ + "value" + ] + }, + "AlertSeverity": { + "description": "The severity of the alert", + "enum": [ + "High", + "Medium", + "Low", + "Informational" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "AlertSeverity", + "values": [ + { + "description": "High severity", + "value": "High" + }, + { + "description": "Medium severity", + "value": "Medium" + }, + { + "description": "Low severity", + "value": "Low" + }, + { + "description": "Informational severity", + "value": "Informational" + } + ] + } + }, + "AlertsDataTypeOfDataConnector": { + "description": "Alerts data type for data connectors.", + "properties": { + "alerts": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorDataTypeCommon" + } + ], + "description": "Alerts data type connection.", + "type": "object" + } + }, + "type": "object" + }, + "AttackTactic": { + "description": "The severity for alerts created by this alert rule.", + "enum": [ + "InitialAccess", + "Execution", + "Persistence", + "PrivilegeEscalation", + "DefenseEvasion", + "CredentialAccess", + "Discovery", + "LateralMovement", + "Collection", + "Exfiltration", + "CommandAndControl", + "Impact" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "AttackTactic" + } + }, + "AwsCloudTrailDataConnector": { + "allOf": [ + { + "$ref": "#/definitions/DataConnector" + } + ], + "description": "Represents Amazon Web Services CloudTrail data connector.", + "properties": { + "properties": { + "$ref": "#/definitions/AwsCloudTrailDataConnectorProperties", + "description": "Amazon Web Services CloudTrail data connector properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "AmazonWebServicesCloudTrail" + }, + "AwsCloudTrailDataConnectorDataTypes": { + "description": "The available data types for Amazon Web Services CloudTrail data connector.", + "properties": { + "logs": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorDataTypeCommon" + } + ], + "description": "Logs data type.", + "type": "object" + } + }, + "type": "object" + }, + "AwsCloudTrailDataConnectorProperties": { + "description": "Amazon Web Services CloudTrail data connector properties.", + "properties": { + "awsRoleArn": { + "description": "The Aws Role Arn (with CloudTrailReadOnly policy) that is used to access the Aws account.", + "type": "string" + }, + "dataTypes": { + "$ref": "#/definitions/AwsCloudTrailDataConnectorDataTypes", + "description": "The available data types for the connector." + } + }, + "type": "object" + }, + "CloudError": { + "description": "Error response structure.", + "properties": { + "error": { + "$ref": "#/definitions/CloudErrorBody", + "description": "Error data", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-external": true + }, + "CloudErrorBody": { + "description": "Error details.", + "properties": { + "code": { + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically.", + "readOnly": true, + "type": "string" + }, + "message": { + "description": "A message describing the error, intended to be suitable for display in a user interface.", + "readOnly": true, + "type": "string" + } + }, + "type": "object", + "x-ms-external": true + }, + "DataConnector": { + "allOf": [ + { + "$ref": "#/definitions/ResourceWithEtag" + }, + { + "$ref": "#/definitions/DataConnectorKind" + } + ], + "description": "Data connector.", + "discriminator": "kind", + "required": [ + "kind" + ], + "type": "object" + }, + "DataConnectorDataTypeCommon": { + "description": "Common field for data type in data connectors.", + "properties": { + "state": { + "description": "Describe whether this data type connection is enabled or not.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "DataTypeState" + } + } + }, + "type": "object" + }, + "DataConnectorKind": { + "description": "Describes an Azure resource with kind.", + "properties": { + "kind": { + "description": "The kind of the data connector", + "enum": [ + "AzureActiveDirectory", + "AzureSecurityCenter", + "MicrosoftCloudAppSecurity", + "ThreatIntelligence", + "Office365", + "AmazonWebServicesCloudTrail", + "AzureAdvancedThreatProtection", + "MicrosoftDefenderAdvancedThreatProtection" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "DataConnectorKind", + "values": [ + { + "value": "AzureActiveDirectory" + }, + { + "value": "AzureSecurityCenter" + }, + { + "value": "MicrosoftCloudAppSecurity" + }, + { + "value": "ThreatIntelligence" + }, + { + "value": "Office365" + }, + { + "value": "AmazonWebServicesCloudTrail" + }, + { + "value": "AzureAdvancedThreatProtection" + }, + { + "value": "MicrosoftDefenderAdvancedThreatProtection" + } + ] + } + } + }, + "type": "object" + }, + "DataConnectorList": { + "description": "List all the data connectors.", + "properties": { + "nextLink": { + "description": "URL to fetch the next set of data connectors.", + "readOnly": true, + "type": "string" + }, + "value": { + "description": "Array of data connectors.", + "items": { + "$ref": "#/definitions/DataConnector" + }, + "type": "array" + } + }, + "required": [ + "value" + ] + }, + "DataConnectorTenantId": { + "description": "Properties data connector on tenant level.", + "properties": { + "tenantId": { + "description": "The tenant id to connect to, and get the data from.", + "type": "string" + } + }, + "type": "object" + }, + "DataConnectorWithAlertsProperties": { + "description": "Data connector properties.", + "properties": { + "dataTypes": { + "$ref": "#/definitions/AlertsDataTypeOfDataConnector", + "description": "The available data types for the connector." + } + }, + "type": "object" + }, + "FusionAlertRule": { + "allOf": [ + { + "$ref": "#/definitions/AlertRule" + } + ], + "description": "Represents Fusion alert rule.", + "properties": { + "properties": { + "$ref": "#/definitions/FusionAlertRuleProperties", + "description": "Fusion alert rule properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "Fusion" + }, + "FusionAlertRuleProperties": { + "description": "Fusion alert rule base property bag.", + "properties": { + "alertRuleTemplateName": { + "description": "The Name of the alert rule template used to create this rule.", + "type": "string" + }, + "description": { + "description": "The description of the alert rule.", + "readOnly": true, + "type": "string" + }, + "displayName": { + "description": "The display name for alerts created by this alert rule.", + "readOnly": true, + "type": "string" + }, + "enabled": { + "description": "Determines whether this alert rule is enabled or disabled.", + "type": "boolean" + }, + "lastModifiedUtc": { + "description": "The last time that this alert has been modified.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "severity": { + "$ref": "#/definitions/AlertSeverity", + "description": "The severity for alerts created by this alert rule.", + "readOnly": true + }, + "tactics": { + "description": "The tactics of the alert rule", + "items": { + "$ref": "#/definitions/AttackTactic" + }, + "readOnly": true, + "type": "array" + } + }, + "required": [ + "alertRuleTemplateName", + "enabled" + ], + "type": "object" + }, + "FusionAlertRuleTemplate": { + "allOf": [ + { + "$ref": "#/definitions/AlertRuleTemplate" + } + ], + "description": "Represents Fusion alert rule template.", + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AlertRuleTemplatePropertiesBase" + } + ], + "description": "Fusion alert rule template properties", + "properties": { + "severity": { + "$ref": "#/definitions/AlertSeverity", + "description": "The severity for alerts created by this alert rule." + }, + "tactics": { + "description": "The tactics of the alert rule template", + "items": { + "$ref": "#/definitions/AttackTactic" + }, + "type": "array" + } + }, + "required": [ + "displayName", + "description", + "status", + "severity", + "alertRulesCreatedByTemplateCount" + ], + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "Fusion" + }, + "Label": { + "description": "Label that will be used to tag and filter on.", + "type": "string" + }, + "MCASDataConnector": { + "allOf": [ + { + "$ref": "#/definitions/DataConnector" + } + ], + "description": "Represents MCAS (Microsoft Cloud App Security) data connector.", + "properties": { + "properties": { + "$ref": "#/definitions/MCASDataConnectorProperties", + "description": "MCAS (Microsoft Cloud App Security) data connector properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "MicrosoftCloudAppSecurity" + }, + "MCASDataConnectorDataTypes": { + "allOf": [ + { + "$ref": "#/definitions/AlertsDataTypeOfDataConnector" + } + ], + "description": "The available data types for MCAS (Microsoft Cloud App Security) data connector.", + "properties": { + "discoveryLogs": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorDataTypeCommon" + } + ], + "description": "Discovery log data type connection.", + "type": "object" + } + }, + "type": "object" + }, + "MCASDataConnectorProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorTenantId" + } + ], + "description": "MCAS (Microsoft Cloud App Security) data connector properties.", + "properties": { + "dataTypes": { + "$ref": "#/definitions/MCASDataConnectorDataTypes", + "description": "The available data types for the connector." + } + }, + "type": "object" + }, + "MDATPDataConnector": { + "allOf": [ + { + "$ref": "#/definitions/DataConnector" + } + ], + "description": "Represents MDATP (Microsoft Defender Advanced Threat Protection) data connector.", + "properties": { + "properties": { + "$ref": "#/definitions/MDATPDataConnectorProperties", + "description": "MDATP (Microsoft Defender Advanced Threat Protection) data connector properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "MicrosoftDefenderAdvancedThreatProtection" + }, + "MDATPDataConnectorProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorTenantId" + }, + { + "$ref": "#/definitions/DataConnectorWithAlertsProperties" + } + ], + "description": "MDATP (Microsoft Defender Advanced Threat Protection) data connector properties.", + "type": "object" + }, + "MicrosoftSecurityIncidentCreationAlertRule": { + "allOf": [ + { + "$ref": "#/definitions/AlertRule" + } + ], + "description": "Represents MicrosoftSecurityIncidentCreation rule.", + "properties": { + "properties": { + "$ref": "#/definitions/MicrosoftSecurityIncidentCreationAlertRuleProperties", + "description": "MicrosoftSecurityIncidentCreation rule properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "MicrosoftSecurityIncidentCreation" + }, + "MicrosoftSecurityIncidentCreationAlertRuleCommonProperties": { + "description": "MicrosoftSecurityIncidentCreation rule common property bag.", + "properties": { + "displayNamesFilter": { + "description": "the alerts' displayNames on which the cases will be generated", + "items": { + "type": "string" + }, + "type": "array" + }, + "productFilter": { + "description": "The alerts' productName on which the cases will be generated", + "enum": [ + "Microsoft Cloud App Security", + "Azure Security Center", + "Azure Advanced Threat Protection", + "Azure Active Directory Identity Protection", + "Azure Security Center for IoT" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "MicrosoftSecurityProductName" + } + }, + "severitiesFilter": { + "description": "the alerts' severities on which the cases will be generated", + "items": { + "$ref": "#/definitions/AlertSeverity" + }, + "type": "array" + } + }, + "required": [ + "productFilter" + ], + "type": "object" + }, + "MicrosoftSecurityIncidentCreationAlertRuleProperties": { + "allOf": [ + { + "$ref": "#/definitions/MicrosoftSecurityIncidentCreationAlertRuleCommonProperties" + } + ], + "description": "MicrosoftSecurityIncidentCreation rule property bag.", + "properties": { + "alertRuleTemplateName": { + "description": "The Name of the alert rule template used to create this rule.", + "type": "string" + }, + "description": { + "description": "The description of the alert rule.", + "type": "string" + }, + "displayName": { + "description": "The display name for alerts created by this alert rule.", + "type": "string" + }, + "enabled": { + "description": "Determines whether this alert rule is enabled or disabled.", + "type": "boolean" + }, + "lastModifiedUtc": { + "description": "The last time that this alert has been modified.", + "format": "date-time", + "readOnly": true, + "type": "string" + } + }, + "required": [ + "displayName", + "enabled", + "productFilter" + ], + "type": "object" + }, + "MicrosoftSecurityIncidentCreationAlertRuleTemplate": { + "allOf": [ + { + "$ref": "#/definitions/AlertRuleTemplate" + } + ], + "description": "Represents MicrosoftSecurityIncidentCreation rule template.", + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AlertRuleTemplatePropertiesBase" + }, + { + "$ref": "#/definitions/MicrosoftSecurityIncidentCreationAlertRuleCommonProperties" + } + ], + "description": "MicrosoftSecurityIncidentCreation rule template properties", + "required": [ + "displayName", + "description", + "createdDateUTC", + "status", + "alertRulesCreatedByTemplateCount", + "productFilter" + ], + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "MicrosoftSecurityIncidentCreation" + }, + "OfficeConsent": { + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "description": "Consent for Office365 tenant that already made.", + "properties": { + "properties": { + "$ref": "#/definitions/OfficeConsentProperties", + "description": "Office consent properties", + "x-ms-client-flatten": true + } + }, + "type": "object" + }, + "OfficeConsentList": { + "description": "List of all the office365 consents.", + "properties": { + "nextLink": { + "description": "URL to fetch the next set of office consents.", + "readOnly": true, + "type": "string" + }, + "value": { + "description": "Array of the consents.", + "items": { + "$ref": "#/definitions/OfficeConsent" + }, + "type": "array" + } + }, + "required": [ + "value" + ] + }, + "OfficeConsentProperties": { + "description": "Consent property bag.", + "properties": { + "tenantId": { + "description": "The tenantId of the Office365 with the consent.", + "type": "string" + }, + "tenantName": { + "description": "The tenant name of the Office365 with the consent.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "OfficeDataConnector": { + "allOf": [ + { + "$ref": "#/definitions/DataConnector" + } + ], + "description": "Represents office data connector.", + "properties": { + "properties": { + "$ref": "#/definitions/OfficeDataConnectorProperties", + "description": "Office data connector properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "Office365" + }, + "OfficeDataConnectorDataTypes": { + "description": "The available data types for office data connector.", + "properties": { + "exchange": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorDataTypeCommon" + } + ], + "description": "Exchange data type connection.", + "type": "object" + }, + "sharePoint": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorDataTypeCommon" + } + ], + "description": "SharePoint data type connection.", + "type": "object" + } + }, + "type": "object" + }, + "OfficeDataConnectorProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorTenantId" + } + ], + "description": "Office data connector properties.", + "properties": { + "dataTypes": { + "$ref": "#/definitions/OfficeDataConnectorDataTypes", + "description": "The available data types for the connector." + } + }, + "type": "object" + }, + "Operation": { + "description": "Operation provided by provider", + "properties": { + "display": { + "description": "Properties of the operation", + "properties": { + "description": { + "description": "Description of the operation", + "type": "string" + }, + "operation": { + "description": "Operation name", + "type": "string" + }, + "provider": { + "description": "Provider name", + "type": "string" + }, + "resource": { + "description": "Resource name", + "type": "string" + } + }, + "type": "object" + }, + "name": { + "description": "Name of the operation", + "type": "string" + } + } + }, + "OperationsList": { + "description": "Lists the operations available in the SecurityInsights RP.", + "properties": { + "nextLink": { + "description": "URL to fetch the next set of operations.", + "type": "string" + }, + "value": { + "description": "Array of operations", + "items": { + "$ref": "#/definitions/Operation" + }, + "type": "array" + } + }, + "required": [ + "value" + ] + }, + "Resource": { + "description": "An azure resource object", + "properties": { + "id": { + "description": "Azure resource Id", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Azure resource name", + "readOnly": true, + "type": "string" + }, + "type": { + "description": "Azure resource type", + "readOnly": true, + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "ResourceWithEtag": { + "description": "An azure resource object with an Etag property", + "properties": { + "id": { + "description": "Azure resource Id", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Azure resource name", + "readOnly": true, + "type": "string" + }, + "type": { + "description": "Azure resource type", + "readOnly": true, + "type": "string" + }, + "etag": { + "description": "Etag of the azure resource", + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "ScheduledAlertRule": { + "allOf": [ + { + "$ref": "#/definitions/AlertRule" + } + ], + "description": "Represents scheduled alert rule.", + "properties": { + "properties": { + "$ref": "#/definitions/ScheduledAlertRuleProperties", + "description": "Scheduled alert rule properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "Scheduled" + }, + "ScheduledAlertRuleCommonProperties": { + "description": "Schedule alert rule template property bag.", + "properties": { + "query": { + "description": "The query that creates alerts for this rule.", + "type": "string" + }, + "queryFrequency": { + "description": "The frequency (in ISO 8601 duration format) for this alert rule to run.", + "format": "duration", + "type": "string" + }, + "queryPeriod": { + "description": "The period (in ISO 8601 duration format) that this alert rule looks at.", + "format": "duration", + "type": "string" + }, + "severity": { + "$ref": "#/definitions/AlertSeverity", + "description": "The severity for alerts created by this alert rule." + }, + "triggerOperator": { + "$ref": "#/definitions/AlertRuleTriggerOperator", + "description": "The operation against the threshold that triggers alert rule." + }, + "triggerThreshold": { + "description": "The threshold triggers this alert rule.", + "type": "integer" + } + }, + "type": "object" + }, + "ScheduledAlertRuleProperties": { + "allOf": [ + { + "$ref": "#/definitions/ScheduledAlertRuleCommonProperties" + } + ], + "description": "Scheduled alert rule base property bag.", + "properties": { + "alertRuleTemplateName": { + "description": "The Name of the alert rule template used to create this rule.", + "type": "string" + }, + "description": { + "description": "The description of the alert rule.", + "type": "string" + }, + "displayName": { + "description": "The display name for alerts created by this alert rule.", + "type": "string" + }, + "enabled": { + "description": "Determines whether this alert rule is enabled or disabled.", + "type": "boolean" + }, + "lastModifiedUtc": { + "description": "The last time that this alert rule has been modified.", + "format": "date-time", + "readOnly": true, + "type": "string" + }, + "suppressionDuration": { + "description": "The suppression (in ISO 8601 duration format) to wait since last time this alert rule been triggered.", + "format": "duration", + "type": "string" + }, + "suppressionEnabled": { + "description": "Determines whether the suppression for this alert rule is enabled or disabled.", + "type": "boolean" + }, + "tactics": { + "description": "The tactics of the alert rule", + "items": { + "$ref": "#/definitions/AttackTactic" + }, + "type": "array" + } + }, + "required": [ + "displayName", + "enabled", + "severity", + "query", + "queryFrequency", + "queryPeriod", + "triggerOperator", + "triggerThreshold", + "suppressionEnabled", + "suppressionDuration" + ], + "type": "object" + }, + "ScheduledAlertRuleTemplate": { + "allOf": [ + { + "$ref": "#/definitions/AlertRuleTemplate" + } + ], + "description": "Represents scheduled alert rule template.", + "properties": { + "properties": { + "allOf": [ + { + "$ref": "#/definitions/AlertRuleTemplatePropertiesBase" + }, + { + "$ref": "#/definitions/ScheduledAlertRuleCommonProperties" + } + ], + "description": "Scheduled alert rule template properties", + "properties": { + "tactics": { + "description": "The tactics of the alert rule template", + "items": { + "$ref": "#/definitions/AttackTactic" + }, + "type": "array" + } + }, + "required": [ + "displayName", + "description", + "status", + "alertRulesCreatedByTemplateCount", + "severity", + "query", + "queryFrequency", + "queryPeriod", + "triggerOperator", + "triggerThreshold" + ], + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "Scheduled" + }, + "Settings": { + "allOf": [ + { + "$ref": "#/definitions/ResourceWithEtag" + }, + { + "$ref": "#/definitions/SettingsKind" + } + ], + "description": "The Setting.", + "discriminator": "kind", + "required": [ + "kind" + ], + "type": "object" + }, + "SettingsKind": { + "description": "Describes an Azure resource with kind.", + "properties": { + "kind": { + "description": "The kind of the setting", + "enum": [ + "UebaSettings", + "ToggleSettings" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "SettingKind" + } + } + }, + "type": "object" + }, + "TIDataConnector": { + "allOf": [ + { + "$ref": "#/definitions/DataConnector" + } + ], + "description": "Represents threat intelligence data connector.", + "properties": { + "properties": { + "$ref": "#/definitions/TIDataConnectorProperties", + "description": "TI (Threat Intelligence) data connector properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "ThreatIntelligence" + }, + "TIDataConnectorDataTypes": { + "description": "The available data types for TI (Threat Intelligence) data connector.", + "properties": { + "indicators": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorDataTypeCommon" + } + ], + "description": "Data type for indicators connection.", + "type": "object" + } + }, + "type": "object" + }, + "TIDataConnectorProperties": { + "allOf": [ + { + "$ref": "#/definitions/DataConnectorTenantId" + } + ], + "description": "TI (Threat Intelligence) data connector properties.", + "properties": { + "dataTypes": { + "$ref": "#/definitions/TIDataConnectorDataTypes", + "description": "The available data types for the connector." + } + }, + "type": "object" + }, + "ThreatIntelligence": { + "description": "ThreatIntelligence property bag.", + "properties": { + "confidence": { + "description": "Confidence (must be between 0 and 1)", + "format": "double", + "readOnly": true, + "type": "number" + }, + "providerName": { + "description": "Name of the provider from whom this Threat Intelligence information was received", + "readOnly": true, + "type": "string" + }, + "reportLink": { + "description": "Report link", + "readOnly": true, + "type": "string" + }, + "threatDescription": { + "description": "Threat description (free text)", + "readOnly": true, + "type": "string" + }, + "threatName": { + "description": "Threat name (e.g. \"Jedobot malware\")", + "readOnly": true, + "type": "string" + }, + "threatType": { + "description": "Threat type (e.g. \"Botnet\")", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ToggleSettings": { + "allOf": [ + { + "$ref": "#/definitions/Settings" + } + ], + "description": "Settings with single toggle.", + "properties": { + "properties": { + "$ref": "#/definitions/ToggleSettingsProperties", + "description": "toggle properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "ToggleSettings" + }, + "ToggleSettingsProperties": { + "description": "toggle property bag.", + "properties": { + "isEnabled": { + "description": "Determines whether the setting is enable or disabled.", + "type": "boolean" + } + }, + "type": "object" + }, + "UebaSettings": { + "allOf": [ + { + "$ref": "#/definitions/Settings" + } + ], + "description": "Represents settings for User and Entity Behavior Analytics enablement.", + "properties": { + "properties": { + "$ref": "#/definitions/UebaSettingsProperties", + "description": "User and Entity Behavior Analytics settings properties", + "x-ms-client-flatten": true + } + }, + "type": "object", + "x-ms-discriminator-value": "UebaSettings" + }, + "UebaSettingsProperties": { + "description": "User and Entity Behavior Analytics settings property bag.", + "properties": { + "atpLicenseStatus": { + "description": "Determines whether the tenant has ATP (Advanced Threat Protection) license.", + "enum": [ + "Enabled", + "Disabled" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "LicenseStatus" + } + }, + "isEnabled": { + "description": "Determines whether User and Entity Behavior Analytics is enabled for this workspace.", + "type": "boolean" + }, + "statusInMcas": { + "description": "Determines whether User and Entity Behavior Analytics is enabled from MCAS (Microsoft Cloud App Security).", + "enum": [ + "Enabled", + "Disabled" + ], + "readOnly": true, + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "StatusInMcas" + } + } + }, + "type": "object" + }, + "UserInfo": { + "description": "User information that made some action", + "properties": { + "email": { + "description": "The email of the user.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "The name of the user.", + "readOnly": true, + "type": "string" + }, + "objectId": { + "description": "The object id of the user.", + "format": "uuid", + "type": "string", + "x-nullable": true + } + }, + "required": [ + "objectId" + ], + "type": "object" + }, + "IncidentInfo": { + "description": "Describes related incident information for the bookmark", + "properties": { + "incidentId": { + "description": "Incident Id", + "type": "string" + }, + "severity": { + "description": "The severity of the incident", + "enum": [ + "Critical", + "High", + "Medium", + "Low", + "Informational" + ], + "type": "string", + "x-ms-enum": { + "modelAsString": true, + "name": "IncidentSeverity", + "values": [ + { + "description": "Critical severity", + "value": "Critical" + }, + { + "description": "High severity", + "value": "High" + }, + { + "description": "Medium severity", + "value": "Medium" + }, + { + "description": "Low severity", + "value": "Low" + }, + { + "description": "Informational severity", + "value": "Informational" + } + ] + } + }, + "title": { + "description": "The title of the incident", + "type": "string" + }, + "relationName": { + "description": "Relation Name", + "type": "string" + } + }, + "required": [ + "incidentId", + "severity", + "title", + "relationName" + ], + "type": "object" + } + }, + "parameters": { + "Action": { + "description": "The action", + "in": "body", + "name": "action", + "required": true, + "schema": { + "$ref": "#/definitions/ActionRequest" + }, + "x-ms-parameter-location": "method" + }, + "ActionId": { + "description": "Action ID", + "in": "path", + "name": "actionId", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "AggregationsName": { + "description": "The aggregation name. Supports - Cases", + "in": "path", + "name": "aggregationsName", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "AlertRule": { + "description": "The alert rule", + "in": "body", + "name": "alertRule", + "required": true, + "schema": { + "$ref": "#/definitions/AlertRule" + }, + "x-ms-parameter-location": "method" + }, + "AlertRuleTemplateId": { + "description": "Alert rule template ID", + "in": "path", + "name": "alertRuleTemplateId", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ApiVersion": { + "description": "API version for the operation", + "enum": [ + "2020-01-01" + ], + "in": "query", + "name": "api-version", + "required": true, + "type": "string" + }, + "ConsentId": { + "description": "consent ID", + "in": "path", + "name": "consentId", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "DataConnector": { + "description": "The data connector", + "in": "body", + "name": "dataConnector", + "required": true, + "schema": { + "$ref": "#/definitions/DataConnector" + }, + "x-ms-parameter-location": "method" + }, + "DataConnectorId": { + "description": "Connector ID", + "in": "path", + "name": "dataConnectorId", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "EntityId": { + "description": "entity ID", + "in": "path", + "name": "entityId", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "EntityQueryId": { + "description": "entity query ID", + "in": "path", + "name": "entityQueryId", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ODataFilter": { + "description": "Filters the results, based on a Boolean condition. Optional.", + "in": "query", + "name": "$filter", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ODataOrderBy": { + "description": "Sorts the results. Optional.", + "in": "query", + "name": "$orderby", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ODataSkipToken": { + "description": "Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls. Optional.", + "in": "query", + "name": "$skipToken", + "required": false, + "type": "string", + "x-ms-parameter-location": "method" + }, + "ODataTop": { + "description": "Returns only the first n results. Optional.", + "format": "int32", + "in": "query", + "name": "$top", + "required": false, + "type": "integer", + "x-ms-parameter-location": "method" + }, + "ResourceGroupName": { + "description": "The name of the resource group within the user's subscription. The name is case insensitive.", + "in": "path", + "maxLength": 90, + "minLength": 1, + "name": "resourceGroupName", + "pattern": "^[-\\w\\._\\(\\)]+$", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "RuleId": { + "description": "Alert rule ID", + "in": "path", + "name": "ruleId", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "Settings": { + "description": "The setting", + "in": "body", + "name": "settings", + "required": true, + "schema": { + "$ref": "#/definitions/Settings" + }, + "x-ms-parameter-location": "method" + }, + "SettingsName": { + "description": "The setting name. Supports- Fusion, UEBA", + "in": "path", + "name": "settingsName", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "SubscriptionId": { + "description": "Azure subscription ID", + "in": "path", + "name": "subscriptionId", + "pattern": "^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$", + "required": true, + "type": "string" + }, + "WorkspaceName": { + "description": "The name of the workspace.", + "in": "path", + "maxLength": 90, + "minLength": 1, + "name": "workspaceName", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/actions/CreateActionOfAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/actions/CreateActionOfAlertRule.json new file mode 100644 index 000000000000..00c3cda73a97 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/actions/CreateActionOfAlertRule.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "ruleId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "actionId": "912bec42-cb66-4c03-ac63-1761b6898c3e", + "action": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5/actions/912bec42-cb66-4c03-ac63-1761b6898c3e", + "name": "912bec42-cb66-4c03-ac63-1761b6898c3e", + "type": "Microsoft.SecurityInsights/alertRules/actions", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "triggerUri": "https://prod-31.northcentralus.logic.azure.com:443/workflows/cd3765391efd48549fd7681ded1d48d7/triggers/manual/paths/invoke?api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=signature", + "logicAppResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.Logic/workflows/MyAlerts" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5/actions/912bec42-cb66-4c03-ac63-1761b6898c3e", + "name": "912bec42-cb66-4c03-ac63-1761b6898c3e", + "type": "Microsoft.SecurityInsights/alertRules/actions", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "workflowId": "cd3765391efd48549fd7681ded1d48d7", + "logicAppResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.Logic/workflows/MyAlerts" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5/actions/912bec42-cb66-4c03-ac63-1761b6898c3e", + "name": "912bec42-cb66-4c03-ac63-1761b6898c3e", + "type": "Microsoft.SecurityInsights/alertRules/actions", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "workflowId": "cd3765391efd48549fd7681ded1d48d7", + "logicAppResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.Logic/workflows/MyAlerts" + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/actions/DeleteActionOfAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/actions/DeleteActionOfAlertRule.json new file mode 100644 index 000000000000..7171f40ea567 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/actions/DeleteActionOfAlertRule.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "ruleId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "actionId": "912bec42-cb66-4c03-ac63-1761b6898c3e" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/actions/GetActionOfAlertRuleById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/actions/GetActionOfAlertRuleById.json new file mode 100644 index 000000000000..8e1e384e1a67 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/actions/GetActionOfAlertRuleById.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "ruleId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "actionId": "912bec42-cb66-4c03-ac63-1761b6898c3e" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5/actions/912bec42-cb66-4c03-ac63-1761b6898c3e", + "name": "912bec42-cb66-4c03-ac63-1761b6898c3e", + "type": "Microsoft.SecurityInsights/alertRules/actions", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "workflowId": "cd3765391efd48549fd7681ded1d48d7", + "logicAppResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.Logic/workflows/MyAlerts" + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/actions/GetAllActionsByAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/actions/GetAllActionsByAlertRule.json new file mode 100644 index 000000000000..3fd9a05dfb8d --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/actions/GetAllActionsByAlertRule.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "ruleId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5/actions/912bec42-cb66-4c03-ac63-1761b6898c3e", + "name": "912bec42-cb66-4c03-ac63-1761b6898c3e", + "type": "Microsoft.SecurityInsights/alertRules/actions", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "workflowId": "cd3765391efd48549fd7681ded1d48d7", + "logicAppResourceId": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.Logic/workflows/MyAlerts" + } + } + ] + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/CreateFusionAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/CreateFusionAlertRule.json new file mode 100644 index 000000000000..ef362004531b --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/CreateFusionAlertRule.json @@ -0,0 +1,66 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "ruleId": "myFirstFusionRule", + "alertRule": { + "kind": "Fusion", + "etag": "3d00c3ca-0000-0100-0000-5d42d5010000", + "properties": { + "enabled": "true", + "alertRuleTemplateName": "f71aba3d-28fb-450b-b192-4e76a83015c8" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/myFirstFusionRule", + "name": "myFirstFusionRule", + "etag": "\"260090e2-0000-0d00-0000-5d6fb8670000\"", + "type": "Microsoft.SecurityInsights/alertRules", + "kind": "Fusion", + "properties": { + "displayName": "Advanced Multi-Stage Attack Detection", + "description": "In this mode, Sentinel combines low fidelity alerts, which themselves may not be actionable, and events across multiple products, into high fidelity security interesting incidents. The system looks at multiple products to produce actionable incidents. Custom tailored to each tenant, Fusion not only reduces false positive rates but also can detect attacks with limited or missing information. \nIncidents generated by Fusion system will encase two or more alerts. By design, Fusion incidents are low volume, high fidelity and will be high severity, which is why Fusion is turned ON by default in Azure Sentinel.\n\nFor Fusion to work, please configure the following data sources in Data Connectors tab:\nRequired - Azure Active Directory Identity Protection\nRequired - Microsoft Cloud App Security\nIf Available - Palo Alto Network\n\nFor full list of scenarios covered by Fusion, and detail instructions on how to configure the required data sources, go to aka.ms/SentinelFusion", + "alertRuleTemplateName": "f71aba3d-28fb-450b-b192-4e76a83015c8", + "tactics": [ + "Persistence", + "LateralMovement", + "Exfiltration", + "CommandAndControl" + ], + "severity": "High", + "enabled": true, + "lastModifiedUtc": "2019-09-04T13:13:11.5340061Z" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/myFirstFusionRule", + "name": "myFirstFusionRule", + "etag": "\"260090e2-0000-0d00-0000-5d6fb8670000\"", + "type": "Microsoft.SecurityInsights/alertRules", + "kind": "Fusion", + "properties": { + "displayName": "Advanced Multi-Stage Attack Detection", + "description": "In this mode, Sentinel combines low fidelity alerts, which themselves may not be actionable, and events across multiple products, into high fidelity security interesting incidents. The system looks at multiple products to produce actionable incidents. Custom tailored to each tenant, Fusion not only reduces false positive rates but also can detect attacks with limited or missing information. \nIncidents generated by Fusion system will encase two or more alerts. By design, Fusion incidents are low volume, high fidelity and will be high severity, which is why Fusion is turned ON by default in Azure Sentinel.\n\nFor Fusion to work, please configure the following data sources in Data Connectors tab:\nRequired - Azure Active Directory Identity Protection\nRequired - Microsoft Cloud App Security\nIf Available - Palo Alto Network\n\nFor full list of scenarios covered by Fusion, and detail instructions on how to configure the required data sources, go to aka.ms/SentinelFusion", + "alertRuleTemplateName": "f71aba3d-28fb-450b-b192-4e76a83015c8", + "tactics": [ + "Persistence", + "LateralMovement", + "Exfiltration", + "CommandAndControl" + ], + "severity": "High", + "enabled": true, + "lastModifiedUtc": "2019-09-04T13:13:11.5340061Z" + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/CreateMicrosoftSecurityIncidentCreationAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/CreateMicrosoftSecurityIncidentCreationAlertRule.json new file mode 100644 index 000000000000..5f6770266197 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/CreateMicrosoftSecurityIncidentCreationAlertRule.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "ruleId": "microsoftSecurityIncidentCreationRuleExample", + "alertRule": { + "etag": "\"260097e0-0000-0d00-0000-5d6fa88f0000\"", + "kind": "MicrosoftSecurityIncidentCreation", + "properties": { + "productFilter": "Microsoft Cloud App Security", + "displayName": "testing displayname", + "enabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExample", + "name": "microsoftSecurityIncidentCreationRuleExample", + "etag": "\"260097e0-0000-0d00-0000-5d6fa88f0000\"", + "type": "Microsoft.SecurityInsights/alertRules", + "kind": "MicrosoftSecurityIncidentCreation", + "properties": { + "productFilter": "Microsoft Cloud App Security", + "severitiesFilter": null, + "displayNamesFilter": null, + "displayName": "testing displayname", + "enabled": true, + "description": null, + "alertRuleTemplateName": null, + "lastModifiedUtc": "2019-09-04T12:05:35.7296311Z" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExample", + "name": "microsoftSecurityIncidentCreationRuleExample", + "etag": "\"260097e0-0000-0d00-0000-5d6fa88f0000\"", + "type": "Microsoft.SecurityInsights/alertRules", + "kind": "MicrosoftSecurityIncidentCreation", + "properties": { + "productFilter": "Microsoft Cloud App Security", + "severitiesFilter": null, + "displayNamesFilter": null, + "displayName": "testing displayname", + "enabled": true, + "description": null, + "alertRuleTemplateName": null, + "lastModifiedUtc": "2019-09-04T12:05:35.7296311Z" + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/CreateScheduledAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/CreateScheduledAlertRule.json new file mode 100644 index 000000000000..419d7e30bf09 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/CreateScheduledAlertRule.json @@ -0,0 +1,89 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "ruleId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "alertRule": { + "kind": "Scheduled", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "displayName": "Rule2", + "description": "", + "severity": "High", + "enabled": true, + "tactics": [ + "Persistence", + "LateralMovement" + ], + "query": "ProtectionStatus | extend HostCustomEntity = Computer | extend IPCustomEntity = ComputerIP_Hidden", + "queryFrequency": "PT1H", + "queryPeriod": "P2DT1H30M", + "triggerOperator": "GreaterThan", + "triggerThreshold": 0, + "suppressionDuration": "PT1H", + "suppressionEnabled": false + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "type": "Microsoft.SecurityInsights/alertRules", + "kind": "Scheduled", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "alertRuleTemplateName": null, + "displayName": "Rule2", + "description": "", + "severity": "High", + "enabled": true, + "tactics": [ + "Persistence", + "LateralMovement" + ], + "query": "ProtectionStatus | extend HostCustomEntity = Computer | extend IPCustomEntity = ComputerIP_Hidden", + "queryFrequency": "PT1H", + "queryPeriod": "P2DT1H30M", + "triggerOperator": "GreaterThan", + "triggerThreshold": 0, + "suppressionDuration": "PT1H", + "suppressionEnabled": false, + "lastModifiedUtc": "2019-01-01T13:15:30Z" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "type": "Microsoft.SecurityInsights/alertRules", + "kind": "Scheduled", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "alertRuleTemplateName": null, + "displayName": "Rule2", + "description": "", + "severity": "High", + "enabled": true, + "tactics": [ + "Persistence", + "LateralMovement" + ], + "query": "ProtectionStatus | extend HostCustomEntity = Computer | extend IPCustomEntity = ComputerIP_Hidden", + "queryFrequency": "PT1H", + "queryPeriod": "P2DT1H30M", + "triggerOperator": "GreaterThan", + "triggerThreshold": 0, + "suppressionDuration": "PT1H", + "suppressionEnabled": false, + "lastModifiedUtc": "2019-01-01T13:15:30Z" + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/DeleteAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/DeleteAlertRule.json new file mode 100644 index 000000000000..af8489176a37 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/DeleteAlertRule.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "ruleId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/GetAllAlertRules.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/GetAllAlertRules.json new file mode 100644 index 000000000000..8278214a32f3 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/GetAllAlertRules.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "type": "Microsoft.SecurityInsights/alertRules", + "kind": "Scheduled", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "alertRuleTemplateName": null, + "displayName": "Rule2", + "description": "", + "severity": "High", + "enabled": true, + "tactics": [ + "Persistence", + "LateralMovement" + ], + "query": "ProtectionStatus | extend HostCustomEntity = Computer | extend IPCustomEntity = ComputerIP_Hidden", + "queryFrequency": "PT1H", + "queryPeriod": "P2DT1H30M", + "triggerOperator": "GreaterThan", + "triggerThreshold": 0, + "suppressionDuration": "PT1H", + "suppressionEnabled": false, + "lastModifiedUtc": "2019-01-01T13:15:30Z" + } + }, + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExample", + "name": "microsoftSecurityIncidentCreationRuleExample", + "etag": "\"260097e0-0000-0d00-0000-5d6fa88f0000\"", + "type": "Microsoft.SecurityInsights/alertRules", + "kind": "MicrosoftSecurityIncidentCreation", + "properties": { + "productFilter": "Microsoft Cloud App Security", + "severitiesFilter": null, + "displayNamesFilter": null, + "displayName": "testing displayname", + "enabled": true, + "description": null, + "alertRuleTemplateName": null, + "lastModifiedUtc": "2019-09-04T12:05:35.7296311Z" + } + }, + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/myFirstFusionRule", + "name": "myFirstFusionRule", + "etag": "\"25005c11-0000-0d00-0000-5d6cc0e20000\"", + "type": "Microsoft.SecurityInsights/alertRules", + "kind": "Fusion", + "properties": { + "displayName": "Advanced Multi-Stage Attack Detection", + "description": "In this mode, Sentinel combines low fidelity alerts, which themselves may not be actionable, and events across multiple products, into high fidelity security interesting incidents. The system looks at multiple products to produce actionable incidents. Custom tailored to each tenant, Fusion not only reduces false positive rates but also can detect attacks with limited or missing information. \nIncidents generated by Fusion system will encase two or more alerts. By design, Fusion incidents are low volume, high fidelity and will be high severity, which is why Fusion is turned ON by default in Azure Sentinel.\n\nFor Fusion to work, please configure the following data sources in Data Connectors tab:\nRequired - Azure Active Directory Identity Protection\nRequired - Microsoft Cloud App Security\nIf Available - Palo Alto Network\n\nFor full list of scenarios covered by Fusion, and detail instructions on how to configure the required data sources, go to aka.ms/SentinelFusion", + "alertRuleTemplateName": "f71aba3d-28fb-450b-b192-4e76a83015c8", + "tactics": [ + "Persistence", + "LateralMovement", + "Exfiltration", + "CommandAndControl" + ], + "severity": "High", + "enabled": false, + "lastModifiedUtc": "2019-09-02T07:12:34.9065092Z" + } + } + ] + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/GetFusionAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/GetFusionAlertRule.json new file mode 100644 index 000000000000..7c12477f716d --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/GetFusionAlertRule.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "ruleId": "myFirstFusionRule" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/myFirstFusionRule", + "name": "myFirstFusionRule", + "etag": "\"260090e2-0000-0d00-0000-5d6fb8670000\"", + "type": "Microsoft.SecurityInsights/alertRules", + "kind": "Fusion", + "properties": { + "displayName": "Advanced Multi-Stage Attack Detection", + "description": "In this mode, Sentinel combines low fidelity alerts, which themselves may not be actionable, and events across multiple products, into high fidelity security interesting incidents. The system looks at multiple products to produce actionable incidents. Custom tailored to each tenant, Fusion not only reduces false positive rates but also can detect attacks with limited or missing information. \nIncidents generated by Fusion system will encase two or more alerts. By design, Fusion incidents are low volume, high fidelity and will be high severity, which is why Fusion is turned ON by default in Azure Sentinel.\n\nFor Fusion to work, please configure the following data sources in Data Connectors tab:\nRequired - Azure Active Directory Identity Protection\nRequired - Microsoft Cloud App Security\nIf Available - Palo Alto Network\n\nFor full list of scenarios covered by Fusion, and detail instructions on how to configure the required data sources, go to aka.ms/SentinelFusion", + "alertRuleTemplateName": "f71aba3d-28fb-450b-b192-4e76a83015c8", + "tactics": [ + "Persistence", + "LateralMovement", + "Exfiltration", + "CommandAndControl" + ], + "severity": "High", + "enabled": true, + "lastModifiedUtc": "2019-09-04T13:13:11.5340061Z" + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/GetMicrosoftSecurityIncidentCreationAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/GetMicrosoftSecurityIncidentCreationAlertRule.json new file mode 100644 index 000000000000..3260afe2af19 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/GetMicrosoftSecurityIncidentCreationAlertRule.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "ruleId": "microsoftSecurityIncidentCreationRuleExample" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/microsoftSecurityIncidentCreationRuleExample", + "name": "microsoftSecurityIncidentCreationRuleExample", + "etag": "\"260097e0-0000-0d00-0000-5d6fa88f0000\"", + "type": "Microsoft.SecurityInsights/alertRules", + "kind": "MicrosoftSecurityIncidentCreation", + "properties": { + "productFilter": "Microsoft Cloud App Security", + "severitiesFilter": null, + "displayNamesFilter": null, + "displayName": "testing displayname", + "enabled": true, + "description": null, + "alertRuleTemplateName": null, + "lastModifiedUtc": "2019-09-04T12:05:35.7296311Z" + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/GetScheduledAlertRule.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/GetScheduledAlertRule.json new file mode 100644 index 000000000000..c3b74f069693 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/alertRules/GetScheduledAlertRule.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "ruleId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/alertRules/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "type": "Microsoft.SecurityInsights/alertRules", + "kind": "Scheduled", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "alertRuleTemplateName": null, + "displayName": "Rule2", + "description": "", + "severity": "High", + "enabled": true, + "tactics": [ + "Persistence", + "LateralMovement" + ], + "query": "ProtectionStatus | extend HostCustomEntity = Computer | extend IPCustomEntity = ComputerIP_Hidden", + "queryFrequency": "PT1H", + "queryPeriod": "P2DT1H30M", + "triggerOperator": "GreaterThan", + "triggerThreshold": 0, + "suppressionDuration": "PT1H", + "suppressionEnabled": false, + "lastModifiedUtc": "2019-01-01T13:15:30Z" + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/CreateOfficeDataConnetor.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/CreateOfficeDataConnetor.json new file mode 100644 index 000000000000..8b13b4b1723b --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/CreateOfficeDataConnetor.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "dataConnectorId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "dataConnector": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "Office365", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "sharePoint": { + "state": "Enabled" + }, + "exchange": { + "state": "Enabled" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "Office365", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "sharePoint": { + "state": "Enabled" + }, + "exchange": { + "state": "Enabled" + } + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "Office365", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "sharePoint": { + "state": "Enabled" + }, + "exchange": { + "state": "Enabled" + } + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/DeleteOfficeDataConnetor.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/DeleteOfficeDataConnetor.json new file mode 100644 index 000000000000..c6dfa5a562fc --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/DeleteOfficeDataConnetor.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "dataConnectorId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetAmazonWebServicesCloudTrailById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetAmazonWebServicesCloudTrailById.json new file mode 100644 index 000000000000..fdcae39200b9 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetAmazonWebServicesCloudTrailById.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "dataConnectorId": "c345bf40-8509-4ed2-b947-50cb773aaf04" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c345bf40-8509-4ed2-b947-50cb773aaf04", + "name": "c345bf40-8509-4ed2-b947-50cb773aaf04", + "type": "Microsoft.SecurityInsights/dataConnectors", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "kind": "AmazonWebServicesCloudTrail", + "properties": { + "awsRoleArn": "myAwsRoleArn", + "dataTypes": { + "logs": { + "state": "Enabled" + } + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetAzureActiveDirectoryById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetAzureActiveDirectoryById.json new file mode 100644 index 000000000000..75a5325cb3ac --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetAzureActiveDirectoryById.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "dataConnectorId": "f0cd27d2-5f03-4c06-ba31-d2dc82dcb51d" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/f0cd27d2-5f03-4c06-ba31-d2dc82dcb51d", + "name": "f0cd27d2-5f03-4c06-ba31-d2dc82dcb51d", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "AzureActiveDirectory", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "alerts": { + "state": "Enabled" + } + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetAzureAdvancedThreatProtectionById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetAzureAdvancedThreatProtectionById.json new file mode 100644 index 000000000000..08991fc9ee84 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetAzureAdvancedThreatProtectionById.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "dataConnectorId": "07e42cb3-e658-4e90-801c-efa0f29d3d44" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/07e42cb3-e658-4e90-801c-efa0f29d3d44", + "name": "07e42cb3-e658-4e90-801c-efa0f29d3d44", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "AzureAdvancedThreatProtection", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "alerts": { + "state": "Enabled" + } + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetAzureSecurityCenterById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetAzureSecurityCenterById.json new file mode 100644 index 000000000000..69f572c44756 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetAzureSecurityCenterById.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "dataConnectorId": "763f9fa1-c2d3-4fa2-93e9-bccd4899aa12" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/763f9fa1-c2d3-4fa2-93e9-bccd4899aa12", + "name": "763f9fa1-c2d3-4fa2-93e9-bccd4899aa12", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "AzureSecurityCenter", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "subscriptionId": "c0688291-89d7-4bed-87a2-a7b1bff43f4c", + "dataTypes": { + "alerts": { + "state": "Enabled" + } + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetDataConnectors.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetDataConnectors.json new file mode 100644 index 000000000000..0f46da365092 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetDataConnectors.json @@ -0,0 +1,143 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/763f9fa1-c2d3-4fa2-93e9-bccd4899aa12", + "name": "763f9fa1-c2d3-4fa2-93e9-bccd4899aa12", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "AzureSecurityCenter", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "dataTypes": { + "alerts": { + "state": "Enabled" + } + } + } + }, + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c345bf40-8509-4ed2-b947-50cb773aaf04", + "name": "c345bf40-8509-4ed2-b947-50cb773aaf04", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "ThreatIntelligence", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "indicators": { + "state": "Enabled" + } + } + } + }, + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/f0cd27d2-5f03-4c06-ba31-d2dc82dcb51d", + "name": "f0cd27d2-5f03-4c06-ba31-d2dc82dcb51d", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "AzureActiveDirectory", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "alerts": { + "state": "Enabled" + } + } + } + }, + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "Office365", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "sharePoint": { + "state": "Enabled" + }, + "exchange": { + "state": "Enabled" + } + } + } + }, + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/b96d014d-b5c2-4a01-9aba-a8058f629d42", + "name": "b96d014d-b5c2-4a01-9aba-a8058f629d42", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "MicrosoftCloudAppSecurity", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "alerts": { + "state": "Enabled" + }, + "discoveryLogs": { + "state": "Enabled" + } + } + } + }, + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/07e42cb3-e658-4e90-801c-efa0f29d3d44", + "name": "07e42cb3-e658-4e90-801c-efa0f29d3d44", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "AzureAdvancedThreatProtection", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "alerts": { + "state": "Enabled" + } + } + } + }, + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c345bf40-8509-4ed2-b947-50cb773aaf04", + "name": "c345bf40-8509-4ed2-b947-50cb773aaf04", + "type": "Microsoft.SecurityInsights/dataConnectors", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "kind": "AmazonWebServicesCloudTrail", + "properties": { + "awsRoleArn": "myAwsRoleArn", + "dataTypes": { + "logs": { + "state": "Enabled" + } + } + } + }, + { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/06b3ccb8-1384-4bcc-aec7-852f6d57161b", + "name": "06b3ccb8-1384-4bcc-aec7-852f6d57161b", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "MicrosoftDefenderAdvancedThreatProtection", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "alerts": { + "state": "Enabled" + } + } + } + } + ] + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetMicrosoftCloudAppSecurityById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetMicrosoftCloudAppSecurityById.json new file mode 100644 index 000000000000..8dab3597a1fa --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetMicrosoftCloudAppSecurityById.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "dataConnectorId": "b96d014d-b5c2-4a01-9aba-a8058f629d42" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/b96d014d-b5c2-4a01-9aba-a8058f629d42", + "name": "b96d014d-b5c2-4a01-9aba-a8058f629d42", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "MicrosoftCloudAppSecurity", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "alerts": { + "state": "Enabled" + }, + "discoveryLogs": { + "state": "Enabled" + } + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetMicrosoftDefenderAdvancedThreatProtectionById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetMicrosoftDefenderAdvancedThreatProtectionById.json new file mode 100644 index 000000000000..57d265c307c6 --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetMicrosoftDefenderAdvancedThreatProtectionById.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalInsights", + "dataConnectorId": "06b3ccb8-1384-4bcc-aec7-852f6d57161b" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/06b3ccb8-1384-4bcc-aec7-852f6d57161b", + "name": "06b3ccb8-1384-4bcc-aec7-852f6d57161b", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "MicrosoftDefenderAdvancedThreatProtection", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "alerts": { + "state": "Enabled" + } + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetOfficeDataConnetorById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetOfficeDataConnetorById.json new file mode 100644 index 000000000000..14db64f4c8cf --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetOfficeDataConnetorById.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "dataConnectorId": "73e01a99-5cd7-4139-a149-9f2736ff2ab5" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "name": "73e01a99-5cd7-4139-a149-9f2736ff2ab5", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "Office365", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "sharePoint": { + "state": "Enabled" + }, + "exchange": { + "state": "Enabled" + } + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetThreatIntelligenceById.json b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetThreatIntelligenceById.json new file mode 100644 index 000000000000..6c6fad0178de --- /dev/null +++ b/specification/securityinsights/resource-manager/Microsoft.SecurityInsights/stable/2020-01-01/examples/dataConnectors/GetThreatIntelligenceById.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2020-01-01", + "subscriptionId": "d0cfe6b2-9ac0-4464-9919-dccaee2e48c0", + "resourceGroupName": "myRg", + "workspaceName": "myWorkspace", + "operationalInsightsResourceProvider": "Microsoft.OperationalIinsights", + "dataConnectorId": "c345bf40-8509-4ed2-b947-50cb773aaf04" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/d0cfe6b2-9ac0-4464-9919-dccaee2e48c0/resourceGroups/myRg/providers/Microsoft.OperationalIinsights/workspaces/myWorkspace/providers/Microsoft.SecurityInsights/dataConnectors/c345bf40-8509-4ed2-b947-50cb773aaf04", + "name": "c345bf40-8509-4ed2-b947-50cb773aaf04", + "type": "Microsoft.SecurityInsights/dataConnectors", + "kind": "ThreatIntelligence", + "etag": "\"0300bf09-0000-0000-0000-5c37296e0000\"", + "properties": { + "tenantId": "2070ecc9-b4d5-4ae4-adaa-936fa1954fa8", + "dataTypes": { + "indicators": { + "state": "Enabled" + } + } + } + } + } + } +} diff --git a/specification/securityinsights/resource-manager/readme.md b/specification/securityinsights/resource-manager/readme.md index 6cb5a6afbfae..a95268a0903a 100644 --- a/specification/securityinsights/resource-manager/readme.md +++ b/specification/securityinsights/resource-manager/readme.md @@ -35,6 +35,22 @@ These settings apply only when `--tag=package-composite-v1` is specified on the ```yaml $(tag) == 'package-composite-v1' input-file: +- Microsoft.SecurityInsights/stable/2020-01-01/SecurityInsights.json +directive: + - suppress: R2059 + from: Microsoft.SecurityInsights/stable/2020-01-01/SecurityInsights.json + reason: it's not actually a resource path; the validator is confused because the LogAnalytics namespace is in the URI path. + approved-by: "@lirenhe" +``` + +--- + +### Tag: package-2019-01-preview-only + +These settings apply only when `--tag=package-2019-01-preview-only` is specified on the command line. + +```yaml $(tag) == 'package-2019-01-preview-only' +input-file: - Microsoft.SecurityInsights/preview/2019-01-01-preview/SecurityInsights.json ``` @@ -99,6 +115,7 @@ 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 ``` diff --git a/specification/serialconsole/resource-manager/readme.cli.md b/specification/serialconsole/resource-manager/readme.cli.md new file mode 100644 index 000000000000..cae3abaa46cf --- /dev/null +++ b/specification/serialconsole/resource-manager/readme.cli.md @@ -0,0 +1,15 @@ +## CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +cli: + cli-name: serialconsole + package-name: azure-mgmt-serialconsole + namespace: azure.mgmt.serialconsole + test-scenario: + - name: Get the Serial Console disabled status for a subscription + - name: List all Serial Console management operations supported by Serial Console RP + - name: Disable Serial Console for a subscription + - name: Enable Serial Console for a subscription +``` \ No newline at end of file diff --git a/specification/servicebus/resource-manager/readme.cli.md b/specification/servicebus/resource-manager/readme.cli.md new file mode 100644 index 000000000000..e1f6d11dfcc0 --- /dev/null +++ b/specification/servicebus/resource-manager/readme.cli.md @@ -0,0 +1,93 @@ + +# Dns +This directory contains the Cli common model for the Dns service. + +> Metadata + + +``` yaml +# Migrated from Powershell's readme +cli: + cli-directive: + - select: 'operation' + where: + operation: '(authorizationRule(s)?$|keys$|nameAvailability$)' + hidden: true + - select: 'parameter' + where: + parameter: authorizationRuleName + alias: authorization_rule + - select: 'parameter' + where: + operation: 'authorizationRule(s)?$' + parameter: authorizationRuleName + name: name + - select: 'property' + where: + objectSchema: 'SBAuthorizationRule-properties' + property: 'rights' + set: + name: 'access_right' + alias: + - right + - rights + - select: 'operationGroup' + where: + operationGroup: 'disasterRecoveryConfigs' + set: + name: 'disaster_recovery_configurations' + - select: 'parameter' + where: + operationGroup: 'disasterRecoveryConfigs' + parameter: 'alias' + set: + name: 'name' + alias: + - 'alias' + - 'alias_name' + - 'disaster_recovery_configuration' + - select: 'operation' + where: + operationGroup: 'disasterRecoveryConfigs' + operation: 'breakPairing' + set: + name: 'disablePairing' + - select: 'operationGroup' + where: + operationGroup: 'migrationConfigs' + set: + name: migration + - select: 'operation' + where: + operationGroup: 'migrationConfigs' + operation: 'revert' + set: + name: 'stop' + - select: 'parameter' + where: + parameter: 'namespaceName' + set: + alias: 'namespace' + - select: 'parameter' + where: + operationGroup: 'migrationConfigs' + parameter: 'namespaceName' + set: + alias: 'name' + - select: 'parameter' + where: + parameter: 'topicName' + set: + alias: 'topic' + - select: 'parameter' + where: + parameter: 'queueName' + set: + alias: 'queue' + - select: 'parameter' + where: + operation: 'Keys$' + parameter: 'authorizationRuleName' + set: + alias: 'name' +``` diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-06-01-preview/cluster.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-06-01-preview/cluster.json index 572e6ed4a7bb..85538d5381ff 100644 --- a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-06-01-preview/cluster.json +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-06-01-preview/cluster.json @@ -1112,7 +1112,7 @@ }, "protectedAccountKeyName2": { "type": "string", - "description": "The secondary protected diagnostics storage key name." + "description": "The secondary protected diagnostics storage key name. If one of the storage account keys is rotated the cluster will fallback to using the other." }, "blobEndpoint": { "type": "string", diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-06-01-preview/examples/ClusterPutOperation_example_max.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-06-01-preview/examples/ClusterPutOperation_example_max.json index 26800e01ad87..561568936819 100644 --- a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-06-01-preview/examples/ClusterPutOperation_example_max.json +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-06-01-preview/examples/ClusterPutOperation_example_max.json @@ -5,13 +5,10 @@ "clusterName": "myCluster", "api-version": "2019-06-01-preview", "parameters": { - "type": "Microsoft.ServiceFabric/clusters", "location": "eastus", - "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", - "name": "myCluster", "tags": {}, "properties": { - "clusterCodeVersion": "6.1.480.9494", + "clusterCodeVersion": "6.5.639.9590", "managementEndpoint": "https://myCluster.eastus.cloudapp.azure.com:19080", "certificateCommonNames": { "commonNames": [ diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-06-01-preview/examples/ClusterPutOperation_example_min.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-06-01-preview/examples/ClusterPutOperation_example_min.json index 042817adc1ec..f4f5950f61f7 100644 --- a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-06-01-preview/examples/ClusterPutOperation_example_min.json +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-06-01-preview/examples/ClusterPutOperation_example_min.json @@ -5,10 +5,7 @@ "clusterName": "myCluster", "api-version": "2019-06-01-preview", "parameters": { - "type": "Microsoft.ServiceFabric/clusters", "location": "eastus", - "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", - "name": "myCluster", "tags": {}, "properties": { "managementEndpoint": "http://myCluster.eastus.cloudapp.azure.com:19080", diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/application.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/application.json new file mode 100644 index 000000000000..0c05124b3ff9 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/application.json @@ -0,0 +1,2351 @@ +{ + "swagger": "2.0", + "info": { + "title": "ServiceFabricManagementClient", + "description": "Azure Service Fabric Resource Provider API Client", + "version": "2019-11-01-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "type": "oauth2" + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "paths": { + "/providers/Microsoft.ServiceFabric/operations": { + "get": { + "tags": [ + "Operations" + ], + "summary": "Lists all of the available Service Fabric resource provider API operations.", + "description": "Get the list of available Service Fabric resource provider API operations.", + "operationId": "Operations_List", + "parameters": [ + { + "name": "api-version", + "in": "query", + "description": "The version of the Service Fabric resource provider API", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applicationTypes/{applicationTypeName}": { + "get": { + "tags": [ + "ApplicationType" + ], + "operationId": "ApplicationTypes_Get", + "summary": "Gets a Service Fabric application type name resource.", + "description": "Get a Service Fabric application type name resource created or in the process of being created in the Service Fabric cluster resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get an application type": { + "$ref": "./examples/ApplicationTypeNameGetOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationTypeResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "put": { + "tags": [ + "ApplicationType" + ], + "operationId": "ApplicationTypes_CreateOrUpdate", + "summary": "Creates or updates a Service Fabric application type name resource.", + "description": "Create or update a Service Fabric application type name resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The application type name resource.", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationTypeResource" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Put an application type": { + "$ref": "./examples/ApplicationTypeNamePutOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationTypeResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "delete": { + "tags": [ + "ApplicationType" + ], + "operationId": "ApplicationTypes_Delete", + "summary": "Deletes a Service Fabric application type name resource.", + "description": "Delete a Service Fabric application type name resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Delete an application type": { + "$ref": "./examples/ApplicationTypeNameDeleteOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously." + }, + "204": { + "description": "The resource was not found." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applicationTypes": { + "get": { + "tags": [ + "ApplicationType" + ], + "operationId": "ApplicationTypes_List", + "summary": "Gets the list of application type name resources created in the specified Service Fabric cluster resource.", + "description": "Gets all application type name resources created or in the process of being created in the Service Fabric cluster resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get a list of application type name resources": { + "$ref": "./examples/ApplicationTypeNameListOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationTypeResourceList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applicationTypes/{applicationTypeName}/versions/{version}": { + "get": { + "tags": [ + "ApplicationTypeVersion" + ], + "operationId": "ApplicationTypeVersions_Get", + "summary": "Gets a Service Fabric application type version resource.", + "description": "Get a Service Fabric application type version resource created or in the process of being created in the Service Fabric application type name resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/version" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get an application type version": { + "$ref": "./examples/ApplicationTypeVersionGetOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationTypeVersionResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "put": { + "tags": [ + "ApplicationTypeVersion" + ], + "operationId": "ApplicationTypeVersions_CreateOrUpdate", + "summary": "Creates or updates a Service Fabric application type version resource.", + "description": "Create or update a Service Fabric application type version resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/version" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The application type version resource.", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationTypeVersionResource" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Put an application type version": { + "$ref": "./examples/ApplicationTypeVersionPutOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ApplicationTypeVersionResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "delete": { + "tags": [ + "ApplicationTypeVersion" + ], + "operationId": "ApplicationTypeVersions_Delete", + "summary": "Deletes a Service Fabric application type version resource.", + "description": "Delete a Service Fabric application type version resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/version" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Delete an application type version": { + "$ref": "./examples/ApplicationTypeVersionDeleteOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously." + }, + "204": { + "description": "The resource was not found." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applicationTypes/{applicationTypeName}/versions": { + "get": { + "tags": [ + "ApplicationTypeVersion" + ], + "operationId": "ApplicationTypeVersions_List", + "summary": "Gets the list of application type version resources created in the specified Service Fabric application type name resource.", + "description": "Gets all application type version resources created or in the process of being created in the Service Fabric application type name resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get a list of application type version resources": { + "$ref": "./examples/ApplicationTypeVersionListOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationTypeVersionResourceList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applications/{applicationName}": { + "get": { + "tags": [ + "Application" + ], + "operationId": "Applications_Get", + "summary": "Gets a Service Fabric application resource.", + "description": "Get a Service Fabric application resource created or in the process of being created in the Service Fabric cluster resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get an application": { + "$ref": "./examples/ApplicationGetOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "put": { + "tags": [ + "Application" + ], + "operationId": "Applications_CreateOrUpdate", + "summary": "Creates or updates a Service Fabric application resource.", + "description": "Create or update a Service Fabric application resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The application resource.", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationResource" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Put an application with minimum parameters": { + "$ref": "./examples/ApplicationPutOperation_example_min.json" + }, + "Put an application with maximum parameters": { + "$ref": "./examples/ApplicationPutOperation_example_max.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ApplicationResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "patch": { + "tags": [ + "Application" + ], + "operationId": "Applications_Update", + "summary": "Updates a Service Fabric application resource.", + "description": "Update a Service Fabric application resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The application resource for patch operations.", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationResourceUpdate" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Patch an application": { + "$ref": "./examples/ApplicationPatchOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ApplicationResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "delete": { + "tags": [ + "Application" + ], + "operationId": "Applications_Delete", + "summary": "Deletes a Service Fabric application resource.", + "description": "Delete a Service Fabric application resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Delete an application": { + "$ref": "./examples/ApplicationDeleteOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously." + }, + "204": { + "description": "The resource was not found." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applications": { + "get": { + "tags": [ + "Application" + ], + "operationId": "Applications_List", + "summary": "Gets the list of application resources created in the specified Service Fabric cluster resource.", + "description": "Gets all application resources created or in the process of being created in the Service Fabric cluster resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get a list of application resources": { + "$ref": "./examples/ApplicationListOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationResourceList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applications/{applicationName}/services/{serviceName}": { + "get": { + "tags": [ + "Service" + ], + "operationId": "Services_Get", + "summary": "Gets a Service Fabric service resource.", + "description": "Get a Service Fabric service resource created or in the process of being created in the Service Fabric application resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/serviceName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get a service": { + "$ref": "./examples/ServiceGetOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ServiceResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "put": { + "tags": [ + "Service" + ], + "operationId": "Services_CreateOrUpdate", + "summary": "Creates or updates a Service Fabric service resource.", + "description": "Create or update a Service Fabric service resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/serviceName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The service resource.", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceResource" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Put a service with minimum parameters": { + "$ref": "./examples/ServicePutOperation_example_min.json" + }, + "Put a service with maximum parameters": { + "$ref": "./examples/ServicePutOperation_example_max.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ServiceResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "patch": { + "tags": [ + "Service" + ], + "operationId": "Services_Update", + "summary": "Updates a Service Fabric service resource.", + "description": "Update a Service Fabric service resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/serviceName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The service resource for patch operations.", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceResourceUpdate" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Patch a service": { + "$ref": "./examples/ServicePatchOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ServiceResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "delete": { + "tags": [ + "Service" + ], + "operationId": "Services_Delete", + "summary": "Deletes a Service Fabric service resource.", + "description": "Delete a Service Fabric service resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/serviceName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Delete a service": { + "$ref": "./examples/ServiceDeleteOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously." + }, + "204": { + "description": "The resource was not found." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applications/{applicationName}/services": { + "get": { + "tags": [ + "Service" + ], + "operationId": "Services_List", + "summary": "Gets the list of service resources created in the specified Service Fabric application resource.", + "description": "Gets all service resources created or in the process of being created in the Service Fabric application resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get a list of service resources": { + "$ref": "./examples/ServiceListOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ServiceResourceList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + } + }, + "definitions": { + "ApplicationMetricDescription": { + "type": "object", + "description": "Describes capacity information for a custom resource balancing metric. This can be used to limit the total consumption of this metric by the services of this application.\n", + "properties": { + "name": { + "type": "string", + "description": "The name of the metric." + }, + "maximumCapacity": { + "type": "integer", + "format": "int64", + "description": "The maximum node capacity for Service Fabric application.\nThis is the maximum Load for an instance of this application on a single node. Even if the capacity of node is greater than this value, Service Fabric will limit the total load of services within the application on each node to this value.\nIf set to zero, capacity for this metric is unlimited on each node.\nWhen creating a new application with application capacity defined, the product of MaximumNodes and this value must always be smaller than or equal to TotalApplicationCapacity.\nWhen updating existing application with application capacity, the product of MaximumNodes and this value must always be smaller than or equal to TotalApplicationCapacity.\n" + }, + "reservationCapacity": { + "type": "integer", + "format": "int64", + "description": "The node reservation capacity for Service Fabric application.\nThis is the amount of load which is reserved on nodes which have instances of this application.\nIf MinimumNodes is specified, then the product of these values will be the capacity reserved in the cluster for the application.\nIf set to zero, no capacity is reserved for this metric.\nWhen setting application capacity or when updating application capacity; this value must be smaller than or equal to MaximumCapacity for each metric.\n" + }, + "totalApplicationCapacity": { + "description": "The total metric capacity for Service Fabric application.\nThis is the total metric capacity for this application in the cluster. Service Fabric will try to limit the sum of loads of services within the application to this value.\nWhen creating a new application with application capacity defined, the product of MaximumNodes and MaximumCapacity must always be smaller than or equal to this value.\n", + "type": "integer", + "format": "int64" + } + } + }, + "ApplicationMetricDescriptionList": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationMetricDescription" + }, + "description": "List of application capacity metric description." + }, + "ApplicationParameterList": { + "type": "object", + "description": "List of application parameters with overridden values from their default values specified in the application manifest.", + "additionalProperties": { + "type": "string" + } + }, + "ApplicationResource": { + "description": "The application resource.", + "properties": { + "identity": { + "$ref": "#/definitions/ManagedIdentity", + "description": "Describes the managed identities for an Azure resource." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationResourceProperties", + "description": "The application resource properties." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "ApplicationResourceList": { + "description": "The list of application resources.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationResource" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of application list results if there are any.", + "readOnly": true + } + } + }, + "ApplicationResourceProperties": { + "description": "The application resource properties.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationResourceUpdateProperties" + } + ], + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The current deployment or provisioning state, which only appears in the response" + }, + "typeName": { + "$ref": "#/definitions/ApplicationTypeName", + "description": "The application type name as defined in the application manifest." + } + } + }, + "ApplicationResourceUpdate": { + "description": "The application resource for patch operations.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationResourceUpdateProperties", + "description": "The application resource properties for patch operations." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "ApplicationResourceUpdateProperties": { + "description": "The application resource properties for patch operations.", + "properties": { + "typeVersion": { + "$ref": "#/definitions/ApplicationTypeVersion", + "description": "The version of the application type as defined in the application manifest." + }, + "parameters": { + "$ref": "#/definitions/ApplicationParameterList", + "description": "List of application parameters with overridden values from their default values specified in the application manifest." + }, + "upgradePolicy": { + "$ref": "#/definitions/ApplicationUpgradePolicy", + "description": "Describes the policy for a monitored application upgrade." + }, + "minimumNodes": { + "type": "integer", + "format": "int64", + "description": "The minimum number of nodes where Service Fabric will reserve capacity for this application. Note that this does not mean that the services of this application will be placed on all of those nodes. If this property is set to zero, no capacity will be reserved. The value of this property cannot be more than the value of the MaximumNodes property.", + "minimum": 0 + }, + "maximumNodes": { + "type": "integer", + "format": "int64", + "description": "The maximum number of nodes where Service Fabric will reserve capacity for this application. Note that this does not mean that the services of this application will be placed on all of those nodes. By default, the value of this property is zero and it means that the services can be placed on any node.", + "minimum": 0, + "default": 0 + }, + "removeApplicationCapacity": { + "type": "boolean", + "description": "Remove the current application capacity settings." + }, + "metrics": { + "$ref": "#/definitions/ApplicationMetricDescriptionList", + "description": "List of application capacity metric description." + }, + "managedIdentities": { + "description": "List of user assigned identities for the application, each mapped to a friendly name.", + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationUserAssignedIdentity" + } + } + } + }, + "ApplicationTypeName": { + "type": "string", + "description": "The application type name as defined in the application manifest." + }, + "ApplicationTypeParameterList": { + "type": "object", + "description": "List of application type parameters that can be overridden when creating or updating the application.", + "additionalProperties": { + "type": "string" + } + }, + "ApplicationTypeResource": { + "description": "The application type name resource", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationTypeResourceProperties", + "description": "The application type name properties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "ApplicationTypeResourceList": { + "description": "The list of application type names.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationTypeResource" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of application type list results if there are any.", + "readOnly": true + } + } + }, + "ApplicationTypeResourceProperties": { + "description": "The application type name properties", + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The current deployment or provisioning state, which only appears in the response." + } + } + }, + "ApplicationTypeVersion": { + "type": "string", + "description": "The version of the application type as defined in the application manifest." + }, + "ApplicationTypeVersionResource": { + "description": "An application type version resource for the specified application type name resource.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationTypeVersionResourceProperties", + "description": "The properties of the application type version resource." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "ApplicationTypeVersionResourceList": { + "description": "The list of application type version resources for the specified application type name resource.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationTypeVersionResource" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of application type version list results if there are any.", + "readOnly": true + } + } + }, + "ApplicationTypeVersionResourceProperties": { + "description": "The properties of the application type version resource.", + "required": [ + "appPackageUrl" + ], + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The current deployment or provisioning state, which only appears in the response" + }, + "appPackageUrl": { + "type": "string", + "description": "The URL to the application package" + }, + "defaultParameterList": { + "readOnly": true, + "$ref": "#/definitions/ApplicationTypeParameterList", + "description": "List of application type parameters that can be overridden when creating or updating the application." + } + } + }, + "ApplicationUpgradePolicy": { + "description": "Describes the policy for a monitored application upgrade.", + "properties": { + "upgradeReplicaSetCheckTimeout": { + "type": "string", + "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. Valid values are between 0 and 42949672925 inclusive. (unsigned 32-bit integer)." + }, + "forceRestart": { + "$ref": "#/definitions/ForceRestart", + "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." + }, + "rollingUpgradeMonitoringPolicy": { + "$ref": "#/definitions/ArmRollingUpgradeMonitoringPolicy", + "description": "The policy used for monitoring the application upgrade" + }, + "applicationHealthPolicy": { + "$ref": "#/definitions/ArmApplicationHealthPolicy", + "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n" + }, + "upgradeMode": { + "$ref": "#/definitions/RollingUpgradeMode", + "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored." + } + } + }, + "ApplicationUserAssignedIdentity": { + "required": [ + "name", + "principalId" + ], + "properties": { + "name": { + "type": "string", + "description": "The friendly name of user assigned identity." + }, + "principalId": { + "type": "string", + "description": "The principal id of user assigned identity." + } + } + }, + "ArmApplicationHealthPolicy": { + "type": "object", + "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n", + "properties": { + "considerWarningAsError": { + "type": "boolean", + "description": "Indicates whether warnings are treated with the same severity as errors.", + "default": false + }, + "maxPercentUnhealthyDeployedApplications": { + "type": "integer", + "description": "The maximum allowed percentage of unhealthy deployed applications. Allowed values are Byte values from zero to 100.\nThe percentage represents the maximum tolerated percentage of deployed applications that can be unhealthy before the application is considered in error.\nThis is calculated by dividing the number of unhealthy deployed applications over the number of nodes where the application is currently deployed on in the cluster.\nThe computation rounds up to tolerate one failure on small numbers of nodes. Default percentage is zero.\n", + "default": 0 + }, + "defaultServiceTypeHealthPolicy": { + "$ref": "#/definitions/ArmServiceTypeHealthPolicy", + "description": "The health policy used by default to evaluate the health of a service type." + }, + "serviceTypeHealthPolicyMap": { + "$ref": "#/definitions/ArmServiceTypeHealthPolicyMap", + "description": "The map with service type health policy per service type name. The map is empty by default." + } + } + }, + "ArmRollingUpgradeMonitoringPolicy": { + "description": "The policy used for monitoring the application upgrade", + "properties": { + "failureAction": { + "type": "string", + "description": "The activation Mode of the service package", + "enum": [ + "Rollback", + "Manual" + ], + "x-ms-enum": { + "name": "ArmUpgradeFailureAction", + "modelAsString": true, + "values": [ + { + "value": "Rollback", + "description": "Indicates that a rollback of the upgrade will be performed by Service Fabric if the upgrade fails." + }, + { + "value": "Manual", + "description": "Indicates that a manual repair will need to be performed by the administrator if the upgrade fails. Service Fabric will not proceed to the next upgrade domain automatically." + } + ] + } + }, + "healthCheckWaitDuration": { + "$ref": "#/definitions/HealthCheckWaitDuration", + "description": "The amount of time to wait after completing an upgrade domain before applying health policies. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "healthCheckStableDuration": { + "$ref": "#/definitions/HealthCheckStableDuration", + "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "healthCheckRetryTimeout": { + "$ref": "#/definitions/HealthCheckRetryTimeout", + "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "upgradeTimeout": { + "$ref": "#/definitions/UpgradeTimeout", + "description": "The amount of time the overall upgrade has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "upgradeDomainTimeout": { + "$ref": "#/definitions/UpgradeDomainTimeout", + "description": "The amount of time each upgrade domain has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + } + } + }, + "ArmServiceTypeHealthPolicy": { + "type": "object", + "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n", + "properties": { + "maxPercentUnhealthyServices": { + "type": "integer", + "description": "The maximum percentage of services allowed to be unhealthy before your application is considered in error.\n", + "default": 0, + "minimum": 0, + "maximum": 100 + }, + "maxPercentUnhealthyPartitionsPerService": { + "type": "integer", + "description": "The maximum percentage of partitions per service allowed to be unhealthy before your application is considered in error.\n", + "default": 0, + "minimum": 0, + "maximum": 100 + }, + "maxPercentUnhealthyReplicasPerPartition": { + "type": "integer", + "description": "The maximum percentage of replicas per partition allowed to be unhealthy before your application is considered in error.\n", + "default": 0, + "minimum": 0, + "maximum": 100 + } + } + }, + "ArmServiceTypeHealthPolicyMap": { + "type": "object", + "description": "Defines a ServiceTypeHealthPolicy per service type name.\n\nThe entries in the map replace the default service type health policy for each specified service type.\nFor example, in an application that contains both a stateless gateway service type and a stateful engine service type, the health policies for the stateless and stateful services can be configured differently.\nWith policy per service type, there's more granular control of the health of the service.\n\nIf no policy is specified for a service type name, the DefaultServiceTypeHealthPolicy is used for evaluation.\n", + "additionalProperties": { + "$ref": "#/definitions/ArmServiceTypeHealthPolicy" + } + }, + "AvailableOperationDisplay": { + "properties": { + "provider": { + "type": "string", + "description": "The name of the provider." + }, + "resource": { + "type": "string", + "description": "The resource on which the operation is performed" + }, + "operation": { + "type": "string", + "description": "The operation that can be performed." + }, + "description": { + "type": "string", + "description": "Operation description" + } + }, + "description": "Operation supported by the Service Fabric resource provider" + }, + "CorrelationSchemeList": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceCorrelationDescription" + }, + "description": "A list that describes the correlation of the service with other services." + }, + "ForceRestart": { + "type": "boolean", + "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data).", + "default": false + }, + "HealthCheckRetryTimeout": { + "type": "string", + "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "PT0H10M0S" + }, + "HealthCheckStableDuration": { + "type": "string", + "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "PT0H2M0S" + }, + "HealthCheckWaitDuration": { + "type": "string", + "description": "The amount of time to wait after completing an upgrade domain before applying health policies. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "0" + }, + "ManagedIdentity": { + "description": "Describes the managed identities for an Azure resource.", + "properties": { + "principalId": { + "type": "string", + "readOnly": true, + "description": "The principal id of the managed identity. This property will only be provided for a system assigned identity." + }, + "tenantId": { + "type": "string", + "readOnly": true, + "description": "The tenant id of the managed identity. This property will only be provided for a system assigned identity." + }, + "type": { + "$ref": "#/definitions/ManagedIdentityType", + "description": "The type of managed identity for the resource." + }, + "userAssignedIdentities": { + "$ref": "#/definitions/UserAssignedIdentityMap", + "description": "The list of user identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form:\n'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.\n" + } + } + }, + "ManagedIdentityType": { + "type": "string", + "description": "The type of managed identity for the resource.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ManagedIdentityType", + "modelAsString": false, + "values": [ + { + "value": "SystemAssigned", + "description": "Indicates that system assigned identity is associated with the resource." + }, + { + "value": "UserAssigned", + "description": "Indicates that user assigned identity is associated with the resource." + }, + { + "value": "SystemAssigned, UserAssigned", + "description": "Indicates that both system assigned and user assigned identity are associated with the resource." + }, + { + "value": "None", + "description": "Indicates that no identity is associated with the resource." + } + ] + } + }, + "MoveCost": { + "type": "string", + "description": "Specifies the move cost for the service.", + "enum": [ + "Zero", + "Low", + "Medium", + "High" + ], + "x-ms-enum": { + "name": "MoveCost", + "modelAsString": true, + "values": [ + { + "value": "Zero", + "description": "Zero move cost. This value is zero." + }, + { + "value": "Low", + "description": "Specifies the move cost of the service as Low. The value is 1." + }, + { + "value": "Medium", + "description": "Specifies the move cost of the service as Medium. The value is 2." + }, + { + "value": "High", + "description": "Specifies the move cost of the service as High. The value is 3." + } + ] + } + }, + "NamedPartitionSchemeDescription": { + "description": "Describes the named partition scheme of the service.", + "allOf": [ + { + "$ref": "#/definitions/PartitionSchemeDescription" + }, + { + "type": "object", + "description": "NamedPartitionSchemeDescription" + } + ], + "x-ms-discriminator-value": "Named", + "required": [ + "count", + "names" + ], + "properties": { + "count": { + "type": "integer", + "description": "The number of partitions." + }, + "names": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Array of size specified by the ‘count’ parameter, for the names of the partitions." + } + } + }, + "OperationListResult": { + "properties": { + "value": { + "type": "array", + "description": "List of operations supported by the Service Fabric resource provider.", + "items": { + "$ref": "#/definitions/OperationResult" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any.", + "readOnly": true + } + }, + "description": "Describes the result of the request to list Service Fabric resource provider operations." + }, + "OperationResult": { + "properties": { + "name": { + "type": "string", + "description": "The name of the operation." + }, + "display": { + "$ref": "#/definitions/AvailableOperationDisplay", + "description": "The object that represents the operation." + }, + "origin": { + "type": "string", + "description": "Origin result" + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Available operation list result" + }, + "PartitionScheme": { + "type": "string", + "description": "Enumerates the ways that a service can be partitioned.", + "enum": [ + "Invalid", + "Singleton", + "UniformInt64Range", + "Named" + ], + "x-ms-enum": { + "name": "PartitionScheme", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the partition kind is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Singleton", + "description": "Indicates that the partition is based on string names, and is a SingletonPartitionSchemeDescription object, The value is 1." + }, + { + "value": "UniformInt64Range", + "description": "Indicates that the partition is based on Int64 key ranges, and is a UniformInt64RangePartitionSchemeDescription object. The value is 2." + }, + { + "value": "Named", + "description": "Indicates that the partition is based on string names, and is a NamedPartitionSchemeDescription object. The value is 3" + } + ] + } + }, + "PartitionSchemeDescription": { + "type": "object", + "discriminator": "partitionScheme", + "description": "Describes how the service is partitioned.", + "required": [ + "partitionScheme" + ], + "properties": { + "partitionScheme": { + "$ref": "#/definitions/PartitionScheme", + "description": "Specifies how the service is partitioned." + } + } + }, + "ProxyResource": { + "properties": { + "id": { + "type": "string", + "description": "Azure resource identifier.", + "readOnly": true + }, + "name": { + "type": "string", + "description": "Azure resource name.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "Azure resource type.", + "readOnly": true + }, + "location": { + "type": "string", + "description": "It will be deprecated in New API, resource location depends on the parent resource.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Azure resource tags.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "etag": { + "type": "string", + "description": "Azure resource etag.", + "readOnly": true + } + }, + "description": "The resource model definition for proxy-only resource.", + "x-ms-azure-resource": true + }, + "RollingUpgradeMode": { + "type": "string", + "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored.", + "enum": [ + "Invalid", + "UnmonitoredAuto", + "UnmonitoredManual", + "Monitored" + ], + "default": "Monitored", + "x-ms-enum": { + "name": "RollingUpgradeMode", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the upgrade mode is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "UnmonitoredAuto", + "description": "The upgrade will proceed automatically without performing any health monitoring. The value is 1" + }, + { + "value": "UnmonitoredManual", + "description": "The upgrade will stop after completing each upgrade domain, giving the opportunity to manually monitor health before proceeding. The value is 2" + }, + { + "value": "Monitored", + "description": "The upgrade will stop after completing each upgrade domain and automatically monitor health before proceeding. The value is 3" + } + ] + } + }, + "ServiceCorrelationDescription": { + "type": "object", + "description": "Creates a particular correlation between services.", + "required": [ + "scheme", + "serviceName" + ], + "properties": { + "scheme": { + "$ref": "#/definitions/ServiceCorrelationScheme", + "description": "The ServiceCorrelationScheme which describes the relationship between this service and the service specified via ServiceName." + }, + "serviceName": { + "$ref": "#/definitions/ServiceName", + "description": "The name of the service that the correlation relationship is established with." + } + } + }, + "ServiceCorrelationScheme": { + "type": "string", + "description": "The service correlation scheme.", + "enum": [ + "Invalid", + "Affinity", + "AlignedAffinity", + "NonAlignedAffinity" + ], + "x-ms-enum": { + "name": "ServiceCorrelationScheme", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "An invalid correlation scheme. Cannot be used. The value is zero." + }, + { + "value": "Affinity", + "description": "Indicates that this service has an affinity relationship with another service. Provided for backwards compatibility, consider preferring the Aligned or NonAlignedAffinity options. The value is 1." + }, + { + "value": "AlignedAffinity", + "description": "Aligned affinity ensures that the primaries of the partitions of the affinitized services are collocated on the same nodes. This is the default and is the same as selecting the Affinity scheme. The value is 2." + }, + { + "value": "NonAlignedAffinity", + "description": "Non-Aligned affinity guarantees that all replicas of each service will be placed on the same nodes. Unlike Aligned Affinity, this does not guarantee that replicas of particular role will be collocated. The value is 3." + } + ] + } + }, + "ServiceKind": { + "type": "string", + "description": "The kind of service (Stateless or Stateful).", + "enum": [ + "Invalid", + "Stateless", + "Stateful" + ], + "x-ms-enum": { + "name": "ServiceKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the service kind is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Stateless", + "description": "Does not use Service Fabric to make its state highly available or reliable. The value is 1." + }, + { + "value": "Stateful", + "description": "Uses Service Fabric to make its state or part of its state highly available and reliable. The value is 2." + } + ] + } + }, + "ServiceLoadMetricDescription": { + "type": "object", + "description": "Specifies a metric to load balance a service during runtime.", + "required": [ + "name" + ], + "properties": { + "name": { + "type": "string", + "description": "The name of the metric. If the service chooses to report load during runtime, the load metric name should match the name that is specified in Name exactly. Note that metric names are case sensitive." + }, + "weight": { + "$ref": "#/definitions/ServiceLoadMetricWeight", + "description": "The service load metric relative weight, compared to other metrics configured for this service, as a number." + }, + "primaryDefaultLoad": { + "type": "integer", + "description": "Used only for Stateful services. The default amount of load, as a number, that this service creates for this metric when it is a Primary replica." + }, + "secondaryDefaultLoad": { + "type": "integer", + "description": "Used only for Stateful services. The default amount of load, as a number, that this service creates for this metric when it is a Secondary replica." + }, + "defaultLoad": { + "type": "integer", + "description": "Used only for Stateless services. The default amount of load, as a number, that this service creates for this metric." + } + } + }, + "ServiceLoadMetricsList": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceLoadMetricDescription" + }, + "description": "The service load metrics is given as an array of ServiceLoadMetricDescription objects." + }, + "ServiceLoadMetricWeight": { + "type": "string", + "description": "Determines the metric weight relative to the other metrics that are configured for this service. During runtime, if two metrics end up in conflict, the Cluster Resource Manager prefers the metric with the higher weight.", + "enum": [ + "Zero", + "Low", + "Medium", + "High" + ], + "x-ms-enum": { + "name": "ServiceLoadMetricWeight", + "modelAsString": true, + "values": [ + { + "value": "Zero", + "description": "Disables resource balancing for this metric. This value is zero." + }, + { + "value": "Low", + "description": "Specifies the metric weight of the service load as Low. The value is 1." + }, + { + "value": "Medium", + "description": "Specifies the metric weight of the service load as Medium. The value is 2." + }, + { + "value": "High", + "description": "Specifies the metric weight of the service load as High. The value is 3." + } + ] + } + }, + "ServiceName": { + "type": "string", + "description": "The full name of the service with 'fabric:' URI scheme." + }, + "ServicePlacementPoliciesList": { + "type": "array", + "items": { + "$ref": "#/definitions/ServicePlacementPolicyDescription" + }, + "description": "A list that describes the correlation of the service with other services." + }, + "ServicePlacementPolicyDescription": { + "type": "object", + "discriminator": "type", + "description": "Describes the policy to be used for placement of a Service Fabric service.", + "required": [ + "type" + ], + "properties": { + "type": { + "$ref": "#/definitions/ServicePlacementPolicyType", + "description": "The type of placement policy for a service fabric service. Following are the possible values." + } + } + }, + "ServicePlacementPolicyType": { + "type": "string", + "description": "The type of placement policy for a service fabric service. Following are the possible values.", + "enum": [ + "Invalid", + "InvalidDomain", + "RequiredDomain", + "PreferredPrimaryDomain", + "RequiredDomainDistribution", + "NonPartiallyPlaceService" + ], + "x-ms-enum": { + "name": "ServicePlacementPolicyType", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the type of the placement policy is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "InvalidDomain", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementInvalidDomainPolicyDescription, which indicates that a particular fault or upgrade domain cannot be used for placement of this service. The value is 1." + }, + { + "value": "RequiredDomain", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementRequireDomainDistributionPolicyDescription indicating that the replicas of the service must be placed in a specific domain. The value is 2." + }, + { + "value": "PreferredPrimaryDomain", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementPreferPrimaryDomainPolicyDescription, which indicates that if possible the Primary replica for the partitions of the service should be located in a particular domain as an optimization. The value is 3." + }, + { + "value": "RequiredDomainDistribution", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementRequireDomainDistributionPolicyDescription, indicating that the system will disallow placement of any two replicas from the same partition in the same domain at any time. The value is 4." + }, + { + "value": "NonPartiallyPlaceService", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementNonPartiallyPlaceServicePolicyDescription, which indicates that if possible all replicas of a particular partition of the service should be placed atomically. The value is 5." + } + ] + } + }, + "ServiceResource": { + "description": "The service resource.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceResourceProperties", + "description": "The service resource properties." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "ServiceResourceList": { + "description": "The list of service resources.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceResource" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of service list results if there are any.", + "readOnly": true + } + } + }, + "ServiceResourceProperties": { + "description": "The service resource properties.", + "allOf": [ + { + "$ref": "#/definitions/ServiceResourcePropertiesBase" + } + ], + "required": [ + "serviceKind" + ], + "discriminator": "serviceKind", + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The current deployment or provisioning state, which only appears in the response" + }, + "serviceKind": { + "$ref": "#/definitions/ServiceKind", + "description": "The kind of service (Stateless or Stateful)." + }, + "serviceTypeName": { + "type": "string", + "description": "The name of the service type" + }, + "partitionDescription": { + "$ref": "#/definitions/PartitionSchemeDescription", + "description": "Describes how the service is partitioned." + }, + "servicePackageActivationMode": { + "type": "string", + "description": "The activation Mode of the service package", + "enum": [ + "SharedProcess", + "ExclusiveProcess" + ], + "x-ms-enum": { + "name": "ArmServicePackageActivationMode", + "modelAsString": true, + "values": [ + { + "value": "SharedProcess", + "description": "Indicates the application package activation mode will use shared process." + }, + { + "value": "ExclusiveProcess", + "description": "Indicates the application package activation mode will use exclusive process." + } + ] + } + }, + "serviceDnsName": { + "type": "string", + "description": "Dns name used for the service. If this is specified, then the service can be accessed via its DNS name instead of service name." + } + } + }, + "ServiceResourcePropertiesBase": { + "description": "The common service resource properties.", + "properties": { + "placementConstraints": { + "type": "string", + "description": "The placement constraints as a string. Placement constraints are boolean expressions on node properties and allow for restricting a service to particular nodes based on the service requirements. For example, to place a service on nodes where NodeType is blue specify the following: \"NodeColor == blue)\"." + }, + "correlationScheme": { + "$ref": "#/definitions/CorrelationSchemeList", + "description": "A list that describes the correlation of the service with other services." + }, + "serviceLoadMetrics": { + "$ref": "#/definitions/ServiceLoadMetricsList", + "description": "The service load metrics is given as an array of ServiceLoadMetricDescription objects." + }, + "servicePlacementPolicies": { + "$ref": "#/definitions/ServicePlacementPoliciesList", + "description": "A list that describes the correlation of the service with other services." + }, + "defaultMoveCost": { + "$ref": "#/definitions/MoveCost", + "description": "Specifies the move cost for the service." + } + } + }, + "ServiceResourceUpdate": { + "description": "The service resource for patch operations.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceResourceUpdateProperties", + "description": "The service resource properties for patch operations." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "ServiceResourceUpdateProperties": { + "description": "The service resource properties for patch operations.", + "allOf": [ + { + "$ref": "#/definitions/ServiceResourcePropertiesBase" + } + ], + "required": [ + "serviceKind" + ], + "discriminator": "serviceKind", + "properties": { + "serviceKind": { + "$ref": "#/definitions/ServiceKind", + "description": "The kind of service (Stateless or Stateful)." + } + } + }, + "SingletonPartitionSchemeDescription": { + "description": "Describes the partition scheme of a singleton-partitioned, or non-partitioned service.", + "allOf": [ + { + "$ref": "#/definitions/PartitionSchemeDescription" + }, + { + "type": "object", + "description": "SingletonPartitionSchemeDescription" + } + ], + "x-ms-discriminator-value": "Singleton" + }, + "StatefulServiceProperties": { + "description": "The properties of a stateful service resource.", + "allOf": [ + { + "$ref": "#/definitions/ServiceResourceProperties" + } + ], + "x-ms-discriminator-value": "Stateful", + "properties": { + "hasPersistedState": { + "type": "boolean", + "description": "A flag indicating whether this is a persistent service which stores states on the local disk. If it is then the value of this property is true, if not it is false." + }, + "targetReplicaSetSize": { + "type": "integer", + "minimum": 1, + "description": "The target replica set size as a number." + }, + "minReplicaSetSize": { + "type": "integer", + "minimum": 1, + "description": "The minimum replica set size as a number." + }, + "replicaRestartWaitDuration": { + "type": "string", + "format": "date-time", + "description": "The duration between when a replica goes down and when a new replica is created, represented in ISO 8601 format (hh:mm:ss.s)." + }, + "quorumLossWaitDuration": { + "type": "string", + "format": "date-time", + "description": "The maximum duration for which a partition is allowed to be in a state of quorum loss, represented in ISO 8601 format (hh:mm:ss.s)." + }, + "standByReplicaKeepDuration": { + "type": "string", + "format": "date-time", + "description": "The definition on how long StandBy replicas should be maintained before being removed, represented in ISO 8601 format (hh:mm:ss.s)." + } + } + }, + "StatefulServiceUpdateProperties": { + "description": "The properties of a stateful service resource for patch operations.", + "allOf": [ + { + "$ref": "#/definitions/ServiceResourceUpdateProperties" + } + ], + "x-ms-discriminator-value": "Stateful", + "properties": { + "targetReplicaSetSize": { + "type": "integer", + "minimum": 1, + "description": "The target replica set size as a number." + }, + "minReplicaSetSize": { + "type": "integer", + "minimum": 1, + "description": "The minimum replica set size as a number." + }, + "replicaRestartWaitDuration": { + "type": "string", + "format": "date-time", + "description": "The duration between when a replica goes down and when a new replica is created, represented in ISO 8601 format (hh:mm:ss.s)." + }, + "quorumLossWaitDuration": { + "type": "string", + "format": "date-time", + "description": "The maximum duration for which a partition is allowed to be in a state of quorum loss, represented in ISO 8601 format (hh:mm:ss.s)." + }, + "standByReplicaKeepDuration": { + "type": "string", + "format": "date-time", + "description": "The definition on how long StandBy replicas should be maintained before being removed, represented in ISO 8601 format (hh:mm:ss.s)." + } + } + }, + "StatelessServiceProperties": { + "description": "The properties of a stateless service resource.", + "allOf": [ + { + "$ref": "#/definitions/ServiceResourceProperties" + } + ], + "x-ms-discriminator-value": "Stateless", + "properties": { + "instanceCount": { + "type": "integer", + "minimum": -1, + "description": "The instance count." + }, + "instanceCloseDelayDuration": { + "type": "string", + "description": "Delay duration for RequestDrain feature to ensures that the endpoint advertised by the stateless instance is removed before the delay starts prior to closing the instance. This delay enables existing requests to drain gracefully before the instance actually goes down (https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-application-upgrade-advanced#avoid-connection-drops-during-stateless-service-planned-downtime-preview). It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + } + } + }, + "StatelessServiceUpdateProperties": { + "description": "The properties of a stateless service resource for patch operations.", + "allOf": [ + { + "$ref": "#/definitions/ServiceResourceUpdateProperties" + } + ], + "x-ms-discriminator-value": "Stateless", + "properties": { + "instanceCount": { + "type": "integer", + "minimum": -1, + "description": "The instance count." + }, + "instanceCloseDelayDuration": { + "type": "string", + "description": "Delay duration for RequestDrain feature to ensures that the endpoint advertised by the stateless instance is removed before the delay starts prior to closing the instance. This delay enables existing requests to drain gracefully before the instance actually goes down (https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-application-upgrade-advanced#avoid-connection-drops-during-stateless-service-planned-downtime-preview). It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + } + } + }, + "UserAssignedIdentity": { + "properties": { + "principalId": { + "type": "string", + "readOnly": true, + "description": "The principal id of user assigned identity." + }, + "clientId": { + "type": "string", + "readOnly": true, + "description": "The client id of user assigned identity." + } + } + }, + "UserAssignedIdentityMap": { + "type": "object", + "description": "The list of user identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form:\n'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.\n", + "additionalProperties": { + "$ref": "#/definitions/UserAssignedIdentity" + } + }, + "UniformInt64RangePartitionSchemeDescription": { + "description": "Describes a partitioning scheme where an integer range is allocated evenly across a number of partitions.", + "allOf": [ + { + "$ref": "#/definitions/PartitionSchemeDescription" + }, + { + "type": "object", + "description": "UniformInt64RangePartitionSchemeDescription" + } + ], + "x-ms-discriminator-value": "UniformInt64Range", + "required": [ + "count", + "lowKey", + "highKey" + ], + "properties": { + "count": { + "type": "integer", + "description": "The number of partitions." + }, + "lowKey": { + "type": "string", + "description": "String indicating the lower bound of the partition key range that\nshould be split between the partition ‘count’\n" + }, + "highKey": { + "type": "string", + "description": "String indicating the upper bound of the partition key range that\nshould be split between the partition ‘count’\n" + } + } + }, + "UpgradeDomainTimeout": { + "type": "string", + "description": "The amount of time each upgrade domain has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "P10675199DT02H48M05.4775807S" + }, + "UpgradeTimeout": { + "type": "string", + "description": "The amount of time the overall upgrade has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "P10675199DT02H48M05.4775807S" + }, + "ErrorModel": { + "properties": { + "error": { + "$ref": "#/definitions/ErrorModelError", + "description": "The error details." + } + }, + "description": "The structure of the error." + }, + "ErrorModelError": { + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "The error details." + } + }, + "parameters": { + "api-version": { + "name": "api-version", + "in": "query", + "description": "The version of the Service Fabric resource provider API. This is a required parameter and it's value must be \"2019-11-01-preview\" for this specification.", + "required": true, + "type": "string", + "enum": [ + "2019-11-01-preview" + ], + "default": "2019-11-01-preview", + "x-ms-parameter-location": "client" + }, + "applicationName": { + "name": "applicationName", + "in": "path", + "description": "The name of the application resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "applicationTypeName": { + "name": "applicationTypeName", + "in": "path", + "description": "The name of the application type name resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "clusterNameParameter": { + "name": "clusterName", + "in": "path", + "description": "The name of the cluster resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "serviceName": { + "name": "serviceName", + "in": "path", + "description": "The name of the service resource in the format of {applicationName}~{serviceName}.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "subscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The customer subscription identifier.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "version": { + "name": "version", + "in": "path", + "description": "The application type version.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/cluster.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/cluster.json new file mode 100644 index 000000000000..36558717a519 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/cluster.json @@ -0,0 +1,1558 @@ +{ + "swagger": "2.0", + "info": { + "title": "ServiceFabricManagementClient", + "description": "Azure Service Fabric Resource Provider API Client", + "version": "2019-11-01-preview" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "type": "oauth2" + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}": { + "get": { + "tags": [ + "Cluster" + ], + "operationId": "Clusters_Get", + "summary": "Gets a Service Fabric cluster resource.", + "description": "Get a Service Fabric cluster resource created or in the process of being created in the specified resource group.", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "x-ms-examples": { + "Get a cluster": { + "$ref": "./examples/ClusterGetOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "put": { + "tags": [ + "Cluster" + ], + "operationId": "Clusters_CreateOrUpdate", + "summary": "Creates or updates a Service Fabric cluster resource.", + "description": "Create or update a Service Fabric cluster resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "The cluster resource.", + "required": true, + "schema": { + "$ref": "#/definitions/Cluster" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Put a cluster with minimum parameters": { + "$ref": "./examples/ClusterPutOperation_example_min.json" + }, + "Put a cluster with maximum parameters": { + "$ref": "./examples/ClusterPutOperation_example_max.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "patch": { + "tags": [ + "Cluster" + ], + "operationId": "Clusters_Update", + "summary": "Updates the configuration of a Service Fabric cluster resource.", + "description": "Update the configuration of a Service Fabric cluster resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "The parameters which contains the property value and property name which used to update the cluster configuration.", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterUpdateParameters" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Patch a cluster": { + "$ref": "./examples/ClusterPatchOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "delete": { + "tags": [ + "Cluster" + ], + "operationId": "Clusters_Delete", + "summary": "Deletes a Service Fabric cluster resource.", + "description": "Delete a Service Fabric cluster resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "x-ms-examples": { + "Delete a cluster": { + "$ref": "./examples/ClusterDeleteOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully." + }, + "204": { + "description": "The resource was not found." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters": { + "get": { + "operationId": "Clusters_ListByResourceGroup", + "summary": "Gets the list of Service Fabric cluster resources created in the specified resource group.", + "description": "Gets all Service Fabric cluster resources created or in the process of being created in the resource group.", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "tags": [ + "Cluster" + ], + "x-ms-examples": { + "List cluster by resource group": { + "$ref": "./examples/ClusterListByResourceGroupOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ClusterListResult" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/clusters": { + "get": { + "operationId": "Clusters_List", + "summary": "Gets the list of Service Fabric cluster resources created in the specified subscription.", + "description": "Gets all Service Fabric cluster resources created or in the process of being created in the subscription.", + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "tags": [ + "Cluster" + ], + "x-ms-examples": { + "List clusters": { + "$ref": "./examples/ClusterListOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ClusterListResult" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/clusterVersions/{clusterVersion}": { + "get": { + "operationId": "ClusterVersions_Get", + "summary": "Gets information about a Service Fabric cluster code version available in the specified location.", + "description": "Gets information about an available Service Fabric cluster code version.", + "parameters": [ + { + "$ref": "#/parameters/locationForClusterCodeVersions" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/clusterVersion" + } + ], + "x-ms-examples": { + "Get cluster version": { + "$ref": "./examples/ClusterVersionsGet_example.json" + } + }, + "tags": [ + "ClusterVersion" + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ClusterCodeVersionsListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/environments/{environment}/clusterVersions/{clusterVersion}": { + "get": { + "operationId": "ClusterVersions_GetByEnvironment", + "summary": "Gets information about a Service Fabric cluster code version available for the specified environment.", + "description": "Gets information about an available Service Fabric cluster code version by environment.", + "parameters": [ + { + "$ref": "#/parameters/locationForClusterCodeVersions" + }, + { + "$ref": "#/parameters/environment" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/clusterVersion" + } + ], + "x-ms-examples": { + "Get cluster version by environment": { + "$ref": "./examples/ClusterVersionsGetByEnvironment_example.json" + } + }, + "tags": [ + "ClusterVersion" + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ClusterCodeVersionsListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/clusterVersions": { + "get": { + "operationId": "ClusterVersions_List", + "summary": "Gets the list of Service Fabric cluster code versions available for the specified location.", + "description": "Gets all available code versions for Service Fabric cluster resources by location.", + "parameters": [ + { + "$ref": "#/parameters/locationForClusterCodeVersions" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "x-ms-examples": { + "List cluster versions": { + "$ref": "./examples/ClusterVersionsList_example.json" + } + }, + "tags": [ + "ClusterVersion" + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ClusterCodeVersionsListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/environments/{environment}/clusterVersions": { + "get": { + "operationId": "ClusterVersions_ListByEnvironment", + "summary": "Gets the list of Service Fabric cluster code versions available for the specified environment.", + "description": "Gets all available code versions for Service Fabric cluster resources by environment.", + "parameters": [ + { + "$ref": "#/parameters/locationForClusterCodeVersions" + }, + { + "$ref": "#/parameters/environment" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "x-ms-examples": { + "List cluster versions by environment": { + "$ref": "./examples/ClusterVersionsListByEnvironment.json" + } + }, + "tags": [ + "ClusterVersion" + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ClusterCodeVersionsListResult" + } + } + } + } + }, + "/providers/Microsoft.ServiceFabric/operations": { + "get": { + "tags": [ + "Operations" + ], + "summary": "Lists all of the available Service Fabric resource provider API operations.", + "description": "Get the list of available Service Fabric resource provider API operations.", + "operationId": "Operations_List", + "parameters": [ + { + "name": "api-version", + "in": "query", + "description": "The version of the Service Fabric resource provider API", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AddOnFeatures": { + "type": "string", + "description": "Available cluster add-on features", + "enum": [ + "RepairManager", + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ] + }, + "ApplicationTypeVersionsCleanupPolicy": { + "required": [ + "maxUnusedVersionsToKeep" + ], + "properties": { + "maxUnusedVersionsToKeep": { + "type": "integer", + "minimum": 0, + "description": "Number of unused versions per application type to keep." + } + } + }, + "ApplicationDeltaHealthPolicy": { + "type": "object", + "description": "Defines a delta health policy used to evaluate the health of an application or one of its child entities when upgrading the cluster.\n", + "properties": { + "defaultServiceTypeDeltaHealthPolicy": { + "$ref": "#/definitions/ServiceTypeDeltaHealthPolicy", + "description": "The delta health policy used by default to evaluate the health of a service type when upgrading the cluster." + }, + "serviceTypeDeltaHealthPolicies": { + "$ref": "#/definitions/ServiceTypeDeltaHealthPolicyMap", + "description": "The map with service type delta health policy per service type name. The map is empty by default." + } + } + }, + "ApplicationDeltaHealthPolicyMap": { + "type": "object", + "description": "Defines a map that contains specific application delta health policies for different applications.\nEach entry specifies as key the application name and as value an ApplicationDeltaHealthPolicy used to evaluate the application health when upgrading the cluster.\nThe application name should include the 'fabric:' URI scheme.\nThe map is empty by default.\n", + "additionalProperties": { + "$ref": "#/definitions/ApplicationDeltaHealthPolicy" + } + }, + "ApplicationHealthPolicy": { + "type": "object", + "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n", + "properties": { + "defaultServiceTypeHealthPolicy": { + "$ref": "#/definitions/ServiceTypeHealthPolicy", + "description": "The health policy used by default to evaluate the health of a service type." + }, + "serviceTypeHealthPolicies": { + "$ref": "#/definitions/ServiceTypeHealthPolicyMap", + "description": "The map with service type health policy per service type name. The map is empty by default." + } + } + }, + "ApplicationHealthPolicyMap": { + "type": "object", + "description": "Defines a map that contains specific application health policies for different applications.\nEach entry specifies as key the application name and as value an ApplicationHealthPolicy used to evaluate the application health.\nThe application name should include the 'fabric:' URI scheme.\nThe map is empty by default.\n", + "additionalProperties": { + "$ref": "#/definitions/ApplicationHealthPolicy" + } + }, + "AvailableOperationDisplay": { + "properties": { + "provider": { + "type": "string", + "description": "The name of the provider." + }, + "resource": { + "type": "string", + "description": "The resource on which the operation is performed" + }, + "operation": { + "type": "string", + "description": "The operation that can be performed." + }, + "description": { + "type": "string", + "description": "Operation description" + } + }, + "description": "Operation supported by the Service Fabric resource provider" + }, + "AzureActiveDirectory": { + "properties": { + "tenantId": { + "type": "string", + "description": "Azure active directory tenant id." + }, + "clusterApplication": { + "type": "string", + "description": "Azure active directory cluster application id." + }, + "clientApplication": { + "type": "string", + "description": "Azure active directory client application id." + } + }, + "description": "The settings to enable AAD authentication on the cluster." + }, + "CertificateDescription": { + "required": [ + "thumbprint" + ], + "properties": { + "thumbprint": { + "type": "string", + "description": "Thumbprint of the primary certificate." + }, + "thumbprintSecondary": { + "type": "string", + "description": "Thumbprint of the secondary certificate." + }, + "x509StoreName": { + "$ref": "#/definitions/StoreName", + "description": "The local certificate store location." + } + }, + "description": "Describes the certificate details." + }, + "ClientCertificateCommonName": { + "required": [ + "certificateCommonName", + "isAdmin", + "certificateIssuerThumbprint" + ], + "properties": { + "isAdmin": { + "type": "boolean", + "description": "Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster." + }, + "certificateCommonName": { + "type": "string", + "description": "The common name of the client certificate." + }, + "certificateIssuerThumbprint": { + "type": "string", + "description": "The issuer thumbprint of the client certificate." + } + }, + "description": "Describes the client certificate details using common name." + }, + "ClientCertificateThumbprint": { + "required": [ + "certificateThumbprint", + "isAdmin" + ], + "properties": { + "isAdmin": { + "type": "boolean", + "description": "Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster." + }, + "certificateThumbprint": { + "type": "string", + "description": "The thumbprint of the client certificate." + } + }, + "description": "Describes the client certificate details using thumbprint." + }, + "Cluster": { + "type": "object", + "description": "The cluster resource\n", + "allOf": [ + { + "description": "The cluster resource properties" + }, + { + "$ref": "#/definitions/Resource" + }, + { + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterProperties", + "description": "The cluster resource properties" + } + } + } + ] + }, + "ClusterCodeVersionsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ClusterCodeVersionsResult" + } + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "The list results of the Service Fabric runtime versions." + }, + "ClusterCodeVersionsResult": { + "properties": { + "id": { + "type": "string", + "description": "The identification of the result" + }, + "name": { + "type": "string", + "description": "The name of the result" + }, + "type": { + "type": "string", + "description": "The result resource type" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterVersionDetails", + "description": "The detail of the Service Fabric runtime version result" + } + }, + "description": "The result of the Service Fabric runtime versions" + }, + "ClusterEnvironment": { + "type": "string", + "description": "Cluster operating system, the default will be Windows", + "enum": [ + "Windows", + "Linux" + ] + }, + "ClusterHealthPolicy": { + "type": "object", + "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node.\n", + "properties": { + "maxPercentUnhealthyNodes": { + "type": "integer", + "description": "The maximum allowed percentage of unhealthy nodes before reporting an error. For example, to allow 10% of nodes to be unhealthy, this value would be 10.\n\nThe percentage represents the maximum tolerated percentage of nodes that can be unhealthy before the cluster is considered in error.\nIf the percentage is respected but there is at least one unhealthy node, the health is evaluated as Warning.\nThe percentage is calculated by dividing the number of unhealthy nodes over the total number of nodes in the cluster.\nThe computation rounds up to tolerate one failure on small numbers of nodes. Default percentage is zero.\n\nIn large clusters, some nodes will always be down or out for repairs, so this percentage should be configured to tolerate that.\n", + "default": 0, + "minimum": 0, + "maximum": 100 + }, + "maxPercentUnhealthyApplications": { + "type": "integer", + "description": "The maximum allowed percentage of unhealthy applications before reporting an error. For example, to allow 10% of applications to be unhealthy, this value would be 10.\n\nThe percentage represents the maximum tolerated percentage of applications that can be unhealthy before the cluster is considered in error.\nIf the percentage is respected but there is at least one unhealthy application, the health is evaluated as Warning.\nThis is calculated by dividing the number of unhealthy applications over the total number of application instances in the cluster, excluding applications of application types that are included in the ApplicationTypeHealthPolicyMap.\nThe computation rounds up to tolerate one failure on small numbers of applications. Default percentage is zero.\n", + "default": 0, + "minimum": 0, + "maximum": 100 + }, + "applicationHealthPolicies": { + "$ref": "#/definitions/ApplicationHealthPolicyMap", + "description": "Defines the application health policy map used to evaluate the health of an application or one of its children entities." + } + } + }, + "ClusterListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Cluster" + } + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Cluster list results" + }, + "ClusterProperties": { + "required": [ + "managementEndpoint", + "nodeTypes" + ], + "properties": { + "addOnFeatures": { + "type": "array", + "description": "The list of add-on features to enable in the cluster.", + "items": { + "$ref": "#/definitions/AddOnFeatures" + } + }, + "availableClusterVersions": { + "type": "array", + "description": "The Service Fabric runtime versions available for this cluster.", + "readOnly": true, + "items": { + "$ref": "#/definitions/ClusterVersionDetails" + } + }, + "azureActiveDirectory": { + "$ref": "#/definitions/AzureActiveDirectory", + "description": "The AAD authentication settings of the cluster." + }, + "certificate": { + "$ref": "#/definitions/CertificateDescription", + "description": "The certificate to use for securing the cluster. The certificate provided will be used for node to node security within the cluster, SSL certificate for cluster management endpoint and default admin client." + }, + "certificateCommonNames": { + "$ref": "#/definitions/ServerCertificateCommonNames", + "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." + }, + "clientCertificateCommonNames": { + "type": "array", + "description": "The list of client certificates referenced by common name that are allowed to manage the cluster.", + "items": { + "$ref": "#/definitions/ClientCertificateCommonName" + } + }, + "clientCertificateThumbprints": { + "type": "array", + "description": "The list of client certificates referenced by thumbprint that are allowed to manage the cluster.", + "items": { + "$ref": "#/definitions/ClientCertificateThumbprint" + } + }, + "clusterCodeVersion": { + "type": "string", + "description": "The Service Fabric runtime version of the cluster. This property can only by set the user when **upgradeMode** is set to 'Manual'. To get list of available Service Fabric versions for new clusters use [ClusterVersion API](./ClusterVersion.md). To get the list of available version for existing clusters use **availableClusterVersions**." + }, + "clusterEndpoint": { + "type": "string", + "description": "The Azure Resource Provider endpoint. A system service in the cluster connects to this endpoint.", + "readOnly": true + }, + "clusterId": { + "type": "string", + "description": "A service generated unique identifier for the cluster resource.", + "readOnly": true + }, + "clusterState": { + "readOnly": true, + "$ref": "#/definitions/ClusterState", + "description": "The current state of the cluster.\n\n - WaitingForNodes - Indicates that the cluster resource is created and the resource provider is waiting for Service Fabric VM extension to boot up and report to it.\n - Deploying - Indicates that the Service Fabric runtime is being installed on the VMs. Cluster resource will be in this state until the cluster boots up and system services are up.\n - BaselineUpgrade - Indicates that the cluster is upgrading to establishes the cluster version. This upgrade is automatically initiated when the cluster boots up for the first time.\n - UpdatingUserConfiguration - Indicates that the cluster is being upgraded with the user provided configuration.\n - UpdatingUserCertificate - Indicates that the cluster is being upgraded with the user provided certificate.\n - UpdatingInfrastructure - Indicates that the cluster is being upgraded with the latest Service Fabric runtime version. This happens only when the **upgradeMode** is set to 'Automatic'.\n - EnforcingClusterVersion - Indicates that cluster is on a different version than expected and the cluster is being upgraded to the expected version.\n - UpgradeServiceUnreachable - Indicates that the system service in the cluster is no longer polling the Resource Provider. Clusters in this state cannot be managed by the Resource Provider.\n - AutoScale - Indicates that the ReliabilityLevel of the cluster is being adjusted.\n - Ready - Indicates that the cluster is in a stable state.\n" + }, + "diagnosticsStorageAccountConfig": { + "$ref": "#/definitions/DiagnosticsStorageAccountConfig", + "description": "The storage account information for storing Service Fabric diagnostic logs." + }, + "eventStoreServiceEnabled": { + "type": "boolean", + "description": "Indicates if the event store service is enabled." + }, + "fabricSettings": { + "type": "array", + "description": "The list of custom fabric settings to configure the cluster.", + "items": { + "$ref": "#/definitions/SettingsSectionDescription" + } + }, + "managementEndpoint": { + "type": "string", + "description": "The http management endpoint of the cluster." + }, + "nodeTypes": { + "type": "array", + "description": "The list of node types in the cluster.", + "items": { + "$ref": "#/definitions/NodeTypeDescription" + } + }, + "provisioningState": { + "type": "string", + "description": "The provisioning state of the cluster resource.", + "readOnly": true, + "enum": [ + "Updating", + "Succeeded", + "Failed", + "Canceled" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "reliabilityLevel": { + "$ref": "#/definitions/ReliabilityLevel", + "description": "The reliability level sets the replica set size of system services. Learn about [ReliabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - None - Run the System services with a target replica set count of 1. This should only be used for test clusters.\n - Bronze - Run the System services with a target replica set count of 3. This should only be used for test clusters.\n - Silver - Run the System services with a target replica set count of 5.\n - Gold - Run the System services with a target replica set count of 7.\n - Platinum - Run the System services with a target replica set count of 9.\n" + }, + "reverseProxyCertificate": { + "$ref": "#/definitions/CertificateDescription", + "description": "The server certificate used by reverse proxy." + }, + "reverseProxyCertificateCommonNames": { + "$ref": "#/definitions/ServerCertificateCommonNames", + "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." + }, + "upgradeDescription": { + "$ref": "#/definitions/ClusterUpgradePolicy", + "description": "The policy to use when upgrading the cluster." + }, + "upgradeMode": { + "$ref": "#/definitions/UpgradeMode", + "description": "The upgrade mode of the cluster when new Service Fabric runtime version is available.\n\n - Automatic - The cluster will be automatically upgraded to the latest Service Fabric runtime version as soon as it is available.\n - Manual - The cluster will not be automatically upgraded to the latest Service Fabric runtime version. The cluster is upgraded by setting the **clusterCodeVersion** property in the cluster resource.\n" + }, + "applicationTypeVersionsCleanupPolicy": { + "$ref": "#/definitions/ApplicationTypeVersionsCleanupPolicy", + "description": "The policy used to clean up unused versions." + }, + "vmImage": { + "type": "string", + "description": "The VM image VMSS has been configured with. Generic names such as Windows or Linux can be used." + } + }, + "description": "Describes the cluster resource properties." + }, + "ClusterPropertiesUpdateParameters": { + "properties": { + "addOnFeatures": { + "type": "array", + "description": "The list of add-on features to enable in the cluster.", + "items": { + "$ref": "#/definitions/AddOnFeatures" + } + }, + "certificate": { + "$ref": "#/definitions/CertificateDescription", + "description": "The certificate to use for securing the cluster. The certificate provided will be used for node to node security within the cluster, SSL certificate for cluster management endpoint and default admin client." + }, + "certificateCommonNames": { + "$ref": "#/definitions/ServerCertificateCommonNames", + "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." + }, + "clientCertificateCommonNames": { + "type": "array", + "description": "The list of client certificates referenced by common name that are allowed to manage the cluster. This will overwrite the existing list.", + "items": { + "$ref": "#/definitions/ClientCertificateCommonName" + } + }, + "clientCertificateThumbprints": { + "type": "array", + "description": "The list of client certificates referenced by thumbprint that are allowed to manage the cluster. This will overwrite the existing list.", + "items": { + "$ref": "#/definitions/ClientCertificateThumbprint" + } + }, + "clusterCodeVersion": { + "type": "string", + "description": "The Service Fabric runtime version of the cluster. This property can only by set the user when **upgradeMode** is set to 'Manual'. To get list of available Service Fabric versions for new clusters use [ClusterVersion API](./ClusterVersion.md). To get the list of available version for existing clusters use **availableClusterVersions**." + }, + "eventStoreServiceEnabled": { + "type": "boolean", + "description": "Indicates if the event store service is enabled." + }, + "fabricSettings": { + "type": "array", + "description": "The list of custom fabric settings to configure the cluster. This will overwrite the existing list.", + "items": { + "$ref": "#/definitions/SettingsSectionDescription" + } + }, + "nodeTypes": { + "type": "array", + "description": "The list of node types in the cluster. This will overwrite the existing list.", + "items": { + "$ref": "#/definitions/NodeTypeDescription" + } + }, + "reliabilityLevel": { + "$ref": "#/definitions/ReliabilityLevel", + "description": "The reliability level sets the replica set size of system services. Learn about [ReliabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - None - Run the System services with a target replica set count of 1. This should only be used for test clusters.\n - Bronze - Run the System services with a target replica set count of 3. This should only be used for test clusters.\n - Silver - Run the System services with a target replica set count of 5.\n - Gold - Run the System services with a target replica set count of 7.\n - Platinum - Run the System services with a target replica set count of 9.\n" + }, + "reverseProxyCertificate": { + "$ref": "#/definitions/CertificateDescription", + "description": "The server certificate used by reverse proxy." + }, + "upgradeDescription": { + "$ref": "#/definitions/ClusterUpgradePolicy", + "description": "The policy to use when upgrading the cluster." + }, + "upgradeMode": { + "$ref": "#/definitions/UpgradeMode", + "description": "The upgrade mode of the cluster when new Service Fabric runtime version is available.\n\n - Automatic - The cluster will be automatically upgraded to the latest Service Fabric runtime version as soon as it is available.\n - Manual - The cluster will not be automatically upgraded to the latest Service Fabric runtime version. The cluster is upgraded by setting the **clusterCodeVersion** property in the cluster resource.\n" + }, + "applicationTypeVersionsCleanupPolicy": { + "$ref": "#/definitions/ApplicationTypeVersionsCleanupPolicy", + "description": "The policy used to clean up unused versions." + } + }, + "description": "Describes the cluster resource properties that can be updated during PATCH operation." + }, + "ClusterState": { + "type": "string", + "description": "The current state of the cluster.\n\n - WaitingForNodes - Indicates that the cluster resource is created and the resource provider is waiting for Service Fabric VM extension to boot up and report to it.\n - Deploying - Indicates that the Service Fabric runtime is being installed on the VMs. Cluster resource will be in this state until the cluster boots up and system services are up.\n - BaselineUpgrade - Indicates that the cluster is upgrading to establishes the cluster version. This upgrade is automatically initiated when the cluster boots up for the first time.\n - UpdatingUserConfiguration - Indicates that the cluster is being upgraded with the user provided configuration.\n - UpdatingUserCertificate - Indicates that the cluster is being upgraded with the user provided certificate.\n - UpdatingInfrastructure - Indicates that the cluster is being upgraded with the latest Service Fabric runtime version. This happens only when the **upgradeMode** is set to 'Automatic'.\n - EnforcingClusterVersion - Indicates that cluster is on a different version than expected and the cluster is being upgraded to the expected version.\n - UpgradeServiceUnreachable - Indicates that the system service in the cluster is no longer polling the Resource Provider. Clusters in this state cannot be managed by the Resource Provider.\n - AutoScale - Indicates that the ReliabilityLevel of the cluster is being adjusted.\n - Ready - Indicates that the cluster is in a stable state.\n", + "enum": [ + "WaitingForNodes", + "Deploying", + "BaselineUpgrade", + "UpdatingUserConfiguration", + "UpdatingUserCertificate", + "UpdatingInfrastructure", + "EnforcingClusterVersion", + "UpgradeServiceUnreachable", + "AutoScale", + "Ready" + ] + }, + "ClusterUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterPropertiesUpdateParameters", + "description": "Describes the cluster resource properties that can be updated during PATCH operation." + }, + "tags": { + "type": "object", + "description": "Cluster update parameters", + "additionalProperties": { + "type": "string" + } + } + }, + "description": "Cluster update request" + }, + "ClusterUpgradeDeltaHealthPolicy": { + "description": "Describes the delta health policies for the cluster upgrade.", + "required": [ + "maxPercentDeltaUnhealthyApplications", + "maxPercentDeltaUnhealthyNodes", + "maxPercentUpgradeDomainDeltaUnhealthyNodes" + ], + "properties": { + "maxPercentDeltaUnhealthyNodes": { + "type": "integer", + "description": "The maximum allowed percentage of nodes health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the nodes at the beginning of upgrade and the state of the nodes at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits.\n", + "minimum": 0, + "maximum": 100 + }, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": { + "type": "integer", + "description": "The maximum allowed percentage of upgrade domain nodes health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the upgrade domain nodes at the beginning of upgrade and the state of the upgrade domain nodes at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion for all completed upgrade domains to make sure the state of the upgrade domains is within tolerated limits.\n", + "minimum": 0, + "maximum": 100 + }, + "maxPercentDeltaUnhealthyApplications": { + "type": "integer", + "description": "The maximum allowed percentage of applications health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the applications at the beginning of upgrade and the state of the applications at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits. System services are not included in this.\n", + "minimum": 0, + "maximum": 100 + }, + "applicationDeltaHealthPolicies": { + "$ref": "#/definitions/ApplicationDeltaHealthPolicyMap", + "description": "Defines the application delta health policy map used to evaluate the health of an application or one of its child entities when upgrading the cluster." + } + } + }, + "ClusterUpgradePolicy": { + "required": [ + "healthCheckRetryTimeout", + "healthCheckStableDuration", + "healthCheckWaitDuration", + "healthPolicy", + "upgradeDomainTimeout", + "upgradeReplicaSetCheckTimeout", + "upgradeTimeout" + ], + "properties": { + "forceRestart": { + "type": "boolean", + "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." + }, + "upgradeReplicaSetCheckTimeout": { + "type": "string", + "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." + }, + "healthCheckWaitDuration": { + "type": "string", + "description": "The length of time to wait after completing an upgrade domain before performing health checks. The duration can be in either hh:mm:ss or in d.hh:mm:ss.ms format." + }, + "healthCheckStableDuration": { + "type": "string", + "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. The duration can be in either hh:mm:ss or in d.hh:mm:ss.ms format." + }, + "healthCheckRetryTimeout": { + "type": "string", + "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." + }, + "upgradeTimeout": { + "type": "string", + "description": "The amount of time the overall upgrade has to complete before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." + }, + "upgradeDomainTimeout": { + "type": "string", + "description": "The amount of time each upgrade domain has to complete before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." + }, + "healthPolicy": { + "$ref": "#/definitions/ClusterHealthPolicy", + "description": "The cluster health policy used when upgrading the cluster." + }, + "deltaHealthPolicy": { + "$ref": "#/definitions/ClusterUpgradeDeltaHealthPolicy", + "description": "The cluster delta health policy used when upgrading the cluster." + } + }, + "description": "Describes the policy used when upgrading the cluster." + }, + "ClusterVersionDetails": { + "properties": { + "codeVersion": { + "type": "string", + "description": "The Service Fabric runtime version of the cluster." + }, + "supportExpiryUtc": { + "type": "string", + "description": "The date of expiry of support of the version." + }, + "environment": { + "$ref": "#/definitions/ClusterEnvironment", + "description": "Indicates if this version is for Windows or Linux operating system." + } + }, + "description": "The detail of the Service Fabric runtime version result" + }, + "DiagnosticsStorageAccountConfig": { + "required": [ + "blobEndpoint", + "protectedAccountKeyName", + "queueEndpoint", + "storageAccountName", + "tableEndpoint" + ], + "properties": { + "storageAccountName": { + "type": "string", + "description": "The Azure storage account name." + }, + "protectedAccountKeyName": { + "type": "string", + "description": "The protected diagnostics storage key name." + }, + "protectedAccountKeyName2": { + "type": "string", + "description": "The secondary protected diagnostics storage key name. If one of the storage account keys is rotated the cluster will fallback to using the other." + }, + "blobEndpoint": { + "type": "string", + "description": "The blob endpoint of the azure storage account." + }, + "queueEndpoint": { + "type": "string", + "description": "The queue endpoint of the azure storage account." + }, + "tableEndpoint": { + "type": "string", + "description": "The table endpoint of the azure storage account." + } + }, + "description": "The storage account information for storing Service Fabric diagnostic logs." + }, + "DurabilityLevel": { + "type": "string", + "description": "The durability level of the node type. Learn about [DurabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - Bronze - No privileges. This is the default.\n - Silver - The infrastructure jobs can be paused for a duration of 10 minutes per UD.\n - Gold - The infrastructure jobs can be paused for a duration of 2 hours per UD. Gold durability can be enabled only on full node VM skus like D15_V2, G5 etc.\n", + "enum": [ + "Bronze", + "Silver", + "Gold" + ] + }, + "EndpointRangeDescription": { + "required": [ + "endPort", + "startPort" + ], + "properties": { + "startPort": { + "type": "integer", + "description": "Starting port of a range of ports" + }, + "endPort": { + "type": "integer", + "description": "End port of a range of ports" + } + }, + "description": "Port range details" + }, + "NodeTypeDescription": { + "required": [ + "clientConnectionEndpointPort", + "httpGatewayEndpointPort", + "isPrimary", + "name", + "vmInstanceCount" + ], + "properties": { + "name": { + "type": "string", + "description": "The name of the node type." + }, + "placementProperties": { + "type": "object", + "description": "The placement tags applied to nodes in the node type, which can be used to indicate where certain services (workload) should run.", + "additionalProperties": { + "type": "string", + "description": "Placement tag value" + } + }, + "capacities": { + "type": "object", + "description": "The capacity tags applied to the nodes in the node type, the cluster resource manager uses these tags to understand how much resource a node has.", + "additionalProperties": { + "type": "string", + "description": "Capacity tag value" + } + }, + "clientConnectionEndpointPort": { + "type": "integer", + "description": "The TCP cluster management endpoint port." + }, + "httpGatewayEndpointPort": { + "type": "integer", + "description": "The HTTP cluster management endpoint port." + }, + "durabilityLevel": { + "$ref": "#/definitions/DurabilityLevel", + "description": "The durability level of the node type. Learn about [DurabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - Bronze - No privileges. This is the default.\n - Silver - The infrastructure jobs can be paused for a duration of 10 minutes per UD.\n - Gold - The infrastructure jobs can be paused for a duration of 2 hours per UD. Gold durability can be enabled only on full node VM skus like D15_V2, G5 etc.\n" + }, + "applicationPorts": { + "$ref": "#/definitions/EndpointRangeDescription", + "description": "The range of ports from which cluster assigned port to Service Fabric applications." + }, + "ephemeralPorts": { + "$ref": "#/definitions/EndpointRangeDescription", + "description": "The range of ephemeral ports that nodes in this node type should be configured with." + }, + "isPrimary": { + "type": "boolean", + "description": "The node type on which system services will run. Only one node type should be marked as primary. Primary node type cannot be deleted or changed for existing clusters." + }, + "vmInstanceCount": { + "type": "integer", + "description": "The number of nodes in the node type. This count should match the capacity property in the corresponding VirtualMachineScaleSet resource.", + "minimum": 1, + "maximum": 2147483647 + }, + "reverseProxyEndpointPort": { + "type": "integer", + "description": "The endpoint used by reverse proxy." + } + }, + "description": "Describes a node type in the cluster, each node type represents sub set of nodes in the cluster." + }, + "OperationListResult": { + "properties": { + "value": { + "type": "array", + "description": "List of operations supported by the Service Fabric resource provider.", + "items": { + "$ref": "#/definitions/OperationResult" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any.", + "readOnly": true + } + }, + "description": "Describes the result of the request to list Service Fabric resource provider operations." + }, + "OperationResult": { + "properties": { + "name": { + "type": "string", + "description": "The name of the operation." + }, + "display": { + "$ref": "#/definitions/AvailableOperationDisplay", + "description": "The object that represents the operation." + }, + "origin": { + "type": "string", + "description": "Origin result" + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Available operation list result" + }, + "ReliabilityLevel": { + "type": "string", + "description": "The reliability level sets the replica set size of system services. Learn about [ReliabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - None - Run the System services with a target replica set count of 1. This should only be used for test clusters.\n - Bronze - Run the System services with a target replica set count of 3. This should only be used for test clusters.\n - Silver - Run the System services with a target replica set count of 5.\n - Gold - Run the System services with a target replica set count of 7.\n - Platinum - Run the System services with a target replica set count of 9.\n", + "enum": [ + "None", + "Bronze", + "Silver", + "Gold", + "Platinum" + ] + }, + "Resource": { + "required": [ + "location" + ], + "properties": { + "id": { + "type": "string", + "description": "Azure resource identifier.", + "readOnly": true + }, + "name": { + "type": "string", + "description": "Azure resource name.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "Azure resource type.", + "readOnly": true + }, + "location": { + "type": "string", + "description": "Azure resource location.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "type": "object", + "description": "Azure resource tags.", + "additionalProperties": { + "type": "string" + } + }, + "etag": { + "type": "string", + "description": "Azure resource etag.", + "readOnly": true + } + }, + "description": "The resource model definition.", + "x-ms-azure-resource": true + }, + "ServerCertificateCommonName": { + "description": "Describes the server certificate details using common name.", + "required": [ + "certificateCommonName", + "certificateIssuerThumbprint" + ], + "properties": { + "certificateCommonName": { + "type": "string", + "description": "The common name of the server certificate." + }, + "certificateIssuerThumbprint": { + "type": "string", + "description": "The issuer thumbprint of the server certificate." + } + } + }, + "ServerCertificateCommonNames": { + "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster.", + "properties": { + "commonNames": { + "type": "array", + "description": "The list of server certificates referenced by common name that are used to secure the cluster.", + "items": { + "$ref": "#/definitions/ServerCertificateCommonName" + } + }, + "x509StoreName": { + "$ref": "#/definitions/StoreName", + "description": "The local certificate store location." + } + } + }, + "ServiceTypeDeltaHealthPolicy": { + "type": "object", + "description": "Represents the delta health policy used to evaluate the health of services belonging to a service type when upgrading the cluster.\n", + "properties": { + "maxPercentDeltaUnhealthyServices": { + "type": "integer", + "description": "The maximum allowed percentage of services health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the services at the beginning of upgrade and the state of the services at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits.\n", + "default": 0, + "minimum": 0, + "maximum": 100 + } + } + }, + "ServiceTypeDeltaHealthPolicyMap": { + "type": "object", + "description": "Defines a map that contains specific delta health policies for different service types.\nEach entry specifies as key the service type name and as value a ServiceTypeDeltaHealthPolicy used to evaluate the service health when upgrading the cluster.\nThe map is empty by default.\n", + "additionalProperties": { + "$ref": "#/definitions/ServiceTypeDeltaHealthPolicy" + } + }, + "SettingsParameterDescription": { + "required": [ + "name", + "value" + ], + "properties": { + "name": { + "type": "string", + "description": "The parameter name of fabric setting." + }, + "value": { + "type": "string", + "description": "The parameter value of fabric setting." + } + }, + "description": "Describes a parameter in fabric settings of the cluster." + }, + "SettingsSectionDescription": { + "required": [ + "name", + "parameters" + ], + "properties": { + "name": { + "type": "string", + "description": "The section name of the fabric settings." + }, + "parameters": { + "type": "array", + "description": "The collection of parameters in the section.", + "items": { + "$ref": "#/definitions/SettingsParameterDescription" + } + } + }, + "description": "Describes a section in the fabric settings of the cluster." + }, + "StoreName": { + "type": "string", + "description": "The local certificate store location.", + "enum": [ + "AddressBook", + "AuthRoot", + "CertificateAuthority", + "Disallowed", + "My", + "Root", + "TrustedPeople", + "TrustedPublisher" + ] + }, + "UpgradeMode": { + "type": "string", + "description": "The upgrade mode of the cluster when new Service Fabric runtime version is available.\n\n - Automatic - The cluster will be automatically upgraded to the latest Service Fabric runtime version as soon as it is available.\n - Manual - The cluster will not be automatically upgraded to the latest Service Fabric runtime version. The cluster is upgraded by setting the **clusterCodeVersion** property in the cluster resource.\n", + "enum": [ + "Automatic", + "Manual" + ] + }, + "ErrorModel": { + "properties": { + "error": { + "$ref": "#/definitions/ErrorModelError", + "description": "The error details." + } + }, + "description": "The structure of the error." + }, + "ErrorModelError": { + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "The error details." + }, + "ServiceTypeHealthPolicy": { + "type": "object", + "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n", + "properties": { + "maxPercentUnhealthyServices": { + "type": "integer", + "description": "The maximum percentage of services allowed to be unhealthy before your application is considered in error.\n", + "default": 0, + "minimum": 0, + "maximum": 100 + } + } + }, + "ServiceTypeHealthPolicyMap": { + "type": "object", + "description": "Defines a ServiceTypeHealthPolicy per service type name.\n\nThe entries in the map replace the default service type health policy for each specified service type.\nFor example, in an application that contains both a stateless gateway service type and a stateful engine service type, the health policies for the stateless and stateful services can be configured differently.\nWith policy per service type, there's more granular control of the health of the service.\n\nIf no policy is specified for a service type name, the DefaultServiceTypeHealthPolicy is used for evaluation.\n", + "additionalProperties": { + "$ref": "#/definitions/ServiceTypeHealthPolicy" + } + } + }, + "parameters": { + "api-version": { + "name": "api-version", + "in": "query", + "description": "The version of the Service Fabric resource provider API. This is a required parameter and it's value must be \"2019-11-01-preview\" for this specification.", + "required": true, + "type": "string", + "enum": [ + "2019-11-01-preview" + ], + "default": "2019-11-01-preview", + "x-ms-parameter-location": "client" + }, + "clusterNameParameter": { + "name": "clusterName", + "in": "path", + "description": "The name of the cluster resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "clusterVersion": { + "name": "clusterVersion", + "in": "path", + "description": "The cluster code version.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "environment": { + "name": "environment", + "in": "path", + "description": "The operating system of the cluster. The default means all.", + "required": true, + "type": "string", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-parameter-location": "method" + }, + "locationForClusterCodeVersions": { + "name": "location", + "in": "path", + "description": "The location for the cluster code versions. This is different from cluster location.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "subscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The customer subscription identifier.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationDeleteOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationDeleteOperation_example.json new file mode 100644 index 000000000000..a4b79111112d --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationDeleteOperation_example.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "api-version": "2019-11-01-preview" + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/76053752-a423-4a80-b283-1dad1ba5f314?api-version=2019-11-01-preview" + } + }, + "204": {} + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationGetOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationGetOperation_example.json new file mode 100644 index 000000000000..c8ab19835706 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationGetOperation_example.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "applications", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502180261859\"", + "properties": { + "provisioningState": "Updating", + "typeName": "myAppType", + "typeVersion": "1.0", + "parameters": { + "param1": "value1" + }, + "upgradePolicy": { + "upgradeMode": "Monitored", + "applicationHealthPolicy": { + "considerWarningAsError": true, + "maxPercentUnhealthyDeployedApplications": 0, + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0, + "maxPercentUnhealthyPartitionsPerService": 0, + "maxPercentUnhealthyReplicasPerPartition": 0 + } + }, + "rollingUpgradeMonitoringPolicy": { + "failureAction": "Rollback", + "healthCheckRetryTimeout": "00:10:00", + "healthCheckWaitDuration": "00:02:00", + "healthCheckStableDuration": "00:05:00", + "upgradeDomainTimeout": "1.06:00:00", + "upgradeTimeout": "01:00:00" + }, + "upgradeReplicaSetCheckTimeout": "01:00:00", + "forceRestart": false + }, + "maximumNodes": 3, + "minimumNodes": 1, + "removeApplicationCapacity": false, + "metrics": [ + { + "name": "metric1", + "reservationCapacity": 1, + "maximumCapacity": 3, + "totalApplicationCapacity": 5 + } + ] + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationListOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationListOperation_example.json new file mode 100644 index 000000000000..4ca847c796fe --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationListOperation_example.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "type": "applications", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502180261858\"", + "properties": { + "provisioningState": "Updating", + "typeName": "myAppType", + "typeVersion": "1.0", + "removeApplicationCapacity": false, + "metrics": [ + { + "name": "metric1", + "reservationCapacity": 1, + "maximumCapacity": 3, + "totalApplicationCapacity": 5 + } + ] + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationPatchOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationPatchOperation_example.json new file mode 100644 index 000000000000..eea1728a2f67 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationPatchOperation_example.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "api-version": "2019-11-01-preview", + "parameters": { + "properties": { + "typeVersion": "1.0", + "removeApplicationCapacity": false, + "metrics": [ + { + "name": "metric1", + "reservationCapacity": 1, + "maximumCapacity": 3, + "totalApplicationCapacity": 5 + } + ] + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/a553eb63-c332-40df-8ace-eb8d34a9b298?api-version=2019-11-01-preview" + }, + "body": { + "type": "applications", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502180261858\"", + "properties": { + "provisioningState": "Updating", + "typeName": "myAppType", + "typeVersion": "1.0", + "removeApplicationCapacity": false, + "metrics": [ + { + "name": "metric1", + "reservationCapacity": 1, + "maximumCapacity": 3, + "totalApplicationCapacity": 5 + } + ] + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationPutOperation_example_max.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationPutOperation_example_max.json new file mode 100644 index 000000000000..35c28c0de78e --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationPutOperation_example_max.json @@ -0,0 +1,108 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "api-version": "2019-11-01-preview", + "parameters": { + "properties": { + "typeName": "myAppType", + "typeVersion": "1.0", + "parameters": { + "param1": "value1" + }, + "upgradePolicy": { + "upgradeMode": "Monitored", + "applicationHealthPolicy": { + "considerWarningAsError": true, + "maxPercentUnhealthyDeployedApplications": 0, + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0, + "maxPercentUnhealthyPartitionsPerService": 0, + "maxPercentUnhealthyReplicasPerPartition": 0 + } + }, + "rollingUpgradeMonitoringPolicy": { + "failureAction": "Rollback", + "healthCheckRetryTimeout": "00:10:00", + "healthCheckWaitDuration": "00:02:00", + "healthCheckStableDuration": "00:05:00", + "upgradeDomainTimeout": "1.06:00:00", + "upgradeTimeout": "01:00:00" + }, + "upgradeReplicaSetCheckTimeout": "01:00:00", + "forceRestart": false + }, + "maximumNodes": 3, + "minimumNodes": 1, + "removeApplicationCapacity": false, + "metrics": [ + { + "name": "metric1", + "reservationCapacity": 1, + "maximumCapacity": 3, + "totalApplicationCapacity": 5 + } + ] + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/9c2ce367-47ea-43de-b69e-c5a423da4557?api-version=2019-11-01-preview" + }, + "body": { + "type": "applications", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502180261859\"", + "properties": { + "provisioningState": "Updating", + "typeName": "myAppType", + "typeVersion": "1.0", + "parameters": { + "param1": "value1" + }, + "upgradePolicy": { + "upgradeMode": "Monitored", + "applicationHealthPolicy": { + "considerWarningAsError": true, + "maxPercentUnhealthyDeployedApplications": 0, + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0, + "maxPercentUnhealthyPartitionsPerService": 0, + "maxPercentUnhealthyReplicasPerPartition": 0 + } + }, + "rollingUpgradeMonitoringPolicy": { + "failureAction": "Rollback", + "healthCheckRetryTimeout": "00:10:00", + "healthCheckWaitDuration": "00:02:00", + "healthCheckStableDuration": "00:05:00", + "upgradeDomainTimeout": "1.06:00:00", + "upgradeTimeout": "01:00:00" + }, + "upgradeReplicaSetCheckTimeout": "01:00:00", + "forceRestart": false + }, + "maximumNodes": 3, + "minimumNodes": 1, + "removeApplicationCapacity": false, + "metrics": [ + { + "name": "metric1", + "reservationCapacity": 1, + "maximumCapacity": 3, + "totalApplicationCapacity": 5 + } + ] + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationPutOperation_example_min.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationPutOperation_example_min.json new file mode 100644 index 000000000000..4657d1a783f4 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationPutOperation_example_min.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "api-version": "2019-11-01-preview", + "parameters": { + "properties": { + "typeName": "myAppType", + "typeVersion": "1.0", + "removeApplicationCapacity": false + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/5dce62ce-439b-47af-81d8-99ab14708e91?api-version=2019-11-01-preview" + }, + "body": { + "type": "applications", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502180261857\"", + "properties": { + "provisioningState": "Updating", + "typeName": "myAppType", + "typeVersion": "1.0", + "removeApplicationCapacity": false + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeNameDeleteOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeNameDeleteOperation_example.json new file mode 100644 index 000000000000..b87591c8862b --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeNameDeleteOperation_example.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "api-version": "2019-11-01-preview" + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/6a367b2d-9f60-4941-b886-e348ddcb4127?api-version=2019-11-01-preview" + } + }, + "204": {} + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeNameGetOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeNameGetOperation_example.json new file mode 100644 index 000000000000..be2b49c3300c --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeNameGetOperation_example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "applicationTypes", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applicationTypes/myAppType", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502174844831\"", + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeNameListOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeNameListOperation_example.json new file mode 100644 index 000000000000..5187a2018740 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeNameListOperation_example.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "type": "applicationTypes", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applicationTypes/myAppType", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502174844831\"", + "properties": { + "provisioningState": "Succeeded" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeNamePutOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeNamePutOperation_example.json new file mode 100644 index 000000000000..6326e35f990c --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeNamePutOperation_example.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "api-version": "2019-11-01-preview", + "parameters": {} + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "applicationTypes", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applicationTypes/myAppType", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502174844831\"", + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeVersionDeleteOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeVersionDeleteOperation_example.json new file mode 100644 index 000000000000..cab3917c84a0 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeVersionDeleteOperation_example.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "version": "1.0", + "api-version": "2019-11-01-preview" + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/28e62369-ed8c-4aba-8c05-ab7d6238cc3d?api-version=2019-11-01-preview" + } + }, + "204": {} + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeVersionGetOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeVersionGetOperation_example.json new file mode 100644 index 000000000000..333bd77bbbae --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeVersionGetOperation_example.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "version": "1.0", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "versions", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applicationTypes/myAppType/versions/1.0", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502176040417\"", + "properties": { + "provisioningState": "Updating", + "appPackageUrl": "http://fakelink.test.com/MyAppType", + "defaultParameterList": {} + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeVersionListOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeVersionListOperation_example.json new file mode 100644 index 000000000000..3dec9e42af82 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeVersionListOperation_example.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "type": "versions", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applicationTypes/myAppType/versions/1.0", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502176040417\"", + "properties": { + "provisioningState": "Updating", + "appPackageUrl": "http://fakelink.test.com/MyAppType", + "defaultParameterList": {} + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeVersionPutOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeVersionPutOperation_example.json new file mode 100644 index 000000000000..7297dd1e40f6 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ApplicationTypeVersionPutOperation_example.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "version": "1.0", + "api-version": "2019-11-01-preview", + "parameters": { + "properties": { + "appPackageUrl": "http://fakelink.test.com/MyAppType" + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/e2413c7e-d51b-40ac-8155-bc85bf8ae856?api-version=2019-11-01-preview" + }, + "body": { + "type": "versions", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applicationTypes/myAppType/versions/1.0", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502176040417\"", + "properties": { + "provisioningState": "Updating", + "appPackageUrl": "http://fakelink.test.com/MyAppType", + "defaultParameterList": {} + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterDeleteOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterDeleteOperation_example.json new file mode 100644 index 000000000000..bbbed589f83c --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterDeleteOperation_example.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": {} + }, + "204": {} + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterGetOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterGetOperation_example.json new file mode 100644 index 000000000000..9c488137c655 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterGetOperation_example.json @@ -0,0 +1,159 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240745\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "6.1.480.9494", + "clusterState": "WaitingForNodes", + "managementEndpoint": "https://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "certificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "clientCertificateThumbprints": [ + { + "isAdmin": true, + "certificateThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "clientCertificateCommonNames": [ + { + "isAdmin": true, + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "01:00:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0, + "applicationHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0 + }, + "serviceTypeHealthPolicies": { + "myServiceType1": { + "maxPercentUnhealthyServices": 100 + } + } + } + } + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0, + "applicationDeltaHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeDeltaHealthPolicy": { + "maxPercentDeltaUnhealthyServices": 0 + }, + "serviceTypeDeltaHealthPolicies": { + "myServiceType1": { + "maxPercentDeltaUnhealthyServices": 0 + } + } + } + } + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "vmImage": "Windows", + "azureActiveDirectory": { + "tenantId": "6abcc6a0-8666-43f1-87b8-172cf86a9f9c", + "clusterApplication": "5886372e-7bf4-4878-a497-8098aba608ae", + "clientApplication": "d151ad89-4bce-4ae8-b3d1-1dc79679fa75" + }, + "reliabilityLevel": "Silver", + "reverseProxyCertificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "upgradeMode": "Manual", + "availableClusterVersions": [ + { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ], + "addOnFeatures": [ + "RepairManager", + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ] + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterListByResourceGroupOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterListByResourceGroupOperation_example.json new file mode 100644 index 000000000000..c4c675931455 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterListByResourceGroupOperation_example.json @@ -0,0 +1,248 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240745\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "6.1.480.9494", + "clusterState": "WaitingForNodes", + "managementEndpoint": "https://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "certificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "clientCertificateThumbprints": [ + { + "isAdmin": false, + "certificateThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "clientCertificateCommonNames": [ + { + "isAdmin": true, + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "01:00:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0, + "applicationHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0 + }, + "serviceTypeHealthPolicies": { + "myServiceType1": { + "maxPercentUnhealthyServices": 100 + } + } + } + } + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0, + "applicationDeltaHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeDeltaHealthPolicy": { + "maxPercentDeltaUnhealthyServices": 0 + }, + "serviceTypeDeltaHealthPolicies": { + "myServiceType1": { + "maxPercentDeltaUnhealthyServices": 0 + } + } + } + } + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "vmImage": "Windows", + "azureActiveDirectory": { + "tenantId": "6abcc6a0-8666-43f1-87b8-172cf86a9f9c", + "clusterApplication": "5886372e-7bf4-4878-a497-8098aba608ae", + "clientApplication": "d151ad89-4bce-4ae8-b3d1-1dc79679fa75" + }, + "reliabilityLevel": "Silver", + "reverseProxyCertificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "upgradeMode": "Manual", + "availableClusterVersions": [ + { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ], + "addOnFeatures": [ + "RepairManager", + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ] + } + }, + { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster2", + "name": "myCluster2", + "tags": {}, + "etag": "W/\"636462502164040075\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "2747e469-b24e-4039-8a0a-46151419523f", + "clusterCodeVersion": "6.1.187.1", + "clusterState": "WaitingForNodes", + "managementEndpoint": "http://myCluster2.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "clientCertificateThumbprints": [], + "clientCertificateCommonNames": [], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "01:00:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0 + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0 + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "vmImage": "Ubuntu", + "reliabilityLevel": "Silver", + "upgradeMode": "Manual", + "availableClusterVersions": [ + { + "codeVersion": "6.1.187.1", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Linux" + } + ], + "addOnFeatures": [ + "RepairManager" + ] + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterListOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterListOperation_example.json new file mode 100644 index 000000000000..86e7d37b6144 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterListOperation_example.json @@ -0,0 +1,247 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240745\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "6.1.480.9494", + "clusterState": "WaitingForNodes", + "managementEndpoint": "https://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "certificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "clientCertificateThumbprints": [ + { + "isAdmin": false, + "certificateThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "clientCertificateCommonNames": [ + { + "isAdmin": true, + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "01:00:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0, + "applicationHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0 + }, + "serviceTypeHealthPolicies": { + "myServiceType1": { + "maxPercentUnhealthyServices": 100 + } + } + } + } + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0, + "applicationDeltaHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeDeltaHealthPolicy": { + "maxPercentDeltaUnhealthyServices": 0 + }, + "serviceTypeDeltaHealthPolicies": { + "myServiceType1": { + "maxPercentDeltaUnhealthyServices": 0 + } + } + } + } + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "vmImage": "Windows", + "azureActiveDirectory": { + "tenantId": "6abcc6a0-8666-43f1-87b8-172cf86a9f9c", + "clusterApplication": "5886372e-7bf4-4878-a497-8098aba608ae", + "clientApplication": "d151ad89-4bce-4ae8-b3d1-1dc79679fa75" + }, + "reliabilityLevel": "Silver", + "reverseProxyCertificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "upgradeMode": "Manual", + "availableClusterVersions": [ + { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ], + "addOnFeatures": [ + "RepairManager", + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ] + } + }, + { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster2", + "name": "myCluster2", + "tags": {}, + "etag": "W/\"636462502164040075\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "2747e469-b24e-4039-8a0a-46151419523f", + "clusterCodeVersion": "6.1.187.1", + "clusterState": "WaitingForNodes", + "managementEndpoint": "http://myCluster2.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "clientCertificateThumbprints": [], + "clientCertificateCommonNames": [], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "01:00:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0 + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0 + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "vmImage": "Ubuntu", + "reliabilityLevel": "Silver", + "upgradeMode": "Manual", + "availableClusterVersions": [ + { + "codeVersion": "6.1.187.1", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Linux" + } + ], + "addOnFeatures": [ + "RepairManager" + ] + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterPatchOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterPatchOperation_example.json new file mode 100644 index 000000000000..16373022a406 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterPatchOperation_example.json @@ -0,0 +1,284 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2019-11-01-preview", + "parameters": { + "tags": { + "a": "b" + }, + "properties": { + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + }, + { + "name": "testnt1", + "clientConnectionEndpointPort": 0, + "httpGatewayEndpointPort": 0, + "applicationPorts": { + "startPort": 1000, + "endPort": 2000 + }, + "ephemeralPorts": { + "startPort": 3000, + "endPort": 4000 + }, + "isPrimary": false, + "vmInstanceCount": 3, + "durabilityLevel": "Bronze" + } + ], + "reliabilityLevel": "Bronze", + "upgradeMode": "Automatic", + "eventStoreServiceEnabled": true + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2019-11-01-preview" + }, + "body": { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": { + "a": "b" + }, + "etag": "W/\"636462502169240744\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "6.1.480.9494", + "clusterState": "WaitingForNodes", + "managementEndpoint": "http://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "certificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "clientCertificateThumbprints": [], + "clientCertificateCommonNames": [], + "eventStoreServiceEnabled": true, + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "01:00:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0 + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0 + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + }, + { + "name": "testnt1", + "clientConnectionEndpointPort": 0, + "httpGatewayEndpointPort": 0, + "applicationPorts": { + "startPort": 1000, + "endPort": 2000 + }, + "ephemeralPorts": { + "startPort": 3000, + "endPort": 4000 + }, + "isPrimary": false, + "vmInstanceCount": 3, + "durabilityLevel": "Bronze" + } + ], + "reliabilityLevel": "Bronze", + "upgradeMode": "Automatic", + "availableClusterVersions": [ + { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ] + } + } + }, + "200": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2019-11-01-preview" + }, + "body": { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": { + "a": "b" + }, + "etag": "W/\"636462502169240744\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "6.1.480.9494", + "clusterState": "WaitingForNodes", + "managementEndpoint": "http://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "certificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "clientCertificateThumbprints": [], + "clientCertificateCommonNames": [], + "eventStoreServiceEnabled": true, + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "01:00:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0 + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0 + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + }, + { + "name": "testnt1", + "clientConnectionEndpointPort": 0, + "httpGatewayEndpointPort": 0, + "applicationPorts": { + "startPort": 1000, + "endPort": 2000 + }, + "ephemeralPorts": { + "startPort": 3000, + "endPort": 4000 + }, + "isPrimary": false, + "vmInstanceCount": 3, + "durabilityLevel": "Bronze" + } + ], + "reliabilityLevel": "Bronze", + "upgradeMode": "Automatic", + "availableClusterVersions": [ + { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ] + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterPutOperation_example_max.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterPutOperation_example_max.json new file mode 100644 index 000000000000..47237407cf04 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterPutOperation_example_max.json @@ -0,0 +1,456 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2019-11-01-preview", + "parameters": { + "location": "eastus", + "properties": { + "clusterCodeVersion": "6.5.639.9590", + "managementEndpoint": "https://myCluster.eastus.cloudapp.azure.com:19080", + "certificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "clientCertificateThumbprints": [ + { + "isAdmin": true, + "certificateThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "clientCertificateCommonNames": [ + { + "isAdmin": true, + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "01:00:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0, + "applicationHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0 + }, + "serviceTypeHealthPolicies": { + "myServiceType1": { + "maxPercentUnhealthyServices": 100 + } + } + } + } + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0, + "applicationDeltaHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeDeltaHealthPolicy": { + "maxPercentDeltaUnhealthyServices": 0 + }, + "serviceTypeDeltaHealthPolicies": { + "myServiceType1": { + "maxPercentDeltaUnhealthyServices": 0 + } + } + } + } + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "vmImage": "Windows", + "azureActiveDirectory": { + "tenantId": "6abcc6a0-8666-43f1-87b8-172cf86a9f9c", + "clusterApplication": "5886372e-7bf4-4878-a497-8098aba608ae", + "clientApplication": "d151ad89-4bce-4ae8-b3d1-1dc79679fa75" + }, + "reliabilityLevel": "Silver", + "reverseProxyCertificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "upgradeMode": "Manual", + "addOnFeatures": [ + "RepairManager", + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ], + "eventStoreServiceEnabled": true, + "applicationTypeVersionsCleanupPolicy": { + "maxUnusedVersionsToKeep": 2 + } + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/4b5f6709-bc12-4365-8df3-894984b2a221?api-version=2019-11-01-preview" + }, + "body": { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240745\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "6.1.480.9494", + "clusterState": "WaitingForNodes", + "managementEndpoint": "https://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "certificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "clientCertificateThumbprints": [ + { + "isAdmin": false, + "certificateThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "clientCertificateCommonNames": [ + { + "isAdmin": true, + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": true, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "00:15:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0, + "applicationHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0 + }, + "serviceTypeHealthPolicies": { + "myServiceType1": { + "maxPercentUnhealthyServices": 100 + } + } + } + } + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0, + "applicationDeltaHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeDeltaHealthPolicy": { + "maxPercentDeltaUnhealthyServices": 0 + }, + "serviceTypeDeltaHealthPolicies": { + "myServiceType1": { + "maxPercentDeltaUnhealthyServices": 0 + } + } + } + } + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "vmImage": "Windows", + "azureActiveDirectory": { + "tenantId": "6abcc6a0-8666-43f1-87b8-172cf86a9f9c", + "clusterApplication": "5886372e-7bf4-4878-a497-8098aba608ae", + "clientApplication": "d151ad89-4bce-4ae8-b3d1-1dc79679fa75" + }, + "reliabilityLevel": "Silver", + "reverseProxyCertificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "upgradeMode": "Manual", + "availableClusterVersions": [ + { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ], + "addOnFeatures": [ + "RepairManager", + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ], + "eventStoreServiceEnabled": true, + "applicationTypeVersionsCleanupPolicy": { + "maxUnusedVersionsToKeep": 2 + } + } + } + }, + "200": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/4b5f6709-bc12-4365-8df3-894984b2a221?api-version=2019-11-01-preview" + }, + "body": { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240745\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "6.1.480.9494", + "clusterState": "WaitingForNodes", + "managementEndpoint": "https://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "certificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "clientCertificateThumbprints": [ + { + "isAdmin": false, + "certificateThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "clientCertificateCommonNames": [ + { + "isAdmin": true, + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": true, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "00:15:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0, + "applicationHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0 + }, + "serviceTypeHealthPolicies": { + "myServiceType1": { + "maxPercentUnhealthyServices": 100 + } + } + } + } + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0, + "applicationDeltaHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeDeltaHealthPolicy": { + "maxPercentDeltaUnhealthyServices": 0 + }, + "serviceTypeDeltaHealthPolicies": { + "myServiceType1": { + "maxPercentDeltaUnhealthyServices": 0 + } + } + } + } + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "vmImage": "Windows", + "azureActiveDirectory": { + "tenantId": "6abcc6a0-8666-43f1-87b8-172cf86a9f9c", + "clusterApplication": "5886372e-7bf4-4878-a497-8098aba608ae", + "clientApplication": "d151ad89-4bce-4ae8-b3d1-1dc79679fa75" + }, + "reliabilityLevel": "Silver", + "reverseProxyCertificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "upgradeMode": "Manual", + "availableClusterVersions": [ + { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ], + "addOnFeatures": [ + "RepairManager", + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ], + "eventStoreServiceEnabled": true, + "applicationTypeVersionsCleanupPolicy": { + "maxUnusedVersionsToKeep": 2 + } + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterPutOperation_example_min.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterPutOperation_example_min.json new file mode 100644 index 000000000000..e6afddce5699 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterPutOperation_example_min.json @@ -0,0 +1,222 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2019-11-01-preview", + "parameters": { + "location": "eastus", + "properties": { + "managementEndpoint": "http://myCluster.eastus.cloudapp.azure.com:19080", + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "reliabilityLevel": "Silver", + "upgradeMode": "Automatic" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240743\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "6.1.480.9494", + "clusterState": "WaitingForNodes", + "managementEndpoint": "http://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "clientCertificateThumbprints": [], + "clientCertificateCommonNames": [], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "10675199.02:48:05.4775807", + "healthCheckWaitDuration": "00:05:00", + "healthCheckStableDuration": "00:05:00", + "healthCheckRetryTimeout": "00:45:00", + "upgradeTimeout": "12:00:00", + "upgradeDomainTimeout": "02:00:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 100, + "maxPercentUnhealthyApplications": 100 + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0 + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "reliabilityLevel": "Silver", + "upgradeMode": "Automatic", + "availableClusterVersions": [ + { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ] + } + } + }, + "202": { + "headers": {}, + "body": { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240743\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "6.1.480.9494", + "clusterState": "WaitingForNodes", + "managementEndpoint": "http://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "clientCertificateThumbprints": [], + "clientCertificateCommonNames": [], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "10675199.02:48:05.4775807", + "healthCheckWaitDuration": "00:05:00", + "healthCheckStableDuration": "00:05:00", + "healthCheckRetryTimeout": "00:45:00", + "upgradeTimeout": "12:00:00", + "upgradeDomainTimeout": "02:00:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 100, + "maxPercentUnhealthyApplications": 100 + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0 + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "reliabilityLevel": "Silver", + "upgradeMode": "Automatic", + "availableClusterVersions": [ + { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ] + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterVersionsGetByEnvironment_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterVersionsGetByEnvironment_example.json new file mode 100644 index 000000000000..a6786cb4ca83 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterVersionsGetByEnvironment_example.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "environment": "Windows", + "clusterVersion": "6.1.480.9494", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/environments/Windows/clusterVersions/6.1.480.9494", + "name": "6.1.480.9494", + "type": "Microsoft.ServiceFabric/locations/environments/clusterVersions", + "properties": { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterVersionsGet_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterVersionsGet_example.json new file mode 100644 index 000000000000..a8c91f3266e2 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterVersionsGet_example.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "clusterVersion": "6.1.480.9494", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/environments/Windows/clusterVersions/6.1.480.9494", + "name": "6.1.480.9494", + "type": "Microsoft.ServiceFabric/locations/environments/clusterVersions", + "properties": { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterVersionsListByEnvironment.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterVersionsListByEnvironment.json new file mode 100644 index 000000000000..6263c3cd1446 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterVersionsListByEnvironment.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "environment": "Windows", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/environments/Windows/clusterVersions/6.1.480.9494", + "name": "6.1.480.9494", + "type": "Microsoft.ServiceFabric/locations/environments/clusterVersions", + "properties": { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterVersionsList_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterVersionsList_example.json new file mode 100644 index 000000000000..91d0eaf34f85 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ClusterVersionsList_example.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/environments/Windows/clusterVersions/6.1.480.9494", + "name": "6.1.480.9494", + "type": "Microsoft.ServiceFabric/locations/environments/clusterVersions", + "properties": { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + }, + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/environments/Linux/clusterVersions/6.1.187.1", + "name": "6.1.187.1", + "type": "Microsoft.ServiceFabric/locations/environments/clusterVersions", + "properties": { + "codeVersion": "6.1.187.1", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Linux" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServiceDeleteOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServiceDeleteOperation_example.json new file mode 100644 index 000000000000..9b98309f4624 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServiceDeleteOperation_example.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "serviceName": "myService", + "api-version": "2019-11-01-preview" + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/41fa5ef9-7f34-4c36-a730-93e0bb757d22?api-version=2019-11-01-preview" + } + }, + "204": {} + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServiceGetOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServiceGetOperation_example.json new file mode 100644 index 000000000000..107420ab6353 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServiceGetOperation_example.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "serviceName": "myService", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "services", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp/services/myService", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502183671258\"", + "properties": { + "provisioningState": "Updating", + "serviceKind": "Stateless", + "placementConstraints": "NodeType==frontend", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "serviceLoadMetrics": [ + { + "name": "metric1", + "weight": "Low" + } + ], + "servicePlacementPolicies": [], + "defaultMoveCost": "Medium", + "instanceCount": 5, + "servicePackageActivationMode": "SharedProcess" + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServiceListOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServiceListOperation_example.json new file mode 100644 index 000000000000..0c78dbe9c030 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServiceListOperation_example.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "type": "services", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp/services/myService", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502183671257\"", + "properties": { + "provisioningState": "Updating", + "serviceKind": "Stateless", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "serviceLoadMetrics": [ + { + "name": "metric1", + "weight": "Low" + } + ], + "instanceCount": 1, + "servicePackageActivationMode": "SharedProcess" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServicePatchOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServicePatchOperation_example.json new file mode 100644 index 000000000000..efbb156cffe4 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServicePatchOperation_example.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "serviceName": "myService", + "api-version": "2019-11-01-preview", + "parameters": { + "properties": { + "serviceKind": "Stateless", + "serviceLoadMetrics": [ + { + "name": "metric1", + "weight": "Low" + } + ] + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/4dde8d8b-b6b2-4c56-99c6-9b83932bb09a?api-version=2019-11-01-preview" + }, + "body": { + "type": "services", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp/services/myService", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502183671257\"", + "properties": { + "provisioningState": "Updating", + "serviceKind": "Stateless", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "serviceLoadMetrics": [ + { + "name": "metric1", + "weight": "Low" + } + ], + "instanceCount": 1, + "servicePackageActivationMode": "SharedProcess" + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServicePutOperation_example_max.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServicePutOperation_example_max.json new file mode 100644 index 000000000000..fe9e63fd28a3 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServicePutOperation_example_max.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "serviceName": "myService", + "api-version": "2019-11-01-preview", + "parameters": { + "properties": { + "serviceKind": "Stateless", + "placementConstraints": "NodeType==frontend", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "serviceLoadMetrics": [ + { + "name": "metric1", + "weight": "Low" + } + ], + "correlationScheme": [ + { + "serviceName": "fabric:/app1/app1~svc1", + "scheme": "Affinity" + } + ], + "servicePlacementPolicies": [], + "defaultMoveCost": "Medium", + "instanceCount": 5, + "instanceCloseDelayDuration": "00:00:30", + "servicePackageActivationMode": "SharedProcess", + "serviceDnsName": "my.service.dns" + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/2e633105-aadc-4928-9164-d76b974170a3?api-version=2019-11-01-preview" + }, + "body": { + "type": "services", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp/services/myService", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502183671258\"", + "properties": { + "provisioningState": "Updating", + "serviceKind": "Stateless", + "placementConstraints": "NodeType==frontend", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "serviceLoadMetrics": [ + { + "name": "metric1", + "weight": "Low" + } + ], + "servicePlacementPolicies": [], + "defaultMoveCost": "Medium", + "instanceCount": 5, + "instanceCloseDelayDuration": "00:00:30", + "servicePackageActivationMode": "SharedProcess", + "serviceDnsName": "my.service.dns" + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServicePutOperation_example_min.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServicePutOperation_example_min.json new file mode 100644 index 000000000000..59972de0e24c --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/preview/2019-11-01-preview/examples/ServicePutOperation_example_min.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "serviceName": "myService", + "api-version": "2019-11-01-preview", + "parameters": { + "properties": { + "serviceKind": "Stateless", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "instanceCount": 1 + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/5bc615c3-6c5b-4593-80e1-008f55376ec7?api-version=2019-11-01-preview" + }, + "body": { + "type": "services", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp/services/myService", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502183671256\"", + "properties": { + "provisioningState": "Updating", + "serviceKind": "Stateless", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "instanceCount": 1 + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/application.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/application.json new file mode 100644 index 000000000000..33669cae7b5a --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/application.json @@ -0,0 +1,2351 @@ +{ + "swagger": "2.0", + "info": { + "title": "ServiceFabricManagementClient", + "description": "Azure Service Fabric Resource Provider API Client", + "version": "2020-03-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "type": "oauth2" + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "paths": { + "/providers/Microsoft.ServiceFabric/operations": { + "get": { + "tags": [ + "Operations" + ], + "summary": "Lists all of the available Service Fabric resource provider API operations.", + "description": "Get the list of available Service Fabric resource provider API operations.", + "operationId": "Operations_List", + "parameters": [ + { + "name": "api-version", + "in": "query", + "description": "The version of the Service Fabric resource provider API", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applicationTypes/{applicationTypeName}": { + "get": { + "tags": [ + "ApplicationType" + ], + "operationId": "ApplicationTypes_Get", + "summary": "Gets a Service Fabric application type name resource.", + "description": "Get a Service Fabric application type name resource created or in the process of being created in the Service Fabric cluster resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get an application type": { + "$ref": "./examples/ApplicationTypeNameGetOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationTypeResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "put": { + "tags": [ + "ApplicationType" + ], + "operationId": "ApplicationTypes_CreateOrUpdate", + "summary": "Creates or updates a Service Fabric application type name resource.", + "description": "Create or update a Service Fabric application type name resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The application type name resource.", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationTypeResource" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Put an application type": { + "$ref": "./examples/ApplicationTypeNamePutOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationTypeResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "delete": { + "tags": [ + "ApplicationType" + ], + "operationId": "ApplicationTypes_Delete", + "summary": "Deletes a Service Fabric application type name resource.", + "description": "Delete a Service Fabric application type name resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Delete an application type": { + "$ref": "./examples/ApplicationTypeNameDeleteOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously." + }, + "204": { + "description": "The resource was not found." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applicationTypes": { + "get": { + "tags": [ + "ApplicationType" + ], + "operationId": "ApplicationTypes_List", + "summary": "Gets the list of application type name resources created in the specified Service Fabric cluster resource.", + "description": "Gets all application type name resources created or in the process of being created in the Service Fabric cluster resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get a list of application type name resources": { + "$ref": "./examples/ApplicationTypeNameListOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationTypeResourceList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applicationTypes/{applicationTypeName}/versions/{version}": { + "get": { + "tags": [ + "ApplicationTypeVersion" + ], + "operationId": "ApplicationTypeVersions_Get", + "summary": "Gets a Service Fabric application type version resource.", + "description": "Get a Service Fabric application type version resource created or in the process of being created in the Service Fabric application type name resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/version" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get an application type version": { + "$ref": "./examples/ApplicationTypeVersionGetOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationTypeVersionResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "put": { + "tags": [ + "ApplicationTypeVersion" + ], + "operationId": "ApplicationTypeVersions_CreateOrUpdate", + "summary": "Creates or updates a Service Fabric application type version resource.", + "description": "Create or update a Service Fabric application type version resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/version" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The application type version resource.", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationTypeVersionResource" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Put an application type version": { + "$ref": "./examples/ApplicationTypeVersionPutOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ApplicationTypeVersionResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "delete": { + "tags": [ + "ApplicationTypeVersion" + ], + "operationId": "ApplicationTypeVersions_Delete", + "summary": "Deletes a Service Fabric application type version resource.", + "description": "Delete a Service Fabric application type version resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/version" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Delete an application type version": { + "$ref": "./examples/ApplicationTypeVersionDeleteOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously." + }, + "204": { + "description": "The resource was not found." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applicationTypes/{applicationTypeName}/versions": { + "get": { + "tags": [ + "ApplicationTypeVersion" + ], + "operationId": "ApplicationTypeVersions_List", + "summary": "Gets the list of application type version resources created in the specified Service Fabric application type name resource.", + "description": "Gets all application type version resources created or in the process of being created in the Service Fabric application type name resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationTypeName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get a list of application type version resources": { + "$ref": "./examples/ApplicationTypeVersionListOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationTypeVersionResourceList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applications/{applicationName}": { + "get": { + "tags": [ + "Application" + ], + "operationId": "Applications_Get", + "summary": "Gets a Service Fabric application resource.", + "description": "Get a Service Fabric application resource created or in the process of being created in the Service Fabric cluster resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get an application": { + "$ref": "./examples/ApplicationGetOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "put": { + "tags": [ + "Application" + ], + "operationId": "Applications_CreateOrUpdate", + "summary": "Creates or updates a Service Fabric application resource.", + "description": "Create or update a Service Fabric application resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The application resource.", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationResource" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Put an application with minimum parameters": { + "$ref": "./examples/ApplicationPutOperation_example_min.json" + }, + "Put an application with maximum parameters": { + "$ref": "./examples/ApplicationPutOperation_example_max.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ApplicationResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "patch": { + "tags": [ + "Application" + ], + "operationId": "Applications_Update", + "summary": "Updates a Service Fabric application resource.", + "description": "Update a Service Fabric application resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The application resource for patch operations.", + "required": true, + "schema": { + "$ref": "#/definitions/ApplicationResourceUpdate" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Patch an application": { + "$ref": "./examples/ApplicationPatchOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ApplicationResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "delete": { + "tags": [ + "Application" + ], + "operationId": "Applications_Delete", + "summary": "Deletes a Service Fabric application resource.", + "description": "Delete a Service Fabric application resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Delete an application": { + "$ref": "./examples/ApplicationDeleteOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously." + }, + "204": { + "description": "The resource was not found." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applications": { + "get": { + "tags": [ + "Application" + ], + "operationId": "Applications_List", + "summary": "Gets the list of application resources created in the specified Service Fabric cluster resource.", + "description": "Gets all application resources created or in the process of being created in the Service Fabric cluster resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get a list of application resources": { + "$ref": "./examples/ApplicationListOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ApplicationResourceList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applications/{applicationName}/services/{serviceName}": { + "get": { + "tags": [ + "Service" + ], + "operationId": "Services_Get", + "summary": "Gets a Service Fabric service resource.", + "description": "Get a Service Fabric service resource created or in the process of being created in the Service Fabric application resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/serviceName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get a service": { + "$ref": "./examples/ServiceGetOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ServiceResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "put": { + "tags": [ + "Service" + ], + "operationId": "Services_CreateOrUpdate", + "summary": "Creates or updates a Service Fabric service resource.", + "description": "Create or update a Service Fabric service resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/serviceName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The service resource.", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceResource" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Put a service with minimum parameters": { + "$ref": "./examples/ServicePutOperation_example_min.json" + }, + "Put a service with maximum parameters": { + "$ref": "./examples/ServicePutOperation_example_max.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ServiceResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "patch": { + "tags": [ + "Service" + ], + "operationId": "Services_Update", + "summary": "Updates a Service Fabric service resource.", + "description": "Update a Service Fabric service resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/serviceName" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "name": "parameters", + "in": "body", + "description": "The service resource for patch operations.", + "required": true, + "schema": { + "$ref": "#/definitions/ServiceResourceUpdate" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Patch a service": { + "$ref": "./examples/ServicePatchOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/ServiceResource" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "delete": { + "tags": [ + "Service" + ], + "operationId": "Services_Delete", + "summary": "Deletes a Service Fabric service resource.", + "description": "Delete a Service Fabric service resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/serviceName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Delete a service": { + "$ref": "./examples/ServiceDeleteOperation_example.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "202": { + "description": "The request was accepted and the operation will complete asynchronously." + }, + "204": { + "description": "The resource was not found." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}/applications/{applicationName}/services": { + "get": { + "tags": [ + "Service" + ], + "operationId": "Services_List", + "summary": "Gets the list of service resources created in the specified Service Fabric application resource.", + "description": "Gets all service resources created or in the process of being created in the Service Fabric application resource.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/applicationName" + }, + { + "$ref": "#/parameters/api-version" + } + ], + "x-ms-examples": { + "Get a list of service resources": { + "$ref": "./examples/ServiceListOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ServiceResourceList" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + } + }, + "definitions": { + "ApplicationMetricDescription": { + "type": "object", + "description": "Describes capacity information for a custom resource balancing metric. This can be used to limit the total consumption of this metric by the services of this application.\n", + "properties": { + "name": { + "type": "string", + "description": "The name of the metric." + }, + "maximumCapacity": { + "type": "integer", + "format": "int64", + "description": "The maximum node capacity for Service Fabric application.\nThis is the maximum Load for an instance of this application on a single node. Even if the capacity of node is greater than this value, Service Fabric will limit the total load of services within the application on each node to this value.\nIf set to zero, capacity for this metric is unlimited on each node.\nWhen creating a new application with application capacity defined, the product of MaximumNodes and this value must always be smaller than or equal to TotalApplicationCapacity.\nWhen updating existing application with application capacity, the product of MaximumNodes and this value must always be smaller than or equal to TotalApplicationCapacity.\n" + }, + "reservationCapacity": { + "type": "integer", + "format": "int64", + "description": "The node reservation capacity for Service Fabric application.\nThis is the amount of load which is reserved on nodes which have instances of this application.\nIf MinimumNodes is specified, then the product of these values will be the capacity reserved in the cluster for the application.\nIf set to zero, no capacity is reserved for this metric.\nWhen setting application capacity or when updating application capacity; this value must be smaller than or equal to MaximumCapacity for each metric.\n" + }, + "totalApplicationCapacity": { + "description": "The total metric capacity for Service Fabric application.\nThis is the total metric capacity for this application in the cluster. Service Fabric will try to limit the sum of loads of services within the application to this value.\nWhen creating a new application with application capacity defined, the product of MaximumNodes and MaximumCapacity must always be smaller than or equal to this value.\n", + "type": "integer", + "format": "int64" + } + } + }, + "ApplicationMetricDescriptionList": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationMetricDescription" + }, + "description": "List of application capacity metric description." + }, + "ApplicationParameterList": { + "type": "object", + "description": "List of application parameters with overridden values from their default values specified in the application manifest.", + "additionalProperties": { + "type": "string" + } + }, + "ApplicationResource": { + "description": "The application resource.", + "properties": { + "identity": { + "$ref": "#/definitions/ManagedIdentity", + "description": "Describes the managed identities for an Azure resource." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationResourceProperties", + "description": "The application resource properties." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "ApplicationResourceList": { + "description": "The list of application resources.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationResource" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of application list results if there are any.", + "readOnly": true + } + } + }, + "ApplicationResourceProperties": { + "description": "The application resource properties.", + "allOf": [ + { + "$ref": "#/definitions/ApplicationResourceUpdateProperties" + } + ], + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The current deployment or provisioning state, which only appears in the response" + }, + "typeName": { + "$ref": "#/definitions/ApplicationTypeName", + "description": "The application type name as defined in the application manifest." + } + } + }, + "ApplicationResourceUpdate": { + "description": "The application resource for patch operations.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationResourceUpdateProperties", + "description": "The application resource properties for patch operations." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "ApplicationResourceUpdateProperties": { + "description": "The application resource properties for patch operations.", + "properties": { + "typeVersion": { + "$ref": "#/definitions/ApplicationTypeVersion", + "description": "The version of the application type as defined in the application manifest." + }, + "parameters": { + "$ref": "#/definitions/ApplicationParameterList", + "description": "List of application parameters with overridden values from their default values specified in the application manifest." + }, + "upgradePolicy": { + "$ref": "#/definitions/ApplicationUpgradePolicy", + "description": "Describes the policy for a monitored application upgrade." + }, + "minimumNodes": { + "type": "integer", + "format": "int64", + "description": "The minimum number of nodes where Service Fabric will reserve capacity for this application. Note that this does not mean that the services of this application will be placed on all of those nodes. If this property is set to zero, no capacity will be reserved. The value of this property cannot be more than the value of the MaximumNodes property.", + "minimum": 0 + }, + "maximumNodes": { + "type": "integer", + "format": "int64", + "description": "The maximum number of nodes where Service Fabric will reserve capacity for this application. Note that this does not mean that the services of this application will be placed on all of those nodes. By default, the value of this property is zero and it means that the services can be placed on any node.", + "minimum": 0, + "default": 0 + }, + "removeApplicationCapacity": { + "type": "boolean", + "description": "Remove the current application capacity settings." + }, + "metrics": { + "$ref": "#/definitions/ApplicationMetricDescriptionList", + "description": "List of application capacity metric description." + }, + "managedIdentities": { + "description": "List of user assigned identities for the application, each mapped to a friendly name.", + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationUserAssignedIdentity" + } + } + } + }, + "ApplicationTypeName": { + "type": "string", + "description": "The application type name as defined in the application manifest." + }, + "ApplicationTypeParameterList": { + "type": "object", + "description": "List of application type parameters that can be overridden when creating or updating the application.", + "additionalProperties": { + "type": "string" + } + }, + "ApplicationTypeResource": { + "description": "The application type name resource", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationTypeResourceProperties", + "description": "The application type name properties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "ApplicationTypeResourceList": { + "description": "The list of application type names.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationTypeResource" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of application type list results if there are any.", + "readOnly": true + } + } + }, + "ApplicationTypeResourceProperties": { + "description": "The application type name properties", + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The current deployment or provisioning state, which only appears in the response." + } + } + }, + "ApplicationTypeVersion": { + "type": "string", + "description": "The version of the application type as defined in the application manifest." + }, + "ApplicationTypeVersionResource": { + "description": "An application type version resource for the specified application type name resource.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ApplicationTypeVersionResourceProperties", + "description": "The properties of the application type version resource." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "ApplicationTypeVersionResourceList": { + "description": "The list of application type version resources for the specified application type name resource.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ApplicationTypeVersionResource" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of application type version list results if there are any.", + "readOnly": true + } + } + }, + "ApplicationTypeVersionResourceProperties": { + "description": "The properties of the application type version resource.", + "required": [ + "appPackageUrl" + ], + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The current deployment or provisioning state, which only appears in the response" + }, + "appPackageUrl": { + "type": "string", + "description": "The URL to the application package" + }, + "defaultParameterList": { + "readOnly": true, + "$ref": "#/definitions/ApplicationTypeParameterList", + "description": "List of application type parameters that can be overridden when creating or updating the application." + } + } + }, + "ApplicationUpgradePolicy": { + "description": "Describes the policy for a monitored application upgrade.", + "properties": { + "upgradeReplicaSetCheckTimeout": { + "type": "string", + "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. Valid values are between 0 and 42949672925 inclusive. (unsigned 32-bit integer)." + }, + "forceRestart": { + "$ref": "#/definitions/ForceRestart", + "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." + }, + "rollingUpgradeMonitoringPolicy": { + "$ref": "#/definitions/ArmRollingUpgradeMonitoringPolicy", + "description": "The policy used for monitoring the application upgrade" + }, + "applicationHealthPolicy": { + "$ref": "#/definitions/ArmApplicationHealthPolicy", + "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n" + }, + "upgradeMode": { + "$ref": "#/definitions/RollingUpgradeMode", + "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored." + } + } + }, + "ApplicationUserAssignedIdentity": { + "required": [ + "name", + "principalId" + ], + "properties": { + "name": { + "type": "string", + "description": "The friendly name of user assigned identity." + }, + "principalId": { + "type": "string", + "description": "The principal id of user assigned identity." + } + } + }, + "ArmApplicationHealthPolicy": { + "type": "object", + "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n", + "properties": { + "considerWarningAsError": { + "type": "boolean", + "description": "Indicates whether warnings are treated with the same severity as errors.", + "default": false + }, + "maxPercentUnhealthyDeployedApplications": { + "type": "integer", + "description": "The maximum allowed percentage of unhealthy deployed applications. Allowed values are Byte values from zero to 100.\nThe percentage represents the maximum tolerated percentage of deployed applications that can be unhealthy before the application is considered in error.\nThis is calculated by dividing the number of unhealthy deployed applications over the number of nodes where the application is currently deployed on in the cluster.\nThe computation rounds up to tolerate one failure on small numbers of nodes. Default percentage is zero.\n", + "default": 0 + }, + "defaultServiceTypeHealthPolicy": { + "$ref": "#/definitions/ArmServiceTypeHealthPolicy", + "description": "The health policy used by default to evaluate the health of a service type." + }, + "serviceTypeHealthPolicyMap": { + "$ref": "#/definitions/ArmServiceTypeHealthPolicyMap", + "description": "The map with service type health policy per service type name. The map is empty by default." + } + } + }, + "ArmRollingUpgradeMonitoringPolicy": { + "description": "The policy used for monitoring the application upgrade", + "properties": { + "failureAction": { + "type": "string", + "description": "The activation Mode of the service package", + "enum": [ + "Rollback", + "Manual" + ], + "x-ms-enum": { + "name": "ArmUpgradeFailureAction", + "modelAsString": true, + "values": [ + { + "value": "Rollback", + "description": "Indicates that a rollback of the upgrade will be performed by Service Fabric if the upgrade fails." + }, + { + "value": "Manual", + "description": "Indicates that a manual repair will need to be performed by the administrator if the upgrade fails. Service Fabric will not proceed to the next upgrade domain automatically." + } + ] + } + }, + "healthCheckWaitDuration": { + "$ref": "#/definitions/HealthCheckWaitDuration", + "description": "The amount of time to wait after completing an upgrade domain before applying health policies. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "healthCheckStableDuration": { + "$ref": "#/definitions/HealthCheckStableDuration", + "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "healthCheckRetryTimeout": { + "$ref": "#/definitions/HealthCheckRetryTimeout", + "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "upgradeTimeout": { + "$ref": "#/definitions/UpgradeTimeout", + "description": "The amount of time the overall upgrade has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + }, + "upgradeDomainTimeout": { + "$ref": "#/definitions/UpgradeDomainTimeout", + "description": "The amount of time each upgrade domain has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + } + } + }, + "ArmServiceTypeHealthPolicy": { + "type": "object", + "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n", + "properties": { + "maxPercentUnhealthyServices": { + "type": "integer", + "description": "The maximum percentage of services allowed to be unhealthy before your application is considered in error.\n", + "default": 0, + "minimum": 0, + "maximum": 100 + }, + "maxPercentUnhealthyPartitionsPerService": { + "type": "integer", + "description": "The maximum percentage of partitions per service allowed to be unhealthy before your application is considered in error.\n", + "default": 0, + "minimum": 0, + "maximum": 100 + }, + "maxPercentUnhealthyReplicasPerPartition": { + "type": "integer", + "description": "The maximum percentage of replicas per partition allowed to be unhealthy before your application is considered in error.\n", + "default": 0, + "minimum": 0, + "maximum": 100 + } + } + }, + "ArmServiceTypeHealthPolicyMap": { + "type": "object", + "description": "Defines a ServiceTypeHealthPolicy per service type name.\n\nThe entries in the map replace the default service type health policy for each specified service type.\nFor example, in an application that contains both a stateless gateway service type and a stateful engine service type, the health policies for the stateless and stateful services can be configured differently.\nWith policy per service type, there's more granular control of the health of the service.\n\nIf no policy is specified for a service type name, the DefaultServiceTypeHealthPolicy is used for evaluation.\n", + "additionalProperties": { + "$ref": "#/definitions/ArmServiceTypeHealthPolicy" + } + }, + "AvailableOperationDisplay": { + "properties": { + "provider": { + "type": "string", + "description": "The name of the provider." + }, + "resource": { + "type": "string", + "description": "The resource on which the operation is performed" + }, + "operation": { + "type": "string", + "description": "The operation that can be performed." + }, + "description": { + "type": "string", + "description": "Operation description" + } + }, + "description": "Operation supported by the Service Fabric resource provider" + }, + "CorrelationSchemeList": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceCorrelationDescription" + }, + "description": "A list that describes the correlation of the service with other services." + }, + "ForceRestart": { + "type": "boolean", + "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data).", + "default": false + }, + "HealthCheckRetryTimeout": { + "type": "string", + "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "PT0H10M0S" + }, + "HealthCheckStableDuration": { + "type": "string", + "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "PT0H2M0S" + }, + "HealthCheckWaitDuration": { + "type": "string", + "description": "The amount of time to wait after completing an upgrade domain before applying health policies. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "0" + }, + "ManagedIdentity": { + "description": "Describes the managed identities for an Azure resource.", + "properties": { + "principalId": { + "type": "string", + "readOnly": true, + "description": "The principal id of the managed identity. This property will only be provided for a system assigned identity." + }, + "tenantId": { + "type": "string", + "readOnly": true, + "description": "The tenant id of the managed identity. This property will only be provided for a system assigned identity." + }, + "type": { + "$ref": "#/definitions/ManagedIdentityType", + "description": "The type of managed identity for the resource." + }, + "userAssignedIdentities": { + "$ref": "#/definitions/UserAssignedIdentityMap", + "description": "The list of user identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form:\n'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.\n" + } + } + }, + "ManagedIdentityType": { + "type": "string", + "description": "The type of managed identity for the resource.", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ], + "x-ms-enum": { + "name": "ManagedIdentityType", + "modelAsString": false, + "values": [ + { + "value": "SystemAssigned", + "description": "Indicates that system assigned identity is associated with the resource." + }, + { + "value": "UserAssigned", + "description": "Indicates that user assigned identity is associated with the resource." + }, + { + "value": "SystemAssigned, UserAssigned", + "description": "Indicates that both system assigned and user assigned identity are associated with the resource." + }, + { + "value": "None", + "description": "Indicates that no identity is associated with the resource." + } + ] + } + }, + "MoveCost": { + "type": "string", + "description": "Specifies the move cost for the service.", + "enum": [ + "Zero", + "Low", + "Medium", + "High" + ], + "x-ms-enum": { + "name": "MoveCost", + "modelAsString": true, + "values": [ + { + "value": "Zero", + "description": "Zero move cost. This value is zero." + }, + { + "value": "Low", + "description": "Specifies the move cost of the service as Low. The value is 1." + }, + { + "value": "Medium", + "description": "Specifies the move cost of the service as Medium. The value is 2." + }, + { + "value": "High", + "description": "Specifies the move cost of the service as High. The value is 3." + } + ] + } + }, + "NamedPartitionSchemeDescription": { + "description": "Describes the named partition scheme of the service.", + "allOf": [ + { + "$ref": "#/definitions/PartitionSchemeDescription" + }, + { + "type": "object", + "description": "NamedPartitionSchemeDescription" + } + ], + "x-ms-discriminator-value": "Named", + "required": [ + "count", + "names" + ], + "properties": { + "count": { + "type": "integer", + "description": "The number of partitions." + }, + "names": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Array of size specified by the ‘count’ parameter, for the names of the partitions." + } + } + }, + "OperationListResult": { + "properties": { + "value": { + "type": "array", + "description": "List of operations supported by the Service Fabric resource provider.", + "items": { + "$ref": "#/definitions/OperationResult" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any.", + "readOnly": true + } + }, + "description": "Describes the result of the request to list Service Fabric resource provider operations." + }, + "OperationResult": { + "properties": { + "name": { + "type": "string", + "description": "The name of the operation." + }, + "display": { + "$ref": "#/definitions/AvailableOperationDisplay", + "description": "The object that represents the operation." + }, + "origin": { + "type": "string", + "description": "Origin result" + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Available operation list result" + }, + "PartitionScheme": { + "type": "string", + "description": "Enumerates the ways that a service can be partitioned.", + "enum": [ + "Invalid", + "Singleton", + "UniformInt64Range", + "Named" + ], + "x-ms-enum": { + "name": "PartitionScheme", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the partition kind is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Singleton", + "description": "Indicates that the partition is based on string names, and is a SingletonPartitionSchemeDescription object, The value is 1." + }, + { + "value": "UniformInt64Range", + "description": "Indicates that the partition is based on Int64 key ranges, and is a UniformInt64RangePartitionSchemeDescription object. The value is 2." + }, + { + "value": "Named", + "description": "Indicates that the partition is based on string names, and is a NamedPartitionSchemeDescription object. The value is 3" + } + ] + } + }, + "PartitionSchemeDescription": { + "type": "object", + "discriminator": "partitionScheme", + "description": "Describes how the service is partitioned.", + "required": [ + "partitionScheme" + ], + "properties": { + "partitionScheme": { + "$ref": "#/definitions/PartitionScheme", + "description": "Specifies how the service is partitioned." + } + } + }, + "ProxyResource": { + "properties": { + "id": { + "type": "string", + "description": "Azure resource identifier.", + "readOnly": true + }, + "name": { + "type": "string", + "description": "Azure resource name.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "Azure resource type.", + "readOnly": true + }, + "location": { + "type": "string", + "description": "It will be deprecated in New API, resource location depends on the parent resource.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Azure resource tags.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "etag": { + "type": "string", + "description": "Azure resource etag.", + "readOnly": true + } + }, + "description": "The resource model definition for proxy-only resource.", + "x-ms-azure-resource": true + }, + "RollingUpgradeMode": { + "type": "string", + "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored.", + "enum": [ + "Invalid", + "UnmonitoredAuto", + "UnmonitoredManual", + "Monitored" + ], + "default": "Monitored", + "x-ms-enum": { + "name": "RollingUpgradeMode", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the upgrade mode is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "UnmonitoredAuto", + "description": "The upgrade will proceed automatically without performing any health monitoring. The value is 1" + }, + { + "value": "UnmonitoredManual", + "description": "The upgrade will stop after completing each upgrade domain, giving the opportunity to manually monitor health before proceeding. The value is 2" + }, + { + "value": "Monitored", + "description": "The upgrade will stop after completing each upgrade domain and automatically monitor health before proceeding. The value is 3" + } + ] + } + }, + "ServiceCorrelationDescription": { + "type": "object", + "description": "Creates a particular correlation between services.", + "required": [ + "scheme", + "serviceName" + ], + "properties": { + "scheme": { + "$ref": "#/definitions/ServiceCorrelationScheme", + "description": "The ServiceCorrelationScheme which describes the relationship between this service and the service specified via ServiceName." + }, + "serviceName": { + "$ref": "#/definitions/ServiceName", + "description": "The name of the service that the correlation relationship is established with." + } + } + }, + "ServiceCorrelationScheme": { + "type": "string", + "description": "The service correlation scheme.", + "enum": [ + "Invalid", + "Affinity", + "AlignedAffinity", + "NonAlignedAffinity" + ], + "x-ms-enum": { + "name": "ServiceCorrelationScheme", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "An invalid correlation scheme. Cannot be used. The value is zero." + }, + { + "value": "Affinity", + "description": "Indicates that this service has an affinity relationship with another service. Provided for backwards compatibility, consider preferring the Aligned or NonAlignedAffinity options. The value is 1." + }, + { + "value": "AlignedAffinity", + "description": "Aligned affinity ensures that the primaries of the partitions of the affinitized services are collocated on the same nodes. This is the default and is the same as selecting the Affinity scheme. The value is 2." + }, + { + "value": "NonAlignedAffinity", + "description": "Non-Aligned affinity guarantees that all replicas of each service will be placed on the same nodes. Unlike Aligned Affinity, this does not guarantee that replicas of particular role will be collocated. The value is 3." + } + ] + } + }, + "ServiceKind": { + "type": "string", + "description": "The kind of service (Stateless or Stateful).", + "enum": [ + "Invalid", + "Stateless", + "Stateful" + ], + "x-ms-enum": { + "name": "ServiceKind", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the service kind is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "Stateless", + "description": "Does not use Service Fabric to make its state highly available or reliable. The value is 1." + }, + { + "value": "Stateful", + "description": "Uses Service Fabric to make its state or part of its state highly available and reliable. The value is 2." + } + ] + } + }, + "ServiceLoadMetricDescription": { + "type": "object", + "description": "Specifies a metric to load balance a service during runtime.", + "required": [ + "name" + ], + "properties": { + "name": { + "type": "string", + "description": "The name of the metric. If the service chooses to report load during runtime, the load metric name should match the name that is specified in Name exactly. Note that metric names are case sensitive." + }, + "weight": { + "$ref": "#/definitions/ServiceLoadMetricWeight", + "description": "The service load metric relative weight, compared to other metrics configured for this service, as a number." + }, + "primaryDefaultLoad": { + "type": "integer", + "description": "Used only for Stateful services. The default amount of load, as a number, that this service creates for this metric when it is a Primary replica." + }, + "secondaryDefaultLoad": { + "type": "integer", + "description": "Used only for Stateful services. The default amount of load, as a number, that this service creates for this metric when it is a Secondary replica." + }, + "defaultLoad": { + "type": "integer", + "description": "Used only for Stateless services. The default amount of load, as a number, that this service creates for this metric." + } + } + }, + "ServiceLoadMetricsList": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceLoadMetricDescription" + }, + "description": "The service load metrics is given as an array of ServiceLoadMetricDescription objects." + }, + "ServiceLoadMetricWeight": { + "type": "string", + "description": "Determines the metric weight relative to the other metrics that are configured for this service. During runtime, if two metrics end up in conflict, the Cluster Resource Manager prefers the metric with the higher weight.", + "enum": [ + "Zero", + "Low", + "Medium", + "High" + ], + "x-ms-enum": { + "name": "ServiceLoadMetricWeight", + "modelAsString": true, + "values": [ + { + "value": "Zero", + "description": "Disables resource balancing for this metric. This value is zero." + }, + { + "value": "Low", + "description": "Specifies the metric weight of the service load as Low. The value is 1." + }, + { + "value": "Medium", + "description": "Specifies the metric weight of the service load as Medium. The value is 2." + }, + { + "value": "High", + "description": "Specifies the metric weight of the service load as High. The value is 3." + } + ] + } + }, + "ServiceName": { + "type": "string", + "description": "The full name of the service with 'fabric:' URI scheme." + }, + "ServicePlacementPoliciesList": { + "type": "array", + "items": { + "$ref": "#/definitions/ServicePlacementPolicyDescription" + }, + "description": "A list that describes the correlation of the service with other services." + }, + "ServicePlacementPolicyDescription": { + "type": "object", + "discriminator": "type", + "description": "Describes the policy to be used for placement of a Service Fabric service.", + "required": [ + "type" + ], + "properties": { + "type": { + "$ref": "#/definitions/ServicePlacementPolicyType", + "description": "The type of placement policy for a service fabric service. Following are the possible values." + } + } + }, + "ServicePlacementPolicyType": { + "type": "string", + "description": "The type of placement policy for a service fabric service. Following are the possible values.", + "enum": [ + "Invalid", + "InvalidDomain", + "RequiredDomain", + "PreferredPrimaryDomain", + "RequiredDomainDistribution", + "NonPartiallyPlaceService" + ], + "x-ms-enum": { + "name": "ServicePlacementPolicyType", + "modelAsString": true, + "values": [ + { + "value": "Invalid", + "description": "Indicates the type of the placement policy is invalid. All Service Fabric enumerations have the invalid type. The value is zero." + }, + { + "value": "InvalidDomain", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementInvalidDomainPolicyDescription, which indicates that a particular fault or upgrade domain cannot be used for placement of this service. The value is 1." + }, + { + "value": "RequiredDomain", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementRequireDomainDistributionPolicyDescription indicating that the replicas of the service must be placed in a specific domain. The value is 2." + }, + { + "value": "PreferredPrimaryDomain", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementPreferPrimaryDomainPolicyDescription, which indicates that if possible the Primary replica for the partitions of the service should be located in a particular domain as an optimization. The value is 3." + }, + { + "value": "RequiredDomainDistribution", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementRequireDomainDistributionPolicyDescription, indicating that the system will disallow placement of any two replicas from the same partition in the same domain at any time. The value is 4." + }, + { + "value": "NonPartiallyPlaceService", + "description": "Indicates that the ServicePlacementPolicyDescription is of type ServicePlacementNonPartiallyPlaceServicePolicyDescription, which indicates that if possible all replicas of a particular partition of the service should be placed atomically. The value is 5." + } + ] + } + }, + "ServiceResource": { + "description": "The service resource.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceResourceProperties", + "description": "The service resource properties." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "ServiceResourceList": { + "description": "The list of service resources.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceResource" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of service list results if there are any.", + "readOnly": true + } + } + }, + "ServiceResourceProperties": { + "description": "The service resource properties.", + "allOf": [ + { + "$ref": "#/definitions/ServiceResourcePropertiesBase" + } + ], + "required": [ + "serviceKind" + ], + "discriminator": "serviceKind", + "properties": { + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "The current deployment or provisioning state, which only appears in the response" + }, + "serviceKind": { + "$ref": "#/definitions/ServiceKind", + "description": "The kind of service (Stateless or Stateful)." + }, + "serviceTypeName": { + "type": "string", + "description": "The name of the service type" + }, + "partitionDescription": { + "$ref": "#/definitions/PartitionSchemeDescription", + "description": "Describes how the service is partitioned." + }, + "servicePackageActivationMode": { + "type": "string", + "description": "The activation Mode of the service package", + "enum": [ + "SharedProcess", + "ExclusiveProcess" + ], + "x-ms-enum": { + "name": "ArmServicePackageActivationMode", + "modelAsString": true, + "values": [ + { + "value": "SharedProcess", + "description": "Indicates the application package activation mode will use shared process." + }, + { + "value": "ExclusiveProcess", + "description": "Indicates the application package activation mode will use exclusive process." + } + ] + } + }, + "serviceDnsName": { + "type": "string", + "description": "Dns name used for the service. If this is specified, then the service can be accessed via its DNS name instead of service name." + } + } + }, + "ServiceResourcePropertiesBase": { + "description": "The common service resource properties.", + "properties": { + "placementConstraints": { + "type": "string", + "description": "The placement constraints as a string. Placement constraints are boolean expressions on node properties and allow for restricting a service to particular nodes based on the service requirements. For example, to place a service on nodes where NodeType is blue specify the following: \"NodeColor == blue)\"." + }, + "correlationScheme": { + "$ref": "#/definitions/CorrelationSchemeList", + "description": "A list that describes the correlation of the service with other services." + }, + "serviceLoadMetrics": { + "$ref": "#/definitions/ServiceLoadMetricsList", + "description": "The service load metrics is given as an array of ServiceLoadMetricDescription objects." + }, + "servicePlacementPolicies": { + "$ref": "#/definitions/ServicePlacementPoliciesList", + "description": "A list that describes the correlation of the service with other services." + }, + "defaultMoveCost": { + "$ref": "#/definitions/MoveCost", + "description": "Specifies the move cost for the service." + } + } + }, + "ServiceResourceUpdate": { + "description": "The service resource for patch operations.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceResourceUpdateProperties", + "description": "The service resource properties for patch operations." + } + }, + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ] + }, + "ServiceResourceUpdateProperties": { + "description": "The service resource properties for patch operations.", + "allOf": [ + { + "$ref": "#/definitions/ServiceResourcePropertiesBase" + } + ], + "required": [ + "serviceKind" + ], + "discriminator": "serviceKind", + "properties": { + "serviceKind": { + "$ref": "#/definitions/ServiceKind", + "description": "The kind of service (Stateless or Stateful)." + } + } + }, + "SingletonPartitionSchemeDescription": { + "description": "Describes the partition scheme of a singleton-partitioned, or non-partitioned service.", + "allOf": [ + { + "$ref": "#/definitions/PartitionSchemeDescription" + }, + { + "type": "object", + "description": "SingletonPartitionSchemeDescription" + } + ], + "x-ms-discriminator-value": "Singleton" + }, + "StatefulServiceProperties": { + "description": "The properties of a stateful service resource.", + "allOf": [ + { + "$ref": "#/definitions/ServiceResourceProperties" + } + ], + "x-ms-discriminator-value": "Stateful", + "properties": { + "hasPersistedState": { + "type": "boolean", + "description": "A flag indicating whether this is a persistent service which stores states on the local disk. If it is then the value of this property is true, if not it is false." + }, + "targetReplicaSetSize": { + "type": "integer", + "minimum": 1, + "description": "The target replica set size as a number." + }, + "minReplicaSetSize": { + "type": "integer", + "minimum": 1, + "description": "The minimum replica set size as a number." + }, + "replicaRestartWaitDuration": { + "type": "string", + "format": "date-time", + "description": "The duration between when a replica goes down and when a new replica is created, represented in ISO 8601 format (hh:mm:ss.s)." + }, + "quorumLossWaitDuration": { + "type": "string", + "format": "date-time", + "description": "The maximum duration for which a partition is allowed to be in a state of quorum loss, represented in ISO 8601 format (hh:mm:ss.s)." + }, + "standByReplicaKeepDuration": { + "type": "string", + "format": "date-time", + "description": "The definition on how long StandBy replicas should be maintained before being removed, represented in ISO 8601 format (hh:mm:ss.s)." + } + } + }, + "StatefulServiceUpdateProperties": { + "description": "The properties of a stateful service resource for patch operations.", + "allOf": [ + { + "$ref": "#/definitions/ServiceResourceUpdateProperties" + } + ], + "x-ms-discriminator-value": "Stateful", + "properties": { + "targetReplicaSetSize": { + "type": "integer", + "minimum": 1, + "description": "The target replica set size as a number." + }, + "minReplicaSetSize": { + "type": "integer", + "minimum": 1, + "description": "The minimum replica set size as a number." + }, + "replicaRestartWaitDuration": { + "type": "string", + "format": "date-time", + "description": "The duration between when a replica goes down and when a new replica is created, represented in ISO 8601 format (hh:mm:ss.s)." + }, + "quorumLossWaitDuration": { + "type": "string", + "format": "date-time", + "description": "The maximum duration for which a partition is allowed to be in a state of quorum loss, represented in ISO 8601 format (hh:mm:ss.s)." + }, + "standByReplicaKeepDuration": { + "type": "string", + "format": "date-time", + "description": "The definition on how long StandBy replicas should be maintained before being removed, represented in ISO 8601 format (hh:mm:ss.s)." + } + } + }, + "StatelessServiceProperties": { + "description": "The properties of a stateless service resource.", + "allOf": [ + { + "$ref": "#/definitions/ServiceResourceProperties" + } + ], + "x-ms-discriminator-value": "Stateless", + "properties": { + "instanceCount": { + "type": "integer", + "minimum": -1, + "description": "The instance count." + }, + "instanceCloseDelayDuration": { + "type": "string", + "description": "Delay duration for RequestDrain feature to ensures that the endpoint advertised by the stateless instance is removed before the delay starts prior to closing the instance. This delay enables existing requests to drain gracefully before the instance actually goes down (https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-application-upgrade-advanced#avoid-connection-drops-during-stateless-service-planned-downtime-preview). It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + } + } + }, + "StatelessServiceUpdateProperties": { + "description": "The properties of a stateless service resource for patch operations.", + "allOf": [ + { + "$ref": "#/definitions/ServiceResourceUpdateProperties" + } + ], + "x-ms-discriminator-value": "Stateless", + "properties": { + "instanceCount": { + "type": "integer", + "minimum": -1, + "description": "The instance count." + }, + "instanceCloseDelayDuration": { + "type": "string", + "description": "Delay duration for RequestDrain feature to ensures that the endpoint advertised by the stateless instance is removed before the delay starts prior to closing the instance. This delay enables existing requests to drain gracefully before the instance actually goes down (https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-application-upgrade-advanced#avoid-connection-drops-during-stateless-service-planned-downtime-preview). It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + } + } + }, + "UserAssignedIdentity": { + "properties": { + "principalId": { + "type": "string", + "readOnly": true, + "description": "The principal id of user assigned identity." + }, + "clientId": { + "type": "string", + "readOnly": true, + "description": "The client id of user assigned identity." + } + } + }, + "UserAssignedIdentityMap": { + "type": "object", + "description": "The list of user identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form:\n'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.\n", + "additionalProperties": { + "$ref": "#/definitions/UserAssignedIdentity" + } + }, + "UniformInt64RangePartitionSchemeDescription": { + "description": "Describes a partitioning scheme where an integer range is allocated evenly across a number of partitions.", + "allOf": [ + { + "$ref": "#/definitions/PartitionSchemeDescription" + }, + { + "type": "object", + "description": "UniformInt64RangePartitionSchemeDescription" + } + ], + "x-ms-discriminator-value": "UniformInt64Range", + "required": [ + "count", + "lowKey", + "highKey" + ], + "properties": { + "count": { + "type": "integer", + "description": "The number of partitions." + }, + "lowKey": { + "type": "string", + "description": "String indicating the lower bound of the partition key range that\nshould be split between the partition ‘count’\n" + }, + "highKey": { + "type": "string", + "description": "String indicating the upper bound of the partition key range that\nshould be split between the partition ‘count’\n" + } + } + }, + "UpgradeDomainTimeout": { + "type": "string", + "description": "The amount of time each upgrade domain has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "P10675199DT02H48M05.4775807S" + }, + "UpgradeTimeout": { + "type": "string", + "description": "The amount of time the overall upgrade has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds.", + "default": "P10675199DT02H48M05.4775807S" + }, + "ErrorModel": { + "properties": { + "error": { + "$ref": "#/definitions/ErrorModelError", + "description": "The error details." + } + }, + "description": "The structure of the error." + }, + "ErrorModelError": { + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "The error details." + } + }, + "parameters": { + "api-version": { + "name": "api-version", + "in": "query", + "description": "The version of the Service Fabric resource provider API. This is a required parameter and it's value must be \"2020-03-01\" for this specification.", + "required": true, + "type": "string", + "enum": [ + "2020-03-01" + ], + "default": "2020-03-01", + "x-ms-parameter-location": "client" + }, + "applicationName": { + "name": "applicationName", + "in": "path", + "description": "The name of the application resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "applicationTypeName": { + "name": "applicationTypeName", + "in": "path", + "description": "The name of the application type name resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "clusterNameParameter": { + "name": "clusterName", + "in": "path", + "description": "The name of the cluster resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "serviceName": { + "name": "serviceName", + "in": "path", + "description": "The name of the service resource in the format of {applicationName}~{serviceName}.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "subscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The customer subscription identifier.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + }, + "version": { + "name": "version", + "in": "path", + "description": "The application type version.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/cluster.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/cluster.json new file mode 100644 index 000000000000..9ef76c65bf74 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/cluster.json @@ -0,0 +1,1558 @@ +{ + "swagger": "2.0", + "info": { + "title": "ServiceFabricManagementClient", + "description": "Azure Service Fabric Resource Provider API Client", + "version": "2020-03-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "description": "Azure Active Directory OAuth2 Flow", + "flow": "implicit", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "type": "oauth2" + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters/{clusterName}": { + "get": { + "tags": [ + "Cluster" + ], + "operationId": "Clusters_Get", + "summary": "Gets a Service Fabric cluster resource.", + "description": "Get a Service Fabric cluster resource created or in the process of being created in the specified resource group.", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "x-ms-examples": { + "Get a cluster": { + "$ref": "./examples/ClusterGetOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "put": { + "tags": [ + "Cluster" + ], + "operationId": "Clusters_CreateOrUpdate", + "summary": "Creates or updates a Service Fabric cluster resource.", + "description": "Create or update a Service Fabric cluster resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "The cluster resource.", + "required": true, + "schema": { + "$ref": "#/definitions/Cluster" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-examples": { + "Put a cluster with minimum parameters": { + "$ref": "./examples/ClusterPutOperation_example_min.json" + }, + "Put a cluster with maximum parameters": { + "$ref": "./examples/ClusterPutOperation_example_max.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "patch": { + "tags": [ + "Cluster" + ], + "operationId": "Clusters_Update", + "summary": "Updates the configuration of a Service Fabric cluster resource.", + "description": "Update the configuration of a Service Fabric cluster resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "parameters", + "in": "body", + "description": "The parameters which contains the property value and property name which used to update the cluster configuration.", + "required": true, + "schema": { + "$ref": "#/definitions/ClusterUpdateParameters" + }, + "x-ms-parameter-location": "method" + } + ], + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Patch a cluster": { + "$ref": "./examples/ClusterPatchOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "202": { + "description": "The request was accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + }, + "delete": { + "tags": [ + "Cluster" + ], + "operationId": "Clusters_Delete", + "summary": "Deletes a Service Fabric cluster resource.", + "description": "Delete a Service Fabric cluster resource with the specified name.", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/clusterNameParameter" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "x-ms-examples": { + "Delete a cluster": { + "$ref": "./examples/ClusterDeleteOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully." + }, + "204": { + "description": "The resource was not found." + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.ServiceFabric/clusters": { + "get": { + "operationId": "Clusters_ListByResourceGroup", + "summary": "Gets the list of Service Fabric cluster resources created in the specified resource group.", + "description": "Gets all Service Fabric cluster resources created or in the process of being created in the resource group.", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "tags": [ + "Cluster" + ], + "x-ms-examples": { + "List cluster by resource group": { + "$ref": "./examples/ClusterListByResourceGroupOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ClusterListResult" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/clusters": { + "get": { + "operationId": "Clusters_List", + "summary": "Gets the list of Service Fabric cluster resources created in the specified subscription.", + "description": "Gets all Service Fabric cluster resources created or in the process of being created in the subscription.", + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "tags": [ + "Cluster" + ], + "x-ms-examples": { + "List clusters": { + "$ref": "./examples/ClusterListOperation_example.json" + } + }, + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ClusterListResult" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/clusterVersions/{clusterVersion}": { + "get": { + "operationId": "ClusterVersions_Get", + "summary": "Gets information about a Service Fabric cluster code version available in the specified location.", + "description": "Gets information about an available Service Fabric cluster code version.", + "parameters": [ + { + "$ref": "#/parameters/locationForClusterCodeVersions" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/clusterVersion" + } + ], + "x-ms-examples": { + "Get cluster version": { + "$ref": "./examples/ClusterVersionsGet_example.json" + } + }, + "tags": [ + "ClusterVersion" + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ClusterCodeVersionsListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/environments/{environment}/clusterVersions/{clusterVersion}": { + "get": { + "operationId": "ClusterVersions_GetByEnvironment", + "summary": "Gets information about a Service Fabric cluster code version available for the specified environment.", + "description": "Gets information about an available Service Fabric cluster code version by environment.", + "parameters": [ + { + "$ref": "#/parameters/locationForClusterCodeVersions" + }, + { + "$ref": "#/parameters/environment" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/clusterVersion" + } + ], + "x-ms-examples": { + "Get cluster version by environment": { + "$ref": "./examples/ClusterVersionsGetByEnvironment_example.json" + } + }, + "tags": [ + "ClusterVersion" + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ClusterCodeVersionsListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/clusterVersions": { + "get": { + "operationId": "ClusterVersions_List", + "summary": "Gets the list of Service Fabric cluster code versions available for the specified location.", + "description": "Gets all available code versions for Service Fabric cluster resources by location.", + "parameters": [ + { + "$ref": "#/parameters/locationForClusterCodeVersions" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "x-ms-examples": { + "List cluster versions": { + "$ref": "./examples/ClusterVersionsList_example.json" + } + }, + "tags": [ + "ClusterVersion" + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ClusterCodeVersionsListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/environments/{environment}/clusterVersions": { + "get": { + "operationId": "ClusterVersions_ListByEnvironment", + "summary": "Gets the list of Service Fabric cluster code versions available for the specified environment.", + "description": "Gets all available code versions for Service Fabric cluster resources by environment.", + "parameters": [ + { + "$ref": "#/parameters/locationForClusterCodeVersions" + }, + { + "$ref": "#/parameters/environment" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "x-ms-examples": { + "List cluster versions by environment": { + "$ref": "./examples/ClusterVersionsListByEnvironment.json" + } + }, + "tags": [ + "ClusterVersion" + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ClusterCodeVersionsListResult" + } + } + } + } + }, + "/providers/Microsoft.ServiceFabric/operations": { + "get": { + "tags": [ + "Operations" + ], + "summary": "Lists all of the available Service Fabric resource provider API operations.", + "description": "Get the list of available Service Fabric resource provider API operations.", + "operationId": "Operations_List", + "parameters": [ + { + "name": "api-version", + "in": "query", + "description": "The version of the Service Fabric resource provider API", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "AddOnFeatures": { + "type": "string", + "description": "Available cluster add-on features", + "enum": [ + "RepairManager", + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ] + }, + "ApplicationTypeVersionsCleanupPolicy": { + "required": [ + "maxUnusedVersionsToKeep" + ], + "properties": { + "maxUnusedVersionsToKeep": { + "type": "integer", + "minimum": 0, + "description": "Number of unused versions per application type to keep." + } + } + }, + "ApplicationDeltaHealthPolicy": { + "type": "object", + "description": "Defines a delta health policy used to evaluate the health of an application or one of its child entities when upgrading the cluster.\n", + "properties": { + "defaultServiceTypeDeltaHealthPolicy": { + "$ref": "#/definitions/ServiceTypeDeltaHealthPolicy", + "description": "The delta health policy used by default to evaluate the health of a service type when upgrading the cluster." + }, + "serviceTypeDeltaHealthPolicies": { + "$ref": "#/definitions/ServiceTypeDeltaHealthPolicyMap", + "description": "The map with service type delta health policy per service type name. The map is empty by default." + } + } + }, + "ApplicationDeltaHealthPolicyMap": { + "type": "object", + "description": "Defines a map that contains specific application delta health policies for different applications.\nEach entry specifies as key the application name and as value an ApplicationDeltaHealthPolicy used to evaluate the application health when upgrading the cluster.\nThe application name should include the 'fabric:' URI scheme.\nThe map is empty by default.\n", + "additionalProperties": { + "$ref": "#/definitions/ApplicationDeltaHealthPolicy" + } + }, + "ApplicationHealthPolicy": { + "type": "object", + "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n", + "properties": { + "defaultServiceTypeHealthPolicy": { + "$ref": "#/definitions/ServiceTypeHealthPolicy", + "description": "The health policy used by default to evaluate the health of a service type." + }, + "serviceTypeHealthPolicies": { + "$ref": "#/definitions/ServiceTypeHealthPolicyMap", + "description": "The map with service type health policy per service type name. The map is empty by default." + } + } + }, + "ApplicationHealthPolicyMap": { + "type": "object", + "description": "Defines a map that contains specific application health policies for different applications.\nEach entry specifies as key the application name and as value an ApplicationHealthPolicy used to evaluate the application health.\nThe application name should include the 'fabric:' URI scheme.\nThe map is empty by default.\n", + "additionalProperties": { + "$ref": "#/definitions/ApplicationHealthPolicy" + } + }, + "AvailableOperationDisplay": { + "properties": { + "provider": { + "type": "string", + "description": "The name of the provider." + }, + "resource": { + "type": "string", + "description": "The resource on which the operation is performed" + }, + "operation": { + "type": "string", + "description": "The operation that can be performed." + }, + "description": { + "type": "string", + "description": "Operation description" + } + }, + "description": "Operation supported by the Service Fabric resource provider" + }, + "AzureActiveDirectory": { + "properties": { + "tenantId": { + "type": "string", + "description": "Azure active directory tenant id." + }, + "clusterApplication": { + "type": "string", + "description": "Azure active directory cluster application id." + }, + "clientApplication": { + "type": "string", + "description": "Azure active directory client application id." + } + }, + "description": "The settings to enable AAD authentication on the cluster." + }, + "CertificateDescription": { + "required": [ + "thumbprint" + ], + "properties": { + "thumbprint": { + "type": "string", + "description": "Thumbprint of the primary certificate." + }, + "thumbprintSecondary": { + "type": "string", + "description": "Thumbprint of the secondary certificate." + }, + "x509StoreName": { + "$ref": "#/definitions/StoreName", + "description": "The local certificate store location." + } + }, + "description": "Describes the certificate details." + }, + "ClientCertificateCommonName": { + "required": [ + "certificateCommonName", + "isAdmin", + "certificateIssuerThumbprint" + ], + "properties": { + "isAdmin": { + "type": "boolean", + "description": "Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster." + }, + "certificateCommonName": { + "type": "string", + "description": "The common name of the client certificate." + }, + "certificateIssuerThumbprint": { + "type": "string", + "description": "The issuer thumbprint of the client certificate." + } + }, + "description": "Describes the client certificate details using common name." + }, + "ClientCertificateThumbprint": { + "required": [ + "certificateThumbprint", + "isAdmin" + ], + "properties": { + "isAdmin": { + "type": "boolean", + "description": "Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster." + }, + "certificateThumbprint": { + "type": "string", + "description": "The thumbprint of the client certificate." + } + }, + "description": "Describes the client certificate details using thumbprint." + }, + "Cluster": { + "type": "object", + "description": "The cluster resource\n", + "allOf": [ + { + "description": "The cluster resource properties" + }, + { + "$ref": "#/definitions/Resource" + }, + { + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterProperties", + "description": "The cluster resource properties" + } + } + } + ] + }, + "ClusterCodeVersionsListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ClusterCodeVersionsResult" + } + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "The list results of the Service Fabric runtime versions." + }, + "ClusterCodeVersionsResult": { + "properties": { + "id": { + "type": "string", + "description": "The identification of the result" + }, + "name": { + "type": "string", + "description": "The name of the result" + }, + "type": { + "type": "string", + "description": "The result resource type" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterVersionDetails", + "description": "The detail of the Service Fabric runtime version result" + } + }, + "description": "The result of the Service Fabric runtime versions" + }, + "ClusterEnvironment": { + "type": "string", + "description": "Cluster operating system, the default will be Windows", + "enum": [ + "Windows", + "Linux" + ] + }, + "ClusterHealthPolicy": { + "type": "object", + "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node.\n", + "properties": { + "maxPercentUnhealthyNodes": { + "type": "integer", + "description": "The maximum allowed percentage of unhealthy nodes before reporting an error. For example, to allow 10% of nodes to be unhealthy, this value would be 10.\n\nThe percentage represents the maximum tolerated percentage of nodes that can be unhealthy before the cluster is considered in error.\nIf the percentage is respected but there is at least one unhealthy node, the health is evaluated as Warning.\nThe percentage is calculated by dividing the number of unhealthy nodes over the total number of nodes in the cluster.\nThe computation rounds up to tolerate one failure on small numbers of nodes. Default percentage is zero.\n\nIn large clusters, some nodes will always be down or out for repairs, so this percentage should be configured to tolerate that.\n", + "default": 0, + "minimum": 0, + "maximum": 100 + }, + "maxPercentUnhealthyApplications": { + "type": "integer", + "description": "The maximum allowed percentage of unhealthy applications before reporting an error. For example, to allow 10% of applications to be unhealthy, this value would be 10.\n\nThe percentage represents the maximum tolerated percentage of applications that can be unhealthy before the cluster is considered in error.\nIf the percentage is respected but there is at least one unhealthy application, the health is evaluated as Warning.\nThis is calculated by dividing the number of unhealthy applications over the total number of application instances in the cluster, excluding applications of application types that are included in the ApplicationTypeHealthPolicyMap.\nThe computation rounds up to tolerate one failure on small numbers of applications. Default percentage is zero.\n", + "default": 0, + "minimum": 0, + "maximum": 100 + }, + "applicationHealthPolicies": { + "$ref": "#/definitions/ApplicationHealthPolicyMap", + "description": "Defines the application health policy map used to evaluate the health of an application or one of its children entities." + } + } + }, + "ClusterListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Cluster" + } + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Cluster list results" + }, + "ClusterProperties": { + "required": [ + "managementEndpoint", + "nodeTypes" + ], + "properties": { + "addOnFeatures": { + "type": "array", + "description": "The list of add-on features to enable in the cluster.", + "items": { + "$ref": "#/definitions/AddOnFeatures" + } + }, + "availableClusterVersions": { + "type": "array", + "description": "The Service Fabric runtime versions available for this cluster.", + "readOnly": true, + "items": { + "$ref": "#/definitions/ClusterVersionDetails" + } + }, + "azureActiveDirectory": { + "$ref": "#/definitions/AzureActiveDirectory", + "description": "The AAD authentication settings of the cluster." + }, + "certificate": { + "$ref": "#/definitions/CertificateDescription", + "description": "The certificate to use for securing the cluster. The certificate provided will be used for node to node security within the cluster, SSL certificate for cluster management endpoint and default admin client." + }, + "certificateCommonNames": { + "$ref": "#/definitions/ServerCertificateCommonNames", + "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." + }, + "clientCertificateCommonNames": { + "type": "array", + "description": "The list of client certificates referenced by common name that are allowed to manage the cluster.", + "items": { + "$ref": "#/definitions/ClientCertificateCommonName" + } + }, + "clientCertificateThumbprints": { + "type": "array", + "description": "The list of client certificates referenced by thumbprint that are allowed to manage the cluster.", + "items": { + "$ref": "#/definitions/ClientCertificateThumbprint" + } + }, + "clusterCodeVersion": { + "type": "string", + "description": "The Service Fabric runtime version of the cluster. This property can only by set the user when **upgradeMode** is set to 'Manual'. To get list of available Service Fabric versions for new clusters use [ClusterVersion API](./ClusterVersion.md). To get the list of available version for existing clusters use **availableClusterVersions**." + }, + "clusterEndpoint": { + "type": "string", + "description": "The Azure Resource Provider endpoint. A system service in the cluster connects to this endpoint.", + "readOnly": true + }, + "clusterId": { + "type": "string", + "description": "A service generated unique identifier for the cluster resource.", + "readOnly": true + }, + "clusterState": { + "readOnly": true, + "$ref": "#/definitions/ClusterState", + "description": "The current state of the cluster.\n\n - WaitingForNodes - Indicates that the cluster resource is created and the resource provider is waiting for Service Fabric VM extension to boot up and report to it.\n - Deploying - Indicates that the Service Fabric runtime is being installed on the VMs. Cluster resource will be in this state until the cluster boots up and system services are up.\n - BaselineUpgrade - Indicates that the cluster is upgrading to establishes the cluster version. This upgrade is automatically initiated when the cluster boots up for the first time.\n - UpdatingUserConfiguration - Indicates that the cluster is being upgraded with the user provided configuration.\n - UpdatingUserCertificate - Indicates that the cluster is being upgraded with the user provided certificate.\n - UpdatingInfrastructure - Indicates that the cluster is being upgraded with the latest Service Fabric runtime version. This happens only when the **upgradeMode** is set to 'Automatic'.\n - EnforcingClusterVersion - Indicates that cluster is on a different version than expected and the cluster is being upgraded to the expected version.\n - UpgradeServiceUnreachable - Indicates that the system service in the cluster is no longer polling the Resource Provider. Clusters in this state cannot be managed by the Resource Provider.\n - AutoScale - Indicates that the ReliabilityLevel of the cluster is being adjusted.\n - Ready - Indicates that the cluster is in a stable state.\n" + }, + "diagnosticsStorageAccountConfig": { + "$ref": "#/definitions/DiagnosticsStorageAccountConfig", + "description": "The storage account information for storing Service Fabric diagnostic logs." + }, + "eventStoreServiceEnabled": { + "type": "boolean", + "description": "Indicates if the event store service is enabled." + }, + "fabricSettings": { + "type": "array", + "description": "The list of custom fabric settings to configure the cluster.", + "items": { + "$ref": "#/definitions/SettingsSectionDescription" + } + }, + "managementEndpoint": { + "type": "string", + "description": "The http management endpoint of the cluster." + }, + "nodeTypes": { + "type": "array", + "description": "The list of node types in the cluster.", + "items": { + "$ref": "#/definitions/NodeTypeDescription" + } + }, + "provisioningState": { + "type": "string", + "description": "The provisioning state of the cluster resource.", + "readOnly": true, + "enum": [ + "Updating", + "Succeeded", + "Failed", + "Canceled" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "reliabilityLevel": { + "$ref": "#/definitions/ReliabilityLevel", + "description": "The reliability level sets the replica set size of system services. Learn about [ReliabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - None - Run the System services with a target replica set count of 1. This should only be used for test clusters.\n - Bronze - Run the System services with a target replica set count of 3. This should only be used for test clusters.\n - Silver - Run the System services with a target replica set count of 5.\n - Gold - Run the System services with a target replica set count of 7.\n - Platinum - Run the System services with a target replica set count of 9.\n" + }, + "reverseProxyCertificate": { + "$ref": "#/definitions/CertificateDescription", + "description": "The server certificate used by reverse proxy." + }, + "reverseProxyCertificateCommonNames": { + "$ref": "#/definitions/ServerCertificateCommonNames", + "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." + }, + "upgradeDescription": { + "$ref": "#/definitions/ClusterUpgradePolicy", + "description": "The policy to use when upgrading the cluster." + }, + "upgradeMode": { + "$ref": "#/definitions/UpgradeMode", + "description": "The upgrade mode of the cluster when new Service Fabric runtime version is available.\n\n - Automatic - The cluster will be automatically upgraded to the latest Service Fabric runtime version as soon as it is available.\n - Manual - The cluster will not be automatically upgraded to the latest Service Fabric runtime version. The cluster is upgraded by setting the **clusterCodeVersion** property in the cluster resource.\n" + }, + "applicationTypeVersionsCleanupPolicy": { + "$ref": "#/definitions/ApplicationTypeVersionsCleanupPolicy", + "description": "The policy used to clean up unused versions." + }, + "vmImage": { + "type": "string", + "description": "The VM image VMSS has been configured with. Generic names such as Windows or Linux can be used." + } + }, + "description": "Describes the cluster resource properties." + }, + "ClusterPropertiesUpdateParameters": { + "properties": { + "addOnFeatures": { + "type": "array", + "description": "The list of add-on features to enable in the cluster.", + "items": { + "$ref": "#/definitions/AddOnFeatures" + } + }, + "certificate": { + "$ref": "#/definitions/CertificateDescription", + "description": "The certificate to use for securing the cluster. The certificate provided will be used for node to node security within the cluster, SSL certificate for cluster management endpoint and default admin client." + }, + "certificateCommonNames": { + "$ref": "#/definitions/ServerCertificateCommonNames", + "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." + }, + "clientCertificateCommonNames": { + "type": "array", + "description": "The list of client certificates referenced by common name that are allowed to manage the cluster. This will overwrite the existing list.", + "items": { + "$ref": "#/definitions/ClientCertificateCommonName" + } + }, + "clientCertificateThumbprints": { + "type": "array", + "description": "The list of client certificates referenced by thumbprint that are allowed to manage the cluster. This will overwrite the existing list.", + "items": { + "$ref": "#/definitions/ClientCertificateThumbprint" + } + }, + "clusterCodeVersion": { + "type": "string", + "description": "The Service Fabric runtime version of the cluster. This property can only by set the user when **upgradeMode** is set to 'Manual'. To get list of available Service Fabric versions for new clusters use [ClusterVersion API](./ClusterVersion.md). To get the list of available version for existing clusters use **availableClusterVersions**." + }, + "eventStoreServiceEnabled": { + "type": "boolean", + "description": "Indicates if the event store service is enabled." + }, + "fabricSettings": { + "type": "array", + "description": "The list of custom fabric settings to configure the cluster. This will overwrite the existing list.", + "items": { + "$ref": "#/definitions/SettingsSectionDescription" + } + }, + "nodeTypes": { + "type": "array", + "description": "The list of node types in the cluster. This will overwrite the existing list.", + "items": { + "$ref": "#/definitions/NodeTypeDescription" + } + }, + "reliabilityLevel": { + "$ref": "#/definitions/ReliabilityLevel", + "description": "The reliability level sets the replica set size of system services. Learn about [ReliabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - None - Run the System services with a target replica set count of 1. This should only be used for test clusters.\n - Bronze - Run the System services with a target replica set count of 3. This should only be used for test clusters.\n - Silver - Run the System services with a target replica set count of 5.\n - Gold - Run the System services with a target replica set count of 7.\n - Platinum - Run the System services with a target replica set count of 9.\n" + }, + "reverseProxyCertificate": { + "$ref": "#/definitions/CertificateDescription", + "description": "The server certificate used by reverse proxy." + }, + "upgradeDescription": { + "$ref": "#/definitions/ClusterUpgradePolicy", + "description": "The policy to use when upgrading the cluster." + }, + "upgradeMode": { + "$ref": "#/definitions/UpgradeMode", + "description": "The upgrade mode of the cluster when new Service Fabric runtime version is available.\n\n - Automatic - The cluster will be automatically upgraded to the latest Service Fabric runtime version as soon as it is available.\n - Manual - The cluster will not be automatically upgraded to the latest Service Fabric runtime version. The cluster is upgraded by setting the **clusterCodeVersion** property in the cluster resource.\n" + }, + "applicationTypeVersionsCleanupPolicy": { + "$ref": "#/definitions/ApplicationTypeVersionsCleanupPolicy", + "description": "The policy used to clean up unused versions." + } + }, + "description": "Describes the cluster resource properties that can be updated during PATCH operation." + }, + "ClusterState": { + "type": "string", + "description": "The current state of the cluster.\n\n - WaitingForNodes - Indicates that the cluster resource is created and the resource provider is waiting for Service Fabric VM extension to boot up and report to it.\n - Deploying - Indicates that the Service Fabric runtime is being installed on the VMs. Cluster resource will be in this state until the cluster boots up and system services are up.\n - BaselineUpgrade - Indicates that the cluster is upgrading to establishes the cluster version. This upgrade is automatically initiated when the cluster boots up for the first time.\n - UpdatingUserConfiguration - Indicates that the cluster is being upgraded with the user provided configuration.\n - UpdatingUserCertificate - Indicates that the cluster is being upgraded with the user provided certificate.\n - UpdatingInfrastructure - Indicates that the cluster is being upgraded with the latest Service Fabric runtime version. This happens only when the **upgradeMode** is set to 'Automatic'.\n - EnforcingClusterVersion - Indicates that cluster is on a different version than expected and the cluster is being upgraded to the expected version.\n - UpgradeServiceUnreachable - Indicates that the system service in the cluster is no longer polling the Resource Provider. Clusters in this state cannot be managed by the Resource Provider.\n - AutoScale - Indicates that the ReliabilityLevel of the cluster is being adjusted.\n - Ready - Indicates that the cluster is in a stable state.\n", + "enum": [ + "WaitingForNodes", + "Deploying", + "BaselineUpgrade", + "UpdatingUserConfiguration", + "UpdatingUserCertificate", + "UpdatingInfrastructure", + "EnforcingClusterVersion", + "UpgradeServiceUnreachable", + "AutoScale", + "Ready" + ] + }, + "ClusterUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ClusterPropertiesUpdateParameters", + "description": "Describes the cluster resource properties that can be updated during PATCH operation." + }, + "tags": { + "type": "object", + "description": "Cluster update parameters", + "additionalProperties": { + "type": "string" + } + } + }, + "description": "Cluster update request" + }, + "ClusterUpgradeDeltaHealthPolicy": { + "description": "Describes the delta health policies for the cluster upgrade.", + "required": [ + "maxPercentDeltaUnhealthyApplications", + "maxPercentDeltaUnhealthyNodes", + "maxPercentUpgradeDomainDeltaUnhealthyNodes" + ], + "properties": { + "maxPercentDeltaUnhealthyNodes": { + "type": "integer", + "description": "The maximum allowed percentage of nodes health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the nodes at the beginning of upgrade and the state of the nodes at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits.\n", + "minimum": 0, + "maximum": 100 + }, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": { + "type": "integer", + "description": "The maximum allowed percentage of upgrade domain nodes health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the upgrade domain nodes at the beginning of upgrade and the state of the upgrade domain nodes at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion for all completed upgrade domains to make sure the state of the upgrade domains is within tolerated limits.\n", + "minimum": 0, + "maximum": 100 + }, + "maxPercentDeltaUnhealthyApplications": { + "type": "integer", + "description": "The maximum allowed percentage of applications health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the applications at the beginning of upgrade and the state of the applications at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits. System services are not included in this.\n", + "minimum": 0, + "maximum": 100 + }, + "applicationDeltaHealthPolicies": { + "$ref": "#/definitions/ApplicationDeltaHealthPolicyMap", + "description": "Defines the application delta health policy map used to evaluate the health of an application or one of its child entities when upgrading the cluster." + } + } + }, + "ClusterUpgradePolicy": { + "required": [ + "healthCheckRetryTimeout", + "healthCheckStableDuration", + "healthCheckWaitDuration", + "healthPolicy", + "upgradeDomainTimeout", + "upgradeReplicaSetCheckTimeout", + "upgradeTimeout" + ], + "properties": { + "forceRestart": { + "type": "boolean", + "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." + }, + "upgradeReplicaSetCheckTimeout": { + "type": "string", + "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." + }, + "healthCheckWaitDuration": { + "type": "string", + "description": "The length of time to wait after completing an upgrade domain before performing health checks. The duration can be in either hh:mm:ss or in d.hh:mm:ss.ms format." + }, + "healthCheckStableDuration": { + "type": "string", + "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. The duration can be in either hh:mm:ss or in d.hh:mm:ss.ms format." + }, + "healthCheckRetryTimeout": { + "type": "string", + "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." + }, + "upgradeTimeout": { + "type": "string", + "description": "The amount of time the overall upgrade has to complete before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." + }, + "upgradeDomainTimeout": { + "type": "string", + "description": "The amount of time each upgrade domain has to complete before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." + }, + "healthPolicy": { + "$ref": "#/definitions/ClusterHealthPolicy", + "description": "The cluster health policy used when upgrading the cluster." + }, + "deltaHealthPolicy": { + "$ref": "#/definitions/ClusterUpgradeDeltaHealthPolicy", + "description": "The cluster delta health policy used when upgrading the cluster." + } + }, + "description": "Describes the policy used when upgrading the cluster." + }, + "ClusterVersionDetails": { + "properties": { + "codeVersion": { + "type": "string", + "description": "The Service Fabric runtime version of the cluster." + }, + "supportExpiryUtc": { + "type": "string", + "description": "The date of expiry of support of the version." + }, + "environment": { + "$ref": "#/definitions/ClusterEnvironment", + "description": "Indicates if this version is for Windows or Linux operating system." + } + }, + "description": "The detail of the Service Fabric runtime version result" + }, + "DiagnosticsStorageAccountConfig": { + "required": [ + "blobEndpoint", + "protectedAccountKeyName", + "queueEndpoint", + "storageAccountName", + "tableEndpoint" + ], + "properties": { + "storageAccountName": { + "type": "string", + "description": "The Azure storage account name." + }, + "protectedAccountKeyName": { + "type": "string", + "description": "The protected diagnostics storage key name." + }, + "protectedAccountKeyName2": { + "type": "string", + "description": "The secondary protected diagnostics storage key name. If one of the storage account keys is rotated the cluster will fallback to using the other." + }, + "blobEndpoint": { + "type": "string", + "description": "The blob endpoint of the azure storage account." + }, + "queueEndpoint": { + "type": "string", + "description": "The queue endpoint of the azure storage account." + }, + "tableEndpoint": { + "type": "string", + "description": "The table endpoint of the azure storage account." + } + }, + "description": "The storage account information for storing Service Fabric diagnostic logs." + }, + "DurabilityLevel": { + "type": "string", + "description": "The durability level of the node type. Learn about [DurabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - Bronze - No privileges. This is the default.\n - Silver - The infrastructure jobs can be paused for a duration of 10 minutes per UD.\n - Gold - The infrastructure jobs can be paused for a duration of 2 hours per UD. Gold durability can be enabled only on full node VM skus like D15_V2, G5 etc.\n", + "enum": [ + "Bronze", + "Silver", + "Gold" + ] + }, + "EndpointRangeDescription": { + "required": [ + "endPort", + "startPort" + ], + "properties": { + "startPort": { + "type": "integer", + "description": "Starting port of a range of ports" + }, + "endPort": { + "type": "integer", + "description": "End port of a range of ports" + } + }, + "description": "Port range details" + }, + "NodeTypeDescription": { + "required": [ + "clientConnectionEndpointPort", + "httpGatewayEndpointPort", + "isPrimary", + "name", + "vmInstanceCount" + ], + "properties": { + "name": { + "type": "string", + "description": "The name of the node type." + }, + "placementProperties": { + "type": "object", + "description": "The placement tags applied to nodes in the node type, which can be used to indicate where certain services (workload) should run.", + "additionalProperties": { + "type": "string", + "description": "Placement tag value" + } + }, + "capacities": { + "type": "object", + "description": "The capacity tags applied to the nodes in the node type, the cluster resource manager uses these tags to understand how much resource a node has.", + "additionalProperties": { + "type": "string", + "description": "Capacity tag value" + } + }, + "clientConnectionEndpointPort": { + "type": "integer", + "description": "The TCP cluster management endpoint port." + }, + "httpGatewayEndpointPort": { + "type": "integer", + "description": "The HTTP cluster management endpoint port." + }, + "durabilityLevel": { + "$ref": "#/definitions/DurabilityLevel", + "description": "The durability level of the node type. Learn about [DurabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - Bronze - No privileges. This is the default.\n - Silver - The infrastructure jobs can be paused for a duration of 10 minutes per UD.\n - Gold - The infrastructure jobs can be paused for a duration of 2 hours per UD. Gold durability can be enabled only on full node VM skus like D15_V2, G5 etc.\n" + }, + "applicationPorts": { + "$ref": "#/definitions/EndpointRangeDescription", + "description": "The range of ports from which cluster assigned port to Service Fabric applications." + }, + "ephemeralPorts": { + "$ref": "#/definitions/EndpointRangeDescription", + "description": "The range of ephemeral ports that nodes in this node type should be configured with." + }, + "isPrimary": { + "type": "boolean", + "description": "The node type on which system services will run. Only one node type should be marked as primary. Primary node type cannot be deleted or changed for existing clusters." + }, + "vmInstanceCount": { + "type": "integer", + "description": "The number of nodes in the node type. This count should match the capacity property in the corresponding VirtualMachineScaleSet resource.", + "minimum": 1, + "maximum": 2147483647 + }, + "reverseProxyEndpointPort": { + "type": "integer", + "description": "The endpoint used by reverse proxy." + } + }, + "description": "Describes a node type in the cluster, each node type represents sub set of nodes in the cluster." + }, + "OperationListResult": { + "properties": { + "value": { + "type": "array", + "description": "List of operations supported by the Service Fabric resource provider.", + "items": { + "$ref": "#/definitions/OperationResult" + } + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any.", + "readOnly": true + } + }, + "description": "Describes the result of the request to list Service Fabric resource provider operations." + }, + "OperationResult": { + "properties": { + "name": { + "type": "string", + "description": "The name of the operation." + }, + "display": { + "$ref": "#/definitions/AvailableOperationDisplay", + "description": "The object that represents the operation." + }, + "origin": { + "type": "string", + "description": "Origin result" + }, + "nextLink": { + "type": "string", + "description": "The URL to use for getting the next set of results." + } + }, + "description": "Available operation list result" + }, + "ReliabilityLevel": { + "type": "string", + "description": "The reliability level sets the replica set size of system services. Learn about [ReliabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - None - Run the System services with a target replica set count of 1. This should only be used for test clusters.\n - Bronze - Run the System services with a target replica set count of 3. This should only be used for test clusters.\n - Silver - Run the System services with a target replica set count of 5.\n - Gold - Run the System services with a target replica set count of 7.\n - Platinum - Run the System services with a target replica set count of 9.\n", + "enum": [ + "None", + "Bronze", + "Silver", + "Gold", + "Platinum" + ] + }, + "Resource": { + "required": [ + "location" + ], + "properties": { + "id": { + "type": "string", + "description": "Azure resource identifier.", + "readOnly": true + }, + "name": { + "type": "string", + "description": "Azure resource name.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "Azure resource type.", + "readOnly": true + }, + "location": { + "type": "string", + "description": "Azure resource location.", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "tags": { + "type": "object", + "description": "Azure resource tags.", + "additionalProperties": { + "type": "string" + } + }, + "etag": { + "type": "string", + "description": "Azure resource etag.", + "readOnly": true + } + }, + "description": "The resource model definition.", + "x-ms-azure-resource": true + }, + "ServerCertificateCommonName": { + "description": "Describes the server certificate details using common name.", + "required": [ + "certificateCommonName", + "certificateIssuerThumbprint" + ], + "properties": { + "certificateCommonName": { + "type": "string", + "description": "The common name of the server certificate." + }, + "certificateIssuerThumbprint": { + "type": "string", + "description": "The issuer thumbprint of the server certificate." + } + } + }, + "ServerCertificateCommonNames": { + "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster.", + "properties": { + "commonNames": { + "type": "array", + "description": "The list of server certificates referenced by common name that are used to secure the cluster.", + "items": { + "$ref": "#/definitions/ServerCertificateCommonName" + } + }, + "x509StoreName": { + "$ref": "#/definitions/StoreName", + "description": "The local certificate store location." + } + } + }, + "ServiceTypeDeltaHealthPolicy": { + "type": "object", + "description": "Represents the delta health policy used to evaluate the health of services belonging to a service type when upgrading the cluster.\n", + "properties": { + "maxPercentDeltaUnhealthyServices": { + "type": "integer", + "description": "The maximum allowed percentage of services health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the services at the beginning of upgrade and the state of the services at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits.\n", + "default": 0, + "minimum": 0, + "maximum": 100 + } + } + }, + "ServiceTypeDeltaHealthPolicyMap": { + "type": "object", + "description": "Defines a map that contains specific delta health policies for different service types.\nEach entry specifies as key the service type name and as value a ServiceTypeDeltaHealthPolicy used to evaluate the service health when upgrading the cluster.\nThe map is empty by default.\n", + "additionalProperties": { + "$ref": "#/definitions/ServiceTypeDeltaHealthPolicy" + } + }, + "SettingsParameterDescription": { + "required": [ + "name", + "value" + ], + "properties": { + "name": { + "type": "string", + "description": "The parameter name of fabric setting." + }, + "value": { + "type": "string", + "description": "The parameter value of fabric setting." + } + }, + "description": "Describes a parameter in fabric settings of the cluster." + }, + "SettingsSectionDescription": { + "required": [ + "name", + "parameters" + ], + "properties": { + "name": { + "type": "string", + "description": "The section name of the fabric settings." + }, + "parameters": { + "type": "array", + "description": "The collection of parameters in the section.", + "items": { + "$ref": "#/definitions/SettingsParameterDescription" + } + } + }, + "description": "Describes a section in the fabric settings of the cluster." + }, + "StoreName": { + "type": "string", + "description": "The local certificate store location.", + "enum": [ + "AddressBook", + "AuthRoot", + "CertificateAuthority", + "Disallowed", + "My", + "Root", + "TrustedPeople", + "TrustedPublisher" + ] + }, + "UpgradeMode": { + "type": "string", + "description": "The upgrade mode of the cluster when new Service Fabric runtime version is available.\n\n - Automatic - The cluster will be automatically upgraded to the latest Service Fabric runtime version as soon as it is available.\n - Manual - The cluster will not be automatically upgraded to the latest Service Fabric runtime version. The cluster is upgraded by setting the **clusterCodeVersion** property in the cluster resource.\n", + "enum": [ + "Automatic", + "Manual" + ] + }, + "ErrorModel": { + "properties": { + "error": { + "$ref": "#/definitions/ErrorModelError", + "description": "The error details." + } + }, + "description": "The structure of the error." + }, + "ErrorModelError": { + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "description": "The error details." + }, + "ServiceTypeHealthPolicy": { + "type": "object", + "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n", + "properties": { + "maxPercentUnhealthyServices": { + "type": "integer", + "description": "The maximum percentage of services allowed to be unhealthy before your application is considered in error.\n", + "default": 0, + "minimum": 0, + "maximum": 100 + } + } + }, + "ServiceTypeHealthPolicyMap": { + "type": "object", + "description": "Defines a ServiceTypeHealthPolicy per service type name.\n\nThe entries in the map replace the default service type health policy for each specified service type.\nFor example, in an application that contains both a stateless gateway service type and a stateful engine service type, the health policies for the stateless and stateful services can be configured differently.\nWith policy per service type, there's more granular control of the health of the service.\n\nIf no policy is specified for a service type name, the DefaultServiceTypeHealthPolicy is used for evaluation.\n", + "additionalProperties": { + "$ref": "#/definitions/ServiceTypeHealthPolicy" + } + } + }, + "parameters": { + "api-version": { + "name": "api-version", + "in": "query", + "description": "The version of the Service Fabric resource provider API. This is a required parameter and it's value must be \"2020-03-01\" for this specification.", + "required": true, + "type": "string", + "enum": [ + "2020-03-01" + ], + "default": "2020-03-01", + "x-ms-parameter-location": "client" + }, + "clusterNameParameter": { + "name": "clusterName", + "in": "path", + "description": "The name of the cluster resource.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "clusterVersion": { + "name": "clusterVersion", + "in": "path", + "description": "The cluster code version.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "environment": { + "name": "environment", + "in": "path", + "description": "The operating system of the cluster. The default means all.", + "required": true, + "type": "string", + "enum": [ + "Windows", + "Linux" + ], + "x-ms-parameter-location": "method" + }, + "locationForClusterCodeVersions": { + "name": "location", + "in": "path", + "description": "The location for the cluster code versions. This is different from cluster location.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "subscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The customer subscription identifier.", + "required": true, + "type": "string", + "x-ms-parameter-location": "client" + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationDeleteOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationDeleteOperation_example.json new file mode 100644 index 000000000000..f9fe1895f7d3 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationDeleteOperation_example.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "api-version": "2020-03-01" + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/76053752-a423-4a80-b283-1dad1ba5f314?api-version=2020-03-01" + } + }, + "204": {} + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationGetOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationGetOperation_example.json new file mode 100644 index 000000000000..3950f60d19e5 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationGetOperation_example.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "applications", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502180261859\"", + "properties": { + "provisioningState": "Updating", + "typeName": "myAppType", + "typeVersion": "1.0", + "parameters": { + "param1": "value1" + }, + "upgradePolicy": { + "upgradeMode": "Monitored", + "applicationHealthPolicy": { + "considerWarningAsError": true, + "maxPercentUnhealthyDeployedApplications": 0, + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0, + "maxPercentUnhealthyPartitionsPerService": 0, + "maxPercentUnhealthyReplicasPerPartition": 0 + } + }, + "rollingUpgradeMonitoringPolicy": { + "failureAction": "Rollback", + "healthCheckRetryTimeout": "00:10:00", + "healthCheckWaitDuration": "00:02:00", + "healthCheckStableDuration": "00:05:00", + "upgradeDomainTimeout": "1.06:00:00", + "upgradeTimeout": "01:00:00" + }, + "upgradeReplicaSetCheckTimeout": "01:00:00", + "forceRestart": false + }, + "maximumNodes": 3, + "minimumNodes": 1, + "removeApplicationCapacity": false, + "metrics": [ + { + "name": "metric1", + "reservationCapacity": 1, + "maximumCapacity": 3, + "totalApplicationCapacity": 5 + } + ] + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationListOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationListOperation_example.json new file mode 100644 index 000000000000..97910a392dcd --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationListOperation_example.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "type": "applications", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502180261858\"", + "properties": { + "provisioningState": "Updating", + "typeName": "myAppType", + "typeVersion": "1.0", + "removeApplicationCapacity": false, + "metrics": [ + { + "name": "metric1", + "reservationCapacity": 1, + "maximumCapacity": 3, + "totalApplicationCapacity": 5 + } + ] + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationPatchOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationPatchOperation_example.json new file mode 100644 index 000000000000..01dfe131e68f --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationPatchOperation_example.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "api-version": "2020-03-01", + "parameters": { + "properties": { + "typeVersion": "1.0", + "removeApplicationCapacity": false, + "metrics": [ + { + "name": "metric1", + "reservationCapacity": 1, + "maximumCapacity": 3, + "totalApplicationCapacity": 5 + } + ] + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/a553eb63-c332-40df-8ace-eb8d34a9b298?api-version=2020-03-01" + }, + "body": { + "type": "applications", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502180261858\"", + "properties": { + "provisioningState": "Updating", + "typeName": "myAppType", + "typeVersion": "1.0", + "removeApplicationCapacity": false, + "metrics": [ + { + "name": "metric1", + "reservationCapacity": 1, + "maximumCapacity": 3, + "totalApplicationCapacity": 5 + } + ] + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationPutOperation_example_max.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationPutOperation_example_max.json new file mode 100644 index 000000000000..390964d6a2ae --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationPutOperation_example_max.json @@ -0,0 +1,108 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "api-version": "2020-03-01", + "parameters": { + "properties": { + "typeName": "myAppType", + "typeVersion": "1.0", + "parameters": { + "param1": "value1" + }, + "upgradePolicy": { + "upgradeMode": "Monitored", + "applicationHealthPolicy": { + "considerWarningAsError": true, + "maxPercentUnhealthyDeployedApplications": 0, + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0, + "maxPercentUnhealthyPartitionsPerService": 0, + "maxPercentUnhealthyReplicasPerPartition": 0 + } + }, + "rollingUpgradeMonitoringPolicy": { + "failureAction": "Rollback", + "healthCheckRetryTimeout": "00:10:00", + "healthCheckWaitDuration": "00:02:00", + "healthCheckStableDuration": "00:05:00", + "upgradeDomainTimeout": "1.06:00:00", + "upgradeTimeout": "01:00:00" + }, + "upgradeReplicaSetCheckTimeout": "01:00:00", + "forceRestart": false + }, + "maximumNodes": 3, + "minimumNodes": 1, + "removeApplicationCapacity": false, + "metrics": [ + { + "name": "metric1", + "reservationCapacity": 1, + "maximumCapacity": 3, + "totalApplicationCapacity": 5 + } + ] + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/9c2ce367-47ea-43de-b69e-c5a423da4557?api-version=2020-03-01" + }, + "body": { + "type": "applications", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502180261859\"", + "properties": { + "provisioningState": "Updating", + "typeName": "myAppType", + "typeVersion": "1.0", + "parameters": { + "param1": "value1" + }, + "upgradePolicy": { + "upgradeMode": "Monitored", + "applicationHealthPolicy": { + "considerWarningAsError": true, + "maxPercentUnhealthyDeployedApplications": 0, + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0, + "maxPercentUnhealthyPartitionsPerService": 0, + "maxPercentUnhealthyReplicasPerPartition": 0 + } + }, + "rollingUpgradeMonitoringPolicy": { + "failureAction": "Rollback", + "healthCheckRetryTimeout": "00:10:00", + "healthCheckWaitDuration": "00:02:00", + "healthCheckStableDuration": "00:05:00", + "upgradeDomainTimeout": "1.06:00:00", + "upgradeTimeout": "01:00:00" + }, + "upgradeReplicaSetCheckTimeout": "01:00:00", + "forceRestart": false + }, + "maximumNodes": 3, + "minimumNodes": 1, + "removeApplicationCapacity": false, + "metrics": [ + { + "name": "metric1", + "reservationCapacity": 1, + "maximumCapacity": 3, + "totalApplicationCapacity": 5 + } + ] + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationPutOperation_example_min.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationPutOperation_example_min.json new file mode 100644 index 000000000000..241bbdee8bc8 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationPutOperation_example_min.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "api-version": "2020-03-01", + "parameters": { + "properties": { + "typeName": "myAppType", + "typeVersion": "1.0", + "removeApplicationCapacity": false + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/5dce62ce-439b-47af-81d8-99ab14708e91?api-version=2020-03-01" + }, + "body": { + "type": "applications", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502180261857\"", + "properties": { + "provisioningState": "Updating", + "typeName": "myAppType", + "typeVersion": "1.0", + "removeApplicationCapacity": false + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeNameDeleteOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeNameDeleteOperation_example.json new file mode 100644 index 000000000000..3a7741b968a3 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeNameDeleteOperation_example.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "api-version": "2020-03-01" + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/6a367b2d-9f60-4941-b886-e348ddcb4127?api-version=2020-03-01" + } + }, + "204": {} + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeNameGetOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeNameGetOperation_example.json new file mode 100644 index 000000000000..4c78cda55b3a --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeNameGetOperation_example.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "applicationTypes", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applicationTypes/myAppType", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502174844831\"", + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeNameListOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeNameListOperation_example.json new file mode 100644 index 000000000000..3ff9da2cae93 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeNameListOperation_example.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "type": "applicationTypes", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applicationTypes/myAppType", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502174844831\"", + "properties": { + "provisioningState": "Succeeded" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeNamePutOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeNamePutOperation_example.json new file mode 100644 index 000000000000..aecb281a0284 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeNamePutOperation_example.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "api-version": "2020-03-01", + "parameters": {} + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "applicationTypes", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applicationTypes/myAppType", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502174844831\"", + "properties": { + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeVersionDeleteOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeVersionDeleteOperation_example.json new file mode 100644 index 000000000000..7d5a4386c350 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeVersionDeleteOperation_example.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "version": "1.0", + "api-version": "2020-03-01" + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/28e62369-ed8c-4aba-8c05-ab7d6238cc3d?api-version=2020-03-01" + } + }, + "204": {} + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeVersionGetOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeVersionGetOperation_example.json new file mode 100644 index 000000000000..ebbacb17aae4 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeVersionGetOperation_example.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "version": "1.0", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "versions", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applicationTypes/myAppType/versions/1.0", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502176040417\"", + "properties": { + "provisioningState": "Updating", + "appPackageUrl": "http://fakelink.test.com/MyAppType", + "defaultParameterList": {} + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeVersionListOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeVersionListOperation_example.json new file mode 100644 index 000000000000..774dd0c20c33 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeVersionListOperation_example.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "type": "versions", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applicationTypes/myAppType/versions/1.0", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502176040417\"", + "properties": { + "provisioningState": "Updating", + "appPackageUrl": "http://fakelink.test.com/MyAppType", + "defaultParameterList": {} + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeVersionPutOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeVersionPutOperation_example.json new file mode 100644 index 000000000000..5ee69832e1a4 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ApplicationTypeVersionPutOperation_example.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationTypeName": "myAppType", + "version": "1.0", + "api-version": "2020-03-01", + "parameters": { + "properties": { + "appPackageUrl": "http://fakelink.test.com/MyAppType" + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/e2413c7e-d51b-40ac-8155-bc85bf8ae856?api-version=2020-03-01" + }, + "body": { + "type": "versions", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applicationTypes/myAppType/versions/1.0", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502176040417\"", + "properties": { + "provisioningState": "Updating", + "appPackageUrl": "http://fakelink.test.com/MyAppType", + "defaultParameterList": {} + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterDeleteOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterDeleteOperation_example.json new file mode 100644 index 000000000000..faa8264ce040 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterDeleteOperation_example.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": {} + }, + "204": {} + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterGetOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterGetOperation_example.json new file mode 100644 index 000000000000..efe58557d860 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterGetOperation_example.json @@ -0,0 +1,159 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240745\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "6.1.480.9494", + "clusterState": "WaitingForNodes", + "managementEndpoint": "https://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "certificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "clientCertificateThumbprints": [ + { + "isAdmin": true, + "certificateThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "clientCertificateCommonNames": [ + { + "isAdmin": true, + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "01:00:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0, + "applicationHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0 + }, + "serviceTypeHealthPolicies": { + "myServiceType1": { + "maxPercentUnhealthyServices": 100 + } + } + } + } + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0, + "applicationDeltaHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeDeltaHealthPolicy": { + "maxPercentDeltaUnhealthyServices": 0 + }, + "serviceTypeDeltaHealthPolicies": { + "myServiceType1": { + "maxPercentDeltaUnhealthyServices": 0 + } + } + } + } + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "vmImage": "Windows", + "azureActiveDirectory": { + "tenantId": "6abcc6a0-8666-43f1-87b8-172cf86a9f9c", + "clusterApplication": "5886372e-7bf4-4878-a497-8098aba608ae", + "clientApplication": "d151ad89-4bce-4ae8-b3d1-1dc79679fa75" + }, + "reliabilityLevel": "Silver", + "reverseProxyCertificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "upgradeMode": "Manual", + "availableClusterVersions": [ + { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ], + "addOnFeatures": [ + "RepairManager", + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ] + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterListByResourceGroupOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterListByResourceGroupOperation_example.json new file mode 100644 index 000000000000..9ea1ea5a3f7b --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterListByResourceGroupOperation_example.json @@ -0,0 +1,248 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240745\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "6.1.480.9494", + "clusterState": "WaitingForNodes", + "managementEndpoint": "https://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "certificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "clientCertificateThumbprints": [ + { + "isAdmin": false, + "certificateThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "clientCertificateCommonNames": [ + { + "isAdmin": true, + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "01:00:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0, + "applicationHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0 + }, + "serviceTypeHealthPolicies": { + "myServiceType1": { + "maxPercentUnhealthyServices": 100 + } + } + } + } + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0, + "applicationDeltaHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeDeltaHealthPolicy": { + "maxPercentDeltaUnhealthyServices": 0 + }, + "serviceTypeDeltaHealthPolicies": { + "myServiceType1": { + "maxPercentDeltaUnhealthyServices": 0 + } + } + } + } + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "vmImage": "Windows", + "azureActiveDirectory": { + "tenantId": "6abcc6a0-8666-43f1-87b8-172cf86a9f9c", + "clusterApplication": "5886372e-7bf4-4878-a497-8098aba608ae", + "clientApplication": "d151ad89-4bce-4ae8-b3d1-1dc79679fa75" + }, + "reliabilityLevel": "Silver", + "reverseProxyCertificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "upgradeMode": "Manual", + "availableClusterVersions": [ + { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ], + "addOnFeatures": [ + "RepairManager", + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ] + } + }, + { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster2", + "name": "myCluster2", + "tags": {}, + "etag": "W/\"636462502164040075\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "2747e469-b24e-4039-8a0a-46151419523f", + "clusterCodeVersion": "6.1.187.1", + "clusterState": "WaitingForNodes", + "managementEndpoint": "http://myCluster2.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "clientCertificateThumbprints": [], + "clientCertificateCommonNames": [], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "01:00:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0 + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0 + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "vmImage": "Ubuntu", + "reliabilityLevel": "Silver", + "upgradeMode": "Manual", + "availableClusterVersions": [ + { + "codeVersion": "6.1.187.1", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Linux" + } + ], + "addOnFeatures": [ + "RepairManager" + ] + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterListOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterListOperation_example.json new file mode 100644 index 000000000000..2029a1f6fea2 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterListOperation_example.json @@ -0,0 +1,247 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240745\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "6.1.480.9494", + "clusterState": "WaitingForNodes", + "managementEndpoint": "https://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "certificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "clientCertificateThumbprints": [ + { + "isAdmin": false, + "certificateThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "clientCertificateCommonNames": [ + { + "isAdmin": true, + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "01:00:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0, + "applicationHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0 + }, + "serviceTypeHealthPolicies": { + "myServiceType1": { + "maxPercentUnhealthyServices": 100 + } + } + } + } + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0, + "applicationDeltaHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeDeltaHealthPolicy": { + "maxPercentDeltaUnhealthyServices": 0 + }, + "serviceTypeDeltaHealthPolicies": { + "myServiceType1": { + "maxPercentDeltaUnhealthyServices": 0 + } + } + } + } + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "vmImage": "Windows", + "azureActiveDirectory": { + "tenantId": "6abcc6a0-8666-43f1-87b8-172cf86a9f9c", + "clusterApplication": "5886372e-7bf4-4878-a497-8098aba608ae", + "clientApplication": "d151ad89-4bce-4ae8-b3d1-1dc79679fa75" + }, + "reliabilityLevel": "Silver", + "reverseProxyCertificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "upgradeMode": "Manual", + "availableClusterVersions": [ + { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ], + "addOnFeatures": [ + "RepairManager", + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ] + } + }, + { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster2", + "name": "myCluster2", + "tags": {}, + "etag": "W/\"636462502164040075\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "2747e469-b24e-4039-8a0a-46151419523f", + "clusterCodeVersion": "6.1.187.1", + "clusterState": "WaitingForNodes", + "managementEndpoint": "http://myCluster2.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "clientCertificateThumbprints": [], + "clientCertificateCommonNames": [], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "01:00:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0 + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0 + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "vmImage": "Ubuntu", + "reliabilityLevel": "Silver", + "upgradeMode": "Manual", + "availableClusterVersions": [ + { + "codeVersion": "6.1.187.1", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Linux" + } + ], + "addOnFeatures": [ + "RepairManager" + ] + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterPatchOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterPatchOperation_example.json new file mode 100644 index 000000000000..9433d4fa7970 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterPatchOperation_example.json @@ -0,0 +1,284 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2020-03-01", + "parameters": { + "tags": { + "a": "b" + }, + "properties": { + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + }, + { + "name": "testnt1", + "clientConnectionEndpointPort": 0, + "httpGatewayEndpointPort": 0, + "applicationPorts": { + "startPort": 1000, + "endPort": 2000 + }, + "ephemeralPorts": { + "startPort": 3000, + "endPort": 4000 + }, + "isPrimary": false, + "vmInstanceCount": 3, + "durabilityLevel": "Bronze" + } + ], + "reliabilityLevel": "Bronze", + "upgradeMode": "Automatic", + "eventStoreServiceEnabled": true + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2020-03-01" + }, + "body": { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": { + "a": "b" + }, + "etag": "W/\"636462502169240744\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "6.1.480.9494", + "clusterState": "WaitingForNodes", + "managementEndpoint": "http://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "certificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "clientCertificateThumbprints": [], + "clientCertificateCommonNames": [], + "eventStoreServiceEnabled": true, + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "01:00:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0 + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0 + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + }, + { + "name": "testnt1", + "clientConnectionEndpointPort": 0, + "httpGatewayEndpointPort": 0, + "applicationPorts": { + "startPort": 1000, + "endPort": 2000 + }, + "ephemeralPorts": { + "startPort": 3000, + "endPort": 4000 + }, + "isPrimary": false, + "vmInstanceCount": 3, + "durabilityLevel": "Bronze" + } + ], + "reliabilityLevel": "Bronze", + "upgradeMode": "Automatic", + "availableClusterVersions": [ + { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ] + } + } + }, + "200": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/1ca6e48d-70ca-4e43-b652-3b0522f64d67?api-version=2020-03-01" + }, + "body": { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": { + "a": "b" + }, + "etag": "W/\"636462502169240744\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "6.1.480.9494", + "clusterState": "WaitingForNodes", + "managementEndpoint": "http://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "certificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "clientCertificateThumbprints": [], + "clientCertificateCommonNames": [], + "eventStoreServiceEnabled": true, + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "01:00:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0 + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0 + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + }, + { + "name": "testnt1", + "clientConnectionEndpointPort": 0, + "httpGatewayEndpointPort": 0, + "applicationPorts": { + "startPort": 1000, + "endPort": 2000 + }, + "ephemeralPorts": { + "startPort": 3000, + "endPort": 4000 + }, + "isPrimary": false, + "vmInstanceCount": 3, + "durabilityLevel": "Bronze" + } + ], + "reliabilityLevel": "Bronze", + "upgradeMode": "Automatic", + "availableClusterVersions": [ + { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ] + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterPutOperation_example_max.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterPutOperation_example_max.json new file mode 100644 index 000000000000..efcf16ab058b --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterPutOperation_example_max.json @@ -0,0 +1,457 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2020-03-01", + "parameters": { + "location": "eastus", + "tags": {}, + "properties": { + "clusterCodeVersion": "7.0.470.9590", + "managementEndpoint": "https://myCluster.eastus.cloudapp.azure.com:19080", + "certificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "clientCertificateThumbprints": [ + { + "isAdmin": true, + "certificateThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "clientCertificateCommonNames": [ + { + "isAdmin": true, + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "01:00:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0, + "applicationHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0 + }, + "serviceTypeHealthPolicies": { + "myServiceType1": { + "maxPercentUnhealthyServices": 100 + } + } + } + } + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0, + "applicationDeltaHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeDeltaHealthPolicy": { + "maxPercentDeltaUnhealthyServices": 0 + }, + "serviceTypeDeltaHealthPolicies": { + "myServiceType1": { + "maxPercentDeltaUnhealthyServices": 0 + } + } + } + } + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "vmImage": "Windows", + "azureActiveDirectory": { + "tenantId": "6abcc6a0-8666-43f1-87b8-172cf86a9f9c", + "clusterApplication": "5886372e-7bf4-4878-a497-8098aba608ae", + "clientApplication": "d151ad89-4bce-4ae8-b3d1-1dc79679fa75" + }, + "reliabilityLevel": "Silver", + "reverseProxyCertificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "upgradeMode": "Manual", + "addOnFeatures": [ + "RepairManager", + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ], + "eventStoreServiceEnabled": true, + "applicationTypeVersionsCleanupPolicy": { + "maxUnusedVersionsToKeep": 2 + } + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/4b5f6709-bc12-4365-8df3-894984b2a221?api-version=2020-03-01" + }, + "body": { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240745\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "6.1.480.9494", + "clusterState": "WaitingForNodes", + "managementEndpoint": "https://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "certificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "clientCertificateThumbprints": [ + { + "isAdmin": false, + "certificateThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "clientCertificateCommonNames": [ + { + "isAdmin": true, + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": true, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "00:15:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0, + "applicationHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0 + }, + "serviceTypeHealthPolicies": { + "myServiceType1": { + "maxPercentUnhealthyServices": 100 + } + } + } + } + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0, + "applicationDeltaHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeDeltaHealthPolicy": { + "maxPercentDeltaUnhealthyServices": 0 + }, + "serviceTypeDeltaHealthPolicies": { + "myServiceType1": { + "maxPercentDeltaUnhealthyServices": 0 + } + } + } + } + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "vmImage": "Windows", + "azureActiveDirectory": { + "tenantId": "6abcc6a0-8666-43f1-87b8-172cf86a9f9c", + "clusterApplication": "5886372e-7bf4-4878-a497-8098aba608ae", + "clientApplication": "d151ad89-4bce-4ae8-b3d1-1dc79679fa75" + }, + "reliabilityLevel": "Silver", + "reverseProxyCertificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "upgradeMode": "Manual", + "availableClusterVersions": [ + { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ], + "addOnFeatures": [ + "RepairManager", + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ], + "eventStoreServiceEnabled": true, + "applicationTypeVersionsCleanupPolicy": { + "maxUnusedVersionsToKeep": 2 + } + } + } + }, + "200": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/4b5f6709-bc12-4365-8df3-894984b2a221?api-version=2020-03-01" + }, + "body": { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240745\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "6.1.480.9494", + "clusterState": "WaitingForNodes", + "managementEndpoint": "https://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "certificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "clientCertificateThumbprints": [ + { + "isAdmin": false, + "certificateThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "clientCertificateCommonNames": [ + { + "isAdmin": true, + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "5F3660C715EBBDA31DB1FFDCF508302348DE8E7A" + } + ], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": true, + "upgradeReplicaSetCheckTimeout": "00:10:00", + "healthCheckWaitDuration": "00:00:30", + "healthCheckStableDuration": "00:00:30", + "healthCheckRetryTimeout": "00:05:00", + "upgradeTimeout": "00:15:00", + "upgradeDomainTimeout": "00:15:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 0, + "maxPercentUnhealthyApplications": 0, + "applicationHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeHealthPolicy": { + "maxPercentUnhealthyServices": 0 + }, + "serviceTypeHealthPolicies": { + "myServiceType1": { + "maxPercentUnhealthyServices": 100 + } + } + } + } + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0, + "applicationDeltaHealthPolicies": { + "fabric:/myApp1": { + "defaultServiceTypeDeltaHealthPolicy": { + "maxPercentDeltaUnhealthyServices": 0 + }, + "serviceTypeDeltaHealthPolicies": { + "myServiceType1": { + "maxPercentDeltaUnhealthyServices": 0 + } + } + } + } + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "vmImage": "Windows", + "azureActiveDirectory": { + "tenantId": "6abcc6a0-8666-43f1-87b8-172cf86a9f9c", + "clusterApplication": "5886372e-7bf4-4878-a497-8098aba608ae", + "clientApplication": "d151ad89-4bce-4ae8-b3d1-1dc79679fa75" + }, + "reliabilityLevel": "Silver", + "reverseProxyCertificateCommonNames": { + "commonNames": [ + { + "certificateCommonName": "abc.com", + "certificateIssuerThumbprint": "12599211F8F14C90AFA9532AD79A6F2CA1C00622" + } + ], + "x509StoreName": "My" + }, + "upgradeMode": "Manual", + "availableClusterVersions": [ + { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ], + "addOnFeatures": [ + "RepairManager", + "DnsService", + "BackupRestoreService", + "ResourceMonitorService" + ], + "eventStoreServiceEnabled": true, + "applicationTypeVersionsCleanupPolicy": { + "maxUnusedVersionsToKeep": 2 + } + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterPutOperation_example_min.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterPutOperation_example_min.json new file mode 100644 index 000000000000..0b9f120e9644 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterPutOperation_example_min.json @@ -0,0 +1,223 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "api-version": "2020-03-01", + "parameters": { + "location": "eastus", + "tags": {}, + "properties": { + "managementEndpoint": "http://myCluster.eastus.cloudapp.azure.com:19080", + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "reliabilityLevel": "Silver", + "upgradeMode": "Automatic" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240743\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "7.0.470.9590", + "clusterState": "WaitingForNodes", + "managementEndpoint": "http://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "clientCertificateThumbprints": [], + "clientCertificateCommonNames": [], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "10675199.02:48:05.4775807", + "healthCheckWaitDuration": "00:05:00", + "healthCheckStableDuration": "00:05:00", + "healthCheckRetryTimeout": "00:45:00", + "upgradeTimeout": "12:00:00", + "upgradeDomainTimeout": "02:00:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 100, + "maxPercentUnhealthyApplications": 100 + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0 + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "reliabilityLevel": "Silver", + "upgradeMode": "Automatic", + "availableClusterVersions": [ + { + "codeVersion": "7.0.470.9590", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ] + } + } + }, + "202": { + "headers": {}, + "body": { + "type": "Microsoft.ServiceFabric/clusters", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502169240743\"", + "properties": { + "provisioningState": "Succeeded", + "clusterId": "92584666-9889-4ae8-8d02-91902923d37f", + "clusterCodeVersion": "7.0.470.9590", + "clusterState": "WaitingForNodes", + "managementEndpoint": "http://myCluster.eastus.cloudapp.azure.com:19080", + "clusterEndpoint": "https://eastus.servicefabric.azure.com", + "clientCertificateThumbprints": [], + "clientCertificateCommonNames": [], + "fabricSettings": [ + { + "name": "UpgradeService", + "parameters": [ + { + "name": "AppPollIntervalInSeconds", + "value": "60" + } + ] + } + ], + "upgradeDescription": { + "forceRestart": false, + "upgradeReplicaSetCheckTimeout": "10675199.02:48:05.4775807", + "healthCheckWaitDuration": "00:05:00", + "healthCheckStableDuration": "00:05:00", + "healthCheckRetryTimeout": "00:45:00", + "upgradeTimeout": "12:00:00", + "upgradeDomainTimeout": "02:00:00", + "healthPolicy": { + "maxPercentUnhealthyNodes": 100, + "maxPercentUnhealthyApplications": 100 + }, + "deltaHealthPolicy": { + "maxPercentDeltaUnhealthyNodes": 0, + "maxPercentUpgradeDomainDeltaUnhealthyNodes": 0, + "maxPercentDeltaUnhealthyApplications": 0 + } + }, + "diagnosticsStorageAccountConfig": { + "storageAccountName": "diag", + "protectedAccountKeyName": "StorageAccountKey1", + "blobEndpoint": "https://diag.blob.core.windows.net/", + "queueEndpoint": "https://diag.queue.core.windows.net/", + "tableEndpoint": "https://diag.table.core.windows.net/" + }, + "nodeTypes": [ + { + "name": "nt1vm", + "clientConnectionEndpointPort": 19000, + "httpGatewayEndpointPort": 19007, + "applicationPorts": { + "startPort": 20000, + "endPort": 30000 + }, + "ephemeralPorts": { + "startPort": 49000, + "endPort": 64000 + }, + "isPrimary": true, + "vmInstanceCount": 5, + "durabilityLevel": "Bronze" + } + ], + "reliabilityLevel": "Silver", + "upgradeMode": "Automatic", + "availableClusterVersions": [ + { + "codeVersion": "7.0.470.9590", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + ] + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterVersionsGetByEnvironment_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterVersionsGetByEnvironment_example.json new file mode 100644 index 000000000000..d035285101be --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterVersionsGetByEnvironment_example.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "environment": "Windows", + "clusterVersion": "6.1.480.9494", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/environments/Windows/clusterVersions/6.1.480.9494", + "name": "6.1.480.9494", + "type": "Microsoft.ServiceFabric/locations/environments/clusterVersions", + "properties": { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterVersionsGet_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterVersionsGet_example.json new file mode 100644 index 000000000000..47a35c07e387 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterVersionsGet_example.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "clusterVersion": "6.1.480.9494", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/environments/Windows/clusterVersions/6.1.480.9494", + "name": "6.1.480.9494", + "type": "Microsoft.ServiceFabric/locations/environments/clusterVersions", + "properties": { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterVersionsListByEnvironment.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterVersionsListByEnvironment.json new file mode 100644 index 000000000000..0d476df85801 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterVersionsListByEnvironment.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "environment": "Windows", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/environments/Windows/clusterVersions/6.1.480.9494", + "name": "6.1.480.9494", + "type": "Microsoft.ServiceFabric/locations/environments/clusterVersions", + "properties": { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterVersionsList_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterVersionsList_example.json new file mode 100644 index 000000000000..1ccb0492084b --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ClusterVersionsList_example.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/environments/Windows/clusterVersions/6.1.480.9494", + "name": "6.1.480.9494", + "type": "Microsoft.ServiceFabric/locations/environments/clusterVersions", + "properties": { + "codeVersion": "6.1.480.9494", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Windows" + } + }, + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/environments/Linux/clusterVersions/6.1.187.1", + "name": "6.1.187.1", + "type": "Microsoft.ServiceFabric/locations/environments/clusterVersions", + "properties": { + "codeVersion": "6.1.187.1", + "supportExpiryUtc": "2018-06-15T23:59:59.9999999", + "environment": "Linux" + } + } + ] + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServiceDeleteOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServiceDeleteOperation_example.json new file mode 100644 index 000000000000..d00c48075708 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServiceDeleteOperation_example.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "serviceName": "myService", + "api-version": "2020-03-01" + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/41fa5ef9-7f34-4c36-a730-93e0bb757d22?api-version=2020-03-01" + } + }, + "204": {} + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServiceGetOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServiceGetOperation_example.json new file mode 100644 index 000000000000..b6a8e6de236b --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServiceGetOperation_example.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "serviceName": "myService", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "type": "services", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp/services/myService", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502183671258\"", + "properties": { + "provisioningState": "Updating", + "serviceKind": "Stateless", + "placementConstraints": "NodeType==frontend", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "serviceLoadMetrics": [ + { + "name": "metric1", + "weight": "Low" + } + ], + "servicePlacementPolicies": [], + "defaultMoveCost": "Medium", + "instanceCount": 5, + "servicePackageActivationMode": "SharedProcess" + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServiceListOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServiceListOperation_example.json new file mode 100644 index 000000000000..42185cf1ee7e --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServiceListOperation_example.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "api-version": "2020-03-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "type": "services", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp/services/myService", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502183671257\"", + "properties": { + "provisioningState": "Updating", + "serviceKind": "Stateless", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "serviceLoadMetrics": [ + { + "name": "metric1", + "weight": "Low" + } + ], + "instanceCount": 1, + "servicePackageActivationMode": "SharedProcess" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServicePatchOperation_example.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServicePatchOperation_example.json new file mode 100644 index 000000000000..0880def22061 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServicePatchOperation_example.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "serviceName": "myService", + "api-version": "2020-03-01", + "parameters": { + "properties": { + "serviceKind": "Stateless", + "serviceLoadMetrics": [ + { + "name": "metric1", + "weight": "Low" + } + ] + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/4dde8d8b-b6b2-4c56-99c6-9b83932bb09a?api-version=2020-03-01" + }, + "body": { + "type": "services", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp/services/myService", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502183671257\"", + "properties": { + "provisioningState": "Updating", + "serviceKind": "Stateless", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "serviceLoadMetrics": [ + { + "name": "metric1", + "weight": "Low" + } + ], + "instanceCount": 1, + "servicePackageActivationMode": "SharedProcess" + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServicePutOperation_example_max.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServicePutOperation_example_max.json new file mode 100644 index 000000000000..2ff58cc3ae47 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServicePutOperation_example_max.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "serviceName": "myService", + "api-version": "2020-03-01", + "parameters": { + "properties": { + "serviceKind": "Stateless", + "placementConstraints": "NodeType==frontend", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "serviceLoadMetrics": [ + { + "name": "metric1", + "weight": "Low" + } + ], + "correlationScheme": [ + { + "serviceName": "fabric:/app1/app1~svc1", + "scheme": "Affinity" + } + ], + "servicePlacementPolicies": [], + "defaultMoveCost": "Medium", + "instanceCount": 5, + "servicePackageActivationMode": "SharedProcess", + "serviceDnsName": "my.service.dns" + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/2e633105-aadc-4928-9164-d76b974170a3?api-version=2020-03-01" + }, + "body": { + "type": "services", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp/services/myService", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502183671258\"", + "properties": { + "provisioningState": "Updating", + "serviceKind": "Stateless", + "placementConstraints": "NodeType==frontend", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "serviceLoadMetrics": [ + { + "name": "metric1", + "weight": "Low" + } + ], + "servicePlacementPolicies": [], + "defaultMoveCost": "Medium", + "instanceCount": 5, + "servicePackageActivationMode": "SharedProcess", + "serviceDnsName": "my.service.dns" + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServicePutOperation_example_min.json b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServicePutOperation_example_min.json new file mode 100644 index 000000000000..996bb0e410e9 --- /dev/null +++ b/specification/servicefabric/resource-manager/Microsoft.ServiceFabric/stable/2020-03-01/examples/ServicePutOperation_example_min.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "clusterName": "myCluster", + "applicationName": "myApp", + "serviceName": "myService", + "api-version": "2020-03-01", + "parameters": { + "properties": { + "serviceKind": "Stateless", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "instanceCount": 1 + } + } + }, + "responses": { + "202": { + "headers": { + "Retry-After": "10", + "Location": "http://10.91.140.224/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/operationResults/5bc615c3-6c5b-4593-80e1-008f55376ec7?api-version=2020-03-01" + }, + "body": { + "type": "services", + "location": "eastus", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.ServiceFabric/clusters/myCluster/applications/myApp/services/myService", + "name": "myCluster", + "tags": {}, + "etag": "W/\"636462502183671256\"", + "properties": { + "provisioningState": "Updating", + "serviceKind": "Stateless", + "serviceTypeName": "myServiceType", + "partitionDescription": { + "partitionScheme": "Singleton" + }, + "instanceCount": 1 + } + } + } + } +} diff --git a/specification/servicefabric/resource-manager/readme.cli.md b/specification/servicefabric/resource-manager/readme.cli.md new file mode 100644 index 000000000000..a05e1835e02f --- /dev/null +++ b/specification/servicefabric/resource-manager/readme.cli.md @@ -0,0 +1,42 @@ +## CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +cli: + cli-name: servicefabric + package-name: azure-mgmt-servicefabric + namespace: azure.mgmt.servicefabric + test-scenario: + - name: Put a cluster with minimum parameters + - name: Put a cluster with maximum parameters + - name: Put an application with maximum parameters + - name: Put an application with minimum parameters + - name: Put an application type + - name: Put a service with minimum parameters + - name: Put a service with maximum parameters + - name: Put an application type version + - name: Get an application type version + - name: Get a service + - name: Get a list of application type version resources + - name: Get a list of service resources + - name: Get cluster version by environment + - name: Get an application type + - name: Get an application + - name: List cluster versions by environment + - name: Get a list of application type name resources + - name: Get a list of application resources + - name: Get cluster version + - name: Get a cluster + - name: List cluster versions + - name: List cluster by resource group + - name: List clusters + - name: Patch a service + - name: Patch an application + - name: Patch a cluster + - name: Delete an application type version + - name: Delete a service + - name: Delete an application type + - name: Delete an application + - name: Delete a cluster +``` \ No newline at end of file diff --git a/specification/servicefabric/resource-manager/readme.md b/specification/servicefabric/resource-manager/readme.md index f958b459e5c3..282661df8854 100644 --- a/specification/servicefabric/resource-manager/readme.md +++ b/specification/servicefabric/resource-manager/readme.md @@ -28,7 +28,7 @@ These are the global settings for the ServiceFabricManagementClient API. title: ServiceFabricManagementClient description: Service Fabric Management Client openapi-type: arm -tag: package-2019-06-preview +tag: package-2020-03 directive: - suppress: ListInOperationName @@ -59,6 +59,27 @@ directive: reason: There are open issues (bugs) in the validator affecting some of the examples and since there is no way to selectively disable the validation for a particular example or paths, all of the example validation is being turned off. ``` + +### Tag: package-2020-03 + +These settings apply only when `--tag=package-2020-03` is specified on the command line. + +``` yaml $(tag) == 'package-2020-03' +input-file: +- Microsoft.ServiceFabric/stable/2020-03-01/cluster.json +- Microsoft.ServiceFabric/stable/2020-03-01/application.json +``` + +### Tag: package-2019-11-preview + +These settings apply only when `--tag=package-2019-11-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2019-11-preview' +input-file: +- Microsoft.ServiceFabric/preview/2019-11-01-preview/cluster.json +- Microsoft.ServiceFabric/preview/2019-11-01-preview/application.json +``` + ### Tag: package-2019-06-preview These settings apply only when `--tag=package-2019-06-preview` is specified on the command line. @@ -184,6 +205,10 @@ 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/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 diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/DatabaseBlobAuditingCreateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/DatabaseBlobAuditingCreateMax.json index de1986f5ecdf..f19265d4c2b8 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/DatabaseBlobAuditingCreateMax.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/examples/DatabaseBlobAuditingCreateMax.json @@ -38,7 +38,11 @@ "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000", "isStorageSecondaryKeyInUse": false, "queueDelayMs": 4000, - "auditActionsAndGroups": [ "DATABASE_LOGOUT_GROUP", "DATABASE_ROLE_MEMBER_CHANGE_GROUP", "UPDATE on database::TestDatabaseName by public" ], + "auditActionsAndGroups": [ + "DATABASE_LOGOUT_GROUP", + "DATABASE_ROLE_MEMBER_CHANGE_GROUP", + "UPDATE on database::TestDatabaseName by public" + ], "isAzureMonitorTargetEnabled": true } } @@ -56,7 +60,11 @@ "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000", "isStorageSecondaryKeyInUse": false, "queueDelayMs": 4000, - "auditActionsAndGroups": [ "DATABASE_LOGOUT_GROUP", "DATABASE_ROLE_MEMBER_CHANGE_GROUP", "UPDATE on database::TestDatabaseName by public" ], + "auditActionsAndGroups": [ + "DATABASE_LOGOUT_GROUP", + "DATABASE_ROLE_MEMBER_CHANGE_GROUP", + "UPDATE on database::TestDatabaseName by public" + ], "isAzureMonitorTargetEnabled": true } } diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/managedInstances.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/managedInstances.json index b50eb3ab1b62..0e817f870ea3 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/managedInstances.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2015-05-01-preview/managedInstances.json @@ -130,7 +130,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 HkCannotSwitchToInactive - The database cannot proceed with pricing-tier update as it has memory-optimized objects. Please drop such objects and try again.\n\n * 400 ManagedInstanceInvalidStorageSizeLessThenCurrentSizeUsed - Invalid storage size: Storage size limit ({0} GB) is less that current storage used ({1} GB). Please specify higher storage size limit.\n\n * 400 InstanceTimezoneUpdateNotSupported - Instance timezone update not supported.\n\n * 400 CreateManagedInstanceWithNonDefaultTimezoneNotSupported - Create Managed Instance with non-default timezone not supported.\n\n * 400 ManagedInstanceIpAddressRangeLimit - Cannot create a Managed Instance as there are not enough available ip addresses in the selected subnet\n\n * 400 VnetDelegationNotAllowed - User tried to inject Managed Server to subnet which is delegated.\n\n * 400 SubnetHasResourcesOfDifferentType - User tried to create MI in subnet that has resources of different type.\n\n * 400 InvalidUsername - Supplied user name contains invalid characters.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InstancePoolNotEnoughCapacity - An instance pool does not have enough vCore capacity\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 ManagedInstanceSloUpdateFailed - SLO '{0}' operation cannot succeed as the memory usage of '{1}' exceeds the quota.\n\n * 400 ManagedInstanceLocalStorageUpdateSloDisabled - Update SLO for managed instances with local storage is not supported yet.\n\n * 400 InvalidLoginName - The provided login name is invalid.\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 PasswordTooShort - The provided password is too short\n\n * 400 PasswordTooLong - The provided password is too long.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 GatewayInvalidEdition - '{0}' is not a valid database edition in this version of SQL Server.\n\n * 400 InvalidSubnetResourceId - The provided subnet resource ID for the managed instance create or update is invalid.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 VnetInWrongRegion - Virtual network is in wrong region.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 VnetAddressRangeError - Virtual network address range is invalid.\n\n * 400 VnetConfigIsNotAllowed - Virtual network configuration is not allowed.\n\n * 400 InvalidCollation - Invalid collation.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 ManagedInstanceClassicVnetNotSupported - Managed Instance cannot be joined to a classic virtual network.\n\n * 400 AlterDbDeactivatedNotSupported - Database Operation failed for Server '{0}', Database '{1}' due to unexpected delay. Please try again.\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 VnetConfigHasNsg - User tried to inject Managed Server subnet with Network Security Groups.\n\n * 400 VnetConfigHasNoUdr - User tried to inject Managed Server subnet without default User Defined Route Table.\n\n * 400 VnetConfigHasInvalidUdr - User tried to inject Managed Server subnet with invalid User Defined Route Table.\n\n * 400 VnetConfigHasInvalidDns - User tried to inject Managed Server subnet with invalid custom DNS.\n\n * 400 VnetConfigHasServiceEndpoints - User tried to inject Managed Server subnet with service endpoints.\n\n * 400 VnetSubnetIsInUse - User tried to inject Managed Server subnet that is not empty.\n\n * 400 VnetSubnetIsLocked - User tried to inject Managed Server subnet that is in locked scope.\n\n * 400 VnetSubnetIsGateway - User tried to inject Managed Server subnet that is Gateway subnet.\n\n * 400 VnetSubnetIsUnknown - User tried to inject Managed Server subnet that does not exist.\n\n * 400 VnetSubnetConflictWithIntendedPolicy - User tried to inject Managed Server subnet that has a conflict with IntendedPolicy.\n\n * 400 NameAlreadyExists - The provided name already exists.\n\n * 400 ManagedInstanceInvalidEditionForSku - The specified edition {0} is not consistent with the specified SKU {1}.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 ManagedInstanceInvalidLicenseType - The specified license type {0} is not valid.\n\n * 400 ManagedInstanceUpdateSloInProgress - \"The operation could not be completed because a service tier change is in progress for managed instance '{0}.' Please wait for the operation in progress to complete and try again.\"\n\n * 400 VnetResourceNotFound - Resource not found: '{0}'.\n\n * 400 InvalidTimezone - Invalid timezone.\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 InstanceCollationUpdateNotSupported - User cannot change instance collation on Managed Instance.\n\n * 400 CreateManagedInstanceWithNonDefaultCollationNotSupported - User can create a Managed Instance only with collation 'SQL_Latin1_General_CP1_CI_AS'.\n\n * 400 ManagedInstanceOperationInProgress - The operation could not be completed because {0} operation is in progress. Please wait for the operation in progress to complete and try again.\n\n * 400 ManagedInstanceExceedMaxAzureStorage - The operation could not be completed because total allocated storage size for General Purpose instance would exceed {0}. Please reduce the number of database files and retry operation.\n\n * 400 ManagedInstanceHasGeoReplica - The operation could not be completed because instance has configured geo replicated secondary instance.\n\n * 400 InvalidManagedServerDnsZonePartner - Invalid DNS zone partner resource id specified in properties.\n\n * 400 ManagementServiceFeatureDisabled - User attempted to use a feature which is disabled.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group 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 * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ManagedInstanceNotInSubscriptionResourceGroup - Specified managed instance does not exist in the specified resource group and subscription.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 405 InvalidVcoreValue - vCore value {0} is not valid. Please specify a valid vCore value.\n\n * 405 InvalidHardwareGenerationValue - HardwareGeneration {0} is not valid. Please specify a valid HardwareGeneration value.\n\n * 405 InvalidStorageSizeValue - \"Invalid storage size: {0} GB. Storage size must be specified between {1} and {2} gigabytes, in increments of {3} GB.\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 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ServerAlreadyExists - Duplicate server name.\n\n * 409 ServerOverridePreconditionFailed - Failed to apply server override on category '{0}', because physical db or instance '{1}' in server '{2}' is currently not in 'Ready' or 'Deactivated' state.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ManagedInstanceIsBusy - The server '{0}' is currently busy. Please wait a few minutes before trying again.\n\n * 409 ServerQuotaExceeded - Server cannot be added to a subscription because it will exceed quota.\n\n * 409 ConflictingManagedInstanceOperation - An operation is currently in progress for the managed instance.\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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\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 * 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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 500 GatewayInternalServerError - The server encountered an unexpected exception.\n\n * 503 TooManyRequests - 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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + "description": "*** Error Responses: ***\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 HkCannotSwitchToInactive - The database cannot proceed with pricing-tier update as it has memory-optimized objects. Please drop such objects and try again.\n\n * 400 ManagedInstanceInvalidStorageSizeLessThenCurrentSizeUsed - Invalid storage size: Storage size limit ({0} GB) is less that current storage used ({1} GB). Please specify higher storage size limit.\n\n * 400 InstanceTimezoneUpdateNotSupported - Instance timezone update not supported.\n\n * 400 CreateManagedInstanceWithNonDefaultTimezoneNotSupported - Create Managed Instance with non-default timezone not supported.\n\n * 400 ManagedInstanceIpAddressRangeLimit - Cannot create a Managed Instance as there are not enough available ip addresses in the selected subnet\n\n * 400 VnetDelegationNotAllowed - User tried to inject Managed Server to subnet which is delegated.\n\n * 400 SubnetHasResourcesOfDifferentType - User tried to create MI in subnet that has resources of different type.\n\n * 400 UpdateManagedServerWithMaintenanceWindowNotAllowed - Update of Managed Instance with maintenance window settings is not allowed.\n\n * 400 VnetPrepareNIPFailed - User tried to prepare subnet that has a conflict with NetworkIntentPolicy.\n\n * 400 InvalidUsername - Supplied user name contains invalid characters.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InstancePoolNotEnoughCapacity - An instance pool does not have enough capacity\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 ManagedInstanceSloUpdateFailed - SLO '{0}' operation cannot succeed as the memory usage of '{1}' exceeds the quota.\n\n * 400 ManagedInstanceLocalStorageUpdateSloDisabled - Update SLO for managed instances with local storage is not supported yet.\n\n * 400 InvalidLoginName - The provided login name is invalid.\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 PasswordTooShort - The provided password is too short\n\n * 400 PasswordTooLong - The provided password is too long.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 GatewayInvalidEdition - '{0}' is not a valid database edition in this version of SQL Server.\n\n * 400 InvalidSubnetResourceId - The provided subnet resource ID for the managed instance create or update is invalid.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 VnetInWrongRegion - Virtual network is in wrong region.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 VnetAddressRangeError - Virtual network address range is invalid.\n\n * 400 VnetConfigIsNotAllowed - Virtual network configuration is not allowed.\n\n * 400 InvalidCollation - Invalid collation.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 ManagedInstanceClassicVnetNotSupported - Managed Instance cannot be joined to a classic virtual network.\n\n * 400 AlterDbDeactivatedNotSupported - Database Operation failed for Server '{0}', Database '{1}' due to unexpected delay. Please try again.\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 VnetConfigHasNsg - User tried to inject Managed Server subnet with Network Security Groups.\n\n * 400 VnetConfigHasNoUdr - User tried to inject Managed Server subnet without default User Defined Route Table.\n\n * 400 VnetConfigHasInvalidUdr - User tried to inject Managed Server subnet with invalid User Defined Route Table.\n\n * 400 VnetConfigHasInvalidDns - User tried to inject Managed Server subnet with invalid custom DNS.\n\n * 400 VnetConfigHasServiceEndpoints - User tried to inject Managed Server subnet with service endpoints.\n\n * 400 VnetSubnetIsInUse - User tried to inject Managed Server subnet that is not empty.\n\n * 400 VnetSubnetIsLocked - User tried to inject Managed Server subnet that is in locked scope.\n\n * 400 VnetSubnetIsGateway - User tried to inject Managed Server subnet that is Gateway subnet.\n\n * 400 VnetSubnetIsUnknown - User tried to inject Managed Server subnet that does not exist.\n\n * 400 VnetSubnetConflictWithIntendedPolicy - User tried to inject Managed Server subnet that has a conflict with IntendedPolicy.\n\n * 400 NameAlreadyExists - The provided name already exists.\n\n * 400 ManagedInstanceInvalidEditionForSku - The specified edition {0} is not consistent with the specified SKU {1}.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 ManagedInstanceInvalidLicenseType - The specified license type {0} is not valid.\n\n * 400 ManagedInstanceUpdateSloInProgress - \"The operation could not be completed because a service tier change is in progress for managed instance '{0}.' Please wait for the operation in progress to complete and try again.\"\n\n * 400 VnetResourceNotFound - Resource not found: '{0}'.\n\n * 400 InvalidTimezone - Invalid timezone.\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 InstanceCollationUpdateNotSupported - User cannot change instance collation on Managed Instance.\n\n * 400 CreateManagedInstanceWithNonDefaultCollationNotSupported - User can create a Managed Instance only with collation 'SQL_Latin1_General_CP1_CI_AS'.\n\n * 400 ManagedInstanceOperationInProgress - The operation could not be completed because {0} operation is in progress. Please wait for the operation in progress to complete and try again.\n\n * 400 ManagedInstanceExceedMaxAzureStorage - The operation could not be completed because total allocated storage size for General Purpose instance would exceed {0}. Please reduce the number of database files and retry operation.\n\n * 400 ManagedInstanceHasGeoReplica - The operation could not be completed because instance has configured geo replicated secondary instance.\n\n * 400 InvalidManagedServerDnsZonePartner - The resource URI of the geo-primary managed instance specified in the create request is invalid. Please ensure that the property is of the format /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/managedInstances/{managedInstanceName}\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 ManagementServiceFeatureDisabled - User attempted to use a feature which is disabled.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group 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 InvalidMinimalTlsVersion - Invalid minimal TLS version.\n\n * 400 InvalidMaintenanceWindowSettings - Invalid maintenance window settings.\n\n * 400 InvalidMaintenanceWindowProperty - Invalid maintenance window property was specified.\n\n * 400 InvalidMaintenanceWindowPropertyNull - Invalid maintenance window with required properties null.\n\n * 400 InvalidMaintenanceWindowTypeWithPropertySpecified - Maintenance window type must not have certain properties specified.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ManagedInstanceNotInSubscriptionResourceGroup - Specified managed instance does not exist in the specified resource group and subscription.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 405 InvalidVcoreValue - vCore value {0} is not valid. Please specify a valid vCore value.\n\n * 405 InvalidHardwareGenerationValue - HardwareGeneration {0} is not valid. Please specify a valid HardwareGeneration value.\n\n * 405 InvalidStorageSizeValue - \"Invalid storage size: {0} GB. Storage size must be specified between {1} and {2} gigabytes, in increments of {3} GB.\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 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ServerAlreadyExists - Duplicate server name.\n\n * 409 ServerOverridePreconditionFailed - Failed to apply server override on category '{0}', because physical db or instance '{1}' in server '{2}' is currently not in 'Ready' or 'Deactivated' state.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ManagedInstanceIsBusy - The server '{0}' is currently busy. Please wait a few minutes before trying again.\n\n * 409 ServerQuotaExceeded - Server cannot be added to a subscription because it will exceed quota.\n\n * 409 ConflictingManagedInstanceOperation - An operation is currently in progress for the managed instance.\n\n * 409 MiDropFailedOnAuthLocks - User tried to drop last Managed Instance in subnet that has Lock applied on resource(s).\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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\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 * 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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 500 GatewayInternalServerError - The server encountered an unexpected exception.\n\n * 503 TooManyRequests - 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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." }, "202": { "description": "Accepted" @@ -230,7 +230,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 HkCannotSwitchToInactive - The database cannot proceed with pricing-tier update as it has memory-optimized objects. Please drop such objects and try again.\n\n * 400 ManagedInstanceInvalidStorageSizeLessThenCurrentSizeUsed - Invalid storage size: Storage size limit ({0} GB) is less that current storage used ({1} GB). Please specify higher storage size limit.\n\n * 400 InstanceTimezoneUpdateNotSupported - Instance timezone update not supported.\n\n * 400 CreateManagedInstanceWithNonDefaultTimezoneNotSupported - Create Managed Instance with non-default timezone not supported.\n\n * 400 ManagedInstanceIpAddressRangeLimit - Cannot create a Managed Instance as there are not enough available ip addresses in the selected subnet\n\n * 400 VnetDelegationNotAllowed - User tried to inject Managed Server to subnet which is delegated.\n\n * 400 SubnetHasResourcesOfDifferentType - User tried to create MI in subnet that has resources of different type.\n\n * 400 InvalidUsername - Supplied user name contains invalid characters.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InstancePoolNotEnoughCapacity - An instance pool does not have enough vCore capacity\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 ManagedInstanceSloUpdateFailed - SLO '{0}' operation cannot succeed as the memory usage of '{1}' exceeds the quota.\n\n * 400 ManagedInstanceLocalStorageUpdateSloDisabled - Update SLO for managed instances with local storage is not supported yet.\n\n * 400 InvalidLoginName - The provided login name is invalid.\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 PasswordTooShort - The provided password is too short\n\n * 400 PasswordTooLong - The provided password is too long.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 GatewayInvalidEdition - '{0}' is not a valid database edition in this version of SQL Server.\n\n * 400 InvalidSubnetResourceId - The provided subnet resource ID for the managed instance create or update is invalid.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 VnetInWrongRegion - Virtual network is in wrong region.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 VnetAddressRangeError - Virtual network address range is invalid.\n\n * 400 VnetConfigIsNotAllowed - Virtual network configuration is not allowed.\n\n * 400 InvalidCollation - Invalid collation.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 ManagedInstanceClassicVnetNotSupported - Managed Instance cannot be joined to a classic virtual network.\n\n * 400 AlterDbDeactivatedNotSupported - Database Operation failed for Server '{0}', Database '{1}' due to unexpected delay. Please try again.\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 VnetConfigHasNsg - User tried to inject Managed Server subnet with Network Security Groups.\n\n * 400 VnetConfigHasNoUdr - User tried to inject Managed Server subnet without default User Defined Route Table.\n\n * 400 VnetConfigHasInvalidUdr - User tried to inject Managed Server subnet with invalid User Defined Route Table.\n\n * 400 VnetConfigHasInvalidDns - User tried to inject Managed Server subnet with invalid custom DNS.\n\n * 400 VnetConfigHasServiceEndpoints - User tried to inject Managed Server subnet with service endpoints.\n\n * 400 VnetSubnetIsInUse - User tried to inject Managed Server subnet that is not empty.\n\n * 400 VnetSubnetIsLocked - User tried to inject Managed Server subnet that is in locked scope.\n\n * 400 VnetSubnetIsGateway - User tried to inject Managed Server subnet that is Gateway subnet.\n\n * 400 VnetSubnetIsUnknown - User tried to inject Managed Server subnet that does not exist.\n\n * 400 VnetSubnetConflictWithIntendedPolicy - User tried to inject Managed Server subnet that has a conflict with IntendedPolicy.\n\n * 400 NameAlreadyExists - The provided name already exists.\n\n * 400 ManagedInstanceInvalidEditionForSku - The specified edition {0} is not consistent with the specified SKU {1}.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 ManagedInstanceInvalidLicenseType - The specified license type {0} is not valid.\n\n * 400 ManagedInstanceUpdateSloInProgress - \"The operation could not be completed because a service tier change is in progress for managed instance '{0}.' Please wait for the operation in progress to complete and try again.\"\n\n * 400 VnetResourceNotFound - Resource not found: '{0}'.\n\n * 400 InvalidTimezone - Invalid timezone.\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 InstanceCollationUpdateNotSupported - User cannot change instance collation on Managed Instance.\n\n * 400 CreateManagedInstanceWithNonDefaultCollationNotSupported - User can create a Managed Instance only with collation 'SQL_Latin1_General_CP1_CI_AS'.\n\n * 400 ManagedInstanceOperationInProgress - The operation could not be completed because {0} operation is in progress. Please wait for the operation in progress to complete and try again.\n\n * 400 ManagedInstanceExceedMaxAzureStorage - The operation could not be completed because total allocated storage size for General Purpose instance would exceed {0}. Please reduce the number of database files and retry operation.\n\n * 400 ManagedInstanceHasGeoReplica - The operation could not be completed because instance has configured geo replicated secondary instance.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group 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 * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ManagedInstanceNotInSubscriptionResourceGroup - Specified managed instance does not exist in the specified resource group and subscription.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 405 InvalidVcoreValue - vCore value {0} is not valid. Please specify a valid vCore value.\n\n * 405 InvalidHardwareGenerationValue - HardwareGeneration {0} is not valid. Please specify a valid HardwareGeneration value.\n\n * 405 InvalidStorageSizeValue - \"Invalid storage size: {0} GB. Storage size must be specified between {1} and {2} gigabytes, in increments of {3} GB.\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 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ServerAlreadyExists - Duplicate server name.\n\n * 409 ServerOverridePreconditionFailed - Failed to apply server override on category '{0}', because physical db or instance '{1}' in server '{2}' is currently not in 'Ready' or 'Deactivated' state.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ManagedInstanceIsBusy - The server '{0}' is currently busy. Please wait a few minutes before trying again.\n\n * 409 ServerQuotaExceeded - Server cannot be added to a subscription because it will exceed quota.\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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\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 GatewayInternalServerError - The server encountered an unexpected exception.\n\n * 503 TooManyRequests - 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.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + "description": "*** Error Responses: ***\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 HkCannotSwitchToInactive - The database cannot proceed with pricing-tier update as it has memory-optimized objects. Please drop such objects and try again.\n\n * 400 ManagedInstanceInvalidStorageSizeLessThenCurrentSizeUsed - Invalid storage size: Storage size limit ({0} GB) is less that current storage used ({1} GB). Please specify higher storage size limit.\n\n * 400 InstanceTimezoneUpdateNotSupported - Instance timezone update not supported.\n\n * 400 CreateManagedInstanceWithNonDefaultTimezoneNotSupported - Create Managed Instance with non-default timezone not supported.\n\n * 400 ManagedInstanceIpAddressRangeLimit - Cannot create a Managed Instance as there are not enough available ip addresses in the selected subnet\n\n * 400 VnetDelegationNotAllowed - User tried to inject Managed Server to subnet which is delegated.\n\n * 400 SubnetHasResourcesOfDifferentType - User tried to create MI in subnet that has resources of different type.\n\n * 400 UpdateManagedServerWithMaintenanceWindowNotAllowed - Update of Managed Instance with maintenance window settings is not allowed.\n\n * 400 VnetPrepareNIPFailed - User tried to prepare subnet that has a conflict with NetworkIntentPolicy.\n\n * 400 InvalidUsername - Supplied user name contains invalid characters.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InstancePoolNotEnoughCapacity - An instance pool does not have enough capacity\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 ManagedInstanceSloUpdateFailed - SLO '{0}' operation cannot succeed as the memory usage of '{1}' exceeds the quota.\n\n * 400 ManagedInstanceLocalStorageUpdateSloDisabled - Update SLO for managed instances with local storage is not supported yet.\n\n * 400 InvalidLoginName - The provided login name is invalid.\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 PasswordTooShort - The provided password is too short\n\n * 400 PasswordTooLong - The provided password is too long.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 GatewayInvalidEdition - '{0}' is not a valid database edition in this version of SQL Server.\n\n * 400 InvalidSubnetResourceId - The provided subnet resource ID for the managed instance create or update is invalid.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 VnetInWrongRegion - Virtual network is in wrong region.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 VnetAddressRangeError - Virtual network address range is invalid.\n\n * 400 VnetConfigIsNotAllowed - Virtual network configuration is not allowed.\n\n * 400 InvalidCollation - Invalid collation.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 ManagedInstanceClassicVnetNotSupported - Managed Instance cannot be joined to a classic virtual network.\n\n * 400 AlterDbDeactivatedNotSupported - Database Operation failed for Server '{0}', Database '{1}' due to unexpected delay. Please try again.\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 VnetConfigHasNsg - User tried to inject Managed Server subnet with Network Security Groups.\n\n * 400 VnetConfigHasNoUdr - User tried to inject Managed Server subnet without default User Defined Route Table.\n\n * 400 VnetConfigHasInvalidUdr - User tried to inject Managed Server subnet with invalid User Defined Route Table.\n\n * 400 VnetConfigHasInvalidDns - User tried to inject Managed Server subnet with invalid custom DNS.\n\n * 400 VnetConfigHasServiceEndpoints - User tried to inject Managed Server subnet with service endpoints.\n\n * 400 VnetSubnetIsInUse - User tried to inject Managed Server subnet that is not empty.\n\n * 400 VnetSubnetIsLocked - User tried to inject Managed Server subnet that is in locked scope.\n\n * 400 VnetSubnetIsGateway - User tried to inject Managed Server subnet that is Gateway subnet.\n\n * 400 VnetSubnetIsUnknown - User tried to inject Managed Server subnet that does not exist.\n\n * 400 VnetSubnetConflictWithIntendedPolicy - User tried to inject Managed Server subnet that has a conflict with IntendedPolicy.\n\n * 400 NameAlreadyExists - The provided name already exists.\n\n * 400 ManagedInstanceInvalidEditionForSku - The specified edition {0} is not consistent with the specified SKU {1}.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 ManagedInstanceInvalidLicenseType - The specified license type {0} is not valid.\n\n * 400 ManagedInstanceUpdateSloInProgress - \"The operation could not be completed because a service tier change is in progress for managed instance '{0}.' Please wait for the operation in progress to complete and try again.\"\n\n * 400 VnetResourceNotFound - Resource not found: '{0}'.\n\n * 400 InvalidTimezone - Invalid timezone.\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 InstanceCollationUpdateNotSupported - User cannot change instance collation on Managed Instance.\n\n * 400 CreateManagedInstanceWithNonDefaultCollationNotSupported - User can create a Managed Instance only with collation 'SQL_Latin1_General_CP1_CI_AS'.\n\n * 400 ManagedInstanceOperationInProgress - The operation could not be completed because {0} operation is in progress. Please wait for the operation in progress to complete and try again.\n\n * 400 ManagedInstanceExceedMaxAzureStorage - The operation could not be completed because total allocated storage size for General Purpose instance would exceed {0}. Please reduce the number of database files and retry operation.\n\n * 400 ManagedInstanceHasGeoReplica - The operation could not be completed because instance has configured geo replicated secondary instance.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 ManagementServiceFeatureDisabled - User attempted to use a feature which is disabled.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group 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 InvalidMinimalTlsVersion - Invalid minimal TLS version.\n\n * 400 InvalidMaintenanceWindowSettings - Invalid maintenance window settings.\n\n * 400 InvalidMaintenanceWindowProperty - Invalid maintenance window property was specified.\n\n * 400 InvalidMaintenanceWindowPropertyNull - Invalid maintenance window with required properties null.\n\n * 400 InvalidMaintenanceWindowTypeWithPropertySpecified - Maintenance window type must not have certain properties specified.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ManagedInstanceNotInSubscriptionResourceGroup - Specified managed instance does not exist in the specified resource group and subscription.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 405 InvalidVcoreValue - vCore value {0} is not valid. Please specify a valid vCore value.\n\n * 405 InvalidHardwareGenerationValue - HardwareGeneration {0} is not valid. Please specify a valid HardwareGeneration value.\n\n * 405 InvalidStorageSizeValue - \"Invalid storage size: {0} GB. Storage size must be specified between {1} and {2} gigabytes, in increments of {3} GB.\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 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ServerAlreadyExists - Duplicate server name.\n\n * 409 ServerOverridePreconditionFailed - Failed to apply server override on category '{0}', because physical db or instance '{1}' in server '{2}' is currently not in 'Ready' or 'Deactivated' state.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ManagedInstanceIsBusy - The server '{0}' is currently busy. Please wait a few minutes before trying again.\n\n * 409 ServerQuotaExceeded - Server cannot be added to a subscription because it will exceed quota.\n\n * 409 ConflictingManagedInstanceOperation - An operation is currently in progress for the managed instance.\n\n * 409 MiDropFailedOnAuthLocks - User tried to drop last Managed Instance in subnet that has Lock applied on resource(s).\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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\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 * 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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 500 GatewayInternalServerError - The server encountered an unexpected exception.\n\n * 503 TooManyRequests - 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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." }, "202": { "description": "Accepted" @@ -438,6 +438,10 @@ "instancePoolId": { "description": "The Id of the instance pool this managed server belongs to.", "type": "string" + }, + "minimalTlsVersion": { + "description": "Minimal TLS version. Allowed values: 'None', '1.0', '1.1', '1.2'", + "type": "string" } } }, diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/DatabaseBlobAuditingCreateMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/DatabaseBlobAuditingCreateMax.json index 6c342a0368ba..f19265d4c2b8 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/DatabaseBlobAuditingCreateMax.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/DatabaseBlobAuditingCreateMax.json @@ -64,7 +64,7 @@ "DATABASE_LOGOUT_GROUP", "DATABASE_ROLE_MEMBER_CHANGE_GROUP", "UPDATE on database::TestDatabaseName by public" - ], + ], "isAzureMonitorTargetEnabled": true } } diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/ManagedDatabaseCreateRecovery.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/ManagedDatabaseCreateRecovery.json index 129a700d2087..49764695d1bb 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/ManagedDatabaseCreateRecovery.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/ManagedDatabaseCreateRecovery.json @@ -9,7 +9,7 @@ "location": "southeastasia", "properties": { "createMode": "Recovery", - "RecoverableDatabaseId": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/Default-SQL-WestEurope/providers/Microsoft.Sql/managedInstances/testsvr/recoverableDatabases/testdb" + "recoverableDatabaseId": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/Default-SQL-WestEurope/providers/Microsoft.Sql/managedInstances/testsvr/recoverableDatabases/testdb" } } }, diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/ManagedDatabaseCreateRestoreLtrBackup.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/ManagedDatabaseCreateRestoreLtrBackup.json new file mode 100644 index 000000000000..095e2a10b5cb --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/examples/ManagedDatabaseCreateRestoreLtrBackup.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "testinstance", + "databaseName": "testdatabase", + "api-version": "2017-03-01-preview", + "parameters": { + "location": "southeastasia", + "properties": { + "createMode": "RestoreLongTermRetentionBackup", + "longTermRetentionBackupResourceId": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/southeastasia/longTermRetentionManagedInstances/testInstance/databases/testDatabase/longTermRetentionManagedInstanceBackups/00000000-1111-2222-3333-444444444444;131637960820000000" + } + } + }, + "responses": { + "200": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/testinstance/recoverableDatabases/testdatabase", + "name": "testdatabase", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "status": "Online", + "creationDate": "2018-11-07T04:41:33.937Z" + }, + "type": "Microsoft.Sql/managedInstances/databases" + } + }, + "201": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/testinstance/recoverableDatabases/testdatabase", + "name": "testdatabase", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "status": "Online", + "creationDate": "2018-11-07T04:41:33.937Z" + }, + "type": "Microsoft.Sql/managedInstances/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/managedDatabases.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/managedDatabases.json index 537063615c5c..05ace997f90e 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/managedDatabases.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2017-03-01-preview/managedDatabases.json @@ -103,7 +103,7 @@ } }, "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." + "description": "*** Error Responses: ***\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" } }, "x-ms-pageable": { @@ -148,7 +148,7 @@ } }, "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." + "description": "*** Error Responses: ***\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found." } }, "x-ms-examples": { @@ -197,7 +197,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 PitrPointInTimeInvalid - The point in time {0} is not valid. Valid point in time range from {1} days early to now and not before source server creation time.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 InvalidBackupRetentionPeriod - The retention days of {0} is not a valid configuration. Valid backup retention in days must be between {1} and {2}\n\n * 400 ManagedDatabaseNameInUse - Database '{0}' already exists. Choose a different database name.\n\n * 400 NoMoreSpaceInManagedInstance - The managed instance has reached its storage limit. The storage usage for the managed instance cannot exceed (%d) MBs.\n\n * 400 ManagedInstanceUpdateSloInProgress - \"The operation could not be completed because a service tier change is in progress for managed instance '{0}.' Please wait for the operation in progress to complete and try again.\"\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\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 PasswordNotComplex - The provided password is not complex enough.\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 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 TokenTooLong - The provided token is too long.\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 InvalidCollation - Collation is not recognized by the server.\n\n * 400 ServerNotFound - The requested server was not found.\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 DatabaseNumberLimitReached - Maximum number of databases for SQL Database Managed Instance reached.\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 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped 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 MissingSourceDatabaseId - Missing source database identifier.\n\n * 400 MissingRestorePointInTime - Missing restore point in time\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 * 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.\n\n * 404 CannotFindServerCertificateWithThumbprint - Cannot find server certificate with thumbprint '{0}'. Please use PowerShell Cmdlet 'Add-AzureRmSqlManagedInstanceTransparentDataEncryptionCertificate' to create the certificate.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 RestoreSourceDatabaseNotFound - Could not find database '{0}' at time '{1}' that can be restored.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingDatabaseOperation - There is already some operation on the database and the current operation should wait till it is done.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ManagementServiceDatabaseBusy - Database '{0}' is busy with another operation. Please try your operation later.\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 * 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 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows\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." + "description": "*** Error Responses: ***\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 ManagedInstanceUpdateSloInProgress - \"The operation could not be completed because a service tier change is in progress for managed instance '{0}.' Please wait for the operation in progress to complete and try again.\"\n\n * 400 DatabaseNumberLimitReached - Maximum number of databases for SQL Database Managed Instance reached.\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 InvalidCollation - Collation is not recognized by the server.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 PitrPointInTimeInvalid - The point in time {0} is not valid. Valid point in time range from {1} days early to now and not before source server creation time.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 ManagedDatabaseNameInUse - Database '{0}' already exists. Choose a different database name.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 NoMoreSpaceInManagedInstance - The managed instance has reached its storage limit. The storage usage for the managed instance cannot exceed (%d) MBs.\n\n * 400 InvalidBackupRetentionPeriod - The retention days of {0} is not a valid configuration. Valid backup retention in days must be between {1} and {2}\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 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 ServerNotFound - The requested server was not found.\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 SubscriptionNotFound - The requested subscription was not found.\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 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 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped 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 MissingSourceDatabaseId - Missing source database identifier.\n\n * 400 MissingRestorePointInTime - Missing restore point in time\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidLongTermRetentionManagedInstanceBackupId - Invalid long term retention backup identifier for Managed Instances.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 RestoreSourceDatabaseNotFound - Could not find database '{0}' at time '{1}' that can be restored.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 CannotFindServerCertificateWithThumbprint - Cannot find server certificate with thumbprint '{0}'. Please use PowerShell Cmdlet 'Add-AzureRmSqlManagedInstanceTransparentDataEncryptionCertificate' to create the certificate.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ManagementServiceDatabaseBusy - Database '{0}' is busy with another operation. Please try your operation later.\n\n * 409 ConflictingDatabaseOperation - There is already some operation on the database and the current operation should wait till it is done.\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 * 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 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." }, "202": { "description": "Accepted" @@ -222,6 +222,12 @@ }, "Creates a new managed database by restoring from an external backup": { "$ref": "./examples/ManagedDatabaseCreateRestoreExternalBackup.json" + }, + "Creates a new managed database from restoring a geo-replicated backup": { + "$ref": "./examples/ManagedDatabaseCreateRecovery.json" + }, + "Creates a new managed database from restoring a long term retention backup": { + "$ref": "./examples/ManagedDatabaseCreateRestoreLtrBackup.json" } } }, @@ -253,7 +259,7 @@ "description": "Successfully deleted the managed 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 * 400 GeoReplicationDatabaseNotPrimary - The operation cannot be performed since the database '{0}' is a replication target.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 ManagedInstanceUpdateSloInProgress - \"The operation could not be completed because a service tier change is in progress for managed instance '{0}.' Please wait for the operation in progress to complete and try again.\"\n\n * 400 DropDisallowedDuringFailover - Can not drop database because a failover operation is in progress on the failover group.\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 * 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 * 503 TooManyRequests - 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." + "description": "*** Error Responses: ***\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 400 GeoReplicationDatabaseNotPrimary - The operation cannot be performed since the database '{0}' is a replication target.\n\n * 400 GeoReplicationDatabaseNotSecondary - The operation expects the database to be a replication target.\n\n * 400 DropDisallowedDuringFailover - Can not drop database because a failover operation is in progress on the failover group.\n\n * 400 ManagedInstanceUpdateSloInProgress - \"The operation could not be completed because a service tier change is in progress for managed instance '{0}.' Please wait for the operation in progress to complete and try again.\"\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 * 429 SubscriptionTooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 429 SubscriptionTooManyCreateUpdateRequests - 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 * 503 TooManyRequests - 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." }, "202": { "description": "Deleting the managed database is in progress." @@ -309,10 +315,10 @@ } }, "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." + "description": "*** Error Responses: ***\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 ManagedInstanceUpdateSloInProgress - \"The operation could not be completed because a service tier change is in progress for managed instance '{0}.' Please wait for the operation in progress to complete and try again.\"\n\n * 400 DatabaseNumberLimitReached - Maximum number of databases for SQL Database Managed Instance reached.\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 InvalidCollation - Collation is not recognized by the server.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 PitrPointInTimeInvalid - The point in time {0} is not valid. Valid point in time range from {1} days early to now and not before source server creation time.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 ManagedDatabaseNameInUse - Database '{0}' already exists. Choose a different database name.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 NoMoreSpaceInManagedInstance - The managed instance has reached its storage limit. The storage usage for the managed instance cannot exceed (%d) MBs.\n\n * 400 InvalidBackupRetentionPeriod - The retention days of {0} is not a valid configuration. Valid backup retention in days must be between {1} and {2}\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 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 ServerNotFound - The requested server was not found.\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 SubscriptionNotFound - The requested subscription was not found.\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 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 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped 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 MissingSourceDatabaseId - Missing source database identifier.\n\n * 400 MissingRestorePointInTime - Missing restore point in time\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 RestoreSourceDatabaseNotFound - Could not find database '{0}' at time '{1}' that can be restored.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 CannotFindServerCertificateWithThumbprint - Cannot find server certificate with thumbprint '{0}'. Please use PowerShell Cmdlet 'Add-AzureRmSqlManagedInstanceTransparentDataEncryptionCertificate' to create the certificate.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ManagementServiceDatabaseBusy - Database '{0}' is busy with another operation. Please try your operation later.\n\n * 409 ConflictingDatabaseOperation - There is already some operation on the database and the current operation should wait till it is done.\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 * 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 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." }, "202": { - "description": "Deleting the managed database is in progress." + "description": "Updating the managed database is in progress." } }, "x-ms-long-running-operation": true, @@ -380,6 +386,7 @@ "Shutdown", "Creating", "Inaccessible", + "Restoring", "Updating" ], "type": "string", @@ -436,7 +443,8 @@ "Default", "RestoreExternalBackup", "PointInTimeRestore", - "Recovery" + "Recovery", + "RestoreLongTermRetentionBackup" ], "type": "string", "x-ms-enum": { @@ -486,6 +494,13 @@ "x-ms-mutability": [ "create" ] + }, + "longTermRetentionBackupResourceId": { + "description": "The name of the Long Term Retention backup to be used for restore of this managed database.", + "type": "string", + "x-ms-mutability": [ + "create" + ] } } }, diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/LongTermRetentionManagedInstanceBackups.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/LongTermRetentionManagedInstanceBackups.json new file mode 100644 index 000000000000..dd93bd17879c --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/LongTermRetentionManagedInstanceBackups.json @@ -0,0 +1,920 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-06-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}/providers/Microsoft.Sql/locations/{locationName}/longTermRetentionManagedInstances/{managedInstanceName}/longTermRetentionDatabases/{databaseName}/longTermRetentionManagedInstanceBackups/{backupName}": { + "get": { + "tags": [ + "LongTermRetentionManagedInstanceBackups" + ], + "description": "Gets a long term retention backup for a managed database.", + "operationId": "LongTermRetentionManagedInstanceBackups_Get", + "parameters": [ + { + "name": "locationName", + "in": "path", + "description": "The location of the database.", + "required": true, + "type": "string" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the managed database.", + "required": true, + "type": "string" + }, + { + "name": "backupName", + "in": "path", + "description": "The backup name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the backup.", + "schema": { + "$ref": "#/definitions/ManagedInstanceLongTermRetentionBackup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidLongTermRetentionManagedInstanceBackupId - Invalid long term retention backup identifier for Managed Instances.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Get the long term retention backup of a managed database.": { + "$ref": "./examples/ManagedInstanceLongTermRetentionBackupGet.json" + } + } + }, + "delete": { + "tags": [ + "LongTermRetentionManagedInstanceBackups" + ], + "description": "Deletes a long term retention backup.", + "operationId": "LongTermRetentionManagedInstanceBackups_Delete", + "parameters": [ + { + "name": "locationName", + "in": "path", + "description": "The location of the database.", + "required": true, + "type": "string" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the managed database.", + "required": true, + "type": "string" + }, + { + "name": "backupName", + "in": "path", + "description": "The backup name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the backup." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidLongTermRetentionManagedInstanceBackupId - Invalid long term retention backup identifier for Managed Instances.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete the long term retention backup.": { + "$ref": "./examples/ManagedInstanceLongTermRetentionBackupDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Sql/locations/{locationName}/longTermRetentionManagedInstances/{managedInstanceName}/longTermRetentionDatabases/{databaseName}/longTermRetentionManagedInstanceBackups": { + "get": { + "tags": [ + "LongTermRetentionManagedInstanceBackups" + ], + "description": "Lists all long term retention backups for a managed database.", + "operationId": "LongTermRetentionManagedInstanceBackups_ListByDatabase", + "parameters": [ + { + "name": "locationName", + "in": "path", + "description": "The location of the database.", + "required": true, + "type": "string" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the managed database.", + "required": true, + "type": "string" + }, + { + "name": "onlyLatestPerDatabase", + "in": "query", + "description": "Whether or not to only get the latest backup for each database.", + "required": false, + "type": "boolean" + }, + { + "name": "databaseState", + "in": "query", + "description": "Whether to query against just live databases, just deleted databases, or all databases.", + "required": false, + "type": "string", + "enum": [ + "All", + "Live", + "Deleted" + ], + "x-ms-enum": { + "name": "databaseState", + "modelAsString": true + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of backups.", + "schema": { + "$ref": "#/definitions/ManagedInstanceLongTermRetentionBackupListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get all long term retention backups under the database.": { + "$ref": "./examples/ManagedInstanceLongTermRetentionBackupListByDatabase.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Sql/locations/{locationName}/longTermRetentionManagedInstances/{managedInstanceName}/longTermRetentionManagedInstanceBackups": { + "get": { + "tags": [ + "LongTermRetentionManagedInstanceBackups" + ], + "description": "Lists the long term retention backups for a given managed instance.", + "operationId": "LongTermRetentionManagedInstanceBackups_ListByInstance", + "parameters": [ + { + "name": "locationName", + "in": "path", + "description": "The location of the database", + "required": true, + "type": "string" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "name": "onlyLatestPerDatabase", + "in": "query", + "description": "Whether or not to only get the latest backup for each database.", + "required": false, + "type": "boolean" + }, + { + "name": "databaseState", + "in": "query", + "description": "Whether to query against just live databases, just deleted databases, or all databases.", + "required": false, + "type": "string", + "enum": [ + "All", + "Live", + "Deleted" + ], + "x-ms-enum": { + "name": "databaseState", + "modelAsString": true + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of backups.", + "schema": { + "$ref": "#/definitions/ManagedInstanceLongTermRetentionBackupListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get all long term retention backups under the managed instance.": { + "$ref": "./examples/ManagedInstanceLongTermRetentionBackupListByInstance.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Sql/locations/{locationName}/longTermRetentionManagedInstanceBackups": { + "get": { + "tags": [ + "LongTermRetentionManagedInstanceBackups" + ], + "description": "Lists the long term retention backups for managed databases in a given location.", + "operationId": "LongTermRetentionManagedInstanceBackups_ListByLocation", + "parameters": [ + { + "name": "locationName", + "in": "path", + "description": "The location of the database.", + "required": true, + "type": "string" + }, + { + "name": "onlyLatestPerDatabase", + "in": "query", + "description": "Whether or not to only get the latest backup for each database.", + "required": false, + "type": "boolean" + }, + { + "name": "databaseState", + "in": "query", + "description": "Whether to query against just live databases, just deleted databases, or all databases.", + "required": false, + "type": "string", + "enum": [ + "All", + "Live", + "Deleted" + ], + "x-ms-enum": { + "name": "databaseState", + "modelAsString": true + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of backups.", + "schema": { + "$ref": "#/definitions/ManagedInstanceLongTermRetentionBackupListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get all long term retention backups under the location.": { + "$ref": "./examples/ManagedInstanceLongTermRetentionBackupListByLocation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/locations/{locationName}/longTermRetentionManagedInstances/{managedInstanceName}/longTermRetentionDatabases/{databaseName}/longTermRetentionManagedInstanceBackups/{backupName}": { + "get": { + "tags": [ + "LongTermRetentionManagedInstanceBackups" + ], + "description": "Gets a long term retention backup for a managed database.", + "operationId": "LongTermRetentionManagedInstanceBackups_GetByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "name": "locationName", + "in": "path", + "description": "The location of the database.", + "required": true, + "type": "string" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the managed database.", + "required": true, + "type": "string" + }, + { + "name": "backupName", + "in": "path", + "description": "The backup name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the backup.", + "schema": { + "$ref": "#/definitions/ManagedInstanceLongTermRetentionBackup" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidLongTermRetentionManagedInstanceBackupId - Invalid long term retention backup identifier for Managed Instances.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Get the long term retention backup.": { + "$ref": "./examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupGet.json" + } + } + }, + "delete": { + "tags": [ + "LongTermRetentionManagedInstanceBackups" + ], + "description": "Deletes a long term retention backup.", + "operationId": "LongTermRetentionManagedInstanceBackups_DeleteByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "name": "locationName", + "in": "path", + "description": "The location of the database", + "required": true, + "type": "string" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the managed database.", + "required": true, + "type": "string" + }, + { + "name": "backupName", + "in": "path", + "description": "The backup name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the backup." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidLongTermRetentionManagedInstanceBackupId - Invalid long term retention backup identifier for Managed Instances.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\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 SubscriptionDoesNotHaveServer - The requested server was not found" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete the long term retention backup.": { + "$ref": "./examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/locations/{locationName}/longTermRetentionManagedInstances/{managedInstanceName}/longTermRetentionDatabases/{databaseName}/longTermRetentionManagedInstanceBackups": { + "get": { + "tags": [ + "LongTermRetentionManagedInstanceBackups" + ], + "description": "Lists all long term retention backups for a managed database.", + "operationId": "LongTermRetentionManagedInstanceBackups_ListByResourceGroupDatabase", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "name": "locationName", + "in": "path", + "description": "The location of the database", + "required": true, + "type": "string" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "name": "databaseName", + "in": "path", + "description": "The name of the managed database.", + "required": true, + "type": "string" + }, + { + "name": "onlyLatestPerDatabase", + "in": "query", + "description": "Whether or not to only get the latest backup for each database.", + "required": false, + "type": "boolean" + }, + { + "name": "databaseState", + "in": "query", + "description": "Whether to query against just live databases, just deleted databases, or all databases.", + "required": false, + "type": "string", + "enum": [ + "All", + "Live", + "Deleted" + ], + "x-ms-enum": { + "name": "databaseState", + "modelAsString": true + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of backups.", + "schema": { + "$ref": "#/definitions/ManagedInstanceLongTermRetentionBackupListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get all long term retention backups under the database.": { + "$ref": "./examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupListByDatabase.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/locations/{locationName}/longTermRetentionManagedInstances/{managedInstanceName}/longTermRetentionManagedInstanceBackups": { + "get": { + "tags": [ + "LongTermRetentionManagedInstanceBackups" + ], + "description": "Lists the long term retention backups for a given managed instance.", + "operationId": "LongTermRetentionManagedInstanceBackups_ListByResourceGroupInstance", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "name": "locationName", + "in": "path", + "description": "The location of the database.", + "required": true, + "type": "string" + }, + { + "name": "managedInstanceName", + "in": "path", + "description": "The name of the managed instance.", + "required": true, + "type": "string" + }, + { + "name": "onlyLatestPerDatabase", + "in": "query", + "description": "Whether or not to only get the latest backup for each database.", + "required": false, + "type": "boolean" + }, + { + "name": "databaseState", + "in": "query", + "description": "Whether to query against just live databases, just deleted databases, or all databases.", + "required": false, + "type": "string", + "enum": [ + "All", + "Live", + "Deleted" + ], + "x-ms-enum": { + "name": "databaseState", + "modelAsString": true + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of backups.", + "schema": { + "$ref": "#/definitions/ManagedInstanceLongTermRetentionBackupListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get all long term retention backups under the managed instance.": { + "$ref": "./examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupListByInstance.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/locations/{locationName}/longTermRetentionManagedInstanceBackups": { + "get": { + "tags": [ + "LongTermRetentionManagedInstanceBackups" + ], + "description": "Lists the long term retention backups for managed databases in a given location.", + "operationId": "LongTermRetentionManagedInstanceBackups_ListByResourceGroupLocation", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "name": "locationName", + "in": "path", + "description": "The location of the database.", + "required": true, + "type": "string" + }, + { + "name": "onlyLatestPerDatabase", + "in": "query", + "description": "Whether or not to only get the latest backup for each database.", + "required": false, + "type": "boolean" + }, + { + "name": "databaseState", + "in": "query", + "description": "Whether to query against just live databases, just deleted databases, or all databases.", + "required": false, + "type": "string", + "enum": [ + "All", + "Live", + "Deleted" + ], + "x-ms-enum": { + "name": "databaseState", + "modelAsString": true + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of backups.", + "schema": { + "$ref": "#/definitions/ManagedInstanceLongTermRetentionBackupListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get all long term retention backups under the location.": { + "$ref": "./examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupListByLocation.json" + } + } + } + } + }, + "definitions": { + "ManagedInstanceLongTermRetentionBackupProperties": { + "description": "Properties of a long term retention backup", + "type": "object", + "properties": { + "managedInstanceName": { + "description": "The managed instance that the backup database belongs to.", + "type": "string", + "readOnly": true + }, + "managedInstanceCreateTime": { + "format": "date-time", + "description": "The create time of the instance.", + "type": "string", + "readOnly": true + }, + "databaseName": { + "description": "The name of the database the backup belong to", + "type": "string", + "readOnly": true + }, + "databaseDeletionTime": { + "format": "date-time", + "description": "The delete time of the database", + "type": "string", + "readOnly": true + }, + "backupTime": { + "format": "date-time", + "description": "The time the backup was taken", + "type": "string", + "readOnly": true + }, + "backupExpirationTime": { + "format": "date-time", + "description": "The time the long term retention backup will expire.", + "type": "string", + "readOnly": true + } + } + }, + "Resource": { + "description": "ARM resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Resource name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource type.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "ProxyResource": { + "description": "ARM proxy resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": {} + }, + "ManagedInstanceLongTermRetentionBackup": { + "description": "A long term retention backup for a managed database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ManagedInstanceLongTermRetentionBackupProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ManagedInstanceLongTermRetentionBackupListResult": { + "description": "A list of long term retention backups for managed database(s).", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedInstanceLongTermRetentionBackup" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "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" + } + }, + "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/2018-06-01-preview/ManagedInstanceLongTermRetentionPolicies.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/ManagedInstanceLongTermRetentionPolicies.json new file mode 100644 index 000000000000..c76ba97a4139 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/ManagedInstanceLongTermRetentionPolicies.json @@ -0,0 +1,376 @@ +{ + "swagger": "2.0", + "info": { + "version": "2018-06-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/managedInstances/{managedInstanceName}/databases/{databaseName}/backupLongTermRetentionPolicies/{policyName}": { + "get": { + "tags": [ + "ManagedInstanceLongTermRetentionPolicies" + ], + "description": "Gets a managed database's long term retention policy.", + "operationId": "ManagedInstanceLongTermRetentionPolicies_Get", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "policyName", + "in": "path", + "description": "The policy name. Should always be Default.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "ManagedInstanceLongTermRetentionPolicyName", + "modelAsString": true + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully got LTR policy for managed database.", + "schema": { + "$ref": "#/definitions/ManagedInstanceLongTermRetentionPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 LongTermRetentionPolicyNotSupported - Long Term Retention is not supported on this database.\n\n * 400 LongTermRetentionPolicyInvalid - Long Term Retention policy is invalid.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Get the long term retention policy for the managed database.": { + "$ref": "./examples/ManagedInstanceLongTermRetentionPolicyGet.json" + } + } + }, + "put": { + "tags": [ + "ManagedInstanceLongTermRetentionPolicies" + ], + "description": "Sets a managed database's long term retention policy.", + "operationId": "ManagedInstanceLongTermRetentionPolicies_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "policyName", + "in": "path", + "description": "The policy name. Should always be Default.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "ManagedInstanceLongTermRetentionPolicyName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The long term retention policy info.", + "required": true, + "schema": { + "$ref": "#/definitions/ManagedInstanceLongTermRetentionPolicy" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully set LTR policy for managed database.", + "schema": { + "$ref": "#/definitions/ManagedInstanceLongTermRetentionPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidResourceRequestBody - The resource or resource properties in the request body is empty or invalid.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 LongTermRetentionMissingWeekOfYear - WeekOfYear is required to be set between 1 and 52 in order to set yearly retention.\n\n * 400 LongTermRetentionPolicyNotSupported - Long Term Retention is not supported on this database.\n\n * 400 LongTermRetentionPolicyInvalid - Long Term Retention policy is invalid.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create or update the LTR policy for the managed database.": { + "$ref": "./examples/ManagedInstanceLongTermRetentionPolicyCreateOrUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/backupLongTermRetentionPolicies": { + "get": { + "tags": [ + "ManagedInstanceLongTermRetentionPolicies" + ], + "description": "Gets a database's long term retention policy.", + "operationId": "ManagedInstanceLongTermRetentionPolicies_ListByDatabase", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully got LTR policy for managed database.", + "schema": { + "$ref": "#/definitions/ManagedInstanceLongTermRetentionPolicyListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 LongTermRetentionPolicyNotSupported - Long Term Retention is not supported on this database.\n\n * 400 LongTermRetentionPolicyInvalid - Long Term Retention policy is invalid.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get the long term retention policies for the managed database.": { + "$ref": "./examples/ManagedInstanceLongTermRetentionPolicyListByDatabase.json" + } + } + } + } + }, + "definitions": { + "BaseLongTermRetentionPolicyProperties": { + "description": "Properties of a long term retention policy", + "type": "object", + "properties": { + "weeklyRetention": { + "description": "The weekly retention policy for an LTR backup in an ISO 8601 format.", + "type": "string" + }, + "monthlyRetention": { + "description": "The monthly retention policy for an LTR backup in an ISO 8601 format.", + "type": "string" + }, + "yearlyRetention": { + "description": "The yearly retention policy for an LTR backup in an ISO 8601 format.", + "type": "string" + }, + "weekOfYear": { + "format": "int32", + "description": "The week of year to take the yearly backup in an ISO 8601 format.", + "type": "integer" + } + } + }, + "Resource": { + "description": "ARM resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Resource name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource type.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "ProxyResource": { + "description": "ARM proxy resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": {} + }, + "ManagedInstanceLongTermRetentionPolicy": { + "description": "A long term retention policy.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BaseLongTermRetentionPolicyProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ManagedInstanceLongTermRetentionPolicyListResult": { + "description": "A list of long term retention policies.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedInstanceLongTermRetentionPolicy" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "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" + } + }, + "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/2018-06-01-preview/examples/GetManagedInstanceOperation.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/GetManagedInstanceOperation.json new file mode 100644 index 000000000000..9f390521b5cb --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/GetManagedInstanceOperation.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "managedInstanceName": "sqlcrudtest-4645", + "operationId": "00000000-1111-2222-3333-444444444444", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "managedInstanceName": "sqlcrudtest-4645", + "operation": "UpsertManagedServer", + "operationFriendlyName": "UPDATE MANAGED SERVER", + "percentComplete": 100, + "startTime": "2019-12-06T11:08:44.49Z", + "state": "Cancelled", + "isCancellable": false + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/managedInstances/sqlcrudtest-4645/operations/11111111-1111-1111-1111-111111111111", + "name": "11111111-1111-1111-1111-111111111111", + "type": "Microsoft.Sql/managedInstances/operations" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ListManagedInstanceOperations.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ListManagedInstanceOperations.json index 93f89f4eee86..00d4517c0859 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ListManagedInstanceOperations.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ListManagedInstanceOperations.json @@ -10,52 +10,52 @@ "body": { "value": [ { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/managedInstances/sqlcrudtest-4645/operations/11111111-1111-1111-1111-111111111111", - "name": "11111111-1111-1111-1111-111111111111", - "type": "Microsoft.Sql/managedInstances/operations", "properties": { "managedInstanceName": "sqlcrudtest-4645", "operation": "UpsertManagedServer", - "operationFriendlyName": "MANAGED SERVER UPDATE", - "percentComplete": 0, - "startTime": "2017-06-01T09:10:08.10Z", - "state": "InProgress" - } + "operationFriendlyName": "UPDATE MANAGED SERVER", + "percentComplete": 100, + "startTime": "2019-12-06T11:08:44.49Z", + "state": "Cancelled", + "isCancellable": false + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/managedInstances/sqlcrudtest-4645/operations/11111111-1111-1111-1111-111111111111", + "name": "11111111-1111-1111-1111-111111111111", + "type": "Microsoft.Sql/managedInstances/operations" }, { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/managedInstances/sqlcrudtest-4645/operations/22222222-2222-2222-2222-222222222222", - "name": "22222222-2222-2222-2222-222222222222", - "type": "Microsoft.Sql/managedInstances/operations", "properties": { "managedInstanceName": "sqlcrudtest-4645", "operation": "UpsertManagedServer", - "operationFriendlyName": "MANAGED SERVER UPDATE", - "percentComplete": 100, - "startTime": "2019-09-23T08:05:28.687Z", - "state": "Succeeded" - } + "operationFriendlyName": "UPDATE MANAGED SERVER", + "percentComplete": 0, + "startTime": "2019-12-06T11:08:44.49Z", + "state": "InProgress", + "isCancellable": true + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/managedInstances/sqlcrudtest-4645/operations/22222222-2222-2222-2222-222222222222", + "name": "22222222-2222-2222-2222-222222222222", + "type": "Microsoft.Sql/managedInstances/operations" }, { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/managedInstances/sqlcrudtest-4645/operations/33333333-3333-3333-3333-333333333333", - "name": "33333333-3333-3333-3333-333333333333", - "type": "Microsoft.Sql/managedInstances/operations", "properties": { "managedInstanceName": "sqlcrudtest-4645", "operation": "UpsertManagedServer", - "operationFriendlyName": "MANAGED SERVER UPDATE", - "percentComplete": 55, - "startTime": "2019-09-23T08:05:28.687Z", + "operationFriendlyName": "UPDATE MANAGED SERVER", + "percentComplete": 100, + "startTime": "2019-12-06T14:48:34.583Z", "state": "Failed", "errorCode": 45157, - "errorDescription": "Server 'testcl' is busy with another operation. Please try your operation later.", + "errorDescription": "Server 'sqlcrudtest-4645' is busy with another operation. Please try your operation later.", "errorSeverity": 16, - "isUserError": true - } + "isUserError": true, + "isCancellable": false + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/managedInstances/sqlcrudtest-4645/operations/33333333-3333-3333-3333-333333333333", + "name": "33333333-3333-3333-3333-333333333333", + "type": "Microsoft.Sql/managedInstances/operations" }, { - "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/managedInstances/sqlcrudtest-4645/operations/44444444-4444-4444-4444-444444444444", - "name": "44444444-4444-4444-4444-444444444444", - "type": "Microsoft.Sql/managedInstances/operations", "properties": { "managedInstanceName": "sqlcrudtest-4645", "operation": "MakeAllManagedDatabasesAccessible", @@ -63,7 +63,10 @@ "percentComplete": 100, "startTime": "2017-06-01T09:00:08.10Z", "state": "Succeeded" - } + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/managedInstances/sqlcrudtest-4645/operations/44444444-4444-4444-4444-444444444444", + "name": "44444444-4444-4444-4444-444444444444", + "type": "Microsoft.Sql/managedInstances/operations" } ] } diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseCreateRestoreLtrBackup.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseCreateRestoreLtrBackup.json new file mode 100644 index 000000000000..854fa11ccb3c --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedDatabaseCreateRestoreLtrBackup.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "managedInstance", + "databaseName": "managedDatabase", + "api-version": "2018-06-01-preview", + "parameters": { + "properties": { + "createMode": "RestoreExternalBackup", + "storageContainerUri": "https://myaccountname.blob.core.windows.net/backups", + "storageContainerSasToken": "sv=2015-12-11&sr=c&sp=rl&sig=1234", + "collation": "SQL_Latin1_General_CP1_CI_AS" + }, + "location": "southeastasia" + } + }, + "responses": { + "200": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/testsvr/databases/testdb1", + "name": "testdb1", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "status": "Online", + "creationDate": "2017-06-07T04:41:33.937Z", + "defaultSecondaryLocation": "North Europe" + }, + "type": "Microsoft.Sql/managedInstances/databases" + } + }, + "201": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/testsvr/databases/testdb2", + "name": "testdb2", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "status": "Online", + "creationDate": "2017-06-07T04:41:33.937Z", + "defaultSecondaryLocation": "North Europe" + }, + "type": "Microsoft.Sql/managedInstances/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceLongTermRetentionBackupDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceLongTermRetentionBackupDelete.json new file mode 100644 index 000000000000..229a9f704bbd --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceLongTermRetentionBackupDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "locationName": "japaneast", + "managedInstanceName": "testInstance", + "databaseName": "testDatabase", + "backupName": "55555555-6666-7777-8888-999999999999;131637960820000000", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceLongTermRetentionBackupGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceLongTermRetentionBackupGet.json new file mode 100644 index 000000000000..282e9e5fc83d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceLongTermRetentionBackupGet.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "locationName": "japaneast", + "managedInstanceName": "testInstance", + "databaseName": "testDatabase", + "backupName": "55555555-6666-7777-8888-999999999999;131637960820000000", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/Locations/japaneast/longTermRetentionManagedInstances/testInstance/longTermRetentionDatabases/testDatabase/longTermRetentionManagedInstanceBackups/55555555-6666-7777-8888-999999999999;131637960820000000", + "name": "55555555-6666-7777-8888-999999999999;131637960820000000", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance", + "managedInstanceCreateTime": "2017-09-01T08:00:00.000Z", + "databaseName": "testDatabase", + "databaseDeletionTime": null, + "backupTime": "2018-08-23T08:00:00.000Z" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceLongTermRetentionBackupListByDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceLongTermRetentionBackupListByDatabase.json new file mode 100644 index 000000000000..22d5abfc97f5 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceLongTermRetentionBackupListByDatabase.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "locationName": "japaneast", + "managedInstanceName": "testInstance", + "databaseName": "testDatabase", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/Locations/japaneast/longTermRetentionManagedInstances/testInstance/longTermRetentionDatabases/testDatabase/longTermRetentionManagedInstanceBackups/2018-06-01T08:00:00.000Z;55555555-6666-7777-8888-999999999999;2018-08-23T08:00:00.000Z", + "name": "2018-06-01T08:00:00.000Z;55555555-6666-7777-8888-999999999999;2018-08-23T08:00:00.000Z", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance", + "managedInstanceCreateTime": "2017-03-10T08:00:00.000Z", + "databaseName": "testDatabase", + "databaseDeletionTime": null, + "backupTime": "2018-08-23T08:00:00.000Z" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/Locations/japaneast/longTermRetentionManagedInstances/testInstance/longTermRetentionDatabases/testDatabase/longTermRetentionManagedInstanceBackups/2018-06-01T08:00:00.000Z;55555555-6666-7777-8888-999999999999;2018-08-30T08:00:00.000Z", + "name": "2018-06-01T08:00:00.000Z;55555555-6666-7777-8888-999999999999;2018-08-30T08:00:00.000Z", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance", + "managedInstanceCreateTime": "2017-03-10T08:00:00.000Z", + "databaseName": "testDatabase", + "databaseDeletionTime": null, + "backupTime": "2018-08-30T08:00:00.000Z" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/Locations/japaneast/longTermRetentionManagedInstances/testInstance/longTermRetentionDatabases/testDatabase/longTermRetentionManagedInstanceBackups/2018-06-01T08:00:00.000Z;55555555-6666-7777-8888-999999999999;2018-09-06T08:00:00.000Z", + "name": "2018-06-01T08:00:00.000Z;55555555-6666-7777-8888-999999999999;2018-09-06T08:00:00.000Z", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance", + "managedInstanceCreateTime": "2017-03-10T08:00:00.000Z", + "databaseName": "testDatabase", + "databaseDeletionTime": "2018-09-07T08:00:00.000Z", + "backupTime": "2018-09-06T08:00:00.000Z" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceLongTermRetentionBackupListByInstance.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceLongTermRetentionBackupListByInstance.json new file mode 100644 index 000000000000..45be867f1a3a --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceLongTermRetentionBackupListByInstance.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "locationName": "japaneast", + "managedInstanceName": "testInstance", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/japaneast/longTermRetentionManagedInstances/testInstance/longTermRetentionDatabases/testDatabase1/longTermRetentionManagedInstanceBackups/55555555-6666-7777-8888-999999999999;131637960820000000", + "name": "55555555-6666-7777-8888-999999999999;131637960820000000", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance", + "managedInstanceCreateTime": "2017-03-10T08:00:00.000Z", + "databaseName": "testDatabase1", + "databaseDeletionTime": null, + "backupTime": "2017-08-23T08:00:00.000Z" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/japaneast/longTermRetentionManagedInstances/testInstance/longTermRetentionDatabases/testDatabase2/longTermRetentionManagedInstanceBackups/12341234-1234-1234-1234-123123123123;131657960820000000", + "name": "12341234-1234-1234-1234-123123123123;131657960820000000", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance", + "managedInstanceCreateTime": "2017-03-10T08:00:00.000Z", + "databaseName": "testDatabase2", + "databaseDeletionTime": null, + "backupTime": "2017-08-30T08:00:00.000Z" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/japaneast/longTermRetentionManagedInstances/testInstance/longTermRetentionDatabases/testDatabase3/longTermRetentionManagedInstanceBackups/43214321-4321-4321-4321-321321321321;131677960820000000", + "name": "43214321-4321-4321-4321-321321321321;131667960820000000", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance", + "managedInstanceCreateTime": "2017-03-10T08:00:00.000Z", + "databaseName": "testDatabase3", + "databaseDeletionTime": null, + "backupTime": "2017-09-06T08:00:00.000Z" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceLongTermRetentionBackupListByLocation.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceLongTermRetentionBackupListByLocation.json new file mode 100644 index 000000000000..d267e1cc2f6f --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceLongTermRetentionBackupListByLocation.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "locationName": "japaneast", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/japaneast/longTermRetentionManagedInstances/testInstance1/longTermRetentionDatabases/testDatabase1/longTermRetentionManagedInstanceBackups/55555555-6666-7777-8888-999999999999;131637960820000000", + "name": "55555555-6666-7777-8888-999999999999;2017-08-23T08:00:00.000Z", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance1", + "managedInstanceCreateTime": "2017-03-10T08:00:00.000Z", + "databaseName": "testDatabase1", + "databaseDeletionTime": null, + "backupTime": "2017-08-23T08:00:00.000Z" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/japaneast/longTermRetentionManagedInstances/testInstance2/longTermRetentionDatabases/testDatabase2/longTermRetentionManagedInstanceBackups/12341234-1234-1234-1234-123123123123;131657960820000000", + "name": "12341234-1234-1234-1234-123123123123;2017-08-30T08:00:00.000Z", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance2", + "managedInstanceCreateTime": "2017-04-10T08:00:00.000Z", + "databaseName": "testDatabase2", + "databaseDeletionTime": null, + "backupTime": "2017-08-30T08:00:00.000Z" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/locations/japaneast/longTermRetentionManagedInstances/testInstance3/longTermRetentionDatabases/testDatabase3/longTermRetentionManagedInstanceBackups/43214321-4321-4321-4321-321321321321;131677960820000000", + "name": "43214321-4321-4321-4321-321321321321;2017-09-06T08:00:00.000Z", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance3", + "managedInstanceCreateTime": "2017-05-10T08:00:00.000Z", + "databaseName": "testDatabase3", + "databaseDeletionTime": null, + "backupTime": "2017-09-06T08:00:00.000Z" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceLongTermRetentionPolicyCreateOrUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceLongTermRetentionPolicyCreateOrUpdate.json new file mode 100644 index 000000000000..1eafcc8e3978 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceLongTermRetentionPolicyCreateOrUpdate.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testResourceGroup", + "managedInstanceName": "testInstance", + "databaseName": "testDatabase", + "policyName": "default", + "api-version": "2018-06-01-preview", + "parameters": { + "properties": { + "weeklyRetention": "P1M", + "monthlyRetention": "P1Y", + "yearlyRetention": "P5Y", + "weekOfYear": 5 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/providers/Microsoft.Sql/managedInstances/testInstance/databases/testDatabase/backupLongTermRetentionPolicies/default", + "name": "default", + "type": "Microsoft.Sql/resourceGroups/managedInstances/databases/backupLongTermRetentionPolicies", + "properties": { + "weeklyRetention": "P1M", + "monthlyRetention": "P1Y", + "yearlyRetention": "P5Y", + "weekOfYear": 5 + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceLongTermRetentionPolicyGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceLongTermRetentionPolicyGet.json new file mode 100644 index 000000000000..842d853024ac --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceLongTermRetentionPolicyGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testResourceGroup", + "managedInstanceName": "testInstance", + "databaseName": "testDatabase", + "policyName": "default", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Sql/resourceGroups/testResourceGroup/managedInstances/testInstance/databases/testDatabase/backupLongTermRetentionPolicies/default", + "name": "default", + "type": "Microsoft.Sql/resourceGroups/managedInstances/databases/backupLongTermRetentionPolicies", + "properties": { + "weeklyRetention": "P1M", + "monthlyRetention": "P1Y", + "yearlyRetention": "P5Y", + "weekOfYear": 5 + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceLongTermRetentionPolicyListByDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceLongTermRetentionPolicyListByDatabase.json new file mode 100644 index 000000000000..40e2369436b3 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ManagedInstanceLongTermRetentionPolicyListByDatabase.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testResourceGroup", + "managedInstanceName": "testInstance", + "databaseName": "testDatabase", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/providers/Microsoft.Sql/managedInstances/testInstance/databases/testDatabase/backupLongTermRetentionPolicies/default", + "name": "default", + "type": "Microsoft.Sql/resourceGroups/managedInstances/databases/backupLongTermRetentionPolicies", + "properties": { + "weeklyRetention": "P1M", + "monthlyRetention": "P1Y", + "yearlyRetention": "P5Y", + "weekOfYear": 5 + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupDelete.json new file mode 100644 index 000000000000..883df7e1cbec --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupDelete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testResourceGroup", + "locationName": "japaneast", + "managedInstanceName": "testInstance", + "databaseName": "testDatabase", + "backupName": "55555555-6666-7777-8888-999999999999;131637960820000000", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupGet.json new file mode 100644 index 000000000000..f5b786bca52b --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupGet.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testResourceGroup", + "locationName": "japaneast", + "managedInstanceName": "testInstance", + "databaseName": "testDatabase", + "backupName": "55555555-6666-7777-8888-999999999999;131637960820000000", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/providers/Microsoft.Sql/Locations/japaneast/longTermRetentionManagedInstances/testInstance/longTermRetentionDatabases/testDatabase/longTermRetentionManagedInstanceBackups/55555555-6666-7777-8888-999999999999;131637960820000000", + "name": "55555555-6666-7777-8888-999999999999;131637960820000000", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance", + "managedInstanceCreateTime": "2017-03-10T08:00:00.000Z", + "databaseName": "testDatabase", + "databaseDeletionTime": null, + "backupTime": "2017-09-06T08:00:00.000Z" + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupListByDatabase.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupListByDatabase.json new file mode 100644 index 000000000000..00bf04ee5477 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupListByDatabase.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testResourceGroup", + "locationName": "japaneast", + "managedInstanceName": "testInstance", + "databaseName": "testDatabase", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/providers/Microsoft.Sql/Locations/japaneast/longTermRetentionManagedInstances/testInstance/longTermRetentionDatabases/testDatabase/longTermRetentionManagedInstanceBackups/2018-06-01T08:00:00.000Z;55555555-6666-7777-8888-999999999999;2018-08-23T08:00:00.000Z", + "name": "2018-06-01T08:00:00.000Z;55555555-6666-7777-8888-999999999999;2018-08-23T08:00:00.000Z", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance", + "managedInstanceCreateTime": "2017-03-10T08:00:00.000Z", + "databaseName": "testDatabase", + "databaseDeletionTime": null, + "backupTime": "2018-08-23T08:00:00.000Z" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/providers/Microsoft.Sql/Locations/japaneast/longTermRetentionManagedInstances/testInstance/longTermRetentionDatabases/testDatabase/longTermRetentionManagedInstanceBackups/2018-06-01T08:00:00.000Z;55555555-6666-7777-8888-999999999999;2018-08-30T08:00:00.000Z", + "name": "2018-06-01T08:00:00.000Z;55555555-6666-7777-8888-999999999999;2018-08-30T08:00:00.000Z", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance", + "managedInstanceCreateTime": "2017-03-10T08:00:00.000Z", + "databaseName": "testDatabase", + "databaseDeletionTime": null, + "backupTime": "2018-08-30T08:00:00.000Z" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/providers/Microsoft.Sql/Locations/japaneast/longTermRetentionManagedInstances/testInstance/longTermRetentionDatabases/testDatabase/longTermRetentionManagedInstanceBackups/2018-06-01T08:00:00.000Z;55555555-6666-7777-8888-999999999999;2018-09-06T08:00:00.000Z", + "name": "2018-06-01T08:00:00.000Z;55555555-6666-7777-8888-999999999999;2018-09-06T08:00:00.000Z", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance", + "managedInstanceCreateTime": "2018-03-10T08:00:00.000Z", + "databaseName": "testDatabase", + "databaseDeletionTime": "2018-09-07T08:00:00.000Z", + "backupTime": "2018-09-06T08:00:00.000Z" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupListByInstance.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupListByInstance.json new file mode 100644 index 000000000000..75feefcddfa6 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupListByInstance.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testResourceGroup", + "locationName": "japaneast", + "managedInstanceName": "testInstance", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/providers/Microsoft.Sql/locations/japaneast/longTermRetentionManagedInstances/testInstance/longTermRetentionDatabases/testDatabase1/longTermRetentionManagedInstanceBackups/55555555-6666-7777-8888-999999999999;131637960820000000", + "name": "55555555-6666-7777-8888-999999999999;131637960820000000", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance", + "managedInstanceCreateTime": "2017-03-10T08:00:00.000Z", + "databaseName": "testDatabase1", + "databaseDeletionTime": null, + "backupTime": "2017-08-23T08:00:00.000Z" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/providers/Microsoft.Sql/locations/japaneast/longTermRetentionManagedInstances/testInstance/longTermRetentionDatabases/testDatabase2/longTermRetentionManagedInstanceBackups/12341234-1234-1234-1234-123123123123;131657960820000000", + "name": "12341234-1234-1234-1234-123123123123;131657960820000000", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance", + "managedInstanceCreateTime": "2017-03-10T08:00:00.000Z", + "databaseName": "testDatabase2", + "databaseDeletionTime": null, + "backupTime": "2017-08-30T08:00:00.000Z" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/providers/Microsoft.Sql/locations/japaneast/longTermRetentionManagedInstances/testInstance/longTermRetentionDatabases/testDatabase3/longTermRetentionManagedInstanceBackups/43214321-4321-4321-4321-321321321321;131677960820000000", + "name": "43214321-4321-4321-4321-321321321321;131667960820000000", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance", + "managedInstanceCreateTime": "2017-03-10T08:00:00.000Z", + "databaseName": "testDatabase3", + "databaseDeletionTime": null, + "backupTime": "2017-09-06T08:00:00.000Z" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupListByLocation.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupListByLocation.json new file mode 100644 index 000000000000..b058580175d0 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/examples/ResourceGroupBasedManagedInstanceLongTermRetentionBackupListByLocation.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "testResourceGroup", + "locationName": "japaneast", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/providers/Microsoft.Sql/locations/japaneast/longTermRetentionManagedInstances/testInstance1/longTermRetentionDatabases/testDatabase1/longTermRetentionManagedInstanceBackups/55555555-6666-7777-8888-999999999999;131637960820000000", + "name": "55555555-6666-7777-8888-999999999999;2017-08-23T08:00:00.000Z", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance1", + "managedInstanceCreateTime": "2017-03-10T08:00:00.000Z", + "databaseName": "testDatabase1", + "databaseDeletionTime": null, + "backupTime": "2017-08-23T08:00:00.000Z" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/providers/Microsoft.Sql/locations/japaneast/longTermRetentionManagedInstances/testInstance2/longTermRetentionDatabases/testDatabase2/longTermRetentionManagedInstanceBackups/12341234-1234-1234-1234-123123123123;131657960820000000", + "name": "12341234-1234-1234-1234-123123123123;2017-08-30T08:00:00.000Z", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance2", + "managedInstanceCreateTime": "2017-04-10T08:00:00.000Z", + "databaseName": "testDatabase2", + "databaseDeletionTime": null, + "backupTime": "2017-08-30T08:00:00.000Z" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/testResourceGroup/providers/Microsoft.Sql/locations/japaneast/longTermRetentionManagedInstances/testInstance3/longTermRetentionDatabases/testDatabase3/longTermRetentionManagedInstanceBackups/43214321-4321-4321-4321-321321321321;131677960820000000", + "name": "43214321-4321-4321-4321-321321321321;2017-09-06T08:00:00.000Z", + "type": "Microsoft.Sql/locations/longTermRetentionManagedInstances/longTermRetentionDatabases/longTermRetentionManagedInstanceBackups", + "properties": { + "managedInstanceName": "testInstance3", + "managedInstanceCreateTime": "2017-05-10T08:00:00.000Z", + "databaseName": "testDatabase3", + "databaseDeletionTime": null, + "backupTime": "2017-09-06T08:00:00.000Z" + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/managedDatabases.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/managedDatabases.json index bb3861dedda5..a294dcb0128c 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/managedDatabases.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/managedDatabases.json @@ -195,7 +195,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 PitrPointInTimeInvalid - The point in time {0} is not valid. Valid point in time range from {1} days early to now and not before source server creation time.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 InvalidBackupRetentionPeriod - The retention days of {0} is not a valid configuration. Valid backup retention in days must be between {1} and {2}\n\n * 400 ManagedDatabaseNameInUse - Database '{0}' already exists. Choose a different database name.\n\n * 400 NoMoreSpaceInManagedInstance - The managed instance has reached its storage limit. The storage usage for the managed instance cannot exceed (%d) MBs.\n\n * 400 ManagedInstanceUpdateSloInProgress - \"The operation could not be completed because a service tier change is in progress for managed instance '{0}.' Please wait for the operation in progress to complete and try again.\"\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\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 PasswordNotComplex - The provided password is not complex enough.\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 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 TokenTooLong - The provided token is too long.\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 InvalidCollation - Collation is not recognized by the server.\n\n * 400 ServerNotFound - The requested server was not found.\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 DatabaseNumberLimitReached - Maximum number of databases for SQL Database Managed Instance reached.\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 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped 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 MissingSourceDatabaseId - Missing source database identifier.\n\n * 400 MissingRestorePointInTime - Missing restore point in time\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\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.\n\n * 404 CannotFindServerCertificateWithThumbprint - Cannot find server certificate with thumbprint '{0}'. Please use PowerShell Cmdlet 'Add-AzureRmSqlManagedInstanceTransparentDataEncryptionCertificate' to create the certificate.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 RestoreSourceDatabaseNotFound - Could not find database '{0}' at time '{1}' that can be restored.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingDatabaseOperation - There is already some operation on the database and the current operation should wait till it is done.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ManagementServiceDatabaseBusy - Database '{0}' is busy with another operation. Please try your operation later.\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 * 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 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows\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." + "description": "*** Error Responses: ***\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 ManagedInstanceUpdateSloInProgress - \"The operation could not be completed because a service tier change is in progress for managed instance '{0}.' Please wait for the operation in progress to complete and try again.\"\n\n * 400 DatabaseNumberLimitReached - Maximum number of databases for SQL Database Managed Instance reached.\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 InvalidCollation - Collation is not recognized by the server.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 PitrPointInTimeInvalid - The point in time {0} is not valid. Valid point in time range from {1} days early to now and not before source server creation time.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 ManagedDatabaseNameInUse - Database '{0}' already exists. Choose a different database name.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 NoMoreSpaceInManagedInstance - The managed instance has reached its storage limit. The storage usage for the managed instance cannot exceed (%d) MBs.\n\n * 400 InvalidBackupRetentionPeriod - The retention days of {0} is not a valid configuration. Valid backup retention in days must be between {1} and {2}\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 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 ServerNotFound - The requested server was not found.\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 SubscriptionNotFound - The requested subscription was not found.\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 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 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped 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 MissingSourceDatabaseId - Missing source database identifier.\n\n * 400 MissingRestorePointInTime - Missing restore point in time\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidLongTermRetentionManagedInstanceBackupId - Invalid long term retention backup identifier for Managed Instances.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 RestoreSourceDatabaseNotFound - Could not find database '{0}' at time '{1}' that can be restored.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 CannotFindServerCertificateWithThumbprint - Cannot find server certificate with thumbprint '{0}'. Please use PowerShell Cmdlet 'Add-AzureRmSqlManagedInstanceTransparentDataEncryptionCertificate' to create the certificate.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ManagementServiceDatabaseBusy - Database '{0}' is busy with another operation. Please try your operation later.\n\n * 409 ConflictingDatabaseOperation - There is already some operation on the database and the current operation should wait till it is done.\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 * 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 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." }, "202": { "description": "Accepted" @@ -223,6 +223,9 @@ }, "Creates a new managed database from restoring a geo-replicated backup": { "$ref": "./examples/ManagedDatabaseCreateRecovery.json" + }, + "Creates a new managed database from restoring a long term retention backup": { + "$ref": "./examples/ManagedDatabaseCreateRestoreLtrBackup.json" } } }, @@ -588,7 +591,8 @@ "Default", "RestoreExternalBackup", "PointInTimeRestore", - "Recovery" + "Recovery", + "RestoreLongTermRetentionBackup" ], "type": "string", "x-ms-enum": { @@ -638,6 +642,13 @@ "x-ms-mutability": [ "create" ] + }, + "longTermRetentionBackupResourceId": { + "description": "The name of the Long Term Retention backup to be used for restore of this managed database.", + "type": "string", + "x-ms-mutability": [ + "create" + ] } } }, diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/managedInstanceOperations.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/managedInstanceOperations.json index ebf303d3f715..261d8aad543f 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/managedInstanceOperations.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/managedInstanceOperations.json @@ -57,6 +57,52 @@ } } } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/operations/{operationId}": { + "get": { + "tags": [ + "ManagedInstanceOperations" + ], + "description": "Gets a management operation on a managed instance.", + "operationId": "ManagedInstanceOperations_Get", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified managed instance operation.", + "schema": { + "$ref": "#/definitions/ManagedInstanceOperation" + } + }, + "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 the managed instance management operation": { + "$ref": "./examples/GetManagedInstanceOperation.json" + } + } + } } }, "definitions": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/managedInstances.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/managedInstances.json index 787250a313a2..14afdcdb4e85 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/managedInstances.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2018-06-01-preview/managedInstances.json @@ -176,7 +176,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 HkCannotSwitchToInactive - The database cannot proceed with pricing-tier update as it has memory-optimized objects. Please drop such objects and try again.\n\n * 400 ManagedInstanceInvalidStorageSizeLessThenCurrentSizeUsed - Invalid storage size: Storage size limit ({0} GB) is less that current storage used ({1} GB). Please specify higher storage size limit.\n\n * 400 InstanceTimezoneUpdateNotSupported - Instance timezone update not supported.\n\n * 400 CreateManagedInstanceWithNonDefaultTimezoneNotSupported - Create Managed Instance with non-default timezone not supported.\n\n * 400 ManagedInstanceIpAddressRangeLimit - Cannot create a Managed Instance as there are not enough available ip addresses in the selected subnet\n\n * 400 VnetDelegationNotAllowed - User tried to inject Managed Server to subnet which is delegated.\n\n * 400 SubnetHasResourcesOfDifferentType - User tried to create MI in subnet that has resources of different type.\n\n * 400 InvalidUsername - Supplied user name contains invalid characters.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InstancePoolNotEnoughCapacity - An instance pool does not have enough vCore capacity\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 ManagedInstanceSloUpdateFailed - SLO '{0}' operation cannot succeed as the memory usage of '{1}' exceeds the quota.\n\n * 400 ManagedInstanceLocalStorageUpdateSloDisabled - Update SLO for managed instances with local storage is not supported yet.\n\n * 400 InvalidLoginName - The provided login name is invalid.\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 PasswordTooShort - The provided password is too short\n\n * 400 PasswordTooLong - The provided password is too long.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 GatewayInvalidEdition - '{0}' is not a valid database edition in this version of SQL Server.\n\n * 400 InvalidSubnetResourceId - The provided subnet resource ID for the managed instance create or update is invalid.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 VnetInWrongRegion - Virtual network is in wrong region.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 VnetAddressRangeError - Virtual network address range is invalid.\n\n * 400 VnetConfigIsNotAllowed - Virtual network configuration is not allowed.\n\n * 400 InvalidCollation - Invalid collation.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 ManagedInstanceClassicVnetNotSupported - Managed Instance cannot be joined to a classic virtual network.\n\n * 400 AlterDbDeactivatedNotSupported - Database Operation failed for Server '{0}', Database '{1}' due to unexpected delay. Please try again.\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 VnetConfigHasNsg - User tried to inject Managed Server subnet with Network Security Groups.\n\n * 400 VnetConfigHasNoUdr - User tried to inject Managed Server subnet without default User Defined Route Table.\n\n * 400 VnetConfigHasInvalidUdr - User tried to inject Managed Server subnet with invalid User Defined Route Table.\n\n * 400 VnetConfigHasInvalidDns - User tried to inject Managed Server subnet with invalid custom DNS.\n\n * 400 VnetConfigHasServiceEndpoints - User tried to inject Managed Server subnet with service endpoints.\n\n * 400 VnetSubnetIsInUse - User tried to inject Managed Server subnet that is not empty.\n\n * 400 VnetSubnetIsLocked - User tried to inject Managed Server subnet that is in locked scope.\n\n * 400 VnetSubnetIsGateway - User tried to inject Managed Server subnet that is Gateway subnet.\n\n * 400 VnetSubnetIsUnknown - User tried to inject Managed Server subnet that does not exist.\n\n * 400 VnetSubnetConflictWithIntendedPolicy - User tried to inject Managed Server subnet that has a conflict with IntendedPolicy.\n\n * 400 NameAlreadyExists - The provided name already exists.\n\n * 400 ManagedInstanceInvalidEditionForSku - The specified edition {0} is not consistent with the specified SKU {1}.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 ManagedInstanceInvalidLicenseType - The specified license type {0} is not valid.\n\n * 400 ManagedInstanceUpdateSloInProgress - \"The operation could not be completed because a service tier change is in progress for managed instance '{0}.' Please wait for the operation in progress to complete and try again.\"\n\n * 400 VnetResourceNotFound - Resource not found: '{0}'.\n\n * 400 InvalidTimezone - Invalid timezone.\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 InstanceCollationUpdateNotSupported - User cannot change instance collation on Managed Instance.\n\n * 400 CreateManagedInstanceWithNonDefaultCollationNotSupported - User can create a Managed Instance only with collation 'SQL_Latin1_General_CP1_CI_AS'.\n\n * 400 ManagedInstanceOperationInProgress - The operation could not be completed because {0} operation is in progress. Please wait for the operation in progress to complete and try again.\n\n * 400 ManagedInstanceExceedMaxAzureStorage - The operation could not be completed because total allocated storage size for General Purpose instance would exceed {0}. Please reduce the number of database files and retry operation.\n\n * 400 ManagedInstanceHasGeoReplica - The operation could not be completed because instance has configured geo replicated secondary instance.\n\n * 400 InvalidManagedServerDnsZonePartner - Invalid DNS zone partner resource id specified in properties.\n\n * 400 ManagementServiceFeatureDisabled - User attempted to use a feature which is disabled.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group 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 * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ManagedInstanceNotInSubscriptionResourceGroup - Specified managed instance does not exist in the specified resource group and subscription.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 405 InvalidVcoreValue - vCore value {0} is not valid. Please specify a valid vCore value.\n\n * 405 InvalidHardwareGenerationValue - HardwareGeneration {0} is not valid. Please specify a valid HardwareGeneration value.\n\n * 405 InvalidStorageSizeValue - \"Invalid storage size: {0} GB. Storage size must be specified between {1} and {2} gigabytes, in increments of {3} GB.\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 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ServerAlreadyExists - Duplicate server name.\n\n * 409 ServerOverridePreconditionFailed - Failed to apply server override on category '{0}', because physical db or instance '{1}' in server '{2}' is currently not in 'Ready' or 'Deactivated' state.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ManagedInstanceIsBusy - The server '{0}' is currently busy. Please wait a few minutes before trying again.\n\n * 409 ServerQuotaExceeded - Server cannot be added to a subscription because it will exceed quota.\n\n * 409 ConflictingManagedInstanceOperation - An operation is currently in progress for the managed instance.\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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\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 * 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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 500 GatewayInternalServerError - The server encountered an unexpected exception.\n\n * 503 TooManyRequests - 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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + "description": "*** Error Responses: ***\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 HkCannotSwitchToInactive - The database cannot proceed with pricing-tier update as it has memory-optimized objects. Please drop such objects and try again.\n\n * 400 ManagedInstanceInvalidStorageSizeLessThenCurrentSizeUsed - Invalid storage size: Storage size limit ({0} GB) is less that current storage used ({1} GB). Please specify higher storage size limit.\n\n * 400 InstanceTimezoneUpdateNotSupported - Instance timezone update not supported.\n\n * 400 CreateManagedInstanceWithNonDefaultTimezoneNotSupported - Create Managed Instance with non-default timezone not supported.\n\n * 400 ManagedInstanceIpAddressRangeLimit - Cannot create a Managed Instance as there are not enough available ip addresses in the selected subnet\n\n * 400 VnetDelegationNotAllowed - User tried to inject Managed Server to subnet which is delegated.\n\n * 400 SubnetHasResourcesOfDifferentType - User tried to create MI in subnet that has resources of different type.\n\n * 400 UpdateManagedServerWithMaintenanceWindowNotAllowed - Update of Managed Instance with maintenance window settings is not allowed.\n\n * 400 VnetPrepareNIPFailed - User tried to prepare subnet that has a conflict with NetworkIntentPolicy.\n\n * 400 InvalidUsername - Supplied user name contains invalid characters.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InstancePoolNotEnoughCapacity - An instance pool does not have enough capacity\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 ManagedInstanceSloUpdateFailed - SLO '{0}' operation cannot succeed as the memory usage of '{1}' exceeds the quota.\n\n * 400 ManagedInstanceLocalStorageUpdateSloDisabled - Update SLO for managed instances with local storage is not supported yet.\n\n * 400 InvalidLoginName - The provided login name is invalid.\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 PasswordTooShort - The provided password is too short\n\n * 400 PasswordTooLong - The provided password is too long.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 GatewayInvalidEdition - '{0}' is not a valid database edition in this version of SQL Server.\n\n * 400 InvalidSubnetResourceId - The provided subnet resource ID for the managed instance create or update is invalid.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 VnetInWrongRegion - Virtual network is in wrong region.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 VnetAddressRangeError - Virtual network address range is invalid.\n\n * 400 VnetConfigIsNotAllowed - Virtual network configuration is not allowed.\n\n * 400 InvalidCollation - Invalid collation.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 ManagedInstanceClassicVnetNotSupported - Managed Instance cannot be joined to a classic virtual network.\n\n * 400 AlterDbDeactivatedNotSupported - Database Operation failed for Server '{0}', Database '{1}' due to unexpected delay. Please try again.\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 VnetConfigHasNsg - User tried to inject Managed Server subnet with Network Security Groups.\n\n * 400 VnetConfigHasNoUdr - User tried to inject Managed Server subnet without default User Defined Route Table.\n\n * 400 VnetConfigHasInvalidUdr - User tried to inject Managed Server subnet with invalid User Defined Route Table.\n\n * 400 VnetConfigHasInvalidDns - User tried to inject Managed Server subnet with invalid custom DNS.\n\n * 400 VnetConfigHasServiceEndpoints - User tried to inject Managed Server subnet with service endpoints.\n\n * 400 VnetSubnetIsInUse - User tried to inject Managed Server subnet that is not empty.\n\n * 400 VnetSubnetIsLocked - User tried to inject Managed Server subnet that is in locked scope.\n\n * 400 VnetSubnetIsGateway - User tried to inject Managed Server subnet that is Gateway subnet.\n\n * 400 VnetSubnetIsUnknown - User tried to inject Managed Server subnet that does not exist.\n\n * 400 VnetSubnetConflictWithIntendedPolicy - User tried to inject Managed Server subnet that has a conflict with IntendedPolicy.\n\n * 400 NameAlreadyExists - The provided name already exists.\n\n * 400 ManagedInstanceInvalidEditionForSku - The specified edition {0} is not consistent with the specified SKU {1}.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 ManagedInstanceInvalidLicenseType - The specified license type {0} is not valid.\n\n * 400 ManagedInstanceUpdateSloInProgress - \"The operation could not be completed because a service tier change is in progress for managed instance '{0}.' Please wait for the operation in progress to complete and try again.\"\n\n * 400 VnetResourceNotFound - Resource not found: '{0}'.\n\n * 400 InvalidTimezone - Invalid timezone.\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 InstanceCollationUpdateNotSupported - User cannot change instance collation on Managed Instance.\n\n * 400 CreateManagedInstanceWithNonDefaultCollationNotSupported - User can create a Managed Instance only with collation 'SQL_Latin1_General_CP1_CI_AS'.\n\n * 400 ManagedInstanceOperationInProgress - The operation could not be completed because {0} operation is in progress. Please wait for the operation in progress to complete and try again.\n\n * 400 ManagedInstanceExceedMaxAzureStorage - The operation could not be completed because total allocated storage size for General Purpose instance would exceed {0}. Please reduce the number of database files and retry operation.\n\n * 400 ManagedInstanceHasGeoReplica - The operation could not be completed because instance has configured geo replicated secondary instance.\n\n * 400 InvalidManagedServerDnsZonePartner - The resource URI of the geo-primary managed instance specified in the create request is invalid. Please ensure that the property is of the format /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/managedInstances/{managedInstanceName}\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 ManagementServiceFeatureDisabled - User attempted to use a feature which is disabled.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group 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 InvalidMinimalTlsVersion - Invalid minimal TLS version.\n\n * 400 InvalidMaintenanceWindowSettings - Invalid maintenance window settings.\n\n * 400 InvalidMaintenanceWindowProperty - Invalid maintenance window property was specified.\n\n * 400 InvalidMaintenanceWindowPropertyNull - Invalid maintenance window with required properties null.\n\n * 400 InvalidMaintenanceWindowTypeWithPropertySpecified - Maintenance window type must not have certain properties specified.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ManagedInstanceNotInSubscriptionResourceGroup - Specified managed instance does not exist in the specified resource group and subscription.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 405 InvalidVcoreValue - vCore value {0} is not valid. Please specify a valid vCore value.\n\n * 405 InvalidHardwareGenerationValue - HardwareGeneration {0} is not valid. Please specify a valid HardwareGeneration value.\n\n * 405 InvalidStorageSizeValue - \"Invalid storage size: {0} GB. Storage size must be specified between {1} and {2} gigabytes, in increments of {3} GB.\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 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ServerAlreadyExists - Duplicate server name.\n\n * 409 ServerOverridePreconditionFailed - Failed to apply server override on category '{0}', because physical db or instance '{1}' in server '{2}' is currently not in 'Ready' or 'Deactivated' state.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ManagedInstanceIsBusy - The server '{0}' is currently busy. Please wait a few minutes before trying again.\n\n * 409 ServerQuotaExceeded - Server cannot be added to a subscription because it will exceed quota.\n\n * 409 ConflictingManagedInstanceOperation - An operation is currently in progress for the managed instance.\n\n * 409 MiDropFailedOnAuthLocks - User tried to drop last Managed Instance in subnet that has Lock applied on resource(s).\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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\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 * 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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 500 GatewayInternalServerError - The server encountered an unexpected exception.\n\n * 503 TooManyRequests - 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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." }, "202": { "description": "Accepted" @@ -276,7 +276,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 HkCannotSwitchToInactive - The database cannot proceed with pricing-tier update as it has memory-optimized objects. Please drop such objects and try again.\n\n * 400 ManagedInstanceInvalidStorageSizeLessThenCurrentSizeUsed - Invalid storage size: Storage size limit ({0} GB) is less that current storage used ({1} GB). Please specify higher storage size limit.\n\n * 400 InstanceTimezoneUpdateNotSupported - Instance timezone update not supported.\n\n * 400 CreateManagedInstanceWithNonDefaultTimezoneNotSupported - Create Managed Instance with non-default timezone not supported.\n\n * 400 ManagedInstanceIpAddressRangeLimit - Cannot create a Managed Instance as there are not enough available ip addresses in the selected subnet\n\n * 400 VnetDelegationNotAllowed - User tried to inject Managed Server to subnet which is delegated.\n\n * 400 SubnetHasResourcesOfDifferentType - User tried to create MI in subnet that has resources of different type.\n\n * 400 InvalidUsername - Supplied user name contains invalid characters.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InstancePoolNotEnoughCapacity - An instance pool does not have enough vCore capacity\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 ManagedInstanceSloUpdateFailed - SLO '{0}' operation cannot succeed as the memory usage of '{1}' exceeds the quota.\n\n * 400 ManagedInstanceLocalStorageUpdateSloDisabled - Update SLO for managed instances with local storage is not supported yet.\n\n * 400 InvalidLoginName - The provided login name is invalid.\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 PasswordTooShort - The provided password is too short\n\n * 400 PasswordTooLong - The provided password is too long.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 GatewayInvalidEdition - '{0}' is not a valid database edition in this version of SQL Server.\n\n * 400 InvalidSubnetResourceId - The provided subnet resource ID for the managed instance create or update is invalid.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 VnetInWrongRegion - Virtual network is in wrong region.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 VnetAddressRangeError - Virtual network address range is invalid.\n\n * 400 VnetConfigIsNotAllowed - Virtual network configuration is not allowed.\n\n * 400 InvalidCollation - Invalid collation.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 ManagedInstanceClassicVnetNotSupported - Managed Instance cannot be joined to a classic virtual network.\n\n * 400 AlterDbDeactivatedNotSupported - Database Operation failed for Server '{0}', Database '{1}' due to unexpected delay. Please try again.\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 VnetConfigHasNsg - User tried to inject Managed Server subnet with Network Security Groups.\n\n * 400 VnetConfigHasNoUdr - User tried to inject Managed Server subnet without default User Defined Route Table.\n\n * 400 VnetConfigHasInvalidUdr - User tried to inject Managed Server subnet with invalid User Defined Route Table.\n\n * 400 VnetConfigHasInvalidDns - User tried to inject Managed Server subnet with invalid custom DNS.\n\n * 400 VnetConfigHasServiceEndpoints - User tried to inject Managed Server subnet with service endpoints.\n\n * 400 VnetSubnetIsInUse - User tried to inject Managed Server subnet that is not empty.\n\n * 400 VnetSubnetIsLocked - User tried to inject Managed Server subnet that is in locked scope.\n\n * 400 VnetSubnetIsGateway - User tried to inject Managed Server subnet that is Gateway subnet.\n\n * 400 VnetSubnetIsUnknown - User tried to inject Managed Server subnet that does not exist.\n\n * 400 VnetSubnetConflictWithIntendedPolicy - User tried to inject Managed Server subnet that has a conflict with IntendedPolicy.\n\n * 400 NameAlreadyExists - The provided name already exists.\n\n * 400 ManagedInstanceInvalidEditionForSku - The specified edition {0} is not consistent with the specified SKU {1}.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 ManagedInstanceInvalidLicenseType - The specified license type {0} is not valid.\n\n * 400 ManagedInstanceUpdateSloInProgress - \"The operation could not be completed because a service tier change is in progress for managed instance '{0}.' Please wait for the operation in progress to complete and try again.\"\n\n * 400 VnetResourceNotFound - Resource not found: '{0}'.\n\n * 400 InvalidTimezone - Invalid timezone.\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 InstanceCollationUpdateNotSupported - User cannot change instance collation on Managed Instance.\n\n * 400 CreateManagedInstanceWithNonDefaultCollationNotSupported - User can create a Managed Instance only with collation 'SQL_Latin1_General_CP1_CI_AS'.\n\n * 400 ManagedInstanceOperationInProgress - The operation could not be completed because {0} operation is in progress. Please wait for the operation in progress to complete and try again.\n\n * 400 ManagedInstanceExceedMaxAzureStorage - The operation could not be completed because total allocated storage size for General Purpose instance would exceed {0}. Please reduce the number of database files and retry operation.\n\n * 400 ManagedInstanceHasGeoReplica - The operation could not be completed because instance has configured geo replicated secondary instance.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group 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 * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ManagedInstanceNotInSubscriptionResourceGroup - Specified managed instance does not exist in the specified resource group and subscription.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 405 InvalidVcoreValue - vCore value {0} is not valid. Please specify a valid vCore value.\n\n * 405 InvalidHardwareGenerationValue - HardwareGeneration {0} is not valid. Please specify a valid HardwareGeneration value.\n\n * 405 InvalidStorageSizeValue - \"Invalid storage size: {0} GB. Storage size must be specified between {1} and {2} gigabytes, in increments of {3} GB.\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 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ServerAlreadyExists - Duplicate server name.\n\n * 409 ServerOverridePreconditionFailed - Failed to apply server override on category '{0}', because physical db or instance '{1}' in server '{2}' is currently not in 'Ready' or 'Deactivated' state.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ManagedInstanceIsBusy - The server '{0}' is currently busy. Please wait a few minutes before trying again.\n\n * 409 ServerQuotaExceeded - Server cannot be added to a subscription because it will exceed quota.\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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\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 GatewayInternalServerError - The server encountered an unexpected exception.\n\n * 503 TooManyRequests - 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.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." + "description": "*** Error Responses: ***\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 HkCannotSwitchToInactive - The database cannot proceed with pricing-tier update as it has memory-optimized objects. Please drop such objects and try again.\n\n * 400 ManagedInstanceInvalidStorageSizeLessThenCurrentSizeUsed - Invalid storage size: Storage size limit ({0} GB) is less that current storage used ({1} GB). Please specify higher storage size limit.\n\n * 400 InstanceTimezoneUpdateNotSupported - Instance timezone update not supported.\n\n * 400 CreateManagedInstanceWithNonDefaultTimezoneNotSupported - Create Managed Instance with non-default timezone not supported.\n\n * 400 ManagedInstanceIpAddressRangeLimit - Cannot create a Managed Instance as there are not enough available ip addresses in the selected subnet\n\n * 400 VnetDelegationNotAllowed - User tried to inject Managed Server to subnet which is delegated.\n\n * 400 SubnetHasResourcesOfDifferentType - User tried to create MI in subnet that has resources of different type.\n\n * 400 UpdateManagedServerWithMaintenanceWindowNotAllowed - Update of Managed Instance with maintenance window settings is not allowed.\n\n * 400 VnetPrepareNIPFailed - User tried to prepare subnet that has a conflict with NetworkIntentPolicy.\n\n * 400 InvalidUsername - Supplied user name contains invalid characters.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InstancePoolNotEnoughCapacity - An instance pool does not have enough capacity\n\n * 400 ServerNotFound - The requested server was not found.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 ManagedInstanceSloUpdateFailed - SLO '{0}' operation cannot succeed as the memory usage of '{1}' exceeds the quota.\n\n * 400 ManagedInstanceLocalStorageUpdateSloDisabled - Update SLO for managed instances with local storage is not supported yet.\n\n * 400 InvalidLoginName - The provided login name is invalid.\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 PasswordTooShort - The provided password is too short\n\n * 400 PasswordTooLong - The provided password is too long.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 GatewayInvalidEdition - '{0}' is not a valid database edition in this version of SQL Server.\n\n * 400 InvalidSubnetResourceId - The provided subnet resource ID for the managed instance create or update is invalid.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 VnetInWrongRegion - Virtual network is in wrong region.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 VnetAddressRangeError - Virtual network address range is invalid.\n\n * 400 VnetConfigIsNotAllowed - Virtual network configuration is not allowed.\n\n * 400 InvalidCollation - Invalid collation.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 ManagedInstanceClassicVnetNotSupported - Managed Instance cannot be joined to a classic virtual network.\n\n * 400 AlterDbDeactivatedNotSupported - Database Operation failed for Server '{0}', Database '{1}' due to unexpected delay. Please try again.\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 VnetConfigHasNsg - User tried to inject Managed Server subnet with Network Security Groups.\n\n * 400 VnetConfigHasNoUdr - User tried to inject Managed Server subnet without default User Defined Route Table.\n\n * 400 VnetConfigHasInvalidUdr - User tried to inject Managed Server subnet with invalid User Defined Route Table.\n\n * 400 VnetConfigHasInvalidDns - User tried to inject Managed Server subnet with invalid custom DNS.\n\n * 400 VnetConfigHasServiceEndpoints - User tried to inject Managed Server subnet with service endpoints.\n\n * 400 VnetSubnetIsInUse - User tried to inject Managed Server subnet that is not empty.\n\n * 400 VnetSubnetIsLocked - User tried to inject Managed Server subnet that is in locked scope.\n\n * 400 VnetSubnetIsGateway - User tried to inject Managed Server subnet that is Gateway subnet.\n\n * 400 VnetSubnetIsUnknown - User tried to inject Managed Server subnet that does not exist.\n\n * 400 VnetSubnetConflictWithIntendedPolicy - User tried to inject Managed Server subnet that has a conflict with IntendedPolicy.\n\n * 400 NameAlreadyExists - The provided name already exists.\n\n * 400 ManagedInstanceInvalidEditionForSku - The specified edition {0} is not consistent with the specified SKU {1}.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 ManagedInstanceInvalidLicenseType - The specified license type {0} is not valid.\n\n * 400 ManagedInstanceUpdateSloInProgress - \"The operation could not be completed because a service tier change is in progress for managed instance '{0}.' Please wait for the operation in progress to complete and try again.\"\n\n * 400 VnetResourceNotFound - Resource not found: '{0}'.\n\n * 400 InvalidTimezone - Invalid timezone.\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 InstanceCollationUpdateNotSupported - User cannot change instance collation on Managed Instance.\n\n * 400 CreateManagedInstanceWithNonDefaultCollationNotSupported - User can create a Managed Instance only with collation 'SQL_Latin1_General_CP1_CI_AS'.\n\n * 400 ManagedInstanceOperationInProgress - The operation could not be completed because {0} operation is in progress. Please wait for the operation in progress to complete and try again.\n\n * 400 ManagedInstanceExceedMaxAzureStorage - The operation could not be completed because total allocated storage size for General Purpose instance would exceed {0}. Please reduce the number of database files and retry operation.\n\n * 400 ManagedInstanceHasGeoReplica - The operation could not be completed because instance has configured geo replicated secondary instance.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 ManagementServiceFeatureDisabled - User attempted to use a feature which is disabled.\n\n * 400 MismatchingResourceGroupNameWithUrl - The provided resource group 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 InvalidMinimalTlsVersion - Invalid minimal TLS version.\n\n * 400 InvalidMaintenanceWindowSettings - Invalid maintenance window settings.\n\n * 400 InvalidMaintenanceWindowProperty - Invalid maintenance window property was specified.\n\n * 400 InvalidMaintenanceWindowPropertyNull - Invalid maintenance window with required properties null.\n\n * 400 InvalidMaintenanceWindowTypeWithPropertySpecified - Maintenance window type must not have certain properties specified.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 ManagedInstanceNotInSubscriptionResourceGroup - Specified managed instance does not exist in the specified resource group and subscription.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 ResourceDoesNotExist - Resource with the name '{0}' does not exist. To continue, specify a valid resource name.\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 405 InvalidVcoreValue - vCore value {0} is not valid. Please specify a valid vCore value.\n\n * 405 InvalidHardwareGenerationValue - HardwareGeneration {0} is not valid. Please specify a valid HardwareGeneration value.\n\n * 405 InvalidStorageSizeValue - \"Invalid storage size: {0} GB. Storage size must be specified between {1} and {2} gigabytes, in increments of {3} GB.\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 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ServerAlreadyExists - Duplicate server name.\n\n * 409 ServerOverridePreconditionFailed - Failed to apply server override on category '{0}', because physical db or instance '{1}' in server '{2}' is currently not in 'Ready' or 'Deactivated' state.\n\n * 409 ServerDisabled - Server is disabled.\n\n * 409 ManagedInstanceIsBusy - The server '{0}' is currently busy. Please wait a few minutes before trying again.\n\n * 409 ServerQuotaExceeded - Server cannot be added to a subscription because it will exceed quota.\n\n * 409 ConflictingManagedInstanceOperation - An operation is currently in progress for the managed instance.\n\n * 409 MiDropFailedOnAuthLocks - User tried to drop last Managed Instance in subnet that has Lock applied on resource(s).\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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\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 * 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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\n\n * 500 OperationTimedOut - The operation timed out and automatically rolled back. Please retry the operation.\n\n * 500 GatewayInternalServerError - The server encountered an unexpected exception.\n\n * 503 TooManyRequests - 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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." }, "202": { "description": "Accepted" @@ -484,6 +484,10 @@ "instancePoolId": { "description": "The Id of the instance pool this managed server belongs to.", "type": "string" + }, + "minimalTlsVersion": { + "description": "Minimal TLS version. Allowed values: 'None', '1.0', '1.1', '1.2'", + "type": "string" } } }, diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/ServerAzureADAdministrators.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/ServerAzureADAdministrators.json new file mode 100644 index 000000000000..cdd9476a0624 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/ServerAzureADAdministrators.json @@ -0,0 +1,463 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-06-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}/administrators/{administratorName}": { + "get": { + "tags": [ + "ServerAzureADAdministrators" + ], + "description": "Gets a Azure Active Directory administrator.", + "operationId": "ServerAzureADAdministrators_Get", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "administratorName", + "in": "path", + "description": "The name of server active directory administrator.", + "required": true, + "type": "string", + "enum": [ + "ActiveDirectory" + ], + "x-ms-enum": { + "name": "AdministratorName", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "Successfully retrieved a specified Azure Active Directory administrator.", + "schema": { + "$ref": "#/definitions/ServerAzureADAdministrator" + } + }, + "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 Azure Active Directory administrator.": { + "$ref": "./examples/AdministratorGet.json" + } + } + }, + "put": { + "tags": [ + "ServerAzureADAdministrators" + ], + "description": "Creates or updates an existing Azure Active Directory administrator.", + "operationId": "ServerAzureADAdministrators_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "administratorName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "ActiveDirectory" + ], + "x-ms-enum": { + "name": "AdministratorName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The required parameters for creating or updating an Active Directory Administrator.", + "required": true, + "schema": { + "$ref": "#/definitions/ServerAzureADAdministrator" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated a Azure Active Directory administrator.", + "schema": { + "$ref": "#/definitions/ServerAzureADAdministrator" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidServerAzureADOnlyAuthenticationParameter - User tried to set AzureADOnlyAuthentication parameter to false which is not allowed, please use disableAzureADOnlyAuthentication API instead.\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 OperationIdNotFound - The operation with Id does not exist.\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." + }, + "202": { + "description": "Accepted" + }, + "201": { + "description": "Successfully created a Azure Active Directory administrator.", + "schema": { + "$ref": "#/definitions/ServerAzureADAdministrator" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Creates or updates an existing Azure Active Directory administrator.": { + "$ref": "./examples/AdministratorCreateOrUpdate.json" + } + } + }, + "delete": { + "tags": [ + "ServerAzureADAdministrators" + ], + "description": "Deletes the Azure Active Directory administrator with the given name.", + "operationId": "ServerAzureADAdministrators_Delete", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "administratorName", + "in": "path", + "description": "The name of server active directory administrator.", + "required": true, + "type": "string", + "enum": [ + "ActiveDirectory" + ], + "x-ms-enum": { + "name": "AdministratorName", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "Successfully deleted the Azure Active Directory administrator." + }, + "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 OperationIdNotFound - The operation with Id does not exist.\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." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "The specified Azure Active Directory administrator does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete Azure Active Directory administrator.": { + "$ref": "./examples/AdministratorDelete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/administrators": { + "get": { + "tags": [ + "ServerAzureADAdministrators" + ], + "description": "Gets a list of Azure Active Directory administrators in a server.", + "operationId": "ServerAzureADAdministrators_ListByServer", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of Azure Active Directory administrators.", + "schema": { + "$ref": "#/definitions/AdministratorListResult" + } + }, + "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-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets a list of Azure Active Directory administrator.": { + "$ref": "./examples/AdministratorList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/disableAzureADOnlyAuthentication": { + "post": { + "tags": [ + "ServerAzureADAdministrators" + ], + "description": "Disables Azure Active Directory only authentication on logical Server.", + "operationId": "ServerAzureADAdministrators_DisableAzureADOnlyAuthentication", + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + } + ], + "responses": { + "200": { + "description": "Successfully disabled Azure Active Directory only authentication on logical server.", + "schema": { + "$ref": "#/definitions/ServerAzureADAdministrator" + } + }, + "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 OperationIdNotFound - The operation with Id does not exist.\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." + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Disables Azure Active Directory only authentication on logical server.": { + "$ref": "./examples/DisableAzureADOnlyAuthUpdate.json" + } + } + } + } + }, + "definitions": { + "AdministratorProperties": { + "description": "Properties of a active directory administrator.", + "required": [ + "administratorType", + "login", + "sid" + ], + "type": "object", + "properties": { + "administratorType": { + "description": "Type of the sever administrator.", + "enum": [ + "ActiveDirectory" + ], + "type": "string", + "x-ms-enum": { + "name": "AdministratorType", + "modelAsString": true + } + }, + "login": { + "description": "Login name of the server administrator.", + "type": "string" + }, + "sid": { + "format": "uuid", + "description": "SID (object ID) of the server administrator.", + "type": "string" + }, + "tenantId": { + "format": "uuid", + "description": "Tenant ID of the administrator.", + "type": "string" + }, + "azureADOnlyAuthentication": { + "description": "Azure Active Directory only Authentication enabled.", + "type": "boolean" + } + } + }, + "Resource": { + "description": "ARM resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Resource name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource type.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "ProxyResource": { + "description": "ARM proxy resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": {} + }, + "ServerAzureADAdministrator": { + "description": "Azure Active Directory administrator.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/AdministratorProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "AdministratorListResult": { + "description": "A list of active directory administrators.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ServerAzureADAdministrator" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + } + }, + "parameters": { + "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" + } + }, + "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/2019-06-01-preview/WorkloadClassifiers.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/WorkloadClassifiers.json index c84cca5b0c15..8757f3504cb5 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/WorkloadClassifiers.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/WorkloadClassifiers.json @@ -457,4 +457,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/WorkloadGroups.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/WorkloadGroups.json index f9a5e78e125d..00c39d002440 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/WorkloadGroups.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/WorkloadGroups.json @@ -436,4 +436,4 @@ } } } -} \ No newline at end of file +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/databases.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/databases.json index 24fecde6cb72..045b85a77c88 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/databases.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/databases.json @@ -940,7 +940,7 @@ "type": "integer" }, "storageAccountType": { - "description": "The storage account type used to store backups for this database. The current options are LRS (LocallyRedundantStorage), ZRS (ZoneRedundantStorage) and GRS (GeoRedundantStorage)", + "description": "The storage account type used to store backups for this database. Currently the only supported option is GRS (GeoRedundantStorage).", "enum": [ "GRS", "LRS", diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/AdministratorCreateOrUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/AdministratorCreateOrUpdate.json new file mode 100644 index 000000000000..bf99bf84a0fa --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/AdministratorCreateOrUpdate.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-4799", + "serverName": "sqlcrudtest-6440", + "administratorName": "ActiveDirectory", + "api-version": "2019-06-01-preview", + "name": "ActiveDirectory", + "parameters": { + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "azureADOnlyAuthentication": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-4799/providers/Microsoft.Sql/servers/sqlcrudtest-6440/administrators/ActiveDirectory", + "name": "ActiveDirectory", + "type": "Microsoft.Sql/servers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "azureADOnlyAuthentication": true + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-4799/providers/Microsoft.Sql/servers/sqlcrudtest-6440/administrators/ActiveDirectory", + "name": "activeDirectory", + "type": "Microsoft.Sql/servers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "azureADOnlyAuthentication": true + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/AdministratorDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/AdministratorDelete.json new file mode 100644 index 000000000000..d78d90a0566e --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/AdministratorDelete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-4799", + "serverName": "sqlcrudtest-6440", + "administratorName": "ActiveDirectory", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/AdministratorGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/AdministratorGet.json new file mode 100644 index 000000000000..52aee36b3f44 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/AdministratorGet.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-4799", + "serverName": "sqlcrudtest-6440", + "administratorName": "ActiveDirectory", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-4799/providers/Microsoft.Sql/servers/sqlcrudtest-6440/administrators/ActiveDirectory", + "name": "ActiveDirectory", + "type": "Microsoft.Sql/servers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "azureADOnlyAuthentication": true + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/AdministratorList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/AdministratorList.json new file mode 100644 index 000000000000..0fb15a505729 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/AdministratorList.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-4799", + "serverName": "sqlcrudtest-6440", + "administratorName": "ActiveDirectory", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-4799/providers/Microsoft.Sql/servers/sqlcrudtest-6440/administrators/ActiveDirectory", + "name": "ActiveDirectory", + "type": "Microsoft.Sql/servers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "azureADOnlyAuthentication": true + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/CancelManagedInstanceOperation.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/CancelManagedInstanceOperation.json new file mode 100644 index 000000000000..0892244a049d --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/CancelManagedInstanceOperation.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "managedInstanceName": "sqlcrudtest-4645", + "operationId": "11111111-1111-1111-1111-111111111111", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/CheckNameAvailabilityServerAlreadyExists.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/CheckNameAvailabilityServerAlreadyExists.json new file mode 100644 index 000000000000..720ca1e6ae28 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/CheckNameAvailabilityServerAlreadyExists.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "api-version": "2015-05-01-preview", + "parameters": { + "name": "server1", + "type": "Microsoft.Sql/servers" + } + }, + "responses": { + "200": { + "body": { + "name": "server1", + "available": false, + "reason": "AlreadyExists", + "message": "Specified server name is already used" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/CheckNameAvailabilityServerAvailable.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/CheckNameAvailabilityServerAvailable.json new file mode 100644 index 000000000000..233d5552e080 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/CheckNameAvailabilityServerAvailable.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "api-version": "2015-05-01-preview", + "parameters": { + "name": "server1", + "type": "Microsoft.Sql/servers" + } + }, + "responses": { + "200": { + "body": { + "name": "server1", + "available": true + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/CheckNameAvailabilityServerInvalid.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/CheckNameAvailabilityServerInvalid.json new file mode 100644 index 000000000000..0f50fc3c58ae --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/CheckNameAvailabilityServerInvalid.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "api-version": "2015-05-01-preview", + "parameters": { + "name": "SERVER1", + "type": "Microsoft.Sql/servers" + } + }, + "responses": { + "200": { + "body": { + "name": "SERVER1", + "available": false, + "reason": "Invalid", + "message": "Specified server name contains unsupported characters or is too long. Server name must be no longer than 63 characters long, contain only lower-case characters or digits, cannot contain '.' or '_' characters and can't start or end with '-' character." + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/CreateOrUpdateWorkloadClassifierMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/CreateOrUpdateWorkloadClassifierMax.json index d89f98a2151c..430ff85d6a46 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/CreateOrUpdateWorkloadClassifierMax.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/CreateOrUpdateWorkloadClassifierMax.json @@ -51,4 +51,4 @@ }, "202": {} } -} \ No newline at end of file +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/CreateOrUpdateWorkloadClassifierMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/CreateOrUpdateWorkloadClassifierMin.json index 296e14b01fdc..8ed18b6b4979 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/CreateOrUpdateWorkloadClassifierMin.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/CreateOrUpdateWorkloadClassifierMin.json @@ -46,4 +46,4 @@ }, "202": {} } -} \ No newline at end of file +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/CreateOrUpdateWorkloadGroupMax.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/CreateOrUpdateWorkloadGroupMax.json index 103e231c1edc..2da52a4d965e 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/CreateOrUpdateWorkloadGroupMax.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/CreateOrUpdateWorkloadGroupMax.json @@ -50,4 +50,4 @@ }, "202": {} } -} \ No newline at end of file +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/CreateOrUpdateWorkloadGroupMin.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/CreateOrUpdateWorkloadGroupMin.json index 01253614cba1..13e147257dc3 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/CreateOrUpdateWorkloadGroupMin.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/CreateOrUpdateWorkloadGroupMin.json @@ -47,4 +47,4 @@ }, "202": {} } -} \ No newline at end of file +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/DeleteWorkloadGroup.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/DeleteWorkloadGroup.json index 28c1a47ba1a7..49c19d187b34 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/DeleteWorkloadGroup.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/DeleteWorkloadGroup.json @@ -4,7 +4,7 @@ "resourceGroupName": "Default-SQL-SouthEastAsia", "serverName": "testsvr", "databaseName": "testdb", - "workloadGroupName": "wlm_workloadgroup", + "workloadGroupName": "wlm_workloadgroup", "api-version": "2019-06-01-preview" }, "responses": { diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/DisableAzureADOnlyAuthUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/DisableAzureADOnlyAuthUpdate.json new file mode 100644 index 000000000000..91bf39fc96a1 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/DisableAzureADOnlyAuthUpdate.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-4799", + "serverName": "sqlcrudtest-6440", + "api-version": "2019-06-01-preview", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-4799/providers/Microsoft.Sql/servers/sqlcrudtest-6440/administrators/ActiveDirectory", + "name": "ActiveDirectory", + "type": "Microsoft.Sql/servers/administrators", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "d6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "azureADOnlyAuthentication": false + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/GetManagedInstanceOperation.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/GetManagedInstanceOperation.json new file mode 100644 index 000000000000..9f390521b5cb --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/GetManagedInstanceOperation.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "managedInstanceName": "sqlcrudtest-4645", + "operationId": "00000000-1111-2222-3333-444444444444", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "properties": { + "managedInstanceName": "sqlcrudtest-4645", + "operation": "UpsertManagedServer", + "operationFriendlyName": "UPDATE MANAGED SERVER", + "percentComplete": 100, + "startTime": "2019-12-06T11:08:44.49Z", + "state": "Cancelled", + "isCancellable": false + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/managedInstances/sqlcrudtest-4645/operations/11111111-1111-1111-1111-111111111111", + "name": "11111111-1111-1111-1111-111111111111", + "type": "Microsoft.Sql/managedInstances/operations" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/ListManagedInstanceOperations.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/ListManagedInstanceOperations.json new file mode 100644 index 000000000000..82409de378c6 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/ListManagedInstanceOperations.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "managedInstanceName": "sqlcrudtest-4645", + "api-version": "2018-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "properties": { + "managedInstanceName": "sqlcrudtest-4645", + "operation": "UpsertManagedServer", + "operationFriendlyName": "UPDATE MANAGED SERVER", + "percentComplete": 100, + "startTime": "2019-12-06T11:08:44.49Z", + "state": "Cancelled", + "isCancellable": false + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/managedInstances/sqlcrudtest-4645/operations/11111111-1111-1111-1111-111111111111", + "name": "11111111-1111-1111-1111-111111111111", + "type": "Microsoft.Sql/managedInstances/operations" + }, + { + "properties": { + "managedInstanceName": "sqlcrudtest-4645", + "operation": "UpsertManagedServer", + "operationFriendlyName": "UPDATE MANAGED SERVER", + "percentComplete": 50, + "startTime": "2019-12-06T11:08:44.49Z", + "state": "InProgress", + "isCancellable": true + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/managedInstances/sqlcrudtest-4645/operations/22222222-2222-2222-2222-222222222222", + "name": "22222222-2222-2222-2222-222222222222", + "type": "Microsoft.Sql/managedInstances/operations" + }, + { + "properties": { + "managedInstanceName": "sqlcrudtest-4645", + "operation": "UpsertManagedServer", + "operationFriendlyName": "UPDATE MANAGED SERVER", + "percentComplete": 100, + "startTime": "2019-12-06T14:48:34.583Z", + "state": "Failed", + "errorCode": 45157, + "errorDescription": "Server 'sqlcrudtest-4645' is busy with another operation. Please try your operation later.", + "errorSeverity": 16, + "isUserError": true, + "isCancellable": false + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/managedInstances/sqlcrudtest-4645/operations/33333333-3333-3333-3333-333333333333", + "name": "33333333-3333-3333-3333-333333333333", + "type": "Microsoft.Sql/managedInstances/operations" + }, + { + "properties": { + "managedInstanceName": "sqlcrudtest-4645", + "operation": "MakeAllManagedDatabasesAccessible", + "operationFriendlyName": "MAKE ALL MANAGED DBS ACCESSIBLE", + "percentComplete": 100, + "startTime": "2017-06-01T09:00:08.10Z", + "state": "Succeeded" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/managedInstances/sqlcrudtest-4645/operations/44444444-4444-4444-4444-444444444444", + "name": "44444444-4444-4444-4444-444444444444", + "type": "Microsoft.Sql/managedInstances/operations" + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/ManagedDatabaseCreateRestoreLtrBackup.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/ManagedDatabaseCreateRestoreLtrBackup.json new file mode 100644 index 000000000000..4e997a77d0d4 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/ManagedDatabaseCreateRestoreLtrBackup.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "managedInstance", + "databaseName": "managedDatabase", + "api-version": "2019-06-01-preview", + "parameters": { + "properties": { + "createMode": "RestoreExternalBackup", + "storageContainerUri": "https://myaccountname.blob.core.windows.net/backups", + "storageContainerSasToken": "sv=2015-12-11&sr=c&sp=rl&sig=1234", + "collation": "SQL_Latin1_General_CP1_CI_AS" + }, + "location": "southeastasia" + } + }, + "responses": { + "200": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/testsvr/databases/testdb1", + "name": "testdb1", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "status": "Online", + "creationDate": "2017-06-07T04:41:33.937Z", + "defaultSecondaryLocation": "North Europe" + }, + "type": "Microsoft.Sql/managedInstances/databases" + } + }, + "201": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "location": "southeastasia", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/testsvr/databases/testdb2", + "name": "testdb2", + "properties": { + "collation": "SQL_Latin1_General_CP1_CI_AS", + "status": "Online", + "creationDate": "2017-06-07T04:41:33.937Z", + "defaultSecondaryLocation": "North Europe" + }, + "type": "Microsoft.Sql/managedInstances/databases" + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/ManagedDatabaseRestoreDetails.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/ManagedDatabaseRestoreDetails.json new file mode 100644 index 000000000000..e9c8c6fa685c --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/ManagedDatabaseRestoreDetails.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "managedInstanceName": "managedInstance", + "databaseName": "testdb", + "restoreDetailsName": "Default", + "api-version": "2019-06-01-preview", + "parameters": { + "tags": { + "tagKey1": "TagValue1" + } + } + }, + "responses": { + "200": { + "body": { + "properties": { + "status": "Restoring", + "currentRestoringFileName": "full_0", + "percentCompleted": 0.0, + "unrestorableFiles": [], + "numberOfFilesDetected": 26, + "lastUploadedFileName": "log2_3", + "lastUploadedFileTime": "2018-06-15T11:38:33Z" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Sql/managedInstances/managedInstance/databases/testdb/restoreDetails/current", + "name": "current", + "type": "Microsoft.Sql/managedInstances/databases/restoreDetails" + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/ServerCreate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/ServerCreate.json new file mode 100644 index 000000000000..f57815d10ee6 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/ServerCreate.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "serverName": "sqlcrudtest-4645", + "api-version": "2019-06-01-preview", + "parameters": { + "properties": { + "administratorLogin": "dummylogin", + "administratorLoginPassword": "Un53cuRE!" + }, + "location": "Japan East" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645", + "name": "sqlcrudtest-4645", + "type": "Microsoft.Sql/servers", + "location": "japaneast", + "kind": "v12.0", + "properties": { + "fullyQualifiedDomainName": "sqlcrudtest-4645.database.windows.net", + "administratorLogin": "dummylogin", + "version": "12.0", + "state": "Ready", + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645", + "name": "sqlcrudtest-4645", + "type": "Microsoft.Sql/servers", + "location": "japaneast", + "kind": "v12.0", + "properties": { + "fullyQualifiedDomainName": "sqlcrudtest-4645.database.windows.net", + "administratorLogin": "dummylogin", + "version": "12.0", + "state": "Ready", + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/ServerDelete.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/ServerDelete.json new file mode 100644 index 000000000000..4227be1f5631 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/ServerDelete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "serverName": "sqlcrudtest-6661", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/ServerGet.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/ServerGet.json new file mode 100644 index 000000000000..0e1f013dc0de --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/ServerGet.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "serverName": "sqlcrudtest-4645", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645", + "name": "sqlcrudtest-4645", + "type": "Microsoft.Sql/servers", + "location": "japaneast", + "kind": "v12.0", + "properties": { + "fullyQualifiedDomainName": "sqlcrudtest-4645.database.windows.net", + "administratorLogin": "dummylogin", + "version": "12.0", + "state": "Ready", + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/ServerList.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/ServerList.json new file mode 100644 index 000000000000..0ec3645828c9 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/ServerList.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645", + "name": "sqlcrudtest-4645", + "type": "Microsoft.Sql/servers", + "location": "japaneast", + "kind": "v12.0", + "properties": { + "fullyQualifiedDomainName": "sqlcrudtest-4645.database.windows.net", + "administratorLogin": "dummylogin", + "version": "12.0", + "state": "Ready", + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-6661", + "name": "sqlcrudtest-6661", + "type": "Microsoft.Sql/servers", + "location": "japaneast", + "kind": "v12.0", + "properties": { + "fullyQualifiedDomainName": "sqlcrudtest-6661.database.windows.net", + "administratorLogin": "dummylogin", + "version": "12.0", + "state": "Ready", + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/ServerListByResourceGroup.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/ServerListByResourceGroup.json new file mode 100644 index 000000000000..85c9caac2a56 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/ServerListByResourceGroup.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645", + "name": "sqlcrudtest-4645", + "type": "Microsoft.Sql/servers", + "location": "japaneast", + "kind": "v12.0", + "properties": { + "fullyQualifiedDomainName": "sqlcrudtest-4645.database.windows.net", + "administratorLogin": "dummylogin", + "version": "12.0", + "state": "Ready", + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-6661", + "name": "sqlcrudtest-6661", + "type": "Microsoft.Sql/servers", + "location": "japaneast", + "kind": "v12.0", + "properties": { + "fullyQualifiedDomainName": "sqlcrudtest-6661.database.windows.net", + "administratorLogin": "dummylogin", + "version": "12.0", + "state": "Ready", + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + ] + } + } + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/ServerUpdate.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/ServerUpdate.json new file mode 100644 index 000000000000..08e1b3c01a55 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/examples/ServerUpdate.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "serverName": "sqlcrudtest-4645", + "api-version": "2019-06-01-preview", + "parameters": { + "properties": { + "administratorLogin": "dummylogin", + "administratorLoginPassword": "Un53cuRE!" + } + } + }, + "responses": { + "200": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645", + "name": "sqlcrudtest-4645", + "type": "Microsoft.Sql/servers", + "location": "japaneast", + "kind": "v12.0", + "properties": { + "fullyQualifiedDomainName": "sqlcrudtest-4645.database.windows.net", + "administratorLogin": "dummylogin", + "version": "12.0", + "state": "Ready", + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Sql/servers/sqlcrudtest-4645/privateEndpointConnections/private-endpoint-name-00000000-1111-2222-3333-444444444444", + "properties": { + "provisioningState": "Ready", + "privateEndpoint": { + "id": "/subscriptions/55555555-6666-7777-8888-999999999999/resourceGroups/Default-Network/providers/Microsoft.Network/privateEndpoints/private-endpoint-name" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + }, + "202": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/managedDatabases.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/managedDatabases.json index e31bd7d07691..195dd2b4ce58 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/managedDatabases.json +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/managedDatabases.json @@ -16,6 +16,62 @@ "application/json" ], "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases/{databaseName}/restoreDetails/{restoreDetailsName}": { + "get": { + "tags": [ + "ManagedDatabaseRestoreDetails" + ], + "description": "Gets managed database restore details.", + "operationId": "ManagedDatabaseRestoreDetails_Get", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "#/parameters/DatabaseNameParameter" + }, + { + "name": "restoreDetailsName", + "in": "path", + "description": "The name of the restore details to retrieve.", + "required": true, + "type": "string", + "enum": [ + "Default" + ], + "x-ms-enum": { + "name": "RestoreDetailsName", + "modelAsString": true + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved restore details.", + "schema": { + "$ref": "#/definitions/ManagedDatabaseRestoreDetailsResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 MissingThumbprint - Can not find server certificate.\n\n * 400 PartiallyContainedDatabaseUnsupported - \"Backup for a partially contained database is not supported.\"\n\n * 400 RequiredBackupIsNotLastRestored - Migration cannot be completed because provided backup file name is not the name of the last backup file that is restored.\n\n * 400 IncompatiblePhysicalLayoutTooFewDataFiles - Database backup contains incompatible physical layout. No data files are found in the backup.\n\n * 400 IncompatiblePhysicalLayoutNonOnlineDataFilesExist - Database backup contains incompatible physical layout. Non-online data files exist.\n\n * 400 IncompatiblePhysicalLayoutWrongNumberOfLogFiles - Database backup contains incompatible physical layout. Multiple log files are not supported.\n\n * 400 IncompatiblePhysicalLayoutNonOnlineLogFilesExist - Database backup contains incompatible physical layout. Non-online log files exist.\n\n * 400 IncompatiblePhysicalLayoutTooManyNonDataLogFiles - Database backup contains incompatible physical layout. Too many non-data/log files.\n\n * 400 BackupSetNotFound - \"No backups were found to restore the database. Please contact support to restore the database.\n\n * 400 ExternalBackupAlreadySignaledToComplete - The restore request has already been signaled to complete.\n\n * 400 FullBackupNotFound - Full backup can not be found.\n\n * 400 ExternalBackupRestoreHasNotBeenStarted - The restore request can only be completed once the restore has started.\n\n * 400 RestoreFromStripedBackupsNotEnabled - Restoring from striped backups is not supported.\n\n * 400 BrokenRestorePlanNoFullBackup - The restore plan is broken because there is no full backup.\n\n * 400 BrokenRestorePlanWrongLogBackupLSN - The restore plan is broken because firstLsn of current log backup is not <= lastLsn of next log backup.\n\n * 400 BrokenRestorePlanWrongDiffBackupLSN - The restore plan is broken because firstLsn of diff backup is not >= firstLsn of full backup.\n\n * 400 BrokenRestorePlanGapInLogBackups - The restore plan is broken because firstLsn of current log backup is not equal to lastLsn of prev log backup.\n\n * 400 XtpInitializedDuringRestore - Memory-optimized filegroup must be empty in order to be restored on General Purpose tier of SQL Database Managed Instance.\n\n * 400 ManagedInstanceStorageLimitHit - The managed instance has reached its storage limit.\n\n * 400 ManagedDatabaseNotInRestoringState - Managed database is not in Restoring state." + } + }, + "x-ms-examples": { + "Managed database restore details.": { + "$ref": "./examples/ManagedDatabaseRestoreDetails.json" + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/databases": { "get": { "tags": [ @@ -139,7 +195,7 @@ } }, "default": { - "description": "*** Error Responses: ***\n\n * 400 PitrPointInTimeInvalid - The point in time {0} is not valid. Valid point in time range from {1} days early to now and not before source server creation time.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 InvalidBackupRetentionPeriod - The retention days of {0} is not a valid configuration. Valid backup retention in days must be between {1} and {2}\n\n * 400 ManagedDatabaseNameInUse - Database '{0}' already exists. Choose a different database name.\n\n * 400 NoMoreSpaceInManagedInstance - The managed instance has reached its storage limit. The storage usage for the managed instance cannot exceed (%d) MBs.\n\n * 400 ManagedInstanceUpdateSloInProgress - \"The operation could not be completed because a service tier change is in progress for managed instance '{0}.' Please wait for the operation in progress to complete and try again.\"\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\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 PasswordNotComplex - The provided password is not complex enough.\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 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 TokenTooLong - The provided token is too long.\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 InvalidCollation - Collation is not recognized by the server.\n\n * 400 ServerNotFound - The requested server was not found.\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 DatabaseNumberLimitReached - Maximum number of databases for SQL Database Managed Instance reached.\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 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped 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 MissingSourceDatabaseId - Missing source database identifier.\n\n * 400 MissingRestorePointInTime - Missing restore point in time\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\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.\n\n * 404 CannotFindServerCertificateWithThumbprint - Cannot find server certificate with thumbprint '{0}'. Please use PowerShell Cmdlet 'Add-AzureRmSqlManagedInstanceTransparentDataEncryptionCertificate' to create the certificate.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 RestoreSourceDatabaseNotFound - Could not find database '{0}' at time '{1}' that can be restored.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 ConflictingDatabaseOperation - There is already some operation on the database and the current operation should wait till it is done.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ManagementServiceDatabaseBusy - Database '{0}' is busy with another operation. Please try your operation later.\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 * 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 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows\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." + "description": "*** Error Responses: ***\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 ManagedInstanceUpdateSloInProgress - \"The operation could not be completed because a service tier change is in progress for managed instance '{0}.' Please wait for the operation in progress to complete and try again.\"\n\n * 400 DatabaseNumberLimitReached - Maximum number of databases for SQL Database Managed Instance reached.\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 InvalidCollation - Collation is not recognized by the server.\n\n * 400 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 PitrPointInTimeInvalid - The point in time {0} is not valid. Valid point in time range from {1} days early to now and not before source server creation time.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 ManagedDatabaseNameInUse - Database '{0}' already exists. Choose a different database name.\n\n * 400 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\n\n * 400 NoMoreSpaceInManagedInstance - The managed instance has reached its storage limit. The storage usage for the managed instance cannot exceed (%d) MBs.\n\n * 400 InvalidBackupRetentionPeriod - The retention days of {0} is not a valid configuration. Valid backup retention in days must be between {1} and {2}\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 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 ServerNotFound - The requested server was not found.\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 SubscriptionNotFound - The requested subscription was not found.\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 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 InvalidRestorableDroppedDatabaseId - Invalid restorable dropped 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 MissingSourceDatabaseId - Missing source database identifier.\n\n * 400 MissingRestorePointInTime - Missing restore point in time\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 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 InvalidLongTermRetentionManagedInstanceBackupId - Invalid long term retention backup identifier for Managed Instances.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 ResourceNotFound - The requested resource was not found.\n\n * 404 ServerNotInSubscription - Specified server does not exist on the specified subscription.\n\n * 404 RestoreSourceDatabaseNotFound - Could not find database '{0}' at time '{1}' that can be restored.\n\n * 404 ServerNotInSubscriptionResourceGroup - Specified server does not exist in the specified resource group and subscription.\n\n * 404 CannotFindServerCertificateWithThumbprint - Cannot find server certificate with thumbprint '{0}'. Please use PowerShell Cmdlet 'Add-AzureRmSqlManagedInstanceTransparentDataEncryptionCertificate' to create the certificate.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 CannotFindObject - Cannot find the object because it does not exist or you do not have permissions\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ManagementServiceDatabaseBusy - Database '{0}' is busy with another operation. Please try your operation later.\n\n * 409 ConflictingDatabaseOperation - There is already some operation on the database and the current operation should wait till it is done.\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 * 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 ActivateOrDeactivateWorkflowThrottling - Activation or deactivation workflow failed because there are too many concurrent workflows\n\n * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources.\n\n * 503 DatabaseUnavailable - The operation failed because the database is unavailable.\n\n * 504 RequestTimeout - Service request exceeded the allowed timeout." }, "202": { "description": "Accepted" @@ -167,6 +223,9 @@ }, "Creates a new managed database from restoring a geo-replicated backup": { "$ref": "./examples/ManagedDatabaseCreateRecovery.json" + }, + "Creates a new managed database from restoring a long term retention backup": { + "$ref": "./examples/ManagedDatabaseCreateRestoreLtrBackup.json" } } }, @@ -367,6 +426,95 @@ } }, "definitions": { + "ManagedDatabaseRestoreDetailsProperties": { + "description": "The managed database's restore details properties.", + "type": "object", + "properties": { + "status": { + "description": "Restore status.", + "type": "string", + "readOnly": true + }, + "currentRestoringFileName": { + "description": "Current restoring file name.", + "type": "string", + "readOnly": true + }, + "lastRestoredFileName": { + "description": "Last restored file name.", + "type": "string", + "readOnly": true + }, + "lastRestoredFileTime": { + "format": "date-time", + "description": "Last restored file time.", + "type": "string", + "readOnly": true + }, + "percentCompleted": { + "format": "double", + "description": "Percent completed.", + "type": "number", + "readOnly": true + }, + "unrestorableFiles": { + "description": "List of unrestorable files.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "numberOfFilesDetected": { + "format": "int64", + "description": "Number of files detected.", + "type": "integer", + "readOnly": true + }, + "lastUploadedFileName": { + "description": "Last uploaded file name.", + "type": "string", + "readOnly": true + }, + "lastUploadedFileTime": { + "format": "date-time", + "description": "Last uploaded file time.", + "type": "string", + "readOnly": true + }, + "blockReason": { + "description": "The reason why restore is in Blocked state.", + "type": "string", + "readOnly": true + } + } + }, + "ProxyResource": { + "description": "ARM proxy resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": {} + }, + "ManagedDatabaseRestoreDetailsResult": { + "description": "A managed database restore details.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ManagedDatabaseRestoreDetailsProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, "ManagedDatabaseListResult": { "description": "A list of managed databases.", "type": "object", @@ -463,7 +611,8 @@ "Default", "RestoreExternalBackup", "PointInTimeRestore", - "Recovery" + "Recovery", + "RestoreLongTermRetentionBackup" ], "type": "string", "x-ms-enum": { @@ -513,6 +662,13 @@ "x-ms-mutability": [ "create" ] + }, + "longTermRetentionBackupResourceId": { + "description": "The name of the Long Term Retention backup to be used for restore of this managed database.", + "type": "string", + "x-ms-mutability": [ + "create" + ] } } }, diff --git a/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/managedInstanceOperations.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/managedInstanceOperations.json new file mode 100644 index 000000000000..7b425988000e --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/managedInstanceOperations.json @@ -0,0 +1,404 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-06-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/managedInstances/{managedInstanceName}/operations/{operationId}/cancel": { + "post": { + "tags": [ + "ManagedInstanceOperations" + ], + "description": "Cancels the asynchronous operation on the managed instance.", + "operationId": "ManagedInstanceOperations_Cancel", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request for cancel has been executed successfully." + }, + "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 OperationIdNotFound - The operation with Id does not exist.\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\n\n * 405 CannotCancelOperation - The management operation is in a state that cannot be cancelled.\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." + } + }, + "x-ms-examples": { + "Cancel the managed instance management operation": { + "$ref": "./examples/CancelManagedInstanceOperation.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/operations": { + "get": { + "tags": [ + "ManagedInstanceOperations" + ], + "description": "Gets a list of operations performed on the managed instance.", + "operationId": "ManagedInstanceOperations_ListByManagedInstance", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "The request for getting managed instance operations has been executed successfully.", + "schema": { + "$ref": "#/definitions/ManagedInstanceOperationListResult" + } + }, + "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": { + "List the managed instance management operations": { + "$ref": "./examples/ListManagedInstanceOperations.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/operations/{operationId}": { + "get": { + "tags": [ + "ManagedInstanceOperations" + ], + "description": "Gets a management operation on a managed instance.", + "operationId": "ManagedInstanceOperations_Get", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ManagedInstanceNameParameter" + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "format": "uuid" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified managed instance operation.", + "schema": { + "$ref": "#/definitions/ManagedInstanceOperation" + } + }, + "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 the managed instance management operation": { + "$ref": "./examples/GetManagedInstanceOperation.json" + } + } + } + } + }, + "definitions": { + "ManagedInstanceOperationListResult": { + "description": "The response to a list managed instance operations request", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedInstanceOperation" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ManagedInstanceOperationProperties": { + "description": "The properties of a managed instance operation.", + "type": "object", + "properties": { + "managedInstanceName": { + "description": "The name of the managed instance the operation is being performed on.", + "type": "string", + "readOnly": true + }, + "operation": { + "description": "The name of operation.", + "type": "string", + "readOnly": true + }, + "operationFriendlyName": { + "description": "The friendly name of operation.", + "type": "string", + "readOnly": true + }, + "percentComplete": { + "format": "int32", + "description": "The percentage of the operation completed.", + "type": "integer", + "readOnly": true + }, + "startTime": { + "format": "date-time", + "description": "The operation start time.", + "type": "string", + "readOnly": true + }, + "state": { + "description": "The operation state.", + "enum": [ + "Pending", + "InProgress", + "Succeeded", + "Failed", + "CancelInProgress", + "Cancelled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ManagementOperationState", + "modelAsString": true + } + }, + "errorCode": { + "format": "int32", + "description": "The operation error code.", + "type": "integer", + "readOnly": true + }, + "errorDescription": { + "description": "The operation error description.", + "type": "string", + "readOnly": true + }, + "errorSeverity": { + "format": "int32", + "description": "The operation error severity.", + "type": "integer", + "readOnly": true + }, + "isUserError": { + "description": "Whether or not the error is a user error.", + "type": "boolean", + "readOnly": true + }, + "estimatedCompletionTime": { + "format": "date-time", + "description": "The estimated completion time of the operation.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The operation description.", + "type": "string", + "readOnly": true + }, + "isCancellable": { + "description": "Whether the operation can be cancelled.", + "type": "boolean", + "readOnly": true + } + } + }, + "Resource": { + "description": "ARM resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Resource name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource type.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "ProxyResource": { + "description": "ARM proxy resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": {} + }, + "ManagedInstanceOperation": { + "description": "A managed instance operation.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/ManagedInstanceOperationProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + } + }, + "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" + } + }, + "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/2019-06-01-preview/servers.json b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/servers.json new file mode 100644 index 000000000000..1eda90f1b705 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/preview/2019-06-01-preview/servers.json @@ -0,0 +1,788 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-06-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": { + "get": { + "tags": [ + "Servers" + ], + "description": "Gets a list of servers in a resource groups.", + "operationId": "Servers_ListByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of servers.", + "schema": { + "$ref": "#/definitions/ServerListResult" + } + }, + "default": { + "description": "*** Error Responses: ***" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List servers by resource group": { + "$ref": "./examples/ServerListByResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}": { + "get": { + "tags": [ + "Servers" + ], + "description": "Gets a server.", + "operationId": "Servers_Get", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the specified server.", + "schema": { + "$ref": "#/definitions/Server" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 ResourceNotFound - The requested resource was not found." + } + }, + "x-ms-examples": { + "Get server": { + "$ref": "./examples/ServerGet.json" + } + } + }, + "put": { + "tags": [ + "Servers" + ], + "description": "Creates or updates a server.", + "operationId": "Servers_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested server resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/Server" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the server.", + "schema": { + "$ref": "#/definitions/Server" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 NameAlreadyExists - The provided name already exists.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 InvalidLoginName - The provided login name is invalid.\n\n * 400 InvalidUsername - Supplied user name contains invalid characters.\n\n * 400 PasswordTooShort - The provided password is too short\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 PasswordTooLong - The provided password is too long.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 ServerNotFound - The requested server was not found.\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 InvalidMinimalTlsVersion - Invalid minimal TLS version.\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 OperationIdNotFound - The operation with Id does not exist.\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 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ServerQuotaExceeded - Server cannot be added to a subscription because it will exceed quota.\n\n * 409 ServerAlreadyExists - Duplicate server name.\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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\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": "Accepted" + }, + "201": { + "description": "Successfully created the server.", + "schema": { + "$ref": "#/definitions/Server" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create server": { + "$ref": "./examples/ServerCreate.json" + } + } + }, + "delete": { + "tags": [ + "Servers" + ], + "description": "Deletes a server.", + "operationId": "Servers_Delete", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully deleted the server." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\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 OperationIdNotFound - The operation with Id does not exist.\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 ConflictingServerOperation - An operation is currently in progress for the server.\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 * 503 TooManyRequests - Requests beyond max requests that can be processed by available resources." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "The specified server does not exist." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Delete server": { + "$ref": "./examples/ServerDelete.json" + } + } + }, + "patch": { + "tags": [ + "Servers" + ], + "description": "Updates a server.", + "operationId": "Servers_Update", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "parameters", + "in": "body", + "description": "The requested server resource state.", + "required": true, + "schema": { + "$ref": "#/definitions/ServerUpdate" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated the server.", + "schema": { + "$ref": "#/definitions/Server" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 NameAlreadyExists - The provided name already exists.\n\n * 400 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\n\n * 400 InvalidLoginName - The provided login name is invalid.\n\n * 400 InvalidUsername - Supplied user name contains invalid characters.\n\n * 400 PasswordTooShort - The provided password is too short\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 PasswordTooLong - The provided password is too long.\n\n * 400 PasswordNotComplex - The provided password is not complex enough.\n\n * 400 SubscriptionNotFound - The requested subscription was not found.\n\n * 400 InvalidParameterValue - An invalid value was given to a parameter.\n\n * 400 InvalidLocation - An invalid location was specified.\n\n * 400 InvalidServerName - Invalid server name specified.\n\n * 400 InvalidIdentifier - The identifier contains NULL or an invalid unicode character.\n\n * 400 TokenTooLong - The provided token is too long.\n\n * 400 ServerNotFound - The requested server was not found.\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 InvalidMinimalTlsVersion - Invalid minimal TLS version.\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 OperationIdNotFound - The operation with Id does not exist.\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 ConflictingServerOperation - An operation is currently in progress for the server.\n\n * 409 SubscriptionDisabled - Subscription is disabled.\n\n * 409 ServerQuotaExceeded - Server cannot be added to a subscription because it will exceed quota.\n\n * 409 ServerAlreadyExists - Duplicate server name.\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 * 429 ConflictingSubscriptionOperation - An operation is currently in progress for the subscription.\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": "Accepted" + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a server": { + "$ref": "./examples/ServerUpdate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Sql/servers": { + "get": { + "tags": [ + "Servers" + ], + "description": "Gets a list of all servers in the subscription.", + "operationId": "Servers_List", + "parameters": [ + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the list of servers.", + "schema": { + "$ref": "#/definitions/ServerListResult" + } + }, + "default": { + "description": "*** Error Responses: ***" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List servers": { + "$ref": "./examples/ServerList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Sql/checkNameAvailability": { + "post": { + "tags": [ + "Servers" + ], + "description": "Determines whether a resource can be created with the specified name.", + "operationId": "Servers_CheckNameAvailability", + "parameters": [ + { + "name": "parameters", + "in": "body", + "description": "The name availability request parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityRequest" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully completed the availability check.", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityResponse" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidNameAvailabilityRequest - The check name availability request is invalid.\n\n * 400 UnknownNameType - Unknown resource type specified for a subscription level name availability check." + } + }, + "x-ms-examples": { + "Check for a server name that already exists": { + "$ref": "./examples/CheckNameAvailabilityServerAlreadyExists.json" + }, + "Check for a server name that is available": { + "$ref": "./examples/CheckNameAvailabilityServerAvailable.json" + }, + "Check for a server name that is invalid": { + "$ref": "./examples/CheckNameAvailabilityServerInvalid.json" + } + } + } + } + }, + "definitions": { + "ServerListResult": { + "description": "A list of servers.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/Server" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "ResourceIdentity": { + "description": "Azure Active Directory identity configuration for a resource.", + "type": "object", + "properties": { + "principalId": { + "format": "uuid", + "description": "The Azure Active Directory principal id.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The identity type. Set this to 'SystemAssigned' in order to automatically create and assign an Azure Active Directory principal for the resource.", + "enum": [ + "SystemAssigned" + ], + "type": "string", + "x-ms-enum": { + "name": "IdentityType", + "modelAsString": true + } + }, + "tenantId": { + "format": "uuid", + "description": "The Azure Active Directory tenant id.", + "type": "string", + "readOnly": true + } + } + }, + "ServerProperties": { + "description": "The properties of a server.", + "type": "object", + "properties": { + "administratorLogin": { + "description": "Administrator username for the server. Once created it cannot be changed.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "administratorLoginPassword": { + "description": "The administrator login password (required for server creation).", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "version": { + "description": "The version of the server.", + "type": "string" + }, + "state": { + "description": "The state of the server.", + "type": "string", + "readOnly": true + }, + "fullyQualifiedDomainName": { + "description": "The fully qualified domain name of the server.", + "type": "string", + "readOnly": true + }, + "privateEndpointConnections": { + "description": "List of private endpoint connections on a server", + "type": "array", + "items": { + "$ref": "#/definitions/ServerPrivateEndpointConnection" + }, + "readOnly": true + }, + "minimalTlsVersion": { + "description": "Minimal TLS version. Allowed values: '1.0', '1.1', '1.2'", + "type": "string" + }, + "publicNetworkAccess": { + "description": "Whether or not public endpoint access is allowed for this server. Value is optional but if passed in, must be 'Enabled' or 'Disabled'", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "ServerPublicNetworkAccess", + "modelAsString": true + } + } + } + }, + "ServerPrivateEndpointConnection": { + "description": "A private endpoint connection under a server", + "type": "object", + "properties": { + "id": { + "description": "Resource ID.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Private endpoint connection properties", + "readOnly": true + } + } + }, + "Resource": { + "description": "ARM resource.", + "type": "object", + "properties": { + "id": { + "description": "Resource ID.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Resource name.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Resource type.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "PrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpointProperty", + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionStateProperty", + "description": "Connection state of the private endpoint connection." + }, + "provisioningState": { + "description": "State of the private endpoint connection.", + "enum": [ + "Approving", + "Ready", + "Dropping", + "Failed", + "Rejecting" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PrivateEndpointProvisioningState", + "modelAsString": true + } + } + } + }, + "PrivateEndpointProperty": { + "type": "object", + "properties": { + "id": { + "description": "Resource id of the private endpoint.", + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "PrivateLinkServiceConnectionStateProperty": { + "required": [ + "status", + "description" + ], + "type": "object", + "properties": { + "status": { + "description": "The private link service connection status.", + "enum": [ + "Approved", + "Pending", + "Rejected", + "Disconnected" + ], + "type": "string", + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStateStatus", + "modelAsString": true + } + }, + "description": { + "description": "The private link service connection description.", + "type": "string" + }, + "actionsRequired": { + "description": "The actions required for private link service connection.", + "enum": [ + "None" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "PrivateLinkServiceConnectionStateActionsRequire", + "modelAsString": true + } + } + } + }, + "TrackedResource": { + "description": "ARM tracked top level resource.", + "required": [ + "location" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "location": { + "description": "Resource location.", + "type": "string", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "Server": { + "description": "An Azure SQL Database server.", + "required": [ + "location" + ], + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "properties": { + "identity": { + "$ref": "#/definitions/ResourceIdentity", + "description": "The Azure Active Directory identity of the server.", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "kind": { + "description": "Kind of sql server. This is metadata used for the Azure portal experience.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/ServerProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ServerUpdate": { + "description": "An update request for an Azure SQL Database server.", + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/ServerProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + }, + "tags": { + "description": "Resource tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "CheckNameAvailabilityRequest": { + "description": "A request to check whether the specified name for a resource is available.", + "required": [ + "name", + "type" + ], + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "type": { + "enum": [ + "Microsoft.Sql/servers" + ], + "type": "string", + "x-ms-enum": { + "name": "CheckNameAvailabilityResourceType", + "modelAsString": false + } + } + } + }, + "CheckNameAvailabilityResponse": { + "description": "The result of a name availability check.", + "type": "object", + "properties": { + "name": { + "description": "The name whose availability was checked.", + "type": "string", + "readOnly": true + }, + "available": { + "description": "True if the name is available, otherwise false.", + "type": "boolean", + "readOnly": true + }, + "reason": { + "description": "The reason code explaining why the name is unavailable. Will be undefined if the name is available.", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "CheckNameAvailabilityReason", + "modelAsString": false + } + }, + "message": { + "description": "A message explaining why the name is unavailable. Will be undefined if the name is available.", + "type": "string", + "readOnly": true + } + } + } + }, + "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" + } + }, + "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/stable/2014-04-01/examples/ReplicationLinkGet.json b/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/examples/ReplicationLinkGet.json index e70d68ebbc93..251f145cbf3b 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/examples/ReplicationLinkGet.json +++ b/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/examples/ReplicationLinkGet.json @@ -21,7 +21,7 @@ "role": "Secondary", "partnerRole": "Primary", "replicationMode": "ASYNC", - "startTime": "2017-02-10T01:37:49.153", + "startTime": "2017-02-10T01:37:49.153Z", "percentComplete": 100, "replicationState": "CATCH_UP", "isTerminationAllowed": true diff --git a/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/examples/ReplicationLinkList.json b/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/examples/ReplicationLinkList.json index 735e01de7257..3293ef575bd2 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/examples/ReplicationLinkList.json +++ b/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/examples/ReplicationLinkList.json @@ -22,7 +22,7 @@ "role": "Secondary", "partnerRole": "Primary", "replicationMode": "ASYNC", - "startTime": "2017-02-10T01:44:27.117", + "startTime": "2017-02-10T01:44:27.117Z", "percentComplete": 100, "replicationState": "CATCH_UP", "isTerminationAllowed": true diff --git a/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/examples/ReplicationLinkUnlink.json b/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/examples/ReplicationLinkUnlink.json new file mode 100644 index 000000000000..0b4701fa8353 --- /dev/null +++ b/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/examples/ReplicationLinkUnlink.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-8931", + "serverName": "sqlcrudtest-2137", + "databaseName": "testdb", + "linkId": "f0550bf5-07ce-4270-8e4b-71737975973a", + "api-version": "2014-04-01", + "parameters": { + "forcedTermination": true + } + }, + "responses": { + "202": {}, + "204": {} + } +} diff --git a/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/replicationLinks.json b/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/replicationLinks.json index c80d3c7743f8..c93ce6adc5c5 100644 --- a/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/replicationLinks.json +++ b/specification/sql/resource-manager/Microsoft.Sql/stable/2014-04-01/replicationLinks.json @@ -216,6 +216,66 @@ "x-ms-long-running-operation": true } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/replicationLinks/{linkId}/unlink": { + "post": { + "tags": [ + "DatabaseReplicationLinks" + ], + "operationId": "ReplicationLinks_Unlink", + "description": "Deletes a database replication link in forced or friendly way.", + "x-ms-examples": { + "Delete replication link": { + "$ref": "./examples/ReplicationLinkUnlink.json" + } + }, + "parameters": [ + { + "$ref": "../../../common/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupParameter" + }, + { + "$ref": "#/parameters/ServerNameParameter" + }, + { + "name": "databaseName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the database that has the replication link to be failed over." + }, + { + "name": "linkId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the replication link to be failed over." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/UnlinkParameters" + }, + "description": "The required parameters for unlinking replication link." + } + ], + "responses": { + "204": { + "description": "No Content" + }, + "202": { + "description": "Accepted" + } + }, + "x-ms-long-running-operation": true + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/replicationLinks": { "get": { "tags": [ @@ -387,6 +447,15 @@ } }, "description": "Represents the response to a List database replication link request." + }, + "UnlinkParameters": { + "properties": { + "forcedTermination": { + "type": "boolean", + "description": "Determines whether link will be terminated in a forced or a friendly way." + } + }, + "description": "Represents the parameters for Unlink Replication Link request." } }, "parameters": { diff --git a/specification/sql/resource-manager/readme.md b/specification/sql/resource-manager/readme.md index cd08325204bd..6aaa7bfd7c89 100644 --- a/specification/sql/resource-manager/readme.md +++ b/specification/sql/resource-manager/readme.md @@ -66,7 +66,6 @@ Differences in v3 (compared to v2): ``` yaml $(tag) == 'package-composite-v3' input-file: - Microsoft.Sql/stable/2014-04-01/backups.json -- Microsoft.Sql/stable/2014-04-01/checkNameAvailability.json - Microsoft.Sql/stable/2014-04-01/connectionPolicies.json - Microsoft.Sql/stable/2014-04-01/databaseSecurityAlertPolicies.json - Microsoft.Sql/stable/2014-04-01/dataMasking.json @@ -85,7 +84,6 @@ input-file: - Microsoft.Sql/preview/2015-05-01-preview/failoverGroups.json - Microsoft.Sql/preview/2015-05-01-preview/operations.json - Microsoft.Sql/preview/2015-05-01-preview/serverKeys.json -- Microsoft.Sql/preview/2015-05-01-preview/servers.json - Microsoft.Sql/preview/2015-05-01-preview/syncAgents.json - Microsoft.Sql/preview/2015-05-01-preview/syncGroups.json - Microsoft.Sql/preview/2015-05-01-preview/syncMembers.json @@ -129,15 +127,19 @@ input-file: - 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/managedInstances.json -- Microsoft.Sql/preview/2018-06-01-preview/managedDatabases.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/ServerAzureADAdministrators.json +- Microsoft.Sql/preview/2019-06-01-preview/servers.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/2019-06-01-preview/WorkloadGroups.json - Microsoft.Sql/preview/2019-06-01-preview/WorkloadClassifiers.json +- Microsoft.Sql/preview/2019-06-01-preview/managedDatabases.json +- Microsoft.Sql/preview/2019-06-01-preview/ServerAzureADAdministrators.json +- Microsoft.Sql/preview/2019-06-01-preview/managedInstanceOperations.json # Needed when there is more than one input file override-info: @@ -166,7 +168,6 @@ Differences in v2 (compared to v1): input-file: - Microsoft.Sql/stable/2014-04-01/backups.json - Microsoft.Sql/stable/2014-04-01/capabilities.json -- Microsoft.Sql/stable/2014-04-01/checkNameAvailability.json - Microsoft.Sql/stable/2014-04-01/connectionPolicies.json - Microsoft.Sql/stable/2014-04-01/databases.json - Microsoft.Sql/stable/2014-04-01/databaseSecurityAlertPolicies.json @@ -187,7 +188,6 @@ input-file: - Microsoft.Sql/preview/2015-05-01-preview/failoverGroups.json - Microsoft.Sql/preview/2015-05-01-preview/operations.json - Microsoft.Sql/preview/2015-05-01-preview/serverKeys.json -- Microsoft.Sql/preview/2015-05-01-preview/servers.json - Microsoft.Sql/preview/2015-05-01-preview/syncAgents.json - Microsoft.Sql/preview/2015-05-01-preview/syncGroups.json - Microsoft.Sql/preview/2015-05-01-preview/syncMembers.json @@ -230,14 +230,17 @@ input-file: - 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/managedInstances.json -- Microsoft.Sql/preview/2018-06-01-preview/managedDatabases.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/ServerAzureADAdministrators.json +- Microsoft.Sql/preview/2019-06-01-preview/servers.json +- Microsoft.Sql/preview/2018-06-01-preview/LongTermRetentionManagedInstanceBackups.json +- Microsoft.Sql/preview/2018-06-01-preview/ManagedInstanceLongTermRetentionPolicies.json - Microsoft.Sql/preview/2019-06-01-preview/WorkloadGroups.json - Microsoft.Sql/preview/2019-06-01-preview/WorkloadClassifiers.json +- Microsoft.Sql/preview/2019-06-01-preview/managedDatabases.json +- Microsoft.Sql/preview/2019-06-01-preview/ServerAzureADAdministrators.json # Needed when there is more than one input file override-info: @@ -258,7 +261,6 @@ input-file: - Microsoft.Sql/stable/2014-04-01/backupLongTermRetentionVaults.json - Microsoft.Sql/stable/2014-04-01/backups.json - Microsoft.Sql/stable/2014-04-01/capabilities.json -- Microsoft.Sql/stable/2014-04-01/checkNameAvailability.json - Microsoft.Sql/stable/2014-04-01/connectionPolicies.json - Microsoft.Sql/stable/2014-04-01/databases.json - Microsoft.Sql/stable/2014-04-01/databaseSecurityAlertPolicies.json @@ -279,7 +281,6 @@ input-file: - Microsoft.Sql/preview/2015-05-01-preview/failoverGroups.json - Microsoft.Sql/preview/2015-05-01-preview/operations.json - Microsoft.Sql/preview/2015-05-01-preview/serverKeys.json -- Microsoft.Sql/preview/2015-05-01-preview/servers.json - Microsoft.Sql/preview/2015-05-01-preview/syncAgents.json - Microsoft.Sql/preview/2015-05-01-preview/syncGroups.json - Microsoft.Sql/preview/2015-05-01-preview/syncMembers.json @@ -321,14 +322,17 @@ input-file: - 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/managedInstances.json -- Microsoft.Sql/preview/2018-06-01-preview/managedDatabases.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/ServerAzureADAdministrators.json +- Microsoft.Sql/preview/2019-06-01-preview/servers.json +- Microsoft.Sql/preview/2018-06-01-preview/LongTermRetentionManagedInstanceBackups.json +- Microsoft.Sql/preview/2018-06-01-preview/ManagedInstanceLongTermRetentionPolicies.json - Microsoft.Sql/preview/2019-06-01-preview/WorkloadGroups.json - Microsoft.Sql/preview/2019-06-01-preview/WorkloadClassifiers.json +- Microsoft.Sql/preview/2019-06-01-preview/managedDatabases.json +- Microsoft.Sql/preview/2019-06-01-preview/ServerAzureADAdministrators.json # Needed when there is more than one input file override-info: @@ -492,8 +496,11 @@ input-file: - ./Microsoft.Sql/preview/2019-06-01-preview/databases.json - ./Microsoft.Sql/preview/2019-06-01-preview/managedDatabases.json - ./Microsoft.Sql/preview/2019-06-01-preview/serverOperations.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 + - ./Microsoft.Sql/preview/2019-06-01-preview/managedInstanceOperations.json + - ./Microsoft.Sql/preview/2019-06-01-preview/ServerAzureADAdministrators.json # Needed when there is more than one input file override-info: @@ -525,7 +532,9 @@ input-file: - ./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/ServerAzureADAdministrators.json - + - ./Microsoft.Sql/preview/2018-06-01-preview/ManagedInstanceLongTermRetentionPolicies.json + - ./Microsoft.Sql/preview/2018-06-01-preview/LongTermRetentionManagedInstanceBackups.json + # Needed when there is more than one input file override-info: title: SqlManagementClient @@ -793,7 +802,6 @@ 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/checkNameAvailability.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 @@ -812,7 +820,6 @@ input-file: - $(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/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 @@ -856,15 +863,19 @@ input-file: - $(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/PrivateLinkResources.json - - $(this-folder)/Microsoft.Sql/preview/2018-06-01-preview/ServerAzureADAdministrators.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/managedDatabases.json + - $(this-folder)/Microsoft.Sql/preview/2019-06-01-preview/ServerAzureADAdministrators.json + - $(this-folder)/Microsoft.Sql/preview/2019-06-01-preview/managedInstanceOperations.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 @@ -872,8 +883,10 @@ input-file: - $(this-folder)/Microsoft.Sql/preview/2017-03-01-preview/renameDatabase.json - $(this-folder)/Microsoft.Sql/stable/2014-04-01/backupLongTermRetentionPolicies.json - $(this-folder)/Microsoft.Sql/stable/2014-04-01/backupLongTermRetentionVaults.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/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 @@ -883,8 +896,11 @@ input-file: - $(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/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 @@ -898,6 +914,8 @@ input-file: - $(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 diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2018-11-01/storage.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2018-11-01/storage.json index 8f187ea9c8d5..d131e422a4bd 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2018-11-01/storage.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2018-11-01/storage.json @@ -2202,7 +2202,7 @@ "Lifecycle" ], "x-ms-enum": { - "name": "type", + "name": "RuleType", "modelAsString": true } }, diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/storage.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/storage.json index cc80de97f8a6..8ce581604c9e 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/storage.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-04-01/storage.json @@ -2319,7 +2319,7 @@ "Lifecycle" ], "x-ms-enum": { - "name": "type", + "name": "RuleType", "modelAsString": true } }, diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/blob.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/blob.json index cb824822a92b..824471ca5f73 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/blob.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/blob.json @@ -200,6 +200,9 @@ "x-ms-examples": { "PutContainers": { "$ref": "./examples/BlobContainersPut.json" + }, + "PutContainerWithDefaultEncryptionScope": { + "$ref": "./examples/BlobContainersPutDefaultEncryptionScope.json" } }, "description": "Creates a new container under the specified account as described by request body. The container resource includes metadata and properties for that container. It does not include a list of the blobs contained by the container. ", @@ -797,6 +800,14 @@ "definitions": { "ContainerProperties": { "properties": { + "defaultEncryptionScope": { + "type": "string", + "description": "Default the container to use specified encryption scope for all writes." + }, + "denyEncryptionScopeOverride": { + "type": "boolean", + "description": "Block override of encryption scope from the container default." + }, "publicAccess": { "type": "string", "enum": [ @@ -923,11 +934,12 @@ "modelAsString": true }, "description": "The ImmutabilityPolicy state of a blob container, possible values include: Locked and Unlocked." + }, + "allowProtectedAppendWrites": { + "type": "boolean", + "description": "This property can only be changed for unlocked time-based retention policies. When enabled, new blocks can be written to an append blob while maintaining immutability protection and compliance. Only new blocks can be added and any existing blocks cannot be modified or deleted. This property cannot be changed with ExtendImmutabilityPolicy API" } }, - "required": [ - "immutabilityPeriodSinceCreationInDays" - ], "description": "The properties of an ImmutabilityPolicy of a blob container." }, "ImmutabilityPolicyProperties": { @@ -1135,13 +1147,25 @@ "$ref": "./common.json#/definitions/DeleteRetentionPolicy", "description": "The blob service properties for blob soft delete." }, + "isVersioningEnabled": { + "type": "boolean", + "description": "Versioning is enabled if set to true." + }, "automaticSnapshotPolicyEnabled": { "type": "boolean", - "description": "Automatic Snapshot is enabled if set to true." + "description": "Deprecated in favor of isVersioningEnabled property." }, "changeFeed": { "$ref": "#/definitions/ChangeFeed", "description": "The blob service properties for change feed events." + }, + "restorePolicy": { + "$ref": "#/definitions/RestorePolicyProperties", + "description": "The blob service properties for blob restore policy." + }, + "containerDeleteRetentionPolicy": { + "$ref": "./common.json#/definitions/DeleteRetentionPolicy", + "description": "The blob service properties for container soft delete." } }, "x-ms-client-flatten": true, @@ -1182,6 +1206,30 @@ }, "description": "The blob service properties for change feed events." }, + "RestorePolicyProperties": { + "properties": { + "enabled": { + "type": "boolean", + "description": "Blob restore is enabled if set to true." + }, + "days": { + "type": "integer", + "minimum": 1, + "maximum": 365, + "description": "how long this blob can be restored. It should be great than zero and less than DeleteRetentionPolicy.days." + }, + "lastEnabledTime": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "Returns the date and time the restore policy was last enabled." + } + }, + "required": [ + "enabled" + ], + "description": "The blob service properties for blob restore policy" + }, "LeaseContainerRequest": { "properties": { "action": { diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/common.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/common.json index 143c8082b56c..3ea0ab53d601 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/common.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/common.json @@ -5,6 +5,7 @@ "description": "Storage Resource Provider API Common Types", "version": "2019-06-01" }, + "paths": {}, "definitions": { "CorsRules": { "properties": { diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersGetImmutabilityPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersGetImmutabilityPolicy.json index 30ee5585ffb0..bdab4c01cd61 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersGetImmutabilityPolicy.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersGetImmutabilityPolicy.json @@ -17,6 +17,7 @@ "etag": "\"8d59f828e64b75c\"", "properties": { "immutabilityPeriodSinceCreationInDays": 5, + "allowProtectedAppendWrites": true, "state": "Unlocked" } } diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersPutDefaultEncryptionScope.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersPutDefaultEncryptionScope.json new file mode 100644 index 000000000000..4e84715c8f4b --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersPutDefaultEncryptionScope.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res3376", + "accountName": "sto328", + "containerName": "container6185", + "api-version": "2019-06-01", + "monitor": "true", + "blobContainer": { + "properties": { + "defaultEncryptionScope": "encryptionscope185", + "denyEncryptionScopeOverride": true + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/blobServices/default/containers/container6185", + "name": "container6185", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers", + "properties": { + "defaultEncryptionScope": "encryptionscope185", + "denyEncryptionScopeOverride": true + } + } + }, + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res3376/providers/Microsoft.Storage/storageAccounts/sto328/blobServices/default/containers/container6185", + "name": "container6185", + "type": "Microsoft.Storage/storageAccounts/blobServices/containers", + "properties": { + "defaultEncryptionScope": "encryptionscope185", + "denyEncryptionScopeOverride": true + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersPutImmutabilityPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersPutImmutabilityPolicy.json index 45bacfdedad6..7ede7c161bab 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersPutImmutabilityPolicy.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobContainersPutImmutabilityPolicy.json @@ -9,7 +9,8 @@ "monitor": "true", "parameters": { "properties": { - "immutabilityPeriodSinceCreationInDays": 3 + "immutabilityPeriodSinceCreationInDays": 3, + "allowProtectedAppendWrites": true } } }, @@ -22,6 +23,7 @@ "etag": "\"8d59f830cb130e5\"", "properties": { "immutabilityPeriodSinceCreationInDays": 3, + "allowProtectedAppendWrites": true, "state": "Unlocked" } } diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobRangesRestore.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobRangesRestore.json new file mode 100644 index 000000000000..4ea6ff6b0787 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobRangesRestore.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9101", + "accountName": "sto4445", + "api-version": "2019-06-01", + "parameters": { + "timeToRestore": "2019-04-20T15:30:00.0000000Z", + "blobRanges": [ + { + "startRange": "container/blobpath1", + "endRange": "container/blobpath2" + }, + { + "startRange": "container2/blobpath3", + "endRange": "" + } + ] + } + }, + "responses": { + "200": { + "body": { + "status": "Complete", + "restoreId": "{restore_id}", + "parameters": { + "timeToRestore": "2019-04-20T15:30:00.0000000Z", + "blobRanges": [ + { + "startRange": "container/blobpath1", + "endRange": "container/blobpath2" + }, + { + "startRange": "container2/blobpath3", + "endRange": "" + } + ] + } + } + }, + "202": { + "body": { + "status": "InProgress", + "restoreId": "{restore_id}", + "parameters": { + "timeToRestore": "2019-04-20T15:30:00.0000000Z", + "blobRanges": [ + { + "startRange": "container/blobpath1", + "endRange": "container/blobpath2" + }, + { + "startRange": "container2/blobpath3", + "endRange": "" + } + ] + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobServicesGet.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobServicesGet.json index 26f8a731e7b4..eb0995e6f681 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobServicesGet.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobServicesGet.json @@ -80,7 +80,7 @@ "enabled": true, "days": 300 }, - "automaticSnapshotPolicyEnabled": true, + "isVersioningEnabled": true, "changeFeed": { "enabled": true } diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobServicesList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobServicesList.json index 275aa71d4990..8e7a2d3c59d7 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobServicesList.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobServicesList.json @@ -81,7 +81,7 @@ "enabled": true, "days": 300 }, - "automaticSnapshotPolicyEnabled": true, + "isVersioningEnabled": true, "changeFeed": { "enabled": true } diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobServicesPut.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobServicesPut.json index d6bcf2ed6988..7aa8375b133c 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobServicesPut.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/BlobServicesPut.json @@ -74,7 +74,7 @@ "enabled": true, "days": 300 }, - "automaticSnapshotPolicyEnabled": true, + "isVersioningEnabled": true, "changeFeed": { "enabled": true } @@ -154,7 +154,7 @@ "enabled": true, "days": 300 }, - "automaticSnapshotPolicyEnabled": true, + "isVersioningEnabled": true, "changeFeed": { "enabled": true } diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountCreate.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountCreate.json index d33ee97093f9..6b81e637edb1 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountCreate.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountCreate.json @@ -9,7 +9,7 @@ "name": "Standard_GRS" }, "kind": "Storage", - "location": "eastus2euap", + "location": "eastus", "properties": { "isHnsEnabled": true, "routingPreference": { @@ -42,7 +42,7 @@ "body": { "id": "/subscriptions/{subscription-id}/resourceGroups/res9101/providers/Microsoft.Storage/storageAccounts/sto4445", "kind": "Storage", - "location": "eastus2euap", + "location": "eastus", "name": "sto4445", "properties": { "isHnsEnabled": true, diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountCreateObjectReplicationPolicyOnDestination.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountCreateObjectReplicationPolicyOnDestination.json new file mode 100644 index 000000000000..5910dd506913 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountCreateObjectReplicationPolicyOnDestination.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "dst112", + "objectReplicationPolicyId": "default", + "api-version": "2019-06-01", + "monitor": "true", + "properties": { + "properties": { + "sourceAccount": "src1122", + "destinationAccount": "dst112", + "rules": [ + { + "sourceContainer": "scont139", + "destinationContainer": "dcont139", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ] + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/dst112/objectReplicationPolicies/2a20bb73-5717-4635-985a-5d4cf777438f", + "name": "2a20bb73-5717-4635-985a-5d4cf777438f", + "type": "Microsoft.Storage/storageAccounts/objectReplicationPolicies", + "properties": { + "policyId": "2a20bb73-5717-4635-985a-5d4cf777438f", + "sourceAccount": "src1122", + "destinationAccount": "dst112", + "rules": [ + { + "ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9", + "sourceContainer": "sourceContainer1", + "destinationContainer": "destContainer1", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ] + } + } + ] + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountCreateObjectReplicationPolicyOnSource.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountCreateObjectReplicationPolicyOnSource.json new file mode 100644 index 000000000000..7f36c65bd9ba --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountCreateObjectReplicationPolicyOnSource.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "src1122", + "objectReplicationPolicyId": "2a20bb73-5717-4635-985a-5d4cf777438f", + "api-version": "2019-06-01", + "monitor": "true", + "properties": { + "properties": { + "sourceAccount": "src1122", + "destinationAccount": "dst112", + "rules": [ + { + "ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9", + "sourceContainer": "scont139", + "destinationContainer": "dcont139", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ], + "minCreationTime": "2020-02-19T16:05:00Z" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/src1122/objectReplicationPolicies/2a20bb73-5717-4635-985a-5d4cf777438f", + "name": "2a20bb73-5717-4635-985a-5d4cf777438f", + "type": "Microsoft.Storage/storageAccounts/objectReplicationPolicies", + "properties": { + "policyId": "2a20bb73-5717-4635-985a-5d4cf777438f", + "enabledTime": "2019-06-08T03:01:55.7168089Z", + "sourceAccount": "src1122", + "destinationAccount": "dst112", + "rules": [ + { + "ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9", + "sourceContainer": "sourceContainer1", + "destinationContainer": "destContainer1", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ], + "minCreationTime": "2020-02-19T16:05:00Z" + } + } + ] + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountDeleteObjectReplicationPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountDeleteObjectReplicationPolicy.json new file mode 100644 index 000000000000..6421270ddcf2 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountDeleteObjectReplicationPolicy.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "objectReplicationPolicyId": "{objectReplicationPolicy-Id}", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountEnableCMK.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountEnableCMK.json new file mode 100644 index 000000000000..7a393de8eafe --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountEnableCMK.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9407", + "accountName": "sto8596", + "api-version": "2019-06-01", + "monitor": "true", + "parameters": { + "properties": { + "encryption": { + "services": { + "file": { + "keyType": "Account", + "enabled": true + }, + "blob": { + "keyType": "Account", + "enabled": true + } + }, + "keySource": "Microsoft.Keyvault", + "keyvaultproperties": { + "keyvaulturi": "https://myvault8569.vault.azure.net", + "keyname": "wrappingKey", + "keyversion": "" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9407/providers/Microsoft.Storage/storageAccounts/sto8596", + "identity": { + "principalId": "911871cc-ffd1-4fc4-ac11-7a316433ea66", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "kind": "Storage", + "location": "eastus2(stage)", + "name": "sto8596", + "properties": { + "creationTime": "2017-06-01T02:42:41.7633306Z", + "encryption": { + "services": { + "file": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + }, + "blob": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + } + }, + "keySource": "Microsoft.Keyvault", + "keyvaultproperties": { + "keyvaulturi": "https://myvault8569.vault.azure.net", + "keyname": "wrappingKey", + "keyversion": "", + "currentVersionedKeyIdentifier": "https://myvault8569.vault.azure.net/keys/wrappingKey/0682afdd9c104f4285df20107e956cad", + "lastKeyRotationTimestamp": "2019-12-13T20:36:23.7023290Z" + } + }, + "primaryEndpoints": { + "web": "https://sto8596.web.core.windows.net/", + "dfs": "https://sto8596.dfs.core.windows.net/", + "blob": "https://sto8596.blob.core.windows.net/", + "file": "https://sto8596.file.core.windows.net/", + "queue": "https://sto8596.queue.core.windows.net/", + "table": "https://sto8596.table.core.windows.net/" + }, + "primaryLocation": "eastus2(stage)", + "provisioningState": "Succeeded", + "secondaryLocation": "northcentralus(stage)", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountEncryptionScopeList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountEncryptionScopeList.json new file mode 100644 index 000000000000..6598e61a94f9 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountEncryptionScopeList.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "resource-group-name", + "accountName": "{storage-account-name}", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/resource-group-name/providers/Microsoft.Storage/storageAccounts/{storage-account-name}/encryptionScopes/scope-1", + "name": "scope-1", + "type": "Microsoft.Storage/storageAccounts/encryptionScopes", + "properties": { + "source": "Microsoft.Storage", + "state": "Enabled", + "creationTime": "2018-10-16T02:42:41.7633306Z", + "lastModifiedTime": "2018-10-16T02:42:41.7633306Z" + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/resource-group-name/providers/Microsoft.Storage/storageAccounts/{storage-account-name}/encryptionScopes/scope-2", + "name": "scope-2", + "type": "Microsoft.Storage/storageAccounts/encryptionScopes", + "properties": { + "source": "Microsoft.KeyVault", + "state": "Enabled", + "keyVaultProperties": { + "keyUri": "https://testvault.vault.core.windows.net/keys/key1/863425f1358359c" + }, + "creationTime": "2018-10-16T04:32:14.3355306Z", + "lastModifiedTime": "2018-10-17T06:23:14.4513306Z" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountGetEncryptionScope.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountGetEncryptionScope.json new file mode 100644 index 000000000000..2ee75db953f9 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountGetEncryptionScope.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "resource-group-name", + "accountName": "{storage-account-name}", + "encryptionScopeName": "{encryption-scope-name}", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/resource-group-name/providers/Microsoft.Storage/storageAccounts/{storage-account-name}/encryptionScopes/{encryption-scope-name}", + "name": "{encyrption-scope-name}", + "type": "Microsoft.Storage/storageAccounts/encryptionScopes", + "properties": { + "source": "Microsoft.Storage", + "state": "Enabled", + "creationTime": "2018-10-16T02:42:41.7633306Z", + "lastModifiedTime": "2018-10-16T02:42:41.7633306Z" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountGetObjectReplicationPolicy.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountGetObjectReplicationPolicy.json new file mode 100644 index 000000000000..a093274e0e53 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountGetObjectReplicationPolicy.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "objectReplicationPolicyId": "{objectReplicationPolicy-Id}", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res6977/providers/Microsoft.Storage/storageAccounts/sto2527/objectReplicationPolicies/{objectReplicationPolicy-Id}", + "name": "{objectReplicationPolicy-Id}", + "type": "Microsoft.Storage/storageAccounts/objectReplicationPolicies", + "properties": { + "policyId": "{objectReplicationPolicy-Id}", + "enabledTime": "2019-06-08T03:01:55.7168089Z", + "sourceAccount": "sto2527", + "destinationAccount": "destAccount1", + "rules": [ + { + "sourceContainer": "sourceContainer1", + "destinationContainer": "destContainer1", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ] + } + }, + { + "sourceContainer": "sourceContainer1", + "destinationContainer": "destContainer1", + "filters": { + "prefixMatch": [ + "blobC", + "blobD" + ] + } + } + ] + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountGetPropertiesCMKEnabled.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountGetPropertiesCMKEnabled.json new file mode 100644 index 000000000000..08c3e5dfbe3d --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountGetPropertiesCMKEnabled.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res9407", + "accountName": "sto8596", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9407/providers/Microsoft.Storage/storageAccounts/sto8596", + "identity": { + "principalId": "911871cc-ffd1-4fc4-ac11-7a316433ea66", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "kind": "Storage", + "location": "eastus2(stage)", + "name": "sto8596", + "properties": { + "geoReplicationStats": { + "status": "Live", + "lastSyncTime": "2018-10-30T00:25:34Z", + "canFailover": true + }, + "isHnsEnabled": true, + "creationTime": "2017-06-01T02:42:41.7633306Z", + "networkAcls": { + "bypass": "AzureServices", + "defaultAction": "Allow", + "ipRules": [], + "virtualNetworkRules": [] + }, + "primaryEndpoints": { + "web": "https://sto8596.web.core.windows.net/", + "dfs": "https://sto8596.dfs.core.windows.net/", + "blob": "https://sto8596.blob.core.windows.net/", + "file": "https://sto8596.file.core.windows.net/", + "queue": "https://sto8596.queue.core.windows.net/", + "table": "https://sto8596.table.core.windows.net/", + "microsoftEndpoints": { + "web": "https://sto8596-microsoftrouting.web.core.windows.net/", + "dfs": "https://sto8596-microsoftrouting.dfs.core.windows.net/", + "blob": "https://sto8596-microsoftrouting.blob.core.windows.net/", + "file": "https://sto8596-microsoftrouting.file.core.windows.net/", + "queue": "https://sto8596-microsoftrouting.queue.core.windows.net/", + "table": "https://sto8596-microsoftrouting.table.core.windows.net/" + }, + "internetEndpoints": { + "web": "https://sto8596-internetrouting.web.core.windows.net/", + "dfs": "https://sto8596-internetrouting.dfs.core.windows.net/", + "blob": "https://sto8596-internetrouting.blob.core.windows.net/", + "file": "https://sto8596-internetrouting.file.core.windows.net/" + } + }, + "primaryLocation": "eastus2(stage)", + "provisioningState": "Succeeded", + "routingPreference": { + "routingChoice": "MicrosoftRouting", + "publishMicrosoftEndpoints": true, + "publishInternetEndpoints": true + }, + "encryption": { + "services": { + "file": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + }, + "blob": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + } + }, + "keySource": "Microsoft.Keyvault", + "keyvaultproperties": { + "keyvaulturi": "https://myvault8569.vault.azure.net", + "keyname": "wrappingKey", + "keyversion": "", + "currentVersionedKeyIdentifier": "https://myvault8569.vault.azure.net/keys/wrappingKey/0682afdd9c104f4285df20107e956cad", + "lastKeyRotationTimestamp": "2019-12-13T20:36:23.7023290Z" + } + }, + "secondaryLocation": "northcentralus(stage)", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountList.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountList.json index dd0211fb93b6..d1a76567be23 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountList.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountList.json @@ -11,7 +11,7 @@ { "id": "/subscriptions/{subscription-id}/resourceGroups/res2627/providers/Microsoft.Storage/storageAccounts/sto1125", "kind": "Storage", - "location": "eastus2euap", + "location": "eastus", "name": "sto1125", "properties": { "isHnsEnabled": true, @@ -38,7 +38,7 @@ "file": "https://sto1125-internetrouting.file.core.windows.net/" } }, - "primaryLocation": "eastus2euap", + "primaryLocation": "eastus", "provisioningState": "Succeeded", "routingPreference": { "routingChoice": "MicrosoftRouting", @@ -83,7 +83,7 @@ "type": "SystemAssigned" }, "kind": "Storage", - "location": "eastus2euap", + "location": "eastus", "name": "sto3699", "properties": { "creationTime": "2017-05-24T10:06:30.6093014Z", @@ -93,7 +93,7 @@ "queue": "https://sto3699.queue.core.windows.net/", "table": "https://sto3699.table.core.windows.net/" }, - "primaryLocation": "eastus2euap", + "primaryLocation": "eastus", "provisioningState": "Succeeded", "secondaryLocation": "centraluseuap", "statusOfPrimary": "available", @@ -110,6 +110,96 @@ }, "type": "Microsoft.Storage/storageAccounts" }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9407/providers/Microsoft.Storage/storageAccounts/sto8596", + "identity": { + "principalId": "911871cc-ffd1-4fc4-ac11-7a316433ea66", + "tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "type": "SystemAssigned" + }, + "kind": "Storage", + "location": "eastus2(stage)", + "name": "sto8596", + "properties": { + "geoReplicationStats": { + "status": "Live", + "lastSyncTime": "2018-10-30T00:25:34Z", + "canFailover": true + }, + "isHnsEnabled": true, + "creationTime": "2017-06-01T02:42:41.7633306Z", + "networkAcls": { + "bypass": "AzureServices", + "defaultAction": "Allow", + "ipRules": [], + "virtualNetworkRules": [] + }, + "primaryEndpoints": { + "web": "https://sto8596.web.core.windows.net/", + "dfs": "https://sto8596.dfs.core.windows.net/", + "blob": "https://sto8596.blob.core.windows.net/", + "file": "https://sto8596.file.core.windows.net/", + "queue": "https://sto8596.queue.core.windows.net/", + "table": "https://sto8596.table.core.windows.net/", + "microsoftEndpoints": { + "web": "https://sto8596-microsoftrouting.web.core.windows.net/", + "dfs": "https://sto8596-microsoftrouting.dfs.core.windows.net/", + "blob": "https://sto8596-microsoftrouting.blob.core.windows.net/", + "file": "https://sto8596-microsoftrouting.file.core.windows.net/", + "queue": "https://sto8596-microsoftrouting.queue.core.windows.net/", + "table": "https://sto8596-microsoftrouting.table.core.windows.net/" + }, + "internetEndpoints": { + "web": "https://sto8596-internetrouting.web.core.windows.net/", + "dfs": "https://sto8596-internetrouting.dfs.core.windows.net/", + "blob": "https://sto8596-internetrouting.blob.core.windows.net/", + "file": "https://sto8596-internetrouting.file.core.windows.net/" + } + }, + "primaryLocation": "eastus2(stage)", + "provisioningState": "Succeeded", + "routingPreference": { + "routingChoice": "MicrosoftRouting", + "publishMicrosoftEndpoints": true, + "publishInternetEndpoints": true + }, + "encryption": { + "services": { + "file": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + }, + "blob": { + "keyType": "Account", + "enabled": true, + "lastEnabledTime": "2019-12-11T20:49:31.7036140Z" + } + }, + "keySource": "Microsoft.Keyvault", + "keyvaultproperties": { + "keyvaulturi": "https://myvault8569.vault.azure.net", + "keyname": "wrappingKey", + "keyversion": "", + "currentVersionedKeyIdentifier": "https://myvault8569.vault.azure.net/keys/wrappingKey/0682afdd9c104f4285df20107e956cad", + "lastKeyRotationTimestamp": "2019-12-13T20:36:23.7023290Z" + } + }, + "secondaryLocation": "northcentralus(stage)", + "statusOfPrimary": "available", + "statusOfSecondary": "available", + "supportsHttpsTrafficOnly": false + }, + "sku": { + "name": "Standard_GRS", + "tier": "Standard" + }, + "tags": { + "key1": "value1", + "key2": "value2" + }, + "type": "Microsoft.Storage/storageAccounts" + }, { "id": "/subscriptions/{subscription-id}/resourceGroups/testcmk3/providers/Microsoft.Storage/storageAccounts/sto6637", "identity": { @@ -118,7 +208,7 @@ "type": "SystemAssigned" }, "kind": "Storage", - "location": "eastus2euap", + "location": "eastus", "name": "sto6637", "properties": { "creationTime": "2017-05-24T10:09:39.5625175Z", @@ -128,7 +218,7 @@ "queue": "https://sto6637.queue.core.windows.net/", "table": "https://sto6637.table.core.windows.net/" }, - "primaryLocation": "eastus2euap", + "primaryLocation": "eastus", "provisioningState": "Succeeded", "secondaryLocation": "centraluseuap", "statusOfPrimary": "available", @@ -148,7 +238,7 @@ { "id": "/subscriptions/{subscription-id}/resourceGroups/res8186/providers/Microsoft.Storage/storageAccounts/sto834", "kind": "Storage", - "location": "eastus2euap", + "location": "eastus", "name": "sto834", "properties": { "creationTime": "2017-05-24T13:28:20.8686541Z", @@ -158,7 +248,7 @@ "queue": "https://sto834.queue.core.windows.net/", "table": "https://sto834.table.core.windows.net/" }, - "primaryLocation": "eastus2euap", + "primaryLocation": "eastus", "provisioningState": "Succeeded", "secondaryLocation": "centraluseuap", "statusOfPrimary": "available", @@ -183,7 +273,7 @@ "type": "SystemAssigned" }, "kind": "Storage", - "location": "eastus2euap", + "location": "eastus", "name": "sto9174", "properties": { "creationTime": "2017-05-24T09:46:19.6556989Z", @@ -193,7 +283,7 @@ "queue": "https://sto9174.queue.core.windows.net/", "table": "https://sto9174.table.core.windows.net/" }, - "primaryLocation": "eastus2euap", + "primaryLocation": "eastus", "provisioningState": "Succeeded", "secondaryLocation": "centraluseuap", "statusOfPrimary": "available", diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListByResourceGroup.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListByResourceGroup.json index 43f968b9788c..d2161dd9276b 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListByResourceGroup.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListByResourceGroup.json @@ -11,7 +11,7 @@ { "id": "/subscriptions/{subscription-id}/resourceGroups/res6117/providers/Microsoft.Storage/storageAccounts/sto4036", "kind": "Storage", - "location": "eastus2euap", + "location": "eastus", "name": "sto4036", "properties": { "isHnsEnabled": true, @@ -24,7 +24,7 @@ "queue": "https://sto4036.queue.core.windows.net/", "table": "https://sto4036.table.core.windows.net/" }, - "primaryLocation": "eastus2euap", + "primaryLocation": "eastus", "provisioningState": "Succeeded", "secondaryLocation": "centraluseuap", "statusOfPrimary": "available", @@ -44,7 +44,7 @@ { "id": "/subscriptions/{subscription-id}/resourceGroups/res6117/providers/Microsoft.Storage/storageAccounts/sto4452", "kind": "Storage", - "location": "eastus2euap", + "location": "eastus", "name": "sto4452", "properties": { "creationTime": "2017-05-24T13:24:15.7068366Z", @@ -54,7 +54,7 @@ "queue": "https://sto4452.queue.core.windows.net/", "table": "https://sto4452.table.core.windows.net/" }, - "primaryLocation": "eastus2euap", + "primaryLocation": "eastus", "provisioningState": "Succeeded", "secondaryLocation": "centraluseuap", "statusOfPrimary": "available", diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListObjectReplicationPolicies.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListObjectReplicationPolicies.json new file mode 100644 index 000000000000..7381669a1a7a --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountListObjectReplicationPolicies.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res6977", + "accountName": "sto2527", + "api-version": "2019-06-01", + "monitor": "true" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res6977/providers/Microsoft.Storage/storageAccounts/sto2527/objectReplicationPolicies/c6c23999-fd4e-433a-bcf9-1db69d27cd8a", + "name": "c6c23999-fd4e-433a-bcf9-1db69d27cd8a", + "type": "Microsoft.Storage/storageAccounts/objectReplicationPolicies", + "properties": { + "sourceAccount": "sto2527", + "destinationAccount": "destAccount1" + } + }, + { + "id": "/subscriptions/{subscription-id}/resourceGroups/res9290/providers/Microsoft.Storage/storageAccounts/sto1590/objectReplicationPolicies/141d23dc-8958-4b48-b6e6-5a40bf1af116", + "name": "141d23dc-8958-4b48-b6e6-5a40bf1af116", + "type": "Microsoft.Storage/storageAccounts/objectReplicationPolicies", + "properties": { + "sourceAccount": "sto2527", + "destinationAccount": "destAccount2" + } + } + ] + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountPatchEncryptionScope.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountPatchEncryptionScope.json new file mode 100644 index 000000000000..4444929ae5fc --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountPatchEncryptionScope.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "resource-group-name", + "accountName": "{storage-account-name}", + "encryptionScopeName": "{encryption-scope-name}", + "api-version": "2019-06-01", + "monitor": "true", + "encryptionScope": { + "properties": { + "source": "Microsoft.KeyVault", + "keyVaultProperties": { + "keyUri": "https://testvault.vault.core.windows.net/keys/key1/863425f1358359c" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/resource-group-name/providers/Microsoft.Storage/storageAccounts/{storage-account-name}/encryptionScopes/{encryption-scope-name}", + "name": "{encryption-scope-name}", + "type": "Microsoft.Storage/storageAccounts/encryptionScopes", + "properties": { + "source": "Microsoft.KeyVault", + "state": "Enabled", + "keyVaultProperties": { + "keyUri": "https://testvault.vault.core.windows.net/keys/key1/863425f1358359c" + }, + "creationTime": "2018-10-16T02:42:41.7633306Z", + "lastModifiedTime": "2018-10-17T06:23:14.4513306Z" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountPutEncryptionScope.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountPutEncryptionScope.json new file mode 100644 index 000000000000..1c3ce2b48d26 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountPutEncryptionScope.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "resource-group-name", + "accountName": "{storage-account-name}", + "encryptionScopeName": "{encryption-scope-name}", + "api-version": "2019-06-01", + "monitor": "true", + "encryptionScope": {} + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/resource-group-name/providers/Microsoft.Storage/storageAccounts/{storage-account-name}/encryptionScopes/{encryption-scope-name}", + "name": "{encryption-scope-name}", + "type": "Microsoft.Storage/storageAccounts/encryptionScopes", + "properties": { + "source": "Microsoft.Storage", + "state": "Enabled", + "creationTime": "2018-10-16T02:42:41.7633306Z", + "lastModifiedTime": "2018-10-16T02:42:41.7633306Z" + } + } + }, + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/resource-group-name/providers/Microsoft.Storage/storageAccounts/{storage-account-name}/encryptionScopes/{encryption-scope-name}", + "name": "{encryption-scope-name}", + "type": "Microsoft.Storage/storageAccounts/encryptionScopes", + "properties": { + "source": "Microsoft.Storage", + "state": "Enabled", + "creationTime": "2018-10-16T02:42:41.7633306Z", + "lastModifiedTime": "2018-10-16T02:42:41.7633306Z" + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountUpdateObjectReplicationPolicyOnDestination.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountUpdateObjectReplicationPolicyOnDestination.json new file mode 100644 index 000000000000..403ea6019faf --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountUpdateObjectReplicationPolicyOnDestination.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "dst112", + "objectReplicationPolicyId": "2a20bb73-5717-4635-985a-5d4cf777438f", + "api-version": "2019-06-01", + "monitor": "true", + "properties": { + "properties": { + "sourceAccount": "src1122", + "destinationAccount": "dst112", + "rules": [ + { + "ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9", + "sourceContainer": "scont139", + "destinationContainer": "dcont139", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ] + } + }, + { + "sourceContainer": "scont179", + "destinationContainer": "dcont179" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/dst112/objectReplicationPolicies/2a20bb73-5717-4635-985a-5d4cf777438f", + "name": "2a20bb73-5717-4635-985a-5d4cf777438f", + "type": "Microsoft.Storage/storageAccounts/objectReplicationPolicies", + "properties": { + "policyId": "2a20bb73-5717-4635-985a-5d4cf777438f", + "sourceAccount": "src1122", + "destinationAccount": "dst112", + "rules": [ + { + "ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9", + "sourceContainer": "sourceContainer1", + "destinationContainer": "destContainer1", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ] + } + }, + { + "ruleId": "cfbb4bc2-8b60-429f-b05a-d1e0942b33b2", + "sourceContainer": "scont179", + "destinationContainer": "dcont179" + } + ] + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountUpdateObjectReplicationPolicyOnSource.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountUpdateObjectReplicationPolicyOnSource.json new file mode 100644 index 000000000000..4ade05445df7 --- /dev/null +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/examples/StorageAccountUpdateObjectReplicationPolicyOnSource.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "subscriptionId": "{subscription-id}", + "resourceGroupName": "res7687", + "accountName": "src1122", + "objectReplicationPolicyId": "2a20bb73-5717-4635-985a-5d4cf777438f", + "api-version": "2019-06-01", + "monitor": "true", + "properties": { + "properties": { + "sourceAccount": "src1122", + "destinationAccount": "dst112", + "rules": [ + { + "ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9", + "sourceContainer": "scont139", + "destinationContainer": "dcont139", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ] + } + }, + { + "ruleId": "cfbb4bc2-8b60-429f-b05a-d1e0942b33b2", + "sourceContainer": "scont179", + "destinationContainer": "dcont179" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/res7687/providers/Microsoft.Storage/storageAccounts/src1122/objectReplicationPolicies/2a20bb73-5717-4635-985a-5d4cf777438f", + "name": "2a20bb73-5717-4635-985a-5d4cf777438f", + "type": "Microsoft.Storage/storageAccounts/objectReplicationPolicies", + "properties": { + "policyId": "2a20bb73-5717-4635-985a-5d4cf777438f", + "enabledTime": "2019-06-08T03:01:55.7168089Z", + "sourceAccount": "src1122", + "destinationAccount": "dst112", + "rules": [ + { + "ruleId": "d5d18a48-8801-4554-aeaa-74faf65f5ef9", + "sourceContainer": "sourceContainer1", + "destinationContainer": "destContainer1", + "filters": { + "prefixMatch": [ + "blobA", + "blobB" + ] + } + }, + { + "ruleId": "cfbb4bc2-8b60-429f-b05a-d1e0942b33b2", + "sourceContainer": "scont179", + "destinationContainer": "dcont179" + } + ] + } + } + } + } +} diff --git a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/storage.json b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/storage.json index 1dcbff2a61b0..2c92c20bbc2e 100644 --- a/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/storage.json +++ b/specification/storage/resource-manager/Microsoft.Storage/stable/2019-06-01/storage.json @@ -209,6 +209,9 @@ "x-ms-examples": { "StorageAccountGetProperties": { "$ref": "./examples/StorageAccountGetProperties.json" + }, + "StorageAccountGetPropertiesCMKEnabled": { + "$ref": "./examples/StorageAccountGetPropertiesCMKEnabled.json" } }, "parameters": [ @@ -226,12 +229,13 @@ }, { "name": "$expand", - "description": "May be used to expand the properties within account's properties. By default, data is not included when fetching properties. Currently we only support geoReplicationStats.", + "description": "May be used to expand the properties within account's properties. By default, data is not included when fetching properties. Currently we only support geoReplicationStats and blobRestoreStatus.", "in": "query", "required": false, "type": "string", "enum": [ - "geoReplicationStats" + "geoReplicationStats", + "blobRestoreStatus" ], "x-ms-enum": { "name": "StorageAccountExpand", @@ -260,6 +264,9 @@ }, "StorageAccountEnableAD": { "$ref": "./examples/StorageAccountEnableAD.json" + }, + "StorageAccountEnableCMK": { + "$ref": "./examples/StorageAccountEnableCMK.json" } }, "parameters": [ @@ -599,7 +606,7 @@ "operationId": "StorageAccounts_Failover", "description": "Failover request can be triggered for a storage account in case of availability issues. The failover occurs from the storage account's primary cluster to secondary cluster for RA-GRS accounts. The secondary cluster will become primary after failover.", "x-ms-examples": { - "StorageAccountCreate": { + "StorageAccountFailover": { "$ref": "./examples/StorageAccountFailover.json" } }, @@ -631,6 +638,61 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/restoreBlobRanges": { + "post": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_RestoreBlobRanges", + "description": "Restore blobs in the specified blob ranges", + "x-ms-examples": { + "BlobRangesRestore": { + "$ref": "./examples/BlobRangesRestore.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/BlobRestoreParameters" + }, + "description": "The parameters to provide for restore blob ranges." + } + ], + "responses": { + "200": { + "description": "OK -- returned when blob ranges are restored completely with the same properties specified in the request body.", + "schema": { + "$ref": "#/definitions/BlobRestoreStatus" + } + }, + "202": { + "description": "Accepted -- Blob restore request accepted; operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/BlobRestoreStatus" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/managementPolicies/{managementPolicyName}": { "get": { "tags": [ @@ -822,23 +884,395 @@ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/PrivateEndpointConnectionName" + "$ref": "#/parameters/PrivateEndpointConnectionName" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "The private endpoint connection properties." + } + ], + "responses": { + "200": { + "description": "OK -- Update the private endpoint connection properties successfully.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "operationId": "PrivateEndpointConnections_Delete", + "description": "Deletes the specified private endpoint connection associated with the storage account.", + "x-ms-examples": { + "StorageAccountDeletePrivateEndpointConnection": { + "$ref": "./examples/StorageAccountDeletePrivateEndpointConnection.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/PrivateEndpointConnectionName" + } + ], + "responses": { + "200": { + "description": "OK -- Delete the private endpoint connection successfully." + }, + "204": { + "description": "No Content -- The private endpoint connection does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/privateLinkResources": { + "get": { + "tags": [ + "PrivateLinkResources" + ], + "operationId": "PrivateLinkResources_ListByStorageAccount", + "description": "Gets the private link resources that need to be created for a storage account.", + "x-ms-examples": { + "StorageAccountListPrivateLinkResources": { + "$ref": "./examples/StorageAccountListPrivateLinkResources.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved private link resources.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/objectReplicationPolicies": { + "get": { + "tags": [ + "ObjectReplicationPolicies" + ], + "operationId": "ObjectReplicationPolicies_List", + "description": "List the object replication policies associated with the storage account.", + "x-ms-examples": { + "StorageAccountListObjectReplicationPolicies": { + "$ref": "./examples/StorageAccountListObjectReplicationPolicies.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- List object replication policies successfully.", + "schema": { + "$ref": "#/definitions/ObjectReplicationPolicies" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/objectReplicationPolicies/{objectReplicationPolicyId}": { + "get": { + "tags": [ + "ObjectReplicationPolicies" + ], + "operationId": "ObjectReplicationPolicies_Get", + "description": "Get the object replication policy of the storage account by policy ID.", + "x-ms-examples": { + "StorageAccountGetObjectReplicationPolicies": { + "$ref": "./examples/StorageAccountGetObjectReplicationPolicy.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ObjectReplicationPolicyId" + } + ], + "responses": { + "200": { + "description": "OK -- Get the object replication policy successfully.", + "schema": { + "$ref": "#/definitions/ObjectReplicationPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "ObjectReplicationPolicies" + ], + "operationId": "ObjectReplicationPolicies_CreateOrUpdate", + "description": "Create or update the object replication policy of the storage account.", + "x-ms-examples": { + "StorageAccountCreateObjectReplicationPolicyOnDestination": { + "$ref": "./examples/StorageAccountCreateObjectReplicationPolicyOnDestination.json" + }, + "StorageAccountCreateObjectReplicationPolicyOnSource": { + "$ref": "./examples/StorageAccountCreateObjectReplicationPolicyOnSource.json" + }, + "StorageAccountUpdateObjectReplicationPolicyOnDestination": { + "$ref": "./examples/StorageAccountUpdateObjectReplicationPolicyOnDestination.json" + }, + "StorageAccountUpdateObjectReplicationPolicyOnSource": { + "$ref": "./examples/StorageAccountUpdateObjectReplicationPolicyOnSource.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ObjectReplicationPolicyId" + }, + { + "name": "properties", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ObjectReplicationPolicy" + }, + "description": "The object replication policy set to a storage account. A unique policy ID will be created if absent." + } + ], + "responses": { + "200": { + "description": "OK -- Put object replication policy successfully.", + "schema": { + "$ref": "#/definitions/ObjectReplicationPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "ObjectReplicationPolicies" + ], + "operationId": "ObjectReplicationPolicies_Delete", + "description": "Deletes the object replication policy associated with the specified storage account.", + "x-ms-examples": { + "StorageAccountDeleteObjectReplicationPolicies": { + "$ref": "./examples/StorageAccountDeleteObjectReplicationPolicy.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ObjectReplicationPolicyId" + } + ], + "responses": { + "200": { + "description": "OK -- Delete the object replication policy successfully." + }, + "204": { + "description": "No Content -- The object replication policy does not exist." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/revokeUserDelegationKeys": { + "post": { + "tags": [ + "StorageAccounts" + ], + "operationId": "StorageAccounts_RevokeUserDelegationKeys", + "description": "Revoke user delegation keys.", + "x-ms-examples": { + "StorageAccountRevokeUserDelegationKeys": { + "$ref": "./examples/StorageAccountRevokeUserDelegationKeys.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the storage account within the specified resource group. Storage account names must be between 3 and 24 characters in length and use numbers and lower-case letters only.", + "maxLength": 24, + "minLength": 3 + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK -- revoke user delegation keys succeeded." + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/encryptionScopes/{encryptionScopeName}": { + "put": { + "tags": [ + "EncryptionScopes" + ], + "operationId": "EncryptionScopes_Put", + "description": "Synchronously creates or updates an encryption scope under the specified storage account. If an encryption scope is already created and a subsequent request is issued with different properties, the encryption scope properties will be updated per the specified request.", + "x-ms-examples": { + "StorageAccountPutEncryptionScope": { + "$ref": "./examples/StorageAccountPutEncryptionScope.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/StorageAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/EncryptionScopeName" }, { - "name": "properties", + "name": "encryptionScope", "in": "body", "required": true, "schema": { - "$ref": "#/definitions/PrivateEndpointConnection" + "$ref": "#/definitions/EncryptionScope" }, - "description": "The private endpoint connection properties." + "description": "Encryption scope properties to be used for the create or update." } ], "responses": { + "201": { + "description": "Created -- Create encryption scope operation completed successfully.", + "schema": { + "$ref": "#/definitions/EncryptionScope" + } + }, "200": { - "description": "OK -- Update the private endpoint connection properties successfully.", + "description": "OK -- Update encryption scope operation completed successfully.", "schema": { - "$ref": "#/definitions/PrivateEndpointConnection" + "$ref": "#/definitions/EncryptionScope" } }, "default": { @@ -849,15 +1283,15 @@ } } }, - "delete": { + "patch": { "tags": [ - "PrivateEndpointConnections" + "EncryptionScopes" ], - "operationId": "PrivateEndpointConnections_Delete", - "description": "Deletes the specified private endpoint connection associated with the storage account.", + "operationId": "EncryptionScopes_Patch", + "description": "Update encryption scope properties as specified in the request body. Update fails if the specified encryption scope does not already exist.", "x-ms-examples": { - "StorageAccountDeletePrivateEndpointConnection": { - "$ref": "./examples/StorageAccountDeletePrivateEndpointConnection.json" + "StorageAccountPatchEncryptionScope": { + "$ref": "./examples/StorageAccountPatchEncryptionScope.json" } }, "parameters": [ @@ -874,15 +1308,24 @@ "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" }, { - "$ref": "#/parameters/PrivateEndpointConnectionName" + "$ref": "#/parameters/EncryptionScopeName" + }, + { + "name": "encryptionScope", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/EncryptionScope" + }, + "description": "Encryption scope properties to be used for the update." } ], "responses": { "200": { - "description": "OK -- Delete the private endpoint connection successfully." - }, - "204": { - "description": "No Content -- The private endpoint connection does not exist." + "description": "OK -- Update encryption scope operation completed successfully.", + "schema": { + "$ref": "#/definitions/EncryptionScope" + } }, "default": { "description": "Error response describing why the operation failed.", @@ -891,18 +1334,16 @@ } } } - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/privateLinkResources": { + }, "get": { "tags": [ - "PrivateLinkResources" + "EncryptionScopes" ], - "operationId": "PrivateLinkResources_ListByStorageAccount", - "description": "Gets the private link resources that need to be created for a storage account.", + "operationId": "EncryptionScopes_Get", + "description": "Returns the properties for the specified encryption scope.", "x-ms-examples": { - "StorageAccountListPrivateLinkResources": { - "$ref": "./examples/StorageAccountListPrivateLinkResources.json" + "StorageAccountGetEncryptionScope": { + "$ref": "./examples/StorageAccountGetEncryptionScope.json" } }, "parameters": [ @@ -917,28 +1358,37 @@ }, { "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/EncryptionScopeName" } ], "responses": { "200": { - "description": "Successfully retrieved private link resources.", + "description": "OK -- Get encryption scope operation completed successfully.", "schema": { - "$ref": "#/definitions/PrivateLinkResourceListResult" + "$ref": "#/definitions/EncryptionScope" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" } } } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/revokeUserDelegationKeys": { - "post": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/encryptionScopes": { + "get": { "tags": [ - "StorageAccounts" + "EncryptionScopes" ], - "operationId": "StorageAccounts_RevokeUserDelegationKeys", - "description": "Revoke user delegation keys.", + "operationId": "EncryptionScopes_List", + "description": "Lists all the encryption scopes available under the specified storage account.", "x-ms-examples": { - "StorageAccountRevokeUserDelegationKeys": { - "$ref": "./examples/StorageAccountRevokeUserDelegationKeys.json" + "StorageAccountEncryptionScopeList": { + "$ref": "./examples/StorageAccountEncryptionScopeList.json" } }, "parameters": [ @@ -946,13 +1396,7 @@ "$ref": "#/parameters/ResourceGroupName" }, { - "name": "accountName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the storage account within the specified resource group. Storage account names must be between 3 and 24 characters in length and use numbers and lower-case letters only.", - "maxLength": 24, - "minLength": 3 + "$ref": "#/parameters/StorageAccountName" }, { "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" @@ -963,8 +1407,14 @@ ], "responses": { "200": { - "description": "OK -- revoke user delegation keys succeeded." + "description": "OK -- List encryption scopes operation completed successfully.", + "schema": { + "$ref": "#/definitions/EncryptionScopeListResult" + } } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" } } } @@ -1308,7 +1758,10 @@ "name": "KeyType", "modelAsString": true }, - "x-ms-mutability": ["create","read"] + "x-ms-mutability": [ + "create", + "read" + ] } }, "description": "A service that allows server-side encryption to be used." @@ -1351,6 +1804,19 @@ "type": "string", "description": "The Uri of KeyVault.", "x-ms-client-name": "KeyVaultUri" + }, + "currentVersionedKeyIdentifier": { + "type": "string", + "readOnly": true, + "description": "The object identifier of the current versioned Key Vault Key in use.", + "x-ms-client-name": "CurrentVersionedKeyIdentifier" + }, + "lastKeyRotationTimestamp": { + "type": "string", + "readOnly": true, + "format": "date-time", + "description": "Timestamp of last rotation of the Key Vault Key.", + "x-ms-client-name": "LastKeyRotationTimestamp" } } }, @@ -1863,6 +2329,40 @@ }, "description": "Routing preference defines the type of network, either microsoft or internet routing to be used to deliver the user data, the default option is microsoft routing" }, + "BlobRestoreStatus": { + "properties": { + "status": { + "readOnly": true, + "type": "string", + "description": "The status of blob restore progress. Possible values are: - InProgress: Indicates that blob restore is ongoing. - Complete: Indicates that blob restore has been completed successfully. - Failed: Indicates that blob restore is failed.", + "enum": [ + "InProgress", + "Complete", + "Failed" + ], + "x-ms-enum": { + "name": "BlobRestoreProgressStatus", + "modelAsString": true + } + }, + "failureReason": { + "readOnly": true, + "type": "string", + "description": "Failure reason when blob restore is failed." + }, + "restoreId": { + "readOnly": true, + "type": "string", + "description": "Id for tracking blob restore request." + }, + "parameters": { + "readOnly": true, + "$ref": "#/definitions/BlobRestoreParameters", + "description": "Blob restore request parameters." + } + }, + "description": "Blob restore status." + }, "StorageAccountProperties": { "properties": { "provisioningState": { @@ -2016,6 +2516,12 @@ "$ref": "#/definitions/RoutingPreference", "x-ms-client-name": "RoutingPreference", "description": "Maintains information about the network routing choice opted by the user for data transfer" + }, + "blobRestoreStatus": { + "$ref": "#/definitions/BlobRestoreStatus", + "x-ms-client-name": "BlobRestoreStatus", + "description": "Blob restore status", + "readOnly": true } }, "description": "Properties of the storage account." @@ -2227,6 +2733,44 @@ }, "description": "The parameters that can be provided when updating the storage account properties." }, + "BlobRestoreParameters": { + "properties": { + "timeToRestore": { + "type": "string", + "format": "date-time", + "description": "Restore blob to the specified time." + }, + "blobRanges": { + "type": "array", + "items": { + "$ref": "#/definitions/BlobRestoreRange" + }, + "description": "Blob ranges to restore." + } + }, + "required": [ + "timeToRestore", + "blobRanges" + ], + "description": "Blob restore parameters" + }, + "BlobRestoreRange": { + "properties": { + "startRange": { + "type": "string", + "description": "Blob start range. This is inclusive. Empty means account start." + }, + "endRange": { + "type": "string", + "description": "Blob end range. This is exclusive. Empty means account end." + } + }, + "required": [ + "startRange", + "endRange" + ], + "description": "Blob range" + }, "UsageName": { "properties": { "value": { @@ -2602,7 +3146,7 @@ "Lifecycle" ], "x-ms-enum": { - "name": "type", + "name": "RuleType", "modelAsString": true } }, @@ -2865,6 +3409,197 @@ }, "description": "Properties of a private link resource." }, + "EncryptionScope": { + "properties": { + "properties": { + "$ref": "#/definitions/EncryptionScopeProperties", + "x-ms-client-flatten": true, + "x-ms-client-name": "EncryptionScopeProperties", + "description": "Properties of the encryption scope." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "The Encryption Scope resource." + }, + "EncryptionScopeProperties": { + "properties": { + "source": { + "type": "string", + "enum": [ + "Microsoft.Storage", + "Microsoft.KeyVault" + ], + "x-ms-enum": { + "name": "EncryptionScopeSource", + "modelAsString": true + }, + "description": "The provider for the encryption scope. Possible values (case-insensitive): Microsoft.Storage, Microsoft.KeyVault." + }, + "state": { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "EncryptionScopeState", + "modelAsString": true + }, + "description": "The state of the encryption scope. Possible values (case-insensitive): Enabled, Disabled." + }, + "creationTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Gets the creation date and time of the encryption scope in UTC." + }, + "lastModifiedTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Gets the last modification date and time of the encryption scope in UTC." + }, + "keyVaultProperties": { + "$ref": "#/definitions/EncryptionScopeKeyVaultProperties", + "description": "The key vault properties for the encryption scope. This is a required field if encryption scope 'source' attribute is set to 'Microsoft.KeyVault'." + } + }, + "description": "Properties of the encryption scope." + }, + "EncryptionScopeKeyVaultProperties": { + "properties": { + "keyUri": { + "type": "string", + "description": "The object identifier for a key vault key object. When applied, the encryption scope will use the key referenced by the identifier to enable customer-managed key support on this encryption scope." + } + }, + "description": "The key vault properties for the encryption scope. This is a required field if encryption scope 'source' attribute is set to 'Microsoft.KeyVault'." + }, + "EncryptionScopeListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EncryptionScope" + }, + "description": "List of encryption scopes requested.", + "readOnly": true + }, + "nextLink": { + "type": "string", + "description": "Request URL that can be used to query next page of encryption scopes. Returned when total number of requested encryption scopes exceeds the maximum page size.", + "readOnly": true + } + }, + "description": "List of encryption scopes requested, and if paging is required, a URL to the next page of encryption scopes." + }, + "ObjectReplicationPolicies": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ObjectReplicationPolicy" + }, + "description": "The replication policy between two storage accounts." + } + }, + "description": "List storage account object replication policies." + }, + "ObjectReplicationPolicy": { + "properties": { + "properties": { + "$ref": "#/definitions/ObjectReplicationPolicyProperties", + "x-ms-client-flatten": true, + "description": "Returns the Storage Account Object Replication Policy." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/Resource" + } + ], + "description": "The replication policy between two storage accounts. Multiple rules can be defined in one policy." + }, + "ObjectReplicationPolicyProperties": { + "properties": { + "policyId": { + "readOnly": true, + "type": "string", + "description": "A unique id for object replication policy." + }, + "enabledTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Indicates when the policy is enabled on the source account." + }, + "sourceAccount": { + "type": "string", + "description": "Required. Source account name." + }, + "destinationAccount": { + "type": "string", + "description": "Required. Destination account name." + }, + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/ObjectReplicationPolicyRule" + }, + "description": "The storage account object replication rules." + } + }, + "required": [ + "sourceAccount", + "destinationAccount" + ], + "description": "The Storage Account ObjectReplicationPolicy properties." + }, + "ObjectReplicationPolicyRule": { + "properties": { + "ruleId": { + "type": "string", + "description": "Rule Id is auto-generated for each new rule on destination account. It is required for put policy on source account." + }, + "sourceContainer": { + "type": "string", + "description": "Required. Source container name." + }, + "destinationContainer": { + "type": "string", + "description": "Required. Destination container name." + }, + "filters": { + "$ref": "#/definitions/ObjectReplicationPolicyFilter", + "description": "Optional. An object that defines the filter set." + } + }, + "required": [ + "sourceContainer", + "destinationContainer" + ], + "description": "The replication policy rule between two containers." + }, + "ObjectReplicationPolicyFilter": { + "properties": { + "prefixMatch": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Optional. Filters the results to replicate only blobs whose names begin with the specified prefix." + }, + "minCreationTime": { + "type": "string", + "description": "Blobs created after the time will be replicated to the destination. It must be in datetime format 'yyyy-MM-ddTHH:mm:ssZ'. Example: 2020-02-19T16:05:00Z" + } + }, + "description": "Filters limit replication to a subset of blobs within the storage account. A logical OR is performed on values in the filter. If multiple filters are defined, a logical AND is performed on all filters." + }, "ErrorResponse": { "properties": { "code": { @@ -2923,6 +3658,25 @@ "type": "string", "description": "The name of the private endpoint connection associated with the Storage Account", "x-ms-parameter-location": "method" + }, + "EncryptionScopeName": { + "name": "encryptionScopeName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the encryption scope within the specified storage account. Encryption scope names must be between 3 and 63 characters in length and use numbers, lower-case letters and dash (-) only. Every dash (-) character must be immediately preceded and followed by a letter or number.", + "maxLength": 63, + "minLength": 3, + "x-ms-parameter-location": "method" + }, + "ObjectReplicationPolicyId": { + "name": "objectReplicationPolicyId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of object replication policy or 'default' if the policy ID is unknown.", + "minLength": 1, + "x-ms-parameter-location": "method" } }, "securityDefinitions": { diff --git a/specification/storage/resource-manager/readme.cli.md b/specification/storage/resource-manager/readme.cli.md new file mode 100644 index 000000000000..e86a28f1552a --- /dev/null +++ b/specification/storage/resource-manager/readme.cli.md @@ -0,0 +1,66 @@ +## CLI + +These settings don't need to apply `--cli` on the command line. + +``` yaml +cli: + cli-name: storage + package-name: azure-mgmt-storage + namespace: azure.mgmt.storage + test-scenario: + - name: StorageAccountCreate + - name: PutFileServices + - name: PutBlobServices + - name: StorageAccountPutEncryptionScope + - name: StorageAccountSetManagementPolicies + - name: PutShares + - name: StorageAccountPutPrivateEndpointConnection + - name: PutContainers + - name: CreateOrUpdateImmutabilityPolicy + - name: GetImmutabilityPolicy + - name: GetContainers + - name: StorageAccountGetPrivateEndpointConnection + - name: GetShares + - name: StorageAccountGetManagementPolicies + - name: ListContainers + - name: StorageAccountGetEncryptionScope + - name: ListShares + - name: GetBlobServices + - name: GetFileServices + - name: StorageAccountListPrivateLinkResources + - name: StorageAccountEncryptionScopeList + - name: ListBlobServices + - name: ListFileServices + - name: StorageAccountGetProperties + - name: StorageAccountListByResourceGroup + - name: UsageList + - name: StorageAccountList + - name: SkuList + - name: OperationsList + - name: ExtendImmutabilityPolicy + - name: LockImmutabilityPolicy + - name: ClearLegalHoldContainers + - name: SetLegalHoldContainers + - name: Break a lease on a container + - name: Acquire a lease on a container + - name: UpdateContainers + - name: UpdateShares + - name: StorageAccountPatchEncryptionScope + - name: StorageAccountRevokeUserDelegationKeys + - name: BlobRangesRestore + - name: StorageAccountListServiceSAS + - name: StorageAccountListAccountSAS + - name: StorageAccountRegenerateKey + - name: StorageAccountRegenerateKerbKey + - name: StorageAccountListKeys + - name: StorageAccountFailover + - name: StorageAccountEnableAD + - name: StorageAccountUpdate + - name: StorageAccountCheckNameAvailability + - name: DeleteImmutabilityPolicy + - name: DeleteContainers + - name: StorageAccountDeletePrivateEndpointConnection + - name: DeleteShares + - name: StorageAccountDeleteManagementPolicies + - name: StorageAccountDelete +``` \ No newline at end of file diff --git a/specification/storage/resource-manager/readme.python.md b/specification/storage/resource-manager/readme.python.md index 56bb191e919e..33cad3bd0119 100644 --- a/specification/storage/resource-manager/readme.python.md +++ b/specification/storage/resource-manager/readme.python.md @@ -2,21 +2,44 @@ These settings apply only when `--python` is specified on the command line. -```yaml $(python) +```yaml !$(track2) python: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION - payload-flattening-threshold: 2 package-name: azure-mgmt-storage + payload-flattening-threshold: 2 clear-output-folder: true no-namespace-folders: true ``` +``` yaml $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-storage +no-namespace-folders: true +``` + ### Python multi-api Generate all API versions currently shipped for this package -```yaml $(python) && $(multiapi) +```yaml $(multiapi) && !$(track2) +batch: + - tag: package-2019-06 + - tag: package-2019-04 + - tag: package-2018-11 + - tag: package-2018-07 + - tag: package-2018-03 + - tag: package-2018-02 + - tag: package-2017-10 + - tag: package-2017-06 + - tag: package-2016-12 + - tag: package-2016-01 + - tag: package-2015-06 +``` + +```yaml $(multiapi) && $(track2) +clear-output-folder: true batch: - tag: package-2019-06 - tag: package-2019-04 @@ -29,6 +52,13 @@ batch: - tag: package-2016-12 - tag: package-2016-01 - tag: package-2015-06 + - multiapiscript: true +``` + +``` yaml $(multiapiscript) +output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/ +clear-output-folder: false +perform-load: false ``` ### Tag: package-2019-06 and python @@ -36,7 +66,9 @@ batch: These settings apply only when `--tag=package-2019-06 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2019-06' && $(python) +``` yaml $(tag) == 'package-2019-06' +namespace: azure.mgmt.storage.v2019_06_01 +output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2019_06_01 python: namespace: azure.mgmt.storage.v2019_06_01 output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2019_06_01 @@ -46,7 +78,9 @@ python: These settings apply only when `--tag=package-2019-04 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2019-04' && $(python) +``` yaml $(tag) == 'package-2019-04' +namespace: azure.mgmt.storage.v2019_04_01 +output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2019_04_01 python: namespace: azure.mgmt.storage.v2019_04_01 output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2019_04_01 @@ -57,7 +91,9 @@ python: These settings apply only when `--tag=package-2018-11 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-11' && $(python) +``` yaml $(tag) == 'package-2018-11' +namespace: azure.mgmt.storage.v2018_11_01 +output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2018_11_01 python: namespace: azure.mgmt.storage.v2018_11_01 output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2018_11_01 @@ -68,7 +104,9 @@ python: These settings apply only when `--tag=package-2018-07 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-07' && $(python) +``` yaml $(tag) == 'package-2018-07' +namespace: azure.mgmt.storage.v2018_07_01 +output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01 python: namespace: azure.mgmt.storage.v2018_07_01 output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2018_07_01 @@ -79,7 +117,9 @@ python: These settings apply only when `--tag=package-2018-03 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-03' && $(python) +``` yaml $(tag) == 'package-2018-03' +namespace: azure.mgmt.storage.v2018_03_01_preview +output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2018_03_01_preview python: namespace: azure.mgmt.storage.v2018_03_01_preview output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2018_03_01_preview @@ -90,7 +130,9 @@ python: These settings apply only when `--tag=package-2018-02 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2018-02' && $(python) +``` yaml $(tag) == 'package-2018-02' +namespace: azure.mgmt.storage.v2018_02_01 +output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2018_02_01 python: namespace: azure.mgmt.storage.v2018_02_01 output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2018_02_01 @@ -101,7 +143,9 @@ python: These settings apply only when `--tag=package-2017-10 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2017-10' && $(python) +``` yaml $(tag) == 'package-2017-10' +namespace: azure.mgmt.storage.v2017_10_01 +output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2017_10_01 python: namespace: azure.mgmt.storage.v2017_10_01 output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2017_10_01 @@ -112,7 +156,9 @@ python: These settings apply only when `--tag=package-2017-06 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2017-06' && $(python) +``` yaml $(tag) == 'package-2017-06' +namespace: azure.mgmt.storage.v2017_06_01 +output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2017_06_01 python: namespace: azure.mgmt.storage.v2017_06_01 output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2017_06_01 @@ -123,7 +169,9 @@ python: These settings apply only when `--tag=package-2016-12 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2016-12' && $(python) +``` yaml $(tag) == 'package-2016-12' +namespace: azure.mgmt.storage.v2016_12_01 +output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2016_12_01 python: namespace: azure.mgmt.storage.v2016_12_01 output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2016_12_01 @@ -134,7 +182,9 @@ python: These settings apply only when `--tag=package-2016-01 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2016-01' && $(python) +``` yaml $(tag) == 'package-2016-01' +namespace: azure.mgmt.storage.v2016_01_01 +output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2016_01_01 python: namespace: azure.mgmt.storage.v2016_01_01 output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2016_01_01 @@ -145,7 +195,9 @@ python: These settings apply only when `--tag=package-2015-06 --python` is specified on the command line. Please also specify `--python-sdks-folder=`. -``` yaml $(tag) == 'package-2015-06' && $(python) +``` yaml $(tag) == 'package-2015-06' +namespace: azure.mgmt.storage.v2015_06_15 +output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2015_06_15 python: namespace: azure.mgmt.storage.v2015_06_15 output-folder: $(python-sdks-folder)/storage/azure-mgmt-storage/azure/mgmt/storage/v2015_06_15 diff --git a/specification/storagecache/resource-manager/readme.az.md b/specification/storagecache/resource-manager/readme.az.md new file mode 100644 index 000000000000..33ab6c233753 --- /dev/null +++ b/specification/storagecache/resource-manager/readme.az.md @@ -0,0 +1,24 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +``` yaml $(az) +az: + extensions: storagecache + namespace: azure.mgmt.storagecache + package-name: azure-mgmt-storagecache +az-output-folder: $(azure-cli-extension-folder)/src/storagecache +python-sdk-output-folder: "$(az-output-folder)/azext_storagecache/vendored_sdks/storagecache" + +#cli: +# cli-directive: +# directive on operationGroup +# - select: 'operationGroup' +# where: +# operationGroup: 'operations' +# hidden: true +# - where: +# parameter: location +# required: true + +``` diff --git a/specification/storagecache/resource-manager/readme.cli.md b/specification/storagecache/resource-manager/readme.cli.md new file mode 100644 index 000000000000..a9e918eefe21 --- /dev/null +++ b/specification/storagecache/resource-manager/readme.cli.md @@ -0,0 +1,9 @@ + CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +#cli: +# test-scenario: +# - name: Factories_CreateOrUpdate +``` diff --git a/specification/storagecache/resource-manager/readme.md b/specification/storagecache/resource-manager/readme.md index de19e2e45f8c..db96192347e6 100644 --- a/specification/storagecache/resource-manager/readme.md +++ b/specification/storagecache/resource-manager/readme.md @@ -64,6 +64,7 @@ swagger-to-sdk: - repo: azure-sdk-for-ruby after_scripts: - bundle install && rake arm:regen_all_profiles['azure_mgmt_storagecache'] + - repo: azure-cli-extensions ``` ## Python diff --git a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/CreateJob.json b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/CreateJob.json index f9d11ac2df19..9dea85818798 100644 --- a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/CreateJob.json +++ b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/CreateJob.json @@ -1,13 +1,13 @@ { "parameters": { "api-version": "2016-11-01", - "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", - "resourceGroupName": "Default-Storage-WestUS", - "jobName": "test-by1-import", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "jobName": "myJob", "body": { "location": "West US", "properties": { - "storageAccountId": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/Default-Storage-WestUS/providers/Microsoft.ClassicStorage/storageAccounts/test", + "storageAccountId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ClassicStorage/storageAccounts/test", "jobType": "Import", "returnAddress": { "recipientName": "Tets", @@ -39,7 +39,7 @@ "200": { "body": { "properties": { - "storageAccountId": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/Default-Storage-WestUS/providers/Microsoft.ClassicStorage/storageAccounts/test", + "storageAccountId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ClassicStorage/storageAccounts/test", "jobType": "Import", "returnAddress": { "recipientName": "Tets", @@ -78,8 +78,8 @@ ], "provisioningState": "Succeeded" }, - "id": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/Default-Storage-WestUS/providers/Microsoft.ImportExport/jobs/test", - "name": "test-by1-import", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ImportExport/jobs/myJob", + "name": "myJob", "type": "Microsoft.ImportExport/jobs", "location": "West US" } @@ -87,7 +87,7 @@ "201": { "body": { "properties": { - "storageAccountId": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/Default-Storage-WestUS/providers/Microsoft.ClassicStorage/storageAccounts/test", + "storageAccountId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ClassicStorage/storageAccounts/test", "jobType": "Import", "returnAddress": { "recipientName": "Tets", @@ -126,8 +126,8 @@ ], "provisioningState": "Succeeded" }, - "id": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/Default-Storage-WestUS/providers/Microsoft.ImportExport/jobs/test", - "name": "test-by1-import", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ImportExport/jobs/myJob", + "name": "myJob", "type": "Microsoft.ImportExport/jobs", "location": "West US" } diff --git a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/DeleteJob.json b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/DeleteJob.json index 37b2b754c6bc..2b69050a8f49 100644 --- a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/DeleteJob.json +++ b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/DeleteJob.json @@ -1,14 +1,14 @@ { "parameters": { "api-version": "2016-11-01", - "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", - "resourceGroupName": "Default-Storage-WestUS", - "jobName": "test-by1-import" + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "jobName": "myJob" }, "responses": { "200": { "properties": { - "storageAccountId": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/Default-Storage-WestUS/providers/Microsoft.ClassicStorage/storageAccounts/test", + "storageAccountId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ClassicStorage/storageAccounts/test", "jobType": "Import", "returnAddress": { "recipientName": "Tets", @@ -47,8 +47,8 @@ ], "provisioningState": "Succeeded" }, - "id": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/Default-Storage-WestUS/providers/Microsoft.ImportExport/jobs/test", - "name": "test-by1-import", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ImportExport/jobs/test", + "name": "myJob", "type": "Microsoft.ImportExport/jobs", "location": "West US" } diff --git a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/GetJob.json b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/GetJob.json index 148beb2dc74c..f18299e4c3c0 100644 --- a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/GetJob.json +++ b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/GetJob.json @@ -1,15 +1,15 @@ { "parameters": { "api-version": "2016-11-01", - "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", - "resourceGroupName": "Default-Storage-WestUS", - "jobName": "test-by1-import" + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "jobName": "myJob" }, "responses": { "200": { "body": { "properties": { - "storageAccountId": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/Default-Storage-WestUS/providers/Microsoft.ClassicStorage/storageAccounts/test", + "storageAccountId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ClassicStorage/storageAccounts/test", "jobType": "Import", "returnAddress": { "recipientName": "Tets", @@ -48,8 +48,8 @@ ], "provisioningState": "Succeeded" }, - "id": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/Default-Storage-WestUS/providers/Microsoft.ImportExport/jobs/test", - "name": "test-by1-import", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ImportExport/jobs/test", + "name": "myJob", "type": "Microsoft.ImportExport/jobs", "location": "West US" } diff --git a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/ListBitLockerKeys.json b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/ListBitLockerKeys.json index 38c483bbbdad..35e9355fe822 100644 --- a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/ListBitLockerKeys.json +++ b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/ListBitLockerKeys.json @@ -1,9 +1,9 @@ { "parameters": { "api-version": "2016-11-01", - "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", - "resourceGroupName": "Default-Storage-WestUS", - "jobName": "test-by1-import" + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "jobName": "myJob" }, "responses": { "200": { diff --git a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/ListJobsInResourceGroup.json b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/ListJobsInResourceGroup.json index 706514e82e46..f6f10d44d4d2 100644 --- a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/ListJobsInResourceGroup.json +++ b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/ListJobsInResourceGroup.json @@ -1,8 +1,8 @@ { "parameters": { "api-version": "2016-11-01", - "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", - "resourceGroupName": "Default-Storage-WestUS" + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup" }, "responses": { "200": { @@ -10,7 +10,7 @@ "value": [ { "properties": { - "storageAccountId": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/Default-Storage-WestUS/providers/Microsoft.ClassicStorage/storageAccounts/xtprodtestwu", + "storageAccountId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ClassicStorage/storageAccounts/xtprodtestwu", "jobType": "Import", "returnAddress": { "recipientName": "La", @@ -46,7 +46,7 @@ "state": "Received", "provisioningState": "Succeeded" }, - "id": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/Default-Storage-WestUS/providers/Microsoft.ImportExport/jobs/test-by1-ssd-2", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ImportExport/jobs/test-by1-ssd-2", "name": "test-by1-ssd-2", "type": "Microsoft.ImportExport/jobs", "location": "West US" diff --git a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/ListJobsInSubscription.json b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/ListJobsInSubscription.json index 6d7de1d7d00e..5f15bc48c88b 100644 --- a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/ListJobsInSubscription.json +++ b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/ListJobsInSubscription.json @@ -1,7 +1,7 @@ { "parameters": { "api-version": "2016-11-01", - "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" }, "responses": { "200": { @@ -9,7 +9,7 @@ "value": [ { "properties": { - "storageAccountId": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/testrg/providers/Microsoft.Storage/storageAccounts/xtprodtestarmos2", + "storageAccountId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/testrg/providers/Microsoft.Storage/storageAccounts/xtprodtestarmos2", "jobType": "Import", "returnAddress": { "recipientName": "La", @@ -53,14 +53,14 @@ ], "provisioningState": "Succeeded" }, - "id": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/testrg/providers/Microsoft.ImportExport/jobs/test-bn1-import-cpu100-01", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/testrg/providers/Microsoft.ImportExport/jobs/test-bn1-import-cpu100-01", "name": "test-bn1-import-cpu100-01", "type": "Microsoft.ImportExport/jobs", "location": "East US 2" }, { "properties": { - "storageAccountId": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/testrg/providers/Microsoft.Storage/storageAccounts/xtprodtestarmos2", + "storageAccountId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/testrg/providers/Microsoft.Storage/storageAccounts/xtprodtestarmos2", "jobType": "Import", "returnAddress": { "recipientName": "La", @@ -109,7 +109,7 @@ ], "provisioningState": "Succeeded" }, - "id": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/testrg/providers/Microsoft.ImportExport/jobs/test-bn1-import-cpu100-02", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/testrg/providers/Microsoft.ImportExport/jobs/test-bn1-import-cpu100-02", "name": "test-bn1-import-cpu100-02", "type": "Microsoft.ImportExport/jobs", "location": "East US 2" diff --git a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/UpdateJob.json b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/UpdateJob.json index fbd80906abc7..2b930e957008 100644 --- a/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/UpdateJob.json +++ b/specification/storageimportexport/resource-manager/Microsoft.ImportExport/stable/2016-11-01/examples/UpdateJob.json @@ -1,9 +1,9 @@ { "parameters": { "api-version": "2016-11-01", - "subscriptionId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", - "resourceGroupName": "Default-Storage-WestUS", - "jobName": "test-by1-import", + "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", + "resourceGroupName": "myResourceGroup", + "jobName": "myJob", "body": { "properties": { "state": "", @@ -16,7 +16,7 @@ "200": { "body": { "properties": { - "storageAccountId": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/Default-Storage-WestUS/providers/Microsoft.ClassicStorage/storageAccounts/test", + "storageAccountId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ClassicStorage/storageAccounts/test", "jobType": "Import", "returnAddress": { "recipientName": "Tets", @@ -55,8 +55,8 @@ ], "provisioningState": "Succeeded" }, - "id": "/subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/Default-Storage-WestUS/providers/Microsoft.ImportExport/jobs/test-by1-import", - "name": "test-by1-import", + "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ImportExport/jobs/myJob", + "name": "myJob", "type": "Microsoft.ImportExport/jobs", "location": "West US" } diff --git a/specification/storageimportexport/resource-manager/readme.az.md b/specification/storageimportexport/resource-manager/readme.az.md new file mode 100644 index 000000000000..ad96349897fd --- /dev/null +++ b/specification/storageimportexport/resource-manager/readme.az.md @@ -0,0 +1,18 @@ +## Azure CLI + +These settings apply only when `--az` is specified on the command line. + +``` yaml $(az) +az: + extensions: storageimportexport + package-name: azure-mgmt-storageimportexport + namespace: azure.mgmt.storageimportexport +az-output-folder: $(azure-cli-extension-folder)/src/storageimportexport +python-sdk-output-folder: "$(az-output-folder)/azext_storageimportexport/vendored_sdks/storageimportexport" +cli: + cli-directive: + - where: + type: 'PutJobParameters' + prop: 'properties' + flatten: true +``` diff --git a/specification/storageimportexport/resource-manager/readme.cli.md b/specification/storageimportexport/resource-manager/readme.cli.md new file mode 100644 index 000000000000..94c1be9eda47 --- /dev/null +++ b/specification/storageimportexport/resource-manager/readme.cli.md @@ -0,0 +1,20 @@ +## CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +cli: + cli-name: storageimportexport + namespace: azure.mgmt.storageimportexport + package-name: azure-mgmt-storageimportexport + test-scenario: + - name: /Jobs/put/Create job + - name: /Jobs/get/Get job + - name: /Locations/get/Get locations + - name: /BitLockerKeys/post/List BitLocker Keys for drives in a job + - name: /Jobs/get/List jobs in a resource group + - name: /Jobs/get/List jobs in a subscription + - name: /Locations/get/List locations + - name: /Jobs/patch/Update job + - name: /Jobs/delete/Delete job +``` diff --git a/specification/storageimportexport/resource-manager/readme.md b/specification/storageimportexport/resource-manager/readme.md index f4287bb39963..7b2c9dc33212 100644 --- a/specification/storageimportexport/resource-manager/readme.md +++ b/specification/storageimportexport/resource-manager/readme.md @@ -53,6 +53,7 @@ swagger-to-sdk: - repo: azure-sdk-for-go - repo: azure-sdk-for-node - repo: azure-sdk-for-js + - repo: azure-cli-extensions ``` ## Go diff --git a/specification/storageimportexport/resource-manager/readme.python.md b/specification/storageimportexport/resource-manager/readme.python.md new file mode 100644 index 000000000000..5cd84499782f --- /dev/null +++ b/specification/storageimportexport/resource-manager/readme.python.md @@ -0,0 +1,27 @@ +## 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 $(python) +python-mode: create +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: azure.mgmt.storageimportexport + package-name: azure-mgmt-storageimportexport + clear-output-folder: true + package-version: 0.1.0 +``` +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/storageimportexport/azure-mgmt-storageimportexport/azure/mgmt/storageimportexport +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/storageimportexport/azure-mgmt-storageimportexport +``` diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/CloudEndpoints_Create.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/CloudEndpoints_Create.json new file mode 100644 index 000000000000..3697e0e17e55 --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/CloudEndpoints_Create.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "storageSyncServiceName": "SampleStorageSyncService_1", + "syncGroupName": "SampleSyncGroup_1", + "cloudEndpointName": "SampleCloudEndpoint_1", + "api-version": "2019-10-01", + "parameters": { + "properties": { + "storageAccountResourceId": "/subscriptions/744f4d70-6d17-4921-8970-a765d14f763f/resourceGroups/tminienv59svc/providers/Microsoft.Storage/storageAccounts/tminienv59storage", + "azureFileShareName": "cvcloud-afscv-0719-058-a94a1354-a1fd-4e9a-9a50-919fad8c4ba4", + "storageAccountTenantId": "\"72f988bf-86f1-41af-91ab-2d7cd011db47\"", + "friendlyName": "ankushbsubscriptionmgmtmab" + } + } + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + }, + "body": { + "name": "SampleCloudEndpoint_1", + "properties": { + "backupEnabled": "false", + "provisioningState": "Succeeded", + "storageAccountResourceId": "/subscriptions/744f4d70-6d17-4921-8970-a765d14f763f/resourceGroups/tminienv59svc/providers/Microsoft.Storage/storageAccounts/tminienv59storage", + "azureFileShareName": "cvcloud-afscv-0719-058-a94a1354-a1fd-4e9a-9a50-919fad8c4ba4", + "storageAccountTenantId": "\"72f988bf-86f1-41af-91ab-2d7cd011db47\"", + "friendlyName": "ankushbsubscriptionmgmtmab", + "lastWorkflowId": "storageSyncServices/GATest/workflows/24ba0c4a-348e-419b-8f7a-091d0d9f07a4", + "partnershipId": "1|U0VSVkVSQVNTWU5DQ0xJRU5USEZTVjJ8RjhDODcwQTItMkFGNi00NDUyLTgzMDgtRjJCQTZEQjI3RkEwfEdFTkVSSUN8NTJCOERBMkYtNjFFMC00QTFGLThEREUtMzM2OTExRjM2N0ZC", + "lastOperationName": "ICreateCloudEndpointWorkflow" + }, + "id": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/syncGroups/SampleSyncGroup_1/cloudEndpoints/SampleCloudEndpoint_1", + "type": "Microsoft.StorageSync/storageSyncServices/syncGroups/cloudEndpoints" + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncservice_1/workflows/c1d54be7-4738-4898-8212-cc36774314f8/operations/7ce689b2-0eca-48f5-86f0-0b8d6ceef14a?api-version=2019-10-01", + "Location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncservice_1/workflows/c1d54be7-4738-4898-8212-cc36774314f8/operationresults/7ce689b2-0eca-48f5-86f0-0b8d6ceef14a?api-version=2019-10-01", + "Retry-After": "10", + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/CloudEndpoints_Delete.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/CloudEndpoints_Delete.json new file mode 100644 index 000000000000..f4afcbc15094 --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/CloudEndpoints_Delete.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "storageSyncServiceName": "SampleStorageSyncService_1", + "syncGroupName": "SampleSyncGroup_1", + "cloudEndpointName": "SampleCloudEndpoint_1", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/78a71465-77ef-4509-a026-2c0cd8b30208/operations/2d7f573a-7acd-4a3c-9425-fed7d029c69d?api-version=2019-10-01", + "Location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/78a71465-77ef-4509-a026-2c0cd8b30208/operationresults/2d7f573a-7acd-4a3c-9425-fed7d029c69d?api-version=2019-10-01", + "Retry-After": "10", + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + } + }, + "204": {} + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/CloudEndpoints_Get.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/CloudEndpoints_Get.json new file mode 100644 index 000000000000..f0b6e307b29d --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/CloudEndpoints_Get.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "storageSyncServiceName": "SampleStorageSyncService_1", + "syncGroupName": "SampleSyncGroup_1", + "cloudEndpointName": "SampleCloudEndpoint_1", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + }, + "body": { + "name": "SampleCloudEndpoint_1", + "properties": { + "provisioningState": "Succeeded", + "storageAccountResourceId": "", + "azureFileShareName": "", + "storageAccountTenantId": "\"a4d1b191-c1af-4cef-a14b-f670e0beea52\"", + "lastWorkflowId": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/a377fdd5-949a-40ab-9629-06cd0e9852f9", + "friendlyName": "SampleAzureFileShareName_1", + "partnershipId": "1|U0VSVkVSQVNTWU5DQ0xJRU5USEZTVjJ8MTkxNjYwQ0QtNkExQS00RjhDLTk3ODctQTZCRUQyMDZBMUREfEdFTkVSSUN8M0EwNDgyODMtMzM4Ri00MDAyLUE5REQtQTUwRkRBRENCMzky", + "lastOperationName": "ICreateCloudEndpointWorkflow" + }, + "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/syncGroups/SyncGroup_Restore_08-08_Test112/cloudEndpoints/CEP_Restore_08-08_Test112", + "type": "Microsoft.StorageSync/storageSyncServices/syncGroups/cloudEndpoints" + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/CloudEndpoints_ListBySyncGroup.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/CloudEndpoints_ListBySyncGroup.json new file mode 100644 index 000000000000..cd52b7793367 --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/CloudEndpoints_ListBySyncGroup.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "storageSyncServiceName": "SampleStorageSyncService_1", + "syncGroupName": "SampleSyncGroup_1", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + }, + "body": { + "value": [ + { + "name": "CEP_Restore_08-08_Test112", + "properties": { + "provisioningState": "Succeeded", + "storageAccountResourceId": "", + "azureFileShareName": "", + "storageAccountTenantId": "\"a4d1b191-c1af-4cef-a14b-f670e0beea52\"", + "lastWorkflowId": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/a377fdd5-949a-40ab-9629-06cd0e9852f9", + "friendlyName": "SampleAzureFileShareName_1", + "partnershipId": "1|U0VSVkVSQVNTWU5DQ0xJRU5Udfsdfdsfs8MTkxNjYwQ0QtNkExQS00RjhDLTk3ODctQTZCRUQyMDZBMUREfEdFTkVSSUN8M0EwNDgyODMtMzM4Ri00MDAyLUE5REQtQTUwRkRBRENCMzky", + "lastOperationName": "ICreateCloudEndpointWorkflow" + }, + "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/syncGroups/SyncGroup_Restore_08-08_Test112/cloudEndpoints/CEP_Restore_08-08_Test112", + "type": "Microsoft.StorageSync/storageSyncServices/syncGroups/cloudEndpoints" + } + ] + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/CloudEndpoints_PostBackup.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/CloudEndpoints_PostBackup.json new file mode 100644 index 000000000000..05299f90a70e --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/CloudEndpoints_PostBackup.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "storageSyncServiceName": "SampleStorageSyncService_1", + "syncGroupName": "SampleSyncGroup_1", + "cloudEndpointName": "SampleCloudEndpoint_1", + "parameters": { + "azureFileShare": "https://sampleserver.file.core.test-cint.azure-test.net/sampleFileShare" + }, + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + }, + "body": { + "backupMetadata": { + "cloudEndpointName": "subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/syncGroups/SampleSyncGroup_1/cloudEndpoints/SampleCloudEndpoint_1" + } + } + }, + "202": { + "headers": { + "x-ms-location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/HfsMabFS1/syncGroups/HfsMabDS1/cloudEndpoints/HfsMabCE1/operationresults/baa40401-b043-4d1b-a80b-cb4e79fa1398?api-version=2019-10-01&resourcetype=PostBackupResourceType&ifxctx3=1847a938-7638-4d1b-943c-96ff2f8a2ec8", + "Retry-After": "10", + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/CloudEndpoints_PostRestore.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/CloudEndpoints_PostRestore.json new file mode 100644 index 000000000000..290ea339f723 --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/CloudEndpoints_PostRestore.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "storageSyncServiceName": "SampleStorageSyncService_1", + "syncGroupName": "SampleSyncGroup_1", + "cloudEndpointName": "SampleCloudEndpoint_1", + "parameters": { + "azureFileShareUri": "https://hfsazbackupdevintncus2.file.core.test-cint.azure-test.net/sampleFileShare", + "sourceAzureFileShareUri": "https://hfsazbackupdevintncus2.file.core.test-cint.azure-test.net/sampleFileShare", + "status": "Succeeded", + "restoreFileSpec": [ + { + "path": "text1.txt", + "isdir": false + }, + { + "path": "MyDir", + "isdir": true + }, + { + "path": "MyDir/SubDir", + "isdir": false + }, + { + "path": "MyDir/SubDir/File1.pdf", + "isdir": false + } + ] + }, + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + } + }, + "202": { + "headers": { + "x-ms-location": "https: //management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/HfsMabFS1/syncGroups/HfsMabDS1/cloudEndpoints/HfsMabCE1/operationresults/d67cfb91-1b13-4710-8226-83467bb5b66d?api-version=2019-10-01&resourcetype=preBackupResourceType&ifxctx3=005909ad-d156-4514-a26e-dd1cc566db64", + "Retry-After": "10", + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/CloudEndpoints_PreBackup.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/CloudEndpoints_PreBackup.json new file mode 100644 index 000000000000..3848c6539c42 --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/CloudEndpoints_PreBackup.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "storageSyncServiceName": "SampleStorageSyncService_1", + "syncGroupName": "SampleSyncGroup_1", + "cloudEndpointName": "SampleCloudEndpoint_1", + "api-version": "2019-10-01", + "parameters": { + "azureFileShare": "https://sampleserver.file.core.test-cint.azure-test.net/sampleFileShare" + } + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + } + }, + "202": { + "headers": { + "x-ms-location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/HfsMabFS1/syncGroups/HfsMabDS1/cloudEndpoints/HfsMabCE1/operationresults/d67cfb91-1b13-4710-8226-83467bb5b66d?api-version=2019-10-01&resourcetype=preBackupResourceType&ifxctx3=005909ad-d156-4514-a26e-dd1cc566db64", + "Retry-After": "10", + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/CloudEndpoints_PreRestore.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/CloudEndpoints_PreRestore.json new file mode 100644 index 000000000000..b93e3c68185d --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/CloudEndpoints_PreRestore.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "storageSyncServiceName": "SampleStorageSyncService_1", + "syncGroupName": "SampleSyncGroup_1", + "cloudEndpointName": "SampleCloudEndpoint_1", + "api-version": "2019-10-01", + "parameters": { + "azureFileShareUri": "https://hfsazbackupdevintncus2.file.core.test-cint.azure-test.net/sampleFileShare", + "restoreFileSpec": [ + { + "path": "text1.txt", + "isdir": false + }, + { + "path": "MyDir", + "isdir": true + }, + { + "path": "MyDir/SubDir", + "isdir": false + }, + { + "path": "MyDir/SubDir/File1.pdf", + "isdir": false + } + ] + } + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + } + }, + "202": { + "headers": { + "x-ms-location": "https: //management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/HfsMabFS1/syncGroups/HfsMabDS1/cloudEndpoints/HfsMabCE1/operationresults/d67cfb91-1b13-4710-8226-83467bb5b66d?api-version=2019-10-01&resourcetype=preBackupResourceType&ifxctx3=005909ad-d156-4514-a26e-dd1cc566db64", + "Retry-After": "10", + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/CloudEndpoints_RestoreHeatbeat.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/CloudEndpoints_RestoreHeatbeat.json new file mode 100644 index 000000000000..9ce4ee0623ce --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/CloudEndpoints_RestoreHeatbeat.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "storageSyncServiceName": "SampleStorageSyncService_1", + "syncGroupName": "SampleSyncGroup_1", + "cloudEndpointName": "SampleCloudEndpoint_1", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/CloudEndpoints_TriggerChangeDetection.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/CloudEndpoints_TriggerChangeDetection.json new file mode 100644 index 000000000000..8d6448a6f84e --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/CloudEndpoints_TriggerChangeDetection.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "storageSyncServiceName": "SampleStorageSyncService_1", + "syncGroupName": "SampleSyncGroup_1", + "cloudEndpointName": "SampleCloudEndpoint_1", + "parameters": { + "directoryPath": "NewDirectory", + "changeDetectionMode": "Recursive" + }, + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + } + }, + "202": { + "headers": { + "x-ms-location": "https: //management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/HfsMabFS1/syncGroups/HfsMabDS1/cloudEndpoints/HfsMabCE1/operationresults/d67cfb91-1b13-4710-8226-83467bb5b66d?api-version=2019-10-01&resourcetype=preBackupResourceType&ifxctx3=005909ad-d156-4514-a26e-dd1cc566db64", + "Retry-After": "10", + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/OperationStatus_Get.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/OperationStatus_Get.json new file mode 100644 index 000000000000..021a7fc5a182 --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/OperationStatus_Get.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "locationName": "westus", + "workflowId": "828219ea-083e-48b5-89ea-8fd9991b2e75", + "operationId": "14b50e24-f68d-4b29-a882-38be9dfb8bd1", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + }, + "body": { + "name": "14b50e24-f68d-4b29-a882-38be9dfb8bd1", + "status": "Succeeded", + "startTime": "2019-05-09T23:53:21.7328715Z", + "endTime": "2019-05-09T23:53:23.3735483Z", + "error": null + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/Operations_List.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/Operations_List.json new file mode 100644 index 000000000000..4df1a6d7b1f1 --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/Operations_List.json @@ -0,0 +1,214 @@ +{ + "parameters": { + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.StorageSync/storageSyncServices/read", + "display": { + "provider": "Microsoft.StorageSync", + "resource": "Storage Sync Services", + "operation": "Read Storage Sync Services", + "description": "Read any Storage Sync Services" + }, + "origin": "User" + }, + { + "name": "Microsoft.StorageSync/storageSyncServices/write", + "display": { + "provider": "Microsoft.StorageSync", + "resource": "Storage Sync Services", + "operation": "Create or Update Storage Sync Services", + "description": "Create or Update any Storage Sync Services" + }, + "origin": "User" + }, + { + "name": "Microsoft.StorageSync/storageSyncServices/delete", + "display": { + "provider": "Microsoft.StorageSync", + "resource": "Storage Sync Services", + "operation": "Delete Storage Sync Services", + "description": "Delete any Storage Sync Services" + }, + "origin": "User" + }, + { + "name": "Microsoft.StorageSync/storageSyncServices/syncGroups/read", + "display": { + "provider": "Microsoft.StorageSync", + "resource": "Sync Groups", + "operation": "Read Sync Groups", + "description": "Read any Sync Groups" + }, + "origin": "User" + }, + { + "name": "Microsoft.StorageSync/storageSyncServices/syncGroups/write", + "display": { + "provider": "Microsoft.StorageSync", + "resource": "Sync Groups", + "operation": "Create or Update Sync Groups", + "description": "Create or Update any Sync Groups" + }, + "origin": "User" + }, + { + "name": "Microsoft.StorageSync/storageSyncServices/syncGroups/delete", + "display": { + "provider": "Microsoft.StorageSync", + "resource": "Sync Groups", + "operation": "Delete Sync Groups", + "description": "Delete any Sync Groups" + }, + "origin": "User" + }, + { + "name": "Microsoft.StorageSync/storageSyncServices/syncGroups/cloudEndpoints/read", + "display": { + "provider": "Microsoft.StorageSync", + "resource": "Cloud Endpoints", + "operation": "Read Cloud Endpoints", + "description": "Read any Cloud Endpoints" + }, + "origin": "User" + }, + { + "name": "Microsoft.StorageSync/storageSyncServices/syncGroups/cloudEndpoints/write", + "display": { + "provider": "Microsoft.StorageSync", + "resource": "Cloud Endpoints", + "operation": "Create or Update Cloud Endpoints", + "description": "Create or Update any Cloud Endpoints" + }, + "origin": "User" + }, + { + "name": "Microsoft.StorageSync/storageSyncServices/syncGroups/cloudEndpoints/delete", + "display": { + "provider": "Microsoft.StorageSync", + "resource": "Cloud Endpoints", + "operation": "Delete Cloud Endpoints", + "description": "Delete any Cloud Endpoints" + }, + "origin": "User" + }, + { + "name": "Microsoft.StorageSync/storageSyncServices/syncGroups/cloudEndpoints/prebackup/action", + "display": { + "provider": "Microsoft.StorageSync", + "resource": "Cloud Endpoints", + "operation": "prebackup", + "description": "Call this action before backup" + }, + "origin": "User" + }, + { + "name": "Microsoft.StorageSync/storageSyncServices/syncGroups/cloudEndpoints/postbackup/action", + "display": { + "provider": "Microsoft.StorageSync", + "resource": "Cloud Endpoints", + "operation": "postbackup", + "description": "Call this action after backup" + }, + "origin": "User" + }, + { + "name": "Microsoft.StorageSync/storageSyncServices/syncGroups/cloudEndpoints/prerestore/action", + "display": { + "provider": "Microsoft.StorageSync", + "resource": "Cloud Endpoints", + "operation": "prerestore", + "description": "Call this action before restore" + }, + "origin": "User" + }, + { + "name": "Microsoft.StorageSync/storageSyncServices/syncGroups/cloudEndpoints/postrestore/action", + "display": { + "provider": "Microsoft.StorageSync", + "resource": "Cloud Endpoints", + "operation": "postrestore", + "description": "Call this action after restore" + }, + "origin": "User" + }, + { + "name": "Microsoft.StorageSync/storageSyncServices/syncGroups/serverEndpoints/read", + "display": { + "provider": "Microsoft.StorageSync", + "resource": "Server Endpoints", + "operation": "Read Server Endpoints", + "description": "Read any Server Endpoints" + }, + "origin": "User" + }, + { + "name": "Microsoft.StorageSync/storageSyncServices/syncGroups/serverEndpoints/write", + "display": { + "provider": "Microsoft.StorageSync", + "resource": "Server Endpoints", + "operation": "Create or Update Server Endpoints", + "description": "Create or Update any Server Endpoints" + }, + "origin": "User" + }, + { + "name": "Microsoft.StorageSync/storageSyncServices/syncGroups/serverEndpoints/delete", + "display": { + "provider": "Microsoft.StorageSync", + "resource": "Server Endpoints", + "operation": "Delete Server Endpoints", + "description": "Delete any Server Endpoints" + }, + "origin": "User" + }, + { + "name": "Microsoft.StorageSync/storageSyncServices/syncGroups/serverEndpoints/recallAction/action", + "display": { + "provider": "Microsoft.StorageSync", + "resource": "Server Endpoints", + "operation": "recallAction", + "description": "Call this action to recall files to a server" + }, + "origin": "User" + }, + { + "name": "Microsoft.StorageSync/storageSyncServices/registeredServers/read", + "display": { + "provider": "Microsoft.StorageSync", + "resource": "Registered Server", + "operation": "Read Registered Server", + "description": "Read any Registered Server" + }, + "origin": "User" + }, + { + "name": "Microsoft.StorageSync/storageSyncServices/registeredServers/write", + "display": { + "provider": "Microsoft.StorageSync", + "resource": "Registered Server", + "operation": "Create or Update Registered Server", + "description": "Create or Update any Registered Server" + }, + "origin": "User" + }, + { + "name": "Microsoft.StorageSync/storageSyncServices/registeredServers/delete", + "display": { + "provider": "Microsoft.StorageSync", + "resource": "Registered Server", + "operation": "Delete Registered Server", + "description": "Delete any Registered Server" + }, + "origin": "User" + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/RegisteredServers_Create.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/RegisteredServers_Create.json new file mode 100644 index 000000000000..bf4799377e10 --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/RegisteredServers_Create.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "storageSyncServiceName": "SampleStorageSyncService_1", + "serverId": "\"080d4133-bdb5-40a0-96a0-71a6057bfe9a\"", + "parameters": { + "properties": { + "serverRole": "Standalone", + "serverCertificate": "\"MIIDFjCCAf6gAwIBAgIQQS+DS8uhc4VNzUkTw7wbRjANBgkqhkiG9w0BAQ0FADAzMTEwLwYDVQQDEyhhbmt1c2hiLXByb2QzLnJlZG1vbmQuY29ycC5taWNyb3NvZnQuY29tMB4XDTE3MDgwMzE3MDQyNFoXDTE4MDgwNDE3MDQyNFowMzExMC8GA1UEAxMoYW5rdXNoYi1wcm9kMy5yZWRtb25kLmNvcnAubWljcm9zb2Z0LmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALDRvV4gmsIy6jGDPiHsXmvgVP749NNP7DopdlbHaNhjFmYINHl0uWylyaZmgJrROt2mnxN/zEyJtGnqYHlzUr4xvGq/qV5pqgdB9tag/sw9i22gfe9PRZ0FmSOZnXMbLYgLiDFqLtut5gHcOuWMj03YnkfoBEKlFBxWbagvW2yxz/Sxi9OVSJOKCaXra0RpcIHrO/KFl6ho2eE1/7Ykmfa8hZvSdoPd5gHdLiQcMB/pxq+mWp1fI6c8vFZoDu7Atn+NXTzYPKUxKzaisF12TsaKpohUsJpbB3Wocb0F5frn614D2pg14ERB5otjAMWw1m65csQWPI6dP8KIYe0+QPkCAwEAAaMmMCQwIgYDVR0lAQH/BBgwFgYIKwYBBQUHAwIGCisGAQQBgjcKAwwwDQYJKoZIhvcNAQENBQADggEBAA4RhVIBkw34M1RwakJgHvtjsOFxF1tVQA941NtLokx1l2Z8+GFQkcG4xpZSt+UN6wLerdCbnNhtkCErWUDeaT0jxk4g71Ofex7iM04crT4iHJr8mi96/XnhnkTUs+GDk12VgdeeNEczMZz+8Mxw9dJ5NCnYgTwO0SzGlclRsDvjzkLo8rh2ZG6n/jKrEyNXXo+hOqhupij0QbRP2Tvexdfw201kgN1jdZify8XzJ8Oi0bTS0KpJf2pNPOlooK2bjMUei9ANtEdXwwfVZGWvVh6tJjdv6k14wWWJ1L7zhA1IIVb1J+sQUzJji5iX0DrezjTz1Fg+gAzITaA/WsuujlM=\"", + "lastHeartBeat": "\"2017-08-08T18:29:06.470652Z\"", + "serverOSVersion": "10.0.14393.0", + "agentVersion": "1.0.277.0" + } + }, + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + }, + "body": { + "id": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/registeredServers/530a0384-50ac-456d-8240-9d6621404151", + "type": "Microsoft.StorageSync/storageSyncServices/registeredServers", + "name": "ankushb-prod3.redmond.corp.microsoft.com", + "properties": { + "agentVersion": "3.1.5.0", + "serverOSVersion": "10.0.14393.0", + "serverManagementErrorCode": 0, + "lastHeartBeat": "\"2018-06-11T21:50:40.5840543Z\"", + "provisioningState": "Succeeded", + "serverRole": "Standalone", + "clusterId": "\"00000000-0000-0000-0000-000000000000\"", + "clusterName": "", + "serverId": "\"3635ca8b-5cc8-4a5c-bd43-c2de5ad8dc64\"", + "storageSyncServiceUid": "\"4aa14534-1c61-483b-b6a6-9630a76f109a\"", + "lastWorkflowId": "storageSyncServices/CV_FileStore_F1D485AA/workflows/4eecfbcf-9537-4b61-8fee-aaa3ace11c44", + "lastOperationName": "ICreateRegisteredServerWorkflow", + "friendlyName": "afscv-2304-139", + "managementEndpointUri": "\"https://kailanitest99.one.microsoft.com:443/\"", + "discoveryEndpointUri": "\"https://kailanitest99.one.microsoft.com:443\"", + "resourceLocation": "westus", + "serviceLocation": "westus" + } + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/63e554fd-4d27-4b91-8249-2fc697de7c69/operations/d4b00aa1-7ae0-47f0-9fa7-7ed3ea527bc9?api-version=2019-10-01", + "Location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/63e554fd-4d27-4b91-8249-2fc697de7c69/operationresults/d4b00aa1-7ae0-47f0-9fa7-7ed3ea527bc9?api-version=2019-10-01", + "Retry-After": "10", + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/RegisteredServers_Delete.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/RegisteredServers_Delete.json new file mode 100644 index 000000000000..743ddb0fec5c --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/RegisteredServers_Delete.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "storageSyncServiceName": "SampleStorageSyncService_1", + "serverId": "41166691-ab03-43e9-ab3e-0330eda162ac", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/cdb963fd-ea36-457e-9222-f85754ff398c/operations/20675646-8111-4158-954b-6b637e922cbf?api-version=2019-10-01", + "Location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/cdb963fd-ea36-457e-9222-f85754ff398c/operationresults/20675646-8111-4158-954b-6b637e922cbf?api-version=2019-10-01", + "Retry-After": "10", + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + } + }, + "204": {} + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/RegisteredServers_Get.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/RegisteredServers_Get.json new file mode 100644 index 000000000000..372ceb88a8c2 --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/RegisteredServers_Get.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "storageSyncServiceName": "SampleStorageSyncService_1", + "serverId": "080d4133-bdb5-40a0-96a0-71a6057bfe9a", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + }, + "body": { + "name": "SampleRegisteredServer_1.redmond.corp.microsoft.com", + "properties": { + "agentVersion": "3.1.5.0", + "serverOSVersion": "10.0.14393.0", + "serverManagementErrorCode": 0, + "lastHeartBeat": "\"2018-06-11T21:50:40.5840543Z\"", + "provisioningState": "Succeeded", + "serverRole": "Standalone", + "clusterId": "\"00000000-0000-0000-0000-000000000000\"", + "clusterName": "", + "serverId": "\"3635ca8b-5cc8-4a5c-bd43-c2de5ad8dc64\"", + "storageSyncServiceUid": "\"4aa14534-1c61-483b-b6a6-9630a76f109a\"", + "lastWorkflowId": "storageSyncServices/CV_FileStore_F1D485AA/workflows/4eecfbcf-9537-4b61-8fee-aaa3ace11c44", + "lastOperationName": "ICreateRegisteredServerWorkflow", + "friendlyName": "afscv-2304-139", + "managementEndpointUri": "\"https://kailanitest99.one.microsoft.com:443/\"", + "discoveryEndpointUri": "\"https://kailanitest99.one.microsoft.com:443\"", + "resourceLocation": "westus", + "serviceLocation": "westus" + }, + "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/registeredServers/080d4133-bdb5-40a0-96a0-71a6057bfe9a", + "type": "Microsoft.StorageSync/storageSyncServices/registeredServers" + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/RegisteredServers_ListByStorageSyncService.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/RegisteredServers_ListByStorageSyncService.json new file mode 100644 index 000000000000..25c030e9b561 --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/RegisteredServers_ListByStorageSyncService.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "storageSyncServiceName": "SampleStorageSyncService_1", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + }, + "body": { + "value": [ + { + "name": "SampleRegisteredServer_1.redmond.corp.microsoft.com", + "properties": { + "agentVersion": "3.1.5.0", + "serverOSVersion": "10.0.14393.0", + "serverManagementErrorCode": 0, + "lastHeartBeat": "\"2018-06-11T21:50:40.5840543Z\"", + "provisioningState": "Succeeded", + "serverRole": "Standalone", + "clusterId": "\"00000000-0000-0000-0000-000000000000\"", + "clusterName": "", + "serverId": "\"3635ca8b-5cc8-4a5c-bd43-c2de5ad8dc64\"", + "storageSyncServiceUid": "\"4aa14534-1c61-483b-b6a6-9630a76f109a\"", + "lastWorkflowId": "storageSyncServices/CV_FileStore_F1D485AA/workflows/4eecfbcf-9537-4b61-8fee-aaa3ace11c44", + "lastOperationName": "ICreateRegisteredServerWorkflow", + "friendlyName": "afscv-2304-139", + "managementEndpointUri": "\"https://kailanitest99.one.microsoft.com:443/\"", + "discoveryEndpointUri": "\"https://kailanitest99.one.microsoft.com:443\"", + "resourceLocation": "westus", + "serviceLocation": "westus" + }, + "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/registeredServers/080d4133-bdb5-40a0-96a0-71a6057bfe9a", + "type": "Microsoft.StorageSync/storageSyncServices/registeredServers" + } + ] + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/RegisteredServers_TriggerRollover.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/RegisteredServers_TriggerRollover.json new file mode 100644 index 000000000000..426163089211 --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/RegisteredServers_TriggerRollover.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "storageSyncServiceName": "SampleStorageSyncService_1", + "serverId": "d166ca76-dad2-49df-b409-12345642d730", + "parameters": { + "serverCertificate": "\"MIIDFjCCAf6gAwIBAgIQQS+DS8uhc4VNzUkTw7wbRjANBgkqhkiG9w0BAQ0FADAzMTEwLwYDVQQDEyhhbmt1c2hiLXByb2QzLnJlZG1vbmQuY29ycC5taWNyb3NvZnQuY29tMB4XDTE3MDgwMzE3MDQyNFoXDTE4MDgwNDE3MDQyNFowMzExMC8GA1UEAxMoYW5rdXNoYi1wcm9kMy5yZWRtb25kLmNvcnAubWljcm9zb2Z0LmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALDRvV4gmsIy6jGDPiHsXmvgVP749NNP7DopdlbHaNhjFmYINHl0uWylyaZmgJrROt2mnxN/zEyJtGnqYHlzUr4xvGq/qV5pqgdB9tag/sw9i22gfe9PRZ0FmSOZnXMbLYgLiDFqLtut5gHcOuWMj03YnkfoBEKlFBxWbagvW2yxz/Sxi9OVSJOKCaXra0RpcIHrO/KFl6ho2eE1/7Ykmfa8hZvSdoPd5gHdLiQcMB/pxq+mWp1fI6c8vFZoDu7Atn+NXTzYPKUxKzaisF12TsaKpohUsJpbB3Wocb0F5frn614D2pg14ERB5otjAMWw1m65csQWPI6dP8KIYe0+QPkCAwEAAaMmMCQwIgYDVR0lAQH/BBgwFgYIKwYBBQUHAwIGCisGAQQBgjcKAwwwDQYJKoZIhvcNAQENBQADggEBAA4RhVIBkw34M1RwakJgHvtjsOFxF1tVQA941NtLokx1l2Z8+GFQkcG4xpZSt+UN6wLerdCbnNhtkCErWUDeaT0jxk4g71Ofex7iM04crT4iHJr8mi96/XnhnkTUs+GDk12VgdeeNEczMZz+8Mxw9dJ5NCnYgTwO0SzGlclRsDvjzkLo8rh2ZG6n/jKrEyNXXo+hOqhupij0QbRP2Tvexdfw201kgN1jdZify8XzJ8Oi0bTS0KpJf2pNPOlooK2bjMUei9ANtEdXwwfVZGWvVh6tJjdv6k14wWWJ1L7zhA1IIVb1J+sQUzJji5iX0DrezjTz1Fg+gAzITaA/WsuujlM=\"" + }, + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47222", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d222" + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/828219ea-083e-48b5-89ea-8fd9991b2e75/operations/fe680c98-5725-49c8-b0dc-5e29745f752b?api-version=2019-10-01", + "Location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/828219ea-083e-48b5-89ea-8fd9991b2e75/operationresults/fe680c98-5725-49c8-b0dc-5e29745f752b?api-version=2019-10-01", + "Retry-After": "10", + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/ServerEndpoints_Create.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/ServerEndpoints_Create.json new file mode 100644 index 000000000000..59859cc03391 --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/ServerEndpoints_Create.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "storageSyncServiceName": "SampleStorageSyncService_1", + "syncGroupName": "SampleSyncGroup_1", + "serverEndpointName": "SampleServerEndpoint_1", + "parameters": { + "properties": { + "serverLocalPath": "D:\\SampleServerEndpoint_1", + "serverResourceId": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/registeredServers/080d4133-bdb5-40a0-96a0-71a6057bfe9a", + "cloudTiering": "off", + "volumeFreeSpacePercent": 100, + "tierFilesOlderThanDays": 0, + "offlineDataTransfer": "on", + "offlineDataTransferShareName": "myfileshare" + } + }, + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + }, + "body": { + "name": "SampleServerEndpoint_1", + "properties": { + "serverLocalPath": "D:\\SampleServerEndpoint_1", + "cloudTiering": "off", + "volumeFreeSpacePercent": 100, + "friendlyName": "somemachine.redmond.corp.microsoft.com", + "serverResourceId": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/registeredServers/080d4133-bdb5-40a0-96a0-71a6057bfe9a", + "provisioningState": "Succeeded", + "lastWorkflowId": "storageSyncServices/healthDemo1/workflows/569afb5c-7172-4cf8-a8ea-d987f727f11a", + "lastOperationName": "ICreateServerEndpointWorkflow", + "tierFilesOlderThanDays": 0, + "syncStatus": null, + "offlineDataTransfer": "on", + "offlineDataTransferStorageAccountResourceId": "/subscriptions/744f4d70-6d17-4921-8970-a765d14f763f/resourceGroups/myRG/providers/Microsoft.Storage/storageAccounts/mysa", + "offlineDataTransferStorageAccountTenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "offlineDataTransferShareName": "myfileshare", + "cloudTieringStatus": null, + "recallStatus": null + }, + "id": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/syncGroups/SampleSyncGroup_1/serverEndpoints/SampleServerEndpoint_1", + "type": "Microsoft.StorageSync/storageSyncServices/syncGroups/serverEndpoints" + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/828219ea-083e-48b5-89ea-8fd9991b2e75/operations/fe680c98-5725-49c8-b0dc-5e29745f752b?api-version=2019-10-01", + "Location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/828219ea-083e-48b5-89ea-8fd9991b2e75/operationresults/fe680c98-5725-49c8-b0dc-5e29745f752b?api-version=2019-10-01", + "Retry-After": "10", + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/ServerEndpoints_Delete.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/ServerEndpoints_Delete.json new file mode 100644 index 000000000000..ab0fb73a28c2 --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/ServerEndpoints_Delete.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "storageSyncServiceName": "SampleStorageSyncService_1", + "syncGroupName": "SampleSyncGroup_1", + "serverEndpointName": "SampleServerEndpoint_1", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/9122d971-147b-4dba-bada-1ceb7c9311e5/operations/6dce076b-1df5-4449-829b-69b24f38b5a1?api-version=2019-10-01", + "Location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/9122d971-147b-4dba-bada-1ceb7c9311e5/operationresults/6dce076b-1df5-4449-829b-69b24f38b5a1?api-version=2019-10-01", + "Retry-After": "10", + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/ServerEndpoints_Get.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/ServerEndpoints_Get.json new file mode 100644 index 000000000000..3b90278810f0 --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/ServerEndpoints_Get.json @@ -0,0 +1,147 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "storageSyncServiceName": "SampleStorageSyncService_1", + "syncGroupName": "SampleSyncGroup_1", + "serverEndpointName": "SampleServerEndpoint_1", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + }, + "body": { + "name": "SampleServerEndpoint_1", + "properties": { + "serverLocalPath": "D:\\SampleServerEndpoint_1", + "cloudTiering": "on", + "volumeFreeSpacePercent": 100, + "friendlyName": "somemachine.redmond.corp.microsoft.com", + "serverResourceId": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/registeredServers/080d4133-bdb5-40a0-96a0-71a6057bfe9a", + "provisioningState": "Succeeded", + "lastWorkflowId": "storageSyncServices/healthDemo1/workflows/569afb5c-7172-4cf8-a8ea-d987f727f11a", + "lastOperationName": "ICreateServerEndpointWorkflow", + "tierFilesOlderThanDays": 0, + "syncStatus": { + "downloadHealth": "Healthy", + "uploadHealth": "Error", + "combinedHealth": "Error", + "syncActivity": "UploadAndDownload", + "totalPersistentFilesNotSyncingCount": null, + "lastUpdatedTimestamp": "2018-06-11T23:32:51.1057915Z", + "uploadStatus": { + "lastSyncResult": -2134351810, + "lastSyncTimestamp": "2018-06-11T23:32:51.1057915Z", + "lastSyncSuccessTimestamp": null, + "lastSyncPerItemErrorCount": 1000, + "persistentFilesNotSyncingCount": null, + "transientFilesNotSyncingCount": null, + "filesNotSyncingErrors": null + }, + "downloadStatus": { + "lastSyncResult": 0, + "lastSyncTimestamp": "2018-06-11T23:28:33.9217334Z", + "lastSyncSuccessTimestamp": "2018-06-11T23:28:33.9217334Z", + "lastSyncPerItemErrorCount": 0, + "persistentFilesNotSyncingCount": null, + "transientFilesNotSyncingCount": null, + "filesNotSyncingErrors": null + }, + "uploadActivity": { + "timestamp": "2018-06-11T23:32:51.1057915Z", + "perItemErrorCount": 300, + "appliedItemCount": 1000, + "totalItemCount": 2300, + "appliedBytes": 57348983, + "totalBytes": 1958367412 + }, + "downloadActivity": { + "timestamp": "2018-06-11T23:32:51.1057915Z", + "perItemErrorCount": 0, + "appliedItemCount": 100, + "totalItemCount": 300, + "appliedBytes": 94805587, + "totalBytes": 19583674 + }, + "offlineDataTransferStatus": "InProgress" + }, + "offlineDataTransfer": "on", + "offlineDataTransferStorageAccountResourceId": "/subscriptions/744f4d70-6d17-4921-8970-a765d14f763f/resourceGroups/myRG/providers/Microsoft.Storage/storageAccounts/mysa", + "offlineDataTransferStorageAccountTenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "offlineDataTransferShareName": "myfileshare", + "cloudTieringStatus": { + "lastUpdatedTimestamp": "2018-06-11T23:32:51.1057915Z", + "health": "Error", + "healthLastUpdatedTimestamp": "2018-06-11T23:32:51.1057915Z", + "lastCloudTieringResult": -2134347771, + "lastSuccessTimestamp": "2018-06-11T23:32:51.1057915Z", + "spaceSavings": { + "lastUpdatedTimestamp": "2019-04-17T19:04:59.1959227Z", + "volumeSizeBytes": 922337203685477580, + "totalSizeCloudBytes": 100000000, + "cachedSizeBytes": 50000000, + "spaceSavingsPercent": 50, + "spaceSavingsBytes": 50000000 + }, + "cachePerformance": { + "lastUpdatedTimestamp": "2019-04-17T19:04:59.1959227Z", + "cacheHitBytes": 922337203685477580, + "cacheMissBytes": 922337203685477580, + "cacheHitBytesPercent": 50 + }, + "filesNotTiering": { + "lastUpdatedTimestamp": "2019-04-17T19:04:59.1959227Z", + "totalFileCount": 60, + "errors": [ + { + "errorCode": -2134347771, + "fileCount": 10 + }, + { + "errorCode": -2134347770, + "fileCount": 20 + }, + { + "errorCode": -2134347769, + "fileCount": 30 + } + ] + }, + "volumeFreeSpacePolicyStatus": { + "lastUpdatedTimestamp": "2019-04-17T19:04:59.1959227Z", + "effectiveVolumeFreeSpacePolicy": 30, + "currentVolumeFreeSpacePercent": 5 + }, + "datePolicyStatus": { + "lastUpdatedTimestamp": "2019-04-17T19:04:59.1959227Z", + "tieredFilesMostRecentAccessTimestamp": "2019-04-17T19:04:59.1959227Z" + } + }, + "recallStatus": { + "lastUpdatedTimestamp": "2018-06-11T23:32:51.1057915Z", + "totalRecallErrorsCount": 30, + "recallErrors": [ + { + "errorCode": -2134347775, + "count": 5 + }, + { + "errorCode": -2134347774, + "count": 10 + }, + { + "errorCode": -2134347773, + "count": 15 + } + ] + } + }, + "id": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/syncGroups/SampleSyncGroup_1/serverEndpoints/SampleServerEndpoint_1", + "type": "Microsoft.StorageSync/storageSyncServices/syncGroups/serverEndpoints" + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/ServerEndpoints_ListBySyncGroup.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/ServerEndpoints_ListBySyncGroup.json new file mode 100644 index 000000000000..2b1f574998f6 --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/ServerEndpoints_ListBySyncGroup.json @@ -0,0 +1,189 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "storageSyncServiceName": "SampleStorageSyncService_1", + "syncGroupName": "SampleSyncGroup_1", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + }, + "body": { + "value": [ + { + "name": "SampleServerEndpoint_1", + "properties": { + "serverLocalPath": "D:\\SampleServerEndpoint_1", + "cloudTiering": "off", + "volumeFreeSpacePercent": 100, + "friendlyName": "somemachine.redmond.corp.microsoft.com", + "serverResourceId": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/registeredServers/080d4133-bdb5-40a0-96a0-71a6057bfe9a", + "provisioningState": "Succeeded", + "lastWorkflowId": "storageSyncServices/healthDemo1/workflows/569afb5c-7172-4cf8-a8ea-d987f727f11a", + "lastOperationName": "ICreateServerEndpointWorkflow", + "tierFilesOlderThanDays": 0, + "syncStatus": { + "downloadHealth": "Healthy", + "uploadHealth": "Error", + "combinedHealth": "Error", + "syncActivity": null, + "totalPersistentFilesNotSyncingCount": null, + "lastUpdatedTimestamp": "2018-06-11T23:32:51.1057915Z", + "uploadStatus": { + "lastSyncResult": 0, + "lastSyncTimestamp": "2018-06-11T23:32:51.1057915Z", + "lastSyncSuccessTimestamp": "2018-06-11T23:32:51.1057915Z", + "lastSyncPerItemErrorCount": 0, + "persistentFilesNotSyncingCount": null, + "transientFilesNotSyncingCount": null, + "filesNotSyncingErrors": null + }, + "downloadStatus": { + "lastSyncResult": 0, + "lastSyncTimestamp": "2018-06-11T23:28:33.9217334Z", + "lastSyncSuccessTimestamp": "2018-06-11T23:28:33.9217334Z", + "lastSyncPerItemErrorCount": 1000, + "persistentFilesNotSyncingCount": null, + "transientFilesNotSyncingCount": null, + "filesNotSyncingErrors": null + }, + "uploadActivity": null, + "downloadActivity": null, + "offlineDataTransferStatus": "Complete" + }, + "offlineDataTransfer": "on", + "offlineDataTransferStorageAccountResourceId": "/subscriptions/744f4d70-6d17-4921-8970-a765d14f763f/resourceGroups/myRG/providers/Microsoft.Storage/storageAccounts/mysa", + "offlineDataTransferStorageAccountTenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "offlineDataTransferShareName": "myfileshare" + }, + "id": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/syncGroups/SampleSyncGroup_1/serverEndpoints/SampleServerEndpoint_1", + "type": "Microsoft.StorageSync/storageSyncServices/syncGroups/serverEndpoints" + }, + { + "name": "SampleServerEndpoint_2", + "properties": { + "serverLocalPath": "D:\\SampleServerEndpoint_2", + "cloudTiering": "on", + "volumeFreeSpacePercent": 80, + "friendlyName": "somemachine2.redmond.corp.microsoft.com", + "serverResourceId": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/registeredServers/f94e2944-b48d-4e5b-bdc7-c48ab3712659", + "provisioningState": "Succeeded", + "lastWorkflowId": "storageSyncServices/healthDemo1/workflows/40b1dc00-d7d9-4721-a1e9-ab60139b830a", + "lastOperationName": "ICreateServerEndpointWorkflow", + "tierFilesOlderThanDays": 5, + "syncStatus": { + "downloadHealth": "Healthy", + "uploadHealth": "Healthy", + "combinedHealth": "Healthy", + "syncActivity": "Upload", + "totalPersistentFilesNotSyncingCount": null, + "lastUpdatedTimestamp": "2018-06-11T23:32:51.1057915Z", + "uploadStatus": { + "lastSyncResult": 0, + "lastSyncTimestamp": "2018-06-11T23:32:51.1057915Z", + "lastSyncSuccessTimestamp": "2018-06-11T23:28:33.9217334Z", + "lastSyncPerItemErrorCount": 0, + "persistentFilesNotSyncingCount": null, + "transientFilesNotSyncingCount": null, + "filesNotSyncingErrors": null + }, + "downloadStatus": { + "lastSyncResult": 0, + "lastSyncTimestamp": "2018-06-11T23:28:33.9217334Z", + "lastSyncSuccessTimestamp": "2018-06-11T23:28:33.9217334Z", + "lastSyncPerItemErrorCount": 0, + "persistentFilesNotSyncingCount": null, + "transientFilesNotSyncingCount": null, + "filesNotSyncingErrors": null + }, + "uploadActivity": { + "timestamp": "2018-06-11T23:32:51.1057915Z", + "perItemErrorCount": 300, + "appliedItemCount": 1000, + "totalItemCount": 2300, + "appliedBytes": 57348983, + "totalBytes": 1958367412 + }, + "downloadActivity": null, + "offlineDataTransferStatus": "NotRunning" + }, + "offlineDataTransfer": "off", + "cloudTieringStatus": { + "lastUpdatedTimestamp": "2018-06-11T23:32:51.1057915Z", + "health": "Error", + "healthLastUpdatedTimestamp": "2018-06-11T23:32:51.1057915Z", + "lastCloudTieringResult": -2134347771, + "lastSuccessTimestamp": "2018-06-11T23:32:51.1057915Z", + "spaceSavings": { + "lastUpdatedTimestamp": "2019-04-17T19:04:59.1959227Z", + "volumeSizeBytes": 922337203685477580, + "totalSizeCloudBytes": 100000000, + "cachedSizeBytes": 50000000, + "spaceSavingsPercent": 50, + "spaceSavingsBytes": 50000000 + }, + "cachePerformance": { + "lastUpdatedTimestamp": "2019-04-17T19:04:59.1959227Z", + "cacheHitBytes": 922337203685477580, + "cacheMissBytes": 922337203685477580, + "cacheHitBytesPercent": 50 + }, + "filesNotTiering": { + "lastUpdatedTimestamp": "2019-04-17T19:04:59.1959227Z", + "totalFileCount": 60, + "errors": [ + { + "errorCode": -2134347771, + "fileCount": 10 + }, + { + "errorCode": -2134347770, + "fileCount": 20 + }, + { + "errorCode": -2134347769, + "fileCount": 30 + } + ] + }, + "volumeFreeSpacePolicyStatus": { + "lastUpdatedTimestamp": "2019-04-17T19:04:59.1959227Z", + "effectiveVolumeFreeSpacePolicy": 30, + "currentVolumeFreeSpacePercent": 5 + }, + "datePolicyStatus": { + "lastUpdatedTimestamp": "2019-04-17T19:04:59.1959227Z", + "tieredFilesMostRecentAccessTimestamp": "2019-04-17T19:04:59.1959227Z" + } + }, + "recallStatus": { + "lastUpdatedTimestamp": "2018-06-11T23:32:51.1057915Z", + "totalRecallErrorsCount": 30, + "recallErrors": [ + { + "errorCode": -2134347775, + "count": 5 + }, + { + "errorCode": -2134347774, + "count": 10 + }, + { + "errorCode": -2134347773, + "count": 15 + } + ] + } + }, + "id": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/syncGroups/SampleSyncGroup_1/serverEndpoints/SampleServerEndpoint_2", + "type": "Microsoft.StorageSync/storageSyncServices/syncGroups/serverEndpoints" + } + ] + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/ServerEndpoints_Recall.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/ServerEndpoints_Recall.json new file mode 100644 index 000000000000..0b5a2307ee95 --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/ServerEndpoints_Recall.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "storageSyncServiceName": "SampleStorageSyncService_1", + "syncGroupName": "SampleSyncGroup_1", + "serverEndpointName": "SampleServerEndpoint_1", + "api-version": "2019-10-01", + "parameters": { + "pattern": "", + "recallPath": "" + } + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/828219ea-083e-48b5-89ea-8fd9991b2e75/operations/fe680c98-5725-49c8-b0dc-5e29745f752b?api-version=2019-10-01", + "Location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/828219ea-083e-48b5-89ea-8fd9991b2e75/operationresults/fe680c98-5725-49c8-b0dc-5e29745f752b?api-version=2019-10-01", + "Retry-After": "10", + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/ServerEndpoints_Update.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/ServerEndpoints_Update.json new file mode 100644 index 000000000000..70d961b6da74 --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/ServerEndpoints_Update.json @@ -0,0 +1,85 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "storageSyncServiceName": "SampleStorageSyncService_1", + "cloudEndpointName": "SampleCloudEndpoint_1", + "syncGroupName": "SampleSyncGroup_1", + "serverEndpointName": "SampleServerEndpoint_1", + "parameters": { + "properties": { + "cloudTiering": "off", + "volumeFreeSpacePercent": 100, + "tierFilesOlderThanDays": 0, + "offlineDataTransfer": "off" + } + }, + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + }, + "body": { + "name": "SampleServerEndpoint_1", + "properties": { + "serverLocalPath": "C:\\data_quota2", + "cloudTiering": "off", + "volumeFreeSpacePercent": 20, + "tierFilesOlderThanDays": 0, + "friendlyName": "somemachine2.redmond.corp.microsoft.com", + "serverResourceId": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/anpintDemoRG/providers/kailanitest07.one.microsoft.com/storageSyncServices/healthdemo1/registeredServers/f94e2944-b48d-4e5b-bdc7-c48ab3712659", + "provisioningState": "Succeeded", + "lastWorkflowId": "storageSyncServices/healthDemo1/workflows/569afb5c-7172-4cf8-a8ea-d987f727f11b", + "lastOperationName": "ICreateServerEndpointWorkflow", + "syncStatus": { + "downloadHealth": "Healthy", + "uploadHealth": "Error", + "combinedHealth": "Error", + "syncActivity": null, + "totalPersistentFilesNotSyncingCount": null, + "lastUpdatedTimestamp": "2018-06-11T23:32:51.1057915Z", + "uploadStatus": { + "lastSyncResult": -2134351810, + "lastSyncTimestamp": "2018-06-11T23:32:51.1057915Z", + "lastSyncSuccessTimestamp": null, + "lastSyncPerItemErrorCount": 0, + "persistentFilesNotSyncingCount": null, + "transientFilesNotSyncingCount": null, + "filesNotSyncingErrors": null + }, + "downloadStatus": { + "lastSyncResult": 0, + "lastSyncTimestamp": "2018-06-11T23:28:33.9217334Z", + "lastSyncSuccessTimestamp": "2018-06-11T23:28:33.9217334Z", + "lastSyncPerItemErrorCount": 0, + "persistentFilesNotSyncingCount": null, + "transientFilesNotSyncingCount": null, + "filesNotSyncingErrors": null + }, + "uploadActivity": null, + "downloadActivity": null, + "offlineDataTransferStatus": "Stopping" + }, + "offlineDataTransfer": "off", + "offlineDataTransferStorageAccountResourceId": "/subscriptions/744f4d70-6d17-4921-8970-a765d14f763f/resourceGroups/myRG/providers/Microsoft.Storage/storageAccounts/mysa", + "offlineDataTransferStorageAccountTenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47", + "offlineDataTransferShareName": "myfileshare" + }, + "id": "/subscriptions/52b8da2f-61e0-4a1f-8dde-336911f367fb/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/syncGroups/SampleSyncGroup_1/serverEndpoints/SampleServerEndpoint_1", + "type": "Microsoft.StorageSync/storageSyncServices/syncGroups/serverEndpoints" + } + }, + "202": { + "headers": { + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SSS_Swagger_08-09_Test212/workflows/3af798a9-26fd-44e7-a121-a4ad65f451bd/operations/ef2a30f4-9bb8-40e7-b403-5d6d3dc67a3c?api-version=2019-10-01", + "Location": "https://management.azure.com/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SSS_Swagger_08-09_Test212/workflows/3af798a9-26fd-44e7-a121-a4ad65f451bd/operationresults/ef2a30f4-9bb8-40e7-b403-5d6d3dc67a3c?api-version=2019-10-01", + "Retry-After": "10", + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/StorageSyncServiceCheckNameAvailability_AlreadyExists.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/StorageSyncServiceCheckNameAvailability_AlreadyExists.json new file mode 100644 index 000000000000..ec13e68ec7a1 --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/StorageSyncServiceCheckNameAvailability_AlreadyExists.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "5c6bc8e1-1eaf-4192-94d8-58ce463ac86c", + "locationName": "westus", + "parameters": { + "name": "newstoragesyncservicename", + "type": "Microsoft.StorageSync/storageSyncServices" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "AlreadyExists", + "message": "An account named 'newstoragesyncservicename' is already in use." + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/StorageSyncServiceCheckNameAvailability_Available.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/StorageSyncServiceCheckNameAvailability_Available.json new file mode 100644 index 000000000000..ef6770458fd2 --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/StorageSyncServiceCheckNameAvailability_Available.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2019-10-01", + "subscriptionId": "5c6bc8e1-1eaf-4192-94d8-58ce463ac86c", + "locationName": "westus", + "parameters": { + "name": "newstoragesyncservicename", + "type": "Microsoft.StorageSync/storageSyncServices" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/StorageSyncServices_Create.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/StorageSyncServices_Create.json new file mode 100644 index 000000000000..b49556711c40 --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/StorageSyncServices_Create.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "storageSyncServiceName": "SampleStorageSyncService_1", + "parameters": { + "location": "WestUS", + "tags": {} + }, + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "body": { + "name": "SampleStorageSyncService_1", + "location": "WestUS", + "tags": {}, + "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1", + "type": "Microsoft.StorageSync/storageSyncServices" + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/StorageSyncServices_Delete.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/StorageSyncServices_Delete.json new file mode 100644 index 000000000000..4fcc4678337d --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/StorageSyncServices_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "storageSyncServiceName": "SampleStorageSyncService_1", + "api-version": "2019-10-01" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/StorageSyncServices_Get.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/StorageSyncServices_Get.json new file mode 100644 index 000000000000..59aaf6cef2f6 --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/StorageSyncServices_Get.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "storageSyncServiceName": "SampleStorageSyncService_1", + "syncGroupName": "SampleSyncGroup_1", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + }, + "body": { + "name": "SampleStorageSyncService_1", + "location": "WestUS", + "tags": {}, + "properties": { + "storageSyncServiceStatus": 0, + "storageSyncServiceUid": "\"2de01144-72da-4d7f-9d0c-e858855114a8\"" + }, + "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1", + "type": "Microsoft.StorageSync/storageSyncServices" + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/StorageSyncServices_ListByResourceGroup.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/StorageSyncServices_ListByResourceGroup.json new file mode 100644 index 000000000000..6d216ce14554 --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/StorageSyncServices_ListByResourceGroup.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + }, + "body": { + "value": [ + { + "name": "SampleStorageSyncService_1", + "location": "WestUS", + "tags": {}, + "properties": { + "storageSyncServiceStatus": 0, + "storageSyncServiceUid": "\"3d1bf292-0f2a-4cc1-a3e1-60f35800e40c\"" + }, + "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1", + "type": "Microsoft.StorageSync/storageSyncServices" + }, + { + "name": "SampleStorageSyncService_2", + "location": "WestUS", + "tags": {}, + "properties": { + "storageSyncServiceStatus": 0, + "storageSyncServiceUid": "\"2de01144-72da-4d7f-9d0c-e858855114a8\"" + }, + "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_2", + "type": "Microsoft.StorageSync/storageSyncServices" + }, + { + "name": "SampleStorageSyncService_3", + "location": "WestUS", + "tags": {}, + "properties": { + "storageSyncServiceStatus": 0, + "storageSyncServiceUid": "\"b2c58ee5-933e-462c-8a9e-b30f2bdd8fa3\"" + }, + "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_3", + "type": "Microsoft.StorageSync/storageSyncServices" + } + ] + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/StorageSyncServices_ListBySubscription.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/StorageSyncServices_ListBySubscription.json new file mode 100644 index 000000000000..b2bd13d9a1c9 --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/StorageSyncServices_ListBySubscription.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + }, + "body": { + "value": [ + { + "name": "SampleStorageSyncService_1", + "location": "WestUS", + "tags": {}, + "properties": { + "storageSyncServiceStatus": 0, + "storageSyncServiceUid": "\"3d1bf292-0f2a-4cc1-a3e1-60f35800e40c\"" + }, + "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1", + "type": "Microsoft.StorageSync/storageSyncServices" + }, + { + "name": "SampleStorageSyncService_2", + "location": "WestUS", + "tags": {}, + "properties": { + "storageSyncServiceStatus": 0, + "storageSyncServiceUid": "\"2de01144-72da-4d7f-9d0c-e858855114a8\"" + }, + "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_2", + "type": "Microsoft.StorageSync/storageSyncServices" + }, + { + "name": "SampleStorageSyncService_3", + "location": "WestUS", + "tags": {}, + "properties": { + "storageSyncServiceStatus": 0, + "storageSyncServiceUid": "\"b2c58ee5-933e-462c-8a9e-b30f2bdd8fa3\"" + }, + "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_3", + "type": "Microsoft.StorageSync/storageSyncServices" + } + ] + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/StorageSyncServices_Update.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/StorageSyncServices_Update.json new file mode 100644 index 000000000000..e2c12a49cc88 --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/StorageSyncServices_Update.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "storageSyncServiceName": "SampleStorageSyncService_1", + "api-version": "2019-10-01", + "parameters": { + "tags": { + "Environment": "Test", + "Dept": "IT" + } + } + }, + "responses": { + "200": { + "body": { + "name": "SampleStorageSyncService_1", + "location": "WestUS", + "tags": { + "Environment": "Test", + "Dept": "IT" + }, + "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1", + "type": "Microsoft.StorageSync/storageSyncServices" + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/SyncGroups_Create.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/SyncGroups_Create.json new file mode 100644 index 000000000000..4ad03a7508ed --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/SyncGroups_Create.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "storageSyncServiceName": "SampleStorageSyncService_1", + "syncGroupName": "SampleSyncGroup_1", + "api-version": "2019-10-01", + "parameters": { + "properties": {} + } + }, + "responses": { + "200": { + "body": { + "name": "SampleSyncGroup_1", + "properties": { + "uniqueId": "7868e4ee-8ddd-4a2d-941b-0041f6052a8a" + }, + "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/syncGroups/SampleSyncGroup_1", + "type": "Microsoft.StorageSync/storageSyncServices/syncGroups" + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/SyncGroups_Delete.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/SyncGroups_Delete.json new file mode 100644 index 000000000000..5b7f101707c1 --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/SyncGroups_Delete.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "storageSyncServiceName": "SampleStorageSyncService_1", + "syncGroupName": "SampleSyncGroup_1", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + } + }, + "204": {} + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/SyncGroups_Get.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/SyncGroups_Get.json new file mode 100644 index 000000000000..4c2f6b20fbc0 --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/SyncGroups_Get.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "storageSyncServiceName": "SampleStorageSyncService_1", + "syncGroupName": "SampleSyncGroup_1", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + }, + "body": { + "name": "SampleSyncGroup_1", + "properties": { + "uniqueId": "191660cd-6a1a-4f8c-9787-a6bed206a1dd", + "syncGroupStatus": "0" + }, + "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SSS_Restore_08-08_Test112/syncGroups/SampleSyncGroup_1", + "type": "Microsoft.StorageSync/storageSyncServices/syncGroups" + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/SyncGroups_ListByStorageSyncService.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/SyncGroups_ListByStorageSyncService.json new file mode 100644 index 000000000000..db9e3893128c --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/SyncGroups_ListByStorageSyncService.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "storageSyncServiceName": "SampleStorageSyncService_1", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + }, + "body": { + "value": [ + { + "name": "SampleSyncGroup_1", + "properties": { + "uniqueId": "191660cd-6a1a-4f8c-9787-a6bed206a1dd", + "syncGroupStatus": "0" + }, + "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SSS_Restore_08-08_Test112/syncGroups/SampleSyncGroup_1", + "type": "Microsoft.StorageSync/storageSyncServices/syncGroups" + } + ] + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/Workflows_Abort.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/Workflows_Abort.json new file mode 100644 index 000000000000..bf99171cc46a --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/Workflows_Abort.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "storageSyncServiceName": "SampleStorageSyncService_1", + "workflowId": "7ffd50b3-5574-478d-9ff2-9371bc42ce68", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/Workflows_Get.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/Workflows_Get.json new file mode 100644 index 000000000000..25284ecb91f1 --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/Workflows_Get.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "storageSyncServiceName": "SampleStorageSyncService_1", + "workflowId": "828219ea-083e-48b5-89ea-8fd9991b2e75", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + }, + "body": { + "name": "828219ea-083e-48b5-89ea-8fd9991b2e75", + "properties": { + "status": "succeeded", + "lastOperationId": "\"fe680c98-5725-49c8-b0dc-5e29745f752b\"", + "operation": "do", + "lastStepName": "runServerJob", + "steps": "[{\"name\":\"validateInput\",\"friendlyName\":\"validateInput\",\"status\":\"Succeeded\",\"error\":null},{\"name\":\"newServerEndpoint\",\"friendlyName\":\"newServerEndpoint\",\"status\":\"Succeeded\",\"error\":null},{\"name\":\"updateReplicaGroupCertificates\",\"friendlyName\":\"updateReplicaGroupCertificates\",\"status\":\"Succeeded\",\"error\":null},{\"name\":\"runServerJob\",\"friendlyName\":\"runServerJob\",\"status\":\"Succeeded\",\"error\":null}]" + }, + "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/828219ea-083e-48b5-89ea-8fd9991b2e75", + "type": "Microsoft.StorageSync/storageSyncServices/workflows" + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/Workflows_ListByStorageSyncService.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/Workflows_ListByStorageSyncService.json new file mode 100644 index 000000000000..d231ae1e6a40 --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/examples/Workflows_ListByStorageSyncService.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "52b8da2f-61e0-4a1f-8dde-336911f367fb", + "resourceGroupName": "SampleResourceGroup_1", + "storageSyncServiceName": "SampleStorageSyncService_1", + "api-version": "2019-10-01" + }, + "responses": { + "200": { + "headers": { + "x-ms-request-id": "74e55a4d-1c6f-46de-9a8d-278e53a47403", + "x-ms-correlation-request-id": "d166ca76-dad2-49df-b409-d2acfd42d730" + }, + "body": { + "value": [ + { + "name": "828219ea-083e-48b5-89ea-8fd9991b2e75", + "properties": { + "status": "succeeded", + "lastOperationId": "\"fe680c98-5725-49c8-b0dc-5e29745f752b\"", + "operation": "do", + "lastStepName": "runServerJob", + "steps": "[{\"name\":\"validateInput\",\"friendlyName\":\"validateInput\",\"status\":\"Succeeded\",\"error\":null},{\"name\":\"newServerEndpoint\",\"friendlyName\":\"newServerEndpoint\",\"status\":\"Succeeded\",\"error\":null},{\"name\":\"updateReplicaGroupCertificates\",\"friendlyName\":\"updateReplicaGroupCertificates\",\"status\":\"Succeeded\",\"error\":null},{\"name\":\"runServerJob\",\"friendlyName\":\"runServerJob\",\"status\":\"Succeeded\",\"error\":null}]" + }, + "id": "/subscriptions/3a048283-338f-4002-a9dd-a50fdadcb392/resourceGroups/SampleResourceGroup_1/providers/Microsoft.StorageSync/storageSyncServices/SampleStorageSyncService_1/workflows/828219ea-083e-48b5-89ea-8fd9991b2e75", + "type": "Microsoft.StorageSync/storageSyncServices/workflows" + } + ] + } + } + } +} diff --git a/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/storagesync.json b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/storagesync.json new file mode 100644 index 000000000000..79e43cd1bd1f --- /dev/null +++ b/specification/storagesync/resource-manager/Microsoft.StorageSync/stable/2019-10-01/storagesync.json @@ -0,0 +1,4440 @@ +{ + "swagger": "2.0", + "info": { + "title": "Microsoft Storage Sync", + "description": "Microsoft Storage Sync Service API", + "version": "2019-10-01", + "x-ms-code-generation-settings": { + "name": "StorageSyncManagementClient" + } + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/providers/Microsoft.StorageSync/operations": { + "get": { + "tags": [ + "ResourceProvider", + "Operations" + ], + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "description": "Lists all of the available Storage Sync Rest API operations.", + "x-ms-examples": { + "Operations_List": { + "$ref": "./examples/Operations_List.json" + } + }, + "responses": { + "200": { + "description": "Array of operations resources in the Resource Provider", + "schema": { + "$ref": "#/definitions/OperationEntityListResult" + }, + "headers": { + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + }, + "deprecated": false, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.StorageSync/locations/{locationName}/checkNameAvailability": { + "post": { + "tags": [ + "StorageSyncService" + ], + "operationId": "StorageSyncServices_CheckNameAvailability", + "x-ms-examples": { + "StorageSyncServiceCheckNameAvailability_Available": { + "$ref": "./examples/StorageSyncServiceCheckNameAvailability_Available.json" + }, + "StorageSyncServiceCheckNameAvailability_AlreadyExists": { + "$ref": "./examples/StorageSyncServiceCheckNameAvailability_AlreadyExists.json" + } + }, + "description": "Check the give namespace name availability.", + "parameters": [ + { + "name": "locationName", + "in": "path", + "required": true, + "type": "string", + "description": "The desired region for the name check." + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityParameters" + }, + "description": "Parameters to check availability of the given namespace name" + } + ], + "responses": { + "200": { + "description": "check availability returned successfully.", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityResult" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorageSync/storageSyncServices/{storageSyncServiceName}": { + "put": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageSyncServiceName", + "in": "path", + "description": "Name of Storage Sync Service resource.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "Storage Sync Service resource name.", + "required": true, + "schema": { + "$ref": "#/definitions/StorageSyncServiceCreateParameters" + } + } + ], + "tags": [ + "StorageSyncServices Resource" + ], + "operationId": "StorageSyncServices_Create", + "description": "Create a new StorageSyncService.", + "x-ms-examples": { + "StorageSyncServices_Create": { + "$ref": "./examples/StorageSyncServices_Create.json" + } + }, + "responses": { + "200": { + "description": "Storage Sync Service object created/updated", + "schema": { + "$ref": "#/definitions/StorageSyncService" + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + } + }, + "get": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "storageSyncServiceName", + "in": "path", + "description": "Name of Storage Sync Service resource.", + "required": true, + "type": "string" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "tags": [ + "StorageSyncServices Resource" + ], + "operationId": "StorageSyncServices_Get", + "description": "Get a given StorageSyncService.", + "x-ms-examples": { + "StorageSyncServices_Get": { + "$ref": "./examples/StorageSyncServices_Get.json" + } + }, + "responses": { + "200": { + "description": "Storage Sync Service object", + "schema": { + "$ref": "#/definitions/StorageSyncService" + }, + "headers": { + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + } + }, + "patch": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageSyncServiceName", + "in": "path", + "description": "Name of Storage Sync Service resource.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "Storage Sync Service resource.", + "schema": { + "$ref": "#/definitions/StorageSyncServiceUpdateParameters" + } + } + ], + "tags": [ + "StorageSyncServices Resource" + ], + "operationId": "StorageSyncServices_Update", + "description": "Patch a given StorageSyncService.", + "x-ms-examples": { + "StorageSyncServices_Update": { + "$ref": "./examples/StorageSyncServices_Update.json" + } + }, + "responses": { + "200": { + "description": "Storage Sync Service object created/updated", + "schema": { + "$ref": "#/definitions/StorageSyncService" + }, + "headers": { + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + } + }, + "delete": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageSyncServiceName", + "in": "path", + "description": "Name of Storage Sync Service resource.", + "required": true, + "type": "string" + } + ], + "tags": [ + "StorageSyncServices Resource" + ], + "operationId": "StorageSyncServices_Delete", + "description": "Delete a given StorageSyncService.", + "x-ms-examples": { + "StorageSyncServices_Delete": { + "$ref": "./examples/StorageSyncServices_Delete.json" + } + }, + "responses": { + "200": { + "description": "Storage Sync Service object was deleted.", + "headers": { + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "204": { + "description": "Storage Sync Service Resource doesn't exist" + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorageSync/storageSyncServices": { + "get": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "tags": [ + "StorageSyncServices Resource" + ], + "operationId": "StorageSyncServices_ListByResourceGroup", + "description": "Get a StorageSyncService list by Resource group name.", + "x-ms-examples": { + "StorageSyncServices_ListByResourceGroup": { + "$ref": "./examples/StorageSyncServices_ListByResourceGroup.json" + } + }, + "responses": { + "200": { + "description": "Array of registered Storage Sync Service resources in the Resource Group", + "schema": { + "$ref": "#/definitions/StorageSyncServiceArray" + }, + "headers": { + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.StorageSync/storageSyncServices": { + "get": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + } + ], + "tags": [ + "StorageSyncServices Resource" + ], + "operationId": "StorageSyncServices_ListBySubscription", + "description": "Get a StorageSyncService list by subscription.", + "x-ms-examples": { + "StorageSyncServices_ListBySubscription": { + "$ref": "./examples/StorageSyncServices_ListBySubscription.json" + } + }, + "responses": { + "200": { + "description": "Array of registered Storage Sync Service resources in the subscription.", + "schema": { + "$ref": "#/definitions/StorageSyncServiceArray" + }, + "headers": { + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorageSync/storageSyncServices/{storageSyncServiceName}/syncGroups": { + "get": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageSyncServiceName", + "in": "path", + "description": "Name of Storage Sync Service resource.", + "required": true, + "type": "string" + } + ], + "tags": [ + "SyncGroup Resource" + ], + "operationId": "SyncGroups_ListByStorageSyncService", + "description": "Get a SyncGroup List.", + "x-ms-examples": { + "SyncGroups_ListByStorageSyncService": { + "$ref": "./examples/SyncGroups_ListByStorageSyncService.json" + } + }, + "responses": { + "200": { + "description": "Array of Sync Group resources in Storage Sync Service", + "schema": { + "$ref": "#/definitions/SyncGroupArray" + }, + "headers": { + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorageSync/storageSyncServices/{storageSyncServiceName}/syncGroups/{syncGroupName}": { + "put": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageSyncServiceName", + "in": "path", + "description": "Name of Storage Sync Service resource.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "Name of Sync Group resource.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "Sync Group Body", + "required": true, + "schema": { + "$ref": "#/definitions/SyncGroupCreateParameters" + } + } + ], + "tags": [ + "SyncGroup Resource" + ], + "operationId": "SyncGroups_Create", + "description": "Create a new SyncGroup.", + "x-ms-examples": { + "SyncGroups_Create": { + "$ref": "./examples/SyncGroups_Create.json" + } + }, + "responses": { + "200": { + "description": "Sync Group object", + "schema": { + "$ref": "#/definitions/SyncGroup" + }, + "headers": { + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + } + }, + "get": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageSyncServiceName", + "in": "path", + "description": "Name of Storage Sync Service resource.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "Name of Sync Group resource.", + "required": true, + "type": "string" + } + ], + "tags": [ + "SyncGroup Resource" + ], + "operationId": "SyncGroups_Get", + "description": "Get a given SyncGroup.", + "x-ms-examples": { + "SyncGroups_Get": { + "$ref": "./examples/SyncGroups_Get.json" + } + }, + "responses": { + "200": { + "description": "Sync Group object", + "schema": { + "$ref": "#/definitions/SyncGroup" + }, + "headers": { + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + } + }, + "delete": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageSyncServiceName", + "in": "path", + "description": "Name of Storage Sync Service resource.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "Name of Sync Group resource.", + "required": true, + "type": "string" + } + ], + "tags": [ + "SyncGroup Resource" + ], + "operationId": "SyncGroups_Delete", + "description": "Delete a given SyncGroup.", + "x-ms-examples": { + "SyncGroups_Delete": { + "$ref": "./examples/SyncGroups_Delete.json" + } + }, + "responses": { + "200": { + "description": "Sync Group object was deleted", + "headers": { + "x-ms-request-id": { + "description": "Request id", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id", + "type": "string" + } + } + }, + "204": { + "description": "Resource doesn't exist" + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorageSync/storageSyncServices/{storageSyncServiceName}/syncGroups/{syncGroupName}/cloudEndpoints/{cloudEndpointName}": { + "put": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageSyncServiceName", + "in": "path", + "description": "Name of Storage Sync Service resource.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "Name of Sync Group resource.", + "required": true, + "type": "string" + }, + { + "name": "cloudEndpointName", + "in": "path", + "description": "Name of Cloud Endpoint object.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "Body of Cloud Endpoint resource.", + "required": true, + "schema": { + "$ref": "#/definitions/CloudEndpointCreateParameters" + } + } + ], + "tags": [ + "CloudEndpoint Resource" + ], + "operationId": "CloudEndpoints_Create", + "description": "Create a new CloudEndpoint.", + "x-ms-examples": { + "CloudEndpoints_Create": { + "$ref": "./examples/CloudEndpoints_Create.json" + } + }, + "responses": { + "200": { + "description": "Cloud Endpoint object", + "schema": { + "$ref": "#/definitions/CloudEndpoint" + }, + "headers": { + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "202": { + "description": "Asynchronous Operation Status Location", + "headers": { + "Azure-AsyncOperation": { + "description": "Operation Status Location URI", + "type": "string" + }, + "Location": { + "description": "Operation Status Location URI", + "type": "string" + }, + "Retry-After": { + "description": "Retry After", + "type": "string" + }, + "x-ms-request-id": { + "description": "Request id", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageSyncServiceName", + "in": "path", + "description": "Name of Storage Sync Service resource.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "Name of Sync Group resource.", + "required": true, + "type": "string" + }, + { + "name": "cloudEndpointName", + "in": "path", + "description": "Name of Cloud Endpoint object.", + "required": true, + "type": "string" + } + ], + "tags": [ + "CloudEndpoint Resource" + ], + "operationId": "CloudEndpoints_Get", + "description": "Get a given CloudEndpoint.", + "x-ms-examples": { + "CloudEndpoints_Get": { + "$ref": "./examples/CloudEndpoints_Get.json" + } + }, + "responses": { + "200": { + "description": "Cloud Endpoint object", + "schema": { + "$ref": "#/definitions/CloudEndpoint" + }, + "headers": { + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + } + }, + "delete": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageSyncServiceName", + "in": "path", + "description": "Name of Storage Sync Service resource.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "Name of Sync Group resource.", + "required": true, + "type": "string" + }, + { + "name": "cloudEndpointName", + "in": "path", + "description": "Name of Cloud Endpoint object.", + "required": true, + "type": "string" + } + ], + "tags": [ + "CloudEndpoint Resource" + ], + "operationId": "CloudEndpoints_Delete", + "description": "Delete a given CloudEndpoint.", + "x-ms-examples": { + "CloudEndpoints_Delete": { + "$ref": "./examples/CloudEndpoints_Delete.json" + } + }, + "responses": { + "200": { + "description": "Ok", + "headers": { + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "202": { + "description": "Asynchronous Operation Status Location", + "headers": { + "Azure-AsyncOperation": { + "description": "Operation Status Location URI", + "type": "string" + }, + "Location": { + "description": "Operation Status Location URI", + "type": "string" + }, + "Retry-After": { + "description": "Retry After", + "type": "string" + }, + "x-ms-request-id": { + "description": "Request id", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id", + "type": "string" + } + } + }, + "204": { + "description": "Resource doesn't exist" + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorageSync/storageSyncServices/{storageSyncServiceName}/syncGroups/{syncGroupName}/cloudEndpoints": { + "get": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageSyncServiceName", + "in": "path", + "description": "Name of Storage Sync Service resource.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "Name of Sync Group resource.", + "required": true, + "type": "string" + } + ], + "tags": [ + "CloudEndpoint Resource" + ], + "operationId": "CloudEndpoints_ListBySyncGroup", + "description": "Get a CloudEndpoint List.", + "x-ms-examples": { + "CloudEndpoints_ListBySyncGroup": { + "$ref": "./examples/CloudEndpoints_ListBySyncGroup.json" + } + }, + "responses": { + "200": { + "description": "Array of Cloud Endpoint resources in Sync Group", + "schema": { + "$ref": "#/definitions/CloudEndpointArray" + }, + "headers": { + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorageSync/storageSyncServices/{storageSyncServiceName}/syncGroups/{syncGroupName}/cloudEndpoints/{cloudEndpointName}/prebackup": { + "post": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageSyncServiceName", + "in": "path", + "description": "Name of Storage Sync Service resource.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "Name of Sync Group resource.", + "required": true, + "type": "string" + }, + { + "name": "cloudEndpointName", + "in": "path", + "description": "Name of Cloud Endpoint object.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "Body of Backup request.", + "required": true, + "schema": { + "$ref": "#/definitions/BackupRequest" + } + } + ], + "tags": [ + "CloudEndpoint Resource", + "Actions", + "Backup Restore" + ], + "operationId": "CloudEndpoints_PreBackup", + "description": "Pre Backup a given CloudEndpoint.", + "x-ms-examples": { + "CloudEndpoints_PreBackup": { + "$ref": "./examples/CloudEndpoints_PreBackup.json" + } + }, + "responses": { + "200": { + "description": "Ok", + "headers": { + "Location": { + "description": "Operation Status Location URI", + "type": "string" + }, + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "202": { + "description": "Asynchronous Operation Status Location", + "headers": { + "Location": { + "description": "Operation Status Location URI", + "type": "string" + }, + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorageSync/storageSyncServices/{storageSyncServiceName}/syncGroups/{syncGroupName}/cloudEndpoints/{cloudEndpointName}/postbackup": { + "post": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageSyncServiceName", + "in": "path", + "description": "Name of Storage Sync Service resource.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "Name of Sync Group resource.", + "required": true, + "type": "string" + }, + { + "name": "cloudEndpointName", + "in": "path", + "description": "Name of Cloud Endpoint object.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "Body of Backup request.", + "required": true, + "schema": { + "$ref": "#/definitions/BackupRequest" + } + } + ], + "tags": [ + "CloudEndpoint Resource", + "Actions", + "Backup Restore" + ], + "operationId": "CloudEndpoints_PostBackup", + "description": "Post Backup a given CloudEndpoint.", + "x-ms-examples": { + "CloudEndpoints_PostBackup": { + "$ref": "./examples/CloudEndpoints_PostBackup.json" + } + }, + "responses": { + "200": { + "description": "Ok", + "schema": { + "$ref": "#/definitions/PostBackupResponse" + }, + "headers": { + "Location": { + "description": "Operation Status Location URI", + "type": "string" + }, + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "202": { + "description": "Asynchronous Operation Status Location", + "headers": { + "Location": { + "description": "Operation Status Location URI", + "type": "string" + }, + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorageSync/storageSyncServices/{storageSyncServiceName}/syncGroups/{syncGroupName}/cloudEndpoints/{cloudEndpointName}/prerestore": { + "post": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageSyncServiceName", + "in": "path", + "description": "Name of Storage Sync Service resource.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "Name of Sync Group resource.", + "required": true, + "type": "string" + }, + { + "name": "cloudEndpointName", + "in": "path", + "description": "Name of Cloud Endpoint object.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "Body of Cloud Endpoint object.", + "required": true, + "schema": { + "$ref": "#/definitions/PreRestoreRequest" + } + } + ], + "tags": [ + "CloudEndpoint Resource", + "Actions", + "Backup Restore" + ], + "operationId": "CloudEndpoints_PreRestore", + "description": "Pre Restore a given CloudEndpoint.", + "x-ms-examples": { + "CloudEndpoints_PreRestore": { + "$ref": "./examples/CloudEndpoints_PreRestore.json" + } + }, + "responses": { + "200": { + "description": "Ok" + }, + "202": { + "description": "Asynchronous Operation Status Location", + "headers": { + "Location": { + "description": "Operation Status Location URI", + "type": "string" + }, + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorageSync/storageSyncServices/{storageSyncServiceName}/syncGroups/{syncGroupName}/cloudEndpoints/{cloudEndpointName}/restoreheartbeat": { + "post": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageSyncServiceName", + "in": "path", + "description": "Name of Storage Sync Service resource.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "Name of Sync Group resource.", + "required": true, + "type": "string" + }, + { + "name": "cloudEndpointName", + "in": "path", + "description": "Name of Cloud Endpoint object.", + "required": true, + "type": "string" + } + ], + "tags": [ + "CloudEndpoint Resource", + "Actions", + "Backup Restore" + ], + "operationId": "CloudEndpoints_restoreheartbeat", + "description": "Restore Heartbeat a given CloudEndpoint.", + "x-ms-examples": { + "CloudEndpoints_restoreheartbeat": { + "$ref": "./examples/CloudEndpoints_RestoreHeatbeat.json" + } + }, + "responses": { + "200": { + "description": "Restore Heartbeat Operation has ran successfully.", + "headers": { + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorageSync/storageSyncServices/{storageSyncServiceName}/syncGroups/{syncGroupName}/cloudEndpoints/{cloudEndpointName}/postrestore": { + "post": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageSyncServiceName", + "in": "path", + "description": "Name of Storage Sync Service resource.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "Name of Sync Group resource.", + "required": true, + "type": "string" + }, + { + "name": "cloudEndpointName", + "in": "path", + "description": "Name of Cloud Endpoint object.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "Body of Cloud Endpoint object.", + "required": true, + "schema": { + "$ref": "#/definitions/PostRestoreRequest" + } + } + ], + "tags": [ + "CloudEndpoint Resource", + "Actions", + "Backup Restore" + ], + "operationId": "CloudEndpoints_PostRestore", + "description": "Post Restore a given CloudEndpoint.", + "x-ms-examples": { + "CloudEndpoints_PostRestore": { + "$ref": "./examples/CloudEndpoints_PostRestore.json" + } + }, + "responses": { + "200": { + "description": "Ok" + }, + "202": { + "description": "Asynchronous Operation Status Location", + "headers": { + "Location": { + "description": "Operation Status Location URI", + "type": "string" + }, + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorageSync/storageSyncServices/{storageSyncServiceName}/syncGroups/{syncGroupName}/cloudEndpoints/{cloudEndpointName}/triggerChangeDetection": { + "post": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageSyncServiceName", + "in": "path", + "description": "Name of Storage Sync Service resource.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "Name of Sync Group resource.", + "required": true, + "type": "string" + }, + { + "name": "cloudEndpointName", + "in": "path", + "description": "Name of Cloud Endpoint object.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "Trigger Change Detection Action parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/TriggerChangeDetectionParameters" + } + } + ], + "tags": [ + "CloudEndpoint Resource", + "Actions", + "Change Detection" + ], + "operationId": "CloudEndpoints_TriggerChangeDetection", + "description": "Triggers detection of changes performed on Azure File share connected to the specified Azure File Sync Cloud Endpoint.", + "x-ms-examples": { + "CloudEndpoints_TriggerChangeDetection": { + "$ref": "./examples/CloudEndpoints_TriggerChangeDetection.json" + } + }, + "responses": { + "200": { + "description": "Ok" + }, + "202": { + "description": "Asynchronous Operation Status Location", + "headers": { + "Location": { + "description": "Operation Status Location URI", + "type": "string" + }, + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorageSync/storageSyncServices/{storageSyncServiceName}/syncGroups/{syncGroupName}/serverEndpoints/{serverEndpointName}": { + "put": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageSyncServiceName", + "in": "path", + "description": "Name of Storage Sync Service resource.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "Name of Sync Group resource.", + "required": true, + "type": "string" + }, + { + "name": "serverEndpointName", + "in": "path", + "description": "Name of Server Endpoint object.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "Body of Server Endpoint object.", + "required": true, + "schema": { + "$ref": "#/definitions/ServerEndpointCreateParameters" + } + } + ], + "tags": [ + "ServerEndpoint Resource" + ], + "operationId": "ServerEndpoints_Create", + "description": "Create a new ServerEndpoint.", + "x-ms-examples": { + "ServerEndpoints_Create": { + "$ref": "./examples/ServerEndpoints_Create.json" + } + }, + "responses": { + "200": { + "description": "Server Endpoint object", + "schema": { + "$ref": "#/definitions/ServerEndpoint" + }, + "headers": { + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "202": { + "description": "Asynchronous Operation Status Location", + "headers": { + "Azure-AsyncOperation": { + "description": "Operation Status Location URI", + "type": "string" + }, + "Location": { + "description": "Operation Status Location URI", + "type": "string" + }, + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageSyncServiceName", + "in": "path", + "description": "Name of Storage Sync Service resource.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "Name of Sync Group resource.", + "required": true, + "type": "string" + }, + { + "name": "serverEndpointName", + "in": "path", + "description": "Name of Server Endpoint object.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "Any of the properties applicable in PUT request.", + "schema": { + "$ref": "#/definitions/ServerEndpointUpdateParameters" + } + } + ], + "tags": [ + "ServerEndpoint Resource" + ], + "operationId": "ServerEndpoints_Update", + "description": "Patch a given ServerEndpoint.", + "x-ms-examples": { + "ServerEndpoints_Update": { + "$ref": "./examples/ServerEndpoints_Update.json" + } + }, + "responses": { + "200": { + "description": "Server Endpoint object", + "schema": { + "$ref": "#/definitions/ServerEndpoint" + }, + "headers": { + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "202": { + "description": "Asynchronous Operation Status Location", + "headers": { + "Azure-AsyncOperation": { + "description": "Operation Status Location URI", + "type": "string" + }, + "Location": { + "description": "Operation Status Location URI", + "type": "string" + }, + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + }, + "x-ms-long-running-operation": true + }, + "get": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageSyncServiceName", + "in": "path", + "description": "Name of Storage Sync Service resource.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "Name of Sync Group resource.", + "required": true, + "type": "string" + }, + { + "name": "serverEndpointName", + "in": "path", + "description": "Name of Server Endpoint object.", + "required": true, + "type": "string" + } + ], + "tags": [ + "ServerEndpoint Resource" + ], + "operationId": "ServerEndpoints_Get", + "description": "Get a ServerEndpoint.", + "x-ms-examples": { + "ServerEndpoints_Get": { + "$ref": "./examples/ServerEndpoints_Get.json" + } + }, + "responses": { + "200": { + "description": "Server Endpoint object", + "schema": { + "$ref": "#/definitions/ServerEndpoint" + }, + "headers": { + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + } + }, + "delete": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageSyncServiceName", + "in": "path", + "description": "Name of Storage Sync Service resource.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "Name of Sync Group resource.", + "required": true, + "type": "string" + }, + { + "name": "serverEndpointName", + "in": "path", + "description": "Name of Server Endpoint object.", + "required": true, + "type": "string" + } + ], + "tags": [ + "ServerEndpoint Resource" + ], + "operationId": "ServerEndpoints_Delete", + "description": "Delete a given ServerEndpoint.", + "x-ms-examples": { + "ServerEndpoints_Delete": { + "$ref": "./examples/ServerEndpoints_Delete.json" + } + }, + "responses": { + "200": { + "description": "Ok", + "headers": { + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "202": { + "description": "Asynchronous Operation Status Location", + "headers": { + "Location": { + "description": "Operation Status Location URI", + "type": "string" + }, + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorageSync/storageSyncServices/{storageSyncServiceName}/syncGroups/{syncGroupName}/serverEndpoints": { + "get": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageSyncServiceName", + "in": "path", + "description": "Name of Storage Sync Service resource.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "Name of Sync Group resource.", + "required": true, + "type": "string" + } + ], + "tags": [ + "ServerEndpoint Resource" + ], + "operationId": "ServerEndpoints_ListBySyncGroup", + "description": "Get a ServerEndpoint list.", + "x-ms-examples": { + "ServerEndpoints_ListBySyncGroup": { + "$ref": "./examples/ServerEndpoints_ListBySyncGroup.json" + } + }, + "responses": { + "200": { + "description": "Array of Server Endpoint resources in Sync Group", + "schema": { + "$ref": "#/definitions/ServerEndpointArray" + }, + "headers": { + "Location": { + "description": "Operation Status Location URI", + "type": "string" + }, + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorageSync/storageSyncServices/{storageSyncServiceName}/syncGroups/{syncGroupName}/serverEndpoints/{serverEndpointName}/recallAction": { + "post": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageSyncServiceName", + "in": "path", + "description": "Name of Storage Sync Service resource.", + "required": true, + "type": "string" + }, + { + "name": "syncGroupName", + "in": "path", + "description": "Name of Sync Group resource.", + "required": true, + "type": "string" + }, + { + "name": "serverEndpointName", + "in": "path", + "description": "Name of Server Endpoint object.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "Body of Recall Action object.", + "required": true, + "schema": { + "$ref": "#/definitions/RecallActionParameters" + } + } + ], + "tags": [ + "ServerEndpoint Resource", + "Actions" + ], + "operationId": "ServerEndpoints_recallAction", + "description": "Recall a server endpoint.", + "x-ms-examples": { + "ServerEndpoints_recallAction": { + "$ref": "./examples/ServerEndpoints_Recall.json" + } + }, + "responses": { + "200": { + "description": "Server Endpoint object", + "headers": { + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "202": { + "description": "Asynchronous Operation Status Location", + "headers": { + "Location": { + "description": "Operation Status Location URI", + "type": "string" + }, + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorageSync/storageSyncServices/{storageSyncServiceName}/registeredServers": { + "get": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageSyncServiceName", + "in": "path", + "description": "Name of Storage Sync Service resource.", + "required": true, + "type": "string" + } + ], + "tags": [ + "RegisteredServer Resource" + ], + "operationId": "RegisteredServers_ListByStorageSyncService", + "description": "Get a given registered server list.", + "x-ms-examples": { + "RegisteredServers_ListByStorageSyncService": { + "$ref": "./examples/RegisteredServers_ListByStorageSyncService.json" + } + }, + "responses": { + "200": { + "description": "Array of Registered Server resources in Storage Sync Service", + "schema": { + "$ref": "#/definitions/RegisteredServerArray" + }, + "headers": { + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorageSync/storageSyncServices/{storageSyncServiceName}/registeredServers/{serverId}": { + "get": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageSyncServiceName", + "in": "path", + "description": "Name of Storage Sync Service resource.", + "required": true, + "type": "string" + }, + { + "name": "serverId", + "in": "path", + "description": "GUID identifying the on-premises server.", + "required": true, + "type": "string" + } + ], + "tags": [ + "RegisteredServer Resource" + ], + "operationId": "RegisteredServers_Get", + "description": "Get a given registered server.", + "x-ms-examples": { + "RegisteredServers_Get": { + "$ref": "./examples/RegisteredServers_Get.json" + } + }, + "responses": { + "200": { + "description": "Registered Server resources in Sync Group", + "schema": { + "$ref": "#/definitions/RegisteredServer" + }, + "headers": { + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + } + }, + "put": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageSyncServiceName", + "in": "path", + "description": "Name of Storage Sync Service resource.", + "required": true, + "type": "string" + }, + { + "name": "serverId", + "in": "path", + "description": "GUID identifying the on-premises server.", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "Body of Registered Server object.", + "required": true, + "schema": { + "$ref": "#/definitions/RegisteredServerCreateParameters" + } + } + ], + "tags": [ + "RegisteredServer Resource" + ], + "operationId": "RegisteredServers_Create", + "description": "Add a new registered server.", + "x-ms-examples": { + "RegisteredServers_Create": { + "$ref": "./examples/RegisteredServers_Create.json" + } + }, + "responses": { + "200": { + "description": "Registered Server resources in Sync Group", + "schema": { + "$ref": "#/definitions/RegisteredServer" + }, + "headers": { + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "202": { + "description": "Asynchronous Operation Status Location", + "headers": { + "Azure-AsyncOperation": { + "description": "Operation Status Location URI", + "type": "string" + }, + "Location": { + "description": "Operation Status Location URI", + "type": "string" + }, + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageSyncServiceName", + "in": "path", + "description": "Name of Storage Sync Service resource.", + "required": true, + "type": "string" + }, + { + "name": "serverId", + "in": "path", + "description": "GUID identifying the on-premises server.", + "required": true, + "type": "string" + } + ], + "tags": [ + "RegisteredServer Resource" + ], + "operationId": "RegisteredServers_Delete", + "description": "Delete the given registered server.", + "x-ms-examples": { + "RegisteredServers_Delete": { + "$ref": "./examples/RegisteredServers_Delete.json" + } + }, + "responses": { + "200": { + "description": "Ok", + "headers": { + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "202": { + "description": "Asynchronous Operation Status Location", + "headers": { + "Location": { + "description": "Operation Status Location URI", + "type": "string" + }, + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "204": { + "description": "Resource doesn't exist" + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorageSync/storageSyncServices/{storageSyncServiceName}/registeredServers/{serverId}/triggerRollover": { + "post": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageSyncServiceName", + "in": "path", + "description": "Name of Storage Sync Service resource.", + "required": true, + "type": "string" + }, + { + "name": "serverId", + "in": "path", + "description": "Server Id", + "required": true, + "type": "string" + }, + { + "name": "parameters", + "in": "body", + "description": "Body of Trigger Rollover request.", + "required": true, + "schema": { + "$ref": "#/definitions/TriggerRolloverRequest" + } + } + ], + "tags": [ + "RegisteredServer Resource", + "Actions" + ], + "operationId": "RegisteredServers_triggerRollover", + "description": "Triggers Server certificate rollover.", + "x-ms-examples": { + "RegisteredServers_triggerRollover": { + "$ref": "./examples/RegisteredServers_TriggerRollover.json" + } + }, + "responses": { + "200": { + "description": "Trigger Rollover success status", + "headers": { + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "202": { + "description": "Asynchronous Operation Status Location", + "headers": { + "Location": { + "description": "Operation Status Location URI", + "type": "string" + }, + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorageSync/storageSyncServices/{storageSyncServiceName}/workflows": { + "get": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageSyncServiceName", + "in": "path", + "description": "Name of Storage Sync Service resource.", + "required": true, + "type": "string" + } + ], + "tags": [ + "Workflow Resource" + ], + "operationId": "Workflows_ListByStorageSyncService", + "description": "Get a Workflow List", + "x-ms-examples": { + "Workflows_ListByStorageSyncService": { + "$ref": "./examples/Workflows_ListByStorageSyncService.json" + } + }, + "responses": { + "200": { + "description": "Array of Workflow resources in Storage Sync Service", + "schema": { + "$ref": "#/definitions/WorkflowArray" + }, + "headers": { + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorageSync/storageSyncServices/{storageSyncServiceName}/workflows/{workflowId}": { + "get": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageSyncServiceName", + "in": "path", + "description": "Name of Storage Sync Service resource.", + "required": true, + "type": "string" + }, + { + "name": "workflowId", + "in": "path", + "description": "workflow Id", + "required": true, + "type": "string" + } + ], + "tags": [ + "Workflow Resource" + ], + "operationId": "Workflows_Get", + "description": "Get Workflows resource", + "x-ms-examples": { + "Workflows_Get": { + "$ref": "./examples/Workflows_Get.json" + } + }, + "responses": { + "200": { + "description": "Workflow object", + "schema": { + "$ref": "#/definitions/Workflow" + }, + "headers": { + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorageSync/storageSyncServices/{storageSyncServiceName}/workflows/{workflowId}/abort": { + "post": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "storageSyncServiceName", + "in": "path", + "description": "Name of Storage Sync Service resource.", + "required": true, + "type": "string" + }, + { + "name": "workflowId", + "in": "path", + "description": "workflow Id", + "required": true, + "type": "string" + } + ], + "tags": [ + "Workflow Resource", + "Actions" + ], + "operationId": "Workflows_Abort", + "description": "Abort the given workflow.", + "x-ms-examples": { + "Workflows_Abort": { + "$ref": "./examples/Workflows_Abort.json" + } + }, + "responses": { + "200": { + "description": "success", + "headers": { + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.StorageSync/locations/{locationName}/workflows/{workflowId}/operations/{operationId}": { + "get": { + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "locationName", + "in": "path", + "required": true, + "type": "string", + "description": "The desired region to obtain information from." + }, + { + "name": "workflowId", + "in": "path", + "description": "workflow Id", + "required": true, + "type": "string" + }, + { + "name": "operationId", + "in": "path", + "description": "operation Id", + "required": true, + "type": "string" + } + ], + "tags": [ + "Operation Status" + ], + "operationId": "OperationStatus_Get", + "description": "Get Operation status", + "x-ms-examples": { + "Workflows_Get": { + "$ref": "./examples/OperationStatus_Get.json" + } + }, + "responses": { + "200": { + "description": "Operation Status", + "schema": { + "$ref": "#/definitions/OperationStatus" + }, + "headers": { + "x-ms-request-id": { + "description": "request id.", + "type": "string" + }, + "x-ms-correlation-request-id": { + "description": "correlation request id.", + "type": "string" + } + } + }, + "default": { + "description": "Error message indicating why the operation failed.", + "schema": { + "$ref": "#/definitions/StorageSyncError" + } + } + } + } + } + }, + "definitions": { + "StorageSyncError": { + "type": "object", + "description": "Error type", + "properties": { + "error": { + "$ref": "#/definitions/StorageSyncApiError", + "description": "Error details of the given entry." + }, + "innererror": { + "$ref": "#/definitions/StorageSyncApiError", + "description": "Error details of the given entry." + } + } + }, + "StorageSyncApiError": { + "type": "object", + "description": "Error type", + "properties": { + "code": { + "type": "string", + "description": "Error code of the given entry." + }, + "message": { + "type": "string", + "description": "Error message of the given entry." + }, + "target": { + "type": "string", + "description": "Target of the given error entry." + }, + "details": { + "$ref": "#/definitions/StorageSyncErrorDetails", + "description": "Error details of the given entry." + } + } + }, + "StorageSyncErrorDetails": { + "type": "object", + "description": "Error Details object.", + "properties": { + "code": { + "type": "string", + "description": "Error code of the given entry." + }, + "message": { + "type": "string", + "description": "Error message of the given entry." + }, + "target": { + "type": "string", + "description": "Target of the given entry." + } + } + }, + "SubscriptionState": { + "type": "object", + "description": "Subscription State object.", + "properties": { + "state": { + "type": "string", + "description": "State of Azure Subscription", + "enum": [ + "Registered", + "Unregistered", + "Warned", + "Suspended", + "Deleted" + ], + "x-ms-enum": { + "name": "Reason", + "modelAsString": true + } + }, + "istransitioning": { + "type": "boolean", + "description": "Is Transitioning", + "readOnly": true + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SubscriptionStateProperties", + "description": "Subscription state properties." + } + } + }, + "StorageSyncService": { + "type": "object", + "description": "Storage Sync Service object.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/StorageSyncServiceProperties", + "description": "Storage Sync Service properties." + } + } + }, + "SyncGroup": { + "type": "object", + "description": "Sync Group object.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SyncGroupProperties", + "description": "SyncGroup properties." + } + } + }, + "CloudEndpoint": { + "type": "object", + "description": "Cloud Endpoint object.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CloudEndpointProperties", + "description": "Cloud Endpoint properties." + } + } + }, + "TriggerChangeDetectionParameters": { + "properties": { + "directoryPath": { + "type": "string", + "description": "Relative path to a directory Azure File share for which change detection is to be performed." + }, + "changeDetectionMode": { + "type": "string", + "description": "Change Detection Mode. Applies to a directory specified in directoryPath parameter.", + "enum": [ + "Default", + "Recursive" + ], + "x-ms-enum": { + "name": "changeDetectionMode", + "modelAsString": true + } + }, + "paths": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Array of relative paths on the Azure File share to be included in the change detection. Can be files and directories." + } + }, + "description": "The parameters used when calling trigger change detection action on cloud endpoint." + }, + "RecallActionParameters": { + "properties": { + "pattern": { + "type": "string", + "description": "Pattern of the files." + }, + "recallPath": { + "type": "string", + "description": "Recall path." + } + }, + "description": "The parameters used when calling recall action on server endpoint." + }, + "StorageSyncServiceCreateParameters": { + "properties": { + "location": { + "type": "string", + "description": "Required. Gets or sets the location of the resource. This will be one of the supported and registered Azure Geo Regions (e.g. West US, East US, Southeast Asia, etc.). The geo region of a resource cannot be changed once it is created, but if an identical geo region is specified on update, the request will succeed." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Gets or sets a list of key value pairs that describe the resource. These tags can be used for viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key with a length no greater than 128 characters and a value with a length no greater than 256 characters." + }, + "properties": {} + }, + "required": [ + "location" + ], + "description": "The parameters used when creating a storage sync service." + }, + "SyncGroupCreateParameters": { + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SyncGroupCreateParametersProperties", + "description": "The parameters used to create the sync group" + } + }, + "description": "The parameters used when creating a sync group." + }, + "SyncGroupCreateParametersProperties": { + "type": "object", + "description": "Sync Group Create Properties object.", + "properties": {} + }, + "CloudEndpointCreateParameters": { + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CloudEndpointCreateParametersProperties", + "description": "The parameters used to create the cloud endpoint." + } + }, + "description": "The parameters used when creating a cloud endpoint." + }, + "CloudEndpointCreateParametersProperties": { + "description": "CloudEndpoint Properties object.", + "properties": { + "storageAccountResourceId": { + "type": "string", + "description": "Storage Account Resource Id" + }, + "azureFileShareName": { + "type": "string", + "description": "Azure file share name" + }, + "storageAccountTenantId": { + "type": "string", + "description": "Storage Account Tenant Id" + }, + "friendlyName": { + "type": "string", + "description": "Friendly Name" + } + } + }, + "ServerEndpointCreateParameters": { + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServerEndpointCreateParametersProperties", + "description": "The parameters used to create the server endpoint." + } + }, + "description": "The parameters used when creating a server endpoint." + }, + "ServerEndpointCreateParametersProperties": { + "description": "ServerEndpoint Properties object.", + "properties": { + "serverLocalPath": { + "$ref": "#/definitions/PhysicalPath", + "description": "Server Local path." + }, + "cloudTiering": { + "$ref": "#/definitions/FeatureStatus", + "description": "Cloud Tiering." + }, + "volumeFreeSpacePercent": { + "type": "integer", + "minimum": 0, + "maximum": 100, + "description": "Level of free space to be maintained by Cloud Tiering if it is enabled." + }, + "tierFilesOlderThanDays": { + "type": "integer", + "minimum": 0, + "maximum": 2147483647, + "description": "Tier files older than days." + }, + "friendlyName": { + "type": "string", + "description": "Friendly Name" + }, + "serverResourceId": { + "$ref": "#/definitions/ResourceId", + "description": "Server Resource Id." + }, + "offlineDataTransfer": { + "$ref": "#/definitions/FeatureStatus", + "description": "Offline data transfer" + }, + "offlineDataTransferShareName": { + "type": "string", + "description": "Offline data transfer share name" + } + } + }, + "TriggerRolloverRequest": { + "type": "object", + "description": "Trigger Rollover Request.", + "properties": { + "serverCertificate": { + "type": "string", + "description": "Certificate Data" + } + } + }, + "RegisteredServerCreateParameters": { + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RegisteredServerCreateParametersProperties", + "description": "The parameters used to create the registered server." + } + }, + "description": "The parameters used when creating a registered server." + }, + "RegisteredServerCreateParametersProperties": { + "properties": { + "serverCertificate": { + "type": "string", + "description": "Registered Server Certificate" + }, + "agentVersion": { + "type": "string", + "description": "Registered Server Agent Version" + }, + "serverOSVersion": { + "type": "string", + "description": "Registered Server OS Version" + }, + "lastHeartBeat": { + "type": "string", + "description": "Registered Server last heart beat" + }, + "serverRole": { + "type": "string", + "description": "Registered Server serverRole" + }, + "clusterId": { + "type": "string", + "description": "Registered Server clusterId" + }, + "clusterName": { + "type": "string", + "description": "Registered Server clusterName" + }, + "serverId": { + "type": "string", + "description": "Registered Server serverId" + }, + "friendlyName": { + "type": "string", + "description": "Friendly Name" + } + } + }, + "ServerEndpointUpdateParameters": { + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServerEndpointUpdateProperties", + "description": "The properties of the server endpoint." + } + }, + "description": "Parameters for updating an Server Endpoint." + }, + "ServerEndpoint": { + "type": "object", + "description": "Server Endpoint object.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServerEndpointProperties", + "description": "Server Endpoint properties." + } + } + }, + "RegisteredServer": { + "type": "object", + "description": "Registered Server resource.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RegisteredServerProperties", + "description": "RegisteredServer properties." + } + } + }, + "ResourcesMoveInfo": { + "type": "object", + "description": "Resource Move Info.", + "properties": { + "targetResourceGroup": { + "type": "string", + "description": "Target resource group." + }, + "resources": { + "type": "array", + "description": "Collection of Resources.", + "items": { + "$ref": "#/definitions/ResourceId" + } + } + } + }, + "Workflow": { + "type": "object", + "description": "Workflow resource.", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/WorkflowProperties", + "description": "Workflow properties." + } + } + }, + "OperationEntityListResult": { + "description": "The list of storage sync operations.", + "type": "object", + "properties": { + "nextLink": { + "description": "The link used to get the next page of operations.", + "type": "string" + }, + "value": { + "description": "The list of operations.", + "type": "array", + "items": { + "$ref": "#/definitions/OperationEntity" + } + } + } + }, + "OperationEntity": { + "description": "The operation supported by storage sync.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}.", + "type": "string" + }, + "display": { + "$ref": "#/definitions/OperationDisplayInfo", + "description": "The operation supported by storage sync." + }, + "origin": { + "type": "string", + "description": "The origin." + } + } + }, + "OperationDisplayInfo": { + "description": "The operation supported by storage sync.", + "type": "object", + "properties": { + "description": { + "description": "The description of the operation.", + "type": "string" + }, + "operation": { + "description": "The action that users can perform, based on their permission level.", + "type": "string" + }, + "provider": { + "description": "Service provider: Microsoft StorageSync.", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed.", + "type": "string" + } + } + }, + "OperationDisplayResource": { + "type": "object", + "description": "Operation Display Resource object.", + "properties": { + "provider": { + "type": "string", + "description": "Operation Display Resource Provider." + }, + "resource": { + "type": "string", + "description": "Operation Display Resource." + }, + "operation": { + "type": "string", + "description": "Operation Display Resource Operation." + }, + "description": { + "type": "string", + "description": "Operation Display Resource Description." + } + } + }, + "CheckNameAvailabilityParameters": { + "properties": { + "name": { + "type": "string", + "description": "The name to check for availability" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.StorageSync/storageSyncServices" + ], + "x-ms-enum": { + "name": "Type", + "modelAsString": false + }, + "description": "The resource type. Must be set to Microsoft.StorageSync/storageSyncServices" + } + }, + "required": [ + "name", + "type" + ], + "description": "Parameters for a check name availability request." + }, + "CheckNameAvailabilityResult": { + "properties": { + "nameAvailable": { + "readOnly": true, + "type": "boolean", + "description": "Gets a boolean value that indicates whether the name is available for you to use. If true, the name is available. If false, the name has already been taken or invalid and cannot be used." + }, + "reason": { + "readOnly": true, + "type": "string", + "enum": [ + "Invalid", + "AlreadyExists" + ], + "x-ms-enum": { + "name": "NameAvailabilityReason", + "modelAsString": false + }, + "description": "Gets the reason that a Storage Sync Service name could not be used. The Reason element is only returned if NameAvailable is false." + }, + "message": { + "readOnly": true, + "type": "string", + "description": "Gets an error message explaining the Reason value in more detail." + } + }, + "description": "The CheckNameAvailability operation response." + }, + "PostRestoreRequest": { + "type": "object", + "description": "Post Restore Request", + "properties": { + "partition": { + "type": "string", + "description": "Post Restore partition." + }, + "replicaGroup": { + "type": "string", + "description": "Post Restore replica group." + }, + "requestId": { + "type": "string", + "description": "Post Restore request id." + }, + "azureFileShareUri": { + "type": "string", + "description": "Post Restore Azure file share uri." + }, + "status": { + "type": "string", + "description": "Post Restore Azure status." + }, + "sourceAzureFileShareUri": { + "type": "string", + "description": "Post Restore Azure source azure file share uri." + }, + "failedFileList": { + "type": "string", + "description": "Post Restore Azure failed file list." + }, + "restoreFileSpec": { + "type": "array", + "description": "Post Restore restore file spec array.", + "items": { + "$ref": "#/definitions/RestoreFileSpec", + "description": "Post Restore restore file spec items array." + } + } + } + }, + "PreRestoreRequest": { + "type": "object", + "description": "Pre Restore request object.", + "properties": { + "partition": { + "type": "string", + "description": "Pre Restore partition." + }, + "replicaGroup": { + "type": "string", + "description": "Pre Restore replica group." + }, + "requestId": { + "type": "string", + "description": "Pre Restore request id." + }, + "azureFileShareUri": { + "type": "string", + "description": "Pre Restore Azure file share uri." + }, + "status": { + "type": "string", + "description": "Pre Restore Azure status." + }, + "sourceAzureFileShareUri": { + "type": "string", + "description": "Pre Restore Azure source azure file share uri." + }, + "backupMetadataPropertyBag": { + "type": "string", + "description": "Pre Restore backup metadata property bag." + }, + "restoreFileSpec": { + "type": "array", + "description": "Pre Restore restore file spec array.", + "items": { + "$ref": "#/definitions/RestoreFileSpec", + "description": "Pre Restore restore file spec items array." + } + }, + "pauseWaitForSyncDrainTimePeriodInSeconds": { + "type": "integer", + "description": "Pre Restore pause wait for sync drain time period in seconds." + } + } + }, + "BackupRequest": { + "type": "object", + "description": "Backup request", + "properties": { + "azureFileShare": { + "type": "string", + "description": "Azure File Share." + } + } + }, + "PostBackupResponse": { + "type": "object", + "description": "Post Backup Response", + "properties": { + "backupMetadata": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/PostBackupResponseProperties", + "description": "Post Backup Response Properties" + } + } + }, + "RestoreFileSpec": { + "type": "object", + "description": "Restore file spec.", + "properties": { + "path": { + "type": "string", + "description": "Restore file spec path" + }, + "isdir": { + "type": "boolean", + "description": "Restore file spec isdir" + } + } + }, + "StorageSyncServiceArray": { + "type": "object", + "description": "Array of StorageSyncServices", + "properties": { + "value": { + "type": "array", + "description": "Collection of StorageSyncServices.", + "items": { + "$ref": "#/definitions/StorageSyncService" + } + } + } + }, + "SyncGroupArray": { + "type": "object", + "description": "Array of SyncGroup", + "properties": { + "value": { + "type": "array", + "description": "Collection of SyncGroup.", + "items": { + "$ref": "#/definitions/SyncGroup" + } + } + } + }, + "CloudEndpointArray": { + "type": "object", + "description": "Array of CloudEndpoint", + "properties": { + "value": { + "type": "array", + "description": "Collection of CloudEndpoint.", + "items": { + "$ref": "#/definitions/CloudEndpoint" + } + } + } + }, + "ServerEndpointArray": { + "description": "Array of ServerEndpoint", + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "Collection of ServerEndpoint.", + "items": { + "$ref": "#/definitions/ServerEndpoint" + } + } + } + }, + "RegisteredServerArray": { + "description": "Array of RegisteredServer", + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "Collection of Registered Server.", + "items": { + "$ref": "#/definitions/RegisteredServer" + } + } + } + }, + "WorkflowArray": { + "description": "Array of Workflow", + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "Collection of workflow items.", + "items": { + "$ref": "#/definitions/Workflow" + } + } + } + }, + "SubscriptionStateProperties": { + "type": "object", + "description": "Subscription State properties." + }, + "PostBackupResponseProperties": { + "type": "object", + "description": "Post Backup Response Properties object.", + "properties": { + "cloudEndpointName": { + "type": "string", + "description": "cloud endpoint Name.", + "readOnly": true + } + } + }, + "StorageSyncServiceUpdateParameters": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The user-specified tags associated with the storage sync service." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/StorageSyncServiceUpdateProperties", + "description": "The properties of the storage sync service." + } + }, + "description": "Parameters for updating an Storage sync service." + }, + "StorageSyncServiceUpdateProperties": { + "type": "object", + "description": "Storage Sync Service Update Properties object.", + "properties": {} + }, + "StorageSyncServiceProperties": { + "type": "object", + "description": "Storage Sync Service Properties object.", + "properties": { + "storageSyncServiceStatus": { + "type": "integer", + "description": "Storage Sync service status.", + "readOnly": true + }, + "storageSyncServiceUid": { + "type": "string", + "description": "Storage Sync service Uid", + "readOnly": true + } + } + }, + "WorkflowProperties": { + "type": "object", + "description": "Workflow Properties object.", + "properties": { + "lastStepName": { + "type": "string", + "description": "last step name" + }, + "status": { + "$ref": "#/definitions/WorkflowStatus", + "description": "workflow status." + }, + "operation": { + "$ref": "#/definitions/OperationDirection", + "description": "operation direction." + }, + "steps": { + "type": "string", + "description": "workflow steps" + }, + "lastOperationId": { + "type": "string", + "description": "workflow last operation identifier." + } + } + }, + "SyncGroupProperties": { + "type": "object", + "description": "SyncGroup Properties object.", + "properties": { + "uniqueId": { + "type": "string", + "description": "Unique Id", + "readOnly": true + }, + "syncGroupStatus": { + "type": "string", + "description": "Sync group status", + "readOnly": true + } + } + }, + "RegisteredServerProperties": { + "type": "object", + "description": "RegisteredServer Properties object.", + "properties": { + "serverCertificate": { + "type": "string", + "description": "Registered Server Certificate" + }, + "agentVersion": { + "type": "string", + "description": "Registered Server Agent Version" + }, + "serverOSVersion": { + "type": "string", + "description": "Registered Server OS Version" + }, + "serverManagementErrorCode": { + "type": "integer", + "description": "Registered Server Management Error Code" + }, + "lastHeartBeat": { + "type": "string", + "description": "Registered Server last heart beat" + }, + "provisioningState": { + "type": "string", + "description": "Registered Server Provisioning State" + }, + "serverRole": { + "type": "string", + "description": "Registered Server serverRole" + }, + "clusterId": { + "type": "string", + "description": "Registered Server clusterId" + }, + "clusterName": { + "type": "string", + "description": "Registered Server clusterName" + }, + "serverId": { + "type": "string", + "description": "Registered Server serverId" + }, + "storageSyncServiceUid": { + "type": "string", + "description": "Registered Server storageSyncServiceUid" + }, + "lastWorkflowId": { + "type": "string", + "description": "Registered Server lastWorkflowId" + }, + "lastOperationName": { + "type": "string", + "description": "Resource Last Operation Name" + }, + "discoveryEndpointUri": { + "type": "string", + "description": "Resource discoveryEndpointUri" + }, + "resourceLocation": { + "type": "string", + "description": "Resource Location" + }, + "serviceLocation": { + "type": "string", + "description": "Service Location" + }, + "friendlyName": { + "type": "string", + "description": "Friendly Name" + }, + "managementEndpointUri": { + "type": "string", + "description": "Management Endpoint Uri" + }, + "monitoringConfiguration": { + "type": "string", + "description": "Monitoring Configuration" + } + } + }, + "CloudEndpointProperties": { + "type": "object", + "description": "CloudEndpoint Properties object.", + "properties": { + "storageAccountResourceId": { + "type": "string", + "description": "Storage Account Resource Id" + }, + "azureFileShareName": { + "type": "string", + "description": "Azure file share name" + }, + "storageAccountTenantId": { + "type": "string", + "description": "Storage Account Tenant Id" + }, + "partnershipId": { + "type": "string", + "description": "Partnership Id" + }, + "friendlyName": { + "type": "string", + "description": "Friendly Name" + }, + "backupEnabled": { + "type": "string", + "description": "Backup Enabled", + "readOnly": true + }, + "provisioningState": { + "type": "string", + "description": "CloudEndpoint Provisioning State" + }, + "lastWorkflowId": { + "type": "string", + "description": "CloudEndpoint lastWorkflowId" + }, + "lastOperationName": { + "type": "string", + "description": "Resource Last Operation Name" + } + } + }, + "ServerEndpointUpdateProperties": { + "type": "object", + "description": "ServerEndpoint Update Properties object.", + "properties": { + "cloudTiering": { + "$ref": "#/definitions/FeatureStatus", + "description": "Cloud Tiering." + }, + "volumeFreeSpacePercent": { + "type": "integer", + "minimum": 0, + "maximum": 100, + "description": "Level of free space to be maintained by Cloud Tiering if it is enabled." + }, + "tierFilesOlderThanDays": { + "type": "integer", + "minimum": 0, + "maximum": 2147483647, + "description": "Tier files older than days." + }, + "offlineDataTransfer": { + "$ref": "#/definitions/FeatureStatus", + "description": "Offline data transfer" + }, + "offlineDataTransferShareName": { + "type": "string", + "description": "Offline data transfer share name" + } + } + }, + "ServerEndpointProperties": { + "type": "object", + "description": "ServerEndpoint Properties object.", + "properties": { + "serverLocalPath": { + "$ref": "#/definitions/PhysicalPath", + "description": "Server Local path." + }, + "cloudTiering": { + "$ref": "#/definitions/FeatureStatus", + "description": "Cloud Tiering." + }, + "volumeFreeSpacePercent": { + "type": "integer", + "minimum": 0, + "maximum": 100, + "description": "Level of free space to be maintained by Cloud Tiering if it is enabled." + }, + "tierFilesOlderThanDays": { + "type": "integer", + "minimum": 0, + "maximum": 2147483647, + "description": "Tier files older than days." + }, + "friendlyName": { + "type": "string", + "description": "Friendly Name" + }, + "serverResourceId": { + "$ref": "#/definitions/ResourceId", + "description": "Server Resource Id." + }, + "provisioningState": { + "type": "string", + "description": "ServerEndpoint Provisioning State", + "readOnly": true + }, + "lastWorkflowId": { + "type": "string", + "description": "ServerEndpoint lastWorkflowId", + "readOnly": true + }, + "lastOperationName": { + "type": "string", + "description": "Resource Last Operation Name", + "readOnly": true + }, + "syncStatus": { + "type": "object", + "$ref": "#/definitions/ServerEndpointSyncStatus", + "description": "Server Endpoint sync status", + "readOnly": true + }, + "offlineDataTransfer": { + "$ref": "#/definitions/FeatureStatus", + "description": "Offline data transfer" + }, + "offlineDataTransferStorageAccountResourceId": { + "type": "string", + "description": "Offline data transfer storage account resource ID", + "readOnly": true + }, + "offlineDataTransferStorageAccountTenantId": { + "type": "string", + "description": "Offline data transfer storage account tenant ID", + "readOnly": true + }, + "offlineDataTransferShareName": { + "type": "string", + "description": "Offline data transfer share name" + }, + "cloudTieringStatus": { + "type": "object", + "$ref": "#/definitions/ServerEndpointCloudTieringStatus", + "description": "Cloud tiering status. Only populated if cloud tiering is enabled.", + "readOnly": true + }, + "recallStatus": { + "type": "object", + "$ref": "#/definitions/ServerEndpointRecallStatus", + "description": "Recall status. Only populated if cloud tiering is enabled.", + "readOnly": true + } + } + }, + "ServerEndpointSyncStatus": { + "type": "object", + "description": "Server Endpoint sync status", + "properties": { + "downloadHealth": { + "$ref": "#/definitions/ServerEndpointSyncHealthState", + "description": "Download Health Status.", + "readOnly": true + }, + "uploadHealth": { + "$ref": "#/definitions/ServerEndpointSyncHealthState", + "description": "Upload Health Status.", + "readOnly": true + }, + "combinedHealth": { + "$ref": "#/definitions/ServerEndpointSyncHealthState", + "description": "Combined Health Status.", + "readOnly": true + }, + "syncActivity": { + "$ref": "#/definitions/ServerEndpointSyncActivityState", + "description": "Sync activity", + "readOnly": true + }, + "totalPersistentFilesNotSyncingCount": { + "type": "integer", + "format": "int64", + "minimum": 0, + "description": "Total count of persistent files not syncing (combined upload + download).", + "readOnly": true + }, + "lastUpdatedTimestamp": { + "type": "string", + "format": "date-time", + "description": "Last Updated Timestamp", + "readOnly": true + }, + "uploadStatus": { + "$ref": "#/definitions/ServerEndpointSyncSessionStatus", + "description": "Upload Status", + "readOnly": true + }, + "downloadStatus": { + "$ref": "#/definitions/ServerEndpointSyncSessionStatus", + "description": "Download Status", + "readOnly": true + }, + "uploadActivity": { + "$ref": "#/definitions/ServerEndpointSyncActivityStatus", + "description": "Upload sync activity", + "readOnly": true + }, + "downloadActivity": { + "$ref": "#/definitions/ServerEndpointSyncActivityStatus", + "description": "Download sync activity", + "readOnly": true + }, + "offlineDataTransferStatus": { + "$ref": "#/definitions/ServerEndpointOfflineDataTransferState", + "description": "Offline Data Transfer State", + "readOnly": true + } + } + }, + "ServerEndpointSyncSessionStatus": { + "type": "object", + "description": "Sync Session status object.", + "properties": { + "lastSyncResult": { + "type": "integer", + "format": "int32", + "description": "Last sync result (HResult)", + "readOnly": true + }, + "lastSyncTimestamp": { + "type": "string", + "format": "date-time", + "description": "Last sync timestamp", + "readOnly": true + }, + "lastSyncSuccessTimestamp": { + "type": "string", + "format": "date-time", + "description": "Last sync success timestamp", + "readOnly": true + }, + "lastSyncPerItemErrorCount": { + "type": "integer", + "format": "int64", + "minimum": 0, + "description": "Last sync per item error count.", + "readOnly": true + }, + "persistentFilesNotSyncingCount": { + "type": "integer", + "format": "int64", + "minimum": 0, + "description": "Count of persistent files not syncing.", + "readOnly": true + }, + "transientFilesNotSyncingCount": { + "type": "integer", + "format": "int64", + "minimum": 0, + "description": "Count of transient files not syncing.", + "readOnly": true + }, + "filesNotSyncingErrors": { + "type": "array", + "items": { + "$ref": "#/definitions/ServerEndpointFilesNotSyncingError" + }, + "description": "Array of per-item errors coming from the last sync session.", + "readOnly": true + } + } + }, + "ServerEndpointSyncActivityStatus": { + "type": "object", + "description": "Sync Session status object.", + "properties": { + "timestamp": { + "type": "string", + "format": "date-time", + "description": "Timestamp when properties were updated", + "readOnly": true + }, + "perItemErrorCount": { + "type": "integer", + "format": "int64", + "minimum": 0, + "description": "Per item error count", + "readOnly": true + }, + "appliedItemCount": { + "type": "integer", + "format": "int64", + "minimum": 0, + "description": "Applied item count.", + "readOnly": true + }, + "totalItemCount": { + "type": "integer", + "format": "int64", + "minimum": 0, + "description": "Total item count (if available)", + "readOnly": true + }, + "appliedBytes": { + "type": "integer", + "format": "int64", + "minimum": 0, + "description": "Applied bytes", + "readOnly": true + }, + "totalBytes": { + "type": "integer", + "format": "int64", + "minimum": 0, + "description": "Total bytes (if available)", + "readOnly": true + } + } + }, + "ServerEndpointFilesNotSyncingError": { + "type": "object", + "description": "Files not syncing error object", + "properties": { + "errorCode": { + "type": "integer", + "format": "int32", + "description": "Error code (HResult)", + "readOnly": true + }, + "persistentCount": { + "type": "integer", + "format": "int64", + "minimum": 0, + "description": "Count of persistent files not syncing with the specified error code", + "readOnly": true + }, + "transientCount": { + "type": "integer", + "format": "int64", + "minimum": 0, + "description": "Count of transient files not syncing with the specified error code", + "readOnly": true + } + } + }, + "PhysicalPath": { + "type": "string", + "description": "Server folder used for data synchronization" + }, + "ResourceId": { + "type": "string", + "description": "Arm resource identifier." + }, + "TagsObject": { + "type": "object", + "description": "Tags object." + }, + "FeatureStatus": { + "type": "string", + "description": "Type of the Feature Status", + "enum": [ + "on", + "off" + ] + }, + "ServerEndpointSyncHealthState": { + "type": "string", + "description": "Type of the sync health state", + "enum": [ + "Healthy", + "Error", + "SyncBlockedForRestore", + "SyncBlockedForChangeDetectionPostRestore", + "NoActivity" + ] + }, + "ServerEndpointSyncActivityState": { + "type": "string", + "description": "Type of the sync activity state", + "enum": [ + "Upload", + "Download", + "UploadAndDownload" + ] + }, + "ServerEndpointOfflineDataTransferState": { + "type": "string", + "description": "Type of the Health state", + "enum": [ + "InProgress", + "Stopping", + "NotRunning", + "Complete" + ] + }, + "WorkflowStatus": { + "type": "string", + "description": "Type of the Workflow Status", + "enum": [ + "active", + "expired", + "succeeded", + "aborted", + "failed" + ] + }, + "OperationDirection": { + "type": "string", + "description": "Type of the Operation Direction", + "enum": [ + "do", + "undo", + "cancel" + ] + }, + "ProgressType": { + "type": "string", + "description": "Type of the ProgressType", + "enum": [ + "none", + "initialize", + "download", + "upload", + "recall" + ] + }, + "OperationStatus": { + "type": "object", + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Operation Id" + }, + "status": { + "readOnly": true, + "type": "string", + "description": "Operation status" + }, + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "Start time of the operation" + }, + "endTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "End time of the operation" + }, + "error": { + "readOnly": true, + "$ref": "#/definitions/StorageSyncApiError", + "description": "Error details." + } + }, + "description": "Operation status object" + }, + "ServerEndpointCloudTieringStatus": { + "type": "object", + "description": "Server endpoint cloud tiering status object.", + "properties": { + "lastUpdatedTimestamp": { + "type": "string", + "format": "date-time", + "description": "Last updated timestamp", + "readOnly": true + }, + "health": { + "$ref": "#/definitions/ServerEndpointCloudTieringHealthState", + "description": "Cloud tiering health state.", + "readOnly": true + }, + "healthLastUpdatedTimestamp": { + "type": "string", + "format": "date-time", + "description": "The last updated timestamp of health state", + "readOnly": true + }, + "lastCloudTieringResult": { + "type": "integer", + "format": "int32", + "description": "Last cloud tiering result (HResult)", + "readOnly": true + }, + "lastSuccessTimestamp": { + "type": "string", + "format": "date-time", + "description": "Last cloud tiering success timestamp", + "readOnly": true + }, + "spaceSavings": { + "$ref": "#/definitions/CloudTieringSpaceSavings", + "description": "Information regarding how much local space cloud tiering is saving.", + "readOnly": true + }, + "cachePerformance": { + "$ref": "#/definitions/CloudTieringCachePerformance", + "description": "Information regarding how well the local cache on the server is performing.", + "readOnly": true + }, + "filesNotTiering": { + "$ref": "#/definitions/CloudTieringFilesNotTiering", + "description": "Information regarding files that failed to be tiered", + "readOnly": true + }, + "volumeFreeSpacePolicyStatus": { + "$ref": "#/definitions/CloudTieringVolumeFreeSpacePolicyStatus", + "description": "Status of the volume free space policy", + "readOnly": true + }, + "datePolicyStatus": { + "$ref": "#/definitions/CloudTieringDatePolicyStatus", + "description": "Status of the date policy", + "readOnly": true + } + } + }, + "ServerEndpointCloudTieringHealthState": { + "type": "string", + "description": "Type of the cloud tiering health state", + "enum": [ + "Healthy", + "Error" + ] + }, + "CloudTieringSpaceSavings": { + "type": "object", + "description": "Server endpoint cloud tiering status object.", + "properties": { + "lastUpdatedTimestamp": { + "type": "string", + "format": "date-time", + "description": "Last updated timestamp", + "readOnly": true + }, + "volumeSizeBytes": { + "type": "integer", + "format": "int64", + "description": "Volume size", + "readOnly": true, + "minimum": 0 + }, + "totalSizeCloudBytes": { + "type": "integer", + "format": "int64", + "description": "Total size of content in the azure file share", + "readOnly": true, + "minimum": 0 + }, + "cachedSizeBytes": { + "type": "integer", + "format": "int64", + "description": "Cached content size on the server", + "readOnly": true, + "minimum": 0 + }, + "spaceSavingsPercent": { + "type": "integer", + "format": "int32", + "description": "Percentage of cached size over total size", + "readOnly": true, + "minimum": 0, + "maximum": 100 + }, + "spaceSavingsBytes": { + "type": "integer", + "format": "int64", + "description": "Count of bytes saved on the server", + "readOnly": true, + "minimum": 0 + } + } + }, + "CloudTieringCachePerformance": { + "type": "object", + "description": "Server endpoint cloud tiering status object.", + "properties": { + "lastUpdatedTimestamp": { + "type": "string", + "format": "date-time", + "description": "Last updated timestamp", + "readOnly": true + }, + "cacheHitBytes": { + "type": "integer", + "format": "int64", + "description": "Count of bytes that were served from the local server", + "readOnly": true, + "minimum": 0 + }, + "cacheMissBytes": { + "type": "integer", + "format": "int64", + "description": "Count of bytes that were served from the cloud", + "readOnly": true, + "minimum": 0 + }, + "cacheHitBytesPercent": { + "type": "integer", + "format": "int32", + "description": "Percentage of total bytes (hit + miss) that were served from the local server", + "readOnly": true, + "minimum": 0, + "maximum": 100 + } + } + }, + "CloudTieringFilesNotTiering": { + "type": "object", + "description": "Server endpoint cloud tiering status object.", + "properties": { + "lastUpdatedTimestamp": { + "type": "string", + "format": "date-time", + "description": "Last updated timestamp", + "readOnly": true + }, + "totalFileCount": { + "type": "integer", + "format": "int64", + "description": "Last cloud tiering result (HResult)", + "readOnly": true, + "minimum": 0 + }, + "errors": { + "type": "array", + "items": { + "$ref": "#/definitions/FilesNotTieringError" + }, + "description": "Array of tiering errors", + "readOnly": true + } + } + }, + "FilesNotTieringError": { + "type": "object", + "description": "Files not tiering error object", + "properties": { + "errorCode": { + "type": "integer", + "format": "int32", + "description": "Error code (HResult)", + "readOnly": true + }, + "fileCount": { + "type": "integer", + "format": "int64", + "minimum": 0, + "description": "Count of files with this error", + "readOnly": true + } + } + }, + "CloudTieringVolumeFreeSpacePolicyStatus": { + "type": "object", + "description": "Status of the volume free space policy", + "properties": { + "lastUpdatedTimestamp": { + "type": "string", + "format": "date-time", + "description": "Last updated timestamp", + "readOnly": true + }, + "effectiveVolumeFreeSpacePolicy": { + "type": "integer", + "format": "int32", + "description": "In the case where multiple server endpoints are present in a volume, an effective free space policy is applied.", + "readOnly": true, + "minimum": 0, + "maximum": 100 + }, + "currentVolumeFreeSpacePercent": { + "type": "integer", + "format": "int32", + "description": "Current volume free space percentage.", + "readOnly": true, + "minimum": 0, + "maximum": 100 + } + } + }, + "CloudTieringDatePolicyStatus": { + "type": "object", + "description": "Status of the date policy", + "properties": { + "lastUpdatedTimestamp": { + "type": "string", + "format": "date-time", + "description": "Last updated timestamp", + "readOnly": true + }, + "tieredFilesMostRecentAccessTimestamp": { + "type": "string", + "format": "date-time", + "description": "Most recent access time of tiered files", + "readOnly": true + } + } + }, + "ServerEndpointRecallStatus": { + "type": "object", + "description": "Server endpoint recall status object.", + "properties": { + "lastUpdatedTimestamp": { + "type": "string", + "format": "date-time", + "description": "Last updated timestamp", + "readOnly": true + }, + "totalRecallErrorsCount": { + "type": "integer", + "format": "int64", + "minimum": 0, + "description": "Total count of recall errors.", + "readOnly": true + }, + "recallErrors": { + "type": "array", + "items": { + "$ref": "#/definitions/ServerEndpointRecallError" + }, + "description": "Array of recall errors", + "readOnly": true + } + } + }, + "ServerEndpointRecallError": { + "type": "object", + "description": "Server endpoint recall error object", + "properties": { + "errorCode": { + "type": "integer", + "format": "int32", + "description": "Error code (HResult)", + "readOnly": true + }, + "count": { + "type": "integer", + "format": "int64", + "minimum": 0, + "description": "Count of occurences of the error", + "readOnly": true + } + } + } + }, + "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" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/storagesync/resource-manager/readme.az.md b/specification/storagesync/resource-manager/readme.az.md new file mode 100644 index 000000000000..eaaa83e38207 --- /dev/null +++ b/specification/storagesync/resource-manager/readme.az.md @@ -0,0 +1,25 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +``` yaml $(az) +az: + extensions: storagesync + namespace: azure.mgmt.storagesync + package-name: azure-mgmt-storagesync +az-output-folder: $(azure-cli-extension-folder)/src/storagesync +python-sdk-output-folder: "$(az-output-folder)/azext_storagesync/vendored_sdks/storagesync" + +#cli: +# cli-directive: +# directive on operationGroup +# - select: 'operationGroup' +# where: +# operationGroup: 'operations' +# hidden: true +# - where: +# parameter: 'old_parameter_name' +# required: true +# name: 'new_name' + +``` diff --git a/specification/storagesync/resource-manager/readme.cli.md b/specification/storagesync/resource-manager/readme.cli.md new file mode 100644 index 000000000000..c6e953e1d8dd --- /dev/null +++ b/specification/storagesync/resource-manager/readme.cli.md @@ -0,0 +1,49 @@ +## CLI + +These settings apply only when `--cli` is specified on the command line. + +``` yaml $(cli) +cli: + cli-name: storagesync + package-name: azure-mgmt-storagesync + namespace: azure.mgmt.storagesync + test-scenario: + - name: StorageSyncServices_Create + - name: SyncGroups_Create + - name: RegisteredServers_Create + - name: CloudEndpoints_Create + - name: ServerEndpoints_Create + - name: ServerEndpoints_Get + - name: CloudEndpoints_Get + - name: ServerEndpoints_ListBySyncGroup + - name: CloudEndpoints_ListBySyncGroup + - name: RegisteredServers_Get + - name: Workflows_Get + - name: SyncGroups_Get + - name: Workflows_Get + - name: RegisteredServers_ListByStorageSyncService + - name: SyncGroups_ListByStorageSyncService + - name: Workflows_ListByStorageSyncService + - name: StorageSyncServices_Get + - name: StorageSyncServices_ListByResourceGroup + - name: StorageSyncServices_ListBySubscription + - name: Operations_List + - name: CloudEndpoints_TriggerChangeDetection + - name: CloudEndpoints_restoreheartbeat + - name: ServerEndpoints_recallAction + - name: CloudEndpoints_PostRestore + - name: CloudEndpoints_PreRestore + - name: CloudEndpoints_PostBackup + - name: CloudEndpoints_PreBackup + - name: ServerEndpoints_Update + - name: RegisteredServers_triggerRollover + - name: Workflows_Abort + - name: StorageSyncServices_Update + - name: StorageSyncServiceCheckNameAvailability_AlreadyExists + - name: StorageSyncServiceCheckNameAvailability_Available + - name: ServerEndpoints_Delete + - name: CloudEndpoints_Delete + - name: RegisteredServers_Delete + - name: SyncGroups_Delete + - name: StorageSyncServices_Delete +``` \ No newline at end of file diff --git a/specification/storagesync/resource-manager/readme.go.md b/specification/storagesync/resource-manager/readme.go.md index bb2e6da35f00..f3e11dcb6897 100644 --- a/specification/storagesync/resource-manager/readme.go.md +++ b/specification/storagesync/resource-manager/readme.go.md @@ -13,6 +13,7 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2019-10-01 - tag: package-2019-06-01 - tag: package-2019-02-01 - tag: package-2018-10-01 @@ -20,6 +21,15 @@ batch: - tag: package-2018-04-02 ``` +### Tag: package-2019-10-01 and go + +These settings apply only when `--tag=package-2019-10-01 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2019-10-01' && $(go) +output-folder: $(go-sdk-folder)/services/$(namespace)/mgmt/2019-10-01/$(namespace) +``` + ### Tag: package-2019-06-01 and go These settings apply only when `--tag=package-2019-06-01 --go` is specified on the command line. diff --git a/specification/storagesync/resource-manager/readme.md b/specification/storagesync/resource-manager/readme.md index cfec963cd455..852b278f6e0b 100644 --- a/specification/storagesync/resource-manager/readme.md +++ b/specification/storagesync/resource-manager/readme.md @@ -24,25 +24,34 @@ To see additional help and options, run: These are the global settings for the Storage Sync API. -```yaml +``` yaml openapi-type: arm -tag: package-2019-06-01 +tag: package-2019-10-01 ``` +### Tag: package-2019-10-01 + +These settings apply only when `--tag=package-2019-10-01` is specified on the command line. + +```yaml $(tag) == 'package-2019-10-01' +input-file: + - Microsoft.StorageSync/stable/2019-10-01/storagesync.json +``` ### Tag: package-2019-06-01 These settings apply only when `--tag=package-2019-06-01` is specified on the command line. -```yaml $(tag) == 'package-2019-06-01' +``` yaml $(tag) == 'package-2019-06-01' input-file: - Microsoft.StorageSync/stable/2019-06-01/storagesync.json ``` + ### Tag: package-2019-03-01 These settings apply only when `--tag=package-2019-03-01` is specified on the command line. -```yaml $(tag) == 'package-2019-03-01' +``` yaml $(tag) == 'package-2019-03-01' input-file: - Microsoft.StorageSync/stable/2019-03-01/storagesync.json ``` @@ -51,7 +60,7 @@ input-file: These settings apply only when `--tag=package-2019-02-01` is specified on the command line. -```yaml $(tag) == 'package-2019-02-01' +``` yaml $(tag) == 'package-2019-02-01' input-file: - Microsoft.StorageSync/stable/2019-02-01/storagesync.json ``` @@ -60,7 +69,7 @@ input-file: These settings apply only when `--tag=package-2018-07-01` is specified on the command line. -```yaml $(tag) == 'package-2018-10-01' +``` yaml $(tag) == 'package-2018-10-01' input-file: - Microsoft.StorageSync/stable/2018-10-01/storagesync.json ``` @@ -69,7 +78,7 @@ input-file: These settings apply only when `--tag=package-2018-07-01` is specified on the command line. -```yaml $(tag) == 'package-2018-07-01' +``` yaml $(tag) == 'package-2018-07-01' input-file: - Microsoft.StorageSync/stable/2018-07-01/storagesync.json ``` @@ -78,7 +87,7 @@ input-file: These settings apply only when `--tag=package-2018-04-02` is specified on the command line. -```yaml $(tag) == 'package-2018-04-02' +``` yaml $(tag) == 'package-2018-04-02' input-file: - Microsoft.StorageSync/stable/2018-04-02/storagesync.json ``` @@ -87,7 +96,7 @@ input-file: These settings apply only when `--tag=package-2017-06-05-preview` is specified on the command line. -```yaml $(tag) == 'package-2017-06-05-preview' +``` yaml $(tag) == 'package-2017-06-05-preview' input-file: - Microsoft.StorageSync/preview/2017-06-05-preview/storagesync.json ``` @@ -101,7 +110,7 @@ input-file: This section describes what SDK should be generated by the automatic system. This is not used by Autorest itself. -```yaml $(swagger-to-sdk) +``` yaml $(swagger-to-sdk) swagger-to-sdk: - repo: azure-sdk-for-net - repo: azure-sdk-for-python @@ -109,6 +118,7 @@ swagger-to-sdk: - repo: azure-sdk-for-go - repo: azure-sdk-for-js - repo: azure-sdk-for-node + - repo: azure-cli-extensions ``` ## C# @@ -116,7 +126,7 @@ swagger-to-sdk: These settings apply only when `--csharp` is specified on the command line. Please also specify `--csharp-sdks-folder=`. -```yaml $(csharp) +``` yaml $(csharp) csharp: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION @@ -132,7 +142,7 @@ 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 $(python) python-mode: create python: azure-arm: true @@ -144,13 +154,13 @@ python: clear-output-folder: true ``` -```yaml $(python) && $(python-mode) == 'update' +``` yaml $(python) && $(python-mode) == 'update' python: no-namespace-folders: true output-folder: $(python-sdks-folder)/storage/azure-mgmt-storagesync/azure/mgmt/storagesync ``` -```yaml $(python) && $(python-mode) == 'create' +``` yaml $(python) && $(python-mode) == 'create' python: basic-setup-py: true output-folder: $(python-sdks-folder)/storage/azure-mgmt-storagesync @@ -170,12 +180,13 @@ AutoRest V3 generators require the use of `--tag=all-api-versions` to select api This block is updated by an automatic script. Edits may be lost! -```yaml $(tag) == 'all-api-versions' /* autogenerated */ +``` 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/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 @@ -189,7 +200,7 @@ input-file: 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' +``` 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.python.md b/specification/storagesync/resource-manager/readme.python.md new file mode 100644 index 000000000000..1ce50e5e3e6f --- /dev/null +++ b/specification/storagesync/resource-manager/readme.python.md @@ -0,0 +1,25 @@ +## 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 + namespace: azure.mgmt.storagesync + package-name: azure-mgmt-storagesync + package-version: 2019-06-01 + clear-output-folder: true +``` + +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/storagesync/azure-mgmt-storagesync/azure/mgmt/storagesync +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/storagesync/azure-mgmt-storagesync +``` \ No newline at end of file diff --git a/specification/subscription/resource-manager/Microsoft.Subscription/preview/2019-10-01-preview/examples/createLegacySubscription.json b/specification/subscription/resource-manager/Microsoft.Subscription/preview/2019-10-01-preview/examples/createLegacySubscription.json index e0e193269f79..65ad499728a9 100644 --- a/specification/subscription/resource-manager/Microsoft.Subscription/preview/2019-10-01-preview/examples/createLegacySubscription.json +++ b/specification/subscription/resource-manager/Microsoft.Subscription/preview/2019-10-01-preview/examples/createLegacySubscription.json @@ -12,13 +12,7 @@ { "objectId": "67439a9e-8519-4016-a630-f5f805eba567" } - ], - "additionalParameters": { - "customData": { - "key1": "value1", - "key2": true - } - } + ] } }, "responses": { diff --git a/specification/subscription/resource-manager/Microsoft.Subscription/preview/2019-10-01-preview/examples/createSubscription.json b/specification/subscription/resource-manager/Microsoft.Subscription/preview/2019-10-01-preview/examples/createSubscription.json index 366082444c31..84f6fd17ba23 100644 --- a/specification/subscription/resource-manager/Microsoft.Subscription/preview/2019-10-01-preview/examples/createSubscription.json +++ b/specification/subscription/resource-manager/Microsoft.Subscription/preview/2019-10-01-preview/examples/createSubscription.json @@ -6,7 +6,6 @@ "api-version": "2019-10-01-preview", "body": { "displayName": "Contoso MCA subscription", - "billingProfileId": "/providers/Microsoft.Billing/billingAccounts/0aa27f2b-ec7f-5a65-71f6-a5ff0897bd55:ae0dae1e-de9a-41f6-8257-76b055d98372_2019-05-31/billingProfiles/27VR-HDWX-BG7-TGB", "skuId": "0001", "costCenter": "135366376", "owner": { diff --git a/specification/subscription/resource-manager/Microsoft.Subscription/preview/2019-10-01-preview/subscriptions.json b/specification/subscription/resource-manager/Microsoft.Subscription/preview/2019-10-01-preview/subscriptions.json index 7d9d0a2b8f94..a065c890aa85 100644 --- a/specification/subscription/resource-manager/Microsoft.Subscription/preview/2019-10-01-preview/subscriptions.json +++ b/specification/subscription/resource-manager/Microsoft.Subscription/preview/2019-10-01-preview/subscriptions.json @@ -542,13 +542,6 @@ "MS-AZR-0017P", "MS-AZR-0148P" ] - }, - "additionalParameters": { - "description": "Additional, untyped parameters to support custom subscription creation scenarios.", - "type": "object", - "additionalProperties": { - "type": "object" - } } } }, @@ -556,7 +549,6 @@ "description": "The parameters required to create a new subscription.", "required": [ "displayName", - "billingProfileId", "skuId" ], "properties": { @@ -564,10 +556,6 @@ "description": "The friendly name of the subscription.", "type": "string" }, - "billingProfileId": { - "description": "The ARM ID of the billing profile for which you want to create the subscription.", - "type": "string" - }, "skuId": { "description": "The SKU ID of the Azure plan. Azure plan determines the pricing and service-level agreement of the subscription. Use 001 for Microsoft Azure Plan and 002 for Microsoft Azure Plan for DevTest.", "type": "string" @@ -583,13 +571,6 @@ "managementGroupId": { "description": "The identifier of the management group to which this subscription will be associated.", "type": "string" - }, - "additionalParameters": { - "description": "Additional, untyped parameters to support custom subscription creation scenarios.", - "type": "object", - "additionalProperties": { - "type": "object" - } } } }, @@ -611,10 +592,6 @@ "resellerId": { "description": "Reseller ID, basically MPN Id.", "type": "string" - }, - "serviceProviderId": { - "description": "Service provider ID, basically MPN Id.", - "type": "string" } } } diff --git a/specification/subscription/resource-manager/Microsoft.Subscription/stable/2020-01-01/examples/cancelSubscription.json b/specification/subscription/resource-manager/Microsoft.Subscription/stable/2020-01-01/examples/cancelSubscription.json new file mode 100644 index 000000000000..38acbbb4637a --- /dev/null +++ b/specification/subscription/resource-manager/Microsoft.Subscription/stable/2020-01-01/examples/cancelSubscription.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "83aa47df-e3e9-49ff-877b-94304bf3d3ad", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "value": "83aa47df-e3e9-49ff-877b-94304bf3d3ad" + } + } + } +} diff --git a/specification/subscription/resource-manager/Microsoft.Subscription/stable/2020-01-01/examples/createCspSubscription.json b/specification/subscription/resource-manager/Microsoft.Subscription/stable/2020-01-01/examples/createCspSubscription.json new file mode 100644 index 000000000000..b8e1ddd184d8 --- /dev/null +++ b/specification/subscription/resource-manager/Microsoft.Subscription/stable/2020-01-01/examples/createCspSubscription.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "billingAccountName": "2bc54a6f-8d8a-5be1-5bff-bb4f285f512b:11a72812-d9a4-446e-9a1e-70c8bcadf5c0_2019-05-31", + "customerName": "e33ba30d-3718-4b15-bfaa-5627a57cda6f", + "api-version": "2020-01-01", + "body": { + "displayName": "Contoso MCA subscription", + "skuId": "0001" + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.Subscription/subscriptionOperations/MzcwYzI3MDItNjA1MC00NTZkLTgyMTgtZjM0NDcyMjkwMTY0?api-version=2019-10-01-preview", + "Retry-After": 8 + } + }, + "200": { + "body": { + "subscriptionLink": "/subscriptions/d0d6ee57-6530-4fca-93a6-b755a070be35" + } + } + } +} diff --git a/specification/subscription/resource-manager/Microsoft.Subscription/stable/2020-01-01/examples/createLegacySubscription.json b/specification/subscription/resource-manager/Microsoft.Subscription/stable/2020-01-01/examples/createLegacySubscription.json new file mode 100644 index 000000000000..fdf321747b3f --- /dev/null +++ b/specification/subscription/resource-manager/Microsoft.Subscription/stable/2020-01-01/examples/createLegacySubscription.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "enrollmentAccountName": "73f8ab6e-cfa0-42be-b886-be6e77c2980c", + "api-version": "2020-01-01", + "body": { + "offerType": "MS-AZR-0017P", + "displayName": "Test Ea Azure Sub", + "owners": [ + { + "objectId": "973034ff-acb7-409c-b731-e789672c7b31" + }, + { + "objectId": "67439a9e-8519-4016-a630-f5f805eba567" + } + ] + } + }, + "responses": { + "202": { + "headers": { + "Location": "/providers/Microsoft.Subscription/subscriptionOperations/aeb76128-ebde-4f5a-a9ed-e7bbf2dbc994?api-version=2019-10-01-preview", + "Retry-After": "60" + } + }, + "200": { + "body": { + "subscriptionLink": "/subscriptions/c03acf6e-5295-44c2-92d3-cb1daa4c701c" + } + } + } +} diff --git a/specification/subscription/resource-manager/Microsoft.Subscription/stable/2020-01-01/examples/createSubscription.json b/specification/subscription/resource-manager/Microsoft.Subscription/stable/2020-01-01/examples/createSubscription.json new file mode 100644 index 000000000000..386ca4eb02f0 --- /dev/null +++ b/specification/subscription/resource-manager/Microsoft.Subscription/stable/2020-01-01/examples/createSubscription.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "billingAccountName": "0aa27f2b-ec7f-5a65-71f6-a5ff0897bd55:ae0dae1e-de9a-41f6-8257-76b055d98372_2019-05-31", + "billingProfileName": "27VR-HDWX-BG7-TGB", + "invoiceSectionName": "JGF7-NSBG-PJA-TGB", + "api-version": "2020-01-01", + "body": { + "displayName": "Contoso MCA subscription", + "skuId": "0001", + "costCenter": "135366376", + "owner": { + "objectId": "973034ff-acb7-409c-b731-e789672c7b32" + } + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/providers/Microsoft.Subscription/subscriptionOperations/ODdmYTU0MDktODc5YS00ZTEzLTg2MWItNTQ4ZjYxNzBlOTQw?api-version=2020-01-01", + "Retry-After": 8 + } + }, + "200": { + "body": { + "subscriptionLink": "/subscriptions/d0d6ee57-6530-4fca-93a6-b755a070be35" + } + } + } +} diff --git a/specification/subscription/resource-manager/Microsoft.Subscription/stable/2020-01-01/examples/enableSubscription.json b/specification/subscription/resource-manager/Microsoft.Subscription/stable/2020-01-01/examples/enableSubscription.json new file mode 100644 index 000000000000..e2d81482f487 --- /dev/null +++ b/specification/subscription/resource-manager/Microsoft.Subscription/stable/2020-01-01/examples/enableSubscription.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "7948bcee-488c-47ce-941c-38e20ede803d", + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "value": "7948bcee-488c-47ce-941c-38e20ede803d" + } + } + } +} diff --git a/specification/subscription/resource-manager/Microsoft.Subscription/stable/2020-01-01/examples/getOperations.json b/specification/subscription/resource-manager/Microsoft.Subscription/stable/2020-01-01/examples/getOperations.json new file mode 100644 index 000000000000..b1d7c5ff53bc --- /dev/null +++ b/specification/subscription/resource-manager/Microsoft.Subscription/stable/2020-01-01/examples/getOperations.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2020-01-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Subscription/createOperation/action", + "display": { + "provider": "Microsoft Subscription", + "resource": "Resources", + "operation": "Create a subscription" + } + } + ] + } + } + } +} diff --git a/specification/subscription/resource-manager/Microsoft.Subscription/stable/2020-01-01/examples/getSubscriptionOperation.json b/specification/subscription/resource-manager/Microsoft.Subscription/stable/2020-01-01/examples/getSubscriptionOperation.json new file mode 100644 index 000000000000..a257694de003 --- /dev/null +++ b/specification/subscription/resource-manager/Microsoft.Subscription/stable/2020-01-01/examples/getSubscriptionOperation.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "operationId": "e4b8d068-f574-462a-a76f-6fa0afc613c9", + "api-version": "2020-01-01" + }, + "responses": { + "202": { + "headers": { + "Location": "/providers/Microsoft.Subscription/subscriptionOperations/e4b8d068-f574-462a-a76f-6fa0afc613c9?api-version=2020-01-01", + "Retry-After": 8 + } + }, + "200": { + "body": { + "subscriptionLink": "/subscriptions/4df8d5c2-1b7e-4dd5-bc61-640704bde633" + } + } + } +} diff --git a/specification/subscription/resource-manager/Microsoft.Subscription/stable/2020-01-01/examples/renameSubscription.json b/specification/subscription/resource-manager/Microsoft.Subscription/stable/2020-01-01/examples/renameSubscription.json new file mode 100644 index 000000000000..b20f7efe943d --- /dev/null +++ b/specification/subscription/resource-manager/Microsoft.Subscription/stable/2020-01-01/examples/renameSubscription.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "83aa47df-e3e9-49ff-877b-94304bf3d3ad", + "api-version": "2020-01-01", + "body": { + "SubscriptionName": "Test Sub" + } + }, + "responses": { + "200": { + "body": { + "value": "83aa47df-e3e9-49ff-877b-94304bf3d3ad" + } + } + } +} diff --git a/specification/subscription/resource-manager/Microsoft.Subscription/stable/2020-01-01/subscriptions.json b/specification/subscription/resource-manager/Microsoft.Subscription/stable/2020-01-01/subscriptions.json new file mode 100644 index 000000000000..6bc465c67599 --- /dev/null +++ b/specification/subscription/resource-manager/Microsoft.Subscription/stable/2020-01-01/subscriptions.json @@ -0,0 +1,640 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-01-01", + "title": "SubscriptionClient", + "description": "Subscription client provides an interface to create and manage Azure subscriptions programmatically." + }, + "schemes": [ + "https" + ], + "host": "management.azure.com", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/providers/Microsoft.Billing/enrollmentAccounts/{enrollmentAccountName}/providers/Microsoft.Subscription/createSubscription": { + "post": { + "description": "Creates an Azure subscription", + "operationId": "Subscription_CreateSubscriptionInEnrollmentAccount", + "x-ms-examples": { + "createSubscription": { + "$ref": "./examples/createLegacySubscription.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "200": { + "description": "Normal response for a successful query. The response body will contain the data that matches the filters specified in the query parameters.", + "schema": { + "$ref": "#/definitions/SubscriptionCreationResult" + } + }, + "202": { + "description": "Accepted. Subscription creation is in progress.", + "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" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "name": "enrollmentAccountName", + "in": "path", + "description": "The name of the enrollment account to which the subscription will be billed.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "body", + "in": "body", + "description": "The subscription creation parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/SubscriptionCreationParameters" + } + } + ] + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Subscription/cancel": { + "post": { + "operationId": "Subscription_Cancel", + "x-ms-examples": { + "cancelSubscription": { + "$ref": "./examples/cancelSubscription.json" + } + }, + "description": "The operation to cancel a subscription", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CanceledSubscriptionId" + } + }, + "default": { + "description": "Describes the error if the operation is not successful.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Subscription/rename": { + "post": { + "operationId": "Subscription_Rename", + "x-ms-examples": { + "renameSubscription": { + "$ref": "./examples/renameSubscription.json" + } + }, + "description": "The operation to rename a subscription", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/subscriptionNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/RenamedSubscriptionId" + } + }, + "default": { + "description": "Describes the error if the operation is not successful.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Subscription/enable": { + "post": { + "operationId": "Subscription_Enable", + "x-ms-examples": { + "enableSubscription": { + "$ref": "./examples/enableSubscription.json" + } + }, + "description": "The operation to enable a subscription", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/EnabledSubscriptionId" + } + }, + "default": { + "description": "Describes the error if the operation is not successful.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Subscription/subscriptionOperations/{operationId}": { + "get": { + "description": "Get the status of the pending Microsoft.Subscription API operations.", + "operationId": "SubscriptionOperation_Get", + "x-ms-examples": { + "getPendingSubscriptionOperations": { + "$ref": "./examples/getSubscriptionOperation.json" + } + }, + "responses": { + "200": { + "description": "Successful completion of the asynchronous operation", + "schema": { + "$ref": "#/definitions/SubscriptionCreationResult" + } + }, + "202": { + "description": "Accepted. Subscription update is in progress.", + "headers": { + "Location": { + "description": "The URL where the status of the asynchronous operation can be checked.", + "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": "integer" + } + } + } + }, + "parameters": [ + { + "name": "operationId", + "in": "path", + "description": "The operation ID, which can be found from the Location field in the generate recommendation response header.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ] + } + }, + "/providers/Microsoft.Subscription/operations": { + "get": { + "description": "Lists all of the available Microsoft.Subscription API operations.", + "operationId": "Operations_List", + "x-ms-examples": { + "getOperations": { + "$ref": "./examples/getOperations.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/providers/Microsoft.Subscription/createSubscription": { + "post": { + "description": "The operation to create a new WebDirect or EA Azure subscription.", + "operationId": "Subscription_CreateSubscription", + "x-ms-examples": { + "createSubscription": { + "$ref": "./examples/createSubscription.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "200": { + "description": "Normal response for a successful query. The response body will contain the data that matches the filters specified in the query parameters.", + "schema": { + "$ref": "#/definitions/SubscriptionCreationResult" + } + }, + "202": { + "description": "Accepted. Subscription creation is in progress.", + "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": "integer" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "name": "billingAccountName", + "in": "path", + "description": "The name of the Microsoft Customer Agreement billing account for which you want to create the subscription.", + "required": true, + "type": "string" + }, + { + "name": "billingProfileName", + "in": "path", + "description": "The name of the billing profile in the billing account for which you want to create the subscription.", + "required": true, + "type": "string" + }, + { + "name": "invoiceSectionName", + "in": "path", + "description": "The name of the invoice section in the billing account for which you want to create the subscription.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "body", + "in": "body", + "description": "The subscription creation parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/ModernSubscriptionCreationParameters" + } + } + ] + } + }, + "/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/customers/{customerName}/providers/Microsoft.Subscription/createSubscription": { + "post": { + "description": "The operation to create a new CSP subscription.", + "operationId": "Subscription_CreateCspSubscription", + "x-ms-examples": { + "createSubscription": { + "$ref": "./examples/createCspSubscription.json" + } + }, + "x-ms-long-running-operation": true, + "responses": { + "200": { + "description": "Normal response for a successful query. The response body will contain the data that matches the filters specified in the query parameters.", + "schema": { + "$ref": "#/definitions/SubscriptionCreationResult" + } + }, + "202": { + "description": "Accepted. Subscription creation is in progress.", + "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": "integer" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "name": "billingAccountName", + "in": "path", + "description": "The name of the Microsoft Customer Agreement billing account for which you want to create the subscription.", + "required": true, + "type": "string" + }, + { + "name": "customerName", + "in": "path", + "description": "The name of the customer.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "body", + "in": "body", + "description": "The subscription creation parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/ModernCspSubscriptionCreationParameters" + } + } + ] + } + } + }, + "definitions": { + "ErrorResponse": { + "description": "Describes the format of Error response.", + "type": "object", + "properties": { + "code": { + "description": "Error code", + "type": "string" + }, + "message": { + "description": "Error message indicating why the operation failed.", + "type": "string" + } + } + }, + "CanceledSubscriptionId": { + "description": "The ID of the canceled subscription", + "properties": { + "value": { + "description": "The ID of the canceled subscription", + "type": "string", + "readOnly": true + } + } + }, + "RenamedSubscriptionId": { + "description": "The ID of the subscriptions that is being renamed", + "properties": { + "value": { + "description": "The ID of the subscriptions that is being renamed", + "type": "string", + "readOnly": true + } + } + }, + "EnabledSubscriptionId": { + "description": "The ID of the subscriptions that is being enabled", + "properties": { + "value": { + "description": "The ID of the subscriptions that is being enabled", + "type": "string", + "readOnly": true + } + } + }, + "SubscriptionName": { + "type": "object", + "description": "The new name of the subscription.", + "properties": { + "subscriptionName": { + "type": "string", + "description": "New subscription name" + } + } + }, + "OperationListResult": { + "description": "Result of the request to list 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 operations." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "Operation": { + "description": "REST API 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.Subscription", + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed: Profile, endpoint, etc.", + "type": "string" + }, + "operation": { + "description": "Operation type: Read, write, delete, etc.", + "type": "string" + } + } + } + } + }, + "AdPrincipal": { + "description": "Active Directory Principal who’ll get owner access on the new subscription.", + "properties": { + "objectId": { + "description": "Object id of the Principal", + "type": "string" + } + }, + "required": [ + "objectId" + ] + }, + "SubscriptionCreationResult": { + "description": "The created subscription object.", + "properties": { + "subscriptionLink": { + "description": "The link to the new subscription. Use this link to check the status of subscription creation operation.", + "type": "string" + } + } + }, + "SubscriptionCreationParameters": { + "description": "Subscription Creation Parameters required to create a new Azure subscription.", + "properties": { + "displayName": { + "description": "The display name of the subscription.", + "type": "string" + }, + "managementGroupId": { + "description": "The Management Group Id.", + "type": "string" + }, + "owners": { + "type": "array", + "items": { + "$ref": "#/definitions/AdPrincipal" + }, + "description": "The list of principals that should be granted Owner access on the subscription. Principals should be of type User, Service Principal or Security Group." + }, + "offerType": { + "description": "The offer type of the subscription. For example, MS-AZR-0017P (EnterpriseAgreement) and MS-AZR-0148P (EnterpriseAgreement devTest) are available. Only valid when creating a subscription in a enrollment account scope.", + "type": "string", + "x-ms-enum": { + "name": "offerType", + "modelAsString": true + }, + "enum": [ + "MS-AZR-0017P", + "MS-AZR-0148P" + ] + } + } + }, + "ModernSubscriptionCreationParameters": { + "description": "The parameters required to create a new subscription.", + "properties": { + "displayName": { + "description": "The friendly name of the subscription.", + "type": "string" + }, + "skuId": { + "description": "The SKU ID of the Azure plan. Azure plan determines the pricing and service-level agreement of the subscription. Use 001 for Microsoft Azure Plan and 002 for Microsoft Azure Plan for DevTest.", + "type": "string" + }, + "costCenter": { + "description": "If set, the cost center will show up on the Azure usage and charges file.", + "type": "string" + }, + "owner": { + "description": "If specified, the AD principal will get owner access to the subscription, along with the user who is performing the create subscription operation", + "$ref": "#/definitions/AdPrincipal" + }, + "managementGroupId": { + "description": "The identifier of the management group to which this subscription will be associated.", + "type": "string" + } + } + }, + "ModernCspSubscriptionCreationParameters": { + "description": "The parameters required to create a new CSP subscription.", + "required": [ + "displayName", + "skuId" + ], + "properties": { + "displayName": { + "description": "The friendly name of the subscription.", + "type": "string" + }, + "skuId": { + "description": "The SKU ID of the Azure plan. Azure plan determines the pricing and service-level agreement of the subscription. Use 001 for Microsoft Azure Plan and 002 for Microsoft Azure Plan for DevTest.", + "type": "string" + }, + "resellerId": { + "description": "Reseller ID, basically MPN Id.", + "type": "string" + } + } + } + }, + "parameters": { + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Version of the API to be used with the client request. Current version is 2020-01-01" + }, + "subscriptionIdParameter": { + "name": "subscriptionId", + "x-ms-parameter-location": "method", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription Id." + }, + "subscriptionNameParameter": { + "name": "body", + "x-ms-parameter-location": "method", + "in": "body", + "required": true, + "description": "Subscription Name", + "schema": { + "$ref": "#/definitions/SubscriptionName" + } + } + }, + "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" + } + } + } +} diff --git a/specification/subscription/resource-manager/readme.az.md b/specification/subscription/resource-manager/readme.az.md new file mode 100644 index 000000000000..5d350afab4b8 --- /dev/null +++ b/specification/subscription/resource-manager/readme.az.md @@ -0,0 +1,12 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +``` yaml $(az) +az: + extensions: account + package-name: azure-mgmt-subscription + namespace: azure.mgmt.subscription +az-output-folder: $(azure-cli-extension-folder)/src/account +python-sdk-output-folder: "$(az-output-folder)/azext_account/vendored_sdks/subscription" +``` diff --git a/specification/subscription/resource-manager/readme.md b/specification/subscription/resource-manager/readme.md index 8cf9e046ffb1..8aeaf4c34934 100644 --- a/specification/subscription/resource-manager/readme.md +++ b/specification/subscription/resource-manager/readme.md @@ -31,8 +31,20 @@ These are the global settings for the Subscription API. ``` yaml openapi-type: arm -tag: package-2019-03-preview +tag: package-2019-10-preview ``` + +### Tag: package-2020-01 + +These settings apply only when `--tag=package-2020-01` is specified on the command line. + +``` yaml $(tag) == 'package-2020-01' +input-file: +- Microsoft.Subscription/stable/2020-01-01/subscriptions.json +title: SubscriptionClient +description: The subscription client +``` + ### Tag: package-2019-10-preview These settings apply only when `--tag=package-2019-10-preview` is specified on the command line. @@ -108,6 +120,7 @@ swagger-to-sdk: - repo: azure-sdk-for-python - repo: azure-sdk-for-node - repo: azure-sdk-for-js + - repo: azure-cli-extensions ``` @@ -173,6 +186,7 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: + - $(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 diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CheckNameAvailabilityForSupportTicketCommunication.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CheckNameAvailabilityForSupportTicketCommunication.json index e4a8e69703d9..6c2f90549a67 100644 --- a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CheckNameAvailabilityForSupportTicketCommunication.json +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CheckNameAvailabilityForSupportTicketCommunication.json @@ -1,20 +1,20 @@ { - "parameters": { - "subscriptionId": "76cb77fa-8b17-4eab-9493-b65dace99813", - "supportTicketName": "testticket", - "api-version": "2019-05-01-preview", - "checkNameAvailabilityInput": { - "name": "sampleName", - "type": "Microsoft.Support/communications" - } - }, - "responses": { - "200": { - "body": { - "nameAvailable": false, - "reason": "Name is already in use", - "message": "Name not available" - } - } + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2019-05-01-preview", + "checkNameAvailabilityInput": { + "name": "sampleName", + "type": "Microsoft.Support/communications" } + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "Name is already in use", + "message": "Name not available" + } + } + } } diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CheckNameAvailabilityWithSubscription.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CheckNameAvailabilityWithSubscription.json index 63878f518aa4..83463e6ada59 100644 --- a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CheckNameAvailabilityWithSubscription.json +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CheckNameAvailabilityWithSubscription.json @@ -1,19 +1,19 @@ { - "parameters": { - "subscriptionId": "76cb77fa-8b17-4eab-9493-b65dace99813", - "api-version": "2019-05-01-preview", - "checkNameAvailabilityInput": { - "name": "sampleName", - "type": "Microsoft.Support/supportTickets" - } - }, - "responses": { - "200": { - "body": { - "nameAvailable": false, - "reason": "Name is already in use", - "message": "Name not available" - } - } + "parameters": { + "subscriptionId": "subid", + "api-version": "2019-05-01-preview", + "checkNameAvailabilityInput": { + "name": "sampleName", + "type": "Microsoft.Support/supportTickets" } + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "Name is already in use", + "message": "Name not available" + } + } + } } diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateBatchQuotaTicketForSpecificBatchAccountForActiveJobs.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateBatchQuotaTicketForSpecificBatchAccountForActiveJobs.json new file mode 100644 index 000000000000..a6e58cacb32a --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateBatchQuotaTicketForSpecificBatchAccountForActiveJobs.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2019-05-01-preview", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/batch_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Account", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"AccountName\":\"test\",\"NewLimit\":200,\"Type\":\"Jobs\"}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2019-05-01-preview", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2019-05-01-preview" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/batch_problemClassification_guid", + "problemClassificationDisplayName": "Batch", + "severity": "moderate", + "productionOutage": false, + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Account", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"AccountName\":\"test\",\"NewLimit\":200,\"Type\":\"Jobs\"}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2018-03-20T21:36:18Z", + "expirationTime": "2018-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2018-03-20T21:36:18Z", + "modifiedDate": "2018-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateBatchQuotaTicketForSpecificBatchAccountForDedicatedCores.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateBatchQuotaTicketForSpecificBatchAccountForDedicatedCores.json new file mode 100644 index 000000000000..03342384ce24 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateBatchQuotaTicketForSpecificBatchAccountForDedicatedCores.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2019-05-01-preview", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/batch_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Account", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"AccountName\":\"test\",\"VMFamily\":\"standardA0_A7Family\",\"NewLimit\":200,\"Type\":\"Dedicated\"}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2019-05-01-preview", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2019-05-01-preview" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/batch_problemClassification_guid", + "problemClassificationDisplayName": "Batch", + "severity": "moderate", + "productionOutage": false, + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Account", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"AccountName\":\"test\",\"VMFamily\":\"standardA0_A7Family\",\"NewLimit\":200,\"Type\":\"Dedicated\"}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2018-03-20T21:36:18Z", + "expirationTime": "2018-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2018-03-20T21:36:18Z", + "modifiedDate": "2018-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateBatchQuotaTicketForSpecificBatchAccountForLowPriorityCores.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateBatchQuotaTicketForSpecificBatchAccountForLowPriorityCores.json new file mode 100644 index 000000000000..ee7b85f5802e --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateBatchQuotaTicketForSpecificBatchAccountForLowPriorityCores.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2019-05-01-preview", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/batch_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Account", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"AccountName\":\"test\",\"NewLimit\":200,\"Type\":\"LowPriority\"}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2019-05-01-preview", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2019-05-01-preview" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/batch_problemClassification_guid", + "problemClassificationDisplayName": "Batch", + "severity": "moderate", + "productionOutage": false, + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Account", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"AccountName\":\"test\",\"NewLimit\":200,\"Type\":\"LowPriority\"}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2018-03-20T21:36:18Z", + "expirationTime": "2018-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2018-03-20T21:36:18Z", + "modifiedDate": "2018-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateBatchQuotaTicketForSpecificBatchAccountForPools.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateBatchQuotaTicketForSpecificBatchAccountForPools.json new file mode 100644 index 000000000000..28f40e19089a --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateBatchQuotaTicketForSpecificBatchAccountForPools.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2019-05-01-preview", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/batch_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Account", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"AccountName\":\"test\",\"NewLimit\":200,\"Type\":\"Pools\"}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2019-05-01-preview", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2019-05-01-preview" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/batch_problemClassification_guid", + "problemClassificationDisplayName": "Batch", + "severity": "moderate", + "productionOutage": false, + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Account", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"AccountName\":\"test\",\"NewLimit\":200,\"Type\":\"Pools\"}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2018-03-20T21:36:18Z", + "expirationTime": "2018-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2018-03-20T21:36:18Z", + "modifiedDate": "2018-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateBatchQuotaTicketForSubscription.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateBatchQuotaTicketForSubscription.json new file mode 100644 index 000000000000..fd47918bd40c --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateBatchQuotaTicketForSubscription.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2019-05-01-preview", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/batch_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Subscription", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"NewLimit\":200,\"Type\":\"Account\"}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2019-05-01-preview", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2019-05-01-preview" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/batch_problemClassification_guid", + "problemClassificationDisplayName": "Batch", + "severity": "moderate", + "productionOutage": false, + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Subscription", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"NewLimit\":200,\"Type\":\"Account\"}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2018-03-20T21:36:18Z", + "expirationTime": "2018-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2018-03-20T21:36:18Z", + "modifiedDate": "2018-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateBillingSupportTicketForSubscription.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateBillingSupportTicketForSubscription.json index 3a5ce4fc4efc..d8d1055d4bb9 100644 --- a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateBillingSupportTicketForSubscription.json +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateBillingSupportTicketForSubscription.json @@ -1,14 +1,14 @@ { "parameters": { - "subscriptionId": "76cb77fa-8b17-4eab-9493-b65dace99813", + "subscriptionId": "subid", "supportTicketName": "testticket", "api-version": "2019-05-01-preview", "createSupportTicketParameters": { "properties": { - "serviceId": "/providers/Microsoft.Support/services/517f2da6-78fd-0498-4e22-ad26996b1dfc", + "serviceId": "/providers/Microsoft.Support/services/billing_service_guid", "title": "my title", "description": "my description", - "problemClassificationId": "/providers/Microsoft.Support/services/517f2da6-78fd-0498-4e22-ad26996b1dfc/problemClassifications/a8d819ba-73bd-10c2-fcd5-7059fc386df3", + "problemClassificationId": "/providers/Microsoft.Support/services/billing_service_guid/problemClassifications/billing_problemClassification_guid", "severity": "moderate", "contactDetails": { "firstName": "abc", @@ -24,20 +24,20 @@ }, "responses": { "202": { - "headers": { - "location": "https://management.azure.com/subscriptions/76cb77fa-8b17-4eab-9493-b65dace99813/providers/Microsoft.Support/operationResults/1ec71b3f-5d74-4239-be45-897f23f4f52e?api-version=2019-05-01-preview", - "azure-asyncoperation": "https://management.azure.com/subscriptions/76cb77fa-8b17-4eab-9493-b65dace99813/providers/Microsoft.Support/operationsStatus/1ec71b3f-5d74-4239-be45-897f23f4f52e?api-version=2019-05-01-preview" - } + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2019-05-01-preview", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2019-05-01-preview" + } }, "200": { "body": { - "id": "/subscriptions/76cb77fa-8b17-4eab-9493-b65dace99813/providers/Microsoft.Support/supportTickets/testticket", + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", "name": "testticket", "type": "Microsoft.Support/supportTickets", "properties": { "supportTicketId": "119120321001170", "description": "my description", - "problemClassificationId": "/providers/Microsoft.Support/services/517f2da6-78fd-0498-4e22-ad26996b1dfc/problemClassifications/8b6c2e08-cd75-c2d1-7a12-e4daf1e16f2e", + "problemClassificationId": "/providers/Microsoft.Support/services/billing_service_guid/problemClassifications/billing_problemClassification_guid", "problemClassificationDisplayName": "Refund request", "severity": "moderate", "productionOutage": false, @@ -58,7 +58,7 @@ }, "supportPlanType": "Premier", "title": "my title", - "serviceId": "/providers/Microsoft.Support/services/517f2da6-78fd-0498-4e22-ad26996b1dfc", + "serviceId": "/providers/Microsoft.Support/services/billing_service_guid", "serviceDisplayName": "Billing", "status": "Open", "createdDate": "2018-03-20T21:36:18Z", diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateCoresQuotaTicketForSubscription.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateCoresQuotaTicketForSubscription.json index 8fdb17cc401b..6d59bbde87da 100644 --- a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateCoresQuotaTicketForSubscription.json +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateCoresQuotaTicketForSubscription.json @@ -1,14 +1,14 @@ { "parameters": { - "subscriptionId": "76cb77fa-8b17-4eab-9493-b65dace99813", + "subscriptionId": "subid", "supportTicketName": "testticket", "api-version": "2019-05-01-preview", "createSupportTicketParameters": { "properties": { - "serviceId": "/providers/Microsoft.Support/services/06bfd9d3-516b-d5c6-5802-169c800dec89", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", "title": "my title", "description": "my description", - "problemClassificationId": "/providers/Microsoft.Support/services/06bfd9d3-516b-d5c6-5802-169c800dec89/problemClassifications/e12e3d1d-7fa0-af33-c6d0-3c50df9658a3", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/cores_problemClassification_guid", "severity": "moderate", "contactDetails": { "firstName": "abc", @@ -33,23 +33,23 @@ }, "responses": { "202": { - "headers": { - "location": "https://management.azure.com/subscriptions/76cb77fa-8b17-4eab-9493-b65dace99813/providers/Microsoft.Support/operationResults/1ec71b3f-5d74-4239-be45-897f23f4f52e?api-version=2019-05-01-preview", - "azure-asyncoperation": "https://management.azure.com/subscriptions/76cb77fa-8b17-4eab-9493-b65dace99813/providers/Microsoft.Support/operationsStatus/1ec71b3f-5d74-4239-be45-897f23f4f52e?api-version=2019-05-01-preview" - } + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2019-05-01-preview", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2019-05-01-preview" + } }, "200": { "body": { - "id": "/subscriptions/76cb77fa-8b17-4eab-9493-b65dace99813/providers/Microsoft.Support/supportTickets/testticket", + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", "name": "testticket", "type": "Microsoft.Support/supportTickets", "properties": { "supportTicketId": "119120321001170", "description": "my description", - "problemClassificationId": "/providers/Microsoft.Support/services/06bfd9d3-516b-d5c6-5802-169c800dec89/problemClassifications/e12e3d1d-7fa0-af33-c6d0-3c50df9658a3", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/cores_problemClassification_guid", "problemClassificationDisplayName": "Compute-VM (cores-vCPUs) subscription limit increases", "severity": "moderate", - "productionOutage": false, + "productionOutage": false, "require24X7Response": false, "contactDetails": { "firstName": "abc", @@ -76,7 +76,7 @@ }, "supportPlanType": "Premier", "title": "my title", - "serviceId": "/providers/Microsoft.Support/services/06bfd9d3-516b-d5c6-5802-169c800dec89", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", "serviceDisplayName": "Service and subscription limits (quotas)", "status": "Open", "createdDate": "2018-03-20T21:36:18Z", diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateMachineLearningQuotaTicketForDedicatedCores.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateMachineLearningQuotaTicketForDedicatedCores.json new file mode 100644 index 000000000000..b0e7d4d8df28 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateMachineLearningQuotaTicketForDedicatedCores.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2019-05-01-preview", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/machine_learning_service_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Account", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"VMFamily\":\"standardA0_A7Family\",\"NewLimit\":200,\"Type\":\"Dedicated\"}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2019-05-01-preview", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2019-05-01-preview" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/machine_learning_service_problemClassification_guid", + "problemClassificationDisplayName": "Machine Learning service", + "severity": "moderate", + "productionOutage": false, + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Account", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"VMFamily\":\"standardA0_A7Family\",\"NewLimit\":200,\"Type\":\"Dedicated\"}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2018-03-20T21:36:18Z", + "expirationTime": "2018-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2018-03-20T21:36:18Z", + "modifiedDate": "2018-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateMachineLearningQuotaTicketForLowPriorityCores.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateMachineLearningQuotaTicketForLowPriorityCores.json new file mode 100644 index 000000000000..e9f4478570b6 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateMachineLearningQuotaTicketForLowPriorityCores.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2019-05-01-preview", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/machine_learning_service_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Account", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"NewLimit\":200,\"Type\":\"LowPriority\"}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2019-05-01-preview", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2019-05-01-preview" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/machine_learning_service_problemClassification_guid", + "problemClassificationDisplayName": "Machine Learning service", + "severity": "moderate", + "productionOutage": false, + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Account", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"NewLimit\":200,\"Type\":\"LowPriority\"}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2018-03-20T21:36:18Z", + "expirationTime": "2018-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2018-03-20T21:36:18Z", + "modifiedDate": "2018-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateSqlDatabaseQuotaTicketForDTUs.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateSqlDatabaseQuotaTicketForDTUs.json new file mode 100644 index 000000000000..f70134709c9a --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateSqlDatabaseQuotaTicketForDTUs.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2019-05-01-preview", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/sql_database_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "DTUs", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"ServerName\":\"testserver\",\"NewLimit\":54000}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2019-05-01-preview", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2019-05-01-preview" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/sql_database_problemClassification_guid", + "problemClassificationDisplayName": "SQL database", + "severity": "moderate", + "productionOutage": false, + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "DTUs", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"ServerName\":\"testserver\",\"NewLimit\":54000}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2018-03-20T21:36:18Z", + "expirationTime": "2018-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2018-03-20T21:36:18Z", + "modifiedDate": "2018-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateSqlDatabaseQuotaTicketForServers.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateSqlDatabaseQuotaTicketForServers.json new file mode 100644 index 000000000000..b391f86a336a --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateSqlDatabaseQuotaTicketForServers.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2019-05-01-preview", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/sql_database_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Servers", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"NewLimit\":200}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2019-05-01-preview", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2019-05-01-preview" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/sql_database_problemClassification_guid", + "problemClassificationDisplayName": "SQL database", + "severity": "moderate", + "productionOutage": false, + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Servers", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"NewLimit\":200}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2018-03-20T21:36:18Z", + "expirationTime": "2018-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2018-03-20T21:36:18Z", + "modifiedDate": "2018-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateSqlDatawarehouseQuotaTicketForDTUs.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateSqlDatawarehouseQuotaTicketForDTUs.json new file mode 100644 index 000000000000..e92f0f01433d --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateSqlDatawarehouseQuotaTicketForDTUs.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2019-05-01-preview", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/sql_datawarehouse_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "DTUs", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"ServerName\":\"testserver\",\"NewLimit\":54000}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2019-05-01-preview", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2019-05-01-preview" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/sql_datawarehouse_problemClassification_guid", + "problemClassificationDisplayName": "SQL Data Warehouse", + "severity": "moderate", + "productionOutage": false, + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "DTUs", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"ServerName\":\"testserver\",\"NewLimit\":54000}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2018-03-20T21:36:18Z", + "expirationTime": "2018-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2018-03-20T21:36:18Z", + "modifiedDate": "2018-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateSqlDatawarehouseQuotaTicketForServers.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateSqlDatawarehouseQuotaTicketForServers.json new file mode 100644 index 000000000000..f7eb838f0fbf --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateSqlDatawarehouseQuotaTicketForServers.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2019-05-01-preview", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/sql_datawarehouse_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Servers", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"NewLimit\":200}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2019-05-01-preview", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2019-05-01-preview" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/sql_datawarehouse_problemClassification_guid", + "problemClassificationDisplayName": "SQL Data Warehouse", + "severity": "moderate", + "productionOutage": false, + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Servers", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"NewLimit\":200}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2018-03-20T21:36:18Z", + "expirationTime": "2018-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2018-03-20T21:36:18Z", + "modifiedDate": "2018-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateSubMgmtSupportTicketForSubscription.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateSubMgmtSupportTicketForSubscription.json index 72a2cdaf5e59..5a2c8cb37926 100644 --- a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateSubMgmtSupportTicketForSubscription.json +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateSubMgmtSupportTicketForSubscription.json @@ -1,14 +1,14 @@ { "parameters": { - "subscriptionId": "76cb77fa-8b17-4eab-9493-b65dace99813", + "subscriptionId": "subid", "supportTicketName": "testticket", "api-version": "2019-05-01-preview", "createSupportTicketParameters": { "properties": { - "serviceId": "/providers/Microsoft.Support/services/f3dc5421-79ef-1efa-41a5-42bf3cbb52c6", + "serviceId": "/providers/Microsoft.Support/services/subscription_management_service_guid", "title": "my title", "description": "my description", - "problemClassificationId": "/providers/Microsoft.Support/services/f3dc5421-79ef-1efa-41a5-42bf3cbb52c6/problemClassifications/eefb3e6a-0243-9fc2-9197-d2798d71a74c", + "problemClassificationId": "/providers/Microsoft.Support/services/subscription_management_service_guid/problemClassifications/subscription_management_problemClassification_guid", "severity": "moderate", "contactDetails": { "firstName": "abc", @@ -24,23 +24,23 @@ }, "responses": { "202": { - "headers": { - "location": "https://management.azure.com/subscriptions/76cb77fa-8b17-4eab-9493-b65dace99813/providers/Microsoft.Support/operationResults/1ec71b3f-5d74-4239-be45-897f23f4f52e?api-version=2019-05-01-preview", - "azure-asyncoperation": "https://management.azure.com/subscriptions/76cb77fa-8b17-4eab-9493-b65dace99813/providers/Microsoft.Support/operationsStatus/1ec71b3f-5d74-4239-be45-897f23f4f52e?api-version=2019-05-01-preview" - } + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2019-05-01-preview", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2019-05-01-preview" + } }, "200": { "body": { - "id": "/subscriptions/76cb77fa-8b17-4eab-9493-b65dace99813/providers/Microsoft.Support/supportTickets/testticket", + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", "name": "testticket", "type": "Microsoft.Support/supportTickets", "properties": { "supportTicketId": "119120321001170", "description": "my description", - "problemClassificationId": "/providers/Microsoft.Support/services/f3dc5421-79ef-1efa-41a5-42bf3cbb52c6/problemClassifications/eefb3e6a-0243-9fc2-9197-d2798d71a74c", + "problemClassificationId": "/providers/Microsoft.Support/services/subscription_management_service_guid/problemClassifications/subscription_management_problemClassification_guid", "problemClassificationDisplayName": "Transfer ownership of my subscription", "severity": "moderate", - "productionOutage": false, + "productionOutage": false, "require24X7Response": false, "contactDetails": { "firstName": "abc", @@ -58,7 +58,7 @@ }, "supportPlanType": "Premier", "title": "my title", - "serviceId": "/providers/Microsoft.Support/services/f3dc5421-79ef-1efa-41a5-42bf3cbb52c6", + "serviceId": "/providers/Microsoft.Support/services/subscription_management_service_guid", "serviceDisplayName": "Subscription management", "status": "Open", "createdDate": "2018-03-20T21:36:18Z", diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateSupportTicketCommunication.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateSupportTicketCommunication.json index 7d1ec519f556..0dda09e77656 100644 --- a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateSupportTicketCommunication.json +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateSupportTicketCommunication.json @@ -1,38 +1,38 @@ { - "parameters": { - "subscriptionId": "76cb77fa-8b17-4eab-9493-b65dace99813", - "supportTicketName": "testticket", - "communicationName": "testcommunication", - "api-version": "2019-05-01-preview", - "createCommunicationParameters": { - "properties": { - "subject": "This is a test message from a customer!", - "body": "This is a test message from a customer!" - } - } + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "communicationName": "testcommunication", + "api-version": "2019-05-01-preview", + "createCommunicationParameters": { + "properties": { + "subject": "This is a test message from a customer!", + "body": "This is a test message from a customer!", + "sender": "user@contoso.com" + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2019-05-01-preview", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2019-05-01-preview" + } }, - "responses": { - "202": { - "headers": { - "location": "https://management.azure.com/subscriptions/76cb77fa-8b17-4eab-9493-b65dace99813/providers/Microsoft.Support/operationResults/1ec71b3f-5d74-4239-be45-897f23f4f52e?api-version=2019-05-01-preview", - "azure-asyncoperation": "https://management.azure.com/subscriptions/76cb77fa-8b17-4eab-9493-b65dace99813/providers/Microsoft.Support/operationsStatus/1ec71b3f-5d74-4239-be45-897f23f4f52e?api-version=2019-05-01-preview" - } - }, - "200": { - "body": { - "id": "/subscriptions/76cb77fa-8b17-4eab-9493-b65dace99813/providers/Microsoft.Support/supportTickets/testticket/communications/testcommunication", - "name": "testcommunication", - "type": "Microsoft.Support/communications", - "properties": { - "subject": "This is a test message from a customer!", - "body": "This is a test message from a customer!", - "communicationType": "web", - "communicationDirection": "outbound", - "createdDate": "2016-08-24T20:18:19Z", - "sender": "user@contoso.com" - } - } + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket/communications/testcommunication", + "name": "testcommunication", + "type": "Microsoft.Support/communications", + "properties": { + "subject": "This is a test message from a customer!", + "body": "This is a test message from a customer!", + "communicationType": "web", + "communicationDirection": "outbound", + "createdDate": "2016-08-24T20:18:19Z", + "sender": "user@contoso.com" } + } } + } } - diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateTechnicalSupportTicketForSubscription.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateTechnicalSupportTicketForSubscription.json index ad98ed2cb82c..655df7e30ff9 100644 --- a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateTechnicalSupportTicketForSubscription.json +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/CreateTechnicalSupportTicketForSubscription.json @@ -1,6 +1,6 @@ { "parameters": { - "subscriptionId": "76cb77fa-8b17-4eab-9493-b65dace99813", + "subscriptionId": "subid", "supportTicketName": "testticket", "api-version": "2019-05-01-preview", "createSupportTicketParameters": { @@ -8,7 +8,7 @@ "serviceId": "/providers/Microsoft.Support/services/cddd3eb5-1830-b494-44fd-782f691479dc", "title": "my title", "description": "my description", - "problemClassificationId": "/providers/Microsoft.Support/services/cddd3eb5-1830-b494-44fd-782f691479dc/problemClassifications/ef8b3865-0c5a-247b-dcaa-d70fd7611a3c", + "problemClassificationId": "/providers/Microsoft.Support/services/virtual_machine_running_linux_service_guid/problemClassifications/problemClassification_guid", "severity": "moderate", "contactDetails": { "firstName": "abc", @@ -20,30 +20,30 @@ "country": "usa" }, "technicalTicketDetails": { - "resourceId": "/subscriptions/76cb77fa-8b17-4eab-9493-b65dace99813/resourceGroups/test/providers/Microsoft.Compute/virtualMachines/testserver" + "resourceId": "/subscriptions/subid/resourceGroups/test/providers/Microsoft.Compute/virtualMachines/testserver" } } } }, "responses": { "202": { - "headers": { - "location": "https://management.azure.com/subscriptions/76cb77fa-8b17-4eab-9493-b65dace99813/providers/Microsoft.Support/operationResults/1ec71b3f-5d74-4239-be45-897f23f4f52e?api-version=2019-05-01-preview", - "azure-asyncoperation": "https://management.azure.com/subscriptions/76cb77fa-8b17-4eab-9493-b65dace99813/providers/Microsoft.Support/operationsStatus/1ec71b3f-5d74-4239-be45-897f23f4f52e?api-version=2019-05-01-preview" - } + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2019-05-01-preview", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2019-05-01-preview" + } }, "200": { "body": { - "id": "/subscriptions/76cb77fa-8b17-4eab-9493-b65dace99813/providers/Microsoft.Support/supportTickets/testticket", + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", "name": "testticket", "type": "Microsoft.Support/supportTickets", "properties": { "supportTicketId": "119120321001170", "description": "my description", - "problemClassificationId": "/providers/Microsoft.Support/services/cddd3eb5-1830-b494-44fd-782f691479dc/problemClassifications/ef8b3865-0c5a-247b-dcaa-d70fd7611a3c", + "problemClassificationId": "/providers/Microsoft.Support/services/virtual_machine_running_linux_service_guid/problemClassifications/problemClassification_guid", "problemClassificationDisplayName": "Connectivity / Cannot connect to virtual machine by using RDP or SSH", "severity": "moderate", - "productionOutage": false, + "productionOutage": false, "require24X7Response": false, "contactDetails": { "firstName": "abc", @@ -55,7 +55,7 @@ "preferredSupportLanguage": "en-US" }, "technicalTicketDetails": { - "resourceId": "/subscriptions/76cb77fa-8b17-4eab-9493-b65dace99813/resourceGroups/test/providers/Microsoft.Compute/virtualMachines/testserver" + "resourceId": "/subscriptions/subid/resourceGroups/test/providers/Microsoft.Compute/virtualMachines/testserver" }, "serviceLevelAgreement": { "startTime": "2018-03-20T21:36:18Z", @@ -64,7 +64,7 @@ }, "supportPlanType": "Premier", "title": "my title", - "serviceId": "/providers/Microsoft.Support/services/cddd3eb5-1830-b494-44fd-782f691479dc", + "serviceId": "/providers/Microsoft.Support/services/virtual_machine_running_linux_service_guid", "serviceDisplayName": "Virtual Machine running Linux", "status": "Open", "createdDate": "2018-03-20T21:36:18Z", diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/GetCommunicationDetailsForSubscriptionSupportTicket.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/GetCommunicationDetailsForSubscriptionSupportTicket.json index eb5c713d1b3e..bfe3c3e109e9 100644 --- a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/GetCommunicationDetailsForSubscriptionSupportTicket.json +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/GetCommunicationDetailsForSubscriptionSupportTicket.json @@ -1,15 +1,15 @@ { "parameters": { - "subscriptionId": "0154f7fe-df09-4981-bf82-7ad5c1f596eb", + "subscriptionId": "subid", "supportTicketName": "testticket", - "communicationName": "8e9cf824-616e-4478-92c4-10b03c677104", + "communicationName": "testmessage", "api-version": "2019-05-01-preview" }, "responses": { "200": { "body": { - "id": "/subscriptions/0154f7fe-df09-4981-bf82-7ad5c1f596eb/providers/Microsoft.Support/supportTickets/testticket/communications/8e9cf824-616e-4478-92c4-10b03c677104", - "name": "8e9cf824-616e-4478-92c4-10b03c677104", + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket/communications/testmessage", + "name": "testmessage", "type": "Microsoft.Support/communications", "properties": { "subject": "this is a test message", diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/GetProblemClassification.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/GetProblemClassification.json index 3627dca9be1d..76ecbb73b061 100644 --- a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/GetProblemClassification.json +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/GetProblemClassification.json @@ -1,19 +1,19 @@ { - "parameters": { - "serviceName": "517f2da6-78fd-0498-4e22-ad26996b1dfc", - "problemClassificationName": "057f6615-3650-5370-57b2-e1a64af3b03", - "api-version": "2019-05-01-preview" - }, - "responses": { - "200": { - "body": { - "id": "/providers/Microsoft.Support/services/517f2da6-78fd-0498-4e22-ad26996b1dfc/problemClassifications/057f6615-3650-5370-57b2-e1a64af3b037", - "name": "057f6615-3650-5370-57b2-e1a64af3b037", - "type": "Microsoft.Support/problemClassifications", - "properties": { - "displayName": "/Reservation Management/Exchanges and Refunds" - } - } + "parameters": { + "serviceName": "service_guid", + "problemClassificationName": "problemClassification_guid", + "api-version": "2019-05-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Support/services/service_guid/problemClassifications/problemClassification_guid", + "name": "problemClassification_guid", + "type": "Microsoft.Support/problemClassifications", + "properties": { + "displayName": "Reservation Management / Exchanges and Refunds" } + } } + } } diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/GetService.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/GetService.json index 97881a9cc71f..3438c26e605e 100644 --- a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/GetService.json +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/GetService.json @@ -1,18 +1,18 @@ { - "parameters": { - "serviceName": "517f2da6-78fd-0498-4e22-ad26996b1dfc", - "api-version": "2019-05-01-preview" - }, - "responses": { - "200": { - "body": { - "id": "/providers/Microsoft.Support/services/517f2da6-78fd-0498-4e22-ad26996b1dfc", - "name": "517f2da6-78fd-0498-4e22-ad26996b1dfc", - "type": "Microsoft.Support/services", - "properties": { - "displayName": "Billing" - } - } - } - } + "parameters": { + "serviceName": "service_guid", + "api-version": "2019-05-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Support/services/service_guid", + "name": "service_guid", + "type": "Microsoft.Support/services", + "properties": { + "displayName": "Billing" + } + } + } + } } diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/GetSubscriptionSupportTicketDetails.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/GetSubscriptionSupportTicketDetails.json index d1d9aaa65eef..ac41b1fc8da2 100644 --- a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/GetSubscriptionSupportTicketDetails.json +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/GetSubscriptionSupportTicketDetails.json @@ -1,22 +1,22 @@ { "parameters": { - "subscriptionId": "76cb77fa-8b17-4eab-9493-b65dace99813", + "subscriptionId": "subid", "supportTicketName": "testticket", "api-version": "2019-05-01-preview" }, "responses": { "200": { "body": { - "id": "/subscriptions/76cb77fa-8b17-4eab-9493-b65dace99813/providers/Microsoft.Support/supportTickets/testticket", + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", "name": "testticket", "type": "Microsoft.Support/supportTickets", "properties": { "supportTicketId": "118032014183770", "description": "This is a test - please ignore", - "problemClassificationId": "/providers/Microsoft.Support/services/f3dc5421-79ef-1efa-41a5-42bf3cbb52c6/problemClassifications/6abdbef4-3c18-3ce7-4354-03018676ec14", + "problemClassificationId": "/providers/Microsoft.Support/services/subscription_management_service_guid/problemClassifications/problemClassification_guid", "problemClassificationDisplayName": "Add or Edit VAT, TAX ID, or PO Number", "severity": "minimal", - "productionOutage": false, + "productionOutage": false, "require24X7Response": false, "contactDetails": { "firstName": "abc", @@ -34,7 +34,7 @@ }, "supportPlanType": "Premier", "title": "Test - please ignore", - "serviceId": "/providers/Microsoft.Support/services/f3dc5421-79ef-1efa-41a5-42bf3cbb52c6", + "serviceId": "/providers/Microsoft.Support/services/subscription_management_service_guid", "serviceDisplayName": "Subscription management", "status": "Open", "createdDate": "2018-03-20T21:36:18Z", @@ -44,4 +44,3 @@ } } } - diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/ListCommunicationsForSubscriptionSupportTicket.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/ListCommunicationsForSubscriptionSupportTicket.json index 664808cc79fe..8302a53195e3 100644 --- a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/ListCommunicationsForSubscriptionSupportTicket.json +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/ListCommunicationsForSubscriptionSupportTicket.json @@ -1,6 +1,6 @@ { "parameters": { - "subscriptionId": "0154f7fe-df09-4981-bf82-7ad5c1f596eb", + "subscriptionId": "subid", "supportTicketName": "testticket", "api-version": "2019-05-01-preview" }, @@ -9,8 +9,8 @@ "body": { "value": [ { - "id": "/subscriptions/0154f7fe-df09-4981-bf82-7ad5c1f596eb/providers/Microsoft.Support/supportTickets/testticket/communications/8e9cf824-616e-4478-92c4-10b03c677104", - "name": "8e9cf824-616e-4478-92c4-10b03c677104", + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket/communications/testmessage1", + "name": "testmessage1", "type": "Microsoft.Support/communications", "properties": { "subject": "this is a test message", @@ -22,8 +22,8 @@ } }, { - "id": "/subscriptions/0154f7fe-df09-4981-bf82-7ad5c1f596eb/providers/Microsoft.Support/supportTickets/testticket/communications/f21f8082-574c-43b4-ad62-92119a797030", - "name": "f21f8082-574c-43b4-ad62-92119a797030", + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket/communications/testmessage2", + "name": "testmessage2", "type": "Microsoft.Support/communications", "properties": { "subject": "test", diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/ListOperations.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/ListOperations.json index a77c60df40d3..2703ff7bfbf4 100644 --- a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/ListOperations.json +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/ListOperations.json @@ -1,94 +1,94 @@ { - "parameters": { - "api-version": "2019-05-01-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "name": "Microsoft.Support/services/read", - "display": { - "description": "Gets all the Azure services available for support", - "operation": "Reads Services", - "provider": "Microsoft Support", - "resource": "Service" - } - }, - { - "name": "Microsoft.Support/problemClassifications/read", - "display": { - "description": "Gets all the problem classifications available for a specific Azure service", - "operation": "Reads Problem Classifications", - "provider": "Microsoft Support", - "resource": "Problem Classification" - } - }, - { - "name": "Microsoft.Support/supportTickets/read", - "display": { - "description": "Gets all the support tickets", - "operation": "Reads Support Tickets", - "provider": "Microsoft Support", - "resource": "Support Ticket" - } - }, - { - "name": "Microsoft.Support/supportTickets/write", - "display": { - "description": "Updates support ticket", - "operation": "Updates support ticket", - "provider": "Microsoft Support", - "resource": "Support Ticket" - } - }, - { - "name": "Microsoft.Support/communications/read", - "display": { - "description": "Gets all the communications", - "operation": "Reads Communications", - "provider": "Microsoft Support", - "resource": "Communication" - } - }, - { - "name": "Microsoft.Support/communications/write", - "display": { - "description": "Creates a communication", - "operation": "Creates a communication", - "provider": "Microsoft Support", - "resource": "Communication" - } - }, - { - "name": "Microsoft.Support/register/action", - "display": { - "description": "Registers Support Resource Provider", - "operation": "Registers Support Resource Provider", - "provider": "Registers Support Resource Provider", - "resource": "Support Registration" - } - }, - { - "name": "Microsoft.Support/createSupportTicket/action", - "display": { - "description": "Creates support ticket", - "operation": "Registers Support Resource Provider", - "provider": "Microsoft Support", - "resource": "SupportTicket" - } - }, - { - "name": "Microsoft.Support/addCommunication/action", - "display": { - "description": "Add communication to support ticket", - "operation": "Registers Support Resource Provider", - "provider": "Microsoft Support", - "resource": "Communication" - } - } - ] + "parameters": { + "api-version": "2019-05-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Support/services/read", + "display": { + "description": "Gets all the Azure services available for support", + "operation": "Reads Services", + "provider": "Microsoft Support", + "resource": "Service" } - } + }, + { + "name": "Microsoft.Support/problemClassifications/read", + "display": { + "description": "Gets all the problem classifications available for a specific Azure service", + "operation": "Reads Problem Classifications", + "provider": "Microsoft Support", + "resource": "Problem Classification" + } + }, + { + "name": "Microsoft.Support/supportTickets/read", + "display": { + "description": "Gets all the support tickets", + "operation": "Reads Support Tickets", + "provider": "Microsoft Support", + "resource": "Support Ticket" + } + }, + { + "name": "Microsoft.Support/supportTickets/write", + "display": { + "description": "Updates support ticket", + "operation": "Updates support ticket", + "provider": "Microsoft Support", + "resource": "Support Ticket" + } + }, + { + "name": "Microsoft.Support/communications/read", + "display": { + "description": "Gets all the communications", + "operation": "Reads Communications", + "provider": "Microsoft Support", + "resource": "Communication" + } + }, + { + "name": "Microsoft.Support/communications/write", + "display": { + "description": "Creates a communication", + "operation": "Creates a communication", + "provider": "Microsoft Support", + "resource": "Communication" + } + }, + { + "name": "Microsoft.Support/register/action", + "display": { + "description": "Registers Support Resource Provider", + "operation": "Registers Support Resource Provider", + "provider": "Registers Support Resource Provider", + "resource": "Support Registration" + } + }, + { + "name": "Microsoft.Support/createSupportTicket/action", + "display": { + "description": "Creates support ticket", + "operation": "Registers Support Resource Provider", + "provider": "Microsoft Support", + "resource": "SupportTicket" + } + }, + { + "name": "Microsoft.Support/addCommunication/action", + "display": { + "description": "Add communication to support ticket", + "operation": "Registers Support Resource Provider", + "provider": "Microsoft Support", + "resource": "Communication" + } + } + ] + } } + } } diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/ListProblemClassifications.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/ListProblemClassifications.json index 8e3a0fa80ef7..94202b92b2a8 100644 --- a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/ListProblemClassifications.json +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/ListProblemClassifications.json @@ -1,46 +1,46 @@ { - "parameters": { - "serviceName": "517f2da6-78fd-0498-4e22-ad26996b1dfc", - "api-version": "2019-05-01-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "/providers/Microsoft.Support/services/517f2da6-78fd-0498-4e22-ad26996b1dfc/problemClassifications/057f6615-3650-5370-57b2-e1a64af3b037", - "name": "057f6615-3650-5370-57b2-e1a64af3b037", - "type": "Microsoft.Support/problemClassifications", - "properties": { - "displayName": "/Reservation Management/Exchanges and Refunds" - } - }, - { - "id": "/providers/Microsoft.Support/services/517f2da6-78fd-0498-4e22-ad26996b1dfc/problemClassifications/0b759e67-2619-49bf-441d-ed952a5f32c5", - "name": "0b759e67-2619-49bf-441d-ed952a5f32c5", - "type": "Microsoft.Support/problemClassifications", - "properties": { - "displayName": "/Reservation Management/Request Invoices" - } - }, - { - "id": "/providers/Microsoft.Support/services/517f2da6-78fd-0498-4e22-ad26996b1dfc/problemClassifications/10ec0d5a-45cd-a195-1252-0dfcca25263d", - "name": "10ec0d5a-45cd-a195-1252-0dfcca25263d", - "type": "Microsoft.Support/problemClassifications", - "properties": { - "displayName": "/Reservation Management/Other Iissues or Requests" - } - }, - { - "id": "/providers/Microsoft.Support/services/517f2da6-78fd-0498-4e22-ad26996b1dfc/problemClassifications/43cabb12-33e3-5f97-5b68-9e6ce6412adc", - "name": "43cabb12-33e3-5f97-5b68-9e6ce6412adc", - "type": "Microsoft.Support/problemClassifications", - "properties": { - "displayName": "/Other General Billing Questions" - } - } - ] + "parameters": { + "serviceName": "service_guid", + "api-version": "2019-05-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Support/services/service_guid/problemClassifications/problemClassification_guid_1", + "name": "problemClassification_guid_1", + "type": "Microsoft.Support/problemClassifications", + "properties": { + "displayName": "Reservation Management / Exchanges and Refunds" } - } + }, + { + "id": "/providers/Microsoft.Support/services/service_guid/problemClassifications/problemClassification_guid_2", + "name": "problemClassification_guid_2", + "type": "Microsoft.Support/problemClassifications", + "properties": { + "displayName": "Reservation Management / Request Invoices" + } + }, + { + "id": "/providers/Microsoft.Support/services/service_guid/problemClassifications/problemClassification_guid_3", + "name": "problemClassification_guid_3", + "type": "Microsoft.Support/problemClassifications", + "properties": { + "displayName": "Reservation Management / Other Iissues or Requests" + } + }, + { + "id": "/providers/Microsoft.Support/services/service_guid/problemClassifications/problemClassification_guid_4", + "name": "problemClassification_guid_4", + "type": "Microsoft.Support/problemClassifications", + "properties": { + "displayName": "Other General Billing Questions" + } + } + ] + } } + } } diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/ListServices.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/ListServices.json index f886ef4581cb..bb0b3eec08de 100644 --- a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/ListServices.json +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/ListServices.json @@ -1,45 +1,45 @@ { - "parameters": { - "api-version": "2019-05-01-preview" - }, - "responses": { - "200": { - "body": { - "value": [ - { - "id": "/providers/Microsoft.Support/services/517f2da6-78fd-0498-4e22-ad26996b1dfc", - "name": "517f2da6-78fd-0498-4e22-ad26996b1dfc", - "type": "Microsoft.Support/services", - "properties": { - "displayName": "Billing" - } - }, - { - "id": "/providers/Microsoft.Support/services/06bfd9d3-516b-d5c6-5802-169c800dec89", - "name": "06bfd9d3-516b-d5c6-5802-169c800dec89", - "type": "Microsoft.Support/services", - "properties": { - "displayName": "Service and subscription limits (quotas)" - } - }, - { - "id": "/providers/Microsoft.Support/services/f3dc5421-79ef-1efa-41a5-42bf3cbb52c6", - "name": "f3dc5421-79ef-1efa-41a5-42bf3cbb52c6", - "type": "Microsoft.Support/services", - "properties": { - "displayName": "Subscription management" - } - }, - { - "id": "/providers/Microsoft.Support/services/0d06686e-fac3-fde3-a8c1-6dfbc8bd3865", - "name": "0d06686e-fac3-fde3-a8c1-6dfbc8bd3865", - "type": "Microsoft.Support/services", - "properties": { - "displayName": "Data Explorer" - } - } - ] + "parameters": { + "api-version": "2019-05-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Support/services/service_guid_1", + "name": "service_guid_1", + "type": "Microsoft.Support/services", + "properties": { + "displayName": "Billing" } - } - } + }, + { + "id": "/providers/Microsoft.Support/services/service_guid_2", + "name": "service_guid_2", + "type": "Microsoft.Support/services", + "properties": { + "displayName": "Service and subscription limits (quotas)" + } + }, + { + "id": "/providers/Microsoft.Support/services/service_guid_3", + "name": "service_guid_3", + "type": "Microsoft.Support/services", + "properties": { + "displayName": "Subscription management" + } + }, + { + "id": "/providers/Microsoft.Support/services/service_guid_4", + "name": "service_guid_4", + "type": "Microsoft.Support/services", + "properties": { + "displayName": "Data Explorer" + } + } + ] + } + } + } } diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/ListSupportTicketsBySubscription.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/ListSupportTicketsBySubscription.json index dbe8bea85246..762420ab981e 100644 --- a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/ListSupportTicketsBySubscription.json +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/ListSupportTicketsBySubscription.json @@ -1,6 +1,6 @@ { "parameters": { - "subscriptionId": "0154f7fe-df09-4981-bf82-7ad5c1f596eb", + "subscriptionId": "subid", "api-version": "2019-05-01-preview" }, "responses": { @@ -8,16 +8,16 @@ "body": { "value": [ { - "id": "/subscriptions/76cb77fa-8b17-4eab-9493-b65dace99813/providers/Microsoft.Support/supportTickets/testticket", + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", "name": "testticket", "type": "Microsoft.Support/supportTickets", "properties": { "supportTicketId": "119120321001170", "description": "my description", - "problemClassificationId": "/providers/Microsoft.Support/services/cddd3eb5-1830-b494-44fd-782f691479dc/problemClassifications/ef8b3865-0c5a-247b-dcaa-d70fd7611a3c", + "problemClassificationId": "/providers/Microsoft.Support/services/virtual_machine_service_guid/problemClassifications/problemClassification_guid", "problemClassificationDisplayName": "Connectivity / Cannot connect to virtual machine by using RDP or SSH", "severity": "moderate", - "productionOutage": false, + "productionOutage": false, "require24X7Response": false, "contactDetails": { "firstName": "abc", @@ -29,7 +29,7 @@ "preferredSupportLanguage": "en-US" }, "technicalTicketDetails": { - "resourceId": "/subscriptions/76cb77fa-8b17-4eab-9493-b65dace99813/resourceGroups/test/providers/Microsoft.Compute/virtualMachines/testserver" + "resourceId": "/subscriptions/subid/resourceGroups/test/providers/Microsoft.Compute/virtualMachines/testserver" }, "serviceLevelAgreement": { "startTime": "2018-03-20T21:36:18Z", @@ -38,7 +38,7 @@ }, "supportPlanType": "Premier", "title": "my title", - "serviceId": "/providers/Microsoft.Support/services/cddd3eb5-1830-b494-44fd-782f691479dc", + "serviceId": "/providers/Microsoft.Support/services/virtual_machine_service_guid", "serviceDisplayName": "Virtual Machine running Linux", "status": "Open", "createdDate": "2018-03-20T21:36:18Z", @@ -46,16 +46,16 @@ } }, { - "id": "/subscriptions/76cb77fa-8b17-4eab-9493-b65dace99813/providers/Microsoft.Support/supportTickets/testticket2", + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket2", "name": "testticket2", "type": "Microsoft.Support/supportTickets", "properties": { "supportTicketId": "118032014183771", "description": "This is a test - please ignore", - "problemClassificationId": "/providers/Microsoft.Support/services/f3dc5421-79ef-1efa-41a5-42bf3cbb52c6/problemClassifications/6abdbef4-3c18-3ce7-4354-03018676ec14", + "problemClassificationId": "/providers/Microsoft.Support/services/subscription_management_service_guid/problemClassifications/problemClassification_guid", "problemClassificationDisplayName": "Add or Edit VAT, TAX ID, or PO Number", "severity": "minimal", - "productionOutage": false, + "productionOutage": false, "require24X7Response": false, "contactDetails": { "firstName": "abc", @@ -73,7 +73,7 @@ }, "supportPlanType": "Premier", "title": "Test - please ignore", - "serviceId" : "/providers/Microsoft.Support/services/f3dc5421-79ef-1efa-41a5-42bf3cbb52c6", + "serviceId": "/providers/Microsoft.Support/services/subscription_management_service_guid", "serviceDisplayName": "Subscription management", "status": "Open", "createdDate": "2018-03-20T21:36:18Z", diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/ListSupportTicketsCreatedOnOrAfterAndInOpenStateBySubscription.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/ListSupportTicketsCreatedOnOrAfterAndInOpenStateBySubscription.json new file mode 100644 index 000000000000..71c6d838011e --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/ListSupportTicketsCreatedOnOrAfterAndInOpenStateBySubscription.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "subscriptionId": "subid", + "$filter": "createdDate ge 2019-12-10T22:08:51Z and status eq 'Open'", + "api-version": "2019-05-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/virtual_machine_service_guid/problemClassifications/problemClassification_guid", + "problemClassificationDisplayName": "Connectivity / Cannot connect to virtual machine by using RDP or SSH", + "severity": "moderate", + "productionOutage": false, + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "technicalTicketDetails": { + "resourceId": "/subscriptions/subid/resourceGroups/test/providers/Microsoft.Compute/virtualMachines/testserver" + }, + "serviceLevelAgreement": { + "startTime": "2019-12-20T21:36:18Z", + "expirationTime": "2019-12-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/virtual_machine_service_guid", + "serviceDisplayName": "Virtual Machine running Linux", + "status": "Open", + "createdDate": "2019-12-20T21:36:18Z", + "modifiedDate": "2019-12-20T21:36:23Z" + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket2", + "name": "testticket2", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "118032014183771", + "description": "This is a test - please ignore", + "problemClassificationId": "/providers/Microsoft.Support/services/subscription_management_service_guid/problemClassifications/problemClassification_guid", + "problemClassificationDisplayName": "Add or Edit VAT, TAX ID, or PO Number", + "severity": "minimal", + "productionOutage": false, + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "USA", + "preferredSupportLanguage": "en-US" + }, + "serviceLevelAgreement": { + "startTime": "2019-12-20T21:36:18Z", + "expirationTime": "2019-12-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportPlanType": "Premier", + "title": "Test - please ignore", + "serviceId": "/providers/Microsoft.Support/services/subscription_management_service_guid", + "serviceDisplayName": "Subscription management", + "status": "Open", + "createdDate": "2019-12-20T21:36:18Z", + "modifiedDate": "2019-12-20T21:36:23Z" + } + } + ] + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/ListSupportTicketsInOpenStateBySubscription.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/ListSupportTicketsInOpenStateBySubscription.json new file mode 100644 index 000000000000..b4658f7ac84c --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/ListSupportTicketsInOpenStateBySubscription.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "subscriptionId": "subid", + "$filter": "status eq 'Open'", + "api-version": "2019-05-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/virtual_machine_service_guid/problemClassifications/problemClassification_guid", + "problemClassificationDisplayName": "Connectivity / Cannot connect to virtual machine by using RDP or SSH", + "severity": "moderate", + "productionOutage": false, + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "technicalTicketDetails": { + "resourceId": "/subscriptions/subid/resourceGroups/test/providers/Microsoft.Compute/virtualMachines/testserver" + }, + "serviceLevelAgreement": { + "startTime": "2018-03-20T21:36:18Z", + "expirationTime": "2018-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/virtual_machine_service_guid", + "serviceDisplayName": "Virtual Machine running Linux", + "status": "Open", + "createdDate": "2018-03-20T21:36:18Z", + "modifiedDate": "2018-03-20T21:36:23Z" + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket2", + "name": "testticket2", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "118032014183771", + "description": "This is a test - please ignore", + "problemClassificationId": "/providers/Microsoft.Support/services/subscription_management_service_guid/problemClassifications/problemClassification_guid", + "problemClassificationDisplayName": "Add or Edit VAT, TAX ID, or PO Number", + "severity": "minimal", + "productionOutage": false, + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "USA", + "preferredSupportLanguage": "en-US" + }, + "serviceLevelAgreement": { + "startTime": "2018-03-20T21:36:18Z", + "expirationTime": "2018-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportPlanType": "Premier", + "title": "Test - please ignore", + "serviceId": "/providers/Microsoft.Support/services/subscription_management_service_guid", + "serviceDisplayName": "Subscription management", + "status": "Open", + "createdDate": "2018-03-20T21:36:18Z", + "modifiedDate": "2018-03-20T21:36:23Z" + } + } + ] + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/ListWebCommunicationsForSubscriptionSupportTicket.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/ListWebCommunicationsForSubscriptionSupportTicket.json new file mode 100644 index 000000000000..fb0f6506cb86 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/ListWebCommunicationsForSubscriptionSupportTicket.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "$filter": "communicationType eq 'web'", + "api-version": "2019-05-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket/communications/testmessage1", + "name": "testmessage1", + "type": "Microsoft.Support/communications", + "properties": { + "subject": "this is a test message", + "body": "this is a test message", + "communicationType": "web", + "communicationDirection": "outbound", + "sender": "user@contoso.com", + "createdDate": "2016-08-24T20:18:19Z" + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket/communications/testmessage2", + "name": "testmessage2", + "type": "Microsoft.Support/communications", + "properties": { + "subject": "test", + "body": "test", + "communicationType": "web", + "communicationDirection": "outbound", + "sender": "user@contoso.com", + "createdDate": "2016-08-29T10:53:19Z" + } + } + ] + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/ListWebCommunicationsForSubscriptionSupportTicketCreatedOnOrAfter.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/ListWebCommunicationsForSubscriptionSupportTicketCreatedOnOrAfter.json new file mode 100644 index 000000000000..4df10454017d --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/ListWebCommunicationsForSubscriptionSupportTicketCreatedOnOrAfter.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "$filter": "communicationType eq 'web' and createdDate ge 2019-12-10T22:08:51Z", + "api-version": "2019-05-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket/communications/testmessage1", + "name": "testmessage1", + "type": "Microsoft.Support/communications", + "properties": { + "subject": "this is a test message", + "body": "this is a test message", + "communicationType": "web", + "communicationDirection": "outbound", + "sender": "user@contoso.com", + "createdDate": "2019-06-24T20:18:19Z" + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket/communications/testmessage2", + "name": "testmessage2", + "type": "Microsoft.Support/communications", + "properties": { + "subject": "test", + "body": "test", + "communicationType": "web", + "communicationDirection": "outbound", + "sender": "user@contoso.com", + "createdDate": "2019-08-29T10:53:19Z" + } + } + ] + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/UpdateSupportTicketForSubscription.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/UpdateSupportTicketForSubscription.json index fc4ec20aaebe..f2bca05332fe 100644 --- a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/UpdateSupportTicketForSubscription.json +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/examples/UpdateSupportTicketForSubscription.json @@ -1,6 +1,6 @@ { "parameters": { - "subscriptionId": "76cb77fa-8b17-4eab-9493-b65dace99813", + "subscriptionId": "subid", "supportTicketName": "testticket", "api-version": "2019-05-01-preview", "updateSupportTicket": { @@ -24,16 +24,16 @@ "responses": { "200": { "body": { - "id": "/subscriptions/76cb77fa-8b17-4eab-9493-b65dace99813/providers/Microsoft.Support/supportTickets/testticket", + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", "name": "testticket", "type": "Microsoft.Support/supportTickets", "properties": { "supportTicketId": "118032014183770", "description": "This is a test - please ignore", - "problemClassificationId": "/providers/Microsoft.Support/services/f3dc5421-79ef-1efa-41a5-42bf3cbb52c6/problemClassifications/6abdbef4-3c18-3ce7-4354-03018676ec14", + "problemClassificationId": "/providers/Microsoft.Support/services/subscription_management_service_guid/problemClassifications/problemClassification_guid", "problemClassificationDisplayName": "Add or Edit VAT, TAX ID, or PO Number", "severity": "critical", - "productionOutage": false, + "productionOutage": false, "require24X7Response": false, "contactDetails": { "firstName": "abc", @@ -51,7 +51,7 @@ }, "supportPlanType": "Premier", "title": "Test - please ignore", - "serviceId": "/providers/Microsoft.Support/services/f3dc5421-79ef-1efa-41a5-42bf3cbb52c6", + "serviceId": "/providers/Microsoft.Support/services/subscription_management_service_guid", "serviceDisplayName": "Subscription management", "status": "Open", "createdDate": "2018-03-20T21:36:18Z", @@ -61,4 +61,3 @@ } } } - diff --git a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/support.json b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/support.json index 9359a4ea1afb..7f5478e7d80c 100644 --- a/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/support.json +++ b/specification/support/resource-manager/Microsoft.Support/preview/2019-05-01-preview/support.json @@ -1,1464 +1,1512 @@ { - "swagger": "2.0", - "info": { - "version": "2019-05-01-preview", - "title": "Microsoft.Support", - "description": "Microsoft Azure Support Resource Provider." - }, - "host": "management.azure.com", - "schemes": [ - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "security": [ - { - "azure_auth": [ - "user_impersonation" - ] - } - ], - "securityDefinitions": { - "azure_auth": { - "flow": "implicit", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", - "scopes": { - "user_impersonation": "impersonate your user account" - }, - "type": "oauth2", - "description": "Azure Active Directory OAuth2 Flow" + "swagger": "2.0", + "info": { + "version": "2019-05-01-preview", + "title": "Microsoft.Support", + "description": "Microsoft Azure Support Resource Provider." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "paths": { + "/providers/Microsoft.Support/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "This lists all the available Microsoft Support REST API operations.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved list of operations.", + "schema": { + "$ref": "#/definitions/OperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Get all operations": { + "$ref": "./examples/ListOperations.json" + } } + } }, - "paths": { - "/providers/Microsoft.Support/operations": { - "get": { - "tags": [ - "Operations" - ], - "summary": "Lists all the available operations", - "description": "This lists all the available Microsoft Support REST API operations.", - "operationId": "Operations_List", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Successfully retrieved list of operations.", - "schema": { - "$ref": "#/definitions/OperationsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ExceptionResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": null - }, - "x-ms-examples": { - "ListOperations": { - "$ref": "./examples/ListOperations.json" - } - } + "/providers/Microsoft.Support/services": { + "get": { + "tags": [ + "Services" + ], + "description": "Lists all the Azure services available for support ticket creation. Here are the Service Ids for **Billing**, **Subscription Management**, and **Service and subscription limits (Quotas)** issues:
    Issue typeService Id
    Billing'/providers/Microsoft.Support/services/517f2da6-78fd-0498-4e22-ad26996b1dfc'
    Subscription Management'/providers/Microsoft.Support/services/f3dc5421-79ef-1efa-41a5-42bf3cbb52c6'
    Quota'/providers/Microsoft.Support/services/06bfd9d3-516b-d5c6-5802-169c800dec89'


    For **Technical** issues, select the Service Id that maps to the Azure service/product as displayed in the **Services** drop-down list on the Azure portal's New support request page.

    Always use the service and it's corresponding problem classification(s) obtained programmatically for support ticket creation. This practice ensures that you always have the most recent set of service and problem classification Ids.", + "operationId": "Services_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved list of Azure services available for support.", + "schema": { + "$ref": "#/definitions/ServicesListResult" } - }, - "/providers/Microsoft.Support/services": { - "get": { - "tags": [ - "Services" - ], - "summary": "List all the Azure services available for support.", - "description": "List all the Azure services available for support. This includes **Billing**, **Subscription Management**, **Service and subscription limits (quotas)** and all **technical** services. User must provide the id of the Azure service when creating a support ticket.
    For Billing, the id is '/providers/Microsoft.Support/services/517f2da6-78fd-0498-4e22-ad26996b1dfc'.
    For Subscription Management, the id is '/providers/Microsoft.Support/services/f3dc5421-79ef-1efa-41a5-42bf3cbb52c6'.
    For Quota, the id is '/providers/Microsoft.Support/services/06bfd9d3-516b-d5c6-5802-169c800dec89' and rest of the ids are for technical services.", - "operationId": "Services_List", - "parameters": [ - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Successfully retrieved list of Azure services available for support.", - "schema": { - "$ref": "#/definitions/ServicesListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ExceptionResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": null - }, - "x-ms-examples": { - "ListServices": { - "$ref": "./examples/ListServices.json" - } - } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" } + } }, - "/providers/Microsoft.Support/services/{serviceName}": { - "get": { - "tags": [ - "Services" - ], - "description": "Gets a specific Azure service available for support.", - "operationId": "Services_Get", - "parameters": [ - { - "name": "serviceName", - "in": "path", - "description": "Name of Azure service available for support", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Successfully retrieved Azure service available for support.", - "schema": { - "$ref": "#/definitions/Service" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ExceptionResponse" - } - } - }, - "x-ms-examples": { - "GetService": { - "$ref": "./examples/GetService.json" - } - } - } + "x-ms-pageable": { + "nextLinkName": null }, - "/providers/Microsoft.Support/services/{serviceName}/problemClassifications": { - "get": { - "tags": [ - "ProblemClassifications" - ], - "description": "Lists all the problem classifications available for a specific Azure service.", - "operationId": "ProblemClassifications_List", - "parameters": [ - { - "name": "serviceName", - "in": "path", - "description": "Name of Azure service available for support for which all the problem classifications will be retrieved.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Successfully retrieved list of problem classifications for the specified Azure service.", - "schema": { - "$ref": "#/definitions/ProblemClassificationsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ExceptionResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": null - }, - "x-ms-examples": { - "ListProblemClassificationsForService": { - "$ref": "./examples/ListProblemClassifications.json" - } - } + "x-ms-examples": { + "Gets list of services for which a support ticket can be created": { + "$ref": "./examples/ListServices.json" + } + } + } + }, + "/providers/Microsoft.Support/services/{serviceName}": { + "get": { + "tags": [ + "Services" + ], + "description": "Gets a specific Azure service for support ticket creation.", + "operationId": "Services_Get", + "parameters": [ + { + "name": "serviceName", + "in": "path", + "description": "Name of Azure service", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved Azure service for support ticket creation.", + "schema": { + "$ref": "#/definitions/Service" } - }, - "/providers/Microsoft.Support/services/{serviceName}/problemClassifications/{problemClassificationName}": { - "get": { - "tags": [ - "ProblemClassifications" - ], - "description": "Gets the details of a specific problem classification for a specific Azure service.", - "operationId": "ProblemClassifications_Get", - "parameters": [ - { - "name": "serviceName", - "in": "path", - "description": "Name of Azure service available for support.", - "required": true, - "type": "string" - }, - { - "name": "problemClassificationName", - "in": "path", - "description": "Name of problem classification.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Successfully retrieved problem classification details.", - "schema": { - "$ref": "#/definitions/ProblemClassification" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ExceptionResponse" - } - } - }, - "x-ms-examples": { - "GetIssueClassification": { - "$ref": "./examples/GetProblemClassification.json" - } - } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" } + } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Support/checkNameAvailability": { - "post": { - "tags": [ - "CheckNameAvailabilityWithSubscription" - ], - "description": "Check the availability of a resource name.", - "operationId": "CheckNameAvailabilityWithSubscription", - "x-ms-examples": { - "CheckNameAvailabilityWithSubscription": { - "$ref": "./examples/CheckNameAvailabilityWithSubscription.json" - } - }, - "parameters": [ - { - "name": "checkNameAvailabilityInput", - "in": "body", - "description": "Input to check.", - "required": true, - "schema": { - "$ref": "#/definitions/CheckNameAvailabilityInput" - } - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/CheckNameAvailabilityOutput" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ExceptionResponse" - } - } - } + "x-ms-examples": { + "Gets details of Azure service": { + "$ref": "./examples/GetService.json" + } + } + } + }, + "/providers/Microsoft.Support/services/{serviceName}/problemClassifications": { + "get": { + "tags": [ + "ProblemClassifications" + ], + "description": "Lists all the problem classifications (categories) available for a specific Azure service.

    Always use the service and problem classifications obtained programmatically. This practice ensures that you always have the most recent set of service and problem classification Ids.", + "operationId": "ProblemClassifications_List", + "parameters": [ + { + "name": "serviceName", + "in": "path", + "description": "Name of Azure service for which the problem classifications need to be retrieved.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved list of problem classifications for the specified Azure service.", + "schema": { + "$ref": "#/definitions/ProblemClassificationsListResult" } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Support/supportTickets": { - "get": { - "tags": [ - "SupportTickets" - ], - "description": "Lists all the support tickets for an Azure subscription. Support tickets older than 6 months cannot be retrieved using this API.", - "operationId": "SupportTickets_ListBySubscription", - "parameters": [ - { - "name": "$top", - "in": "query", - "description": "The number of values to return in the collection. Default is 25 and max is 100.", - "required": false, - "type": "integer" - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Successfully retrieved support tickets.", - "schema": { - "$ref": "#/definitions/SupportTicketsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ExceptionResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "ListSupportTicketsBySubscription": { - "$ref": "./examples/ListSupportTicketsBySubscription.json" - } - } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" } + } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Support/supportTickets/{supportTicketName}": { - "get": { - "tags": [ - "SupportTickets" - ], - "description": "Gets details of a specific support ticket in an Azure subscription.", - "operationId": "SupportTickets_GetBySubscription", - "parameters": [ - { - "name": "supportTicketName", - "in": "path", - "description": "Support ticket name.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Successfully retrieved support ticket.", - "schema": { - "$ref": "#/definitions/SupportTicketDetails" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ExceptionResponse" - } - } - }, - "x-ms-examples": { - "GetSubscriptionSupportTicketDetails": { - "$ref": "./examples/GetSubscriptionSupportTicketDetails.json" - } - } - }, - "patch": { - "tags": [ - "SupportTickets" - ], - "description": "Updates the support ticket.", - "operationId": "SupportTicketSubscription_Update", - "parameters": [ - { - "name": "supportTicketName", - "in": "path", - "description": "Support ticket name.", - "required": true, - "type": "string" - }, - { - "name": "updateSupportTicket", - "in": "body", - "description": "UpdateSupportTicket object.", - "required": true, - "schema": { - "$ref": "#/definitions/UpdateSupportTicket" - } - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Successfully updated support ticket.", - "schema": { - "$ref": "#/definitions/SupportTicketDetails" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ExceptionResponse" - } - } - }, - "x-ms-examples": { - "UpdateSupportTicketForSubscription": { - "$ref": "./examples/UpdateSupportTicketForSubscription.json" - } - } - }, - "put": { - "tags": [ - "SupportTickets" - ], - "summary": "Creates a support ticket for a subscription.", - "description": "A paid support plan is required to use this API to create a support ticket. Users can create tickets for issues relating to Billing, Subscription Management, Quota or any of the supported Azure technical services as indicated by the 'serviceId' in the request.

    **Billing tickets**
    For billing issues, user must set *serviceId* to *'/providers/Microsoft.Support/services/517f2da6-78fd-0498-4e22-ad26996b1dfc'*.

    **Subscription Management tickets**
    For issues relating to subscription management, *serviceId* should be set to *'/providers/Microsoft.Support/services/f3dc5421-79ef-1efa-41a5-42bf3cbb52c6'*.

    **Technical tickets**
    For technical support ticket, user must set *serviceId* to one of the technical service ids and must provide additional information in TechnicalScopingInformation.
    Users must also provide problemClassificationId when creating a support ticket.
    ", - "operationId": "CreateSupportTicketForSubscription", - "parameters": [ - { - "name": "supportTicketName", - "in": "path", - "description": "Support ticket name.", - "required": true, - "type": "string" - }, - { - "name": "createSupportTicketParameters", - "in": "body", - "description": "Support ticket request payload.", - "required": true, - "schema": { - "$ref": "#/definitions/SupportTicketDetails" - } - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - SupportTicket created successfully", - "schema": { - "$ref": "#/definitions/SupportTicketDetails" - } - }, - "202": { - "description": "Accepted, SupportTicket will be created asynchronously" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ExceptionResponse" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "azure-async-operation" - }, - "x-ms-examples": { - "Create a ticket for Billing related issues": { "$ref": "./examples/CreateBillingSupportTicketForSubscription.json" }, - "Create a ticket for Subscription Management related issues": { "$ref": "./examples/CreateSubMgmtSupportTicketForSubscription.json" }, - "Create a ticket for Technical issue related to a specific resource": { "$ref": "./examples/CreateTechnicalSupportTicketForSubscription.json" }, - "Create a ticket to request Quota increase for cores": { "$ref": "./examples/CreateCoresQuotaTicketForSubscription.json" } - } - } + "x-ms-pageable": { + "nextLinkName": null }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Support/supportTickets/{supportTicketName}/checkNameAvailability": { - "post": { - "tags": [ - "CheckNameAvailabilityForSupportTicketCommunication" - ], - "description": "Check the availability of a resource name.", - "operationId": "CheckNameAvailabilityForSupportTicketCommunication", - "x-ms-examples": { - "CheckNameAvailabilityWithSubscription": { - "$ref": "./examples/CheckNameAvailabilityForSupportTicketCommunication.json" - } - }, - "parameters": [ - { - "name": "supportTicketName", - "in": "path", - "description": "Support ticket name.", - "required": true, - "type": "string" - }, - { - "name": "checkNameAvailabilityInput", - "in": "body", - "description": "Input to check.", - "required": true, - "schema": { - "$ref": "#/definitions/CheckNameAvailabilityInput" - } - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/CheckNameAvailabilityOutput" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ExceptionResponse" - } - } - } + "x-ms-examples": { + "Gets list of problemClassifications for a service for which a support ticket can be created": { + "$ref": "./examples/ListProblemClassifications.json" + } + } + } + }, + "/providers/Microsoft.Support/services/{serviceName}/problemClassifications/{problemClassificationName}": { + "get": { + "tags": [ + "ProblemClassifications" + ], + "description": "Gets the details of a specific problem classification for a specific Azure service.", + "operationId": "ProblemClassifications_Get", + "parameters": [ + { + "name": "serviceName", + "in": "path", + "description": "Name of Azure service available for support.", + "required": true, + "type": "string" + }, + { + "name": "problemClassificationName", + "in": "path", + "description": "Name of problem classification.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved problem classification details.", + "schema": { + "$ref": "#/definitions/ProblemClassification" } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Support/supportTickets/{supportTicketName}/communications": { - "get": { - "tags": [ - "Communications" - ], - "description": "Lists all communications for a support ticket.", - "operationId": "Communications_ListBySubscriptionTicket", - "parameters": [ - { - "name": "supportTicketName", - "in": "path", - "description": "Support ticket name.", - "required": true, - "type": "string" - }, - { - "name": "$top", - "in": "query", - "description": "The number of values to return in the collection. Default is 10 and max is 10.", - "required": false, - "type": "integer" - }, - { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "The filter to apply on the operation." - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Successfully retrieved communications for a support ticket.", - "schema": { - "$ref": "#/definitions/CommunicationsListResult" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ExceptionResponse" - } - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "x-ms-examples": { - "ListCommunicationsForSubscriptionSupportTicket": { - "$ref": "./examples/ListCommunicationsForSubscriptionSupportTicket.json" - } - } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" } + } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Support/supportTickets/{supportTicketName}/communications/{communicationName}": { - "get": { - "tags": [ - "Communications" - ], - "description": "Gets details of a specific communication.", - "operationId": "Communications_GetBySubscriptionTicket", - "parameters": [ - { - "name": "supportTicketName", - "in": "path", - "description": "Support ticket name.", - "required": true, - "type": "string" - }, - { - "name": "communicationName", - "in": "path", - "description": "Communication name.", - "required": true, - "type": "string" - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "Successfully retrieved communication details.", - "schema": { - "$ref": "#/definitions/CommunicationDetails" - } - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ExceptionResponse" - } - } - }, - "x-ms-examples": { - "GetCommunicationDetailsForSubscriptionSupportTicket": { - "$ref": "./examples/GetCommunicationDetailsForSubscriptionSupportTicket.json" - } - } - }, - "put": { - "tags": [ - "Communications" - ], - "description": "Creates a support ticket communication.", - "operationId": "CreateSupportTicketCommunication", - "parameters": [ - { - "name": "supportTicketName", - "in": "path", - "description": "Support ticket name.", - "required": true, - "type": "string" - }, - { - "name": "communicationName", - "in": "path", - "description": "Communication name.", - "required": true, - "type": "string" - }, - { - "name": "createCommunicationParameters", - "in": "body", - "description": "Communication object.", - "required": true, - "schema": { - "$ref": "#/definitions/CommunicationDetails" - } - }, - { - "$ref": "#/parameters/SubscriptionIdParameter" - }, - { - "$ref": "#/parameters/ApiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK - Communication created successfully.", - "schema": { - "$ref": "#/definitions/CommunicationDetails" - } - }, - "202": { - "description": "Accepted, Communication will be created asynchronously" - }, - "default": { - "description": "Error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/ExceptionResponse" - } - } - }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "azure-async-operation" - }, - "x-ms-examples": { - "AddCommunicationToSubscriptionTicket": { - "$ref": "./examples/CreateSupportTicketCommunication.json" - } - } + "x-ms-examples": { + "Gets details of problemClassification for Azure service": { + "$ref": "./examples/GetProblemClassification.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Support/checkNameAvailability": { + "post": { + "tags": [ + "SupportTickets" + ], + "description": "Check the availability of a resource name. This API should to be used to check the uniqueness of the name for support ticket creation for the selected subscription.", + "operationId": "SupportTickets_CheckNameAvailability", + "x-ms-examples": { + "Checks whether name is available for SupportTicket resource": { + "$ref": "./examples/CheckNameAvailabilityWithSubscription.json" + } + }, + "parameters": [ + { + "name": "checkNameAvailabilityInput", + "in": "body", + "description": "Input to check.", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityInput" } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityOutput" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } } + } }, - "definitions": { - "OperationsListResult": { - "description": "The list of operations supported by Microsoft Support resource provider.", - "properties": { - "value": { - "description": "The list of operations supported by Microsoft Support resource provider.", - "type": "array", - "items": { - "$ref": "#/definitions/Operation" - } - } + "/subscriptions/{subscriptionId}/providers/Microsoft.Support/supportTickets": { + "get": { + "tags": [ + "SupportTickets" + ], + "description": "Lists all the support tickets for an Azure subscription.

    You can also filter the support tickets by Status or CreatedDate using the $filter parameter. Output will be a paged result with nextLink, using which you can retrieve the next set of support tickets.

    Support ticket data is available for 12 months after ticket creation. If a ticket was created more than 12 months ago, a request for data might cause an error.", + "operationId": "SupportTickets_List", + "parameters": [ + { + "name": "$top", + "in": "query", + "description": "The number of values to return in the collection. Default is 25 and max is 100.", + "required": false, + "type": "integer" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. We support 'odata v4.0' filter semantics. Learn more
    Status filter can only be used with 'eq' operator. For CreatedDate filter, the supported operators are 'gt' and 'ge'. When using both filters, combine them using the logical 'AND'." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved support tickets.", + "schema": { + "$ref": "#/definitions/SupportTicketsListResult" } - }, - "Operation": { - "description": "The operation supported by Microsoft Support RP.", - "type": "object", - "properties": { - "name": { - "description": "Operation name: {provider}/{resource}/{operation}", - "type": "string", - "readOnly": true - }, - "display": { - "description": "The object that describes the operation.", - "properties": { - "description": { - "description": "The description of the operation.", - "type": "string", - "readOnly": true - }, - "operation": { - "description": "The action that users can perform, based on their permission level.", - "type": "string", - "readOnly": true - }, - "provider": { - "description": "Service provider: Microsoft Support.", - "type": "string", - "readOnly": true - }, - "resource": { - "description": "Resource on which the operation is performed.", - "type": "string", - "readOnly": true - } - } - } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" } + } }, - "ServicesListResult": { - "description": "Object that represents a collection of Service resources.", - "type": "object", - "properties": { - "value": { - "description": "List of Service resources.", - "type": "array", - "items": { - "$ref": "#/definitions/Service" - } - } - } + "x-ms-pageable": { + "nextLinkName": "nextLink" }, - "Service": { - "description": "Object that represents a Service resource.", - "type": "object", - "properties": { - "id": { - "description": "Id of the resource.", - "type": "string", - "readOnly": true - }, - "name": { - "description": "Name of the resource.", - "type": "string", - "readOnly": true - }, - "type": { - "description": "Type of the resource 'Microsoft.Support/services'.", - "type": "string", - "readOnly": true - }, - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/ServiceProperties", - "description": "Properties of the resource." - } + "x-ms-examples": { + "List support tickets for a subscription": { + "$ref": "./examples/ListSupportTicketsBySubscription.json" + }, + "List support tickets in open state for a subscription": { + "$ref": "./examples/ListSupportTicketsInOpenStateBySubscription.json" + }, + "List support tickets created on or after a certain date and in open state for a subscription": { + "$ref": "./examples/ListSupportTicketsCreatedOnOrAfterAndInOpenStateBySubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Support/supportTickets/{supportTicketName}": { + "get": { + "tags": [ + "SupportTickets" + ], + "description": "Gets details for a specific support ticket in an Azure subscription.

    Support ticket data is available for 12 months after ticket creation. If a ticket was created more than 12 months ago, a request for data might cause an error.", + "operationId": "SupportTickets_Get", + "parameters": [ + { + "name": "supportTicketName", + "in": "path", + "description": "Support ticket name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved support ticket.", + "schema": { + "$ref": "#/definitions/SupportTicketDetails" } - }, - "ServiceProperties": { - "description": "Details about Azure service available for support.", - "type": "object", - "properties": { - "displayName": { - "description": "Localized name of Azure service.", - "type": "string" - } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" } + } }, - "ProblemClassificationsListResult": { - "description": "Object that represents a collection of ProblemClassification resources.", - "type": "object", - "properties": { - "value": { - "description": "List of ProblemClassification resources.", - "type": "array", - "items": { - "$ref": "#/definitions/ProblemClassification" - } - } + "x-ms-examples": { + "Get details of a subscription ticket": { + "$ref": "./examples/GetSubscriptionSupportTicketDetails.json" + } + } + }, + "patch": { + "tags": [ + "SupportTickets" + ], + "description": "This API allows you to update the severity level or your contact information in the support ticket.

    Note: The severity levels cannot be changed if a support ticket is actively being worked upon by an Azure support engineer. In such a case, contact your support engineer to request severity update by adding a new communication using the Communications API.", + "operationId": "SupportTickets_Update", + "parameters": [ + { + "name": "supportTicketName", + "in": "path", + "description": "Support ticket name", + "required": true, + "type": "string" + }, + { + "name": "updateSupportTicket", + "in": "body", + "description": "UpdateSupportTicket object", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateSupportTicket" } - }, - "ProblemClassification": { - "description": "Object that represents a ProblemClassification resource.", - "type": "object", - "properties": { - "id": { - "description": "Id of the resource.", - "type": "string", - "readOnly": true - }, - "name": { - "description": "Name of the resource.", - "type": "string", - "readOnly": true - }, - "type": { - "description": "Type of the resource 'Microsoft.Support/problemClassification'.", - "type": "string", - "readOnly": true - }, - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/ProblemClassificationProperties", - "description": "Properties of the resource." - } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated support ticket.", + "schema": { + "$ref": "#/definitions/SupportTicketDetails" } - }, - "ProblemClassificationProperties": { - "description": "Details about a problem classification available for an Azure service.", - "type": "object", - "properties": { - "displayName": { - "description": "Localized name of problem classification.", - "type": "string" - } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" } + } }, - "CheckNameAvailabilityInput": { - "description": "Input of CheckNameAvailability API.", - "type": "object", - "required": [ - "name", - "type" - ], - "properties": { - "name": { - "description": "The resource name to validate.", - "type": "string" - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.Support/supportTickets", - "Microsoft.Support/communications" - ], - "x-ms-enum": { - "name": "Type", - "modelAsString": false - }, - "description": "The type of resource." - } + "x-ms-examples": { + "UpdateSupportTicketForSubscription": { + "$ref": "./examples/UpdateSupportTicketForSubscription.json" + } + } + }, + "put": { + "tags": [ + "SupportTickets" + ], + "description": "Creates a new support ticket for Quota increase, Technical, Billing, and Subscription Management issues for the specified subscription.

    A paid technical support plan is required to create a support ticket using this API. Learn more

    Use the Services API to map the right Service Id to the issue type. For example: For billing tickets set *serviceId* to *'/providers/Microsoft.Support/services/517f2da6-78fd-0498-4e22-ad26996b1dfc'*.
    For Technical issues, the Service id will map to the Azure service you want to raise a support ticket for.

    Always call the Services and ProblemClassifications API to get the most recent set of services and problem categories required for support ticket creation.", + "operationId": "SupportTickets_Create", + "parameters": [ + { + "name": "supportTicketName", + "in": "path", + "description": "Support ticket name.", + "required": true, + "type": "string" + }, + { + "name": "createSupportTicketParameters", + "in": "body", + "description": "Support ticket request payload.", + "required": true, + "schema": { + "$ref": "#/definitions/SupportTicketDetails" } - }, - "CheckNameAvailabilityOutput": { - "description": "Output of check name availability API.", - "type": "object", - "properties": { - "nameAvailable": { - "description": "Indicates whether the name is available.", - "readOnly": true, - "type": "boolean" - }, - "reason": { - "description": "The reason why the name is not available.", - "readOnly": true, - "type": "string" - }, - "message": { - "description": "The detailed error message describing why the name is not available.", - "readOnly": true, - "type": "string" - } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - SupportTicket created successfully", + "schema": { + "$ref": "#/definitions/SupportTicketDetails" } - }, - "SupportTicketsListResult": { - "description": "Object that represents a collection of SupportTicket resources.", - "type": "object", - "properties": { - "value": { - "description": "List of SupportTicket resources.", - "type": "array", - "items": { - "$ref": "#/definitions/SupportTicketDetails" - } - }, - "nextLink": { - "description": "The URI to fetch the next page of SupportTicket resources.", - "type": "string" - } + }, + "202": { + "description": "Accepted, SupportTicket will be created asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" } + } }, - "SupportTicketDetails": { - "x-ms-azure-resource": true, - "description": "Object that represents SupportTicketDetails resource", - "type": "object", - "properties": { - "id": { - "description": "Id of the resource", - "type": "string", - "readOnly": true - }, - "name": { - "description": "Name of the resource", - "type": "string", - "readOnly": true - }, - "type": { - "description": "Type of the resource 'Microsoft.Support/supportTickets", - "type": "string", - "readOnly": true - }, - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/SupportTicketDetailsProperties", - "description": "Properties of the resource" - } - } + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" }, - "CommunicationsListResult": { - "description": "Object that represents a collection of Communication resources.", - "type": "object", - "properties": { - "value": { - "description": "List of Communication resources.", - "type": "array", - "items": { - "$ref": "#/definitions/CommunicationDetails" - } - }, - "nextLink": { - "description": "The URI to fetch the next page of Communication resources.", - "type": "string" - } - } + "x-ms-examples": { + "Create a ticket for Billing related issues": { + "$ref": "./examples/CreateBillingSupportTicketForSubscription.json" + }, + "Create a ticket for Subscription Management related issues": { + "$ref": "./examples/CreateSubMgmtSupportTicketForSubscription.json" + }, + "Create a ticket for Technical issue related to a specific resource": { + "$ref": "./examples/CreateTechnicalSupportTicketForSubscription.json" + }, + "Create a ticket to request Quota increase for Compute VM Cores": { + "$ref": "./examples/CreateCoresQuotaTicketForSubscription.json" + }, + "Create a ticket to request Quota increase for Low-priority cores for a Batch account": { + "$ref": "./examples/CreateBatchQuotaTicketForSpecificBatchAccountForLowPriorityCores.json" + }, + "Create a ticket to request Quota increase for specific VM family cores for a Batch account": { + "$ref": "./examples/CreateBatchQuotaTicketForSpecificBatchAccountForDedicatedCores.json" + }, + "Create a ticket to request Quota increase for Pools for a Batch account": { + "$ref": "./examples/CreateBatchQuotaTicketForSpecificBatchAccountForPools.json" + }, + "Create a ticket to request Quota increase for Active Jobs and Job Schedules for a Batch account": { + "$ref": "./examples/CreateBatchQuotaTicketForSpecificBatchAccountForActiveJobs.json" + }, + "Create a ticket to request Quota increase for number of Batch accounts for a subscription": { + "$ref": "./examples/CreateBatchQuotaTicketForSubscription.json" + }, + "Create a ticket to request Quota increase for DTUs for SQL Database": { + "$ref": "./examples/CreateSqlDatabaseQuotaTicketForDTUs.json" + }, + "Create a ticket to request Quota increase for Servers for SQL Database": { + "$ref": "./examples/CreateSqlDatabaseQuotaTicketForServers.json" + }, + "Create a ticket to request Quota increase for DTUs for SQL Data Warehouse": { + "$ref": "./examples/CreateSqlDatawarehouseQuotaTicketForDTUs.json" + }, + "Create a ticket to request Quota increase for Servers for SQL Data Warehouse": { + "$ref": "./examples/CreateSqlDatawarehouseQuotaTicketForServers.json" + }, + "Create a ticket to request Quota increase for specific VM family cores for Machine Learning service": { + "$ref": "./examples/CreateMachineLearningQuotaTicketForDedicatedCores.json" + }, + "Create a ticket to request Quota increase for Low-priority cores for Machine Learning service": { + "$ref": "./examples/CreateMachineLearningQuotaTicketForLowPriorityCores.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Support/supportTickets/{supportTicketName}/checkNameAvailability": { + "post": { + "tags": [ + "Communications" + ], + "description": "Check the availability of a resource name. This API should to be used to check the uniqueness of the name for adding a new communication to the support ticket.", + "operationId": "Communications_CheckNameAvailability", + "x-ms-examples": { + "Checks whether name is available for Communication resource": { + "$ref": "./examples/CheckNameAvailabilityForSupportTicketCommunication.json" + } }, - "CommunicationDetails": { - "x-ms-azure-resource": true, - "description": "Object that represents Communication resource", - "type": "object", - "properties": { - "id": { - "description": "Id of the resource", - "type": "string", - "readOnly": true - }, - "name": { - "description": "Name of the resource", - "type": "string", - "readOnly": true - }, - "type": { - "description": "Type of the resource 'Microsoft.Support/communications", - "type": "string", - "readOnly": true - }, - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/CommunicationDetailsProperties", - "description": "Properties of the resource" - } + "parameters": [ + { + "name": "supportTicketName", + "in": "path", + "description": "Support ticket name", + "required": true, + "type": "string" + }, + { + "name": "checkNameAvailabilityInput", + "in": "body", + "description": "Input to check", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityInput" } - }, - "CommunicationDetailsProperties": { - "description": "Describes the properties of a communication resource.", - "required": [ - "subject", - "body" - ], - "type": "object", - "properties": { - "communicationType": { - "description": "Communication type.", - "enum": [ - "web", - "phone" - ], - "type": "string", - "x-ms-enum": { - "name": "CommunicationType", - "modelAsString": true - }, - "readOnly": true - }, - "communicationDirection": { - "description": "Direction of communication.", - "enum": [ - "inbound", - "outbound" - ], - "type": "string", - "x-ms-enum": { - "name": "CommunicationDirection", - "modelAsString": true - }, - "readOnly": true - }, - "sender": { - "description": "Sender of the communication.", - "type": "string" - }, - "subject": { - "description": "Subject of the communication.", - "type": "string" - }, - "body": { - "description": "Body of the communication.", - "type": "string" - }, - "createdDate": { - "format": "date-time", - "description": "Time in UTC (ISO 8601 format) when the communication was created.", - "type": "string", - "readOnly": true - } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityOutput" } - }, - "SupportTicketDetailsProperties": { - "description": "Describes the properties of a support ticket.", - "required": [ - "serviceId", - "title", - "description", - "problemClassificationId", - "severity", - "contactDetails" - ], - "type": "object", - "properties": { - "supportTicketId": { - "description": "System generated support ticket name.", - "type": "string" - }, - "description": { - "description": "Description of the support ticket.", - "type": "string" - }, - "problemClassificationId": { - "description": "This is the resource id of ProblemClassification resource associated with the support ticket. This is the issue or the problem that the support ticket is opened for.", - "type": "string" - }, - "problemClassificationDisplayName": { - "type": "string", - "description": "Localized name of problem classification.", - "readOnly": true - }, - "severity": { - "description": "Severity of the support ticket.", - "enum": [ - "minimal", - "moderate", - "critical" - ], - "type": "string", - "x-ms-enum": { - "name": "SeverityLevel", - "modelAsString": true - } - }, - "enrollmentId": { - "description": "Enrollment ID associated with the support ticket.", - "type": "string", - "readOnly": true - }, - "productionOutage": { - "description": "Indicates if this is a production outage.", - "type": "boolean", - "readOnly": true - }, - "require24X7Response": { - "description": "Indicates if this is a 24x7 support ticket.", - "type": "boolean" - }, - "contactDetails": { - "$ref": "#/definitions/ContactProfile", - "description": "User information associated with the support ticket." - }, - "serviceLevelAgreement": { - "$ref": "#/definitions/ServiceLevelAgreement", - "description": "Service Level Agreement information for this support ticket." - }, - "supportEngineer": { - "$ref": "#/definitions/SupportEngineer", - "description": "Information about support engineer working on this support ticket." - }, - "supportPlanType": { - "description": "Support plan type associated with the support ticket.", - "type": "string", - "readOnly": true - }, - "title": { - "description": "Title of the support ticket.", - "type": "string" - }, - "problemStartTime": { - "format": "date-time", - "description": "Time in UTC (ISO 8601 format) when the problem started.", - "type": "string" - }, - "serviceId": { - "description": "This is the resource id of Service resource associated with the support ticket. This is the Azure service for which the support ticket was opened.", - "type": "string" - }, - "serviceDisplayName": { - "type": "string", - "description": "Localized name of Azure service.", - "readOnly": true - }, - "status": { - "description": "Status of the support ticket.", - "type": "string", - "readOnly": true - }, - "createdDate": { - "format": "date-time", - "description": "Time in UTC (ISO 8601 format) when support ticket was created.", - "type": "string", - "readOnly": true - }, - "modifiedDate": { - "format": "date-time", - "description": "Time in UTC (ISO 8601 format) when support ticket was last modified.", - "type": "string", - "readOnly": true - }, - "technicalTicketDetails": { - "$ref": "#/definitions/TechnicalTicketDetails", - "description": "Additional ticket details associated with a technical support ticket request. " - }, - "quotaTicketDetails": { - "$ref": "#/definitions/QuotaTicketDetails", - "description": "Additional ticket details associated with a quota support ticket request. " - } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Support/supportTickets/{supportTicketName}/communications": { + "get": { + "tags": [ + "Communications" + ], + "description": "Lists all communications (attachments not included) for a support ticket.

    You can also filter support ticket communications by CreatedDate�or CommunicationType using the $filter parameter. The only type of communication supported today is Web. Output will be a paged result with nextLink, using which you can retrieve the next set of Communication results.

    Support ticket data is available for 12 months after ticket creation. If a ticket was created more than 12 months ago, a request for data might cause an error.", + "operationId": "Communications_List", + "parameters": [ + { + "name": "supportTicketName", + "in": "path", + "description": "Support ticket name", + "required": true, + "type": "string" + }, + { + "name": "$top", + "in": "query", + "description": "The number of values to return in the collection. Default is 10 and max is 10.", + "required": false, + "type": "integer" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. You can filter by communicationType and createdDate properties. CommunicationType supports Equals ('eq') operator and createdDate supports Greater Than ('gt') and Greater Than or Equals ('ge') operators. You may combine the CommunicationType and CreatedDate filters by Logical And ('and') operator." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved communications for a support ticket.", + "schema": { + "$ref": "#/definitions/CommunicationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" } + } }, - "ServiceLevelAgreement": { - "description": "Service Level Agreement details for a support ticket.", - "type": "object", - "properties": { - "startTime": { - "format": "date-time", - "description": "Time in UTC (ISO 8601 format) when SLA started.", - "type": "string", - "readOnly": true - }, - "expirationTime": { - "format": "date-time", - "description": "Time in UTC (ISO 8601 format) when SLA expires.", - "type": "string", - "readOnly": true - }, - "slaMinutes": { - "description": "Service Level Agreement in minutes", - "type": "integer", - "readOnly": true - } + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List communications for a subscription support ticket": { + "$ref": "./examples/ListCommunicationsForSubscriptionSupportTicket.json" + }, + "List web communications for a subscription support ticket": { + "$ref": "./examples/ListWebCommunicationsForSubscriptionSupportTicket.json" + }, + "List web communication created on or after a specific date for a subscription support ticket": { + "$ref": "./examples/ListWebCommunicationsForSubscriptionSupportTicketCreatedOnOrAfter.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Support/supportTickets/{supportTicketName}/communications/{communicationName}": { + "get": { + "tags": [ + "Communications" + ], + "description": "Returns details of a specific communication in a support ticket.", + "operationId": "Communications_Get", + "parameters": [ + { + "name": "supportTicketName", + "in": "path", + "description": "Support ticket name", + "required": true, + "type": "string" + }, + { + "name": "communicationName", + "in": "path", + "description": "Communication name", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved communication details.", + "schema": { + "$ref": "#/definitions/CommunicationDetails" } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } }, - "SupportEngineer": { - "description": "Support engineer information.", - "type": "object", - "properties": { - "emailAddress": { - "description": "Support engineer email address.", - "type": "string", - "readOnly": true - } + "x-ms-examples": { + "Get communication details for a subscription support ticket": { + "$ref": "./examples/GetCommunicationDetailsForSubscriptionSupportTicket.json" + } + } + }, + "put": { + "tags": [ + "Communications" + ], + "description": "Adds a new customer communication to an Azure support ticket. Adding attachments are not currently supported via the API.
    To add a file to a support ticket, visit the Manage support ticket page in the Azure portal, select the support ticket, and use the file upload control to add a new file.", + "operationId": "Communications_Create", + "parameters": [ + { + "name": "supportTicketName", + "in": "path", + "description": "Support ticket name", + "required": true, + "type": "string" + }, + { + "name": "communicationName", + "in": "path", + "description": "Communication name", + "required": true, + "type": "string" + }, + { + "name": "createCommunicationParameters", + "in": "body", + "description": "Communication object", + "required": true, + "schema": { + "$ref": "#/definitions/CommunicationDetails" } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Communication created successfully.", + "schema": { + "$ref": "#/definitions/CommunicationDetails" + } + }, + "202": { + "description": "Accepted, Communication will be created asynchronously" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "AddCommunicationToSubscriptionTicket": { + "$ref": "./examples/CreateSupportTicketCommunication.json" + } + } + } + } + }, + "definitions": { + "OperationsListResult": { + "description": "The list of operations supported by Microsoft Support resource provider.", + "properties": { + "value": { + "description": "The list of operations supported by Microsoft Support resource provider.", + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + } + } + } + }, + "Operation": { + "description": "The operation supported by Microsoft Support RP.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "type": "string", + "readOnly": true }, - "ExceptionResponse": { - "type": "object", - "properties": { - "error": { - "$ref": "#/definitions/ServiceError", - "description": "The api error details." - } + "display": { + "description": "The object that describes the operation.", + "properties": { + "description": { + "description": "The description of the operation", + "type": "string", + "readOnly": true }, - "description": "The api error." - }, - "ServiceError": { - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "The error code." - }, - "message": { - "type": "string", - "description": "The error message." - }, - "target": { - "type": "string", - "description": "The target of the error." - }, - "details": { - "type": "array", - "items": { - "$ref": "#/definitions/ServiceErrorDetail" - }, - "description": "The list of error details.", - "readOnly": true - } + "operation": { + "description": "The action that users can perform, based on their permission level", + "type": "string", + "readOnly": true }, - "description": "The api error details." - }, - "ServiceErrorDetail": { - "type": "object", - "properties": { - "code": { - "type": "string", - "readOnly": true, - "description": "The error code." - }, - "message": { - "type": "string", - "readOnly": true, - "description": "The error message." - }, - "target": { - "type": "string", - "description": "The target of the error." - } + "provider": { + "description": "Service provider: Microsoft Support", + "type": "string", + "readOnly": true }, - "description": "The error details." - }, - "ContactProfile": { - "description": "Contact information associated with support ticket.", - "required": [ - "firstName", - "lastName", - "preferredContactMethod", - "primaryEmailAddress", - "preferredTimeZone", - "country", - "preferredSupportLanguage" - ], - "type": "object", - "properties": { - "firstName": { - "description": "First name.", - "type": "string" - }, - "lastName": { - "description": "Last name.", - "type": "string" - }, - "preferredContactMethod": { - "description": "Preferred contact method.", - "enum": [ - "email", - "phone" - ], - "type": "string", - "x-ms-enum": { - "name": "PreferredContactMethod", - "modelAsString": true - } - }, - "primaryEmailAddress": { - "description": "Primary email address.", - "type": "string" - }, - "additionalEmailAddresses": { - "description": "Additional email addresses.", - "type": "array", - "items": { - "type": "string" - } - }, - "phoneNumber": { - "description": "Phone number. This is required if preferred contact method is phone.", - "type": "string" - }, - "preferredTimeZone": { - "description": "Time zone of the user. This is the System.TimeZoneInfo.Id value", - "type": "string" - }, - "country": { - "description": "Country of the user. This is the ISO Alpha-3 code", - "type": "string" - }, - "preferredSupportLanguage": { - "description": "Language of the user. This is the standard country-language code.", - "type": "string" - } + "resource": { + "description": "Resource on which the operation is performed", + "type": "string", + "readOnly": true } + } + } + } + }, + "ServicesListResult": { + "description": "Collection of Service resources.", + "type": "object", + "properties": { + "value": { + "description": "List of Service resources", + "type": "array", + "items": { + "$ref": "#/definitions/Service" + } + } + } + }, + "Service": { + "description": "Object that represents a Service resource.", + "type": "object", + "properties": { + "id": { + "description": "Id of the resource", + "type": "string", + "readOnly": true }, - "UpdateContactProfile": { - "description": "Update to the contact information associated with support ticket.", - "type": "object", - "properties": { - "firstName": { - "description": "First name.", - "type": "string" - }, - "lastName": { - "description": "Last name.", - "type": "string" - }, - "preferredContactMethod": { - "description": "Preferred contact method.", - "enum": [ - "email", - "phone" - ], - "type": "string", - "x-ms-enum": { - "name": "PreferredContactMethod", - "modelAsString": true - } - }, - "primaryEmailAddress": { - "description": "Primary email address.", - "type": "string" - }, - "additionalEmailAddresses": { - "description": "Additional email addresses.", - "type": "array", - "items": { - "type": "string" - } - }, - "phoneNumber": { - "description": "Phone number. This is required if preferred contact method is phone.", - "type": "string" - }, - "preferredTimeZone": { - "description": "Time zone of the user. This is the System.TimeZoneInfo.Id value", - "type": "string" - }, - "country": { - "description": "Country of the user. This is the ISO Alpha-3 code", - "type": "string" - }, - "preferredSupportLanguage": { - "description": "Language of the user. This is the standard country-language code.", - "type": "string" - } - } + "name": { + "description": "Name of the resource", + "type": "string", + "readOnly": true }, - "TechnicalTicketDetails": { - "description": "Additional information for technical support ticket.", - "type": "object", - "properties": { - "resourceId": { - "description": "This is the resource id of the technical resource for which the support ticket is being created.", - "type": "string" - } - } + "type": { + "description": "Type of the resource 'Microsoft.Support/services'", + "type": "string", + "readOnly": true }, - "QuotaTicketDetails": { - "description": "Additional information for quota support ticket.", - "type": "object", - "properties": { - "quotaChangeRequestSubType": { - "description": "This is the quota sub type for which the quota request is being made and is optional for some quota types.", - "type": "string" - }, - "quotaChangeRequestVersion": { - "description": "Quota change request version", - "type": "string" - }, - "quotaChangeRequests": { - "description": "Quota change requests.", - "type": "array", - "items": { - "$ref": "#/definitions/QuotaChangeRequest" - } - } - } + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceProperties", + "description": "Properties of the resource" + } + } + }, + "ServiceProperties": { + "description": "Details about Azure service available for support ticket creation", + "type": "object", + "properties": { + "displayName": { + "description": "Localized name of Azure service", + "type": "string" + } + } + }, + "ProblemClassificationsListResult": { + "description": "Collection of ProblemClassification resources", + "type": "object", + "properties": { + "value": { + "description": "List of ProblemClassification resources", + "type": "array", + "items": { + "$ref": "#/definitions/ProblemClassification" + } + } + } + }, + "ProblemClassification": { + "description": "ProblemClassification resource object", + "type": "object", + "properties": { + "id": { + "description": "Id of the resource", + "type": "string", + "readOnly": true }, - "QuotaChangeRequest": { - "description": "Quota change request information.", - "type": "object", - "properties": { - "region": { - "description": "Region for which the quota change request is being made.", - "type": "string" - }, - "payload": { - "description": "The payload of the quota change request.", - "type": "string" - } - } - - }, - "UpdateSupportTicket": { - "description": "Updates support ticket.", - "type": "object", - "properties": { - "severity": { - "description": "Severity level", - "enum": [ - "minimal", - "moderate", - "critical" - ], - "type": "string", - "x-ms-enum": { - "name": "SeverityLevel", - "modelAsString": true - } - }, - "contactDetails": { - "$ref": "#/definitions/UpdateContactProfile", - "description": "Contact details to be updated on the support ticket." - } - } + "name": { + "description": "Name of the resource", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of the resource 'Microsoft.Support/problemClassification'", + "type": "string", + "readOnly": true + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProblemClassificationProperties", + "description": "Properties of the resource" } + } }, - "parameters": { - "SubscriptionIdParameter": { - "name": "subscriptionId", - "in": "path", - "required": true, - "type": "string", - "description": "Azure subscription id." + "ProblemClassificationProperties": { + "description": "Details about a problem classification available for an Azure service", + "type": "object", + "properties": { + "displayName": { + "description": "Localized name of problem classification.", + "type": "string" + } + } + }, + "CheckNameAvailabilityInput": { + "description": "Input of CheckNameAvailability API.", + "type": "object", + "required": [ + "name", + "type" + ], + "properties": { + "name": { + "description": "The resource name to validate", + "type": "string" }, - "ApiVersionParameter": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "Api version." + "type": { + "type": "string", + "enum": [ + "Microsoft.Support/supportTickets", + "Microsoft.Support/communications" + ], + "x-ms-enum": { + "name": "Type", + "modelAsString": false + }, + "description": "The type of resource" + } + } + }, + "CheckNameAvailabilityOutput": { + "description": "Output of check name availability API.", + "type": "object", + "properties": { + "nameAvailable": { + "description": "Indicates whether the name is available.", + "readOnly": true, + "type": "boolean" + }, + "reason": { + "description": "The reason why the name is not available.", + "readOnly": true, + "type": "string" + }, + "message": { + "description": "The detailed error message describing why the name is not available.", + "readOnly": true, + "type": "string" + } + } + }, + "SupportTicketsListResult": { + "description": "Object that represents a collection of SupportTicket resources.", + "type": "object", + "properties": { + "value": { + "description": "List of SupportTicket resources.", + "type": "array", + "items": { + "$ref": "#/definitions/SupportTicketDetails" + } + }, + "nextLink": { + "description": "The URI to fetch the next page of SupportTicket resources.", + "type": "string" + } + } + }, + "SupportTicketDetails": { + "x-ms-azure-resource": true, + "description": "Object that represents SupportTicketDetails resource", + "type": "object", + "properties": { + "id": { + "description": "Id of the resource", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the resource", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of the resource 'Microsoft.Support/supportTickets'", + "type": "string", + "readOnly": true + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SupportTicketDetailsProperties", + "description": "Properties of the resource" + } + } + }, + "CommunicationsListResult": { + "description": "Collection of Communication resources.", + "type": "object", + "properties": { + "value": { + "description": "List of Communication resources.", + "type": "array", + "items": { + "$ref": "#/definitions/CommunicationDetails" + } + }, + "nextLink": { + "description": "The URI to fetch the next page of Communication resources.", + "type": "string" + } + } + }, + "CommunicationDetails": { + "x-ms-azure-resource": true, + "description": "Object that represents Communication resource", + "type": "object", + "properties": { + "id": { + "description": "Id of the resource", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the resource", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of the resource 'Microsoft.Support/communications'", + "type": "string", + "readOnly": true + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CommunicationDetailsProperties", + "description": "Properties of the resource" + } + } + }, + "CommunicationDetailsProperties": { + "description": "Describes the properties of a communication resource.", + "required": [ + "subject", + "body" + ], + "type": "object", + "properties": { + "communicationType": { + "description": "Communication type", + "enum": [ + "web", + "phone" + ], + "type": "string", + "x-ms-enum": { + "name": "CommunicationType", + "modelAsString": true + }, + "readOnly": true + }, + "communicationDirection": { + "description": "Direction of communication", + "enum": [ + "inbound", + "outbound" + ], + "type": "string", + "x-ms-enum": { + "name": "CommunicationDirection", + "modelAsString": true + }, + "readOnly": true + }, + "sender": { + "description": "Email address of the sender", + "type": "string" + }, + "subject": { + "description": "Subject of the communication", + "type": "string" + }, + "body": { + "description": "Body of the communication", + "type": "string" + }, + "createdDate": { + "format": "date-time", + "description": "Time in UTC (ISO 8601 format) when the communication was created.", + "type": "string", + "readOnly": true + } + } + }, + "SupportTicketDetailsProperties": { + "description": "Describes the properties of a support ticket.", + "required": [ + "serviceId", + "title", + "description", + "problemClassificationId", + "severity", + "contactDetails" + ], + "type": "object", + "properties": { + "supportTicketId": { + "description": "System generated support ticket id that is unique.", + "type": "string" + }, + "description": { + "description": "Detailed description of the question or issue.", + "type": "string" + }, + "problemClassificationId": { + "description": "Each Azure service has its own set of issue category called problem classification that corresponds to the type of problem you're experiencing. This parameter is the resource id of ProblemClassification resource.", + "type": "string" + }, + "problemClassificationDisplayName": { + "type": "string", + "description": "Localized name of problem classification.", + "readOnly": true + }, + "severity": { + "description": "A value that indicates the urgency of the case, which in turn determines the response time according to the service level agreement of the technical support plan you have with Azure.", + "enum": [ + "minimal", + "moderate", + "critical" + ], + "type": "string", + "x-ms-enum": { + "name": "SeverityLevel", + "modelAsString": true + } + }, + "enrollmentId": { + "description": "Enrollment ID associated with the support ticket.", + "type": "string", + "readOnly": true + }, + "productionOutage": { + "description": "Indicates if this issue is a production outage.", + "type": "boolean", + "readOnly": true + }, + "require24X7Response": { + "description": "Indicates if this requires a 24x7 response from Azure.", + "type": "boolean" + }, + "contactDetails": { + "$ref": "#/definitions/ContactProfile", + "description": "Contact information of the user requesting to create a support ticket." + }, + "serviceLevelAgreement": { + "$ref": "#/definitions/ServiceLevelAgreement", + "description": "Service Level Agreement information for this support ticket." + }, + "supportEngineer": { + "$ref": "#/definitions/SupportEngineer", + "description": "Information about support engineer working on this support ticket." + }, + "supportPlanType": { + "description": "Support plan type associated with the support ticket.", + "type": "string", + "readOnly": true + }, + "title": { + "description": "Title of the support ticket.", + "type": "string" + }, + "problemStartTime": { + "format": "date-time", + "description": "Time in UTC (ISO 8601 format) when the problem started.", + "type": "string" + }, + "serviceId": { + "description": "This is the resource id of the Azure service resource associated with the support ticket.", + "type": "string" + }, + "serviceDisplayName": { + "type": "string", + "description": "Localized name of Azure service.", + "readOnly": true + }, + "status": { + "description": "Status of the support ticket.", + "type": "string", + "readOnly": true + }, + "createdDate": { + "format": "date-time", + "description": "Time in UTC (ISO 8601 format) when support ticket was created.", + "type": "string", + "readOnly": true + }, + "modifiedDate": { + "format": "date-time", + "description": "Time in UTC (ISO 8601 format) when support ticket was last modified.", + "type": "string", + "readOnly": true + }, + "technicalTicketDetails": { + "$ref": "#/definitions/TechnicalTicketDetails", + "description": "Additional ticket details associated with a technical support ticket request. " + }, + "quotaTicketDetails": { + "$ref": "#/definitions/QuotaTicketDetails", + "description": "Additional ticket details associated with a quota support ticket request. " + } + } + }, + "ServiceLevelAgreement": { + "description": "Service Level Agreement details for a support ticket.", + "type": "object", + "properties": { + "startTime": { + "format": "date-time", + "description": "Time in UTC (ISO 8601 format) when service level agreement starts.", + "type": "string", + "readOnly": true + }, + "expirationTime": { + "format": "date-time", + "description": "Time in UTC (ISO 8601 format) when service level agreement expires.", + "type": "string", + "readOnly": true + }, + "slaMinutes": { + "description": "Service Level Agreement in minutes", + "type": "integer", + "readOnly": true + } + } + }, + "SupportEngineer": { + "description": "Support engineer information.", + "type": "object", + "properties": { + "emailAddress": { + "description": "Email address of the Azure Support engineer assigned to the support ticket.", + "type": "string", + "readOnly": true + } + } + }, + "ExceptionResponse": { + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/ServiceError", + "description": "The api error details." + } + }, + "description": "The api error." + }, + "ServiceError": { + "type": "object", + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "message": { + "type": "string", + "description": "The error message." + }, + "target": { + "type": "string", + "description": "The target of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceErrorDetail" + }, + "description": "The list of error details.", + "readOnly": true + } + }, + "description": "The api error details." + }, + "ServiceErrorDetail": { + "type": "object", + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The error code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The error message." + }, + "target": { + "type": "string", + "description": "The target of the error." + } + }, + "description": "The error details." + }, + "ContactProfile": { + "description": "Contact information associated with support ticket.", + "required": [ + "firstName", + "lastName", + "preferredContactMethod", + "primaryEmailAddress", + "preferredTimeZone", + "country", + "preferredSupportLanguage" + ], + "type": "object", + "properties": { + "firstName": { + "description": "First name.", + "type": "string" + }, + "lastName": { + "description": "Last name.", + "type": "string" + }, + "preferredContactMethod": { + "description": "Preferred contact method.", + "enum": [ + "email", + "phone" + ], + "type": "string", + "x-ms-enum": { + "name": "PreferredContactMethod", + "modelAsString": true + } + }, + "primaryEmailAddress": { + "description": "Primary email address.", + "type": "string" + }, + "additionalEmailAddresses": { + "description": "Additional email addresses listed will be copied on any correspondence about the support ticket.", + "type": "array", + "items": { + "type": "string" + } + }, + "phoneNumber": { + "description": "Phone number. This is required if preferred contact method is phone.", + "type": "string" + }, + "preferredTimeZone": { + "description": "Time zone of the user. This is the name of the time zone from Microsoft Time Zone Index Values.", + "type": "string" + }, + "country": { + "description": "Country of the user. This is the ISO 3166-1 alpha-3 code.", + "type": "string" + }, + "preferredSupportLanguage": { + "description": "Preferred language of support from Azure. Support languages vary based on the severity you choose for your support ticket. Learn more at Azure Severity and responsiveness. Use the standard language-country code. Valid values are 'en-us' for English, 'zh-hans' for Chinese, 'es-es' for Spanish, 'fr-fr' for French, 'ja-jp' for Japanese, 'ko-kr' for Korean, 'ru-ru' for Russian, 'pt-br' for Portuguese, 'it-it' for Italian, 'zh-tw' for Chinese and 'de-de' for German.", + "type": "string" + } + } + }, + "UpdateContactProfile": { + "description": "Contact information associated with the support ticket.", + "type": "object", + "properties": { + "firstName": { + "description": "First name", + "type": "string" + }, + "lastName": { + "description": "Last name", + "type": "string" + }, + "preferredContactMethod": { + "description": "Preferred contact method", + "enum": [ + "email", + "phone" + ], + "type": "string", + "x-ms-enum": { + "name": "PreferredContactMethod", + "modelAsString": true + } + }, + "primaryEmailAddress": { + "description": "Primary email address", + "type": "string" + }, + "additionalEmailAddresses": { + "description": "Email addresses listed will be copied on any correspondence about the support ticket", + "type": "array", + "items": { + "type": "string" + } + }, + "phoneNumber": { + "description": "Phone number. This is required if preferred contact method is phone.", + "type": "string" + }, + "preferredTimeZone": { + "description": "Time zone of the user. This is the name of the time zone from Microsoft Time Zone Index Values.", + "type": "string" + }, + "country": { + "description": "Country of the user. This is the ISO 3166-1 alpha-3 code.", + "type": "string" + }, + "preferredSupportLanguage": { + "description": "Preferred language of support from Azure. Support languages vary based on the severity you choose for your support ticket. Learn more at Azure Severity and responsiveness. Use the standard language-country code. Valid values are 'en-us' for English, 'zh-hans' for Chinese, 'es-es' for Spanish, 'fr-fr' for French, 'ja-jp' for Japanese, 'ko-kr' for Korean, 'ru-ru' for Russian, 'pt-br' for Portuguese, 'it-it' for Italian, 'zh-tw' for Chinese and 'de-de' for German.", + "type": "string" } + } + }, + "TechnicalTicketDetails": { + "description": "Additional information for technical support ticket.", + "type": "object", + "properties": { + "resourceId": { + "description": "This is the resource id of the Azure service resource (For example: A virtual machine resource or an HDInsight resource) for which the support ticket is created.", + "type": "string" + } + } + }, + "QuotaTicketDetails": { + "description": "Additional set of information required for quota increase support ticket for certain quota types, e.g.: Virtual machine cores. Get complete details about Quota payload support request along with examples at Support quota request.", + "type": "object", + "properties": { + "quotaChangeRequestSubType": { + "description": "Required for certain quota types when there is a sub type that you are requesting quota increase for. Example: Batch", + "type": "string" + }, + "quotaChangeRequestVersion": { + "description": "Quota change request version", + "type": "string" + }, + "quotaChangeRequests": { + "description": "This property is required for providing the region and new quota limits.", + "type": "array", + "items": { + "$ref": "#/definitions/QuotaChangeRequest" + } + } + } + }, + "QuotaChangeRequest": { + "description": "This property is required for providing the region and new quota limits", + "type": "object", + "properties": { + "region": { + "description": "Region for which the quota increase request is being made.", + "type": "string" + }, + "payload": { + "description": "Payload of the quota increase request.", + "type": "string" + } + } + }, + "UpdateSupportTicket": { + "description": "Updates severity and contact details in the support ticket.", + "type": "object", + "properties": { + "severity": { + "description": "Severity level", + "enum": [ + "minimal", + "moderate", + "critical" + ], + "type": "string", + "x-ms-enum": { + "name": "SeverityLevel", + "modelAsString": true + } + }, + "contactDetails": { + "$ref": "#/definitions/UpdateContactProfile", + "description": "Contact details to be updated on the support ticket." + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Azure subscription id" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Api version" } + } } - diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CheckNameAvailabilityForSupportTicketCommunication.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CheckNameAvailabilityForSupportTicketCommunication.json new file mode 100644 index 000000000000..6f723ff8d533 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CheckNameAvailabilityForSupportTicketCommunication.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "checkNameAvailabilityInput": { + "name": "sampleName", + "type": "Microsoft.Support/communications" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "Name is already in use", + "message": "Name not available" + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CheckNameAvailabilityWithSubscription.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CheckNameAvailabilityWithSubscription.json new file mode 100644 index 000000000000..591543733169 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CheckNameAvailabilityWithSubscription.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-04-01", + "checkNameAvailabilityInput": { + "name": "sampleName", + "type": "Microsoft.Support/supportTickets" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "Name is already in use", + "message": "Name not available" + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSpecificBatchAccountForActiveJobs.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSpecificBatchAccountForActiveJobs.json new file mode 100644 index 000000000000..9d8d443605b0 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSpecificBatchAccountForActiveJobs.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/batch_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Account", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"AccountName\":\"test\",\"NewLimit\":200,\"Type\":\"Jobs\"}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/batch_problemClassification_guid", + "problemClassificationDisplayName": "Batch", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Account", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"AccountName\":\"test\",\"NewLimit\":200,\"Type\":\"Jobs\"}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSpecificBatchAccountForDedicatedCores.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSpecificBatchAccountForDedicatedCores.json new file mode 100644 index 000000000000..aadd4011fb3f --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSpecificBatchAccountForDedicatedCores.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/batch_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Account", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"AccountName\":\"test\",\"VMFamily\":\"standardA0_A7Family\",\"NewLimit\":200,\"Type\":\"Dedicated\"}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/batch_problemClassification_guid", + "problemClassificationDisplayName": "Batch", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Account", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"AccountName\":\"test\",\"VMFamily\":\"standardA0_A7Family\",\"NewLimit\":200,\"Type\":\"Dedicated\"}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSpecificBatchAccountForLowPriorityCores.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSpecificBatchAccountForLowPriorityCores.json new file mode 100644 index 000000000000..251ac30ce14e --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSpecificBatchAccountForLowPriorityCores.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/batch_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Account", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"AccountName\":\"test\",\"NewLimit\":200,\"Type\":\"LowPriority\"}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/batch_problemClassification_guid", + "problemClassificationDisplayName": "Batch", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Account", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"AccountName\":\"test\",\"NewLimit\":200,\"Type\":\"LowPriority\"}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSpecificBatchAccountForPools.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSpecificBatchAccountForPools.json new file mode 100644 index 000000000000..a40456b4d894 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSpecificBatchAccountForPools.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/batch_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Account", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"AccountName\":\"test\",\"NewLimit\":200,\"Type\":\"Pools\"}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/batch_problemClassification_guid", + "problemClassificationDisplayName": "Batch", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Account", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"AccountName\":\"test\",\"NewLimit\":200,\"Type\":\"Pools\"}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSubscription.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSubscription.json new file mode 100644 index 000000000000..2995f3fab7fb --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBatchQuotaTicketForSubscription.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/batch_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Subscription", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"NewLimit\":200,\"Type\":\"Account\"}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/batch_problemClassification_guid", + "problemClassificationDisplayName": "Batch", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Subscription", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"NewLimit\":200,\"Type\":\"Account\"}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBillingSupportTicketForSubscription.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBillingSupportTicketForSubscription.json new file mode 100644 index 000000000000..42e1c0b4a0ea --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateBillingSupportTicketForSubscription.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/billing_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/billing_service_guid/problemClassifications/billing_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/billing_service_guid/problemClassifications/billing_problemClassification_guid", + "problemClassificationDisplayName": "Refund request", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/billing_service_guid", + "serviceDisplayName": "Billing", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateCoresQuotaTicketForSubscription.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateCoresQuotaTicketForSubscription.json new file mode 100644 index 000000000000..3df0bfde643a --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateCoresQuotaTicketForSubscription.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/cores_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"SKU\":\"DSv3 Series\",\"NewLimit\":104}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/cores_problemClassification_guid", + "problemClassificationDisplayName": "Compute-VM (cores-vCPUs) subscription limit increases", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"VmFamily\":\"DSv3 Series\",\"NewLimit\":104}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateGenericQuotaTicket.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateGenericQuotaTicket.json new file mode 100644 index 000000000000..6235ee70197d --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateGenericQuotaTicket.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "Increase the maximum throughput per container limit to 10000 for account foo bar", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/cosmosdb_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "Increase the maximum throughput per container limit to 10000 for account foo bar", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/cosmosdb_problemClassification_guid", + "problemClassificationDisplayName": "Cosmos DB", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateMachineLearningQuotaTicketForDedicatedCores.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateMachineLearningQuotaTicketForDedicatedCores.json new file mode 100644 index 000000000000..ab253950b6a5 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateMachineLearningQuotaTicketForDedicatedCores.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/machine_learning_service_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "BatchAml", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"VMFamily\":\"standardA0_A7Family\",\"NewLimit\":200,\"Type\":\"Dedicated\"}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/machine_learning_service_problemClassification_guid", + "problemClassificationDisplayName": "Machine Learning service", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Account", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"VMFamily\":\"standardA0_A7Family\",\"NewLimit\":200,\"Type\":\"Dedicated\"}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateMachineLearningQuotaTicketForLowPriorityCores.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateMachineLearningQuotaTicketForLowPriorityCores.json new file mode 100644 index 000000000000..5a77027669a3 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateMachineLearningQuotaTicketForLowPriorityCores.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/machine_learning_service_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "BatchAml", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"NewLimit\":200,\"Type\":\"LowPriority\"}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/machine_learning_service_problemClassification_guid", + "problemClassificationDisplayName": "Machine Learning service", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Account", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"NewLimit\":200,\"Type\":\"LowPriority\"}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSqlDatabaseQuotaTicketForDTUs.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSqlDatabaseQuotaTicketForDTUs.json new file mode 100644 index 000000000000..cd3f37cbcd41 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSqlDatabaseQuotaTicketForDTUs.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/sql_database_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "DTUs", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"ServerName\":\"testserver\",\"NewLimit\":54000}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/sql_database_problemClassification_guid", + "problemClassificationDisplayName": "SQL database", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "DTUs", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"ServerName\":\"testserver\",\"NewLimit\":54000}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSqlDatabaseQuotaTicketForServers.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSqlDatabaseQuotaTicketForServers.json new file mode 100644 index 000000000000..7e2fe9fe44c0 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSqlDatabaseQuotaTicketForServers.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/sql_database_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Servers", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"NewLimit\":200}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/sql_database_problemClassification_guid", + "problemClassificationDisplayName": "SQL database", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Servers", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"NewLimit\":200}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSqlDatawarehouseQuotaTicketForDTUs.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSqlDatawarehouseQuotaTicketForDTUs.json new file mode 100644 index 000000000000..a6c993df89ae --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSqlDatawarehouseQuotaTicketForDTUs.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/sql_datawarehouse_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "DTUs", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"ServerName\":\"testserver\",\"NewLimit\":54000}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/sql_datawarehouse_problemClassification_guid", + "problemClassificationDisplayName": "SQL Data Warehouse", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "DTUs", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"ServerName\":\"testserver\",\"NewLimit\":54000}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSqlDatawarehouseQuotaTicketForServers.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSqlDatawarehouseQuotaTicketForServers.json new file mode 100644 index 000000000000..8ce944490002 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSqlDatawarehouseQuotaTicketForServers.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/sql_datawarehouse_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Servers", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"NewLimit\":200}" + } + ] + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/quota_service_guid/problemClassifications/sql_datawarehouse_problemClassification_guid", + "problemClassificationDisplayName": "SQL Data Warehouse", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "quotaTicketDetails": { + "quotaChangeRequestVersion": "1.0", + "quotaChangeRequestSubType": "Servers", + "quotaChangeRequests": [ + { + "region": "EastUS", + "payload": "{\"NewLimit\":200}" + } + ] + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/quota_service_guid", + "serviceDisplayName": "Service and subscription limits (quotas)", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSubMgmtSupportTicketForSubscription.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSubMgmtSupportTicketForSubscription.json new file mode 100644 index 000000000000..b98c942fdbed --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSubMgmtSupportTicketForSubscription.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/subscription_management_service_guid", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/subscription_management_service_guid/problemClassifications/subscription_management_problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/subscription_management_service_guid/problemClassifications/subscription_management_problemClassification_guid", + "problemClassificationDisplayName": "Transfer ownership of my subscription", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/subscription_management_service_guid", + "serviceDisplayName": "Subscription management", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSupportTicketCommunication.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSupportTicketCommunication.json new file mode 100644 index 000000000000..735de576110c --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateSupportTicketCommunication.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "communicationName": "testcommunication", + "api-version": "2020-04-01", + "createCommunicationParameters": { + "properties": { + "subject": "This is a test message from a customer!", + "body": "This is a test message from a customer!", + "sender": "user@contoso.com" + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket/communications/testcommunication", + "name": "testcommunication", + "type": "Microsoft.Support/communications", + "properties": { + "subject": "This is a test message from a customer!", + "body": "This is a test message from a customer!", + "communicationType": "web", + "communicationDirection": "outbound", + "createdDate": "2020-03-10T20:18:19Z", + "sender": "user@contoso.com" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateTechnicalSupportTicketForSubscription.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateTechnicalSupportTicketForSubscription.json new file mode 100644 index 000000000000..efbfc69dd34a --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/CreateTechnicalSupportTicketForSubscription.json @@ -0,0 +1,78 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "createSupportTicketParameters": { + "properties": { + "serviceId": "/providers/Microsoft.Support/services/cddd3eb5-1830-b494-44fd-782f691479dc", + "title": "my title", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/virtual_machine_running_linux_service_guid/problemClassifications/problemClassification_guid", + "severity": "moderate", + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "primaryEmailAddress": "abc@contoso.com", + "preferredContactMethod": "email", + "preferredTimeZone": "Pacific Standard Time", + "preferredSupportLanguage": "en-US", + "country": "usa" + }, + "technicalTicketDetails": { + "resourceId": "/subscriptions/subid/resourceGroups/test/providers/Microsoft.Compute/virtualMachines/testserver" + } + } + } + }, + "responses": { + "202": { + "headers": { + "location": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationResults/operationid?api-version=2020-04-01", + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/providers/Microsoft.Support/operationsStatus/operationid?api-version=2020-04-01" + } + }, + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/virtual_machine_running_linux_service_guid/problemClassifications/problemClassification_guid", + "problemClassificationDisplayName": "Connectivity / Cannot connect to virtual machine by using RDP or SSH", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "technicalTicketDetails": { + "resourceId": "/subscriptions/subid/resourceGroups/test/providers/Microsoft.Compute/virtualMachines/testserver" + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/virtual_machine_running_linux_service_guid", + "serviceDisplayName": "Virtual Machine running Linux", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/GetCommunicationDetailsForSubscriptionSupportTicket.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/GetCommunicationDetailsForSubscriptionSupportTicket.json new file mode 100644 index 000000000000..181ec88b06db --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/GetCommunicationDetailsForSubscriptionSupportTicket.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "communicationName": "testmessage", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket/communications/testmessage", + "name": "testmessage", + "type": "Microsoft.Support/communications", + "properties": { + "subject": "this is a test message", + "body": "this is a test message", + "communicationType": "web", + "communicationDirection": "outbound", + "sender": "user@contoso.com", + "createdDate": "2020-03-10T20:18:19Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/GetProblemClassification.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/GetProblemClassification.json new file mode 100644 index 000000000000..42698d2887a5 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/GetProblemClassification.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "serviceName": "service_guid", + "problemClassificationName": "problemClassification_guid", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Support/services/service_guid/problemClassifications/problemClassification_guid", + "name": "problemClassification_guid", + "type": "Microsoft.Support/problemClassifications", + "properties": { + "displayName": "Reservation Management / Exchanges and Refunds" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/GetService.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/GetService.json new file mode 100644 index 000000000000..e05273a62e20 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/GetService.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "serviceName": "service_guid", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/providers/Microsoft.Support/services/service_guid", + "name": "service_guid", + "type": "Microsoft.Support/services", + "properties": { + "displayName": "Virtual Machine running Windows", + "resourceTypes": [ + "MICROSOFT.CLASSICCOMPUTE/VIRTUALMACHINES", + "MICROSOFT.COMPUTE/VIRTUALMACHINES" + ] + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/GetSubscriptionSupportTicketDetails.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/GetSubscriptionSupportTicketDetails.json new file mode 100644 index 000000000000..76ffec944329 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/GetSubscriptionSupportTicketDetails.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "118032014183770", + "description": "This is a test - please ignore", + "problemClassificationId": "/providers/Microsoft.Support/services/subscription_management_service_guid/problemClassifications/problemClassification_guid", + "problemClassificationDisplayName": "Add or Edit VAT, TAX ID, or PO Number", + "severity": "minimal", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "USA", + "preferredSupportLanguage": "en-US" + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": "xyz@contoso.com" + }, + "supportPlanType": "Premier", + "title": "Test - please ignore", + "serviceId": "/providers/Microsoft.Support/services/subscription_management_service_guid", + "serviceDisplayName": "Subscription management", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListCommunicationsForSubscriptionSupportTicket.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListCommunicationsForSubscriptionSupportTicket.json new file mode 100644 index 000000000000..1a516d660901 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListCommunicationsForSubscriptionSupportTicket.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket/communications/testmessage1", + "name": "testmessage1", + "type": "Microsoft.Support/communications", + "properties": { + "subject": "this is a test message", + "body": "this is a test message", + "communicationType": "web", + "communicationDirection": "outbound", + "sender": "user@contoso.com", + "createdDate": "2020-03-24T20:18:19Z" + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket/communications/testmessage2", + "name": "testmessage2", + "type": "Microsoft.Support/communications", + "properties": { + "subject": "test", + "body": "test", + "communicationType": "web", + "communicationDirection": "outbound", + "sender": "user@contoso.com", + "createdDate": "2020-03-29T10:53:19Z" + } + } + ] + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListOperations.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListOperations.json new file mode 100644 index 000000000000..fbe7ab3cbc23 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListOperations.json @@ -0,0 +1,94 @@ +{ + "parameters": { + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Support/services/read", + "display": { + "description": "Gets all the Azure services available for support", + "operation": "Reads Services", + "provider": "Microsoft Support", + "resource": "Service" + } + }, + { + "name": "Microsoft.Support/problemClassifications/read", + "display": { + "description": "Gets all the problem classifications available for a specific Azure service", + "operation": "Reads Problem Classifications", + "provider": "Microsoft Support", + "resource": "Problem Classification" + } + }, + { + "name": "Microsoft.Support/supportTickets/read", + "display": { + "description": "Gets all the support tickets", + "operation": "Reads Support Tickets", + "provider": "Microsoft Support", + "resource": "Support Ticket" + } + }, + { + "name": "Microsoft.Support/supportTickets/write", + "display": { + "description": "Updates support ticket", + "operation": "Updates support ticket", + "provider": "Microsoft Support", + "resource": "Support Ticket" + } + }, + { + "name": "Microsoft.Support/communications/read", + "display": { + "description": "Gets all the communications", + "operation": "Reads Communications", + "provider": "Microsoft Support", + "resource": "Communication" + } + }, + { + "name": "Microsoft.Support/communications/write", + "display": { + "description": "Creates a communication", + "operation": "Creates a communication", + "provider": "Microsoft Support", + "resource": "Communication" + } + }, + { + "name": "Microsoft.Support/register/action", + "display": { + "description": "Registers Support Resource Provider", + "operation": "Registers Support Resource Provider", + "provider": "Registers Support Resource Provider", + "resource": "Support Registration" + } + }, + { + "name": "Microsoft.Support/createSupportTicket/action", + "display": { + "description": "Creates support ticket", + "operation": "Registers Support Resource Provider", + "provider": "Microsoft Support", + "resource": "SupportTicket" + } + }, + { + "name": "Microsoft.Support/addCommunication/action", + "display": { + "description": "Add communication to support ticket", + "operation": "Registers Support Resource Provider", + "provider": "Microsoft Support", + "resource": "Communication" + } + } + ] + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListProblemClassifications.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListProblemClassifications.json new file mode 100644 index 000000000000..44f2d30b1ba6 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListProblemClassifications.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "serviceName": "service_guid", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Support/services/service_guid/problemClassifications/problemClassification_guid_1", + "name": "problemClassification_guid_1", + "type": "Microsoft.Support/problemClassifications", + "properties": { + "displayName": "Reservation Management / Exchanges and Refunds" + } + }, + { + "id": "/providers/Microsoft.Support/services/service_guid/problemClassifications/problemClassification_guid_2", + "name": "problemClassification_guid_2", + "type": "Microsoft.Support/problemClassifications", + "properties": { + "displayName": "Reservation Management / Request Invoices" + } + }, + { + "id": "/providers/Microsoft.Support/services/service_guid/problemClassifications/problemClassification_guid_3", + "name": "problemClassification_guid_3", + "type": "Microsoft.Support/problemClassifications", + "properties": { + "displayName": "Reservation Management / Other Iissues or Requests" + } + }, + { + "id": "/providers/Microsoft.Support/services/service_guid/problemClassifications/problemClassification_guid_4", + "name": "problemClassification_guid_4", + "type": "Microsoft.Support/problemClassifications", + "properties": { + "displayName": "Other General Billing Questions" + } + } + ] + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListServices.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListServices.json new file mode 100644 index 000000000000..76add0ddb0ea --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListServices.json @@ -0,0 +1,88 @@ +{ + "parameters": { + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/providers/Microsoft.Support/services/service_guid_1", + "name": "service_guid_1", + "type": "Microsoft.Support/services", + "properties": { + "displayName": "Billing", + "resourceTypes": [] + } + }, + { + "id": "/providers/Microsoft.Support/services/service_guid_2", + "name": "service_guid_2", + "type": "Microsoft.Support/services", + "properties": { + "displayName": "Service and subscription limits (quotas)", + "resourceTypes": [] + } + }, + { + "id": "/providers/Microsoft.Support/services/service_guid_3", + "name": "service_guid_3", + "type": "Microsoft.Support/services", + "properties": { + "displayName": "Subscription management", + "resourceTypes": [] + } + }, + { + "id": "/providers/Microsoft.Support/services/service_guid_4", + "name": "service_guid_4", + "type": "Microsoft.Support/services", + "properties": { + "displayName": "Data Explorer", + "resourceTypes": [ + "MICROSOFT.KUSTO/CLUSTERS", + "MICROSOFT.KUSTO/DATABASES" + ] + } + }, + { + "id": "/providers/Microsoft.Support/services/service_guid_5", + "name": "service_guid_5", + "type": "Microsoft.Support/services", + "properties": { + "displayName": "Virtual Machine running Windows", + "resourceTypes": [ + "MICROSOFT.CLASSICCOMPUTE/VIRTUALMACHINES", + "MICROSOFT.COMPUTE/VIRTUALMACHINES" + ] + } + }, + { + "id": "/providers/Microsoft.Support/services/service_guid_6", + "name": "service_guid_6", + "type": "Microsoft.Support/services", + "properties": { + "displayName": "Virtual Machine running Linux", + "resourceTypes": [ + "MICROSOFT.CLASSICCOMPUTE/VIRTUALMACHINES", + "MICROSOFT.COMPUTE/VIRTUALMACHINES" + ] + } + }, + { + "id": "/providers/Microsoft.Support/services/service_guid_7", + "name": "service_guid_7", + "type": "Microsoft.Support/services", + "properties": { + "displayName": "Virtual Network", + "resourceTypes": [ + "MICROSOFT.NETWORK/VIRTUALNETWORKS", + "MICROSOFT.CLASSICNETWORK/VIRTUALNETWORKS" + ] + } + } + ] + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListSupportTicketsBySubscription.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListSupportTicketsBySubscription.json new file mode 100644 index 000000000000..186c285757d8 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListSupportTicketsBySubscription.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "subscriptionId": "subid", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/virtual_machine_service_guid/problemClassifications/problemClassification_guid", + "problemClassificationDisplayName": "Connectivity / Cannot connect to virtual machine by using RDP or SSH", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "technicalTicketDetails": { + "resourceId": "/subscriptions/subid/resourceGroups/test/providers/Microsoft.Compute/virtualMachines/testserver" + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": "xyz@contoso.com" + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/virtual_machine_service_guid", + "serviceDisplayName": "Virtual Machine running Linux", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket2", + "name": "testticket2", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "118032014183771", + "description": "This is a test - please ignore", + "problemClassificationId": "/providers/Microsoft.Support/services/subscription_management_service_guid/problemClassifications/problemClassification_guid", + "problemClassificationDisplayName": "Add or Edit VAT, TAX ID, or PO Number", + "severity": "minimal", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "USA", + "preferredSupportLanguage": "en-US" + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": "xyz@contoso.com" + }, + "supportPlanType": "Premier", + "title": "Test - please ignore", + "serviceId": "/providers/Microsoft.Support/services/subscription_management_service_guid", + "serviceDisplayName": "Subscription management", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + ] + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListSupportTicketsCreatedOnOrAfterAndInOpenStateBySubscription.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListSupportTicketsCreatedOnOrAfterAndInOpenStateBySubscription.json new file mode 100644 index 000000000000..5141f83d9a6e --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListSupportTicketsCreatedOnOrAfterAndInOpenStateBySubscription.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "subid", + "$filter": "createdDate ge 2020-03-10T22:08:51Z and status eq 'Open'", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/virtual_machine_service_guid/problemClassifications/problemClassification_guid", + "problemClassificationDisplayName": "Connectivity / Cannot connect to virtual machine by using RDP or SSH", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "technicalTicketDetails": { + "resourceId": "/subscriptions/subid/resourceGroups/test/providers/Microsoft.Compute/virtualMachines/testserver" + }, + "serviceLevelAgreement": { + "startTime": "2020-03-11T21:36:18Z", + "expirationTime": "2020-03-12T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": "xyz@contoso.com" + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/virtual_machine_service_guid", + "serviceDisplayName": "Virtual Machine running Linux", + "status": "Open", + "createdDate": "2020-03-11T21:36:18Z", + "modifiedDate": "2020-03-12T21:36:23Z" + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket2", + "name": "testticket2", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "118032014183771", + "description": "This is a test - please ignore", + "problemClassificationId": "/providers/Microsoft.Support/services/subscription_management_service_guid/problemClassifications/problemClassification_guid", + "problemClassificationDisplayName": "Add or Edit VAT, TAX ID, or PO Number", + "severity": "minimal", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "USA", + "preferredSupportLanguage": "en-US" + }, + "serviceLevelAgreement": { + "startTime": "2020-03-11T21:36:18Z", + "expirationTime": "2020-03-12T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": "xyz@contoso.com" + }, + "supportPlanType": "Premier", + "title": "Test - please ignore", + "serviceId": "/providers/Microsoft.Support/services/subscription_management_service_guid", + "serviceDisplayName": "Subscription management", + "status": "Open", + "createdDate": "2020-03-11T21:36:18Z", + "modifiedDate": "2020-03-12T21:36:18Z" + } + } + ] + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListSupportTicketsInOpenStateBySubscription.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListSupportTicketsInOpenStateBySubscription.json new file mode 100644 index 000000000000..30ebc506ac52 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListSupportTicketsInOpenStateBySubscription.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "subscriptionId": "subid", + "$filter": "status eq 'Open'", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "119120321001170", + "description": "my description", + "problemClassificationId": "/providers/Microsoft.Support/services/virtual_machine_service_guid/problemClassifications/problemClassification_guid", + "problemClassificationDisplayName": "Connectivity / Cannot connect to virtual machine by using RDP or SSH", + "severity": "moderate", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "usa", + "preferredSupportLanguage": "en-US" + }, + "technicalTicketDetails": { + "resourceId": "/subscriptions/subid/resourceGroups/test/providers/Microsoft.Compute/virtualMachines/testserver" + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": "xyz@contoso.com" + }, + "supportPlanType": "Premier", + "title": "my title", + "serviceId": "/providers/Microsoft.Support/services/virtual_machine_service_guid", + "serviceDisplayName": "Virtual Machine running Linux", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket2", + "name": "testticket2", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "118032014183771", + "description": "This is a test - please ignore", + "problemClassificationId": "/providers/Microsoft.Support/services/subscription_management_service_guid/problemClassifications/problemClassification_guid", + "problemClassificationDisplayName": "Add or Edit VAT, TAX ID, or PO Number", + "severity": "minimal", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "abc@contoso.com", + "preferredTimeZone": "Pacific Standard Time", + "country": "USA", + "preferredSupportLanguage": "en-US" + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": "xyz@contoso.com" + }, + "supportPlanType": "Premier", + "title": "Test - please ignore", + "serviceId": "/providers/Microsoft.Support/services/subscription_management_service_guid", + "serviceDisplayName": "Subscription management", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + ] + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListWebCommunicationsForSubscriptionSupportTicket.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListWebCommunicationsForSubscriptionSupportTicket.json new file mode 100644 index 000000000000..9e2b493a969a --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListWebCommunicationsForSubscriptionSupportTicket.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "$filter": "communicationType eq 'web'", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket/communications/testmessage1", + "name": "testmessage1", + "type": "Microsoft.Support/communications", + "properties": { + "subject": "this is a test message", + "body": "this is a test message", + "communicationType": "web", + "communicationDirection": "outbound", + "sender": "user@contoso.com", + "createdDate": "2020-03-10T20:18:19Z" + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket/communications/testmessage2", + "name": "testmessage2", + "type": "Microsoft.Support/communications", + "properties": { + "subject": "test", + "body": "test", + "communicationType": "web", + "communicationDirection": "outbound", + "sender": "user@contoso.com", + "createdDate": "2020-03-11T10:53:19Z" + } + } + ] + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListWebCommunicationsForSubscriptionSupportTicketCreatedOnOrAfter.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListWebCommunicationsForSubscriptionSupportTicketCreatedOnOrAfter.json new file mode 100644 index 000000000000..a8bc674a8c5c --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/ListWebCommunicationsForSubscriptionSupportTicketCreatedOnOrAfter.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "$filter": "communicationType eq 'web' and createdDate ge 2020-03-10T22:08:51Z", + "api-version": "2020-04-01" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket/communications/testmessage1", + "name": "testmessage1", + "type": "Microsoft.Support/communications", + "properties": { + "subject": "this is a test message", + "body": "this is a test message", + "communicationType": "web", + "communicationDirection": "outbound", + "sender": "user@contoso.com", + "createdDate": "2020-03-11T20:18:19Z" + } + }, + { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket/communications/testmessage2", + "name": "testmessage2", + "type": "Microsoft.Support/communications", + "properties": { + "subject": "test", + "body": "test", + "communicationType": "web", + "communicationDirection": "outbound", + "sender": "user@contoso.com", + "createdDate": "2020-03-12T10:53:19Z" + } + } + ] + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/UpdateContactDetailsOfSupportTicketForSubscription.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/UpdateContactDetailsOfSupportTicketForSubscription.json new file mode 100644 index 000000000000..5f72903136d6 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/UpdateContactDetailsOfSupportTicketForSubscription.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "updateSupportTicket": { + "contactDetails": { + "firstName": "first name", + "lastName": "last name", + "preferredContactMethod": "email", + "primaryEmailAddress": "test.name@contoso.com", + "additionalEmailAddresses": [ + "tname@contoso.com", + "teamtest@contoso.com" + ], + "phoneNumber": "123-456-7890", + "preferredTimeZone": "Pacific Standard Time", + "country": "USA", + "preferredSupportLanguage": "en-US" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "118032014183770", + "description": "This is a test - please ignore", + "problemClassificationId": "/providers/Microsoft.Support/services/subscription_management_service_guid/problemClassifications/problemClassification_guid", + "problemClassificationDisplayName": "Add or Edit VAT, TAX ID, or PO Number", + "severity": "critical", + "require24X7Response": false, + "contactDetails": { + "firstName": "first name", + "lastName": "last name", + "preferredContactMethod": "email", + "primaryEmailAddress": "test.name@contoso.com", + "additionalEmailAddresses": [ + "tname@contoso.com", + "teamtest@contoso.com" + ], + "phoneNumber": "123-456-7890", + "preferredTimeZone": "Pacific Standard Time", + "country": "USA", + "preferredSupportLanguage": "en-US" + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": "xyz@contoso.com" + }, + "supportPlanType": "Premier", + "title": "Test - please ignore", + "serviceId": "/providers/Microsoft.Support/services/subscription_management_service_guid", + "serviceDisplayName": "Subscription management", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/UpdateSeverityOfSupportTicketForSubscription.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/UpdateSeverityOfSupportTicketForSubscription.json new file mode 100644 index 000000000000..058f4f1b010c --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/UpdateSeverityOfSupportTicketForSubscription.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "updateSupportTicket": { + "severity": "critical" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "118032014183770", + "description": "This is a test - please ignore", + "problemClassificationId": "/providers/Microsoft.Support/services/subscription_management_service_guid/problemClassifications/problemClassification_guid", + "problemClassificationDisplayName": "Add or Edit VAT, TAX ID, or PO Number", + "severity": "critical", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "test.name@contoso.com", + "additionalEmailAddresses": [ + "tname@contoso.com", + "teamtest@contoso.com" + ], + "preferredTimeZone": "Pacific Standard Time", + "country": "USA", + "preferredSupportLanguage": "en-US" + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": "xyz@contoso.com" + }, + "supportPlanType": "Premier", + "title": "Test - please ignore", + "serviceId": "/providers/Microsoft.Support/services/subscription_management_service_guid", + "serviceDisplayName": "Subscription management", + "status": "Open", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/UpdateStatusOfSupportTicketForSubscription.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/UpdateStatusOfSupportTicketForSubscription.json new file mode 100644 index 000000000000..ff749325b04c --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/examples/UpdateStatusOfSupportTicketForSubscription.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "subscriptionId": "subid", + "supportTicketName": "testticket", + "api-version": "2020-04-01", + "updateSupportTicket": { + "status": "closed" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/providers/Microsoft.Support/supportTickets/testticket", + "name": "testticket", + "type": "Microsoft.Support/supportTickets", + "properties": { + "supportTicketId": "118032014183770", + "description": "This is a test - please ignore", + "problemClassificationId": "/providers/Microsoft.Support/services/subscription_management_service_guid/problemClassifications/problemClassification_guid", + "problemClassificationDisplayName": "Add or Edit VAT, TAX ID, or PO Number", + "severity": "critical", + "require24X7Response": false, + "contactDetails": { + "firstName": "abc", + "lastName": "xyz", + "preferredContactMethod": "email", + "primaryEmailAddress": "test.name@contoso.com", + "additionalEmailAddresses": [ + "tname@contoso.com", + "teamtest@contoso.com" + ], + "preferredTimeZone": "Pacific Standard Time", + "country": "USA", + "preferredSupportLanguage": "en-US" + }, + "serviceLevelAgreement": { + "startTime": "2020-03-20T21:36:18Z", + "expirationTime": "2020-03-21T17:36:18Z", + "slaMinutes": 240 + }, + "supportEngineer": { + "emailAddress": null + }, + "supportPlanType": "Premier", + "title": "Test - please ignore", + "serviceId": "/providers/Microsoft.Support/services/subscription_management_service_guid", + "serviceDisplayName": "Subscription management", + "status": "Closed", + "createdDate": "2020-03-20T21:36:18Z", + "modifiedDate": "2020-03-20T21:36:23Z" + } + } + } + } +} diff --git a/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/support.json b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/support.json new file mode 100644 index 000000000000..1ced78a858a1 --- /dev/null +++ b/specification/support/resource-manager/Microsoft.Support/stable/2020-04-01/support.json @@ -0,0 +1,1537 @@ +{ + "swagger": "2.0", + "info": { + "version": "2020-04-01", + "title": "Microsoft.Support", + "description": "Microsoft Azure Support Resource Provider." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow." + } + }, + "paths": { + "/providers/Microsoft.Support/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "This lists all the available Microsoft Support REST API operations.", + "operationId": "Operations_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved list of operations.", + "schema": { + "$ref": "#/definitions/OperationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Get all operations": { + "$ref": "./examples/ListOperations.json" + } + } + } + }, + "/providers/Microsoft.Support/services": { + "get": { + "tags": [ + "Services" + ], + "description": "Lists all the Azure services available for support ticket creation. For **Technical** issues, select the Service Id that maps to the Azure service/product as displayed in the **Services** drop-down list on the Azure portal's [New support request](https://portal.azure.com/#blade/Microsoft_Azure_Support/HelpAndSupportBlade/overview) page. Always use the service and its corresponding problem classification(s) obtained programmatically for support ticket creation. This practice ensures that you always have the most recent set of service and problem classification Ids.", + "operationId": "Services_List", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved list of the Azure services available for support.", + "schema": { + "$ref": "#/definitions/ServicesListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Gets list of services for which a support ticket can be created": { + "$ref": "./examples/ListServices.json" + } + } + } + }, + "/providers/Microsoft.Support/services/{serviceName}": { + "get": { + "tags": [ + "Services" + ], + "description": "Gets a specific Azure service for support ticket creation.", + "operationId": "Services_Get", + "parameters": [ + { + "name": "serviceName", + "in": "path", + "description": "Name of the Azure service.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved Azure service for support ticket creation.", + "schema": { + "$ref": "#/definitions/Service" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + }, + "x-ms-examples": { + "Gets details of the Azure service": { + "$ref": "./examples/GetService.json" + } + } + } + }, + "/providers/Microsoft.Support/services/{serviceName}/problemClassifications": { + "get": { + "tags": [ + "ProblemClassifications" + ], + "description": "Lists all the problem classifications (categories) available for a specific Azure service. Always use the service and problem classifications obtained programmatically. This practice ensures that you always have the most recent set of service and problem classification Ids.", + "operationId": "ProblemClassifications_List", + "parameters": [ + { + "name": "serviceName", + "in": "path", + "description": "Name of the Azure service for which the problem classifications need to be retrieved.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved list of problem classifications for the specified Azure service.", + "schema": { + "$ref": "#/definitions/ProblemClassificationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "x-ms-examples": { + "Gets list of problemClassifications for a service for which a support ticket can be created": { + "$ref": "./examples/ListProblemClassifications.json" + } + } + } + }, + "/providers/Microsoft.Support/services/{serviceName}/problemClassifications/{problemClassificationName}": { + "get": { + "tags": [ + "ProblemClassifications" + ], + "description": "Get problem classification details for a specific Azure service.", + "operationId": "ProblemClassifications_Get", + "parameters": [ + { + "name": "serviceName", + "in": "path", + "description": "Name of the Azure service available for support.", + "required": true, + "type": "string" + }, + { + "name": "problemClassificationName", + "in": "path", + "description": "Name of problem classification.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved problem classification details.", + "schema": { + "$ref": "#/definitions/ProblemClassification" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + }, + "x-ms-examples": { + "Gets details of problemClassification for Azure service": { + "$ref": "./examples/GetProblemClassification.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Support/checkNameAvailability": { + "post": { + "tags": [ + "SupportTickets" + ], + "description": "Check the availability of a resource name. This API should be used to check the uniqueness of the name for support ticket creation for the selected subscription.", + "operationId": "SupportTickets_CheckNameAvailability", + "x-ms-examples": { + "Checks whether name is available for SupportTicket resource": { + "$ref": "./examples/CheckNameAvailabilityWithSubscription.json" + } + }, + "parameters": [ + { + "name": "checkNameAvailabilityInput", + "in": "body", + "description": "Input to check.", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityInput" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityOutput" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Support/supportTickets": { + "get": { + "tags": [ + "SupportTickets" + ], + "description": "Lists all the support tickets for an Azure subscription. You can also filter the support tickets by _Status_ or _CreatedDate_ using the $filter parameter. Output will be a paged result with _nextLink_, using which you can retrieve the next set of support tickets.

    Support ticket data is available for 12 months after ticket creation. If a ticket was created more than 12 months ago, a request for data might cause an error.", + "operationId": "SupportTickets_List", + "parameters": [ + { + "name": "$top", + "in": "query", + "description": "The number of values to return in the collection. Default is 25 and max is 100.", + "required": false, + "type": "integer" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. We support 'odata v4.0' filter semantics. [Learn more](https://docs.microsoft.com/odata/concepts/queryoptions-overview). _Status_ filter can only be used with Equals ('eq') operator. For _CreatedDate_ filter, the supported operators are Greater Than ('gt') and Greater Than or Equals ('ge'). When using both filters, combine them using the logical 'AND'." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved support tickets.", + "schema": { + "$ref": "#/definitions/SupportTicketsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List support tickets for a subscription": { + "$ref": "./examples/ListSupportTicketsBySubscription.json" + }, + "List support tickets in open state for a subscription": { + "$ref": "./examples/ListSupportTicketsInOpenStateBySubscription.json" + }, + "List support tickets created on or after a certain date and in open state for a subscription": { + "$ref": "./examples/ListSupportTicketsCreatedOnOrAfterAndInOpenStateBySubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Support/supportTickets/{supportTicketName}": { + "get": { + "tags": [ + "SupportTickets" + ], + "description": "Get ticket details for an Azure subscription. Support ticket data is available for 12 months after ticket creation. If a ticket was created more than 12 months ago, a request for data might cause an error.", + "operationId": "SupportTickets_Get", + "parameters": [ + { + "name": "supportTicketName", + "in": "path", + "description": "Support ticket name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved support ticket.", + "schema": { + "$ref": "#/definitions/SupportTicketDetails" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + }, + "x-ms-examples": { + "Get details of a subscription ticket": { + "$ref": "./examples/GetSubscriptionSupportTicketDetails.json" + } + } + }, + "patch": { + "tags": [ + "SupportTickets" + ], + "description": "This API allows you to update the severity level, ticket status, and your contact information in the support ticket.

    Note: The severity levels cannot be changed if a support ticket is actively being worked upon by an Azure support engineer. In such a case, contact your support engineer to request severity update by adding a new communication using the Communications API.

    Changing the ticket status to _closed_ is allowed only on an unassigned case. When an engineer is actively working on the ticket, send your ticket closure request by sending a note to your engineer.", + "operationId": "SupportTickets_Update", + "parameters": [ + { + "name": "supportTicketName", + "in": "path", + "description": "Support ticket name.", + "required": true, + "type": "string" + }, + { + "name": "updateSupportTicket", + "in": "body", + "description": "UpdateSupportTicket object.", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateSupportTicket" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully updated support ticket.", + "schema": { + "$ref": "#/definitions/SupportTicketDetails" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + }, + "x-ms-examples": { + "Update severity of a support ticket": { + "$ref": "./examples/UpdateSeverityOfSupportTicketForSubscription.json" + }, + "Update contact details of a support ticket": { + "$ref": "./examples/UpdateContactDetailsOfSupportTicketForSubscription.json" + }, + "Update status of a support ticket": { + "$ref": "./examples/UpdateStatusOfSupportTicketForSubscription.json" + } + } + }, + "put": { + "tags": [ + "SupportTickets" + ], + "description": "Creates a new support ticket for Subscription and Service limits (Quota), Technical, Billing, and Subscription Management issues for the specified subscription. Learn the [prerequisites](https://aka.ms/supportAPI) required to create a support ticket.

    Always call the Services and ProblemClassifications API to get the most recent set of services and problem categories required for support ticket creation.

    Adding attachments is not currently supported via the API. To add a file to an existing support ticket, visit the [Manage support ticket](https://portal.azure.com/#blade/Microsoft_Azure_Support/HelpAndSupportBlade/managesupportrequest) page in the Azure portal, select the support ticket, and use the file upload control to add a new file.

    Providing consent to share diagnostic information with Azure support is currently not supported via the API. The Azure support engineer working on your ticket will reach out to you for consent if your issue requires gathering diagnostic information from your Azure resources.

    **Creating a support ticket for on-behalf-of**: Include _x-ms-authorization-auxiliary_ header to provide an auxiliary token as per [documentation](https://docs.microsoft.com/azure/azure-resource-manager/management/authenticate-multi-tenant). The primary token will be from the tenant for whom a support ticket is being raised against the subscription, i.e. Cloud solution provider (CSP) customer tenant. The auxiliary token will be from the Cloud solution provider (CSP) partner tenant.", + "operationId": "SupportTickets_Create", + "parameters": [ + { + "name": "supportTicketName", + "in": "path", + "description": "Support ticket name.", + "required": true, + "type": "string" + }, + { + "name": "createSupportTicketParameters", + "in": "body", + "description": "Support ticket request payload.", + "required": true, + "schema": { + "$ref": "#/definitions/SupportTicketDetails" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - SupportTicket created successfully.", + "schema": { + "$ref": "#/definitions/SupportTicketDetails" + } + }, + "202": { + "description": "Accepted, SupportTicket will be created asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "Create a ticket for Billing related issues": { + "$ref": "./examples/CreateBillingSupportTicketForSubscription.json" + }, + "Create a ticket for Subscription Management related issues": { + "$ref": "./examples/CreateSubMgmtSupportTicketForSubscription.json" + }, + "Create a ticket for Technical issue related to a specific resource": { + "$ref": "./examples/CreateTechnicalSupportTicketForSubscription.json" + }, + "Create a ticket to request Quota increase for Compute VM Cores": { + "$ref": "./examples/CreateCoresQuotaTicketForSubscription.json" + }, + "Create a ticket to request Quota increase for Low-priority cores for a Batch account": { + "$ref": "./examples/CreateBatchQuotaTicketForSpecificBatchAccountForLowPriorityCores.json" + }, + "Create a ticket to request Quota increase for specific VM family cores for a Batch account": { + "$ref": "./examples/CreateBatchQuotaTicketForSpecificBatchAccountForDedicatedCores.json" + }, + "Create a ticket to request Quota increase for Pools for a Batch account": { + "$ref": "./examples/CreateBatchQuotaTicketForSpecificBatchAccountForPools.json" + }, + "Create a ticket to request Quota increase for Active Jobs and Job Schedules for a Batch account": { + "$ref": "./examples/CreateBatchQuotaTicketForSpecificBatchAccountForActiveJobs.json" + }, + "Create a ticket to request Quota increase for Batch accounts for a subscription": { + "$ref": "./examples/CreateBatchQuotaTicketForSubscription.json" + }, + "Create a ticket to request Quota increase for DTUs for SQL Database": { + "$ref": "./examples/CreateSqlDatabaseQuotaTicketForDTUs.json" + }, + "Create a ticket to request Quota increase for Servers for SQL Database": { + "$ref": "./examples/CreateSqlDatabaseQuotaTicketForServers.json" + }, + "Create a ticket to request Quota increase for DTUs for Azure Synapse Analytics": { + "$ref": "./examples/CreateSqlDatawarehouseQuotaTicketForDTUs.json" + }, + "Create a ticket to request Quota increase for Servers for Azure Synapse Analytics": { + "$ref": "./examples/CreateSqlDatawarehouseQuotaTicketForServers.json" + }, + "Create a ticket to request Quota increase for specific VM family cores for Machine Learning service": { + "$ref": "./examples/CreateMachineLearningQuotaTicketForDedicatedCores.json" + }, + "Create a ticket to request Quota increase for Low-priority cores for Machine Learning service": { + "$ref": "./examples/CreateMachineLearningQuotaTicketForLowPriorityCores.json" + }, + "Create a ticket to request Quota increase for services that do not require additional details in the quotaTicketDetails object": { + "$ref": "./examples/CreateGenericQuotaTicket.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Support/supportTickets/{supportTicketName}/checkNameAvailability": { + "post": { + "tags": [ + "Communications" + ], + "description": "Check the availability of a resource name. This API should be used to check the uniqueness of the name for adding a new communication to the support ticket.", + "operationId": "Communications_CheckNameAvailability", + "x-ms-examples": { + "Checks whether name is available for Communication resource": { + "$ref": "./examples/CheckNameAvailabilityForSupportTicketCommunication.json" + } + }, + "parameters": [ + { + "name": "supportTicketName", + "in": "path", + "description": "Support ticket name.", + "required": true, + "type": "string" + }, + { + "name": "checkNameAvailabilityInput", + "in": "body", + "description": "Input to check.", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityInput" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityOutput" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Support/supportTickets/{supportTicketName}/communications": { + "get": { + "tags": [ + "Communications" + ], + "description": "Lists all communications (attachments not included) for a support ticket.

    You can also filter support ticket communications by _CreatedDate_ or _CommunicationType_ using the $filter parameter. The only type of communication supported today is _Web_. Output will be a paged result with _nextLink_, using which you can retrieve the next set of Communication results.

    Support ticket data is available for 12 months after ticket creation. If a ticket was created more than 12 months ago, a request for data might cause an error.", + "operationId": "Communications_List", + "parameters": [ + { + "name": "supportTicketName", + "in": "path", + "description": "Support ticket name.", + "required": true, + "type": "string" + }, + { + "name": "$top", + "in": "query", + "description": "The number of values to return in the collection. Default is 10 and max is 10.", + "required": false, + "type": "integer" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "The filter to apply on the operation. You can filter by communicationType and createdDate properties. CommunicationType supports Equals ('eq') operator and createdDate supports Greater Than ('gt') and Greater Than or Equals ('ge') operators. You may combine the CommunicationType and CreatedDate filters by Logical And ('and') operator." + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved communications for a support ticket.", + "schema": { + "$ref": "#/definitions/CommunicationsListResult" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List communications for a subscription support ticket": { + "$ref": "./examples/ListCommunicationsForSubscriptionSupportTicket.json" + }, + "List web communications for a subscription support ticket": { + "$ref": "./examples/ListWebCommunicationsForSubscriptionSupportTicket.json" + }, + "List web communication created on or after a specific date for a subscription support ticket": { + "$ref": "./examples/ListWebCommunicationsForSubscriptionSupportTicketCreatedOnOrAfter.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Support/supportTickets/{supportTicketName}/communications/{communicationName}": { + "get": { + "tags": [ + "Communications" + ], + "description": "Returns communication details for a support ticket.", + "operationId": "Communications_Get", + "parameters": [ + { + "name": "supportTicketName", + "in": "path", + "description": "Support ticket name.", + "required": true, + "type": "string" + }, + { + "name": "communicationName", + "in": "path", + "description": "Communication name.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Successfully retrieved communication details.", + "schema": { + "$ref": "#/definitions/CommunicationDetails" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + }, + "x-ms-examples": { + "Get communication details for a subscription support ticket": { + "$ref": "./examples/GetCommunicationDetailsForSubscriptionSupportTicket.json" + } + } + }, + "put": { + "tags": [ + "Communications" + ], + "description": "Adds a new customer communication to an Azure support ticket.", + "operationId": "Communications_Create", + "parameters": [ + { + "name": "supportTicketName", + "in": "path", + "description": "Support ticket name.", + "required": true, + "type": "string" + }, + { + "name": "communicationName", + "in": "path", + "description": "Communication name.", + "required": true, + "type": "string" + }, + { + "name": "createCommunicationParameters", + "in": "body", + "description": "Communication object.", + "required": true, + "schema": { + "$ref": "#/definitions/CommunicationDetails" + } + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK - Communication created successfully.", + "schema": { + "$ref": "#/definitions/CommunicationDetails" + } + }, + "202": { + "description": "Accepted - Communication will be created asynchronously." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ExceptionResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-examples": { + "AddCommunicationToSubscriptionTicket": { + "$ref": "./examples/CreateSupportTicketCommunication.json" + } + } + } + } + }, + "definitions": { + "OperationsListResult": { + "description": "The list of operations supported by Microsoft Support resource provider.", + "properties": { + "value": { + "description": "The list of operations supported by Microsoft Support resource provider.", + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + } + } + } + }, + "Operation": { + "description": "The operation supported by Microsoft Support resource provider.", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}.", + "type": "string", + "readOnly": true + }, + "display": { + "description": "The object that describes the operation.", + "properties": { + "description": { + "description": "The description of the operation.", + "type": "string", + "readOnly": true + }, + "operation": { + "description": "The action that users can perform, based on their permission level.", + "type": "string", + "readOnly": true + }, + "provider": { + "description": "Service provider: Microsoft Support.", + "type": "string", + "readOnly": true + }, + "resource": { + "description": "Resource on which the operation is performed.", + "type": "string", + "readOnly": true + } + } + } + } + }, + "ServicesListResult": { + "description": "Collection of Service resources.", + "type": "object", + "properties": { + "value": { + "description": "List of Service resources.", + "type": "array", + "items": { + "$ref": "#/definitions/Service" + } + } + } + }, + "Service": { + "description": "Object that represents a Service resource.", + "type": "object", + "properties": { + "id": { + "description": "Id of the resource.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of the resource 'Microsoft.Support/services'.", + "type": "string", + "readOnly": true + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceProperties", + "description": "Properties of the resource." + } + } + }, + "ServiceProperties": { + "description": "Details about an Azure service available for support ticket creation.", + "type": "object", + "properties": { + "displayName": { + "description": "Localized name of the Azure service.", + "type": "string" + }, + "resourceTypes": { + "description": "ARM Resource types.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "ProblemClassificationsListResult": { + "description": "Collection of ProblemClassification resources.", + "type": "object", + "properties": { + "value": { + "description": "List of ProblemClassification resources.", + "type": "array", + "items": { + "$ref": "#/definitions/ProblemClassification" + } + } + } + }, + "ProblemClassification": { + "description": "ProblemClassification resource object.", + "type": "object", + "properties": { + "id": { + "description": "Id of the resource.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of the resource 'Microsoft.Support/problemClassification'.", + "type": "string", + "readOnly": true + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProblemClassificationProperties", + "description": "Properties of the resource." + } + } + }, + "ProblemClassificationProperties": { + "description": "Details about a problem classification available for an Azure service.", + "type": "object", + "properties": { + "displayName": { + "description": "Localized name of problem classification.", + "type": "string" + } + } + }, + "CheckNameAvailabilityInput": { + "description": "Input of CheckNameAvailability API.", + "type": "object", + "required": [ + "name", + "type" + ], + "properties": { + "name": { + "description": "The resource name to validate.", + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Support/supportTickets", + "Microsoft.Support/communications" + ], + "x-ms-enum": { + "name": "Type", + "modelAsString": false + }, + "description": "The type of resource." + } + } + }, + "CheckNameAvailabilityOutput": { + "description": "Output of check name availability API.", + "type": "object", + "properties": { + "nameAvailable": { + "description": "Indicates whether the name is available.", + "readOnly": true, + "type": "boolean" + }, + "reason": { + "description": "The reason why the name is not available.", + "readOnly": true, + "type": "string" + }, + "message": { + "description": "The detailed error message describing why the name is not available.", + "readOnly": true, + "type": "string" + } + } + }, + "SupportTicketsListResult": { + "description": "Object that represents a collection of SupportTicket resources.", + "type": "object", + "properties": { + "value": { + "description": "List of SupportTicket resources.", + "type": "array", + "items": { + "$ref": "#/definitions/SupportTicketDetails" + } + }, + "nextLink": { + "description": "The URI to fetch the next page of SupportTicket resources.", + "type": "string" + } + } + }, + "SupportTicketDetails": { + "x-ms-azure-resource": true, + "description": "Object that represents SupportTicketDetails resource.", + "type": "object", + "properties": { + "id": { + "description": "Id of the resource.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of the resource 'Microsoft.Support/supportTickets'.", + "type": "string", + "readOnly": true + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SupportTicketDetailsProperties", + "description": "Properties of the resource." + } + } + }, + "CommunicationsListResult": { + "description": "Collection of Communication resources.", + "type": "object", + "properties": { + "value": { + "description": "List of Communication resources.", + "type": "array", + "items": { + "$ref": "#/definitions/CommunicationDetails" + } + }, + "nextLink": { + "description": "The URI to fetch the next page of Communication resources.", + "type": "string" + } + } + }, + "CommunicationDetails": { + "x-ms-azure-resource": true, + "description": "Object that represents a Communication resource.", + "type": "object", + "properties": { + "id": { + "description": "Id of the resource.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "Name of the resource.", + "type": "string", + "readOnly": true + }, + "type": { + "description": "Type of the resource 'Microsoft.Support/communications'.", + "type": "string", + "readOnly": true + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CommunicationDetailsProperties", + "description": "Properties of the resource." + } + } + }, + "CommunicationDetailsProperties": { + "description": "Describes the properties of a communication resource.", + "required": [ + "subject", + "body" + ], + "type": "object", + "properties": { + "communicationType": { + "description": "Communication type.", + "enum": [ + "web", + "phone" + ], + "type": "string", + "x-ms-enum": { + "name": "CommunicationType", + "modelAsString": true + }, + "readOnly": true + }, + "communicationDirection": { + "description": "Direction of communication.", + "enum": [ + "inbound", + "outbound" + ], + "type": "string", + "x-ms-enum": { + "name": "CommunicationDirection", + "modelAsString": true + }, + "readOnly": true + }, + "sender": { + "description": "Email address of the sender. This property is required if called by a service principal.", + "type": "string" + }, + "subject": { + "description": "Subject of the communication.", + "type": "string" + }, + "body": { + "description": "Body of the communication.", + "type": "string" + }, + "createdDate": { + "format": "date-time", + "description": "Time in UTC (ISO 8601 format) when the communication was created.", + "type": "string", + "readOnly": true + } + } + }, + "SupportTicketDetailsProperties": { + "description": "Describes the properties of a support ticket.", + "required": [ + "serviceId", + "title", + "description", + "problemClassificationId", + "severity", + "contactDetails" + ], + "type": "object", + "properties": { + "supportTicketId": { + "description": "System generated support ticket Id that is unique.", + "type": "string" + }, + "description": { + "description": "Detailed description of the question or issue.", + "type": "string" + }, + "problemClassificationId": { + "description": "Each Azure service has its own set of issue categories, also known as problem classification. This parameter is the unique Id for the type of problem you are experiencing.", + "type": "string" + }, + "problemClassificationDisplayName": { + "type": "string", + "description": "Localized name of problem classification.", + "readOnly": true + }, + "severity": { + "description": "A value that indicates the urgency of the case, which in turn determines the response time according to the service level agreement of the technical support plan you have with Azure. Note: 'Highest critical impact' severity is reserved only for our Premium customers.", + "enum": [ + "minimal", + "moderate", + "critical", + "highestcriticalimpact" + ], + "type": "string", + "x-ms-enum": { + "name": "SeverityLevel", + "modelAsString": true + } + }, + "enrollmentId": { + "description": "Enrollment Id associated with the support ticket.", + "type": "string", + "readOnly": true + }, + "require24X7Response": { + "description": "Indicates if this requires a 24x7 response from Azure.", + "type": "boolean" + }, + "contactDetails": { + "$ref": "#/definitions/ContactProfile", + "description": "Contact information of the user requesting to create a support ticket." + }, + "serviceLevelAgreement": { + "$ref": "#/definitions/ServiceLevelAgreement", + "description": "Service Level Agreement information for this support ticket." + }, + "supportEngineer": { + "$ref": "#/definitions/SupportEngineer", + "description": "Information about the support engineer working on this support ticket." + }, + "supportPlanType": { + "description": "Support plan type associated with the support ticket.", + "type": "string", + "readOnly": true + }, + "title": { + "description": "Title of the support ticket.", + "type": "string" + }, + "problemStartTime": { + "format": "date-time", + "description": "Time in UTC (ISO 8601 format) when the problem started.", + "type": "string" + }, + "serviceId": { + "description": "This is the resource Id of the Azure service resource associated with the support ticket.", + "type": "string" + }, + "serviceDisplayName": { + "type": "string", + "description": "Localized name of the Azure service.", + "readOnly": true + }, + "status": { + "description": "Status of the support ticket.", + "type": "string", + "readOnly": true + }, + "createdDate": { + "format": "date-time", + "description": "Time in UTC (ISO 8601 format) when the support ticket was created.", + "type": "string", + "readOnly": true + }, + "modifiedDate": { + "format": "date-time", + "description": "Time in UTC (ISO 8601 format) when the support ticket was last modified.", + "type": "string", + "readOnly": true + }, + "technicalTicketDetails": { + "$ref": "#/definitions/TechnicalTicketDetails", + "description": "Additional ticket details associated with a technical support ticket request." + }, + "quotaTicketDetails": { + "$ref": "#/definitions/QuotaTicketDetails", + "description": "Additional ticket details associated with a quota support ticket request." + } + } + }, + "ServiceLevelAgreement": { + "description": "Service Level Agreement details for a support ticket.", + "type": "object", + "properties": { + "startTime": { + "format": "date-time", + "description": "Time in UTC (ISO 8601 format) when the service level agreement starts.", + "type": "string", + "readOnly": true + }, + "expirationTime": { + "format": "date-time", + "description": "Time in UTC (ISO 8601 format) when the service level agreement expires.", + "type": "string", + "readOnly": true + }, + "slaMinutes": { + "description": "Service Level Agreement in minutes.", + "type": "integer", + "readOnly": true + } + } + }, + "SupportEngineer": { + "description": "Support engineer information.", + "type": "object", + "properties": { + "emailAddress": { + "description": "Email address of the Azure Support engineer assigned to the support ticket.", + "type": "string", + "readOnly": true + } + } + }, + "ExceptionResponse": { + "type": "object", + "properties": { + "error": { + "$ref": "#/definitions/ServiceError", + "description": "The API error details." + } + }, + "description": "The API error." + }, + "ServiceError": { + "type": "object", + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "message": { + "type": "string", + "description": "The error message." + }, + "target": { + "type": "string", + "description": "The target of the error." + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceErrorDetail" + }, + "description": "The list of error details.", + "readOnly": true + } + }, + "description": "The API error details." + }, + "ServiceErrorDetail": { + "type": "object", + "properties": { + "code": { + "type": "string", + "readOnly": true, + "description": "The error code." + }, + "message": { + "type": "string", + "readOnly": true, + "description": "The error message." + }, + "target": { + "type": "string", + "description": "The target of the error." + } + }, + "description": "The error details." + }, + "ContactProfile": { + "description": "Contact information associated with the support ticket.", + "required": [ + "firstName", + "lastName", + "preferredContactMethod", + "primaryEmailAddress", + "preferredTimeZone", + "country", + "preferredSupportLanguage" + ], + "type": "object", + "properties": { + "firstName": { + "description": "First name.", + "type": "string" + }, + "lastName": { + "description": "Last name.", + "type": "string" + }, + "preferredContactMethod": { + "description": "Preferred contact method.", + "enum": [ + "email", + "phone" + ], + "type": "string", + "x-ms-enum": { + "name": "PreferredContactMethod", + "modelAsString": true + } + }, + "primaryEmailAddress": { + "description": "Primary email address.", + "type": "string" + }, + "additionalEmailAddresses": { + "description": "Additional email addresses listed will be copied on any correspondence about the support ticket.", + "type": "array", + "items": { + "type": "string" + } + }, + "phoneNumber": { + "description": "Phone number. This is required if preferred contact method is phone.", + "type": "string" + }, + "preferredTimeZone": { + "description": "Time zone of the user. This is the name of the time zone from [Microsoft Time Zone Index Values](https://support.microsoft.com/help/973627/microsoft-time-zone-index-values).", + "type": "string" + }, + "country": { + "description": "Country of the user. This is the ISO 3166-1 alpha-3 code.", + "type": "string" + }, + "preferredSupportLanguage": { + "description": "Preferred language of support from Azure. Support languages vary based on the severity you choose for your support ticket. Learn more at [Azure Severity and responsiveness](https://azure.microsoft.com/support/plans/response). Use the standard language-country code. Valid values are 'en-us' for English, 'zh-hans' for Chinese, 'es-es' for Spanish, 'fr-fr' for French, 'ja-jp' for Japanese, 'ko-kr' for Korean, 'ru-ru' for Russian, 'pt-br' for Portuguese, 'it-it' for Italian, 'zh-tw' for Chinese and 'de-de' for German.", + "type": "string" + } + } + }, + "UpdateContactProfile": { + "description": "Contact information associated with the support ticket.", + "type": "object", + "properties": { + "firstName": { + "description": "First name.", + "type": "string" + }, + "lastName": { + "description": "Last name.", + "type": "string" + }, + "preferredContactMethod": { + "description": "Preferred contact method.", + "enum": [ + "email", + "phone" + ], + "type": "string", + "x-ms-enum": { + "name": "PreferredContactMethod", + "modelAsString": true + } + }, + "primaryEmailAddress": { + "description": "Primary email address.", + "type": "string" + }, + "additionalEmailAddresses": { + "description": "Email addresses listed will be copied on any correspondence about the support ticket.", + "type": "array", + "items": { + "type": "string" + } + }, + "phoneNumber": { + "description": "Phone number. This is required if preferred contact method is phone.", + "type": "string" + }, + "preferredTimeZone": { + "description": "Time zone of the user. This is the name of the time zone from [Microsoft Time Zone Index Values](https://support.microsoft.com/help/973627/microsoft-time-zone-index-values).", + "type": "string" + }, + "country": { + "description": "Country of the user. This is the ISO 3166-1 alpha-3 code.", + "type": "string" + }, + "preferredSupportLanguage": { + "description": "Preferred language of support from Azure. Support languages vary based on the severity you choose for your support ticket. Learn more at [Azure Severity and responsiveness](https://azure.microsoft.com/support/plans/response/). Use the standard language-country code. Valid values are 'en-us' for English, 'zh-hans' for Chinese, 'es-es' for Spanish, 'fr-fr' for French, 'ja-jp' for Japanese, 'ko-kr' for Korean, 'ru-ru' for Russian, 'pt-br' for Portuguese, 'it-it' for Italian, 'zh-tw' for Chinese and 'de-de' for German.", + "type": "string" + } + } + }, + "TechnicalTicketDetails": { + "description": "Additional information for technical support ticket.", + "type": "object", + "properties": { + "resourceId": { + "description": "This is the resource Id of the Azure service resource (For example: A virtual machine resource or an HDInsight resource) for which the support ticket is created.", + "type": "string" + } + } + }, + "QuotaTicketDetails": { + "description": "Additional set of information required for quota increase support ticket for certain quota types, e.g.: Virtual machine cores. Get complete details about Quota payload support request along with examples at [Support quota request](https://aka.ms/supportrpquotarequestpayload).", + "type": "object", + "properties": { + "quotaChangeRequestSubType": { + "description": "Required for certain quota types when there is a sub type, such as Batch, for which you are requesting a quota increase.", + "type": "string" + }, + "quotaChangeRequestVersion": { + "description": "Quota change request version.", + "type": "string" + }, + "quotaChangeRequests": { + "description": "This property is required for providing the region and new quota limits.", + "type": "array", + "items": { + "$ref": "#/definitions/QuotaChangeRequest" + } + } + } + }, + "QuotaChangeRequest": { + "description": "This property is required for providing the region and new quota limits.", + "type": "object", + "properties": { + "region": { + "description": "Region for which the quota increase request is being made.", + "type": "string" + }, + "payload": { + "description": "Payload of the quota increase request.", + "type": "string" + } + } + }, + "UpdateSupportTicket": { + "description": "Updates severity, ticket status, and contact details in the support ticket.", + "type": "object", + "properties": { + "severity": { + "description": "Severity level.", + "enum": [ + "minimal", + "moderate", + "critical", + "highestcriticalimpact" + ], + "type": "string", + "x-ms-enum": { + "name": "SeverityLevel", + "modelAsString": true + } + }, + "status": { + "description": "Status to be updated on the ticket.", + "enum": [ + "open", + "closed" + ], + "type": "string", + "x-ms-enum": { + "name": "Status", + "modelAsString": true + } + }, + "contactDetails": { + "$ref": "#/definitions/UpdateContactProfile", + "description": "Contact details to be updated on the support ticket." + } + } + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Azure subscription Id." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "API version." + } + } +} diff --git a/specification/support/resource-manager/readme.go.md b/specification/support/resource-manager/readme.go.md index b052656f1700..c49e32cf649c 100644 --- a/specification/support/resource-manager/readme.go.md +++ b/specification/support/resource-manager/readme.go.md @@ -13,9 +13,19 @@ go: ``` yaml $(go) && $(multiapi) batch: + - tag: package-2020-04 - tag: package-2019-05-preview ``` +### Tag: package-2020-04 and go + +These settings apply only when `--tag=package-2020-04 --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag)=='package-2020-04' && $(go) +output-folder: $(go-sdk-folder)/services/support/mgmt/2020-04-01/support +``` + ### Tag: package-2019-05-preview and go These settings apply only when `--tag=package-2019-05-preview --go` is specified on the command line. diff --git a/specification/support/resource-manager/readme.java.md b/specification/support/resource-manager/readme.java.md index 4975ccadad75..c264f75b43b6 100644 --- a/specification/support/resource-manager/readme.java.md +++ b/specification/support/resource-manager/readme.java.md @@ -4,21 +4,35 @@ These settings apply only when `--java` is specified on the command line. Please also specify `--azure-libraries-for-java-folder=`. ``` yaml $(java) -java: - azure-arm: true - fluent: true - namespace: com.microsoft.azure.management.support - license-header: MICROSOFT_MIT_NO_CODEGEN - payload-flattening-threshold: 1 - output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-support +azure-arm: true +fluent: true +namespace: com.microsoft.azure.management.support +license-header: MICROSOFT_MIT_NO_CODEGEN +payload-flattening-threshold: 1 +output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-support ``` + ### Java multi-api ``` yaml $(java) && $(multiapi) batch: + - tag: package-2020-04 - tag: package-2019-05-preview ``` +### Tag: package-2020-04 and java + +These settings apply only when `--tag=package-2020-04 --java` is specified on the command line. +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2020-04' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.support.v2020_04_01 + output-folder: $(azure-libraries-for-java-folder)/sdk/support/mgmt-v2020_04_01 +regenerate-manager: true +generate-interface: true +``` + ### Tag: package-2019-05-preview and java These settings apply only when `--tag=package-2019-05-preview --java` is specified on the command line. diff --git a/specification/support/resource-manager/readme.md b/specification/support/resource-manager/readme.md index 64d1a4e1b161..5dfd3045f68a 100644 --- a/specification/support/resource-manager/readme.md +++ b/specification/support/resource-manager/readme.md @@ -24,7 +24,16 @@ These are the global settings for the Support API. ``` yaml openapi-type: arm -tag: package-2019-05-preview +tag: package-2020-04 +``` + +### Tag: package-2020-04 + +These settings apply only when `--tag=package-2020-04` is specified on the command line. + +```yaml $(tag) == 'package-2020-04' +input-file: + - Microsoft.Support/stable/2020-04-01/support.json ``` ### Tag: package-2019-05-preview @@ -93,6 +102,7 @@ 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 ``` diff --git a/specification/support/resource-manager/readme.python.md b/specification/support/resource-manager/readme.python.md index 6166b3f9a265..626d7b0184ae 100644 --- a/specification/support/resource-manager/readme.python.md +++ b/specification/support/resource-manager/readme.python.md @@ -18,10 +18,10 @@ python: ``` yaml $(python) && $(python-mode) == 'update' python: no-namespace-folders: true - output-folder: $(python-sdks-folder)/azure-mgmt-support/azure/mgmt/support + output-folder: $(python-sdks-folder)/support/azure-mgmt-support/azure/mgmt/support ``` ``` yaml $(python) && $(python-mode) == 'create' python: basic-setup-py: true - output-folder: $(python-sdks-folder)/azure-mgmt-support + output-folder: $(python-sdks-folder)/support/azure-mgmt-support ``` diff --git a/specification/support/resource-manager/readme.ruby.md b/specification/support/resource-manager/readme.ruby.md index ded8e14cfb93..aac9b61f1391 100644 --- a/specification/support/resource-manager/readme.ruby.md +++ b/specification/support/resource-manager/readme.ruby.md @@ -12,9 +12,20 @@ ruby: ``` yaml $(ruby) && $(multiapi) batch: + - tag: package-2020-04 - tag: package-2019-05-preview ``` +### Tag: package-2020-04 and ruby + +These settings apply only when `--tag=package-2020-04 --ruby` is specified on the command line. +Please also specify `--ruby-sdks-folder=`. + +``` yaml $(tag) == 'package-2020-04' && $(ruby) +namespace: "Azure::Support::Mgmt::V2020_04_01" +output-folder: $(ruby-sdks-folder)/management/azure_mgmt_support/lib/2020-04-01 +``` + ### Tag: package-2019-05-preview and ruby These settings apply only when `--tag=package-2019-05-preview --ruby` is specified on the command line. diff --git a/specification/support/resource-manager/readme.typescript.md b/specification/support/resource-manager/readme.typescript.md index 099d5ba49723..f762dd25e367 100644 --- a/specification/support/resource-manager/readme.typescript.md +++ b/specification/support/resource-manager/readme.typescript.md @@ -6,8 +6,8 @@ Please also specify `--typescript-sdks-folder=*#.%&:\\\\+?/]*$", + "minLength": 1, + "maxLength": 260, + "x-ms-parameter-location": "method" + }, + "datasetName": { + "name": "datasetName", + "description": "The dataset name.", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[A-Za-z0-9_][^<>*#.%&:\\\\+?/]*$", + "minLength": 1, + "maxLength": 260, + "x-ms-parameter-location": "method" + }, + "pipelineName": { + "name": "pipelineName", + "description": "The pipeline name.", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[A-Za-z0-9_][^<>*#.%&:\\\\+?/]*$", + "minLength": 1, + "maxLength": 260, + "x-ms-parameter-location": "method" + }, + "dataFlowName": { + "name": "dataFlowName", + "description": "The data flow name.", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[A-Za-z0-9_][^<>*#.%&:\\\\+?/]*$", + "minLength": 1, + "maxLength": 260, + "x-ms-parameter-location": "method" + }, + "triggerName": { + "name": "triggerName", + "description": "The trigger name.", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[A-Za-z0-9_][^<>*#.%&:\\\\+?/]*$", + "minLength": 1, + "maxLength": 260, + "x-ms-parameter-location": "method" + }, + "rerunTriggerName": { + "name": "rerunTriggerName", + "description": "The rerun trigger name.", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[A-Za-z0-9_][^<>*#.%&:\\\\+?/]*$", + "minLength": 1, + "maxLength": 260, + "x-ms-parameter-location": "method" + }, + "runId": { + "name": "runId", + "description": "The pipeline run identifier.", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "sessionId": { + "name": "sessionId", + "description": "The data flow session identifier.", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "jobVersion": { + "name": "jobVersion", + "description": "The data flow job version identifier.", + "in": "path", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "nodeName": { + "name": "nodeName", + "description": "The integration runtime node name.", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-z0-9A-Z][a-z0-9A-Z_-]{0,149}$", + "minLength": 1, + "maxLength": 150, + "x-ms-parameter-location": "method" + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The Synapse client API Version." + }, + "SynapseDnsSuffixInPath": { + "name": "SynapseDnsSuffix", + "in": "path", + "required": true, + "type": "string", + "default": "dev.azuresynapse.net", + "x-ms-skip-url-encoding": true, + "description": "Gets the DNS suffix used as the base for all Synapse service requests.", + "x-ms-parameter-location": "client" + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/DataFlow.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/DataFlow.json new file mode 100644 index 000000000000..d1317f5bd0e2 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/DataFlow.json @@ -0,0 +1,137 @@ +{ + "swagger": "2.0", + "info": { + "title": "SynapseClient", + "version": "2019-11-01-preview" + }, + "paths": {}, + "definitions": { + "DataFlow": { + "description": "Azure Synapse nested object which contains a flow with data movements and transformations.", + "type": "object", + "discriminator": "type", + "properties": { + "type": { + "type": "string", + "description": "Type of data flow." + }, + "description": { + "description": "The description of the data flow.", + "type": "string" + }, + "annotations": { + "description": "List of tags that can be used for describing the data flow.", + "type": "array", + "items": { + "type": "object" + } + }, + "folder": { + "description": "The folder that this data flow is in. If not specified, Data flow will appear at the root level.", + "type": "object", + "properties": { + "name": { + "description": "The name of the folder that this data flow is in.", + "type": "string" + } + } + } + }, + "required": [ + "type" + ] + }, + "MappingDataFlow": { + "x-ms-discriminator-value": "MappingDataFlow", + "description": "Mapping data flow.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DataFlow" + } + ], + "properties": { + "typeProperties": { + "description": "Mapping data flow type properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/MappingDataFlowTypeProperties" + } + } + }, + "MappingDataFlowTypeProperties": { + "description": "Mapping data flow type properties.", + "properties": { + "sources": { + "type": "array", + "description": "List of sources in data flow.", + "items": { + "$ref": "#/definitions/DataFlowSource" + } + }, + "sinks": { + "type": "array", + "description": "List of sinks in data flow.", + "items": { + "$ref": "#/definitions/DataFlowSink" + } + }, + "transformations": { + "type": "array", + "description": "List of transformations in data flow.", + "items": { + "$ref": "#/definitions/Transformation" + } + }, + "script": { + "type": "string", + "description": "DataFlow script." + } + } + }, + "Transformation": { + "description": "A data flow transformation.", + "type": "object", + "properties": { + "name": { + "description": "Transformation name.", + "type": "string" + }, + "description": { + "description": "Transformation description.", + "type": "string" + } + }, + "required": [ + "name" + ] + }, + "DataFlowSource": { + "description": "Transformation for data flow source.", + "allOf": [ + { + "$ref": "#/definitions/Transformation" + } + ], + "properties": { + "dataset": { + "description": "Dataset reference.", + "$ref": "../datafactory.json#/definitions/DatasetReference" + } + } + }, + "DataFlowSink": { + "description": "Transformation for data flow sink.", + "allOf": [ + { + "$ref": "#/definitions/Transformation" + } + ], + "properties": { + "dataset": { + "description": "Dataset reference.", + "$ref": "../datafactory.json#/definitions/DatasetReference" + } + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/Dataset.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/Dataset.json new file mode 100644 index 000000000000..29f8b205d98f --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/Dataset.json @@ -0,0 +1,2793 @@ +{ + "swagger": "2.0", + "info": { + "title": "SynapseClient", + "version": "2019-11-01-preview" + }, + "paths": {}, + "definitions": { + "Dataset": { + "description": "The Azure Data Factory nested object which identifies data within different data stores, such as tables, files, folders, and documents.", + "type": "object", + "discriminator": "type", + "properties": { + "type": { + "type": "string", + "description": "Type of dataset." + }, + "description": { + "description": "Dataset description.", + "type": "string" + }, + "structure": { + "type": "object", + "description": "Columns that define the structure of the dataset. Type: array (or Expression with resultType array), itemType: DatasetDataElement." + }, + "schema": { + "type": "object", + "description": "Columns that define the physical type schema of the dataset. Type: array (or Expression with resultType array), itemType: DatasetSchemaDataElement." + }, + "linkedServiceName": { + "description": "Linked service reference.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "parameters": { + "$ref": "../datafactory.json#/definitions/ParameterDefinitionSpecification", + "description": "Parameters for dataset." + }, + "annotations": { + "description": "List of tags that can be used for describing the Dataset.", + "type": "array", + "items": { + "type": "object" + } + }, + "folder": { + "description": "The folder that this Dataset is in. If not specified, Dataset will appear at the root level.", + "type": "object", + "properties": { + "name": { + "description": "The name of the folder that this Dataset is in.", + "type": "string" + } + } + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type", + "linkedServiceName" + ] + }, + "DatasetLocation": { + "description": "Dataset location.", + "discriminator": "type", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Type of dataset storage location." + }, + "folderPath": { + "type": "object", + "description": "Specify the folder path of dataset. Type: string (or Expression with resultType string)" + }, + "fileName": { + "type": "object", + "description": "Specify the file name of dataset. Type: string (or Expression with resultType string)." + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "AzureBlobStorageLocation": { + "description": "The location of azure blob dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetLocation" + } + ], + "properties": { + "container": { + "type": "object", + "description": "Specify the container of azure blob. Type: string (or Expression with resultType string)." + } + } + }, + "AzureBlobFSLocation": { + "description": "The location of azure blobFS dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetLocation" + } + ], + "properties": { + "fileSystem": { + "type": "object", + "description": "Specify the fileSystem of azure blobFS. Type: string (or Expression with resultType string)." + } + } + }, + "AzureDataLakeStoreLocation": { + "description": "The location of azure data lake store dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetLocation" + } + ] + }, + "AmazonS3Location": { + "description": "The location of amazon S3 dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetLocation" + } + ], + "properties": { + "bucketName": { + "type": "object", + "description": "Specify the bucketName of amazon S3. Type: string (or Expression with resultType string)" + }, + "version": { + "type": "object", + "description": "Specify the version of amazon S3. Type: string (or Expression with resultType string)." + } + } + }, + "FileServerLocation": { + "description": "The location of file server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetLocation" + } + ] + }, + "AzureFileStorageLocation": { + "description": "The location of file server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetLocation" + } + ] + }, + "GoogleCloudStorageLocation": { + "description": "The location of Google Cloud Storage dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetLocation" + } + ], + "properties": { + "bucketName": { + "type": "object", + "description": "Specify the bucketName of Google Cloud Storage. Type: string (or Expression with resultType string)" + }, + "version": { + "type": "object", + "description": "Specify the version of Google Cloud Storage. Type: string (or Expression with resultType string)." + } + } + }, + "FtpServerLocation": { + "description": "The location of ftp server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetLocation" + } + ] + }, + "SftpLocation": { + "description": "The location of SFTP dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetLocation" + } + ] + }, + "HttpServerLocation": { + "description": "The location of http server.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetLocation" + } + ], + "properties": { + "relativeUrl": { + "type": "object", + "description": "Specify the relativeUrl of http server. Type: string (or Expression with resultType string)" + } + } + }, + "HdfsLocation": { + "description": "The location of HDFS.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetLocation" + } + ] + }, + "DatasetDataElement": { + "description": "Columns that define the structure of the dataset.", + "type": "object", + "properties": { + "name": { + "type": "object", + "description": "Name of the column. Type: string (or Expression with resultType string)." + }, + "type": { + "type": "object", + "description": "Type of the column. Type: string (or Expression with resultType string)." + } + } + }, + "DatasetSchemaDataElement": { + "description": "Columns that define the physical type schema of the dataset.", + "type": "object", + "properties": { + "name": { + "type": "object", + "description": "Name of the schema column. Type: string (or Expression with resultType string)." + }, + "type": { + "type": "object", + "description": "Type of the schema column. Type: string (or Expression with resultType string)." + } + }, + "additionalProperties": { + "type": "object" + } + }, + "DatasetStorageFormat": { + "discriminator": "type", + "description": "The format definition of a storage.", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Type of dataset storage format." + }, + "serializer": { + "type": "object", + "description": "Serializer. Type: string (or Expression with resultType string)." + }, + "deserializer": { + "type": "object", + "description": "Deserializer. Type: string (or Expression with resultType string)." + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "TextFormat": { + "description": "The data stored in text format.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetStorageFormat" + } + ], + "properties": { + "columnDelimiter": { + "type": "object", + "description": "The column delimiter. Type: string (or Expression with resultType string)." + }, + "rowDelimiter": { + "type": "object", + "description": "The row delimiter. Type: string (or Expression with resultType string)." + }, + "escapeChar": { + "type": "object", + "description": "The escape character. Type: string (or Expression with resultType string)." + }, + "quoteChar": { + "type": "object", + "description": "The quote character. Type: string (or Expression with resultType string)." + }, + "nullValue": { + "type": "object", + "description": "The null value string. Type: string (or Expression with resultType string)." + }, + "encodingName": { + "type": "object", + "description": "The code page name of the preferred encoding. If miss, the default value is ΓÇ£utf-8ΓÇ¥, unless BOM denotes another Unicode encoding. Refer to the ΓÇ£NameΓÇ¥ column of the table in the following link to set supported values: https://msdn.microsoft.com/library/system.text.encoding.aspx. Type: string (or Expression with resultType string)." + }, + "treatEmptyAsNull": { + "type": "object", + "description": "Treat empty column values in the text file as null. The default value is true. Type: boolean (or Expression with resultType boolean)." + }, + "skipLineCount": { + "type": "object", + "description": "The number of lines/rows to be skipped when parsing text files. The default value is 0. Type: integer (or Expression with resultType integer)." + }, + "firstRowAsHeader": { + "type": "object", + "description": "When used as input, treat the first row of data as headers. When used as output,write the headers into the output as the first row of data. The default value is false. Type: boolean (or Expression with resultType boolean)." + } + } + }, + "JsonFormat": { + "description": "The data stored in JSON format.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetStorageFormat" + } + ], + "properties": { + "filePattern": { + "description": "File pattern of JSON. To be more specific, the way of separating a collection of JSON objects. The default value is 'setOfObjects'. It is case-sensitive.", + "$ref": "#/definitions/JsonFormatFilePattern" + }, + "nestingSeparator": { + "type": "object", + "description": "The character used to separate nesting levels. Default value is '.' (dot). Type: string (or Expression with resultType string)." + }, + "encodingName": { + "type": "object", + "description": "The code page name of the preferred encoding. If not provided, the default value is 'utf-8', unless the byte order mark (BOM) denotes another Unicode encoding. The full list of supported values can be found in the 'Name' column of the table of encodings in the following reference: https://go.microsoft.com/fwlink/?linkid=861078. Type: string (or Expression with resultType string)." + }, + "jsonNodeReference": { + "type": "object", + "description": "The JSONPath of the JSON array element to be flattened. Example: \"$.ArrayPath\". Type: string (or Expression with resultType string)." + }, + "jsonPathDefinition": { + "type": "object", + "description": "The JSONPath definition for each column mapping with a customized column name to extract data from JSON file. For fields under root object, start with \"$\"; for fields inside the array chosen by jsonNodeReference property, start from the array element. Example: {\"Column1\": \"$.Column1Path\", \"Column2\": \"Column2PathInArray\"}. Type: object (or Expression with resultType object)." + } + } + }, + "JsonFormatFilePattern": { + "description": "JSON format file pattern. A property of JsonFormat.", + "type": "string", + "enum": [ + "setOfObjects", + "arrayOfObjects" + ], + "x-ms-enum": { + "name": "JsonFormatFilePattern", + "modelAsString": true + } + }, + "AvroFormat": { + "description": "The data stored in Avro format.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetStorageFormat" + } + ] + }, + "OrcFormat": { + "description": "The data stored in Optimized Row Columnar (ORC) format.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetStorageFormat" + } + ] + }, + "ParquetFormat": { + "description": "The data stored in Parquet format.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetStorageFormat" + } + ] + }, + "DatasetCompression": { + "discriminator": "type", + "description": "The compression method used on a dataset.", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Type of dataset compression." + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "DatasetBZip2Compression": { + "x-ms-discriminator-value": "BZip2", + "description": "The BZip2 compression method used on a dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetCompression" + } + ], + "properties": {} + }, + "DatasetGZipCompression": { + "x-ms-discriminator-value": "GZip", + "description": "The GZip compression method used on a dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetCompression" + } + ], + "properties": { + "level": { + "description": "The GZip compression level.", + "$ref": "#/definitions/CompressionLevel" + } + } + }, + "DatasetDeflateCompression": { + "x-ms-discriminator-value": "Deflate", + "description": "The Deflate compression method used on a dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetCompression" + } + ], + "properties": { + "level": { + "description": "The Deflate compression level.", + "$ref": "#/definitions/CompressionLevel" + } + } + }, + "DatasetZipDeflateCompression": { + "x-ms-discriminator-value": "ZipDeflate", + "description": "The ZipDeflate compression method used on a dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DatasetCompression" + } + ], + "properties": { + "level": { + "description": "The ZipDeflate compression level.", + "$ref": "#/definitions/CompressionLevel" + } + } + }, + "CompressionLevel": { + "title": "Microsoft.Azure.Management.DataFactories.Models.CompressionLevel", + "description": "All available compression levels.", + "type": "string", + "enum": [ + "Optimal", + "Fastest" + ], + "x-ms-enum": { + "name": "DatasetCompressionLevel", + "modelAsString": true + } + }, + "AvroDataset": { + "x-ms-discriminator-value": "Avro", + "description": "Avro dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Avro dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AvroDatasetTypeProperties" + } + } + }, + "AvroDatasetTypeProperties": { + "description": "Avro dataset properties.", + "properties": { + "location": { + "$ref": "#/definitions/DatasetLocation", + "description": "The location of the avro storage." + }, + "avroCompressionCodec": { + "type": "string", + "enum": [ + "none", + "deflate", + "snappy", + "xz", + "bzip2" + ], + "x-ms-enum": { + "name": "AvroCompressionCodec", + "modelAsString": true + } + }, + "avroCompressionLevel": { + "type": "integer", + "minimum": 1, + "maximum": 9 + } + }, + "required": [ + "location" + ] + }, + "ParquetDataset": { + "x-ms-discriminator-value": "Parquet", + "description": "Parquet dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Parquet dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ParquetDatasetTypeProperties" + } + } + }, + "ParquetDatasetTypeProperties": { + "description": "Parquet dataset properties.", + "properties": { + "location": { + "$ref": "#/definitions/DatasetLocation", + "description": "The location of the parquet storage." + }, + "compressionCodec": { + "type": "string", + "enum": [ + "none", + "gzip", + "snappy", + "lzo" + ], + "x-ms-enum": { + "name": "ParquetCompressionCodec", + "modelAsString": true + } + } + }, + "required": [ + "location" + ] + }, + "DelimitedTextDataset": { + "x-ms-discriminator-value": "DelimitedText", + "description": "Delimited text dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Delimited text dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DelimitedTextDatasetTypeProperties" + } + } + }, + "DelimitedTextDatasetTypeProperties": { + "description": "DelimitedText dataset properties.", + "properties": { + "location": { + "$ref": "#/definitions/DatasetLocation", + "description": "The location of the delimited text storage." + }, + "columnDelimiter": { + "type": "object", + "description": "The column delimiter. Type: string (or Expression with resultType string)." + }, + "rowDelimiter": { + "type": "object", + "description": "The row delimiter. Type: string (or Expression with resultType string)." + }, + "encodingName": { + "type": "object", + "description": "The code page name of the preferred encoding. If miss, the default value is UTF-8, unless BOM denotes another Unicode encoding. Refer to the name column of the table in the following link to set supported values: https://msdn.microsoft.com/library/system.text.encoding.aspx. Type: string (or Expression with resultType string)." + }, + "compressionCodec": { + "type": "string", + "enum": [ + "bzip2", + "gzip", + "deflate", + "zipDeflate", + "snappy", + "lz4" + ], + "x-ms-enum": { + "name": "DelimitedTextCompressionCodec", + "modelAsString": true + } + }, + "compressionLevel": { + "description": "The data compression method used for DelimitedText.", + "$ref": "#/definitions/CompressionLevel" + }, + "quoteChar": { + "type": "object", + "description": "The quote character. Type: string (or Expression with resultType string)." + }, + "escapeChar": { + "type": "object", + "description": "The escape character. Type: string (or Expression with resultType string)." + }, + "firstRowAsHeader": { + "type": "object", + "description": "When used as input, treat the first row of data as headers. When used as output,write the headers into the output as the first row of data. The default value is false. Type: boolean (or Expression with resultType boolean)." + }, + "nullValue": { + "type": "object", + "description": "The null value string. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "location" + ] + }, + "JsonDataset": { + "x-ms-discriminator-value": "Json", + "description": "Json dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Json dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/JsonDatasetTypeProperties" + } + } + }, + "JsonDatasetTypeProperties": { + "description": "Json dataset properties.", + "properties": { + "location": { + "$ref": "#/definitions/DatasetLocation", + "description": "The location of the json data storage." + }, + "encodingName": { + "type": "object", + "description": "The code page name of the preferred encoding. If not specified, the default value is UTF-8, unless BOM denotes another Unicode encoding. Refer to the name column of the table in the following link to set supported values: https://msdn.microsoft.com/library/system.text.encoding.aspx. Type: string (or Expression with resultType string)." + }, + "compression": { + "description": "The data compression method used for the json dataset.", + "$ref": "#/definitions/DatasetCompression" + } + }, + "required": [ + "location" + ] + }, + "OrcDataset": { + "x-ms-discriminator-value": "Orc", + "description": "ORC dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "ORC dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/OrcDatasetTypeProperties" + } + } + }, + "OrcDatasetTypeProperties": { + "description": "ORC dataset properties.", + "properties": { + "location": { + "$ref": "#/definitions/DatasetLocation", + "description": "The location of the ORC data storage." + }, + "orcCompressionCodec": { + "type": "string", + "enum": [ + "none", + "zlib", + "snappy" + ], + "x-ms-enum": { + "name": "OrcCompressionCodec", + "modelAsString": true + } + } + }, + "required": [ + "location" + ] + }, + "BinaryDataset": { + "x-ms-discriminator-value": "Binary", + "description": "Binary dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Binary dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/BinaryDatasetTypeProperties" + } + } + }, + "BinaryDatasetTypeProperties": { + "description": "Binary dataset properties.", + "type": "object", + "properties": { + "location": { + "$ref": "#/definitions/DatasetLocation", + "description": "The location of the Binary storage." + }, + "compression": { + "description": "The data compression method used for the binary dataset.", + "$ref": "#/definitions/DatasetCompression" + } + }, + "required": [ + "location" + ] + }, + "AzureTableDataset": { + "x-ms-discriminator-value": "AzureTable", + "description": "The Azure Table storage dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Table dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureTableDatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureTableDatasetTypeProperties": { + "description": "Azure Table dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "The table name of the Azure Table storage. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "tableName" + ] + }, + "AzureSqlTableDataset": { + "x-ms-discriminator-value": "AzureSqlTable", + "description": "The Azure SQL Server database dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Azure SQL dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureSqlTableDatasetTypeProperties" + } + } + }, + "AzureSqlTableDatasetTypeProperties": { + "description": "Azure SQL dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "schema": { + "type": "object", + "description": "The schema name of the Azure SQL database. Type: string (or Expression with resultType string)." + }, + "table": { + "type": "object", + "description": "The table name of the Azure SQL database. Type: string (or Expression with resultType string)." + } + } + }, + "AzureSqlMITableDataset": { + "x-ms-discriminator-value": "AzureSqlMITable", + "description": "The Azure SQL Managed Instance dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Azure SQL Managed Instance dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureSqlMITableDatasetTypeProperties" + } + } + }, + "AzureSqlMITableDatasetTypeProperties": { + "description": "Azure SQL Managed Instance dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "schema": { + "type": "object", + "description": "The schema name of the Azure SQL Managed Instance. Type: string (or Expression with resultType string)." + }, + "table": { + "type": "object", + "description": "The table name of the Azure SQL Managed Instance dataset. Type: string (or Expression with resultType string)." + } + } + }, + "AzureSqlDWTableDataset": { + "x-ms-discriminator-value": "AzureSqlDWTable", + "description": "The Azure SQL Data Warehouse dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Azure SQL Data Warehouse dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureSqlDWTableDatasetTypeProperties" + } + } + }, + "AzureSqlDWTableDatasetTypeProperties": { + "description": "Azure SQL Data Warehouse dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "schema": { + "type": "object", + "description": "The schema name of the Azure SQL Data Warehouse. Type: string (or Expression with resultType string)." + }, + "table": { + "type": "object", + "description": "The table name of the Azure SQL Data Warehouse. Type: string (or Expression with resultType string)." + } + } + }, + "CassandraTableDataset": { + "x-ms-discriminator-value": "CassandraTable", + "description": "The Cassandra database dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Cassandra dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CassandraTableDatasetTypeProperties" + } + } + }, + "CassandraTableDatasetTypeProperties": { + "description": "Cassandra dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "The table name of the Cassandra database. Type: string (or Expression with resultType string)." + }, + "keyspace": { + "type": "object", + "description": "The keyspace of the Cassandra database. Type: string (or Expression with resultType string)." + } + } + }, + "CustomDataset": { + "description": "The custom dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Custom dataset properties.", + "x-ms-client-flatten": true, + "type": "object" + } + } + }, + "CosmosDbSqlApiCollectionDataset": { + "x-ms-discriminator-value": "CosmosDbSqlApiCollection", + "description": "Microsoft Azure CosmosDB (SQL API) Collection dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "CosmosDB (SQL API) Collection dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CosmosDbSqlApiCollectionDatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "CosmosDbSqlApiCollectionDatasetTypeProperties": { + "description": "CosmosDB (SQL API) Collection dataset properties.", + "properties": { + "collectionName": { + "type": "object", + "description": "CosmosDB (SQL API) collection name. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "collectionName" + ] + }, + "DocumentDbCollectionDataset": { + "x-ms-discriminator-value": "DocumentDbCollection", + "description": "Microsoft Azure Document Database Collection dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "DocumentDB Collection dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DocumentDbCollectionDatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "DocumentDbCollectionDatasetTypeProperties": { + "description": "DocumentDB Collection dataset properties.", + "properties": { + "collectionName": { + "type": "object", + "description": "Document Database collection name. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "collectionName" + ] + }, + "DynamicsEntityDataset": { + "x-ms-discriminator-value": "DynamicsEntity", + "description": "The Dynamics entity dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Dynamics entity dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DynamicsEntityDatasetTypeProperties" + } + } + }, + "DynamicsEntityDatasetTypeProperties": { + "description": "Dynamics entity dataset properties.", + "properties": { + "entityName": { + "type": "object", + "description": "The logical name of the entity. Type: string (or Expression with resultType string)." + } + } + }, + "DynamicsCrmEntityDataset": { + "x-ms-discriminator-value": "DynamicsCrmEntity", + "description": "The Dynamics CRM entity dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Dynamics CRM entity dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DynamicsCrmEntityDatasetTypeProperties" + } + } + }, + "DynamicsCrmEntityDatasetTypeProperties": { + "description": "Dynamics CRM entity dataset properties.", + "properties": { + "entityName": { + "type": "object", + "description": "The logical name of the entity. Type: string (or Expression with resultType string)." + } + } + }, + "CommonDataServiceForAppsEntityDataset": { + "x-ms-discriminator-value": "CommonDataServiceForAppsEntity", + "description": "The Common Data Service for Apps entity dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Common Data Service for Apps entity dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CommonDataServiceForAppsEntityDatasetTypeProperties" + } + } + }, + "CommonDataServiceForAppsEntityDatasetTypeProperties": { + "description": "Common Data Service for Apps entity dataset properties.", + "properties": { + "entityName": { + "type": "object", + "description": "The logical name of the entity. Type: string (or Expression with resultType string)." + } + } + }, + "Office365Dataset": { + "x-ms-discriminator-value": "Office365Table", + "description": "The Office365 account.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Office365 dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/Office365DatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "Office365DatasetTypeProperties": { + "description": "Office365 dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "Name of the dataset to extract from Office 365. Type: string (or Expression with resultType string)." + }, + "predicate": { + "type": "object", + "description": "A predicate expression that can be used to filter the specific rows to extract from Office 365. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "tableName" + ] + }, + "MongoDbCollectionDataset": { + "x-ms-discriminator-value": "MongoDbCollection", + "description": "The MongoDB database dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "MongoDB database dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/MongoDbCollectionDatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "MongoDbCollectionDatasetTypeProperties": { + "description": "MongoDB database dataset properties.", + "properties": { + "collectionName": { + "type": "object", + "description": "The table name of the MongoDB database. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "collectionName" + ] + }, + "MongoDbV2CollectionDataset": { + "x-ms-discriminator-value": "MongoDbV2Collection", + "description": "The MongoDB database dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "MongoDB database dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/MongoDbV2CollectionDatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "MongoDbV2CollectionDatasetTypeProperties": { + "description": "MongoDB database dataset properties.", + "properties": { + "collection": { + "type": "object", + "description": "The collection name of the MongoDB database. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "collection" + ] + }, + "CosmosDbMongoDbApiCollectionDataset": { + "x-ms-discriminator-value": "CosmosDbMongoDbApiCollection", + "description": "The CosmosDB (MongoDB API) database dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "CosmosDB (MongoDB API) database dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CosmosDbMongoDbApiCollectionDatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "CosmosDbMongoDbApiCollectionDatasetTypeProperties": { + "description": "CosmosDB (MongoDB API) database dataset properties.", + "properties": { + "collection": { + "type": "object", + "description": "The collection name of the CosmosDB (MongoDB API) database. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "collection" + ] + }, + "ODataResourceDataset": { + "x-ms-discriminator-value": "ODataResource", + "description": "The Open Data Protocol (OData) resource dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "OData dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ODataResourceDatasetTypeProperties" + } + } + }, + "ODataResourceDatasetTypeProperties": { + "description": "OData dataset properties.", + "properties": { + "path": { + "type": "object", + "description": "The OData resource path. Type: string (or Expression with resultType string)." + } + } + }, + "OracleTableDataset": { + "x-ms-discriminator-value": "OracleTable", + "description": "The on-premises Oracle database dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "On-premises Oracle dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/OracleTableDatasetTypeProperties" + } + } + }, + "OracleTableDatasetTypeProperties": { + "description": "On-premises Oracle dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "schema": { + "type": "object", + "description": "The schema name of the on-premises Oracle database. Type: string (or Expression with resultType string)." + }, + "table": { + "type": "object", + "description": "The table name of the on-premises Oracle database. Type: string (or Expression with resultType string)." + } + } + }, + "TeradataTableDataset": { + "x-ms-discriminator-value": "TeradataTable", + "description": "The Teradata database dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Teradata dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/TeradataTableDatasetTypeProperties" + } + } + }, + "TeradataTableDatasetTypeProperties": { + "description": "Teradata dataset properties.", + "properties": { + "database": { + "type": "object", + "description": "The database name of Teradata. Type: string (or Expression with resultType string)." + }, + "table": { + "type": "object", + "description": "The table name of Teradata. Type: string (or Expression with resultType string)." + } + } + }, + "AzureMySqlTableDataset": { + "x-ms-discriminator-value": "AzureMySqlTable", + "description": "The Azure MySQL database dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Azure MySQL database dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureMySqlTableDatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureMySqlTableDatasetTypeProperties": { + "description": "Azure MySQL database dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "The Azure MySQL database table name. Type: string (or Expression with resultType string)." + }, + "table": { + "type": "object", + "description": "The name of Azure MySQL database table. Type: string (or Expression with resultType string)." + } + } + }, + "AmazonRedshiftTableDataset": { + "x-ms-discriminator-value": "AmazonRedshiftTable", + "description": "The Amazon Redshift table dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Amazon Redshift table dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AmazonRedshiftTableDatasetTypeProperties" + } + } + }, + "AmazonRedshiftTableDatasetTypeProperties": { + "description": "Amazon Redshift table dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "table": { + "type": "object", + "description": "The Amazon Redshift table name. Type: string (or Expression with resultType string)." + }, + "schema": { + "type": "object", + "description": "The Amazon Redshift schema name. Type: string (or Expression with resultType string)." + } + } + }, + "Db2TableDataset": { + "x-ms-discriminator-value": "Db2Table", + "description": "The Db2 table dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Db2 table dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/Db2TableDatasetTypeProperties" + } + } + }, + "Db2TableDatasetTypeProperties": { + "description": "Db2 table dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "schema": { + "type": "object", + "description": "The Db2 schema name. Type: string (or Expression with resultType string)." + }, + "table": { + "type": "object", + "description": "The Db2 table name. Type: string (or Expression with resultType string)." + } + } + }, + "RelationalTableDataset": { + "x-ms-discriminator-value": "RelationalTable", + "description": "The relational table dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Relational table dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/RelationalTableDatasetTypeProperties" + } + } + }, + "RelationalTableDatasetTypeProperties": { + "description": "Relational table dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "The relational table name. Type: string (or Expression with resultType string)." + } + } + }, + "InformixTableDataset": { + "x-ms-discriminator-value": "InformixTable", + "description": "The Informix table dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Informix table dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/InformixTableDatasetTypeProperties" + } + } + }, + "InformixTableDatasetTypeProperties": { + "description": "Informix table dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "The Informix table name. Type: string (or Expression with resultType string)." + } + } + }, + "OdbcTableDataset": { + "x-ms-discriminator-value": "OdbcTable", + "description": "The ODBC table dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "ODBC table dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/OdbcTableDatasetTypeProperties" + } + } + }, + "OdbcTableDatasetTypeProperties": { + "description": "ODBC table dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "The ODBC table name. Type: string (or Expression with resultType string)." + } + } + }, + "MySqlTableDataset": { + "x-ms-discriminator-value": "MySqlTable", + "description": "The MySQL table dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "MySQL table dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/MySqlTableDatasetTypeProperties" + } + } + }, + "MySqlTableDatasetTypeProperties": { + "description": "MySql table dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "The MySQL table name. Type: string (or Expression with resultType string)." + } + } + }, + "PostgreSqlTableDataset": { + "x-ms-discriminator-value": "PostgreSqlTable", + "description": "The PostgreSQL table dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "PostgreSQL table dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/PostgreSqlTableDatasetTypeProperties" + } + } + }, + "PostgreSqlTableDatasetTypeProperties": { + "description": "PostgreSQL table dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "table": { + "type": "object", + "description": "The PostgreSQL table name. Type: string (or Expression with resultType string)." + }, + "schema": { + "type": "object", + "description": "The PostgreSQL schema name. Type: string (or Expression with resultType string)." + } + } + }, + "MicrosoftAccessTableDataset": { + "x-ms-discriminator-value": "MicrosoftAccessTable", + "description": "The Microsoft Access table dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Microsoft Access table dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/MicrosoftAccessTableDatasetTypeProperties" + } + } + }, + "MicrosoftAccessTableDatasetTypeProperties": { + "description": "Microsoft Access table dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "The Microsoft Access table name. Type: string (or Expression with resultType string)." + } + } + }, + "SalesforceObjectDataset": { + "x-ms-discriminator-value": "SalesforceObject", + "description": "The Salesforce object dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Salesforce object dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SalesforceObjectDatasetTypeProperties" + } + } + }, + "SalesforceObjectDatasetTypeProperties": { + "description": "Salesforce object dataset properties.", + "properties": { + "objectApiName": { + "type": "object", + "description": "The Salesforce object API name. Type: string (or Expression with resultType string)." + } + } + }, + "SalesforceServiceCloudObjectDataset": { + "x-ms-discriminator-value": "SalesforceServiceCloudObject", + "description": "The Salesforce Service Cloud object dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Salesforce Service Cloud object dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SalesforceServiceCloudObjectDatasetTypeProperties" + } + } + }, + "SalesforceServiceCloudObjectDatasetTypeProperties": { + "description": "Salesforce Service Cloud object dataset properties.", + "properties": { + "objectApiName": { + "type": "object", + "description": "The Salesforce Service Cloud object API name. Type: string (or Expression with resultType string)." + } + } + }, + "SybaseTableDataset": { + "x-ms-discriminator-value": "SybaseTable", + "description": "The Sybase table dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Sybase table dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SybaseTableDatasetTypeProperties" + } + } + }, + "SybaseTableDatasetTypeProperties": { + "description": "Sybase table dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "The Sybase table name. Type: string (or Expression with resultType string)." + } + } + }, + "SapBwCubeDataset": { + "x-ms-discriminator-value": "SapBwCube", + "description": "The SAP BW cube dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": {} + }, + "SapCloudForCustomerResourceDataset": { + "x-ms-discriminator-value": "SapCloudForCustomerResource", + "description": "The path of the SAP Cloud for Customer OData entity.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "SAP Cloud For Customer OData resource dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SapCloudForCustomerResourceDatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SapCloudForCustomerResourceDatasetTypeProperties": { + "description": "Sap Cloud For Customer OData resource dataset properties.", + "properties": { + "path": { + "type": "object", + "description": "The path of the SAP Cloud for Customer OData entity. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "path" + ] + }, + "SapEccResourceDataset": { + "x-ms-discriminator-value": "SapEccResource", + "description": "The path of the SAP ECC OData entity.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "SAP ECC OData resource dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SapEccResourceDatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SapEccResourceDatasetTypeProperties": { + "description": "Sap ECC OData resource dataset properties.", + "properties": { + "path": { + "type": "object", + "description": "The path of the SAP ECC OData entity. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "path" + ] + }, + "SapHanaTableDataset": { + "x-ms-discriminator-value": "SapHanaTable", + "description": "SAP HANA Table properties.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "SAP HANA Table properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SapHanaTableDatasetTypeProperties" + } + } + }, + "SapHanaTableDatasetTypeProperties": { + "description": "SAP HANA Table properties.", + "properties": { + "schema": { + "type": "object", + "description": "The schema name of SAP HANA. Type: string (or Expression with resultType string)." + }, + "table": { + "type": "object", + "description": "The table name of SAP HANA. Type: string (or Expression with resultType string)." + } + } + }, + "SapOpenHubTableDataset": { + "x-ms-discriminator-value": "SapOpenHubTable", + "description": "Sap Business Warehouse Open Hub Destination Table properties.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Sap Business Warehouse Open Hub Destination Table properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SapOpenHubTableDatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SapOpenHubTableDatasetTypeProperties": { + "description": "Sap Business Warehouse Open Hub Destination Table properties.", + "properties": { + "openHubDestinationName": { + "type": "object", + "description": "The name of the Open Hub Destination with destination type as Database Table. Type: string (or Expression with resultType string)." + }, + "excludeLastRequest": { + "type": "object", + "description": "Whether to exclude the records of the last request. The default value is true. Type: boolean (or Expression with resultType boolean)." + }, + "baseRequestId": { + "type": "object", + "description": "The ID of request for delta loading. Once it is set, only data with requestId larger than the value of this property will be retrieved. The default value is 0. Type: integer (or Expression with resultType integer )." + } + }, + "required": [ + "openHubDestinationName" + ] + }, + "SqlServerTableDataset": { + "x-ms-discriminator-value": "SqlServerTable", + "description": "The on-premises SQL Server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "On-premises SQL Server dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SqlServerTableDatasetTypeProperties" + } + } + }, + "SqlServerTableDatasetTypeProperties": { + "description": "On-premises SQL Server dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "schema": { + "type": "object", + "description": "The schema name of the SQL Server dataset. Type: string (or Expression with resultType string)." + }, + "table": { + "type": "object", + "description": "The table name of the SQL Server dataset. Type: string (or Expression with resultType string)." + } + } + }, + "RestResourceDataset": { + "x-ms-discriminator-value": "RestResource", + "description": "A Rest service dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/RestResourceDatasetTypeProperties" + } + } + }, + "RestResourceDatasetTypeProperties": { + "description": "Properties specific to this dataset type.", + "properties": { + "relativeUrl": { + "type": "object", + "description": "The relative URL to the resource that the RESTful API provides. Type: string (or Expression with resultType string)." + }, + "requestMethod": { + "type": "object", + "description": "The HTTP method used to call the RESTful API. The default is GET. Type: string (or Expression with resultType string)." + }, + "requestBody": { + "type": "object", + "description": "The HTTP request body to the RESTful API if requestMethod is POST. Type: string (or Expression with resultType string)." + }, + "additionalHeaders": { + "type": "object", + "description": "The additional HTTP headers in the request to the RESTful API. Type: string (or Expression with resultType string)." + }, + "paginationRules": { + "type": "object", + "description": "The pagination rules to compose next page requests. Type: string (or Expression with resultType string)." + } + } + }, + "SapTableResourceDataset": { + "x-ms-discriminator-value": "SapTableResource", + "description": "SAP Table Resource properties.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "SAP Table Resource properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SapTableResourceDatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SapTableResourceDatasetTypeProperties": { + "description": "SAP Table Resource properties.", + "properties": { + "tableName": { + "type": "object", + "description": "The name of the SAP Table. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "tableName" + ] + }, + "WebTableDataset": { + "x-ms-discriminator-value": "WebTable", + "description": "The dataset points to a HTML table in the web page.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Web table dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/WebTableDatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "WebTableDatasetTypeProperties": { + "description": "Web table dataset properties.", + "properties": { + "index": { + "type": "object", + "description": "The zero-based index of the table in the web page. Type: integer (or Expression with resultType integer), minimum: 0." + }, + "path": { + "type": "object", + "description": "The relative URL to the web page from the linked service URL. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "index" + ] + }, + "AzureSearchIndexDataset": { + "x-ms-discriminator-value": "AzureSearchIndex", + "description": "The Azure Search Index.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureSearchIndexDatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureSearchIndexDatasetTypeProperties": { + "description": "Properties specific to this dataset type.", + "properties": { + "indexName": { + "type": "object", + "description": "The name of the Azure Search Index. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "indexName" + ] + }, + "GenericDatasetTypeProperties": { + "description": "Properties specific to this dataset type.", + "properties": { + "tableName": { + "type": "object", + "description": "The table name. Type: string (or Expression with resultType string)." + } + } + }, + "AmazonMWSObjectDataset": { + "x-ms-discriminator-value": "AmazonMWSObject", + "description": "Amazon Marketplace Web Service dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "AzurePostgreSqlTableDataset": { + "x-ms-discriminator-value": "AzurePostgreSqlTable", + "description": "Azure PostgreSQL dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzurePostgreSqlTableDatasetTypeProperties" + } + } + }, + "AzurePostgreSqlTableDatasetTypeProperties": { + "description": "Azure PostgreSQL dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "The table name of the Azure PostgreSQL database which includes both schema and table. Type: string (or Expression with resultType string)." + }, + "table": { + "type": "object", + "description": "The table name of the Azure PostgreSQL database. Type: string (or Expression with resultType string)." + }, + "schema": { + "type": "object", + "description": "The schema name of the Azure PostgreSQL database. Type: string (or Expression with resultType string)." + } + } + }, + "ConcurObjectDataset": { + "x-ms-discriminator-value": "ConcurObject", + "description": "Concur Service dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "CouchbaseTableDataset": { + "x-ms-discriminator-value": "CouchbaseTable", + "description": "Couchbase server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "DrillTableDataset": { + "x-ms-discriminator-value": "DrillTable", + "description": "Drill server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DrillDatasetTypeProperties" + } + } + }, + "DrillDatasetTypeProperties": { + "description": "Drill Dataset Properties", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "table": { + "type": "object", + "description": "The table name of the Drill. Type: string (or Expression with resultType string)." + }, + "schema": { + "type": "object", + "description": "The schema name of the Drill. Type: string (or Expression with resultType string)." + } + } + }, + "EloquaObjectDataset": { + "x-ms-discriminator-value": "EloquaObject", + "description": "Eloqua server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "GoogleBigQueryObjectDataset": { + "x-ms-discriminator-value": "GoogleBigQueryObject", + "description": "Google BigQuery service dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GoogleBigQueryDatasetTypeProperties" + } + } + }, + "GoogleBigQueryDatasetTypeProperties": { + "description": "Google BigQuery Dataset Properties", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using database + table properties instead." + }, + "table": { + "type": "object", + "description": "The table name of the Google BigQuery. Type: string (or Expression with resultType string)." + }, + "dataset": { + "type": "object", + "description": "The database name of the Google BigQuery. Type: string (or Expression with resultType string)." + } + } + }, + "GreenplumTableDataset": { + "x-ms-discriminator-value": "GreenplumTable", + "description": "Greenplum Database dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GreenplumDatasetTypeProperties" + } + } + }, + "GreenplumDatasetTypeProperties": { + "description": "Greenplum Dataset Properties", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "table": { + "type": "object", + "description": "The table name of Greenplum. Type: string (or Expression with resultType string)." + }, + "schema": { + "type": "object", + "description": "The schema name of Greenplum. Type: string (or Expression with resultType string)." + } + } + }, + "HBaseObjectDataset": { + "x-ms-discriminator-value": "HBaseObject", + "description": "HBase server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "HiveObjectDataset": { + "x-ms-discriminator-value": "HiveObject", + "description": "Hive Server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/HiveDatasetTypeProperties" + } + } + }, + "HiveDatasetTypeProperties": { + "description": "Hive Properties", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "table": { + "type": "object", + "description": "The table name of the Hive. Type: string (or Expression with resultType string)." + }, + "schema": { + "type": "object", + "description": "The schema name of the Hive. Type: string (or Expression with resultType string)." + } + } + }, + "HubspotObjectDataset": { + "x-ms-discriminator-value": "HubspotObject", + "description": "Hubspot Service dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "ImpalaObjectDataset": { + "x-ms-discriminator-value": "ImpalaObject", + "description": "Impala server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ImpalaDatasetTypeProperties" + } + } + }, + "ImpalaDatasetTypeProperties": { + "description": "Impala Dataset Properties", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "table": { + "type": "object", + "description": "The table name of the Impala. Type: string (or Expression with resultType string)." + }, + "schema": { + "type": "object", + "description": "The schema name of the Impala. Type: string (or Expression with resultType string)." + } + } + }, + "JiraObjectDataset": { + "x-ms-discriminator-value": "JiraObject", + "description": "Jira Service dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "MagentoObjectDataset": { + "x-ms-discriminator-value": "MagentoObject", + "description": "Magento server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "MariaDBTableDataset": { + "x-ms-discriminator-value": "MariaDBTable", + "description": "MariaDB server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "AzureMariaDBTableDataset": { + "x-ms-discriminator-value": "AzureMariaDBTable", + "description": "Azure Database for MariaDB dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "MarketoObjectDataset": { + "x-ms-discriminator-value": "MarketoObject", + "description": "Marketo server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "PaypalObjectDataset": { + "x-ms-discriminator-value": "PaypalObject", + "description": "Paypal Service dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "PhoenixObjectDataset": { + "x-ms-discriminator-value": "PhoenixObject", + "description": "Phoenix server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/PhoenixDatasetTypeProperties" + } + } + }, + "PhoenixDatasetTypeProperties": { + "description": "Phoenix Dataset Properties", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "table": { + "type": "object", + "description": "The table name of the Phoenix. Type: string (or Expression with resultType string)." + }, + "schema": { + "type": "object", + "description": "The schema name of the Phoenix. Type: string (or Expression with resultType string)." + } + } + }, + "PrestoObjectDataset": { + "x-ms-discriminator-value": "PrestoObject", + "description": "Presto server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrestoDatasetTypeProperties" + } + } + }, + "PrestoDatasetTypeProperties": { + "description": "Presto Dataset Properties", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "table": { + "type": "object", + "description": "The table name of the Presto. Type: string (or Expression with resultType string)." + }, + "schema": { + "type": "object", + "description": "The schema name of the Presto. Type: string (or Expression with resultType string)." + } + } + }, + "QuickBooksObjectDataset": { + "x-ms-discriminator-value": "QuickBooksObject", + "description": "QuickBooks server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "ServiceNowObjectDataset": { + "x-ms-discriminator-value": "ServiceNowObject", + "description": "ServiceNow server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "ShopifyObjectDataset": { + "x-ms-discriminator-value": "ShopifyObject", + "description": "Shopify Service dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "SparkObjectDataset": { + "x-ms-discriminator-value": "SparkObject", + "description": "Spark Server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SparkDatasetTypeProperties" + } + } + }, + "SparkDatasetTypeProperties": { + "description": "Spark Properties", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "table": { + "type": "object", + "description": "The table name of the Spark. Type: string (or Expression with resultType string)." + }, + "schema": { + "type": "object", + "description": "The schema name of the Spark. Type: string (or Expression with resultType string)." + } + } + }, + "SquareObjectDataset": { + "x-ms-discriminator-value": "SquareObject", + "description": "Square Service dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "XeroObjectDataset": { + "x-ms-discriminator-value": "XeroObject", + "description": "Xero Service dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "ZohoObjectDataset": { + "x-ms-discriminator-value": "ZohoObject", + "description": "Zoho server dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "NetezzaTableDataset": { + "x-ms-discriminator-value": "NetezzaTable", + "description": "Netezza dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetezzaTableDatasetTypeProperties" + } + } + }, + "NetezzaTableDatasetTypeProperties": { + "description": "Netezza dataset properties.", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "table": { + "type": "object", + "description": "The table name of the Netezza. Type: string (or Expression with resultType string)." + }, + "schema": { + "type": "object", + "description": "The schema name of the Netezza. Type: string (or Expression with resultType string)." + } + } + }, + "VerticaTableDataset": { + "x-ms-discriminator-value": "VerticaTable", + "description": "Vertica dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/VerticaDatasetTypeProperties" + } + } + }, + "VerticaDatasetTypeProperties": { + "description": "Vertica Properties", + "properties": { + "tableName": { + "type": "object", + "description": "This property will be retired. Please consider using schema + table properties instead." + }, + "table": { + "type": "object", + "description": "The table name of the Vertica. Type: string (or Expression with resultType string)." + }, + "schema": { + "type": "object", + "description": "The schema name of the Vertica. Type: string (or Expression with resultType string)." + } + } + }, + "SalesforceMarketingCloudObjectDataset": { + "x-ms-discriminator-value": "SalesforceMarketingCloudObject", + "description": "Salesforce Marketing Cloud dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "ResponsysObjectDataset": { + "x-ms-discriminator-value": "ResponsysObject", + "description": "Responsys dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "DynamicsAXResourceDataset": { + "x-ms-discriminator-value": "DynamicsAXResource", + "description": "The path of the Dynamics AX OData entity.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Dynamics AX OData resource dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DynamicsAXResourceDatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "DynamicsAXResourceDatasetTypeProperties": { + "description": "Dynamics AX OData resource dataset properties.", + "properties": { + "path": { + "type": "object", + "description": "The path of the Dynamics AX OData entity. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "path" + ] + }, + "OracleServiceCloudObjectDataset": { + "x-ms-discriminator-value": "OracleServiceCloudObject", + "description": "Oracle Service Cloud dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + }, + "AzureDataExplorerTableDataset": { + "x-ms-discriminator-value": "AzureDataExplorerTable", + "description": "The Azure Data Explorer (Kusto) dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Data Explorer (Kusto) dataset properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureDataExplorerDatasetTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureDataExplorerDatasetTypeProperties": { + "description": "Azure Data Explorer (Kusto) dataset properties.", + "properties": { + "table": { + "type": "object", + "description": "The table name of the Azure Data Explorer database. Type: string (or Expression with resultType string)." + } + } + }, + "GoogleAdWordsObjectDataset": { + "x-ms-discriminator-value": "GoogleAdWordsObject", + "description": "Google AdWords service dataset.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Dataset" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this dataset type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GenericDatasetTypeProperties" + } + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/LinkedService.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/LinkedService.json new file mode 100644 index 000000000000..bbee397ae546 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/LinkedService.json @@ -0,0 +1,5689 @@ +{ + "swagger": "2.0", + "info": { + "title": "SynapseClient", + "version": "2019-11-01-preview" + }, + "paths": {}, + "definitions": { + "LinkedService": { + "description": "The Azure Synapse nested object which contains the information and credential which can be used to connect with related store or compute resource.", + "type": "object", + "discriminator": "type", + "properties": { + "type": { + "type": "string", + "description": "Type of linked service." + }, + "connectVia": { + "description": "The integration runtime reference.", + "$ref": "../datafactory.json#/definitions/IntegrationRuntimeReference" + }, + "description": { + "description": "Linked service description.", + "type": "string" + }, + "parameters": { + "$ref": "../datafactory.json#/definitions/ParameterDefinitionSpecification", + "description": "Parameters for linked service." + }, + "annotations": { + "description": "List of tags that can be used for describing the linked service.", + "type": "array", + "items": { + "type": "object" + } + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "AzureStorageLinkedService": { + "x-ms-discriminator-value": "AzureStorage", + "description": "The storage account linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Storage linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureStorageLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureBlobStorageLinkedService": { + "x-ms-discriminator-value": "AzureBlobStorage", + "description": "The azure blob storage linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Blob Storage linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureBlobStorageLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureTableStorageLinkedService": { + "x-ms-discriminator-value": "AzureTableStorage", + "description": "The azure table storage linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Table Storage linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureStorageLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureStorageLinkedServiceTypeProperties": { + "description": "Azure Storage linked service properties.", + "properties": { + "connectionString": { + "description": "The connection string. It is mutually exclusive with sasUri property. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "accountKey": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of accountKey in connection string." + }, + "sasUri": { + "description": "SAS URI of the Azure Storage resource. It is mutually exclusive with connectionString property. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "sasToken": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of sasToken in sas uri." + }, + "encryptedCredential": { + "type": "string", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + } + }, + "AzureBlobStorageLinkedServiceTypeProperties": { + "description": "Azure Blob Storage linked service properties.", + "properties": { + "connectionString": { + "type": "object", + "description": "The connection string. It is mutually exclusive with sasUri, serviceEndpoint property. Type: string, SecureString or AzureKeyVaultSecretReference." + }, + "accountKey": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of accountKey in connection string." + }, + "sasUri": { + "description": "SAS URI of the Azure Blob Storage resource. It is mutually exclusive with connectionString, serviceEndpoint property. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "sasToken": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of sasToken in sas uri." + }, + "serviceEndpoint": { + "type": "string", + "description": "Blob service endpoint of the Azure Blob Storage resource. It is mutually exclusive with connectionString, sasUri property." + }, + "servicePrincipalId": { + "type": "object", + "description": "The ID of the service principal used to authenticate against Azure SQL Data Warehouse. Type: string (or Expression with resultType string)." + }, + "servicePrincipalKey": { + "$ref": "../datafactory.json#/definitions/SecretBase", + "description": "The key of the service principal used to authenticate against Azure SQL Data Warehouse." + }, + "tenant": { + "type": "object", + "description": "The name or ID of the tenant to which the service principal belongs. Type: string (or Expression with resultType string)." + }, + "encryptedCredential": { + "type": "string", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string)." + } + } + }, + "AzureSqlDWLinkedService": { + "x-ms-discriminator-value": "AzureSqlDW", + "description": "Azure SQL Data Warehouse linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure SQL Data Warehouse linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureSqlDWLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureSqlDWLinkedServiceTypeProperties": { + "description": "Azure SQL Data Warehouse linked service properties.", + "properties": { + "connectionString": { + "description": "The connection string. Type: string, SecureString or AzureKeyVaultSecretReference. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "password": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, + "servicePrincipalId": { + "type": "object", + "description": "The ID of the service principal used to authenticate against Azure SQL Data Warehouse. Type: string (or Expression with resultType string)." + }, + "servicePrincipalKey": { + "$ref": "../datafactory.json#/definitions/SecretBase", + "description": "The key of the service principal used to authenticate against Azure SQL Data Warehouse." + }, + "tenant": { + "type": "object", + "description": "The name or ID of the tenant to which the service principal belongs. 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": [ + "connectionString" + ] + }, + "SqlServerLinkedService": { + "x-ms-discriminator-value": "SqlServer", + "description": "SQL Server linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "SQL Server linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SqlServerLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SqlServerLinkedServiceTypeProperties": { + "description": "SQL Server linked service properties.", + "properties": { + "connectionString": { + "description": "The connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "userName": { + "type": "object", + "description": "The on-premises Windows authentication user name. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "The on-premises Windows authentication password.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "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": [ + "connectionString" + ] + }, + "AzureSqlDatabaseLinkedService": { + "x-ms-discriminator-value": "AzureSqlDatabase", + "description": "Microsoft Azure SQL Database linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure SQL Database linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureSqlDatabaseLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureSqlDatabaseLinkedServiceTypeProperties": { + "description": "Azure SQL Database linked service properties.", + "properties": { + "connectionString": { + "description": "The connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "password": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, + "servicePrincipalId": { + "type": "object", + "description": "The ID of the service principal used to authenticate against Azure SQL Database. Type: string (or Expression with resultType string)." + }, + "servicePrincipalKey": { + "$ref": "../datafactory.json#/definitions/SecretBase", + "description": "The key of the service principal used to authenticate against Azure SQL Database." + }, + "tenant": { + "type": "object", + "description": "The name or ID of the tenant to which the service principal belongs. 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": [ + "connectionString" + ] + }, + "AzureSqlMILinkedService": { + "x-ms-discriminator-value": "AzureSqlMI", + "description": "Azure SQL Managed Instance linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure SQL Managed Instance linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureSqlMILinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureSqlMILinkedServiceTypeProperties": { + "description": "Azure SQL Managed Instance linked service properties.", + "properties": { + "connectionString": { + "description": "The connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "password": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, + "servicePrincipalId": { + "type": "object", + "description": "The ID of the service principal used to authenticate against Azure SQL Managed Instance. Type: string (or Expression with resultType string)." + }, + "servicePrincipalKey": { + "$ref": "../datafactory.json#/definitions/SecretBase", + "description": "The key of the service principal used to authenticate against Azure SQL Managed Instance." + }, + "tenant": { + "type": "object", + "description": "The name or ID of the tenant to which the service principal belongs. 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": [ + "connectionString" + ] + }, + "AzureBatchLinkedService": { + "x-ms-discriminator-value": "AzureBatch", + "description": "Azure Batch linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Batch linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureBatchLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureBatchLinkedServiceTypeProperties": { + "description": "Azure Batch linked service properties.", + "properties": { + "accountName": { + "type": "object", + "description": "The Azure Batch account name. Type: string (or Expression with resultType string)." + }, + "accessKey": { + "description": "The Azure Batch account access key.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "batchUri": { + "type": "object", + "description": "The Azure Batch URI. Type: string (or Expression with resultType string)." + }, + "poolName": { + "type": "object", + "description": "The Azure Batch pool name. Type: string (or Expression with resultType string)." + }, + "linkedServiceName": { + "description": "The Azure Storage linked service reference.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "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": [ + "accountName", + "batchUri", + "poolName", + "linkedServiceName" + ] + }, + "AzureKeyVaultLinkedService": { + "x-ms-discriminator-value": "AzureKeyVault", + "description": "Azure Key Vault linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Key Vault linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureKeyVaultLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureKeyVaultLinkedServiceTypeProperties": { + "description": "Azure Key Vault linked service properties.", + "properties": { + "baseUrl": { + "type": "object", + "description": "The base URL of the Azure Key Vault. e.g. https://myakv.vault.azure.net Type: string (or Expression with resultType string)." + } + }, + "required": [ + "baseUrl" + ] + }, + "CosmosDbLinkedService": { + "x-ms-discriminator-value": "CosmosDb", + "description": "Microsoft Azure Cosmos Database (CosmosDB) linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "CosmosDB linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CosmosDbLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "CosmosDbLinkedServiceTypeProperties": { + "description": "CosmosDB linked service properties.", + "properties": { + "connectionString": { + "description": "The connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "accountEndpoint": { + "description": "The endpoint of the Azure CosmosDB account. Type: string (or Expression with resultType string)", + "type": "object" + }, + "database": { + "description": "The name of the database. Type: string (or Expression with resultType string)", + "type": "object" + }, + "accountKey": { + "$ref": "../datafactory.json#/definitions/SecretBase", + "description": "The account key of the Azure CosmosDB account. Type: SecureString or AzureKeyVaultSecretReference." + }, + "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)." + } + } + }, + "DynamicsLinkedService": { + "x-ms-discriminator-value": "Dynamics", + "description": "Dynamics linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Dynamics linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DynamicsLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "DynamicsLinkedServiceTypeProperties": { + "description": "Dynamics linked service properties.", + "properties": { + "deploymentType": { + "x-ms-enum": { + "name": "DynamicsDeploymentType", + "modelAsString": true + }, + "enum": [ + "Online", + "OnPremisesWithIfd" + ], + "type": "string", + "description": "The deployment type of the Dynamics instance. 'Online' for Dynamics Online and 'OnPremisesWithIfd' for Dynamics on-premises with Ifd. Type: string (or Expression with resultType string)." + }, + "hostName": { + "type": "string", + "description": "The host name of the on-premises Dynamics server. The property is required for on-prem and not allowed for online. Type: string (or Expression with resultType string)." + }, + "port": { + "type": "string", + "description": "The port of on-premises Dynamics server. The property is required for on-prem and not allowed for online. Default is 443. Type: integer (or Expression with resultType integer), minimum: 0." + }, + "serviceUri": { + "type": "string", + "description": "The URL to the Microsoft Dynamics server. The property is required for on-line and not allowed for on-prem. Type: string (or Expression with resultType string)." + }, + "organizationName": { + "type": "string", + "description": "The organization name of the Dynamics instance. The property is required for on-prem and required for online when there are more than one Dynamics instances associated with the user. Type: string (or Expression with resultType string)." + }, + "authenticationType": { + "x-ms-enum": { + "name": "DynamicsAuthenticationType", + "modelAsString": true + }, + "enum": [ + "Office365", + "Ifd", + "AADServicePrincipal" + ], + "type": "string", + "description": "The authentication type to connect to Dynamics server. 'Office365' for online scenario, 'Ifd' for on-premises with Ifd scenario, 'AADServicePrincipal' for Server-To-Server authentication in online scenario. Type: string (or Expression with resultType string)." + }, + "username": { + "type": "object", + "description": "User name to access the Dynamics instance. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password to access the Dynamics instance.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "servicePrincipalId": { + "type": "object", + "description": "The client ID of the application in Azure Active Directory used for Server-To-Server authentication. Type: string (or Expression with resultType string)." + }, + "servicePrincipalCredentialType": { + "x-ms-enum": { + "name": "DynamicsServicePrincipalCredentialType", + "modelAsString": true + }, + "enum": [ + "ServicePrincipalKey", + "ServicePrincipalCert" + ], + "type": "string", + "description": "The service principal credential type to use in Server-To-Server authentication. 'ServicePrincipalKey' for key/secret, 'ServicePrincipalCert' for certificate. Type: string (or Expression with resultType string)." + }, + "servicePrincipalCredential": { + "$ref": "../datafactory.json#/definitions/SecretBase", + "description": "The credential of the service principal object in Azure Active Directory. If servicePrincipalCredentialType is 'ServicePrincipalKey', servicePrincipalCredential can be SecureString or AzureKeyVaultSecretReference. If servicePrincipalCredentialType is 'ServicePrincipalCert', servicePrincipalCredential can only be AzureKeyVaultSecretReference." + }, + "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": [ + "deploymentType", + "authenticationType" + ] + }, + "DynamicsCrmLinkedService": { + "x-ms-discriminator-value": "DynamicsCrm", + "description": "Dynamics CRM linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Dynamics CRM linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DynamicsCrmLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "DynamicsCrmLinkedServiceTypeProperties": { + "description": "Dynamics CRM linked service properties.", + "properties": { + "deploymentType": { + "x-ms-enum": { + "name": "DynamicsDeploymentType", + "modelAsString": true + }, + "enum": [ + "Online", + "OnPremisesWithIfd" + ], + "type": "string", + "description": "The deployment type of the Dynamics CRM instance. 'Online' for Dynamics CRM Online and 'OnPremisesWithIfd' for Dynamics CRM on-premises with Ifd. Type: string (or Expression with resultType string)." + }, + "hostName": { + "type": "object", + "description": "The host name of the on-premises Dynamics CRM server. The property is required for on-prem and not allowed for online. Type: string (or Expression with resultType string)." + }, + "port": { + "type": "object", + "description": "The port of on-premises Dynamics CRM server. The property is required for on-prem and not allowed for online. Default is 443. Type: integer (or Expression with resultType integer), minimum: 0." + }, + "serviceUri": { + "type": "object", + "description": "The URL to the Microsoft Dynamics CRM server. The property is required for on-line and not allowed for on-prem. Type: string (or Expression with resultType string)." + }, + "organizationName": { + "type": "object", + "description": "The organization name of the Dynamics CRM instance. The property is required for on-prem and required for online when there are more than one Dynamics CRM instances associated with the user. Type: string (or Expression with resultType string)." + }, + "authenticationType": { + "x-ms-enum": { + "name": "DynamicsAuthenticationType", + "modelAsString": true + }, + "enum": [ + "Office365", + "Ifd", + "AADServicePrincipal" + ], + "type": "string", + "description": "The authentication type to connect to Dynamics CRM server. 'Office365' for online scenario, 'Ifd' for on-premises with Ifd scenario, 'AADServicePrincipal' for Server-To-Server authentication in online scenario. Type: string (or Expression with resultType string)." + }, + "username": { + "type": "object", + "description": "User name to access the Dynamics CRM instance. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password to access the Dynamics CRM instance.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "servicePrincipalId": { + "type": "object", + "description": "The client ID of the application in Azure Active Directory used for Server-To-Server authentication. Type: string (or Expression with resultType string)." + }, + "servicePrincipalCredentialType": { + "x-ms-enum": { + "name": "DynamicsServicePrincipalCredentialType", + "modelAsString": true + }, + "enum": [ + "ServicePrincipalKey", + "ServicePrincipalCert" + ], + "type": "string", + "description": "The service principal credential type to use in Server-To-Server authentication. 'ServicePrincipalKey' for key/secret, 'ServicePrincipalCert' for certificate. Type: string (or Expression with resultType string)." + }, + "servicePrincipalCredential": { + "$ref": "../datafactory.json#/definitions/SecretBase", + "description": "The credential of the service principal object in Azure Active Directory. If servicePrincipalCredentialType is 'ServicePrincipalKey', servicePrincipalCredential can be SecureString or AzureKeyVaultSecretReference. If servicePrincipalCredentialType is 'ServicePrincipalCert', servicePrincipalCredential can only be AzureKeyVaultSecretReference." + }, + "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": [ + "deploymentType", + "authenticationType" + ] + }, + "CommonDataServiceForAppsLinkedService": { + "x-ms-discriminator-value": "CommonDataServiceForApps", + "description": "Common Data Service for Apps linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Common Data Service for Apps linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CommonDataServiceForAppsLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "CommonDataServiceForAppsLinkedServiceTypeProperties": { + "description": "Common Data Service for Apps linked service properties.", + "properties": { + "deploymentType": { + "x-ms-enum": { + "name": "DynamicsDeploymentType", + "modelAsString": true + }, + "enum": [ + "Online", + "OnPremisesWithIfd" + ], + "type": "string", + "description": "The deployment type of the Common Data Service for Apps instance. 'Online' for Common Data Service for Apps Online and 'OnPremisesWithIfd' for Common Data Service for Apps on-premises with Ifd. Type: string (or Expression with resultType string)." + }, + "hostName": { + "type": "object", + "description": "The host name of the on-premises Common Data Service for Apps server. The property is required for on-prem and not allowed for online. Type: string (or Expression with resultType string)." + }, + "port": { + "type": "object", + "description": "The port of on-premises Common Data Service for Apps server. The property is required for on-prem and not allowed for online. Default is 443. Type: integer (or Expression with resultType integer), minimum: 0." + }, + "serviceUri": { + "type": "object", + "description": "The URL to the Microsoft Common Data Service for Apps server. The property is required for on-line and not allowed for on-prem. Type: string (or Expression with resultType string)." + }, + "organizationName": { + "type": "object", + "description": "The organization name of the Common Data Service for Apps instance. The property is required for on-prem and required for online when there are more than one Common Data Service for Apps instances associated with the user. Type: string (or Expression with resultType string)." + }, + "authenticationType": { + "x-ms-enum": { + "name": "DynamicsAuthenticationType", + "modelAsString": true + }, + "enum": [ + "Office365", + "Ifd", + "AADServicePrincipal" + ], + "type": "string", + "description": "The authentication type to connect to Common Data Service for Apps server. 'Office365' for online scenario, 'Ifd' for on-premises with Ifd scenario. 'AADServicePrincipal' for Server-To-Server authentication in online scenario. Type: string (or Expression with resultType string)." + }, + "username": { + "type": "object", + "description": "User name to access the Common Data Service for Apps instance. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password to access the Common Data Service for Apps instance.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "servicePrincipalId": { + "type": "object", + "description": "The client ID of the application in Azure Active Directory used for Server-To-Server authentication. Type: string (or Expression with resultType string)." + }, + "servicePrincipalCredentialType": { + "x-ms-enum": { + "name": "DynamicsServicePrincipalCredentialType", + "modelAsString": true + }, + "enum": [ + "ServicePrincipalKey", + "ServicePrincipalCert" + ], + "type": "string", + "description": "The service principal credential type to use in Server-To-Server authentication. 'ServicePrincipalKey' for key/secret, 'ServicePrincipalCert' for certificate. Type: string (or Expression with resultType string)." + }, + "servicePrincipalCredential": { + "$ref": "../datafactory.json#/definitions/SecretBase", + "description": "The credential of the service principal object in Azure Active Directory. If servicePrincipalCredentialType is 'ServicePrincipalKey', servicePrincipalCredential can be SecureString or AzureKeyVaultSecretReference. If servicePrincipalCredentialType is 'ServicePrincipalCert', servicePrincipalCredential can only be AzureKeyVaultSecretReference." + }, + "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": [ + "deploymentType", + "authenticationType" + ] + }, + "HDInsightLinkedService": { + "x-ms-discriminator-value": "HDInsight", + "description": "HDInsight linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "HDInsight linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/HDInsightLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "HDInsightLinkedServiceTypeProperties": { + "description": "HDInsight linked service properties.", + "properties": { + "clusterUri": { + "type": "object", + "description": "HDInsight cluster URI. Type: string (or Expression with resultType string)." + }, + "userName": { + "type": "object", + "description": "HDInsight cluster user name. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "HDInsight cluster password.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "linkedServiceName": { + "description": "The Azure Storage linked service reference.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "hcatalogLinkedServiceName": { + "description": "A reference to the Azure SQL linked service that points to the HCatalog database.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "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)." + }, + "isEspEnabled": { + "type": "object", + "description": "Specify if the HDInsight is created with ESP (Enterprise Security Package). Type: Boolean." + }, + "fileSystem": { + "type": "object", + "description": "Specify the FileSystem if the main storage for the HDInsight is ADLS Gen2. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "clusterUri" + ] + }, + "FileServerLinkedService": { + "x-ms-discriminator-value": "FileServer", + "description": "File system linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "File system linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/FileServerLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "FileServerLinkedServiceTypeProperties": { + "description": "File system linked service properties.", + "properties": { + "host": { + "type": "object", + "description": "Host name of the server. Type: string (or Expression with resultType string)." + }, + "userId": { + "type": "object", + "description": "User ID to logon the server. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password to logon the server.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "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": [ + "host" + ] + }, + "AzureFileStorageLinkedService": { + "x-ms-discriminator-value": "AzureFileStorage", + "description": "Azure File Storage linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure File Storage linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFileStorageLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureFileStorageLinkedServiceTypeProperties": { + "description": "Azure File Storage linked service properties.", + "properties": { + "host": { + "type": "object", + "description": "Host name of the server. Type: string (or Expression with resultType string)." + }, + "userId": { + "type": "object", + "description": "User ID to logon the server. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password to logon the server.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "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": [ + "host" + ] + }, + "GoogleCloudStorageLinkedService": { + "x-ms-discriminator-value": "GoogleCloudStorage", + "description": "Linked service for Google Cloud Storage.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Google Cloud Storage linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GoogleCloudStorageLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "GoogleCloudStorageLinkedServiceTypeProperties": { + "description": "Google Cloud Storage linked service properties.", + "properties": { + "accessKeyId": { + "type": "object", + "description": "The access key identifier of the Google Cloud Storage Identity and Access Management (IAM) user. Type: string (or Expression with resultType string)." + }, + "secretAccessKey": { + "description": "The secret access key of the Google Cloud Storage Identity and Access Management (IAM) user.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "serviceUrl": { + "type": "object", + "description": "This value specifies the endpoint to access with the Google Cloud Storage Connector. This is an optional property; change it only if you want to try a different service endpoint or want to switch between https and http. 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)." + } + } + }, + "OracleLinkedService": { + "x-ms-discriminator-value": "Oracle", + "description": "Oracle database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Oracle database linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/OracleLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "OracleLinkedServiceTypeProperties": { + "description": "Oracle database linked service properties.", + "properties": { + "connectionString": { + "description": "The connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "password": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection 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": [ + "connectionString" + ] + }, + "AzureMySqlLinkedService": { + "x-ms-discriminator-value": "AzureMySql", + "description": "Azure MySQL database linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure MySQL database linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureMySqlLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureMySqlLinkedServiceTypeProperties": { + "description": "Azure MySQL database linked service properties.", + "properties": { + "connectionString": { + "description": "The connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "password": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection 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": [ + "connectionString" + ] + }, + "MySqlLinkedService": { + "x-ms-discriminator-value": "MySql", + "description": "Linked service for MySQL data source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "MySQL linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/MySqlLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "MySqlLinkedServiceTypeProperties": { + "description": "MySQL linked service properties.", + "properties": { + "connectionString": { + "description": "The connection string.", + "type": "object" + }, + "password": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection 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": [ + "connectionString" + ] + }, + "PostgreSqlLinkedService": { + "x-ms-discriminator-value": "PostgreSql", + "description": "Linked service for PostgreSQL data source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "PostgreSQL linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/PostgreSqlLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "PostgreSqlLinkedServiceTypeProperties": { + "description": "PostgreSQL linked service properties.", + "properties": { + "connectionString": { + "description": "The connection string.", + "type": "object" + }, + "password": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection 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": [ + "connectionString" + ] + }, + "SybaseLinkedService": { + "x-ms-discriminator-value": "Sybase", + "description": "Linked service for Sybase data source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Sybase linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SybaseLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SybaseLinkedServiceTypeProperties": { + "description": "Sybase linked service properties.", + "properties": { + "server": { + "type": "object", + "description": "Server name for connection. Type: string (or Expression with resultType string)." + }, + "database": { + "type": "object", + "description": "Database name for connection. Type: string (or Expression with resultType string)." + }, + "schema": { + "type": "object", + "description": "Schema name for connection. Type: string (or Expression with resultType string)." + }, + "authenticationType": { + "description": "AuthenticationType to be used for connection.", + "type": "string", + "enum": [ + "Basic", + "Windows" + ], + "x-ms-enum": { + "name": "SybaseAuthenticationType", + "modelAsString": true + } + }, + "username": { + "type": "object", + "description": "Username for authentication. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password for authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "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": [ + "server", + "database" + ] + }, + "Db2LinkedService": { + "x-ms-discriminator-value": "Db2", + "description": "Linked service for DB2 data source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "DB2 linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/Db2LinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "Db2LinkedServiceTypeProperties": { + "description": "DB2 linked service properties.", + "properties": { + "server": { + "type": "object", + "description": "Server name for connection. Type: string (or Expression with resultType string)." + }, + "database": { + "type": "object", + "description": "Database name for connection. Type: string (or Expression with resultType string)." + }, + "authenticationType": { + "description": "AuthenticationType to be used for connection.", + "type": "string", + "enum": [ + "Basic" + ], + "x-ms-enum": { + "name": "Db2AuthenticationType", + "modelAsString": true + } + }, + "username": { + "type": "object", + "description": "Username for authentication. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password for authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "packageCollection": { + "type": "object", + "description": "Under where packages are created when querying database. Type: string (or Expression with resultType string)." + }, + "certificateCommonName": { + "type": "object", + "description": "Certificate Common Name when TLS is enabled. 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": [ + "server", + "database" + ] + }, + "TeradataLinkedService": { + "x-ms-discriminator-value": "Teradata", + "description": "Linked service for Teradata data source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Teradata linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/TeradataLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "TeradataLinkedServiceTypeProperties": { + "description": "Teradata linked service properties.", + "properties": { + "connectionString": { + "description": "Teradata ODBC connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "server": { + "type": "object", + "description": "Server name for connection. Type: string (or Expression with resultType string)." + }, + "authenticationType": { + "description": "AuthenticationType to be used for connection.", + "type": "string", + "enum": [ + "Basic", + "Windows" + ], + "x-ms-enum": { + "name": "TeradataAuthenticationType", + "modelAsString": true + } + }, + "username": { + "type": "object", + "description": "Username for authentication. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password for authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "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)." + } + } + }, + "AzureMLLinkedService": { + "x-ms-discriminator-value": "AzureML", + "description": "Azure ML Studio Web Service linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure ML Studio Web Service linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureMLLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureMLLinkedServiceTypeProperties": { + "description": "Azure ML Studio Web Service linked service properties.", + "properties": { + "mlEndpoint": { + "type": "object", + "description": "The Batch Execution REST URL for an Azure ML Studio Web Service endpoint. Type: string (or Expression with resultType string)." + }, + "apiKey": { + "description": "The API key for accessing the Azure ML model endpoint.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "updateResourceEndpoint": { + "type": "object", + "description": "The Update Resource REST URL for an Azure ML Studio Web Service endpoint. Type: string (or Expression with resultType string)." + }, + "servicePrincipalId": { + "type": "object", + "description": "The ID of the service principal used to authenticate against the ARM-based updateResourceEndpoint of an Azure ML Studio web service. Type: string (or Expression with resultType string)." + }, + "servicePrincipalKey": { + "$ref": "../datafactory.json#/definitions/SecretBase", + "description": "The key of the service principal used to authenticate against the ARM-based updateResourceEndpoint of an Azure ML Studio web service." + }, + "tenant": { + "type": "object", + "description": "The name or ID of the tenant to which the service principal belongs. 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": [ + "mlEndpoint", + "apiKey" + ] + }, + "AzureMLServiceLinkedService": { + "x-ms-discriminator-value": "AzureMLService", + "description": "Azure ML Service linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure ML Service linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureMLServiceLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureMLServiceLinkedServiceTypeProperties": { + "description": "Azure ML Service linked service properties.", + "properties": { + "subscriptionId": { + "type": "object", + "description": "Azure ML Service workspace subscription ID. Type: string (or Expression with resultType string)." + }, + "resourceGroupName": { + "type": "object", + "description": "Azure ML Service workspace resource group name. Type: string (or Expression with resultType string)." + }, + "mlWorkspaceName": { + "type": "object", + "description": "Azure ML Service workspace name. Type: string (or Expression with resultType string)." + }, + "servicePrincipalId": { + "type": "object", + "description": "The ID of the service principal used to authenticate against the endpoint of a published Azure ML Service pipeline. Type: string (or Expression with resultType string)." + }, + "servicePrincipalKey": { + "$ref": "../datafactory.json#/definitions/SecretBase", + "description": "The key of the service principal used to authenticate against the endpoint of a published Azure ML Service pipeline." + }, + "tenant": { + "type": "object", + "description": "The name or ID of the tenant to which the service principal belongs. 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": [ + "subscriptionId", + "resourceGroupName", + "mlWorkspaceName" + ] + }, + "OdbcLinkedService": { + "x-ms-discriminator-value": "Odbc", + "description": "Open Database Connectivity (ODBC) linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "ODBC linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/OdbcLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "OdbcLinkedServiceTypeProperties": { + "description": "ODBC linked service properties.", + "properties": { + "connectionString": { + "description": "The non-access credential portion of the connection string as well as an optional encrypted credential. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "authenticationType": { + "type": "object", + "description": "Type of authentication used to connect to the ODBC data store. Possible values are: Anonymous and Basic. Type: string (or Expression with resultType string)." + }, + "credential": { + "description": "The access credential portion of the connection string specified in driver-specific property-value format.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "userName": { + "type": "object", + "description": "User name for Basic authentication. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password for Basic authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "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": [ + "connectionString" + ] + }, + "InformixLinkedService": { + "x-ms-discriminator-value": "Informix", + "description": "Informix linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Informix linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/InformixLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "InformixLinkedServiceTypeProperties": { + "description": "Informix linked service properties.", + "properties": { + "connectionString": { + "description": "The non-access credential portion of the connection string as well as an optional encrypted credential. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "authenticationType": { + "type": "object", + "description": "Type of authentication used to connect to the Informix as ODBC data store. Possible values are: Anonymous and Basic. Type: string (or Expression with resultType string)." + }, + "credential": { + "description": "The access credential portion of the connection string specified in driver-specific property-value format.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "userName": { + "type": "object", + "description": "User name for Basic authentication. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password for Basic authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "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": [ + "connectionString" + ] + }, + "MicrosoftAccessLinkedService": { + "x-ms-discriminator-value": "MicrosoftAccess", + "description": "Microsoft Access linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Microsoft Access linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/MicrosoftAccessLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "MicrosoftAccessLinkedServiceTypeProperties": { + "description": "Microsoft Access linked service properties.", + "properties": { + "connectionString": { + "description": "The non-access credential portion of the connection string as well as an optional encrypted credential. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "authenticationType": { + "type": "object", + "description": "Type of authentication used to connect to the Microsoft Access as ODBC data store. Possible values are: Anonymous and Basic. Type: string (or Expression with resultType string)." + }, + "credential": { + "description": "The access credential portion of the connection string specified in driver-specific property-value format.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "userName": { + "type": "object", + "description": "User name for Basic authentication. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password for Basic authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "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": [ + "connectionString" + ] + }, + "HdfsLinkedService": { + "x-ms-discriminator-value": "Hdfs", + "description": "Hadoop Distributed File System (HDFS) linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "HDFS linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/HdfsLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "HdfsLinkedServiceTypeProperties": { + "description": "HDFS linked service properties.", + "properties": { + "url": { + "type": "object", + "description": "The URL of the HDFS service endpoint, e.g. http://myhostname:50070/webhdfs/v1 . Type: string (or Expression with resultType string)." + }, + "authenticationType": { + "type": "object", + "description": "Type of authentication used to connect to the HDFS. Possible values are: Anonymous and Windows. 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)." + }, + "userName": { + "type": "object", + "description": "User name for Windows authentication. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password for Windows authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + } + }, + "required": [ + "url" + ] + }, + "ODataLinkedService": { + "x-ms-discriminator-value": "OData", + "description": "Open Data Protocol (OData) linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "OData linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ODataLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "ODataLinkedServiceTypeProperties": { + "description": "OData linked service properties.", + "properties": { + "url": { + "type": "object", + "description": "The URL of the OData service endpoint. Type: string (or Expression with resultType string)." + }, + "authenticationType": { + "description": "Type of authentication used to connect to the OData service.", + "type": "string", + "enum": [ + "Basic", + "Anonymous", + "Windows", + "AadServicePrincipal", + "ManagedServiceIdentity" + ], + "x-ms-enum": { + "name": "ODataAuthenticationType", + "modelAsString": true + } + }, + "userName": { + "type": "object", + "description": "User name of the OData service. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password of the OData service.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "tenant": { + "type": "object", + "description": "Specify the tenant information (domain name or tenant ID) under which your application resides. Type: string (or Expression with resultType string)." + }, + "servicePrincipalId": { + "type": "object", + "description": "Specify the application id of your application registered in Azure Active Directory. Type: string (or Expression with resultType string)." + }, + "aadResourceId": { + "type": "object", + "description": "Specify the resource you are requesting authorization to use Directory. Type: string (or Expression with resultType string)." + }, + "aadServicePrincipalCredentialType": { + "description": "Specify the credential type (key or cert) is used for service principal.", + "type": "string", + "enum": [ + "ServicePrincipalKey", + "ServicePrincipalCert" + ], + "x-ms-enum": { + "name": "ODataAadServicePrincipalCredentialType", + "modelAsString": true + } + }, + "servicePrincipalKey": { + "description": "Specify the secret of your application registered in Azure Active Directory. Type: string (or Expression with resultType string).", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "servicePrincipalEmbeddedCert": { + "description": "Specify the base64 encoded certificate of your application registered in Azure Active Directory. Type: string (or Expression with resultType string).", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "servicePrincipalEmbeddedCertPassword": { + "description": "Specify the password of your certificate if your certificate has a password and you are using AadServicePrincipal authentication. Type: string (or Expression with resultType string).", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "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": [ + "url" + ] + }, + "WebLinkedService": { + "x-ms-discriminator-value": "Web", + "description": "Web linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Web linked service properties.", + "$ref": "#/definitions/WebLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "WebLinkedServiceTypeProperties": { + "description": "Base definition of WebLinkedServiceTypeProperties, this typeProperties is polymorphic based on authenticationType, so not flattened in SDK models.", + "discriminator": "authenticationType", + "type": "object", + "properties": { + "url": { + "type": "object", + "description": "The URL of the web service endpoint, e.g. http://www.microsoft.com . Type: string (or Expression with resultType string)." + }, + "authenticationType": { + "description": "Type of authentication used to connect to the web table source.", + "type": "string", + "enum": [ + "Basic", + "Anonymous", + "ClientCertificate" + ], + "x-ms-enum": { + "name": "WebAuthenticationType", + "modelAsString": true + } + } + }, + "required": [ + "authenticationType", + "url" + ] + }, + "WebAnonymousAuthentication": { + "description": "A WebLinkedService that uses anonymous authentication to communicate with an HTTP endpoint.", + "x-ms-discriminator-value": "Anonymous", + "allOf": [ + { + "$ref": "#/definitions/WebLinkedServiceTypeProperties" + } + ] + }, + "WebBasicAuthentication": { + "description": "A WebLinkedService that uses basic authentication to communicate with an HTTP endpoint.", + "x-ms-discriminator-value": "Basic", + "allOf": [ + { + "$ref": "#/definitions/WebLinkedServiceTypeProperties" + } + ], + "properties": { + "username": { + "type": "object", + "description": "User name for Basic authentication. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "The password for Basic authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + } + }, + "required": [ + "username", + "password" + ] + }, + "WebClientCertificateAuthentication": { + "description": "A WebLinkedService that uses client certificate based authentication to communicate with an HTTP endpoint. This scheme follows mutual authentication; the server must also provide valid credentials to the client.", + "x-ms-discriminator-value": "ClientCertificate", + "allOf": [ + { + "$ref": "#/definitions/WebLinkedServiceTypeProperties" + } + ], + "properties": { + "pfx": { + "description": "Base64-encoded contents of a PFX file.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "password": { + "description": "Password for the PFX file.", + "$ref": "../datafactory.json#/definitions/SecretBase" + } + }, + "required": [ + "pfx", + "password" + ] + }, + "CassandraLinkedService": { + "x-ms-discriminator-value": "Cassandra", + "description": "Linked service for Cassandra data source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Cassandra linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CassandraLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "CassandraLinkedServiceTypeProperties": { + "description": "Cassandra linked service properties.", + "properties": { + "host": { + "type": "object", + "description": "Host name for connection. Type: string (or Expression with resultType string)." + }, + "authenticationType": { + "type": "object", + "description": "AuthenticationType to be used for connection. Type: string (or Expression with resultType string)." + }, + "port": { + "type": "object", + "description": "The port for the connection. Type: integer (or Expression with resultType integer)." + }, + "username": { + "type": "object", + "description": "Username for authentication. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password for authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "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": [ + "host" + ] + }, + "MongoDbLinkedService": { + "x-ms-discriminator-value": "MongoDb", + "description": "Linked service for MongoDb data source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "MongoDB linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/MongoDbLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "MongoDbLinkedServiceTypeProperties": { + "description": "MongoDB linked service properties.", + "properties": { + "server": { + "type": "object", + "description": "The IP address or server name of the MongoDB server. Type: string (or Expression with resultType string)." + }, + "authenticationType": { + "description": "The authentication type to be used to connect to the MongoDB database.", + "type": "string", + "enum": [ + "Basic", + "Anonymous" + ], + "x-ms-enum": { + "name": "MongoDbAuthenticationType", + "modelAsString": true + } + }, + "databaseName": { + "type": "object", + "description": "The name of the MongoDB database that you want to access. Type: string (or Expression with resultType string)." + }, + "username": { + "type": "object", + "description": "Username for authentication. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password for authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "authSource": { + "type": "object", + "description": "Database to verify the username and password. Type: string (or Expression with resultType string)." + }, + "port": { + "type": "object", + "description": "The TCP port number that the MongoDB server uses to listen for client connections. The default value is 27017. Type: integer (or Expression with resultType integer), minimum: 0." + }, + "enableSsl": { + "type": "object", + "description": "Specifies whether the connections to the server are encrypted using SSL. The default value is false. Type: boolean (or Expression with resultType boolean)." + }, + "allowSelfSignedServerCert": { + "type": "object", + "description": "Specifies whether to allow self-signed certificates from the server. The default value is false. Type: boolean (or Expression with resultType boolean)." + }, + "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": [ + "server", + "databaseName" + ] + }, + "MongoDbV2LinkedService": { + "x-ms-discriminator-value": "MongoDbV2", + "description": "Linked service for MongoDB data source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "MongoDB linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/MongoDbV2LinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "MongoDbV2LinkedServiceTypeProperties": { + "description": "MongoDB linked service properties.", + "properties": { + "connectionString": { + "description": "The MongoDB connection string. Type: string, SecureString or AzureKeyVaultSecretReference. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "database": { + "type": "object", + "description": "The name of the MongoDB database that you want to access. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "connectionString", + "database" + ] + }, + "CosmosDbMongoDbApiLinkedService": { + "x-ms-discriminator-value": "CosmosDbMongoDbApi", + "description": "Linked service for CosmosDB (MongoDB API) data source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "CosmosDB (MongoDB API) linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CosmosDbMongoDbApiLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "CosmosDbMongoDbApiLinkedServiceTypeProperties": { + "description": "CosmosDB (MongoDB API) linked service properties.", + "properties": { + "connectionString": { + "description": "The CosmosDB (MongoDB API) connection string. Type: string, SecureString or AzureKeyVaultSecretReference. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "database": { + "type": "object", + "description": "The name of the CosmosDB (MongoDB API) database that you want to access. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "connectionString", + "database" + ] + }, + "AzureDataLakeStoreLinkedService": { + "x-ms-discriminator-value": "AzureDataLakeStore", + "description": "Azure Data Lake Store linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Data Lake Store linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureDataLakeStoreLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureDataLakeStoreLinkedServiceTypeProperties": { + "description": "Azure Data Lake Store linked service properties.", + "properties": { + "dataLakeStoreUri": { + "type": "object", + "description": "Data Lake Store service URI. Type: string (or Expression with resultType string)." + }, + "servicePrincipalId": { + "type": "object", + "description": "The ID of the application used to authenticate against the Azure Data Lake Store account. Type: string (or Expression with resultType string)." + }, + "servicePrincipalKey": { + "description": "The Key of the application used to authenticate against the Azure Data Lake Store account.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "tenant": { + "type": "object", + "description": "The name or ID of the tenant to which the service principal belongs. Type: string (or Expression with resultType string)." + }, + "accountName": { + "type": "object", + "description": "Data Lake Store account name. Type: string (or Expression with resultType string)." + }, + "subscriptionId": { + "type": "object", + "description": "Data Lake Store account subscription ID (if different from Data Factory account). Type: string (or Expression with resultType string)." + }, + "resourceGroupName": { + "type": "object", + "description": "Data Lake Store account resource group name (if different from Data Factory account). 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": [ + "dataLakeStoreUri" + ] + }, + "AzureBlobFSLinkedService": { + "x-ms-discriminator-value": "AzureBlobFS", + "description": "Azure Data Lake Storage Gen2 linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Data Lake Storage Gen2 linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureBlobFSLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureBlobFSLinkedServiceTypeProperties": { + "description": "Azure Data Lake Storage Gen2 linked service properties.", + "properties": { + "url": { + "type": "object", + "description": "Endpoint for the Azure Data Lake Storage Gen2 service. Type: string (or Expression with resultType string)." + }, + "accountKey": { + "type": "object", + "description": "Account key for the Azure Data Lake Storage Gen2 service. Type: string (or Expression with resultType string)." + }, + "servicePrincipalId": { + "type": "object", + "description": "The ID of the application used to authenticate against the Azure Data Lake Storage Gen2 account. Type: string (or Expression with resultType string)." + }, + "servicePrincipalKey": { + "description": "The Key of the application used to authenticate against the Azure Data Lake Storage Gen2 account.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "tenant": { + "type": "object", + "description": "The name or ID of the tenant to which the service principal belongs. 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": [ + "url" + ] + }, + "Office365LinkedService": { + "x-ms-discriminator-value": "Office365", + "description": "Office365 linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Office365 linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/Office365LinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "Office365LinkedServiceTypeProperties": { + "description": "Office365 linked service properties.", + "properties": { + "office365TenantId": { + "type": "object", + "description": "Azure tenant ID to which the Office 365 account belongs. Type: string (or Expression with resultType string)." + }, + "servicePrincipalTenantId": { + "type": "object", + "description": "Specify the tenant information under which your Azure AD web application resides. Type: string (or Expression with resultType string)." + }, + "servicePrincipalId": { + "type": "object", + "description": "Specify the application's client ID. Type: string (or Expression with resultType string)." + }, + "servicePrincipalKey": { + "description": "Specify the application's key.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "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": [ + "office365TenantId", + "servicePrincipalTenantId", + "servicePrincipalId", + "servicePrincipalKey" + ] + }, + "SalesforceLinkedService": { + "x-ms-discriminator-value": "Salesforce", + "description": "Linked service for Salesforce.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Salesforce linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SalesforceLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SalesforceLinkedServiceTypeProperties": { + "description": "Salesforce linked service properties.", + "properties": { + "environmentUrl": { + "type": "object", + "description": "The URL of Salesforce instance. Default is 'https://login.salesforce.com'. To copy data from sandbox, specify 'https://test.salesforce.com'. To copy data from custom domain, specify, for example, 'https://[domain].my.salesforce.com'. Type: string (or Expression with resultType string)." + }, + "username": { + "type": "object", + "description": "The username for Basic authentication of the Salesforce instance. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "The password for Basic authentication of the Salesforce instance.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "securityToken": { + "description": "The security token is required to remotely access Salesforce instance.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "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)." + } + } + }, + "SalesforceServiceCloudLinkedService": { + "x-ms-discriminator-value": "SalesforceServiceCloud", + "description": "Linked service for Salesforce Service Cloud.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Salesforce Service Cloud linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SalesforceServiceCloudLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SalesforceServiceCloudLinkedServiceTypeProperties": { + "description": "Salesforce Service Cloud linked service properties.", + "properties": { + "environmentUrl": { + "type": "object", + "description": "The URL of Salesforce Service Cloud instance. Default is 'https://login.salesforce.com'. To copy data from sandbox, specify 'https://test.salesforce.com'. To copy data from custom domain, specify, for example, 'https://[domain].my.salesforce.com'. Type: string (or Expression with resultType string)." + }, + "username": { + "type": "object", + "description": "The username for Basic authentication of the Salesforce instance. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "The password for Basic authentication of the Salesforce instance.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "securityToken": { + "description": "The security token is required to remotely access Salesforce instance.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "extendedProperties": { + "type": "object", + "description": "Extended properties appended to the connection string. 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)." + } + } + }, + "SapCloudForCustomerLinkedService": { + "x-ms-discriminator-value": "SapCloudForCustomer", + "description": "Linked service for SAP Cloud for Customer.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "SAP Cloud for Customer linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SapCloudForCustomerLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SapCloudForCustomerLinkedServiceTypeProperties": { + "description": "SAP Cloud for Customer linked service properties.", + "properties": { + "url": { + "type": "object", + "description": "The URL of SAP Cloud for Customer OData API. For example, '[https://[tenantname].crm.ondemand.com/sap/c4c/odata/v1]'. Type: string (or Expression with resultType string)." + }, + "username": { + "type": "object", + "description": "The username for Basic authentication. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "The password for Basic authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "encryptedCredential": { + "type": "object", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Either encryptedCredential or username/password must be provided. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "url" + ] + }, + "SapEccLinkedService": { + "x-ms-discriminator-value": "SapEcc", + "description": "Linked service for SAP ERP Central Component(SAP ECC).", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "SAP ECC linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SapEccLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SapEccLinkedServiceTypeProperties": { + "description": "SAP ECC linked service properties.", + "properties": { + "url": { + "type": "string", + "description": "The URL of SAP ECC OData API. For example, '[https://hostname:port/sap/opu/odata/sap/servicename/]'. Type: string (or Expression with resultType string)." + }, + "username": { + "type": "string", + "description": "The username for Basic authentication. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "The password for Basic authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "encryptedCredential": { + "type": "string", + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Either encryptedCredential or username/password must be provided. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "url" + ] + }, + "SapOpenHubLinkedService": { + "x-ms-discriminator-value": "SapOpenHub", + "description": "SAP Business Warehouse Open Hub Destination Linked Service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to SAP Business Warehouse Open Hub Destination linked service type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SapOpenHubLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SapOpenHubLinkedServiceTypeProperties": { + "description": "Properties specific to SAP Business Warehouse Open Hub Destination linked service type.", + "properties": { + "server": { + "type": "object", + "description": "Host name of the SAP BW instance where the open hub destination is located. Type: string (or Expression with resultType string)." + }, + "systemNumber": { + "type": "object", + "description": "System number of the BW system where the open hub destination is located. (Usually a two-digit decimal number represented as a string.) Type: string (or Expression with resultType string)." + }, + "clientId": { + "type": "object", + "description": "Client ID of the client on the BW system where the open hub destination is located. (Usually a three-digit decimal number represented as a string) Type: string (or Expression with resultType string)." + }, + "language": { + "type": "object", + "description": "Language of the BW system where the open hub destination is located. The default value is EN. Type: string (or Expression with resultType string)." + }, + "userName": { + "type": "object", + "description": "Username to access the SAP BW server where the open hub destination is located. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password to access the SAP BW server where the open hub destination is located.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "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": [ + "server", + "systemNumber", + "clientId" + ] + }, + "RestServiceLinkedService": { + "x-ms-discriminator-value": "RestService", + "description": "Rest Service linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Rest Service linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/RestServiceLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "RestServiceLinkedServiceTypeProperties": { + "description": "Rest Service linked service properties.", + "properties": { + "url": { + "description": "The base URL of the REST service.", + "type": "object" + }, + "enableServerCertificateValidation": { + "type": "object", + "description": "Whether to validate server side SSL certificate when connecting to the endpoint.The default value is true. Type: boolean (or Expression with resultType boolean)." + }, + "authenticationType": { + "description": "Type of authentication used to connect to the REST service.", + "type": "string", + "enum": [ + "Anonymous", + "Basic", + "AadServicePrincipal", + "ManagedServiceIdentity" + ], + "x-ms-enum": { + "name": "RestServiceAuthenticationType", + "modelAsString": true + } + }, + "userName": { + "description": "The user name used in Basic authentication type.", + "type": "object" + }, + "password": { + "description": "The password used in Basic authentication type.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "servicePrincipalId": { + "description": "The application's client ID used in AadServicePrincipal authentication type.", + "type": "object" + }, + "servicePrincipalKey": { + "description": "The application's key used in AadServicePrincipal authentication type.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "tenant": { + "description": "The tenant information (domain name or tenant ID) used in AadServicePrincipal authentication type under which your application resides.", + "type": "object" + }, + "aadResourceId": { + "description": "The resource you are requesting authorization to use.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "url", + "authenticationType" + ] + }, + "AmazonS3LinkedService": { + "x-ms-discriminator-value": "AmazonS3", + "description": "Linked service for Amazon S3.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Amazon S3 linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AmazonS3LinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AmazonS3LinkedServiceTypeProperties": { + "description": "Amazon S3 linked service properties.", + "properties": { + "accessKeyId": { + "type": "object", + "description": "The access key identifier of the Amazon S3 Identity and Access Management (IAM) user. Type: string (or Expression with resultType string)." + }, + "secretAccessKey": { + "description": "The secret access key of the Amazon S3 Identity and Access Management (IAM) user.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "serviceUrl": { + "type": "object", + "description": "This value specifies the endpoint to access with the S3 Connector. This is an optional property; change it only if you want to try a different service endpoint or want to switch between https and http. 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)." + } + } + }, + "AmazonRedshiftLinkedService": { + "x-ms-discriminator-value": "AmazonRedshift", + "description": "Linked service for Amazon Redshift.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Amazon Redshift linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AmazonRedshiftLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AmazonRedshiftLinkedServiceTypeProperties": { + "description": "Amazon Redshift linked service properties.", + "properties": { + "server": { + "type": "object", + "description": "The name of the Amazon Redshift server. Type: string (or Expression with resultType string)." + }, + "username": { + "type": "object", + "description": "The username of the Amazon Redshift source. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "The password of the Amazon Redshift source.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "database": { + "type": "object", + "description": "The database name of the Amazon Redshift source. Type: string (or Expression with resultType string)." + }, + "port": { + "type": "object", + "description": "The TCP port number that the Amazon Redshift server uses to listen for client connections. The default value is 5439. Type: integer (or Expression with resultType integer)." + }, + "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": [ + "server", + "database" + ] + }, + "CustomDataSourceLinkedService": { + "x-ms-discriminator-value": "CustomDataSource", + "description": "Custom linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Custom linked service properties.", + "x-ms-client-flatten": true, + "type": "object" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureSearchLinkedService": { + "x-ms-discriminator-value": "AzureSearch", + "description": "Linked service for Windows Azure Search Service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Windows Azure Search Service linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureSearchLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureSearchLinkedServiceTypeProperties": { + "description": "Windows Azure Search Service linked service properties.", + "properties": { + "url": { + "type": "object", + "description": "URL for Azure Search service. Type: string (or Expression with resultType string)." + }, + "key": { + "description": "Admin Key for Azure Search service", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "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": [ + "url" + ] + }, + "HttpLinkedService": { + "x-ms-discriminator-value": "HttpServer", + "description": "Linked service for an HTTP source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this linked service type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/HttpLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "HttpLinkedServiceTypeProperties": { + "description": "Properties specific to this linked service type.", + "properties": { + "url": { + "type": "object", + "description": "The base URL of the HTTP endpoint, e.g. http://www.microsoft.com. Type: string (or Expression with resultType string)." + }, + "authenticationType": { + "description": "The authentication type to be used to connect to the HTTP server.", + "type": "string", + "enum": [ + "Basic", + "Anonymous", + "Digest", + "Windows", + "ClientCertificate" + ], + "x-ms-enum": { + "name": "HttpAuthenticationType", + "modelAsString": true + } + }, + "userName": { + "type": "object", + "description": "User name for Basic, Digest, or Windows authentication. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password for Basic, Digest, Windows, or ClientCertificate with EmbeddedCertData authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "embeddedCertData": { + "type": "object", + "description": "Base64 encoded certificate data for ClientCertificate authentication. For on-premises copy with ClientCertificate authentication, either CertThumbprint or EmbeddedCertData/Password should be specified. Type: string (or Expression with resultType string)." + }, + "certThumbprint": { + "type": "object", + "description": "Thumbprint of certificate for ClientCertificate authentication. Only valid for on-premises copy. For on-premises copy with ClientCertificate authentication, either CertThumbprint or EmbeddedCertData/Password should be specified. 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)." + }, + "enableServerCertificateValidation": { + "type": "object", + "description": "If true, validate the HTTPS server SSL certificate. Default value is true. Type: boolean (or Expression with resultType boolean)." + } + }, + "required": [ + "url" + ] + }, + "FtpServerLinkedService": { + "x-ms-discriminator-value": "FtpServer", + "description": "A FTP server Linked Service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this linked service type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/FtpServerLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "FtpServerLinkedServiceTypeProperties": { + "description": "Properties specific to this linked service type.", + "properties": { + "host": { + "type": "object", + "description": "Host name of the FTP server. Type: string (or Expression with resultType string)." + }, + "port": { + "type": "object", + "description": "The TCP port number that the FTP server uses to listen for client connections. Default value is 21. Type: integer (or Expression with resultType integer), minimum: 0." + }, + "authenticationType": { + "description": "The authentication type to be used to connect to the FTP server.", + "type": "string", + "enum": [ + "Basic", + "Anonymous" + ], + "x-ms-enum": { + "name": "FtpAuthenticationType", + "modelAsString": true + } + }, + "userName": { + "type": "object", + "description": "Username to logon the FTP server. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password to logon the FTP server.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "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)." + }, + "enableSsl": { + "type": "object", + "description": "If true, connect to the FTP server over SSL/TLS channel. Default value is true. Type: boolean (or Expression with resultType boolean)." + }, + "enableServerCertificateValidation": { + "type": "object", + "description": "If true, validate the FTP server SSL certificate when connect over SSL/TLS channel. Default value is true. Type: boolean (or Expression with resultType boolean)." + } + }, + "required": [ + "host" + ] + }, + "SftpServerLinkedService": { + "x-ms-discriminator-value": "Sftp", + "description": "A linked service for an SSH File Transfer Protocol (SFTP) server. ", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this linked service type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SftpServerLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SftpServerLinkedServiceTypeProperties": { + "description": "Properties specific to this linked service type.", + "properties": { + "host": { + "type": "object", + "description": "The SFTP server host name. Type: string (or Expression with resultType string)." + }, + "port": { + "type": "object", + "description": "The TCP port number that the SFTP server uses to listen for client connections. Default value is 22. Type: integer (or Expression with resultType integer), minimum: 0." + }, + "authenticationType": { + "description": "The authentication type to be used to connect to the FTP server.", + "type": "string", + "enum": [ + "Basic", + "SshPublicKey" + ], + "x-ms-enum": { + "name": "SftpAuthenticationType", + "modelAsString": true + } + }, + "userName": { + "type": "object", + "description": "The username used to log on to the SFTP server. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password to logon the SFTP server for Basic authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "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)." + }, + "privateKeyPath": { + "type": "object", + "description": "The SSH private key file path for SshPublicKey authentication. Only valid for on-premises copy. For on-premises copy with SshPublicKey authentication, either PrivateKeyPath or PrivateKeyContent should be specified. SSH private key should be OpenSSH format. Type: string (or Expression with resultType string)." + }, + "privateKeyContent": { + "description": "Base64 encoded SSH private key content for SshPublicKey authentication. For on-premises copy with SshPublicKey authentication, either PrivateKeyPath or PrivateKeyContent should be specified. SSH private key should be OpenSSH format.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "passPhrase": { + "description": "The password to decrypt the SSH private key if the SSH private key is encrypted.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "skipHostKeyValidation": { + "type": "object", + "description": "If true, skip the SSH host key validation. Default value is false. Type: boolean (or Expression with resultType boolean)." + }, + "hostKeyFingerprint": { + "type": "object", + "description": "The host key finger-print of the SFTP server. When SkipHostKeyValidation is false, HostKeyFingerprint should be specified. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "host" + ] + }, + "SapBWLinkedService": { + "x-ms-discriminator-value": "SapBW", + "description": "SAP Business Warehouse Linked Service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this linked service type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SapBWLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SapBWLinkedServiceTypeProperties": { + "description": "Properties specific to this linked service type.", + "properties": { + "server": { + "type": "object", + "description": "Host name of the SAP BW instance. Type: string (or Expression with resultType string)." + }, + "systemNumber": { + "type": "object", + "description": "System number of the BW system. (Usually a two-digit decimal number represented as a string.) Type: string (or Expression with resultType string)." + }, + "clientId": { + "type": "object", + "description": "Client ID of the client on the BW system. (Usually a three-digit decimal number represented as a string) Type: string (or Expression with resultType string)." + }, + "userName": { + "type": "object", + "description": "Username to access the SAP BW server. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password to access the SAP BW server.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "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": [ + "server", + "systemNumber", + "clientId" + ] + }, + "SapHanaLinkedService": { + "x-ms-discriminator-value": "SapHana", + "description": "SAP HANA Linked Service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this linked service type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SapHanaLinkedServiceProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SapHanaLinkedServiceProperties": { + "description": "Properties specific to this linked service type.", + "properties": { + "connectionString": { + "type": "object", + "description": "SAP HANA ODBC connection string. Type: string, SecureString or AzureKeyVaultSecretReference." + }, + "server": { + "type": "object", + "description": "Host name of the SAP HANA server. Type: string (or Expression with resultType string)." + }, + "authenticationType": { + "description": "The authentication type to be used to connect to the SAP HANA server.", + "type": "string", + "enum": [ + "Basic", + "Windows" + ], + "x-ms-enum": { + "name": "SapHanaAuthenticationType", + "modelAsString": true + } + }, + "userName": { + "type": "object", + "description": "Username to access the SAP HANA server. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password to access the SAP HANA server.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "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": [ + "server" + ] + }, + "AmazonMWSLinkedService": { + "x-ms-discriminator-value": "AmazonMWS", + "description": "Amazon Marketplace Web Service linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Amazon Marketplace Web Service linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AmazonMWSLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AmazonMWSLinkedServiceTypeProperties": { + "description": "Amazon Marketplace Web Service linked service properties.", + "properties": { + "endpoint": { + "description": "The endpoint of the Amazon MWS server, (i.e. mws.amazonservices.com)", + "type": "object" + }, + "marketplaceID": { + "description": "The Amazon Marketplace ID you want to retrieve data from. To retrieve data from multiple Marketplace IDs, separate them with a comma (,). (i.e. A2EUQ1WTGCTBG2)", + "type": "object" + }, + "sellerID": { + "description": "The Amazon seller ID.", + "type": "object" + }, + "mwsAuthToken": { + "description": "The Amazon MWS authentication token.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "accessKeyId": { + "description": "The access key id used to access data.", + "type": "object" + }, + "secretKey": { + "description": "The secret key used to access data.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.", + "type": "object" + }, + "useHostVerification": { + "description": "Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "usePeerVerification": { + "description": "Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "endpoint", + "marketplaceID", + "sellerID", + "accessKeyId" + ] + }, + "AzurePostgreSqlLinkedService": { + "x-ms-discriminator-value": "AzurePostgreSql", + "description": "Azure PostgreSQL linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure PostgreSQL linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzurePostgreSqlLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzurePostgreSqlLinkedServiceTypeProperties": { + "description": "Azure PostgreSQL linked service properties.", + "properties": { + "connectionString": { + "description": "An ODBC connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "password": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + } + }, + "ConcurLinkedService": { + "x-ms-discriminator-value": "Concur", + "description": "Concur Service linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Concur Service linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ConcurLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "ConcurLinkedServiceTypeProperties": { + "description": "Concur Service linked service properties.", + "properties": { + "clientId": { + "description": "Application client_id supplied by Concur App Management.", + "type": "object" + }, + "username": { + "description": "The user name that you use to access Concur Service.", + "type": "object" + }, + "password": { + "description": "The password corresponding to the user name that you provided in the username field.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.", + "type": "object" + }, + "useHostVerification": { + "description": "Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "usePeerVerification": { + "description": "Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "clientId", + "username" + ] + }, + "CouchbaseLinkedService": { + "x-ms-discriminator-value": "Couchbase", + "description": "Couchbase server linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Couchbase server linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CouchbaseLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "CouchbaseLinkedServiceTypeProperties": { + "description": "Couchbase server linked service properties.", + "properties": { + "connectionString": { + "description": "An ODBC connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "credString": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of credString in connection string." + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + } + }, + "DrillLinkedService": { + "x-ms-discriminator-value": "Drill", + "description": "Drill server linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Drill server linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DrillLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "DrillLinkedServiceTypeProperties": { + "description": "Drill server linked service properties.", + "properties": { + "connectionString": { + "description": "An ODBC connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "pwd": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + } + }, + "EloquaLinkedService": { + "x-ms-discriminator-value": "Eloqua", + "description": "Eloqua server linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Eloqua server linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/EloquaLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "EloquaLinkedServiceTypeProperties": { + "description": "Eloqua server linked service properties.", + "properties": { + "endpoint": { + "description": "The endpoint of the Eloqua server. (i.e. eloqua.example.com)", + "type": "object" + }, + "username": { + "description": "The site name and user name of your Eloqua account in the form: sitename/username. (i.e. Eloqua/Alice)", + "type": "object" + }, + "password": { + "description": "The password corresponding to the user name.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.", + "type": "object" + }, + "useHostVerification": { + "description": "Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "usePeerVerification": { + "description": "Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "endpoint", + "username" + ] + }, + "GoogleBigQueryLinkedService": { + "x-ms-discriminator-value": "GoogleBigQuery", + "description": "Google BigQuery service linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Google BigQuery service linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GoogleBigQueryLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "GoogleBigQueryLinkedServiceTypeProperties": { + "description": "Google BigQuery service linked service properties.", + "properties": { + "project": { + "description": "The default BigQuery project to query against.", + "type": "object" + }, + "additionalProjects": { + "description": "A comma-separated list of public BigQuery projects to access.", + "type": "object" + }, + "requestGoogleDriveScope": { + "description": "Whether to request access to Google Drive. Allowing Google Drive access enables support for federated tables that combine BigQuery data with data from Google Drive. The default value is false.", + "type": "object" + }, + "authenticationType": { + "description": "The OAuth 2.0 authentication mechanism used for authentication. ServiceAuthentication can only be used on self-hosted IR.", + "type": "string", + "enum": [ + "ServiceAuthentication", + "UserAuthentication" + ], + "x-ms-enum": { + "name": "GoogleBigQueryAuthenticationType", + "modelAsString": true + } + }, + "refreshToken": { + "description": "The refresh token obtained from Google for authorizing access to BigQuery for UserAuthentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "clientId": { + "description": "The client id of the google application used to acquire the refresh token. Type: string (or Expression with resultType string).", + "type": "object" + }, + "clientSecret": { + "description": "The client secret of the google application used to acquire the refresh token.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "email": { + "description": "The service account email ID that is used for ServiceAuthentication and can only be used on self-hosted IR.", + "type": "object" + }, + "keyFilePath": { + "description": "The full path to the .p12 key file that is used to authenticate the service account email address and can only be used on self-hosted IR.", + "type": "object" + }, + "trustedCertPath": { + "description": "The full path of the .pem file containing trusted CA certificates for verifying the server when connecting over SSL. This property can only be set when using SSL on self-hosted IR. The default value is the cacerts.pem file installed with the IR.", + "type": "object" + }, + "useSystemTrustStore": { + "description": "Specifies whether to use a CA certificate from the system trust store or from a specified PEM file. The default value is false.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "project", + "authenticationType" + ] + }, + "GreenplumLinkedService": { + "x-ms-discriminator-value": "Greenplum", + "description": "Greenplum Database linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Greenplum Database linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GreenplumLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "GreenplumLinkedServiceTypeProperties": { + "description": "Greenplum Database linked service properties.", + "properties": { + "connectionString": { + "description": "An ODBC connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "pwd": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + } + }, + "HBaseLinkedService": { + "x-ms-discriminator-value": "HBase", + "description": "HBase server linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "HBase server linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/HBaseLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "HBaseLinkedServiceTypeProperties": { + "description": "HBase server linked service properties.", + "properties": { + "host": { + "description": "The IP address or host name of the HBase server. (i.e. 192.168.222.160)", + "type": "object" + }, + "port": { + "description": "The TCP port that the HBase instance uses to listen for client connections. The default value is 9090.", + "type": "object" + }, + "httpPath": { + "description": "The partial URL corresponding to the HBase server. (i.e. /gateway/sandbox/hbase/version)", + "type": "object" + }, + "authenticationType": { + "description": "The authentication mechanism to use to connect to the HBase server.", + "type": "string", + "enum": [ + "Anonymous", + "Basic" + ], + "x-ms-enum": { + "name": "HBaseAuthenticationType", + "modelAsString": true + } + }, + "username": { + "description": "The user name used to connect to the HBase instance.", + "type": "object" + }, + "password": { + "description": "The password corresponding to the user name.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "enableSsl": { + "description": "Specifies whether the connections to the server are encrypted using SSL. The default value is false.", + "type": "object" + }, + "trustedCertPath": { + "description": "The full path of the .pem file containing trusted CA certificates for verifying the server when connecting over SSL. This property can only be set when using SSL on self-hosted IR. The default value is the cacerts.pem file installed with the IR.", + "type": "object" + }, + "allowHostNameCNMismatch": { + "description": "Specifies whether to require a CA-issued SSL certificate name to match the host name of the server when connecting over SSL. The default value is false.", + "type": "object" + }, + "allowSelfSignedServerCert": { + "description": "Specifies whether to allow self-signed certificates from the server. The default value is false.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "host", + "authenticationType" + ] + }, + "HiveLinkedService": { + "x-ms-discriminator-value": "Hive", + "description": "Hive Server linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Hive Server linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/HiveLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "HiveLinkedServiceTypeProperties": { + "description": "Hive Server linked service properties.", + "properties": { + "host": { + "description": "IP address or host name of the Hive server, separated by ';' for multiple hosts (only when serviceDiscoveryMode is enable).", + "type": "object" + }, + "port": { + "description": "The TCP port that the Hive server uses to listen for client connections.", + "type": "object" + }, + "serverType": { + "description": "The type of Hive server.", + "type": "string", + "enum": [ + "HiveServer1", + "HiveServer2", + "HiveThriftServer" + ], + "x-ms-enum": { + "name": "HiveServerType", + "modelAsString": true + } + }, + "thriftTransportProtocol": { + "description": "The transport protocol to use in the Thrift layer.", + "type": "string", + "enum": [ + "Binary", + "SASL", + "HTTP " + ], + "x-ms-enum": { + "name": "HiveThriftTransportProtocol", + "modelAsString": true + } + }, + "authenticationType": { + "description": "The authentication method used to access the Hive server.", + "type": "string", + "enum": [ + "Anonymous", + "Username", + "UsernameAndPassword", + "WindowsAzureHDInsightService" + ], + "x-ms-enum": { + "name": "HiveAuthenticationType", + "modelAsString": true + } + }, + "serviceDiscoveryMode": { + "description": "true to indicate using the ZooKeeper service, false not.", + "type": "object" + }, + "zooKeeperNameSpace": { + "description": "The namespace on ZooKeeper under which Hive Server 2 nodes are added.", + "type": "object" + }, + "useNativeQuery": { + "description": "Specifies whether the driver uses native HiveQL queries,or converts them into an equivalent form in HiveQL.", + "type": "object" + }, + "username": { + "description": "The user name that you use to access Hive Server.", + "type": "object" + }, + "password": { + "description": "The password corresponding to the user name that you provided in the Username field", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "httpPath": { + "description": "The partial URL corresponding to the Hive server.", + "type": "object" + }, + "enableSsl": { + "description": "Specifies whether the connections to the server are encrypted using SSL. The default value is false.", + "type": "object" + }, + "trustedCertPath": { + "description": "The full path of the .pem file containing trusted CA certificates for verifying the server when connecting over SSL. This property can only be set when using SSL on self-hosted IR. The default value is the cacerts.pem file installed with the IR.", + "type": "object" + }, + "useSystemTrustStore": { + "description": "Specifies whether to use a CA certificate from the system trust store or from a specified PEM file. The default value is false.", + "type": "object" + }, + "allowHostNameCNMismatch": { + "description": "Specifies whether to require a CA-issued SSL certificate name to match the host name of the server when connecting over SSL. The default value is false.", + "type": "object" + }, + "allowSelfSignedServerCert": { + "description": "Specifies whether to allow self-signed certificates from the server. The default value is false.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "host", + "authenticationType" + ] + }, + "HubspotLinkedService": { + "x-ms-discriminator-value": "Hubspot", + "description": "Hubspot Service linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Hubspot Service linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/HubspotLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "HubspotLinkedServiceTypeProperties": { + "description": "Hubspot Service linked service properties.", + "properties": { + "clientId": { + "description": "The client ID associated with your Hubspot application.", + "type": "object" + }, + "clientSecret": { + "description": "The client secret associated with your Hubspot application.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "accessToken": { + "description": "The access token obtained when initially authenticating your OAuth integration.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "refreshToken": { + "description": "The refresh token obtained when initially authenticating your OAuth integration.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.", + "type": "object" + }, + "useHostVerification": { + "description": "Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "usePeerVerification": { + "description": "Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "clientId" + ] + }, + "ImpalaLinkedService": { + "x-ms-discriminator-value": "Impala", + "description": "Impala server linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Impala server linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ImpalaLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "ImpalaLinkedServiceTypeProperties": { + "description": "Impala server linked service properties.", + "properties": { + "host": { + "description": "The IP address or host name of the Impala server. (i.e. 192.168.222.160)", + "type": "object" + }, + "port": { + "description": "The TCP port that the Impala server uses to listen for client connections. The default value is 21050.", + "type": "object" + }, + "authenticationType": { + "description": "The authentication type to use.", + "type": "string", + "enum": [ + "Anonymous", + "SASLUsername", + "UsernameAndPassword" + ], + "x-ms-enum": { + "name": "ImpalaAuthenticationType", + "modelAsString": true + } + }, + "username": { + "description": "The user name used to access the Impala server. The default value is anonymous when using SASLUsername.", + "type": "object" + }, + "password": { + "description": "The password corresponding to the user name when using UsernameAndPassword.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "enableSsl": { + "description": "Specifies whether the connections to the server are encrypted using SSL. The default value is false.", + "type": "object" + }, + "trustedCertPath": { + "description": "The full path of the .pem file containing trusted CA certificates for verifying the server when connecting over SSL. This property can only be set when using SSL on self-hosted IR. The default value is the cacerts.pem file installed with the IR.", + "type": "object" + }, + "useSystemTrustStore": { + "description": "Specifies whether to use a CA certificate from the system trust store or from a specified PEM file. The default value is false.", + "type": "object" + }, + "allowHostNameCNMismatch": { + "description": "Specifies whether to require a CA-issued SSL certificate name to match the host name of the server when connecting over SSL. The default value is false.", + "type": "object" + }, + "allowSelfSignedServerCert": { + "description": "Specifies whether to allow self-signed certificates from the server. The default value is false.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "host", + "authenticationType" + ] + }, + "JiraLinkedService": { + "x-ms-discriminator-value": "Jira", + "description": "Jira Service linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Jira Service linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/JiraLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "JiraLinkedServiceTypeProperties": { + "description": "Jira Service linked service properties.", + "properties": { + "host": { + "description": "The IP address or host name of the Jira service. (e.g. jira.example.com)", + "type": "object" + }, + "port": { + "description": "The TCP port that the Jira server uses to listen for client connections. The default value is 443 if connecting through HTTPS, or 8080 if connecting through HTTP.", + "type": "object" + }, + "username": { + "description": "The user name that you use to access Jira Service.", + "type": "object" + }, + "password": { + "description": "The password corresponding to the user name that you provided in the username field.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.", + "type": "object" + }, + "useHostVerification": { + "description": "Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "usePeerVerification": { + "description": "Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "host", + "username" + ] + }, + "MagentoLinkedService": { + "x-ms-discriminator-value": "Magento", + "description": "Magento server linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Magento server linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/MagentoLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "MagentoLinkedServiceTypeProperties": { + "description": "Magento server linked service properties.", + "properties": { + "host": { + "description": "The URL of the Magento instance. (i.e. 192.168.222.110/magento3)", + "type": "object" + }, + "accessToken": { + "description": "The access token from Magento.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.", + "type": "object" + }, + "useHostVerification": { + "description": "Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "usePeerVerification": { + "description": "Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "host" + ] + }, + "MariaDBLinkedService": { + "x-ms-discriminator-value": "MariaDB", + "description": "MariaDB server linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "MariaDB server linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/MariaDBLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "MariaDBLinkedServiceTypeProperties": { + "description": "MariaDB server linked service properties.", + "properties": { + "connectionString": { + "description": "An ODBC connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "pwd": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + } + }, + "AzureMariaDBLinkedService": { + "x-ms-discriminator-value": "AzureMariaDB", + "description": "Azure Database for MariaDB linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Database for MariaDB linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureMariaDBLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureMariaDBLinkedServiceTypeProperties": { + "description": "Azure Database for MariaDB linked service properties.", + "properties": { + "connectionString": { + "description": "An ODBC connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "pwd": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + } + }, + "MarketoLinkedService": { + "x-ms-discriminator-value": "Marketo", + "description": "Marketo server linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Marketo server linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/MarketoLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "MarketoLinkedServiceTypeProperties": { + "description": "Marketo server linked service properties.", + "properties": { + "endpoint": { + "description": "The endpoint of the Marketo server. (i.e. 123-ABC-321.mktorest.com)", + "type": "object" + }, + "clientId": { + "description": "The client Id of your Marketo service.", + "type": "object" + }, + "clientSecret": { + "description": "The client secret of your Marketo service.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.", + "type": "object" + }, + "useHostVerification": { + "description": "Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "usePeerVerification": { + "description": "Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "endpoint", + "clientId" + ] + }, + "PaypalLinkedService": { + "x-ms-discriminator-value": "Paypal", + "description": "Paypal Service linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Paypal Service linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/PaypalLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "PaypalLinkedServiceTypeProperties": { + "description": "Paypal Service linked service properties.", + "properties": { + "host": { + "description": "The URL of the PayPal instance. (i.e. api.sandbox.paypal.com)", + "type": "object" + }, + "clientId": { + "description": "The client ID associated with your PayPal application.", + "type": "object" + }, + "clientSecret": { + "description": "The client secret associated with your PayPal application.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.", + "type": "object" + }, + "useHostVerification": { + "description": "Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "usePeerVerification": { + "description": "Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "host", + "clientId" + ] + }, + "PhoenixLinkedService": { + "x-ms-discriminator-value": "Phoenix", + "description": "Phoenix server linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Phoenix server linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/PhoenixLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "PhoenixLinkedServiceTypeProperties": { + "description": "Phoenix server linked service properties.", + "properties": { + "host": { + "description": "The IP address or host name of the Phoenix server. (i.e. 192.168.222.160)", + "type": "object" + }, + "port": { + "description": "The TCP port that the Phoenix server uses to listen for client connections. The default value is 8765.", + "type": "object" + }, + "httpPath": { + "description": "The partial URL corresponding to the Phoenix server. (i.e. /gateway/sandbox/phoenix/version). The default value is hbasephoenix if using WindowsAzureHDInsightService.", + "type": "object" + }, + "authenticationType": { + "description": "The authentication mechanism used to connect to the Phoenix server.", + "type": "string", + "enum": [ + "Anonymous", + "UsernameAndPassword", + "WindowsAzureHDInsightService" + ], + "x-ms-enum": { + "name": "PhoenixAuthenticationType", + "modelAsString": true + } + }, + "username": { + "description": "The user name used to connect to the Phoenix server.", + "type": "object" + }, + "password": { + "description": "The password corresponding to the user name.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "enableSsl": { + "description": "Specifies whether the connections to the server are encrypted using SSL. The default value is false.", + "type": "object" + }, + "trustedCertPath": { + "description": "The full path of the .pem file containing trusted CA certificates for verifying the server when connecting over SSL. This property can only be set when using SSL on self-hosted IR. The default value is the cacerts.pem file installed with the IR.", + "type": "object" + }, + "useSystemTrustStore": { + "description": "Specifies whether to use a CA certificate from the system trust store or from a specified PEM file. The default value is false.", + "type": "object" + }, + "allowHostNameCNMismatch": { + "description": "Specifies whether to require a CA-issued SSL certificate name to match the host name of the server when connecting over SSL. The default value is false.", + "type": "object" + }, + "allowSelfSignedServerCert": { + "description": "Specifies whether to allow self-signed certificates from the server. The default value is false.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "host", + "authenticationType" + ] + }, + "PrestoLinkedService": { + "x-ms-discriminator-value": "Presto", + "description": "Presto server linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Presto server linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/PrestoLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "PrestoLinkedServiceTypeProperties": { + "description": "Presto server linked service properties.", + "properties": { + "host": { + "description": "The IP address or host name of the Presto server. (i.e. 192.168.222.160)", + "type": "object" + }, + "serverVersion": { + "description": "The version of the Presto server. (i.e. 0.148-t)", + "type": "object" + }, + "catalog": { + "description": "The catalog context for all request against the server.", + "type": "object" + }, + "port": { + "description": "The TCP port that the Presto server uses to listen for client connections. The default value is 8080.", + "type": "object" + }, + "authenticationType": { + "description": "The authentication mechanism used to connect to the Presto server.", + "type": "string", + "enum": [ + "Anonymous", + "LDAP" + ], + "x-ms-enum": { + "name": "PrestoAuthenticationType", + "modelAsString": true + } + }, + "username": { + "description": "The user name used to connect to the Presto server.", + "type": "object" + }, + "password": { + "description": "The password corresponding to the user name.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "enableSsl": { + "description": "Specifies whether the connections to the server are encrypted using SSL. The default value is false.", + "type": "object" + }, + "trustedCertPath": { + "description": "The full path of the .pem file containing trusted CA certificates for verifying the server when connecting over SSL. This property can only be set when using SSL on self-hosted IR. The default value is the cacerts.pem file installed with the IR.", + "type": "object" + }, + "useSystemTrustStore": { + "description": "Specifies whether to use a CA certificate from the system trust store or from a specified PEM file. The default value is false.", + "type": "object" + }, + "allowHostNameCNMismatch": { + "description": "Specifies whether to require a CA-issued SSL certificate name to match the host name of the server when connecting over SSL. The default value is false.", + "type": "object" + }, + "allowSelfSignedServerCert": { + "description": "Specifies whether to allow self-signed certificates from the server. The default value is false.", + "type": "object" + }, + "timeZoneID": { + "description": "The local time zone used by the connection. Valid values for this option are specified in the IANA Time Zone Database. The default value is the system time zone.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "host", + "serverVersion", + "catalog", + "authenticationType" + ] + }, + "QuickBooksLinkedService": { + "x-ms-discriminator-value": "QuickBooks", + "description": "QuickBooks server linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "QuickBooks server linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/QuickBooksLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "QuickBooksLinkedServiceTypeProperties": { + "description": "QuickBooks server linked service properties.", + "properties": { + "endpoint": { + "description": "The endpoint of the QuickBooks server. (i.e. quickbooks.api.intuit.com)", + "type": "object" + }, + "companyId": { + "description": "The company ID of the QuickBooks company to authorize.", + "type": "object" + }, + "consumerKey": { + "description": "The consumer key for OAuth 1.0 authentication.", + "type": "object" + }, + "consumerSecret": { + "description": "The consumer secret for OAuth 1.0 authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "accessToken": { + "description": "The access token for OAuth 1.0 authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "accessTokenSecret": { + "description": "The access token secret for OAuth 1.0 authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "endpoint", + "companyId", + "consumerKey", + "consumerSecret", + "accessToken", + "accessTokenSecret" + ] + }, + "ServiceNowLinkedService": { + "x-ms-discriminator-value": "ServiceNow", + "description": "ServiceNow server linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "ServiceNow server linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ServiceNowLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "ServiceNowLinkedServiceTypeProperties": { + "description": "ServiceNow server linked service properties.", + "properties": { + "endpoint": { + "description": "The endpoint of the ServiceNow server. (i.e. .service-now.com)", + "type": "object" + }, + "authenticationType": { + "description": "The authentication type to use.", + "type": "string", + "enum": [ + "Basic", + "OAuth2" + ], + "x-ms-enum": { + "name": "ServiceNowAuthenticationType", + "modelAsString": true + } + }, + "username": { + "description": "The user name used to connect to the ServiceNow server for Basic and OAuth2 authentication.", + "type": "object" + }, + "password": { + "description": "The password corresponding to the user name for Basic and OAuth2 authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "clientId": { + "description": "The client id for OAuth2 authentication.", + "type": "object" + }, + "clientSecret": { + "description": "The client secret for OAuth2 authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.", + "type": "object" + }, + "useHostVerification": { + "description": "Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "usePeerVerification": { + "description": "Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "endpoint", + "authenticationType" + ] + }, + "ShopifyLinkedService": { + "x-ms-discriminator-value": "Shopify", + "description": "Shopify Service linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Shopify Service linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ShopifyLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "ShopifyLinkedServiceTypeProperties": { + "description": "Shopify Service linked service properties.", + "properties": { + "host": { + "description": "The endpoint of the Shopify server. (i.e. mystore.myshopify.com)", + "type": "object" + }, + "accessToken": { + "description": "The API access token that can be used to access Shopify’s data. The token won't expire if it is offline mode.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.", + "type": "object" + }, + "useHostVerification": { + "description": "Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "usePeerVerification": { + "description": "Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "host" + ] + }, + "SparkLinkedService": { + "x-ms-discriminator-value": "Spark", + "description": "Spark Server linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Spark Server linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SparkLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SparkLinkedServiceTypeProperties": { + "description": "Spark Server linked service properties.", + "properties": { + "host": { + "description": "IP address or host name of the Spark server", + "type": "object" + }, + "port": { + "description": "The TCP port that the Spark server uses to listen for client connections.", + "type": "object" + }, + "serverType": { + "description": "The type of Spark server.", + "type": "string", + "enum": [ + "SharkServer", + "SharkServer2", + "SparkThriftServer" + ], + "x-ms-enum": { + "name": "SparkServerType", + "modelAsString": true + } + }, + "thriftTransportProtocol": { + "description": "The transport protocol to use in the Thrift layer.", + "type": "string", + "enum": [ + "Binary", + "SASL", + "HTTP " + ], + "x-ms-enum": { + "name": "SparkThriftTransportProtocol", + "modelAsString": true + } + }, + "authenticationType": { + "description": "The authentication method used to access the Spark server.", + "type": "string", + "enum": [ + "Anonymous", + "Username", + "UsernameAndPassword", + "WindowsAzureHDInsightService" + ], + "x-ms-enum": { + "name": "SparkAuthenticationType", + "modelAsString": true + } + }, + "username": { + "description": "The user name that you use to access Spark Server.", + "type": "object" + }, + "password": { + "description": "The password corresponding to the user name that you provided in the Username field", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "httpPath": { + "description": "The partial URL corresponding to the Spark server.", + "type": "object" + }, + "enableSsl": { + "description": "Specifies whether the connections to the server are encrypted using SSL. The default value is false.", + "type": "object" + }, + "trustedCertPath": { + "description": "The full path of the .pem file containing trusted CA certificates for verifying the server when connecting over SSL. This property can only be set when using SSL on self-hosted IR. The default value is the cacerts.pem file installed with the IR.", + "type": "object" + }, + "useSystemTrustStore": { + "description": "Specifies whether to use a CA certificate from the system trust store or from a specified PEM file. The default value is false.", + "type": "object" + }, + "allowHostNameCNMismatch": { + "description": "Specifies whether to require a CA-issued SSL certificate name to match the host name of the server when connecting over SSL. The default value is false.", + "type": "object" + }, + "allowSelfSignedServerCert": { + "description": "Specifies whether to allow self-signed certificates from the server. The default value is false.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "host", + "port", + "authenticationType" + ] + }, + "SquareLinkedService": { + "x-ms-discriminator-value": "Square", + "description": "Square Service linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Square Service linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SquareLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SquareLinkedServiceTypeProperties": { + "description": "Square Service linked service properties.", + "properties": { + "host": { + "description": "The URL of the Square instance. (i.e. mystore.mysquare.com)", + "type": "object" + }, + "clientId": { + "description": "The client ID associated with your Square application.", + "type": "object" + }, + "clientSecret": { + "description": "The client secret associated with your Square application.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "redirectUri": { + "description": "The redirect URL assigned in the Square application dashboard. (i.e. http://localhost:2500)", + "type": "object" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.", + "type": "object" + }, + "useHostVerification": { + "description": "Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "usePeerVerification": { + "description": "Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "host", + "clientId", + "redirectUri" + ] + }, + "XeroLinkedService": { + "x-ms-discriminator-value": "Xero", + "description": "Xero Service linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Xero Service linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/XeroLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "XeroLinkedServiceTypeProperties": { + "description": "Xero Service linked service properties.", + "properties": { + "host": { + "description": "The endpoint of the Xero server. (i.e. api.xero.com)", + "type": "object" + }, + "consumerKey": { + "description": "The consumer key associated with the Xero application.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "privateKey": { + "description": "The private key from the .pem file that was generated for your Xero private application. You must include all the text from the .pem file, including the Unix line endings(\n).", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.", + "type": "object" + }, + "useHostVerification": { + "description": "Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "usePeerVerification": { + "description": "Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "host" + ] + }, + "ZohoLinkedService": { + "x-ms-discriminator-value": "Zoho", + "description": "Zoho server linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Zoho server linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ZohoLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "ZohoLinkedServiceTypeProperties": { + "description": "Zoho server linked service properties.", + "properties": { + "endpoint": { + "description": "The endpoint of the Zoho server. (i.e. crm.zoho.com/crm/private)", + "type": "object" + }, + "accessToken": { + "description": "The access token for Zoho authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true.", + "type": "object" + }, + "useHostVerification": { + "description": "Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "usePeerVerification": { + "description": "Specifies whether to verify the identity of the server when connecting over SSL. The default value is true.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "endpoint" + ] + }, + "VerticaLinkedService": { + "x-ms-discriminator-value": "Vertica", + "description": "Vertica linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Vertica linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/VerticaLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "VerticaLinkedServiceTypeProperties": { + "description": "Vertica linked service properties.", + "properties": { + "connectionString": { + "description": "An ODBC connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "pwd": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + } + }, + "NetezzaLinkedService": { + "x-ms-discriminator-value": "Netezza", + "description": "Netezza linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Netezza linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/NetezzaLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "NetezzaLinkedServiceTypeProperties": { + "description": "Netezza linked service properties.", + "properties": { + "connectionString": { + "description": "An ODBC connection string. Type: string, SecureString or AzureKeyVaultSecretReference.", + "type": "object" + }, + "pwd": { + "$ref": "../datafactory.json#/definitions/AzureKeyVaultSecretReference", + "description": "The Azure key vault secret reference of password in connection string." + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + } + }, + "SalesforceMarketingCloudLinkedService": { + "x-ms-discriminator-value": "SalesforceMarketingCloud", + "description": "Salesforce Marketing Cloud linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Salesforce Marketing Cloud linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SalesforceMarketingCloudLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SalesforceMarketingCloudLinkedServiceTypeProperties": { + "description": "Salesforce Marketing Cloud linked service properties.", + "properties": { + "clientId": { + "description": "The client ID associated with the Salesforce Marketing Cloud application. Type: string (or Expression with resultType string).", + "type": "object" + }, + "clientSecret": { + "description": "The client secret associated with the Salesforce Marketing Cloud application. Type: string (or Expression with resultType string).", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true. Type: boolean (or Expression with resultType boolean).", + "type": "object" + }, + "useHostVerification": { + "description": "Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true. Type: boolean (or Expression with resultType boolean).", + "type": "object" + }, + "usePeerVerification": { + "description": "Specifies whether to verify the identity of the server when connecting over SSL. The default value is true. Type: boolean (or Expression with resultType boolean).", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "clientId" + ] + }, + "HDInsightOnDemandLinkedService": { + "x-ms-discriminator-value": "HDInsightOnDemand", + "description": "HDInsight ondemand linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "HDInsight ondemand linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/HDInsightOnDemandLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "HDInsightOnDemandLinkedServiceTypeProperties": { + "description": "HDInsight ondemand linked service properties.", + "properties": { + "clusterSize": { + "type": "object", + "description": "Number of worker/data nodes in the cluster. Suggestion value: 4. Type: string (or Expression with resultType string)." + }, + "timeToLive": { + "type": "object", + "description": "The allowed idle time for the on-demand HDInsight cluster. Specifies how long the on-demand HDInsight cluster stays alive after completion of an activity run if there are no other active jobs in the cluster. The minimum value is 5 mins. Type: string (or Expression with resultType string)." + }, + "version": { + "type": "object", + "description": "Version of the HDInsight cluster.  Type: string (or Expression with resultType string)." + }, + "linkedServiceName": { + "description": "Azure Storage linked service to be used by the on-demand cluster for storing and processing data.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "hostSubscriptionId": { + "type": "object", + "description": "The customer’s subscription to host the cluster. Type: string (or Expression with resultType string)." + }, + "servicePrincipalId": { + "type": "object", + "description": "The service principal id for the hostSubscriptionId. Type: string (or Expression with resultType string)." + }, + "servicePrincipalKey": { + "description": "The key for the service principal id.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "tenant": { + "type": "object", + "description": "The Tenant id/name to which the service principal belongs. Type: string (or Expression with resultType string)." + }, + "clusterResourceGroup": { + "type": "object", + "description": "The resource group where the cluster belongs. Type: string (or Expression with resultType string)." + }, + "clusterNamePrefix": { + "type": "object", + "description": "The prefix of cluster name, postfix will be distinct with timestamp. Type: string (or Expression with resultType string)." + }, + "clusterUserName": { + "type": "object", + "description": "The username to access the cluster. Type: string (or Expression with resultType string)." + }, + "clusterPassword": { + "description": "The password to access the cluster.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "clusterSshUserName": { + "type": "object", + "description": "The username to SSH remotely connect to cluster’s node (for Linux). Type: string (or Expression with resultType string)." + }, + "clusterSshPassword": { + "description": "The password to SSH remotely connect cluster’s node (for Linux).", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "additionalLinkedServiceNames": { + "description": "Specifies additional storage accounts for the HDInsight linked service so that the Data Factory service can register them on your behalf.", + "type": "array", + "items": { + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + } + }, + "hcatalogLinkedServiceName": { + "description": "The name of Azure SQL linked service that point to the HCatalog database. The on-demand HDInsight cluster is created by using the Azure SQL database as the metastore.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "clusterType": { + "type": "object", + "description": "The cluster type. Type: string (or Expression with resultType string)." + }, + "sparkVersion": { + "type": "object", + "description": "The version of spark if the cluster type is 'spark'. Type: string (or Expression with resultType string)." + }, + "coreConfiguration": { + "description": "Specifies the core configuration parameters (as in core-site.xml) for the HDInsight cluster to be created.", + "type": "object" + }, + "hBaseConfiguration": { + "description": "Specifies the HBase configuration parameters (hbase-site.xml) for the HDInsight cluster.", + "type": "object" + }, + "hdfsConfiguration": { + "description": "Specifies the HDFS configuration parameters (hdfs-site.xml) for the HDInsight cluster.", + "type": "object" + }, + "hiveConfiguration": { + "description": "Specifies the hive configuration parameters (hive-site.xml) for the HDInsight cluster.", + "type": "object" + }, + "mapReduceConfiguration": { + "description": "Specifies the MapReduce configuration parameters (mapred-site.xml) for the HDInsight cluster.", + "type": "object" + }, + "oozieConfiguration": { + "description": "Specifies the Oozie configuration parameters (oozie-site.xml) for the HDInsight cluster.", + "type": "object" + }, + "stormConfiguration": { + "description": "Specifies the Storm configuration parameters (storm-site.xml) for the HDInsight cluster.", + "type": "object" + }, + "yarnConfiguration": { + "description": "Specifies the Yarn configuration parameters (yarn-site.xml) for the HDInsight cluster.", + "type": "object" + }, + "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)." + }, + "headNodeSize": { + "type": "object", + "description": "Specifies the size of the head node for the HDInsight cluster." + }, + "dataNodeSize": { + "type": "object", + "description": "Specifies the size of the data node for the HDInsight cluster." + }, + "zookeeperNodeSize": { + "type": "object", + "description": "Specifies the size of the Zoo Keeper node for the HDInsight cluster." + }, + "scriptActions": { + "description": "Custom script actions to run on HDI ondemand cluster once it's up. Please refer to https://docs.microsoft.com/en-us/azure/hdinsight/hdinsight-hadoop-customize-cluster-linux?toc=%2Fen-us%2Fazure%2Fhdinsight%2Fr-server%2FTOC.json&bc=%2Fen-us%2Fazure%2Fbread%2Ftoc.json#understanding-script-actions.", + "type": "array", + "items": { + "$ref": "#/definitions/ScriptAction" + } + }, + "virtualNetworkId": { + "type": "object", + "description": "The ARM resource ID for the vNet to which the cluster should be joined after creation. Type: string (or Expression with resultType string)." + }, + "subnetName": { + "type": "object", + "description": "The ARM resource ID for the subnet in the vNet. If virtualNetworkId was specified, then this property is required. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "clusterSize", + "timeToLive", + "version", + "linkedServiceName", + "hostSubscriptionId", + "tenant", + "clusterResourceGroup" + ] + }, + "ScriptAction": { + "description": "Custom script action to run on HDI ondemand cluster once it's up.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The user provided name of the script action." + }, + "uri": { + "type": "string", + "description": "The URI for the script action." + }, + "roles": { + "x-ms-enum": { + "name": "HdiNodeTypes", + "modelAsString": true + }, + "enum": [ + "Headnode", + "Workernode", + "Zookeeper" + ], + "type": "string", + "description": "The node types on which the script action should be executed." + }, + "parameters": { + "type": "string", + "description": "The parameters for the script action." + } + }, + "required": [ + "name", + "uri", + "roles" + ] + }, + "AzureDataLakeAnalyticsLinkedService": { + "x-ms-discriminator-value": "AzureDataLakeAnalytics", + "description": "Azure Data Lake Analytics linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Data Lake Analytics linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureDataLakeAnalyticsLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureDataLakeAnalyticsLinkedServiceTypeProperties": { + "description": "Azure Data Lake Analytics linked service properties.", + "properties": { + "accountName": { + "type": "object", + "description": "The Azure Data Lake Analytics account name. Type: string (or Expression with resultType string)." + }, + "servicePrincipalId": { + "type": "object", + "description": "The ID of the application used to authenticate against the Azure Data Lake Analytics account. Type: string (or Expression with resultType string)." + }, + "servicePrincipalKey": { + "description": "The Key of the application used to authenticate against the Azure Data Lake Analytics account.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "tenant": { + "type": "object", + "description": "The name or ID of the tenant to which the service principal belongs. Type: string (or Expression with resultType string)." + }, + "subscriptionId": { + "type": "object", + "description": "Data Lake Analytics account subscription ID (if different from Data Factory account). Type: string (or Expression with resultType string)." + }, + "resourceGroupName": { + "type": "object", + "description": "Data Lake Analytics account resource group name (if different from Data Factory account). Type: string (or Expression with resultType string)." + }, + "dataLakeAnalyticsUri": { + "type": "object", + "description": "Azure Data Lake Analytics URI 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": [ + "accountName", + "tenant" + ] + }, + "AzureDatabricksLinkedService": { + "x-ms-discriminator-value": "AzureDatabricks", + "description": "Azure Databricks linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Databricks linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureDatabricksLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureDatabricksLinkedServiceTypeProperties": { + "description": "Azure Databricks 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 (or Expression with resultType string).", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "existingClusterId": { + "type": "object", + "description": "The id of an existing interactive cluster that will be used for all runs of this activity. Type: string (or Expression with resultType string)." + }, + "instancePoolId": { + "type": "object", + "description": "The id of an existing instance pool that will be used for all runs of this activity. Type: string (or Expression with resultType string)." + }, + "newClusterVersion": { + "type": "object", + "description": "If not using an existing interactive cluster, this specifies the Spark version of a new job cluster or instance pool nodes created for each run of this activity. Required if instancePoolId is specified. Type: string (or Expression with resultType string)." + }, + "newClusterNumOfWorker": { + "type": "object", + "description": "If not using an existing interactive cluster, this specifies the number of worker nodes to use for the new job cluster or instance pool. For new job clusters, this a string-formatted Int32, like '1' means numOfWorker is 1 or '1:10' means auto-scale from 1 (min) to 10 (max). For instance pools, this is a string-formatted Int32, and can only specify a fixed number of worker nodes, such as '2'. Required if newClusterVersion is specified. Type: string (or Expression with resultType string)." + }, + "newClusterNodeType": { + "type": "object", + "description": "The node type of the new job cluster. This property is required if newClusterVersion is specified and instancePoolId is not specified. If instancePoolId is specified, this property is ignored. Type: string (or Expression with resultType string)." + }, + "newClusterSparkConf": { + "description": "A set of optional, user-specified Spark configuration key-value pairs.", + "type": "object", + "additionalProperties": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "newClusterSparkEnvVars": { + "description": "A set of optional, user-specified Spark environment variables key-value pairs.", + "type": "object", + "additionalProperties": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "newClusterCustomTags": { + "description": "Additional tags for cluster resources. This property is ignored in instance pool configurations.", + "type": "object", + "additionalProperties": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "newClusterDriverNodeType": { + "type": "object", + "description": "The driver node type for the new job cluster. This property is ignored in instance pool configurations. Type: string (or Expression with resultType string)." + }, + "newClusterInitScripts": { + "type": "object", + "description": "User-defined initialization scripts for the new cluster. Type: array of strings (or Expression with resultType array of strings)." + }, + "newClusterEnableElasticDisk": { + "type": "object", + "description": "Enable the elastic disk on the new cluster. This property is now ignored, and takes the default elastic disk behavior in Databricks (elastic disks are always enabled). Type: boolean (or Expression with resultType boolean)." + }, + "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", + "accessToken" + ] + }, + "ResponsysLinkedService": { + "x-ms-discriminator-value": "Responsys", + "description": "Responsys linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Responsys linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ResponsysLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "ResponsysLinkedServiceTypeProperties": { + "description": "Responsys linked service properties.", + "properties": { + "endpoint": { + "description": "The endpoint of the Responsys server.", + "type": "object" + }, + "clientId": { + "description": "The client ID associated with the Responsys application. Type: string (or Expression with resultType string).", + "type": "object" + }, + "clientSecret": { + "description": "The client secret associated with the Responsys application. Type: string (or Expression with resultType string).", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true. Type: boolean (or Expression with resultType boolean).", + "type": "object" + }, + "useHostVerification": { + "description": "Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true. Type: boolean (or Expression with resultType boolean).", + "type": "object" + }, + "usePeerVerification": { + "description": "Specifies whether to verify the identity of the server when connecting over SSL. The default value is true. Type: boolean (or Expression with resultType boolean).", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "endpoint", + "clientId" + ] + }, + "DynamicsAXLinkedService": { + "x-ms-discriminator-value": "DynamicsAX", + "description": "Dynamics AX linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Dynamics AX linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DynamicsAXLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "DynamicsAXLinkedServiceTypeProperties": { + "description": "Dynamics AX linked service properties.", + "properties": { + "url": { + "description": "The Dynamics AX (or Dynamics 365 Finance and Operations) instance OData endpoint.", + "type": "object" + }, + "servicePrincipalId": { + "description": "Specify the application's client ID. Type: string (or Expression with resultType string).", + "type": "object" + }, + "servicePrincipalKey": { + "description": "Specify the application's key. Mark this field as a SecureString to store it securely in Data Factory, or reference a secret stored in Azure Key Vault. Type: string (or Expression with resultType string).", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "tenant": { + "description": "Specify the tenant information (domain name or tenant ID) under which your application resides. Retrieve it by hovering the mouse in the top-right corner of the Azure portal. Type: string (or Expression with resultType string).", + "type": "object" + }, + "aadResourceId": { + "description": "Specify the resource you are requesting authorization. Type: string (or Expression with resultType string).", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "url", + "servicePrincipalId", + "servicePrincipalKey", + "tenant", + "aadResourceId" + ] + }, + "OracleServiceCloudLinkedService": { + "x-ms-discriminator-value": "OracleServiceCloud", + "description": "Oracle Service Cloud linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Oracle Service Cloud linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/OracleServiceCloudLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "OracleServiceCloudLinkedServiceTypeProperties": { + "description": "Oracle Service Cloud linked service properties.", + "properties": { + "host": { + "description": "The URL of the Oracle Service Cloud instance.", + "type": "object" + }, + "username": { + "description": "The user name that you use to access Oracle Service Cloud server.", + "type": "object" + }, + "password": { + "description": "The password corresponding to the user name that you provided in the username key.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "useEncryptedEndpoints": { + "description": "Specifies whether the data source endpoints are encrypted using HTTPS. The default value is true. Type: boolean (or Expression with resultType boolean).", + "type": "object" + }, + "useHostVerification": { + "description": "Specifies whether to require the host name in the server's certificate to match the host name of the server when connecting over SSL. The default value is true. Type: boolean (or Expression with resultType boolean).", + "type": "object" + }, + "usePeerVerification": { + "description": "Specifies whether to verify the identity of the server when connecting over SSL. The default value is true. Type: boolean (or Expression with resultType boolean).", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "host", + "username", + "password" + ] + }, + "GoogleAdWordsLinkedService": { + "x-ms-discriminator-value": "GoogleAdWords", + "description": "Google AdWords service linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Google AdWords service linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GoogleAdWordsLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "GoogleAdWordsLinkedServiceTypeProperties": { + "description": "Google AdWords service linked service properties.", + "properties": { + "clientCustomerID": { + "description": "The Client customer ID of the AdWords account that you want to fetch report data for.", + "type": "object" + }, + "developerToken": { + "description": "The developer token associated with the manager account that you use to grant access to the AdWords API.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "authenticationType": { + "description": "The OAuth 2.0 authentication mechanism used for authentication. ServiceAuthentication can only be used on self-hosted IR.", + "type": "string", + "enum": [ + "ServiceAuthentication", + "UserAuthentication" + ], + "x-ms-enum": { + "name": "GoogleAdWordsAuthenticationType", + "modelAsString": true + } + }, + "refreshToken": { + "description": "The refresh token obtained from Google for authorizing access to AdWords for UserAuthentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "clientId": { + "description": "The client id of the google application used to acquire the refresh token. Type: string (or Expression with resultType string).", + "type": "object" + }, + "clientSecret": { + "description": "The client secret of the google application used to acquire the refresh token.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "email": { + "description": "The service account email ID that is used for ServiceAuthentication and can only be used on self-hosted IR.", + "type": "object" + }, + "keyFilePath": { + "description": "The full path to the .p12 key file that is used to authenticate the service account email address and can only be used on self-hosted IR.", + "type": "object" + }, + "trustedCertPath": { + "description": "The full path of the .pem file containing trusted CA certificates for verifying the server when connecting over SSL. This property can only be set when using SSL on self-hosted IR. The default value is the cacerts.pem file installed with the IR.", + "type": "object" + }, + "useSystemTrustStore": { + "description": "Specifies whether to use a CA certificate from the system trust store or from a specified PEM file. The default value is false.", + "type": "object" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "clientCustomerID", + "developerToken", + "authenticationType" + ] + }, + "SapTableLinkedService": { + "x-ms-discriminator-value": "SapTable", + "description": "SAP Table Linked Service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Properties specific to this linked service type.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SapTableLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SapTableLinkedServiceTypeProperties": { + "description": "Properties specific to this linked service type.", + "properties": { + "server": { + "type": "object", + "description": "Host name of the SAP instance where the table is located. Type: string (or Expression with resultType string)." + }, + "systemNumber": { + "type": "object", + "description": "System number of the SAP system where the table is located. (Usually a two-digit decimal number represented as a string.) Type: string (or Expression with resultType string)." + }, + "clientId": { + "type": "object", + "description": "Client ID of the client on the SAP system where the table is located. (Usually a three-digit decimal number represented as a string) Type: string (or Expression with resultType string)." + }, + "language": { + "type": "object", + "description": "Language of the SAP system where the table is located. The default value is EN. Type: string (or Expression with resultType string)." + }, + "systemId": { + "type": "object", + "description": "SystemID of the SAP system where the table is located. Type: string (or Expression with resultType string)." + }, + "userName": { + "type": "object", + "description": "Username to access the SAP server where the table is located. Type: string (or Expression with resultType string)." + }, + "password": { + "description": "Password to access the SAP server where the table is located.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "messageServer": { + "type": "object", + "description": "The hostname of the SAP Message Server. Type: string (or Expression with resultType string)." + }, + "messageServerService": { + "type": "object", + "description": "The service name or port number of the Message Server. Type: string (or Expression with resultType string)." + }, + "sncMode": { + "type": "object", + "description": "SNC activation indicator to access the SAP server where the table is located. Must be either 0 (off) or 1 (on). Type: string (or Expression with resultType string)." + }, + "sncMyName": { + "type": "object", + "description": "Initiator's SNC name to access the SAP server where the table is located. Type: string (or Expression with resultType string)." + }, + "sncPartnerName": { + "type": "object", + "description": "Communication partner's SNC name to access the SAP server where the table is located. Type: string (or Expression with resultType string)." + }, + "sncLibraryPath": { + "type": "object", + "description": "External security product's library to access the SAP server where the table is located. Type: string (or Expression with resultType string)." + }, + "sncQop": { + "type": "object", + "description": "SNC Quality of Protection. Allowed value include: 1, 2, 3, 8, 9. Type: string (or Expression with resultType string)." + }, + "logonGroup": { + "type": "object", + "description": "The Logon Group for the SAP System. 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)." + } + } + }, + "AzureDataExplorerLinkedService": { + "x-ms-discriminator-value": "AzureDataExplorer", + "description": "Azure Data Explorer (Kusto) linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Data Explorer (Kusto) linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureDataExplorerLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureDataExplorerLinkedServiceTypeProperties": { + "description": "Azure Data Explorer (Kusto) linked service properties.", + "properties": { + "endpoint": { + "description": "The endpoint of Azure Data Explorer (the engine's endpoint). URL will be in the format https://..kusto.windows.net. Type: string (or Expression with resultType string)", + "type": "object" + }, + "servicePrincipalId": { + "type": "object", + "description": "The ID of the service principal used to authenticate against Azure Data Explorer. Type: string (or Expression with resultType string)." + }, + "servicePrincipalKey": { + "$ref": "../datafactory.json#/definitions/SecretBase", + "description": "The key of the service principal used to authenticate against Kusto." + }, + "database": { + "type": "object", + "description": "Database name for connection. Type: string (or Expression with resultType string)." + }, + "tenant": { + "type": "object", + "description": "The name or ID of the tenant to which the service principal belongs. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "endpoint", + "servicePrincipalId", + "servicePrincipalKey", + "database", + "tenant" + ] + }, + "AzureFunctionLinkedService": { + "x-ms-discriminator-value": "AzureFunction", + "description": "Azure Function linked service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedService" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Function linked service properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFunctionLinkedServiceTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureFunctionLinkedServiceTypeProperties": { + "description": "Azure Function linked service properties.", + "properties": { + "functionAppUrl": { + "description": "The endpoint of the Azure Function App. URL will be in the format https://.azurewebsites.net.", + "type": "object" + }, + "functionKey": { + "description": "Function or Host key for Azure Function App.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "encryptedCredential": { + "description": "The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "functionAppUrl" + ] + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/NoteBook.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/NoteBook.json new file mode 100644 index 000000000000..1958284c390e --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/NoteBook.json @@ -0,0 +1,251 @@ +{ + "swagger": "2.0", + "info": { + "title": "SynapseClient", + "version": "2019-11-01-preview" + }, + "paths": {}, + "definitions": { + "NoteBook": { + "description": "Notebook.", + "type": "object", + "properties": { + "description": { + "description": "The description of the notebook.", + "type": "string" + }, + "bigDataPool": { + "description": "Big data pool reference.", + "$ref": "#/definitions/BigDataPoolReference" + }, + "sessionProperties": { + "description": "Session properties.", + "$ref": "#/definitions/NotebookSessionProperties" + }, + "metadata": { + "description": "Notebook root-level metadata.", + "$ref": "#/definitions/NotebookMetadata" + }, + "nbformat": { + "description": "Notebook format (major number). Incremented between backwards incompatible changes to the notebook format.", + "type": "integer" + }, + "nbformat_minor": { + "description": "Notebook format (minor number). Incremented for backward compatible changes to the notebook format.", + "type": "integer" + }, + "cells": { + "description": "Array of cells of the current notebook.", + "type": "array", + "items": { + "$ref": "#/definitions/NotebookCell" + } + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "metadata", + "nbformat_minor", + "nbformat", + "cells" + ] + }, + "BigDataPoolReference": { + "description": "Big data pool reference.", + "properties": { + "type": { + "description": "Big data pool reference type.", + "type": "string", + "enum": [ + "BigDataPoolReference" + ], + "x-ms-enum": { + "name": "BigDataPoolReferenceType", + "modelAsString": true + } + }, + "referenceName": { + "description": "Reference big data pool name.", + "type": "string" + } + }, + "required": [ + "type", + "referenceName" + ] + }, + "NotebookMetadata": { + "description": "Notebook root-level metadata.", + "type": "object", + "properties": { + "kernelspec": { + "description": "Kernel information.", + "$ref": "#/definitions/NotebookKernelSpec" + }, + "language_info": { + "description": "Language info.", + "$ref": "#/definitions/NotebookLanguageInfo" + } + }, + "additionalProperties": { + "type": "object" + } + }, + "NotebookKernelSpec": { + "description": "Kernel information.", + "type": "object", + "properties": { + "name": { + "description": "Name of the kernel specification.", + "type": "string" + }, + "display_name": { + "description": "Name to display in UI.", + "type": "string" + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "name", + "display_name" + ] + }, + "NotebookLanguageInfo": { + "description": "Language info.", + "type": "object", + "properties": { + "name": { + "description": "The programming language which this kernel runs.", + "type": "string" + }, + "codemirror_mode": { + "description": "The codemirror mode to use for code in this language.", + "type": "string" + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "name" + ] + }, + "NotebookCell": { + "description": "Notebook cell.", + "type": "object", + "properties": { + "cell_type": { + "description": "String identifying the type of cell.", + "type": "string" + }, + "metadata": { + "description": "Cell-level metadata.", + "type": "object" + }, + "source": { + "description": "Contents of the cell, represented as an array of lines.", + "type": "array", + "items": { + "type": "string" + } + }, + "attachments": { + "description": "Attachments associated with the cell.", + "type": "object" + }, + "outputs": { + "description": "Cell-level output items.", + "type": "array", + "items": { + "$ref": "#/definitions/NotebookCellOutputItem" + } + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "cell_type", + "metadata", + "source" + ] + }, + "NotebookSessionProperties": { + "description": "Session properties.", + "properties": { + "driverMemory": { + "description": "Amount of memory to use for the driver process.", + "type": "string" + }, + "driverCores": { + "description": "Number of cores to use for the driver.", + "type": "integer" + }, + "executorMemory": { + "description": "Amount of memory to use per executor process.", + "type": "string" + }, + "executorCores": { + "description": "Number of cores to use for each executor.", + "type": "integer" + }, + "numExecutors": { + "description": "Number of executors to launch for this session.", + "type": "integer" + } + }, + "required": [ + "driverMemory", + "driverCores", + "executorMemory", + "executorCores", + "numExecutors" + ] + }, + "NotebookCellOutputItem": { + "description": "An item of the notebook cell execution output.", + "properties": { + "name": { + "description": "For output_type=stream, determines the name of stream (stdout / stderr).", + "type": "string" + }, + "execution_count": { + "description": "Execution sequence number.", + "type": "integer" + }, + "output_type": { + "description": "Execution, display, or stream outputs.", + "type": "string", + "enum": [ + "execute_result", + "display_data", + "stream", + "error" + ], + "x-ms-enum": { + "name": "CellOutputType", + "modelAsString": true + } + }, + "text": { + "description": "For output_type=stream, the stream's text output, represented as a string or an array of strings." + }, + "data": { + "description": "Output data. Use MIME type as key, and content as value.", + "type": "object" + }, + "metadata": { + "description": "Metadata for the output item.", + "type": "object" + } + }, + "required": [ + "output_type" + ] + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/Pipeline.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/Pipeline.json new file mode 100644 index 000000000000..a2f4d1c618bb --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/Pipeline.json @@ -0,0 +1,5836 @@ +{ + "swagger": "2.0", + "info": { + "title": "SynapseClient", + "version": "2019-11-01-preview" + }, + "paths": {}, + "definitions": { + "Pipeline": { + "description": "A workspace pipeline.", + "type": "object", + "properties": { + "description": { + "description": "The description of the pipeline.", + "type": "string" + }, + "activities": { + "type": "array", + "description": "List of activities in pipeline.", + "items": { + "$ref": "#/definitions/Activity" + } + }, + "parameters": { + "$ref": "../datafactory.json#/definitions/ParameterDefinitionSpecification", + "description": "List of parameters for pipeline." + }, + "variables": { + "$ref": "../datafactory.json#/definitions/VariableDefinitionSpecification", + "description": "List of variables for pipeline." + }, + "concurrency": { + "type": "integer", + "minimum": 1, + "description": "The max number of concurrent runs for the pipeline." + }, + "annotations": { + "description": "List of tags that can be used for describing the Pipeline.", + "type": "array", + "items": { + "type": "object" + } + }, + "runDimensions": { + "description": "Dimensions emitted by Pipeline.", + "type": "object", + "additionalProperties": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "folder": { + "description": "The folder that this Pipeline is in. If not specified, Pipeline will appear at the root level.", + "type": "object", + "properties": { + "name": { + "description": "The name of the folder that this Pipeline is in.", + "type": "string" + } + } + } + } + }, + "Activity": { + "discriminator": "type", + "description": "A pipeline activity.", + "type": "object", + "properties": { + "name": { + "description": "Activity name.", + "type": "string" + }, + "type": { + "type": "string", + "description": "Type of activity." + }, + "description": { + "description": "Activity description.", + "type": "string" + }, + "dependsOn": { + "type": "array", + "description": "Activity depends on condition.", + "items": { + "$ref": "#/definitions/ActivityDependency" + } + }, + "userProperties": { + "type": "array", + "description": "Activity user properties.", + "items": { + "$ref": "#/definitions/UserProperty" + } + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "name", + "type" + ] + }, + "UserProperty": { + "description": "User property.", + "type": "object", + "properties": { + "name": { + "description": "User property name.", + "type": "string" + }, + "value": { + "description": "User property value. Type: string (or Expression with resultType string).", + "type": "object" + } + }, + "required": [ + "name", + "value" + ] + }, + "ActivityDependency": { + "description": "Activity dependency information.", + "type": "object", + "properties": { + "activity": { + "description": "Activity name.", + "type": "string" + }, + "dependencyConditions": { + "type": "array", + "description": "Match-Condition for the dependency.", + "items": { + "type": "string", + "enum": [ + "Succeeded", + "Failed", + "Skipped", + "Completed" + ], + "x-ms-enum": { + "name": "DependencyCondition", + "modelAsString": true + } + } + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "activity", + "dependencyConditions" + ] + }, + "ControlActivity": { + "x-ms-discriminator-value": "Container", + "description": "Base class for all control activities like IfCondition, ForEach , Until.", + "allOf": [ + { + "$ref": "#/definitions/Activity" + } + ], + "properties": {} + }, + "ExecutionActivity": { + "x-ms-discriminator-value": "Execution", + "description": "Base class for all execution activities.", + "allOf": [ + { + "$ref": "#/definitions/Activity" + } + ], + "properties": { + "linkedServiceName": { + "description": "Linked service reference.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "policy": { + "$ref": "#/definitions/ActivityPolicy", + "description": "Activity policy." + } + } + }, + "ActivityPolicy": { + "description": "Execution policy for an activity.", + "type": "object", + "properties": { + "timeout": { + "type": "object", + "description": "Specifies the timeout for the activity to run. The default timeout is 7 days. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + }, + "retry": { + "type": "object", + "description": "Maximum ordinary retry attempts. Default is 0. Type: integer (or Expression with resultType integer), minimum: 0." + }, + "retryIntervalInSeconds": { + "type": "integer", + "description": "Interval between each retry attempt (in seconds). The default is 30 sec.", + "minimum": 30, + "maximum": 86400 + }, + "secureInput": { + "type": "boolean", + "description": "When set to true, Input from activity is considered as secure and will not be logged to monitoring." + }, + "secureOutput": { + "type": "boolean", + "description": "When set to true, Output from activity is considered as secure and will not be logged to monitoring." + } + }, + "additionalProperties": { + "type": "object" + } + }, + "StoreReadSettings": { + "description": "Connector read setting.", + "discriminator": "type", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The read setting type." + }, + "maxConcurrentConnections": { + "type": "object", + "description": "The maximum concurrent connection count for the source data store. Type: integer (or Expression with resultType integer)." + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "AzureBlobStorageReadSettings": { + "description": "Azure blob read settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StoreReadSettings" + } + ], + "properties": { + "recursive": { + "type": "object", + "description": "If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean)." + }, + "wildcardFolderPath": { + "type": "object", + "description": "Azure blob wildcardFolderPath. Type: string (or Expression with resultType string)." + }, + "wildcardFileName": { + "type": "object", + "description": "Azure blob wildcardFileName. Type: string (or Expression with resultType string)." + }, + "prefix": { + "type": "object", + "description": "The prefix filter for the Azure Blob name. Type: string (or Expression with resultType string)." + }, + "enablePartitionDiscovery": { + "type": "boolean", + "description": "Indicates whether to enable partition discovery." + }, + "modifiedDatetimeStart": { + "type": "object", + "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." + }, + "modifiedDatetimeEnd": { + "type": "object", + "description": "The end of file's modified datetime. Type: string (or Expression with resultType string)." + } + } + }, + "AzureBlobFSReadSettings": { + "description": "Azure blobFS read settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StoreReadSettings" + } + ], + "properties": { + "recursive": { + "type": "object", + "description": "If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean)." + }, + "wildcardFolderPath": { + "type": "object", + "description": "Azure blobFS wildcardFolderPath. Type: string (or Expression with resultType string)." + }, + "wildcardFileName": { + "type": "object", + "description": "Azure blobFS wildcardFileName. Type: string (or Expression with resultType string)." + }, + "enablePartitionDiscovery": { + "type": "boolean", + "description": "Indicates whether to enable partition discovery." + }, + "modifiedDatetimeStart": { + "type": "object", + "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." + }, + "modifiedDatetimeEnd": { + "type": "object", + "description": "The end of file's modified datetime. Type: string (or Expression with resultType string)." + } + } + }, + "AzureDataLakeStoreReadSettings": { + "description": "Azure data lake store read settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StoreReadSettings" + } + ], + "properties": { + "recursive": { + "type": "object", + "description": "If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean)." + }, + "wildcardFolderPath": { + "type": "object", + "description": "ADLS wildcardFolderPath. Type: string (or Expression with resultType string)." + }, + "wildcardFileName": { + "type": "object", + "description": "ADLS wildcardFileName. Type: string (or Expression with resultType string)." + }, + "enablePartitionDiscovery": { + "type": "boolean", + "description": "Indicates whether to enable partition discovery." + }, + "modifiedDatetimeStart": { + "type": "object", + "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." + }, + "modifiedDatetimeEnd": { + "type": "object", + "description": "The end of file's modified datetime. Type: string (or Expression with resultType string)." + } + } + }, + "AmazonS3ReadSettings": { + "description": "Azure data lake store read settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StoreReadSettings" + } + ], + "properties": { + "recursive": { + "type": "object", + "description": "If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean)." + }, + "wildcardFolderPath": { + "type": "object", + "description": "AmazonS3 wildcardFolderPath. Type: string (or Expression with resultType string)." + }, + "wildcardFileName": { + "type": "object", + "description": "AmazonS3 wildcardFileName. Type: string (or Expression with resultType string)." + }, + "prefix": { + "type": "object", + "description": "The prefix filter for the S3 object name. Type: string (or Expression with resultType string)." + }, + "enablePartitionDiscovery": { + "type": "boolean", + "description": "Indicates whether to enable partition discovery." + }, + "modifiedDatetimeStart": { + "type": "object", + "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." + }, + "modifiedDatetimeEnd": { + "type": "object", + "description": "The end of file's modified datetime. Type: string (or Expression with resultType string)." + } + } + }, + "FileServerReadSettings": { + "description": "File server read settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StoreReadSettings" + } + ], + "properties": { + "recursive": { + "type": "object", + "description": "If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean)." + }, + "wildcardFolderPath": { + "type": "object", + "description": "FileServer wildcardFolderPath. Type: string (or Expression with resultType string)." + }, + "wildcardFileName": { + "type": "object", + "description": "FileServer wildcardFileName. Type: string (or Expression with resultType string)." + }, + "enablePartitionDiscovery": { + "type": "boolean", + "description": "Indicates whether to enable partition discovery." + }, + "modifiedDatetimeStart": { + "type": "object", + "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." + }, + "modifiedDatetimeEnd": { + "type": "object", + "description": "The end of file's modified datetime. Type: string (or Expression with resultType string)." + } + } + }, + "AzureFileStorageReadSettings": { + "description": "Azure File Storage read settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StoreReadSettings" + } + ], + "properties": { + "recursive": { + "type": "object", + "description": "If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean)." + }, + "wildcardFolderPath": { + "type": "object", + "description": "Azure File Storage wildcardFolderPath. Type: string (or Expression with resultType string)." + }, + "wildcardFileName": { + "type": "object", + "description": "Azure File Storage wildcardFileName. Type: string (or Expression with resultType string)." + }, + "enablePartitionDiscovery": { + "type": "boolean", + "description": "Indicates whether to enable partition discovery." + }, + "modifiedDatetimeStart": { + "type": "object", + "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." + }, + "modifiedDatetimeEnd": { + "type": "object", + "description": "The end of file's modified datetime. Type: string (or Expression with resultType string)." + } + } + }, + "SftpWriteSettings": { + "description": "Sftp write settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StoreWriteSettings" + } + ], + "properties": { + "operationTimeout": { + "description": "Specifies the timeout for writing each chunk to SFTP server. Default value: 01:00:00 (one hour). Type: string (or Expression with resultType string).", + "type": "object" + } + } + }, + "GoogleCloudStorageReadSettings": { + "description": "Google Cloud Storage read settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StoreReadSettings" + } + ], + "properties": { + "recursive": { + "type": "object", + "description": "If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean)." + }, + "wildcardFolderPath": { + "type": "object", + "description": "Google Cloud Storage wildcardFolderPath. Type: string (or Expression with resultType string)." + }, + "wildcardFileName": { + "type": "object", + "description": "Google Cloud Storage wildcardFileName. Type: string (or Expression with resultType string)." + }, + "prefix": { + "type": "object", + "description": "The prefix filter for the Google Cloud Storage object name. Type: string (or Expression with resultType string)." + }, + "enablePartitionDiscovery": { + "type": "boolean", + "description": "Indicates whether to enable partition discovery." + }, + "modifiedDatetimeStart": { + "type": "object", + "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." + }, + "modifiedDatetimeEnd": { + "type": "object", + "description": "The end of file's modified datetime. Type: string (or Expression with resultType string)." + } + } + }, + "FtpReadSettings": { + "description": "Ftp read settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StoreReadSettings" + } + ], + "properties": { + "recursive": { + "type": "object", + "description": "If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean)." + }, + "wildcardFolderPath": { + "type": "object", + "description": "Ftp wildcardFolderPath. Type: string (or Expression with resultType string)." + }, + "wildcardFileName": { + "type": "object", + "description": "Ftp wildcardFileName. Type: string (or Expression with resultType string)." + }, + "useBinaryTransfer": { + "type": "boolean", + "description": "Specify whether to use binary transfer mode for FTP stores." + } + } + }, + "SftpReadSettings": { + "description": "Sftp read settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StoreReadSettings" + } + ], + "properties": { + "recursive": { + "type": "object", + "description": "If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean)." + }, + "wildcardFolderPath": { + "type": "object", + "description": "Sftp wildcardFolderPath. Type: string (or Expression with resultType string)." + }, + "wildcardFileName": { + "type": "object", + "description": "Sftp wildcardFileName. Type: string (or Expression with resultType string)." + }, + "modifiedDatetimeStart": { + "type": "object", + "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." + }, + "modifiedDatetimeEnd": { + "type": "object", + "description": "The end of file's modified datetime. Type: string (or Expression with resultType string)." + } + } + }, + "HttpReadSettings": { + "description": "Sftp read settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StoreReadSettings" + } + ], + "properties": { + "requestMethod": { + "type": "object", + "description": "The HTTP method used to call the RESTful API. The default is GET. Type: string (or Expression with resultType string)." + }, + "requestBody": { + "type": "object", + "description": "The HTTP request body to the RESTful API if requestMethod is POST. Type: string (or Expression with resultType string)." + }, + "additionalHeaders": { + "type": "object", + "description": "The additional HTTP headers in the request to the RESTful API. Type: string (or Expression with resultType string)." + }, + "requestTimeout": { + "type": "object", + "description": "Specifies the timeout for a HTTP client to get HTTP response from HTTP server." + } + } + }, + "HdfsReadSettings": { + "description": "HDFS read settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StoreReadSettings" + } + ], + "properties": { + "recursive": { + "type": "object", + "description": "If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean)." + }, + "wildcardFolderPath": { + "type": "object", + "description": "HDFS wildcardFolderPath. Type: string (or Expression with resultType string)." + }, + "wildcardFileName": { + "type": "object", + "description": "HDFS wildcardFileName. Type: string (or Expression with resultType string)." + }, + "enablePartitionDiscovery": { + "type": "boolean", + "description": "Indicates whether to enable partition discovery." + }, + "modifiedDatetimeStart": { + "type": "object", + "description": "The start of file's modified datetime. Type: string (or Expression with resultType string)." + }, + "modifiedDatetimeEnd": { + "type": "object", + "description": "The end of file's modified datetime. Type: string (or Expression with resultType string)." + }, + "distcpSettings": { + "description": "Specifies Distcp-related settings.", + "$ref": "#/definitions/DistcpSettings" + } + } + }, + "StoreWriteSettings": { + "description": "Connector write settings.", + "discriminator": "type", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The write setting type." + }, + "maxConcurrentConnections": { + "type": "object", + "description": "The maximum concurrent connection count for the source data store. Type: integer (or Expression with resultType integer)." + }, + "copyBehavior": { + "description": "The type of copy behavior for copy sink.", + "type": "object" + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "AzureBlobStorageWriteSettings": { + "description": "Azure blob write settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StoreWriteSettings" + } + ], + "properties": { + "blockSizeInMB": { + "description": "Indicates the block size(MB) when writing data to blob. Type: integer (or Expression with resultType integer).", + "type": "object" + } + } + }, + "AzureBlobFSWriteSettings": { + "description": "Azure blobFS write settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StoreWriteSettings" + } + ], + "properties": { + "blockSizeInMB": { + "description": "Indicates the block size(MB) when writing data to blob. Type: integer (or Expression with resultType integer).", + "type": "object" + } + } + }, + "AzureDataLakeStoreWriteSettings": { + "description": "Azure data lake store write settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StoreWriteSettings" + } + ] + }, + "FileServerWriteSettings": { + "description": "File server write settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/StoreWriteSettings" + } + ] + }, + "FormatReadSettings": { + "description": "Format read settings.", + "discriminator": "type", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The read setting type." + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "DelimitedTextReadSettings": { + "description": "Delimited text read settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FormatReadSettings" + } + ], + "properties": { + "skipLineCount": { + "type": "object", + "description": "Indicates the number of non-empty rows to skip when reading data from input files. Type: integer (or Expression with resultType integer)." + } + } + }, + "FormatWriteSettings": { + "description": "Format write settings.", + "discriminator": "type", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The write setting type." + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "AvroWriteSettings": { + "description": "Avro write settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FormatWriteSettings" + } + ], + "properties": { + "recordName": { + "type": "string", + "description": "Top level record name in write result, which is required in AVRO spec." + }, + "recordNamespace": { + "type": "string", + "description": "Record namespace in the write result." + } + } + }, + "DelimitedTextWriteSettings": { + "description": "Delimited text write settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FormatWriteSettings" + } + ], + "properties": { + "quoteAllText": { + "type": "object", + "description": "Indicates whether string values should always be enclosed with quotes. Type: boolean (or Expression with resultType boolean)." + }, + "fileExtension": { + "type": "object", + "description": "The file extension used to create the files. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "fileExtension" + ] + }, + "JsonWriteSettings": { + "description": "Json write settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/FormatWriteSettings" + } + ], + "properties": { + "filePattern": { + "description": "File pattern of JSON. This setting controls the way a collection of JSON objects will be treated. The default value is 'setOfObjects'. It is case-sensitive.", + "type": "string", + "enum": [ + "setOfObjects", + "arrayOfObjects" + ], + "x-ms-enum": { + "name": "JsonWriteFilePattern", + "modelAsString": true + } + } + } + }, + "AvroSource": { + "description": "A copy activity Avro source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "storeSettings": { + "$ref": "#/definitions/StoreReadSettings", + "description": "Avro store settings." + } + } + }, + "ParquetSource": { + "description": "A copy activity Parquet source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "storeSettings": { + "$ref": "#/definitions/StoreReadSettings", + "description": "Parquet store settings." + } + } + }, + "DelimitedTextSource": { + "description": "A copy activity DelimitedText source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "storeSettings": { + "$ref": "#/definitions/StoreReadSettings", + "description": "DelimitedText store settings." + }, + "formatSettings": { + "$ref": "#/definitions/DelimitedTextReadSettings", + "description": "DelimitedText format settings." + } + } + }, + "JsonSource": { + "description": "A copy activity Json source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "storeSettings": { + "$ref": "#/definitions/StoreReadSettings", + "description": "Json store settings." + } + } + }, + "OrcSource": { + "description": "A copy activity ORC source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "storeSettings": { + "$ref": "#/definitions/StoreReadSettings", + "description": "ORC store settings." + } + } + }, + "DelimitedTextSink": { + "description": "A copy activity DelimitedText sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "storeSettings": { + "$ref": "#/definitions/StoreWriteSettings", + "description": "DelimitedText store settings." + }, + "formatSettings": { + "$ref": "#/definitions/DelimitedTextWriteSettings", + "description": "DelimitedText format settings." + } + } + }, + "JsonSink": { + "description": "A copy activity Json sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "storeSettings": { + "$ref": "#/definitions/StoreWriteSettings", + "description": "Json store settings." + }, + "formatSettings": { + "$ref": "#/definitions/JsonWriteSettings", + "description": "Json format settings." + } + } + }, + "OrcSink": { + "description": "A copy activity ORC sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "storeSettings": { + "$ref": "#/definitions/StoreWriteSettings", + "description": "ORC store settings." + } + } + }, + "CopyActivity": { + "x-ms-discriminator-value": "Copy", + "description": "Copy activity.", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "description": "Copy activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CopyActivityTypeProperties" + }, + "inputs": { + "type": "array", + "description": "List of inputs for the activity.", + "items": { + "$ref": "../datafactory.json#/definitions/DatasetReference" + } + }, + "outputs": { + "type": "array", + "description": "List of outputs for the activity.", + "items": { + "$ref": "../datafactory.json#/definitions/DatasetReference" + } + } + }, + "required": [ + "typeProperties" + ] + }, + "CopyActivityTypeProperties": { + "description": "Copy activity properties.", + "properties": { + "source": { + "description": "Copy activity source.", + "$ref": "#/definitions/CopySource" + }, + "sink": { + "description": "Copy activity sink.", + "$ref": "#/definitions/CopySink" + }, + "translator": { + "description": "Copy activity translator. If not specified, tabular translator is used.", + "type": "object" + }, + "enableStaging": { + "type": "object", + "description": "Specifies whether to copy data via an interim staging. Default value is false. Type: boolean (or Expression with resultType boolean)." + }, + "stagingSettings": { + "description": "Specifies interim staging settings when EnableStaging is true.", + "$ref": "#/definitions/StagingSettings" + }, + "parallelCopies": { + "type": "object", + "description": "Maximum number of concurrent sessions opened on the source or sink to avoid overloading the data store. Type: integer (or Expression with resultType integer), minimum: 0." + }, + "dataIntegrationUnits": { + "type": "object", + "description": "Maximum number of data integration units that can be used to perform this data movement. Type: integer (or Expression with resultType integer), minimum: 0." + }, + "enableSkipIncompatibleRow": { + "type": "object", + "description": "Whether to skip incompatible row. Default value is false. Type: boolean (or Expression with resultType boolean)." + }, + "redirectIncompatibleRowSettings": { + "description": "Redirect incompatible row settings when EnableSkipIncompatibleRow is true.", + "$ref": "#/definitions/RedirectIncompatibleRowSettings" + }, + "preserveRules": { + "type": "array", + "items": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + }, + "description": "Preserve Rules." + }, + "preserve": { + "type": "array", + "items": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + }, + "description": "Preserve rules." + } + }, + "required": [ + "source", + "sink" + ] + }, + "CopySource": { + "discriminator": "type", + "description": "A copy activity source.", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Copy source type." + }, + "sourceRetryCount": { + "type": "object", + "description": "Source retry count. Type: integer (or Expression with resultType integer)." + }, + "sourceRetryWait": { + "type": "object", + "description": "Source retry wait. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + }, + "maxConcurrentConnections": { + "type": "object", + "description": "The maximum concurrent connection count for the source data store. Type: integer (or Expression with resultType integer)." + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "BinarySource": { + "description": "A copy activity Binary source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "storeSettings": { + "$ref": "#/definitions/StoreReadSettings", + "description": "Binary store settings." + } + } + }, + "TabularSource": { + "description": "Copy activity sources of tabular type.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "queryTimeout": { + "type": "object", + "description": "Query timeout. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + } + } + }, + "AzureTableSource": { + "description": "A copy activity Azure Table source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "azureTableSourceQuery": { + "type": "object", + "description": "Azure Table source query. Type: string (or Expression with resultType string)." + }, + "azureTableSourceIgnoreTableNotFound": { + "type": "object", + "description": "Azure Table source ignore table not found. Type: boolean (or Expression with resultType boolean)." + } + } + }, + "BlobSource": { + "description": "A copy activity Azure Blob source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "treatEmptyAsNull": { + "type": "object", + "description": "Treat empty as null. Type: boolean (or Expression with resultType boolean)." + }, + "skipHeaderLineCount": { + "type": "object", + "description": "Number of header lines to skip from each blob. Type: integer (or Expression with resultType integer)." + }, + "recursive": { + "type": "object", + "description": "If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean)." + } + } + }, + "DocumentDbCollectionSource": { + "description": "A copy activity Document Database Collection source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Documents query. Type: string (or Expression with resultType string)." + }, + "nestingSeparator": { + "type": "object", + "description": "Nested properties separator. Type: string (or Expression with resultType string)." + }, + "queryTimeout": { + "type": "object", + "description": "Query timeout. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + } + } + }, + "CosmosDbSqlApiSource": { + "description": "A copy activity Azure CosmosDB (SQL API) Collection source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "SQL API query. Type: string (or Expression with resultType string)." + }, + "pageSize": { + "type": "object", + "description": "Page size of the result. Type: integer (or Expression with resultType integer)." + }, + "preferredRegions": { + "type": "object", + "description": "Preferred regions. Type: array of strings (or Expression with resultType array of strings)." + } + } + }, + "DynamicsSource": { + "description": "A copy activity Dynamics source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "FetchXML is a proprietary query language that is used in Microsoft Dynamics (online & on-premises). Type: string (or Expression with resultType string)." + } + } + }, + "DynamicsCrmSource": { + "description": "A copy activity Dynamics CRM source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "FetchXML is a proprietary query language that is used in Microsoft Dynamics CRM (online & on-premises). Type: string (or Expression with resultType string)." + } + } + }, + "CommonDataServiceForAppsSource": { + "description": "A copy activity Common Data Service for Apps source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "FetchXML is a proprietary query language that is used in Microsoft Common Data Service for Apps (online & on-premises). Type: string (or Expression with resultType string)." + } + } + }, + "RelationalSource": { + "description": "A copy activity source for various relational databases.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Database query. Type: string (or Expression with resultType string)." + } + } + }, + "InformixSource": { + "description": "A copy activity source for Informix.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Database query. Type: string (or Expression with resultType string)." + } + } + }, + "MicrosoftAccessSource": { + "description": "A copy activity source for Microsoft Access.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Database query. Type: string (or Expression with resultType string)." + } + } + }, + "Db2Source": { + "description": "A copy activity source for Db2 databases.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Database query. Type: string (or Expression with resultType string)." + } + } + }, + "OdbcSource": { + "description": "A copy activity source for ODBC databases.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Database query. Type: string (or Expression with resultType string)." + } + } + }, + "MySqlSource": { + "description": "A copy activity source for MySQL databases.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Database query. Type: string (or Expression with resultType string)." + } + } + }, + "PostgreSqlSource": { + "description": "A copy activity source for PostgreSQL databases.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Database query. Type: string (or Expression with resultType string)." + } + } + }, + "SybaseSource": { + "description": "A copy activity source for Sybase databases.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Database query. Type: string (or Expression with resultType string)." + } + } + }, + "SapBwSource": { + "description": "A copy activity source for SapBW server via MDX.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "MDX query. Type: string (or Expression with resultType string)." + } + } + }, + "ODataSource": { + "description": "A copy activity source for OData source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "OData query. For example, \"$top=1\". Type: string (or Expression with resultType string)." + } + } + }, + "SalesforceSource": { + "description": "A copy activity Salesforce source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Database query. Type: string (or Expression with resultType string)." + }, + "readBehavior": { + "description": "The read behavior for the operation. Default is Query.", + "type": "string", + "enum": [ + "Query", + "QueryAll" + ], + "x-ms-enum": { + "name": "SalesforceSourceReadBehavior", + "modelAsString": true + } + } + } + }, + "SalesforceServiceCloudSource": { + "description": "A copy activity Salesforce Service Cloud source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Database query. Type: string (or Expression with resultType string)." + }, + "readBehavior": { + "description": "The read behavior for the operation. Default is Query.", + "type": "string", + "enum": [ + "Query", + "QueryAll" + ], + "x-ms-enum": { + "name": "SalesforceSourceReadBehavior", + "modelAsString": true + } + } + } + }, + "SapCloudForCustomerSource": { + "description": "A copy activity source for SAP Cloud for Customer source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "SAP Cloud for Customer OData query. For example, \"$top=1\". Type: string (or Expression with resultType string)." + } + } + }, + "SapEccSource": { + "description": "A copy activity source for SAP ECC source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "SAP ECC OData query. For example, \"$top=1\". Type: string (or Expression with resultType string)." + } + } + }, + "SapHanaSource": { + "description": "A copy activity source for SAP HANA source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "SAP HANA Sql query. Type: string (or Expression with resultType string)." + }, + "packetSize": { + "type": "object", + "description": "The packet size of data read from SAP HANA. Type: integer(or Expression with resultType integer)." + }, + "partitionOption": { + "description": "The partition mechanism that will be used for SAP HANA read in parallel.", + "type": "string", + "enum": [ + "None", + "PhysicalPartitionsOfTable", + "SapHanaDynamicRange" + ], + "x-ms-enum": { + "name": "SapHanaPartitionOption", + "modelAsString": true + } + }, + "partitionSettings": { + "description": "The settings that will be leveraged for SAP HANA source partitioning.", + "$ref": "#/definitions/SapHanaPartitionSettings" + } + } + }, + "SapHanaPartitionSettings": { + "description": "The settings that will be leveraged for SAP HANA source partitioning.", + "type": "object", + "properties": { + "partitionColumnName": { + "type": "object", + "description": "The name of the column that will be used for proceeding range partitioning. Type: string (or Expression with resultType string)." + } + } + }, + "SapOpenHubSource": { + "description": "A copy activity source for SAP Business Warehouse Open Hub Destination source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "excludeLastRequest": { + "type": "object", + "description": "Whether to exclude the records of the last request. The default value is true. Type: boolean (or Expression with resultType boolean)." + }, + "baseRequestId": { + "type": "object", + "description": "The ID of request for delta loading. Once it is set, only data with requestId larger than the value of this property will be retrieved. The default value is 0. Type: integer (or Expression with resultType integer )." + } + } + }, + "SapTableSource": { + "description": "A copy activity source for SAP Table source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "rowCount": { + "type": "object", + "description": "The number of rows to be retrieved. Type: integer(or Expression with resultType integer)." + }, + "rowSkips": { + "type": "object", + "description": "The number of rows that will be skipped. Type: integer (or Expression with resultType integer)." + }, + "rfcTableFields": { + "type": "object", + "description": "The fields of the SAP table that will be retrieved. For example, column0, column1. Type: string (or Expression with resultType string)." + }, + "rfcTableOptions": { + "type": "object", + "description": "The options for the filtering of the SAP Table. For example, COLUMN0 EQ SOME VALUE. Type: string (or Expression with resultType string)." + }, + "batchSize": { + "type": "object", + "description": "Specifies the maximum number of rows that will be retrieved at a time when retrieving data from SAP Table. Type: integer (or Expression with resultType integer)." + }, + "customRfcReadTableFunctionModule": { + "type": "object", + "description": "Specifies the custom RFC function module that will be used to read data from SAP Table. Type: string (or Expression with resultType string)." + }, + "partitionOption": { + "description": "The partition mechanism that will be used for SAP table read in parallel.", + "type": "string", + "enum": [ + "None", + "PartitionOnInt", + "PartitionOnCalendarYear", + "PartitionOnCalendarMonth", + "PartitionOnCalendarDate", + "PartitionOnTime" + ], + "x-ms-enum": { + "name": "SapTablePartitionOption", + "modelAsString": true + } + }, + "partitionSettings": { + "description": "The settings that will be leveraged for SAP table source partitioning.", + "$ref": "#/definitions/SapTablePartitionSettings" + } + } + }, + "SapTablePartitionSettings": { + "description": "The settings that will be leveraged for SAP table source partitioning.", + "type": "object", + "properties": { + "partitionColumnName": { + "type": "object", + "description": "The name of the column that will be used for proceeding range partitioning. Type: string (or Expression with resultType string)." + }, + "partitionUpperBound": { + "type": "object", + "description": "The maximum value of column specified in partitionColumnName that will be used for proceeding range partitioning. Type: string (or Expression with resultType string)." + }, + "partitionLowerBound": { + "type": "object", + "description": "The minimum value of column specified in partitionColumnName that will be used for proceeding range partitioning. Type: string (or Expression with resultType string)." + }, + "maxPartitionsNumber": { + "type": "object", + "description": "The maximum value of partitions the table will be split into. Type: integer (or Expression with resultType string)." + } + } + }, + "RestSource": { + "description": "A copy activity Rest service source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "requestMethod": { + "type": "object", + "description": "The HTTP method used to call the RESTful API. The default is GET. Type: string (or Expression with resultType string)." + }, + "requestBody": { + "type": "object", + "description": "The HTTP request body to the RESTful API if requestMethod is POST. Type: string (or Expression with resultType string)." + }, + "additionalHeaders": { + "type": "object", + "description": "The additional HTTP headers in the request to the RESTful API. Type: string (or Expression with resultType string)." + }, + "paginationRules": { + "type": "object", + "description": "The pagination rules to compose next page requests. Type: string (or Expression with resultType string)." + }, + "httpRequestTimeout": { + "type": "object", + "description": "The timeout (TimeSpan) to get an HTTP response. It is the timeout to get a response, not the timeout to read response data. Default value: 00:01:40. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + }, + "requestInterval": { + "type": "object", + "description": "The time to await before sending next page request. " + } + } + }, + "SqlSource": { + "description": "A copy activity SQL source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "sqlReaderQuery": { + "type": "object", + "description": "SQL reader query. Type: string (or Expression with resultType string)." + }, + "sqlReaderStoredProcedureName": { + "type": "object", + "description": "Name of the stored procedure for a SQL Database source. This cannot be used at the same time as SqlReaderQuery. Type: string (or Expression with resultType string)." + }, + "storedProcedureParameters": { + "description": "Value and type setting for stored procedure parameters. Example: \"{Parameter1: {value: \"1\", type: \"int\"}}\".", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/StoredProcedureParameter" + } + } + } + }, + "SqlServerSource": { + "description": "A copy activity SQL server source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "sqlReaderQuery": { + "type": "object", + "description": "SQL reader query. Type: string (or Expression with resultType string)." + }, + "sqlReaderStoredProcedureName": { + "type": "object", + "description": "Name of the stored procedure for a SQL Database source. This cannot be used at the same time as SqlReaderQuery. Type: string (or Expression with resultType string)." + }, + "storedProcedureParameters": { + "description": "Value and type setting for stored procedure parameters. Example: \"{Parameter1: {value: \"1\", type: \"int\"}}\".", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/StoredProcedureParameter" + } + }, + "produceAdditionalTypes": { + "description": "Which additional types to produce.", + "type": "object" + } + } + }, + "AzureSqlSource": { + "description": "A copy activity Azure SQL source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "sqlReaderQuery": { + "type": "object", + "description": "SQL reader query. Type: string (or Expression with resultType string)." + }, + "sqlReaderStoredProcedureName": { + "type": "object", + "description": "Name of the stored procedure for a SQL Database source. This cannot be used at the same time as SqlReaderQuery. Type: string (or Expression with resultType string)." + }, + "storedProcedureParameters": { + "description": "Value and type setting for stored procedure parameters. Example: \"{Parameter1: {value: \"1\", type: \"int\"}}\".", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/StoredProcedureParameter" + } + }, + "produceAdditionalTypes": { + "description": "Which additional types to produce.", + "type": "object" + } + } + }, + "SqlMISource": { + "description": "A copy activity Azure SQL Managed Instance source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "sqlReaderQuery": { + "type": "object", + "description": "SQL reader query. Type: string (or Expression with resultType string)." + }, + "sqlReaderStoredProcedureName": { + "type": "object", + "description": "Name of the stored procedure for a Azure SQL Managed Instance source. This cannot be used at the same time as SqlReaderQuery. Type: string (or Expression with resultType string)." + }, + "storedProcedureParameters": { + "description": "Value and type setting for stored procedure parameters. Example: \"{Parameter1: {value: \"1\", type: \"int\"}}\".", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/StoredProcedureParameter" + } + }, + "produceAdditionalTypes": { + "description": "Which additional types to produce.", + "type": "object" + } + } + }, + "SqlDWSource": { + "description": "A copy activity SQL Data Warehouse source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "sqlReaderQuery": { + "type": "object", + "description": "SQL Data Warehouse reader query. Type: string (or Expression with resultType string)." + }, + "sqlReaderStoredProcedureName": { + "type": "object", + "description": "Name of the stored procedure for a SQL Data Warehouse source. This cannot be used at the same time as SqlReaderQuery. Type: string (or Expression with resultType string)." + }, + "storedProcedureParameters": { + "type": "object", + "description": "Value and type setting for stored procedure parameters. Example: \"{Parameter1: {value: \"1\", type: \"int\"}}\". Type: object (or Expression with resultType object), itemType: StoredProcedureParameter." + } + } + }, + "FileSystemSource": { + "description": "A copy activity file system source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "recursive": { + "type": "object", + "description": "If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean)." + } + } + }, + "HdfsSource": { + "description": "A copy activity HDFS source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "recursive": { + "type": "object", + "description": "If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean)." + }, + "distcpSettings": { + "description": "Specifies Distcp-related settings.", + "$ref": "#/definitions/DistcpSettings" + } + } + }, + "DistcpSettings": { + "description": "Distcp settings.", + "type": "object", + "properties": { + "resourceManagerEndpoint": { + "type": "object", + "description": "Specifies the Yarn ResourceManager endpoint. Type: string (or Expression with resultType string)." + }, + "tempScriptPath": { + "type": "object", + "description": "Specifies an existing folder path which will be used to store temp Distcp command script. The script file is generated by ADF and will be removed after Copy job finished. Type: string (or Expression with resultType string)." + }, + "distcpOptions": { + "type": "object", + "description": "Specifies the Distcp options. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "resourceManagerEndpoint", + "tempScriptPath" + ] + }, + "AzureMySqlSource": { + "description": "A copy activity Azure MySQL source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Database query. Type: string (or Expression with resultType string)." + } + } + }, + "AzureDataExplorerSource": { + "description": "A copy activity Azure Data Explorer (Kusto) source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Database query. Should be a Kusto Query Language (KQL) query. Type: string (or Expression with resultType string)." + }, + "noTruncation": { + "type": "object", + "description": "The name of the Boolean option that controls whether truncation is applied to result-sets that go beyond a certain row-count limit." + }, + "queryTimeout": { + "type": "object", + "description": "Query timeout. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9])).." + } + }, + "required": [ + "query" + ] + }, + "OracleSource": { + "description": "A copy activity Oracle source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "oracleReaderQuery": { + "type": "object", + "description": "Oracle reader query. Type: string (or Expression with resultType string)." + }, + "queryTimeout": { + "type": "object", + "description": "Query timeout. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + }, + "partitionOption": { + "description": "The partition mechanism that will be used for Oracle read in parallel.", + "type": "string", + "enum": [ + "None", + "PhysicalPartitionsOfTable", + "DynamicRange" + ], + "x-ms-enum": { + "name": "OraclePartitionOption", + "modelAsString": true + } + }, + "partitionSettings": { + "description": "The settings that will be leveraged for Oracle source partitioning.", + "$ref": "#/definitions/OraclePartitionSettings" + } + } + }, + "OraclePartitionSettings": { + "description": "The settings that will be leveraged for Oracle source partitioning.", + "type": "object", + "properties": { + "partitionNames": { + "type": "object", + "items": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + }, + "description": "Names of the physical partitions of Oracle table. " + }, + "partitionColumnName": { + "type": "object", + "description": "The name of the column in integer type that will be used for proceeding range partitioning. Type: string (or Expression with resultType string)." + }, + "partitionUpperBound": { + "type": "object", + "description": "The maximum value of column specified in partitionColumnName that will be used for proceeding range partitioning. Type: string (or Expression with resultType string)." + }, + "partitionLowerBound": { + "type": "object", + "description": "The minimum value of column specified in partitionColumnName that will be used for proceeding range partitioning. Type: string (or Expression with resultType string)." + } + } + }, + "TeradataSource": { + "description": "A copy activity Teradata source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Teradata query. Type: string (or Expression with resultType string)." + }, + "partitionOption": { + "description": "The partition mechanism that will be used for teradata read in parallel.", + "type": "string", + "enum": [ + "None", + "Hash", + "DynamicRange" + ], + "x-ms-enum": { + "name": "TeradataPartitionOption", + "modelAsString": true + } + }, + "partitionSettings": { + "description": "The settings that will be leveraged for teradata source partitioning.", + "$ref": "#/definitions/TeradataPartitionSettings" + } + } + }, + "TeradataPartitionSettings": { + "description": "The settings that will be leveraged for teradata source partitioning.", + "type": "object", + "properties": { + "partitionColumnName": { + "type": "object", + "description": "The name of the column that will be used for proceeding range or hash partitioning. Type: string (or Expression with resultType string)." + }, + "partitionUpperBound": { + "type": "object", + "description": "The maximum value of column specified in partitionColumnName that will be used for proceeding range partitioning. Type: string (or Expression with resultType string)." + }, + "partitionLowerBound": { + "type": "object", + "description": "The minimum value of column specified in partitionColumnName that will be used for proceeding range partitioning. Type: string (or Expression with resultType string)." + } + } + }, + "WebSource": { + "description": "A copy activity source for web page table.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": {} + }, + "CassandraSource": { + "description": "A copy activity source for a Cassandra database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Database query. Should be a SQL-92 query expression or Cassandra Query Language (CQL) command. Type: string (or Expression with resultType string)." + }, + "consistencyLevel": { + "description": "The consistency level specifies how many Cassandra servers must respond to a read request before returning data to the client application. Cassandra checks the specified number of Cassandra servers for data to satisfy the read request. Must be one of cassandraSourceReadConsistencyLevels. The default value is 'ONE'. It is case-insensitive.", + "type": "string", + "enum": [ + "ALL", + "EACH_QUORUM", + "QUORUM", + "LOCAL_QUORUM", + "ONE", + "TWO", + "THREE", + "LOCAL_ONE", + "SERIAL", + "LOCAL_SERIAL" + ], + "x-ms-enum": { + "name": "CassandraSourceReadConsistencyLevels", + "modelAsString": true + } + } + } + }, + "MongoDbSource": { + "description": "A copy activity source for a MongoDB database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Database query. Should be a SQL-92 query expression. Type: string (or Expression with resultType string)." + } + } + }, + "MongoDbV2Source": { + "description": "A copy activity source for a MongoDB database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "filter": { + "type": "object", + "description": "Specifies selection filter using query operators. To return all documents in a collection, omit this parameter or pass an empty document ({}). Type: string (or Expression with resultType string)." + }, + "cursorMethods": { + "description": "Cursor methods for Mongodb query", + "$ref": "#/definitions/MongoDbCursorMethodsProperties" + }, + "batchSize": { + "type": "object", + "description": "Specifies the number of documents to return in each batch of the response from MongoDB instance. In most cases, modifying the batch size will not affect the user or the application. This property's main purpose is to avoid hit the limitation of response size. Type: integer (or Expression with resultType integer)." + }, + "queryTimeout": { + "type": "object", + "description": "Query timeout. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + } + } + }, + "CosmosDbMongoDbApiSource": { + "description": "A copy activity source for a CosmosDB (MongoDB API) database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "filter": { + "type": "object", + "description": "Specifies selection filter using query operators. To return all documents in a collection, omit this parameter or pass an empty document ({}). Type: string (or Expression with resultType string)." + }, + "cursorMethods": { + "description": "Cursor methods for Mongodb query.", + "$ref": "#/definitions/MongoDbCursorMethodsProperties" + }, + "batchSize": { + "type": "object", + "description": "Specifies the number of documents to return in each batch of the response from MongoDB instance. In most cases, modifying the batch size will not affect the user or the application. This property's main purpose is to avoid hit the limitation of response size. Type: integer (or Expression with resultType integer)." + }, + "queryTimeout": { + "type": "object", + "description": "Query timeout. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + } + } + }, + "MongoDbCursorMethodsProperties": { + "description": "Cursor methods for Mongodb query", + "type": "object", + "properties": { + "project": { + "type": "object", + "description": "Specifies the fields to return in the documents that match the query filter. To return all fields in the matching documents, omit this parameter. Type: string (or Expression with resultType string)." + }, + "sort": { + "type": "object", + "description": "Specifies the order in which the query returns matching documents. Type: string (or Expression with resultType string). Type: string (or Expression with resultType string)." + }, + "skip": { + "type": "object", + "description": "Specifies the how many documents skipped and where MongoDB begins returning results. This approach may be useful in implementing paginated results. Type: integer (or Expression with resultType integer)." + }, + "limit": { + "type": "object", + "description": "Specifies the maximum number of documents the server returns. limit() is analogous to the LIMIT statement in a SQL database. Type: integer (or Expression with resultType integer)." + } + }, + "additionalProperties": { + "type": "object" + } + }, + "Office365Source": { + "description": "A copy activity source for an Office 365 service.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "allowedGroups": { + "type": "object", + "description": "The groups containing all the users. Type: array of strings (or Expression with resultType array of strings)." + }, + "userScopeFilterUri": { + "type": "object", + "description": "The user scope uri. Type: string (or Expression with resultType string)." + }, + "dateFilterColumn": { + "type": "object", + "description": "The Column to apply the and . Type: string (or Expression with resultType string)." + }, + "startTime": { + "type": "object", + "description": "Start time of the requested range for this dataset. Type: string (or Expression with resultType string)." + }, + "endTime": { + "type": "object", + "description": "End time of the requested range for this dataset. Type: string (or Expression with resultType string)." + }, + "outputColumns": { + "type": "object", + "description": "The columns to be read out from the Office 365 table. Type: array of objects (or Expression with resultType array of objects). Example: [ { \"name\": \"Id\" }, { \"name\": \"CreatedDateTime\" } ]" + } + } + }, + "AzureDataLakeStoreSource": { + "description": "A copy activity Azure Data Lake source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "recursive": { + "type": "object", + "description": "If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean)." + } + } + }, + "AzureBlobFSSource": { + "description": "A copy activity Azure BlobFS source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "treatEmptyAsNull": { + "type": "object", + "description": "Treat empty as null. Type: boolean (or Expression with resultType boolean)." + }, + "skipHeaderLineCount": { + "type": "object", + "description": "Number of header lines to skip from each blob. Type: integer (or Expression with resultType integer)." + }, + "recursive": { + "type": "object", + "description": "If true, files under the folder path will be read recursively. Default is true. Type: boolean (or Expression with resultType boolean)." + } + } + }, + "HttpSource": { + "description": "A copy activity source for an HTTP file.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySource" + } + ], + "properties": { + "httpRequestTimeout": { + "type": "object", + "description": "Specifies the timeout for a HTTP client to get HTTP response from HTTP server. The default value is equivalent to System.Net.HttpWebRequest.Timeout. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + } + } + }, + "AmazonMWSSource": { + "description": "A copy activity Amazon Marketplace Web Service source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "AzurePostgreSqlSource": { + "description": "A copy activity Azure PostgreSQL source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "AzurePostgreSqlSink": { + "description": "A copy activity Azure PostgreSQL sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "preCopyScript": { + "type": "object", + "description": "A query to execute before starting the copy. Type: string (or Expression with resultType string)." + } + } + }, + "AzureMySqlSink": { + "description": "A copy activity Azure MySql sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "preCopyScript": { + "type": "object", + "description": "A query to execute before starting the copy. Type: string (or Expression with resultType string)." + } + } + }, + "ConcurSource": { + "description": "A copy activity Concur Service source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "CouchbaseSource": { + "description": "A copy activity Couchbase server source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "DrillSource": { + "description": "A copy activity Drill server source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "EloquaSource": { + "description": "A copy activity Eloqua server source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "GoogleBigQuerySource": { + "description": "A copy activity Google BigQuery service source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "GreenplumSource": { + "description": "A copy activity Greenplum Database source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "HBaseSource": { + "description": "A copy activity HBase server source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "HiveSource": { + "description": "A copy activity Hive Server source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "HubspotSource": { + "description": "A copy activity Hubspot Service source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "ImpalaSource": { + "description": "A copy activity Impala server source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "JiraSource": { + "description": "A copy activity Jira Service source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "MagentoSource": { + "description": "A copy activity Magento server source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "MariaDBSource": { + "description": "A copy activity MariaDB server source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "AzureMariaDBSource": { + "description": "A copy activity Azure MariaDB source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "MarketoSource": { + "description": "A copy activity Marketo server source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "PaypalSource": { + "description": "A copy activity Paypal Service source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "PhoenixSource": { + "description": "A copy activity Phoenix server source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "PrestoSource": { + "description": "A copy activity Presto server source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "QuickBooksSource": { + "description": "A copy activity QuickBooks server source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "ServiceNowSource": { + "description": "A copy activity ServiceNow server source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "ShopifySource": { + "description": "A copy activity Shopify Service source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "SparkSource": { + "description": "A copy activity Spark Server source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "SquareSource": { + "description": "A copy activity Square Service source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "XeroSource": { + "description": "A copy activity Xero Service source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "ZohoSource": { + "description": "A copy activity Zoho server source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "NetezzaSource": { + "description": "A copy activity Netezza source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + }, + "partitionOption": { + "description": "The partition mechanism that will be used for Netezza read in parallel.", + "type": "string", + "enum": [ + "None", + "DataSlice", + "DynamicRange" + ], + "x-ms-enum": { + "name": "NetezzaPartitionOption", + "modelAsString": true + } + }, + "partitionSettings": { + "description": "The settings that will be leveraged for Netezza source partitioning.", + "$ref": "#/definitions/NetezzaPartitionSettings" + } + } + }, + "NetezzaPartitionSettings": { + "description": "The settings that will be leveraged for Netezza source partitioning.", + "type": "object", + "properties": { + "partitionColumnName": { + "type": "object", + "description": "The name of the column in integer type that will be used for proceeding range partitioning. Type: string (or Expression with resultType string)." + }, + "partitionUpperBound": { + "type": "object", + "description": "The maximum value of column specified in partitionColumnName that will be used for proceeding range partitioning. Type: string (or Expression with resultType string)." + }, + "partitionLowerBound": { + "type": "object", + "description": "The minimum value of column specified in partitionColumnName that will be used for proceeding range partitioning. Type: string (or Expression with resultType string)." + } + } + }, + "VerticaSource": { + "description": "A copy activity Vertica source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "SalesforceMarketingCloudSource": { + "description": "A copy activity Salesforce Marketing Cloud source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "ResponsysSource": { + "description": "A copy activity Responsys source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "DynamicsAXSource": { + "description": "A copy activity Dynamics AX source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "OracleServiceCloudSource": { + "description": "A copy activity Oracle Service Cloud source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "GoogleAdWordsSource": { + "description": "A copy activity Google AdWords service source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "A query to retrieve data from source. Type: string (or Expression with resultType string)." + } + } + }, + "AmazonRedshiftSource": { + "description": "A copy activity source for Amazon Redshift Source.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TabularSource" + } + ], + "properties": { + "query": { + "type": "object", + "description": "Database query. Type: string (or Expression with resultType string)." + }, + "redshiftUnloadSettings": { + "description": "The Amazon S3 settings needed for the interim Amazon S3 when copying from Amazon Redshift with unload. With this, data from Amazon Redshift source will be unloaded into S3 first and then copied into the targeted sink from the interim S3.", + "$ref": "#/definitions/RedshiftUnloadSettings" + } + } + }, + "RedshiftUnloadSettings": { + "description": "The Amazon S3 settings needed for the interim Amazon S3 when copying from Amazon Redshift with unload. With this, data from Amazon Redshift source will be unloaded into S3 first and then copied into the targeted sink from the interim S3.", + "type": "object", + "properties": { + "s3LinkedServiceName": { + "description": "The name of the Amazon S3 linked service which will be used for the unload operation when copying from the Amazon Redshift source.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "bucketName": { + "type": "object", + "description": "The bucket of the interim Amazon S3 which will be used to store the unloaded data from Amazon Redshift source. The bucket must be in the same region as the Amazon Redshift source. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "s3LinkedServiceName", + "bucketName" + ] + }, + "StoredProcedureParameter": { + "description": "SQL stored procedure parameter.", + "type": "object", + "properties": { + "value": { + "type": "object", + "description": "Stored procedure parameter value. Type: string (or Expression with resultType string)." + }, + "type": { + "description": "Stored procedure parameter type.", + "$ref": "#/definitions/StoredProcedureParameterType" + } + } + }, + "StoredProcedureParameterType": { + "description": "Stored procedure parameter type.", + "type": "string", + "enum": [ + "String", + "Int", + "Int64", + "Decimal", + "Guid", + "Boolean", + "Date" + ], + "x-ms-enum": { + "name": "StoredProcedureParameterType", + "modelAsString": true + } + }, + "CopySink": { + "discriminator": "type", + "description": "A copy activity sink.", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Copy sink type." + }, + "writeBatchSize": { + "type": "object", + "description": "Write batch size. Type: integer (or Expression with resultType integer), minimum: 0." + }, + "writeBatchTimeout": { + "type": "object", + "description": "Write batch timeout. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + }, + "sinkRetryCount": { + "type": "object", + "description": "Sink retry count. Type: integer (or Expression with resultType integer)." + }, + "sinkRetryWait": { + "type": "object", + "description": "Sink retry wait. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + }, + "maxConcurrentConnections": { + "type": "object", + "description": "The maximum concurrent connection count for the sink data store. Type: integer (or Expression with resultType integer)." + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "SapCloudForCustomerSink": { + "description": "A copy activity SAP Cloud for Customer sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "writeBehavior": { + "description": "The write behavior for the operation. Default is 'Insert'.", + "type": "string", + "enum": [ + "Insert", + "Update" + ], + "x-ms-enum": { + "name": "SapCloudForCustomerSinkWriteBehavior", + "modelAsString": true + } + } + } + }, + "AzureQueueSink": { + "description": "A copy activity Azure Queue sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": {} + }, + "CopyBehaviorType": { + "description": "All available types of copy behavior.", + "type": "string", + "enum": [ + "PreserveHierarchy", + "FlattenHierarchy", + "MergeFiles" + ], + "x-ms-enum": { + "name": "CopyBehaviorType", + "modelAsString": true + } + }, + "AzureTableSink": { + "description": "A copy activity Azure Table sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "azureTableDefaultPartitionKeyValue": { + "type": "object", + "description": "Azure Table default partition key value. Type: string (or Expression with resultType string)." + }, + "azureTablePartitionKeyName": { + "type": "object", + "description": "Azure Table partition key name. Type: string (or Expression with resultType string)." + }, + "azureTableRowKeyName": { + "type": "object", + "description": "Azure Table row key name. Type: string (or Expression with resultType string)." + }, + "azureTableInsertType": { + "type": "object", + "description": "Azure Table insert type. Type: string (or Expression with resultType string)." + } + } + }, + "AvroSink": { + "description": "A copy activity Avro sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "storeSettings": { + "$ref": "#/definitions/StoreWriteSettings", + "description": "Avro store settings." + }, + "formatSettings": { + "$ref": "#/definitions/AvroWriteSettings", + "description": "Avro format settings." + } + } + }, + "ParquetSink": { + "description": "A copy activity Parquet sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "storeSettings": { + "$ref": "#/definitions/StoreWriteSettings", + "description": "Parquet store settings." + } + } + }, + "BinarySink": { + "description": "A copy activity Binary sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "storeSettings": { + "$ref": "#/definitions/StoreWriteSettings", + "description": "Binary store settings." + } + } + }, + "BlobSink": { + "description": "A copy activity Azure Blob sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "blobWriterOverwriteFiles": { + "type": "object", + "description": "Blob writer overwrite files. Type: boolean (or Expression with resultType boolean)." + }, + "blobWriterDateTimeFormat": { + "type": "object", + "description": "Blob writer date time format. Type: string (or Expression with resultType string)." + }, + "blobWriterAddHeader": { + "type": "object", + "description": "Blob writer add header. Type: boolean (or Expression with resultType boolean)." + }, + "copyBehavior": { + "description": "The type of copy behavior for copy sink.", + "type": "object" + } + } + }, + "FileSystemSink": { + "description": "A copy activity file system sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "copyBehavior": { + "description": "The type of copy behavior for copy sink.", + "type": "object" + } + } + }, + "DocumentDbCollectionSink": { + "description": "A copy activity Document Database Collection sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "nestingSeparator": { + "type": "object", + "description": "Nested properties separator. Default is . (dot). Type: string (or Expression with resultType string)." + }, + "writeBehavior": { + "type": "object", + "description": "Describes how to write data to Azure Cosmos DB. Type: string (or Expression with resultType string). Allowed values: insert and upsert." + } + } + }, + "CosmosDbSqlApiSink": { + "description": "A copy activity Azure CosmosDB (SQL API) Collection sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "writeBehavior": { + "type": "object", + "description": "Describes how to write data to Azure Cosmos DB. Type: string (or Expression with resultType string). Allowed values: insert and upsert." + } + } + }, + "SqlSink": { + "description": "A copy activity SQL sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "sqlWriterStoredProcedureName": { + "type": "object", + "description": "SQL writer stored procedure name. Type: string (or Expression with resultType string)." + }, + "sqlWriterTableType": { + "type": "object", + "description": "SQL writer table type. Type: string (or Expression with resultType string)." + }, + "preCopyScript": { + "type": "object", + "description": "SQL pre-copy script. Type: string (or Expression with resultType string)." + }, + "storedProcedureParameters": { + "description": "SQL stored procedure parameters.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/StoredProcedureParameter" + } + }, + "storedProcedureTableTypeParameterName": { + "type": "object", + "description": "The stored procedure parameter name of the table type. Type: string (or Expression with resultType string)." + }, + "tableOption": { + "type": "object", + "description": "The option to handle sink table, such as autoCreate. For now only 'autoCreate' value is supported. Type: string (or Expression with resultType string)." + } + } + }, + "SqlServerSink": { + "description": "A copy activity SQL server sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "sqlWriterStoredProcedureName": { + "type": "object", + "description": "SQL writer stored procedure name. Type: string (or Expression with resultType string)." + }, + "sqlWriterTableType": { + "type": "object", + "description": "SQL writer table type. Type: string (or Expression with resultType string)." + }, + "preCopyScript": { + "type": "object", + "description": "SQL pre-copy script. Type: string (or Expression with resultType string)." + }, + "storedProcedureParameters": { + "description": "SQL stored procedure parameters.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/StoredProcedureParameter" + } + }, + "storedProcedureTableTypeParameterName": { + "type": "object", + "description": "The stored procedure parameter name of the table type. Type: string (or Expression with resultType string)." + }, + "tableOption": { + "type": "object", + "description": "The option to handle sink table, such as autoCreate. For now only 'autoCreate' value is supported. Type: string (or Expression with resultType string)." + } + } + }, + "AzureSqlSink": { + "description": "A copy activity Azure SQL sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "sqlWriterStoredProcedureName": { + "type": "object", + "description": "SQL writer stored procedure name. Type: string (or Expression with resultType string)." + }, + "sqlWriterTableType": { + "type": "object", + "description": "SQL writer table type. Type: string (or Expression with resultType string)." + }, + "preCopyScript": { + "type": "object", + "description": "SQL pre-copy script. Type: string (or Expression with resultType string)." + }, + "storedProcedureParameters": { + "description": "SQL stored procedure parameters.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/StoredProcedureParameter" + } + }, + "storedProcedureTableTypeParameterName": { + "type": "object", + "description": "The stored procedure parameter name of the table type. Type: string (or Expression with resultType string)." + }, + "tableOption": { + "type": "object", + "description": "The option to handle sink table, such as autoCreate. For now only 'autoCreate' value is supported. Type: string (or Expression with resultType string)." + } + } + }, + "SqlMISink": { + "description": "A copy activity Azure SQL Managed Instance sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "sqlWriterStoredProcedureName": { + "type": "object", + "description": "SQL writer stored procedure name. Type: string (or Expression with resultType string)." + }, + "sqlWriterTableType": { + "type": "object", + "description": "SQL writer table type. Type: string (or Expression with resultType string)." + }, + "preCopyScript": { + "type": "object", + "description": "SQL pre-copy script. Type: string (or Expression with resultType string)." + }, + "storedProcedureParameters": { + "description": "SQL stored procedure parameters.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/StoredProcedureParameter" + } + }, + "storedProcedureTableTypeParameterName": { + "type": "object", + "description": "The stored procedure parameter name of the table type. Type: string (or Expression with resultType string)." + }, + "tableOption": { + "type": "object", + "description": "The option to handle sink table, such as autoCreate. For now only 'autoCreate' value is supported. Type: string (or Expression with resultType string)." + } + } + }, + "SqlDWSink": { + "description": "A copy activity SQL Data Warehouse sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "preCopyScript": { + "type": "object", + "description": "SQL pre-copy script. Type: string (or Expression with resultType string)." + }, + "allowPolyBase": { + "type": "object", + "description": "Indicates to use PolyBase to copy data into SQL Data Warehouse when applicable. Type: boolean (or Expression with resultType boolean)." + }, + "polyBaseSettings": { + "description": "Specifies PolyBase-related settings when allowPolyBase is true.", + "$ref": "#/definitions/PolybaseSettings" + }, + "allowCopyCommand": { + "type": "object", + "description": "Indicates to use Copy Command to copy data into SQL Data Warehouse. Type: boolean (or Expression with resultType boolean)." + }, + "copyCommandSettings": { + "description": "Specifies Copy Command related settings when allowCopyCommand is true.", + "$ref": "#/definitions/DWCopyCommandSettings" + }, + "tableOption": { + "type": "object", + "description": "The option to handle sink table, such as autoCreate. For now only 'autoCreate' value is supported. Type: string (or Expression with resultType string)." + } + } + }, + "PolybaseSettings": { + "description": "PolyBase settings.", + "type": "object", + "properties": { + "rejectType": { + "$ref": "#/definitions/PolybaseSettingsRejectType", + "description": "Reject type." + }, + "rejectValue": { + "type": "object", + "description": "Specifies the value or the percentage of rows that can be rejected before the query fails. Type: number (or Expression with resultType number), minimum: 0." + }, + "rejectSampleValue": { + "type": "object", + "description": "Determines the number of rows to attempt to retrieve before the PolyBase recalculates the percentage of rejected rows. Type: integer (or Expression with resultType integer), minimum: 0." + }, + "useTypeDefault": { + "type": "object", + "description": "Specifies how to handle missing values in delimited text files when PolyBase retrieves data from the text file. Type: boolean (or Expression with resultType boolean)." + } + }, + "additionalProperties": { + "type": "object" + } + }, + "PolybaseSettingsRejectType": { + "description": "Indicates whether the RejectValue property is specified as a literal value or a percentage.", + "type": "string", + "enum": [ + "value", + "percentage" + ], + "x-ms-enum": { + "name": "PolybaseSettingsRejectType", + "modelAsString": true + } + }, + "DWCopyCommandSettings": { + "description": "DW Copy Command settings.", + "type": "object", + "properties": { + "defaultValues": { + "type": "array", + "description": "Specifies the default values for each target column in SQL DW. The default values in the property overwrite the DEFAULT constraint set in the DB, and identity column cannot have a default value. Type: array of objects (or Expression with resultType array of objects).", + "items": { + "$ref": "#/definitions/DWCopyCommandDefaultValue" + } + }, + "additionalOptions": { + "type": "object", + "description": "Additional options directly passed to SQL DW in Copy Command. Type: key value pairs (value should be string type) (or Expression with resultType object). Example: \"additionalOptions\": { \"MAXERRORS\": \"1000\", \"DATEFORMAT\": \"'ymd'\" }", + "additionalProperties": { + "type": "string" + } + } + } + }, + "DWCopyCommandDefaultValue": { + "description": "Default value.", + "type": "object", + "properties": { + "columnName": { + "type": "object", + "description": "Column name. Type: object (or Expression with resultType string)." + }, + "defaultValue": { + "type": "object", + "description": "The default value of the column. Type: object (or Expression with resultType string)." + } + } + }, + "LogStorageSettings": { + "description": "Log storage settings.", + "type": "object", + "properties": { + "linkedServiceName": { + "description": "Log storage linked service reference.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "path": { + "type": "object", + "description": "The path to storage for storing detailed logs of activity execution. Type: string (or Expression with resultType string)." + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "linkedServiceName" + ] + }, + "StagingSettings": { + "description": "Staging settings.", + "type": "object", + "properties": { + "linkedServiceName": { + "description": "Staging linked service reference.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "path": { + "type": "object", + "description": "The path to storage for storing the interim data. Type: string (or Expression with resultType string)." + }, + "enableCompression": { + "type": "object", + "description": "Specifies whether to use compression when copying data via an interim staging. Default value is false. Type: boolean (or Expression with resultType boolean)." + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "linkedServiceName" + ] + }, + "RedirectIncompatibleRowSettings": { + "description": "Redirect incompatible row settings", + "type": "object", + "properties": { + "linkedServiceName": { + "type": "object", + "description": "Name of the Azure Storage, Storage SAS, or Azure Data Lake Store linked service used for redirecting incompatible row. Must be specified if redirectIncompatibleRowSettings is specified. Type: string (or Expression with resultType string)." + }, + "path": { + "type": "object", + "description": "The path for storing the redirect incompatible row data. Type: string (or Expression with resultType string)." + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "linkedServiceName" + ] + }, + "OracleSink": { + "description": "A copy activity Oracle sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "preCopyScript": { + "type": "object", + "description": "SQL pre-copy script. Type: string (or Expression with resultType string)." + } + } + }, + "AzureDataLakeStoreSink": { + "description": "A copy activity Azure Data Lake Store sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "copyBehavior": { + "description": "The type of copy behavior for copy sink.", + "type": "object" + }, + "enableAdlsSingleFileParallel": { + "description": "Single File Parallel.", + "type": "object" + } + } + }, + "AzureBlobFSSink": { + "description": "A copy activity Azure Data Lake Storage Gen2 sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "copyBehavior": { + "description": "The type of copy behavior for copy sink.", + "type": "object" + } + } + }, + "AzureSearchIndexSink": { + "description": "A copy activity Azure Search Index sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "writeBehavior": { + "description": "Specify the write behavior when upserting documents into Azure Search Index.", + "type": "string", + "enum": [ + "Merge", + "Upload" + ], + "x-ms-enum": { + "name": "AzureSearchIndexWriteBehaviorType", + "modelAsString": true + } + } + } + }, + "OdbcSink": { + "description": "A copy activity ODBC sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "preCopyScript": { + "type": "object", + "description": "A query to execute before starting the copy. Type: string (or Expression with resultType string)." + } + } + }, + "InformixSink": { + "description": "A copy activity Informix sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "preCopyScript": { + "type": "object", + "description": "A query to execute before starting the copy. Type: string (or Expression with resultType string)." + } + } + }, + "MicrosoftAccessSink": { + "description": "A copy activity Microsoft Access sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "preCopyScript": { + "type": "object", + "description": "A query to execute before starting the copy. Type: string (or Expression with resultType string)." + } + } + }, + "DynamicsSink": { + "description": "A copy activity Dynamics sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "writeBehavior": { + "description": "The write behavior for the operation.", + "type": "string", + "enum": [ + "Upsert" + ], + "x-ms-enum": { + "name": "DynamicsSinkWriteBehavior", + "modelAsString": true + } + }, + "ignoreNullValues": { + "type": "object", + "description": "The flag indicating whether ignore null values from input dataset (except key fields) during write operation. Default is false. Type: boolean (or Expression with resultType boolean)." + }, + "alternateKeyName": { + "type": "object", + "description": "The logical name of the alternate key which will be used when upserting records. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "writeBehavior" + ] + }, + "DynamicsCrmSink": { + "description": "A copy activity Dynamics CRM sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "writeBehavior": { + "description": "The write behavior for the operation.", + "type": "string", + "enum": [ + "Upsert" + ], + "x-ms-enum": { + "name": "DynamicsSinkWriteBehavior", + "modelAsString": true + } + }, + "ignoreNullValues": { + "type": "object", + "description": "The flag indicating whether to ignore null values from input dataset (except key fields) during write operation. Default is false. Type: boolean (or Expression with resultType boolean)." + }, + "alternateKeyName": { + "type": "object", + "description": "The logical name of the alternate key which will be used when upserting records. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "writeBehavior" + ] + }, + "CommonDataServiceForAppsSink": { + "description": "A copy activity Common Data Service for Apps sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "writeBehavior": { + "description": "The write behavior for the operation.", + "type": "string", + "enum": [ + "Upsert" + ], + "x-ms-enum": { + "name": "DynamicsSinkWriteBehavior", + "modelAsString": true + } + }, + "ignoreNullValues": { + "type": "object", + "description": "The flag indicating whether to ignore null values from input dataset (except key fields) during write operation. Default is false. Type: boolean (or Expression with resultType boolean)." + }, + "alternateKeyName": { + "type": "object", + "description": "The logical name of the alternate key which will be used when upserting records. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "writeBehavior" + ] + }, + "AzureDataExplorerSink": { + "description": "A copy activity Azure Data Explorer sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "ingestionMappingName": { + "type": "object", + "description": "A name of a pre-created csv mapping that was defined on the target Kusto table. Type: string." + }, + "ingestionMappingAsJson": { + "type": "object", + "description": "An explicit column mapping description provided in a json format. Type: string." + }, + "flushImmediately": { + "type": "object", + "description": "If set to true, any aggregation will be skipped. Default is false. Type: boolean." + } + } + }, + "SalesforceSink": { + "description": "A copy activity Salesforce sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "writeBehavior": { + "description": "The write behavior for the operation. Default is Insert.", + "type": "string", + "enum": [ + "Insert", + "Upsert" + ], + "x-ms-enum": { + "name": "SalesforceSinkWriteBehavior", + "modelAsString": true + } + }, + "externalIdFieldName": { + "type": "object", + "description": "The name of the external ID field for upsert operation. Default value is 'Id' column. Type: string (or Expression with resultType string)." + }, + "ignoreNullValues": { + "type": "object", + "description": "The flag indicating whether or not to ignore null values from input dataset (except key fields) during write operation. Default value is false. If set it to true, it means ADF will leave the data in the destination object unchanged when doing upsert/update operation and insert defined default value when doing insert operation, versus ADF will update the data in the destination object to NULL when doing upsert/update operation and insert NULL value when doing insert operation. Type: boolean (or Expression with resultType boolean)." + } + } + }, + "SalesforceServiceCloudSink": { + "description": "A copy activity Salesforce Service Cloud sink.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "writeBehavior": { + "description": "The write behavior for the operation. Default is Insert.", + "type": "string", + "enum": [ + "Insert", + "Upsert" + ], + "x-ms-enum": { + "name": "SalesforceSinkWriteBehavior", + "modelAsString": true + } + }, + "externalIdFieldName": { + "type": "object", + "description": "The name of the external ID field for upsert operation. Default value is 'Id' column. Type: string (or Expression with resultType string)." + }, + "ignoreNullValues": { + "type": "object", + "description": "The flag indicating whether or not to ignore null values from input dataset (except key fields) during write operation. Default value is false. If set it to true, it means ADF will leave the data in the destination object unchanged when doing upsert/update operation and insert defined default value when doing insert operation, versus ADF will update the data in the destination object to NULL when doing upsert/update operation and insert NULL value when doing insert operation. Type: boolean (or Expression with resultType boolean)." + } + } + }, + "CosmosDbMongoDbApiSink": { + "description": "A copy activity sink for a CosmosDB (MongoDB API) database.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopySink" + } + ], + "properties": { + "writeBehavior": { + "type": "object", + "description": "Specifies whether the document with same key to be overwritten (upsert) rather than throw exception (insert). The default value is \"insert\". Type: string (or Expression with resultType string). Type: string (or Expression with resultType string)." + } + } + }, + "CopyTranslator": { + "discriminator": "type", + "description": "A copy activity translator.", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Copy translator type." + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "TabularTranslator": { + "description": "A copy activity tabular translator.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CopyTranslator" + } + ], + "properties": { + "columnMappings": { + "type": "object", + "description": "Column mappings. Example: \"UserId: MyUserId, Group: MyGroup, Name: MyName\" Type: string (or Expression with resultType string). This property will be retired. Please use mappings property." + }, + "schemaMapping": { + "type": "object", + "description": "The schema mapping to map between tabular data and hierarchical data. Example: {\"Column1\": \"$.Column1\", \"Column2\": \"$.Column2.Property1\", \"Column3\": \"$.Column2.Property2\"}. Type: object (or Expression with resultType object). This property will be retired. Please use mappings property." + }, + "collectionReference": { + "type": "object", + "description": "The JSON Path of the Nested Array that is going to do cross-apply. Type: object (or Expression with resultType object)." + }, + "mapComplexValuesToString": { + "type": "object", + "description": "Whether to map complex (array and object) values to simple strings in json format. Type: boolean (or Expression with resultType boolean)." + }, + "mappings": { + "type": "object", + "description": "Column mappings with logical types. Tabular->tabular example: [{\"source\":{\"name\":\"CustomerName\",\"type\":\"String\"},\"sink\":{\"name\":\"ClientName\",\"type\":\"String\"}},{\"source\":{\"name\":\"CustomerAddress\",\"type\":\"String\"},\"sink\":{\"name\":\"ClientAddress\",\"type\":\"String\"}}]. Hierarchical->tabular example: [{\"source\":{\"path\":\"$.CustomerName\",\"type\":\"String\"},\"sink\":{\"name\":\"ClientName\",\"type\":\"String\"}},{\"source\":{\"path\":\"$.CustomerAddress\",\"type\":\"String\"},\"sink\":{\"name\":\"ClientAddress\",\"type\":\"String\"}}]. Type: object (or Expression with resultType object)." + } + } + }, + "HDInsightHiveActivity": { + "description": "HDInsight Hive activity type.", + "x-ms-discriminator-value": "HDInsightHive", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "x-ms-client-flatten": true, + "description": "HDInsight Hive activity properties.", + "$ref": "#/definitions/HDInsightHiveActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "HDInsightHiveActivityTypeProperties": { + "description": "HDInsight Hive activity properties.", + "properties": { + "storageLinkedServices": { + "description": "Storage linked service references.", + "type": "array", + "items": { + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + } + }, + "arguments": { + "description": "User specified arguments to HDInsightActivity.", + "type": "array", + "items": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "getDebugInfo": { + "$ref": "#/definitions/HDInsightActivityDebugInfoOption", + "description": "Debug info option." + }, + "scriptPath": { + "type": "object", + "description": "Script path. Type: string (or Expression with resultType string)." + }, + "scriptLinkedService": { + "description": "Script linked service reference.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "defines": { + "description": "Allows user to specify defines for Hive job request.", + "type": "object", + "additionalProperties": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "variables": { + "description": "User specified arguments under hivevar namespace.", + "type": "array", + "items": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "queryTimeout": { + "type": "integer", + "description": "Query timeout value (in minutes). Effective when the HDInsight cluster is with ESP (Enterprise Security Package)" + } + } + }, + "HDInsightActivityDebugInfoOption": { + "description": "The HDInsightActivityDebugInfoOption settings to use.", + "type": "string", + "enum": [ + "None", + "Always", + "Failure" + ], + "x-ms-enum": { + "name": "HDInsightActivityDebugInfoOption", + "modelAsString": true + } + }, + "HDInsightPigActivity": { + "description": "HDInsight Pig activity type.", + "x-ms-discriminator-value": "HDInsightPig", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "x-ms-client-flatten": true, + "description": "HDInsight Pig activity properties.", + "$ref": "#/definitions/HDInsightPigActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "HDInsightPigActivityTypeProperties": { + "description": "HDInsight Pig activity properties.", + "properties": { + "storageLinkedServices": { + "description": "Storage linked service references.", + "type": "array", + "items": { + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + } + }, + "arguments": { + "type": "object", + "description": "User specified arguments to HDInsightActivity. Type: array (or Expression with resultType array)." + }, + "getDebugInfo": { + "$ref": "#/definitions/HDInsightActivityDebugInfoOption", + "description": "Debug info option." + }, + "scriptPath": { + "type": "object", + "description": "Script path. Type: string (or Expression with resultType string)." + }, + "scriptLinkedService": { + "description": "Script linked service reference.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "defines": { + "description": "Allows user to specify defines for Pig job request.", + "type": "object", + "additionalProperties": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + } + } + }, + "HDInsightMapReduceActivity": { + "description": "HDInsight MapReduce activity type.", + "x-ms-discriminator-value": "HDInsightMapReduce", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "x-ms-client-flatten": true, + "description": "HDInsight MapReduce activity properties.", + "$ref": "#/definitions/HDInsightMapReduceActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "HDInsightMapReduceActivityTypeProperties": { + "description": "HDInsight MapReduce activity properties.", + "properties": { + "storageLinkedServices": { + "description": "Storage linked service references.", + "type": "array", + "items": { + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + } + }, + "arguments": { + "description": "User specified arguments to HDInsightActivity.", + "type": "array", + "items": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "getDebugInfo": { + "$ref": "#/definitions/HDInsightActivityDebugInfoOption", + "description": "Debug info option." + }, + "className": { + "type": "object", + "description": "Class name. Type: string (or Expression with resultType string)." + }, + "jarFilePath": { + "type": "object", + "description": "Jar path. Type: string (or Expression with resultType string)." + }, + "jarLinkedService": { + "description": "Jar linked service reference.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "jarLibs": { + "description": "Jar libs.", + "type": "array", + "items": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "defines": { + "description": "Allows user to specify defines for the MapReduce job request.", + "type": "object", + "additionalProperties": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + } + }, + "required": [ + "className", + "jarFilePath" + ] + }, + "HDInsightStreamingActivity": { + "description": "HDInsight streaming activity type.", + "x-ms-discriminator-value": "HDInsightStreaming", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "x-ms-client-flatten": true, + "description": "HDInsight streaming activity properties.", + "$ref": "#/definitions/HDInsightStreamingActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "HDInsightStreamingActivityTypeProperties": { + "description": "HDInsight streaming activity properties.", + "properties": { + "storageLinkedServices": { + "description": "Storage linked service references.", + "type": "array", + "items": { + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + } + }, + "arguments": { + "description": "User specified arguments to HDInsightActivity.", + "type": "array", + "items": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "getDebugInfo": { + "$ref": "#/definitions/HDInsightActivityDebugInfoOption", + "description": "Debug info option." + }, + "mapper": { + "type": "object", + "description": "Mapper executable name. Type: string (or Expression with resultType string)." + }, + "reducer": { + "type": "object", + "description": "Reducer executable name. Type: string (or Expression with resultType string)." + }, + "input": { + "type": "object", + "description": "Input blob path. Type: string (or Expression with resultType string)." + }, + "output": { + "type": "object", + "description": "Output blob path. Type: string (or Expression with resultType string)." + }, + "filePaths": { + "description": "Paths to streaming job files. Can be directories.", + "type": "array", + "items": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "fileLinkedService": { + "description": "Linked service reference where the files are located.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "combiner": { + "type": "object", + "description": "Combiner executable name. Type: string (or Expression with resultType string)." + }, + "commandEnvironment": { + "description": "Command line environment values.", + "type": "array", + "items": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "defines": { + "description": "Allows user to specify defines for streaming job request.", + "type": "object", + "additionalProperties": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + } + }, + "required": [ + "mapper", + "reducer", + "input", + "output", + "filePaths" + ] + }, + "HDInsightSparkActivity": { + "description": "HDInsight Spark activity.", + "x-ms-discriminator-value": "HDInsightSpark", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "x-ms-client-flatten": true, + "description": "HDInsight spark activity properties.", + "$ref": "#/definitions/HDInsightSparkActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "HDInsightSparkActivityTypeProperties": { + "description": "HDInsight spark activity properties.", + "properties": { + "rootPath": { + "type": "object", + "description": "The root path in 'sparkJobLinkedService' for all the job’s files. Type: string (or Expression with resultType string)." + }, + "entryFilePath": { + "type": "object", + "description": "The relative path to the root folder of the code/package to be executed. Type: string (or Expression with resultType string)." + }, + "arguments": { + "description": "The user-specified arguments to HDInsightSparkActivity.", + "type": "array", + "items": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "getDebugInfo": { + "$ref": "#/definitions/HDInsightActivityDebugInfoOption", + "description": "Debug info option." + }, + "sparkJobLinkedService": { + "description": "The storage linked service for uploading the entry file and dependencies, and for receiving logs.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "className": { + "description": "The application's Java/Spark main class.", + "type": "string" + }, + "proxyUser": { + "type": "object", + "description": "The user to impersonate that will execute the job. Type: string (or Expression with resultType string)." + }, + "sparkConfig": { + "description": "Spark configuration property.", + "type": "object", + "additionalProperties": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + } + }, + "required": [ + "rootPath", + "entryFilePath" + ] + }, + "ExecuteSSISPackageActivity": { + "description": "Execute SSIS package activity.", + "x-ms-discriminator-value": "ExecuteSSISPackage", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "x-ms-client-flatten": true, + "description": "Execute SSIS package activity properties.", + "$ref": "#/definitions/ExecuteSSISPackageActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "ExecuteSSISPackageActivityTypeProperties": { + "description": "Execute SSIS package activity properties.", + "properties": { + "packageLocation": { + "description": "SSIS package location.", + "$ref": "#/definitions/SSISPackageLocation" + }, + "runtime": { + "description": "Specifies the runtime to execute SSIS package. The value should be \"x86\" or \"x64\". Type: string (or Expression with resultType string).", + "type": "object" + }, + "loggingLevel": { + "description": "The logging level of SSIS package execution. Type: string (or Expression with resultType string).", + "type": "object" + }, + "environmentPath": { + "description": "The environment path to execute the SSIS package. Type: string (or Expression with resultType string).", + "type": "object" + }, + "executionCredential": { + "description": "The package execution credential.", + "$ref": "#/definitions/SSISExecutionCredential" + }, + "connectVia": { + "description": "The integration runtime reference.", + "$ref": "../datafactory.json#/definitions/IntegrationRuntimeReference" + }, + "projectParameters": { + "description": "The project level parameters to execute the SSIS package.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/SSISExecutionParameter" + } + }, + "packageParameters": { + "description": "The package level parameters to execute the SSIS package.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/SSISExecutionParameter" + } + }, + "projectConnectionManagers": { + "description": "The project level connection managers to execute the SSIS package.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/SSISConnectionManager" + } + }, + "packageConnectionManagers": { + "description": "The package level connection managers to execute the SSIS package.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/SSISConnectionManager" + } + }, + "propertyOverrides": { + "description": "The property overrides to execute the SSIS package.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/SSISPropertyOverride" + } + }, + "logLocation": { + "description": "SSIS package execution log location.", + "$ref": "#/definitions/SSISLogLocation" + } + }, + "required": [ + "packageLocation", + "connectVia" + ] + }, + "SSISPackageLocation": { + "description": "SSIS package location.", + "type": "object", + "properties": { + "packagePath": { + "description": "The SSIS package path. Type: string (or Expression with resultType string).", + "type": "object" + }, + "type": { + "description": "The type of SSIS package location.", + "type": "string", + "enum": [ + "SSISDB", + "File", + "InlinePackage" + ], + "x-ms-enum": { + "name": "SsisPackageLocationType", + "modelAsString": true + } + }, + "typeProperties": { + "x-ms-client-flatten": true, + "description": "SSIS package location properties.", + "$ref": "#/definitions/SSISPackageLocationTypeProperties" + } + } + }, + "SSISPackageLocationTypeProperties": { + "description": "SSIS package location properties.", + "type": "object", + "properties": { + "packagePassword": { + "$ref": "../datafactory.json#/definitions/SecretBase", + "description": "Password of the package." + }, + "accessCredential": { + "description": "The package access credential.", + "$ref": "#/definitions/SSISAccessCredential" + }, + "configurationPath": { + "description": "The configuration file of the package execution. Type: string (or Expression with resultType string).", + "type": "object" + }, + "packageName": { + "description": "The package name.", + "type": "string" + }, + "packageContent": { + "description": "The embedded package content. Type: string (or Expression with resultType string).", + "type": "object" + }, + "packageLastModifiedDate": { + "description": "The embedded package last modified date.", + "type": "string" + }, + "childPackages": { + "description": "The embedded child package list.", + "type": "array", + "items": { + "$ref": "#/definitions/SSISChildPackage" + } + } + } + }, + "SSISConnectionManager": { + "description": "SSIS Connection Manager.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/SSISExecutionParameter" + } + }, + "SSISExecutionParameter": { + "description": "SSIS execution parameter.", + "type": "object", + "properties": { + "value": { + "type": "object", + "description": "SSIS package execution parameter value. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "value" + ] + }, + "SSISPropertyOverride": { + "description": "SSIS property override.", + "type": "object", + "properties": { + "value": { + "type": "object", + "description": "SSIS package property override value. Type: string (or Expression with resultType string)." + }, + "isSensitive": { + "type": "boolean", + "description": "Whether SSIS package property override value is sensitive data. Value will be encrypted in SSISDB if it is true" + } + }, + "required": [ + "value" + ] + }, + "SSISExecutionCredential": { + "description": "SSIS package execution credential.", + "type": "object", + "properties": { + "domain": { + "type": "object", + "description": "Domain for windows authentication." + }, + "userName": { + "type": "object", + "description": "UseName for windows authentication." + }, + "password": { + "$ref": "../datafactory.json#/definitions/SecureString", + "description": "Password for windows authentication." + } + }, + "required": [ + "domain", + "userName", + "password" + ] + }, + "SSISAccessCredential": { + "description": "SSIS access credential.", + "type": "object", + "properties": { + "domain": { + "type": "object", + "description": "Domain for windows authentication." + }, + "userName": { + "type": "object", + "description": "UseName for windows authentication." + }, + "password": { + "$ref": "../datafactory.json#/definitions/SecretBase", + "description": "Password for windows authentication." + } + }, + "required": [ + "domain", + "userName", + "password" + ] + }, + "SSISChildPackage": { + "description": "SSIS embedded child package.", + "type": "object", + "properties": { + "packagePath": { + "type": "object", + "description": "Path for embedded child package. Type: string (or Expression with resultType string)." + }, + "packageName": { + "type": "string", + "description": "Name for embedded child package." + }, + "packageContent": { + "type": "object", + "description": "Content for embedded child package. Type: string (or Expression with resultType string)." + }, + "packageLastModifiedDate": { + "type": "string", + "description": "Last modified date for embedded child package." + } + }, + "required": [ + "packagePath", + "packageContent" + ] + }, + "SSISLogLocation": { + "description": "SSIS package execution log location", + "type": "object", + "properties": { + "logPath": { + "description": "The SSIS package execution log path. Type: string (or Expression with resultType string).", + "type": "object" + }, + "type": { + "description": "The type of SSIS log location.", + "type": "string", + "enum": [ + "File" + ], + "x-ms-enum": { + "name": "SsisLogLocationType", + "modelAsString": true + } + }, + "typeProperties": { + "x-ms-client-flatten": true, + "description": "SSIS package execution log location properties.", + "$ref": "#/definitions/SSISLogLocationTypeProperties" + } + }, + "required": [ + "logPath", + "type", + "typeProperties" + ] + }, + "SSISLogLocationTypeProperties": { + "description": "SSIS package execution log location properties.", + "type": "object", + "properties": { + "accessCredential": { + "description": "The package execution log access credential.", + "$ref": "#/definitions/SSISAccessCredential" + }, + "logRefreshInterval": { + "type": "object", + "description": "Specifies the interval to refresh log. The default interval is 5 minutes. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + } + } + }, + "CustomActivity": { + "description": "Custom activity type.", + "x-ms-discriminator-value": "Custom", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "x-ms-client-flatten": true, + "description": "Custom activity properties.", + "$ref": "#/definitions/CustomActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "CustomActivityTypeProperties": { + "description": "Custom activity properties.", + "properties": { + "command": { + "type": "object", + "description": "Command for custom activity Type: string (or Expression with resultType string)." + }, + "resourceLinkedService": { + "description": "Resource linked service reference.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "folderPath": { + "type": "object", + "description": "Folder path for resource files Type: string (or Expression with resultType string)." + }, + "referenceObjects": { + "description": "Reference objects", + "$ref": "#/definitions/CustomActivityReferenceObject" + }, + "extendedProperties": { + "description": "User defined property bag. There is no restriction on the keys or values that can be used. The user specified custom activity has the full responsibility to consume and interpret the content defined.", + "type": "object", + "additionalProperties": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "retentionTimeInDays": { + "type": "object", + "description": "The retention time for the files submitted for custom activity. Type: double (or Expression with resultType double)." + } + }, + "required": [ + "command" + ] + }, + "CustomActivityReferenceObject": { + "description": "Reference objects for custom activity", + "properties": { + "linkedServices": { + "description": "Linked service references.", + "type": "array", + "items": { + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + } + }, + "datasets": { + "description": "Dataset references.", + "type": "array", + "items": { + "$ref": "../datafactory.json#/definitions/DatasetReference" + } + } + } + }, + "SqlServerStoredProcedureActivity": { + "description": "SQL stored procedure activity type.", + "x-ms-discriminator-value": "SqlServerStoredProcedure", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "x-ms-client-flatten": true, + "description": "SQL stored procedure activity properties.", + "$ref": "#/definitions/SqlServerStoredProcedureActivityTypeProperties" + } + }, + "required": [ + "typeProperties", + "linkedServiceName" + ] + }, + "SqlServerStoredProcedureActivityTypeProperties": { + "description": "SQL stored procedure activity properties.", + "properties": { + "storedProcedureName": { + "type": "object", + "description": "Stored procedure name. Type: string (or Expression with resultType string)." + }, + "storedProcedureParameters": { + "description": "Value and type setting for stored procedure parameters. Example: \"{Parameter1: {value: \"1\", type: \"int\"}}\".", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/StoredProcedureParameter" + } + } + }, + "required": [ + "storedProcedureName" + ] + }, + "ExecutePipelineActivity": { + "x-ms-discriminator-value": "ExecutePipeline", + "description": "Execute pipeline activity.", + "allOf": [ + { + "$ref": "#/definitions/ControlActivity" + } + ], + "properties": { + "typeProperties": { + "description": "Execute pipeline activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ExecutePipelineActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "ExecutePipelineActivityTypeProperties": { + "description": "Execute pipeline activity properties.", + "properties": { + "pipeline": { + "description": "Pipeline reference.", + "$ref": "../datafactory.json#/definitions/PipelineReference" + }, + "parameters": { + "description": "Pipeline parameters.", + "$ref": "../datafactory.json#/definitions/ParameterValueSpecification" + }, + "waitOnCompletion": { + "description": "Defines whether activity execution will wait for the dependent pipeline execution to finish. Default is false.", + "type": "boolean" + } + }, + "required": [ + "pipeline" + ] + }, + "DeleteActivity": { + "x-ms-discriminator-value": "Delete", + "description": "Delete activity.", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "description": "Delete activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/DeleteActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "DeleteActivityTypeProperties": { + "description": "Delete activity properties.", + "properties": { + "recursive": { + "type": "object", + "description": "If true, files or sub-folders under current folder path will be deleted recursively. Default is false. Type: boolean (or Expression with resultType boolean)." + }, + "maxConcurrentConnections": { + "type": "integer", + "minimum": 1, + "description": "The max concurrent connections to connect data source at the same time." + }, + "enableLogging": { + "type": "object", + "description": "Whether to record detailed logs of delete-activity execution. Default value is false. Type: boolean (or Expression with resultType boolean)." + }, + "logStorageSettings": { + "description": "Log storage settings customer need to provide when enableLogging is true.", + "$ref": "#/definitions/LogStorageSettings" + }, + "dataset": { + "description": "Delete activity dataset reference.", + "$ref": "../datafactory.json#/definitions/DatasetReference" + } + }, + "required": [ + "dataset" + ] + }, + "AzureDataExplorerCommandActivity": { + "x-ms-discriminator-value": "AzureDataExplorerCommand", + "description": "Azure Data Explorer command activity.", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Data Explorer command activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureDataExplorerCommandActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureDataExplorerCommandActivityTypeProperties": { + "description": "Azure Data Explorer command activity properties.", + "properties": { + "command": { + "type": "object", + "description": "A control command, according to the Azure Data Explorer command syntax. Type: string (or Expression with resultType string)." + }, + "commandTimeout": { + "type": "object", + "description": "Control command timeout. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))..)" + } + }, + "required": [ + "command" + ] + }, + "LookupActivity": { + "x-ms-discriminator-value": "Lookup", + "description": "Lookup activity.", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "description": "Lookup activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/LookupActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "LookupActivityTypeProperties": { + "description": "Lookup activity properties.", + "properties": { + "source": { + "description": "Dataset-specific source properties, same as copy activity source.", + "$ref": "#/definitions/CopySource" + }, + "dataset": { + "description": "Lookup activity dataset reference.", + "$ref": "../datafactory.json#/definitions/DatasetReference" + }, + "firstRowOnly": { + "type": "object", + "description": "Whether to return first row or all rows. Default value is true. Type: boolean (or Expression with resultType boolean)." + } + }, + "required": [ + "source", + "dataset" + ] + }, + "WebActivityMethod": { + "description": "The list of HTTP methods supported by a WebActivity.", + "type": "string", + "enum": [ + "GET", + "POST", + "PUT", + "DELETE" + ], + "x-ms-enum": { + "name": "WebActivityMethod", + "modelAsString": true + } + }, + "WebActivity": { + "x-ms-discriminator-value": "WebActivity", + "description": "Web activity.", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "description": "Web activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/WebActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "WebActivityAuthentication": { + "description": "Web activity authentication properties.", + "properties": { + "type": { + "description": "Web activity authentication (Basic/ClientCertificate/MSI)", + "type": "string" + }, + "pfx": { + "description": "Base64-encoded contents of a PFX file.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "username": { + "description": "Web activity authentication user name for basic authentication.", + "type": "string" + }, + "password": { + "description": "Password for the PFX file or basic authentication.", + "$ref": "../datafactory.json#/definitions/SecretBase" + }, + "resource": { + "description": "Resource for which Azure Auth token will be requested when using MSI Authentication.", + "type": "string" + } + }, + "required": [ + "type" + ] + }, + "WebActivityTypeProperties": { + "description": "Web activity type properties.", + "properties": { + "method": { + "description": "Rest API method for target endpoint.", + "$ref": "#/definitions/WebActivityMethod" + }, + "url": { + "type": "object", + "description": "Web activity target endpoint and path. Type: string (or Expression with resultType string)." + }, + "headers": { + "type": "object", + "description": "Represents the headers that will be sent to the request. For example, to set the language and type on a request: \"headers\" : { \"Accept-Language\": \"en-us\", \"Content-Type\": \"application/json\" }. Type: string (or Expression with resultType string)." + }, + "body": { + "type": "object", + "description": "Represents the payload that will be sent to the endpoint. Required for POST/PUT method, not allowed for GET method Type: string (or Expression with resultType string)." + }, + "authentication": { + "description": "Authentication method used for calling the endpoint.", + "$ref": "#/definitions/WebActivityAuthentication" + }, + "datasets": { + "type": "array", + "description": "List of datasets passed to web endpoint.", + "items": { + "$ref": "../datafactory.json#/definitions/DatasetReference" + } + }, + "linkedServices": { + "type": "array", + "description": "List of linked services passed to web endpoint.", + "items": { + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + } + }, + "connectVia": { + "description": "The integration runtime reference.", + "$ref": "../datafactory.json#/definitions/IntegrationRuntimeReference" + } + }, + "required": [ + "method", + "url" + ] + }, + "GetMetadataActivity": { + "x-ms-discriminator-value": "GetMetadata", + "description": "Activity to get metadata of dataset", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "description": "GetMetadata activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/GetMetadataActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "GetMetadataActivityTypeProperties": { + "description": "GetMetadata activity properties.", + "properties": { + "dataset": { + "description": "GetMetadata activity dataset reference.", + "$ref": "../datafactory.json#/definitions/DatasetReference" + }, + "fieldList": { + "description": "Fields of metadata to get from dataset.", + "type": "array", + "items": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + } + }, + "required": [ + "dataset" + ] + }, + "IfConditionActivity": { + "x-ms-discriminator-value": "IfCondition", + "description": "This activity evaluates a boolean expression and executes either the activities under the ifTrueActivities property or the ifFalseActivities property depending on the result of the expression.", + "allOf": [ + { + "$ref": "#/definitions/ControlActivity" + } + ], + "properties": { + "typeProperties": { + "description": "IfCondition activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/IfConditionActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "IfConditionActivityTypeProperties": { + "description": "IfCondition activity properties.", + "properties": { + "expression": { + "description": "An expression that would evaluate to Boolean. This is used to determine the block of activities (ifTrueActivities or ifFalseActivities) that will be executed.", + "$ref": "../datafactory.json#/definitions/Expression" + }, + "ifTrueActivities": { + "type": "array", + "description": "List of activities to execute if expression is evaluated to true. This is an optional property and if not provided, the activity will exit without any action.", + "items": { + "$ref": "#/definitions/Activity" + } + }, + "ifFalseActivities": { + "type": "array", + "description": "List of activities to execute if expression is evaluated to false. This is an optional property and if not provided, the activity will exit without any action.", + "items": { + "$ref": "#/definitions/Activity" + } + } + }, + "required": [ + "expression" + ] + }, + "SwitchActivity": { + "x-ms-discriminator-value": "Switch", + "description": "This activity evaluates an expression and executes activities under the cases property that correspond to the expression evaluation expected in the equals property.", + "allOf": [ + { + "$ref": "#/definitions/ControlActivity" + } + ], + "properties": { + "typeProperties": { + "description": "Switch activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SwitchActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SwitchActivityTypeProperties": { + "description": "Switch activity properties.", + "properties": { + "on": { + "description": "An expression that would evaluate to a string or integer. This is used to determine the block of activities in cases that will be executed.", + "$ref": "../datafactory.json#/definitions/Expression" + }, + "cases": { + "type": "array", + "description": "List of cases that correspond to expected values of the 'on' property. This is an optional property and if not provided, the activity will execute activities provided in defaultActivities.", + "items": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SwitchCase" + } + }, + "defaultActivities": { + "type": "array", + "description": "List of activities to execute if no case condition is satisfied. This is an optional property and if not provided, the activity will exit without any action.", + "items": { + "$ref": "#/definitions/Activity" + } + } + }, + "required": [ + "on" + ] + }, + "SwitchCase": { + "description": "Switch cases with have a value and corresponding activities.", + "properties": { + "value": { + "description": "Expected value that satisfies the expression result of the 'on' property.", + "type": "string" + }, + "activities": { + "type": "array", + "description": "List of activities to execute for satisfied case condition.", + "items": { + "$ref": "#/definitions/Activity" + } + } + } + }, + "ForEachActivity": { + "x-ms-discriminator-value": "ForEach", + "description": "This activity is used for iterating over a collection and execute given activities.", + "allOf": [ + { + "$ref": "#/definitions/ControlActivity" + } + ], + "properties": { + "typeProperties": { + "description": "ForEach activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ForEachActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "ForEachActivityTypeProperties": { + "description": "ForEach activity properties.", + "properties": { + "isSequential": { + "description": "Should the loop be executed in sequence or in parallel (max 50)", + "type": "boolean" + }, + "batchCount": { + "description": "Batch count to be used for controlling the number of parallel execution (when isSequential is set to false).", + "type": "integer", + "maximum": 50 + }, + "items": { + "description": "Collection to iterate.", + "$ref": "../datafactory.json#/definitions/Expression" + }, + "activities": { + "type": "array", + "description": "List of activities to execute .", + "items": { + "$ref": "#/definitions/Activity" + } + } + }, + "required": [ + "items", + "activities" + ] + }, + "AzureMLBatchExecutionActivity": { + "description": "Azure ML Batch Execution activity.", + "x-ms-discriminator-value": "AzureMLBatchExecution", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "x-ms-client-flatten": true, + "description": "Azure ML Batch Execution activity properties.", + "$ref": "#/definitions/AzureMLBatchExecutionActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureMLBatchExecutionActivityTypeProperties": { + "description": "Azure ML Batch Execution activity properties.", + "properties": { + "globalParameters": { + "description": "Key,Value pairs to be passed to the Azure ML Batch Execution Service endpoint. Keys must match the names of web service parameters defined in the published Azure ML web service. Values will be passed in the GlobalParameters property of the Azure ML batch execution request.", + "type": "object", + "additionalProperties": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "webServiceOutputs": { + "description": "Key,Value pairs, mapping the names of Azure ML endpoint's Web Service Outputs to AzureMLWebServiceFile objects specifying the output Blob locations. This information will be passed in the WebServiceOutputs property of the Azure ML batch execution request.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/AzureMLWebServiceFile" + } + }, + "webServiceInputs": { + "description": "Key,Value pairs, mapping the names of Azure ML endpoint's Web Service Inputs to AzureMLWebServiceFile objects specifying the input Blob locations.. This information will be passed in the WebServiceInputs property of the Azure ML batch execution request.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/AzureMLWebServiceFile" + } + } + } + }, + "AzureMLWebServiceFile": { + "description": "Azure ML WebService Input/Output file", + "type": "object", + "properties": { + "filePath": { + "type": "object", + "description": "The relative file path, including container name, in the Azure Blob Storage specified by the LinkedService. Type: string (or Expression with resultType string)." + }, + "linkedServiceName": { + "description": "Reference to an Azure Storage LinkedService, where Azure ML WebService Input/Output file located.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + } + }, + "required": [ + "linkedServiceName", + "filePath" + ] + }, + "AzureMLUpdateResourceActivity": { + "description": "Azure ML Update Resource management activity.", + "x-ms-discriminator-value": "AzureMLUpdateResource", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "x-ms-client-flatten": true, + "description": "Azure ML Update Resource management activity properties.", + "$ref": "#/definitions/AzureMLUpdateResourceActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureMLUpdateResourceActivityTypeProperties": { + "description": "Azure ML Update Resource activity properties.", + "properties": { + "trainedModelName": { + "type": "object", + "description": "Name of the Trained Model module in the Web Service experiment to be updated. Type: string (or Expression with resultType string)." + }, + "trainedModelLinkedServiceName": { + "description": "Name of Azure Storage linked service holding the .ilearner file that will be uploaded by the update operation.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "trainedModelFilePath": { + "type": "object", + "description": "The relative file path in trainedModelLinkedService to represent the .ilearner file that will be uploaded by the update operation. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "trainedModelName", + "trainedModelLinkedServiceName", + "trainedModelFilePath" + ] + }, + "AzureMLExecutePipelineActivity": { + "description": "Azure ML Execute Pipeline activity.", + "x-ms-discriminator-value": "AzureMLExecutePipeline", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "x-ms-client-flatten": true, + "description": "Azure ML Execute Pipeline activity properties.", + "$ref": "#/definitions/AzureMLExecutePipelineActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureMLExecutePipelineActivityTypeProperties": { + "description": "Azure ML Execute Pipeline activity properties.", + "properties": { + "mlPipelineId": { + "description": "ID of the published Azure ML pipeline. Type: string (or Expression with resultType string).", + "type": "object" + }, + "experimentName": { + "description": "Run history experiment name of the pipeline run. This information will be passed in the ExperimentName property of the published pipeline execution request. Type: string (or Expression with resultType string).", + "type": "object" + }, + "mlPipelineParameters": { + "description": "Key,Value pairs to be passed to the published Azure ML pipeline endpoint. Keys must match the names of pipeline parameters defined in the published pipeline. Values will be passed in the ParameterAssignments property of the published pipeline execution request. Type: object with key value pairs (or Expression with resultType object).", + "type": "object" + }, + "mlParentRunId": { + "description": "The parent Azure ML Service pipeline run id. This information will be passed in the ParentRunId property of the published pipeline execution request. Type: string (or Expression with resultType string).", + "type": "object" + }, + "continueOnStepFailure": { + "description": "Whether to continue execution of other steps in the PipelineRun if a step fails. This information will be passed in the continueOnStepFailure property of the published pipeline execution request. Type: boolean (or Expression with resultType boolean).", + "type": "object" + } + }, + "required": [ + "mlPipelineId" + ] + }, + "AzureMLPipelineParameters": { + "description": "Key,Value pairs to be passed to the published Azure ML pipeline endpoint. Keys must match the names of pipeline parameters defined in the published pipeline. Values will be passed in the ParameterAssignments property of the published pipeline execution request.", + "type": "object", + "additionalProperties": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "DataLakeAnalyticsUSQLActivity": { + "description": "Data Lake Analytics U-SQL activity.", + "x-ms-discriminator-value": "DataLakeAnalyticsU-SQL", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "x-ms-client-flatten": true, + "description": "Data Lake Analytics U-SQL activity properties.", + "$ref": "#/definitions/DataLakeAnalyticsUSQLActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "DataLakeAnalyticsUSQLActivityTypeProperties": { + "description": "DataLakeAnalyticsU-SQL activity properties.", + "properties": { + "scriptPath": { + "type": "object", + "description": "Case-sensitive path to folder that contains the U-SQL script. Type: string (or Expression with resultType string)." + }, + "scriptLinkedService": { + "description": "Script linked service reference.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + }, + "degreeOfParallelism": { + "type": "object", + "description": "The maximum number of nodes simultaneously used to run the job. Default value is 1. Type: integer (or Expression with resultType integer), minimum: 1." + }, + "priority": { + "type": "object", + "description": "Determines which jobs out of all that are queued should be selected to run first. The lower the number, the higher the priority. Default value is 1000. Type: integer (or Expression with resultType integer), minimum: 1." + }, + "parameters": { + "description": "Parameters for U-SQL job request.", + "type": "object", + "additionalProperties": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "runtimeVersion": { + "type": "object", + "description": "Runtime version of the U-SQL engine to use. Type: string (or Expression with resultType string)." + }, + "compilationMode": { + "type": "object", + "description": "Compilation mode of U-SQL. Must be one of these values : Semantic, Full and SingleBox. Type: string (or Expression with resultType string)." + } + }, + "required": [ + "scriptPath", + "scriptLinkedService" + ] + }, + "WaitActivity": { + "x-ms-discriminator-value": "Wait", + "description": "This activity suspends pipeline execution for the specified interval.", + "allOf": [ + { + "$ref": "#/definitions/ControlActivity" + } + ], + "properties": { + "typeProperties": { + "description": "Wait activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/WaitActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "WaitActivityTypeProperties": { + "description": "Wait activity properties.", + "properties": { + "waitTimeInSeconds": { + "description": "Duration in seconds.", + "type": "integer" + } + }, + "required": [ + "waitTimeInSeconds" + ] + }, + "UntilActivity": { + "x-ms-discriminator-value": "Until", + "description": "This activity executes inner activities until the specified boolean expression results to true or timeout is reached, whichever is earlier.", + "allOf": [ + { + "$ref": "#/definitions/ControlActivity" + } + ], + "properties": { + "typeProperties": { + "description": "Until activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/UntilActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "UntilActivityTypeProperties": { + "description": "Until activity properties.", + "properties": { + "expression": { + "description": "An expression that would evaluate to Boolean. The loop will continue until this expression evaluates to true", + "$ref": "../datafactory.json#/definitions/Expression" + }, + "timeout": { + "type": "object", + "description": "Specifies the timeout for the activity to run. If there is no value specified, it takes the value of TimeSpan.FromDays(7) which is 1 week as default. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9])). Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + }, + "activities": { + "type": "array", + "description": "List of activities to execute.", + "items": { + "$ref": "#/definitions/Activity" + } + } + }, + "required": [ + "expression", + "activities" + ] + }, + "ValidationActivity": { + "x-ms-discriminator-value": "Validation", + "description": "This activity verifies that an external resource exists.", + "allOf": [ + { + "$ref": "#/definitions/ControlActivity" + } + ], + "properties": { + "typeProperties": { + "description": "Validation activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ValidationActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "ValidationActivityTypeProperties": { + "description": "Validation activity properties.", + "properties": { + "timeout": { + "type": "object", + "description": "Specifies the timeout for the activity to run. If there is no value specified, it takes the value of TimeSpan.FromDays(7) which is 1 week as default. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + }, + "sleep": { + "type": "object", + "description": "A delay in seconds between validation attempts. If no value is specified, 10 seconds will be used as the default. Type: integer (or Expression with resultType integer)." + }, + "minimumSize": { + "type": "object", + "description": "Can be used if dataset points to a file. The file must be greater than or equal in size to the value specified. Type: integer (or Expression with resultType integer)." + }, + "childItems": { + "type": "object", + "description": "Can be used if dataset points to a folder. If set to true, the folder must have at least one file. If set to false, the folder must be empty. Type: boolean (or Expression with resultType boolean)." + }, + "dataset": { + "description": "Validation activity dataset reference.", + "$ref": "../datafactory.json#/definitions/DatasetReference" + } + }, + "required": [ + "dataset" + ] + }, + "FilterActivity": { + "x-ms-discriminator-value": "Filter", + "description": "Filter and return results from input array based on the conditions.", + "allOf": [ + { + "$ref": "#/definitions/ControlActivity" + } + ], + "properties": { + "typeProperties": { + "description": "Filter activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/FilterActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "FilterActivityTypeProperties": { + "description": "Filter activity properties.", + "properties": { + "items": { + "description": "Input array on which filter should be applied.", + "$ref": "../datafactory.json#/definitions/Expression" + }, + "condition": { + "description": "Condition to be used for filtering the input.", + "$ref": "../datafactory.json#/definitions/Expression" + } + }, + "required": [ + "condition", + "items" + ] + }, + "DatabricksNotebookActivity": { + "description": "DatabricksNotebook activity.", + "x-ms-discriminator-value": "DatabricksNotebook", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "x-ms-client-flatten": true, + "description": "Databricks Notebook activity properties.", + "$ref": "#/definitions/DatabricksNotebookActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "DatabricksNotebookActivityTypeProperties": { + "description": "Databricks Notebook activity properties.", + "properties": { + "notebookPath": { + "type": "object", + "description": "The absolute path of the notebook to be run in the Databricks Workspace. This path must begin with a slash. Type: string (or Expression with resultType string)." + }, + "baseParameters": { + "description": "Base parameters to be used for each run of this job.If the notebook takes a parameter that is not specified, the default value from the notebook will be used.", + "type": "object", + "additionalProperties": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "libraries": { + "description": "A list of libraries to be installed on the cluster that will execute the job.", + "type": "array", + "items": { + "type": "object", + "description": "Databricks library definition.", + "additionalProperties": { + "type": "object" + } + } + } + }, + "required": [ + "notebookPath" + ] + }, + "DatabricksSparkJarActivity": { + "description": "DatabricksSparkJar activity.", + "x-ms-discriminator-value": "DatabricksSparkJar", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "x-ms-client-flatten": true, + "description": "Databricks SparkJar activity properties.", + "$ref": "#/definitions/DatabricksSparkJarActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "DatabricksSparkJarActivityTypeProperties": { + "description": "Databricks SparkJar activity properties.", + "properties": { + "mainClassName": { + "type": "object", + "description": "The full name of the class containing the main method to be executed. This class must be contained in a JAR provided as a library. Type: string (or Expression with resultType string)." + }, + "parameters": { + "description": "Parameters that will be passed to the main method.", + "type": "array", + "items": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "libraries": { + "description": "A list of libraries to be installed on the cluster that will execute the job.", + "type": "array", + "items": { + "type": "object", + "description": "Databricks library definition.", + "additionalProperties": { + "type": "object" + } + } + } + }, + "required": [ + "mainClassName" + ] + }, + "DatabricksSparkPythonActivity": { + "description": "DatabricksSparkPython activity.", + "x-ms-discriminator-value": "DatabricksSparkPython", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "x-ms-client-flatten": true, + "description": "Databricks SparkPython activity properties.", + "$ref": "#/definitions/DatabricksSparkPythonActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "DatabricksSparkPythonActivityTypeProperties": { + "description": "Databricks SparkPython activity properties.", + "properties": { + "pythonFile": { + "type": "object", + "description": "The URI of the Python file to be executed. DBFS paths are supported. Type: string (or Expression with resultType string)." + }, + "parameters": { + "description": "Command line parameters that will be passed to the Python file.", + "type": "array", + "items": { + "type": "object", + "description": "Type: string (or Expression with resultType string)." + } + }, + "libraries": { + "description": "A list of libraries to be installed on the cluster that will execute the job.", + "type": "array", + "items": { + "type": "object", + "description": "Databricks library definition.", + "additionalProperties": { + "type": "object" + } + } + } + }, + "required": [ + "pythonFile" + ] + }, + "SetVariableActivity": { + "x-ms-discriminator-value": "SetVariable", + "description": "Set value for a Variable.", + "allOf": [ + { + "$ref": "#/definitions/ControlActivity" + } + ], + "properties": { + "typeProperties": { + "description": "Set Variable activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SetVariableActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SetVariableActivityTypeProperties": { + "description": "SetVariable activity properties.", + "properties": { + "variableName": { + "description": "Name of the variable whose value needs to be set.", + "type": "string" + }, + "value": { + "description": "Value to be set. Could be a static value or Expression", + "type": "object" + } + } + }, + "AppendVariableActivity": { + "x-ms-discriminator-value": "AppendVariable", + "description": "Append value for a Variable of type Array.", + "allOf": [ + { + "$ref": "#/definitions/ControlActivity" + } + ], + "properties": { + "typeProperties": { + "description": "Append Variable activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AppendVariableActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AppendVariableActivityTypeProperties": { + "description": "AppendVariable activity properties.", + "properties": { + "variableName": { + "description": "Name of the variable whose value needs to be appended to.", + "type": "string" + }, + "value": { + "description": "Value to be appended. Could be a static value or Expression", + "type": "object" + } + } + }, + "AzureFunctionActivityMethod": { + "description": "The list of HTTP methods supported by a AzureFunctionActivity.", + "type": "string", + "enum": [ + "GET", + "POST", + "PUT", + "DELETE", + "OPTIONS", + "HEAD", + "TRACE" + ], + "x-ms-enum": { + "name": "AzureFunctionActivityMethod", + "modelAsString": true + } + }, + "AzureFunctionActivity": { + "x-ms-discriminator-value": "AzureFunctionActivity", + "description": "Azure Function activity.", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "description": "Azure Function activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AzureFunctionActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "AzureFunctionActivityTypeProperties": { + "description": "Azure Function activity type properties.", + "properties": { + "method": { + "description": "Rest API method for target endpoint.", + "$ref": "#/definitions/AzureFunctionActivityMethod" + }, + "functionName": { + "type": "object", + "description": "Name of the Function that the Azure Function Activity will call. Type: string (or Expression with resultType string)" + }, + "headers": { + "type": "object", + "description": "Represents the headers that will be sent to the request. For example, to set the language and type on a request: \"headers\" : { \"Accept-Language\": \"en-us\", \"Content-Type\": \"application/json\" }. Type: string (or Expression with resultType string)." + }, + "body": { + "type": "object", + "description": "Represents the payload that will be sent to the endpoint. Required for POST/PUT method, not allowed for GET method Type: string (or Expression with resultType string)." + } + }, + "required": [ + "method", + "functionName" + ] + }, + "WebHookActivity": { + "x-ms-discriminator-value": "WebHook", + "description": "WebHook activity.", + "allOf": [ + { + "$ref": "#/definitions/ControlActivity" + } + ], + "properties": { + "typeProperties": { + "description": "WebHook activity properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/WebHookActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "WebHookActivityMethod": { + "description": "The list of HTTP methods supported by a WebHook activity.", + "type": "string", + "enum": [ + "POST" + ], + "x-ms-enum": { + "name": "WebHookActivityMethod", + "modelAsString": true + } + }, + "WebHookActivityTypeProperties": { + "description": "WebHook activity type properties.", + "properties": { + "method": { + "description": "Rest API method for target endpoint.", + "$ref": "#/definitions/WebHookActivityMethod" + }, + "url": { + "type": "object", + "description": "WebHook activity target endpoint and path. Type: string (or Expression with resultType string)." + }, + "timeout": { + "type": "string", + "description": "The timeout within which the webhook should be called back. If there is no value specified, it defaults to 10 minutes. Type: string. Pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + }, + "headers": { + "type": "object", + "description": "Represents the headers that will be sent to the request. For example, to set the language and type on a request: \"headers\" : { \"Accept-Language\": \"en-us\", \"Content-Type\": \"application/json\" }. Type: string (or Expression with resultType string)." + }, + "body": { + "type": "object", + "description": "Represents the payload that will be sent to the endpoint. Required for POST/PUT method, not allowed for GET method Type: string (or Expression with resultType string)." + }, + "authentication": { + "description": "Authentication method used for calling the endpoint.", + "$ref": "#/definitions/WebActivityAuthentication" + }, + "reportStatusOnCallBack": { + "type": "object", + "description": "When set to true, statusCode, output and error in callback request body will be consumed by activity. The activity can be marked as failed by setting statusCode >= 400 in callback request. Default is false. Type: boolean (or Expression with resultType boolean)." + } + }, + "required": [ + "method", + "url" + ] + }, + "ExecuteDataFlowActivity": { + "description": "Execute data flow activity.", + "x-ms-discriminator-value": "ExecuteDataFlow", + "allOf": [ + { + "$ref": "#/definitions/ExecutionActivity" + } + ], + "properties": { + "typeProperties": { + "x-ms-client-flatten": true, + "description": "Execute data flow activity properties.", + "$ref": "#/definitions/ExecuteDataFlowActivityTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "ExecuteDataFlowActivityTypeProperties": { + "description": "Execute data flow activity properties.", + "properties": { + "dataFlow": { + "description": "Data flow reference.", + "$ref": "../datafactory.json#/definitions/DataFlowReference" + }, + "staging": { + "description": "Staging info for execute data flow activity.", + "$ref": "../datafactory.json#/definitions/DataFlowStagingInfo" + }, + "integrationRuntime": { + "description": "The integration runtime reference.", + "$ref": "../datafactory.json#/definitions/IntegrationRuntimeReference" + }, + "compute": { + "description": "Compute properties for data flow activity.", + "type": "object", + "properties": { + "computeType": { + "description": "Compute type of the cluster which will execute data flow job.", + "type": "string", + "enum": [ + "General", + "MemoryOptimized", + "ComputeOptimized" + ], + "x-ms-enum": { + "name": "DataFlowComputeType", + "modelAsString": true + } + }, + "coreCount": { + "description": "Core count of the cluster which will execute data flow job. Supported values are: 8, 16, 32, 48, 80, 144 and 272.", + "type": "integer" + } + } + } + }, + "required": [ + "dataFlow" + ] + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/SparkJobDefinition.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/SparkJobDefinition.json new file mode 100644 index 000000000000..87caabcdaced --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/SparkJobDefinition.json @@ -0,0 +1,123 @@ +{ + "swagger": "2.0", + "info": { + "title": "SynapseClient", + "version": "2019-11-01-preview" + }, + "paths": {}, + "definitions": { + "SparkJobDefinition": { + "description": "Spark job definition.", + "type": "object", + "properties": { + "description": { + "description": "The description of the Spark job definition.", + "type": "string" + }, + "targetBigDataPool": { + "description": "Big data pool reference.", + "$ref": "./NoteBook.json#/definitions/BigDataPoolReference" + }, + "requiredSparkVersion": { + "description": "The required Spark version of the application.", + "type": "string" + }, + "language": { + "description": "The language of the Spark application.", + "type": "string" + }, + "jobProperties": { + "description": "The properties of the Spark job.", + "$ref": "#/definitions/SparkJobProperties" + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "targetBigDataPool", + "jobProperties" + ] + }, + "SparkJobProperties": { + "description": "The properties of the Spark job.", + "properties": { + "name": { + "description": "The name of the job.", + "type": "string" + }, + "file": { + "description": "File containing the application to execute.", + "type": "string" + }, + "className": { + "description": "Main class for Java/Scala application.", + "type": "string" + }, + "conf": { + "description": "Spark configuration properties.", + "type": "object" + }, + "args": { + "description": "Command line arguments for the application.", + "type": "array", + "items": { + "type": "string" + } + }, + "jars": { + "description": "Jars to be used in this job.", + "type": "array", + "items": { + "type": "string" + } + }, + "files": { + "description": "files to be used in this job.", + "type": "array", + "items": { + "type": "string" + } + }, + "archives": { + "description": "Archives to be used in this job.", + "type": "array", + "items": { + "type": "string" + } + }, + "driverMemory": { + "description": "Amount of memory to use for the driver process.", + "type": "string" + }, + "driverCores": { + "description": "Number of cores to use for the driver.", + "type": "integer" + }, + "executorMemory": { + "description": "Amount of memory to use per executor process.", + "type": "string" + }, + "executorCores": { + "description": "Number of cores to use for each executor.", + "type": "integer" + }, + "numExecutors": { + "description": "Number of executors to launch for this job.", + "type": "integer" + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "file", + "driverMemory", + "driverCores", + "executorMemory", + "executorCores", + "numExecutors" + ] + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/SqlScript.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/SqlScript.json new file mode 100644 index 000000000000..ba7c44589f83 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/SqlScript.json @@ -0,0 +1,108 @@ +{ + "swagger": "2.0", + "info": { + "title": "SynapseClient", + "version": "2019-11-01-preview" + }, + "paths": {}, + "definitions": { + "SqlScript": { + "description": "SQL script.", + "type": "object", + "properties": { + "description": { + "description": "The description of the SQL script.", + "type": "string" + }, + "type": { + "description": "The type of the SQL script.", + "type": "string", + "enum": [ + "SqlQuery" + ], + "x-ms-enum": { + "name": "SqlScriptType", + "modelAsString": true + } + }, + "content": { + "description": "The content of the SQL script.", + "$ref": "#/definitions/SqlScriptContent" + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "content" + ] + }, + "SqlScriptContent": { + "description": "The content of the SQL script.", + "type": "object", + "properties": { + "query": { + "description": "SQL query to execute.", + "type": "string" + }, + "currentConnection": { + "description": "The connection used to execute the SQL script.", + "$ref": "#/definitions/SqlConnection" + }, + "metadata": { + "description": "The metadata of the SQL script.", + "$ref": "#/definitions/SqlScriptMetadata" + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "query", + "currentConnection" + ] + }, + "SqlScriptMetadata": { + "description": "The metadata of the SQL script.", + "type": "object", + "properties": { + "language": { + "description": "The language of the SQL script.", + "type": "string" + } + }, + "additionalProperties": { + "type": "object" + } + }, + "SqlConnection": { + "description": "The connection used to execute the SQL script.", + "type": "object", + "properties": { + "type": { + "description": "The type of the connection.", + "type": "string", + "enum": [ + "SqlOnDemand", + "SqlPool" + ], + "x-ms-enum": { + "name": "SqlConnectionType", + "modelAsString": true + } + }, + "name": { + "description": "The identifier of the connection.", + "type": "string" + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type", + "name" + ] + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/Trigger.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/Trigger.json new file mode 100644 index 000000000000..f8f4ac9763e2 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/Trigger.json @@ -0,0 +1,638 @@ +{ + "swagger": "2.0", + "info": { + "title": "SynapseClient", + "version": "2019-11-01-preview" + }, + "paths": {}, + "definitions": { + "Trigger": { + "description": "Azure Synapse nested object which contains information about creating pipeline run", + "type": "object", + "discriminator": "type", + "properties": { + "type": { + "type": "string", + "description": "Trigger type." + }, + "description": { + "description": "Trigger description.", + "type": "string" + }, + "runtimeState": { + "$ref": "#/definitions/TriggerRuntimeState", + "description": "Indicates if trigger is running or not. Updated when Start/Stop APIs are called on the Trigger.", + "readOnly": true + }, + "annotations": { + "description": "List of tags that can be used for describing the trigger.", + "type": "array", + "items": { + "type": "object" + } + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "TriggerRuntimeState": { + "type": "string", + "description": "Enumerates possible state of Triggers.", + "enum": [ + "Started", + "Stopped", + "Disabled" + ], + "x-ms-enum": { + "name": "TriggerRuntimeState", + "modelAsString": true + } + }, + "MultiplePipelineTrigger": { + "x-ms-discriminator-value": "MultiplePipelineTrigger", + "description": "Base class for all triggers that support one to many model for trigger to pipeline.", + "allOf": [ + { + "$ref": "#/definitions/Trigger" + } + ], + "properties": { + "pipelines": { + "type": "array", + "items": { + "$ref": "../datafactory.json#/definitions/TriggerPipelineReference" + }, + "description": "Pipelines that need to be started." + } + } + }, + "ScheduleTrigger": { + "description": "Trigger that creates pipeline runs periodically, on schedule.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/MultiplePipelineTrigger" + } + ], + "properties": { + "typeProperties": { + "description": "Schedule Trigger properties.", + "x-ms-client-flatten": true, + "properties": { + "recurrence": { + "$ref": "#/definitions/ScheduleTriggerRecurrence", + "description": "Recurrence schedule configuration." + } + }, + "required": [ + "recurrence" + ] + } + }, + "required": [ + "typeProperties" + ] + }, + "ScheduleTriggerRecurrence": { + "type": "object", + "properties": { + "frequency": { + "$ref": "#/definitions/RecurrenceFrequency", + "description": "The frequency." + }, + "interval": { + "type": "integer", + "format": "int32", + "description": "The interval." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time." + }, + "timeZone": { + "type": "string", + "description": "The time zone." + }, + "schedule": { + "$ref": "#/definitions/RecurrenceSchedule", + "description": "The recurrence schedule." + } + }, + "additionalProperties": { + "type": "object" + }, + "description": "The workflow trigger recurrence." + }, + "RecurrenceFrequency": { + "description": "Enumerates possible frequency option for the schedule trigger.", + "type": "string", + "enum": [ + "NotSpecified", + "Minute", + "Hour", + "Day", + "Week", + "Month", + "Year" + ], + "x-ms-enum": { + "name": "RecurrenceFrequency", + "modelAsString": true + } + }, + "RecurrenceSchedule": { + "type": "object", + "properties": { + "minutes": { + "type": "array", + "items": { + "type": "integer", + "format": "int32" + }, + "description": "The minutes." + }, + "hours": { + "type": "array", + "items": { + "type": "integer", + "format": "int32" + }, + "description": "The hours." + }, + "weekDays": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ], + "x-ms-enum": { + "name": "DaysOfWeek", + "modelAsString": false + } + }, + "description": "The days of the week." + }, + "monthDays": { + "type": "array", + "items": { + "type": "integer", + "format": "int32" + }, + "description": "The month days." + }, + "monthlyOccurrences": { + "type": "array", + "items": { + "$ref": "#/definitions/RecurrenceScheduleOccurrence" + }, + "description": "The monthly occurrences." + } + }, + "additionalProperties": { + "type": "object" + }, + "description": "The recurrence schedule." + }, + "RecurrenceScheduleOccurrence": { + "type": "object", + "properties": { + "day": { + "$ref": "#/definitions/DayOfWeek", + "description": "The day of the week." + }, + "occurrence": { + "type": "integer", + "format": "int32", + "description": "The occurrence." + } + }, + "additionalProperties": { + "type": "object" + }, + "description": "The recurrence schedule occurrence." + }, + "DayOfWeek": { + "type": "string", + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ], + "x-ms-enum": { + "name": "DayOfWeek", + "modelAsString": false + }, + "description": "The days of the week." + }, + "BlobTrigger": { + "description": "Trigger that runs every time the selected Blob container changes.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/MultiplePipelineTrigger" + } + ], + "properties": { + "typeProperties": { + "description": "Blob Trigger properties.", + "x-ms-client-flatten": true, + "properties": { + "folderPath": { + "description": "The path of the container/folder that will trigger the pipeline.", + "type": "string" + }, + "maxConcurrency": { + "description": "The max number of parallel files to handle when it is triggered.", + "type": "integer" + }, + "linkedService": { + "description": "The Azure Storage linked service reference.", + "$ref": "../datafactory.json#/definitions/LinkedServiceReference" + } + }, + "required": [ + "folderPath", + "maxConcurrency", + "linkedService" + ] + } + }, + "required": [ + "typeProperties" + ] + }, + "BlobEventsTrigger": { + "description": "Trigger that runs every time a Blob event occurs.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/MultiplePipelineTrigger" + } + ], + "properties": { + "typeProperties": { + "description": "Blob Events Trigger properties.", + "x-ms-client-flatten": true, + "properties": { + "blobPathBeginsWith": { + "description": "The blob path must begin with the pattern provided for trigger to fire. For example, '/records/blobs/december/' will only fire the trigger for blobs in the december folder under the records container. At least one of these must be provided: blobPathBeginsWith, blobPathEndsWith.", + "type": "string" + }, + "blobPathEndsWith": { + "description": "The blob path must end with the pattern provided for trigger to fire. For example, 'december/boxes.csv' will only fire the trigger for blobs named boxes in a december folder. At least one of these must be provided: blobPathBeginsWith, blobPathEndsWith.", + "type": "string" + }, + "ignoreEmptyBlobs": { + "description": "If set to true, blobs with zero bytes will be ignored.", + "type": "boolean" + }, + "events": { + "description": "The type of events that cause this trigger to fire.", + "$ref": "#/definitions/BlobEventTypes" + }, + "scope": { + "description": "The ARM resource ID of the Storage Account.", + "type": "string" + } + }, + "required": [ + "events", + "scope" + ] + } + }, + "required": [ + "typeProperties" + ] + }, + "BlobEventTypes": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Microsoft.Storage.BlobCreated", + "Microsoft.Storage.BlobDeleted" + ], + "x-ms-enum": { + "name": "BlobEventTypes", + "modelAsString": true + } + }, + "description": "Blob event types." + }, + "TumblingWindowTrigger": { + "description": "Trigger that schedules pipeline runs for all fixed time interval windows from a start time without gaps and also supports backfill scenarios (when start time is in the past).", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Trigger" + } + ], + "properties": { + "pipeline": { + "$ref": "../datafactory.json#/definitions/TriggerPipelineReference", + "description": "Pipeline for which runs are created when an event is fired for trigger window that is ready." + }, + "typeProperties": { + "description": "Tumbling Window Trigger properties.", + "x-ms-client-flatten": true, + "properties": { + "frequency": { + "$ref": "#/definitions/TumblingWindowFrequency", + "description": "The frequency of the time windows." + }, + "interval": { + "type": "integer", + "format": "int32", + "description": "The interval of the time windows. The minimum interval allowed is 15 Minutes." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The start time for the time period for the trigger during which events are fired for windows that are ready. Only UTC time is currently supported." + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "The end time for the time period for the trigger during which events are fired for windows that are ready. Only UTC time is currently supported." + }, + "delay": { + "type": "object", + "description": "Specifies how long the trigger waits past due time before triggering new run. It doesn't alter window start and end time. The default is 0. Type: string (or Expression with resultType string), pattern: ((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))." + }, + "maxConcurrency": { + "description": "The max number of parallel time windows (ready for execution) for which a new run is triggered.", + "type": "integer", + "minimum": 1, + "maximum": 50 + }, + "retryPolicy": { + "$ref": "#/definitions/RetryPolicy", + "description": "Retry policy that will be applied for failed pipeline runs." + }, + "dependsOn": { + "type": "array", + "description": "Triggers that this trigger depends on. Only tumbling window triggers are supported.", + "items": { + "$ref": "#/definitions/DependencyReference" + } + } + }, + "required": [ + "frequency", + "interval", + "startTime", + "maxConcurrency" + ] + } + }, + "required": [ + "pipeline", + "typeProperties" + ] + }, + "TumblingWindowFrequency": { + "description": "Enumerates possible frequency option for the tumbling window trigger.", + "type": "string", + "enum": [ + "Minute", + "Hour" + ], + "x-ms-enum": { + "name": "TumblingWindowFrequency", + "modelAsString": true + } + }, + "RetryPolicy": { + "description": "Execution policy for an activity.", + "properties": { + "count": { + "type": "object", + "description": "Maximum ordinary retry attempts. Default is 0. Type: integer (or Expression with resultType integer), minimum: 0." + }, + "intervalInSeconds": { + "description": "Interval between retries in seconds. Default is 30.", + "type": "integer", + "minimum": 30, + "maximum": 86400 + } + } + }, + "TriggerReference": { + "description": "Trigger reference type.", + "type": "object", + "properties": { + "type": { + "description": "Trigger reference type.", + "type": "string", + "enum": [ + "TriggerReference" + ], + "x-ms-enum": { + "name": "TriggerReferenceType", + "modelAsString": true + } + }, + "referenceName": { + "description": "Reference trigger name.", + "type": "string" + } + }, + "required": [ + "type", + "referenceName" + ] + }, + "DependencyReference": { + "description": "Referenced dependency.", + "type": "object", + "discriminator": "type", + "properties": { + "type": { + "description": "The type of dependency reference.", + "type": "string" + } + }, + "required": [ + "type" + ] + }, + "TriggerDependencyReference": { + "description": "Trigger referenced dependency.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DependencyReference" + } + ], + "properties": { + "referenceTrigger": { + "description": "Referenced trigger.", + "$ref": "#/definitions/TriggerReference" + } + }, + "required": [ + "referenceTrigger" + ] + }, + "TumblingWindowTriggerDependencyReference": { + "description": "Referenced tumbling window trigger dependency.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TriggerDependencyReference" + } + ], + "properties": { + "offset": { + "description": "Timespan applied to the start time of a tumbling window when evaluating dependency.", + "type": "string", + "pattern": "((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))", + "minLength": 8, + "maxLength": 15 + }, + "size": { + "description": "The size of the window when evaluating the dependency. If undefined the frequency of the tumbling window will be used.", + "type": "string", + "pattern": "((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))", + "minLength": 8, + "maxLength": 15 + } + } + }, + "SelfDependencyTumblingWindowTriggerReference": { + "description": "Self referenced tumbling window trigger dependency.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/DependencyReference" + } + ], + "properties": { + "offset": { + "description": "Timespan applied to the start time of a tumbling window when evaluating dependency.", + "type": "string", + "pattern": "((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))", + "minLength": 8, + "maxLength": 15 + }, + "size": { + "description": "The size of the window when evaluating the dependency. If undefined the frequency of the tumbling window will be used.", + "type": "string", + "pattern": "((\\d+)\\.)?(\\d\\d):(60|([0-5][0-9])):(60|([0-5][0-9]))", + "minLength": 8, + "maxLength": 15 + } + }, + "required": [ + "offset" + ] + }, + "RerunTumblingWindowTrigger": { + "description": "Trigger that schedules pipeline reruns for all fixed time interval windows from a requested start time to requested end time.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Trigger" + } + ], + "properties": { + "typeProperties": { + "description": "Rerun Trigger properties.", + "x-ms-client-flatten": true, + "properties": { + "parentTrigger": { + "type": "object", + "description": "The parent trigger reference." + }, + "requestedStartTime": { + "type": "string", + "format": "date-time", + "description": "The start time for the time period for which restatement is initiated. Only UTC time is currently supported." + }, + "requestedEndTime": { + "type": "string", + "format": "date-time", + "description": "The end time for the time period for which restatement is initiated. Only UTC time is currently supported." + }, + "maxConcurrency": { + "description": "The max number of parallel time windows (ready for execution) for which a rerun is triggered.", + "type": "integer", + "minimum": 1, + "maximum": 50 + } + }, + "required": [ + "requestedStartTime", + "requestedEndTime", + "maxConcurrency" + ] + } + }, + "required": [ + "typeProperties" + ] + }, + "ChainingTrigger": { + "description": "Trigger that allows the referenced pipeline to depend on other pipeline runs based on runDimension Name/Value pairs. Upstream pipelines should declare the same runDimension Name and their runs should have the values for those runDimensions. The referenced pipeline run would be triggered if the values for the runDimension match for all upstream pipeline runs.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/Trigger" + } + ], + "properties": { + "pipeline": { + "$ref": "../datafactory.json#/definitions/TriggerPipelineReference", + "description": "Pipeline for which runs are created when all upstream pipelines complete successfully." + }, + "typeProperties": { + "description": "Chaining Trigger properties.", + "x-ms-client-flatten": true, + "properties": { + "dependsOn": { + "type": "array", + "items": { + "$ref": "../datafactory.json#/definitions/PipelineReference" + }, + "description": "Upstream Pipelines." + }, + "runDimension": { + "description": "Run Dimension property that needs to be emitted by upstream pipelines.", + "type": "string" + } + }, + "required": [ + "runDimension", + "dependsOn" + ] + } + }, + "required": [ + "pipeline", + "typeProperties" + ] + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/ActivityRuns_QueryByPipelineRun.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/ActivityRuns_QueryByPipelineRun.json new file mode 100644 index 000000000000..1d0e4bb38f62 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/ActivityRuns_QueryByPipelineRun.json @@ -0,0 +1,110 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "pipelineName": "examplePipeline", + "runId": "2f7fdb90-5df1-4b8e-ac2f-064cfa58202b", + "filterParameters": { + "lastUpdatedAfter": "2018-06-16T00:36:44.3345758Z", + "lastUpdatedBefore": "2018-06-16T00:49:48.3686473Z" + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:40:13 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1187", + "x-ms-request-id": "5465cf41-2e71-4ce6-8db4-9de1b92ffda9", + "x-ms-correlation-request-id": "5465cf41-2e71-4ce6-8db4-9de1b92ffda9" + }, + "body": { + "value": [ + { + "activityRunEnd": "2018-06-16T00:38:11.5445431Z", + "activityName": "ExampleForeachActivity", + "activityRunStart": "2018-06-16T00:37:49.4804925Z", + "activityType": "ForEach", + "durationInMs": 22064, + "retryAttempt": null, + "error": { + "errorCode": "", + "message": "", + "failureType": "", + "target": "ExampleForeachActivity" + }, + "activityRunId": "f30c5514-fb85-43ed-9fa4-768d42e58680", + "input": {}, + "linkedServiceName": "", + "output": {}, + "userProperties": {}, + "pipelineName": "examplePipeline", + "pipelineRunId": "2f7fdb90-5df1-4b8e-ac2f-064cfa58202b", + "status": "Succeeded" + }, + { + "activityRunEnd": "2018-06-16T00:38:07.4188923Z", + "activityName": "ExampleCopyActivity", + "activityRunStart": "2018-06-16T00:37:50.2460952Z", + "activityType": "Copy", + "durationInMs": 17172, + "retryAttempt": null, + "error": { + "errorCode": "", + "message": "", + "failureType": "", + "target": "ExampleCopyActivity" + }, + "activityRunId": "a96678c8-7167-4f00-b629-afccfbad4e51", + "input": { + "source": { + "type": "BlobSource" + }, + "sink": { + "type": "BlobSink" + }, + "dataIntegrationUnits": 32 + }, + "linkedServiceName": "", + "output": { + "dataRead": 142000, + "dataWritten": 142000, + "filesRead": 1, + "filesWritten": 1, + "copyDuration": 6, + "throughput": 23.112, + "errors": [], + "effectiveIntegrationRuntime": "DefaultIntegrationRuntime (East US)", + "usedCloudDataMovementUnits": 4, + "usedParallelCopies": 1, + "executionDetails": [ + { + "source": { + "type": "AzureBlob" + }, + "sink": { + "type": "AzureBlob" + }, + "status": "Succeeded", + "start": "2018-06-16T00:37:50.68834Z", + "duration": 6, + "usedCloudDataMovementUnits": 4, + "usedParallelCopies": 1, + "detailedDurations": { + "queuingDuration": 4, + "transferDuration": 2 + } + } + ] + }, + "userProperties": {}, + "pipelineName": "examplePipeline", + "pipelineRunId": "2f7fdb90-5df1-4b8e-ac2f-064cfa58202b", + "status": "Succeeded" + } + ] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_AddDataFlow.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_AddDataFlow.json new file mode 100644 index 000000000000..3fe211fe4d36 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_AddDataFlow.json @@ -0,0 +1,109 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "request": { + "dataFlow": { + "name": "dataflow1", + "properties": { + "type": "MappingDataFlow", + "typeProperties": { + "sources": [ + { + "dataset": { + "referenceName": "DelimitedText2", + "type": "DatasetReference" + }, + "name": "source1" + } + ], + "sinks": [], + "transformations": [], + "script": "\n\nsource(output(\n\t\tColumn_1 as string\n\t),\n\tallowSchemaDrift: true,\n\tvalidateSchema: false) ~> source1" + } + } + }, + "datasets": [ + { + "name": "dataset1", + "properties": { + "linkedServiceName": { + "referenceName": "linkedService5", + "type": "LinkedServiceReference" + }, + "annotations": [], + "type": "DelimitedText", + "typeProperties": { + "location": { + "type": "AzureBlobStorageLocation", + "fileName": "Ansiencoding.csv", + "container": "dataflow-sample-data" + }, + "columnDelimiter": ",", + "escapeChar": "\\", + "firstRowAsHeader": true, + "quoteChar": "\"" + }, + "schema": [ + { + "type": "String" + } + ] + } + } + ], + "linkedServices": [ + { + "name": "linkedService1", + "properties": { + "type": "AzureBlobStorage", + "typeProperties": { + "connectionString": "DefaultEndpointsProtocol=https;AccountName=;EndpointSuffix=core.windows.net;", + "encryptedCredential": "" + }, + "annotations": [] + } + } + ], + "debugSettings": { + "sourceSettings": [ + { + "sourceName": "source1", + "rowLimit": 1000 + }, + { + "sourceName": "source2", + "rowLimit": 222 + } + ], + "parameters": { + "sourcePath": "Toy" + }, + "datasetParameters": { + "Movies": { + "path": "abc" + }, + "Output": { + "time": "def" + } + } + }, + "sessionId": "f06ed247-9d07-49b2-b05e-2cb4a2fc871e" + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:40:01 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14989", + "x-ms-request-id": "2f955e10-c6df-45a7-97d4-81acdb8540cd", + "x-ms-correlation-request-id": "2f955e10-c6df-45a7-97d4-81acdb8540cd" + }, + "body": { + "jobVersion": "e5328ee7-c524-4207-8ba4-b709010db33d" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_Create.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_Create.json new file mode 100644 index 000000000000..2b8e9fb98143 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_Create.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "request": { + "dataFlowName": "dataflow", + "existingClusterId": "1221221", + "clusterTimeout": 50, + "newClusterName": "newClusterName", + "newClusterNodeType": "newClusterNodeType", + "dataBricksLinkedService": { + "properties": { + "type": "AzureStorage", + "typeProperties": { + "connectionString": { + "type": "SecureString", + "value": "DefaultEndpointsProtocol=https;AccountName=examplestorageaccount;AccountKey=" + } + }, + "description": "Example description" + } + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "202": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:40:01 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14989", + "x-ms-request-id": "2f955e10-c6df-45a7-97d4-81acdb8540cd", + "x-ms-correlation-request-id": "2f955e10-c6df-45a7-97d4-81acdb8540cd", + "location": "https://exampleWorkspaceName.dev.azuresynapse.net/operationStatuses/dfCreateSession$$229c688c-944c-44ac-b31a-82d50f347154?api-version=2019-11-01-preview" + } + }, + "200": { + "body": { + "sessionId": "229c688c-944c-44ac-b31a-82d50f347154" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_Delete.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_Delete.json new file mode 100644 index 000000000000..be1da7df23ce --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_Delete.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "request": { + "sessionId": "91fb57e0-8292-47be-89ff-c8f2d2bb2a7e" + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:40:01 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14989", + "x-ms-request-id": "2f955e10-c6df-45a7-97d4-81acdb8540cd", + "x-ms-correlation-request-id": "2f955e10-c6df-45a7-97d4-81acdb8540cd" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_ExecuteCommand.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_ExecuteCommand.json new file mode 100644 index 000000000000..45e86f142046 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_ExecuteCommand.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "request": { + "dataFlowName": "dataFlowName", + "commandPayload": { + "streamName": "source1", + "rowLimits": 100 + }, + "commandName": "executePreviewQuery", + "sessionId": "f06ed247-9d07-49b2-b05e-2cb4a2fc871e" + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "202": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:40:01 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14989", + "x-ms-request-id": "2f955e10-c6df-45a7-97d4-81acdb8540cd", + "x-ms-correlation-request-id": "2f955e10-c6df-45a7-97d4-81acdb8540cd", + "location": "https://exampleWorkspaceName.dev.azuresynapse.net/operationResults/dfCommandOutput$$f06ed247-9d07-49b2-b05e-2cb4a2fc871e$$e5328ee7-c524-4207-8ba4-b709010db33d$$ace5eaf0-3e93-45ba-ada3-bf77da321a7b?api-version=2019-11-01-preview" + } + }, + "200": { + "body": { + "status": "Succeeded", + "data": "some output" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_QueryByWorkspace.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_QueryByWorkspace.json new file mode 100644 index 000000000000..8489bf43ada4 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlowDebugSession_QueryByWorkspace.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:40:01 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14989", + "x-ms-request-id": "2f955e10-c6df-45a7-97d4-81acdb8540cd", + "x-ms-correlation-request-id": "2f955e10-c6df-45a7-97d4-81acdb8540cd" + }, + "body": { + "value": [ + { + "userObjectId": "0a7e0d6e-f2b7-48cc-8cd8-618326f5662f", + "startTime": "2019-09-05T18:23:20.3257799+00:00", + "lastActivityTime": "2019-09-05T18:28:00.9459674+00:00", + "dataflowName": "DebugSession-0a7e0d6e-f2b7-48cc-8cd8-618326f5662f", + "sessionId": "229c688c-944c-44ac-b31a-82d50f347154", + "coreCount": 48, + "computeType": "General", + "timeToLiveInMinutes": 60 + } + ] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_Create.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_Create.json new file mode 100644 index 000000000000..b7ed67fcc853 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_Create.json @@ -0,0 +1,106 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "dataFlowName": "exampleDataFlow", + "ifMatch": null, + "dataFlow": { + "properties": { + "description": "Sample demo data flow to convert currencies showing usage of union, derive and conditional split transformation.", + "type": "MappingDataFlow", + "typeProperties": { + "sources": [ + { + "dataset": { + "referenceName": "CurrencyDatasetUSD", + "type": "DatasetReference" + }, + "name": "USDCurrency" + }, + { + "dataset": { + "referenceName": "CurrencyDatasetCAD", + "type": "DatasetReference" + }, + "name": "CADSource" + } + ], + "sinks": [ + { + "dataset": { + "referenceName": "USDOutput", + "type": "DatasetReference" + }, + "name": "USDSink" + }, + { + "dataset": { + "referenceName": "CADOutput", + "type": "DatasetReference" + }, + "name": "CADSink" + } + ], + "script": "source(output(PreviousConversionRate as double,Country as string,DateTime1 as string,CurrentConversionRate as double),allowSchemaDrift: false,validateSchema: false) ~> USDCurrency\nsource(output(PreviousConversionRate as double,Country as string,DateTime1 as string,CurrentConversionRate as double),allowSchemaDrift: true,validateSchema: false) ~> CADSource\nUSDCurrency, CADSource union(byName: true)~> Union\nUnion derive(NewCurrencyRate = round(CurrentConversionRate*1.25)) ~> NewCurrencyColumn\nNewCurrencyColumn split(Country == 'USD',Country == 'CAD',disjoint: false) ~> ConditionalSplit1@(USD, CAD)\nConditionalSplit1@USD sink(saveMode:'overwrite' ) ~> USDSink\nConditionalSplit1@CAD sink(saveMode:'overwrite' ) ~> CADSink" + } + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2019 00:37:38 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1194", + "x-ms-request-id": "ce95d6dd-c04d-4b02-b7ad-fe79c9b26df0", + "x-ms-correlation-request-id": "ce95d6dd-c04d-4b02-b7ad-fe79c9b26df0" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/datasets/exampleDataset", + "name": "exampleDataFlow", + "type": "Microsoft.Synapse/workspaces/dataflows", + "properties": { + "description": "Sample demo data flow to convert currencies showing usage of union, derive and conditional split transformation.", + "type": "MappingDataFlow", + "typeProperties": { + "sources": [ + { + "dataset": { + "referenceName": "CurrencyDatasetUSD", + "type": "DatasetReference" + }, + "name": "USDCurrency" + }, + { + "dataset": { + "referenceName": "CurrencyDatasetCAD", + "type": "DatasetReference" + }, + "name": "CADSource" + } + ], + "sinks": [ + { + "dataset": { + "referenceName": "USDOutput", + "type": "DatasetReference" + }, + "name": "USDSink" + }, + { + "dataset": { + "referenceName": "CADOutput", + "type": "DatasetReference" + }, + "name": "CADSink" + } + ], + "script": "source(output(PreviousConversionRate as double,Country as string,DateTime1 as string,CurrentConversionRate as double),allowSchemaDrift: false,validateSchema: false) ~> USDCurrency\nsource(output(PreviousConversionRate as double,Country as string,DateTime1 as string,CurrentConversionRate as double),allowSchemaDrift: true,validateSchema: false) ~> CADSource\nUSDCurrency, CADSource union(byName: true)~> Union\nUnion derive(NewCurrencyRate = round(CurrentConversionRate*1.25)) ~> NewCurrencyColumn\nNewCurrencyColumn split(Country == 'USD',Country == 'CAD',disjoint: false) ~> ConditionalSplit1@(USD, CAD)\nConditionalSplit1@USD sink(saveMode:'overwrite' ) ~> USDSink\nConditionalSplit1@CAD sink(saveMode:'overwrite' ) ~> CADSink" + } + }, + "etag": "0a0066d4-0000-0000-0000-5b245bd20000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_Delete.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_Delete.json new file mode 100644 index 000000000000..c17410917a90 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "dataFlowName": "exampleDataFlow", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_Get.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_Get.json new file mode 100644 index 000000000000..62b69ff0b194 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_Get.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "dataFlowName": "exampleDataFlow", + "ifNoneMatch": "15004c4f-0000-0200-0000-5cbe090e0000", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Mon, 22 Apr 2019 18:33:50 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "11993", + "x-ms-request-id": "48983fb5-612a-44c6-8158-add7ffebb32b", + "x-ms-correlation-request-id": "48983fb5-612a-44c6-8158-add7ffebb32b" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/dataflows/exampleDataFlow", + "name": "exampleDataFlow", + "type": "Microsoft.Synapse/workspaces/dataflows", + "properties": { + "description": "Sample demo data flow to convert currencies showing usage of union, derive and conditional split transformation.", + "type": "MappingDataFlow", + "typeProperties": { + "sources": [ + { + "dataset": { + "referenceName": "CurrencyDatasetUSD", + "type": "DatasetReference" + }, + "name": "USDCurrency" + }, + { + "dataset": { + "referenceName": "CurrencyDatasetCAD", + "type": "DatasetReference" + }, + "name": "CADSource" + } + ], + "sinks": [ + { + "dataset": { + "referenceName": "USDOutput", + "type": "DatasetReference" + }, + "name": "USDSink" + }, + { + "dataset": { + "referenceName": "CADOutput", + "type": "DatasetReference" + }, + "name": "CADSink" + } + ], + "script": "source(output(PreviousConversionRate as double,Country as string,DateTime1 as string,CurrentConversionRate as double),allowSchemaDrift: false,validateSchema: false) ~> USDCurrency\nsource(output(PreviousConversionRate as double,Country as string,DateTime1 as string,CurrentConversionRate as double),allowSchemaDrift: true,validateSchema: false) ~> CADSource\nUSDCurrency, CADSource union(byName: true)~> Union\nUnion derive(NewCurrencyRate = round(CurrentConversionRate*1.25)) ~> NewCurrencyColumn\nNewCurrencyColumn split(Country == 'USD',Country == 'CAD',disjoint: false) ~> ConditionalSplit1@(USD, CAD)\nConditionalSplit1@USD sink(saveMode:'overwrite' ) ~> USDSink\nConditionalSplit1@CAD sink(saveMode:'overwrite' ) ~> CADSink" + } + }, + "etag": "15004c4f-0000-0200-0000-5cbe090e0000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_ListByWorkspace.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_ListByWorkspace.json new file mode 100644 index 000000000000..822e92e95dcc --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_ListByWorkspace.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:40 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14992", + "x-ms-request-id": "341c9ece-5062-448b-be98-3ccbf476ed5d", + "x-ms-correlation-request-id": "341c9ece-5062-448b-be98-3ccbf476ed5d" + }, + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/dataflows/exampleDataFlow", + "name": "exampleDataFlow", + "type": "Microsoft.Synapse/workspaces/dataflows", + "properties": { + "description": "Sample demo data flow to convert currencies showing usage of union, derive and conditional split transformation.", + "type": "MappingDataFlow", + "typeProperties": { + "sources": [ + { + "dataset": { + "referenceName": "CurrencyDatasetUSD", + "type": "DatasetReference" + }, + "name": "USDCurrency" + }, + { + "dataset": { + "referenceName": "CurrencyDatasetCAD", + "type": "DatasetReference" + }, + "name": "CADSource" + } + ], + "sinks": [ + { + "dataset": { + "referenceName": "USDOutput", + "type": "DatasetReference" + }, + "name": "USDSink" + }, + { + "dataset": { + "referenceName": "CADOutput", + "type": "DatasetReference" + }, + "name": "CADSink" + } + ], + "script": "source(output(PreviousConversionRate as double,Country as string,DateTime1 as string,CurrentConversionRate as double),allowSchemaDrift: false,validateSchema: false) ~> USDCurrency\nsource(output(PreviousConversionRate as double,Country as string,DateTime1 as string,CurrentConversionRate as double),allowSchemaDrift: true,validateSchema: false) ~> CADSource\nUSDCurrency, CADSource union(byName: true)~> Union\nUnion derive(NewCurrencyRate = round(CurrentConversionRate*1.25)) ~> NewCurrencyColumn\nNewCurrencyColumn split(Country == 'USD',Country == 'CAD',disjoint: false) ~> ConditionalSplit1@(USD, CAD)\nConditionalSplit1@USD sink(saveMode:'overwrite' ) ~> USDSink\nConditionalSplit1@CAD sink(saveMode:'overwrite' ) ~> CADSink" + } + }, + "etag": "0a0068d4-0000-0000-0000-5b245bd30000" + } + ] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_Update.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_Update.json new file mode 100644 index 000000000000..7dd8812dadde --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/DataFlows_Update.json @@ -0,0 +1,106 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "dataFlowName": "exampleDataFlow", + "ifMatch": null, + "dataFlow": { + "properties": { + "description": "Sample demo data flow to convert currencies showing usage of union, derive and conditional split transformation.", + "type": "MappingDataFlow", + "typeProperties": { + "sources": [ + { + "dataset": { + "referenceName": "CurrencyDatasetUSD", + "type": "DatasetReference" + }, + "name": "USDCurrency" + }, + { + "dataset": { + "referenceName": "CurrencyDatasetCAD", + "type": "DatasetReference" + }, + "name": "CADSource" + } + ], + "sinks": [ + { + "dataset": { + "referenceName": "USDOutput", + "type": "DatasetReference" + }, + "name": "USDSink" + }, + { + "dataset": { + "referenceName": "CADOutput", + "type": "DatasetReference" + }, + "name": "CADSink" + } + ], + "script": "source(output(PreviousConversionRate as double,Country as string,DateTime1 as string,CurrentConversionRate as double),allowSchemaDrift: false,validateSchema: false) ~> USDCurrency\nsource(output(PreviousConversionRate as double,Country as string,DateTime1 as string,CurrentConversionRate as double),allowSchemaDrift: true,validateSchema: false) ~> CADSource\nUSDCurrency, CADSource union(byName: true)~> Union\nUnion derive(NewCurrencyRate = round(CurrentConversionRate*1.25)) ~> NewCurrencyColumn\nNewCurrencyColumn split(Country == 'USD',Country == 'CAD',disjoint: false) ~> ConditionalSplit1@(USD, CAD)\nConditionalSplit1@USD sink(saveMode:'overwrite' ) ~> USDSink\nConditionalSplit1@CAD sink(saveMode:'overwrite' ) ~> CADSink" + } + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2019 00:37:38 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1193", + "x-ms-request-id": "ce95d6dd-c04d-4b02-b7ad-fe79c9b26df0", + "x-ms-correlation-request-id": "ce95d6dd-c04d-4b02-b7ad-fe79c9b26df0" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/datasets/exampleDataset", + "name": "exampleDataFlow", + "type": "Microsoft.Synapse/workspaces/dataflows", + "properties": { + "description": "Sample demo data flow to convert currencies showing usage of union, derive and conditional split transformation.", + "type": "MappingDataFlow", + "typeProperties": { + "sources": [ + { + "dataset": { + "referenceName": "CurrencyDatasetUSD", + "type": "DatasetReference" + }, + "name": "USDCurrency" + }, + { + "dataset": { + "referenceName": "CurrencyDatasetCAD", + "type": "DatasetReference" + }, + "name": "CADSource" + } + ], + "sinks": [ + { + "dataset": { + "referenceName": "USDOutput", + "type": "DatasetReference" + }, + "name": "USDSink" + }, + { + "dataset": { + "referenceName": "CADOutput", + "type": "DatasetReference" + }, + "name": "CADSink" + } + ], + "script": "source(output(PreviousConversionRate as double,Country as string,DateTime1 as string,CurrentConversionRate as double),allowSchemaDrift: false,validateSchema: false) ~> USDCurrency\nsource(output(PreviousConversionRate as double,Country as string,DateTime1 as string,CurrentConversionRate as double),allowSchemaDrift: true,validateSchema: false) ~> CADSource\nUSDCurrency, CADSource union(byName: true)~> Union\nUnion derive(NewCurrencyRate = round(CurrentConversionRate*1.25)) ~> NewCurrencyColumn\nNewCurrencyColumn split(Country == 'USD',Country == 'CAD',disjoint: false) ~> ConditionalSplit1@(USD, CAD)\nConditionalSplit1@USD sink(saveMode:'overwrite' ) ~> USDSink\nConditionalSplit1@CAD sink(saveMode:'overwrite' ) ~> CADSink" + } + }, + "etag": "0a0068d4-0000-0000-0000-5b245bd30002" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_Create.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_Create.json new file mode 100644 index 000000000000..ac06a1b294d9 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_Create.json @@ -0,0 +1,96 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "datasetName": "exampleDataset", + "ifMatch": null, + "dataset": { + "properties": { + "type": "AzureBlob", + "typeProperties": { + "folderPath": { + "value": "@dataset().MyFolderPath", + "type": "Expression" + }, + "fileName": { + "value": "@dataset().MyFileName", + "type": "Expression" + }, + "format": { + "type": "TextFormat" + } + }, + "linkedServiceName": { + "referenceName": "exampleLinkedService", + "type": "LinkedServiceReference" + }, + "parameters": { + "MyFolderPath": { + "type": "String" + }, + "MyFileName": { + "type": "String" + } + } + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:38 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1194", + "x-ms-request-id": "ce95d6dd-c04d-4b02-b7ad-fe79c9b26df0", + "x-ms-correlation-request-id": "ce95d6dd-c04d-4b02-b7ad-fe79c9b26df0" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/datasets/exampleDataset", + "name": "exampleDataset", + "type": "Microsoft.Synapse/workspaces/datasets", + "properties": { + "type": "AzureBlob", + "schema": [ + { + "name": "col1", + "type": "INT_32" + }, + { + "name": "col2", + "type": "Decimal", + "precision": "38", + "scale": "2" + } + ], + "typeProperties": { + "folderPath": { + "value": "@dataset().MyFolderPath", + "type": "Expression" + }, + "fileName": { + "value": "@dataset().MyFileName", + "type": "Expression" + }, + "format": { + "type": "TextFormat" + } + }, + "linkedServiceName": { + "referenceName": "exampleLinkedService", + "type": "LinkedServiceReference" + }, + "parameters": { + "MyFolderPath": { + "type": "String" + }, + "MyFileName": { + "type": "String" + } + } + }, + "etag": "0a0066d4-0000-0000-0000-5b245bd20000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_Delete.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_Delete.json new file mode 100644 index 000000000000..e82de485176e --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "datasetName": "exampleDataset", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_Get.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_Get.json new file mode 100644 index 000000000000..e144948c6a4a --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_Get.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "datasetName": "exampleDataset", + "ifNoneMatch": "15004c4f-0000-0200-0000-5cbe090e0000", + "api-version": "2019-11-01-preview" + }, + "responses": { + "304": {}, + "200": { + "headers": { + "Date": "Mon, 22 Apr 2019 18:33:50 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "11993", + "x-ms-request-id": "48983fb5-612a-44c6-8158-add7ffebb32b", + "x-ms-correlation-request-id": "48983fb5-612a-44c6-8158-add7ffebb32b" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/datasets/exampleDataset", + "name": "exampleDataset", + "type": "Microsoft.Synapse/workspaces/datasets", + "properties": { + "type": "AzureBlob", + "typeProperties": { + "folderPath": { + "value": "@dataset().MyFolderPath", + "type": "Expression" + }, + "fileName": { + "value": "@dataset().MyFileName", + "type": "Expression" + }, + "format": { + "type": "TextFormat" + } + }, + "description": "Example description", + "linkedServiceName": { + "referenceName": "exampleLinkedService", + "type": "LinkedServiceReference" + }, + "parameters": { + "MyFolderPath": { + "type": "String" + }, + "MyFileName": { + "type": "String" + } + } + }, + "etag": "15004c4f-0000-0200-0000-5cbe090e0000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_ListByWorkspace.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_ListByWorkspace.json new file mode 100644 index 000000000000..f447e965203b --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_ListByWorkspace.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:40 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14992", + "x-ms-request-id": "341c9ece-5062-448b-be98-3ccbf476ed5d", + "x-ms-correlation-request-id": "341c9ece-5062-448b-be98-3ccbf476ed5d" + }, + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/datasets/exampleDataset", + "name": "exampleDataset", + "type": "Microsoft.Synapse/workspaces/datasets", + "properties": { + "type": "AzureBlob", + "typeProperties": { + "folderPath": { + "value": "@dataset().MyFolderPath", + "type": "Expression" + }, + "fileName": { + "value": "@dataset().MyFileName", + "type": "Expression" + }, + "format": { + "type": "TextFormat" + } + }, + "description": "Example description", + "linkedServiceName": { + "referenceName": "exampleLinkedService", + "type": "LinkedServiceReference" + }, + "parameters": { + "MyFolderPath": { + "type": "String" + }, + "MyFileName": { + "type": "String" + } + } + }, + "etag": "0a0068d4-0000-0000-0000-5b245bd30000" + } + ] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_Update.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_Update.json new file mode 100644 index 000000000000..bbb243a3e705 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Datasets_Update.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "datasetName": "exampleDataset", + "ifMatch": null, + "dataset": { + "properties": { + "type": "AzureBlob", + "typeProperties": { + "folderPath": { + "value": "@dataset().MyFolderPath", + "type": "Expression" + }, + "fileName": { + "value": "@dataset().MyFileName", + "type": "Expression" + }, + "format": { + "type": "TextFormat" + } + }, + "description": "Example description", + "linkedServiceName": { + "referenceName": "exampleLinkedService", + "type": "LinkedServiceReference" + }, + "parameters": { + "MyFolderPath": { + "type": "String" + }, + "MyFileName": { + "type": "String" + } + } + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:39 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1193", + "x-ms-request-id": "e2e7f6be-e7ee-4aae-943f-6ff799e034f2", + "x-ms-correlation-request-id": "e2e7f6be-e7ee-4aae-943f-6ff799e034f2" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/datasets/exampleDataset", + "name": "exampleDataset", + "type": "Microsoft.Synapse/workspaces/datasets", + "properties": { + "type": "AzureBlob", + "typeProperties": { + "folderPath": { + "value": "@dataset().MyFolderPath", + "type": "Expression" + }, + "fileName": { + "value": "@dataset().MyFileName", + "type": "Expression" + }, + "format": { + "type": "TextFormat" + } + }, + "description": "Example description", + "linkedServiceName": { + "referenceName": "exampleLinkedService", + "type": "LinkedServiceReference" + }, + "parameters": { + "MyFolderPath": { + "type": "String" + }, + "MyFileName": { + "type": "String" + } + } + }, + "etag": "0a0068d4-0000-0000-0000-5b245bd30000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_Create.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_Create.json new file mode 100644 index 000000000000..a390ebc6a97a --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_Create.json @@ -0,0 +1,47 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "linkedServiceName": "exampleLinkedService", + "ifMatch": null, + "linkedService": { + "properties": { + "type": "AzureStorage", + "typeProperties": { + "connectionString": { + "type": "SecureString", + "value": "DefaultEndpointsProtocol=https;AccountName=examplestorageaccount;AccountKey=" + } + } + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:34 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1196", + "x-ms-request-id": "b3b336b3-b203-4654-9cb6-a3a8d3a4b5de", + "x-ms-correlation-request-id": "b3b336b3-b203-4654-9cb6-a3a8d3a4b5de" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/linkedservices/exampleLinkedService", + "name": "exampleLinkedService", + "type": "Microsoft.Synapse/workspaces/linkedservices", + "properties": { + "type": "AzureStorage", + "typeProperties": { + "connectionString": { + "type": "SecureString", + "value": "**********" + }, + "encryptedCredential": "ew0KICAiVmVyc2lvbiI6ICIyMDE3LTExLTMwIiwNCiAgIlByb3RlY3Rpb25Nb2RlIjogIktleSIsDQogICJTZWNyZXRDb250ZW50VHlwZSI6ICJQbGFpbnRleHQiLA0KICAiQ3JlZGVudGlhbElkIjogIkRGLURPR0ZPT0QtWUFOWkhBTkctV1VfM2FiMTk0NjYtNWUxNi00NzU1LWJlNzktMjI2ZTVmZWU3YzY0Ig0KfQ==" + } + }, + "etag": "0a0062d4-0000-0000-0000-5b245bcf0000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_Delete.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_Delete.json new file mode 100644 index 000000000000..e4cc97bbd8e9 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "linkedServiceName": "exampleLinkedService", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_Get.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_Get.json new file mode 100644 index 000000000000..0febc6bb3664 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_Get.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "linkedServiceName": "exampleLinkedService", + "ifNoneMatch": "1500474f-0000-0200-0000-5cbe090d0000", + "api-version": "2019-11-01-preview" + }, + "responses": { + "304": {}, + "200": { + "headers": { + "Date": "Mon, 22 Apr 2019 18:33:48 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "11995", + "x-ms-request-id": "99e5d0d9-55e6-45a0-8bd2-cf39210f317c", + "x-ms-correlation-request-id": "99e5d0d9-55e6-45a0-8bd2-cf39210f317c" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/linkedservices/exampleLinkedService", + "name": "exampleLinkedService", + "type": "Microsoft.Synapse/workspaces/linkedservices", + "properties": { + "type": "AzureStorage", + "typeProperties": { + "connectionString": { + "type": "SecureString", + "value": "**********" + }, + "encryptedCredential": "ew0KICAiVmVyc2lvbiI6ICIyMDE3LTExLTMwIiwNCiAgIlByb3RlY3Rpb25Nb2RlIjogIktleSIsDQogICJTZWNyZXRDb250ZW50VHlwZSI6ICJQbGFpbnRleHQiLA0KICAiQ3JlZGVudGlhbElkIjogIkhWVEVTVEVYQU1QTEVTXzg5MjU1NGY0LTViNGItNDFhOS1hYWYxLTg4ZWI5ZDBjOWIzMyINCn0=" + }, + "description": "Example description" + }, + "etag": "1500474f-0000-0200-0000-5cbe090d0000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_ListByWorkspace.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_ListByWorkspace.json new file mode 100644 index 000000000000..2624517adc08 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_ListByWorkspace.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:36 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14994", + "x-ms-request-id": "558d0fd8-dc1f-44b6-9ca9-59fcca8af9a5", + "x-ms-correlation-request-id": "558d0fd8-dc1f-44b6-9ca9-59fcca8af9a5" + }, + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/linkedservices/exampleLinkedService", + "name": "exampleLinkedService", + "type": "Microsoft.Synapse/workspaces/linkedservices", + "properties": { + "type": "AzureStorage", + "typeProperties": { + "connectionString": { + "type": "SecureString", + "value": "**********" + }, + "encryptedCredential": "ew0KICAiVmVyc2lvbiI6ICIyMDE3LTExLTMwIiwNCiAgIlByb3RlY3Rpb25Nb2RlIjogIktleSIsDQogICJTZWNyZXRDb250ZW50VHlwZSI6ICJQbGFpbnRleHQiLA0KICAiQ3JlZGVudGlhbElkIjogIkRGLURPR0ZPT0QtWUFOWkhBTkctV1VfMGI2M2EyMmYtMGEzNC00NDg2LWIzMDktNzM0NTlkODUyY2Q1Ig0KfQ==" + }, + "description": "Example description" + }, + "etag": "0a0064d4-0000-0000-0000-5b245bd00000" + } + ] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_Update.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_Update.json new file mode 100644 index 000000000000..a5b3f337bcf1 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/LinkedServices_Update.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "linkedServiceName": "exampleLinkedService", + "ifMatch": null, + "linkedService": { + "properties": { + "type": "AzureStorage", + "typeProperties": { + "connectionString": { + "type": "SecureString", + "value": "DefaultEndpointsProtocol=https;AccountName=examplestorageaccount;AccountKey=" + } + }, + "description": "Example description" + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:36 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1195", + "x-ms-request-id": "53ad9761-ecdf-43ed-916f-878a5fb92cb0", + "x-ms-correlation-request-id": "53ad9761-ecdf-43ed-916f-878a5fb92cb0" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/linkedservices/exampleLinkedService", + "name": "exampleLinkedService", + "type": "Microsoft.Synapse/workspaces/linkedservices", + "properties": { + "type": "AzureStorage", + "typeProperties": { + "connectionString": { + "type": "SecureString", + "value": "**********" + }, + "encryptedCredential": "ew0KICAiVmVyc2lvbiI6ICIyMDE3LTExLTMwIiwNCiAgIlByb3RlY3Rpb25Nb2RlIjogIktleSIsDQogICJTZWNyZXRDb250ZW50VHlwZSI6ICJQbGFpbnRleHQiLA0KICAiQ3JlZGVudGlhbElkIjogIkRGLURPR0ZPT0QtWUFOWkhBTkctV1VfMGI2M2EyMmYtMGEzNC00NDg2LWIzMDktNzM0NTlkODUyY2Q1Ig0KfQ==" + }, + "description": "Example description" + }, + "etag": "0a0064d4-0000-0000-0000-5b245bd00000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_Create.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_Create.json new file mode 100644 index 000000000000..6e096bebb3de --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_Create.json @@ -0,0 +1,124 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "noteBookName": "exampleNoteBook", + "ifMatch": null, + "noteBook": { + "properties": { + "description": "A sample notebook", + "nbformat": 4, + "nbformat_minor": 2, + "bigDataPool": { + "referenceName": "exampleBigDataPoolName", + "type": "BigDataPoolReference" + }, + "sessionProperties": { + "driverMemory": "28g", + "driverCores": 4, + "executorMemory": "28g", + "executorCores": 4, + "numExecutors": 1 + }, + "metadata": { + "language_info": { + "name": "python" + }, + "kernelspec": { + "name": "exampleName", + "display_name": "exampleDisplayName" + } + }, + "cells": [ + { + "cell_type": "code", + "metadata": {}, + "source": [ + "def my_function():\n", + " print(\"Hello from a function\")\n", + "\n", + "my_function()" + ], + "attachments": {}, + "outputs": [ + { + "execution_count": 3, + "output_type": "execute_result", + "data": { + "text/plain": "Hello from a function" + }, + "metadata": {} + } + ] + } + ] + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:41 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "x-ms-correlation-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/notebooks/exampleNoteBook", + "name": "exampleNoteBook", + "type": "Microsoft.Synapse/workspaces/notebooks", + "properties": { + "description": "A sample notebook", + "nbformat": 4, + "nbformat_minor": 2, + "bigDataPool": { + "referenceName": "exampleBigDataPoolName", + "type": "BigDataPoolReference" + }, + "sessionProperties": { + "driverMemory": "28g", + "driverCores": 4, + "executorMemory": "28g", + "executorCores": 4, + "numExecutors": 1 + }, + "metadata": { + "language_info": { + "name": "python" + }, + "kernelspec": { + "name": "exampleName", + "display_name": "exampleDisplayName" + } + }, + "cells": [ + { + "cell_type": "code", + "metadata": {}, + "source": [ + "def my_function():\n", + " print(\"Hello from a function\")\n", + "\n", + "my_function()" + ], + "attachments": {}, + "outputs": [ + { + "execution_count": 3, + "output_type": "execute_result", + "data": { + "text/plain": "Hello from a function" + }, + "metadata": {} + } + ] + } + ] + }, + "etag": "0a0069d4-0000-0000-0000-5b245bd50000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_Delete.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_Delete.json new file mode 100644 index 000000000000..5b9d485f645f --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "noteBookName": "exampleNoteBook", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_Get.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_Get.json new file mode 100644 index 000000000000..1231f1525ebb --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_Get.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "noteBookName": "exampleNoteBook", + "ifNoneMatch": "1500504f-0000-0200-0000-5cbe090f0000", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:41 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "x-ms-correlation-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/notebooks/exampleNoteBook", + "name": "exampleNoteBook", + "type": "Microsoft.Synapse/workspaces/notebooks", + "properties": { + "description": "A sample notebook", + "nbformat": 4, + "nbformat_minor": 2, + "bigDataPool": { + "referenceName": "exampleBigDataPoolName", + "type": "BigDataPoolReference" + }, + "sessionProperties": { + "driverMemory": "28g", + "driverCores": 4, + "executorMemory": "28g", + "executorCores": 4, + "numExecutors": 1 + }, + "metadata": { + "language_info": { + "name": "python" + }, + "kernelspec": { + "name": "exampleName", + "display_name": "exampleDisplayName" + } + }, + "cells": [ + { + "cell_type": "code", + "metadata": {}, + "source": [ + "def my_function():\n", + " print(\"Hello from a function\")\n", + "\n", + "my_function()" + ], + "attachments": {}, + "outputs": [ + { + "execution_count": 3, + "output_type": "execute_result", + "data": { + "text/plain": "Hello from a function" + }, + "metadata": {} + } + ] + } + ] + }, + "etag": "1500504f-0000-0200-0000-5cbe090f0000" + } + }, + "304": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_ListByWorkspace.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_ListByWorkspace.json new file mode 100644 index 000000000000..b45c79479777 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_ListByWorkspace.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:41 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "x-ms-correlation-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264" + }, + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/notebooks/exampleNoteBook", + "name": "exampleNoteBook", + "type": "Microsoft.Synapse/workspaces/notebooks", + "properties": { + "description": "A sample notebook", + "nbformat": 4, + "nbformat_minor": 2, + "bigDataPool": { + "referenceName": "exampleBigDataPoolName", + "type": "BigDataPoolReference" + }, + "sessionProperties": { + "driverMemory": "28g", + "driverCores": 4, + "executorMemory": "28g", + "executorCores": 4, + "numExecutors": 1 + }, + "metadata": { + "language_info": { + "name": "python" + }, + "kernelspec": { + "name": "exampleName", + "display_name": "exampleDisplayName" + } + }, + "cells": [ + { + "cell_type": "code", + "metadata": {}, + "source": [ + "def my_function():\n", + " print(\"Hello from a function\")\n", + "\n", + "my_function()" + ], + "attachments": {}, + "outputs": [ + { + "execution_count": 3, + "output_type": "execute_result", + "data": { + "text/plain": "Hello from a function" + }, + "metadata": {} + } + ] + } + ] + }, + "etag": "1500504f-0000-0200-0000-5cbe090f0000" + } + ] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_ListSummaryByWorkSpace.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_ListSummaryByWorkSpace.json new file mode 100644 index 000000000000..b45c79479777 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_ListSummaryByWorkSpace.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:41 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "x-ms-correlation-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264" + }, + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/notebooks/exampleNoteBook", + "name": "exampleNoteBook", + "type": "Microsoft.Synapse/workspaces/notebooks", + "properties": { + "description": "A sample notebook", + "nbformat": 4, + "nbformat_minor": 2, + "bigDataPool": { + "referenceName": "exampleBigDataPoolName", + "type": "BigDataPoolReference" + }, + "sessionProperties": { + "driverMemory": "28g", + "driverCores": 4, + "executorMemory": "28g", + "executorCores": 4, + "numExecutors": 1 + }, + "metadata": { + "language_info": { + "name": "python" + }, + "kernelspec": { + "name": "exampleName", + "display_name": "exampleDisplayName" + } + }, + "cells": [ + { + "cell_type": "code", + "metadata": {}, + "source": [ + "def my_function():\n", + " print(\"Hello from a function\")\n", + "\n", + "my_function()" + ], + "attachments": {}, + "outputs": [ + { + "execution_count": 3, + "output_type": "execute_result", + "data": { + "text/plain": "Hello from a function" + }, + "metadata": {} + } + ] + } + ] + }, + "etag": "1500504f-0000-0200-0000-5cbe090f0000" + } + ] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_Update.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_Update.json new file mode 100644 index 000000000000..3add275201f5 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/NoteBooks_Update.json @@ -0,0 +1,124 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "noteBookName": "exampleNoteBook", + "ifMatch": null, + "noteBook": { + "properties": { + "description": "Modified description", + "nbformat": 4, + "nbformat_minor": 2, + "bigDataPool": { + "referenceName": "exampleBigDataPoolName", + "type": "BigDataPoolReference" + }, + "sessionProperties": { + "driverMemory": "28g", + "driverCores": 4, + "executorMemory": "28g", + "executorCores": 4, + "numExecutors": 1 + }, + "metadata": { + "language_info": { + "name": "python" + }, + "kernelspec": { + "name": "exampleName", + "display_name": "exampleDisplayName" + } + }, + "cells": [ + { + "cell_type": "code", + "metadata": {}, + "source": [ + "def my_function():\n", + " print(\"Hello from a function\")\n", + "\n", + "my_function()" + ], + "attachments": {}, + "outputs": [ + { + "execution_count": 3, + "output_type": "execute_result", + "data": { + "text/plain": "Hello from a function" + }, + "metadata": {} + } + ] + } + ] + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:41 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "x-ms-correlation-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/notebooks/exampleNoteBook", + "name": "exampleNoteBook", + "type": "Microsoft.Synapse/workspaces/notebooks", + "properties": { + "description": "Modified description", + "nbformat": 4, + "nbformat_minor": 2, + "bigDataPool": { + "referenceName": "exampleBigDataPoolName", + "type": "BigDataPoolReference" + }, + "sessionProperties": { + "driverMemory": "28g", + "driverCores": 4, + "executorMemory": "28g", + "executorCores": 4, + "numExecutors": 1 + }, + "metadata": { + "language_info": { + "name": "python" + }, + "kernelspec": { + "name": "exampleName", + "display_name": "exampleDisplayName" + } + }, + "cells": [ + { + "cell_type": "code", + "metadata": {}, + "source": [ + "def my_function():\n", + " print(\"Hello from a function\")\n", + "\n", + "my_function()" + ], + "attachments": {}, + "outputs": [ + { + "execution_count": 3, + "output_type": "execute_result", + "data": { + "text/plain": "Hello from a function" + }, + "metadata": {} + } + ] + } + ] + }, + "etag": "0a006cd4-0000-0000-0000-5b245bd60000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/PipelineRuns_Cancel.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/PipelineRuns_Cancel.json new file mode 100644 index 000000000000..240fccae8866 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/PipelineRuns_Cancel.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "runId": "16ac5348-ff82-4f95-a80d-638c1d47b721", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/PipelineRuns_Get.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/PipelineRuns_Get.json new file mode 100644 index 000000000000..c70c28bcd545 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/PipelineRuns_Get.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "runId": "2f7fdb90-5df1-4b8e-ac2f-064cfa58202b", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:40:02 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14988", + "x-ms-request-id": "6d9de9bd-a412-4a6f-8b9e-37d369323646", + "x-ms-correlation-request-id": "6d9de9bd-a412-4a6f-8b9e-37d369323646" + }, + "body": { + "runId": "2f7fdb90-5df1-4b8e-ac2f-064cfa58202b", + "pipelineName": "examplePipeline", + "parameters": { + "OutputBlobNameList": "[\"exampleoutput.csv\"]" + }, + "invokedBy": { + "id": "80a01654a9d34ad18b3fcac5d5d76b67", + "name": "Manual" + }, + "runStart": "2018-06-16T00:37:44.6257014Z", + "runEnd": "2018-06-16T00:38:12.7314495Z", + "durationInMs": 28105, + "status": "Succeeded", + "message": "", + "lastUpdated": "2018-06-16T00:38:12.7314495Z", + "annotations": [] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/PipelineRuns_QueryByWorkspace.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/PipelineRuns_QueryByWorkspace.json new file mode 100644 index 000000000000..729a2293c584 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/PipelineRuns_QueryByWorkspace.json @@ -0,0 +1,77 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "filterParameters": { + "lastUpdatedAfter": "2018-06-16T00:36:44.3345758Z", + "lastUpdatedBefore": "2018-06-16T00:49:48.3686473Z", + "filters": [ + { + "operand": "PipelineName", + "operator": "Equals", + "values": [ + "examplePipeline" + ] + } + ] + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:40:01 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14989", + "x-ms-request-id": "2f955e10-c6df-45a7-97d4-81acdb8540cd", + "x-ms-correlation-request-id": "2f955e10-c6df-45a7-97d4-81acdb8540cd" + }, + "body": { + "value": [ + { + "runId": "2f7fdb90-5df1-4b8e-ac2f-064cfa58202b", + "pipelineName": "examplePipeline", + "parameters": { + "OutputBlobNameList": "[\"exampleoutput.csv\"]" + }, + "invokedBy": { + "id": "80a01654a9d34ad18b3fcac5d5d76b67", + "name": "Manual" + }, + "runStart": "2018-06-16T00:37:44.6257014Z", + "runEnd": "2018-06-16T00:38:12.7314495Z", + "durationInMs": 28105, + "status": "Succeeded", + "message": "", + "lastUpdated": "2018-06-16T00:38:12.7314495Z", + "annotations": [], + "runDimension": { + "JobId": "79c1cc52-265f-41a5-9553-be65e736fbd3" + } + }, + { + "runId": "16ac5348-ff82-4f95-a80d-638c1d47b721", + "pipelineName": "examplePipeline", + "parameters": { + "OutputBlobNameList": "[\"exampleoutput.csv\"]" + }, + "invokedBy": { + "id": "7c5fd7ef7e8a464b98b931cf15fcac66", + "name": "Manual" + }, + "runStart": "2018-06-16T00:39:49.2745128Z", + "runEnd": null, + "durationInMs": null, + "status": "Cancelled", + "message": "", + "lastUpdated": "2018-06-16T00:39:51.216097Z", + "annotations": [], + "runDimension": { + "JobId": "84a3c493-0628-4b44-852f-ef5b3a11bdab" + } + } + ] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_Create.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_Create.json new file mode 100644 index 000000000000..aa5d08c13e96 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_Create.json @@ -0,0 +1,172 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "pipelineName": "examplePipeline", + "ifMatch": null, + "pipeline": { + "properties": { + "activities": [ + { + "type": "ForEach", + "typeProperties": { + "isSequential": true, + "items": { + "value": "@pipeline().parameters.OutputBlobNameList", + "type": "Expression" + }, + "activities": [ + { + "type": "Copy", + "typeProperties": { + "source": { + "type": "BlobSource" + }, + "sink": { + "type": "BlobSink" + }, + "dataIntegrationUnits": 32 + }, + "inputs": [ + { + "referenceName": "exampleDataset", + "parameters": { + "MyFolderPath": "examplecontainer", + "MyFileName": "examplecontainer.csv" + }, + "type": "DatasetReference" + } + ], + "outputs": [ + { + "referenceName": "exampleDataset", + "parameters": { + "MyFolderPath": "examplecontainer", + "MyFileName": { + "value": "@item()", + "type": "Expression" + } + }, + "type": "DatasetReference" + } + ], + "name": "ExampleCopyActivity" + } + ] + }, + "name": "ExampleForeachActivity" + } + ], + "parameters": { + "OutputBlobNameList": { + "type": "Array" + }, + "JobId": { + "type": "String" + } + }, + "variables": { + "TestVariableArray": { + "type": "Array" + } + }, + "runDimensions": { + "JobId": { + "value": "@pipeline().parameters.JobId", + "type": "Expression" + } + } + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:41 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "x-ms-correlation-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/pipelines/examplePipeline", + "name": "examplePipeline", + "type": "Microsoft.Synapse/workspaces/pipelines", + "properties": { + "activities": [ + { + "type": "ForEach", + "typeProperties": { + "isSequential": true, + "items": { + "value": "@pipeline().parameters.OutputBlobNameList", + "type": "Expression" + }, + "activities": [ + { + "type": "Copy", + "typeProperties": { + "source": { + "type": "BlobSource" + }, + "sink": { + "type": "BlobSink" + }, + "dataIntegrationUnits": 32 + }, + "inputs": [ + { + "referenceName": "exampleDataset", + "parameters": { + "MyFolderPath": "examplecontainer", + "MyFileName": "examplecontainer.csv" + }, + "type": "DatasetReference" + } + ], + "outputs": [ + { + "referenceName": "exampleDataset", + "parameters": { + "MyFolderPath": "examplecontainer", + "MyFileName": { + "value": "@item()", + "type": "Expression" + } + }, + "type": "DatasetReference" + } + ], + "name": "ExampleCopyActivity" + } + ] + }, + "name": "ExampleForeachActivity" + } + ], + "parameters": { + "OutputBlobNameList": { + "type": "Array" + }, + "JobId": { + "type": "String" + } + }, + "variables": { + "TestVariableArray": { + "type": "Array" + } + }, + "runDimensions": { + "JobId": { + "value": "@pipeline().parameters.JobId", + "type": "Expression" + } + } + }, + "etag": "0a0069d4-0000-0000-0000-5b245bd50000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_CreateRun.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_CreateRun.json new file mode 100644 index 000000000000..9ccab2c1f7a4 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_CreateRun.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "pipelineName": "examplePipeline", + "referencePipelineRunId": null, + "parameters": { + "OutputBlobNameList": [ + "exampleoutput.csv" + ] + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:48 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1190", + "x-ms-request-id": "5c2b442b-d360-43ec-9268-f923f88f31fd", + "x-ms-correlation-request-id": "5c2b442b-d360-43ec-9268-f923f88f31fd" + }, + "body": { + "runId": "2f7fdb90-5df1-4b8e-ac2f-064cfa58202b" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_Delete.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_Delete.json new file mode 100644 index 000000000000..cb459371f543 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "pipelineName": "examplePipeline", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_Get.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_Get.json new file mode 100644 index 000000000000..5336cd82dc2b --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_Get.json @@ -0,0 +1,91 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "pipelineName": "examplePipeline", + "ifNoneMatch": "1500504f-0000-0200-0000-5cbe090f0000", + "api-version": "2019-11-01-preview" + }, + "responses": { + "304": {}, + "200": { + "headers": { + "Date": "Mon, 22 Apr 2019 18:33:51 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "11991", + "x-ms-request-id": "f3865c61-4888-4b91-a617-9a985d9dd0fd", + "x-ms-correlation-request-id": "f3865c61-4888-4b91-a617-9a985d9dd0fd" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/pipelines/examplePipeline", + "name": "examplePipeline", + "type": "Microsoft.Synapse/workspaces/pipelines", + "properties": { + "description": "Example description", + "activities": [ + { + "type": "ForEach", + "typeProperties": { + "isSequential": true, + "items": { + "value": "@pipeline().parameters.OutputBlobNameList", + "type": "Expression" + }, + "activities": [ + { + "type": "Copy", + "typeProperties": { + "source": { + "type": "BlobSource" + }, + "sink": { + "type": "BlobSink" + }, + "dataIntegrationUnits": 32 + }, + "inputs": [ + { + "referenceName": "exampleDataset", + "parameters": { + "MyFolderPath": "examplecontainer", + "MyFileName": "examplecontainer.csv" + }, + "type": "DatasetReference" + } + ], + "outputs": [ + { + "referenceName": "exampleDataset", + "parameters": { + "MyFolderPath": "examplecontainer", + "MyFileName": { + "value": "@item()", + "type": "Expression" + } + }, + "type": "DatasetReference" + } + ], + "name": "ExampleCopyActivity" + } + ] + }, + "name": "ExampleForeachActivity" + } + ], + "parameters": { + "OutputBlobNameList": { + "type": "Array" + } + }, + "variables": { + "TestVariableArray": { + "type": "Array" + } + } + }, + "etag": "1500504f-0000-0200-0000-5cbe090f0000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_ListByWorkspace.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_ListByWorkspace.json new file mode 100644 index 000000000000..d5ecfa79951a --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_ListByWorkspace.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:43 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14990", + "x-ms-request-id": "92292250-c10f-4c47-8eb6-b886b361add7", + "x-ms-correlation-request-id": "92292250-c10f-4c47-8eb6-b886b361add7" + }, + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/pipelines/examplePipeline", + "name": "examplePipeline", + "type": "Microsoft.Synapse/workspaces/pipelines", + "properties": { + "description": "Example description", + "activities": [ + { + "type": "ForEach", + "typeProperties": { + "isSequential": true, + "items": { + "value": "@pipeline().parameters.OutputBlobNameList", + "type": "Expression" + }, + "activities": [ + { + "type": "Copy", + "typeProperties": { + "source": { + "type": "BlobSource" + }, + "sink": { + "type": "BlobSink" + }, + "dataIntegrationUnits": 32 + }, + "inputs": [ + { + "referenceName": "exampleDataset", + "parameters": { + "MyFolderPath": "examplecontainer", + "MyFileName": "examplecontainer.csv" + }, + "type": "DatasetReference" + } + ], + "outputs": [ + { + "referenceName": "exampleDataset", + "parameters": { + "MyFolderPath": "examplecontainer", + "MyFileName": { + "value": "@item()", + "type": "Expression" + } + }, + "type": "DatasetReference" + } + ], + "name": "ExampleCopyActivity" + } + ] + }, + "name": "ExampleForeachActivity" + } + ], + "parameters": { + "OutputBlobNameList": { + "type": "Array" + } + } + }, + "etag": "0a006cd4-0000-0000-0000-5b245bd60000" + } + ] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_Update.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_Update.json new file mode 100644 index 000000000000..831858484fd3 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Pipelines_Update.json @@ -0,0 +1,146 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "pipelineName": "examplePipeline", + "ifMatch": null, + "pipeline": { + "properties": { + "description": "Example description", + "activities": [ + { + "type": "ForEach", + "typeProperties": { + "isSequential": true, + "items": { + "value": "@pipeline().parameters.OutputBlobNameList", + "type": "Expression" + }, + "activities": [ + { + "type": "Copy", + "typeProperties": { + "source": { + "type": "BlobSource" + }, + "sink": { + "type": "BlobSink" + }, + "dataIntegrationUnits": 32 + }, + "inputs": [ + { + "referenceName": "exampleDataset", + "parameters": { + "MyFolderPath": "examplecontainer", + "MyFileName": "examplecontainer.csv" + }, + "type": "DatasetReference" + } + ], + "outputs": [ + { + "referenceName": "exampleDataset", + "parameters": { + "MyFolderPath": "examplecontainer", + "MyFileName": { + "value": "@item()", + "type": "Expression" + } + }, + "type": "DatasetReference" + } + ], + "name": "ExampleCopyActivity" + } + ] + }, + "name": "ExampleForeachActivity" + } + ], + "parameters": { + "OutputBlobNameList": { + "type": "Array" + } + } + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:43 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1191", + "x-ms-request-id": "91a763b0-d944-493f-83fc-e989c8b6e122", + "x-ms-correlation-request-id": "91a763b0-d944-493f-83fc-e989c8b6e122" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/pipelines/examplePipeline", + "name": "examplePipeline", + "type": "Microsoft.Synapse/workspaces/pipelines", + "properties": { + "description": "Example description", + "activities": [ + { + "type": "ForEach", + "typeProperties": { + "isSequential": true, + "items": { + "value": "@pipeline().parameters.OutputBlobNameList", + "type": "Expression" + }, + "activities": [ + { + "type": "Copy", + "typeProperties": { + "source": { + "type": "BlobSource" + }, + "sink": { + "type": "BlobSink" + }, + "dataIntegrationUnits": 32 + }, + "inputs": [ + { + "referenceName": "exampleDataset", + "parameters": { + "MyFolderPath": "examplecontainer", + "MyFileName": "examplecontainer.csv" + }, + "type": "DatasetReference" + } + ], + "outputs": [ + { + "referenceName": "exampleDataset", + "parameters": { + "MyFolderPath": "examplecontainer", + "MyFileName": { + "value": "@item()", + "type": "Expression" + } + }, + "type": "DatasetReference" + } + ], + "name": "ExampleCopyActivity" + } + ] + }, + "name": "ExampleForeachActivity" + } + ], + "parameters": { + "OutputBlobNameList": { + "type": "Array" + } + } + }, + "etag": "0a006cd4-0000-0000-0000-5b245bd60000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Create.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Create.json new file mode 100644 index 000000000000..6572cbb38414 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Create.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "sparkJobDefinitionName": "exampleSparkJobDefinition", + "ifMatch": null, + "sparkJobDefinition": { + "properties": { + "description": "A sample spark job definition", + "targetBigDataPool": { + "referenceName": "exampleBigDataPool", + "type": "BigDataPoolReference" + }, + "requiredSparkVersion": "2.4", + "jobProperties": { + "name": "exampleSparkJobDefinition", + "file": "abfss://test@test.dfs.core.windows.net/artefacts/sample.jar", + "className": "dev.test.tools.sample.Main", + "conf": {}, + "args": [ + "exampleArg" + ], + "jars": [], + "pyFiles": [], + "files": [], + "archives": [], + "driverMemory": "28g", + "driverCores": 4, + "executorMemory": "28g", + "executorCores": 4, + "numExecutors": 2 + } + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:41 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "x-ms-correlation-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/sparkjobdefinitions/exampleSparkJobDefinition", + "name": "exampleSparkJobDefinition", + "type": "Microsoft.Synapse/workspaces/sparkjobdefinitions", + "properties": { + "description": "A sample spark job definition", + "targetBigDataPool": { + "referenceName": "exampleBigDataPool", + "type": "BigDataPoolReference" + }, + "requiredSparkVersion": "2.4", + "jobProperties": { + "name": "exampleSparkJobDefinition", + "file": "abfss://test@test.dfs.core.windows.net/artefacts/sample.jar", + "className": "dev.test.tools.sample.Main", + "conf": {}, + "args": [ + "exampleArg" + ], + "jars": [], + "pyFiles": [], + "files": [], + "archives": [], + "driverMemory": "28g", + "driverCores": 4, + "executorMemory": "28g", + "executorCores": 4, + "numExecutors": 2 + } + }, + "etag": "0a0069d4-0000-0000-0000-5b245bd50000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Debug.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Debug.json new file mode 100644 index 000000000000..e274b30ea43a --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Debug.json @@ -0,0 +1,167 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "sparkJobDefinitionAzureResource": { + "properties": { + "description": "A sample spark job definition", + "targetBigDataPool": { + "referenceName": "exampleBigDataPool", + "type": "BigDataPoolReference" + }, + "requiredSparkVersion": "2.4", + "jobProperties": { + "name": "exampleSparkJobDefinition", + "file": "https://somestorage.blob.core.windows.net/main.jar", + "className": "SampleApp.SampleApp", + "conf": {}, + "driverMemory": "2g", + "driverCores": 2, + "executorMemory": "2g", + "executorCores": 2, + "numExecutors": 2 + } + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "202": { + "headers": { + "Date": "Sat, 13 Sep 2019 23:38:58 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "x-ms-correlation-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "location": "https://exampleWorkspaceName.dev.azuresynapse.net/operationResults/arcadiaSpark$$exampleBigDataPool$$batch$$1?api-version=2019-11-01-preview" + }, + "body": { + "livyInfo": { + "startingAt": "2019-09-13T23:38:08.9498718+00:00", + "runningAt": "2019-09-13T23:38:33.1197083+00:00", + "currentState": "running", + "jobCreationRequest": { + "name": "SampleBatchJob", + "file": "https://somestorage.blob.core.windows.net/main.jar", + "className": "SampleApp.SampleApp", + "conf": {}, + "driverMemory": "2g", + "driverCores": 2, + "executorMemory": "2g", + "executorCores": 2, + "numExecutors": 2 + } + }, + "name": "SampleBatchJob", + "workspaceName": "exampleWorkspace", + "sparkPoolName": "c0", + "submitterName": "user@domain.com", + "submitterId": "12345678-1234-1234-1234-12345678abc", + "artifactId": "Livy", + "jobType": "SparkBatch", + "result": "Succeeded", + "schedulerInfo": { + "submittedAt": "2019-09-13T23:38:01.3002495+00:00", + "scheduledAt": "2019-09-13T23:38:03.6535682+00:00", + "currentState": "running" + }, + "pluginInfo": { + "preparationStartedAt": "2019-09-13T23:38:03.7178558+00:00", + "resourceAcquisitionStartedAt": "2019-09-13T23:38:04.5467298+00:00", + "submissionStartedAt": "2019-09-13T23:38:05.4808501+00:00", + "currentState": "running" + }, + "tags": {}, + "id": 0, + "appId": "application_1568416412157_0002", + "appInfo": { + "driverLogUrl": "http://aa5a93c513fa426980a44e8124b9797b000eb919817:8042/node/containerlogs/container_1568416412157_0002_02_000001/trusted-service-user", + "sparkUiUrl": "http://aa5a93c513fa426980a44e8124b9797b004f5397319:8088/proxy/application_1568416412157_0002/" + }, + "state": "running", + "log": [ + "\tat org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:211)", + "\tat org.apache.spark.sql.DataFrameReader.json(DataFrameReader.scala:391)", + "\tat org.apache.spark.sql.DataFrameReader.json(DataFrameReader.scala:325)", + "\tat SampleApp.SampleApp$.main(SampleApp.scala:39)", + "\tat SampleApp.SampleApp.main(SampleApp.scala)", + "\tat sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)", + "\tat sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)", + "\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)", + "\tat java.lang.reflect.Method.invoke(Method.java:498)", + "\tat org.apache.spark.deploy.yarn.ApplicationMaster$$anon$2.run(ApplicationMaster.scala:684)" + ] + } + }, + "200": { + "headers": { + "Date": "Sat, 13 Sep 2019 23:38:58 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "x-ms-correlation-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264" + }, + "body": { + "livyInfo": { + "startingAt": "2019-09-13T23:38:08.9498718+00:00", + "runningAt": "2019-09-13T23:38:33.1197083+00:00", + "successAt": "2019-09-13T23:38:57.2737498+00:00", + "currentState": "success", + "jobCreationRequest": { + "name": "SampleBatchJob", + "file": "https://somestorage.blob.core.windows.net/main.jar", + "className": "SampleApp.SampleApp", + "conf": {}, + "driverMemory": "2g", + "driverCores": 2, + "executorMemory": "2g", + "executorCores": 2, + "numExecutors": 2 + } + }, + "name": "SampleBatchJob", + "workspaceName": "exampleWorkspace", + "sparkPoolName": "c0", + "submitterName": "user@domain.com", + "submitterId": "12345678-1234-1234-1234-12345678abc", + "artifactId": "Livy", + "jobType": "SparkBatch", + "result": "Succeeded", + "schedulerInfo": { + "submittedAt": "2019-09-13T23:38:01.3002495+00:00", + "scheduledAt": "2019-09-13T23:38:03.6535682+00:00", + "endedAt": "2019-09-13T23:38:57.5375224+00:00", + "currentState": "Ended" + }, + "pluginInfo": { + "preparationStartedAt": "2019-09-13T23:38:03.7178558+00:00", + "resourceAcquisitionStartedAt": "2019-09-13T23:38:04.5467298+00:00", + "submissionStartedAt": "2019-09-13T23:38:05.4808501+00:00", + "monitoringStartedAt": "2019-09-13T23:38:09.0304334+00:00", + "cleanupStartedAt": "2019-09-13T23:38:57.3472897+00:00", + "currentState": "Ended" + }, + "tags": {}, + "id": 0, + "appId": "application_1568416412157_0002", + "appInfo": { + "driverLogUrl": "http://aa5a93c513fa426980a44e8124b9797b000eb919817:8042/node/containerlogs/container_1568416412157_0002_02_000001/trusted-service-user", + "sparkUiUrl": "http://aa5a93c513fa426980a44e8124b9797b004f5397319:8088/proxy/application_1568416412157_0002/" + }, + "state": "success", + "log": [ + "\tat org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:211)", + "\tat org.apache.spark.sql.DataFrameReader.json(DataFrameReader.scala:391)", + "\tat org.apache.spark.sql.DataFrameReader.json(DataFrameReader.scala:325)", + "\tat SampleApp.SampleApp$.main(SampleApp.scala:39)", + "\tat SampleApp.SampleApp.main(SampleApp.scala)", + "\tat sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)", + "\tat sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)", + "\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)", + "\tat java.lang.reflect.Method.invoke(Method.java:498)", + "\tat org.apache.spark.deploy.yarn.ApplicationMaster$$anon$2.run(ApplicationMaster.scala:684)" + ] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Delete.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Delete.json new file mode 100644 index 000000000000..5ebb9f424a2a --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "sparkJobDefinitionName": "exampleSparkJobDefinition", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Execute.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Execute.json new file mode 100644 index 000000000000..0c8aabb09867 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Execute.json @@ -0,0 +1,147 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "sparkJobDefinitionName": "exampleSparkJobDefinition", + "api-version": "2019-11-01-preview" + }, + "responses": { + "202": { + "headers": { + "Date": "Sat, 13 Sep 2019 23:38:58 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "x-ms-correlation-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "location": "https://exampleWorkspaceName.dev.azuresynapse.net/operationResults/arcadiaSpark$$exampleBigDataPool$$batch$$1?api-version=2019-11-01-preview" + }, + "body": { + "livyInfo": { + "startingAt": "2019-09-13T23:38:08.9498718+00:00", + "runningAt": "2019-09-13T23:38:33.1197083+00:00", + "currentState": "running", + "jobCreationRequest": { + "name": "SampleBatchJob", + "file": "https://somestorage.blob.core.windows.net/main.jar", + "className": "SampleApp.SampleApp", + "conf": {}, + "driverMemory": "2g", + "driverCores": 2, + "executorMemory": "2g", + "executorCores": 2, + "numExecutors": 2 + } + }, + "name": "SampleBatchJob", + "workspaceName": "exampleWorkspace", + "sparkPoolName": "c0", + "submitterName": "user@domain.com", + "submitterId": "12345678-1234-1234-1234-12345678abc", + "artifactId": "Livy", + "jobType": "SparkBatch", + "result": "Succeeded", + "schedulerInfo": { + "submittedAt": "2019-09-13T23:38:01.3002495+00:00", + "scheduledAt": "2019-09-13T23:38:03.6535682+00:00", + "currentState": "running" + }, + "pluginInfo": { + "preparationStartedAt": "2019-09-13T23:38:03.7178558+00:00", + "resourceAcquisitionStartedAt": "2019-09-13T23:38:04.5467298+00:00", + "submissionStartedAt": "2019-09-13T23:38:05.4808501+00:00", + "currentState": "running" + }, + "tags": {}, + "id": 0, + "appId": "application_1568416412157_0002", + "appInfo": { + "driverLogUrl": "http://aa5a93c513fa426980a44e8124b9797b000eb919817:8042/node/containerlogs/container_1568416412157_0002_02_000001/trusted-service-user", + "sparkUiUrl": "http://aa5a93c513fa426980a44e8124b9797b004f5397319:8088/proxy/application_1568416412157_0002/" + }, + "state": "running", + "log": [ + "\tat org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:211)", + "\tat org.apache.spark.sql.DataFrameReader.json(DataFrameReader.scala:391)", + "\tat org.apache.spark.sql.DataFrameReader.json(DataFrameReader.scala:325)", + "\tat SampleApp.SampleApp$.main(SampleApp.scala:39)", + "\tat SampleApp.SampleApp.main(SampleApp.scala)", + "\tat sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)", + "\tat sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)", + "\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)", + "\tat java.lang.reflect.Method.invoke(Method.java:498)", + "\tat org.apache.spark.deploy.yarn.ApplicationMaster$$anon$2.run(ApplicationMaster.scala:684)" + ] + } + }, + "200": { + "headers": { + "Date": "Sat, 13 Sep 2019 23:38:58 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "x-ms-correlation-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264" + }, + "body": { + "livyInfo": { + "startingAt": "2019-09-13T23:38:08.9498718+00:00", + "runningAt": "2019-09-13T23:38:33.1197083+00:00", + "successAt": "2019-09-13T23:38:57.2737498+00:00", + "currentState": "success", + "jobCreationRequest": { + "name": "SampleBatchJob", + "file": "https://somestorage.blob.core.windows.net/main.jar", + "className": "SampleApp.SampleApp", + "conf": {}, + "driverMemory": "2g", + "driverCores": 2, + "executorMemory": "2g", + "executorCores": 2, + "numExecutors": 2 + } + }, + "name": "SampleBatchJob", + "workspaceName": "exampleWorkspace", + "sparkPoolName": "c0", + "submitterName": "user@domain.com", + "submitterId": "12345678-1234-1234-1234-12345678abc", + "artifactId": "Livy", + "jobType": "SparkBatch", + "result": "Succeeded", + "schedulerInfo": { + "submittedAt": "2019-09-13T23:38:01.3002495+00:00", + "scheduledAt": "2019-09-13T23:38:03.6535682+00:00", + "endedAt": "2019-09-13T23:38:57.5375224+00:00", + "currentState": "Ended" + }, + "pluginInfo": { + "preparationStartedAt": "2019-09-13T23:38:03.7178558+00:00", + "resourceAcquisitionStartedAt": "2019-09-13T23:38:04.5467298+00:00", + "submissionStartedAt": "2019-09-13T23:38:05.4808501+00:00", + "monitoringStartedAt": "2019-09-13T23:38:09.0304334+00:00", + "cleanupStartedAt": "2019-09-13T23:38:57.3472897+00:00", + "currentState": "Ended" + }, + "tags": {}, + "id": 0, + "appId": "application_1568416412157_0002", + "appInfo": { + "driverLogUrl": "http://aa5a93c513fa426980a44e8124b9797b000eb919817:8042/node/containerlogs/container_1568416412157_0002_02_000001/trusted-service-user", + "sparkUiUrl": "http://aa5a93c513fa426980a44e8124b9797b004f5397319:8088/proxy/application_1568416412157_0002/" + }, + "state": "success", + "log": [ + "\tat org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:211)", + "\tat org.apache.spark.sql.DataFrameReader.json(DataFrameReader.scala:391)", + "\tat org.apache.spark.sql.DataFrameReader.json(DataFrameReader.scala:325)", + "\tat SampleApp.SampleApp$.main(SampleApp.scala:39)", + "\tat SampleApp.SampleApp.main(SampleApp.scala)", + "\tat sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)", + "\tat sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)", + "\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)", + "\tat java.lang.reflect.Method.invoke(Method.java:498)", + "\tat org.apache.spark.deploy.yarn.ApplicationMaster$$anon$2.run(ApplicationMaster.scala:684)" + ] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Get.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Get.json new file mode 100644 index 000000000000..d36ba238c79a --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Get.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "sparkJobDefinitionName": "exampleSparkJobDefinition", + "ifNoneMatch": "1500504f-0000-0200-0000-5cbe090f0000", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:41 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "x-ms-correlation-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/sparkjobdefinitions/exampleSparkJobDefinition", + "name": "exampleSparkJobDefinition", + "type": "Microsoft.Synapse/workspaces/sparkjobdefinitions", + "properties": { + "description": "A sample spark job definition", + "targetBigDataPool": { + "referenceName": "exampleBigDataPool", + "type": "BigDataPoolReference" + }, + "requiredSparkVersion": "2.4", + "jobProperties": { + "name": "exampleSparkJobDefinition", + "file": "abfss://test@test.dfs.core.windows.net/artefacts/sample.jar", + "className": "dev.test.tools.sample.Main", + "conf": {}, + "args": [ + "exampleArg" + ], + "jars": [], + "pyFiles": [], + "files": [], + "archives": [], + "driverMemory": "28g", + "driverCores": 4, + "executorMemory": "28g", + "executorCores": 4, + "numExecutors": 2 + } + }, + "etag": "1500504f-0000-0200-0000-5cbe090f0000" + } + }, + "304": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_ListByWorkspace.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_ListByWorkspace.json new file mode 100644 index 000000000000..f05b845f65ba --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_ListByWorkspace.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:43 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14990", + "x-ms-request-id": "92292250-c10f-4c47-8eb6-b886b361add7", + "x-ms-correlation-request-id": "92292250-c10f-4c47-8eb6-b886b361add7" + }, + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/sparkjobdefinitions/exampleSparkJobDefinition", + "name": "exampleSparkJobDefinition", + "type": "Microsoft.Synapse/workspaces/sparkjobdefinitions", + "properties": { + "description": "A sample spark job definition", + "targetBigDataPool": { + "referenceName": "exampleBigDataPool", + "type": "BigDataPoolReference" + }, + "requiredSparkVersion": "2.4", + "jobProperties": { + "name": "exampleSparkJobDefinition", + "file": "abfss://test@test.dfs.core.windows.net/artefacts/sample.jar", + "className": "dev.test.tools.sample.Main", + "conf": {}, + "args": [ + "exampleArg" + ], + "jars": [], + "pyFiles": [], + "files": [], + "archives": [], + "driverMemory": "28g", + "driverCores": 4, + "executorMemory": "28g", + "executorCores": 4, + "numExecutors": 2 + } + }, + "etag": "1500504f-0000-0200-0000-5cbe090f0000" + } + ] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Update.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Update.json new file mode 100644 index 000000000000..005764c7dc47 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SparkJobDefinitions_Update.json @@ -0,0 +1,80 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "sparkJobDefinitionName": "exampleSparkJobDefinition", + "ifMatch": null, + "sparkJobDefinition": { + "properties": { + "description": "modified description", + "targetBigDataPool": { + "referenceName": "exampleBigDataPool", + "type": "BigDataPoolReference" + }, + "requiredSparkVersion": "2.4", + "jobProperties": { + "name": "exampleSparkJobDefinition", + "file": "abfss://test@test.dfs.core.windows.net/artefacts/sample.jar", + "className": "dev.test.tools.sample.Main", + "conf": {}, + "args": [ + "exampleArg" + ], + "jars": [], + "pyFiles": [], + "files": [], + "archives": [], + "driverMemory": "28g", + "driverCores": 4, + "executorMemory": "28g", + "executorCores": 4, + "numExecutors": 2 + } + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:41 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "x-ms-correlation-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/sparkjobdefinitions/exampleSparkJobDefinition", + "name": "exampleSparkJobDefinition", + "type": "Microsoft.Synapse/workspaces/sparkjobdefinitions", + "properties": { + "description": "modified description", + "targetBigDataPool": { + "referenceName": "exampleBigDataPool", + "type": "BigDataPoolReference" + }, + "requiredSparkVersion": "2.4", + "jobProperties": { + "name": "exampleSparkJobDefinition", + "file": "abfss://test@test.dfs.core.windows.net/artefacts/sample.jar", + "className": "dev.test.tools.sample.Main", + "conf": {}, + "args": [ + "exampleArg" + ], + "jars": [], + "pyFiles": [], + "files": [], + "archives": [], + "driverMemory": "28g", + "driverCores": 4, + "executorMemory": "28g", + "executorCores": 4, + "numExecutors": 2 + } + }, + "etag": "0a006cd4-0000-0000-0000-5b245bd60000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_Create.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_Create.json new file mode 100644 index 000000000000..5dc6861614b9 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_Create.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "sqlScriptName": "exampleSqlScript", + "ifMatch": null, + "sqlScript": { + "properties": { + "description": "Covers the data transformation and LDW scenarios in one brief e2e story", + "content": { + "query": "SELECT TOP 100 * FROM example_table_name;", + "currentConnection": { + "name": "master", + "type": "SqlOnDemand" + }, + "metadata": { + "language": "sql" + } + }, + "type": "SqlQuery" + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:41 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "x-ms-correlation-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/sqlscripts/exampleSqlScript", + "name": "exampleSqlScript", + "type": "Microsoft.Synapse/workspaces/sqlscripts", + "properties": { + "description": "Covers the data transformation and LDW scenarios in one brief e2e story", + "content": { + "query": "SELECT TOP 100 * FROM example_table_name;", + "currentConnection": { + "name": "master", + "type": "SqlOnDemand" + }, + "metadata": { + "language": "sql" + } + }, + "type": "SqlQuery" + }, + "etag": "0a0069d4-0000-0000-0000-5b245bd50000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_Delete.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_Delete.json new file mode 100644 index 000000000000..e67581c0ef4d --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "sqlScriptName": "exampleSqlScript", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_Get.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_Get.json new file mode 100644 index 000000000000..829447fd448f --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_Get.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "sqlScriptName": "exampleSqlScript", + "ifNoneMatch": "1500504f-0000-0200-0000-5cbe090f0000", + "api-version": "2019-11-01-preview" + }, + "responses": { + "304": {}, + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:41 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "x-ms-correlation-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/sqlscripts/exampleSqlScript", + "name": "exampleSqlScript", + "type": "Microsoft.Synapse/workspaces/sqlscripts", + "properties": { + "description": "Covers the data transformation and LDW scenarios in one brief e2e story", + "content": { + "query": "SELECT TOP 100 * FROM example_table_name;", + "currentConnection": { + "name": "master", + "type": "SqlOnDemand" + }, + "metadata": { + "language": "sql" + } + }, + "type": "SqlQuery" + }, + "etag": "1500504f-0000-0200-0000-5cbe090f0000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_ListByWorkspace.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_ListByWorkspace.json new file mode 100644 index 000000000000..c999df7b1828 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_ListByWorkspace.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:43 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14990", + "x-ms-request-id": "92292250-c10f-4c47-8eb6-b886b361add7", + "x-ms-correlation-request-id": "92292250-c10f-4c47-8eb6-b886b361add7" + }, + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/sqlscripts/exampleSqlScript", + "name": "exampleSqlScript", + "type": "Microsoft.Synapse/workspaces/sqlscripts", + "properties": { + "description": "Covers the data transformation and LDW scenarios in one brief e2e story", + "content": { + "query": "SELECT TOP 100 * FROM example_table_name;", + "currentConnection": { + "name": "master", + "type": "SqlOnDemand" + }, + "metadata": { + "language": "sql" + } + }, + "type": "SqlQuery" + }, + "etag": "1500504f-0000-0200-0000-5cbe090f0000" + } + ] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_Update.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_Update.json new file mode 100644 index 000000000000..0c377a063cbd --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/SqlScripts_Update.json @@ -0,0 +1,56 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "sqlScriptName": "exampleSqlScript", + "ifMatch": null, + "sqlScript": { + "properties": { + "description": "modified description", + "content": { + "query": "SELECT TOP 100 * FROM example_table_name;", + "currentConnection": { + "name": "master", + "type": "SqlOnDemand" + }, + "metadata": { + "language": "sql" + } + }, + "type": "SqlQuery" + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:37:41 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264", + "x-ms-correlation-request-id": "e4c589b7-a9fe-4c28-981c-3855ec27d264" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/sqlscripts/exampleSqlScript", + "name": "exampleSqlScript", + "type": "Microsoft.Synapse/workspaces/sqlscripts", + "properties": { + "description": "modified description", + "content": { + "query": "SELECT TOP 100 * FROM example_table_name;", + "currentConnection": { + "name": "master", + "type": "SqlOnDemand" + }, + "metadata": { + "language": "sql" + } + }, + "type": "SqlQuery" + }, + "etag": "0a006cd4-0000-0000-0000-5b245bd60000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/TriggerRuns_QueryByWorkspace.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/TriggerRuns_QueryByWorkspace.json new file mode 100644 index 000000000000..48c13c4038c3 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/TriggerRuns_QueryByWorkspace.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "filterParameters": { + "lastUpdatedAfter": "2018-06-16T00:36:44.3345758Z", + "lastUpdatedBefore": "2018-06-16T00:49:48.3686473Z", + "filters": [ + { + "operand": "TriggerName", + "operator": "Equals", + "values": [ + "exampleTrigger" + ] + } + ] + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:46:22 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1199", + "x-ms-request-id": "fb328f3e-d21e-44f7-80d7-dad60c955b4d", + "x-ms-correlation-request-id": "fb328f3e-d21e-44f7-80d7-dad60c955b4d" + }, + "body": { + "value": [ + { + "triggerName": "exampleTrigger", + "triggerRunId": "08586724970898148904457116912CU27", + "triggerType": "ScheduleTrigger", + "triggerRunTimestamp": "2018-06-16T00:43:15.660141Z", + "status": "Succeeded", + "message": "", + "properties": { + "TriggerTime": "6/16/2018 12:43:15 AM", + "ScheduleTime": "6/16/2018 12:43:14 AM" + }, + "triggeredPipelines": { + "examplePipeline": "9f3ce8b3-37d7-43eb-96ac-a656c0476283" + } + } + ] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/TriggerRuns_Rerun.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/TriggerRuns_Rerun.json new file mode 100644 index 000000000000..edd3551ad448 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/TriggerRuns_Rerun.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "triggerName": "exampleTrigger", + "runId": "2f7fdb90-5df1-4b8e-ac2f-064cfa58202b", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:46:24 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1198", + "x-ms-request-id": "5aa854a5-7ac0-4c7e-9356-79c657f4e231", + "x-ms-correlation-request-id": "5aa854a5-7ac0-4c7e-9356-79c657f4e231" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Create.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Create.json new file mode 100644 index 000000000000..d7210bda0148 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Create.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "triggerName": "exampleTrigger", + "ifMatch": null, + "trigger": { + "properties": { + "type": "ScheduleTrigger", + "typeProperties": { + "recurrence": { + "frequency": "Minute", + "interval": 4, + "startTime": "2018-06-16T00:39:13.8441801Z", + "endTime": "2018-06-16T00:55:13.8441801Z", + "timeZone": "UTC" + } + }, + "pipelines": [ + { + "pipelineReference": { + "referenceName": "examplePipeline", + "type": "PipelineReference" + }, + "parameters": { + "OutputBlobNameList": [ + "exampleoutput.csv" + ] + } + } + ] + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:40:14 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1186", + "x-ms-request-id": "373f1a49-685d-4c07-8857-0fcf1bcaffcb", + "x-ms-correlation-request-id": "373f1a49-685d-4c07-8857-0fcf1bcaffcb" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/triggers/exampleTrigger", + "name": "exampleTrigger", + "type": "Microsoft.Synapse/workspaces/triggers", + "properties": { + "type": "ScheduleTrigger", + "typeProperties": { + "recurrence": { + "frequency": "Minute", + "interval": 4, + "startTime": "2018-06-16T00:39:13.8441801Z", + "endTime": "2018-06-16T00:55:13.8441801Z", + "timeZone": "UTC" + } + }, + "pipelines": [ + { + "pipelineReference": { + "referenceName": "examplePipeline", + "type": "PipelineReference" + }, + "parameters": { + "OutputBlobNameList": [ + "exampleoutput.csv" + ] + } + } + ], + "runtimeState": "Stopped" + }, + "etag": "0a008ad4-0000-0000-0000-5b245c6e0000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Delete.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Delete.json new file mode 100644 index 000000000000..430e2cfba554 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "triggerName": "exampleTrigger", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Get.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Get.json new file mode 100644 index 000000000000..bc4d1d09b735 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Get.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "triggerName": "exampleTrigger", + "ifNoneMatch": "1500544f-0000-0200-0000-5cbe09100000", + "api-version": "2019-11-01-preview" + }, + "responses": { + "304": {}, + "200": { + "headers": { + "Date": "Mon, 22 Apr 2019 18:33:52 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "11989", + "x-ms-request-id": "8ad1759f-24c1-46a5-aef5-edd267e18870", + "x-ms-correlation-request-id": "8ad1759f-24c1-46a5-aef5-edd267e18870" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/triggers/exampleTrigger", + "name": "exampleTrigger", + "type": "Microsoft.Synapse/workspaces/triggers", + "properties": { + "type": "ScheduleTrigger", + "typeProperties": { + "recurrence": { + "frequency": "Minute", + "interval": 4, + "startTime": "2019-04-22T18:32:52.527912Z", + "endTime": "2019-04-22T18:48:52.5281747Z", + "timeZone": "UTC" + } + }, + "pipelines": [ + { + "pipelineReference": { + "referenceName": "examplePipeline", + "type": "PipelineReference" + }, + "parameters": { + "OutputBlobNameList": [ + "exampleoutput.csv" + ] + } + } + ], + "runtimeState": "Stopped" + }, + "etag": "1500544f-0000-0200-0000-5cbe09100000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_GetEventSubscriptionStatus.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_GetEventSubscriptionStatus.json new file mode 100644 index 000000000000..89e4b4c407c0 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_GetEventSubscriptionStatus.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "triggerName": "exampleTrigger", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": { + "triggerName": "exampleTrigger", + "status": "Enabled" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_ListByWorkspace.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_ListByWorkspace.json new file mode 100644 index 000000000000..ec31d1d1ad90 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_ListByWorkspace.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:40:20 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14986", + "x-ms-request-id": "e474f8f8-b34f-4536-b059-ca740e6b44c3", + "x-ms-correlation-request-id": "e474f8f8-b34f-4536-b059-ca740e6b44c3" + }, + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/triggers/exampleTrigger", + "name": "exampleTrigger", + "type": "Microsoft.Synapse/workspaces/triggers", + "properties": { + "type": "ScheduleTrigger", + "typeProperties": { + "recurrence": { + "frequency": "Minute", + "interval": 4, + "startTime": "2018-06-16T00:39:14.905167Z", + "endTime": "2018-06-16T00:55:14.905167Z", + "timeZone": "UTC" + } + }, + "pipelines": [ + { + "pipelineReference": { + "referenceName": "examplePipeline", + "type": "PipelineReference" + }, + "parameters": { + "OutputBlobNameList": [ + "exampleoutput.csv" + ] + } + } + ], + "description": "Example description", + "runtimeState": "Started" + }, + "etag": "0a008ed4-0000-0000-0000-5b245c740000" + } + ] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Start.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Start.json new file mode 100644 index 000000000000..8d61a0a08228 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Start.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "triggerName": "exampleTrigger", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Stop.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Stop.json new file mode 100644 index 000000000000..8d61a0a08228 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Stop.json @@ -0,0 +1,11 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "triggerName": "exampleTrigger", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_SubscribeToEvents.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_SubscribeToEvents.json new file mode 100644 index 000000000000..012cdd41ae33 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_SubscribeToEvents.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "triggerName": "exampleTrigger", + "api-version": "2019-11-01-preview" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/triggers/exampleTrigger/getEventSubscriptionStatus?api-version=2019-11-01-preview" + } + }, + "200": { + "body": { + "triggerName": "exampleTrigger", + "status": "Enabled" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_UnsubscribeFromEvents.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_UnsubscribeFromEvents.json new file mode 100644 index 000000000000..c3df05a1a218 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_UnsubscribeFromEvents.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "triggerName": "exampleTrigger", + "api-version": "2019-11-01-preview" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/triggers/exampleTrigger/getEventSubscriptionStatus?api-version=2019-11-01-preview" + } + }, + "200": { + "body": { + "triggerName": "exampleTrigger", + "status": "Disabled" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Update.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Update.json new file mode 100644 index 000000000000..ae377e99c8c9 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/adf/examples/Triggers_Update.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "triggerName": "exampleTrigger", + "ifMatch": null, + "trigger": { + "properties": { + "type": "ScheduleTrigger", + "typeProperties": { + "recurrence": { + "frequency": "Minute", + "interval": 4, + "startTime": "2018-06-16T00:39:14.905167Z", + "endTime": "2018-06-16T00:55:14.905167Z", + "timeZone": "UTC" + } + }, + "pipelines": [ + { + "pipelineReference": { + "referenceName": "examplePipeline", + "type": "PipelineReference" + }, + "parameters": { + "OutputBlobNameList": [ + "exampleoutput.csv" + ] + } + } + ], + "description": "Example description" + } + }, + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Sat, 16 Jun 2018 00:40:15 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1185", + "x-ms-request-id": "d5ccf096-0618-4b26-9829-db77e4c391c7", + "x-ms-correlation-request-id": "d5ccf096-0618-4b26-9829-db77e4c391c7" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/triggers/exampleTrigger", + "name": "exampleTrigger", + "type": "Microsoft.Synapse/workspaces/triggers", + "properties": { + "type": "ScheduleTrigger", + "typeProperties": { + "recurrence": { + "frequency": "Minute", + "interval": 4, + "startTime": "2018-06-16T00:39:14.905167Z", + "endTime": "2018-06-16T00:55:14.905167Z", + "timeZone": "UTC" + } + }, + "pipelines": [ + { + "pipelineReference": { + "referenceName": "examplePipeline", + "type": "PipelineReference" + }, + "parameters": { + "OutputBlobNameList": [ + "exampleoutput.csv" + ] + } + } + ], + "description": "Example description", + "runtimeState": "Stopped" + }, + "etag": "0a008dd4-0000-0000-0000-5b245c6f0000" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/Monitoring_GetApplicationDetails.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/Monitoring_GetApplicationDetails.json new file mode 100644 index 000000000000..1880cfce5cf4 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/Monitoring_GetApplicationDetails.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "workspaceName": "myWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "api-version": "2019-11-01-preview", + "poolName": "thePoolName", + "livyId": "theLivyId" + }, + "responses": { + "200": { + "body": { + "nJobs": 1, + "sparkJobs": [ + { + "state": "Failure", + "name": "sparkjobname", + "submitter": "submittername", + "compute": "ComputeName", + "sparkApplicationId": "sparkApplicationId", + "livyId": "LivyIdValue", + "timing": [ + "Ended || Submitting || In Progress", + "553h 11m" + ], + "sparkJobDefinition": null, + "pipeline": [], + "jobType": "Spark session || Batch Job", + "submitTime": "2019-11-11T15:08:52.9554438-08:00", + "endTime": "2019-11-11T15:08:56.2314317-08:00", + "queuedDuration": "1s", + "runningDuration": "2s", + "totalDuration": "3s" + } + ] + } + }, + "401": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/Monitoring_GetHistoryServerData.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/Monitoring_GetHistoryServerData.json new file mode 100644 index 000000000000..c65804ab0942 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/Monitoring_GetHistoryServerData.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "workspaceName": "myWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "api-version": "2019-11-01-preview", + "poolName": "thePoolName", + "livyId": "theLivyId", + "appId": "theapplicationId", + "attemptId": "theattemptId" + }, + "responses": { + "200": { + "body": { + "data": { + "handlerPath": "/enhancement/v1/data", + "inputs": [], + "outputs": [], + "tables": { + "operation": "fill in here", + "options": [] + }, + "config": { + "isHiveEnabled": false + } + } + } + }, + "401": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/Monitoring_GetHistoryServerDiagnostic.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/Monitoring_GetHistoryServerDiagnostic.json new file mode 100644 index 000000000000..9cd092208eab --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/Monitoring_GetHistoryServerDiagnostic.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "workspaceName": "myWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "api-version": "2019-11-01-preview", + "poolName": "thePoolName", + "livyId": "theLivyId", + "appId": "theapplicationId", + "attemptId": "theattemptId" + }, + "responses": { + "200": { + "body": { + "data": { + "stages": { + "dataAvg": 0, + "timeAvg": 0, + "id": 0, + "attemptId": 0, + "name": "reduce at SparkPi.scala:38", + "dataSkewTask": [ + 5 + ], + "timeSkewTask": [ + 0 + ], + "tasks": [ + 0, + 0, + 823 + ] + }, + "executors": { + "isDynamicAllocationOn": false, + "executorInstances": 3, + "startTime": 1571267103455, + "endTime": 1571267120032, + "events": [ + 1571267110853, + 1, + 1, + 0 + ], + "executorCores": "2", + "executorMemory": "7g" + } + } + } + }, + "401": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/Monitoring_GetHistoryServerGraph.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/Monitoring_GetHistoryServerGraph.json new file mode 100644 index 000000000000..a2db0e496b45 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/Monitoring_GetHistoryServerGraph.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "workspaceName": "myWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "api-version": "2019-11-01-preview", + "poolName": "thePoolName", + "livyId": "theLivyId", + "appId": "theapplicationId", + "attemptId": "theattemptId" + }, + "responses": { + "200": { + "body": { + "data": { + "isAppFinished": true, + "jobs": { + "time": 8515, + "startTime": 1571267111504, + "id": 0, + "edges": [ + { + "id": 1, + "childId": 2 + } + ], + "nodes": [ + 0 + ] + }, + "stages": null + } + } + }, + "401": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/Monitoring_GetHistoryServerProperties.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/Monitoring_GetHistoryServerProperties.json new file mode 100644 index 000000000000..822115335b9e --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/Monitoring_GetHistoryServerProperties.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "workspaceName": "myWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": { + "webProxyEndpoint": "history server URL" + } + }, + "401": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/Monitoring_GetSparkJobList.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/Monitoring_GetSparkJobList.json new file mode 100644 index 000000000000..a21200723ecf --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/Monitoring_GetSparkJobList.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "workspaceName": "myWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "api-version": "2019-11-01-preview" + }, + "responses": { + "200": { + "body": { + "nJobs": 1, + "sparkJobs": [ + { + "state": "Failure", + "name": "sparkjobname", + "submitter": "submittername", + "compute": "ComputeName", + "sparkApplicationId": "sparkApplicationId", + "livyId": "LivyIdValue", + "timing": [ + "Ended || Submitting || In Progress", + "553h 11m" + ], + "sparkJobDefinition": null, + "pipeline": [], + "jobType": "Spark session || Batch Job", + "submitTime": "2019-11-11T15:08:52.9554438-08:00", + "endTime": "2019-11-11T15:08:56.2314317-08:00", + "queuedDuration": "1s", + "runningDuration": "2s", + "totalDuration": "3s" + } + ] + } + }, + "401": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_CreateRoleAssignment.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_CreateRoleAssignment.json new file mode 100644 index 000000000000..97212e8071ce --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_CreateRoleAssignment.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "azuresynapse.net", + "api-version": "2020-02-01-preview", + "request": { + "roleId": "00000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + } + }, + "responses": { + "200": { + "body": { + "id": "00000000-0000-0000-0000-000000000000-00000000-0000-0000-0000-000000000000", + "roleId": "00000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_DeleteRoleAssignmentById.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_DeleteRoleAssignmentById.json new file mode 100644 index 000000000000..ba09f1f27aa0 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_DeleteRoleAssignmentById.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "azuresynapse.net", + "roleAssignmentId": "00000000-0000-0000-0000-000000000000-00000000-0000-0000-0000-000000000000", + "api-version": "2020-02-01-preview" + }, + "responses": { + "200": {}, + "204": {}, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_GetRoleAssignmentById.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_GetRoleAssignmentById.json new file mode 100644 index 000000000000..4374be7f52ec --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_GetRoleAssignmentById.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "azuresynapse.net", + "roleAssignmentId": "00000000-0000-0000-0000-000000000000-00000000-0000-0000-0000-000000000000", + "api-version": "2020-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "00000000-0000-0000-0000-000000000000-00000000-0000-0000-0000-000000000000", + "roleId": "00000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_ListCallerRoleAssignments.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_ListCallerRoleAssignments.json new file mode 100644 index 000000000000..2dca414a3784 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_ListCallerRoleAssignments.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "azuresynapse.net", + "api-version": "2020-02-01-preview" + }, + "responses": { + "200": { + "body": [ + "00000000-0000-0000-0000-000000000000", + "10000000-0000-0000-0000-000000000000" + ] + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_ListRoleAssignments.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_ListRoleAssignments.json new file mode 100644 index 000000000000..f1af57ba8b4b --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/RoleAssignments_ListRoleAssignments.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "azuresynapse.net", + "api-version": "2020-02-01-preview", + "roleId": "00000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + }, + "responses": { + "200": { + "headers": { + "x-ms-continuation": null + }, + "body": [ + { + "id": "00000000-0000-0000-0000-000000000000-00000000-0000-0000-0000-000000000000", + "roleId": "00000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + }, + { + "id": "10000000-0000-0000-0000-000000000000-00000000-0000-0000-0000-000000000000", + "roleId": "10000000-0000-0000-0000-000000000000", + "principalId": "00000000-0000-0000-0000-000000000000" + } + ] + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/Roles_GetRoleById.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/Roles_GetRoleById.json new file mode 100644 index 000000000000..5c6f07d2e9f0 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/Roles_GetRoleById.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "azuresynapse.net", + "roleId": "00000000-0000-0000-0000-000000000000", + "api-version": "2020-02-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "00000000-0000-0000-0000-000000000000", + "name": "Synapse role name", + "isBuiltIn": true + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/Roles_ListRoles.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/Roles_ListRoles.json new file mode 100644 index 000000000000..74838831ed04 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/Roles_ListRoles.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "workspaceName": "exampleWorkspace", + "SynapseDnsSuffix": "azuresynapse.net", + "api-version": "2020-02-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "00000000-0000-0000-0000-000000000000", + "name": "Synapse role name 1", + "isBuiltIn": true + }, + { + "id": "10000000-0000-0000-0000-000000000000", + "name": "Synapse role name 2", + "isBuiltIn": true + } + ] + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkBatch_Create.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkBatch_Create.json new file mode 100644 index 000000000000..c00010474fcd --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkBatch_Create.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "workspaceName": "myWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "livyApiVersion": "2019-11-01-preview", + "sparkPoolName": "mySparkPool", + "detailed": true, + "livyRequest": { + "tags": null, + "artifactId": "fill in here", + "name": "jobname", + "file": "abfss://", + "className": "classname", + "args": [], + "jars": [], + "files": [], + "archives": [], + "conf": null, + "driverMemory": "4g", + "driverCores": 4, + "executorMemory": "2g", + "executorCores": 2, + "numExecutors": 2 + } + }, + "responses": { + "200": { + "body": { + "livyInfo": null, + "name": "jobname", + "workspaceName": "myWorkspace", + "sparkPoolName": "mySparkPool", + "submitterName": "thetime", + "submitterId": "thesubmitterid", + "artifactId": "fill in here", + "jobType": "SparkBatch", + "result": "Failed", + "schedulerInfo": null, + "pluginInfo": null, + "errorInfo": [], + "tags": null, + "id": 1, + "appId": "fill in here", + "appInfo": null, + "state": "the state", + "log": [] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkBatch_Delete.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkBatch_Delete.json new file mode 100644 index 000000000000..2d724570df6f --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkBatch_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "workspaceName": "myWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "livyApiVersion": "2019-11-01-preview", + "sparkPoolName": "mySparkPool", + "batchId": 123, + "detailed": true + }, + "responses": { + "200": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkBatch_Get.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkBatch_Get.json new file mode 100644 index 000000000000..bf6362b33a76 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkBatch_Get.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "workspaceName": "myWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "livyApiVersion": "2019-11-01-preview", + "sparkPoolName": "mySparkPool", + "batchId": 123, + "detailed": true + }, + "responses": { + "200": { + "body": { + "livyInfo": null, + "name": "jobname", + "workspaceName": "myWorkspace", + "sparkPoolName": "mySparkPool", + "submitterName": "thetime", + "submitterId": "thesubmitterid", + "artifactId": "fill in here", + "jobType": "SparkBatch", + "result": "Failed", + "schedulerInfo": null, + "pluginInfo": null, + "errorInfo": [], + "tags": null, + "id": 1, + "appId": "fill in here", + "appInfo": null, + "state": "the state", + "log": [] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkBatch_List.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkBatch_List.json new file mode 100644 index 000000000000..a112d816c54d --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkBatch_List.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "workspaceName": "myWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "livyApiVersion": "2019-11-01-preview", + "sparkPoolName": "mySparkPool", + "from": 0, + "size": 2, + "detailed": true + }, + "responses": { + "200": { + "body": { + "from": 0, + "total": 2, + "sessions": [] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkSession_Create.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkSession_Create.json new file mode 100644 index 000000000000..40aa196c6d1c --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkSession_Create.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "workspaceName": "myWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "livyApiVersion": "2019-11-01-preview", + "sparkPoolName": "mySparkPool", + "detailed": true, + "livyRequest": { + "tags": null, + "artifactId": "fill in here", + "name": "jobname", + "file": "abfss://", + "className": "classname", + "args": [], + "jars": [], + "files": [], + "archives": [], + "conf": null, + "driverMemory": "4g", + "driverCores": 4, + "executorMemory": "2g", + "executorCores": 2, + "numExecutors": 2 + } + }, + "responses": { + "200": { + "body": { + "livyInfo": null, + "name": "jobname", + "workspaceName": "myWorkspace", + "sparkPoolName": "mySparkPool", + "submitterName": "thetime", + "submitterId": "thesubmitterid", + "artifactId": "fill in here", + "jobType": "SparkSession", + "result": "Failed", + "schedulerInfo": null, + "pluginInfo": null, + "errorInfo": [], + "tags": null, + "id": 1, + "appId": "fill in here", + "appInfo": null, + "state": "the state", + "log": [] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkSession_CreateStatement.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkSession_CreateStatement.json new file mode 100644 index 000000000000..a5fd2a5fc372 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkSession_CreateStatement.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "workspaceName": "myWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "livyApiVersion": "2019-11-01-preview", + "sparkPoolName": "mySparkPool", + "sessionId": 123, + "livyRequest": { + "code": "fill in here", + "kind": "fill in here" + } + }, + "responses": { + "200": { + "body": { + "id": 123, + "code": "fill in here", + "state": "fill in here", + "output": null + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkSession_Delete.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkSession_Delete.json new file mode 100644 index 000000000000..d74f7b31bdc8 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkSession_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "workspaceName": "myWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "livyApiVersion": "2019-11-01-preview", + "sparkPoolName": "mySparkPool", + "sessionId": 123, + "detailed": true + }, + "responses": { + "200": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkSession_DeleteStatement.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkSession_DeleteStatement.json new file mode 100644 index 000000000000..09f511d90fbd --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkSession_DeleteStatement.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "workspaceName": "myWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "livyApiVersion": "2019-11-01-preview", + "sparkPoolName": "mySparkPool", + "sessionId": 123, + "statementId": 123 + }, + "responses": { + "200": { + "body": { + "msg": "fill in here" + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkSession_Get.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkSession_Get.json new file mode 100644 index 000000000000..c7a828d05e7f --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkSession_Get.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "workspaceName": "myWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "livyApiVersion": "2019-11-01-preview", + "sparkPoolName": "mySparkPool", + "sessionId": 123, + "detailed": true + }, + "responses": { + "200": { + "body": { + "livyInfo": null, + "name": "jobname", + "workspaceName": "myWorkspace", + "sparkPoolName": "mySparkPool", + "submitterName": "thetime", + "submitterId": "thesubmitterid", + "artifactId": "fill in here", + "jobType": "SparkSession", + "result": "Failed", + "schedulerInfo": null, + "pluginInfo": null, + "errorInfo": [], + "tags": null, + "id": 1, + "appId": "fill in here", + "appInfo": null, + "state": "the state", + "log": [] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkSession_GetStatement.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkSession_GetStatement.json new file mode 100644 index 000000000000..d45676affe42 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkSession_GetStatement.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "workspaceName": "myWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "livyApiVersion": "2019-11-01-preview", + "sparkPoolName": "mySparkPool", + "sessionId": 123, + "statementId": 123 + }, + "responses": { + "200": { + "body": { + "id": 123, + "code": "fill in here", + "state": "fill in here", + "output": null + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkSession_List.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkSession_List.json new file mode 100644 index 000000000000..a112d816c54d --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkSession_List.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "workspaceName": "myWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "livyApiVersion": "2019-11-01-preview", + "sparkPoolName": "mySparkPool", + "from": 0, + "size": 2, + "detailed": true + }, + "responses": { + "200": { + "body": { + "from": 0, + "total": 2, + "sessions": [] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkSession_ListStatements.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkSession_ListStatements.json new file mode 100644 index 000000000000..e59988a5549f --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkSession_ListStatements.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "workspaceName": "myWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "livyApiVersion": "2019-11-01-preview", + "sparkPoolName": "mySparkPool", + "sessionId": 123 + }, + "responses": { + "200": { + "body": { + "total_statements": 2, + "statements": [] + } + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkSession_ResetTimeout.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkSession_ResetTimeout.json new file mode 100644 index 000000000000..b9406468d90b --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/examples/SparkFrontend_SparkSession_ResetTimeout.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "workspaceName": "myWorkspace", + "SynapseDnsSuffix": "dev.azuresynapse.net", + "livyApiVersion": "2019-11-01-preview", + "sparkPoolName": "mySparkPool", + "sessionId": 123 + }, + "responses": { + "200": {} + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/monitoring.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/monitoring.json new file mode 100644 index 000000000000..329d7ceb91e9 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/monitoring.json @@ -0,0 +1,694 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-11-01-preview", + "title": "SynapseClient" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{workspaceName}.{SynapseDnsSuffix}", + "parameters": [ + { + "name": "workspaceName", + "description": "The name of the workspace to execute operations on.", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "#/parameters/SynapseDnsSuffixInPath" + } + ] + }, + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/monitoring/workloadTypes/spark/pools/{poolName}/livyIds/{livyId}/applications/{appId}/attemptIds/{attemptId}/historyServerData": { + "get": { + "tags": [ + "Monitoring" + ], + "operationId": "Monitoring_GetHistoryServerData", + "description": "Get History Server Data for a given workspace, pool, livyid, appid and attemptId", + "x-ms-examples": { + "Get history server data": { + "$ref": "./examples/Monitoring_GetHistoryServerData.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "poolName", + "description": "The spark pool name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "livyId", + "description": "The livy id.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "appId", + "description": "The application id.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "attemptId", + "description": "The attempt id.", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/HistoryServerDataResponse" + } + }, + "401": { + "description": "Unauthorized" + } + } + } + }, + "/monitoring/workloadTypes/spark/Applications": { + "get": { + "tags": [ + "Monitoring" + ], + "operationId": "Monitoring_GetSparkJobList", + "description": "Get list of spark applications for the workspace.", + "x-ms-examples": { + "Get list of spark application": { + "$ref": "./examples/Monitoring_GetSparkJobList.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/SparkJobListViewResponse" + } + }, + "401": { + "description": "Unauthorized" + } + } + } + }, + "/monitoring/workloadTypes/spark/pools/{poolName}/livyIds/{livyId}": { + "get": { + "tags": [ + "Monitoring" + ], + "operationId": "Monitoring_GetApplicationDetails", + "description": "Get one spark application details given the workspace name, pool name and livyid.", + "x-ms-examples": { + "Get list of spark application": { + "$ref": "./examples/Monitoring_GetApplicationDetails.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "poolName", + "description": "The spark pool name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "livyId", + "description": "The livy id.", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/SparkJobListViewResponse" + } + }, + "401": { + "description": "Unauthorized" + } + } + } + }, + "/monitoring/workloadTypes/spark/historyServerProperties": { + "get": { + "tags": [ + "Monitoring" + ], + "operationId": "Monitoring_GetHistoryServerProperties", + "description": "Get History server properties.", + "x-ms-examples": { + "Get history server properties": { + "$ref": "./examples/Monitoring_GetHistoryServerProperties.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/HistoryServerPropertiesResponse" + } + }, + "401": { + "description": "Unauthorized" + } + } + } + }, + "/monitoring/workloadTypes/spark/pools/{poolName}/livyIds/{livyId}/applications/{appId}/attemptIds/{attemptId}/historyServerDiagnostic": { + "get": { + "tags": [ + "Monitoring" + ], + "operationId": "Monitoring_GetHistoryServerDiagnostic", + "description": "Get History Server Diagnostic Data for a given workspace, pool, livyid, appid and attemptId", + "x-ms-examples": { + "Get history server diagnostic data": { + "$ref": "./examples/Monitoring_GetHistoryServerDiagnostic.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "poolName", + "description": "The spark pool name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "livyId", + "description": "The livy id.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "appId", + "description": "The application id.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "attemptId", + "description": "The attempt id.", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/HistoryServerDiagnosticResponse" + } + }, + "401": { + "description": "Unauthorized" + } + } + } + }, + "/monitoring/workloadTypes/spark/pools/{poolName}/livyIds/{livyId}/applications/{appId}/attemptIds/{attemptId}/historyServerGraph": { + "get": { + "tags": [ + "Monitoring" + ], + "operationId": "Monitoring_GetHistoryServerGraph", + "description": "Get History Server Graph Data for a given workspace, pool, livyid, appid and attemptId", + "x-ms-examples": { + "Get history server graph data": { + "$ref": "./examples/Monitoring_GetHistoryServerGraph.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "poolName", + "description": "The spark pool name.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "livyId", + "description": "The livy id.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "appId", + "description": "The application id.", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "attemptId", + "description": "The attempt id.", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/HistoryServerGraphResponse" + } + }, + "401": { + "description": "Unauthorized" + } + } + } + } + }, + "definitions": { + "SparkJobListViewResponse": { + "type": "object", + "properties": { + "nJobs": { + "format": "int32", + "type": "integer" + }, + "sparkJobs": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/SparkJob" + } + } + } + }, + "SparkJob": { + "type": "object", + "properties": { + "state": { + "type": "string" + }, + "name": { + "type": "string" + }, + "submitter": { + "type": "string" + }, + "compute": { + "type": "string" + }, + "sparkApplicationId": { + "type": "string" + }, + "livyId": { + "type": "string" + }, + "timing": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + }, + "sparkJobDefinition": { + "type": "string" + }, + "pipeline": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/SparkJob" + } + }, + "jobType": { + "type": "string" + }, + "submitTime": { + "format": "date-time", + "type": "string" + }, + "endTime": { + "format": "date-time", + "type": "string" + }, + "queuedDuration": { + "type": "string" + }, + "runningDuration": { + "type": "string" + }, + "totalDuration": { + "type": "string" + } + } + }, + "HistoryServerPropertiesResponse": { + "type": "object", + "properties": { + "webProxyEndpoint": { + "type": "string" + } + } + }, + "HistoryServerDataResponse": { + "type": "object", + "properties": { + "data": { + "$ref": "#/definitions/Data" + } + } + }, + "Data": { + "type": "object", + "properties": { + "handlerPath": { + "type": "string" + }, + "inputs": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + }, + "outputs": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + }, + "tables": { + "$ref": "#/definitions/Tables" + }, + "config": { + "$ref": "#/definitions/Config" + } + } + }, + "Tables": { + "type": "object", + "properties": { + "operation": { + "type": "string" + }, + "options": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/Option" + } + } + } + }, + "Config": { + "type": "object", + "properties": { + "isHiveEnabled": { + "type": "boolean" + } + } + }, + "Option": { + "type": "object", + "properties": { + "additionalProp1": { + "type": "string" + }, + "additionalProp2": { + "type": "string" + }, + "additionalProp3": { + "type": "string" + } + } + }, + "HistoryServerDiagnosticResponse": { + "type": "object", + "properties": { + "data": { + "$ref": "#/definitions/HistoryServerDiagnosticResponseData" + } + } + }, + "HistoryServerDiagnosticResponseData": { + "type": "object", + "properties": { + "stages": { + "$ref": "#/definitions/Stages" + }, + "executors": { + "$ref": "#/definitions/Executors" + } + } + }, + "Stages": { + "type": "object", + "properties": { + "dataAvg": { + "format": "int32", + "type": "integer" + }, + "timeAvg": { + "format": "int32", + "type": "integer" + }, + "id": { + "format": "int32", + "type": "integer" + }, + "attemptId": { + "format": "int32", + "type": "integer" + }, + "name": { + "type": "string" + }, + "dataSkewTask": { + "uniqueItems": false, + "type": "array", + "items": { + "format": "int32", + "type": "integer" + } + }, + "timeSkewTask": { + "uniqueItems": false, + "type": "array", + "items": { + "format": "int32", + "type": "integer" + } + }, + "tasks": { + "uniqueItems": false, + "type": "array", + "items": { + "format": "int32", + "type": "integer" + } + } + } + }, + "Executors": { + "type": "object", + "properties": { + "isDynamicAllocationOn": { + "type": "boolean" + }, + "executorInstances": { + "format": "int32", + "type": "integer" + }, + "startTime": { + "format": "int32", + "type": "integer" + }, + "endTime": { + "format": "int32", + "type": "integer" + }, + "events": { + "uniqueItems": false, + "type": "array", + "items": { + "format": "int32", + "type": "integer" + } + }, + "executorCores": { + "type": "string" + }, + "executorMemory": { + "type": "string" + } + } + }, + "HistoryServerGraphResponse": { + "type": "object", + "properties": { + "data": { + "$ref": "#/definitions/HistoryServerGraphResponseData" + } + } + }, + "HistoryServerGraphResponseData": { + "type": "object", + "properties": { + "isAppFinished": { + "type": "boolean" + }, + "jobs": { + "$ref": "#/definitions/Jobs" + }, + "stages": { + "$ref": "#/definitions/Stages" + } + } + }, + "Jobs": { + "type": "object", + "properties": { + "time": { + "format": "int32", + "type": "integer" + }, + "startTime": { + "format": "int32", + "type": "integer" + }, + "id": { + "format": "int32", + "type": "integer" + }, + "edges": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/Edge" + } + }, + "nodes": { + "uniqueItems": false, + "type": "array", + "items": { + "format": "int32", + "type": "integer" + } + } + } + }, + "Edge": { + "type": "object", + "properties": { + "id": { + "format": "int32", + "type": "integer" + }, + "childId": { + "format": "int32", + "type": "integer" + } + } + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The Synapse client API Version." + }, + "SynapseDnsSuffixInPath": { + "name": "SynapseDnsSuffix", + "in": "path", + "required": true, + "type": "string", + "default": "dev.azuresynapse.net", + "x-ms-skip-url-encoding": true, + "description": "Gets the DNS suffix used as the base for all Synapse service requests.", + "x-ms-parameter-location": "client" + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/roleAssignments.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/roleAssignments.json new file mode 100644 index 000000000000..922d6074a432 --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/roleAssignments.json @@ -0,0 +1,394 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-11-01-preview", + "title": "SynapseClient" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{workspaceName}.{SynapseDnsSuffix}", + "parameters": [ + { + "name": "workspaceName", + "description": "The name of the workspace to execute operations on.", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "#/parameters/SynapseDnsSuffixInPath" + } + ] + }, + "schemes": [ + "https" + ], + "paths": { + "/rbac/roleAssignments": { + "post": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_CreateRoleAssignment", + "description": "Create role assignment.", + "x-ms-examples": { + "Create role assignment": { + "$ref": "./examples/RoleAssignments_CreateRoleAssignment.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "name": "request", + "in": "body", + "required": true, + "description": "Details of role id and object id.", + "schema": { + "$ref": "#/definitions/RoleAssignmentRequest" + } + }, + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success response.", + "schema": { + "$ref": "#/definitions/RoleAssignmentDetails" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorContract" + } + } + } + }, + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_ListRoleAssignments", + "description": "List role assignments.", + "x-ms-examples": { + "Get role assignment information": { + "$ref": "./examples/RoleAssignments_ListRoleAssignments.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/RoleIdParameterInQuery" + }, + { + "$ref": "#/parameters/PrincipalIdParameter" + }, + { + "$ref": "#/parameters/XMsContinuationToken" + } + ], + "responses": { + "200": { + "description": "Success response.", + "headers": { + "x-ms-continuation": { + "description": "If the number of role assignments to be listed exceeds the maxResults limit, a continuation token is returned in this response header. When a continuation token is returned in the response, it must be specified in a subsequent invocation of the list operation to continue listing the role assignments.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/RoleAssignmentDetailsList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorContract" + } + } + } + } + }, + "/rbac/roleAssignments/{roleAssignmentId}": { + "get": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_GetRoleAssignmentById", + "description": "Get role assignment by role assignment Id.", + "x-ms-examples": { + "Get role assignment information": { + "$ref": "./examples/RoleAssignments_GetRoleAssignmentById.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/RoleAssignmentIdParameter" + } + ], + "responses": { + "200": { + "description": "Success response.", + "schema": { + "$ref": "#/definitions/RoleAssignmentDetails" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorContract" + } + } + } + }, + "delete": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_DeleteRoleAssignmentById", + "description": "Delete role assignment by role assignment Id.", + "x-ms-examples": { + "Delete role assignment": { + "$ref": "./examples/RoleAssignments_DeleteRoleAssignmentById.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/RoleAssignmentIdParameter" + } + ], + "responses": { + "200": { + "description": "Success response." + }, + "204": { + "description": "No Content." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorContract" + } + } + } + } + }, + "/rbac/getMyAssignedRoles": { + "post": { + "tags": [ + "RoleAssignments" + ], + "operationId": "RoleAssignments_ListCallerRoleAssignments", + "description": "List role assignments of the caller.", + "x-ms-examples": { + "Get caller role assignments": { + "$ref": "./examples/RoleAssignments_ListCallerRoleAssignments.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success response.", + "schema": { + "type": "array", + "items": { + "description": "Role ID of the Synapse Built-In Role", + "format": "uuid", + "type": "string" + } + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorContract" + } + } + } + } + } + }, + "definitions": { + "ErrorContract": { + "title": "Error details.", + "description": "Contains details when the response code indicates an error.", + "type": "object", + "properties": { + "error": { + "description": "The error details.", + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "ErrorResponse": { + "required": [ + "code", + "message" + ], + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "target": { + "type": "string" + }, + "details": { + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDetail" + } + } + } + }, + "ErrorDetail": { + "required": [ + "code", + "message" + ], + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "target": { + "type": "string" + } + } + }, + "RoleAssignmentDetailsList": { + "description": "A list of role assignments", + "type": "array", + "items": { + "$ref": "#/definitions/RoleAssignmentDetails" + } + }, + "RoleAssignmentRequest": { + "description": "Role Assignment request details", + "type": "object", + "properties": { + "roleId": { + "description": "Role ID of the Synapse Built-In Role", + "format": "uuid", + "type": "string" + }, + "principalId": { + "description": "Object ID of the AAD principal or security-group", + "format": "uuid", + "type": "string" + } + }, + "required": [ + "roleId", + "principalId" + ] + }, + "RoleAssignmentDetails": { + "description": "Role Assignment response details", + "type": "object", + "properties": { + "id": { + "description": "Role Assignment ID", + "type": "string" + }, + "roleId": { + "description": "Role ID of the Synapse Built-In Role", + "format": "uuid", + "type": "string" + }, + "principalId": { + "description": "Object ID of the AAD principal or security-group", + "format": "uuid", + "type": "string" + } + } + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The Synapse client API Version." + }, + "SynapseDnsSuffixInPath": { + "name": "SynapseDnsSuffix", + "in": "path", + "required": true, + "type": "string", + "default": "dev.azuresynapse.net", + "x-ms-skip-url-encoding": true, + "description": "Gets the DNS suffix used as the base for all Synapse service requests.", + "x-ms-parameter-location": "client" + }, + "RoleIdParameterInQuery": { + "name": "roleId", + "in": "query", + "required": false, + "type": "string", + "description": "Synapse Built-In Role Id.", + "x-ms-parameter-location": "method" + }, + "PrincipalIdParameter": { + "name": "principalId", + "in": "query", + "required": false, + "type": "string", + "description": "Object ID of the AAD principal or security-group.", + "x-ms-parameter-location": "method" + }, + "RoleAssignmentIdParameter": { + "name": "roleAssignmentId", + "in": "path", + "required": true, + "type": "string", + "description": "The ID of the role assignment.", + "minLength": 1, + "x-ms-parameter-location": "method" + }, + "XMsContinuationToken": { + "name": "x-ms-continuation", + "in": "header", + "required": false, + "type": "string", + "description": "Continuation token.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/roles.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/roles.json new file mode 100644 index 000000000000..f566e171de1f --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/roles.json @@ -0,0 +1,173 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-11-01-preview", + "title": "SynapseClient" + }, + "x-ms-parameterized-host": { + "hostTemplate": "{workspaceName}.{SynapseDnsSuffix}", + "parameters": [ + { + "name": "workspaceName", + "description": "The name of the workspace to execute operations on.", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "#/parameters/SynapseDnsSuffixInPath" + } + ] + }, + "schemes": [ + "https" + ], + "paths": { + "/rbac/roles": { + "get": { + "tags": [ + "SynapseRoles" + ], + "operationId": "Roles_ListRoles", + "description": "List roles.", + "x-ms-examples": { + "Get access control information": { + "$ref": "./examples/Roles_ListRoles.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success response.", + "schema": { + "$ref": "#/definitions/RolesListResponse" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./roleAssignments.json#/definitions/ErrorContract" + } + } + } + } + }, + "/rbac/roles/{roleId}": { + "get": { + "tags": [ + "SynapseRoles" + ], + "operationId": "Roles_GetRoleById", + "description": "Get role by role Id.", + "x-ms-examples": { + "Get access control information": { + "$ref": "./examples/Roles_GetRoleById.json" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/RoleIdParameter" + } + ], + "responses": { + "200": { + "description": "Success response.", + "schema": { + "$ref": "#/definitions/SynapseRole" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./roleAssignments.json#/definitions/ErrorContract" + } + } + } + } + } + }, + "definitions": { + "RolesListResponse": { + "description": "A list of Synapse roles available.", + "type": "object", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "array", + "description": "List of Synapse roles.", + "items": { + "$ref": "#/definitions/SynapseRole" + } + }, + "nextLink": { + "description": "The link to the next page of results, if any remaining results exist.", + "type": "string" + } + } + }, + "SynapseRole": { + "description": "Synapse role details", + "type": "object", + "properties": { + "id": { + "description": "Role ID", + "format": "uuid", + "type": "string" + }, + "name": { + "description": "Name of the Synapse role", + "type": "string" + }, + "isBuiltIn": { + "description": "Is a built-in role or not", + "type": "boolean" + } + } + } + }, + "parameters": { + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "The Synapse client API Version." + }, + "SynapseDnsSuffixInPath": { + "name": "SynapseDnsSuffix", + "in": "path", + "required": true, + "type": "string", + "default": "dev.azuresynapse.net", + "x-ms-skip-url-encoding": true, + "description": "Gets the DNS suffix used as the base for all Synapse service requests.", + "x-ms-parameter-location": "client" + }, + "RoleIdParameter": { + "name": "roleId", + "in": "path", + "required": true, + "type": "string", + "description": "Synapse Built-In Role Id.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/sparkFrontend.json b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/sparkFrontend.json new file mode 100644 index 000000000000..537b1b03a4df --- /dev/null +++ b/specification/synapse/data-plane/Microsoft.Synapse/preview/2019-11-01-preview/sparkFrontend.json @@ -0,0 +1,1456 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-11-01-preview", + "title": "SynapseClient", + "x-ms-code-generation-settings": { + "useDateTimeOffset": true + } + }, + "x-ms-parameterized-host": { + "hostTemplate": "{workspaceName}.{SynapseDnsSuffix}", + "parameters": [ + { + "name": "workspaceName", + "description": "The name of the workspace to execute operations on.", + "required": true, + "type": "string", + "in": "path", + "x-ms-skip-url-encoding": true + }, + { + "$ref": "#/parameters/SynapseDnsSuffixInPath" + } + ] + }, + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/livyApi/versions/{livyApiVersion}/sparkPools/{sparkPoolName}/batches": { + "get": { + "tags": [ + "SparkBatch" + ], + "description": "List all spark batch jobs which are running under a particular spark pool.", + "operationId": "SparkBatch_List", + "x-ms-examples": { + "List all spark batch jobs": { + "$ref": "./examples/SparkFrontend_SparkBatch_List.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/LivyApiVersionInPath" + }, + { + "name": "sparkPoolName", + "in": "path", + "description": "Name of the spark pool. \"ondemand\" targets the ondemand pool.", + "required": true, + "type": "string" + }, + { + "name": "from", + "in": "query", + "description": "Optional param specifying which index the list should begin from.", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "size", + "in": "query", + "description": "Optional param specifying the size of the returned list.\r\n By default it is 20 and that is the maximum.", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "detailed", + "in": "query", + "description": "Optional query param specifying whether detailed response is returned beyond plain livy.", + "required": false, + "type": "boolean" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ExtendedLivyListBatchResponse" + } + } + } + }, + "post": { + "tags": [ + "SparkBatch" + ], + "description": "Create new spark batch job.", + "operationId": "SparkBatch_Create", + "x-ms-examples": { + "Create new spark batch job.": { + "$ref": "./examples/SparkFrontend_SparkBatch_Create.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/LivyApiVersionInPath" + }, + { + "name": "sparkPoolName", + "in": "path", + "description": "Name of the spark pool. \"ondemand\" targets the ondemand pool.", + "required": true, + "type": "string" + }, + { + "name": "detailed", + "in": "query", + "description": "Optional query param specifying whether detailed response is returned beyond plain livy.", + "required": false, + "type": "boolean" + }, + { + "name": "livyRequest", + "in": "body", + "description": "Livy compatible batch job request payload.", + "required": true, + "schema": { + "$ref": "#/definitions/ExtendedLivyBatchRequest" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ExtendedLivyBatchResponse" + } + } + } + } + }, + "/livyApi/versions/{livyApiVersion}/sparkPools/{sparkPoolName}/batches/{batchId}": { + "get": { + "tags": [ + "SparkBatch" + ], + "description": "Gets a single spark batch job.", + "operationId": "SparkBatch_Get", + "x-ms-examples": { + "Gets a single spark batch job.": { + "$ref": "./examples/SparkFrontend_SparkBatch_Get.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/LivyApiVersionInPath" + }, + { + "name": "sparkPoolName", + "in": "path", + "description": "Name of the spark pool. \"ondemand\" targets the ondemand pool.", + "required": true, + "type": "string" + }, + { + "name": "batchId", + "in": "path", + "description": "Identifier for the batch job.", + "required": true, + "type": "integer", + "format": "int32" + }, + { + "name": "detailed", + "in": "query", + "description": "Optional query param specifying whether detailed response is returned beyond plain livy.", + "required": false, + "type": "boolean" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ExtendedLivyBatchResponse" + } + } + } + }, + "delete": { + "tags": [ + "SparkBatch" + ], + "description": "Cancels a running spark batch job.", + "operationId": "SparkBatch_Delete", + "x-ms-examples": { + "Cancels a running spark batch job.": { + "$ref": "./examples/SparkFrontend_SparkBatch_Delete.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/LivyApiVersionInPath" + }, + { + "name": "sparkPoolName", + "in": "path", + "description": "Name of the spark pool. \"ondemand\" targets the ondemand pool.", + "required": true, + "type": "string" + }, + { + "name": "batchId", + "in": "path", + "description": "Identifier for the batch job.", + "required": true, + "type": "integer", + "format": "int32" + } + ], + "responses": { + "200": { + "description": "Success" + } + } + } + }, + "/livyApi/versions/{livyApiVersion}/sparkPools/{sparkPoolName}/sessions": { + "get": { + "tags": [ + "SparkSession" + ], + "description": "List all spark sessions which are running under a particular spark pool.", + "operationId": "SparkSession_List", + "x-ms-examples": { + "List all spark session jobs": { + "$ref": "./examples/SparkFrontend_SparkSession_List.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/LivyApiVersionInPath" + }, + { + "name": "sparkPoolName", + "in": "path", + "description": "Name of the spark pool. \"ondemand\" targets the ondemand pool.", + "required": true, + "type": "string" + }, + { + "name": "from", + "in": "query", + "description": "Optional param specifying which index the list should begin from.", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "size", + "in": "query", + "description": "Optional param specifying the size of the returned list.\r\n By default it is 20 and that is the maximum.", + "required": false, + "type": "integer", + "format": "int32" + }, + { + "name": "detailed", + "in": "query", + "description": "Optional query param specifying whether detailed response is returned beyond plain livy.", + "required": false, + "type": "boolean" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ExtendedLivyListSessionResponse" + } + } + } + }, + "post": { + "tags": [ + "SparkSession" + ], + "description": "Create new spark session.", + "operationId": "SparkSession_Create", + "x-ms-examples": { + "Create new spark session.": { + "$ref": "./examples/SparkFrontend_SparkSession_Create.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/LivyApiVersionInPath" + }, + { + "name": "sparkPoolName", + "in": "path", + "description": "Name of the spark pool. \"ondemand\" targets the ondemand pool.", + "required": true, + "type": "string" + }, + { + "name": "detailed", + "in": "query", + "description": "Optional query param specifying whether detailed response is returned beyond plain livy.", + "required": false, + "type": "boolean" + }, + { + "name": "livyRequest", + "in": "body", + "description": "Livy compatible batch job request payload.", + "required": true, + "schema": { + "$ref": "#/definitions/ExtendedLivySessionRequest" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ExtendedLivySessionResponse" + } + } + } + } + }, + "/livyApi/versions/{livyApiVersion}/sparkPools/{sparkPoolName}/sessions/{sessionId}": { + "get": { + "tags": [ + "SparkSession" + ], + "description": "Gets a single spark session.", + "operationId": "SparkSession_Get", + "x-ms-examples": { + "Gets a single spark session.": { + "$ref": "./examples/SparkFrontend_SparkSession_Get.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/LivyApiVersionInPath" + }, + { + "name": "sparkPoolName", + "in": "path", + "description": "Name of the spark pool. \"ondemand\" targets the ondemand pool.", + "required": true, + "type": "string" + }, + { + "name": "sessionId", + "in": "path", + "description": "Identifier for the session.", + "required": true, + "type": "integer", + "format": "int32" + }, + { + "name": "detailed", + "in": "query", + "description": "Optional query param specifying whether detailed response is returned beyond plain livy.", + "required": false, + "type": "boolean" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/ExtendedLivySessionResponse" + } + } + } + }, + "delete": { + "tags": [ + "SparkSession" + ], + "description": "Cancels a running spark session.", + "operationId": "SparkSession_Delete", + "x-ms-examples": { + "Cancels a running spark session.": { + "$ref": "./examples/SparkFrontend_SparkSession_Delete.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/LivyApiVersionInPath" + }, + { + "name": "sparkPoolName", + "in": "path", + "description": "Name of the spark pool. \"ondemand\"\r\n targets the ondemand pool.", + "required": true, + "type": "string" + }, + { + "name": "sessionId", + "in": "path", + "description": "Identifier for the session.", + "required": true, + "type": "integer", + "format": "int32" + } + ], + "responses": { + "200": { + "description": "Success" + } + } + } + }, + "/livyApi/versions/{livyApiVersion}/sparkPools/{sparkPoolName}/sessions/{sessionId}/reset-timeout": { + "put": { + "tags": [ + "SparkSession" + ], + "description": "Sends a keep alive call to the current session to reset the session timeout.", + "operationId": "SparkSession_ResetTimeout", + "x-ms-examples": { + "Reset the session timeout.": { + "$ref": "./examples/SparkFrontend_SparkSession_ResetTimeout.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/LivyApiVersionInPath" + }, + { + "name": "sparkPoolName", + "in": "path", + "description": "Name of the spark pool. \"ondemand\"\r\n targets the ondemand pool.", + "required": true, + "type": "string" + }, + { + "name": "sessionId", + "in": "path", + "description": "Identifier for the session.", + "required": true, + "type": "integer", + "format": "int32" + } + ], + "responses": { + "200": { + "description": "Success" + } + } + } + }, + "/livyApi/versions/{livyApiVersion}/sparkPools/{sparkPoolName}/sessions/{sessionId}/statements": { + "get": { + "tags": [ + "SparkSession" + ], + "description": "Gets a list of statements within a spark session.", + "operationId": "SparkSession_ListStatements", + "x-ms-examples": { + "Gets a list of statements within a spark session.": { + "$ref": "./examples/SparkFrontend_SparkSession_ListStatements.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/LivyApiVersionInPath" + }, + { + "name": "sparkPoolName", + "in": "path", + "description": "Name of the spark pool. \"ondemand\" targets the ondemand pool.", + "required": true, + "type": "string" + }, + { + "name": "sessionId", + "in": "path", + "description": "Identifier for the session.", + "required": true, + "type": "integer", + "format": "int32" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/LivyStatementsResponseBody" + } + } + } + }, + "post": { + "tags": [ + "SparkSession" + ], + "description": "Create statement within a spark session.", + "operationId": "SparkSession_CreateStatement", + "x-ms-examples": { + "Create statement within a spark session.": { + "$ref": "./examples/SparkFrontend_SparkSession_CreateStatement.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/LivyApiVersionInPath" + }, + { + "name": "sparkPoolName", + "in": "path", + "description": "Name of the spark pool. \"ondemand\" targets the ondemand pool.", + "required": true, + "type": "string" + }, + { + "name": "sessionId", + "in": "path", + "description": "Identifier for the session.", + "required": true, + "type": "integer", + "format": "int32" + }, + { + "name": "livyRequest", + "in": "body", + "description": "Livy compatible batch job request payload.", + "required": true, + "schema": { + "$ref": "#/definitions/LivyStatementRequestBody" + } + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/LivyStatementResponseBody" + } + } + } + } + }, + "/livyApi/versions/{livyApiVersion}/sparkPools/{sparkPoolName}/sessions/{sessionId}/statements/{statementId}": { + "get": { + "tags": [ + "SparkSession" + ], + "description": "Gets a single statement within a spark session.", + "operationId": "SparkSession_GetStatement", + "x-ms-examples": { + "Gets a single statement within a spark session.": { + "$ref": "./examples/SparkFrontend_SparkSession_GetStatement.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/LivyApiVersionInPath" + }, + { + "name": "sparkPoolName", + "in": "path", + "description": "Name of the spark pool. \"ondemand\" targets the ondemand pool.", + "required": true, + "type": "string" + }, + { + "name": "sessionId", + "in": "path", + "description": "Identifier for the session.", + "required": true, + "type": "integer", + "format": "int32" + }, + { + "name": "statementId", + "in": "path", + "description": "Identifier for the statement.", + "required": true, + "type": "integer", + "format": "int32" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/LivyStatementResponseBody" + } + } + } + } + }, + "/livyApi/versions/{livyApiVersion}/sparkPools/{sparkPoolName}/sessions/{sessionId}/statements/{statementId}/cancel": { + "post": { + "tags": [ + "SparkSession" + ], + "description": "Kill a statement within a session.", + "operationId": "SparkSession_DeleteStatement", + "x-ms-examples": { + "Kill a statement within a session.": { + "$ref": "./examples/SparkFrontend_SparkSession_DeleteStatement.json" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "#/parameters/LivyApiVersionInPath" + }, + { + "name": "sparkPoolName", + "in": "path", + "description": "Name of the spark pool. \"ondemand\" targets the ondemand pool.", + "required": true, + "type": "string" + }, + { + "name": "sessionId", + "in": "path", + "description": "Identifier for the session.", + "required": true, + "type": "integer", + "format": "int32" + }, + { + "name": "statementId", + "in": "path", + "description": "Identifier for the statement.", + "required": true, + "type": "integer", + "format": "int32" + } + ], + "responses": { + "200": { + "description": "Success", + "schema": { + "$ref": "#/definitions/LivyStatementCancellationResponse" + } + } + } + } + } + }, + "definitions": { + "ExtendedLivyListBatchResponse": { + "type": "object", + "properties": { + "from": { + "format": "int32", + "type": "integer" + }, + "total": { + "format": "int32", + "type": "integer" + }, + "sessions": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/ExtendedLivyBatchResponse" + } + } + } + }, + "ExtendedLivyBatchResponse": { + "type": "object", + "properties": { + "livyInfo": { + "$ref": "#/definitions/LivyBatchStateInformation" + }, + "name": { + "type": "string" + }, + "workspaceName": { + "type": "string" + }, + "sparkPoolName": { + "type": "string" + }, + "submitterName": { + "type": "string" + }, + "submitterId": { + "type": "string" + }, + "artifactId": { + "type": "string" + }, + "jobType": { + "enum": [ + "SparkBatch", + "SparkSession" + ], + "x-ms-enum": { + "name": "JobType", + "modelAsString": true + }, + "type": "string" + }, + "result": { + "enum": [ + "Uncertain", + "Succeeded", + "Failed", + "Cancelled" + ], + "x-ms-enum": { + "name": "JobResult", + "modelAsString": true + }, + "type": "string" + }, + "schedulerInfo": { + "$ref": "#/definitions/SchedulerInformation" + }, + "pluginInfo": { + "$ref": "#/definitions/SparkServicePluginInformation" + }, + "errorInfo": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/ErrorInformation" + } + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "id": { + "format": "int32", + "type": "integer" + }, + "appId": { + "type": "string" + }, + "appInfo": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "state": { + "type": "string" + }, + "log": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "LivyBatchStateInformation": { + "type": "object", + "properties": { + "notStartedAt": { + "format": "date-time", + "type": "string" + }, + "startingAt": { + "format": "date-time", + "type": "string" + }, + "runningAt": { + "format": "date-time", + "type": "string" + }, + "deadAt": { + "format": "date-time", + "type": "string" + }, + "successAt": { + "format": "date-time", + "type": "string" + }, + "killedAt": { + "format": "date-time", + "type": "string" + }, + "recoveringAt": { + "format": "date-time", + "type": "string" + }, + "currentState": { + "type": "string" + }, + "jobCreationRequest": { + "$ref": "#/definitions/LivyRequestBase" + } + } + }, + "SchedulerInformation": { + "type": "object", + "properties": { + "submittedAt": { + "format": "date-time", + "type": "string" + }, + "scheduledAt": { + "format": "date-time", + "type": "string" + }, + "endedAt": { + "format": "date-time", + "type": "string" + }, + "cancellationRequestedAt": { + "format": "date-time", + "type": "string" + }, + "currentState": { + "enum": [ + "Queued", + "Scheduled", + "Ended" + ], + "x-ms-enum": { + "name": "SchedulerCurrentState", + "modelAsString": true + }, + "type": "string" + } + } + }, + "SparkServicePluginInformation": { + "type": "object", + "properties": { + "preparationStartedAt": { + "format": "date-time", + "type": "string" + }, + "resourceAcquisitionStartedAt": { + "format": "date-time", + "type": "string" + }, + "submissionStartedAt": { + "format": "date-time", + "type": "string" + }, + "monitoringStartedAt": { + "format": "date-time", + "type": "string" + }, + "cleanupStartedAt": { + "format": "date-time", + "type": "string" + }, + "currentState": { + "enum": [ + "Preparation", + "ResourceAcquisition", + "Queued", + "Submission", + "Monitoring", + "Cleanup", + "Ended" + ], + "x-ms-enum": { + "name": "PluginCurrentState", + "modelAsString": true + }, + "type": "string" + } + } + }, + "ErrorInformation": { + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "errorCode": { + "type": "string" + }, + "source": { + "enum": [ + "System", + "User", + "Unknown", + "Dependency" + ], + "x-ms-enum": { + "name": "ErrorSource", + "modelAsString": true + }, + "type": "string" + } + } + }, + "LivyRequestBase": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "file": { + "type": "string" + }, + "className": { + "type": "string" + }, + "args": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + }, + "jars": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + }, + "files": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + }, + "archives": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + }, + "conf": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "driverMemory": { + "type": "string" + }, + "driverCores": { + "format": "int32", + "type": "integer" + }, + "executorMemory": { + "type": "string" + }, + "executorCores": { + "format": "int32", + "type": "integer" + }, + "numExecutors": { + "format": "int32", + "type": "integer" + } + } + }, + "ExtendedLivyBatchRequest": { + "type": "object", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "artifactId": { + "type": "string" + }, + "name": { + "type": "string" + }, + "file": { + "type": "string" + }, + "className": { + "type": "string" + }, + "args": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + }, + "jars": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + }, + "files": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + }, + "archives": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + }, + "conf": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "driverMemory": { + "type": "string" + }, + "driverCores": { + "format": "int32", + "type": "integer" + }, + "executorMemory": { + "type": "string" + }, + "executorCores": { + "format": "int32", + "type": "integer" + }, + "numExecutors": { + "format": "int32", + "type": "integer" + } + } + }, + "ExtendedLivyListSessionResponse": { + "type": "object", + "properties": { + "from": { + "format": "int32", + "type": "integer" + }, + "total": { + "format": "int32", + "type": "integer" + }, + "sessions": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/ExtendedLivySessionResponse" + } + } + } + }, + "ExtendedLivySessionResponse": { + "type": "object", + "properties": { + "livyInfo": { + "$ref": "#/definitions/LivySessionStateInformation" + }, + "name": { + "type": "string" + }, + "workspaceName": { + "type": "string" + }, + "sparkPoolName": { + "type": "string" + }, + "submitterName": { + "type": "string" + }, + "submitterId": { + "type": "string" + }, + "artifactId": { + "type": "string" + }, + "jobType": { + "enum": [ + "SparkBatch", + "SparkSession" + ], + "x-ms-enum": { + "name": "JobType", + "modelAsString": true + }, + "type": "string" + }, + "result": { + "enum": [ + "Uncertain", + "Succeeded", + "Failed", + "Cancelled" + ], + "x-ms-enum": { + "name": "JobResult", + "modelAsString": true + }, + "type": "string" + }, + "schedulerInfo": { + "$ref": "#/definitions/SchedulerInformation" + }, + "pluginInfo": { + "$ref": "#/definitions/SparkServicePluginInformation" + }, + "errorInfo": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/ErrorInformation" + } + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "id": { + "format": "int32", + "type": "integer" + }, + "appId": { + "type": "string" + }, + "appInfo": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "state": { + "type": "string" + }, + "log": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "LivySessionStateInformation": { + "type": "object", + "properties": { + "notStartedAt": { + "format": "date-time", + "type": "string" + }, + "startingAt": { + "format": "date-time", + "type": "string" + }, + "idleAt": { + "format": "date-time", + "type": "string" + }, + "deadAt": { + "format": "date-time", + "type": "string" + }, + "shuttingDownAt": { + "format": "date-time", + "type": "string" + }, + "killedAt": { + "format": "date-time", + "type": "string" + }, + "recoveringAt": { + "format": "date-time", + "type": "string" + }, + "busyAt": { + "format": "date-time", + "type": "string" + }, + "errorAt": { + "format": "date-time", + "type": "string" + }, + "currentState": { + "type": "string" + }, + "jobCreationRequest": { + "$ref": "#/definitions/LivyRequestBase" + } + } + }, + "ExtendedLivySessionRequest": { + "type": "object", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "artifactId": { + "type": "string" + }, + "name": { + "type": "string" + }, + "file": { + "type": "string" + }, + "className": { + "type": "string" + }, + "args": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + }, + "jars": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + }, + "files": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + }, + "archives": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + }, + "conf": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "driverMemory": { + "type": "string" + }, + "driverCores": { + "format": "int32", + "type": "integer" + }, + "executorMemory": { + "type": "string" + }, + "executorCores": { + "format": "int32", + "type": "integer" + }, + "numExecutors": { + "format": "int32", + "type": "integer" + } + } + }, + "LivyStatementsResponseBody": { + "type": "object", + "properties": { + "total_statements": { + "format": "int32", + "type": "integer" + }, + "statements": { + "uniqueItems": false, + "type": "array", + "items": { + "$ref": "#/definitions/LivyStatementResponseBody" + } + } + } + }, + "LivyStatementResponseBody": { + "type": "object", + "properties": { + "id": { + "format": "int32", + "type": "integer" + }, + "code": { + "type": "string" + }, + "state": { + "type": "string" + }, + "output": { + "$ref": "#/definitions/LivyStatementOutput" + } + } + }, + "LivyStatementOutput": { + "type": "object", + "properties": { + "status": { + "type": "string" + }, + "execution_count": { + "format": "int32", + "type": "integer" + }, + "data": { + "type": "object" + }, + "ename": { + "type": "string" + }, + "evalue": { + "type": "string" + }, + "traceback": { + "uniqueItems": false, + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "LivyStatementRequestBody": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "kind": { + "type": "string" + } + } + }, + "LivyStatementCancellationResponse": { + "type": "object", + "properties": { + "msg": { + "type": "string" + } + } + } + }, + "parameters": { + "LivyApiVersionInPath": { + "name": "livyApiVersion", + "in": "path", + "description": "Valid api-version for the request.", + "required": true, + "type": "string", + "default": "2019-11-01-preview", + "x-ms-skip-url-encoding": true, + "x-ms-parameter-location": "client" + }, + "SynapseDnsSuffixInPath": { + "name": "SynapseDnsSuffix", + "in": "path", + "required": true, + "type": "string", + "default": "dev.azuresynapse.net", + "x-ms-skip-url-encoding": true, + "description": "Gets the DNS suffix used as the base for all Synapse service requests.", + "x-ms-parameter-location": "client" + } + } +} diff --git a/specification/synapse/data-plane/readme.md b/specification/synapse/data-plane/readme.md new file mode 100644 index 000000000000..f2f3be08766f --- /dev/null +++ b/specification/synapse/data-plane/readme.md @@ -0,0 +1,121 @@ +# Azure Synapse Analytics + + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for Azure Synapse Analytics. + + + +--- +## Getting Started +To build the SDK for Azure Synapse Analytics, 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 the Azure Synapse Analytics API. + +``` yaml +openapi-type: data-plane +tag: package-2019-11-01-preview +``` + +## Suppression +``` yaml +directive: + - suppress: DefinitionsPropertiesNamesCamelCase + reason: This would require a breaking change, and need to be consistent with the response from RP side. + from: Microsoft.Synapse/preview/2019-11-01-preview/sparkFrontend.json + where: + - $.definitions.LivyStatementsResponseBody.properties.total_statements + - $.definitions.LivyStatementOutput.properties.execution_count + + - suppress: DefinitionsPropertiesNamesCamelCase + reason: These properties need to keep the same with jupyter notebook. Rp can't change these proeprties. + from: Microsoft.Synapse/preview/2019-11-01-preview/adf/entityTypes/NoteBook.json + where: + - $.definitions.NotebookCellOutputItem.properties.execution_count + - $.definitions.NotebookCellOutputItem.properties.output_type + - $.definitions.NotebookCell.properties.cell_type + - $.definitions.NotebookLanguageInfo.properties.codemirror_mode + - $.definitions.NotebookKernelSpec.properties.display_name + - $.definitions.NotebookMetadata.properties.language_info + - $.definitions.NoteBook.properties.nbformat_minor +``` + +### Tag: package-2019-11-01-preview + +These settings apply only when `--tag=package-2019-11-01-preview` is specified on the command line + +``` yaml $(tag) == 'package-2019-11-01-preview' +input-file: +- Microsoft.Synapse/preview/2019-11-01-preview/monitoring.json +- Microsoft.Synapse/preview/2019-11-01-preview/sparkFrontend.json +- Microsoft.Synapse/preview/2019-11-01-preview/roles.json +- Microsoft.Synapse/preview/2019-11-01-preview/roleAssignments.json +- Microsoft.Synapse/preview/2019-11-01-preview/adf/datafactory.json +``` + +--- +# Code Generation + + +## Swagger to SDK + +Swagger to SDK has been intentionally disabled for this spec. + +## 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 + namespace: Microsoft.Azure.Synapse + output-folder: $(csharp-sdks-folder)/synapse/Microsoft.Azure.Synapse/src/Generated + clear-output-folder: true +``` + +## TypeScript + +See configuration in [readme.typescript.md](./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.Synapse/preview/2019-11-01-preview/monitoring.json + - $(this-folder)/Microsoft.Synapse/preview/2019-11-01-preview/sparkFrontend.json + - $(this-folder)/Microsoft.Synapse/preview/2019-11-01-preview/roles.json + - $(this-folder)/Microsoft.Synapse/preview/2019-11-01-preview/roleAssignments.json + - $(this-folder)/Microsoft.Synapse/preview/2019-11-01-preview/adf/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/synapse/data-plane/readme.python.md b/specification/synapse/data-plane/readme.python.md new file mode 100644 index 000000000000..cf2ba5dbe061 --- /dev/null +++ b/specification/synapse/data-plane/readme.python.md @@ -0,0 +1,25 @@ +## 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 +python-mode: create +add-credentials: true +license-header: MICROSOFT_MIT_NO_VERSION +payload-flattening-threshold: 1 +namespace: azure.synapse +package-name: azure-synapse +package-version: 0.1.0 +clear-output-folder: true +credential-scopes: https://dev.azuresynapse.net/.default +``` +``` yaml $(python-mode) == 'update' +no-namespace-folders: true +output-folder: $(python-sdks-folder)/synapse/azure-synapse/azure/synapse +``` +``` yaml $(python-mode) == 'create' +basic-setup-py: true +output-folder: $(python-sdks-folder)/synapse/azure-synapse +``` diff --git a/specification/synapse/data-plane/readme.typescript.md b/specification/synapse/data-plane/readme.typescript.md new file mode 100644 index 000000000000..d770f580181c --- /dev/null +++ b/specification/synapse/data-plane/readme.typescript.md @@ -0,0 +1,12 @@ +## 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: "@azure/synapse" + output-folder: "$(typescript-sdks-folder)/sdk/synapse/synapse" + generate-metadata: true +``` diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/bigDataPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/bigDataPool.json new file mode 100644 index 000000000000..97c9cc44ccca --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/bigDataPool.json @@ -0,0 +1,519 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-06-01-preview", + "title": "SynapseManagementClient", + "description": "Azure Synapse Analytics APIs" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "type": "oauth2", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/bigDataPools/{bigDataPoolName}": { + "get": { + "operationId": "BigDataPools_Get", + "summary": "Get Big Data pool", + "description": "Get a Big Data pool.", + "tags": [ + "BigDataPools" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "bigDataPoolName", + "description": "Big Data pool name", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/BigDataPoolResourceInfo" + }, + "description": "" + }, + "default": { + "schema": { + "$ref": "./workspace.json#/definitions/ErrorContract" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get a Big Data pool": { + "$ref": "./examples/GetBigDataPool.json" + } + } + }, + "patch": { + "operationId": "BigDataPools_Update", + "summary": "Update a Big Data pool.", + "description": "Patch a Big Data pool.", + "tags": [ + "BigDataPools" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "bigDataPoolName", + "description": "Big Data pool name", + "required": true + }, + { + "schema": { + "$ref": "#/definitions/BigDataPoolPatchInfo" + }, + "in": "body", + "name": "bigDataPoolPatchInfo", + "description": "The updated Big Data pool properties", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/BigDataPoolResourceInfo" + }, + "description": "" + }, + "default": { + "schema": { + "$ref": "./workspace.json#/definitions/ErrorContract" + }, + "description": "" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Update a Big Data pool": { + "$ref": "./examples/UpdateBigDataPool.json" + } + } + }, + "put": { + "operationId": "BigDataPools_CreateOrUpdate", + "summary": "Create a Big Data pool.", + "description": "Create a new Big Data pool.", + "tags": [ + "BigDataPools" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "bigDataPoolName", + "description": "Big Data pool name", + "required": true + }, + { + "name": "force", + "type": "boolean", + "in": "query", + "description": "Whether to stop any running jobs in the Big Data pool", + "required": false, + "default": false + }, + { + "schema": { + "$ref": "#/definitions/BigDataPoolResourceInfo" + }, + "in": "body", + "name": "bigDataPoolInfo", + "description": "The Big Data pool to create.", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/BigDataPoolResourceInfo" + }, + "description": "OK" + }, + "202": { + "schema": { + "$ref": "#/definitions/BigDataPoolResourceInfo" + }, + "description": "" + }, + "default": { + "schema": { + "$ref": "./workspace.json#/definitions/ErrorContract" + }, + "description": "" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Create or update a Big Data pool": { + "$ref": "./examples/CreateOrUpdateBigDataPool.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "operationId": "BigDataPools_Delete", + "summary": "Delete a Big Data pool.", + "description": "Delete a Big Data pool from the workspace.", + "tags": [ + "BigDataPools" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "bigDataPoolName", + "description": "Big Data pool name", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "type": "object" + }, + "description": "OK" + }, + "202": { + "schema": { + "type": "object" + }, + "description": "" + }, + "204": { + "description": "" + }, + "default": { + "schema": { + "$ref": "./workspace.json#/definitions/ErrorContract" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Delete a Big Data pool": { + "$ref": "./examples/DeleteBigDataPool.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/bigDataPools": { + "get": { + "operationId": "BigDataPools_ListByWorkspace", + "summary": "List the Big Data pools in a workspace.", + "description": "List Big Data pools in a workspace.", + "tags": [ + "BigDataPools" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/BigDataPoolResourceInfoListResult" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "List Big Data pools in a workspace": { + "$ref": "./examples/ListBigDataPoolsInWorkspace.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "BigDataPoolResourceInfoListResult": { + "type": "object", + "description": "Collection of Big Data pool information", + "title": "Collection of Big Data pools", + "properties": { + "nextLink": { + "type": "string", + "description": "Link to the next page of results" + }, + "value": { + "type": "array", + "description": "List of Big Data pools", + "items": { + "$ref": "#/definitions/BigDataPoolResourceInfo" + } + } + } + }, + "BigDataPoolPatchInfo": { + "type": "object", + "description": "Properties patch for a Big Data pool", + "title": "Patch for a Big Data pool", + "properties": { + "tags": { + "additionalProperties": { + "type": "string" + }, + "description": "Updated tags for the Big Data pool", + "type": "object" + } + } + }, + "BigDataPoolResourceInfo": { + "type": "object", + "description": "A Big Data pool", + "title": "Big Data pool", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/BigDataPoolResourceProperties", + "description": "Big Data pool properties", + "x-ms-client-flatten": true + } + } + }, + "BigDataPoolResourceProperties": { + "type": "object", + "description": "Properties of a Big Data pool powered by Apache Spark", + "title": "Spark pool properties", + "properties": { + "provisioningState": { + "type": "string", + "description": "The state of the Big Data pool." + }, + "autoScale": { + "$ref": "#/definitions/AutoScaleProperties", + "description": "Auto-scaling properties" + }, + "creationDate": { + "type": "string", + "format": "date-time", + "description": "The time when the Big Data pool was created." + }, + "autoPause": { + "$ref": "#/definitions/AutoPauseProperties", + "description": "Auto-pausing properties" + }, + "sparkEventsFolder": { + "type": "string", + "description": "The Spark events folder" + }, + "nodeCount": { + "type": "integer", + "format": "int32", + "minimum": 3, + "maximum": 200, + "description": "The number of nodes in the Big Data pool." + }, + "libraryRequirements": { + "$ref": "#/definitions/LibraryRequirements", + "description": "Library version requirements" + }, + "sparkVersion": { + "type": "string", + "description": "The Apache Spark version." + }, + "defaultSparkLogFolder": { + "type": "string", + "description": "The default folder where Spark logs will be written." + }, + "nodeSize": { + "enum": [ + "None", + "Small", + "Medium", + "Large" + ], + "type": "string", + "description": "The level of compute power that each node in the Big Data pool has.", + "x-ms-enum": { + "name": "NodeSize", + "modelAsString": true + } + }, + "nodeSizeFamily": { + "enum": [ + "None", + "MemoryOptimized" + ], + "type": "string", + "description": "The kind of nodes that the Big Data pool provides.", + "x-ms-enum": { + "name": "NodeSizeFamily", + "modelAsString": true + } + } + } + }, + "AutoScaleProperties": { + "type": "object", + "description": "Auto-scaling properties of a Big Data pool powered by Apache Spark", + "title": "Spark pool auto-scaling properties", + "properties": { + "minNodeCount": { + "type": "integer", + "format": "int32", + "description": "The minimum number of nodes the Big Data pool can support." + }, + "enabled": { + "type": "boolean", + "description": "Whether automatic scaling is enabled for the Big Data pool." + }, + "maxNodeCount": { + "type": "integer", + "format": "int32", + "description": "The maximum number of nodes the Big Data pool can support." + } + } + }, + "AutoPauseProperties": { + "type": "object", + "description": "Auto-pausing properties of a Big Data pool powered by Apache Spark", + "title": "Spark pool auto-pausing properties", + "properties": { + "delayInMinutes": { + "type": "integer", + "format": "int32", + "description": "Number of minutes of idle time before the Big Data pool is automatically paused." + }, + "enabled": { + "type": "boolean", + "description": "Whether auto-pausing is enabled for the Big Data pool." + } + } + }, + "LibraryRequirements": { + "type": "object", + "description": "Library requirements for a Big Data pool powered by Apache Spark", + "title": "Spark pool library version requirements", + "properties": { + "time": { + "type": "string", + "format": "date-time", + "readOnly": true, + "description": "The last update time of the library requirements file." + }, + "content": { + "type": "string", + "description": "The library requirements." + }, + "filename": { + "type": "string", + "description": "The filename of the library requirements file." + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/checkNameAvailability.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/checkNameAvailability.json new file mode 100644 index 000000000000..28e52974b500 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/checkNameAvailability.json @@ -0,0 +1,121 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-06-01-preview", + "title": "SynapseManagementClient", + "description": "Azure Synapse Analytics APIs" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "type": "oauth2", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Synapse/checkNameAvailability": { + "post": { + "operationId": "Operations_CheckNameAvailability", + "summary": "Check name availability", + "description": "Check whether a workspace name is available", + "tags": [ + "Operations" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityRequest" + }, + "in": "body", + "name": "request", + "required": true, + "description": "The check request" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityResponse" + }, + "description": "" + }, + "default": { + "schema": { + "$ref": "./workspace.json#/definitions/ErrorContract" + }, + "description": "" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Check for a workspace name that is available": { + "$ref": "./examples/CheckNameAvailabilityWorkspaceAvailable.json" + }, + "Check for a workspace name that already exists": { + "$ref": "./examples/CheckNameAvailabilityWorkspaceAlreadyExists.json" + } + } + } + } + }, + "definitions": { + "CheckNameAvailabilityRequest": { + "type": "object", + "title": "Check name availability request", + "description": "A request about whether a workspace name is available", + "properties": { + "name": { + "type": "string", + "description": "Workspace name" + }, + "type": { + "type": "string", + "description": "Type: workspace" + } + } + }, + "CheckNameAvailabilityResponse": { + "type": "object", + "title": "Check name availability response", + "description": "A response saying whether the workspace name is available", + "properties": { + "message": { + "type": "string", + "description": "Validation message" + }, + "available": { + "type": "boolean", + "description": "Whether the workspace name is available" + }, + "reason": { + "type": "string", + "description": "Reason the workspace name is or is not available" + }, + "name": { + "type": "string", + "description": "Workspace name" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ApprovePrivateEndpointConnection.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ApprovePrivateEndpointConnection.json new file mode 100644 index 000000000000..d2b7cdc9fb4a --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ApprovePrivateEndpointConnection.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "privateEndpointConnectionName": "ExamplePrivateEndpointConnection", + "api-version": "2019-06-01-preview", + "parameters": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by abc@example.com" + } + } + } + }, + "responses": { + "201": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/privateEndpointConnections/ExamplePrivateEndpointConnection", + "name": "sql", + "type": "Microsoft.Synapse/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Provisioning", + "privateEndpoint": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Network/privateEndpoints/ExamplePrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + }, + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/privateEndpointConnections/ExamplePrivateEndpointConnection", + "name": "sql", + "type": "Microsoft.Synapse/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Network/privateEndpoints/ExamplePrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CheckNameAvailabilityWorkspaceAlreadyExists.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CheckNameAvailabilityWorkspaceAlreadyExists.json new file mode 100644 index 000000000000..6858cb3f5b6f --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CheckNameAvailabilityWorkspaceAlreadyExists.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "api-version": "2019-06-01-preview", + "request": { + "name": "workspace1", + "type": "Microsoft.Synapse/workspaces" + } + }, + "responses": { + "200": { + "body": { + "name": "workspace1", + "available": false, + "reason": "AlreadyExists", + "message": "Specified workspace name is already used" + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CheckNameAvailabilityWorkspaceAvailable.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CheckNameAvailabilityWorkspaceAvailable.json new file mode 100644 index 000000000000..cecdc58e6e38 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CheckNameAvailabilityWorkspaceAvailable.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "api-version": "2019-06-01-preview", + "request": { + "name": "workspace1", + "type": "Microsoft.ProjectArcadia/workspaces" + } + }, + "responses": { + "200": { + "body": { + "name": "workspace1", + "available": true, + "reason": null, + "message": null + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateIpFirewallRule.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateIpFirewallRule.json new file mode 100644 index 000000000000..fd18e874c951 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateIpFirewallRule.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "ruleName": "ExampleIpFirewallRule", + "api-version": "2019-06-01-preview", + "ipFirewallRuleInfo": { + "properties": { + "startIpAddress": "10.0.0.0", + "endIpAddress": "10.0.0.254" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/firewallRules/ExampleIpFirewallRule", + "type": "Microsoft.Synapse/workspaces/firewallRules", + "name": "ExampleIpFirewallRule", + "properties": { + "startIpAddress": "10.0.0.0", + "endIpAddress": "10.0.0.254", + "provisioningState": "Provisioning" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/firewallRules/ExampleIpFirewallRule", + "type": "Microsoft.Synapse/workspaces/firewallRules", + "name": "ExampleIpFirewallRule", + "properties": { + "startIpAddress": "10.0.0.0", + "endIpAddress": "10.0.0.254", + "provisioningState": "Provisioning" + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateBigDataPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateBigDataPool.json new file mode 100644 index 000000000000..454c07bde247 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateBigDataPool.json @@ -0,0 +1,116 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "bigDataPoolName": "ExamplePool", + "api-version": "2019-06-01-preview", + "bigDataPoolInfo": { + "tags": { + "key": "value" + }, + "location": "West US 2", + "properties": { + "sparkVersion": "2.4", + "nodeCount": 4, + "nodeSize": "Medium", + "nodeSizeFamily": "MemoryOptimized", + "autoScale": { + "enabled": true, + "minNodeCount": 3, + "maxNodeCount": 50 + }, + "autoPause": { + "enabled": true, + "delayInMinutes": 15 + }, + "sparkEventsFolder": "/events", + "libraryRequirements": { + "content": "", + "filename": "requirements.txt" + }, + "defaultSparkLogFolder": "/logs" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/bigDataPools/ExamplePool", + "type": "Microsoft.Synapse/workspaces/bigDataPools", + "location": "West US 2", + "name": "ExamplePool", + "tags": { + "key": "value" + }, + "properties": { + "provisioningState": "Provisioning", + "sparkVersion": "2.4", + "nodeCount": 4, + "nodeSize": "Medium", + "nodeSizeFamily": "MemoryOptimized", + "autoScale": { + "enabled": true, + "minNodeCount": 3, + "maxNodeCount": 50 + }, + "autoPause": { + "enabled": true, + "delayInMinutes": 15 + }, + "creationDate": "1970-01-01T00:00:00Z", + "sparkEventsFolder": "/events", + "libraryRequirements": { + "time": "1970-01-01T00:00:00Z", + "content": "", + "filename": "requirements.txt" + }, + "defaultSparkLogFolder": "/logs" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/bigDataPools/ExamplePool", + "type": "Microsoft.Synapse/workspaces/bigDataPools", + "location": "West US 2", + "name": "ExamplePool", + "tags": { + "key": "value" + }, + "properties": { + "provisioningState": "Provisioning", + "sparkVersion": "2.4", + "nodeCount": 4, + "nodeSize": "Medium", + "nodeSizeFamily": "MemoryOptimized", + "autoScale": { + "enabled": true, + "minNodeCount": 3, + "maxNodeCount": 50 + }, + "autoPause": { + "enabled": true, + "delayInMinutes": 15 + }, + "creationDate": "1970-01-01T00:00:00Z", + "sparkEventsFolder": "/events", + "libraryRequirements": { + "time": "1970-01-01T00:00:00Z", + "content": "", + "filename": "requirements.txt" + }, + "defaultSparkLogFolder": "/logs" + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateManagedIdentitySqlControlSettings.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateManagedIdentitySqlControlSettings.json new file mode 100644 index 000000000000..b76f8be8f269 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateManagedIdentitySqlControlSettings.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2019-06-01-preview", + "managedIdentitySqlControlSettings": { + "properties": { + "grantSqlControlToManagedIdentity": { + "desiredState": "Enabled" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/workspaces/workspace1/managedIdentitySqlControlSettings/default", + "name": "default", + "properties": { + "grantSqlControlToManagedIdentity": { + "desiredState": "Enabled", + "actualState": "Enabling" + } + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateSqlPoolBlobAuditingWithAllParameters.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateSqlPoolBlobAuditingWithAllParameters.json new file mode 100644 index 000000000000..74ed789dfbc5 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateSqlPoolBlobAuditingWithAllParameters.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-4799", + "workspaceName": "blobauditingtest-6440", + "sqlPoolName": "testdb", + "blobAuditingPolicyName": "default", + "api-version": "2019-06-01-preview", + "parameters": { + "properties": { + "state": "Enabled", + "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 6, + "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000", + "isStorageSecondaryKeyInUse": false, + "auditActionsAndGroups": [ + "DATABASE_LOGOUT_GROUP", + "DATABASE_ROLE_MEMBER_CHANGE_GROUP", + "UPDATE on database::TestDatabaseName by public" + ], + "isAzureMonitorTargetEnabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Synapse/workspaces/blobauditingtest-6440/sqlPools/testdb", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/auditingSettings", + "kind": "V12", + "properties": { + "state": "Enabled", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 0, + "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000", + "isStorageSecondaryKeyInUse": false, + "auditActionsAndGroups": [ + "DATABASE_LOGOUT_GROUP", + "DATABASE_ROLE_MEMBER_CHANGE_GROUP", + "UPDATE on database::TestDatabaseName by public" + ], + "isAzureMonitorTargetEnabled": true + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Synapse/workspaces/blobauditingtest-6440/sqlPools/testdb", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/auditingSettings", + "kind": "V12", + "properties": { + "state": "Enabled", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 0, + "storageAccountSubscriptionId": "00000000-1234-0000-5678-000000000000", + "isStorageSecondaryKeyInUse": false, + "auditActionsAndGroups": [ + "DATABASE_LOGOUT_GROUP", + "DATABASE_ROLE_MEMBER_CHANGE_GROUP", + "UPDATE on database::TestDatabaseName by public" + ], + "isAzureMonitorTargetEnabled": true + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateSqlPoolBlobAuditingWithMinParameters.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateSqlPoolBlobAuditingWithMinParameters.json new file mode 100644 index 000000000000..2bb3d14895ac --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateSqlPoolBlobAuditingWithMinParameters.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-4799", + "workspaceName": "blobauditingtest-6440", + "sqlPoolName": "testdb", + "blobAuditingPolicyName": "default", + "api-version": "2019-06-01-preview", + "parameters": { + "properties": { + "state": "Enabled", + "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Synapse/workspaces/blobauditingtest-6440/sqlPools/testdb", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/auditingSettings", + "kind": "V12", + "properties": { + "state": "Enabled", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 0, + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isStorageSecondaryKeyInUse": false, + "auditActionsAndGroups": [ + "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP", + "FAILED_DATABASE_AUTHENTICATION_GROUP", + "BATCH_COMPLETED_GROUP" + ], + "isAzureMonitorTargetEnabled": false + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-4799/providers/Microsoft.Synapse/workspaces/blobauditingtest-6440/sqlPools/testdb", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/auditingSettings", + "kind": "V12", + "properties": { + "state": "Enabled", + "storageEndpoint": "https://mystorage.blob.core.windows.net", + "retentionDays": 0, + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isStorageSecondaryKeyInUse": false, + "auditActionsAndGroups": [ + "SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP", + "FAILED_DATABASE_AUTHENTICATION_GROUP", + "BATCH_COMPLETED_GROUP" + ], + "isAzureMonitorTargetEnabled": false + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateSqlPoolColumnSensitivityLabelWithAllParameters.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateSqlPoolColumnSensitivityLabelWithAllParameters.json new file mode 100644 index 000000000000..64e7820bb2ab --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateSqlPoolColumnSensitivityLabelWithAllParameters.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "workspaceName": "myServer", + "sqlPoolName": "myDatabase", + "schemaName": "dbo", + "tableName": "myTable", + "columnName": "myColumn", + "sensitivityLabelSource": "current", + "api-version": "2019-06-01-preview", + "parameters": { + "properties": { + "informationType": "PhoneNumber", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "bf91e08c-f4f0-478a-b016-25164b2a65ff", + "labelName": "PII" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Synapse/workspaces/myServer/sqlPools/myDatabase/schemas/dbo/tables/myTable/columns/myColumn/sensitivityLabels/current", + "name": "current", + "type": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables/columns/sensitivityLabels", + "properties": { + "informationType": "PhoneNumber", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "bf91e08c-f4f0-478a-b016-25164b2a65ff", + "labelName": "PII" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Synapse/workspaces/myServer/sqlPools/myDatabase/schemas/dbo/tables/myTable/columns/myColumn/sensitivityLabels/current", + "name": "current", + "type": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables/columns/sensitivityLabels", + "properties": { + "informationType": "PhoneNumber", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "bf91e08c-f4f0-478a-b016-25164b2a65ff", + "labelName": "PII" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateSqlPoolSecurityAlertWithAllParameters.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateSqlPoolSecurityAlertWithAllParameters.json new file mode 100644 index 000000000000..6a0b8d823314 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateSqlPoolSecurityAlertWithAllParameters.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "securityalert-4799", + "workspaceName": "securityalert-6440", + "sqlPoolName": "testdb", + "securityAlertPolicyName": "default", + "api-version": "2019-06-01-preview", + "parameters": { + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [ + "test@microsoft.com", + "user@microsoft.com" + ], + "disabledAlerts": [ + "Sql_Injection", + "Usage_Anomaly" + ], + "retentionDays": 6, + "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securityalert-4799/providers/Microsoft.Synapse/workspaces/securityalert-6440/sqlPools/testdb", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/securityAlertPolicies", + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [ + "test@microsoft.com", + "user@microsoft.com" + ], + "disabledAlerts": [ + "Sql_Injection", + "Usage_Anomaly" + ], + "retentionDays": 6, + "storageAccountAccessKey": "", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securityalert-4799/providers/Microsoft.Synapse/workspaces/securityalert-6440/sqlPools/testdb", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/securityAlertPolicies", + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [ + "test@microsoft.com", + "user@microsoft.com" + ], + "disabledAlerts": [ + "Access_Anomaly", + "Usage_Anomaly" + ], + "retentionDays": 6, + "storageAccountAccessKey": "sdlfkjabc+sdlfkjsdlkfsjdfLDKFTERLKFDFKLjsdfksjdflsdkfD2342309432849328476458/3RSD==", + "storageEndpoint": "https://mystorage.blob.core.windows.net" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateSqlPoolSecurityAlertWithMinParameters.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateSqlPoolSecurityAlertWithMinParameters.json new file mode 100644 index 000000000000..4a831513fbf2 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateSqlPoolSecurityAlertWithMinParameters.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "securityalert-4799", + "workspaceName": "securityalert-6440", + "sqlPoolName": "testdb", + "securityAlertPolicyName": "default", + "api-version": "2019-06-01-preview", + "parameters": { + "properties": { + "state": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securityalert-4799/providers/Microsoft.Synapse/workspaces/securityalert-6440/sqlPools/testdb", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/securityAlertPolicies", + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [], + "disabledAlerts": [], + "retentionDays": 0, + "storageAccountAccessKey": "", + "storageEndpoint": "" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securityalert-4799/providers/Microsoft.Synapse/workspaces/securityalert-6440/sqlPools/testdb", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/securityAlertPolicies", + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [], + "disabledAlerts": [], + "retentionDays": 0, + "storageAccountAccessKey": "", + "storageEndpoint": "" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateSqlPoolTransparentDataEncryption.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateSqlPoolTransparentDataEncryption.json new file mode 100644 index 000000000000..fccba25b06cd --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateSqlPoolTransparentDataEncryption.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6852", + "workspaceName": "sqlcrudtest-2080", + "sqlPoolName": "sqlcrudtest-9187", + "transparentDataEncryptionName": "current", + "api-version": "2019-06-01-preview", + "parameters": { + "properties": { + "status": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "name": "current", + "location": "North Europe", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/sqlcrudtest-9187/transparentDataEncryption/current", + "type": "Microsoft.Synapse/workspaces/sqlPools/transparentDataEncryption", + "properties": { + "status": "Enabled" + } + } + }, + "201": { + "body": { + "name": "current", + "location": "North Europe", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/sqlcrudtest-9187/transparentDataEncryption/current", + "type": "Microsoft.Synapse/workspaces/sqlPools/transparentDataEncryption", + "properties": { + "status": "Enabled" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateSqlPoolVulnerabilityAssessmentRuleBaseline.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateSqlPoolVulnerabilityAssessmentRuleBaseline.json new file mode 100644 index 000000000000..dd6bc57074cc --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateSqlPoolVulnerabilityAssessmentRuleBaseline.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "workspaceName": "vulnerabilityaseessmenttest-6440", + "sqlPoolName": "testdb", + "vulnerabilityAssessmentName": "default", + "ruleId": "VA1001", + "baselineName": "default", + "api-version": "2019-06-01-preview", + "parameters": { + "properties": { + "baselineResults": [ + { + "result": [ + "userA", + "SELECT" + ] + }, + { + "result": [ + "userB", + "SELECT" + ] + }, + { + "result": [ + "userC", + "SELECT", + "tableId_4" + ] + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Synapse/workspaces/vulnerabilityaseessmenttest-6440/sqlPools/testdb/vulnerabilityAssessments/default/rules/VA1001/baselines/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments/rules/baselines", + "properties": { + "baselineResults": [ + { + "result": [ + "userA", + "SELECT" + ] + }, + { + "result": [ + "userB", + "SELECT" + ] + }, + { + "result": [ + "userC", + "SELECT", + "tableId_4" + ] + } + ] + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateSqlPoolVulnerabilityAssessmentWithAllParameters.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateSqlPoolVulnerabilityAssessmentWithAllParameters.json new file mode 100644 index 000000000000..7db617841bd3 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateSqlPoolVulnerabilityAssessmentWithAllParameters.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "workspaceName": "vulnerabilityaseessmenttest-6440", + "sqlPoolName": "testdb", + "vulnerabilityAssessmentName": "default", + "api-version": "2019-06-01-preview", + "parameters": { + "properties": { + "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", + "storageContainerSasKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", + "storageAccountAccessKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Synapse/workspaces/vulnerabilityaseessmenttest-6440/sqlPools/testdb/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Synapse/workspaces/vulnerabilityaseessmenttest-6440/sqlPools/testdb/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateSqlPoolVulnerabilityAssessmentWithContainerSasKeyAndMinParameters.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateSqlPoolVulnerabilityAssessmentWithContainerSasKeyAndMinParameters.json new file mode 100644 index 000000000000..652435f3b757 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateSqlPoolVulnerabilityAssessmentWithContainerSasKeyAndMinParameters.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "workspaceName": "vulnerabilityaseessmenttest-6440", + "sqlPoolName": "testdb", + "vulnerabilityAssessmentName": "default", + "api-version": "2019-06-01-preview", + "parameters": { + "properties": { + "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", + "storageContainerSasKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Synapse/workspaces/vulnerabilityaseessmenttest-6440/sqlPools/testdb/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": false, + "emails": [] + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Synapse/workspaces/vulnerabilityaseessmenttest-6440/sqlPools/testdb/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": false, + "emails": [] + } + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateVulnerabilityAssessmentWithStorageAccessKeyAndMinParameters.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateVulnerabilityAssessmentWithStorageAccessKeyAndMinParameters.json new file mode 100644 index 000000000000..9403d055f1f9 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateVulnerabilityAssessmentWithStorageAccessKeyAndMinParameters.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "workspaceName": "vulnerabilityaseessmenttest-6440", + "sqlPoolName": "testdb", + "vulnerabilityAssessmentName": "default", + "api-version": "2019-06-01-preview", + "parameters": { + "properties": { + "storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/", + "storageAccountAccessKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/Microsoft.Synapse/workspaces/vulnerabilityaseessmenttest-6440/sqlPools/testdb/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": false, + "emails": [] + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Synapse/workspaces/vulnerabilityaseessmenttest-6440/sqlPools/testdb/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": false, + "emails": [] + } + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateWorkspace.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateWorkspace.json new file mode 100644 index 000000000000..1083a7b95955 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateWorkspace.json @@ -0,0 +1,111 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2019-06-01-preview", + "workspaceInfo": { + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "defaultDataLakeStorage": { + "accountUrl": "https://accountname.dfs.core.windows.net", + "filesystem": "default" + }, + "sqlAdministratorLogin": "login", + "sqlAdministratorLoginPassword": "password", + "managedVirtualNetwork": "default" + }, + "location": "East US", + "tags": { + "key": "value" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/workspaces/workspace1", + "name": "workspace1", + "type": "Microsoft.Synapse/workspaces", + "location": "East US", + "identity": { + "type": "SystemAssigned", + "principalId": "f4b0f1c2-xxxx-43db-xxxx-ccd99e1afd22", + "tenantId": "72f988bf-xxxx-41af-xxxx-2d7cd011db47" + }, + "properties": { + "defaultDataLakeStorage": { + "accountUrl": "https://accountname.dfs.core.windows.net", + "filesystem": "default" + }, + "connectivityEndpoints": { + "dev": "workspace1.dev.projectarcadia.net", + "sql": "workspace1.sql.projectarcadia.net" + }, + "sqlAdministratorLogin": "login", + "sqlAdministratorLoginPassword": "password", + "managedResourceGroupName": "resourceGroup2", + "managedVirtualNetwork": "default", + "provisioningState": "Succeeded", + "privateEndpointConnections": [ + { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/privateEndpointConnections/ExamplePrivateEndpointConnection", + "name": "sql", + "type": "Microsoft.Synapse/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Network/privateEndpoints/ExamplePrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + }, + "tags": { + "key": "value" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/workspaces/workspace1", + "name": "workspace1", + "type": "Microsoft.Synapse/workspaces", + "location": "East US", + "properties": { + "defaultDataLakeStorage": { + "accountUrl": "https://accountname.dfs.core.windows.net", + "filesystem": "default" + }, + "connectivityEndpoints": { + "dev": "workspace1.dev.projectarcadia.net", + "sql": "workspace1.sql.projectarcadia.net" + }, + "sqlAdministratorLogin": "login", + "sqlAdministratorLoginPassword": "password", + "managedResourceGroupName": "resourceGroup2", + "managedVirtualNetwork": "default", + "provisioningState": "Provisioning" + }, + "tags": { + "key": "value" + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateWorkspaceAadAdmin.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateWorkspaceAadAdmin.json new file mode 100644 index 000000000000..224bc61505d7 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateOrUpdateWorkspaceAadAdmin.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2019-06-01-preview", + "aadAdminInfo": { + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/workspaces/workspace1/administrators/activeDirectory", + "name": "activeDirectory", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/workspaces/workspace1/administrators/activeDirectory", + "name": "activeDirectory", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateSqlPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateSqlPool.json new file mode 100644 index 000000000000..2ff38b799943 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateSqlPool.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "sqlPoolName": "ExampleSqlPool", + "api-version": "2019-06-01-preview", + "sqlPoolInfo": { + "tags": {}, + "sku": { + "tier": "", + "name": "" + }, + "location": "West US 2", + "properties": { + "maxSizeBytes": 0, + "collation": "", + "sourceDatabaseId": "", + "recoverableDatabaseId": "", + "restorePointInTime": "1970-01-01T00:00:00.000Z", + "createMode": "", + "creationDate": "1970-01-01T00:00:00.000Z" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspaces/sqlPools/ExampleSqlPool", + "type": "Microsoft.Synapse/workspaces/sqlPools", + "name": "ExampleSqlPool", + "location": "West US 2", + "tags": {}, + "sku": { + "tier": "", + "name": "" + }, + "properties": { + "maxSizeBytes": 0, + "collation": "", + "sourceDatabaseId": "", + "recoverableDatabaseId": "", + "provisioningState": "Provisioning", + "status": "Paused", + "restorePointInTime": "1970-01-01T00:00:00.000Z", + "createMode": "", + "creationDate": "1970-01-01T00:00:00.000Z" + } + } + }, + "202": {}, + "404": {}, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateSqlPoolMetadataSyncConfig.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateSqlPoolMetadataSyncConfig.json new file mode 100644 index 000000000000..9697eb7cc7b1 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateSqlPoolMetadataSyncConfig.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "sqlPoolName": "ExampleSqlPool", + "api-version": "2019-06-01-preview", + "metadataSyncConfiguration": { + "properties": { + "enabled": true + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/bigDataPools/ExamplePool/metadataSync/config", + "type": "Microsoft.Synapse/workspaces/bigDataPools/metadataSync/config", + "name": "config", + "properties": { + "enabled": true + } + } + }, + "404": {}, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateSqlPoolRestorePoints.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateSqlPoolRestorePoints.json new file mode 100644 index 000000000000..8ba1af052af9 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/CreateSqlPoolRestorePoints.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "location": "japaneast", + "workspaceName": "testserver", + "sqlPoolName": "testDatabase", + "api-version": "2019-06-01-preview", + "parameters": { + "restorePointLabel": "mylabel" + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Synapse/workspaces/testserver/sqlPools/testDatabase/restorePoints/131546477590000000", + "name": "131546477590000000", + "type": "Microsoft.Synapse/workspaces/sqlPools/restorePoints", + "location": "japaneast", + "properties": { + "restorePointType": "DISCRETE", + "restorePointCreationDate": "2017-03-10T08:00:00.000Z", + "restorePointLabel": "mylabel" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Synapse/workspaces/testserver/sqlPools/testDatabase/restorePoints/131546477590000000", + "name": "131546477590000000", + "type": "Microsoft.Synapse/workspaces/sqlPools/restorePoints", + "location": "japaneast", + "properties": { + "restorePointType": "DISCRETE", + "restorePointCreationDate": "2017-03-10T08:00:00.000Z", + "restorePointLabel": "mylabel" + } + } + }, + "202": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/DeleteBigDataPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/DeleteBigDataPool.json new file mode 100644 index 000000000000..9e234b51c57a --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/DeleteBigDataPool.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "bigDataPoolName": "ExamplePool", + "api-version": "2019-06-01-preview" + }, + "responses": { + "204": {}, + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/bigDataPools/ExamplePool", + "type": "Microsoft.Synapse/workspaces/bigDataPools", + "location": "West US 2", + "name": "ExamplePool", + "tags": {}, + "properties": { + "provisioningState": "Deleting", + "sparkVersion": "2.4", + "nodeCount": 4, + "nodeSize": "Medium", + "nodeSizeFamily": "MemoryOptimized", + "autoScale": { + "enabled": true, + "minNodeCount": 3, + "maxNodeCount": 50 + }, + "autoPause": { + "enabled": true, + "delayInMinutes": 15 + }, + "creationDate": "1970-01-01T00:00:00Z", + "sparkEventsFolder": "/events", + "libraryRequirements": { + "time": "1970-01-01T00:00:00Z", + "content": "", + "filename": "requirements.txt" + }, + "defaultSparkLogFolder": "/logs" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/bigDataPools/ExamplePool", + "type": "Microsoft.Synapse/workspaces/bigDataPools", + "location": "West US 2", + "name": "ExamplePool", + "tags": {}, + "properties": { + "provisioningState": "Deleting", + "sparkVersion": "2.4", + "nodeCount": 4, + "nodeSize": "Medium", + "nodeSizeFamily": "MemoryOptimized", + "autoScale": { + "enabled": true, + "minNodeCount": 3, + "maxNodeCount": 50 + }, + "autoPause": { + "enabled": true, + "delayInMinutes": 15 + }, + "creationDate": "1970-01-01T00:00:00Z", + "sparkEventsFolder": "/events", + "libraryRequirements": { + "time": "1970-01-01T00:00:00Z", + "content": "", + "filename": "requirements.txt" + }, + "defaultSparkLogFolder": "/logs" + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/DeleteIpFirewallRule.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/DeleteIpFirewallRule.json new file mode 100644 index 000000000000..46e53bf1b4b1 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/DeleteIpFirewallRule.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "ruleName": "ExampleIpFirewallRule", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/firewallRules/ExampleIpFirewallRule", + "type": "Microsoft.Synapse/workspaces/firewallRules", + "name": "ExampleIpFirewallRule", + "location": "West US 2", + "tags": {}, + "properties": { + "startIpAddress": "10.0.0.0", + "endIpAddress": "10.0.0.254", + "provisioningState": "Deleting" + } + } + }, + "202": {}, + "204": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/DeletePrivateEndpointConnection.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/DeletePrivateEndpointConnection.json new file mode 100644 index 000000000000..c870df7d7f65 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/DeletePrivateEndpointConnection.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "privateEndpointConnectionName": "ExamplePrivateEndpointConnection", + "api-version": "2019-06-01-preview" + }, + "responses": { + "202": { + "body": { + "status": "InProgress" + } + }, + "204": {}, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/DeleteSqlPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/DeleteSqlPool.json new file mode 100644 index 000000000000..2a47eff383d8 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/DeleteSqlPool.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "sqlPoolName": "ExampleSqlPool", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/sqlPools/ExampleSqlPool", + "name": "ExampleSqlPool", + "type": "Microsoft.Synapse/workspaces/sqlPools", + "location": "West US 2", + "properties": { + "provisioningState": "Deleting", + "status": "Paused" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/sqlPools/ExampleSqlPool", + "name": "ExampleSqlPool", + "type": "Microsoft.Synapse/workspaces/sqlPools", + "location": "West US 2", + "properties": { + "provisioningState": "Deleting", + "status": "Paused" + } + } + }, + "204": {}, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/DeleteSqlPoolColumnSensitivityLabel.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/DeleteSqlPoolColumnSensitivityLabel.json new file mode 100644 index 000000000000..dd115823d9d3 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/DeleteSqlPoolColumnSensitivityLabel.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "workspaceName": "myServer", + "sqlPoolName": "myDatabase", + "schemaName": "dbo", + "tableName": "myTable", + "columnName": "myColumn", + "sensitivityLabelSource": "current", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/DeleteSqlPoolVulnerabilityAssessment.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/DeleteSqlPoolVulnerabilityAssessment.json new file mode 100644 index 000000000000..f602085474f7 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/DeleteSqlPoolVulnerabilityAssessment.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "workspaceName": "vulnerabilityaseessmenttest-6440", + "sqlPoolName": "testdb", + "vulnerabilityAssessmentName": "default", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/DeleteSqlPoolVulnerabilityAssessmentRuleBaseline.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/DeleteSqlPoolVulnerabilityAssessmentRuleBaseline.json new file mode 100644 index 000000000000..433fcf057396 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/DeleteSqlPoolVulnerabilityAssessmentRuleBaseline.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "workspaceName": "vulnerabilityaseessmenttest-6440", + "sqlPoolName": "testdb", + "baselineName": "default", + "ruleId": "VA1001", + "vulnerabilityAssessmentName": "default", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/DeleteWorkspace.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/DeleteWorkspace.json new file mode 100644 index 000000000000..114f42b37450 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/DeleteWorkspace.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2019-06-01-preview" + }, + "responses": { + "202": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/workspaces/workspace1", + "name": "workspace1", + "type": "Microsoft.Synapse/workspaces", + "location": "East US", + "properties": { + "defaultDataLakeStorage": { + "accountUrl": "https://accountname.dfs.core.windows.net", + "filesystem": "default" + }, + "connectivityEndpoints": { + "dev": "workspace1.dev.projectarcadia.net", + "sql": "workspace1.sql.projectarcadia.net" + }, + "sqlAdministratorLogin": "login", + "sqlAdministratorLoginPassword": "password", + "managedResourceGroupName": "resourceGroup2", + "provisioningState": "Deleting" + }, + "tags": { + "key": "value" + } + } + }, + "204": {}, + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/workspaces/workspace1", + "name": "workspace1", + "type": "Microsoft.Synapse/workspaces", + "location": "East US", + "properties": { + "defaultDataLakeStorage": { + "accountUrl": "https://accountname.dfs.core.windows.net", + "filesystem": "default" + }, + "connectivityEndpoints": { + "dev": "workspace1.dev.projectarcadia.net", + "sql": "workspace1.sql.projectarcadia.net" + }, + "sqlAdministratorLogin": "login", + "sqlAdministratorLoginPassword": "password", + "managedResourceGroupName": "resourceGroup2", + "provisioningState": "Deleting" + }, + "tags": { + "key": "value" + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/DeleteWorkspaceAadAdmin.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/DeleteWorkspaceAadAdmin.json new file mode 100644 index 000000000000..b966039dd651 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/DeleteWorkspaceAadAdmin.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ExecuteSqlPoolVulnerabilityAssessmentScans.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ExecuteSqlPoolVulnerabilityAssessmentScans.json new file mode 100644 index 000000000000..b8b0a8dfc60c --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ExecuteSqlPoolVulnerabilityAssessmentScans.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityassessmenttest-4711", + "workspaceName": "vulnerabilityassessmenttest-6411", + "sqlPoolName": "testdb", + "vulnerabilityAssessmentName": "default", + "scanId": "scan01", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ExportSqlPoolVulnerabilityAssessmentScan.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ExportSqlPoolVulnerabilityAssessmentScan.json new file mode 100644 index 000000000000..522ece23a59e --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ExportSqlPoolVulnerabilityAssessmentScan.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityassessmenttest-4799", + "workspaceName": "vulnerabilityassessmenttest-6440", + "sqlPoolName": "testdb", + "vulnerabilityAssessmentName": "default", + "scanId": "scan001", + "api-version": "2019-06-01-preview", + "parameters": {} + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityassessmenttest-4799/providers/Microsoft.Synapse/workspaces/vulnerabilityassessmenttest-6440/sqlPools/testdb/vulnerabilityAssessments/default/scans/scan001/export", + "name": "scan001", + "type": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments/scans/export", + "properties": { + "exportedReportLocation": "https://myaccount.blob.core.windows.net/vulnerabilityAssessment/vulnerabilityassessmenttest-6440/testdb/scan001.xlsx" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityassessmenttest-4799/providers/Microsoft.Synapse/workspaces/vulnerabilityassessmenttest-6440/sqlPools/testdb/vulnerabilityAssessments/default/scans/scan001/export", + "name": "scan001", + "type": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments/scans/export", + "properties": { + "exportedReportLocation": "https://myaccount.blob.core.windows.net/vulnerabilityAssessment/vulnerabilityassessmenttest-6440/testdb/scan001.xlsx" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetAvailableOperations.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetAvailableOperations.json new file mode 100644 index 000000000000..7cb3e1caceaa --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetAvailableOperations.json @@ -0,0 +1,1304 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup1", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": [ + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Get Integration Runtime Operation result.", + "description": "Get any Integration Runtime." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/managedIdentitySqlControlSettings/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Managed Identity SQL Control Settings", + "operation": "Update Managed Identity SQL Control Settings", + "description": "Update Managed Identity SQL Control Settings on the workspace" + }, + "origin": "user" + }, + { + "name": "Microsoft.Synapse/workspaces/managedIdentitySqlControlSettings/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Managed Identity SQL Control Settings", + "operation": "Get Managed Identity SQL Control Settings", + "description": "Get Managed Identity SQL Control Settings" + }, + "origin": "user" + }, + { + "name": "Microsoft.Synapse/operations/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Available Operations", + "operation": "Read Available Operations.", + "description": "Read Available Operations from the Analytics 365 Resource Provider." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/nodes/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Get Integration Runtime Node.", + "description": "Get any Integration Runtime Node." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/nodes/delete", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Delete Integration Runtime Node.", + "description": "Delete any Integration Runtime Node." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/nodes/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Patch Integration Runtime Node.", + "description": "Patch any Integration Runtime Node." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/nodes/ipAddress/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Get Integration Runtime Ip Address", + "description": "Get Integration Runtime Ip Address" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationruntimes/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Create or Update Integration Runtimes.", + "description": "Create or Update any Integration Runtimes." + }, + "origin": "user" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/delete", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Delete Integration Runtimes", + "description": "Delete any Integration Runtime" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/getStatus/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Get an Integration Runtime Status", + "description": "Get any Integration Runtime's Status" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/start/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Start an Integration Runtime", + "description": "Start any Integration Runtime" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/stop/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Stop an Integration Runtime", + "description": "Stop any Integration Runtime" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/getConnectionInfo/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Get Connection Info of an Integration Runtime", + "description": "Get Connection Info of any Integration Runtime" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/regenerateAuthKey/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Regenerate auth key of an Integration Runtime", + "description": "Regenerate auth key of any Integration Runtime" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/listAuthKeys/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "List Auth Keys of an Integration Runtime", + "description": "List Auth Keys of any Integration Runtime" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/removeNode/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Remove an Integration Runtime node", + "description": "Remove any Integration Runtime node" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/monitoringData/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Get an Integration Runtime's monitoring data", + "description": "Get any Integration Runtime's monitoring data" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/syncCredentials/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Sync credential on an Integration Runtime", + "description": "Sync credential on any Integration Runtime" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/upgrade/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Upgrade an Integration Runtime", + "description": "Upgrade any Integration Runtime" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/removeLinks/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Remove an Integration Runtime link", + "description": "Remove any Integration Runtime link" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/enableInteractiveQuery/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Enable Interactive query on an Integration Runtime", + "description": "Enable Interactive query on any Integration Runtime" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/disableInteractiveQuery/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Disable Interactive query on an Integration Runtime", + "description": "Disable Interactive query on any Integration Runtime" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/refreshObjectMetadata/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Refresh Object metadata on an Intergration Runtime", + "description": "Refresh Object metadata on any Intergration Runtime" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/integrationRuntimes/getObjectMetadata/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Integration Runtimes.", + "operation": "Get Object metadata on an Intergration Runtime", + "description": "Get Object metadata on any Intergration Runtime" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/firewallRules/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "IP Firewall Rule.", + "operation": "Create or update IP Firewall Rule.", + "description": "Create or update any IP Firewall Rule." + }, + "origin": "user" + }, + { + "name": "Microsoft.Synapse/workspaces/firewallRules/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "IP Firewall Rule.", + "operation": "Read IP Firewall Rule", + "description": "Read IP Firewall Rule" + }, + "origin": "user" + }, + { + "name": "Microsoft.Synapse/workspaces/firewallRules/delete", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "IP Firewall Rule.", + "operation": "Delete IP Firewall Rule", + "description": "Delete any IP Firewall Rule." + }, + "origin": "user" + }, + { + "name": "Microsoft.Synapse/workspaces/replaceAllIpFirewallRules/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Workspaces", + "operation": "Replace all Ip Firewall Rules for the Workspace.", + "description": "Replaces all Ip Firewall Rules for the Workspace." + }, + "origin": "user" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pools", + "operation": "Create or Update SQL Analytics pools.", + "description": "Create or Update any SQL Analytics pools." + }, + "origin": "user" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pools", + "operation": "Read SQL Analytics pools.", + "description": "Read any SQL Analytics pools." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/dataWarehouseQueries/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Queries", + "operation": "Read SQL Analytics pool Queries.", + "description": "Read any SQL Analytics pool Queries." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/geoBackupPolicies/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Geo Backup Policies", + "operation": "Read SQL Analytics pool Geo Backup Policies.", + "description": "Read any SQL Analytics pool Geo Backup Policies." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/dataWarehouseUserActivities/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool User Activities", + "operation": "Read SQL Analytics pool User Activities.", + "description": "Read any SQL Analytics pool User Activities." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/restorePoints/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Restore Points", + "operation": "Read SQL Analytics pool Restore Points.", + "description": "Read any SQL Analytics pool Restore Points." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/dataWarehouseQueries/dataWarehouseQuerySteps/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Query Steps", + "operation": "Read SQL Analytics pool Query Steps.", + "description": "Read any SQL Analytics pool Query Steps." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/maintenanceWindows/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Maintenance Windows", + "operation": "Read SQL Analytics pool Maintenance Windows.", + "description": "Read any SQL Analytics pool Maintenance Windows." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/maintenanceWindowOptions/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Maintenance Window Options", + "operation": "Read SQL Analytics pool Maintenance Window Options.", + "description": "Read any SQL Analytics pool Maintenance Window Options." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/replicationLinks/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Replication Links", + "operation": "Read SQL Analytics pool Replication Links.", + "description": "Read any SQL Analytics pool Replication Links." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/transparentDataEncryption/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Transparent Data Encryption Configuration", + "operation": "Read SQL Analytics pool Transparent Data Encryption Configuration.", + "description": "Read any SQL Analytics pool Transparent Data Encryption Configuration." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/transparentDataEncryption/operationResults/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Transparent Data Encryption Configuration Operation Results", + "operation": "Read SQL Analytics pool Transparent Data Encryption Configuration Operation Results.", + "description": "Read any SQL Analytics pool Transparent Data Encryption Configuration Operation Results." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/auditingSettings/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Auditing Settings", + "operation": "Read SQL Analytics pool Auditing Settings.", + "description": "Read any SQL Analytics pool Auditing Settings." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/operations/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Operations", + "operation": "Read SQL Analytics pool Operations.", + "description": "Read any SQL Analytics pool Operations." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/usages/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Usages", + "operation": "Read SQL Analytics pool Usages.", + "description": "Read any SQL Analytics pool Usages." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/currentSensitivityLabels/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Current Sensitivity Labels", + "operation": "Read SQL Analytics pool Current Sensitivity Labels.", + "description": "Read any SQL Analytics pool Current Sensitivity Labels." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/recommendedSensitivityLabels/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Recommended Sensitivity Labels", + "operation": "Read SQL Analytics pool Recommended Sensitivity Labels.", + "description": "Read any SQL Analytics pool Recommended Sensitivity Labels." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/schemas/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Schemas", + "operation": "Read SQL Analytics pool Schemas.", + "description": "Read any SQL Analytics pool Schemas." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Schema Tables", + "operation": "Read SQL Analytics pool Schema Tables.", + "description": "Read any SQL Analytics pool Schema Tables." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables/columns/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Schema Table Columns", + "operation": "Read SQL Analytics pool Schema Table Columns.", + "description": "Read any SQL Analytics pool Schema Table Columns." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/connectionPolicies/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Connection Policies", + "operation": "Read SQL Analytics pool Connection Policies.", + "description": "Read any SQL Analytics pool Connection Policies." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Vulnerability Assessment", + "operation": "Read SQL Analytics pool Vulnerability Assessment.", + "description": "Read any SQL Analytics pool Vulnerability Assessment." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments/scans/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Vulnerability Assessment Scan Records", + "operation": "Read SQL Analytics pool Vulnerability Assessment Scan Records.", + "description": "Read any SQL Analytics pool Vulnerability Assessment Scan Records." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/securityAlertPolicies/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Security Alert Policies", + "operation": "Read Sql Analytics pool Threat Detection Policies.", + "description": "Read any Sql Analytics pool Threat Detection Policies." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/delete", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pools", + "operation": "Delete SQL Analytics pools.", + "description": "Delete any SQL Analytics pools." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/pause/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pools", + "operation": "Pause SQL Analytics pools.", + "description": "Pause any SQL Analytics pools." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/resume/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pools", + "operation": "Resume SQL Analytics pools.", + "description": "Resume any SQL Analytics pools." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/restorePoints/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Restore Points", + "operation": "Create SQL Analytics pool Restore Point.", + "description": "Create a SQL Analytics pool Restore Point." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/move/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pools", + "operation": "Rename SQL Analytics pools.", + "description": "Rename any SQL Analytics pools." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables/columns/sensitivityLabels/enable/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Sensitivity Labels", + "operation": "Enable SQL Analytics pool Sensitivity Labels.", + "description": "Enable any SQL Analytics pool Sensitivity Labels." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables/columns/sensitivityLabels/disable/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Sensitivity Labels", + "operation": "Disable SQL Analytics pool Sensitivity Labels.", + "description": "Disable any SQL Analytics pool Sensitivity Labels." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments/scans/initiateScan/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Vulnerability Assessment Scan Records", + "operation": "Initiate SQL Analytics pool Vulnerability Assessment Scan Records.", + "description": "Initiate any SQL Analytics pool Vulnerability Assessment Scan Records." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments/scans/export/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Vulnerability Assessment Scan Records", + "operation": "Export SQL Analytics pool Vulnerability Assessment Scan Records.", + "description": "Export any SQL Analytics pool Vulnerability Assessment Scan Records." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/maintenanceWindows/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Maintenance Windows", + "operation": "Create or Update SQL Analytics pool Maintenance Windows.", + "description": "Read any SQL Analytics pool Maintenance Windows." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/auditingSettings/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Auditing Settings", + "operation": "Create or Update SQL Analytics pool Auditing Settings.", + "description": "Create or Update any SQL Analytics pool Auditing Settings." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables/columns/sensitivityLabels/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Sensitivity Labels", + "operation": "Create or update SQL Analytics pool Sensitivity Labels.", + "description": "Create or Update any SQL Analytics pool Sensitivity Labels." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/transparentDataEncryption/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Transparent Data Encryption Configuration", + "operation": "Create or Update SQL Analytics pool Transparent Data Encryption Configuration.", + "description": "Create or Update any SQL Analytics pool Transparent Data Encryption Configuration." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/securityAlertPolicies/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Security Alert Policies", + "operation": "Create or Update SQL Analytics pool Threat Detection Policies.", + "description": "Create or Update any SQL Analytics pool Threat Detection Policies." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments/rules/baselines/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Vulnerability Assessment Rule Baseline", + "operation": "Create or Update SQL Analytics pool Vulnerability Assessment Rule Baseline.", + "description": "Create or Update any SQL Analytics pool Vulnerability Assessment Rule Baseline." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables/columns/sensitivityLabels/delete", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Sensitivity Labels", + "operation": "Delete SQL Analytics pool Sensitivity Labels.2", + "description": "Delete any SQL Analytics pool Sensitivity Labels." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments/delete", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Vulnerability Assessment", + "operation": "Delete SQL Analytics pool Vulnerability Assessment.", + "description": "Delete any SQL Analytics pool Vulnerability Assessment." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments/rules/baselines/delete", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Vulnerability Assessment Rule Baseline", + "operation": "Delete SQL Analytics pool Vulnerability Assessment Rule Baseline.", + "description": "Delete any SQL Analytics pool Vulnerability Assessment Rule Baseline." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/operationStatus/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Async Operation Status.", + "operation": "Read Async Operation Status.", + "description": "Read any Async Operation Status." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/operationResults/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Async Operation Result", + "operation": "Read Async Operation Result.", + "description": "Read any Async Operation Result." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/operationResults/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Async Operation Result", + "operation": "Read Async Operation Result.", + "description": "Read any Async Operation Result." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/checkNameAvailability/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Check Name Availability", + "operation": "Checks Workspace name availability.", + "description": "Checks Workspace name availability." + }, + "origin": "user" + }, + { + "name": "Microsoft.Synapse/workspaces/bigDataPools/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Spark pools", + "operation": "Create or Update Spark pools.", + "description": "Create or Update any Spark pools." + }, + "origin": "user" + }, + { + "name": "Microsoft.Synapse/workspaces/bigDataPools/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Spark pools", + "operation": "Read Spark pools.", + "description": "Read any Spark pools." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/bigDataPools/delete", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Spark pools", + "operation": "Delete Spark pools.", + "description": "Delete any Spark pools." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/metadataSync/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Metadata Sync Config", + "operation": "Read SQL Analytics pool Metadata Sync Config", + "description": "Read SQL Analytics pool Metadata Sync Config" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/sqlPools/metadataSync/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "SQL Analytics pool Metadata Sync Config", + "operation": "Create or Update SQL Analytics pool Metadata Sync Config", + "description": "Create or Update SQL Analytics pool Metadata Sync Config" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/register/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Analytics 365 Resource Provider.", + "operation": "Registers the Analytics 365 Resource Provider.", + "description": "Registers the Analytics 365 Resource Provider and enables the creation of Workspaces." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/administrators/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Administrators", + "operation": "Set Active Directory Administrator", + "description": "Set Active Directory Administrator on the Workspace" + }, + "origin": "user" + }, + { + "name": "Microsoft.Synapse/workspaces/administrators/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Administrators", + "operation": "Get Workspace Active Directory Administrator", + "description": "Get Workspace Active Directory Administrator" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/administrators/delete", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Administrators", + "operation": "Delete Workspace Active Directory Administrator", + "description": "Delete Workspace Active Directory Administrator" + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Workspaces", + "operation": "Create or Update Workspaces.", + "description": "Create or Update any Workspaces." + }, + "origin": "user" + }, + { + "name": "Microsoft.Synapse/workspaces/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Workspaces", + "operation": "Read Workspaces.", + "description": "Read any Workspaces." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/delete", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Workspaces", + "operation": "Delete Workspaces.", + "description": "Delete any Workspaces." + }, + "origin": "user, system" + }, + { + "name": "Microsoft.Synapse/workspaces/privateEndpointConnectionProxies/validate/action", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Validate Private Endpoint Connection Proxy", + "operation": "Validates Private Endpoint Connection Proxy", + "description": "Validates Private Endpoint Connection Proxy" + }, + "origin": "system" + }, + { + "name": "Microsoft.Synapse/workspaces/privateEndpointConnectionProxies/write", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Private Endpoint Connection Proxy", + "operation": "Create or Update Private Endpoint Connection Proxy", + "description": "Create or Update Private Endpoint Connection Proxy" + }, + "origin": "system" + }, + { + "name": "Microsoft.Synapse/workspaces/privateEndpointConnectionProxies/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Private Endpoint Connection Proxy", + "operation": "Read Private Endpoint Connection Proxies", + "description": "Read any Private Endpoint Connection Proxy" + }, + "origin": "system" + }, + { + "name": "Microsoft.Synapse/workspaces/privateLinkResources/read", + "isDataAction": "false", + "display": { + "provider": "Analytics 365 Resource Provider.", + "resource": "Private Link Resources", + "operation": "Get Private Link Resources", + "description": "Get a list of Private Link Resources" + }, + "origin": "user" + }, + { + "name": "Microsoft.Synapse/workspaces/providers/Microsoft.Insights/metricDefinitions/read", + "isDataAction": null, + "display": { + "provider": "Microsoft Azure Synapse Analytics", + "resource": "Workspace", + "operation": "Read workspace metric definitions", + "description": "Gets the available metrics for workspace" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "PipelineFailedRuns", + "displayName": "Failed pipeline runs", + "displayDescription": null, + "unit": "Count", + "aggregationType": "Total", + "sourceMdmAccount": "MicrosoftDataFactoryProdShoebox", + "sourceMdmNamespace": "ADFMetrics", + "dimensions": [ + { + "name": "FailureType", + "displayName": "Failure Type", + "toBeExportedForShoebox": true + }, + { + "name": "Name", + "displayName": "Pipeline", + "toBeExportedForShoebox": true + } + ] + }, + { + "name": "PipelineSucceededRuns", + "displayName": "Succeeded pipeline runs", + "displayDescription": null, + "unit": "Count", + "aggregationType": "Total", + "sourceMdmAccount": "MicrosoftDataFactoryProdShoebox", + "sourceMdmNamespace": "ADFMetrics", + "dimensions": [ + { + "name": "FailureType", + "displayName": "Failure Type", + "toBeExportedForShoebox": true + }, + { + "name": "Name", + "displayName": "Pipeline", + "toBeExportedForShoebox": true + } + ] + }, + { + "name": "PipelineCancelledRuns", + "displayName": "Cancelled pipeline runs", + "displayDescription": null, + "unit": "Count", + "aggregationType": "Total", + "sourceMdmAccount": "MicrosoftDataFactoryProdShoebox", + "sourceMdmNamespace": "ADFMetrics", + "dimensions": [ + { + "name": "FailureType", + "displayName": "Failure Type", + "toBeExportedForShoebox": true + }, + { + "name": "Name", + "displayName": "Pipeline", + "toBeExportedForShoebox": true + } + ] + }, + { + "name": "ActivityFailedRuns", + "displayName": "Failed activity runs", + "displayDescription": null, + "unit": "Count", + "aggregationType": "Total", + "sourceMdmAccount": "MicrosoftDataFactoryProdShoebox", + "sourceMdmNamespace": "ADFMetrics", + "dimensions": [ + { + "name": "ActivityType", + "displayName": "Activity Type", + "toBeExportedForShoebox": true + }, + { + "name": "PipelineName", + "displayName": "Pipeline", + "toBeExportedForShoebox": true + }, + { + "name": "FailureType", + "displayName": "Failure Type", + "toBeExportedForShoebox": true + }, + { + "name": "Name", + "displayName": "Activity", + "toBeExportedForShoebox": true + } + ] + }, + { + "name": "ActivitySucceededRuns", + "displayName": "Succeeded activity runs", + "displayDescription": null, + "unit": "Count", + "aggregationType": "Total", + "sourceMdmAccount": "MicrosoftDataFactoryProdShoebox", + "sourceMdmNamespace": "ADFMetrics", + "dimensions": [ + { + "name": "ActivityType", + "displayName": "Activity Type", + "toBeExportedForShoebox": true + }, + { + "name": "PipelineName", + "displayName": "Pipeline", + "toBeExportedForShoebox": true + }, + { + "name": "FailureType", + "displayName": "Failure Type", + "toBeExportedForShoebox": true + }, + { + "name": "Name", + "displayName": "Activity", + "toBeExportedForShoebox": true + } + ] + }, + { + "name": "ActivityCancelledRuns", + "displayName": "Cancelled activity runs", + "displayDescription": null, + "unit": "Count", + "aggregationType": "Total", + "sourceMdmAccount": "MicrosoftDataFactoryProdShoebox", + "sourceMdmNamespace": "ADFMetrics", + "dimensions": [ + { + "name": "ActivityType", + "displayName": "Activity Type", + "toBeExportedForShoebox": true + }, + { + "name": "PipelineName", + "displayName": "Pipeline", + "toBeExportedForShoebox": true + }, + { + "name": "FailureType", + "displayName": "Failure Type", + "toBeExportedForShoebox": true + }, + { + "name": "Name", + "displayName": "Activity", + "toBeExportedForShoebox": true + } + ] + }, + { + "name": "TriggerFailedRuns", + "displayName": "Failed trigger runs", + "displayDescription": null, + "unit": "Count", + "aggregationType": "Total", + "sourceMdmAccount": "MicrosoftDataFactoryProdShoebox", + "sourceMdmNamespace": "ADFMetrics", + "dimensions": [ + { + "name": "Name", + "displayName": "Trigger", + "toBeExportedForShoebox": true + }, + { + "name": "FailureType", + "displayName": "Failure Type", + "toBeExportedForShoebox": true + } + ] + }, + { + "name": "TriggerSucceededRuns", + "displayName": "Succeeded trigger runs", + "displayDescription": null, + "unit": "Count", + "aggregationType": "Total", + "sourceMdmAccount": "MicrosoftDataFactoryProdShoebox", + "sourceMdmNamespace": "ADFMetrics", + "dimensions": [ + { + "name": "Name", + "displayName": "Trigger", + "toBeExportedForShoebox": true + }, + { + "name": "FailureType", + "displayName": "Failure Type", + "toBeExportedForShoebox": true + } + ] + }, + { + "name": "TriggerCancelledRuns", + "displayName": "Cancelled trigger runs", + "displayDescription": null, + "unit": "Count", + "aggregationType": "Total", + "sourceMdmAccount": "MicrosoftDataFactoryProdShoebox", + "sourceMdmNamespace": "ADFMetrics", + "dimensions": [ + { + "name": "Name", + "displayName": "Trigger", + "toBeExportedForShoebox": true + }, + { + "name": "FailureType", + "displayName": "Failure Type", + "toBeExportedForShoebox": true + } + ] + } + ] + } + } + }, + { + "name": "Microsoft.Synapse/workspaces/providers/Microsoft.Insights/diagnosticSettings/read", + "isDataAction": null, + "display": { + "provider": "Microsoft Azure Synapse Analytics", + "resource": "Workspace", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource" + }, + "origin": "system" + }, + { + "name": "Microsoft.Synapse/workspaces/providers/Microsoft.Insights/diagnosticSettings/write", + "isDataAction": null, + "display": { + "provider": "Microsoft Azure Synapse Analytics", + "resource": "Workspace", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource" + }, + "origin": "system" + }, + { + "name": "Microsoft.Synapse/workspaces/providers/Microsoft.Insights/logDefinitions/read", + "isDataAction": null, + "display": { + "provider": "Microsoft Azure Synapse Analytics", + "resource": "The log definition of workspace", + "operation": "Read workspace log definitions", + "description": "Gets the available logs for workspace" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "logSpecifications": [ + { + "name": "ActivityRuns", + "displayName": "Activity runs", + "blobDuration": "PT1H" + }, + { + "name": "PipelineRuns", + "displayName": "Pipeline runs", + "blobDuration": "PT1H" + }, + { + "name": "TriggerRuns", + "displayName": "Trigger runs", + "blobDuration": "PT1H" + } + ] + } + } + } + ] + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetAzureAsyncOperationHeader.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetAzureAsyncOperationHeader.json new file mode 100644 index 000000000000..2883c2f2c3c2 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetAzureAsyncOperationHeader.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "operationId": "01234567-89ab-4def-0123-456789abcdef", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "status": "InProgress" + } + }, + "404": {}, + "500": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetBigDataPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetBigDataPool.json new file mode 100644 index 000000000000..d6abc6a272f9 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetBigDataPool.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "bigDataPoolName": "ExamplePool", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/bigDataPools/ExamplePool", + "type": "Microsoft.Synapse/workspaces/bigDataPools", + "location": "West US 2", + "name": "ExamplePool", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "sparkVersion": "2.4", + "nodeCount": 4, + "nodeSize": "Medium", + "nodeSizeFamily": "MemoryOptimized", + "autoScale": { + "enabled": true, + "minNodeCount": 3, + "maxNodeCount": 50 + }, + "autoPause": { + "enabled": true, + "delayInMinutes": 15 + }, + "creationDate": "1970-01-01T00:00:00Z", + "sparkEventsFolder": "/events", + "libraryRequirements": { + "time": "1970-01-01T00:00:00Z", + "content": "", + "filename": "requirements.txt" + }, + "defaultSparkLogFolder": "/logs" + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetIpFirewallRule.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetIpFirewallRule.json new file mode 100644 index 000000000000..58113ac90886 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetIpFirewallRule.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "ruleName": "ExampleIpFirewallRule", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/firewallRules/ExampleIpFirewallRule", + "type": "Microsoft.Synapse/workspaces/firewallRules", + "name": "ExampleIpFirewallRule", + "properties": { + "startIpAddress": "10.0.0.0", + "endIpAddress": "10.0.0.254", + "provisioningState": "Succeeded" + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetLocationHeader.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetLocationHeader.json new file mode 100644 index 000000000000..d67fbd8f288f --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetLocationHeader.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "operationId": "01234567-89ab-4def-0123-456789abcdef", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": {}, + "204": {}, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetLocationHeaderResultWithSqlPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetLocationHeaderResultWithSqlPool.json new file mode 100644 index 000000000000..c56c95fb0b23 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetLocationHeaderResultWithSqlPool.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "sqlPoolName": "ExampleSqlPool", + "operationId": "fedcba98-7654-4210-fedc-ba9876543210", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": {} + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetManagedIdentitySqlControlSettings.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetManagedIdentitySqlControlSettings.json new file mode 100644 index 000000000000..a7eba477211d --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetManagedIdentitySqlControlSettings.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/workspaces/workspace1/managedIdentitySqlControlSettings/default", + "name": "default", + "properties": { + "grantSqlControlToManagedIdentity": { + "desiredState": "Enabled", + "actualState": "Enabled" + } + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetPrivateEndpointConnection.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetPrivateEndpointConnection.json new file mode 100644 index 000000000000..6fdb270b243c --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetPrivateEndpointConnection.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "privateEndpointConnectionName": "ExamplePrivateEndpointConnection", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/privateEndpointConnections/ExamplePrivateEndpointConnection", + "name": "sql", + "type": "Microsoft.Synapse/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Network/privateEndpoints/ExamplePrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetPrivateLinkResource.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetPrivateLinkResource.json new file mode 100644 index 000000000000..2b32a179879b --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetPrivateLinkResource.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "privateLinkResourceName": "sql", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/privateLinkResources/sql", + "name": "sql", + "type": "Microsoft.Synapse/workspaces/privateLinkResources", + "properties": { + "groupId": "sql", + "requiredMembers": [ + "sql" + ], + "requiredZoneNames": [ + "privatelink.sql.azuresynapse.net" + ] + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetSqlPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetSqlPool.json new file mode 100644 index 000000000000..e1f50fd07052 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetSqlPool.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6852", + "workspaceName": "sqlcrudtest-2080", + "sqlPoolName": "sqlcrudtest-9187", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/sqlcrudtest-9187", + "name": "sqlcrudtest-9187", + "type": "Microsoft.Synapse/workspaces/sqlPools", + "location": "Japan East", + "properties": { + "status": "Online", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "creationDate": "2017-02-10T00:56:19.2Z", + "provisioningState": "Succeeded", + "restorePointInTime": "0001-01-01T00:00:00Z" + }, + "sku": { + "name": "DW100c" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetSqlPoolBlobAuditing.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetSqlPoolBlobAuditing.json new file mode 100644 index 000000000000..94529c063c54 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetSqlPoolBlobAuditing.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-6852", + "workspaceName": "blobauditingtest-2080", + "sqlPoolName": "testdb", + "blobAuditingPolicyName": "default", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-6852/providers/Microsoft.Synapse/workspaces/blobauditingtest-2080/sqlPools/testdb", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/auditingSettings", + "kind": "V12", + "properties": { + "state": "Disabled", + "storageEndpoint": "", + "retentionDays": 0, + "auditActionsAndGroups": [], + "storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000", + "isStorageSecondaryKeyInUse": false, + "isAzureMonitorTargetEnabled": false + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetSqlPoolConnectionPolicy.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetSqlPoolConnectionPolicy.json new file mode 100644 index 000000000000..12fe0146ea68 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetSqlPoolConnectionPolicy.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "blobauditingtest-6852", + "workspaceName": "blobauditingtest-2080", + "sqlPoolName": "testdb", + "connectionPolicyName": "default", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/blobauditingtest-6852/providers/Microsoft.Synapse/workspaces/blobauditingtest-2080/sqlPools/testdb/connectionPolicies/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/connectionPolicies", + "location": "West US", + "kind": null, + "properties": { + "securityEnabledAccess": "Optional", + "proxyDnsName": "blobauditingtest-2080.database.secure.windows.net", + "proxyPort": "1433", + "visibility": "Visible", + "useServerDefault": "Enabled", + "redirectionState": "Disabled", + "state": "New" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetSqlPoolGeoBackupPolicy.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetSqlPoolGeoBackupPolicy.json new file mode 100644 index 000000000000..3e9bf3c4c7ef --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetSqlPoolGeoBackupPolicy.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-4799", + "workspaceName": "sqlcrudtest-5961", + "sqlPoolName": "testdw", + "geoBackupPolicyName": "Default", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-4799/providers/Microsoft.Synapse/workspaces/sqlcrudtest-5961/sqlPools/testdw/geoBackupPolicies/Default", + "name": "Default", + "type": "Microsoft.Synapse/workspaces/sqlPools/geoBackupPolicies", + "location": "Central US", + "kind": null, + "properties": { + "state": "Enabled", + "storageType": "Premium" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetSqlPoolMetadataSyncConfig.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetSqlPoolMetadataSyncConfig.json new file mode 100644 index 000000000000..a0fa88772064 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetSqlPoolMetadataSyncConfig.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "sqlPoolName": "ExampleSqlPool", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/bigDataPools/ExamplePool/metadataSync/config", + "type": "Microsoft.Synapse/workspaces/bigDataPools/metadataSync/config", + "name": "config", + "properties": { + "enabled": true + } + } + }, + "404": {}, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetSqlPoolSecurityAlert.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetSqlPoolSecurityAlert.json new file mode 100644 index 000000000000..24ac2c48a75f --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetSqlPoolSecurityAlert.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "securityalert-6852", + "workspaceName": "securityalert-2080", + "sqlPoolName": "testdb", + "securityAlertPolicyName": "default", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/securityalert-6852/providers/Microsoft.Synapse/workspaces/securityalert-2080/sqlPools/testdb", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/securityAlertPolicies", + "properties": { + "state": "Enabled", + "emailAccountAdmins": true, + "emailAddresses": [ + "test@microsoft.com", + "user@microsoft.com" + ], + "disabledAlerts": [ + "Usage_Anomaly" + ], + "retentionDays": 0, + "storageAccountAccessKey": "", + "creationTime": "2018-10-08T00:00:00Z" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetSqlPoolTransparentDataEncryption.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetSqlPoolTransparentDataEncryption.json new file mode 100644 index 000000000000..54ad083c4561 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetSqlPoolTransparentDataEncryption.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6852", + "workspaceName": "sqlcrudtest-2080", + "sqlPoolName": "sqlcrudtest-9187", + "transparentDataEncryptionName": "current", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "current", + "location": "North Europe", + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/sqlcrudtest-9187/transparentDataEncryption/current", + "type": "Microsoft.Synapse/workspaces/sqlPools/transparentDataEncryption", + "properties": { + "status": "Enabled" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetSqlPoolUserActivity.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetSqlPoolUserActivity.json new file mode 100644 index 000000000000..7f488b41df2e --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetSqlPoolUserActivity.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "workspaceName": "testsvr", + "sqlPoolName": "testdb", + "api-version": "2019-06-01-preview", + "dataWarehouseUserActivityName": "current" + }, + "responses": { + "200": { + "body": { + "properties": { + "activeQueriesCount": 0 + }, + "id": "subscriptions/326affc3-21f4-4471-a545-e37430b70113/resourceGroups/Default-SQL-Onebox/providers/Microsoft.Synapse/workspaces/testsvr/sqlPools/dwdb01/dataWarehouseUserActivities/current", + "name": "current", + "type": "Microsoft.Synapse/workspaces/sqlPools/dataWarehouseUserActivities" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetSqlPoolVulnerabilityAssessment.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetSqlPoolVulnerabilityAssessment.json new file mode 100644 index 000000000000..4963b9599e28 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetSqlPoolVulnerabilityAssessment.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "workspaceName": "vulnerabilityaseessmenttest-6440", + "sqlPoolName": "testdb", + "vulnerabilityAssessmentName": "default", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Synapse/workspaces/vulnerabilityaseessmenttest-6440/sqlPools/testdb/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetWorkspace.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetWorkspace.json new file mode 100644 index 000000000000..4e42ed4fd980 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetWorkspace.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/workspaces/workspace1", + "name": "workspace1", + "type": "Microsoft.Synapse/workspaces", + "location": "East US", + "properties": { + "defaultDataLakeStorage": { + "accountUrl": "https://accountname.dfs.core.windows.net", + "filesystem": "default" + }, + "connectivityEndpoints": { + "dev": "workspace1.dev.projectarcadia.net", + "sql": "workspace1.sql.projectarcadia.net" + }, + "sqlAdministratorLogin": "login", + "sqlAdministratorLoginPassword": "password", + "managedResourceGroupName": "resourceGroup2", + "provisioningState": "Succeeded", + "privateEndpointConnections": [ + { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/privateEndpointConnections/ExamplePrivateEndpointConnection", + "name": "sql", + "type": "Microsoft.Synapse/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Network/privateEndpoints/ExamplePrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + }, + "tags": { + "key": "value" + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetWorkspaceAadAdmin.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetWorkspaceAadAdmin.json new file mode 100644 index 000000000000..2f80eee890a1 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/GetWorkspaceAadAdmin.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/workspaces/workspace1/administrators/activeDirectory", + "name": "activeDirectory", + "properties": { + "administratorType": "ActiveDirectory", + "login": "bob@contoso.com", + "sid": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c", + "tenantId": "c6b82b90-a647-49cb-8a62-0d2d3cb7ac7c" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeNodes_Delete.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeNodes_Delete.json new file mode 100644 index 000000000000..3a6aed616b9d --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeNodes_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "nodeName": "Node_1", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeNodes_Get.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeNodes_Get.json new file mode 100644 index 000000000000..cd3faab03c45 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeNodes_Get.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "nodeName": "Node_1", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Fri, 17 Aug 2018 06:31:04 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14999", + "x-ms-request-id": "1c8b259a-c6e6-48aa-8121-05b3b3b782aa", + "x-ms-correlation-request-id": "1c8b259a-c6e6-48aa-8121-05b3b3b782aa" + }, + "body": { + "nodeName": "Node_1", + "machineName": "YANZHANG-DT", + "hostServiceUri": "https://yanzhang-dt.fareast.corp.microsoft.com:8050/HostServiceRemote.svc/", + "status": "Online", + "capabilities": { + "serviceBusConnected": "True", + "httpsPortEnabled": "True", + "credentialInSync": "True", + "connectedToResourceManager": "True", + "nodeEnabled": "True" + }, + "versionStatus": "UpToDate", + "version": "3.8.6743.6", + "registerTime": "2018-08-17T03:44:55.8012825Z", + "lastConnectTime": "2018-08-17T06:30:46.6262976Z", + "lastStartTime": "2018-08-17T03:45:30.8499851Z", + "lastUpdateResult": "None", + "isActiveDispatcher": true, + "maxConcurrentJobs": 20 + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeNodes_GetIpAddress.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeNodes_GetIpAddress.json new file mode 100644 index 000000000000..0e027623b8df --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeNodes_GetIpAddress.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "nodeName": "Node_1", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Thu, 14 Jun 2018 15:36:39 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1199", + "x-ms-request-id": "f01265af-9f38-44b8-81a1-b67f567ea728", + "x-ms-correlation-request-id": "f01265af-9f38-44b8-81a1-b67f567ea728" + }, + "body": { + "ipAddress": "**********" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeNodes_Update.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeNodes_Update.json new file mode 100644 index 000000000000..9f95b676d2e9 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeNodes_Update.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "nodeName": "Node_1", + "updateIntegrationRuntimeNodeRequest": { + "concurrentJobsLimit": 2 + }, + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Thu, 14 Jun 2018 15:01:00 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1199", + "x-ms-request-id": "cf0d05fa-afbe-4fac-aa10-227885658c83", + "x-ms-correlation-request-id": "cf0d05fa-afbe-4fac-aa10-227885658c83" + }, + "body": { + "nodeName": "Node_1", + "machineName": "YANZHANG-DT", + "hostServiceUri": "https://yanzhang-dt.fareast.corp.microsoft.com:8050/HostServiceRemote.svc/", + "status": "Online", + "capabilities": { + "serviceBusConnected": "True", + "httpsPortEnabled": "True", + "credentialInSync": "True", + "connectedToResourceManager": "True", + "nodeEnabled": "True" + }, + "versionStatus": "UpToDate", + "version": "3.8.6730.2", + "registerTime": "2018-06-14T14:51:44.9237069Z", + "lastConnectTime": "2018-06-14T15:00:35.7544322Z", + "lastStartTime": "2018-06-14T14:52:59.8933313Z", + "lastUpdateResult": "None", + "isActiveDispatcher": true, + "concurrentJobsLimit": 2, + "maxConcurrentJobs": 56 + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeObjectMetadata_Get.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeObjectMetadata_Get.json new file mode 100644 index 000000000000..fafa1dfeca2a --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeObjectMetadata_Get.json @@ -0,0 +1,432 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "testactivityv2", + "getMetadataRequest": { + "metadataPath": "ssisFolders" + }, + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Mon, 03 Dec 2018 06:24:54 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1198", + "x-ms-request-id": "0cbc67c4-60e7-4d49-97d9-e4bc4f9851cd", + "x-ms-correlation-request-id": "0cbc67c4-60e7-4d49-97d9-e4bc4f9851cd" + }, + "body": { + "value": [ + { + "id": 1, + "name": "TestFolder", + "description": "" + }, + { + "id": 2, + "name": "EnvironmentFolder", + "description": "" + }, + { + "id": 3, + "name": "ActivityTest", + "description": "" + }, + { + "id": 4, + "name": "这是文件夹", + "description": "" + }, + { + "id": 5, + "name": "1" + }, + { + "id": 6, + "name": "2" + }, + { + "id": 7, + "name": "3" + }, + { + "id": 8, + "name": "4" + }, + { + "id": 9, + "name": "5" + }, + { + "id": 10, + "name": "6" + }, + { + "id": 11, + "name": "7" + }, + { + "id": 12, + "name": "8" + }, + { + "id": 13, + "name": "9" + }, + { + "id": 14, + "name": "10" + }, + { + "id": 15, + "name": "11" + }, + { + "id": 16, + "name": "12" + }, + { + "id": 17, + "name": "13" + }, + { + "id": 18, + "name": "14" + }, + { + "id": 19, + "name": "15" + }, + { + "id": 20, + "name": "16" + }, + { + "id": 21, + "name": "17" + }, + { + "id": 22, + "name": "18" + }, + { + "id": 23, + "name": "19" + }, + { + "id": 24, + "name": "20" + }, + { + "id": 25, + "name": "21" + }, + { + "id": 26, + "name": "22" + }, + { + "id": 27, + "name": "23" + }, + { + "id": 28, + "name": "24" + }, + { + "id": 29, + "name": "25" + }, + { + "id": 30, + "name": "26" + }, + { + "id": 31, + "name": "27" + }, + { + "id": 32, + "name": "28" + }, + { + "id": 33, + "name": "29" + }, + { + "id": 34, + "name": "30" + }, + { + "id": 35, + "name": "31" + }, + { + "id": 36, + "name": "32" + }, + { + "id": 37, + "name": "33" + }, + { + "id": 38, + "name": "34" + }, + { + "id": 39, + "name": "35" + }, + { + "id": 40, + "name": "36" + }, + { + "id": 41, + "name": "37" + }, + { + "id": 42, + "name": "38" + }, + { + "id": 43, + "name": "39" + }, + { + "id": 44, + "name": "40" + }, + { + "id": 45, + "name": "41" + }, + { + "id": 46, + "name": "42" + }, + { + "id": 47, + "name": "43" + }, + { + "id": 48, + "name": "44" + }, + { + "id": 49, + "name": "45" + }, + { + "id": 50, + "name": "46" + }, + { + "id": 51, + "name": "47" + }, + { + "id": 52, + "name": "48" + }, + { + "id": 53, + "name": "49" + }, + { + "id": 54, + "name": "50" + }, + { + "id": 55, + "name": "51" + }, + { + "id": 56, + "name": "52" + }, + { + "id": 57, + "name": "53" + }, + { + "id": 58, + "name": "54" + }, + { + "id": 59, + "name": "55" + }, + { + "id": 60, + "name": "56" + }, + { + "id": 61, + "name": "57" + }, + { + "id": 62, + "name": "58" + }, + { + "id": 63, + "name": "59" + }, + { + "id": 64, + "name": "60" + }, + { + "id": 65, + "name": "61" + }, + { + "id": 66, + "name": "62" + }, + { + "id": 67, + "name": "63" + }, + { + "id": 68, + "name": "64" + }, + { + "id": 69, + "name": "65" + }, + { + "id": 70, + "name": "66" + }, + { + "id": 71, + "name": "67" + }, + { + "id": 72, + "name": "68" + }, + { + "id": 73, + "name": "69" + }, + { + "id": 74, + "name": "70" + }, + { + "id": 75, + "name": "71" + }, + { + "id": 76, + "name": "72" + }, + { + "id": 77, + "name": "73" + }, + { + "id": 78, + "name": "74" + }, + { + "id": 79, + "name": "75" + }, + { + "id": 80, + "name": "76" + }, + { + "id": 81, + "name": "77" + }, + { + "id": 82, + "name": "78" + }, + { + "id": 83, + "name": "79" + }, + { + "id": 84, + "name": "80" + }, + { + "id": 85, + "name": "81" + }, + { + "id": 86, + "name": "82" + }, + { + "id": 87, + "name": "83" + }, + { + "id": 88, + "name": "84" + }, + { + "id": 89, + "name": "85" + }, + { + "id": 90, + "name": "86" + }, + { + "id": 91, + "name": "87" + }, + { + "id": 92, + "name": "88" + }, + { + "id": 93, + "name": "89" + }, + { + "id": 94, + "name": "90" + }, + { + "id": 95, + "name": "91" + }, + { + "id": 96, + "name": "92" + }, + { + "id": 97, + "name": "93" + }, + { + "id": 98, + "name": "94" + }, + { + "id": 99, + "name": "95" + }, + { + "id": 100, + "name": "96" + } + ], + "nextLink": "https://management.azure.com/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/integrationRuntimes/testactivityv2/getObjectMetadata?api-version=2019-06-01-preview&%24skipToken=https%3a%2f%2fwcu.frontend.clouddatahub.net%2fsubscriptions%2f12345678-1234-1234-1234-12345678abc%2fdatafactories%2f6C8E7C90-FD45-4010-8B7C-B5227D0F0CB7%2fintegrationruntimes%2fTESTACTIVITYV2%2fgetSsisObjectMetadata%3f%24skipToken%3dc3Npc0ZvbGRlcnNAQDIwMTgtMTEtMjlUMDM6NTk6MzIuMDQ1Mzc1MiswMDowMEBAZm9sZGVyQEAwMDAwMDAwMDAwMDAwMDAwMTAx0%26api-version%3d1.0" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeObjectMetadata_Refresh.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeObjectMetadata_Refresh.json new file mode 100644 index 000000000000..8154da9d21d0 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimeObjectMetadata_Refresh.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "testactivityv2", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Mon, 03 Dec 2018 06:24:53 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "11999", + "x-ms-request-id": "20708242-215c-4101-9437-44590b27cdbf", + "x-ms-correlation-request-id": "20708242-215c-4101-9437-44590b27cdbf" + }, + "body": { + "status": "Succeeded", + "name": "ca63c855b72d44959653ffcc6eb0b96c", + "properties": null, + "error": null + } + }, + "202": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Create.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Create.json new file mode 100644 index 000000000000..225ba8b38f01 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Create.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "ifMatch": null, + "integrationRuntime": { + "properties": { + "type": "SelfHosted", + "description": "A selfhosted integration runtime" + } + }, + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Wed, 13 Jun 2018 22:20:47 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1197", + "x-ms-request-id": "125c07fa-e39a-4541-885f-5019631a5ecd", + "x-ms-correlation-request-id": "125c07fa-e39a-4541-885f-5019631a5ecd" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/integrationruntimes/exampleIntegrationRuntime", + "name": "exampleIntegrationRuntime", + "type": "Microsoft.Synapse/workspaces/integrationruntimes", + "properties": { + "type": "SelfHosted", + "description": "A selfhosted integration runtime" + }, + "etag": "000046c4-0000-0000-0000-5b2198bf0000" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Delete.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Delete.json new file mode 100644 index 000000000000..37046b23a1aa --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Delete.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": {}, + "204": {}, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Get.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Get.json new file mode 100644 index 000000000000..f932b98520b6 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Get.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "ifNoneMatch": "15003c4f-0000-0200-0000-5cbe090b0000", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Mon, 22 Apr 2019 18:33:47 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "11997", + "x-ms-request-id": "ad824326-e577-4a47-a092-2e621c4d59d9", + "x-ms-correlation-request-id": "ad824326-e577-4a47-a092-2e621c4d59d9" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/integrationruntimes/exampleIntegrationRuntime", + "name": "exampleIntegrationRuntime", + "type": "Microsoft.Synapse/workspaces/integrationruntimes", + "properties": { + "type": "SelfHosted", + "description": "A selfhosted integration runtime" + }, + "etag": "15003c4f-0000-0200-0000-5cbe090b0000" + } + }, + "304": {}, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_GetConnectionInfo.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_GetConnectionInfo.json new file mode 100644 index 000000000000..f86e6ced9a1b --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_GetConnectionInfo.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Thu, 14 Jun 2018 14:53:21 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14998", + "x-ms-request-id": "05774db5-e79b-4224-9097-46714b92fbd8", + "x-ms-correlation-request-id": "05774db5-e79b-4224-9097-46714b92fbd8" + }, + "body": { + "version": "3.8.6730.2", + "publicKey": "**********", + "serviceToken": "**********", + "identityCertThumbprint": "**********", + "hostServiceUri": "https://yanzhang-dt.fareast.corp.microsoft.com:8050/HostServiceRemote.svc/", + "isIdentityCertExprired": false + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_GetMonitoringData.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_GetMonitoringData.json new file mode 100644 index 000000000000..9545975783d9 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_GetMonitoringData.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Thu, 14 Jun 2018 15:27:44 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14999", + "x-ms-request-id": "39277952-edbe-4336-ae94-f6f42b50b5f7", + "x-ms-correlation-request-id": "39277952-edbe-4336-ae94-f6f42b50b5f7" + }, + "body": { + "name": "exampleIntegrationRuntime", + "nodes": [ + { + "nodeName": "Node_1", + "availableMemoryInMB": 16740, + "cpuUtilization": 15, + "concurrentJobsLimit": 28, + "concurrentJobsRunning": 0, + "sentBytes": 2.6474916934967041, + "receivedBytes": 6.7314233779907227 + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_GetStatus.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_GetStatus.json new file mode 100644 index 000000000000..7e6edc5e61cb --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_GetStatus.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Thu, 14 Jun 2018 14:53:22 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14997", + "x-ms-request-id": "19efe790-074f-4241-ae94-0422935d0f46", + "x-ms-correlation-request-id": "19efe790-074f-4241-ae94-0422935d0f46" + }, + "body": { + "name": "exampleIntegrationRuntime", + "properties": { + "state": "Online", + "type": "SelfHosted", + "typeProperties": { + "autoUpdate": "Off", + "taskQueueId": "1a6296ab-423c-4346-9bcc-85a78c2c0582", + "version": "3.8.6730.2", + "nodes": [ + { + "nodeName": "Node_1", + "machineName": "YANZHANG-DT", + "hostServiceUri": "https://yanzhang-dt.fareast.corp.microsoft.com:8050/HostServiceRemote.svc/", + "status": "Online", + "capabilities": { + "serviceBusConnected": "True", + "httpsPortEnabled": "True", + "credentialInSync": "True", + "connectedToResourceManager": "True", + "nodeEnabled": "True" + }, + "versionStatus": "UpToDate", + "version": "3.8.6730.2", + "registerTime": "2018-06-14T14:51:44.9237069Z", + "lastConnectTime": "2018-06-14T14:52:59.8933313Z", + "lastStartTime": "2018-06-14T14:52:59.8933313Z", + "lastUpdateResult": "None", + "isActiveDispatcher": true, + "maxConcurrentJobs": 56 + } + ], + "updateDelayOffset": "PT3H", + "localTimeZoneOffset": "PT8H", + "serviceUrls": [ + "wu.frontend.int.clouddatahub-int.net", + "*.servicebus.windows.net" + ], + "versionStatus": "UpToDate", + "capabilities": { + "serviceBusConnected": "True", + "httpsPortEnabled": "True", + "credentialInSync": "True", + "connectedToResourceManager": "True", + "nodeEnabled": "True" + }, + "latestVersion": "3.7.6711.1", + "createTime": "2018-06-14T09:17:45.1839685Z" + } + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_ListAuthKeys.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_ListAuthKeys.json new file mode 100644 index 000000000000..40e67e084c76 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_ListAuthKeys.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Thu, 14 Jun 2018 14:51:00 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14999", + "x-ms-request-id": "2ea25426-9d1d-49f3-88b6-fb853eb02cb9", + "x-ms-correlation-request-id": "2ea25426-9d1d-49f3-88b6-fb853eb02cb9" + }, + "body": { + "authKey1": "**********", + "authKey2": "**********" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_ListByWorkspace.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_ListByWorkspace.json new file mode 100644 index 000000000000..82fa0bc4b4d2 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_ListByWorkspace.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "ifNoneMatch": null, + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Wed, 13 Jun 2018 21:33:05 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14909", + "x-ms-request-id": "f632df92-1140-4e19-9e19-0b1c8cbe393b", + "x-ms-correlation-request-id": "f632df92-1140-4e19-9e19-0b1c8cbe393b" + }, + "body": { + "value": [ + { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/integrationruntimes/exampleIntegrationRuntime", + "name": "exampleIntegrationRuntime", + "type": "Microsoft.Synapse/workspaces/integrationruntimes", + "properties": { + "type": "SelfHosted", + "description": "A selfhosted integration runtime" + }, + "etag": "0400f1a1-0000-0000-0000-5b2188640000" + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_RegenerateAuthKey.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_RegenerateAuthKey.json new file mode 100644 index 000000000000..073ce3ef42ed --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_RegenerateAuthKey.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "regenerateKeyParameters": { + "keyName": "authKey2" + }, + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Thu, 14 Jun 2018 14:50:41 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1198", + "x-ms-request-id": "25af6d34-52c6-40a4-a882-16052af85c99", + "x-ms-correlation-request-id": "25af6d34-52c6-40a4-a882-16052af85c99" + }, + "body": { + "authKey2": "**********" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Start.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Start.json new file mode 100644 index 000000000000..0975a4604ab5 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Start.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleManagedIntegrationRuntime", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Wed, 13 Jun 2018 21:33:00 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-reads": "14912", + "x-ms-request-id": "2af47f9f-5625-4b01-a3a5-bccb576a4677", + "x-ms-correlation-request-id": "2af47f9f-5625-4b01-a3a5-bccb576a4677" + }, + "body": { + "name": "exampleManagedIntegrationRuntime", + "properties": { + "dataFactoryName": "exampleWorkspaceName", + "type": "Managed", + "state": "Started", + "typeProperties": { + "nodes": [], + "otherErrors": [], + "createTime": "2018-06-13T21:11:01.8695494Z" + } + } + } + }, + "202": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Stop.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Stop.json new file mode 100644 index 000000000000..b6638ec59d52 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Stop.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleManagedIntegrationRuntime", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": {}, + "202": {}, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_SyncCredentials.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_SyncCredentials.json new file mode 100644 index 000000000000..11b0fe38e4d7 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_SyncCredentials.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Update.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Update.json new file mode 100644 index 000000000000..dbfe57456bf9 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Update.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "updateIntegrationRuntimeRequest": { + "autoUpdate": "Off", + "updateDelayOffset": "\"PT3H\"" + }, + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "headers": { + "Date": "Wed, 13 Jun 2018 21:33:04 GMT", + "X-Content-Type-Options": "nosniff", + "x-ms-ratelimit-remaining-subscription-writes": "1192", + "x-ms-request-id": "eb1c35f8-4b37-4d08-b5dd-d6a0ad8b182d", + "x-ms-correlation-request-id": "eb1c35f8-4b37-4d08-b5dd-d6a0ad8b182d" + }, + "body": { + "id": "/subscriptions/12345678-1234-1234-1234-12345678abc/resourceGroups/exampleResourceGroup/providers/Microsoft.Synapse/workspaces/exampleWorkspaceName/integrationruntimes/exampleIntegrationRuntime", + "name": "exampleIntegrationRuntime", + "type": "Microsoft.Synapse/workspaces/integrationruntimes", + "properties": { + "type": "SelfHosted", + "description": "A selfhosted integration runtime" + }, + "etag": "0400f1a1-0000-0000-0000-5b2188640000" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Upgrade.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Upgrade.json new file mode 100644 index 000000000000..11b0fe38e4d7 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/IntegrationRuntimes_Upgrade.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "12345678-1234-1234-1234-12345678abc", + "resourceGroupName": "exampleResourceGroup", + "workspaceName": "exampleWorkspace", + "integrationRuntimeName": "exampleIntegrationRuntime", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListBigDataPoolsInWorkspace.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListBigDataPoolsInWorkspace.json new file mode 100644 index 000000000000..559b9246b58b --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListBigDataPoolsInWorkspace.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/bigDataPools/ExamplePool", + "type": "Microsoft.Synapse/workspaces/bigDataPools", + "location": "West US 2", + "name": "ExamplePool", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "sparkVersion": "2.4", + "nodeCount": 4, + "nodeSize": "Medium", + "nodeSizeFamily": "MemoryOptimized", + "autoScale": { + "enabled": true, + "minNodeCount": 3, + "maxNodeCount": 50 + }, + "autoPause": { + "enabled": true, + "delayInMinutes": 15 + }, + "creationDate": "1970-01-01T00:00:00Z", + "sparkEventsFolder": "/events", + "libraryRequirements": { + "time": "1970-01-01T00:00:00Z", + "content": "", + "filename": "requirements.txt" + }, + "defaultSparkLogFolder": "/logs" + } + }, + { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/bigDataPools/ExamplePool2", + "type": "Microsoft.Synapse/workspaces/bigDataPools", + "location": "West US 2", + "name": "ExamplePool2", + "tags": {}, + "properties": { + "provisioningState": "Succeeded", + "sparkVersion": "2.4", + "nodeCount": 4, + "nodeSize": "Medium", + "nodeSizeFamily": "MemoryOptimized", + "autoScale": { + "enabled": true, + "minNodeCount": 3, + "maxNodeCount": 50 + }, + "autoPause": { + "enabled": true, + "delayInMinutes": 15 + }, + "creationDate": "1970-01-01T00:00:00Z", + "sparkEventsFolder": "/events", + "libraryRequirements": { + "time": "1970-01-01T00:00:00Z", + "content": "", + "filename": "requirements.txt" + }, + "defaultSparkLogFolder": "/logs" + } + } + ], + "nextLink": "" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListIpFirewallRules.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListIpFirewallRules.json new file mode 100644 index 000000000000..2679764238d9 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListIpFirewallRules.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [], + "nextLink": "" + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListPrivateEndpointConnections.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListPrivateEndpointConnections.json new file mode 100644 index 000000000000..a0db48624fc4 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListPrivateEndpointConnections.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/privateEndpointConnections/ExamplePrivateEndpointConnection", + "name": "sql", + "type": "Microsoft.Synapse/workspaces/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Network/privateEndpoints/ExamplePrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListPrivateLinkResources.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListPrivateLinkResources.json new file mode 100644 index 000000000000..952e006d6cba --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListPrivateLinkResources.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/privateLinkResources/sql", + "name": "sql", + "type": "Microsoft.Synapse/workspaces/privateLinkResources", + "properties": { + "groupId": "sql", + "requiredMembers": [ + "sql" + ], + "requiredZoneNames": [ + "privatelink.sql.azuresynapse.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolColumns.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolColumns.json new file mode 100644 index 000000000000..b867ae3e6c5b --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolColumns.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "workspaceName": "serverName", + "sqlPoolName": "myDatabase", + "schemaName": "dbo", + "tableName": "table1", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Synapse/workspaces/serverName/sqlPools/myDatabase/schemas/dbo/tables/table1/columns/col1", + "name": "col1", + "type": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables/columns", + "properties": { + "columnType": "nvarchar" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Synapse/workspaces/serverName/sqlPools/myDatabase/schemas/dbo/tables/table1/columns/col2", + "name": "col2", + "type": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables/columns", + "properties": { + "columnType": "bit" + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolOperations.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolOperations.json new file mode 100644 index 000000000000..0598d92d584b --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolOperations.json @@ -0,0 +1,51 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-7398", + "workspaceName": "sqlcrudtest-4645", + "sqlPoolName": "testdb", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Synapse/workspaces/sqlcrudtest-4645/sqlPools/testdb/operations/11111111-1111-1111-1111-111111111111", + "name": "11111111-1111-1111-1111-111111111111", + "type": "Microsoft.Synapse/workspaces/sqlPools/operations", + "properties": { + "databaseName": "testdb", + "operation": "UpdateLogicalDatabase", + "operationFriendlyName": "ALTER DATABASE", + "percentComplete": 100, + "serverName": "sqlcrudtest-4645", + "startTime": "2017-06-01T09:10:08.10Z", + "state": "Succeeded", + "estimatedCompletionTime": "2017-06-01T13:10:10Z", + "description": "UpdateLogicalDatabase on 'testdb', target ServiceLevelObjective S3", + "isCancellable": false + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-7398/providers/Microsoft.Synapse/workspaces/sqlcrudtest-4645/sqlPools/testdb/operations/55555555-5555-5555-5555-555555555555", + "name": "55555555-5555-5555-5555-555555555555", + "type": "Microsoft.Synapse/workspaces/sqlPools/operations", + "properties": { + "databaseName": "testdb", + "operation": "UpdateLogicalDatabase", + "operationFriendlyName": "ALTER DATABASE", + "percentComplete": 19, + "serverName": "sqlcrudtest-4645", + "startTime": "2017-06-01T10:10:08.10Z", + "state": "InProgress", + "estimatedCompletionTime": "2017-06-01T13:10:10Z", + "description": "UpdateLogicalDatabase on 'testdb', target ServiceLevelObjective S3", + "isCancellable": true + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolReplicationLinks.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolReplicationLinks.json new file mode 100644 index 000000000000..20eedc7ecabc --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolReplicationLinks.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-4799", + "workspaceName": "sqlcrudtest-6440", + "sqlPoolName": "testdb", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-4799/providers/Microsoft.Synapse/workspaces/sqlcrudtest-6440/sqlPools/testdb/replicationLinks/5b301b68-03f6-4b26-b0f4-73ebb8634238", + "name": "5b301b68-03f6-4b26-b0f4-73ebb8634238", + "type": "Microsoft.Synapse/workspaces/sqlPools/replicationLinks", + "location": "Japan East", + "properties": { + "partnerServer": "sqlcrudtest-5961", + "partnerDatabase": "testdb", + "partnerLocation": "Japan East", + "role": "Secondary", + "partnerRole": "Primary", + "replicationMode": "ASYNC", + "startTime": "2017-02-10T01:44:27.117Z", + "percentComplete": 100, + "replicationState": "CATCH_UP", + "isTerminationAllowed": true + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolRestorePoints.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolRestorePoints.json new file mode 100644 index 000000000000..ffae5ae138f5 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolRestorePoints.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "location": "japaneast", + "workspaceName": "testserver", + "sqlPoolName": "testDatabase", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Synapse/workspaces/testserver/sqlPools/testDatabase/restorePoints/131546477590000000", + "name": "131546477590000000", + "type": "Microsoft.Synapse/workspaces/sqlPools/restorePoints", + "location": "japaneast", + "properties": { + "restorePointType": "DISCRETE", + "restorePointCreationDate": "2017-03-10T08:00:00.000Z", + "restorePointLabel": "mylabel1" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Synapse/workspaces/testserver/sqlPools/testDatabase/restorePoints/131553636140000000", + "name": "131553636140000000", + "type": "Microsoft.Synapse/workspaces/sqlPools/restorePoints", + "location": "japaneast", + "properties": { + "restorePointType": "DISCRETE", + "restorePointCreationDate": "2017-11-17T03:40:14Z", + "restorePointLabel": "mylabel2" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/providers/Microsoft.Synapse/workspaces/testserver/sqlPools/testDatabase/restorePoints/131553619750000000", + "name": "131553619750000000", + "type": "Microsoft.Synapse/workspaces/sqlPools/restorePoints", + "location": "japaneast", + "properties": { + "restorePointType": "DISCRETE", + "restorePointCreationDate": "2017-11-17T03:12:55Z" + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolSchema.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolSchema.json new file mode 100644 index 000000000000..3e1f64b200cf --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolSchema.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "workspaceName": "serverName", + "sqlPoolName": "myDatabase", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Synapse/workspaces/serverName/sqlPools/myDatabase/schemas/dbo", + "name": "dbo", + "type": "Microsoft.Synapse/workspaces/sqlPools/schemas" + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Synapse/workspaces/serverName/sqlPools/myDatabase/schemas/schema2", + "name": "schema2", + "type": "Microsoft.Synapse/workspaces/sqlPools/schemas" + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolSensitivityLabelsWithSourceRecommended.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolSensitivityLabelsWithSourceRecommended.json new file mode 100644 index 000000000000..76c75fc4da09 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolSensitivityLabelsWithSourceRecommended.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "workspaceName": "myServer", + "sqlPoolName": "myDatabase", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Synapse/workspaces/myServer/sqlPools/myDatabase/schemas/dbo/tables/myTable/columns/myColumn/sensitivityLabels/recommended", + "name": "recommended", + "type": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables/columns/sensitivityLabels", + "properties": { + "informationType": "Financial", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "05e6eaa1-075a-4fb4-a732-a92215a2444a", + "labelName": "Sensitive" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Synapse/workspaces/myServer/sqlPools/myDatabase/schemas/dbo/tables/myTable/columns/myColumn2/sensitivityLabels/recommended", + "name": "recommended", + "type": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables/columns/sensitivityLabels", + "properties": { + "informationType": "Email", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "bf91e08c-f4f0-478a-b016-25164b2a65ff", + "labelName": "PII" + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolTables.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolTables.json new file mode 100644 index 000000000000..b2ae0615f0a2 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolTables.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "workspaceName": "serverName", + "sqlPoolName": "myDatabase", + "schemaName": "dbo", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Synapse/workspaces/serverName/sqlPools/myDatabase/schemas/dbo/tables/table1", + "name": "table1", + "type": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables" + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Synapse/workspaces/serverName/sqlPools/myDatabase/schemas/dbo/tables/table2", + "name": "table2", + "type": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables" + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolVulnerabilityAssessmentScanRecords.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolVulnerabilityAssessmentScanRecords.json new file mode 100644 index 000000000000..3b17a7933fcc --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolVulnerabilityAssessmentScanRecords.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityassessmenttest-4711", + "workspaceName": "vulnerabilityassessmenttest-6411", + "sqlPoolName": "testdb", + "vulnerabilityAssessmentName": "default", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityassessmenttest-4799/providers/Microsoft.Synapse/workspaces/vulnerabilityassessmenttest-6440/sqlPools/testdb/vulnerabilityAssessments/default/scans/scan001", + "name": "scan001", + "type": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments/scans", + "properties": { + "scanId": "scan001", + "triggerType": "OnDemand", + "state": "Passed", + "startTime": "2017-12-12T17:45:06Z", + "endTime": "2017-12-12T17:47:06Z", + "errors": [], + "numberOfFailedSecurityChecks": 9 + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityassessmenttest-4799/providers/Microsoft.Synapse/workspaces/vulnerabilityassessmenttest-6440/sqlPools/testdb/vulnerabilityAssessments/default/scans/scan002", + "name": "scan002", + "type": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments/scans", + "properties": { + "scanId": "scan002", + "triggerType": "Recurring", + "state": "Failed", + "startTime": "2017-12-12T17:45:06Z", + "endTime": "2017-12-12T17:47:06Z", + "errors": [], + "numberOfFailedSecurityChecks": 9 + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityassessmenttest-4799/providers/Microsoft.Synapse/workspaces/vulnerabilityassessmenttest-6440/sqlPools/testdb/vulnerabilityAssessments/default/scans/scan003", + "name": "scan003", + "type": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments/scans", + "properties": { + "scanId": "scan003", + "triggerType": "Recurring", + "state": "FailedToRun", + "startTime": "2017-12-12T17:45:06Z", + "endTime": "2017-12-12T17:47:06Z", + "errors": [ + { + "code": "StorageNotFound", + "message": "Storage not found" + } + ], + "numberOfFailedSecurityChecks": 0 + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolVulnerabilityAssessments.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolVulnerabilityAssessments.json new file mode 100644 index 000000000000..fe60f46ccc56 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolVulnerabilityAssessments.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "vulnerabilityaseessmenttest-4799", + "workspaceName": "vulnerabilityaseessmenttest-6440", + "sqlPoolName": "testdb", + "vulnerabilityAssessmentName": "default", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Synapse/workspaces/vulnerabilityaseessmenttest-6440/sqlPools/testdb/vulnerabilityAssessments/default", + "name": "default", + "type": "Microsoft.Synapse/workspaces/sqlPools/vulnerabilityAssessments", + "properties": { + "recurringScans": { + "isEnabled": true, + "emailSubscriptionAdmins": true, + "emails": [ + "email1@mail.com", + "email2@mail.com" + ] + } + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolsInWorkspace.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolsInWorkspace.json new file mode 100644 index 000000000000..371991a36352 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolsInWorkspace.json @@ -0,0 +1,101 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6845", + "workspaceName": "sqlcrudtest-7177", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6845/providers/Microsoft.Synapse/workspaces/sqlcrudtest-7177/sqlPools/master", + "name": "master", + "type": "Microsoft.Synapse/workspaces/sqlPools", + "location": "Japan East", + "properties": { + "status": "Online", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 32212254720, + "creationDate": "2017-02-10T00:59:33.483Z", + "provisioningState": "Succeeded", + "restorePointInTime": "0001-01-01T00:00:00Z" + }, + "sku": { + "name": "GP_Gen5_2" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6845/providers/Microsoft.Synapse/workspaces/sqlcrudtest-7177/sqlPools/sqlcrudtest-1142", + "name": "sqlcrudtest-1142", + "type": "Microsoft.Synapse/workspaces/sqlPools", + "location": "Japan East", + "properties": { + "status": "Online", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "creationDate": "2017-02-10T01:03:34.04Z", + "provisioningState": "Succeeded", + "restorePointInTime": "0001-01-01T00:00:00Z" + }, + "sku": { + "name": "DW100c" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6845/providers/Microsoft.Synapse/workspaces/sqlcrudtest-7177/sqlPools/sqlcrudtest-2788", + "name": "sqlcrudtest-2788", + "type": "Microsoft.Synapse/workspaces/sqlPools", + "location": "Japan East", + "properties": { + "status": "Online", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "creationDate": "2017-02-10T01:00:21.067Z", + "provisioningState": "Succeeded", + "restorePointInTime": "0001-01-01T00:00:00Z" + }, + "sku": { + "name": "DW100c" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6845/providers/Microsoft.Synapse/workspaces/sqlcrudtest-7177/sqlPools/sqlcrudtest-6877", + "name": "sqlcrudtest-6877", + "type": "Microsoft.Synapse/workspaces/sqlPools", + "location": "Japan East", + "properties": { + "status": "Online", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "creationDate": "2017-02-10T01:02:28.853Z", + "provisioningState": "Succeeded", + "restorePointInTime": "0001-01-01T00:00:00Z" + }, + "sku": { + "name": "DW100c" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6845/providers/Microsoft.Synapse/workspaces/sqlcrudtest-7177/sqlPools/sqlcrudtest-9888", + "name": "sqlcrudtest-9888", + "type": "Microsoft.Synapse/workspaces/sqlPools", + "location": "Japan East", + "properties": { + "status": "Online", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "creationDate": "2017-02-10T01:01:25.347Z", + "provisioningState": "Succeeded", + "restorePointInTime": "0001-01-01T00:00:00Z" + }, + "sku": { + "name": "DW100c" + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolsInWorkspaceWithFilter.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolsInWorkspaceWithFilter.json new file mode 100644 index 000000000000..bc9f9d2f2811 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolsInWorkspaceWithFilter.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6845", + "workspaceName": "sqlcrudtest-7177", + "api-version": "2019-06-01-preview", + "$filter": "properties/edition eq 'System'" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6845/providers/Microsoft.Synapse/workspaces/sqlcrudtest-7177/sqlPools/master", + "name": "master", + "type": "Microsoft.Synapse/workspaces/sqlPools", + "location": "Japan East", + "properties": { + "status": "Online", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 32212254720, + "creationDate": "2017-02-10T00:59:33.483Z", + "provisioningState": "Succeeded", + "restorePointInTime": "0001-01-01T00:00:00Z" + }, + "sku": { + "name": "GP_Gen5_2" + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolsSensitivityLabelsWithSourceCurrent.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolsSensitivityLabelsWithSourceCurrent.json new file mode 100644 index 000000000000..6406dc6b3cb7 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListSqlPoolsSensitivityLabelsWithSourceCurrent.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "workspaceName": "myServer", + "sqlPoolName": "myDatabase", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Synapse/workspaces/myServer/sqlPools/myDatabase/schemas/dbo/tables/myTable/columns/myColumn3/sensitivityLabels/current", + "name": "current", + "type": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables/columns/sensitivityLabels", + "properties": { + "informationType": "Financial", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "05e6eaa1-075a-4fb4-a732-a92215a2444a", + "labelName": "Sensitive" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/myRG/providers/Microsoft.Synapse/workspaces/myServer/sqlPools/myDatabase/schemas/dbo/tables/myTable/columns/myColumn4/sensitivityLabels/current", + "name": "current", + "type": "Microsoft.Synapse/workspaces/sqlPools/schemas/tables/columns/sensitivityLabels", + "properties": { + "informationType": "Email", + "informationTypeId": "d22fa6e9-5ee4-3bde-4c2b-a409604c4646", + "labelId": "bf91e08c-f4f0-478a-b016-25164b2a65ff", + "labelName": "PII" + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListWorkspacesInResourceGroup.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListWorkspacesInResourceGroup.json new file mode 100644 index 000000000000..efc736ed5288 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListWorkspacesInResourceGroup.json @@ -0,0 +1,61 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup1", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/workspaces/workspace1", + "name": "workspace1", + "type": "Microsoft.Synapse/workspaces", + "location": "East US", + "properties": { + "defaultDataLakeStorage": { + "accountUrl": "https://accountname.dfs.core.windows.net", + "filesystem": "default" + }, + "connectivityEndpoints": { + "dev": "workspace1.dev.projectarcadia.net", + "sql": "workspace1.sql.projectarcadia.net" + }, + "sqlAdministratorLogin": "login", + "sqlAdministratorLoginPassword": "password", + "managedResourceGroupName": "resourceGroup2", + "provisioningState": "Succeeded" + }, + "tags": { + "key": "value" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/workspaces/workspace2", + "name": "workspace2", + "type": "Microsoft.Synapse/workspaces", + "location": "East US", + "properties": { + "defaultDataLakeStorage": { + "accountUrl": "https://accountname.dfs.core.windows.net", + "filesystem": "default" + }, + "connectivityEndpoints": { + "dev": "workspace2.dev.projectarcadia.net", + "sql": "workspace2.sql.projectarcadia.net" + }, + "sqlAdministratorLogin": "login", + "sqlAdministratorLoginPassword": "password", + "managedResourceGroupName": "resourceGroup2", + "provisioningState": "Succeeded" + }, + "tags": { + "key": "value" + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListWorkspacesInSubscription.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListWorkspacesInSubscription.json new file mode 100644 index 000000000000..36f8be349aab --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ListWorkspacesInSubscription.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/workspaces/workspace1", + "name": "workspace1", + "type": "Microsoft.Synapse/workspaces", + "location": "East US", + "properties": { + "defaultDataLakeStorage": { + "accountUrl": "https://accountname.dfs.core.windows.net", + "filesystem": "default" + }, + "connectivityEndpoints": { + "dev": "workspace1.dev.projectarcadia.net", + "sql": "workspace1.sql.projectarcadia.net" + }, + "sqlAdministratorLogin": "login", + "sqlAdministratorLoginPassword": "password", + "managedResourceGroupName": "resourceGroup2", + "provisioningState": "Succeeded" + }, + "tags": { + "key": "value" + } + }, + { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/workspaces/workspace2", + "name": "workspace2", + "type": "Microsoft.Synapse/workspaces", + "location": "East US", + "properties": { + "defaultDataLakeStorage": { + "accountUrl": "https://accountname.dfs.core.windows.net", + "filesystem": "default" + }, + "connectivityEndpoints": { + "dev": "workspace2.dev.projectarcadia.net", + "sql": "workspace2.sql.projectarcadia.net" + }, + "sqlAdministratorLogin": "login", + "sqlAdministratorLoginPassword": "password", + "managedResourceGroupName": "resourceGroup2", + "provisioningState": "Succeeded" + }, + "tags": { + "key": "value" + } + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/PauseSqlPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/PauseSqlPool.json new file mode 100644 index 000000000000..cb26f2bbcc5a --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/PauseSqlPool.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "workspaceName": "testsvr", + "sqlPoolName": "testdwdb", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Synapse/workspaces/testsvr/sqlPools/testdwdb", + "name": "testdwdb", + "type": "Microsoft.Synapse/workspaces/sqlPools", + "location": "Japan East", + "properties": { + "status": "Online", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "creationDate": "2017-02-10T00:56:19.2Z", + "provisioningState": "Succeeded", + "restorePointInTime": "0001-01-01T00:00:00Z" + }, + "sku": { + "name": "DW100c" + } + } + }, + "202": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/RecommendedColumnSensitivityLabelDisable.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/RecommendedColumnSensitivityLabelDisable.json new file mode 100644 index 000000000000..7fcd07ad2ff9 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/RecommendedColumnSensitivityLabelDisable.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "workspaceName": "myServer", + "sqlPoolName": "myDatabase", + "schemaName": "dbo", + "tableName": "myTable", + "columnName": "myColumn", + "sensitivityLabelSource": "recommended", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/RecommendedColumnSensitivityLabelEnable.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/RecommendedColumnSensitivityLabelEnable.json new file mode 100644 index 000000000000..7fcd07ad2ff9 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/RecommendedColumnSensitivityLabelEnable.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "myRG", + "workspaceName": "myServer", + "sqlPoolName": "myDatabase", + "schemaName": "dbo", + "tableName": "myTable", + "columnName": "myColumn", + "sensitivityLabelSource": "recommended", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/RenameSqlPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/RenameSqlPool.json new file mode 100644 index 000000000000..cffe66aa5307 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/RenameSqlPool.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "Default-SQL-SouthEastAsia", + "workspaceName": "testsvr", + "sqlPoolName": "testdb", + "api-version": "2019-06-01-preview", + "parameters": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Default-SQL-SouthEastAsia/providers/Microsoft.Synapse/workspaces/testsvr/sqlPools/newtestdb" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ReplaceAllIpFirewallRules.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ReplaceAllIpFirewallRules.json new file mode 100644 index 000000000000..b060d657f668 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ReplaceAllIpFirewallRules.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "api-version": "2019-06-01-preview", + "request": { + "ipFirewallRules": { + "ExampleFirewallRule": { + "startIpAddress": "10.0.0.0", + "endIpAddress": "10.0.0.254" + }, + "AnotherExampleFirewallRule": { + "startIpAddress": "10.0.1.0", + "endIpAddress": "10.0.1.254" + } + } + } + }, + "responses": { + "200": { + "body": { + "operationId": "00000000-1111-4444-2222-333333333333" + } + }, + "202": {}, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ResumeSqlPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ResumeSqlPool.json new file mode 100644 index 000000000000..04151d8c7ca8 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/ResumeSqlPool.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "sqlcrudtest-6852", + "workspaceName": "sqlcrudtest-2080", + "sqlPoolName": "sqlcrudtest-9187", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "tags": { + "tagKey1": "TagValue1" + }, + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Synapse/workspaces/sqlcrudtest-2080/sqlPools/sqlcrudtest-9187", + "name": "sqlcrudtest-9187", + "type": "Microsoft.Synapse/workspaces/sqlPools", + "location": "Japan East", + "properties": { + "status": "Online", + "collation": "SQL_Latin1_General_CP1_CI_AS", + "maxSizeBytes": 268435456000, + "creationDate": "2017-02-10T00:56:19.2Z", + "provisioningState": "Succeeded", + "restorePointInTime": "0001-01-01T00:00:00Z" + }, + "sku": { + "name": "DW100c" + } + } + }, + "202": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/SqlPoolUsageMetricsList.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/SqlPoolUsageMetricsList.json new file mode 100644 index 000000000000..1dfe44756f21 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/SqlPoolUsageMetricsList.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "sqlcrudtest-6730", + "workspaceName": "sqlcrudtest-9007", + "sqlPoolName": "3481", + "api-version": "2019-06-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "database_size", + "resourceName": "3481", + "displayName": "Database Size", + "currentValue": 4194304, + "limit": 268435456000, + "unit": "Bytes", + "nextResetTime": null + } + ] + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/UpdateBigDataPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/UpdateBigDataPool.json new file mode 100644 index 000000000000..cf1b9334388a --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/UpdateBigDataPool.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "bigDataPoolName": "ExamplePool", + "api-version": "2019-06-01-preview", + "bigDataPoolPatchInfo": { + "tags": { + "key": "value" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspace/bigDataPools/ExamplePool", + "type": "Microsoft.Synapse/workspaces/bigDataPools", + "location": "West US 2", + "name": "ExamplePool", + "tags": { + "key": "value" + }, + "properties": { + "provisioningState": "Succeeded", + "sparkVersion": "2.4", + "nodeCount": 4, + "nodeSize": "Medium", + "nodeSizeFamily": "MemoryOptimized", + "autoScale": { + "enabled": true, + "minNodeCount": 3, + "maxNodeCount": 50 + }, + "autoPause": { + "enabled": true, + "delayInMinutes": 15 + }, + "creationDate": "1970-01-01T00:00:00Z", + "sparkEventsFolder": "/events", + "libraryRequirements": { + "time": "1970-01-01T00:00:00Z", + "content": "", + "filename": "requirements.txt" + }, + "defaultSparkLogFolder": "/logs" + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/UpdateSqlPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/UpdateSqlPool.json new file mode 100644 index 000000000000..14abbbfe6c6f --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/UpdateSqlPool.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "01234567-89ab-4def-0123-456789abcdef", + "resourceGroupName": "ExampleResourceGroup", + "workspaceName": "ExampleWorkspace", + "sqlPoolName": "ExampleSqlPool", + "path": "example", + "api-version": "2019-06-01-preview", + "sqlPoolInfo": { + "location": "West US 2", + "tags": {}, + "sku": { + "tier": "", + "name": "" + }, + "properties": { + "maxSizeBytes": 0, + "collation": "", + "sourceDatabaseId": "", + "recoverableDatabaseId": "", + "restorePointInTime": "1970-01-01T00:00:00.000Z", + "createMode": "", + "creationDate": "1970-01-01T00:00:00.000Z" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/01234567-89ab-4def-0123-456789abcdef/resourceGroups/ExampleResourceGroup/providers/Microsoft.Synapse/workspaces/ExampleWorkspaces/sqlPools/ExampleSqlPool", + "type": "Microsoft.Synapse/workspaces/sqlPools", + "name": "ExampleSqlPool", + "location": "West US 2", + "tags": {}, + "sku": { + "tier": "", + "name": "" + }, + "properties": { + "maxSizeBytes": 0, + "collation": "", + "sourceDatabaseId": "", + "recoverableDatabaseId": "", + "provisioningState": "Provisioning", + "status": "Paused", + "restorePointInTime": "1970-01-01T00:00:00.000Z", + "createMode": "", + "creationDate": "1970-01-01T00:00:00.000Z" + } + } + }, + "202": {} + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/UpdateWorkspace.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/UpdateWorkspace.json new file mode 100644 index 000000000000..435b56249d86 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/examples/UpdateWorkspace.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "subscriptionId": "00000000-1111-2222-3333-444444444444", + "resourceGroupName": "resourceGroup1", + "workspaceName": "workspace1", + "api-version": "2019-06-01-preview", + "workspacePatchInfo": { + "tags": { + "key": "value" + }, + "identity": { + "type": "SystemAssigned" + }, + "properties": { + "sqlAdministratorLoginPassword": "password" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/workspaces/workspace1", + "name": "workspace1", + "type": "Microsoft.Synapse/workspaces", + "location": "East US", + "properties": { + "defaultDataLakeStorage": { + "accountUrl": "https://accountname.dfs.core.windows.net", + "filesystem": "default" + }, + "connectivityEndpoints": { + "dev": "workspace1.dev.projectarcadia.net", + "sql": "workspace1.sql.projectarcadia.net" + }, + "sqlAdministratorLogin": "login", + "sqlAdministratorLoginPassword": "password", + "managedResourceGroupName": "resourceGroup2", + "provisioningState": "Succeeded" + }, + "tags": { + "key": "value" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/resourceGroup1/providers/Microsoft.Synapse/workspaces/workspace1", + "name": "workspace1", + "type": "Microsoft.Synapse/workspaces", + "location": "East US", + "properties": { + "defaultDataLakeStorage": { + "accountUrl": "https://accountname.dfs.core.windows.net", + "filesystem": "default" + }, + "connectivityEndpoints": { + "dev": "workspace1.dev.projectarcadia.net", + "sql": "workspace1.sql.projectarcadia.net" + }, + "sqlAdministratorLogin": "login", + "sqlAdministratorLoginPassword": "password", + "managedResourceGroupName": "resourceGroup2", + "provisioningState": "Provisioning" + }, + "tags": { + "key": "value" + } + } + }, + "default": { + "body": { + "error": { + "code": "Error code", + "message": "Error message" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/firewallRule.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/firewallRule.json new file mode 100644 index 000000000000..67c279d4fc02 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/firewallRule.json @@ -0,0 +1,413 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-06-01-preview", + "title": "SynapseManagementClient", + "description": "Azure Synapse Analytics APIs" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "type": "oauth2", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/firewallRules": { + "get": { + "operationId": "IpFirewallRules_ListByWorkspace", + "description": "Returns a list of firewall rules", + "tags": [ + "IpFirewallRules" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/workspaceNameParameter" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/IpFirewallRuleInfoListResult" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "List IP firewall rules in a workspace": { + "$ref": "./examples/ListIpFirewallRules.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/firewallRules/{ruleName}": { + "put": { + "operationId": "IpFirewallRules_CreateOrUpdate", + "description": "Creates or updates a firewall rule", + "tags": [ + "IpFirewallRules" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/ruleNameParameter" + }, + { + "description": "IP firewall rule properties", + "schema": { + "$ref": "#/definitions/IpFirewallRuleInfo", + "description": "IP firewall rule properties" + }, + "in": "body", + "name": "ipFirewallRuleInfo", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/IpFirewallRuleInfo" + }, + "description": "" + }, + "201": { + "schema": { + "$ref": "#/definitions/IpFirewallRuleInfo" + }, + "description": "" + }, + "default": { + "schema": { + "$ref": "./workspace.json#/definitions/ErrorContract" + }, + "description": "" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Create an IP firewall rule": { + "$ref": "./examples/CreateIpFirewallRule.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "delete": { + "operationId": "IpFirewallRules_Delete", + "description": "Deletes a firewall rule", + "tags": [ + "IpFirewallRules" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/ruleNameParameter" + } + ], + "responses": { + "200": { + "schema": { + "type": "object" + }, + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "202": { + "description": "Accepted" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Delete an IP firewall rule from a workspace": { + "$ref": "./examples/DeleteIpFirewallRule.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "get": { + "operationId": "IpFirewallRules_Get", + "description": "Get a firewall rule", + "tags": [ + "IpFirewallRules" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/ruleNameParameter" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/IpFirewallRuleInfo" + }, + "description": "Ip Firewall Rule details" + }, + "default": { + "schema": { + "$ref": "./workspace.json#/definitions/ErrorContract" + }, + "description": "" + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Create an IP firewall rule": { + "$ref": "./examples/GetIpFirewallRule.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/replaceAllIpFirewallRules": { + "post": { + "operationId": "IpFirewallRules_ReplaceAll", + "description": "Replaces firewall rules", + "tags": [ + "IpFirewallRules" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/workspaceNameParameter" + }, + { + "description": "Replace all IP firewall rules request", + "schema": { + "$ref": "#/definitions/ReplaceAllIpFirewallRulesRequest", + "description": "Replace all IP firewall rules request" + }, + "in": "body", + "name": "request", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/ReplaceAllFirewallRulesOperationResponse" + }, + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "schema": { + "$ref": "./workspace.json#/definitions/ErrorContract" + }, + "description": "" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Replace all IP firewall rules in a workspace": { + "$ref": "./examples/ReplaceAllIpFirewallRules.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + } + }, + "definitions": { + "IpFirewallRuleInfo": { + "description": "IP firewall rule", + "type": "object", + "x-ms-azure-resource": true, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/IpFirewallRuleProperties", + "description": "IP firewall rule properties", + "x-ms-client-flatten": true + } + } + }, + "ReplaceAllIpFirewallRulesRequest": { + "description": "Replace all IP firewall rules request", + "type": "object", + "properties": { + "ipFirewallRules": { + "description": "IP firewall rule properties", + "additionalProperties": { + "description": "IP firewall rule properties", + "$ref": "#/definitions/IpFirewallRuleProperties" + }, + "type": "object" + } + } + }, + "IpFirewallRuleProperties": { + "description": "IP firewall rule properties", + "type": "object", + "properties": { + "endIpAddress": { + "description": "The end IP address of the firewall rule. Must be IPv4 format. Must be greater than or equal to startIpAddress", + "type": "string" + }, + "provisioningState": { + "description": "Resource provisioning state", + "enum": [ + "Provisioning", + "Succeeded", + "Deleting", + "Failed", + "DeleteError" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "startIpAddress": { + "description": "The start IP address of the firewall rule. Must be IPv4 format", + "type": "string" + } + } + }, + "IpFirewallRuleInfoListResult": { + "type": "object", + "description": "List of IP firewall rules", + "properties": { + "nextLink": { + "description": "Link to next page of results", + "type": "string" + }, + "value": { + "description": "List of IP firewall rules", + "type": "array", + "items": { + "$ref": "#/definitions/IpFirewallRuleInfo" + } + } + } + }, + "ReplaceAllFirewallRulesOperationResponse": { + "type": "object", + "description": "An existing operation for replacing the firewall rules", + "properties": { + "operationId": { + "type": "string", + "description": "The operation ID" + } + } + } + }, + "parameters": { + "workspaceNameParameter": { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the workspace", + "x-ms-parameter-location": "method" + }, + "ruleNameParameter": { + "type": "string", + "in": "path", + "name": "ruleName", + "description": "The IP firewall rule name", + "required": true, + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/integrationRuntime.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/integrationRuntime.json new file mode 100644 index 000000000000..5f5f74294989 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/integrationRuntime.json @@ -0,0 +1,2837 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-06-01-preview", + "title": "SynapseManagementClient", + "description": "Azure Synapse Analytics APIs" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "type": "oauth2", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}": { + "patch": { + "operationId": "IntegrationRuntimes_Update", + "summary": "Update integration runtime", + "description": "Update an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + }, + { + "name": "updateIntegrationRuntimeRequest", + "description": "The parameters for updating an integration runtime.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateIntegrationRuntimeRequest" + } + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeResource" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Update integration runtime": { + "$ref": "./examples/IntegrationRuntimes_Update.json" + } + } + }, + "get": { + "operationId": "IntegrationRuntimes_Get", + "summary": "Get integration runtime", + "description": "Get an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + }, + { + "name": "If-None-Match", + "in": "header", + "required": false, + "type": "string", + "description": "ETag of the integration runtime entity. Should only be specified for get. If the ETag matches the existing entity tag, or if * was provided, then no content will be returned." + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeResource" + } + }, + "304": { + "description": "Not modified." + }, + "default": { + "description": "An error response received from GET integration runtime operation.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get integration runtime": { + "$ref": "./examples/IntegrationRuntimes_Get.json" + } + } + }, + "put": { + "operationId": "IntegrationRuntimes_Create", + "summary": "Create integration runtime", + "description": "Create an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + }, + { + "name": "If-Match", + "in": "header", + "required": false, + "type": "string", + "description": "ETag of the integration runtime entity. Should only be specified for update, for which it should match existing entity or can be * for unconditional update." + }, + { + "name": "integrationRuntime", + "description": "Integration runtime resource definition.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/IntegrationRuntimeResource" + } + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeResource" + } + }, + "default": { + "description": "An error response received from PUT integration runtime operation.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Create integration runtime": { + "$ref": "./examples/IntegrationRuntimes_Create.json" + } + } + }, + "delete": { + "operationId": "IntegrationRuntimes_Delete", + "summary": "Delete integration runtime", + "description": "Delete an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "204": { + "description": "No Content." + }, + "default": { + "description": "An error response received from DELETE integration runtime operation.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Delete integration runtime": { + "$ref": "./examples/IntegrationRuntimes_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/nodes/{nodeName}/ipAddress": { + "post": { + "operationId": "IntegrationRuntimeNodeIpAddress_Get", + "summary": "Get integration runtime node IP address", + "description": "Get the IP address of an integration runtime node", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "nodeName", + "description": "Integration runtime node name", + "required": true + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeNodeIpAddress" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get integration runtime node IP address": { + "$ref": "./examples/IntegrationRuntimeNodes_GetIpAddress.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/upgrade": { + "post": { + "operationId": "IntegrationRuntimes_Upgrade", + "summary": "Upgrade integration runtime", + "description": "Upgrade an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Upgrade integration runtime": { + "$ref": "./examples/IntegrationRuntimes_Upgrade.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/getObjectMetadata": { + "post": { + "operationId": "IntegrationRuntimeObjectMetadata_Get", + "summary": "Get integration runtime object metadata", + "description": "Get object metadata from an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + }, + { + "name": "getMetadataRequest", + "description": "The parameters for getting a SSIS object metadata.", + "in": "body", + "required": false, + "schema": { + "$ref": "#/definitions/GetSsisObjectMetadataRequest" + } + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/SsisObjectMetadataListResponse" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get integration runtime object metadata": { + "$ref": "./examples/IntegrationRuntimeObjectMetadata_Get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/nodes/{nodeName}": { + "get": { + "operationId": "IntegrationRuntimeNodes_Get", + "summary": "Get integration runtime node", + "description": "Get an integration runtime node", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "nodeName", + "description": "Integration runtime node name", + "required": true + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/SelfHostedIntegrationRuntimeNode" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get integration runtime node": { + "$ref": "./examples/IntegrationRuntimeNodes_Get.json" + } + } + }, + "patch": { + "operationId": "IntegrationRuntimeNodes_Update", + "summary": "Create integration runtime node", + "description": "Create an integration runtime node", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "nodeName", + "description": "Integration runtime node name", + "required": true + }, + { + "name": "updateIntegrationRuntimeNodeRequest", + "description": "The parameters for updating an integration runtime node.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/UpdateIntegrationRuntimeNodeRequest" + } + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/SelfHostedIntegrationRuntimeNode" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Update integration runtime node": { + "$ref": "./examples/IntegrationRuntimeNodes_Update.json" + } + } + }, + "delete": { + "operationId": "IntegrationRuntimeNodes_Delete", + "summary": "Delete integration runtime node", + "description": "Delete an integration runtime node", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "nodeName", + "description": "Integration runtime node name", + "required": true + } + ], + "responses": { + "200": { + "description": "OK." + }, + "204": { + "description": "No Content." + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Delete integration runtime node": { + "$ref": "./examples/IntegrationRuntimeNodes_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/syncCredentials": { + "post": { + "operationId": "IntegrationRuntimeCredentials_Sync", + "summary": "Sync integration runtime credentials", + "description": "Force the integration runtime to synchronize credentials across integration runtime nodes, and this will override the credentials across all worker nodes with those available on the dispatcher node. If you already have the latest credential backup file, you should manually import it (preferred) on any self-hosted integration runtime node than using this API directly.", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Sync credentials": { + "$ref": "./examples/IntegrationRuntimes_SyncCredentials.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes": { + "get": { + "operationId": "IntegrationRuntimes_ListByWorkspace", + "summary": "List integration runtimes", + "description": "List all integration runtimes", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeListResponse" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "List integration runtimes": { + "$ref": "./examples/IntegrationRuntimes_ListByWorkspace.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/getConnectionInfo": { + "post": { + "operationId": "IntegrationRuntimeConnectionInfos_Get", + "summary": "Get integration runtime connection info", + "description": "Get connection info for an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeConnectionInfo" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get connection info": { + "$ref": "./examples/IntegrationRuntimes_GetConnectionInfo.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/start": { + "post": { + "operationId": "IntegrationRuntimes_Start", + "summary": "Start integration runtime", + "description": "Start an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeStatusResponse" + } + }, + "202": { + "description": "Accepted." + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Start integration runtime": { + "$ref": "./examples/IntegrationRuntimes_Start.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/regenerateAuthKey": { + "post": { + "operationId": "IntegrationRuntimeAuthKeys_Regenerate", + "summary": "Regenerate integration runtime authentication key", + "description": "Regenerate the authentication key for an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + }, + { + "name": "regenerateKeyParameters", + "description": "The parameters for regenerating integration runtime authentication key.", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/IntegrationRuntimeRegenerateKeyParameters" + } + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeAuthKeys" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Regenerate auth key": { + "$ref": "./examples/IntegrationRuntimes_RegenerateAuthKey.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/listAuthKeys": { + "post": { + "operationId": "IntegrationRuntimeAuthKeys_List", + "summary": "List integration runtime authentication keys", + "description": "List authentication keys in an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeAuthKeys" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "List auth keys": { + "$ref": "./examples/IntegrationRuntimes_ListAuthKeys.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/monitoringData": { + "post": { + "operationId": "IntegrationRuntimeMonitoringData_Get", + "summary": "Get integration runtime monitoring data", + "description": "Get monitoring data for an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeMonitoringData" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get monitoring data": { + "$ref": "./examples/IntegrationRuntimes_GetMonitoringData.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/stop": { + "post": { + "operationId": "IntegrationRuntimes_Stop", + "summary": "Stop integration runtime", + "description": "Stop an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Accepted." + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Stop integration runtime": { + "$ref": "./examples/IntegrationRuntimes_Stop.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/refreshObjectMetadata": { + "post": { + "operationId": "IntegrationRuntimeObjectMetadata_Refresh", + "summary": "Refresh integration runtime object metadata", + "description": "Refresh the object metadata in an integration runtime", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/SsisObjectMetadataStatusResponse" + } + }, + "202": { + "description": "Accepted." + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Refresh object metadata": { + "$ref": "./examples/IntegrationRuntimeObjectMetadata_Refresh.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/integrationRuntimes/{integrationRuntimeName}/getStatus": { + "post": { + "operationId": "IntegrationRuntimeStatus_Get", + "summary": "Get integration runtime status", + "description": "Get the integration runtime status", + "tags": [ + "IntegrationRuntime" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/IntegrationRuntimeNameParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/IntegrationRuntimeStatusResponse" + } + }, + "default": { + "description": "An error response received from the Azure Synapse service.", + "schema": { + "$ref": "#/definitions/CloudError" + } + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get status": { + "$ref": "./examples/IntegrationRuntimes_GetStatus.json" + } + } + } + } + }, + "definitions": { + "SubResource": { + "description": "Azure Synapse nested resource, which belongs to a factory.", + "properties": { + "id": { + "type": "string", + "description": "The resource identifier.", + "readOnly": true + }, + "name": { + "type": "string", + "description": "The resource name.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "The resource type.", + "readOnly": true + }, + "etag": { + "type": "string", + "description": "Etag identifies change in the resource.", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "IntegrationRuntime": { + "description": "Azure Synapse nested object which serves as a compute resource for activities.", + "type": "object", + "discriminator": "type", + "properties": { + "type": { + "description": "Type of integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeType" + }, + "description": { + "description": "Integration runtime description.", + "type": "string" + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "IntegrationRuntimeType": { + "description": "The type of integration runtime.", + "type": "string", + "enum": [ + "Managed", + "SelfHosted" + ], + "x-ms-enum": { + "name": "IntegrationRuntimeType", + "modelAsString": true + } + }, + "ManagedIntegrationRuntime": { + "x-ms-discriminator-value": "Managed", + "description": "Managed integration runtime, including managed elastic and managed dedicated integration runtimes.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/IntegrationRuntime" + } + ], + "properties": { + "state": { + "description": "Integration runtime state, only valid for managed dedicated integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeState", + "readOnly": true + }, + "typeProperties": { + "description": "Managed integration runtime properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ManagedIntegrationRuntimeTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "ManagedIntegrationRuntimeTypeProperties": { + "description": "Managed integration runtime type properties.", + "type": "object", + "properties": { + "computeProperties": { + "description": "The compute resource for managed integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeComputeProperties" + }, + "ssisProperties": { + "description": "SSIS properties for managed integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeSsisProperties" + } + } + }, + "IntegrationRuntimeComputeProperties": { + "description": "The compute resource properties for managed integration runtime.", + "type": "object", + "properties": { + "location": { + "description": "The location for managed integration runtime. The supported regions could be found on https://docs.microsoft.com/en-us/azure/data-factory/data-factory-data-movement-activities", + "type": "string" + }, + "nodeSize": { + "description": "The node size requirement to managed integration runtime.", + "type": "string" + }, + "numberOfNodes": { + "description": "The required number of nodes for managed integration runtime.", + "type": "integer", + "minimum": 1 + }, + "maxParallelExecutionsPerNode": { + "description": "Maximum parallel executions count per node for managed integration runtime.", + "type": "integer", + "minimum": 1 + }, + "dataFlowProperties": { + "description": "Data flow properties for managed integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeDataFlowProperties" + }, + "vNetProperties": { + "description": "VNet properties for managed integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeVNetProperties" + } + }, + "additionalProperties": { + "type": "object" + } + }, + "IntegrationRuntimeDataFlowProperties": { + "description": "Data flow properties for managed integration runtime.", + "type": "object", + "properties": { + "computeType": { + "description": "Compute type of the cluster which will execute data flow job.", + "type": "string", + "enum": [ + "General", + "MemoryOptimized", + "ComputeOptimized" + ], + "x-ms-enum": { + "name": "DataFlowComputeType", + "modelAsString": true + } + }, + "coreCount": { + "description": "Core count of the cluster which will execute data flow job. Supported values are: 8, 16, 32, 48, 80, 144 and 272.", + "type": "integer" + }, + "timeToLive": { + "description": "Time to live (in minutes) setting of the cluster which will execute data flow job.", + "type": "integer", + "minimum": 0 + } + }, + "additionalProperties": { + "type": "object" + } + }, + "IntegrationRuntimeVNetProperties": { + "description": "VNet properties for managed integration runtime.", + "type": "object", + "properties": { + "vNetId": { + "description": "The ID of the VNet that this integration runtime will join.", + "type": "string" + }, + "subnet": { + "description": "The name of the subnet this integration runtime will join.", + "type": "string" + }, + "publicIPs": { + "description": "Resource IDs of the public IP addresses that this integration runtime will use.", + "type": "array", + "items": { + "type": "string", + "description": "The ID of the public IP address." + } + } + }, + "additionalProperties": { + "type": "object" + } + }, + "IntegrationRuntimeSsisProperties": { + "description": "SSIS properties for managed integration runtime.", + "type": "object", + "properties": { + "catalogInfo": { + "description": "Catalog information for managed dedicated integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeSsisCatalogInfo" + }, + "licenseType": { + "description": "License type for bringing your own license scenario.", + "type": "string", + "enum": [ + "BasePrice", + "LicenseIncluded" + ], + "x-ms-enum": { + "name": "IntegrationRuntimeLicenseType", + "modelAsString": true + } + }, + "customSetupScriptProperties": { + "description": "Custom setup script properties for a managed dedicated integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeCustomSetupScriptProperties" + }, + "dataProxyProperties": { + "description": "Data proxy properties for a managed dedicated integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeDataProxyProperties" + }, + "edition": { + "description": "The edition for the SSIS Integration Runtime", + "type": "string", + "enum": [ + "Standard", + "Enterprise" + ], + "x-ms-enum": { + "name": "IntegrationRuntimeEdition", + "modelAsString": true + } + }, + "expressCustomSetupProperties": { + "description": "Custom setup without script properties for a SSIS integration runtime.", + "type": "array", + "items": { + "$ref": "#/definitions/CustomSetupBase" + } + } + }, + "additionalProperties": { + "type": "object" + } + }, + "SecretBase": { + "description": "The base definition of a secret type.", + "discriminator": "type", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Type of the secret." + } + }, + "required": [ + "type" + ] + }, + "SecureString": { + "x-ms-discriminator-value": "SecureString", + "description": "Azure Synapse secure string definition. The string value will be masked with asterisks '*' during Get or List API calls.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SecretBase" + } + ], + "properties": { + "value": { + "type": "string", + "description": "Value of secure string." + } + }, + "required": [ + "value" + ] + }, + "IntegrationRuntimeSsisCatalogInfo": { + "description": "Catalog information for managed dedicated integration runtime.", + "type": "object", + "properties": { + "catalogServerEndpoint": { + "description": "The catalog database server URL.", + "type": "string" + }, + "catalogAdminUserName": { + "description": "The administrator user name of catalog database.", + "type": "string", + "minLength": 1, + "maxLength": 128 + }, + "catalogAdminPassword": { + "description": "The password of the administrator user account of the catalog database.", + "$ref": "#/definitions/SecureString" + }, + "catalogPricingTier": { + "description": "The pricing tier for the catalog database. The valid values could be found in https://azure.microsoft.com/en-us/pricing/details/sql-database/", + "type": "string", + "enum": [ + "Basic", + "Standard", + "Premium", + "PremiumRS" + ], + "x-ms-enum": { + "name": "IntegrationRuntimeSsisCatalogPricingTier", + "modelAsString": true + } + } + }, + "additionalProperties": { + "type": "object" + } + }, + "IntegrationRuntimeCustomSetupScriptProperties": { + "description": "Custom setup script properties for a managed dedicated integration runtime.", + "type": "object", + "properties": { + "blobContainerUri": { + "description": "The URI of the Azure blob container that contains the custom setup script.", + "type": "string" + }, + "sasToken": { + "description": "The SAS token of the Azure blob container.", + "$ref": "#/definitions/SecureString" + } + } + }, + "IntegrationRuntimeDataProxyProperties": { + "description": "Data proxy properties for a managed dedicated integration runtime.", + "type": "object", + "properties": { + "connectVia": { + "description": "The self-hosted integration runtime reference.", + "$ref": "#/definitions/EntityReference" + }, + "stagingLinkedService": { + "description": "The staging linked service reference.", + "$ref": "#/definitions/EntityReference" + }, + "path": { + "description": "The path to contain the staged data in the Blob storage.", + "type": "string" + } + } + }, + "CustomSetupBase": { + "description": "The base definition of the custom setup.", + "type": "object", + "discriminator": "type", + "properties": { + "type": { + "description": "The type of custom setup.", + "type": "string" + } + }, + "required": [ + "type" + ] + }, + "CmdkeySetup": { + "description": "The custom setup of running cmdkey commands.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CustomSetupBase" + } + ], + "properties": { + "typeProperties": { + "description": "Cmdkey command custom setup type properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/CmdkeySetupTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "CmdkeySetupTypeProperties": { + "description": "Cmdkey command custom setup type properties.", + "type": "object", + "properties": { + "targetName": { + "description": "The server name of data source access.", + "type": "object" + }, + "userName": { + "description": "The user name of data source access.", + "type": "object" + }, + "password": { + "description": "The password of data source access.", + "$ref": "#/definitions/SecretBase" + } + }, + "required": [ + "targetName", + "userName", + "password" + ] + }, + "EnvironmentVariableSetup": { + "description": "The custom setup of setting environment variable.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CustomSetupBase" + } + ], + "properties": { + "typeProperties": { + "description": "Add environment variable type properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/EnvironmentVariableSetupTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "EnvironmentVariableSetupTypeProperties": { + "description": "Environment variable custom setup type properties.", + "type": "object", + "properties": { + "variableName": { + "description": "The name of the environment variable.", + "type": "string" + }, + "variableValue": { + "description": "The value of the environment variable.", + "type": "string" + } + }, + "required": [ + "variableName", + "variableValue" + ] + }, + "ComponentSetup": { + "description": "The custom setup of installing 3rd party components.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/CustomSetupBase" + } + ], + "properties": { + "typeProperties": { + "description": "Install 3rd party component type properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/LicensedComponentSetupTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "LicensedComponentSetupTypeProperties": { + "description": "Installation of licensed component setup type properties.", + "type": "object", + "properties": { + "componentName": { + "description": "The name of the 3rd party component.", + "type": "string" + }, + "licenseKey": { + "description": "The license key to activate the component.", + "$ref": "#/definitions/SecretBase" + } + }, + "required": [ + "componentName" + ] + }, + "EntityReference": { + "description": "The entity reference.", + "type": "object", + "properties": { + "type": { + "description": "The type of this referenced entity.", + "type": "string", + "enum": [ + "IntegrationRuntimeReference", + "LinkedServiceReference" + ], + "x-ms-enum": { + "name": "IntegrationRuntimeEntityReferenceType", + "modelAsString": true + } + }, + "referenceName": { + "description": "The name of this referenced entity.", + "type": "string" + } + } + }, + "SelfHostedIntegrationRuntime": { + "x-ms-discriminator-value": "SelfHosted", + "description": "Self-hosted integration runtime.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/IntegrationRuntime" + } + ], + "properties": { + "typeProperties": { + "description": "When this property is not null, means this is a linked integration runtime. The property is used to access original integration runtime.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SelfHostedIntegrationRuntimeTypeProperties" + } + } + }, + "SelfHostedIntegrationRuntimeTypeProperties": { + "description": "The self-hosted integration runtime properties.", + "type": "object", + "properties": { + "linkedInfo": { + "$ref": "#/definitions/LinkedIntegrationRuntimeType" + } + } + }, + "LinkedIntegrationRuntimeType": { + "description": "The base definition of a linked integration runtime.", + "discriminator": "authorizationType", + "type": "object", + "properties": { + "authorizationType": { + "type": "string", + "description": "The authorization type for integration runtime sharing." + } + }, + "required": [ + "authorizationType" + ] + }, + "LinkedIntegrationRuntimeKeyAuthorization": { + "x-ms-discriminator-value": "Key", + "description": "The key authorization type integration runtime.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedIntegrationRuntimeType" + } + ], + "properties": { + "key": { + "description": "The key used for authorization.", + "$ref": "#/definitions/SecureString" + } + }, + "required": [ + "key" + ] + }, + "LinkedIntegrationRuntimeRbacAuthorization": { + "x-ms-discriminator-value": "RBAC", + "description": "The role based access control (RBAC) authorization type integration runtime.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/LinkedIntegrationRuntimeType" + } + ], + "properties": { + "resourceId": { + "description": "The resource identifier of the integration runtime to be shared.", + "type": "string" + } + }, + "required": [ + "resourceId" + ] + }, + "IntegrationRuntimeStatus": { + "description": "Integration runtime status.", + "type": "object", + "discriminator": "type", + "properties": { + "type": { + "description": "Type of integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeType" + }, + "dataFactoryName": { + "description": "The workspace name which the integration runtime belong to.", + "type": "string", + "readOnly": true + }, + "state": { + "description": "The state of integration runtime.", + "$ref": "#/definitions/IntegrationRuntimeState", + "readOnly": true + } + }, + "additionalProperties": { + "type": "object" + }, + "required": [ + "type" + ] + }, + "IntegrationRuntimeState": { + "description": "The state of integration runtime.", + "type": "string", + "readOnly": true, + "enum": [ + "Initial", + "Stopped", + "Started", + "Starting", + "Stopping", + "NeedRegistration", + "Online", + "Limited", + "Offline", + "AccessDenied" + ], + "x-ms-enum": { + "name": "IntegrationRuntimeState", + "modelAsString": true + } + }, + "ManagedIntegrationRuntimeStatus": { + "x-ms-discriminator-value": "Managed", + "description": "Managed integration runtime status.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/IntegrationRuntimeStatus" + } + ], + "properties": { + "typeProperties": { + "description": "Managed integration runtime status type properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ManagedIntegrationRuntimeStatusTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "ManagedIntegrationRuntimeStatusTypeProperties": { + "description": "Managed integration runtime status type properties.", + "type": "object", + "properties": { + "createTime": { + "description": "The time at which the integration runtime was created, in ISO8601 format.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "nodes": { + "description": "The list of nodes for managed integration runtime.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedIntegrationRuntimeNode" + }, + "readOnly": true + }, + "otherErrors": { + "description": "The errors that occurred on this integration runtime.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedIntegrationRuntimeError" + }, + "readOnly": true + }, + "lastOperation": { + "description": "The last operation result that occurred on this integration runtime.", + "$ref": "#/definitions/ManagedIntegrationRuntimeOperationResult", + "readOnly": true + } + } + }, + "ManagedIntegrationRuntimeOperationResult": { + "description": "Properties of managed integration runtime operation result.", + "properties": { + "type": { + "description": "The operation type. Could be start or stop.", + "type": "string", + "readOnly": true + }, + "startTime": { + "description": "The start time of the operation.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "result": { + "description": "The operation result.", + "type": "string", + "readOnly": true + }, + "errorCode": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "parameters": { + "description": "Managed integration runtime error parameters.", + "type": "array", + "items": { + "type": "string", + "description": "Error message parameters." + }, + "readOnly": true + }, + "activityId": { + "description": "The activity id for the operation request.", + "type": "string", + "readOnly": true + } + }, + "additionalProperties": { + "type": "object" + } + }, + "ManagedIntegrationRuntimeNode": { + "description": "Properties of integration runtime node.", + "properties": { + "nodeId": { + "description": "The managed integration runtime node id.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "The managed integration runtime node status.", + "type": "string", + "readOnly": true, + "enum": [ + "Starting", + "Available", + "Recycling", + "Unavailable" + ], + "x-ms-enum": { + "name": "ManagedIntegrationRuntimeNodeStatus", + "modelAsString": true + } + }, + "errors": { + "description": "The errors that occurred on this integration runtime node.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedIntegrationRuntimeError" + } + } + }, + "additionalProperties": { + "type": "object" + } + }, + "ManagedIntegrationRuntimeError": { + "description": "Error definition for managed integration runtime.", + "properties": { + "time": { + "description": "The time when the error occurred.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "code": { + "description": "Error code.", + "type": "string", + "readOnly": true + }, + "parameters": { + "description": "Managed integration runtime error parameters.", + "type": "array", + "items": { + "type": "string", + "description": "Error message parameters." + }, + "readOnly": true + }, + "message": { + "description": "Error message.", + "type": "string", + "readOnly": true + } + }, + "additionalProperties": { + "type": "object" + } + }, + "SelfHostedIntegrationRuntimeStatus": { + "x-ms-discriminator-value": "SelfHosted", + "description": "Self-hosted integration runtime status.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/IntegrationRuntimeStatus" + } + ], + "properties": { + "typeProperties": { + "description": "Self-hosted integration runtime status type properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/SelfHostedIntegrationRuntimeStatusTypeProperties" + } + }, + "required": [ + "typeProperties" + ] + }, + "SelfHostedIntegrationRuntimeStatusTypeProperties": { + "description": "Self-hosted integration runtime status type properties.", + "type": "object", + "properties": { + "createTime": { + "description": "The time at which the integration runtime was created, in ISO8601 format.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "taskQueueId": { + "description": "The task queue id of the integration runtime.", + "type": "string", + "readOnly": true + }, + "internalChannelEncryption": { + "description": "It is used to set the encryption mode for node-node communication channel (when more than 2 self-hosted integration runtime nodes exist).", + "type": "string", + "readOnly": true, + "enum": [ + "NotSet", + "SslEncrypted", + "NotEncrypted" + ], + "x-ms-enum": { + "name": "IntegrationRuntimeInternalChannelEncryptionMode", + "modelAsString": true + } + }, + "version": { + "description": "Version of the integration runtime.", + "type": "string", + "readOnly": true + }, + "nodes": { + "description": "The list of nodes for this integration runtime.", + "type": "array", + "items": { + "$ref": "#/definitions/SelfHostedIntegrationRuntimeNode" + } + }, + "scheduledUpdateDate": { + "description": "The date at which the integration runtime will be scheduled to update, in ISO8601 format.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "updateDelayOffset": { + "description": "The time in the date scheduled by service to update the integration runtime, e.g., PT03H is 3 hours", + "type": "string", + "readOnly": true + }, + "localTimeZoneOffset": { + "description": "The local time zone offset in hours.", + "type": "string", + "readOnly": true + }, + "capabilities": { + "description": "Object with additional information about integration runtime capabilities.", + "type": "object", + "readOnly": true, + "additionalProperties": { + "type": "string" + } + }, + "serviceUrls": { + "description": "The URLs for the services used in integration runtime backend service.", + "type": "array", + "items": { + "description": "The service URL", + "type": "string" + }, + "readOnly": true + }, + "autoUpdate": { + "description": "Whether Self-hosted integration runtime auto update has been turned on.", + "$ref": "#/definitions/IntegrationRuntimeAutoUpdate", + "readOnly": true + }, + "versionStatus": { + "description": "Status of the integration runtime version.", + "type": "string", + "readOnly": true + }, + "links": { + "description": "The list of linked integration runtimes that are created to share with this integration runtime.", + "type": "array", + "items": { + "$ref": "#/definitions/LinkedIntegrationRuntime" + } + }, + "pushedVersion": { + "description": "The version that the integration runtime is going to update to.", + "type": "string", + "readOnly": true + }, + "latestVersion": { + "description": "The latest version on download center.", + "type": "string", + "readOnly": true + }, + "autoUpdateETA": { + "description": "The estimated time when the self-hosted integration runtime will be updated.", + "type": "string", + "format": "date-time", + "readOnly": true + } + } + }, + "IntegrationRuntimeAutoUpdate": { + "description": "The state of integration runtime auto update.", + "type": "string", + "enum": [ + "On", + "Off" + ], + "x-ms-enum": { + "name": "IntegrationRuntimeAutoUpdate", + "modelAsString": true + } + }, + "LinkedIntegrationRuntime": { + "description": "The linked integration runtime information.", + "type": "object", + "properties": { + "name": { + "description": "The name of the linked integration runtime.", + "type": "string", + "readOnly": true + }, + "subscriptionId": { + "description": "The subscription ID for which the linked integration runtime belong to.", + "type": "string", + "readOnly": true + }, + "dataFactoryName": { + "description": "The name of the workspace for which the linked integration runtime belong to.", + "type": "string", + "readOnly": true + }, + "dataFactoryLocation": { + "description": "The location of the workspace for which the linked integration runtime belong to.", + "type": "string", + "readOnly": true + }, + "createTime": { + "description": "The creating time of the linked integration runtime.", + "type": "string", + "format": "date-time", + "readOnly": true + } + } + }, + "SelfHostedIntegrationRuntimeNode": { + "description": "Properties of Self-hosted integration runtime node.", + "properties": { + "nodeName": { + "description": "Name of the integration runtime node.", + "type": "string", + "readOnly": true + }, + "machineName": { + "description": "Machine name of the integration runtime node.", + "type": "string", + "readOnly": true + }, + "hostServiceUri": { + "description": "URI for the host machine of the integration runtime.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "Status of the integration runtime node.", + "type": "string", + "readOnly": true, + "enum": [ + "NeedRegistration", + "Online", + "Limited", + "Offline", + "Upgrading", + "Initializing", + "InitializeFailed" + ], + "x-ms-enum": { + "name": "SelfHostedIntegrationRuntimeNodeStatus", + "modelAsString": true + } + }, + "capabilities": { + "description": "The integration runtime capabilities dictionary", + "type": "object", + "readOnly": true, + "additionalProperties": { + "type": "string" + } + }, + "versionStatus": { + "description": "Status of the integration runtime node version.", + "type": "string", + "readOnly": true + }, + "version": { + "description": "Version of the integration runtime node.", + "type": "string", + "readOnly": true + }, + "registerTime": { + "description": "The time at which the integration runtime node was registered in ISO8601 format.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "lastConnectTime": { + "description": "The most recent time at which the integration runtime was connected in ISO8601 format.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "expiryTime": { + "description": "The time at which the integration runtime will expire in ISO8601 format.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "lastStartTime": { + "description": "The time the node last started up.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "lastStopTime": { + "description": "The integration runtime node last stop time.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "lastUpdateResult": { + "description": "The result of the last integration runtime node update.", + "type": "string", + "enum": [ + "None", + "Succeed", + "Fail" + ], + "x-ms-enum": { + "name": "IntegrationRuntimeUpdateResult", + "modelAsString": true + }, + "readOnly": true + }, + "lastStartUpdateTime": { + "description": "The last time for the integration runtime node update start.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "lastEndUpdateTime": { + "description": "The last time for the integration runtime node update end.", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "isActiveDispatcher": { + "description": "Indicates whether this node is the active dispatcher for integration runtime requests.", + "type": "boolean", + "readOnly": true + }, + "concurrentJobsLimit": { + "description": "Maximum concurrent jobs on the integration runtime node.", + "type": "integer", + "readOnly": true + }, + "maxConcurrentJobs": { + "description": "The maximum concurrent jobs in this integration runtime.", + "type": "integer", + "readOnly": true + } + }, + "additionalProperties": { + "type": "object" + } + }, + "IntegrationRuntimeConnectionInfo": { + "description": "Connection information for encrypting the on-premises data source credentials.", + "type": "object", + "properties": { + "serviceToken": { + "description": "The token generated in service. Callers use this token to authenticate to integration runtime.", + "type": "string", + "readOnly": true + }, + "identityCertThumbprint": { + "description": "The integration runtime SSL certificate thumbprint. Click-Once application uses it to do server validation.", + "type": "string", + "readOnly": true + }, + "hostServiceUri": { + "description": "The on-premises integration runtime host URL.", + "type": "string", + "readOnly": true + }, + "version": { + "description": "The integration runtime version.", + "type": "string", + "readOnly": true + }, + "publicKey": { + "description": "The public key for encrypting a credential when transferring the credential to the integration runtime.", + "type": "string", + "readOnly": true + }, + "isIdentityCertExprired": { + "description": "Whether the identity certificate is expired.", + "type": "boolean", + "readOnly": true + } + }, + "additionalProperties": { + "type": "object" + } + }, + "IntegrationRuntimeRegenerateKeyParameters": { + "description": "Parameters to regenerate the authentication key.", + "type": "object", + "properties": { + "keyName": { + "description": "The name of the authentication key to regenerate.", + "type": "string", + "enum": [ + "authKey1", + "authKey2" + ], + "x-ms-enum": { + "name": "IntegrationRuntimeAuthKeyName", + "modelAsString": true + } + } + } + }, + "IntegrationRuntimeAuthKeys": { + "description": "The integration runtime authentication keys.", + "type": "object", + "properties": { + "authKey1": { + "type": "string", + "description": "The primary integration runtime authentication key." + }, + "authKey2": { + "type": "string", + "description": "The secondary integration runtime authentication key." + } + } + }, + "IntegrationRuntimeMonitoringData": { + "description": "Get monitoring data response.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Integration runtime name." + }, + "nodes": { + "type": "array", + "description": "Integration runtime node monitoring data.", + "items": { + "$ref": "#/definitions/IntegrationRuntimeNodeMonitoringData" + } + } + } + }, + "IntegrationRuntimeNodeMonitoringData": { + "description": "Monitoring data for integration runtime node.", + "type": "object", + "properties": { + "nodeName": { + "description": "Name of the integration runtime node.", + "type": "string", + "readOnly": true + }, + "availableMemoryInMB": { + "description": "Available memory (MB) on the integration runtime node.", + "type": "integer", + "readOnly": true + }, + "cpuUtilization": { + "description": "CPU percentage on the integration runtime node.", + "type": "integer", + "readOnly": true + }, + "concurrentJobsLimit": { + "description": "Maximum concurrent jobs on the integration runtime node.", + "type": "integer", + "readOnly": true + }, + "concurrentJobsRunning": { + "description": "The number of jobs currently running on the integration runtime node.", + "type": "integer", + "readOnly": true + }, + "maxConcurrentJobs": { + "description": "The maximum concurrent jobs in this integration runtime.", + "type": "integer", + "readOnly": true + }, + "sentBytes": { + "description": "Sent bytes on the integration runtime node.", + "type": "number", + "readOnly": true + }, + "receivedBytes": { + "description": "Received bytes on the integration runtime node.", + "type": "number", + "readOnly": true + } + }, + "additionalProperties": { + "type": "object" + } + }, + "IntegrationRuntimeNodeIpAddress": { + "type": "object", + "description": "The IP address of self-hosted integration runtime node.", + "properties": { + "ipAddress": { + "description": "The IP address of self-hosted integration runtime node.", + "type": "string", + "readOnly": true + } + } + }, + "SsisObjectMetadataListResponse": { + "type": "object", + "description": "A list of SSIS object metadata.", + "properties": { + "value": { + "type": "array", + "description": "List of SSIS object metadata.", + "items": { + "$ref": "#/definitions/SsisObjectMetadata" + } + }, + "nextLink": { + "type": "string", + "description": "The link to the next page of results, if any remaining results exist." + } + } + }, + "SsisObjectMetadata": { + "type": "object", + "description": "SSIS object metadata.", + "discriminator": "type", + "properties": { + "type": { + "description": "Type of metadata.", + "$ref": "#/definitions/SsisObjectMetadataType" + }, + "id": { + "type": "integer", + "format": "int64", + "description": "Metadata id." + }, + "name": { + "type": "string", + "description": "Metadata name." + }, + "description": { + "type": "string", + "description": "Metadata description." + } + }, + "required": [ + "type" + ] + }, + "SsisObjectMetadataType": { + "description": "The type of SSIS object metadata.", + "type": "string", + "enum": [ + "Folder", + "Project", + "Package", + "Environment" + ], + "x-ms-enum": { + "name": "SsisObjectMetadataType", + "modelAsString": true + } + }, + "SsisFolder": { + "x-ms-discriminator-value": "Folder", + "type": "object", + "description": "Ssis folder.", + "allOf": [ + { + "$ref": "#/definitions/SsisObjectMetadata" + } + ] + }, + "SsisProject": { + "x-ms-discriminator-value": "Project", + "type": "object", + "description": "Ssis project.", + "allOf": [ + { + "$ref": "#/definitions/SsisObjectMetadata" + } + ], + "properties": { + "folderId": { + "type": "integer", + "format": "int64", + "description": "Folder id which contains project." + }, + "version": { + "type": "integer", + "format": "int64", + "description": "Project version." + }, + "environmentRefs": { + "type": "array", + "description": "Environment reference in project", + "items": { + "$ref": "#/definitions/SsisEnvironmentReference" + } + }, + "parameters": { + "type": "array", + "description": "Parameters in project", + "items": { + "$ref": "#/definitions/SsisParameter" + } + } + } + }, + "SsisPackage": { + "x-ms-discriminator-value": "Package", + "type": "object", + "description": "Ssis Package.", + "allOf": [ + { + "$ref": "#/definitions/SsisObjectMetadata" + } + ], + "properties": { + "folderId": { + "type": "integer", + "format": "int64", + "description": "Folder id which contains package." + }, + "projectVersion": { + "type": "integer", + "format": "int64", + "description": "Project version which contains package." + }, + "projectId": { + "type": "integer", + "format": "int64", + "description": "Project id which contains package." + }, + "parameters": { + "type": "array", + "description": "Parameters in package", + "items": { + "$ref": "#/definitions/SsisParameter" + } + } + } + }, + "SsisEnvironment": { + "x-ms-discriminator-value": "Environment", + "type": "object", + "description": "Ssis environment.", + "allOf": [ + { + "$ref": "#/definitions/SsisObjectMetadata" + } + ], + "properties": { + "folderId": { + "type": "integer", + "format": "int64", + "description": "Folder id which contains environment." + }, + "variables": { + "type": "array", + "description": "Variable in environment", + "items": { + "$ref": "#/definitions/SsisVariable" + } + } + } + }, + "SsisParameter": { + "type": "object", + "description": "Ssis parameter.", + "properties": { + "id": { + "type": "integer", + "format": "int64", + "description": "Parameter id." + }, + "name": { + "type": "string", + "description": "Parameter name." + }, + "description": { + "type": "string", + "description": "Parameter description." + }, + "dataType": { + "type": "string", + "description": "Parameter type." + }, + "required": { + "type": "boolean", + "description": "Whether parameter is required." + }, + "sensitive": { + "type": "boolean", + "description": "Whether parameter is sensitive." + }, + "designDefaultValue": { + "type": "string", + "description": "Design default value of parameter." + }, + "defaultValue": { + "type": "string", + "description": "Default value of parameter." + }, + "sensitiveDefaultValue": { + "type": "string", + "description": "Default sensitive value of parameter." + }, + "valueType": { + "type": "string", + "description": "Parameter value type." + }, + "valueSet": { + "type": "boolean", + "description": "Parameter value set." + }, + "variable": { + "type": "string", + "description": "Parameter reference variable." + } + } + }, + "SsisVariable": { + "type": "object", + "description": "Ssis variable.", + "properties": { + "id": { + "type": "integer", + "format": "int64", + "description": "Variable id." + }, + "name": { + "type": "string", + "description": "Variable name." + }, + "description": { + "type": "string", + "description": "Variable description." + }, + "dataType": { + "type": "string", + "description": "Variable type." + }, + "sensitive": { + "type": "boolean", + "description": "Whether variable is sensitive." + }, + "value": { + "type": "string", + "description": "Variable value." + }, + "sensitiveValue": { + "type": "string", + "description": "Variable sensitive value." + } + } + }, + "SsisEnvironmentReference": { + "type": "object", + "description": "Ssis environment reference.", + "properties": { + "id": { + "type": "integer", + "format": "int64", + "description": "Environment reference id." + }, + "environmentFolderName": { + "type": "string", + "description": "Environment folder name." + }, + "environmentName": { + "type": "string", + "description": "Environment name." + }, + "referenceType": { + "type": "string", + "description": "Reference type" + } + } + }, + "CloudError": { + "x-ms-external": true, + "description": "The object that defines the structure of an Azure Synapse error response.", + "type": "object", + "properties": { + "error": { + "x-ms-client-flatten": true, + "description": "Error data", + "$ref": "#/definitions/CloudErrorBody" + } + }, + "required": [ + "error" + ] + }, + "CloudErrorBody": { + "x-ms-external": true, + "description": "The object that defines the structure of an Azure Synapse error.", + "type": "object", + "properties": { + "code": { + "description": "Error code.", + "type": "string" + }, + "message": { + "description": "Error message.", + "type": "string" + }, + "target": { + "description": "Property name/path in request associated with error.", + "type": "string" + }, + "details": { + "description": "Array with additional error details.", + "type": "array", + "items": { + "$ref": "#/definitions/CloudError" + } + } + }, + "required": [ + "code", + "message" + ] + }, + "UpdateIntegrationRuntimeRequest": { + "description": "Update integration runtime request.", + "type": "object", + "properties": { + "autoUpdate": { + "description": "Enables or disables the auto-update feature of the self-hosted integration runtime. See https://go.microsoft.com/fwlink/?linkid=854189.", + "$ref": "#/definitions/IntegrationRuntimeAutoUpdate" + }, + "updateDelayOffset": { + "description": "The time offset (in hours) in the day, e.g., PT03H is 3 hours. The integration runtime auto update will happen on that time.", + "type": "string" + } + } + }, + "IntegrationRuntimeResource": { + "description": "Integration runtime resource type.", + "allOf": [ + { + "$ref": "#/definitions/SubResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/IntegrationRuntime", + "description": "Integration runtime properties." + } + }, + "required": [ + "properties" + ] + }, + "GetSsisObjectMetadataRequest": { + "type": "object", + "description": "The request payload of get SSIS object metadata.", + "properties": { + "metadataPath": { + "type": "string", + "description": "Metadata path." + } + } + }, + "UpdateIntegrationRuntimeNodeRequest": { + "description": "Update integration runtime node request.", + "type": "object", + "properties": { + "concurrentJobsLimit": { + "description": "The number of concurrent jobs permitted to run on the integration runtime node. Values between 1 and maxConcurrentJobs(inclusive) are allowed.", + "type": "integer", + "minimum": 1 + } + } + }, + "IntegrationRuntimeListResponse": { + "description": "A list of integration runtime resources.", + "type": "object", + "required": [ + "value" + ], + "properties": { + "value": { + "type": "array", + "description": "List of integration runtimes.", + "items": { + "$ref": "#/definitions/IntegrationRuntimeResource" + } + }, + "nextLink": { + "description": "The link to the next page of results, if any remaining results exist.", + "type": "string" + } + } + }, + "IntegrationRuntimeStatusResponse": { + "description": "Integration runtime status response.", + "properties": { + "name": { + "type": "string", + "description": "The integration runtime name.", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/IntegrationRuntimeStatus", + "description": "Integration runtime properties." + } + }, + "required": [ + "properties" + ] + }, + "SsisObjectMetadataStatusResponse": { + "type": "object", + "description": "The status of the operation.", + "properties": { + "status": { + "type": "string", + "description": "The status of the operation." + }, + "name": { + "type": "string", + "description": "The operation name." + }, + "properties": { + "type": "string", + "description": "The operation properties." + }, + "error": { + "type": "string", + "description": "The operation error message." + } + } + } + }, + "parameters": { + "IntegrationRuntimeNameParameter": { + "name": "integrationRuntimeName", + "type": "string", + "required": true, + "in": "path", + "description": "Integration runtime name", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/operations.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/operations.json new file mode 100644 index 000000000000..6095876908ae --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/operations.json @@ -0,0 +1,390 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-06-01-preview", + "title": "SynapseManagementClient", + "description": "Azure Synapse Analytics APIs" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "type": "oauth2", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "paths": { + "/providers/Microsoft.Synapse/operations": { + "get": { + "operationId": "Operations_List", + "summary": "All operations", + "description": "Get all available operations", + "tags": [ + "Operations" + ], + "deprecated": false, + "consumes": [], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "schema": { + "type": "array", + "items": { + "$ref": "#/definitions/AvailableRpOperation" + } + }, + "description": "" + } + }, + "x-ms-examples": { + "Get available operations": { + "$ref": "./examples/GetAvailableOperations.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/operationResults/{operationId}": { + "get": { + "operationId": "Operations_GetLocationHeaderResult", + "summary": "Get operation result", + "description": "Get the result of an operation", + "tags": [ + "Operations" + ], + "deprecated": false, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "operationId", + "description": "Operation ID", + "required": true + } + ], + "responses": { + "200": { + "description": "" + }, + "204": { + "description": "" + }, + "default": { + "schema": { + "$ref": "./workspace.json#/definitions/ErrorContract" + }, + "description": "" + } + }, + "x-ms-examples": { + "Get location header result": { + "$ref": "./examples/GetLocationHeader.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/operationStatuses/{operationId}": { + "get": { + "operationId": "Operations_GetAzureAsyncHeaderResult", + "summary": "Get operation status", + "description": "Get the status of an operation", + "tags": [ + "Operations" + ], + "deprecated": false, + "consumes": [], + "produces": [ + "application/json" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "operationId", + "description": "Operation ID", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/OperationResource" + }, + "description": "" + }, + "404": { + "description": "" + }, + "500": { + "schema": { + "$ref": "./workspace.json#/definitions/ErrorContract" + }, + "description": "" + } + }, + "x-ms-examples": { + "Get azure async operation header result": { + "$ref": "./examples/GetAzureAsyncOperationHeader.json" + } + } + } + } + }, + "definitions": { + "AvailableRpOperation": { + "type": "object", + "description": "An operation that is available in this resource provider", + "properties": { + "display": { + "$ref": "#/definitions/AvailableRpOperationDisplayInfo", + "description": "Display properties of the operation" + }, + "isDataAction": { + "type": "string", + "description": "Whether this operation is a data action" + }, + "name": { + "type": "string", + "description": "Operation name" + }, + "properties": { + "$ref": "#/definitions/OperationMetaPropertyInfo", + "description": "Operation properties", + "x-ms-client-flatten": true + }, + "origin": { + "type": "string", + "description": "Operation origin" + } + } + }, + "OperationResource": { + "type": "object", + "description": "An operation", + "properties": { + "id": { + "type": "string", + "description": "Operation ID" + }, + "name": { + "type": "string", + "description": "Operation name" + }, + "status": { + "enum": [ + "InProgress", + "Succeeded", + "Failed", + "Canceled" + ], + "description": "Operation status", + "type": "string", + "x-ms-enum": { + "name": "OperationStatus", + "modelAsString": true + } + }, + "properties": { + "type": "object", + "description": "Operation properties", + "x-ms-client-flatten": true + }, + "error": { + "$ref": "./workspace.json#/definitions/ErrorDetail", + "description": "Errors from the operation" + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "Operation start time" + }, + "endTime": { + "type": "string", + "format": "date-time", + "description": "Operation start time" + }, + "percentComplete": { + "type": "number", + "description": "Completion percentage of the operation" + } + } + }, + "AvailableRpOperationDisplayInfo": { + "type": "object", + "description": "Description of an available operation", + "properties": { + "description": { + "type": "string", + "description": "Operation description" + }, + "resource": { + "type": "string", + "description": "Resource type" + }, + "provider": { + "type": "string", + "description": "Resource provider name" + }, + "operation": { + "type": "string", + "description": "Operation name" + } + } + }, + "OperationMetaPropertyInfo": { + "type": "object", + "description": "What is this?", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/OperationMetaServiceSpecification", + "description": "Operation service specification" + } + } + }, + "OperationMetaServiceSpecification": { + "type": "object", + "description": "What is this?", + "properties": { + "metricSpecifications": { + "type": "array", + "description": "Service metric specifications", + "items": { + "$ref": "#/definitions/OperationMetaMetricSpecification" + } + }, + "logSpecifications": { + "type": "array", + "description": "Service log specifications", + "items": { + "$ref": "#/definitions/OperationMetaLogSpecification" + } + } + } + }, + "OperationMetaMetricSpecification": { + "type": "object", + "description": "What is this?", + "properties": { + "sourceMdmNamespace": { + "type": "string", + "description": "The source MDM namespace" + }, + "displayName": { + "type": "string", + "description": "Metric display name" + }, + "name": { + "type": "string", + "description": "Metric unique name" + }, + "aggregationType": { + "type": "string", + "description": "Metric aggregation type" + }, + "displayDescription": { + "type": "string", + "description": "Metric description" + }, + "sourceMdmAccount": { + "type": "string", + "description": "The source MDM account" + }, + "enableRegionalMdmAccount": { + "type": "boolean", + "description": "Whether the regional MDM account is enabled" + }, + "unit": { + "type": "string", + "description": "Metric units" + }, + "dimensions": { + "type": "array", + "description": "Metric dimensions", + "items": { + "$ref": "#/definitions/OperationMetaMetricDimensionSpecification" + } + }, + "supportsInstanceLevelAggregation": { + "type": "boolean", + "description": "Whether the metric supports instance-level aggregation" + }, + "metricFilterPattern": { + "type": "string", + "description": "Metric filter" + } + } + }, + "OperationMetaLogSpecification": { + "type": "object", + "description": "What is this?", + "properties": { + "displayName": { + "type": "string", + "description": "Log display name" + }, + "blobDuration": { + "type": "string", + "description": "Time range the log covers" + }, + "name": { + "type": "string", + "description": "Log unique name" + } + } + }, + "OperationMetaMetricDimensionSpecification": { + "type": "object", + "description": "What is this?", + "properties": { + "displayName": { + "type": "string", + "description": "Dimension display name" + }, + "name": { + "type": "string", + "description": "Dimension unique name" + }, + "toBeExportedForShoebox": { + "type": "boolean", + "description": "Whether this metric should be exported for Shoebox" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/privateEndpointConnections.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/privateEndpointConnections.json new file mode 100644 index 000000000000..77a31fdda411 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/privateEndpointConnections.json @@ -0,0 +1,337 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-06-01-preview", + "title": "SynapseManagementClient", + "description": "Azure Synapse Analytics APIs" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "type": "oauth2", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Gets a private endpoint connection.", + "operationId": "PrivateEndpointConnections_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + } + ], + "consumes": [], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "Private endpoint connection" + }, + "default": { + "schema": { + "$ref": "./workspace.json#/definitions/ErrorContract" + }, + "description": "" + } + }, + "x-ms-examples": { + "Get private endpoint connection": { + "$ref": "./examples/GetPrivateEndpointConnection.json" + } + } + }, + "put": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Approve or reject a private endpoint connection.", + "operationId": "PrivateEndpointConnections_Create", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "responses": { + "201": { + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "Private endpoint connection" + }, + "200": { + "schema": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "description": "Private endpoint connection" + }, + "default": { + "schema": { + "$ref": "./workspace.json#/definitions/ErrorContract" + }, + "description": "" + } + }, + "x-ms-examples": { + "Approve private endpoint connection": { + "$ref": "./examples/ApprovePrivateEndpointConnection.json" + } + } + }, + "delete": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Delete a private endpoint connection.", + "operationId": "PrivateEndpointConnections_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The name of the private endpoint connection.", + "required": true, + "type": "string" + } + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "responses": { + "202": { + "schema": { + "$ref": "./operations.json#/definitions/OperationResource" + }, + "description": "Operation details" + }, + "204": { + "description": "Deletion completed" + }, + "default": { + "schema": { + "$ref": "./workspace.json#/definitions/ErrorContract" + }, + "description": "" + } + }, + "x-ms-examples": { + "Delete private endpoint connection": { + "$ref": "./examples/DeletePrivateEndpointConnection.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/privateEndpointConnections": { + "get": { + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Lists private endpoint connection in workspace.", + "operationId": "PrivateEndpointConnections_List", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + } + ], + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionList" + }, + "description": "Private endpoint connection" + }, + "default": { + "schema": { + "$ref": "./workspace.json#/definitions/ErrorContract" + }, + "description": "" + } + }, + "x-ms-examples": { + "List private endpoint connections in workspace": { + "$ref": "./examples/ListPrivateEndpointConnections.json" + } + } + } + } + }, + "definitions": { + "PrivateEndpointConnectionList": { + "description": "A list of private endpoint connections", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateEndpointConnection": { + "description": "A private endpoint connection", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "description": "Private endpoint connection properties.", + "x-ms-client-flatten": true + } + } + }, + "PrivateEndpointConnectionProperties": { + "description": "Properties of a private endpoint connection.", + "type": "object", + "properties": { + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "The private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "Connection state of the private endpoint connection." + }, + "provisioningState": { + "description": "Provisioning state of the private endpoint connection.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateEndpoint": { + "description": "Private endpoint details", + "type": "object", + "properties": { + "id": { + "description": "Resource id of the private endpoint.", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "PrivateLinkServiceConnectionState": { + "description": "Connection state details of the private endpoint", + "type": "object", + "properties": { + "status": { + "description": "The private link service connection status.", + "type": "string", + "enum": [ + "Approved", + "Pending", + "Rejected", + "Disconnected" + ] + }, + "description": { + "description": "The private link service connection description.", + "type": "string" + }, + "actionsRequired": { + "description": "The actions required for private link service connection.", + "type": "string", + "readOnly": true + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/privateLinkResources.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/privateLinkResources.json new file mode 100644 index 000000000000..8479ec512d4f --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/privateLinkResources.json @@ -0,0 +1,187 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-06-01-preview", + "title": "SynapseManagementClient", + "description": "Azure Synapse Analytics APIs" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "type": "oauth2", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/privateLinkResources": { + "get": { + "operationId": "PrivateLinkResources_List", + "summary": "Private Link Resources", + "description": "Get all private link resources for a workspaces", + "tags": [ + "PrivateLinkResources" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + } + ], + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + }, + "description": "List of private link resources" + } + }, + "x-ms-examples": { + "Get private link resources for workspace": { + "$ref": "./examples/ListPrivateLinkResources.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/privateLinkResources/{privateLinkResourceName}": { + "get": { + "operationId": "PrivateLinkResources_Get", + "summary": "Get Private Link Resource", + "description": "Get private link resource in workspace", + "tags": [ + "PrivateLinkResources" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "$ref": "#/parameters/privateLinkResourceNameParameter" + } + ], + "consumes": [], + "produces": [ + "application/json" + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/PrivateLinkResource" + }, + "description": "Private link resource details" + } + }, + "x-ms-examples": { + "Get private link resources for workspace": { + "$ref": "./examples/GetPrivateLinkResource.json" + } + } + } + } + }, + "definitions": { + "PrivateLinkResourceListResult": { + "description": "A list of private link resources", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "PrivateLinkResource": { + "description": "A private link resource", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "The private link resource properties.", + "readOnly": true + } + } + }, + "PrivateLinkResourceProperties": { + "description": "Properties of a private link resource.", + "type": "object", + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true, + "description": "Required DNS zone names of the the private link resource." + } + } + } + }, + "parameters": { + "privateLinkResourceNameParameter": { + "name": "privateLinkResourceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private link resource", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/sqlPool.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/sqlPool.json new file mode 100644 index 000000000000..5d40707bd2ae --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/sqlPool.json @@ -0,0 +1,4464 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-06-01-preview", + "title": "SynapseManagementClient", + "description": "Azure Synapse Analytics APIs" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "type": "oauth2", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}": { + "get": { + "operationId": "SqlPools_Get", + "summary": "Get SQL pool", + "description": "Get SQL pool properties", + "tags": [ + "SqlPools" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/SqlPool" + }, + "description": "OK" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get a SQL Analytics pool": { + "$ref": "./examples/GetSqlPool.json" + } + } + }, + "patch": { + "operationId": "SqlPools_Update", + "summary": "Update SQL pool", + "description": "Apply a partial update to a SQL pool", + "tags": [ + "SqlPools" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "schema": { + "$ref": "#/definitions/SqlPoolPatchInfo" + }, + "in": "body", + "name": "sqlPoolInfo", + "description": "The updated SQL pool properties", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/SqlPool" + }, + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Update a SQL Analytics pool": { + "$ref": "./examples/UpdateSqlPool.json" + } + } + }, + "put": { + "operationId": "SqlPools_Create", + "summary": "Create SQL pool", + "description": "Create a SQL pool", + "tags": [ + "SqlPools" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "schema": { + "$ref": "#/definitions/SqlPool" + }, + "in": "body", + "name": "sqlPoolInfo", + "description": "The SQL pool to create", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/SqlPool" + }, + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "404": { + "description": "" + }, + "default": { + "schema": { + "$ref": "./workspace.json#/definitions/ErrorContract" + }, + "description": "" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Create a SQL Analytics pool": { + "$ref": "./examples/CreateSqlPool.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + }, + "delete": { + "operationId": "SqlPools_Delete", + "summary": "Delete SQL pool", + "description": "Delete a SQL pool", + "tags": [ + "SqlPools" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "type": "object" + }, + "description": "OK" + }, + "202": { + "schema": { + "type": "object" + }, + "description": "Accepted" + }, + "204": { + "description": "" + }, + "default": { + "schema": { + "$ref": "./workspace.json#/definitions/ErrorContract" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Delete a SQL Analytics pool": { + "$ref": "./examples/DeleteSqlPool.json" + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools": { + "get": { + "operationId": "SqlPools_ListByWorkspace", + "summary": "List SQL pools", + "description": "List all SQL pools", + "tags": [ + "SqlPools" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/SqlPoolInfoListResult" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "List SQL Analytics pools in a workspace": { + "$ref": "./examples/ListSqlPoolsInWorkspace.json" + }, + "List SQL Analytics pools in a workspace with filter": { + "$ref": "./examples/ListSqlPoolsInWorkspaceWithFilter.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/pause": { + "post": { + "operationId": "SqlPools_Pause", + "summary": "Pause SQL pool", + "description": "Pause a SQL pool", + "tags": [ + "SqlPools" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "type": "object" + }, + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Pause a SQL Analytics pool": { + "$ref": "./examples/PauseSqlPool.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/resume": { + "post": { + "operationId": "SqlPools_Resume", + "summary": "Resume SQL pool", + "description": "Resume a SQL pool", + "tags": [ + "SqlPools" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "type": "object" + }, + "description": "OK" + }, + "202": { + "description": "Accepted" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Resume a SQL Analytics pool": { + "$ref": "./examples/ResumeSqlPool.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/move": { + "post": { + "operationId": "SqlPools_Rename", + "summary": "Rename a SQL pool", + "description": "Rename a SQL pool.", + "tags": [ + "SqlPools" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "parameters", + "in": "body", + "description": "The resource move definition for renaming this Sql pool.", + "required": true, + "schema": { + "$ref": "#/definitions/ResourceMoveDefinition" + } + } + ], + "responses": { + "200": { + "description": "Successfully renamed the Sql pool" + }, + "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." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Rename a SQL Analytics pool": { + "$ref": "./examples/RenameSqlPool.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/metadataSync/config": { + "get": { + "operationId": "SqlPoolMetadataSyncConfigs_Get", + "summary": "Get SQL pool metadata sync config", + "description": "Get the metadata sync configuration for a SQL pool", + "tags": [ + "SqlPools" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + } + ], + "responses": { + "404": { + "description": "" + }, + "200": { + "schema": { + "$ref": "#/definitions/MetadataSyncConfig" + }, + "description": "" + }, + "default": { + "schema": { + "$ref": "./workspace.json#/definitions/ErrorContract" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get metadata sync config for a SQL Analytics pool": { + "$ref": "./examples/GetSqlPoolMetadataSyncConfig.json" + } + } + }, + "put": { + "operationId": "SqlPoolMetadataSyncConfigs_Create", + "summary": "Set SQL pool metadata sync config", + "description": "Set the metadata sync configuration for a SQL pool", + "tags": [ + "SqlPools" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "description": "Metadata sync configuration", + "schema": { + "$ref": "#/definitions/MetadataSyncConfig" + }, + "in": "body", + "name": "metadataSyncConfiguration", + "required": true + } + ], + "responses": { + "404": { + "description": "" + }, + "200": { + "schema": { + "$ref": "#/definitions/MetadataSyncConfig" + }, + "description": "" + }, + "default": { + "schema": { + "$ref": "./workspace.json#/definitions/ErrorContract" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Set metadata sync config for a SQL Analytics pool": { + "$ref": "./examples/CreateSqlPoolMetadataSyncConfig.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/operationResults/{operationId}": { + "get": { + "operationId": "SqlPoolOperationResults_GetLocationHeaderResult", + "summary": "Get SQL pool operation status", + "description": "Get the status of a SQL pool operation", + "tags": [ + "Operations" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "type": "string", + "in": "path", + "name": "operationId", + "description": "Operation ID", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "type": "object" + }, + "description": "OK" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get the result of an operation on a SQL Analytics pool": { + "$ref": "./examples/GetLocationHeaderResultWithSqlPool.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/geoBackupPolicies/{geoBackupPolicyName}": { + "get": { + "operationId": "SqlPoolGeoBackupPolicies_Get", + "summary": "Get a SQL pool geo backup policy", + "description": "Get the specified SQL pool geo backup policy", + "tags": [ + "SqlPools, GeoBackupPolicies" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "geoBackupPolicyName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "Default" + ], + "description": "The name of the geo backup policy.", + "x-ms-enum": { + "modelAsString": true, + "name": "GeoBackupPolicyName" + }, + "x-ms-parameter-location": "method" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/GeoBackupPolicy" + }, + "description": "OK" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get Sql pool geo backup policy": { + "$ref": "./examples/GetSqlPoolGeoBackupPolicy.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/dataWarehouseUserActivities/{dataWarehouseUserActivityName}": { + "get": { + "operationId": "SqlPoolDataWarehouseUserActivities_Get", + "summary": "Get SQL pool user activities", + "description": "Gets the user activities of a SQL pool which includes running and suspended queries", + "tags": [ + "SqlPools, SqlPoolUserActivities" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "dataWarehouseUserActivityName", + "in": "path", + "description": "The activity name of the Sql pool. ", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "x-ms-enum": { + "name": "DataWarehouseUserActivityName", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/DataWarehouseUserActivities" + }, + "description": "OK" + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 ResourceNotFound - The specified resource was not found." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get a SQL Analytics pool user activity": { + "$ref": "./examples/GetSqlPoolUserActivity.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/restorePoints": { + "get": { + "operationId": "SqlPoolRestorePoints_List", + "summary": "Get SQL pool backup", + "description": "Get SQL pool backup information", + "tags": [ + "SqlPools, Backup" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/RestorePointListResult" + }, + "description": "OK" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get a list of restore points of a SQL Analytics pool": { + "$ref": "./examples/ListSqlPoolRestorePoints.json" + } + } + }, + "post": { + "tags": [ + "SqlPools, RestorePoints" + ], + "description": "Creates a restore point for a data warehouse.", + "operationId": "SqlPoolRestorePoints_Create", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "parameters", + "in": "body", + "description": "The definition for creating the restore point of this Sql pool.", + "required": true, + "schema": { + "$ref": "#/definitions/CreateSqlPoolRestorePointDefinition" + } + } + ], + "responses": { + "200": { + "description": "Successfully created the restore point request.", + "schema": { + "$ref": "#/definitions/RestorePoint" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 FeatureDisabledOnSelectedEdition - User attempted to use a feature which is disabled on current database edition.\n\n * 400 BackupNotAllowedOnDeactivatedDatabase - Cannot create restore point on a deactivated database.\n\n * 400 RestorePointLimitReached - A restore point cannot be created because database would exceed the allowed quota of restore points.\n\n * 400 RestorePointAttemptToDeleteSystemBackup - Cannot delete system restore point.\n\n * 404 DatabaseRestorePointNotFound - Can not find database restore point.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 408 DatabaseRestorePointTimedOut - Create database restore point failed." + }, + "202": { + "description": "Accepted" + }, + "201": { + "description": "Successfully created the restore point request.", + "schema": { + "$ref": "#/definitions/RestorePoint" + } + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Creates Sql pool restore point.": { + "$ref": "./examples/CreateSqlPoolRestorePoints.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/replicationLinks": { + "get": { + "operationId": "SqlPoolReplicationLinks_List", + "summary": "Get SQL pool replication links", + "description": "Lists a Sql pool's replication links.", + "tags": [ + "SqlPools, ReplicationLinks" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ReplicationLinkListResult" + } + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Lists a Sql Analytic pool's replication links": { + "$ref": "./examples/ListSqlPoolReplicationLinks.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/transparentDataEncryption/{transparentDataEncryptionName}": { + "get": { + "operationId": "SqlPoolTransparentDataEncryptions_Get", + "summary": "Get a SQL pool's transparent data encryption configuration", + "description": "Get a SQL pool's transparent data encryption configuration.", + "tags": [ + "SqlPools, TransparentDataEncryption" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "transparentDataEncryptionName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "description": "The name of the transparent data encryption configuration.", + "x-ms-enum": { + "modelAsString": true, + "name": "TransparentDataEncryptionName" + }, + "x-ms-parameter-location": "method" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TransparentDataEncryption" + } + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get transparent data encryption configuration of a SQL Analytics pool": { + "$ref": "./examples/GetSqlPoolTransparentDataEncryption.json" + } + } + }, + "put": { + "operationId": "SqlPoolTransparentDataEncryptions_CreateOrUpdate", + "summary": "Creates or updates a Sql pool's transparent data encryption configuration", + "description": "Creates or updates a Sql pool's transparent data encryption configuration.", + "tags": [ + "SqlPools, TransparentDataEncryption" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "transparentDataEncryptionName", + "in": "path", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "description": "The name of the transparent data encryption configuration.", + "x-ms-enum": { + "modelAsString": true, + "name": "TransparentDataEncryptionName" + }, + "x-ms-parameter-location": "method" + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/TransparentDataEncryption" + }, + "description": "The required parameters for creating or updating transparent data encryption." + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/TransparentDataEncryption" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/TransparentDataEncryption" + } + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Create or update a Sql pool's transparent data encryption configuration": { + "$ref": "./examples/CreateOrUpdateSqlPoolTransparentDataEncryption.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/auditingSettings/{blobAuditingPolicyName}": { + "get": { + "operationId": "SqlPoolBlobAuditingPolicies_Get", + "summary": "Get a SQL pool's blob auditing policy", + "description": "Get a SQL pool's blob auditing policy.", + "tags": [ + "SqlPools, BlobAuditing" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "blobAuditingPolicyName", + "in": "path", + "description": "The name of the blob auditing policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SqlPoolBlobAuditingPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 BlobAuditingIsNotSupportedOnResourceType - Blob Auditing is currently not supported for this resource type.\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get blob auditing policy of a SQL Analytics pool": { + "$ref": "./examples/GetSqlPoolBlobAuditing.json" + } + } + }, + "put": { + "operationId": "SqlPoolBlobAuditingPolicies_CreateOrUpdate", + "summary": "Creates or updates a SQL pool's blob auditing policy", + "description": "Creates or updates a SQL pool's blob auditing policy.", + "tags": [ + "SqlPools, BlobAuditing" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "blobAuditingPolicyName", + "in": "path", + "description": "The name of the blob auditing policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-parameter-location": "method" + }, + { + "name": "parameters", + "in": "body", + "description": "The database blob auditing policy.", + "required": true, + "schema": { + "$ref": "#/definitions/SqlPoolBlobAuditingPolicy" + } + } + ], + "responses": { + "200": { + "description": "Successfully set the Sql pool blob auditing policy", + "schema": { + "$ref": "#/definitions/SqlPoolBlobAuditingPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 BlobAuditingIsNotSupportedOnResourceType - Blob Auditing is currently not supported for this resource type.\n\n * 400 InvalidDatabaseBlobAuditingPolicyCreateRequest - The create database blob auditing policy request does not exist or has no properties object.\n\n * 400 InvalidBlobAuditActionsAndGroups - Invalid audit actions or action groups.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 BlobAuditingInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 UpdateNotAllowedOnPausedDatabase - User attempted to perform an update on a paused database.\n\n * 400 BlobAuditingInvalidStorageAccountCredentials - The provided storage account or access key is not valid.\n\n * 400 BlobAuditingIsNotSupportedOnGeoDr - Blob auditing can be configured on primary databases only.\n\n * 400 InvalidBlobAuditActionsAndGroupsForDW - Unsupported audit actions or action groups for DW.\n\n * 400 BlobAuditingInsufficientStorageAccountPermissions - Insufficient read or write permissions on the provided storage account.\n\n * 400 BlobAuditingStorageAccountIsDisabled - The provided storage account is disabled.\n\n * 400 InvalidBlobAuditActions - Invalid audit action\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + }, + "201": { + "description": "Successfully created the Sql pool blob auditing policy.", + "schema": { + "$ref": "#/definitions/SqlPoolBlobAuditingPolicy" + } + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Create or update a database's blob auditing policy with minimal parameters": { + "$ref": "./examples/CreateOrUpdateSqlPoolBlobAuditingWithMinParameters.json" + }, + "Create or update a database's blob auditing policy with all parameters": { + "$ref": "./examples/CreateOrUpdateSqlPoolBlobAuditingWithAllParameters.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/operations": { + "get": { + "operationId": "SqlPoolOperations_List", + "summary": "Gets a list of operations performed on the SQL pool", + "description": "Gets a list of operations performed on the SQL pool.", + "tags": [ + "SqlPools, Operations" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SqlPoolBlobAuditingPolicySqlPoolOperationListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\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 ElasticPoolOverStorageUsage - Attempting to write data to a database when the storage limit of the elastic pool has been reached.\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 CannotUpdateToFreeDatabase - Updating a database to the free sku is not supported.\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 ServerNotFound - The requested server was not found.\n\n * 400 TokenTooLong - The provided token is too long.\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 ResourcePoolNotFound - Specified elastic pool does not exist in the specified logical server.\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 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 CurrentDatabaseSizeExceedsMaxSize - User attempted to reduce the max size for a database to a size smaller than the current usage.\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 InvalidMaxSizeTierCombination - The specified tier does not support the specified database max size.\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 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 CannotUseTrailingWhitespacesInDatabaseName - The database name validation failed.\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 InvalidCollation - Collation is not recognized by the server.\n\n * 400 ElasticPoolOverFileSpace - Insufficient file space in the elastic pool.\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 ProvisioningDisabled - Displays error message from resources operation authorizer as is, without changes\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 UnableToResolveRemoteServer - The remote partner server name could not be resolved due to an invalid server name or DNS connectivity issues.\n\n * 400 RemoteDatabaseCopyPermission - User does not have sufficient permission to create a database copy on the specified server.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\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 SourceDatabaseNotFound - The source database does not exist.\n\n * 400 ChangeUnsupportedOnEntity - User attempted an unsupported create/update/delete operation on a given entity.\n\n * 400 CannotMoveOrDropJobAccountDatabase - Cannot drop database associated with job account.\n\n * 400 CannotUseReservedDatabaseName - Cannot use reserved database name in this operation.\n\n * 400 CannotMoveOrDropSyncMetadataDatabase - Cannot drop database used as sync metadata database.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 OperationIdNotFound - The operation with Id does not exist.\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 * 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 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 ServerDtuQuotaExceeded - Could not perform the operation because server would exceed the allowed Database Throughput Unit quota.\n\n * 409 UnableToAlterDatabaseInReplication - User altered edition on a database in a replication relationship.\n\n * 409 CurrentMemoryUsageExceedsSkuQuota - User attempted an sku update operation that cannot be completed due to the higher resource consumption.\n\n * 409 UpdateSloInProgress - User tried to initiate an incompatible operation while a SLO update was in progress.\n\n * 409 ConflictingDatabaseOperation - There is already some operation on the database and the current operation should wait till it is done.\n\n * 409 SimultaneousSkuChangeNotAllowed - Service objective change operations cannot run on both databases of a replication relationship at the same time.\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 DuplicateGeoDrRelation - The databases are already in a replication relation. This is a duplicate request.\n\n * 409 RemoteDatabaseExists - The destination database name already exists on the destination server.\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 TooManyRequests - 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." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List the Sql Analytics pool management operations": { + "$ref": "./examples/ListSqlPoolOperations.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/usages": { + "get": { + "operationId": "SqlPoolUsages_List", + "summary": "Gets SQL pool usages", + "description": "Gets SQL pool usages.", + "tags": [ + "SqlPools, Usages" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SqlPoolUsageListResult" + } + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List the usages of a SQL Analytics pool": { + "$ref": "./examples/SqlPoolUsageMetricsList.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/currentSensitivityLabels": { + "get": { + "operationId": "SqlPoolSensitivityLabels_ListCurrent", + "summary": "Gets SQL pool sensitivity labels", + "description": "Gets SQL pool sensitivity labels.", + "tags": [ + "SqlPools, SensitivityLabels" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "$filter", + "in": "query", + "description": "An OData filter expression that filters elements in the collection.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SensitivityLabelListResult" + } + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-odata": "#/definitions/SensitivityLabel", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the current sensitivity labels of a given SQL Analytics pool": { + "$ref": "./examples/ListSqlPoolsSensitivityLabelsWithSourceCurrent.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/recommendedSensitivityLabels": { + "get": { + "operationId": "SqlPoolSensitivityLabels_ListRecommended", + "summary": "Gets sensitivity labels of a given SQL pool", + "description": "Gets sensitivity labels of a given SQL pool.", + "tags": [ + "SqlPools, SensitivityLabels" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "includeDisabledRecommendations", + "in": "query", + "description": "Specifies whether to include disabled recommendations or not.", + "required": false, + "type": "boolean" + }, + { + "name": "$skipToken", + "in": "query", + "description": "An OData query option to indicate how many elements to skip in the collection.", + "required": false, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "An OData filter expression that filters elements in the collection.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SensitivityLabelListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 400 SensitivityLabelsInvalidODataQuery - The specified OData query is either not valid or not supported\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-odata": "#/definitions/SensitivityLabel", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Gets the recommended sensitivity labels of a given SQL Analytics pool": { + "$ref": "./examples/ListSqlPoolSensitivityLabelsWithSourceRecommended.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/schemas/{schemaName}/tables/{tableName}/columns/{columnName}/sensitivityLabels/{sensitivityLabelSource}": { + "put": { + "tags": [ + "SqlPools, SensitivityLabels" + ], + "description": "Creates or updates the sensitivity label of a given column in a Sql pool", + "operationId": "SqlPoolSensitivityLabels_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "tableName", + "in": "path", + "description": "The name of the table.", + "required": true, + "type": "string" + }, + { + "name": "columnName", + "in": "path", + "description": "The name of the column.", + "required": true, + "type": "string" + }, + { + "name": "sensitivityLabelSource", + "in": "path", + "description": "The source of the sensitivity label.", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "x-ms-enum": { + "name": "WritableSensitivityLabelSource", + "modelAsString": false + } + }, + { + "name": "parameters", + "in": "body", + "description": "The column sensitivity label resource.", + "required": true, + "schema": { + "$ref": "#/definitions/SensitivityLabel" + } + } + ], + "responses": { + "200": { + "description": "Successfully updated the sensitivity label.", + "schema": { + "$ref": "#/definitions/SensitivityLabel" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 400 SensitivityLabelSourceNameNotSupported - The specified sensitivity label source is not valid\n\n * 400 InvalidSensitivityLabelResource - The specified sensitivity label resource is not valid\n\n * 400 SensitivityLabelLabelNameAndInfoTypeNotProvided - At least one of LabelName and InformationType must be specified\n\n * 400 LabelNameTooLong - Label name cannot exceed {0} characters\n\n * 400 InformationTypeTooLong - Information type cannot exceed {0} characters\n\n * 400 LabelIdMustBeGuid - Label ID must be a GUID\n\n * 400 InformationTypeIdMustBeGuid - Information type ID must be a GUID\n\n * 400 LabelMissing - Label is missing\n\n * 400 InformationTypeMissing - Information Type is missing\n\n * 404 SensitivityLabelsColumnNotFound - The specified schema/table/column could not be found\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 SensitivityLabelsLabelNotFound - The specified sensitivity label could not be found\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet" + }, + "201": { + "description": "Successfully created the sensitivity label.", + "schema": { + "$ref": "#/definitions/SensitivityLabel" + } + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Updates the sensitivity label of a given column with all parameters": { + "$ref": "./examples/CreateOrUpdateSqlPoolColumnSensitivityLabelWithAllParameters.json" + } + } + }, + "delete": { + "tags": [ + "SqlPools, SensitivityLabels" + ], + "description": "Deletes the sensitivity label of a given column in a Sql pool", + "operationId": "SqlPoolSensitivityLabels_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "tableName", + "in": "path", + "description": "The name of the table.", + "required": true, + "type": "string" + }, + { + "name": "columnName", + "in": "path", + "description": "The name of the column.", + "required": true, + "type": "string" + }, + { + "name": "sensitivityLabelSource", + "in": "path", + "description": "The source of the sensitivity label.", + "required": true, + "type": "string", + "enum": [ + "current" + ], + "x-ms-enum": { + "name": "WritableSensitivityLabelSource", + "modelAsString": false + } + } + ], + "responses": { + "200": { + "description": "Successfully deleted the sensitivity label." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 400 SensitivityLabelSourceNameNotSupported - The specified sensitivity label source is not valid\n\n * 404 SensitivityLabelsColumnNotFound - The specified schema/table/column could not be found\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 SensitivityLabelsLabelNotFound - The specified sensitivity label could not be found\n\n * 501 SensitivityLabelRecommendedSourceNameNotSupported - 'Recommended' sensitivity label source is not supported yet" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Deletes the sensitivity label of a given column": { + "$ref": "./examples/DeleteSqlPoolColumnSensitivityLabel.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/schemas/{schemaName}/tables/{tableName}/columns/{columnName}/sensitivityLabels/{sensitivityLabelSource}/enable": { + "post": { + "tags": [ + "SensitivityLabels" + ], + "description": "Enables sensitivity recommendations on a given column (recommendations are enabled by default on all columns)", + "operationId": "SqlPoolSensitivityLabels_EnableRecommendation", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "tableName", + "in": "path", + "description": "The name of the table.", + "required": true, + "type": "string" + }, + { + "name": "columnName", + "in": "path", + "description": "The name of the column.", + "required": true, + "type": "string" + }, + { + "name": "sensitivityLabelSource", + "in": "path", + "description": "The source of the sensitivity label.", + "required": true, + "type": "string", + "enum": [ + "recommended" + ], + "x-ms-enum": { + "name": "WritableSensitivityLabelSource", + "modelAsString": false + } + } + ], + "responses": { + "200": { + "description": "Successfully enabled the sensitivity recommendations on the given column." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 404 SensitivityLabelsColumnNotFound - The specified column could not be found\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance." + } + }, + "x-ms-examples": { + "Enables sensitivity recommendations on a given column": { + "$ref": "./examples/RecommendedColumnSensitivityLabelEnable.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/schemas/{schemaName}/tables/{tableName}/columns/{columnName}/sensitivityLabels/{sensitivityLabelSource}/disable": { + "post": { + "tags": [ + "SensitivityLabels" + ], + "description": "Disables sensitivity recommendations on a given column", + "operationId": "SqlPoolSensitivityLabels_DisableRecommendation", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "tableName", + "in": "path", + "description": "The name of the table.", + "required": true, + "type": "string" + }, + { + "name": "columnName", + "in": "path", + "description": "The name of the column.", + "required": true, + "type": "string" + }, + { + "name": "sensitivityLabelSource", + "in": "path", + "description": "The source of the sensitivity label.", + "required": true, + "type": "string", + "enum": [ + "recommended" + ], + "x-ms-enum": { + "name": "WritableSensitivityLabelSource", + "modelAsString": false + } + } + ], + "responses": { + "200": { + "description": "Successfully disabled the sensitivity recommendation on the given column." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 DatawarehouseDatabaseIsDeactivated - Could not execute Data Classification operation because the database is paused. Please resume it.\n\n * 404 SensitivityLabelsColumnNotFound - The specified column could not be found\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance." + } + }, + "x-ms-examples": { + "Disables sensitivity recommendations on a given column": { + "$ref": "./examples/RecommendedColumnSensitivityLabelDisable.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/schemas": { + "get": { + "operationId": "SqlPoolSchemas_List", + "summary": "Gets schemas of a given SQL pool", + "description": "Gets schemas of a given SQL pool.", + "tags": [ + "SqlPools, Schemas" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "$filter", + "in": "query", + "description": "An OData filter expression that filters elements in the collection.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SqlPoolSchemaListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 InvalidDatabaseSchema - Schema is missing in database.\n\n * 404 InvalidDatabaseTable - Table is missing in database.\n\n * 404 InvalidDatabaseColumn - Column is missing in table." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-odata": "#/definitions/SqlPoolSchema", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List the schema in a SQL Analytics pool": { + "$ref": "./examples/ListSqlPoolSchema.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/schemas/{schemaName}/tables": { + "get": { + "operationId": "SqlPoolTables_ListBySchema", + "summary": "Gets tables of a given schema in a SQL pool", + "description": "Gets tables of a given schema in a SQL pool.", + "tags": [ + "SqlPools, Tables" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "An OData filter expression that filters elements in the collection.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SqlPoolTableListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 InvalidDatabaseSchema - Schema is missing in database.\n\n * 404 InvalidDatabaseTable - Table is missing in database.\n\n * 404 InvalidDatabaseColumn - Column is missing in table." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-odata": "#/definitions/SqlPoolTable", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List the tables of a given schema in a SQL Analytics pool": { + "$ref": "./examples/ListSqlPoolTables.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/schemas/{schemaName}/tables/{tableName}/columns": { + "get": { + "operationId": "SqlPoolTableColumns_ListByTableName", + "summary": "Gets columns in a given table in a SQL pool", + "description": "Gets columns in a given table in a SQL pool.", + "tags": [ + "SqlPools, Tables" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "schemaName", + "in": "path", + "description": "The name of the schema.", + "required": true, + "type": "string" + }, + { + "name": "tableName", + "in": "path", + "description": "The name of the table.", + "required": true, + "type": "string" + }, + { + "name": "$filter", + "in": "query", + "description": "An OData filter expression that filters elements in the collection.", + "required": false, + "type": "string" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SqlPoolColumnListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 InvalidDatabaseSchema - Schema is missing in database.\n\n * 404 InvalidDatabaseTable - Table is missing in database.\n\n * 404 InvalidDatabaseColumn - Column is missing in table." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-odata": "#/definitions/SqlPoolColumn", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List the columns in a table of a given schema in a SQL Analytics pool": { + "$ref": "./examples/ListSqlPoolColumns.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/connectionPolicies/{connectionPolicyName}": { + "get": { + "operationId": "SqlPoolConnectionPolicies_Get", + "summary": "Get a Sql pool's connection policy, which is used with table auditing", + "description": "Get a Sql pool's connection policy, which is used with table auditing.", + "tags": [ + "SqlPools, ConnectionPolicies" + ], + "deprecated": true, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "connectionPolicyName", + "in": "path", + "description": "The name of the connection policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "ConnectionPolicyName", + "modelAsString": true + }, + "x-ms-parameter-location": "method" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SqlPoolConnectionPolicy" + } + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get a connection policy of a SQL Analytics pool": { + "$ref": "./examples/GetSqlPoolConnectionPolicy.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/vulnerabilityAssessments": { + "get": { + "operationId": "SqlPoolVulnerabilityAssessments_List", + "summary": "Lists the vulnerability assessment policies associated with a SQL pool", + "description": "Lists the vulnerability assessment policies associated with a SQL pool.", + "tags": [ + "SqlPools, Schemas" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SqlPoolVulnerabilityAssessmentListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get a vulnerability assessment of a SQL Analytics pool": { + "$ref": "./examples/ListSqlPoolVulnerabilityAssessments.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/scans": { + "get": { + "operationId": "SqlPoolVulnerabilityAssessmentScans_List", + "summary": "Lists the vulnerability assessment scans of a SQL pool", + "description": "Lists the vulnerability assessment scans of a SQL pool.", + "tags": [ + "SqlPools, Schemas" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VulnerabilityAssessmentScanRecordListResult" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "Get a vulnerability scan record of a SQL Analytics pool": { + "$ref": "./examples/ListSqlPoolVulnerabilityAssessmentScanRecords.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/scans/{scanId}/initiateScan": { + "post": { + "tags": [ + "SqlPools, VulnerabilityAssessmentScansExecute" + ], + "description": "Executes a Vulnerability Assessment database scan.", + "operationId": "SqlPoolVulnerabilityAssessmentScans_InitiateScan", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "name": "scanId", + "in": "path", + "description": "The vulnerability assessment scan Id of the scan to retrieve.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Successfully executed a Vulnerability Assessment scan." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 InvalidVulnerabilityAssessmentScanIdLength - The vulnerability assessment scan ID length must be below {0} characters.\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + }, + "202": { + "description": "Successfully started a Vulnerability Assessment scan." + } + }, + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Executes a Sql pool's vulnerability assessment scan.": { + "$ref": "./examples/ExecuteSqlPoolVulnerabilityAssessmentScans.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/scans/{scanId}/export": { + "post": { + "tags": [ + "SqlPools, VulnerabilityAssessmentScansExport" + ], + "description": "Convert an existing scan result to a human readable format. If already exists nothing happens", + "operationId": "SqlPoolVulnerabilityAssessmentScans_Export", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "name": "scanId", + "in": "path", + "description": "The vulnerability assessment scan Id of the scan to retrieve.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Scan result was converted successfully.", + "schema": { + "$ref": "#/definitions/SqlPoolVulnerabilityAssessmentScansExport" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 409 DatabaseVulnerabilityAssessmentScanIsAlreadyInProgress - Vulnerability Assessment scan is already in progress.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + }, + "201": { + "description": "Scan result was converted successfully.", + "schema": { + "$ref": "#/definitions/SqlPoolVulnerabilityAssessmentScansExport" + } + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Export a database's vulnerability assessment scan results.": { + "$ref": "./examples/ExportSqlPoolVulnerabilityAssessmentScan.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/securityAlertPolicies/{securityAlertPolicyName}": { + "get": { + "operationId": "SqlPoolSecurityAlertPolicies_Get", + "summary": "Get a Sql pool's security alert policy", + "description": "Get a Sql pool's security alert policy.", + "tags": [ + "SqlPools, SecurityAlertPolicies" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "securityAlertPolicyName", + "in": "path", + "description": "The name of the security alert policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "SecurityAlertPolicyName", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SqlPoolSecurityAlertPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountCredentials - The provided storage account access key is not valid.\n\n * 400 InvalidDatabaseSecurityAlertPolicyCreateRequest - The create database Threat Detection security alert policy request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 400 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 409 DatabaseSecurityAlertPolicyInProgress - Set database security alert policy is already in progress\n\n * 409 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later.\n\n * 500 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 GetDatabaseSecurityAlertPolicyFailed - Failed to get Threat Detection settings" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get a security alert of a SQL Analytics pool": { + "$ref": "./examples/GetSqlPoolSecurityAlert.json" + } + } + }, + "put": { + "operationId": "SqlPoolSecurityAlertPolicies_CreateOrUpdate", + "summary": "Create or update a Sql pool's security alert policy", + "description": "Create or update a Sql pool's security alert policy.", + "tags": [ + "SqlPools, SecurityAlertPolicies" + ], + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "securityAlertPolicyName", + "in": "path", + "description": "The name of the security alert policy.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "SecurityAlertPolicyName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The Sql pool security alert policy.", + "required": true, + "schema": { + "$ref": "#/definitions/SqlPoolSecurityAlertPolicy" + } + } + ], + "responses": { + "200": { + "description": "Successfully set the Sql pool security alert policy", + "schema": { + "$ref": "#/definitions/SqlPoolSecurityAlertPolicy" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 SecurityAlertPoliciesInvalidStorageAccountCredentials - The provided storage account access key is not valid.\n\n * 400 InvalidDatabaseSecurityAlertPolicyCreateRequest - The create database Threat Detection security alert policy request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 400 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 400 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 409 DatabaseSecurityAlertPolicyInProgress - Set database security alert policy is already in progress\n\n * 409 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later.\n\n * 500 UpsertDatabaseSecurityAlertPolicyFailed - An error has occurred while saving Threat detection settings, please try again later\n\n * 500 GetDatabaseSecurityAlertPolicyFailed - Failed to get Threat Detection settings" + }, + "201": { + "description": "Successfully created the Sql pool security alert policy.", + "schema": { + "$ref": "#/definitions/SqlPoolSecurityAlertPolicy" + } + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Update a Sql pool's threat detection policy with minimal parameters": { + "$ref": "./examples/CreateOrUpdateSqlPoolSecurityAlertWithMinParameters.json" + }, + "Update a Sql pool's threat detection policy with all parameters": { + "$ref": "./examples/CreateOrUpdateSqlPoolSecurityAlertWithAllParameters.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}/rules/{ruleId}/baselines/{baselineName}": { + "put": { + "tags": [ + "SqlPools, DatabaseVulnerabilityAssesmentRuleBaselines" + ], + "description": "Creates or updates a Sql pool's vulnerability assessment rule baseline.", + "operationId": "SqlPoolVulnerabilityAssessmentRuleBaselines_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "name": "ruleId", + "in": "path", + "description": "The vulnerability assessment rule ID.", + "required": true, + "type": "string" + }, + { + "name": "baselineName", + "in": "path", + "description": "The name of the vulnerability assessment rule baseline (default implies a baseline on a Sql pool level rule and master for workspace level rule).", + "required": true, + "type": "string", + "enum": [ + "master", + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentPolicyBaselineName", + "modelAsString": false + } + }, + { + "name": "parameters", + "in": "body", + "description": "The requested rule baseline resource.", + "required": true, + "schema": { + "$ref": "#/definitions/SqlPoolVulnerabilityAssessmentRuleBaseline" + } + } + ], + "responses": { + "200": { + "description": "Successfully set the vulnerability assessment rule baseline.", + "schema": { + "$ref": "#/definitions/SqlPoolVulnerabilityAssessmentRuleBaseline" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Creates or updates a database's vulnerability assessment rule baseline.": { + "$ref": "./examples/CreateOrUpdateSqlPoolVulnerabilityAssessmentRuleBaseline.json" + } + } + }, + "delete": { + "tags": [ + "DatabaseVulnerabilityAssesmentRuleBaselines" + ], + "description": "Removes the database's vulnerability assessment rule baseline.", + "operationId": "SqlPoolVulnerabilityAssessmentRuleBaselines_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "name": "ruleId", + "in": "path", + "description": "The vulnerability assessment rule ID.", + "required": true, + "type": "string" + }, + { + "name": "baselineName", + "in": "path", + "description": "The name of the vulnerability assessment rule baseline (default implies a baseline on a Sql pool level rule and master for workspace level rule).", + "required": true, + "type": "string", + "enum": [ + "master", + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentPolicyBaselineName", + "modelAsString": false + } + } + ], + "responses": { + "200": { + "description": "Successfully removed the database vulnerability assessment rule baseline." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 VulnerabilityAssessmentStorageAuthenticationFailed - Could not authenticate to storage account '{0}' .\n\n * 400 VulnerabilityAssessmentInvalidPolicy - Vulnerability Assessment settings don't exist or invalid storage specified in settings. \n\n * 400 VulnerabilityAssessmentDatawarehouseDatabaseIsDeactivated - Could not execute Vulnerability Assessment operation because the database is paused. Please resume it.\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 VulnerabilityAssessmentInvalidStorageAccount - The storage account '{0}' that was defined in the policy is invalid.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 404 VulnerabilityAssessmentRuleDoesNotExists - Rule '{0}' does not exist.\n\n * 404 VulnerabilityAssessmentBaselineDoesNotExists - Baseline does not exist for rule '{0}'\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "x-ms-examples": { + "Removes a database's vulnerability assessment rule baseline.": { + "$ref": "./examples/DeleteSqlPoolVulnerabilityAssessmentRuleBaseline.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/sqlPools/{sqlPoolName}/vulnerabilityAssessments/{vulnerabilityAssessmentName}": { + "get": { + "tags": [ + "SqlPools, VulnerabilityAssessments" + ], + "summary": "Gets the Sql pool's vulnerability assessment", + "description": "Gets the Sql pool's vulnerability assessment.", + "operationId": "SqlPoolVulnerabilityAssessments_Get", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "Successfully retrieved the Sql pool vulnerability assessment.", + "schema": { + "$ref": "#/definitions/SqlPoolVulnerabilityAssessment" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get a Sql pool's vulnerability assessment": { + "$ref": "./examples/GetSqlPoolVulnerabilityAssessment.json" + } + } + }, + "put": { + "tags": [ + "SqlPools, VulnerabilityAssessments" + ], + "summary": "Creates or updates the Sql pool vulnerability assessment", + "description": "Creates or updates the Sql pool vulnerability assessment.", + "operationId": "SqlPoolVulnerabilityAssessments_CreateOrUpdate", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + }, + { + "name": "parameters", + "in": "body", + "description": "The requested resource.", + "required": true, + "schema": { + "$ref": "#/definitions/SqlPoolVulnerabilityAssessment" + } + } + ], + "responses": { + "200": { + "description": "Successfully set the Sql pool vulnerability assessment.", + "schema": { + "$ref": "#/definitions/SqlPoolVulnerabilityAssessment" + } + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 400 InvalidVulnerabilityAssessmentOperationRequest - The vulnerability assessment operation request does not exist or has no properties object.\n\n * 400 DataSecurityInvalidUserSuppliedParameter - An invalid parameter value was provided by the client.\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + }, + "201": { + "description": "Successfully created the vulnerability assessment.", + "schema": { + "$ref": "#/definitions/SqlPoolVulnerabilityAssessment" + } + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Create a database's vulnerability assessment with minimal parameters, when storageContainerSasKey is specified": { + "$ref": "./examples/CreateOrUpdateSqlPoolVulnerabilityAssessmentWithContainerSasKeyAndMinParameters.json" + }, + "Create a database's vulnerability assessment with minimal parameters, when storageAccountAccessKey is specified": { + "$ref": "./examples/CreateOrUpdateVulnerabilityAssessmentWithStorageAccessKeyAndMinParameters.json" + }, + "Create a database's vulnerability assessment with all parameters": { + "$ref": "./examples/CreateOrUpdateSqlPoolVulnerabilityAssessmentWithAllParameters.json" + } + } + }, + "delete": { + "tags": [ + "SqlPools, VulnerabilityAssessments" + ], + "summary": "Removes the database's vulnerability assessment", + "description": "Removes the database's vulnerability assessment.", + "operationId": "SqlPoolVulnerabilityAssessments_Delete", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "type": "string", + "in": "path", + "name": "sqlPoolName", + "description": "SQL pool name", + "required": true + }, + { + "name": "vulnerabilityAssessmentName", + "in": "path", + "description": "The name of the vulnerability assessment.", + "required": true, + "type": "string", + "enum": [ + "default" + ], + "x-ms-enum": { + "name": "VulnerabilityAssessmentName", + "modelAsString": true + } + } + ], + "responses": { + "200": { + "description": "Successfully removed the Sql pool vulnerability assessment." + }, + "default": { + "description": "*** Error Responses: ***\n\n * 400 InvalidStorageAccountName - The provided storage account is not valid or does not exist.\n\n * 400 InvalidStorageAccountCredentials - The provided storage account shared access signature or account storage key is not valid.\n\n * 400 DatabaseVulnerabilityAssessmentMissingStorageContainerPath - Storage container path must be provided if it isn't set in server level policy\n\n * 404 SubscriptionDoesNotHaveServer - The requested server was not found\n\n * 404 SourceDatabaseNotFound - The source database does not exist.\n\n * 404 DatabaseDoesNotExist - User has specified a database name that does not exist on this server instance.\n\n * 500 DatabaseIsUnavailable - Loading failed. Please try again later." + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Remove a database's vulnerability assessment": { + "$ref": "./examples/DeleteSqlPoolVulnerabilityAssessment.json" + } + } + } + } + }, + "definitions": { + "SqlPoolInfoListResult": { + "type": "object", + "title": "SQL pool collection", + "description": "List of SQL pools", + "properties": { + "nextLink": { + "type": "string", + "description": "Link to the next page of results" + }, + "value": { + "type": "array", + "description": "List of SQL pools", + "items": { + "$ref": "#/definitions/SqlPool" + } + } + } + }, + "SqlPool": { + "type": "object", + "title": "SQL pool", + "description": "A SQL Analytics pool", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "sku": { + "$ref": "#/definitions/Sku", + "description": "SQL pool SKU" + }, + "properties": { + "$ref": "#/definitions/SqlPoolResourceProperties", + "description": "SQL pool properties", + "x-ms-client-flatten": true + } + } + }, + "SqlPoolPatchInfo": { + "type": "object", + "title": "SQL pool patch info", + "description": "A SQL Analytics pool patch info", + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Resource tags." + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "SQL pool SKU" + }, + "properties": { + "$ref": "#/definitions/SqlPoolResourceProperties", + "description": "SQL pool properties", + "x-ms-client-flatten": true + } + } + }, + "Sku": { + "type": "object", + "title": "Sku", + "description": "SQL pool SKU", + "properties": { + "tier": { + "type": "string", + "description": "The service tier" + }, + "name": { + "type": "string", + "description": "The SKU name" + } + } + }, + "SqlPoolResourceProperties": { + "type": "object", + "title": "SQL pool properties", + "description": "Properties of a SQL Analytics pool", + "properties": { + "maxSizeBytes": { + "type": "integer", + "description": "Maximum size in bytes", + "format": "int64" + }, + "collation": { + "type": "string", + "description": "Collation mode" + }, + "sourceDatabaseId": { + "type": "string", + "description": "Source database to create from" + }, + "recoverableDatabaseId": { + "type": "string", + "description": "Backup database to restore from" + }, + "provisioningState": { + "type": "string", + "description": "Resource state" + }, + "status": { + "type": "string", + "description": "Resource status" + }, + "restorePointInTime": { + "type": "string", + "description": "Snapshot time to restore", + "format": "date-time" + }, + "createMode": { + "type": "string", + "description": "What is this?" + }, + "creationDate": { + "type": "string", + "description": "Date the SQL pool was created", + "format": "date-time" + } + } + }, + "MetadataSyncConfig": { + "type": "object", + "title": "Metadata sync configuration", + "description": "Configuration for metadata sync", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "title": "Metadata Sync Config properties", + "description": "Metadata Sync Config properties", + "properties": { + "enabled": { + "type": "boolean", + "description": "Indicates whether the metadata sync is enabled or disabled" + } + }, + "x-ms-client-flatten": true + } + }, + "x-ms-azure-resource": true + }, + "GeoBackupPolicyProperties": { + "properties": { + "state": { + "type": "string", + "description": "The state of the geo backup policy.", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "modelAsString": false, + "name": "GeoBackupPolicyState" + } + }, + "storageType": { + "type": "string", + "description": "The storage type of the geo backup policy.", + "readOnly": true + } + }, + "required": [ + "state" + ], + "description": "The properties of the geo backup policy." + }, + "GeoBackupPolicy": { + "properties": { + "properties": { + "$ref": "#/definitions/GeoBackupPolicyProperties", + "description": "The properties of the geo backup policy.", + "x-ms-client-flatten": true + }, + "kind": { + "readOnly": true, + "type": "string", + "description": "Kind of geo backup policy. This is metadata used for the Azure portal experience." + }, + "location": { + "type": "string", + "readOnly": true, + "description": "Backup policy location." + } + }, + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "A database geo backup policy." + }, + "TopQueries": { + "properties": { + "aggregationFunction": { + "description": "The function that is used to aggregate each query's metrics.", + "type": "string", + "enum": [ + "min", + "max", + "avg", + "sum" + ], + "x-ms-enum": { + "name": "QueryAggregationFunction", + "modelAsString": false + }, + "readOnly": true + }, + "executionType": { + "description": "The execution type that is used to filter the query instances that are returned.", + "type": "string", + "enum": [ + "any", + "regular", + "irregular", + "aborted", + "exception" + ], + "x-ms-enum": { + "name": "QueryExecutionType", + "modelAsString": false + }, + "readOnly": true + }, + "intervalType": { + "description": "The duration of the interval (ISO8601 duration format).", + "type": "string", + "readOnly": true + }, + "numberOfTopQueries": { + "description": "The number of requested queries.", + "type": "number", + "format": "int32", + "readOnly": true + }, + "observationStartTime": { + "description": "The start time for queries that are returned (ISO8601 format)", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "observationEndTime": { + "description": "The end time for queries that are returned (ISO8601 format)", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "observedMetric": { + "description": "The type of metric to use for ordering the top metrics.", + "type": "string", + "enum": [ + "cpu", + "io", + "logio", + "duration", + "executionCount" + ], + "x-ms-enum": { + "name": "QueryObservedMetricType", + "modelAsString": false + }, + "readOnly": true + }, + "queries": { + "type": "array", + "items": { + "$ref": "#/definitions/QueryStatistic" + }, + "description": "The list of queries.", + "readOnly": true + } + }, + "description": "A database query." + }, + "QueryStatistic": { + "properties": { + "queryId": { + "description": "The id of the query", + "type": "string", + "readOnly": true + }, + "intervals": { + "type": "array", + "items": { + "$ref": "#/definitions/QueryInterval" + }, + "description": "The list of query intervals.", + "readOnly": true + } + }, + "description": "A database query." + }, + "QueryInterval": { + "properties": { + "intervalStartTime": { + "description": "The start time of the measurement interval (ISO8601 format).", + "type": "string", + "format": "date-time", + "readOnly": true + }, + "executionCount": { + "description": "The number of times the query was executed during this interval.", + "type": "number", + "format": "int32", + "readOnly": true + }, + "metrics": { + "type": "array", + "items": { + "$ref": "#/definitions/QueryMetric" + }, + "description": "The list of query metrics during this interval.", + "readOnly": true + } + }, + "description": "A database query." + }, + "QueryMetric": { + "properties": { + "name": { + "description": "The name of the metric", + "type": "string", + "readOnly": true + }, + "displayName": { + "description": "The name of the metric for display in user interface", + "type": "string", + "readOnly": true + }, + "unit": { + "description": "The unit of measurement", + "type": "string", + "enum": [ + "percentage", + "KB", + "microseconds" + ], + "x-ms-enum": { + "name": "QueryMetricUnit", + "modelAsString": false + }, + "readOnly": true + }, + "value": { + "description": "The measured value", + "type": "number", + "format": "double", + "readOnly": true + } + }, + "description": "A database query." + }, + "TopQueriesListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/TopQueries" + }, + "description": "The list of top queries." + } + }, + "required": [ + "value" + ], + "description": "Represents the response to a get top queries request." + }, + "DataWarehouseUserActivitiesProperties": { + "description": "User activities of a data warehouse. This currently includes the count of running or suspended queries. For more information, please view the sys.dm_pdw_exec_requests dynamic management view (DMV).", + "type": "object", + "properties": { + "activeQueriesCount": { + "format": "int32", + "description": "Count of running and suspended queries.", + "type": "integer", + "readOnly": true + } + } + }, + "DataWarehouseUserActivities": { + "description": "User activities of a data warehouse", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/DataWarehouseUserActivitiesProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "RestorePointListResult": { + "description": "A list of long term retention backups.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/RestorePoint" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "RestorePointProperties": { + "description": "Properties of a database restore point", + "type": "object", + "properties": { + "restorePointType": { + "description": "The type of restore point", + "enum": [ + "CONTINUOUS", + "DISCRETE" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "RestorePointType", + "modelAsString": false + } + }, + "earliestRestoreDate": { + "format": "date-time", + "description": "The earliest time to which this database can be restored", + "type": "string", + "readOnly": true + }, + "restorePointCreationDate": { + "format": "date-time", + "description": "The time the backup was taken", + "type": "string", + "readOnly": true + }, + "restorePointLabel": { + "description": "The label of restore point for backup request by user", + "type": "string", + "readOnly": true + } + } + }, + "RestorePoint": { + "description": "Database restore points.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "location": { + "description": "Resource location.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/RestorePointProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "ReplicationLinkProperties": { + "properties": { + "isTerminationAllowed": { + "readOnly": true, + "type": "boolean", + "description": "Legacy value indicating whether termination is allowed. Currently always returns true." + }, + "replicationMode": { + "readOnly": true, + "type": "string", + "description": "Replication mode of this replication link." + }, + "partnerServer": { + "readOnly": true, + "type": "string", + "description": "The name of the workspace hosting the partner Sql pool." + }, + "partnerDatabase": { + "readOnly": true, + "type": "string", + "description": "The name of the partner Sql pool." + }, + "partnerLocation": { + "readOnly": true, + "type": "string", + "description": "The Azure Region of the partner Sql pool." + }, + "role": { + "readOnly": true, + "type": "string", + "description": "The role of the Sql pool in the replication link.", + "enum": [ + "Primary", + "Secondary", + "NonReadableSecondary", + "Source", + "Copy" + ], + "x-ms-enum": { + "name": "ReplicationRole" + } + }, + "partnerRole": { + "readOnly": true, + "type": "string", + "description": "The role of the partner Sql pool in the replication link.", + "enum": [ + "Primary", + "Secondary", + "NonReadableSecondary", + "Source", + "Copy" + ], + "x-ms-enum": { + "name": "ReplicationRole" + } + }, + "startTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The start time for the replication link." + }, + "percentComplete": { + "readOnly": true, + "type": "integer", + "format": "int32", + "description": "The percentage of seeding complete for the replication link." + }, + "replicationState": { + "readOnly": true, + "type": "string", + "description": "The replication state for the replication link.", + "enum": [ + "PENDING", + "SEEDING", + "CATCH_UP", + "SUSPENDED" + ], + "x-ms-enum": { + "name": "ReplicationState", + "modelAsString": true + } + } + }, + "description": "Represents the properties of a Sql pool replication link." + }, + "ReplicationLink": { + "properties": { + "location": { + "type": "string", + "description": "Location of the workspace that contains this firewall rule.", + "readOnly": true + }, + "type": { + "type": "string", + "description": "Type of resource this is.", + "readOnly": true + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ReplicationLinkProperties", + "description": "The properties representing the resource." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Represents a Sql pool replication link." + }, + "ReplicationLinkListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ReplicationLink" + }, + "description": "The list of Sql pool replication links housed in the Sql pool." + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + }, + "description": "Represents the response to a List Sql pool replication link request." + }, + "TransparentDataEncryptionProperties": { + "properties": { + "status": { + "type": "string", + "description": "The status of the database transparent data encryption.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "TransparentDataEncryptionStatus" + } + } + }, + "description": "Represents the properties of a database transparent data encryption." + }, + "TransparentDataEncryption": { + "properties": { + "location": { + "type": "string", + "readOnly": true, + "description": "Resource location." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/TransparentDataEncryptionProperties", + "description": "Represents the properties of the resource." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "description": "Represents a Sql pool transparent data encryption configuration." + }, + "SqlPoolBlobAuditingPolicyProperties": { + "description": "Properties of a Sql pool blob auditing policy.", + "required": [ + "state" + ], + "type": "object", + "properties": { + "state": { + "description": "Specifies the state of the policy. If state is Enabled, storageEndpoint or isAzureMonitorTargetEnabled are required.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "BlobAuditingPolicyState", + "modelAsString": false + } + }, + "storageEndpoint": { + "description": "Specifies the blob storage endpoint (e.g. https://MyAccount.blob.core.windows.net). If state is Enabled, storageEndpoint is required.", + "type": "string" + }, + "storageAccountAccessKey": { + "description": "Specifies the identifier key of the auditing storage account. If state is Enabled and storageEndpoint is specified, storageAccountAccessKey is required.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "retentionDays": { + "format": "int32", + "description": "Specifies the number of days to keep in the audit logs in the storage account.", + "type": "integer" + }, + "auditActionsAndGroups": { + "description": "Specifies the Actions-Groups and Actions to audit.\r\n\r\nThe recommended set of action groups to use is the following combination - this will audit all the queries and stored procedures executed against the database, as well as successful and failed logins:\r\n\r\nBATCH_COMPLETED_GROUP,\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP,\r\nFAILED_DATABASE_AUTHENTICATION_GROUP.\r\n\r\nThis above combination is also the set that is configured by default when enabling auditing from the Azure portal.\r\n\r\nThe supported action groups to audit are (note: choose only specific groups that cover your auditing needs. Using unnecessary groups could lead to very large quantities of audit records):\r\n\r\nAPPLICATION_ROLE_CHANGE_PASSWORD_GROUP\r\nBACKUP_RESTORE_GROUP\r\nDATABASE_LOGOUT_GROUP\r\nDATABASE_OBJECT_CHANGE_GROUP\r\nDATABASE_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nDATABASE_OBJECT_PERMISSION_CHANGE_GROUP\r\nDATABASE_OPERATION_GROUP\r\nDATABASE_PERMISSION_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_CHANGE_GROUP\r\nDATABASE_PRINCIPAL_IMPERSONATION_GROUP\r\nDATABASE_ROLE_MEMBER_CHANGE_GROUP\r\nFAILED_DATABASE_AUTHENTICATION_GROUP\r\nSCHEMA_OBJECT_ACCESS_GROUP\r\nSCHEMA_OBJECT_CHANGE_GROUP\r\nSCHEMA_OBJECT_OWNERSHIP_CHANGE_GROUP\r\nSCHEMA_OBJECT_PERMISSION_CHANGE_GROUP\r\nSUCCESSFUL_DATABASE_AUTHENTICATION_GROUP\r\nUSER_CHANGE_PASSWORD_GROUP\r\nBATCH_STARTED_GROUP\r\nBATCH_COMPLETED_GROUP\r\n\r\nThese are groups that cover all sql statements and stored procedures executed against the database, and should not be used in combination with other groups as this will result in duplicate audit logs.\r\n\r\nFor more information, see [Database-Level Audit Action Groups](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-action-groups).\r\n\r\nFor Database auditing policy, specific Actions can also be specified (note that Actions cannot be specified for Server auditing policy). The supported actions to audit are:\r\nSELECT\r\nUPDATE\r\nINSERT\r\nDELETE\r\nEXECUTE\r\nRECEIVE\r\nREFERENCES\r\n\r\nThe general form for defining an action to be audited is:\r\n{action} ON {object} BY {principal}\r\n\r\nNote that in the above format can refer to an object like a table, view, or stored procedure, or an entire database or schema. For the latter cases, the forms DATABASE::{db_name} and SCHEMA::{schema_name} are used, respectively.\r\n\r\nFor example:\r\nSELECT on dbo.myTable by public\r\nSELECT on DATABASE::myDatabase by public\r\nSELECT on SCHEMA::mySchema by public\r\n\r\nFor more information, see [Database-Level Audit Actions](https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions#database-level-audit-actions)", + "type": "array", + "items": { + "type": "string" + } + }, + "storageAccountSubscriptionId": { + "format": "uuid", + "description": "Specifies the blob storage subscription Id.", + "type": "string" + }, + "isStorageSecondaryKeyInUse": { + "description": "Specifies whether storageAccountAccessKey value is the storage's secondary key.", + "type": "boolean" + }, + "isAzureMonitorTargetEnabled": { + "description": "Specifies whether audit events are sent to Azure Monitor. \r\nIn order to send the events to Azure Monitor, specify 'state' as 'Enabled' and 'isAzureMonitorTargetEnabled' as true.\r\n\r\nWhen using REST API to configure auditing, Diagnostic Settings with 'SQLSecurityAuditEvents' diagnostic logs category on the database should be also created.\r\nNote that for server level audit you should use the 'master' database as {databaseName}.\r\n\r\nDiagnostic Settings URI format:\r\nPUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/providers/microsoft.insights/diagnosticSettings/{settingsName}?api-version=2017-05-01-preview\r\n\r\nFor more information, see [Diagnostic Settings REST API](https://go.microsoft.com/fwlink/?linkid=2033207)\r\nor [Diagnostic Settings PowerShell](https://go.microsoft.com/fwlink/?linkid=2033043)\r\n", + "type": "boolean" + } + } + }, + "SqlPoolBlobAuditingPolicy": { + "description": "A Sql pool blob auditing policy.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "kind": { + "description": "Resource kind.", + "type": "string", + "readOnly": true + }, + "properties": { + "$ref": "#/definitions/SqlPoolBlobAuditingPolicyProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "SqlPoolBlobAuditingPolicySqlPoolOperationListResult": { + "description": "The response to a list Sql pool operations request", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/SqlPoolOperation" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "SqlPoolOperationProperties": { + "description": "The properties of a Sql pool operation.", + "type": "object", + "properties": { + "databaseName": { + "description": "The name of the Sql pool the operation is being performed on.", + "type": "string", + "readOnly": true + }, + "operation": { + "description": "The name of operation.", + "type": "string", + "readOnly": true + }, + "operationFriendlyName": { + "description": "The friendly name of operation.", + "type": "string", + "readOnly": true + }, + "percentComplete": { + "format": "int32", + "description": "The percentage of the operation completed.", + "type": "integer", + "readOnly": true + }, + "serverName": { + "description": "The name of the server.", + "type": "string", + "readOnly": true + }, + "startTime": { + "format": "date-time", + "description": "The operation start time.", + "type": "string", + "readOnly": true + }, + "state": { + "description": "The operation state.", + "enum": [ + "Pending", + "InProgress", + "Succeeded", + "Failed", + "CancelInProgress", + "Cancelled" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "ManagementOperationState", + "modelAsString": true + } + }, + "errorCode": { + "format": "int32", + "description": "The operation error code.", + "type": "integer", + "readOnly": true + }, + "errorDescription": { + "description": "The operation error description.", + "type": "string", + "readOnly": true + }, + "errorSeverity": { + "format": "int32", + "description": "The operation error severity.", + "type": "integer", + "readOnly": true + }, + "isUserError": { + "description": "Whether or not the error is a user error.", + "type": "boolean", + "readOnly": true + }, + "estimatedCompletionTime": { + "format": "date-time", + "description": "The estimated completion time of the operation.", + "type": "string", + "readOnly": true + }, + "description": { + "description": "The operation description.", + "type": "string", + "readOnly": true + }, + "isCancellable": { + "description": "Whether the operation can be cancelled.", + "type": "boolean", + "readOnly": true + } + } + }, + "SqlPoolOperation": { + "description": "A Sql pool operation.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SqlPoolOperationProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "SqlPoolUsage": { + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "The name of the usage metric." + }, + "resourceName": { + "readOnly": true, + "type": "string", + "description": "The name of the resource." + }, + "displayName": { + "readOnly": true, + "type": "string", + "description": "The usage metric display name." + }, + "currentValue": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The current value of the usage metric." + }, + "limit": { + "readOnly": true, + "type": "number", + "format": "double", + "description": "The current limit of the usage metric." + }, + "unit": { + "readOnly": true, + "type": "string", + "description": "The units of the usage metric." + }, + "nextResetTime": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The next reset time for the usage metric (ISO8601 format)." + } + }, + "description": "The Sql pool usages." + }, + "SqlPoolUsageListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/SqlPoolUsage" + }, + "description": "The list of usages for the Sql pool." + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + }, + "required": [ + "value" + ], + "description": "The response to a list Sql pool usages request." + }, + "SensitivityLabelProperties": { + "description": "Properties of a sensitivity label.", + "type": "object", + "properties": { + "labelName": { + "description": "The label name.", + "type": "string" + }, + "labelId": { + "description": "The label ID.", + "type": "string" + }, + "informationType": { + "description": "The information type.", + "type": "string" + }, + "informationTypeId": { + "description": "The information type ID.", + "type": "string" + }, + "isDisabled": { + "description": "Is sensitivity recommendation disabled. Applicable for recommended sensitivity label only. Specifies whether the sensitivity recommendation on this column is disabled (dismissed) or not.", + "type": "boolean", + "readOnly": true + } + } + }, + "SensitivityLabel": { + "description": "A sensitivity label.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SensitivityLabelProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "SensitivityLabelListResult": { + "description": "A list of sensitivity labels.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/SensitivityLabel" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "SqlPoolSchema": { + "description": "A Sql pool schema resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ] + }, + "SqlPoolSchemaListResult": { + "description": "A list of Sql pool schemas.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/SqlPoolSchema" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "SqlPoolTable": { + "description": "A Sql pool table resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ] + }, + "SqlPoolTableListResult": { + "description": "A list of Sql pool tables.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/SqlPoolTable" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "SqlPoolColumnProperties": { + "description": "Sql pool column properties.", + "type": "object", + "properties": { + "columnType": { + "description": "The column data type.", + "enum": [ + "image", + "text", + "uniqueidentifier", + "date", + "time", + "datetime2", + "datetimeoffset", + "tinyint", + "smallint", + "int", + "smalldatetime", + "real", + "money", + "datetime", + "float", + "sql_variant", + "ntext", + "bit", + "decimal", + "numeric", + "smallmoney", + "bigint", + "hierarchyid", + "geometry", + "geography", + "varbinary", + "varchar", + "binary", + "char", + "timestamp", + "nvarchar", + "nchar", + "xml", + "sysname" + ], + "type": "string", + "x-ms-enum": { + "name": "ColumnDataType", + "modelAsString": true + } + } + } + }, + "SqlPoolColumn": { + "description": "A Sql pool column resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SqlPoolColumnProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "SqlPoolColumnListResult": { + "description": "A list of Sql pool columns.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/SqlPoolColumn" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "SqlPoolConnectionPolicyProperties": { + "description": "Properties of a Sql pool connection policy.", + "type": "object", + "properties": { + "securityEnabledAccess": { + "description": "The state of security access.", + "type": "string" + }, + "proxyDnsName": { + "description": "The fully qualified host name of the auditing proxy.", + "type": "string" + }, + "proxyPort": { + "description": "The port number of the auditing proxy.", + "type": "string" + }, + "visibility": { + "description": "The visibility of the auditing proxy.", + "type": "string" + }, + "useServerDefault": { + "description": "Whether server default is enabled or disabled.", + "type": "string" + }, + "redirectionState": { + "description": "The state of proxy redirection.", + "type": "string" + }, + "state": { + "description": "The connection policy state.", + "type": "string" + } + } + }, + "SqlPoolConnectionPolicy": { + "description": "A Sql pool connection policy.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "kind": { + "description": "Resource kind.", + "type": "string", + "readOnly": true + }, + "location": { + "type": "string", + "readOnly": true, + "description": "Resource location." + }, + "properties": { + "$ref": "#/definitions/SqlPoolConnectionPolicyProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "SqlPoolVulnerabilityAssessmentProperties": { + "description": "Properties of a Sql pool Vulnerability Assessment.", + "type": "object", + "properties": { + "storageContainerPath": { + "description": "A blob storage container path to hold the scan results (e.g. https://myStorage.blob.core.windows.net/VaScans/). It is required if server level vulnerability assessment policy doesn't set", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "storageContainerSasKey": { + "description": "A shared access signature (SAS Key) that has write access to the blob container specified in 'storageContainerPath' parameter. If 'storageAccountAccessKey' isn't specified, StorageContainerSasKey is required.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "storageAccountAccessKey": { + "description": "Specifies the identifier key of the storage account for vulnerability assessment scan results. If 'StorageContainerSasKey' isn't specified, storageAccountAccessKey is required.", + "type": "string", + "x-ms-mutability": [ + "create", + "update" + ] + }, + "recurringScans": { + "$ref": "#/definitions/VulnerabilityAssessmentRecurringScansProperties", + "description": "The recurring scans settings" + } + } + }, + "VulnerabilityAssessmentRecurringScansProperties": { + "description": "Properties of a Vulnerability Assessment recurring scans.", + "type": "object", + "properties": { + "isEnabled": { + "description": "Recurring scans state.", + "type": "boolean" + }, + "emailSubscriptionAdmins": { + "description": "Specifies that the schedule scan notification will be is sent to the subscription administrators.", + "default": true, + "type": "boolean" + }, + "emails": { + "description": "Specifies an array of e-mail addresses to which the scan notification is sent.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "SqlPoolVulnerabilityAssessment": { + "description": "A Sql pool vulnerability assessment.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SqlPoolVulnerabilityAssessmentProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "SqlPoolVulnerabilityAssessmentListResult": { + "description": "A list of the Sql pool's vulnerability assessments.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/SqlPoolVulnerabilityAssessment" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "VulnerabilityAssessmentScanRecordListResult": { + "description": "A list of vulnerability assessment scan records.", + "type": "object", + "properties": { + "value": { + "description": "Array of results.", + "type": "array", + "items": { + "$ref": "#/definitions/VulnerabilityAssessmentScanRecord" + }, + "readOnly": true + }, + "nextLink": { + "description": "Link to retrieve next page of results.", + "type": "string", + "readOnly": true + } + } + }, + "VulnerabilityAssessmentScanRecord": { + "description": "A vulnerability assessment scan record.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/VulnerabilityAssessmentScanRecordProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "VulnerabilityAssessmentScanRecordProperties": { + "description": "Properties of a vulnerability assessment scan record.", + "type": "object", + "properties": { + "scanId": { + "description": "The scan ID.", + "type": "string", + "readOnly": true + }, + "triggerType": { + "description": "The scan trigger type.", + "enum": [ + "OnDemand", + "Recurring" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "VulnerabilityAssessmentScanTriggerType", + "modelAsString": true + } + }, + "state": { + "description": "The scan status.", + "enum": [ + "Passed", + "Failed", + "FailedToRun", + "InProgress" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "VulnerabilityAssessmentScanState", + "modelAsString": true + } + }, + "startTime": { + "format": "date-time", + "description": "The scan start time (UTC).", + "type": "string", + "readOnly": true + }, + "endTime": { + "format": "date-time", + "description": "The scan end time (UTC).", + "type": "string", + "readOnly": true + }, + "errors": { + "description": "The scan errors.", + "type": "array", + "items": { + "$ref": "#/definitions/VulnerabilityAssessmentScanError" + }, + "readOnly": true + }, + "storageContainerPath": { + "description": "The scan results storage container path.", + "type": "string", + "readOnly": true + }, + "numberOfFailedSecurityChecks": { + "format": "int32", + "description": "The number of failed security checks.", + "type": "integer", + "readOnly": true + } + } + }, + "VulnerabilityAssessmentScanError": { + "description": "Properties of a vulnerability assessment scan error.", + "type": "object", + "properties": { + "code": { + "description": "The error code.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The error message.", + "type": "string", + "readOnly": true + } + } + }, + "SecurityAlertPolicyProperties": { + "description": "Properties of a security alert policy.", + "required": [ + "state" + ], + "type": "object", + "properties": { + "state": { + "description": "Specifies the state of the policy, whether it is enabled or disabled or a policy has not been applied yet on the specific Sql pool.", + "enum": [ + "New", + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "SecurityAlertPolicyState", + "modelAsString": false + } + }, + "disabledAlerts": { + "description": "Specifies an array of alerts that are disabled. Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration, Unsafe_Action", + "type": "array", + "items": { + "type": "string" + } + }, + "emailAddresses": { + "description": "Specifies an array of e-mail addresses to which the alert is sent.", + "type": "array", + "items": { + "type": "string" + } + }, + "emailAccountAdmins": { + "description": "Specifies that the alert is sent to the account administrators.", + "type": "boolean" + }, + "storageEndpoint": { + "description": "Specifies the blob storage endpoint (e.g. https://MyAccount.blob.core.windows.net). This blob storage will hold all Threat Detection audit logs.", + "type": "string" + }, + "storageAccountAccessKey": { + "description": "Specifies the identifier key of the Threat Detection audit storage account.", + "type": "string" + }, + "retentionDays": { + "format": "int32", + "description": "Specifies the number of days to keep in the Threat Detection audit logs.", + "type": "integer" + }, + "creationTime": { + "format": "date-time", + "description": "Specifies the UTC creation time of the policy.", + "type": "string", + "readOnly": true + } + } + }, + "SqlPoolSecurityAlertPolicy": { + "description": "A Sql pool security alert policy.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SecurityAlertPolicyProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "SqlPoolVulnerabilityAssessmentRuleBaselineProperties": { + "description": "Properties of a Sql pool vulnerability assessment rule baseline.", + "required": [ + "baselineResults" + ], + "type": "object", + "properties": { + "baselineResults": { + "description": "The rule baseline result", + "type": "array", + "items": { + "$ref": "#/definitions/SqlPoolVulnerabilityAssessmentRuleBaselineItem" + } + } + } + }, + "SqlPoolVulnerabilityAssessmentRuleBaselineItem": { + "description": "Properties for an Sql pool vulnerability assessment rule baseline's result.", + "required": [ + "result" + ], + "type": "object", + "properties": { + "result": { + "description": "The rule baseline result", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "SqlPoolVulnerabilityAssessmentRuleBaseline": { + "description": "A Sql pool vulnerability assessment rule baseline.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SqlPoolVulnerabilityAssessmentRuleBaselineProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "SqlPoolVulnerabilityAssessmentScanExportProperties": { + "description": "Properties of the export operation's result.", + "type": "object", + "properties": { + "exportedReportLocation": { + "description": "Location of the exported report (e.g. https://myStorage.blob.core.windows.net/VaScans/scans/serverName/databaseName/scan_scanId.xlsx).", + "type": "string", + "readOnly": true + } + } + }, + "SqlPoolVulnerabilityAssessmentScansExport": { + "description": "A Sql pool Vulnerability Assessment scan export resource.", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/SqlPoolVulnerabilityAssessmentScanExportProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + } + }, + "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" + } + } + }, + "CreateSqlPoolRestorePointDefinition": { + "description": "Contains the information necessary to perform a create Sql pool restore point operation.", + "required": [ + "restorePointLabel" + ], + "type": "object", + "properties": { + "restorePointLabel": { + "description": "The restore point label to apply", + "type": "string" + } + } + } + } +} diff --git a/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/workspace.json b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/workspace.json new file mode 100644 index 000000000000..cf94bd3ca600 --- /dev/null +++ b/specification/synapse/resource-manager/Microsoft.Synapse/preview/2019-06-01-preview/workspace.json @@ -0,0 +1,889 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-06-01-preview", + "title": "SynapseManagementClient", + "description": "Azure Synapse Analytics APIs" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "securityDefinitions": { + "azure_auth": { + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "type": "oauth2", + "scopes": { + "user_impersonation": "impersonate your user account" + }, + "description": "Azure Active Directory OAuth2 Flow" + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces": { + "get": { + "operationId": "Workspaces_ListByResourceGroup", + "description": "Returns a list of workspaces in a resource group", + "tags": [ + "Workspaces" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/WorkspaceInfoListResult" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List workspaces in resource group": { + "$ref": "./examples/ListWorkspacesInResourceGroup.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}": { + "get": { + "operationId": "Workspaces_Get", + "description": "Gets a workspace", + "tags": [ + "Workspaces" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/workspaceNameParameter" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/Workspace" + }, + "description": "" + }, + "default": { + "schema": { + "$ref": "#/definitions/ErrorContract" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get a workspace": { + "$ref": "./examples/GetWorkspace.json" + } + } + }, + "patch": { + "operationId": "Workspaces_Update", + "description": "Updates a workspace", + "tags": [ + "Workspaces" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/workspaceNameParameter" + }, + { + "schema": { + "$ref": "#/definitions/WorkspacePatchInfo" + }, + "in": "body", + "name": "workspacePatchInfo", + "required": true, + "description": "Workspace patch request properties" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/Workspace" + }, + "description": "" + }, + "201": { + "schema": { + "$ref": "#/definitions/Workspace" + }, + "description": "" + }, + "default": { + "schema": { + "$ref": "#/definitions/ErrorContract" + }, + "description": "" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Update a workspace": { + "$ref": "./examples/UpdateWorkspace.json" + } + } + }, + "put": { + "operationId": "Workspaces_CreateOrUpdate", + "description": "Creates or updates a workspace", + "tags": [ + "Workspaces" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/workspaceNameParameter" + }, + { + "description": "Workspace create or update request properties", + "schema": { + "$ref": "#/definitions/Workspace" + }, + "in": "body", + "name": "workspaceInfo", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/Workspace" + }, + "description": "" + }, + "201": { + "schema": { + "$ref": "#/definitions/Workspace" + }, + "description": "" + }, + "default": { + "schema": { + "$ref": "#/definitions/ErrorContract" + }, + "description": "" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Create or update a workspace": { + "$ref": "./examples/CreateOrUpdateWorkspace.json" + } + } + }, + "delete": { + "operationId": "Workspaces_Delete", + "description": "Deletes a workspace", + "tags": [ + "Workspaces" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/workspaceNameParameter" + } + ], + "responses": { + "200": { + "schema": { + "type": "object" + }, + "description": "OK" + }, + "202": { + "schema": { + "type": "object" + }, + "description": "" + }, + "204": { + "description": "" + }, + "default": { + "schema": { + "$ref": "#/definitions/ErrorContract" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete a workspace": { + "$ref": "./examples/DeleteWorkspace.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Synapse/workspaces": { + "get": { + "operationId": "Workspaces_List", + "description": "Returns a list of workspaces in a subscription", + "tags": [ + "Workspaces" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/WorkspaceInfoListResult" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List workspaces in subscription": { + "$ref": "./examples/ListWorkspacesInSubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/administrators/activeDirectory": { + "get": { + "operationId": "WorkspaceAadAdmins_Get", + "description": "Gets a workspace active directory admin", + "tags": [ + "Workspaces" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/workspaceNameParameter" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/WorkspaceAadAdminInfo" + }, + "description": "OK" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get workspace active directory admin": { + "$ref": "./examples/GetWorkspaceAadAdmin.json" + } + } + }, + "put": { + "operationId": "WorkspaceAadAdmins_CreateOrUpdate", + "description": "Creates or updates a workspace active directory admin", + "tags": [ + "Workspaces" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/workspaceNameParameter" + }, + { + "description": "Workspace active directory administrator properties", + "schema": { + "$ref": "#/definitions/WorkspaceAadAdminInfo" + }, + "in": "body", + "name": "aadAdminInfo", + "required": true + } + ], + "responses": { + "200": { + "description": "", + "schema": { + "$ref": "#/definitions/WorkspaceAadAdminInfo" + } + }, + "202": { + "description": "", + "schema": { + "$ref": "#/definitions/WorkspaceAadAdminInfo" + } + }, + "default": { + "schema": { + "$ref": "#/definitions/ErrorContract" + }, + "description": "" + } + }, + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Create or update workspace active directory admin": { + "$ref": "./examples/CreateOrUpdateWorkspaceAadAdmin.json" + } + } + }, + "delete": { + "operationId": "WorkspaceAadAdmins_Delete", + "description": "Deletes a workspace active directory admin", + "tags": [ + "Workspaces" + ], + "deprecated": false, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/workspaceNameParameter" + } + ], + "responses": { + "200": { + "description": "" + }, + "202": { + "description": "" + }, + "default": { + "schema": { + "$ref": "#/definitions/ErrorContract" + }, + "description": "" + } + }, + "consumes": [], + "produces": [ + "application/json" + ], + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-examples": { + "Delete workspace active directory admin": { + "$ref": "./examples/DeleteWorkspaceAadAdmin.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Synapse/workspaces/{workspaceName}/managedIdentitySqlControlSettings/default": { + "get": { + "operationId": "WorkspaceManagedIdentitySqlControlSettings_Get", + "summary": "Get Managed Identity Sql Control Settings", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/ManagedIdentitySqlControlSettingsModel" + }, + "description": "OK" + }, + "default": { + "schema": { + "$ref": "./workspace.json#/definitions/ErrorContract" + }, + "description": "Error" + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Get managed identity sql control settings": { + "$ref": "./examples/GetManagedIdentitySqlControlSettings.json" + } + } + }, + "put": { + "operationId": "WorkspaceManagedIdentitySqlControlSettings_CreateOrUpdate", + "summary": "Create or update Managed Identity Sql Control Settings", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "./workspace.json#/parameters/workspaceNameParameter" + }, + { + "description": "Managed Identity Sql Control Settings", + "schema": { + "$ref": "#/definitions/ManagedIdentitySqlControlSettingsModel" + }, + "in": "body", + "name": "managedIdentitySqlControlSettings", + "required": true + } + ], + "responses": { + "200": { + "schema": { + "$ref": "#/definitions/ManagedIdentitySqlControlSettingsModel" + }, + "description": "OK" + }, + "default": { + "schema": { + "$ref": "./workspace.json#/definitions/ErrorContract" + }, + "description": "Error" + } + }, + "produces": [ + "application/json" + ], + "x-ms-examples": { + "Create or update managed identity sql control settings": { + "$ref": "./examples/CreateOrUpdateManagedIdentitySqlControlSettings.json" + } + } + } + } + }, + "definitions": { + "ErrorDetail": { + "description": "Error details", + "type": "object", + "properties": { + "message": { + "description": "Error message", + "type": "string" + }, + "code": { + "description": "Error code", + "type": "string" + }, + "target": { + "description": "Error target", + "type": "string" + } + } + }, + "ErrorContract": { + "title": "Error details.", + "description": "Contains details when the response code indicates an error.", + "type": "object", + "properties": { + "error": { + "description": "The error details.", + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorResponse" + } + } + }, + "AadAdminProperties": { + "description": "Workspace active directory administrator properties", + "type": "object", + "properties": { + "tenantId": { + "description": "Tenant ID of the workspace active directory administrator", + "type": "string" + }, + "login": { + "description": "Login of the workspace active directory administrator", + "type": "string" + }, + "administratorType": { + "description": "Workspace active directory administrator type", + "type": "string" + }, + "sid": { + "description": "Object ID of the workspace active directory administrator", + "type": "string" + } + } + }, + "WorkspaceInfoListResult": { + "description": "List of workspaces", + "type": "object", + "properties": { + "nextLink": { + "description": "Link to the next page of results", + "type": "string" + }, + "value": { + "description": "List of workspaces", + "type": "array", + "items": { + "$ref": "#/definitions/Workspace" + } + } + } + }, + "DataLakeStorageAccountDetails": { + "description": "Details of the data lake storage account associated with the workspace", + "type": "object", + "properties": { + "accountUrl": { + "description": "Account URL", + "type": "string" + }, + "filesystem": { + "description": "Filesystem name", + "type": "string" + } + } + }, + "ManagedIdentity": { + "description": "The workspace managed identity", + "type": "object", + "properties": { + "principalId": { + "description": "The principal ID of the workspace managed identity", + "type": "string", + "readOnly": true + }, + "tenantId": { + "description": "The tenant ID of the workspace managed identity", + "type": "string", + "readOnly": true + }, + "type": { + "description": "The type of managed identity for the workspace", + "enum": [ + "None", + "SystemAssigned" + ], + "type": "string", + "x-ms-enum": { + "name": "ResourceIdentityType", + "modelAsString": false + } + } + } + }, + "VirtualNetworkProfile": { + "description": "Virtual Network Profile", + "type": "object", + "properties": { + "computeSubnetId": { + "description": "Subnet ID used for computes in workspace", + "type": "string" + } + } + }, + "WorkspaceAadAdminInfo": { + "description": "Workspace active directory administrator", + "type": "object", + "x-ms-azure-resource": true, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "description": "Workspace active directory administrator properties", + "$ref": "#/definitions/AadAdminProperties", + "x-ms-client-flatten": true + } + } + }, + "Workspace": { + "description": "A workspace", + "type": "object", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "description": "Workspace resource properties", + "$ref": "#/definitions/WorkspaceProperties", + "x-ms-client-flatten": true + }, + "identity": { + "description": "Identity of the workspace", + "$ref": "#/definitions/ManagedIdentity" + } + } + }, + "WorkspaceProperties": { + "description": "Workspace properties", + "type": "object", + "properties": { + "defaultDataLakeStorage": { + "description": "Workspace default data lake storage account details", + "$ref": "#/definitions/DataLakeStorageAccountDetails" + }, + "sqlAdministratorLoginPassword": { + "description": "SQL administrator login password", + "type": "string" + }, + "managedResourceGroupName": { + "description": "Workspace managed resource group", + "readOnly": true, + "type": "string" + }, + "provisioningState": { + "description": "Resource provisioning state", + "type": "string", + "readOnly": true + }, + "sqlAdministratorLogin": { + "description": "Login for workspace SQL active directory administrator", + "type": "string" + }, + "virtualNetworkProfile": { + "description": "Virtual Network profile", + "$ref": "#/definitions/VirtualNetworkProfile" + }, + "connectivityEndpoints": { + "description": "Connectivity endpoints", + "additionalProperties": { + "type": "string" + }, + "type": "object" + }, + "managedVirtualNetwork": { + "description": "Setting this to 'default' will ensure that all compute for this workspace is in a virtual network managed on behalf of the user.", + "type": "string" + }, + "privateEndpointConnections": { + "description": "Private endpoint connections to the workspace", + "type": "array", + "items": { + "$ref": "./privateEndpointConnections.json#/definitions/PrivateEndpointConnection" + } + } + } + }, + "WorkspacePatchInfo": { + "description": "Workspace patch details", + "type": "object", + "properties": { + "tags": { + "description": "Resource tags", + "additionalProperties": { + "type": "string" + }, + "type": "object" + }, + "identity": { + "description": "The identity of the workspace", + "$ref": "#/definitions/ManagedIdentity" + }, + "properties": { + "description": "Workspace patch properties", + "$ref": "#/definitions/WorkspacePatchProperties", + "x-ms-client-flatten": true + } + } + }, + "WorkspacePatchProperties": { + "description": "Workspace patch properties", + "type": "object", + "properties": { + "sqlAdministratorLoginPassword": { + "description": "SQL administrator login password", + "type": "string" + }, + "provisioningState": { + "description": "Resource provisioning state", + "type": "string", + "readOnly": true + } + } + }, + "ManagedIdentitySqlControlSettingsModel": { + "type": "object", + "title": "Managed Identity Sql Control Settings", + "description": "Sql Control Settings for workspace managed identity", + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "title": "Managed Identity Sql Control Settings", + "description": "Sql Control Settings for workspace managed identity", + "properties": { + "grantSqlControlToManagedIdentity": { + "type": "object", + "description": "Grant sql control to managed identity", + "properties": { + "desiredState": { + "description": "Desired state", + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + "actualState": { + "description": "Actual state", + "type": "string", + "enum": [ + "Enabling", + "Enabled", + "Disabling", + "Disabled", + "Unknown" + ], + "readOnly": true + } + } + } + }, + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "workspaceNameParameter": { + "name": "workspaceName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the workspace", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/synapse/resource-manager/readme.go.md b/specification/synapse/resource-manager/readme.go.md new file mode 100644 index 000000000000..32298c57e93c --- /dev/null +++ b/specification/synapse/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: synapse + clear-output-folder: true +``` + +### Go multi-api + +``` yaml $(go) && $(multiapi) +batch: + - tag: package-2019-06-01-preview +``` + +### Tag: package-2019-06-01-preview and go + +These settings apply only when `--tag=package-2019-06-01-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +``` yaml $(tag) == 'package-2019-06-01-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2019-06-01-preview/$(namespace) +``` \ No newline at end of file diff --git a/specification/synapse/resource-manager/readme.java.md b/specification/synapse/resource-manager/readme.java.md new file mode 100644 index 000000000000..05c8d6afc164 --- /dev/null +++ b/specification/synapse/resource-manager/readme.java.md @@ -0,0 +1,47 @@ +## Java + +These settings apply only when `--java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(java) +azure-arm: true +fluent: true +namespace: com.microsoft.azure.management.synapse +license-header: MICROSOFT_MIT_NO_CODEGEN +payload-flattening-threshold: 1 +output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-synapse +directive: + - rename-operation: + from: IntegrationRuntimeNodeIpAddress_Get + to: IntegrationRuntimeNodeIpAddressOperation_Get + - rename-operation: + from: IntegrationRuntimeAuthKeys_Regenerate + to: IntegrationRuntimeAuthKeysOperation_Regenerate + - rename-operation: + from: IntegrationRuntimeAuthKeys_List + to: IntegrationRuntimeAuthKeysOperation_List + - rename-operation: + from: IntegrationRuntimeStatus_Get + to: IntegrationRuntimeStatusOperation_Get +``` + +### Java multi-api + +``` yaml $(java) && $(multiapi) +batch: + - tag: package-2019-06-01-preview +``` + +### Tag: package-2019-06-01-preview and java + +These settings apply only when `--tag=package-2019-06-01-preview --java` is specified on the command line. + +Please also specify `--azure-libraries-for-java=`. + +``` yaml $(tag) == 'package-2019-06-01-preview' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.synapse.v2019_06_01_preview + output-folder: $(azure-libraries-for-java-folder)/sdk/synapse/mgmt-v2019_06_01_preview +regenerate-manager: true +generate-interface: true +``` \ No newline at end of file diff --git a/specification/synapse/resource-manager/readme.md b/specification/synapse/resource-manager/readme.md new file mode 100644 index 000000000000..bbcb58e62821 --- /dev/null +++ b/specification/synapse/resource-manager/readme.md @@ -0,0 +1,140 @@ +# Azure Synapse Analytics + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for Azure Synapse Analytics. + + + +--- +## Getting Started +To build the SDK for Azure Synapse Analytics, [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 the Azure Synapse Analytics API. + +``` yaml +title: SynapseManagementClient +description: Azure Synapse Analytics Management Client +openapi-type: arm +azure-arm: true +tag: package-2019-06-01-preview +``` + +### Tag: package-2019-06-01-preview + +These settings apply only when `--tag=package-2019-06-01-preview` is specified on the command line. + +``` yaml $(tag) == 'package-2019-06-01-preview' +input-file: +- Microsoft.Synapse/preview/2019-06-01-preview/bigDataPool.json +- Microsoft.Synapse/preview/2019-06-01-preview/checkNameAvailability.json +- Microsoft.Synapse/preview/2019-06-01-preview/firewallRule.json +- Microsoft.Synapse/preview/2019-06-01-preview/operations.json +- Microsoft.Synapse/preview/2019-06-01-preview/sqlPool.json +- Microsoft.Synapse/preview/2019-06-01-preview/workspace.json +- Microsoft.Synapse/preview/2019-06-01-preview/integrationRuntime.json +- Microsoft.Synapse/preview/2019-06-01-preview/privateLinkResources.json +- Microsoft.Synapse/preview/2019-06-01-preview/privateEndpointConnections.json +``` + +## Suppressions + +``` yaml +directive: + - suppress: EnumInsteadOfBoolean + reason: This boolean values are actually boolean in the model. + - suppress: TrackedResourceListByImmediateParent + reason: Does not apply to workspace/operationStatus and workspace/operationResults . + - suppress: PostOperationIdContainsUrlVerb + reason: ReplaceAllIpFirewallRules has a nonstandard verb ReplaceAll. + - suppress: TrackedResourceListByResourceGroup + reason: Does not apply to sqlPool and bigDataPool as they are nested tracked resources + - suppress: TrackedResourceListBySubscription + reason: Does not apply to sqlPool and bigDataPool as they are nested tracked resources +``` + +--- +# 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-js + - repo: azure-sdk-for-java + - repo: azure-sdk-for-python + - repo: azure-sdk-for-go +``` + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## Java + +See configuration in [readme.java.md](./readme.java.md) + +## C# + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +``` yaml $(csharp) +csharp: + license-header: MICROSOFT_MIT_NO_VERSION + namespace: Microsoft.Azure.Management.Synapse + output-folder: $(csharp-sdks-folder)/synapse/Microsoft.Azure.Management.Synapse/src/Generated + clear-output-folder: true +``` + +## Go + +See configuration in [readme.go.md](./readme.go.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 + +``` + +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.python.md b/specification/synapse/resource-manager/readme.python.md new file mode 100644 index 000000000000..81f4725832c0 --- /dev/null +++ b/specification/synapse/resource-manager/readme.python.md @@ -0,0 +1,26 @@ +## 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 $(python) +python-mode: create +python: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: azure.mgmt.synapse + package-name: azure-mgmt-synapse + package-version: 0.1.0 + clear-output-folder: true +``` +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/synapse/azure-mgmt-synapse/azure/mgmt/synapse +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/synapse/azure-mgmt-synapse diff --git a/specification/synapse/resource-manager/readme.typescript.md b/specification/synapse/resource-manager/readme.typescript.md new file mode 100644 index 000000000000..829f76dfff47 --- /dev/null +++ b/specification/synapse/resource-manager/readme.typescript.md @@ -0,0 +1,12 @@ +## 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: "@azure/arm-synapse" + output-folder: "$(typescript-sdks-folder)/sdk/synapse/arm-synapse" + generate-metadata: true +``` diff --git a/specification/timeseriesinsights/resource-manager/readme.md b/specification/timeseriesinsights/resource-manager/readme.md index da066852f97e..ba285f75085e 100644 --- a/specification/timeseriesinsights/resource-manager/readme.md +++ b/specification/timeseriesinsights/resource-manager/readme.md @@ -25,16 +25,16 @@ These are the global settings for the TimeSeriesInsights API. ``` yaml openapi-type: arm -tag: package-2017-11-15 +tag: package-2018-08-preview ``` -### Tag: package-2017-02-preview +### Tag: package-2018-08-preview -These settings apply only when `--tag=package-2017-02-preview` is specified on the command line. +These settings apply only when `--tag=package-2018-08-preview` is specified on the command line. -``` yaml $(tag) == 'package-2017-02-preview' +``` yaml $(tag) == 'package-2018-08-preview' input-file: -- Microsoft.TimeSeriesInsights/preview/2017-02-28-preview/timeseriesinsights.json +- Microsoft.TimeSeriesInsights/preview/2018-08-15-preview/timeseriesinsights.json ``` ### Tag: package-2017-11-15 @@ -46,13 +46,13 @@ input-file: - Microsoft.TimeSeriesInsights/stable/2017-11-15/timeseriesinsights.json ``` -### Tag: package-2018-08-preview +### Tag: package-2017-02-preview -These settings apply only when `--tag=package-2018-08-preview` is specified on the command line. +These settings apply only when `--tag=package-2017-02-preview` is specified on the command line. -``` yaml $(tag) == 'package-2018-08-preview' +``` yaml $(tag) == 'package-2017-02-preview' input-file: -- Microsoft.TimeSeriesInsights/preview/2018-08-15-preview/timeseriesinsights.json +- Microsoft.TimeSeriesInsights/preview/2017-02-28-preview/timeseriesinsights.json ``` ## Suppression @@ -177,9 +177,9 @@ require: $(this-folder)/../../../profiles/readme.md # all the input files across all versions input-file: - - $(this-folder)/Microsoft.TimeSeriesInsights/preview/2017-02-28-preview/timeseriesinsights.json - - $(this-folder)/Microsoft.TimeSeriesInsights/stable/2017-11-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 ``` diff --git a/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/Clusters_CreateOrUpdate.json b/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/Clusters_CreateOrUpdate.json new file mode 100644 index 000000000000..516f612bdec1 --- /dev/null +++ b/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/Clusters_CreateOrUpdate.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2019-08-09-preview", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "clusterName": "cluster1", + "cluster": { + "properties": { + "clusterSize": 3 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.VMwareVirtustream/privateClouds/cloud1/clusters/cluster1", + "name": "cluster1", + "properties": { + "clusterSize": 3, + "hosts": [ + "fakehost22.nyc1.kubernetes.center", + "fakehost23.nyc1.kubernetes.center", + "fakehost24.nyc1.kubernetes.center" + ], + "provisioningState": "Updating" + }, + "type": "Microsoft.VMwareVirtustream/privateClouds/clusters" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.VMwareVirtustream/privateClouds/cloud1/clusters/cluster1", + "name": "cluster1", + "properties": { + "clusterSize": 3, + "hosts": [ + "fakehost22.nyc1.kubernetes.center", + "fakehost23.nyc1.kubernetes.center", + "fakehost24.nyc1.kubernetes.center" + ], + "provisioningState": "Updating" + }, + "type": "Microsoft.VMwareVirtustream/privateClouds/clusters" + } + } + } +} diff --git a/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/Clusters_Delete.json b/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/Clusters_Delete.json new file mode 100644 index 000000000000..7f0b6d61ed68 --- /dev/null +++ b/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/Clusters_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2019-08-09-preview", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "clusterName": "cluster1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/Clusters_Get.json b/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/Clusters_Get.json new file mode 100644 index 000000000000..7439e9b3fdd7 --- /dev/null +++ b/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/Clusters_Get.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-08-09-preview", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "clusterName": "cluster1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.VMwareVirtustream/privateClouds/cloud1/clusters/cluster1", + "name": "cluster1", + "properties": { + "clusterSize": 4, + "hosts": [ + "fakehost22.nyc1.kubernetes.center", + "fakehost23.nyc1.kubernetes.center", + "fakehost24.nyc1.kubernetes.center", + "fakehost25.nyc1.kubernetes.center" + ], + "provisioningState": "Updating" + }, + "type": "Microsoft.VMwareVirtustream/privateClouds/clusters" + } + } + } +} diff --git a/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/Clusters_List.json b/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/Clusters_List.json new file mode 100644 index 000000000000..b57cbdea4110 --- /dev/null +++ b/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/Clusters_List.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "api-version": "2019-08-09-preview", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1" + }, + "responses": { + "200": { + "body": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.VMwareVirtustream/privateClouds/cloud1/clusters/cluster1", + "name": "cluster1", + "properties": { + "clusterSize": 3, + "hosts": [ + "fakehost22.nyc1.kubernetes.center", + "fakehost23.nyc1.kubernetes.center", + "fakehost24.nyc1.kubernetes.center" + ], + "provisioningState": "Succeeded" + }, + "type": "Microsoft.VMwareVirtustream/privateClouds/clusters" + } + ] + } + } +} diff --git a/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/Clusters_Update.json b/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/Clusters_Update.json new file mode 100644 index 000000000000..c8ae471a28b1 --- /dev/null +++ b/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/Clusters_Update.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2019-08-09-preview", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "clusterName": "cluster1", + "cluster": { + "properties": { + "clusterSize": 4 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.VMwareVirtustream/privateClouds/cloud1/clusters/cluster1", + "name": "cluster1", + "properties": { + "clusterSize": 4, + "hosts": [ + "fakehost22.nyc1.kubernetes.center", + "fakehost23.nyc1.kubernetes.center", + "fakehost24.nyc1.kubernetes.center", + "fakehost25.nyc1.kubernetes.center" + ], + "provisioningState": "Updating" + }, + "type": "Microsoft.VMwareVirtustream/privateClouds/clusters" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.VMwareVirtustream/privateClouds/cloud1/clusters/cluster1", + "name": "cluster1", + "properties": { + "clusterSize": 4, + "hosts": [ + "fakehost22.nyc1.kubernetes.center", + "fakehost23.nyc1.kubernetes.center", + "fakehost24.nyc1.kubernetes.center", + "fakehost25.nyc1.kubernetes.center" + ], + "provisioningState": "Updating" + }, + "type": "Microsoft.VMwareVirtustream/privateClouds/clusters" + } + } + } +} diff --git a/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/Operations_List.json b/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/Operations_List.json new file mode 100644 index 000000000000..a103fc70a7e7 --- /dev/null +++ b/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/Operations_List.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2019-08-09-preview" + }, + "responses": { + "200": { + "body": [ + { + "display": { + "description": "Creates a private cloud", + "operation": "Create Private Cloud", + "provider": "VMware Solution by Virtustream", + "resource": "Private Cloud" + }, + "name": "Microsoft.VMwareVirtustream/privateClouds/create", + "origin": "user,system" + } + ], + "nextLink": "string" + } + } +} diff --git a/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/PrivateClouds_CreateOrUpdate.json b/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/PrivateClouds_CreateOrUpdate.json new file mode 100644 index 000000000000..b66bb8939e90 --- /dev/null +++ b/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/PrivateClouds_CreateOrUpdate.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "api-version": "2019-08-09-preview", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "privateCloud": { + "location": "eastus2", + "properties": { + "cluster": { + "clusterSize": 4 + } + }, + "tags": {} + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.VMwareVirtustream/privateClouds/cloud1", + "location": "eastus2", + "name": "cloud1", + "properties": { + "circuit": { + "authorizations": [], + "expressRouteID": "/subscriptions/{subscription-id}/resourceGroups/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2/providers/Microsoft.Network/expressroutecircuits/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2-xconnect", + "primarySubnet": "192.168.53.0/30", + "secondarySubnet": "192.168.53.4/30" + }, + "cluster": { + "clusterId": 1, + "clusterSize": 4, + "hosts": [ + "fakehost18.nyc1.kubernetes.center", + "fakehost19.nyc1.kubernetes.center", + "fakehost20.nyc1.kubernetes.center", + "fakehost21.nyc1.kubernetes.center" + ] + }, + "clusters": [], + "endpoints": { + "nsxtManager": "https://192.168.50.3/", + "vcsa": "https://192.168.50.2/" + }, + "identitySources": [ + { + "alias": "groupAlias", + "baseGroupDN": "ou=baseGroup", + "baseUserDN": "ou=baseUser", + "domain": "domain1", + "name": "group1", + "primaryServer": "ldaps://1.1.1.1:636/", + "secondaryServer": "ldaps://1.1.1.2:636/", + "ssl": "Enabled" + } + ], + "internet": "Disabled", + "provisioningState": "Updating" + }, + "tags": {}, + "type": "Microsoft.VMwareVirtustream/privateClouds" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.VMwareVirtustream/privateClouds/cloud1", + "location": "eastus2", + "name": "cloud1", + "properties": { + "circuit": { + "authorizations": [], + "expressRouteID": "/subscriptions/{subscription-id}/resourceGroups/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2/providers/Microsoft.Network/expressroutecircuits/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2-xconnect", + "primarySubnet": "192.168.53.0/30", + "secondarySubnet": "192.168.53.4/30", + "expressRoutePrivatePeeringID": "/subscriptions/{subscription-id}/resourceGroups/tnt42-cust-p01-dmo01/providers/Microsoft.Network/expressroutecircuits/tnt42-cust-p01-dmo01-er/peerings/AzurePrivatePeering" + }, + "cluster": { + "clusterId": 1, + "clusterSize": 4, + "hosts": [ + "fakehost18.nyc1.kubernetes.center", + "fakehost19.nyc1.kubernetes.center", + "fakehost20.nyc1.kubernetes.center", + "fakehost21.nyc1.kubernetes.center" + ] + }, + "clusters": [], + "endpoints": { + "nsxtManager": "https://192.168.50.3/", + "vcsa": "https://192.168.50.2/" + }, + "identitySources": [ + { + "alias": "groupAlias", + "baseGroupDN": "ou=baseGroup", + "baseUserDN": "ou=baseUser", + "domain": "domain1", + "name": "group1", + "primaryServer": "ldaps://1.1.1.1:636/", + "secondaryServer": "ldaps://1.1.1.2:636/", + "ssl": "Enabled" + } + ], + "internet": "Disabled", + "provisioningState": "Updating" + }, + "tags": {}, + "type": "Microsoft.VMwareVirtustream/privateClouds" + } + } + } +} diff --git a/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/PrivateClouds_Delete.json b/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/PrivateClouds_Delete.json new file mode 100644 index 000000000000..cbadcd2a5823 --- /dev/null +++ b/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/PrivateClouds_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2019-08-09-preview", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/PrivateClouds_Get.json b/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/PrivateClouds_Get.json new file mode 100644 index 000000000000..0a88f8d07e67 --- /dev/null +++ b/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/PrivateClouds_Get.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2019-08-09-preview", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.VMwareVirtustream/privateClouds/cloud1", + "location": "eastus2", + "name": "cloud1", + "properties": { + "circuit": { + "authorizations": [], + "expressRouteID": "/subscriptions/{subscription-id}/resourceGroups/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2/providers/Microsoft.Network/expressroutecircuits/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2-xconnect", + "primarySubnet": "192.168.53.0/30", + "secondarySubnet": "192.168.53.4/30", + "expressRoutePrivatePeeringID": "/subscriptions/{subscription-id}/resourceGroups/tnt42-cust-p01-dmo01/providers/Microsoft.Network/expressroutecircuits/tnt42-cust-p01-dmo01-er/peerings/AzurePrivatePeering" + }, + "cluster": { + "clusterId": 1, + "clusterSize": 4, + "hosts": [ + "fakehost18.nyc1.kubernetes.center", + "fakehost19.nyc1.kubernetes.center", + "fakehost20.nyc1.kubernetes.center", + "fakehost21.nyc1.kubernetes.center" + ] + }, + "clusters": [], + "endpoints": { + "nsxtManager": "https://192.168.50.3/", + "vcsa": "https://192.168.50.2/" + }, + "identitySources": [ + { + "alias": "groupAlias", + "baseGroupDN": "ou=baseGroup", + "baseUserDN": "ou=baseUser", + "domain": "domain1", + "name": "group1", + "primaryServer": "ldaps://1.1.1.1:636/", + "secondaryServer": "ldaps://1.1.1.2:636/", + "ssl": "Enabled" + } + ], + "internet": "Disabled", + "provisioningState": "Updating" + }, + "tags": {}, + "type": "Microsoft.VMwareVirtustream/privateClouds" + } + } + } +} diff --git a/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/PrivateClouds_List.json b/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/PrivateClouds_List.json new file mode 100644 index 000000000000..13ffa9fe89e7 --- /dev/null +++ b/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/PrivateClouds_List.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "api-version": "2019-08-09-preview", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1" + }, + "responses": { + "200": { + "body": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.VMwareVirtustream/privateClouds/cloud1", + "location": "eastus2", + "name": "cloud1", + "properties": { + "circuit": { + "authorizations": [], + "expressRouteID": "/subscriptions/{subscription-id}/resourceGroups/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2/providers/Microsoft.Network/expressroutecircuits/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2-xconnect", + "primarySubnet": "192.168.53.0/30", + "secondarySubnet": "192.168.53.4/30", + "expressRoutePrivatePeeringID": "/subscriptions/{subscription-id}/resourceGroups/tnt42-cust-p01-dmo01/providers/Microsoft.Network/expressroutecircuits/tnt42-cust-p01-dmo01-er/peerings/AzurePrivatePeering" + }, + "cluster": { + "clusterId": 1, + "clusterSize": 4, + "hosts": [ + "fakehost18.nyc1.kubernetes.center", + "fakehost19.nyc1.kubernetes.center", + "fakehost20.nyc1.kubernetes.center", + "fakehost21.nyc1.kubernetes.center" + ] + }, + "clusters": [], + "endpoints": { + "nsxtManager": "https://192.168.50.3/", + "vcsa": "https://192.168.50.2/" + }, + "identitySources": [ + { + "alias": "groupAlias", + "baseGroupDN": "ou=baseGroup", + "baseUserDN": "ou=baseUser", + "domain": "domain1", + "name": "group1", + "primaryServer": "ldaps://1.1.1.1:636/", + "secondaryServer": "ldaps://1.1.1.2:636/", + "ssl": "Enabled" + } + ], + "internet": "Disabled", + "provisioningState": "Updating" + }, + "tags": {}, + "type": "Microsoft.VMwareVirtustream/privateClouds" + } + ] + } + } +} diff --git a/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/PrivateClouds_ListAdminCredentials.json b/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/PrivateClouds_ListAdminCredentials.json new file mode 100644 index 000000000000..7284be8ebf79 --- /dev/null +++ b/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/PrivateClouds_ListAdminCredentials.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2019-08-09-preview", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1" + }, + "responses": { + "200": { + "body": { + "nsxtPassword": "$(1X4Dkk", + "nsxtUsername": "admin", + "vcenterPassword": "iG17wC^-", + "vcenterUsername": "cloudadmin@vmcp.local" + } + } + } +} diff --git a/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/PrivateClouds_ListInSubscription.json b/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/PrivateClouds_ListInSubscription.json new file mode 100644 index 000000000000..e1cfd76318dd --- /dev/null +++ b/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/PrivateClouds_ListInSubscription.json @@ -0,0 +1,57 @@ +{ + "parameters": { + "api-version": "2019-08-09-preview", + "subscriptionId": "{subscription-id}" + }, + "responses": { + "200": { + "body": [ + { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.VMwareVirtustream/privateClouds/cloud1", + "location": "eastus2", + "name": "cloud1", + "properties": { + "circuit": { + "authorizations": [], + "expressRouteID": "/subscriptions/{subscription-id}/resourceGroups/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2/providers/Microsoft.Network/expressroutecircuits/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2-xconnect", + "primarySubnet": "192.168.53.0/30", + "secondarySubnet": "192.168.53.4/30", + "expressRoutePrivatePeeringID": "/subscriptions/{subscription-id}/resourceGroups/tnt42-cust-p01-dmo01/providers/Microsoft.Network/expressroutecircuits/tnt42-cust-p01-dmo01-er/peerings/AzurePrivatePeering" + }, + "cluster": { + "clusterId": 1, + "clusterSize": 4, + "hosts": [ + "fakehost18.nyc1.kubernetes.center", + "fakehost19.nyc1.kubernetes.center", + "fakehost20.nyc1.kubernetes.center", + "fakehost21.nyc1.kubernetes.center" + ] + }, + "clusters": [], + "endpoints": { + "nsxtManager": "https://192.168.50.3/", + "vcsa": "https://192.168.50.2/" + }, + "identitySources": [ + { + "alias": "groupAlias", + "baseGroupDN": "ou=baseGroup", + "baseUserDN": "ou=baseUser", + "domain": "domain1", + "name": "group1", + "primaryServer": "ldaps://1.1.1.1:636/", + "secondaryServer": "ldaps://1.1.1.2:636/", + "ssl": "Enabled" + } + ], + "internet": "Disabled", + "provisioningState": "Updating" + }, + "tags": {}, + "type": "Microsoft.VMwareVirtustream/privateClouds" + } + ] + } + } +} diff --git a/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/PrivateClouds_Update.json b/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/PrivateClouds_Update.json new file mode 100644 index 000000000000..8e429efbe6aa --- /dev/null +++ b/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/examples/PrivateClouds_Update.json @@ -0,0 +1,113 @@ +{ + "parameters": { + "api-version": "2019-08-09-preview", + "subscriptionId": "{subscription-id}", + "resourceGroupName": "group1", + "privateCloudName": "cloud1", + "privateCloud": { + "location": "eastus2", + "properties": { + "cluster": { + "clusterSize": 4 + } + }, + "tags": {} + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.VMwareVirtustream/privateClouds/cloud1", + "location": "eastus2", + "name": "cloud1", + "properties": { + "circuit": { + "authorizations": [], + "expressRouteID": "/subscriptions/{subscription-id}/resourceGroups/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2/providers/Microsoft.Network/expressroutecircuits/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2-xconnect", + "primarySubnet": "192.168.53.0/30", + "secondarySubnet": "192.168.53.4/30", + "expressRoutePrivatePeeringID": "/subscriptions/{subscription-id}/resourceGroups/tnt42-cust-p01-dmo01/providers/Microsoft.Network/expressroutecircuits/tnt42-cust-p01-dmo01-er/peerings/AzurePrivatePeering" + }, + "cluster": { + "clusterId": 1, + "clusterSize": 4, + "hosts": [ + "fakehost18.nyc1.kubernetes.center", + "fakehost19.nyc1.kubernetes.center", + "fakehost20.nyc1.kubernetes.center", + "fakehost21.nyc1.kubernetes.center" + ] + }, + "clusters": [], + "endpoints": { + "nsxtManager": "https://192.168.50.3/", + "vcsa": "https://192.168.50.2/" + }, + "identitySources": [ + { + "alias": "groupAlias", + "baseGroupDN": "ou=baseGroup", + "baseUserDN": "ou=baseUser", + "domain": "domain1", + "name": "group1", + "primaryServer": "ldaps://1.1.1.1:636/", + "secondaryServer": "ldaps://1.1.1.2:636/", + "ssl": "Enabled" + } + ], + "internet": "Disabled", + "provisioningState": "Updating" + }, + "tags": {}, + "type": "Microsoft.VMwareVirtustream/privateClouds" + } + }, + "201": { + "body": { + "id": "/subscriptions/{subscription-id}/resourceGroups/group1/providers/Microsoft.VMwareVirtustream/privateClouds/cloud1", + "location": "eastus2", + "name": "cloud1", + "properties": { + "circuit": { + "authorizations": [], + "expressRouteID": "/subscriptions/{subscription-id}/resourceGroups/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2/providers/Microsoft.Network/expressroutecircuits/tnt13-41a90db2-9d5e-4bd5-a77a-5ce7b58213d6-eastus2-xconnect", + "primarySubnet": "192.168.53.0/30", + "secondarySubnet": "192.168.53.4/30", + "expressRoutePrivatePeeringID": "/subscriptions/{subscription-id}/resourceGroups/tnt42-cust-p01-dmo01/providers/Microsoft.Network/expressroutecircuits/tnt42-cust-p01-dmo01-er/peerings/AzurePrivatePeering" + }, + "cluster": { + "clusterId": 1, + "clusterSize": 4, + "hosts": [ + "fakehost18.nyc1.kubernetes.center", + "fakehost19.nyc1.kubernetes.center", + "fakehost20.nyc1.kubernetes.center", + "fakehost21.nyc1.kubernetes.center" + ] + }, + "clusters": [], + "endpoints": { + "nsxtManager": "https://192.168.50.3/", + "vcsa": "https://192.168.50.2/" + }, + "identitySources": [ + { + "alias": "groupAlias", + "baseGroupDN": "ou=baseGroup", + "baseUserDN": "ou=baseUser", + "domain": "domain1", + "name": "group1", + "primaryServer": "ldaps://1.1.1.1:636/", + "secondaryServer": "ldaps://1.1.1.2:636/", + "ssl": "Enabled" + } + ], + "internet": "Disabled", + "provisioningState": "Updating" + }, + "tags": {}, + "type": "Microsoft.VMwareVirtustream/privateClouds" + } + } + } +} diff --git a/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/vmwarevirtustream.json b/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/vmwarevirtustream.json new file mode 100644 index 000000000000..14389afe3a36 --- /dev/null +++ b/specification/vmwarevirtustream/resource-manager/Microsoft.VMwareVirtustream/preview/2019-08-09-preview/vmwarevirtustream.json @@ -0,0 +1,1174 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure VMware Solution by Virtustream API", + "description": "Azure VMware Solution by Virtustream API", + "version": "2019-08-09-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" + } + } + }, + "tags": [ + { + "name": "PrivateClouds", + "description": "" + }, + { + "name": "Clusters", + "description": "" + } + ], + "parameters": { + "subscriptionId": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Unique identifier for the Azure subscription" + }, + "resourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the resource group within the Azure subscription", + "x-ms-parameter-location": "method" + }, + "apiVersion": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Version of Azure VMware Solution by Virtustream API to be used with the client request" + }, + "privateCloudName": { + "name": "privateCloudName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the private cloud", + "x-ms-parameter-location": "method" + }, + "clusterName": { + "name": "clusterName", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the cluster in the private cloud", + "x-ms-parameter-location": "method" + } + }, + "paths": { + "/providers/Microsoft.VMwareVirtustream/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all of the available operations", + "operationId": "Operations_List", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "Request has succeeded", + "schema": { + "$ref": "#/definitions/OperationList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "Operations_List": { + "$ref": "./examples/Operations_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VMwareVirtustream/privateClouds": { + "get": { + "operationId": "PrivateClouds_List", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "tags": [ + "PrivateClouds" + ], + "summary": "List private clouds in a resource group", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/PrivateCloudList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "PrivateClouds_List": { + "$ref": "./examples/PrivateClouds_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.VMwareVirtustream/privateClouds": { + "get": { + "operationId": "PrivateClouds_ListInSubscription", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "tags": [ + "PrivateClouds" + ], + "summary": "List private clouds in a subscription", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/PrivateCloudList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "PrivateClouds_List": { + "$ref": "./examples/PrivateClouds_ListInSubscription.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VMwareVirtustream/privateClouds/{privateCloudName}": { + "get": { + "operationId": "PrivateClouds_Get", + "tags": [ + "PrivateClouds" + ], + "summary": "Get a private cloud", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/PrivateCloud" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "PrivateClouds_Get": { + "$ref": "./examples/PrivateClouds_Get.json" + } + } + }, + "put": { + "operationId": "PrivateClouds_CreateOrUpdate", + "x-ms-long-running-operation": true, + "tags": [ + "PrivateClouds" + ], + "summary": "Create or update a private cloud", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "name": "privateCloud", + "description": "The private cloud", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateCloud" + } + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/PrivateCloud" + } + }, + "201": { + "description": "accepted operation", + "schema": { + "$ref": "#/definitions/PrivateCloud" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "PrivateClouds_CreateOrUpdate": { + "$ref": "./examples/PrivateClouds_CreateOrUpdate.json" + } + } + }, + "patch": { + "operationId": "PrivateClouds_Update", + "x-ms-long-running-operation": true, + "tags": [ + "PrivateClouds" + ], + "summary": "Update a private cloud", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "name": "privateCloud", + "description": "The private cloud", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateCloud" + } + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/PrivateCloud" + } + }, + "201": { + "description": "accepted operation", + "schema": { + "$ref": "#/definitions/PrivateCloud" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "PrivateClouds_Update": { + "$ref": "./examples/PrivateClouds_Update.json" + } + } + }, + "delete": { + "operationId": "PrivateClouds_Delete", + "x-ms-long-running-operation": true, + "tags": [ + "PrivateClouds" + ], + "summary": "Delete a private cloud", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "OK. The delete has succeeded" + }, + "202": { + "description": "Accepted. The delete will complete asynchronously" + }, + "204": { + "description": "No Content. No private cloud to delete" + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "PrivateClouds_Delete": { + "$ref": "./examples/PrivateClouds_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VMwareVirtustream/privateClouds/{privateCloudName}/clusters": { + "get": { + "operationId": "Clusters_List", + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "tags": [ + "Clusters" + ], + "summary": "List clusters in a private cloud", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/ClusterList" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "Clusters_List": { + "$ref": "./examples/Clusters_List.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VMwareVirtustream/privateClouds/{privateCloudName}/clusters/{clusterName}": { + "get": { + "operationId": "Clusters_Get", + "tags": [ + "Clusters" + ], + "summary": "Get a cluster by name in a private cloud", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/clusterName" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "Clusters_Get": { + "$ref": "./examples/Clusters_Get.json" + } + } + }, + "put": { + "operationId": "Clusters_CreateOrUpdate", + "x-ms-long-running-operation": true, + "tags": [ + "Clusters" + ], + "summary": "Create or update a cluster in a private cloud", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "name": "privateCloudName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private cloud." + }, + { + "$ref": "#/parameters/clusterName" + }, + { + "name": "cluster", + "description": "A cluster in the private cloud", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "201": { + "description": "accepted operation", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "Clusters_CreateOrUpdate": { + "$ref": "./examples/Clusters_CreateOrUpdate.json" + } + } + }, + "patch": { + "operationId": "Clusters_Update", + "x-ms-long-running-operation": true, + "tags": [ + "Clusters" + ], + "summary": "Update a cluster in a private cloud", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/clusterName" + }, + { + "name": "cluster", + "description": "A cluster in a private cloud", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "201": { + "description": "accepted operation", + "schema": { + "$ref": "#/definitions/Cluster" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "Clusters_Update": { + "$ref": "./examples/Clusters_Update.json" + } + } + }, + "delete": { + "operationId": "Clusters_Delete", + "x-ms-long-running-operation": true, + "tags": [ + "Clusters" + ], + "summary": "Delete a cluster in a private cloud", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/clusterName" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "OK. The delete has succeeded" + }, + "202": { + "description": "Accepted. The delete will complete asynchronously" + }, + "204": { + "description": "No Content. No cluster to delete" + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "Clusters_Delete": { + "$ref": "./examples/Clusters_Delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.VMwareVirtustream/privateClouds/{privateCloudName}/listAdminCredentials": { + "post": { + "operationId": "PrivateClouds_ListAdminCredentials", + "tags": [ + "PrivateClouds" + ], + "summary": "List the admin credentials for the private cloud", + "parameters": [ + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/privateCloudName" + }, + { + "$ref": "#/parameters/apiVersion" + } + ], + "responses": { + "200": { + "description": "successful operation", + "schema": { + "$ref": "#/definitions/AdminCredentials" + } + }, + "default": { + "description": "Error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ApiError" + } + } + }, + "x-ms-examples": { + "PrivateClouds_ListAdminCredentials": { + "$ref": "./examples/PrivateClouds_ListAdminCredentials.json" + } + } + } + } + }, + "definitions": { + "Resource": { + "description": "The core properties of ARM resources", + "properties": { + "id": { + "description": "Resource ID.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Resource name.", + "readOnly": true, + "type": "string" + }, + "type": { + "description": "Resource type.", + "readOnly": true, + "type": "string" + } + }, + "x-ms-azure-resource": true + }, + "TrackedResource": { + "description": "The resource model definition for a ARM tracked top level resource", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location" + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Resource tags" + } + } + }, + "ApiError": { + "properties": { + "error": { + "description": "An error returned by the API", + "$ref": "#/definitions/ApiErrorBase" + } + }, + "description": "API error response" + }, + "ApiErrorBase": { + "properties": { + "code": { + "type": "string", + "description": "Error code" + }, + "message": { + "type": "string", + "description": "Error message" + } + }, + "description": "Api error." + }, + "OperationList": { + "description": "Pageable list of operations", + "properties": { + "value": { + "description": "List of operations", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Operation" + } + }, + "nextLink": { + "description": "URL to get the next page if any", + "type": "string", + "readOnly": true + } + } + }, + "Operation": { + "description": "A REST API operation", + "type": "object", + "properties": { + "name": { + "description": "Name of the operation being performed on this object", + "type": "string", + "readOnly": true + }, + "display": { + "description": "Contains the localized display information for this operation", + "readOnly": true, + "properties": { + "provider": { + "description": "Localized friendly form of the resource provider name", + "type": "string", + "readOnly": true + }, + "resource": { + "description": "Localized friendly form of the resource type related to this operation", + "type": "string", + "readOnly": true + }, + "operation": { + "description": "Localized friendly name for the operation", + "type": "string", + "readOnly": true + }, + "description": { + "description": "Localized friendly description for the operation", + "type": "string", + "readOnly": true + } + } + } + } + }, + "ExpressRouteAuthorization": { + "description": "Authorization for an ExpressRoute", + "properties": { + "name": { + "description": "The name of the ExpressRoute", + "type": "string" + }, + "id": { + "description": "The ID of the ExpressRoute", + "type": "string", + "readOnly": true + }, + "key": { + "description": "The key of the ExpressRoute", + "type": "string", + "readOnly": true + } + } + }, + "Circuit": { + "description": "An ExpressRoute Circuit", + "properties": { + "primarySubnet": { + "type": "string", + "readOnly": true, + "description": "CIDR of primary subnet" + }, + "secondarySubnet": { + "type": "string", + "readOnly": true, + "description": "CIDR of secondary subnet" + }, + "expressRouteID": { + "type": "string", + "readOnly": true, + "description": "Identifier of the ExpressRoute (Microsoft Colo only)" + }, + "authorizations": { + "type": "array", + "description": "Authorizations for the ExpressRoute (Microsoft Colo only)", + "items": { + "$ref": "#/definitions/ExpressRouteAuthorization" + } + }, + "expressRoutePrivatePeeringID": { + "type": "string", + "readOnly": true, + "description": "ExpressRoute private peering identifier" + } + } + }, + "Endpoints": { + "description": "Endpoint addresses", + "properties": { + "nsxtManager": { + "description": "Endpoint for the NSX-T Data Center manager", + "type": "string", + "readOnly": true + }, + "vcsa": { + "description": "Endpoint for Virtual Center Server Appliance", + "type": "string", + "readOnly": true + } + } + }, + "IdentitySource": { + "description": "vCenter Single Sign On Identity Source", + "properties": { + "name": { + "description": "The name of the identity source", + "type": "string" + }, + "alias": { + "description": "The domain's NetBIOS name", + "type": "string" + }, + "domain": { + "description": "The domain's dns name", + "type": "string" + }, + "baseUserDN": { + "description": "The base distinguished name for users", + "type": "string" + }, + "baseGroupDN": { + "description": "The base distinguished name for groups", + "type": "string" + }, + "primaryServer": { + "description": "Primary server URL", + "type": "string" + }, + "secondaryServer": { + "description": "Secondary server URL", + "type": "string" + }, + "ssl": { + "description": "Protect LDAP communication using SSL certificate (LDAPS)", + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "SslEnum", + "modelAsString": true + } + }, + "username": { + "description": "The ID of an Active Directory user with a minimum of read-only access to Base DN for users and group", + "type": "string" + }, + "password": { + "description": "The password of the Active Directory user with a minimum of read-only access to Base DN for users and groups.", + "type": "string" + } + } + }, + "PrivateCloud": { + "description": "A private cloud resource", + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "description": "The properties of a private cloud resource", + "$ref": "#/definitions/PrivateCloudProperties" + } + } + }, + "PrivateCloudProperties": { + "description": "The properties of a private cloud resource", + "properties": { + "provisioningState": { + "description": "The provisioning state", + "type": "string", + "readOnly": true, + "enum": [ + "Succeeded", + "Failed", + "Cancelled", + "Pending", + "Building", + "Updating" + ], + "x-ms-enum": { + "name": "PrivateCloudProvisioningState", + "modelAsString": true + } + }, + "circuit": { + "description": "An ExpressRoute Circuit", + "$ref": "#/definitions/Circuit" + }, + "cluster": { + "description": "The default cluster used for management", + "$ref": "#/definitions/DefaultClusterProperties" + }, + "clusters": { + "description": "The clusters", + "type": "array", + "readOnly": true, + "items": { + "type": "string" + } + }, + "endpoints": { + "description": "The endpoints", + "readOnly": true, + "$ref": "#/definitions/Endpoints" + }, + "internet": { + "description": "Connectivity to internet is enabled or disabled", + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "InternetEnum", + "modelAsString": true + } + }, + "identitySources": { + "description": "vCenter Single Sign On Identity Sources", + "type": "array", + "items": { + "$ref": "#/definitions/IdentitySource" + } + }, + "networkBlock": { + "description": "The block of addresses should be unique across VNet in your subscription as well as on-premise. Make sure the CIDR format is conformed to (A.B.C.D/X) where A,B,C,D are between 0 and 255, and X is between 0 and 22", + "type": "string" + }, + "managementNetwork": { + "description": "Network used to access vCenter Server and NSX-T Manager", + "type": "string", + "readOnly": true + }, + "provisioningNetwork": { + "description": "Used for virtual machine cold migration, cloning, and snapshot migration", + "type": "string", + "readOnly": true + }, + "vmotionNetwork": { + "description": "Used for live migration of virtual machines", + "type": "string", + "readOnly": true + }, + "vcenterPassword": { + "description": "Optionally, set the vCenter admin password when the private cloud is created", + "type": "string" + }, + "nsxtPassword": { + "description": "Optionally, set the NSX-T Manager password when the private cloud is created", + "type": "string" + } + } + }, + "Cluster": { + "description": "A cluster resource", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "properties": { + "description": "The properties of a cluster resource", + "$ref": "#/definitions/ClusterProperties" + } + } + }, + "DefaultClusterProperties": { + "description": "The properties of a default cluster", + "properties": { + "clusterId": { + "description": "The identity", + "type": "integer", + "readOnly": true + }, + "clusterSize": { + "description": "The cluster size", + "type": "integer" + }, + "hosts": { + "description": "The hosts", + "type": "array", + "readOnly": true, + "items": { + "type": "string" + } + } + } + }, + "ClusterProperties": { + "description": "The properties of a cluster", + "allOf": [ + { + "$ref": "#/definitions/DefaultClusterProperties" + } + ], + "properties": { + "provisioningState": { + "description": "The state of the cluster provisioning", + "type": "string", + "readOnly": true, + "enum": [ + "Succeeded", + "Failed", + "Cancelled", + "Updating" + ], + "x-ms-enum": { + "name": "ClusterProvisioningState", + "modelAsString": true + } + } + } + }, + "PrivateCloudList": { + "description": "A paged list of private clouds", + "properties": { + "value": { + "description": "The items on the page", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/PrivateCloud" + } + }, + "nextLink": { + "description": "URL to get the next page if any", + "type": "string", + "readOnly": true + } + } + }, + "ClusterList": { + "description": "A paged list of clusters", + "properties": { + "value": { + "description": "The items on a page", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Cluster" + } + }, + "nextLink": { + "description": "URL to get the next page if any", + "type": "string", + "readOnly": true + } + } + }, + "AdminCredentials": { + "description": "Administrative credentials for accessing vCenter and NSX-T", + "properties": { + "nsxtUsername": { + "description": "NSX-T Manager username", + "type": "string", + "readOnly": true + }, + "nsxtPassword": { + "description": "NSX-T Manager password", + "type": "string", + "readOnly": true + }, + "vcenterUsername": { + "description": "vCenter admin username", + "type": "string", + "readOnly": true + }, + "vcenterPassword": { + "description": "vCenter admin password", + "type": "string", + "readOnly": true + } + } + } + } +} diff --git a/specification/vmwarevirtustream/resource-manager/readme.csharp.md b/specification/vmwarevirtustream/resource-manager/readme.csharp.md new file mode 100644 index 000000000000..da240a6e154c --- /dev/null +++ b/specification/vmwarevirtustream/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: + package-version: 0.2.0 + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + clear-output-folder: true + namespace: Microsoft.Azure.Management.VMwareVirtustream + output-folder: $(csharp-sdks-folder)/VMwareVirtustream/Management.VMwareVirtustream/Generated +``` \ No newline at end of file diff --git a/specification/vmwarevirtustream/resource-manager/readme.python.md b/specification/vmwarevirtustream/resource-manager/readme.python.md new file mode 100644 index 000000000000..8b7a17c8d47a --- /dev/null +++ b/specification/vmwarevirtustream/resource-manager/readme.python.md @@ -0,0 +1,27 @@ +## 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 $(python) +python-mode: create +python: + package-version: 0.2.0 + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + namespace: azure.mgmt.vmwarevirtustream + package-name: azure-mgmt-vmwarevirtustream + clear-output-folder: true +``` +``` yaml $(python) && $(python-mode) == 'update' +python: + no-namespace-folders: true + output-folder: $(python-sdks-folder)/compute/azure-mgmt-vmwarevirtustream/azure/mgmt/vmwarevirtustream +``` +``` yaml $(python) && $(python-mode) == 'create' +python: + basic-setup-py: true + output-folder: $(python-sdks-folder)/compute/azure-mgmt-vmwarevirtustream +``` \ No newline at end of file diff --git a/specification/vmwarevirtustream/resource-manager/readme.typescript.md b/specification/vmwarevirtustream/resource-manager/readme.typescript.md new file mode 100644 index 000000000000..a4666ebb13f2 --- /dev/null +++ b/specification/vmwarevirtustream/resource-manager/readme.typescript.md @@ -0,0 +1,14 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +```yaml $(typescript) +typescript: + package-version: 0.2.0 + azure-arm: true + package-name: "@azure/arm-vmwarevirtustream" + output-folder: "$(typescript-sdks-folder)/sdk/vmwarevirtustream/arm-vmwarevirtustream" + payload-flattening-threshold: 1 + generate-metadata: true +``` \ No newline at end of file diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/CommonDefinitions.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/CommonDefinitions.json index e8fd03f953e3..fe02ddd901a7 100644 --- a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/CommonDefinitions.json +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/CommonDefinitions.json @@ -1921,6 +1921,10 @@ "description": "Version of Node.js.", "type": "string" }, + "powerShellVersion": { + "description": "Version of PowerShell.", + "type": "string" + }, "linuxFxVersion": { "description": "Linux App Framework and version", "type": "string" @@ -2486,6 +2490,25 @@ } } }, + "StringDictionary": { + "description": "String dictionary resource.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "Settings.", + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-client-flatten": true + } + } + }, "User": { "description": "User credentials used for publishing activity.", "type": "object", diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/StaticSites.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/StaticSites.json new file mode 100644 index 000000000000..a62ce9c0e366 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/StaticSites.json @@ -0,0 +1,1916 @@ +{ + "swagger": "2.0", + "info": { + "version": "2019-08-01", + "title": "StaticSites API Client" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Web/staticSites": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Get all Static Sites for a subscription.", + "description": "Description for Get all Static Sites for a subscription.", + "operationId": "StaticSites_List", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StaticSiteCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get all static sites in a subscription": { + "$ref": "./examples/GetAllStaticSites.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets all static sites in the specified resource group.", + "description": "Description for Gets all static sites in the specified resource group.", + "operationId": "StaticSites_GetStaticSitesByResourceGroup", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get static sites for a resource group": { + "$ref": "./examples/GetStaticSites.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the details of a static site.", + "description": "Description for Gets the details of a static site.", + "operationId": "StaticSites_GetStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get details for a static site": { + "$ref": "./examples/GetStaticSite.json" + } + } + }, + "put": { + "tags": [ + "StaticSites" + ], + "summary": "Creates a new static site in an existing resource group, or updates an existing static site.", + "description": "Description for Creates a new static site in an existing resource group, or updates an existing static site.", + "operationId": "StaticSites_CreateOrUpdateStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site to create or update.", + "required": true, + "type": "string" + }, + { + "name": "staticSiteEnvelope", + "in": "body", + "description": "A JSON representation of the staticsite properties. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSiteARMResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteARMResource" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "#/definitions/StaticSiteARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update a static site": { + "$ref": "./examples/CreateOrUpdateStaticSite.json" + } + } + }, + "delete": { + "tags": [ + "StaticSites" + ], + "summary": "Deletes a static site.", + "description": "Description for Deletes a static site.", + "operationId": "StaticSites_DeleteStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site to delete.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Asynchronous operation in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a static site": { + "$ref": "./examples/DeleteStaticSite.json" + } + } + }, + "patch": { + "tags": [ + "StaticSites" + ], + "summary": "Creates a new static site in an existing resource group, or updates an existing static site.", + "description": "Description for Creates a new static site in an existing resource group, or updates an existing static site.", + "operationId": "StaticSites_UpdateStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site to create or update.", + "required": true, + "type": "string" + }, + { + "name": "staticSiteEnvelope", + "in": "body", + "description": "A JSON representation of the staticsite properties. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSitePatchResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteARMResource" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "#/definitions/StaticSiteARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Patch a static site": { + "$ref": "./examples/PatchStaticSite.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/authproviders/{authprovider}/listUsers": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the list of users of a static site.", + "description": "Description for Gets the list of users of a static site.", + "operationId": "StaticSites_ListStaticSiteUsers", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "authprovider", + "in": "path", + "description": "The auth provider for the users.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteUserCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List users for a static site": { + "$ref": "./examples/ListStaticSiteUsers.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/authproviders/{authprovider}/users/{userid}": { + "delete": { + "tags": [ + "StaticSites" + ], + "summary": "Deletes the user entry from the static site.", + "description": "Description for Deletes the user entry from the static site.", + "operationId": "StaticSites_DeleteStaticSiteUser", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the staticsite.", + "required": true, + "type": "string" + }, + { + "name": "authprovider", + "in": "path", + "description": "The auth provider for this user.", + "required": true, + "type": "string" + }, + { + "name": "userid", + "in": "path", + "description": "The user id of the user.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a user for a static site": { + "$ref": "./examples/DeleteStaticSiteUser.json" + } + } + }, + "patch": { + "tags": [ + "StaticSites" + ], + "summary": "Updates a user entry with the listed roles", + "description": "Description for Updates a user entry with the listed roles", + "operationId": "StaticSites_UpdateStaticSiteUser", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "authprovider", + "in": "path", + "description": "The auth provider for this user.", + "required": true, + "type": "string" + }, + { + "name": "userid", + "in": "path", + "description": "The user id of the user.", + "required": true, + "type": "string" + }, + { + "name": "staticSiteUserEnvelope", + "in": "body", + "description": "A JSON representation of the StaticSiteUser properties. See example.", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSiteUserARMResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteUserARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update a user for a static site": { + "$ref": "./examples/UpdateStaticSiteUser.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/builds": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets all static site builds for a particular static site.", + "description": "Description for Gets all static site builds for a particular static site.", + "operationId": "StaticSites_GetStaticSiteBuilds", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteBuildCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get all builds for a static site": { + "$ref": "./examples/GetStaticSiteBuilds.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/builds/{prId}": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the details of a static site build.", + "description": "Description for Gets the details of a static site build.", + "operationId": "StaticSites_GetStaticSiteBuild", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "prId", + "in": "path", + "description": "The stage site identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteBuildARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a static site build": { + "$ref": "./examples/GetStaticSiteBuild.json" + } + } + }, + "delete": { + "tags": [ + "StaticSites" + ], + "summary": "Deletes a static site build.", + "description": "Description for Deletes a static site build.", + "operationId": "StaticSites_DeleteStaticSiteBuild", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "prId", + "in": "path", + "description": "The stage site identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Asynchronous operation in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a static site build": { + "$ref": "./examples/DeleteStaticSiteBuild.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/builds/{prId}/config/functionappsettings": { + "put": { + "tags": [ + "StaticSites" + ], + "summary": "Creates or updates the function app settings of a static site build.", + "description": "Description for Creates or updates the function app settings of a static site build.", + "operationId": "StaticSites_CreateOrUpdateStaticSiteBuildFunctionAppSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "prId", + "in": "path", + "description": "The stage site identifier.", + "required": true, + "type": "string" + }, + { + "name": "appSettings", + "in": "body", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Creates or updates the function app settings of a static site build.": { + "$ref": "./examples/CreateOrUpdateStaticSiteBuildFunctionAppSettings.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/builds/{prId}/functions": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the functions of a particular static site build.", + "description": "Description for Gets the functions of a particular static site build.", + "operationId": "StaticSites_ListStaticSiteBuildFunctions", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "prId", + "in": "path", + "description": "The stage site identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteFunctionOverviewCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Gets the functions of a particular static site build": { + "$ref": "./examples/ListStaticSiteBuildFunctions.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/builds/{prId}/listFunctionAppSettings": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the application settings of a static site.", + "description": "Description for Gets the application settings of a static site.", + "operationId": "StaticSites_ListStaticSiteBuildFunctionAppSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "prId", + "in": "path", + "description": "The stage site identifier.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get function app settings of a static site build": { + "$ref": "./examples/ListStaticSiteBuildFunctionAppSettings.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/config/functionappsettings": { + "put": { + "tags": [ + "StaticSites" + ], + "summary": "Creates or updates the function app settings of a static site.", + "description": "Description for Creates or updates the function app settings of a static site.", + "operationId": "StaticSites_CreateOrUpdateStaticSiteFunctionAppSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "appSettings", + "in": "body", + "required": true, + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Creates or updates the function app settings of a static site.": { + "$ref": "./examples/CreateOrUpdateStaticSiteFunctionAppSettings.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/createUserInvitation": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Creates an invitation link for a user with the role", + "description": "Description for Creates an invitation link for a user with the role", + "operationId": "StaticSites_CreateUserRolesInvitationLink", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "staticSiteUserRolesInvitationEnvelope", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSiteUserInvitationRequestResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteUserInvitationResponseResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Create an invitation link for a user for a static site": { + "$ref": "./examples/CreateUserRolesInvitationLink.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/customDomains": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets all static site custom domains for a particular static site.", + "description": "Description for Gets all static site custom domains for a particular static site.", + "operationId": "StaticSites_ListStaticSiteCustomDomains", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site resource to search in.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/StaticSiteCustomDomainOverviewCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List custom domains for a static site": { + "$ref": "./examples/GetStaticSiteCustomDomains.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/customDomains/{domainName}": { + "put": { + "tags": [ + "StaticSites" + ], + "summary": "Creates a new static site custom domain in an existing resource group and static site.", + "description": "Description for Creates a new static site custom domain in an existing resource group and static site.", + "operationId": "StaticSites_CreateOrUpdateStaticSiteCustomDomain", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "domainName", + "in": "path", + "description": "The custom domain to create.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteCustomDomainOverviewARMResource" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "#/definitions/StaticSiteCustomDomainOverviewARMResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Create or update a custom domain for a static site": { + "$ref": "./examples/CreateOrUpdateStaticSiteCustomDomain.json" + } + } + }, + "delete": { + "tags": [ + "StaticSites" + ], + "summary": "Deletes a custom domain.", + "description": "Description for Deletes a custom domain.", + "operationId": "StaticSites_DeleteStaticSiteCustomDomain", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "domainName", + "in": "path", + "description": "The custom domain to delete.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Asynchronous operation in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a custom domain for a static site": { + "$ref": "./examples/DeleteStaticSiteCustomDomain.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/customDomains/{domainName}/validate": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Validates a particular custom domain can be added to a static site.", + "description": "Description for Validates a particular custom domain can be added to a static site.", + "operationId": "StaticSites_ValidateCustomDomainCanBeAddedToStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "domainName", + "in": "path", + "description": "The custom domain to validate.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Asynchronous operation in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Validate a custom domain for a static site": { + "$ref": "./examples/ValidateStaticSiteCustomDomain.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/detach": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Detaches a static site.", + "description": "Description for Detaches a static site.", + "operationId": "StaticSites_DetachStaticSite", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site to detach.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "202": { + "description": "Asynchronous operation in progress." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Detach a static site": { + "$ref": "./examples/DetachStaticSite.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/functions": { + "get": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the functions of a static site.", + "description": "Description for Gets the functions of a static site.", + "operationId": "StaticSites_ListStaticSiteFunctions", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/StaticSiteFunctionOverviewCollection" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Gets the functions of a static site": { + "$ref": "./examples/ListStaticSiteFunctions.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/listFunctionAppSettings": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Gets the application settings of a static site.", + "description": "Description for Gets the application settings of a static site.", + "operationId": "StaticSites_ListStaticSiteFunctionAppSettings", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get function app settings of a static site": { + "$ref": "./examples/ListStaticSiteFunctionAppSettings.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/listSecrets": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Lists the secrets for an existing static site.", + "description": "Description for Lists the secrets for an existing static site.", + "operationId": "StaticSites_ListStaticSiteSecrets", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/StringDictionary" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "List secrets for a static site": { + "$ref": "./examples/ListStaticSiteSecrets.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/staticSites/{name}/resetapikey": { + "post": { + "tags": [ + "StaticSites" + ], + "summary": "Resets the api key for an existing static site.", + "description": "Description for Resets the api key for an existing static site.", + "operationId": "StaticSites_ResetStaticSiteApiKey", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the static site.", + "required": true, + "type": "string" + }, + { + "name": "resetPropertiesEnvelope", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/StaticSiteResetPropertiesARMResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK." + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Reset the api key for a static site": { + "$ref": "./examples/ResetStaticSiteApiKey.json" + } + } + } + } + }, + "definitions": { + "StaticSite": { + "description": "A static site.", + "type": "object", + "properties": { + "defaultHostname": { + "description": "The default autogenerated hostname for the static site.", + "type": "string", + "readOnly": true + }, + "repositoryUrl": { + "description": "URL for the repository of the static site.", + "type": "string" + }, + "branch": { + "description": "The target branch in the repository.", + "type": "string" + }, + "customDomains": { + "description": "The custom domains associated with this static site.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "repositoryToken": { + "description": "A user's github repository token. This is used to setup the Github Actions workflow file and API secrets.", + "type": "string" + }, + "buildProperties": { + "$ref": "#/definitions/StaticSiteBuildProperties", + "description": "Build properties to configure on the repository." + } + } + }, + "StaticSiteARMResource": { + "description": "Static Site ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/Resource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/StaticSite", + "description": "Core resource properties", + "x-ms-client-flatten": true + }, + "sku": { + "$ref": "./CommonDefinitions.json#/definitions/SkuDescription" + } + } + }, + "StaticSiteBuildARMResource": { + "description": "Static Site Build ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteBuildARMResource resource specific properties", + "properties": { + "buildId": { + "description": "An identifier for the static site build.", + "type": "string", + "readOnly": true + }, + "sourceBranch": { + "description": "The source branch.", + "type": "string", + "readOnly": true + }, + "pullRequestTitle": { + "description": "The title of a pull request that a static site build is related to.", + "type": "string", + "readOnly": true + }, + "hostname": { + "description": "The hostname for a static site build.", + "type": "string", + "readOnly": true + }, + "createdTimeUtc": { + "format": "date-time", + "description": "When this build was created.", + "type": "string", + "readOnly": true + }, + "lastUpdatedOn": { + "format": "date-time", + "description": "When this build was updated.", + "type": "string", + "readOnly": true + }, + "status": { + "description": "The status of the static site build.", + "enum": [ + "WaitingForDeployment", + "Uploading", + "Deploying", + "Ready", + "Failed", + "Deleting", + "Detached" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "BuildStatus", + "modelAsString": true + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSiteBuildCollection": { + "description": "Collection of static site builds.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/StaticSiteBuildARMResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "StaticSiteBuildProperties": { + "description": "Build properties for the static site.", + "type": "object", + "properties": { + "appLocation": { + "description": "The path to the app code within the repository.", + "type": "string" + }, + "apiLocation": { + "description": "The path to the api code within the repository.", + "type": "string" + }, + "appArtifactLocation": { + "description": "The path of the app artifacts after building.", + "type": "string" + } + } + }, + "StaticSiteCollection": { + "description": "Collection of static sites.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/StaticSiteARMResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "StaticSiteCustomDomainOverviewARMResource": { + "description": "Static Site Custom Domain Overview ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteCustomDomainOverviewARMResource resource specific properties", + "properties": { + "domainName": { + "description": "The domain name for the static site custom domain.", + "type": "string", + "readOnly": true + }, + "createdOn": { + "format": "date-time", + "description": "The date and time on which the custom domain was created for the static site.", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSiteCustomDomainOverviewCollection": { + "description": "Collection of static site custom domains.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/StaticSiteCustomDomainOverviewARMResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "StaticSiteFunctionOverviewARMResource": { + "description": "Static Site Function Overview ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteFunctionOverviewARMResource resource specific properties", + "properties": { + "functionName": { + "description": "The name for the function", + "type": "string", + "readOnly": true + }, + "triggerType": { + "description": "The trigger type of the function", + "enum": [ + "HttpTrigger", + "Unknown" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "TriggerTypes", + "modelAsString": true + } + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSiteFunctionOverviewCollection": { + "description": "Collection of static site functions.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/StaticSiteFunctionOverviewARMResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "StaticSitePatchResource": { + "description": "ARM resource for a static site when patching", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/StaticSite", + "description": "Core resource properties", + "x-ms-client-flatten": true + } + } + }, + "StaticSiteResetPropertiesARMResource": { + "description": "Static Site Reset Properties ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteResetPropertiesARMResource resource specific properties", + "properties": { + "repositoryToken": { + "description": "The token which proves admin privileges to the repository.", + "type": "string" + }, + "shouldUpdateRepository": { + "description": "Determines whether the repository should be updated with the new properties.", + "type": "boolean" + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSiteUserARMResource": { + "description": "Static Site User ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteUserARMResource resource specific properties", + "properties": { + "provider": { + "description": "The identity provider for the static site user.", + "type": "string", + "readOnly": true + }, + "userId": { + "description": "The user id for the static site user.", + "type": "string", + "readOnly": true + }, + "displayName": { + "description": "The display name for the static site user.", + "type": "string", + "readOnly": true + }, + "roles": { + "description": "The roles for the static site user, in free-form string format", + "type": "string" + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSiteUserCollection": { + "description": "Collection of static site custom users.", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "description": "Collection of resources.", + "type": "array", + "items": { + "$ref": "#/definitions/StaticSiteUserARMResource" + } + }, + "nextLink": { + "description": "Link to next page of resources.", + "type": "string", + "readOnly": true + } + } + }, + "StaticSiteUserInvitationRequestResource": { + "description": "Static sites user roles invitation resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteUserInvitationRequestResource resource specific properties", + "properties": { + "domain": { + "description": "The domain name for the static site custom domain.", + "type": "string" + }, + "provider": { + "description": "The identity provider for the static site user.", + "type": "string" + }, + "userDetails": { + "description": "The user id for the static site user.", + "type": "string" + }, + "roles": { + "description": "The roles for the static site user, in free-form string format", + "type": "string" + }, + "numHoursToExpiration": { + "format": "int32", + "description": "The number of hours the sas token stays valid", + "type": "integer" + } + }, + "x-ms-client-flatten": true + } + } + }, + "StaticSiteUserInvitationResponseResource": { + "description": "Static sites user roles invitation link resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "description": "StaticSiteUserInvitationResponseResource resource specific properties", + "properties": { + "expiresOn": { + "format": "date-time", + "description": "The expiration time of the invitation", + "type": "string", + "readOnly": true + }, + "invitationUrl": { + "description": "The url for the invitation link", + "type": "string", + "readOnly": true + } + }, + "x-ms-client-flatten": true + } + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).", + "required": true, + "type": "string" + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "description": "Name of the resource group to which the resource belongs.", + "required": true, + "type": "string", + "maxLength": 90, + "minLength": 1, + "pattern": "^[-\\w\\._\\(\\)]+[^\\.]$", + "x-ms-parameter-location": "method" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "description": "API Version", + "required": true, + "type": "string" + } + }, + "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" + } + } + }, + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ] +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/WebApps.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/WebApps.json index eab6a6c3d4b7..1efc1c1d5478 100644 --- a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/WebApps.json +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/WebApps.json @@ -3497,7 +3497,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/functions/{functionName}/listsecrets": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/functions/{functionName}/listsecrets": { "post": { "tags": [ "WebApps" @@ -3791,7 +3791,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hostNameBindings": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/hostNameBindings": { "get": { "tags": [ "WebApps" @@ -11464,7 +11464,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/functions/{functionName}/listsecrets": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/functions/{functionName}/listsecrets": { "post": { "tags": [ "WebApps" @@ -11800,7 +11800,7 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/hostNameBindings": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/hostNameBindings": { "get": { "tags": [ "WebApps" @@ -14882,6 +14882,236 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets a private endpoint connection", + "description": "Description for Gets a private endpoint connection", + "operationId": "WebApps_GetPrivateEndpointConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the site.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a private endpoint connection for a site.": { + "$ref": "./examples/GetSitePrivateEndpointConnection.json" + } + } + }, + "put": { + "tags": [ + "WebApps" + ], + "summary": "Approves or rejects a private endpoint connection", + "description": "Description for Approves or rejects a private endpoint connection", + "operationId": "WebApps_ApproveOrRejectPrivateEndpointConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the site.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointWrapper", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateLinkConnectionApprovalRequestResource" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionResource" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionResource" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Approves or rejects a private endpoint connection for a site.": { + "$ref": "./examples/ApproveRejectSitePrivateEndpointConnection.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "WebApps" + ], + "summary": "Deletes a private endpoint connection", + "description": "Description for Deletes a private endpoint connection", + "operationId": "WebApps_DeletePrivateEndpointConnection", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the site.", + "required": true, + "type": "string" + }, + { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK.", + "schema": { + "type": "object" + } + }, + "202": { + "description": "Asynchronous operation in progress.", + "schema": { + "type": "object" + } + }, + "204": { + "description": "No content.", + "schema": { + "type": "object" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a private endpoint connection for a site.": { + "$ref": "./examples/DeleteSitePrivateEndpointConnection.json" + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/privateLinkResources": { + "get": { + "tags": [ + "WebApps" + ], + "summary": "Gets the private link resources", + "description": "Description for Gets the private link resources", + "operationId": "WebApps_GetPrivateLinkResources", + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "name", + "in": "path", + "description": "Name of the site.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PrivateLinkResourcesWrapper" + } + }, + "default": { + "description": "App Service error response.", + "schema": { + "$ref": "./CommonDefinitions.json#/definitions/DefaultErrorResponse" + } + } + }, + "x-ms-examples": { + "Get private link resources of a site": { + "$ref": "./examples/GetSitePrivateLinkResources.json" + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/sites/{name}/slots/{slot}/processes": { "get": { "tags": [ @@ -19650,6 +19880,16 @@ } } }, + "ArmIdWrapper": { + "description": "A wrapper for an ARM resource id", + "type": "object", + "properties": { + "id": { + "type": "string", + "readOnly": true + } + } + }, "AzureBlobStorageApplicationLogsConfig": { "description": "Application logs azure blob storage configuration.", "type": "object", @@ -21634,6 +21874,133 @@ } } }, + "PrivateEndpointConnectionResource": { + "description": "Private Endpoint Connection ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/RemotePrivateEndpointConnection", + "description": "Core resource properties", + "x-ms-client-flatten": true + } + } + }, + "PrivateLinkConnectionApprovalRequest": { + "description": "A request to approve or reject a private endpoint connection", + "type": "object", + "properties": { + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkConnectionState" + } + } + }, + "PrivateLinkConnectionApprovalRequestResource": { + "description": "Private Endpoint Connection Approval ARM resource.", + "type": "object", + "allOf": [ + { + "$ref": "./CommonDefinitions.json#/definitions/ProxyOnlyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkConnectionApprovalRequest", + "description": "Core resource properties", + "x-ms-client-flatten": true + } + } + }, + "PrivateLinkConnectionState": { + "description": "The state of a private link connection", + "type": "object", + "properties": { + "status": { + "description": "Status of a private link connection", + "type": "string" + }, + "description": { + "description": "Description of a private link connection", + "type": "string" + }, + "actionsRequired": { + "description": "ActionsRequired for a private link connection", + "type": "string" + } + } + }, + "PrivateLinkResource": { + "description": "A private link resource", + "required": [ + "id", + "name", + "type", + "properties" + ], + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "description": "Name of a private link resource", + "type": "string" + }, + "type": { + "type": "string" + }, + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Properties of a private link resource" + } + } + }, + "PrivateLinkResourceProperties": { + "description": "Properties of a private link resource", + "type": "object", + "properties": { + "groupId": { + "description": "GroupId of a private link resource", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "RequiredMembers of a private link resource", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "description": "RequiredZoneNames of a private link resource", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + } + } + }, + "PrivateLinkResourcesWrapper": { + "description": "Wrapper for a collection of private link resources", + "required": [ + "value" + ], + "type": "object", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + } + }, "ProcessInfo": { "description": "Process Information.", "type": "object", @@ -22122,6 +22489,23 @@ } } }, + "RemotePrivateEndpointConnection": { + "description": "A remote private endpoint connection", + "type": "object", + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true + }, + "privateEndpoint": { + "$ref": "#/definitions/ArmIdWrapper", + "description": "PrivateEndpoint of a remote private endpoint connection" + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkConnectionState" + } + } + }, "RestoreRequest": { "description": "Description of a restore request.", "type": "object", diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ApproveRejectSitePrivateEndpointConnection.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ApproveRejectSitePrivateEndpointConnection.json new file mode 100644 index 000000000000..2a0d7dd3d39e --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ApproveRejectSitePrivateEndpointConnection.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "privateEndpointConnectionName": "connection", + "api-version": "2019-08-01", + "privateEndpointWrapper": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin.", + "actionsRequired": "" + } + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin.", + "actionsRequired": "" + } + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": { + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin.", + "actionsRequired": "" + } + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateOrUpdateStaticSite.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateOrUpdateStaticSite.json new file mode 100644 index 000000000000..a9765b36af4c --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateOrUpdateStaticSite.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2019-08-01", + "staticSiteEnvelope": { + "location": "West US 2", + "properties": { + "repositoryUrl": "https://github.com/username/RepoName", + "branch": "master", + "repositoryToken": "repoToken123", + "buildProperties": { + "appLocation": "app", + "apiLocation": "api", + "appArtifactLocation": "build" + } + }, + "sku": { + "name": "Basic", + "tier": "Basic" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0", + "name": "testStaticSite0", + "type": "Microsoft.Web/staticSites", + "location": "West US 2", + "properties": { + "defaultHostname": "happy-sea-15afae3e.azurestaticwebsites.net", + "repositoryUrl": "https://github.com/username/RepoName", + "branch": "demo", + "customDomains": [] + }, + "sku": { + "name": "Basic", + "tier": "Basic" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0", + "name": "testStaticSite0", + "type": "Microsoft.Web/staticSites", + "location": "West US 2", + "properties": { + "defaultHostname": "happy-sea-15afae3e.azurestaticwebsites.net", + "repositoryUrl": "https://github.com/username/RepoName", + "branch": "demo", + "customDomains": [] + }, + "sku": { + "name": "Basic", + "tier": "Basic" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateOrUpdateStaticSiteBuildFunctionAppSettings.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateOrUpdateStaticSiteBuildFunctionAppSettings.json new file mode 100644 index 000000000000..59ed520f70fb --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateOrUpdateStaticSiteBuildFunctionAppSettings.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "prId": "12", + "api-version": "2019-08-01", + "appSettings": { + "properties": { + "setting1": "someval", + "setting2": "someval2" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "setting1": "someval", + "setting2": "someval2" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": { + "properties": { + "setting1": "someval", + "setting2": "someval2" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateOrUpdateStaticSiteCustomDomain.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateOrUpdateStaticSiteCustomDomain.json new file mode 100644 index 000000000000..54ece9a5cf33 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateOrUpdateStaticSiteCustomDomain.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "domainName": "custom.domain.net", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "body": { + "properties": { + "domainName": "custom.domain.net", + "createdOn": "2020-03-04T17:33:11.641Z" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": { + "properties": { + "domainName": "custom.domain.net", + "createdOn": "2020-03-04T17:33:11.641Z" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateOrUpdateStaticSiteFunctionAppSettings.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateOrUpdateStaticSiteFunctionAppSettings.json new file mode 100644 index 000000000000..f52b69afc5b6 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateOrUpdateStaticSiteFunctionAppSettings.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2019-08-01", + "appSettings": { + "properties": { + "setting1": "someval", + "setting2": "someval2" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "setting1": "someval", + "setting2": "someval2" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": { + "properties": { + "setting1": "someval", + "setting2": "someval2" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateUserRolesInvitationLink.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateUserRolesInvitationLink.json new file mode 100644 index 000000000000..237322330ba2 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/CreateUserRolesInvitationLink.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2019-08-01", + "staticSiteUserRolesInvitationEnvelope": { + "properties": { + "domain": "happy-sea-15afae3e.azurestaticwebsites.net", + "provider": "aad", + "userDetails": "username", + "roles": "admin,contributor", + "numHoursToExpiration": 1 + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "invitationUrl": "https://happy-sea-15afae3e.azurestaticwebsites.net?invite=asdf", + "expiresOn": "2020-02-28T16:53:56.211Z" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteSitePrivateEndpointConnection.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteSitePrivateEndpointConnection.json new file mode 100644 index 000000000000..af4e2f2afe25 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteSitePrivateEndpointConnection.json @@ -0,0 +1,23 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "privateEndpointConnectionName": "connection", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "body": {} + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": {} + }, + "204": { + "body": {} + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteStaticSite.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteStaticSite.json new file mode 100644 index 000000000000..27aeb5c0f697 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteStaticSite.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2019-08-01" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteStaticSiteBuild.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteStaticSiteBuild.json new file mode 100644 index 000000000000..cf2f37a02e38 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteStaticSiteBuild.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "prId": "12", + "api-version": "2019-08-01" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteStaticSiteCustomDomain.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteStaticSiteCustomDomain.json new file mode 100644 index 000000000000..80862bc44bdc --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteStaticSiteCustomDomain.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "domainName": "custom.domain.net", + "api-version": "2019-08-01" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteStaticSiteUser.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteStaticSiteUser.json new file mode 100644 index 000000000000..f9b0df3f65fa --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DeleteStaticSiteUser.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "authprovider": "aad", + "userid": "1234", + "api-version": "2019-08-01" + }, + "responses": { + "200": {} + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DetachStaticSite.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DetachStaticSite.json new file mode 100644 index 000000000000..27aeb5c0f697 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/DetachStaticSite.json @@ -0,0 +1,16 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2019-08-01" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetAllStaticSites.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetAllStaticSites.json new file mode 100644 index 000000000000..ad7ba643deb0 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetAllStaticSites.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0", + "name": "testStaticSite0", + "type": "Microsoft.Web/staticSites", + "location": "West US 2", + "properties": { + "defaultHostname": "happy-sea-15afae3e.azurestaticwebsites.net", + "repositoryUrl": "https://github.com/username/repo", + "branch": "demo", + "customDomains": [] + }, + "sku": { + "name": "Standard", + "tier": "Standard" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetSitePrivateEndpointConnection.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetSitePrivateEndpointConnection.json new file mode 100644 index 000000000000..db93d5c42946 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetSitePrivateEndpointConnection.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "privateEndpointConnectionName": "connection", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Network/privateEndpoints/myPrivateEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin.", + "actionsRequired": "" + } + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetSitePrivateLinkResources.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetSitePrivateLinkResources.json new file mode 100644 index 000000000000..f7db82edc624 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetSitePrivateLinkResources.json @@ -0,0 +1,31 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testSite", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/sites/testSite/privateLinkResources/site", + "name": "site", + "type": "Microsoft.Web/sites/privateLinkResources", + "properties": { + "groupId": "sites", + "requiredMembers": [ + "sites" + ], + "requiredZoneNames": [ + "privatelink.testsite.azurewebsites.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSite.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSite.json new file mode 100644 index 000000000000..142298468ff7 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSite.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0", + "name": "testStaticSite0", + "type": "Microsoft.Web/staticSites", + "location": "West US 2", + "properties": { + "defaultHostname": "happy-sea-15afae3e.azurestaticwebsites.net", + "repositoryUrl": "https://github.com/username/repo", + "branch": "demo", + "customDomains": [] + }, + "sku": { + "name": "Basic", + "tier": "Basic" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSiteBuild.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSiteBuild.json new file mode 100644 index 000000000000..ab0222154483 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSiteBuild.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "prId": "12", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "buildId": "12", + "sourceBranch": "pr-branch", + "pullRequestTitle": "Update README.md", + "hostname": "happy-sea-15afae3e-12.westus2.azurestaticwebsites.net", + "createdTimeUtc": "2020-03-04T17:33:11.641Z", + "lastUpdatedOn": "2020-03-04T17:33:11.641Z", + "status": "Uploading" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSiteBuilds.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSiteBuilds.json new file mode 100644 index 000000000000..22559fb9299c --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSiteBuilds.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "buildId": "default", + "sourceBranch": "demo", + "pullRequestTitle": null, + "hostname": "happy-sea-15afae3e.azurestaticwebsites.net", + "createdTimeUtc": "2020-03-04T17:33:11.641Z", + "lastUpdatedOn": "2020-03-04T17:33:11.641Z", + "status": "Ready" + } + }, + { + "properties": { + "buildId": "12", + "sourceBranch": "demo-patch2", + "pullRequestTitle": "Update README.md", + "hostname": "happy-sea-15afae3e-12.westus2.azurestaticwebsites.net", + "createdTimeUtc": "2020-03-04T17:33:11.641Z", + "lastUpdatedOn": "2020-03-04T17:33:11.641Z", + "status": "Ready" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSiteCustomDomains.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSiteCustomDomains.json new file mode 100644 index 000000000000..aa3f13bf1b11 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSiteCustomDomains.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "domainName": "custom.domain.net", + "createdOn": "2020-03-04T17:33:11.641Z" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSites.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSites.json new file mode 100644 index 000000000000..4147ffed352f --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/GetStaticSites.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0", + "name": "testStaticSite0", + "type": "Microsoft.Web/staticSites", + "location": "West US 2", + "properties": { + "defaultHostname": "happy-sea-15afae3e.azurestaticwebsites.net", + "repositoryUrl": "https://github.com/username/repo", + "branch": "demo", + "customDomains": [] + }, + "sku": { + "name": "Standard", + "tier": "Standard" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteBuildFunctionAppSettings.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteBuildFunctionAppSettings.json new file mode 100644 index 000000000000..3de510293138 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteBuildFunctionAppSettings.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "prId": "12", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "setting0": "someVal" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": { + "properties": { + "setting0": "someVal" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteBuildFunctions.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteBuildFunctions.json new file mode 100644 index 000000000000..6d9ebe6eb740 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteBuildFunctions.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "prId": "default", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "functionName": "GetList", + "triggerType": "HttpTrigger" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteFunctionAppSettings.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteFunctionAppSettings.json new file mode 100644 index 000000000000..e407c4b5e705 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteFunctionAppSettings.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "setting0": "someVal" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": { + "properties": { + "setting0": "someVal" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteFunctions.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteFunctions.json new file mode 100644 index 000000000000..5f393824995e --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteFunctions.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "functionName": "GetList", + "triggerType": "HttpTrigger" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteSecrets.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteSecrets.json new file mode 100644 index 000000000000..e657792abbb9 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteSecrets.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "dnsOwnershipKey": "ownershipKey123123" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteUsers.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteUsers.json new file mode 100644 index 000000000000..6e799b8caec0 --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ListStaticSiteUsers.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "authprovider": "all", + "api-version": "2019-08-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "properties": { + "provider": "aad", + "userId": "1234", + "displayName": "username", + "roles": "admin,anonymous,authenticated" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/PatchStaticSite.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/PatchStaticSite.json new file mode 100644 index 000000000000..5c1c9689064e --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/PatchStaticSite.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2019-08-01", + "staticSiteEnvelope": { + "properties": {} + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0", + "name": "testStaticSite0", + "type": "Microsoft.Web/staticSites", + "location": "West US 2", + "properties": { + "defaultHostname": "happy-sea-15afae3e.azurestaticwebsites.net", + "repositoryUrl": "https://github.com/username/RepoName", + "branch": "demo", + "customDomains": [] + }, + "sku": { + "name": "Basic", + "tier": "Basic" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + }, + "body": { + "id": "/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/resourceGroups/rg/providers/Microsoft.Web/staticSites/testStaticSite0", + "name": "testStaticSite0", + "type": "Microsoft.Web/staticSites", + "location": "West US 2", + "properties": { + "defaultHostname": "happy-sea-15afae3e.azurestaticwebsites.net", + "repositoryUrl": "https://github.com/username/RepoName", + "branch": "demo", + "customDomains": [] + }, + "sku": { + "name": "Basic", + "tier": "Basic" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ResetStaticSiteApiKey.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ResetStaticSiteApiKey.json new file mode 100644 index 000000000000..7c039b3d873b --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ResetStaticSiteApiKey.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "api-version": "2019-08-01", + "resetPropertiesEnvelope": { + "properties": { + "shouldUpdateRepository": true, + "repositoryToken": "repoToken123" + } + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/UpdateStaticSiteUser.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/UpdateStaticSiteUser.json new file mode 100644 index 000000000000..1b0ec5a562bf --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/UpdateStaticSiteUser.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "authprovider": "aad", + "userid": "1234", + "api-version": "2019-08-01", + "staticSiteUserEnvelope": { + "properties": { + "roles": "contributor" + } + } + }, + "responses": { + "200": { + "headers": {}, + "body": { + "properties": { + "provider": "aad", + "userId": "1234", + "displayName": "username", + "roles": "contributor,anonymous,authenticated" + } + } + } + } +} diff --git a/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ValidateStaticSiteCustomDomain.json b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ValidateStaticSiteCustomDomain.json new file mode 100644 index 000000000000..80862bc44bdc --- /dev/null +++ b/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/examples/ValidateStaticSiteCustomDomain.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "34adfa4f-cedf-4dc0-ba29-b6d1a69ab345", + "resourceGroupName": "rg", + "name": "testStaticSite0", + "domainName": "custom.domain.net", + "api-version": "2019-08-01" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/34adfa4f-cedf-4dc0-ba29-b6d1a69ab345/providers/Microsoft.Web/locations/westus2/operationResults/62e4d893-d233-4005-988e-a428d9f77076?api-version=2019-01-01" + } + } + } +} diff --git a/specification/web/resource-manager/readme.cli.md b/specification/web/resource-manager/readme.cli.md index 607c014ddf18..9415e5a28bbe 100644 --- a/specification/web/resource-manager/readme.cli.md +++ b/specification/web/resource-manager/readme.cli.md @@ -7,7 +7,248 @@ cli: cli-name: appservice package-name: azure-mgmt-web namespace: azure.mgmt.web - test-setup: - - name: "Create Or Update App Service plan" - - name: "List operations" + test-scenario: + - name: /StaticSites/put/Create or update a static site + disabled: true + - name: /AppServicePlans/put/Create Or Update App Service plan + disabled: true + - name: /Certificates/put/Create Or Update Certificate + disabled: true + - name: /StaticSites/put/Creates or updates the function app settings of a static site. + disabled: true + - name: /StaticSites/put/Create or update a custom domain for a static site + disabled: true + - name: /StaticSites/put/Creates or updates the function app settings of a static site build. + disabled: true + - name: /WebApps/put/Approves or rejects a private endpoint connection for a site. + disabled: true + - name: /Diagnostics/get/Get App Detector + disabled: true + - name: /Diagnostics/get/Get App Slot Detector + disabled: true + - name: /Diagnostics/get/Get App Analysis + disabled: true + - name: /Diagnostics/get/Get App Slot Analysis + disabled: true + - name: /WebApps/get/Get the current status of a network trace operation for a site + disabled: true + - name: /Diagnostics/get/Get App Slot Detector + disabled: true + - name: /Diagnostics/get/Get App Detector + disabled: true + - name: /Diagnostics/get/Get App Analysis + disabled: true + - name: /Diagnostics/get/Get App Slot Analysis + disabled: true + - name: /Diagnostics/get/List App Slot Detectors + disabled: true + - name: /Diagnostics/get/List App Detectors + disabled: true + - name: /Diagnostics/get/List App Slot Analyses + disabled: true + - name: /Diagnostics/get/List App Analyses + disabled: true + - name: /WebApps/get/Get a private endpoint connection for a site. + disabled: true + - name: /WebApps/get/Get the current status of a network trace operation for a site + disabled: true + - name: /Diagnostics/get/Get App Slot Diagnostic Category + disabled: true + - name: /Diagnostics/get/Get App Diagnostic Category + disabled: true + - name: /WebApps/get/Get the current status of a network trace operation for a site + disabled: true + - name: /WebApps/get/Get Azure Key Vault app setting reference + disabled: true + - name: /Diagnostics/get/List App Slot Detectors + disabled: true + - name: /Diagnostics/get/List App Detectors + disabled: true + - name: /Diagnostics/get/Get App Slot Detector Response + disabled: true + - name: /Diagnostics/get/List App Slot Analyses + disabled: true + - name: /Diagnostics/get/Get App Detector Response + disabled: true + - name: /Diagnostics/get/List App Analyses + disabled: true + - name: /AppServiceEnvironments/get/Get Outbound Network Dependencies Endpoints + disabled: true + - name: /WebApps/get/Get NetworkTraces for a site + disabled: true + - name: /AppServiceEnvironments/get/Get Inbound Network Dependencies Endpoints + disabled: true + - name: /WebApps/get/Get NetworkTraces for a site + disabled: true + - name: /ResourceHealthMetadata/get/Get ResourceHealthMetadata + disabled: true + - name: /WebApps/get/Get site instance info + disabled: true + - name: /Diagnostics/get/Get App Service Environment Detector Responses + disabled: true + - name: /Diagnostics/get/Get App Slot Diagnostic Category + disabled: true + - name: /Diagnostics/get/Get App Diagnostic Category + disabled: true + - name: /WebApps/get/Get the current status of a network trace operation for a site + disabled: true + - name: /ResourceHealthMetadata/get/List ResourceHealthMetadata for a site + disabled: true + - name: /StaticSites/get/Gets the functions of a particular static site build + disabled: true + - name: /WebApps/get/Get Azure Key Vault references for app settings + disabled: true + - name: /Diagnostics/get/Get App Detector Response + disabled: true + - name: /Diagnostics/get/Get App Slot Detector Response + disabled: true + - name: /Diagnostics/get/List App Slot Diagnostic Categories + disabled: true + - name: /Diagnostics/get/List App Diagnostic Categories + disabled: true + - name: /WebApps/get/Get NetworkTraces for a site + disabled: true + - name: /Diagnostics/get/Get App Detector Responses + disabled: true + - name: /Diagnostics/get/Get App Slot Detector Responses + disabled: true + - name: /WebApps/get/Get NetworkTraces for a site + disabled: true + - name: /ResourceHealthMetadata/get/Get ResourceHealthMetadata + disabled: true + - name: /WebApps/get/Get site instance info + disabled: true + - name: /StaticSites/get/Get a static site build + disabled: true + - name: /Diagnostics/get/Get App Service Environment Detector Responses + disabled: true + - name: /ResourceHealthMetadata/get/List ResourceHealthMetadata for a site + disabled: true + - name: /WebApps/get/Get private link resources of a site + disabled: true + - name: /StaticSites/get/List custom domains for a static site + disabled: true + - name: /Diagnostics/get/List App Slot Diagnostic Categories + disabled: true + - name: /Diagnostics/get/List App Diagnostic Categories + disabled: true + - name: /StaticSites/get/Gets the functions of a static site + disabled: true + - name: /Diagnostics/get/Get App Slot Detector Responses + disabled: true + - name: /Diagnostics/get/Get App Detector Responses + disabled: true + - name: /StaticSites/get/Get all builds for a static site + disabled: true + - name: /DeletedWebApps/get/Get Deleted Web App by Location + disabled: true + - name: /Certificates/get/Get Certificate + disabled: true + - name: /ResourceHealthMetadata/get/List ResourceHealthMetadata for a resource group + disabled: true + - name: /StaticSites/get/Get details for a static site + disabled: true + - name: /AppServicePlans/get/Get App Service plan + - name: /Certificates/get/List Certificates by resource group + disabled: true + - name: /StaticSites/get/Get static sites for a resource group + disabled: true + - name: /AppServicePlans/get/List App Service plans by resource group + - name: /TopLevelDomains/get/Get Top Level Domain + disabled: true + - name: /DeletedWebApps/get/List Deleted Web App by Location + disabled: true + - name: /TopLevelDomains/get/List Top Level Domains + disabled: true + - name: /ResourceHealthMetadata/get/List ResourceHealthMetadata for a subscription + disabled: true + - name: /Certificates/get/List Certificates for subscription + disabled: true + - name: /StaticSites/get/Get all static sites in a subscription + disabled: true + - name: /AppServicePlans/get/List App Service plans + - name: /CertificateRegistrationProvider/get/List operations + - name: /DomainRegistrationProvider/get/List operations + - name: /Provider/get/List operations + - name: /Diagnostics/post/Execute site detector + disabled: true + - name: /Diagnostics/post/Execute site slot detector + disabled: true + - name: /Diagnostics/post/Execute site slot analysis + disabled: true + - name: /Diagnostics/post/Execute site analysis + disabled: true + - name: /Diagnostics/post/Execute site detector + disabled: true + - name: /Diagnostics/post/Execute site slot detector + disabled: true + - name: /Diagnostics/post/Execute site slot analysis + disabled: true + - name: /Diagnostics/post/Execute site analysis + disabled: true + - name: /StaticSites/patch/Create or update a user for a static site + disabled: true + - name: /StaticSites/post/Get function app settings of a static site build + disabled: true + - name: /StaticSites/post/List users for a static site + disabled: true + - name: /StaticSites/post/Validate a custom domain for a static site + disabled: true + - name: /WebApps/post/Start a new network trace operation for a site + disabled: true + - name: /WebApps/post/Start a new network trace operation for a site + disabled: true + - name: /WebApps/post/Stop a currently running network trace operation for a site + disabled: true + - name: /WebApps/post/Stop a currently running network trace operation for a site + disabled: true + - name: /StaticSites/post/Get function app settings of a static site + disabled: true + - name: /Domains/post/Renew an existing domain + disabled: true + - name: /WebApps/post/List backups + disabled: true + - name: /WebApps/post/Start a new network trace operation for a site + disabled: true + - name: /StaticSites/post/Create an invitation link for a user for a static site + disabled: true + - name: /WebApps/post/Copy slot + disabled: true + - name: /StaticSites/post/List secrets for a static site + disabled: true + - name: /StaticSites/post/Reset the api key for a static site + disabled: true + - name: /WebApps/post/Start a new network trace operation for a site + disabled: true + - name: /WebApps/post/Stop a currently running network trace operation for a site + disabled: true + - name: /WebApps/post/Stop a currently running network trace operation for a site + disabled: true + - name: /StaticSites/post/Detach a static site + disabled: true + - name: /WebApps/post/List backups + disabled: true + - name: /WebApps/post/Copy slot + disabled: true + - name: /AppServicePlans/patch/Patch Service plan + disabled: true + - name: /StaticSites/patch/Patch a static site + disabled: true + - name: /TopLevelDomains/post/List Top Level Domain Agreements + disabled: true + - name: //post/VerifyHostingEnvironmentVnet + disabled: true + - name: /WebApps/delete/Delete a private endpoint connection for a site. + disabled: true + - name: /StaticSites/delete/Delete a user for a static site + disabled: true + - name: /StaticSites/delete/Delete a custom domain for a static site + disabled: true + - name: /StaticSites/delete/Delete a static site build + disabled: true + - name: /Certificates/delete/Delete Certificate + disabled: true + - name: /AppServicePlans/delete/Delete App Service plan + - name: /StaticSites/delete/Delete a static site + disabled: true ``` diff --git a/specification/web/resource-manager/readme.md b/specification/web/resource-manager/readme.md index cc8be980286c..5a30993171af 100644 --- a/specification/web/resource-manager/readme.md +++ b/specification/web/resource-manager/readme.md @@ -76,6 +76,7 @@ input-file: - Microsoft.Web/stable/2019-08-01/Recommendations.json - Microsoft.Web/stable/2019-08-01/ResourceProvider.json - Microsoft.Web/stable/2019-08-01/WebApps.json +- Microsoft.Web/stable/2019-08-01/StaticSites.json - Microsoft.Web/stable/2019-08-01/AppServiceEnvironments.json - Microsoft.Web/stable/2019-08-01/AppServicePlans.json - Microsoft.Web/stable/2019-08-01/ResourceHealthMetadata.json @@ -1211,6 +1212,7 @@ input-file: - $(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 diff --git a/specification/windowsesu/resource-manager/Microsoft.WindowsESU/preview/2019-09-16-preview/examples/UpdateMultipleActivationKey.json b/specification/windowsesu/resource-manager/Microsoft.WindowsESU/preview/2019-09-16-preview/examples/UpdateMultipleActivationKey.json index 96573b91936a..d82e08d9ddab 100644 --- a/specification/windowsesu/resource-manager/Microsoft.WindowsESU/preview/2019-09-16-preview/examples/UpdateMultipleActivationKey.json +++ b/specification/windowsesu/resource-manager/Microsoft.WindowsESU/preview/2019-09-16-preview/examples/UpdateMultipleActivationKey.json @@ -19,7 +19,7 @@ "type": "Microsoft.WindowsESU/multipleActivationKeys", "tags": { "tag1": "value1", - "tag2": "value2" + "tag2": "value2" }, "location": "East US", "properties": { diff --git a/specification/windowsesu/resource-manager/Microsoft.WindowsESU/preview/2019-09-16-preview/windowsesu.json b/specification/windowsesu/resource-manager/Microsoft.WindowsESU/preview/2019-09-16-preview/windowsesu.json index 9f9718c27eb2..81fa00bc5afb 100644 --- a/specification/windowsesu/resource-manager/Microsoft.WindowsESU/preview/2019-09-16-preview/windowsesu.json +++ b/specification/windowsesu/resource-manager/Microsoft.WindowsESU/preview/2019-09-16-preview/windowsesu.json @@ -9,12 +9,20 @@ } }, "host": "management.azure.com", - "schemes": ["https"], - "consumes": ["application/json"], - "produces": ["application/json"], + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], "security": [ { - "azure_auth": ["user_impersonation"] + "azure_auth": [ + "user_impersonation" + ] } ], "securityDefinitions": { @@ -31,10 +39,14 @@ "paths": { "/providers/Microsoft.WindowsESU/operations": { "get": { - "tags": ["Operations"], + "tags": [ + "Operations" + ], "operationId": "Operations_List", "x-ms-examples": { - "ListOperations": { "$ref": "./examples/ListOperations.json" } + "ListOperations": { + "$ref": "./examples/ListOperations.json" + } }, "description": "List all available Windows.ESU provider operations.", "parameters": [ @@ -63,10 +75,14 @@ }, "/subscriptions/{subscriptionId}/providers/Microsoft.WindowsESU/multipleActivationKeys": { "get": { - "tags": ["MultipleActivationKeys"], + "tags": [ + "MultipleActivationKeys" + ], "operationId": "MultipleActivationKeys_List", "x-ms-examples": { - "ListMultipleActivationKeys": { "$ref": "./examples/ListMultipleActivationKeys.json" } + "ListMultipleActivationKeys": { + "$ref": "./examples/ListMultipleActivationKeys.json" + } }, "description": "List all Multiple Activation Keys (MAK) created for a subscription.", "parameters": [ @@ -98,10 +114,14 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.WindowsESU/multipleActivationKeys": { "get": { - "tags": ["MultipleActivationKeys"], + "tags": [ + "MultipleActivationKeys" + ], "operationId": "MultipleActivationKeys_ListByResourceGroup", "x-ms-examples": { - "ListMultipleActivationKeys": { "$ref": "./examples/ListMultipleActivationKeysByResourceGroup.json" } + "ListMultipleActivationKeys": { + "$ref": "./examples/ListMultipleActivationKeysByResourceGroup.json" + } }, "description": "List all Multiple Activation Keys (MAK) in a resource group.", "parameters": [ @@ -136,10 +156,14 @@ }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.WindowsESU/multipleActivationKeys/{multipleActivationKeyName}": { "get": { - "tags": ["MultipleActivationKeys"], + "tags": [ + "MultipleActivationKeys" + ], "operationId": "MultipleActivationKeys_Get", "x-ms-examples": { - "GetMultipleActivationKey": { "$ref": "./examples/GetMultipleActivationKey.json" } + "GetMultipleActivationKey": { + "$ref": "./examples/GetMultipleActivationKey.json" + } }, "description": "Get a MAK key.", "parameters": [ @@ -172,10 +196,14 @@ } }, "put": { - "tags": ["MultipleActivationKeys"], + "tags": [ + "MultipleActivationKeys" + ], "operationId": "MultipleActivationKeys_Create", "x-ms-examples": { - "CreateMultipleActivationKey": { "$ref": "./examples/CreateMultipleActivationKey.json" } + "CreateMultipleActivationKey": { + "$ref": "./examples/CreateMultipleActivationKey.json" + } }, "description": "Create a MAK key.", "parameters": [ @@ -224,10 +252,14 @@ "x-ms-long-running-operation": true }, "patch": { - "tags": ["MultipleActivationKeys"], + "tags": [ + "MultipleActivationKeys" + ], "operationId": "MultipleActivationKeys_Update", "x-ms-examples": { - "UpdateMultipleActivationKey": { "$ref": "./examples/UpdateMultipleActivationKey.json" } + "UpdateMultipleActivationKey": { + "$ref": "./examples/UpdateMultipleActivationKey.json" + } }, "description": "Update a MAK key.", "parameters": [ @@ -269,10 +301,14 @@ } }, "delete": { - "tags": ["MultipleActivationKeys"], + "tags": [ + "MultipleActivationKeys" + ], "operationId": "MultipleActivationKeys_Delete", "x-ms-examples": { - "DeleteMultipleActivationKey": { "$ref": "./examples/DeleteMultipleActivationKey.json" } + "DeleteMultipleActivationKey": { + "$ref": "./examples/DeleteMultipleActivationKey.json" + } }, "description": "Delete a MAK key.", "parameters": [ @@ -344,7 +380,10 @@ "name": "OsType", "modelAsString": true }, - "x-ms-mutability": ["create", "read"] + "x-ms-mutability": [ + "create", + "read" + ] }, "supportType": { "description": "Type of support", @@ -358,24 +397,36 @@ "name": "SupportType", "modelAsString": true }, - "x-ms-mutability": ["create", "read"] + "x-ms-mutability": [ + "create", + "read" + ] }, "installedServerNumber": { "description": "Number of activations/servers using the MAK key.", "type": "integer", "minimum": 1, "maximum": 5000, - "x-ms-mutability": ["create", "read"] + "x-ms-mutability": [ + "create", + "read" + ] }, "agreementNumber": { "description": "Agreement number under which the key is requested.", "type": "string", - "x-ms-mutability": ["create", "read"] + "x-ms-mutability": [ + "create", + "read" + ] }, "isEligible": { "description": " true if user has eligible on-premises Windows physical or virtual machines, and that the requested key will only be used in their organization; false otherwise.", "type": "boolean", - "x-ms-mutability": ["create", "read"] + "x-ms-mutability": [ + "create", + "read" + ] }, "provisioningState": { "type": "string", diff --git a/specification/windowsesu/resource-manager/readme.python.md b/specification/windowsesu/resource-manager/readme.python.md index 6f42325163a8..36e2e4b88b50 100644 --- a/specification/windowsesu/resource-manager/readme.python.md +++ b/specification/windowsesu/resource-manager/readme.python.md @@ -8,8 +8,8 @@ python: azure-arm: true license-header: MICROSOFT_MIT_NO_VERSION payload-flattening-threshold: 2 - namespace: Microsoft.WindowsESU - package-name: windowsesu + namespace: azure.mgmt.windowsesu + package-name: azure-mgmt-windowsesu package-version: 2019-09-16-preview clear-output-folder: true ``` @@ -17,5 +17,5 @@ python: ```yaml $(python) python: no-namespace-folders: true - output-folder: $(python-sdks-folder)/azure-mgmt/windowsesu + output-folder: $(python-sdks-folder)/windowsesu/azure-mgmt-windowsesu/azure/mgmt/windowsesu ``` diff --git a/specificationRepositoryConfiguration.json b/specificationRepositoryConfiguration.json index 83ad1c7b0c81..84b1131de2e0 100644 --- a/specificationRepositoryConfiguration.json +++ b/specificationRepositoryConfiguration.json @@ -23,10 +23,18 @@ "integrationRepository": "AzureSDKAutomation/azure-sdk-for-python", "mainRepository": "Azure/azure-sdk-for-python" }, + "azure-cli-extensions": { + "integrationRepository": "AzureSDKAutomation/azure-cli-extensions", + "mainRepository": "Azure/azure-cli-extensions" + }, "azure-sdk-for-ruby": { "mainBranch": "latest", "integrationRepository": "AzureSDKAutomation/azure-sdk-for-ruby", "mainRepository": "Azure/azure-sdk-for-ruby" + }, + "azure-sdk-for-trenton": { + "integrationRepository": "test-repo-billy/azure-sdk-for-trenton", + "mainRepository": "Azure/azure-sdk-for-trenton" } } }